From 9cea3c85cd362847fb1c0f9466efa4499a4761ac Mon Sep 17 00:00:00 2001 From: Joe Wandy Date: Mon, 29 May 2023 13:05:36 +0100 Subject: [PATCH 01/67] Add the option to use MS1 scan counts when computing mean timing. --- vimms/ChemicalSamplers.py | 27 +++++++++++++++++++++++---- 1 file changed, 23 insertions(+), 4 deletions(-) diff --git a/vimms/ChemicalSamplers.py b/vimms/ChemicalSamplers.py index b8446825..4456d00b 100644 --- a/vimms/ChemicalSamplers.py +++ b/vimms/ChemicalSamplers.py @@ -913,7 +913,7 @@ class MzMLScanTimeSampler(ScanTimeSampler): A scan time sampler that obtains its values from an existing MZML file. """ - def __init__(self, mzml_file, use_mean=True): + def __init__(self, mzml_file, use_mean=True, use_ms1_count=False): """ Initialises a MZML scan time sampler object. @@ -925,6 +925,9 @@ def __init__(self, mzml_file, use_mean=True): self.mzml_file = str(mzml_file) self.use_mean = use_mean + self.use_ms1_count = use_ms1_count + self.total_ms1_scan = 0 + self.last_ms1_rt = 0 self.time_dict = self._extract_timing(self.mzml_file) self.is_frag_file = self._is_frag_file(self.time_dict) @@ -983,8 +986,13 @@ def _extract_timing(self, seed_file): current = s.ms_level next_ = seed_mzml.scans[i + 1].ms_level tup = (current, next_) - time_dict[tup].append(60 * seed_mzml.scans[ - i + 1].rt_in_minutes - 60 * s.rt_in_minutes) + scan_rt_start = 60 * s.rt_in_minutes + scan_rt_end = 60 * seed_mzml.scans[i + 1].rt_in_minutes + time_dict[tup].append(scan_rt_end - scan_rt_start) + + if current == 1: + self.total_ms1_scan += 1 + self.last_ms1_rt = scan_rt_end return time_dict def _is_frag_file(self, time_dict): @@ -1017,19 +1025,30 @@ def _extract_mean_time(self, time_dict, is_frag_file): """ mean_time_dict = {} if is_frag_file: + # extract ms1 and ms2 timing from fragmentation mzML for k, v in time_dict.items(): if k == (1, 2): key = 1 + mean = sum(v) / len(v) + if self.use_ms1_count: + # for proteomics, it seems better to interpolate (1, 2) based on the + # total number of MS1 scans, than taking the mean of scan times. + logger.debug('old (1, 2) mean: %f' % mean) + mean = self.last_ms1_rt / self.total_ms1_scan + logger.debug('new (1, 2) mean: %f' % mean) + elif k == (2, 2): key = 2 + mean = sum(v) / len(v) + else: continue - mean = sum(v) / len(v) mean_time_dict[key] = mean logger.debug('%d: %f' % (key, mean)) assert 1 in mean_time_dict and 2 in mean_time_dict + else: # extract ms1 timing only from fullscan mzML key = 1 From 44e5cc924d32faca557075cf90e912423989fa4e Mon Sep 17 00:00:00 2001 From: Joe Wandy Date: Tue, 30 May 2023 15:29:08 +0100 Subject: [PATCH 02/67] Initial changes to DEW to allow checks before excluding --- tests/test_controllers_TopN.py | 8 +-- tests/test_scripts.py | 4 +- vimms/Agent.py | 12 +++-- vimms/Controller/box.py | 2 +- vimms/Controller/roi.py | 2 +- vimms/Controller/targeted.py | 2 +- vimms/Controller/topN.py | 10 ++-- vimms/Exclusion.py | 89 ++++++++++++++++++++++++++-------- 8 files changed, 93 insertions(+), 36 deletions(-) diff --git a/tests/test_controllers_TopN.py b/tests/test_controllers_TopN.py index 2dad2939..a4a3c3be 100644 --- a/tests/test_controllers_TopN.py +++ b/tests/test_controllers_TopN.py @@ -367,8 +367,8 @@ def test_TopN_controller_with_beer_chems_and_initial_exclusion_list(self): progress_bar=False) run_environment(env) - mz_intervals = list(controller.exclusion.exclusion_list.boxes_mz.items()) - rt_intervals = list(controller.exclusion.exclusion_list.boxes_rt.items()) + mz_intervals = list(controller.exclusion.dynamic_exclusion.boxes_mz.items()) + rt_intervals = list(controller.exclusion.dynamic_exclusion.boxes_rt.items()) unique_items_mz = set(i.data for i in mz_intervals) unique_items_rt = set(i.data for i in rt_intervals) assert len(unique_items_mz) == len(unique_items_rt) @@ -408,8 +408,8 @@ def test_exclusion_simple_data(self): env = Environment(mass_spec, controller, 0, 20, progress_bar=False) run_environment(env) - mz_intervals = list(controller.exclusion.exclusion_list.boxes_mz.items()) - rt_intervals = list(controller.exclusion.exclusion_list.boxes_rt.items()) + mz_intervals = list(controller.exclusion.dynamic_exclusion.boxes_mz.items()) + rt_intervals = list(controller.exclusion.dynamic_exclusion.boxes_rt.items()) unique_items_mz = set(i.data for i in mz_intervals) unique_items_rt = set(i.data for i in rt_intervals) assert len(unique_items_mz) == len(unique_items_rt) diff --git a/tests/test_scripts.py b/tests/test_scripts.py index f669273c..95c3d5b0 100644 --- a/tests/test_scripts.py +++ b/tests/test_scripts.py @@ -55,8 +55,8 @@ def test_ms2_matching(self): env.run() env.write_mzML(output_folder, '{}.mzML'.format(i)) - mz_intervals = list(controller.exclusion.exclusion_list.boxes_mz.items()) - rt_intervals = list(controller.exclusion.exclusion_list.boxes_rt.items()) + mz_intervals = list(controller.exclusion.dynamic_exclusion.boxes_mz.items()) + rt_intervals = list(controller.exclusion.dynamic_exclusion.boxes_rt.items()) unique_items_mz = set(i.data for i in mz_intervals) unique_items_rt = set(i.data for i in rt_intervals) assert len(unique_items_mz) == len(unique_items_rt) diff --git a/vimms/Agent.py b/vimms/Agent.py index b08429cb..d366b558 100644 --- a/vimms/Agent.py +++ b/vimms/Agent.py @@ -91,7 +91,7 @@ def reset(self): class TopNDEWAgent(AbstractAgent): def __init__(self, ionisation_mode, N, isolation_width, mz_tol, rt_tol, - min_ms1_intensity): + min_ms1_intensity, exclude_after_n_times=1, exclude_t0=0): """Create a Top-N agent that performs the standard Top-N fragmentation typically seen in Data-Dependant Acquisition (DDA) process. @@ -110,7 +110,11 @@ def __init__(self, ionisation_mode, N, isolation_width, mz_tol, rt_tol, self.min_ms1_intensity = min_ms1_intensity self.mz_tol = mz_tol self.rt_tol = rt_tol - self.exclusion = TopNExclusion() + self.exclude_after_n_times = exclude_after_n_times + self.exclude_t0 = exclude_t0 + self.exclusion = TopNExclusion(self.mz_tol, self.rt_tol, + exclude_after_n_times=self.exclude_after_n_times, + exclude_t0=self.exclude_t0) self.seen_actions = collections.Counter() def next_tasks(self, scan_to_process, controller, current_task_id): @@ -126,7 +130,9 @@ def act(self, scan_to_process): pass def reset(self): - self.exclusion = TopNExclusion() + self.exclusion = TopNExclusion(self.mz_tol, self.rt_tol, + exclude_after_n_times=self.exclude_after_n_times, + exclude_t0=self.exclude_t0) self.seen_actions = collections.Counter() def _schedule_tasks(self, controller, current_task_id, scan_to_process): diff --git a/vimms/Controller/box.py b/vimms/Controller/box.py index 944a3f7e..fd8af47f 100644 --- a/vimms/Controller/box.py +++ b/vimms/Controller/box.py @@ -150,7 +150,7 @@ def _overlap_scores(self): return exclude def after_injection_cleanup(self): - for ex in self.exclusion.exclusion_list: + for ex in self.exclusion.dynamic_exclusion: self.grid.register_box( GenericBox( ex.from_rt, diff --git a/vimms/Controller/roi.py b/vimms/Controller/roi.py index 301d76d1..3979be4b 100644 --- a/vimms/Controller/roi.py +++ b/vimms/Controller/roi.py @@ -70,7 +70,7 @@ def __init__(self, ionisation_mode, isolation_width, if self.exclusion_method == ROI_EXCLUSION_WEIGHTED_DEW: assert exclusion_t_0 is not None, 'Must be a number' assert exclusion_t_0 < rt_tol, 'Impossible combination' - self.exclusion = WeightedDEWExclusion(rt_tol, exclusion_t_0) + self.exclusion = WeightedDEWExclusion(mz_tol, rt_tol, exclusion_t_0) self.exclusion_t_0 = exclusion_t_0 diff --git a/vimms/Controller/targeted.py b/vimms/Controller/targeted.py index 95ccc89c..a0c3fb71 100644 --- a/vimms/Controller/targeted.py +++ b/vimms/Controller/targeted.py @@ -234,7 +234,7 @@ def __init__(self, ionisation_mode, N, isolation_width, mz_tol, rt_tol, # minimum ms1 intensity to fragment self.min_ms1_intensity = min_ms1_intensity self.targets = None - self.exclusion = TopNExclusion() + self.exclusion = TopNExclusion(self.mz_tol, self.rt_tol) def _process_scan(self, scan): # if there's a previous ms1 scan to process diff --git a/vimms/Controller/topN.py b/vimms/Controller/topN.py index 78cf8e10..22a9bc28 100644 --- a/vimms/Controller/topN.py +++ b/vimms/Controller/topN.py @@ -16,7 +16,7 @@ class TopNController(Controller): def __init__(self, ionisation_mode, N, isolation_width, mz_tol, rt_tol, min_ms1_intensity, ms1_shift=0, initial_exclusion_list=None, advanced_params=None, - force_N=False): + force_N=False, exclude_after_n_times=1, exclude_t0=0): """ Initialise the Top-N controller @@ -56,8 +56,10 @@ def __init__(self, ionisation_mode, N, isolation_width, mz_tol, rt_tol, "Setting force_N to True with non-zero shift can lead to " "strange behaviour") - self.exclusion = TopNExclusion( - initial_exclusion_list=initial_exclusion_list) + self.exclusion = TopNExclusion(self.mz_tol, self.rt_tol, + exclude_after_n_times=exclude_after_n_times, + exclude_t0=exclude_t0, + initial_exclusion_list=initial_exclusion_list) def _process_scan(self, scan): # if there's a previous ms1 scan to process @@ -185,7 +187,7 @@ def __init__(self, ionisation_mode, N, isolation_width, mz_tol, rt_tol, min_ms1_intensity, ms1_shift=ms1_shift, advanced_params=advanced_params) self.log_intensity = log_intensity - self.exclusion = WeightedDEWExclusion(rt_tol, exclusion_t_0) + self.exclusion = WeightedDEWExclusion(mz_tol, rt_tol, exclusion_t_0) def _process_scan(self, scan): # if there's a previous ms1 scan to process diff --git a/vimms/Exclusion.py b/vimms/Exclusion.py index d793bf1f..a14d7932 100644 --- a/vimms/Exclusion.py +++ b/vimms/Exclusion.py @@ -40,6 +40,7 @@ def __init__(self, from_mz, to_mz, from_rt, to_rt, frag_at): self.frag_at = frag_at self.mz = (self.from_mz + self.to_mz) / 2. self.rt = self.frag_at + self.counter = 0 # add a counter field def peak_in(self, mz, rt): """ @@ -56,6 +57,9 @@ def peak_in(self, mz, rt): else: return False + def increment_counter(self): + self.counter += 1 + def rt_match(self, rt): """ Checks that a certain RT point lies in this box @@ -110,7 +114,7 @@ def __init__(self): """ self.boxes_mz = IntervalTree() self.boxes_rt = IntervalTree() - + def __iter__(self): return (inv.data for inv in self.boxes_rt.items()) @@ -251,16 +255,30 @@ class TopNExclusion(): This is based on checked whether an m/z and RT value lies in certain exclusion boxes. """ - def __init__(self, initial_exclusion_list=None): + def __init__(self, mz_tol, rt_tol, exclude_after_n_times=1, exclude_t0=0, + initial_exclusion_list=None): """ Initialise a Top-N dynamic exclusion object + Args: - initial_exclusion_list: the initial list of boxes, if provided + mz_tol: + rt_tol: + exclude_after_n_times: + exclude_t0: + initial_exclusion_list: """ - self.exclusion_list = BoxHolder() - if initial_exclusion_list is not None: # add initial list + self.mz_tol = mz_tol + self.rt_tol = rt_tol + self.exclude_after_n_times = exclude_after_n_times + self.exclude_t0 = exclude_t0 + + self.exclude_check = BoxHolder() + self.dynamic_exclusion = BoxHolder() + + # Initialise 'dynamic_exclusion' with its initial value, if provided + if initial_exclusion_list is not None: for initial in initial_exclusion_list: - self.exclusion_list.add_box(initial) + self.dynamic_exclusion.add_box(initial) def is_excluded(self, mz, rt): """ @@ -270,20 +288,42 @@ def is_excluded(self, mz, rt): Args: mz: m/z value rt: RT value + mz_tol: m/z tolerance + rt_tol: rt_tolerance Returns: True if excluded (with weight 0.0), False otherwise (weight 1.0). """ - excluded = self.exclusion_list.is_in_box(mz, rt) - if excluded: + # check the main dynamic exclusion list to see if this ion should be excluded + dew_check = self.dynamic_exclusion.is_in_box(mz, rt) + if dew_check: + return True, 0.0 + + # if not excluded, then check the initial list to see if we need to increment count + found = False + hits = self.exclude_check.check_point(mz, rt) + if len(hits) > 0: # if there are initial hits, increment them + + # here we increment all hits that contain this (mz, rt) point + # and check if any of them has been excluded more times than the threshold + for box in hits: + box.increment_counter() + if box.counter >= self.exclude_after_n_times: + found = True + + # if some boxes have hit threshold that were reached, exclude this ion + if found: + x = self._get_exclusion_item(mz, rt, self.mz_tol, self.rt_tol) + self.dynamic_exclusion.add_box(x) return True, 0.0 - else: - return False, 1.0 + + # finally this ion is not excluded if it is not in either the main or initial lists + return False, 1.0 def update(self, current_scan, ms2_tasks): """ - Updates the state of this exclusion object based on the current - ms1 scan and scheduled ms2 tasks + For every scheduled MS2 scan, add its precursor m/z for initial exclusion check + A tolerance of initial_t0 is used Args: current_scan: the current MS1 scan @@ -296,10 +336,15 @@ def update(self, current_scan, ms2_tasks): for task in ms2_tasks: for precursor in task.get('precursor_mz'): mz = precursor.precursor_mz - mz_tol = task.get(ScanParameters.DYNAMIC_EXCLUSION_MZ_TOL) - rt_tol = task.get(ScanParameters.DYNAMIC_EXCLUSION_RT_TOL) - x = self._get_exclusion_item(mz, rt, mz_tol, rt_tol) - self.exclusion_list.add_box(x) + + # new way of checking DEW -- with an initial boxholder to check first + if self.exclude_t0 > 0: + x = self._get_exclusion_item(mz, rt, self.mz_tol, self.exclude_t0) + self.exclude_check.add_box(x) + + else: # fallback to the old way by adding directly to the DEW boxholder + x = self._get_exclusion_item(mz, rt, self.mz_tol, self.rt_tol) + self.dynamic_exclusion.add_box(x) def _get_exclusion_item(self, mz, rt, mz_tol, rt_tol): """ @@ -331,20 +376,19 @@ class WeightedDEWExclusion(TopNExclusion): This is further described in our paper 'Rapid Development ...' """ - def __init__(self, rt_tol, exclusion_t_0): + def __init__(self, mz_tol, rt_tol, exclusion_t_0): """ Initialises a weighted dynamic exclusion object Args: rt_tol: the RT tolerance (in seconds) exclusion_t_0: WeightedDEW parameter """ - super().__init__() - self.rt_tol = rt_tol + super().__init__(mz_tol, rt_tol) self.exclusion_t_0 = exclusion_t_0 assert self.exclusion_t_0 <= self.rt_tol def is_excluded(self, mz, rt): - boxes = self.exclusion_list.check_point(mz, rt) + boxes = self.dynamic_exclusion.check_point(mz, rt) if len(boxes) > 0: # compute weights for all the boxes that contain this (mz, rt) weights = [] @@ -405,6 +449,7 @@ class ScoreFilter(ABC): """ Base class for various filters """ + @abstractmethod def filter(self): pass @@ -414,6 +459,7 @@ class MinIntensityFilter(ScoreFilter): """ A class that implements minimum intensity filter """ + def __init__(self, min_ms1_intensity): """ Initialises the minimum intensity filter @@ -438,6 +484,7 @@ class DEWFilter(ScoreFilter): """ A class that implements dynamic exclusion filter """ + def __init__(self, rt_tol): """ Initialises a dynamic exclusion filter based on time only @@ -469,6 +516,7 @@ class WeightedDEWFilter(ScoreFilter): """ A class that implements weighted dynamic exclusion filter """ + def __init__(self, exclusion): """ Initialises a weighted dynamic exclusion filter @@ -500,6 +548,7 @@ class LengthFilter(ScoreFilter): """ A class that implements a check on minimum length of ROI for fragmentation """ + def __init__(self, min_roi_length_for_fragmentation): """ Initialise a length filter From 1a791c9e03383057082eee002d6ee63d23c7f68a Mon Sep 17 00:00:00 2001 From: Joe Wandy Date: Tue, 30 May 2023 16:28:23 +0100 Subject: [PATCH 03/67] Added deisotoping + charge filter to Top-N controller --- Pipfile | 3 +++ environment.yml | 5 ++++- vimms/Controller/topN.py | 34 ++++++++++++++++++++++++++++++++-- 3 files changed, 39 insertions(+), 3 deletions(-) diff --git a/Pipfile b/Pipfile index 0ebe9d62..5a85c3da 100644 --- a/Pipfile +++ b/Pipfile @@ -25,6 +25,9 @@ networkx = "*" jsonpickle = "*" statsmodels = "*" mass-spec-utils = "*" +brain-isotopic-distribution = "*" +ms_peak_picker = "*" +ms_deisotope = "*" tabulate = "*" pysmiles = "*" pipenv-setup = "*" diff --git a/environment.yml b/environment.yml index 66634149..321c24d9 100644 --- a/environment.yml +++ b/environment.yml @@ -36,4 +36,7 @@ dependencies: - psims - mass-spec-utils - pysmiles - - numba-stats \ No newline at end of file + - numba-stats + - brain-isotopic-distribution + - ms_peak_picker + - ms_deisotope \ No newline at end of file diff --git a/vimms/Controller/topN.py b/vimms/Controller/topN.py index 22a9bc28..a29fc044 100644 --- a/vimms/Controller/topN.py +++ b/vimms/Controller/topN.py @@ -5,6 +5,8 @@ from vimms.Controller.base import Controller from vimms.Exclusion import TopNExclusion, WeightedDEWExclusion +from ms_deisotope.deconvolution.utils import prepare_peaklist +from ms_deisotope.deconvolution import deconvolute_peaks class TopNController(Controller): """ @@ -16,7 +18,8 @@ class TopNController(Controller): def __init__(self, ionisation_mode, N, isolation_width, mz_tol, rt_tol, min_ms1_intensity, ms1_shift=0, initial_exclusion_list=None, advanced_params=None, - force_N=False, exclude_after_n_times=1, exclude_t0=0): + force_N=False, exclude_after_n_times=1, exclude_t0=0, + deisotope=False, charge_range=(1, 8)): """ Initialise the Top-N controller @@ -35,21 +38,31 @@ def __init__(self, ionisation_mode, N, isolation_width, mz_tol, rt_tol, force_N: whether to always force N fragmentations """ super().__init__(advanced_params=advanced_params) + self.ionisation_mode = ionisation_mode + + # the top N ions to fragment self.N = N + # the isolation width (in Dalton) to select a precursor ion self.isolation_width = isolation_width + # the m/z window (ppm) to prevent the same precursor ion to be # fragmented again self.mz_tol = mz_tol + # the rt window to prevent the same precursor ion to be # fragmented again self.rt_tol = rt_tol + # minimum ms1 intensity to fragment self.min_ms1_intensity = min_ms1_intensity + # number of scans to move ms1 scan forward in list of new_tasks self.ms1_shift = ms1_shift - self.force_N = force_N # force it to do N MS2 scans regardless + + # force it to do N MS2 scans regardless + self.force_N = force_N if self.force_N and ms1_shift > 0: logger.warning( @@ -61,16 +74,33 @@ def __init__(self, ionisation_mode, N, isolation_width, mz_tol, rt_tol, exclude_t0=exclude_t0, initial_exclusion_list=initial_exclusion_list) + # for isotope filtering using ms_deisotope + self.deisotope = deisotope + self.charge_range = charge_range + def _process_scan(self, scan): # if there's a previous ms1 scan to process new_tasks = [] fragmented_count = 0 if self.scan_to_process is not None: + + # original scan data mzs = self.scan_to_process.mzs intensities = self.scan_to_process.intensities assert mzs.shape == intensities.shape rt = self.scan_to_process.rt + if self.deisotope: + pl = prepare_peaklist((mzs, intensities)) + ps = deconvolute_peaks(pl, charge_range=self.charge_range) + mzs = [] + intensities = [] + for peak in ps.peak_set.peaks: + mzs.append(peak.mz) + intensities.append(peak.intensity) + mzs = np.array(mzs) + intensities = np.array(intensities) + # loop over points in decreasing intensity idx = np.argsort(intensities)[::-1] From 082d79a8cb3109e54f812e486d1709c6d5212190 Mon Sep 17 00:00:00 2001 From: Joe Wandy Date: Wed, 31 May 2023 11:18:11 +0100 Subject: [PATCH 04/67] Added Top-N simulation script --- vimms/scripts/topN_test.py | 205 +++++++++++++++++++++++++++++++++++++ 1 file changed, 205 insertions(+) create mode 100644 vimms/scripts/topN_test.py diff --git a/vimms/scripts/topN_test.py b/vimms/scripts/topN_test.py new file mode 100644 index 00000000..cefcbda0 --- /dev/null +++ b/vimms/scripts/topN_test.py @@ -0,0 +1,205 @@ +import sys + +sys.path.append('..') +sys.path.append('../..') # if running in this folder + +import os +import argparse + +import numpy as np + +import pymzml +from loguru import logger + +from vimms.Roi import RoiBuilderParams +from vimms.Chemicals import ChemicalMixtureFromMZML +from vimms.ChemicalSamplers import MzMLScanTimeSampler + +from vimms.MassSpec import IndependentMassSpectrometer +from vimms.Controller import TopNController, AdvancedParams +from vimms.Environment import Environment +from vimms.Common import POSITIVE, load_obj, save_obj, create_if_not_exist, \ + set_log_level_warning, set_log_level_debug + + +def parse_args(): + parser = argparse.ArgumentParser(description='VIMMS simulation.') + parser.add_argument('--at_least_one_point_above', type=float, default=1E5, + help='The minimum intensity value for ROI extraction.') + parser.add_argument('--min_rt', type=int, default=0, + help='The minimum retention time for Top-N.') + parser.add_argument('--max_rt', type=int, default=7700, + help='The maximum retention time for Top-N.') + parser.add_argument('--isolation_window', type=int, default=1, + help='The isolation window for Top-N.') + parser.add_argument('--N', type=int, default=15, + help='The Top N value.') + parser.add_argument('--rt_tol', type=int, default=30, + help='The retention time tolerance for Top-N.') + parser.add_argument('--mz_tol', type=int, default=10, + help='The mass to charge ratio tolerance for Top-N.') + parser.add_argument('--min_ms1_intensity', type=int, default=5000, + help='The minimum MS1 intensity for Top-N.') + parser.add_argument('--default_ms1_scan_window_start', type=float, default=310.0, + help='The start of the default MS1 scan window.') + parser.add_argument('--default_ms1_scan_window_end', type=float, default=2000.0, + help='The end of the default MS1 scan window.') + parser.add_argument('--exclude_after_n_times', type=int, default=2, + help='The number of times to exclude after in DEW parameters.') + parser.add_argument('--exclude_t0', type=int, default=15, + help='The exclude t0 value in DEW parameters.') + parser.add_argument('--deisotope', type=bool, default=True, + help='Whether to perform deisotoping or not.') + parser.add_argument('--charge_range_start', type=int, default=2, + help='The start of the charge range for filtering.') + parser.add_argument('--charge_range_end', type=int, default=6, + help='The end of the charge range for filtering.') + parser.add_argument('--out_dir', type=str, default='topN_test', + help='The directory where the output files will be stored.') + parser.add_argument('--pbar', type=bool, default=True, + help='If true, progress bar will be shown.') + parser.add_argument('--in_mzml', type=str, default='BSA_100fmol__recon_1ul_1.mzML', + help='The filename of the input mzML file.') + parser.add_argument('--out_mzml', type=str, default='output.mzML', + help='The filename of the output mzML file.') + args = parser.parse_args() + return args + + +def get_input_filenames(at_least_one_point_above, base_dir): + formatted_number = '%.0e' % at_least_one_point_above + formatted_number = formatted_number.replace('e', 'E').replace('+', '') + chem_file = os.path.join(base_dir, f'chems_{formatted_number}.p') + st_file = os.path.join(base_dir, f'scan_timing_{formatted_number}.p') + return chem_file, st_file + + +def extract_scan_timing(mzml_file, st_file): + if os.path.isfile(st_file): + st = load_obj(st_file) + else: + # extract timing from mzML file by taking the mean of MS1 scan durations + logger.debug(f'Extracting scan timing from {mzml_file}') + st = MzMLScanTimeSampler(mzml_file, use_mean=True, use_ms1_count=True) + save_obj(st, st_file) + return st + + +def extract_chems(mzml_file, chem_file, at_least_one_point_above): + if os.path.isfile(chem_file): + dataset = load_obj(chem_file) + else: + logger.debug(f'Extracting chems from {mzml_file}') + rp = RoiBuilderParams(at_least_one_point_above=at_least_one_point_above) + cm = ChemicalMixtureFromMZML(mzml_file, roi_params=rp) + dataset = cm.sample(None, 2) + logger.debug(f'Extracted {len(dataset)} chems') + save_obj(dataset, chem_file) + return dataset + + +def count_stuff(input_file, min_rt, max_rt): + run = pymzml.run.Reader(input_file, MS1_Precision=5e-6, + extraAccessions=[('MS:1000016', ['value', 'unitName'])], + obo_version='4.0.1') + mzs = [] + rts = [] + intensities = [] + count_ms1_scans = 0 + count_ms2_scans = 0 + cumsum_ms1_scans = [] + cumsum_ms2_scans = [] + count_selected_precursors = 0 + for spectrum in run: + ms_level = spectrum['ms level'] + current_scan_rt, units = spectrum.scan_time + if units == 'minute': + current_scan_rt *= 60.0 + if min_rt < current_scan_rt < max_rt: + if ms_level == 1: + count_ms1_scans += 1 + cumsum_ms1_scans.append((current_scan_rt, count_ms1_scans,)) + elif ms_level == 2: + try: + selected_precursors = spectrum.selected_precursors + count_selected_precursors += len(selected_precursors) + mz = selected_precursors[0]['mz'] + intensity = selected_precursors[0]['i'] + + count_ms2_scans += 1 + mzs.append(mz) + rts.append(current_scan_rt) + intensities.append(intensity) + cumsum_ms2_scans.append((current_scan_rt, count_ms2_scans,)) + except KeyError: + # logger.debug(selected_precursors) + pass + + logger.debug('Number of ms1 scans = %d' % count_ms1_scans) + logger.debug('Number of ms2 scans = %d' % count_ms2_scans) + logger.debug('Total scans = %d' % (count_ms1_scans + count_ms2_scans)) + logger.debug('Number of selected precursors = %d' % count_selected_precursors) + return np.array(mzs), np.array(rts), np.array(intensities), np.array( + cumsum_ms1_scans), np.array(cumsum_ms2_scans) + + +def main(args): + # check input and output paths + assert os.path.isfile(args.in_mzml), 'Input mzML file %s is not found!' % args.in_mzml + out_dir = os.path.abspath(args.out_dir) + create_if_not_exist(out_dir) + + # Format output file names + chem_file, st_file = get_input_filenames(args.at_least_one_point_above, out_dir) + + # extract chems and scan timing from mzml file + dataset = extract_chems(args.in_mzml, chem_file, args.at_least_one_point_above) + st = extract_scan_timing(args.in_mzml, st_file) + + # simulate Top-N + run_simulation(args, dataset, st, out_dir) + + +def run_simulation(args, dataset, st, out_dir): + + # Top-N parameters + rt_range = [(args.min_rt, args.max_rt)] + min_rt = rt_range[0][0] + max_rt = rt_range[0][1] + isolation_window = args.isolation_window + N = args.N + rt_tol = args.rt_tol + mz_tol = args.mz_tol + min_ms1_intensity = args.min_ms1_intensity + default_ms1_scan_window = ( + args.default_ms1_scan_window_start, args.default_ms1_scan_window_end) + + # DEW, isotope and charge filtering parameters + exclude_after_n_times = args.exclude_after_n_times + exclude_t0 = args.exclude_t0 + deisotope = args.deisotope + charge_range = (args.charge_range_start, args.charge_range_end) + + # create controller and mass spec objects + params = AdvancedParams(default_ms1_scan_window=default_ms1_scan_window) + mass_spec = IndependentMassSpectrometer(POSITIVE, dataset, scan_duration=st) + controller = TopNController( + POSITIVE, N, isolation_window, mz_tol, rt_tol, min_ms1_intensity, + advanced_params=params, exclude_after_n_times=exclude_after_n_times, + exclude_t0=exclude_t0, deisotope=deisotope, charge_range=charge_range) + + # create an environment to run both the mass spec and controller + env = Environment(mass_spec, controller, min_rt, max_rt, progress_bar=args.pbar) + + # set the log level to WARNING so we don't see too many messages when environment is running + set_log_level_warning() + + # run the simulation + env.run() + set_log_level_debug() + env.write_mzML(out_dir, args.out_mzml) + + +if __name__ == '__main__': + args = parse_args() + main(args) From e837fb6f9c7e1fbde05a2020e2f2bef8ee4b848a Mon Sep 17 00:00:00 2001 From: Joe Wandy Date: Mon, 5 Jun 2023 15:34:03 +0100 Subject: [PATCH 05/67] Improved scan timing codes --- tests/test_chemical_generation.py | 6 +- vimms/ChemicalSamplers.py | 151 +++++++++++++----------------- vimms/MassSpec.py | 8 +- vimms/scripts/scan_timings.py | 52 ++++++---- vimms/scripts/topN_test.py | 8 +- 5 files changed, 109 insertions(+), 116 deletions(-) diff --git a/tests/test_chemical_generation.py b/tests/test_chemical_generation.py index 8ff37ab3..b6a2efe7 100644 --- a/tests/test_chemical_generation.py +++ b/tests/test_chemical_generation.py @@ -281,7 +281,7 @@ def test_scan_time_from_mzml(self): chems = cm.sample(None, 2) # extract timing from mzML and sample one value each time when generating a scan duration - sd = MzMLScanTimeSampler(MZML_FILE, use_mean=False) + sd = MzMLScanTimeSampler(MZML_FILE) ms = IndependentMassSpectrometer(ionisation_mode, chems, scan_duration=sd) # run simulation @@ -291,7 +291,7 @@ def test_scan_time_from_mzml(self): filename = 'test_scan_time_from_mzml.mzML' check_mzML(env, OUT_DIR, filename) - def test_mean_scan_time_from_mzml(self): + def test_binned_scan_time_from_mzml(self): ionisation_mode = POSITIVE N = 10 isolation_width = 0.7 @@ -307,7 +307,7 @@ def test_mean_scan_time_from_mzml(self): chems = cm.sample(None, 2) # extract mean timing per scan level from mzML - sd = MzMLScanTimeSampler(MZML_FILE, use_mean=True) + sd = MzMLScanTimeSampler(MZML_FILE, num_bins=10) ms = IndependentMassSpectrometer(ionisation_mode, chems, scan_duration=sd) # run simulation diff --git a/vimms/ChemicalSamplers.py b/vimms/ChemicalSamplers.py index 4456d00b..ac0ab643 100644 --- a/vimms/ChemicalSamplers.py +++ b/vimms/ChemicalSamplers.py @@ -309,6 +309,7 @@ class MZMLRTandIntensitySampler(RTAndIntensitySampler): A sampler to sample RT and intensity values from an existing mzML file. Useful to mimic the characteristics of actual experimental data. """ + def __init__(self, mzml_file_name, n_intensity_bins=10, min_rt=0, max_rt=1600, min_log_intensity=np.log(1e4), max_log_intensity=np.log(1e7), roi_params=None): @@ -466,6 +467,7 @@ class MZMLChromatogramSampler(ChromatogramSampler): A sampler to return chromatograms extracted from an existing mzML file. Useful to mimic the characteristics of actual experimental data. """ + def __init__(self, mzml_file_name, roi_params=None): """ Create an MZMLChromatogramSampler object. @@ -574,7 +576,7 @@ def sample(self, chemical): s = sum(intensity_list) intensity_list = [i / s for i in intensity_list] parent_proportion = np.random.rand() * ( - self.max_proportion - self.min_proportion) + self.min_proportion + self.max_proportion - self.min_proportion) + self.min_proportion return mz_list, intensity_list, parent_proportion @@ -683,6 +685,7 @@ class MGFMS2Sampler(MS2Sampler): """ A sampler that generates MS2 spectra from real ones defined in some MGF file. """ + def __init__(self, mgf_file, min_proportion=0.1, max_proportion=0.8, max_peaks=0, replace=False, id_field="SPECTRUMID"): @@ -752,7 +755,7 @@ def sample(self, chemical): s = sum(intensity_list) intensity_list = [i / s for i in intensity_list] parent_proportion = np.random.rand() * ( - self.max_proportion - self.min_proportion) + self.min_proportion + self.max_proportion - self.min_proportion) + self.min_proportion return mz_list, intensity_list, parent_proportion @@ -764,6 +767,7 @@ class ExactMatchMS2Sampler(MGFMS2Sampler): TODO: not sure if this class is actually completed and fully tested. """ + def __init__(self, mgf_file, min_proportion=0.1, max_proportion=0.8, id_field="SPECTRUMID"): super().__init__(mgf_file, min_proportion=min_proportion, @@ -782,7 +786,7 @@ def sample(self, chemical): spectrum = self.spectra_dict[chemical.database_accession] mz_list, intensity_list = zip(*spectrum.peaks) parent_proportion = np.random.rand() * ( - self.max_proportion - self.min_proportion) + self.min_proportion + self.max_proportion - self.min_proportion) + self.min_proportion return mz_list, intensity_list, parent_proportion @@ -790,6 +794,7 @@ class MZMLMS2Sampler(MS2Sampler): """ A sampler that sample MS2 spectra from an actual mzML file. """ + def __init__(self, mzml_file, min_n_peaks=1, min_total_intensity=1e3, min_proportion=0.1, max_proportion=0.8, with_replacement=False): @@ -870,7 +875,7 @@ class ScanTimeSampler(ABC): """ @abstractmethod - def sample(self, current_level, next_level): + def sample(self, current_level, next_level, current_rt): pass @@ -895,12 +900,13 @@ def __init__(self, scan_time_dict=None): self.scan_time_dict = scan_time_dict if scan_time_dict is not None \ else DEFAULT_SCAN_TIME_DICT - def sample(self, current_level, next_level): + def sample(self, current_level, next_level, current_rt): """ Sample a scan duration given the MS levels of current and next scans. Args: current_level: the MS level of the current scan next_level: the MS level of the next scan + current_rt: not used Returns: a sampled scan duration value @@ -913,26 +919,19 @@ class MzMLScanTimeSampler(ScanTimeSampler): A scan time sampler that obtains its values from an existing MZML file. """ - def __init__(self, mzml_file, use_mean=True, use_ms1_count=False): + def __init__(self, mzml_file, num_bins=1): """ Initialises a MZML scan time sampler object. Args: - mzml_file: the source MZML file - use_mean: whether to store the scan times as distributions of values to sample - from, or as a single mean value + num_bins: the number of bins to sample scan durations from """ self.mzml_file = str(mzml_file) - self.use_mean = use_mean - self.use_ms1_count = use_ms1_count - self.total_ms1_scan = 0 - self.last_ms1_rt = 0 - - self.time_dict = self._extract_timing(self.mzml_file) + self.num_bins = num_bins + self.time_dict, self.bin_edges = self._extract_timing(self.mzml_file) self.is_frag_file = self._is_frag_file(self.time_dict) - self.mean_time_dict = self._extract_mean_time(self.time_dict, - self.is_frag_file) + if self.is_frag_file and len(self.time_dict[(1, 1)]) == 0: # this could sometimes happen if there's not enough MS1 scan # followed by another MS1 scan @@ -942,27 +941,6 @@ def __init__(self, mzml_file, use_mean=True, use_ms1_count=False): 'The default of %f will be used' % default) self.time_dict[(1, 1)] = [default] - def sample(self, current_level, next_level): - """ - Sample a scan duration given the MS levels of current and next scans. - Args: - current_level: the MS level of the current scan - next_level: the MS level of the next scan - - Returns: a sampled scan duration value - - """ - - if self.use_mean: - # return only the average time for current_level - return self.mean_time_dict[current_level] - else: - # sample a scan duration value extracted from the mzML based - # on the current and next level - values = self.time_dict[(current_level, next_level)] - sampled = np.random.choice(values, replace=False, size=1) - return sampled[0] - def _extract_timing(self, seed_file): """ Extracts timing information from a seed file @@ -974,26 +952,46 @@ def _extract_timing(self, seed_file): If it's only a fullscan file (containing MS1 scans) then only MS1 timing will be extracted. - Returns: a dictionary of time information. Key should be the ms-level, - 1 or 2, and value is the average time of scans at that level + Returns: - A dictionary of time information. Key should be the ms-level, + 1 or 2, and value is the average time of scans at that level. + - A numpy array of bin edges. """ logger.debug('Extracting timing dictionary from seed file') seed_mzml = MZMLFile(seed_file) - time_dict = {(1, 1): [], (1, 2): [], (2, 1): [], (2, 2): []} + # Compute the minimum and maximum RTs + rts = [s.rt_in_seconds for s in seed_mzml.scans] + min_rt = min(rts) + max_rt = max(rts) + + bin_edges = np.linspace(min_rt, max_rt, self.num_bins + 1) + time_dict = {edge: {(1, 1): [], (1, 2): [], (2, 1): [], (2, 2): []} for edge in + bin_edges} + for i, s in enumerate(seed_mzml.scans[:-1]): + # get current and next ms-levels current = s.ms_level next_ = seed_mzml.scans[i + 1].ms_level tup = (current, next_) - scan_rt_start = 60 * s.rt_in_minutes - scan_rt_end = 60 * seed_mzml.scans[i + 1].rt_in_minutes - time_dict[tup].append(scan_rt_end - scan_rt_start) - if current == 1: - self.total_ms1_scan += 1 - self.last_ms1_rt = scan_rt_end - return time_dict + # compute scan duration + scan_rt_start = s.rt_in_seconds + scan_rt_end = seed_mzml.scans[i + 1].rt_in_seconds + scan_duration = scan_rt_end - scan_rt_start + + # insert into the right bin + scan_bin = self._find_bin(scan_rt_start, bin_edges) + time_dict[scan_bin][tup].append(scan_duration) + + return time_dict, bin_edges + + def _find_bin(self, rt, bin_edges): + # Find the appropriate bin for a given RT + for edge in bin_edges: + if rt < edge: + return edge + return edge # Return the last edge if RT is beyond all edges def _is_frag_file(self, time_dict): """ @@ -1012,49 +1010,28 @@ def _is_frag_file(self, time_dict): is_frag_file = True return is_frag_file - def _extract_mean_time(self, time_dict, is_frag_file): + def sample(self, current_level, next_level, current_rt): """ - Construct mean timing dict in the right format for later use - + Sample a scan duration given the MS levels of current and next scans. Args: - time_dict: a timing dictionary - is_frag_file: whether it's a fragmentation file or not + current_level: the MS level of the current scan + next_level: the MS level of the next scan + current_rt: the current retention time of the current scan - Returns: the mean time dictionary + Returns: a sampled scan duration value """ - mean_time_dict = {} - if is_frag_file: - - # extract ms1 and ms2 timing from fragmentation mzML - for k, v in time_dict.items(): - if k == (1, 2): - key = 1 - mean = sum(v) / len(v) - if self.use_ms1_count: - # for proteomics, it seems better to interpolate (1, 2) based on the - # total number of MS1 scans, than taking the mean of scan times. - logger.debug('old (1, 2) mean: %f' % mean) - mean = self.last_ms1_rt / self.total_ms1_scan - logger.debug('new (1, 2) mean: %f' % mean) - - elif k == (2, 2): - key = 2 - mean = sum(v) / len(v) - - else: - continue - - mean_time_dict[key] = mean - logger.debug('%d: %f' % (key, mean)) - assert 1 in mean_time_dict and 2 in mean_time_dict - else: - # extract ms1 timing only from fullscan mzML - key = 1 - v = time_dict[(1, 1)] - mean = sum(v) / len(v) - mean_time_dict[key] = mean - logger.debug('%d: %f' % (key, mean)) + # Determine the appropriate bin based on the current RT + current_bin = self._find_bin(current_rt, self.bin_edges) - return mean_time_dict + # sample a scan duration value extracted from the mzML based + # on the current and next level + # note: the same value could be selected again by np.random.choice next time + values = self.time_dict[current_bin][(current_level, next_level)] + try: + sampled = np.random.choice(values, replace=False, size=1) + return sampled[0] + except ValueError: # no value to sample, just return the default + default = DEFAULT_SCAN_TIME_DICT[current_level] + return default diff --git a/vimms/MassSpec.py b/vimms/MassSpec.py index 46cc0a2f..17feaa0c 100644 --- a/vimms/MassSpec.py +++ b/vimms/MassSpec.py @@ -424,7 +424,8 @@ def dispatch_scan(self, scan): next_scan_param = None current_level = scan.ms_level - current_scan_duration = self._increase_time(current_level, + current_rt = scan.rt + current_scan_duration = self._increase_time(current_level, current_rt, next_scan_param) scan.scan_duration = current_scan_duration @@ -531,7 +532,7 @@ def close(self): # Private methods ########################################################################### - def _increase_time(self, current_level, next_scan_param): + def _increase_time(self, current_level, current_rt, next_scan_param): """ Look into the queue, find out what the next scan ms_level is, and compute the scan duration. @@ -540,6 +541,7 @@ def _increase_time(self, current_level, next_scan_param): Args: current_level: the current MS level + current_rt: the current RT next_scan_param: the next scan parameter in the queue Returns: the scan duration of the current scan @@ -562,7 +564,7 @@ def _increase_time(self, current_level, next_scan_param): # pass both current and next MS level when sampling scan duration current_scan_duration = scan_sampler.sample(current_level, - next_level) + next_level, current_rt) self.time += current_scan_duration return current_scan_duration diff --git a/vimms/scripts/scan_timings.py b/vimms/scripts/scan_timings.py index 66954222..d3e08210 100644 --- a/vimms/scripts/scan_timings.py +++ b/vimms/scripts/scan_timings.py @@ -1,16 +1,39 @@ import sys + sys.path.append('..') sys.path.append('../..') # if running in this folder import argparse import glob import os -import sys import pylab as plt from mass_spec_utils.data_import.mzml import MZMLFile +def parse_args(): + parser = argparse.ArgumentParser(description='Create scan time plots') + parser.add_argument('file_or_folder', type=str) + parser.add_argument('--save_plots', dest='save_plots', action='store_true') + args = parser.parse_args() + return args + + +def process_mzML_files(file_or_folder): + if os.path.isdir(file_or_folder): + print("Extracting mzml from folder") + file_list = glob.glob(os.path.join(file_or_folder, '*.mzML')) + else: + print("Processing", file_or_folder) + file_list = [file_or_folder] + mzml_file_objects = {} + timings = {} + for mzml_file in file_list: + mzml_file_objects[mzml_file] = MZMLFile(mzml_file) + timings[mzml_file] = get_times(mzml_file_objects[mzml_file]) + return timings + + def get_times(mzml_object): times = {(1, 1): [], (1, 2): [], (2, 1): [], (2, 2): []} for i, s in enumerate(mzml_object.scans[:-1]): @@ -23,6 +46,7 @@ def get_times(mzml_object): next_level = next_scan.ms_level times[(current_level, next_level)].append( (current_scan.rt_in_seconds, delta_t)) + to_remove = set() for key in times: if len(times[key]) == 0: @@ -32,25 +56,7 @@ def get_times(mzml_object): return times -# flake8: noqa: C901 -def main(): - global rt - parser = argparse.ArgumentParser(description='Create scan time plots') - parser.add_argument('file_or_folder', type=str) - parser.add_argument('--save_plots', dest='save_plots', action='store_true') - args = parser.parse_args() - if os.path.isdir(args.file_or_folder): - print("Extracting mzml from folder") - file_list = glob.glob(os.path.join(args.file_or_folder, '*.mzML')) - else: - print("Individual file") - file_list = [args.file_or_folder] - mzml_file_objects = {} - timings = {} - for mzml_file in file_list: - mzml_file_objects[mzml_file] = MZMLFile(mzml_file) - timings[mzml_file] = get_times(mzml_file_objects[mzml_file]) - # plot +def plot_timings(args, timings): for mo, t in timings.items(): nsp = len(t) # number of subplots plt.figure(figsize=(20, 8)) @@ -83,5 +89,11 @@ def main(): plt.show() +def main(): + args = parse_args() + timings = process_mzML_files(args.file_or_folder) + plot_timings(args, timings) + + if __name__ == '__main__': main() diff --git a/vimms/scripts/topN_test.py b/vimms/scripts/topN_test.py index cefcbda0..3042c397 100644 --- a/vimms/scripts/topN_test.py +++ b/vimms/scripts/topN_test.py @@ -30,6 +30,8 @@ def parse_args(): help='The minimum retention time for Top-N.') parser.add_argument('--max_rt', type=int, default=7700, help='The maximum retention time for Top-N.') + parser.add_argument('--num_bins', type=int, default=20, + help='The number of bins to sample scan durations from.') parser.add_argument('--isolation_window', type=int, default=1, help='The isolation window for Top-N.') parser.add_argument('--N', type=int, default=15, @@ -74,13 +76,13 @@ def get_input_filenames(at_least_one_point_above, base_dir): return chem_file, st_file -def extract_scan_timing(mzml_file, st_file): +def extract_scan_timing(mzml_file, st_file, num_bins): if os.path.isfile(st_file): st = load_obj(st_file) else: # extract timing from mzML file by taking the mean of MS1 scan durations logger.debug(f'Extracting scan timing from {mzml_file}') - st = MzMLScanTimeSampler(mzml_file, use_mean=True, use_ms1_count=True) + st = MzMLScanTimeSampler(mzml_file, num_bins=num_bins) save_obj(st, st_file) return st @@ -154,7 +156,7 @@ def main(args): # extract chems and scan timing from mzml file dataset = extract_chems(args.in_mzml, chem_file, args.at_least_one_point_above) - st = extract_scan_timing(args.in_mzml, st_file) + st = extract_scan_timing(args.in_mzml, st_file, args.num_bins) # simulate Top-N run_simulation(args, dataset, st, out_dir) From f60bdabc084c2bfb8eac4e8c68875243e18f1bf8 Mon Sep 17 00:00:00 2001 From: Joe Wandy Date: Wed, 7 Jun 2023 14:02:20 +0100 Subject: [PATCH 06/67] More plotting functions --- vimms/scripts/scan_timings.py | 125 ++++++++++++++++++++++++++++++++++ 1 file changed, 125 insertions(+) diff --git a/vimms/scripts/scan_timings.py b/vimms/scripts/scan_timings.py index d3e08210..e97a7883 100644 --- a/vimms/scripts/scan_timings.py +++ b/vimms/scripts/scan_timings.py @@ -7,6 +7,11 @@ import glob import os +import numpy as np +import seaborn as sns +from loguru import logger +import pymzml + import pylab as plt from mass_spec_utils.data_import.mzml import MZMLFile @@ -89,6 +94,126 @@ def plot_timings(args, timings): plt.show() +def get_data(file_timings, file_name, level, remove_outliers=False): + """Get data with potential outlier removal.""" + flat_d = {k: v[k] for k, v in file_timings.items()} + + try: + rts, deltas = zip(*flat_d[file_name][level]) + except KeyError: + return np.array([]), np.array([]) + + rts = np.array(rts) + deltas = np.array(deltas) + + if remove_outliers: + rts, deltas = remove_data_outliers(rts, deltas) + + return rts, deltas + + +def remove_data_outliers(rts, deltas): + """Remove outliers from the data based on IQR method.""" + q1, q3 = np.percentile(deltas, [25, 75]) + iqr = q3 - q1 + lower_bound = q1 - 1.5 * iqr + upper_bound = q3 + 1.5 * iqr + mask = (deltas >= lower_bound) & (deltas <= upper_bound) + + return rts[mask], deltas[mask] + + +def plot_deltas(file_timings, files, labels, plot_type='box', remove_outliers=False): + """Generate specified type of plot for each level of data.""" + plot_types = ['box', 'violin', 'scatter'] + if plot_type not in plot_types: + raise ValueError(f"Invalid plot_type. Expected one of: {plot_types}") + + levels = [(1, 1), (1, 2), (2, 1), (2, 2)] + fig, axs = plt.subplots(2, 2, figsize=(15, 10)) + + for ax, level in zip(axs.flatten(), levels): + data = [get_data(file_timings, file, level, remove_outliers) for file in files] + + if plot_type in ['box', 'violin']: + deltas = [deltas for rts, deltas in data] + plot_func = sns.boxplot if plot_type == 'box' else sns.violinplot + plot_func(ax=ax, data=deltas) + ax.set_xticks(range(len(labels))) + ax.set_xticklabels(labels) + else: # 'scatter' + for (rts, deltas), label in zip(data, labels): + ax.scatter(rts, deltas, alpha=0.25, label=label, s=5) + ax.legend() + + ax.set_title(f"Level: {level}") + + plt.tight_layout() + plt.show() + + +def count_stuff(input_file, min_rt, max_rt): + run = pymzml.run.Reader(input_file, MS1_Precision=5e-6, + extraAccessions=[('MS:1000016', ['value', 'unitName'])], + obo_version='4.0.1') + mzs = [] + rts = [] + intensities = [] + count_ms1_scans = 0 + count_ms2_scans = 0 + cumsum_ms1_scans = [] + cumsum_ms2_scans = [] + count_selected_precursors = 0 + for spectrum in run: + ms_level = spectrum['ms level'] + current_scan_rt, units = spectrum.scan_time + if units == 'minute': + current_scan_rt *= 60.0 + if min_rt < current_scan_rt < max_rt: + if ms_level == 1: + count_ms1_scans += 1 + cumsum_ms1_scans.append((current_scan_rt, count_ms1_scans,)) + elif ms_level == 2: + try: + selected_precursors = spectrum.selected_precursors + count_selected_precursors += len(selected_precursors) + mz = selected_precursors[0]['mz'] + intensity = selected_precursors[0]['i'] + + count_ms2_scans += 1 + mzs.append(mz) + rts.append(current_scan_rt) + intensities.append(intensity) + cumsum_ms2_scans.append((current_scan_rt, count_ms2_scans,)) + except KeyError: + # logger.debug(selected_precursors) + pass + + logger.debug('Number of ms1 scans = %d' % count_ms1_scans) + logger.debug('Number of ms2 scans = %d' % count_ms2_scans) + logger.debug('Total scans = %d' % (count_ms1_scans + count_ms2_scans)) + logger.debug('Number of selected precursors = %d' % count_selected_precursors) + return np.array(mzs), np.array(rts), np.array(intensities), np.array( + cumsum_ms1_scans), np.array(cumsum_ms2_scans) + + +def plot_num_scans(real_cumsum_ms1, real_cumsum_ms2, simulated_cumsum_ms1, simulated_cumsum_ms2, + out_file=None): + plt.plot(real_cumsum_ms1[:, 0], real_cumsum_ms1[:, 1], 'r') + plt.plot(real_cumsum_ms2[:, 0], real_cumsum_ms2[:, 1], 'b') + plt.plot(simulated_cumsum_ms1[:, 0], simulated_cumsum_ms1[:, 1], 'r--') + plt.plot(simulated_cumsum_ms2[:, 0], simulated_cumsum_ms2[:, 1], 'b--') + + plt.legend(['Actual MS1', 'Actual MS2', 'Simulated MS1', 'Simulated MS2']) + plt.xlabel('Retention Time (s)') + plt.ylabel('Cumulative sum') + plt.title('Cumulative number of MS1 and MS2 scans', fontsize=18) + plt.tight_layout() + + if out_file is not None: + plt.savefig(out_file, dpi=300) + + def main(): args = parse_args() timings = process_mzML_files(args.file_or_folder) From 79f000645398f9d7e9969a2393d433b5b11d6610 Mon Sep 17 00:00:00 2001 From: Joe Wandy Date: Wed, 7 Jun 2023 14:21:59 +0100 Subject: [PATCH 07/67] Incorrect scan duration for (2, 2) --- vimms/ChemicalSamplers.py | 6 ++++-- vimms/MassSpec.py | 6 ++++-- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/vimms/ChemicalSamplers.py b/vimms/ChemicalSamplers.py index ac0ab643..6ec1ec58 100644 --- a/vimms/ChemicalSamplers.py +++ b/vimms/ChemicalSamplers.py @@ -961,11 +961,13 @@ def _extract_timing(self, seed_file): seed_mzml = MZMLFile(seed_file) # Compute the minimum and maximum RTs + OFFSET = 1 rts = [s.rt_in_seconds for s in seed_mzml.scans] - min_rt = min(rts) - max_rt = max(rts) + min_rt = 0 + max_rt = max(rts) + OFFSET bin_edges = np.linspace(min_rt, max_rt, self.num_bins + 1) + bin_edges = np.delete(bin_edges, 0) # delete the first bin boundary as we don't need it time_dict = {edge: {(1, 1): [], (1, 2): [], (2, 1): [], (2, 2): []} for edge in bin_edges} diff --git a/vimms/MassSpec.py b/vimms/MassSpec.py index 17feaa0c..fe8d6b07 100644 --- a/vimms/MassSpec.py +++ b/vimms/MassSpec.py @@ -418,9 +418,11 @@ def dispatch_scan(self, scan): self.fire_event(self.MS_SCAN_ARRIVED, scan) # sample scan duration and increase internal time - try: + if self.task_manager.pending_size() > 0: + next_scan_param = self.task_manager.peek_pending() + elif self.task_manager.current_size() > 0: next_scan_param = self.task_manager.peek_current() - except IndexError: + else: next_scan_param = None current_level = scan.ms_level From 9230676c9733e5565c22d3633a23dd7488e2524f Mon Sep 17 00:00:00 2001 From: Joe Wandy Date: Sun, 25 Jun 2023 14:26:12 +0100 Subject: [PATCH 08/67] Add the option to exclude ions based on averagine score --- vimms/Controller/topN.py | 8 +++++--- vimms/scripts/topN_test.py | 6 +++++- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/vimms/Controller/topN.py b/vimms/Controller/topN.py index a29fc044..98c4e766 100644 --- a/vimms/Controller/topN.py +++ b/vimms/Controller/topN.py @@ -19,7 +19,7 @@ def __init__(self, ionisation_mode, N, isolation_width, mz_tol, rt_tol, min_ms1_intensity, ms1_shift=0, initial_exclusion_list=None, advanced_params=None, force_N=False, exclude_after_n_times=1, exclude_t0=0, - deisotope=False, charge_range=(1, 8)): + deisotope=False, charge_range=(1, 8), min_averagine_score=100): """ Initialise the Top-N controller @@ -77,6 +77,7 @@ def __init__(self, ionisation_mode, N, isolation_width, mz_tol, rt_tol, # for isotope filtering using ms_deisotope self.deisotope = deisotope self.charge_range = charge_range + self.min_averagine_score = min_averagine_score def _process_scan(self, scan): # if there's a previous ms1 scan to process @@ -96,8 +97,9 @@ def _process_scan(self, scan): mzs = [] intensities = [] for peak in ps.peak_set.peaks: - mzs.append(peak.mz) - intensities.append(peak.intensity) + if peak.score > self.min_averagine_score: + mzs.append(peak.mz) + intensities.append(peak.intensity) mzs = np.array(mzs) intensities = np.array(intensities) diff --git a/vimms/scripts/topN_test.py b/vimms/scripts/topN_test.py index 3042c397..57e1ae7e 100644 --- a/vimms/scripts/topN_test.py +++ b/vimms/scripts/topN_test.py @@ -56,6 +56,8 @@ def parse_args(): help='The start of the charge range for filtering.') parser.add_argument('--charge_range_end', type=int, default=6, help='The end of the charge range for filtering.') + parser.add_argument('--min_averagine_score', type=int, default=100, + help='The minimum averagine score from ms_deconvolve.') parser.add_argument('--out_dir', type=str, default='topN_test', help='The directory where the output files will be stored.') parser.add_argument('--pbar', type=bool, default=True, @@ -173,6 +175,7 @@ def run_simulation(args, dataset, st, out_dir): rt_tol = args.rt_tol mz_tol = args.mz_tol min_ms1_intensity = args.min_ms1_intensity + min_averagine_score = args.min_averagine_score default_ms1_scan_window = ( args.default_ms1_scan_window_start, args.default_ms1_scan_window_end) @@ -188,7 +191,8 @@ def run_simulation(args, dataset, st, out_dir): controller = TopNController( POSITIVE, N, isolation_window, mz_tol, rt_tol, min_ms1_intensity, advanced_params=params, exclude_after_n_times=exclude_after_n_times, - exclude_t0=exclude_t0, deisotope=deisotope, charge_range=charge_range) + exclude_t0=exclude_t0, deisotope=deisotope, charge_range=charge_range, + min_averagine_score=min_averagine_score) # create an environment to run both the mass spec and controller env = Environment(mass_spec, controller, min_rt, max_rt, progress_bar=args.pbar) From 5ffa4d6237ad98ca6ae7aba0b253dfc96c28c17b Mon Sep 17 00:00:00 2001 From: Joe Wandy Date: Mon, 26 Jun 2023 20:37:42 +0100 Subject: [PATCH 09/67] Added plotting and analysis methods --- vimms/scripts/check_fragmented_ions.py | 293 +++++++++++++++++++++++++ vimms/scripts/scan_timings.py | 2 + 2 files changed, 295 insertions(+) create mode 100644 vimms/scripts/check_fragmented_ions.py diff --git a/vimms/scripts/check_fragmented_ions.py b/vimms/scripts/check_fragmented_ions.py new file mode 100644 index 00000000..61b85173 --- /dev/null +++ b/vimms/scripts/check_fragmented_ions.py @@ -0,0 +1,293 @@ +from collections import defaultdict + +import matplotlib.pyplot as plt +import numpy as np +import pandas as pd +import seaborn as sns +from IPython.display import display +from ms_deisotope.deconvolution import deconvolute_peaks +from ms_deisotope.deconvolution.utils import prepare_peaklist +from tqdm import tqdm + + +def get_blocks(mz_file, sort_by_size=False): + block_counter = 0 + block_sizes = defaultdict(list) + + for s in mz_file.scans: + if s.ms_level == 1: + block_counter += 1 + block_sizes[block_counter].append(s) + + if sort_by_size: + block_sizes = sorted(block_sizes.items(), key=lambda x: len(x[1]), reverse=True) + else: + block_sizes = list(block_sizes.items()) + + return block_sizes + + +def plot_peaks(scan, precursors, relative=False): + # Extract mz and intensity values + mz = [peak[0] for peak in scan.peaks] + intensity = [peak[1] for peak in scan.peaks] + + # Convert to relative intensity if needed + if relative: + max_intensity = max(intensity) + intensity = [i / max_intensity for i in intensity] + + # Create the plot + plt.figure(figsize=(10, 6)) + for m, i in zip(mz, intensity): + # Check if m is close to any value in precursors + is_precursor = any(np.isclose(m, p, atol=1e-6) for p in precursors) + color = 'red' if is_precursor else 'C0' # 'C0' is the default matplotlib color + if not is_precursor: # If not a precursor, draw the line + plt.vlines(m, 0, i, colors=color) + + for m, i in zip(mz, intensity): + is_precursor = any(np.isclose(m, p, atol=1e-6) for p in precursors) + if is_precursor: # If a precursor, draw the line + plt.vlines(m, 0, i, colors='red') + + plt.xlabel('m/z') + plt.ylabel('Intensity' + (' (relative)' if relative else '')) + plt.title(f'MS1 Peaks -- {scan.rt_in_seconds}s') + plt.show() + + +def check_blocks(blocks): + for block_id, scans in blocks: + ms1_scan = scans[0] + ms2_scans = scans[1:] + precursors = [s.precursor_mz for s in ms2_scans] + + print('block_id', block_id) + print('scans', scans) + print('precursors', precursors, '(', len(precursors), ')') + + plot_peaks(ms1_scan, precursors) + + print() + + +def plot_num_ms2_scans(list_of_blocks, labels): + # Determine the layout of the subplots + num_plots = len(list_of_blocks) + num_rows = int(np.ceil(np.sqrt(num_plots))) + num_cols = int(np.ceil(num_plots / num_rows)) + + # Create the subplots + fig, axs = plt.subplots(num_rows, num_cols, figsize=(10, 6), sharex=False, sharey=True) + axs = axs.ravel() # Flatten the array of axes + + # Iterate over each list of blocks + for i, (blocks, label) in enumerate(zip(list_of_blocks, labels)): + # Prepare empty lists for the x and y values of the plot + ms1_times = [] + num_ms2_scans = [] + + for block_id, scans in blocks: + ms1_scan = scans[0] + ms2_scans = scans[1:] + ms1_time = ms1_scan.rt_in_seconds + num_ms2 = len(ms2_scans) + + # Append the values to the respective lists + ms1_times.append(ms1_time) + num_ms2_scans.append(num_ms2) + + # Add to the scatter plot + axs[i].scatter(ms1_times, num_ms2_scans, s=1, alpha=0.2) + axs[i].set_title(label) + + # Set the labels for the x and y axes + for ax in axs: + ax.set_xlabel('MS1 Scan Time (seconds)') + ax.set_ylabel('Number of MS2 Scans') + + # Adjust the layout + plt.tight_layout() + plt.show() + + +def peaks_to_dataframe(peak_set, block_id=None, precursors=None): + peaks_list = [] + + for peak in peak_set: + peak_dict = { + "a_to_a2_ratio": peak.a_to_a2_ratio, + "area": peak.area, + "average_mass": peak.average_mass, + "charge": peak.charge, + "chosen_for_msms": peak.chosen_for_msms, + "envelope": peak.envelope, + "full_width_at_half_max": peak.full_width_at_half_max, + "index": peak.index, + "intensity": peak.intensity, + "most_abundant_mass": peak.most_abundant_mass, + "mz": peak.mz, + "neutral_mass": peak.neutral_mass, + "score": peak.score, + "signal_to_noise": peak.signal_to_noise, + } + + if block_id is not None: + peak_dict['block_id'] = block_id + + if precursors is not None: + is_precursor = any(np.isclose(peak.mz, p, atol=1e-6) for p in precursors) + peak_dict['is_precursor'] = is_precursor + + peaks_list.append(peak_dict) + + df = pd.DataFrame(peaks_list) + return df + + +def score_peaks_in_block(blocks, idx, should_plot=False): + block = blocks[idx] + block_id, scans = block + ms1_scan = scans[0] + ms2_scans = scans[1:] + precursors = [s.precursor_mz for s in ms2_scans] + assert len(ms2_scans) == len(precursors) + + # Run deconvolution + # Extract mz and intensity values + mzs = np.array([peak[0] for peak in ms1_scan.peaks]) + intensities = np.array([peak[1] for peak in ms1_scan.peaks]) + + charge_range = (2, 6) + pl = prepare_peaklist((mzs, intensities)) + ps = deconvolute_peaks(pl, charge_range=charge_range) + df = peaks_to_dataframe(ps.peak_set.peaks, block_id=block_id, precursors=precursors) + + # optional plots + if should_plot: + plot_peaks(ms1_scan, precursors) + plt.show() + sns.histplot(df['score'], bins=30) # plot score distribution + plt.show() + + return df, precursors + + +def block_with_most_ms2_scans(blocks): + max_ms2_scans = 0 + block_with_most_ms2 = None + + for block in blocks: + block_id, scans = block + ms2_scans = scans[1:] # Get all MS2 scans + + if len(ms2_scans) > max_ms2_scans: + max_ms2_scans = len(ms2_scans) + block_with_most_ms2 = block + + return block_with_most_ms2 + + +def deconvolute_blocks(blocks): + scores_list = [] + times_list = [] + + for block in tqdm(blocks, desc='Processing blocks'): + block_id, scans = block + ms1_scan = scans[0] + ms2_scans = scans[1:] + + mzs = np.array([peak[0] for peak in ms1_scan.peaks]) + intensities = np.array([peak[1] for peak in ms1_scan.peaks]) + + charge_range = (2, 6) + pl = prepare_peaklist((mzs, intensities)) + ps = deconvolute_peaks(pl, charge_range=charge_range) + df = peaks_to_dataframe(ps.peak_set.peaks) + scores = df['score'].tolist() + + scores_list.append(scores) + times_list.append(ms1_scan.rt_in_seconds) + + return scores_list, times_list + + +def remove_outliers(scores): + # First quartile (Q1) + Q1 = np.percentile(scores, 25, interpolation='midpoint') + + # Third quartile (Q3) + Q3 = np.percentile(scores, 75, interpolation='midpoint') + + # Interquartile range (IQR) + IQR = Q3 - Q1 + + # Defining outliers + lower_bound = Q1 - 1.5 * IQR + upper_bound = Q3 + 1.5 * IQR + + return [score for score in scores if lower_bound <= score <= upper_bound] + + +def score_distribution_blocks(scores_list, blocks): + scores_with_ms2 = [] + scores_without_ms2 = [] + + for idx, block in enumerate(blocks): + block_id, scans = block + ms2_scans = scans[1:] + scores = scores_list[idx] + + if len(ms2_scans) > 0: + scores_with_ms2.extend(scores) + else: + scores_without_ms2.extend(scores) + + # Remove outliers + scores_with_ms2 = remove_outliers(scores_with_ms2) + scores_without_ms2 = remove_outliers(scores_without_ms2) + + fig, axs = plt.subplots(1, 2, sharey=True, figsize=(10, 5)) + + sns.boxplot(scores_with_ms2, ax=axs[0]) + axs[0].set_title('Blocks with MS2 scans') + + sns.boxplot(scores_without_ms2, ax=axs[1]) + axs[1].set_title('Blocks without MS2 scans') + + plt.show() + + +def estimate_baseline(avg_scores, window_size=100, quantile=0.10): + # Convert to pandas Series for convenience + avg_scores_series = pd.Series(avg_scores) + + # Compute rolling median with the specified window size + rolling_median = avg_scores_series.rolling(window_size, center=True).median() + + # Compute lower quantile + baseline = rolling_median.quantile(quantile) + + return baseline + + +def plot_average_scores(scores_list, times_list): + avg_scores = [sum(scores) / len(scores) if len(scores) > 0 else 0 for scores in scores_list] + + # Estimate baseline + baseline = estimate_baseline(avg_scores) + + # Plot average scores over time + plt.figure(figsize=(10, 5)) + plt.plot(times_list, avg_scores, label='Average Score') + plt.axhline(y=baseline, color='r', linestyle='--', label='Baseline') + plt.xlabel('Time (in seconds)') + plt.ylabel('Average Score') + plt.title('Average Score over Time') + plt.legend() + plt.show() + + # Filter out scores below the baseline + filtered_scores = [score for score in avg_scores if score > baseline] + # return baseline, filtered_scores diff --git a/vimms/scripts/scan_timings.py b/vimms/scripts/scan_timings.py index e97a7883..a1c1e0a9 100644 --- a/vimms/scripts/scan_timings.py +++ b/vimms/scripts/scan_timings.py @@ -199,6 +199,7 @@ def count_stuff(input_file, min_rt, max_rt): def plot_num_scans(real_cumsum_ms1, real_cumsum_ms2, simulated_cumsum_ms1, simulated_cumsum_ms2, out_file=None): + plt.figure(figsize=(10, 10)) plt.plot(real_cumsum_ms1[:, 0], real_cumsum_ms1[:, 1], 'r') plt.plot(real_cumsum_ms2[:, 0], real_cumsum_ms2[:, 1], 'b') plt.plot(simulated_cumsum_ms1[:, 0], simulated_cumsum_ms1[:, 1], 'r--') @@ -213,6 +214,7 @@ def plot_num_scans(real_cumsum_ms1, real_cumsum_ms2, simulated_cumsum_ms1, simul if out_file is not None: plt.savefig(out_file, dpi=300) + plt.show() def main(): args = parse_args() From 97b2082bfb37dcc88c9725f3f51cb7ab9cacd75b Mon Sep 17 00:00:00 2001 From: Joe Wandy Date: Mon, 26 Jun 2023 22:07:52 +0100 Subject: [PATCH 10/67] Added test script --- vimms/scripts/topN_test.sh | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 vimms/scripts/topN_test.sh diff --git a/vimms/scripts/topN_test.sh b/vimms/scripts/topN_test.sh new file mode 100644 index 00000000..1f399fe7 --- /dev/null +++ b/vimms/scripts/topN_test.sh @@ -0,0 +1,30 @@ +#!/bin/bash + +in_mzml="/home/joewandy/data/BSA_100fmol__recon_1ul_1.mzML" +at_least_one_point_above="1E4" +source_dir="/home/joewandy/vimms/vimms/scripts/topN_timing_improvement_1E4" + +# An array of charge range start and end +# charge_range=( "1 8" "2 6" ) +charge_range=( "2 6" ) + +# An array of min_averagine_scores +# min_averagine_scores=( "50" "100" "150" "200" ) +min_averagine_scores=( "160" "170" "180" "190" ) + +# Loop through each combination of charge range and min_averagine_scores +for range in "${charge_range[@]}"; do + IFS=' ' read -r -a tokens <<< "$range" + start=${tokens[0]} + end=${tokens[1]} + for score in "${min_averagine_scores[@]}"; do + out_dir="topN_timing_improvement_${at_least_one_point_above}_${start}_${end}_${score}" + # Check if directory exists, if not create it + if [ ! -d "$out_dir" ]; then + mkdir -p $out_dir + # Copy contents of source directory to new directory + cp -r $source_dir/* $out_dir/ + fi + python topN_test.py --in_mzml $in_mzml --at_least_one_point_above $at_least_one_point_above --charge_range_start $start --charge_range_end $end --out_dir $out_dir --min_averagine_score $score + done +done \ No newline at end of file From b8f5dfca89a5683c6af486024a6d2e3f8bf49694 Mon Sep 17 00:00:00 2001 From: Joe Wandy Date: Tue, 27 Jun 2023 10:42:39 +0100 Subject: [PATCH 11/67] Missing permission --- vimms/scripts/topN_test.sh | 0 1 file changed, 0 insertions(+), 0 deletions(-) mode change 100644 => 100755 vimms/scripts/topN_test.sh diff --git a/vimms/scripts/topN_test.sh b/vimms/scripts/topN_test.sh old mode 100644 new mode 100755 From ad3d72524c586a9c79ebf7a4973988cbea4c384e Mon Sep 17 00:00:00 2001 From: Joe Wandy Date: Thu, 6 Jul 2023 16:05:40 +0100 Subject: [PATCH 12/67] Updated analysis script --- vimms/scripts/check_fragmented_ions.py | 526 +++++++++++++++---------- 1 file changed, 314 insertions(+), 212 deletions(-) diff --git a/vimms/scripts/check_fragmented_ions.py b/vimms/scripts/check_fragmented_ions.py index 61b85173..61668dca 100644 --- a/vimms/scripts/check_fragmented_ions.py +++ b/vimms/scripts/check_fragmented_ions.py @@ -4,102 +4,45 @@ import numpy as np import pandas as pd import seaborn as sns -from IPython.display import display from ms_deisotope.deconvolution import deconvolute_peaks from ms_deisotope.deconvolution.utils import prepare_peaklist from tqdm import tqdm +ALL_BLOCKS = int(1E6) +ATOL = 0.01 -def get_blocks(mz_file, sort_by_size=False): - block_counter = 0 - block_sizes = defaultdict(list) - for s in mz_file.scans: - if s.ms_level == 1: - block_counter += 1 - block_sizes[block_counter].append(s) +def plot_num_ms2_scans(reference_block_deconvoluter, simulated_block_deconvoluter, labels, + s=3, alpha=1.0, lo=0, hi=int(1E6)): + list_of_block_deconvoluters = [reference_block_deconvoluter, simulated_block_deconvoluter] - if sort_by_size: - block_sizes = sorted(block_sizes.items(), key=lambda x: len(x[1]), reverse=True) - else: - block_sizes = list(block_sizes.items()) - - return block_sizes - - -def plot_peaks(scan, precursors, relative=False): - # Extract mz and intensity values - mz = [peak[0] for peak in scan.peaks] - intensity = [peak[1] for peak in scan.peaks] - - # Convert to relative intensity if needed - if relative: - max_intensity = max(intensity) - intensity = [i / max_intensity for i in intensity] - - # Create the plot - plt.figure(figsize=(10, 6)) - for m, i in zip(mz, intensity): - # Check if m is close to any value in precursors - is_precursor = any(np.isclose(m, p, atol=1e-6) for p in precursors) - color = 'red' if is_precursor else 'C0' # 'C0' is the default matplotlib color - if not is_precursor: # If not a precursor, draw the line - plt.vlines(m, 0, i, colors=color) - - for m, i in zip(mz, intensity): - is_precursor = any(np.isclose(m, p, atol=1e-6) for p in precursors) - if is_precursor: # If a precursor, draw the line - plt.vlines(m, 0, i, colors='red') - - plt.xlabel('m/z') - plt.ylabel('Intensity' + (' (relative)' if relative else '')) - plt.title(f'MS1 Peaks -- {scan.rt_in_seconds}s') - plt.show() - - -def check_blocks(blocks): - for block_id, scans in blocks: - ms1_scan = scans[0] - ms2_scans = scans[1:] - precursors = [s.precursor_mz for s in ms2_scans] - - print('block_id', block_id) - print('scans', scans) - print('precursors', precursors, '(', len(precursors), ')') - - plot_peaks(ms1_scan, precursors) - - print() - - -def plot_num_ms2_scans(list_of_blocks, labels): # Determine the layout of the subplots - num_plots = len(list_of_blocks) + num_plots = len(list_of_block_deconvoluters) num_rows = int(np.ceil(np.sqrt(num_plots))) num_cols = int(np.ceil(num_plots / num_rows)) # Create the subplots - fig, axs = plt.subplots(num_rows, num_cols, figsize=(10, 6), sharex=False, sharey=True) + fig, axs = plt.subplots(num_rows, num_cols, figsize=(10, 6), sharex=True, sharey=True) axs = axs.ravel() # Flatten the array of axes # Iterate over each list of blocks - for i, (blocks, label) in enumerate(zip(list_of_blocks, labels)): + for i, (bd, label) in enumerate(zip(list_of_block_deconvoluters, labels)): # Prepare empty lists for the x and y values of the plot ms1_times = [] num_ms2_scans = [] - for block_id, scans in blocks: - ms1_scan = scans[0] - ms2_scans = scans[1:] - ms1_time = ms1_scan.rt_in_seconds - num_ms2 = len(ms2_scans) + for block_id, scans in bd.blocks: + if lo <= block_id <= hi: + ms1_scan = scans[0] + ms2_scans = scans[1:] + ms1_time = ms1_scan.rt_in_seconds + num_ms2 = len(ms2_scans) - # Append the values to the respective lists - ms1_times.append(ms1_time) - num_ms2_scans.append(num_ms2) + # Append the values to the respective lists + ms1_times.append(ms1_time) + num_ms2_scans.append(num_ms2) - # Add to the scatter plot - axs[i].scatter(ms1_times, num_ms2_scans, s=1, alpha=0.2) + axs[i].scatter(ms1_times, num_ms2_scans, s=s, alpha=alpha) axs[i].set_title(label) # Set the labels for the x and y axes @@ -112,182 +55,341 @@ def plot_num_ms2_scans(list_of_blocks, labels): plt.show() -def peaks_to_dataframe(peak_set, block_id=None, precursors=None): - peaks_list = [] - - for peak in peak_set: - peak_dict = { - "a_to_a2_ratio": peak.a_to_a2_ratio, - "area": peak.area, - "average_mass": peak.average_mass, - "charge": peak.charge, - "chosen_for_msms": peak.chosen_for_msms, - "envelope": peak.envelope, - "full_width_at_half_max": peak.full_width_at_half_max, - "index": peak.index, - "intensity": peak.intensity, - "most_abundant_mass": peak.most_abundant_mass, - "mz": peak.mz, - "neutral_mass": peak.neutral_mass, - "score": peak.score, - "signal_to_noise": peak.signal_to_noise, - } - - if block_id is not None: - peak_dict['block_id'] = block_id - - if precursors is not None: - is_precursor = any(np.isclose(peak.mz, p, atol=1e-6) for p in precursors) - peak_dict['is_precursor'] = is_precursor - - peaks_list.append(peak_dict) +class BlockDeconvoluter: + def __init__(self, mz_file, max_blocks=ALL_BLOCKS, discard_first=False): + self.blocks = self._get_blocks(mz_file, max_blocks=max_blocks, discard_first=discard_first) + self._reset() - df = pd.DataFrame(peaks_list) - return df + def check_blocks(self, lo=0, hi=ALL_BLOCKS): + for block in self.blocks[lo: hi]: + self.plot_block(block) + def plot_block(self, block): + block_id, scans = block + ms1_scan = scans[0] + ms2_scans = scans[1:] + precursors = [s.precursor_mz for s in ms2_scans] + print('block_id', block_id) + print('ms1_scan', ms1_scan.precursor_mz, '@', ms1_scan.rt_in_seconds) + print('precursors', precursors, '(', len(precursors), ')') + print('len(ms2_scans)', len(ms2_scans)) + self._plot_peaks(ms1_scan, precursors) + print() -def score_peaks_in_block(blocks, idx, should_plot=False): - block = blocks[idx] - block_id, scans = block - ms1_scan = scans[0] - ms2_scans = scans[1:] - precursors = [s.precursor_mz for s in ms2_scans] - assert len(ms2_scans) == len(precursors) - - # Run deconvolution - # Extract mz and intensity values - mzs = np.array([peak[0] for peak in ms1_scan.peaks]) - intensities = np.array([peak[1] for peak in ms1_scan.peaks]) - - charge_range = (2, 6) - pl = prepare_peaklist((mzs, intensities)) - ps = deconvolute_peaks(pl, charge_range=charge_range) - df = peaks_to_dataframe(ps.peak_set.peaks, block_id=block_id, precursors=precursors) + def block_with_most_ms2_scans(self): + max_ms2_scans = 0 + idx_found = None - # optional plots - if should_plot: - plot_peaks(ms1_scan, precursors) - plt.show() - sns.histplot(df['score'], bins=30) # plot score distribution - plt.show() + for i in range(len(self.blocks)): + block = self.blocks[i] + block_id, scans = block + ms2_scans = scans[1:] # Get all MS2 scans - return df, precursors + if len(ms2_scans) > max_ms2_scans: + max_ms2_scans = len(ms2_scans) + idx_found = i + print(idx_found) + largest_block = self.blocks[idx_found] + largest_df = self.dfs[idx_found] + largest_precursors = self.precursor_list[idx_found] -def block_with_most_ms2_scans(blocks): - max_ms2_scans = 0 - block_with_most_ms2 = None + return largest_block, largest_df, largest_precursors - for block in blocks: - block_id, scans = block - ms2_scans = scans[1:] # Get all MS2 scans + def find_similar(self, to_find): + to_find = to_find[1][0].rt_in_seconds - if len(ms2_scans) > max_ms2_scans: - max_ms2_scans = len(ms2_scans) - block_with_most_ms2 = block + prev_block = None + curr_block = None + block_after = None - return block_with_most_ms2 + for block in self.blocks: + prev_block = curr_block + curr_block = block + block_id, scans = block + ms1_scan = scans[0] + if ms1_scan.rt_in_seconds > to_find: + block_after = curr_block + break + block_before = prev_block + return block_before, block_after -def deconvolute_blocks(blocks): - scores_list = [] - times_list = [] + def deconvolute_blocks(self, decon_config=None): + self._reset() - for block in tqdm(blocks, desc='Processing blocks'): - block_id, scans = block - ms1_scan = scans[0] - ms2_scans = scans[1:] + for block in tqdm(self.blocks, desc='Processing blocks'): + block_id, scans = block + ms1_scan = scans[0] + ms2_scans = scans[1:] + precursors = [s.precursor_mz for s in ms2_scans] - mzs = np.array([peak[0] for peak in ms1_scan.peaks]) - intensities = np.array([peak[1] for peak in ms1_scan.peaks]) + mzs = np.array([peak[0] for peak in ms1_scan.peaks]) + intensities = np.array([peak[1] for peak in ms1_scan.peaks]) - charge_range = (2, 6) - pl = prepare_peaklist((mzs, intensities)) - ps = deconvolute_peaks(pl, charge_range=charge_range) - df = peaks_to_dataframe(ps.peak_set.peaks) - scores = df['score'].tolist() + charge_range = (2, 6) + pl = prepare_peaklist((mzs, intensities)) + ps = deconvolute_peaks(pl, decon_config=decon_config, charge_range=charge_range) + df = self._peaks_to_dataframe(ps.peak_set.peaks, precursors=precursors) - scores_list.append(scores) - times_list.append(ms1_scan.rt_in_seconds) + self.dfs.append(df) + self.ms1_scans.append(ms1_scan) + self.precursor_list.append(precursors) - return scores_list, times_list + scores = df['score'].tolist() if not df.empty else [] + self.scores_list.append(scores) + self.times_list.append(ms1_scan.rt_in_seconds) + def score_distribution_blocks(self): + scores_with_ms2 = [] + scores_without_ms2 = [] -def remove_outliers(scores): - # First quartile (Q1) - Q1 = np.percentile(scores, 25, interpolation='midpoint') + for idx, block in enumerate(self.blocks): + block_id, scans = block + ms2_scans = scans[1:] + scores = self.scores_list[idx] - # Third quartile (Q3) - Q3 = np.percentile(scores, 75, interpolation='midpoint') + if len(ms2_scans) > 0: + scores_with_ms2.extend(scores) + else: + scores_without_ms2.extend(scores) - # Interquartile range (IQR) - IQR = Q3 - Q1 + scores_with_ms2 = self._remove_outliers(scores_with_ms2) + scores_without_ms2 = self._remove_outliers(scores_without_ms2) - # Defining outliers - lower_bound = Q1 - 1.5 * IQR - upper_bound = Q3 + 1.5 * IQR + fig, axs = plt.subplots(1, 2, sharey=True, figsize=(10, 5)) - return [score for score in scores if lower_bound <= score <= upper_bound] + sns.boxplot(scores_with_ms2, ax=axs[0]) + axs[0].set_title('Blocks with MS2 scans') + sns.boxplot(scores_without_ms2, ax=axs[1]) + axs[1].set_title('Blocks without MS2 scans') -def score_distribution_blocks(scores_list, blocks): - scores_with_ms2 = [] - scores_without_ms2 = [] + plt.show() - for idx, block in enumerate(blocks): - block_id, scans = block - ms2_scans = scans[1:] - scores = scores_list[idx] + def plot_average_scores(self, window_size=10): + avg_scores = [sum(scores) / len(scores) if len(scores) > 0 else 0 for scores in + self.scores_list] + num_peaks = [len(scores) if len(scores) > 0 else 0 for scores in + self.scores_list] + + baseline = self._estimate_baseline(avg_scores, window_size=window_size) + print(baseline) + + plt.figure(figsize=(10, 5)) + plt.plot(self.times_list, avg_scores, label='Average Score', + marker='o') # Added marker='o' for circular markers + plt.axhline(y=baseline, color='r', linestyle='--', label='Baseline') + plt.xlabel('Time (in seconds)') + plt.ylabel('Average Score') + plt.title('Average Score over Time') + plt.legend() + plt.show() - if len(ms2_scans) > 0: - scores_with_ms2.extend(scores) - else: - scores_without_ms2.extend(scores) + filtered_scores = [score for score in avg_scores if score > baseline] + return filtered_scores - # Remove outliers - scores_with_ms2 = remove_outliers(scores_with_ms2) - scores_without_ms2 = remove_outliers(scores_without_ms2) + def plot_minimum_scores(self): + min_scores = [min(scores) if len(scores) > 0 else 0 for scores in self.scores_list] - fig, axs = plt.subplots(1, 2, sharey=True, figsize=(10, 5)) + plt.figure(figsize=(10, 5)) + plt.plot(self.times_list, min_scores, label='Minimum Score', + marker='o') # Added marker='o' for circular markers + plt.xlabel('Time (in seconds)') + plt.ylabel('Minimum Score') + plt.title('Minimum Score over Time') + plt.legend() + plt.show() - sns.boxplot(scores_with_ms2, ax=axs[0]) - axs[0].set_title('Blocks with MS2 scans') + def plot_minimum_scores_fragmented(self, plot_type='line'): + min_scores_fragmented = [] + signal_to_noise_ratios = [] + for df in self.dfs: + if 'is_precursor' in df.columns: + precursor_scores = df[df['is_precursor'] == True]['score'] + if not precursor_scores.empty: # Added check for empty dataframe + min_score_idx = precursor_scores.idxmin() + min_score = df.loc[min_score_idx, 'score'] + sn_ratio = df.loc[min_score_idx, 'signal_to_noise'] + min_scores_fragmented.append(min_score) + signal_to_noise_ratios.append(int(sn_ratio)) + else: # Handling case when precursor_scores is empty + min_scores_fragmented.append(None) + signal_to_noise_ratios.append(None) + else: + min_scores_fragmented.append(0) + signal_to_noise_ratios.append(0) # Assuming a default value of 0 + + plt.figure(figsize=(10, 5)) + + if plot_type == 'scatter': + plt.scatter(min_scores_fragmented, signal_to_noise_ratios, + label='Signal-to-Noise Ratio vs Min Score', marker='o') + plt.xlabel('Minimum Score') + plt.ylabel('Signal-to-Noise Ratio') + else: # Default to line plot + plt.plot(self.times_list, min_scores_fragmented, label='Minimum Score (fragmented)', + marker='o') + for i, txt in enumerate(signal_to_noise_ratios): + if txt is not None: # Check to make sure there's something to annotate + plt.annotate(txt, (self.times_list[i], min_scores_fragmented[i])) + plt.xlabel('Time (in seconds)') + plt.ylabel('Minimum Score') + + plt.title('Minimum Score of Fragmented Peaks over Time') + plt.legend() + plt.show() - sns.boxplot(scores_without_ms2, ax=axs[1]) - axs[1].set_title('Blocks without MS2 scans') + def plot_maximum_scores(self): + max_scores = [max(scores) if len(scores) > 0 else 0 for scores in self.scores_list] - plt.show() + plt.figure(figsize=(10, 5)) + plt.plot(self.times_list, max_scores, label='Maximum Score', + marker='o') # Added marker='o' for circular markers + plt.xlabel('Time (in seconds)') + plt.ylabel('Maximum Score') + plt.title('Maximum Score over Time') + plt.legend() + plt.show() + def plot_maximum_scores_fragmented(self, plot_type='line'): + max_scores_fragmented = [] + signal_to_noise_ratios = [] + for df in self.dfs: + if 'is_precursor' in df.columns: + precursor_scores = df[df['is_precursor'] == True]['score'] + if not precursor_scores.empty: # Added check for empty dataframe + max_score_idx = precursor_scores.idxmax() + max_score = df.loc[max_score_idx, 'score'] + sn_ratio = df.loc[max_score_idx, 'signal_to_noise'] + max_scores_fragmented.append(max_score) + signal_to_noise_ratios.append(int(sn_ratio)) + else: # Handling case when precursor_scores is empty + max_scores_fragmented.append(None) + signal_to_noise_ratios.append(None) + else: + max_scores_fragmented.append(0) + signal_to_noise_ratios.append(0) # Assuming a default value of 0 + + plt.figure(figsize=(10, 5)) + + if plot_type == 'scatter': + plt.scatter(max_scores_fragmented, signal_to_noise_ratios, + label='Signal-to-Noise Ratio vs Max Score', marker='o') + plt.xlabel('Maximum Score') + plt.ylabel('Signal-to-Noise Ratio') + else: # Default to line plot + plt.plot(self.times_list, max_scores_fragmented, label='Maximum Score (fragmented)', + marker='o') + for i, txt in enumerate(signal_to_noise_ratios): + if txt is not None: # Check to make sure there's something to annotate + plt.annotate(txt, (self.times_list[i], max_scores_fragmented[i])) + plt.xlabel('Time (in seconds)') + plt.ylabel('Maximum Score') + + plt.title('Maximum Score of Fragmented Peaks over Time') + plt.legend() + plt.show() -def estimate_baseline(avg_scores, window_size=100, quantile=0.10): - # Convert to pandas Series for convenience - avg_scores_series = pd.Series(avg_scores) + def _reset(self): + self.dfs = [] + self.ms1_scans = [] + self.precursor_list = [] + self.scores_list = [] + self.times_list = [] + + def _get_blocks(self, mz_file, max_blocks=ALL_BLOCKS, discard_first=False): + block_counter = 0 + block_sizes = defaultdict(list) + + for s in mz_file.scans: + if s.ms_level == 1: + block_counter += 1 + if block_counter >= max_blocks + 1: + break + # If discard_first is True and we're on the first block, do nothing. + # Otherwise, add the scan to the block. + if not (discard_first and block_counter == 1): + block_sizes[block_counter].append(s) - # Compute rolling median with the specified window size - rolling_median = avg_scores_series.rolling(window_size, center=True).median() + block_sizes = list(block_sizes.items()) + return block_sizes + + def _plot_peaks(self, scan, precursors, relative=False): + # Extract mz and intensity values + mz = [peak[0] for peak in scan.peaks] + intensity = [peak[1] for peak in scan.peaks] + + # Convert to relative intensity if needed + if relative: + max_intensity = max(intensity) + intensity = [i / max_intensity for i in intensity] + + # Create the plot + plt.figure(figsize=(10, 6)) + for m, i in zip(mz, intensity): + # Check if m is close to any value in precursors + is_precursor = any(np.isclose(m, p, atol=ATOL) for p in precursors) + # print(m, i, is_precursor) + color = 'red' if is_precursor else 'C0' # 'C0' is the default matplotlib color + plt.vlines(m, 0, i, colors=color, zorder=2 if is_precursor else 1) + + # If a precursor, annotate the line + if is_precursor: + plt.annotate(f'm/z={m:.4f}', (m, i), textcoords="offset points", xytext=(0, 10), + ha='center', color='red') + + plt.xlabel('m/z') + plt.ylabel('Intensity' + (' (relative)' if relative else '')) + plt.title(f'MS1 Peaks -- {scan.rt_in_seconds}s') + plt.show() - # Compute lower quantile - baseline = rolling_median.quantile(quantile) + def _peaks_to_dataframe(self, peak_set, block_id=None, precursors=None): + peaks_list = [] + + for peak in peak_set: + peak_dict = { + "a_to_a2_ratio": peak.a_to_a2_ratio, + "area": peak.area, + "average_mass": peak.average_mass, + "charge": peak.charge, + "chosen_for_msms": peak.chosen_for_msms, + "envelope": peak.envelope, + "full_width_at_half_max": peak.full_width_at_half_max, + "index": peak.index, + "intensity": peak.intensity, + "most_abundant_mass": peak.most_abundant_mass, + "mz": peak.mz, + "neutral_mass": peak.neutral_mass, + "score": peak.score, + "signal_to_noise": peak.signal_to_noise, + } + + if block_id is not None: + peak_dict['block_id'] = block_id + + is_precursor = False + if precursors is not None: + is_precursor = any(np.isclose(peak.mz, p, atol=ATOL) for p in precursors) + peak_dict['is_precursor'] = is_precursor - return baseline + peaks_list.append(peak_dict) + df = pd.DataFrame(peaks_list) + return df -def plot_average_scores(scores_list, times_list): - avg_scores = [sum(scores) / len(scores) if len(scores) > 0 else 0 for scores in scores_list] + def _remove_outliers(self, scores): + Q1 = np.percentile(scores, 25, interpolation='midpoint') + Q3 = np.percentile(scores, 75, interpolation='midpoint') + IQR = Q3 - Q1 + lower_bound = Q1 - 1.5 * IQR + upper_bound = Q3 + 1.5 * IQR - # Estimate baseline - baseline = estimate_baseline(avg_scores) + return [score for score in scores if lower_bound <= score <= upper_bound] - # Plot average scores over time - plt.figure(figsize=(10, 5)) - plt.plot(times_list, avg_scores, label='Average Score') - plt.axhline(y=baseline, color='r', linestyle='--', label='Baseline') - plt.xlabel('Time (in seconds)') - plt.ylabel('Average Score') - plt.title('Average Score over Time') - plt.legend() - plt.show() + def _estimate_baseline(self, avg_scores, window_size=10, quantile=0.10): + avg_scores_series = pd.Series(avg_scores) + rolling_median = avg_scores_series.rolling(window_size, center=True).median() + baseline = rolling_median.quantile(quantile) - # Filter out scores below the baseline - filtered_scores = [score for score in avg_scores if score > baseline] - # return baseline, filtered_scores + return baseline From d81c6c9ea639bc13c165b7bc25740db0949f2a24 Mon Sep 17 00:00:00 2001 From: Joe Wandy Date: Thu, 6 Jul 2023 16:05:57 +0100 Subject: [PATCH 13/67] Test with more parameter values --- vimms/Controller/topN.py | 13 +++++++++---- vimms/scripts/topN_test.py | 8 ++++---- vimms/scripts/topN_test.sh | 8 +++----- 3 files changed, 16 insertions(+), 13 deletions(-) diff --git a/vimms/Controller/topN.py b/vimms/Controller/topN.py index 98c4e766..4dc34eb1 100644 --- a/vimms/Controller/topN.py +++ b/vimms/Controller/topN.py @@ -1,5 +1,6 @@ import numpy as np from loguru import logger +from ms_deisotope import MSDeconVFitter from vimms.Common import DUMMY_PRECURSOR_MZ from vimms.Controller.base import Controller @@ -19,7 +20,7 @@ def __init__(self, ionisation_mode, N, isolation_width, mz_tol, rt_tol, min_ms1_intensity, ms1_shift=0, initial_exclusion_list=None, advanced_params=None, force_N=False, exclude_after_n_times=1, exclude_t0=0, - deisotope=False, charge_range=(1, 8), min_averagine_score=100): + deisotope=False, charge_range=(1, 8), min_decon_score=160): """ Initialise the Top-N controller @@ -77,12 +78,16 @@ def __init__(self, ionisation_mode, N, isolation_width, mz_tol, rt_tol, # for isotope filtering using ms_deisotope self.deisotope = deisotope self.charge_range = charge_range - self.min_averagine_score = min_averagine_score + self.min_decon_score = min_decon_score def _process_scan(self, scan): # if there's a previous ms1 scan to process new_tasks = [] fragmented_count = 0 + + scorer = MSDeconVFitter(minimum_score=self.min_decon_score, mass_error_tolerance=0.00002) + dc = {'scorer': scorer} + if self.scan_to_process is not None: # original scan data @@ -93,11 +98,11 @@ def _process_scan(self, scan): if self.deisotope: pl = prepare_peaklist((mzs, intensities)) - ps = deconvolute_peaks(pl, charge_range=self.charge_range) + ps = deconvolute_peaks(pl, decon_config=dc, charge_range=self.charge_range) mzs = [] intensities = [] for peak in ps.peak_set.peaks: - if peak.score > self.min_averagine_score: + if peak.score >= self.min_decon_score: mzs.append(peak.mz) intensities.append(peak.intensity) mzs = np.array(mzs) diff --git a/vimms/scripts/topN_test.py b/vimms/scripts/topN_test.py index 57e1ae7e..5b546284 100644 --- a/vimms/scripts/topN_test.py +++ b/vimms/scripts/topN_test.py @@ -56,8 +56,8 @@ def parse_args(): help='The start of the charge range for filtering.') parser.add_argument('--charge_range_end', type=int, default=6, help='The end of the charge range for filtering.') - parser.add_argument('--min_averagine_score', type=int, default=100, - help='The minimum averagine score from ms_deconvolve.') + parser.add_argument('--min-decon-score', type=int, default=160, + help='The minimum deconvolution score from ms_deconvolve.') parser.add_argument('--out_dir', type=str, default='topN_test', help='The directory where the output files will be stored.') parser.add_argument('--pbar', type=bool, default=True, @@ -175,7 +175,7 @@ def run_simulation(args, dataset, st, out_dir): rt_tol = args.rt_tol mz_tol = args.mz_tol min_ms1_intensity = args.min_ms1_intensity - min_averagine_score = args.min_averagine_score + min_decon_score = args.min_decon_score default_ms1_scan_window = ( args.default_ms1_scan_window_start, args.default_ms1_scan_window_end) @@ -192,7 +192,7 @@ def run_simulation(args, dataset, st, out_dir): POSITIVE, N, isolation_window, mz_tol, rt_tol, min_ms1_intensity, advanced_params=params, exclude_after_n_times=exclude_after_n_times, exclude_t0=exclude_t0, deisotope=deisotope, charge_range=charge_range, - min_averagine_score=min_averagine_score) + min_decon_score=min_decon_score) # create an environment to run both the mass spec and controller env = Environment(mass_spec, controller, min_rt, max_rt, progress_bar=args.pbar) diff --git a/vimms/scripts/topN_test.sh b/vimms/scripts/topN_test.sh index 1f399fe7..598f1b8c 100755 --- a/vimms/scripts/topN_test.sh +++ b/vimms/scripts/topN_test.sh @@ -5,19 +5,17 @@ at_least_one_point_above="1E4" source_dir="/home/joewandy/vimms/vimms/scripts/topN_timing_improvement_1E4" # An array of charge range start and end -# charge_range=( "1 8" "2 6" ) charge_range=( "2 6" ) # An array of min_averagine_scores -# min_averagine_scores=( "50" "100" "150" "200" ) -min_averagine_scores=( "160" "170" "180" "190" ) +min_decon_scores=( "50" "100" "150" "160" "170" "180" "190" "200" "250" "300" "350" "400" "450" "500" "550" ) # Loop through each combination of charge range and min_averagine_scores for range in "${charge_range[@]}"; do IFS=' ' read -r -a tokens <<< "$range" start=${tokens[0]} end=${tokens[1]} - for score in "${min_averagine_scores[@]}"; do + for score in "${min_decon_scores[@]}"; do out_dir="topN_timing_improvement_${at_least_one_point_above}_${start}_${end}_${score}" # Check if directory exists, if not create it if [ ! -d "$out_dir" ]; then @@ -25,6 +23,6 @@ for range in "${charge_range[@]}"; do # Copy contents of source directory to new directory cp -r $source_dir/* $out_dir/ fi - python topN_test.py --in_mzml $in_mzml --at_least_one_point_above $at_least_one_point_above --charge_range_start $start --charge_range_end $end --out_dir $out_dir --min_averagine_score $score + python topN_test.py --in_mzml $in_mzml --at_least_one_point_above $at_least_one_point_above --charge_range_start $start --charge_range_end $end --out_dir $out_dir --min_decon_score $score done done \ No newline at end of file From 616e8b89a0d0afaeb41de7d4353aa0c02704fa46 Mon Sep 17 00:00:00 2001 From: Joe Wandy Date: Thu, 6 Jul 2023 16:21:36 +0100 Subject: [PATCH 14/67] typo --- vimms/scripts/topN_test.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/vimms/scripts/topN_test.py b/vimms/scripts/topN_test.py index 5b546284..15bdbdcd 100644 --- a/vimms/scripts/topN_test.py +++ b/vimms/scripts/topN_test.py @@ -56,7 +56,7 @@ def parse_args(): help='The start of the charge range for filtering.') parser.add_argument('--charge_range_end', type=int, default=6, help='The end of the charge range for filtering.') - parser.add_argument('--min-decon-score', type=int, default=160, + parser.add_argument('--min_decon_score', type=int, default=160, help='The minimum deconvolution score from ms_deconvolve.') parser.add_argument('--out_dir', type=str, default='topN_test', help='The directory where the output files will be stored.') From 6af69549cbbdadd0af4df7612de46c736cfc1aa0 Mon Sep 17 00:00:00 2001 From: Joe Wandy Date: Fri, 7 Jul 2023 10:43:32 +0100 Subject: [PATCH 15/67] Grid search the penalty factor --- vimms/Controller/topN.py | 21 ++++++++------ vimms/scripts/topN_test.py | 11 +++++--- vimms/scripts/topN_test.sh | 56 ++++++++++++++++++++++++++++---------- 3 files changed, 61 insertions(+), 27 deletions(-) diff --git a/vimms/Controller/topN.py b/vimms/Controller/topN.py index 4dc34eb1..4ddb4494 100644 --- a/vimms/Controller/topN.py +++ b/vimms/Controller/topN.py @@ -1,6 +1,6 @@ import numpy as np from loguru import logger -from ms_deisotope import MSDeconVFitter +from ms_deisotope import MSDeconVFitter, PenalizedMSDeconVFitter from vimms.Common import DUMMY_PRECURSOR_MZ from vimms.Controller.base import Controller @@ -20,7 +20,7 @@ def __init__(self, ionisation_mode, N, isolation_width, mz_tol, rt_tol, min_ms1_intensity, ms1_shift=0, initial_exclusion_list=None, advanced_params=None, force_N=False, exclude_after_n_times=1, exclude_t0=0, - deisotope=False, charge_range=(1, 8), min_decon_score=160): + deisotope=False, charge_range=(2, 6), min_fit_score=160, penalty_factor=1.0): """ Initialise the Top-N controller @@ -78,15 +78,21 @@ def __init__(self, ionisation_mode, N, isolation_width, mz_tol, rt_tol, # for isotope filtering using ms_deisotope self.deisotope = deisotope self.charge_range = charge_range - self.min_decon_score = min_decon_score + self.min_fit_score = min_fit_score + self.penalty_factor = penalty_factor def _process_scan(self, scan): # if there's a previous ms1 scan to process new_tasks = [] fragmented_count = 0 - scorer = MSDeconVFitter(minimum_score=self.min_decon_score, mass_error_tolerance=0.00002) - dc = {'scorer': scorer} + if self.deisotope: + scorer = PenalizedMSDeconVFitter( + minimum_score=self.min_fit_score, + penalty_factor=self.penalty_factor, + mass_error_tolerance=0.00002 + ) + dc = {'scorer': scorer} if self.scan_to_process is not None: @@ -102,9 +108,8 @@ def _process_scan(self, scan): mzs = [] intensities = [] for peak in ps.peak_set.peaks: - if peak.score >= self.min_decon_score: - mzs.append(peak.mz) - intensities.append(peak.intensity) + mzs.append(peak.mz) + intensities.append(peak.intensity) mzs = np.array(mzs) intensities = np.array(intensities) diff --git a/vimms/scripts/topN_test.py b/vimms/scripts/topN_test.py index 15bdbdcd..f2794f05 100644 --- a/vimms/scripts/topN_test.py +++ b/vimms/scripts/topN_test.py @@ -56,8 +56,10 @@ def parse_args(): help='The start of the charge range for filtering.') parser.add_argument('--charge_range_end', type=int, default=6, help='The end of the charge range for filtering.') - parser.add_argument('--min_decon_score', type=int, default=160, - help='The minimum deconvolution score from ms_deconvolve.') + parser.add_argument('--min_fit_score', type=int, default=160, + help='The minimum fit score from ms_deconvolve.') + parser.add_argument('--penalty_factor', type=float, default=1.0, + help='Penalty factor for ms_deconvolve.') parser.add_argument('--out_dir', type=str, default='topN_test', help='The directory where the output files will be stored.') parser.add_argument('--pbar', type=bool, default=True, @@ -175,7 +177,8 @@ def run_simulation(args, dataset, st, out_dir): rt_tol = args.rt_tol mz_tol = args.mz_tol min_ms1_intensity = args.min_ms1_intensity - min_decon_score = args.min_decon_score + min_fit_score = args.min_fit_score + penalty_factor = args.penalty_factor default_ms1_scan_window = ( args.default_ms1_scan_window_start, args.default_ms1_scan_window_end) @@ -192,7 +195,7 @@ def run_simulation(args, dataset, st, out_dir): POSITIVE, N, isolation_window, mz_tol, rt_tol, min_ms1_intensity, advanced_params=params, exclude_after_n_times=exclude_after_n_times, exclude_t0=exclude_t0, deisotope=deisotope, charge_range=charge_range, - min_decon_score=min_decon_score) + min_fit_score=min_fit_score, penalty_factor=penalty_factor) # create an environment to run both the mass spec and controller env = Environment(mass_spec, controller, min_rt, max_rt, progress_bar=args.pbar) diff --git a/vimms/scripts/topN_test.sh b/vimms/scripts/topN_test.sh index 598f1b8c..01cfff3b 100755 --- a/vimms/scripts/topN_test.sh +++ b/vimms/scripts/topN_test.sh @@ -4,25 +4,51 @@ in_mzml="/home/joewandy/data/BSA_100fmol__recon_1ul_1.mzML" at_least_one_point_above="1E4" source_dir="/home/joewandy/vimms/vimms/scripts/topN_timing_improvement_1E4" -# An array of charge range start and end -charge_range=( "2 6" ) - -# An array of min_averagine_scores -min_decon_scores=( "50" "100" "150" "160" "170" "180" "190" "200" "250" "300" "350" "400" "450" "500" "550" ) - -# Loop through each combination of charge range and min_averagine_scores -for range in "${charge_range[@]}"; do - IFS=' ' read -r -a tokens <<< "$range" - start=${tokens[0]} - end=${tokens[1]} - for score in "${min_decon_scores[@]}"; do - out_dir="topN_timing_improvement_${at_least_one_point_above}_${start}_${end}_${score}" +# Base directory for all output +base_out_dir="results" + +# Variables for charge range start and end +charge_range_start="2" +charge_range_end="6" + +# An array of min_fit_scores and penalty factors +min_fit_scores=( "20" "40" "60" "80" "100" "120" "140" "160" "180" "200" ) + +# An array of penalty factors +penalty_factors=( "0.25" "0.50" "1.0" "1.25" "1.50" "2.0" ) + +# Check if the parallel option is specified +if [ "$1" == "--parallel" ]; then + parallel=true +else + parallel=false +fi + +# Check if base directory exists, if not create it +if [ ! -d "$base_out_dir" ]; then + mkdir -p $base_out_dir +fi + +# Loop through each combination of min_fit_scores and penalty_factors +for score in "${min_fit_scores[@]}"; do + for penalty in "${penalty_factors[@]}"; do + out_dir="${base_out_dir}/topN_timing_improvement_${at_least_one_point_above}_${charge_range_start}_${charge_range_end}_${score}_${penalty}" # Check if directory exists, if not create it if [ ! -d "$out_dir" ]; then mkdir -p $out_dir # Copy contents of source directory to new directory cp -r $source_dir/* $out_dir/ fi - python topN_test.py --in_mzml $in_mzml --at_least_one_point_above $at_least_one_point_above --charge_range_start $start --charge_range_end $end --out_dir $out_dir --min_decon_score $score + # Run the script in the background if --parallel is specified + if [ "$parallel" = true ]; then + python topN_test.py --in_mzml $in_mzml --at_least_one_point_above $at_least_one_point_above --charge_range_start $charge_range_start --charge_range_end $charge_range_end --out_dir $out_dir --min_decon_score $score --penalty_factor $penalty & + else + python topN_test.py --in_mzml $in_mzml --at_least_one_point_above $at_least_one_point_above --charge_range_start $charge_range_start --charge_range_end $charge_range_end --out_dir $out_dir --min_decon_score $score --penalty_factor $penalty + fi done -done \ No newline at end of file +done + +# If --parallel is specified, wait for all background jobs to finish +if [ "$parallel" = true ]; then + wait +fi From a63e9c99872f1f990d7088b96e613da4e57c16c3 Mon Sep 17 00:00:00 2001 From: Joe Wandy Date: Fri, 7 Jul 2023 10:44:39 +0100 Subject: [PATCH 16/67] typo --- vimms/scripts/topN_test.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/vimms/scripts/topN_test.sh b/vimms/scripts/topN_test.sh index 01cfff3b..c036123c 100755 --- a/vimms/scripts/topN_test.sh +++ b/vimms/scripts/topN_test.sh @@ -41,9 +41,9 @@ for score in "${min_fit_scores[@]}"; do fi # Run the script in the background if --parallel is specified if [ "$parallel" = true ]; then - python topN_test.py --in_mzml $in_mzml --at_least_one_point_above $at_least_one_point_above --charge_range_start $charge_range_start --charge_range_end $charge_range_end --out_dir $out_dir --min_decon_score $score --penalty_factor $penalty & + python topN_test.py --in_mzml $in_mzml --at_least_one_point_above $at_least_one_point_above --charge_range_start $charge_range_start --charge_range_end $charge_range_end --out_dir $out_dir --min_fit_score $score --penalty_factor $penalty & else - python topN_test.py --in_mzml $in_mzml --at_least_one_point_above $at_least_one_point_above --charge_range_start $charge_range_start --charge_range_end $charge_range_end --out_dir $out_dir --min_decon_score $score --penalty_factor $penalty + python topN_test.py --in_mzml $in_mzml --at_least_one_point_above $at_least_one_point_above --charge_range_start $charge_range_start --charge_range_end $charge_range_end --out_dir $out_dir --min_fit_score $score --penalty_factor $penalty fi done done From 23aea4c78e763c8f65b16f84cd871dc8d23ccd37 Mon Sep 17 00:00:00 2001 From: Joe Wandy Date: Fri, 7 Jul 2023 10:54:21 +0100 Subject: [PATCH 17/67] Fixed parallel --- vimms/scripts/topN_test.py | 7 ++++--- vimms/scripts/topN_test.sh | 6 ++++++ 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/vimms/scripts/topN_test.py b/vimms/scripts/topN_test.py index f2794f05..717f9602 100644 --- a/vimms/scripts/topN_test.py +++ b/vimms/scripts/topN_test.py @@ -1,3 +1,4 @@ +import pprint import sys sys.path.append('..') @@ -62,8 +63,6 @@ def parse_args(): help='Penalty factor for ms_deconvolve.') parser.add_argument('--out_dir', type=str, default='topN_test', help='The directory where the output files will be stored.') - parser.add_argument('--pbar', type=bool, default=True, - help='If true, progress bar will be shown.') parser.add_argument('--in_mzml', type=str, default='BSA_100fmol__recon_1ul_1.mzML', help='The filename of the input mzML file.') parser.add_argument('--out_mzml', type=str, default='output.mzML', @@ -150,6 +149,8 @@ def count_stuff(input_file, min_rt, max_rt): def main(args): + pprint.pprint(vars(args)) + # check input and output paths assert os.path.isfile(args.in_mzml), 'Input mzML file %s is not found!' % args.in_mzml out_dir = os.path.abspath(args.out_dir) @@ -198,7 +199,7 @@ def run_simulation(args, dataset, st, out_dir): min_fit_score=min_fit_score, penalty_factor=penalty_factor) # create an environment to run both the mass spec and controller - env = Environment(mass_spec, controller, min_rt, max_rt, progress_bar=args.pbar) + env = Environment(mass_spec, controller, min_rt, max_rt, progress_bar=False) # set the log level to WARNING so we don't see too many messages when environment is running set_log_level_warning() diff --git a/vimms/scripts/topN_test.sh b/vimms/scripts/topN_test.sh index c036123c..afda7ece 100755 --- a/vimms/scripts/topN_test.sh +++ b/vimms/scripts/topN_test.sh @@ -30,6 +30,7 @@ if [ ! -d "$base_out_dir" ]; then fi # Loop through each combination of min_fit_scores and penalty_factors +job_count=0 for score in "${min_fit_scores[@]}"; do for penalty in "${penalty_factors[@]}"; do out_dir="${base_out_dir}/topN_timing_improvement_${at_least_one_point_above}_${charge_range_start}_${charge_range_end}_${score}_${penalty}" @@ -42,6 +43,11 @@ for score in "${min_fit_scores[@]}"; do # Run the script in the background if --parallel is specified if [ "$parallel" = true ]; then python topN_test.py --in_mzml $in_mzml --at_least_one_point_above $at_least_one_point_above --charge_range_start $charge_range_start --charge_range_end $charge_range_end --out_dir $out_dir --min_fit_score $score --penalty_factor $penalty & + ((job_count++)) + # If we've reached 10 jobs, wait for any job to complete + if (( job_count % 10 == 0 )); then + wait -n + fi else python topN_test.py --in_mzml $in_mzml --at_least_one_point_above $at_least_one_point_above --charge_range_start $charge_range_start --charge_range_end $charge_range_end --out_dir $out_dir --min_fit_score $score --penalty_factor $penalty fi From 81f7908f095e31e3baab3b97c844f539fbe289b5 Mon Sep 17 00:00:00 2001 From: Joe Wandy Date: Fri, 7 Jul 2023 11:02:19 +0100 Subject: [PATCH 18/67] more readable --- vimms/scripts/topN_test.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/vimms/scripts/topN_test.py b/vimms/scripts/topN_test.py index 717f9602..d3794bd7 100644 --- a/vimms/scripts/topN_test.py +++ b/vimms/scripts/topN_test.py @@ -1,4 +1,3 @@ -import pprint import sys sys.path.append('..') @@ -149,7 +148,7 @@ def count_stuff(input_file, min_rt, max_rt): def main(args): - pprint.pprint(vars(args)) + print('topN_test', vars(args)) # check input and output paths assert os.path.isfile(args.in_mzml), 'Input mzML file %s is not found!' % args.in_mzml From 1b71985ad1a64d857878dd29c7010004de8e57e6 Mon Sep 17 00:00:00 2001 From: Joe Wandy Date: Fri, 7 Jul 2023 15:52:42 +0100 Subject: [PATCH 19/67] More plots --- vimms/scripts/check_fragmented_ions.py | 150 ++++++++++++++++++++++++- vimms/scripts/scan_timings.py | 26 ++++- 2 files changed, 169 insertions(+), 7 deletions(-) diff --git a/vimms/scripts/check_fragmented_ions.py b/vimms/scripts/check_fragmented_ions.py index 61668dca..c5e771b7 100644 --- a/vimms/scripts/check_fragmented_ions.py +++ b/vimms/scripts/check_fragmented_ions.py @@ -13,8 +13,10 @@ def plot_num_ms2_scans(reference_block_deconvoluter, simulated_block_deconvoluter, labels, - s=3, alpha=1.0, lo=0, hi=int(1E6)): - list_of_block_deconvoluters = [reference_block_deconvoluter, simulated_block_deconvoluter] + s=3, alpha=1.0, lo=0, hi=int(1E6), out_file=None, show_plot=True): + list_of_block_deconvoluters = [reference_block_deconvoluter] + if simulated_block_deconvoluter is not None: + list_of_block_deconvoluters.append(simulated_block_deconvoluter) # Determine the layout of the subplots num_plots = len(list_of_block_deconvoluters) @@ -22,8 +24,11 @@ def plot_num_ms2_scans(reference_block_deconvoluter, simulated_block_deconvolute num_cols = int(np.ceil(num_plots / num_rows)) # Create the subplots - fig, axs = plt.subplots(num_rows, num_cols, figsize=(10, 6), sharex=True, sharey=True) - axs = axs.ravel() # Flatten the array of axes + fig, axs = plt.subplots(num_rows, num_cols, figsize=(20, 10), sharex=True, sharey=True) + try: + axs = axs.ravel() # Flatten the array of axes + except AttributeError: + axs = [axs] # Iterate over each list of blocks for i, (bd, label) in enumerate(zip(list_of_block_deconvoluters, labels)): @@ -52,8 +57,143 @@ def plot_num_ms2_scans(reference_block_deconvoluter, simulated_block_deconvolute # Adjust the layout plt.tight_layout() - plt.show() + if out_file is not None: + plt.savefig(out_file, dpi=300) + + if show_plot: + plt.show() + + +def plot_histograms(reference_block_deconvoluter, simulated_block_deconvoluter, labels, + bins=range(16), lo=0, hi=int(1E6), out_file=None, show_plot=True): + list_of_block_deconvoluters = [reference_block_deconvoluter] + if simulated_block_deconvoluter is not None: + list_of_block_deconvoluters.append(simulated_block_deconvoluter) + + # Determine the layout of the subplots + num_plots = len(list_of_block_deconvoluters) + num_rows = int(np.ceil(np.sqrt(num_plots))) + num_cols = int(np.ceil(num_plots / num_rows)) + + # Create the subplots + fig, axs = plt.subplots(num_rows, num_cols, figsize=(20, 10), sharex=True, sharey=True) + try: + axs = axs.ravel() # Flatten the array of axes + except AttributeError: + axs = [axs] + + # Iterate over each list of blocks + for i, (bd, label) in enumerate(zip(list_of_block_deconvoluters, labels)): + # Prepare an empty list for the y values of the plot + num_ms2_scans = [] + + for block_id, scans in bd.blocks: + if lo <= block_id <= hi: + ms2_scans = scans[1:] + num_ms2 = len(ms2_scans) + + # Append the value to the list + num_ms2_scans.append(num_ms2) + + sns.histplot(num_ms2_scans, bins=bins, ax=axs[i], kde=False) + axs[i].set_title(label) + + # Set the labels for the x and y axes + for ax in axs: + ax.set_xlabel('Number of MS2 Scans') + ax.set_ylabel('Frequency') + + # Adjust the layout + plt.tight_layout() + + if out_file is not None: + plt.savefig(out_file, dpi=300) + + if show_plot: + plt.show() + + +def extract_ms2_counts(block_deconvoluter, lo=0, hi=int(1E6)): + """Extract MS2 counts from blocks within specified range.""" + data = [] + for block_id, scans in block_deconvoluter.blocks: + if lo <= block_id <= hi: + ms2_scans = scans[1:] + num_ms2 = len(ms2_scans) + + # Append the value to the list + data.append(num_ms2) + + return np.array(data) # convert to numpy array here + + +def compare_histograms(reference_block_deconvoluter, simulated_block_deconvoluter, bins=range(16), + lo=0, hi=int(1E6)): + # Extract MS2 counts from the real and simulated data + real_data = extract_ms2_counts(reference_block_deconvoluter, lo, hi) + simulated_data = extract_ms2_counts(simulated_block_deconvoluter, lo, hi) + + # Compute histograms + real_hist, _ = np.histogram(real_data, bins=bins, density=True) + simulated_hist, _ = np.histogram(simulated_data, bins=bins, density=True) + + # Compute sum of absolute differences + sum_of_abs_diff = np.sum(np.abs(real_hist - simulated_hist)) + + return sum_of_abs_diff + + +def plot_heatmaps(rmse_ms1_array, rmse_ms2_array, sum_of_abs_diff_array, scores, penalty_factors, + out_file=None, show_plot=True): + # Convert the scores and penalty factors to strings for labeling + scores_str = [str(s) for s in scores] + penalty_factors_str = [str(pf) for pf in penalty_factors] + + # Create subplots + fig, axs = plt.subplots(1, 3, figsize=(18, 6)) + + # Create the first heatmap for rmse_ms1_array + img1 = axs[0].imshow(rmse_ms1_array, cmap='viridis', interpolation='none', aspect='auto') + fig.colorbar(img1, ax=axs[0], orientation='vertical') + axs[0].set_title('RMSE MS1') + axs[0].set_xticks(np.arange(len(penalty_factors))) + axs[0].set_yticks(np.arange(len(scores))) + axs[0].set_xticklabels(penalty_factors_str) + axs[0].set_yticklabels(scores_str) + axs[0].set_xlabel('Penalty Factor') + axs[0].set_ylabel('Score') + + # Create the second heatmap for rmse_ms2_array + img2 = axs[1].imshow(rmse_ms2_array, cmap='viridis', interpolation='none', aspect='auto') + fig.colorbar(img2, ax=axs[1], orientation='vertical') + axs[1].set_title('RMSE MS2') + axs[1].set_xticks(np.arange(len(penalty_factors))) + axs[1].set_yticks(np.arange(len(scores))) + axs[1].set_xticklabels(penalty_factors_str) + axs[1].set_yticklabels(scores_str) + axs[1].set_xlabel('Penalty Factor') + axs[1].set_ylabel('Score') + + # Create the third heatmap for sum_of_abs_diff_array + img3 = axs[2].imshow(sum_of_abs_diff_array, cmap='viridis', interpolation='none', aspect='auto') + fig.colorbar(img3, ax=axs[2], orientation='vertical') + axs[2].set_title('Sum of Abs Differences') + axs[2].set_xticks(np.arange(len(penalty_factors))) + axs[2].set_yticks(np.arange(len(scores))) + axs[2].set_xticklabels(penalty_factors_str) + axs[2].set_yticklabels(scores_str) + axs[2].set_xlabel('Penalty Factor') + axs[2].set_ylabel('Score') + + # Show the plots + plt.tight_layout() + + if out_file is not None: + plt.savefig(out_file, dpi=300) + + if show_plot: + plt.show() class BlockDeconvoluter: def __init__(self, mz_file, max_blocks=ALL_BLOCKS, discard_first=False): diff --git a/vimms/scripts/scan_timings.py b/vimms/scripts/scan_timings.py index a1c1e0a9..8ae9c056 100644 --- a/vimms/scripts/scan_timings.py +++ b/vimms/scripts/scan_timings.py @@ -11,6 +11,9 @@ import seaborn as sns from loguru import logger import pymzml +from scipy import interpolate +from sklearn.metrics import mean_squared_error + import pylab as plt from mass_spec_utils.data_import.mzml import MZMLFile @@ -198,7 +201,7 @@ def count_stuff(input_file, min_rt, max_rt): def plot_num_scans(real_cumsum_ms1, real_cumsum_ms2, simulated_cumsum_ms1, simulated_cumsum_ms2, - out_file=None): + out_file=None, show_plot=True): plt.figure(figsize=(10, 10)) plt.plot(real_cumsum_ms1[:, 0], real_cumsum_ms1[:, 1], 'r') plt.plot(real_cumsum_ms2[:, 0], real_cumsum_ms2[:, 1], 'b') @@ -214,7 +217,26 @@ def plot_num_scans(real_cumsum_ms1, real_cumsum_ms2, simulated_cumsum_ms1, simul if out_file is not None: plt.savefig(out_file, dpi=300) - plt.show() + if show_plot: + plt.show() + +def compute_similarity(real_cumsum, simulated_cumsum): + # Interpolate to a common grid + common_grid = np.linspace(0, 7900, 1000) # you can adjust the number of points + + # Create the interpolation functions + real_interpolator = interpolate.interp1d(real_cumsum[:, 0], real_cumsum[:, 1], fill_value="extrapolate") + simulated_interpolator = interpolate.interp1d(simulated_cumsum[:, 0], simulated_cumsum[:, 1], fill_value="extrapolate") + + # Interpolate the data + real_interpolated = real_interpolator(common_grid) + simulated_interpolated = simulated_interpolator(common_grid) + + # Compute the mean squared error + mse = mean_squared_error(real_interpolated, simulated_interpolated) + + return mse + def main(): args = parse_args() From 573ab84419d2535ee2a8c462647c1075343e243c Mon Sep 17 00:00:00 2001 From: Joe Wandy Date: Fri, 7 Jul 2023 16:25:29 +0100 Subject: [PATCH 20/67] Close figures --- vimms/scripts/check_fragmented_ions.py | 4 ++++ vimms/scripts/scan_timings.py | 2 ++ 2 files changed, 6 insertions(+) diff --git a/vimms/scripts/check_fragmented_ions.py b/vimms/scripts/check_fragmented_ions.py index c5e771b7..0f205d06 100644 --- a/vimms/scripts/check_fragmented_ions.py +++ b/vimms/scripts/check_fragmented_ions.py @@ -64,6 +64,8 @@ def plot_num_ms2_scans(reference_block_deconvoluter, simulated_block_deconvolute if show_plot: plt.show() + plt.close() + def plot_histograms(reference_block_deconvoluter, simulated_block_deconvoluter, labels, bins=range(16), lo=0, hi=int(1E6), out_file=None, show_plot=True): @@ -113,6 +115,8 @@ def plot_histograms(reference_block_deconvoluter, simulated_block_deconvoluter, if show_plot: plt.show() + plt.close() + def extract_ms2_counts(block_deconvoluter, lo=0, hi=int(1E6)): """Extract MS2 counts from blocks within specified range.""" diff --git a/vimms/scripts/scan_timings.py b/vimms/scripts/scan_timings.py index 8ae9c056..8c7deb1d 100644 --- a/vimms/scripts/scan_timings.py +++ b/vimms/scripts/scan_timings.py @@ -220,6 +220,8 @@ def plot_num_scans(real_cumsum_ms1, real_cumsum_ms2, simulated_cumsum_ms1, simul if show_plot: plt.show() + plt.close() + def compute_similarity(real_cumsum, simulated_cumsum): # Interpolate to a common grid common_grid = np.linspace(0, 7900, 1000) # you can adjust the number of points From 2d9d57be6d3032010a55c929fb29ccda76d9caf8 Mon Sep 17 00:00:00 2001 From: Joe Wandy Date: Fri, 7 Jul 2023 22:08:07 +0100 Subject: [PATCH 21/67] Script updates --- .../{topN_test.sh => topN_test_bsa.sh} | 2 +- vimms/scripts/topN_test_hela.sh | 60 +++++++++++++++++++ 2 files changed, 61 insertions(+), 1 deletion(-) rename vimms/scripts/{topN_test.sh => topN_test_bsa.sh} (96%) create mode 100755 vimms/scripts/topN_test_hela.sh diff --git a/vimms/scripts/topN_test.sh b/vimms/scripts/topN_test_bsa.sh similarity index 96% rename from vimms/scripts/topN_test.sh rename to vimms/scripts/topN_test_bsa.sh index afda7ece..53438896 100755 --- a/vimms/scripts/topN_test.sh +++ b/vimms/scripts/topN_test_bsa.sh @@ -15,7 +15,7 @@ charge_range_end="6" min_fit_scores=( "20" "40" "60" "80" "100" "120" "140" "160" "180" "200" ) # An array of penalty factors -penalty_factors=( "0.25" "0.50" "1.0" "1.25" "1.50" "2.0" ) +penalty_factors=( "0.25" "0.50" "0.75" "1.0" "1.25" "1.50" "1.75" "2.0" ) # Check if the parallel option is specified if [ "$1" == "--parallel" ]; then diff --git a/vimms/scripts/topN_test_hela.sh b/vimms/scripts/topN_test_hela.sh new file mode 100755 index 00000000..71912bea --- /dev/null +++ b/vimms/scripts/topN_test_hela.sh @@ -0,0 +1,60 @@ +#!/bin/bash + +in_mzml="/home/joewandy/data/HELA_20ng_1ul__sol_3.mzML" +at_least_one_point_above="1E4" +source_dir="/home/joewandy/vimms/vimms/scripts/hela_1E4" + +# Base directory for all output +base_out_dir="hela_results" + +# Variables for charge range start and end +charge_range_start="2" +charge_range_end="6" + +# An array of min_fit_scores and penalty factors +min_fit_scores=( "20" "40" "60" "80" "100" "120" "140" "160" "180" "200" ) + +# An array of penalty factors +penalty_factors=( "0.25" "0.50" "0.75" "1.0" "1.25" "1.50" "1.75" "2.0" ) + +# Check if the parallel option is specified +if [ "$1" == "--parallel" ]; then + parallel=true +else + parallel=false +fi + +# Check if base directory exists, if not create it +if [ ! -d "$base_out_dir" ]; then + mkdir -p $base_out_dir +fi + +# Loop through each combination of min_fit_scores and penalty_factors +job_count=0 +for score in "${min_fit_scores[@]}"; do + for penalty in "${penalty_factors[@]}"; do + out_dir="${base_out_dir}/hela_${at_least_one_point_above}_${charge_range_start}_${charge_range_end}_${score}_${penalty}" + # Check if directory exists, if not create it + if [ ! -d "$out_dir" ]; then + mkdir -p $out_dir + # Copy contents of source directory to new directory + cp -r $source_dir/* $out_dir/ + fi + # Run the script in the background if --parallel is specified + if [ "$parallel" = true ]; then + python topN_test.py --in_mzml $in_mzml --at_least_one_point_above $at_least_one_point_above --charge_range_start $charge_range_start --charge_range_end $charge_range_end --out_dir $out_dir --min_fit_score $score --penalty_factor $penalty & + ((job_count++)) + # If we've reached 10 jobs, wait for any job to complete + if (( job_count % 10 == 0 )); then + wait -n + fi + else + python topN_test.py --in_mzml $in_mzml --at_least_one_point_above $at_least_one_point_above --charge_range_start $charge_range_start --charge_range_end $charge_range_end --out_dir $out_dir --min_fit_score $score --penalty_factor $penalty + fi + done +done + +# If --parallel is specified, wait for all background jobs to finish +if [ "$parallel" = true ]; then + wait +fi From f1ea9de5363cc3baded75d26ad545e5b972e950e Mon Sep 17 00:00:00 2001 From: Joe Wandy Date: Fri, 21 Jul 2023 13:24:05 +0100 Subject: [PATCH 22/67] Fixed deprecation warning --- vimms/BoxVisualise.py | 10 +++++----- vimms/Evaluation.py | 2 +- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/vimms/BoxVisualise.py b/vimms/BoxVisualise.py index 01a5a532..089258e4 100644 --- a/vimms/BoxVisualise.py +++ b/vimms/BoxVisualise.py @@ -249,8 +249,8 @@ class PlotPoints(): def __init__(self, ms1_points, ms2s=None, markers={}): self.ms1_points = np.array(ms1_points) self.ms2s = np.array(ms2s) if not ms2s is None else np.zeros((0, 3)) - self.active_ms1 = np.ones((len(self.ms1_points)), dtype=np.bool) - self.active_ms2 = np.ones((len(self.ms2s)), dtype=np.bool) + self.active_ms1 = np.ones((len(self.ms1_points)), dtype=bool) + self.active_ms2 = np.ones((len(self.ms2s)), dtype=bool) self.markers = markers @classmethod @@ -274,7 +274,7 @@ def from_mzml(cls, mzml): return cls(np.array(ms1_points), ms2s=np.array(ms2s)) def bound_points(self, pts, min_rt=None, max_rt=None, min_mz=None, max_mz=None): - all_true = np.array(np.ones_like(pts[:, 0]), dtype=np.bool) + all_true = np.array(np.ones_like(pts[:, 0]), dtype=bool) select_rt = ( (all_true if (min_rt is None) else (pts[:, 0] >= min_rt)) & (all_true if (max_rt is None) else (pts[:, 0] <= max_rt)) @@ -293,7 +293,7 @@ def get_points_in_bounds(self, min_rt=None, max_rt=None, min_mz=None, max_mz=Non max_rt=max_rt, min_mz=min_mz, max_mz=max_mz - ) if len(self.ms1_points) > 0 else np.ones((0), dtype=np.bool) + ) if len(self.ms1_points) > 0 else np.ones((0), dtype=bool) active_ms2 = self.bound_points( self.ms2s, @@ -301,7 +301,7 @@ def get_points_in_bounds(self, min_rt=None, max_rt=None, min_mz=None, max_mz=Non max_rt=max_rt, min_mz=min_mz, max_mz=max_mz - ) if len(self.ms2s) > 0 else np.ones((0), dtype=np.bool) + ) if len(self.ms2s) > 0 else np.ones((0), dtype=bool) return active_ms1, active_ms2 diff --git a/vimms/Evaluation.py b/vimms/Evaluation.py index eafb62a6..079f7d85 100644 --- a/vimms/Evaluation.py +++ b/vimms/Evaluation.py @@ -182,7 +182,7 @@ def evaluation_report(self, min_intensity=None): raw_intensities = self.chem_info[:, self.MAX_FRAG_INTENSITY, :].T coverage_intensities = raw_intensities * (raw_intensities >= min_intensity) - coverage = np.array(coverage_intensities, dtype=np.bool) + coverage = np.array(coverage_intensities, dtype=bool) times_fragmented = np.sum(frag_counts, axis=0) times_fragmented_summary = { From 28ae577f92978c98b344cde7edbf3eae6d65bdac Mon Sep 17 00:00:00 2001 From: Joe Wandy Date: Fri, 21 Jul 2023 13:24:30 +0100 Subject: [PATCH 23/67] OpenMS single-file evaluation --- batch_files/FeatureFinderCentroided.ini | 65 ++++++++++++++ vimms/Evaluation.py | 110 ++++++++++++++++-------- vimms/scripts/evaluation_openms.py | 103 ++++++++++++++++++++++ 3 files changed, 241 insertions(+), 37 deletions(-) create mode 100644 batch_files/FeatureFinderCentroided.ini create mode 100644 vimms/scripts/evaluation_openms.py diff --git a/batch_files/FeatureFinderCentroided.ini b/batch_files/FeatureFinderCentroided.ini new file mode 100644 index 00000000..020284f6 --- /dev/null +++ b/batch_files/FeatureFinderCentroided.ini @@ -0,0 +1,65 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/vimms/Evaluation.py b/vimms/Evaluation.py index 079f7d85..45cafb69 100644 --- a/vimms/Evaluation.py +++ b/vimms/Evaluation.py @@ -76,7 +76,7 @@ def pick_aligned_peaks(input_files, mzmine_exe, force=False): pathlib.Path(output_dir).mkdir(parents=True, exist_ok=True) - input_files = list(set(input_files)) #filter duplicates + input_files = list(set(input_files)) # filter duplicates if (len(output_name.split(".")) > 1): output_name = "".join(output_name.split(".")[:-1]) output_path = os.path.join(output_dir, f"{output_name}_aligned.csv") @@ -122,27 +122,27 @@ def pick_aligned_peaks(input_files, def check_files_match_mzmine(fullscan_names, aligned_path, mode="subset"): fs_names = {os.path.basename(fs) for fs in fullscan_names} mzmine_names = set() - + with open(aligned_path, "r") as f: headers = f.readline().split(",") pattern = re.compile(r"(.*\.mzML).*") - + for h in headers: for fs in fs_names: m = pattern.match(h) - if(not m is None): + if (not m is None): mzmine_names.add(m.group(1)) - + mode = mode.lower() - if(mode == "exact"): + if (mode == "exact"): passed = not fs_names ^ mzmine_names - elif(mode == "subset"): + elif (mode == "subset"): passed = not fs_names - mzmine_names else: raise ValueError("Mode not recognised") - + return passed, fs_names, mzmine_names - + class Evaluator(metaclass=ABCMeta): TIMES_FRAGMENTED = 0 @@ -169,12 +169,12 @@ def extra_info(self, report): pass def evaluation_report(self, min_intensity=None): - if(min_intensity is None): + if (min_intensity is None): min_intensity = self.report_min_intensity - - if(not self.report is None and math.isclose(min_intensity, self.report_min_intensity)): + + if (not self.report is None and math.isclose(min_intensity, self.report_min_intensity)): return self.report - + chem_appears = np.any(self.chem_info[:, self.MAX_INTENSITY, :] > min_intensity, axis=1) frag_counts = self.chem_info[:, self.TIMES_FRAGMENTED, :].T @@ -186,11 +186,11 @@ def evaluation_report(self, min_intensity=None): times_fragmented = np.sum(frag_counts, axis=0) times_fragmented_summary = { - int(k) : int(v) for k, v in zip(*np.unique(times_fragmented, return_counts=True)) + int(k): int(v) for k, v in zip(*np.unique(times_fragmented, return_counts=True)) } times_covered = np.sum(coverage, axis=0) times_covered_summary = { - int(k) : int(v) for k, v in zip(*np.unique(times_covered, return_counts=True)) + int(k): int(v) for k, v in zip(*np.unique(times_covered, return_counts=True)) } cumulative_coverage = np.logical_or.accumulate(coverage, axis=0) @@ -205,7 +205,7 @@ def evaluation_report(self, min_intensity=None): max_coverage_intensities = np.amax(max_possible_intensities, axis=0) which_obtainable = max_coverage_intensities >= min_intensity max_obtainable = max_coverage_intensities[np.newaxis, which_obtainable] - + coverage_intensity_prop = np.mean( coverage_intensities[:, which_obtainable] / max_obtainable, axis=1 @@ -248,7 +248,7 @@ def evaluation_report(self, min_intensity=None): "cumulative_raw_intensity_proportion": cumulative_raw_intensities_prop.tolist(), "cumulative_coverage_proportion": cumulative_coverage_prop.tolist(), "cumulative_intensity_proportion": cumulative_coverage_intensities_prop.tolist(), - "cumulative_covered_intensities_proportion": + "cumulative_covered_intensities_proportion": cumulative_covered_intensities_prop.tolist() } @@ -272,48 +272,49 @@ def summarise(self, min_intensity=None): } return "\n".join(f"{name}: {report[key]}" for name, key in fields.items()) - + def report_to_json(self, filepath, min_intensity=None): np_fields = [ - "coverage", - "raw_intensity", - "intensity", + "coverage", + "raw_intensity", + "intensity", "max_possible_intensity", "times_fragmented", "times_covered" ] - + report = copy.copy(self.evaluation_report(min_intensity=min_intensity)) - + for k in np_fields: report[k] = report[k].tolist() - + with open(filepath, "w") as f: json.dump([report, self.report_min_intensity], f) - + @classmethod def from_report_json(cls, filepath): np_fields = [ - "coverage", - "raw_intensity", - "intensity", + "coverage", + "raw_intensity", + "intensity", "max_possible_intensity", "times_fragmented", "times_covered" ] - + with open(filepath, "r") as f: eva = cls() eva.report, eva.report_min_intensity = json.load(f) - + for k in np_fields: eva.report[k] = np.array(eva.report[k]) - + for k in ["times_fragmented_summary", "times_covered_summary"]: - eva.report[k] = {int(k) : int(v) for k, v in eva.report[k].items()} - + eva.report[k] = {int(k): int(v) for k, v in eva.report[k].items()} + return eva + class SyntheticEvaluator(Evaluator): def __init__(self, chems=[]): @@ -380,7 +381,7 @@ def __init__(self, chems=[]): self.mzmls = [] self.geoms = [] self.all_fullscan_peaks = [] - self.box_to_fullscan_peaks = {} # generated after parsing MS-DIAL results + self.box_to_fullscan_peaks = {} # generated after parsing MS-DIAL results self.box_to_frag_spectra = defaultdict(list) @classmethod @@ -527,7 +528,7 @@ def from_aligned_msdial(cls, aligned_file, sample_col_name, matching_mz_tol=10): if found: chems.append(chem_row) else: - unmatched += 1 # FIXME: shouldn't happen?! + unmatched += 1 # FIXME: shouldn't happen?! if unmatched > 0: logger.debug('Unable to match %d rows from aligned df!') @@ -539,6 +540,41 @@ def from_aligned_msdial(cls, aligned_file, sample_col_name, matching_mz_tol=10): eva.all_fullscan_peaks = all_peaks return eva + import pandas as pd + + @classmethod + def from_unaligned_openms(cls, openms_file, min_box_ppm=10): + """ + Load unaligned results from OpenMS for evaluation + Args: + openms_file: the unaligned OpenMS CSV file + + Returns: an instance of this Evaluator + """ + # Read the file with pandas + df = pd.read_csv(openms_file, sep=',') + + chems = [] + # Iterate over rows in the DataFrame + for _, row in df.iterrows(): + mz = row['mz'] + rt_start = row['rt_start'] + rt_end = row['rt_end'] + + box = GenericBox( + rt_start, + rt_end, + mz - 0.001, + mz + 0.001 + ).apply_min_box_ppm(ywidth=min_box_ppm) + + chems.append([box]) + + eva = cls(chems) + eva.fullscan_names = ["Dummy"] + eva.geoms = [None] + return eva + def add_info(self, fullscan_name, mzmls, isolation_width=None, max_error=10): self.report, self.report_min_intensity = None, 0.0 if ("." in fullscan_name): fullscan_name = ".".join(fullscan_name.split(".")[:-1]) @@ -603,7 +639,7 @@ def add_info(self, fullscan_name, mzmls, isolation_width=None, max_error=10): new_info[ch_idx, self.MAX_FRAG_INTENSITY, mzml_idx] = best_intensity spectrum_id = 'peak_%.6f' % mz - metadata = { 'best_intensity_at_frag': best_intensity } + metadata = {'best_intensity_at_frag': best_intensity} new_spectrum = SpectralRecord(mz, s.peaks, metadata, fullscan_name, spectrum_id) self.box_to_frag_spectra[b].append(new_spectrum) @@ -623,7 +659,7 @@ def add_info(self, fullscan_name, mzmls, isolation_width=None, max_error=10): new_info[ch_idx, self.MAX_FRAG_INTENSITY, mzml_idx] = best_intensity spectrum_id = 'peak_%.6f' % mz - metadata = { 'best_intensity_at_frag': best_intensity } + metadata = {'best_intensity_at_frag': best_intensity} new_spectrum = SpectralRecord(mz, s.peaks, metadata, fullscan_name, spectrum_id) self.box_to_frag_spectra[b].append(new_spectrum) diff --git a/vimms/scripts/evaluation_openms.py b/vimms/scripts/evaluation_openms.py new file mode 100644 index 00000000..d74c63cd --- /dev/null +++ b/vimms/scripts/evaluation_openms.py @@ -0,0 +1,103 @@ +import sys + +sys.path.append('..') +sys.path.append('../..') # if running in this folder + +import argparse +import os +import shutil +import subprocess + +from loguru import logger + +from vimms.Evaluation import RealEvaluator + +DEFAULT_OPENMS_DIR = "/Applications/OpenMS-2.8.0/bin" +DEFAULT_INI_FILE = "../../batch_files/FeatureFinderCentroided.ini" + + +def get_peak_picked_csv(seed_file): + base_name = os.path.basename(seed_file) + seed_picked_peaks = os.path.splitext(base_name)[0] + '_openms.csv' + seed_dir = os.path.split(seed_file)[0] + seed_picked_peaks_csv = os.path.join(seed_dir, seed_picked_peaks) + return seed_picked_peaks_csv + + +def remove_lines(filename): + with open(filename, 'r') as file: + lines = file.readlines() + lines_to_remove = [1, 2, 3, 5] + filtered_lines = [line for i, line in enumerate(lines) if i + 1 not in lines_to_remove] + with open(filename, 'w') as file: + file.writelines(filtered_lines) + + +def pick_peaks_openms(seed_file, openms_dir, ini_file=None): + if ini_file is None: + ini_file = DEFAULT_INI_FILE + logger.info(f'Using default ini file {ini_file}') + + seed_picked_peaks_csv = get_peak_picked_csv(seed_file) + temp_dir = "temp" + os.makedirs(temp_dir, exist_ok=True) + + temp_feature_featureXML = os.path.join(temp_dir, "temp_feature.featureXML") + + subprocess.run( + [f"{openms_dir}/FeatureFinderCentroided", "-ini", ini_file, "-in", seed_file, "-out", temp_feature_featureXML]) + subprocess.run([f"{openms_dir}/TextExporter", "-in", temp_feature_featureXML, "-out", seed_picked_peaks_csv]) + + remove_lines(seed_picked_peaks_csv) + shutil.rmtree(temp_dir) + + +def extract_boxes(seed_file, openms_dir=None, ini_file=None): + seed_picked_peaks_csv = get_peak_picked_csv(seed_file) + logger.info(f'Peak picking using openms, results will be in {seed_picked_peaks_csv}') + + # Check if the file already exists + if os.path.isfile(seed_picked_peaks_csv): + logger.info(f'{seed_picked_peaks_csv} already exists, skipping peak picking.') + return seed_picked_peaks_csv + + if openms_dir is None: + openms_dir = DEFAULT_OPENMS_DIR + pick_peaks_openms(seed_file, openms_dir, ini_file) + + return seed_picked_peaks_csv + + +def evaluate_fragmentation(peaklist_file, mzml_file, isolation_width): + """ + Evaluate boxes against fragmentation spectra using the `RealEvaluator` class. + Args: + peaklist_file: Path to peak-picked CSV file containing boxes. + Can be produced by OpenMS + mzml_file: the path to fragmentation mzML + isolation_width: isolation width + + Returns: a RealEvaluator object. + """ + eva = RealEvaluator.from_unaligned_openms(peaklist_file) + + fullscan_name = 'Dummy' + mzmls = [mzml_file] + eva.add_info(fullscan_name, mzmls, isolation_width=isolation_width) + return eva + + +if __name__ == '__main__': + parser = argparse.ArgumentParser(description='Extract boxes using ViMMS') + parser.add_argument('seed_file', type=str) + parser.add_argument('mzml_file', type=str, help="Path to the mzML file.") + parser.add_argument('--openms_dir', type=str, default=None) + parser.add_argument('--openms_ini_file', type=str, default=None) + parser.add_argument('--isolation_width', type=float, default=0.7, help="Isolation width for fragmentation.") + args = parser.parse_args() + + csv_file = extract_boxes(args.seed_file, args.openms_dir, args.openms_ini_file) + + logger.info(f'Now processing fragmentation file {args.mzml_file}') + eva = evaluate_fragmentation(csv_file, args.mzml_file, args.isolation_width) + print(eva.summarise()) From c37a4cb05a0155a3d9e21fec0e05fca96e09cce5 Mon Sep 17 00:00:00 2001 From: Joe Wandy Date: Fri, 21 Jul 2023 15:41:11 +0100 Subject: [PATCH 24/67] Adjusted default parameters --- .../scripts/{evaluation_openms.py => openms_evaluate.py} | 0 vimms/scripts/topN_test.py | 8 ++++---- 2 files changed, 4 insertions(+), 4 deletions(-) rename vimms/scripts/{evaluation_openms.py => openms_evaluate.py} (100%) diff --git a/vimms/scripts/evaluation_openms.py b/vimms/scripts/openms_evaluate.py similarity index 100% rename from vimms/scripts/evaluation_openms.py rename to vimms/scripts/openms_evaluate.py diff --git a/vimms/scripts/topN_test.py b/vimms/scripts/topN_test.py index d3794bd7..6135596d 100644 --- a/vimms/scripts/topN_test.py +++ b/vimms/scripts/topN_test.py @@ -28,11 +28,11 @@ def parse_args(): help='The minimum intensity value for ROI extraction.') parser.add_argument('--min_rt', type=int, default=0, help='The minimum retention time for Top-N.') - parser.add_argument('--max_rt', type=int, default=7700, + parser.add_argument('--max_rt', type=int, default=7200, help='The maximum retention time for Top-N.') parser.add_argument('--num_bins', type=int, default=20, help='The number of bins to sample scan durations from.') - parser.add_argument('--isolation_window', type=int, default=1, + parser.add_argument('--isolation_window', type=int, default=0.7, help='The isolation window for Top-N.') parser.add_argument('--N', type=int, default=15, help='The Top N value.') @@ -56,9 +56,9 @@ def parse_args(): help='The start of the charge range for filtering.') parser.add_argument('--charge_range_end', type=int, default=6, help='The end of the charge range for filtering.') - parser.add_argument('--min_fit_score', type=int, default=160, + parser.add_argument('--min_fit_score', type=int, default=80, help='The minimum fit score from ms_deconvolve.') - parser.add_argument('--penalty_factor', type=float, default=1.0, + parser.add_argument('--penalty_factor', type=float, default=1.5, help='Penalty factor for ms_deconvolve.') parser.add_argument('--out_dir', type=str, default='topN_test', help='The directory where the output files will be stored.') From fc2a48d4de71443812badea63d36b76bd752e806 Mon Sep 17 00:00:00 2001 From: Joe Wandy Date: Fri, 21 Jul 2023 15:41:25 +0100 Subject: [PATCH 25/67] Initial TopN grid search script --- vimms/scripts/openms_optimise.py | 255 +++++++++++++++++++++++++++++++ 1 file changed, 255 insertions(+) create mode 100644 vimms/scripts/openms_optimise.py diff --git a/vimms/scripts/openms_optimise.py b/vimms/scripts/openms_optimise.py new file mode 100644 index 00000000..801f9e8f --- /dev/null +++ b/vimms/scripts/openms_optimise.py @@ -0,0 +1,255 @@ +import os +import sys + +sys.path.append('..') +sys.path.append('../..') # if running in this folder + +import argparse + +import numpy as np +import pylab as plt +from loguru import logger + +from vimms.MassSpec import IndependentMassSpectrometer +from vimms.Controller import TopNController, AdvancedParams +from vimms.Environment import Environment +from vimms.Common import POSITIVE, create_if_not_exist, \ + set_log_level_warning, set_log_level_debug, save_obj +from vimms.scripts.openms_evaluate import extract_boxes, evaluate_fragmentation +from vimms.scripts.topN_test import get_input_filenames, extract_chems, extract_scan_timing + + +class TopNParameters: + def __init__(self): + # The minimum retention time for Top-N. + self.MIN_RT = 0 + # The maximum retention time for Top-N. + self.MAX_RT = 7200 + # The isolation window for Top-N. + self.ISOLATION_WINDOW = 0.7 + # The Top N value. + self.N = 15 + # The retention time tolerance for Top-N. + self.RT_TOL = 30 + # The mass to charge ratio tolerance for Top-N. + self.MZ_TOL = 10 + # The minimum MS1 intensity for Top-N. + self.MIN_MS1_INTENSITY = 5000 + # The start of the default MS1 scan window. + self.DEFAULT_MS1_SCAN_WINDOW_START = 310.0 + # The end of the default MS1 scan window. + self.DEFAULT_MS1_SCAN_WINDOW_END = 2000.0 + # The number of times to exclude after in DEW parameters. + self.EXCLUDE_AFTER_N_TIMES = 2 + # The exclude t0 value in DEW parameters. + self.EXCLUDE_T0 = 15 + # Whether to perform deisotoping or not. + self.DEISOTOPE = True + # The start of the charge range for filtering. + self.CHARGE_RANGE_START = 2 + # The end of the charge range for filtering. + self.CHARGE_RANGE_END = 6 + # The minimum fit score from ms_deconvolve. + self.MIN_FIT_SCORE = 80 + # Penalty factor for ms_deconvolve. + self.PENALTY_FACTOR = 1.5 + + +class TopNParametersBuilder: + def __init__(self): + self.topNParameters = TopNParameters() + + def set_MIN_RT(self, value): + self.topNParameters.MIN_RT = value + return self + + def set_MAX_RT(self, value): + self.topNParameters.MAX_RT = value + return self + + def set_ISOLATION_WINDOW(self, value): + self.topNParameters.ISOLATION_WINDOW = value + return self + + def set_N(self, value): + self.topNParameters.N = value + return self + + def set_RT_TOL(self, value): + self.topNParameters.RT_TOL = value + return self + + def set_MZ_TOL(self, value): + self.topNParameters.MZ_TOL = value + return self + + def set_MIN_MS1_INTENSITY(self, value): + self.topNParameters.MIN_MS1_INTENSITY = value + return self + + def set_DEFAULT_MS1_SCAN_WINDOW_START(self, value): + self.topNParameters.DEFAULT_MS1_SCAN_WINDOW_START = value + return self + + def set_DEFAULT_MS1_SCAN_WINDOW_END(self, value): + self.topNParameters.DEFAULT_MS1_SCAN_WINDOW_END = value + return self + + def set_EXCLUDE_AFTER_N_TIMES(self, value): + self.topNParameters.EXCLUDE_AFTER_N_TIMES = value + return self + + def set_EXCLUDE_T0(self, value): + self.topNParameters.EXCLUDE_T0 = value + return self + + def set_DEISOTOPE(self, value): + self.topNParameters.DEISOTOPE = value + return self + + def set_CHARGE_RANGE_START(self, value): + self.topNParameters.CHARGE_RANGE_START = value + return self + + def set_CHARGE_RANGE_END(self, value): + self.topNParameters.CHARGE_RANGE_END = value + return self + + def set_MIN_FIT_SCORE(self, value): + self.topNParameters.MIN_FIT_SCORE = value + return self + + def set_PENALTY_FACTOR(self, value): + self.topNParameters.PENALTY_FACTOR = value + return self + + def build(self): + return self.topNParameters + + +def run_simulation(args, dataset, st, out_dir, out_file, pbar=False): + # Top-N parameters + rt_range = [(args.MIN_RT, args.MAX_RT)] + min_rt = rt_range[0][0] + max_rt = rt_range[0][1] + isolation_window = args.ISOLATION_WINDOW + N = args.N + rt_tol = args.RT_TOL + mz_tol = args.MZ_TOL + min_ms1_intensity = args.MIN_MS1_INTENSITY + min_fit_score = args.MIN_FIT_SCORE + penalty_factor = args.PENALTY_FACTOR + default_ms1_scan_window = ( + args.DEFAULT_MS1_SCAN_WINDOW_START, args.DEFAULT_MS1_SCAN_WINDOW_END) + + # DEW, isotope and charge filtering parameters + exclude_after_n_times = args.EXCLUDE_AFTER_N_TIMES + exclude_t0 = args.EXCLUDE_T0 + deisotope = args.DEISOTOPE + charge_range = (args.CHARGE_RANGE_START, args.CHARGE_RANGE_END) + + # create controller and mass spec objects + params = AdvancedParams(default_ms1_scan_window=default_ms1_scan_window) + mass_spec = IndependentMassSpectrometer(POSITIVE, dataset, scan_duration=st) + controller = TopNController( + POSITIVE, N, isolation_window, mz_tol, rt_tol, min_ms1_intensity, + advanced_params=params, exclude_after_n_times=exclude_after_n_times, + exclude_t0=exclude_t0, deisotope=deisotope, charge_range=charge_range, + min_fit_score=min_fit_score, penalty_factor=penalty_factor) + + # create an environment to run both the mass spec and controller + env = Environment(mass_spec, controller, min_rt, max_rt, progress_bar=pbar) + + # set the log level to WARNING so we don't see too many messages when environment is running + set_log_level_warning() + + # run the simulation + env.run() + set_log_level_debug() + env.write_mzML(out_dir, out_file) + + +def plot_heatmaps(coverage_array, intensity_array, out_dir): + fig, axs = plt.subplots(2, 1, figsize=(10, 10)) + + cax1 = axs[0].imshow(coverage_array, cmap='hot', interpolation='nearest') + axs[0].set_title('Coverage Proportion') + fig.colorbar(cax1, ax=axs[0]) + + cax2 = axs[1].imshow(intensity_array, cmap='hot', interpolation='nearest') + axs[1].set_title('Intensity Proportion') + fig.colorbar(cax2, ax=axs[1]) + + # Save the figure + fig.savefig(os.path.join(out_dir, 'heatmap.png'), dpi=300) + + +if __name__ == '__main__': + parser = argparse.ArgumentParser(description='Optimise controllers on proteomics data using ViMMS') + parser.add_argument('seed_file', type=str) + parser.add_argument('--method', type=str, default='topN') + + parser.add_argument('--at_least_one_point_above', type=float, default=1E5, + help='The minimum intensity value for ROI extraction.') + parser.add_argument('--num_bins', type=int, default=20, + help='The number of bins to sample scan durations from.') + + parser.add_argument('--out_dir', type=str, default='topN_optimise', + help='The directory where the output files will be stored.') + parser.add_argument('--openms_dir', type=str, default=None) + parser.add_argument('--openms_ini_file', type=str, default=None) + parser.add_argument('--isolation_width', type=float, default=0.7, help="Isolation width for fragmentation.") + args = parser.parse_args() + + csv_file = extract_boxes(args.seed_file, args.openms_dir, args.openms_ini_file) + + # check input and output paths + assert os.path.isfile(args.seed_file), 'Input mzML file %s is not found!' % args.seed_file + out_dir = os.path.abspath(args.out_dir) + create_if_not_exist(out_dir) + + # Format output file names + chem_file, st_file = get_input_filenames(args.at_least_one_point_above, out_dir) + + # extract chems and scan timing from mzml file + dataset = extract_chems(args.seed_file, chem_file, args.at_least_one_point_above) + st = extract_scan_timing(args.seed_file, st_file, args.num_bins) + + N_values = [5, 10, 15, 20, 25, 30] + RT_TOL_values = [5, 10, 15, 30, 60, 120, 180, 240, 300] + pbar = True + + results = {} + coverage_array = np.zeros((len(N_values), len(RT_TOL_values))) + intensity_array = np.zeros((len(N_values), len(RT_TOL_values))) + + for i, n in enumerate(N_values): + for j, rt_tol in enumerate(RT_TOL_values): + params = (TopNParametersBuilder() + .set_N(n) + .set_RT_TOL(rt_tol) + .build()) + + # your simulation code here... + out_file = f'topN_N_{params.N}_DEW_{params.RT_TOL}.mzML' + run_simulation(params, dataset, st, out_dir, out_file, pbar) + + mzml_file = os.path.join(out_dir, out_file) + logger.info(f'Now processing fragmentation file {mzml_file}') + eva = evaluate_fragmentation(csv_file, mzml_file, args.isolation_width) + report = eva.evaluation_report() + + key = (n, rt_tol) + results[key] = report + print(key, eva.summarise()) + + coverage_prop = report['cumulative_coverage_proportion'] + intensity_prop = report['cumulative_intensity_proportion'] + coverage_array[i, j] = coverage_prop + intensity_array[i, j] = intensity_prop + + save_obj(results, os.path.join(out_dir, 'topN_optimise_results.p')) + save_obj(coverage_array, os.path.join(out_dir, 'topN_coverage_array.p')) + save_obj(intensity_array, os.path.join(out_dir, 'topN_intensity_array.p')) + + plot_heatmaps(coverage_array, intensity_array, out_dir) \ No newline at end of file From ffdb11e30a785a7827ce407b2b03e318b2c3e63b Mon Sep 17 00:00:00 2001 From: Joe Wandy Date: Fri, 21 Jul 2023 17:28:51 +0100 Subject: [PATCH 26/67] Fixed bug --- vimms/scripts/openms_optimise.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/vimms/scripts/openms_optimise.py b/vimms/scripts/openms_optimise.py index 801f9e8f..16e97807 100644 --- a/vimms/scripts/openms_optimise.py +++ b/vimms/scripts/openms_optimise.py @@ -245,8 +245,8 @@ def plot_heatmaps(coverage_array, intensity_array, out_dir): coverage_prop = report['cumulative_coverage_proportion'] intensity_prop = report['cumulative_intensity_proportion'] - coverage_array[i, j] = coverage_prop - intensity_array[i, j] = intensity_prop + coverage_array[i, j] = coverage_prop[0] + intensity_array[i, j] = intensity_prop[0] save_obj(results, os.path.join(out_dir, 'topN_optimise_results.p')) save_obj(coverage_array, os.path.join(out_dir, 'topN_coverage_array.p')) From 355dc91e0da5de9a7283e1b8133cfbe6490aa81a Mon Sep 17 00:00:00 2001 From: Joe Wandy Date: Mon, 24 Jul 2023 13:46:31 +0100 Subject: [PATCH 27/67] Fixed evaluation code for grid search --- vimms/Evaluation.py | 6 +++--- vimms/scripts/openms_optimise.py | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/vimms/Evaluation.py b/vimms/Evaluation.py index 45cafb69..263460e6 100644 --- a/vimms/Evaluation.py +++ b/vimms/Evaluation.py @@ -564,9 +564,9 @@ def from_unaligned_openms(cls, openms_file, min_box_ppm=10): box = GenericBox( rt_start, rt_end, - mz - 0.001, - mz + 0.001 - ).apply_min_box_ppm(ywidth=min_box_ppm) + mz - 0.01, + mz + 0.01 + )#.apply_min_box_ppm(ywidth=min_box_ppm) chems.append([box]) diff --git a/vimms/scripts/openms_optimise.py b/vimms/scripts/openms_optimise.py index 16e97807..8dd6db38 100644 --- a/vimms/scripts/openms_optimise.py +++ b/vimms/scripts/openms_optimise.py @@ -236,8 +236,8 @@ def plot_heatmaps(coverage_array, intensity_array, out_dir): mzml_file = os.path.join(out_dir, out_file) logger.info(f'Now processing fragmentation file {mzml_file}') - eva = evaluate_fragmentation(csv_file, mzml_file, args.isolation_width) - report = eva.evaluation_report() + eva = evaluate_fragmentation(csv_file, mzml_file, params.ISOLATION_WINDOW) + report = eva.evaluation_report(min_intensity=params.MIN_MS1_INTENSITY) key = (n, rt_tol) results[key] = report From 0e442cdcc4f14a9305439f5a06a3e28d884fdfbf Mon Sep 17 00:00:00 2001 From: Joe Wandy Date: Mon, 24 Jul 2023 14:00:00 +0100 Subject: [PATCH 28/67] Code tidy-up --- vimms/scripts/openms_optimise.py | 47 +++++++++++++++++++------------- 1 file changed, 28 insertions(+), 19 deletions(-) diff --git a/vimms/scripts/openms_optimise.py b/vimms/scripts/openms_optimise.py index 8dd6db38..16634792 100644 --- a/vimms/scripts/openms_optimise.py +++ b/vimms/scripts/openms_optimise.py @@ -184,6 +184,25 @@ def plot_heatmaps(coverage_array, intensity_array, out_dir): fig.savefig(os.path.join(out_dir, 'heatmap.png'), dpi=300) +def simulate_evaluate_topN(n, rt_tol): + params = (TopNParametersBuilder() + .set_N(n) + .set_RT_TOL(rt_tol) + .build()) + + # your simulation code here... + out_file = f'topN_N_{params.N}_DEW_{params.RT_TOL}.mzML' + run_simulation(params, dataset, st, out_dir, out_file, pbar) + mzml_file = os.path.join(out_dir, out_file) + + logger.info(f'Now processing fragmentation file {mzml_file}') + eva = evaluate_fragmentation(csv_file, mzml_file, params.ISOLATION_WINDOW) + print(n, rt_tol, eva.summarise(min_intensity=params.MIN_MS1_INTENSITY)) + + report = eva.evaluation_report(min_intensity=params.MIN_MS1_INTENSITY) + return report + + if __name__ == '__main__': parser = argparse.ArgumentParser(description='Optimise controllers on proteomics data using ViMMS') parser.add_argument('seed_file', type=str) @@ -215,41 +234,31 @@ def plot_heatmaps(coverage_array, intensity_array, out_dir): dataset = extract_chems(args.seed_file, chem_file, args.at_least_one_point_above) st = extract_scan_timing(args.seed_file, st_file, args.num_bins) + # different combinations of N and RT_TOl to check N_values = [5, 10, 15, 20, 25, 30] RT_TOL_values = [5, 10, 15, 30, 60, 120, 180, 240, 300] pbar = True + # grid search for N and RT_TOL results = {} coverage_array = np.zeros((len(N_values), len(RT_TOL_values))) intensity_array = np.zeros((len(N_values), len(RT_TOL_values))) - for i, n in enumerate(N_values): for j, rt_tol in enumerate(RT_TOL_values): - params = (TopNParametersBuilder() - .set_N(n) - .set_RT_TOL(rt_tol) - .build()) - - # your simulation code here... - out_file = f'topN_N_{params.N}_DEW_{params.RT_TOL}.mzML' - run_simulation(params, dataset, st, out_dir, out_file, pbar) - - mzml_file = os.path.join(out_dir, out_file) - logger.info(f'Now processing fragmentation file {mzml_file}') - eva = evaluate_fragmentation(csv_file, mzml_file, params.ISOLATION_WINDOW) - report = eva.evaluation_report(min_intensity=params.MIN_MS1_INTENSITY) - - key = (n, rt_tol) - results[key] = report - print(key, eva.summarise()) + # simulate and evaluate the combination of N and RT_TOL + report = simulate_evaluate_topN() + results[(n, rt_tol)] = report + # store the results coverage_prop = report['cumulative_coverage_proportion'] intensity_prop = report['cumulative_intensity_proportion'] coverage_array[i, j] = coverage_prop[0] intensity_array[i, j] = intensity_prop[0] + # save pickled results save_obj(results, os.path.join(out_dir, 'topN_optimise_results.p')) save_obj(coverage_array, os.path.join(out_dir, 'topN_coverage_array.p')) save_obj(intensity_array, os.path.join(out_dir, 'topN_intensity_array.p')) - plot_heatmaps(coverage_array, intensity_array, out_dir) \ No newline at end of file + # save heatmap + plot_heatmaps(coverage_array, intensity_array, out_dir) From 50fb682039356fdf65ed20d9ae0c7d4788328c83 Mon Sep 17 00:00:00 2001 From: Joe Wandy Date: Mon, 24 Jul 2023 14:02:25 +0100 Subject: [PATCH 29/67] Small bug --- vimms/scripts/openms_optimise.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/vimms/scripts/openms_optimise.py b/vimms/scripts/openms_optimise.py index 16634792..234584a0 100644 --- a/vimms/scripts/openms_optimise.py +++ b/vimms/scripts/openms_optimise.py @@ -246,7 +246,7 @@ def simulate_evaluate_topN(n, rt_tol): for i, n in enumerate(N_values): for j, rt_tol in enumerate(RT_TOL_values): # simulate and evaluate the combination of N and RT_TOL - report = simulate_evaluate_topN() + report = simulate_evaluate_topN(n, rt_tol) results[(n, rt_tol)] = report # store the results From 577d835dff1ff0e568c81e1d53a08782a91da0c7 Mon Sep 17 00:00:00 2001 From: Joe Wandy Date: Mon, 24 Jul 2023 15:55:49 +0100 Subject: [PATCH 30/67] Add the option to either perform grid search or use optuna --- Pipfile | 1 + environment.yml | 4 +- vimms/Chemicals.py | 6 +- vimms/scripts/openms_evaluate.py | 2 +- vimms/scripts/openms_optimise.py | 280 +++++++++++++++++++------------ 5 files changed, 183 insertions(+), 110 deletions(-) diff --git a/Pipfile b/Pipfile index 5a85c3da..1ca177c0 100644 --- a/Pipfile +++ b/Pipfile @@ -39,6 +39,7 @@ intervaltree = "*" jupyterlab = "*" ipywidgets = "*" gpy = "*" +optuna = "*" [dev-packages] twine = "*" diff --git a/environment.yml b/environment.yml index 073f23b8..1e16d134 100644 --- a/environment.yml +++ b/environment.yml @@ -40,4 +40,6 @@ dependencies: - numba-stats - brain-isotopic-distribution - ms_peak_picker - - ms_deisotope \ No newline at end of file + - ms_deisotope + - optuna + - kaleido diff --git a/vimms/Chemicals.py b/vimms/Chemicals.py index 391ad024..ed7303dc 100644 --- a/vimms/Chemicals.py +++ b/vimms/Chemicals.py @@ -430,7 +430,7 @@ def next_chems(self, rt): class MemoryChems(ChemSet): def __init__(self, local_chems): - logger.debug('MemoryChems initialised') + # logger.debug('MemoryChems initialised') key = Chemical.get_min_rt self.local_chems = sorted(local_chems, key=key) self.reset() @@ -474,7 +474,7 @@ def next_chems(self, rt): class FastMemoryChems(MemoryChems): def __init__(self, local_chems): - logger.debug('FastMemoryChems initialised') + # logger.debug('FastMemoryChems initialised') super().reset() self.local_chems = np.array(local_chems) @@ -491,7 +491,7 @@ def next_chems(self, rt): class FileChems(ChemSet): def __init__(self, filepath): - logger.debug('FileChems initialised') + # logger.debug('FileChems initialised') self.filepath = filepath self.f = None self.reset() diff --git a/vimms/scripts/openms_evaluate.py b/vimms/scripts/openms_evaluate.py index d74c63cd..7d641bcc 100644 --- a/vimms/scripts/openms_evaluate.py +++ b/vimms/scripts/openms_evaluate.py @@ -98,6 +98,6 @@ def evaluate_fragmentation(peaklist_file, mzml_file, isolation_width): csv_file = extract_boxes(args.seed_file, args.openms_dir, args.openms_ini_file) - logger.info(f'Now processing fragmentation file {args.mzml_file}') + logger.debug(f'Now processing fragmentation file {args.mzml_file}') eva = evaluate_fragmentation(csv_file, args.mzml_file, args.isolation_width) print(eva.summarise()) diff --git a/vimms/scripts/openms_optimise.py b/vimms/scripts/openms_optimise.py index 234584a0..aa0eff52 100644 --- a/vimms/scripts/openms_optimise.py +++ b/vimms/scripts/openms_optimise.py @@ -8,7 +8,11 @@ import numpy as np import pylab as plt +import seaborn as sns from loguru import logger +import optuna + +from optuna.visualization import plot_optimization_history, plot_param_importances from vimms.MassSpec import IndependentMassSpectrometer from vimms.Controller import TopNController, AdvancedParams @@ -127,99 +131,184 @@ def build(self): return self.topNParameters -def run_simulation(args, dataset, st, out_dir, out_file, pbar=False): - # Top-N parameters - rt_range = [(args.MIN_RT, args.MAX_RT)] - min_rt = rt_range[0][0] - max_rt = rt_range[0][1] - isolation_window = args.ISOLATION_WINDOW - N = args.N - rt_tol = args.RT_TOL - mz_tol = args.MZ_TOL - min_ms1_intensity = args.MIN_MS1_INTENSITY - min_fit_score = args.MIN_FIT_SCORE - penalty_factor = args.PENALTY_FACTOR - default_ms1_scan_window = ( - args.DEFAULT_MS1_SCAN_WINDOW_START, args.DEFAULT_MS1_SCAN_WINDOW_END) - - # DEW, isotope and charge filtering parameters - exclude_after_n_times = args.EXCLUDE_AFTER_N_TIMES - exclude_t0 = args.EXCLUDE_T0 - deisotope = args.DEISOTOPE - charge_range = (args.CHARGE_RANGE_START, args.CHARGE_RANGE_END) - - # create controller and mass spec objects - params = AdvancedParams(default_ms1_scan_window=default_ms1_scan_window) - mass_spec = IndependentMassSpectrometer(POSITIVE, dataset, scan_duration=st) - controller = TopNController( - POSITIVE, N, isolation_window, mz_tol, rt_tol, min_ms1_intensity, - advanced_params=params, exclude_after_n_times=exclude_after_n_times, - exclude_t0=exclude_t0, deisotope=deisotope, charge_range=charge_range, - min_fit_score=min_fit_score, penalty_factor=penalty_factor) - - # create an environment to run both the mass spec and controller - env = Environment(mass_spec, controller, min_rt, max_rt, progress_bar=pbar) - - # set the log level to WARNING so we don't see too many messages when environment is running - set_log_level_warning() - - # run the simulation - env.run() - set_log_level_debug() - env.write_mzML(out_dir, out_file) - - -def plot_heatmaps(coverage_array, intensity_array, out_dir): - fig, axs = plt.subplots(2, 1, figsize=(10, 10)) - - cax1 = axs[0].imshow(coverage_array, cmap='hot', interpolation='nearest') - axs[0].set_title('Coverage Proportion') - fig.colorbar(cax1, ax=axs[0]) - - cax2 = axs[1].imshow(intensity_array, cmap='hot', interpolation='nearest') - axs[1].set_title('Intensity Proportion') - fig.colorbar(cax2, ax=axs[1]) - - # Save the figure - fig.savefig(os.path.join(out_dir, 'heatmap.png'), dpi=300) - - -def simulate_evaluate_topN(n, rt_tol): - params = (TopNParametersBuilder() - .set_N(n) - .set_RT_TOL(rt_tol) - .build()) - - # your simulation code here... - out_file = f'topN_N_{params.N}_DEW_{params.RT_TOL}.mzML' - run_simulation(params, dataset, st, out_dir, out_file, pbar) - mzml_file = os.path.join(out_dir, out_file) - - logger.info(f'Now processing fragmentation file {mzml_file}') - eva = evaluate_fragmentation(csv_file, mzml_file, params.ISOLATION_WINDOW) - print(n, rt_tol, eva.summarise(min_intensity=params.MIN_MS1_INTENSITY)) - - report = eva.evaluation_report(min_intensity=params.MIN_MS1_INTENSITY) - return report +class TopNSimulator: + def __init__(self, args, out_dir, pbar=False): + self.args = args + self.out_dir = out_dir + self.pbar = pbar + + # for grid search + self.N_values = [5, 10, 15, 20, 25, 30] + self.RT_TOL_values = [5, 10, 15, 30, 60, 120, 180, 240, 300] + self.results = {} + self.coverage_array = np.zeros((len(self.N_values), len(self.RT_TOL_values))) + self.intensity_array = np.zeros((len(self.N_values), len(self.RT_TOL_values))) + + def simulate(self, n, rt_tol): + params = (TopNParametersBuilder() + .set_N(n) + .set_RT_TOL(rt_tol) + .build()) + + # your simulation code here... + out_file = f'topN_N_{params.N}_DEW_{params.RT_TOL}.mzML' + self.run_simulation(params, dataset, st, self.out_dir, out_file) + mzml_file = os.path.join(self.out_dir, out_file) + + logger.debug(f'Now processing fragmentation file {mzml_file}') + eva = evaluate_fragmentation(csv_file, mzml_file, params.ISOLATION_WINDOW) + logger.debug(f'N={n} RT_TOL={rt_tol}') + logger.debug(eva.summarise(min_intensity=params.MIN_MS1_INTENSITY)) + + report = eva.evaluation_report(min_intensity=params.MIN_MS1_INTENSITY) + return report + + def run_simulation(self, params, dataset, st, out_dir, out_file): + # Top-N parameters + rt_range = [(params.MIN_RT, params.MAX_RT)] + min_rt = rt_range[0][0] + max_rt = rt_range[0][1] + isolation_window = params.ISOLATION_WINDOW + N = params.N + rt_tol = params.RT_TOL + mz_tol = params.MZ_TOL + min_ms1_intensity = params.MIN_MS1_INTENSITY + min_fit_score = params.MIN_FIT_SCORE + penalty_factor = params.PENALTY_FACTOR + default_ms1_scan_window = ( + params.DEFAULT_MS1_SCAN_WINDOW_START, params.DEFAULT_MS1_SCAN_WINDOW_END) + + # DEW, isotope and charge filtering parameters + exclude_after_n_times = params.EXCLUDE_AFTER_N_TIMES + exclude_t0 = params.EXCLUDE_T0 + deisotope = params.DEISOTOPE + charge_range = (params.CHARGE_RANGE_START, params.CHARGE_RANGE_END) + + # create controller and mass spec objects + params = AdvancedParams(default_ms1_scan_window=default_ms1_scan_window) + mass_spec = IndependentMassSpectrometer(POSITIVE, dataset, scan_duration=st) + controller = TopNController( + POSITIVE, N, isolation_window, mz_tol, rt_tol, min_ms1_intensity, + advanced_params=params, exclude_after_n_times=exclude_after_n_times, + exclude_t0=exclude_t0, deisotope=deisotope, charge_range=charge_range, + min_fit_score=min_fit_score, penalty_factor=penalty_factor) + + # create an environment to run both the mass spec and controller + env = Environment(mass_spec, controller, min_rt, max_rt, progress_bar=self.pbar) + + # set the log level to WARNING so we don't see too many messages when environment is running + set_log_level_warning() + + # run the simulation + env.run() + set_log_level_debug() + env.write_mzML(out_dir, out_file) + + def grid_search(self): + logger.debug(f'Performing grid search using N={self.N_values} and rt_tol={self.RT_TOL_values}') + for i, n in enumerate(self.N_values): + for j, rt_tol in enumerate(self.RT_TOL_values): + # simulate and evaluate the combination of N and RT_TOL + report = self.simulate(n, rt_tol) + self.results[(n, rt_tol)] = report + + # store the results + coverage_prop = report['cumulative_coverage_proportion'] + intensity_prop = report['cumulative_intensity_proportion'] + self.coverage_array[i, j] = coverage_prop[0] + self.intensity_array[i, j] = intensity_prop[0] + + def save_grid_search_results(self): + logger.debug(f'Saving grid search results to {self.out_dir}') + + # save pickled results + data = { + 'topN_optimise_results.p': self.results, + 'topN_coverage_array.p': self.coverage_array, + 'topN_intensity_array.p': self.intensity_array + } + for filename, data_obj in data.items(): + save_obj(data_obj, os.path.join(self.out_dir, filename)) + + # save heatmap + fig, axs = plt.subplots(2, 1, figsize=(10, 10)) + data = [ + (self.coverage_array, 'Coverage Proportion'), + (self.intensity_array, 'Intensity Proportion') + ] + for i, (array, title) in enumerate(data): + sns.heatmap(array, ax=axs[i], cbar_ax=axs[i].inset_axes([1.05, 0.1, 0.05, 0.8])) + axs[i].set_title(title) + axs[i].set_xticklabels(self.RT_TOL_values) + axs[i].set_yticklabels(self.N_values) + axs[i].set_xlabel('RT TOL') + axs[i].set_ylabel('N') + + plt.tight_layout() + fig.savefig(os.path.join(self.out_dir, 'heatmap.png'), dpi=300) + + def objective(self, trial): + # define the space for hyperparameters + n = trial.suggest_int('N', 5, 30, step=5) + rt_tol = trial.suggest_int('RT_TOL', 5, 300, step=5) + + # simulate and evaluate the combination of N and RT_TOL + report = self.simulate(n, rt_tol) + self.results[(n, rt_tol)] = report + + # Access args.optimize + if self.args.optuna_optimise == 'coverage_prop': + return report['cumulative_coverage_proportion'][0] # Optuna minimizes by default + elif self.args.optuna_optimise == 'intensity_prop': + return report['cumulative_intensity_proportion'][0] # Optuna minimizes by default + else: + raise ValueError(f"Invalid optimisation choice: {self.args.optuna_optimise}. " + f"Choose 'coverage_prop' or 'intensity_prop'.") + + +def save_study(study, out_dir): + trial = study.best_trial + logger.info(f'Number of finished trials: {len(study.trials)}') + logger.info(f'Best trial value: {trial.value}') + logger.info('Best trial params: ') + for key, value in trial.params.items(): + logger.info(f' {key}: {value}') + + # Write report csv and plots + study.trials_dataframe().to_csv(os.path.join(out_dir, f'study.csv')) + fig1 = plot_optimization_history(study) + fig1.write_image(os.path.join(out_dir, f'study_optimisation_history.png')) + fig2 = plot_param_importances(study) + fig2.write_image(os.path.join(out_dir, f'study_param_importances.png')) if __name__ == '__main__': parser = argparse.ArgumentParser(description='Optimise controllers on proteomics data using ViMMS') - parser.add_argument('seed_file', type=str) - parser.add_argument('--method', type=str, default='topN') + # chemical extraction and simulation parameters + parser.add_argument('seed_file', type=str) + parser.add_argument('--method', type=str, default='topN') # valid choices are 'topN', 'SmartROI' or 'WeightedDEW' parser.add_argument('--at_least_one_point_above', type=float, default=1E5, help='The minimum intensity value for ROI extraction.') parser.add_argument('--num_bins', type=int, default=20, help='The number of bins to sample scan durations from.') + parser.add_argument('--pbar', type=bool, default=True, help='Show progress bar during simulation.') + # evaluation parameters parser.add_argument('--out_dir', type=str, default='topN_optimise', help='The directory where the output files will be stored.') parser.add_argument('--openms_dir', type=str, default=None) parser.add_argument('--openms_ini_file', type=str, default=None) parser.add_argument('--isolation_width', type=float, default=0.7, help="Isolation width for fragmentation.") - args = parser.parse_args() + # optimisation parameters + parser.add_argument('--optuna_use', type=bool, default=False, help='Use Optuna for optimisation.') + parser.add_argument('--optuna_optimise', type=str, default='intensity_prop', + help="For optuna, optimise for either 'coverage_prop' or 'intensity_prop'.") + parser.add_argument('--optuna_n_trials', type=int, default=100, + help='For optuna, the number of trials.') + + args = parser.parse_args() csv_file = extract_boxes(args.seed_file, args.openms_dir, args.openms_ini_file) # check input and output paths @@ -234,31 +323,12 @@ def simulate_evaluate_topN(n, rt_tol): dataset = extract_chems(args.seed_file, chem_file, args.at_least_one_point_above) st = extract_scan_timing(args.seed_file, st_file, args.num_bins) - # different combinations of N and RT_TOl to check - N_values = [5, 10, 15, 20, 25, 30] - RT_TOL_values = [5, 10, 15, 30, 60, 120, 180, 240, 300] - pbar = True - - # grid search for N and RT_TOL - results = {} - coverage_array = np.zeros((len(N_values), len(RT_TOL_values))) - intensity_array = np.zeros((len(N_values), len(RT_TOL_values))) - for i, n in enumerate(N_values): - for j, rt_tol in enumerate(RT_TOL_values): - # simulate and evaluate the combination of N and RT_TOL - report = simulate_evaluate_topN(n, rt_tol) - results[(n, rt_tol)] = report - - # store the results - coverage_prop = report['cumulative_coverage_proportion'] - intensity_prop = report['cumulative_intensity_proportion'] - coverage_array[i, j] = coverage_prop[0] - intensity_array[i, j] = intensity_prop[0] - - # save pickled results - save_obj(results, os.path.join(out_dir, 'topN_optimise_results.p')) - save_obj(coverage_array, os.path.join(out_dir, 'topN_coverage_array.p')) - save_obj(intensity_array, os.path.join(out_dir, 'topN_intensity_array.p')) - - # save heatmap - plot_heatmaps(coverage_array, intensity_array, out_dir) + simulator = TopNSimulator(args, out_dir, pbar=args.pbar) + if args.optuna_use: + study = optuna.create_study(direction='maximize') + study.optimize(simulator.objective, n_trials=args.optuna_n_trials) + save_study(study, out_dir) + + else: # grid search + simulator.grid_search() + simulator.save_grid_search_results() From 8956c352e6802798dd569c8837250cc4e4d581dc Mon Sep 17 00:00:00 2001 From: Joe Wandy Date: Mon, 24 Jul 2023 16:36:37 +0100 Subject: [PATCH 31/67] Optimise exclude_t0 as well --- vimms/scripts/openms_optimise.py | 25 ++++++++++++++++--------- 1 file changed, 16 insertions(+), 9 deletions(-) diff --git a/vimms/scripts/openms_optimise.py b/vimms/scripts/openms_optimise.py index aa0eff52..0a01bd02 100644 --- a/vimms/scripts/openms_optimise.py +++ b/vimms/scripts/openms_optimise.py @@ -140,24 +140,26 @@ def __init__(self, args, out_dir, pbar=False): # for grid search self.N_values = [5, 10, 15, 20, 25, 30] self.RT_TOL_values = [5, 10, 15, 30, 60, 120, 180, 240, 300] + self.EXCLUDE_T0_value = 15 self.results = {} self.coverage_array = np.zeros((len(self.N_values), len(self.RT_TOL_values))) self.intensity_array = np.zeros((len(self.N_values), len(self.RT_TOL_values))) - def simulate(self, n, rt_tol): + def simulate(self, n, rt_tol, exclude_t0): params = (TopNParametersBuilder() .set_N(n) .set_RT_TOL(rt_tol) + .set_EXCLUDE_T0(exclude_t0) .build()) # your simulation code here... - out_file = f'topN_N_{params.N}_DEW_{params.RT_TOL}.mzML' + out_file = f'topN_N_{params.N}_DEW_{params.RT_TOL}_exclude_t0_{params.EXCLUDE_T0}.mzML' self.run_simulation(params, dataset, st, self.out_dir, out_file) mzml_file = os.path.join(self.out_dir, out_file) logger.debug(f'Now processing fragmentation file {mzml_file}') eva = evaluate_fragmentation(csv_file, mzml_file, params.ISOLATION_WINDOW) - logger.debug(f'N={n} RT_TOL={rt_tol}') + logger.debug(f'N={n} RT_TOL={rt_tol} exclude_t0={exclude_t0}') logger.debug(eva.summarise(min_intensity=params.MIN_MS1_INTENSITY)) report = eva.evaluation_report(min_intensity=params.MIN_MS1_INTENSITY) @@ -206,11 +208,12 @@ def run_simulation(self, params, dataset, st, out_dir, out_file): def grid_search(self): logger.debug(f'Performing grid search using N={self.N_values} and rt_tol={self.RT_TOL_values}') + exclude_t0 = self.EXCLUDE_T0_value for i, n in enumerate(self.N_values): for j, rt_tol in enumerate(self.RT_TOL_values): # simulate and evaluate the combination of N and RT_TOL - report = self.simulate(n, rt_tol) - self.results[(n, rt_tol)] = report + report = self.simulate(n, rt_tol, exclude_t0) + self.results[(n, rt_tol, exclude_t0)] = report # store the results coverage_prop = report['cumulative_coverage_proportion'] @@ -251,10 +254,11 @@ def objective(self, trial): # define the space for hyperparameters n = trial.suggest_int('N', 5, 30, step=5) rt_tol = trial.suggest_int('RT_TOL', 5, 300, step=5) + exclude_t0 = trial.suggest_int('EXCLUDE_t0', 5, 60, step=5) # simulate and evaluate the combination of N and RT_TOL - report = self.simulate(n, rt_tol) - self.results[(n, rt_tol)] = report + report = self.simulate(n, rt_tol, exclude_t0) + self.results[(n, rt_tol, exclude_t0)] = report # Access args.optimize if self.args.optuna_optimise == 'coverage_prop': @@ -266,7 +270,7 @@ def objective(self, trial): f"Choose 'coverage_prop' or 'intensity_prop'.") -def save_study(study, out_dir): +def save_study(study, results, out_dir): trial = study.best_trial logger.info(f'Number of finished trials: {len(study.trials)}') logger.info(f'Best trial value: {trial.value}') @@ -274,6 +278,9 @@ def save_study(study, out_dir): for key, value in trial.params.items(): logger.info(f' {key}: {value}') + # save pickled results + save_obj(results, os.path.join(out_dir, 'topN_optimise_results.p')) + # Write report csv and plots study.trials_dataframe().to_csv(os.path.join(out_dir, f'study.csv')) fig1 = plot_optimization_history(study) @@ -327,7 +334,7 @@ def save_study(study, out_dir): if args.optuna_use: study = optuna.create_study(direction='maximize') study.optimize(simulator.objective, n_trials=args.optuna_n_trials) - save_study(study, out_dir) + save_study(study, simulator.results, out_dir) else: # grid search simulator.grid_search() From 2e67b515f52cab3e87714ca5566c3dccd4bbfb2d Mon Sep 17 00:00:00 2001 From: Joe Wandy Date: Mon, 24 Jul 2023 18:31:12 +0100 Subject: [PATCH 32/67] Make it possible to resume optuna study --- vimms/scripts/openms_optimise.py | 8 ++++++-- vimms/scripts/topN_test.py | 7 +++++-- 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/vimms/scripts/openms_optimise.py b/vimms/scripts/openms_optimise.py index 0a01bd02..a1532857 100644 --- a/vimms/scripts/openms_optimise.py +++ b/vimms/scripts/openms_optimise.py @@ -324,7 +324,8 @@ def save_study(study, results, out_dir): create_if_not_exist(out_dir) # Format output file names - chem_file, st_file = get_input_filenames(args.at_least_one_point_above, out_dir) + chem_file, st_file, study_name, study_file = get_input_filenames( + args.at_least_one_point_above, args.method, out_dir) # extract chems and scan timing from mzml file dataset = extract_chems(args.seed_file, chem_file, args.at_least_one_point_above) @@ -332,7 +333,10 @@ def save_study(study, results, out_dir): simulator = TopNSimulator(args, out_dir, pbar=args.pbar) if args.optuna_use: - study = optuna.create_study(direction='maximize') + db_name = os.path.abspath(study_file) + storage_name = f'sqlite:///{db_name}' + study = optuna.create_study(study_name=study_name, storage=storage_name, + load_if_exists=True, direction='maximize') study.optimize(simulator.objective, n_trials=args.optuna_n_trials) save_study(study, simulator.results, out_dir) diff --git a/vimms/scripts/topN_test.py b/vimms/scripts/topN_test.py index 6135596d..6aaa7db3 100644 --- a/vimms/scripts/topN_test.py +++ b/vimms/scripts/topN_test.py @@ -70,12 +70,15 @@ def parse_args(): return args -def get_input_filenames(at_least_one_point_above, base_dir): +def get_input_filenames(at_least_one_point_above, method, base_dir): formatted_number = '%.0e' % at_least_one_point_above formatted_number = formatted_number.replace('e', 'E').replace('+', '') chem_file = os.path.join(base_dir, f'chems_{formatted_number}.p') st_file = os.path.join(base_dir, f'scan_timing_{formatted_number}.p') - return chem_file, st_file + + study_name = f'study_{method}_{formatted_number}' + study_file = os.path.join(base_dir, f'{study_name}.db') + return chem_file, st_file, study_name, study_file def extract_scan_timing(mzml_file, st_file, num_bins): From 9cbbae42aef806bbaf2a0ca739b5bde4fe07844a Mon Sep 17 00:00:00 2001 From: Joe Wandy Date: Tue, 25 Jul 2023 11:43:25 +0100 Subject: [PATCH 33/67] Simpler classes for parameters --- vimms/scripts/openms_optimise.py | 119 ++---------------------- vimms/scripts/openms_optimise_params.py | 52 +++++++++++ 2 files changed, 58 insertions(+), 113 deletions(-) create mode 100644 vimms/scripts/openms_optimise_params.py diff --git a/vimms/scripts/openms_optimise.py b/vimms/scripts/openms_optimise.py index a1532857..73925698 100644 --- a/vimms/scripts/openms_optimise.py +++ b/vimms/scripts/openms_optimise.py @@ -21,114 +21,7 @@ set_log_level_warning, set_log_level_debug, save_obj from vimms.scripts.openms_evaluate import extract_boxes, evaluate_fragmentation from vimms.scripts.topN_test import get_input_filenames, extract_chems, extract_scan_timing - - -class TopNParameters: - def __init__(self): - # The minimum retention time for Top-N. - self.MIN_RT = 0 - # The maximum retention time for Top-N. - self.MAX_RT = 7200 - # The isolation window for Top-N. - self.ISOLATION_WINDOW = 0.7 - # The Top N value. - self.N = 15 - # The retention time tolerance for Top-N. - self.RT_TOL = 30 - # The mass to charge ratio tolerance for Top-N. - self.MZ_TOL = 10 - # The minimum MS1 intensity for Top-N. - self.MIN_MS1_INTENSITY = 5000 - # The start of the default MS1 scan window. - self.DEFAULT_MS1_SCAN_WINDOW_START = 310.0 - # The end of the default MS1 scan window. - self.DEFAULT_MS1_SCAN_WINDOW_END = 2000.0 - # The number of times to exclude after in DEW parameters. - self.EXCLUDE_AFTER_N_TIMES = 2 - # The exclude t0 value in DEW parameters. - self.EXCLUDE_T0 = 15 - # Whether to perform deisotoping or not. - self.DEISOTOPE = True - # The start of the charge range for filtering. - self.CHARGE_RANGE_START = 2 - # The end of the charge range for filtering. - self.CHARGE_RANGE_END = 6 - # The minimum fit score from ms_deconvolve. - self.MIN_FIT_SCORE = 80 - # Penalty factor for ms_deconvolve. - self.PENALTY_FACTOR = 1.5 - - -class TopNParametersBuilder: - def __init__(self): - self.topNParameters = TopNParameters() - - def set_MIN_RT(self, value): - self.topNParameters.MIN_RT = value - return self - - def set_MAX_RT(self, value): - self.topNParameters.MAX_RT = value - return self - - def set_ISOLATION_WINDOW(self, value): - self.topNParameters.ISOLATION_WINDOW = value - return self - - def set_N(self, value): - self.topNParameters.N = value - return self - - def set_RT_TOL(self, value): - self.topNParameters.RT_TOL = value - return self - - def set_MZ_TOL(self, value): - self.topNParameters.MZ_TOL = value - return self - - def set_MIN_MS1_INTENSITY(self, value): - self.topNParameters.MIN_MS1_INTENSITY = value - return self - - def set_DEFAULT_MS1_SCAN_WINDOW_START(self, value): - self.topNParameters.DEFAULT_MS1_SCAN_WINDOW_START = value - return self - - def set_DEFAULT_MS1_SCAN_WINDOW_END(self, value): - self.topNParameters.DEFAULT_MS1_SCAN_WINDOW_END = value - return self - - def set_EXCLUDE_AFTER_N_TIMES(self, value): - self.topNParameters.EXCLUDE_AFTER_N_TIMES = value - return self - - def set_EXCLUDE_T0(self, value): - self.topNParameters.EXCLUDE_T0 = value - return self - - def set_DEISOTOPE(self, value): - self.topNParameters.DEISOTOPE = value - return self - - def set_CHARGE_RANGE_START(self, value): - self.topNParameters.CHARGE_RANGE_START = value - return self - - def set_CHARGE_RANGE_END(self, value): - self.topNParameters.CHARGE_RANGE_END = value - return self - - def set_MIN_FIT_SCORE(self, value): - self.topNParameters.MIN_FIT_SCORE = value - return self - - def set_PENALTY_FACTOR(self, value): - self.topNParameters.PENALTY_FACTOR = value - return self - - def build(self): - return self.topNParameters +from vimms.scripts.openms_optimise_params import ParametersBuilder, TopNParameters class TopNSimulator: @@ -146,11 +39,11 @@ def __init__(self, args, out_dir, pbar=False): self.intensity_array = np.zeros((len(self.N_values), len(self.RT_TOL_values))) def simulate(self, n, rt_tol, exclude_t0): - params = (TopNParametersBuilder() - .set_N(n) - .set_RT_TOL(rt_tol) - .set_EXCLUDE_T0(exclude_t0) - .build()) + params = (ParametersBuilder(TopNParameters.debug) + .set('N', n) + .set('RT_TOL', rt_tol) + .set('EXCLUDE_T0', exclude_t0) + .build()) # your simulation code here... out_file = f'topN_N_{params.N}_DEW_{params.RT_TOL}_exclude_t0_{params.EXCLUDE_T0}.mzML' diff --git a/vimms/scripts/openms_optimise_params.py b/vimms/scripts/openms_optimise_params.py new file mode 100644 index 00000000..f72d3188 --- /dev/null +++ b/vimms/scripts/openms_optimise_params.py @@ -0,0 +1,52 @@ +from dataclasses import dataclass + +@dataclass +class BaseParameters: + MIN_RT: int = 0 + MAX_RT: int = 7200 + ISOLATION_WINDOW: float = 0.7 + DEFAULT_MS1_SCAN_WINDOW_START: float = 310.0 + DEFAULT_MS1_SCAN_WINDOW_END: float = 2000.0 + DEISOTOPE: bool = True + CHARGE_RANGE_START: int = 2 + CHARGE_RANGE_END: int = 6 + MIN_FIT_SCORE: int = 80 + PENALTY_FACTOR: float = 1.5 + + @classmethod + def debug(cls): + return cls(MAX_RT=1500) + +@dataclass +class CommonParameters(BaseParameters): + N: int = 15 + RT_TOL: int = 30 + MZ_TOL: int = 10 + MIN_MS1_INTENSITY: int = 5000 + +@dataclass +class TopNParameters(CommonParameters): + EXCLUDE_AFTER_N_TIMES: int = 2 + EXCLUDE_T0: int = 15 + +@dataclass +class SmartROIParameters(CommonParameters): + IIF_VALUES: float = 1e3 + DP_VALUES: float = 0.1 + MIN_ROI_INTENSITY: int = 500 + MIN_ROI_LENGTH: int = 0 + MIN_ROI_LENGTH_FOR_FRAGMENTATION: int = 0 + +class ParametersBuilder: + def __init__(self, parameters_class): + self.parameters = parameters_class() + + def set(self, attribute, value): + if hasattr(self.parameters, attribute): + setattr(self.parameters, attribute, value) + else: + raise ValueError(f"{attribute} is not a valid attribute for {self.parameters.__class__.__name__}") + return self + + def build(self): + return self.parameters From af293339c0b7034b91f2af3d4750c02fe516b476 Mon Sep 17 00:00:00 2001 From: Joe Wandy Date: Tue, 25 Jul 2023 15:05:03 +0100 Subject: [PATCH 34/67] Grid and optuna search for SmartROI and WeightedDEW --- vimms/BOMAS.py | 2 +- vimms/Controller/base.py | 4 +- vimms/Controller/roi.py | 233 ++++------------ vimms/Controller/topN.py | 50 ++-- vimms/Exclusion.py | 3 +- vimms/scripts/openms_optimise.py | 347 +++++++++++++++++++++++- vimms/scripts/openms_optimise_params.py | 8 +- 7 files changed, 435 insertions(+), 212 deletions(-) diff --git a/vimms/BOMAS.py b/vimms/BOMAS.py index 408dc529..3083b872 100644 --- a/vimms/BOMAS.py +++ b/vimms/BOMAS.py @@ -9,7 +9,7 @@ from vimms.Box import BoxGrid from vimms.Common import load_obj, POSITIVE, ROI_TYPE_NORMAL, ROI_EXCLUSION_DEW from vimms.Controller import ( - TopN_SmartRoiController, WeightedDEWController, TopN_RoiController, + TopN_SmartRoiController, Controller, TopN_RoiController, NonOverlapController, IntensityNonOverlapController, TopNBoxRoiController, FlexibleNonOverlapController, FixedScansController, AgentBasedController, TopNController diff --git a/vimms/Controller/base.py b/vimms/Controller/base.py index db56e0b8..eed281ff 100644 --- a/vimms/Controller/base.py +++ b/vimms/Controller/base.py @@ -3,12 +3,10 @@ controllers to function. """ import time -from collections import defaultdict - from abc import ABC, abstractmethod +from collections import defaultdict import pandas as pd -from loguru import logger from vimms.Common import DEFAULT_MS1_SCAN_WINDOW, DEFAULT_MS1_AGC_TARGET, \ DEFAULT_MS1_MAXIT, \ diff --git a/vimms/Controller/roi.py b/vimms/Controller/roi.py index 3979be4b..f4af108d 100644 --- a/vimms/Controller/roi.py +++ b/vimms/Controller/roi.py @@ -2,6 +2,7 @@ This file describes controllers that build regions-of-interests (ROIs) in real-time and use that as additional information to decide which precursor ions to fragment. """ +import copy from copy import deepcopy import numpy as np @@ -33,7 +34,11 @@ def __init__(self, ionisation_mode, isolation_width, ms1_shift=0, advanced_params=None, exclusion_method=ROI_EXCLUSION_DEW, - exclusion_t_0=None): + exclusion_t_0=None, + deisotope=False, + charge_range=(2, 6), + min_fit_score=160, + penalty_factor=1.0): """ Initialise an ROI-based controller Args: @@ -57,9 +62,15 @@ def __init__(self, ionisation_mode, isolation_width, used to describe how to perform dynamic exclusion so that precursors that have been fragmented are not fragmented again. exclusion_t_0: parameter for WeightedDEW exclusion (refer to paper for details). + deisotope: whether to perform isotopic deconvolution, necessary for proteomics. + charge_range: the charge state of ions to keep. + min_fit_score: minimum score to keep from doing isotope deconvolution. + penalty_factor: penalty factor for scoring during isotope deconvolution. """ super().__init__(ionisation_mode, N, isolation_width, mz_tol, rt_tol, min_ms1_intensity, ms1_shift=ms1_shift, + deisotope=deisotope, charge_range=charge_range, + min_fit_score=min_fit_score, penalty_factor=penalty_factor, advanced_params=advanced_params) self.min_roi_length_for_fragmentation = min_roi_length_for_fragmentation # noqa self.roi_builder = RoiBuilder(roi_params, smartroi_params=smartroi_params) @@ -92,6 +103,7 @@ class MS2Scheduler(): """ A class that performs MS2 scheduling of tasks """ + def __init__(self, parent): """ Initialises an MS2 scheduler @@ -121,12 +133,24 @@ def schedule_ms2s(self, new_tasks, ms2_tasks, mz, intensity): ms2_tasks.append(dda_scan_params) self.parent.current_task_id += 1 self.fragmented_count += 1 - + def _set_fragmented(self, i, roi_id, rt, intensity): self.roi_builder.set_fragmented(self.current_task_id, i, roi_id, rt, intensity) def _process_scan(self, scan): if self.scan_to_process is not None: + assert self.scan_to_process == scan + + # perform isotope deconvolution, necessary for proteomics data + if self.deisotope: + mzs = self.scan_to_process.mzs + intensities = self.scan_to_process.intensities + assert mzs.shape == intensities.shape + mzs, intensities = self._deisotope(mzs, intensities) + scan = copy.deepcopy(scan) + scan.mzs = mzs + scan.intensities = intensities + # keep growing ROIs if we encounter a new ms1 scan self.roi_builder.update_roi(scan) new_tasks, ms2_tasks = [], [] @@ -267,6 +291,7 @@ class TopN_SmartRoiController(RoiController): A ROI-based controller that implements the Top-N selection with SmartROI rules. This is used in the paper 'Rapid Development ...' """ + def __init__(self, ionisation_mode, isolation_width, @@ -280,7 +305,11 @@ def __init__(self, ms1_shift=0, advanced_params=None, exclusion_method=ROI_EXCLUSION_DEW, - exclusion_t_0=None): + exclusion_t_0=None, + deisotope=False, + charge_range=(2, 6), + min_fit_score=160, + penalty_factor=1.0): """ Initialise the Top-N SmartROI controller. @@ -305,6 +334,10 @@ def __init__(self, used to describe how to perform dynamic exclusion so that precursors that have been fragmented are not fragmented again. exclusion_t_0: parameter for WeightedDEW exclusion (refer to paper for details). + deisotope: whether to perform isotopic deconvolution, necessary for proteomics. + charge_range: the charge state of ions to keep. + min_fit_score: minimum score to keep from doing isotope deconvolution. + penalty_factor: penalty factor for scoring during isotope deconvolution. """ super().__init__(ionisation_mode, isolation_width, N, @@ -317,11 +350,15 @@ def __init__(self, ms1_shift=ms1_shift, advanced_params=advanced_params, exclusion_method=exclusion_method, - exclusion_t_0=exclusion_t_0) + exclusion_t_0=exclusion_t_0, + deisotope=deisotope, + charge_range=charge_range, + min_fit_score=min_fit_score, + penalty_factor=penalty_factor) def _get_dda_scores(self): return self._log_roi_intensities() * self._min_intensity_filter() * \ - self._smartroi_filter() + self._smartroi_filter() def _get_scores(self): initial_scores = self._get_dda_scores() @@ -333,6 +370,7 @@ class TopN_RoiController(RoiController): """ A ROI-based controller that implements the Top-N selection. """ + def __init__(self, ionisation_mode, isolation_width, @@ -345,7 +383,11 @@ def __init__(self, ms1_shift=0, advanced_params=None, exclusion_method=ROI_EXCLUSION_DEW, - exclusion_t_0=None): + exclusion_t_0=None, + deisotope=False, + charge_range=(2, 6), + min_fit_score=160, + penalty_factor=1.0): """ Initialise the Top-N SmartROI controller. @@ -367,6 +409,10 @@ def __init__(self, used to describe how to perform dynamic exclusion so that precursors that have been fragmented are not fragmented again. exclusion_t_0: parameter for WeightedDEW exclusion (refer to paper for details). + deisotope: whether to perform isotopic deconvolution, necessary for proteomics. + charge_range: the charge state of ions to keep. + min_fit_score: minimum score to keep from doing isotope deconvolution. + penalty_factor: penalty factor for scoring during isotope deconvolution. """ super().__init__(ionisation_mode, isolation_width, @@ -379,178 +425,13 @@ def __init__(self, ms1_shift=ms1_shift, advanced_params=advanced_params, exclusion_method=exclusion_method, - exclusion_t_0=exclusion_t_0) + exclusion_t_0=exclusion_t_0, + deisotope=deisotope, + charge_range=charge_range, + min_fit_score=min_fit_score, + penalty_factor=penalty_factor) def _get_scores(self): initial_scores = self._get_dda_scores() scores = self._get_top_N_scores(initial_scores) return scores - - -# class TopNBoxRoiController(RoiController): -# """ -# TODO: not sure if this is still in use? -# """ -# def __init__(self, -# ionisation_mode, -# isolation_width, -# N, -# mz_tol, -# rt_tol, -# min_ms1_intensity, -# roi_params, -# boxes_params=None, -# boxes=None, -# boxes_intensity=None, -# boxes_pvalues=None, -# box_min_rt_width=0.01, -# box_min_mz_width=0.01, -# min_roi_length_for_fragmentation=1, -# ms1_shift=0, -# advanced_params=None, -# exclusion_method=ROI_EXCLUSION_DEW, -# exclusion_t_0=None): -# super().__init__(ionisation_mode, -# isolation_width, -# N, -# mz_tol, -# rt_tol, -# min_ms1_intensity, -# roi_params, -# min_roi_length_for_fragmentation=min_roi_length_for_fragmentation, -# ms1_shift=ms1_shift, -# advanced_params=advanced_params, -# exclusion_method=exclusion_method, -# exclusion_t_0=exclusion_t_0) -# self.boxes_params = boxes_params -# self.boxes = boxes -# # the intensity the boxes have been fragmented at before -# self.boxes_intensity = boxes_intensity -# self.boxes_pvalues = boxes_pvalues -# self.box_min_rt_width = box_min_rt_width -# self.box_min_mz_width = box_min_mz_width -# -# def _get_scores(self): -# if self.boxes is not None: -# # calculate dda stuff -# log_intensities = self._log_roi_intensities() -# intensity_filter = self._min_intensity_filter() -# time_filter = (1 - np.array( -# self.roi_builder.live_roi_fragmented).astype(int)) -# time_filter[time_filter == 0] = ( -# (self.scan_to_process.rt - -# np.array(self.roi_builder.live_roi_last_rt)[ -# time_filter == 0]) > self.rt_tol) -# # calculate overlap stuff -# initial_scores = [] -# copy_boxes = deepcopy(self.boxes) -# for box in copy_boxes: -# box.pt2.x = min(box.pt2.x, max(self.last_ms1_rt, box.pt1.x)) -# prev_intensity = np.maximum(np.log(np.array(self.boxes_intensity)), -# [0 for i in self.boxes_intensity]) -# box_fragmented = (np.array(self.boxes_intensity) == 0) * 1 -# for i in range(len(log_intensities)): -# overlaps = np.array( -# self.roi_builder.live_roi[i].get_boxes_overlap( -# copy_boxes, self.box_min_rt_width, -# self.box_min_mz_width)) -# # new peaks not in list of boxes -# new_peaks_score = max(0, (1 - sum(overlaps))) * log_intensities[i] -# # previously fragmented peaks -# old_peaks_score1 = sum( -# overlaps * (log_intensities[i] - prev_intensity) * ( -# 1 - box_fragmented)) -# # peaks seen before, but not fragmented -# old_peaks_score2 = sum( -# overlaps * log_intensities[i] * box_fragmented) -# if self.boxes_pvalues is not None: -# # based on p values, previously fragmented -# p_value_scores1 = sum( -# overlaps * (log_intensities[i] - prev_intensity) * ( -# 1 - np.array(self.boxes_pvalues))) -# # based on p values, not previously fragmented -# p_value_scores2 = sum(overlaps * log_intensities[i] * ( -# 1 - np.array(self.boxes_pvalues))) -# # get the score -# score = self.boxes_params['theta1'] * new_peaks_score -# score += self.boxes_params['theta2'] * old_peaks_score1 -# score += self.boxes_params['theta3'] * old_peaks_score2 -# if self.boxes_pvalues is not None: -# score += self.boxes_params['theta4'] * p_value_scores1 -# score += self.boxes_params['theta5'] * p_value_scores2 -# score *= time_filter[i] -# # check intensity meets minimal requirement -# score *= intensity_filter -# score *= (score > self.boxes_params[ -# 'min_score']) # check meets min score -# initial_scores.append(score[0]) -# initial_scores = np.array(initial_scores) -# else: -# initial_scores = self._get_dda_scores() -# -# scores = self._get_top_N_scores(initial_scores) -# return scores - - -############################################################################### -# Other Functions -############################################################################### - -# maybe unused? -# def get_peak_status(mzs, rt, boxes, scores, model_scores=None, box_mz_tol=10): -# if model_scores is not None: -# list1 = list( -# filter(lambda x: x[0].rt_range_in_seconds[0] <= rt <= x[0].rt_range_in_seconds[1], -# zip(boxes, scores, model_scores))) -# model_score_status = [] -# else: -# list1 = list( -# filter(lambda x: x[0].rt_range_in_seconds[0] <= rt <= x[0].rt_range_in_seconds[1], -# zip(boxes, scores))) -# model_score_status = None -# peak_status = [] -# for mz in mzs: -# list2 = list(filter( -# lambda x: x[0].mz_range[0] * (1 - box_mz_tol / 1e6) <= mz <= x[0].mz_range[1] * ( -# 1 + box_mz_tol / 1e6), list1)) -# if list2 == []: -# peak_status.append(-1) -# if model_scores is not None: -# model_score_status.append(1) -# else: -# scores = [x[1] for x in list2] -# peak_status.append(min(scores)) -# if model_scores is not None: -# m_scores = [x[2] for x in list2] -# model_score_status.append(max(m_scores)) -# return peak_status, model_score_status - - -# maybe unused? -# def get_box_intensity(mzml_file, boxes): -# intensities = [0 for i in range(len(boxes))] -# mzs = [None for i in range(len(boxes))] -# box_ids = range(len(boxes)) -# mz_file = MZMLFile(mzml_file) -# for scan in mz_file.scans: -# if scan.ms_level == 2: -# continue -# rt = scan.rt_in_seconds -# zipped_boxes = list( -# filter(lambda x: x[0].rt_range_in_seconds[0] <= rt <= x[0].rt_range_in_seconds[1], -# zip(boxes, box_ids))) -# if not zipped_boxes: -# continue -# for mzint in scan.peaks: -# mz = mzint[0] -# sub_boxes = list( -# filter(lambda x: x[0].mz_range[0] <= mz <= x[0].mz_range[1], -# zipped_boxes)) -# if not sub_boxes: -# continue -# for box in sub_boxes: -# intensity = mzint[1] -# if intensity > intensities[box[1]]: -# intensities[box[1]] = intensity -# mzs[box[1]] = mz -# return intensities, mzs diff --git a/vimms/Controller/topN.py b/vimms/Controller/topN.py index 4ddb4494..8964cac1 100644 --- a/vimms/Controller/topN.py +++ b/vimms/Controller/topN.py @@ -9,6 +9,7 @@ from ms_deisotope.deconvolution.utils import prepare_peaklist from ms_deisotope.deconvolution import deconvolute_peaks + class TopNController(Controller): """ A controller that implements the standard Top-N DDA fragmentation strategy. @@ -36,7 +37,13 @@ def __init__(self, ionisation_mode, N, isolation_width, mz_tol, rt_tol, advanced_params: an [vimms.Controller.base.AdvancedParams][] object that contains advanced parameters to control the mass spec. If left to None, default values will be used. - force_N: whether to always force N fragmentations + force_N: whether to always force N fragmentations. + exclude_after_n_times; allow ions to NOT be excluded up to n_times. + exclude_t0: time for initial exclusion check. + deisotope: whether to perform isotopic deconvolution, necessary for proteomics. + charge_range: the charge state of ions to keep. + min_fit_score: minimum score to keep from doing isotope deconvolution. + penalty_factor: penalty factor for scoring during isotope deconvolution. """ super().__init__(advanced_params=advanced_params) @@ -81,20 +88,21 @@ def __init__(self, ionisation_mode, N, isolation_width, mz_tol, rt_tol, self.min_fit_score = min_fit_score self.penalty_factor = penalty_factor - def _process_scan(self, scan): - # if there's a previous ms1 scan to process - new_tasks = [] - fragmented_count = 0 - if self.deisotope: scorer = PenalizedMSDeconVFitter( minimum_score=self.min_fit_score, penalty_factor=self.penalty_factor, mass_error_tolerance=0.00002 ) - dc = {'scorer': scorer} + self.dc = {'scorer': scorer} + + def _process_scan(self, scan): + # if there's a previous ms1 scan to process + new_tasks = [] + fragmented_count = 0 if self.scan_to_process is not None: + assert self.scan_to_process == scan # original scan data mzs = self.scan_to_process.mzs @@ -102,16 +110,9 @@ def _process_scan(self, scan): assert mzs.shape == intensities.shape rt = self.scan_to_process.rt + # perform isotope deconvolution, necessary for proteomics data if self.deisotope: - pl = prepare_peaklist((mzs, intensities)) - ps = deconvolute_peaks(pl, decon_config=dc, charge_range=self.charge_range) - mzs = [] - intensities = [] - for peak in ps.peak_set.peaks: - mzs.append(peak.mz) - intensities.append(peak.intensity) - mzs = np.array(mzs) - intensities = np.array(intensities) + mzs, intensities = self._deisotope(mzs, intensities) # loop over points in decreasing intensity idx = np.argsort(intensities)[::-1] @@ -186,6 +187,13 @@ def _process_scan(self, scan): self.scan_to_process = None return new_tasks + def _deisotope(self, mzs, intensities): + pl = prepare_peaklist((mzs, intensities)) + ps = deconvolute_peaks(pl, decon_config=self.dc, charge_range=self.charge_range) + mzs = np.array([peak.mz for peak in ps.peak_set.peaks]) + intensities = np.array([peak.intensity for peak in ps.peak_set.peaks]) + return mzs, intensities + def update_state_after_scan(self, scan): pass @@ -224,9 +232,13 @@ class WeightedDEWController(TopNController): def __init__(self, ionisation_mode, N, isolation_width, mz_tol, rt_tol, min_ms1_intensity, ms1_shift=0, - exclusion_t_0=15, log_intensity=False, advanced_params=None): + exclusion_t_0=15, log_intensity=False, + deisotope=False, charge_range=(2, 6), min_fit_score=160, penalty_factor=1.0, + advanced_params=None): super().__init__(ionisation_mode, N, isolation_width, mz_tol, rt_tol, min_ms1_intensity, ms1_shift=ms1_shift, + deisotope=deisotope, charge_range=charge_range, + min_fit_score=min_fit_score, penalty_factor=penalty_factor, advanced_params=advanced_params) self.log_intensity = log_intensity self.exclusion = WeightedDEWExclusion(mz_tol, rt_tol, exclusion_t_0) @@ -240,6 +252,10 @@ def _process_scan(self, scan): intensities = self.scan_to_process.intensities rt = self.scan_to_process.rt + # perform isotope deconvolution, necessary for proteomics data + if self.deisotope: + mzs, intensities = self._deisotope(mzs, intensities) + if not self.log_intensity: mzi = [ScanItem(mz, intensities[i]) for i, mz in enumerate(mzs) if diff --git a/vimms/Exclusion.py b/vimms/Exclusion.py index a14d7932..821a7171 100644 --- a/vimms/Exclusion.py +++ b/vimms/Exclusion.py @@ -385,7 +385,8 @@ def __init__(self, mz_tol, rt_tol, exclusion_t_0): """ super().__init__(mz_tol, rt_tol) self.exclusion_t_0 = exclusion_t_0 - assert self.exclusion_t_0 <= self.rt_tol + if self.exclusion_t_0 > self.rt_tol: + raise ValueError('exclusion_t_0 must be lte rt_tol') def is_excluded(self, mz, rt): boxes = self.dynamic_exclusion.check_point(mz, rt) diff --git a/vimms/scripts/openms_optimise.py b/vimms/scripts/openms_optimise.py index 73925698..8dcd7b15 100644 --- a/vimms/scripts/openms_optimise.py +++ b/vimms/scripts/openms_optimise.py @@ -1,6 +1,8 @@ import os import sys +from vimms.Roi import RoiBuilderParams, SmartRoiParams + sys.path.append('..') sys.path.append('../..') # if running in this folder @@ -15,13 +17,14 @@ from optuna.visualization import plot_optimization_history, plot_param_importances from vimms.MassSpec import IndependentMassSpectrometer -from vimms.Controller import TopNController, AdvancedParams +from vimms.Controller import TopNController, AdvancedParams, TopN_SmartRoiController, WeightedDEWController from vimms.Environment import Environment from vimms.Common import POSITIVE, create_if_not_exist, \ set_log_level_warning, set_log_level_debug, save_obj from vimms.scripts.openms_evaluate import extract_boxes, evaluate_fragmentation from vimms.scripts.topN_test import get_input_filenames, extract_chems, extract_scan_timing -from vimms.scripts.openms_optimise_params import ParametersBuilder, TopNParameters +from vimms.scripts.openms_optimise_params import ParametersBuilder, TopNParameters, SmartROIParameters, \ + WeightedDEWParameters class TopNSimulator: @@ -39,11 +42,11 @@ def __init__(self, args, out_dir, pbar=False): self.intensity_array = np.zeros((len(self.N_values), len(self.RT_TOL_values))) def simulate(self, n, rt_tol, exclude_t0): - params = (ParametersBuilder(TopNParameters.debug) - .set('N', n) - .set('RT_TOL', rt_tol) - .set('EXCLUDE_T0', exclude_t0) - .build()) + params = (ParametersBuilder(TopNParameters) + .set('N', n) + .set('RT_TOL', rt_tol) + .set('EXCLUDE_T0', exclude_t0) + .build()) # your simulation code here... out_file = f'topN_N_{params.N}_DEW_{params.RT_TOL}_exclude_t0_{params.EXCLUDE_T0}.mzML' @@ -153,11 +156,176 @@ def objective(self, trial): report = self.simulate(n, rt_tol, exclude_t0) self.results[(n, rt_tol, exclude_t0)] = report - # Access args.optimize + # decide which metric to optimise if self.args.optuna_optimise == 'coverage_prop': - return report['cumulative_coverage_proportion'][0] # Optuna minimizes by default + return report['cumulative_coverage_proportion'][0] elif self.args.optuna_optimise == 'intensity_prop': - return report['cumulative_intensity_proportion'][0] # Optuna minimizes by default + return report['cumulative_intensity_proportion'][0] + else: + raise ValueError(f"Invalid optimisation choice: {self.args.optuna_optimise}. " + f"Choose 'coverage_prop' or 'intensity_prop'.") + + +class SmartROISimulator: + def __init__(self, args, out_dir, pbar=False): + self.args = args + self.out_dir = out_dir + self.pbar = pbar + + # for grid search + self.N_value = 15 # copy best value from TopN + self.RT_TOL_value = 5 # copy best value from TopN + self.IIF_values = [2, 3, 5, 10, 1e3, 1e6] + self.DP_values = [0, 0.1, 0.5, 1, 5, 10] + + self.results = {} + self.coverage_array = np.zeros((len(self.IIF_values), len(self.DP_values))) + self.intensity_array = np.zeros((len(self.IIF_values), len(self.DP_values))) + + def simulate(self, n, rt_tol, iif, dp): + params = (ParametersBuilder(SmartROIParameters) + .set('N', n) + .set('RT_TOL', rt_tol) + .set('IIF', iif) + .set('DP', dp) + .build()) + + # your simulation code here... + out_file = f'SmartROI_N_{params.N}_DEW_{params.RT_TOL}_IIF_{params.IIF}_DP_{params.DP}.mzML' + self.run_simulation(params, dataset, st, self.out_dir, out_file) + mzml_file = os.path.join(self.out_dir, out_file) + + logger.debug(f'Now processing fragmentation file {mzml_file}') + eva = evaluate_fragmentation(csv_file, mzml_file, params.ISOLATION_WINDOW) + logger.debug(f'N={n} IIF={iif} DP={dp}') + logger.debug(eva.summarise(min_intensity=params.MIN_MS1_INTENSITY)) + + report = eva.evaluation_report(min_intensity=params.MIN_MS1_INTENSITY) + return report + + def run_simulation(self, params, dataset, st, out_dir, out_file): + # Top-N parameters + rt_range = [(params.MIN_RT, params.MAX_RT)] + min_rt = rt_range[0][0] + max_rt = rt_range[0][1] + isolation_window = params.ISOLATION_WINDOW + N = params.N + rt_tol = params.RT_TOL + mz_tol = params.MZ_TOL + min_ms1_intensity = params.MIN_MS1_INTENSITY + min_fit_score = params.MIN_FIT_SCORE + penalty_factor = params.PENALTY_FACTOR + default_ms1_scan_window = ( + params.DEFAULT_MS1_SCAN_WINDOW_START, params.DEFAULT_MS1_SCAN_WINDOW_END) + + # DEW, isotope and charge filtering parameters + deisotope = params.DEISOTOPE + charge_range = (params.CHARGE_RANGE_START, params.CHARGE_RANGE_END) + + intensity_increase_factor = params.IIF # fragment ROI again if intensity increases iif fold + drop_perc = params.DP / 100 + min_roi_intensity = params.MIN_ROI_INTENSITY + min_roi_length = params.MIN_ROI_LENGTH + min_roi_length_for_fragmentation = params.MIN_ROI_LENGTH_FOR_FRAGMENTATION + + roi_params = RoiBuilderParams(min_roi_length=min_roi_length, + min_roi_intensity=min_roi_intensity) + smartroi_params = SmartRoiParams(intensity_increase_factor=intensity_increase_factor, + drop_perc=drop_perc, + dew=rt_tol) + + # create controller and mass spec objects + params = AdvancedParams(default_ms1_scan_window=default_ms1_scan_window) + mass_spec = IndependentMassSpectrometer(POSITIVE, dataset, scan_duration=st) + controller = TopN_SmartRoiController( + POSITIVE, + isolation_window, + N, + mz_tol, + rt_tol, + min_ms1_intensity, + roi_params, + smartroi_params, + min_roi_length_for_fragmentation=min_roi_length_for_fragmentation, + ms1_shift=0, + advanced_params=None, + deisotope=deisotope, + charge_range=charge_range, + min_fit_score=min_fit_score, + penalty_factor=penalty_factor) + + # create an environment to run both the mass spec and controller + env = Environment(mass_spec, controller, min_rt, max_rt, progress_bar=self.pbar) + + # set the log level to WARNING so we don't see too many messages when environment is running + set_log_level_warning() + + # run the simulation + env.run() + set_log_level_debug() + env.write_mzML(out_dir, out_file) + + def grid_search(self): + logger.debug(f'Performing grid search using IIF={self.IIF_values} and DP={self.DP_values}') + n = self.N_value + rt_tol = self.RT_TOL_value + for i, iif in enumerate(self.IIF_values): + for j, dp in enumerate(self.DP_values): + # simulate and evaluate the combination of N and RT_TOL + report = self.simulate(n, rt_tol, iif, dp) + self.results[(n, rt_tol, iif, dp)] = report + + # store the results + coverage_prop = report['cumulative_coverage_proportion'] + intensity_prop = report['cumulative_intensity_proportion'] + self.coverage_array[i, j] = coverage_prop[0] + self.intensity_array[i, j] = intensity_prop[0] + + def save_grid_search_results(self): + logger.debug(f'Saving grid search results to {self.out_dir}') + + # save pickled results + data = { + 'topN_optimise_results.p': self.results, + 'topN_coverage_array.p': self.coverage_array, + 'topN_intensity_array.p': self.intensity_array + } + for filename, data_obj in data.items(): + save_obj(data_obj, os.path.join(self.out_dir, filename)) + + # save heatmap + fig, axs = plt.subplots(2, 1, figsize=(10, 10)) + data = [ + (self.coverage_array, 'Coverage Proportion'), + (self.intensity_array, 'Intensity Proportion') + ] + for i, (array, title) in enumerate(data): + sns.heatmap(array, ax=axs[i], cbar_ax=axs[i].inset_axes([1.05, 0.1, 0.05, 0.8])) + axs[i].set_title(title) + axs[i].set_xticklabels(self.DP_values) + axs[i].set_yticklabels(self.IIF_values) + axs[i].set_xlabel('Drop percent') + axs[i].set_ylabel('Intensity Increase Factor') + + plt.tight_layout() + fig.savefig(os.path.join(self.out_dir, 'heatmap.png'), dpi=300) + + def objective(self, trial): + # define the space for hyperparameters + n = trial.suggest_int('N', 5, 30, step=5) + rt_tol = trial.suggest_int('RT_TOL', 5, 300, step=5) + iif = trial.suggest_categorical('IIF', [2, 3, 5, 10, 1e2, 1e3, 1e6]) + dp = trial.suggest_categorical('DP', [0, 0.1, 0.5, 1, 5, 10]) + + # simulate and evaluate the combination of N and RT_TOL + report = self.simulate(n, rt_tol, iif, dp) + self.results[(n, rt_tol, iif, dp)] = report + + # decide which metric to optimise + if self.args.optuna_optimise == 'coverage_prop': + return report['cumulative_coverage_proportion'][0] + elif self.args.optuna_optimise == 'intensity_prop': + return report['cumulative_intensity_proportion'][0] else: raise ValueError(f"Invalid optimisation choice: {self.args.optuna_optimise}. " f"Choose 'coverage_prop' or 'intensity_prop'.") @@ -182,12 +350,159 @@ def save_study(study, results, out_dir): fig2.write_image(os.path.join(out_dir, f'study_param_importances.png')) +class WeightedDEWSimulator: + def __init__(self, args, out_dir, pbar=False): + self.args = args + self.out_dir = out_dir + self.pbar = pbar + + # for grid search + self.N_value = 15 # copy best value from TopN + self.RT_TOL_values = [5, 10, 15, 30, 60, 120, 180, 240, 300] + self.EXCLUDE_T0_values = [1, 3, 10, 15, 30, 60] + self.results = {} + self.coverage_array = np.zeros((len(self.EXCLUDE_T0_values), len(self.RT_TOL_values))) + self.intensity_array = np.zeros((len(self.EXCLUDE_T0_values), len(self.RT_TOL_values))) + + def simulate(self, n, rt_tol, exclude_t0): + params = (ParametersBuilder(WeightedDEWParameters) + .set('N', n) + .set('RT_TOL', rt_tol) + .set('EXCLUDE_T0', exclude_t0) + .build()) + + # your simulation code here... + out_file = f'WeightedDEW_N_{params.N}_DEW_{params.RT_TOL}_exclude_t0_{params.EXCLUDE_T0}.mzML' + try: + self.run_simulation(params, dataset, st, self.out_dir, out_file) + except ValueError: # catch invalid combination of values for WeightedDEW + report = { + 'cumulative_coverage_proportion': [0.0], + 'cumulative_intensity_proportion': [0.0] + } + return report + + mzml_file = os.path.join(self.out_dir, out_file) + + logger.debug(f'Now processing fragmentation file {mzml_file}') + eva = evaluate_fragmentation(csv_file, mzml_file, params.ISOLATION_WINDOW) + logger.debug(f'N={n} RT_TOL={rt_tol} exclude_t0={exclude_t0}') + logger.debug(eva.summarise(min_intensity=params.MIN_MS1_INTENSITY)) + + report = eva.evaluation_report(min_intensity=params.MIN_MS1_INTENSITY) + return report + + def run_simulation(self, params, dataset, st, out_dir, out_file): + # Top-N parameters + rt_range = [(params.MIN_RT, params.MAX_RT)] + min_rt = rt_range[0][0] + max_rt = rt_range[0][1] + isolation_window = params.ISOLATION_WINDOW + N = params.N + rt_tol = params.RT_TOL + mz_tol = params.MZ_TOL + min_ms1_intensity = params.MIN_MS1_INTENSITY + min_fit_score = params.MIN_FIT_SCORE + penalty_factor = params.PENALTY_FACTOR + default_ms1_scan_window = ( + params.DEFAULT_MS1_SCAN_WINDOW_START, params.DEFAULT_MS1_SCAN_WINDOW_END) + + # DEW, isotope and charge filtering parameters + exclude_t0 = params.EXCLUDE_T0 + deisotope = params.DEISOTOPE + charge_range = (params.CHARGE_RANGE_START, params.CHARGE_RANGE_END) + + # create controller and mass spec objects + params = AdvancedParams(default_ms1_scan_window=default_ms1_scan_window) + mass_spec = IndependentMassSpectrometer(POSITIVE, dataset, scan_duration=st) + controller = WeightedDEWController( + POSITIVE, N, isolation_window, mz_tol, rt_tol, min_ms1_intensity, + exclusion_t_0=exclude_t0, log_intensity=True, + deisotope=deisotope, charge_range=charge_range, + min_fit_score=min_fit_score, penalty_factor=penalty_factor, + advanced_params=params) + + # create an environment to run both the mass spec and controller + env = Environment(mass_spec, controller, min_rt, max_rt, progress_bar=self.pbar) + + # set the log level to WARNING so we don't see too many messages when environment is running + set_log_level_warning() + + # run the simulation + env.run() + set_log_level_debug() + env.write_mzML(out_dir, out_file) + + def grid_search(self): + logger.debug(f'Performing grid search using EXCLUDE_T0={self.EXCLUDE_T0_values} ' + f'and RT_TOL={self.RT_TOL_values}') + n = self.N_value + for i, exclude_t0 in enumerate(self.EXCLUDE_T0_values): + for j, rt_tol in enumerate(self.RT_TOL_values): + # simulate and evaluate the combination of N and RT_TOL + report = self.simulate(n, rt_tol, exclude_t0) + self.results[(n, rt_tol, exclude_t0)] = report + + # store the results + coverage_prop = report['cumulative_coverage_proportion'] + intensity_prop = report['cumulative_intensity_proportion'] + self.coverage_array[i, j] = coverage_prop[0] + self.intensity_array[i, j] = intensity_prop[0] + + def save_grid_search_results(self): + logger.debug(f'Saving grid search results to {self.out_dir}') + + # save pickled results + data = { + 'topN_optimise_results.p': self.results, + 'topN_coverage_array.p': self.coverage_array, + 'topN_intensity_array.p': self.intensity_array + } + for filename, data_obj in data.items(): + save_obj(data_obj, os.path.join(self.out_dir, filename)) + + # save heatmap + fig, axs = plt.subplots(2, 1, figsize=(10, 10)) + data = [ + (self.coverage_array, 'Coverage Proportion'), + (self.intensity_array, 'Intensity Proportion') + ] + for i, (array, title) in enumerate(data): + sns.heatmap(array, ax=axs[i], cbar_ax=axs[i].inset_axes([1.05, 0.1, 0.05, 0.8])) + axs[i].set_title(title) + axs[i].set_xticklabels(self.RT_TOL_values) + axs[i].set_yticklabels(self.EXCLUDE_T0_values) + axs[i].set_xlabel('RT TOL') + axs[i].set_ylabel('Exclude t0') + + plt.tight_layout() + fig.savefig(os.path.join(self.out_dir, 'heatmap.png'), dpi=300) + + def objective(self, trial): + # define the space for hyperparameters + n = trial.suggest_int('N', 5, 30, step=5) + rt_tol = trial.suggest_int('RT_TOL', 5, 300, step=5) + exclude_t0 = trial.suggest_int('EXCLUDE_t0', 5, 60, step=5) + + # simulate and evaluate the combination of N and RT_TOL + report = self.simulate(n, rt_tol, exclude_t0) + self.results[(n, rt_tol, exclude_t0)] = report + + # decide which metric to optimise + if self.args.optuna_optimise == 'coverage_prop': + return report['cumulative_coverage_proportion'][0] + elif self.args.optuna_optimise == 'intensity_prop': + return report['cumulative_intensity_proportion'][0] + else: + raise ValueError(f"Invalid optimisation choice: {self.args.optuna_optimise}. " + f"Choose 'coverage_prop' or 'intensity_prop'.") + if __name__ == '__main__': parser = argparse.ArgumentParser(description='Optimise controllers on proteomics data using ViMMS') # chemical extraction and simulation parameters parser.add_argument('seed_file', type=str) - parser.add_argument('--method', type=str, default='topN') # valid choices are 'topN', 'SmartROI' or 'WeightedDEW' + parser.add_argument('--method', type=str, default='TopN') # valid choices are 'topN', 'SmartROI' or 'WeightedDEW' parser.add_argument('--at_least_one_point_above', type=float, default=1E5, help='The minimum intensity value for ROI extraction.') parser.add_argument('--num_bins', type=int, default=20, @@ -224,7 +539,15 @@ def save_study(study, results, out_dir): dataset = extract_chems(args.seed_file, chem_file, args.at_least_one_point_above) st = extract_scan_timing(args.seed_file, st_file, args.num_bins) - simulator = TopNSimulator(args, out_dir, pbar=args.pbar) + # create the simulator class + assert args.method in ['topN', 'SmartROI', 'WeightedDEW'] + sim_dict = { + 'topN': TopNSimulator(args, out_dir, pbar=args.pbar), + 'SmartROI': SmartROISimulator(args, out_dir, pbar=args.pbar), + 'WeightedDEW': WeightedDEWSimulator(args, out_dir, pbar=args.pbar) + } + simulator = sim_dict[args.method] + if args.optuna_use: db_name = os.path.abspath(study_file) storage_name = f'sqlite:///{db_name}' diff --git a/vimms/scripts/openms_optimise_params.py b/vimms/scripts/openms_optimise_params.py index f72d3188..afab9afb 100644 --- a/vimms/scripts/openms_optimise_params.py +++ b/vimms/scripts/openms_optimise_params.py @@ -31,12 +31,16 @@ class TopNParameters(CommonParameters): @dataclass class SmartROIParameters(CommonParameters): - IIF_VALUES: float = 1e3 - DP_VALUES: float = 0.1 + IIF: float = 10 + DP: float = 0.1 MIN_ROI_INTENSITY: int = 500 MIN_ROI_LENGTH: int = 0 MIN_ROI_LENGTH_FOR_FRAGMENTATION: int = 0 +@dataclass +class WeightedDEWParameters(CommonParameters): + EXCLUDE_T0: int = 15 + class ParametersBuilder: def __init__(self, parameters_class): self.parameters = parameters_class() From 985f80098378c3845db10ddb0b601171510712dd Mon Sep 17 00:00:00 2001 From: Joe Wandy Date: Tue, 25 Jul 2023 15:16:15 +0100 Subject: [PATCH 35/67] Fixed import error --- vimms/scripts/openms_optimise.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/vimms/scripts/openms_optimise.py b/vimms/scripts/openms_optimise.py index 8dcd7b15..7eda3f6d 100644 --- a/vimms/scripts/openms_optimise.py +++ b/vimms/scripts/openms_optimise.py @@ -1,8 +1,6 @@ import os import sys -from vimms.Roi import RoiBuilderParams, SmartRoiParams - sys.path.append('..') sys.path.append('../..') # if running in this folder @@ -21,6 +19,7 @@ from vimms.Environment import Environment from vimms.Common import POSITIVE, create_if_not_exist, \ set_log_level_warning, set_log_level_debug, save_obj +from vimms.Roi import RoiBuilderParams, SmartRoiParams from vimms.scripts.openms_evaluate import extract_boxes, evaluate_fragmentation from vimms.scripts.topN_test import get_input_filenames, extract_chems, extract_scan_timing from vimms.scripts.openms_optimise_params import ParametersBuilder, TopNParameters, SmartROIParameters, \ From 26f9ec6a748509af6f72cbdf752b59d0fc14bcd1 Mon Sep 17 00:00:00 2001 From: Joe Wandy Date: Tue, 25 Jul 2023 21:13:15 +0100 Subject: [PATCH 36/67] typo --- vimms/scripts/openms_optimise.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/vimms/scripts/openms_optimise.py b/vimms/scripts/openms_optimise.py index 7eda3f6d..c1c2df28 100644 --- a/vimms/scripts/openms_optimise.py +++ b/vimms/scripts/openms_optimise.py @@ -501,7 +501,7 @@ def objective(self, trial): # chemical extraction and simulation parameters parser.add_argument('seed_file', type=str) - parser.add_argument('--method', type=str, default='TopN') # valid choices are 'topN', 'SmartROI' or 'WeightedDEW' + parser.add_argument('--method', type=str, default='topN') # valid choices are 'topN', 'SmartROI' or 'WeightedDEW' parser.add_argument('--at_least_one_point_above', type=float, default=1E5, help='The minimum intensity value for ROI extraction.') parser.add_argument('--num_bins', type=int, default=20, From a5396853b2a1ed28037a65792a53215d2fc30cf2 Mon Sep 17 00:00:00 2001 From: Joe Wandy Date: Wed, 26 Jul 2023 16:15:31 +0100 Subject: [PATCH 37/67] Make a new Scan object after deisotoping, rather than doing a deep copy (slow!) --- vimms/Controller/roi.py | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/vimms/Controller/roi.py b/vimms/Controller/roi.py index f4af108d..a15f984a 100644 --- a/vimms/Controller/roi.py +++ b/vimms/Controller/roi.py @@ -15,6 +15,7 @@ WeightedDEWExclusion, DEWFilter, WeightedDEWFilter ) +from vimms.MassSpec import Scan from vimms.Roi import RoiBuilder @@ -147,9 +148,7 @@ def _process_scan(self, scan): intensities = self.scan_to_process.intensities assert mzs.shape == intensities.shape mzs, intensities = self._deisotope(mzs, intensities) - scan = copy.deepcopy(scan) - scan.mzs = mzs - scan.intensities = intensities + scan = Scan(scan.scan_id, mzs, intensities, scan.ms_level, scan.rt) # keep growing ROIs if we encounter a new ms1 scan self.roi_builder.update_roi(scan) From 7253674000f33219ea0f728c6d6f4629c56dcc4c Mon Sep 17 00:00:00 2001 From: Joe Wandy Date: Wed, 26 Jul 2023 23:28:44 +0100 Subject: [PATCH 38/67] Updated parameters --- vimms/scripts/openms_optimise.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/vimms/scripts/openms_optimise.py b/vimms/scripts/openms_optimise.py index c1c2df28..4072635e 100644 --- a/vimms/scripts/openms_optimise.py +++ b/vimms/scripts/openms_optimise.py @@ -172,8 +172,8 @@ def __init__(self, args, out_dir, pbar=False): self.pbar = pbar # for grid search - self.N_value = 15 # copy best value from TopN - self.RT_TOL_value = 5 # copy best value from TopN + self.N_value = 30 # copy best value from TopN + self.RT_TOL_value = 45 # copy best value from TopN self.IIF_values = [2, 3, 5, 10, 1e3, 1e6] self.DP_values = [0, 0.1, 0.5, 1, 5, 10] @@ -356,7 +356,7 @@ def __init__(self, args, out_dir, pbar=False): self.pbar = pbar # for grid search - self.N_value = 15 # copy best value from TopN + self.N_value = 30 # copy best value from TopN self.RT_TOL_values = [5, 10, 15, 30, 60, 120, 180, 240, 300] self.EXCLUDE_T0_values = [1, 3, 10, 15, 30, 60] self.results = {} From e3d2033b19ba4c1f629408e0f45d0382bb5f9b7c Mon Sep 17 00:00:00 2001 From: Joe Wandy Date: Wed, 26 Jul 2023 23:37:43 +0100 Subject: [PATCH 39/67] Updated parameters --- vimms/scripts/openms_optimise.py | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/vimms/scripts/openms_optimise.py b/vimms/scripts/openms_optimise.py index 4072635e..2c59b3a5 100644 --- a/vimms/scripts/openms_optimise.py +++ b/vimms/scripts/openms_optimise.py @@ -33,8 +33,8 @@ def __init__(self, args, out_dir, pbar=False): self.pbar = pbar # for grid search - self.N_values = [5, 10, 15, 20, 25, 30] - self.RT_TOL_values = [5, 10, 15, 30, 60, 120, 180, 240, 300] + self.N_values = [5, 10, 15, 20, 25, 30, 35, 40, 45, 50] + self.RT_TOL_values = [5, 10, 15, 30, 60, 120, 180] self.EXCLUDE_T0_value = 15 self.results = {} self.coverage_array = np.zeros((len(self.N_values), len(self.RT_TOL_values))) @@ -147,9 +147,9 @@ def save_grid_search_results(self): def objective(self, trial): # define the space for hyperparameters - n = trial.suggest_int('N', 5, 30, step=5) - rt_tol = trial.suggest_int('RT_TOL', 5, 300, step=5) - exclude_t0 = trial.suggest_int('EXCLUDE_t0', 5, 60, step=5) + n = trial.suggest_categorical('N', [5, 10, 15, 20, 25, 30, 35, 40, 45, 50]) + rt_tol = trial.suggest_categorical('RT_TOL', [5, 10, 15, 30, 45, 60, 120, 180, 240, 300]) + exclude_t0 = trial.suggest_categorical('EXCLUDE_t0', [5, 10, 15, 30, 45, 60]) # simulate and evaluate the combination of N and RT_TOL report = self.simulate(n, rt_tol, exclude_t0) @@ -311,8 +311,8 @@ def save_grid_search_results(self): def objective(self, trial): # define the space for hyperparameters - n = trial.suggest_int('N', 5, 30, step=5) - rt_tol = trial.suggest_int('RT_TOL', 5, 300, step=5) + n = trial.suggest_categorical('N', [5, 10, 15, 20, 25, 30, 35, 40, 45, 50]) + rt_tol = trial.suggest_categorical('RT_TOL', [5, 10, 15, 30, 45, 60, 120, 180, 240, 300]) iif = trial.suggest_categorical('IIF', [2, 3, 5, 10, 1e2, 1e3, 1e6]) dp = trial.suggest_categorical('DP', [0, 0.1, 0.5, 1, 5, 10]) @@ -479,9 +479,9 @@ def save_grid_search_results(self): def objective(self, trial): # define the space for hyperparameters - n = trial.suggest_int('N', 5, 30, step=5) - rt_tol = trial.suggest_int('RT_TOL', 5, 300, step=5) - exclude_t0 = trial.suggest_int('EXCLUDE_t0', 5, 60, step=5) + n = trial.suggest_categorical('N', [5, 10, 15, 20, 25, 30, 35, 40, 45, 50]) + rt_tol = trial.suggest_categorical('RT_TOL', [5, 10, 15, 30, 45, 60, 120, 180, 240, 300]) + exclude_t0 = trial.suggest_categorical('EXCLUDE_t0', [5, 10, 15, 30, 45, 60]) # simulate and evaluate the combination of N and RT_TOL report = self.simulate(n, rt_tol, exclude_t0) From bfd883e9a9fe9dbc7cf3e4935d30dc91693f65cc Mon Sep 17 00:00:00 2001 From: Joe Wandy Date: Wed, 26 Jul 2023 23:42:55 +0100 Subject: [PATCH 40/67] typo --- vimms/scripts/openms_optimise.py | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/vimms/scripts/openms_optimise.py b/vimms/scripts/openms_optimise.py index 2c59b3a5..197a451d 100644 --- a/vimms/scripts/openms_optimise.py +++ b/vimms/scripts/openms_optimise.py @@ -285,9 +285,9 @@ def save_grid_search_results(self): # save pickled results data = { - 'topN_optimise_results.p': self.results, - 'topN_coverage_array.p': self.coverage_array, - 'topN_intensity_array.p': self.intensity_array + 'SmartROI_optimise_results.p': self.results, + 'SmartROI_coverage_array.p': self.coverage_array, + 'SmartROI_intensity_array.p': self.intensity_array } for filename, data_obj in data.items(): save_obj(data_obj, os.path.join(self.out_dir, filename)) @@ -453,9 +453,9 @@ def save_grid_search_results(self): # save pickled results data = { - 'topN_optimise_results.p': self.results, - 'topN_coverage_array.p': self.coverage_array, - 'topN_intensity_array.p': self.intensity_array + 'WeightedDEW_optimise_results.p': self.results, + 'WeightedDEW_coverage_array.p': self.coverage_array, + 'WeightedDEW_intensity_array.p': self.intensity_array } for filename, data_obj in data.items(): save_obj(data_obj, os.path.join(self.out_dir, filename)) From 78f1bc5daeb979223f5dd5863d7b9ee8d859fae3 Mon Sep 17 00:00:00 2001 From: Joe Wandy Date: Sat, 29 Jul 2023 16:18:58 +0100 Subject: [PATCH 41/67] Code updates for proteomics experiment --- vimms/Common.py | 3 +++ vimms/scripts/multi_sample_experiment.py | 21 +++++++++++++++++++-- vimms/scripts/openms_optimise.py | 6 +++--- 3 files changed, 25 insertions(+), 5 deletions(-) diff --git a/vimms/Common.py b/vimms/Common.py index 82877f0d..1d35ecbf 100644 --- a/vimms/Common.py +++ b/vimms/Common.py @@ -133,6 +133,7 @@ CONTROLLER_FULLSCAN = 'fullscan' CONTROLLER_TOPN = 'topN' +CONTROLLER_TOPN_ORIGINAL = 'topN_original' CONTROLLER_TOPN_EXCLUSION = 'topN_exclusion' CONTROLLER_SWATH = 'SWATH' CONTROLLER_AIF = 'AIF' @@ -140,6 +141,8 @@ CONTROLLER_INTENSITY_NON_OVERLAP = 'intensity_non_overlap' CONTROLLER_INTENSITY_ROI_EXCLUSION = 'intensity_roi_exclusion' CONTROLLER_HARD_ROI_EXCLUSION = 'hard_roi_exclusion' +CONTROLLER_SMART_ROI = 'smart_roi' +CONTROLLER_WEIGHTED_DEW = 'weighted_dew' PEAKS_MZ_IDX = 0 PEAKS_INTENSITY_IDX = 1 diff --git a/vimms/scripts/multi_sample_experiment.py b/vimms/scripts/multi_sample_experiment.py index 9a545ef3..cf4211df 100644 --- a/vimms/scripts/multi_sample_experiment.py +++ b/vimms/scripts/multi_sample_experiment.py @@ -9,8 +9,9 @@ from vimms.Chemicals import ChemicalMixtureFromMZML from vimms.Common import CONTROLLER_FULLSCAN, CONTROLLER_TOPN, CONTROLLER_TOPN_EXCLUSION, \ CONTROLLER_SWATH, CONTROLLER_AIF, CONTROLLER_NON_OVERLAP, CONTROLLER_INTENSITY_NON_OVERLAP, \ - CONTROLLER_INTENSITY_ROI_EXCLUSION, CONTROLLER_HARD_ROI_EXCLUSION -from vimms.Controller import SimpleMs1Controller + CONTROLLER_INTENSITY_ROI_EXCLUSION, CONTROLLER_HARD_ROI_EXCLUSION, CONTROLLER_SMART_ROI, CONTROLLER_WEIGHTED_DEW, \ + CONTROLLER_TOPN_ORIGINAL +from vimms.Controller import SimpleMs1Controller, TopN_SmartRoiController, WeightedDEWController from vimms.Controller import TopNController, AIF, SWATH, AgentBasedController from vimms.Controller.box import NonOverlapController, IntensityNonOverlapController, \ IntensityRoIExcludeController, HardRoIExcludeController @@ -153,8 +154,24 @@ def select_controller(controller_name, experiment_params, agent, grid): elif controller_name == CONTROLLER_TOPN: topN_params = experiment_params['topN_params'] + print(topN_params) controller = TopNController(**topN_params) + elif controller_name == CONTROLLER_TOPN_ORIGINAL: # hack to allow topN with different parameters + topN_params = experiment_params['topN_params_original'] + print(topN_params) + controller = TopNController(**topN_params) + + elif controller_name == CONTROLLER_SMART_ROI: + smartROI_params = experiment_params['smartroi_params'] + print(smartROI_params) + controller = TopN_SmartRoiController(**smartROI_params) + + elif controller_name == CONTROLLER_WEIGHTED_DEW: + weighed_dew_params = experiment_params['weighteddew_params'] + print(weighed_dew_params) + controller = WeightedDEWController(**weighed_dew_params) + elif controller_name == CONTROLLER_TOPN_EXCLUSION: controller = AgentBasedController(agent) diff --git a/vimms/scripts/openms_optimise.py b/vimms/scripts/openms_optimise.py index 197a451d..4735b0df 100644 --- a/vimms/scripts/openms_optimise.py +++ b/vimms/scripts/openms_optimise.py @@ -172,8 +172,8 @@ def __init__(self, args, out_dir, pbar=False): self.pbar = pbar # for grid search - self.N_value = 30 # copy best value from TopN - self.RT_TOL_value = 45 # copy best value from TopN + self.N_value = 50 # copy best value from TopN + self.RT_TOL_value = 60 # copy best value from TopN self.IIF_values = [2, 3, 5, 10, 1e3, 1e6] self.DP_values = [0, 0.1, 0.5, 1, 5, 10] @@ -356,7 +356,7 @@ def __init__(self, args, out_dir, pbar=False): self.pbar = pbar # for grid search - self.N_value = 30 # copy best value from TopN + self.N_value = 50 # copy best value from TopN self.RT_TOL_values = [5, 10, 15, 30, 60, 120, 180, 240, 300] self.EXCLUDE_T0_values = [1, 3, 10, 15, 30, 60] self.results = {} From 0ce1d3ceb861fc630104e78b4aba6a8a77401849 Mon Sep 17 00:00:00 2001 From: Joe Wandy Date: Tue, 1 Aug 2023 15:06:17 +0100 Subject: [PATCH 42/67] Allow blank runs to have different max_time --- vimms/scripts/multi_sample_experiment.py | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/vimms/scripts/multi_sample_experiment.py b/vimms/scripts/multi_sample_experiment.py index cf4211df..d157dab5 100644 --- a/vimms/scripts/multi_sample_experiment.py +++ b/vimms/scripts/multi_sample_experiment.py @@ -29,15 +29,17 @@ def extract_chemicals(seed_file, ionisation_mode): def run_batch(initial_runs, controller_repeat, experiment_params, samples, pbar, max_time, ionisation_mode, use_instrument, use_column, - ref_dir, dataset, out_dir): + ref_dir, dataset, out_dir, initial_run_max_time=None): scan_duration_dict = experiment_params['scan_duration_dict'] # perform initial blank and QC runs here for sample in initial_runs: + initial_run_max_time = max_time if initial_run_max_time is None else initial_run_max_time controller = select_controller(CONTROLLER_FULLSCAN, experiment_params, None, None) out_file = get_out_file(CONTROLLER_FULLSCAN, sample, 0) run_controller(use_instrument, ref_dir, dataset, scan_duration_dict, - pbar, max_time, ionisation_mode, use_column, controller, out_dir, out_file) + pbar, initial_run_max_time, ionisation_mode, use_column, + controller, out_dir, out_file) # loop through each controller for controller_name in controller_repeat: @@ -77,15 +79,17 @@ def run_batch(initial_runs, controller_repeat, experiment_params, samples, # a variant of run_batch but for exhaustive fragmentation (experiment 3) def run_batch_exhaustive(initial_runs, controller_repeat, experiment_params, samples, pbar, max_time, ionisation_mode, use_instrument, use_column, - ref_dir, dataset, out_dir): + ref_dir, dataset, out_dir, initial_run_max_time=None): scan_duration_dict = experiment_params['scan_duration_dict'] # perform initial blank and QC runs here for sample in initial_runs: + initial_run_max_time = max_time if initial_run_max_time is None else initial_run_max_time controller = select_controller(CONTROLLER_FULLSCAN, experiment_params, None, None) out_file = get_out_file(CONTROLLER_FULLSCAN, sample, 0) run_controller(use_instrument, ref_dir, dataset, scan_duration_dict, - pbar, max_time, ionisation_mode, use_column, controller, out_dir, out_file) + pbar, initial_run_max_time, ionisation_mode, + use_column, controller, out_dir, out_file) # loop through each controller for controller_name in controller_repeat: From 0cfb654f03efdca88e175538bddd71c68fe58f04 Mon Sep 17 00:00:00 2001 From: Joe Wandy Date: Mon, 7 Aug 2023 15:31:23 +0100 Subject: [PATCH 43/67] Added debug_mzml option --- vimms/scripts/multi_sample_experiment.py | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/vimms/scripts/multi_sample_experiment.py b/vimms/scripts/multi_sample_experiment.py index d157dab5..80768369 100644 --- a/vimms/scripts/multi_sample_experiment.py +++ b/vimms/scripts/multi_sample_experiment.py @@ -29,7 +29,7 @@ def extract_chemicals(seed_file, ionisation_mode): def run_batch(initial_runs, controller_repeat, experiment_params, samples, pbar, max_time, ionisation_mode, use_instrument, use_column, - ref_dir, dataset, out_dir, initial_run_max_time=None): + ref_dir, dataset, out_dir, initial_run_max_time=None, debug_mzml=None): scan_duration_dict = experiment_params['scan_duration_dict'] # perform initial blank and QC runs here @@ -39,7 +39,7 @@ def run_batch(initial_runs, controller_repeat, experiment_params, samples, out_file = get_out_file(CONTROLLER_FULLSCAN, sample, 0) run_controller(use_instrument, ref_dir, dataset, scan_duration_dict, pbar, initial_run_max_time, ionisation_mode, use_column, - controller, out_dir, out_file) + controller, out_dir, out_file, debug_mzml=debug_mzml) # loop through each controller for controller_name in controller_repeat: @@ -69,7 +69,7 @@ def run_batch(initial_runs, controller_repeat, experiment_params, samples, out_file = get_out_file(controller_name, sample, i) run_controller(use_instrument, ref_dir, dataset, scan_duration_dict, pbar, max_time, ionisation_mode, use_column, controller, out_dir, - out_file) + out_file, debug_mzml=debug_mzml) # fname = os.path.join(out_dir, out_file+'.controller') # save_obj(controller, fname) del controller @@ -79,7 +79,7 @@ def run_batch(initial_runs, controller_repeat, experiment_params, samples, # a variant of run_batch but for exhaustive fragmentation (experiment 3) def run_batch_exhaustive(initial_runs, controller_repeat, experiment_params, samples, pbar, max_time, ionisation_mode, use_instrument, use_column, - ref_dir, dataset, out_dir, initial_run_max_time=None): + ref_dir, dataset, out_dir, initial_run_max_time=None, debug_mzml=None): scan_duration_dict = experiment_params['scan_duration_dict'] # perform initial blank and QC runs here @@ -89,7 +89,7 @@ def run_batch_exhaustive(initial_runs, controller_repeat, experiment_params, sam out_file = get_out_file(CONTROLLER_FULLSCAN, sample, 0) run_controller(use_instrument, ref_dir, dataset, scan_duration_dict, pbar, initial_run_max_time, ionisation_mode, - use_column, controller, out_dir, out_file) + use_column, controller, out_dir, out_file, debug_mzml=debug_mzml) # loop through each controller for controller_name in controller_repeat: @@ -119,7 +119,7 @@ def run_batch_exhaustive(initial_runs, controller_repeat, experiment_params, sam out_file = get_out_file(controller_name, sample, i) run_controller(use_instrument, ref_dir, dataset, scan_duration_dict, pbar, max_time, ionisation_mode, use_column, controller, out_dir, - out_file) + out_file, debug_mzml=debug_mzml) # fname = os.path.join(out_dir, out_file+'.controller') # save_obj(controller, fname) del controller @@ -234,13 +234,14 @@ def get_non_overlap_params(experiment_params): def run_controller(use_instrument, ref_dir, dataset, scan_duration_dict, - pbar, max_time, ionisation_mode, use_column, controller, out_dir, out_file): + pbar, max_time, ionisation_mode, use_column, controller, out_dir, out_file, + debug_mzml=None): logger.warning(out_file) if use_instrument: from vimms_fusion.MassSpec import IAPIMassSpectrometer from vimms_fusion.Environment import IAPIEnvironment - mass_spec = IAPIMassSpectrometer(ionisation_mode, ref_dir, filename=None, + mass_spec = IAPIMassSpectrometer(ionisation_mode, ref_dir, filename=debug_mzml, show_console_logs=False, use_column=use_column) with IAPIEnvironment(mass_spec, controller, max_time, progress_bar=pbar, out_dir=out_dir, From 44535a06e4e2a20c9e785f931d841909b2412879 Mon Sep 17 00:00:00 2001 From: Joe Wandy Date: Wed, 30 Aug 2023 23:22:04 +0100 Subject: [PATCH 44/67] Small changes for evaluation of real experimental data --- vimms/Evaluation.py | 33 +++++++++++++++++--------------- vimms/scripts/openms_evaluate.py | 2 +- vimms/scripts/scan_timings.py | 23 +++++++++++++++++++++- 3 files changed, 41 insertions(+), 17 deletions(-) diff --git a/vimms/Evaluation.py b/vimms/Evaluation.py index 263460e6..4b59d83e 100644 --- a/vimms/Evaluation.py +++ b/vimms/Evaluation.py @@ -602,21 +602,24 @@ def add_info(self, fullscan_name, mzmls, isolation_width=None, max_error=10): if (s.ms_level == 1): current_intensities = [[] for _ in self.chems] - mzs, intensities = zip(*s.peaks) - - for b in geom.get_active_boxes(): - p_idx = bisect.bisect_left(mzs, b.pt1.y) - for ch_idx in box2idxes[b]: - max_intensity = 0 - for i in range(p_idx, len(mzs)): - if (mzs[i] > b.pt2.y): break - current_intensities[ch_idx].append((mzs[i], intensities[i])) - max_intensity = max(max_intensity, intensities[i]) - - new_info[ch_idx, self.MAX_INTENSITY, mzml_idx] = max( - new_info[ch_idx, self.MAX_INTENSITY, mzml_idx], - max_intensity - ) + try: + mzs, intensities = zip(*s.peaks) + + for b in geom.get_active_boxes(): + p_idx = bisect.bisect_left(mzs, b.pt1.y) + for ch_idx in box2idxes[b]: + max_intensity = 0 + for i in range(p_idx, len(mzs)): + if (mzs[i] > b.pt2.y): break + current_intensities[ch_idx].append((mzs[i], intensities[i])) + max_intensity = max(max_intensity, intensities[i]) + + new_info[ch_idx, self.MAX_INTENSITY, mzml_idx] = max( + new_info[ch_idx, self.MAX_INTENSITY, mzml_idx], + max_intensity + ) + except ValueError: + pass else: mz = s.precursor_mz diff --git a/vimms/scripts/openms_evaluate.py b/vimms/scripts/openms_evaluate.py index 7d641bcc..0b430ffc 100644 --- a/vimms/scripts/openms_evaluate.py +++ b/vimms/scripts/openms_evaluate.py @@ -12,7 +12,7 @@ from vimms.Evaluation import RealEvaluator -DEFAULT_OPENMS_DIR = "/Applications/OpenMS-2.8.0/bin" +DEFAULT_OPENMS_DIR = "/Applications/OpenMS-3.0.0/bin" DEFAULT_INI_FILE = "../../batch_files/FeatureFinderCentroided.ini" diff --git a/vimms/scripts/scan_timings.py b/vimms/scripts/scan_timings.py index 8c7deb1d..ad17fe8d 100644 --- a/vimms/scripts/scan_timings.py +++ b/vimms/scripts/scan_timings.py @@ -143,7 +143,28 @@ def plot_deltas(file_timings, files, labels, plot_type='box', remove_outliers=Fa plot_func = sns.boxplot if plot_type == 'box' else sns.violinplot plot_func(ax=ax, data=deltas) ax.set_xticks(range(len(labels))) - ax.set_xticklabels(labels) + ax.set_xticklabels(labels, rotation=90) + + if plot_type == 'violin': + for i, delta in enumerate(deltas): + # Ensure that delta is not empty + if delta.size > 0: + median_val = np.median(delta) + + # Ensure that the median is not NaN + if not np.isnan(median_val): + ax.annotate(f"{median_val:.2f}", + (i, median_val), + xytext=(40, 40), # move the annotation to the side + textcoords='offset points', + ha='center', + va='center', + fontsize=12, + color='red', + weight='bold', + arrowprops=dict(arrowstyle="->", color='red'), + bbox=dict(facecolor='white', edgecolor='none', boxstyle='round,pad=0.2')) + else: # 'scatter' for (rts, deltas), label in zip(data, labels): ax.scatter(rts, deltas, alpha=0.25, label=label, s=5) From 63795dab1250acf2fe506fe3b0be63f297c70438 Mon Sep 17 00:00:00 2001 From: Joe Wandy Date: Wed, 30 Aug 2023 23:23:41 +0100 Subject: [PATCH 45/67] Updated Top-N test script --- vimms/scripts/topN_test.py | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/vimms/scripts/topN_test.py b/vimms/scripts/topN_test.py index 6aaa7db3..40b179e5 100644 --- a/vimms/scripts/topN_test.py +++ b/vimms/scripts/topN_test.py @@ -5,6 +5,7 @@ import os import argparse +import time import numpy as np @@ -66,6 +67,8 @@ def parse_args(): help='The filename of the input mzML file.') parser.add_argument('--out_mzml', type=str, default='output.mzML', help='The filename of the output mzML file.') + parser.add_argument('--show_progress', action='store_true', + help='Show a progress bar during simulation.') args = parser.parse_args() return args @@ -159,7 +162,8 @@ def main(args): create_if_not_exist(out_dir) # Format output file names - chem_file, st_file = get_input_filenames(args.at_least_one_point_above, out_dir) + chem_file, st_file, _, _ = get_input_filenames(args.at_least_one_point_above, None, out_dir) + print(chem_file, st_file) # extract chems and scan timing from mzml file dataset = extract_chems(args.in_mzml, chem_file, args.at_least_one_point_above) @@ -200,8 +204,11 @@ def run_simulation(args, dataset, st, out_dir): exclude_t0=exclude_t0, deisotope=deisotope, charge_range=charge_range, min_fit_score=min_fit_score, penalty_factor=penalty_factor) + # record the starting time + start_time = time.time() + # create an environment to run both the mass spec and controller - env = Environment(mass_spec, controller, min_rt, max_rt, progress_bar=False) + env = Environment(mass_spec, controller, min_rt, max_rt, progress_bar=args.show_progress) # set the log level to WARNING so we don't see too many messages when environment is running set_log_level_warning() @@ -209,6 +216,11 @@ def run_simulation(args, dataset, st, out_dir): # run the simulation env.run() set_log_level_debug() + + # compute and print the elapsed time + elapsed_time = time.time() - start_time + print(f"Simulation took {elapsed_time:.2f} seconds.") + env.write_mzML(out_dir, args.out_mzml) From 2bfdcb44dd20aab98e5ed0684a87a34876bd7734 Mon Sep 17 00:00:00 2001 From: Joe Wandy Date: Wed, 30 Aug 2023 23:24:07 +0100 Subject: [PATCH 46/67] Add the option to use_quick_charge in ms_deisotope --- vimms/Controller/topN.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/vimms/Controller/topN.py b/vimms/Controller/topN.py index 8964cac1..b5a282f1 100644 --- a/vimms/Controller/topN.py +++ b/vimms/Controller/topN.py @@ -21,7 +21,8 @@ def __init__(self, ionisation_mode, N, isolation_width, mz_tol, rt_tol, min_ms1_intensity, ms1_shift=0, initial_exclusion_list=None, advanced_params=None, force_N=False, exclude_after_n_times=1, exclude_t0=0, - deisotope=False, charge_range=(2, 6), min_fit_score=160, penalty_factor=1.0): + deisotope=False, charge_range=(2, 6), min_fit_score=160, penalty_factor=1.0, + use_quick_charge=False): """ Initialise the Top-N controller @@ -87,6 +88,7 @@ def __init__(self, ionisation_mode, N, isolation_width, mz_tol, rt_tol, self.charge_range = charge_range self.min_fit_score = min_fit_score self.penalty_factor = penalty_factor + self.use_quick_charge = use_quick_charge if self.deisotope: scorer = PenalizedMSDeconVFitter( @@ -189,7 +191,8 @@ def _process_scan(self, scan): def _deisotope(self, mzs, intensities): pl = prepare_peaklist((mzs, intensities)) - ps = deconvolute_peaks(pl, decon_config=self.dc, charge_range=self.charge_range) + ps = deconvolute_peaks(pl, decon_config=self.dc, charge_range=self.charge_range, + use_quick_charge=self.use_quick_charge) mzs = np.array([peak.mz for peak in ps.peak_set.peaks]) intensities = np.array([peak.intensity for peak in ps.peak_set.peaks]) return mzs, intensities From 85ae8a9626d8ab0a7ead3a34aa375da4ae458544 Mon Sep 17 00:00:00 2001 From: Joe Wandy Date: Wed, 30 Aug 2023 23:24:56 +0100 Subject: [PATCH 47/67] Set use_quick_charge to True by default --- vimms/Controller/topN.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/vimms/Controller/topN.py b/vimms/Controller/topN.py index b5a282f1..ae31db12 100644 --- a/vimms/Controller/topN.py +++ b/vimms/Controller/topN.py @@ -22,7 +22,7 @@ def __init__(self, ionisation_mode, N, isolation_width, mz_tol, rt_tol, ms1_shift=0, initial_exclusion_list=None, advanced_params=None, force_N=False, exclude_after_n_times=1, exclude_t0=0, deisotope=False, charge_range=(2, 6), min_fit_score=160, penalty_factor=1.0, - use_quick_charge=False): + use_quick_charge=True): """ Initialise the Top-N controller From 89397216570a8fc043b7645fee7e7e042a4e1655 Mon Sep 17 00:00:00 2001 From: Joe Wandy Date: Wed, 30 Aug 2023 23:37:25 +0100 Subject: [PATCH 48/67] Added the script for grid-search ms_deisotope parameter on HeLa data --- .../scripts/check_score_threshold_1E4_hela.py | 111 ++++++++++++++++++ 1 file changed, 111 insertions(+) create mode 100644 vimms/scripts/check_score_threshold_1E4_hela.py diff --git a/vimms/scripts/check_score_threshold_1E4_hela.py b/vimms/scripts/check_score_threshold_1E4_hela.py new file mode 100644 index 00000000..6953a3f5 --- /dev/null +++ b/vimms/scripts/check_score_threshold_1E4_hela.py @@ -0,0 +1,111 @@ +# TopN on the HeLA data + +import sys +sys.path.append('/home/joewandy/vimms') + +import os +import numpy as np +import seaborn as sns +from tqdm import tqdm + +from vimms.Common import set_log_level_warning, create_if_not_exist +from vimms.scripts.scan_timings import count_stuff, plot_num_scans, compute_similarity +from vimms.scripts.check_fragmented_ions import plot_num_ms2_scans, plot_histograms +from vimms.scripts.check_fragmented_ions import compare_histograms, BlockDeconvoluter, plot_heatmaps +from mass_spec_utils.data_import.mzml import MZMLFile + +### Setup Parameters +seed_mzml_file = '/home/joewandy/data/HELA_20ng_1ul__sol_3.mzML' +rt_range = [(0, 7200)] +min_rt = rt_range[0][0] +max_rt = rt_range[0][1] + +real_input_file = seed_mzml_file +real_mzs, real_rts, real_intensities, real_cumsum_ms1, real_cumsum_ms2 = count_stuff( + real_input_file, min_rt, max_rt) + +max_blocks = int(1E6) +discard_first = True + +hela_mzml_file = MZMLFile(real_input_file) +hela_bd = BlockDeconvoluter(hela_mzml_file, max_blocks=max_blocks, discard_first=discard_first) + +# Check results mzML files +result_dir = os.path.abspath('hela_results') +plot_dir = os.path.abspath('hela_plots') +create_if_not_exist(plot_dir) + +sns.set_context('poster') +set_log_level_warning() + +charge = (2, 6) +labels = ['HeLA (true)', 'HeLA (simulated)'] +show_plot = False + +scores = [20, 40, 60, 80, 100, 120, 140, 160, 180, 200] +penalty_factors = ['0.25', '0.50', '0.75', '1.0', '1.25', '1.50', '1.75', '2.0'] + +# scores = [120, 160] +# penalty_factors = ['1.0', '2.0'] + +# Initialize arrays to track values +rmse_ms1_array = np.zeros((len(scores), len(penalty_factors))) +rmse_ms2_array = np.zeros((len(scores), len(penalty_factors))) +sum_of_abs_diff_array = np.zeros((len(scores), len(penalty_factors))) + +# Total number of combinations of scores and penalty factors +total_combinations = len(scores) * len(penalty_factors) + +# Initialize tqdm +pbar = tqdm(total=total_combinations, desc="Processing combinations") + +for i, score in enumerate(scores): + for j, penalty in enumerate(penalty_factors): + + out_base = f'hela_1E4_{charge[0]}_{charge[1]}_{score}_{penalty}' + simulated_input_file = os.path.join(result_dir, out_base, 'output.mzML') + # print(simulated_input_file) + + cumsum_scans_out = os.path.join(plot_dir, f'{out_base}_cumsum_scans.png') + num_ms2_scans_scatter_out = os.path.join(plot_dir, f'{out_base}_num_ms2_scans_scatter.png') + num_ms2_scans_histogram_out = os.path.join(plot_dir, f'{out_base}_num_ms2_scans_histogram.png') + + if os.path.exists(simulated_input_file): + + simulated_mzs, simulated_rts, simulated_intensities, simulated_cumsum_ms1, simulated_cumsum_ms2 = count_stuff( + simulated_input_file, min_rt, max_rt) + + plot_num_scans(real_cumsum_ms1, real_cumsum_ms2, simulated_cumsum_ms1, simulated_cumsum_ms2, + out_file=cumsum_scans_out, show_plot=show_plot) + + # compute RMSE of cumulative number of MS1 and MS2 scans + rmse_ms1 = np.sqrt(compute_similarity(real_cumsum_ms1, simulated_cumsum_ms1)) + rmse_ms2 = np.sqrt(compute_similarity(real_cumsum_ms2, simulated_cumsum_ms2)) + + simulated_mz_file = MZMLFile(simulated_input_file) + simulated_bd = BlockDeconvoluter(simulated_mz_file, max_blocks=max_blocks, discard_first=discard_first) + + # compute sum of absolute difference of the two histograms of MS2 scans + plot_num_ms2_scans(hela_bd, simulated_bd, labels, s=40, lo=0, hi=100, + out_file=num_ms2_scans_scatter_out, show_plot=show_plot) + plot_histograms(hela_bd, simulated_bd, labels, + out_file=num_ms2_scans_histogram_out, show_plot=show_plot) + sum_of_abs_diff = compare_histograms(hela_bd, simulated_bd) + + # Record the values + rmse_ms1_array[i, j] = rmse_ms1 + rmse_ms2_array[i, j] = rmse_ms2 + sum_of_abs_diff_array[i, j] = sum_of_abs_diff + + # print(f'score={score} penalty={penalty} rmse_ms1={rmse_ms1} rmse_ms2={rmse_ms2} num_ms2_diff={sum_of_abs_diff}') + + else: + print(f"The file {simulated_input_file} does not exist.") + + # Once done processing a combination, update the progress bar + pbar.update() + +# Close the progress bar once all combinations have been processed +pbar.close() +out_heatmap = os.path.join(plot_dir, 'heatmap.png') +plot_heatmaps(rmse_ms1_array, rmse_ms2_array, sum_of_abs_diff_array, scores, penalty_factors, out_file=out_heatmap, show_plot=show_plot) \ No newline at end of file From a8b9aa81ed3418a3a9629c1c32927fb9f52b7afb Mon Sep 17 00:00:00 2001 From: Joe Wandy Date: Wed, 30 Aug 2023 23:52:34 +0100 Subject: [PATCH 49/67] Fixed path --- vimms/scripts/check_score_threshold_1E4_hela.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/vimms/scripts/check_score_threshold_1E4_hela.py b/vimms/scripts/check_score_threshold_1E4_hela.py index 6953a3f5..daaeab5a 100644 --- a/vimms/scripts/check_score_threshold_1E4_hela.py +++ b/vimms/scripts/check_score_threshold_1E4_hela.py @@ -31,8 +31,9 @@ hela_bd = BlockDeconvoluter(hela_mzml_file, max_blocks=max_blocks, discard_first=discard_first) # Check results mzML files -result_dir = os.path.abspath('hela_results') -plot_dir = os.path.abspath('hela_plots') +base_dir = '/datastore/joewandy/check_score_threshold_1E4_hela' +result_dir = os.path.abspath(os.path.join(base_dir, 'hela_results')) +plot_dir = os.path.abspath(os.path.join(base_dir, 'hela_plots')) create_if_not_exist(plot_dir) sns.set_context('poster') From 6096ed64bf5f8ac860edce3a8ae219ae2bda3993 Mon Sep 17 00:00:00 2001 From: Joe Wandy Date: Wed, 30 Aug 2023 23:53:04 +0100 Subject: [PATCH 50/67] Enable use_quick_charge --- vimms/scripts/check_fragmented_ions.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/vimms/scripts/check_fragmented_ions.py b/vimms/scripts/check_fragmented_ions.py index 0f205d06..6c406c94 100644 --- a/vimms/scripts/check_fragmented_ions.py +++ b/vimms/scripts/check_fragmented_ions.py @@ -272,8 +272,10 @@ def deconvolute_blocks(self, decon_config=None): intensities = np.array([peak[1] for peak in ms1_scan.peaks]) charge_range = (2, 6) + use_quick_charge = True pl = prepare_peaklist((mzs, intensities)) - ps = deconvolute_peaks(pl, decon_config=decon_config, charge_range=charge_range) + ps = deconvolute_peaks(pl, decon_config=decon_config, charge_range=charge_range, + use_quick_charge=use_quick_charge) df = self._peaks_to_dataframe(ps.peak_set.peaks, precursors=precursors) self.dfs.append(df) From d30af3102419732df4c40480739ede74a8d952e8 Mon Sep 17 00:00:00 2001 From: unknown Date: Sun, 3 Sep 2023 13:03:47 +0100 Subject: [PATCH 51/67] No more NaNs when there are boxes with zero intensity --- vimms/Evaluation.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/vimms/Evaluation.py b/vimms/Evaluation.py index 4b59d83e..9cfba586 100644 --- a/vimms/Evaluation.py +++ b/vimms/Evaluation.py @@ -203,7 +203,9 @@ def evaluation_report(self, min_intensity=None): cumulative_coverage_prop = np.sum(cumulative_coverage, axis=1) / num_chems max_coverage_intensities = np.amax(max_possible_intensities, axis=0) - which_obtainable = max_coverage_intensities >= min_intensity + which_obtainable = ( + (max_coverage_intensities >= min_intensity) * (max_coverage_intensities > 0.0) + ) max_obtainable = max_coverage_intensities[np.newaxis, which_obtainable] coverage_intensity_prop = np.mean( From 7a43f2ed8d068b7343c7d7e0a7f1a9d78ee9cd82 Mon Sep 17 00:00:00 2001 From: unknown Date: Mon, 4 Sep 2023 17:07:32 +0100 Subject: [PATCH 52/67] Proteomics with topNEXt controllers --- vimms/Controller/box.py | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/vimms/Controller/box.py b/vimms/Controller/box.py index fd8af47f..db4309b3 100644 --- a/vimms/Controller/box.py +++ b/vimms/Controller/box.py @@ -40,7 +40,11 @@ def __init__(self, register_all_roi=False, scoring_params=GRID_CONTROLLER_SCORING_PARAMS, exclusion_method=ROI_EXCLUSION_DEW, - exclusion_t_0=None): + exclusion_t_0=None, + deisotope=False, + charge_range=(2, 6), + min_fit_score=160, + penalty_factor=1.0): """ Create a grid controller. @@ -68,6 +72,10 @@ def __init__(self, used to describe how to perform dynamic exclusion so that precursors that have been fragmented are not fragmented again. exclusion_t_0: parameter for WeightedDEW exclusion (refer to paper for details). + deisotope: whether to perform isotopic deconvolution, necessary for proteomics. + charge_range: the charge state of ions to keep. + min_fit_score: minimum score to keep from doing isotope deconvolution. + penalty_factor: penalty factor for scoring during isotope deconvolution. """ super().__init__(ionisation_mode, isolation_width, @@ -81,7 +89,12 @@ def __init__(self, ms1_shift=ms1_shift, advanced_params=advanced_params, exclusion_method=exclusion_method, - exclusion_t_0=exclusion_t_0) + exclusion_t_0=exclusion_t_0, + deisotope=deisotope, + charge_range=charge_range, + min_fit_score=min_fit_score, + penalty_factor=penalty_factor + ) self.roi_builder = RoiBuilder(roi_params, smartroi_params=smartroi_params) self.grid = grid # helps us understand previous RoIs From 8a1937fdc0a5deaf2af3e034eca52726eaa90d5e Mon Sep 17 00:00:00 2001 From: Joe Wandy Date: Tue, 5 Sep 2023 00:44:09 +0100 Subject: [PATCH 53/67] 1.5x deconvolution speed-up maybe, without losing much quality --- vimms/Controller/topN.py | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/vimms/Controller/topN.py b/vimms/Controller/topN.py index ae31db12..26c493b9 100644 --- a/vimms/Controller/topN.py +++ b/vimms/Controller/topN.py @@ -1,13 +1,19 @@ import numpy as np from loguru import logger -from ms_deisotope import MSDeconVFitter, PenalizedMSDeconVFitter +from ms_deisotope import ( + MSDeconVFitter, + PenalizedMSDeconVFitter, + AveraginePeakDependenceGraphDeconvoluter, + AveragineDeconvoluter, +) +from ms_deisotope.deconvolution.peak_retention_strategy import PeakRetentionStrategyBase from vimms.Common import DUMMY_PRECURSOR_MZ from vimms.Controller.base import Controller from vimms.Exclusion import TopNExclusion, WeightedDEWExclusion from ms_deisotope.deconvolution.utils import prepare_peaklist -from ms_deisotope.deconvolution import deconvolute_peaks +from ms_deisotope.deconvolution import deconvolute_peaks, TopNRetentionStrategy class TopNController(Controller): @@ -22,7 +28,7 @@ def __init__(self, ionisation_mode, N, isolation_width, mz_tol, rt_tol, ms1_shift=0, initial_exclusion_list=None, advanced_params=None, force_N=False, exclude_after_n_times=1, exclude_t0=0, deisotope=False, charge_range=(2, 6), min_fit_score=160, penalty_factor=1.0, - use_quick_charge=True): + use_quick_charge=False): """ Initialise the Top-N controller @@ -192,7 +198,10 @@ def _process_scan(self, scan): def _deisotope(self, mzs, intensities): pl = prepare_peaklist((mzs, intensities)) ps = deconvolute_peaks(pl, decon_config=self.dc, charge_range=self.charge_range, - use_quick_charge=self.use_quick_charge) + deconvoluter_type=AveragineDeconvoluter, + truncate_after=0.80, + incremental_truncation=0.80, + ignore_below=self.min_ms1_intensity) mzs = np.array([peak.mz for peak in ps.peak_set.peaks]) intensities = np.array([peak.intensity for peak in ps.peak_set.peaks]) return mzs, intensities From 91a9a7a30d29bd3dd73637fafb5382114b4843b0 Mon Sep 17 00:00:00 2001 From: Joe Wandy Date: Tue, 5 Sep 2023 01:10:32 +0100 Subject: [PATCH 54/67] Allow use_quick_charge to be passed as a parameter --- vimms/Controller/topN.py | 7 ++++--- vimms/scripts/topN_test.py | 6 +++++- vimms/scripts/topN_test_hela.sh | 6 +++--- 3 files changed, 12 insertions(+), 7 deletions(-) diff --git a/vimms/Controller/topN.py b/vimms/Controller/topN.py index 26c493b9..9067814c 100644 --- a/vimms/Controller/topN.py +++ b/vimms/Controller/topN.py @@ -27,8 +27,8 @@ def __init__(self, ionisation_mode, N, isolation_width, mz_tol, rt_tol, min_ms1_intensity, ms1_shift=0, initial_exclusion_list=None, advanced_params=None, force_N=False, exclude_after_n_times=1, exclude_t0=0, - deisotope=False, charge_range=(2, 6), min_fit_score=160, penalty_factor=1.0, - use_quick_charge=False): + deisotope=False, charge_range=(2, 6), min_fit_score=160, penalty_factor=3.0, + use_quick_charge=True): """ Initialise the Top-N controller @@ -201,7 +201,8 @@ def _deisotope(self, mzs, intensities): deconvoluter_type=AveragineDeconvoluter, truncate_after=0.80, incremental_truncation=0.80, - ignore_below=self.min_ms1_intensity) + ignore_below=self.min_ms1_intensity, + use_quick_charge=self.use_quick_charge) mzs = np.array([peak.mz for peak in ps.peak_set.peaks]) intensities = np.array([peak.intensity for peak in ps.peak_set.peaks]) return mzs, intensities diff --git a/vimms/scripts/topN_test.py b/vimms/scripts/topN_test.py index 40b179e5..18441039 100644 --- a/vimms/scripts/topN_test.py +++ b/vimms/scripts/topN_test.py @@ -61,6 +61,8 @@ def parse_args(): help='The minimum fit score from ms_deconvolve.') parser.add_argument('--penalty_factor', type=float, default=1.5, help='Penalty factor for ms_deconvolve.') + parser.add_argument('--use_quick_charge', action='store_true', + help='Whether to use quick charge for deconvolution.') parser.add_argument('--out_dir', type=str, default='topN_test', help='The directory where the output files will be stored.') parser.add_argument('--in_mzml', type=str, default='BSA_100fmol__recon_1ul_1.mzML', @@ -202,7 +204,9 @@ def run_simulation(args, dataset, st, out_dir): POSITIVE, N, isolation_window, mz_tol, rt_tol, min_ms1_intensity, advanced_params=params, exclude_after_n_times=exclude_after_n_times, exclude_t0=exclude_t0, deisotope=deisotope, charge_range=charge_range, - min_fit_score=min_fit_score, penalty_factor=penalty_factor) + min_fit_score=min_fit_score, penalty_factor=penalty_factor, + use_quick_charge=args.use_quick_charge + ) # record the starting time start_time = time.time() diff --git a/vimms/scripts/topN_test_hela.sh b/vimms/scripts/topN_test_hela.sh index 71912bea..5f6ad8de 100755 --- a/vimms/scripts/topN_test_hela.sh +++ b/vimms/scripts/topN_test_hela.sh @@ -12,7 +12,7 @@ charge_range_start="2" charge_range_end="6" # An array of min_fit_scores and penalty factors -min_fit_scores=( "20" "40" "60" "80" "100" "120" "140" "160" "180" "200" ) +min_fit_scores=( "50" "100" "150" "200" "250" "300" "350" "400" ) # An array of penalty factors penalty_factors=( "0.25" "0.50" "0.75" "1.0" "1.25" "1.50" "1.75" "2.0" ) @@ -42,14 +42,14 @@ for score in "${min_fit_scores[@]}"; do fi # Run the script in the background if --parallel is specified if [ "$parallel" = true ]; then - python topN_test.py --in_mzml $in_mzml --at_least_one_point_above $at_least_one_point_above --charge_range_start $charge_range_start --charge_range_end $charge_range_end --out_dir $out_dir --min_fit_score $score --penalty_factor $penalty & + python topN_test.py --in_mzml $in_mzml --at_least_one_point_above $at_least_one_point_above --charge_range_start $charge_range_start --charge_range_end $charge_range_end --out_dir $out_dir --min_fit_score $score --penalty_factor $penalty --use_quick_charge & ((job_count++)) # If we've reached 10 jobs, wait for any job to complete if (( job_count % 10 == 0 )); then wait -n fi else - python topN_test.py --in_mzml $in_mzml --at_least_one_point_above $at_least_one_point_above --charge_range_start $charge_range_start --charge_range_end $charge_range_end --out_dir $out_dir --min_fit_score $score --penalty_factor $penalty + python topN_test.py --in_mzml $in_mzml --at_least_one_point_above $at_least_one_point_above --charge_range_start $charge_range_start --charge_range_end $charge_range_end --out_dir $out_dir --min_fit_score $score --penalty_factor $penalty --use_quick_charge fi done done From 55e13f03adab70dfeaaa2c29d0bd75bf55e95b0a Mon Sep 17 00:00:00 2001 From: Joe Wandy Date: Tue, 5 Sep 2023 22:58:38 +0100 Subject: [PATCH 55/67] Update script --- vimms/scripts/check_score_threshold_1E4_hela.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/vimms/scripts/check_score_threshold_1E4_hela.py b/vimms/scripts/check_score_threshold_1E4_hela.py index daaeab5a..c809da96 100644 --- a/vimms/scripts/check_score_threshold_1E4_hela.py +++ b/vimms/scripts/check_score_threshold_1E4_hela.py @@ -43,7 +43,7 @@ labels = ['HeLA (true)', 'HeLA (simulated)'] show_plot = False -scores = [20, 40, 60, 80, 100, 120, 140, 160, 180, 200] +scores = [50, 100, 150, 200, 250, 300, 350, 400] penalty_factors = ['0.25', '0.50', '0.75', '1.0', '1.25', '1.50', '1.75', '2.0'] # scores = [120, 160] From 2ae71f1a9481faee75915afc8c4fec2654adf08a Mon Sep 17 00:00:00 2001 From: Joe Wandy Date: Wed, 6 Sep 2023 08:53:13 +0100 Subject: [PATCH 56/67] Faster parameters for deconvlution --- vimms/Controller/topN.py | 7 +------ vimms/scripts/topN_test.py | 14 +++++++++++--- 2 files changed, 12 insertions(+), 9 deletions(-) diff --git a/vimms/Controller/topN.py b/vimms/Controller/topN.py index 9067814c..225696bc 100644 --- a/vimms/Controller/topN.py +++ b/vimms/Controller/topN.py @@ -197,12 +197,7 @@ def _process_scan(self, scan): def _deisotope(self, mzs, intensities): pl = prepare_peaklist((mzs, intensities)) - ps = deconvolute_peaks(pl, decon_config=self.dc, charge_range=self.charge_range, - deconvoluter_type=AveragineDeconvoluter, - truncate_after=0.80, - incremental_truncation=0.80, - ignore_below=self.min_ms1_intensity, - use_quick_charge=self.use_quick_charge) + ps = deconvolute_peaks(pl, decon_config=self.dc, charge_range=self.charge_range) mzs = np.array([peak.mz for peak in ps.peak_set.peaks]) intensities = np.array([peak.intensity for peak in ps.peak_set.peaks]) return mzs, intensities diff --git a/vimms/scripts/topN_test.py b/vimms/scripts/topN_test.py index 18441039..6e1b4b95 100644 --- a/vimms/scripts/topN_test.py +++ b/vimms/scripts/topN_test.py @@ -71,6 +71,8 @@ def parse_args(): help='The filename of the output mzML file.') parser.add_argument('--show_progress', action='store_true', help='Show a progress bar during simulation.') + parser.add_argument('--num_repeats', type=int, default=1, + help='The number of times the simulation is repeated.') args = parser.parse_args() return args @@ -171,9 +173,14 @@ def main(args): dataset = extract_chems(args.in_mzml, chem_file, args.at_least_one_point_above) st = extract_scan_timing(args.in_mzml, st_file, args.num_bins) - # simulate Top-N - run_simulation(args, dataset, st, out_dir) + # simulate Top-N multiple times + elapsed_times = [] # List to store elapsed time of each run + for i in range(args.num_repeats): + elapsed_time = run_simulation(args, dataset, st, out_dir) + elapsed_times.append(elapsed_time) + avg_elapsed_time = sum(elapsed_times) / len(elapsed_times) + print(f"On average, simulation took {avg_elapsed_time:.2f} seconds.") def run_simulation(args, dataset, st, out_dir): @@ -223,9 +230,10 @@ def run_simulation(args, dataset, st, out_dir): # compute and print the elapsed time elapsed_time = time.time() - start_time - print(f"Simulation took {elapsed_time:.2f} seconds.") + print(f"Simulation run took {elapsed_time:.2f} seconds.") env.write_mzML(out_dir, args.out_mzml) + return elapsed_time if __name__ == '__main__': From 84614912c2584e48996f15d9bc8107026d68ebb0 Mon Sep 17 00:00:00 2001 From: Joe Wandy Date: Wed, 6 Sep 2023 09:37:20 +0100 Subject: [PATCH 57/67] Better defaults --- vimms/Controller/box.py | 28 +++++++++++++++------------- vimms/Controller/roi.py | 23 ++++++++++++++--------- vimms/Controller/topN.py | 8 ++++---- 3 files changed, 33 insertions(+), 26 deletions(-) diff --git a/vimms/Controller/box.py b/vimms/Controller/box.py index db4309b3..3cabb91a 100644 --- a/vimms/Controller/box.py +++ b/vimms/Controller/box.py @@ -43,8 +43,9 @@ def __init__(self, exclusion_t_0=None, deisotope=False, charge_range=(2, 6), - min_fit_score=160, - penalty_factor=1.0): + min_fit_score=80, + penalty_factor=1.5, + use_quick_charge=False): """ Create a grid controller. @@ -93,7 +94,8 @@ def __init__(self, deisotope=deisotope, charge_range=charge_range, min_fit_score=min_fit_score, - penalty_factor=penalty_factor + penalty_factor=penalty_factor, + use_quick_charge=use_quick_charge ) self.roi_builder = RoiBuilder(roi_params, smartroi_params=smartroi_params) @@ -104,7 +106,7 @@ def __init__(self, def update_state_after_scan(self, scan): super().update_state_after_scan(scan) self.grid.send_training_data(scan) - + def _set_fragmented(self, i, roi_id, rt, intensity): super()._set_fragmented(i, roi_id, rt, intensity) self.grid.register_roi(self.roi_builder.live_roi[i]) @@ -113,7 +115,7 @@ def _get_scores(self): if(self.roi_builder.live_roi != []): rt = max(r.max_rt for r in self.roi_builder.live_roi) self.grid.set_active_boxes(rt) - + non_overlaps = self._overlap_scores() if self.roi_builder.roi_type == ROI_TYPE_SMART: # smart ROI scoring smartroi_scores = self._smartroi_filter() @@ -139,7 +141,7 @@ def _get_scores(self): if(self.roi_builder.live_roi != []): rt = max(r.max_rt for r in self.roi_builder.live_roi) self.grid.set_active_boxes(rt) - + overlap_scores = self._overlap_scores() if self.roi_builder.roi_type == ROI_TYPE_SMART: smartroi_scores = self._smartroi_filter() @@ -173,7 +175,7 @@ def after_injection_cleanup(self): ) ) super().after_injection_cleanup() - + class HardRoIExcludeController(TopNEXtController): def _overlap_scores(self): @@ -197,7 +199,7 @@ def _overlap_scores(self): else: new_intensities.append(log(r_intensity) - log(max(b.intensity for b in boxes))) return new_intensities - + class NonOverlapController(TopNEXtController): """ @@ -221,11 +223,11 @@ def _overlap_scores(self): r, self.roi_builder.current_roi_intensities[i], self.scoring_params - ) + ) for i, r in enumerate(self.roi_builder.live_roi) ]) return new_intensities - + class FlexibleNonOverlapController(TopNEXtController): """ @@ -275,7 +277,7 @@ def _overlap_scores(self): r, self.roi_builder.current_roi_intensities[i], self.scoring_params - ) + ) for i, r in enumerate(self.roi_builder.live_roi) ] return scores @@ -326,10 +328,10 @@ def __init__(self, def _get_scores(self): scores = [ self.grid.case_control_non_overlap( - r, + r, self.current_roi_intensities[i], self.scoring_params - ) + ) for i, r in enumerate(self.live_roi) ] return self._get_top_N_scores(scores * self._score_filters()) diff --git a/vimms/Controller/roi.py b/vimms/Controller/roi.py index a15f984a..64e3f985 100644 --- a/vimms/Controller/roi.py +++ b/vimms/Controller/roi.py @@ -38,8 +38,9 @@ def __init__(self, ionisation_mode, isolation_width, exclusion_t_0=None, deisotope=False, charge_range=(2, 6), - min_fit_score=160, - penalty_factor=1.0): + min_fit_score=80, + penalty_factor=1.5, + use_quick_charge=False): """ Initialise an ROI-based controller Args: @@ -71,7 +72,7 @@ def __init__(self, ionisation_mode, isolation_width, super().__init__(ionisation_mode, N, isolation_width, mz_tol, rt_tol, min_ms1_intensity, ms1_shift=ms1_shift, deisotope=deisotope, charge_range=charge_range, - min_fit_score=min_fit_score, penalty_factor=penalty_factor, + min_fit_score=min_fit_score, penalty_factor=penalty_factor, use_quick_charge=use_quick_charge, advanced_params=advanced_params) self.min_roi_length_for_fragmentation = min_roi_length_for_fragmentation # noqa self.roi_builder = RoiBuilder(roi_params, smartroi_params=smartroi_params) @@ -307,8 +308,9 @@ def __init__(self, exclusion_t_0=None, deisotope=False, charge_range=(2, 6), - min_fit_score=160, - penalty_factor=1.0): + min_fit_score=80, + penalty_factor=1.5, + use_quick_charge=False): """ Initialise the Top-N SmartROI controller. @@ -353,7 +355,8 @@ def __init__(self, deisotope=deisotope, charge_range=charge_range, min_fit_score=min_fit_score, - penalty_factor=penalty_factor) + penalty_factor=penalty_factor, + use_quick_charge=use_quick_charge) def _get_dda_scores(self): return self._log_roi_intensities() * self._min_intensity_filter() * \ @@ -385,8 +388,9 @@ def __init__(self, exclusion_t_0=None, deisotope=False, charge_range=(2, 6), - min_fit_score=160, - penalty_factor=1.0): + min_fit_score=80, + penalty_factor=1.5, + use_quick_charge=False): """ Initialise the Top-N SmartROI controller. @@ -428,7 +432,8 @@ def __init__(self, deisotope=deisotope, charge_range=charge_range, min_fit_score=min_fit_score, - penalty_factor=penalty_factor) + penalty_factor=penalty_factor, + use_quick_charge=use_quick_charge) def _get_scores(self): initial_scores = self._get_dda_scores() diff --git a/vimms/Controller/topN.py b/vimms/Controller/topN.py index 225696bc..ca423f7b 100644 --- a/vimms/Controller/topN.py +++ b/vimms/Controller/topN.py @@ -27,8 +27,8 @@ def __init__(self, ionisation_mode, N, isolation_width, mz_tol, rt_tol, min_ms1_intensity, ms1_shift=0, initial_exclusion_list=None, advanced_params=None, force_N=False, exclude_after_n_times=1, exclude_t0=0, - deisotope=False, charge_range=(2, 6), min_fit_score=160, penalty_factor=3.0, - use_quick_charge=True): + deisotope=False, charge_range=(2, 6), min_fit_score=80, penalty_factor=1.5, + use_quick_charge=False): """ Initialise the Top-N controller @@ -241,12 +241,12 @@ class WeightedDEWController(TopNController): def __init__(self, ionisation_mode, N, isolation_width, mz_tol, rt_tol, min_ms1_intensity, ms1_shift=0, exclusion_t_0=15, log_intensity=False, - deisotope=False, charge_range=(2, 6), min_fit_score=160, penalty_factor=1.0, + deisotope=False, charge_range=(2, 6), min_fit_score=80, penalty_factor=1.5, use_quick_charge=False, advanced_params=None): super().__init__(ionisation_mode, N, isolation_width, mz_tol, rt_tol, min_ms1_intensity, ms1_shift=ms1_shift, deisotope=deisotope, charge_range=charge_range, - min_fit_score=min_fit_score, penalty_factor=penalty_factor, + min_fit_score=min_fit_score, penalty_factor=penalty_factor, use_quick_charge=use_quick_charge, advanced_params=advanced_params) self.log_intensity = log_intensity self.exclusion = WeightedDEWExclusion(mz_tol, rt_tol, exclusion_t_0) From 78210eb860a1358df5b037b6c0142f223962ed92 Mon Sep 17 00:00:00 2001 From: Joe Wandy Date: Tue, 19 Sep 2023 23:12:25 +0100 Subject: [PATCH 58/67] Much faster isotope deconvolution by reducing default charge range from (2, 6) to (2, 3). --- vimms/Controller/box.py | 2 +- vimms/Controller/roi.py | 6 ++--- vimms/Controller/topN.py | 22 +++++++++---------- vimms/scripts/check_fragmented_ions.py | 8 ++++--- .../scripts/check_score_threshold_1E4_hela.py | 2 +- vimms/scripts/openms_optimise_params.py | 2 +- vimms/scripts/topN_test.py | 2 +- vimms/scripts/topN_test_bsa.sh | 2 +- vimms/scripts/topN_test_hela.sh | 4 ++-- 9 files changed, 26 insertions(+), 24 deletions(-) diff --git a/vimms/Controller/box.py b/vimms/Controller/box.py index 3cabb91a..432c1efe 100644 --- a/vimms/Controller/box.py +++ b/vimms/Controller/box.py @@ -42,7 +42,7 @@ def __init__(self, exclusion_method=ROI_EXCLUSION_DEW, exclusion_t_0=None, deisotope=False, - charge_range=(2, 6), + charge_range=(2, 3), min_fit_score=80, penalty_factor=1.5, use_quick_charge=False): diff --git a/vimms/Controller/roi.py b/vimms/Controller/roi.py index 64e3f985..d042d5f7 100644 --- a/vimms/Controller/roi.py +++ b/vimms/Controller/roi.py @@ -37,7 +37,7 @@ def __init__(self, ionisation_mode, isolation_width, exclusion_method=ROI_EXCLUSION_DEW, exclusion_t_0=None, deisotope=False, - charge_range=(2, 6), + charge_range=(2, 3), min_fit_score=80, penalty_factor=1.5, use_quick_charge=False): @@ -307,7 +307,7 @@ def __init__(self, exclusion_method=ROI_EXCLUSION_DEW, exclusion_t_0=None, deisotope=False, - charge_range=(2, 6), + charge_range=(2, 3), min_fit_score=80, penalty_factor=1.5, use_quick_charge=False): @@ -387,7 +387,7 @@ def __init__(self, exclusion_method=ROI_EXCLUSION_DEW, exclusion_t_0=None, deisotope=False, - charge_range=(2, 6), + charge_range=(2, 3), min_fit_score=80, penalty_factor=1.5, use_quick_charge=False): diff --git a/vimms/Controller/topN.py b/vimms/Controller/topN.py index ca423f7b..ec6c517d 100644 --- a/vimms/Controller/topN.py +++ b/vimms/Controller/topN.py @@ -1,20 +1,16 @@ import numpy as np from loguru import logger from ms_deisotope import ( - MSDeconVFitter, PenalizedMSDeconVFitter, - AveraginePeakDependenceGraphDeconvoluter, AveragineDeconvoluter, ) -from ms_deisotope.deconvolution.peak_retention_strategy import PeakRetentionStrategyBase +from ms_deisotope.deconvolution import deconvolute_peaks +from ms_deisotope.deconvolution.utils import prepare_peaklist from vimms.Common import DUMMY_PRECURSOR_MZ from vimms.Controller.base import Controller from vimms.Exclusion import TopNExclusion, WeightedDEWExclusion -from ms_deisotope.deconvolution.utils import prepare_peaklist -from ms_deisotope.deconvolution import deconvolute_peaks, TopNRetentionStrategy - class TopNController(Controller): """ @@ -27,7 +23,7 @@ def __init__(self, ionisation_mode, N, isolation_width, mz_tol, rt_tol, min_ms1_intensity, ms1_shift=0, initial_exclusion_list=None, advanced_params=None, force_N=False, exclude_after_n_times=1, exclude_t0=0, - deisotope=False, charge_range=(2, 6), min_fit_score=80, penalty_factor=1.5, + deisotope=False, charge_range=(2, 3), min_fit_score=80, penalty_factor=1.5, use_quick_charge=False): """ Initialise the Top-N controller @@ -197,9 +193,13 @@ def _process_scan(self, scan): def _deisotope(self, mzs, intensities): pl = prepare_peaklist((mzs, intensities)) - ps = deconvolute_peaks(pl, decon_config=self.dc, charge_range=self.charge_range) - mzs = np.array([peak.mz for peak in ps.peak_set.peaks]) - intensities = np.array([peak.intensity for peak in ps.peak_set.peaks]) + dt = AveragineDeconvoluter + ps = deconvolute_peaks(pl, decon_config=self.dc, charge_range=self.charge_range, + deconvoluter_type=dt, use_quick_charge=self.use_quick_charge) + + peaks = ps.peak_set.peaks + mzs = np.array([peak.mz for peak in peaks]) + intensities = np.array([peak.intensity for peak in peaks]) return mzs, intensities def update_state_after_scan(self, scan): @@ -241,7 +241,7 @@ class WeightedDEWController(TopNController): def __init__(self, ionisation_mode, N, isolation_width, mz_tol, rt_tol, min_ms1_intensity, ms1_shift=0, exclusion_t_0=15, log_intensity=False, - deisotope=False, charge_range=(2, 6), min_fit_score=80, penalty_factor=1.5, use_quick_charge=False, + deisotope=False, charge_range=(2, 3), min_fit_score=80, penalty_factor=1.5, use_quick_charge=False, advanced_params=None): super().__init__(ionisation_mode, N, isolation_width, mz_tol, rt_tol, min_ms1_intensity, ms1_shift=ms1_shift, diff --git a/vimms/scripts/check_fragmented_ions.py b/vimms/scripts/check_fragmented_ions.py index 6c406c94..4bdad2d0 100644 --- a/vimms/scripts/check_fragmented_ions.py +++ b/vimms/scripts/check_fragmented_ions.py @@ -4,6 +4,7 @@ import numpy as np import pandas as pd import seaborn as sns +from ms_deisotope import AveragineDeconvoluter from ms_deisotope.deconvolution import deconvolute_peaks from ms_deisotope.deconvolution.utils import prepare_peaklist from tqdm import tqdm @@ -271,11 +272,12 @@ def deconvolute_blocks(self, decon_config=None): mzs = np.array([peak[0] for peak in ms1_scan.peaks]) intensities = np.array([peak[1] for peak in ms1_scan.peaks]) - charge_range = (2, 6) - use_quick_charge = True + charge_range = (2, 3) + use_quick_charge = False + dt = AveragineDeconvoluter pl = prepare_peaklist((mzs, intensities)) ps = deconvolute_peaks(pl, decon_config=decon_config, charge_range=charge_range, - use_quick_charge=use_quick_charge) + deconvoluter_type=dt, use_quick_charge=use_quick_charge) df = self._peaks_to_dataframe(ps.peak_set.peaks, precursors=precursors) self.dfs.append(df) diff --git a/vimms/scripts/check_score_threshold_1E4_hela.py b/vimms/scripts/check_score_threshold_1E4_hela.py index c809da96..daaeab5a 100644 --- a/vimms/scripts/check_score_threshold_1E4_hela.py +++ b/vimms/scripts/check_score_threshold_1E4_hela.py @@ -43,7 +43,7 @@ labels = ['HeLA (true)', 'HeLA (simulated)'] show_plot = False -scores = [50, 100, 150, 200, 250, 300, 350, 400] +scores = [20, 40, 60, 80, 100, 120, 140, 160, 180, 200] penalty_factors = ['0.25', '0.50', '0.75', '1.0', '1.25', '1.50', '1.75', '2.0'] # scores = [120, 160] diff --git a/vimms/scripts/openms_optimise_params.py b/vimms/scripts/openms_optimise_params.py index afab9afb..afbfa3ef 100644 --- a/vimms/scripts/openms_optimise_params.py +++ b/vimms/scripts/openms_optimise_params.py @@ -9,7 +9,7 @@ class BaseParameters: DEFAULT_MS1_SCAN_WINDOW_END: float = 2000.0 DEISOTOPE: bool = True CHARGE_RANGE_START: int = 2 - CHARGE_RANGE_END: int = 6 + CHARGE_RANGE_END: int = 3 MIN_FIT_SCORE: int = 80 PENALTY_FACTOR: float = 1.5 diff --git a/vimms/scripts/topN_test.py b/vimms/scripts/topN_test.py index 6e1b4b95..e4658f33 100644 --- a/vimms/scripts/topN_test.py +++ b/vimms/scripts/topN_test.py @@ -55,7 +55,7 @@ def parse_args(): help='Whether to perform deisotoping or not.') parser.add_argument('--charge_range_start', type=int, default=2, help='The start of the charge range for filtering.') - parser.add_argument('--charge_range_end', type=int, default=6, + parser.add_argument('--charge_range_end', type=int, default=3, help='The end of the charge range for filtering.') parser.add_argument('--min_fit_score', type=int, default=80, help='The minimum fit score from ms_deconvolve.') diff --git a/vimms/scripts/topN_test_bsa.sh b/vimms/scripts/topN_test_bsa.sh index 53438896..47ad1966 100755 --- a/vimms/scripts/topN_test_bsa.sh +++ b/vimms/scripts/topN_test_bsa.sh @@ -9,7 +9,7 @@ base_out_dir="results" # Variables for charge range start and end charge_range_start="2" -charge_range_end="6" +charge_range_end="3" # An array of min_fit_scores and penalty factors min_fit_scores=( "20" "40" "60" "80" "100" "120" "140" "160" "180" "200" ) diff --git a/vimms/scripts/topN_test_hela.sh b/vimms/scripts/topN_test_hela.sh index 5f6ad8de..e7ea21da 100755 --- a/vimms/scripts/topN_test_hela.sh +++ b/vimms/scripts/topN_test_hela.sh @@ -9,10 +9,10 @@ base_out_dir="hela_results" # Variables for charge range start and end charge_range_start="2" -charge_range_end="6" +charge_range_end="3" # An array of min_fit_scores and penalty factors -min_fit_scores=( "50" "100" "150" "200" "250" "300" "350" "400" ) +min_fit_scores=( "20" "40" "60" "80" "100" "120" "140" "160" "180" "200" ) # An array of penalty factors penalty_factors=( "0.25" "0.50" "0.75" "1.0" "1.25" "1.50" "1.75" "2.0" ) From 95b5cfc4d93aab11933d4b523b428889c0ebed10 Mon Sep 17 00:00:00 2001 From: Joe Wandy Date: Tue, 26 Sep 2023 00:01:34 +0100 Subject: [PATCH 59/67] Fixed import error, reformat codes. --- vimms/BOMAS.py | 136 +++++++++++++++++++++++++------------------------ 1 file changed, 69 insertions(+), 67 deletions(-) diff --git a/vimms/BOMAS.py b/vimms/BOMAS.py index 3083b872..7eaa8ab5 100644 --- a/vimms/BOMAS.py +++ b/vimms/BOMAS.py @@ -7,20 +7,20 @@ from vimms.Agent import TopNDEWAgent from vimms.Box import BoxGrid +from vimms.BoxManager import BoxManager, BoxSplitter from vimms.Common import load_obj, POSITIVE, ROI_TYPE_NORMAL, ROI_EXCLUSION_DEW from vimms.Controller import ( - TopN_SmartRoiController, Controller, TopN_RoiController, - NonOverlapController, IntensityNonOverlapController, TopNBoxRoiController, - FlexibleNonOverlapController, FixedScansController, AgentBasedController, - TopNController + TopN_SmartRoiController, TopN_RoiController, + NonOverlapController, IntensityNonOverlapController, + FlexibleNonOverlapController, FixedScansController, AgentBasedController, + TopNController, WeightedDEWController ) from vimms.DsDA import get_schedule, dsda_get_scan_params, create_dsda_schedule from vimms.Environment import Environment from vimms.Evaluation import evaluate_multi_peak_roi_aligner from vimms.Evaluation import evaluate_multiple_simulated_env -from vimms.BoxManager import BoxManager, BoxSplitter from vimms.MassSpec import IndependentMassSpectrometer -from vimms.Roi import FrequentistRoiAligner, RoiAligner +from vimms.Roi import RoiAligner def run_coverage_evaluation(box_file, mzml_file, half_isolation_window): @@ -370,59 +370,59 @@ def weighted_dew_experiment_evaluation(datasets, min_rt, max_rt, N, return None, None -def box_controller_experiment_evaluation(datasets, group_list, min_rt, max_rt, - N, isolation_window, - mz_tol, rt_tol, min_ms1_intensity, - min_roi_intensity, min_roi_length, - boxes_params, base_chemicals=None, - mzmine_files=None, rt_tolerance=100, - experiment_dir=None, - progress_bar=False): - if base_chemicals is not None or mzmine_files is not None: - env_list = [] - mzml_files = [] - source_files = ['sample_' + str(i) for i in range(len(datasets))] - boxes = [] - boxes_intensity = [] - aligner = RoiAligner() - for i in range(len(datasets)): - mass_spec = IndependentMassSpectrometer(POSITIVE, datasets[i]) - controller = TopNBoxRoiController(POSITIVE, isolation_window, - mz_tol, min_ms1_intensity, - min_roi_intensity, - min_roi_length, - boxes_params=boxes_params, - boxes=boxes, - boxes_intensity=boxes_intensity, - N=N, rt_tol=rt_tol) - env = Environment(mass_spec, controller, min_rt, max_rt, - progress_bar=progress_bar) - env.run() - if progress_bar is False: - print('Processed dataset ' + str(i)) - env_list.append(env) - rois = env.controller.live_roi + env.controller.dead_roi - aligner.add_sample(rois, 'sample_' + str(i), group_list[i]) - boxes = aligner.get_boxes() - boxes_intensity = aligner.get_max_frag_intensities() - if base_chemicals is None: - file_link = os.path.join(experiment_dir, - source_files[i] + '.mzml') - mzml_files.append(file_link) - env.write_mzML(experiment_dir, source_files[i] + '.mzml') - if base_chemicals is not None: - evaluation = evaluate_multiple_simulated_env(env_list, - base_chemicals=base_chemicals) - else: - roi_aligner = RoiAligner(rt_tolerance=rt_tolerance) - for i in range(len(mzml_files)): - roi_aligner.add_picked_peaks(mzml_files[i], mzmine_files[i], - source_files[i], 'mzmine') - evaluation = evaluate_multi_peak_roi_aligner(roi_aligner, - source_files) - return env_list, evaluation - else: - return None, None +# def box_controller_experiment_evaluation(datasets, group_list, min_rt, max_rt, +# N, isolation_window, +# mz_tol, rt_tol, min_ms1_intensity, +# min_roi_intensity, min_roi_length, +# boxes_params, base_chemicals=None, +# mzmine_files=None, rt_tolerance=100, +# experiment_dir=None, +# progress_bar=False): +# if base_chemicals is not None or mzmine_files is not None: +# env_list = [] +# mzml_files = [] +# source_files = ['sample_' + str(i) for i in range(len(datasets))] +# boxes = [] +# boxes_intensity = [] +# aligner = RoiAligner() +# for i in range(len(datasets)): +# mass_spec = IndependentMassSpectrometer(POSITIVE, datasets[i]) +# controller = TopNBoxRoiController(POSITIVE, isolation_window, +# mz_tol, min_ms1_intensity, +# min_roi_intensity, +# min_roi_length, +# boxes_params=boxes_params, +# boxes=boxes, +# boxes_intensity=boxes_intensity, +# N=N, rt_tol=rt_tol) +# env = Environment(mass_spec, controller, min_rt, max_rt, +# progress_bar=progress_bar) +# env.run() +# if progress_bar is False: +# print('Processed dataset ' + str(i)) +# env_list.append(env) +# rois = env.controller.live_roi + env.controller.dead_roi +# aligner.add_sample(rois, 'sample_' + str(i), group_list[i]) +# boxes = aligner.get_boxes() +# boxes_intensity = aligner.get_max_frag_intensities() +# if base_chemicals is None: +# file_link = os.path.join(experiment_dir, +# source_files[i] + '.mzml') +# mzml_files.append(file_link) +# env.write_mzML(experiment_dir, source_files[i] + '.mzml') +# if base_chemicals is not None: +# evaluation = evaluate_multiple_simulated_env(env_list, +# base_chemicals=base_chemicals) +# else: +# roi_aligner = RoiAligner(rt_tolerance=rt_tolerance) +# for i in range(len(mzml_files)): +# roi_aligner.add_picked_peaks(mzml_files[i], mzmine_files[i], +# source_files[i], 'mzmine') +# evaluation = evaluate_multi_peak_roi_aligner(roi_aligner, +# source_files) +# return env_list, evaluation +# else: +# return None, None # change roi_type to ROI_TYPE_SMART to toggle smartroi @@ -445,10 +445,10 @@ def non_overlap_experiment_evaluation(datasets, min_rt, max_rt, N, if base_chemicals is not None or mzmine_files is not None: env_list = [] grid = BoxManager( - box_geometry = BoxGrid(min_rt, max_rt, rt_box_size, 0, 3000, mz_box_size), - box_splitter = BoxSplitter(split=False) + box_geometry=BoxGrid(min_rt, max_rt, rt_box_size, 0, 3000, mz_box_size), + box_splitter=BoxSplitter(split=False) ) - + mzml_files = [] source_files = ['sample_' + str(i) for i in range(len(datasets))] for i in range(len(datasets)): @@ -513,8 +513,8 @@ def intensity_non_overlap_experiment_evaluation(datasets, min_rt, max_rt, N, if base_chemicals is not None or mzmine_files is not None: env_list = [] grid = BoxManager( - box_geometry = BoxGrid(min_rt, max_rt, rt_box_size, 0, 3000, mz_box_size), - box_splitter = BoxSplitter(split=True) + box_geometry=BoxGrid(min_rt, max_rt, rt_box_size, 0, 3000, mz_box_size), + box_splitter=BoxSplitter(split=True) ) mzml_files = [] source_files = ['sample_' + str(i) for i in range(len(datasets))] @@ -581,8 +581,8 @@ def flexible_non_overlap_experiment_evaluation(datasets, min_rt, max_rt, N, if base_chemicals is not None or mzmine_files is not None: env_list = [] grid = BoxManager( - box_geometry = BoxGrid(min_rt, max_rt, rt_box_size, 0, 3000, mz_box_size), - box_splitter = BoxSplitter(split=True) + box_geometry=BoxGrid(min_rt, max_rt, rt_box_size, 0, 3000, mz_box_size), + box_splitter=BoxSplitter(split=True) ) mzml_files = [] source_files = ['sample_' + str(i) for i in range(len(datasets))] @@ -628,6 +628,7 @@ def flexible_non_overlap_experiment_evaluation(datasets, min_rt, max_rt, N, else: return None, None + ''' def case_control_non_overlap_experiment_evaluation(datasets, min_rt, max_rt, N, isolation_window, mz_tol, @@ -694,13 +695,14 @@ def case_control_non_overlap_experiment_evaluation(datasets, min_rt, max_rt, N, return None, None ''' + def dsda_experiment_evaluation(datasets, base_dir, min_rt, max_rt, N, isolation_window, mz_tol, rt_tol, min_ms1_intensity, mzmine_files=None, rt_tolerance=100, progress_bar=False): data_dir = os.path.join(base_dir, 'Data') schedule_dir = os.path.join(base_dir, 'settings') - mass_spec = IndependentMassSpectrometer(POSITIVE, datasets[0]) #need to get schedule timings + mass_spec = IndependentMassSpectrometer(POSITIVE, datasets[0]) # need to get schedule timings create_dsda_schedule(mass_spec, N, min_rt, max_rt, base_dir) print('Please open and run R script now') time.sleep(1) From 7ff292dcad6ac1cfa76993fe2e2eb17e25ef6c14 Mon Sep 17 00:00:00 2001 From: Joe Wandy Date: Tue, 26 Sep 2023 00:07:01 +0100 Subject: [PATCH 60/67] Added Ross' guide to ViMMS. --- README.md | 2 + demo/guide_to_vimms.ipynb | 1860 +++++++++++++++++++++++++++++++++++++ 2 files changed, 1862 insertions(+) create mode 100644 demo/guide_to_vimms.ipynb diff --git a/README.md b/README.md index c28d6a2f..786d3e57 100644 --- a/README.md +++ b/README.md @@ -22,6 +22,8 @@ Moreover, ViMMS serves as a platform for the development, optimization, and test To see a more thorough explanation of the use cases of ViMMS, please refer to the [Use Cases](pages/use_cases.md) section. +You can also find this [quick guide on how to get started using ViMMS](https://github.com/glasgowcompbio/vimms/blob/master/demo/guide_to_vimms.ipynb). + # Contributions As an open-source project licensed under MIT, we welcomes all forms of contributions, including bug fixes, new features, and more. You can find our community contribution guidelines [here](https://github.com/glasgowcompbio/vimms/blob/master/CONTRIBUTING.md). diff --git a/demo/guide_to_vimms.ipynb b/demo/guide_to_vimms.ipynb new file mode 100644 index 00000000..e53796ee --- /dev/null +++ b/demo/guide_to_vimms.ipynb @@ -0,0 +1,1860 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "5312c9d2", + "metadata": {}, + "source": [ + "# Guide to ViMMS (20/09/2023)" + ] + }, + { + "cell_type": "markdown", + "id": "a206e576", + "metadata": {}, + "source": [ + "ViMMS (Virtual Metabolomics Mass Spectrometer) is a Python-based software for the simulation of **liquid chromatography mass spectrometry** (LC-MS/MS) data acquisition in metabolomics studies. Simulations through ViMMS are a low-cost way to optimise acquisition strategy parameters before running a real experiment, or can be used to quickly prototype new [acquisition](https://pubs.acs.org/doi/full/10.1021/acs.analchem.0c03895) [strategies](https://academic.oup.com/bioinformatics/article/39/7/btad406/7207825) in Python. With the appropriate bridging code for a given instrument model, ViMMS can also be used to run an acquisition strategy on a real LC-MS/MS setup using the same high-level Python code." + ] + }, + { + "cell_type": "markdown", + "id": "a86847f8", + "metadata": {}, + "source": [ + "### Why Metabolomics?" + ] + }, + { + "cell_type": "markdown", + "id": "8cba625c", + "metadata": {}, + "source": [ + "Metabolomics is a rapidly-growing area of research concerned with profiling the concentrations of biomolecules associated with an organism's metabolism. This biochemistry is very closely tied to the biological functions of the organism and therefore is richly informative about them. To illustrate this effect, an interesting and well-publicised motivating example in human studies is the case of Joy Milne, [the woman who can smell Parkinson's disease](https://www.npr.org/sections/health-shots/2020/03/23/820274501/her-incredible-sense-of-smell-is-helping-scientists-find-new-ways-to-diagnose-di). Some [recent research](https://www.nature.com/articles/s41467-021-21669-4) aims to identify metabolomic biomarkers which could explain her ability to smell the disease. Another example is that of [studies](https://www.sciencedirect.com/science/article/pii/S030881462031709X) [investigating](https://www.sciencedirect.com/science/article/pii/S0924224418303741) [\"food fraud\"](https://pubs.acs.org/doi/10.1021/acs.jafc.1c07153), where components of food are replaced with lower value substitutes, similarly to the well-known example of [horse meat in burgers](https://en.wikipedia.org/wiki/2013_horse_meat_scandal). These studies examine the usefulness of using metabolomic profiling to, for example, determine the providence of beef or honey. \n", + "\n", + "ViMMS is aiming to improve the usefulness of the LC-MS/MS data collected by an acquisition strategy - namely the number and quality of fragmentation spectra - and so will be able to aid works like these." + ] + }, + { + "cell_type": "markdown", + "id": "7121047a", + "metadata": {}, + "source": [ + "### Basics of LC-MS/MS" + ] + }, + { + "cell_type": "markdown", + "id": "f245eb0a", + "metadata": {}, + "source": [ + "(An alternative guide covering similar material but more concerned with the instrumentation and chemistry can be found [here](https://www.agilent.com/cs/library/support/documents/a05296.pdf).)" + ] + }, + { + "cell_type": "markdown", + "id": "4fe670be", + "metadata": {}, + "source": [ + "To profile an organism's metabolome, chemists commonly use LC-MS/MS. Mass spectrometers ionise molecules, imbuing them with electrical charge, and then very accurately separate them by the ratio of their **mass-to-charge** (m/z). These ions can then be measured by a detector. This gives us an **intensity** of signal for each mass-to-charge value detected, from which we may be able to extrapolate the number of ions of that m/z and in theory its chemical concentration. Then if the charge of an ion is known, we can identify its molecular mass, which may be used to identify it. Direct injection of a sample into a mass spectrometer produces a mass spectrum which should look something like this:" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "id": "8e148a03", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "2023-09-20 07:04:08.989 | DEBUG | mass_spec_utils.data_import.mzml:_load_file:166 - Loaded 677 scans\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "scan rt: 383.1999999999955\n" + ] + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "# Plot a mass spectrum\n", + "\n", + "import os\n", + "import numpy as np\n", + "import matplotlib\n", + "import matplotlib.pyplot as plt\n", + "\n", + "from vimms.Common import path_or_mzml\n", + "\n", + "def plot_mzml_2d(scan, title=None):\n", + " fig, ax = plt.subplots(1, 1)\n", + " \n", + " for mz, intensity in scan.peaks:\n", + " ax.plot(np.array([mz, mz]), np.array([0, intensity]), color=\"black\")\n", + " \n", + " ax.set(\n", + " title=title,\n", + " xlabel=\"m/z\", \n", + " ylabel=\"Intensity\",\n", + " ylim=[0, None]\n", + " )\n", + " fig.set_size_inches(18.5, 10.5)\n", + " return fig\n", + "\n", + "mzml_path = os.path.join(\"tests\", \"fixtures\", f\"demoN0.mzML\") # This file was previously generated with some synthetic chemicals with their chromatograms sampled from HMDB\n", + "mzml = path_or_mzml(mzml_path)\n", + "scan = max((s for s in mzml.scans), key=lambda s: len(s.peaks))\n", + "print(f\"scan rt: {scan.rt_in_seconds}\")\n", + "title = f\"topN on Chromatograms Sampled from HMDB - at {round(scan.rt_in_seconds, 2)} secs\"\n", + "fig = plot_mzml_2d(scan, title=title)" + ] + }, + { + "cell_type": "markdown", + "id": "e94c5198", + "metadata": {}, + "source": [ + "However, what if two different molecules have the same mass-to-charge ratio? For example, suppose you have two molecules which have the same chemical formula but a different structure --- structural isomers --- and they have the same charge. This creates two problems. Firstly, any of the intensity measurements for a given m/z could be caused by two (or more) species of ion i.e. any of the bars on the picture above might be two or more separate measurements added together. In this case we would be unable to separate the total measurement into contributions for each species. Secondly, this also implies that the molecular mass may be insufficient to identify a given molecular species. \n", + "\n", + "To combat the first problem we can use **liquid chromatography** (LC). LC is a separation technique which retains different molecules for different lengths of time in the chromatographic column before generating them into the MS. As they are released we continue to measure them via mass spectrometry, causing us to generate a time-series of mass spectra. That is, a third **retention-time** (RT) dimension is added to our previously two-dimensional (m/z, intensity) mass spectra. An LC setup appropriately designed for this use should separate molecules in a way that is independent of their mass, and thus different ion species should appear in different mass spectra at different retention times, allowing us to measure them separately even if they would otherwise have the same m/z. Mass spectrometry can also be paired with gas chromatography or other separation techniques, but liquid chromatography is often used for metabolomics because many kinds of biomolecule are not amenable to analysis via other techniques. \n", + "\n", + "As molecules are gradually released by the chromatographic column, their distribution on intensity over retention time typically follows a Gaussian-like shape. These **chromatographic peaks** can often be used to separate real signal from noise in data. LC-MS data should therefore look something like this (note the Gaussian-like shapes as we start taking more scans):" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "id": "96781a20", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "2023-09-20 07:04:09.333 | DEBUG | mass_spec_utils.data_import.mzml:_load_file:166 - Loaded 677 scans\n" + ] + }, + { + "data": { + "image/png": "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HMThw4fx5JNPorW1FUuWLMHKlSvtShE5C9Nm1P39/ejq6qIpplmzZo1b+yACsvp3x3YhYrEYer3eqT575N7qdDqUlpYiNDSUUwTMBVuNRon9Q1RUFPR6Pfr7+42ajkdERCA4OJj3544vB3ZHI1jks56eHgDgfJYnSwSLC6akuq+vD21tbZDL5S69zwzDoLa2FiKRCKmpqZz3a9++fThy5AgOHTrksrHl2LFj2LdvH3JycpCfnw8AePrpp7F//36UlJRQScdrr71G90lMTMTw8DA0Gg0+/fRTfP3118jMzBxz7K+//hqPP/443n33XQQEBCAnJwcRERG4/vrr8Y9//AO333473nrrLTz11FPYuXMnEhISXHKN0+DGNME6zxEUFIR169Zh3bp1GB4exueff449e/agvr4el112GVauXImioqJxI1tCoRBhYWFQKBTw8/NDXFwc+vr60NzcjICAANof0dXnQ9IFWq123MmdNZCJ11rbFS6wS7kXLlzIabxoCVKpFD/88AM0Go3d1Xoikcio6bg5+wc++mBaOy++IljkGTl79izi4+ONRMQDAwMAQKu2bImEWdvOGmy1aXA1iBkxEcmz77Ofnx+9z86SQYZhqAu+NdnDBx98gH/+85/47LPPXGIjQ3DRRReZff6WLVtmcZ+Wlharx/33v/+NdevWYe7cuZg1axaAc+P466+/jnvvvRerVq3CwYMH8bvf/Q6HDh2ajlxNIKaNRqdBERAQgBtuuAEHDx7ETz/9hAsvvBCvvfYaLrjgAjz00EP43//+Z9EziS+QVejIyAjy8/MRHh6O9PR0zJ8/HzExMejv78eJEydQXl6Onp4el50Pm2C5G8jE6cy1k32tuVpzoa6uDuvXr4dCoXDKaJTYP5D7HBcXh6GhIZw8eRKlpaXo6upy6j7w1eKG6zikJc2aNWvw8ccf07+TFDfwa99MLuLjDjYNroLpfU5ISIBcLsepU6dw+vRptLe3O2RUTIozDAYDZs2axXmfDh48iH379uHw4cMTog9zFv/+979x33334ZFHHsHFF1+M7du3U1sHX19fqr1auHAh4uPjsW3btkl5nVMF7vUGTsNt4OPjg+uuuw7XXXcdVCoVvv76a7z33nvYunUrLrzwQqxatQoLFizgdRAnnjU+Pj5jVqECgQBBQUEICgoCwzCQy+W0P6K3tzciIiIQ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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "# Plot 3D chromatograms\n", + "\n", + "import os\n", + "import matplotlib.pyplot as plt\n", + "from mpl_toolkits.mplot3d import Axes3D\n", + "\n", + "def plot_mzml_3d(ax, mzml, scan_lower, scan_upper, title=\"\"):\n", + " for scan in mzml.scans[scan_lower:scan_upper]:\n", + " rt = scan.rt_in_seconds\n", + " for mz, intensity in scan.peaks:\n", + " ax.plot(np.array([mz, mz]), np.array([rt, rt]), np.array([0, intensity]), color=\"black\")\n", + "\n", + " ax.set(\n", + " title=title,\n", + " ylabel=\"Retention Time\",\n", + " xlabel=\"m/z\",\n", + " zlabel=\"Intensity\",\n", + " zlim=[0, None],\n", + " )\n", + "\n", + "mzml_path = os.path.join(\"tests\", \"fixtures\", f\"demoN0.mzML\") # This file was previously generated with some synthetic chemicals with their chromatograms sampled from HMDB\n", + "mzml = path_or_mzml(mzml_path)\n", + "\n", + "scan_ranges = [(250, 260), (240, 280)]\n", + "for scan_lower, scan_upper in scan_ranges:\n", + " fig = plt.figure()\n", + " ax = fig.add_subplot(111, projection='3d')\n", + " plot_mzml_3d(\n", + " ax,\n", + " mzml, \n", + " scan_lower, \n", + " scan_upper, \n", + " title=f\"topN Chromatograms Sampled from HMDB - MS1 Scans {scan_lower} to {scan_upper}\"\n", + " )\n", + "\n", + " ax.autoscale()\n", + " fig.set_size_inches(18.5, 10.5)" + ] + }, + { + "cell_type": "markdown", + "id": "f574ba5a", + "metadata": {}, + "source": [ + "To combat the second problem we can use **tandem mass spectrometry** (MS/MS). In tandem mass spectrometry we pair two mass analysers together, allowing for two stages of separation by mass-to-charge prior to measurement. This allows us to isolate ions of a small mass-to-charge range, fragment the isolated ions, and then measure (m/z, intensity) pairs for the fragments via mass spectrometry. When fragmenting an ion it may be common for it to break on characteristic bonds. For example, if it was common to break on a given bond, you might see readings at two m/z values which add together to approximately the same m/z as the precursor ion. Therefore the distribution of fragments forms a sort of \"structural fingerprint\" which can be used to identify the species of the ion. Later one may compare a collected fragmentation spectrum to databases via e.g. treating fragmentation spectra as vectors and using the cosine score to compare the distribution of fragments. Fragmentation spectra are of the same format as the 2D mass spectrum above." + ] + }, + { + "cell_type": "markdown", + "id": "cf8e5fc0", + "metadata": {}, + "source": [ + "### Acquisition Strategies" + ] + }, + { + "cell_type": "markdown", + "id": "f8f6bc48", + "metadata": {}, + "source": [ + "In a full LC-MS/MS system we therefore have decisions to make as we process a sample over time. Whenever the system is idle we must choose between performing an MS1 scan or an MS2 scan. An **MS1 scan** measures all ions currently eluting from the chromatographic column. An **MS2 scan** isolates ions of a given m/z range, fragments them, and measures the fragments. If we choose to perform an MS2 scan we must also choose the m/z range which we want to isolate and fragment. Generally speaking we want to obtain rich MS1 measurements, but also fragment as many chromatographic peaks as possible at the highest intensity i.e. when the most precursor ions are available for fragmentation. An inappropriately-timed task may have an opportunity cost for another potential task. To manage this complex scheduling problem we need an acquisition strategy." + ] + }, + { + "cell_type": "markdown", + "id": "bbbb908f", + "metadata": {}, + "source": [ + "## Structure of ViMMS" + ] + }, + { + "cell_type": "markdown", + "id": "b70c7268", + "metadata": {}, + "source": [ + "One of the goals of ViMMS is to aid in the design and testing of new fragmentation strategies, and the project has been structured with this aim in mind. To perform a simulated experiment with ViMMS you need three things: a controller which implementing a fragmentation strategy, a set of chemical objects and a virtual mass spectrometer. These can be freely switched out to allow, for example, testing multiple fragmentation strategies, or testing the same fragmentation strategy on multiple samples. Additionally, when utilising real instrument control, the mass spectrometer object is exchanged with a connection to the real instrument, and the chemical objects are replaced by signal coming off of that instrument." + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "id": "83ccd2c1", + "metadata": {}, + "outputs": [], + "source": [ + "# TODO: illustrative graphic?" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "id": "ccd53cce", + "metadata": {}, + "outputs": [], + "source": [ + "import os\n", + "import sys\n", + "\n", + "user_vimms = os.path.join( # Put your path to your install of ViMMS here!\n", + " \"C:\\\\\",\n", + " \"Users\",\n", + " \"mcbrider5002\",\n", + " \"Desktop\",\n", + " \"Workspace\",\n", + " \"phd\",\n", + " \"peak_picking\",\n", + " \"vimms\"\n", + ")\n", + "\n", + "sys.path.append(user_vimms) # Add ViMMS to your Python path, so your Python install knows where to look when this notebook does an import..." + ] + }, + { + "cell_type": "markdown", + "id": "991c5b37", + "metadata": {}, + "source": [ + "## Chemical Creation" + ] + }, + { + "cell_type": "markdown", + "id": "ea3ff1c2", + "metadata": {}, + "source": [ + "ViMMS simulations can obtain chemical objects from two sources. Firstly, we can generate purely synthetic chemicals by some form of sampling on e.g. a database or statistical distribution. Secondly, we can re-simulate an existing experiment by using a seed .mzML to generate chemical objects. In this case we perform Region-of-Interest (RoI) construction over the whole file to group points that are close in m/z and which appear in contiguous scans. Each of these RoIs then becomes a `Chemical` object. Generally it is preferable to use a fullscan .mzML (MS1 scans only) as the seed .mzML as the richer MS1 information allows better `Chemical` objects to be constructed. Whether chemicals are synthetic or re-simulated, currently they can only be assigned MS2 spectra by sampling from some distribution.\n", + "\n", + "Synthetic chemicals are often a lot simpler, and can be tightly controlled to test specific hypotheses. To generate a set of synthetic chemicals we can use the `ChemicalMixtureCreator` class. This class has a lot of behaviours that can be configured by passing different child objects, including:\n", + "\n", + "- Chemical formula generation\n", + "- RT/intensity generation for formulas\n", + "- Chromatograms for formulas\n", + "- MS2 spectra for formulas\n", + "\n", + "Below we give an example of how we can generate synthetic chemicals both by sampling their masses both uniformly and from the Human Metabolome Database (HMDB) but a more detailed treatment of the features available can be found in demo notebooks on the GitHub repository." + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "id": "6a1b402b", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "2023-09-20 07:04:14.047 | DEBUG | vimms.Chemicals:sample:664 - Sampled rt and intensity values and chromatograms\n", + "2023-09-20 07:04:18.448 | DEBUG | vimms.ChemicalSamplers:sample:84 - 73822 unique formulas in filtered database\n", + "2023-09-20 07:04:18.450 | DEBUG | vimms.ChemicalSamplers:sample:90 - Sampled formulas\n", + "2023-09-20 07:04:21.035 | DEBUG | vimms.Chemicals:sample:664 - Sampled rt and intensity values and chromatograms\n" + ] + } + ], + "source": [ + "# Generate some synthetic chemicals\n", + "\n", + "from vimms.Common import load_obj\n", + "from vimms.Chemicals import ChemicalMixtureCreator\n", + "from vimms.ChemicalSamplers import DatabaseFormulaSampler, UniformMZFormulaSampler, UniformRTAndIntensitySampler\n", + "\n", + "u_rt = UniformRTAndIntensitySampler(min_rt=100, max_rt=500) # Uniform RT and intensity sampling for both\n", + "\n", + "# Uniformly sample m/z\n", + "u_mz = UniformMZFormulaSampler(min_mz=100, max_mz=500)\n", + "cm = ChemicalMixtureCreator(u_mz, rt_and_intensity_sampler=u_rt) #Note: defaults are being used to sample chromatograms and MS2 spectra\n", + "u_chems = cm.sample(5000, 2)\n", + "\n", + "# Sample m/z from HMDB\n", + "hmdb = load_obj(os.path.join(user_vimms, \"tests\", \"fixtures\", \"hmdb_compounds.p\")) # Pickled HMDB stuff lives in the ViMMS repo\n", + "df = DatabaseFormulaSampler(hmdb, min_mz=100, max_mz=1000)\n", + "cm = ChemicalMixtureCreator(df, rt_and_intensity_sampler=u_rt)\n", + "hmdb_chems = cm.sample(5000, 2)" + ] + }, + { + "cell_type": "markdown", + "id": "e43f1ada", + "metadata": {}, + "source": [ + "Re-simulations contain things that you don't necessarily have understanding or control over, but are naturally a lot more realistic. You can construct a set of re-simulated chemicals simply by invoking `ChemicalMixtureFromMZML` on the filepath to the seed .mzML. This object also allows you to specify the parameters for RoI construction when building chemicals or the distribution to sample MS2 spectra from." + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "id": "54198e4f", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "2023-09-20 07:07:22.785 | DEBUG | vimms.Chemicals:_extract_rois:834 - Extracted 292135 good ROIs from tests\\fixtures\\fullscan_beer1_0.mzML\n" + ] + } + ], + "source": [ + "# Generate chemicals from an .mzML\n", + "\n", + "import os\n", + "\n", + "from vimms.Roi import RoiBuilderParams\n", + "from vimms.Chemicals import ChemicalMixtureFromMZML\n", + "from vimms.ChemicalSamplers import FixedMS2Sampler\n", + "\n", + "beer_fullscan = os.path.join(\"tests\", \"fixtures\", \"fullscan_beer1_0.mzML\") # Seed\n", + "\n", + "rp = RoiBuilderParams(\n", + " min_roi_intensity=0, # Ignore all points below this threshold\n", + " at_least_one_point_above=0, # Ignore all RoIs without a point above this threshold\n", + " min_roi_length=2 # Ignore all RoIs below this length\n", + ")\n", + "\n", + "cm = ChemicalMixtureFromMZML(\n", + " beer_fullscan, \n", + " roi_params=rp, \n", + " ms2_sampler=FixedMS2Sampler() # Generate fragments that are just fixed steps away from parent m/z - efficient if we don't care at all about the contents\n", + ")\n", + "\n", + "beer_chems = cm.sample(\n", + " None, # Cap on number of chemicals to use... Take all RoIs in this case\n", + " 2 # Maximum MS level... Assign MS2 spectra to chemicals\n", + ")" + ] + }, + { + "cell_type": "markdown", + "id": "0bd9766a", + "metadata": {}, + "source": [ + "## Running Simulations" + ] + }, + { + "cell_type": "markdown", + "id": "8dc663e3", + "metadata": {}, + "source": [ + "Now we have a simulated sample to run on - let's run a simulation. We'll compare the ViMMS implementation of the TopN controller that comes standard with every instrument to the multi-sample Intensity Non-Overlap controller we introduced in one of our [publications](https://academic.oup.com/bioinformatics/article/39/7/btad406/7207825?login=false).\n", + "\n", + "To run an injection in a simulated experiment, first we pass our `Chemical` objects to an `IndependentMassSpectrometer` object, and initialise one controller object of the appropriate type to be run on it (e.g. `TopNController`). We pass these to a simulated `Environment` object, and then call run on it. We perform this process once per each injection - if the controller is a multi-sample controller like Intensity Non-Overlap, then it contains a shared state object (in this case a `BoxGeometry` for managing exclusion boxes) which is passed around the controllers in sequence." + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "id": "4bc6a5cc", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "C:\\Users\\mcbrider5002\\anaconda3\\lib\\site-packages\\psims\\mzmlb\\writer.py:15: UserWarning:\n", + "\n", + "hdf5plugin is missing! Only the slower GZIP compression scheme will be available! Please install hdf5plugin to be able to use Blosc.\n", + "\n" + ] + } + ], + "source": [ + "# Some shared stuff to make it easier to run experiments\n", + "\n", + "import os\n", + "\n", + "from vimms.MassSpec import IndependentMassSpectrometer\n", + "from vimms.Environment import Environment\n", + "\n", + "out_dir = os.path.join(\"tests\", \"results\")\n", + "\n", + "min_rt, max_rt = 0, 1440 # Interval to be simulated\n", + "scan_duration_dict = {1: 0.59, 2: 0.19} # For reproducibility, fix each scan's length to average lengths on our instrument\n", + "\n", + "def run_controller(controller, dataset, out_dir, out_file):\n", + " '''Small helper to reduce boilerplate...'''\n", + " mass_spec = IndependentMassSpectrometer( # Instantiate a different simulated MS for every run\n", + " POSITIVE, # Mode to run the instrument in \n", + " dataset,\n", + " scan_duration=scan_duration_dict\n", + " )\n", + " \n", + " env = Environment(\n", + " mass_spec, \n", + " controller, \n", + " min_rt, \n", + " max_rt, \n", + " progress_bar=True,\n", + " out_dir=out_dir,\n", + " out_file=out_file # Write to an .mzML\n", + " ) # Environment object glues together MS and controller\n", + " \n", + " env.run()\n", + " return env" + ] + }, + { + "cell_type": "markdown", + "id": "ab1270e4", + "metadata": {}, + "source": [ + "First let's run the experiment on our uniformly-sampled synthetic chemicals (sampling lots of chemicals from HMDB can behave badly by sampling the same values repeatedly):" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "id": "67d07994", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "2023-09-20 07:07:38.773 | DEBUG | vimms.Chemicals:__init__:477 - FastMemoryChems initialised\n" + ] + }, + { + "data": { + "application/vnd.jupyter.widget-view+json": { + "model_id": "666d7c9f76a14aab96caf672085d8efd", + "version_major": 2, + "version_minor": 0 + }, + "text/plain": [ + " 0%| | 0/1440 [00:00" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "# Plot fragmentation events\n", + "\n", + "import os\n", + "import math\n", + "\n", + "from vimms.BoxVisualise import mpl_fragmentation_events\n", + "\n", + "for case_name in [\"topN\", \"intensity_non_overlap\"]:\n", + " mzmls = [os.path.join(out_dir, f\"beer_{case_name}_{i}.mzML\") for i in range(len(beer_chem_list))]\n", + " fig, ax = mpl_fragmentation_events(case_name, mzmls, colour_minm=math.log(500.0)) # colour_minm controls the minimum the colourscale will start interpolating values between, to make things look nicer" + ] + }, + { + "cell_type": "markdown", + "id": "728f65a1", + "metadata": {}, + "source": [ + "Each cross marks the centre of an isolation window, and is coloured based on the precursor intensity from grey to yellow to red to blue as intensity increases. From this we can see that TopN is indeed putting fragmentation events in the same place with each run, but Intensity Non-Overlap's choices are different." + ] + }, + { + "cell_type": "markdown", + "id": "2dd9c368", + "metadata": {}, + "source": [ + "## Evaluation" + ] + }, + { + "cell_type": "markdown", + "id": "96fff69f", + "metadata": {}, + "source": [ + "Now we've run our fragmentation strategies, we want to compare them. The most obvious way to measure a fragmentation strategy's performance in terms of metabolite coverage. That is, how many fragmentation spectra can we collect in the sample that we can identify as belonging to a known metabolite? A semi-automated way to do this is to evaluate each fragmentation spectrum collected against a database of reference spectra by e.g. the cosine score. This approach uses a natural performance metric, but also has its limitations. This relies on the presence of a database containing the metabolites in the sample and with a sufficiently low false-positive rate - which could be problematic given we are testing our ability to collect things we wouldn't ordinarily collect, and our end-goal is to characterise unknown samples! Additionally, how metabolites are distributed among peaks in the sample might be unusual compared to other sample types, and this might affect the generalisability of our conclusions.\n", + "\n", + "An alternative more closely tied to the algorithmic behaviour of fragmentation strategies is to measure **peak coverage** (which we may refer to as just coverage). Given some ground-truth set of chromatographic peaks, a fragmentation strategy gets a point for each peak that is included in the isolation window of any MS2 scan at a precursor intensity above some minimum intensity threshold. The sum of these points is the fragmentation strategy's peak coverage score. To measure the quality at which we acquired peaks, we use **intensity coverage**. Instead of awarding a binary {0, 1} score to each peak, we give it a score in the interval \\[0, 1\\] - this score is the ratio of the highest precursor intensity the peak was fragmented at over the highest precursor intensity appearing in that peak. That is, we rate each peak by how much of the total intensity we actually fragmented it at as a proportion of the maximum intensity that we saw it was possible to fragment it at. When computing cumulative coverage across multiple injections, if we can identify that the same peak appears in both, then we only count it once for coverage. For cumulative intensity coverage, the numerator is the highest precursor intensity any peak was fragmented at in any injection, and the denominator is the highest intensity observed in it in any injection. These metrics are easier to deploy, but they can also be used to complement metabolite coverage for a more complete picture of fragmentation strategy performance.\n", + "\n", + "In synthetic data, we know all the chemicals we generated, so checking if they were within an MS2 scan's isolation window is straightforward: we just use the `SyntheticEvaluator` object which can be invoked on a list of `Environment` objects by the constructor `from_envs`. We can then call `summarise` on it to see a report of the results." + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "id": "dd454f9f", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "topN\n", + "Number of chems above min intensity: 5000\n", + "Number of fragmentations: [4273, 4273, 4273]\n", + "Cumulative coverage: [2956, 2956, 2956]\n", + "Cumulative coverage proportion: [0.5912, 0.5912, 0.5912]\n", + "Cumulative intensity proportion: [0.3438852298789128, 0.3438852298789128, 0.3438852298789128]\n", + "Cumulative intensity proportion of covered spectra: [0.5816732575759689, 0.5816732575759689, 0.5816732575759689]\n", + "Times covered: {0: 2044, 3: 2956}\n", + "Times fragmented: {0: 1902, 3: 2127, 6: 789, 9: 160, 12: 22}\n", + "\n", + "\n", + "Intensity Non-Overlap\n", + "Number of chems above min intensity: 5000\n", + "Number of fragmentations: [4264, 4255, 4265]\n", + "Cumulative coverage: [2954, 3432, 3667]\n", + "Cumulative coverage proportion: [0.5908, 0.6864, 0.7334]\n", + "Cumulative intensity proportion: [0.34384441118268366, 0.4879042916103217, 0.5488471663442663]\n", + "Cumulative intensity proportion of covered spectra: [0.5819979877838247, 0.7108162756560631, 0.7483599213856917]\n", + "Times covered: {0: 1333, 1: 913, 2: 427, 3: 2327}\n", + "Times fragmented: {0: 1172, 1: 890, 2: 368, 3: 1176, 4: 539, 5: 208, 6: 362, 7: 143, 8: 53, 9: 69, 10: 11, 11: 3, 12: 5, 13: 1}\n" + ] + } + ], + "source": [ + "# Evaluate synthetic data\n", + "# NB: For synthetic chems \"Number of chems above min intensity\" just reads the max intensity value stored\n", + "# in the Chemical object, not its maximum intensity during a fragmentation run\n", + "\n", + "from vimms.Evaluation import SyntheticEvaluator\n", + "\n", + "print(\"topN\")\n", + "topN_results = SyntheticEvaluator.from_envs(topN_envs)\n", + "print(topN_results.summarise(\n", + " min_intensity = 5000.0 # Don't count any peaks that don't contain a point above this threshold in the fragmentation run...\n", + "))\n", + "\n", + "print(\"\\n\")\n", + "\n", + "print(\"Intensity Non-Overlap\")\n", + "ino_results = SyntheticEvaluator.from_envs(ino_envs)\n", + "print(ino_results.summarise(\n", + " min_intensity = 5000.0 # Don't count any peaks that don't contain a point above this threshold in the fragmentation run...\n", + "))" + ] + }, + { + "cell_type": "markdown", + "id": "d5b542a2", + "metadata": {}, + "source": [ + "When working with real data (e.g. in both re-simulated and lab experiments) the situation is more complicated. We do not necessarily know which chromatographic peaks correspond to real metabolites, and we need to produce a list of ground-truth peaks to evaluate against. Fortunately there are a number of algorithms that aim to pick peaks from a sample, and implementations can be found large mass spectrometry data packages. Both XCMS and MZMine implement the `centwave` algorithm, and MZMine additionally implements the more recent ADAP algorithm. We can run these algorithms through ViMMS by using objects like `XCMSScriptParams` or `MZMineParams` which instantiate a subprocess through Python's `subprocess`. Then to the set of output peaks we can use a `RealEvaluator` object to assign fragmentation intensities, maximum observed intensities, etc. For convenience we'll use the function `evaluate_real` to create a `RealEvaluator` and perform several steps on it for us, and call `summarise` on it to see a report of the results. (Note that you can evaluate .mzMLs written in synthetic experiments in the same way.)" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "id": "aa653195", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "12360 aligned boxes contained in file\n", + "Peak-picked file written to: tests\\results\\beer_peak_picked_xcms_aligned.csv\n" + ] + } + ], + "source": [ + "# Create a peak-picked file to evaluate with\n", + "\n", + "import os\n", + "from vimms.PeakPicking import XCMSScriptParams\n", + "\n", + "pp_params = XCMSScriptParams( # Pick peaks with a small R script running XCMS - this object knows how to run the script and read and write files with it...\n", + " xcms_r_script = os.path.join(user_vimms, \"vimms\", \"scripts\", \"xcms_script.R\"), # Where our runner script lives...\n", + " # See XCMS documentation for details on parameters\n", + " ppm = 15,\n", + " pwlower = 15,\n", + " pwupper = 80,\n", + " snthresh = 5,\n", + " noise = 1000,\n", + " prefilterlower = 3,\n", + " prefilterupper = 500\n", + ")\n", + "\n", + "aligned_file = pp_params.pick_aligned_peaks( \n", + " input_files = [beer_fullscan], # Peak-picking works better with richer MS1 info, i.e. ideally on a fullscan...\n", + " output_dir = out_dir,\n", + " output_name = \"beer_peak_picked.csv\",\n", + " force = False # If the file exists, don't run this again...\n", + ")\n", + "\n", + "print(f\"Peak-picked file written to: {aligned_file}\") # Just a filepath" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "id": "ede7d1b3", + "metadata": {}, + "outputs": [], + "source": [ + "# Let the Evaluator know how the files are linked\n", + "\n", + "mzml_map = { # For each experiment case, pairs of fragmentation run file and fullscan to evaluate it with\n", + " \"topN\" : [\n", + " (beer_fullscan, os.path.join(out_dir, f\"beer_topN_{i}.mzML\"))\n", + " for i, _ in enumerate(beer_chem_list)\n", + " ],\n", + " \n", + " \"intensity_non_overlap\" : [\n", + " (beer_fullscan, os.path.join(out_dir, f\"beer_intensity_non_overlap_{i}.mzML\"))\n", + " for i, _ in enumerate(beer_chem_list)\n", + " ]\n", + "}" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "id": "964a37f2", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "2023-09-20 07:18:29.761 | DEBUG | mass_spec_utils.data_import.mzml:_load_file:166 - Loaded 6256 scans\n", + "2023-09-20 07:18:42.608 | DEBUG | mass_spec_utils.data_import.mzml:_load_file:166 - Loaded 6256 scans\n", + "2023-09-20 07:18:51.015 | DEBUG | mass_spec_utils.data_import.mzml:_load_file:166 - Loaded 6256 scans\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "topN\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "2023-09-20 07:19:03.176 | DEBUG | mass_spec_utils.data_import.mzml:_load_file:166 - Loaded 6256 scans\n", + "2023-09-20 07:19:05.430 | DEBUG | mass_spec_utils.data_import.mzml:_load_file:166 - Loaded 6256 scans\n", + "2023-09-20 07:19:07.682 | DEBUG | mass_spec_utils.data_import.mzml:_load_file:166 - Loaded 6256 scans\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Number of chems above min intensity: 11761\n", + "Number of fragmentations: [5677, 5677, 5677]\n", + "Cumulative coverage: [3912, 3912, 3912]\n", + "Cumulative coverage proportion: [0.3326247768046935, 0.3326247768046935, 0.3326247768046935]\n", + "Cumulative intensity proportion: [0.22846141283862503, 0.22846141283862503, 0.22846141283862503]\n", + "Cumulative intensity proportion of covered spectra: [0.6868442424322774, 0.6868442424322774, 0.6868442424322774]\n", + "Times covered: {0: 8448, 3: 3912}\n", + "Times fragmented: {0: 7875, 3: 3251, 6: 821, 9: 224, 12: 61, 15: 24, 18: 7, 21: 2, 24: 2, 27: 4, 33: 32, 36: 1, 39: 8, 42: 5, 45: 1, 48: 8, 60: 2, 63: 12, 69: 14, 72: 3, 75: 2, 84: 1}\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "2023-09-20 07:19:14.036 | DEBUG | mass_spec_utils.data_import.mzml:_load_file:166 - Loaded 6262 scans\n", + "2023-09-20 07:19:22.757 | DEBUG | mass_spec_utils.data_import.mzml:_load_file:166 - Loaded 6249 scans\n", + "2023-09-20 07:19:35.838 | DEBUG | mass_spec_utils.data_import.mzml:_load_file:166 - Loaded 6225 scans\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "intensity_non_overlap\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "2023-09-20 07:19:47.997 | DEBUG | mass_spec_utils.data_import.mzml:_load_file:166 - Loaded 6262 scans\n", + "2023-09-20 07:19:50.230 | DEBUG | mass_spec_utils.data_import.mzml:_load_file:166 - Loaded 6249 scans\n", + "2023-09-20 07:19:52.532 | DEBUG | mass_spec_utils.data_import.mzml:_load_file:166 - Loaded 6225 scans\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Number of chems above min intensity: 11979\n", + "Number of fragmentations: [5684, 5652, 5622]\n", + "Cumulative coverage: [3865, 5820, 7099]\n", + "Cumulative coverage proportion: [0.3226479672760664, 0.4858502379163536, 0.5926204190667]\n", + "Cumulative intensity proportion: [0.2066383156296255, 0.35297701117957114, 0.45882637742927884]\n", + "Cumulative intensity proportion of covered spectra: [0.6404451184805392, 0.7265140235257874, 0.7742331561100622]\n", + "Times covered: {0: 5261, 1: 3842, 2: 2017, 3: 1240}\n", + "Times fragmented: {0: 4506, 1: 3581, 2: 1857, 3: 1120, 4: 476, 5: 252, 6: 173, 7: 81, 8: 53, 9: 32, 10: 27, 11: 10, 12: 25, 13: 15, 14: 31, 15: 6, 16: 2, 17: 5, 18: 8, 19: 2, 20: 1, 24: 2, 26: 1, 29: 2, 30: 1, 33: 4, 34: 1, 36: 26, 42: 1, 55: 1, 56: 1, 58: 1, 60: 1, 61: 2, 62: 2, 63: 2, 64: 3, 65: 1, 66: 1, 67: 1, 70: 3, 71: 3, 73: 2, 79: 1, 84: 1, 86: 1, 87: 12, 118: 1, 119: 1, 123: 1, 124: 1, 125: 4, 126: 2, 129: 2, 130: 1, 131: 3, 132: 1, 134: 1, 135: 1, 141: 1}\n" + ] + } + ], + "source": [ + "# Evaluate the re-simulated experiment!\n", + "\n", + "from vimms.Evaluation import evaluate_real\n", + "\n", + "exp_names = [\"topN\", \"intensity_non_overlap\"]\n", + "exp_results = [] # Store Evaluator objects here\n", + "\n", + "for exp_name in exp_names:\n", + " mzml_pairs = mzml_map[exp_name]\n", + " \n", + " eva = evaluate_real(\n", + " aligned_file, # Peak-picked file we just made\n", + " mzml_pairs, # Which files to evaluate\n", + " isolation_width = 1.0, # How wide the window should be for things we want to consider fragmented\n", + " pp_reader = pp_params # Object that knows how to read aligned_file\n", + " )\n", + " \n", + " print(exp_name)\n", + " print(eva.summarise(\n", + " min_intensity = 5000.0 # Don't count any peaks that don't contain a point above this threshold in the fragmentation run...\n", + " ))\n", + " exp_results.append(eva)" + ] + }, + { + "cell_type": "markdown", + "id": "63957317", + "metadata": {}, + "source": [ + "We can see that TopN performs exactly the same number of fragmentations each time, and never gains in coverage: this is because it is performing exactly the same actions when it sees exactly the same sample (though lab experiments have some inherent stochasticity which helps it somewhat). By contrast Intensity Non-Overlap tries to exclude peaks it has hit in previous samples, so will try to increase both coverage and intensity coverage even with repeated injections of the same sample.\n", + "\n", + "There are also convenience plotting methods to plot comparisons between `Evaluator` objects:" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "id": "dede2b26", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "# Plot the results\n", + "\n", + "from vimms.BoxVisualise import mpl_results_plot, mpl_set_figure_style\n", + "\n", + "fig, axes = mpl_results_plot( # Plot cumulative coverage and cumulative intensity coverage\n", + " exp_names,\n", + " exp_results,\n", + " markers = [\"o\" for _ in exp_names],\n", + " min_intensity = 5000.0, # As above\n", + " # This plot can be styled in many ways...\n", + ")\n", + "\n", + "mpl_set_figure_style(\n", + " fig,\n", + " figure_sizes = (18, 8),\n", + ")\n", + "\n", + "for ax in axes:\n", + " ax.set_xticks([x for x in range(1, len(beer_chem_list) + 1)])" + ] + }, + { + "cell_type": "markdown", + "id": "87443e35", + "metadata": {}, + "source": [ + "## Experiment Interface" + ] + }, + { + "cell_type": "markdown", + "id": "ef8a9938", + "metadata": {}, + "source": [ + "To try and make common use cases a bit shorter to write, ViMMS also offers an alternative interface through Experiment.py. For example, it automates streaming `Chemical` objects to and from disc to save memory, and multiprocesses each case of the experiment. Now let's redo the previous experiment using it. (At the time of writing Experiment.py only supports re-simulated experiments.)\n", + "\n", + "The basic structure is similar to before, but we load `ExperimentCase` objects representing a separate series of runs we want to compare (in our case topN and Intensity Non-Overlap) into an `Experiment` object and call methods on it." + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "id": "48c39a7f", + "metadata": {}, + "outputs": [], + "source": [ + "# Parameters for controllers which will be passed using Python's **\n", + "# We could've done this for brevity up above too, but for simplicity's sake we didn't...\n", + "\n", + "from vimms.Common import POSITIVE\n", + "from vimms.Roi import RoiBuilderParams\n", + "\n", + "topN_params = {\n", + " \"ionisation_mode\" : POSITIVE,\n", + " \"N\" : 10,\n", + " \"isolation_width\" : 1.0,\n", + " \"min_ms1_intensity\" : 5000,\n", + " \"mz_tol\" : 10,\n", + " \"rt_tol\" : 60\n", + "}\n", + "\n", + "intensity_non_overlap_params = {\n", + " **topN_params, # Copy the topN parameters\n", + " \"min_roi_length_for_fragmentation\" : 0,\n", + " \"roi_params\" : RoiBuilderParams(\n", + " min_roi_intensity=0,\n", + " min_roi_length=3,\n", + " )\n", + "}" + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "id": "80b70c05", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Creating Chemicals...\n", + "\n", + "Running Experiment of 2 cases...\n" + ] + } + ], + "source": [ + "# Actually run the experiment\n", + "\n", + "from vimms.Box import BoxGrid\n", + "from vimms.BoxManager import BoxSplitter, BoxManager\n", + "from vimms.Experiment import ExperimentCase, Experiment\n", + "\n", + "beer_fullscans = [beer_fullscan] * 3\n", + "exp_out_dir = os.path.join(\"tests\", \"results\", \"experiment\")\n", + "min_rt, max_rt = 0, 1440 # Interval to be simulated\n", + "scan_duration_dict = {1: 0.59, 2: 0.19} # For reproducibility, fix each scan's length to average lengths on our instrument\n", + "\n", + "geom = BoxManager( # Need a separate BoxManager for every class that uses one... But ExperimentCases will copy it at initialisation so your original state object won't be affected\n", + " box_geometry = BoxGrid(),\n", + " box_splitter = BoxSplitter(split=True)\n", + ")\n", + "\n", + "same_beer_exp = Experiment()\n", + "same_beer_exp.add_cases([\n", + " ExperimentCase(\n", + " \"topN\", # Experiment.py has a list of known controller names it can look up\n", + " beer_fullscans, # Fullscans to generate chemicals from\n", + " topN_params, # \"Normal\" parameters to give to controller i.e. stuff where we don't care about shared state\n", + " name = \"topN\", # What you want to call this case - by default the controller name\n", + " pickle_env = False # When enabled this will save some of the Python objects generated during the run in case you want to inspect them\n", + " ),\n", + " \n", + " ExperimentCase(\n", + " \"intensity_non_overlap\",\n", + " beer_fullscans,\n", + " intensity_non_overlap_params,\n", + " name = \"intensity_non_overlap\",\n", + " grid_base = geom, # Shared state so needs to be passed separately\n", + " pickle_env = False\n", + " )\n", + "])\n", + "\n", + "same_beer_exp.run_experiment(\n", + " exp_out_dir,\n", + " min_rt = min_rt,\n", + " max_rt = max_rt,\n", + " ionisation_mode = POSITIVE,\n", + " scan_duration_dict = scan_duration_dict,\n", + " point_noise_threshold = 0, # Any points below this threshold will not be re-simulated\n", + " chem_noise_threshold = 0, # Any chemical RoIs without a point above this threshold will not be re-simulated\n", + " num_workers = 2 # Allowed to spawn n processes for multiprocessing\n", + ")" + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "id": "04ffb22b", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "12360 aligned boxes contained in file\n", + "12360 aligned boxes contained in file\n", + "\n", + "intensity_non_overlap\n", + "Number of chems above min intensity: 11979\n", + "Number of fragmentations: [5684, 5652, 5622]\n", + "Cumulative coverage: [3865, 5820, 7099]\n", + "Cumulative coverage proportion: [0.3226479672760664, 0.4858502379163536, 0.5926204190667]\n", + "Cumulative intensity proportion: [0.2066383156296255, 0.35297701117957114, 0.45882637742927884]\n", + "Cumulative intensity proportion of covered spectra: [0.6404451184805392, 0.7265140235257874, 0.7742331561100622]\n", + "Times covered: {0: 5261, 1: 3842, 2: 2017, 3: 1240}\n", + "Times fragmented: {0: 4506, 1: 3581, 2: 1857, 3: 1120, 4: 476, 5: 252, 6: 173, 7: 81, 8: 53, 9: 32, 10: 27, 11: 10, 12: 25, 13: 15, 14: 31, 15: 6, 16: 2, 17: 5, 18: 8, 19: 2, 20: 1, 24: 2, 26: 1, 29: 2, 30: 1, 33: 4, 34: 1, 36: 26, 42: 1, 55: 1, 56: 1, 58: 1, 60: 1, 61: 2, 62: 2, 63: 2, 64: 3, 65: 1, 66: 1, 67: 1, 70: 3, 71: 3, 73: 2, 79: 1, 84: 1, 86: 1, 87: 12, 118: 1, 119: 1, 123: 1, 124: 1, 125: 4, 126: 2, 129: 2, 130: 1, 131: 3, 132: 1, 134: 1, 135: 1, 141: 1}\n", + "\n", + "topN\n", + "Number of chems above min intensity: 11761\n", + "Number of fragmentations: [5677, 5677, 5677]\n", + "Cumulative coverage: [3912, 3912, 3912]\n", + "Cumulative coverage proportion: [0.3326247768046935, 0.3326247768046935, 0.3326247768046935]\n", + "Cumulative intensity proportion: [0.22846141283862503, 0.22846141283862503, 0.22846141283862503]\n", + "Cumulative intensity proportion of covered spectra: [0.6868442424322774, 0.6868442424322774, 0.6868442424322774]\n", + "Times covered: {0: 8448, 3: 3912}\n", + "Times fragmented: {0: 7875, 3: 3251, 6: 821, 9: 224, 12: 61, 15: 24, 18: 7, 21: 2, 24: 2, 27: 4, 33: 32, 36: 1, 39: 8, 42: 5, 45: 1, 48: 8, 60: 2, 63: 12, 69: 14, 72: 3, 75: 2, 84: 1}\n", + "\n" + ] + } + ], + "source": [ + "# Now evaluate\n", + "\n", + "isolation_width = 1.0\n", + "\n", + "pp_params = XCMSScriptParams( # Pick peaks with a small R script running XCMS - this object knows how to run the script and read and write files with it...\n", + " xcms_r_script = os.path.join(user_vimms, \"vimms\", \"scripts\", \"xcms_script.R\"), # Where our runner script lives...\n", + " # See XCMS documentation for details on parameters\n", + " ppm = 15,\n", + " pwlower = 15,\n", + " pwupper = 80,\n", + " snthresh = 5,\n", + " noise = 1000,\n", + " prefilterlower = 3,\n", + " prefilterupper = 500\n", + ")\n", + "\n", + "same_beer_exp.evaluate(\n", + " pp_params = pp_params,\n", + " num_workers = 2,\n", + " isolation_widths = isolation_width,\n", + " aligned_names = \"beer_peak_picked.csv\", # Name of peak-picked file\n", + " force_peak_picking = False, # If True, run peak-picking even when file already exists\n", + " check_files = \"exact\" # Make sure the fullscan names match the ones in the peak-picked file\n", + ")\n", + "\n", + "same_beer_exp.summarise(\n", + " num_workers = 2,\n", + " min_intensities = 5000.0,\n", + " rank_key = \"cumulative_intensity_proportion\" # Which score to order by best to worst performing\n", + ")" + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "id": "795150a9", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "2023-09-20 07:30:21.009 | DEBUG | mass_spec_utils.data_import.mzml:_load_file:166 - Loaded 6256 scans\n", + "2023-09-20 07:30:23.298 | DEBUG | mass_spec_utils.data_import.mzml:_load_file:166 - Loaded 6256 scans\n", + "2023-09-20 07:30:25.574 | DEBUG | mass_spec_utils.data_import.mzml:_load_file:166 - Loaded 6256 scans\n", + "2023-09-20 07:30:27.883 | DEBUG | mass_spec_utils.data_import.mzml:_load_file:166 - Loaded 6262 scans\n", + "2023-09-20 07:30:30.224 | DEBUG | mass_spec_utils.data_import.mzml:_load_file:166 - Loaded 6249 scans\n", + "2023-09-20 07:30:32.568 | DEBUG | mass_spec_utils.data_import.mzml:_load_file:166 - Loaded 6225 scans\n" + ] + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "# And plot again\n", + "\n", + "from vimms.BoxVisualise import mpl_results_plot, mpl_set_figure_style\n", + "\n", + "fig, axes = mpl_results_plot( # Plot cumulative coverage and cumulative intensity coverage\n", + " exp_names,\n", + " same_beer_exp.evaluators,\n", + " markers = [\"o\" for _ in exp_names],\n", + " min_intensity = 5000.0, # As above\n", + " # This plot can be styled in many ways...\n", + ")\n", + "\n", + "mpl_set_figure_style(\n", + " fig,\n", + " figure_sizes = (18, 8),\n", + ")\n", + "\n", + "for ax in axes:\n", + " ax.set_xticks([x for x in range(1, len(beer_chem_list) + 1)])" + ] + }, + { + "cell_type": "markdown", + "id": "9af296de", + "metadata": {}, + "source": [ + "Re-simulating experiments with lots of complex .mzMLs can take a lot of time, so we commonly split the generation and evaluation into separate notebooks or re-run only some of the cases. It's therefore possible to instantiate an Experiment object with the data needed for evaluation from the .mzMLs. It's possible to do this by manually specifying the .mzMLs to load from, but when running an `Experiment` it also includes a small \"keyfile\" describing which .mzMLs are linked to which cases and which can be parsed to re-load and evaluate a previously run `Experiment`." + ] + }, + { + "cell_type": "code", + "execution_count": 21, + "id": "9b50d9ab", + "metadata": {}, + "outputs": [], + "source": [ + "# Load the Experiment from the keyfile and .mzMLs\n", + "\n", + "from vimms.Experiment import ExperimentCase, Experiment\n", + "\n", + "same_beer_exp = Experiment.load_from_json(\n", + " file_dir = exp_out_dir, # Where the keyfile is\n", + " file_name = \"keyfile.json\", # What the keyfile is called\n", + " out_dir = exp_out_dir, # Directory associated with the Experiment\n", + " fullscan_dir = os.path.dirname(beer_fullscan), # Parent directory of seed files\n", + " amend_result_path = True, # If true, overwrite directory path of .mzMLs written in the file with out_dir\n", + " case_names = [\"topN\", \"intensity_non_overlap\"]\n", + ")" + ] + }, + { + "cell_type": "code", + "execution_count": 22, + "id": "a92a686b", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "12360 aligned boxes contained in file\n", + "12360 aligned boxes contained in file\n", + "\n", + "intensity_non_overlap\n", + "Number of chems above min intensity: 11979\n", + "Number of fragmentations: [5684, 5652, 5622]\n", + "Cumulative coverage: [3865, 5820, 7099]\n", + "Cumulative coverage proportion: [0.3226479672760664, 0.4858502379163536, 0.5926204190667]\n", + "Cumulative intensity proportion: [0.2066383156296255, 0.35297701117957114, 0.45882637742927884]\n", + "Cumulative intensity proportion of covered spectra: [0.6404451184805392, 0.7265140235257874, 0.7742331561100622]\n", + "Times covered: {0: 5261, 1: 3842, 2: 2017, 3: 1240}\n", + "Times fragmented: {0: 4506, 1: 3581, 2: 1857, 3: 1120, 4: 476, 5: 252, 6: 173, 7: 81, 8: 53, 9: 32, 10: 27, 11: 10, 12: 25, 13: 15, 14: 31, 15: 6, 16: 2, 17: 5, 18: 8, 19: 2, 20: 1, 24: 2, 26: 1, 29: 2, 30: 1, 33: 4, 34: 1, 36: 26, 42: 1, 55: 1, 56: 1, 58: 1, 60: 1, 61: 2, 62: 2, 63: 2, 64: 3, 65: 1, 66: 1, 67: 1, 70: 3, 71: 3, 73: 2, 79: 1, 84: 1, 86: 1, 87: 12, 118: 1, 119: 1, 123: 1, 124: 1, 125: 4, 126: 2, 129: 2, 130: 1, 131: 3, 132: 1, 134: 1, 135: 1, 141: 1}\n", + "\n", + "topN\n", + "Number of chems above min intensity: 11761\n", + "Number of fragmentations: [5677, 5677, 5677]\n", + "Cumulative coverage: [3912, 3912, 3912]\n", + "Cumulative coverage proportion: [0.3326247768046935, 0.3326247768046935, 0.3326247768046935]\n", + "Cumulative intensity proportion: [0.22846141283862503, 0.22846141283862503, 0.22846141283862503]\n", + "Cumulative intensity proportion of covered spectra: [0.6868442424322774, 0.6868442424322774, 0.6868442424322774]\n", + "Times covered: {0: 8448, 3: 3912}\n", + "Times fragmented: {0: 7875, 3: 3251, 6: 821, 9: 224, 12: 61, 15: 24, 18: 7, 21: 2, 24: 2, 27: 4, 33: 32, 36: 1, 39: 8, 42: 5, 45: 1, 48: 8, 60: 2, 63: 12, 69: 14, 72: 3, 75: 2, 84: 1}\n", + "\n" + ] + } + ], + "source": [ + "# Same evaluation... Should get the same result!\n", + "\n", + "same_beer_exp.evaluate(\n", + " pp_params = pp_params,\n", + " num_workers = 2,\n", + " isolation_widths = isolation_width,\n", + " aligned_names = \"beer_peak_picked.csv\", # Name of peak-picked file\n", + " force_peak_picking = False, # If True, run peak-picking even when file already exists\n", + " check_files = \"exact\" # Make sure the fullscan names match the ones in the peak-picked file\n", + ")\n", + "\n", + "same_beer_exp.summarise(\n", + " num_workers = 2,\n", + " min_intensities = 5000.0,\n", + " rank_key = \"cumulative_intensity_proportion\", # Which score to order by best to worst performing\n", + ")" + ] + }, + { + "cell_type": "code", + "execution_count": 23, + "id": "66e597d9", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "2023-09-20 07:31:53.438 | DEBUG | mass_spec_utils.data_import.mzml:_load_file:166 - Loaded 6256 scans\n", + "2023-09-20 07:31:55.905 | DEBUG | mass_spec_utils.data_import.mzml:_load_file:166 - Loaded 6256 scans\n", + "2023-09-20 07:31:58.354 | DEBUG | mass_spec_utils.data_import.mzml:_load_file:166 - Loaded 6256 scans\n", + "2023-09-20 07:32:00.723 | DEBUG | mass_spec_utils.data_import.mzml:_load_file:166 - Loaded 6262 scans\n", + "2023-09-20 07:32:03.035 | DEBUG | mass_spec_utils.data_import.mzml:_load_file:166 - Loaded 6249 scans\n", + "2023-09-20 07:32:05.430 | DEBUG | mass_spec_utils.data_import.mzml:_load_file:166 - Loaded 6225 scans\n" + ] + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "# Plot again... Should be same!\n", + "\n", + "from vimms.BoxVisualise import mpl_results_plot, mpl_set_figure_style\n", + "\n", + "fig, axes = mpl_results_plot( # Plot cumulative coverage and cumulative intensity coverage\n", + " exp_names,\n", + " same_beer_exp.evaluators,\n", + " markers = [\"o\" for _ in exp_names],\n", + " min_intensity = 5000.0, # As above\n", + " # This plot can be styled in many ways...\n", + ")\n", + "\n", + "mpl_set_figure_style(\n", + " fig,\n", + " figure_sizes = (18, 8),\n", + ")\n", + "\n", + "for ax in axes:\n", + " ax.set_xticks([x for x in range(1, len(beer_chem_list) + 1)])" + ] + }, + { + "cell_type": "markdown", + "id": "2964ba2f", + "metadata": {}, + "source": [ + "These are relatively small examples, but more involved examples can be found in the notebooks we have used for our research publications - at the time of writing these can be found [in the ViMMS Github repository](https://github.com/glasgowcompbio/vimms/tree/master) in the Examples folder." + ] + }, + { + "cell_type": "markdown", + "id": "5f2f1eca", + "metadata": {}, + "source": [ + "## Controlling a Real Instrument" + ] + }, + { + "cell_type": "markdown", + "id": "aea44e56", + "metadata": {}, + "source": [ + "In order to control a real instrument ViMMS requires bridging code which communicates between the pure-Python codebase of ViMMS and the API of said instrument. Said bridging code \"translates\" the high-level Python code to the specific language of the instrument, and each piece of bridging code can naturally only be used with instruments that expose such a compatible API. At the time of writing, bridging code has been written that is compatible with Thermo Orbitrap Fusion instruments, but licensing restrictions mean it cannot be shared publicly. Please contact us if you're interested in running something on a real machine." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "bba3ab47", + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.9.12" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} From 8df73d821a8a0f37a00bb1aeed2069c0c02a8d6b Mon Sep 17 00:00:00 2001 From: Joe Wandy Date: Tue, 26 Sep 2023 00:08:15 +0100 Subject: [PATCH 61/67] Updated README, bumped version --- README.md | 2 +- setup.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 786d3e57..9daa99b9 100644 --- a/README.md +++ b/README.md @@ -13,6 +13,7 @@ Eager to start using ViMMS? Take advantage of these resources: - Visit our project documentation page: [![Documentation Status](https://readthedocs.org/projects/vimms/badge/?version=latest)](http://vimms.readthedocs.io/?badge=latest) - Our [Demo folder](https://github.com/glasgowcompbio/vimms/tree/master/demo) contains notebooks that demonstrate how to use the framework in a simulated environment. - For specific examples that accompany our publications, see the [Example folder](https://github.com/glasgowcompbio/vimms/tree/master/examples). +- You can also find this [quick guide on how to get started using ViMMS](https://github.com/glasgowcompbio/vimms/blob/master/demo/guide_to_vimms.ipynb). # Key Features @@ -22,7 +23,6 @@ Moreover, ViMMS serves as a platform for the development, optimization, and test To see a more thorough explanation of the use cases of ViMMS, please refer to the [Use Cases](pages/use_cases.md) section. -You can also find this [quick guide on how to get started using ViMMS](https://github.com/glasgowcompbio/vimms/blob/master/demo/guide_to_vimms.ipynb). # Contributions diff --git a/setup.py b/setup.py index c597e127..b97eb9fd 100644 --- a/setup.py +++ b/setup.py @@ -6,7 +6,7 @@ setup( dependency_links=[], name="vimms", - version="2.1.1", + version="2.1.2", author="Joe Wandy, Vinny Davies, Ross McBride, Justin J.J. van der Hooft, " "Stefan Weidt, Ronan Daly, Simon Rogers", author_email="joe.wandy@glasgow.ac.uk", From aa0a61fd7ff5e1b05aadb46496f9d3db5d951309 Mon Sep 17 00:00:00 2001 From: Joe Wandy Date: Tue, 26 Sep 2023 09:55:51 +0100 Subject: [PATCH 62/67] GitHub workflow using conda instead of pipenv --- .github/workflows/python-package-conda.yml | 34 ++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 .github/workflows/python-package-conda.yml diff --git a/.github/workflows/python-package-conda.yml b/.github/workflows/python-package-conda.yml new file mode 100644 index 00000000..384f9b72 --- /dev/null +++ b/.github/workflows/python-package-conda.yml @@ -0,0 +1,34 @@ +name: Python Package using Conda + +on: [push] + +jobs: + build-linux: + runs-on: ubuntu-latest + strategy: + max-parallel: 5 + + steps: + - uses: actions/checkout@v3 + - name: Set up Python 3.10 + uses: actions/setup-python@v3 + with: + python-version: '3.10' + - name: Add conda to system path + run: | + # $CONDA is an environment variable pointing to the root of the miniconda directory + echo $CONDA/bin >> $GITHUB_PATH + - name: Install dependencies + run: | + conda env update --file environment.yml --name base + - name: Lint with flake8 + run: | + conda install flake8 + # stop the build if there are Python syntax errors or undefined names + flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics + # exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide + flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics + - name: Test with pytest + run: | + conda install pytest + pytest From 312c5f3e43fa2ef2054ed2b3552c2c48fc402018 Mon Sep 17 00:00:00 2001 From: Joe Wandy Date: Tue, 26 Sep 2023 10:05:53 +0100 Subject: [PATCH 63/67] Removed unused workflow file --- .github/workflows/python-package.yml | 37 ---------------------------- 1 file changed, 37 deletions(-) delete mode 100644 .github/workflows/python-package.yml diff --git a/.github/workflows/python-package.yml b/.github/workflows/python-package.yml deleted file mode 100644 index 501ba911..00000000 --- a/.github/workflows/python-package.yml +++ /dev/null @@ -1,37 +0,0 @@ -# This workflow will install Python dependencies, run tests and lint with a variety of Python versions -# For more information see: https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions - -name: Vimms - -on: - push: - branches: [ master ] - pull_request: - branches: [ master ] - workflow_dispatch: - -jobs: - build: - - runs-on: ubuntu-latest - - steps: - - uses: actions/checkout@v2 - - name: Set up Python 3.9 - uses: actions/setup-python@v2 - with: - python-version: '3.9' - - name: Install dependencies - run: | - python -m pip install --upgrade pip - pip install pipenv - pipenv install --dev --python 3.9 - - name: Lint with flake8 - run: | - # stop the build if there are Python syntax errors or undefined names - pipenv run flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics --exclude=experimental/* - # exit-zero treats all errors as warnings. - pipenv run flake8 . --count --exit-zero --statistics - - name: Test with pytest - run: | - pipenv run pytest --exitfirst --verbose --failed-first --cov=. From 7802e61b0cfa83a2268cbc5b5cc615abe4ccceaf Mon Sep 17 00:00:00 2001 From: Joe Wandy Date: Wed, 27 Sep 2023 00:14:16 +0100 Subject: [PATCH 64/67] - Bumped version to 2.1.3 - Added Poetry support to manage dependencies. - Added version numbers when specifying dependencies in environment.yml (for Conda), Pipfile (for Pipenv) and pyproject.toml (for Poetry) - Now using poetry to publish the package, rather than setup.py - Gpy is commented at the moment from Pipfile and pyproject.toml, as it doesn't work for me. Please use conda if you need it. --- Pipfile | 74 +- environment.yml | 80 +- poetry.lock | 4552 +++++++++++++++++++++++++++++++++++++++++++++++ pyproject.toml | 64 + setup.py | 33 - 5 files changed, 4694 insertions(+), 109 deletions(-) create mode 100644 poetry.lock create mode 100644 pyproject.toml delete mode 100644 setup.py diff --git a/Pipfile b/Pipfile index 1ca177c0..7b373fb5 100644 --- a/Pipfile +++ b/Pipfile @@ -4,48 +4,50 @@ verify_ssl = true name = "pypi" [packages] -numpy = "*" -pandas = "*" -scipy = "*" -matplotlib = "*" -numba = "*" -numba-stats = "*" -seaborn = "*" -plotly = "*" -scikit-learn = "*" +numpy = "==1.24.3" +pandas = "==2.0.3" +scipy = "==1.11.1" +matplotlib = "==3.7.2" +numba = "==0.57.1" +numba-stats = "==1.3.0" +seaborn = "==0.12.2" +plotly = "==5.9.0" +scikit-learn = "==1.3.0" pymzml = "==2.4.7" -psims = "*" -events = "*" -tqdm = "*" -joblib = "*" -ipyparallel = "*" -requests = "*" -loguru = "*" -networkx = "*" -jsonpickle = "*" -statsmodels = "*" +psims = "==1.2.7" +events = "==0.5" +tqdm = "==4.65.0" +joblib = "==1.2.0" +ipyparallel = "==8.4.1" +requests = "==2.31.0" +loguru = "==0.5.3" +networkx = "==3.1" +jsonpickle = "==2.2.0" +statsmodels = "==0.14.0" mass-spec-utils = "*" -brain-isotopic-distribution = "*" -ms_peak_picker = "*" -ms_deisotope = "*" -tabulate = "*" -pysmiles = "*" +brain-isotopic-distribution = "==1.5.14" +ms-peak-picker = "==0.1.42" +ms-deisotope = "==0.0.52" +tabulate = "==0.8.10" +pysmiles = "==1.1.2" pipenv-setup = "*" -flake8 = "*" -autopep8 = "*" -pytest = "*" -pytest-cov = "*" -intervaltree = "*" -jupyterlab = "*" -ipywidgets = "*" -gpy = "*" -optuna = "*" +flake8 = "==6.0.0" +autopep8 = "==1.6.0" +pytest = "==7.4.0" +pytest-cov = "==4.1.0" +intervaltree = "==3.1.0" +jupyterlab = "==3.6.3" +ipywidgets = "==8.0.4" +# gpy = "==1.10.0" +optuna = "==3.3.0" +# kaleido = "==0.2.1" [dev-packages] twine = "*" build = "*" -mkdocs = "*" -mkdocstrings = "*" +mkdocs = "==1.5.3" +mkdocstrings = "==0.23.0" +mkdocstrings-python = "==1.7.0" [requires] -python_version = "3" +python_version = "3.10" diff --git a/environment.yml b/environment.yml index f37efbdc..7fd03787 100644 --- a/environment.yml +++ b/environment.yml @@ -1,46 +1,46 @@ name: vimms channels: -- defaults + - defaults dependencies: - - python=3.9 - - numpy - - pandas - - numba - - scipy - - matplotlib - - seaborn - - plotly - - scikit-learn - - tqdm - - joblib - - ipyparallel - - requests - - loguru - - networkx - - jsonpickle - - statsmodels - - tabulate - - flake8 - - autopep8 - - pytest - - pytest-cov - - intervaltree - - jupyterlab - - ipywidgets + - python>=3.9,<3.11 + - numpy=1.24.3 + - pandas=2.0.3 + - numba=0.57.1 + - scipy=1.11.1 + - matplotlib=3.7.2 + - seaborn=0.12.2 + - plotly=5.9.0 + - scikit-learn=1.3.0 + - tqdm=4.65.0 + - joblib=1.2.0 + - ipyparallel=8.4.1 + - requests=2.31.0 + - loguru=0.5.3 + - networkx=3.1 + - jsonpickle=2.2.0 + - statsmodels=0.14.0 + - tabulate=0.8.10 + - flake8=6.0.0 + - autopep8=1.6.0 + - pytest=7.4.0 + - pytest-cov=4.1.0 + - intervaltree=3.1.0 + - jupyterlab=3.6.3 + - ipywidgets=8.0.4 - pip - pip: - - events - - gpy - - mkdocs - - mkdocstrings - - mkdocstrings[python] + - events==0.5 + - gpy==1.10.0 + - mkdocs==1.5.3 + - mkdocstrings==0.23.0 + - mkdocstrings-python==1.7.0 - pymzml==2.4.7 - - psims - - mass-spec-utils - - pysmiles - - numba-stats - - brain-isotopic-distribution - - ms_peak_picker - - ms_deisotope - - optuna - - kaleido + - psims==1.2.7 + - mass-spec-utils==0.0.12 + - pysmiles==1.1.2 + - numba-stats==1.3.0 + - brain-isotopic-distribution==1.5.14 + - ms-peak-picker==0.1.42 + - ms-deisotope==0.0.52 + - optuna==3.3.0 + - kaleido==0.2.1 diff --git a/poetry.lock b/poetry.lock new file mode 100644 index 00000000..c9c54d3b --- /dev/null +++ b/poetry.lock @@ -0,0 +1,4552 @@ +# This file is automatically @generated by Poetry 1.6.1 and should not be changed by hand. + +[[package]] +name = "aiofiles" +version = "22.1.0" +description = "File support for asyncio." +optional = false +python-versions = ">=3.7,<4.0" +files = [ + {file = "aiofiles-22.1.0-py3-none-any.whl", hash = "sha256:1142fa8e80dbae46bb6339573ad4c8c0841358f79c6eb50a493dceca14621bad"}, + {file = "aiofiles-22.1.0.tar.gz", hash = "sha256:9107f1ca0b2a5553987a94a3c9959fe5b491fdf731389aa5b7b1bd0733e32de6"}, +] + +[[package]] +name = "aiosqlite" +version = "0.19.0" +description = "asyncio bridge to the standard sqlite3 module" +optional = false +python-versions = ">=3.7" +files = [ + {file = "aiosqlite-0.19.0-py3-none-any.whl", hash = "sha256:edba222e03453e094a3ce605db1b970c4b3376264e56f32e2a4959f948d66a96"}, + {file = "aiosqlite-0.19.0.tar.gz", hash = "sha256:95ee77b91c8d2808bd08a59fbebf66270e9090c3d92ffbf260dc0db0b979577d"}, +] + +[package.extras] +dev = ["aiounittest (==1.4.1)", "attribution (==1.6.2)", "black (==23.3.0)", "coverage[toml] (==7.2.3)", "flake8 (==5.0.4)", "flake8-bugbear (==23.3.12)", "flit (==3.7.1)", "mypy (==1.2.0)", "ufmt (==2.1.0)", "usort (==1.0.6)"] +docs = ["sphinx (==6.1.3)", "sphinx-mdinclude (==0.5.3)"] + +[[package]] +name = "alembic" +version = "1.12.0" +description = "A database migration tool for SQLAlchemy." +optional = false +python-versions = ">=3.7" +files = [ + {file = "alembic-1.12.0-py3-none-any.whl", hash = "sha256:03226222f1cf943deee6c85d9464261a6c710cd19b4fe867a3ad1f25afda610f"}, + {file = "alembic-1.12.0.tar.gz", hash = "sha256:8e7645c32e4f200675e69f0745415335eb59a3663f5feb487abfa0b30c45888b"}, +] + +[package.dependencies] +Mako = "*" +SQLAlchemy = ">=1.3.0" +typing-extensions = ">=4" + +[package.extras] +tz = ["python-dateutil"] + +[[package]] +name = "anyio" +version = "4.0.0" +description = "High level compatibility layer for multiple asynchronous event loop implementations" +optional = false +python-versions = ">=3.8" +files = [ + {file = "anyio-4.0.0-py3-none-any.whl", hash = "sha256:cfdb2b588b9fc25ede96d8db56ed50848b0b649dca3dd1df0b11f683bb9e0b5f"}, + {file = "anyio-4.0.0.tar.gz", hash = "sha256:f7ed51751b2c2add651e5747c891b47e26d2a21be5d32d9311dfe9692f3e5d7a"}, +] + +[package.dependencies] +exceptiongroup = {version = ">=1.0.2", markers = "python_version < \"3.11\""} +idna = ">=2.8" +sniffio = ">=1.1" + +[package.extras] +doc = ["Sphinx (>=7)", "packaging", "sphinx-autodoc-typehints (>=1.2.0)"] +test = ["anyio[trio]", "coverage[toml] (>=7)", "hypothesis (>=4.0)", "psutil (>=5.9)", "pytest (>=7.0)", "pytest-mock (>=3.6.1)", "trustme", "uvloop (>=0.17)"] +trio = ["trio (>=0.22)"] + +[[package]] +name = "appnope" +version = "0.1.3" +description = "Disable App Nap on macOS >= 10.9" +optional = false +python-versions = "*" +files = [ + {file = "appnope-0.1.3-py2.py3-none-any.whl", hash = "sha256:265a455292d0bd8a72453494fa24df5a11eb18373a60c7c0430889f22548605e"}, + {file = "appnope-0.1.3.tar.gz", hash = "sha256:02bd91c4de869fbb1e1c50aafc4098827a7a54ab2f39d9dcba6c9547ed920e24"}, +] + +[[package]] +name = "argon2-cffi" +version = "23.1.0" +description = "Argon2 for Python" +optional = false +python-versions = ">=3.7" +files = [ + {file = "argon2_cffi-23.1.0-py3-none-any.whl", hash = "sha256:c670642b78ba29641818ab2e68bd4e6a78ba53b7eff7b4c3815ae16abf91c7ea"}, + {file = "argon2_cffi-23.1.0.tar.gz", hash = "sha256:879c3e79a2729ce768ebb7d36d4609e3a78a4ca2ec3a9f12286ca057e3d0db08"}, +] + +[package.dependencies] +argon2-cffi-bindings = "*" + +[package.extras] +dev = ["argon2-cffi[tests,typing]", "tox (>4)"] +docs = ["furo", "myst-parser", "sphinx", "sphinx-copybutton", "sphinx-notfound-page"] +tests = ["hypothesis", "pytest"] +typing = ["mypy"] + +[[package]] +name = "argon2-cffi-bindings" +version = "21.2.0" +description = "Low-level CFFI bindings for Argon2" +optional = false +python-versions = ">=3.6" +files = [ + {file = "argon2-cffi-bindings-21.2.0.tar.gz", hash = "sha256:bb89ceffa6c791807d1305ceb77dbfacc5aa499891d2c55661c6459651fc39e3"}, + {file = "argon2_cffi_bindings-21.2.0-cp36-abi3-macosx_10_9_x86_64.whl", hash = "sha256:ccb949252cb2ab3a08c02024acb77cfb179492d5701c7cbdbfd776124d4d2367"}, + {file = "argon2_cffi_bindings-21.2.0-cp36-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9524464572e12979364b7d600abf96181d3541da11e23ddf565a32e70bd4dc0d"}, + {file = "argon2_cffi_bindings-21.2.0-cp36-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b746dba803a79238e925d9046a63aa26bf86ab2a2fe74ce6b009a1c3f5c8f2ae"}, + {file = "argon2_cffi_bindings-21.2.0-cp36-abi3-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:58ed19212051f49a523abb1dbe954337dc82d947fb6e5a0da60f7c8471a8476c"}, + {file = "argon2_cffi_bindings-21.2.0-cp36-abi3-musllinux_1_1_aarch64.whl", hash = "sha256:bd46088725ef7f58b5a1ef7ca06647ebaf0eb4baff7d1d0d177c6cc8744abd86"}, + {file = "argon2_cffi_bindings-21.2.0-cp36-abi3-musllinux_1_1_i686.whl", hash = "sha256:8cd69c07dd875537a824deec19f978e0f2078fdda07fd5c42ac29668dda5f40f"}, + {file = "argon2_cffi_bindings-21.2.0-cp36-abi3-musllinux_1_1_x86_64.whl", hash = "sha256:f1152ac548bd5b8bcecfb0b0371f082037e47128653df2e8ba6e914d384f3c3e"}, + {file = "argon2_cffi_bindings-21.2.0-cp36-abi3-win32.whl", hash = "sha256:603ca0aba86b1349b147cab91ae970c63118a0f30444d4bc80355937c950c082"}, + {file = "argon2_cffi_bindings-21.2.0-cp36-abi3-win_amd64.whl", hash = "sha256:b2ef1c30440dbbcba7a5dc3e319408b59676e2e039e2ae11a8775ecf482b192f"}, + {file = "argon2_cffi_bindings-21.2.0-cp38-abi3-macosx_10_9_universal2.whl", hash = "sha256:e415e3f62c8d124ee16018e491a009937f8cf7ebf5eb430ffc5de21b900dad93"}, + {file = "argon2_cffi_bindings-21.2.0-pp37-pypy37_pp73-macosx_10_9_x86_64.whl", hash = "sha256:3e385d1c39c520c08b53d63300c3ecc28622f076f4c2b0e6d7e796e9f6502194"}, + {file = "argon2_cffi_bindings-21.2.0-pp37-pypy37_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2c3e3cc67fdb7d82c4718f19b4e7a87123caf8a93fde7e23cf66ac0337d3cb3f"}, + {file = "argon2_cffi_bindings-21.2.0-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6a22ad9800121b71099d0fb0a65323810a15f2e292f2ba450810a7316e128ee5"}, + {file = "argon2_cffi_bindings-21.2.0-pp37-pypy37_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f9f8b450ed0547e3d473fdc8612083fd08dd2120d6ac8f73828df9b7d45bb351"}, + {file = "argon2_cffi_bindings-21.2.0-pp37-pypy37_pp73-win_amd64.whl", hash = "sha256:93f9bf70084f97245ba10ee36575f0c3f1e7d7724d67d8e5b08e61787c320ed7"}, + {file = "argon2_cffi_bindings-21.2.0-pp38-pypy38_pp73-macosx_10_9_x86_64.whl", hash = "sha256:3b9ef65804859d335dc6b31582cad2c5166f0c3e7975f324d9ffaa34ee7e6583"}, + {file = "argon2_cffi_bindings-21.2.0-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d4966ef5848d820776f5f562a7d45fdd70c2f330c961d0d745b784034bd9f48d"}, + {file = "argon2_cffi_bindings-21.2.0-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:20ef543a89dee4db46a1a6e206cd015360e5a75822f76df533845c3cbaf72670"}, + {file = "argon2_cffi_bindings-21.2.0-pp38-pypy38_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ed2937d286e2ad0cc79a7087d3c272832865f779430e0cc2b4f3718d3159b0cb"}, + {file = "argon2_cffi_bindings-21.2.0-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:5e00316dabdaea0b2dd82d141cc66889ced0cdcbfa599e8b471cf22c620c329a"}, +] + +[package.dependencies] +cffi = ">=1.0.1" + +[package.extras] +dev = ["cogapp", "pre-commit", "pytest", "wheel"] +tests = ["pytest"] + +[[package]] +name = "arrow" +version = "1.2.3" +description = "Better dates & times for Python" +optional = false +python-versions = ">=3.6" +files = [ + {file = "arrow-1.2.3-py3-none-any.whl", hash = "sha256:5a49ab92e3b7b71d96cd6bfcc4df14efefc9dfa96ea19045815914a6ab6b1fe2"}, + {file = "arrow-1.2.3.tar.gz", hash = "sha256:3934b30ca1b9f292376d9db15b19446088d12ec58629bc3f0da28fd55fb633a1"}, +] + +[package.dependencies] +python-dateutil = ">=2.7.0" + +[[package]] +name = "asttokens" +version = "2.4.0" +description = "Annotate AST trees with source code positions" +optional = false +python-versions = "*" +files = [ + {file = "asttokens-2.4.0-py2.py3-none-any.whl", hash = "sha256:cf8fc9e61a86461aa9fb161a14a0841a03c405fa829ac6b202670b3495d2ce69"}, + {file = "asttokens-2.4.0.tar.gz", hash = "sha256:2e0171b991b2c959acc6c49318049236844a5da1d65ba2672c4880c1c894834e"}, +] + +[package.dependencies] +six = ">=1.12.0" + +[package.extras] +test = ["astroid", "pytest"] + +[[package]] +name = "attrs" +version = "23.1.0" +description = "Classes Without Boilerplate" +optional = false +python-versions = ">=3.7" +files = [ + {file = "attrs-23.1.0-py3-none-any.whl", hash = "sha256:1f28b4522cdc2fb4256ac1a020c78acf9cba2c6b461ccd2c126f3aa8e8335d04"}, + {file = "attrs-23.1.0.tar.gz", hash = "sha256:6279836d581513a26f1bf235f9acd333bc9115683f14f7e8fae46c98fc50e015"}, +] + +[package.extras] +cov = ["attrs[tests]", "coverage[toml] (>=5.3)"] +dev = ["attrs[docs,tests]", "pre-commit"] +docs = ["furo", "myst-parser", "sphinx", "sphinx-notfound-page", "sphinxcontrib-towncrier", "towncrier", "zope-interface"] +tests = ["attrs[tests-no-zope]", "zope-interface"] +tests-no-zope = ["cloudpickle", "hypothesis", "mypy (>=1.1.1)", "pympler", "pytest (>=4.3.0)", "pytest-mypy-plugins", "pytest-xdist[psutil]"] + +[[package]] +name = "autopep8" +version = "1.7.0" +description = "A tool that automatically formats Python code to conform to the PEP 8 style guide" +optional = false +python-versions = "*" +files = [ + {file = "autopep8-1.7.0-py2.py3-none-any.whl", hash = "sha256:6f09e90a2be784317e84dc1add17ebfc7abe3924239957a37e5040e27d812087"}, + {file = "autopep8-1.7.0.tar.gz", hash = "sha256:ca9b1a83e53a7fad65d731dc7a2a2d50aa48f43850407c59f6a1a306c4201142"}, +] + +[package.dependencies] +pycodestyle = ">=2.9.1" +toml = "*" + +[[package]] +name = "babel" +version = "2.12.1" +description = "Internationalization utilities" +optional = false +python-versions = ">=3.7" +files = [ + {file = "Babel-2.12.1-py3-none-any.whl", hash = "sha256:b4246fb7677d3b98f501a39d43396d3cafdc8eadb045f4a31be01863f655c610"}, + {file = "Babel-2.12.1.tar.gz", hash = "sha256:cc2d99999cd01d44420ae725a21c9e3711b3aadc7976d6147f622d8581963455"}, +] + +[[package]] +name = "backcall" +version = "0.2.0" +description = "Specifications for callback functions passed in to an API" +optional = false +python-versions = "*" +files = [ + {file = "backcall-0.2.0-py2.py3-none-any.whl", hash = "sha256:fbbce6a29f263178a1f7915c1940bde0ec2b2a967566fe1c65c1dfb7422bd255"}, + {file = "backcall-0.2.0.tar.gz", hash = "sha256:5cbdbf27be5e7cfadb448baf0aa95508f91f2bbc6c6437cd9cd06e2a4c215e1e"}, +] + +[[package]] +name = "beautifulsoup4" +version = "4.12.2" +description = "Screen-scraping library" +optional = false +python-versions = ">=3.6.0" +files = [ + {file = "beautifulsoup4-4.12.2-py3-none-any.whl", hash = "sha256:bd2520ca0d9d7d12694a53d44ac482d181b4ec1888909b035a3dbf40d0f57d4a"}, + {file = "beautifulsoup4-4.12.2.tar.gz", hash = "sha256:492bbc69dca35d12daac71c4db1bfff0c876c00ef4a2ffacce226d4638eb72da"}, +] + +[package.dependencies] +soupsieve = ">1.2" + +[package.extras] +html5lib = ["html5lib"] +lxml = ["lxml"] + +[[package]] +name = "bleach" +version = "6.0.0" +description = "An easy safelist-based HTML-sanitizing tool." +optional = false +python-versions = ">=3.7" +files = [ + {file = "bleach-6.0.0-py3-none-any.whl", hash = "sha256:33c16e3353dbd13028ab4799a0f89a83f113405c766e9c122df8a06f5b85b3f4"}, + {file = "bleach-6.0.0.tar.gz", hash = "sha256:1a1a85c1595e07d8db14c5f09f09e6433502c51c595970edc090551f0db99414"}, +] + +[package.dependencies] +six = ">=1.9.0" +webencodings = "*" + +[package.extras] +css = ["tinycss2 (>=1.1.0,<1.2)"] + +[[package]] +name = "brain-isotopic-distribution" +version = "1.5.14" +description = "Fast and efficient theoretical isotopic profile generation" +optional = false +python-versions = "*" +files = [ + {file = "brain-isotopic-distribution-1.5.14.tar.gz", hash = "sha256:406e95eccf3736ea4497cf9a76b41a155d5534c3ede626f3d00d2bd33a41615b"}, + {file = "brain_isotopic_distribution-1.5.14-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:d9752406cddd63dc0231f7431c2ed607c19ec0ddacd72ddb6964ff631cfd0c89"}, + {file = "brain_isotopic_distribution-1.5.14-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5b56485e155242489e513be38f54d3fcfdf8b97cec35e68efdc8f82359db8f32"}, + {file = "brain_isotopic_distribution-1.5.14-cp310-cp310-win_amd64.whl", hash = "sha256:c0df2d4b410d6198b400d2d065e6b83fab6fa79ae6d6fc28ef5ca0b5af214dea"}, + {file = "brain_isotopic_distribution-1.5.14-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:d138269bec747a67cf1dea8d1988943c1a7ca4baee43764e4c828f2eaffb71c7"}, + {file = "brain_isotopic_distribution-1.5.14-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:737f3139a64ed1ddd9e23fd599801d445bfe3fd850cddd5a933e99c80d3d9d8c"}, + {file = "brain_isotopic_distribution-1.5.14-cp38-cp38-win_amd64.whl", hash = "sha256:f147f691ecdc0f204c4fd8ec7d16edb1a6e86ae57e4275414861f46013463a02"}, + {file = "brain_isotopic_distribution-1.5.14-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:5afba91bbe56f886e98d4a1796e152fcb35f2bc67960ade40fd8dddd34c271a9"}, + {file = "brain_isotopic_distribution-1.5.14-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:486dbd6c07067609feac5b594005f108c6c5bdc4cd3cc14f4628b67ba3fae95b"}, + {file = "brain_isotopic_distribution-1.5.14-cp39-cp39-win_amd64.whl", hash = "sha256:c303b1d4da4dad89c7237a690a94fa5c4c88a79033b7330b6d8da7cb6ccc37f3"}, +] + +[[package]] +name = "certifi" +version = "2023.7.22" +description = "Python package for providing Mozilla's CA Bundle." +optional = false +python-versions = ">=3.6" +files = [ + {file = "certifi-2023.7.22-py3-none-any.whl", hash = "sha256:92d6037539857d8206b8f6ae472e8b77db8058fec5937a1ef3f54304089edbb9"}, + {file = "certifi-2023.7.22.tar.gz", hash = "sha256:539cc1d13202e33ca466e88b2807e29f4c13049d6d87031a3c110744495cb082"}, +] + +[[package]] +name = "cffi" +version = "1.15.1" +description = "Foreign Function Interface for Python calling C code." +optional = false +python-versions = "*" +files = [ + {file = "cffi-1.15.1-cp27-cp27m-macosx_10_9_x86_64.whl", hash = "sha256:a66d3508133af6e8548451b25058d5812812ec3798c886bf38ed24a98216fab2"}, + {file = "cffi-1.15.1-cp27-cp27m-manylinux1_i686.whl", hash = "sha256:470c103ae716238bbe698d67ad020e1db9d9dba34fa5a899b5e21577e6d52ed2"}, + {file = "cffi-1.15.1-cp27-cp27m-manylinux1_x86_64.whl", hash = "sha256:9ad5db27f9cabae298d151c85cf2bad1d359a1b9c686a275df03385758e2f914"}, + {file = "cffi-1.15.1-cp27-cp27m-win32.whl", hash = "sha256:b3bbeb01c2b273cca1e1e0c5df57f12dce9a4dd331b4fa1635b8bec26350bde3"}, + {file = "cffi-1.15.1-cp27-cp27m-win_amd64.whl", hash = "sha256:e00b098126fd45523dd056d2efba6c5a63b71ffe9f2bbe1a4fe1716e1d0c331e"}, + {file = "cffi-1.15.1-cp27-cp27mu-manylinux1_i686.whl", hash = "sha256:d61f4695e6c866a23a21acab0509af1cdfd2c013cf256bbf5b6b5e2695827162"}, + {file = "cffi-1.15.1-cp27-cp27mu-manylinux1_x86_64.whl", hash = "sha256:ed9cb427ba5504c1dc15ede7d516b84757c3e3d7868ccc85121d9310d27eed0b"}, + {file = "cffi-1.15.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:39d39875251ca8f612b6f33e6b1195af86d1b3e60086068be9cc053aa4376e21"}, + {file = "cffi-1.15.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:285d29981935eb726a4399badae8f0ffdff4f5050eaa6d0cfc3f64b857b77185"}, + {file = "cffi-1.15.1-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3eb6971dcff08619f8d91607cfc726518b6fa2a9eba42856be181c6d0d9515fd"}, + {file = "cffi-1.15.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:21157295583fe8943475029ed5abdcf71eb3911894724e360acff1d61c1d54bc"}, + {file = "cffi-1.15.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:5635bd9cb9731e6d4a1132a498dd34f764034a8ce60cef4f5319c0541159392f"}, + {file = "cffi-1.15.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2012c72d854c2d03e45d06ae57f40d78e5770d252f195b93f581acf3ba44496e"}, + {file = "cffi-1.15.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dd86c085fae2efd48ac91dd7ccffcfc0571387fe1193d33b6394db7ef31fe2a4"}, + {file = "cffi-1.15.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:fa6693661a4c91757f4412306191b6dc88c1703f780c8234035eac011922bc01"}, + {file = "cffi-1.15.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:59c0b02d0a6c384d453fece7566d1c7e6b7bae4fc5874ef2ef46d56776d61c9e"}, + {file = "cffi-1.15.1-cp310-cp310-win32.whl", hash = "sha256:cba9d6b9a7d64d4bd46167096fc9d2f835e25d7e4c121fb2ddfc6528fb0413b2"}, + {file = "cffi-1.15.1-cp310-cp310-win_amd64.whl", hash = "sha256:ce4bcc037df4fc5e3d184794f27bdaab018943698f4ca31630bc7f84a7b69c6d"}, + {file = "cffi-1.15.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:3d08afd128ddaa624a48cf2b859afef385b720bb4b43df214f85616922e6a5ac"}, + {file = "cffi-1.15.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:3799aecf2e17cf585d977b780ce79ff0dc9b78d799fc694221ce814c2c19db83"}, + {file = "cffi-1.15.1-cp311-cp311-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a591fe9e525846e4d154205572a029f653ada1a78b93697f3b5a8f1f2bc055b9"}, + {file = "cffi-1.15.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3548db281cd7d2561c9ad9984681c95f7b0e38881201e157833a2342c30d5e8c"}, + {file = "cffi-1.15.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:91fc98adde3d7881af9b59ed0294046f3806221863722ba7d8d120c575314325"}, + {file = "cffi-1.15.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:94411f22c3985acaec6f83c6df553f2dbe17b698cc7f8ae751ff2237d96b9e3c"}, + {file = "cffi-1.15.1-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:03425bdae262c76aad70202debd780501fabeaca237cdfddc008987c0e0f59ef"}, + {file = "cffi-1.15.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:cc4d65aeeaa04136a12677d3dd0b1c0c94dc43abac5860ab33cceb42b801c1e8"}, + {file = "cffi-1.15.1-cp311-cp311-win32.whl", hash = "sha256:a0f100c8912c114ff53e1202d0078b425bee3649ae34d7b070e9697f93c5d52d"}, + {file = "cffi-1.15.1-cp311-cp311-win_amd64.whl", hash = "sha256:04ed324bda3cda42b9b695d51bb7d54b680b9719cfab04227cdd1e04e5de3104"}, + {file = "cffi-1.15.1-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:50a74364d85fd319352182ef59c5c790484a336f6db772c1a9231f1c3ed0cbd7"}, + {file = "cffi-1.15.1-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e263d77ee3dd201c3a142934a086a4450861778baaeeb45db4591ef65550b0a6"}, + {file = "cffi-1.15.1-cp36-cp36m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:cec7d9412a9102bdc577382c3929b337320c4c4c4849f2c5cdd14d7368c5562d"}, + {file = "cffi-1.15.1-cp36-cp36m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4289fc34b2f5316fbb762d75362931e351941fa95fa18789191b33fc4cf9504a"}, + {file = "cffi-1.15.1-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:173379135477dc8cac4bc58f45db08ab45d228b3363adb7af79436135d028405"}, + {file = "cffi-1.15.1-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:6975a3fac6bc83c4a65c9f9fcab9e47019a11d3d2cf7f3c0d03431bf145a941e"}, + {file = "cffi-1.15.1-cp36-cp36m-win32.whl", hash = "sha256:2470043b93ff09bf8fb1d46d1cb756ce6132c54826661a32d4e4d132e1977adf"}, + {file = "cffi-1.15.1-cp36-cp36m-win_amd64.whl", hash = "sha256:30d78fbc8ebf9c92c9b7823ee18eb92f2e6ef79b45ac84db507f52fbe3ec4497"}, + {file = "cffi-1.15.1-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:198caafb44239b60e252492445da556afafc7d1e3ab7a1fb3f0584ef6d742375"}, + {file = "cffi-1.15.1-cp37-cp37m-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:5ef34d190326c3b1f822a5b7a45f6c4535e2f47ed06fec77d3d799c450b2651e"}, + {file = "cffi-1.15.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8102eaf27e1e448db915d08afa8b41d6c7ca7a04b7d73af6514df10a3e74bd82"}, + {file = "cffi-1.15.1-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:5df2768244d19ab7f60546d0c7c63ce1581f7af8b5de3eb3004b9b6fc8a9f84b"}, + {file = "cffi-1.15.1-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a8c4917bd7ad33e8eb21e9a5bbba979b49d9a97acb3a803092cbc1133e20343c"}, + {file = "cffi-1.15.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0e2642fe3142e4cc4af0799748233ad6da94c62a8bec3a6648bf8ee68b1c7426"}, + {file = "cffi-1.15.1-cp37-cp37m-win32.whl", hash = "sha256:e229a521186c75c8ad9490854fd8bbdd9a0c9aa3a524326b55be83b54d4e0ad9"}, + {file = "cffi-1.15.1-cp37-cp37m-win_amd64.whl", hash = "sha256:a0b71b1b8fbf2b96e41c4d990244165e2c9be83d54962a9a1d118fd8657d2045"}, + {file = "cffi-1.15.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:320dab6e7cb2eacdf0e658569d2575c4dad258c0fcc794f46215e1e39f90f2c3"}, + {file = "cffi-1.15.1-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1e74c6b51a9ed6589199c787bf5f9875612ca4a8a0785fb2d4a84429badaf22a"}, + {file = "cffi-1.15.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a5c84c68147988265e60416b57fc83425a78058853509c1b0629c180094904a5"}, + {file = "cffi-1.15.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:3b926aa83d1edb5aa5b427b4053dc420ec295a08e40911296b9eb1b6170f6cca"}, + {file = "cffi-1.15.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:87c450779d0914f2861b8526e035c5e6da0a3199d8f1add1a665e1cbc6fc6d02"}, + {file = "cffi-1.15.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4f2c9f67e9821cad2e5f480bc8d83b8742896f1242dba247911072d4fa94c192"}, + {file = "cffi-1.15.1-cp38-cp38-win32.whl", hash = "sha256:8b7ee99e510d7b66cdb6c593f21c043c248537a32e0bedf02e01e9553a172314"}, + {file = "cffi-1.15.1-cp38-cp38-win_amd64.whl", hash = "sha256:00a9ed42e88df81ffae7a8ab6d9356b371399b91dbdf0c3cb1e84c03a13aceb5"}, + {file = "cffi-1.15.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:54a2db7b78338edd780e7ef7f9f6c442500fb0d41a5a4ea24fff1c929d5af585"}, + {file = "cffi-1.15.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:fcd131dd944808b5bdb38e6f5b53013c5aa4f334c5cad0c72742f6eba4b73db0"}, + {file = "cffi-1.15.1-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7473e861101c9e72452f9bf8acb984947aa1661a7704553a9f6e4baa5ba64415"}, + {file = "cffi-1.15.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6c9a799e985904922a4d207a94eae35c78ebae90e128f0c4e521ce339396be9d"}, + {file = "cffi-1.15.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:3bcde07039e586f91b45c88f8583ea7cf7a0770df3a1649627bf598332cb6984"}, + {file = "cffi-1.15.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:33ab79603146aace82c2427da5ca6e58f2b3f2fb5da893ceac0c42218a40be35"}, + {file = "cffi-1.15.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5d598b938678ebf3c67377cdd45e09d431369c3b1a5b331058c338e201f12b27"}, + {file = "cffi-1.15.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:db0fbb9c62743ce59a9ff687eb5f4afbe77e5e8403d6697f7446e5f609976f76"}, + {file = "cffi-1.15.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:98d85c6a2bef81588d9227dde12db8a7f47f639f4a17c9ae08e773aa9c697bf3"}, + {file = "cffi-1.15.1-cp39-cp39-win32.whl", hash = "sha256:40f4774f5a9d4f5e344f31a32b5096977b5d48560c5592e2f3d2c4374bd543ee"}, + {file = "cffi-1.15.1-cp39-cp39-win_amd64.whl", hash = "sha256:70df4e3b545a17496c9b3f41f5115e69a4f2e77e94e1d2a8e1070bc0c38c8a3c"}, + {file = "cffi-1.15.1.tar.gz", hash = "sha256:d400bfb9a37b1351253cb402671cea7e89bdecc294e8016a707f6d1d8ac934f9"}, +] + +[package.dependencies] +pycparser = "*" + +[[package]] +name = "charset-normalizer" +version = "3.2.0" +description = "The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet." +optional = false +python-versions = ">=3.7.0" +files = [ + {file = "charset-normalizer-3.2.0.tar.gz", hash = "sha256:3bb3d25a8e6c0aedd251753a79ae98a093c7e7b471faa3aa9a93a81431987ace"}, + {file = "charset_normalizer-3.2.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:0b87549028f680ca955556e3bd57013ab47474c3124dc069faa0b6545b6c9710"}, + {file = "charset_normalizer-3.2.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:7c70087bfee18a42b4040bb9ec1ca15a08242cf5867c58726530bdf3945672ed"}, + {file = "charset_normalizer-3.2.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:a103b3a7069b62f5d4890ae1b8f0597618f628b286b03d4bc9195230b154bfa9"}, + {file = "charset_normalizer-3.2.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:94aea8eff76ee6d1cdacb07dd2123a68283cb5569e0250feab1240058f53b623"}, + {file = "charset_normalizer-3.2.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:db901e2ac34c931d73054d9797383d0f8009991e723dab15109740a63e7f902a"}, + {file = "charset_normalizer-3.2.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b0dac0ff919ba34d4df1b6131f59ce95b08b9065233446be7e459f95554c0dc8"}, + {file = "charset_normalizer-3.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:193cbc708ea3aca45e7221ae58f0fd63f933753a9bfb498a3b474878f12caaad"}, + {file = "charset_normalizer-3.2.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:09393e1b2a9461950b1c9a45d5fd251dc7c6f228acab64da1c9c0165d9c7765c"}, + {file = "charset_normalizer-3.2.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:baacc6aee0b2ef6f3d308e197b5d7a81c0e70b06beae1f1fcacffdbd124fe0e3"}, + {file = "charset_normalizer-3.2.0-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:bf420121d4c8dce6b889f0e8e4ec0ca34b7f40186203f06a946fa0276ba54029"}, + {file = "charset_normalizer-3.2.0-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:c04a46716adde8d927adb9457bbe39cf473e1e2c2f5d0a16ceb837e5d841ad4f"}, + {file = "charset_normalizer-3.2.0-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:aaf63899c94de41fe3cf934601b0f7ccb6b428c6e4eeb80da72c58eab077b19a"}, + {file = "charset_normalizer-3.2.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:d62e51710986674142526ab9f78663ca2b0726066ae26b78b22e0f5e571238dd"}, + {file = "charset_normalizer-3.2.0-cp310-cp310-win32.whl", hash = "sha256:04e57ab9fbf9607b77f7d057974694b4f6b142da9ed4a199859d9d4d5c63fe96"}, + {file = "charset_normalizer-3.2.0-cp310-cp310-win_amd64.whl", hash = "sha256:48021783bdf96e3d6de03a6e39a1171ed5bd7e8bb93fc84cc649d11490f87cea"}, + {file = "charset_normalizer-3.2.0-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:4957669ef390f0e6719db3613ab3a7631e68424604a7b448f079bee145da6e09"}, + {file = "charset_normalizer-3.2.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:46fb8c61d794b78ec7134a715a3e564aafc8f6b5e338417cb19fe9f57a5a9bf2"}, + {file = "charset_normalizer-3.2.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:f779d3ad205f108d14e99bb3859aa7dd8e9c68874617c72354d7ecaec2a054ac"}, + {file = "charset_normalizer-3.2.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f25c229a6ba38a35ae6e25ca1264621cc25d4d38dca2942a7fce0b67a4efe918"}, + {file = "charset_normalizer-3.2.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:2efb1bd13885392adfda4614c33d3b68dee4921fd0ac1d3988f8cbb7d589e72a"}, + {file = "charset_normalizer-3.2.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:1f30b48dd7fa1474554b0b0f3fdfdd4c13b5c737a3c6284d3cdc424ec0ffff3a"}, + {file = "charset_normalizer-3.2.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:246de67b99b6851627d945db38147d1b209a899311b1305dd84916f2b88526c6"}, + {file = "charset_normalizer-3.2.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9bd9b3b31adcb054116447ea22caa61a285d92e94d710aa5ec97992ff5eb7cf3"}, + {file = "charset_normalizer-3.2.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:8c2f5e83493748286002f9369f3e6607c565a6a90425a3a1fef5ae32a36d749d"}, + {file = "charset_normalizer-3.2.0-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:3170c9399da12c9dc66366e9d14da8bf7147e1e9d9ea566067bbce7bb74bd9c2"}, + {file = "charset_normalizer-3.2.0-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:7a4826ad2bd6b07ca615c74ab91f32f6c96d08f6fcc3902ceeedaec8cdc3bcd6"}, + {file = "charset_normalizer-3.2.0-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:3b1613dd5aee995ec6d4c69f00378bbd07614702a315a2cf6c1d21461fe17c23"}, + {file = "charset_normalizer-3.2.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:9e608aafdb55eb9f255034709e20d5a83b6d60c054df0802fa9c9883d0a937aa"}, + {file = "charset_normalizer-3.2.0-cp311-cp311-win32.whl", hash = "sha256:f2a1d0fd4242bd8643ce6f98927cf9c04540af6efa92323e9d3124f57727bfc1"}, + {file = "charset_normalizer-3.2.0-cp311-cp311-win_amd64.whl", hash = "sha256:681eb3d7e02e3c3655d1b16059fbfb605ac464c834a0c629048a30fad2b27489"}, + {file = "charset_normalizer-3.2.0-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:c57921cda3a80d0f2b8aec7e25c8aa14479ea92b5b51b6876d975d925a2ea346"}, + {file = "charset_normalizer-3.2.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:41b25eaa7d15909cf3ac4c96088c1f266a9a93ec44f87f1d13d4a0e86c81b982"}, + {file = "charset_normalizer-3.2.0-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:f058f6963fd82eb143c692cecdc89e075fa0828db2e5b291070485390b2f1c9c"}, + {file = "charset_normalizer-3.2.0-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a7647ebdfb9682b7bb97e2a5e7cb6ae735b1c25008a70b906aecca294ee96cf4"}, + {file = "charset_normalizer-3.2.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:eef9df1eefada2c09a5e7a40991b9fc6ac6ef20b1372abd48d2794a316dc0449"}, + {file = "charset_normalizer-3.2.0-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e03b8895a6990c9ab2cdcd0f2fe44088ca1c65ae592b8f795c3294af00a461c3"}, + {file = "charset_normalizer-3.2.0-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:ee4006268ed33370957f55bf2e6f4d263eaf4dc3cfc473d1d90baff6ed36ce4a"}, + {file = "charset_normalizer-3.2.0-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:c4983bf937209c57240cff65906b18bb35e64ae872da6a0db937d7b4af845dd7"}, + {file = "charset_normalizer-3.2.0-cp37-cp37m-musllinux_1_1_ppc64le.whl", hash = "sha256:3bb7fda7260735efe66d5107fb7e6af6a7c04c7fce9b2514e04b7a74b06bf5dd"}, + {file = "charset_normalizer-3.2.0-cp37-cp37m-musllinux_1_1_s390x.whl", hash = "sha256:72814c01533f51d68702802d74f77ea026b5ec52793c791e2da806a3844a46c3"}, + {file = "charset_normalizer-3.2.0-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:70c610f6cbe4b9fce272c407dd9d07e33e6bf7b4aa1b7ffb6f6ded8e634e3592"}, + {file = "charset_normalizer-3.2.0-cp37-cp37m-win32.whl", hash = "sha256:a401b4598e5d3f4a9a811f3daf42ee2291790c7f9d74b18d75d6e21dda98a1a1"}, + {file = "charset_normalizer-3.2.0-cp37-cp37m-win_amd64.whl", hash = "sha256:c0b21078a4b56965e2b12f247467b234734491897e99c1d51cee628da9786959"}, + {file = "charset_normalizer-3.2.0-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:95eb302ff792e12aba9a8b8f8474ab229a83c103d74a750ec0bd1c1eea32e669"}, + {file = "charset_normalizer-3.2.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:1a100c6d595a7f316f1b6f01d20815d916e75ff98c27a01ae817439ea7726329"}, + {file = "charset_normalizer-3.2.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:6339d047dab2780cc6220f46306628e04d9750f02f983ddb37439ca47ced7149"}, + {file = "charset_normalizer-3.2.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e4b749b9cc6ee664a3300bb3a273c1ca8068c46be705b6c31cf5d276f8628a94"}, + {file = "charset_normalizer-3.2.0-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:a38856a971c602f98472050165cea2cdc97709240373041b69030be15047691f"}, + {file = "charset_normalizer-3.2.0-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:f87f746ee241d30d6ed93969de31e5ffd09a2961a051e60ae6bddde9ec3583aa"}, + {file = "charset_normalizer-3.2.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:89f1b185a01fe560bc8ae5f619e924407efca2191b56ce749ec84982fc59a32a"}, + {file = "charset_normalizer-3.2.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e1c8a2f4c69e08e89632defbfabec2feb8a8d99edc9f89ce33c4b9e36ab63037"}, + {file = "charset_normalizer-3.2.0-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:2f4ac36d8e2b4cc1aa71df3dd84ff8efbe3bfb97ac41242fbcfc053c67434f46"}, + {file = "charset_normalizer-3.2.0-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:a386ebe437176aab38c041de1260cd3ea459c6ce5263594399880bbc398225b2"}, + {file = "charset_normalizer-3.2.0-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:ccd16eb18a849fd8dcb23e23380e2f0a354e8daa0c984b8a732d9cfaba3a776d"}, + {file = "charset_normalizer-3.2.0-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:e6a5bf2cba5ae1bb80b154ed68a3cfa2fa00fde979a7f50d6598d3e17d9ac20c"}, + {file = "charset_normalizer-3.2.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:45de3f87179c1823e6d9e32156fb14c1927fcc9aba21433f088fdfb555b77c10"}, + {file = "charset_normalizer-3.2.0-cp38-cp38-win32.whl", hash = "sha256:1000fba1057b92a65daec275aec30586c3de2401ccdcd41f8a5c1e2c87078706"}, + {file = "charset_normalizer-3.2.0-cp38-cp38-win_amd64.whl", hash = "sha256:8b2c760cfc7042b27ebdb4a43a4453bd829a5742503599144d54a032c5dc7e9e"}, + {file = "charset_normalizer-3.2.0-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:855eafa5d5a2034b4621c74925d89c5efef61418570e5ef9b37717d9c796419c"}, + {file = "charset_normalizer-3.2.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:203f0c8871d5a7987be20c72442488a0b8cfd0f43b7973771640fc593f56321f"}, + {file = "charset_normalizer-3.2.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:e857a2232ba53ae940d3456f7533ce6ca98b81917d47adc3c7fd55dad8fab858"}, + {file = "charset_normalizer-3.2.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5e86d77b090dbddbe78867a0275cb4df08ea195e660f1f7f13435a4649e954e5"}, + {file = "charset_normalizer-3.2.0-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:c4fb39a81950ec280984b3a44f5bd12819953dc5fa3a7e6fa7a80db5ee853952"}, + {file = "charset_normalizer-3.2.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2dee8e57f052ef5353cf608e0b4c871aee320dd1b87d351c28764fc0ca55f9f4"}, + {file = "charset_normalizer-3.2.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8700f06d0ce6f128de3ccdbc1acaea1ee264d2caa9ca05daaf492fde7c2a7200"}, + {file = "charset_normalizer-3.2.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1920d4ff15ce893210c1f0c0e9d19bfbecb7983c76b33f046c13a8ffbd570252"}, + {file = "charset_normalizer-3.2.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:c1c76a1743432b4b60ab3358c937a3fe1341c828ae6194108a94c69028247f22"}, + {file = "charset_normalizer-3.2.0-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:f7560358a6811e52e9c4d142d497f1a6e10103d3a6881f18d04dbce3729c0e2c"}, + {file = "charset_normalizer-3.2.0-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:c8063cf17b19661471ecbdb3df1c84f24ad2e389e326ccaf89e3fb2484d8dd7e"}, + {file = "charset_normalizer-3.2.0-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:cd6dbe0238f7743d0efe563ab46294f54f9bc8f4b9bcf57c3c666cc5bc9d1299"}, + {file = "charset_normalizer-3.2.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:1249cbbf3d3b04902ff081ffbb33ce3377fa6e4c7356f759f3cd076cc138d020"}, + {file = "charset_normalizer-3.2.0-cp39-cp39-win32.whl", hash = "sha256:6c409c0deba34f147f77efaa67b8e4bb83d2f11c8806405f76397ae5b8c0d1c9"}, + {file = "charset_normalizer-3.2.0-cp39-cp39-win_amd64.whl", hash = "sha256:7095f6fbfaa55defb6b733cfeb14efaae7a29f0b59d8cf213be4e7ca0b857b80"}, + {file = "charset_normalizer-3.2.0-py3-none-any.whl", hash = "sha256:8e098148dd37b4ce3baca71fb394c81dc5d9c7728c95df695d2dca218edf40e6"}, +] + +[[package]] +name = "click" +version = "8.1.7" +description = "Composable command line interface toolkit" +optional = false +python-versions = ">=3.7" +files = [ + {file = "click-8.1.7-py3-none-any.whl", hash = "sha256:ae74fb96c20a0277a1d615f1e4d73c8414f5a98db8b799a7931d1582f3390c28"}, + {file = "click-8.1.7.tar.gz", hash = "sha256:ca9853ad459e787e2192211578cc907e7594e294c7ccc834310722b41b9ca6de"}, +] + +[package.dependencies] +colorama = {version = "*", markers = "platform_system == \"Windows\""} + +[[package]] +name = "cmaes" +version = "0.10.0" +description = "Lightweight Covariance Matrix Adaptation Evolution Strategy (CMA-ES) implementation for Python 3." +optional = false +python-versions = ">=3.7" +files = [ + {file = "cmaes-0.10.0-py3-none-any.whl", hash = "sha256:72cea747ad37b1780b0eb6f3c098cee33907fafbf6690c0c02db1e010cab72f6"}, + {file = "cmaes-0.10.0.tar.gz", hash = "sha256:48afc70df027114739872b50489ae6b32461c307b92d084a63c7090a9742faf9"}, +] + +[package.dependencies] +numpy = "*" + +[package.extras] +cmawm = ["scipy"] + +[[package]] +name = "colorama" +version = "0.4.6" +description = "Cross-platform colored terminal text." +optional = false +python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,!=3.6.*,>=2.7" +files = [ + {file = "colorama-0.4.6-py2.py3-none-any.whl", hash = "sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6"}, + {file = "colorama-0.4.6.tar.gz", hash = "sha256:08695f5cb7ed6e0531a20572697297273c47b8cae5a63ffc6d6ed5c201be6e44"}, +] + +[[package]] +name = "colorlog" +version = "6.7.0" +description = "Add colours to the output of Python's logging module." +optional = false +python-versions = ">=3.6" +files = [ + {file = "colorlog-6.7.0-py2.py3-none-any.whl", hash = "sha256:0d33ca236784a1ba3ff9c532d4964126d8a2c44f1f0cb1d2b0728196f512f662"}, + {file = "colorlog-6.7.0.tar.gz", hash = "sha256:bd94bd21c1e13fac7bd3153f4bc3a7dc0eb0974b8bc2fdf1a989e474f6e582e5"}, +] + +[package.dependencies] +colorama = {version = "*", markers = "sys_platform == \"win32\""} + +[package.extras] +development = ["black", "flake8", "mypy", "pytest", "types-colorama"] + +[[package]] +name = "comm" +version = "0.1.4" +description = "Jupyter Python Comm implementation, for usage in ipykernel, xeus-python etc." +optional = false +python-versions = ">=3.6" +files = [ + {file = "comm-0.1.4-py3-none-any.whl", hash = "sha256:6d52794cba11b36ed9860999cd10fd02d6b2eac177068fdd585e1e2f8a96e67a"}, + {file = "comm-0.1.4.tar.gz", hash = "sha256:354e40a59c9dd6db50c5cc6b4acc887d82e9603787f83b68c01a80a923984d15"}, +] + +[package.dependencies] +traitlets = ">=4" + +[package.extras] +lint = ["black (>=22.6.0)", "mdformat (>0.7)", "mdformat-gfm (>=0.3.5)", "ruff (>=0.0.156)"] +test = ["pytest"] +typing = ["mypy (>=0.990)"] + +[[package]] +name = "contourpy" +version = "1.1.1" +description = "Python library for calculating contours of 2D quadrilateral grids" +optional = false +python-versions = ">=3.8" +files = [ + {file = "contourpy-1.1.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:46e24f5412c948d81736509377e255f6040e94216bf1a9b5ea1eaa9d29f6ec1b"}, + {file = "contourpy-1.1.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:0e48694d6a9c5a26ee85b10130c77a011a4fedf50a7279fa0bdaf44bafb4299d"}, + {file = "contourpy-1.1.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a66045af6cf00e19d02191ab578a50cb93b2028c3eefed999793698e9ea768ae"}, + {file = "contourpy-1.1.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4ebf42695f75ee1a952f98ce9775c873e4971732a87334b099dde90b6af6a916"}, + {file = "contourpy-1.1.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:f6aec19457617ef468ff091669cca01fa7ea557b12b59a7908b9474bb9674cf0"}, + {file = "contourpy-1.1.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:462c59914dc6d81e0b11f37e560b8a7c2dbab6aca4f38be31519d442d6cde1a1"}, + {file = "contourpy-1.1.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:6d0a8efc258659edc5299f9ef32d8d81de8b53b45d67bf4bfa3067f31366764d"}, + {file = "contourpy-1.1.1-cp310-cp310-win32.whl", hash = "sha256:d6ab42f223e58b7dac1bb0af32194a7b9311065583cc75ff59dcf301afd8a431"}, + {file = "contourpy-1.1.1-cp310-cp310-win_amd64.whl", hash = "sha256:549174b0713d49871c6dee90a4b499d3f12f5e5f69641cd23c50a4542e2ca1eb"}, + {file = "contourpy-1.1.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:407d864db716a067cc696d61fa1ef6637fedf03606e8417fe2aeed20a061e6b2"}, + {file = "contourpy-1.1.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:dfe80c017973e6a4c367e037cb31601044dd55e6bfacd57370674867d15a899b"}, + {file = "contourpy-1.1.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e30aaf2b8a2bac57eb7e1650df1b3a4130e8d0c66fc2f861039d507a11760e1b"}, + {file = "contourpy-1.1.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:3de23ca4f381c3770dee6d10ead6fff524d540c0f662e763ad1530bde5112532"}, + {file = "contourpy-1.1.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:566f0e41df06dfef2431defcfaa155f0acfa1ca4acbf8fd80895b1e7e2ada40e"}, + {file = "contourpy-1.1.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b04c2f0adaf255bf756cf08ebef1be132d3c7a06fe6f9877d55640c5e60c72c5"}, + {file = "contourpy-1.1.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:d0c188ae66b772d9d61d43c6030500344c13e3f73a00d1dc241da896f379bb62"}, + {file = "contourpy-1.1.1-cp311-cp311-win32.whl", hash = "sha256:0683e1ae20dc038075d92e0e0148f09ffcefab120e57f6b4c9c0f477ec171f33"}, + {file = "contourpy-1.1.1-cp311-cp311-win_amd64.whl", hash = "sha256:8636cd2fc5da0fb102a2504fa2c4bea3cbc149533b345d72cdf0e7a924decc45"}, + {file = "contourpy-1.1.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:560f1d68a33e89c62da5da4077ba98137a5e4d3a271b29f2f195d0fba2adcb6a"}, + {file = "contourpy-1.1.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:24216552104ae8f3b34120ef84825400b16eb6133af2e27a190fdc13529f023e"}, + {file = "contourpy-1.1.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:56de98a2fb23025882a18b60c7f0ea2d2d70bbbcfcf878f9067234b1c4818442"}, + {file = "contourpy-1.1.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:07d6f11dfaf80a84c97f1a5ba50d129d9303c5b4206f776e94037332e298dda8"}, + {file = "contourpy-1.1.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:f1eaac5257a8f8a047248d60e8f9315c6cff58f7803971170d952555ef6344a7"}, + {file = "contourpy-1.1.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:19557fa407e70f20bfaba7d55b4d97b14f9480856c4fb65812e8a05fe1c6f9bf"}, + {file = "contourpy-1.1.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:081f3c0880712e40effc5f4c3b08feca6d064cb8cfbb372ca548105b86fd6c3d"}, + {file = "contourpy-1.1.1-cp312-cp312-win32.whl", hash = "sha256:059c3d2a94b930f4dafe8105bcdc1b21de99b30b51b5bce74c753686de858cb6"}, + {file = "contourpy-1.1.1-cp312-cp312-win_amd64.whl", hash = "sha256:f44d78b61740e4e8c71db1cf1fd56d9050a4747681c59ec1094750a658ceb970"}, + {file = "contourpy-1.1.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:70e5a10f8093d228bb2b552beeb318b8928b8a94763ef03b858ef3612b29395d"}, + {file = "contourpy-1.1.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:8394e652925a18ef0091115e3cc191fef350ab6dc3cc417f06da66bf98071ae9"}, + {file = "contourpy-1.1.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c5bd5680f844c3ff0008523a71949a3ff5e4953eb7701b28760805bc9bcff217"}, + {file = "contourpy-1.1.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:66544f853bfa85c0d07a68f6c648b2ec81dafd30f272565c37ab47a33b220684"}, + {file = "contourpy-1.1.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e0c02b75acfea5cab07585d25069207e478d12309557f90a61b5a3b4f77f46ce"}, + {file = "contourpy-1.1.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:41339b24471c58dc1499e56783fedc1afa4bb018bcd035cfb0ee2ad2a7501ef8"}, + {file = "contourpy-1.1.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:f29fb0b3f1217dfe9362ec55440d0743fe868497359f2cf93293f4b2701b8251"}, + {file = "contourpy-1.1.1-cp38-cp38-win32.whl", hash = "sha256:f9dc7f933975367251c1b34da882c4f0e0b2e24bb35dc906d2f598a40b72bfc7"}, + {file = "contourpy-1.1.1-cp38-cp38-win_amd64.whl", hash = "sha256:498e53573e8b94b1caeb9e62d7c2d053c263ebb6aa259c81050766beb50ff8d9"}, + {file = "contourpy-1.1.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:ba42e3810999a0ddd0439e6e5dbf6d034055cdc72b7c5c839f37a7c274cb4eba"}, + {file = "contourpy-1.1.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:6c06e4c6e234fcc65435223c7b2a90f286b7f1b2733058bdf1345d218cc59e34"}, + {file = "contourpy-1.1.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ca6fab080484e419528e98624fb5c4282148b847e3602dc8dbe0cb0669469887"}, + {file = "contourpy-1.1.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:93df44ab351119d14cd1e6b52a5063d3336f0754b72736cc63db59307dabb718"}, + {file = "contourpy-1.1.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:eafbef886566dc1047d7b3d4b14db0d5b7deb99638d8e1be4e23a7c7ac59ff0f"}, + {file = "contourpy-1.1.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:efe0fab26d598e1ec07d72cf03eaeeba8e42b4ecf6b9ccb5a356fde60ff08b85"}, + {file = "contourpy-1.1.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:f08e469821a5e4751c97fcd34bcb586bc243c39c2e39321822060ba902eac49e"}, + {file = "contourpy-1.1.1-cp39-cp39-win32.whl", hash = "sha256:bfc8a5e9238232a45ebc5cb3bfee71f1167064c8d382cadd6076f0d51cff1da0"}, + {file = "contourpy-1.1.1-cp39-cp39-win_amd64.whl", hash = "sha256:c84fdf3da00c2827d634de4fcf17e3e067490c4aea82833625c4c8e6cdea0887"}, + {file = "contourpy-1.1.1-pp38-pypy38_pp73-macosx_10_9_x86_64.whl", hash = "sha256:229a25f68046c5cf8067d6d6351c8b99e40da11b04d8416bf8d2b1d75922521e"}, + {file = "contourpy-1.1.1-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a10dab5ea1bd4401c9483450b5b0ba5416be799bbd50fc7a6cc5e2a15e03e8a3"}, + {file = "contourpy-1.1.1-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:4f9147051cb8fdb29a51dc2482d792b3b23e50f8f57e3720ca2e3d438b7adf23"}, + {file = "contourpy-1.1.1-pp39-pypy39_pp73-macosx_10_9_x86_64.whl", hash = "sha256:a75cc163a5f4531a256f2c523bd80db509a49fc23721b36dd1ef2f60ff41c3cb"}, + {file = "contourpy-1.1.1-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3b53d5769aa1f2d4ea407c65f2d1d08002952fac1d9e9d307aa2e1023554a163"}, + {file = "contourpy-1.1.1-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:11b836b7dbfb74e049c302bbf74b4b8f6cb9d0b6ca1bf86cfa8ba144aedadd9c"}, + {file = "contourpy-1.1.1.tar.gz", hash = "sha256:96ba37c2e24b7212a77da85004c38e7c4d155d3e72a45eeaf22c1f03f607e8ab"}, +] + +[package.dependencies] +numpy = {version = ">=1.16,<2.0", markers = "python_version <= \"3.11\""} + +[package.extras] +bokeh = ["bokeh", "selenium"] +docs = ["furo", "sphinx (>=7.2)", "sphinx-copybutton"] +mypy = ["contourpy[bokeh,docs]", "docutils-stubs", "mypy (==1.4.1)", "types-Pillow"] +test = ["Pillow", "contourpy[test-no-images]", "matplotlib"] +test-no-images = ["pytest", "pytest-cov", "wurlitzer"] + +[[package]] +name = "coverage" +version = "7.3.1" +description = "Code coverage measurement for Python" +optional = false +python-versions = ">=3.8" +files = [ + {file = "coverage-7.3.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:cd0f7429ecfd1ff597389907045ff209c8fdb5b013d38cfa7c60728cb484b6e3"}, + {file = "coverage-7.3.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:966f10df9b2b2115da87f50f6a248e313c72a668248be1b9060ce935c871f276"}, + {file = "coverage-7.3.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0575c37e207bb9b98b6cf72fdaaa18ac909fb3d153083400c2d48e2e6d28bd8e"}, + {file = "coverage-7.3.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:245c5a99254e83875c7fed8b8b2536f040997a9b76ac4c1da5bff398c06e860f"}, + {file = "coverage-7.3.1-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4c96dd7798d83b960afc6c1feb9e5af537fc4908852ef025600374ff1a017392"}, + {file = "coverage-7.3.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:de30c1aa80f30af0f6b2058a91505ea6e36d6535d437520067f525f7df123887"}, + {file = "coverage-7.3.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:50dd1e2dd13dbbd856ffef69196781edff26c800a74f070d3b3e3389cab2600d"}, + {file = "coverage-7.3.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:b9c0c19f70d30219113b18fe07e372b244fb2a773d4afde29d5a2f7930765136"}, + {file = "coverage-7.3.1-cp310-cp310-win32.whl", hash = "sha256:770f143980cc16eb601ccfd571846e89a5fe4c03b4193f2e485268f224ab602f"}, + {file = "coverage-7.3.1-cp310-cp310-win_amd64.whl", hash = "sha256:cdd088c00c39a27cfa5329349cc763a48761fdc785879220d54eb785c8a38520"}, + {file = "coverage-7.3.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:74bb470399dc1989b535cb41f5ca7ab2af561e40def22d7e188e0a445e7639e3"}, + {file = "coverage-7.3.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:025ded371f1ca280c035d91b43252adbb04d2aea4c7105252d3cbc227f03b375"}, + {file = "coverage-7.3.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a6191b3a6ad3e09b6cfd75b45c6aeeffe7e3b0ad46b268345d159b8df8d835f9"}, + {file = "coverage-7.3.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7eb0b188f30e41ddd659a529e385470aa6782f3b412f860ce22b2491c89b8593"}, + {file = "coverage-7.3.1-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:75c8f0df9dfd8ff745bccff75867d63ef336e57cc22b2908ee725cc552689ec8"}, + {file = "coverage-7.3.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:7eb3cd48d54b9bd0e73026dedce44773214064be93611deab0b6a43158c3d5a0"}, + {file = "coverage-7.3.1-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:ac3c5b7e75acac31e490b7851595212ed951889918d398b7afa12736c85e13ce"}, + {file = "coverage-7.3.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:5b4ee7080878077af0afa7238df1b967f00dc10763f6e1b66f5cced4abebb0a3"}, + {file = "coverage-7.3.1-cp311-cp311-win32.whl", hash = "sha256:229c0dd2ccf956bf5aeede7e3131ca48b65beacde2029f0361b54bf93d36f45a"}, + {file = "coverage-7.3.1-cp311-cp311-win_amd64.whl", hash = "sha256:c6f55d38818ca9596dc9019eae19a47410d5322408140d9a0076001a3dcb938c"}, + {file = "coverage-7.3.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:5289490dd1c3bb86de4730a92261ae66ea8d44b79ed3cc26464f4c2cde581fbc"}, + {file = "coverage-7.3.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:ca833941ec701fda15414be400c3259479bfde7ae6d806b69e63b3dc423b1832"}, + {file = "coverage-7.3.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:cd694e19c031733e446c8024dedd12a00cda87e1c10bd7b8539a87963685e969"}, + {file = "coverage-7.3.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:aab8e9464c00da5cb9c536150b7fbcd8850d376d1151741dd0d16dfe1ba4fd26"}, + {file = "coverage-7.3.1-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:87d38444efffd5b056fcc026c1e8d862191881143c3aa80bb11fcf9dca9ae204"}, + {file = "coverage-7.3.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:8a07b692129b8a14ad7a37941a3029c291254feb7a4237f245cfae2de78de037"}, + {file = "coverage-7.3.1-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:2829c65c8faaf55b868ed7af3c7477b76b1c6ebeee99a28f59a2cb5907a45760"}, + {file = "coverage-7.3.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:1f111a7d85658ea52ffad7084088277135ec5f368457275fc57f11cebb15607f"}, + {file = "coverage-7.3.1-cp312-cp312-win32.whl", hash = "sha256:c397c70cd20f6df7d2a52283857af622d5f23300c4ca8e5bd8c7a543825baa5a"}, + {file = "coverage-7.3.1-cp312-cp312-win_amd64.whl", hash = "sha256:5ae4c6da8b3d123500f9525b50bf0168023313963e0e2e814badf9000dd6ef92"}, + {file = "coverage-7.3.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:ca70466ca3a17460e8fc9cea7123c8cbef5ada4be3140a1ef8f7b63f2f37108f"}, + {file = "coverage-7.3.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:f2781fd3cabc28278dc982a352f50c81c09a1a500cc2086dc4249853ea96b981"}, + {file = "coverage-7.3.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6407424621f40205bbe6325686417e5e552f6b2dba3535dd1f90afc88a61d465"}, + {file = "coverage-7.3.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:04312b036580ec505f2b77cbbdfb15137d5efdfade09156961f5277149f5e344"}, + {file = "coverage-7.3.1-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ac9ad38204887349853d7c313f53a7b1c210ce138c73859e925bc4e5d8fc18e7"}, + {file = "coverage-7.3.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:53669b79f3d599da95a0afbef039ac0fadbb236532feb042c534fbb81b1a4e40"}, + {file = "coverage-7.3.1-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:614f1f98b84eb256e4f35e726bfe5ca82349f8dfa576faabf8a49ca09e630086"}, + {file = "coverage-7.3.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:f1a317fdf5c122ad642db8a97964733ab7c3cf6009e1a8ae8821089993f175ff"}, + {file = "coverage-7.3.1-cp38-cp38-win32.whl", hash = "sha256:defbbb51121189722420a208957e26e49809feafca6afeef325df66c39c4fdb3"}, + {file = "coverage-7.3.1-cp38-cp38-win_amd64.whl", hash = "sha256:f4f456590eefb6e1b3c9ea6328c1e9fa0f1006e7481179d749b3376fc793478e"}, + {file = "coverage-7.3.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:f12d8b11a54f32688b165fd1a788c408f927b0960984b899be7e4c190ae758f1"}, + {file = "coverage-7.3.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:f09195dda68d94a53123883de75bb97b0e35f5f6f9f3aa5bf6e496da718f0cb6"}, + {file = "coverage-7.3.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c6601a60318f9c3945be6ea0f2a80571f4299b6801716f8a6e4846892737ebe4"}, + {file = "coverage-7.3.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:07d156269718670d00a3b06db2288b48527fc5f36859425ff7cec07c6b367745"}, + {file = "coverage-7.3.1-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:636a8ac0b044cfeccae76a36f3b18264edcc810a76a49884b96dd744613ec0b7"}, + {file = "coverage-7.3.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:5d991e13ad2ed3aced177f524e4d670f304c8233edad3210e02c465351f785a0"}, + {file = "coverage-7.3.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:586649ada7cf139445da386ab6f8ef00e6172f11a939fc3b2b7e7c9082052fa0"}, + {file = "coverage-7.3.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:4aba512a15a3e1e4fdbfed2f5392ec221434a614cc68100ca99dcad7af29f3f8"}, + {file = "coverage-7.3.1-cp39-cp39-win32.whl", hash = "sha256:6bc6f3f4692d806831c136c5acad5ccedd0262aa44c087c46b7101c77e139140"}, + {file = "coverage-7.3.1-cp39-cp39-win_amd64.whl", hash = "sha256:553d7094cb27db58ea91332e8b5681bac107e7242c23f7629ab1316ee73c4981"}, + {file = "coverage-7.3.1-pp38.pp39.pp310-none-any.whl", hash = "sha256:220eb51f5fb38dfdb7e5d54284ca4d0cd70ddac047d750111a68ab1798945194"}, + {file = "coverage-7.3.1.tar.gz", hash = "sha256:6cb7fe1581deb67b782c153136541e20901aa312ceedaf1467dcb35255787952"}, +] + +[package.dependencies] +tomli = {version = "*", optional = true, markers = "python_full_version <= \"3.11.0a6\" and extra == \"toml\""} + +[package.extras] +toml = ["tomli"] + +[[package]] +name = "cycler" +version = "0.11.0" +description = "Composable style cycles" +optional = false +python-versions = ">=3.6" +files = [ + {file = "cycler-0.11.0-py3-none-any.whl", hash = "sha256:3a27e95f763a428a739d2add979fa7494c912a32c17c4c38c4d5f082cad165a3"}, + {file = "cycler-0.11.0.tar.gz", hash = "sha256:9c87405839a19696e837b3b818fed3f5f69f16f1eec1a1ad77e043dcea9c772f"}, +] + +[[package]] +name = "debugpy" +version = "1.8.0" +description = "An implementation of the Debug Adapter Protocol for Python" +optional = false +python-versions = ">=3.8" +files = [ + {file = "debugpy-1.8.0-cp310-cp310-macosx_11_0_x86_64.whl", hash = "sha256:7fb95ca78f7ac43393cd0e0f2b6deda438ec7c5e47fa5d38553340897d2fbdfb"}, + {file = "debugpy-1.8.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ef9ab7df0b9a42ed9c878afd3eaaff471fce3fa73df96022e1f5c9f8f8c87ada"}, + {file = "debugpy-1.8.0-cp310-cp310-win32.whl", hash = "sha256:a8b7a2fd27cd9f3553ac112f356ad4ca93338feadd8910277aff71ab24d8775f"}, + {file = "debugpy-1.8.0-cp310-cp310-win_amd64.whl", hash = "sha256:5d9de202f5d42e62f932507ee8b21e30d49aae7e46d5b1dd5c908db1d7068637"}, + {file = "debugpy-1.8.0-cp311-cp311-macosx_11_0_universal2.whl", hash = "sha256:ef54404365fae8d45cf450d0544ee40cefbcb9cb85ea7afe89a963c27028261e"}, + {file = "debugpy-1.8.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:60009b132c91951354f54363f8ebdf7457aeb150e84abba5ae251b8e9f29a8a6"}, + {file = "debugpy-1.8.0-cp311-cp311-win32.whl", hash = "sha256:8cd0197141eb9e8a4566794550cfdcdb8b3db0818bdf8c49a8e8f8053e56e38b"}, + {file = "debugpy-1.8.0-cp311-cp311-win_amd64.whl", hash = "sha256:a64093656c4c64dc6a438e11d59369875d200bd5abb8f9b26c1f5f723622e153"}, + {file = "debugpy-1.8.0-cp38-cp38-macosx_11_0_x86_64.whl", hash = "sha256:b05a6b503ed520ad58c8dc682749113d2fd9f41ffd45daec16e558ca884008cd"}, + {file = "debugpy-1.8.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3c6fb41c98ec51dd010d7ed650accfd07a87fe5e93eca9d5f584d0578f28f35f"}, + {file = "debugpy-1.8.0-cp38-cp38-win32.whl", hash = "sha256:46ab6780159eeabb43c1495d9c84cf85d62975e48b6ec21ee10c95767c0590aa"}, + {file = "debugpy-1.8.0-cp38-cp38-win_amd64.whl", hash = "sha256:bdc5ef99d14b9c0fcb35351b4fbfc06ac0ee576aeab6b2511702e5a648a2e595"}, + {file = "debugpy-1.8.0-cp39-cp39-macosx_11_0_x86_64.whl", hash = "sha256:61eab4a4c8b6125d41a34bad4e5fe3d2cc145caecd63c3fe953be4cc53e65bf8"}, + {file = "debugpy-1.8.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:125b9a637e013f9faac0a3d6a82bd17c8b5d2c875fb6b7e2772c5aba6d082332"}, + {file = "debugpy-1.8.0-cp39-cp39-win32.whl", hash = "sha256:57161629133113c97b387382045649a2b985a348f0c9366e22217c87b68b73c6"}, + {file = "debugpy-1.8.0-cp39-cp39-win_amd64.whl", hash = "sha256:e3412f9faa9ade82aa64a50b602544efcba848c91384e9f93497a458767e6926"}, + {file = "debugpy-1.8.0-py2.py3-none-any.whl", hash = "sha256:9c9b0ac1ce2a42888199df1a1906e45e6f3c9555497643a85e0bf2406e3ffbc4"}, + {file = "debugpy-1.8.0.zip", hash = "sha256:12af2c55b419521e33d5fb21bd022df0b5eb267c3e178f1d374a63a2a6bdccd0"}, +] + +[[package]] +name = "decorator" +version = "5.1.1" +description = "Decorators for Humans" +optional = false +python-versions = ">=3.5" +files = [ + {file = "decorator-5.1.1-py3-none-any.whl", hash = "sha256:b8c3f85900b9dc423225913c5aace94729fe1fa9763b38939a95226f02d37186"}, + {file = "decorator-5.1.1.tar.gz", hash = "sha256:637996211036b6385ef91435e4fae22989472f9d571faba8927ba8253acbc330"}, +] + +[[package]] +name = "defusedxml" +version = "0.7.1" +description = "XML bomb protection for Python stdlib modules" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" +files = [ + {file = "defusedxml-0.7.1-py2.py3-none-any.whl", hash = "sha256:a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61"}, + {file = "defusedxml-0.7.1.tar.gz", hash = "sha256:1bb3032db185915b62d7c6209c5a8792be6a32ab2fedacc84e01b52c51aa3e69"}, +] + +[[package]] +name = "dill" +version = "0.3.7" +description = "serialize all of Python" +optional = false +python-versions = ">=3.7" +files = [ + {file = "dill-0.3.7-py3-none-any.whl", hash = "sha256:76b122c08ef4ce2eedcd4d1abd8e641114bfc6c2867f49f3c41facf65bf19f5e"}, + {file = "dill-0.3.7.tar.gz", hash = "sha256:cc1c8b182eb3013e24bd475ff2e9295af86c1a38eb1aff128dac8962a9ce3c03"}, +] + +[package.extras] +graph = ["objgraph (>=1.7.2)"] + +[[package]] +name = "entrypoints" +version = "0.4" +description = "Discover and load entry points from installed packages." +optional = false +python-versions = ">=3.6" +files = [ + {file = "entrypoints-0.4-py3-none-any.whl", hash = "sha256:f174b5ff827504fd3cd97cc3f8649f3693f51538c7e4bdf3ef002c8429d42f9f"}, + {file = "entrypoints-0.4.tar.gz", hash = "sha256:b706eddaa9218a19ebcd67b56818f05bb27589b1ca9e8d797b74affad4ccacd4"}, +] + +[[package]] +name = "events" +version = "0.5" +description = "Bringing the elegance of C# EventHandler to Python" +optional = false +python-versions = "*" +files = [ + {file = "Events-0.5-py3-none-any.whl", hash = "sha256:a7286af378ba3e46640ac9825156c93bdba7502174dd696090fdfcd4d80a1abd"}, +] + +[[package]] +name = "exceptiongroup" +version = "1.1.3" +description = "Backport of PEP 654 (exception groups)" +optional = false +python-versions = ">=3.7" +files = [ + {file = "exceptiongroup-1.1.3-py3-none-any.whl", hash = "sha256:343280667a4585d195ca1cf9cef84a4e178c4b6cf2274caef9859782b567d5e3"}, + {file = "exceptiongroup-1.1.3.tar.gz", hash = "sha256:097acd85d473d75af5bb98e41b61ff7fe35efe6675e4f9370ec6ec5126d160e9"}, +] + +[package.extras] +test = ["pytest (>=6)"] + +[[package]] +name = "executing" +version = "1.2.0" +description = "Get the currently executing AST node of a frame, and other information" +optional = false +python-versions = "*" +files = [ + {file = "executing-1.2.0-py2.py3-none-any.whl", hash = "sha256:0314a69e37426e3608aada02473b4161d4caf5a4b244d1d0c48072b8fee7bacc"}, + {file = "executing-1.2.0.tar.gz", hash = "sha256:19da64c18d2d851112f09c287f8d3dbbdf725ab0e569077efb6cdcbd3497c107"}, +] + +[package.extras] +tests = ["asttokens", "littleutils", "pytest", "rich"] + +[[package]] +name = "fastjsonschema" +version = "2.18.0" +description = "Fastest Python implementation of JSON schema" +optional = false +python-versions = "*" +files = [ + {file = "fastjsonschema-2.18.0-py3-none-any.whl", hash = "sha256:128039912a11a807068a7c87d0da36660afbfd7202780db26c4aa7153cfdc799"}, + {file = "fastjsonschema-2.18.0.tar.gz", hash = "sha256:e820349dd16f806e4bd1467a138dced9def4bc7d6213a34295272a6cac95b5bd"}, +] + +[package.extras] +devel = ["colorama", "json-spec", "jsonschema", "pylint", "pytest", "pytest-benchmark", "pytest-cache", "validictory"] + +[[package]] +name = "flake8" +version = "6.1.0" +description = "the modular source code checker: pep8 pyflakes and co" +optional = false +python-versions = ">=3.8.1" +files = [ + {file = "flake8-6.1.0-py2.py3-none-any.whl", hash = "sha256:ffdfce58ea94c6580c77888a86506937f9a1a227dfcd15f245d694ae20a6b6e5"}, + {file = "flake8-6.1.0.tar.gz", hash = "sha256:d5b3857f07c030bdb5bf41c7f53799571d75c4491748a3adcd47de929e34cd23"}, +] + +[package.dependencies] +mccabe = ">=0.7.0,<0.8.0" +pycodestyle = ">=2.11.0,<2.12.0" +pyflakes = ">=3.1.0,<3.2.0" + +[[package]] +name = "fonttools" +version = "4.42.1" +description = "Tools to manipulate font files" +optional = false +python-versions = ">=3.8" +files = [ + {file = "fonttools-4.42.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:ed1a13a27f59d1fc1920394a7f596792e9d546c9ca5a044419dca70c37815d7c"}, + {file = "fonttools-4.42.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:c9b1ce7a45978b821a06d375b83763b27a3a5e8a2e4570b3065abad240a18760"}, + {file = "fonttools-4.42.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f720fa82a11c0f9042376fd509b5ed88dab7e3cd602eee63a1af08883b37342b"}, + {file = "fonttools-4.42.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:db55cbaea02a20b49fefbd8e9d62bd481aaabe1f2301dabc575acc6b358874fa"}, + {file = "fonttools-4.42.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:3a35981d90feebeaef05e46e33e6b9e5b5e618504672ca9cd0ff96b171e4bfff"}, + {file = "fonttools-4.42.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:68a02bbe020dc22ee0540e040117535f06df9358106d3775e8817d826047f3fd"}, + {file = "fonttools-4.42.1-cp310-cp310-win32.whl", hash = "sha256:12a7c247d1b946829bfa2f331107a629ea77dc5391dfd34fdcd78efa61f354ca"}, + {file = "fonttools-4.42.1-cp310-cp310-win_amd64.whl", hash = "sha256:a398bdadb055f8de69f62b0fc70625f7cbdab436bbb31eef5816e28cab083ee8"}, + {file = "fonttools-4.42.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:689508b918332fb40ce117131633647731d098b1b10d092234aa959b4251add5"}, + {file = "fonttools-4.42.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:9e36344e48af3e3bde867a1ca54f97c308735dd8697005c2d24a86054a114a71"}, + {file = "fonttools-4.42.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:19b7db825c8adee96fac0692e6e1ecd858cae9affb3b4812cdb9d934a898b29e"}, + {file = "fonttools-4.42.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:113337c2d29665839b7d90b39f99b3cac731f72a0eda9306165a305c7c31d341"}, + {file = "fonttools-4.42.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:37983b6bdab42c501202500a2be3a572f50d4efe3237e0686ee9d5f794d76b35"}, + {file = "fonttools-4.42.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:6ed2662a3d9c832afa36405f8748c250be94ae5dfc5283d668308391f2102861"}, + {file = "fonttools-4.42.1-cp311-cp311-win32.whl", hash = "sha256:179737095eb98332a2744e8f12037b2977f22948cf23ff96656928923ddf560a"}, + {file = "fonttools-4.42.1-cp311-cp311-win_amd64.whl", hash = "sha256:f2b82f46917d8722e6b5eafeefb4fb585d23babd15d8246c664cd88a5bddd19c"}, + {file = "fonttools-4.42.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:62f481ac772fd68901573956231aea3e4b1ad87b9b1089a61613a91e2b50bb9b"}, + {file = "fonttools-4.42.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:f2f806990160d1ce42d287aa419df3ffc42dfefe60d473695fb048355fe0c6a0"}, + {file = "fonttools-4.42.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:db372213d39fa33af667c2aa586a0c1235e88e9c850f5dd5c8e1f17515861868"}, + {file = "fonttools-4.42.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5d18fc642fd0ac29236ff88ecfccff229ec0386090a839dd3f1162e9a7944a40"}, + {file = "fonttools-4.42.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:8708b98c278012ad267ee8a7433baeb809948855e81922878118464b274c909d"}, + {file = "fonttools-4.42.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:c95b0724a6deea2c8c5d3222191783ced0a2f09bd6d33f93e563f6f1a4b3b3a4"}, + {file = "fonttools-4.42.1-cp38-cp38-win32.whl", hash = "sha256:4aa79366e442dbca6e2c8595645a3a605d9eeabdb7a094d745ed6106816bef5d"}, + {file = "fonttools-4.42.1-cp38-cp38-win_amd64.whl", hash = "sha256:acb47f6f8680de24c1ab65ebde39dd035768e2a9b571a07c7b8da95f6c8815fd"}, + {file = "fonttools-4.42.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:5fb289b7a815638a7613d46bcf324c9106804725b2bb8ad913c12b6958ffc4ec"}, + {file = "fonttools-4.42.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:53eb5091ddc8b1199330bb7b4a8a2e7995ad5d43376cadce84523d8223ef3136"}, + {file = "fonttools-4.42.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:46a0ec8adbc6ff13494eb0c9c2e643b6f009ce7320cf640de106fb614e4d4360"}, + {file = "fonttools-4.42.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7cc7d685b8eeca7ae69dc6416833fbfea61660684b7089bca666067cb2937dcf"}, + {file = "fonttools-4.42.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:be24fcb80493b2c94eae21df70017351851652a37de514de553435b256b2f249"}, + {file = "fonttools-4.42.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:515607ec756d7865f23070682622c49d922901943697871fc292277cf1e71967"}, + {file = "fonttools-4.42.1-cp39-cp39-win32.whl", hash = "sha256:0eb79a2da5eb6457a6f8ab904838454accc7d4cccdaff1fd2bd3a0679ea33d64"}, + {file = "fonttools-4.42.1-cp39-cp39-win_amd64.whl", hash = "sha256:7286aed4ea271df9eab8d7a9b29e507094b51397812f7ce051ecd77915a6e26b"}, + {file = "fonttools-4.42.1-py3-none-any.whl", hash = "sha256:9398f244e28e0596e2ee6024f808b06060109e33ed38dcc9bded452fd9bbb853"}, + {file = "fonttools-4.42.1.tar.gz", hash = "sha256:c391cd5af88aacaf41dd7cfb96eeedfad297b5899a39e12f4c2c3706d0a3329d"}, +] + +[package.extras] +all = ["brotli (>=1.0.1)", "brotlicffi (>=0.8.0)", "fs (>=2.2.0,<3)", "lxml (>=4.0,<5)", "lz4 (>=1.7.4.2)", "matplotlib", "munkres", "scipy", "skia-pathops (>=0.5.0)", "sympy", "uharfbuzz (>=0.23.0)", "unicodedata2 (>=15.0.0)", "xattr", "zopfli (>=0.1.4)"] +graphite = ["lz4 (>=1.7.4.2)"] +interpolatable = ["munkres", "scipy"] +lxml = ["lxml (>=4.0,<5)"] +pathops = ["skia-pathops (>=0.5.0)"] +plot = ["matplotlib"] +repacker = ["uharfbuzz (>=0.23.0)"] +symfont = ["sympy"] +type1 = ["xattr"] +ufo = ["fs (>=2.2.0,<3)"] +unicode = ["unicodedata2 (>=15.0.0)"] +woff = ["brotli (>=1.0.1)", "brotlicffi (>=0.8.0)", "zopfli (>=0.1.4)"] + +[[package]] +name = "fqdn" +version = "1.5.1" +description = "Validates fully-qualified domain names against RFC 1123, so that they are acceptable to modern bowsers" +optional = false +python-versions = ">=2.7, !=3.0, !=3.1, !=3.2, !=3.3, !=3.4, <4" +files = [ + {file = "fqdn-1.5.1-py3-none-any.whl", hash = "sha256:3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014"}, + {file = "fqdn-1.5.1.tar.gz", hash = "sha256:105ed3677e767fb5ca086a0c1f4bb66ebc3c100be518f0e0d755d9eae164d89f"}, +] + +[[package]] +name = "ghp-import" +version = "2.1.0" +description = "Copy your docs directly to the gh-pages branch." +optional = false +python-versions = "*" +files = [ + {file = "ghp-import-2.1.0.tar.gz", hash = "sha256:9c535c4c61193c2df8871222567d7fd7e5014d835f97dc7b7439069e2413d343"}, + {file = "ghp_import-2.1.0-py3-none-any.whl", hash = "sha256:8337dd7b50877f163d4c0289bc1f1c7f127550241988d568c1db512c4324a619"}, +] + +[package.dependencies] +python-dateutil = ">=2.8.1" + +[package.extras] +dev = ["flake8", "markdown", "twine", "wheel"] + +[[package]] +name = "greenlet" +version = "2.0.2" +description = "Lightweight in-process concurrent programming" +optional = false +python-versions = ">=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*" +files = [ + {file = "greenlet-2.0.2-cp27-cp27m-macosx_10_14_x86_64.whl", hash = "sha256:bdfea8c661e80d3c1c99ad7c3ff74e6e87184895bbaca6ee8cc61209f8b9b85d"}, + {file = "greenlet-2.0.2-cp27-cp27m-manylinux2010_x86_64.whl", hash = "sha256:9d14b83fab60d5e8abe587d51c75b252bcc21683f24699ada8fb275d7712f5a9"}, + {file = "greenlet-2.0.2-cp27-cp27m-win32.whl", hash = "sha256:6c3acb79b0bfd4fe733dff8bc62695283b57949ebcca05ae5c129eb606ff2d74"}, + {file = "greenlet-2.0.2-cp27-cp27m-win_amd64.whl", hash = "sha256:283737e0da3f08bd637b5ad058507e578dd462db259f7f6e4c5c365ba4ee9343"}, + {file = "greenlet-2.0.2-cp27-cp27mu-manylinux2010_x86_64.whl", hash = "sha256:d27ec7509b9c18b6d73f2f5ede2622441de812e7b1a80bbd446cb0633bd3d5ae"}, + {file = "greenlet-2.0.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:d967650d3f56af314b72df7089d96cda1083a7fc2da05b375d2bc48c82ab3f3c"}, + {file = "greenlet-2.0.2-cp310-cp310-macosx_11_0_x86_64.whl", hash = "sha256:30bcf80dda7f15ac77ba5af2b961bdd9dbc77fd4ac6105cee85b0d0a5fcf74df"}, + {file = "greenlet-2.0.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:26fbfce90728d82bc9e6c38ea4d038cba20b7faf8a0ca53a9c07b67318d46088"}, + {file = "greenlet-2.0.2-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9190f09060ea4debddd24665d6804b995a9c122ef5917ab26e1566dcc712ceeb"}, + {file = "greenlet-2.0.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d75209eed723105f9596807495d58d10b3470fa6732dd6756595e89925ce2470"}, + {file = "greenlet-2.0.2-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:3a51c9751078733d88e013587b108f1b7a1fb106d402fb390740f002b6f6551a"}, + {file = "greenlet-2.0.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:76ae285c8104046b3a7f06b42f29c7b73f77683df18c49ab5af7983994c2dd91"}, + {file = "greenlet-2.0.2-cp310-cp310-win_amd64.whl", hash = "sha256:2d4686f195e32d36b4d7cf2d166857dbd0ee9f3d20ae349b6bf8afc8485b3645"}, + {file = "greenlet-2.0.2-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:c4302695ad8027363e96311df24ee28978162cdcdd2006476c43970b384a244c"}, + {file = "greenlet-2.0.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:d4606a527e30548153be1a9f155f4e283d109ffba663a15856089fb55f933e47"}, + {file = "greenlet-2.0.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c48f54ef8e05f04d6eff74b8233f6063cb1ed960243eacc474ee73a2ea8573ca"}, + {file = "greenlet-2.0.2-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:a1846f1b999e78e13837c93c778dcfc3365902cfb8d1bdb7dd73ead37059f0d0"}, + {file = "greenlet-2.0.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3a06ad5312349fec0ab944664b01d26f8d1f05009566339ac6f63f56589bc1a2"}, + {file = "greenlet-2.0.2-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:eff4eb9b7eb3e4d0cae3d28c283dc16d9bed6b193c2e1ace3ed86ce48ea8df19"}, + {file = "greenlet-2.0.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:5454276c07d27a740c5892f4907c86327b632127dd9abec42ee62e12427ff7e3"}, + {file = "greenlet-2.0.2-cp311-cp311-win_amd64.whl", hash = "sha256:7cafd1208fdbe93b67c7086876f061f660cfddc44f404279c1585bbf3cdc64c5"}, + {file = "greenlet-2.0.2-cp35-cp35m-macosx_10_14_x86_64.whl", hash = "sha256:910841381caba4f744a44bf81bfd573c94e10b3045ee00de0cbf436fe50673a6"}, + {file = "greenlet-2.0.2-cp35-cp35m-manylinux2010_x86_64.whl", hash = "sha256:18a7f18b82b52ee85322d7a7874e676f34ab319b9f8cce5de06067384aa8ff43"}, + {file = "greenlet-2.0.2-cp35-cp35m-win32.whl", hash = "sha256:03a8f4f3430c3b3ff8d10a2a86028c660355ab637cee9333d63d66b56f09d52a"}, + {file = "greenlet-2.0.2-cp35-cp35m-win_amd64.whl", hash = "sha256:4b58adb399c4d61d912c4c331984d60eb66565175cdf4a34792cd9600f21b394"}, + {file = "greenlet-2.0.2-cp36-cp36m-macosx_10_14_x86_64.whl", hash = "sha256:703f18f3fda276b9a916f0934d2fb6d989bf0b4fb5a64825260eb9bfd52d78f0"}, + {file = "greenlet-2.0.2-cp36-cp36m-manylinux2010_x86_64.whl", hash = "sha256:32e5b64b148966d9cccc2c8d35a671409e45f195864560829f395a54226408d3"}, + {file = "greenlet-2.0.2-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2dd11f291565a81d71dab10b7033395b7a3a5456e637cf997a6f33ebdf06f8db"}, + {file = "greenlet-2.0.2-cp36-cp36m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:e0f72c9ddb8cd28532185f54cc1453f2c16fb417a08b53a855c4e6a418edd099"}, + {file = "greenlet-2.0.2-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:cd021c754b162c0fb55ad5d6b9d960db667faad0fa2ff25bb6e1301b0b6e6a75"}, + {file = "greenlet-2.0.2-cp36-cp36m-musllinux_1_1_aarch64.whl", hash = "sha256:3c9b12575734155d0c09d6c3e10dbd81665d5c18e1a7c6597df72fd05990c8cf"}, + {file = "greenlet-2.0.2-cp36-cp36m-musllinux_1_1_x86_64.whl", hash = "sha256:b9ec052b06a0524f0e35bd8790686a1da006bd911dd1ef7d50b77bfbad74e292"}, + {file = "greenlet-2.0.2-cp36-cp36m-win32.whl", hash = "sha256:dbfcfc0218093a19c252ca8eb9aee3d29cfdcb586df21049b9d777fd32c14fd9"}, + {file = "greenlet-2.0.2-cp36-cp36m-win_amd64.whl", hash = "sha256:9f35ec95538f50292f6d8f2c9c9f8a3c6540bbfec21c9e5b4b751e0a7c20864f"}, + {file = "greenlet-2.0.2-cp37-cp37m-macosx_10_15_x86_64.whl", hash = "sha256:d5508f0b173e6aa47273bdc0a0b5ba055b59662ba7c7ee5119528f466585526b"}, + {file = "greenlet-2.0.2-cp37-cp37m-manylinux2010_x86_64.whl", hash = "sha256:f82d4d717d8ef19188687aa32b8363e96062911e63ba22a0cff7802a8e58e5f1"}, + {file = "greenlet-2.0.2-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c9c59a2120b55788e800d82dfa99b9e156ff8f2227f07c5e3012a45a399620b7"}, + {file = "greenlet-2.0.2-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:2780572ec463d44c1d3ae850239508dbeb9fed38e294c68d19a24d925d9223ca"}, + {file = "greenlet-2.0.2-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:937e9020b514ceedb9c830c55d5c9872abc90f4b5862f89c0887033ae33c6f73"}, + {file = "greenlet-2.0.2-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:36abbf031e1c0f79dd5d596bfaf8e921c41df2bdf54ee1eed921ce1f52999a86"}, + {file = "greenlet-2.0.2-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:18e98fb3de7dba1c0a852731c3070cf022d14f0d68b4c87a19cc1016f3bb8b33"}, + {file = "greenlet-2.0.2-cp37-cp37m-win32.whl", hash = "sha256:3f6ea9bd35eb450837a3d80e77b517ea5bc56b4647f5502cd28de13675ee12f7"}, + {file = "greenlet-2.0.2-cp37-cp37m-win_amd64.whl", hash = "sha256:7492e2b7bd7c9b9916388d9df23fa49d9b88ac0640db0a5b4ecc2b653bf451e3"}, + {file = "greenlet-2.0.2-cp38-cp38-macosx_10_15_x86_64.whl", hash = "sha256:b864ba53912b6c3ab6bcb2beb19f19edd01a6bfcbdfe1f37ddd1778abfe75a30"}, + {file = "greenlet-2.0.2-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:1087300cf9700bbf455b1b97e24db18f2f77b55302a68272c56209d5587c12d1"}, + {file = "greenlet-2.0.2-cp38-cp38-manylinux2010_x86_64.whl", hash = "sha256:ba2956617f1c42598a308a84c6cf021a90ff3862eddafd20c3333d50f0edb45b"}, + {file = "greenlet-2.0.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:fc3a569657468b6f3fb60587e48356fe512c1754ca05a564f11366ac9e306526"}, + {file = "greenlet-2.0.2-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:8eab883b3b2a38cc1e050819ef06a7e6344d4a990d24d45bc6f2cf959045a45b"}, + {file = "greenlet-2.0.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:acd2162a36d3de67ee896c43effcd5ee3de247eb00354db411feb025aa319857"}, + {file = "greenlet-2.0.2-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:0bf60faf0bc2468089bdc5edd10555bab6e85152191df713e2ab1fcc86382b5a"}, + {file = "greenlet-2.0.2-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:b0ef99cdbe2b682b9ccbb964743a6aca37905fda5e0452e5ee239b1654d37f2a"}, + {file = "greenlet-2.0.2-cp38-cp38-win32.whl", hash = "sha256:b80f600eddddce72320dbbc8e3784d16bd3fb7b517e82476d8da921f27d4b249"}, + {file = "greenlet-2.0.2-cp38-cp38-win_amd64.whl", hash = "sha256:4d2e11331fc0c02b6e84b0d28ece3a36e0548ee1a1ce9ddde03752d9b79bba40"}, + {file = "greenlet-2.0.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:8512a0c38cfd4e66a858ddd1b17705587900dd760c6003998e9472b77b56d417"}, + {file = "greenlet-2.0.2-cp39-cp39-macosx_11_0_x86_64.whl", hash = "sha256:88d9ab96491d38a5ab7c56dd7a3cc37d83336ecc564e4e8816dbed12e5aaefc8"}, + {file = "greenlet-2.0.2-cp39-cp39-manylinux2010_x86_64.whl", hash = "sha256:561091a7be172ab497a3527602d467e2b3fbe75f9e783d8b8ce403fa414f71a6"}, + {file = "greenlet-2.0.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:971ce5e14dc5e73715755d0ca2975ac88cfdaefcaab078a284fea6cfabf866df"}, + {file = "greenlet-2.0.2-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:be4ed120b52ae4d974aa40215fcdfde9194d63541c7ded40ee12eb4dda57b76b"}, + {file = "greenlet-2.0.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:94c817e84245513926588caf1152e3b559ff794d505555211ca041f032abbb6b"}, + {file = "greenlet-2.0.2-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:1a819eef4b0e0b96bb0d98d797bef17dc1b4a10e8d7446be32d1da33e095dbb8"}, + {file = "greenlet-2.0.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:7efde645ca1cc441d6dc4b48c0f7101e8d86b54c8530141b09fd31cef5149ec9"}, + {file = "greenlet-2.0.2-cp39-cp39-win32.whl", hash = "sha256:ea9872c80c132f4663822dd2a08d404073a5a9b5ba6155bea72fb2a79d1093b5"}, + {file = "greenlet-2.0.2-cp39-cp39-win_amd64.whl", hash = "sha256:db1a39669102a1d8d12b57de2bb7e2ec9066a6f2b3da35ae511ff93b01b5d564"}, + {file = "greenlet-2.0.2.tar.gz", hash = "sha256:e7c8dc13af7db097bed64a051d2dd49e9f0af495c26995c00a9ee842690d34c0"}, +] + +[package.extras] +docs = ["Sphinx", "docutils (<0.18)"] +test = ["objgraph", "psutil"] + +[[package]] +name = "idna" +version = "3.4" +description = "Internationalized Domain Names in Applications (IDNA)" +optional = false +python-versions = ">=3.5" +files = [ + {file = "idna-3.4-py3-none-any.whl", hash = "sha256:90b77e79eaa3eba6de819a0c442c0b4ceefc341a7a2ab77d7562bf49f425c5c2"}, + {file = "idna-3.4.tar.gz", hash = "sha256:814f528e8dead7d329833b91c5faa87d60bf71824cd12a7530b5526063d02cb4"}, +] + +[[package]] +name = "importlib-metadata" +version = "6.8.0" +description = "Read metadata from Python packages" +optional = false +python-versions = ">=3.8" +files = [ + {file = "importlib_metadata-6.8.0-py3-none-any.whl", hash = "sha256:3ebb78df84a805d7698245025b975d9d67053cd94c79245ba4b3eb694abe68bb"}, + {file = "importlib_metadata-6.8.0.tar.gz", hash = "sha256:dbace7892d8c0c4ac1ad096662232f831d4e64f4c4545bd53016a3e9d4654743"}, +] + +[package.dependencies] +zipp = ">=0.5" + +[package.extras] +docs = ["furo", "jaraco.packaging (>=9)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-lint"] +perf = ["ipython"] +testing = ["flufl.flake8", "importlib-resources (>=1.3)", "packaging", "pyfakefs", "pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-mypy (>=0.9.1)", "pytest-perf (>=0.9.2)", "pytest-ruff"] + +[[package]] +name = "importlib-resources" +version = "6.1.0" +description = "Read resources from Python packages" +optional = false +python-versions = ">=3.8" +files = [ + {file = "importlib_resources-6.1.0-py3-none-any.whl", hash = "sha256:aa50258bbfa56d4e33fbd8aa3ef48ded10d1735f11532b8df95388cc6bdb7e83"}, + {file = "importlib_resources-6.1.0.tar.gz", hash = "sha256:9d48dcccc213325e810fd723e7fbb45ccb39f6cf5c31f00cf2b965f5f10f3cb9"}, +] + +[package.dependencies] +zipp = {version = ">=3.1.0", markers = "python_version < \"3.10\""} + +[package.extras] +docs = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (<7.2.5)", "sphinx (>=3.5)", "sphinx-lint"] +testing = ["pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-mypy (>=0.9.1)", "pytest-ruff", "zipp (>=3.17)"] + +[[package]] +name = "iniconfig" +version = "2.0.0" +description = "brain-dead simple config-ini parsing" +optional = false +python-versions = ">=3.7" +files = [ + {file = "iniconfig-2.0.0-py3-none-any.whl", hash = "sha256:b6a85871a79d2e3b22d2d1b94ac2824226a63c6b741c88f7ae975f18b6778374"}, + {file = "iniconfig-2.0.0.tar.gz", hash = "sha256:2d91e135bf72d31a410b17c16da610a82cb55f6b0477d1a902134b24a455b8b3"}, +] + +[[package]] +name = "intervaltree" +version = "3.1.0" +description = "Editable interval tree data structure for Python 2 and 3" +optional = false +python-versions = "*" +files = [ + {file = "intervaltree-3.1.0.tar.gz", hash = "sha256:902b1b88936918f9b2a19e0e5eb7ccb430ae45cde4f39ea4b36932920d33952d"}, +] + +[package.dependencies] +sortedcontainers = ">=2.0,<3.0" + +[[package]] +name = "ipykernel" +version = "6.25.2" +description = "IPython Kernel for Jupyter" +optional = false +python-versions = ">=3.8" +files = [ + {file = "ipykernel-6.25.2-py3-none-any.whl", hash = "sha256:2e2ee359baba19f10251b99415bb39de1e97d04e1fab385646f24f0596510b77"}, + {file = "ipykernel-6.25.2.tar.gz", hash = "sha256:f468ddd1f17acb48c8ce67fcfa49ba6d46d4f9ac0438c1f441be7c3d1372230b"}, +] + +[package.dependencies] +appnope = {version = "*", markers = "platform_system == \"Darwin\""} +comm = ">=0.1.1" +debugpy = ">=1.6.5" +ipython = ">=7.23.1" +jupyter-client = ">=6.1.12" +jupyter-core = ">=4.12,<5.0.dev0 || >=5.1.dev0" +matplotlib-inline = ">=0.1" +nest-asyncio = "*" +packaging = "*" +psutil = "*" +pyzmq = ">=20" +tornado = ">=6.1" +traitlets = ">=5.4.0" + +[package.extras] +cov = ["coverage[toml]", "curio", "matplotlib", "pytest-cov", "trio"] +docs = ["myst-parser", "pydata-sphinx-theme", "sphinx", "sphinx-autodoc-typehints", "sphinxcontrib-github-alt", "sphinxcontrib-spelling", "trio"] +pyqt5 = ["pyqt5"] +pyside6 = ["pyside6"] +test = ["flaky", "ipyparallel", "pre-commit", "pytest (>=7.0)", "pytest-asyncio", "pytest-cov", "pytest-timeout"] + +[[package]] +name = "ipyparallel" +version = "8.6.1" +description = "Interactive Parallel Computing with IPython" +optional = false +python-versions = ">=3.7" +files = [ + {file = "ipyparallel-8.6.1-py3-none-any.whl", hash = "sha256:39324d481759f74c9be4fb0deb025d446de6246f08fb81490443c9f55e2f056c"}, + {file = "ipyparallel-8.6.1.tar.gz", hash = "sha256:a39aa5ef9560170bf0e9afedca9ff045e1b9c1832c49303377edcc91cea9fb77"}, +] + +[package.dependencies] +decorator = "*" +entrypoints = "*" +ipykernel = ">=4.4" +ipython = ">=4" +jupyter-client = "*" +psutil = "*" +python-dateutil = ">=2.1" +pyzmq = ">=18" +tornado = ">=5.1" +tqdm = "*" +traitlets = ">=4.3" + +[package.extras] +benchmark = ["asv"] +labextension = ["jupyter-server", "jupyterlab (>=3)"] +nbext = ["jupyter-server", "notebook"] +retroextension = ["jupyter-server", "retrolab"] +serverextension = ["jupyter-server"] +test = ["ipython[test]", "pytest", "pytest-asyncio", "pytest-cov", "testpath"] + +[[package]] +name = "ipython" +version = "8.15.0" +description = "IPython: Productive Interactive Computing" +optional = false +python-versions = ">=3.9" +files = [ + {file = "ipython-8.15.0-py3-none-any.whl", hash = "sha256:45a2c3a529296870a97b7de34eda4a31bee16bc7bf954e07d39abe49caf8f887"}, + {file = "ipython-8.15.0.tar.gz", hash = "sha256:2baeb5be6949eeebf532150f81746f8333e2ccce02de1c7eedde3f23ed5e9f1e"}, +] + +[package.dependencies] +appnope = {version = "*", markers = "sys_platform == \"darwin\""} +backcall = "*" +colorama = {version = "*", markers = "sys_platform == \"win32\""} +decorator = "*" +exceptiongroup = {version = "*", markers = "python_version < \"3.11\""} +jedi = ">=0.16" +matplotlib-inline = "*" +pexpect = {version = ">4.3", markers = "sys_platform != \"win32\""} +pickleshare = "*" +prompt-toolkit = ">=3.0.30,<3.0.37 || >3.0.37,<3.1.0" +pygments = ">=2.4.0" +stack-data = "*" +traitlets = ">=5" +typing-extensions = {version = "*", markers = "python_version < \"3.10\""} + +[package.extras] +all = ["black", "curio", "docrepr", "exceptiongroup", "ipykernel", "ipyparallel", "ipywidgets", "matplotlib", "matplotlib (!=3.2.0)", "nbconvert", "nbformat", "notebook", "numpy (>=1.21)", "pandas", "pytest (<7)", "pytest (<7.1)", "pytest-asyncio", "qtconsole", "setuptools (>=18.5)", "sphinx (>=1.3)", "sphinx-rtd-theme", "stack-data", "testpath", "trio", "typing-extensions"] +black = ["black"] +doc = ["docrepr", "exceptiongroup", "ipykernel", "matplotlib", "pytest (<7)", "pytest (<7.1)", "pytest-asyncio", "setuptools (>=18.5)", "sphinx (>=1.3)", "sphinx-rtd-theme", "stack-data", "testpath", "typing-extensions"] +kernel = ["ipykernel"] +nbconvert = ["nbconvert"] +nbformat = ["nbformat"] +notebook = ["ipywidgets", "notebook"] +parallel = ["ipyparallel"] +qtconsole = ["qtconsole"] +test = ["pytest (<7.1)", "pytest-asyncio", "testpath"] +test-extra = ["curio", "matplotlib (!=3.2.0)", "nbformat", "numpy (>=1.21)", "pandas", "pytest (<7.1)", "pytest-asyncio", "testpath", "trio"] + +[[package]] +name = "ipython-genutils" +version = "0.2.0" +description = "Vestigial utilities from IPython" +optional = false +python-versions = "*" +files = [ + {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"}, +] + +[[package]] +name = "ipywidgets" +version = "8.1.1" +description = "Jupyter interactive widgets" +optional = false +python-versions = ">=3.7" +files = [ + {file = "ipywidgets-8.1.1-py3-none-any.whl", hash = "sha256:2b88d728656aea3bbfd05d32c747cfd0078f9d7e159cf982433b58ad717eed7f"}, + {file = "ipywidgets-8.1.1.tar.gz", hash = "sha256:40211efb556adec6fa450ccc2a77d59ca44a060f4f9f136833df59c9f538e6e8"}, +] + +[package.dependencies] +comm = ">=0.1.3" +ipython = ">=6.1.0" +jupyterlab-widgets = ">=3.0.9,<3.1.0" +traitlets = ">=4.3.1" +widgetsnbextension = ">=4.0.9,<4.1.0" + +[package.extras] +test = ["ipykernel", "jsonschema", "pytest (>=3.6.0)", "pytest-cov", "pytz"] + +[[package]] +name = "isoduration" +version = "20.11.0" +description = "Operations with ISO 8601 durations" +optional = false +python-versions = ">=3.7" +files = [ + {file = "isoduration-20.11.0-py3-none-any.whl", hash = "sha256:b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042"}, + {file = "isoduration-20.11.0.tar.gz", hash = "sha256:ac2f9015137935279eac671f94f89eb00584f940f5dc49462a0c4ee692ba1bd9"}, +] + +[package.dependencies] +arrow = ">=0.15.0" + +[[package]] +name = "jedi" +version = "0.19.0" +description = "An autocompletion tool for Python that can be used for text editors." +optional = false +python-versions = ">=3.6" +files = [ + {file = "jedi-0.19.0-py2.py3-none-any.whl", hash = "sha256:cb8ce23fbccff0025e9386b5cf85e892f94c9b822378f8da49970471335ac64e"}, + {file = "jedi-0.19.0.tar.gz", hash = "sha256:bcf9894f1753969cbac8022a8c2eaee06bfa3724e4192470aaffe7eb6272b0c4"}, +] + +[package.dependencies] +parso = ">=0.8.3,<0.9.0" + +[package.extras] +docs = ["Jinja2 (==2.11.3)", "MarkupSafe (==1.1.1)", "Pygments (==2.8.1)", "alabaster (==0.7.12)", "babel (==2.9.1)", "chardet (==4.0.0)", "commonmark (==0.8.1)", "docutils (==0.17.1)", "future (==0.18.2)", "idna (==2.10)", "imagesize (==1.2.0)", "mock (==1.0.1)", "packaging (==20.9)", "pyparsing (==2.4.7)", "pytz (==2021.1)", "readthedocs-sphinx-ext (==2.1.4)", "recommonmark (==0.5.0)", "requests (==2.25.1)", "six (==1.15.0)", "snowballstemmer (==2.1.0)", "sphinx (==1.8.5)", "sphinx-rtd-theme (==0.4.3)", "sphinxcontrib-serializinghtml (==1.1.4)", "sphinxcontrib-websupport (==1.2.4)", "urllib3 (==1.26.4)"] +qa = ["flake8 (==5.0.4)", "mypy (==0.971)", "types-setuptools (==67.2.0.1)"] +testing = ["Django (<3.1)", "attrs", "colorama", "docopt", "pytest (<7.0.0)"] + +[[package]] +name = "jinja2" +version = "3.1.2" +description = "A very fast and expressive template engine." +optional = false +python-versions = ">=3.7" +files = [ + {file = "Jinja2-3.1.2-py3-none-any.whl", hash = "sha256:6088930bfe239f0e6710546ab9c19c9ef35e29792895fed6e6e31a023a182a61"}, + {file = "Jinja2-3.1.2.tar.gz", hash = "sha256:31351a702a408a9e7595a8fc6150fc3f43bb6bf7e319770cbc0db9df9437e852"}, +] + +[package.dependencies] +MarkupSafe = ">=2.0" + +[package.extras] +i18n = ["Babel (>=2.7)"] + +[[package]] +name = "joblib" +version = "1.3.2" +description = "Lightweight pipelining with Python functions" +optional = false +python-versions = ">=3.7" +files = [ + {file = "joblib-1.3.2-py3-none-any.whl", hash = "sha256:ef4331c65f239985f3f2220ecc87db222f08fd22097a3dd5698f693875f8cbb9"}, + {file = "joblib-1.3.2.tar.gz", hash = "sha256:92f865e621e17784e7955080b6d042489e3b8e294949cc44c6eac304f59772b1"}, +] + +[[package]] +name = "json5" +version = "0.9.14" +description = "A Python implementation of the JSON5 data format." +optional = false +python-versions = "*" +files = [ + {file = "json5-0.9.14-py2.py3-none-any.whl", hash = "sha256:740c7f1b9e584a468dbb2939d8d458db3427f2c93ae2139d05f47e453eae964f"}, + {file = "json5-0.9.14.tar.gz", hash = "sha256:9ed66c3a6ca3510a976a9ef9b8c0787de24802724ab1860bc0153c7fdd589b02"}, +] + +[package.extras] +dev = ["hypothesis"] + +[[package]] +name = "jsonpickle" +version = "2.2.0" +description = "Python library for serializing any arbitrary object graph into JSON" +optional = false +python-versions = ">=2.7" +files = [ + {file = "jsonpickle-2.2.0-py2.py3-none-any.whl", hash = "sha256:de7f2613818aa4f234138ca11243d6359ff83ae528b2185efdd474f62bcf9ae1"}, + {file = "jsonpickle-2.2.0.tar.gz", hash = "sha256:7b272918b0554182e53dc340ddd62d9b7f902fec7e7b05620c04f3ccef479a0e"}, +] + +[package.extras] +docs = ["jaraco.packaging (>=3.2)", "rst.linker (>=1.9)", "sphinx"] +testing = ["ecdsa", "enum34", "feedparser", "jsonlib", "numpy", "pandas", "pymongo", "pytest (>=3.5,!=3.7.3)", "pytest-black-multipy", "pytest-checkdocs (>=1.2.3)", "pytest-cov", "pytest-flake8 (<1.1.0)", "pytest-flake8 (>=1.1.1)", "scikit-learn", "sqlalchemy"] +testing-libs = ["simplejson", "ujson", "yajl"] + +[[package]] +name = "jsonpointer" +version = "2.4" +description = "Identify specific nodes in a JSON document (RFC 6901)" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*, !=3.6.*" +files = [ + {file = "jsonpointer-2.4-py2.py3-none-any.whl", hash = "sha256:15d51bba20eea3165644553647711d150376234112651b4f1811022aecad7d7a"}, + {file = "jsonpointer-2.4.tar.gz", hash = "sha256:585cee82b70211fa9e6043b7bb89db6e1aa49524340dde8ad6b63206ea689d88"}, +] + +[[package]] +name = "jsonschema" +version = "4.19.1" +description = "An implementation of JSON Schema validation for Python" +optional = false +python-versions = ">=3.8" +files = [ + {file = "jsonschema-4.19.1-py3-none-any.whl", hash = "sha256:cd5f1f9ed9444e554b38ba003af06c0a8c2868131e56bfbef0550fb450c0330e"}, + {file = "jsonschema-4.19.1.tar.gz", hash = "sha256:ec84cc37cfa703ef7cd4928db24f9cb31428a5d0fa77747b8b51a847458e0bbf"}, +] + +[package.dependencies] +attrs = ">=22.2.0" +fqdn = {version = "*", optional = true, markers = "extra == \"format-nongpl\""} +idna = {version = "*", optional = true, markers = "extra == \"format-nongpl\""} +isoduration = {version = "*", optional = true, markers = "extra == \"format-nongpl\""} +jsonpointer = {version = ">1.13", optional = true, markers = "extra == \"format-nongpl\""} +jsonschema-specifications = ">=2023.03.6" +referencing = ">=0.28.4" +rfc3339-validator = {version = "*", optional = true, markers = "extra == \"format-nongpl\""} +rfc3986-validator = {version = ">0.1.0", optional = true, markers = "extra == \"format-nongpl\""} +rpds-py = ">=0.7.1" +uri-template = {version = "*", optional = true, markers = "extra == \"format-nongpl\""} +webcolors = {version = ">=1.11", optional = true, markers = "extra == \"format-nongpl\""} + +[package.extras] +format = ["fqdn", "idna", "isoduration", "jsonpointer (>1.13)", "rfc3339-validator", "rfc3987", "uri-template", "webcolors (>=1.11)"] +format-nongpl = ["fqdn", "idna", "isoduration", "jsonpointer (>1.13)", "rfc3339-validator", "rfc3986-validator (>0.1.0)", "uri-template", "webcolors (>=1.11)"] + +[[package]] +name = "jsonschema-specifications" +version = "2023.7.1" +description = "The JSON Schema meta-schemas and vocabularies, exposed as a Registry" +optional = false +python-versions = ">=3.8" +files = [ + {file = "jsonschema_specifications-2023.7.1-py3-none-any.whl", hash = "sha256:05adf340b659828a004220a9613be00fa3f223f2b82002e273dee62fd50524b1"}, + {file = "jsonschema_specifications-2023.7.1.tar.gz", hash = "sha256:c91a50404e88a1f6ba40636778e2ee08f6e24c5613fe4c53ac24578a5a7f72bb"}, +] + +[package.dependencies] +referencing = ">=0.28.0" + +[[package]] +name = "jupyter-client" +version = "8.3.1" +description = "Jupyter protocol implementation and client libraries" +optional = false +python-versions = ">=3.8" +files = [ + {file = "jupyter_client-8.3.1-py3-none-any.whl", hash = "sha256:5eb9f55eb0650e81de6b7e34308d8b92d04fe4ec41cd8193a913979e33d8e1a5"}, + {file = "jupyter_client-8.3.1.tar.gz", hash = "sha256:60294b2d5b869356c893f57b1a877ea6510d60d45cf4b38057f1672d85699ac9"}, +] + +[package.dependencies] +importlib-metadata = {version = ">=4.8.3", markers = "python_version < \"3.10\""} +jupyter-core = ">=4.12,<5.0.dev0 || >=5.1.dev0" +python-dateutil = ">=2.8.2" +pyzmq = ">=23.0" +tornado = ">=6.2" +traitlets = ">=5.3" + +[package.extras] +docs = ["ipykernel", "myst-parser", "pydata-sphinx-theme", "sphinx (>=4)", "sphinx-autodoc-typehints", "sphinxcontrib-github-alt", "sphinxcontrib-spelling"] +test = ["coverage", "ipykernel (>=6.14)", "mypy", "paramiko", "pre-commit", "pytest", "pytest-cov", "pytest-jupyter[client] (>=0.4.1)", "pytest-timeout"] + +[[package]] +name = "jupyter-core" +version = "5.3.1" +description = "Jupyter core package. A base package on which Jupyter projects rely." +optional = false +python-versions = ">=3.8" +files = [ + {file = "jupyter_core-5.3.1-py3-none-any.whl", hash = "sha256:ae9036db959a71ec1cac33081eeb040a79e681f08ab68b0883e9a676c7a90dce"}, + {file = "jupyter_core-5.3.1.tar.gz", hash = "sha256:5ba5c7938a7f97a6b0481463f7ff0dbac7c15ba48cf46fa4035ca6e838aa1aba"}, +] + +[package.dependencies] +platformdirs = ">=2.5" +pywin32 = {version = ">=300", markers = "sys_platform == \"win32\" and platform_python_implementation != \"PyPy\""} +traitlets = ">=5.3" + +[package.extras] +docs = ["myst-parser", "sphinx-autodoc-typehints", "sphinxcontrib-github-alt", "sphinxcontrib-spelling", "traitlets"] +test = ["ipykernel", "pre-commit", "pytest", "pytest-cov", "pytest-timeout"] + +[[package]] +name = "jupyter-events" +version = "0.7.0" +description = "Jupyter Event System library" +optional = false +python-versions = ">=3.8" +files = [ + {file = "jupyter_events-0.7.0-py3-none-any.whl", hash = "sha256:4753da434c13a37c3f3c89b500afa0c0a6241633441421f6adafe2fb2e2b924e"}, + {file = "jupyter_events-0.7.0.tar.gz", hash = "sha256:7be27f54b8388c03eefea123a4f79247c5b9381c49fb1cd48615ee191eb12615"}, +] + +[package.dependencies] +jsonschema = {version = ">=4.18.0", extras = ["format-nongpl"]} +python-json-logger = ">=2.0.4" +pyyaml = ">=5.3" +referencing = "*" +rfc3339-validator = "*" +rfc3986-validator = ">=0.1.1" +traitlets = ">=5.3" + +[package.extras] +cli = ["click", "rich"] +docs = ["jupyterlite-sphinx", "myst-parser", "pydata-sphinx-theme", "sphinxcontrib-spelling"] +test = ["click", "pre-commit", "pytest (>=7.0)", "pytest-asyncio (>=0.19.0)", "pytest-console-scripts", "rich"] + +[[package]] +name = "jupyter-server" +version = "2.7.3" +description = "The backend—i.e. core services, APIs, and REST endpoints—to Jupyter web applications." +optional = false +python-versions = ">=3.8" +files = [ + {file = "jupyter_server-2.7.3-py3-none-any.whl", hash = "sha256:8e4b90380b59d7a1e31086c4692231f2a2ea4cb269f5516e60aba72ce8317fc9"}, + {file = "jupyter_server-2.7.3.tar.gz", hash = "sha256:d4916c8581c4ebbc534cebdaa8eca2478d9f3bfdd88eae29fcab0120eac57649"}, +] + +[package.dependencies] +anyio = ">=3.1.0" +argon2-cffi = "*" +jinja2 = "*" +jupyter-client = ">=7.4.4" +jupyter-core = ">=4.12,<5.0.dev0 || >=5.1.dev0" +jupyter-events = ">=0.6.0" +jupyter-server-terminals = "*" +nbconvert = ">=6.4.4" +nbformat = ">=5.3.0" +overrides = "*" +packaging = "*" +prometheus-client = "*" +pywinpty = {version = "*", markers = "os_name == \"nt\""} +pyzmq = ">=24" +send2trash = ">=1.8.2" +terminado = ">=0.8.3" +tornado = ">=6.2.0" +traitlets = ">=5.6.0" +websocket-client = "*" + +[package.extras] +docs = ["ipykernel", "jinja2", "jupyter-client", "jupyter-server", "myst-parser", "nbformat", "prometheus-client", "pydata-sphinx-theme", "send2trash", "sphinx-autodoc-typehints", "sphinxcontrib-github-alt", "sphinxcontrib-openapi (>=0.8.0)", "sphinxcontrib-spelling", "sphinxemoji", "tornado", "typing-extensions"] +test = ["flaky", "ipykernel", "pre-commit", "pytest (>=7.0)", "pytest-console-scripts", "pytest-jupyter[server] (>=0.4)", "pytest-timeout", "requests"] + +[[package]] +name = "jupyter-server-fileid" +version = "0.9.0" +description = "" +optional = false +python-versions = ">=3.7" +files = [ + {file = "jupyter_server_fileid-0.9.0-py3-none-any.whl", hash = "sha256:5b489c6fe6783c41174a728c7b81099608518387e53c3d53451a67f46a0cb7b0"}, + {file = "jupyter_server_fileid-0.9.0.tar.gz", hash = "sha256:171538b7c7d08d11dbc57d4e6da196e0c258e4c2cd29249ef1e032bb423677f8"}, +] + +[package.dependencies] +jupyter-events = ">=0.5.0" +jupyter-server = ">=1.15,<3" + +[package.extras] +cli = ["click"] +test = ["jupyter-server[test] (>=1.15,<3)", "pytest", "pytest-cov"] + +[[package]] +name = "jupyter-server-terminals" +version = "0.4.4" +description = "A Jupyter Server Extension Providing Terminals." +optional = false +python-versions = ">=3.8" +files = [ + {file = "jupyter_server_terminals-0.4.4-py3-none-any.whl", hash = "sha256:75779164661cec02a8758a5311e18bb8eb70c4e86c6b699403100f1585a12a36"}, + {file = "jupyter_server_terminals-0.4.4.tar.gz", hash = "sha256:57ab779797c25a7ba68e97bcfb5d7740f2b5e8a83b5e8102b10438041a7eac5d"}, +] + +[package.dependencies] +pywinpty = {version = ">=2.0.3", markers = "os_name == \"nt\""} +terminado = ">=0.8.3" + +[package.extras] +docs = ["jinja2", "jupyter-server", "mistune (<3.0)", "myst-parser", "nbformat", "packaging", "pydata-sphinx-theme", "sphinxcontrib-github-alt", "sphinxcontrib-openapi", "sphinxcontrib-spelling", "sphinxemoji", "tornado"] +test = ["coverage", "jupyter-server (>=2.0.0)", "pytest (>=7.0)", "pytest-cov", "pytest-jupyter[server] (>=0.5.3)", "pytest-timeout"] + +[[package]] +name = "jupyter-server-ydoc" +version = "0.8.0" +description = "A Jupyter Server Extension Providing Y Documents." +optional = false +python-versions = ">=3.7" +files = [ + {file = "jupyter_server_ydoc-0.8.0-py3-none-any.whl", hash = "sha256:969a3a1a77ed4e99487d60a74048dc9fa7d3b0dcd32e60885d835bbf7ba7be11"}, + {file = "jupyter_server_ydoc-0.8.0.tar.gz", hash = "sha256:a6fe125091792d16c962cc3720c950c2b87fcc8c3ecf0c54c84e9a20b814526c"}, +] + +[package.dependencies] +jupyter-server-fileid = ">=0.6.0,<1" +jupyter-ydoc = ">=0.2.0,<0.4.0" +ypy-websocket = ">=0.8.2,<0.9.0" + +[package.extras] +test = ["coverage", "jupyter-server[test] (>=2.0.0a0)", "pytest (>=7.0)", "pytest-cov", "pytest-timeout", "pytest-tornasync"] + +[[package]] +name = "jupyter-ydoc" +version = "0.2.5" +description = "Document structures for collaborative editing using Ypy" +optional = false +python-versions = ">=3.7" +files = [ + {file = "jupyter_ydoc-0.2.5-py3-none-any.whl", hash = "sha256:5759170f112c70320a84217dd98d287699076ae65a7f88d458d57940a9f2b882"}, + {file = "jupyter_ydoc-0.2.5.tar.gz", hash = "sha256:5a02ca7449f0d875f73e8cb8efdf695dddef15a8e71378b1f4eda6b7c90f5382"}, +] + +[package.dependencies] +importlib-metadata = {version = ">=3.6", markers = "python_version < \"3.10\""} +y-py = ">=0.6.0,<0.7.0" + +[package.extras] +dev = ["click", "jupyter-releaser"] +test = ["pre-commit", "pytest", "pytest-asyncio", "websockets (>=10.0)", "ypy-websocket (>=0.8.4,<0.9.0)"] + +[[package]] +name = "jupyterlab" +version = "3.6.6" +description = "JupyterLab computational environment" +optional = false +python-versions = ">=3.7" +files = [ + {file = "jupyterlab-3.6.6-py3-none-any.whl", hash = "sha256:2c1309e77135670233f1146aef88e2101002ff0dc5b9147c2b987807efbbca07"}, + {file = "jupyterlab-3.6.6.tar.gz", hash = "sha256:0a47d7adb28bd5659d727783f4113537e54f8c66e0d6322d1d8f9edb081dc926"}, +] + +[package.dependencies] +ipython = "*" +jinja2 = ">=2.1" +jupyter-core = "*" +jupyter-server = ">=1.16.0,<3" +jupyter-server-ydoc = ">=0.8.0,<0.9.0" +jupyter-ydoc = ">=0.2.4,<0.3.0" +jupyterlab-server = ">=2.19,<3.0" +nbclassic = "*" +notebook = "<7" +packaging = "*" +tomli = {version = "*", markers = "python_version < \"3.11\""} +tornado = ">=6.1.0" + +[package.extras] +test = ["check-manifest", "coverage", "jupyterlab-server[test]", "pre-commit", "pytest (>=6.0)", "pytest-check-links (>=0.5)", "pytest-console-scripts", "pytest-cov", "pytest-jupyter (>=0.5.3)", "requests", "requests-cache", "virtualenv"] + +[[package]] +name = "jupyterlab-pygments" +version = "0.2.2" +description = "Pygments theme using JupyterLab CSS variables" +optional = false +python-versions = ">=3.7" +files = [ + {file = "jupyterlab_pygments-0.2.2-py2.py3-none-any.whl", hash = "sha256:2405800db07c9f770863bcf8049a529c3dd4d3e28536638bd7c1c01d2748309f"}, + {file = "jupyterlab_pygments-0.2.2.tar.gz", hash = "sha256:7405d7fde60819d905a9fa8ce89e4cd830e318cdad22a0030f7a901da705585d"}, +] + +[[package]] +name = "jupyterlab-server" +version = "2.25.0" +description = "A set of server components for JupyterLab and JupyterLab like applications." +optional = false +python-versions = ">=3.8" +files = [ + {file = "jupyterlab_server-2.25.0-py3-none-any.whl", hash = "sha256:c9f67a98b295c5dee87f41551b0558374e45d449f3edca153dd722140630dcb2"}, + {file = "jupyterlab_server-2.25.0.tar.gz", hash = "sha256:77c2f1f282d610f95e496e20d5bf1d2a7706826dfb7b18f3378ae2870d272fb7"}, +] + +[package.dependencies] +babel = ">=2.10" +importlib-metadata = {version = ">=4.8.3", markers = "python_version < \"3.10\""} +jinja2 = ">=3.0.3" +json5 = ">=0.9.0" +jsonschema = ">=4.18.0" +jupyter-server = ">=1.21,<3" +packaging = ">=21.3" +requests = ">=2.31" + +[package.extras] +docs = ["autodoc-traits", "jinja2 (<3.2.0)", "mistune (<4)", "myst-parser", "pydata-sphinx-theme", "sphinx", "sphinx-copybutton", "sphinxcontrib-openapi (>0.8)"] +openapi = ["openapi-core (>=0.18.0,<0.19.0)", "ruamel-yaml"] +test = ["hatch", "ipykernel", "openapi-core (>=0.18.0,<0.19.0)", "openapi-spec-validator (>=0.6.0,<0.7.0)", "pytest (>=7.0)", "pytest-console-scripts", "pytest-cov", "pytest-jupyter[server] (>=0.6.2)", "pytest-timeout", "requests-mock", "ruamel-yaml", "sphinxcontrib-spelling", "strict-rfc3339", "werkzeug"] + +[[package]] +name = "jupyterlab-widgets" +version = "3.0.9" +description = "Jupyter interactive widgets for JupyterLab" +optional = false +python-versions = ">=3.7" +files = [ + {file = "jupyterlab_widgets-3.0.9-py3-none-any.whl", hash = "sha256:3cf5bdf5b897bf3bccf1c11873aa4afd776d7430200f765e0686bd352487b58d"}, + {file = "jupyterlab_widgets-3.0.9.tar.gz", hash = "sha256:6005a4e974c7beee84060fdfba341a3218495046de8ae3ec64888e5fe19fdb4c"}, +] + +[[package]] +name = "kiwisolver" +version = "1.4.5" +description = "A fast implementation of the Cassowary constraint solver" +optional = false +python-versions = ">=3.7" +files = [ + {file = "kiwisolver-1.4.5-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:05703cf211d585109fcd72207a31bb170a0f22144d68298dc5e61b3c946518af"}, + {file = "kiwisolver-1.4.5-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:146d14bebb7f1dc4d5fbf74f8a6cb15ac42baadee8912eb84ac0b3b2a3dc6ac3"}, + {file = "kiwisolver-1.4.5-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:6ef7afcd2d281494c0a9101d5c571970708ad911d028137cd558f02b851c08b4"}, + {file = "kiwisolver-1.4.5-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:9eaa8b117dc8337728e834b9c6e2611f10c79e38f65157c4c38e9400286f5cb1"}, + {file = "kiwisolver-1.4.5-cp310-cp310-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:ec20916e7b4cbfb1f12380e46486ec4bcbaa91a9c448b97023fde0d5bbf9e4ff"}, + {file = "kiwisolver-1.4.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:39b42c68602539407884cf70d6a480a469b93b81b7701378ba5e2328660c847a"}, + {file = "kiwisolver-1.4.5-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:aa12042de0171fad672b6c59df69106d20d5596e4f87b5e8f76df757a7c399aa"}, + {file = "kiwisolver-1.4.5-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2a40773c71d7ccdd3798f6489aaac9eee213d566850a9533f8d26332d626b82c"}, + {file = "kiwisolver-1.4.5-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:19df6e621f6d8b4b9c4d45f40a66839294ff2bb235e64d2178f7522d9170ac5b"}, + {file = "kiwisolver-1.4.5-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:83d78376d0d4fd884e2c114d0621624b73d2aba4e2788182d286309ebdeed770"}, + {file = "kiwisolver-1.4.5-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:e391b1f0a8a5a10ab3b9bb6afcfd74f2175f24f8975fb87ecae700d1503cdee0"}, + {file = "kiwisolver-1.4.5-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:852542f9481f4a62dbb5dd99e8ab7aedfeb8fb6342349a181d4036877410f525"}, + {file = "kiwisolver-1.4.5-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:59edc41b24031bc25108e210c0def6f6c2191210492a972d585a06ff246bb79b"}, + {file = "kiwisolver-1.4.5-cp310-cp310-win32.whl", hash = "sha256:a6aa6315319a052b4ee378aa171959c898a6183f15c1e541821c5c59beaa0238"}, + {file = "kiwisolver-1.4.5-cp310-cp310-win_amd64.whl", hash = "sha256:d0ef46024e6a3d79c01ff13801cb19d0cad7fd859b15037aec74315540acc276"}, + {file = "kiwisolver-1.4.5-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:11863aa14a51fd6ec28688d76f1735f8f69ab1fabf388851a595d0721af042f5"}, + {file = "kiwisolver-1.4.5-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:8ab3919a9997ab7ef2fbbed0cc99bb28d3c13e6d4b1ad36e97e482558a91be90"}, + {file = "kiwisolver-1.4.5-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:fcc700eadbbccbf6bc1bcb9dbe0786b4b1cb91ca0dcda336eef5c2beed37b797"}, + {file = "kiwisolver-1.4.5-cp311-cp311-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:dfdd7c0b105af050eb3d64997809dc21da247cf44e63dc73ff0fd20b96be55a9"}, + {file = "kiwisolver-1.4.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:76c6a5964640638cdeaa0c359382e5703e9293030fe730018ca06bc2010c4437"}, + {file = "kiwisolver-1.4.5-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:bbea0db94288e29afcc4c28afbf3a7ccaf2d7e027489c449cf7e8f83c6346eb9"}, + {file = "kiwisolver-1.4.5-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ceec1a6bc6cab1d6ff5d06592a91a692f90ec7505d6463a88a52cc0eb58545da"}, + {file = "kiwisolver-1.4.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:040c1aebeda72197ef477a906782b5ab0d387642e93bda547336b8957c61022e"}, + {file = "kiwisolver-1.4.5-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:f91de7223d4c7b793867797bacd1ee53bfe7359bd70d27b7b58a04efbb9436c8"}, + {file = "kiwisolver-1.4.5-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:faae4860798c31530dd184046a900e652c95513796ef51a12bc086710c2eec4d"}, + {file = "kiwisolver-1.4.5-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:b0157420efcb803e71d1b28e2c287518b8808b7cf1ab8af36718fd0a2c453eb0"}, + {file = "kiwisolver-1.4.5-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:06f54715b7737c2fecdbf140d1afb11a33d59508a47bf11bb38ecf21dc9ab79f"}, + {file = "kiwisolver-1.4.5-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:fdb7adb641a0d13bdcd4ef48e062363d8a9ad4a182ac7647ec88f695e719ae9f"}, + {file = "kiwisolver-1.4.5-cp311-cp311-win32.whl", hash = "sha256:bb86433b1cfe686da83ce32a9d3a8dd308e85c76b60896d58f082136f10bffac"}, + {file = "kiwisolver-1.4.5-cp311-cp311-win_amd64.whl", hash = "sha256:6c08e1312a9cf1074d17b17728d3dfce2a5125b2d791527f33ffbe805200a355"}, + {file = "kiwisolver-1.4.5-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:32d5cf40c4f7c7b3ca500f8985eb3fb3a7dfc023215e876f207956b5ea26632a"}, + {file = "kiwisolver-1.4.5-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:f846c260f483d1fd217fe5ed7c173fb109efa6b1fc8381c8b7552c5781756192"}, + {file = "kiwisolver-1.4.5-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:5ff5cf3571589b6d13bfbfd6bcd7a3f659e42f96b5fd1c4830c4cf21d4f5ef45"}, + {file = "kiwisolver-1.4.5-cp312-cp312-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7269d9e5f1084a653d575c7ec012ff57f0c042258bf5db0954bf551c158466e7"}, + {file = "kiwisolver-1.4.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:da802a19d6e15dffe4b0c24b38b3af68e6c1a68e6e1d8f30148c83864f3881db"}, + {file = "kiwisolver-1.4.5-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:3aba7311af82e335dd1e36ffff68aaca609ca6290c2cb6d821a39aa075d8e3ff"}, + {file = "kiwisolver-1.4.5-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:763773d53f07244148ccac5b084da5adb90bfaee39c197554f01b286cf869228"}, + {file = "kiwisolver-1.4.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2270953c0d8cdab5d422bee7d2007f043473f9d2999631c86a223c9db56cbd16"}, + {file = "kiwisolver-1.4.5-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:d099e745a512f7e3bbe7249ca835f4d357c586d78d79ae8f1dcd4d8adeb9bda9"}, + {file = "kiwisolver-1.4.5-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:74db36e14a7d1ce0986fa104f7d5637aea5c82ca6326ed0ec5694280942d1162"}, + {file = "kiwisolver-1.4.5-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:7e5bab140c309cb3a6ce373a9e71eb7e4873c70c2dda01df6820474f9889d6d4"}, + {file = "kiwisolver-1.4.5-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:0f114aa76dc1b8f636d077979c0ac22e7cd8f3493abbab152f20eb8d3cda71f3"}, + {file = "kiwisolver-1.4.5-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:88a2df29d4724b9237fc0c6eaf2a1adae0cdc0b3e9f4d8e7dc54b16812d2d81a"}, + {file = "kiwisolver-1.4.5-cp312-cp312-win32.whl", hash = "sha256:72d40b33e834371fd330fb1472ca19d9b8327acb79a5821d4008391db8e29f20"}, + {file = "kiwisolver-1.4.5-cp312-cp312-win_amd64.whl", hash = "sha256:2c5674c4e74d939b9d91dda0fae10597ac7521768fec9e399c70a1f27e2ea2d9"}, + {file = "kiwisolver-1.4.5-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:3a2b053a0ab7a3960c98725cfb0bf5b48ba82f64ec95fe06f1d06c99b552e130"}, + {file = "kiwisolver-1.4.5-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3cd32d6c13807e5c66a7cbb79f90b553642f296ae4518a60d8d76243b0ad2898"}, + {file = "kiwisolver-1.4.5-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:59ec7b7c7e1a61061850d53aaf8e93db63dce0c936db1fda2658b70e4a1be709"}, + {file = "kiwisolver-1.4.5-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:da4cfb373035def307905d05041c1d06d8936452fe89d464743ae7fb8371078b"}, + {file = "kiwisolver-1.4.5-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:2400873bccc260b6ae184b2b8a4fec0e4082d30648eadb7c3d9a13405d861e89"}, + {file = "kiwisolver-1.4.5-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:1b04139c4236a0f3aff534479b58f6f849a8b351e1314826c2d230849ed48985"}, + {file = "kiwisolver-1.4.5-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:4e66e81a5779b65ac21764c295087de82235597a2293d18d943f8e9e32746265"}, + {file = "kiwisolver-1.4.5-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:7931d8f1f67c4be9ba1dd9c451fb0eeca1a25b89e4d3f89e828fe12a519b782a"}, + {file = "kiwisolver-1.4.5-cp37-cp37m-musllinux_1_1_ppc64le.whl", hash = "sha256:b3f7e75f3015df442238cca659f8baa5f42ce2a8582727981cbfa15fee0ee205"}, + {file = "kiwisolver-1.4.5-cp37-cp37m-musllinux_1_1_s390x.whl", hash = "sha256:bbf1d63eef84b2e8c89011b7f2235b1e0bf7dacc11cac9431fc6468e99ac77fb"}, + {file = "kiwisolver-1.4.5-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:4c380469bd3f970ef677bf2bcba2b6b0b4d5c75e7a020fb863ef75084efad66f"}, + {file = "kiwisolver-1.4.5-cp37-cp37m-win32.whl", hash = "sha256:9408acf3270c4b6baad483865191e3e582b638b1654a007c62e3efe96f09a9a3"}, + {file = "kiwisolver-1.4.5-cp37-cp37m-win_amd64.whl", hash = "sha256:5b94529f9b2591b7af5f3e0e730a4e0a41ea174af35a4fd067775f9bdfeee01a"}, + {file = "kiwisolver-1.4.5-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:11c7de8f692fc99816e8ac50d1d1aef4f75126eefc33ac79aac02c099fd3db71"}, + {file = "kiwisolver-1.4.5-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:53abb58632235cd154176ced1ae8f0d29a6657aa1aa9decf50b899b755bc2b93"}, + {file = "kiwisolver-1.4.5-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:88b9f257ca61b838b6f8094a62418421f87ac2a1069f7e896c36a7d86b5d4c29"}, + {file = "kiwisolver-1.4.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3195782b26fc03aa9c6913d5bad5aeb864bdc372924c093b0f1cebad603dd712"}, + {file = "kiwisolver-1.4.5-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:fc579bf0f502e54926519451b920e875f433aceb4624a3646b3252b5caa9e0b6"}, + {file = "kiwisolver-1.4.5-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:5a580c91d686376f0f7c295357595c5a026e6cbc3d77b7c36e290201e7c11ecb"}, + {file = "kiwisolver-1.4.5-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:cfe6ab8da05c01ba6fbea630377b5da2cd9bcbc6338510116b01c1bc939a2c18"}, + {file = "kiwisolver-1.4.5-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:d2e5a98f0ec99beb3c10e13b387f8db39106d53993f498b295f0c914328b1333"}, + {file = "kiwisolver-1.4.5-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:a51a263952b1429e429ff236d2f5a21c5125437861baeed77f5e1cc2d2c7c6da"}, + {file = "kiwisolver-1.4.5-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:3edd2fa14e68c9be82c5b16689e8d63d89fe927e56debd6e1dbce7a26a17f81b"}, + {file = "kiwisolver-1.4.5-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:74d1b44c6cfc897df648cc9fdaa09bc3e7679926e6f96df05775d4fb3946571c"}, + {file = "kiwisolver-1.4.5-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:76d9289ed3f7501012e05abb8358bbb129149dbd173f1f57a1bf1c22d19ab7cc"}, + {file = "kiwisolver-1.4.5-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:92dea1ffe3714fa8eb6a314d2b3c773208d865a0e0d35e713ec54eea08a66250"}, + {file = "kiwisolver-1.4.5-cp38-cp38-win32.whl", hash = "sha256:5c90ae8c8d32e472be041e76f9d2f2dbff4d0b0be8bd4041770eddb18cf49a4e"}, + {file = "kiwisolver-1.4.5-cp38-cp38-win_amd64.whl", hash = "sha256:c7940c1dc63eb37a67721b10d703247552416f719c4188c54e04334321351ced"}, + {file = "kiwisolver-1.4.5-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:9407b6a5f0d675e8a827ad8742e1d6b49d9c1a1da5d952a67d50ef5f4170b18d"}, + {file = "kiwisolver-1.4.5-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:15568384086b6df3c65353820a4473575dbad192e35010f622c6ce3eebd57af9"}, + {file = "kiwisolver-1.4.5-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:0dc9db8e79f0036e8173c466d21ef18e1befc02de8bf8aa8dc0813a6dc8a7046"}, + {file = "kiwisolver-1.4.5-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:cdc8a402aaee9a798b50d8b827d7ecf75edc5fb35ea0f91f213ff927c15f4ff0"}, + {file = "kiwisolver-1.4.5-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:6c3bd3cde54cafb87d74d8db50b909705c62b17c2099b8f2e25b461882e544ff"}, + {file = "kiwisolver-1.4.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:955e8513d07a283056b1396e9a57ceddbd272d9252c14f154d450d227606eb54"}, + {file = "kiwisolver-1.4.5-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:346f5343b9e3f00b8db8ba359350eb124b98c99efd0b408728ac6ebf38173958"}, + {file = "kiwisolver-1.4.5-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b9098e0049e88c6a24ff64545cdfc50807818ba6c1b739cae221bbbcbc58aad3"}, + {file = "kiwisolver-1.4.5-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:00bd361b903dc4bbf4eb165f24d1acbee754fce22ded24c3d56eec268658a5cf"}, + {file = "kiwisolver-1.4.5-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:7b8b454bac16428b22560d0a1cf0a09875339cab69df61d7805bf48919415901"}, + {file = "kiwisolver-1.4.5-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:f1d072c2eb0ad60d4c183f3fb44ac6f73fb7a8f16a2694a91f988275cbf352f9"}, + {file = "kiwisolver-1.4.5-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:31a82d498054cac9f6d0b53d02bb85811185bcb477d4b60144f915f3b3126342"}, + {file = "kiwisolver-1.4.5-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:6512cb89e334e4700febbffaaa52761b65b4f5a3cf33f960213d5656cea36a77"}, + {file = "kiwisolver-1.4.5-cp39-cp39-win32.whl", hash = "sha256:9db8ea4c388fdb0f780fe91346fd438657ea602d58348753d9fb265ce1bca67f"}, + {file = "kiwisolver-1.4.5-cp39-cp39-win_amd64.whl", hash = "sha256:59415f46a37f7f2efeec758353dd2eae1b07640d8ca0f0c42548ec4125492635"}, + {file = "kiwisolver-1.4.5-pp37-pypy37_pp73-macosx_10_9_x86_64.whl", hash = "sha256:5c7b3b3a728dc6faf3fc372ef24f21d1e3cee2ac3e9596691d746e5a536de920"}, + {file = "kiwisolver-1.4.5-pp37-pypy37_pp73-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:620ced262a86244e2be10a676b646f29c34537d0d9cc8eb26c08f53d98013390"}, + {file = "kiwisolver-1.4.5-pp37-pypy37_pp73-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:378a214a1e3bbf5ac4a8708304318b4f890da88c9e6a07699c4ae7174c09a68d"}, + {file = "kiwisolver-1.4.5-pp37-pypy37_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:aaf7be1207676ac608a50cd08f102f6742dbfc70e8d60c4db1c6897f62f71523"}, + {file = "kiwisolver-1.4.5-pp37-pypy37_pp73-win_amd64.whl", hash = "sha256:ba55dce0a9b8ff59495ddd050a0225d58bd0983d09f87cfe2b6aec4f2c1234e4"}, + {file = "kiwisolver-1.4.5-pp38-pypy38_pp73-macosx_10_9_x86_64.whl", hash = "sha256:fd32ea360bcbb92d28933fc05ed09bffcb1704ba3fc7942e81db0fd4f81a7892"}, + {file = "kiwisolver-1.4.5-pp38-pypy38_pp73-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:5e7139af55d1688f8b960ee9ad5adafc4ac17c1c473fe07133ac092310d76544"}, + {file = "kiwisolver-1.4.5-pp38-pypy38_pp73-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:dced8146011d2bc2e883f9bd68618b8247387f4bbec46d7392b3c3b032640126"}, + {file = "kiwisolver-1.4.5-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c9bf3325c47b11b2e51bca0824ea217c7cd84491d8ac4eefd1e409705ef092bd"}, + {file = "kiwisolver-1.4.5-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:5794cf59533bc3f1b1c821f7206a3617999db9fbefc345360aafe2e067514929"}, + {file = "kiwisolver-1.4.5-pp39-pypy39_pp73-macosx_10_9_x86_64.whl", hash = "sha256:e368f200bbc2e4f905b8e71eb38b3c04333bddaa6a2464a6355487b02bb7fb09"}, + {file = "kiwisolver-1.4.5-pp39-pypy39_pp73-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e5d706eba36b4c4d5bc6c6377bb6568098765e990cfc21ee16d13963fab7b3e7"}, + {file = "kiwisolver-1.4.5-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:85267bd1aa8880a9c88a8cb71e18d3d64d2751a790e6ca6c27b8ccc724bcd5ad"}, + {file = "kiwisolver-1.4.5-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:210ef2c3a1f03272649aff1ef992df2e724748918c4bc2d5a90352849eb40bea"}, + {file = "kiwisolver-1.4.5-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:11d011a7574eb3b82bcc9c1a1d35c1d7075677fdd15de527d91b46bd35e935ee"}, + {file = "kiwisolver-1.4.5.tar.gz", hash = "sha256:e57e563a57fb22a142da34f38acc2fc1a5c864bc29ca1517a88abc963e60d6ec"}, +] + +[[package]] +name = "llvmlite" +version = "0.40.1" +description = "lightweight wrapper around basic LLVM functionality" +optional = false +python-versions = ">=3.8" +files = [ + {file = "llvmlite-0.40.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:84ce9b1c7a59936382ffde7871978cddcda14098e5a76d961e204523e5c372fb"}, + {file = "llvmlite-0.40.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:3673c53cb21c65d2ff3704962b5958e967c6fc0bd0cff772998face199e8d87b"}, + {file = "llvmlite-0.40.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bba2747cf5b4954e945c287fe310b3fcc484e2a9d1b0c273e99eb17d103bb0e6"}, + {file = "llvmlite-0.40.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bbd5e82cc990e5a3e343a3bf855c26fdfe3bfae55225f00efd01c05bbda79918"}, + {file = "llvmlite-0.40.1-cp310-cp310-win32.whl", hash = "sha256:09f83ea7a54509c285f905d968184bba00fc31ebf12f2b6b1494d677bb7dde9b"}, + {file = "llvmlite-0.40.1-cp310-cp310-win_amd64.whl", hash = "sha256:7b37297f3cbd68d14a97223a30620589d98ad1890e5040c9e5fc181063f4ed49"}, + {file = "llvmlite-0.40.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:a66a5bd580951751b4268f4c3bddcef92682814d6bc72f3cd3bb67f335dd7097"}, + {file = "llvmlite-0.40.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:467b43836b388eaedc5a106d76761e388dbc4674b2f2237bc477c6895b15a634"}, + {file = "llvmlite-0.40.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0c23edd196bd797dc3a7860799054ea3488d2824ecabc03f9135110c2e39fcbc"}, + {file = "llvmlite-0.40.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a36d9f244b6680cb90bbca66b146dabb2972f4180c64415c96f7c8a2d8b60a36"}, + {file = "llvmlite-0.40.1-cp311-cp311-win_amd64.whl", hash = "sha256:5b3076dc4e9c107d16dc15ecb7f2faf94f7736cd2d5e9f4dc06287fd672452c1"}, + {file = "llvmlite-0.40.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:4a7525db121f2e699809b539b5308228854ccab6693ecb01b52c44a2f5647e20"}, + {file = "llvmlite-0.40.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:84747289775d0874e506f907a4513db889471607db19b04de97d144047fec885"}, + {file = "llvmlite-0.40.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e35766e42acef0fe7d1c43169a8ffc327a47808fae6a067b049fe0e9bbf84dd5"}, + {file = "llvmlite-0.40.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:cda71de10a1f48416309e408ea83dab5bf36058f83e13b86a2961defed265568"}, + {file = "llvmlite-0.40.1-cp38-cp38-win32.whl", hash = "sha256:96707ebad8b051bbb4fc40c65ef93b7eeee16643bd4d579a14d11578e4b7a647"}, + {file = "llvmlite-0.40.1-cp38-cp38-win_amd64.whl", hash = "sha256:e44f854dc11559795bcdeaf12303759e56213d42dabbf91a5897aa2d8b033810"}, + {file = "llvmlite-0.40.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:f643d15aacd0b0b0dc8b74b693822ba3f9a53fa63bc6a178c2dba7cc88f42144"}, + {file = "llvmlite-0.40.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:39a0b4d0088c01a469a5860d2e2d7a9b4e6a93c0f07eb26e71a9a872a8cadf8d"}, + {file = "llvmlite-0.40.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9329b930d699699846623054121ed105fd0823ed2180906d3b3235d361645490"}, + {file = "llvmlite-0.40.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e2dbbb8424037ca287983b115a29adf37d806baf7e1bf4a67bd2cffb74e085ed"}, + {file = "llvmlite-0.40.1-cp39-cp39-win32.whl", hash = "sha256:e74e7bec3235a1e1c9ad97d897a620c5007d0ed80c32c84c1d787e7daa17e4ec"}, + {file = "llvmlite-0.40.1-cp39-cp39-win_amd64.whl", hash = "sha256:ff8f31111bb99d135ff296757dc81ab36c2dee54ed4bd429158a96da9807c316"}, + {file = "llvmlite-0.40.1.tar.gz", hash = "sha256:5cdb0d45df602099d833d50bd9e81353a5e036242d3c003c5b294fc61d1986b4"}, +] + +[[package]] +name = "loguru" +version = "0.5.3" +description = "Python logging made (stupidly) simple" +optional = false +python-versions = ">=3.5" +files = [ + {file = "loguru-0.5.3-py3-none-any.whl", hash = "sha256:f8087ac396b5ee5f67c963b495d615ebbceac2796379599820e324419d53667c"}, + {file = "loguru-0.5.3.tar.gz", hash = "sha256:b28e72ac7a98be3d28ad28570299a393dfcd32e5e3f6a353dec94675767b6319"}, +] + +[package.dependencies] +colorama = {version = ">=0.3.4", markers = "sys_platform == \"win32\""} +win32-setctime = {version = ">=1.0.0", markers = "sys_platform == \"win32\""} + +[package.extras] +dev = ["Sphinx (>=2.2.1)", "black (>=19.10b0)", "codecov (>=2.0.15)", "colorama (>=0.3.4)", "flake8 (>=3.7.7)", "isort (>=5.1.1)", "pytest (>=4.6.2)", "pytest-cov (>=2.7.1)", "sphinx-autobuild (>=0.7.1)", "sphinx-rtd-theme (>=0.4.3)", "tox (>=3.9.0)", "tox-travis (>=0.12)"] + +[[package]] +name = "lxml" +version = "4.9.3" +description = "Powerful and Pythonic XML processing library combining libxml2/libxslt with the ElementTree API." +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, != 3.4.*" +files = [ + {file = "lxml-4.9.3-cp27-cp27m-macosx_11_0_x86_64.whl", hash = "sha256:b0a545b46b526d418eb91754565ba5b63b1c0b12f9bd2f808c852d9b4b2f9b5c"}, + {file = "lxml-4.9.3-cp27-cp27m-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:075b731ddd9e7f68ad24c635374211376aa05a281673ede86cbe1d1b3455279d"}, + {file = "lxml-4.9.3-cp27-cp27m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:1e224d5755dba2f4a9498e150c43792392ac9b5380aa1b845f98a1618c94eeef"}, + {file = "lxml-4.9.3-cp27-cp27m-win32.whl", hash = "sha256:2c74524e179f2ad6d2a4f7caf70e2d96639c0954c943ad601a9e146c76408ed7"}, + {file = "lxml-4.9.3-cp27-cp27m-win_amd64.whl", hash = "sha256:4f1026bc732b6a7f96369f7bfe1a4f2290fb34dce00d8644bc3036fb351a4ca1"}, + {file = "lxml-4.9.3-cp27-cp27mu-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:c0781a98ff5e6586926293e59480b64ddd46282953203c76ae15dbbbf302e8bb"}, + {file = "lxml-4.9.3-cp27-cp27mu-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:cef2502e7e8a96fe5ad686d60b49e1ab03e438bd9123987994528febd569868e"}, + {file = "lxml-4.9.3-cp310-cp310-macosx_11_0_x86_64.whl", hash = "sha256:b86164d2cff4d3aaa1f04a14685cbc072efd0b4f99ca5708b2ad1b9b5988a991"}, + {file = "lxml-4.9.3-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_24_i686.whl", hash = "sha256:42871176e7896d5d45138f6d28751053c711ed4d48d8e30b498da155af39aebd"}, + {file = "lxml-4.9.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:ae8b9c6deb1e634ba4f1930eb67ef6e6bf6a44b6eb5ad605642b2d6d5ed9ce3c"}, + {file = "lxml-4.9.3-cp310-cp310-manylinux_2_28_aarch64.whl", hash = "sha256:411007c0d88188d9f621b11d252cce90c4a2d1a49db6c068e3c16422f306eab8"}, + {file = "lxml-4.9.3-cp310-cp310-manylinux_2_28_x86_64.whl", hash = "sha256:cd47b4a0d41d2afa3e58e5bf1f62069255aa2fd6ff5ee41604418ca925911d76"}, + {file = "lxml-4.9.3-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:0e2cb47860da1f7e9a5256254b74ae331687b9672dfa780eed355c4c9c3dbd23"}, + {file = "lxml-4.9.3-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:1247694b26342a7bf47c02e513d32225ededd18045264d40758abeb3c838a51f"}, + {file = "lxml-4.9.3-cp310-cp310-win32.whl", hash = "sha256:cdb650fc86227eba20de1a29d4b2c1bfe139dc75a0669270033cb2ea3d391b85"}, + {file = "lxml-4.9.3-cp310-cp310-win_amd64.whl", hash = "sha256:97047f0d25cd4bcae81f9ec9dc290ca3e15927c192df17331b53bebe0e3ff96d"}, + {file = "lxml-4.9.3-cp311-cp311-macosx_11_0_universal2.whl", hash = "sha256:1f447ea5429b54f9582d4b955f5f1985f278ce5cf169f72eea8afd9502973dd5"}, + {file = "lxml-4.9.3-cp311-cp311-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_24_i686.whl", hash = "sha256:57d6ba0ca2b0c462f339640d22882acc711de224d769edf29962b09f77129cbf"}, + {file = "lxml-4.9.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:9767e79108424fb6c3edf8f81e6730666a50feb01a328f4a016464a5893f835a"}, + {file = "lxml-4.9.3-cp311-cp311-manylinux_2_28_aarch64.whl", hash = "sha256:71c52db65e4b56b8ddc5bb89fb2e66c558ed9d1a74a45ceb7dcb20c191c3df2f"}, + {file = "lxml-4.9.3-cp311-cp311-manylinux_2_28_x86_64.whl", hash = "sha256:d73d8ecf8ecf10a3bd007f2192725a34bd62898e8da27eb9d32a58084f93962b"}, + {file = "lxml-4.9.3-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:0a3d3487f07c1d7f150894c238299934a2a074ef590b583103a45002035be120"}, + {file = "lxml-4.9.3-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:9e28c51fa0ce5674be9f560c6761c1b441631901993f76700b1b30ca6c8378d6"}, + {file = "lxml-4.9.3-cp311-cp311-win32.whl", hash = "sha256:0bfd0767c5c1de2551a120673b72e5d4b628737cb05414f03c3277bf9bed3305"}, + {file = "lxml-4.9.3-cp311-cp311-win_amd64.whl", hash = "sha256:25f32acefac14ef7bd53e4218fe93b804ef6f6b92ffdb4322bb6d49d94cad2bc"}, + {file = "lxml-4.9.3-cp312-cp312-macosx_11_0_universal2.whl", hash = "sha256:d3ff32724f98fbbbfa9f49d82852b159e9784d6094983d9a8b7f2ddaebb063d4"}, + {file = "lxml-4.9.3-cp312-cp312-manylinux_2_28_aarch64.whl", hash = "sha256:48d6ed886b343d11493129e019da91d4039826794a3e3027321c56d9e71505be"}, + {file = "lxml-4.9.3-cp312-cp312-manylinux_2_28_x86_64.whl", hash = "sha256:9a92d3faef50658dd2c5470af249985782bf754c4e18e15afb67d3ab06233f13"}, + {file = "lxml-4.9.3-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:b4e4bc18382088514ebde9328da057775055940a1f2e18f6ad2d78aa0f3ec5b9"}, + {file = "lxml-4.9.3-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:fc9b106a1bf918db68619fdcd6d5ad4f972fdd19c01d19bdb6bf63f3589a9ec5"}, + {file = "lxml-4.9.3-cp312-cp312-win_amd64.whl", hash = "sha256:d37017287a7adb6ab77e1c5bee9bcf9660f90ff445042b790402a654d2ad81d8"}, + {file = "lxml-4.9.3-cp35-cp35m-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:56dc1f1ebccc656d1b3ed288f11e27172a01503fc016bcabdcbc0978b19352b7"}, + {file = "lxml-4.9.3-cp35-cp35m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:578695735c5a3f51569810dfebd05dd6f888147a34f0f98d4bb27e92b76e05c2"}, + {file = "lxml-4.9.3-cp35-cp35m-win32.whl", hash = "sha256:704f61ba8c1283c71b16135caf697557f5ecf3e74d9e453233e4771d68a1f42d"}, + {file = "lxml-4.9.3-cp35-cp35m-win_amd64.whl", hash = "sha256:c41bfca0bd3532d53d16fd34d20806d5c2b1ace22a2f2e4c0008570bf2c58833"}, + {file = "lxml-4.9.3-cp36-cp36m-macosx_11_0_x86_64.whl", hash = "sha256:64f479d719dc9f4c813ad9bb6b28f8390360660b73b2e4beb4cb0ae7104f1c12"}, + {file = "lxml-4.9.3-cp36-cp36m-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_24_i686.whl", hash = "sha256:dd708cf4ee4408cf46a48b108fb9427bfa00b9b85812a9262b5c668af2533ea5"}, + {file = "lxml-4.9.3-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5c31c7462abdf8f2ac0577d9f05279727e698f97ecbb02f17939ea99ae8daa98"}, + {file = "lxml-4.9.3-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:e3cd95e10c2610c360154afdc2f1480aea394f4a4f1ea0a5eacce49640c9b190"}, + {file = "lxml-4.9.3-cp36-cp36m-manylinux_2_28_x86_64.whl", hash = "sha256:4930be26af26ac545c3dffb662521d4e6268352866956672231887d18f0eaab2"}, + {file = "lxml-4.9.3-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:4aec80cde9197340bc353d2768e2a75f5f60bacda2bab72ab1dc499589b3878c"}, + {file = "lxml-4.9.3-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:14e019fd83b831b2e61baed40cab76222139926b1fb5ed0e79225bc0cae14584"}, + {file = "lxml-4.9.3-cp36-cp36m-musllinux_1_1_aarch64.whl", hash = "sha256:0c0850c8b02c298d3c7006b23e98249515ac57430e16a166873fc47a5d549287"}, + {file = "lxml-4.9.3-cp36-cp36m-musllinux_1_1_x86_64.whl", hash = "sha256:aca086dc5f9ef98c512bac8efea4483eb84abbf926eaeedf7b91479feb092458"}, + {file = "lxml-4.9.3-cp36-cp36m-win32.whl", hash = "sha256:50baa9c1c47efcaef189f31e3d00d697c6d4afda5c3cde0302d063492ff9b477"}, + {file = "lxml-4.9.3-cp36-cp36m-win_amd64.whl", hash = "sha256:bef4e656f7d98aaa3486d2627e7d2df1157d7e88e7efd43a65aa5dd4714916cf"}, + {file = "lxml-4.9.3-cp37-cp37m-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_24_i686.whl", hash = "sha256:46f409a2d60f634fe550f7133ed30ad5321ae2e6630f13657fb9479506b00601"}, + {file = "lxml-4.9.3-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_24_aarch64.whl", hash = "sha256:4c28a9144688aef80d6ea666c809b4b0e50010a2aca784c97f5e6bf143d9f129"}, + {file = "lxml-4.9.3-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:141f1d1a9b663c679dc524af3ea1773e618907e96075262726c7612c02b149a4"}, + {file = "lxml-4.9.3-cp37-cp37m-manylinux_2_28_x86_64.whl", hash = "sha256:53ace1c1fd5a74ef662f844a0413446c0629d151055340e9893da958a374f70d"}, + {file = "lxml-4.9.3-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:17a753023436a18e27dd7769e798ce302963c236bc4114ceee5b25c18c52c693"}, + {file = "lxml-4.9.3-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:7d298a1bd60c067ea75d9f684f5f3992c9d6766fadbc0bcedd39750bf344c2f4"}, + {file = "lxml-4.9.3-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:081d32421db5df44c41b7f08a334a090a545c54ba977e47fd7cc2deece78809a"}, + {file = "lxml-4.9.3-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:23eed6d7b1a3336ad92d8e39d4bfe09073c31bfe502f20ca5116b2a334f8ec02"}, + {file = "lxml-4.9.3-cp37-cp37m-win32.whl", hash = "sha256:1509dd12b773c02acd154582088820893109f6ca27ef7291b003d0e81666109f"}, + {file = "lxml-4.9.3-cp37-cp37m-win_amd64.whl", hash = "sha256:120fa9349a24c7043854c53cae8cec227e1f79195a7493e09e0c12e29f918e52"}, + {file = "lxml-4.9.3-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_24_i686.whl", hash = "sha256:4d2d1edbca80b510443f51afd8496be95529db04a509bc8faee49c7b0fb6d2cc"}, + {file = "lxml-4.9.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_24_aarch64.whl", hash = "sha256:8d7e43bd40f65f7d97ad8ef5c9b1778943d02f04febef12def25f7583d19baac"}, + {file = "lxml-4.9.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:71d66ee82e7417828af6ecd7db817913cb0cf9d4e61aa0ac1fde0583d84358db"}, + {file = "lxml-4.9.3-cp38-cp38-manylinux_2_28_x86_64.whl", hash = "sha256:6fc3c450eaa0b56f815c7b62f2b7fba7266c4779adcf1cece9e6deb1de7305ce"}, + {file = "lxml-4.9.3-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:65299ea57d82fb91c7f019300d24050c4ddeb7c5a190e076b5f48a2b43d19c42"}, + {file = "lxml-4.9.3-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:eadfbbbfb41b44034a4c757fd5d70baccd43296fb894dba0295606a7cf3124aa"}, + {file = "lxml-4.9.3-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:3e9bdd30efde2b9ccfa9cb5768ba04fe71b018a25ea093379c857c9dad262c40"}, + {file = "lxml-4.9.3-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:fcdd00edfd0a3001e0181eab3e63bd5c74ad3e67152c84f93f13769a40e073a7"}, + {file = "lxml-4.9.3-cp38-cp38-win32.whl", hash = "sha256:57aba1bbdf450b726d58b2aea5fe47c7875f5afb2c4a23784ed78f19a0462574"}, + {file = "lxml-4.9.3-cp38-cp38-win_amd64.whl", hash = "sha256:92af161ecbdb2883c4593d5ed4815ea71b31fafd7fd05789b23100d081ecac96"}, + {file = "lxml-4.9.3-cp39-cp39-macosx_11_0_x86_64.whl", hash = "sha256:9bb6ad405121241e99a86efff22d3ef469024ce22875a7ae045896ad23ba2340"}, + {file = "lxml-4.9.3-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_24_i686.whl", hash = "sha256:8ed74706b26ad100433da4b9d807eae371efaa266ffc3e9191ea436087a9d6a7"}, + {file = "lxml-4.9.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:fbf521479bcac1e25a663df882c46a641a9bff6b56dc8b0fafaebd2f66fb231b"}, + {file = "lxml-4.9.3-cp39-cp39-manylinux_2_28_aarch64.whl", hash = "sha256:303bf1edce6ced16bf67a18a1cf8339d0db79577eec5d9a6d4a80f0fb10aa2da"}, + {file = "lxml-4.9.3-cp39-cp39-manylinux_2_28_x86_64.whl", hash = "sha256:5515edd2a6d1a5a70bfcdee23b42ec33425e405c5b351478ab7dc9347228f96e"}, + {file = "lxml-4.9.3-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:690dafd0b187ed38583a648076865d8c229661ed20e48f2335d68e2cf7dc829d"}, + {file = "lxml-4.9.3-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:b6420a005548ad52154c8ceab4a1290ff78d757f9e5cbc68f8c77089acd3c432"}, + {file = "lxml-4.9.3-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:bb3bb49c7a6ad9d981d734ef7c7193bc349ac338776a0360cc671eaee89bcf69"}, + {file = "lxml-4.9.3-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:d27be7405547d1f958b60837dc4c1007da90b8b23f54ba1f8b728c78fdb19d50"}, + {file = "lxml-4.9.3-cp39-cp39-win32.whl", hash = "sha256:8df133a2ea5e74eef5e8fc6f19b9e085f758768a16e9877a60aec455ed2609b2"}, + {file = "lxml-4.9.3-cp39-cp39-win_amd64.whl", hash = "sha256:4dd9a263e845a72eacb60d12401e37c616438ea2e5442885f65082c276dfb2b2"}, + {file = "lxml-4.9.3-pp310-pypy310_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:6689a3d7fd13dc687e9102a27e98ef33730ac4fe37795d5036d18b4d527abd35"}, + {file = "lxml-4.9.3-pp37-pypy37_pp73-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_24_i686.whl", hash = "sha256:f6bdac493b949141b733c5345b6ba8f87a226029cbabc7e9e121a413e49441e0"}, + {file = "lxml-4.9.3-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:05186a0f1346ae12553d66df1cfce6f251589fea3ad3da4f3ef4e34b2d58c6a3"}, + {file = "lxml-4.9.3-pp37-pypy37_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:c2006f5c8d28dee289f7020f721354362fa304acbaaf9745751ac4006650254b"}, + {file = "lxml-4.9.3-pp38-pypy38_pp73-macosx_11_0_x86_64.whl", hash = "sha256:5c245b783db29c4e4fbbbfc9c5a78be496c9fea25517f90606aa1f6b2b3d5f7b"}, + {file = "lxml-4.9.3-pp38-pypy38_pp73-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_24_i686.whl", hash = "sha256:4fb960a632a49f2f089d522f70496640fdf1218f1243889da3822e0a9f5f3ba7"}, + {file = "lxml-4.9.3-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:50670615eaf97227d5dc60de2dc99fb134a7130d310d783314e7724bf163f75d"}, + {file = "lxml-4.9.3-pp38-pypy38_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:9719fe17307a9e814580af1f5c6e05ca593b12fb7e44fe62450a5384dbf61b4b"}, + {file = "lxml-4.9.3-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:3331bece23c9ee066e0fb3f96c61322b9e0f54d775fccefff4c38ca488de283a"}, + {file = "lxml-4.9.3-pp39-pypy39_pp73-macosx_11_0_x86_64.whl", hash = "sha256:ed667f49b11360951e201453fc3967344d0d0263aa415e1619e85ae7fd17b4e0"}, + {file = "lxml-4.9.3-pp39-pypy39_pp73-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_24_i686.whl", hash = "sha256:8b77946fd508cbf0fccd8e400a7f71d4ac0e1595812e66025bac475a8e811694"}, + {file = "lxml-4.9.3-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:e4da8ca0c0c0aea88fd46be8e44bd49716772358d648cce45fe387f7b92374a7"}, + {file = "lxml-4.9.3-pp39-pypy39_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:fe4bda6bd4340caa6e5cf95e73f8fea5c4bfc55763dd42f1b50a94c1b4a2fbd4"}, + {file = "lxml-4.9.3-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:f3df3db1d336b9356dd3112eae5f5c2b8b377f3bc826848567f10bfddfee77e9"}, + {file = "lxml-4.9.3.tar.gz", hash = "sha256:48628bd53a426c9eb9bc066a923acaa0878d1e86129fd5359aee99285f4eed9c"}, +] + +[package.extras] +cssselect = ["cssselect (>=0.7)"] +html5 = ["html5lib"] +htmlsoup = ["BeautifulSoup4"] +source = ["Cython (>=0.29.35)"] + +[[package]] +name = "mako" +version = "1.2.4" +description = "A super-fast templating language that borrows the best ideas from the existing templating languages." +optional = false +python-versions = ">=3.7" +files = [ + {file = "Mako-1.2.4-py3-none-any.whl", hash = "sha256:c97c79c018b9165ac9922ae4f32da095ffd3c4e6872b45eded42926deea46818"}, + {file = "Mako-1.2.4.tar.gz", hash = "sha256:d60a3903dc3bb01a18ad6a89cdbe2e4eadc69c0bc8ef1e3773ba53d44c3f7a34"}, +] + +[package.dependencies] +MarkupSafe = ">=0.9.2" + +[package.extras] +babel = ["Babel"] +lingua = ["lingua"] +testing = ["pytest"] + +[[package]] +name = "markdown" +version = "3.4.4" +description = "Python implementation of John Gruber's Markdown." +optional = false +python-versions = ">=3.7" +files = [ + {file = "Markdown-3.4.4-py3-none-any.whl", hash = "sha256:a4c1b65c0957b4bd9e7d86ddc7b3c9868fb9670660f6f99f6d1bca8954d5a941"}, + {file = "Markdown-3.4.4.tar.gz", hash = "sha256:225c6123522495d4119a90b3a3ba31a1e87a70369e03f14799ea9c0d7183a3d6"}, +] + +[package.dependencies] +importlib-metadata = {version = ">=4.4", markers = "python_version < \"3.10\""} + +[package.extras] +docs = ["mdx-gh-links (>=0.2)", "mkdocs (>=1.0)", "mkdocs-nature (>=0.4)"] +testing = ["coverage", "pyyaml"] + +[[package]] +name = "markupsafe" +version = "2.1.3" +description = "Safely add untrusted strings to HTML/XML markup." +optional = false +python-versions = ">=3.7" +files = [ + {file = "MarkupSafe-2.1.3-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:cd0f502fe016460680cd20aaa5a76d241d6f35a1c3350c474bac1273803893fa"}, + {file = "MarkupSafe-2.1.3-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:e09031c87a1e51556fdcb46e5bd4f59dfb743061cf93c4d6831bf894f125eb57"}, + {file = "MarkupSafe-2.1.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:68e78619a61ecf91e76aa3e6e8e33fc4894a2bebe93410754bd28fce0a8a4f9f"}, + {file = "MarkupSafe-2.1.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:65c1a9bcdadc6c28eecee2c119465aebff8f7a584dd719facdd9e825ec61ab52"}, + {file = "MarkupSafe-2.1.3-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:525808b8019e36eb524b8c68acdd63a37e75714eac50e988180b169d64480a00"}, + {file = "MarkupSafe-2.1.3-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:962f82a3086483f5e5f64dbad880d31038b698494799b097bc59c2edf392fce6"}, + {file = "MarkupSafe-2.1.3-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:aa7bd130efab1c280bed0f45501b7c8795f9fdbeb02e965371bbef3523627779"}, + {file = "MarkupSafe-2.1.3-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:c9c804664ebe8f83a211cace637506669e7890fec1b4195b505c214e50dd4eb7"}, + {file = "MarkupSafe-2.1.3-cp310-cp310-win32.whl", hash = "sha256:10bbfe99883db80bdbaff2dcf681dfc6533a614f700da1287707e8a5d78a8431"}, + {file = "MarkupSafe-2.1.3-cp310-cp310-win_amd64.whl", hash = "sha256:1577735524cdad32f9f694208aa75e422adba74f1baee7551620e43a3141f559"}, + {file = "MarkupSafe-2.1.3-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:ad9e82fb8f09ade1c3e1b996a6337afac2b8b9e365f926f5a61aacc71adc5b3c"}, + {file = "MarkupSafe-2.1.3-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:3c0fae6c3be832a0a0473ac912810b2877c8cb9d76ca48de1ed31e1c68386575"}, + {file = "MarkupSafe-2.1.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b076b6226fb84157e3f7c971a47ff3a679d837cf338547532ab866c57930dbee"}, + {file = "MarkupSafe-2.1.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bfce63a9e7834b12b87c64d6b155fdd9b3b96191b6bd334bf37db7ff1fe457f2"}, + {file = "MarkupSafe-2.1.3-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:338ae27d6b8745585f87218a3f23f1512dbf52c26c28e322dbe54bcede54ccb9"}, + {file = "MarkupSafe-2.1.3-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:e4dd52d80b8c83fdce44e12478ad2e85c64ea965e75d66dbeafb0a3e77308fcc"}, + {file = "MarkupSafe-2.1.3-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:df0be2b576a7abbf737b1575f048c23fb1d769f267ec4358296f31c2479db8f9"}, + {file = "MarkupSafe-2.1.3-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:5bbe06f8eeafd38e5d0a4894ffec89378b6c6a625ff57e3028921f8ff59318ac"}, + {file = "MarkupSafe-2.1.3-cp311-cp311-win32.whl", hash = "sha256:dd15ff04ffd7e05ffcb7fe79f1b98041b8ea30ae9234aed2a9168b5797c3effb"}, + {file = "MarkupSafe-2.1.3-cp311-cp311-win_amd64.whl", hash = "sha256:134da1eca9ec0ae528110ccc9e48041e0828d79f24121a1a146161103c76e686"}, + {file = "MarkupSafe-2.1.3-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:f698de3fd0c4e6972b92290a45bd9b1536bffe8c6759c62471efaa8acb4c37bc"}, + {file = "MarkupSafe-2.1.3-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:aa57bd9cf8ae831a362185ee444e15a93ecb2e344c8e52e4d721ea3ab6ef1823"}, + {file = "MarkupSafe-2.1.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ffcc3f7c66b5f5b7931a5aa68fc9cecc51e685ef90282f4a82f0f5e9b704ad11"}, + {file = "MarkupSafe-2.1.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:47d4f1c5f80fc62fdd7777d0d40a2e9dda0a05883ab11374334f6c4de38adffd"}, + {file = "MarkupSafe-2.1.3-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1f67c7038d560d92149c060157d623c542173016c4babc0c1913cca0564b9939"}, + {file = "MarkupSafe-2.1.3-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:9aad3c1755095ce347e26488214ef77e0485a3c34a50c5a5e2471dff60b9dd9c"}, + {file = "MarkupSafe-2.1.3-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:14ff806850827afd6b07a5f32bd917fb7f45b046ba40c57abdb636674a8b559c"}, + {file = "MarkupSafe-2.1.3-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:8f9293864fe09b8149f0cc42ce56e3f0e54de883a9de90cd427f191c346eb2e1"}, + {file = "MarkupSafe-2.1.3-cp312-cp312-win32.whl", hash = "sha256:715d3562f79d540f251b99ebd6d8baa547118974341db04f5ad06d5ea3eb8007"}, + {file = "MarkupSafe-2.1.3-cp312-cp312-win_amd64.whl", hash = "sha256:1b8dd8c3fd14349433c79fa8abeb573a55fc0fdd769133baac1f5e07abf54aeb"}, + {file = "MarkupSafe-2.1.3-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:8e254ae696c88d98da6555f5ace2279cf7cd5b3f52be2b5cf97feafe883b58d2"}, + {file = "MarkupSafe-2.1.3-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:cb0932dc158471523c9637e807d9bfb93e06a95cbf010f1a38b98623b929ef2b"}, + {file = "MarkupSafe-2.1.3-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9402b03f1a1b4dc4c19845e5c749e3ab82d5078d16a2a4c2cd2df62d57bb0707"}, + {file = "MarkupSafe-2.1.3-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ca379055a47383d02a5400cb0d110cef0a776fc644cda797db0c5696cfd7e18e"}, + {file = "MarkupSafe-2.1.3-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:b7ff0f54cb4ff66dd38bebd335a38e2c22c41a8ee45aa608efc890ac3e3931bc"}, + {file = "MarkupSafe-2.1.3-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:c011a4149cfbcf9f03994ec2edffcb8b1dc2d2aede7ca243746df97a5d41ce48"}, + {file = "MarkupSafe-2.1.3-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:56d9f2ecac662ca1611d183feb03a3fa4406469dafe241673d521dd5ae92a155"}, + {file = "MarkupSafe-2.1.3-cp37-cp37m-win32.whl", hash = "sha256:8758846a7e80910096950b67071243da3e5a20ed2546e6392603c096778d48e0"}, + {file = "MarkupSafe-2.1.3-cp37-cp37m-win_amd64.whl", hash = "sha256:787003c0ddb00500e49a10f2844fac87aa6ce977b90b0feaaf9de23c22508b24"}, + {file = "MarkupSafe-2.1.3-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:2ef12179d3a291be237280175b542c07a36e7f60718296278d8593d21ca937d4"}, + {file = "MarkupSafe-2.1.3-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:2c1b19b3aaacc6e57b7e25710ff571c24d6c3613a45e905b1fde04d691b98ee0"}, + {file = "MarkupSafe-2.1.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8afafd99945ead6e075b973fefa56379c5b5c53fd8937dad92c662da5d8fd5ee"}, + {file = "MarkupSafe-2.1.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8c41976a29d078bb235fea9b2ecd3da465df42a562910f9022f1a03107bd02be"}, + {file = "MarkupSafe-2.1.3-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d080e0a5eb2529460b30190fcfcc4199bd7f827663f858a226a81bc27beaa97e"}, + {file = "MarkupSafe-2.1.3-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:69c0f17e9f5a7afdf2cc9fb2d1ce6aabdb3bafb7f38017c0b77862bcec2bbad8"}, + {file = "MarkupSafe-2.1.3-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:504b320cd4b7eff6f968eddf81127112db685e81f7e36e75f9f84f0df46041c3"}, + {file = "MarkupSafe-2.1.3-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:42de32b22b6b804f42c5d98be4f7e5e977ecdd9ee9b660fda1a3edf03b11792d"}, + {file = "MarkupSafe-2.1.3-cp38-cp38-win32.whl", hash = "sha256:ceb01949af7121f9fc39f7d27f91be8546f3fb112c608bc4029aef0bab86a2a5"}, + {file = "MarkupSafe-2.1.3-cp38-cp38-win_amd64.whl", hash = "sha256:1b40069d487e7edb2676d3fbdb2b0829ffa2cd63a2ec26c4938b2d34391b4ecc"}, + {file = "MarkupSafe-2.1.3-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:8023faf4e01efadfa183e863fefde0046de576c6f14659e8782065bcece22198"}, + {file = "MarkupSafe-2.1.3-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:6b2b56950d93e41f33b4223ead100ea0fe11f8e6ee5f641eb753ce4b77a7042b"}, + {file = "MarkupSafe-2.1.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9dcdfd0eaf283af041973bff14a2e143b8bd64e069f4c383416ecd79a81aab58"}, + {file = "MarkupSafe-2.1.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:05fb21170423db021895e1ea1e1f3ab3adb85d1c2333cbc2310f2a26bc77272e"}, + {file = "MarkupSafe-2.1.3-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:282c2cb35b5b673bbcadb33a585408104df04f14b2d9b01d4c345a3b92861c2c"}, + {file = "MarkupSafe-2.1.3-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:ab4a0df41e7c16a1392727727e7998a467472d0ad65f3ad5e6e765015df08636"}, + {file = "MarkupSafe-2.1.3-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:7ef3cb2ebbf91e330e3bb937efada0edd9003683db6b57bb108c4001f37a02ea"}, + {file = "MarkupSafe-2.1.3-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:0a4e4a1aff6c7ac4cd55792abf96c915634c2b97e3cc1c7129578aa68ebd754e"}, + {file = "MarkupSafe-2.1.3-cp39-cp39-win32.whl", hash = "sha256:fec21693218efe39aa7f8599346e90c705afa52c5b31ae019b2e57e8f6542bb2"}, + {file = "MarkupSafe-2.1.3-cp39-cp39-win_amd64.whl", hash = "sha256:3fd4abcb888d15a94f32b75d8fd18ee162ca0c064f35b11134be77050296d6ba"}, + {file = "MarkupSafe-2.1.3.tar.gz", hash = "sha256:af598ed32d6ae86f1b747b82783958b1a4ab8f617b06fe68795c7f026abbdcad"}, +] + +[[package]] +name = "mass-spec-utils" +version = "0.0.12" +description = "Some useful MS code" +optional = false +python-versions = ">=3.6" +files = [ + {file = "mass_spec_utils-0.0.12-py3-none-any.whl", hash = "sha256:673f0363c5337bb789e69768fe0c5040aacb834ddfb22016eaa9d42c512576dc"}, + {file = "mass_spec_utils-0.0.12.tar.gz", hash = "sha256:ab561dd4d104c6103535428baa1e6e32c0e18448c9474d720ebab5a16119ec6d"}, +] + +[package.dependencies] +loguru = "*" +molmass = "*" +numpy = "*" +pymzml = "*" +requests = "*" +sortedcontainers = "*" + +[[package]] +name = "matplotlib" +version = "3.8.0" +description = "Python plotting package" +optional = false +python-versions = ">=3.9" +files = [ + {file = "matplotlib-3.8.0-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:c4940bad88a932ddc69734274f6fb047207e008389489f2b6f77d9ca485f0e7a"}, + {file = "matplotlib-3.8.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:a33bd3045c7452ca1fa65676d88ba940867880e13e2546abb143035fa9072a9d"}, + {file = "matplotlib-3.8.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2ea6886e93401c22e534bbfd39201ce8931b75502895cfb115cbdbbe2d31f287"}, + {file = "matplotlib-3.8.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d670b9348e712ec176de225d425f150dc8e37b13010d85233c539b547da0be39"}, + {file = "matplotlib-3.8.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:7b37b74f00c4cb6af908cb9a00779d97d294e89fd2145ad43f0cdc23f635760c"}, + {file = "matplotlib-3.8.0-cp310-cp310-win_amd64.whl", hash = "sha256:0e723f5b96f3cd4aad99103dc93e9e3cdc4f18afdcc76951f4857b46f8e39d2d"}, + {file = "matplotlib-3.8.0-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:5dc945a9cb2deb7d197ba23eb4c210e591d52d77bf0ba27c35fc82dec9fa78d4"}, + {file = "matplotlib-3.8.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:f8b5a1bf27d078453aa7b5b27f52580e16360d02df6d3dc9504f3d2ce11f6309"}, + {file = "matplotlib-3.8.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6f25ffb6ad972cdffa7df8e5be4b1e3cadd2f8d43fc72085feb1518006178394"}, + {file = "matplotlib-3.8.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:eee482731c8c17d86d9ddb5194d38621f9b0f0d53c99006275a12523ab021732"}, + {file = "matplotlib-3.8.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:36eafe2128772195b373e1242df28d1b7ec6c04c15b090b8d9e335d55a323900"}, + {file = "matplotlib-3.8.0-cp311-cp311-win_amd64.whl", hash = "sha256:061ee58facb3580cd2d046a6d227fb77e9295599c5ec6ad069f06b5821ad1cfc"}, + {file = "matplotlib-3.8.0-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:3cc3776836d0f4f22654a7f2d2ec2004618d5cf86b7185318381f73b80fd8a2d"}, + {file = "matplotlib-3.8.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:6c49a2bd6981264bddcb8c317b6bd25febcece9e2ebfcbc34e7f4c0c867c09dc"}, + {file = "matplotlib-3.8.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:23ed11654fc83cd6cfdf6170b453e437674a050a452133a064d47f2f1371f8d3"}, + {file = "matplotlib-3.8.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dae97fdd6996b3a25da8ee43e3fc734fff502f396801063c6b76c20b56683196"}, + {file = "matplotlib-3.8.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:87df75f528020a6299f76a1d986c0ed4406e3b2bd44bc5e306e46bca7d45e53e"}, + {file = "matplotlib-3.8.0-cp312-cp312-win_amd64.whl", hash = "sha256:90d74a95fe055f73a6cd737beecc1b81c26f2893b7a3751d52b53ff06ca53f36"}, + {file = "matplotlib-3.8.0-cp39-cp39-macosx_10_12_x86_64.whl", hash = "sha256:c3499c312f5def8f362a2bf761d04fa2d452b333f3a9a3f58805273719bf20d9"}, + {file = "matplotlib-3.8.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:31e793c8bd4ea268cc5d3a695c27b30650ec35238626961d73085d5e94b6ab68"}, + {file = "matplotlib-3.8.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0d5ee602ef517a89d1f2c508ca189cfc395dd0b4a08284fb1b97a78eec354644"}, + {file = "matplotlib-3.8.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5de39dc61ca35342cf409e031f70f18219f2c48380d3886c1cf5ad9f17898e06"}, + {file = "matplotlib-3.8.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:dd386c80a98b5f51571b9484bf6c6976de383cd2a8cd972b6a9562d85c6d2087"}, + {file = "matplotlib-3.8.0-cp39-cp39-win_amd64.whl", hash = "sha256:f691b4ef47c7384d0936b2e8ebdeb5d526c81d004ad9403dfb9d4c76b9979a93"}, + {file = "matplotlib-3.8.0-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:0b11f354aae62a2aa53ec5bb09946f5f06fc41793e351a04ff60223ea9162955"}, + {file = "matplotlib-3.8.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7f54b9fb87ca5acbcdd0f286021bedc162e1425fa5555ebf3b3dfc167b955ad9"}, + {file = "matplotlib-3.8.0-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:60a6e04dfd77c0d3bcfee61c3cd335fff1b917c2f303b32524cd1235e194ef99"}, + {file = "matplotlib-3.8.0.tar.gz", hash = "sha256:df8505e1c19d5c2c26aff3497a7cbd3ccfc2e97043d1e4db3e76afa399164b69"}, +] + +[package.dependencies] +contourpy = ">=1.0.1" +cycler = ">=0.10" +fonttools = ">=4.22.0" +importlib-resources = {version = ">=3.2.0", markers = "python_version < \"3.10\""} +kiwisolver = ">=1.0.1" +numpy = ">=1.21,<2" +packaging = ">=20.0" +pillow = ">=6.2.0" +pyparsing = ">=2.3.1" +python-dateutil = ">=2.7" +setuptools_scm = ">=7" + +[[package]] +name = "matplotlib-inline" +version = "0.1.6" +description = "Inline Matplotlib backend for Jupyter" +optional = false +python-versions = ">=3.5" +files = [ + {file = "matplotlib-inline-0.1.6.tar.gz", hash = "sha256:f887e5f10ba98e8d2b150ddcf4702c1e5f8b3a20005eb0f74bfdbd360ee6f304"}, + {file = "matplotlib_inline-0.1.6-py3-none-any.whl", hash = "sha256:f1f41aab5328aa5aaea9b16d083b128102f8712542f819fe7e6a420ff581b311"}, +] + +[package.dependencies] +traitlets = "*" + +[[package]] +name = "mccabe" +version = "0.7.0" +description = "McCabe checker, plugin for flake8" +optional = false +python-versions = ">=3.6" +files = [ + {file = "mccabe-0.7.0-py2.py3-none-any.whl", hash = "sha256:6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e"}, + {file = "mccabe-0.7.0.tar.gz", hash = "sha256:348e0240c33b60bbdf4e523192ef919f28cb2c3d7d5c7794f74009290f236325"}, +] + +[[package]] +name = "mergedeep" +version = "1.3.4" +description = "A deep merge function for 🐍." +optional = false +python-versions = ">=3.6" +files = [ + {file = "mergedeep-1.3.4-py3-none-any.whl", hash = "sha256:70775750742b25c0d8f36c55aed03d24c3384d17c951b3175d898bd778ef0307"}, + {file = "mergedeep-1.3.4.tar.gz", hash = "sha256:0096d52e9dad9939c3d975a774666af186eda617e6ca84df4c94dec30004f2a8"}, +] + +[[package]] +name = "mistune" +version = "3.0.1" +description = "A sane and fast Markdown parser with useful plugins and renderers" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mistune-3.0.1-py3-none-any.whl", hash = "sha256:b9b3e438efbb57c62b5beb5e134dab664800bdf1284a7ee09e8b12b13eb1aac6"}, + {file = "mistune-3.0.1.tar.gz", hash = "sha256:e912116c13aa0944f9dc530db38eb88f6a77087ab128f49f84a48f4c05ea163c"}, +] + +[[package]] +name = "mkdocs" +version = "1.5.3" +description = "Project documentation with Markdown." +optional = false +python-versions = ">=3.7" +files = [ + {file = "mkdocs-1.5.3-py3-none-any.whl", hash = "sha256:3b3a78e736b31158d64dbb2f8ba29bd46a379d0c6e324c2246c3bc3d2189cfc1"}, + {file = "mkdocs-1.5.3.tar.gz", hash = "sha256:eb7c99214dcb945313ba30426c2451b735992c73c2e10838f76d09e39ff4d0e2"}, +] + +[package.dependencies] +click = ">=7.0" +colorama = {version = ">=0.4", markers = "platform_system == \"Windows\""} +ghp-import = ">=1.0" +importlib-metadata = {version = ">=4.3", markers = "python_version < \"3.10\""} +jinja2 = ">=2.11.1" +markdown = ">=3.2.1" +markupsafe = ">=2.0.1" +mergedeep = ">=1.3.4" +packaging = ">=20.5" +pathspec = ">=0.11.1" +platformdirs = ">=2.2.0" +pyyaml = ">=5.1" +pyyaml-env-tag = ">=0.1" +watchdog = ">=2.0" + +[package.extras] +i18n = ["babel (>=2.9.0)"] +min-versions = ["babel (==2.9.0)", "click (==7.0)", "colorama (==0.4)", "ghp-import (==1.0)", "importlib-metadata (==4.3)", "jinja2 (==2.11.1)", "markdown (==3.2.1)", "markupsafe (==2.0.1)", "mergedeep (==1.3.4)", "packaging (==20.5)", "pathspec (==0.11.1)", "platformdirs (==2.2.0)", "pyyaml (==5.1)", "pyyaml-env-tag (==0.1)", "typing-extensions (==3.10)", "watchdog (==2.0)"] + +[[package]] +name = "mkdocs-autorefs" +version = "0.5.0" +description = "Automatically link across pages in MkDocs." +optional = false +python-versions = ">=3.8" +files = [ + {file = "mkdocs_autorefs-0.5.0-py3-none-any.whl", hash = "sha256:7930fcb8ac1249f10e683967aeaddc0af49d90702af111a5e390e8b20b3d97ff"}, + {file = "mkdocs_autorefs-0.5.0.tar.gz", hash = "sha256:9a5054a94c08d28855cfab967ada10ed5be76e2bfad642302a610b252c3274c0"}, +] + +[package.dependencies] +Markdown = ">=3.3" +mkdocs = ">=1.1" + +[[package]] +name = "mkdocstrings" +version = "0.23.0" +description = "Automatic documentation from sources, for MkDocs." +optional = false +python-versions = ">=3.8" +files = [ + {file = "mkdocstrings-0.23.0-py3-none-any.whl", hash = "sha256:051fa4014dfcd9ed90254ae91de2dbb4f24e166347dae7be9a997fe16316c65e"}, + {file = "mkdocstrings-0.23.0.tar.gz", hash = "sha256:d9c6a37ffbe7c14a7a54ef1258c70b8d394e6a33a1c80832bce40b9567138d1c"}, +] + +[package.dependencies] +importlib-metadata = {version = ">=4.6", markers = "python_version < \"3.10\""} +Jinja2 = ">=2.11.1" +Markdown = ">=3.3" +MarkupSafe = ">=1.1" +mkdocs = ">=1.2" +mkdocs-autorefs = ">=0.3.1" +pymdown-extensions = ">=6.3" +typing-extensions = {version = ">=4.1", markers = "python_version < \"3.10\""} + +[package.extras] +crystal = ["mkdocstrings-crystal (>=0.3.4)"] +python = ["mkdocstrings-python (>=0.5.2)"] +python-legacy = ["mkdocstrings-python-legacy (>=0.2.1)"] + +[[package]] +name = "molmass" +version = "2023.8.30" +description = "Molecular mass calculations" +optional = false +python-versions = ">=3.9" +files = [ + {file = "molmass-2023.8.30-py3-none-any.whl", hash = "sha256:67d4f6c34944dc6ad541f6decd292fda63254550eac52aa3e5bbd2b9a93c1d65"}, + {file = "molmass-2023.8.30.tar.gz", hash = "sha256:8c693341613dab3612edfc3267a22d30b7d8e45a4e4ce25eb71c5788e332f7fb"}, +] + +[package.extras] +all = ["Flask", "pandas"] +gui = ["wxPython (>=4.0)"] + +[[package]] +name = "ms-deisotope" +version = "0.0.52" +description = "Access, Deisotope, and Charge Deconvolute Mass Spectra" +optional = false +python-versions = ">3.8" +files = [ + {file = "ms_deisotope-0.0.52-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:2a986328939eff1975c1f6b0f8e0e7a0c23383fe052cef0f0e62daa18b4d66cc"}, + {file = "ms_deisotope-0.0.52-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c238c3bd673bfcff613cb7488a91efc03db7e73a4a65c65021c5f56a6016c09e"}, + {file = "ms_deisotope-0.0.52-cp310-cp310-win_amd64.whl", hash = "sha256:0f91868b930d7b1cf035261edc347064aee0c1378d8ddfa8944d397c749c4919"}, + {file = "ms_deisotope-0.0.52-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:097ddcb1488e69cecd77c42e0073bd3011fbeb1a844150ef820c539286aecf33"}, + {file = "ms_deisotope-0.0.52-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:52e5ae87ae470fcb598effe8ecc61d6fc147fbbfabed1141da54c7492c4d460e"}, + {file = "ms_deisotope-0.0.52-cp38-cp38-win_amd64.whl", hash = "sha256:c0dbeb0e9ad9abc9f1fcb6eed30905d1803f86c917acaacdcecd43515e5015c0"}, + {file = "ms_deisotope-0.0.52-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:8cf0b8fa2ef37bc348353a8b656fb4f350aa16a19cd4d123eb010799a5449988"}, + {file = "ms_deisotope-0.0.52-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a66d58e9c29500f2b2c96cf05a40c368d3915ac7125d91e03ed7a8ed9d7a86d9"}, + {file = "ms_deisotope-0.0.52-cp39-cp39-win_amd64.whl", hash = "sha256:3c15a47e9a1519093ae63feeac7f39e4eb70dcb0d35c303410e706211dbc59fb"}, + {file = "ms_deisotope-0.0.52.tar.gz", hash = "sha256:4710818cc484f6d1707798ba7c6a9a304f23c28a2d0d9fa84f8d7512cc125334"}, +] + +[package.dependencies] +brain-isotopic-distribution = ">=1.5.8" +dill = "*" +lxml = "*" +ms-peak-picker = ">=0.1.41" +numpy = "*" +psims = ">=0.1.44" +pyteomics = "4.6.0" +python-idzip = ">=0.3.2" +pyzstd = "*" +scipy = "*" +six = "*" + +[package.extras] +all = ["click", "comtypes", "h5py", "hdf5plugin", "matplotlib", "pythonnet"] +cli = ["click"] +com = ["comtypes"] +mzmlb = ["h5py", "hdf5plugin"] +net = ["pythonnet"] +plot = ["matplotlib"] + +[[package]] +name = "ms-peak-picker" +version = "0.1.42" +description = "A library to pick peaks from mass spectral data" +optional = false +python-versions = "*" +files = [ + {file = "ms_peak_picker-0.1.42-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:8c40157845f13fb9c764f853daaa3e52689da31ff506e9d18fd48fa5a42b699e"}, + {file = "ms_peak_picker-0.1.42-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b885263424fe1447a2cbb1d807a4dbc5a1f4b0e11ccc671e91ed05519948b2a6"}, + {file = "ms_peak_picker-0.1.42-cp310-cp310-win_amd64.whl", hash = "sha256:27a8ab562aeafe797cba23f38babeccb0a63ac5a31a4d5a233cbebfcce826346"}, + {file = "ms_peak_picker-0.1.42-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:a799adfaf408e16e6a4f99e036e11c62d4c9f9169f62230e513495294d8f1443"}, + {file = "ms_peak_picker-0.1.42-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f11eff44b7bdc97ce91da2a9dbd3922746aa7d276790f09227dd5b7c2d8aa8b7"}, + {file = "ms_peak_picker-0.1.42-cp38-cp38-win_amd64.whl", hash = "sha256:d68c17e14fa85f24375a0dbbae4cf9853d6aee0fc61e407ecfacc24c9091c3b0"}, + {file = "ms_peak_picker-0.1.42-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:2d5dfe47df4b033f3f11491454da9426fa1b921b0429b2997c481fee8558b124"}, + {file = "ms_peak_picker-0.1.42-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f9960d3adec34792a10572f3ca04f7f51b728150cc53993ff4abae14f8147a3f"}, + {file = "ms_peak_picker-0.1.42-cp39-cp39-win_amd64.whl", hash = "sha256:42f7fe2f3117d93611bd907e88407acd1c68f62b12710766931695050ec77ee0"}, + {file = "ms_peak_picker-0.1.42.tar.gz", hash = "sha256:aaa5c1fe241de9bd8f8aafcd9bd50fa5193fbbf2db076bf0c309d7b2a4b1835f"}, +] + +[package.dependencies] +numpy = "*" +scipy = "*" +six = "*" + +[[package]] +name = "nbclassic" +version = "1.0.0" +description = "Jupyter Notebook as a Jupyter Server extension." +optional = false +python-versions = ">=3.7" +files = [ + {file = "nbclassic-1.0.0-py3-none-any.whl", hash = "sha256:f99e4769b4750076cd4235c044b61232110733322384a94a63791d2e7beacc66"}, + {file = "nbclassic-1.0.0.tar.gz", hash = "sha256:0ae11eb2319455d805596bf320336cda9554b41d99ab9a3c31bf8180bffa30e3"}, +] + +[package.dependencies] +argon2-cffi = "*" +ipykernel = "*" +ipython-genutils = "*" +jinja2 = "*" +jupyter-client = ">=6.1.1" +jupyter-core = ">=4.6.1" +jupyter-server = ">=1.8" +nbconvert = ">=5" +nbformat = "*" +nest-asyncio = ">=1.5" +notebook-shim = ">=0.2.3" +prometheus-client = "*" +pyzmq = ">=17" +Send2Trash = ">=1.8.0" +terminado = ">=0.8.3" +tornado = ">=6.1" +traitlets = ">=4.2.1" + +[package.extras] +docs = ["myst-parser", "nbsphinx", "sphinx", "sphinx-rtd-theme", "sphinxcontrib-github-alt"] +json-logging = ["json-logging"] +test = ["coverage", "nbval", "pytest", "pytest-cov", "pytest-jupyter", "pytest-playwright", "pytest-tornasync", "requests", "requests-unixsocket", "testpath"] + +[[package]] +name = "nbclient" +version = "0.8.0" +description = "A client library for executing notebooks. Formerly nbconvert's ExecutePreprocessor." +optional = false +python-versions = ">=3.8.0" +files = [ + {file = "nbclient-0.8.0-py3-none-any.whl", hash = "sha256:25e861299e5303a0477568557c4045eccc7a34c17fc08e7959558707b9ebe548"}, + {file = "nbclient-0.8.0.tar.gz", hash = "sha256:f9b179cd4b2d7bca965f900a2ebf0db4a12ebff2f36a711cb66861e4ae158e55"}, +] + +[package.dependencies] +jupyter-client = ">=6.1.12" +jupyter-core = ">=4.12,<5.0.dev0 || >=5.1.dev0" +nbformat = ">=5.1" +traitlets = ">=5.4" + +[package.extras] +dev = ["pre-commit"] +docs = ["autodoc-traits", "mock", "moto", "myst-parser", "nbclient[test]", "sphinx (>=1.7)", "sphinx-book-theme", "sphinxcontrib-spelling"] +test = ["flaky", "ipykernel (>=6.19.3)", "ipython", "ipywidgets", "nbconvert (>=7.0.0)", "pytest (>=7.0)", "pytest-asyncio", "pytest-cov (>=4.0)", "testpath", "xmltodict"] + +[[package]] +name = "nbconvert" +version = "7.8.0" +description = "Converting Jupyter Notebooks" +optional = false +python-versions = ">=3.8" +files = [ + {file = "nbconvert-7.8.0-py3-none-any.whl", hash = "sha256:aec605e051fa682ccc7934ccc338ba1e8b626cfadbab0db592106b630f63f0f2"}, + {file = "nbconvert-7.8.0.tar.gz", hash = "sha256:f5bc15a1247e14dd41ceef0c0a3bc70020e016576eb0578da62f1c5b4f950479"}, +] + +[package.dependencies] +beautifulsoup4 = "*" +bleach = "!=5.0.0" +defusedxml = "*" +importlib-metadata = {version = ">=3.6", markers = "python_version < \"3.10\""} +jinja2 = ">=3.0" +jupyter-core = ">=4.7" +jupyterlab-pygments = "*" +markupsafe = ">=2.0" +mistune = ">=2.0.3,<4" +nbclient = ">=0.5.0" +nbformat = ">=5.7" +packaging = "*" +pandocfilters = ">=1.4.1" +pygments = ">=2.4.1" +tinycss2 = "*" +traitlets = ">=5.1" + +[package.extras] +all = ["nbconvert[docs,qtpdf,serve,test,webpdf]"] +docs = ["ipykernel", "ipython", "myst-parser", "nbsphinx (>=0.2.12)", "pydata-sphinx-theme", "sphinx (==5.0.2)", "sphinxcontrib-spelling"] +qtpdf = ["nbconvert[qtpng]"] +qtpng = ["pyqtwebengine (>=5.15)"] +serve = ["tornado (>=6.1)"] +test = ["flaky", "ipykernel", "ipywidgets (>=7)", "pre-commit", "pytest", "pytest-dependency"] +webpdf = ["playwright"] + +[[package]] +name = "nbformat" +version = "5.9.2" +description = "The Jupyter Notebook format" +optional = false +python-versions = ">=3.8" +files = [ + {file = "nbformat-5.9.2-py3-none-any.whl", hash = "sha256:1c5172d786a41b82bcfd0c23f9e6b6f072e8fb49c39250219e4acfff1efe89e9"}, + {file = "nbformat-5.9.2.tar.gz", hash = "sha256:5f98b5ba1997dff175e77e0c17d5c10a96eaed2cbd1de3533d1fc35d5e111192"}, +] + +[package.dependencies] +fastjsonschema = "*" +jsonschema = ">=2.6" +jupyter-core = "*" +traitlets = ">=5.1" + +[package.extras] +docs = ["myst-parser", "pydata-sphinx-theme", "sphinx", "sphinxcontrib-github-alt", "sphinxcontrib-spelling"] +test = ["pep440", "pre-commit", "pytest", "testpath"] + +[[package]] +name = "nest-asyncio" +version = "1.5.8" +description = "Patch asyncio to allow nested event loops" +optional = false +python-versions = ">=3.5" +files = [ + {file = "nest_asyncio-1.5.8-py3-none-any.whl", hash = "sha256:accda7a339a70599cb08f9dd09a67e0c2ef8d8d6f4c07f96ab203f2ae254e48d"}, + {file = "nest_asyncio-1.5.8.tar.gz", hash = "sha256:25aa2ca0d2a5b5531956b9e273b45cf664cae2b145101d73b86b199978d48fdb"}, +] + +[[package]] +name = "networkx" +version = "3.1" +description = "Python package for creating and manipulating graphs and networks" +optional = false +python-versions = ">=3.8" +files = [ + {file = "networkx-3.1-py3-none-any.whl", hash = "sha256:4f33f68cb2afcf86f28a45f43efc27a9386b535d567d2127f8f61d51dec58d36"}, + {file = "networkx-3.1.tar.gz", hash = "sha256:de346335408f84de0eada6ff9fafafff9bcda11f0a0dfaa931133debb146ab61"}, +] + +[package.extras] +default = ["matplotlib (>=3.4)", "numpy (>=1.20)", "pandas (>=1.3)", "scipy (>=1.8)"] +developer = ["mypy (>=1.1)", "pre-commit (>=3.2)"] +doc = ["nb2plots (>=0.6)", "numpydoc (>=1.5)", "pillow (>=9.4)", "pydata-sphinx-theme (>=0.13)", "sphinx (>=6.1)", "sphinx-gallery (>=0.12)", "texext (>=0.6.7)"] +extra = ["lxml (>=4.6)", "pydot (>=1.4.2)", "pygraphviz (>=1.10)", "sympy (>=1.10)"] +test = ["codecov (>=2.1)", "pytest (>=7.2)", "pytest-cov (>=4.0)"] + +[[package]] +name = "notebook" +version = "6.5.4" +description = "A web-based notebook environment for interactive computing" +optional = false +python-versions = ">=3.7" +files = [ + {file = "notebook-6.5.4-py3-none-any.whl", hash = "sha256:dd17e78aefe64c768737b32bf171c1c766666a21cc79a44d37a1700771cab56f"}, + {file = "notebook-6.5.4.tar.gz", hash = "sha256:517209568bd47261e2def27a140e97d49070602eea0d226a696f42a7f16c9a4e"}, +] + +[package.dependencies] +argon2-cffi = "*" +ipykernel = "*" +ipython-genutils = "*" +jinja2 = "*" +jupyter-client = ">=5.3.4" +jupyter-core = ">=4.6.1" +nbclassic = ">=0.4.7" +nbconvert = ">=5" +nbformat = "*" +nest-asyncio = ">=1.5" +prometheus-client = "*" +pyzmq = ">=17" +Send2Trash = ">=1.8.0" +terminado = ">=0.8.3" +tornado = ">=6.1" +traitlets = ">=4.2.1" + +[package.extras] +docs = ["myst-parser", "nbsphinx", "sphinx", "sphinx-rtd-theme", "sphinxcontrib-github-alt"] +json-logging = ["json-logging"] +test = ["coverage", "nbval", "pytest", "pytest-cov", "requests", "requests-unixsocket", "selenium (==4.1.5)", "testpath"] + +[[package]] +name = "notebook-shim" +version = "0.2.3" +description = "A shim layer for notebook traits and config" +optional = false +python-versions = ">=3.7" +files = [ + {file = "notebook_shim-0.2.3-py3-none-any.whl", hash = "sha256:a83496a43341c1674b093bfcebf0fe8e74cbe7eda5fd2bbc56f8e39e1486c0c7"}, + {file = "notebook_shim-0.2.3.tar.gz", hash = "sha256:f69388ac283ae008cd506dda10d0288b09a017d822d5e8c7129a152cbd3ce7e9"}, +] + +[package.dependencies] +jupyter-server = ">=1.8,<3" + +[package.extras] +test = ["pytest", "pytest-console-scripts", "pytest-jupyter", "pytest-tornasync"] + +[[package]] +name = "numba" +version = "0.57.1" +description = "compiling Python code using LLVM" +optional = false +python-versions = ">=3.8" +files = [ + {file = "numba-0.57.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:db8268eb5093cae2288942a8cbd69c9352f6fe6e0bfa0a9a27679436f92e4248"}, + {file = "numba-0.57.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:643cb09a9ba9e1bd8b060e910aeca455e9442361e80fce97690795ff9840e681"}, + {file = "numba-0.57.1-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:53e9fab973d9e82c9f8449f75994a898daaaf821d84f06fbb0b9de2293dd9306"}, + {file = "numba-0.57.1-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:c0602e4f896e6a6d844517c3ab434bc978e7698a22a733cc8124465898c28fa8"}, + {file = "numba-0.57.1-cp310-cp310-win32.whl", hash = "sha256:3d6483c27520d16cf5d122868b79cad79e48056ecb721b52d70c126bed65431e"}, + {file = "numba-0.57.1-cp310-cp310-win_amd64.whl", hash = "sha256:a32ee263649aa3c3587b833d6311305379529570e6c20deb0c6f4fb5bc7020db"}, + {file = "numba-0.57.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:4c078f84b5529a7fdb8413bb33d5100f11ec7b44aa705857d9eb4e54a54ff505"}, + {file = "numba-0.57.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:e447c4634d1cc99ab50d4faa68f680f1d88b06a2a05acf134aa6fcc0342adeca"}, + {file = "numba-0.57.1-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:4838edef2df5f056cb8974670f3d66562e751040c448eb0b67c7e2fec1726649"}, + {file = "numba-0.57.1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:9b17fbe4a69dcd9a7cd49916b6463cd9a82af5f84911feeb40793b8bce00dfa7"}, + {file = "numba-0.57.1-cp311-cp311-win_amd64.whl", hash = "sha256:93df62304ada9b351818ba19b1cfbddaf72cd89348e81474326ca0b23bf0bae1"}, + {file = "numba-0.57.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:8e00ca63c5d0ad2beeb78d77f087b3a88c45ea9b97e7622ab2ec411a868420ee"}, + {file = "numba-0.57.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:ff66d5b022af6c7d81ddbefa87768e78ed4f834ab2da6ca2fd0d60a9e69b94f5"}, + {file = "numba-0.57.1-cp38-cp38-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:60ec56386076e9eed106a87c96626d5686fbb16293b9834f0849cf78c9491779"}, + {file = "numba-0.57.1-cp38-cp38-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:6c057ccedca95df23802b6ccad86bb318be624af45b5a38bb8412882be57a681"}, + {file = "numba-0.57.1-cp38-cp38-win32.whl", hash = "sha256:5a82bf37444039c732485c072fda21a361790ed990f88db57fd6941cd5e5d307"}, + {file = "numba-0.57.1-cp38-cp38-win_amd64.whl", hash = "sha256:9bcc36478773ce838f38afd9a4dfafc328d4ffb1915381353d657da7f6473282"}, + {file = "numba-0.57.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:ae50c8c90c2ce8057f9618b589223e13faa8cbc037d8f15b4aad95a2c33a0582"}, + {file = "numba-0.57.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:9a1b2b69448e510d672ff9a6b18d2db9355241d93c6a77677baa14bec67dc2a0"}, + {file = "numba-0.57.1-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:3cf78d74ad9d289fbc1e5b1c9f2680fca7a788311eb620581893ab347ec37a7e"}, + {file = "numba-0.57.1-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:f47dd214adc5dcd040fe9ad2adbd2192133c9075d2189ce1b3d5f9d72863ef05"}, + {file = "numba-0.57.1-cp39-cp39-win32.whl", hash = "sha256:a3eac19529956185677acb7f01864919761bfffbb9ae04bbbe5e84bbc06cfc2b"}, + {file = "numba-0.57.1-cp39-cp39-win_amd64.whl", hash = "sha256:9587ba1bf5f3035575e45562ada17737535c6d612df751e811d702693a72d95e"}, + {file = "numba-0.57.1.tar.gz", hash = "sha256:33c0500170d213e66d90558ad6aca57d3e03e97bb11da82e6d87ab793648cb17"}, +] + +[package.dependencies] +llvmlite = "==0.40.*" +numpy = ">=1.21,<1.25" + +[[package]] +name = "numba-stats" +version = "1.3.0" +description = "Numba-accelerated implementations of common probability distributions" +optional = false +python-versions = ">=3.7" +files = [ + {file = "numba-stats-1.3.0.tar.gz", hash = "sha256:cc1608e3eb14d2d3389bb377d1d33f5d3d278af2fd1ea85f5f037ddaf0750a77"}, + {file = "numba_stats-1.3.0-py3-none-any.whl", hash = "sha256:260e73b70f9345bd34b058a5d967abf68ef105a792ffe5912830742d52187c83"}, +] + +[package.dependencies] +numba = ">=0.49" +numpy = ">=1.18" +scipy = ">=1.5" + +[package.extras] +test = ["pydocstyle", "pytest", "pytest-benchmark", "pytest-cov"] + +[[package]] +name = "numpy" +version = "1.24.4" +description = "Fundamental package for array computing in Python" +optional = false +python-versions = ">=3.8" +files = [ + {file = "numpy-1.24.4-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:c0bfb52d2169d58c1cdb8cc1f16989101639b34c7d3ce60ed70b19c63eba0b64"}, + {file = "numpy-1.24.4-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:ed094d4f0c177b1b8e7aa9cba7d6ceed51c0e569a5318ac0ca9a090680a6a1b1"}, + {file = "numpy-1.24.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:79fc682a374c4a8ed08b331bef9c5f582585d1048fa6d80bc6c35bc384eee9b4"}, + {file = "numpy-1.24.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7ffe43c74893dbf38c2b0a1f5428760a1a9c98285553c89e12d70a96a7f3a4d6"}, + {file = "numpy-1.24.4-cp310-cp310-win32.whl", hash = "sha256:4c21decb6ea94057331e111a5bed9a79d335658c27ce2adb580fb4d54f2ad9bc"}, + {file = "numpy-1.24.4-cp310-cp310-win_amd64.whl", hash = "sha256:b4bea75e47d9586d31e892a7401f76e909712a0fd510f58f5337bea9572c571e"}, + {file = "numpy-1.24.4-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:f136bab9c2cfd8da131132c2cf6cc27331dd6fae65f95f69dcd4ae3c3639c810"}, + {file = "numpy-1.24.4-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:e2926dac25b313635e4d6cf4dc4e51c8c0ebfed60b801c799ffc4c32bf3d1254"}, + {file = "numpy-1.24.4-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:222e40d0e2548690405b0b3c7b21d1169117391c2e82c378467ef9ab4c8f0da7"}, + {file = "numpy-1.24.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7215847ce88a85ce39baf9e89070cb860c98fdddacbaa6c0da3ffb31b3350bd5"}, + {file = "numpy-1.24.4-cp311-cp311-win32.whl", hash = "sha256:4979217d7de511a8d57f4b4b5b2b965f707768440c17cb70fbf254c4b225238d"}, + {file = "numpy-1.24.4-cp311-cp311-win_amd64.whl", hash = "sha256:b7b1fc9864d7d39e28f41d089bfd6353cb5f27ecd9905348c24187a768c79694"}, + {file = "numpy-1.24.4-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:1452241c290f3e2a312c137a9999cdbf63f78864d63c79039bda65ee86943f61"}, + {file = "numpy-1.24.4-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:04640dab83f7c6c85abf9cd729c5b65f1ebd0ccf9de90b270cd61935eef0197f"}, + {file = "numpy-1.24.4-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a5425b114831d1e77e4b5d812b69d11d962e104095a5b9c3b641a218abcc050e"}, + {file = "numpy-1.24.4-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dd80e219fd4c71fc3699fc1dadac5dcf4fd882bfc6f7ec53d30fa197b8ee22dc"}, + {file = "numpy-1.24.4-cp38-cp38-win32.whl", hash = "sha256:4602244f345453db537be5314d3983dbf5834a9701b7723ec28923e2889e0bb2"}, + {file = "numpy-1.24.4-cp38-cp38-win_amd64.whl", hash = "sha256:692f2e0f55794943c5bfff12b3f56f99af76f902fc47487bdfe97856de51a706"}, + {file = "numpy-1.24.4-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:2541312fbf09977f3b3ad449c4e5f4bb55d0dbf79226d7724211acc905049400"}, + {file = "numpy-1.24.4-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:9667575fb6d13c95f1b36aca12c5ee3356bf001b714fc354eb5465ce1609e62f"}, + {file = "numpy-1.24.4-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f3a86ed21e4f87050382c7bc96571755193c4c1392490744ac73d660e8f564a9"}, + {file = "numpy-1.24.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d11efb4dbecbdf22508d55e48d9c8384db795e1b7b51ea735289ff96613ff74d"}, + {file = "numpy-1.24.4-cp39-cp39-win32.whl", hash = "sha256:6620c0acd41dbcb368610bb2f4d83145674040025e5536954782467100aa8835"}, + {file = "numpy-1.24.4-cp39-cp39-win_amd64.whl", hash = "sha256:befe2bf740fd8373cf56149a5c23a0f601e82869598d41f8e188a0e9869926f8"}, + {file = "numpy-1.24.4-pp38-pypy38_pp73-macosx_10_9_x86_64.whl", hash = "sha256:31f13e25b4e304632a4619d0e0777662c2ffea99fcae2029556b17d8ff958aef"}, + {file = "numpy-1.24.4-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:95f7ac6540e95bc440ad77f56e520da5bf877f87dca58bd095288dce8940532a"}, + {file = "numpy-1.24.4-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:e98f220aa76ca2a977fe435f5b04d7b3470c0a2e6312907b37ba6068f26787f2"}, + {file = "numpy-1.24.4.tar.gz", hash = "sha256:80f5e3a4e498641401868df4208b74581206afbee7cf7b8329daae82676d9463"}, +] + +[[package]] +name = "optuna" +version = "3.3.0" +description = "A hyperparameter optimization framework" +optional = false +python-versions = ">=3.7" +files = [ + {file = "optuna-3.3.0-py3-none-any.whl", hash = "sha256:3eefaed56a5fabf442036d51ef2001dbabfbe1a8ce33bc0c6b61ff5d15b30c82"}, + {file = "optuna-3.3.0.tar.gz", hash = "sha256:76126c6e52354892488e75fc7743eaddcd397c5aba8fa1f964a1c5b5f942eaf6"}, +] + +[package.dependencies] +alembic = ">=1.5.0" +cmaes = ">=0.10.0" +colorlog = "*" +numpy = "*" +packaging = ">=20.0" +PyYAML = "*" +sqlalchemy = ">=1.3.0" +tqdm = "*" + +[package.extras] +benchmark = ["asv (>=0.5.0)", "botorch", "cma", "scikit-optimize", "virtualenv"] +checking = ["black", "blackdoc", "flake8", "isort", "mypy", "mypy-boto3-s3", "types-PyYAML", "types-redis", "types-setuptools", "types-tqdm", "typing-extensions (>=3.10.0.0)"] +document = ["botorch", "cma", "distributed", "fvcore", "lightgbm", "matplotlib (!=3.6.0)", "mlflow", "pandas", "pillow", "plotly (>=4.9.0)", "scikit-learn", "scikit-optimize", "sphinx", "sphinx-copybutton", "sphinx-gallery", "sphinx-plotly-directive", "sphinx-rtd-theme (>=1.2.0)", "torch", "torchaudio", "torchvision"] +integration = ["botorch (>=0.4.0)", "catboost (>=0.26)", "catboost (>=0.26,<1.2)", "cma", "distributed", "fastai", "lightgbm", "mlflow", "pandas", "pytorch-ignite", "pytorch-lightning (>=1.6.0)", "scikit-learn (>=0.24.2)", "scikit-optimize", "shap", "tensorflow", "torch", "torchaudio", "torchvision", "wandb", "xgboost"] +optional = ["boto3", "botorch", "matplotlib (!=3.6.0)", "pandas", "plotly (>=4.9.0)", "redis", "scikit-learn (>=0.24.2)"] +test = ["coverage", "fakeredis[lua]", "kaleido", "moto", "pytest", "scipy (>=1.9.2)"] + +[[package]] +name = "overrides" +version = "7.4.0" +description = "A decorator to automatically detect mismatch when overriding a method." +optional = false +python-versions = ">=3.6" +files = [ + {file = "overrides-7.4.0-py3-none-any.whl", hash = "sha256:3ad24583f86d6d7a49049695efe9933e67ba62f0c7625d53c59fa832ce4b8b7d"}, + {file = "overrides-7.4.0.tar.gz", hash = "sha256:9502a3cca51f4fac40b5feca985b6703a5c1f6ad815588a7ca9e285b9dca6757"}, +] + +[[package]] +name = "packaging" +version = "23.1" +description = "Core utilities for Python packages" +optional = false +python-versions = ">=3.7" +files = [ + {file = "packaging-23.1-py3-none-any.whl", hash = "sha256:994793af429502c4ea2ebf6bf664629d07c1a9fe974af92966e4b8d2df7edc61"}, + {file = "packaging-23.1.tar.gz", hash = "sha256:a392980d2b6cffa644431898be54b0045151319d1e7ec34f0cfed48767dd334f"}, +] + +[[package]] +name = "pandas" +version = "2.1.1" +description = "Powerful data structures for data analysis, time series, and statistics" +optional = false +python-versions = ">=3.9" +files = [ + {file = "pandas-2.1.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:58d997dbee0d4b64f3cb881a24f918b5f25dd64ddf31f467bb9b67ae4c63a1e4"}, + {file = "pandas-2.1.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:02304e11582c5d090e5a52aec726f31fe3f42895d6bfc1f28738f9b64b6f0614"}, + {file = "pandas-2.1.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ffa8f0966de2c22de408d0e322db2faed6f6e74265aa0856f3824813cf124363"}, + {file = "pandas-2.1.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c1f84c144dee086fe4f04a472b5cd51e680f061adf75c1ae4fc3a9275560f8f4"}, + {file = "pandas-2.1.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:75ce97667d06d69396d72be074f0556698c7f662029322027c226fd7a26965cb"}, + {file = "pandas-2.1.1-cp310-cp310-win_amd64.whl", hash = "sha256:4c3f32fd7c4dccd035f71734df39231ac1a6ff95e8bdab8d891167197b7018d2"}, + {file = "pandas-2.1.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:9e2959720b70e106bb1d8b6eadd8ecd7c8e99ccdbe03ee03260877184bb2877d"}, + {file = "pandas-2.1.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:25e8474a8eb258e391e30c288eecec565bfed3e026f312b0cbd709a63906b6f8"}, + {file = "pandas-2.1.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b8bd1685556f3374520466998929bade3076aeae77c3e67ada5ed2b90b4de7f0"}, + {file = "pandas-2.1.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dc3657869c7902810f32bd072f0740487f9e030c1a3ab03e0af093db35a9d14e"}, + {file = "pandas-2.1.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:05674536bd477af36aa2effd4ec8f71b92234ce0cc174de34fd21e2ee99adbc2"}, + {file = "pandas-2.1.1-cp311-cp311-win_amd64.whl", hash = "sha256:b407381258a667df49d58a1b637be33e514b07f9285feb27769cedb3ab3d0b3a"}, + {file = "pandas-2.1.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:c747793c4e9dcece7bb20156179529898abf505fe32cb40c4052107a3c620b49"}, + {file = "pandas-2.1.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:3bcad1e6fb34b727b016775bea407311f7721db87e5b409e6542f4546a4951ea"}, + {file = "pandas-2.1.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f5ec7740f9ccb90aec64edd71434711f58ee0ea7f5ed4ac48be11cfa9abf7317"}, + {file = "pandas-2.1.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:29deb61de5a8a93bdd033df328441a79fcf8dd3c12d5ed0b41a395eef9cd76f0"}, + {file = "pandas-2.1.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:4f99bebf19b7e03cf80a4e770a3e65eee9dd4e2679039f542d7c1ace7b7b1daa"}, + {file = "pandas-2.1.1-cp312-cp312-win_amd64.whl", hash = "sha256:84e7e910096416adec68075dc87b986ff202920fb8704e6d9c8c9897fe7332d6"}, + {file = "pandas-2.1.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:366da7b0e540d1b908886d4feb3d951f2f1e572e655c1160f5fde28ad4abb750"}, + {file = "pandas-2.1.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:9e50e72b667415a816ac27dfcfe686dc5a0b02202e06196b943d54c4f9c7693e"}, + {file = "pandas-2.1.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:cc1ab6a25da197f03ebe6d8fa17273126120874386b4ac11c1d687df288542dd"}, + {file = "pandas-2.1.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a0dbfea0dd3901ad4ce2306575c54348d98499c95be01b8d885a2737fe4d7a98"}, + {file = "pandas-2.1.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:0489b0e6aa3d907e909aef92975edae89b1ee1654db5eafb9be633b0124abe97"}, + {file = "pandas-2.1.1-cp39-cp39-win_amd64.whl", hash = "sha256:4cdb0fab0400c2cb46dafcf1a0fe084c8bb2480a1fa8d81e19d15e12e6d4ded2"}, + {file = "pandas-2.1.1.tar.gz", hash = "sha256:fecb198dc389429be557cde50a2d46da8434a17fe37d7d41ff102e3987fd947b"}, +] + +[package.dependencies] +numpy = {version = ">=1.22.4", markers = "python_version < \"3.11\""} +python-dateutil = ">=2.8.2" +pytz = ">=2020.1" +tzdata = ">=2022.1" + +[package.extras] +all = ["PyQt5 (>=5.15.6)", "SQLAlchemy (>=1.4.36)", "beautifulsoup4 (>=4.11.1)", "bottleneck (>=1.3.4)", "dataframe-api-compat (>=0.1.7)", "fastparquet (>=0.8.1)", "fsspec (>=2022.05.0)", "gcsfs (>=2022.05.0)", "html5lib (>=1.1)", "hypothesis (>=6.46.1)", "jinja2 (>=3.1.2)", "lxml (>=4.8.0)", "matplotlib (>=3.6.1)", "numba (>=0.55.2)", "numexpr (>=2.8.0)", "odfpy (>=1.4.1)", "openpyxl (>=3.0.10)", "pandas-gbq (>=0.17.5)", "psycopg2 (>=2.9.3)", "pyarrow (>=7.0.0)", "pymysql (>=1.0.2)", "pyreadstat (>=1.1.5)", "pytest (>=7.3.2)", "pytest-asyncio (>=0.17.0)", "pytest-xdist (>=2.2.0)", "pyxlsb (>=1.0.9)", "qtpy (>=2.2.0)", "s3fs (>=2022.05.0)", "scipy (>=1.8.1)", "tables (>=3.7.0)", "tabulate (>=0.8.10)", "xarray (>=2022.03.0)", "xlrd (>=2.0.1)", "xlsxwriter (>=3.0.3)", "zstandard (>=0.17.0)"] +aws = ["s3fs (>=2022.05.0)"] +clipboard = ["PyQt5 (>=5.15.6)", "qtpy (>=2.2.0)"] +compression = ["zstandard (>=0.17.0)"] +computation = ["scipy (>=1.8.1)", "xarray (>=2022.03.0)"] +consortium-standard = ["dataframe-api-compat (>=0.1.7)"] +excel = ["odfpy (>=1.4.1)", "openpyxl (>=3.0.10)", "pyxlsb (>=1.0.9)", "xlrd (>=2.0.1)", "xlsxwriter (>=3.0.3)"] +feather = ["pyarrow (>=7.0.0)"] +fss = ["fsspec (>=2022.05.0)"] +gcp = ["gcsfs (>=2022.05.0)", "pandas-gbq (>=0.17.5)"] +hdf5 = ["tables (>=3.7.0)"] +html = ["beautifulsoup4 (>=4.11.1)", "html5lib (>=1.1)", "lxml (>=4.8.0)"] +mysql = ["SQLAlchemy (>=1.4.36)", "pymysql (>=1.0.2)"] +output-formatting = ["jinja2 (>=3.1.2)", "tabulate (>=0.8.10)"] +parquet = ["pyarrow (>=7.0.0)"] +performance = ["bottleneck (>=1.3.4)", "numba (>=0.55.2)", "numexpr (>=2.8.0)"] +plot = ["matplotlib (>=3.6.1)"] +postgresql = ["SQLAlchemy (>=1.4.36)", "psycopg2 (>=2.9.3)"] +spss = ["pyreadstat (>=1.1.5)"] +sql-other = ["SQLAlchemy (>=1.4.36)"] +test = ["hypothesis (>=6.46.1)", "pytest (>=7.3.2)", "pytest-asyncio (>=0.17.0)", "pytest-xdist (>=2.2.0)"] +xml = ["lxml (>=4.8.0)"] + +[[package]] +name = "pandocfilters" +version = "1.5.0" +description = "Utilities for writing pandoc filters in python" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" +files = [ + {file = "pandocfilters-1.5.0-py2.py3-none-any.whl", hash = "sha256:33aae3f25fd1a026079f5d27bdd52496f0e0803b3469282162bafdcbdf6ef14f"}, + {file = "pandocfilters-1.5.0.tar.gz", hash = "sha256:0b679503337d233b4339a817bfc8c50064e2eff681314376a47cb582305a7a38"}, +] + +[[package]] +name = "parso" +version = "0.8.3" +description = "A Python Parser" +optional = false +python-versions = ">=3.6" +files = [ + {file = "parso-0.8.3-py2.py3-none-any.whl", hash = "sha256:c001d4636cd3aecdaf33cbb40aebb59b094be2a74c556778ef5576c175e19e75"}, + {file = "parso-0.8.3.tar.gz", hash = "sha256:8c07be290bb59f03588915921e29e8a50002acaf2cdc5fa0e0114f91709fafa0"}, +] + +[package.extras] +qa = ["flake8 (==3.8.3)", "mypy (==0.782)"] +testing = ["docopt", "pytest (<6.0.0)"] + +[[package]] +name = "pathspec" +version = "0.11.2" +description = "Utility library for gitignore style pattern matching of file paths." +optional = false +python-versions = ">=3.7" +files = [ + {file = "pathspec-0.11.2-py3-none-any.whl", hash = "sha256:1d6ed233af05e679efb96b1851550ea95bbb64b7c490b0f5aa52996c11e92a20"}, + {file = "pathspec-0.11.2.tar.gz", hash = "sha256:e0d8d0ac2f12da61956eb2306b69f9469b42f4deb0f3cb6ed47b9cce9996ced3"}, +] + +[[package]] +name = "patsy" +version = "0.5.3" +description = "A Python package for describing statistical models and for building design matrices." +optional = false +python-versions = "*" +files = [ + {file = "patsy-0.5.3-py2.py3-none-any.whl", hash = "sha256:7eb5349754ed6aa982af81f636479b1b8db9d5b1a6e957a6016ec0534b5c86b7"}, + {file = "patsy-0.5.3.tar.gz", hash = "sha256:bdc18001875e319bc91c812c1eb6a10be4bb13cb81eb763f466179dca3b67277"}, +] + +[package.dependencies] +numpy = ">=1.4" +six = "*" + +[package.extras] +test = ["pytest", "pytest-cov", "scipy"] + +[[package]] +name = "pbr" +version = "5.11.1" +description = "Python Build Reasonableness" +optional = false +python-versions = ">=2.6" +files = [ + {file = "pbr-5.11.1-py2.py3-none-any.whl", hash = "sha256:567f09558bae2b3ab53cb3c1e2e33e726ff3338e7bae3db5dc954b3a44eef12b"}, + {file = "pbr-5.11.1.tar.gz", hash = "sha256:aefc51675b0b533d56bb5fd1c8c6c0522fe31896679882e1c4c63d5e4a0fccb3"}, +] + +[[package]] +name = "pexpect" +version = "4.8.0" +description = "Pexpect allows easy control of interactive console applications." +optional = false +python-versions = "*" +files = [ + {file = "pexpect-4.8.0-py2.py3-none-any.whl", hash = "sha256:0b48a55dcb3c05f3329815901ea4fc1537514d6ba867a152b581d69ae3710937"}, + {file = "pexpect-4.8.0.tar.gz", hash = "sha256:fc65a43959d153d0114afe13997d439c22823a27cefceb5ff35c2178c6784c0c"}, +] + +[package.dependencies] +ptyprocess = ">=0.5" + +[[package]] +name = "pickleshare" +version = "0.7.5" +description = "Tiny 'shelve'-like database with concurrency support" +optional = false +python-versions = "*" +files = [ + {file = "pickleshare-0.7.5-py2.py3-none-any.whl", hash = "sha256:9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56"}, + {file = "pickleshare-0.7.5.tar.gz", hash = "sha256:87683d47965c1da65cdacaf31c8441d12b8044cdec9aca500cd78fc2c683afca"}, +] + +[[package]] +name = "pillow" +version = "10.0.1" +description = "Python Imaging Library (Fork)" +optional = false +python-versions = ">=3.8" +files = [ + {file = "Pillow-10.0.1-cp310-cp310-macosx_10_10_x86_64.whl", hash = "sha256:8f06be50669087250f319b706decf69ca71fdecd829091a37cc89398ca4dc17a"}, + {file = "Pillow-10.0.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:50bd5f1ebafe9362ad622072a1d2f5850ecfa44303531ff14353a4059113b12d"}, + {file = "Pillow-10.0.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e6a90167bcca1216606223a05e2cf991bb25b14695c518bc65639463d7db722d"}, + {file = "Pillow-10.0.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f11c9102c56ffb9ca87134bd025a43d2aba3f1155f508eff88f694b33a9c6d19"}, + {file = "Pillow-10.0.1-cp310-cp310-manylinux_2_28_aarch64.whl", hash = "sha256:186f7e04248103482ea6354af6d5bcedb62941ee08f7f788a1c7707bc720c66f"}, + {file = "Pillow-10.0.1-cp310-cp310-manylinux_2_28_x86_64.whl", hash = "sha256:0462b1496505a3462d0f35dc1c4d7b54069747d65d00ef48e736acda2c8cbdff"}, + {file = "Pillow-10.0.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:d889b53ae2f030f756e61a7bff13684dcd77e9af8b10c6048fb2c559d6ed6eaf"}, + {file = "Pillow-10.0.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:552912dbca585b74d75279a7570dd29fa43b6d93594abb494ebb31ac19ace6bd"}, + {file = "Pillow-10.0.1-cp310-cp310-win_amd64.whl", hash = "sha256:787bb0169d2385a798888e1122c980c6eff26bf941a8ea79747d35d8f9210ca0"}, + {file = "Pillow-10.0.1-cp311-cp311-macosx_10_10_x86_64.whl", hash = "sha256:fd2a5403a75b54661182b75ec6132437a181209b901446ee5724b589af8edef1"}, + {file = "Pillow-10.0.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:2d7e91b4379f7a76b31c2dda84ab9e20c6220488e50f7822e59dac36b0cd92b1"}, + {file = "Pillow-10.0.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:19e9adb3f22d4c416e7cd79b01375b17159d6990003633ff1d8377e21b7f1b21"}, + {file = "Pillow-10.0.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:93139acd8109edcdeffd85e3af8ae7d88b258b3a1e13a038f542b79b6d255c54"}, + {file = "Pillow-10.0.1-cp311-cp311-manylinux_2_28_aarch64.whl", hash = "sha256:92a23b0431941a33242b1f0ce6c88a952e09feeea9af4e8be48236a68ffe2205"}, + {file = "Pillow-10.0.1-cp311-cp311-manylinux_2_28_x86_64.whl", hash = "sha256:cbe68deb8580462ca0d9eb56a81912f59eb4542e1ef8f987405e35a0179f4ea2"}, + {file = "Pillow-10.0.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:522ff4ac3aaf839242c6f4e5b406634bfea002469656ae8358644fc6c4856a3b"}, + {file = "Pillow-10.0.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:84efb46e8d881bb06b35d1d541aa87f574b58e87f781cbba8d200daa835b42e1"}, + {file = "Pillow-10.0.1-cp311-cp311-win_amd64.whl", hash = "sha256:898f1d306298ff40dc1b9ca24824f0488f6f039bc0e25cfb549d3195ffa17088"}, + {file = "Pillow-10.0.1-cp312-cp312-macosx_10_10_x86_64.whl", hash = "sha256:bcf1207e2f2385a576832af02702de104be71301c2696d0012b1b93fe34aaa5b"}, + {file = "Pillow-10.0.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:5d6c9049c6274c1bb565021367431ad04481ebb54872edecfcd6088d27edd6ed"}, + {file = "Pillow-10.0.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:28444cb6ad49726127d6b340217f0627abc8732f1194fd5352dec5e6a0105635"}, + {file = "Pillow-10.0.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:de596695a75496deb3b499c8c4f8e60376e0516e1a774e7bc046f0f48cd620ad"}, + {file = "Pillow-10.0.1-cp312-cp312-manylinux_2_28_aarch64.whl", hash = "sha256:2872f2d7846cf39b3dbff64bc1104cc48c76145854256451d33c5faa55c04d1a"}, + {file = "Pillow-10.0.1-cp312-cp312-manylinux_2_28_x86_64.whl", hash = "sha256:4ce90f8a24e1c15465048959f1e94309dfef93af272633e8f37361b824532e91"}, + {file = "Pillow-10.0.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:ee7810cf7c83fa227ba9125de6084e5e8b08c59038a7b2c9045ef4dde61663b4"}, + {file = "Pillow-10.0.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:b1be1c872b9b5fcc229adeadbeb51422a9633abd847c0ff87dc4ef9bb184ae08"}, + {file = "Pillow-10.0.1-cp312-cp312-win_amd64.whl", hash = "sha256:98533fd7fa764e5f85eebe56c8e4094db912ccbe6fbf3a58778d543cadd0db08"}, + {file = "Pillow-10.0.1-cp38-cp38-macosx_10_10_x86_64.whl", hash = "sha256:764d2c0daf9c4d40ad12fbc0abd5da3af7f8aa11daf87e4fa1b834000f4b6b0a"}, + {file = "Pillow-10.0.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:fcb59711009b0168d6ee0bd8fb5eb259c4ab1717b2f538bbf36bacf207ef7a68"}, + {file = "Pillow-10.0.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:697a06bdcedd473b35e50a7e7506b1d8ceb832dc238a336bd6f4f5aa91a4b500"}, + {file = "Pillow-10.0.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9f665d1e6474af9f9da5e86c2a3a2d2d6204e04d5af9c06b9d42afa6ebde3f21"}, + {file = "Pillow-10.0.1-cp38-cp38-manylinux_2_28_aarch64.whl", hash = "sha256:2fa6dd2661838c66f1a5473f3b49ab610c98a128fc08afbe81b91a1f0bf8c51d"}, + {file = "Pillow-10.0.1-cp38-cp38-manylinux_2_28_x86_64.whl", hash = "sha256:3a04359f308ebee571a3127fdb1bd01f88ba6f6fb6d087f8dd2e0d9bff43f2a7"}, + {file = "Pillow-10.0.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:723bd25051454cea9990203405fa6b74e043ea76d4968166dfd2569b0210886a"}, + {file = "Pillow-10.0.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:71671503e3015da1b50bd18951e2f9daf5b6ffe36d16f1eb2c45711a301521a7"}, + {file = "Pillow-10.0.1-cp38-cp38-win_amd64.whl", hash = "sha256:44e7e4587392953e5e251190a964675f61e4dae88d1e6edbe9f36d6243547ff3"}, + {file = "Pillow-10.0.1-cp39-cp39-macosx_10_10_x86_64.whl", hash = "sha256:3855447d98cced8670aaa63683808df905e956f00348732448b5a6df67ee5849"}, + {file = "Pillow-10.0.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:ed2d9c0704f2dc4fa980b99d565c0c9a543fe5101c25b3d60488b8ba80f0cce1"}, + {file = "Pillow-10.0.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f5bb289bb835f9fe1a1e9300d011eef4d69661bb9b34d5e196e5e82c4cb09b37"}, + {file = "Pillow-10.0.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3a0d3e54ab1df9df51b914b2233cf779a5a10dfd1ce339d0421748232cea9876"}, + {file = "Pillow-10.0.1-cp39-cp39-manylinux_2_28_aarch64.whl", hash = "sha256:2cc6b86ece42a11f16f55fe8903595eff2b25e0358dec635d0a701ac9586588f"}, + {file = "Pillow-10.0.1-cp39-cp39-manylinux_2_28_x86_64.whl", hash = "sha256:ca26ba5767888c84bf5a0c1a32f069e8204ce8c21d00a49c90dabeba00ce0145"}, + {file = "Pillow-10.0.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:f0b4b06da13275bc02adfeb82643c4a6385bd08d26f03068c2796f60d125f6f2"}, + {file = "Pillow-10.0.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:bc2e3069569ea9dbe88d6b8ea38f439a6aad8f6e7a6283a38edf61ddefb3a9bf"}, + {file = "Pillow-10.0.1-cp39-cp39-win_amd64.whl", hash = "sha256:8b451d6ead6e3500b6ce5c7916a43d8d8d25ad74b9102a629baccc0808c54971"}, + {file = "Pillow-10.0.1-pp310-pypy310_pp73-macosx_10_10_x86_64.whl", hash = "sha256:32bec7423cdf25c9038fef614a853c9d25c07590e1a870ed471f47fb80b244db"}, + {file = "Pillow-10.0.1-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b7cf63d2c6928b51d35dfdbda6f2c1fddbe51a6bc4a9d4ee6ea0e11670dd981e"}, + {file = "Pillow-10.0.1-pp310-pypy310_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:f6d3d4c905e26354e8f9d82548475c46d8e0889538cb0657aa9c6f0872a37aa4"}, + {file = "Pillow-10.0.1-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:847e8d1017c741c735d3cd1883fa7b03ded4f825a6e5fcb9378fd813edee995f"}, + {file = "Pillow-10.0.1-pp39-pypy39_pp73-macosx_10_10_x86_64.whl", hash = "sha256:7f771e7219ff04b79e231d099c0a28ed83aa82af91fd5fa9fdb28f5b8d5addaf"}, + {file = "Pillow-10.0.1-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:459307cacdd4138edee3875bbe22a2492519e060660eaf378ba3b405d1c66317"}, + {file = "Pillow-10.0.1-pp39-pypy39_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:b059ac2c4c7a97daafa7dc850b43b2d3667def858a4f112d1aa082e5c3d6cf7d"}, + {file = "Pillow-10.0.1-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:d6caf3cd38449ec3cd8a68b375e0c6fe4b6fd04edb6c9766b55ef84a6e8ddf2d"}, + {file = "Pillow-10.0.1.tar.gz", hash = "sha256:d72967b06be9300fed5cfbc8b5bafceec48bf7cdc7dab66b1d2549035287191d"}, +] + +[package.extras] +docs = ["furo", "olefile", "sphinx (>=2.4)", "sphinx-copybutton", "sphinx-inline-tabs", "sphinx-removed-in", "sphinxext-opengraph"] +tests = ["check-manifest", "coverage", "defusedxml", "markdown2", "olefile", "packaging", "pyroma", "pytest", "pytest-cov", "pytest-timeout"] + +[[package]] +name = "platformdirs" +version = "3.10.0" +description = "A small Python package for determining appropriate platform-specific dirs, e.g. a \"user data dir\"." +optional = false +python-versions = ">=3.7" +files = [ + {file = "platformdirs-3.10.0-py3-none-any.whl", hash = "sha256:d7c24979f292f916dc9cbf8648319032f551ea8c49a4c9bf2fb556a02070ec1d"}, + {file = "platformdirs-3.10.0.tar.gz", hash = "sha256:b45696dab2d7cc691a3226759c0d3b00c47c8b6e293d96f6436f733303f77f6d"}, +] + +[package.extras] +docs = ["furo (>=2023.7.26)", "proselint (>=0.13)", "sphinx (>=7.1.1)", "sphinx-autodoc-typehints (>=1.24)"] +test = ["appdirs (==1.4.4)", "covdefaults (>=2.3)", "pytest (>=7.4)", "pytest-cov (>=4.1)", "pytest-mock (>=3.11.1)"] + +[[package]] +name = "plotly" +version = "5.17.0" +description = "An open-source, interactive data visualization library for Python" +optional = false +python-versions = ">=3.6" +files = [ + {file = "plotly-5.17.0-py2.py3-none-any.whl", hash = "sha256:7c84cdf11da162423da957bb093287134f2d6f170eb9a74f1459f825892247c3"}, + {file = "plotly-5.17.0.tar.gz", hash = "sha256:290d796bf7bab87aad184fe24b86096234c4c95dcca6ecbca02d02bdf17d3d97"}, +] + +[package.dependencies] +packaging = "*" +tenacity = ">=6.2.0" + +[[package]] +name = "pluggy" +version = "1.3.0" +description = "plugin and hook calling mechanisms for python" +optional = false +python-versions = ">=3.8" +files = [ + {file = "pluggy-1.3.0-py3-none-any.whl", hash = "sha256:d89c696a773f8bd377d18e5ecda92b7a3793cbe66c87060a6fb58c7b6e1061f7"}, + {file = "pluggy-1.3.0.tar.gz", hash = "sha256:cf61ae8f126ac6f7c451172cf30e3e43d3ca77615509771b3a984a0730651e12"}, +] + +[package.extras] +dev = ["pre-commit", "tox"] +testing = ["pytest", "pytest-benchmark"] + +[[package]] +name = "prometheus-client" +version = "0.17.1" +description = "Python client for the Prometheus monitoring system." +optional = false +python-versions = ">=3.6" +files = [ + {file = "prometheus_client-0.17.1-py3-none-any.whl", hash = "sha256:e537f37160f6807b8202a6fc4764cdd19bac5480ddd3e0d463c3002b34462101"}, + {file = "prometheus_client-0.17.1.tar.gz", hash = "sha256:21e674f39831ae3f8acde238afd9a27a37d0d2fb5a28ea094f0ce25d2cbf2091"}, +] + +[package.extras] +twisted = ["twisted"] + +[[package]] +name = "prompt-toolkit" +version = "3.0.39" +description = "Library for building powerful interactive command lines in Python" +optional = false +python-versions = ">=3.7.0" +files = [ + {file = "prompt_toolkit-3.0.39-py3-none-any.whl", hash = "sha256:9dffbe1d8acf91e3de75f3b544e4842382fc06c6babe903ac9acb74dc6e08d88"}, + {file = "prompt_toolkit-3.0.39.tar.gz", hash = "sha256:04505ade687dc26dc4284b1ad19a83be2f2afe83e7a828ace0c72f3a1df72aac"}, +] + +[package.dependencies] +wcwidth = "*" + +[[package]] +name = "psims" +version = "1.2.7" +description = "Writers and controlled vocabulary manager for PSI-MS's mzML and mzIdentML standards" +optional = false +python-versions = ">3.8" +files = [ + {file = "psims-1.2.7-py3-none-any.whl", hash = "sha256:d857a024e4e96a0d2a892b37b3ecc2f5f068a2229a9d41a80718ab280ee11a5c"}, + {file = "psims-1.2.7.tar.gz", hash = "sha256:d1645a85411df88872865541745a2d4ad5aee2ccd8f6915b9c1d94bbb8cc3a81"}, +] + +[package.dependencies] +lxml = "*" +numpy = "*" +six = "*" +sqlalchemy = "*" + +[package.extras] +all = ["h5py", "hdf5plugin", "pynumpress"] +mzmlb = ["h5py", "hdf5plugin"] +numpress = ["pynumpress"] + +[[package]] +name = "psutil" +version = "5.9.5" +description = "Cross-platform lib for process and system monitoring in Python." +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" +files = [ + {file = "psutil-5.9.5-cp27-cp27m-macosx_10_9_x86_64.whl", hash = "sha256:be8929ce4313f9f8146caad4272f6abb8bf99fc6cf59344a3167ecd74f4f203f"}, + {file = "psutil-5.9.5-cp27-cp27m-manylinux2010_i686.whl", hash = "sha256:ab8ed1a1d77c95453db1ae00a3f9c50227ebd955437bcf2a574ba8adbf6a74d5"}, + {file = "psutil-5.9.5-cp27-cp27m-manylinux2010_x86_64.whl", hash = "sha256:4aef137f3345082a3d3232187aeb4ac4ef959ba3d7c10c33dd73763fbc063da4"}, + {file = "psutil-5.9.5-cp27-cp27mu-manylinux2010_i686.whl", hash = "sha256:ea8518d152174e1249c4f2a1c89e3e6065941df2fa13a1ab45327716a23c2b48"}, + {file = "psutil-5.9.5-cp27-cp27mu-manylinux2010_x86_64.whl", hash = "sha256:acf2aef9391710afded549ff602b5887d7a2349831ae4c26be7c807c0a39fac4"}, + {file = "psutil-5.9.5-cp27-none-win32.whl", hash = "sha256:5b9b8cb93f507e8dbaf22af6a2fd0ccbe8244bf30b1baad6b3954e935157ae3f"}, + {file = "psutil-5.9.5-cp27-none-win_amd64.whl", hash = "sha256:8c5f7c5a052d1d567db4ddd231a9d27a74e8e4a9c3f44b1032762bd7b9fdcd42"}, + {file = "psutil-5.9.5-cp36-abi3-macosx_10_9_x86_64.whl", hash = "sha256:3c6f686f4225553615612f6d9bc21f1c0e305f75d7d8454f9b46e901778e7217"}, + {file = "psutil-5.9.5-cp36-abi3-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7a7dd9997128a0d928ed4fb2c2d57e5102bb6089027939f3b722f3a210f9a8da"}, + {file = "psutil-5.9.5-cp36-abi3-manylinux_2_12_x86_64.manylinux2010_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:89518112647f1276b03ca97b65cc7f64ca587b1eb0278383017c2a0dcc26cbe4"}, + {file = "psutil-5.9.5-cp36-abi3-win32.whl", hash = "sha256:104a5cc0e31baa2bcf67900be36acde157756b9c44017b86b2c049f11957887d"}, + {file = "psutil-5.9.5-cp36-abi3-win_amd64.whl", hash = "sha256:b258c0c1c9d145a1d5ceffab1134441c4c5113b2417fafff7315a917a026c3c9"}, + {file = "psutil-5.9.5-cp38-abi3-macosx_11_0_arm64.whl", hash = "sha256:c607bb3b57dc779d55e1554846352b4e358c10fff3abf3514a7a6601beebdb30"}, + {file = "psutil-5.9.5.tar.gz", hash = "sha256:5410638e4df39c54d957fc51ce03048acd8e6d60abc0f5107af51e5fb566eb3c"}, +] + +[package.extras] +test = ["enum34", "ipaddress", "mock", "pywin32", "wmi"] + +[[package]] +name = "ptyprocess" +version = "0.7.0" +description = "Run a subprocess in a pseudo terminal" +optional = false +python-versions = "*" +files = [ + {file = "ptyprocess-0.7.0-py2.py3-none-any.whl", hash = "sha256:4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35"}, + {file = "ptyprocess-0.7.0.tar.gz", hash = "sha256:5c5d0a3b48ceee0b48485e0c26037c0acd7d29765ca3fbb5cb3831d347423220"}, +] + +[[package]] +name = "pure-eval" +version = "0.2.2" +description = "Safely evaluate AST nodes without side effects" +optional = false +python-versions = "*" +files = [ + {file = "pure_eval-0.2.2-py3-none-any.whl", hash = "sha256:01eaab343580944bc56080ebe0a674b39ec44a945e6d09ba7db3cb8cec289350"}, + {file = "pure_eval-0.2.2.tar.gz", hash = "sha256:2b45320af6dfaa1750f543d714b6d1c520a1688dec6fd24d339063ce0aaa9ac3"}, +] + +[package.extras] +tests = ["pytest"] + +[[package]] +name = "pycodestyle" +version = "2.11.0" +description = "Python style guide checker" +optional = false +python-versions = ">=3.8" +files = [ + {file = "pycodestyle-2.11.0-py2.py3-none-any.whl", hash = "sha256:5d1013ba8dc7895b548be5afb05740ca82454fd899971563d2ef625d090326f8"}, + {file = "pycodestyle-2.11.0.tar.gz", hash = "sha256:259bcc17857d8a8b3b4a2327324b79e5f020a13c16074670f9c8c8f872ea76d0"}, +] + +[[package]] +name = "pycparser" +version = "2.21" +description = "C parser in Python" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" +files = [ + {file = "pycparser-2.21-py2.py3-none-any.whl", hash = "sha256:8ee45429555515e1f6b185e78100aea234072576aa43ab53aefcae078162fca9"}, + {file = "pycparser-2.21.tar.gz", hash = "sha256:e644fdec12f7872f86c58ff790da456218b10f863970249516d60a5eaca77206"}, +] + +[[package]] +name = "pyflakes" +version = "3.1.0" +description = "passive checker of Python programs" +optional = false +python-versions = ">=3.8" +files = [ + {file = "pyflakes-3.1.0-py2.py3-none-any.whl", hash = "sha256:4132f6d49cb4dae6819e5379898f2b8cce3c5f23994194c24b77d5da2e36f774"}, + {file = "pyflakes-3.1.0.tar.gz", hash = "sha256:a0aae034c444db0071aa077972ba4768d40c830d9539fd45bf4cd3f8f6992efc"}, +] + +[[package]] +name = "pygments" +version = "2.16.1" +description = "Pygments is a syntax highlighting package written in Python." +optional = false +python-versions = ">=3.7" +files = [ + {file = "Pygments-2.16.1-py3-none-any.whl", hash = "sha256:13fc09fa63bc8d8671a6d247e1eb303c4b343eaee81d861f3404db2935653692"}, + {file = "Pygments-2.16.1.tar.gz", hash = "sha256:1daff0494820c69bc8941e407aa20f577374ee88364ee10a98fdbe0aece96e29"}, +] + +[package.extras] +plugins = ["importlib-metadata"] + +[[package]] +name = "pymdown-extensions" +version = "10.3" +description = "Extension pack for Python Markdown." +optional = false +python-versions = ">=3.8" +files = [ + {file = "pymdown_extensions-10.3-py3-none-any.whl", hash = "sha256:77a82c621c58a83efc49a389159181d570e370fff9f810d3a4766a75fc678b66"}, + {file = "pymdown_extensions-10.3.tar.gz", hash = "sha256:94a0d8a03246712b64698af223848fd80aaf1ae4c4be29c8c61939b0467b5722"}, +] + +[package.dependencies] +markdown = ">=3.2" +pyyaml = "*" + +[package.extras] +extra = ["pygments (>=2.12)"] + +[[package]] +name = "pymzml" +version = "2.4.7" +description = "high-throughput mzML parsing" +optional = false +python-versions = ">=3.5.0" +files = [ + {file = "pymzml-2.4.7-py3-none-any.whl", hash = "sha256:6bcd8937b59fbbd6cf41f887803b837bcf08465e1c6b10cab45135b0fb15f399"}, + {file = "pymzml-2.4.7.tar.gz", hash = "sha256:7ea36fd00be3b634c6a40b8f7188c514efcac6f23caa87eeb16c33a6f0b87d2b"}, +] + +[package.dependencies] +numpy = ">=1.8.0" +regex = "*" + +[package.extras] +deconvolution = ["ms-deisotope (==0.0.14)"] +full = ["ms-deisotope", "plotly (<5.0)", "pynumpress (>=0.0.4)"] +plot = ["plotly (<5.0)"] +pynumpress = ["pynumpress (>=0.0.4)"] + +[[package]] +name = "pyparsing" +version = "3.1.1" +description = "pyparsing module - Classes and methods to define and execute parsing grammars" +optional = false +python-versions = ">=3.6.8" +files = [ + {file = "pyparsing-3.1.1-py3-none-any.whl", hash = "sha256:32c7c0b711493c72ff18a981d24f28aaf9c1fb7ed5e9667c9e84e3db623bdbfb"}, + {file = "pyparsing-3.1.1.tar.gz", hash = "sha256:ede28a1a32462f5a9705e07aea48001a08f7cf81a021585011deba701581a0db"}, +] + +[package.extras] +diagrams = ["jinja2", "railroad-diagrams"] + +[[package]] +name = "pysmiles" +version = "1.1.2" +description = "A lightweight SMILES reader and writer" +optional = false +python-versions = "*" +files = [ + {file = "pysmiles-1.1.2-py2.py3-none-any.whl", hash = "sha256:491346ebc125dc203c4ae5899738b053d52af1abea1623e922d6fca0f809369c"}, + {file = "pysmiles-1.1.2.tar.gz", hash = "sha256:587f745014e4a343b483a0f7f9c1dcf1da25ce88070ada3507c8fe998bee8016"}, +] + +[package.dependencies] +networkx = "*" +pbr = "*" + +[[package]] +name = "pyteomics" +version = "4.6" +description = "A framework for proteomics data analysis." +optional = false +python-versions = "*" +files = [ + {file = "pyteomics-4.6-py2.py3-none-any.whl", hash = "sha256:95fea3ca8c8700d6113e85bf20e627acecdd892821fcc6559d16e18235e631dc"}, + {file = "pyteomics-4.6.tar.gz", hash = "sha256:a5c2ee4a36b13c388b67b7d426646dd0a5cb46d21263e4ce31503021f3b4d5d7"}, +] + +[package.extras] +all = ["h5py", "hdf5plugin", "lxml", "matplotlib", "numpy", "pandas", "psims (>v0.1.42)", "pynumpress", "sqlalchemy"] +df = ["pandas"] +graphics = ["matplotlib"] +mzmlb = ["h5py", "hdf5plugin"] +numpress = ["pynumpress"] +proforma = ["psims (>v0.1.42)"] +tda = ["numpy"] +unimod = ["lxml", "sqlalchemy"] +xml = ["lxml", "numpy"] + +[[package]] +name = "pytest" +version = "7.4.2" +description = "pytest: simple powerful testing with Python" +optional = false +python-versions = ">=3.7" +files = [ + {file = "pytest-7.4.2-py3-none-any.whl", hash = "sha256:1d881c6124e08ff0a1bb75ba3ec0bfd8b5354a01c194ddd5a0a870a48d99b002"}, + {file = "pytest-7.4.2.tar.gz", hash = "sha256:a766259cfab564a2ad52cb1aae1b881a75c3eb7e34ca3779697c23ed47c47069"}, +] + +[package.dependencies] +colorama = {version = "*", markers = "sys_platform == \"win32\""} +exceptiongroup = {version = ">=1.0.0rc8", markers = "python_version < \"3.11\""} +iniconfig = "*" +packaging = "*" +pluggy = ">=0.12,<2.0" +tomli = {version = ">=1.0.0", markers = "python_version < \"3.11\""} + +[package.extras] +testing = ["argcomplete", "attrs (>=19.2.0)", "hypothesis (>=3.56)", "mock", "nose", "pygments (>=2.7.2)", "requests", "setuptools", "xmlschema"] + +[[package]] +name = "pytest-cov" +version = "4.1.0" +description = "Pytest plugin for measuring coverage." +optional = false +python-versions = ">=3.7" +files = [ + {file = "pytest-cov-4.1.0.tar.gz", hash = "sha256:3904b13dfbfec47f003b8e77fd5b589cd11904a21ddf1ab38a64f204d6a10ef6"}, + {file = "pytest_cov-4.1.0-py3-none-any.whl", hash = "sha256:6ba70b9e97e69fcc3fb45bfeab2d0a138fb65c4d0d6a41ef33983ad114be8c3a"}, +] + +[package.dependencies] +coverage = {version = ">=5.2.1", extras = ["toml"]} +pytest = ">=4.6" + +[package.extras] +testing = ["fields", "hunter", "process-tests", "pytest-xdist", "six", "virtualenv"] + +[[package]] +name = "python-dateutil" +version = "2.8.2" +description = "Extensions to the standard Python datetime module" +optional = false +python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,>=2.7" +files = [ + {file = "python-dateutil-2.8.2.tar.gz", hash = "sha256:0123cacc1627ae19ddf3c27a5de5bd67ee4586fbdd6440d9748f8abb483d3e86"}, + {file = "python_dateutil-2.8.2-py2.py3-none-any.whl", hash = "sha256:961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9"}, +] + +[package.dependencies] +six = ">=1.5" + +[[package]] +name = "python-idzip" +version = "0.3.9" +description = "DictZip - Random Access gzip files" +optional = false +python-versions = "*" +files = [ + {file = "python_idzip-0.3.9-py3-none-any.whl", hash = "sha256:38dd2690ddc60d40b4bdb3867ae495b3ba27566f93c14b46852099cce60ef700"}, +] + +[[package]] +name = "python-json-logger" +version = "2.0.7" +description = "A python library adding a json log formatter" +optional = false +python-versions = ">=3.6" +files = [ + {file = "python-json-logger-2.0.7.tar.gz", hash = "sha256:23e7ec02d34237c5aa1e29a070193a4ea87583bb4e7f8fd06d3de8264c4b2e1c"}, + {file = "python_json_logger-2.0.7-py3-none-any.whl", hash = "sha256:f380b826a991ebbe3de4d897aeec42760035ac760345e57b812938dc8b35e2bd"}, +] + +[[package]] +name = "pytz" +version = "2023.3.post1" +description = "World timezone definitions, modern and historical" +optional = false +python-versions = "*" +files = [ + {file = "pytz-2023.3.post1-py2.py3-none-any.whl", hash = "sha256:ce42d816b81b68506614c11e8937d3aa9e41007ceb50bfdcb0749b921bf646c7"}, + {file = "pytz-2023.3.post1.tar.gz", hash = "sha256:7b4fddbeb94a1eba4b557da24f19fdf9db575192544270a9101d8509f9f43d7b"}, +] + +[[package]] +name = "pywin32" +version = "306" +description = "Python for Window Extensions" +optional = false +python-versions = "*" +files = [ + {file = "pywin32-306-cp310-cp310-win32.whl", hash = "sha256:06d3420a5155ba65f0b72f2699b5bacf3109f36acbe8923765c22938a69dfc8d"}, + {file = "pywin32-306-cp310-cp310-win_amd64.whl", hash = "sha256:84f4471dbca1887ea3803d8848a1616429ac94a4a8d05f4bc9c5dcfd42ca99c8"}, + {file = "pywin32-306-cp311-cp311-win32.whl", hash = "sha256:e65028133d15b64d2ed8f06dd9fbc268352478d4f9289e69c190ecd6818b6407"}, + {file = "pywin32-306-cp311-cp311-win_amd64.whl", hash = "sha256:a7639f51c184c0272e93f244eb24dafca9b1855707d94c192d4a0b4c01e1100e"}, + {file = "pywin32-306-cp311-cp311-win_arm64.whl", hash = "sha256:70dba0c913d19f942a2db25217d9a1b726c278f483a919f1abfed79c9cf64d3a"}, + {file = "pywin32-306-cp312-cp312-win32.whl", hash = "sha256:383229d515657f4e3ed1343da8be101000562bf514591ff383ae940cad65458b"}, + {file = "pywin32-306-cp312-cp312-win_amd64.whl", hash = "sha256:37257794c1ad39ee9be652da0462dc2e394c8159dfd913a8a4e8eb6fd346da0e"}, + {file = "pywin32-306-cp312-cp312-win_arm64.whl", hash = "sha256:5821ec52f6d321aa59e2db7e0a35b997de60c201943557d108af9d4ae1ec7040"}, + {file = "pywin32-306-cp37-cp37m-win32.whl", hash = "sha256:1c73ea9a0d2283d889001998059f5eaaba3b6238f767c9cf2833b13e6a685f65"}, + {file = "pywin32-306-cp37-cp37m-win_amd64.whl", hash = "sha256:72c5f621542d7bdd4fdb716227be0dd3f8565c11b280be6315b06ace35487d36"}, + {file = "pywin32-306-cp38-cp38-win32.whl", hash = "sha256:e4c092e2589b5cf0d365849e73e02c391c1349958c5ac3e9d5ccb9a28e017b3a"}, + {file = "pywin32-306-cp38-cp38-win_amd64.whl", hash = "sha256:e8ac1ae3601bee6ca9f7cb4b5363bf1c0badb935ef243c4733ff9a393b1690c0"}, + {file = "pywin32-306-cp39-cp39-win32.whl", hash = "sha256:e25fd5b485b55ac9c057f67d94bc203f3f6595078d1fb3b458c9c28b7153a802"}, + {file = "pywin32-306-cp39-cp39-win_amd64.whl", hash = "sha256:39b61c15272833b5c329a2989999dcae836b1eed650252ab1b7bfbe1d59f30f4"}, +] + +[[package]] +name = "pywinpty" +version = "2.0.11" +description = "Pseudo terminal support for Windows from Python." +optional = false +python-versions = ">=3.8" +files = [ + {file = "pywinpty-2.0.11-cp310-none-win_amd64.whl", hash = "sha256:452f10ac9ff8ab9151aa8cea9e491a9612a12250b1899278c6a56bc184afb47f"}, + {file = "pywinpty-2.0.11-cp311-none-win_amd64.whl", hash = "sha256:6701867d42aec1239bc0fedf49a336570eb60eb886e81763db77ea2b6c533cc3"}, + {file = "pywinpty-2.0.11-cp38-none-win_amd64.whl", hash = "sha256:0ffd287751ad871141dc9724de70ea21f7fc2ff1af50861e0d232cf70739d8c4"}, + {file = "pywinpty-2.0.11-cp39-none-win_amd64.whl", hash = "sha256:e4e7f023c28ca7aa8e1313e53ba80a4d10171fe27857b7e02f99882dfe3e8638"}, + {file = "pywinpty-2.0.11.tar.gz", hash = "sha256:e244cffe29a894876e2cd251306efd0d8d64abd5ada0a46150a4a71c0b9ad5c5"}, +] + +[[package]] +name = "pyyaml" +version = "6.0.1" +description = "YAML parser and emitter for Python" +optional = false +python-versions = ">=3.6" +files = [ + {file = "PyYAML-6.0.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:d858aa552c999bc8a8d57426ed01e40bef403cd8ccdd0fc5f6f04a00414cac2a"}, + {file = "PyYAML-6.0.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:fd66fc5d0da6d9815ba2cebeb4205f95818ff4b79c3ebe268e75d961704af52f"}, + {file = "PyYAML-6.0.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:69b023b2b4daa7548bcfbd4aa3da05b3a74b772db9e23b982788168117739938"}, + {file = "PyYAML-6.0.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:81e0b275a9ecc9c0c0c07b4b90ba548307583c125f54d5b6946cfee6360c733d"}, + {file = "PyYAML-6.0.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ba336e390cd8e4d1739f42dfe9bb83a3cc2e80f567d8805e11b46f4a943f5515"}, + {file = "PyYAML-6.0.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:326c013efe8048858a6d312ddd31d56e468118ad4cdeda36c719bf5bb6192290"}, + {file = "PyYAML-6.0.1-cp310-cp310-win32.whl", hash = "sha256:bd4af7373a854424dabd882decdc5579653d7868b8fb26dc7d0e99f823aa5924"}, + {file = "PyYAML-6.0.1-cp310-cp310-win_amd64.whl", hash = "sha256:fd1592b3fdf65fff2ad0004b5e363300ef59ced41c2e6b3a99d4089fa8c5435d"}, + {file = "PyYAML-6.0.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:6965a7bc3cf88e5a1c3bd2e0b5c22f8d677dc88a455344035f03399034eb3007"}, + {file = "PyYAML-6.0.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:f003ed9ad21d6a4713f0a9b5a7a0a79e08dd0f221aff4525a2be4c346ee60aab"}, + {file = "PyYAML-6.0.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:42f8152b8dbc4fe7d96729ec2b99c7097d656dc1213a3229ca5383f973a5ed6d"}, + {file = "PyYAML-6.0.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:062582fca9fabdd2c8b54a3ef1c978d786e0f6b3a1510e0ac93ef59e0ddae2bc"}, + {file = "PyYAML-6.0.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d2b04aac4d386b172d5b9692e2d2da8de7bfb6c387fa4f801fbf6fb2e6ba4673"}, + {file = "PyYAML-6.0.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:e7d73685e87afe9f3b36c799222440d6cf362062f78be1013661b00c5c6f678b"}, + {file = "PyYAML-6.0.1-cp311-cp311-win32.whl", hash = "sha256:1635fd110e8d85d55237ab316b5b011de701ea0f29d07611174a1b42f1444741"}, + {file = "PyYAML-6.0.1-cp311-cp311-win_amd64.whl", hash = "sha256:bf07ee2fef7014951eeb99f56f39c9bb4af143d8aa3c21b1677805985307da34"}, + {file = "PyYAML-6.0.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:855fb52b0dc35af121542a76b9a84f8d1cd886ea97c84703eaa6d88e37a2ad28"}, + {file = "PyYAML-6.0.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:40df9b996c2b73138957fe23a16a4f0ba614f4c0efce1e9406a184b6d07fa3a9"}, + {file = "PyYAML-6.0.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6c22bec3fbe2524cde73d7ada88f6566758a8f7227bfbf93a408a9d86bcc12a0"}, + {file = "PyYAML-6.0.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:8d4e9c88387b0f5c7d5f281e55304de64cf7f9c0021a3525bd3b1c542da3b0e4"}, + {file = "PyYAML-6.0.1-cp312-cp312-win32.whl", hash = "sha256:d483d2cdf104e7c9fa60c544d92981f12ad66a457afae824d146093b8c294c54"}, + {file = "PyYAML-6.0.1-cp312-cp312-win_amd64.whl", hash = "sha256:0d3304d8c0adc42be59c5f8a4d9e3d7379e6955ad754aa9d6ab7a398b59dd1df"}, + {file = "PyYAML-6.0.1-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:50550eb667afee136e9a77d6dc71ae76a44df8b3e51e41b77f6de2932bfe0f47"}, + {file = "PyYAML-6.0.1-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1fe35611261b29bd1de0070f0b2f47cb6ff71fa6595c077e42bd0c419fa27b98"}, + {file = "PyYAML-6.0.1-cp36-cp36m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:704219a11b772aea0d8ecd7058d0082713c3562b4e271b849ad7dc4a5c90c13c"}, + {file = "PyYAML-6.0.1-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:afd7e57eddb1a54f0f1a974bc4391af8bcce0b444685d936840f125cf046d5bd"}, + {file = "PyYAML-6.0.1-cp36-cp36m-win32.whl", hash = "sha256:fca0e3a251908a499833aa292323f32437106001d436eca0e6e7833256674585"}, + {file = "PyYAML-6.0.1-cp36-cp36m-win_amd64.whl", hash = "sha256:f22ac1c3cac4dbc50079e965eba2c1058622631e526bd9afd45fedd49ba781fa"}, + {file = "PyYAML-6.0.1-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:b1275ad35a5d18c62a7220633c913e1b42d44b46ee12554e5fd39c70a243d6a3"}, + {file = "PyYAML-6.0.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:18aeb1bf9a78867dc38b259769503436b7c72f7a1f1f4c93ff9a17de54319b27"}, + {file = "PyYAML-6.0.1-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:596106435fa6ad000c2991a98fa58eeb8656ef2325d7e158344fb33864ed87e3"}, + {file = "PyYAML-6.0.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:baa90d3f661d43131ca170712d903e6295d1f7a0f595074f151c0aed377c9b9c"}, + {file = "PyYAML-6.0.1-cp37-cp37m-win32.whl", hash = "sha256:9046c58c4395dff28dd494285c82ba00b546adfc7ef001486fbf0324bc174fba"}, + {file = "PyYAML-6.0.1-cp37-cp37m-win_amd64.whl", hash = "sha256:4fb147e7a67ef577a588a0e2c17b6db51dda102c71de36f8549b6816a96e1867"}, + {file = "PyYAML-6.0.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:1d4c7e777c441b20e32f52bd377e0c409713e8bb1386e1099c2415f26e479595"}, + {file = "PyYAML-6.0.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a0cd17c15d3bb3fa06978b4e8958dcdc6e0174ccea823003a106c7d4d7899ac5"}, + {file = "PyYAML-6.0.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:28c119d996beec18c05208a8bd78cbe4007878c6dd15091efb73a30e90539696"}, + {file = "PyYAML-6.0.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7e07cbde391ba96ab58e532ff4803f79c4129397514e1413a7dc761ccd755735"}, + {file = "PyYAML-6.0.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:49a183be227561de579b4a36efbb21b3eab9651dd81b1858589f796549873dd6"}, + {file = "PyYAML-6.0.1-cp38-cp38-win32.whl", hash = "sha256:184c5108a2aca3c5b3d3bf9395d50893a7ab82a38004c8f61c258d4428e80206"}, + {file = "PyYAML-6.0.1-cp38-cp38-win_amd64.whl", hash = "sha256:1e2722cc9fbb45d9b87631ac70924c11d3a401b2d7f410cc0e3bbf249f2dca62"}, + {file = "PyYAML-6.0.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:9eb6caa9a297fc2c2fb8862bc5370d0303ddba53ba97e71f08023b6cd73d16a8"}, + {file = "PyYAML-6.0.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:c8098ddcc2a85b61647b2590f825f3db38891662cfc2fc776415143f599bb859"}, + {file = "PyYAML-6.0.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5773183b6446b2c99bb77e77595dd486303b4faab2b086e7b17bc6bef28865f6"}, + {file = "PyYAML-6.0.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b786eecbdf8499b9ca1d697215862083bd6d2a99965554781d0d8d1ad31e13a0"}, + {file = "PyYAML-6.0.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bc1bf2925a1ecd43da378f4db9e4f799775d6367bdb94671027b73b393a7c42c"}, + {file = "PyYAML-6.0.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:04ac92ad1925b2cff1db0cfebffb6ffc43457495c9b3c39d3fcae417d7125dc5"}, + {file = "PyYAML-6.0.1-cp39-cp39-win32.whl", hash = "sha256:faca3bdcf85b2fc05d06ff3fbc1f83e1391b3e724afa3feba7d13eeab355484c"}, + {file = "PyYAML-6.0.1-cp39-cp39-win_amd64.whl", hash = "sha256:510c9deebc5c0225e8c96813043e62b680ba2f9c50a08d3724c7f28a747d1486"}, + {file = "PyYAML-6.0.1.tar.gz", hash = "sha256:bfdf460b1736c775f2ba9f6a92bca30bc2095067b8a9d77876d1fad6cc3b4a43"}, +] + +[[package]] +name = "pyyaml-env-tag" +version = "0.1" +description = "A custom YAML tag for referencing environment variables in YAML files. " +optional = false +python-versions = ">=3.6" +files = [ + {file = "pyyaml_env_tag-0.1-py3-none-any.whl", hash = "sha256:af31106dec8a4d68c60207c1886031cbf839b68aa7abccdb19868200532c2069"}, + {file = "pyyaml_env_tag-0.1.tar.gz", hash = "sha256:70092675bda14fdec33b31ba77e7543de9ddc88f2e5b99160396572d11525bdb"}, +] + +[package.dependencies] +pyyaml = "*" + +[[package]] +name = "pyzmq" +version = "25.1.1" +description = "Python bindings for 0MQ" +optional = false +python-versions = ">=3.6" +files = [ + {file = "pyzmq-25.1.1-cp310-cp310-macosx_10_15_universal2.whl", hash = "sha256:381469297409c5adf9a0e884c5eb5186ed33137badcbbb0560b86e910a2f1e76"}, + {file = "pyzmq-25.1.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:955215ed0604dac5b01907424dfa28b40f2b2292d6493445dd34d0dfa72586a8"}, + {file = "pyzmq-25.1.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:985bbb1316192b98f32e25e7b9958088431d853ac63aca1d2c236f40afb17c83"}, + {file = "pyzmq-25.1.1-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:afea96f64efa98df4da6958bae37f1cbea7932c35878b185e5982821bc883369"}, + {file = "pyzmq-25.1.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:76705c9325d72a81155bb6ab48d4312e0032bf045fb0754889133200f7a0d849"}, + {file = "pyzmq-25.1.1-cp310-cp310-manylinux_2_28_x86_64.whl", hash = "sha256:77a41c26205d2353a4c94d02be51d6cbdf63c06fbc1295ea57dad7e2d3381b71"}, + {file = "pyzmq-25.1.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:12720a53e61c3b99d87262294e2b375c915fea93c31fc2336898c26d7aed34cd"}, + {file = "pyzmq-25.1.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:57459b68e5cd85b0be8184382cefd91959cafe79ae019e6b1ae6e2ba8a12cda7"}, + {file = "pyzmq-25.1.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:292fe3fc5ad4a75bc8df0dfaee7d0babe8b1f4ceb596437213821f761b4589f9"}, + {file = "pyzmq-25.1.1-cp310-cp310-win32.whl", hash = "sha256:35b5ab8c28978fbbb86ea54958cd89f5176ce747c1fb3d87356cf698048a7790"}, + {file = "pyzmq-25.1.1-cp310-cp310-win_amd64.whl", hash = "sha256:11baebdd5fc5b475d484195e49bae2dc64b94a5208f7c89954e9e354fc609d8f"}, + {file = "pyzmq-25.1.1-cp311-cp311-macosx_10_15_universal2.whl", hash = "sha256:d20a0ddb3e989e8807d83225a27e5c2eb2260eaa851532086e9e0fa0d5287d83"}, + {file = "pyzmq-25.1.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:e1c1be77bc5fb77d923850f82e55a928f8638f64a61f00ff18a67c7404faf008"}, + {file = "pyzmq-25.1.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d89528b4943d27029a2818f847c10c2cecc79fa9590f3cb1860459a5be7933eb"}, + {file = "pyzmq-25.1.1-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:90f26dc6d5f241ba358bef79be9ce06de58d477ca8485e3291675436d3827cf8"}, + {file = "pyzmq-25.1.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c2b92812bd214018e50b6380ea3ac0c8bb01ac07fcc14c5f86a5bb25e74026e9"}, + {file = "pyzmq-25.1.1-cp311-cp311-manylinux_2_28_x86_64.whl", hash = "sha256:2f957ce63d13c28730f7fd6b72333814221c84ca2421298f66e5143f81c9f91f"}, + {file = "pyzmq-25.1.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:047a640f5c9c6ade7b1cc6680a0e28c9dd5a0825135acbd3569cc96ea00b2505"}, + {file = "pyzmq-25.1.1-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:7f7e58effd14b641c5e4dec8c7dab02fb67a13df90329e61c869b9cc607ef752"}, + {file = "pyzmq-25.1.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:c2910967e6ab16bf6fbeb1f771c89a7050947221ae12a5b0b60f3bca2ee19bca"}, + {file = "pyzmq-25.1.1-cp311-cp311-win32.whl", hash = "sha256:76c1c8efb3ca3a1818b837aea423ff8a07bbf7aafe9f2f6582b61a0458b1a329"}, + {file = "pyzmq-25.1.1-cp311-cp311-win_amd64.whl", hash = "sha256:44e58a0554b21fc662f2712814a746635ed668d0fbc98b7cb9d74cb798d202e6"}, + {file = "pyzmq-25.1.1-cp312-cp312-macosx_10_15_universal2.whl", hash = "sha256:e1ffa1c924e8c72778b9ccd386a7067cddf626884fd8277f503c48bb5f51c762"}, + {file = "pyzmq-25.1.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:1af379b33ef33757224da93e9da62e6471cf4a66d10078cf32bae8127d3d0d4a"}, + {file = "pyzmq-25.1.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:cff084c6933680d1f8b2f3b4ff5bbb88538a4aac00d199ac13f49d0698727ecb"}, + {file = "pyzmq-25.1.1-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e2400a94f7dd9cb20cd012951a0cbf8249e3d554c63a9c0cdfd5cbb6c01d2dec"}, + {file = "pyzmq-25.1.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2d81f1ddae3858b8299d1da72dd7d19dd36aab654c19671aa8a7e7fb02f6638a"}, + {file = "pyzmq-25.1.1-cp312-cp312-manylinux_2_28_x86_64.whl", hash = "sha256:255ca2b219f9e5a3a9ef3081512e1358bd4760ce77828e1028b818ff5610b87b"}, + {file = "pyzmq-25.1.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:a882ac0a351288dd18ecae3326b8a49d10c61a68b01419f3a0b9a306190baf69"}, + {file = "pyzmq-25.1.1-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:724c292bb26365659fc434e9567b3f1adbdb5e8d640c936ed901f49e03e5d32e"}, + {file = "pyzmq-25.1.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:4ca1ed0bb2d850aa8471387882247c68f1e62a4af0ce9c8a1dbe0d2bf69e41fb"}, + {file = "pyzmq-25.1.1-cp312-cp312-win32.whl", hash = "sha256:b3451108ab861040754fa5208bca4a5496c65875710f76789a9ad27c801a0075"}, + {file = "pyzmq-25.1.1-cp312-cp312-win_amd64.whl", hash = "sha256:eadbefd5e92ef8a345f0525b5cfd01cf4e4cc651a2cffb8f23c0dd184975d787"}, + {file = "pyzmq-25.1.1-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:db0b2af416ba735c6304c47f75d348f498b92952f5e3e8bff449336d2728795d"}, + {file = "pyzmq-25.1.1-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c7c133e93b405eb0d36fa430c94185bdd13c36204a8635470cccc200723c13bb"}, + {file = "pyzmq-25.1.1-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:273bc3959bcbff3f48606b28229b4721716598d76b5aaea2b4a9d0ab454ec062"}, + {file = "pyzmq-25.1.1-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:cbc8df5c6a88ba5ae385d8930da02201165408dde8d8322072e3e5ddd4f68e22"}, + {file = "pyzmq-25.1.1-cp36-cp36m-musllinux_1_1_aarch64.whl", hash = "sha256:18d43df3f2302d836f2a56f17e5663e398416e9dd74b205b179065e61f1a6edf"}, + {file = "pyzmq-25.1.1-cp36-cp36m-musllinux_1_1_i686.whl", hash = "sha256:73461eed88a88c866656e08f89299720a38cb4e9d34ae6bf5df6f71102570f2e"}, + {file = "pyzmq-25.1.1-cp36-cp36m-musllinux_1_1_x86_64.whl", hash = "sha256:34c850ce7976d19ebe7b9d4b9bb8c9dfc7aac336c0958e2651b88cbd46682123"}, + {file = "pyzmq-25.1.1-cp36-cp36m-win32.whl", hash = "sha256:d2045d6d9439a0078f2a34b57c7b18c4a6aef0bee37f22e4ec9f32456c852c71"}, + {file = "pyzmq-25.1.1-cp36-cp36m-win_amd64.whl", hash = "sha256:458dea649f2f02a0b244ae6aef8dc29325a2810aa26b07af8374dc2a9faf57e3"}, + {file = "pyzmq-25.1.1-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:7cff25c5b315e63b07a36f0c2bab32c58eafbe57d0dce61b614ef4c76058c115"}, + {file = "pyzmq-25.1.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b1579413ae492b05de5a6174574f8c44c2b9b122a42015c5292afa4be2507f28"}, + {file = "pyzmq-25.1.1-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:3d0a409d3b28607cc427aa5c30a6f1e4452cc44e311f843e05edb28ab5e36da0"}, + {file = "pyzmq-25.1.1-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:21eb4e609a154a57c520e3d5bfa0d97e49b6872ea057b7c85257b11e78068222"}, + {file = "pyzmq-25.1.1-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:034239843541ef7a1aee0c7b2cb7f6aafffb005ede965ae9cbd49d5ff4ff73cf"}, + {file = "pyzmq-25.1.1-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:f8115e303280ba09f3898194791a153862cbf9eef722ad8f7f741987ee2a97c7"}, + {file = "pyzmq-25.1.1-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:1a5d26fe8f32f137e784f768143728438877d69a586ddeaad898558dc971a5ae"}, + {file = "pyzmq-25.1.1-cp37-cp37m-win32.whl", hash = "sha256:f32260e556a983bc5c7ed588d04c942c9a8f9c2e99213fec11a031e316874c7e"}, + {file = "pyzmq-25.1.1-cp37-cp37m-win_amd64.whl", hash = "sha256:abf34e43c531bbb510ae7e8f5b2b1f2a8ab93219510e2b287a944432fad135f3"}, + {file = "pyzmq-25.1.1-cp38-cp38-macosx_10_15_universal2.whl", hash = "sha256:87e34f31ca8f168c56d6fbf99692cc8d3b445abb5bfd08c229ae992d7547a92a"}, + {file = "pyzmq-25.1.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:c9c6c9b2c2f80747a98f34ef491c4d7b1a8d4853937bb1492774992a120f475d"}, + {file = "pyzmq-25.1.1-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:5619f3f5a4db5dbb572b095ea3cb5cc035335159d9da950830c9c4db2fbb6995"}, + {file = "pyzmq-25.1.1-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:5a34d2395073ef862b4032343cf0c32a712f3ab49d7ec4f42c9661e0294d106f"}, + {file = "pyzmq-25.1.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:25f0e6b78220aba09815cd1f3a32b9c7cb3e02cb846d1cfc526b6595f6046618"}, + {file = "pyzmq-25.1.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:3669cf8ee3520c2f13b2e0351c41fea919852b220988d2049249db10046a7afb"}, + {file = "pyzmq-25.1.1-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:2d163a18819277e49911f7461567bda923461c50b19d169a062536fffe7cd9d2"}, + {file = "pyzmq-25.1.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:df27ffddff4190667d40de7beba4a950b5ce78fe28a7dcc41d6f8a700a80a3c0"}, + {file = "pyzmq-25.1.1-cp38-cp38-win32.whl", hash = "sha256:a382372898a07479bd34bda781008e4a954ed8750f17891e794521c3e21c2e1c"}, + {file = "pyzmq-25.1.1-cp38-cp38-win_amd64.whl", hash = "sha256:52533489f28d62eb1258a965f2aba28a82aa747202c8fa5a1c7a43b5db0e85c1"}, + {file = "pyzmq-25.1.1-cp39-cp39-macosx_10_15_universal2.whl", hash = "sha256:03b3f49b57264909aacd0741892f2aecf2f51fb053e7d8ac6767f6c700832f45"}, + {file = "pyzmq-25.1.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:330f9e188d0d89080cde66dc7470f57d1926ff2fb5576227f14d5be7ab30b9fa"}, + {file = "pyzmq-25.1.1-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:2ca57a5be0389f2a65e6d3bb2962a971688cbdd30b4c0bd188c99e39c234f414"}, + {file = "pyzmq-25.1.1-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:d457aed310f2670f59cc5b57dcfced452aeeed77f9da2b9763616bd57e4dbaae"}, + {file = "pyzmq-25.1.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c56d748ea50215abef7030c72b60dd723ed5b5c7e65e7bc2504e77843631c1a6"}, + {file = "pyzmq-25.1.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:8f03d3f0d01cb5a018debeb412441996a517b11c5c17ab2001aa0597c6d6882c"}, + {file = "pyzmq-25.1.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:820c4a08195a681252f46926de10e29b6bbf3e17b30037bd4250d72dd3ddaab8"}, + {file = "pyzmq-25.1.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:17ef5f01d25b67ca8f98120d5fa1d21efe9611604e8eb03a5147360f517dd1e2"}, + {file = "pyzmq-25.1.1-cp39-cp39-win32.whl", hash = "sha256:04ccbed567171579ec2cebb9c8a3e30801723c575601f9a990ab25bcac6b51e2"}, + {file = "pyzmq-25.1.1-cp39-cp39-win_amd64.whl", hash = "sha256:e61f091c3ba0c3578411ef505992d356a812fb200643eab27f4f70eed34a29ef"}, + {file = "pyzmq-25.1.1-pp310-pypy310_pp73-macosx_10_9_x86_64.whl", hash = "sha256:ade6d25bb29c4555d718ac6d1443a7386595528c33d6b133b258f65f963bb0f6"}, + {file = "pyzmq-25.1.1-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e0c95ddd4f6e9fca4e9e3afaa4f9df8552f0ba5d1004e89ef0a68e1f1f9807c7"}, + {file = "pyzmq-25.1.1-pp310-pypy310_pp73-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:48e466162a24daf86f6b5ca72444d2bf39a5e58da5f96370078be67c67adc978"}, + {file = "pyzmq-25.1.1-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:abc719161780932c4e11aaebb203be3d6acc6b38d2f26c0f523b5b59d2fc1996"}, + {file = "pyzmq-25.1.1-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:1ccf825981640b8c34ae54231b7ed00271822ea1c6d8ba1090ebd4943759abf5"}, + {file = "pyzmq-25.1.1-pp37-pypy37_pp73-macosx_10_9_x86_64.whl", hash = "sha256:c2f20ce161ebdb0091a10c9ca0372e023ce24980d0e1f810f519da6f79c60800"}, + {file = "pyzmq-25.1.1-pp37-pypy37_pp73-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:deee9ca4727f53464daf089536e68b13e6104e84a37820a88b0a057b97bba2d2"}, + {file = "pyzmq-25.1.1-pp37-pypy37_pp73-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:aa8d6cdc8b8aa19ceb319aaa2b660cdaccc533ec477eeb1309e2a291eaacc43a"}, + {file = "pyzmq-25.1.1-pp37-pypy37_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:019e59ef5c5256a2c7378f2fb8560fc2a9ff1d315755204295b2eab96b254d0a"}, + {file = "pyzmq-25.1.1-pp37-pypy37_pp73-win_amd64.whl", hash = "sha256:b9af3757495c1ee3b5c4e945c1df7be95562277c6e5bccc20a39aec50f826cd0"}, + {file = "pyzmq-25.1.1-pp38-pypy38_pp73-macosx_10_9_x86_64.whl", hash = "sha256:548d6482dc8aadbe7e79d1b5806585c8120bafa1ef841167bc9090522b610fa6"}, + {file = "pyzmq-25.1.1-pp38-pypy38_pp73-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:057e824b2aae50accc0f9a0570998adc021b372478a921506fddd6c02e60308e"}, + {file = "pyzmq-25.1.1-pp38-pypy38_pp73-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:2243700cc5548cff20963f0ca92d3e5e436394375ab8a354bbea2b12911b20b0"}, + {file = "pyzmq-25.1.1-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:79986f3b4af059777111409ee517da24a529bdbd46da578b33f25580adcff728"}, + {file = "pyzmq-25.1.1-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:11d58723d44d6ed4dd677c5615b2ffb19d5c426636345567d6af82be4dff8a55"}, + {file = "pyzmq-25.1.1-pp39-pypy39_pp73-macosx_10_9_x86_64.whl", hash = "sha256:49d238cf4b69652257db66d0c623cd3e09b5d2e9576b56bc067a396133a00d4a"}, + {file = "pyzmq-25.1.1-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:fedbdc753827cf014c01dbbee9c3be17e5a208dcd1bf8641ce2cd29580d1f0d4"}, + {file = "pyzmq-25.1.1-pp39-pypy39_pp73-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:bc16ac425cc927d0a57d242589f87ee093884ea4804c05a13834d07c20db203c"}, + {file = "pyzmq-25.1.1-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:11c1d2aed9079c6b0c9550a7257a836b4a637feb334904610f06d70eb44c56d2"}, + {file = "pyzmq-25.1.1-pp39-pypy39_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:e8a701123029cc240cea61dd2d16ad57cab4691804143ce80ecd9286b464d180"}, + {file = "pyzmq-25.1.1-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:61706a6b6c24bdece85ff177fec393545a3191eeda35b07aaa1458a027ad1304"}, + {file = "pyzmq-25.1.1.tar.gz", hash = "sha256:259c22485b71abacdfa8bf79720cd7bcf4b9d128b30ea554f01ae71fdbfdaa23"}, +] + +[package.dependencies] +cffi = {version = "*", markers = "implementation_name == \"pypy\""} + +[[package]] +name = "pyzstd" +version = "0.15.9" +description = "Python bindings to Zstandard (zstd) compression library, the API style is similar to Python's bz2/lzma/zlib modules." +optional = false +python-versions = ">=3.5" +files = [ + {file = "pyzstd-0.15.9-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:209a92fbe892bd69cde58ffcb4861468e2c3c2d0626763e16e122bb55cb1fb1a"}, + {file = "pyzstd-0.15.9-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:f6d8a881b50bb2015e9bdba5edb0331e85d41ff44ab33cde551047480b98d748"}, + {file = "pyzstd-0.15.9-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bdc09de97b1b3f6c3d87fec04d6fe29dd4fefe6b354ad2d822fc369b8aa0942b"}, + {file = "pyzstd-0.15.9-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:a1b81cc86b69ff530d45e735ed479e14704999f534ad28a39f04be4a8fe2b91f"}, + {file = "pyzstd-0.15.9-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:5fb00c706d0b59c53124f982bd84b7d46866a8ea2a7670aaaa1ab4dbe6001b50"}, + {file = "pyzstd-0.15.9-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:606b2452d78f0f731566d392f8d83cd012c2ffadb2cb2e2903fdd360c1faac8a"}, + {file = "pyzstd-0.15.9-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:23695dabdfd5081beab25754dc0105b42fbd2085a7c293901bcb45045969c5ec"}, + {file = "pyzstd-0.15.9-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:74455bd918e7bc9883e3178a1a8fe796308670f0ee4488c80a0d9514e13807a1"}, + {file = "pyzstd-0.15.9-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:6128cb653d011f3781554b70ce1f1f388cd516820fbaf8fd03ee245ecaa48349"}, + {file = "pyzstd-0.15.9-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:a708b9e6ff1826504940beb6b5c2c9dfd4e3b55c16ab88a4572f5b9dbb64cc56"}, + {file = "pyzstd-0.15.9-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:1b9cda5314982d64c856f9298be0d9bf69fbff0ca514d1651037616354b473ff"}, + {file = "pyzstd-0.15.9-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:f7cfc683d320402d61205a196ace77f15dcfd16b5771f8b9ffaf406868c98e78"}, + {file = "pyzstd-0.15.9-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:3f0fe2ef7ebc6e9b347585e414c4fefd32270ba8bdf9eb82496f3030cbdca465"}, + {file = "pyzstd-0.15.9-cp310-cp310-win32.whl", hash = "sha256:e8f75e839ee253af60b03d9957182fdd069dfaebb62b4e999bd74016f4e120bb"}, + {file = "pyzstd-0.15.9-cp310-cp310-win_amd64.whl", hash = "sha256:77294f0f797c97a46ffb3daff1fe097c9d5aa9f96867333978e6791286963e50"}, + {file = "pyzstd-0.15.9-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:afef9eb882cf3b395eef9c85b737a4acd09528975e6a5d9faedf28874ca65f52"}, + {file = "pyzstd-0.15.9-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:d44a7d4586f02b630658298c089ff755e74d0677b93c71e09d33dd35bdd4987a"}, + {file = "pyzstd-0.15.9-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1cbf212253abd65e6451acdfb608adafe98ad8f05462fb9a054ddab816545caa"}, + {file = "pyzstd-0.15.9-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:5819d502dacd54114c30bc24efcb76e723b93f8f528be70851056a396a792c46"}, + {file = "pyzstd-0.15.9-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:50ccbaafee80b4f1c5c55bbe07f80871b9b8fe3499bf7357dde2c23fb1c2ac0e"}, + {file = "pyzstd-0.15.9-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7c420878726d677da7484f6021dbe7e1f9345a791b155de632c6ce36678fb621"}, + {file = "pyzstd-0.15.9-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:14121a4d95070f54bdc9a80dab1dd8fd9093907a1e687926447ca69b5b40a4d5"}, + {file = "pyzstd-0.15.9-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:00c188704141c709da96cc4a79f058d51f5318e839d6f904c7cc9badcf78e98e"}, + {file = "pyzstd-0.15.9-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:836f1d85a4b5d3689d455aeb1dc6c42acb96aaf8e5282825c00ccf2545ad5630"}, + {file = "pyzstd-0.15.9-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:91453ce9476363d777b2ea2e9c6dccecd2073cf35697e048de2e8d47e1f36c7c"}, + {file = "pyzstd-0.15.9-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:c249741b10eb714578d765487b767e0e7fcc2ac84a299209a6073566e730dbea"}, + {file = "pyzstd-0.15.9-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:542808d88464d538f5d2c6b48b545a7fe15f0d20c7fa703b469d039a08c9fa10"}, + {file = "pyzstd-0.15.9-cp311-cp311-win32.whl", hash = "sha256:e79babb67b415aa54abb213897ceaa011515a5f3e146a2a97f4e6486b9743af4"}, + {file = "pyzstd-0.15.9-cp311-cp311-win_amd64.whl", hash = "sha256:ef3399e0544b46d31c2a8ff14ae1fb3c3571ae1153bbbc5ddf0d242c67bde624"}, + {file = "pyzstd-0.15.9-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:cd6a8d43a0c294918e3afb7e4b1d8c04d2e4c3ea9ddf05475fdaf366c7e5b3a6"}, + {file = "pyzstd-0.15.9-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5aed5fc86d0bfc5f16e871cbb35ec93df61476d7fde4c1c6081015a075ecfbc1"}, + {file = "pyzstd-0.15.9-cp36-cp36m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:8f9eb97fb6fd4551ff9d5012b4fcee9abeea9c8af6b9e3ebc3c76cc2bd0a43a7"}, + {file = "pyzstd-0.15.9-cp36-cp36m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:5fd7cf79949174d1018b896638f88aea1ff2a969f87a6199ea23b25b506e26c5"}, + {file = "pyzstd-0.15.9-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:51607d7d44f94a364ef0e3ccf9a92390def0faf6e7572eef082f15c657b5d03a"}, + {file = "pyzstd-0.15.9-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:4358dd80b315c82d760b44c6df7857c9c898d04e7b0c14abb0eb3692354e9379"}, + {file = "pyzstd-0.15.9-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:013321ddaff083b24e43a8b06303446771978343b488ed73adf56c70a46e2783"}, + {file = "pyzstd-0.15.9-cp36-cp36m-musllinux_1_1_aarch64.whl", hash = "sha256:4ed01beb31d5177456ec2c4b66591a0df83dbc72df29f05f40502bfefe47bbe4"}, + {file = "pyzstd-0.15.9-cp36-cp36m-musllinux_1_1_i686.whl", hash = "sha256:69f12ce4866a3725138e97f22f2c4cb21d3ae18cd422906cd57ed12a9ffd86c5"}, + {file = "pyzstd-0.15.9-cp36-cp36m-musllinux_1_1_ppc64le.whl", hash = "sha256:305c232462dbe80d0ee5ec91b1b0ec9153ec6ba6393d5348741af5d30b07ef52"}, + {file = "pyzstd-0.15.9-cp36-cp36m-musllinux_1_1_s390x.whl", hash = "sha256:9e1097d8b57f64878a3f176f4cd6b9a1bbe9fb2d236f1a85a4357722626d8f25"}, + {file = "pyzstd-0.15.9-cp36-cp36m-musllinux_1_1_x86_64.whl", hash = "sha256:6c456882baab2a48a5bfabe458a557af25d0768ff29acbe200461e84c0f697d5"}, + {file = "pyzstd-0.15.9-cp36-cp36m-win32.whl", hash = "sha256:97e05f66c5847e6889594508298d78ddb84a0115e9234d598415dc5a06d3a4a7"}, + {file = "pyzstd-0.15.9-cp36-cp36m-win_amd64.whl", hash = "sha256:87a1a4ca93da414f3b6da8131e61aca6d48a4e837fb0b1cbde05ae9d13332317"}, + {file = "pyzstd-0.15.9-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:20f2dd56d46441cd9277077060c34c0b9ce3469412665ea5ccd506dd2708d994"}, + {file = "pyzstd-0.15.9-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f9c5fc29a5b9d61a8f0a3494172107e0e6cf23d0cb800d6285c6722ba7fc3535"}, + {file = "pyzstd-0.15.9-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:6f281cc2f096530c339f122e0d9866545f5592dd9bffe0fade565c2771130a45"}, + {file = "pyzstd-0.15.9-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b2dd39e12f7467a7422ce50711524759d4d22016714cbae6a7096b954bc2fa32"}, + {file = "pyzstd-0.15.9-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8d3a1b6fa71a0ae7abc320d9db91b5a96a71eef1dbee0d62a6232b71c97af962"}, + {file = "pyzstd-0.15.9-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c31f6dd5bd60688d51487a3f5e2ae29ed1948926e44d7a2316b193b083f80d5d"}, + {file = "pyzstd-0.15.9-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:dcb2172ca8b62f82af9d1f8db80c21c64c5ba3991935caefde88bb378f0afb51"}, + {file = "pyzstd-0.15.9-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:f66790e4b2dcfcabc0aa54dd89317ea5671cabf06aa93cbef7cbdd4d2fdb7ee3"}, + {file = "pyzstd-0.15.9-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:960ab83a977a44284c4ffab2820ccd6c9b332571a3d622fefa4b29b0a5de72b0"}, + {file = "pyzstd-0.15.9-cp37-cp37m-musllinux_1_1_ppc64le.whl", hash = "sha256:12668ceb8329aaa908b4d907d3a77bb748ff28b309c3b105c995a8715d535d2b"}, + {file = "pyzstd-0.15.9-cp37-cp37m-musllinux_1_1_s390x.whl", hash = "sha256:441078bfd3b508597415338af667c3575980364f1286eedde58291558b9c2832"}, + {file = "pyzstd-0.15.9-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:866ba6ce85f337fa1677516217b6f10fc25e19acb6e17a501d5822e66396bdd5"}, + {file = "pyzstd-0.15.9-cp37-cp37m-win32.whl", hash = "sha256:b4de7741d542a477387299bf9450e8be3e768c352d6b3438254eb02af1e59462"}, + {file = "pyzstd-0.15.9-cp37-cp37m-win_amd64.whl", hash = "sha256:d0929302d187bfeca335b7f710f774f1b2ea3f610b2a80e8a1ac2da216cd9766"}, + {file = "pyzstd-0.15.9-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:c46e77c2ad614a0399503dc675d72436cbf6332a20d49a0e5bad03058d6cbfad"}, + {file = "pyzstd-0.15.9-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:e789e19095b818f7126180b4387c0f01700c3ad2378a4e7649b2ddf4bf47ffbc"}, + {file = "pyzstd-0.15.9-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9596aeb8c71192f4fba1ca25cec420da195219398d2df811d5082559efd9561f"}, + {file = "pyzstd-0.15.9-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:3f72f310b10b730cddfb654006ae497e7706c81e6a7642d3da7fd2439df7d88d"}, + {file = "pyzstd-0.15.9-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:6a60ee6836599363a24367cf780ad45446b07eba49ec72d19bad761d5414aca7"}, + {file = "pyzstd-0.15.9-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:aff1b469187f6c789cdf17cd95c9b24e87396dc86953b1cf38b9a05cea873c80"}, + {file = "pyzstd-0.15.9-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:5d9ec8634ab0cbfbcff535ac07555ebdae0282ad66762f0471fad11c16181e33"}, + {file = "pyzstd-0.15.9-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:fc92a718bccb8ce5c9eb63fca743c38f3fa4c4e47f58f0c4ada51b2474668184"}, + {file = "pyzstd-0.15.9-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:f2839c13e486e4a23b19b1d2dc4624565cec6c228bbf803c066be1106515966b"}, + {file = "pyzstd-0.15.9-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:346f835e368e1051f8ea187ad9b49759cf6249c9ebf2f2a3861e435a568104b8"}, + {file = "pyzstd-0.15.9-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:5345c7a697327e2fa7c37534bb2968ea84595d8ec7fc8c4a60216ec1be6e65bd"}, + {file = "pyzstd-0.15.9-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:49c57ae18f138a4b66480b2364fe6a0f2345ada919e93fc729c95c6b17ec73a4"}, + {file = "pyzstd-0.15.9-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:2919afd114fd12309ed2f831ef6e95730ebf13c2a92d258ad055769d00ef4d7a"}, + {file = "pyzstd-0.15.9-cp38-cp38-win32.whl", hash = "sha256:370b34a7c2f9c53cee494028daa5a7264690e1756a89c3855fd0be5ad298ec30"}, + {file = "pyzstd-0.15.9-cp38-cp38-win_amd64.whl", hash = "sha256:7ac886e04f253960ae82e38ded8352085c61d78de99412d178a94ecf475b5e5f"}, + {file = "pyzstd-0.15.9-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:250dad90140a6faea4cef555f339b6ceaad5cf03ed1127b8d06de214ff0db2e7"}, + {file = "pyzstd-0.15.9-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:b5b517fbbc5d223fc36041673e7c2a0d3a82be6a5464a5f0599069330b76f97d"}, + {file = "pyzstd-0.15.9-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9ac634753f6d26cba503cea7bb5b350aec7c5366f44fa68c79e9c90be9fd0ebc"}, + {file = "pyzstd-0.15.9-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b2ae8993f3863632d31ca8921c8a5dc9ecc5551c7b88895cefb5a26d17643391"}, + {file = "pyzstd-0.15.9-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:7452ae7e6d80e697d78d3f56d1b4d2a350286eea229afb35f55ab88b934b6acd"}, + {file = "pyzstd-0.15.9-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ae3d0575721a372c20130681bfaf873225fd9e1c290b7d56b7e0c14f413318f6"}, + {file = "pyzstd-0.15.9-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:29e452caaf0de9cc17319225921d8c28cdc7a879948e990ff1e7735e7f976517"}, + {file = "pyzstd-0.15.9-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:c41e5457f4de5d38a270bc44619873589bbe6fe251225deec583ed20199df0f3"}, + {file = "pyzstd-0.15.9-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:f169e166774587227255f6ffe71f5b3303ea73cde0e2c6d52e53b9e12c03d787"}, + {file = "pyzstd-0.15.9-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:639935b5b3d9ed3911493504581254b76cb578279302f7f340924ac5bfca4090"}, + {file = "pyzstd-0.15.9-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:e4e00c1600022b47ef0e9e1f893cb0c2322209ec6c1581a3e3f63ed78330ddf0"}, + {file = "pyzstd-0.15.9-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:d7ddbf234c9adc72189bb552d830e9a0c2c4401b5baf7b003eacd5c552ddcc00"}, + {file = "pyzstd-0.15.9-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:3351ad2feb51dcbb936defd47cab00d6f114214f224636503ed08298f30164c9"}, + {file = "pyzstd-0.15.9-cp39-cp39-win32.whl", hash = "sha256:3bc0e7e2cccf78e562ab416daf68448b6552a5b6450a1ff3e15cabfc19254883"}, + {file = "pyzstd-0.15.9-cp39-cp39-win_amd64.whl", hash = "sha256:40bdb468281a5cd525e2e990b97344f0974e0589bd1b395501c25471fcd7edda"}, + {file = "pyzstd-0.15.9-pp310-pypy310_pp73-macosx_10_9_x86_64.whl", hash = "sha256:c9589cb79d4e401630481755c92b072aa7ba5505ec81dec865ef43932ec037e4"}, + {file = "pyzstd-0.15.9-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3a26df749589d898cd3253d2139eb85b867ddffc49286059c8bdb3cb9ce9b545"}, + {file = "pyzstd-0.15.9-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e9934277abdddf9c733267e4dcc4886de8a3302d28f390237d447e215e8ce47d"}, + {file = "pyzstd-0.15.9-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ca19213785f864781848e0216cba07e97f563f60a50bbc7885b54461d8c64873"}, + {file = "pyzstd-0.15.9-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:84aa6eecba967bdac167451501dcaceec548d8b8c4ca7fa41ceda4dbfc279297"}, + {file = "pyzstd-0.15.9-pp37-pypy37_pp73-macosx_10_9_x86_64.whl", hash = "sha256:47c2a4c319300c381f194274203f47b12c433e1fd86b90ecdc7fb258c630f93b"}, + {file = "pyzstd-0.15.9-pp37-pypy37_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:86e0e65e205793b337d62d9764700dfd02b5f83b01e26ad345736e7ac0554ebd"}, + {file = "pyzstd-0.15.9-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:64564f4c175c5bb8e744de5816d69ee0b940e472160a5e665f30adc412b694f3"}, + {file = "pyzstd-0.15.9-pp37-pypy37_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:dca286c6c1ca5febf13f5f2ae7e8aa7536e49bd07f4232796651a43ff741ceca"}, + {file = "pyzstd-0.15.9-pp37-pypy37_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:a594795ef89bd83297c860ff585f2d25580ce9805eb9cc44c831d311e7f1951a"}, + {file = "pyzstd-0.15.9-pp37-pypy37_pp73-win_amd64.whl", hash = "sha256:4a0dcb32ac4d1d67a77ae6a2d60ea0921af7e682b3427202d8acb8e86642391c"}, + {file = "pyzstd-0.15.9-pp38-pypy38_pp73-macosx_10_9_x86_64.whl", hash = "sha256:a90b901ccfd24b028faea19c927ff03f3cfefe82ba0b931fbb8da4ef0664911b"}, + {file = "pyzstd-0.15.9-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:31f60f01884350aec24e7a68f3ad089151b7a636490203c41a1a7c8e0cddd9b8"}, + {file = "pyzstd-0.15.9-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f1d8b58f00137ccbe8b828a5ede92be3f0115cef75e6bed88d4d0bd1e7a0b1fc"}, + {file = "pyzstd-0.15.9-pp38-pypy38_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c2b093a74b10232c70b5d29814fcee6544bb6f30e2d922d26db9ab4b4cd00c04"}, + {file = "pyzstd-0.15.9-pp38-pypy38_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:1dbe76b6d8fe75f6dbec24793fc07b1d1ae9464de9941138d5b9668f7670e6b0"}, + {file = "pyzstd-0.15.9-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:6b9af8d62c087354abd071e01d9445ea51b31779c8a4a0d5c14ee12caee3d18f"}, + {file = "pyzstd-0.15.9-pp39-pypy39_pp73-macosx_10_9_x86_64.whl", hash = "sha256:a4f786f1b1ab39a0908db04ebe5b2c7cbc6f1ce07a27d3a12eb980bffd7fea7d"}, + {file = "pyzstd-0.15.9-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:cffaab46f9e04856dc3daa6097bfb3d3bea0b1771237e869c57b13f3dcc2c238"}, + {file = "pyzstd-0.15.9-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0a4334e972109bdd17fb40dbdd9fcca6137648cab416fca505a2dcd186f50533"}, + {file = "pyzstd-0.15.9-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:73877eebbdcb8259cf0099665f8c8274d4273b361371405a611fb6bd9f4d64f6"}, + {file = "pyzstd-0.15.9-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:289e25871fe232d2482c0985a75a1faa7c92e10a6c3e3914d165f62d005d0aa6"}, + {file = "pyzstd-0.15.9.tar.gz", hash = "sha256:cbfdde6c5768ffa5d2f14127bbc1d7c3c2d03c0ceaeb0736946197e06275ccc7"}, +] + +[[package]] +name = "referencing" +version = "0.30.2" +description = "JSON Referencing + Python" +optional = false +python-versions = ">=3.8" +files = [ + {file = "referencing-0.30.2-py3-none-any.whl", hash = "sha256:449b6669b6121a9e96a7f9e410b245d471e8d48964c67113ce9afe50c8dd7bdf"}, + {file = "referencing-0.30.2.tar.gz", hash = "sha256:794ad8003c65938edcdbc027f1933215e0d0ccc0291e3ce20a4d87432b59efc0"}, +] + +[package.dependencies] +attrs = ">=22.2.0" +rpds-py = ">=0.7.0" + +[[package]] +name = "regex" +version = "2023.8.8" +description = "Alternative regular expression module, to replace re." +optional = false +python-versions = ">=3.6" +files = [ + {file = "regex-2023.8.8-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:88900f521c645f784260a8d346e12a1590f79e96403971241e64c3a265c8ecdb"}, + {file = "regex-2023.8.8-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:3611576aff55918af2697410ff0293d6071b7e00f4b09e005d614686ac4cd57c"}, + {file = "regex-2023.8.8-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b8a0ccc8f2698f120e9e5742f4b38dc944c38744d4bdfc427616f3a163dd9de5"}, + {file = "regex-2023.8.8-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:c662a4cbdd6280ee56f841f14620787215a171c4e2d1744c9528bed8f5816c96"}, + {file = "regex-2023.8.8-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:cf0633e4a1b667bfe0bb10b5e53fe0d5f34a6243ea2530eb342491f1adf4f739"}, + {file = "regex-2023.8.8-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:551ad543fa19e94943c5b2cebc54c73353ffff08228ee5f3376bd27b3d5b9800"}, + {file = "regex-2023.8.8-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:54de2619f5ea58474f2ac211ceea6b615af2d7e4306220d4f3fe690c91988a61"}, + {file = "regex-2023.8.8-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:5ec4b3f0aebbbe2fc0134ee30a791af522a92ad9f164858805a77442d7d18570"}, + {file = "regex-2023.8.8-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:3ae646c35cb9f820491760ac62c25b6d6b496757fda2d51be429e0e7b67ae0ab"}, + {file = "regex-2023.8.8-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:ca339088839582d01654e6f83a637a4b8194d0960477b9769d2ff2cfa0fa36d2"}, + {file = "regex-2023.8.8-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:d9b6627408021452dcd0d2cdf8da0534e19d93d070bfa8b6b4176f99711e7f90"}, + {file = "regex-2023.8.8-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:bd3366aceedf274f765a3a4bc95d6cd97b130d1dda524d8f25225d14123c01db"}, + {file = "regex-2023.8.8-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:7aed90a72fc3654fba9bc4b7f851571dcc368120432ad68b226bd593f3f6c0b7"}, + {file = "regex-2023.8.8-cp310-cp310-win32.whl", hash = "sha256:80b80b889cb767cc47f31d2b2f3dec2db8126fbcd0cff31b3925b4dc6609dcdb"}, + {file = "regex-2023.8.8-cp310-cp310-win_amd64.whl", hash = "sha256:b82edc98d107cbc7357da7a5a695901b47d6eb0420e587256ba3ad24b80b7d0b"}, + {file = "regex-2023.8.8-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:1e7d84d64c84ad97bf06f3c8cb5e48941f135ace28f450d86af6b6512f1c9a71"}, + {file = "regex-2023.8.8-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:ce0f9fbe7d295f9922c0424a3637b88c6c472b75eafeaff6f910494a1fa719ef"}, + {file = "regex-2023.8.8-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:06c57e14ac723b04458df5956cfb7e2d9caa6e9d353c0b4c7d5d54fcb1325c46"}, + {file = "regex-2023.8.8-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:e7a9aaa5a1267125eef22cef3b63484c3241aaec6f48949b366d26c7250e0357"}, + {file = "regex-2023.8.8-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:9b7408511fca48a82a119d78a77c2f5eb1b22fe88b0d2450ed0756d194fe7a9a"}, + {file = "regex-2023.8.8-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:14dc6f2d88192a67d708341f3085df6a4f5a0c7b03dec08d763ca2cd86e9f559"}, + {file = "regex-2023.8.8-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:48c640b99213643d141550326f34f0502fedb1798adb3c9eb79650b1ecb2f177"}, + {file = "regex-2023.8.8-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:0085da0f6c6393428bf0d9c08d8b1874d805bb55e17cb1dfa5ddb7cfb11140bf"}, + {file = "regex-2023.8.8-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:964b16dcc10c79a4a2be9f1273fcc2684a9eedb3906439720598029a797b46e6"}, + {file = "regex-2023.8.8-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:7ce606c14bb195b0e5108544b540e2c5faed6843367e4ab3deb5c6aa5e681208"}, + {file = "regex-2023.8.8-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:40f029d73b10fac448c73d6eb33d57b34607f40116e9f6e9f0d32e9229b147d7"}, + {file = "regex-2023.8.8-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:3b8e6ea6be6d64104d8e9afc34c151926f8182f84e7ac290a93925c0db004bfd"}, + {file = "regex-2023.8.8-cp311-cp311-win32.whl", hash = "sha256:942f8b1f3b223638b02df7df79140646c03938d488fbfb771824f3d05fc083a8"}, + {file = "regex-2023.8.8-cp311-cp311-win_amd64.whl", hash = "sha256:51d8ea2a3a1a8fe4f67de21b8b93757005213e8ac3917567872f2865185fa7fb"}, + {file = "regex-2023.8.8-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:e951d1a8e9963ea51efd7f150450803e3b95db5939f994ad3d5edac2b6f6e2b4"}, + {file = "regex-2023.8.8-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:704f63b774218207b8ccc6c47fcef5340741e5d839d11d606f70af93ee78e4d4"}, + {file = "regex-2023.8.8-cp36-cp36m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:22283c769a7b01c8ac355d5be0715bf6929b6267619505e289f792b01304d898"}, + {file = "regex-2023.8.8-cp36-cp36m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:91129ff1bb0619bc1f4ad19485718cc623a2dc433dff95baadbf89405c7f6b57"}, + {file = "regex-2023.8.8-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:de35342190deb7b866ad6ba5cbcccb2d22c0487ee0cbb251efef0843d705f0d4"}, + {file = "regex-2023.8.8-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:b993b6f524d1e274a5062488a43e3f9f8764ee9745ccd8e8193df743dbe5ee61"}, + {file = "regex-2023.8.8-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:3026cbcf11d79095a32d9a13bbc572a458727bd5b1ca332df4a79faecd45281c"}, + {file = "regex-2023.8.8-cp36-cp36m-musllinux_1_1_aarch64.whl", hash = "sha256:293352710172239bf579c90a9864d0df57340b6fd21272345222fb6371bf82b3"}, + {file = "regex-2023.8.8-cp36-cp36m-musllinux_1_1_i686.whl", hash = "sha256:d909b5a3fff619dc7e48b6b1bedc2f30ec43033ba7af32f936c10839e81b9217"}, + {file = "regex-2023.8.8-cp36-cp36m-musllinux_1_1_ppc64le.whl", hash = "sha256:3d370ff652323c5307d9c8e4c62efd1956fb08051b0e9210212bc51168b4ff56"}, + {file = "regex-2023.8.8-cp36-cp36m-musllinux_1_1_s390x.whl", hash = "sha256:b076da1ed19dc37788f6a934c60adf97bd02c7eea461b73730513921a85d4235"}, + {file = "regex-2023.8.8-cp36-cp36m-musllinux_1_1_x86_64.whl", hash = "sha256:e9941a4ada58f6218694f382e43fdd256e97615db9da135e77359da257a7168b"}, + {file = "regex-2023.8.8-cp36-cp36m-win32.whl", hash = "sha256:a8c65c17aed7e15a0c824cdc63a6b104dfc530f6fa8cb6ac51c437af52b481c7"}, + {file = "regex-2023.8.8-cp36-cp36m-win_amd64.whl", hash = "sha256:aadf28046e77a72f30dcc1ab185639e8de7f4104b8cb5c6dfa5d8ed860e57236"}, + {file = "regex-2023.8.8-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:423adfa872b4908843ac3e7a30f957f5d5282944b81ca0a3b8a7ccbbfaa06103"}, + {file = "regex-2023.8.8-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4ae594c66f4a7e1ea67232a0846649a7c94c188d6c071ac0210c3e86a5f92109"}, + {file = "regex-2023.8.8-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:e51c80c168074faa793685656c38eb7a06cbad7774c8cbc3ea05552d615393d8"}, + {file = "regex-2023.8.8-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:09b7f4c66aa9d1522b06e31a54f15581c37286237208df1345108fcf4e050c18"}, + {file = "regex-2023.8.8-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2e73e5243af12d9cd6a9d6a45a43570dbe2e5b1cdfc862f5ae2b031e44dd95a8"}, + {file = "regex-2023.8.8-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:941460db8fe3bd613db52f05259c9336f5a47ccae7d7def44cc277184030a116"}, + {file = "regex-2023.8.8-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:f0ccf3e01afeb412a1a9993049cb160d0352dba635bbca7762b2dc722aa5742a"}, + {file = "regex-2023.8.8-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:2e9216e0d2cdce7dbc9be48cb3eacb962740a09b011a116fd7af8c832ab116ca"}, + {file = "regex-2023.8.8-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:5cd9cd7170459b9223c5e592ac036e0704bee765706445c353d96f2890e816c8"}, + {file = "regex-2023.8.8-cp37-cp37m-musllinux_1_1_ppc64le.whl", hash = "sha256:4873ef92e03a4309b3ccd8281454801b291b689f6ad45ef8c3658b6fa761d7ac"}, + {file = "regex-2023.8.8-cp37-cp37m-musllinux_1_1_s390x.whl", hash = "sha256:239c3c2a339d3b3ddd51c2daef10874410917cd2b998f043c13e2084cb191684"}, + {file = "regex-2023.8.8-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:1005c60ed7037be0d9dea1f9c53cc42f836188227366370867222bda4c3c6bd7"}, + {file = "regex-2023.8.8-cp37-cp37m-win32.whl", hash = "sha256:e6bd1e9b95bc5614a7a9c9c44fde9539cba1c823b43a9f7bc11266446dd568e3"}, + {file = "regex-2023.8.8-cp37-cp37m-win_amd64.whl", hash = "sha256:9a96edd79661e93327cfeac4edec72a4046e14550a1d22aa0dd2e3ca52aec921"}, + {file = "regex-2023.8.8-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:f2181c20ef18747d5f4a7ea513e09ea03bdd50884a11ce46066bb90fe4213675"}, + {file = "regex-2023.8.8-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:a2ad5add903eb7cdde2b7c64aaca405f3957ab34f16594d2b78d53b8b1a6a7d6"}, + {file = "regex-2023.8.8-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9233ac249b354c54146e392e8a451e465dd2d967fc773690811d3a8c240ac601"}, + {file = "regex-2023.8.8-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:920974009fb37b20d32afcdf0227a2e707eb83fe418713f7a8b7de038b870d0b"}, + {file = "regex-2023.8.8-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:cd2b6c5dfe0929b6c23dde9624483380b170b6e34ed79054ad131b20203a1a63"}, + {file = "regex-2023.8.8-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:96979d753b1dc3b2169003e1854dc67bfc86edf93c01e84757927f810b8c3c93"}, + {file = "regex-2023.8.8-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:2ae54a338191e1356253e7883d9d19f8679b6143703086245fb14d1f20196be9"}, + {file = "regex-2023.8.8-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:2162ae2eb8b079622176a81b65d486ba50b888271302190870b8cc488587d280"}, + {file = "regex-2023.8.8-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:c884d1a59e69e03b93cf0dfee8794c63d7de0ee8f7ffb76e5f75be8131b6400a"}, + {file = "regex-2023.8.8-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:cf9273e96f3ee2ac89ffcb17627a78f78e7516b08f94dc435844ae72576a276e"}, + {file = "regex-2023.8.8-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:83215147121e15d5f3a45d99abeed9cf1fe16869d5c233b08c56cdf75f43a504"}, + {file = "regex-2023.8.8-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:3f7454aa427b8ab9101f3787eb178057c5250478e39b99540cfc2b889c7d0586"}, + {file = "regex-2023.8.8-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:f0640913d2c1044d97e30d7c41728195fc37e54d190c5385eacb52115127b882"}, + {file = "regex-2023.8.8-cp38-cp38-win32.whl", hash = "sha256:0c59122ceccb905a941fb23b087b8eafc5290bf983ebcb14d2301febcbe199c7"}, + {file = "regex-2023.8.8-cp38-cp38-win_amd64.whl", hash = "sha256:c12f6f67495ea05c3d542d119d270007090bad5b843f642d418eb601ec0fa7be"}, + {file = "regex-2023.8.8-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:82cd0a69cd28f6cc3789cc6adeb1027f79526b1ab50b1f6062bbc3a0ccb2dbc3"}, + {file = "regex-2023.8.8-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:bb34d1605f96a245fc39790a117ac1bac8de84ab7691637b26ab2c5efb8f228c"}, + {file = "regex-2023.8.8-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:987b9ac04d0b38ef4f89fbc035e84a7efad9cdd5f1e29024f9289182c8d99e09"}, + {file = "regex-2023.8.8-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9dd6082f4e2aec9b6a0927202c85bc1b09dcab113f97265127c1dc20e2e32495"}, + {file = "regex-2023.8.8-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:7eb95fe8222932c10d4436e7a6f7c99991e3fdd9f36c949eff16a69246dee2dc"}, + {file = "regex-2023.8.8-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7098c524ba9f20717a56a8d551d2ed491ea89cbf37e540759ed3b776a4f8d6eb"}, + {file = "regex-2023.8.8-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:4b694430b3f00eb02c594ff5a16db30e054c1b9589a043fe9174584c6efa8033"}, + {file = "regex-2023.8.8-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:b2aeab3895d778155054abea5238d0eb9a72e9242bd4b43f42fd911ef9a13470"}, + {file = "regex-2023.8.8-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:988631b9d78b546e284478c2ec15c8a85960e262e247b35ca5eaf7ee22f6050a"}, + {file = "regex-2023.8.8-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:67ecd894e56a0c6108ec5ab1d8fa8418ec0cff45844a855966b875d1039a2e34"}, + {file = "regex-2023.8.8-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:14898830f0a0eb67cae2bbbc787c1a7d6e34ecc06fbd39d3af5fe29a4468e2c9"}, + {file = "regex-2023.8.8-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:f2200e00b62568cfd920127782c61bc1c546062a879cdc741cfcc6976668dfcf"}, + {file = "regex-2023.8.8-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:9691a549c19c22d26a4f3b948071e93517bdf86e41b81d8c6ac8a964bb71e5a6"}, + {file = "regex-2023.8.8-cp39-cp39-win32.whl", hash = "sha256:6ab2ed84bf0137927846b37e882745a827458689eb969028af8032b1b3dac78e"}, + {file = "regex-2023.8.8-cp39-cp39-win_amd64.whl", hash = "sha256:5543c055d8ec7801901e1193a51570643d6a6ab8751b1f7dd9af71af467538bb"}, + {file = "regex-2023.8.8.tar.gz", hash = "sha256:fcbdc5f2b0f1cd0f6a56cdb46fe41d2cce1e644e3b68832f3eeebc5fb0f7712e"}, +] + +[[package]] +name = "requests" +version = "2.31.0" +description = "Python HTTP for Humans." +optional = false +python-versions = ">=3.7" +files = [ + {file = "requests-2.31.0-py3-none-any.whl", hash = "sha256:58cd2187c01e70e6e26505bca751777aa9f2ee0b7f4300988b709f44e013003f"}, + {file = "requests-2.31.0.tar.gz", hash = "sha256:942c5a758f98d790eaed1a29cb6eefc7ffb0d1cf7af05c3d2791656dbd6ad1e1"}, +] + +[package.dependencies] +certifi = ">=2017.4.17" +charset-normalizer = ">=2,<4" +idna = ">=2.5,<4" +urllib3 = ">=1.21.1,<3" + +[package.extras] +socks = ["PySocks (>=1.5.6,!=1.5.7)"] +use-chardet-on-py3 = ["chardet (>=3.0.2,<6)"] + +[[package]] +name = "rfc3339-validator" +version = "0.1.4" +description = "A pure python RFC3339 validator" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" +files = [ + {file = "rfc3339_validator-0.1.4-py2.py3-none-any.whl", hash = "sha256:24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa"}, + {file = "rfc3339_validator-0.1.4.tar.gz", hash = "sha256:138a2abdf93304ad60530167e51d2dfb9549521a836871b88d7f4695d0022f6b"}, +] + +[package.dependencies] +six = "*" + +[[package]] +name = "rfc3986-validator" +version = "0.1.1" +description = "Pure python rfc3986 validator" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" +files = [ + {file = "rfc3986_validator-0.1.1-py2.py3-none-any.whl", hash = "sha256:2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9"}, + {file = "rfc3986_validator-0.1.1.tar.gz", hash = "sha256:3d44bde7921b3b9ec3ae4e3adca370438eccebc676456449b145d533b240d055"}, +] + +[[package]] +name = "rpds-py" +version = "0.10.3" +description = "Python bindings to Rust's persistent data structures (rpds)" +optional = false +python-versions = ">=3.8" +files = [ + {file = "rpds_py-0.10.3-cp310-cp310-macosx_10_7_x86_64.whl", hash = "sha256:485747ee62da83366a44fbba963c5fe017860ad408ccd6cd99aa66ea80d32b2e"}, + {file = "rpds_py-0.10.3-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:c55f9821f88e8bee4b7a72c82cfb5ecd22b6aad04033334f33c329b29bfa4da0"}, + {file = "rpds_py-0.10.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d3b52a67ac66a3a64a7e710ba629f62d1e26ca0504c29ee8cbd99b97df7079a8"}, + {file = "rpds_py-0.10.3-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:3aed39db2f0ace76faa94f465d4234aac72e2f32b009f15da6492a561b3bbebd"}, + {file = "rpds_py-0.10.3-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:271c360fdc464fe6a75f13ea0c08ddf71a321f4c55fc20a3fe62ea3ef09df7d9"}, + {file = "rpds_py-0.10.3-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ef5fddfb264e89c435be4adb3953cef5d2936fdeb4463b4161a6ba2f22e7b740"}, + {file = "rpds_py-0.10.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a771417c9c06c56c9d53d11a5b084d1de75de82978e23c544270ab25e7c066ff"}, + {file = "rpds_py-0.10.3-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:52b5cbc0469328e58180021138207e6ec91d7ca2e037d3549cc9e34e2187330a"}, + {file = "rpds_py-0.10.3-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:6ac3fefb0d168c7c6cab24fdfc80ec62cd2b4dfd9e65b84bdceb1cb01d385c33"}, + {file = "rpds_py-0.10.3-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:8d54bbdf5d56e2c8cf81a1857250f3ea132de77af543d0ba5dce667183b61fec"}, + {file = "rpds_py-0.10.3-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:cd2163f42868865597d89399a01aa33b7594ce8e2c4a28503127c81a2f17784e"}, + {file = "rpds_py-0.10.3-cp310-none-win32.whl", hash = "sha256:ea93163472db26ac6043e8f7f93a05d9b59e0505c760da2a3cd22c7dd7111391"}, + {file = "rpds_py-0.10.3-cp310-none-win_amd64.whl", hash = "sha256:7cd020b1fb41e3ab7716d4d2c3972d4588fdfbab9bfbbb64acc7078eccef8860"}, + {file = "rpds_py-0.10.3-cp311-cp311-macosx_10_7_x86_64.whl", hash = "sha256:1d9b5ee46dcb498fa3e46d4dfabcb531e1f2e76b477e0d99ef114f17bbd38453"}, + {file = "rpds_py-0.10.3-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:563646d74a4b4456d0cf3b714ca522e725243c603e8254ad85c3b59b7c0c4bf0"}, + {file = "rpds_py-0.10.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e626b864725680cd3904414d72e7b0bd81c0e5b2b53a5b30b4273034253bb41f"}, + {file = "rpds_py-0.10.3-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:485301ee56ce87a51ccb182a4b180d852c5cb2b3cb3a82f7d4714b4141119d8c"}, + {file = "rpds_py-0.10.3-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:42f712b4668831c0cd85e0a5b5a308700fe068e37dcd24c0062904c4e372b093"}, + {file = "rpds_py-0.10.3-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:6c9141af27a4e5819d74d67d227d5047a20fa3c7d4d9df43037a955b4c748ec5"}, + {file = "rpds_py-0.10.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ef750a20de1b65657a1425f77c525b0183eac63fe7b8f5ac0dd16f3668d3e64f"}, + {file = "rpds_py-0.10.3-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:e1a0ffc39f51aa5f5c22114a8f1906b3c17eba68c5babb86c5f77d8b1bba14d1"}, + {file = "rpds_py-0.10.3-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:f4c179a7aeae10ddf44c6bac87938134c1379c49c884529f090f9bf05566c836"}, + {file = "rpds_py-0.10.3-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:176287bb998fd1e9846a9b666e240e58f8d3373e3bf87e7642f15af5405187b8"}, + {file = "rpds_py-0.10.3-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:6446002739ca29249f0beaaf067fcbc2b5aab4bc7ee8fb941bd194947ce19aff"}, + {file = "rpds_py-0.10.3-cp311-none-win32.whl", hash = "sha256:c7aed97f2e676561416c927b063802c8a6285e9b55e1b83213dfd99a8f4f9e48"}, + {file = "rpds_py-0.10.3-cp311-none-win_amd64.whl", hash = "sha256:8bd01ff4032abaed03f2db702fa9a61078bee37add0bd884a6190b05e63b028c"}, + {file = "rpds_py-0.10.3-cp312-cp312-macosx_10_7_x86_64.whl", hash = "sha256:4cf0855a842c5b5c391dd32ca273b09e86abf8367572073bd1edfc52bc44446b"}, + {file = "rpds_py-0.10.3-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:69b857a7d8bd4f5d6e0db4086da8c46309a26e8cefdfc778c0c5cc17d4b11e08"}, + {file = "rpds_py-0.10.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:975382d9aa90dc59253d6a83a5ca72e07f4ada3ae3d6c0575ced513db322b8ec"}, + {file = "rpds_py-0.10.3-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:35fbd23c1c8732cde7a94abe7fb071ec173c2f58c0bd0d7e5b669fdfc80a2c7b"}, + {file = "rpds_py-0.10.3-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:106af1653007cc569d5fbb5f08c6648a49fe4de74c2df814e234e282ebc06957"}, + {file = "rpds_py-0.10.3-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ce5e7504db95b76fc89055c7f41e367eaadef5b1d059e27e1d6eabf2b55ca314"}, + {file = "rpds_py-0.10.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5aca759ada6b1967fcfd4336dcf460d02a8a23e6abe06e90ea7881e5c22c4de6"}, + {file = "rpds_py-0.10.3-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:b5d4bdd697195f3876d134101c40c7d06d46c6ab25159ed5cbd44105c715278a"}, + {file = "rpds_py-0.10.3-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:a657250807b6efd19b28f5922520ae002a54cb43c2401e6f3d0230c352564d25"}, + {file = "rpds_py-0.10.3-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:177c9dd834cdf4dc39c27436ade6fdf9fe81484758885f2d616d5d03c0a83bd2"}, + {file = "rpds_py-0.10.3-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:e22491d25f97199fc3581ad8dd8ce198d8c8fdb8dae80dea3512e1ce6d5fa99f"}, + {file = "rpds_py-0.10.3-cp38-cp38-macosx_10_7_x86_64.whl", hash = "sha256:2f3e1867dd574014253b4b8f01ba443b9c914e61d45f3674e452a915d6e929a3"}, + {file = "rpds_py-0.10.3-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:c22211c165166de6683de8136229721f3d5c8606cc2c3d1562da9a3a5058049c"}, + {file = "rpds_py-0.10.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:40bc802a696887b14c002edd43c18082cb7b6f9ee8b838239b03b56574d97f71"}, + {file = "rpds_py-0.10.3-cp38-cp38-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:5e271dd97c7bb8eefda5cca38cd0b0373a1fea50f71e8071376b46968582af9b"}, + {file = "rpds_py-0.10.3-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:95cde244e7195b2c07ec9b73fa4c5026d4a27233451485caa1cd0c1b55f26dbd"}, + {file = "rpds_py-0.10.3-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:08a80cf4884920863623a9ee9a285ee04cef57ebedc1cc87b3e3e0f24c8acfe5"}, + {file = "rpds_py-0.10.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:763ad59e105fca09705d9f9b29ecffb95ecdc3b0363be3bb56081b2c6de7977a"}, + {file = "rpds_py-0.10.3-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:187700668c018a7e76e89424b7c1042f317c8df9161f00c0c903c82b0a8cac5c"}, + {file = "rpds_py-0.10.3-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:5267cfda873ad62591b9332fd9472d2409f7cf02a34a9c9cb367e2c0255994bf"}, + {file = "rpds_py-0.10.3-cp38-cp38-musllinux_1_2_i686.whl", hash = "sha256:2ed83d53a8c5902ec48b90b2ac045e28e1698c0bea9441af9409fc844dc79496"}, + {file = "rpds_py-0.10.3-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:255f1a10ae39b52122cce26ce0781f7a616f502feecce9e616976f6a87992d6b"}, + {file = "rpds_py-0.10.3-cp38-none-win32.whl", hash = "sha256:a019a344312d0b1f429c00d49c3be62fa273d4a1094e1b224f403716b6d03be1"}, + {file = "rpds_py-0.10.3-cp38-none-win_amd64.whl", hash = "sha256:efb9ece97e696bb56e31166a9dd7919f8f0c6b31967b454718c6509f29ef6fee"}, + {file = "rpds_py-0.10.3-cp39-cp39-macosx_10_7_x86_64.whl", hash = "sha256:570cc326e78ff23dec7f41487aa9c3dffd02e5ee9ab43a8f6ccc3df8f9327623"}, + {file = "rpds_py-0.10.3-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:cff7351c251c7546407827b6a37bcef6416304fc54d12d44dbfecbb717064717"}, + {file = "rpds_py-0.10.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:177914f81f66c86c012311f8c7f46887ec375cfcfd2a2f28233a3053ac93a569"}, + {file = "rpds_py-0.10.3-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:448a66b8266de0b581246ca7cd6a73b8d98d15100fb7165974535fa3b577340e"}, + {file = "rpds_py-0.10.3-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:3bbac1953c17252f9cc675bb19372444aadf0179b5df575ac4b56faaec9f6294"}, + {file = "rpds_py-0.10.3-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:9dd9d9d9e898b9d30683bdd2b6c1849449158647d1049a125879cb397ee9cd12"}, + {file = "rpds_py-0.10.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e8c71ea77536149e36c4c784f6d420ffd20bea041e3ba21ed021cb40ce58e2c9"}, + {file = "rpds_py-0.10.3-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:16a472300bc6c83fe4c2072cc22b3972f90d718d56f241adabc7ae509f53f154"}, + {file = "rpds_py-0.10.3-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:b9255e7165083de7c1d605e818025e8860636348f34a79d84ec533546064f07e"}, + {file = "rpds_py-0.10.3-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:53d7a3cd46cdc1689296348cb05ffd4f4280035770aee0c8ead3bbd4d6529acc"}, + {file = "rpds_py-0.10.3-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:22da15b902f9f8e267020d1c8bcfc4831ca646fecb60254f7bc71763569f56b1"}, + {file = "rpds_py-0.10.3-cp39-none-win32.whl", hash = "sha256:850c272e0e0d1a5c5d73b1b7871b0a7c2446b304cec55ccdb3eaac0d792bb065"}, + {file = "rpds_py-0.10.3-cp39-none-win_amd64.whl", hash = "sha256:de61e424062173b4f70eec07e12469edde7e17fa180019a2a0d75c13a5c5dc57"}, + {file = "rpds_py-0.10.3-pp310-pypy310_pp73-macosx_10_7_x86_64.whl", hash = "sha256:af247fd4f12cca4129c1b82090244ea5a9d5bb089e9a82feb5a2f7c6a9fe181d"}, + {file = "rpds_py-0.10.3-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:3ad59efe24a4d54c2742929001f2d02803aafc15d6d781c21379e3f7f66ec842"}, + {file = "rpds_py-0.10.3-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:642ed0a209ced4be3a46f8cb094f2d76f1f479e2a1ceca6de6346a096cd3409d"}, + {file = "rpds_py-0.10.3-pp310-pypy310_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:37d0c59548ae56fae01c14998918d04ee0d5d3277363c10208eef8c4e2b68ed6"}, + {file = "rpds_py-0.10.3-pp310-pypy310_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:aad6ed9e70ddfb34d849b761fb243be58c735be6a9265b9060d6ddb77751e3e8"}, + {file = "rpds_py-0.10.3-pp310-pypy310_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8f94fdd756ba1f79f988855d948ae0bad9ddf44df296770d9a58c774cfbcca72"}, + {file = "rpds_py-0.10.3-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:77076bdc8776a2b029e1e6ffbe6d7056e35f56f5e80d9dc0bad26ad4a024a762"}, + {file = "rpds_py-0.10.3-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:87d9b206b1bd7a0523375dc2020a6ce88bca5330682ae2fe25e86fd5d45cea9c"}, + {file = "rpds_py-0.10.3-pp310-pypy310_pp73-musllinux_1_2_aarch64.whl", hash = "sha256:8efaeb08ede95066da3a3e3c420fcc0a21693fcd0c4396d0585b019613d28515"}, + {file = "rpds_py-0.10.3-pp310-pypy310_pp73-musllinux_1_2_i686.whl", hash = "sha256:a4d9bfda3f84fc563868fe25ca160c8ff0e69bc4443c5647f960d59400ce6557"}, + {file = "rpds_py-0.10.3-pp310-pypy310_pp73-musllinux_1_2_x86_64.whl", hash = "sha256:d27aa6bbc1f33be920bb7adbb95581452cdf23005d5611b29a12bb6a3468cc95"}, + {file = "rpds_py-0.10.3-pp38-pypy38_pp73-macosx_10_7_x86_64.whl", hash = "sha256:ed8313809571a5463fd7db43aaca68ecb43ca7a58f5b23b6e6c6c5d02bdc7882"}, + {file = "rpds_py-0.10.3-pp38-pypy38_pp73-macosx_11_0_arm64.whl", hash = "sha256:e10e6a1ed2b8661201e79dff5531f8ad4cdd83548a0f81c95cf79b3184b20c33"}, + {file = "rpds_py-0.10.3-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:015de2ce2af1586ff5dc873e804434185199a15f7d96920ce67e50604592cae9"}, + {file = "rpds_py-0.10.3-pp38-pypy38_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:ae87137951bb3dc08c7d8bfb8988d8c119f3230731b08a71146e84aaa919a7a9"}, + {file = "rpds_py-0.10.3-pp38-pypy38_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:0bb4f48bd0dd18eebe826395e6a48b7331291078a879295bae4e5d053be50d4c"}, + {file = "rpds_py-0.10.3-pp38-pypy38_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:09362f86ec201288d5687d1dc476b07bf39c08478cde837cb710b302864e7ec9"}, + {file = "rpds_py-0.10.3-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:821392559d37759caa67d622d0d2994c7a3f2fb29274948ac799d496d92bca73"}, + {file = "rpds_py-0.10.3-pp38-pypy38_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:7170cbde4070dc3c77dec82abf86f3b210633d4f89550fa0ad2d4b549a05572a"}, + {file = "rpds_py-0.10.3-pp38-pypy38_pp73-musllinux_1_2_aarch64.whl", hash = "sha256:5de11c041486681ce854c814844f4ce3282b6ea1656faae19208ebe09d31c5b8"}, + {file = "rpds_py-0.10.3-pp38-pypy38_pp73-musllinux_1_2_i686.whl", hash = "sha256:4ed172d0c79f156c1b954e99c03bc2e3033c17efce8dd1a7c781bc4d5793dfac"}, + {file = "rpds_py-0.10.3-pp38-pypy38_pp73-musllinux_1_2_x86_64.whl", hash = "sha256:11fdd1192240dda8d6c5d18a06146e9045cb7e3ba7c06de6973000ff035df7c6"}, + {file = "rpds_py-0.10.3-pp39-pypy39_pp73-macosx_10_7_x86_64.whl", hash = "sha256:f602881d80ee4228a2355c68da6b296a296cd22bbb91e5418d54577bbf17fa7c"}, + {file = "rpds_py-0.10.3-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:691d50c99a937709ac4c4cd570d959a006bd6a6d970a484c84cc99543d4a5bbb"}, + {file = "rpds_py-0.10.3-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:24cd91a03543a0f8d09cb18d1cb27df80a84b5553d2bd94cba5979ef6af5c6e7"}, + {file = "rpds_py-0.10.3-pp39-pypy39_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:fc2200e79d75b5238c8d69f6a30f8284290c777039d331e7340b6c17cad24a5a"}, + {file = "rpds_py-0.10.3-pp39-pypy39_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ea65b59882d5fa8c74a23f8960db579e5e341534934f43f3b18ec1839b893e41"}, + {file = "rpds_py-0.10.3-pp39-pypy39_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:829e91f3a8574888b73e7a3feb3b1af698e717513597e23136ff4eba0bc8387a"}, + {file = "rpds_py-0.10.3-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:eab75a8569a095f2ad470b342f2751d9902f7944704f0571c8af46bede438475"}, + {file = "rpds_py-0.10.3-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:061c3ff1f51ecec256e916cf71cc01f9975af8fb3af9b94d3c0cc8702cfea637"}, + {file = "rpds_py-0.10.3-pp39-pypy39_pp73-musllinux_1_2_aarch64.whl", hash = "sha256:39d05e65f23a0fe897b6ac395f2a8d48c56ac0f583f5d663e0afec1da89b95da"}, + {file = "rpds_py-0.10.3-pp39-pypy39_pp73-musllinux_1_2_i686.whl", hash = "sha256:4eca20917a06d2fca7628ef3c8b94a8c358f6b43f1a621c9815243462dcccf97"}, + {file = "rpds_py-0.10.3-pp39-pypy39_pp73-musllinux_1_2_x86_64.whl", hash = "sha256:e8d0f0eca087630d58b8c662085529781fd5dc80f0a54eda42d5c9029f812599"}, + {file = "rpds_py-0.10.3.tar.gz", hash = "sha256:fcc1ebb7561a3e24a6588f7c6ded15d80aec22c66a070c757559b57b17ffd1cb"}, +] + +[[package]] +name = "scikit-learn" +version = "1.3.1" +description = "A set of python modules for machine learning and data mining" +optional = false +python-versions = ">=3.8" +files = [ + {file = "scikit-learn-1.3.1.tar.gz", hash = "sha256:1a231cced3ee3fa04756b4a7ab532dc9417acd581a330adff5f2c01ac2831fcf"}, + {file = "scikit_learn-1.3.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:3153612ff8d36fa4e35ef8b897167119213698ea78f3fd130b4068e6f8d2da5a"}, + {file = "scikit_learn-1.3.1-cp310-cp310-macosx_12_0_arm64.whl", hash = "sha256:6bb9490fdb8e7e00f1354621689187bef3cab289c9b869688f805bf724434755"}, + {file = "scikit_learn-1.3.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a7135a03af71138669f19bc96e7d0cc8081aed4b3565cc3b131135d65fc642ba"}, + {file = "scikit_learn-1.3.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7d8dee8c1f40eeba49a85fe378bdf70a07bb64aba1a08fda1e0f48d27edfc3e6"}, + {file = "scikit_learn-1.3.1-cp310-cp310-win_amd64.whl", hash = "sha256:4d379f2b34096105a96bd857b88601dffe7389bd55750f6f29aaa37bc6272eb5"}, + {file = "scikit_learn-1.3.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:14e8775eba072ab10866a7e0596bc9906873e22c4c370a651223372eb62de180"}, + {file = "scikit_learn-1.3.1-cp311-cp311-macosx_12_0_arm64.whl", hash = "sha256:58b0c2490eff8355dc26e884487bf8edaccf2ba48d09b194fb2f3a026dd64f9d"}, + {file = "scikit_learn-1.3.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f66eddfda9d45dd6cadcd706b65669ce1df84b8549875691b1f403730bdef217"}, + {file = "scikit_learn-1.3.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c6448c37741145b241eeac617028ba6ec2119e1339b1385c9720dae31367f2be"}, + {file = "scikit_learn-1.3.1-cp311-cp311-win_amd64.whl", hash = "sha256:c413c2c850241998168bbb3bd1bb59ff03b1195a53864f0b80ab092071af6028"}, + {file = "scikit_learn-1.3.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:52b77cc08bd555969ec5150788ed50276f5ef83abb72e6f469c5b91a0009bbca"}, + {file = "scikit_learn-1.3.1-cp38-cp38-macosx_12_0_arm64.whl", hash = "sha256:a683394bc3f80b7c312c27f9b14ebea7766b1f0a34faf1a2e9158d80e860ec26"}, + {file = "scikit_learn-1.3.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a15d964d9eb181c79c190d3dbc2fff7338786bf017e9039571418a1d53dab236"}, + {file = "scikit_learn-1.3.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0ce9233cdf0cdcf0858a5849d306490bf6de71fa7603a3835124e386e62f2311"}, + {file = "scikit_learn-1.3.1-cp38-cp38-win_amd64.whl", hash = "sha256:1ec668ce003a5b3d12d020d2cde0abd64b262ac5f098b5c84cf9657deb9996a8"}, + {file = "scikit_learn-1.3.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:ccbbedae99325628c1d1cbe3916b7ef58a1ce949672d8d39c8b190e10219fd32"}, + {file = "scikit_learn-1.3.1-cp39-cp39-macosx_12_0_arm64.whl", hash = "sha256:845f81c7ceb4ea6bac64ab1c9f2ce8bef0a84d0f21f3bece2126adcc213dfecd"}, + {file = "scikit_learn-1.3.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8454d57a22d856f1fbf3091bd86f9ebd4bff89088819886dc0c72f47a6c30652"}, + {file = "scikit_learn-1.3.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8d993fb70a1d78c9798b8f2f28705bfbfcd546b661f9e2e67aa85f81052b9c53"}, + {file = "scikit_learn-1.3.1-cp39-cp39-win_amd64.whl", hash = "sha256:66f7bb1fec37d65f4ef85953e1df5d3c98a0f0141d394dcdaead5a6de9170347"}, +] + +[package.dependencies] +joblib = ">=1.1.1" +numpy = ">=1.17.3,<2.0" +scipy = ">=1.5.0" +threadpoolctl = ">=2.0.0" + +[package.extras] +benchmark = ["matplotlib (>=3.1.3)", "memory-profiler (>=0.57.0)", "pandas (>=1.0.5)"] +docs = ["Pillow (>=7.1.2)", "matplotlib (>=3.1.3)", "memory-profiler (>=0.57.0)", "numpydoc (>=1.2.0)", "pandas (>=1.0.5)", "plotly (>=5.14.0)", "pooch (>=1.6.0)", "scikit-image (>=0.16.2)", "seaborn (>=0.9.0)", "sphinx (>=6.0.0)", "sphinx-copybutton (>=0.5.2)", "sphinx-gallery (>=0.10.1)", "sphinx-prompt (>=1.3.0)", "sphinxext-opengraph (>=0.4.2)"] +examples = ["matplotlib (>=3.1.3)", "pandas (>=1.0.5)", "plotly (>=5.14.0)", "pooch (>=1.6.0)", "scikit-image (>=0.16.2)", "seaborn (>=0.9.0)"] +tests = ["black (>=23.3.0)", "matplotlib (>=3.1.3)", "mypy (>=1.3)", "numpydoc (>=1.2.0)", "pandas (>=1.0.5)", "pooch (>=1.6.0)", "pyamg (>=4.0.0)", "pytest (>=7.1.2)", "pytest-cov (>=2.9.0)", "ruff (>=0.0.272)", "scikit-image (>=0.16.2)"] + +[[package]] +name = "scipy" +version = "1.11.2" +description = "Fundamental algorithms for scientific computing in Python" +optional = false +python-versions = "<3.13,>=3.9" +files = [ + {file = "scipy-1.11.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:2b997a5369e2d30c97995dcb29d638701f8000d04df01b8e947f206e5d0ac788"}, + {file = "scipy-1.11.2-cp310-cp310-macosx_12_0_arm64.whl", hash = "sha256:95763fbda1206bec41157582bea482f50eb3702c85fffcf6d24394b071c0e87a"}, + {file = "scipy-1.11.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e367904a0fec76433bf3fbf3e85bf60dae8e9e585ffd21898ab1085a29a04d16"}, + {file = "scipy-1.11.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d690e1ca993c8f7ede6d22e5637541217fc6a4d3f78b3672a6fe454dbb7eb9a7"}, + {file = "scipy-1.11.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:d2b813bfbe8dec6a75164523de650bad41f4405d35b0fa24c2c28ae07fcefb20"}, + {file = "scipy-1.11.2-cp310-cp310-win_amd64.whl", hash = "sha256:afdb0d983f6135d50770dd979df50bf1c7f58b5b33e0eb8cf5c73c70600eae1d"}, + {file = "scipy-1.11.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:8d9886f44ef8c9e776cb7527fb01455bf4f4a46c455c4682edc2c2cc8cd78562"}, + {file = "scipy-1.11.2-cp311-cp311-macosx_12_0_arm64.whl", hash = "sha256:1342ca385c673208f32472830c10110a9dcd053cf0c4b7d4cd7026d0335a6c1d"}, + {file = "scipy-1.11.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b133f237bd8ba73bad51bc12eb4f2d84cbec999753bf25ba58235e9fc2096d80"}, + {file = "scipy-1.11.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3aeb87661de987f8ec56fa6950863994cd427209158255a389fc5aea51fa7055"}, + {file = "scipy-1.11.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:90d3b1364e751d8214e325c371f0ee0dd38419268bf4888b2ae1040a6b266b2a"}, + {file = "scipy-1.11.2-cp311-cp311-win_amd64.whl", hash = "sha256:f73102f769ee06041a3aa26b5841359b1a93cc364ce45609657751795e8f4a4a"}, + {file = "scipy-1.11.2-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:fa4909c6c20c3d91480533cddbc0e7c6d849e7d9ded692918c76ce5964997898"}, + {file = "scipy-1.11.2-cp312-cp312-macosx_12_0_arm64.whl", hash = "sha256:ac74b1512d38718fb6a491c439aa7b3605b96b1ed3be6599c17d49d6c60fca18"}, + {file = "scipy-1.11.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b8425fa963a32936c9773ee3ce44a765d8ff67eed5f4ac81dc1e4a819a238ee9"}, + {file = "scipy-1.11.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:542a757e2a6ec409e71df3d8fd20127afbbacb1c07990cb23c5870c13953d899"}, + {file = "scipy-1.11.2-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:ea932570b1c2a30edafca922345854ff2cd20d43cd9123b6dacfdecebfc1a80b"}, + {file = "scipy-1.11.2-cp312-cp312-win_amd64.whl", hash = "sha256:4447ad057d7597476f9862ecbd9285bbf13ba9d73ce25acfa4e4b11c6801b4c9"}, + {file = "scipy-1.11.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:b0620240ef445b5ddde52460e6bc3483b7c9c750275369379e5f609a1050911c"}, + {file = "scipy-1.11.2-cp39-cp39-macosx_12_0_arm64.whl", hash = "sha256:f28f1f6cfeb48339c192efc6275749b2a25a7e49c4d8369a28b6591da02fbc9a"}, + {file = "scipy-1.11.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:214cdf04bbae7a54784f8431f976704ed607c4bc69ba0d5d5d6a9df84374df76"}, + {file = "scipy-1.11.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:10eb6af2f751aa3424762948e5352f707b0dece77288206f227864ddf675aca0"}, + {file = "scipy-1.11.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:0f3261f14b767b316d7137c66cc4f33a80ea05841b9c87ad83a726205b901423"}, + {file = "scipy-1.11.2-cp39-cp39-win_amd64.whl", hash = "sha256:2c91cf049ffb5575917f2a01da1da082fd24ed48120d08a6e7297dfcac771dcd"}, + {file = "scipy-1.11.2.tar.gz", hash = "sha256:b29318a5e39bd200ca4381d80b065cdf3076c7d7281c5e36569e99273867f61d"}, +] + +[package.dependencies] +numpy = ">=1.21.6,<1.28.0" + +[package.extras] +dev = ["click", "cython-lint (>=0.12.2)", "doit (>=0.36.0)", "mypy", "pycodestyle", "pydevtool", "rich-click", "ruff", "types-psutil", "typing_extensions"] +doc = ["jupytext", "matplotlib (>2)", "myst-nb", "numpydoc", "pooch", "pydata-sphinx-theme (==0.9.0)", "sphinx (!=4.1.0)", "sphinx-design (>=0.2.0)"] +test = ["asv", "gmpy2", "mpmath", "pooch", "pytest", "pytest-cov", "pytest-timeout", "pytest-xdist", "scikit-umfpack", "threadpoolctl"] + +[[package]] +name = "seaborn" +version = "0.12.2" +description = "Statistical data visualization" +optional = false +python-versions = ">=3.7" +files = [ + {file = "seaborn-0.12.2-py3-none-any.whl", hash = "sha256:ebf15355a4dba46037dfd65b7350f014ceb1f13c05e814eda2c9f5fd731afc08"}, + {file = "seaborn-0.12.2.tar.gz", hash = "sha256:374645f36509d0dcab895cba5b47daf0586f77bfe3b36c97c607db7da5be0139"}, +] + +[package.dependencies] +matplotlib = ">=3.1,<3.6.1 || >3.6.1" +numpy = ">=1.17,<1.24.0 || >1.24.0" +pandas = ">=0.25" + +[package.extras] +dev = ["flake8", "flit", "mypy", "pandas-stubs", "pre-commit", "pytest", "pytest-cov", "pytest-xdist"] +docs = ["ipykernel", "nbconvert", "numpydoc", "pydata_sphinx_theme (==0.10.0rc2)", "pyyaml", "sphinx-copybutton", "sphinx-design", "sphinx-issues"] +stats = ["scipy (>=1.3)", "statsmodels (>=0.10)"] + +[[package]] +name = "send2trash" +version = "1.8.2" +description = "Send file to trash natively under Mac OS X, Windows and Linux" +optional = false +python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,>=2.7" +files = [ + {file = "Send2Trash-1.8.2-py3-none-any.whl", hash = "sha256:a384719d99c07ce1eefd6905d2decb6f8b7ed054025bb0e618919f945de4f679"}, + {file = "Send2Trash-1.8.2.tar.gz", hash = "sha256:c132d59fa44b9ca2b1699af5c86f57ce9f4c5eb56629d5d55fbb7a35f84e2312"}, +] + +[package.extras] +nativelib = ["pyobjc-framework-Cocoa", "pywin32"] +objc = ["pyobjc-framework-Cocoa"] +win32 = ["pywin32"] + +[[package]] +name = "setuptools" +version = "68.2.2" +description = "Easily download, build, install, upgrade, and uninstall Python packages" +optional = false +python-versions = ">=3.8" +files = [ + {file = "setuptools-68.2.2-py3-none-any.whl", hash = "sha256:b454a35605876da60632df1a60f736524eb73cc47bbc9f3f1ef1b644de74fd2a"}, + {file = "setuptools-68.2.2.tar.gz", hash = "sha256:4ac1475276d2f1c48684874089fefcd83bd7162ddaafb81fac866ba0db282a87"}, +] + +[package.extras] +docs = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "pygments-github-lexers (==0.0.5)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-favicon", "sphinx-hoverxref (<2)", "sphinx-inline-tabs", "sphinx-lint", "sphinx-notfound-page (>=1,<2)", "sphinx-reredirects", "sphinxcontrib-towncrier"] +testing = ["build[virtualenv]", "filelock (>=3.4.0)", "flake8-2020", "ini2toml[lite] (>=0.9)", "jaraco.develop (>=7.21)", "jaraco.envs (>=2.2)", "jaraco.path (>=3.2.0)", "pip (>=19.1)", "pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-mypy (>=0.9.1)", "pytest-perf", "pytest-ruff", "pytest-timeout", "pytest-xdist", "tomli-w (>=1.0.0)", "virtualenv (>=13.0.0)", "wheel"] +testing-integration = ["build[virtualenv] (>=1.0.3)", "filelock (>=3.4.0)", "jaraco.envs (>=2.2)", "jaraco.path (>=3.2.0)", "packaging (>=23.1)", "pytest", "pytest-enabler", "pytest-xdist", "tomli", "virtualenv (>=13.0.0)", "wheel"] + +[[package]] +name = "setuptools-scm" +version = "8.0.3" +description = "the blessed package to manage your versions by scm tags" +optional = false +python-versions = ">=3.8" +files = [ + {file = "setuptools-scm-8.0.3.tar.gz", hash = "sha256:0169fd70197efda2f8c4d0b2a7a3d614431b488116f37b79d031e9e7ec884d8c"}, + {file = "setuptools_scm-8.0.3-py3-none-any.whl", hash = "sha256:813822234453438a13c78d05c8af29918fbc06f88efb33d38f065340bbb48c39"}, +] + +[package.dependencies] +packaging = ">=20" +setuptools = "*" +tomli = {version = ">=1", markers = "python_version < \"3.11\""} +typing-extensions = {version = "*", markers = "python_version < \"3.11\""} + +[package.extras] +docs = ["entangled-cli[rich]", "mkdocs", "mkdocs-entangled-plugin", "mkdocs-material", "mkdocstrings[python]", "pygments"] +rich = ["rich"] +test = ["pytest", "rich", "virtualenv (>20)"] + +[[package]] +name = "six" +version = "1.16.0" +description = "Python 2 and 3 compatibility utilities" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*" +files = [ + {file = "six-1.16.0-py2.py3-none-any.whl", hash = "sha256:8abb2f1d86890a2dfb989f9a77cfcfd3e47c2a354b01111771326f8aa26e0254"}, + {file = "six-1.16.0.tar.gz", hash = "sha256:1e61c37477a1626458e36f7b1d82aa5c9b094fa4802892072e49de9c60c4c926"}, +] + +[[package]] +name = "sniffio" +version = "1.3.0" +description = "Sniff out which async library your code is running under" +optional = false +python-versions = ">=3.7" +files = [ + {file = "sniffio-1.3.0-py3-none-any.whl", hash = "sha256:eecefdce1e5bbfb7ad2eeaabf7c1eeb404d7757c379bd1f7e5cce9d8bf425384"}, + {file = "sniffio-1.3.0.tar.gz", hash = "sha256:e60305c5e5d314f5389259b7f22aaa33d8f7dee49763119234af3755c55b9101"}, +] + +[[package]] +name = "sortedcontainers" +version = "2.4.0" +description = "Sorted Containers -- Sorted List, Sorted Dict, Sorted Set" +optional = false +python-versions = "*" +files = [ + {file = "sortedcontainers-2.4.0-py2.py3-none-any.whl", hash = "sha256:a163dcaede0f1c021485e957a39245190e74249897e2ae4b2aa38595db237ee0"}, + {file = "sortedcontainers-2.4.0.tar.gz", hash = "sha256:25caa5a06cc30b6b83d11423433f65d1f9d76c4c6a0c90e3379eaa43b9bfdb88"}, +] + +[[package]] +name = "soupsieve" +version = "2.5" +description = "A modern CSS selector implementation for Beautiful Soup." +optional = false +python-versions = ">=3.8" +files = [ + {file = "soupsieve-2.5-py3-none-any.whl", hash = "sha256:eaa337ff55a1579b6549dc679565eac1e3d000563bcb1c8ab0d0fefbc0c2cdc7"}, + {file = "soupsieve-2.5.tar.gz", hash = "sha256:5663d5a7b3bfaeee0bc4372e7fc48f9cff4940b3eec54a6451cc5299f1097690"}, +] + +[[package]] +name = "sqlalchemy" +version = "2.0.21" +description = "Database Abstraction Library" +optional = false +python-versions = ">=3.7" +files = [ + {file = "SQLAlchemy-2.0.21-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:1e7dc99b23e33c71d720c4ae37ebb095bebebbd31a24b7d99dfc4753d2803ede"}, + {file = "SQLAlchemy-2.0.21-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:7f0c4ee579acfe6c994637527c386d1c22eb60bc1c1d36d940d8477e482095d4"}, + {file = "SQLAlchemy-2.0.21-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3f7d57a7e140efe69ce2d7b057c3f9a595f98d0bbdfc23fd055efdfbaa46e3a5"}, + {file = "SQLAlchemy-2.0.21-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7ca38746eac23dd7c20bec9278d2058c7ad662b2f1576e4c3dbfcd7c00cc48fa"}, + {file = "SQLAlchemy-2.0.21-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:3cf229704074bce31f7f47d12883afee3b0a02bb233a0ba45ddbfe542939cca4"}, + {file = "SQLAlchemy-2.0.21-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:fb87f763b5d04a82ae84ccff25554ffd903baafba6698e18ebaf32561f2fe4aa"}, + {file = "SQLAlchemy-2.0.21-cp310-cp310-win32.whl", hash = "sha256:89e274604abb1a7fd5c14867a412c9d49c08ccf6ce3e1e04fffc068b5b6499d4"}, + {file = "SQLAlchemy-2.0.21-cp310-cp310-win_amd64.whl", hash = "sha256:e36339a68126ffb708dc6d1948161cea2a9e85d7d7b0c54f6999853d70d44430"}, + {file = "SQLAlchemy-2.0.21-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:bf8eebccc66829010f06fbd2b80095d7872991bfe8415098b9fe47deaaa58063"}, + {file = "SQLAlchemy-2.0.21-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:b977bfce15afa53d9cf6a632482d7968477625f030d86a109f7bdfe8ce3c064a"}, + {file = "SQLAlchemy-2.0.21-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6ff3dc2f60dbf82c9e599c2915db1526d65415be323464f84de8db3e361ba5b9"}, + {file = "SQLAlchemy-2.0.21-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:44ac5c89b6896f4740e7091f4a0ff2e62881da80c239dd9408f84f75a293dae9"}, + {file = "SQLAlchemy-2.0.21-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:87bf91ebf15258c4701d71dcdd9c4ba39521fb6a37379ea68088ce8cd869b446"}, + {file = "SQLAlchemy-2.0.21-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:b69f1f754d92eb1cc6b50938359dead36b96a1dcf11a8670bff65fd9b21a4b09"}, + {file = "SQLAlchemy-2.0.21-cp311-cp311-win32.whl", hash = "sha256:af520a730d523eab77d754f5cf44cc7dd7ad2d54907adeb3233177eeb22f271b"}, + {file = "SQLAlchemy-2.0.21-cp311-cp311-win_amd64.whl", hash = "sha256:141675dae56522126986fa4ca713739d00ed3a6f08f3c2eb92c39c6dfec463ce"}, + {file = "SQLAlchemy-2.0.21-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:7614f1eab4336df7dd6bee05bc974f2b02c38d3d0c78060c5faa4cd1ca2af3b8"}, + {file = "SQLAlchemy-2.0.21-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d59cb9e20d79686aa473e0302e4a82882d7118744d30bb1dfb62d3c47141b3ec"}, + {file = "SQLAlchemy-2.0.21-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a95aa0672e3065d43c8aa80080cdd5cc40fe92dc873749e6c1cf23914c4b83af"}, + {file = "SQLAlchemy-2.0.21-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:8c323813963b2503e54d0944813cd479c10c636e3ee223bcbd7bd478bf53c178"}, + {file = "SQLAlchemy-2.0.21-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:419b1276b55925b5ac9b4c7044e999f1787c69761a3c9756dec6e5c225ceca01"}, + {file = "SQLAlchemy-2.0.21-cp37-cp37m-win32.whl", hash = "sha256:4615623a490e46be85fbaa6335f35cf80e61df0783240afe7d4f544778c315a9"}, + {file = "SQLAlchemy-2.0.21-cp37-cp37m-win_amd64.whl", hash = "sha256:cca720d05389ab1a5877ff05af96551e58ba65e8dc65582d849ac83ddde3e231"}, + {file = "SQLAlchemy-2.0.21-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:b4eae01faee9f2b17f08885e3f047153ae0416648f8e8c8bd9bc677c5ce64be9"}, + {file = "SQLAlchemy-2.0.21-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:3eb7c03fe1cd3255811cd4e74db1ab8dca22074d50cd8937edf4ef62d758cdf4"}, + {file = "SQLAlchemy-2.0.21-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c2d494b6a2a2d05fb99f01b84cc9af9f5f93bf3e1e5dbdafe4bed0c2823584c1"}, + {file = "SQLAlchemy-2.0.21-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b19ae41ef26c01a987e49e37c77b9ad060c59f94d3b3efdfdbf4f3daaca7b5fe"}, + {file = "SQLAlchemy-2.0.21-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:fc6b15465fabccc94bf7e38777d665b6a4f95efd1725049d6184b3a39fd54880"}, + {file = "SQLAlchemy-2.0.21-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:014794b60d2021cc8ae0f91d4d0331fe92691ae5467a00841f7130fe877b678e"}, + {file = "SQLAlchemy-2.0.21-cp38-cp38-win32.whl", hash = "sha256:0268256a34806e5d1c8f7ee93277d7ea8cc8ae391f487213139018b6805aeaf6"}, + {file = "SQLAlchemy-2.0.21-cp38-cp38-win_amd64.whl", hash = "sha256:73c079e21d10ff2be54a4699f55865d4b275fd6c8bd5d90c5b1ef78ae0197301"}, + {file = "SQLAlchemy-2.0.21-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:785e2f2c1cb50d0a44e2cdeea5fd36b5bf2d79c481c10f3a88a8be4cfa2c4615"}, + {file = "SQLAlchemy-2.0.21-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:c111cd40910ffcb615b33605fc8f8e22146aeb7933d06569ac90f219818345ef"}, + {file = "SQLAlchemy-2.0.21-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c9cba4e7369de663611ce7460a34be48e999e0bbb1feb9130070f0685e9a6b66"}, + {file = "SQLAlchemy-2.0.21-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:50a69067af86ec7f11a8e50ba85544657b1477aabf64fa447fd3736b5a0a4f67"}, + {file = "SQLAlchemy-2.0.21-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:ccb99c3138c9bde118b51a289d90096a3791658da9aea1754667302ed6564f6e"}, + {file = "SQLAlchemy-2.0.21-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:513fd5b6513d37e985eb5b7ed89da5fd9e72354e3523980ef00d439bc549c9e9"}, + {file = "SQLAlchemy-2.0.21-cp39-cp39-win32.whl", hash = "sha256:f9fefd6298433b6e9188252f3bff53b9ff0443c8fde27298b8a2b19f6617eeb9"}, + {file = "SQLAlchemy-2.0.21-cp39-cp39-win_amd64.whl", hash = "sha256:2e617727fe4091cedb3e4409b39368f424934c7faa78171749f704b49b4bb4ce"}, + {file = "SQLAlchemy-2.0.21-py3-none-any.whl", hash = "sha256:ea7da25ee458d8f404b93eb073116156fd7d8c2a776d8311534851f28277b4ce"}, + {file = "SQLAlchemy-2.0.21.tar.gz", hash = "sha256:05b971ab1ac2994a14c56b35eaaa91f86ba080e9ad481b20d99d77f381bb6258"}, +] + +[package.dependencies] +greenlet = {version = "!=0.4.17", markers = "platform_machine == \"aarch64\" or platform_machine == \"ppc64le\" or platform_machine == \"x86_64\" or platform_machine == \"amd64\" or platform_machine == \"AMD64\" or platform_machine == \"win32\" or platform_machine == \"WIN32\""} +typing-extensions = ">=4.2.0" + +[package.extras] +aiomysql = ["aiomysql (>=0.2.0)", "greenlet (!=0.4.17)"] +aiosqlite = ["aiosqlite", "greenlet (!=0.4.17)", "typing-extensions (!=3.10.0.1)"] +asyncio = ["greenlet (!=0.4.17)"] +asyncmy = ["asyncmy (>=0.2.3,!=0.2.4,!=0.2.6)", "greenlet (!=0.4.17)"] +mariadb-connector = ["mariadb (>=1.0.1,!=1.1.2,!=1.1.5)"] +mssql = ["pyodbc"] +mssql-pymssql = ["pymssql"] +mssql-pyodbc = ["pyodbc"] +mypy = ["mypy (>=0.910)"] +mysql = ["mysqlclient (>=1.4.0)"] +mysql-connector = ["mysql-connector-python"] +oracle = ["cx-oracle (>=7)"] +oracle-oracledb = ["oracledb (>=1.0.1)"] +postgresql = ["psycopg2 (>=2.7)"] +postgresql-asyncpg = ["asyncpg", "greenlet (!=0.4.17)"] +postgresql-pg8000 = ["pg8000 (>=1.29.1)"] +postgresql-psycopg = ["psycopg (>=3.0.7)"] +postgresql-psycopg2binary = ["psycopg2-binary"] +postgresql-psycopg2cffi = ["psycopg2cffi"] +postgresql-psycopgbinary = ["psycopg[binary] (>=3.0.7)"] +pymysql = ["pymysql"] +sqlcipher = ["sqlcipher3-binary"] + +[[package]] +name = "stack-data" +version = "0.6.2" +description = "Extract data from python stack frames and tracebacks for informative displays" +optional = false +python-versions = "*" +files = [ + {file = "stack_data-0.6.2-py3-none-any.whl", hash = "sha256:cbb2a53eb64e5785878201a97ed7c7b94883f48b87bfb0bbe8b623c74679e4a8"}, + {file = "stack_data-0.6.2.tar.gz", hash = "sha256:32d2dd0376772d01b6cb9fc996f3c8b57a357089dec328ed4b6553d037eaf815"}, +] + +[package.dependencies] +asttokens = ">=2.1.0" +executing = ">=1.2.0" +pure-eval = "*" + +[package.extras] +tests = ["cython", "littleutils", "pygments", "pytest", "typeguard"] + +[[package]] +name = "statsmodels" +version = "0.14.0" +description = "Statistical computations and models for Python" +optional = false +python-versions = ">=3.8" +files = [ + {file = "statsmodels-0.14.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:16bfe0c96a53b20fa19067e3b6bd2f1d39e30d4891ea0d7bc20734a0ae95942d"}, + {file = "statsmodels-0.14.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:5a6a0a1a06ff79be8aa89c8494b33903442859add133f0dda1daf37c3c71682e"}, + {file = "statsmodels-0.14.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:77b3cd3a5268ef966a0a08582c591bd29c09c88b4566c892a7c087935234f285"}, + {file = "statsmodels-0.14.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9c64ebe9cf376cba0c31aed138e15ed179a1d128612dd241cdf299d159e5e882"}, + {file = "statsmodels-0.14.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:229b2f676b4a45cb62d132a105c9c06ca8a09ffba060abe34935391eb5d9ba87"}, + {file = "statsmodels-0.14.0-cp310-cp310-win_amd64.whl", hash = "sha256:fb471f757fc45102a87e5d86e87dc2c8c78b34ad4f203679a46520f1d863b9da"}, + {file = "statsmodels-0.14.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:582f9e41092e342aaa04920d17cc3f97240e3ee198672f194719b5a3d08657d6"}, + {file = "statsmodels-0.14.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:7ebe885ccaa64b4bc5ad49ac781c246e7a594b491f08ab4cfd5aa456c363a6f6"}, + {file = "statsmodels-0.14.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b587ee5d23369a0e881da6e37f78371dce4238cf7638a455db4b633a1a1c62d6"}, + {file = "statsmodels-0.14.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0ef7fa4813c7a73b0d8a0c830250f021c102c71c95e9fe0d6877bcfb56d38b8c"}, + {file = "statsmodels-0.14.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:afe80544ef46730ea1b11cc655da27038bbaa7159dc5af4bc35bbc32982262f2"}, + {file = "statsmodels-0.14.0-cp311-cp311-win_amd64.whl", hash = "sha256:a6ad7b8aadccd4e4dd7f315a07bef1bca41d194eeaf4ec600d20dea02d242fce"}, + {file = "statsmodels-0.14.0-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:0eea4a0b761aebf0c355b726ac5616b9a8b618bd6e81a96b9f998a61f4fd7484"}, + {file = "statsmodels-0.14.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:4c815ce7a699047727c65a7c179bff4031cff9ae90c78ca730cfd5200eb025dd"}, + {file = "statsmodels-0.14.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:575f61337c8e406ae5fa074d34bc6eb77b5a57c544b2d4ee9bc3da6a0a084cf1"}, + {file = "statsmodels-0.14.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8be53cdeb82f49c4cb0fda6d7eeeb2d67dbd50179b3e1033510e061863720d93"}, + {file = "statsmodels-0.14.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:6f7d762df4e04d1dde8127d07e91aff230eae643aa7078543e60e83e7d5b40db"}, + {file = "statsmodels-0.14.0-cp312-cp312-win_amd64.whl", hash = "sha256:fc2c7931008a911e3060c77ea8933f63f7367c0f3af04f82db3a04808ad2cd2c"}, + {file = "statsmodels-0.14.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:3757542c95247e4ab025291a740efa5da91dc11a05990c033d40fce31c450dc9"}, + {file = "statsmodels-0.14.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:de489e3ed315bdba55c9d1554a2e89faa65d212e365ab81bc323fa52681fc60e"}, + {file = "statsmodels-0.14.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:76e290f4718177bffa8823a780f3b882d56dd64ad1c18cfb4bc8b5558f3f5757"}, + {file = "statsmodels-0.14.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:71054f9dbcead56def14e3c9db6f66f943110fdfb19713caf0eb0f08c1ec03fd"}, + {file = "statsmodels-0.14.0-cp38-cp38-win_amd64.whl", hash = "sha256:d7fda067837df94e0a614d93d3a38fb6868958d37f7f50afe2a534524f2660cb"}, + {file = "statsmodels-0.14.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:1c7724ad573af26139a98393ae64bc318d1b19762b13442d96c7a3e793f495c3"}, + {file = "statsmodels-0.14.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:3b0a135f3bfdeec987e36e3b3b4c53e0bb87a8d91464d2fcc4d169d176f46fdb"}, + {file = "statsmodels-0.14.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ce28eb1c397dba437ec39b9ab18f2101806f388c7a0cf9cdfd8f09294ad1c799"}, + {file = "statsmodels-0.14.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:68b1c768dd94cc5ba8398121a632b673c625491aa7ed627b82cb4c880a25563f"}, + {file = "statsmodels-0.14.0-cp39-cp39-win_amd64.whl", hash = "sha256:8d1e3e10dfbfcd58119ba5a4d3c7d519182b970a2aebaf0b6f539f55ae16058d"}, + {file = "statsmodels-0.14.0.tar.gz", hash = "sha256:6875c7d689e966d948f15eb816ab5616f4928706b180cf470fd5907ab6f647a4"}, +] + +[package.dependencies] +numpy = [ + {version = ">=1.22.3", markers = "python_version == \"3.10\" and platform_system == \"Windows\" and platform_python_implementation != \"PyPy\""}, + {version = ">=1.18", markers = "python_version != \"3.10\" or platform_system != \"Windows\" or platform_python_implementation == \"PyPy\""}, +] +packaging = ">=21.3" +pandas = ">=1.0" +patsy = ">=0.5.2" +scipy = ">=1.4,<1.9.2 || >1.9.2" + +[package.extras] +build = ["cython (>=0.29.26)"] +develop = ["colorama", "cython (>=0.29.26)", "cython (>=0.29.28,<3.0.0)", "flake8", "isort", "joblib", "matplotlib (>=3)", "oldest-supported-numpy (>=2022.4.18)", "pytest (>=7.0.1,<7.1.0)", "pytest-randomly", "pytest-xdist", "pywinpty", "setuptools-scm[toml] (>=7.0.0,<7.1.0)"] +docs = ["ipykernel", "jupyter-client", "matplotlib", "nbconvert", "nbformat", "numpydoc", "pandas-datareader", "sphinx"] + +[[package]] +name = "tabulate" +version = "0.8.10" +description = "Pretty-print tabular data" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" +files = [ + {file = "tabulate-0.8.10-py3-none-any.whl", hash = "sha256:0ba055423dbaa164b9e456abe7920c5e8ed33fcc16f6d1b2f2d152c8e1e8b4fc"}, + {file = "tabulate-0.8.10.tar.gz", hash = "sha256:6c57f3f3dd7ac2782770155f3adb2db0b1a269637e42f27599925e64b114f519"}, +] + +[package.extras] +widechars = ["wcwidth"] + +[[package]] +name = "tenacity" +version = "8.2.3" +description = "Retry code until it succeeds" +optional = false +python-versions = ">=3.7" +files = [ + {file = "tenacity-8.2.3-py3-none-any.whl", hash = "sha256:ce510e327a630c9e1beaf17d42e6ffacc88185044ad85cf74c0a8887c6a0f88c"}, + {file = "tenacity-8.2.3.tar.gz", hash = "sha256:5398ef0d78e63f40007c1fb4c0bff96e1911394d2fa8d194f77619c05ff6cc8a"}, +] + +[package.extras] +doc = ["reno", "sphinx", "tornado (>=4.5)"] + +[[package]] +name = "terminado" +version = "0.17.1" +description = "Tornado websocket backend for the Xterm.js Javascript terminal emulator library." +optional = false +python-versions = ">=3.7" +files = [ + {file = "terminado-0.17.1-py3-none-any.whl", hash = "sha256:8650d44334eba354dd591129ca3124a6ba42c3d5b70df5051b6921d506fdaeae"}, + {file = "terminado-0.17.1.tar.gz", hash = "sha256:6ccbbcd3a4f8a25a5ec04991f39a0b8db52dfcd487ea0e578d977e6752380333"}, +] + +[package.dependencies] +ptyprocess = {version = "*", markers = "os_name != \"nt\""} +pywinpty = {version = ">=1.1.0", markers = "os_name == \"nt\""} +tornado = ">=6.1.0" + +[package.extras] +docs = ["myst-parser", "pydata-sphinx-theme", "sphinx"] +test = ["pre-commit", "pytest (>=7.0)", "pytest-timeout"] + +[[package]] +name = "threadpoolctl" +version = "3.2.0" +description = "threadpoolctl" +optional = false +python-versions = ">=3.8" +files = [ + {file = "threadpoolctl-3.2.0-py3-none-any.whl", hash = "sha256:2b7818516e423bdaebb97c723f86a7c6b0a83d3f3b0970328d66f4d9104dc032"}, + {file = "threadpoolctl-3.2.0.tar.gz", hash = "sha256:c96a0ba3bdddeaca37dc4cc7344aafad41cdb8c313f74fdfe387a867bba93355"}, +] + +[[package]] +name = "tinycss2" +version = "1.2.1" +description = "A tiny CSS parser" +optional = false +python-versions = ">=3.7" +files = [ + {file = "tinycss2-1.2.1-py3-none-any.whl", hash = "sha256:2b80a96d41e7c3914b8cda8bc7f705a4d9c49275616e886103dd839dfc847847"}, + {file = "tinycss2-1.2.1.tar.gz", hash = "sha256:8cff3a8f066c2ec677c06dbc7b45619804a6938478d9d73c284b29d14ecb0627"}, +] + +[package.dependencies] +webencodings = ">=0.4" + +[package.extras] +doc = ["sphinx", "sphinx_rtd_theme"] +test = ["flake8", "isort", "pytest"] + +[[package]] +name = "toml" +version = "0.10.2" +description = "Python Library for Tom's Obvious, Minimal Language" +optional = false +python-versions = ">=2.6, !=3.0.*, !=3.1.*, !=3.2.*" +files = [ + {file = "toml-0.10.2-py2.py3-none-any.whl", hash = "sha256:806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b"}, + {file = "toml-0.10.2.tar.gz", hash = "sha256:b3bda1d108d5dd99f4a20d24d9c348e91c4db7ab1b749200bded2f839ccbe68f"}, +] + +[[package]] +name = "tomli" +version = "2.0.1" +description = "A lil' TOML parser" +optional = false +python-versions = ">=3.7" +files = [ + {file = "tomli-2.0.1-py3-none-any.whl", hash = "sha256:939de3e7a6161af0c887ef91b7d41a53e7c5a1ca976325f429cb46ea9bc30ecc"}, + {file = "tomli-2.0.1.tar.gz", hash = "sha256:de526c12914f0c550d15924c62d72abc48d6fe7364aa87328337a31007fe8a4f"}, +] + +[[package]] +name = "tornado" +version = "6.3.3" +description = "Tornado is a Python web framework and asynchronous networking library, originally developed at FriendFeed." +optional = false +python-versions = ">= 3.8" +files = [ + {file = "tornado-6.3.3-cp38-abi3-macosx_10_9_universal2.whl", hash = "sha256:502fba735c84450974fec147340016ad928d29f1e91f49be168c0a4c18181e1d"}, + {file = "tornado-6.3.3-cp38-abi3-macosx_10_9_x86_64.whl", hash = "sha256:805d507b1f588320c26f7f097108eb4023bbaa984d63176d1652e184ba24270a"}, + {file = "tornado-6.3.3-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1bd19ca6c16882e4d37368e0152f99c099bad93e0950ce55e71daed74045908f"}, + {file = "tornado-6.3.3-cp38-abi3-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7ac51f42808cca9b3613f51ffe2a965c8525cb1b00b7b2d56828b8045354f76a"}, + {file = "tornado-6.3.3-cp38-abi3-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:71a8db65160a3c55d61839b7302a9a400074c9c753040455494e2af74e2501f2"}, + {file = "tornado-6.3.3-cp38-abi3-musllinux_1_1_aarch64.whl", hash = "sha256:ceb917a50cd35882b57600709dd5421a418c29ddc852da8bcdab1f0db33406b0"}, + {file = "tornado-6.3.3-cp38-abi3-musllinux_1_1_i686.whl", hash = "sha256:7d01abc57ea0dbb51ddfed477dfe22719d376119844e33c661d873bf9c0e4a16"}, + {file = "tornado-6.3.3-cp38-abi3-musllinux_1_1_x86_64.whl", hash = "sha256:9dc4444c0defcd3929d5c1eb5706cbe1b116e762ff3e0deca8b715d14bf6ec17"}, + {file = "tornado-6.3.3-cp38-abi3-win32.whl", hash = "sha256:65ceca9500383fbdf33a98c0087cb975b2ef3bfb874cb35b8de8740cf7f41bd3"}, + {file = "tornado-6.3.3-cp38-abi3-win_amd64.whl", hash = "sha256:22d3c2fa10b5793da13c807e6fc38ff49a4f6e1e3868b0a6f4164768bb8e20f5"}, + {file = "tornado-6.3.3.tar.gz", hash = "sha256:e7d8db41c0181c80d76c982aacc442c0783a2c54d6400fe028954201a2e032fe"}, +] + +[[package]] +name = "tqdm" +version = "4.66.1" +description = "Fast, Extensible Progress Meter" +optional = false +python-versions = ">=3.7" +files = [ + {file = "tqdm-4.66.1-py3-none-any.whl", hash = "sha256:d302b3c5b53d47bce91fea46679d9c3c6508cf6332229aa1e7d8653723793386"}, + {file = "tqdm-4.66.1.tar.gz", hash = "sha256:d88e651f9db8d8551a62556d3cff9e3034274ca5d66e93197cf2490e2dcb69c7"}, +] + +[package.dependencies] +colorama = {version = "*", markers = "platform_system == \"Windows\""} + +[package.extras] +dev = ["pytest (>=6)", "pytest-cov", "pytest-timeout", "pytest-xdist"] +notebook = ["ipywidgets (>=6)"] +slack = ["slack-sdk"] +telegram = ["requests"] + +[[package]] +name = "traitlets" +version = "5.10.1" +description = "Traitlets Python configuration system" +optional = false +python-versions = ">=3.8" +files = [ + {file = "traitlets-5.10.1-py3-none-any.whl", hash = "sha256:07ab9c5bf8a0499fd7b088ba51be899c90ffc936ffc797d7b6907fc516bcd116"}, + {file = "traitlets-5.10.1.tar.gz", hash = "sha256:db9c4aa58139c3ba850101913915c042bdba86f7c8a0dda1c6f7f92c5da8e542"}, +] + +[package.extras] +docs = ["myst-parser", "pydata-sphinx-theme", "sphinx"] +test = ["argcomplete (>=3.0.3)", "mypy (>=1.5.1)", "pre-commit", "pytest (>=7.0,<7.5)", "pytest-mock", "pytest-mypy-testing"] + +[[package]] +name = "typing-extensions" +version = "4.8.0" +description = "Backported and Experimental Type Hints for Python 3.8+" +optional = false +python-versions = ">=3.8" +files = [ + {file = "typing_extensions-4.8.0-py3-none-any.whl", hash = "sha256:8f92fc8806f9a6b641eaa5318da32b44d401efaac0f6678c9bc448ba3605faa0"}, + {file = "typing_extensions-4.8.0.tar.gz", hash = "sha256:df8e4339e9cb77357558cbdbceca33c303714cf861d1eef15e1070055ae8b7ef"}, +] + +[[package]] +name = "tzdata" +version = "2023.3" +description = "Provider of IANA time zone data" +optional = false +python-versions = ">=2" +files = [ + {file = "tzdata-2023.3-py2.py3-none-any.whl", hash = "sha256:7e65763eef3120314099b6939b5546db7adce1e7d6f2e179e3df563c70511eda"}, + {file = "tzdata-2023.3.tar.gz", hash = "sha256:11ef1e08e54acb0d4f95bdb1be05da659673de4acbd21bf9c69e94cc5e907a3a"}, +] + +[[package]] +name = "uri-template" +version = "1.3.0" +description = "RFC 6570 URI Template Processor" +optional = false +python-versions = ">=3.7" +files = [ + {file = "uri-template-1.3.0.tar.gz", hash = "sha256:0e00f8eb65e18c7de20d595a14336e9f337ead580c70934141624b6d1ffdacc7"}, + {file = "uri_template-1.3.0-py3-none-any.whl", hash = "sha256:a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363"}, +] + +[package.extras] +dev = ["flake8", "flake8-annotations", "flake8-bandit", "flake8-bugbear", "flake8-commas", "flake8-comprehensions", "flake8-continuation", "flake8-datetimez", "flake8-docstrings", "flake8-import-order", "flake8-literal", "flake8-modern-annotations", "flake8-noqa", "flake8-pyproject", "flake8-requirements", "flake8-typechecking-import", "flake8-use-fstring", "mypy", "pep8-naming", "types-PyYAML"] + +[[package]] +name = "urllib3" +version = "2.0.5" +description = "HTTP library with thread-safe connection pooling, file post, and more." +optional = false +python-versions = ">=3.7" +files = [ + {file = "urllib3-2.0.5-py3-none-any.whl", hash = "sha256:ef16afa8ba34a1f989db38e1dbbe0c302e4289a47856990d0682e374563ce35e"}, + {file = "urllib3-2.0.5.tar.gz", hash = "sha256:13abf37382ea2ce6fb744d4dad67838eec857c9f4f57009891805e0b5e123594"}, +] + +[package.extras] +brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)"] +secure = ["certifi", "cryptography (>=1.9)", "idna (>=2.0.0)", "pyopenssl (>=17.1.0)", "urllib3-secure-extra"] +socks = ["pysocks (>=1.5.6,!=1.5.7,<2.0)"] +zstd = ["zstandard (>=0.18.0)"] + +[[package]] +name = "watchdog" +version = "3.0.0" +description = "Filesystem events monitoring" +optional = false +python-versions = ">=3.7" +files = [ + {file = "watchdog-3.0.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:336adfc6f5cc4e037d52db31194f7581ff744b67382eb6021c868322e32eef41"}, + {file = "watchdog-3.0.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:a70a8dcde91be523c35b2bf96196edc5730edb347e374c7de7cd20c43ed95397"}, + {file = "watchdog-3.0.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:adfdeab2da79ea2f76f87eb42a3ab1966a5313e5a69a0213a3cc06ef692b0e96"}, + {file = "watchdog-3.0.0-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:2b57a1e730af3156d13b7fdddfc23dea6487fceca29fc75c5a868beed29177ae"}, + {file = "watchdog-3.0.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:7ade88d0d778b1b222adebcc0927428f883db07017618a5e684fd03b83342bd9"}, + {file = "watchdog-3.0.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:7e447d172af52ad204d19982739aa2346245cc5ba6f579d16dac4bfec226d2e7"}, + {file = "watchdog-3.0.0-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:9fac43a7466eb73e64a9940ac9ed6369baa39b3bf221ae23493a9ec4d0022674"}, + {file = "watchdog-3.0.0-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:8ae9cda41fa114e28faf86cb137d751a17ffd0316d1c34ccf2235e8a84365c7f"}, + {file = "watchdog-3.0.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:25f70b4aa53bd743729c7475d7ec41093a580528b100e9a8c5b5efe8899592fc"}, + {file = "watchdog-3.0.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:4f94069eb16657d2c6faada4624c39464f65c05606af50bb7902e036e3219be3"}, + {file = "watchdog-3.0.0-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:7c5f84b5194c24dd573fa6472685b2a27cc5a17fe5f7b6fd40345378ca6812e3"}, + {file = "watchdog-3.0.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:3aa7f6a12e831ddfe78cdd4f8996af9cf334fd6346531b16cec61c3b3c0d8da0"}, + {file = "watchdog-3.0.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:233b5817932685d39a7896b1090353fc8efc1ef99c9c054e46c8002561252fb8"}, + {file = "watchdog-3.0.0-pp37-pypy37_pp73-macosx_10_9_x86_64.whl", hash = "sha256:13bbbb462ee42ec3c5723e1205be8ced776f05b100e4737518c67c8325cf6100"}, + {file = "watchdog-3.0.0-pp38-pypy38_pp73-macosx_10_9_x86_64.whl", hash = "sha256:8f3ceecd20d71067c7fd4c9e832d4e22584318983cabc013dbf3f70ea95de346"}, + {file = "watchdog-3.0.0-pp39-pypy39_pp73-macosx_10_9_x86_64.whl", hash = "sha256:c9d8c8ec7efb887333cf71e328e39cffbf771d8f8f95d308ea4125bf5f90ba64"}, + {file = "watchdog-3.0.0-py3-none-manylinux2014_aarch64.whl", hash = "sha256:0e06ab8858a76e1219e68c7573dfeba9dd1c0219476c5a44d5333b01d7e1743a"}, + {file = "watchdog-3.0.0-py3-none-manylinux2014_armv7l.whl", hash = "sha256:d00e6be486affb5781468457b21a6cbe848c33ef43f9ea4a73b4882e5f188a44"}, + {file = "watchdog-3.0.0-py3-none-manylinux2014_i686.whl", hash = "sha256:c07253088265c363d1ddf4b3cdb808d59a0468ecd017770ed716991620b8f77a"}, + {file = "watchdog-3.0.0-py3-none-manylinux2014_ppc64.whl", hash = "sha256:5113334cf8cf0ac8cd45e1f8309a603291b614191c9add34d33075727a967709"}, + {file = "watchdog-3.0.0-py3-none-manylinux2014_ppc64le.whl", hash = "sha256:51f90f73b4697bac9c9a78394c3acbbd331ccd3655c11be1a15ae6fe289a8c83"}, + {file = "watchdog-3.0.0-py3-none-manylinux2014_s390x.whl", hash = "sha256:ba07e92756c97e3aca0912b5cbc4e5ad802f4557212788e72a72a47ff376950d"}, + {file = "watchdog-3.0.0-py3-none-manylinux2014_x86_64.whl", hash = "sha256:d429c2430c93b7903914e4db9a966c7f2b068dd2ebdd2fa9b9ce094c7d459f33"}, + {file = "watchdog-3.0.0-py3-none-win32.whl", hash = "sha256:3ed7c71a9dccfe838c2f0b6314ed0d9b22e77d268c67e015450a29036a81f60f"}, + {file = "watchdog-3.0.0-py3-none-win_amd64.whl", hash = "sha256:4c9956d27be0bb08fc5f30d9d0179a855436e655f046d288e2bcc11adfae893c"}, + {file = "watchdog-3.0.0-py3-none-win_ia64.whl", hash = "sha256:5d9f3a10e02d7371cd929b5d8f11e87d4bad890212ed3901f9b4d68767bee759"}, + {file = "watchdog-3.0.0.tar.gz", hash = "sha256:4d98a320595da7a7c5a18fc48cb633c2e73cda78f93cac2ef42d42bf609a33f9"}, +] + +[package.extras] +watchmedo = ["PyYAML (>=3.10)"] + +[[package]] +name = "wcwidth" +version = "0.2.6" +description = "Measures the displayed width of unicode strings in a terminal" +optional = false +python-versions = "*" +files = [ + {file = "wcwidth-0.2.6-py2.py3-none-any.whl", hash = "sha256:795b138f6875577cd91bba52baf9e445cd5118fd32723b460e30a0af30ea230e"}, + {file = "wcwidth-0.2.6.tar.gz", hash = "sha256:a5220780a404dbe3353789870978e472cfe477761f06ee55077256e509b156d0"}, +] + +[[package]] +name = "webcolors" +version = "1.13" +description = "A library for working with the color formats defined by HTML and CSS." +optional = false +python-versions = ">=3.7" +files = [ + {file = "webcolors-1.13-py3-none-any.whl", hash = "sha256:29bc7e8752c0a1bd4a1f03c14d6e6a72e93d82193738fa860cbff59d0fcc11bf"}, + {file = "webcolors-1.13.tar.gz", hash = "sha256:c225b674c83fa923be93d235330ce0300373d02885cef23238813b0d5668304a"}, +] + +[package.extras] +docs = ["furo", "sphinx", "sphinx-copybutton", "sphinx-inline-tabs", "sphinx-notfound-page", "sphinxext-opengraph"] +tests = ["pytest", "pytest-cov"] + +[[package]] +name = "webencodings" +version = "0.5.1" +description = "Character encoding aliases for legacy web content" +optional = false +python-versions = "*" +files = [ + {file = "webencodings-0.5.1-py2.py3-none-any.whl", hash = "sha256:a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78"}, + {file = "webencodings-0.5.1.tar.gz", hash = "sha256:b36a1c245f2d304965eb4e0a82848379241dc04b865afcc4aab16748587e1923"}, +] + +[[package]] +name = "websocket-client" +version = "1.6.3" +description = "WebSocket client for Python with low level API options" +optional = false +python-versions = ">=3.8" +files = [ + {file = "websocket-client-1.6.3.tar.gz", hash = "sha256:3aad25d31284266bcfcfd1fd8a743f63282305a364b8d0948a43bd606acc652f"}, + {file = "websocket_client-1.6.3-py3-none-any.whl", hash = "sha256:6cfc30d051ebabb73a5fa246efdcc14c8fbebbd0330f8984ac3bb6d9edd2ad03"}, +] + +[package.extras] +docs = ["Sphinx (>=6.0)", "sphinx-rtd-theme (>=1.1.0)"] +optional = ["python-socks", "wsaccel"] +test = ["websockets"] + +[[package]] +name = "widgetsnbextension" +version = "4.0.9" +description = "Jupyter interactive widgets for Jupyter Notebook" +optional = false +python-versions = ">=3.7" +files = [ + {file = "widgetsnbextension-4.0.9-py3-none-any.whl", hash = "sha256:91452ca8445beb805792f206e560c1769284267a30ceb1cec9f5bcc887d15175"}, + {file = "widgetsnbextension-4.0.9.tar.gz", hash = "sha256:3c1f5e46dc1166dfd40a42d685e6a51396fd34ff878742a3e47c6f0cc4a2a385"}, +] + +[[package]] +name = "win32-setctime" +version = "1.1.0" +description = "A small Python utility to set file creation time on Windows" +optional = false +python-versions = ">=3.5" +files = [ + {file = "win32_setctime-1.1.0-py3-none-any.whl", hash = "sha256:231db239e959c2fe7eb1d7dc129f11172354f98361c4fa2d6d2d7e278baa8aad"}, + {file = "win32_setctime-1.1.0.tar.gz", hash = "sha256:15cf5750465118d6929ae4de4eb46e8edae9a5634350c01ba582df868e932cb2"}, +] + +[package.extras] +dev = ["black (>=19.3b0)", "pytest (>=4.6.2)"] + +[[package]] +name = "y-py" +version = "0.6.0" +description = "Python bindings for the Y-CRDT built from yrs (Rust)" +optional = false +python-versions = "*" +files = [ + {file = "y_py-0.6.0-cp310-cp310-macosx_10_7_x86_64.whl", hash = "sha256:ebbebc4f6a9e0c89c7b57035f91043b038e804dd1953845d8a66066f4526c853"}, + {file = "y_py-0.6.0-cp310-cp310-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl", hash = "sha256:2c230bc01b96081550b7583b77d00404fd39825657f4064b919a10515f660cdf"}, + {file = "y_py-0.6.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b5f5975c1a8c2ca99980571b8811d151db8590de9cc96346572a81e0f6f1e30e"}, + {file = "y_py-0.6.0-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:e5f89cf9ef1daf12f438a075415a02f227594e4b0494c78d3b83cb83651631f5"}, + {file = "y_py-0.6.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:efb3225b58dc67152c004da3c26ae5bad0afebbb3c7509d853bdd87eaa655137"}, + {file = "y_py-0.6.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:aaaec9718f8a23924c95294d41d87829b113bc9a606a3667dfb995afc45c9920"}, + {file = "y_py-0.6.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1fb03947937b0fcb09eb2b94eb08d8e8030ef0ed70af777684ab670bd369bc3c"}, + {file = "y_py-0.6.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:f79ef7303e332e91d738e66e9bb7fce0243d0407a02631a58ebc0bf2fb8743d0"}, + {file = "y_py-0.6.0-cp310-none-win32.whl", hash = "sha256:1667b8a67ace756c04f03778e86fc359028c98905212f8686afb48c26c252bda"}, + {file = "y_py-0.6.0-cp310-none-win_amd64.whl", hash = "sha256:cca539c3804a580992304b18a33f1980282d9097a723f0bd01971477cb365b28"}, + {file = "y_py-0.6.0-cp311-cp311-macosx_10_7_x86_64.whl", hash = "sha256:5743e94c982585f05e02d9a3345dd9b1f28d90fa128df9f60b0eb357a76d2c32"}, + {file = "y_py-0.6.0-cp311-cp311-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl", hash = "sha256:281535bb4f18fe09e5517a63b8206dd6f26ad6fb7e7c25c62bf785e594adab4d"}, + {file = "y_py-0.6.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:69e05e01594e99c934562124b159720533b7ad887dde7762d460916aac47a8e4"}, + {file = "y_py-0.6.0-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:a752ba8875ed2038dfc7d62738536cb22b4e308951cb925a7fe8fef782c6db08"}, + {file = "y_py-0.6.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1ea7d796bb55d08dd1a60736beb724004f2cbdc207592b5f301a5ff314b17137"}, + {file = "y_py-0.6.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e5126786f914ff53ea2f04f9da790db168db172521cc4f114d5501badd2f6b96"}, + {file = "y_py-0.6.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b71cd495d322da25a53a6a830b591a2c0c46db22bb0b3556fca0bbdb1d45a18e"}, + {file = "y_py-0.6.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:0624a5adf29d29330a336eecdf15874871f559d50944d542012665e1c3a18265"}, + {file = "y_py-0.6.0-cp311-none-win32.whl", hash = "sha256:374ffef1939c42286ea18e2a413c9974430226227f8f1480bbee469933aa675b"}, + {file = "y_py-0.6.0-cp311-none-win_amd64.whl", hash = "sha256:9242f3a5c6293e634817d9984c60523ffb34cf5b41501c5958681a75745946e6"}, + {file = "y_py-0.6.0-cp37-cp37m-macosx_10_7_x86_64.whl", hash = "sha256:9dad6af2d83a2b0618ba3c1a2fc6657c5303cf4e9f1a65cc3fea40ffbcc552e2"}, + {file = "y_py-0.6.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:74d5ebb5f9ef0c4c1f7bdd9ab5e53b9d8be4c7464905f39761b22b6ce0d327d3"}, + {file = "y_py-0.6.0-cp37-cp37m-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:a027c39296c925f0b81e28a0fefab8c5964a0ea2b50fa05cbddf5e5ab167a380"}, + {file = "y_py-0.6.0-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:49adf7e25c3b3bac9f19bee181ef5253659ebe5747a7141860692015222b2007"}, + {file = "y_py-0.6.0-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:47b3604c874d25616a097adaaabcad6e77729e23c5d029092b8149af1a08b2a5"}, + {file = "y_py-0.6.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6a5a882591c8e1b1d6fbdb7ab43884907cef2b6a18e36c7ae85589e5f55371e5"}, + {file = "y_py-0.6.0-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:30b9337e4f3d541879a8187af121be1bd42ea110372a21895a1a3f800a6bd1c3"}, + {file = "y_py-0.6.0-cp37-none-win32.whl", hash = "sha256:ef0f08edb2094869e4d12346ee68d5154cb3d23bc3b1e7679222fae12228261c"}, + {file = "y_py-0.6.0-cp37-none-win_amd64.whl", hash = "sha256:391a232c328c2be1de4cb152ed3e9427826e4cbd9d645feacb3dbb344b122e10"}, + {file = "y_py-0.6.0-cp38-cp38-macosx_10_7_x86_64.whl", hash = "sha256:eb60fe68774117378efdbd368ef83cf1417e61d4bc39c6be8e7f4ee91fb7428a"}, + {file = "y_py-0.6.0-cp38-cp38-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl", hash = "sha256:4f025c50301d9ddbbc2384f98d3ff1dbfe43606146b747e23a17774a02faffe9"}, + {file = "y_py-0.6.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4181b28f736cae3bb4517090ae5eeca318c075c0106466f13a4ed6682265fc8a"}, + {file = "y_py-0.6.0-cp38-cp38-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:b6273d84605ee55b3ac52742018f94602dab9b0457f29e6f787021c473b02fed"}, + {file = "y_py-0.6.0-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1eefb6371cd6e072cf467b897f85bd0d7575f3a3e944fb8675f84fb59aedd071"}, + {file = "y_py-0.6.0-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b75c2199a125ef8926f3216fb324c3bcd8b1b4b6c0b428888cc753ee4c85f81f"}, + {file = "y_py-0.6.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:035ba7ce31bb87bd7b5977eee71ee2ff71e54d347a35e2079362b1c23731dccd"}, + {file = "y_py-0.6.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:418aaa796a22b0102de09b36b6c6294d0a485f04bc8866c3b28f17e7022c44ba"}, + {file = "y_py-0.6.0-cp38-none-win32.whl", hash = "sha256:fc48db294d327a5cc10ee49f73f1fa1478240cc827c9029e0871106e327353ac"}, + {file = "y_py-0.6.0-cp38-none-win_amd64.whl", hash = "sha256:d1301bfeaa26f78f4b0e5f96e0f22761b38cc407713f70550a1be490945fd6d7"}, + {file = "y_py-0.6.0-cp39-cp39-macosx_10_7_x86_64.whl", hash = "sha256:e48b5b30242c7d517be85b48246b21e4e26540505a1ffe4fe473e239a8ec56d3"}, + {file = "y_py-0.6.0-cp39-cp39-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl", hash = "sha256:479da40ef1205de52d87209534bf8e713a782e01eeed3df8dff44d21085e3f63"}, + {file = "y_py-0.6.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:19b7c3eaf65b162e59486a48bea5dd2035937952f15e008a14813e8cb7c24d7b"}, + {file = "y_py-0.6.0-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:a20a4d10c8f0ee2b6df265d182d0be0ecd2ba7348c0a20b9df7d4d39df895801"}, + {file = "y_py-0.6.0-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:304e88a3deaff9906faa7ba514cf82f4ca4bad1ea88728206ff906e66179abd3"}, + {file = "y_py-0.6.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:6377e3cbab8f5b8b918130e9f924358f98ca1bea12a8096d3fadea191f7137f1"}, + {file = "y_py-0.6.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b44fdd64598e9ed4008158e5e60be5e1e2daeed6fae0ab2bf0002461e960709d"}, + {file = "y_py-0.6.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:51f1997dae6d77b12b50502871c7a9aae22e84048e83b64fe6d4f18dec2e4700"}, + {file = "y_py-0.6.0-cp39-none-win32.whl", hash = "sha256:9f56888aeb07ca76a5cd552581bb3735fcd2d8c18165b946fdb6e4507b10e76c"}, + {file = "y_py-0.6.0-cp39-none-win_amd64.whl", hash = "sha256:11345294820908d5b8af9c6616ea908dda8b3e554ee6f6d50be6a2e15940f63e"}, + {file = "y_py-0.6.0-pp38-pypy38_pp73-macosx_10_7_x86_64.whl", hash = "sha256:4c16d50d0728abd915bd9e2e0c3ce982005ba78b60e4b6666aadc592d9982c79"}, + {file = "y_py-0.6.0-pp38-pypy38_pp73-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl", hash = "sha256:eccf67d09a4df42a7be2a5427c1b2e0b89bec862f519ded754bd452df516b380"}, + {file = "y_py-0.6.0-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:513a2fe1318c247fc3b3c3ad208488e870a216784f2a3e6dbe2688c92f671c86"}, + {file = "y_py-0.6.0-pp38-pypy38_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:76e2b14004cadb237499a8a068fd7a8b805b5c1fd0508530473e087c7dd25163"}, + {file = "y_py-0.6.0-pp38-pypy38_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:c276a7eb3ae3360f5a2fc503f1e4535d4a2f1c8cfc22af4595ad752e9a94fd77"}, + {file = "y_py-0.6.0-pp38-pypy38_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:71f7689c25bd7608e1e7a76a13138cb202455fac165018693a3e8e5675f54b82"}, + {file = "y_py-0.6.0-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c0505e2ca36408b754774a2bb20d93b5c7def3873406c13e1855de6f007f8a94"}, + {file = "y_py-0.6.0-pp38-pypy38_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:8f143fdcda7a6a89bf96d9b359142a7ca3315e8a9018aa46b0abbdeb47d7192e"}, + {file = "y_py-0.6.0-pp39-pypy39_pp73-macosx_10_7_x86_64.whl", hash = "sha256:9a920bf096d1eecb0f30afc38ee56bfcb9e2c863c33db96fc9d30d4ac0dbee58"}, + {file = "y_py-0.6.0-pp39-pypy39_pp73-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl", hash = "sha256:97812f9443fd846012d60ecacffa2a11992d02ad9f8618d4faae8e596736c646"}, + {file = "y_py-0.6.0-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:83115cbbd4f6d3b38ebe06d80b1d0dbf1b10e53947f71df16f6145a4f0d14716"}, + {file = "y_py-0.6.0-pp39-pypy39_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:4cac9259839b32706336b3f521cacfd16fc7cefee609bd9c2b5123099328d696"}, + {file = "y_py-0.6.0-pp39-pypy39_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:e76be7258010ce8cbb93a841f78f52901bba1253a51213d3535972d13aa4e89e"}, + {file = "y_py-0.6.0-pp39-pypy39_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a4b488be17d83173acb7f07c7e3430d2c66d0bd55b821683089311699562b58b"}, + {file = "y_py-0.6.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:37b9f24b00972e5685d0b9bbd01413d9c33d124145343fb92667f0e076f040ad"}, + {file = "y_py-0.6.0-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:95083c4cdbd593497a695e841b2ad050c0b9a8a9e374f8496aa478cebfcf9cc9"}, + {file = "y_py-0.6.0.tar.gz", hash = "sha256:46836169f7dc2957df8513cfe4bc2009175b3a473e630af421a8e75ee1c48f98"}, +] + +[[package]] +name = "ypy-websocket" +version = "0.8.4" +description = "WebSocket connector for Ypy" +optional = false +python-versions = ">=3.7" +files = [ + {file = "ypy_websocket-0.8.4-py3-none-any.whl", hash = "sha256:b1ba0dfcc9762f0ca168d2378062d3ca1299d39076b0f145d961359121042be5"}, + {file = "ypy_websocket-0.8.4.tar.gz", hash = "sha256:43a001473f5c8abcf182f603049cf305cbc855ad8deaa9dfa0f3b5a7cea9d0ff"}, +] + +[package.dependencies] +aiofiles = ">=22.1.0,<23" +aiosqlite = ">=0.17.0,<1" +y-py = ">=0.6.0,<0.7.0" + +[package.extras] +test = ["mypy", "pre-commit", "pytest", "pytest-asyncio", "websockets (>=10.0)"] + +[[package]] +name = "zipp" +version = "3.17.0" +description = "Backport of pathlib-compatible object wrapper for zip files" +optional = false +python-versions = ">=3.8" +files = [ + {file = "zipp-3.17.0-py3-none-any.whl", hash = "sha256:0e923e726174922dce09c53c59ad483ff7bbb8e572e00c7f7c46b88556409f31"}, + {file = "zipp-3.17.0.tar.gz", hash = "sha256:84e64a1c28cf7e91ed2078bb8cc8c259cb19b76942096c8d7b84947690cabaf0"}, +] + +[package.extras] +docs = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (<7.2.5)", "sphinx (>=3.5)", "sphinx-lint"] +testing = ["big-O", "jaraco.functools", "jaraco.itertools", "more-itertools", "pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-ignore-flaky", "pytest-mypy (>=0.9.1)", "pytest-ruff"] + +[metadata] +lock-version = "2.0" +python-versions = "^3.9,<3.11" +content-hash = "d86fe0e8643f1a73aa6678940ac9e40471079a27cb7dfd41fe5ac058e2aca95e" diff --git a/pyproject.toml b/pyproject.toml new file mode 100644 index 00000000..c2182a98 --- /dev/null +++ b/pyproject.toml @@ -0,0 +1,64 @@ +[tool.poetry] +name = "vimms" +version = "2.1.3" +description = "A framework to develop, test and optimise fragmentation strategies in LC-MS metabolomics." +authors = ["Joe Wandy ", "Vinny Davies", "Ross McBride", "Justin J.J. van der Hooft", "Stefan Weidt", "Ronan Daly", "Simon Rogers"] +license = "MIT" +readme = "README.md" +homepage = "https://github.com/glasgowcompbio/vimms" +keywords = ["LC-MS", "metabolomics", "simulator", "mass spectrometry"] +classifiers = [ + "Programming Language :: Python :: 3.9", + "Programming Language :: Python :: 3.10", + "License :: OSI Approved :: MIT License", + "Operating System :: OS Independent" +] + +[tool.poetry.dependencies] +python = "^3.9,<3.11" +numpy = "^1.24.3" +pandas = "^2.0.3" +scipy = "^1.11.1" +matplotlib = "^3.7.2" +seaborn = "^0.12.2" +plotly = "^5.9.0" +scikit-learn = "^1.3.0" +tqdm = "^4.65.0" +joblib = "^1.2.0" +ipyparallel = "^8.4.1" +requests = "^2.31.0" +loguru = "^0.5.3" +networkx = "^3.1" +jsonpickle = "^2.2.0" +statsmodels = "^0.14.0" +tabulate = "^0.8.10" +intervaltree = "^3.1.0" +events = "0.5" +# gpy = "1.10.0" +pymzml = "2.4.7" +psims = "^1.2.7" +mass-spec-utils = "0.0.12" +pysmiles = "^1.1.2" +numba = "^0.57.1" +numba-stats = "^1.3.0" +brain-isotopic-distribution = "^1.5.14" +ms-peak-picker = "0.1.42" +ms-deisotope = "0.0.52" +optuna = "^3.3.0" +# kaleido = "^0.2.1" + +[tool.poetry.dev-dependencies] +jupyterlab = "^3.6.3" +ipywidgets = "^8.0.4" +flake8 = "^6.0.0" +autopep8 = "^1.6.0" +pytest = "^7.4.0" +pytest-cov = "^4.1.0" +mkdocs = "^1.5.3" +mkdocstrings = "^0.23.0" + +[tool.setuptools_scm] + +[build-system] +requires = ["poetry-core>=1.0.0"] +build-backend = "poetry.core.masonry.api" diff --git a/setup.py b/setup.py deleted file mode 100644 index b97eb9fd..00000000 --- a/setup.py +++ /dev/null @@ -1,33 +0,0 @@ -from setuptools import setup, find_packages - -with open("README.md", "r") as fh: - long_description = fh.read() - -setup( - dependency_links=[], - name="vimms", - version="2.1.2", - author="Joe Wandy, Vinny Davies, Ross McBride, Justin J.J. van der Hooft, " - "Stefan Weidt, Ronan Daly, Simon Rogers", - author_email="joe.wandy@glasgow.ac.uk", - description="A framework to develop, test and optimise fragmentation strategies in LC-MS " - "metabolomics.", - long_description="ViMMS is a modular LC-MS/MS simulator framework for " - "metabolomics that allows for real-time scan-level " - "control of the MS2 acquisition process in-silico.", - long_description_content_type="text/markdown", - url="https://github.com/glasgowcompbio/vimms", - classifiers=[ - "Programming Language :: Python :: 3", - "License :: OSI Approved :: MIT License", - "Operating System :: OS Independent", - ], - python_requires=">=3.6", - packages=find_packages(), - install_requires=['numpy', 'pandas', 'scipy', 'matplotlib', 'seaborn', 'scikit-learn', - 'pymzml==2.4.7', 'psims', 'events', 'tqdm', 'joblib', 'ipyparallel', - 'requests', 'loguru', 'networkx', 'jsonpickle', 'statsmodels', - 'mass-spec-utils', 'tabulate', 'pysmiles', 'intervaltree', 'gpy', - 'numba', 'numba-stats'], - -) From 39f3a98fb48ef57bee06472f084b264bf755f440 Mon Sep 17 00:00:00 2001 From: Joe Wandy Date: Sat, 30 Sep 2023 00:17:52 +0100 Subject: [PATCH 65/67] Fixes for failing readthedocs build --- .readthedocs.yml | 2 +- environment_readthedocs.yml | 47 +++++++++++++++++++++++++++++++++++++ 2 files changed, 48 insertions(+), 1 deletion(-) create mode 100644 environment_readthedocs.yml diff --git a/.readthedocs.yml b/.readthedocs.yml index 99f6a700..53b746d4 100644 --- a/.readthedocs.yml +++ b/.readthedocs.yml @@ -15,4 +15,4 @@ formats: all # Specify the Conda environment file conda: - environment: environment.yml + environment: environment_readthedocs.yml diff --git a/environment_readthedocs.yml b/environment_readthedocs.yml new file mode 100644 index 00000000..1e87aa8c --- /dev/null +++ b/environment_readthedocs.yml @@ -0,0 +1,47 @@ +name: vimms +channels: + - defaults +dependencies: + - python>=3.9,<3.11 + - numpy + - pandas + - numba + - scipy + - matplotlib + - seaborn + - plotly + - scikit-learn + - tqdm + - joblib + - ipyparallel + - requests + - loguru + - networkx + - jsonpickle + - statsmodels + - tabulate + - flake8 + - autopep8 + - pytest + - pytest-cov + - intervaltree + - jupyterlab + - ipywidgets + - pip + - pip: + - recommonmark + - mkdocs + - events + - gpy + - mkdocstrings + - mkdocstrings-python + - pymzml + - psims + - mass-spec-utils + - pysmiles + - numba-stats + - brain-isotopic-distribution + - ms-peak-picker + - ms-deisotope + - optuna + - kaleido From 3e34b18d9502b23fc4640d3d40f7038f84df234a Mon Sep 17 00:00:00 2001 From: Joe Wandy Date: Tue, 3 Oct 2023 00:10:24 +0100 Subject: [PATCH 66/67] - Bumped version. - Updated installation guide. - Should only support Conda and poetry from now on. --- Pipfile | 78 ++-- environment.yml | 76 ++-- environment_readthedocs.yml | 2 - pages/installation.md | 78 ++-- poetry.lock | 819 +++++++++++++++++++----------------- pyproject.toml | 16 +- 6 files changed, 552 insertions(+), 517 deletions(-) diff --git a/Pipfile b/Pipfile index 7b373fb5..eb3f2c35 100644 --- a/Pipfile +++ b/Pipfile @@ -4,50 +4,44 @@ verify_ssl = true name = "pypi" [packages] -numpy = "==1.24.3" -pandas = "==2.0.3" -scipy = "==1.11.1" -matplotlib = "==3.7.2" -numba = "==0.57.1" -numba-stats = "==1.3.0" -seaborn = "==0.12.2" -plotly = "==5.9.0" -scikit-learn = "==1.3.0" -pymzml = "==2.4.7" -psims = "==1.2.7" -events = "==0.5" -tqdm = "==4.65.0" -joblib = "==1.2.0" -ipyparallel = "==8.4.1" -requests = "==2.31.0" -loguru = "==0.5.3" -networkx = "==3.1" -jsonpickle = "==2.2.0" -statsmodels = "==0.14.0" -mass-spec-utils = "*" -brain-isotopic-distribution = "==1.5.14" -ms-peak-picker = "==0.1.42" -ms-deisotope = "==0.0.52" -tabulate = "==0.8.10" -pysmiles = "==1.1.2" -pipenv-setup = "*" -flake8 = "==6.0.0" -autopep8 = "==1.6.0" -pytest = "==7.4.0" -pytest-cov = "==4.1.0" -intervaltree = "==3.1.0" -jupyterlab = "==3.6.3" -ipywidgets = "==8.0.4" -# gpy = "==1.10.0" -optuna = "==3.3.0" -# kaleido = "==0.2.1" +numpy = ">=1.24.3" +pandas = ">=2.0.3" +scipy = ">=1.11.1" +matplotlib = ">=3.7.2" +seaborn = ">=0.12.2" +plotly = ">=5.9.0" +scikit-learn = ">=1.3.0" +tqdm = ">=4.65.0" +joblib = ">=1.2.0" +ipyparallel = ">=8.4.1" +requests = ">=2.31.0" +loguru = ">=0.5.3" +networkx = ">=3.1" +jsonpickle = ">=2.2.0" +statsmodels = ">=0.14.0" +tabulate = ">=0.8.10" +intervaltree = ">=3.1.0" +events = ">=0.5" +pymzml = ">=2.4.7" +psims = ">=1.2.7" +mass-spec-utils = ">=0.0.12" +pysmiles = ">=1.1.2" +numba = ">=0.57.1" +numba-stats = ">=1.3.0" +ms-deisotope = ">=0.0.53" +optuna = ">=3.3.0" +# gpy = ">=1.10.0" +# kaleido = ">=0.2.1" [dev-packages] -twine = "*" -build = "*" -mkdocs = "==1.5.3" -mkdocstrings = "==0.23.0" -mkdocstrings-python = "==1.7.0" +jupyterlab = ">=3.6.3" +ipywidgets = ">=8.0.4" +flake8 = ">=6.0.0" +autopep8 = ">=1.6.0" +pytest = ">=7.4.0" +pytest-cov = ">=4.1.0" +mkdocs = ">=1.5.3" +mkdocstrings = ">=0.23.0" [requires] python_version = "3.10" diff --git a/environment.yml b/environment.yml index 7fd03787..b6646f91 100644 --- a/environment.yml +++ b/environment.yml @@ -3,44 +3,42 @@ channels: - defaults dependencies: - python>=3.9,<3.11 - - numpy=1.24.3 - - pandas=2.0.3 - - numba=0.57.1 - - scipy=1.11.1 - - matplotlib=3.7.2 - - seaborn=0.12.2 - - plotly=5.9.0 - - scikit-learn=1.3.0 - - tqdm=4.65.0 - - joblib=1.2.0 - - ipyparallel=8.4.1 - - requests=2.31.0 - - loguru=0.5.3 - - networkx=3.1 - - jsonpickle=2.2.0 - - statsmodels=0.14.0 - - tabulate=0.8.10 - - flake8=6.0.0 - - autopep8=1.6.0 - - pytest=7.4.0 - - pytest-cov=4.1.0 - - intervaltree=3.1.0 - - jupyterlab=3.6.3 - - ipywidgets=8.0.4 + - numpy>=1.24.3 + - pandas>=2.0.3 + - numba>=0.57.1 + - scipy>=1.11.1 + - matplotlib>=3.7.2 + - seaborn>=0.12.2 + - plotly>=5.9.0 + - scikit-learn>=1.3.0 + - tqdm>=4.65.0 + - joblib>=1.2.0 + - ipyparallel>=8.4.1 + - requests>=2.31.0 + - loguru>=0.5.3 + - networkx>=3.1 + - jsonpickle>=2.2.0 + - statsmodels>=0.14.0 + - tabulate>=0.8.10 + - flake8>=6.0.0 + - autopep8>=1.6.0 + - pytest>=7.4.0 + - pytest-cov>=4.1.0 + - intervaltree>=3.1.0 + - jupyterlab>=3.6.3 + - ipywidgets>=8.0.4 - pip - pip: - - events==0.5 - - gpy==1.10.0 - - mkdocs==1.5.3 - - mkdocstrings==0.23.0 - - mkdocstrings-python==1.7.0 - - pymzml==2.4.7 - - psims==1.2.7 - - mass-spec-utils==0.0.12 - - pysmiles==1.1.2 - - numba-stats==1.3.0 - - brain-isotopic-distribution==1.5.14 - - ms-peak-picker==0.1.42 - - ms-deisotope==0.0.52 - - optuna==3.3.0 - - kaleido==0.2.1 + - events>=0.5 + - gpy>=1.10.0 + - mkdocs>=1.5.3 + - mkdocstrings>=0.23.0 + - mkdocstrings-python>=1.7.0 + - pymzml>=2.4.7 + - psims>=1.2.7 + - mass-spec-utils>=0.0.12 + - pysmiles>=1.1.2 + - numba-stats>=1.3.0 + - ms-deisotope>=0.0.52 + - optuna>=3.3.0 + - kaleido>=0.2.1 diff --git a/environment_readthedocs.yml b/environment_readthedocs.yml index 1e87aa8c..a38a2f29 100644 --- a/environment_readthedocs.yml +++ b/environment_readthedocs.yml @@ -40,8 +40,6 @@ dependencies: - mass-spec-utils - pysmiles - numba-stats - - brain-isotopic-distribution - - ms-peak-picker - ms-deisotope - optuna - kaleido diff --git a/pages/installation.md b/pages/installation.md index bea25d1b..820b063a 100644 --- a/pages/installation.md +++ b/pages/installation.md @@ -1,42 +1,60 @@ -# Installation Guide +# ViMMS Installation Guide -**Stable Release** +## 🌟 Stable Release +ViMMS is designed for Python 3 and above. Install the latest stable release with the following command: -ViMMS is compatible with Python 3 or newer. You can install the latest stable release using pip or pipenv: +```bash +pip install vimms +``` +Check out the latest versions on the [Release page](https://github.com/glasgowcompbio/vimms/releases) or [PyPi](https://pypi.org/project/vimms/#history). -```$ pip install vimms``` -or -```$ pipenv install vimms``` +**🕰 Older Releases** -To verify the current version, visit the [Release page](https://github.com/glasgowcompbio/vimms/releases) or [PyPi](https://pypi.org/project/vimms/#history). +For those interested in ViMMS version 1.0 as used in our [original paper](https://www.mdpi.com/2218-1989/9/10/219), you can get it [here](https://zenodo.org/badge/latestdoi/196360601). +Be aware that it's quite outdated now. +For other previous releases, head over to the [Releases](https://github.com/glasgowcompbio/vimms/releases) page on GitHub. +This include releases to support other papers. -**Older Release** +**🔧 Development Version** -The ViMMS 1.0 version used in our [original paper](https://www.mdpi.com/2218-1989/9/10/219) can be downloaded [here](https://zenodo.org/badge/latestdoi/196360601). Please note, this version is now significantly out of date. - -**Development Version** - -For the most recent codebase (still under development), clone this repository: +To get the latest features and fixes (still under development), clone the repository: ```$ git clone https://github.com/glasgowcompbio/vimms.git``` -The dependencies can be managed using either [Pipenv](https://pipenv.pypa.io/en/latest/) or [Anaconda Python](https://www.anaconda.com). - -***With Pipenv:*** - -1. Install pipenv. -2. Run `$ pipenv install` within the cloned repo to create a new virtual environment and install required packages. -3. Enter the virtual environment using `$ pipenv shell`. - -***With Anaconda Python:*** - -1. Install Anaconda Python. -2. Run `$ conda env create --file environment.yml` within the cloned repo to create a new virtual environment and install required packages. -3. Access the virtual environment by typing `$ conda activate vimms`. - -# Test Cases - -Unit tests demonstrating simulation execution are in the `tests` folder. Use scripts `run_tests.sh` or `run_tests.bat` to run these tests. +You can then set up the environment using [Anaconda Python](https://www.anaconda.com) or [Poetry](https://python-poetry.org). +We recommend using Conda. + +There is also support for using [Pipenv](https://pipenv.pypa.io/en/latest/) through the included Pipfile in the repo, but +going forward that will not be maintained anymore. + +***Setting up with Anaconda:*** +``` +$ cd vimms +$ conda env create --file environment.yml +$ conda activate vimms +$ jupyter lab (to test notebooks) +``` + +***Setting up with Poetry:*** +``` +$ cd vimms +$ pip install poetry (if you don't have it) +$ poetry install +$ poetry shell +$ jupyter lab (to test notebooks) +``` + +***Setting up with Pipenv:*** +``` +$ cd vimms +$ pip install pipenv (if you don't have it) +$ pipenv install +$ pipenv shell +``` + +# 🧪 Testing ViMMS + +Unit tests are located in the `tests` folder. Use the scripts `run_tests.sh` or `run_tests.bat` to execute them. Run individual test classes with: diff --git a/poetry.lock b/poetry.lock index c9c54d3b..c9eecfcc 100644 --- a/poetry.lock +++ b/poetry.lock @@ -136,17 +136,22 @@ tests = ["pytest"] [[package]] name = "arrow" -version = "1.2.3" +version = "1.3.0" description = "Better dates & times for Python" optional = false -python-versions = ">=3.6" +python-versions = ">=3.8" files = [ - {file = "arrow-1.2.3-py3-none-any.whl", hash = "sha256:5a49ab92e3b7b71d96cd6bfcc4df14efefc9dfa96ea19045815914a6ab6b1fe2"}, - {file = "arrow-1.2.3.tar.gz", hash = "sha256:3934b30ca1b9f292376d9db15b19446088d12ec58629bc3f0da28fd55fb633a1"}, + {file = "arrow-1.3.0-py3-none-any.whl", hash = "sha256:c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80"}, + {file = "arrow-1.3.0.tar.gz", hash = "sha256:d4540617648cb5f895730f1ad8c82a65f2dad0166f57b75f3ca54759c4d67a85"}, ] [package.dependencies] python-dateutil = ">=2.7.0" +types-python-dateutil = ">=2.8.10" + +[package.extras] +doc = ["doc8", "sphinx (>=7.0.0)", "sphinx-autobuild", "sphinx-autodoc-typehints", "sphinx_rtd_theme (>=1.3.0)"] +test = ["dateparser (==1.*)", "pre-commit", "pytest", "pytest-cov", "pytest-mock", "pytz (==2021.1)", "simplejson (==3.*)"] [[package]] name = "asttokens" @@ -288,75 +293,63 @@ files = [ [[package]] name = "cffi" -version = "1.15.1" +version = "1.16.0" description = "Foreign Function Interface for Python calling C code." optional = false -python-versions = "*" +python-versions = ">=3.8" files = [ - {file = "cffi-1.15.1-cp27-cp27m-macosx_10_9_x86_64.whl", hash = "sha256:a66d3508133af6e8548451b25058d5812812ec3798c886bf38ed24a98216fab2"}, - {file = "cffi-1.15.1-cp27-cp27m-manylinux1_i686.whl", hash = "sha256:470c103ae716238bbe698d67ad020e1db9d9dba34fa5a899b5e21577e6d52ed2"}, - {file = "cffi-1.15.1-cp27-cp27m-manylinux1_x86_64.whl", hash = "sha256:9ad5db27f9cabae298d151c85cf2bad1d359a1b9c686a275df03385758e2f914"}, - {file = "cffi-1.15.1-cp27-cp27m-win32.whl", hash = "sha256:b3bbeb01c2b273cca1e1e0c5df57f12dce9a4dd331b4fa1635b8bec26350bde3"}, - {file = "cffi-1.15.1-cp27-cp27m-win_amd64.whl", hash = "sha256:e00b098126fd45523dd056d2efba6c5a63b71ffe9f2bbe1a4fe1716e1d0c331e"}, - {file = "cffi-1.15.1-cp27-cp27mu-manylinux1_i686.whl", hash = "sha256:d61f4695e6c866a23a21acab0509af1cdfd2c013cf256bbf5b6b5e2695827162"}, - {file = "cffi-1.15.1-cp27-cp27mu-manylinux1_x86_64.whl", hash = "sha256:ed9cb427ba5504c1dc15ede7d516b84757c3e3d7868ccc85121d9310d27eed0b"}, - {file = "cffi-1.15.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:39d39875251ca8f612b6f33e6b1195af86d1b3e60086068be9cc053aa4376e21"}, - {file = "cffi-1.15.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:285d29981935eb726a4399badae8f0ffdff4f5050eaa6d0cfc3f64b857b77185"}, - {file = "cffi-1.15.1-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3eb6971dcff08619f8d91607cfc726518b6fa2a9eba42856be181c6d0d9515fd"}, - {file = "cffi-1.15.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:21157295583fe8943475029ed5abdcf71eb3911894724e360acff1d61c1d54bc"}, - {file = "cffi-1.15.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:5635bd9cb9731e6d4a1132a498dd34f764034a8ce60cef4f5319c0541159392f"}, - {file = "cffi-1.15.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2012c72d854c2d03e45d06ae57f40d78e5770d252f195b93f581acf3ba44496e"}, - {file = "cffi-1.15.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dd86c085fae2efd48ac91dd7ccffcfc0571387fe1193d33b6394db7ef31fe2a4"}, - {file = "cffi-1.15.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:fa6693661a4c91757f4412306191b6dc88c1703f780c8234035eac011922bc01"}, - {file = "cffi-1.15.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:59c0b02d0a6c384d453fece7566d1c7e6b7bae4fc5874ef2ef46d56776d61c9e"}, - {file = "cffi-1.15.1-cp310-cp310-win32.whl", hash = "sha256:cba9d6b9a7d64d4bd46167096fc9d2f835e25d7e4c121fb2ddfc6528fb0413b2"}, - {file = "cffi-1.15.1-cp310-cp310-win_amd64.whl", hash = "sha256:ce4bcc037df4fc5e3d184794f27bdaab018943698f4ca31630bc7f84a7b69c6d"}, - {file = "cffi-1.15.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:3d08afd128ddaa624a48cf2b859afef385b720bb4b43df214f85616922e6a5ac"}, - {file = "cffi-1.15.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:3799aecf2e17cf585d977b780ce79ff0dc9b78d799fc694221ce814c2c19db83"}, - {file = "cffi-1.15.1-cp311-cp311-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a591fe9e525846e4d154205572a029f653ada1a78b93697f3b5a8f1f2bc055b9"}, - {file = "cffi-1.15.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3548db281cd7d2561c9ad9984681c95f7b0e38881201e157833a2342c30d5e8c"}, - {file = "cffi-1.15.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:91fc98adde3d7881af9b59ed0294046f3806221863722ba7d8d120c575314325"}, - {file = "cffi-1.15.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:94411f22c3985acaec6f83c6df553f2dbe17b698cc7f8ae751ff2237d96b9e3c"}, - {file = "cffi-1.15.1-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:03425bdae262c76aad70202debd780501fabeaca237cdfddc008987c0e0f59ef"}, - {file = "cffi-1.15.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:cc4d65aeeaa04136a12677d3dd0b1c0c94dc43abac5860ab33cceb42b801c1e8"}, - {file = "cffi-1.15.1-cp311-cp311-win32.whl", hash = "sha256:a0f100c8912c114ff53e1202d0078b425bee3649ae34d7b070e9697f93c5d52d"}, - {file = "cffi-1.15.1-cp311-cp311-win_amd64.whl", hash = "sha256:04ed324bda3cda42b9b695d51bb7d54b680b9719cfab04227cdd1e04e5de3104"}, - {file = "cffi-1.15.1-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:50a74364d85fd319352182ef59c5c790484a336f6db772c1a9231f1c3ed0cbd7"}, - {file = "cffi-1.15.1-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e263d77ee3dd201c3a142934a086a4450861778baaeeb45db4591ef65550b0a6"}, - {file = "cffi-1.15.1-cp36-cp36m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:cec7d9412a9102bdc577382c3929b337320c4c4c4849f2c5cdd14d7368c5562d"}, - {file = "cffi-1.15.1-cp36-cp36m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4289fc34b2f5316fbb762d75362931e351941fa95fa18789191b33fc4cf9504a"}, - {file = "cffi-1.15.1-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:173379135477dc8cac4bc58f45db08ab45d228b3363adb7af79436135d028405"}, - {file = "cffi-1.15.1-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:6975a3fac6bc83c4a65c9f9fcab9e47019a11d3d2cf7f3c0d03431bf145a941e"}, - {file = "cffi-1.15.1-cp36-cp36m-win32.whl", hash = "sha256:2470043b93ff09bf8fb1d46d1cb756ce6132c54826661a32d4e4d132e1977adf"}, - {file = "cffi-1.15.1-cp36-cp36m-win_amd64.whl", hash = "sha256:30d78fbc8ebf9c92c9b7823ee18eb92f2e6ef79b45ac84db507f52fbe3ec4497"}, - {file = "cffi-1.15.1-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:198caafb44239b60e252492445da556afafc7d1e3ab7a1fb3f0584ef6d742375"}, - {file = "cffi-1.15.1-cp37-cp37m-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:5ef34d190326c3b1f822a5b7a45f6c4535e2f47ed06fec77d3d799c450b2651e"}, - {file = "cffi-1.15.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8102eaf27e1e448db915d08afa8b41d6c7ca7a04b7d73af6514df10a3e74bd82"}, - {file = "cffi-1.15.1-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:5df2768244d19ab7f60546d0c7c63ce1581f7af8b5de3eb3004b9b6fc8a9f84b"}, - {file = "cffi-1.15.1-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a8c4917bd7ad33e8eb21e9a5bbba979b49d9a97acb3a803092cbc1133e20343c"}, - {file = "cffi-1.15.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0e2642fe3142e4cc4af0799748233ad6da94c62a8bec3a6648bf8ee68b1c7426"}, - {file = "cffi-1.15.1-cp37-cp37m-win32.whl", hash = "sha256:e229a521186c75c8ad9490854fd8bbdd9a0c9aa3a524326b55be83b54d4e0ad9"}, - {file = "cffi-1.15.1-cp37-cp37m-win_amd64.whl", hash = "sha256:a0b71b1b8fbf2b96e41c4d990244165e2c9be83d54962a9a1d118fd8657d2045"}, - {file = "cffi-1.15.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:320dab6e7cb2eacdf0e658569d2575c4dad258c0fcc794f46215e1e39f90f2c3"}, - {file = "cffi-1.15.1-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1e74c6b51a9ed6589199c787bf5f9875612ca4a8a0785fb2d4a84429badaf22a"}, - {file = "cffi-1.15.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a5c84c68147988265e60416b57fc83425a78058853509c1b0629c180094904a5"}, - {file = "cffi-1.15.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:3b926aa83d1edb5aa5b427b4053dc420ec295a08e40911296b9eb1b6170f6cca"}, - {file = "cffi-1.15.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:87c450779d0914f2861b8526e035c5e6da0a3199d8f1add1a665e1cbc6fc6d02"}, - {file = "cffi-1.15.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4f2c9f67e9821cad2e5f480bc8d83b8742896f1242dba247911072d4fa94c192"}, - {file = "cffi-1.15.1-cp38-cp38-win32.whl", hash = "sha256:8b7ee99e510d7b66cdb6c593f21c043c248537a32e0bedf02e01e9553a172314"}, - {file = "cffi-1.15.1-cp38-cp38-win_amd64.whl", hash = "sha256:00a9ed42e88df81ffae7a8ab6d9356b371399b91dbdf0c3cb1e84c03a13aceb5"}, - {file = "cffi-1.15.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:54a2db7b78338edd780e7ef7f9f6c442500fb0d41a5a4ea24fff1c929d5af585"}, - {file = "cffi-1.15.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:fcd131dd944808b5bdb38e6f5b53013c5aa4f334c5cad0c72742f6eba4b73db0"}, - {file = "cffi-1.15.1-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7473e861101c9e72452f9bf8acb984947aa1661a7704553a9f6e4baa5ba64415"}, - {file = "cffi-1.15.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6c9a799e985904922a4d207a94eae35c78ebae90e128f0c4e521ce339396be9d"}, - {file = "cffi-1.15.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:3bcde07039e586f91b45c88f8583ea7cf7a0770df3a1649627bf598332cb6984"}, - {file = "cffi-1.15.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:33ab79603146aace82c2427da5ca6e58f2b3f2fb5da893ceac0c42218a40be35"}, - {file = "cffi-1.15.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5d598b938678ebf3c67377cdd45e09d431369c3b1a5b331058c338e201f12b27"}, - {file = "cffi-1.15.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:db0fbb9c62743ce59a9ff687eb5f4afbe77e5e8403d6697f7446e5f609976f76"}, - {file = "cffi-1.15.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:98d85c6a2bef81588d9227dde12db8a7f47f639f4a17c9ae08e773aa9c697bf3"}, - {file = "cffi-1.15.1-cp39-cp39-win32.whl", hash = "sha256:40f4774f5a9d4f5e344f31a32b5096977b5d48560c5592e2f3d2c4374bd543ee"}, - {file = "cffi-1.15.1-cp39-cp39-win_amd64.whl", hash = "sha256:70df4e3b545a17496c9b3f41f5115e69a4f2e77e94e1d2a8e1070bc0c38c8a3c"}, - {file = "cffi-1.15.1.tar.gz", hash = "sha256:d400bfb9a37b1351253cb402671cea7e89bdecc294e8016a707f6d1d8ac934f9"}, + {file = "cffi-1.16.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:6b3d6606d369fc1da4fd8c357d026317fbb9c9b75d36dc16e90e84c26854b088"}, + {file = "cffi-1.16.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:ac0f5edd2360eea2f1daa9e26a41db02dd4b0451b48f7c318e217ee092a213e9"}, + {file = "cffi-1.16.0-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7e61e3e4fa664a8588aa25c883eab612a188c725755afff6289454d6362b9673"}, + {file = "cffi-1.16.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a72e8961a86d19bdb45851d8f1f08b041ea37d2bd8d4fd19903bc3083d80c896"}, + {file = "cffi-1.16.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:5b50bf3f55561dac5438f8e70bfcdfd74543fd60df5fa5f62d94e5867deca684"}, + {file = "cffi-1.16.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:7651c50c8c5ef7bdb41108b7b8c5a83013bfaa8a935590c5d74627c047a583c7"}, + {file = "cffi-1.16.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e4108df7fe9b707191e55f33efbcb2d81928e10cea45527879a4749cbe472614"}, + {file = "cffi-1.16.0-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:32c68ef735dbe5857c810328cb2481e24722a59a2003018885514d4c09af9743"}, + {file = "cffi-1.16.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:673739cb539f8cdaa07d92d02efa93c9ccf87e345b9a0b556e3ecc666718468d"}, + {file = "cffi-1.16.0-cp310-cp310-win32.whl", hash = "sha256:9f90389693731ff1f659e55c7d1640e2ec43ff725cc61b04b2f9c6d8d017df6a"}, + {file = "cffi-1.16.0-cp310-cp310-win_amd64.whl", hash = "sha256:e6024675e67af929088fda399b2094574609396b1decb609c55fa58b028a32a1"}, + {file = "cffi-1.16.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:b84834d0cf97e7d27dd5b7f3aca7b6e9263c56308ab9dc8aae9784abb774d404"}, + {file = "cffi-1.16.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:1b8ebc27c014c59692bb2664c7d13ce7a6e9a629be20e54e7271fa696ff2b417"}, + {file = "cffi-1.16.0-cp311-cp311-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ee07e47c12890ef248766a6e55bd38ebfb2bb8edd4142d56db91b21ea68b7627"}, + {file = "cffi-1.16.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d8a9d3ebe49f084ad71f9269834ceccbf398253c9fac910c4fd7053ff1386936"}, + {file = "cffi-1.16.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:e70f54f1796669ef691ca07d046cd81a29cb4deb1e5f942003f401c0c4a2695d"}, + {file = "cffi-1.16.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:5bf44d66cdf9e893637896c7faa22298baebcd18d1ddb6d2626a6e39793a1d56"}, + {file = "cffi-1.16.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7b78010e7b97fef4bee1e896df8a4bbb6712b7f05b7ef630f9d1da00f6444d2e"}, + {file = "cffi-1.16.0-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:c6a164aa47843fb1b01e941d385aab7215563bb8816d80ff3a363a9f8448a8dc"}, + {file = "cffi-1.16.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:e09f3ff613345df5e8c3667da1d918f9149bd623cd9070c983c013792a9a62eb"}, + {file = "cffi-1.16.0-cp311-cp311-win32.whl", hash = "sha256:2c56b361916f390cd758a57f2e16233eb4f64bcbeee88a4881ea90fca14dc6ab"}, + {file = "cffi-1.16.0-cp311-cp311-win_amd64.whl", hash = "sha256:db8e577c19c0fda0beb7e0d4e09e0ba74b1e4c092e0e40bfa12fe05b6f6d75ba"}, + {file = "cffi-1.16.0-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:fa3a0128b152627161ce47201262d3140edb5a5c3da88d73a1b790a959126956"}, + {file = "cffi-1.16.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:68e7c44931cc171c54ccb702482e9fc723192e88d25a0e133edd7aff8fcd1f6e"}, + {file = "cffi-1.16.0-cp312-cp312-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:abd808f9c129ba2beda4cfc53bde801e5bcf9d6e0f22f095e45327c038bfe68e"}, + {file = "cffi-1.16.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:88e2b3c14bdb32e440be531ade29d3c50a1a59cd4e51b1dd8b0865c54ea5d2e2"}, + {file = "cffi-1.16.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:fcc8eb6d5902bb1cf6dc4f187ee3ea80a1eba0a89aba40a5cb20a5087d961357"}, + {file = "cffi-1.16.0-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b7be2d771cdba2942e13215c4e340bfd76398e9227ad10402a8767ab1865d2e6"}, + {file = "cffi-1.16.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e715596e683d2ce000574bae5d07bd522c781a822866c20495e52520564f0969"}, + {file = "cffi-1.16.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:2d92b25dbf6cae33f65005baf472d2c245c050b1ce709cc4588cdcdd5495b520"}, + {file = "cffi-1.16.0-cp312-cp312-win32.whl", hash = "sha256:b2ca4e77f9f47c55c194982e10f058db063937845bb2b7a86c84a6cfe0aefa8b"}, + {file = "cffi-1.16.0-cp312-cp312-win_amd64.whl", hash = "sha256:68678abf380b42ce21a5f2abde8efee05c114c2fdb2e9eef2efdb0257fba1235"}, + {file = "cffi-1.16.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:0c9ef6ff37e974b73c25eecc13952c55bceed9112be2d9d938ded8e856138bcc"}, + {file = "cffi-1.16.0-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a09582f178759ee8128d9270cd1344154fd473bb77d94ce0aeb2a93ebf0feaf0"}, + {file = "cffi-1.16.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e760191dd42581e023a68b758769e2da259b5d52e3103c6060ddc02c9edb8d7b"}, + {file = "cffi-1.16.0-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:80876338e19c951fdfed6198e70bc88f1c9758b94578d5a7c4c91a87af3cf31c"}, + {file = "cffi-1.16.0-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a6a14b17d7e17fa0d207ac08642c8820f84f25ce17a442fd15e27ea18d67c59b"}, + {file = "cffi-1.16.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6602bc8dc6f3a9e02b6c22c4fc1e47aa50f8f8e6d3f78a5e16ac33ef5fefa324"}, + {file = "cffi-1.16.0-cp38-cp38-win32.whl", hash = "sha256:131fd094d1065b19540c3d72594260f118b231090295d8c34e19a7bbcf2e860a"}, + {file = "cffi-1.16.0-cp38-cp38-win_amd64.whl", hash = "sha256:31d13b0f99e0836b7ff893d37af07366ebc90b678b6664c955b54561fc36ef36"}, + {file = "cffi-1.16.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:582215a0e9adbe0e379761260553ba11c58943e4bbe9c36430c4ca6ac74b15ed"}, + {file = "cffi-1.16.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:b29ebffcf550f9da55bec9e02ad430c992a87e5f512cd63388abb76f1036d8d2"}, + {file = "cffi-1.16.0-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:dc9b18bf40cc75f66f40a7379f6a9513244fe33c0e8aa72e2d56b0196a7ef872"}, + {file = "cffi-1.16.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9cb4a35b3642fc5c005a6755a5d17c6c8b6bcb6981baf81cea8bfbc8903e8ba8"}, + {file = "cffi-1.16.0-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b86851a328eedc692acf81fb05444bdf1891747c25af7529e39ddafaf68a4f3f"}, + {file = "cffi-1.16.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c0f31130ebc2d37cdd8e44605fb5fa7ad59049298b3f745c74fa74c62fbfcfc4"}, + {file = "cffi-1.16.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8f8e709127c6c77446a8c0a8c8bf3c8ee706a06cd44b1e827c3e6a2ee6b8c098"}, + {file = "cffi-1.16.0-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:748dcd1e3d3d7cd5443ef03ce8685043294ad6bd7c02a38d1bd367cfd968e000"}, + {file = "cffi-1.16.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:8895613bcc094d4a1b2dbe179d88d7fb4a15cee43c052e8885783fac397d91fe"}, + {file = "cffi-1.16.0-cp39-cp39-win32.whl", hash = "sha256:ed86a35631f7bfbb28e108dd96773b9d5a6ce4811cf6ea468bb6a359b256b1e4"}, + {file = "cffi-1.16.0-cp39-cp39-win_amd64.whl", hash = "sha256:3686dffb02459559c74dd3d81748269ffb0eb027c39a6fc99502de37d501faa8"}, + {file = "cffi-1.16.0.tar.gz", hash = "sha256:bcb3ef43e58665bbda2fb198698fcae6776483e0c4a631aa5647806c25e02cc0"}, ] [package.dependencies] @@ -364,86 +357,101 @@ pycparser = "*" [[package]] name = "charset-normalizer" -version = "3.2.0" +version = "3.3.0" description = "The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet." optional = false python-versions = ">=3.7.0" files = [ - {file = "charset-normalizer-3.2.0.tar.gz", hash = "sha256:3bb3d25a8e6c0aedd251753a79ae98a093c7e7b471faa3aa9a93a81431987ace"}, - {file = "charset_normalizer-3.2.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:0b87549028f680ca955556e3bd57013ab47474c3124dc069faa0b6545b6c9710"}, - {file = "charset_normalizer-3.2.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:7c70087bfee18a42b4040bb9ec1ca15a08242cf5867c58726530bdf3945672ed"}, - {file = "charset_normalizer-3.2.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:a103b3a7069b62f5d4890ae1b8f0597618f628b286b03d4bc9195230b154bfa9"}, - {file = "charset_normalizer-3.2.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:94aea8eff76ee6d1cdacb07dd2123a68283cb5569e0250feab1240058f53b623"}, - {file = "charset_normalizer-3.2.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:db901e2ac34c931d73054d9797383d0f8009991e723dab15109740a63e7f902a"}, - {file = "charset_normalizer-3.2.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b0dac0ff919ba34d4df1b6131f59ce95b08b9065233446be7e459f95554c0dc8"}, - {file = "charset_normalizer-3.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:193cbc708ea3aca45e7221ae58f0fd63f933753a9bfb498a3b474878f12caaad"}, - {file = "charset_normalizer-3.2.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:09393e1b2a9461950b1c9a45d5fd251dc7c6f228acab64da1c9c0165d9c7765c"}, - {file = "charset_normalizer-3.2.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:baacc6aee0b2ef6f3d308e197b5d7a81c0e70b06beae1f1fcacffdbd124fe0e3"}, - {file = "charset_normalizer-3.2.0-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:bf420121d4c8dce6b889f0e8e4ec0ca34b7f40186203f06a946fa0276ba54029"}, - {file = "charset_normalizer-3.2.0-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:c04a46716adde8d927adb9457bbe39cf473e1e2c2f5d0a16ceb837e5d841ad4f"}, - {file = "charset_normalizer-3.2.0-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:aaf63899c94de41fe3cf934601b0f7ccb6b428c6e4eeb80da72c58eab077b19a"}, - {file = "charset_normalizer-3.2.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:d62e51710986674142526ab9f78663ca2b0726066ae26b78b22e0f5e571238dd"}, - {file = "charset_normalizer-3.2.0-cp310-cp310-win32.whl", hash = "sha256:04e57ab9fbf9607b77f7d057974694b4f6b142da9ed4a199859d9d4d5c63fe96"}, - {file = "charset_normalizer-3.2.0-cp310-cp310-win_amd64.whl", hash = "sha256:48021783bdf96e3d6de03a6e39a1171ed5bd7e8bb93fc84cc649d11490f87cea"}, - {file = "charset_normalizer-3.2.0-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:4957669ef390f0e6719db3613ab3a7631e68424604a7b448f079bee145da6e09"}, - {file = "charset_normalizer-3.2.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:46fb8c61d794b78ec7134a715a3e564aafc8f6b5e338417cb19fe9f57a5a9bf2"}, - {file = "charset_normalizer-3.2.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:f779d3ad205f108d14e99bb3859aa7dd8e9c68874617c72354d7ecaec2a054ac"}, - {file = "charset_normalizer-3.2.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f25c229a6ba38a35ae6e25ca1264621cc25d4d38dca2942a7fce0b67a4efe918"}, - {file = "charset_normalizer-3.2.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:2efb1bd13885392adfda4614c33d3b68dee4921fd0ac1d3988f8cbb7d589e72a"}, - {file = "charset_normalizer-3.2.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:1f30b48dd7fa1474554b0b0f3fdfdd4c13b5c737a3c6284d3cdc424ec0ffff3a"}, - {file = "charset_normalizer-3.2.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:246de67b99b6851627d945db38147d1b209a899311b1305dd84916f2b88526c6"}, - {file = "charset_normalizer-3.2.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9bd9b3b31adcb054116447ea22caa61a285d92e94d710aa5ec97992ff5eb7cf3"}, - {file = "charset_normalizer-3.2.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:8c2f5e83493748286002f9369f3e6607c565a6a90425a3a1fef5ae32a36d749d"}, - {file = "charset_normalizer-3.2.0-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:3170c9399da12c9dc66366e9d14da8bf7147e1e9d9ea566067bbce7bb74bd9c2"}, - {file = "charset_normalizer-3.2.0-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:7a4826ad2bd6b07ca615c74ab91f32f6c96d08f6fcc3902ceeedaec8cdc3bcd6"}, - {file = "charset_normalizer-3.2.0-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:3b1613dd5aee995ec6d4c69f00378bbd07614702a315a2cf6c1d21461fe17c23"}, - {file = "charset_normalizer-3.2.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:9e608aafdb55eb9f255034709e20d5a83b6d60c054df0802fa9c9883d0a937aa"}, - {file = "charset_normalizer-3.2.0-cp311-cp311-win32.whl", hash = "sha256:f2a1d0fd4242bd8643ce6f98927cf9c04540af6efa92323e9d3124f57727bfc1"}, - {file = "charset_normalizer-3.2.0-cp311-cp311-win_amd64.whl", hash = "sha256:681eb3d7e02e3c3655d1b16059fbfb605ac464c834a0c629048a30fad2b27489"}, - {file = "charset_normalizer-3.2.0-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:c57921cda3a80d0f2b8aec7e25c8aa14479ea92b5b51b6876d975d925a2ea346"}, - {file = "charset_normalizer-3.2.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:41b25eaa7d15909cf3ac4c96088c1f266a9a93ec44f87f1d13d4a0e86c81b982"}, - {file = "charset_normalizer-3.2.0-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:f058f6963fd82eb143c692cecdc89e075fa0828db2e5b291070485390b2f1c9c"}, - {file = "charset_normalizer-3.2.0-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a7647ebdfb9682b7bb97e2a5e7cb6ae735b1c25008a70b906aecca294ee96cf4"}, - {file = "charset_normalizer-3.2.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:eef9df1eefada2c09a5e7a40991b9fc6ac6ef20b1372abd48d2794a316dc0449"}, - {file = "charset_normalizer-3.2.0-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e03b8895a6990c9ab2cdcd0f2fe44088ca1c65ae592b8f795c3294af00a461c3"}, - {file = "charset_normalizer-3.2.0-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:ee4006268ed33370957f55bf2e6f4d263eaf4dc3cfc473d1d90baff6ed36ce4a"}, - {file = "charset_normalizer-3.2.0-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:c4983bf937209c57240cff65906b18bb35e64ae872da6a0db937d7b4af845dd7"}, - {file = "charset_normalizer-3.2.0-cp37-cp37m-musllinux_1_1_ppc64le.whl", hash = "sha256:3bb7fda7260735efe66d5107fb7e6af6a7c04c7fce9b2514e04b7a74b06bf5dd"}, - {file = "charset_normalizer-3.2.0-cp37-cp37m-musllinux_1_1_s390x.whl", hash = "sha256:72814c01533f51d68702802d74f77ea026b5ec52793c791e2da806a3844a46c3"}, - {file = "charset_normalizer-3.2.0-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:70c610f6cbe4b9fce272c407dd9d07e33e6bf7b4aa1b7ffb6f6ded8e634e3592"}, - {file = "charset_normalizer-3.2.0-cp37-cp37m-win32.whl", hash = "sha256:a401b4598e5d3f4a9a811f3daf42ee2291790c7f9d74b18d75d6e21dda98a1a1"}, - {file = "charset_normalizer-3.2.0-cp37-cp37m-win_amd64.whl", hash = "sha256:c0b21078a4b56965e2b12f247467b234734491897e99c1d51cee628da9786959"}, - {file = "charset_normalizer-3.2.0-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:95eb302ff792e12aba9a8b8f8474ab229a83c103d74a750ec0bd1c1eea32e669"}, - {file = "charset_normalizer-3.2.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:1a100c6d595a7f316f1b6f01d20815d916e75ff98c27a01ae817439ea7726329"}, - {file = "charset_normalizer-3.2.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:6339d047dab2780cc6220f46306628e04d9750f02f983ddb37439ca47ced7149"}, - {file = "charset_normalizer-3.2.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e4b749b9cc6ee664a3300bb3a273c1ca8068c46be705b6c31cf5d276f8628a94"}, - {file = "charset_normalizer-3.2.0-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:a38856a971c602f98472050165cea2cdc97709240373041b69030be15047691f"}, - {file = "charset_normalizer-3.2.0-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:f87f746ee241d30d6ed93969de31e5ffd09a2961a051e60ae6bddde9ec3583aa"}, - {file = "charset_normalizer-3.2.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:89f1b185a01fe560bc8ae5f619e924407efca2191b56ce749ec84982fc59a32a"}, - {file = "charset_normalizer-3.2.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e1c8a2f4c69e08e89632defbfabec2feb8a8d99edc9f89ce33c4b9e36ab63037"}, - {file = "charset_normalizer-3.2.0-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:2f4ac36d8e2b4cc1aa71df3dd84ff8efbe3bfb97ac41242fbcfc053c67434f46"}, - {file = "charset_normalizer-3.2.0-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:a386ebe437176aab38c041de1260cd3ea459c6ce5263594399880bbc398225b2"}, - {file = "charset_normalizer-3.2.0-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:ccd16eb18a849fd8dcb23e23380e2f0a354e8daa0c984b8a732d9cfaba3a776d"}, - {file = "charset_normalizer-3.2.0-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:e6a5bf2cba5ae1bb80b154ed68a3cfa2fa00fde979a7f50d6598d3e17d9ac20c"}, - {file = "charset_normalizer-3.2.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:45de3f87179c1823e6d9e32156fb14c1927fcc9aba21433f088fdfb555b77c10"}, - {file = "charset_normalizer-3.2.0-cp38-cp38-win32.whl", hash = "sha256:1000fba1057b92a65daec275aec30586c3de2401ccdcd41f8a5c1e2c87078706"}, - {file = "charset_normalizer-3.2.0-cp38-cp38-win_amd64.whl", hash = "sha256:8b2c760cfc7042b27ebdb4a43a4453bd829a5742503599144d54a032c5dc7e9e"}, - {file = "charset_normalizer-3.2.0-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:855eafa5d5a2034b4621c74925d89c5efef61418570e5ef9b37717d9c796419c"}, - {file = "charset_normalizer-3.2.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:203f0c8871d5a7987be20c72442488a0b8cfd0f43b7973771640fc593f56321f"}, - {file = "charset_normalizer-3.2.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:e857a2232ba53ae940d3456f7533ce6ca98b81917d47adc3c7fd55dad8fab858"}, - {file = "charset_normalizer-3.2.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5e86d77b090dbddbe78867a0275cb4df08ea195e660f1f7f13435a4649e954e5"}, - {file = "charset_normalizer-3.2.0-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:c4fb39a81950ec280984b3a44f5bd12819953dc5fa3a7e6fa7a80db5ee853952"}, - {file = "charset_normalizer-3.2.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2dee8e57f052ef5353cf608e0b4c871aee320dd1b87d351c28764fc0ca55f9f4"}, - {file = "charset_normalizer-3.2.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8700f06d0ce6f128de3ccdbc1acaea1ee264d2caa9ca05daaf492fde7c2a7200"}, - {file = "charset_normalizer-3.2.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1920d4ff15ce893210c1f0c0e9d19bfbecb7983c76b33f046c13a8ffbd570252"}, - {file = "charset_normalizer-3.2.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:c1c76a1743432b4b60ab3358c937a3fe1341c828ae6194108a94c69028247f22"}, - {file = "charset_normalizer-3.2.0-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:f7560358a6811e52e9c4d142d497f1a6e10103d3a6881f18d04dbce3729c0e2c"}, - {file = "charset_normalizer-3.2.0-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:c8063cf17b19661471ecbdb3df1c84f24ad2e389e326ccaf89e3fb2484d8dd7e"}, - {file = "charset_normalizer-3.2.0-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:cd6dbe0238f7743d0efe563ab46294f54f9bc8f4b9bcf57c3c666cc5bc9d1299"}, - {file = "charset_normalizer-3.2.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:1249cbbf3d3b04902ff081ffbb33ce3377fa6e4c7356f759f3cd076cc138d020"}, - {file = "charset_normalizer-3.2.0-cp39-cp39-win32.whl", hash = "sha256:6c409c0deba34f147f77efaa67b8e4bb83d2f11c8806405f76397ae5b8c0d1c9"}, - {file = "charset_normalizer-3.2.0-cp39-cp39-win_amd64.whl", hash = "sha256:7095f6fbfaa55defb6b733cfeb14efaae7a29f0b59d8cf213be4e7ca0b857b80"}, - {file = "charset_normalizer-3.2.0-py3-none-any.whl", hash = "sha256:8e098148dd37b4ce3baca71fb394c81dc5d9c7728c95df695d2dca218edf40e6"}, + {file = "charset-normalizer-3.3.0.tar.gz", hash = "sha256:63563193aec44bce707e0c5ca64ff69fa72ed7cf34ce6e11d5127555756fd2f6"}, + {file = "charset_normalizer-3.3.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:effe5406c9bd748a871dbcaf3ac69167c38d72db8c9baf3ff954c344f31c4cbe"}, + {file = "charset_normalizer-3.3.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:4162918ef3098851fcd8a628bf9b6a98d10c380725df9e04caf5ca6dd48c847a"}, + {file = "charset_normalizer-3.3.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:0570d21da019941634a531444364f2482e8db0b3425fcd5ac0c36565a64142c8"}, + {file = "charset_normalizer-3.3.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5707a746c6083a3a74b46b3a631d78d129edab06195a92a8ece755aac25a3f3d"}, + {file = "charset_normalizer-3.3.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:278c296c6f96fa686d74eb449ea1697f3c03dc28b75f873b65b5201806346a69"}, + {file = "charset_normalizer-3.3.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a4b71f4d1765639372a3b32d2638197f5cd5221b19531f9245fcc9ee62d38f56"}, + {file = "charset_normalizer-3.3.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f5969baeaea61c97efa706b9b107dcba02784b1601c74ac84f2a532ea079403e"}, + {file = "charset_normalizer-3.3.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a3f93dab657839dfa61025056606600a11d0b696d79386f974e459a3fbc568ec"}, + {file = "charset_normalizer-3.3.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:db756e48f9c5c607b5e33dd36b1d5872d0422e960145b08ab0ec7fd420e9d649"}, + {file = "charset_normalizer-3.3.0-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:232ac332403e37e4a03d209a3f92ed9071f7d3dbda70e2a5e9cff1c4ba9f0678"}, + {file = "charset_normalizer-3.3.0-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:e5c1502d4ace69a179305abb3f0bb6141cbe4714bc9b31d427329a95acfc8bdd"}, + {file = "charset_normalizer-3.3.0-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:2502dd2a736c879c0f0d3e2161e74d9907231e25d35794584b1ca5284e43f596"}, + {file = "charset_normalizer-3.3.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:23e8565ab7ff33218530bc817922fae827420f143479b753104ab801145b1d5b"}, + {file = "charset_normalizer-3.3.0-cp310-cp310-win32.whl", hash = "sha256:1872d01ac8c618a8da634e232f24793883d6e456a66593135aeafe3784b0848d"}, + {file = "charset_normalizer-3.3.0-cp310-cp310-win_amd64.whl", hash = "sha256:557b21a44ceac6c6b9773bc65aa1b4cc3e248a5ad2f5b914b91579a32e22204d"}, + {file = "charset_normalizer-3.3.0-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:d7eff0f27edc5afa9e405f7165f85a6d782d308f3b6b9d96016c010597958e63"}, + {file = "charset_normalizer-3.3.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:6a685067d05e46641d5d1623d7c7fdf15a357546cbb2f71b0ebde91b175ffc3e"}, + {file = "charset_normalizer-3.3.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:0d3d5b7db9ed8a2b11a774db2bbea7ba1884430a205dbd54a32d61d7c2a190fa"}, + {file = "charset_normalizer-3.3.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2935ffc78db9645cb2086c2f8f4cfd23d9b73cc0dc80334bc30aac6f03f68f8c"}, + {file = "charset_normalizer-3.3.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9fe359b2e3a7729010060fbca442ca225280c16e923b37db0e955ac2a2b72a05"}, + {file = "charset_normalizer-3.3.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:380c4bde80bce25c6e4f77b19386f5ec9db230df9f2f2ac1e5ad7af2caa70459"}, + {file = "charset_normalizer-3.3.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f0d1e3732768fecb052d90d62b220af62ead5748ac51ef61e7b32c266cac9293"}, + {file = "charset_normalizer-3.3.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1b2919306936ac6efb3aed1fbf81039f7087ddadb3160882a57ee2ff74fd2382"}, + {file = "charset_normalizer-3.3.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:f8888e31e3a85943743f8fc15e71536bda1c81d5aa36d014a3c0c44481d7db6e"}, + {file = "charset_normalizer-3.3.0-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:82eb849f085624f6a607538ee7b83a6d8126df6d2f7d3b319cb837b289123078"}, + {file = "charset_normalizer-3.3.0-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:7b8b8bf1189b3ba9b8de5c8db4d541b406611a71a955bbbd7385bbc45fcb786c"}, + {file = "charset_normalizer-3.3.0-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:5adf257bd58c1b8632046bbe43ee38c04e1038e9d37de9c57a94d6bd6ce5da34"}, + {file = "charset_normalizer-3.3.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:c350354efb159b8767a6244c166f66e67506e06c8924ed74669b2c70bc8735b1"}, + {file = "charset_normalizer-3.3.0-cp311-cp311-win32.whl", hash = "sha256:02af06682e3590ab952599fbadac535ede5d60d78848e555aa58d0c0abbde786"}, + {file = "charset_normalizer-3.3.0-cp311-cp311-win_amd64.whl", hash = "sha256:86d1f65ac145e2c9ed71d8ffb1905e9bba3a91ae29ba55b4c46ae6fc31d7c0d4"}, + {file = "charset_normalizer-3.3.0-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:3b447982ad46348c02cb90d230b75ac34e9886273df3a93eec0539308a6296d7"}, + {file = "charset_normalizer-3.3.0-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:abf0d9f45ea5fb95051c8bfe43cb40cda383772f7e5023a83cc481ca2604d74e"}, + {file = "charset_normalizer-3.3.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:b09719a17a2301178fac4470d54b1680b18a5048b481cb8890e1ef820cb80455"}, + {file = "charset_normalizer-3.3.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b3d9b48ee6e3967b7901c052b670c7dda6deb812c309439adaffdec55c6d7b78"}, + {file = "charset_normalizer-3.3.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:edfe077ab09442d4ef3c52cb1f9dab89bff02f4524afc0acf2d46be17dc479f5"}, + {file = "charset_normalizer-3.3.0-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:3debd1150027933210c2fc321527c2299118aa929c2f5a0a80ab6953e3bd1908"}, + {file = "charset_normalizer-3.3.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:86f63face3a527284f7bb8a9d4f78988e3c06823f7bea2bd6f0e0e9298ca0403"}, + {file = "charset_normalizer-3.3.0-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:24817cb02cbef7cd499f7c9a2735286b4782bd47a5b3516a0e84c50eab44b98e"}, + {file = "charset_normalizer-3.3.0-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:c71f16da1ed8949774ef79f4a0260d28b83b3a50c6576f8f4f0288d109777989"}, + {file = "charset_normalizer-3.3.0-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:9cf3126b85822c4e53aa28c7ec9869b924d6fcfb76e77a45c44b83d91afd74f9"}, + {file = "charset_normalizer-3.3.0-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:b3b2316b25644b23b54a6f6401074cebcecd1244c0b8e80111c9a3f1c8e83d65"}, + {file = "charset_normalizer-3.3.0-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:03680bb39035fbcffe828eae9c3f8afc0428c91d38e7d61aa992ef7a59fb120e"}, + {file = "charset_normalizer-3.3.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:4cc152c5dd831641e995764f9f0b6589519f6f5123258ccaca8c6d34572fefa8"}, + {file = "charset_normalizer-3.3.0-cp312-cp312-win32.whl", hash = "sha256:b8f3307af845803fb0b060ab76cf6dd3a13adc15b6b451f54281d25911eb92df"}, + {file = "charset_normalizer-3.3.0-cp312-cp312-win_amd64.whl", hash = "sha256:8eaf82f0eccd1505cf39a45a6bd0a8cf1c70dcfc30dba338207a969d91b965c0"}, + {file = "charset_normalizer-3.3.0-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:dc45229747b67ffc441b3de2f3ae5e62877a282ea828a5bdb67883c4ee4a8810"}, + {file = "charset_normalizer-3.3.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2f4a0033ce9a76e391542c182f0d48d084855b5fcba5010f707c8e8c34663d77"}, + {file = "charset_normalizer-3.3.0-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ada214c6fa40f8d800e575de6b91a40d0548139e5dc457d2ebb61470abf50186"}, + {file = "charset_normalizer-3.3.0-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b1121de0e9d6e6ca08289583d7491e7fcb18a439305b34a30b20d8215922d43c"}, + {file = "charset_normalizer-3.3.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1063da2c85b95f2d1a430f1c33b55c9c17ffaf5e612e10aeaad641c55a9e2b9d"}, + {file = "charset_normalizer-3.3.0-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:70f1d09c0d7748b73290b29219e854b3207aea922f839437870d8cc2168e31cc"}, + {file = "charset_normalizer-3.3.0-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:250c9eb0f4600361dd80d46112213dff2286231d92d3e52af1e5a6083d10cad9"}, + {file = "charset_normalizer-3.3.0-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:750b446b2ffce1739e8578576092179160f6d26bd5e23eb1789c4d64d5af7dc7"}, + {file = "charset_normalizer-3.3.0-cp37-cp37m-musllinux_1_1_ppc64le.whl", hash = "sha256:fc52b79d83a3fe3a360902d3f5d79073a993597d48114c29485e9431092905d8"}, + {file = "charset_normalizer-3.3.0-cp37-cp37m-musllinux_1_1_s390x.whl", hash = "sha256:588245972aca710b5b68802c8cad9edaa98589b1b42ad2b53accd6910dad3545"}, + {file = "charset_normalizer-3.3.0-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:e39c7eb31e3f5b1f88caff88bcff1b7f8334975b46f6ac6e9fc725d829bc35d4"}, + {file = "charset_normalizer-3.3.0-cp37-cp37m-win32.whl", hash = "sha256:abecce40dfebbfa6abf8e324e1860092eeca6f7375c8c4e655a8afb61af58f2c"}, + {file = "charset_normalizer-3.3.0-cp37-cp37m-win_amd64.whl", hash = "sha256:24a91a981f185721542a0b7c92e9054b7ab4fea0508a795846bc5b0abf8118d4"}, + {file = "charset_normalizer-3.3.0-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:67b8cc9574bb518ec76dc8e705d4c39ae78bb96237cb533edac149352c1f39fe"}, + {file = "charset_normalizer-3.3.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:ac71b2977fb90c35d41c9453116e283fac47bb9096ad917b8819ca8b943abecd"}, + {file = "charset_normalizer-3.3.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:3ae38d325b512f63f8da31f826e6cb6c367336f95e418137286ba362925c877e"}, + {file = "charset_normalizer-3.3.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:542da1178c1c6af8873e143910e2269add130a299c9106eef2594e15dae5e482"}, + {file = "charset_normalizer-3.3.0-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:30a85aed0b864ac88309b7d94be09f6046c834ef60762a8833b660139cfbad13"}, + {file = "charset_normalizer-3.3.0-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:aae32c93e0f64469f74ccc730a7cb21c7610af3a775157e50bbd38f816536b38"}, + {file = "charset_normalizer-3.3.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:15b26ddf78d57f1d143bdf32e820fd8935d36abe8a25eb9ec0b5a71c82eb3895"}, + {file = "charset_normalizer-3.3.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7f5d10bae5d78e4551b7be7a9b29643a95aded9d0f602aa2ba584f0388e7a557"}, + {file = "charset_normalizer-3.3.0-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:249c6470a2b60935bafd1d1d13cd613f8cd8388d53461c67397ee6a0f5dce741"}, + {file = "charset_normalizer-3.3.0-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:c5a74c359b2d47d26cdbbc7845e9662d6b08a1e915eb015d044729e92e7050b7"}, + {file = "charset_normalizer-3.3.0-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:b5bcf60a228acae568e9911f410f9d9e0d43197d030ae5799e20dca8df588287"}, + {file = "charset_normalizer-3.3.0-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:187d18082694a29005ba2944c882344b6748d5be69e3a89bf3cc9d878e548d5a"}, + {file = "charset_normalizer-3.3.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:81bf654678e575403736b85ba3a7867e31c2c30a69bc57fe88e3ace52fb17b89"}, + {file = "charset_normalizer-3.3.0-cp38-cp38-win32.whl", hash = "sha256:85a32721ddde63c9df9ebb0d2045b9691d9750cb139c161c80e500d210f5e26e"}, + {file = "charset_normalizer-3.3.0-cp38-cp38-win_amd64.whl", hash = "sha256:468d2a840567b13a590e67dd276c570f8de00ed767ecc611994c301d0f8c014f"}, + {file = "charset_normalizer-3.3.0-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:e0fc42822278451bc13a2e8626cf2218ba570f27856b536e00cfa53099724828"}, + {file = "charset_normalizer-3.3.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:09c77f964f351a7369cc343911e0df63e762e42bac24cd7d18525961c81754f4"}, + {file = "charset_normalizer-3.3.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:12ebea541c44fdc88ccb794a13fe861cc5e35d64ed689513a5c03d05b53b7c82"}, + {file = "charset_normalizer-3.3.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:805dfea4ca10411a5296bcc75638017215a93ffb584c9e344731eef0dcfb026a"}, + {file = "charset_normalizer-3.3.0-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:96c2b49eb6a72c0e4991d62406e365d87067ca14c1a729a870d22354e6f68115"}, + {file = "charset_normalizer-3.3.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:aaf7b34c5bc56b38c931a54f7952f1ff0ae77a2e82496583b247f7c969eb1479"}, + {file = "charset_normalizer-3.3.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:619d1c96099be5823db34fe89e2582b336b5b074a7f47f819d6b3a57ff7bdb86"}, + {file = "charset_normalizer-3.3.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a0ac5e7015a5920cfce654c06618ec40c33e12801711da6b4258af59a8eff00a"}, + {file = "charset_normalizer-3.3.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:93aa7eef6ee71c629b51ef873991d6911b906d7312c6e8e99790c0f33c576f89"}, + {file = "charset_normalizer-3.3.0-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:7966951325782121e67c81299a031f4c115615e68046f79b85856b86ebffc4cd"}, + {file = "charset_normalizer-3.3.0-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:02673e456dc5ab13659f85196c534dc596d4ef260e4d86e856c3b2773ce09843"}, + {file = "charset_normalizer-3.3.0-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:c2af80fb58f0f24b3f3adcb9148e6203fa67dd3f61c4af146ecad033024dde43"}, + {file = "charset_normalizer-3.3.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:153e7b6e724761741e0974fc4dcd406d35ba70b92bfe3fedcb497226c93b9da7"}, + {file = "charset_normalizer-3.3.0-cp39-cp39-win32.whl", hash = "sha256:d47ecf253780c90ee181d4d871cd655a789da937454045b17b5798da9393901a"}, + {file = "charset_normalizer-3.3.0-cp39-cp39-win_amd64.whl", hash = "sha256:d97d85fa63f315a8bdaba2af9a6a686e0eceab77b3089af45133252618e70884"}, + {file = "charset_normalizer-3.3.0-py3-none-any.whl", hash = "sha256:e46cd37076971c1040fc8c41273a8b3e2c624ce4f2be3f5dfcb7a430c1d3acc2"}, ] [[package]] @@ -597,63 +605,63 @@ test-no-images = ["pytest", "pytest-cov", "wurlitzer"] [[package]] name = "coverage" -version = "7.3.1" +version = "7.3.2" description = "Code coverage measurement for Python" optional = false python-versions = ">=3.8" files = [ - {file = "coverage-7.3.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:cd0f7429ecfd1ff597389907045ff209c8fdb5b013d38cfa7c60728cb484b6e3"}, - {file = "coverage-7.3.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:966f10df9b2b2115da87f50f6a248e313c72a668248be1b9060ce935c871f276"}, - {file = "coverage-7.3.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0575c37e207bb9b98b6cf72fdaaa18ac909fb3d153083400c2d48e2e6d28bd8e"}, - {file = "coverage-7.3.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:245c5a99254e83875c7fed8b8b2536f040997a9b76ac4c1da5bff398c06e860f"}, - {file = "coverage-7.3.1-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4c96dd7798d83b960afc6c1feb9e5af537fc4908852ef025600374ff1a017392"}, - {file = "coverage-7.3.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:de30c1aa80f30af0f6b2058a91505ea6e36d6535d437520067f525f7df123887"}, - {file = "coverage-7.3.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:50dd1e2dd13dbbd856ffef69196781edff26c800a74f070d3b3e3389cab2600d"}, - {file = "coverage-7.3.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:b9c0c19f70d30219113b18fe07e372b244fb2a773d4afde29d5a2f7930765136"}, - {file = "coverage-7.3.1-cp310-cp310-win32.whl", hash = "sha256:770f143980cc16eb601ccfd571846e89a5fe4c03b4193f2e485268f224ab602f"}, - {file = "coverage-7.3.1-cp310-cp310-win_amd64.whl", hash = "sha256:cdd088c00c39a27cfa5329349cc763a48761fdc785879220d54eb785c8a38520"}, - {file = "coverage-7.3.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:74bb470399dc1989b535cb41f5ca7ab2af561e40def22d7e188e0a445e7639e3"}, - {file = "coverage-7.3.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:025ded371f1ca280c035d91b43252adbb04d2aea4c7105252d3cbc227f03b375"}, - {file = "coverage-7.3.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a6191b3a6ad3e09b6cfd75b45c6aeeffe7e3b0ad46b268345d159b8df8d835f9"}, - {file = "coverage-7.3.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7eb0b188f30e41ddd659a529e385470aa6782f3b412f860ce22b2491c89b8593"}, - {file = "coverage-7.3.1-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:75c8f0df9dfd8ff745bccff75867d63ef336e57cc22b2908ee725cc552689ec8"}, - {file = "coverage-7.3.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:7eb3cd48d54b9bd0e73026dedce44773214064be93611deab0b6a43158c3d5a0"}, - {file = "coverage-7.3.1-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:ac3c5b7e75acac31e490b7851595212ed951889918d398b7afa12736c85e13ce"}, - {file = "coverage-7.3.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:5b4ee7080878077af0afa7238df1b967f00dc10763f6e1b66f5cced4abebb0a3"}, - {file = "coverage-7.3.1-cp311-cp311-win32.whl", hash = "sha256:229c0dd2ccf956bf5aeede7e3131ca48b65beacde2029f0361b54bf93d36f45a"}, - {file = "coverage-7.3.1-cp311-cp311-win_amd64.whl", hash = "sha256:c6f55d38818ca9596dc9019eae19a47410d5322408140d9a0076001a3dcb938c"}, - {file = "coverage-7.3.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:5289490dd1c3bb86de4730a92261ae66ea8d44b79ed3cc26464f4c2cde581fbc"}, - {file = "coverage-7.3.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:ca833941ec701fda15414be400c3259479bfde7ae6d806b69e63b3dc423b1832"}, - {file = "coverage-7.3.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:cd694e19c031733e446c8024dedd12a00cda87e1c10bd7b8539a87963685e969"}, - {file = "coverage-7.3.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:aab8e9464c00da5cb9c536150b7fbcd8850d376d1151741dd0d16dfe1ba4fd26"}, - {file = "coverage-7.3.1-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:87d38444efffd5b056fcc026c1e8d862191881143c3aa80bb11fcf9dca9ae204"}, - {file = "coverage-7.3.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:8a07b692129b8a14ad7a37941a3029c291254feb7a4237f245cfae2de78de037"}, - {file = "coverage-7.3.1-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:2829c65c8faaf55b868ed7af3c7477b76b1c6ebeee99a28f59a2cb5907a45760"}, - {file = "coverage-7.3.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:1f111a7d85658ea52ffad7084088277135ec5f368457275fc57f11cebb15607f"}, - {file = "coverage-7.3.1-cp312-cp312-win32.whl", hash = "sha256:c397c70cd20f6df7d2a52283857af622d5f23300c4ca8e5bd8c7a543825baa5a"}, - {file = "coverage-7.3.1-cp312-cp312-win_amd64.whl", hash = "sha256:5ae4c6da8b3d123500f9525b50bf0168023313963e0e2e814badf9000dd6ef92"}, - {file = "coverage-7.3.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:ca70466ca3a17460e8fc9cea7123c8cbef5ada4be3140a1ef8f7b63f2f37108f"}, - {file = "coverage-7.3.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:f2781fd3cabc28278dc982a352f50c81c09a1a500cc2086dc4249853ea96b981"}, - {file = "coverage-7.3.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6407424621f40205bbe6325686417e5e552f6b2dba3535dd1f90afc88a61d465"}, - {file = "coverage-7.3.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:04312b036580ec505f2b77cbbdfb15137d5efdfade09156961f5277149f5e344"}, - {file = "coverage-7.3.1-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ac9ad38204887349853d7c313f53a7b1c210ce138c73859e925bc4e5d8fc18e7"}, - {file = "coverage-7.3.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:53669b79f3d599da95a0afbef039ac0fadbb236532feb042c534fbb81b1a4e40"}, - {file = "coverage-7.3.1-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:614f1f98b84eb256e4f35e726bfe5ca82349f8dfa576faabf8a49ca09e630086"}, - {file = "coverage-7.3.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:f1a317fdf5c122ad642db8a97964733ab7c3cf6009e1a8ae8821089993f175ff"}, - {file = "coverage-7.3.1-cp38-cp38-win32.whl", hash = "sha256:defbbb51121189722420a208957e26e49809feafca6afeef325df66c39c4fdb3"}, - {file = "coverage-7.3.1-cp38-cp38-win_amd64.whl", hash = "sha256:f4f456590eefb6e1b3c9ea6328c1e9fa0f1006e7481179d749b3376fc793478e"}, - {file = "coverage-7.3.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:f12d8b11a54f32688b165fd1a788c408f927b0960984b899be7e4c190ae758f1"}, - {file = "coverage-7.3.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:f09195dda68d94a53123883de75bb97b0e35f5f6f9f3aa5bf6e496da718f0cb6"}, - {file = "coverage-7.3.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c6601a60318f9c3945be6ea0f2a80571f4299b6801716f8a6e4846892737ebe4"}, - {file = "coverage-7.3.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:07d156269718670d00a3b06db2288b48527fc5f36859425ff7cec07c6b367745"}, - {file = "coverage-7.3.1-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:636a8ac0b044cfeccae76a36f3b18264edcc810a76a49884b96dd744613ec0b7"}, - {file = "coverage-7.3.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:5d991e13ad2ed3aced177f524e4d670f304c8233edad3210e02c465351f785a0"}, - {file = "coverage-7.3.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:586649ada7cf139445da386ab6f8ef00e6172f11a939fc3b2b7e7c9082052fa0"}, - {file = "coverage-7.3.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:4aba512a15a3e1e4fdbfed2f5392ec221434a614cc68100ca99dcad7af29f3f8"}, - {file = "coverage-7.3.1-cp39-cp39-win32.whl", hash = "sha256:6bc6f3f4692d806831c136c5acad5ccedd0262aa44c087c46b7101c77e139140"}, - {file = "coverage-7.3.1-cp39-cp39-win_amd64.whl", hash = "sha256:553d7094cb27db58ea91332e8b5681bac107e7242c23f7629ab1316ee73c4981"}, - {file = "coverage-7.3.1-pp38.pp39.pp310-none-any.whl", hash = "sha256:220eb51f5fb38dfdb7e5d54284ca4d0cd70ddac047d750111a68ab1798945194"}, - {file = "coverage-7.3.1.tar.gz", hash = "sha256:6cb7fe1581deb67b782c153136541e20901aa312ceedaf1467dcb35255787952"}, + {file = "coverage-7.3.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:d872145f3a3231a5f20fd48500274d7df222e291d90baa2026cc5152b7ce86bf"}, + {file = "coverage-7.3.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:310b3bb9c91ea66d59c53fa4989f57d2436e08f18fb2f421a1b0b6b8cc7fffda"}, + {file = "coverage-7.3.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f47d39359e2c3779c5331fc740cf4bce6d9d680a7b4b4ead97056a0ae07cb49a"}, + {file = "coverage-7.3.2-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:aa72dbaf2c2068404b9870d93436e6d23addd8bbe9295f49cbca83f6e278179c"}, + {file = "coverage-7.3.2-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:beaa5c1b4777f03fc63dfd2a6bd820f73f036bfb10e925fce067b00a340d0f3f"}, + {file = "coverage-7.3.2-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:dbc1b46b92186cc8074fee9d9fbb97a9dd06c6cbbef391c2f59d80eabdf0faa6"}, + {file = "coverage-7.3.2-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:315a989e861031334d7bee1f9113c8770472db2ac484e5b8c3173428360a9148"}, + {file = "coverage-7.3.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:d1bc430677773397f64a5c88cb522ea43175ff16f8bfcc89d467d974cb2274f9"}, + {file = "coverage-7.3.2-cp310-cp310-win32.whl", hash = "sha256:a889ae02f43aa45032afe364c8ae84ad3c54828c2faa44f3bfcafecb5c96b02f"}, + {file = "coverage-7.3.2-cp310-cp310-win_amd64.whl", hash = "sha256:c0ba320de3fb8c6ec16e0be17ee1d3d69adcda99406c43c0409cb5c41788a611"}, + {file = "coverage-7.3.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:ac8c802fa29843a72d32ec56d0ca792ad15a302b28ca6203389afe21f8fa062c"}, + {file = "coverage-7.3.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:89a937174104339e3a3ffcf9f446c00e3a806c28b1841c63edb2b369310fd074"}, + {file = "coverage-7.3.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e267e9e2b574a176ddb983399dec325a80dbe161f1a32715c780b5d14b5f583a"}, + {file = "coverage-7.3.2-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:2443cbda35df0d35dcfb9bf8f3c02c57c1d6111169e3c85fc1fcc05e0c9f39a3"}, + {file = "coverage-7.3.2-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4175e10cc8dda0265653e8714b3174430b07c1dca8957f4966cbd6c2b1b8065a"}, + {file = "coverage-7.3.2-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:0cbf38419fb1a347aaf63481c00f0bdc86889d9fbf3f25109cf96c26b403fda1"}, + {file = "coverage-7.3.2-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:5c913b556a116b8d5f6ef834038ba983834d887d82187c8f73dec21049abd65c"}, + {file = "coverage-7.3.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:1981f785239e4e39e6444c63a98da3a1db8e971cb9ceb50a945ba6296b43f312"}, + {file = "coverage-7.3.2-cp311-cp311-win32.whl", hash = "sha256:43668cabd5ca8258f5954f27a3aaf78757e6acf13c17604d89648ecc0cc66640"}, + {file = "coverage-7.3.2-cp311-cp311-win_amd64.whl", hash = "sha256:e10c39c0452bf6e694511c901426d6b5ac005acc0f78ff265dbe36bf81f808a2"}, + {file = "coverage-7.3.2-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:4cbae1051ab791debecc4a5dcc4a1ff45fc27b91b9aee165c8a27514dd160836"}, + {file = "coverage-7.3.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:12d15ab5833a997716d76f2ac1e4b4d536814fc213c85ca72756c19e5a6b3d63"}, + {file = "coverage-7.3.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3c7bba973ebee5e56fe9251300c00f1579652587a9f4a5ed8404b15a0471f216"}, + {file = "coverage-7.3.2-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:fe494faa90ce6381770746077243231e0b83ff3f17069d748f645617cefe19d4"}, + {file = "coverage-7.3.2-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f6e9589bd04d0461a417562649522575d8752904d35c12907d8c9dfeba588faf"}, + {file = "coverage-7.3.2-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:d51ac2a26f71da1b57f2dc81d0e108b6ab177e7d30e774db90675467c847bbdf"}, + {file = "coverage-7.3.2-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:99b89d9f76070237975b315b3d5f4d6956ae354a4c92ac2388a5695516e47c84"}, + {file = "coverage-7.3.2-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:fa28e909776dc69efb6ed975a63691bc8172b64ff357e663a1bb06ff3c9b589a"}, + {file = "coverage-7.3.2-cp312-cp312-win32.whl", hash = "sha256:289fe43bf45a575e3ab10b26d7b6f2ddb9ee2dba447499f5401cfb5ecb8196bb"}, + {file = "coverage-7.3.2-cp312-cp312-win_amd64.whl", hash = "sha256:7dbc3ed60e8659bc59b6b304b43ff9c3ed858da2839c78b804973f613d3e92ed"}, + {file = "coverage-7.3.2-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:f94b734214ea6a36fe16e96a70d941af80ff3bfd716c141300d95ebc85339738"}, + {file = "coverage-7.3.2-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:af3d828d2c1cbae52d34bdbb22fcd94d1ce715d95f1a012354a75e5913f1bda2"}, + {file = "coverage-7.3.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:630b13e3036e13c7adc480ca42fa7afc2a5d938081d28e20903cf7fd687872e2"}, + {file = "coverage-7.3.2-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c9eacf273e885b02a0273bb3a2170f30e2d53a6d53b72dbe02d6701b5296101c"}, + {file = "coverage-7.3.2-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d8f17966e861ff97305e0801134e69db33b143bbfb36436efb9cfff6ec7b2fd9"}, + {file = "coverage-7.3.2-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:b4275802d16882cf9c8b3d057a0839acb07ee9379fa2749eca54efbce1535b82"}, + {file = "coverage-7.3.2-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:72c0cfa5250f483181e677ebc97133ea1ab3eb68645e494775deb6a7f6f83901"}, + {file = "coverage-7.3.2-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:cb536f0dcd14149425996821a168f6e269d7dcd2c273a8bff8201e79f5104e76"}, + {file = "coverage-7.3.2-cp38-cp38-win32.whl", hash = "sha256:307adb8bd3abe389a471e649038a71b4eb13bfd6b7dd9a129fa856f5c695cf92"}, + {file = "coverage-7.3.2-cp38-cp38-win_amd64.whl", hash = "sha256:88ed2c30a49ea81ea3b7f172e0269c182a44c236eb394718f976239892c0a27a"}, + {file = "coverage-7.3.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:b631c92dfe601adf8f5ebc7fc13ced6bb6e9609b19d9a8cd59fa47c4186ad1ce"}, + {file = "coverage-7.3.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:d3d9df4051c4a7d13036524b66ecf7a7537d14c18a384043f30a303b146164e9"}, + {file = "coverage-7.3.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5f7363d3b6a1119ef05015959ca24a9afc0ea8a02c687fe7e2d557705375c01f"}, + {file = "coverage-7.3.2-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:2f11cc3c967a09d3695d2a6f03fb3e6236622b93be7a4b5dc09166a861be6d25"}, + {file = "coverage-7.3.2-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:149de1d2401ae4655c436a3dced6dd153f4c3309f599c3d4bd97ab172eaf02d9"}, + {file = "coverage-7.3.2-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:3a4006916aa6fee7cd38db3bfc95aa9c54ebb4ffbfc47c677c8bba949ceba0a6"}, + {file = "coverage-7.3.2-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:9028a3871280110d6e1aa2df1afd5ef003bab5fb1ef421d6dc748ae1c8ef2ebc"}, + {file = "coverage-7.3.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:9f805d62aec8eb92bab5b61c0f07329275b6f41c97d80e847b03eb894f38d083"}, + {file = "coverage-7.3.2-cp39-cp39-win32.whl", hash = "sha256:d1c88ec1a7ff4ebca0219f5b1ef863451d828cccf889c173e1253aa84b1e07ce"}, + {file = "coverage-7.3.2-cp39-cp39-win_amd64.whl", hash = "sha256:b4767da59464bb593c07afceaddea61b154136300881844768037fd5e859353f"}, + {file = "coverage-7.3.2-pp38.pp39.pp310-none-any.whl", hash = "sha256:ae97af89f0fbf373400970c0a21eef5aa941ffeed90aee43650b81f7d7f47637"}, + {file = "coverage-7.3.2.tar.gz", hash = "sha256:be32ad29341b0170e795ca590e1c07e81fc061cb5b10c74ce7203491484404ef"}, ] [package.dependencies] @@ -664,15 +672,19 @@ toml = ["tomli"] [[package]] name = "cycler" -version = "0.11.0" +version = "0.12.0" description = "Composable style cycles" optional = false -python-versions = ">=3.6" +python-versions = ">=3.8" files = [ - {file = "cycler-0.11.0-py3-none-any.whl", hash = "sha256:3a27e95f763a428a739d2add979fa7494c912a32c17c4c38c4d5f082cad165a3"}, - {file = "cycler-0.11.0.tar.gz", hash = "sha256:9c87405839a19696e837b3b818fed3f5f69f16f1eec1a1ad77e043dcea9c772f"}, + {file = "cycler-0.12.0-py3-none-any.whl", hash = "sha256:7896994252d006771357777d0251f3e34d266f4fa5f2c572247a80ab01440947"}, + {file = "cycler-0.12.0.tar.gz", hash = "sha256:8cc3a7b4861f91b1095157f9916f748549a617046e67eb7619abed9b34d2c94a"}, ] +[package.extras] +docs = ["ipython", "matplotlib", "numpydoc", "sphinx"] +tests = ["pytest", "pytest-cov", "pytest-xdist"] + [[package]] name = "debugpy" version = "1.8.0" @@ -773,27 +785,27 @@ test = ["pytest (>=6)"] [[package]] name = "executing" -version = "1.2.0" +version = "2.0.0" description = "Get the currently executing AST node of a frame, and other information" optional = false python-versions = "*" files = [ - {file = "executing-1.2.0-py2.py3-none-any.whl", hash = "sha256:0314a69e37426e3608aada02473b4161d4caf5a4b244d1d0c48072b8fee7bacc"}, - {file = "executing-1.2.0.tar.gz", hash = "sha256:19da64c18d2d851112f09c287f8d3dbbdf725ab0e569077efb6cdcbd3497c107"}, + {file = "executing-2.0.0-py2.py3-none-any.whl", hash = "sha256:06df6183df67389625f4e763921c6cf978944721abf3e714000200aab95b0657"}, + {file = "executing-2.0.0.tar.gz", hash = "sha256:0ff053696fdeef426cda5bd18eacd94f82c91f49823a2e9090124212ceea9b08"}, ] [package.extras] -tests = ["asttokens", "littleutils", "pytest", "rich"] +tests = ["asttokens (>=2.1.0)", "coverage", "coverage-enable-subprocess", "ipython", "littleutils", "pytest", "rich"] [[package]] name = "fastjsonschema" -version = "2.18.0" +version = "2.18.1" description = "Fastest Python implementation of JSON schema" optional = false python-versions = "*" files = [ - {file = "fastjsonschema-2.18.0-py3-none-any.whl", hash = "sha256:128039912a11a807068a7c87d0da36660afbfd7202780db26c4aa7153cfdc799"}, - {file = "fastjsonschema-2.18.0.tar.gz", hash = "sha256:e820349dd16f806e4bd1467a138dced9def4bc7d6213a34295272a6cac95b5bd"}, + {file = "fastjsonschema-2.18.1-py3-none-any.whl", hash = "sha256:aec6a19e9f66e9810ab371cc913ad5f4e9e479b63a7072a2cd060a9369e329a8"}, + {file = "fastjsonschema-2.18.1.tar.gz", hash = "sha256:06dc8680d937628e993fa0cd278f196d20449a1adc087640710846b324d422ea"}, ] [package.extras] @@ -817,45 +829,53 @@ pyflakes = ">=3.1.0,<3.2.0" [[package]] name = "fonttools" -version = "4.42.1" +version = "4.43.0" description = "Tools to manipulate font files" optional = false python-versions = ">=3.8" files = [ - {file = "fonttools-4.42.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:ed1a13a27f59d1fc1920394a7f596792e9d546c9ca5a044419dca70c37815d7c"}, - {file = "fonttools-4.42.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:c9b1ce7a45978b821a06d375b83763b27a3a5e8a2e4570b3065abad240a18760"}, - {file = "fonttools-4.42.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f720fa82a11c0f9042376fd509b5ed88dab7e3cd602eee63a1af08883b37342b"}, - {file = "fonttools-4.42.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:db55cbaea02a20b49fefbd8e9d62bd481aaabe1f2301dabc575acc6b358874fa"}, - {file = "fonttools-4.42.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:3a35981d90feebeaef05e46e33e6b9e5b5e618504672ca9cd0ff96b171e4bfff"}, - {file = "fonttools-4.42.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:68a02bbe020dc22ee0540e040117535f06df9358106d3775e8817d826047f3fd"}, - {file = "fonttools-4.42.1-cp310-cp310-win32.whl", hash = "sha256:12a7c247d1b946829bfa2f331107a629ea77dc5391dfd34fdcd78efa61f354ca"}, - {file = "fonttools-4.42.1-cp310-cp310-win_amd64.whl", hash = "sha256:a398bdadb055f8de69f62b0fc70625f7cbdab436bbb31eef5816e28cab083ee8"}, - {file = "fonttools-4.42.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:689508b918332fb40ce117131633647731d098b1b10d092234aa959b4251add5"}, - {file = "fonttools-4.42.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:9e36344e48af3e3bde867a1ca54f97c308735dd8697005c2d24a86054a114a71"}, - {file = "fonttools-4.42.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:19b7db825c8adee96fac0692e6e1ecd858cae9affb3b4812cdb9d934a898b29e"}, - {file = "fonttools-4.42.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:113337c2d29665839b7d90b39f99b3cac731f72a0eda9306165a305c7c31d341"}, - {file = "fonttools-4.42.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:37983b6bdab42c501202500a2be3a572f50d4efe3237e0686ee9d5f794d76b35"}, - {file = "fonttools-4.42.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:6ed2662a3d9c832afa36405f8748c250be94ae5dfc5283d668308391f2102861"}, - {file = "fonttools-4.42.1-cp311-cp311-win32.whl", hash = "sha256:179737095eb98332a2744e8f12037b2977f22948cf23ff96656928923ddf560a"}, - {file = "fonttools-4.42.1-cp311-cp311-win_amd64.whl", hash = "sha256:f2b82f46917d8722e6b5eafeefb4fb585d23babd15d8246c664cd88a5bddd19c"}, - {file = "fonttools-4.42.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:62f481ac772fd68901573956231aea3e4b1ad87b9b1089a61613a91e2b50bb9b"}, - {file = "fonttools-4.42.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:f2f806990160d1ce42d287aa419df3ffc42dfefe60d473695fb048355fe0c6a0"}, - {file = "fonttools-4.42.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:db372213d39fa33af667c2aa586a0c1235e88e9c850f5dd5c8e1f17515861868"}, - {file = "fonttools-4.42.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5d18fc642fd0ac29236ff88ecfccff229ec0386090a839dd3f1162e9a7944a40"}, - {file = "fonttools-4.42.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:8708b98c278012ad267ee8a7433baeb809948855e81922878118464b274c909d"}, - {file = "fonttools-4.42.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:c95b0724a6deea2c8c5d3222191783ced0a2f09bd6d33f93e563f6f1a4b3b3a4"}, - {file = "fonttools-4.42.1-cp38-cp38-win32.whl", hash = "sha256:4aa79366e442dbca6e2c8595645a3a605d9eeabdb7a094d745ed6106816bef5d"}, - {file = "fonttools-4.42.1-cp38-cp38-win_amd64.whl", hash = "sha256:acb47f6f8680de24c1ab65ebde39dd035768e2a9b571a07c7b8da95f6c8815fd"}, - {file = "fonttools-4.42.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:5fb289b7a815638a7613d46bcf324c9106804725b2bb8ad913c12b6958ffc4ec"}, - {file = "fonttools-4.42.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:53eb5091ddc8b1199330bb7b4a8a2e7995ad5d43376cadce84523d8223ef3136"}, - {file = "fonttools-4.42.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:46a0ec8adbc6ff13494eb0c9c2e643b6f009ce7320cf640de106fb614e4d4360"}, - {file = "fonttools-4.42.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7cc7d685b8eeca7ae69dc6416833fbfea61660684b7089bca666067cb2937dcf"}, - {file = "fonttools-4.42.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:be24fcb80493b2c94eae21df70017351851652a37de514de553435b256b2f249"}, - {file = "fonttools-4.42.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:515607ec756d7865f23070682622c49d922901943697871fc292277cf1e71967"}, - {file = "fonttools-4.42.1-cp39-cp39-win32.whl", hash = "sha256:0eb79a2da5eb6457a6f8ab904838454accc7d4cccdaff1fd2bd3a0679ea33d64"}, - {file = "fonttools-4.42.1-cp39-cp39-win_amd64.whl", hash = "sha256:7286aed4ea271df9eab8d7a9b29e507094b51397812f7ce051ecd77915a6e26b"}, - {file = "fonttools-4.42.1-py3-none-any.whl", hash = "sha256:9398f244e28e0596e2ee6024f808b06060109e33ed38dcc9bded452fd9bbb853"}, - {file = "fonttools-4.42.1.tar.gz", hash = "sha256:c391cd5af88aacaf41dd7cfb96eeedfad297b5899a39e12f4c2c3706d0a3329d"}, + {file = "fonttools-4.43.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:ab80e7d6bb01316d5fc8161a2660ca2e9e597d0880db4927bc866c76474472ef"}, + {file = "fonttools-4.43.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:82d8e687a42799df5325e7ee12977b74738f34bf7fde1c296f8140efd699a213"}, + {file = "fonttools-4.43.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d08a694b280d615460563a6b4e2afb0b1b9df708c799ec212bf966652b94fc84"}, + {file = "fonttools-4.43.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9d654d3e780e0ceabb1f4eff5a3c042c67d4428d0fe1ea3afd238a721cf171b3"}, + {file = "fonttools-4.43.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:20fc43783c432862071fa76da6fa714902ae587bc68441e12ff4099b94b1fcef"}, + {file = "fonttools-4.43.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:33c40a657fb87ff83185828c0323032d63a4df1279d5c1c38e21f3ec56327803"}, + {file = "fonttools-4.43.0-cp310-cp310-win32.whl", hash = "sha256:b3813f57f85bbc0e4011a0e1e9211f9ee52f87f402e41dc05bc5135f03fa51c1"}, + {file = "fonttools-4.43.0-cp310-cp310-win_amd64.whl", hash = "sha256:05056a8c9af048381fdb17e89b17d45f6c8394176d01e8c6fef5ac96ea950d38"}, + {file = "fonttools-4.43.0-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:da78f39b601ed0b4262929403186d65cf7a016f91ff349ab18fdc5a7080af465"}, + {file = "fonttools-4.43.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:5056f69a18f3f28ab5283202d1efcfe011585d31de09d8560f91c6c88f041e92"}, + {file = "fonttools-4.43.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:dcc01cea0a121fb0c009993497bad93cae25e77db7dee5345fec9cce1aaa09cd"}, + {file = "fonttools-4.43.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ee728d5af70f117581712966a21e2e07031e92c687ef1fdc457ac8d281016f64"}, + {file = "fonttools-4.43.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:b5e760198f0b87e42478bb35a6eae385c636208f6f0d413e100b9c9c5efafb6a"}, + {file = "fonttools-4.43.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:af38f5145258e9866da5881580507e6d17ff7756beef175d13213a43a84244e9"}, + {file = "fonttools-4.43.0-cp311-cp311-win32.whl", hash = "sha256:25620b738d4533cfc21fd2a4f4b667e481f7cb60e86b609799f7d98af657854e"}, + {file = "fonttools-4.43.0-cp311-cp311-win_amd64.whl", hash = "sha256:635658464dccff6fa5c3b43fe8f818ae2c386ee6a9e1abc27359d1e255528186"}, + {file = "fonttools-4.43.0-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:a682fb5cbf8837d1822b80acc0be5ff2ea0c49ca836e468a21ffd388ef280fd3"}, + {file = "fonttools-4.43.0-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:3d7adfa342e6b3a2b36960981f23f480969f833d565a4eba259c2e6f59d2674f"}, + {file = "fonttools-4.43.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5aa67d1e720fdd902fde4a59d0880854ae9f19fc958f3e1538bceb36f7f4dc92"}, + {file = "fonttools-4.43.0-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:77e5113233a2df07af9dbf493468ce526784c3b179c0e8b9c7838ced37c98b69"}, + {file = "fonttools-4.43.0-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:57c22e5f9f53630d458830f710424dce4f43c5f0d95cb3368c0f5178541e4db7"}, + {file = "fonttools-4.43.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:206808f9717c9b19117f461246372a2c160fa12b9b8dbdfb904ab50ca235ba0a"}, + {file = "fonttools-4.43.0-cp312-cp312-win32.whl", hash = "sha256:f19c2b1c65d57cbea25cabb80941fea3fbf2625ff0cdcae8900b5fb1c145704f"}, + {file = "fonttools-4.43.0-cp312-cp312-win_amd64.whl", hash = "sha256:7c76f32051159f8284f1a5f5b605152b5a530736fb8b55b09957db38dcae5348"}, + {file = "fonttools-4.43.0-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:e3f8acc6ef4a627394021246e099faee4b343afd3ffe2e517d8195b4ebf20289"}, + {file = "fonttools-4.43.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:a68b71adc3b3a90346e4ac92f0a69ab9caeba391f3b04ab6f1e98f2c8ebe88e3"}, + {file = "fonttools-4.43.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ace0fd5afb79849f599f76af5c6aa5e865bd042c811e4e047bbaa7752cc26126"}, + {file = "fonttools-4.43.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5f9660e70a2430780e23830476332bc3391c3c8694769e2c0032a5038702a662"}, + {file = "fonttools-4.43.0-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:48078357984214ccd22d7fe0340cd6ff7286b2f74f173603a1a9a40b5dc25afe"}, + {file = "fonttools-4.43.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:d27d960e10cf7617d70cf3104c32a69b008dde56f2d55a9bed4ba6e3df611544"}, + {file = "fonttools-4.43.0-cp38-cp38-win32.whl", hash = "sha256:a6a2e99bb9ea51e0974bbe71768df42c6dd189308c22f3f00560c3341b345646"}, + {file = "fonttools-4.43.0-cp38-cp38-win_amd64.whl", hash = "sha256:030355fbb0cea59cf75d076d04d3852900583d1258574ff2d7d719abf4513836"}, + {file = "fonttools-4.43.0-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:52e77f23a9c059f8be01a07300ba4c4d23dc271d33eed502aea5a01ab5d2f4c1"}, + {file = "fonttools-4.43.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:6a530fa28c155538d32214eafa0964989098a662bd63e91e790e6a7a4e9c02da"}, + {file = "fonttools-4.43.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:70f021a6b9eb10dfe7a411b78e63a503a06955dd6d2a4e130906d8760474f77c"}, + {file = "fonttools-4.43.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:812142a0e53cc853964d487e6b40963df62f522b1b571e19d1ff8467d7880ceb"}, + {file = "fonttools-4.43.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:ace51902ab67ef5fe225e8b361039e996db153e467e24a28d35f74849b37b7ce"}, + {file = "fonttools-4.43.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:8dfd8edfce34ad135bd69de20c77449c06e2c92b38f2a8358d0987737f82b49e"}, + {file = "fonttools-4.43.0-cp39-cp39-win32.whl", hash = "sha256:e5d53eddaf436fa131042f44a76ea1ead0a17c354ab9de0d80e818f0cb1629f1"}, + {file = "fonttools-4.43.0-cp39-cp39-win_amd64.whl", hash = "sha256:93c5b6d77baf28f306bc13fa987b0b13edca6a39dc2324eaca299a74ccc6316f"}, + {file = "fonttools-4.43.0-py3-none-any.whl", hash = "sha256:e4bc589d8da09267c7c4ceaaaa4fc01a7908ac5b43b286ac9279afe76407c384"}, + {file = "fonttools-4.43.0.tar.gz", hash = "sha256:b62a53a4ca83c32c6b78cac64464f88d02929779373c716f738af6968c8c821e"}, ] [package.extras] @@ -902,79 +922,77 @@ dev = ["flake8", "markdown", "twine", "wheel"] [[package]] name = "greenlet" -version = "2.0.2" +version = "3.0.0" description = "Lightweight in-process concurrent programming" optional = false -python-versions = ">=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*" -files = [ - {file = "greenlet-2.0.2-cp27-cp27m-macosx_10_14_x86_64.whl", hash = "sha256:bdfea8c661e80d3c1c99ad7c3ff74e6e87184895bbaca6ee8cc61209f8b9b85d"}, - {file = "greenlet-2.0.2-cp27-cp27m-manylinux2010_x86_64.whl", hash = "sha256:9d14b83fab60d5e8abe587d51c75b252bcc21683f24699ada8fb275d7712f5a9"}, - {file = "greenlet-2.0.2-cp27-cp27m-win32.whl", hash = "sha256:6c3acb79b0bfd4fe733dff8bc62695283b57949ebcca05ae5c129eb606ff2d74"}, - {file = "greenlet-2.0.2-cp27-cp27m-win_amd64.whl", hash = "sha256:283737e0da3f08bd637b5ad058507e578dd462db259f7f6e4c5c365ba4ee9343"}, - {file = "greenlet-2.0.2-cp27-cp27mu-manylinux2010_x86_64.whl", hash = "sha256:d27ec7509b9c18b6d73f2f5ede2622441de812e7b1a80bbd446cb0633bd3d5ae"}, - {file = "greenlet-2.0.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:d967650d3f56af314b72df7089d96cda1083a7fc2da05b375d2bc48c82ab3f3c"}, - {file = "greenlet-2.0.2-cp310-cp310-macosx_11_0_x86_64.whl", hash = "sha256:30bcf80dda7f15ac77ba5af2b961bdd9dbc77fd4ac6105cee85b0d0a5fcf74df"}, - {file = "greenlet-2.0.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:26fbfce90728d82bc9e6c38ea4d038cba20b7faf8a0ca53a9c07b67318d46088"}, - {file = "greenlet-2.0.2-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9190f09060ea4debddd24665d6804b995a9c122ef5917ab26e1566dcc712ceeb"}, - {file = "greenlet-2.0.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d75209eed723105f9596807495d58d10b3470fa6732dd6756595e89925ce2470"}, - {file = "greenlet-2.0.2-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:3a51c9751078733d88e013587b108f1b7a1fb106d402fb390740f002b6f6551a"}, - {file = "greenlet-2.0.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:76ae285c8104046b3a7f06b42f29c7b73f77683df18c49ab5af7983994c2dd91"}, - {file = "greenlet-2.0.2-cp310-cp310-win_amd64.whl", hash = "sha256:2d4686f195e32d36b4d7cf2d166857dbd0ee9f3d20ae349b6bf8afc8485b3645"}, - {file = "greenlet-2.0.2-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:c4302695ad8027363e96311df24ee28978162cdcdd2006476c43970b384a244c"}, - {file = "greenlet-2.0.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:d4606a527e30548153be1a9f155f4e283d109ffba663a15856089fb55f933e47"}, - {file = "greenlet-2.0.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c48f54ef8e05f04d6eff74b8233f6063cb1ed960243eacc474ee73a2ea8573ca"}, - {file = "greenlet-2.0.2-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:a1846f1b999e78e13837c93c778dcfc3365902cfb8d1bdb7dd73ead37059f0d0"}, - {file = "greenlet-2.0.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3a06ad5312349fec0ab944664b01d26f8d1f05009566339ac6f63f56589bc1a2"}, - {file = "greenlet-2.0.2-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:eff4eb9b7eb3e4d0cae3d28c283dc16d9bed6b193c2e1ace3ed86ce48ea8df19"}, - {file = "greenlet-2.0.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:5454276c07d27a740c5892f4907c86327b632127dd9abec42ee62e12427ff7e3"}, - {file = "greenlet-2.0.2-cp311-cp311-win_amd64.whl", hash = "sha256:7cafd1208fdbe93b67c7086876f061f660cfddc44f404279c1585bbf3cdc64c5"}, - {file = "greenlet-2.0.2-cp35-cp35m-macosx_10_14_x86_64.whl", hash = "sha256:910841381caba4f744a44bf81bfd573c94e10b3045ee00de0cbf436fe50673a6"}, - {file = "greenlet-2.0.2-cp35-cp35m-manylinux2010_x86_64.whl", hash = "sha256:18a7f18b82b52ee85322d7a7874e676f34ab319b9f8cce5de06067384aa8ff43"}, - {file = "greenlet-2.0.2-cp35-cp35m-win32.whl", hash = "sha256:03a8f4f3430c3b3ff8d10a2a86028c660355ab637cee9333d63d66b56f09d52a"}, - {file = "greenlet-2.0.2-cp35-cp35m-win_amd64.whl", hash = "sha256:4b58adb399c4d61d912c4c331984d60eb66565175cdf4a34792cd9600f21b394"}, - {file = "greenlet-2.0.2-cp36-cp36m-macosx_10_14_x86_64.whl", hash = "sha256:703f18f3fda276b9a916f0934d2fb6d989bf0b4fb5a64825260eb9bfd52d78f0"}, - {file = "greenlet-2.0.2-cp36-cp36m-manylinux2010_x86_64.whl", hash = "sha256:32e5b64b148966d9cccc2c8d35a671409e45f195864560829f395a54226408d3"}, - {file = "greenlet-2.0.2-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2dd11f291565a81d71dab10b7033395b7a3a5456e637cf997a6f33ebdf06f8db"}, - {file = "greenlet-2.0.2-cp36-cp36m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:e0f72c9ddb8cd28532185f54cc1453f2c16fb417a08b53a855c4e6a418edd099"}, - {file = "greenlet-2.0.2-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:cd021c754b162c0fb55ad5d6b9d960db667faad0fa2ff25bb6e1301b0b6e6a75"}, - {file = "greenlet-2.0.2-cp36-cp36m-musllinux_1_1_aarch64.whl", hash = "sha256:3c9b12575734155d0c09d6c3e10dbd81665d5c18e1a7c6597df72fd05990c8cf"}, - {file = "greenlet-2.0.2-cp36-cp36m-musllinux_1_1_x86_64.whl", hash = "sha256:b9ec052b06a0524f0e35bd8790686a1da006bd911dd1ef7d50b77bfbad74e292"}, - {file = "greenlet-2.0.2-cp36-cp36m-win32.whl", hash = "sha256:dbfcfc0218093a19c252ca8eb9aee3d29cfdcb586df21049b9d777fd32c14fd9"}, - {file = "greenlet-2.0.2-cp36-cp36m-win_amd64.whl", hash = "sha256:9f35ec95538f50292f6d8f2c9c9f8a3c6540bbfec21c9e5b4b751e0a7c20864f"}, - {file = "greenlet-2.0.2-cp37-cp37m-macosx_10_15_x86_64.whl", hash = "sha256:d5508f0b173e6aa47273bdc0a0b5ba055b59662ba7c7ee5119528f466585526b"}, - {file = "greenlet-2.0.2-cp37-cp37m-manylinux2010_x86_64.whl", hash = "sha256:f82d4d717d8ef19188687aa32b8363e96062911e63ba22a0cff7802a8e58e5f1"}, - {file = "greenlet-2.0.2-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c9c59a2120b55788e800d82dfa99b9e156ff8f2227f07c5e3012a45a399620b7"}, - {file = "greenlet-2.0.2-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:2780572ec463d44c1d3ae850239508dbeb9fed38e294c68d19a24d925d9223ca"}, - {file = "greenlet-2.0.2-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:937e9020b514ceedb9c830c55d5c9872abc90f4b5862f89c0887033ae33c6f73"}, - {file = "greenlet-2.0.2-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:36abbf031e1c0f79dd5d596bfaf8e921c41df2bdf54ee1eed921ce1f52999a86"}, - {file = "greenlet-2.0.2-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:18e98fb3de7dba1c0a852731c3070cf022d14f0d68b4c87a19cc1016f3bb8b33"}, - {file = "greenlet-2.0.2-cp37-cp37m-win32.whl", hash = "sha256:3f6ea9bd35eb450837a3d80e77b517ea5bc56b4647f5502cd28de13675ee12f7"}, - {file = "greenlet-2.0.2-cp37-cp37m-win_amd64.whl", hash = "sha256:7492e2b7bd7c9b9916388d9df23fa49d9b88ac0640db0a5b4ecc2b653bf451e3"}, - {file = "greenlet-2.0.2-cp38-cp38-macosx_10_15_x86_64.whl", hash = "sha256:b864ba53912b6c3ab6bcb2beb19f19edd01a6bfcbdfe1f37ddd1778abfe75a30"}, - {file = "greenlet-2.0.2-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:1087300cf9700bbf455b1b97e24db18f2f77b55302a68272c56209d5587c12d1"}, - {file = "greenlet-2.0.2-cp38-cp38-manylinux2010_x86_64.whl", hash = "sha256:ba2956617f1c42598a308a84c6cf021a90ff3862eddafd20c3333d50f0edb45b"}, - {file = "greenlet-2.0.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:fc3a569657468b6f3fb60587e48356fe512c1754ca05a564f11366ac9e306526"}, - {file = "greenlet-2.0.2-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:8eab883b3b2a38cc1e050819ef06a7e6344d4a990d24d45bc6f2cf959045a45b"}, - {file = "greenlet-2.0.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:acd2162a36d3de67ee896c43effcd5ee3de247eb00354db411feb025aa319857"}, - {file = "greenlet-2.0.2-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:0bf60faf0bc2468089bdc5edd10555bab6e85152191df713e2ab1fcc86382b5a"}, - {file = "greenlet-2.0.2-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:b0ef99cdbe2b682b9ccbb964743a6aca37905fda5e0452e5ee239b1654d37f2a"}, - {file = "greenlet-2.0.2-cp38-cp38-win32.whl", hash = "sha256:b80f600eddddce72320dbbc8e3784d16bd3fb7b517e82476d8da921f27d4b249"}, - {file = "greenlet-2.0.2-cp38-cp38-win_amd64.whl", hash = "sha256:4d2e11331fc0c02b6e84b0d28ece3a36e0548ee1a1ce9ddde03752d9b79bba40"}, - {file = "greenlet-2.0.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:8512a0c38cfd4e66a858ddd1b17705587900dd760c6003998e9472b77b56d417"}, - {file = "greenlet-2.0.2-cp39-cp39-macosx_11_0_x86_64.whl", hash = "sha256:88d9ab96491d38a5ab7c56dd7a3cc37d83336ecc564e4e8816dbed12e5aaefc8"}, - {file = "greenlet-2.0.2-cp39-cp39-manylinux2010_x86_64.whl", hash = "sha256:561091a7be172ab497a3527602d467e2b3fbe75f9e783d8b8ce403fa414f71a6"}, - {file = "greenlet-2.0.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:971ce5e14dc5e73715755d0ca2975ac88cfdaefcaab078a284fea6cfabf866df"}, - {file = "greenlet-2.0.2-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:be4ed120b52ae4d974aa40215fcdfde9194d63541c7ded40ee12eb4dda57b76b"}, - {file = "greenlet-2.0.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:94c817e84245513926588caf1152e3b559ff794d505555211ca041f032abbb6b"}, - {file = "greenlet-2.0.2-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:1a819eef4b0e0b96bb0d98d797bef17dc1b4a10e8d7446be32d1da33e095dbb8"}, - {file = "greenlet-2.0.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:7efde645ca1cc441d6dc4b48c0f7101e8d86b54c8530141b09fd31cef5149ec9"}, - {file = "greenlet-2.0.2-cp39-cp39-win32.whl", hash = "sha256:ea9872c80c132f4663822dd2a08d404073a5a9b5ba6155bea72fb2a79d1093b5"}, - {file = "greenlet-2.0.2-cp39-cp39-win_amd64.whl", hash = "sha256:db1a39669102a1d8d12b57de2bb7e2ec9066a6f2b3da35ae511ff93b01b5d564"}, - {file = "greenlet-2.0.2.tar.gz", hash = "sha256:e7c8dc13af7db097bed64a051d2dd49e9f0af495c26995c00a9ee842690d34c0"}, +python-versions = ">=3.7" +files = [ + {file = "greenlet-3.0.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:e09dea87cc91aea5500262993cbd484b41edf8af74f976719dd83fe724644cd6"}, + {file = "greenlet-3.0.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f47932c434a3c8d3c86d865443fadc1fbf574e9b11d6650b656e602b1797908a"}, + {file = "greenlet-3.0.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:bdfaeecf8cc705d35d8e6de324bf58427d7eafb55f67050d8f28053a3d57118c"}, + {file = "greenlet-3.0.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:6a68d670c8f89ff65c82b936275369e532772eebc027c3be68c6b87ad05ca695"}, + {file = "greenlet-3.0.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:38ad562a104cd41e9d4644f46ea37167b93190c6d5e4048fcc4b80d34ecb278f"}, + {file = "greenlet-3.0.0-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:02a807b2a58d5cdebb07050efe3d7deaf915468d112dfcf5e426d0564aa3aa4a"}, + {file = "greenlet-3.0.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:b1660a15a446206c8545edc292ab5c48b91ff732f91b3d3b30d9a915d5ec4779"}, + {file = "greenlet-3.0.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:813720bd57e193391dfe26f4871186cf460848b83df7e23e6bef698a7624b4c9"}, + {file = "greenlet-3.0.0-cp310-cp310-win_amd64.whl", hash = "sha256:aa15a2ec737cb609ed48902b45c5e4ff6044feb5dcdfcf6fa8482379190330d7"}, + {file = "greenlet-3.0.0-cp310-universal2-macosx_11_0_x86_64.whl", hash = "sha256:7709fd7bb02b31908dc8fd35bfd0a29fc24681d5cc9ac1d64ad07f8d2b7db62f"}, + {file = "greenlet-3.0.0-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:211ef8d174601b80e01436f4e6905aca341b15a566f35a10dd8d1e93f5dbb3b7"}, + {file = "greenlet-3.0.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6512592cc49b2c6d9b19fbaa0312124cd4c4c8a90d28473f86f92685cc5fef8e"}, + {file = "greenlet-3.0.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:871b0a8835f9e9d461b7fdaa1b57e3492dd45398e87324c047469ce2fc9f516c"}, + {file = "greenlet-3.0.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b505fcfc26f4148551826a96f7317e02c400665fa0883fe505d4fcaab1dabfdd"}, + {file = "greenlet-3.0.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:123910c58234a8d40eaab595bc56a5ae49bdd90122dde5bdc012c20595a94c14"}, + {file = "greenlet-3.0.0-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:96d9ea57292f636ec851a9bb961a5cc0f9976900e16e5d5647f19aa36ba6366b"}, + {file = "greenlet-3.0.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:0b72b802496cccbd9b31acea72b6f87e7771ccfd7f7927437d592e5c92ed703c"}, + {file = "greenlet-3.0.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:527cd90ba3d8d7ae7dceb06fda619895768a46a1b4e423bdb24c1969823b8362"}, + {file = "greenlet-3.0.0-cp311-cp311-win_amd64.whl", hash = "sha256:37f60b3a42d8b5499be910d1267b24355c495064f271cfe74bf28b17b099133c"}, + {file = "greenlet-3.0.0-cp311-universal2-macosx_10_9_universal2.whl", hash = "sha256:c3692ecf3fe754c8c0f2c95ff19626584459eab110eaab66413b1e7425cd84e9"}, + {file = "greenlet-3.0.0-cp312-cp312-macosx_13_0_arm64.whl", hash = "sha256:be557119bf467d37a8099d91fbf11b2de5eb1fd5fc5b91598407574848dc910f"}, + {file = "greenlet-3.0.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:73b2f1922a39d5d59cc0e597987300df3396b148a9bd10b76a058a2f2772fc04"}, + {file = "greenlet-3.0.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:d1e22c22f7826096ad503e9bb681b05b8c1f5a8138469b255eb91f26a76634f2"}, + {file = "greenlet-3.0.0-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:1d363666acc21d2c204dd8705c0e0457d7b2ee7a76cb16ffc099d6799744ac99"}, + {file = "greenlet-3.0.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:334ef6ed8337bd0b58bb0ae4f7f2dcc84c9f116e474bb4ec250a8bb9bd797a66"}, + {file = "greenlet-3.0.0-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:6672fdde0fd1a60b44fb1751a7779c6db487e42b0cc65e7caa6aa686874e79fb"}, + {file = "greenlet-3.0.0-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:952256c2bc5b4ee8df8dfc54fc4de330970bf5d79253c863fb5e6761f00dda35"}, + {file = "greenlet-3.0.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:269d06fa0f9624455ce08ae0179430eea61085e3cf6457f05982b37fd2cefe17"}, + {file = "greenlet-3.0.0-cp312-cp312-win_amd64.whl", hash = "sha256:9adbd8ecf097e34ada8efde9b6fec4dd2a903b1e98037adf72d12993a1c80b51"}, + {file = "greenlet-3.0.0-cp312-universal2-macosx_10_9_universal2.whl", hash = "sha256:553d6fb2324e7f4f0899e5ad2c427a4579ed4873f42124beba763f16032959af"}, + {file = "greenlet-3.0.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c6b5ce7f40f0e2f8b88c28e6691ca6806814157ff05e794cdd161be928550f4c"}, + {file = "greenlet-3.0.0-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ecf94aa539e97a8411b5ea52fc6ccd8371be9550c4041011a091eb8b3ca1d810"}, + {file = "greenlet-3.0.0-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:80dcd3c938cbcac986c5c92779db8e8ce51a89a849c135172c88ecbdc8c056b7"}, + {file = "greenlet-3.0.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e52a712c38e5fb4fd68e00dc3caf00b60cb65634d50e32281a9d6431b33b4af1"}, + {file = "greenlet-3.0.0-cp37-cp37m-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:d5539f6da3418c3dc002739cb2bb8d169056aa66e0c83f6bacae0cd3ac26b423"}, + {file = "greenlet-3.0.0-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:343675e0da2f3c69d3fb1e894ba0a1acf58f481f3b9372ce1eb465ef93cf6fed"}, + {file = "greenlet-3.0.0-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:abe1ef3d780de56defd0c77c5ba95e152f4e4c4e12d7e11dd8447d338b85a625"}, + {file = "greenlet-3.0.0-cp37-cp37m-win32.whl", hash = "sha256:e693e759e172fa1c2c90d35dea4acbdd1d609b6936115d3739148d5e4cd11947"}, + {file = "greenlet-3.0.0-cp37-cp37m-win_amd64.whl", hash = "sha256:bdd696947cd695924aecb3870660b7545a19851f93b9d327ef8236bfc49be705"}, + {file = "greenlet-3.0.0-cp37-universal2-macosx_11_0_x86_64.whl", hash = "sha256:cc3e2679ea13b4de79bdc44b25a0c4fcd5e94e21b8f290791744ac42d34a0353"}, + {file = "greenlet-3.0.0-cp38-cp38-macosx_11_0_universal2.whl", hash = "sha256:63acdc34c9cde42a6534518e32ce55c30f932b473c62c235a466469a710bfbf9"}, + {file = "greenlet-3.0.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4a1a6244ff96343e9994e37e5b4839f09a0207d35ef6134dce5c20d260d0302c"}, + {file = "greenlet-3.0.0-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b822fab253ac0f330ee807e7485769e3ac85d5eef827ca224feaaefa462dc0d0"}, + {file = "greenlet-3.0.0-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8060b32d8586e912a7b7dac2d15b28dbbd63a174ab32f5bc6d107a1c4143f40b"}, + {file = "greenlet-3.0.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:621fcb346141ae08cb95424ebfc5b014361621b8132c48e538e34c3c93ac7365"}, + {file = "greenlet-3.0.0-cp38-cp38-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:6bb36985f606a7c49916eff74ab99399cdfd09241c375d5a820bb855dfb4af9f"}, + {file = "greenlet-3.0.0-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:10b5582744abd9858947d163843d323d0b67be9432db50f8bf83031032bc218d"}, + {file = "greenlet-3.0.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:f351479a6914fd81a55c8e68963609f792d9b067fb8a60a042c585a621e0de4f"}, + {file = "greenlet-3.0.0-cp38-cp38-win32.whl", hash = "sha256:9de687479faec7db5b198cc365bc34addd256b0028956501f4d4d5e9ca2e240a"}, + {file = "greenlet-3.0.0-cp38-cp38-win_amd64.whl", hash = "sha256:3fd2b18432e7298fcbec3d39e1a0aa91ae9ea1c93356ec089421fabc3651572b"}, + {file = "greenlet-3.0.0-cp38-universal2-macosx_11_0_x86_64.whl", hash = "sha256:3c0d36f5adc6e6100aedbc976d7428a9f7194ea79911aa4bf471f44ee13a9464"}, + {file = "greenlet-3.0.0-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:4cd83fb8d8e17633ad534d9ac93719ef8937568d730ef07ac3a98cb520fd93e4"}, + {file = "greenlet-3.0.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6a5b2d4cdaf1c71057ff823a19d850ed5c6c2d3686cb71f73ae4d6382aaa7a06"}, + {file = "greenlet-3.0.0-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:2e7dcdfad252f2ca83c685b0fa9fba00e4d8f243b73839229d56ee3d9d219314"}, + {file = "greenlet-3.0.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c94e4e924d09b5a3e37b853fe5924a95eac058cb6f6fb437ebb588b7eda79870"}, + {file = "greenlet-3.0.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ad6fb737e46b8bd63156b8f59ba6cdef46fe2b7db0c5804388a2d0519b8ddb99"}, + {file = "greenlet-3.0.0-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:d55db1db455c59b46f794346efce896e754b8942817f46a1bada2d29446e305a"}, + {file = "greenlet-3.0.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:56867a3b3cf26dc8a0beecdb4459c59f4c47cdd5424618c08515f682e1d46692"}, + {file = "greenlet-3.0.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:9a812224a5fb17a538207e8cf8e86f517df2080c8ee0f8c1ed2bdaccd18f38f4"}, + {file = "greenlet-3.0.0-cp39-cp39-win32.whl", hash = "sha256:0d3f83ffb18dc57243e0151331e3c383b05e5b6c5029ac29f754745c800f8ed9"}, + {file = "greenlet-3.0.0-cp39-cp39-win_amd64.whl", hash = "sha256:831d6f35037cf18ca5e80a737a27d822d87cd922521d18ed3dbc8a6967be50ce"}, + {file = "greenlet-3.0.0-cp39-universal2-macosx_11_0_x86_64.whl", hash = "sha256:a048293392d4e058298710a54dfaefcefdf49d287cd33fb1f7d63d55426e4355"}, ] [package.extras] -docs = ["Sphinx", "docutils (<0.18)"] +docs = ["Sphinx"] test = ["objgraph", "psutil"] [[package]] @@ -1116,13 +1134,13 @@ test = ["ipython[test]", "pytest", "pytest-asyncio", "pytest-cov", "testpath"] [[package]] name = "ipython" -version = "8.15.0" +version = "8.16.1" description = "IPython: Productive Interactive Computing" optional = false python-versions = ">=3.9" files = [ - {file = "ipython-8.15.0-py3-none-any.whl", hash = "sha256:45a2c3a529296870a97b7de34eda4a31bee16bc7bf954e07d39abe49caf8f887"}, - {file = "ipython-8.15.0.tar.gz", hash = "sha256:2baeb5be6949eeebf532150f81746f8333e2ccce02de1c7eedde3f23ed5e9f1e"}, + {file = "ipython-8.16.1-py3-none-any.whl", hash = "sha256:0852469d4d579d9cd613c220af7bf0c9cc251813e12be647cb9d463939db9b1e"}, + {file = "ipython-8.16.1.tar.gz", hash = "sha256:ad52f58fca8f9f848e256c629eff888efc0528c12fe0f8ec14f33205f23ef938"}, ] [package.dependencies] @@ -1202,13 +1220,13 @@ arrow = ">=0.15.0" [[package]] name = "jedi" -version = "0.19.0" +version = "0.19.1" description = "An autocompletion tool for Python that can be used for text editors." optional = false python-versions = ">=3.6" files = [ - {file = "jedi-0.19.0-py2.py3-none-any.whl", hash = "sha256:cb8ce23fbccff0025e9386b5cf85e892f94c9b822378f8da49970471335ac64e"}, - {file = "jedi-0.19.0.tar.gz", hash = "sha256:bcf9894f1753969cbac8022a8c2eaee06bfa3724e4192470aaffe7eb6272b0c4"}, + {file = "jedi-0.19.1-py2.py3-none-any.whl", hash = "sha256:e983c654fe5c02867aef4cdfce5a2fbb4a50adc0af145f70504238f18ef5e7e0"}, + {file = "jedi-0.19.1.tar.gz", hash = "sha256:cf0496f3651bc65d7174ac1b7d043eff454892c708a87d1b683e57b569927ffd"}, ] [package.dependencies] @@ -1217,7 +1235,7 @@ parso = ">=0.8.3,<0.9.0" [package.extras] docs = ["Jinja2 (==2.11.3)", "MarkupSafe (==1.1.1)", "Pygments (==2.8.1)", "alabaster (==0.7.12)", "babel (==2.9.1)", "chardet (==4.0.0)", "commonmark (==0.8.1)", "docutils (==0.17.1)", "future (==0.18.2)", "idna (==2.10)", "imagesize (==1.2.0)", "mock (==1.0.1)", "packaging (==20.9)", "pyparsing (==2.4.7)", "pytz (==2021.1)", "readthedocs-sphinx-ext (==2.1.4)", "recommonmark (==0.5.0)", "requests (==2.25.1)", "six (==1.15.0)", "snowballstemmer (==2.1.0)", "sphinx (==1.8.5)", "sphinx-rtd-theme (==0.4.3)", "sphinxcontrib-serializinghtml (==1.1.4)", "sphinxcontrib-websupport (==1.2.4)", "urllib3 (==1.26.4)"] qa = ["flake8 (==5.0.4)", "mypy (==0.971)", "types-setuptools (==67.2.0.1)"] -testing = ["Django (<3.1)", "attrs", "colorama", "docopt", "pytest (<7.0.0)"] +testing = ["Django", "attrs", "colorama", "docopt", "pytest (<7.0.0)"] [[package]] name = "jinja2" @@ -1356,13 +1374,13 @@ test = ["coverage", "ipykernel (>=6.14)", "mypy", "paramiko", "pre-commit", "pyt [[package]] name = "jupyter-core" -version = "5.3.1" +version = "5.3.2" description = "Jupyter core package. A base package on which Jupyter projects rely." optional = false python-versions = ">=3.8" files = [ - {file = "jupyter_core-5.3.1-py3-none-any.whl", hash = "sha256:ae9036db959a71ec1cac33081eeb040a79e681f08ab68b0883e9a676c7a90dce"}, - {file = "jupyter_core-5.3.1.tar.gz", hash = "sha256:5ba5c7938a7f97a6b0481463f7ff0dbac7c15ba48cf46fa4035ca6e838aa1aba"}, + {file = "jupyter_core-5.3.2-py3-none-any.whl", hash = "sha256:a4af53c3fa3f6330cebb0d9f658e148725d15652811d1c32dc0f63bb96f2e6d6"}, + {file = "jupyter_core-5.3.2.tar.gz", hash = "sha256:0c28db6cbe2c37b5b398e1a1a5b22f84fd64cd10afc1f6c05b02fb09481ba45f"}, ] [package.dependencies] @@ -2071,13 +2089,13 @@ files = [ [[package]] name = "mistune" -version = "3.0.1" +version = "3.0.2" description = "A sane and fast Markdown parser with useful plugins and renderers" optional = false python-versions = ">=3.7" files = [ - {file = "mistune-3.0.1-py3-none-any.whl", hash = "sha256:b9b3e438efbb57c62b5beb5e134dab664800bdf1284a7ee09e8b12b13eb1aac6"}, - {file = "mistune-3.0.1.tar.gz", hash = "sha256:e912116c13aa0944f9dc530db38eb88f6a77087ab128f49f84a48f4c05ea163c"}, + {file = "mistune-3.0.2-py3-none-any.whl", hash = "sha256:71481854c30fdbc938963d3605b72501f5c10a9320ecd412c121c163a1c7d205"}, + {file = "mistune-3.0.2.tar.gz", hash = "sha256:fc7f93ded930c92394ef2cb6f04a8aabab4117a91449e72dcc8dfa646a508be8"}, ] [[package]] @@ -2169,21 +2187,21 @@ gui = ["wxPython (>=4.0)"] [[package]] name = "ms-deisotope" -version = "0.0.52" +version = "0.0.53" description = "Access, Deisotope, and Charge Deconvolute Mass Spectra" optional = false python-versions = ">3.8" files = [ - {file = "ms_deisotope-0.0.52-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:2a986328939eff1975c1f6b0f8e0e7a0c23383fe052cef0f0e62daa18b4d66cc"}, - {file = "ms_deisotope-0.0.52-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c238c3bd673bfcff613cb7488a91efc03db7e73a4a65c65021c5f56a6016c09e"}, - {file = "ms_deisotope-0.0.52-cp310-cp310-win_amd64.whl", hash = "sha256:0f91868b930d7b1cf035261edc347064aee0c1378d8ddfa8944d397c749c4919"}, - {file = "ms_deisotope-0.0.52-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:097ddcb1488e69cecd77c42e0073bd3011fbeb1a844150ef820c539286aecf33"}, - {file = "ms_deisotope-0.0.52-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:52e5ae87ae470fcb598effe8ecc61d6fc147fbbfabed1141da54c7492c4d460e"}, - {file = "ms_deisotope-0.0.52-cp38-cp38-win_amd64.whl", hash = "sha256:c0dbeb0e9ad9abc9f1fcb6eed30905d1803f86c917acaacdcecd43515e5015c0"}, - {file = "ms_deisotope-0.0.52-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:8cf0b8fa2ef37bc348353a8b656fb4f350aa16a19cd4d123eb010799a5449988"}, - {file = "ms_deisotope-0.0.52-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a66d58e9c29500f2b2c96cf05a40c368d3915ac7125d91e03ed7a8ed9d7a86d9"}, - {file = "ms_deisotope-0.0.52-cp39-cp39-win_amd64.whl", hash = "sha256:3c15a47e9a1519093ae63feeac7f39e4eb70dcb0d35c303410e706211dbc59fb"}, - {file = "ms_deisotope-0.0.52.tar.gz", hash = "sha256:4710818cc484f6d1707798ba7c6a9a304f23c28a2d0d9fa84f8d7512cc125334"}, + {file = "ms_deisotope-0.0.53-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:d10499b075de58fc623b5d73ee09c358a6969b8e75d6064a52929d04e6a921ea"}, + {file = "ms_deisotope-0.0.53-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7c364e2fc023f74564ec9220bbf21fb15c769c37a5a2f62480f2c94d367abef4"}, + {file = "ms_deisotope-0.0.53-cp310-cp310-win_amd64.whl", hash = "sha256:d1cbf0a3537154dc53722833ffd78a00cc340acae6ca9ac787708983e057e3a7"}, + {file = "ms_deisotope-0.0.53-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:eb48ac8c2558608c31d88776bb30a4dfd52f950e752212cf39f90f772641390a"}, + {file = "ms_deisotope-0.0.53-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:63b0bcf9294785aa025a16c4914ffa840ec1da8a4a1a7e13a18953da07529206"}, + {file = "ms_deisotope-0.0.53-cp38-cp38-win_amd64.whl", hash = "sha256:5c94b9d35d6c43eff7969556c21efb470d8b088330ea2ef7719502cc2a856a33"}, + {file = "ms_deisotope-0.0.53-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:e91045699c52ca980e877ace5ca0b3f7394918f62be678be9008fe993e5a6a60"}, + {file = "ms_deisotope-0.0.53-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7e7257e6ca50228b0ead11b8a22cb0d38a3b8f45a7beedd673c8eb919ae15848"}, + {file = "ms_deisotope-0.0.53-cp39-cp39-win_amd64.whl", hash = "sha256:76297eb0bc370ac51c9a35d05fb6702a0e4b668c013b1338f4f5f55909b1e121"}, + {file = "ms_deisotope-0.0.53.tar.gz", hash = "sha256:f8b201b1a36016093c8eddb67d87106d8080d8c109b3bec489a3579f18ba64be"}, ] [package.dependencies] @@ -2193,7 +2211,7 @@ lxml = "*" ms-peak-picker = ">=0.1.41" numpy = "*" psims = ">=0.1.44" -pyteomics = "4.6.0" +pyteomics = ">=4.6.2" python-idzip = ">=0.3.2" pyzstd = "*" scipy = "*" @@ -2562,13 +2580,13 @@ files = [ [[package]] name = "packaging" -version = "23.1" +version = "23.2" description = "Core utilities for Python packages" optional = false python-versions = ">=3.7" files = [ - {file = "packaging-23.1-py3-none-any.whl", hash = "sha256:994793af429502c4ea2ebf6bf664629d07c1a9fe974af92966e4b8d2df7edc61"}, - {file = "packaging-23.1.tar.gz", hash = "sha256:a392980d2b6cffa644431898be54b0045151319d1e7ec34f0cfed48767dd334f"}, + {file = "packaging-23.2-py3-none-any.whl", hash = "sha256:8c491190033a9af7e1d931d0b5dacc2ef47509b34dd0de67ed209b5203fc88c7"}, + {file = "packaging-23.2.tar.gz", hash = "sha256:048fb0e9405036518eaaf48a55953c750c11e1a1b68e0dd1a9d62ed0c092cfc5"}, ] [[package]] @@ -2795,13 +2813,13 @@ tests = ["check-manifest", "coverage", "defusedxml", "markdown2", "olefile", "pa [[package]] name = "platformdirs" -version = "3.10.0" +version = "3.11.0" description = "A small Python package for determining appropriate platform-specific dirs, e.g. a \"user data dir\"." optional = false python-versions = ">=3.7" files = [ - {file = "platformdirs-3.10.0-py3-none-any.whl", hash = "sha256:d7c24979f292f916dc9cbf8648319032f551ea8c49a4c9bf2fb556a02070ec1d"}, - {file = "platformdirs-3.10.0.tar.gz", hash = "sha256:b45696dab2d7cc691a3226759c0d3b00c47c8b6e293d96f6436f733303f77f6d"}, + {file = "platformdirs-3.11.0-py3-none-any.whl", hash = "sha256:e9d171d00af68be50e9202731309c4e658fd8bc76f55c11c7dd760d023bda68e"}, + {file = "platformdirs-3.11.0.tar.gz", hash = "sha256:cf8ee52a3afdb965072dcc652433e0c7e3e40cf5ea1477cd4b3b1d2eb75495b3"}, ] [package.extras] @@ -3006,13 +3024,13 @@ extra = ["pygments (>=2.12)"] [[package]] name = "pymzml" -version = "2.4.7" +version = "2.5.2" description = "high-throughput mzML parsing" optional = false -python-versions = ">=3.5.0" +python-versions = ">=3.7.0" files = [ - {file = "pymzml-2.4.7-py3-none-any.whl", hash = "sha256:6bcd8937b59fbbd6cf41f887803b837bcf08465e1c6b10cab45135b0fb15f399"}, - {file = "pymzml-2.4.7.tar.gz", hash = "sha256:7ea36fd00be3b634c6a40b8f7188c514efcac6f23caa87eeb16c33a6f0b87d2b"}, + {file = "pymzml-2.5.2-py3-none-any.whl", hash = "sha256:3a56b54c5feea80c2d718614d95e43c89d3dc6fde4a19ce77e39f0b8f07a570b"}, + {file = "pymzml-2.5.2.tar.gz", hash = "sha256:02c1d20d619e8ea7014216790957d9d92514be24b78c44949f294a17f97cdc2b"}, ] [package.dependencies] @@ -3056,18 +3074,18 @@ pbr = "*" [[package]] name = "pyteomics" -version = "4.6" +version = "4.6.2" description = "A framework for proteomics data analysis." optional = false python-versions = "*" files = [ - {file = "pyteomics-4.6-py2.py3-none-any.whl", hash = "sha256:95fea3ca8c8700d6113e85bf20e627acecdd892821fcc6559d16e18235e631dc"}, - {file = "pyteomics-4.6.tar.gz", hash = "sha256:a5c2ee4a36b13c388b67b7d426646dd0a5cb46d21263e4ce31503021f3b4d5d7"}, + {file = "pyteomics-4.6.2-py2.py3-none-any.whl", hash = "sha256:ef88f350a42aee0a4df14a3851c7cd3d890af9d7dfecc9507aafbbd4b3fda1f0"}, + {file = "pyteomics-4.6.2.tar.gz", hash = "sha256:8c0608b7fbcfc65409e455c4bc8edb91aa9beed65744f37eacac9119ca7335d5"}, ] [package.extras] -all = ["h5py", "hdf5plugin", "lxml", "matplotlib", "numpy", "pandas", "psims (>v0.1.42)", "pynumpress", "sqlalchemy"] -df = ["pandas"] +all = ["h5py", "hdf5plugin", "lxml", "matplotlib", "numpy", "pandas (>=0.17)", "psims (>v0.1.42)", "pynumpress", "scikit-learn", "sqlalchemy"] +df = ["pandas (>=0.17)"] graphics = ["matplotlib"] mzmlb = ["h5py", "hdf5plugin"] numpress = ["pynumpress"] @@ -3804,36 +3822,36 @@ tests = ["black (>=23.3.0)", "matplotlib (>=3.1.3)", "mypy (>=1.3)", "numpydoc ( [[package]] name = "scipy" -version = "1.11.2" +version = "1.11.3" description = "Fundamental algorithms for scientific computing in Python" optional = false python-versions = "<3.13,>=3.9" files = [ - {file = "scipy-1.11.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:2b997a5369e2d30c97995dcb29d638701f8000d04df01b8e947f206e5d0ac788"}, - {file = "scipy-1.11.2-cp310-cp310-macosx_12_0_arm64.whl", hash = "sha256:95763fbda1206bec41157582bea482f50eb3702c85fffcf6d24394b071c0e87a"}, - {file = "scipy-1.11.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e367904a0fec76433bf3fbf3e85bf60dae8e9e585ffd21898ab1085a29a04d16"}, - {file = "scipy-1.11.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d690e1ca993c8f7ede6d22e5637541217fc6a4d3f78b3672a6fe454dbb7eb9a7"}, - {file = "scipy-1.11.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:d2b813bfbe8dec6a75164523de650bad41f4405d35b0fa24c2c28ae07fcefb20"}, - {file = "scipy-1.11.2-cp310-cp310-win_amd64.whl", hash = "sha256:afdb0d983f6135d50770dd979df50bf1c7f58b5b33e0eb8cf5c73c70600eae1d"}, - {file = "scipy-1.11.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:8d9886f44ef8c9e776cb7527fb01455bf4f4a46c455c4682edc2c2cc8cd78562"}, - {file = "scipy-1.11.2-cp311-cp311-macosx_12_0_arm64.whl", hash = "sha256:1342ca385c673208f32472830c10110a9dcd053cf0c4b7d4cd7026d0335a6c1d"}, - {file = "scipy-1.11.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b133f237bd8ba73bad51bc12eb4f2d84cbec999753bf25ba58235e9fc2096d80"}, - {file = "scipy-1.11.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3aeb87661de987f8ec56fa6950863994cd427209158255a389fc5aea51fa7055"}, - {file = "scipy-1.11.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:90d3b1364e751d8214e325c371f0ee0dd38419268bf4888b2ae1040a6b266b2a"}, - {file = "scipy-1.11.2-cp311-cp311-win_amd64.whl", hash = "sha256:f73102f769ee06041a3aa26b5841359b1a93cc364ce45609657751795e8f4a4a"}, - {file = "scipy-1.11.2-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:fa4909c6c20c3d91480533cddbc0e7c6d849e7d9ded692918c76ce5964997898"}, - {file = "scipy-1.11.2-cp312-cp312-macosx_12_0_arm64.whl", hash = "sha256:ac74b1512d38718fb6a491c439aa7b3605b96b1ed3be6599c17d49d6c60fca18"}, - {file = "scipy-1.11.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b8425fa963a32936c9773ee3ce44a765d8ff67eed5f4ac81dc1e4a819a238ee9"}, - {file = "scipy-1.11.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:542a757e2a6ec409e71df3d8fd20127afbbacb1c07990cb23c5870c13953d899"}, - {file = "scipy-1.11.2-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:ea932570b1c2a30edafca922345854ff2cd20d43cd9123b6dacfdecebfc1a80b"}, - {file = "scipy-1.11.2-cp312-cp312-win_amd64.whl", hash = "sha256:4447ad057d7597476f9862ecbd9285bbf13ba9d73ce25acfa4e4b11c6801b4c9"}, - {file = "scipy-1.11.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:b0620240ef445b5ddde52460e6bc3483b7c9c750275369379e5f609a1050911c"}, - {file = "scipy-1.11.2-cp39-cp39-macosx_12_0_arm64.whl", hash = "sha256:f28f1f6cfeb48339c192efc6275749b2a25a7e49c4d8369a28b6591da02fbc9a"}, - {file = "scipy-1.11.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:214cdf04bbae7a54784f8431f976704ed607c4bc69ba0d5d5d6a9df84374df76"}, - {file = "scipy-1.11.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:10eb6af2f751aa3424762948e5352f707b0dece77288206f227864ddf675aca0"}, - {file = "scipy-1.11.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:0f3261f14b767b316d7137c66cc4f33a80ea05841b9c87ad83a726205b901423"}, - {file = "scipy-1.11.2-cp39-cp39-win_amd64.whl", hash = "sha256:2c91cf049ffb5575917f2a01da1da082fd24ed48120d08a6e7297dfcac771dcd"}, - {file = "scipy-1.11.2.tar.gz", hash = "sha256:b29318a5e39bd200ca4381d80b065cdf3076c7d7281c5e36569e99273867f61d"}, + {file = "scipy-1.11.3-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:370f569c57e1d888304052c18e58f4a927338eafdaef78613c685ca2ea0d1fa0"}, + {file = "scipy-1.11.3-cp310-cp310-macosx_12_0_arm64.whl", hash = "sha256:9885e3e4f13b2bd44aaf2a1a6390a11add9f48d5295f7a592393ceb8991577a3"}, + {file = "scipy-1.11.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e04aa19acc324a1a076abb4035dabe9b64badb19f76ad9c798bde39d41025cdc"}, + {file = "scipy-1.11.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3e1a8a4657673bfae1e05e1e1d6e94b0cabe5ed0c7c144c8aa7b7dbb774ce5c1"}, + {file = "scipy-1.11.3-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:7abda0e62ef00cde826d441485e2e32fe737bdddee3324e35c0e01dee65e2a88"}, + {file = "scipy-1.11.3-cp310-cp310-win_amd64.whl", hash = "sha256:033c3fd95d55012dd1148b201b72ae854d5086d25e7c316ec9850de4fe776929"}, + {file = "scipy-1.11.3-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:925c6f09d0053b1c0f90b2d92d03b261e889b20d1c9b08a3a51f61afc5f58165"}, + {file = "scipy-1.11.3-cp311-cp311-macosx_12_0_arm64.whl", hash = "sha256:5664e364f90be8219283eeb844323ff8cd79d7acbd64e15eb9c46b9bc7f6a42a"}, + {file = "scipy-1.11.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:00f325434b6424952fbb636506f0567898dca7b0f7654d48f1c382ea338ce9a3"}, + {file = "scipy-1.11.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5f290cf561a4b4edfe8d1001ee4be6da60c1c4ea712985b58bf6bc62badee221"}, + {file = "scipy-1.11.3-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:91770cb3b1e81ae19463b3c235bf1e0e330767dca9eb4cd73ba3ded6c4151e4d"}, + {file = "scipy-1.11.3-cp311-cp311-win_amd64.whl", hash = "sha256:e1f97cd89c0fe1a0685f8f89d85fa305deb3067d0668151571ba50913e445820"}, + {file = "scipy-1.11.3-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:dfcc1552add7cb7c13fb70efcb2389d0624d571aaf2c80b04117e2755a0c5d15"}, + {file = "scipy-1.11.3-cp312-cp312-macosx_12_0_arm64.whl", hash = "sha256:0d3a136ae1ff0883fffbb1b05b0b2fea251cb1046a5077d0b435a1839b3e52b7"}, + {file = "scipy-1.11.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bae66a2d7d5768eaa33008fa5a974389f167183c87bf39160d3fefe6664f8ddc"}, + {file = "scipy-1.11.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d2f6dee6cbb0e263b8142ed587bc93e3ed5e777f1f75448d24fb923d9fd4dce6"}, + {file = "scipy-1.11.3-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:74e89dc5e00201e71dd94f5f382ab1c6a9f3ff806c7d24e4e90928bb1aafb280"}, + {file = "scipy-1.11.3-cp312-cp312-win_amd64.whl", hash = "sha256:90271dbde4be191522b3903fc97334e3956d7cfb9cce3f0718d0ab4fd7d8bfd6"}, + {file = "scipy-1.11.3-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:a63d1ec9cadecce838467ce0631c17c15c7197ae61e49429434ba01d618caa83"}, + {file = "scipy-1.11.3-cp39-cp39-macosx_12_0_arm64.whl", hash = "sha256:5305792c7110e32ff155aed0df46aa60a60fc6e52cd4ee02cdeb67eaccd5356e"}, + {file = "scipy-1.11.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9ea7f579182d83d00fed0e5c11a4aa5ffe01460444219dedc448a36adf0c3917"}, + {file = "scipy-1.11.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c77da50c9a91e23beb63c2a711ef9e9ca9a2060442757dffee34ea41847d8156"}, + {file = "scipy-1.11.3-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:15f237e890c24aef6891c7d008f9ff7e758c6ef39a2b5df264650eb7900403c0"}, + {file = "scipy-1.11.3-cp39-cp39-win_amd64.whl", hash = "sha256:4b4bb134c7aa457e26cc6ea482b016fef45db71417d55cc6d8f43d799cdf9ef2"}, + {file = "scipy-1.11.3.tar.gz", hash = "sha256:bba4d955f54edd61899776bad459bf7326e14b9fa1c552181f0479cc60a568cd"}, ] [package.dependencies] @@ -3899,25 +3917,25 @@ testing-integration = ["build[virtualenv] (>=1.0.3)", "filelock (>=3.4.0)", "jar [[package]] name = "setuptools-scm" -version = "8.0.3" +version = "8.0.4" description = "the blessed package to manage your versions by scm tags" optional = false python-versions = ">=3.8" files = [ - {file = "setuptools-scm-8.0.3.tar.gz", hash = "sha256:0169fd70197efda2f8c4d0b2a7a3d614431b488116f37b79d031e9e7ec884d8c"}, - {file = "setuptools_scm-8.0.3-py3-none-any.whl", hash = "sha256:813822234453438a13c78d05c8af29918fbc06f88efb33d38f065340bbb48c39"}, + {file = "setuptools-scm-8.0.4.tar.gz", hash = "sha256:b5f43ff6800669595193fd09891564ee9d1d7dcb196cab4b2506d53a2e1c95c7"}, + {file = "setuptools_scm-8.0.4-py3-none-any.whl", hash = "sha256:b47844cd2a84b83b3187a5782c71128c28b4c94cad8bfb871da2784a5cb54c4f"}, ] [package.dependencies] packaging = ">=20" setuptools = "*" tomli = {version = ">=1", markers = "python_version < \"3.11\""} -typing-extensions = {version = "*", markers = "python_version < \"3.11\""} +typing-extensions = "*" [package.extras] docs = ["entangled-cli[rich]", "mkdocs", "mkdocs-entangled-plugin", "mkdocs-material", "mkdocstrings[python]", "pygments"] rich = ["rich"] -test = ["pytest", "rich", "virtualenv (>20)"] +test = ["build", "pytest", "rich", "wheel"] [[package]] name = "six" @@ -4043,13 +4061,13 @@ sqlcipher = ["sqlcipher3-binary"] [[package]] name = "stack-data" -version = "0.6.2" +version = "0.6.3" description = "Extract data from python stack frames and tracebacks for informative displays" optional = false python-versions = "*" files = [ - {file = "stack_data-0.6.2-py3-none-any.whl", hash = "sha256:cbb2a53eb64e5785878201a97ed7c7b94883f48b87bfb0bbe8b623c74679e4a8"}, - {file = "stack_data-0.6.2.tar.gz", hash = "sha256:32d2dd0376772d01b6cb9fc996f3c8b57a357089dec328ed4b6553d037eaf815"}, + {file = "stack_data-0.6.3-py3-none-any.whl", hash = "sha256:d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695"}, + {file = "stack_data-0.6.3.tar.gz", hash = "sha256:836a778de4fec4dcd1dcd89ed8abff8a221f58308462e1c4aa2a3cf30148f0b9"}, ] [package.dependencies] @@ -4267,6 +4285,17 @@ files = [ docs = ["myst-parser", "pydata-sphinx-theme", "sphinx"] test = ["argcomplete (>=3.0.3)", "mypy (>=1.5.1)", "pre-commit", "pytest (>=7.0,<7.5)", "pytest-mock", "pytest-mypy-testing"] +[[package]] +name = "types-python-dateutil" +version = "2.8.19.14" +description = "Typing stubs for python-dateutil" +optional = false +python-versions = "*" +files = [ + {file = "types-python-dateutil-2.8.19.14.tar.gz", hash = "sha256:1f4f10ac98bb8b16ade9dbee3518d9ace017821d94b057a425b069f834737f4b"}, + {file = "types_python_dateutil-2.8.19.14-py3-none-any.whl", hash = "sha256:f977b8de27787639986b4e28963263fd0e5158942b3ecef91b9335c130cb1ce9"}, +] + [[package]] name = "typing-extensions" version = "4.8.0" @@ -4305,13 +4334,13 @@ dev = ["flake8", "flake8-annotations", "flake8-bandit", "flake8-bugbear", "flake [[package]] name = "urllib3" -version = "2.0.5" +version = "2.0.6" description = "HTTP library with thread-safe connection pooling, file post, and more." optional = false python-versions = ">=3.7" files = [ - {file = "urllib3-2.0.5-py3-none-any.whl", hash = "sha256:ef16afa8ba34a1f989db38e1dbbe0c302e4289a47856990d0682e374563ce35e"}, - {file = "urllib3-2.0.5.tar.gz", hash = "sha256:13abf37382ea2ce6fb744d4dad67838eec857c9f4f57009891805e0b5e123594"}, + {file = "urllib3-2.0.6-py3-none-any.whl", hash = "sha256:7a7c7003b000adf9e7ca2a377c9688bbc54ed41b985789ed576570342a375cd2"}, + {file = "urllib3-2.0.6.tar.gz", hash = "sha256:b19e1a85d206b56d7df1d5e683df4a7725252a964e3993648dd0fb5a1c157564"}, ] [package.extras] @@ -4361,13 +4390,13 @@ watchmedo = ["PyYAML (>=3.10)"] [[package]] name = "wcwidth" -version = "0.2.6" +version = "0.2.8" description = "Measures the displayed width of unicode strings in a terminal" optional = false python-versions = "*" files = [ - {file = "wcwidth-0.2.6-py2.py3-none-any.whl", hash = "sha256:795b138f6875577cd91bba52baf9e445cd5118fd32723b460e30a0af30ea230e"}, - {file = "wcwidth-0.2.6.tar.gz", hash = "sha256:a5220780a404dbe3353789870978e472cfe477761f06ee55077256e509b156d0"}, + {file = "wcwidth-0.2.8-py2.py3-none-any.whl", hash = "sha256:77f719e01648ed600dfa5402c347481c0992263b81a027344f3e1ba25493a704"}, + {file = "wcwidth-0.2.8.tar.gz", hash = "sha256:8705c569999ffbb4f6a87c6d1b80f324bd6db952f5eb0b95bc07517f4c1813d4"}, ] [[package]] @@ -4548,5 +4577,5 @@ testing = ["big-O", "jaraco.functools", "jaraco.itertools", "more-itertools", "p [metadata] lock-version = "2.0" -python-versions = "^3.9,<3.11" -content-hash = "d86fe0e8643f1a73aa6678940ac9e40471079a27cb7dfd41fe5ac058e2aca95e" +python-versions = ">=3.9,<3.11" +content-hash = "d1a768757f263f4dc302daf53832d9dbe105328e9fdaefb0ac59b1c8f6993a5d" diff --git a/pyproject.toml b/pyproject.toml index c2182a98..a0b9ab73 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [tool.poetry] name = "vimms" -version = "2.1.3" +version = "2.1.4" description = "A framework to develop, test and optimise fragmentation strategies in LC-MS metabolomics." authors = ["Joe Wandy ", "Vinny Davies", "Ross McBride", "Justin J.J. van der Hooft", "Stefan Weidt", "Ronan Daly", "Simon Rogers"] license = "MIT" @@ -15,7 +15,7 @@ classifiers = [ ] [tool.poetry.dependencies] -python = "^3.9,<3.11" +python = ">=3.9,<3.11" numpy = "^1.24.3" pandas = "^2.0.3" scipy = "^1.11.1" @@ -33,17 +33,15 @@ jsonpickle = "^2.2.0" statsmodels = "^0.14.0" tabulate = "^0.8.10" intervaltree = "^3.1.0" -events = "0.5" -# gpy = "1.10.0" -pymzml = "2.4.7" +events = "^0.5" +# gpy = "^1.10.0" +pymzml = "^2.4.7" psims = "^1.2.7" -mass-spec-utils = "0.0.12" +mass-spec-utils = "^0.0.12" pysmiles = "^1.1.2" numba = "^0.57.1" numba-stats = "^1.3.0" -brain-isotopic-distribution = "^1.5.14" -ms-peak-picker = "0.1.42" -ms-deisotope = "0.0.52" +ms-deisotope = "^0.0.53" optuna = "^3.3.0" # kaleido = "^0.2.1" From 7a42f6c6e13377db2236ae99044b598d0f6dacfc Mon Sep 17 00:00:00 2001 From: Joe Wandy Date: Tue, 3 Oct 2023 01:03:30 +0100 Subject: [PATCH 67/67] Required by readthedocs --- .readthedocs.yml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/.readthedocs.yml b/.readthedocs.yml index 53b746d4..d620bed5 100644 --- a/.readthedocs.yml +++ b/.readthedocs.yml @@ -5,6 +5,11 @@ # Required version: 2 +build: + os: ubuntu-22.04 + tools: + python: "miniconda3-4.7" + # Build documentation with MkDocs mkdocs: configuration: mkdocs.yml