From dc35144df8a9fecbf9e2c786869ebb8de43e34ce Mon Sep 17 00:00:00 2001 From: pohaoc2 Date: Mon, 25 Nov 2024 07:27:16 +0000 Subject: [PATCH] finish mdn and add a test data --- data/ARCADE/test_data.csv | 501 +++ mdn_results.png | Bin 0 -> 151902 bytes poetry.lock | 4170 ++++++++++++----------- pyproject.toml | 1 + sandbox/mdn.py | 172 + sandbox/mdn_results.png | Bin 0 -> 142392 bytes src/conf/cs/models/mdn.yaml | 34 +- src/conf/cs/test.yaml | 16 + src/conf/cs/topological_0_metric_8.yaml | 5 +- src/config.py | 14 +- src/config_utils/assign_models.py | 3 +- src/permutation/models/mdn.py | 110 +- src/permutation/models/sklearnmodel.py | 1 - 13 files changed, 2977 insertions(+), 2050 deletions(-) create mode 100644 data/ARCADE/test_data.csv create mode 100644 mdn_results.png create mode 100644 sandbox/mdn.py create mode 100644 sandbox/mdn_results.png create mode 100644 src/conf/cs/test.yaml diff --git a/data/ARCADE/test_data.csv b/data/ARCADE/test_data.csv new file mode 100644 index 0000000..6382ac4 --- /dev/null +++ b/data/ARCADE/test_data.csv @@ -0,0 +1,501 @@ +X_train,y_train,LAYOUT,COMPONENTS +-2.969630496922688,3.9580887945346026,0.0,1.0 +-2.9668672972583856,5.094319388341963,0.0,1.0 +-2.958287216812856,5.279841196965231,1.0,1.0 +-2.944817690300222,-4.359424463493543,1.0,1.0 +-2.93497409111821,4.8606186601376,1.0,1.0 +-2.931878131395486,4.75479906288841,1.0,1.0 +-2.927073151861102,5.04129977810077,1.0,1.0 +-2.913639068221465,-5.661665195486014,0.0,1.0 +-2.9072603008267954,5.021720760367448,1.0,1.0 +-2.900473026432863,-4.980033489308316,1.0,1.0 +-2.890669046090702,-5.178463706235368,0.0,1.0 +-2.8764930342251853,4.8412548164754154,0.0,1.0 +-2.860368385585045,5.619350646172563,1.0,1.0 +-2.854104201411277,5.014456915327774,0.0,1.0 +-2.847895539507255,4.6987416460556855,1.0,1.0 +-2.8474852395354286,-5.944504589405961,0.0,1.0 +-2.8409321367502693,4.167629363234676,0.0,1.0 +-2.8169985003657034,5.10828382569829,1.0,1.0 +-2.8114248858795943,4.423952590946349,0.0,1.0 +-2.7936688733086896,4.677594419462364,0.0,1.0 +-2.7843463572195475,4.882582874894294,0.0,1.0 +-2.7786783158728032,5.598131300951019,0.0,1.0 +-2.7759108675047135,5.334496881251587,0.0,1.0 +-2.755627186086179,-5.1051828114175,0.0,1.0 +-2.7553491506714165,-4.443833074379184,1.0,1.0 +-2.7410405282965433,-4.756050827759259,1.0,1.0 +-2.7286362665367716,-6.066096024980374,0.0,1.0 +-2.728175941367733,-4.478700870582669,1.0,1.0 +-2.727321717951253,4.898805887289649,1.0,1.0 +-2.7239841478694835,3.7117792648732726,1.0,1.0 +-2.721297523680014,-4.713241269211923,0.0,1.0 +-2.6911274925000637,4.947658108535115,1.0,1.0 +-2.689909672988354,-5.225599305516728,0.0,1.0 +-2.662180345908976,-4.832426193013363,1.0,1.0 +-2.6546474399001343,-5.237063748913374,0.0,1.0 +-2.6514983269908035,-5.033794893224744,0.0,1.0 +-2.6186498982838584,4.688828465618516,1.0,1.0 +-2.609690442088323,-5.291238660945227,1.0,1.0 +-2.5838321947490073,-5.815269654783592,0.0,1.0 +-2.5765875155974207,-5.023873440285304,1.0,1.0 +-2.572868109238626,5.75826740294203,1.0,1.0 +-2.563421961814839,-5.432926440114359,1.0,1.0 +-2.557220611587607,-5.683587405303093,0.0,1.0 +-2.555732089595458,-5.555971066803521,0.0,1.0 +-2.552696137921375,-5.994766311788686,1.0,1.0 +-2.538120541027242,-5.379518773084271,1.0,1.0 +-2.5335921782100908,4.66341153895459,1.0,1.0 +-2.529261711946404,4.73367881397517,0.0,1.0 +-2.5119073161486014,5.131231895911876,0.0,1.0 +-2.4989956998079874,4.390179923311973,1.0,1.0 +-2.4953591633100154,-5.574731749517786,1.0,1.0 +-2.495160210029707,-5.915198252881719,1.0,1.0 +-2.4909737154888485,4.383898400465567,1.0,1.0 +-2.487915210037392,3.599880041765233,1.0,1.0 +-2.4690449876884832,-4.885789396471597,1.0,1.0 +-2.45826137967355,4.190342158118083,0.0,1.0 +-2.452763381707858,4.196048812731831,1.0,1.0 +-2.4522799392831987,-5.278262256878047,0.0,1.0 +-2.441383393164605,4.272558214344034,1.0,1.0 +-2.437951393031445,-5.775770141897675,1.0,1.0 +-2.436108360954786,-5.854832614669158,0.0,1.0 +-2.43334223546443,-5.652439651987752,0.0,1.0 +-2.4169410373753886,-5.2223259524162975,0.0,1.0 +-2.413967315961697,5.122732951781622,0.0,1.0 +-2.4129950360939914,4.230100960235735,1.0,1.0 +-2.39533199173544,4.6589030554618756,0.0,1.0 +-2.3932639432632588,4.4395402482820945,1.0,1.0 +-2.3911707428038076,-4.5499546119036705,0.0,1.0 +-2.3812567869844043,-4.6467164592652175,1.0,1.0 +-2.3526514380401733,3.9903715280343115,1.0,1.0 +-2.3396884528339394,-5.345495263682449,1.0,1.0 +-2.3328151061630917,-5.298039137862738,1.0,1.0 +-2.3191588725564656,-5.595456971280294,1.0,1.0 +-2.3047856428492217,-5.68425052816518,1.0,1.0 +-2.303564156958503,-5.7859547697419655,0.0,1.0 +-2.297597901434365,4.353763640371469,1.0,1.0 +-2.2948425193373705,-6.625945553294945,0.0,1.0 +-2.2910110342700625,4.966489032280063,0.0,1.0 +-2.2870925023915687,-5.18199477143249,1.0,1.0 +-2.28243452437019,4.578899070571787,0.0,1.0 +-2.2808077959979034,4.258821901734459,1.0,1.0 +-2.267770590931327,4.3503158910006,0.0,1.0 +-2.237636924088691,5.628770397119868,1.0,1.0 +-2.1748743351240405,-4.601706993213094,0.0,1.0 +-2.163036836087749,4.302875467120266,1.0,1.0 +-2.1594959085808556,-5.916855100968073,1.0,1.0 +-2.154454650151424,4.353464257379649,1.0,1.0 +-2.142049907682985,4.42602987963526,1.0,1.0 +-2.1306307674526614,-5.993242385414421,0.0,1.0 +-2.0640328779827843,-5.306531184729088,1.0,1.0 +-2.0638881573453807,4.4852875234267735,0.0,1.0 +-2.061377743973484,-5.644759608575109,0.0,1.0 +-2.035151691495008,-5.748039563967157,0.0,1.0 +-2.0326722764759735,4.932516498809408,1.0,1.0 +-2.0302277154323174,4.190178065477085,0.0,1.0 +-2.022393437511422,-4.232951593858287,0.0,1.0 +-1.983043519883445,-5.373246735690332,0.0,1.0 +-1.9768552578762508,-5.414645362037649,1.0,1.0 +-1.960788780539909,-5.218433924725477,1.0,1.0 +-1.9602340795749253,5.3275057107708506,0.0,1.0 +-1.9538014259700514,-5.761030921987848,1.0,1.0 +-1.9373359235577063,-5.17262228891957,1.0,1.0 +-1.935362737321663,-5.1953976449225285,0.0,1.0 +-1.9090501967573963,5.045792693617243,0.0,1.0 +-1.899572940879397,-5.608320691913009,1.0,1.0 +-1.8908732668468378,4.999202862578043,0.0,1.0 +-1.8808889376008746,-5.814359167279816,1.0,1.0 +-1.880579646683785,-6.591364777647082,1.0,1.0 +-1.8712730416574321,3.7322762807768526,1.0,1.0 +-1.828542073211733,4.524543185838104,1.0,1.0 +-1.8252531912642214,-5.037694668291006,1.0,1.0 +-1.8241028254851288,4.56376568003907,1.0,1.0 +-1.8077059107949656,-5.403436777550511,0.0,1.0 +-1.8019573070498416,-5.20223219350075,0.0,1.0 +-1.725965335930343,-5.239303654340162,1.0,1.0 +-1.705073835018941,5.128164371132627,1.0,1.0 +-1.6673531371756185,4.258631482126771,1.0,1.0 +-1.6584249688832842,-5.296171254026688,0.0,1.0 +-1.6543841432366413,-4.743368629791769,1.0,1.0 +-1.6410253488123723,4.702249762203412,0.0,1.0 +-1.63238902474835,-4.855564402757401,1.0,1.0 +-1.6272110070502652,-5.721523336085138,1.0,1.0 +-1.5765054750191996,-5.01806669207109,0.0,1.0 +-1.574174736045602,4.986781577169614,0.0,1.0 +-1.5626286559981655,3.6839076379045865,1.0,1.0 +-1.54888625459729,-5.359397831525922,1.0,1.0 +-1.5476683709309975,-5.414569178584696,1.0,1.0 +-1.5360621397254985,-5.081915715210044,0.0,1.0 +-1.5136140629930552,-5.408917348992672,0.0,1.0 +-1.5042466251067503,5.822892598816092,0.0,1.0 +-1.498542611012428,-4.607613608577454,0.0,1.0 +-1.489306225047815,4.796796550195427,0.0,1.0 +-1.4523502337090664,4.6286252368994525,0.0,1.0 +-1.4473201103998985,3.9339295396363125,1.0,1.0 +-1.4087857939096473,-5.401510810943646,1.0,1.0 +-1.3750064924275547,4.5596005612451584,0.0,1.0 +-1.3719058093566245,-4.220797646504712,1.0,1.0 +-1.335712902113204,-5.224271122994364,1.0,1.0 +-1.3281212145803314,-4.949851075825576,0.0,1.0 +-1.320396618324343,-5.775807028134033,1.0,1.0 +-1.3153658253548652,-5.057654062490382,0.0,1.0 +-1.3143929418757154,3.355977140260284,0.0,1.0 +-1.314220862446618,-4.848569572358251,1.0,1.0 +-1.3088713513596004,-5.892183765621033,0.0,1.0 +-1.307792564572161,-6.045516209263431,0.0,1.0 +-1.2909570337351943,-5.555068252450184,0.0,1.0 +-1.2857274823088356,-5.077601592066063,0.0,1.0 +-1.2807524872302936,-5.55772261596764,0.0,1.0 +-1.2614912825173918,4.015131243656008,0.0,1.0 +-1.2526251588117485,4.783430094453715,0.0,1.0 +-1.247132108788691,-5.873593489293482,0.0,1.0 +-1.2407353698116128,4.4447208764325,1.0,1.0 +-1.2384489344130398,4.188577352819886,1.0,1.0 +-1.2333066475824859,4.60284885486275,1.0,1.0 +-1.194730141099382,-5.522480299030016,0.0,1.0 +-1.1745465422427737,-5.383739146360236,0.0,1.0 +-1.1723173849597759,-4.175862708270928,1.0,1.0 +-1.1341060697060268,-6.006630454935394,1.0,1.0 +-1.1297335434635343,5.2421418990305035,1.0,1.0 +-1.11386411354204,-6.778380787022256,0.0,1.0 +-1.098467969062334,-6.03401987821621,1.0,1.0 +-1.0919791501688167,-5.341919353615534,1.0,1.0 +-1.0861462182374322,4.48264200798483,0.0,1.0 +-1.0841181744575108,-5.178063287093779,1.0,1.0 +-1.0797023938163295,4.378145765586475,0.0,1.0 +-1.075319610169585,-5.474665988640896,0.0,1.0 +-1.0622611623525242,4.518660076984645,0.0,1.0 +-1.0607824078754686,-5.421377039067143,1.0,1.0 +-1.0489000678395177,-5.384064814471534,1.0,1.0 +-1.048018015420414,-5.498390245175024,0.0,1.0 +-1.0476018110443936,4.391545504591963,1.0,1.0 +-1.0280127277805042,-5.542745131691541,1.0,1.0 +-1.0146118508841049,4.692688156291347,1.0,1.0 +-0.9743089715782323,-5.287279199981817,1.0,1.0 +-0.9720290588907852,4.258367820675556,0.0,1.0 +-0.9658212537077961,4.120064021458548,1.0,1.0 +-0.9551787584818929,-6.243098075967866,0.0,1.0 +-0.9536018936984489,5.474590774911375,0.0,1.0 +-0.9047425523240347,3.9861163309376675,1.0,1.0 +-0.8945099246875277,-5.798103922607587,0.0,1.0 +-0.8798866318436831,4.992842463995835,1.0,1.0 +-0.8641639280924305,-6.08678851662426,1.0,1.0 +-0.8594800398384645,3.744513682387363,0.0,1.0 +-0.8492056287343646,4.352160934265584,0.0,1.0 +-0.843053092681469,5.112572609022596,0.0,1.0 +-0.8388561515324229,4.612581296349041,0.0,1.0 +-0.8182223857242361,-4.28734620529854,1.0,1.0 +-0.8018289402378498,-5.0231859204621525,1.0,1.0 +-0.7937051816433991,-6.000701822480124,1.0,1.0 +-0.7933012036844804,-5.305927756000197,0.0,1.0 +-0.7790477984673334,-6.166097576745574,0.0,1.0 +-0.7761471175986543,4.925664257786167,0.0,1.0 +-0.7678914852433012,4.418116156373698,1.0,1.0 +-0.7543752254632778,-5.078948058395189,0.0,1.0 +-0.752759286915825,-4.53156082846759,1.0,1.0 +-0.7523243122411727,5.4435785223127855,0.0,1.0 +-0.7507765228577759,-5.420154108828996,1.0,1.0 +-0.7465022841603357,-4.936241053998022,1.0,1.0 +-0.7424424868145056,4.487948657731798,0.0,1.0 +-0.6894136283884484,4.781236763423971,0.0,1.0 +-0.6833841731953543,-6.077718050405995,1.0,1.0 +-0.6795879221967756,-5.713455798799861,1.0,1.0 +-0.6709804427608685,4.976106389238534,0.0,1.0 +-0.6679362618631082,-6.1864703905176,0.0,1.0 +-0.6647899275950211,4.739213498667762,1.0,1.0 +-0.6414136519994376,-5.209645965993238,0.0,1.0 +-0.6089715936157596,-4.982228680862699,1.0,1.0 +-0.5462823335143807,-6.019347102668141,1.0,1.0 +-0.5377024617862216,-6.100860622006903,0.0,1.0 +-0.5242939385314411,5.243260146115099,0.0,1.0 +-0.49553398110732605,-5.147828025731192,0.0,1.0 +-0.48239962543326076,-5.3993792859712455,0.0,1.0 +-0.4546679445181425,4.001441832619143,0.0,1.0 +-0.4373532682424619,4.588037649403479,1.0,1.0 +-0.434753889848702,4.245515933027556,1.0,1.0 +-0.43089511009611403,5.255899123803843,0.0,1.0 +-0.4260358357498899,-5.866306068000128,0.0,1.0 +-0.4083298881473052,4.688338851283248,0.0,1.0 +-0.39689010457216156,5.215073228640095,1.0,1.0 +-0.36617147576618336,5.130309303532563,0.0,1.0 +-0.3590850375623922,4.597418957981207,0.0,1.0 +-0.3508169917597379,-4.855361759452193,1.0,1.0 +-0.30932686813008115,-4.742966393332303,1.0,1.0 +-0.27275361139336063,-5.067768309190781,0.0,1.0 +-0.2660594832857224,5.091854055591096,0.0,1.0 +-0.26358009469778443,4.763094479702506,0.0,1.0 +-0.2504826570509002,5.440598927352038,1.0,1.0 +-0.21780957036010706,4.851746379864976,0.0,1.0 +-0.20641189120523906,-5.805054603252156,0.0,1.0 +-0.18803614803524216,-4.842948338782466,0.0,1.0 +-0.16671044902830445,-5.604212091220564,1.0,1.0 +-0.1591693753166057,5.559714346419553,1.0,1.0 +-0.15495702547604884,-4.870883621589643,0.0,1.0 +-0.06328343833462213,4.003537098205897,0.0,1.0 +-0.050304749299005636,-4.59125925560799,1.0,1.0 +-0.044893837086816824,5.119076723526115,1.0,1.0 +-0.0442493742548451,-4.66541767268235,1.0,1.0 +-0.03722642181365554,5.004899694408556,1.0,1.0 +-0.03347817178451118,5.59484951605598,1.0,1.0 +-0.028938539332378888,-5.356183145293882,1.0,1.0 +-0.016508964645687296,-4.548340352299883,1.0,1.0 +0.009097768123197625,5.161479803045537,1.0,1.0 +0.015822558631152894,4.167000786650532,1.0,1.0 +0.016074139373168705,4.128737223593708,0.0,1.0 +0.01881755148052644,-5.140772023569184,0.0,1.0 +0.031514234687143095,-5.3866389490460165,0.0,1.0 +0.051424146988216624,-5.94113840791305,1.0,1.0 +0.06448381546539439,4.42852165203961,0.0,1.0 +0.06805439316562678,-5.048860589504317,1.0,1.0 +0.07255834979568565,4.623454928520287,1.0,1.0 +0.08540663048166941,6.197512796795932,0.0,1.0 +0.09780208980717209,-5.283125333036916,1.0,1.0 +0.1099779141824202,5.638429631430488,0.0,1.0 +0.11274373046019637,5.866806794808441,0.0,1.0 +0.12040812706686488,-5.198708130762069,0.0,1.0 +0.13345956032882622,-5.232930334178703,1.0,1.0 +0.13639697629196412,4.820002699284326,0.0,1.0 +0.1385870650208929,4.985014484687833,1.0,1.0 +0.14853858979342682,4.887296852443581,0.0,1.0 +0.16620665451779892,4.495936135138755,0.0,1.0 +0.17790347013603913,5.2602925566660925,0.0,1.0 +0.1881277894088882,-5.09476630234631,1.0,1.0 +0.21464810444855065,-3.714810006757932,1.0,1.0 +0.23605345149390455,5.585852827187691,1.0,1.0 +0.24381072966063932,-5.0605663135579775,0.0,1.0 +0.25586780824545974,-4.581557282054896,0.0,1.0 +0.25617649894949057,5.398441395719616,1.0,1.0 +0.2737007358956096,5.676952958751765,1.0,1.0 +0.2802616760596779,-5.735969930328846,1.0,1.0 +0.2924027361995165,-5.484543247856299,1.0,1.0 +0.29535998823672305,4.725087735372873,1.0,1.0 +0.29717329394241343,-4.85772975018762,1.0,1.0 +0.3231257064079247,3.4183616107954276,0.0,1.0 +0.32612431506840434,4.725075399831854,1.0,1.0 +0.33120486959677375,5.824528727177462,0.0,1.0 +0.3408075747501007,4.601216093021244,0.0,1.0 +0.3504254984148303,-4.708339892155974,1.0,1.0 +0.3676631854169772,5.332495045425514,1.0,1.0 +0.4098516200128297,5.402045417180681,0.0,1.0 +0.4203670205361898,5.561551280891077,1.0,1.0 +0.44062732873971644,5.717513891357803,1.0,1.0 +0.45284506725527374,5.984607202034538,0.0,1.0 +0.4614233077581549,-4.962550176633502,0.0,1.0 +0.46968084597704385,4.809521363716689,0.0,1.0 +0.500212590582958,-4.551067675828268,1.0,1.0 +0.5019366711052324,5.440768128240536,0.0,1.0 +0.5058858715386014,-4.348832380790784,1.0,1.0 +0.5146534876407798,4.501420096319446,0.0,1.0 +0.5449995634140645,5.635860993122784,0.0,1.0 +0.5453576591294507,4.584237744739763,0.0,1.0 +0.5544874131722546,5.396544064960406,1.0,1.0 +0.5873998728665111,5.076409417962931,1.0,1.0 +0.5919509051822196,5.8834814968522915,0.0,1.0 +0.606690070459253,4.564328550871595,0.0,1.0 +0.6385743579575394,-4.614201418340332,0.0,1.0 +0.6452691114086302,-4.495037094008445,1.0,1.0 +0.6573860038793811,-4.875953777988546,0.0,1.0 +0.6703244774061137,5.397939778065244,1.0,1.0 +0.6711173683342766,-4.929135225493273,0.0,1.0 +0.6900433601950184,5.382186660183989,0.0,1.0 +0.6951005883132986,5.5037824801528785,0.0,1.0 +0.7093083798975663,-4.9372481352332525,0.0,1.0 +0.7207955868092206,-4.735527908525467,0.0,1.0 +0.7373428549140018,4.318541537416566,0.0,1.0 +0.7397887609653475,4.486569175630535,1.0,1.0 +0.7551594942854183,5.139455969196868,0.0,1.0 +0.7653484805043806,-5.268540517022556,1.0,1.0 +0.7736570806793042,5.260507856696316,0.0,1.0 +0.7763918288115752,5.91128146924536,0.0,1.0 +0.7868317559835774,-3.9906682090239047,1.0,1.0 +0.7910232730187956,5.244330173928111,0.0,1.0 +0.7938349835614771,4.783044324335842,1.0,1.0 +0.7986087436396074,-5.255436840802201,1.0,1.0 +0.8004225390625406,-3.8111063169496364,0.0,1.0 +0.801178264565368,5.808032518171338,1.0,1.0 +0.810561905205863,-4.7409463378324785,1.0,1.0 +0.8184624675826822,-4.597848878749012,0.0,1.0 +0.8245794089892393,-4.747570140202482,1.0,1.0 +0.8253448281312785,5.620141767356312,0.0,1.0 +0.8521898769257268,-4.638100499865979,0.0,1.0 +0.8545156692378937,5.730984271041741,0.0,1.0 +0.8597293106541191,5.740103003775716,0.0,1.0 +0.8710367424566989,4.910314133828872,1.0,1.0 +0.8728337754430067,-4.455300538881722,0.0,1.0 +0.8952618126963814,6.014787295341954,0.0,1.0 +0.897797394283288,-4.363319792029558,1.0,1.0 +0.8997835846665909,-4.420914848152041,0.0,1.0 +0.9117675570156032,-4.983406090237112,0.0,1.0 +0.9456773538020604,-4.964969452487701,1.0,1.0 +0.9521617897136698,5.400191024129325,1.0,1.0 +0.9599042762050742,-4.907734185127476,1.0,1.0 +0.9611842603063874,-4.092188786334362,1.0,1.0 +0.9751337061238918,-4.67262898316157,1.0,1.0 +0.9810106146483348,-4.928549904334893,1.0,1.0 +1.0328132844352709,5.9411327245067085,1.0,1.0 +1.0351107364622303,4.883144969486563,0.0,1.0 +1.065386171053694,5.425399493660022,1.0,1.0 +1.0980406404981409,-4.8403439137959605,1.0,1.0 +1.1053981590729416,-3.3521653854452813,1.0,1.0 +1.1456264286147952,5.444182788905185,0.0,1.0 +1.15137118615616,5.018502263183814,0.0,1.0 +1.1744921339077035,-4.519922925700288,1.0,1.0 +1.1758452365621874,-4.627998291489695,1.0,1.0 +1.1761787800498382,-4.9043667088149645,1.0,1.0 +1.180422992184904,5.95682489760981,0.0,1.0 +1.1820944459716074,-4.225644191521236,0.0,1.0 +1.2058147887547204,-4.395179543331367,1.0,1.0 +1.2118012635462199,5.0688525243778315,0.0,1.0 +1.2149045039226554,-3.6253418744600987,1.0,1.0 +1.2181137533710675,5.648187607071,0.0,1.0 +1.2219471562801418,5.180151716770457,0.0,1.0 +1.237453362938977,6.0169818884998865,1.0,1.0 +1.2411440630857022,-4.469655832967817,1.0,1.0 +1.2484354667762734,5.949317798399235,1.0,1.0 +1.2730753280852154,-4.321324437217479,1.0,1.0 +1.2794687233379705,6.570185212085812,0.0,1.0 +1.2875755362003742,-5.035707937720157,0.0,1.0 +1.334712691569032,5.22148160798987,0.0,1.0 +1.355734073221436,6.970986731197327,1.0,1.0 +1.3565480023359697,5.440253789804226,0.0,1.0 +1.3692980916711575,-5.074029697949895,1.0,1.0 +1.3740430082459234,5.7724919076794015,0.0,1.0 +1.3776370700283849,-3.9637756080539988,1.0,1.0 +1.3919636508684308,5.4366592894379435,1.0,1.0 +1.4104262628233144,4.561418364770259,0.0,1.0 +1.4273815001746115,-4.955933518954184,1.0,1.0 +1.4446117065252269,4.715121208732106,1.0,1.0 +1.4762692755925393,6.498636373265791,0.0,1.0 +1.4789484307081446,-5.3185836670520805,1.0,1.0 +1.5036885098451496,5.2124903454122045,1.0,1.0 +1.5052264067489842,5.7653554778512595,1.0,1.0 +1.51424717662608,4.872296644525411,0.0,1.0 +1.5202691115536497,5.700174638651805,0.0,1.0 +1.5272572445080943,5.156721021397257,1.0,1.0 +1.533306831258292,-4.3384512606152645,0.0,1.0 +1.547076662786215,-4.645885638517373,1.0,1.0 +1.5647102917013846,-4.5783744590384705,1.0,1.0 +1.569063790304833,6.031200004517075,1.0,1.0 +1.569717691972306,-5.077784314916101,1.0,1.0 +1.619961318591665,-4.340992506290826,1.0,1.0 +1.6258030797273655,5.902890317400927,0.0,1.0 +1.6276220801156747,-5.123690103893463,1.0,1.0 +1.633468615779945,4.721069042172505,0.0,1.0 +1.6507969401666873,-4.637797156607398,0.0,1.0 +1.6584777644519813,-5.549499538910526,1.0,1.0 +1.662881495564621,5.624968524142575,1.0,1.0 +1.6792532751457436,-4.178475740662026,0.0,1.0 +1.7110557683580812,4.799091711207779,0.0,1.0 +1.7377088567673233,-4.083409288014399,0.0,1.0 +1.7494742623550916,-3.896709781784439,1.0,1.0 +1.7688678212498905,5.671551756131129,0.0,1.0 +1.7711171686122222,6.139370644956613,1.0,1.0 +1.7747560166166068,-4.67380427600097,1.0,1.0 +1.789771073800651,-4.7874137187518535,1.0,1.0 +1.813181884524238,5.419926092698494,0.0,1.0 +1.8208855823090913,4.966967735575751,1.0,1.0 +1.822032461394687,-4.810078839637675,1.0,1.0 +1.8410084356035838,-4.513496974435072,1.0,1.0 +1.844640930984375,5.5510404464916965,1.0,1.0 +1.8487222773865017,5.707080718957194,1.0,1.0 +1.8503840886987666,-5.569874790239477,0.0,1.0 +1.8561669328710817,6.9486551176317635,1.0,1.0 +1.8606803680750845,-4.990095441240877,1.0,1.0 +1.876797403545016,5.798907008830137,0.0,1.0 +1.886810895533615,5.613525356052753,1.0,1.0 +1.8927685707290047,-4.851050183496648,0.0,1.0 +1.9033332012072952,5.746216590882069,1.0,1.0 +1.9080885955349585,5.013247198303399,0.0,1.0 +1.9311603557421373,5.452440444039877,0.0,1.0 +1.9356033639579495,6.468799944451986,1.0,1.0 +1.9587447966464495,5.2383831266646474,1.0,1.0 +1.972425054911576,5.493962025940305,1.0,1.0 +1.99465584480253,4.917423938303742,0.0,1.0 +2.0118149735354276,5.78636263649293,0.0,1.0 +2.015880723073235,-4.934526994639155,0.0,1.0 +2.069251865816727,5.587475144316825,1.0,1.0 +2.0953404629650674,5.935347454930321,0.0,1.0 +2.106820029101142,5.303683104843654,0.0,1.0 +2.1180567328041606,5.7091781298483735,1.0,1.0 +2.132763504066043,-4.399120417700606,0.0,1.0 +2.1389390471299334,-4.055089051098192,0.0,1.0 +2.150476511058071,5.703294089577573,1.0,1.0 +2.1643834995380606,6.05934805123601,0.0,1.0 +2.178620555253561,-4.7202537097375314,1.0,1.0 +2.1970568746496113,4.766101174424797,1.0,1.0 +2.2024339114806217,4.5816604676426,1.0,1.0 +2.2115947691367612,-5.375554195839961,1.0,1.0 +2.2287635411263063,-4.756149525998827,1.0,1.0 +2.264036120285886,-4.530563242829744,0.0,1.0 +2.2642384315677324,5.03446727477795,0.0,1.0 +2.264832081162318,4.259787552723599,1.0,1.0 +2.322518545590704,5.023760761455241,1.0,1.0 +2.3232764554579592,5.137875896652572,0.0,1.0 +2.3262250965497984,-4.645978875026305,1.0,1.0 +2.340032050905398,-3.918086405575668,1.0,1.0 +2.341582703345498,4.446646574686517,1.0,1.0 +2.3468586821884267,5.696825179709269,0.0,1.0 +2.3522793310626797,5.642669228876185,0.0,1.0 +2.355353990939866,5.227507583036366,1.0,1.0 +2.3689641025658927,5.545052213042716,1.0,1.0 +2.373139370977203,-4.7469363431618685,0.0,1.0 +2.376547799540959,-4.377178684386648,0.0,1.0 +2.382661559715462,-5.091213173111381,1.0,1.0 +2.3832945477199603,-5.148292760724642,1.0,1.0 +2.3913251311624757,4.3848656588632675,0.0,1.0 +2.402508342979983,5.535225043528204,0.0,1.0 +2.4069480629459337,5.033499947239215,0.0,1.0 +2.4153174400774002,-5.461361157899384,1.0,1.0 +2.4321038517363824,-5.158876798815275,0.0,1.0 +2.4322918585155815,5.601170331805681,1.0,1.0 +2.438126310568416,5.403670611999873,0.0,1.0 +2.445398843556558,-5.147963077819091,0.0,1.0 +2.4495953157999217,6.017745526691074,0.0,1.0 +2.4559224124726926,5.279023875024529,0.0,1.0 +2.479443315338828,-4.45661263587988,1.0,1.0 +2.489186341322691,5.373157843313025,1.0,1.0 +2.531245410138701,5.144605116040507,0.0,1.0 +2.5481617096713762,-4.51979956502411,1.0,1.0 +2.5699113755263525,5.845233241642143,0.0,1.0 +2.578185914055439,5.116582734010808,0.0,1.0 +2.584543953621388,-4.362075695792666,0.0,1.0 +2.616928644964686,-5.099954721929355,0.0,1.0 +2.6203799324204073,6.1587526207979435,1.0,1.0 +2.6369936493851345,-5.172368760557189,0.0,1.0 +2.6413814485497458,6.351153253452512,0.0,1.0 +2.642751506117486,-5.3797063579725135,1.0,1.0 +2.648788852659151,5.059495139653799,0.0,1.0 +2.657458223475115,-4.540509864674519,0.0,1.0 +2.6834914643031524,-4.166584844395599,0.0,1.0 +2.6933132235199997,6.0284060855696575,1.0,1.0 +2.7003718023048293,-4.056731341010442,0.0,1.0 +2.7024689044593524,-5.630082213273795,1.0,1.0 +2.7036428816253366,5.419312719158031,0.0,1.0 +2.704285838459497,-5.17440138276287,0.0,1.0 +2.7235714620155242,-4.308831609358866,1.0,1.0 +2.729191683979165,5.752429646327468,0.0,1.0 +2.7671433829434857,-4.665777317649513,0.0,1.0 +2.7730352908472513,4.913060848140563,1.0,1.0 +2.7746837696526674,-5.371023752966095,1.0,1.0 +2.7758904880675503,-5.1768467544167125,1.0,1.0 +2.779335236643668,-5.202327201980296,1.0,1.0 +2.7817198625355175,5.192806973484598,1.0,1.0 +2.793792198447356,-4.314053149389691,0.0,1.0 +2.7999289142620176,5.22179890195417,1.0,1.0 +2.8158152137145933,4.573721086943399,0.0,1.0 +2.817507766587351,4.542486671750694,0.0,1.0 +2.8192729602458346,5.50588277408102,0.0,1.0 +2.819459112971966,6.131566956481122,1.0,1.0 +2.8306924963257636,-4.798825259245022,1.0,1.0 +2.8380633285146732,4.809001385065422,0.0,1.0 +2.8463688459969987,-5.349869203106575,1.0,1.0 +2.855112476775208,5.455995598297169,1.0,1.0 +2.913902724663604,-4.095403647973735,1.0,1.0 +2.9160063829372254,-5.041551287968701,1.0,1.0 +2.917264466877617,4.844271165441273,0.0,1.0 +2.919837471007053,-5.593600930977051,0.0,1.0 +2.9213216196031038,5.145745436205885,1.0,1.0 +2.94032310062558,5.4899957982511705,0.0,1.0 +2.94303085200404,4.724040177494247,1.0,1.0 +2.9577887767158018,5.2040567215647915,1.0,1.0 diff --git a/mdn_results.png b/mdn_results.png new file mode 100644 index 0000000000000000000000000000000000000000..d0f236c91a803939676df64038b281528e8a95ca GIT binary patch literal 151902 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
e3>6c?DNSV{&*eBc(#4<80yq_6Ay*rj4$ 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 C>=J?ho`Uj|=Rg>Du2ba8B9p++Z24qqb*w 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 WwK8nJKmMB>RPpHPBMFD~ZvQ{EEw-Zo literal 0 HcmV?d00001 diff --git a/poetry.lock b/poetry.lock index 05ab6b6..81501e7 100644 --- a/poetry.lock +++ b/poetry.lock @@ -1,26 +1,36 @@ +# This file is automatically @generated by Poetry 1.8.3 and should not be changed by hand. + [[package]] name = "alabaster" version = "0.7.13" description = "A configurable sidebar-enabled Sphinx theme" -category = "dev" optional = false python-versions = ">=3.6" +files = [ + {file = "alabaster-0.7.13-py3-none-any.whl", hash = "sha256:1ee19aca801bbabb5ba3f5f258e4422dfa86f82f3e9cefb0859b283cdd7f62a3"}, + {file = "alabaster-0.7.13.tar.gz", hash = "sha256:a27a4a084d5e690e16e01e03ad2b2e552c61a65469419b907243193de1a84ae2"}, +] [[package]] name = "antlr4-python3-runtime" version = "4.9.3" description = "ANTLR 4.9.3 runtime for Python 3.7" -category = "main" optional = false python-versions = "*" +files = [ + {file = "antlr4-python3-runtime-4.9.3.tar.gz", hash = "sha256:f224469b4168294902bb1efa80a8bf7855f24c99aef99cbefc1bcd3cce77881b"}, +] [[package]] name = "anyio" version = "4.1.0" description = "High level compatibility layer for multiple asynchronous event loop implementations" -category = "dev" optional = false python-versions = ">=3.8" +files = [ + {file = "anyio-4.1.0-py3-none-any.whl", hash = "sha256:56a415fbc462291813a94528a779597226619c8e78af7de0507333f700011e5f"}, + {file = "anyio-4.1.0.tar.gz", hash = "sha256:5a0bec7085176715be77df87fc66d6c9d70626bd752fcc85f57cdbee5b3760da"}, +] [package.dependencies] exceptiongroup = {version = ">=1.0.2", markers = "python_version < \"3.11\""} @@ -36,17 +46,23 @@ trio = ["trio (>=0.23)"] name = "appnope" version = "0.1.3" description = "Disable App Nap on macOS >= 10.9" -category = "dev" 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" -category = "dev" 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 = "*" @@ -61,9 +77,31 @@ typing = ["mypy"] name = "argon2-cffi-bindings" version = "21.2.0" description = "Low-level CFFI bindings for Argon2" -category = "dev" 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" @@ -76,9 +114,12 @@ tests = ["pytest"] name = "arrow" version = "1.3.0" description = "Better dates & times for Python" -category = "dev" optional = false python-versions = ">=3.8" +files = [ + {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" @@ -86,15 +127,18 @@ 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.0.0,<2.0.0)", "pre-commit", "pytest", "pytest-cov", "pytest-mock", "pytz (==2021.1)", "simplejson (>=3.0.0,<4.0.0)"] +test = ["dateparser (==1.*)", "pre-commit", "pytest", "pytest-cov", "pytest-mock", "pytz (==2021.1)", "simplejson (==3.*)"] [[package]] name = "astroid" version = "3.0.2" description = "An abstract syntax tree for Python with inference support." -category = "dev" optional = false python-versions = ">=3.8.0" +files = [ + {file = "astroid-3.0.2-py3-none-any.whl", hash = "sha256:d6e62862355f60e716164082d6b4b041d38e2a8cf1c7cd953ded5108bac8ff5c"}, + {file = "astroid-3.0.2.tar.gz", hash = "sha256:4a61cf0a59097c7bb52689b0fd63717cd2a8a14dc9f1eee97b82d814881c8c91"}, +] [package.dependencies] typing-extensions = {version = ">=4.0.0", markers = "python_version < \"3.11\""} @@ -103,9 +147,12 @@ typing-extensions = {version = ">=4.0.0", markers = "python_version < \"3.11\""} name = "asttokens" version = "2.4.1" description = "Annotate AST trees with source code positions" -category = "dev" optional = false python-versions = "*" +files = [ + {file = "asttokens-2.4.1-py2.py3-none-any.whl", hash = "sha256:051ed49c3dcae8913ea7cd08e46a606dba30b79993209636c4875bc1d637bc24"}, + {file = "asttokens-2.4.1.tar.gz", hash = "sha256:b03869718ba9a6eb027e134bfdf69f38a236d681c83c160d510768af11254ba0"}, +] [package.dependencies] six = ">=1.12.0" @@ -118,9 +165,12 @@ test = ["astroid (>=1,<2)", "astroid (>=2,<4)", "pytest"] name = "async-lru" version = "2.0.4" description = "Simple LRU cache for asyncio" -category = "dev" optional = false python-versions = ">=3.8" +files = [ + {file = "async-lru-2.0.4.tar.gz", hash = "sha256:b8a59a5df60805ff63220b2a0c5b5393da5521b113cd5465a44eb037d81a5627"}, + {file = "async_lru-2.0.4-py3-none-any.whl", hash = "sha256:ff02944ce3c288c5be660c42dbcca0742b32c3b279d6dceda655190240b99224"}, +] [package.dependencies] typing-extensions = {version = ">=4.0.0", markers = "python_version < \"3.11\""} @@ -129,17 +179,22 @@ typing-extensions = {version = ">=4.0.0", markers = "python_version < \"3.11\""} name = "atomicwrites" version = "1.4.1" description = "Atomic file writes." -category = "dev" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" +files = [ + {file = "atomicwrites-1.4.1.tar.gz", hash = "sha256:81b2c9071a49367a7f770170e5eec8cb66567cfbbc8c73d20ce5ca4a8d71cf11"}, +] [[package]] name = "attrs" version = "23.1.0" description = "Classes Without Boilerplate" -category = "dev" 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)"] @@ -152,9 +207,12 @@ tests-no-zope = ["cloudpickle", "hypothesis", "mypy (>=1.1.1)", "pympler", "pyte name = "babel" version = "2.14.0" description = "Internationalization utilities" -category = "dev" optional = false python-versions = ">=3.7" +files = [ + {file = "Babel-2.14.0-py3-none-any.whl", hash = "sha256:efb1a25b7118e67ce3a259bed20545c29cb68be8ad2c784c83689981b7a57287"}, + {file = "Babel-2.14.0.tar.gz", hash = "sha256:6919867db036398ba21eb5c7a0f6b28ab8cbc3ae7a73a44ebe34ae74a4e7d363"}, +] [package.extras] dev = ["freezegun (>=1.0,<2.0)", "pytest (>=6.0)", "pytest-cov"] @@ -163,9 +221,12 @@ dev = ["freezegun (>=1.0,<2.0)", "pytest (>=6.0)", "pytest-cov"] name = "beautifulsoup4" version = "4.12.2" description = "Screen-scraping library" -category = "dev" 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" @@ -178,9 +239,35 @@ lxml = ["lxml"] name = "black" version = "23.1.0" description = "The uncompromising code formatter." -category = "main" optional = false python-versions = ">=3.7" +files = [ + {file = "black-23.1.0-cp310-cp310-macosx_10_16_arm64.whl", hash = "sha256:b6a92a41ee34b883b359998f0c8e6eb8e99803aa8bf3123bf2b2e6fec505a221"}, + {file = "black-23.1.0-cp310-cp310-macosx_10_16_universal2.whl", hash = "sha256:57c18c5165c1dbe291d5306e53fb3988122890e57bd9b3dcb75f967f13411a26"}, + {file = "black-23.1.0-cp310-cp310-macosx_10_16_x86_64.whl", hash = "sha256:9880d7d419bb7e709b37e28deb5e68a49227713b623c72b2b931028ea65f619b"}, + {file = "black-23.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e6663f91b6feca5d06f2ccd49a10f254f9298cc1f7f49c46e498a0771b507104"}, + {file = "black-23.1.0-cp310-cp310-win_amd64.whl", hash = "sha256:9afd3f493666a0cd8f8df9a0200c6359ac53940cbde049dcb1a7eb6ee2dd7074"}, + {file = "black-23.1.0-cp311-cp311-macosx_10_16_arm64.whl", hash = "sha256:bfffba28dc52a58f04492181392ee380e95262af14ee01d4bc7bb1b1c6ca8d27"}, + {file = "black-23.1.0-cp311-cp311-macosx_10_16_universal2.whl", hash = "sha256:c1c476bc7b7d021321e7d93dc2cbd78ce103b84d5a4cf97ed535fbc0d6660648"}, + {file = "black-23.1.0-cp311-cp311-macosx_10_16_x86_64.whl", hash = "sha256:382998821f58e5c8238d3166c492139573325287820963d2f7de4d518bd76958"}, + {file = "black-23.1.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2bf649fda611c8550ca9d7592b69f0637218c2369b7744694c5e4902873b2f3a"}, + {file = "black-23.1.0-cp311-cp311-win_amd64.whl", hash = "sha256:121ca7f10b4a01fd99951234abdbd97728e1240be89fde18480ffac16503d481"}, + {file = "black-23.1.0-cp37-cp37m-macosx_10_16_x86_64.whl", hash = "sha256:a8471939da5e824b891b25751955be52ee7f8a30a916d570a5ba8e0f2eb2ecad"}, + {file = "black-23.1.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8178318cb74f98bc571eef19068f6ab5613b3e59d4f47771582f04e175570ed8"}, + {file = "black-23.1.0-cp37-cp37m-win_amd64.whl", hash = "sha256:a436e7881d33acaf2536c46a454bb964a50eff59b21b51c6ccf5a40601fbef24"}, + {file = "black-23.1.0-cp38-cp38-macosx_10_16_arm64.whl", hash = "sha256:a59db0a2094d2259c554676403fa2fac3473ccf1354c1c63eccf7ae65aac8ab6"}, + {file = "black-23.1.0-cp38-cp38-macosx_10_16_universal2.whl", hash = "sha256:0052dba51dec07ed029ed61b18183942043e00008ec65d5028814afaab9a22fd"}, + {file = "black-23.1.0-cp38-cp38-macosx_10_16_x86_64.whl", hash = "sha256:49f7b39e30f326a34b5c9a4213213a6b221d7ae9d58ec70df1c4a307cf2a1580"}, + {file = "black-23.1.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:162e37d49e93bd6eb6f1afc3e17a3d23a823042530c37c3c42eeeaf026f38468"}, + {file = "black-23.1.0-cp38-cp38-win_amd64.whl", hash = "sha256:8b70eb40a78dfac24842458476135f9b99ab952dd3f2dab738c1881a9b38b753"}, + {file = "black-23.1.0-cp39-cp39-macosx_10_16_arm64.whl", hash = "sha256:a29650759a6a0944e7cca036674655c2f0f63806ddecc45ed40b7b8aa314b651"}, + {file = "black-23.1.0-cp39-cp39-macosx_10_16_universal2.whl", hash = "sha256:bb460c8561c8c1bec7824ecbc3ce085eb50005883a6203dcfb0122e95797ee06"}, + {file = "black-23.1.0-cp39-cp39-macosx_10_16_x86_64.whl", hash = "sha256:c91dfc2c2a4e50df0026f88d2215e166616e0c80e86004d0003ece0488db2739"}, + {file = "black-23.1.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2a951cc83ab535d248c89f300eccbd625e80ab880fbcfb5ac8afb5f01a258ac9"}, + {file = "black-23.1.0-cp39-cp39-win_amd64.whl", hash = "sha256:0680d4380db3719ebcfb2613f34e86c8e6d15ffeabcf8ec59355c5e7b85bb555"}, + {file = "black-23.1.0-py3-none-any.whl", hash = "sha256:7a0f701d314cfa0896b9001df70a530eb2472babb76086344e688829efd97d32"}, + {file = "black-23.1.0.tar.gz", hash = "sha256:b0bd97bea8903f5a2ba7219257a44e3f1f9d00073d6cc1add68f0beec69692ac"}, +] [package.dependencies] click = ">=8.0.0" @@ -200,9 +287,12 @@ uvloop = ["uvloop (>=0.15.2)"] name = "bleach" version = "6.1.0" description = "An easy safelist-based HTML-sanitizing tool." -category = "dev" optional = false python-versions = ">=3.8" +files = [ + {file = "bleach-6.1.0-py3-none-any.whl", hash = "sha256:3225f354cfc436b9789c66c4ee030194bee0568fbf9cbdad3bc8b5c26c5f12b6"}, + {file = "bleach-6.1.0.tar.gz", hash = "sha256:0a31f1837963c41d46bbf1331b8778e1308ea0791db03cc4e7357b97cf42a8fe"}, +] [package.dependencies] six = ">=1.9.0" @@ -215,17 +305,73 @@ css = ["tinycss2 (>=1.1.0,<1.3)"] name = "certifi" version = "2023.11.17" description = "Python package for providing Mozilla's CA Bundle." -category = "dev" optional = false python-versions = ">=3.6" +files = [ + {file = "certifi-2023.11.17-py3-none-any.whl", hash = "sha256:e036ab49d5b79556f99cfc2d9320b34cfbe5be05c5871b51de9329f0603b0474"}, + {file = "certifi-2023.11.17.tar.gz", hash = "sha256:9b469f3a900bf28dc19b8cfbf8019bf47f7fdd1a65a1d4ffb98fc14166beb4d1"}, +] [[package]] name = "cffi" version = "1.16.0" description = "Foreign Function Interface for Python calling C code." -category = "dev" optional = false python-versions = ">=3.8" +files = [ + {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] pycparser = "*" @@ -234,17 +380,111 @@ pycparser = "*" name = "charset-normalizer" version = "3.3.2" description = "The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet." -category = "dev" optional = false python-versions = ">=3.7.0" +files = [ + {file = "charset-normalizer-3.3.2.tar.gz", hash = "sha256:f30c3cb33b24454a82faecaf01b19c18562b1e89558fb6c56de4d9118a032fd5"}, + {file = "charset_normalizer-3.3.2-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:25baf083bf6f6b341f4121c2f3c548875ee6f5339300e08be3f2b2ba1721cdd3"}, + {file = "charset_normalizer-3.3.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:06435b539f889b1f6f4ac1758871aae42dc3a8c0e24ac9e60c2384973ad73027"}, + {file = "charset_normalizer-3.3.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9063e24fdb1e498ab71cb7419e24622516c4a04476b17a2dab57e8baa30d6e03"}, + {file = "charset_normalizer-3.3.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6897af51655e3691ff853668779c7bad41579facacf5fd7253b0133308cf000d"}, + {file = "charset_normalizer-3.3.2-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1d3193f4a680c64b4b6a9115943538edb896edc190f0b222e73761716519268e"}, + {file = "charset_normalizer-3.3.2-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:cd70574b12bb8a4d2aaa0094515df2463cb429d8536cfb6c7ce983246983e5a6"}, + {file = "charset_normalizer-3.3.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8465322196c8b4d7ab6d1e049e4c5cb460d0394da4a27d23cc242fbf0034b6b5"}, + {file = "charset_normalizer-3.3.2-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a9a8e9031d613fd2009c182b69c7b2c1ef8239a0efb1df3f7c8da66d5dd3d537"}, + {file = "charset_normalizer-3.3.2-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:beb58fe5cdb101e3a055192ac291b7a21e3b7ef4f67fa1d74e331a7f2124341c"}, + {file = "charset_normalizer-3.3.2-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:e06ed3eb3218bc64786f7db41917d4e686cc4856944f53d5bdf83a6884432e12"}, + {file = "charset_normalizer-3.3.2-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:2e81c7b9c8979ce92ed306c249d46894776a909505d8f5a4ba55b14206e3222f"}, + {file = "charset_normalizer-3.3.2-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:572c3763a264ba47b3cf708a44ce965d98555f618ca42c926a9c1616d8f34269"}, + {file = "charset_normalizer-3.3.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:fd1abc0d89e30cc4e02e4064dc67fcc51bd941eb395c502aac3ec19fab46b519"}, + {file = "charset_normalizer-3.3.2-cp310-cp310-win32.whl", hash = "sha256:3d47fa203a7bd9c5b6cee4736ee84ca03b8ef23193c0d1ca99b5089f72645c73"}, + {file = "charset_normalizer-3.3.2-cp310-cp310-win_amd64.whl", hash = "sha256:10955842570876604d404661fbccbc9c7e684caf432c09c715ec38fbae45ae09"}, + {file = "charset_normalizer-3.3.2-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:802fe99cca7457642125a8a88a084cef28ff0cf9407060f7b93dca5aa25480db"}, + {file = "charset_normalizer-3.3.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:573f6eac48f4769d667c4442081b1794f52919e7edada77495aaed9236d13a96"}, + {file = "charset_normalizer-3.3.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:549a3a73da901d5bc3ce8d24e0600d1fa85524c10287f6004fbab87672bf3e1e"}, + {file = "charset_normalizer-3.3.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f27273b60488abe721a075bcca6d7f3964f9f6f067c8c4c605743023d7d3944f"}, + {file = "charset_normalizer-3.3.2-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1ceae2f17a9c33cb48e3263960dc5fc8005351ee19db217e9b1bb15d28c02574"}, + {file = "charset_normalizer-3.3.2-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:65f6f63034100ead094b8744b3b97965785388f308a64cf8d7c34f2f2e5be0c4"}, + {file = "charset_normalizer-3.3.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:753f10e867343b4511128c6ed8c82f7bec3bd026875576dfd88483c5c73b2fd8"}, + {file = "charset_normalizer-3.3.2-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:4a78b2b446bd7c934f5dcedc588903fb2f5eec172f3d29e52a9096a43722adfc"}, + {file = "charset_normalizer-3.3.2-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:e537484df0d8f426ce2afb2d0f8e1c3d0b114b83f8850e5f2fbea0e797bd82ae"}, + {file = "charset_normalizer-3.3.2-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:eb6904c354526e758fda7167b33005998fb68c46fbc10e013ca97f21ca5c8887"}, + {file = "charset_normalizer-3.3.2-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:deb6be0ac38ece9ba87dea880e438f25ca3eddfac8b002a2ec3d9183a454e8ae"}, + {file = "charset_normalizer-3.3.2-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:4ab2fe47fae9e0f9dee8c04187ce5d09f48eabe611be8259444906793ab7cbce"}, + {file = "charset_normalizer-3.3.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:80402cd6ee291dcb72644d6eac93785fe2c8b9cb30893c1af5b8fdd753b9d40f"}, + {file = "charset_normalizer-3.3.2-cp311-cp311-win32.whl", hash = "sha256:7cd13a2e3ddeed6913a65e66e94b51d80a041145a026c27e6bb76c31a853c6ab"}, + {file = "charset_normalizer-3.3.2-cp311-cp311-win_amd64.whl", hash = "sha256:663946639d296df6a2bb2aa51b60a2454ca1cb29835324c640dafb5ff2131a77"}, + {file = "charset_normalizer-3.3.2-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:0b2b64d2bb6d3fb9112bafa732def486049e63de9618b5843bcdd081d8144cd8"}, + {file = "charset_normalizer-3.3.2-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:ddbb2551d7e0102e7252db79ba445cdab71b26640817ab1e3e3648dad515003b"}, + {file = "charset_normalizer-3.3.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:55086ee1064215781fff39a1af09518bc9255b50d6333f2e4c74ca09fac6a8f6"}, + {file = "charset_normalizer-3.3.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8f4a014bc36d3c57402e2977dada34f9c12300af536839dc38c0beab8878f38a"}, + {file = "charset_normalizer-3.3.2-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:a10af20b82360ab00827f916a6058451b723b4e65030c5a18577c8b2de5b3389"}, + {file = "charset_normalizer-3.3.2-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8d756e44e94489e49571086ef83b2bb8ce311e730092d2c34ca8f7d925cb20aa"}, + {file = "charset_normalizer-3.3.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:90d558489962fd4918143277a773316e56c72da56ec7aa3dc3dbbe20fdfed15b"}, + {file = "charset_normalizer-3.3.2-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6ac7ffc7ad6d040517be39eb591cac5ff87416c2537df6ba3cba3bae290c0fed"}, + {file = "charset_normalizer-3.3.2-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:7ed9e526742851e8d5cc9e6cf41427dfc6068d4f5a3bb03659444b4cabf6bc26"}, + {file = "charset_normalizer-3.3.2-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:8bdb58ff7ba23002a4c5808d608e4e6c687175724f54a5dade5fa8c67b604e4d"}, + {file = "charset_normalizer-3.3.2-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:6b3251890fff30ee142c44144871185dbe13b11bab478a88887a639655be1068"}, + {file = "charset_normalizer-3.3.2-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:b4a23f61ce87adf89be746c8a8974fe1c823c891d8f86eb218bb957c924bb143"}, + {file = "charset_normalizer-3.3.2-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:efcb3f6676480691518c177e3b465bcddf57cea040302f9f4e6e191af91174d4"}, + {file = "charset_normalizer-3.3.2-cp312-cp312-win32.whl", hash = "sha256:d965bba47ddeec8cd560687584e88cf699fd28f192ceb452d1d7ee807c5597b7"}, + {file = "charset_normalizer-3.3.2-cp312-cp312-win_amd64.whl", hash = "sha256:96b02a3dc4381e5494fad39be677abcb5e6634bf7b4fa83a6dd3112607547001"}, + {file = "charset_normalizer-3.3.2-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:95f2a5796329323b8f0512e09dbb7a1860c46a39da62ecb2324f116fa8fdc85c"}, + {file = "charset_normalizer-3.3.2-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c002b4ffc0be611f0d9da932eb0f704fe2602a9a949d1f738e4c34c75b0863d5"}, + {file = "charset_normalizer-3.3.2-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:a981a536974bbc7a512cf44ed14938cf01030a99e9b3a06dd59578882f06f985"}, + {file = "charset_normalizer-3.3.2-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:3287761bc4ee9e33561a7e058c72ac0938c4f57fe49a09eae428fd88aafe7bb6"}, + {file = "charset_normalizer-3.3.2-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:42cb296636fcc8b0644486d15c12376cb9fa75443e00fb25de0b8602e64c1714"}, + {file = "charset_normalizer-3.3.2-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:0a55554a2fa0d408816b3b5cedf0045f4b8e1a6065aec45849de2d6f3f8e9786"}, + {file = "charset_normalizer-3.3.2-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:c083af607d2515612056a31f0a8d9e0fcb5876b7bfc0abad3ecd275bc4ebc2d5"}, + {file = "charset_normalizer-3.3.2-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:87d1351268731db79e0f8e745d92493ee2841c974128ef629dc518b937d9194c"}, + {file = "charset_normalizer-3.3.2-cp37-cp37m-musllinux_1_1_ppc64le.whl", hash = "sha256:bd8f7df7d12c2db9fab40bdd87a7c09b1530128315d047a086fa3ae3435cb3a8"}, + {file = "charset_normalizer-3.3.2-cp37-cp37m-musllinux_1_1_s390x.whl", hash = "sha256:c180f51afb394e165eafe4ac2936a14bee3eb10debc9d9e4db8958fe36afe711"}, + {file = "charset_normalizer-3.3.2-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:8c622a5fe39a48f78944a87d4fb8a53ee07344641b0562c540d840748571b811"}, + {file = "charset_normalizer-3.3.2-cp37-cp37m-win32.whl", hash = "sha256:db364eca23f876da6f9e16c9da0df51aa4f104a972735574842618b8c6d999d4"}, + {file = "charset_normalizer-3.3.2-cp37-cp37m-win_amd64.whl", hash = "sha256:86216b5cee4b06df986d214f664305142d9c76df9b6512be2738aa72a2048f99"}, + {file = "charset_normalizer-3.3.2-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:6463effa3186ea09411d50efc7d85360b38d5f09b870c48e4600f63af490e56a"}, + {file = "charset_normalizer-3.3.2-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:6c4caeef8fa63d06bd437cd4bdcf3ffefe6738fb1b25951440d80dc7df8c03ac"}, + {file = "charset_normalizer-3.3.2-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:37e55c8e51c236f95b033f6fb391d7d7970ba5fe7ff453dad675e88cf303377a"}, + {file = "charset_normalizer-3.3.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:fb69256e180cb6c8a894fee62b3afebae785babc1ee98b81cdf68bbca1987f33"}, + {file = "charset_normalizer-3.3.2-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ae5f4161f18c61806f411a13b0310bea87f987c7d2ecdbdaad0e94eb2e404238"}, + {file = "charset_normalizer-3.3.2-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b2b0a0c0517616b6869869f8c581d4eb2dd83a4d79e0ebcb7d373ef9956aeb0a"}, + {file = "charset_normalizer-3.3.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:45485e01ff4d3630ec0d9617310448a8702f70e9c01906b0d0118bdf9d124cf2"}, + {file = "charset_normalizer-3.3.2-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:eb00ed941194665c332bf8e078baf037d6c35d7c4f3102ea2d4f16ca94a26dc8"}, + {file = "charset_normalizer-3.3.2-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:2127566c664442652f024c837091890cb1942c30937add288223dc895793f898"}, + {file = "charset_normalizer-3.3.2-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:a50aebfa173e157099939b17f18600f72f84eed3049e743b68ad15bd69b6bf99"}, + {file = "charset_normalizer-3.3.2-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:4d0d1650369165a14e14e1e47b372cfcb31d6ab44e6e33cb2d4e57265290044d"}, + {file = "charset_normalizer-3.3.2-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:923c0c831b7cfcb071580d3f46c4baf50f174be571576556269530f4bbd79d04"}, + {file = "charset_normalizer-3.3.2-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:06a81e93cd441c56a9b65d8e1d043daeb97a3d0856d177d5c90ba85acb3db087"}, + {file = "charset_normalizer-3.3.2-cp38-cp38-win32.whl", hash = "sha256:6ef1d82a3af9d3eecdba2321dc1b3c238245d890843e040e41e470ffa64c3e25"}, + {file = "charset_normalizer-3.3.2-cp38-cp38-win_amd64.whl", hash = "sha256:eb8821e09e916165e160797a6c17edda0679379a4be5c716c260e836e122f54b"}, + {file = "charset_normalizer-3.3.2-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:c235ebd9baae02f1b77bcea61bce332cb4331dc3617d254df3323aa01ab47bd4"}, + {file = "charset_normalizer-3.3.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:5b4c145409bef602a690e7cfad0a15a55c13320ff7a3ad7ca59c13bb8ba4d45d"}, + {file = "charset_normalizer-3.3.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:68d1f8a9e9e37c1223b656399be5d6b448dea850bed7d0f87a8311f1ff3dabb0"}, + {file = "charset_normalizer-3.3.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:22afcb9f253dac0696b5a4be4a1c0f8762f8239e21b99680099abd9b2b1b2269"}, + {file = "charset_normalizer-3.3.2-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:e27ad930a842b4c5eb8ac0016b0a54f5aebbe679340c26101df33424142c143c"}, + {file = "charset_normalizer-3.3.2-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:1f79682fbe303db92bc2b1136016a38a42e835d932bab5b3b1bfcfbf0640e519"}, + {file = "charset_normalizer-3.3.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b261ccdec7821281dade748d088bb6e9b69e6d15b30652b74cbbac25e280b796"}, + {file = "charset_normalizer-3.3.2-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:122c7fa62b130ed55f8f285bfd56d5f4b4a5b503609d181f9ad85e55c89f4185"}, + {file = "charset_normalizer-3.3.2-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:d0eccceffcb53201b5bfebb52600a5fb483a20b61da9dbc885f8b103cbe7598c"}, + {file = "charset_normalizer-3.3.2-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:9f96df6923e21816da7e0ad3fd47dd8f94b2a5ce594e00677c0013018b813458"}, + {file = "charset_normalizer-3.3.2-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:7f04c839ed0b6b98b1a7501a002144b76c18fb1c1850c8b98d458ac269e26ed2"}, + {file = "charset_normalizer-3.3.2-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:34d1c8da1e78d2e001f363791c98a272bb734000fcef47a491c1e3b0505657a8"}, + {file = "charset_normalizer-3.3.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:ff8fa367d09b717b2a17a052544193ad76cd49979c805768879cb63d9ca50561"}, + {file = "charset_normalizer-3.3.2-cp39-cp39-win32.whl", hash = "sha256:aed38f6e4fb3f5d6bf81bfa990a07806be9d83cf7bacef998ab1a9bd660a581f"}, + {file = "charset_normalizer-3.3.2-cp39-cp39-win_amd64.whl", hash = "sha256:b01b88d45a6fcb69667cd6d2f7a9aeb4bf53760d7fc536bf679ec94fe9f3ff3d"}, + {file = "charset_normalizer-3.3.2-py3-none-any.whl", hash = "sha256:3e4d1f6587322d2788836a99c69062fbb091331ec940e02d12d179c1d53e25fc"}, +] [[package]] name = "click" version = "8.1.7" description = "Composable command line interface toolkit" -category = "main" 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\""} @@ -253,17 +493,23 @@ colorama = {version = "*", markers = "platform_system == \"Windows\""} name = "colorama" version = "0.4.6" description = "Cross-platform colored terminal text." -category = "main" 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 = "comm" version = "0.2.0" description = "Jupyter Python Comm implementation, for usage in ipykernel, xeus-python etc." -category = "dev" optional = false python-versions = ">=3.8" +files = [ + {file = "comm-0.2.0-py3-none-any.whl", hash = "sha256:2da8d9ebb8dd7bfc247adaff99f24dce705638a8042b85cb995066793e391001"}, + {file = "comm-0.2.0.tar.gz", hash = "sha256:a517ea2ca28931c7007a7a99c562a0fa5883cfb48963140cf642c41c948498be"}, +] [package.dependencies] traitlets = ">=4" @@ -275,27 +521,125 @@ test = ["pytest"] name = "contourpy" version = "1.2.0" description = "Python library for calculating contours of 2D quadrilateral grids" -category = "dev" optional = false python-versions = ">=3.9" - -[package.dependencies] -numpy = ">=1.20,<2.0" - -[package.extras] -bokeh = ["bokeh", "selenium"] -docs = ["furo", "sphinx (>=7.2)", "sphinx-copybutton"] -mypy = ["contourpy[bokeh,docs]", "docutils-stubs", "mypy (==1.6.1)", "types-Pillow"] -test = ["Pillow", "contourpy[test-no-images]", "matplotlib"] -test-no-images = ["pytest", "pytest-cov", "pytest-xdist", "wurlitzer"] - +files = [ + {file = "contourpy-1.2.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:0274c1cb63625972c0c007ab14dd9ba9e199c36ae1a231ce45d725cbcbfd10a8"}, + {file = "contourpy-1.2.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:ab459a1cbbf18e8698399c595a01f6dcc5c138220ca3ea9e7e6126232d102bb4"}, + {file = "contourpy-1.2.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6fdd887f17c2f4572ce548461e4f96396681212d858cae7bd52ba3310bc6f00f"}, + {file = "contourpy-1.2.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:5d16edfc3fc09968e09ddffada434b3bf989bf4911535e04eada58469873e28e"}, + {file = "contourpy-1.2.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:1c203f617abc0dde5792beb586f827021069fb6d403d7f4d5c2b543d87edceb9"}, + {file = "contourpy-1.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b69303ceb2e4d4f146bf82fda78891ef7bcd80c41bf16bfca3d0d7eb545448aa"}, + {file = "contourpy-1.2.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:884c3f9d42d7218304bc74a8a7693d172685c84bd7ab2bab1ee567b769696df9"}, + {file = "contourpy-1.2.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:4a1b1208102be6e851f20066bf0e7a96b7d48a07c9b0cfe6d0d4545c2f6cadab"}, + {file = "contourpy-1.2.0-cp310-cp310-win32.whl", hash = "sha256:34b9071c040d6fe45d9826cbbe3727d20d83f1b6110d219b83eb0e2a01d79488"}, + {file = "contourpy-1.2.0-cp310-cp310-win_amd64.whl", hash = "sha256:bd2f1ae63998da104f16a8b788f685e55d65760cd1929518fd94cd682bf03e41"}, + {file = "contourpy-1.2.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:dd10c26b4eadae44783c45ad6655220426f971c61d9b239e6f7b16d5cdaaa727"}, + {file = "contourpy-1.2.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:5c6b28956b7b232ae801406e529ad7b350d3f09a4fde958dfdf3c0520cdde0dd"}, + {file = "contourpy-1.2.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ebeac59e9e1eb4b84940d076d9f9a6cec0064e241818bcb6e32124cc5c3e377a"}, + {file = "contourpy-1.2.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:139d8d2e1c1dd52d78682f505e980f592ba53c9f73bd6be102233e358b401063"}, + {file = "contourpy-1.2.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:1e9dc350fb4c58adc64df3e0703ab076f60aac06e67d48b3848c23647ae4310e"}, + {file = "contourpy-1.2.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:18fc2b4ed8e4a8fe849d18dce4bd3c7ea637758c6343a1f2bae1e9bd4c9f4686"}, + {file = "contourpy-1.2.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:16a7380e943a6d52472096cb7ad5264ecee36ed60888e2a3d3814991a0107286"}, + {file = "contourpy-1.2.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:8d8faf05be5ec8e02a4d86f616fc2a0322ff4a4ce26c0f09d9f7fb5330a35c95"}, + {file = "contourpy-1.2.0-cp311-cp311-win32.whl", hash = "sha256:67b7f17679fa62ec82b7e3e611c43a016b887bd64fb933b3ae8638583006c6d6"}, + {file = "contourpy-1.2.0-cp311-cp311-win_amd64.whl", hash = "sha256:99ad97258985328b4f207a5e777c1b44a83bfe7cf1f87b99f9c11d4ee477c4de"}, + {file = "contourpy-1.2.0-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:575bcaf957a25d1194903a10bc9f316c136c19f24e0985a2b9b5608bdf5dbfe0"}, + {file = "contourpy-1.2.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:9e6c93b5b2dbcedad20a2f18ec22cae47da0d705d454308063421a3b290d9ea4"}, + {file = "contourpy-1.2.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:464b423bc2a009088f19bdf1f232299e8b6917963e2b7e1d277da5041f33a779"}, + {file = "contourpy-1.2.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:68ce4788b7d93e47f84edd3f1f95acdcd142ae60bc0e5493bfd120683d2d4316"}, + {file = "contourpy-1.2.0-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:3d7d1f8871998cdff5d2ff6a087e5e1780139abe2838e85b0b46b7ae6cc25399"}, + {file = "contourpy-1.2.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6e739530c662a8d6d42c37c2ed52a6f0932c2d4a3e8c1f90692ad0ce1274abe0"}, + {file = "contourpy-1.2.0-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:247b9d16535acaa766d03037d8e8fb20866d054d3c7fbf6fd1f993f11fc60ca0"}, + {file = "contourpy-1.2.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:461e3ae84cd90b30f8d533f07d87c00379644205b1d33a5ea03381edc4b69431"}, + {file = "contourpy-1.2.0-cp312-cp312-win32.whl", hash = "sha256:1c2559d6cffc94890b0529ea7eeecc20d6fadc1539273aa27faf503eb4656d8f"}, + {file = "contourpy-1.2.0-cp312-cp312-win_amd64.whl", hash = "sha256:491b1917afdd8638a05b611a56d46587d5a632cabead889a5440f7c638bc6ed9"}, + {file = "contourpy-1.2.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:5fd1810973a375ca0e097dee059c407913ba35723b111df75671a1976efa04bc"}, + {file = "contourpy-1.2.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:999c71939aad2780f003979b25ac5b8f2df651dac7b38fb8ce6c46ba5abe6ae9"}, + {file = "contourpy-1.2.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b7caf9b241464c404613512d5594a6e2ff0cc9cb5615c9475cc1d9b514218ae8"}, + {file = "contourpy-1.2.0-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:266270c6f6608340f6c9836a0fb9b367be61dde0c9a9a18d5ece97774105ff3e"}, + {file = "contourpy-1.2.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:dbd50d0a0539ae2e96e537553aff6d02c10ed165ef40c65b0e27e744a0f10af8"}, + {file = "contourpy-1.2.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:11f8d2554e52f459918f7b8e6aa20ec2a3bce35ce95c1f0ef4ba36fbda306df5"}, + {file = "contourpy-1.2.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:ce96dd400486e80ac7d195b2d800b03e3e6a787e2a522bfb83755938465a819e"}, + {file = "contourpy-1.2.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:6d3364b999c62f539cd403f8123ae426da946e142312a514162adb2addd8d808"}, + {file = "contourpy-1.2.0-cp39-cp39-win32.whl", hash = "sha256:1c88dfb9e0c77612febebb6ac69d44a8d81e3dc60f993215425b62c1161353f4"}, + {file = "contourpy-1.2.0-cp39-cp39-win_amd64.whl", hash = "sha256:78e6ad33cf2e2e80c5dfaaa0beec3d61face0fb650557100ee36db808bfa6843"}, + {file = "contourpy-1.2.0-pp39-pypy39_pp73-macosx_10_9_x86_64.whl", hash = "sha256:be16975d94c320432657ad2402f6760990cb640c161ae6da1363051805fa8108"}, + {file = "contourpy-1.2.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b95a225d4948b26a28c08307a60ac00fb8671b14f2047fc5476613252a129776"}, + {file = "contourpy-1.2.0-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:0d7e03c0f9a4f90dc18d4e77e9ef4ec7b7bbb437f7f675be8e530d65ae6ef956"}, + {file = "contourpy-1.2.0.tar.gz", hash = "sha256:171f311cb758de7da13fc53af221ae47a5877be5a0843a9fe150818c51ed276a"}, +] + +[package.dependencies] +numpy = ">=1.20,<2.0" + +[package.extras] +bokeh = ["bokeh", "selenium"] +docs = ["furo", "sphinx (>=7.2)", "sphinx-copybutton"] +mypy = ["contourpy[bokeh,docs]", "docutils-stubs", "mypy (==1.6.1)", "types-Pillow"] +test = ["Pillow", "contourpy[test-no-images]", "matplotlib"] +test-no-images = ["pytest", "pytest-cov", "pytest-xdist", "wurlitzer"] + [[package]] name = "coverage" version = "7.3.2" description = "Code coverage measurement for Python" -category = "dev" optional = false python-versions = ">=3.8" +files = [ + {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.extras] toml = ["tomli"] @@ -304,9 +648,12 @@ toml = ["tomli"] name = "cycler" version = "0.12.1" description = "Composable style cycles" -category = "dev" optional = false python-versions = ">=3.8" +files = [ + {file = "cycler-0.12.1-py3-none-any.whl", hash = "sha256:85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30"}, + {file = "cycler-0.12.1.tar.gz", hash = "sha256:88bb128f02ba341da8ef447245a9e138fae777f6a23943da4540077d3601eb1c"}, +] [package.extras] docs = ["ipython", "matplotlib", "numpydoc", "sphinx"] @@ -316,33 +663,61 @@ tests = ["pytest", "pytest-cov", "pytest-xdist"] name = "debugpy" version = "1.8.0" description = "An implementation of the Debug Adapter Protocol for Python" -category = "dev" 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" -category = "dev" 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" -category = "dev" 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" -category = "dev" 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)"] @@ -351,25 +726,34 @@ graph = ["objgraph (>=1.7.2)"] name = "distlib" version = "0.3.8" description = "Distribution utilities" -category = "dev" optional = false python-versions = "*" +files = [ + {file = "distlib-0.3.8-py2.py3-none-any.whl", hash = "sha256:034db59a0b96f8ca18035f36290806a9a6e6bd9d1ff91e45a7f172eb17e51784"}, + {file = "distlib-0.3.8.tar.gz", hash = "sha256:1530ea13e350031b6312d8580ddb6b27a104275a31106523b8f123787f494f64"}, +] [[package]] name = "docutils" version = "0.17.1" description = "Docutils -- Python Documentation Utilities" -category = "dev" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" +files = [ + {file = "docutils-0.17.1-py2.py3-none-any.whl", hash = "sha256:cf316c8370a737a022b72b56874f6602acf974a37a9fba42ec2876387549fc61"}, + {file = "docutils-0.17.1.tar.gz", hash = "sha256:686577d2e4c32380bb50cbb22f575ed742d58168cee37e99117a854bcd88f125"}, +] [[package]] name = "exceptiongroup" version = "1.2.0" description = "Backport of PEP 654 (exception groups)" -category = "dev" optional = false python-versions = ">=3.7" +files = [ + {file = "exceptiongroup-1.2.0-py3-none-any.whl", hash = "sha256:4bfd3996ac73b41e9b9628b04e079f193850720ea5945fc96a08633c66912f14"}, + {file = "exceptiongroup-1.2.0.tar.gz", hash = "sha256:91f5c769735f051a4290d52edd0858999b57e5876e9f85937691bd4c9fa3ed68"}, +] [package.extras] test = ["pytest (>=6)"] @@ -378,9 +762,12 @@ test = ["pytest (>=6)"] name = "executing" version = "2.0.1" description = "Get the currently executing AST node of a frame, and other information" -category = "dev" optional = false python-versions = ">=3.5" +files = [ + {file = "executing-2.0.1-py2.py3-none-any.whl", hash = "sha256:eac49ca94516ccc753f9fb5ce82603156e590b27525a8bc32cce8ae302eb61bc"}, + {file = "executing-2.0.1.tar.gz", hash = "sha256:35afe2ce3affba8ee97f2d69927fa823b08b472b7b994e36a52a964b93d16147"}, +] [package.extras] tests = ["asttokens (>=2.1.0)", "coverage", "coverage-enable-subprocess", "ipython", "littleutils", "pytest", "rich"] @@ -389,9 +776,12 @@ tests = ["asttokens (>=2.1.0)", "coverage", "coverage-enable-subprocess", "ipyth name = "fastjsonschema" version = "2.19.0" description = "Fastest Python implementation of JSON schema" -category = "dev" optional = false python-versions = "*" +files = [ + {file = "fastjsonschema-2.19.0-py3-none-any.whl", hash = "sha256:b9fd1a2dd6971dbc7fee280a95bd199ae0dd9ce22beb91cc75e9c1c528a5170e"}, + {file = "fastjsonschema-2.19.0.tar.gz", hash = "sha256:e25df6647e1bc4a26070b700897b07b542ec898dd4f1f6ea013e7f6a88417225"}, +] [package.extras] devel = ["colorama", "json-spec", "jsonschema", "pylint", "pytest", "pytest-benchmark", "pytest-cache", "validictory"] @@ -400,9 +790,12 @@ devel = ["colorama", "json-spec", "jsonschema", "pylint", "pytest", "pytest-benc name = "filelock" version = "3.13.1" description = "A platform independent file lock." -category = "dev" optional = false python-versions = ">=3.8" +files = [ + {file = "filelock-3.13.1-py3-none-any.whl", hash = "sha256:57dbda9b35157b05fb3e58ee91448612eb674172fab98ee235ccb0b5bee19a1c"}, + {file = "filelock-3.13.1.tar.gz", hash = "sha256:521f5f56c50f8426f5e03ad3b281b490a87ef15bc6c526f168290f0c7148d44e"}, +] [package.extras] docs = ["furo (>=2023.9.10)", "sphinx (>=7.2.6)", "sphinx-autodoc-typehints (>=1.24)"] @@ -413,9 +806,52 @@ typing = ["typing-extensions (>=4.8)"] name = "fonttools" version = "4.46.0" description = "Tools to manipulate font files" -category = "dev" optional = false python-versions = ">=3.8" +files = [ + {file = "fonttools-4.46.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:d4e69e2c7f93b695d2e6f18f709d501d945f65c1d237dafaabdd23cd935a5276"}, + {file = "fonttools-4.46.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:25852f0c63df0af022f698464a4a80f7d1d5bd974bcd22f995f6b4ad198e32dd"}, + {file = "fonttools-4.46.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:adab73618d0a328b203a0e242b3eba60a2b5662d9cb2bd16ed9c52af8a7d86af"}, + {file = "fonttools-4.46.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2cf923a4a556ab4cc4c52f69a4a2db624cf5a2cf360394368b40c5152fe3321e"}, + {file = "fonttools-4.46.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:87c214197712cc14fd2a4621efce2a9c501a77041232b789568149a8a3161517"}, + {file = "fonttools-4.46.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:156ae342a1ed1fe38e180de471e98fbf5b2b6ae280fa3323138569c4ca215844"}, + {file = "fonttools-4.46.0-cp310-cp310-win32.whl", hash = "sha256:c506e3d3a9e898caee4dc094f34b49c5566870d5a2d1ca2125f0a9f35ecc2205"}, + {file = "fonttools-4.46.0-cp310-cp310-win_amd64.whl", hash = "sha256:f8bc3973ed58893c4107993e0a7ae34901cb572b5e798249cbef35d30801ffd4"}, + {file = "fonttools-4.46.0-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:982f69855ac258260f51048d9e0c53c5f19881138cc7ca06deb38dc4b97404b6"}, + {file = "fonttools-4.46.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:2c23c59d321d62588620f2255cf951270bf637d88070f38ed8b5e5558775b86c"}, + {file = "fonttools-4.46.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a0e94244ec24a940ecfbe5b31c975c8a575d5ed2d80f9a280ce3b21fa5dc9c34"}, + {file = "fonttools-4.46.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1a9f9cdd7ef63d1b8ac90db335762451452426b3207abd79f60da510cea62da5"}, + {file = "fonttools-4.46.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:ca9eceebe70035b057ce549e2054cad73e95cac3fe91a9d827253d1c14618204"}, + {file = "fonttools-4.46.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:8be6adfa4e15977075278dd0a0bae74dec59be7b969b5ceed93fb86af52aa5be"}, + {file = "fonttools-4.46.0-cp311-cp311-win32.whl", hash = "sha256:7b5636f5706d49f13b6d610fe54ee662336cdf56b5a6f6683c0b803e23d826d2"}, + {file = "fonttools-4.46.0-cp311-cp311-win_amd64.whl", hash = "sha256:49ea0983e55fd7586a809787cd4644a7ae471e53ab8ddc016f9093b400e32646"}, + {file = "fonttools-4.46.0-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:7b460720ce81773da1a3e7cc964c48e1e11942b280619582a897fa0117b56a62"}, + {file = "fonttools-4.46.0-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:8bee9f4fc8c99824a424ae45c789ee8c67cb84f8e747afa7f83b7d3cef439c3b"}, + {file = "fonttools-4.46.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d3d7b96aba96e05e8c911ce2dfc5acc6a178b8f44f6aa69371ab91aa587563da"}, + {file = "fonttools-4.46.0-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9e6aeb5c340416d11a3209d75c48d13e72deea9e1517837dd1522c1fd1f17c11"}, + {file = "fonttools-4.46.0-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:c779f8701deedf41908f287aeb775b8a6f59875ad1002b98ac6034ae4ddc1b7b"}, + {file = "fonttools-4.46.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:ce199227ce7921eaafdd4f96536f16b232d6b580ce74ce337de544bf06cb2752"}, + {file = "fonttools-4.46.0-cp312-cp312-win32.whl", hash = "sha256:1c9937c4dd1061afd22643389445fabda858af5e805860ec3082a4bc07c7a720"}, + {file = "fonttools-4.46.0-cp312-cp312-win_amd64.whl", hash = "sha256:a9fa52ef8fd14d7eb3d813e1451e7ace3e1eebfa9b7237d3f81fee8f3de6a114"}, + {file = "fonttools-4.46.0-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:c94564b1f3b5dd87e73577610d85115b1936edcc596deaf84a31bbe70e17456b"}, + {file = "fonttools-4.46.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:a4a50a1dfad7f7ba5ca3f99cc73bf5cdac67ceade8e4b355a877521f20ad1b63"}, + {file = "fonttools-4.46.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:89c2c520f9492844ecd6316d20c6c7a157b5c0cb73a1411b3db28ee304f30122"}, + {file = "fonttools-4.46.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e5b7905fd68eacb7cc56a13139da5c312c45baae6950dd00b02563c54508a041"}, + {file = "fonttools-4.46.0-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:8485cc468288e213f31afdaf1fdda3c79010f542559fbba936a54f4644df2570"}, + {file = "fonttools-4.46.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:87c3299da7da55394fb324349db0ede38114a46aafd0e7dfcabfecd28cdd94c3"}, + {file = "fonttools-4.46.0-cp38-cp38-win32.whl", hash = "sha256:f5f1423a504ccc329efb5aa79738de83d38c072be5308788dde6bd419969d7f5"}, + {file = "fonttools-4.46.0-cp38-cp38-win_amd64.whl", hash = "sha256:6d4a4ebcc76e30898ff3296ea786491c70e183f738319ae2629e0d44f17ece42"}, + {file = "fonttools-4.46.0-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:c9a0e422ab79e5cb2b47913be6a4b5fd20c4c7ac34a24f3691a4e099e965e0b8"}, + {file = "fonttools-4.46.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:13ac0cba2fc63fa4b232f2a7971f35f35c6eaf10bd1271fa96d4ce6253a8acfd"}, + {file = "fonttools-4.46.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:795150d5edc595e1a2cfb3d65e8f4f3d027704fc2579f8990d381bef6b188eb6"}, + {file = "fonttools-4.46.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d00fc63131dcac6b25f50a5a129758438317e54e3ce5587163f7058de4b0e933"}, + {file = "fonttools-4.46.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:3033b55f401a622de2630b3982234d97219d89b058607b87927eccb0f922313c"}, + {file = "fonttools-4.46.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:e26e7fb908ae4f622813e7cb32cd2db6c24e3122bb3b98f25e832a2fe0e7e228"}, + {file = "fonttools-4.46.0-cp39-cp39-win32.whl", hash = "sha256:2d0eba685938c603f2f648dfc0aadbf8c6a4fe1c7ca608c2970a6ef39e00f254"}, + {file = "fonttools-4.46.0-cp39-cp39-win_amd64.whl", hash = "sha256:5200b01f463d97cc2b7ff8a1e3584151f4413e98cb8419da5f17d1dbb84cc214"}, + {file = "fonttools-4.46.0-py3-none-any.whl", hash = "sha256:5b627ed142398ea9202bd752c04311592558964d1a765fb2f78dc441a05633f4"}, + {file = "fonttools-4.46.0.tar.gz", hash = "sha256:2ae45716c27a41807d58a9f3f59983bdc8c0a46cb259e4450ab7e196253a9853"}, +] [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.1.0)", "xattr", "zopfli (>=0.1.4)"] @@ -435,20 +871,65 @@ woff = ["brotli (>=1.0.1)", "brotlicffi (>=0.8.0)", "zopfli (>=0.1.4)"] name = "fqdn" version = "1.5.1" description = "Validates fully-qualified domain names against RFC 1123, so that they are acceptable to modern bowsers" -category = "dev" 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 = "fsspec" +version = "2024.10.0" +description = "File-system specification" +optional = false +python-versions = ">=3.8" +files = [ + {file = "fsspec-2024.10.0-py3-none-any.whl", hash = "sha256:03b9a6785766a4de40368b88906366755e2819e758b83705c88cd7cb5fe81871"}, + {file = "fsspec-2024.10.0.tar.gz", hash = "sha256:eda2d8a4116d4f2429db8550f2457da57279247dd930bb12f821b58391359493"}, +] + +[package.extras] +abfs = ["adlfs"] +adl = ["adlfs"] +arrow = ["pyarrow (>=1)"] +dask = ["dask", "distributed"] +dev = ["pre-commit", "ruff"] +doc = ["numpydoc", "sphinx", "sphinx-design", "sphinx-rtd-theme", "yarl"] +dropbox = ["dropbox", "dropboxdrivefs", "requests"] +full = ["adlfs", "aiohttp (!=4.0.0a0,!=4.0.0a1)", "dask", "distributed", "dropbox", "dropboxdrivefs", "fusepy", "gcsfs", "libarchive-c", "ocifs", "panel", "paramiko", "pyarrow (>=1)", "pygit2", "requests", "s3fs", "smbprotocol", "tqdm"] +fuse = ["fusepy"] +gcs = ["gcsfs"] +git = ["pygit2"] +github = ["requests"] +gs = ["gcsfs"] +gui = ["panel"] +hdfs = ["pyarrow (>=1)"] +http = ["aiohttp (!=4.0.0a0,!=4.0.0a1)"] +libarchive = ["libarchive-c"] +oci = ["ocifs"] +s3 = ["s3fs"] +sftp = ["paramiko"] +smb = ["smbprotocol"] +ssh = ["paramiko"] +test = ["aiohttp (!=4.0.0a0,!=4.0.0a1)", "numpy", "pytest", "pytest-asyncio (!=0.22.0)", "pytest-benchmark", "pytest-cov", "pytest-mock", "pytest-recording", "pytest-rerunfailures", "requests"] +test-downstream = ["aiobotocore (>=2.5.4,<3.0.0)", "dask-expr", "dask[dataframe,test]", "moto[server] (>4,<5)", "pytest-timeout", "xarray"] +test-full = ["adlfs", "aiohttp (!=4.0.0a0,!=4.0.0a1)", "cloudpickle", "dask", "distributed", "dropbox", "dropboxdrivefs", "fastparquet", "fusepy", "gcsfs", "jinja2", "kerchunk", "libarchive-c", "lz4", "notebook", "numpy", "ocifs", "pandas", "panel", "paramiko", "pyarrow", "pyarrow (>=1)", "pyftpdlib", "pygit2", "pytest", "pytest-asyncio (!=0.22.0)", "pytest-benchmark", "pytest-cov", "pytest-mock", "pytest-recording", "pytest-rerunfailures", "python-snappy", "requests", "smbprotocol", "tqdm", "urllib3", "zarr", "zstandard"] +tqdm = ["tqdm"] [[package]] name = "hydra-core" version = "1.3.2" description = "A framework for elegantly configuring complex applications" -category = "main" optional = false python-versions = "*" +files = [ + {file = "hydra-core-1.3.2.tar.gz", hash = "sha256:8a878ed67216997c3e9d88a8e72e7b4767e81af37afb4ea3334b269a4390a824"}, + {file = "hydra_core-1.3.2-py3-none-any.whl", hash = "sha256:fa0238a9e31df3373b35b0bfb672c34cc92718d21f81311d8996a16de1141d8b"}, +] [package.dependencies] -antlr4-python3-runtime = ">=4.9.0,<4.10.0" +antlr4-python3-runtime = "==4.9.*" omegaconf = ">=2.2,<2.4" packaging = "*" @@ -456,33 +937,45 @@ packaging = "*" name = "idna" version = "3.6" description = "Internationalized Domain Names in Applications (IDNA)" -category = "dev" optional = false python-versions = ">=3.5" +files = [ + {file = "idna-3.6-py3-none-any.whl", hash = "sha256:c05567e9c24a6b9faaa835c4821bad0590fbb9d5779e7caa6e1cc4978e7eb24f"}, + {file = "idna-3.6.tar.gz", hash = "sha256:9ecdbbd083b06798ae1e86adcbfe8ab1479cf864e4ee30fe4e46a003d12491ca"}, +] [[package]] name = "imagesize" version = "1.4.1" description = "Getting image size from png/jpeg/jpeg2000/gif file" -category = "dev" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" +files = [ + {file = "imagesize-1.4.1-py2.py3-none-any.whl", hash = "sha256:0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b"}, + {file = "imagesize-1.4.1.tar.gz", hash = "sha256:69150444affb9cb0d5cc5a92b3676f0b2fb7cd9ae39e947a5e11a36b4497cd4a"}, +] [[package]] name = "iniconfig" version = "2.0.0" description = "brain-dead simple config-ini parsing" -category = "dev" 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 = "ipykernel" version = "6.27.1" description = "IPython Kernel for Jupyter" -category = "dev" optional = false python-versions = ">=3.8" +files = [ + {file = "ipykernel-6.27.1-py3-none-any.whl", hash = "sha256:dab88b47f112f9f7df62236511023c9bdeef67abc73af7c652e4ce4441601686"}, + {file = "ipykernel-6.27.1.tar.gz", hash = "sha256:7d5d594b6690654b4d299edba5e872dc17bb7396a8d0609c97cb7b8a1c605de6"}, +] [package.dependencies] appnope = {version = "*", markers = "platform_system == \"Darwin\""} @@ -490,7 +983,7 @@ comm = ">=0.1.1" debugpy = ">=1.6.5" ipython = ">=7.23.1" jupyter-client = ">=6.1.12" -jupyter-core = ">=4.12,<5.0.0 || >=5.1.0" +jupyter-core = ">=4.12,<5.0.dev0 || >=5.1.dev0" matplotlib-inline = ">=0.1" nest-asyncio = "*" packaging = "*" @@ -510,9 +1003,12 @@ test = ["flaky", "ipyparallel", "pre-commit", "pytest (>=7.0)", "pytest-asyncio" name = "ipython" version = "8.18.1" description = "IPython: Productive Interactive Computing" -category = "dev" optional = false python-versions = ">=3.9" +files = [ + {file = "ipython-8.18.1-py3-none-any.whl", hash = "sha256:e8267419d72d81955ec1177f8a29aaa90ac80ad647499201119e2f05e99aa397"}, + {file = "ipython-8.18.1.tar.gz", hash = "sha256:ca6f079bb33457c66e233e4580ebfc4128855b4cf6370dddd73842a9563e8a27"}, +] [package.dependencies] colorama = {version = "*", markers = "sys_platform == \"win32\""} @@ -543,9 +1039,12 @@ test-extra = ["curio", "matplotlib (!=3.2.0)", "nbformat", "numpy (>=1.22)", "pa name = "ipywidgets" version = "8.1.1" description = "Jupyter interactive widgets" -category = "dev" 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" @@ -561,9 +1060,12 @@ test = ["ipykernel", "jsonschema", "pytest (>=3.6.0)", "pytest-cov", "pytz"] name = "isoduration" version = "20.11.0" description = "Operations with ISO 8601 durations" -category = "dev" 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" @@ -572,17 +1074,23 @@ arrow = ">=0.15.0" name = "isort" version = "5.13.1" description = "A Python utility / library to sort Python imports." -category = "dev" optional = false python-versions = ">=3.8.0" +files = [ + {file = "isort-5.13.1-py3-none-any.whl", hash = "sha256:56a51732c25f94ca96f6721be206dd96a95f42950502eb26c1015d333bc6edb7"}, + {file = "isort-5.13.1.tar.gz", hash = "sha256:aaed790b463e8703fb1eddb831dfa8e8616bacde2c083bd557ef73c8189b7263"}, +] [[package]] name = "jedi" version = "0.19.1" description = "An autocompletion tool for Python that can be used for text editors." -category = "dev" optional = false python-versions = ">=3.6" +files = [ + {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] parso = ">=0.8.3,<0.9.0" @@ -596,9 +1104,12 @@ testing = ["Django", "attrs", "colorama", "docopt", "pytest (<7.0.0)"] name = "jinja2" version = "3.1.2" description = "A very fast and expressive template engine." -category = "dev" 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" @@ -610,17 +1121,23 @@ i18n = ["Babel (>=2.7)"] name = "joblib" version = "1.3.2" description = "Lightweight pipelining with Python functions" -category = "main" 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." -category = "dev" 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"] @@ -629,17 +1146,23 @@ dev = ["hypothesis"] name = "jsonpointer" version = "2.4" description = "Identify specific nodes in a JSON document (RFC 6901)" -category = "dev" 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.20.0" description = "An implementation of JSON Schema validation for Python" -category = "dev" optional = false python-versions = ">=3.8" +files = [ + {file = "jsonschema-4.20.0-py3-none-any.whl", hash = "sha256:ed6231f0429ecf966f5bc8dfef245998220549cbbcf140f913b7464c52c3b6b3"}, + {file = "jsonschema-4.20.0.tar.gz", hash = "sha256:4f614fd46d8d61258610998997743ec5492a648b33cf478c1ddc23ed4598a5fa"}, +] [package.dependencies] attrs = ">=22.2.0" @@ -663,9 +1186,12 @@ format-nongpl = ["fqdn", "idna", "isoduration", "jsonpointer (>1.13)", "rfc3339- name = "jsonschema-specifications" version = "2023.11.2" description = "The JSON Schema meta-schemas and vocabularies, exposed as a Registry" -category = "dev" optional = false python-versions = ">=3.8" +files = [ + {file = "jsonschema_specifications-2023.11.2-py3-none-any.whl", hash = "sha256:e74ba7c0a65e8cb49dc26837d6cfe576557084a8b423ed16a420984228104f93"}, + {file = "jsonschema_specifications-2023.11.2.tar.gz", hash = "sha256:9472fc4fea474cd74bea4a2b190daeccb5a9e4db2ea80efcf7a1b582fc9a81b8"}, +] [package.dependencies] referencing = ">=0.31.0" @@ -674,9 +1200,13 @@ referencing = ">=0.31.0" name = "jupyter" version = "1.0.0" description = "Jupyter metapackage. Install all the Jupyter components in one go." -category = "dev" optional = false python-versions = "*" +files = [ + {file = "jupyter-1.0.0-py2.py3-none-any.whl", hash = "sha256:5b290f93b98ffbc21c0c7e749f054b3267782166d72fa5e3ed1ed4eaf34a2b78"}, + {file = "jupyter-1.0.0.tar.gz", hash = "sha256:d9dc4b3318f310e34c82951ea5d6683f67bed7def4b259fafbfe4f1beb1d8e5f"}, + {file = "jupyter-1.0.0.zip", hash = "sha256:3e1f86076bbb7c8c207829390305a2b1fe836d471ed54be66a3b8c41e7f46cc7"}, +] [package.dependencies] ipykernel = "*" @@ -690,12 +1220,15 @@ qtconsole = "*" name = "jupyter-client" version = "8.6.0" description = "Jupyter protocol implementation and client libraries" -category = "dev" optional = false python-versions = ">=3.8" +files = [ + {file = "jupyter_client-8.6.0-py3-none-any.whl", hash = "sha256:909c474dbe62582ae62b758bca86d6518c85234bdee2d908c778db6d72f39d99"}, + {file = "jupyter_client-8.6.0.tar.gz", hash = "sha256:0642244bb83b4764ae60d07e010e15f0e2d275ec4e918a8f7b80fbbef3ca60c7"}, +] [package.dependencies] -jupyter-core = ">=4.12,<5.0.0 || >=5.1.0" +jupyter-core = ">=4.12,<5.0.dev0 || >=5.1.dev0" python-dateutil = ">=2.8.2" pyzmq = ">=23.0" tornado = ">=6.2" @@ -709,15 +1242,18 @@ test = ["coverage", "ipykernel (>=6.14)", "mypy", "paramiko", "pre-commit", "pyt name = "jupyter-console" version = "6.6.3" description = "Jupyter terminal console" -category = "dev" optional = false python-versions = ">=3.7" +files = [ + {file = "jupyter_console-6.6.3-py3-none-any.whl", hash = "sha256:309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485"}, + {file = "jupyter_console-6.6.3.tar.gz", hash = "sha256:566a4bf31c87adbfadf22cdf846e3069b59a71ed5da71d6ba4d8aaad14a53539"}, +] [package.dependencies] ipykernel = ">=6.14" ipython = "*" jupyter-client = ">=7.0.0" -jupyter-core = ">=4.12,<5.0.0 || >=5.1.0" +jupyter-core = ">=4.12,<5.0.dev0 || >=5.1.dev0" prompt-toolkit = ">=3.0.30" pygments = "*" pyzmq = ">=17" @@ -730,9 +1266,12 @@ test = ["flaky", "pexpect", "pytest"] name = "jupyter-core" version = "5.5.0" description = "Jupyter core package. A base package on which Jupyter projects rely." -category = "dev" optional = false python-versions = ">=3.8" +files = [ + {file = "jupyter_core-5.5.0-py3-none-any.whl", hash = "sha256:e11e02cd8ae0a9de5c6c44abf5727df9f2581055afe00b22183f621ba3585805"}, + {file = "jupyter_core-5.5.0.tar.gz", hash = "sha256:880b86053bf298a8724994f95e99b99130659022a4f7f45f563084b6223861d3"}, +] [package.dependencies] platformdirs = ">=2.5" @@ -747,9 +1286,12 @@ test = ["ipykernel", "pre-commit", "pytest", "pytest-cov", "pytest-timeout"] name = "jupyter-events" version = "0.9.0" description = "Jupyter Event System library" -category = "dev" optional = false python-versions = ">=3.8" +files = [ + {file = "jupyter_events-0.9.0-py3-none-any.whl", hash = "sha256:d853b3c10273ff9bc8bb8b30076d65e2c9685579db736873de6c2232dde148bf"}, + {file = "jupyter_events-0.9.0.tar.gz", hash = "sha256:81ad2e4bc710881ec274d31c6c50669d71bbaa5dd9d01e600b56faa85700d399"}, +] [package.dependencies] jsonschema = {version = ">=4.18.0", extras = ["format-nongpl"]} @@ -769,9 +1311,12 @@ test = ["click", "pre-commit", "pytest (>=7.0)", "pytest-asyncio (>=0.19.0)", "p name = "jupyter-lsp" version = "2.2.1" description = "Multi-Language Server WebSocket proxy for Jupyter Notebook/Lab server" -category = "dev" optional = false python-versions = ">=3.8" +files = [ + {file = "jupyter-lsp-2.2.1.tar.gz", hash = "sha256:b17fab6d70fe83c8896b0cff59237640038247c196056b43684a0902b6a9e0fb"}, + {file = "jupyter_lsp-2.2.1-py3-none-any.whl", hash = "sha256:17a689910c5e4ae5e7d334b02f31d08ffbe98108f6f658fb05e4304b4345368b"}, +] [package.dependencies] jupyter-server = ">=1.1.2" @@ -780,16 +1325,19 @@ jupyter-server = ">=1.1.2" name = "jupyter-server" version = "2.12.1" description = "The backend—i.e. core services, APIs, and REST endpoints—to Jupyter web applications." -category = "dev" optional = false python-versions = ">=3.8" +files = [ + {file = "jupyter_server-2.12.1-py3-none-any.whl", hash = "sha256:fd030dd7be1ca572e4598203f718df6630c12bd28a599d7f1791c4d7938e1010"}, + {file = "jupyter_server-2.12.1.tar.gz", hash = "sha256:dc77b7dcc5fc0547acba2b2844f01798008667201eea27c6319ff9257d700a6d"}, +] [package.dependencies] anyio = ">=3.1.0" argon2-cffi = "*" jinja2 = "*" jupyter-client = ">=7.4.4" -jupyter-core = ">=4.12,<5.0.0 || >=5.1.0" +jupyter-core = ">=4.12,<5.0.dev0 || >=5.1.dev0" jupyter-events = ">=0.9.0" jupyter-server-terminals = "*" nbconvert = ">=6.4.4" @@ -813,9 +1361,12 @@ test = ["flaky", "ipykernel", "pre-commit", "pytest (>=7.0)", "pytest-console-sc name = "jupyter-server-terminals" version = "0.5.0" description = "A Jupyter Server Extension Providing Terminals." -category = "dev" optional = false python-versions = ">=3.8" +files = [ + {file = "jupyter_server_terminals-0.5.0-py3-none-any.whl", hash = "sha256:2fc0692c883bfd891f4fba0c4b4a684a37234b0ba472f2e97ed0a3888f46e1e4"}, + {file = "jupyter_server_terminals-0.5.0.tar.gz", hash = "sha256:ebcd68c9afbf98a480a533e6f3266354336e645536953b7abcc7bdeebc0154a3"}, +] [package.dependencies] pywinpty = {version = ">=2.0.3", markers = "os_name == \"nt\""} @@ -829,9 +1380,12 @@ test = ["jupyter-server (>=2.0.0)", "pytest (>=7.0)", "pytest-jupyter[server] (> name = "jupyterlab" version = "4.0.9" description = "JupyterLab computational environment" -category = "dev" optional = false python-versions = ">=3.8" +files = [ + {file = "jupyterlab-4.0.9-py3-none-any.whl", hash = "sha256:9f6f8e36d543fdbcc3df961a1d6a3f524b4a4001be0327a398f68fa4e534107c"}, + {file = "jupyterlab-4.0.9.tar.gz", hash = "sha256:9ebada41d52651f623c0c9f069ddb8a21d6848e4c887d8e5ddc0613166ed5c0b"}, +] [package.dependencies] async-lru = ">=1.0.0" @@ -857,17 +1411,23 @@ test = ["coverage", "pytest (>=7.0)", "pytest-check-links (>=0.7)", "pytest-cons name = "jupyterlab-pygments" version = "0.3.0" description = "Pygments theme using JupyterLab CSS variables" -category = "dev" optional = false python-versions = ">=3.8" +files = [ + {file = "jupyterlab_pygments-0.3.0-py3-none-any.whl", hash = "sha256:841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780"}, + {file = "jupyterlab_pygments-0.3.0.tar.gz", hash = "sha256:721aca4d9029252b11cfa9d185e5b5af4d54772bb8072f9b7036f4170054d35d"}, +] [[package]] name = "jupyterlab-server" version = "2.25.2" description = "A set of server components for JupyterLab and JupyterLab like applications." -category = "dev" optional = false python-versions = ">=3.8" +files = [ + {file = "jupyterlab_server-2.25.2-py3-none-any.whl", hash = "sha256:5b1798c9cc6a44f65c757de9f97fc06fc3d42535afbf47d2ace5e964ab447aaf"}, + {file = "jupyterlab_server-2.25.2.tar.gz", hash = "sha256:bd0ec7a99ebcedc8bcff939ef86e52c378e44c2707e053fcd81d046ce979ee63"}, +] [package.dependencies] babel = ">=2.10" @@ -887,33 +1447,231 @@ test = ["hatch", "ipykernel", "openapi-core (>=0.18.0,<0.19.0)", "openapi-spec-v name = "jupyterlab-widgets" version = "3.0.9" description = "Jupyter interactive widgets for JupyterLab" -category = "dev" 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" -category = "dev" 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 = "markupsafe" version = "2.1.3" description = "Safely add untrusted strings to HTML/XML markup." -category = "dev" 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 = "matplotlib" version = "3.8.2" description = "Python plotting package" -category = "dev" optional = false python-versions = ">=3.9" +files = [ + {file = "matplotlib-3.8.2-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:09796f89fb71a0c0e1e2f4bdaf63fb2cefc84446bb963ecdeb40dfee7dfa98c7"}, + {file = "matplotlib-3.8.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:6f9c6976748a25e8b9be51ea028df49b8e561eed7809146da7a47dbecebab367"}, + {file = "matplotlib-3.8.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b78e4f2cedf303869b782071b55fdde5987fda3038e9d09e58c91cc261b5ad18"}, + {file = "matplotlib-3.8.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4e208f46cf6576a7624195aa047cb344a7f802e113bb1a06cfd4bee431de5e31"}, + {file = "matplotlib-3.8.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:46a569130ff53798ea5f50afce7406e91fdc471ca1e0e26ba976a8c734c9427a"}, + {file = "matplotlib-3.8.2-cp310-cp310-win_amd64.whl", hash = "sha256:830f00640c965c5b7f6bc32f0d4ce0c36dfe0379f7dd65b07a00c801713ec40a"}, + {file = "matplotlib-3.8.2-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:d86593ccf546223eb75a39b44c32788e6f6440d13cfc4750c1c15d0fcb850b63"}, + {file = "matplotlib-3.8.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:9a5430836811b7652991939012f43d2808a2db9b64ee240387e8c43e2e5578c8"}, + {file = "matplotlib-3.8.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b9576723858a78751d5aacd2497b8aef29ffea6d1c95981505877f7ac28215c6"}, + {file = "matplotlib-3.8.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5ba9cbd8ac6cf422f3102622b20f8552d601bf8837e49a3afed188d560152788"}, + {file = "matplotlib-3.8.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:03f9d160a29e0b65c0790bb07f4f45d6a181b1ac33eb1bb0dd225986450148f0"}, + {file = "matplotlib-3.8.2-cp311-cp311-win_amd64.whl", hash = "sha256:3773002da767f0a9323ba1a9b9b5d00d6257dbd2a93107233167cfb581f64717"}, + {file = "matplotlib-3.8.2-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:4c318c1e95e2f5926fba326f68177dee364aa791d6df022ceb91b8221bd0a627"}, + {file = "matplotlib-3.8.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:091275d18d942cf1ee9609c830a1bc36610607d8223b1b981c37d5c9fc3e46a4"}, + {file = "matplotlib-3.8.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1b0f3b8ea0e99e233a4bcc44590f01604840d833c280ebb8fe5554fd3e6cfe8d"}, + {file = "matplotlib-3.8.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d7b1704a530395aaf73912be741c04d181f82ca78084fbd80bc737be04848331"}, + {file = "matplotlib-3.8.2-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:533b0e3b0c6768eef8cbe4b583731ce25a91ab54a22f830db2b031e83cca9213"}, + {file = "matplotlib-3.8.2-cp312-cp312-win_amd64.whl", hash = "sha256:0f4fc5d72b75e2c18e55eb32292659cf731d9d5b312a6eb036506304f4675630"}, + {file = "matplotlib-3.8.2-cp39-cp39-macosx_10_12_x86_64.whl", hash = "sha256:deaed9ad4da0b1aea77fe0aa0cebb9ef611c70b3177be936a95e5d01fa05094f"}, + {file = "matplotlib-3.8.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:172f4d0fbac3383d39164c6caafd3255ce6fa58f08fc392513a0b1d3b89c4f89"}, + {file = "matplotlib-3.8.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c7d36c2209d9136cd8e02fab1c0ddc185ce79bc914c45054a9f514e44c787917"}, + {file = "matplotlib-3.8.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5864bdd7da445e4e5e011b199bb67168cdad10b501750367c496420f2ad00843"}, + {file = "matplotlib-3.8.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:ef8345b48e95cee45ff25192ed1f4857273117917a4dcd48e3905619bcd9c9b8"}, + {file = "matplotlib-3.8.2-cp39-cp39-win_amd64.whl", hash = "sha256:7c48d9e221b637c017232e3760ed30b4e8d5dfd081daf327e829bf2a72c731b4"}, + {file = "matplotlib-3.8.2-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:aa11b3c6928a1e496c1a79917d51d4cd5d04f8a2e75f21df4949eeefdf697f4b"}, + {file = "matplotlib-3.8.2-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d1095fecf99eeb7384dabad4bf44b965f929a5f6079654b681193edf7169ec20"}, + {file = "matplotlib-3.8.2-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:bddfb1db89bfaa855912261c805bd0e10218923cc262b9159a49c29a7a1c1afa"}, + {file = "matplotlib-3.8.2.tar.gz", hash = "sha256:01a978b871b881ee76017152f1f1a0cbf6bd5f7b8ff8c96df0df1bd57d8755a1"}, +] [package.dependencies] contourpy = ">=1.0.1" @@ -930,9 +1688,12 @@ python-dateutil = ">=2.7" name = "matplotlib-inline" version = "0.1.6" description = "Inline Matplotlib backend for Jupyter" -category = "dev" 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 = "*" @@ -941,55 +1702,107 @@ traitlets = "*" name = "mccabe" version = "0.7.0" description = "McCabe checker, plugin for flake8" -category = "dev" 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 = "mistune" version = "2.0.5" description = "A sane Markdown parser with useful plugins and renderers" -category = "dev" optional = false python-versions = "*" +files = [ + {file = "mistune-2.0.5-py2.py3-none-any.whl", hash = "sha256:bad7f5d431886fcbaf5f758118ecff70d31f75231b34024a1341120340a65ce8"}, + {file = "mistune-2.0.5.tar.gz", hash = "sha256:0246113cb2492db875c6be56974a7c893333bf26cd92891c85f63151cee09d34"}, +] [[package]] -name = "mypy" -version = "1.5.0" -description = "Optional static typing for Python" -category = "main" +name = "mpmath" +version = "1.3.0" +description = "Python library for arbitrary-precision floating-point arithmetic" optional = false -python-versions = ">=3.8" - -[package.dependencies] -mypy-extensions = ">=1.0.0" -tomli = {version = ">=1.1.0", markers = "python_version < \"3.11\""} -typing-extensions = ">=4.1.0" +python-versions = "*" +files = [ + {file = "mpmath-1.3.0-py3-none-any.whl", hash = "sha256:a0b2b9fe80bbcd81a6647ff13108738cfb482d481d826cc0e02f5b35e5c88d2c"}, + {file = "mpmath-1.3.0.tar.gz", hash = "sha256:7a28eb2a9774d00c7bc92411c19a89209d5da7c4c9a9e227be8330a23a25b91f"}, +] [package.extras] -dmypy = ["psutil (>=4.0)"] -install-types = ["pip"] -reports = ["lxml"] +develop = ["codecov", "pycodestyle", "pytest (>=4.6)", "pytest-cov", "wheel"] +docs = ["sphinx"] +gmpy = ["gmpy2 (>=2.1.0a4)"] +tests = ["pytest (>=4.6)"] [[package]] -name = "mypy-extensions" -version = "1.0.0" -description = "Type system extensions for programs checked with the mypy type checker." -category = "main" +name = "mypy" +version = "1.5.0" +description = "Optional static typing for Python" optional = false -python-versions = ">=3.5" - -[[package]] -name = "nbclient" +python-versions = ">=3.8" +files = [ + {file = "mypy-1.5.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:ad3109bec37cc33654de8db30fe8ff3a1bb57ea65144167d68185e6dced9868d"}, + {file = "mypy-1.5.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:b4ea3a0241cb005b0ccdbd318fb99619b21ae51bcf1660b95fc22e0e7d3ba4a1"}, + {file = "mypy-1.5.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1fe816e26e676c1311b9e04fd576543b873576d39439f7c24c8e5c7728391ecf"}, + {file = "mypy-1.5.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:42170e68adb1603ccdc55a30068f72bcfcde2ce650188e4c1b2a93018b826735"}, + {file = "mypy-1.5.0-cp310-cp310-win_amd64.whl", hash = "sha256:d145b81a8214687cfc1f85c03663a5bbe736777410e5580e54d526e7e904f564"}, + {file = "mypy-1.5.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:c36011320e452eb30bec38b9fd3ba20569dc9545d7d4540d967f3ea1fab9c374"}, + {file = "mypy-1.5.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:f3940cf5845b2512b3ab95463198b0cdf87975dfd17fdcc6ce9709a9abe09e69"}, + {file = "mypy-1.5.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9166186c498170e1ff478a7f540846b2169243feb95bc228d39a67a1a450cdc6"}, + {file = "mypy-1.5.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:725b57a19b7408ef66a0fd9db59b5d3e528922250fb56e50bded27fea9ff28f0"}, + {file = "mypy-1.5.0-cp311-cp311-win_amd64.whl", hash = "sha256:eec5c927aa4b3e8b4781840f1550079969926d0a22ce38075f6cfcf4b13e3eb4"}, + {file = "mypy-1.5.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:79c520aa24f21852206b5ff2cf746dc13020113aa73fa55af504635a96e62718"}, + {file = "mypy-1.5.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:769ddb6bfe55c2bd9c7d6d7020885a5ea14289619db7ee650e06b1ef0852c6f4"}, + {file = "mypy-1.5.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:cbf18f8db7e5f060d61c91e334d3b96d6bb624ddc9ee8a1cde407b737acbca2c"}, + {file = "mypy-1.5.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:a2500ad063413bc873ae102cf655bf49889e0763b260a3a7cf544a0cbbf7e70a"}, + {file = "mypy-1.5.0-cp38-cp38-win_amd64.whl", hash = "sha256:84cf9f7d8a8a22bb6a36444480f4cbf089c917a4179fbf7eea003ea931944a7f"}, + {file = "mypy-1.5.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:a551ed0fc02455fe2c1fb0145160df8336b90ab80224739627b15ebe2b45e9dc"}, + {file = "mypy-1.5.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:372fd97293ed0076d52695849f59acbbb8461c4ab447858cdaeaf734a396d823"}, + {file = "mypy-1.5.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c8a7444d6fcac7e2585b10abb91ad900a576da7af8f5cffffbff6065d9115813"}, + {file = "mypy-1.5.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:35b13335c6c46a386577a51f3d38b2b5d14aa619e9633bb756bd77205e4bd09f"}, + {file = "mypy-1.5.0-cp39-cp39-win_amd64.whl", hash = "sha256:2c9d570f53908cbea326ad8f96028a673b814d9dca7515bf71d95fa662c3eb6f"}, + {file = "mypy-1.5.0-py3-none-any.whl", hash = "sha256:69b32d0dedd211b80f1b7435644e1ef83033a2af2ac65adcdc87c38db68a86be"}, + {file = "mypy-1.5.0.tar.gz", hash = "sha256:f3460f34b3839b9bc84ee3ed65076eb827cd99ed13ed08d723f9083cada4a212"}, +] + +[package.dependencies] +mypy-extensions = ">=1.0.0" +tomli = {version = ">=1.1.0", markers = "python_version < \"3.11\""} +typing-extensions = ">=4.1.0" + +[package.extras] +dmypy = ["psutil (>=4.0)"] +install-types = ["pip"] +reports = ["lxml"] + +[[package]] +name = "mypy-extensions" +version = "1.0.0" +description = "Type system extensions for programs checked with the mypy type checker." +optional = false +python-versions = ">=3.5" +files = [ + {file = "mypy_extensions-1.0.0-py3-none-any.whl", hash = "sha256:4392f6c0eb8a5668a69e23d168ffa70f0be9ccfd32b5cc2d26a34ae5b844552d"}, + {file = "mypy_extensions-1.0.0.tar.gz", hash = "sha256:75dbf8955dc00442a438fc4d0666508a9a97b6bd41aa2f0ffe9d2f2725af0782"}, +] + +[[package]] +name = "nbclient" version = "0.9.0" description = "A client library for executing notebooks. Formerly nbconvert's ExecutePreprocessor." -category = "dev" optional = false python-versions = ">=3.8.0" +files = [ + {file = "nbclient-0.9.0-py3-none-any.whl", hash = "sha256:a3a1ddfb34d4a9d17fc744d655962714a866639acd30130e9be84191cd97cd15"}, + {file = "nbclient-0.9.0.tar.gz", hash = "sha256:4b28c207877cf33ef3a9838cdc7a54c5ceff981194a82eac59d558f05487295e"}, +] [package.dependencies] jupyter-client = ">=6.1.12" -jupyter-core = ">=4.12,<5.0.0 || >=5.1.0" +jupyter-core = ">=4.12,<5.0.dev0 || >=5.1.dev0" nbformat = ">=5.1" traitlets = ">=5.4" @@ -1002,9 +1815,12 @@ test = ["flaky", "ipykernel (>=6.19.3)", "ipython", "ipywidgets", "nbconvert (>= name = "nbconvert" version = "7.12.0" description = "Converting Jupyter Notebooks" -category = "dev" optional = false python-versions = ">=3.8" +files = [ + {file = "nbconvert-7.12.0-py3-none-any.whl", hash = "sha256:5b6c848194d270cc55fb691169202620d7b52a12fec259508d142ecbe4219310"}, + {file = "nbconvert-7.12.0.tar.gz", hash = "sha256:b1564bd89f69a74cd6398b0362da94db07aafb991b7857216a766204a71612c0"}, +] [package.dependencies] beautifulsoup4 = "*" @@ -1036,9 +1852,12 @@ webpdf = ["playwright"] name = "nbformat" version = "5.9.2" description = "The Jupyter Notebook format" -category = "dev" 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 = "*" @@ -1054,17 +1873,42 @@ test = ["pep440", "pre-commit", "pytest", "testpath"] name = "nest-asyncio" version = "1.5.8" description = "Patch asyncio to allow nested event loops" -category = "dev" 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.4.2" +description = "Python package for creating and manipulating graphs and networks" +optional = false +python-versions = ">=3.10" +files = [ + {file = "networkx-3.4.2-py3-none-any.whl", hash = "sha256:df5d4365b724cf81b8c6a7312509d0c22386097011ad1abe274afd5e9d3bbc5f"}, + {file = "networkx-3.4.2.tar.gz", hash = "sha256:307c3669428c5362aab27c8a1260aa8f47c4e91d3891f48be0141738d8d053e1"}, +] + +[package.extras] +default = ["matplotlib (>=3.7)", "numpy (>=1.24)", "pandas (>=2.0)", "scipy (>=1.10,!=1.11.0,!=1.11.1)"] +developer = ["changelist (==0.5)", "mypy (>=1.1)", "pre-commit (>=3.2)", "rtoml"] +doc = ["intersphinx-registry", "myst-nb (>=1.1)", "numpydoc (>=1.8.0)", "pillow (>=9.4)", "pydata-sphinx-theme (>=0.15)", "sphinx (>=7.3)", "sphinx-gallery (>=0.16)", "texext (>=0.6.7)"] +example = ["cairocffi (>=1.7)", "contextily (>=1.6)", "igraph (>=0.11)", "momepy (>=0.7.2)", "osmnx (>=1.9)", "scikit-learn (>=1.5)", "seaborn (>=0.13)"] +extra = ["lxml (>=4.6)", "pydot (>=3.0.1)", "pygraphviz (>=1.14)", "sympy (>=1.10)"] +test = ["pytest (>=7.2)", "pytest-cov (>=4.0)"] [[package]] name = "notebook" version = "7.0.6" description = "Jupyter Notebook - A web-based notebook environment for interactive computing" -category = "dev" optional = false python-versions = ">=3.8" +files = [ + {file = "notebook-7.0.6-py3-none-any.whl", hash = "sha256:0fe8f67102fea3744fedf652e4c15339390902ca70c5a31c4f547fa23da697cc"}, + {file = "notebook-7.0.6.tar.gz", hash = "sha256:ec6113b06529019f7f287819af06c97a2baf7a95ac21a8f6e32192898e9f9a58"}, +] [package.dependencies] jupyter-server = ">=2.4.0,<3" @@ -1082,9 +1926,12 @@ test = ["importlib-resources (>=5.0)", "ipykernel", "jupyter-server[test] (>=2.4 name = "notebook-shim" version = "0.2.3" description = "A shim layer for notebook traits and config" -category = "dev" 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" @@ -1096,45 +1943,274 @@ test = ["pytest", "pytest-console-scripts", "pytest-jupyter", "pytest-tornasync" name = "numpy" version = "1.26.2" description = "Fundamental package for array computing in Python" -category = "main" optional = false python-versions = ">=3.9" +files = [ + {file = "numpy-1.26.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:3703fc9258a4a122d17043e57b35e5ef1c5a5837c3db8be396c82e04c1cf9b0f"}, + {file = "numpy-1.26.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:cc392fdcbd21d4be6ae1bb4475a03ce3b025cd49a9be5345d76d7585aea69440"}, + {file = "numpy-1.26.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:36340109af8da8805d8851ef1d74761b3b88e81a9bd80b290bbfed61bd2b4f75"}, + {file = "numpy-1.26.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bcc008217145b3d77abd3e4d5ef586e3bdfba8fe17940769f8aa09b99e856c00"}, + {file = "numpy-1.26.2-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:3ced40d4e9e18242f70dd02d739e44698df3dcb010d31f495ff00a31ef6014fe"}, + {file = "numpy-1.26.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:b272d4cecc32c9e19911891446b72e986157e6a1809b7b56518b4f3755267523"}, + {file = "numpy-1.26.2-cp310-cp310-win32.whl", hash = "sha256:22f8fc02fdbc829e7a8c578dd8d2e15a9074b630d4da29cda483337e300e3ee9"}, + {file = "numpy-1.26.2-cp310-cp310-win_amd64.whl", hash = "sha256:26c9d33f8e8b846d5a65dd068c14e04018d05533b348d9eaeef6c1bd787f9919"}, + {file = "numpy-1.26.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:b96e7b9c624ef3ae2ae0e04fa9b460f6b9f17ad8b4bec6d7756510f1f6c0c841"}, + {file = "numpy-1.26.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:aa18428111fb9a591d7a9cc1b48150097ba6a7e8299fb56bdf574df650e7d1f1"}, + {file = "numpy-1.26.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:06fa1ed84aa60ea6ef9f91ba57b5ed963c3729534e6e54055fc151fad0423f0a"}, + {file = "numpy-1.26.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:96ca5482c3dbdd051bcd1fce8034603d6ebfc125a7bd59f55b40d8f5d246832b"}, + {file = "numpy-1.26.2-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:854ab91a2906ef29dc3925a064fcd365c7b4da743f84b123002f6139bcb3f8a7"}, + {file = "numpy-1.26.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:f43740ab089277d403aa07567be138fc2a89d4d9892d113b76153e0e412409f8"}, + {file = "numpy-1.26.2-cp311-cp311-win32.whl", hash = "sha256:a2bbc29fcb1771cd7b7425f98b05307776a6baf43035d3b80c4b0f29e9545186"}, + {file = "numpy-1.26.2-cp311-cp311-win_amd64.whl", hash = "sha256:2b3fca8a5b00184828d12b073af4d0fc5fdd94b1632c2477526f6bd7842d700d"}, + {file = "numpy-1.26.2-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:a4cd6ed4a339c21f1d1b0fdf13426cb3b284555c27ac2f156dfdaaa7e16bfab0"}, + {file = "numpy-1.26.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:5d5244aabd6ed7f312268b9247be47343a654ebea52a60f002dc70c769048e75"}, + {file = "numpy-1.26.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6a3cdb4d9c70e6b8c0814239ead47da00934666f668426fc6e94cce869e13fd7"}, + {file = "numpy-1.26.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:aa317b2325f7aa0a9471663e6093c210cb2ae9c0ad824732b307d2c51983d5b6"}, + {file = "numpy-1.26.2-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:174a8880739c16c925799c018f3f55b8130c1f7c8e75ab0a6fa9d41cab092fd6"}, + {file = "numpy-1.26.2-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:f79b231bf5c16b1f39c7f4875e1ded36abee1591e98742b05d8a0fb55d8a3eec"}, + {file = "numpy-1.26.2-cp312-cp312-win32.whl", hash = "sha256:4a06263321dfd3598cacb252f51e521a8cb4b6df471bb12a7ee5cbab20ea9167"}, + {file = "numpy-1.26.2-cp312-cp312-win_amd64.whl", hash = "sha256:b04f5dc6b3efdaab541f7857351aac359e6ae3c126e2edb376929bd3b7f92d7e"}, + {file = "numpy-1.26.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:4eb8df4bf8d3d90d091e0146f6c28492b0be84da3e409ebef54349f71ed271ef"}, + {file = "numpy-1.26.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:1a13860fdcd95de7cf58bd6f8bc5a5ef81c0b0625eb2c9a783948847abbef2c2"}, + {file = "numpy-1.26.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:64308ebc366a8ed63fd0bf426b6a9468060962f1a4339ab1074c228fa6ade8e3"}, + {file = "numpy-1.26.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:baf8aab04a2c0e859da118f0b38617e5ee65d75b83795055fb66c0d5e9e9b818"}, + {file = "numpy-1.26.2-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:d73a3abcac238250091b11caef9ad12413dab01669511779bc9b29261dd50210"}, + {file = "numpy-1.26.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:b361d369fc7e5e1714cf827b731ca32bff8d411212fccd29ad98ad622449cc36"}, + {file = "numpy-1.26.2-cp39-cp39-win32.whl", hash = "sha256:bd3f0091e845164a20bd5a326860c840fe2af79fa12e0469a12768a3ec578d80"}, + {file = "numpy-1.26.2-cp39-cp39-win_amd64.whl", hash = "sha256:2beef57fb031dcc0dc8fa4fe297a742027b954949cabb52a2a376c144e5e6060"}, + {file = "numpy-1.26.2-pp39-pypy39_pp73-macosx_10_9_x86_64.whl", hash = "sha256:1cc3d5029a30fb5f06704ad6b23b35e11309491c999838c31f124fee32107c79"}, + {file = "numpy-1.26.2-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:94cc3c222bb9fb5a12e334d0479b97bb2df446fbe622b470928f5284ffca3f8d"}, + {file = "numpy-1.26.2-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:fe6b44fb8fcdf7eda4ef4461b97b3f63c466b27ab151bec2366db8b197387841"}, + {file = "numpy-1.26.2.tar.gz", hash = "sha256:f65738447676ab5777f11e6bbbdb8ce11b785e105f690bc45966574816b6d3ea"}, +] + +[[package]] +name = "nvidia-cublas-cu12" +version = "12.4.5.8" +description = "CUBLAS native runtime libraries" +optional = false +python-versions = ">=3" +files = [ + {file = "nvidia_cublas_cu12-12.4.5.8-py3-none-manylinux2014_aarch64.whl", hash = "sha256:0f8aa1706812e00b9f19dfe0cdb3999b092ccb8ca168c0db5b8ea712456fd9b3"}, + {file = "nvidia_cublas_cu12-12.4.5.8-py3-none-manylinux2014_x86_64.whl", hash = "sha256:2fc8da60df463fdefa81e323eef2e36489e1c94335b5358bcb38360adf75ac9b"}, + {file = "nvidia_cublas_cu12-12.4.5.8-py3-none-win_amd64.whl", hash = "sha256:5a796786da89203a0657eda402bcdcec6180254a8ac22d72213abc42069522dc"}, +] + +[[package]] +name = "nvidia-cuda-cupti-cu12" +version = "12.4.127" +description = "CUDA profiling tools runtime libs." +optional = false +python-versions = ">=3" +files = [ + {file = "nvidia_cuda_cupti_cu12-12.4.127-py3-none-manylinux2014_aarch64.whl", hash = "sha256:79279b35cf6f91da114182a5ce1864997fd52294a87a16179ce275773799458a"}, + {file = "nvidia_cuda_cupti_cu12-12.4.127-py3-none-manylinux2014_x86_64.whl", hash = "sha256:9dec60f5ac126f7bb551c055072b69d85392b13311fcc1bcda2202d172df30fb"}, + {file = "nvidia_cuda_cupti_cu12-12.4.127-py3-none-win_amd64.whl", hash = "sha256:5688d203301ab051449a2b1cb6690fbe90d2b372f411521c86018b950f3d7922"}, +] + +[[package]] +name = "nvidia-cuda-nvrtc-cu12" +version = "12.4.127" +description = "NVRTC native runtime libraries" +optional = false +python-versions = ">=3" +files = [ + {file = "nvidia_cuda_nvrtc_cu12-12.4.127-py3-none-manylinux2014_aarch64.whl", hash = "sha256:0eedf14185e04b76aa05b1fea04133e59f465b6f960c0cbf4e37c3cb6b0ea198"}, + {file = "nvidia_cuda_nvrtc_cu12-12.4.127-py3-none-manylinux2014_x86_64.whl", hash = "sha256:a178759ebb095827bd30ef56598ec182b85547f1508941a3d560eb7ea1fbf338"}, + {file = "nvidia_cuda_nvrtc_cu12-12.4.127-py3-none-win_amd64.whl", hash = "sha256:a961b2f1d5f17b14867c619ceb99ef6fcec12e46612711bcec78eb05068a60ec"}, +] + +[[package]] +name = "nvidia-cuda-runtime-cu12" +version = "12.4.127" +description = "CUDA Runtime native Libraries" +optional = false +python-versions = ">=3" +files = [ + {file = "nvidia_cuda_runtime_cu12-12.4.127-py3-none-manylinux2014_aarch64.whl", hash = "sha256:961fe0e2e716a2a1d967aab7caee97512f71767f852f67432d572e36cb3a11f3"}, + {file = "nvidia_cuda_runtime_cu12-12.4.127-py3-none-manylinux2014_x86_64.whl", hash = "sha256:64403288fa2136ee8e467cdc9c9427e0434110899d07c779f25b5c068934faa5"}, + {file = "nvidia_cuda_runtime_cu12-12.4.127-py3-none-win_amd64.whl", hash = "sha256:09c2e35f48359752dfa822c09918211844a3d93c100a715d79b59591130c5e1e"}, +] + +[[package]] +name = "nvidia-cudnn-cu12" +version = "9.1.0.70" +description = "cuDNN runtime libraries" +optional = false +python-versions = ">=3" +files = [ + {file = "nvidia_cudnn_cu12-9.1.0.70-py3-none-manylinux2014_x86_64.whl", hash = "sha256:165764f44ef8c61fcdfdfdbe769d687e06374059fbb388b6c89ecb0e28793a6f"}, + {file = "nvidia_cudnn_cu12-9.1.0.70-py3-none-win_amd64.whl", hash = "sha256:6278562929433d68365a07a4a1546c237ba2849852c0d4b2262a486e805b977a"}, +] + +[package.dependencies] +nvidia-cublas-cu12 = "*" + +[[package]] +name = "nvidia-cufft-cu12" +version = "11.2.1.3" +description = "CUFFT native runtime libraries" +optional = false +python-versions = ">=3" +files = [ + {file = "nvidia_cufft_cu12-11.2.1.3-py3-none-manylinux2014_aarch64.whl", hash = "sha256:5dad8008fc7f92f5ddfa2101430917ce2ffacd86824914c82e28990ad7f00399"}, + {file = "nvidia_cufft_cu12-11.2.1.3-py3-none-manylinux2014_x86_64.whl", hash = "sha256:f083fc24912aa410be21fa16d157fed2055dab1cc4b6934a0e03cba69eb242b9"}, + {file = "nvidia_cufft_cu12-11.2.1.3-py3-none-win_amd64.whl", hash = "sha256:d802f4954291101186078ccbe22fc285a902136f974d369540fd4a5333d1440b"}, +] + +[package.dependencies] +nvidia-nvjitlink-cu12 = "*" + +[[package]] +name = "nvidia-curand-cu12" +version = "10.3.5.147" +description = "CURAND native runtime libraries" +optional = false +python-versions = ">=3" +files = [ + {file = "nvidia_curand_cu12-10.3.5.147-py3-none-manylinux2014_aarch64.whl", hash = "sha256:1f173f09e3e3c76ab084aba0de819c49e56614feae5c12f69883f4ae9bb5fad9"}, + {file = "nvidia_curand_cu12-10.3.5.147-py3-none-manylinux2014_x86_64.whl", hash = "sha256:a88f583d4e0bb643c49743469964103aa59f7f708d862c3ddb0fc07f851e3b8b"}, + {file = "nvidia_curand_cu12-10.3.5.147-py3-none-win_amd64.whl", hash = "sha256:f307cc191f96efe9e8f05a87096abc20d08845a841889ef78cb06924437f6771"}, +] + +[[package]] +name = "nvidia-cusolver-cu12" +version = "11.6.1.9" +description = "CUDA solver native runtime libraries" +optional = false +python-versions = ">=3" +files = [ + {file = "nvidia_cusolver_cu12-11.6.1.9-py3-none-manylinux2014_aarch64.whl", hash = "sha256:d338f155f174f90724bbde3758b7ac375a70ce8e706d70b018dd3375545fc84e"}, + {file = "nvidia_cusolver_cu12-11.6.1.9-py3-none-manylinux2014_x86_64.whl", hash = "sha256:19e33fa442bcfd085b3086c4ebf7e8debc07cfe01e11513cc6d332fd918ac260"}, + {file = "nvidia_cusolver_cu12-11.6.1.9-py3-none-win_amd64.whl", hash = "sha256:e77314c9d7b694fcebc84f58989f3aa4fb4cb442f12ca1a9bde50f5e8f6d1b9c"}, +] + +[package.dependencies] +nvidia-cublas-cu12 = "*" +nvidia-cusparse-cu12 = "*" +nvidia-nvjitlink-cu12 = "*" + +[[package]] +name = "nvidia-cusparse-cu12" +version = "12.3.1.170" +description = "CUSPARSE native runtime libraries" +optional = false +python-versions = ">=3" +files = [ + {file = "nvidia_cusparse_cu12-12.3.1.170-py3-none-manylinux2014_aarch64.whl", hash = "sha256:9d32f62896231ebe0480efd8a7f702e143c98cfaa0e8a76df3386c1ba2b54df3"}, + {file = "nvidia_cusparse_cu12-12.3.1.170-py3-none-manylinux2014_x86_64.whl", hash = "sha256:ea4f11a2904e2a8dc4b1833cc1b5181cde564edd0d5cd33e3c168eff2d1863f1"}, + {file = "nvidia_cusparse_cu12-12.3.1.170-py3-none-win_amd64.whl", hash = "sha256:9bc90fb087bc7b4c15641521f31c0371e9a612fc2ba12c338d3ae032e6b6797f"}, +] + +[package.dependencies] +nvidia-nvjitlink-cu12 = "*" + +[[package]] +name = "nvidia-nccl-cu12" +version = "2.21.5" +description = "NVIDIA Collective Communication Library (NCCL) Runtime" +optional = false +python-versions = ">=3" +files = [ + {file = "nvidia_nccl_cu12-2.21.5-py3-none-manylinux2014_x86_64.whl", hash = "sha256:8579076d30a8c24988834445f8d633c697d42397e92ffc3f63fa26766d25e0a0"}, +] + +[[package]] +name = "nvidia-nvjitlink-cu12" +version = "12.4.127" +description = "Nvidia JIT LTO Library" +optional = false +python-versions = ">=3" +files = [ + {file = "nvidia_nvjitlink_cu12-12.4.127-py3-none-manylinux2014_aarch64.whl", hash = "sha256:4abe7fef64914ccfa909bc2ba39739670ecc9e820c83ccc7a6ed414122599b83"}, + {file = "nvidia_nvjitlink_cu12-12.4.127-py3-none-manylinux2014_x86_64.whl", hash = "sha256:06b3b9b25bf3f8af351d664978ca26a16d2c5127dbd53c0497e28d1fb9611d57"}, + {file = "nvidia_nvjitlink_cu12-12.4.127-py3-none-win_amd64.whl", hash = "sha256:fd9020c501d27d135f983c6d3e244b197a7ccad769e34df53a42e276b0e25fa1"}, +] + +[[package]] +name = "nvidia-nvtx-cu12" +version = "12.4.127" +description = "NVIDIA Tools Extension" +optional = false +python-versions = ">=3" +files = [ + {file = "nvidia_nvtx_cu12-12.4.127-py3-none-manylinux2014_aarch64.whl", hash = "sha256:7959ad635db13edf4fc65c06a6e9f9e55fc2f92596db928d169c0bb031e88ef3"}, + {file = "nvidia_nvtx_cu12-12.4.127-py3-none-manylinux2014_x86_64.whl", hash = "sha256:781e950d9b9f60d8241ccea575b32f5105a5baf4c2351cab5256a24869f12a1a"}, + {file = "nvidia_nvtx_cu12-12.4.127-py3-none-win_amd64.whl", hash = "sha256:641dccaaa1139f3ffb0d3164b4b84f9d253397e38246a4f2f36728b48566d485"}, +] [[package]] name = "omegaconf" version = "2.3.0" description = "A flexible configuration library" -category = "main" optional = false python-versions = ">=3.6" +files = [ + {file = "omegaconf-2.3.0-py3-none-any.whl", hash = "sha256:7b4df175cdb08ba400f45cae3bdcae7ba8365db4d165fc65fd04b050ab63b46b"}, + {file = "omegaconf-2.3.0.tar.gz", hash = "sha256:d5d4b6d29955cc50ad50c46dc269bcd92c6e00f5f90d23ab5fee7bfca4ba4cc7"}, +] [package.dependencies] -antlr4-python3-runtime = ">=4.9.0,<4.10.0" +antlr4-python3-runtime = "==4.9.*" PyYAML = ">=5.1.0" [[package]] name = "overrides" version = "7.4.0" description = "A decorator to automatically detect mismatch when overriding a method." -category = "dev" 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.2" description = "Core utilities for Python packages" -category = "main" optional = false python-versions = ">=3.7" +files = [ + {file = "packaging-23.2-py3-none-any.whl", hash = "sha256:8c491190033a9af7e1d931d0b5dacc2ef47509b34dd0de67ed209b5203fc88c7"}, + {file = "packaging-23.2.tar.gz", hash = "sha256:048fb0e9405036518eaaf48a55953c750c11e1a1b68e0dd1a9d62ed0c092cfc5"}, +] [[package]] name = "pandas" version = "1.5.3" description = "Powerful data structures for data analysis, time series, and statistics" -category = "main" optional = false python-versions = ">=3.8" +files = [ + {file = "pandas-1.5.3-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:3749077d86e3a2f0ed51367f30bf5b82e131cc0f14260c4d3e499186fccc4406"}, + {file = "pandas-1.5.3-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:972d8a45395f2a2d26733eb8d0f629b2f90bebe8e8eddbb8829b180c09639572"}, + {file = "pandas-1.5.3-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:50869a35cbb0f2e0cd5ec04b191e7b12ed688874bd05dd777c19b28cbea90996"}, + {file = "pandas-1.5.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c3ac844a0fe00bfaeb2c9b51ab1424e5c8744f89860b138434a363b1f620f354"}, + {file = "pandas-1.5.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7a0a56cef15fd1586726dace5616db75ebcfec9179a3a55e78f72c5639fa2a23"}, + {file = "pandas-1.5.3-cp310-cp310-win_amd64.whl", hash = "sha256:478ff646ca42b20376e4ed3fa2e8d7341e8a63105586efe54fa2508ee087f328"}, + {file = "pandas-1.5.3-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:6973549c01ca91ec96199e940495219c887ea815b2083722821f1d7abfa2b4dc"}, + {file = "pandas-1.5.3-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:c39a8da13cede5adcd3be1182883aea1c925476f4e84b2807a46e2775306305d"}, + {file = "pandas-1.5.3-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:f76d097d12c82a535fda9dfe5e8dd4127952b45fea9b0276cb30cca5ea313fbc"}, + {file = "pandas-1.5.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e474390e60ed609cec869b0da796ad94f420bb057d86784191eefc62b65819ae"}, + {file = "pandas-1.5.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5f2b952406a1588ad4cad5b3f55f520e82e902388a6d5a4a91baa8d38d23c7f6"}, + {file = "pandas-1.5.3-cp311-cp311-win_amd64.whl", hash = "sha256:bc4c368f42b551bf72fac35c5128963a171b40dce866fb066540eeaf46faa003"}, + {file = "pandas-1.5.3-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:14e45300521902689a81f3f41386dc86f19b8ba8dd5ac5a3c7010ef8d2932813"}, + {file = "pandas-1.5.3-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:9842b6f4b8479e41968eced654487258ed81df7d1c9b7b870ceea24ed9459b31"}, + {file = "pandas-1.5.3-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:26d9c71772c7afb9d5046e6e9cf42d83dd147b5cf5bcb9d97252077118543792"}, + {file = "pandas-1.5.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5fbcb19d6fceb9e946b3e23258757c7b225ba450990d9ed63ccceeb8cae609f7"}, + {file = "pandas-1.5.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:565fa34a5434d38e9d250af3c12ff931abaf88050551d9fbcdfafca50d62babf"}, + {file = "pandas-1.5.3-cp38-cp38-win32.whl", hash = "sha256:87bd9c03da1ac870a6d2c8902a0e1fd4267ca00f13bc494c9e5a9020920e1d51"}, + {file = "pandas-1.5.3-cp38-cp38-win_amd64.whl", hash = "sha256:41179ce559943d83a9b4bbacb736b04c928b095b5f25dd2b7389eda08f46f373"}, + {file = "pandas-1.5.3-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:c74a62747864ed568f5a82a49a23a8d7fe171d0c69038b38cedf0976831296fa"}, + {file = "pandas-1.5.3-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:c4c00e0b0597c8e4f59e8d461f797e5d70b4d025880516a8261b2817c47759ee"}, + {file = "pandas-1.5.3-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:a50d9a4336a9621cab7b8eb3fb11adb82de58f9b91d84c2cd526576b881a0c5a"}, + {file = "pandas-1.5.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:dd05f7783b3274aa206a1af06f0ceed3f9b412cf665b7247eacd83be41cf7bf0"}, + {file = "pandas-1.5.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9f69c4029613de47816b1bb30ff5ac778686688751a5e9c99ad8c7031f6508e5"}, + {file = "pandas-1.5.3-cp39-cp39-win32.whl", hash = "sha256:7cec0bee9f294e5de5bbfc14d0573f65526071029d036b753ee6507d2a21480a"}, + {file = "pandas-1.5.3-cp39-cp39-win_amd64.whl", hash = "sha256:dfd681c5dc216037e0b0a2c821f5ed99ba9f03ebcf119c7dac0e9a7b960b9ec9"}, + {file = "pandas-1.5.3.tar.gz", hash = "sha256:74a3fd7e5a7ec052f183273dc7b0acd3a863edf7520f5d3a1765c04ffdb3b0b1"}, +] [package.dependencies] numpy = {version = ">=1.21.0", markers = "python_version >= \"3.10\""} @@ -1148,9 +2224,12 @@ test = ["hypothesis (>=5.5.3)", "pytest (>=6.0)", "pytest-xdist (>=1.31)"] name = "pandas-stubs" version = "1.5.3.230321" description = "Type annotations for pandas" -category = "main" optional = false python-versions = ">=3.8,<3.12" +files = [ + {file = "pandas_stubs-1.5.3.230321-py3-none-any.whl", hash = "sha256:4bf36b3071dd55f0e558ac8efe07676a120f2ed89e7a3df0fb78ddf2733bf247"}, + {file = "pandas_stubs-1.5.3.230321.tar.gz", hash = "sha256:2fa860df9e6058e9f0d2c09bc711c09abb8f0516eee7f0b9f9950d29b835fc6f"}, +] [package.dependencies] types-pytz = ">=2022.1.1" @@ -1159,17 +2238,23 @@ types-pytz = ">=2022.1.1" name = "pandocfilters" version = "1.5.0" description = "Utilities for writing pandoc filters in python" -category = "dev" 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" -category = "dev" 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)"] @@ -1179,17 +2264,23 @@ testing = ["docopt", "pytest (<6.0.0)"] name = "pathspec" version = "0.12.1" description = "Utility library for gitignore style pattern matching of file paths." -category = "main" optional = false python-versions = ">=3.8" +files = [ + {file = "pathspec-0.12.1-py3-none-any.whl", hash = "sha256:a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08"}, + {file = "pathspec-0.12.1.tar.gz", hash = "sha256:a482d51503a1ab33b1c67a6c3813a26953dbdc71c31dacaef9a838c4e29f5712"}, +] [[package]] name = "patsy" version = "0.5.4" description = "A Python package for describing statistical models and for building design matrices." -category = "main" optional = false python-versions = "*" +files = [ + {file = "patsy-0.5.4-py2.py3-none-any.whl", hash = "sha256:0486413077a527db51ddea8fa94a5234d0feb17a4f4dc01b59b6086c58a70f80"}, + {file = "patsy-0.5.4.tar.gz", hash = "sha256:7dabc527597308de0e8f188faa20af7e06a89bdaa306756dfc7783693ea16af4"}, +] [package.dependencies] numpy = ">=1.4" @@ -1202,9 +2293,12 @@ test = ["pytest", "pytest-cov", "scipy"] name = "pexpect" version = "4.9.0" description = "Pexpect allows easy control of interactive console applications." -category = "dev" optional = false python-versions = "*" +files = [ + {file = "pexpect-4.9.0-py2.py3-none-any.whl", hash = "sha256:7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523"}, + {file = "pexpect-4.9.0.tar.gz", hash = "sha256:ee7d41123f3c9911050ea2c2dac107568dc43b2d3b0c7557a33212c398ead30f"}, +] [package.dependencies] ptyprocess = ">=0.5" @@ -1213,56 +2307,123 @@ ptyprocess = ">=0.5" name = "pillow" version = "10.1.0" description = "Python Imaging Library (Fork)" -category = "dev" -optional = false -python-versions = ">=3.8" - -[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 = "4.1.0" -description = "A small Python package for determining appropriate platform-specific dirs, e.g. a \"user data dir\"." -category = "main" -optional = false -python-versions = ">=3.8" - -[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 = "pluggy" -version = "1.3.0" -description = "plugin and hook calling mechanisms for python" -category = "dev" -optional = false -python-versions = ">=3.8" - -[package.extras] -dev = ["pre-commit", "tox"] -testing = ["pytest", "pytest-benchmark"] - -[[package]] -name = "prometheus-client" -version = "0.19.0" -description = "Python client for the Prometheus monitoring system." -category = "dev" optional = false python-versions = ">=3.8" - -[package.extras] -twisted = ["twisted"] - +files = [ + {file = "Pillow-10.1.0-cp310-cp310-macosx_10_10_x86_64.whl", hash = "sha256:1ab05f3db77e98f93964697c8efc49c7954b08dd61cff526b7f2531a22410106"}, + {file = "Pillow-10.1.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:6932a7652464746fcb484f7fc3618e6503d2066d853f68a4bd97193a3996e273"}, + {file = "Pillow-10.1.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a5f63b5a68daedc54c7c3464508d8c12075e56dcfbd42f8c1bf40169061ae666"}, + {file = "Pillow-10.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c0949b55eb607898e28eaccb525ab104b2d86542a85c74baf3a6dc24002edec2"}, + {file = "Pillow-10.1.0-cp310-cp310-manylinux_2_28_aarch64.whl", hash = "sha256:ae88931f93214777c7a3aa0a8f92a683f83ecde27f65a45f95f22d289a69e593"}, + {file = "Pillow-10.1.0-cp310-cp310-manylinux_2_28_x86_64.whl", hash = "sha256:b0eb01ca85b2361b09480784a7931fc648ed8b7836f01fb9241141b968feb1db"}, + {file = "Pillow-10.1.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:d27b5997bdd2eb9fb199982bb7eb6164db0426904020dc38c10203187ae2ff2f"}, + {file = "Pillow-10.1.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:7df5608bc38bd37ef585ae9c38c9cd46d7c81498f086915b0f97255ea60c2818"}, + {file = "Pillow-10.1.0-cp310-cp310-win_amd64.whl", hash = "sha256:41f67248d92a5e0a2076d3517d8d4b1e41a97e2df10eb8f93106c89107f38b57"}, + {file = "Pillow-10.1.0-cp311-cp311-macosx_10_10_x86_64.whl", hash = "sha256:1fb29c07478e6c06a46b867e43b0bcdb241b44cc52be9bc25ce5944eed4648e7"}, + {file = "Pillow-10.1.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:2cdc65a46e74514ce742c2013cd4a2d12e8553e3a2563c64879f7c7e4d28bce7"}, + {file = "Pillow-10.1.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:50d08cd0a2ecd2a8657bd3d82c71efd5a58edb04d9308185d66c3a5a5bed9610"}, + {file = "Pillow-10.1.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:062a1610e3bc258bff2328ec43f34244fcec972ee0717200cb1425214fe5b839"}, + {file = "Pillow-10.1.0-cp311-cp311-manylinux_2_28_aarch64.whl", hash = "sha256:61f1a9d247317fa08a308daaa8ee7b3f760ab1809ca2da14ecc88ae4257d6172"}, + {file = "Pillow-10.1.0-cp311-cp311-manylinux_2_28_x86_64.whl", hash = "sha256:a646e48de237d860c36e0db37ecaecaa3619e6f3e9d5319e527ccbc8151df061"}, + {file = "Pillow-10.1.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:47e5bf85b80abc03be7455c95b6d6e4896a62f6541c1f2ce77a7d2bb832af262"}, + {file = "Pillow-10.1.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:a92386125e9ee90381c3369f57a2a50fa9e6aa8b1cf1d9c4b200d41a7dd8e992"}, + {file = "Pillow-10.1.0-cp311-cp311-win_amd64.whl", hash = "sha256:0f7c276c05a9767e877a0b4c5050c8bee6a6d960d7f0c11ebda6b99746068c2a"}, + {file = "Pillow-10.1.0-cp312-cp312-macosx_10_10_x86_64.whl", hash = "sha256:a89b8312d51715b510a4fe9fc13686283f376cfd5abca8cd1c65e4c76e21081b"}, + {file = "Pillow-10.1.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:00f438bb841382b15d7deb9a05cc946ee0f2c352653c7aa659e75e592f6fa17d"}, + {file = "Pillow-10.1.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3d929a19f5469b3f4df33a3df2983db070ebb2088a1e145e18facbc28cae5b27"}, + {file = "Pillow-10.1.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9a92109192b360634a4489c0c756364c0c3a2992906752165ecb50544c251312"}, + {file = "Pillow-10.1.0-cp312-cp312-manylinux_2_28_aarch64.whl", hash = "sha256:0248f86b3ea061e67817c47ecbe82c23f9dd5d5226200eb9090b3873d3ca32de"}, + {file = "Pillow-10.1.0-cp312-cp312-manylinux_2_28_x86_64.whl", hash = "sha256:9882a7451c680c12f232a422730f986a1fcd808da0fd428f08b671237237d651"}, + {file = "Pillow-10.1.0-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:1c3ac5423c8c1da5928aa12c6e258921956757d976405e9467c5f39d1d577a4b"}, + {file = "Pillow-10.1.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:806abdd8249ba3953c33742506fe414880bad78ac25cc9a9b1c6ae97bedd573f"}, + {file = "Pillow-10.1.0-cp312-cp312-win_amd64.whl", hash = "sha256:eaed6977fa73408b7b8a24e8b14e59e1668cfc0f4c40193ea7ced8e210adf996"}, + {file = "Pillow-10.1.0-cp38-cp38-macosx_10_10_x86_64.whl", hash = "sha256:fe1e26e1ffc38be097f0ba1d0d07fcade2bcfd1d023cda5b29935ae8052bd793"}, + {file = "Pillow-10.1.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:7a7e3daa202beb61821c06d2517428e8e7c1aab08943e92ec9e5755c2fc9ba5e"}, + {file = "Pillow-10.1.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:24fadc71218ad2b8ffe437b54876c9382b4a29e030a05a9879f615091f42ffc2"}, + {file = "Pillow-10.1.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fa1d323703cfdac2036af05191b969b910d8f115cf53093125e4058f62012c9a"}, + {file = "Pillow-10.1.0-cp38-cp38-manylinux_2_28_aarch64.whl", hash = "sha256:912e3812a1dbbc834da2b32299b124b5ddcb664ed354916fd1ed6f193f0e2d01"}, + {file = "Pillow-10.1.0-cp38-cp38-manylinux_2_28_x86_64.whl", hash = "sha256:7dbaa3c7de82ef37e7708521be41db5565004258ca76945ad74a8e998c30af8d"}, + {file = "Pillow-10.1.0-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:9d7bc666bd8c5a4225e7ac71f2f9d12466ec555e89092728ea0f5c0c2422ea80"}, + {file = "Pillow-10.1.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:baada14941c83079bf84c037e2d8b7506ce201e92e3d2fa0d1303507a8538212"}, + {file = "Pillow-10.1.0-cp38-cp38-win_amd64.whl", hash = "sha256:2ef6721c97894a7aa77723740a09547197533146fba8355e86d6d9a4a1056b14"}, + {file = "Pillow-10.1.0-cp39-cp39-macosx_10_10_x86_64.whl", hash = "sha256:0a026c188be3b443916179f5d04548092e253beb0c3e2ee0a4e2cdad72f66099"}, + {file = "Pillow-10.1.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:04f6f6149f266a100374ca3cc368b67fb27c4af9f1cc8cb6306d849dcdf12616"}, + {file = "Pillow-10.1.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bb40c011447712d2e19cc261c82655f75f32cb724788df315ed992a4d65696bb"}, + {file = "Pillow-10.1.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1a8413794b4ad9719346cd9306118450b7b00d9a15846451549314a58ac42219"}, + {file = "Pillow-10.1.0-cp39-cp39-manylinux_2_28_aarch64.whl", hash = "sha256:c9aeea7b63edb7884b031a35305629a7593272b54f429a9869a4f63a1bf04c34"}, + {file = "Pillow-10.1.0-cp39-cp39-manylinux_2_28_x86_64.whl", hash = "sha256:b4005fee46ed9be0b8fb42be0c20e79411533d1fd58edabebc0dd24626882cfd"}, + {file = "Pillow-10.1.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:4d0152565c6aa6ebbfb1e5d8624140a440f2b99bf7afaafbdbf6430426497f28"}, + {file = "Pillow-10.1.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:d921bc90b1defa55c9917ca6b6b71430e4286fc9e44c55ead78ca1a9f9eba5f2"}, + {file = "Pillow-10.1.0-cp39-cp39-win_amd64.whl", hash = "sha256:cfe96560c6ce2f4c07d6647af2d0f3c54cc33289894ebd88cfbb3bcd5391e256"}, + {file = "Pillow-10.1.0-pp310-pypy310_pp73-macosx_10_10_x86_64.whl", hash = "sha256:937bdc5a7f5343d1c97dc98149a0be7eb9704e937fe3dc7140e229ae4fc572a7"}, + {file = "Pillow-10.1.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b1c25762197144e211efb5f4e8ad656f36c8d214d390585d1d21281f46d556ba"}, + {file = "Pillow-10.1.0-pp310-pypy310_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:afc8eef765d948543a4775f00b7b8c079b3321d6b675dde0d02afa2ee23000b4"}, + {file = "Pillow-10.1.0-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:883f216eac8712b83a63f41b76ddfb7b2afab1b74abbb413c5df6680f071a6b9"}, + {file = "Pillow-10.1.0-pp39-pypy39_pp73-macosx_10_10_x86_64.whl", hash = "sha256:b920e4d028f6442bea9a75b7491c063f0b9a3972520731ed26c83e254302eb1e"}, + {file = "Pillow-10.1.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1c41d960babf951e01a49c9746f92c5a7e0d939d1652d7ba30f6b3090f27e412"}, + {file = "Pillow-10.1.0-pp39-pypy39_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:1fafabe50a6977ac70dfe829b2d5735fd54e190ab55259ec8aea4aaea412fa0b"}, + {file = "Pillow-10.1.0-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:3b834f4b16173e5b92ab6566f0473bfb09f939ba14b23b8da1f54fa63e4b623f"}, + {file = "Pillow-10.1.0.tar.gz", hash = "sha256:e6bf8de6c36ed96c86ea3b6e1d5273c53f46ef518a062464cd7ef5dd2cf92e38"}, +] + +[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 = "4.1.0" +description = "A small Python package for determining appropriate platform-specific dirs, e.g. a \"user data dir\"." +optional = false +python-versions = ">=3.8" +files = [ + {file = "platformdirs-4.1.0-py3-none-any.whl", hash = "sha256:11c8f37bcca40db96d8144522d925583bdb7a31f7b0e37e3ed4318400a8e2380"}, + {file = "platformdirs-4.1.0.tar.gz", hash = "sha256:906d548203468492d432bcb294d4bc2fff751bf84971fbb2c10918cc206ee420"}, +] + +[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 = "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.19.0" +description = "Python client for the Prometheus monitoring system." +optional = false +python-versions = ">=3.8" +files = [ + {file = "prometheus_client-0.19.0-py3-none-any.whl", hash = "sha256:c88b1e6ecf6b41cd8fb5731c7ae919bf66df6ec6fafa555cd6c0e16ca169ae92"}, + {file = "prometheus_client-0.19.0.tar.gz", hash = "sha256:4585b0d1223148c27a225b10dbec5ae9bc4c81a99a3fa80774fa6209935324e1"}, +] + +[package.extras] +twisted = ["twisted"] + [[package]] name = "prompt-toolkit" version = "3.0.43" description = "Library for building powerful interactive command lines in Python" -category = "dev" optional = false python-versions = ">=3.7.0" +files = [ + {file = "prompt_toolkit-3.0.43-py3-none-any.whl", hash = "sha256:a11a29cb3bf0a28a387fe5122cdb649816a957cd9261dcedf8c9f1fef33eacf6"}, + {file = "prompt_toolkit-3.0.43.tar.gz", hash = "sha256:3527b7af26106cbc65a040bcc84839a3566ec1b051bb0bfe953631e704b0ff7d"}, +] [package.dependencies] wcwidth = "*" @@ -1271,9 +2432,26 @@ wcwidth = "*" name = "psutil" version = "5.9.6" description = "Cross-platform lib for process and system monitoring in Python." -category = "dev" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*" +files = [ + {file = "psutil-5.9.6-cp27-cp27m-macosx_10_9_x86_64.whl", hash = "sha256:fb8a697f11b0f5994550555fcfe3e69799e5b060c8ecf9e2f75c69302cc35c0d"}, + {file = "psutil-5.9.6-cp27-cp27m-manylinux2010_i686.whl", hash = "sha256:91ecd2d9c00db9817a4b4192107cf6954addb5d9d67a969a4f436dbc9200f88c"}, + {file = "psutil-5.9.6-cp27-cp27m-manylinux2010_x86_64.whl", hash = "sha256:10e8c17b4f898d64b121149afb136c53ea8b68c7531155147867b7b1ac9e7e28"}, + {file = "psutil-5.9.6-cp27-cp27mu-manylinux2010_i686.whl", hash = "sha256:18cd22c5db486f33998f37e2bb054cc62fd06646995285e02a51b1e08da97017"}, + {file = "psutil-5.9.6-cp27-cp27mu-manylinux2010_x86_64.whl", hash = "sha256:ca2780f5e038379e520281e4c032dddd086906ddff9ef0d1b9dcf00710e5071c"}, + {file = "psutil-5.9.6-cp27-none-win32.whl", hash = "sha256:70cb3beb98bc3fd5ac9ac617a327af7e7f826373ee64c80efd4eb2856e5051e9"}, + {file = "psutil-5.9.6-cp27-none-win_amd64.whl", hash = "sha256:51dc3d54607c73148f63732c727856f5febec1c7c336f8f41fcbd6315cce76ac"}, + {file = "psutil-5.9.6-cp36-abi3-macosx_10_9_x86_64.whl", hash = "sha256:c69596f9fc2f8acd574a12d5f8b7b1ba3765a641ea5d60fb4736bf3c08a8214a"}, + {file = "psutil-5.9.6-cp36-abi3-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:92e0cc43c524834af53e9d3369245e6cc3b130e78e26100d1f63cdb0abeb3d3c"}, + {file = "psutil-5.9.6-cp36-abi3-manylinux_2_12_x86_64.manylinux2010_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:748c9dd2583ed86347ed65d0035f45fa8c851e8d90354c122ab72319b5f366f4"}, + {file = "psutil-5.9.6-cp36-cp36m-win32.whl", hash = "sha256:3ebf2158c16cc69db777e3c7decb3c0f43a7af94a60d72e87b2823aebac3d602"}, + {file = "psutil-5.9.6-cp36-cp36m-win_amd64.whl", hash = "sha256:ff18b8d1a784b810df0b0fff3bcb50ab941c3b8e2c8de5726f9c71c601c611aa"}, + {file = "psutil-5.9.6-cp37-abi3-win32.whl", hash = "sha256:a6f01f03bf1843280f4ad16f4bde26b817847b4c1a0db59bf6419807bc5ce05c"}, + {file = "psutil-5.9.6-cp37-abi3-win_amd64.whl", hash = "sha256:6e5fb8dc711a514da83098bc5234264e551ad980cec5f85dabf4d38ed6f15e9a"}, + {file = "psutil-5.9.6-cp38-abi3-macosx_11_0_arm64.whl", hash = "sha256:daecbcbd29b289aac14ece28eca6a3e60aa361754cf6da3dfb20d4d32b6c7f57"}, + {file = "psutil-5.9.6.tar.gz", hash = "sha256:e4b92ddcd7dd4cdd3f900180ea1e104932c7bce234fb88976e2a3b296441225a"}, +] [package.extras] test = ["enum34", "ipaddress", "mock", "pywin32", "wmi"] @@ -1282,17 +2460,23 @@ test = ["enum34", "ipaddress", "mock", "pywin32", "wmi"] name = "ptyprocess" version = "0.7.0" description = "Run a subprocess in a pseudo terminal" -category = "dev" 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" -category = "dev" 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"] @@ -1301,25 +2485,34 @@ tests = ["pytest"] name = "py" version = "1.11.0" description = "library with cross-python path, ini-parsing, io, code, log facilities" -category = "dev" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" +files = [ + {file = "py-1.11.0-py2.py3-none-any.whl", hash = "sha256:607c53218732647dff4acdfcd50cb62615cedf612e72d1724fb1a0cc6405b378"}, + {file = "py-1.11.0.tar.gz", hash = "sha256:51c75c4126074b472f746a24399ad32f6053d1b34b68d2fa41e558e6f4a98719"}, +] [[package]] name = "pycparser" version = "2.21" description = "C parser in Python" -category = "dev" 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 = "pygments" version = "2.17.2" description = "Pygments is a syntax highlighting package written in Python." -category = "dev" optional = false python-versions = ">=3.7" +files = [ + {file = "pygments-2.17.2-py3-none-any.whl", hash = "sha256:b27c2826c47d0f3219f29554824c30c5e8945175d888647acd804ddd04af846c"}, + {file = "pygments-2.17.2.tar.gz", hash = "sha256:da46cec9fd2de5be3a8a784f434e4c4ab670b4ff54d605c4c2717e9d49c4c367"}, +] [package.extras] plugins = ["importlib-metadata"] @@ -1329,9 +2522,12 @@ windows-terminal = ["colorama (>=0.4.6)"] name = "pylint" version = "3.0.3" description = "python code static checker" -category = "dev" optional = false python-versions = ">=3.8.0" +files = [ + {file = "pylint-3.0.3-py3-none-any.whl", hash = "sha256:7a1585285aefc5165db81083c3e06363a27448f6b467b3b0f30dbd0ac1f73810"}, + {file = "pylint-3.0.3.tar.gz", hash = "sha256:58c2398b0301e049609a8429789ec6edf3aabe9b6c5fec916acd18639c16de8b"}, +] [package.dependencies] astroid = ">=3.0.1,<=3.1.0-dev0" @@ -1351,9 +2547,12 @@ testutils = ["gitpython (>3)"] name = "pyparsing" version = "3.1.1" description = "pyparsing module - Classes and methods to define and execute parsing grammars" -category = "dev" 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"] @@ -1362,9 +2561,12 @@ diagrams = ["jinja2", "railroad-diagrams"] name = "pytest" version = "6.2.5" description = "pytest: simple powerful testing with Python" -category = "dev" optional = false python-versions = ">=3.6" +files = [ + {file = "pytest-6.2.5-py3-none-any.whl", hash = "sha256:7310f8d27bc79ced999e760ca304d69f6ba6c6649c0b60fb0e04a4a77cacc134"}, + {file = "pytest-6.2.5.tar.gz", hash = "sha256:131b36680866a76e6781d13f101efb86cf674ebb9762eb70d3082b6f29889e89"}, +] [package.dependencies] atomicwrites = {version = ">=1.0", markers = "sys_platform == \"win32\""} @@ -1383,9 +2585,12 @@ testing = ["argcomplete", "hypothesis (>=3.56)", "mock", "nose", "requests", "xm name = "pytest-cov" version = "2.12.1" description = "Pytest plugin for measuring coverage." -category = "dev" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" +files = [ + {file = "pytest-cov-2.12.1.tar.gz", hash = "sha256:261ceeb8c227b726249b376b8526b600f38667ee314f910353fa318caa01f4d7"}, + {file = "pytest_cov-2.12.1-py2.py3-none-any.whl", hash = "sha256:261bb9e47e65bd099c89c3edf92972865210c36813f80ede5277dceb77a4a62a"}, +] [package.dependencies] coverage = ">=5.2.1" @@ -1399,9 +2604,12 @@ testing = ["fields", "hunter", "process-tests", "pytest-xdist", "six", "virtuale name = "python-dateutil" version = "2.8.2" description = "Extensions to the standard Python datetime module" -category = "main" 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" @@ -1410,1810 +2618,129 @@ six = ">=1.5" name = "python-json-logger" version = "2.0.7" description = "A python library adding a json log formatter" -category = "dev" 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" -category = "main" 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" -category = "dev" 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.12" description = "Pseudo terminal support for Windows from Python." -category = "dev" optional = false python-versions = ">=3.8" +files = [ + {file = "pywinpty-2.0.12-cp310-none-win_amd64.whl", hash = "sha256:21319cd1d7c8844fb2c970fb3a55a3db5543f112ff9cfcd623746b9c47501575"}, + {file = "pywinpty-2.0.12-cp311-none-win_amd64.whl", hash = "sha256:853985a8f48f4731a716653170cd735da36ffbdc79dcb4c7b7140bce11d8c722"}, + {file = "pywinpty-2.0.12-cp312-none-win_amd64.whl", hash = "sha256:1617b729999eb6713590e17665052b1a6ae0ad76ee31e60b444147c5b6a35dca"}, + {file = "pywinpty-2.0.12-cp38-none-win_amd64.whl", hash = "sha256:189380469ca143d06e19e19ff3fba0fcefe8b4a8cc942140a6b863aed7eebb2d"}, + {file = "pywinpty-2.0.12-cp39-none-win_amd64.whl", hash = "sha256:7520575b6546db23e693cbd865db2764097bd6d4ef5dc18c92555904cd62c3d4"}, + {file = "pywinpty-2.0.12.tar.gz", hash = "sha256:8197de460ae8ebb7f5d1701dfa1b5df45b157bb832e92acba316305e18ca00dd"}, +] [[package]] name = "pyyaml" version = "6.0.1" description = "YAML parser and emitter for Python" -category = "main" 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_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a08c6f0fe150303c1c6b71ebcd7213c2858041a7e01975da3a99aed1e7a378ef"}, + {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 = "pyzmq" version = "25.1.2" description = "Python bindings for 0MQ" -category = "dev" optional = false python-versions = ">=3.6" - -[package.dependencies] -cffi = {version = "*", markers = "implementation_name == \"pypy\""} - -[[package]] -name = "qtconsole" -version = "5.5.1" -description = "Jupyter Qt console" -category = "dev" -optional = false -python-versions = ">= 3.8" - -[package.dependencies] -ipykernel = ">=4.1" -jupyter-client = ">=4.1" -jupyter-core = "*" -packaging = "*" -pygments = "*" -pyzmq = ">=17.1" -qtpy = ">=2.4.0" -traitlets = "<5.2.1 || >5.2.1,<5.2.2 || >5.2.2" - -[package.extras] -doc = ["Sphinx (>=1.3)"] -test = ["flaky", "pytest", "pytest-qt"] - -[[package]] -name = "qtpy" -version = "2.4.1" -description = "Provides an abstraction layer on top of the various Qt bindings (PyQt5/6 and PySide2/6)." -category = "dev" -optional = false -python-versions = ">=3.7" - -[package.dependencies] -packaging = "*" - -[package.extras] -test = ["pytest (>=6,!=7.0.0,!=7.0.1)", "pytest-cov (>=3.0.0)", "pytest-qt"] - -[[package]] -name = "referencing" -version = "0.32.0" -description = "JSON Referencing + Python" -category = "dev" -optional = false -python-versions = ">=3.8" - -[package.dependencies] -attrs = ">=22.2.0" -rpds-py = ">=0.7.0" - -[[package]] -name = "requests" -version = "2.31.0" -description = "Python HTTP for Humans." -category = "dev" -optional = false -python-versions = ">=3.7" - -[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" -category = "dev" -optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" - -[package.dependencies] -six = "*" - -[[package]] -name = "rfc3986-validator" -version = "0.1.1" -description = "Pure python rfc3986 validator" -category = "dev" -optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" - -[[package]] -name = "rpds-py" -version = "0.13.2" -description = "Python bindings to Rust's persistent data structures (rpds)" -category = "dev" -optional = false -python-versions = ">=3.8" - -[[package]] -name = "scikit-learn" -version = "1.3.2" -description = "A set of python modules for machine learning and data mining" -category = "main" -optional = false -python-versions = ">=3.8" - -[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.4" -description = "Fundamental algorithms for scientific computing in Python" -category = "main" -optional = false -python-versions = ">=3.9" - -[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" -category = "dev" -optional = false -python-versions = ">=3.7" - -[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" -category = "dev" -optional = false -python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,>=2.7" - -[package.extras] -nativelib = ["pyobjc-framework-Cocoa", "pywin32"] -objc = ["pyobjc-framework-Cocoa"] -win32 = ["pywin32"] - -[[package]] -name = "six" -version = "1.16.0" -description = "Python 2 and 3 compatibility utilities" -category = "main" -optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*" - -[[package]] -name = "sniffio" -version = "1.3.0" -description = "Sniff out which async library your code is running under" -category = "dev" -optional = false -python-versions = ">=3.7" - -[[package]] -name = "snowballstemmer" -version = "2.2.0" -description = "This package provides 29 stemmers for 28 languages generated from Snowball algorithms." -category = "dev" -optional = false -python-versions = "*" - -[[package]] -name = "soupsieve" -version = "2.5" -description = "A modern CSS selector implementation for Beautiful Soup." -category = "dev" -optional = false -python-versions = ">=3.8" - -[[package]] -name = "sphinx" -version = "4.5.0" -description = "Python documentation generator" -category = "dev" -optional = false -python-versions = ">=3.6" - -[package.dependencies] -alabaster = ">=0.7,<0.8" -babel = ">=1.3" -colorama = {version = ">=0.3.5", markers = "sys_platform == \"win32\""} -docutils = ">=0.14,<0.18" -imagesize = "*" -Jinja2 = ">=2.3" -packaging = "*" -Pygments = ">=2.0" -requests = ">=2.5.0" -snowballstemmer = ">=1.1" -sphinxcontrib-applehelp = "*" -sphinxcontrib-devhelp = "*" -sphinxcontrib-htmlhelp = ">=2.0.0" -sphinxcontrib-jsmath = "*" -sphinxcontrib-qthelp = "*" -sphinxcontrib-serializinghtml = ">=1.1.5" - -[package.extras] -docs = ["sphinxcontrib-websupport"] -lint = ["docutils-stubs", "flake8 (>=3.5.0)", "isort", "mypy (>=0.931)", "types-requests", "types-typed-ast"] -test = ["cython", "html5lib", "pytest", "pytest-cov", "typed-ast"] - -[[package]] -name = "sphinx-mdinclude" -version = "0.5.3" -description = "Markdown extension for Sphinx" -category = "dev" -optional = false -python-versions = ">=3.6" - -[package.dependencies] -docutils = ">=0.16,<1.0" -mistune = ">=2.0,<3.0" -pygments = ">=2.8" - -[[package]] -name = "sphinx-rtd-theme" -version = "1.3.0" -description = "Read the Docs theme for Sphinx" -category = "dev" -optional = false -python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,>=2.7" - -[package.dependencies] -docutils = "<0.19" -sphinx = ">=1.6,<8" -sphinxcontrib-jquery = ">=4,<5" - -[package.extras] -dev = ["bump2version", "sphinxcontrib-httpdomain", "transifex-client", "wheel"] - -[[package]] -name = "sphinxcontrib-applehelp" -version = "1.0.4" -description = "sphinxcontrib-applehelp is a Sphinx extension which outputs Apple help books" -category = "dev" -optional = false -python-versions = ">=3.8" - -[package.extras] -lint = ["docutils-stubs", "flake8", "mypy"] -test = ["pytest"] - -[[package]] -name = "sphinxcontrib-devhelp" -version = "1.0.2" -description = "sphinxcontrib-devhelp is a sphinx extension which outputs Devhelp document." -category = "dev" -optional = false -python-versions = ">=3.5" - -[package.extras] -lint = ["docutils-stubs", "flake8", "mypy"] -test = ["pytest"] - -[[package]] -name = "sphinxcontrib-htmlhelp" -version = "2.0.1" -description = "sphinxcontrib-htmlhelp is a sphinx extension which renders HTML help files" -category = "dev" -optional = false -python-versions = ">=3.8" - -[package.extras] -lint = ["docutils-stubs", "flake8", "mypy"] -test = ["html5lib", "pytest"] - -[[package]] -name = "sphinxcontrib-jquery" -version = "4.1" -description = "Extension to include jQuery on newer Sphinx releases" -category = "dev" -optional = false -python-versions = ">=2.7" - -[package.dependencies] -Sphinx = ">=1.8" - -[[package]] -name = "sphinxcontrib-jsmath" -version = "1.0.1" -description = "A sphinx extension which renders display math in HTML via JavaScript" -category = "dev" -optional = false -python-versions = ">=3.5" - -[package.extras] -test = ["flake8", "mypy", "pytest"] - -[[package]] -name = "sphinxcontrib-qthelp" -version = "1.0.3" -description = "sphinxcontrib-qthelp is a sphinx extension which outputs QtHelp document." -category = "dev" -optional = false -python-versions = ">=3.5" - -[package.extras] -lint = ["docutils-stubs", "flake8", "mypy"] -test = ["pytest"] - -[[package]] -name = "sphinxcontrib-serializinghtml" -version = "1.1.5" -description = "sphinxcontrib-serializinghtml is a sphinx extension which outputs \"serialized\" HTML files (json and pickle)." -category = "dev" -optional = false -python-versions = ">=3.5" - -[package.extras] -lint = ["docutils-stubs", "flake8", "mypy"] -test = ["pytest"] - -[[package]] -name = "stack-data" -version = "0.6.3" -description = "Extract data from python stack frames and tracebacks for informative displays" -category = "dev" -optional = false -python-versions = "*" - -[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" -category = "main" -optional = false -python-versions = ">=3.8" - -[package.dependencies] -numpy = [ - {version = ">=1.18", markers = "python_version != \"3.10\" or platform_system != \"Windows\" or platform_python_implementation == \"PyPy\""}, - {version = ">=1.22.3", markers = "python_version == \"3.10\" and platform_system == \"Windows\" and 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 = "terminado" -version = "0.18.0" -description = "Tornado websocket backend for the Xterm.js Javascript terminal emulator library." -category = "dev" -optional = false -python-versions = ">=3.8" - -[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"] -typing = ["mypy (>=1.6,<2.0)", "traitlets (>=5.11.1)"] - -[[package]] -name = "threadpoolctl" -version = "3.2.0" -description = "threadpoolctl" -category = "main" -optional = false -python-versions = ">=3.8" - -[[package]] -name = "tinycss2" -version = "1.2.1" -description = "A tiny CSS parser" -category = "dev" -optional = false -python-versions = ">=3.7" - -[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" -category = "dev" -optional = false -python-versions = ">=2.6, !=3.0.*, !=3.1.*, !=3.2.*" - -[[package]] -name = "tomli" -version = "2.0.1" -description = "A lil' TOML parser" -category = "main" -optional = false -python-versions = ">=3.7" - -[[package]] -name = "tomlkit" -version = "0.12.3" -description = "Style preserving TOML library" -category = "dev" -optional = false -python-versions = ">=3.7" - -[[package]] -name = "tornado" -version = "6.4" -description = "Tornado is a Python web framework and asynchronous networking library, originally developed at FriendFeed." -category = "dev" -optional = false -python-versions = ">= 3.8" - -[[package]] -name = "tox" -version = "3.28.0" -description = "tox is a generic virtualenv management and test command line tool" -category = "dev" -optional = false -python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,>=2.7" - -[package.dependencies] -colorama = {version = ">=0.4.1", markers = "platform_system == \"Windows\""} -filelock = ">=3.0.0" -packaging = ">=14" -pluggy = ">=0.12.0" -py = ">=1.4.17" -six = ">=1.14.0" -tomli = {version = ">=2.0.1", markers = "python_version >= \"3.7\" and python_version < \"3.11\""} -virtualenv = ">=16.0.0,<20.0.0 || >20.0.0,<20.0.1 || >20.0.1,<20.0.2 || >20.0.2,<20.0.3 || >20.0.3,<20.0.4 || >20.0.4,<20.0.5 || >20.0.5,<20.0.6 || >20.0.6,<20.0.7 || >20.0.7" - -[package.extras] -docs = ["pygments-github-lexers (>=0.0.5)", "sphinx (>=2.0.0)", "sphinxcontrib-autoprogram (>=0.1.5)", "towncrier (>=18.5.0)"] -testing = ["flaky (>=3.4.0)", "freezegun (>=0.3.11)", "pathlib2 (>=2.3.3)", "psutil (>=5.6.1)", "pytest (>=4.0.0)", "pytest-cov (>=2.5.1)", "pytest-mock (>=1.10.0)", "pytest-randomly (>=1.0.0)"] - -[[package]] -name = "traitlets" -version = "5.14.0" -description = "Traitlets Python configuration system" -category = "dev" -optional = false -python-versions = ">=3.8" - -[package.extras] -docs = ["myst-parser", "pydata-sphinx-theme", "sphinx"] -test = ["argcomplete (>=3.0.3)", "mypy (>=1.7.0)", "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" -category = "dev" -optional = false -python-versions = "*" - -[[package]] -name = "types-pytz" -version = "2023.3.1.1" -description = "Typing stubs for pytz" -category = "main" -optional = false -python-versions = "*" - -[[package]] -name = "typing-extensions" -version = "4.9.0" -description = "Backported and Experimental Type Hints for Python 3.8+" -category = "main" -optional = false -python-versions = ">=3.8" - -[[package]] -name = "uri-template" -version = "1.3.0" -description = "RFC 6570 URI Template Processor" -category = "dev" -optional = false -python-versions = ">=3.7" - -[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.1.0" -description = "HTTP library with thread-safe connection pooling, file post, and more." -category = "dev" -optional = false -python-versions = ">=3.8" - -[package.extras] -brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)"] -socks = ["pysocks (>=1.5.6,!=1.5.7,<2.0)"] -zstd = ["zstandard (>=0.18.0)"] - -[[package]] -name = "virtualenv" -version = "20.25.0" -description = "Virtual Python Environment builder" -category = "dev" -optional = false -python-versions = ">=3.7" - -[package.dependencies] -distlib = ">=0.3.7,<1" -filelock = ">=3.12.2,<4" -platformdirs = ">=3.9.1,<5" - -[package.extras] -docs = ["furo (>=2023.7.26)", "proselint (>=0.13)", "sphinx (>=7.1.2)", "sphinx-argparse (>=0.4)", "sphinxcontrib-towncrier (>=0.2.1a0)", "towncrier (>=23.6)"] -test = ["covdefaults (>=2.3)", "coverage (>=7.2.7)", "coverage-enable-subprocess (>=1)", "flaky (>=3.7)", "packaging (>=23.1)", "pytest (>=7.4)", "pytest-env (>=0.8.2)", "pytest-freezer (>=0.4.8)", "pytest-mock (>=3.11.1)", "pytest-randomly (>=3.12)", "pytest-timeout (>=2.1)", "setuptools (>=68)", "time-machine (>=2.10)"] - -[[package]] -name = "wcwidth" -version = "0.2.12" -description = "Measures the displayed width of unicode strings in a terminal" -category = "dev" -optional = false -python-versions = "*" - -[[package]] -name = "webcolors" -version = "1.13" -description = "A library for working with the color formats defined by HTML and CSS." -category = "dev" -optional = false -python-versions = ">=3.7" - -[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" -category = "dev" -optional = false -python-versions = "*" - -[[package]] -name = "websocket-client" -version = "1.7.0" -description = "WebSocket client for Python with low level API options" -category = "dev" -optional = false -python-versions = ">=3.8" - -[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" -category = "dev" -optional = false -python-versions = ">=3.7" - -[metadata] -lock-version = "1.1" -python-versions = ">=3.10,<3.11" -content-hash = "7f22ba50e11ed1e66c838791dd9362a585b8cb17697cc59a822d037c0dfa13b3" - -[metadata.files] -alabaster = [ - {file = "alabaster-0.7.13-py3-none-any.whl", hash = "sha256:1ee19aca801bbabb5ba3f5f258e4422dfa86f82f3e9cefb0859b283cdd7f62a3"}, - {file = "alabaster-0.7.13.tar.gz", hash = "sha256:a27a4a084d5e690e16e01e03ad2b2e552c61a65469419b907243193de1a84ae2"}, -] -antlr4-python3-runtime = [ - {file = "antlr4-python3-runtime-4.9.3.tar.gz", hash = "sha256:f224469b4168294902bb1efa80a8bf7855f24c99aef99cbefc1bcd3cce77881b"}, -] -anyio = [ - {file = "anyio-4.1.0-py3-none-any.whl", hash = "sha256:56a415fbc462291813a94528a779597226619c8e78af7de0507333f700011e5f"}, - {file = "anyio-4.1.0.tar.gz", hash = "sha256:5a0bec7085176715be77df87fc66d6c9d70626bd752fcc85f57cdbee5b3760da"}, -] -appnope = [ - {file = "appnope-0.1.3-py2.py3-none-any.whl", hash = "sha256:265a455292d0bd8a72453494fa24df5a11eb18373a60c7c0430889f22548605e"}, - {file = "appnope-0.1.3.tar.gz", hash = "sha256:02bd91c4de869fbb1e1c50aafc4098827a7a54ab2f39d9dcba6c9547ed920e24"}, -] -argon2-cffi = [ - {file = "argon2_cffi-23.1.0-py3-none-any.whl", hash = "sha256:c670642b78ba29641818ab2e68bd4e6a78ba53b7eff7b4c3815ae16abf91c7ea"}, - {file = "argon2_cffi-23.1.0.tar.gz", hash = "sha256:879c3e79a2729ce768ebb7d36d4609e3a78a4ca2ec3a9f12286ca057e3d0db08"}, -] -argon2-cffi-bindings = [ - {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"}, -] -arrow = [ - {file = "arrow-1.3.0-py3-none-any.whl", hash = "sha256:c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80"}, - {file = "arrow-1.3.0.tar.gz", hash = "sha256:d4540617648cb5f895730f1ad8c82a65f2dad0166f57b75f3ca54759c4d67a85"}, -] -astroid = [ - {file = "astroid-3.0.2-py3-none-any.whl", hash = "sha256:d6e62862355f60e716164082d6b4b041d38e2a8cf1c7cd953ded5108bac8ff5c"}, - {file = "astroid-3.0.2.tar.gz", hash = "sha256:4a61cf0a59097c7bb52689b0fd63717cd2a8a14dc9f1eee97b82d814881c8c91"}, -] -asttokens = [ - {file = "asttokens-2.4.1-py2.py3-none-any.whl", hash = "sha256:051ed49c3dcae8913ea7cd08e46a606dba30b79993209636c4875bc1d637bc24"}, - {file = "asttokens-2.4.1.tar.gz", hash = "sha256:b03869718ba9a6eb027e134bfdf69f38a236d681c83c160d510768af11254ba0"}, -] -async-lru = [ - {file = "async-lru-2.0.4.tar.gz", hash = "sha256:b8a59a5df60805ff63220b2a0c5b5393da5521b113cd5465a44eb037d81a5627"}, - {file = "async_lru-2.0.4-py3-none-any.whl", hash = "sha256:ff02944ce3c288c5be660c42dbcca0742b32c3b279d6dceda655190240b99224"}, -] -atomicwrites = [ - {file = "atomicwrites-1.4.1.tar.gz", hash = "sha256:81b2c9071a49367a7f770170e5eec8cb66567cfbbc8c73d20ce5ca4a8d71cf11"}, -] -attrs = [ - {file = "attrs-23.1.0-py3-none-any.whl", hash = "sha256:1f28b4522cdc2fb4256ac1a020c78acf9cba2c6b461ccd2c126f3aa8e8335d04"}, - {file = "attrs-23.1.0.tar.gz", hash = "sha256:6279836d581513a26f1bf235f9acd333bc9115683f14f7e8fae46c98fc50e015"}, -] -babel = [ - {file = "Babel-2.14.0-py3-none-any.whl", hash = "sha256:efb1a25b7118e67ce3a259bed20545c29cb68be8ad2c784c83689981b7a57287"}, - {file = "Babel-2.14.0.tar.gz", hash = "sha256:6919867db036398ba21eb5c7a0f6b28ab8cbc3ae7a73a44ebe34ae74a4e7d363"}, -] -beautifulsoup4 = [ - {file = "beautifulsoup4-4.12.2-py3-none-any.whl", hash = "sha256:bd2520ca0d9d7d12694a53d44ac482d181b4ec1888909b035a3dbf40d0f57d4a"}, - {file = "beautifulsoup4-4.12.2.tar.gz", hash = "sha256:492bbc69dca35d12daac71c4db1bfff0c876c00ef4a2ffacce226d4638eb72da"}, -] -black = [ - {file = "black-23.1.0-cp310-cp310-macosx_10_16_arm64.whl", hash = "sha256:b6a92a41ee34b883b359998f0c8e6eb8e99803aa8bf3123bf2b2e6fec505a221"}, - {file = "black-23.1.0-cp310-cp310-macosx_10_16_universal2.whl", hash = "sha256:57c18c5165c1dbe291d5306e53fb3988122890e57bd9b3dcb75f967f13411a26"}, - {file = "black-23.1.0-cp310-cp310-macosx_10_16_x86_64.whl", hash = "sha256:9880d7d419bb7e709b37e28deb5e68a49227713b623c72b2b931028ea65f619b"}, - {file = "black-23.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e6663f91b6feca5d06f2ccd49a10f254f9298cc1f7f49c46e498a0771b507104"}, - {file = "black-23.1.0-cp310-cp310-win_amd64.whl", hash = "sha256:9afd3f493666a0cd8f8df9a0200c6359ac53940cbde049dcb1a7eb6ee2dd7074"}, - {file = "black-23.1.0-cp311-cp311-macosx_10_16_arm64.whl", hash = "sha256:bfffba28dc52a58f04492181392ee380e95262af14ee01d4bc7bb1b1c6ca8d27"}, - {file = "black-23.1.0-cp311-cp311-macosx_10_16_universal2.whl", hash = "sha256:c1c476bc7b7d021321e7d93dc2cbd78ce103b84d5a4cf97ed535fbc0d6660648"}, - {file = "black-23.1.0-cp311-cp311-macosx_10_16_x86_64.whl", hash = "sha256:382998821f58e5c8238d3166c492139573325287820963d2f7de4d518bd76958"}, - {file = "black-23.1.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2bf649fda611c8550ca9d7592b69f0637218c2369b7744694c5e4902873b2f3a"}, - {file = "black-23.1.0-cp311-cp311-win_amd64.whl", hash = "sha256:121ca7f10b4a01fd99951234abdbd97728e1240be89fde18480ffac16503d481"}, - {file = "black-23.1.0-cp37-cp37m-macosx_10_16_x86_64.whl", hash = "sha256:a8471939da5e824b891b25751955be52ee7f8a30a916d570a5ba8e0f2eb2ecad"}, - {file = "black-23.1.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8178318cb74f98bc571eef19068f6ab5613b3e59d4f47771582f04e175570ed8"}, - {file = "black-23.1.0-cp37-cp37m-win_amd64.whl", hash = "sha256:a436e7881d33acaf2536c46a454bb964a50eff59b21b51c6ccf5a40601fbef24"}, - {file = "black-23.1.0-cp38-cp38-macosx_10_16_arm64.whl", hash = "sha256:a59db0a2094d2259c554676403fa2fac3473ccf1354c1c63eccf7ae65aac8ab6"}, - {file = "black-23.1.0-cp38-cp38-macosx_10_16_universal2.whl", hash = "sha256:0052dba51dec07ed029ed61b18183942043e00008ec65d5028814afaab9a22fd"}, - {file = "black-23.1.0-cp38-cp38-macosx_10_16_x86_64.whl", hash = "sha256:49f7b39e30f326a34b5c9a4213213a6b221d7ae9d58ec70df1c4a307cf2a1580"}, - {file = "black-23.1.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:162e37d49e93bd6eb6f1afc3e17a3d23a823042530c37c3c42eeeaf026f38468"}, - {file = "black-23.1.0-cp38-cp38-win_amd64.whl", hash = "sha256:8b70eb40a78dfac24842458476135f9b99ab952dd3f2dab738c1881a9b38b753"}, - {file = "black-23.1.0-cp39-cp39-macosx_10_16_arm64.whl", hash = "sha256:a29650759a6a0944e7cca036674655c2f0f63806ddecc45ed40b7b8aa314b651"}, - {file = "black-23.1.0-cp39-cp39-macosx_10_16_universal2.whl", hash = "sha256:bb460c8561c8c1bec7824ecbc3ce085eb50005883a6203dcfb0122e95797ee06"}, - {file = "black-23.1.0-cp39-cp39-macosx_10_16_x86_64.whl", hash = "sha256:c91dfc2c2a4e50df0026f88d2215e166616e0c80e86004d0003ece0488db2739"}, - {file = "black-23.1.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2a951cc83ab535d248c89f300eccbd625e80ab880fbcfb5ac8afb5f01a258ac9"}, - {file = "black-23.1.0-cp39-cp39-win_amd64.whl", hash = "sha256:0680d4380db3719ebcfb2613f34e86c8e6d15ffeabcf8ec59355c5e7b85bb555"}, - {file = "black-23.1.0-py3-none-any.whl", hash = "sha256:7a0f701d314cfa0896b9001df70a530eb2472babb76086344e688829efd97d32"}, - {file = "black-23.1.0.tar.gz", hash = "sha256:b0bd97bea8903f5a2ba7219257a44e3f1f9d00073d6cc1add68f0beec69692ac"}, -] -bleach = [ - {file = "bleach-6.1.0-py3-none-any.whl", hash = "sha256:3225f354cfc436b9789c66c4ee030194bee0568fbf9cbdad3bc8b5c26c5f12b6"}, - {file = "bleach-6.1.0.tar.gz", hash = "sha256:0a31f1837963c41d46bbf1331b8778e1308ea0791db03cc4e7357b97cf42a8fe"}, -] -certifi = [ - {file = "certifi-2023.11.17-py3-none-any.whl", hash = "sha256:e036ab49d5b79556f99cfc2d9320b34cfbe5be05c5871b51de9329f0603b0474"}, - {file = "certifi-2023.11.17.tar.gz", hash = "sha256:9b469f3a900bf28dc19b8cfbf8019bf47f7fdd1a65a1d4ffb98fc14166beb4d1"}, -] -cffi = [ - {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"}, -] -charset-normalizer = [ - {file = "charset-normalizer-3.3.2.tar.gz", hash = "sha256:f30c3cb33b24454a82faecaf01b19c18562b1e89558fb6c56de4d9118a032fd5"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:25baf083bf6f6b341f4121c2f3c548875ee6f5339300e08be3f2b2ba1721cdd3"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:06435b539f889b1f6f4ac1758871aae42dc3a8c0e24ac9e60c2384973ad73027"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9063e24fdb1e498ab71cb7419e24622516c4a04476b17a2dab57e8baa30d6e03"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6897af51655e3691ff853668779c7bad41579facacf5fd7253b0133308cf000d"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1d3193f4a680c64b4b6a9115943538edb896edc190f0b222e73761716519268e"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:cd70574b12bb8a4d2aaa0094515df2463cb429d8536cfb6c7ce983246983e5a6"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8465322196c8b4d7ab6d1e049e4c5cb460d0394da4a27d23cc242fbf0034b6b5"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a9a8e9031d613fd2009c182b69c7b2c1ef8239a0efb1df3f7c8da66d5dd3d537"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:beb58fe5cdb101e3a055192ac291b7a21e3b7ef4f67fa1d74e331a7f2124341c"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:e06ed3eb3218bc64786f7db41917d4e686cc4856944f53d5bdf83a6884432e12"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:2e81c7b9c8979ce92ed306c249d46894776a909505d8f5a4ba55b14206e3222f"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:572c3763a264ba47b3cf708a44ce965d98555f618ca42c926a9c1616d8f34269"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:fd1abc0d89e30cc4e02e4064dc67fcc51bd941eb395c502aac3ec19fab46b519"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-win32.whl", hash = "sha256:3d47fa203a7bd9c5b6cee4736ee84ca03b8ef23193c0d1ca99b5089f72645c73"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-win_amd64.whl", hash = "sha256:10955842570876604d404661fbccbc9c7e684caf432c09c715ec38fbae45ae09"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:802fe99cca7457642125a8a88a084cef28ff0cf9407060f7b93dca5aa25480db"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:573f6eac48f4769d667c4442081b1794f52919e7edada77495aaed9236d13a96"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:549a3a73da901d5bc3ce8d24e0600d1fa85524c10287f6004fbab87672bf3e1e"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f27273b60488abe721a075bcca6d7f3964f9f6f067c8c4c605743023d7d3944f"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1ceae2f17a9c33cb48e3263960dc5fc8005351ee19db217e9b1bb15d28c02574"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:65f6f63034100ead094b8744b3b97965785388f308a64cf8d7c34f2f2e5be0c4"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:753f10e867343b4511128c6ed8c82f7bec3bd026875576dfd88483c5c73b2fd8"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:4a78b2b446bd7c934f5dcedc588903fb2f5eec172f3d29e52a9096a43722adfc"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:e537484df0d8f426ce2afb2d0f8e1c3d0b114b83f8850e5f2fbea0e797bd82ae"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:eb6904c354526e758fda7167b33005998fb68c46fbc10e013ca97f21ca5c8887"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:deb6be0ac38ece9ba87dea880e438f25ca3eddfac8b002a2ec3d9183a454e8ae"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:4ab2fe47fae9e0f9dee8c04187ce5d09f48eabe611be8259444906793ab7cbce"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:80402cd6ee291dcb72644d6eac93785fe2c8b9cb30893c1af5b8fdd753b9d40f"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-win32.whl", hash = "sha256:7cd13a2e3ddeed6913a65e66e94b51d80a041145a026c27e6bb76c31a853c6ab"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-win_amd64.whl", hash = "sha256:663946639d296df6a2bb2aa51b60a2454ca1cb29835324c640dafb5ff2131a77"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:0b2b64d2bb6d3fb9112bafa732def486049e63de9618b5843bcdd081d8144cd8"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:ddbb2551d7e0102e7252db79ba445cdab71b26640817ab1e3e3648dad515003b"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:55086ee1064215781fff39a1af09518bc9255b50d6333f2e4c74ca09fac6a8f6"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8f4a014bc36d3c57402e2977dada34f9c12300af536839dc38c0beab8878f38a"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:a10af20b82360ab00827f916a6058451b723b4e65030c5a18577c8b2de5b3389"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8d756e44e94489e49571086ef83b2bb8ce311e730092d2c34ca8f7d925cb20aa"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:90d558489962fd4918143277a773316e56c72da56ec7aa3dc3dbbe20fdfed15b"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6ac7ffc7ad6d040517be39eb591cac5ff87416c2537df6ba3cba3bae290c0fed"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:7ed9e526742851e8d5cc9e6cf41427dfc6068d4f5a3bb03659444b4cabf6bc26"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:8bdb58ff7ba23002a4c5808d608e4e6c687175724f54a5dade5fa8c67b604e4d"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:6b3251890fff30ee142c44144871185dbe13b11bab478a88887a639655be1068"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:b4a23f61ce87adf89be746c8a8974fe1c823c891d8f86eb218bb957c924bb143"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:efcb3f6676480691518c177e3b465bcddf57cea040302f9f4e6e191af91174d4"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-win32.whl", hash = "sha256:d965bba47ddeec8cd560687584e88cf699fd28f192ceb452d1d7ee807c5597b7"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-win_amd64.whl", hash = "sha256:96b02a3dc4381e5494fad39be677abcb5e6634bf7b4fa83a6dd3112607547001"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:95f2a5796329323b8f0512e09dbb7a1860c46a39da62ecb2324f116fa8fdc85c"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c002b4ffc0be611f0d9da932eb0f704fe2602a9a949d1f738e4c34c75b0863d5"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:a981a536974bbc7a512cf44ed14938cf01030a99e9b3a06dd59578882f06f985"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:3287761bc4ee9e33561a7e058c72ac0938c4f57fe49a09eae428fd88aafe7bb6"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:42cb296636fcc8b0644486d15c12376cb9fa75443e00fb25de0b8602e64c1714"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:0a55554a2fa0d408816b3b5cedf0045f4b8e1a6065aec45849de2d6f3f8e9786"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:c083af607d2515612056a31f0a8d9e0fcb5876b7bfc0abad3ecd275bc4ebc2d5"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:87d1351268731db79e0f8e745d92493ee2841c974128ef629dc518b937d9194c"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-musllinux_1_1_ppc64le.whl", hash = "sha256:bd8f7df7d12c2db9fab40bdd87a7c09b1530128315d047a086fa3ae3435cb3a8"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-musllinux_1_1_s390x.whl", hash = "sha256:c180f51afb394e165eafe4ac2936a14bee3eb10debc9d9e4db8958fe36afe711"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:8c622a5fe39a48f78944a87d4fb8a53ee07344641b0562c540d840748571b811"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-win32.whl", hash = "sha256:db364eca23f876da6f9e16c9da0df51aa4f104a972735574842618b8c6d999d4"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-win_amd64.whl", hash = "sha256:86216b5cee4b06df986d214f664305142d9c76df9b6512be2738aa72a2048f99"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:6463effa3186ea09411d50efc7d85360b38d5f09b870c48e4600f63af490e56a"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:6c4caeef8fa63d06bd437cd4bdcf3ffefe6738fb1b25951440d80dc7df8c03ac"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:37e55c8e51c236f95b033f6fb391d7d7970ba5fe7ff453dad675e88cf303377a"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:fb69256e180cb6c8a894fee62b3afebae785babc1ee98b81cdf68bbca1987f33"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ae5f4161f18c61806f411a13b0310bea87f987c7d2ecdbdaad0e94eb2e404238"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b2b0a0c0517616b6869869f8c581d4eb2dd83a4d79e0ebcb7d373ef9956aeb0a"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:45485e01ff4d3630ec0d9617310448a8702f70e9c01906b0d0118bdf9d124cf2"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:eb00ed941194665c332bf8e078baf037d6c35d7c4f3102ea2d4f16ca94a26dc8"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:2127566c664442652f024c837091890cb1942c30937add288223dc895793f898"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:a50aebfa173e157099939b17f18600f72f84eed3049e743b68ad15bd69b6bf99"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:4d0d1650369165a14e14e1e47b372cfcb31d6ab44e6e33cb2d4e57265290044d"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:923c0c831b7cfcb071580d3f46c4baf50f174be571576556269530f4bbd79d04"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:06a81e93cd441c56a9b65d8e1d043daeb97a3d0856d177d5c90ba85acb3db087"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-win32.whl", hash = "sha256:6ef1d82a3af9d3eecdba2321dc1b3c238245d890843e040e41e470ffa64c3e25"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-win_amd64.whl", hash = "sha256:eb8821e09e916165e160797a6c17edda0679379a4be5c716c260e836e122f54b"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:c235ebd9baae02f1b77bcea61bce332cb4331dc3617d254df3323aa01ab47bd4"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:5b4c145409bef602a690e7cfad0a15a55c13320ff7a3ad7ca59c13bb8ba4d45d"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:68d1f8a9e9e37c1223b656399be5d6b448dea850bed7d0f87a8311f1ff3dabb0"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:22afcb9f253dac0696b5a4be4a1c0f8762f8239e21b99680099abd9b2b1b2269"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:e27ad930a842b4c5eb8ac0016b0a54f5aebbe679340c26101df33424142c143c"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:1f79682fbe303db92bc2b1136016a38a42e835d932bab5b3b1bfcfbf0640e519"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b261ccdec7821281dade748d088bb6e9b69e6d15b30652b74cbbac25e280b796"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:122c7fa62b130ed55f8f285bfd56d5f4b4a5b503609d181f9ad85e55c89f4185"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:d0eccceffcb53201b5bfebb52600a5fb483a20b61da9dbc885f8b103cbe7598c"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:9f96df6923e21816da7e0ad3fd47dd8f94b2a5ce594e00677c0013018b813458"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:7f04c839ed0b6b98b1a7501a002144b76c18fb1c1850c8b98d458ac269e26ed2"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:34d1c8da1e78d2e001f363791c98a272bb734000fcef47a491c1e3b0505657a8"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:ff8fa367d09b717b2a17a052544193ad76cd49979c805768879cb63d9ca50561"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-win32.whl", hash = "sha256:aed38f6e4fb3f5d6bf81bfa990a07806be9d83cf7bacef998ab1a9bd660a581f"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-win_amd64.whl", hash = "sha256:b01b88d45a6fcb69667cd6d2f7a9aeb4bf53760d7fc536bf679ec94fe9f3ff3d"}, - {file = "charset_normalizer-3.3.2-py3-none-any.whl", hash = "sha256:3e4d1f6587322d2788836a99c69062fbb091331ec940e02d12d179c1d53e25fc"}, -] -click = [ - {file = "click-8.1.7-py3-none-any.whl", hash = "sha256:ae74fb96c20a0277a1d615f1e4d73c8414f5a98db8b799a7931d1582f3390c28"}, - {file = "click-8.1.7.tar.gz", hash = "sha256:ca9853ad459e787e2192211578cc907e7594e294c7ccc834310722b41b9ca6de"}, -] -colorama = [ - {file = "colorama-0.4.6-py2.py3-none-any.whl", hash = "sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6"}, - {file = "colorama-0.4.6.tar.gz", hash = "sha256:08695f5cb7ed6e0531a20572697297273c47b8cae5a63ffc6d6ed5c201be6e44"}, -] -comm = [ - {file = "comm-0.2.0-py3-none-any.whl", hash = "sha256:2da8d9ebb8dd7bfc247adaff99f24dce705638a8042b85cb995066793e391001"}, - {file = "comm-0.2.0.tar.gz", hash = "sha256:a517ea2ca28931c7007a7a99c562a0fa5883cfb48963140cf642c41c948498be"}, -] -contourpy = [ - {file = "contourpy-1.2.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:0274c1cb63625972c0c007ab14dd9ba9e199c36ae1a231ce45d725cbcbfd10a8"}, - {file = "contourpy-1.2.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:ab459a1cbbf18e8698399c595a01f6dcc5c138220ca3ea9e7e6126232d102bb4"}, - {file = "contourpy-1.2.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6fdd887f17c2f4572ce548461e4f96396681212d858cae7bd52ba3310bc6f00f"}, - {file = "contourpy-1.2.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:5d16edfc3fc09968e09ddffada434b3bf989bf4911535e04eada58469873e28e"}, - {file = "contourpy-1.2.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:1c203f617abc0dde5792beb586f827021069fb6d403d7f4d5c2b543d87edceb9"}, - {file = "contourpy-1.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b69303ceb2e4d4f146bf82fda78891ef7bcd80c41bf16bfca3d0d7eb545448aa"}, - {file = "contourpy-1.2.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:884c3f9d42d7218304bc74a8a7693d172685c84bd7ab2bab1ee567b769696df9"}, - {file = "contourpy-1.2.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:4a1b1208102be6e851f20066bf0e7a96b7d48a07c9b0cfe6d0d4545c2f6cadab"}, - {file = "contourpy-1.2.0-cp310-cp310-win32.whl", hash = "sha256:34b9071c040d6fe45d9826cbbe3727d20d83f1b6110d219b83eb0e2a01d79488"}, - {file = "contourpy-1.2.0-cp310-cp310-win_amd64.whl", hash = "sha256:bd2f1ae63998da104f16a8b788f685e55d65760cd1929518fd94cd682bf03e41"}, - {file = "contourpy-1.2.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:dd10c26b4eadae44783c45ad6655220426f971c61d9b239e6f7b16d5cdaaa727"}, - {file = "contourpy-1.2.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:5c6b28956b7b232ae801406e529ad7b350d3f09a4fde958dfdf3c0520cdde0dd"}, - {file = "contourpy-1.2.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ebeac59e9e1eb4b84940d076d9f9a6cec0064e241818bcb6e32124cc5c3e377a"}, - {file = "contourpy-1.2.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:139d8d2e1c1dd52d78682f505e980f592ba53c9f73bd6be102233e358b401063"}, - {file = "contourpy-1.2.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:1e9dc350fb4c58adc64df3e0703ab076f60aac06e67d48b3848c23647ae4310e"}, - {file = "contourpy-1.2.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:18fc2b4ed8e4a8fe849d18dce4bd3c7ea637758c6343a1f2bae1e9bd4c9f4686"}, - {file = "contourpy-1.2.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:16a7380e943a6d52472096cb7ad5264ecee36ed60888e2a3d3814991a0107286"}, - {file = "contourpy-1.2.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:8d8faf05be5ec8e02a4d86f616fc2a0322ff4a4ce26c0f09d9f7fb5330a35c95"}, - {file = "contourpy-1.2.0-cp311-cp311-win32.whl", hash = "sha256:67b7f17679fa62ec82b7e3e611c43a016b887bd64fb933b3ae8638583006c6d6"}, - {file = "contourpy-1.2.0-cp311-cp311-win_amd64.whl", hash = "sha256:99ad97258985328b4f207a5e777c1b44a83bfe7cf1f87b99f9c11d4ee477c4de"}, - {file = "contourpy-1.2.0-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:575bcaf957a25d1194903a10bc9f316c136c19f24e0985a2b9b5608bdf5dbfe0"}, - {file = "contourpy-1.2.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:9e6c93b5b2dbcedad20a2f18ec22cae47da0d705d454308063421a3b290d9ea4"}, - {file = "contourpy-1.2.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:464b423bc2a009088f19bdf1f232299e8b6917963e2b7e1d277da5041f33a779"}, - {file = "contourpy-1.2.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:68ce4788b7d93e47f84edd3f1f95acdcd142ae60bc0e5493bfd120683d2d4316"}, - {file = "contourpy-1.2.0-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:3d7d1f8871998cdff5d2ff6a087e5e1780139abe2838e85b0b46b7ae6cc25399"}, - {file = "contourpy-1.2.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6e739530c662a8d6d42c37c2ed52a6f0932c2d4a3e8c1f90692ad0ce1274abe0"}, - {file = "contourpy-1.2.0-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:247b9d16535acaa766d03037d8e8fb20866d054d3c7fbf6fd1f993f11fc60ca0"}, - {file = "contourpy-1.2.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:461e3ae84cd90b30f8d533f07d87c00379644205b1d33a5ea03381edc4b69431"}, - {file = "contourpy-1.2.0-cp312-cp312-win32.whl", hash = "sha256:1c2559d6cffc94890b0529ea7eeecc20d6fadc1539273aa27faf503eb4656d8f"}, - {file = "contourpy-1.2.0-cp312-cp312-win_amd64.whl", hash = "sha256:491b1917afdd8638a05b611a56d46587d5a632cabead889a5440f7c638bc6ed9"}, - {file = "contourpy-1.2.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:5fd1810973a375ca0e097dee059c407913ba35723b111df75671a1976efa04bc"}, - {file = "contourpy-1.2.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:999c71939aad2780f003979b25ac5b8f2df651dac7b38fb8ce6c46ba5abe6ae9"}, - {file = "contourpy-1.2.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b7caf9b241464c404613512d5594a6e2ff0cc9cb5615c9475cc1d9b514218ae8"}, - {file = "contourpy-1.2.0-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:266270c6f6608340f6c9836a0fb9b367be61dde0c9a9a18d5ece97774105ff3e"}, - {file = "contourpy-1.2.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:dbd50d0a0539ae2e96e537553aff6d02c10ed165ef40c65b0e27e744a0f10af8"}, - {file = "contourpy-1.2.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:11f8d2554e52f459918f7b8e6aa20ec2a3bce35ce95c1f0ef4ba36fbda306df5"}, - {file = "contourpy-1.2.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:ce96dd400486e80ac7d195b2d800b03e3e6a787e2a522bfb83755938465a819e"}, - {file = "contourpy-1.2.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:6d3364b999c62f539cd403f8123ae426da946e142312a514162adb2addd8d808"}, - {file = "contourpy-1.2.0-cp39-cp39-win32.whl", hash = "sha256:1c88dfb9e0c77612febebb6ac69d44a8d81e3dc60f993215425b62c1161353f4"}, - {file = "contourpy-1.2.0-cp39-cp39-win_amd64.whl", hash = "sha256:78e6ad33cf2e2e80c5dfaaa0beec3d61face0fb650557100ee36db808bfa6843"}, - {file = "contourpy-1.2.0-pp39-pypy39_pp73-macosx_10_9_x86_64.whl", hash = "sha256:be16975d94c320432657ad2402f6760990cb640c161ae6da1363051805fa8108"}, - {file = "contourpy-1.2.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b95a225d4948b26a28c08307a60ac00fb8671b14f2047fc5476613252a129776"}, - {file = "contourpy-1.2.0-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:0d7e03c0f9a4f90dc18d4e77e9ef4ec7b7bbb437f7f675be8e530d65ae6ef956"}, - {file = "contourpy-1.2.0.tar.gz", hash = "sha256:171f311cb758de7da13fc53af221ae47a5877be5a0843a9fe150818c51ed276a"}, -] -coverage = [ - {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"}, -] -cycler = [ - {file = "cycler-0.12.1-py3-none-any.whl", hash = "sha256:85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30"}, - {file = "cycler-0.12.1.tar.gz", hash = "sha256:88bb128f02ba341da8ef447245a9e138fae777f6a23943da4540077d3601eb1c"}, -] -debugpy = [ - {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"}, -] -decorator = [ - {file = "decorator-5.1.1-py3-none-any.whl", hash = "sha256:b8c3f85900b9dc423225913c5aace94729fe1fa9763b38939a95226f02d37186"}, - {file = "decorator-5.1.1.tar.gz", hash = "sha256:637996211036b6385ef91435e4fae22989472f9d571faba8927ba8253acbc330"}, -] -defusedxml = [ - {file = "defusedxml-0.7.1-py2.py3-none-any.whl", hash = "sha256:a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61"}, - {file = "defusedxml-0.7.1.tar.gz", hash = "sha256:1bb3032db185915b62d7c6209c5a8792be6a32ab2fedacc84e01b52c51aa3e69"}, -] -dill = [ - {file = "dill-0.3.7-py3-none-any.whl", hash = "sha256:76b122c08ef4ce2eedcd4d1abd8e641114bfc6c2867f49f3c41facf65bf19f5e"}, - {file = "dill-0.3.7.tar.gz", hash = "sha256:cc1c8b182eb3013e24bd475ff2e9295af86c1a38eb1aff128dac8962a9ce3c03"}, -] -distlib = [ - {file = "distlib-0.3.8-py2.py3-none-any.whl", hash = "sha256:034db59a0b96f8ca18035f36290806a9a6e6bd9d1ff91e45a7f172eb17e51784"}, - {file = "distlib-0.3.8.tar.gz", hash = "sha256:1530ea13e350031b6312d8580ddb6b27a104275a31106523b8f123787f494f64"}, -] -docutils = [ - {file = "docutils-0.17.1-py2.py3-none-any.whl", hash = "sha256:cf316c8370a737a022b72b56874f6602acf974a37a9fba42ec2876387549fc61"}, - {file = "docutils-0.17.1.tar.gz", hash = "sha256:686577d2e4c32380bb50cbb22f575ed742d58168cee37e99117a854bcd88f125"}, -] -exceptiongroup = [ - {file = "exceptiongroup-1.2.0-py3-none-any.whl", hash = "sha256:4bfd3996ac73b41e9b9628b04e079f193850720ea5945fc96a08633c66912f14"}, - {file = "exceptiongroup-1.2.0.tar.gz", hash = "sha256:91f5c769735f051a4290d52edd0858999b57e5876e9f85937691bd4c9fa3ed68"}, -] -executing = [ - {file = "executing-2.0.1-py2.py3-none-any.whl", hash = "sha256:eac49ca94516ccc753f9fb5ce82603156e590b27525a8bc32cce8ae302eb61bc"}, - {file = "executing-2.0.1.tar.gz", hash = "sha256:35afe2ce3affba8ee97f2d69927fa823b08b472b7b994e36a52a964b93d16147"}, -] -fastjsonschema = [ - {file = "fastjsonschema-2.19.0-py3-none-any.whl", hash = "sha256:b9fd1a2dd6971dbc7fee280a95bd199ae0dd9ce22beb91cc75e9c1c528a5170e"}, - {file = "fastjsonschema-2.19.0.tar.gz", hash = "sha256:e25df6647e1bc4a26070b700897b07b542ec898dd4f1f6ea013e7f6a88417225"}, -] -filelock = [ - {file = "filelock-3.13.1-py3-none-any.whl", hash = "sha256:57dbda9b35157b05fb3e58ee91448612eb674172fab98ee235ccb0b5bee19a1c"}, - {file = "filelock-3.13.1.tar.gz", hash = "sha256:521f5f56c50f8426f5e03ad3b281b490a87ef15bc6c526f168290f0c7148d44e"}, -] -fonttools = [ - {file = "fonttools-4.46.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:d4e69e2c7f93b695d2e6f18f709d501d945f65c1d237dafaabdd23cd935a5276"}, - {file = "fonttools-4.46.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:25852f0c63df0af022f698464a4a80f7d1d5bd974bcd22f995f6b4ad198e32dd"}, - {file = "fonttools-4.46.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:adab73618d0a328b203a0e242b3eba60a2b5662d9cb2bd16ed9c52af8a7d86af"}, - {file = "fonttools-4.46.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2cf923a4a556ab4cc4c52f69a4a2db624cf5a2cf360394368b40c5152fe3321e"}, - {file = "fonttools-4.46.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:87c214197712cc14fd2a4621efce2a9c501a77041232b789568149a8a3161517"}, - {file = "fonttools-4.46.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:156ae342a1ed1fe38e180de471e98fbf5b2b6ae280fa3323138569c4ca215844"}, - {file = "fonttools-4.46.0-cp310-cp310-win32.whl", hash = "sha256:c506e3d3a9e898caee4dc094f34b49c5566870d5a2d1ca2125f0a9f35ecc2205"}, - {file = "fonttools-4.46.0-cp310-cp310-win_amd64.whl", hash = "sha256:f8bc3973ed58893c4107993e0a7ae34901cb572b5e798249cbef35d30801ffd4"}, - {file = "fonttools-4.46.0-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:982f69855ac258260f51048d9e0c53c5f19881138cc7ca06deb38dc4b97404b6"}, - {file = "fonttools-4.46.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:2c23c59d321d62588620f2255cf951270bf637d88070f38ed8b5e5558775b86c"}, - {file = "fonttools-4.46.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a0e94244ec24a940ecfbe5b31c975c8a575d5ed2d80f9a280ce3b21fa5dc9c34"}, - {file = "fonttools-4.46.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1a9f9cdd7ef63d1b8ac90db335762451452426b3207abd79f60da510cea62da5"}, - {file = "fonttools-4.46.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:ca9eceebe70035b057ce549e2054cad73e95cac3fe91a9d827253d1c14618204"}, - {file = "fonttools-4.46.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:8be6adfa4e15977075278dd0a0bae74dec59be7b969b5ceed93fb86af52aa5be"}, - {file = "fonttools-4.46.0-cp311-cp311-win32.whl", hash = "sha256:7b5636f5706d49f13b6d610fe54ee662336cdf56b5a6f6683c0b803e23d826d2"}, - {file = "fonttools-4.46.0-cp311-cp311-win_amd64.whl", hash = "sha256:49ea0983e55fd7586a809787cd4644a7ae471e53ab8ddc016f9093b400e32646"}, - {file = "fonttools-4.46.0-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:7b460720ce81773da1a3e7cc964c48e1e11942b280619582a897fa0117b56a62"}, - {file = "fonttools-4.46.0-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:8bee9f4fc8c99824a424ae45c789ee8c67cb84f8e747afa7f83b7d3cef439c3b"}, - {file = "fonttools-4.46.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d3d7b96aba96e05e8c911ce2dfc5acc6a178b8f44f6aa69371ab91aa587563da"}, - {file = "fonttools-4.46.0-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9e6aeb5c340416d11a3209d75c48d13e72deea9e1517837dd1522c1fd1f17c11"}, - {file = "fonttools-4.46.0-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:c779f8701deedf41908f287aeb775b8a6f59875ad1002b98ac6034ae4ddc1b7b"}, - {file = "fonttools-4.46.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:ce199227ce7921eaafdd4f96536f16b232d6b580ce74ce337de544bf06cb2752"}, - {file = "fonttools-4.46.0-cp312-cp312-win32.whl", hash = "sha256:1c9937c4dd1061afd22643389445fabda858af5e805860ec3082a4bc07c7a720"}, - {file = "fonttools-4.46.0-cp312-cp312-win_amd64.whl", hash = "sha256:a9fa52ef8fd14d7eb3d813e1451e7ace3e1eebfa9b7237d3f81fee8f3de6a114"}, - {file = "fonttools-4.46.0-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:c94564b1f3b5dd87e73577610d85115b1936edcc596deaf84a31bbe70e17456b"}, - {file = "fonttools-4.46.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:a4a50a1dfad7f7ba5ca3f99cc73bf5cdac67ceade8e4b355a877521f20ad1b63"}, - {file = "fonttools-4.46.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:89c2c520f9492844ecd6316d20c6c7a157b5c0cb73a1411b3db28ee304f30122"}, - {file = "fonttools-4.46.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e5b7905fd68eacb7cc56a13139da5c312c45baae6950dd00b02563c54508a041"}, - {file = "fonttools-4.46.0-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:8485cc468288e213f31afdaf1fdda3c79010f542559fbba936a54f4644df2570"}, - {file = "fonttools-4.46.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:87c3299da7da55394fb324349db0ede38114a46aafd0e7dfcabfecd28cdd94c3"}, - {file = "fonttools-4.46.0-cp38-cp38-win32.whl", hash = "sha256:f5f1423a504ccc329efb5aa79738de83d38c072be5308788dde6bd419969d7f5"}, - {file = "fonttools-4.46.0-cp38-cp38-win_amd64.whl", hash = "sha256:6d4a4ebcc76e30898ff3296ea786491c70e183f738319ae2629e0d44f17ece42"}, - {file = "fonttools-4.46.0-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:c9a0e422ab79e5cb2b47913be6a4b5fd20c4c7ac34a24f3691a4e099e965e0b8"}, - {file = "fonttools-4.46.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:13ac0cba2fc63fa4b232f2a7971f35f35c6eaf10bd1271fa96d4ce6253a8acfd"}, - {file = "fonttools-4.46.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:795150d5edc595e1a2cfb3d65e8f4f3d027704fc2579f8990d381bef6b188eb6"}, - {file = "fonttools-4.46.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d00fc63131dcac6b25f50a5a129758438317e54e3ce5587163f7058de4b0e933"}, - {file = "fonttools-4.46.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:3033b55f401a622de2630b3982234d97219d89b058607b87927eccb0f922313c"}, - {file = "fonttools-4.46.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:e26e7fb908ae4f622813e7cb32cd2db6c24e3122bb3b98f25e832a2fe0e7e228"}, - {file = "fonttools-4.46.0-cp39-cp39-win32.whl", hash = "sha256:2d0eba685938c603f2f648dfc0aadbf8c6a4fe1c7ca608c2970a6ef39e00f254"}, - {file = "fonttools-4.46.0-cp39-cp39-win_amd64.whl", hash = "sha256:5200b01f463d97cc2b7ff8a1e3584151f4413e98cb8419da5f17d1dbb84cc214"}, - {file = "fonttools-4.46.0-py3-none-any.whl", hash = "sha256:5b627ed142398ea9202bd752c04311592558964d1a765fb2f78dc441a05633f4"}, - {file = "fonttools-4.46.0.tar.gz", hash = "sha256:2ae45716c27a41807d58a9f3f59983bdc8c0a46cb259e4450ab7e196253a9853"}, -] -fqdn = [ - {file = "fqdn-1.5.1-py3-none-any.whl", hash = "sha256:3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014"}, - {file = "fqdn-1.5.1.tar.gz", hash = "sha256:105ed3677e767fb5ca086a0c1f4bb66ebc3c100be518f0e0d755d9eae164d89f"}, -] -hydra-core = [ - {file = "hydra-core-1.3.2.tar.gz", hash = "sha256:8a878ed67216997c3e9d88a8e72e7b4767e81af37afb4ea3334b269a4390a824"}, - {file = "hydra_core-1.3.2-py3-none-any.whl", hash = "sha256:fa0238a9e31df3373b35b0bfb672c34cc92718d21f81311d8996a16de1141d8b"}, -] -idna = [ - {file = "idna-3.6-py3-none-any.whl", hash = "sha256:c05567e9c24a6b9faaa835c4821bad0590fbb9d5779e7caa6e1cc4978e7eb24f"}, - {file = "idna-3.6.tar.gz", hash = "sha256:9ecdbbd083b06798ae1e86adcbfe8ab1479cf864e4ee30fe4e46a003d12491ca"}, -] -imagesize = [ - {file = "imagesize-1.4.1-py2.py3-none-any.whl", hash = "sha256:0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b"}, - {file = "imagesize-1.4.1.tar.gz", hash = "sha256:69150444affb9cb0d5cc5a92b3676f0b2fb7cd9ae39e947a5e11a36b4497cd4a"}, -] -iniconfig = [ - {file = "iniconfig-2.0.0-py3-none-any.whl", hash = "sha256:b6a85871a79d2e3b22d2d1b94ac2824226a63c6b741c88f7ae975f18b6778374"}, - {file = "iniconfig-2.0.0.tar.gz", hash = "sha256:2d91e135bf72d31a410b17c16da610a82cb55f6b0477d1a902134b24a455b8b3"}, -] -ipykernel = [ - {file = "ipykernel-6.27.1-py3-none-any.whl", hash = "sha256:dab88b47f112f9f7df62236511023c9bdeef67abc73af7c652e4ce4441601686"}, - {file = "ipykernel-6.27.1.tar.gz", hash = "sha256:7d5d594b6690654b4d299edba5e872dc17bb7396a8d0609c97cb7b8a1c605de6"}, -] -ipython = [ - {file = "ipython-8.18.1-py3-none-any.whl", hash = "sha256:e8267419d72d81955ec1177f8a29aaa90ac80ad647499201119e2f05e99aa397"}, - {file = "ipython-8.18.1.tar.gz", hash = "sha256:ca6f079bb33457c66e233e4580ebfc4128855b4cf6370dddd73842a9563e8a27"}, -] -ipywidgets = [ - {file = "ipywidgets-8.1.1-py3-none-any.whl", hash = "sha256:2b88d728656aea3bbfd05d32c747cfd0078f9d7e159cf982433b58ad717eed7f"}, - {file = "ipywidgets-8.1.1.tar.gz", hash = "sha256:40211efb556adec6fa450ccc2a77d59ca44a060f4f9f136833df59c9f538e6e8"}, -] -isoduration = [ - {file = "isoduration-20.11.0-py3-none-any.whl", hash = "sha256:b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042"}, - {file = "isoduration-20.11.0.tar.gz", hash = "sha256:ac2f9015137935279eac671f94f89eb00584f940f5dc49462a0c4ee692ba1bd9"}, -] -isort = [ - {file = "isort-5.13.1-py3-none-any.whl", hash = "sha256:56a51732c25f94ca96f6721be206dd96a95f42950502eb26c1015d333bc6edb7"}, - {file = "isort-5.13.1.tar.gz", hash = "sha256:aaed790b463e8703fb1eddb831dfa8e8616bacde2c083bd557ef73c8189b7263"}, -] -jedi = [ - {file = "jedi-0.19.1-py2.py3-none-any.whl", hash = "sha256:e983c654fe5c02867aef4cdfce5a2fbb4a50adc0af145f70504238f18ef5e7e0"}, - {file = "jedi-0.19.1.tar.gz", hash = "sha256:cf0496f3651bc65d7174ac1b7d043eff454892c708a87d1b683e57b569927ffd"}, -] -jinja2 = [ - {file = "Jinja2-3.1.2-py3-none-any.whl", hash = "sha256:6088930bfe239f0e6710546ab9c19c9ef35e29792895fed6e6e31a023a182a61"}, - {file = "Jinja2-3.1.2.tar.gz", hash = "sha256:31351a702a408a9e7595a8fc6150fc3f43bb6bf7e319770cbc0db9df9437e852"}, -] -joblib = [ - {file = "joblib-1.3.2-py3-none-any.whl", hash = "sha256:ef4331c65f239985f3f2220ecc87db222f08fd22097a3dd5698f693875f8cbb9"}, - {file = "joblib-1.3.2.tar.gz", hash = "sha256:92f865e621e17784e7955080b6d042489e3b8e294949cc44c6eac304f59772b1"}, -] -json5 = [ - {file = "json5-0.9.14-py2.py3-none-any.whl", hash = "sha256:740c7f1b9e584a468dbb2939d8d458db3427f2c93ae2139d05f47e453eae964f"}, - {file = "json5-0.9.14.tar.gz", hash = "sha256:9ed66c3a6ca3510a976a9ef9b8c0787de24802724ab1860bc0153c7fdd589b02"}, -] -jsonpointer = [ - {file = "jsonpointer-2.4-py2.py3-none-any.whl", hash = "sha256:15d51bba20eea3165644553647711d150376234112651b4f1811022aecad7d7a"}, - {file = "jsonpointer-2.4.tar.gz", hash = "sha256:585cee82b70211fa9e6043b7bb89db6e1aa49524340dde8ad6b63206ea689d88"}, -] -jsonschema = [ - {file = "jsonschema-4.20.0-py3-none-any.whl", hash = "sha256:ed6231f0429ecf966f5bc8dfef245998220549cbbcf140f913b7464c52c3b6b3"}, - {file = "jsonschema-4.20.0.tar.gz", hash = "sha256:4f614fd46d8d61258610998997743ec5492a648b33cf478c1ddc23ed4598a5fa"}, -] -jsonschema-specifications = [ - {file = "jsonschema_specifications-2023.11.2-py3-none-any.whl", hash = "sha256:e74ba7c0a65e8cb49dc26837d6cfe576557084a8b423ed16a420984228104f93"}, - {file = "jsonschema_specifications-2023.11.2.tar.gz", hash = "sha256:9472fc4fea474cd74bea4a2b190daeccb5a9e4db2ea80efcf7a1b582fc9a81b8"}, -] -jupyter = [ - {file = "jupyter-1.0.0-py2.py3-none-any.whl", hash = "sha256:5b290f93b98ffbc21c0c7e749f054b3267782166d72fa5e3ed1ed4eaf34a2b78"}, - {file = "jupyter-1.0.0.tar.gz", hash = "sha256:d9dc4b3318f310e34c82951ea5d6683f67bed7def4b259fafbfe4f1beb1d8e5f"}, - {file = "jupyter-1.0.0.zip", hash = "sha256:3e1f86076bbb7c8c207829390305a2b1fe836d471ed54be66a3b8c41e7f46cc7"}, -] -jupyter-client = [ - {file = "jupyter_client-8.6.0-py3-none-any.whl", hash = "sha256:909c474dbe62582ae62b758bca86d6518c85234bdee2d908c778db6d72f39d99"}, - {file = "jupyter_client-8.6.0.tar.gz", hash = "sha256:0642244bb83b4764ae60d07e010e15f0e2d275ec4e918a8f7b80fbbef3ca60c7"}, -] -jupyter-console = [ - {file = "jupyter_console-6.6.3-py3-none-any.whl", hash = "sha256:309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485"}, - {file = "jupyter_console-6.6.3.tar.gz", hash = "sha256:566a4bf31c87adbfadf22cdf846e3069b59a71ed5da71d6ba4d8aaad14a53539"}, -] -jupyter-core = [ - {file = "jupyter_core-5.5.0-py3-none-any.whl", hash = "sha256:e11e02cd8ae0a9de5c6c44abf5727df9f2581055afe00b22183f621ba3585805"}, - {file = "jupyter_core-5.5.0.tar.gz", hash = "sha256:880b86053bf298a8724994f95e99b99130659022a4f7f45f563084b6223861d3"}, -] -jupyter-events = [ - {file = "jupyter_events-0.9.0-py3-none-any.whl", hash = "sha256:d853b3c10273ff9bc8bb8b30076d65e2c9685579db736873de6c2232dde148bf"}, - {file = "jupyter_events-0.9.0.tar.gz", hash = "sha256:81ad2e4bc710881ec274d31c6c50669d71bbaa5dd9d01e600b56faa85700d399"}, -] -jupyter-lsp = [ - {file = "jupyter-lsp-2.2.1.tar.gz", hash = "sha256:b17fab6d70fe83c8896b0cff59237640038247c196056b43684a0902b6a9e0fb"}, - {file = "jupyter_lsp-2.2.1-py3-none-any.whl", hash = "sha256:17a689910c5e4ae5e7d334b02f31d08ffbe98108f6f658fb05e4304b4345368b"}, -] -jupyter-server = [ - {file = "jupyter_server-2.12.1-py3-none-any.whl", hash = "sha256:fd030dd7be1ca572e4598203f718df6630c12bd28a599d7f1791c4d7938e1010"}, - {file = "jupyter_server-2.12.1.tar.gz", hash = "sha256:dc77b7dcc5fc0547acba2b2844f01798008667201eea27c6319ff9257d700a6d"}, -] -jupyter-server-terminals = [ - {file = "jupyter_server_terminals-0.5.0-py3-none-any.whl", hash = "sha256:2fc0692c883bfd891f4fba0c4b4a684a37234b0ba472f2e97ed0a3888f46e1e4"}, - {file = "jupyter_server_terminals-0.5.0.tar.gz", hash = "sha256:ebcd68c9afbf98a480a533e6f3266354336e645536953b7abcc7bdeebc0154a3"}, -] -jupyterlab = [ - {file = "jupyterlab-4.0.9-py3-none-any.whl", hash = "sha256:9f6f8e36d543fdbcc3df961a1d6a3f524b4a4001be0327a398f68fa4e534107c"}, - {file = "jupyterlab-4.0.9.tar.gz", hash = "sha256:9ebada41d52651f623c0c9f069ddb8a21d6848e4c887d8e5ddc0613166ed5c0b"}, -] -jupyterlab-pygments = [ - {file = "jupyterlab_pygments-0.3.0-py3-none-any.whl", hash = "sha256:841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780"}, - {file = "jupyterlab_pygments-0.3.0.tar.gz", hash = "sha256:721aca4d9029252b11cfa9d185e5b5af4d54772bb8072f9b7036f4170054d35d"}, -] -jupyterlab-server = [ - {file = "jupyterlab_server-2.25.2-py3-none-any.whl", hash = "sha256:5b1798c9cc6a44f65c757de9f97fc06fc3d42535afbf47d2ace5e964ab447aaf"}, - {file = "jupyterlab_server-2.25.2.tar.gz", hash = "sha256:bd0ec7a99ebcedc8bcff939ef86e52c378e44c2707e053fcd81d046ce979ee63"}, -] -jupyterlab-widgets = [ - {file = "jupyterlab_widgets-3.0.9-py3-none-any.whl", hash = "sha256:3cf5bdf5b897bf3bccf1c11873aa4afd776d7430200f765e0686bd352487b58d"}, - {file = "jupyterlab_widgets-3.0.9.tar.gz", hash = "sha256:6005a4e974c7beee84060fdfba341a3218495046de8ae3ec64888e5fe19fdb4c"}, -] -kiwisolver = [ - {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"}, -] -markupsafe = [ - {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-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"}, -] -matplotlib = [ - {file = "matplotlib-3.8.2-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:09796f89fb71a0c0e1e2f4bdaf63fb2cefc84446bb963ecdeb40dfee7dfa98c7"}, - {file = "matplotlib-3.8.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:6f9c6976748a25e8b9be51ea028df49b8e561eed7809146da7a47dbecebab367"}, - {file = "matplotlib-3.8.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b78e4f2cedf303869b782071b55fdde5987fda3038e9d09e58c91cc261b5ad18"}, - {file = "matplotlib-3.8.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4e208f46cf6576a7624195aa047cb344a7f802e113bb1a06cfd4bee431de5e31"}, - {file = "matplotlib-3.8.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:46a569130ff53798ea5f50afce7406e91fdc471ca1e0e26ba976a8c734c9427a"}, - {file = "matplotlib-3.8.2-cp310-cp310-win_amd64.whl", hash = "sha256:830f00640c965c5b7f6bc32f0d4ce0c36dfe0379f7dd65b07a00c801713ec40a"}, - {file = "matplotlib-3.8.2-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:d86593ccf546223eb75a39b44c32788e6f6440d13cfc4750c1c15d0fcb850b63"}, - {file = "matplotlib-3.8.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:9a5430836811b7652991939012f43d2808a2db9b64ee240387e8c43e2e5578c8"}, - {file = "matplotlib-3.8.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b9576723858a78751d5aacd2497b8aef29ffea6d1c95981505877f7ac28215c6"}, - {file = "matplotlib-3.8.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5ba9cbd8ac6cf422f3102622b20f8552d601bf8837e49a3afed188d560152788"}, - {file = "matplotlib-3.8.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:03f9d160a29e0b65c0790bb07f4f45d6a181b1ac33eb1bb0dd225986450148f0"}, - {file = "matplotlib-3.8.2-cp311-cp311-win_amd64.whl", hash = "sha256:3773002da767f0a9323ba1a9b9b5d00d6257dbd2a93107233167cfb581f64717"}, - {file = "matplotlib-3.8.2-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:4c318c1e95e2f5926fba326f68177dee364aa791d6df022ceb91b8221bd0a627"}, - {file = "matplotlib-3.8.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:091275d18d942cf1ee9609c830a1bc36610607d8223b1b981c37d5c9fc3e46a4"}, - {file = "matplotlib-3.8.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1b0f3b8ea0e99e233a4bcc44590f01604840d833c280ebb8fe5554fd3e6cfe8d"}, - {file = "matplotlib-3.8.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d7b1704a530395aaf73912be741c04d181f82ca78084fbd80bc737be04848331"}, - {file = "matplotlib-3.8.2-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:533b0e3b0c6768eef8cbe4b583731ce25a91ab54a22f830db2b031e83cca9213"}, - {file = "matplotlib-3.8.2-cp312-cp312-win_amd64.whl", hash = "sha256:0f4fc5d72b75e2c18e55eb32292659cf731d9d5b312a6eb036506304f4675630"}, - {file = "matplotlib-3.8.2-cp39-cp39-macosx_10_12_x86_64.whl", hash = "sha256:deaed9ad4da0b1aea77fe0aa0cebb9ef611c70b3177be936a95e5d01fa05094f"}, - {file = "matplotlib-3.8.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:172f4d0fbac3383d39164c6caafd3255ce6fa58f08fc392513a0b1d3b89c4f89"}, - {file = "matplotlib-3.8.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c7d36c2209d9136cd8e02fab1c0ddc185ce79bc914c45054a9f514e44c787917"}, - {file = "matplotlib-3.8.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5864bdd7da445e4e5e011b199bb67168cdad10b501750367c496420f2ad00843"}, - {file = "matplotlib-3.8.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:ef8345b48e95cee45ff25192ed1f4857273117917a4dcd48e3905619bcd9c9b8"}, - {file = "matplotlib-3.8.2-cp39-cp39-win_amd64.whl", hash = "sha256:7c48d9e221b637c017232e3760ed30b4e8d5dfd081daf327e829bf2a72c731b4"}, - {file = "matplotlib-3.8.2-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:aa11b3c6928a1e496c1a79917d51d4cd5d04f8a2e75f21df4949eeefdf697f4b"}, - {file = "matplotlib-3.8.2-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d1095fecf99eeb7384dabad4bf44b965f929a5f6079654b681193edf7169ec20"}, - {file = "matplotlib-3.8.2-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:bddfb1db89bfaa855912261c805bd0e10218923cc262b9159a49c29a7a1c1afa"}, - {file = "matplotlib-3.8.2.tar.gz", hash = "sha256:01a978b871b881ee76017152f1f1a0cbf6bd5f7b8ff8c96df0df1bd57d8755a1"}, -] -matplotlib-inline = [ - {file = "matplotlib-inline-0.1.6.tar.gz", hash = "sha256:f887e5f10ba98e8d2b150ddcf4702c1e5f8b3a20005eb0f74bfdbd360ee6f304"}, - {file = "matplotlib_inline-0.1.6-py3-none-any.whl", hash = "sha256:f1f41aab5328aa5aaea9b16d083b128102f8712542f819fe7e6a420ff581b311"}, -] -mccabe = [ - {file = "mccabe-0.7.0-py2.py3-none-any.whl", hash = "sha256:6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e"}, - {file = "mccabe-0.7.0.tar.gz", hash = "sha256:348e0240c33b60bbdf4e523192ef919f28cb2c3d7d5c7794f74009290f236325"}, -] -mistune = [ - {file = "mistune-2.0.5-py2.py3-none-any.whl", hash = "sha256:bad7f5d431886fcbaf5f758118ecff70d31f75231b34024a1341120340a65ce8"}, - {file = "mistune-2.0.5.tar.gz", hash = "sha256:0246113cb2492db875c6be56974a7c893333bf26cd92891c85f63151cee09d34"}, -] -mypy = [ - {file = "mypy-1.5.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:ad3109bec37cc33654de8db30fe8ff3a1bb57ea65144167d68185e6dced9868d"}, - {file = "mypy-1.5.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:b4ea3a0241cb005b0ccdbd318fb99619b21ae51bcf1660b95fc22e0e7d3ba4a1"}, - {file = "mypy-1.5.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1fe816e26e676c1311b9e04fd576543b873576d39439f7c24c8e5c7728391ecf"}, - {file = "mypy-1.5.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:42170e68adb1603ccdc55a30068f72bcfcde2ce650188e4c1b2a93018b826735"}, - {file = "mypy-1.5.0-cp310-cp310-win_amd64.whl", hash = "sha256:d145b81a8214687cfc1f85c03663a5bbe736777410e5580e54d526e7e904f564"}, - {file = "mypy-1.5.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:c36011320e452eb30bec38b9fd3ba20569dc9545d7d4540d967f3ea1fab9c374"}, - {file = "mypy-1.5.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:f3940cf5845b2512b3ab95463198b0cdf87975dfd17fdcc6ce9709a9abe09e69"}, - {file = "mypy-1.5.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9166186c498170e1ff478a7f540846b2169243feb95bc228d39a67a1a450cdc6"}, - {file = "mypy-1.5.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:725b57a19b7408ef66a0fd9db59b5d3e528922250fb56e50bded27fea9ff28f0"}, - {file = "mypy-1.5.0-cp311-cp311-win_amd64.whl", hash = "sha256:eec5c927aa4b3e8b4781840f1550079969926d0a22ce38075f6cfcf4b13e3eb4"}, - {file = "mypy-1.5.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:79c520aa24f21852206b5ff2cf746dc13020113aa73fa55af504635a96e62718"}, - {file = "mypy-1.5.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:769ddb6bfe55c2bd9c7d6d7020885a5ea14289619db7ee650e06b1ef0852c6f4"}, - {file = "mypy-1.5.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:cbf18f8db7e5f060d61c91e334d3b96d6bb624ddc9ee8a1cde407b737acbca2c"}, - {file = "mypy-1.5.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:a2500ad063413bc873ae102cf655bf49889e0763b260a3a7cf544a0cbbf7e70a"}, - {file = "mypy-1.5.0-cp38-cp38-win_amd64.whl", hash = "sha256:84cf9f7d8a8a22bb6a36444480f4cbf089c917a4179fbf7eea003ea931944a7f"}, - {file = "mypy-1.5.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:a551ed0fc02455fe2c1fb0145160df8336b90ab80224739627b15ebe2b45e9dc"}, - {file = "mypy-1.5.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:372fd97293ed0076d52695849f59acbbb8461c4ab447858cdaeaf734a396d823"}, - {file = "mypy-1.5.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c8a7444d6fcac7e2585b10abb91ad900a576da7af8f5cffffbff6065d9115813"}, - {file = "mypy-1.5.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:35b13335c6c46a386577a51f3d38b2b5d14aa619e9633bb756bd77205e4bd09f"}, - {file = "mypy-1.5.0-cp39-cp39-win_amd64.whl", hash = "sha256:2c9d570f53908cbea326ad8f96028a673b814d9dca7515bf71d95fa662c3eb6f"}, - {file = "mypy-1.5.0-py3-none-any.whl", hash = "sha256:69b32d0dedd211b80f1b7435644e1ef83033a2af2ac65adcdc87c38db68a86be"}, - {file = "mypy-1.5.0.tar.gz", hash = "sha256:f3460f34b3839b9bc84ee3ed65076eb827cd99ed13ed08d723f9083cada4a212"}, -] -mypy-extensions = [ - {file = "mypy_extensions-1.0.0-py3-none-any.whl", hash = "sha256:4392f6c0eb8a5668a69e23d168ffa70f0be9ccfd32b5cc2d26a34ae5b844552d"}, - {file = "mypy_extensions-1.0.0.tar.gz", hash = "sha256:75dbf8955dc00442a438fc4d0666508a9a97b6bd41aa2f0ffe9d2f2725af0782"}, -] -nbclient = [ - {file = "nbclient-0.9.0-py3-none-any.whl", hash = "sha256:a3a1ddfb34d4a9d17fc744d655962714a866639acd30130e9be84191cd97cd15"}, - {file = "nbclient-0.9.0.tar.gz", hash = "sha256:4b28c207877cf33ef3a9838cdc7a54c5ceff981194a82eac59d558f05487295e"}, -] -nbconvert = [ - {file = "nbconvert-7.12.0-py3-none-any.whl", hash = "sha256:5b6c848194d270cc55fb691169202620d7b52a12fec259508d142ecbe4219310"}, - {file = "nbconvert-7.12.0.tar.gz", hash = "sha256:b1564bd89f69a74cd6398b0362da94db07aafb991b7857216a766204a71612c0"}, -] -nbformat = [ - {file = "nbformat-5.9.2-py3-none-any.whl", hash = "sha256:1c5172d786a41b82bcfd0c23f9e6b6f072e8fb49c39250219e4acfff1efe89e9"}, - {file = "nbformat-5.9.2.tar.gz", hash = "sha256:5f98b5ba1997dff175e77e0c17d5c10a96eaed2cbd1de3533d1fc35d5e111192"}, -] -nest-asyncio = [ - {file = "nest_asyncio-1.5.8-py3-none-any.whl", hash = "sha256:accda7a339a70599cb08f9dd09a67e0c2ef8d8d6f4c07f96ab203f2ae254e48d"}, - {file = "nest_asyncio-1.5.8.tar.gz", hash = "sha256:25aa2ca0d2a5b5531956b9e273b45cf664cae2b145101d73b86b199978d48fdb"}, -] -notebook = [ - {file = "notebook-7.0.6-py3-none-any.whl", hash = "sha256:0fe8f67102fea3744fedf652e4c15339390902ca70c5a31c4f547fa23da697cc"}, - {file = "notebook-7.0.6.tar.gz", hash = "sha256:ec6113b06529019f7f287819af06c97a2baf7a95ac21a8f6e32192898e9f9a58"}, -] -notebook-shim = [ - {file = "notebook_shim-0.2.3-py3-none-any.whl", hash = "sha256:a83496a43341c1674b093bfcebf0fe8e74cbe7eda5fd2bbc56f8e39e1486c0c7"}, - {file = "notebook_shim-0.2.3.tar.gz", hash = "sha256:f69388ac283ae008cd506dda10d0288b09a017d822d5e8c7129a152cbd3ce7e9"}, -] -numpy = [ - {file = "numpy-1.26.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:3703fc9258a4a122d17043e57b35e5ef1c5a5837c3db8be396c82e04c1cf9b0f"}, - {file = "numpy-1.26.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:cc392fdcbd21d4be6ae1bb4475a03ce3b025cd49a9be5345d76d7585aea69440"}, - {file = "numpy-1.26.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:36340109af8da8805d8851ef1d74761b3b88e81a9bd80b290bbfed61bd2b4f75"}, - {file = "numpy-1.26.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bcc008217145b3d77abd3e4d5ef586e3bdfba8fe17940769f8aa09b99e856c00"}, - {file = "numpy-1.26.2-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:3ced40d4e9e18242f70dd02d739e44698df3dcb010d31f495ff00a31ef6014fe"}, - {file = "numpy-1.26.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:b272d4cecc32c9e19911891446b72e986157e6a1809b7b56518b4f3755267523"}, - {file = "numpy-1.26.2-cp310-cp310-win32.whl", hash = "sha256:22f8fc02fdbc829e7a8c578dd8d2e15a9074b630d4da29cda483337e300e3ee9"}, - {file = "numpy-1.26.2-cp310-cp310-win_amd64.whl", hash = "sha256:26c9d33f8e8b846d5a65dd068c14e04018d05533b348d9eaeef6c1bd787f9919"}, - {file = "numpy-1.26.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:b96e7b9c624ef3ae2ae0e04fa9b460f6b9f17ad8b4bec6d7756510f1f6c0c841"}, - {file = "numpy-1.26.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:aa18428111fb9a591d7a9cc1b48150097ba6a7e8299fb56bdf574df650e7d1f1"}, - {file = "numpy-1.26.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:06fa1ed84aa60ea6ef9f91ba57b5ed963c3729534e6e54055fc151fad0423f0a"}, - {file = "numpy-1.26.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:96ca5482c3dbdd051bcd1fce8034603d6ebfc125a7bd59f55b40d8f5d246832b"}, - {file = "numpy-1.26.2-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:854ab91a2906ef29dc3925a064fcd365c7b4da743f84b123002f6139bcb3f8a7"}, - {file = "numpy-1.26.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:f43740ab089277d403aa07567be138fc2a89d4d9892d113b76153e0e412409f8"}, - {file = "numpy-1.26.2-cp311-cp311-win32.whl", hash = "sha256:a2bbc29fcb1771cd7b7425f98b05307776a6baf43035d3b80c4b0f29e9545186"}, - {file = "numpy-1.26.2-cp311-cp311-win_amd64.whl", hash = "sha256:2b3fca8a5b00184828d12b073af4d0fc5fdd94b1632c2477526f6bd7842d700d"}, - {file = "numpy-1.26.2-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:a4cd6ed4a339c21f1d1b0fdf13426cb3b284555c27ac2f156dfdaaa7e16bfab0"}, - {file = "numpy-1.26.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:5d5244aabd6ed7f312268b9247be47343a654ebea52a60f002dc70c769048e75"}, - {file = "numpy-1.26.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6a3cdb4d9c70e6b8c0814239ead47da00934666f668426fc6e94cce869e13fd7"}, - {file = "numpy-1.26.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:aa317b2325f7aa0a9471663e6093c210cb2ae9c0ad824732b307d2c51983d5b6"}, - {file = "numpy-1.26.2-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:174a8880739c16c925799c018f3f55b8130c1f7c8e75ab0a6fa9d41cab092fd6"}, - {file = "numpy-1.26.2-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:f79b231bf5c16b1f39c7f4875e1ded36abee1591e98742b05d8a0fb55d8a3eec"}, - {file = "numpy-1.26.2-cp312-cp312-win32.whl", hash = "sha256:4a06263321dfd3598cacb252f51e521a8cb4b6df471bb12a7ee5cbab20ea9167"}, - {file = "numpy-1.26.2-cp312-cp312-win_amd64.whl", hash = "sha256:b04f5dc6b3efdaab541f7857351aac359e6ae3c126e2edb376929bd3b7f92d7e"}, - {file = "numpy-1.26.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:4eb8df4bf8d3d90d091e0146f6c28492b0be84da3e409ebef54349f71ed271ef"}, - {file = "numpy-1.26.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:1a13860fdcd95de7cf58bd6f8bc5a5ef81c0b0625eb2c9a783948847abbef2c2"}, - {file = "numpy-1.26.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:64308ebc366a8ed63fd0bf426b6a9468060962f1a4339ab1074c228fa6ade8e3"}, - {file = "numpy-1.26.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:baf8aab04a2c0e859da118f0b38617e5ee65d75b83795055fb66c0d5e9e9b818"}, - {file = "numpy-1.26.2-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:d73a3abcac238250091b11caef9ad12413dab01669511779bc9b29261dd50210"}, - {file = "numpy-1.26.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:b361d369fc7e5e1714cf827b731ca32bff8d411212fccd29ad98ad622449cc36"}, - {file = "numpy-1.26.2-cp39-cp39-win32.whl", hash = "sha256:bd3f0091e845164a20bd5a326860c840fe2af79fa12e0469a12768a3ec578d80"}, - {file = "numpy-1.26.2-cp39-cp39-win_amd64.whl", hash = "sha256:2beef57fb031dcc0dc8fa4fe297a742027b954949cabb52a2a376c144e5e6060"}, - {file = "numpy-1.26.2-pp39-pypy39_pp73-macosx_10_9_x86_64.whl", hash = "sha256:1cc3d5029a30fb5f06704ad6b23b35e11309491c999838c31f124fee32107c79"}, - {file = "numpy-1.26.2-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:94cc3c222bb9fb5a12e334d0479b97bb2df446fbe622b470928f5284ffca3f8d"}, - {file = "numpy-1.26.2-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:fe6b44fb8fcdf7eda4ef4461b97b3f63c466b27ab151bec2366db8b197387841"}, - {file = "numpy-1.26.2.tar.gz", hash = "sha256:f65738447676ab5777f11e6bbbdb8ce11b785e105f690bc45966574816b6d3ea"}, -] -omegaconf = [ - {file = "omegaconf-2.3.0-py3-none-any.whl", hash = "sha256:7b4df175cdb08ba400f45cae3bdcae7ba8365db4d165fc65fd04b050ab63b46b"}, - {file = "omegaconf-2.3.0.tar.gz", hash = "sha256:d5d4b6d29955cc50ad50c46dc269bcd92c6e00f5f90d23ab5fee7bfca4ba4cc7"}, -] -overrides = [ - {file = "overrides-7.4.0-py3-none-any.whl", hash = "sha256:3ad24583f86d6d7a49049695efe9933e67ba62f0c7625d53c59fa832ce4b8b7d"}, - {file = "overrides-7.4.0.tar.gz", hash = "sha256:9502a3cca51f4fac40b5feca985b6703a5c1f6ad815588a7ca9e285b9dca6757"}, -] -packaging = [ - {file = "packaging-23.2-py3-none-any.whl", hash = "sha256:8c491190033a9af7e1d931d0b5dacc2ef47509b34dd0de67ed209b5203fc88c7"}, - {file = "packaging-23.2.tar.gz", hash = "sha256:048fb0e9405036518eaaf48a55953c750c11e1a1b68e0dd1a9d62ed0c092cfc5"}, -] -pandas = [ - {file = "pandas-1.5.3-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:3749077d86e3a2f0ed51367f30bf5b82e131cc0f14260c4d3e499186fccc4406"}, - {file = "pandas-1.5.3-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:972d8a45395f2a2d26733eb8d0f629b2f90bebe8e8eddbb8829b180c09639572"}, - {file = "pandas-1.5.3-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:50869a35cbb0f2e0cd5ec04b191e7b12ed688874bd05dd777c19b28cbea90996"}, - {file = "pandas-1.5.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c3ac844a0fe00bfaeb2c9b51ab1424e5c8744f89860b138434a363b1f620f354"}, - {file = "pandas-1.5.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7a0a56cef15fd1586726dace5616db75ebcfec9179a3a55e78f72c5639fa2a23"}, - {file = "pandas-1.5.3-cp310-cp310-win_amd64.whl", hash = "sha256:478ff646ca42b20376e4ed3fa2e8d7341e8a63105586efe54fa2508ee087f328"}, - {file = "pandas-1.5.3-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:6973549c01ca91ec96199e940495219c887ea815b2083722821f1d7abfa2b4dc"}, - {file = "pandas-1.5.3-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:c39a8da13cede5adcd3be1182883aea1c925476f4e84b2807a46e2775306305d"}, - {file = "pandas-1.5.3-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:f76d097d12c82a535fda9dfe5e8dd4127952b45fea9b0276cb30cca5ea313fbc"}, - {file = "pandas-1.5.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e474390e60ed609cec869b0da796ad94f420bb057d86784191eefc62b65819ae"}, - {file = "pandas-1.5.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5f2b952406a1588ad4cad5b3f55f520e82e902388a6d5a4a91baa8d38d23c7f6"}, - {file = "pandas-1.5.3-cp311-cp311-win_amd64.whl", hash = "sha256:bc4c368f42b551bf72fac35c5128963a171b40dce866fb066540eeaf46faa003"}, - {file = "pandas-1.5.3-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:14e45300521902689a81f3f41386dc86f19b8ba8dd5ac5a3c7010ef8d2932813"}, - {file = "pandas-1.5.3-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:9842b6f4b8479e41968eced654487258ed81df7d1c9b7b870ceea24ed9459b31"}, - {file = "pandas-1.5.3-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:26d9c71772c7afb9d5046e6e9cf42d83dd147b5cf5bcb9d97252077118543792"}, - {file = "pandas-1.5.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5fbcb19d6fceb9e946b3e23258757c7b225ba450990d9ed63ccceeb8cae609f7"}, - {file = "pandas-1.5.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:565fa34a5434d38e9d250af3c12ff931abaf88050551d9fbcdfafca50d62babf"}, - {file = "pandas-1.5.3-cp38-cp38-win32.whl", hash = "sha256:87bd9c03da1ac870a6d2c8902a0e1fd4267ca00f13bc494c9e5a9020920e1d51"}, - {file = "pandas-1.5.3-cp38-cp38-win_amd64.whl", hash = "sha256:41179ce559943d83a9b4bbacb736b04c928b095b5f25dd2b7389eda08f46f373"}, - {file = "pandas-1.5.3-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:c74a62747864ed568f5a82a49a23a8d7fe171d0c69038b38cedf0976831296fa"}, - {file = "pandas-1.5.3-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:c4c00e0b0597c8e4f59e8d461f797e5d70b4d025880516a8261b2817c47759ee"}, - {file = "pandas-1.5.3-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:a50d9a4336a9621cab7b8eb3fb11adb82de58f9b91d84c2cd526576b881a0c5a"}, - {file = "pandas-1.5.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:dd05f7783b3274aa206a1af06f0ceed3f9b412cf665b7247eacd83be41cf7bf0"}, - {file = "pandas-1.5.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9f69c4029613de47816b1bb30ff5ac778686688751a5e9c99ad8c7031f6508e5"}, - {file = "pandas-1.5.3-cp39-cp39-win32.whl", hash = "sha256:7cec0bee9f294e5de5bbfc14d0573f65526071029d036b753ee6507d2a21480a"}, - {file = "pandas-1.5.3-cp39-cp39-win_amd64.whl", hash = "sha256:dfd681c5dc216037e0b0a2c821f5ed99ba9f03ebcf119c7dac0e9a7b960b9ec9"}, - {file = "pandas-1.5.3.tar.gz", hash = "sha256:74a3fd7e5a7ec052f183273dc7b0acd3a863edf7520f5d3a1765c04ffdb3b0b1"}, -] -pandas-stubs = [ - {file = "pandas_stubs-1.5.3.230321-py3-none-any.whl", hash = "sha256:4bf36b3071dd55f0e558ac8efe07676a120f2ed89e7a3df0fb78ddf2733bf247"}, - {file = "pandas_stubs-1.5.3.230321.tar.gz", hash = "sha256:2fa860df9e6058e9f0d2c09bc711c09abb8f0516eee7f0b9f9950d29b835fc6f"}, -] -pandocfilters = [ - {file = "pandocfilters-1.5.0-py2.py3-none-any.whl", hash = "sha256:33aae3f25fd1a026079f5d27bdd52496f0e0803b3469282162bafdcbdf6ef14f"}, - {file = "pandocfilters-1.5.0.tar.gz", hash = "sha256:0b679503337d233b4339a817bfc8c50064e2eff681314376a47cb582305a7a38"}, -] -parso = [ - {file = "parso-0.8.3-py2.py3-none-any.whl", hash = "sha256:c001d4636cd3aecdaf33cbb40aebb59b094be2a74c556778ef5576c175e19e75"}, - {file = "parso-0.8.3.tar.gz", hash = "sha256:8c07be290bb59f03588915921e29e8a50002acaf2cdc5fa0e0114f91709fafa0"}, -] -pathspec = [ - {file = "pathspec-0.12.1-py3-none-any.whl", hash = "sha256:a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08"}, - {file = "pathspec-0.12.1.tar.gz", hash = "sha256:a482d51503a1ab33b1c67a6c3813a26953dbdc71c31dacaef9a838c4e29f5712"}, -] -patsy = [ - {file = "patsy-0.5.4-py2.py3-none-any.whl", hash = "sha256:0486413077a527db51ddea8fa94a5234d0feb17a4f4dc01b59b6086c58a70f80"}, - {file = "patsy-0.5.4.tar.gz", hash = "sha256:7dabc527597308de0e8f188faa20af7e06a89bdaa306756dfc7783693ea16af4"}, -] -pexpect = [ - {file = "pexpect-4.9.0-py2.py3-none-any.whl", hash = "sha256:7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523"}, - {file = "pexpect-4.9.0.tar.gz", hash = "sha256:ee7d41123f3c9911050ea2c2dac107568dc43b2d3b0c7557a33212c398ead30f"}, -] -pillow = [ - {file = "Pillow-10.1.0-cp310-cp310-macosx_10_10_x86_64.whl", hash = "sha256:1ab05f3db77e98f93964697c8efc49c7954b08dd61cff526b7f2531a22410106"}, - {file = "Pillow-10.1.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:6932a7652464746fcb484f7fc3618e6503d2066d853f68a4bd97193a3996e273"}, - {file = "Pillow-10.1.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a5f63b5a68daedc54c7c3464508d8c12075e56dcfbd42f8c1bf40169061ae666"}, - {file = "Pillow-10.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c0949b55eb607898e28eaccb525ab104b2d86542a85c74baf3a6dc24002edec2"}, - {file = "Pillow-10.1.0-cp310-cp310-manylinux_2_28_aarch64.whl", hash = "sha256:ae88931f93214777c7a3aa0a8f92a683f83ecde27f65a45f95f22d289a69e593"}, - {file = "Pillow-10.1.0-cp310-cp310-manylinux_2_28_x86_64.whl", hash = "sha256:b0eb01ca85b2361b09480784a7931fc648ed8b7836f01fb9241141b968feb1db"}, - {file = "Pillow-10.1.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:d27b5997bdd2eb9fb199982bb7eb6164db0426904020dc38c10203187ae2ff2f"}, - {file = "Pillow-10.1.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:7df5608bc38bd37ef585ae9c38c9cd46d7c81498f086915b0f97255ea60c2818"}, - {file = "Pillow-10.1.0-cp310-cp310-win_amd64.whl", hash = "sha256:41f67248d92a5e0a2076d3517d8d4b1e41a97e2df10eb8f93106c89107f38b57"}, - {file = "Pillow-10.1.0-cp311-cp311-macosx_10_10_x86_64.whl", hash = "sha256:1fb29c07478e6c06a46b867e43b0bcdb241b44cc52be9bc25ce5944eed4648e7"}, - {file = "Pillow-10.1.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:2cdc65a46e74514ce742c2013cd4a2d12e8553e3a2563c64879f7c7e4d28bce7"}, - {file = "Pillow-10.1.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:50d08cd0a2ecd2a8657bd3d82c71efd5a58edb04d9308185d66c3a5a5bed9610"}, - {file = "Pillow-10.1.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:062a1610e3bc258bff2328ec43f34244fcec972ee0717200cb1425214fe5b839"}, - {file = "Pillow-10.1.0-cp311-cp311-manylinux_2_28_aarch64.whl", hash = "sha256:61f1a9d247317fa08a308daaa8ee7b3f760ab1809ca2da14ecc88ae4257d6172"}, - {file = "Pillow-10.1.0-cp311-cp311-manylinux_2_28_x86_64.whl", hash = "sha256:a646e48de237d860c36e0db37ecaecaa3619e6f3e9d5319e527ccbc8151df061"}, - {file = "Pillow-10.1.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:47e5bf85b80abc03be7455c95b6d6e4896a62f6541c1f2ce77a7d2bb832af262"}, - {file = "Pillow-10.1.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:a92386125e9ee90381c3369f57a2a50fa9e6aa8b1cf1d9c4b200d41a7dd8e992"}, - {file = "Pillow-10.1.0-cp311-cp311-win_amd64.whl", hash = "sha256:0f7c276c05a9767e877a0b4c5050c8bee6a6d960d7f0c11ebda6b99746068c2a"}, - {file = "Pillow-10.1.0-cp312-cp312-macosx_10_10_x86_64.whl", hash = "sha256:a89b8312d51715b510a4fe9fc13686283f376cfd5abca8cd1c65e4c76e21081b"}, - {file = "Pillow-10.1.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:00f438bb841382b15d7deb9a05cc946ee0f2c352653c7aa659e75e592f6fa17d"}, - {file = "Pillow-10.1.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3d929a19f5469b3f4df33a3df2983db070ebb2088a1e145e18facbc28cae5b27"}, - {file = "Pillow-10.1.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9a92109192b360634a4489c0c756364c0c3a2992906752165ecb50544c251312"}, - {file = "Pillow-10.1.0-cp312-cp312-manylinux_2_28_aarch64.whl", hash = "sha256:0248f86b3ea061e67817c47ecbe82c23f9dd5d5226200eb9090b3873d3ca32de"}, - {file = "Pillow-10.1.0-cp312-cp312-manylinux_2_28_x86_64.whl", hash = "sha256:9882a7451c680c12f232a422730f986a1fcd808da0fd428f08b671237237d651"}, - {file = "Pillow-10.1.0-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:1c3ac5423c8c1da5928aa12c6e258921956757d976405e9467c5f39d1d577a4b"}, - {file = "Pillow-10.1.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:806abdd8249ba3953c33742506fe414880bad78ac25cc9a9b1c6ae97bedd573f"}, - {file = "Pillow-10.1.0-cp312-cp312-win_amd64.whl", hash = "sha256:eaed6977fa73408b7b8a24e8b14e59e1668cfc0f4c40193ea7ced8e210adf996"}, - {file = "Pillow-10.1.0-cp38-cp38-macosx_10_10_x86_64.whl", hash = "sha256:fe1e26e1ffc38be097f0ba1d0d07fcade2bcfd1d023cda5b29935ae8052bd793"}, - {file = "Pillow-10.1.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:7a7e3daa202beb61821c06d2517428e8e7c1aab08943e92ec9e5755c2fc9ba5e"}, - {file = "Pillow-10.1.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:24fadc71218ad2b8ffe437b54876c9382b4a29e030a05a9879f615091f42ffc2"}, - {file = "Pillow-10.1.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fa1d323703cfdac2036af05191b969b910d8f115cf53093125e4058f62012c9a"}, - {file = "Pillow-10.1.0-cp38-cp38-manylinux_2_28_aarch64.whl", hash = "sha256:912e3812a1dbbc834da2b32299b124b5ddcb664ed354916fd1ed6f193f0e2d01"}, - {file = "Pillow-10.1.0-cp38-cp38-manylinux_2_28_x86_64.whl", hash = "sha256:7dbaa3c7de82ef37e7708521be41db5565004258ca76945ad74a8e998c30af8d"}, - {file = "Pillow-10.1.0-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:9d7bc666bd8c5a4225e7ac71f2f9d12466ec555e89092728ea0f5c0c2422ea80"}, - {file = "Pillow-10.1.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:baada14941c83079bf84c037e2d8b7506ce201e92e3d2fa0d1303507a8538212"}, - {file = "Pillow-10.1.0-cp38-cp38-win_amd64.whl", hash = "sha256:2ef6721c97894a7aa77723740a09547197533146fba8355e86d6d9a4a1056b14"}, - {file = "Pillow-10.1.0-cp39-cp39-macosx_10_10_x86_64.whl", hash = "sha256:0a026c188be3b443916179f5d04548092e253beb0c3e2ee0a4e2cdad72f66099"}, - {file = "Pillow-10.1.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:04f6f6149f266a100374ca3cc368b67fb27c4af9f1cc8cb6306d849dcdf12616"}, - {file = "Pillow-10.1.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bb40c011447712d2e19cc261c82655f75f32cb724788df315ed992a4d65696bb"}, - {file = "Pillow-10.1.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1a8413794b4ad9719346cd9306118450b7b00d9a15846451549314a58ac42219"}, - {file = "Pillow-10.1.0-cp39-cp39-manylinux_2_28_aarch64.whl", hash = "sha256:c9aeea7b63edb7884b031a35305629a7593272b54f429a9869a4f63a1bf04c34"}, - {file = "Pillow-10.1.0-cp39-cp39-manylinux_2_28_x86_64.whl", hash = "sha256:b4005fee46ed9be0b8fb42be0c20e79411533d1fd58edabebc0dd24626882cfd"}, - {file = "Pillow-10.1.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:4d0152565c6aa6ebbfb1e5d8624140a440f2b99bf7afaafbdbf6430426497f28"}, - {file = "Pillow-10.1.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:d921bc90b1defa55c9917ca6b6b71430e4286fc9e44c55ead78ca1a9f9eba5f2"}, - {file = "Pillow-10.1.0-cp39-cp39-win_amd64.whl", hash = "sha256:cfe96560c6ce2f4c07d6647af2d0f3c54cc33289894ebd88cfbb3bcd5391e256"}, - {file = "Pillow-10.1.0-pp310-pypy310_pp73-macosx_10_10_x86_64.whl", hash = "sha256:937bdc5a7f5343d1c97dc98149a0be7eb9704e937fe3dc7140e229ae4fc572a7"}, - {file = "Pillow-10.1.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b1c25762197144e211efb5f4e8ad656f36c8d214d390585d1d21281f46d556ba"}, - {file = "Pillow-10.1.0-pp310-pypy310_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:afc8eef765d948543a4775f00b7b8c079b3321d6b675dde0d02afa2ee23000b4"}, - {file = "Pillow-10.1.0-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:883f216eac8712b83a63f41b76ddfb7b2afab1b74abbb413c5df6680f071a6b9"}, - {file = "Pillow-10.1.0-pp39-pypy39_pp73-macosx_10_10_x86_64.whl", hash = "sha256:b920e4d028f6442bea9a75b7491c063f0b9a3972520731ed26c83e254302eb1e"}, - {file = "Pillow-10.1.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1c41d960babf951e01a49c9746f92c5a7e0d939d1652d7ba30f6b3090f27e412"}, - {file = "Pillow-10.1.0-pp39-pypy39_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:1fafabe50a6977ac70dfe829b2d5735fd54e190ab55259ec8aea4aaea412fa0b"}, - {file = "Pillow-10.1.0-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:3b834f4b16173e5b92ab6566f0473bfb09f939ba14b23b8da1f54fa63e4b623f"}, - {file = "Pillow-10.1.0.tar.gz", hash = "sha256:e6bf8de6c36ed96c86ea3b6e1d5273c53f46ef518a062464cd7ef5dd2cf92e38"}, -] -platformdirs = [ - {file = "platformdirs-4.1.0-py3-none-any.whl", hash = "sha256:11c8f37bcca40db96d8144522d925583bdb7a31f7b0e37e3ed4318400a8e2380"}, - {file = "platformdirs-4.1.0.tar.gz", hash = "sha256:906d548203468492d432bcb294d4bc2fff751bf84971fbb2c10918cc206ee420"}, -] -pluggy = [ - {file = "pluggy-1.3.0-py3-none-any.whl", hash = "sha256:d89c696a773f8bd377d18e5ecda92b7a3793cbe66c87060a6fb58c7b6e1061f7"}, - {file = "pluggy-1.3.0.tar.gz", hash = "sha256:cf61ae8f126ac6f7c451172cf30e3e43d3ca77615509771b3a984a0730651e12"}, -] -prometheus-client = [ - {file = "prometheus_client-0.19.0-py3-none-any.whl", hash = "sha256:c88b1e6ecf6b41cd8fb5731c7ae919bf66df6ec6fafa555cd6c0e16ca169ae92"}, - {file = "prometheus_client-0.19.0.tar.gz", hash = "sha256:4585b0d1223148c27a225b10dbec5ae9bc4c81a99a3fa80774fa6209935324e1"}, -] -prompt-toolkit = [ - {file = "prompt_toolkit-3.0.43-py3-none-any.whl", hash = "sha256:a11a29cb3bf0a28a387fe5122cdb649816a957cd9261dcedf8c9f1fef33eacf6"}, - {file = "prompt_toolkit-3.0.43.tar.gz", hash = "sha256:3527b7af26106cbc65a040bcc84839a3566ec1b051bb0bfe953631e704b0ff7d"}, -] -psutil = [ - {file = "psutil-5.9.6-cp27-cp27m-macosx_10_9_x86_64.whl", hash = "sha256:fb8a697f11b0f5994550555fcfe3e69799e5b060c8ecf9e2f75c69302cc35c0d"}, - {file = "psutil-5.9.6-cp27-cp27m-manylinux2010_i686.whl", hash = "sha256:91ecd2d9c00db9817a4b4192107cf6954addb5d9d67a969a4f436dbc9200f88c"}, - {file = "psutil-5.9.6-cp27-cp27m-manylinux2010_x86_64.whl", hash = "sha256:10e8c17b4f898d64b121149afb136c53ea8b68c7531155147867b7b1ac9e7e28"}, - {file = "psutil-5.9.6-cp27-cp27mu-manylinux2010_i686.whl", hash = "sha256:18cd22c5db486f33998f37e2bb054cc62fd06646995285e02a51b1e08da97017"}, - {file = "psutil-5.9.6-cp27-cp27mu-manylinux2010_x86_64.whl", hash = "sha256:ca2780f5e038379e520281e4c032dddd086906ddff9ef0d1b9dcf00710e5071c"}, - {file = "psutil-5.9.6-cp27-none-win32.whl", hash = "sha256:70cb3beb98bc3fd5ac9ac617a327af7e7f826373ee64c80efd4eb2856e5051e9"}, - {file = "psutil-5.9.6-cp27-none-win_amd64.whl", hash = "sha256:51dc3d54607c73148f63732c727856f5febec1c7c336f8f41fcbd6315cce76ac"}, - {file = "psutil-5.9.6-cp36-abi3-macosx_10_9_x86_64.whl", hash = "sha256:c69596f9fc2f8acd574a12d5f8b7b1ba3765a641ea5d60fb4736bf3c08a8214a"}, - {file = "psutil-5.9.6-cp36-abi3-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:92e0cc43c524834af53e9d3369245e6cc3b130e78e26100d1f63cdb0abeb3d3c"}, - {file = "psutil-5.9.6-cp36-abi3-manylinux_2_12_x86_64.manylinux2010_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:748c9dd2583ed86347ed65d0035f45fa8c851e8d90354c122ab72319b5f366f4"}, - {file = "psutil-5.9.6-cp36-cp36m-win32.whl", hash = "sha256:3ebf2158c16cc69db777e3c7decb3c0f43a7af94a60d72e87b2823aebac3d602"}, - {file = "psutil-5.9.6-cp36-cp36m-win_amd64.whl", hash = "sha256:ff18b8d1a784b810df0b0fff3bcb50ab941c3b8e2c8de5726f9c71c601c611aa"}, - {file = "psutil-5.9.6-cp37-abi3-win32.whl", hash = "sha256:a6f01f03bf1843280f4ad16f4bde26b817847b4c1a0db59bf6419807bc5ce05c"}, - {file = "psutil-5.9.6-cp37-abi3-win_amd64.whl", hash = "sha256:6e5fb8dc711a514da83098bc5234264e551ad980cec5f85dabf4d38ed6f15e9a"}, - {file = "psutil-5.9.6-cp38-abi3-macosx_11_0_arm64.whl", hash = "sha256:daecbcbd29b289aac14ece28eca6a3e60aa361754cf6da3dfb20d4d32b6c7f57"}, - {file = "psutil-5.9.6.tar.gz", hash = "sha256:e4b92ddcd7dd4cdd3f900180ea1e104932c7bce234fb88976e2a3b296441225a"}, -] -ptyprocess = [ - {file = "ptyprocess-0.7.0-py2.py3-none-any.whl", hash = "sha256:4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35"}, - {file = "ptyprocess-0.7.0.tar.gz", hash = "sha256:5c5d0a3b48ceee0b48485e0c26037c0acd7d29765ca3fbb5cb3831d347423220"}, -] -pure-eval = [ - {file = "pure_eval-0.2.2-py3-none-any.whl", hash = "sha256:01eaab343580944bc56080ebe0a674b39ec44a945e6d09ba7db3cb8cec289350"}, - {file = "pure_eval-0.2.2.tar.gz", hash = "sha256:2b45320af6dfaa1750f543d714b6d1c520a1688dec6fd24d339063ce0aaa9ac3"}, -] -py = [ - {file = "py-1.11.0-py2.py3-none-any.whl", hash = "sha256:607c53218732647dff4acdfcd50cb62615cedf612e72d1724fb1a0cc6405b378"}, - {file = "py-1.11.0.tar.gz", hash = "sha256:51c75c4126074b472f746a24399ad32f6053d1b34b68d2fa41e558e6f4a98719"}, -] -pycparser = [ - {file = "pycparser-2.21-py2.py3-none-any.whl", hash = "sha256:8ee45429555515e1f6b185e78100aea234072576aa43ab53aefcae078162fca9"}, - {file = "pycparser-2.21.tar.gz", hash = "sha256:e644fdec12f7872f86c58ff790da456218b10f863970249516d60a5eaca77206"}, -] -pygments = [ - {file = "pygments-2.17.2-py3-none-any.whl", hash = "sha256:b27c2826c47d0f3219f29554824c30c5e8945175d888647acd804ddd04af846c"}, - {file = "pygments-2.17.2.tar.gz", hash = "sha256:da46cec9fd2de5be3a8a784f434e4c4ab670b4ff54d605c4c2717e9d49c4c367"}, -] -pylint = [ - {file = "pylint-3.0.3-py3-none-any.whl", hash = "sha256:7a1585285aefc5165db81083c3e06363a27448f6b467b3b0f30dbd0ac1f73810"}, - {file = "pylint-3.0.3.tar.gz", hash = "sha256:58c2398b0301e049609a8429789ec6edf3aabe9b6c5fec916acd18639c16de8b"}, -] -pyparsing = [ - {file = "pyparsing-3.1.1-py3-none-any.whl", hash = "sha256:32c7c0b711493c72ff18a981d24f28aaf9c1fb7ed5e9667c9e84e3db623bdbfb"}, - {file = "pyparsing-3.1.1.tar.gz", hash = "sha256:ede28a1a32462f5a9705e07aea48001a08f7cf81a021585011deba701581a0db"}, -] -pytest = [ - {file = "pytest-6.2.5-py3-none-any.whl", hash = "sha256:7310f8d27bc79ced999e760ca304d69f6ba6c6649c0b60fb0e04a4a77cacc134"}, - {file = "pytest-6.2.5.tar.gz", hash = "sha256:131b36680866a76e6781d13f101efb86cf674ebb9762eb70d3082b6f29889e89"}, -] -pytest-cov = [ - {file = "pytest-cov-2.12.1.tar.gz", hash = "sha256:261ceeb8c227b726249b376b8526b600f38667ee314f910353fa318caa01f4d7"}, - {file = "pytest_cov-2.12.1-py2.py3-none-any.whl", hash = "sha256:261bb9e47e65bd099c89c3edf92972865210c36813f80ede5277dceb77a4a62a"}, -] -python-dateutil = [ - {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"}, -] -python-json-logger = [ - {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"}, -] -pytz = [ - {file = "pytz-2023.3.post1-py2.py3-none-any.whl", hash = "sha256:ce42d816b81b68506614c11e8937d3aa9e41007ceb50bfdcb0749b921bf646c7"}, - {file = "pytz-2023.3.post1.tar.gz", hash = "sha256:7b4fddbeb94a1eba4b557da24f19fdf9db575192544270a9101d8509f9f43d7b"}, -] -pywin32 = [ - {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"}, -] -pywinpty = [ - {file = "pywinpty-2.0.12-cp310-none-win_amd64.whl", hash = "sha256:21319cd1d7c8844fb2c970fb3a55a3db5543f112ff9cfcd623746b9c47501575"}, - {file = "pywinpty-2.0.12-cp311-none-win_amd64.whl", hash = "sha256:853985a8f48f4731a716653170cd735da36ffbdc79dcb4c7b7140bce11d8c722"}, - {file = "pywinpty-2.0.12-cp312-none-win_amd64.whl", hash = "sha256:1617b729999eb6713590e17665052b1a6ae0ad76ee31e60b444147c5b6a35dca"}, - {file = "pywinpty-2.0.12-cp38-none-win_amd64.whl", hash = "sha256:189380469ca143d06e19e19ff3fba0fcefe8b4a8cc942140a6b863aed7eebb2d"}, - {file = "pywinpty-2.0.12-cp39-none-win_amd64.whl", hash = "sha256:7520575b6546db23e693cbd865db2764097bd6d4ef5dc18c92555904cd62c3d4"}, - {file = "pywinpty-2.0.12.tar.gz", hash = "sha256:8197de460ae8ebb7f5d1701dfa1b5df45b157bb832e92acba316305e18ca00dd"}, -] -pyyaml = [ - {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"}, -] -pyzmq = [ +files = [ {file = "pyzmq-25.1.2-cp310-cp310-macosx_10_15_universal2.whl", hash = "sha256:e624c789359f1a16f83f35e2c705d07663ff2b4d4479bad35621178d8f0f6ea4"}, {file = "pyzmq-25.1.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:49151b0efece79f6a79d41a461d78535356136ee70084a1c22532fc6383f4ad0"}, {file = "pyzmq-25.1.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d9a5f194cf730f2b24d6af1f833c14c10f41023da46a7f736f48b6d35061e76e"}, @@ -3308,31 +2835,120 @@ pyzmq = [ {file = "pyzmq-25.1.2-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:146b9b1f29ead41255387fb07be56dc29639262c0f7344f570eecdcd8d683314"}, {file = "pyzmq-25.1.2.tar.gz", hash = "sha256:93f1aa311e8bb912e34f004cf186407a4e90eec4f0ecc0efd26056bf7eda0226"}, ] -qtconsole = [ + +[package.dependencies] +cffi = {version = "*", markers = "implementation_name == \"pypy\""} + +[[package]] +name = "qtconsole" +version = "5.5.1" +description = "Jupyter Qt console" +optional = false +python-versions = ">= 3.8" +files = [ {file = "qtconsole-5.5.1-py3-none-any.whl", hash = "sha256:8c75fa3e9b4ed884880ff7cea90a1b67451219279ec33deaee1d59e3df1a5d2b"}, {file = "qtconsole-5.5.1.tar.gz", hash = "sha256:a0e806c6951db9490628e4df80caec9669b65149c7ba40f9bf033c025a5b56bc"}, ] -qtpy = [ + +[package.dependencies] +ipykernel = ">=4.1" +jupyter-client = ">=4.1" +jupyter-core = "*" +packaging = "*" +pygments = "*" +pyzmq = ">=17.1" +qtpy = ">=2.4.0" +traitlets = "<5.2.1 || >5.2.1,<5.2.2 || >5.2.2" + +[package.extras] +doc = ["Sphinx (>=1.3)"] +test = ["flaky", "pytest", "pytest-qt"] + +[[package]] +name = "qtpy" +version = "2.4.1" +description = "Provides an abstraction layer on top of the various Qt bindings (PyQt5/6 and PySide2/6)." +optional = false +python-versions = ">=3.7" +files = [ {file = "QtPy-2.4.1-py3-none-any.whl", hash = "sha256:1c1d8c4fa2c884ae742b069151b0abe15b3f70491f3972698c683b8e38de839b"}, {file = "QtPy-2.4.1.tar.gz", hash = "sha256:a5a15ffd519550a1361bdc56ffc07fda56a6af7292f17c7b395d4083af632987"}, ] -referencing = [ + +[package.dependencies] +packaging = "*" + +[package.extras] +test = ["pytest (>=6,!=7.0.0,!=7.0.1)", "pytest-cov (>=3.0.0)", "pytest-qt"] + +[[package]] +name = "referencing" +version = "0.32.0" +description = "JSON Referencing + Python" +optional = false +python-versions = ">=3.8" +files = [ {file = "referencing-0.32.0-py3-none-any.whl", hash = "sha256:bdcd3efb936f82ff86f993093f6da7435c7de69a3b3a5a06678a6050184bee99"}, {file = "referencing-0.32.0.tar.gz", hash = "sha256:689e64fe121843dcfd57b71933318ef1f91188ffb45367332700a86ac8fd6161"}, ] -requests = [ + +[package.dependencies] +attrs = ">=22.2.0" +rpds-py = ">=0.7.0" + +[[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"}, ] -rfc3339-validator = [ + +[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"}, ] -rfc3986-validator = [ + +[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"}, ] -rpds-py = [ + +[[package]] +name = "rpds-py" +version = "0.13.2" +description = "Python bindings to Rust's persistent data structures (rpds)" +optional = false +python-versions = ">=3.8" +files = [ {file = "rpds_py-0.13.2-cp310-cp310-macosx_10_7_x86_64.whl", hash = "sha256:1ceebd0ae4f3e9b2b6b553b51971921853ae4eebf3f54086be0565d59291e53d"}, {file = "rpds_py-0.13.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:46e1ed994a0920f350a4547a38471217eb86f57377e9314fbaaa329b71b7dfe3"}, {file = "rpds_py-0.13.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ee353bb51f648924926ed05e0122b6a0b1ae709396a80eb583449d5d477fcdf7"}, @@ -3433,7 +3049,14 @@ rpds-py = [ {file = "rpds_py-0.13.2-pp39-pypy39_pp73-musllinux_1_2_x86_64.whl", hash = "sha256:96fb0899bb2ab353f42e5374c8f0789f54e0a94ef2f02b9ac7149c56622eaf31"}, {file = "rpds_py-0.13.2.tar.gz", hash = "sha256:f8eae66a1304de7368932b42d801c67969fd090ddb1a7a24f27b435ed4bed68f"}, ] -scikit-learn = [ + +[[package]] +name = "scikit-learn" +version = "1.3.2" +description = "A set of python modules for machine learning and data mining" +optional = false +python-versions = ">=3.8" +files = [ {file = "scikit-learn-1.3.2.tar.gz", hash = "sha256:a2f54c76accc15a34bfb9066e6c7a56c1e7235dda5762b990792330b52ccfb05"}, {file = "scikit_learn-1.3.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:e326c0eb5cf4d6ba40f93776a20e9a7a69524c4db0757e7ce24ba222471ee8a1"}, {file = "scikit_learn-1.3.2-cp310-cp310-macosx_12_0_arm64.whl", hash = "sha256:535805c2a01ccb40ca4ab7d081d771aea67e535153e35a1fd99418fcedd1648a"}, @@ -3461,7 +3084,26 @@ scikit-learn = [ {file = "scikit_learn-1.3.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:763f0ae4b79b0ff9cca0bf3716bcc9915bdacff3cebea15ec79652d1cc4fa5c9"}, {file = "scikit_learn-1.3.2-cp39-cp39-win_amd64.whl", hash = "sha256:ed932ea780517b00dae7431e031faae6b49b20eb6950918eb83bd043237950e0"}, ] -scipy = [ + +[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.4" +description = "Fundamental algorithms for scientific computing in Python" +optional = false +python-versions = ">=3.9" +files = [ {file = "scipy-1.11.4-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:bc9a714581f561af0848e6b69947fda0614915f072dfd14142ed1bfe1b806710"}, {file = "scipy-1.11.4-cp310-cp310-macosx_12_0_arm64.whl", hash = "sha256:cf00bd2b1b0211888d4dc75656c0412213a8b25e80d73898083f402b50f47e41"}, {file = "scipy-1.11.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b9999c008ccf00e8fbcce1236f85ade5c569d13144f77a1946bef8863e8f6eb4"}, @@ -3488,85 +3130,312 @@ scipy = [ {file = "scipy-1.11.4-cp39-cp39-win_amd64.whl", hash = "sha256:ee410e6de8f88fd5cf6eadd73c135020bfbbbdfcd0f6162c36a7638a1ea8cc65"}, {file = "scipy-1.11.4.tar.gz", hash = "sha256:90a2b78e7f5733b9de748f589f09225013685f9b218275257f8a8168ededaeaa"}, ] -seaborn = [ + +[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"}, ] -send2trash = [ + +[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"}, ] -six = [ + +[package.extras] +nativelib = ["pyobjc-framework-Cocoa", "pywin32"] +objc = ["pyobjc-framework-Cocoa"] +win32 = ["pywin32"] + +[[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"}, ] -sniffio = [ + +[[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"}, ] -snowballstemmer = [ + +[[package]] +name = "snowballstemmer" +version = "2.2.0" +description = "This package provides 29 stemmers for 28 languages generated from Snowball algorithms." +optional = false +python-versions = "*" +files = [ {file = "snowballstemmer-2.2.0-py2.py3-none-any.whl", hash = "sha256:c8e1716e83cc398ae16824e5572ae04e0d9fc2c6b985fb0f900f5f0c96ecba1a"}, {file = "snowballstemmer-2.2.0.tar.gz", hash = "sha256:09b16deb8547d3412ad7b590689584cd0fe25ec8db3be37788be3810cbf19cb1"}, ] -soupsieve = [ + +[[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"}, ] -sphinx = [ + +[[package]] +name = "sphinx" +version = "4.5.0" +description = "Python documentation generator" +optional = false +python-versions = ">=3.6" +files = [ {file = "Sphinx-4.5.0-py3-none-any.whl", hash = "sha256:ebf612653238bcc8f4359627a9b7ce44ede6fdd75d9d30f68255c7383d3a6226"}, {file = "Sphinx-4.5.0.tar.gz", hash = "sha256:7bf8ca9637a4ee15af412d1a1d9689fec70523a68ca9bb9127c2f3eeb344e2e6"}, ] -sphinx-mdinclude = [ + +[package.dependencies] +alabaster = ">=0.7,<0.8" +babel = ">=1.3" +colorama = {version = ">=0.3.5", markers = "sys_platform == \"win32\""} +docutils = ">=0.14,<0.18" +imagesize = "*" +Jinja2 = ">=2.3" +packaging = "*" +Pygments = ">=2.0" +requests = ">=2.5.0" +snowballstemmer = ">=1.1" +sphinxcontrib-applehelp = "*" +sphinxcontrib-devhelp = "*" +sphinxcontrib-htmlhelp = ">=2.0.0" +sphinxcontrib-jsmath = "*" +sphinxcontrib-qthelp = "*" +sphinxcontrib-serializinghtml = ">=1.1.5" + +[package.extras] +docs = ["sphinxcontrib-websupport"] +lint = ["docutils-stubs", "flake8 (>=3.5.0)", "isort", "mypy (>=0.931)", "types-requests", "types-typed-ast"] +test = ["cython", "html5lib", "pytest", "pytest-cov", "typed-ast"] + +[[package]] +name = "sphinx-mdinclude" +version = "0.5.3" +description = "Markdown extension for Sphinx" +optional = false +python-versions = ">=3.6" +files = [ {file = "sphinx_mdinclude-0.5.3-py3-none-any.whl", hash = "sha256:02afadf4597aecf8255a702956eff5b8c5cb9658ea995c3d361722d2ed78cca9"}, {file = "sphinx_mdinclude-0.5.3.tar.gz", hash = "sha256:2998e3d18b3022c9983d1b72191fe37e25ffccd54165cbe3acb22cceedd91af4"}, ] -sphinx-rtd-theme = [ + +[package.dependencies] +docutils = ">=0.16,<1.0" +mistune = ">=2.0,<3.0" +pygments = ">=2.8" + +[[package]] +name = "sphinx-rtd-theme" +version = "1.3.0" +description = "Read the Docs theme for Sphinx" +optional = false +python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,>=2.7" +files = [ {file = "sphinx_rtd_theme-1.3.0-py2.py3-none-any.whl", hash = "sha256:46ddef89cc2416a81ecfbeaceab1881948c014b1b6e4450b815311a89fb977b0"}, {file = "sphinx_rtd_theme-1.3.0.tar.gz", hash = "sha256:590b030c7abb9cf038ec053b95e5380b5c70d61591eb0b552063fbe7c41f0931"}, ] -sphinxcontrib-applehelp = [ + +[package.dependencies] +docutils = "<0.19" +sphinx = ">=1.6,<8" +sphinxcontrib-jquery = ">=4,<5" + +[package.extras] +dev = ["bump2version", "sphinxcontrib-httpdomain", "transifex-client", "wheel"] + +[[package]] +name = "sphinxcontrib-applehelp" +version = "1.0.4" +description = "sphinxcontrib-applehelp is a Sphinx extension which outputs Apple help books" +optional = false +python-versions = ">=3.8" +files = [ {file = "sphinxcontrib-applehelp-1.0.4.tar.gz", hash = "sha256:828f867945bbe39817c210a1abfd1bc4895c8b73fcaade56d45357a348a07d7e"}, {file = "sphinxcontrib_applehelp-1.0.4-py3-none-any.whl", hash = "sha256:29d341f67fb0f6f586b23ad80e072c8e6ad0b48417db2bde114a4c9746feb228"}, ] -sphinxcontrib-devhelp = [ + +[package.extras] +lint = ["docutils-stubs", "flake8", "mypy"] +test = ["pytest"] + +[[package]] +name = "sphinxcontrib-devhelp" +version = "1.0.2" +description = "sphinxcontrib-devhelp is a sphinx extension which outputs Devhelp document." +optional = false +python-versions = ">=3.5" +files = [ {file = "sphinxcontrib-devhelp-1.0.2.tar.gz", hash = "sha256:ff7f1afa7b9642e7060379360a67e9c41e8f3121f2ce9164266f61b9f4b338e4"}, {file = "sphinxcontrib_devhelp-1.0.2-py2.py3-none-any.whl", hash = "sha256:8165223f9a335cc1af7ffe1ed31d2871f325254c0423bc0c4c7cd1c1e4734a2e"}, ] -sphinxcontrib-htmlhelp = [ + +[package.extras] +lint = ["docutils-stubs", "flake8", "mypy"] +test = ["pytest"] + +[[package]] +name = "sphinxcontrib-htmlhelp" +version = "2.0.1" +description = "sphinxcontrib-htmlhelp is a sphinx extension which renders HTML help files" +optional = false +python-versions = ">=3.8" +files = [ {file = "sphinxcontrib-htmlhelp-2.0.1.tar.gz", hash = "sha256:0cbdd302815330058422b98a113195c9249825d681e18f11e8b1f78a2f11efff"}, {file = "sphinxcontrib_htmlhelp-2.0.1-py3-none-any.whl", hash = "sha256:c38cb46dccf316c79de6e5515e1770414b797162b23cd3d06e67020e1d2a6903"}, ] -sphinxcontrib-jquery = [ + +[package.extras] +lint = ["docutils-stubs", "flake8", "mypy"] +test = ["html5lib", "pytest"] + +[[package]] +name = "sphinxcontrib-jquery" +version = "4.1" +description = "Extension to include jQuery on newer Sphinx releases" +optional = false +python-versions = ">=2.7" +files = [ {file = "sphinxcontrib-jquery-4.1.tar.gz", hash = "sha256:1620739f04e36a2c779f1a131a2dfd49b2fd07351bf1968ced074365933abc7a"}, {file = "sphinxcontrib_jquery-4.1-py2.py3-none-any.whl", hash = "sha256:f936030d7d0147dd026a4f2b5a57343d233f1fc7b363f68b3d4f1cb0993878ae"}, ] -sphinxcontrib-jsmath = [ + +[package.dependencies] +Sphinx = ">=1.8" + +[[package]] +name = "sphinxcontrib-jsmath" +version = "1.0.1" +description = "A sphinx extension which renders display math in HTML via JavaScript" +optional = false +python-versions = ">=3.5" +files = [ {file = "sphinxcontrib-jsmath-1.0.1.tar.gz", hash = "sha256:a9925e4a4587247ed2191a22df5f6970656cb8ca2bd6284309578f2153e0c4b8"}, {file = "sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl", hash = "sha256:2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178"}, ] -sphinxcontrib-qthelp = [ + +[package.extras] +test = ["flake8", "mypy", "pytest"] + +[[package]] +name = "sphinxcontrib-qthelp" +version = "1.0.3" +description = "sphinxcontrib-qthelp is a sphinx extension which outputs QtHelp document." +optional = false +python-versions = ">=3.5" +files = [ {file = "sphinxcontrib-qthelp-1.0.3.tar.gz", hash = "sha256:4c33767ee058b70dba89a6fc5c1892c0d57a54be67ddd3e7875a18d14cba5a72"}, {file = "sphinxcontrib_qthelp-1.0.3-py2.py3-none-any.whl", hash = "sha256:bd9fc24bcb748a8d51fd4ecaade681350aa63009a347a8c14e637895444dfab6"}, ] -sphinxcontrib-serializinghtml = [ + +[package.extras] +lint = ["docutils-stubs", "flake8", "mypy"] +test = ["pytest"] + +[[package]] +name = "sphinxcontrib-serializinghtml" +version = "1.1.5" +description = "sphinxcontrib-serializinghtml is a sphinx extension which outputs \"serialized\" HTML files (json and pickle)." +optional = false +python-versions = ">=3.5" +files = [ {file = "sphinxcontrib-serializinghtml-1.1.5.tar.gz", hash = "sha256:aa5f6de5dfdf809ef505c4895e51ef5c9eac17d0f287933eb49ec495280b6952"}, {file = "sphinxcontrib_serializinghtml-1.1.5-py2.py3-none-any.whl", hash = "sha256:352a9a00ae864471d3a7ead8d7d79f5fc0b57e8b3f95e9867eb9eb28999b92fd"}, ] -stack-data = [ + +[package.extras] +lint = ["docutils-stubs", "flake8", "mypy"] +test = ["pytest"] + +[[package]] +name = "stack-data" +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.3-py3-none-any.whl", hash = "sha256:d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695"}, {file = "stack_data-0.6.3.tar.gz", hash = "sha256:836a778de4fec4dcd1dcd89ed8abff8a221f58308462e1c4aa2a3cf30148f0b9"}, ] -statsmodels = [ + +[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"}, @@ -3579,31 +3448,180 @@ statsmodels = [ {file = "statsmodels-0.14.0-cp39-cp39-win_amd64.whl", hash = "sha256:8d1e3e10dfbfcd58119ba5a4d3c7d519182b970a2aebaf0b6f539f55ae16058d"}, {file = "statsmodels-0.14.0.tar.gz", hash = "sha256:6875c7d689e966d948f15eb816ab5616f4928706b180cf470fd5907ab6f647a4"}, ] -terminado = [ + +[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 = "sympy" +version = "1.13.1" +description = "Computer algebra system (CAS) in Python" +optional = false +python-versions = ">=3.8" +files = [ + {file = "sympy-1.13.1-py3-none-any.whl", hash = "sha256:db36cdc64bf61b9b24578b6f7bab1ecdd2452cf008f34faa33776680c26d66f8"}, + {file = "sympy-1.13.1.tar.gz", hash = "sha256:9cebf7e04ff162015ce31c9c6c9144daa34a93bd082f54fd8f12deca4f47515f"}, +] + +[package.dependencies] +mpmath = ">=1.1.0,<1.4" + +[package.extras] +dev = ["hypothesis (>=6.70.0)", "pytest (>=7.1.0)"] + +[[package]] +name = "terminado" +version = "0.18.0" +description = "Tornado websocket backend for the Xterm.js Javascript terminal emulator library." +optional = false +python-versions = ">=3.8" +files = [ {file = "terminado-0.18.0-py3-none-any.whl", hash = "sha256:87b0d96642d0fe5f5abd7783857b9cab167f221a39ff98e3b9619a788a3c0f2e"}, {file = "terminado-0.18.0.tar.gz", hash = "sha256:1ea08a89b835dd1b8c0c900d92848147cef2537243361b2e3f4dc15df9b6fded"}, ] -threadpoolctl = [ + +[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"] +typing = ["mypy (>=1.6,<2.0)", "traitlets (>=5.11.1)"] + +[[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"}, ] -tinycss2 = [ + +[[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"}, ] -toml = [ + +[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"}, ] -tomli = [ + +[[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"}, ] -tomlkit = [ + +[[package]] +name = "tomlkit" +version = "0.12.3" +description = "Style preserving TOML library" +optional = false +python-versions = ">=3.7" +files = [ {file = "tomlkit-0.12.3-py3-none-any.whl", hash = "sha256:b0a645a9156dc7cb5d3a1f0d4bab66db287fcb8e0430bdd4664a095ea16414ba"}, {file = "tomlkit-0.12.3.tar.gz", hash = "sha256:75baf5012d06501f07bee5bf8e801b9f343e7aac5a92581f20f80ce632e6b5a4"}, ] -tornado = [ + +[[package]] +name = "torch" +version = "2.5.1" +description = "Tensors and Dynamic neural networks in Python with strong GPU acceleration" +optional = false +python-versions = ">=3.8.0" +files = [ + {file = "torch-2.5.1-cp310-cp310-manylinux1_x86_64.whl", hash = "sha256:71328e1bbe39d213b8721678f9dcac30dfc452a46d586f1d514a6aa0a99d4744"}, + {file = "torch-2.5.1-cp310-cp310-manylinux2014_aarch64.whl", hash = "sha256:34bfa1a852e5714cbfa17f27c49d8ce35e1b7af5608c4bc6e81392c352dbc601"}, + {file = "torch-2.5.1-cp310-cp310-win_amd64.whl", hash = "sha256:32a037bd98a241df6c93e4c789b683335da76a2ac142c0973675b715102dc5fa"}, + {file = "torch-2.5.1-cp310-none-macosx_11_0_arm64.whl", hash = "sha256:23d062bf70776a3d04dbe74db950db2a5245e1ba4f27208a87f0d743b0d06e86"}, + {file = "torch-2.5.1-cp311-cp311-manylinux1_x86_64.whl", hash = "sha256:de5b7d6740c4b636ef4db92be922f0edc425b65ed78c5076c43c42d362a45457"}, + {file = "torch-2.5.1-cp311-cp311-manylinux2014_aarch64.whl", hash = "sha256:340ce0432cad0d37f5a31be666896e16788f1adf8ad7be481196b503dad675b9"}, + {file = "torch-2.5.1-cp311-cp311-win_amd64.whl", hash = "sha256:603c52d2fe06433c18b747d25f5c333f9c1d58615620578c326d66f258686f9a"}, + {file = "torch-2.5.1-cp311-none-macosx_11_0_arm64.whl", hash = "sha256:31f8c39660962f9ae4eeec995e3049b5492eb7360dd4f07377658ef4d728fa4c"}, + {file = "torch-2.5.1-cp312-cp312-manylinux1_x86_64.whl", hash = "sha256:ed231a4b3a5952177fafb661213d690a72caaad97d5824dd4fc17ab9e15cec03"}, + {file = "torch-2.5.1-cp312-cp312-manylinux2014_aarch64.whl", hash = "sha256:3f4b7f10a247e0dcd7ea97dc2d3bfbfc90302ed36d7f3952b0008d0df264e697"}, + {file = "torch-2.5.1-cp312-cp312-win_amd64.whl", hash = "sha256:73e58e78f7d220917c5dbfad1a40e09df9929d3b95d25e57d9f8558f84c9a11c"}, + {file = "torch-2.5.1-cp312-none-macosx_11_0_arm64.whl", hash = "sha256:8c712df61101964eb11910a846514011f0b6f5920c55dbf567bff8a34163d5b1"}, + {file = "torch-2.5.1-cp313-cp313-manylinux1_x86_64.whl", hash = "sha256:9b61edf3b4f6e3b0e0adda8b3960266b9009d02b37555971f4d1c8f7a05afed7"}, + {file = "torch-2.5.1-cp39-cp39-manylinux1_x86_64.whl", hash = "sha256:1f3b7fb3cf7ab97fae52161423f81be8c6b8afac8d9760823fd623994581e1a3"}, + {file = "torch-2.5.1-cp39-cp39-manylinux2014_aarch64.whl", hash = "sha256:7974e3dce28b5a21fb554b73e1bc9072c25dde873fa00d54280861e7a009d7dc"}, + {file = "torch-2.5.1-cp39-cp39-win_amd64.whl", hash = "sha256:46c817d3ea33696ad3b9df5e774dba2257e9a4cd3c4a3afbf92f6bb13ac5ce2d"}, + {file = "torch-2.5.1-cp39-none-macosx_11_0_arm64.whl", hash = "sha256:8046768b7f6d35b85d101b4b38cba8aa2f3cd51952bc4c06a49580f2ce682291"}, +] + +[package.dependencies] +filelock = "*" +fsspec = "*" +jinja2 = "*" +networkx = "*" +nvidia-cublas-cu12 = {version = "12.4.5.8", markers = "platform_system == \"Linux\" and platform_machine == \"x86_64\""} +nvidia-cuda-cupti-cu12 = {version = "12.4.127", markers = "platform_system == \"Linux\" and platform_machine == \"x86_64\""} +nvidia-cuda-nvrtc-cu12 = {version = "12.4.127", markers = "platform_system == \"Linux\" and platform_machine == \"x86_64\""} +nvidia-cuda-runtime-cu12 = {version = "12.4.127", markers = "platform_system == \"Linux\" and platform_machine == \"x86_64\""} +nvidia-cudnn-cu12 = {version = "9.1.0.70", markers = "platform_system == \"Linux\" and platform_machine == \"x86_64\""} +nvidia-cufft-cu12 = {version = "11.2.1.3", markers = "platform_system == \"Linux\" and platform_machine == \"x86_64\""} +nvidia-curand-cu12 = {version = "10.3.5.147", markers = "platform_system == \"Linux\" and platform_machine == \"x86_64\""} +nvidia-cusolver-cu12 = {version = "11.6.1.9", markers = "platform_system == \"Linux\" and platform_machine == \"x86_64\""} +nvidia-cusparse-cu12 = {version = "12.3.1.170", markers = "platform_system == \"Linux\" and platform_machine == \"x86_64\""} +nvidia-nccl-cu12 = {version = "2.21.5", markers = "platform_system == \"Linux\" and platform_machine == \"x86_64\""} +nvidia-nvjitlink-cu12 = {version = "12.4.127", markers = "platform_system == \"Linux\" and platform_machine == \"x86_64\""} +nvidia-nvtx-cu12 = {version = "12.4.127", markers = "platform_system == \"Linux\" and platform_machine == \"x86_64\""} +sympy = {version = "1.13.1", markers = "python_version >= \"3.9\""} +triton = {version = "3.1.0", markers = "platform_system == \"Linux\" and platform_machine == \"x86_64\" and python_version < \"3.13\""} +typing-extensions = ">=4.8.0" + +[package.extras] +opt-einsum = ["opt-einsum (>=3.3)"] +optree = ["optree (>=0.12.0)"] + +[[package]] +name = "tornado" +version = "6.4" +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.4-cp38-abi3-macosx_10_9_universal2.whl", hash = "sha256:02ccefc7d8211e5a7f9e8bc3f9e5b0ad6262ba2fbb683a6443ecc804e5224ce0"}, {file = "tornado-6.4-cp38-abi3-macosx_10_9_x86_64.whl", hash = "sha256:27787de946a9cffd63ce5814c33f734c627a87072ec7eed71f7fc4417bb16263"}, {file = "tornado-6.4-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f7894c581ecdcf91666a0912f18ce5e757213999e183ebfc2c3fdbf4d5bd764e"}, @@ -3616,55 +3634,217 @@ tornado = [ {file = "tornado-6.4-cp38-abi3-win_amd64.whl", hash = "sha256:10aeaa8006333433da48dec9fe417877f8bcc21f48dda8d661ae79da357b2a63"}, {file = "tornado-6.4.tar.gz", hash = "sha256:72291fa6e6bc84e626589f1c29d90a5a6d593ef5ae68052ee2ef000dfd273dee"}, ] -tox = [ + +[[package]] +name = "tox" +version = "3.28.0" +description = "tox is a generic virtualenv management and test command line tool" +optional = false +python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,>=2.7" +files = [ {file = "tox-3.28.0-py2.py3-none-any.whl", hash = "sha256:57b5ab7e8bb3074edc3c0c0b4b192a4f3799d3723b2c5b76f1fa9f2d40316eea"}, {file = "tox-3.28.0.tar.gz", hash = "sha256:d0d28f3fe6d6d7195c27f8b054c3e99d5451952b54abdae673b71609a581f640"}, ] -traitlets = [ + +[package.dependencies] +colorama = {version = ">=0.4.1", markers = "platform_system == \"Windows\""} +filelock = ">=3.0.0" +packaging = ">=14" +pluggy = ">=0.12.0" +py = ">=1.4.17" +six = ">=1.14.0" +tomli = {version = ">=2.0.1", markers = "python_version >= \"3.7\" and python_version < \"3.11\""} +virtualenv = ">=16.0.0,<20.0.0 || >20.0.0,<20.0.1 || >20.0.1,<20.0.2 || >20.0.2,<20.0.3 || >20.0.3,<20.0.4 || >20.0.4,<20.0.5 || >20.0.5,<20.0.6 || >20.0.6,<20.0.7 || >20.0.7" + +[package.extras] +docs = ["pygments-github-lexers (>=0.0.5)", "sphinx (>=2.0.0)", "sphinxcontrib-autoprogram (>=0.1.5)", "towncrier (>=18.5.0)"] +testing = ["flaky (>=3.4.0)", "freezegun (>=0.3.11)", "pathlib2 (>=2.3.3)", "psutil (>=5.6.1)", "pytest (>=4.0.0)", "pytest-cov (>=2.5.1)", "pytest-mock (>=1.10.0)", "pytest-randomly (>=1.0.0)"] + +[[package]] +name = "traitlets" +version = "5.14.0" +description = "Traitlets Python configuration system" +optional = false +python-versions = ">=3.8" +files = [ {file = "traitlets-5.14.0-py3-none-any.whl", hash = "sha256:f14949d23829023013c47df20b4a76ccd1a85effb786dc060f34de7948361b33"}, {file = "traitlets-5.14.0.tar.gz", hash = "sha256:fcdaa8ac49c04dfa0ed3ee3384ef6dfdb5d6f3741502be247279407679296772"}, ] -types-python-dateutil = [ + +[package.extras] +docs = ["myst-parser", "pydata-sphinx-theme", "sphinx"] +test = ["argcomplete (>=3.0.3)", "mypy (>=1.7.0)", "pre-commit", "pytest (>=7.0,<7.5)", "pytest-mock", "pytest-mypy-testing"] + +[[package]] +name = "triton" +version = "3.1.0" +description = "A language and compiler for custom Deep Learning operations" +optional = false +python-versions = "*" +files = [ + {file = "triton-3.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6b0dd10a925263abbe9fa37dcde67a5e9b2383fc269fdf59f5657cac38c5d1d8"}, + {file = "triton-3.1.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0f34f6e7885d1bf0eaaf7ba875a5f0ce6f3c13ba98f9503651c1e6dc6757ed5c"}, + {file = "triton-3.1.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c8182f42fd8080a7d39d666814fa36c5e30cc00ea7eeeb1a2983dbb4c99a0fdc"}, + {file = "triton-3.1.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6dadaca7fc24de34e180271b5cf864c16755702e9f63a16f62df714a8099126a"}, + {file = "triton-3.1.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:aafa9a20cd0d9fee523cd4504aa7131807a864cd77dcf6efe7e981f18b8c6c11"}, +] + +[package.dependencies] +filelock = "*" + +[package.extras] +build = ["cmake (>=3.20)", "lit"] +tests = ["autopep8", "flake8", "isort", "llnl-hatchet", "numpy", "pytest", "scipy (>=1.7.1)"] +tutorials = ["matplotlib", "pandas", "tabulate"] + +[[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"}, ] -types-pytz = [ + +[[package]] +name = "types-pytz" +version = "2023.3.1.1" +description = "Typing stubs for pytz" +optional = false +python-versions = "*" +files = [ {file = "types-pytz-2023.3.1.1.tar.gz", hash = "sha256:cc23d0192cd49c8f6bba44ee0c81e4586a8f30204970fc0894d209a6b08dab9a"}, {file = "types_pytz-2023.3.1.1-py3-none-any.whl", hash = "sha256:1999a123a3dc0e39a2ef6d19f3f8584211de9e6a77fe7a0259f04a524e90a5cf"}, ] -typing-extensions = [ + +[[package]] +name = "typing-extensions" +version = "4.9.0" +description = "Backported and Experimental Type Hints for Python 3.8+" +optional = false +python-versions = ">=3.8" +files = [ {file = "typing_extensions-4.9.0-py3-none-any.whl", hash = "sha256:af72aea155e91adfc61c3ae9e0e342dbc0cba726d6cba4b6c72c1f34e47291cd"}, {file = "typing_extensions-4.9.0.tar.gz", hash = "sha256:23478f88c37f27d76ac8aee6c905017a143b0b1b886c3c9f66bc2fd94f9f5783"}, ] -uri-template = [ + +[[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"}, ] -urllib3 = [ + +[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.1.0" +description = "HTTP library with thread-safe connection pooling, file post, and more." +optional = false +python-versions = ">=3.8" +files = [ {file = "urllib3-2.1.0-py3-none-any.whl", hash = "sha256:55901e917a5896a349ff771be919f8bd99aff50b79fe58fec595eb37bbc56bb3"}, {file = "urllib3-2.1.0.tar.gz", hash = "sha256:df7aa8afb0148fa78488e7899b2c59b5f4ffcfa82e6c54ccb9dd37c1d7b52d54"}, ] -virtualenv = [ + +[package.extras] +brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)"] +socks = ["pysocks (>=1.5.6,!=1.5.7,<2.0)"] +zstd = ["zstandard (>=0.18.0)"] + +[[package]] +name = "virtualenv" +version = "20.25.0" +description = "Virtual Python Environment builder" +optional = false +python-versions = ">=3.7" +files = [ {file = "virtualenv-20.25.0-py3-none-any.whl", hash = "sha256:4238949c5ffe6876362d9c0180fc6c3a824a7b12b80604eeb8085f2ed7460de3"}, {file = "virtualenv-20.25.0.tar.gz", hash = "sha256:bf51c0d9c7dd63ea8e44086fa1e4fb1093a31e963b86959257378aef020e1f1b"}, ] -wcwidth = [ + +[package.dependencies] +distlib = ">=0.3.7,<1" +filelock = ">=3.12.2,<4" +platformdirs = ">=3.9.1,<5" + +[package.extras] +docs = ["furo (>=2023.7.26)", "proselint (>=0.13)", "sphinx (>=7.1.2)", "sphinx-argparse (>=0.4)", "sphinxcontrib-towncrier (>=0.2.1a0)", "towncrier (>=23.6)"] +test = ["covdefaults (>=2.3)", "coverage (>=7.2.7)", "coverage-enable-subprocess (>=1)", "flaky (>=3.7)", "packaging (>=23.1)", "pytest (>=7.4)", "pytest-env (>=0.8.2)", "pytest-freezer (>=0.4.8)", "pytest-mock (>=3.11.1)", "pytest-randomly (>=3.12)", "pytest-timeout (>=2.1)", "setuptools (>=68)", "time-machine (>=2.10)"] + +[[package]] +name = "wcwidth" +version = "0.2.12" +description = "Measures the displayed width of unicode strings in a terminal" +optional = false +python-versions = "*" +files = [ {file = "wcwidth-0.2.12-py2.py3-none-any.whl", hash = "sha256:f26ec43d96c8cbfed76a5075dac87680124fa84e0855195a6184da9c187f133c"}, {file = "wcwidth-0.2.12.tar.gz", hash = "sha256:f01c104efdf57971bcb756f054dd58ddec5204dd15fa31d6503ea57947d97c02"}, ] -webcolors = [ + +[[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"}, ] -webencodings = [ + +[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"}, ] -websocket-client = [ + +[[package]] +name = "websocket-client" +version = "1.7.0" +description = "WebSocket client for Python with low level API options" +optional = false +python-versions = ">=3.8" +files = [ {file = "websocket-client-1.7.0.tar.gz", hash = "sha256:10e511ea3a8c744631d3bd77e61eb17ed09304c413ad42cf6ddfa4c7787e8fe6"}, {file = "websocket_client-1.7.0-py3-none-any.whl", hash = "sha256:f4c3d22fec12a2461427a29957ff07d35098ee2d976d3ba244e688b8b4057588"}, ] -widgetsnbextension = [ + +[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"}, ] + +[metadata] +lock-version = "2.0" +python-versions = ">=3.10,<3.11" +content-hash = "479a222d6ad71692a588b9ba1dd7f4391d41cd4d737ef25f626eb7e6c4a7467b" diff --git a/pyproject.toml b/pyproject.toml index e9db685..4e6d196 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -14,6 +14,7 @@ hydra-core = "^1.2.0" black = "23.1.0" mypy = "1.5.0" statsmodels = "^0.14.0" +torch = "^2.5.1" [tool.poetry.dev-dependencies] black = "^23.1.0" diff --git a/sandbox/mdn.py b/sandbox/mdn.py new file mode 100644 index 0000000..00d10f0 --- /dev/null +++ b/sandbox/mdn.py @@ -0,0 +1,172 @@ +import torch +import torch.nn as nn +import torch.optim as optim +from torch.utils.data import TensorDataset, DataLoader +import numpy as np +import pandas as pd +import matplotlib.pyplot as plt + +# Set random seeds for reproducibility +np.random.seed(42) +torch.manual_seed(42) + +# Generate 1D training data +def generate_data(n_samples=200): + x = np.random.uniform(-3, 3, n_samples) + x = np.sort(x) # Sort for better visualization + y = np.zeros_like(x) + + for i in range(n_samples): + if np.random.rand() > 0.5: + y[i] = 0.5 * np.sin(x[i]) + 5 + 0.5 * np.random.randn() + else: + y[i] = 0.5 * np.sin(x[i]) - 5 + 0.5 * np.random.randn() + + return x, y + +# MDN Model +class MDN(nn.Module): + def __init__(self, input_dim=1, hidden_dim=15, n_gaussians=2): + super(MDN, self).__init__() + self.n_gaussians = n_gaussians + + self.hidden = nn.Sequential( + nn.Linear(input_dim, hidden_dim), + nn.ReLU(), + nn.Linear(hidden_dim, hidden_dim), + nn.ReLU() + ) + + self.pi = nn.Linear(hidden_dim, n_gaussians) + self.mu = nn.Linear(hidden_dim, n_gaussians) + self.sigma = nn.Linear(hidden_dim, n_gaussians) + + def forward(self, x): + hidden = self.hidden(x) + pi = torch.softmax(self.pi(hidden), dim=1) + mu = self.mu(hidden) + sigma = torch.exp(self.sigma(hidden)) + return pi, mu, sigma + +# Generate data +x_train, y_train = generate_data(500) +layout_dummy = np.random.randint(0, 2, 500) +component = [1]*500 +data = np.column_stack((x_train, y_train)) # Combine x_train and y_train column-wise +data = np.column_stack((data, layout_dummy)) # Add layout column +data = np.column_stack((data, component)) # Add component column +df = pd.DataFrame(data, columns=["X_train", "y_train", "LAYOUT", "COMPONENTS"]) +df.to_csv("data/ARCADE/test_data.csv", index=False) + +X = torch.FloatTensor(x_train).reshape(-1, 1) +Y = torch.FloatTensor(y_train).reshape(-1, 1) + +# Create data loader +dataset = TensorDataset(X, Y) +loader = DataLoader(dataset, batch_size=32, shuffle=True) + +# Initialize model and optimizer +model = MDN(input_dim=1, hidden_dim=15, n_gaussians=2) +optimizer = optim.Adam(model.parameters(), lr=0.01) + +# Loss function +def mdn_loss(pi, mu, sigma, y): + gaussian_prob = (1.0 / (sigma * np.sqrt(2*np.pi))) * \ + torch.exp(-0.5 * ((y.unsqueeze(1) - mu) / sigma)**2) + weighted_prob = pi * gaussian_prob + return -torch.log(torch.sum(weighted_prob, dim=1) + 1e-6).mean() + +# Training loop +n_epochs = 200 +losses = [] + +for epoch in range(n_epochs): + epoch_loss = 0 + for batch_x, batch_y in loader: + optimizer.zero_grad() + pi, mu, sigma = model(batch_x) + loss = mdn_loss(pi, mu, sigma, batch_y) + loss.backward() + optimizer.step() + epoch_loss += loss.item() + + losses.append(epoch_loss / len(loader)) + + if (epoch + 1) % 100 == 0: + print(f'Epoch {epoch+1}/{n_epochs}, Loss: {losses[-1]:.4f}') + +# Generate predictions for visualization +model.eval() +X_test, y_test = generate_data(200) +X_test = torch.FloatTensor(X_test).reshape(-1, 1) +y_test = torch.FloatTensor(y_test).reshape(-1, 1) + +with torch.no_grad(): + pi, mu, sigma = model(X_test) + pi = pi.numpy() + mu = mu.numpy() + sigma = sigma.numpy() + +# Calculate R2 score +from sklearn.metrics import r2_score +y_pred = np.sum(pi * mu, axis=1) +print(y_pred) +r2 = r2_score(y_test, y_pred) +print(f"\nR2 Score: {r2:.4f}") +X_test = X_test.numpy() + +# Plotting +plt.figure(figsize=(15, 10)) + +# Plot 1: Training Data and Predictions +plt.subplot(2, 1, 1) + +# Plot training data +plt.scatter(x_train, y_train, alpha=0.5, label='Training Data', color='blue', s=20) + +# Plot predicted means and uncertainties for each Gaussian component +colors = ['red', 'green'] +for i in range(model.n_gaussians): + # Plot mean + plt.plot(X_test, mu[:, i], color=colors[i], + label=f'Mean (Gaussian {i+1})', linewidth=2) + + # Plot uncertainty bounds (±2 sigma) + plt.fill_between(X_test.flatten(), + mu[:, i] - 2*sigma[:, i], + mu[:, i] + 2*sigma[:, i], + color=colors[i], alpha=0.2, + label=f'Uncertainty (Gaussian {i+1})') + +plt.xlabel('Input (x)') +plt.ylabel('Output (y)') +plt.title('Training Data with Predicted Means and Uncertainties') +plt.legend() +plt.grid(True, alpha=0.3) + +# Plot 2: Mixing Coefficients +plt.subplot(2, 1, 2) +for i in range(model.n_gaussians): + plt.plot(X_test, pi[:, i], color=colors[i], + label=f'π{i+1}', linewidth=2) +plt.xlabel('Input (x)') +plt.ylabel('Mixing Coefficient (π)') +plt.title('Mixing Coefficients vs Input') +plt.legend() +plt.grid(True, alpha=0.3) + +plt.tight_layout() +plt.show() +plt.savefig('mdn_results.png') + +# Print example predictions for specific x values +test_points = [-1, 0, 1] +print("\nExample predictions at specific points:") +for x_val in test_points: + x = torch.tensor([[x_val]], dtype=torch.float32) + with torch.no_grad(): + pi, mu, sigma = model(x) + print(f"\nx = {x_val}") + print(f"Mixing coefficients (π): {pi.numpy().flatten()}") + print(f"Means (μ): {mu.numpy().flatten()}") + print(f"Standard deviations (σ): {sigma.numpy().flatten()}") \ No newline at end of file diff --git a/sandbox/mdn_results.png b/sandbox/mdn_results.png new file mode 100644 index 0000000000000000000000000000000000000000..4f617a97a7945cdbb02cb0ea6cb394095656c98b GIT binary patch literal 142392 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

i5y&prOtE6$<&T`KS&>S3VqFm!Zu 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 i7m%Eh4+2Yukaw^r!!D3rT6f;g z!pvZFU(@z45`V1p)U4E( z%kr?^(sAo32Epke?wRLRgWh>XtbzH*3;ldiFrC1`!Sm~7rgFU(v2aOlg3#hislDeR z5{fYUs!XYlFkD)>=RY87CD?oGndrxB7T6wnr;wX4+EA^%s?$rL)ApP3&-HP1+b=)D zm3W_#RAP|stw%)eH+fR+vaIfp%(Tj3eUa}4Rm?+6us_KC&^bPPrj^86_D5BOiM)`Q zL90|s%O0|WI9x75Hcgh9=q>f>^Z6a^S+!ac>Jp$wV?S&iq)fY~Jxt z>pMM~eS;Gz?Tyzt{~u9j85KvSnMR9RYJ z65!r!MNKe5`LnLPJU%tfig-pt4unX3`9pM~hb>a#bE_NPUt^d07cn@{;?tRKQLmS@ z^37s7)SX7;3bV>7-gJ|yF6u}EwAlGE6ej-q=4cV_IBhM#_jpx-ZS?bJFB%R6pKQ`a zt(+iDDW<0~(qYOUK|DV#AQ|h+2DU5AxZdqyy8BCZ1^V-c1eew3`;7So`!q+KNGawJ z5!F?TS2YNnkS~g+HEW(Z{Jse~4aaY_0^GelNP}8*i~L$0IGb+ect&n_FOxs|?aC%% zRbNO0$;b@PT_!$@%OaEVe5lIn;Ak%rg=&?yt7 zvV!K~WgG0{mUW%3D4oh?o0S@~k5zJK<-|0>#OSDWw;VKb!+w?%|7}nMNKSzzhRh?o zn_<`?eZ8=-@Z-|hABUUk`#+ELY^{GSP>?P8bN5PF)=pTQ_(uRsT+&DP5ht*@{up{# z_TK>m%eP$Q%ZCYPj~;!$iuGIXZfT#IzdlC0CL8qq{Cx9M=>iPeA9NhBHaDPLkT3a^C9-ti_QIgh5!8&e zCyW6-cE`Pdxf=O&xHJ47KJfIRGR(Hd;j!$;1tFghNJbUpEo)G!-+VnC`Lbvujun1S zl2KHj`XiIsRA_c&KM4_SX=JHO1A2es>%6p%eb0Jdn|Vx$EMb_-RFmT_<{gu6{xc6W zY+H?yJ1cS^m=Z`g4JW5ITUdNY7!8*h;FY7zEAIK03;KIf$yuZmi=+~Pd-es6Qr!T- z(>7=zdcbe4L7SVqqjoW?)ZVF}V=xFUIXm4&b<^slI%XT2@Wiq}OT7l=YTQvDG%Q6sex zDW0WulnCR(Y#RSXRNzb$Mzm+v2&HLB52Cd^?%7Ia1A%m<@TfX3`1St;<*w}QQSFi@ zIobfEK@ z&#+^6lLY@iwD7Ku8K|>t36VQ-VuD{Rs0p4Ysc>{jKv~E%?aBMg_}j(J6|V;(4M>T8^X+~rFn*WuOWP1nxKr?(8s>9u7$VtzmBI}YA^Aj0~Psdmp ztkv_!x(C6}GMU)KQPasPm-t-?e6)h>mg&^iXYNpsurLeDVAuN2pR!1D*gl`%vra0F zSvs(AZ~oYF9~mA^&0mOY5W7k;373`flBTG|QCM--Vk- zp(}AJlfStmK1--LF-J*560!+^O;u;8R>`;~1>jl;a&DJbdq+ z-7)pwwZ&D#EykPKOwRqK3sZjA?k+_Jwd4iZavT_gFE7FsGKGI_)z>pkoL^Cmd-(%y zTd9($Mo$gd&hVh}4+75eH~6PMHPJu@hRkGB-M}5;pw<5*3~F13`E)U-fo$P>&}pt_|s>qA8XlFZgTn!_fgLm2^F;#N2bzUt<2*O� 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 SND{Y$qNi*4RrcOvf&Tzo_1AI$ literal 0 HcmV?d00001 diff --git a/src/conf/cs/models/mdn.yaml b/src/conf/cs/models/mdn.yaml index 1a5fdd1..da44a2b 100644 --- a/src/conf/cs/models/mdn.yaml +++ b/src/conf/cs/models/mdn.yaml @@ -1,25 +1,19 @@ -mlp: +mdn: continuous: - alpha: + learning_rate: type: float - range: [0.0001, 1] + range: [0.001, 0.01] search: log + discrete: - activation: - - identity - - logistic - - tanh - - relu - hidden_layer_sizes: - - (5,) - - (5,5) - - (5,10) - - (25,) - - (25, 25) - - (25, 50) - - (50,) - - (50, 25) - - (50, 50) + hidden_dim: + - 16 + num_gaussians: + - 2 + output_dim: + - 1 + static: - solver: lbfgs - max_iter: 1000 + epochs: 500 + + diff --git a/src/conf/cs/test.yaml b/src/conf/cs/test.yaml new file mode 100644 index 0000000..80899fd --- /dev/null +++ b/src/conf/cs/test.yaml @@ -0,0 +1,16 @@ +defaults: + - models/mdn + - _self_ +experiments: + TEST-MDN: + files: + data: test_data.csv + paths: + log: ${hydra:runtime.cwd}/logs/ARCADE/test/ + data: ${hydra:runtime.cwd}/data/ARCADE/ + results: ${hydra:runtime.cwd}/results/ARCADE/test/ +data: + features: + - X_train + response: + - y_train diff --git a/src/conf/cs/topological_0_metric_8.yaml b/src/conf/cs/topological_0_metric_8.yaml index 1530a75..d7e1ca0 100644 --- a/src/conf/cs/topological_0_metric_8.yaml +++ b/src/conf/cs/topological_0_metric_8.yaml @@ -1,8 +1,5 @@ defaults: - - models/mlr - - models/rf - - models/svr - - models/mlp + - models/mdn - _self_ experiments: COUPLED-C: diff --git a/src/config.py b/src/config.py index 8d9977c..f77f844 100644 --- a/src/config.py +++ b/src/config.py @@ -52,7 +52,17 @@ def main(config: DictConfig) -> None: experiment.save_train_test() experiment.save_manifest() experiment.run() - - + model = experiment._best_models['MDN'].model.model + test_points = [-1, 0, 1] + print("\nExample predictions at specific points:") + import torch + for x_val in test_points: + x = torch.tensor([[x_val]], dtype=torch.float32) + with torch.no_grad(): + pi, mu, sigma = model.forward(x) + print(f"\nx = {x_val}") + print(f"Mixing coefficients (π): {pi.numpy().flatten()}") + print(f"Means (μ): {mu.numpy().flatten()}") + print(f"Standard deviations (σ): {sigma.numpy().flatten()}") if __name__ == "__main__": main() diff --git a/src/config_utils/assign_models.py b/src/config_utils/assign_models.py index b949933..24addcf 100644 --- a/src/config_utils/assign_models.py +++ b/src/config_utils/assign_models.py @@ -4,10 +4,11 @@ from permutation.models.rf import RF from permutation.models.svr import SVReg from permutation.models.mlp import MLP +from permutation.models.mdn import MDNReg from permutation.models.modelprotocol import Model from permutation.models.hyperparameters import HParams -MODEL_DEPENDENCIES = {"mlr": MLR, "rf": RF, "svr": SVReg, "mlp": MLP} +MODEL_DEPENDENCIES = {"mlr": MLR, "rf": RF, "svr": SVReg, "mlp": MLP, "mdn": MDNReg} def _get_correct_model(model_type: str, hparams: HParams) -> Model: diff --git a/src/permutation/models/mdn.py b/src/permutation/models/mdn.py index 7b9e4c1..a65d587 100644 --- a/src/permutation/models/mdn.py +++ b/src/permutation/models/mdn.py @@ -1,42 +1,106 @@ from typing import Optional, Iterable -from ast import literal_eval +import numpy as np +import torch +import torch.nn as nn +import torch.optim as optim -from sklearn.neural_network import MLPRegressor -from sklearn.base import BaseEstimator, TransformerMixin +from sklearn.base import TransformerMixin +from sklearn.metrics import r2_score from permutation.models.modelprotocol import Model from permutation.models.sklearnmodel import AbstractSKLearnModel from permutation.models.hyperparameters import HParams -class MLP(AbstractSKLearnModel): - """ - Multi-Layer Perceptron model +class MDN(nn.Module): + def __init__(self, hidden_dim=1, output_dim=1, num_gaussians=1, learning_rate=0.001, epochs=1000): + super(MDN, self).__init__() + self.hidden = nn.Sequential( + nn.LazyLinear(hidden_dim), + nn.ReLU(), + nn.Linear(hidden_dim, hidden_dim), + nn.ReLU(), + ) + self.pi_layer = nn.Linear(hidden_dim, num_gaussians) # Mixing coefficients + self.mu_layer = nn.Linear(hidden_dim, num_gaussians * output_dim) # Means + self.sigma_layer = nn.Linear(hidden_dim, num_gaussians * output_dim) # Std deviations + self.num_gaussians = num_gaussians + self.output_dim = output_dim + self.optimizer = optim.Adam(self.parameters(), lr=learning_rate) + self.epochs = epochs + + def forward(self, x): + hidden = self.hidden(x) + pi = torch.softmax(self.pi_layer(hidden), dim=1) # Mixing coefficients + mu = self.mu_layer(hidden).view(-1, self.num_gaussians, self.output_dim) # Means + sigma = torch.exp(self.sigma_layer(hidden)).view(-1, self.num_gaussians, self.output_dim) # Variances + return pi, mu, sigma + + def _mdn_loss(self, pi, mu, sigma, y): + """MDN negative log-likelihood loss""" + y = y.unsqueeze(1) if len(y.shape) == 2 else y.unsqueeze(1).unsqueeze(-1) + gaussian_prob = torch.exp(-0.5 * ((y - mu) / sigma) ** 2) / (sigma * np.sqrt(2 * np.pi)) + weighted_prob = pi * torch.prod(gaussian_prob, dim=2) + loss = -torch.log(torch.sum(weighted_prob, dim=1) + 1e-6).mean() # Avoid log(0) with 1e-6 + return loss + + + def fit(self, X, y): + """Train the MDN using PyTorch.""" + X = torch.tensor(X, dtype=torch.float32) + y = torch.tensor(y.to_numpy(), dtype=torch.float32) + + for _ in range(self.epochs): + self.train() + self.optimizer.zero_grad() + pi, mu, sigma = self.forward(X) + loss = self._mdn_loss(pi, mu, sigma, y) + loss.backward() + self.optimizer.step() - Methods - ------- - set_model(cls, model_dependency, hparams, preprocessing_dependencies): - Set up the model, preprocessing pipeline and read in hyperparameters + return self + + def predict(self, X): + """Predict using the trained MDN.""" + X = torch.tensor(X, dtype=torch.float32) if not isinstance(X, torch.Tensor) else X + self.eval() + with torch.no_grad(): + pi, mu, sigma = self.forward(X) + pi = pi.unsqueeze(-1) + predictions = torch.sum(pi * mu, dim=1) + return predictions.numpy() + + def score(self, X, y, sample_weight=None): + """Compute the R^2 score (default for regression in scikit-learn).""" + predictions = self.predict(X) # Call the predict method + return r2_score(y, predictions, sample_weight=sample_weight) # Use R^2 as the scoring metric + + +class MDNReg(AbstractSKLearnModel): + """ + Mixture Density Network Regressor compatible with scikit-learn. """ - algorithm_name = "Multi-layer Perceptron Regressor" - algorithm_abv = "MLP" + algorithm_name = "Mixture Density Network Regressor" + algorithm_abv = "MDN" algorithm_type = "Regression" + def __init__(self): + """ + """ + self.model = None + + @classmethod def set_model( cls, - model_dependency: BaseEstimator = MLPRegressor, + model_dependency: nn.Module = MDN, hparams: Optional[HParams] = None, preprocessing_dependencies: Optional[Iterable[tuple[str, TransformerMixin]]] = None, ) -> Model: - """Set up model from config files and super class""" + """Set up model from config files and superclass.""" if preprocessing_dependencies is None: preprocessing_dependencies = [] - - if hparams is not None: - _fix_tuple_type(hparams) - return super()._set_model( model_dependency=model_dependency, hparams=hparams, @@ -44,12 +108,4 @@ def set_model( ) -def _fix_tuple_type( - hparams: HParams, - change_arg: str = "hidden_layer_sizes", -) -> None: - """Makes sure config parameter value is evaluated as correct type""" - for i, arg_tuple in enumerate(zip(hparams.args, hparams.values)): - arg, val = arg_tuple - if arg == change_arg: - hparams.values[i] = literal_eval(val) + \ No newline at end of file diff --git a/src/permutation/models/sklearnmodel.py b/src/permutation/models/sklearnmodel.py index cb246e9..887362d 100644 --- a/src/permutation/models/sklearnmodel.py +++ b/src/permutation/models/sklearnmodel.py @@ -67,7 +67,6 @@ def _set_model( model.model = model_dependency() pipeline_list.append((model.algorithm_name, model.model)) # pylint: disable=no-member - model.pipeline = Pipeline(pipeline_list) return model