commit 5a10f91cdd25983cefe4bf34d6958728a29d8fbe Author: James Turk Date: Sun Sep 29 23:48:19 2024 -0500 ipynb diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..763513e --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.ipynb_checkpoints diff --git a/.python-version b/.python-version new file mode 100644 index 0000000..c8cfe39 --- /dev/null +++ b/.python-version @@ -0,0 +1 @@ +3.10 diff --git a/1 - Intro.ipynb b/1 - Intro.ipynb new file mode 100644 index 0000000..1a3d5d4 --- /dev/null +++ b/1 - Intro.ipynb @@ -0,0 +1,2577 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "a8b68fec", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "# MPCS 51042: Python Programming\n", + "# Week 1: Course Overview / Python Basics\n", + "\n", + "## Today\n", + "- Course Overview\n", + "- What is Python?\n", + "- Running Python\n", + "- Basic Syntax & Data Types\n", + "- Functions\n" + ] + }, + { + "cell_type": "markdown", + "id": "9b4be250", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "## Course Overview\n", + "\n", + "Course Website: https://mpcs51042.netlify.app/\n", + "\n", + "[UChicago CS Student Resource Guide](https://uchicago-cs.github.io/student-resource-guide/)\n", + "\n", + "\n", + "**Unix Bootcamp**\n" + ] + }, + { + "cell_type": "markdown", + "id": "7586bb22", + "metadata": {}, + "source": [ + "## Goals of this Course\n", + "\n", + "- Learn to write **readable** & **idiomatic**, Python .\n", + "- Gain exposure to different programming **paradigms**: procedural, functional, object-oriented.\n", + "- Enable future growth as Python programmer via deep fundamentals & gateway to Python ecosystem." + ] + }, + { + "cell_type": "markdown", + "id": "23ec581f", + "metadata": { + "slideshow": { + "slide_type": "slide" + }, + "tags": [] + }, + "source": [ + "## Introduction to Python\n", + "\n", + "### What kind of language is Python?\n", + "\n", + "In a typical Python introduction you'll see it described as an **intepreted & dynamically typed** language.\n", + "\n", + "You'll also sometimes hear languages defined in terms of being **object-oriented, functional, or procedural**. Python, like many of its modern peers, is somewhat agnostic on this front. This course will take advantage of that fact to introduce you to these three styles of programming.\n", + "\n", + "Python is also written with a focus on **readability**. You'll see people talk about code being **Pythonic**. These ideas shape the culture of Python." + ] + }, + { + "cell_type": "markdown", + "id": "388c0b92", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "These things together make Python what it is: a language that is both good for beginners but powerful and expressive enough to e used across nearly all fields.\n", + "\n", + "- Science: CERN, NASA, etc.\n", + "- Big Tech: Google, YouTube, Mozilla, Instagram\n", + "- Journalism/Government: New York Times, Washington Post, USDS (FEC, CFPB, etc.)\n", + "- Film & Games: Firaxis Games, Industrial Light & Magic, Blender\n", + "\n", + "Learning Python in 2024 will open up a world of possibilities to you:\n", + "\n", + "- the most-used libraries for data science & visualization (polars, pandas, altair, matplotlib)\n", + "- several of the most popular backend web frameworks in use today (Django, Flask, FastAPI)\n", + "- thousands of unique libraries for any imaginable purpose: astronomical calculation, encryption, image processing, game programming, machine learning\n", + "\n", + "By the end of this course, you will be able to dive into those libraries; understanding their documentation and how to use them to enhance your own programs" + ] + }, + { + "cell_type": "markdown", + "id": "dfceee96", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "### Python Versions\n", + "\n", + "#### **1994** - Python 1.0\n", + "\n", + "First major public release. Guido was working on the Computer Programming 4 Everyone (CP4E) initiative at Corporation for National Research Initiatives in Reston, VA.\n", + "\n", + "#### **2000** - Python 2.0\n", + "\n", + "The switch to being truly community-driven and the language started down its functional path. Many of the functional elements of Python were introduced around this time.\n" + ] + }, + { + "cell_type": "markdown", + "id": "e163c293", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "#### **2008** - Python 3.0\n", + "\n", + "The first release containing major breaking changes since Python 2.0. Focused on fixing some long-standing pain points in the language, at the cost of people needing to update their code.\n", + "\n", + "Most people in the community hope that there will be no Python 4.0 in that sense, no time that all of the code written needs to be migrated. (This is particularly important because there is so much more Python code being written in all industries today.)\n", + "\n", + "#### Python 3.10, 3.11, 3.12, etc.\n", + "\n", + "A new minor Python release comes out every October and is supported for ~5 years.\n", + "\n", + "New releases add features:\n", + "\n", + "- 3.9, 3.10, 3.11 had a focus on type-checking and improved concurrency\n", + "- 3.12 and 3.13 have introduced *major performance enhancements*, also improved error messages (which may be useful to beginners)\n", + "\n", + "Each version adds a lot more than this, see for an example.\n", + "\n", + "This course will use **Python 3.10** as our minimum version. 3.11-3.13 have not introduced new features that are important for this course." + ] + }, + { + "cell_type": "markdown", + "id": "91c6dd03", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "Depending on what they measure, Python is either the 1st or 2nd most used language today in most surveys. (JavaScript would be the other.)" + ] + }, + { + "attachments": { + "551cc367-52cd-49a7-bedd-4612ee77c664.png": { + "image/png": "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/KFAXnDBBVPBG3WjnV977bWOsQEL4N/97nchfvKw8MILO9rzW9/6VjfjjDNWTvell15y119/vXv44YfdAw884PiNYmmFFVYIio83velNleN68cUX3Q477OAQAB199NFup5126gqLYB5B3i9/+Uv3qU99ym266aZdfsyhGgJXXHFFwHDXXXd1Rx11VLVADfr64he/6PhbZZVV3Je//OUGYx7/UbGTcO211w4F/f73v+9mnXXW8V/olkr47LPPure//e1u5plndj/84Q9bSsWiNQS6EZC2x5e2lB2vvvqqu+uuu9xjjz3mHnnkkWAUAA+y2GKLuUUWWST8Me8vu+yy3Rls2KWtvNxxxx3unnvuCTwIZURptPLKK4f1D327zvgo89J8880XFNczzTRTFwrnnHOO+8pXvuL22GMPd+SRR3Z9NwdDwBAwBAwBQ8AQMATGEgFTUI0l+pa2IWAIdCEwXhRUKAAQfh933HFhId1V0D4cUDSss846Pcdw6qmnus0337zn8BZwOBFAqXnMMceU7uJBMUW7ReFSRu985zuD4mXSpEllXmt/R5h9/vnnh7+ywAhpjzjiiKRyKA6LQAhFEoqlPEKA8973vrfSDo9jjz02KLvYTUN+OT4xRQjbiBMB29e//nU3zTTTpLyZWwkCpqAqAWiAP483BdX+++8fjuz85Cc/2bVjoZ9qQHnO7qi9997bbbzxxsmoRElgCqokPBPSEUOSU045JfCH7Nhti0466SR39dVXh/Z52GGHNZ7M3Xff7Y4//njHiQpltNZaa7n99tvP8WyD2sjL3//+d3f66ae7b3/727lZRtEEr44hRBk98cQTDoMN6DOf+Yxbf/31k0EwPNpiiy3Ct2uuucbZUX9JmMzREDAEDAFDwBAwBMYIAVNQjRHwlqwhYAikERgvCiqOPLnzzjvdpz/9affmN785XdgeXdnVwk4YBFMf/vCHa8ey+uqr28K0NmrDHeDf//6323nnncPuozwBBrt8TjjhhLBbidLSvvbZZ5+g0FpuueWCIJY7J9hRdfHFF7uf//znART8IUxtUkmFAAfFD8oyaMUVV8x2VmJlTF5feOEFd++997oLLrgg21WFYunwww/PVf6w00Ashznm8D3veU8oH2VAuPetb30rExptuOGG7qyzzgrp5/1DeEUcEIqTpZdeOs9rcD/wwAMDbuC8zTbb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AQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAIE2CxCganPpc+wIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAQAMCBKgaQGeXCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggECbBQhQtbn0OXYEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAoAEBAlQNoLNLBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQKDNAgSo2lz6HDsCCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggg0IAAAaoG0NklAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIINBmAQJUJaX/0ksvueuvv75wiXnnndfNN998boEFFnBLL720W3755d1rXvOazPK//OUv3Y9+9KPMZ8sss4zbfPPNM5/Fb37+85+7Bx54IPPxqquu6tZee213yy23uD/+8Y+ZefZm7rnndvPPP3+SryWXXNK96U1vctpfUfrJT37i/vGPf6SzV1hhBffqV786fT/oxL333useeeSR3M3MNddcST6V30UXXTTJp/avzyd7uvvuu92cOXPSw1xrrbXcaqutlr4fr4knnnjC/fCHP0x3V6Vu2sLDqNu27WG//u1vf3N33nmnu+uuu5zq6Gtf+9rEf5VVVnH/+q//6uaZZ57CLNRxXSjcODMmncCLL77ovv71r6fHpWv0brvtlr6fKBN/+ctf3MMPP5zJ7pprrul0PCQEEEAAAQQQQAABBBBAAAEEEEAAAQT6ESBAVaL25JNPumWXXbZkic5ZBx10kJs6dapbaqmlkpmPP/64U9AlTgrarLTSSvHHyfv/9//+n1PD30MPPZSZ/+1vf9ttscUWyXqPPfZYZl7Zm5122slNmzbNrbPOOpnF/v73vycBovDDq666qtbG0wMPPNDNmDEj3EXptAJw8ttll11Kl5voM/fZZx/3pS99KT2MU045xR1//PHp+/GauPjii93ee++d7m7rrbd23/rWt9L3NqE6ef755zsFTs8555zk42HUbdvfMF8VnNp9993dDTfckLsbnRdlAao6rgu5O+bDSSnw6KOPupVXXjlzbN3qWGbhEXnz3e9+N/n+CbPz1FNPld4AES7LNAIIIIAAAggggAACCCCAAAIIIIAAAh0CY6RCgf/7v/8b82A9/3vLW94y9qtf/Srd7uc///mO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z39eJkyYUHWOhGoCRdZBtTUSfMddd911walPfOITwRgjKh9p5QSS6iDJ93t5T0T0Ov/+979f9KbUIYccIl/96lcrs5QdayBCxx+PP/54Wboe6PXky1/+suy3335V50ioJpD02tpOHdx+++3y85//PHgIrtIy1dH//u//igYu2RoTSKIDfejoiiuukD//+c9Vvzn1AST9Pae/N2ptSdrWOm1qsFYffUlP4ot26iDp7xxf/NuMne28h5S07Sj79OHaD3zgA8G1Se9D6YNxbBCAAAQgkIwAAapk/LwqrQPEz3zmM8FTbI0M//a3v131o0FnNeiPulo3MbVO/cFx0UUXBTOiKtu4//77Reuttx1++OGiNyejZnHde++98v3vf7/qR064Pm3/T3/6k/Tt2zeczH6IgAYHdUCmg716mw7W9Edlv379yrLpDIWPfvSjdctvv/32gQ6ibgAk0YHOnNObVY36/rnPfU6OPvrosn5zUE6g3Too742I/n2fe+65peR6Aaqk16JSI+zIE088EQR1G6HQv+nLLrusaqZr0utBZbu/+MUv5IYbbgiSGwWoNJipQc1G27HHHht8dzXK5/P5Iusgym9PPvlkEIww5whQGRL1P5PqIMn3e2XPdBaUPiijM2B0axSg0kC5PqBS+QBUZb06jtx3330rkzkOEUh6bW2nDv7whz8EQZGQOVW7+t2i41t9ap6tNoGkOvjlL38p119/fe0GNp7Rv9nDDjusKk/Stm1qsKpzniUk9UW7dJD0d45nbq5rbjvvISVtO8owrVPHF08//XRwmgBVFCXSIAABCLROgABV68y8LaE/xjR4o5t+EX/qU58KnizXIILeANCnDWfMmBGc10DPX/7yl2CJpSBh438648Y8jaxPpn/rW9+SUaNGySuvvCJ6U1GfeNdNl4b6+9//XhZk0qfbTznllFJwSZdt0ifyNe+///3vYOZVUHjjf/rE+1FHHWUOg89ly5bJySefXCqvT9zpsS4pp4OL8847T3SpL910ycCf/exnwT7/VRPQIKUZkOmPdP1xuNdeewX+0ptTOgvO3ODZeeed5Ve/+lWZL//nf/4nWKZDax4+fHjwRLPevJ4+fXrgB1NWfVQZkEyqA3162jwZrbNrvvnNbwb+1nr15rl5+kn1rT+oml1CpJqS+ynt1EGYrv5IuOqqq0ozp8y5egGqJNci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EIAABCAAAQhAIAYBAlQxoFEEAhCAAAQgAAEIQAACEIAABCAAAQhAAAIQgAAEIAABCEAgPgECVPHZURICEIAABCAAAQhAAAIQgAAEIAABCEAAAhCAAAQgAAEIQCAGAQJUMaBRBAIQgAAEIAABCEAAAhCAAAQgAAEIQAACEIAABCAAAQhAID4BAlTx2VESAhCAAAQgAAEIQAACEIAABCAAAQhAAAIQgAAEIAABCEAgBgECVDGgUQQCEIAABCAAAQhAAAIQgAAEIAABCEAAAhCAAAQgAAEIQCA+AQJU8dlREgIQgAAEIAABCEAAAhCAAAQgAAEIQAACEIAABCAAAQhAIAYBAlQxoFEEAhCAAAQgAAEIQAACEIAABCAAAQhAAAIQgAAEIAABCEAgPgECVPHZURICEIAABCAAAQhAAAIQgAAEIAABCEAAAhCAAAQgAAEIQCAGAQJUMaBRBAIQgAAEIAABCEAAAhCAAAQgAAEIQAACEIAABCAAAQhAID4BAlTx2VESAhCAAAQgAAEIQAACEIAABCAAAQhAAAIQgAAEIAABCEAgBgECVDGgUQQCEIAABCAAAQhAAAIQgAAEIAABCEAAAhCAAAQgAAEIQCA+AQJU8dlREgIQgAAEIAABCEAAAhCAAAQgAAEIQAACEIAABCAAAQhAIAYBAlQxoFEEAhCAAAQgAAEIQAACEIAABCAAAQhAAAIQgAAEIAABCEAgPgECVPHZURICEIAABCAAAQhAAAIQgAAEIAABCEAAAhCAAAQgAAEIQCAGAQJUMaBRBAIQgAAEIAABCEAAAhCAAAQgAAEIQAACEIAABCAAAQhAID4BAlTx2VESAhCAAAQgAAEIQAACEIAABCAAAQhAAAIQgAAEIAABCEAgBgECVDGgUQQCEIAABCAAAQhAAAIQgAAEIAABCEAAAhCAAAQgAAEIQCA+AQJU8dlREgIQgAAEIAABCEAAAhCAAAQgAAEIQAACEIAABCAAAQhAIAYBAlQxoFEEAhCAAAQgAAEIQAACEIAABCAAAQhAAAIQgAAEIAABCEAgPgECVPHZURICEIAABCAAAQhAAAIQgAAEIAABCEAAAhCAAAQgAAEIQCAGAQJUMaBRBAIQgAAEIAABCEAAAhCAAAQgAAEIQAACEIAABCAAAQhAID4BAlTx2VESAhCAAAQgAAEIQAACEIAABCAAAQhAAAIQgAAEIAABCEAgBgECVDGgUQQCEIAABCAAAQhAAAIQgAAEIAABCEAAAhCAAAQgAAEIQCA+AQJU8dlREgIQgAAEIAABCEAAAhCAAAQgAAEIQAACEIAABCAAAQhAIAYBAlQxoFEEAhCAAAQgAAEIQAACEIAABCAAAQhAAAIQgAAEIAABCEAgPgECVPHZURICEIAABCAAAQhAAAIQgAAEIAABCEAAAhCAAAQgAAEIQCAGAQJUMaBRBAIQgAAEIAABCEAAAhCAAAQgAAEIQAACEIAABCAAAQhAID4BAlTx2VESAhCAAAQgAAEIQAACEIAABCAAAQhAAAIQgAAEIAABCEAgBgECVDGgUQQCEIAABCAAAQhAAAIQgAAEIAABCEAAAhCAAAQgAAEIQCA+AQJU8dlREgIQgAAEIAABCEAAAhCAAAQgAAEIQAACEIAABCAAAQhAIAYBAlQxoFEEAhCAAAQgAAEIQAACEIAABCAAAQhAAAIQgAAEIAABCEAgPgECVPHZURICEIAABCAAAQhAAAIQgAAEIAABCEAAAhCAAAQgAAEIQCAGAQJUMaBRBAIQgAAEIAABCEAAAhCAAAQgAAEIQAACEIAABCAAAQhAID4BAlTx2VESAhCAAAQgAAEIQAACEIAABCAAAQhAAAIQgAAEIAABCEAgBgECVDGgUQQCEIAABCAAAQhAAAIQgAAEIAABCEAAAhCAAAQgAAEIQCA+AQJU8dlREgIQgAAEIAABCEAAAhCAAAQgAAEIQAACEIAABCAAAQhAIAYBAlQxoFEEAhCAAAQgAAEIQAACEIAABCAAAQhAAAIQgAAEIAABCEAgPgECVPHZURICEIAABCAAAQhAAAIQgAAEIAABCEAAAhCAAAQgAAEIQCAGAQJUMaBRBAIQgAAEIAABCEAAAhCAAAQgAAEIQAACEIAABCAAAQhAID4BAlTx2VESAhCAAAQgAAEIQAACEIAABCAAAQhAAAIQgAAEIAABCEAgBgECVDGgUQQCEIAABCAAAQhAAAIQgAAEIAABCEAAAhCAAAQgAAEIQCA+AQJU8dlREgIQgAAEIAABCEAAAhCAAAQgAIH/z955wFtRXWt80ZtUBRFQUFERReztWWKJHU3U+NQY0dhiNMaSGDVPfXm2GDV2Y4kNxV5jQ8WOBVFBARFUQGkCIr2D961v4xr2mTszZ2bOOZfL5dv8LjNnZrf5z56Ztfe3CwmQAAmQAAmQAAmQAAmQQA4CFKhyQGMQEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiCB/AQoUOVnx5AkQAIkQAIkQAIkQAIkQAIkQAIkQAIkQAIkQAIkQAIkQAIkQAI5CFCgygGNQUiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABPIToECVnx1DkgAJkAAJkAAJkAAJkAAJkAAJkAAJkAAJkAAJkAAJkAAJkAAJ5CBAgSoHNAYhARIgARIgARIgARIgARIgARIgARIgARIgARIgARIgARIgARLIT4ACVX52DEkCJEACJEACJEACJEACJEACJEACJEACJEACJEACJEACJEACJJCDAAWqHNAYhARIgARIgARIgARIgARIgARIgARIgARIgARIgARIgARIgARIID8BClT52TEkCZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZBADgIUqHJAYxASIAESIAESIAESIAESIAESIAESIAESIAESIAESIAESIAESIIH8BChQ5WfHkCRAAiRAAiRAAiRAAiRAAiRAAiRAAiRAAiRAAiRAAiRAAiRAAjkIUKDKAY1BSIAESIAESIAESIAESIAESIAESIAESIAESIAESIAESIAESIAE8hOgQJWfHUOSAAmQAAmQAAmQAAmQAAmQAAmQAAmQAAmQAAmQAAmQAAmQAAnkIECBKgc0BiEBEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEshPgAJVfnYMSQIkQAIkQAIkQAIkQAIkQAIkQAIkQAIkQAIkQAIkQAIkQAIkkIMABaoc0BiEBEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEggPwEKVPnZMSQJkAAJkAAJkAAJkAAJkAAJkAAJkAAJkAAJkAAJkAAJkAAJkEAOAhSockBjEBIgARIgARIgARIgARIgARIgARIgARIgARIgARIgARIgARIggfwEKFDlZ8eQJEACJEACJEACJEACJEACJEACJEACJEACJEACJEACJEACJEACOQhQoMoBjUFIgARIgARIgARIgARIgARIgARIgARIgARIgARIgARIgARIgATyE6BAlZ8dQ5IACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACeQgQIEqBzQGIQESIAESIAESIAESIAESIAESIAESIAESIAESIAESIAESIAESyE+AAlV+dgxJAiRAAiRAAiRAAiRAAiRAAiRAAiRAAiRAAiRAAiRAAiRAAiSQgwAFqhzQGIQESIAESIAESIAESIAESIAESIAESIAESIAESIAESIAESIAESCA/AQpU+dkxJAmQAAmQAAmQAAmQAAmQAAmQAAmQAAmQAAmQAAmQAAmQAAmQQA4CFKhyQGMQEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiCB/AQoUOVnx5AkQAIkQAIkQAIkQAIkQAIkQAIkQAIkQAIkQAIkQAIkQAIkQAI5CFCgygGNQUiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABPIToECVnx1DkgAJkAAJkAAJkAAJkAAJkAAJkAAJkAAJkAAJkAAJkAAJkAAJ5CBAgSoHNAYhARIgARIgARIgARIgARIgARIgARIgARIgARIgARIgARIgARLIT4ACVX52DEkCJEACJEACJEACJEACJEACJEACJEACJEACJEACJEACJEACJJCDAAWqHNAYhARIgARIgARIgARIgARIgARIgARIgARIgARIgARIgARIgARIID8BClT52TEkCZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZBADgIUqHJAYxASIAESIAESIAESIAESIAESIAESIAESIAESIAESIAESIAESIIH8BChQ5WfHkCRAAiRAAiRAAiRAAiRAAiRAAiRAAiRAAiRAAiRAAiRAAiRAAjkIUKDKAY1BSIAESIAESIAESIAESIAESIAESIAESIAESIAESIAESIAESIAE8hOgQJWfHUOSAAmQAAmQAAmQAAmQAAmQAAmQAAmQAAmQAAmQAAmQAAmQAAnkIECBKgc0BiEBEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEshPgAJVfnYMSQIkQAIkQAIkQAIkQAIkQAIkQAIkQAIkQAIkQAIkQAIkQAIkkIMABaoc0BiEBEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEggPwEKVPnZMSQJkAAJkAAJkAAJkAAJkAAJkAAJkAAJkAAJkAAJkAAJkAAJkEAOAhSockBjEBIgARIgARIgARIgARIgARIgARIgARIgARIgARIgARIgARIggfwEKFDlZ8eQJEACJEACJEACJEACJEACJEACJEACJEACJEACJEACJEACJEACOQhQoMoBjUFIgARIgARIgARIgARIgARIgARIgARIgARIgARIgARIgARIgATyE6BAlZ8dQ5IACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACeQgQIEqBzQGIQESIAESIAESIAESIAESIAESIAESIAESIAESIAESIAESIAESyE+AAlV+dgxJAiRAAiRAAiRAAiRAAiRAAiRAAiRAAiRAAiRAAiRAAiRAAiSQgwAFqhzQGIQESIAESIAESIAESIAESIAESIAESIAESIAESIAESIAESIAESCA/AQpU+dkxJAmQAAmQAAmQAAmQAAmQAAmQAAmQAAmQAAmQAAmQAAmQAAmQQA4CFKhyQGMQEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiCB/AQoUOVnx5AkQAIkQAIkQAIkQAIkQAIkQAIkQAIkQAIkQAIkQAIkQAIkQAI5CFCgygGNQUiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABPIToECVnx1DkgAJkAAJkAAJkAAJkAAJkAAJkAAJkAAJkAAJkAAJkAAJkAAJ5CBAgSoHNAYhARIgARIgARIgARIgARIgARIgARIgARIgARIgARIgARIgARLIT4ACVX52DEkCJEACJEACJEACJEACJEACJEACJEACJEACJEACJEACJEACJJCDAAWqHNAYhARIgARIgARIgARIgARIgARIgARIgARIgARIgARIgARIgARIID8BClT52TEkCZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZBADgIUqHJAYxASIAESIAESIAESIAESIAESIAESIAESIAESIAESIAESIAESIIH8BChQ5WfHkCRAAiRAAiRAAiRAAiRAAiRAAiRAAiRAAiRAAiRAAiRAAiRAAjkIUKDKAY1BSIAESIAESIAESIAESIAESIAESIAESIAESIAESIAESIAESIAE8hOgQJWfHUOSAAmQAAmQAAmQAAmQAAmQAAmQAAmQAAmQAAmQAAmQAAmQAAnkIECBKgc0BiEBEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEshPgAJVfnYMSQIkQAIkQAIkQAIkQAIkQAIkQAIkQAIkQAIkQAIkQAIkQAIkkIMABaoc0BiEBEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEggPwEKVPnZMSQJkAAJkAAJkAAJkAAJkAAJkAAJkAAJkAAJkAAJkAAJkAAJkEAOAhSockBjEBIgARIgARIgARIgARIgARIgARIgARIgARIgARIgARIgARIggfwEKFDlZ8eQJEACJEACJEACJEACJEACJEACJEACJEACJEACJEACJEACJEACOQhQoMoBjUFIgARIgARIgARIgARIgARIgARIgARIgARIgARIgARIgARIgATyE6BAlZ8dQ5IACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACeQgQIEqBzQGIQESIAESIAESIAESIAESIAESIAESIAESIAESIAESIAESIAESyE+AAlV+dgxJAiRAAiRAAiRAAiRAAiRAAiRAAiRAAiRAAiRAAiRAAiRAAiSQgwAFqhzQGIQESIAESIAESIAESIAESIAESIAESIAESIAESIAESIAESIAESCA/AQpU+dkxJAmQAAmQAAmQAAmQAAmQAAmQAAmQAAmQAAmQAAmQAAmQAAmQQA4CFKhyQGMQEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiCB/AQoUOVnx5AkQAIkQAIkQAIkQAIkQAIkQAIkQAIkQAIkQAIkQAIkQAIkQAI5CFCgygGNQUiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABPIToECVnx1DkgAJkAAJkAAJkAAJkAAJkAAJkAAJkAAJkAAJkAAJkAAJkAAJ5CBAgSoHNAYhARIgARIgARIgARIgARIgARIgARIgARIgARIgARIgARIgARLIT4ACVX52DEkCJEACJEACJEACJEACJEACJEACJEACJEACJEACJEACJEACJJCDQI0IVBMmTJB33nknR/aKB2nZsqUccsghMmLECBk+fLjsueee0rlz5+IBU/pAnPjr0aOHbLvttilDrb7eli9fLk8++aSA64EHHrj6XghzTgI1TGDa7EUycOR30rZFYzmwd6caTr1uJlcupgNHfCfT5yyWI3ZcXxo3rF+nYJWL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Dz88MagumCraACC69oNoBVXwW4000UqajB07tlpYXbBUtt566+C4n1ddf0AaNGgQnCu2g3upvWdFF00XNSKLeU91/qCDDnL510qIbLzxxqnCmCed41ouueQS0Z5gctVVV9nhYKtTfcill14qukB2cKxz586y4447ujK25ZZbSteuXaV+/frB+agdKzdqHMs+++wT5aXoMZ36wt2fI488UrTSVOC/XPksiDTHD604ijZOuPKlc92L9mR35QtlRhtZ3H0KR6u9OovyC4fxfw/7ZqacfOdg6dGplTx4xq7BKRVF5JrnR8l+W60nV/537+B41p1LHv9MXhw2Wc49qIcc+1/dXPDT/v2hfDzuB7ny6N6yX6/1skbp/B9363vyxeQ5csGhPeXInTaIjUNn+ZPvZi2SiT8skAkzFoiu5SM/zF8ik2culK+mzhWdpqxa2A8v21+Z1guOI/+4jp26ry23nrhDcDxuJ46p73/7vw5wP1//n32kVbNG/qlg/6B/vOnyd1Pf7WXXTdcJjqfZsTz/vFdHuerole8fhD3qxkEydto8ue93O8uW67dJE50MGj1dzu73cWoGFumJt38gwyfMkjtO3lG227CdHZY4Ro998K3847nPZd8tO8rfjynMdxC4BneQ90ufGC46rWGQaud2zWXHjdeWrTZoo/xaS9d1Wkj9eivLS+DR2zn/oaHy+sip8hctr79KKK9ekNy7P8xb4sq7rsEm0+csEvyeptvx0+e7+x6O+N+n7iRbd21bcPj0u4fIkLEz5Ka+22nZax+cs+vAvdxH71Eep2uYuXzgucXzWxNOG2floYcekt12201uuOGGyCS33357dxw2SqtWrSL9ZDm4xx57iIoM8vDDD8smm2ySJWgmv+X4bti3vGfPnqJTE2ZKH57NjtBGK9loo40yh/cDwJ7SNTAK7FrYdLvuuquzT3v16iWbbrqpNG7c2A8WuW+2XTlt7PPOO0+0I5KksRcjM/XTQSsf4A3ucNrhRPbaay9XblBm4cd3qPrsv//+zi4I24Gof2iDfKx9bfUUHfUkxx57rB9t5n3kUxspXT5Q50HaUU47vsmee+7pToWvZ/To0aLCQWQdJiquuGOoQ+E+gxXSMGdlspy2bSn2u+Wr2FZHMcjBBx/svOm6rMW8u/M6kkq0o57AbsQW9RKrq+iaZ648+RHtsMMOoiOf/ENu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L/jNHRIgARIgARIggcoSmDt3rnzzzTcyY8YM+eSTT6R///4uQUxX9eSTT0r79u0rmwHGTgIksFoTuO222wTrMMH17t1b+vbt60YE1a9fP7gurFeFKUMxOhMjpuAwMhNhu3fvHvhbXXemTJnirhvCPtxvf/tbN01qhw4dCi4J79lRo0bJNddcI5MmTXLnjj32WDn33HML/PEHCZAACZAACZDAqiNAgWrVsWfKJEACJFA2Ai8MnSSXPjG8IL5NOraU9do0k9k6yurTb2YWnNuow1py1dFby8brrlVwnD9IgARIgARIgAQqS+Cpp56SK6+8sloiaDjecccdqx3nARIgARLwCVRpxzMILlhDyRwE7m7dujmBe/LkyYKRmb7ba6+95OKLL5ZWrVr5h1fr/TFjxsiZZ57pRp/ahWywwQbSuXNnwbp+WG8Ko8bMgdHf/vY3AQs6EiABEiABEiCB2kOAAlXtuRfMCQmQAAmURADT/b0wdLI8PWSCjJ02LzJHPnH/AAAHBklEQVSunl1ay14915Vjdu0qTRutHGEV6ZkHSYAESIAESIAEyk4ADcd33XWXtGjRQpo1ayZdunSRffbZR9Zdd92yp8UISYAE6i6BiRMnCgTv559/vkCk8a94t912c1MBHnjggVKvXj3/VJ3YX7Zsmbz55pvy6KOPytChQyOvCYIV1qk65phjZL31OHNEJCQeJAESIAESIIFVSIAC1SqEz6RJgARIoFIEMKXfrPlLZca8xS6JVs0aSevmjShKVQo44yUBEiABEiABEiABEiCBVUQAQg2ms5s5c6Y0btzYjZRq06aNNGy4Zq0zO2fOHPn+++8FUxy2bNnSccCWjgRIgARIgARIoPYSoEBVe+8Nc0YCJEACJEACJEACJEACJEACJEACJEACJEACJEACJEACJEACdZIABao6eVt5USRAAiRAAiRAAiRAAiRAAiRAAiRAAiRAAiRAAiRAAiRAAiRQewlQoKq994Y5IwESIAESIAESIAESIAESIAESIAESIAESIAESIAESIAESIIE6SYACVZ28rbwoEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEqi9BChQ1d57w5yRAAmQAAmQAAmQAAmQAAmQAAmQAAmQAAmQAAmQAAmQAAmQQJ0ksEoFqpFTRsqAzwfI0AlDZfKcybL8x+V1EjIvigRIgATyEmhQv4F0atVJtll/Gzmg5wGyxXpb5I2K4UiABGqIAO2bGgLNZEhgDSBAO2ANuMm8RBIgARIgARIgARIgARJYgwmsMoHquteuk/8M/88ajJ6XTgIkQALZCRza61A5b5/zsgdkCBIggRohQPumRjAzERJYYwnQDlhjbz0vnARIgARIgARIgARIgATqJIFVIlD96ek/yZBvhjig7dq3k3XarSOtW7SWevXrSVVVldSrV30rVeq9nvA8+bB88Pmo9h6oy+8HvChnz50tM2bOkBnTZ7j35g5dd5Brf3mt2+d/JEACtYcA7Rvab2E7ti5/n2Cv8/r0/VPh+kmVQqYdUHve88wJCZAACZAACZAACZAACZBAeQnUuEB17WvXynPDn5NGjRvJht02lDYt27iKXbiCa7/DW6v4h4/bb55fIfAZj/CWfMjHb1Bi+dAXqjYsGYfa/nzMnDNTxo8fL0uXLJU+vfrIn/b5U3m/CIyNBEggNwHaN/y+8vu6UrCy76pta/v3dXXJ36w5s2Tc+HG0A3K/qRmQBEiABEiABEiABEiABEigthGoUYFq+KThcubjZzoGm266qbRu2VrmLZkni5ctlmU/LpOqetpHECOEXIuxerMeify9otyQB8sHn4817v1QX+pLw/oNpWmjptKiYQuZPW+2jBkzxr0TbvnVLdKrc68V7wf+TwIksMoI0L75aYQ77bUVZZD2Gu21MtprED4b1GsgzRo2kxaNaAesshc9EyYBEiABEiABEiABEiABEqgIgRoTqCA8YV2G50Y8J2uvs7Z07dJVZi2eJUt/XLrywrRC73parjxSuMfz5IOpHuMcywfLRx0vH43qNZI2TdrINxO/kRnfz5A+W/Zx61G5XvtxzwWPkwAJVJQA7RvFy+8vv791/PtbW+onjerTDqjoC52RkwAJkAAJkAAJkAAJkAAJ1DiBGhOofvzxR/lNv9/IxFkTZZNNN5Fl9ZfJ0ioVp35aW4pbvffWwMMtywWfCz4PMe+BRg0aScNlDeXLL7+ULm26yAPHPyD169ev8Y8HEyQBElhBgPaNcoh5X/G4suH3nOWjzM8H7QB+fUiABEiABEiABEiABEiABOoSgRoRqNC7ePny5bLfbfvJ8h+Xy2Y9N5P5y+bHV1iNcFyFjudXECCf6IYflg+WDxCow88Hpvob/floaVC/gbzy+1ekQYMGwlFU9uBzSwI1R4D2jbL2BRhDX4ffv+4SeX2F99148P6vIGA8wtsy8mnRgHaA4eSWBEiABEiABEiABEiABEhg9SZQYwLVsmXLZN9b93W0um3WrXBqv9WbIXNPAiRAAjVKAFP8jB893qU58IyB0rBhQwpUNXoHmBgJrCAAgYr2DUsDCZDA/7dvxzYMwkAAAEnBEogyGYVlMlCWYZSkRCzhJsZlJAqQg404WjB+31O8ePtoAXXA0eLmI0CAAAECBAgQIEDgXwJFGlT9o48bbpctty4CBAgQ2Cpwi8fDpveUhmlQbdXzPIF8Ar8NKvVNPltvIkBgXUAdsG7jDgECBAgQIECAAAEC5xI4rEEVQmiG15B0unt3LiXREiBAoDKB+TOniMbn2LRt6wRVZfkRzjUElgaV+uYaubZKArUJqANqy4h4CBAgQIAAAQIECBDYI6BBtUfNGAIECBQW8GOqcAJMTyAKaFD5DAgQKCWgDiglb14CBAgQIECAAAECBHIKfAEDWUIedq9W8gAAAABJRU5ErkJggg==" + } + }, + "cell_type": "markdown", + "id": "ba61408f", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "![Screenshot 2024-09-29 at 4.29.51 PM.png](attachment:551cc367-52cd-49a7-bedd-4612ee77c664.png)\n", + "\n", + "**Note: Logarithmic scale**\n", + "\n", + "Source: PopularitY of Programming Language Index, https://pypl.github.io/PYPL.html" + ] + }, + { + "cell_type": "markdown", + "id": "cf43cf02-131f-4db3-899c-b728286f32d7", + "metadata": {}, + "source": [ + "### Python Community\n", + "\n", + "As an open source project mostly managed and led by volunteers, Python has a **community** with a **culture**.\n", + "\n", + "Some of the key values of Python's culture:\n", + "\n", + "- Python's community started as beginner-friendly and has strived to keep that tone. The community takes being **welcoming and inclusive** seriously.\n", + "- The community embraces **openness**, proposals to improve the language come from all over, and there's a focus on encouraging users to contribute back to the project.\n", + "- Python is a language that values **readability**, code is written for people as much as it is for computers to understand, Python takes this extremely seriously." + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "id": "829a1a1c", + "metadata": { + "scrolled": true, + "slideshow": { + "slide_type": "slide" + } + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "The Zen of Python, by Tim Peters\n", + "\n", + "Beautiful is better than ugly.\n", + "Explicit is better than implicit.\n", + "Simple is better than complex.\n", + "Complex is better than complicated.\n", + "Flat is better than nested.\n", + "Sparse is better than dense.\n", + "Readability counts.\n", + "Special cases aren't special enough to break the rules.\n", + "Although practicality beats purity.\n", + "Errors should never pass silently.\n", + "Unless explicitly silenced.\n", + "In the face of ambiguity, refuse the temptation to guess.\n", + "There should be one-- and preferably only one --obvious way to do it.\n", + "Although that way may not be obvious at first unless you're Dutch.\n", + "Now is better than never.\n", + "Although never is often better than *right* now.\n", + "If the implementation is hard to explain, it's a bad idea.\n", + "If the implementation is easy to explain, it may be a good idea.\n", + "Namespaces are one honking great idea -- let's do more of those!\n" + ] + } + ], + "source": [ + "import this" + ] + }, + { + "cell_type": "markdown", + "id": "665e3ed6", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "## Running Python\n", + "\n", + "Python is an **interpreted** language. If you've used a language like Java or C you're used to having to compile your code. Python is instead typically translated to an intermediate representation (bytecode) and immediately executed.\n", + "\n", + "`python` usually points to `python2.7` for historical reasons.\n", + "\n", + "`python3` will point to the latest version of Python installed\n", + "\n", + "`python3 -V` to see version *# Python 3.10.12 on linux.cs.uchicago.edu*\n", + "\n", + "\n", + "### REPL & Python Files Demo\n", + "\n", + "REPL: Read-Eval-Print Loop\n", + "\n", + "`python3` # opens REPL\n", + "\n", + "`python3 filename.py` # runs script and exits" + ] + }, + { + "cell_type": "markdown", + "id": "e7f7ed2f", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### IPython Demo\n", + "\n", + "`ipython` - improved REPL\n", + "\n", + "### Jupyter Notebook\n", + "\n", + "What I'm presenting in. Works a bit differently than REPL since you can execute different cells in any order. I'd advise starting with `ipython`." + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "id": "8625b025", + "metadata": { + "slideshow": { + "slide_type": "fragment" + }, + "tags": [] + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Hi 51042 !\n" + ] + } + ], + "source": [ + "print(\"Hi\", 2 * 3 * 47 * 181, \"!\") # the advantage is that I can mix code in with my notes" + ] + }, + { + "cell_type": "markdown", + "id": "19f894d2-21af-4801-a8f0-1efba34afa5b", + "metadata": {}, + "source": [ + "### Exercise: Create a `python-demos` repository.\n", + "\n", + "As you'll see in the first assignment, we are going to use a tool called `uv`.\n", + "\n", + "I would suggest starting with `ipython` as your REPL, and creating a directory where you can easily try things out.\n", + "\n", + "- Connect to the mpcs51042-N.cs.uchicago.edu server\n", + "- `mkdir python-demos`\n", + "- `cd python-demos`\n", + "- `uv init`\n", + "- `uv add ipython`\n", + "- `uv run ipython` (`exit()` to quit)\n", + "\n", + "Now you can create small `.py` files inside that directory to experiment with, and you can use `uv run ipython` or `uv run ipython your-file.py` to try things out." + ] + }, + { + "cell_type": "markdown", + "id": "cef4f2f6", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "## Expressions & Variables\n", + "\n", + "Python programs are made up of a series of **expressions** and **statements.**.\n", + "\n", + "Though you will never see these words explicitly in Python syntax, understanding the difference between them is important.\n", + "\n", + "An expression is a sequence of tokens that evaluates to some *value*.\n", + "\n", + "**Some Expressions**\n", + "\n", + "- `3.145`\n", + "- `\"hello\"`\n", + "- `3 + 4`\n", + "- `func(3 + 4)`\n", + "- `person.age * 4`\n", + "\n", + "All of these can be said to represent some value, some directly and some require further evaluation (addition, or a function call) to be resolved, but ultimately result in a value.\n", + "\n", + "This means that **all expressions can be assigned to variables**. In fact, in Python, all that we need to create a variable is an expression and a name.\n", + "\n", + "**Variables:**\n", + "\n", + "- must have an **expression** on the right hand side.\n", + "- Do not require declaration.\n", + "- Written in `snake_case`, with words separated by underscores. (as opposed to `camelCase`)" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "id": "518585f8", + "metadata": { + "slideshow": { + "slide_type": "subslide" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "radius = 2\n", + "area = 12.57\n", + "name = \"James\"\n", + "in_class = True" + ] + }, + { + "cell_type": "markdown", + "id": "360f2bcc", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "## Types\n", + "\n", + "We don't need to specify types the way we do in languages like C++ or Java.\n", + "\n", + "But our variables still do have types, they are just inferred." + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "id": "21a26675", + "metadata": { + "slideshow": { + "slide_type": "fragment" + }, + "tags": [] + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "\n", + "\n", + "\n" + ] + } + ], + "source": [ + "print(type(radius))\n", + "print(type(area))\n", + "print(type(name))\n", + "print(type(in_class))" + ] + }, + { + "cell_type": "markdown", + "id": "378750d1", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "### Scalar Types\n", + "\n", + "Python has several built in scalar types. (Scalar types can have *one* value at a time.)\n", + "\n", + "Numeric: `int`, `float`, `complex`\n", + "\n", + "Bool: `bool`\n", + "\n", + "None: `None`\n", + "\n", + "Types are in part defined by what can be done with them, let's look at some **operators**:" + ] + }, + { + "cell_type": "markdown", + "id": "84c1be08", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "### Numeric Operators & Functions\n", + "\n", + "| Operation | Result |\n", + "|-----------|--------|\n", + "| `x + y` | sum |\n", + "| `x - y` | difference |\n", + "| `x * y` | product |\n", + "| `x / y` | quotient |\n", + "| `x // y` | floored quotient |\n", + "| `x % y` | remainder of `x / y` (modulo) |\n", + "| `x ** y` | `x` to the power of `y`\n", + "| `-x` | negation of `x` |\n", + "| `abs(x)` | absolute value / magnitude of `x` |\n", + "| `int(x)` | `x` converted to integer (floor) |\n", + "| `divmod(x, y)` | the pair `(x // y, x % y)` |" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "id": "f8f0a556", + "metadata": { + "slideshow": { + "slide_type": "subslide" + }, + "tags": [] + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "2\n", + "3\n", + "50\n", + "10\n" + ] + } + ], + "source": [ + "# examples\n", + "\n", + "x = 2.999\n", + "print(int(2.999))\n", + "\n", + "print(1 + 2)\n", + "\n", + "print(100 // 2)\n", + "\n", + "m = 10*9*8*7*6*5*4*3*2\n", + "n = 3628800 # 10!\n", + "print(n % 11)" + ] + }, + { + "cell_type": "markdown", + "id": "ea02cc07-cd7e-471a-8875-9e897142c718", + "metadata": {}, + "source": [ + "#### Aside: Floating Point Precision\n", + "\n", + "On all computers floating point numbers have limited precision, as demonstrated below.\n", + "\n", + "For this reason, instead of strict equality checking, it is correct to compare that the error is less than some very small epsilon value.\n", + "\n", + "**Question** What problems could this cause? What can be done about it?" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "id": "2c29f15d-4979-4387-b9a4-71875228ccfc", + "metadata": { + "tags": [] + }, + "outputs": [ + { + "data": { + "text/plain": [ + "False" + ] + }, + "execution_count": 13, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "(.1 + .2) == .3" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "id": "52efb0d2-5e52-4a8b-a9b2-67fde816c917", + "metadata": { + "tags": [] + }, + "outputs": [ + { + "data": { + "text/plain": [ + "0.30000000000000004" + ] + }, + "execution_count": 14, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + ".1 + .2" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "id": "30470527", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "False\n" + ] + }, + { + "data": { + "text/plain": [ + "True" + ] + }, + "execution_count": 15, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "print(.1 + .2 == .3)\n", + "\n", + "episilon = 0.000000001\n", + "abs((.1 + .2) - .3) < episilon\n", + "\n", + "#bank_account_hundredths_of_cent = 1000000000" + ] + }, + { + "cell_type": "markdown", + "id": "a37ab302", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "### Shorthand Operators\n", + "\n", + "| Operation | Result | \n", + "|-----------|--------|\n", + "| `a += b ` | `a = a + b` |\n", + "| `a -= b ` | `a = a - b` |\n", + "| `a /= b ` | `a = a / b` |\n", + "| `a *= b ` | `a = a * b` |\n", + "| `a //= b` | `a = a // b` |" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "id": "5c6638c4", + "metadata": { + "slideshow": { + "slide_type": "subslide" + }, + "tags": [] + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "128\n", + "Hello Class\n" + ] + } + ], + "source": [ + "# examples\n", + "\n", + "x = 64\n", + "x *= 2\n", + "print(x)\n", + "\n", + "\n", + "s = \"Hello\"\n", + "s += \" Class\"\n", + "#s /= \"l\"\n", + "print(s)" + ] + }, + { + "cell_type": "markdown", + "id": "fa991f93", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "### Conversion\n", + "\n", + "If mixing numeric types in arithmetic, Python will automatically upconvert numeric types to the type that can represent more data:\n", + "\n", + "- int, int -> int\n", + "- int, float -> float\n", + "- float, complex -> complex\n" + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "id": "d91509f9", + "metadata": { + "slideshow": { + "slide_type": "subslide" + }, + "tags": [] + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "7.0 \n", + "2 \n", + "2.0 \n" + ] + } + ], + "source": [ + "# Conversion Demo\n", + "\n", + "x = 3 + 4.0\n", + "print(x, type(x))\n", + "\n", + "x = 2 // 1\n", + "print(x, type(x))\n", + "\n", + "x = 2 / 1\n", + "print(x, type(x))" + ] + }, + { + "cell_type": "markdown", + "id": "849ede7d", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "### Relational Operators\n", + "\n", + "| Syntax | Definition |\n", + "| --- | --- |\n", + "| ``x > y`` | ``True`` if left operand is greater than the right |\n", + "| ``x < y`` | ``True`` if left operand is less than the right |\n", + "| ``x == y`` | ``True`` if both operands are equal |\n", + "| ``x != y`` | ``True`` if both operands are not equal |\n", + "| ``x >= y`` | ``True`` if left operand is greater than or equal to the right |\n", + "| ``x <= y`` | ``True`` if left operand is less than or equal to the right |" + ] + }, + { + "cell_type": "markdown", + "id": "3c9ca38f", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "### Booleans\n", + "\n", + "Resulting type of any of the relational operators.\n", + "\n", + "Only two possible values: `True`, `False`" + ] + }, + { + "cell_type": "markdown", + "id": "fa7c9769", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "### Logical Operators\n", + "\n", + " - Operators that perform logical AND, OR, and NOT \n", + " - These operators *short-circuit* (i.e., when an expression is stopped being evaluated as soon as its outcome is determined.) \n", + "\n", + "| Syntax | Definition |\n", + "| --- | --- |\n", + "| ``x and y`` | ``True`` if both the operands are true |\n", + "| ``x or y`` | ``True`` if either of the operands is true |\n", + "| ``not x`` | ``True`` True if operand is false |\n", + "\n", + "\n", + "**Note: these are not `&` or `|` like in Java/C!** \n", + "Those have a different purpose in Python and will not work as intended." + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "id": "403c3e5d", + "metadata": { + "slideshow": { + "slide_type": "subslide" + }, + "tags": [] + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "a\n", + "c\n" + ] + } + ], + "source": [ + "# short circuit example\n", + "\n", + "a = True and print(\"a\")\n", + "b = False and print(\"b\")\n", + "c = False or print(\"c\")\n", + "d = True or print(\"d\")" + ] + }, + { + "cell_type": "code", + "execution_count": 30, + "id": "f19f8d55-a9a5-4c1e-be17-d71ff8bd263e", + "metadata": {}, + "outputs": [], + "source": [ + "# this cell is not part of notes, needed for next example\n", + "# we'll discuss how to write functions/etc. soon\n", + "import time\n", + "\n", + "def short_func():\n", + " print(\"short_func\")\n", + " return False\n", + "\n", + "def long_func():\n", + " print(\"long_func\")\n", + " time.sleep(1)\n", + " return True" + ] + }, + { + "cell_type": "code", + "execution_count": 28, + "id": "11e69d98-813d-43ae-b4c1-55050213577a", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "long_func\n", + "short_func\n" + ] + } + ], + "source": [ + "result = long_func() and short_func()" + ] + }, + { + "cell_type": "code", + "execution_count": 29, + "id": "1b89c375-ebb4-4164-88ad-8cbe2948d4ee", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "short_func\n" + ] + } + ], + "source": [ + "result = short_func() and long_func()" + ] + }, + { + "cell_type": "markdown", + "id": "e6cf6cd5", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "### None\n", + "\n", + "Represents the absence of a value. We'll talk more about uses of `None` as the course progresses." + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "id": "fb24dfd3", + "metadata": { + "slideshow": { + "slide_type": "subslide" + }, + "tags": [] + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "None\n", + "\n" + ] + } + ], + "source": [ + "x = None\n", + "print(x)\n", + "print(type(x))" + ] + }, + { + "cell_type": "markdown", + "id": "84deb07c", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "## Sequence Types\n", + "\n", + "Whereas scalar types have a single value, sequences can store multiple values in an organized & efficient way.\n", + "\n", + "We'll take a look at `str`, `list`, and `tuple`." + ] + }, + { + "cell_type": "markdown", + "id": "16fb91a6", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "### Strings\n" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "id": "81978ba8", + "metadata": { + "scrolled": true, + "slideshow": { + "slide_type": "subslide" + }, + "tags": [] + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "From time to time\n", + "The clouds give rest\n", + "To the moon-beholders.\n", + "\n", + "- Matsuo Bashō\n", + "\n" + ] + } + ], + "source": [ + "# Can use 'single' or \"double\", or \"\"\"triple for multi-line strings\"\"\"\n", + "\n", + "s1 = \"Molly's Idea\"\n", + "\n", + "s2 = '\"I think, therefore I am\" - Descartes'\n", + "\n", + "s3 = \"\"\"From time to time\n", + "The clouds give rest\n", + "To the moon-beholders.\n", + "\n", + "- Matsuo Bashō\n", + "\"\"\"\n", + "\n", + "print(s3)" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "id": "970918ff", + "metadata": { + "slideshow": { + "slide_type": "subslide" + }, + "tags": [] + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Sometimes you need a \\ backslash.\n" + ] + } + ], + "source": [ + "# Escape Characters\n", + "\n", + "# Like many languages, Python supports special 'escape characters'.\n", + "\n", + "#print(\"Another way to \\\"quote\\\" something.\")\n", + "\n", + "#print('An alternate apostrophe: \\' ')\n", + "\n", + "#print(\"Newline character: \\n starts a new line.\")\n", + "\n", + "print(\"Sometimes you need a \\\\ backslash.\")" + ] + }, + { + "cell_type": "markdown", + "id": "e9c05896", + "metadata": { + "slideshow": { + "slide_type": "fragment" + } + }, + "source": [ + "| Character | Meaning |\n", + "|-----------|---------|\n", + "| \\n | New Line|\n", + "| \\t | Tab |\n", + "| \\\\\\\\ | \\ (backslash) |\n", + "| \\\\\\' | ' (apostrophe) |\n", + "| \\\\\\\" | \" (quote) |" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "id": "98cf6515", + "metadata": { + "slideshow": { + "slide_type": "slide" + }, + "tags": [] + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "C:\n", + "ew\test.py\n" + ] + } + ], + "source": [ + "# Raw Strings\n", + "\n", + "# Sometimes it is undesirable to escape every backslash. \n", + "\n", + "# Two common examples are when dealing with file paths on Windows or Regular Expressions.\n", + "\n", + "# In this case we can use r\"\" to denote a raw string.\n", + "\n", + "error = \"C:\\new\\test.py\"\n", + "print(error)" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "id": "9d487e5c", + "metadata": { + "slideshow": { + "slide_type": "fragment" + }, + "tags": [] + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "C:\\new\\test.py\n" + ] + } + ], + "source": [ + "fixed = r\"C:\\new\\test.py\"\n", + "print(fixed)" + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "id": "afebe22c-6308-47c4-b919-18a112e86904", + "metadata": { + "tags": [] + }, + "outputs": [ + { + "data": { + "text/plain": [ + "str" + ] + }, + "execution_count": 18, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "type(fixed)" + ] + }, + { + "cell_type": "markdown", + "id": "23359927", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "#### String Formatting\n", + "\n", + "You'll often need to create strings comprised of other values.\n", + "\n", + "There are two common ways to do this, `.format` and f-strings:" + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "id": "50640ab5", + "metadata": { + "slideshow": { + "slide_type": "subslide" + }, + "tags": [] + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "jturk@uchicago.edu\n" + ] + } + ], + "source": [ + "# format example 1: implicit\n", + "\n", + "fmt = \"{}@{}.{}\"\n", + "email = fmt.format(\"jturk\", \"uchicago\", \"edu\")\n", + "print(email)" + ] + }, + { + "cell_type": "code", + "execution_count": 21, + "id": "d806059f", + "metadata": { + "slideshow": { + "slide_type": "subslide" + }, + "tags": [] + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Hi James, you are user 2.5! \n", + " Bye James!\n" + ] + } + ], + "source": [ + "# format example 2: positional\n", + "\n", + "message = \"Hi {0}, you are user {1}! \\n Bye {0}!\".format(\"James\", 2.5)\n", + "print(message)\n", + "\n", + "# note that integer was converted automatically\n", + "# most useful if you want to use the same value multiple times" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "dc04cf6c", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "outputs": [], + "source": [ + "# format example 3: keyword\n", + "message = \"Hi {user}, you are user {num}! \\n Bye {user}!\".format(user=\"James\", num=1234)\n", + "print(message)" + ] + }, + { + "cell_type": "code", + "execution_count": 22, + "id": "864319ee", + "metadata": { + "slideshow": { + "slide_type": "subslide" + }, + "tags": [] + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Hi James, you are user 1234! \n", + " Bye James!\n" + ] + } + ], + "source": [ + "# f-strings example (Added in Python 3.6)\n", + "\n", + "user = \"James\"\n", + "num = 1234\n", + "message = f\"Hi {user}, you are user {num}! \\n Bye {user}!\"\n", + "print(message)" + ] + }, + { + "cell_type": "code", + "execution_count": 23, + "id": "37a71346", + "metadata": { + "slideshow": { + "slide_type": "subslide" + }, + "tags": [] + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "user='James' num=1234\n", + "i=0\n", + "i=1\n", + "i=2\n", + "i=3\n", + "i=4\n", + "i=5\n", + "i=6\n", + "i=7\n", + "i=8\n", + "i=9\n" + ] + } + ], + "source": [ + "# f-strings debug example (Added in Python 3.8)\n", + "user = \"James\"\n", + "num = 1234\n", + "\n", + "print(f\"{user=} {num=}\") \n", + "# same as f\"user={user} num={num}\" but less repetition\n", + "\n", + "# = is a format specifier, there are many others for aligning output, truncating decimals, etc.\n", + "\n", + "for i in range(10):\n", + " print(f\"{i=}\")" + ] + }, + { + "cell_type": "markdown", + "id": "42f1b056", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "### Lists\n", + "\n", + "One of the most useful sequence is `list`. Lists are:\n", + "\n", + "- A great data structure if you need to hold a collection of positionally-ordered and arbitrarily-typed values.\n", + "\n", + "- Mutable (i.e., they can be modified in-place)\n", + " \n", + "- Dynamically Sized (i.e. shortened & extended as needed)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "a78b262e", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "outputs": [], + "source": [ + "# List Demo\n", + "\n", + "things = []\n", + "\n", + "# lists can contain items of different types\n", + "\n", + "things = [123, \"abc\", 1.23j+4.5]\n", + "\n", + "# lists can contain other lists\n", + "\n", + "meals = [[\"egg\", \"toast\"], [\"sandwich\", \"chips\"], [\"fish\", \"salad\", \"cake\"]]" + ] + }, + { + "cell_type": "markdown", + "id": "a65282f6", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "### Tuples\n", + "\n", + "Tuples work very similarly to lists but are immutable." + ] + }, + { + "cell_type": "code", + "execution_count": 25, + "id": "f3b01815", + "metadata": { + "slideshow": { + "slide_type": "subslide" + }, + "tags": [] + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "493\n" + ] + } + ], + "source": [ + "# Tuple Demo\n", + "\n", + "empty_tuple = ()\n", + "\n", + "one_item_tuple = (1+2,) # why is the comma necessary?\n", + "\n", + "bad_tuple = (1+492)\n", + "\n", + "print(bad_tuple)" + ] + }, + { + "cell_type": "code", + "execution_count": 26, + "id": "f6c54b13", + "metadata": { + "slideshow": { + "slide_type": "fragment" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "multi_item = (1, 2.0, \"three\")\n", + "\n", + "# parentheses are optional\n", + "\n", + "multi_item2 = 1, 2.0" + ] + }, + { + "cell_type": "code", + "execution_count": 27, + "id": "310a20b3-ef99-43cf-a9eb-60674beb8967", + "metadata": { + "tags": [] + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "(1, 2.0)\n" + ] + } + ], + "source": [ + "print(multi_item2)" + ] + }, + { + "cell_type": "markdown", + "id": "2bdf6553", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "### Sequence Operations\n", + "\n", + "All of these sequence types support some useful operations:\n", + "\n", + "|operation | name | description |\n", + "|------|-----|-----|\n", + "| `len(seq)` | Length | gets number of items in sequence.\n", + "| `seq1 + seq2` | Concatenation | to concatenate together (make a new sequence).\n", + "| `seq * N` | Repetition | creates a new sequence that repeats seq, N times.\n", + "| `item in seq` | Containment | tests for whether or not a given value appears in a sequence.\n", + "| `seq[N]` | Indexing | gets Nth value from sequence.\n", + "| `seq[N:M]` | Sliced Indexing | returns a new sequence that is a \"slice\" of the original." + ] + }, + { + "cell_type": "code", + "execution_count": 28, + "id": "3e0eae96", + "metadata": { + "slideshow": { + "slide_type": "subslide" + }, + "tags": [] + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "11\n", + "5\n", + "0\n" + ] + } + ], + "source": [ + "# length demo\n", + "s1 = \"Hello World\"\n", + "l1 = [1, [\"a\", \"b\", \"c\"], 3, None, 4]\n", + "t1 = ()\n", + "\n", + "print(len(s1))\n", + "print(len(l1))\n", + "print(len(t1))" + ] + }, + { + "cell_type": "code", + "execution_count": 32, + "id": "55a8e5ba", + "metadata": { + "slideshow": { + "slide_type": "subslide" + }, + "tags": [] + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "(True, False, True, False, True, False)\n" + ] + }, + { + "data": { + "text/plain": [ + "['',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '']" + ] + }, + "execution_count": 32, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# concatenation & repetition demo\n", + "s2 = \"*\" * 5\n", + "t2 = (True, False) * 3\n", + "l2 = [\"a\", \"b\", \"c\"] * 4\n", + "print(t2)\n", + "\n", + "[\"\"] * 100\n", + "\n", + "\n", + "#x = (\"a\", \"b\", \"c\")\n", + "#y = (\"z\", \"z\", \"z\")\n", + "#z = x + y\n", + "#z" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "1727cd1e-fe51-4e29-8d57-9ab7c70f5b50", + "metadata": { + "tags": [] + }, + "outputs": [], + "source": [ + "# concatenation & repetition demo\n", + "s2 = \"*\" * 5\n", + "t2 = (True, False) * 3\n", + "l2 = [\"a\", \"b\", \"c\"] * 4\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "c3a1e0f6-d4aa-4610-aee0-482747edc493", + "metadata": { + "tags": [] + }, + "outputs": [], + "source": [ + "print(s2, \"\\n\", t2, \"\\n\", l2)" + ] + }, + { + "cell_type": "code", + "execution_count": 42, + "id": "2218bc31", + "metadata": { + "slideshow": { + "slide_type": "subslide" + }, + "tags": [] + }, + "outputs": [ + { + "data": { + "text/plain": [ + "123" + ] + }, + "execution_count": 42, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "cities = [\"Tokyo\", \"Delhi\", \"Shanghai\", \"São Paulo\", \"Mexico City\", \"Cairo\", \"Mumbai\", \"Beijing\", \"Dhaka\", \"Osaka\"]\n", + "text = \"Four score and seven years ago our fathers brought forth, upon this continent, a new nation, conceived in liberty, and dedicated to the proposition that all men are created equal\"\n", + "ids = (123, 555, 81, 110, 44, 12, 16)\n", + "ids[0]" + ] + }, + { + "cell_type": "code", + "execution_count": 44, + "id": "0c90c4d5", + "metadata": { + "slideshow": { + "slide_type": "subslide" + }, + "tags": [] + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "True\n", + "True\n", + "True\n", + "False\n", + "True\n" + ] + } + ], + "source": [ + "# containment\n", + "\n", + "print(\"Shanghai\" in cities)\n", + "print(\"Delhi\" in cities)\n", + "print(\" seven \" in text)\n", + "print(\"7\" in text)\n", + "print(123 in ids)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "da7fefad", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "outputs": [], + "source": [ + "# indexing\n", + "print(cities)\n", + "print(cities[0])\n", + "print(cities[-4])\n", + "\n", + "# print(text[0])\n", + "\n", + "print(cities[0:-2])" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "9a96b78d", + "metadata": { + "slideshow": { + "slide_type": "subslide" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# slicing\n", + "#print(cities)\n", + "print(cities[8:])\n", + "#print(cities[:4])\n", + "#print(cities[8:])\n", + "#print(cities[4:-3])\n", + "\n", + "#print(text)\n", + "#print(text[0:4])\n", + "#print(text[:])\n", + "\n", + "# print(ids[1:4])" + ] + }, + { + "cell_type": "markdown", + "id": "3917fd33", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "#### Indexing / Slicing Rules\n", + "\n", + "`s = \"Hello!\"`\n", + "\n", + "| Letter | Index | -Index |\n", + "|--------|-------|--------|\n", + "| H | 0 | -6 |\n", + "| e | 1 | -5 |\n", + "| l | 2 | -4 |\n", + "| l | 3 | -3 |\n", + "| o | 4 | -2 |\n", + "| ! | 5 | -1 |\n", + "\n", + "First element is 0.\n", + "\n", + "Last element is -1.\n", + "\n", + "Slice boundaries are inclusive of first, exclude last." + ] + }, + { + "cell_type": "markdown", + "id": "1f1d567c", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "### mutable sequence methods (for now just `list`)\n", + "\n", + "| Operation | Result | \n", + "|-------------|--------|\n", + "| `s[i] = x` | Replace element `i` in sequence with `x`. |\n", + "| `s.append(x)` | Add item to end of sequence. |\n", + "| `s.clear()` | Remove all items from sequence. |\n", + "| `s.copy()` | Create a (shallow) copy of sequence. |\n", + "| `s.insert(i, x)` | Insert an item `x` at position `i`. |\n", + "| `s.pop()` or `s.pop(i)` | Retrieve item at position `i` and remove it. (Defaults to -1 if not provided) |\n", + "| `s.reverse()` | Reverse items of `s` in place. |" + ] + }, + { + "cell_type": "code", + "execution_count": 50, + "id": "c26ed605", + "metadata": { + "slideshow": { + "slide_type": "subslide" + }, + "tags": [] + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "['*', 'A', 'B', 'C', 'E', 'F', 'G']\n" + ] + } + ], + "source": [ + "# list demo\n", + "letters = [\"A\", \"B\", \"C\", \"D\", \"E\", \"F\", \"G\"]\n", + "\n", + "letters.append(\"H\")\n", + "\n", + "letters.insert(0, \"*\")\n", + "\n", + "letters.pop()\n", + "letters.pop(4)\n", + "\n", + "print(letters)" + ] + }, + { + "cell_type": "markdown", + "id": "49867913", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "### common string methods\n", + "\n", + "| Method | Description |\n", + "|------------------------|-------------|\n", + "| s.find(sub) | Finds first occurence of substring `sub` or -1 if not found |\n", + "| s.lower() | Converts the string to lowercase. |\n", + "| s.upper() | Converts the string to uppercase. |\n", + "| s.replace(old, new) | Replaces occurences of old with new. |\n", + "| s.strip() | Remove leading & trailing whitespace. |\n", + "| s.startswith(prefix) | Checks if a string starts with prefix. |\n", + "| s.endswith(suffix) | Checks if a string ends with suffix. |\n", + "| s.split(sep) | Split a string using `sep` as delimiter. |\n", + "\n", + "\n", + "(Credit: Python Distilled, Table 1.6)\n", + "\n", + "Not a complete list, see https://docs.python.org/3/library/stdtypes.html#string-methods" + ] + }, + { + "cell_type": "code", + "execution_count": 59, + "id": "ef5273ee", + "metadata": { + "slideshow": { + "slide_type": "subslide" + }, + "tags": [] + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "world!\n", + "s= Hello world!\n", + "upper= HELLO WORLD!\n" + ] + } + ], + "source": [ + "# string method demo\n", + "s = \"Hello world!\"\n", + "\n", + "# find\n", + "pos = s.find(\"world\")\n", + "#print(pos)\n", + "print(s[pos:])\n", + "\n", + "upper = s.upper()\n", + "\n", + "print(\"s=\", s)\n", + "print(\"upper=\", upper)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "e2eaef9a", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "id": "000b7f60", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "## Statements\n", + "\n", + "We said earlier that everything in Python was either a **statement** or an **expression**.\n", + "\n", + "Up until now almost everything we've seen has been an **expression**, now we'll look at statements.\n", + "\n", + "Statements are used for **control flow**. Without them our programs would just execute one line after the next.\n", + "\n", + "### Indentation\n", + "\n", + "Perhaps the most jarring change for C/Java/JavaScript programmers: Python does not use braces.\n", + "\n", + "Instead, indentation signifies code block boundaries." + ] + }, + { + "cell_type": "code", + "execution_count": 60, + "id": "7f82b31c", + "metadata": { + "slideshow": { + "slide_type": "fragment" + }, + "tags": [] + }, + "outputs": [ + { + "ename": "SyntaxError", + "evalue": "not a chance (3905450354.py, line 1)", + "output_type": "error", + "traceback": [ + "\u001b[0;36m Cell \u001b[0;32mIn[60], line 1\u001b[0;36m\u001b[0m\n\u001b[0;31m from __future__ import braces\u001b[0m\n\u001b[0m ^\u001b[0m\n\u001b[0;31mSyntaxError\u001b[0m\u001b[0;31m:\u001b[0m not a chance\n" + ] + } + ], + "source": [ + "from __future__ import braces" + ] + }, + { + "cell_type": "markdown", + "id": "c85cf457", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "### `if, elif, else` Statements\n", + "\n", + "```python\n", + "if condition:\n", + " statement1\n", + " statement2\n", + "elif condition: # else if\n", + " statement3\n", + "else:\n", + " statement4\n", + " statement5\n", + "```\n", + "\n", + "- Note the colon after each condition.\n", + "- `elif` and `else` are optional\n", + "- parenthesis around the expression are optional\n", + "- each line should be indented four spaces\n", + "\n", + "This is a statement because you don't write\n", + "\n", + "```\n", + "x = if ...:\n", + " ...\n", + " else:\n", + " ...\n", + " else:\n", + " ...\n", + "```\n", + "\n", + "Instead, these lines of code are evaluated conditionally." + ] + }, + { + "cell_type": "code", + "execution_count": 64, + "id": "ab2cece2", + "metadata": { + "slideshow": { + "slide_type": "subslide" + }, + "tags": [] + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "positive\n" + ] + } + ], + "source": [ + "# if example\n", + "\n", + "x = 49490\n", + "\n", + "if x < 0:\n", + " print('negative')\n", + " print(\"second line\")\n", + "elif x == 0:\n", + " print('zero')\n", + "elif x == 4:\n", + " print(\"four\")\n", + "else:\n", + " print('positive')" + ] + }, + { + "cell_type": "markdown", + "id": "c604a4d1", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "### `while` statement\n", + "\n", + "```python\n", + "while condition:\n", + " statement1\n", + " statement2\n", + "```" + ] + }, + { + "cell_type": "code", + "execution_count": 65, + "id": "ed48db1e", + "metadata": { + "scrolled": true, + "slideshow": { + "slide_type": "subslide" + }, + "tags": [] + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "10...\n", + "9...\n", + "8...\n", + "7...\n", + "6...\n", + "5...\n", + "4...\n", + "3...\n", + "2...\n", + "1...\n", + "blast off!\n" + ] + } + ], + "source": [ + "time_left = 10\n", + "\n", + "while time_left != 0:\n", + " print(f\"{time_left}...\")\n", + " time_left -= 1\n", + "print(\"blast off!\")" + ] + }, + { + "cell_type": "markdown", + "id": "03cf2197", + "metadata": { + "slideshow": { + "slide_type": "slide" + }, + "tags": [] + }, + "source": [ + "### `for` statement\n", + "\n", + "```python\n", + "for var in iterable:\n", + " statement1\n", + " statement2\n", + "```\n", + "\n", + "This looks a bit different from C/Java.\n", + "\n", + "Also, what is an iterable?\n", + "\n", + "For now, just know that sequences are iterables, we'll cover iterables soon." + ] + }, + { + "cell_type": "code", + "execution_count": 69, + "id": "d39dae8e", + "metadata": { + "slideshow": { + "slide_type": "subslide" + }, + "tags": [] + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Tokyo\n", + "Delhi\n", + "Shanghai\n", + "São Paulo\n", + "Mexico City\n", + "Mumbai\n", + "Beijing\n", + "Dhaka\n", + "Osaka\n" + ] + } + ], + "source": [ + "#print(cities)\n", + "for city in cities:\n", + " if city == \"Cairo\":\n", + " # we don't need to print cairo out\n", + " continue\n", + " print(city)\n", + " \n", + "seconds_left = 7\n" + ] + }, + { + "cell_type": "markdown", + "id": "9317a80f", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "### `break & continue`\n", + "\n", + "You may have seen `break` and `continue` in other languages.\n", + "\n", + "If so, they work the same way in Python.\n", + "\n", + "`break` - exit a loop immediately\n", + "\n", + "`continue` - immediately begin next iteration of loop\n", + "\n", + "`else` statement after `for` or `while` - executes only if no break was called" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "c02cfdd0", + "metadata": { + "slideshow": { + "slide_type": "subslide" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# break demo \n", + "\n", + "time_left = 10\n", + "abort_at = 3\n", + "\n", + "while time_left > 0:\n", + " print(f\"{time_left}...\")\n", + " time_left -= 1\n", + " if time_left == abort_at:\n", + " print(\"Launch Aborted\")\n", + " break\n", + "else:\n", + " # this only runs if we don't break \n", + " print(\"blast off!\")\n", + "\n", + "# can we use else to fix this?\n", + "\n", + "\n", + "seconds_left = 7" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "cffb8cde", + "metadata": { + "scrolled": true + }, + "outputs": [], + "source": [ + "s = \"Hello class; my name is James\"\n", + "\n", + "for ch in s:\n", + " if ch == \",\":\n", + " print(\"found a comma!\")\n", + " break\n", + "else:\n", + " print('no comma found!')\n", + " " + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "04bafad6", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "997816f1", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "9b0770bf", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "outputs": [], + "source": [ + "# continue demo\n", + "\n", + "visited = [\"Chicago\", \"Mexico City\", \"Shanghai\"]\n", + "\n", + "for city in cities:\n", + " if city in visited:\n", + " continue\n", + " print(f\"I would like to visit {city}\")\n", + " \n", + "# when would we use continue in practice?" + ] + }, + { + "cell_type": "markdown", + "id": "b39cab79", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "#### idiom: \"infinite\" loops\n", + "\n", + "```python\n", + "while True:\n", + " do_something()\n", + " if condition:\n", + " break\n", + "```\n", + "\n", + "Similar to a `do while`loop in C/C++" + ] + }, + { + "cell_type": "markdown", + "id": "725314db", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "#### range\n", + "\n", + "Another iterable!\n", + "\n", + "`range(stop)` # goes from 0 to (stop-1)\n", + "\n", + "`range(start, stop)` # goes from start to (stop-1)\n", + "\n", + "Same rules as slice, always **inclusive** of start, **exclusive** of stop.\n", + "\n", + "*or as you'd write mathematically:* ```[start, stop)```" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "ca2055d5", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "outputs": [], + "source": [ + "for x in range(50):\n", + " print(x)" + ] + }, + { + "cell_type": "markdown", + "id": "112c7618", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "#### `enumerate`\n", + "\n", + "Another iterable, for when we need the index along with the object.\n", + "\n", + "Gives us two element tuples:\n", + "\n", + "`(index, element)`" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "db633289", + "metadata": { + "scrolled": true, + "slideshow": { + "slide_type": "subslide" + } + }, + "outputs": [], + "source": [ + "s = \"Hello world\"\n", + "print(s.find(\"world\"))\n", + "for i, letter in enumerate(s):\n", + " if letter == \"w\":\n", + " return i" + ] + }, + { + "cell_type": "markdown", + "id": "8392c4b9", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "## Functions\n", + "\n", + "A function is a set of statements that can be called more than once.\n", + "\n", + "Benefits of functions:\n", + "\n", + "- Encapsulation: package logic for use in multiple places\n", + "- Allows programmer to avoid copy/paste to repeat same task, which helps maximize code reuse and minimize redundancy\n", + "- Procedural decomposition: split our program into subtasks (i.e., functions) with separate roles.\n", + "- Make life easier for debugging, testing, doing maintenance on code\n" + ] + }, + { + "cell_type": "markdown", + "id": "74ff7f39", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "```python\n", + "def function_name(arg1, arg2, arg3):\n", + " \"\"\"\n", + " Description of function task \n", + "\n", + " Inputs: \n", + " arg1(type): description of arg1 \n", + " arg2: description of arg2\n", + " arg3: description of arg2\n", + "\n", + " Outputs:\n", + " Description of what this function returns \n", + " \"\"\"\n", + " statement1\n", + " statement2\n", + " statement3\n", + " return value # optional\n", + "```" + ] + }, + { + "cell_type": "markdown", + "id": "53afdf59", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "### return\n", + "\n", + "- `return` may appear anywhere in a function body, including multiple times.\n", + "\n", + "- The first `return` encountered exits the function.\n", + "\n", + "- Every function in python returns a value. \n", + "\n", + "- If no `return` statement is present, `None` is implicitly returned." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "b11eec38", + "metadata": {}, + "outputs": [], + "source": [ + "def is_even(num):\n", + " return num % 2 == 0\n", + "\n", + "\n", + "print(is_even(3))" + ] + }, + { + "cell_type": "markdown", + "id": "20ae7bfb", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "### `pass` statement\n", + "\n", + "Can be used whenever you need to leave a block empty. Usually temporarily.\n", + "\n", + "```python\n", + "\n", + "if x < 0:\n", + " pass # TODO: figure this out later\n", + "\n", + "\n", + "if x >= 0:\n", + " do_work()\n", + "\n", + "\n", + "def func():\n", + "```" + ] + }, + { + "cell_type": "markdown", + "id": "ebc0274c-56dd-41a1-b65f-451547a5c3b7", + "metadata": {}, + "source": [ + "#### Type Annotations\n", + "\n", + "Type annotations are a newer Python feature.\n", + "They exist to provide *hints* as to what types a function takes.\n", + "\n", + "You will start seeing them in assignments and documentation, and we'll discuss them more later in the quarter." + ] + }, + { + "cell_type": "code", + "execution_count": 32, + "id": "25a1c74a", + "metadata": {}, + "outputs": [], + "source": [ + "# I've broken this function into multiple lines, which is allowed \n", + "# due to the parentheses. \n", + "\n", + "def find_value(\n", + " a_list: list[int], # this parameter is a list of integers\n", + " num: int # this parameter is a single integer\n", + ") -> int | None: # this annotation \"-> int | None\" indicates return type can be int or None\n", + " pass" + ] + }, + { + "cell_type": "markdown", + "id": "cfe779a8", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "### docstrings\n", + "\n", + "Function comments should be done in the form of a docstring, i.e., a multi-line string (delimited by triple quotes, ''') after the function header.\n", + "\n", + "This comment must contain information specific to what a function does. It should also include a description of the purpose and expected input arguments, the expected output values, and how error conditions are handled.\n", + "\n", + "Example:\n", + "```python\n", + "def hypotenuse(a, b):\n", + " '''\n", + " This function solves Pythagorean theorem a^2 + b^2 = c^2\n", + " for the value of c.\n", + "\n", + " Inputs:\n", + " a, b (float): the lengths of sides of a right triangle.\n", + "\n", + " Returns:\n", + " (float) the length of the hypotenuse.\n", + " '''\n", + "\n", + " return math.sqrt(a**2 + b**2)\n", + "```" + ] + }, + { + "cell_type": "markdown", + "id": "f8535fae", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "## Homework #0\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "6f3ef637-bc1e-4026-b756-5b606b0b6624", + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "celltoolbar": "Slideshow", + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.12.6" + }, + "toc": { + "base_numbering": 1, + "nav_menu": {}, + "number_sections": false, + "sideBar": true, + "skip_h1_title": false, + "title_cell": "Table of Contents", + "title_sidebar": "Contents", + "toc_cell": false, + "toc_position": { + "height": "calc(100% - 180px)", + "left": "10px", + "top": "150px", + "width": "434.4px" + }, + "toc_section_display": true, + "toc_window_display": false + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/README.md b/README.md new file mode 100644 index 0000000..e00c28b --- /dev/null +++ b/README.md @@ -0,0 +1,28 @@ +# 51042 Notes Repository + +## How to use this Repo + +I will push notes to this repository throughout the quarter. +If you are keeping your own notes in this repository you should generally keep them in separate files to avoid accidental git conflicts. + +Either make companion files in each directory, or keep your notes in a separate directory/notebook altogether. + +I will create a notebook for each topic, numbered in the order they're introduced. + +### Jupyter Notebooks + +There are a few ways to look at these notes: + +1. You can browse these on GitHub.com in a non-interactive form. + +2. If you open them in VS Code it will prompt you to install an extension for Jupyter notebooks, doing so will let you use them from VS Code. + +3. If you install Jupyter locally, you have a few options for working with `.ipynb` notebooks: + +- `uv run jupyter lab` - the newer UI, will start a server and +- `uv run jupyter notebook` - the older UI, perfectly functional still +- VS Code will open these in it's own editor + +If you run one of the `uv run` options, you'll need to navigate to the .ipynb file in the window that opens in your browser. + +**Note:** To stop a server, press `Ctrl-C` and then 'y' to the prompt. diff --git a/pyproject.toml b/pyproject.toml new file mode 100644 index 0000000..3cb1836 --- /dev/null +++ b/pyproject.toml @@ -0,0 +1,9 @@ +[project] +name = "51042-notes" +version = "0.1.0" +description = "Add your description here" +readme = "README.md" +requires-python = ">=3.10" +dependencies = [ + "jupyter>=1.1.1", +] diff --git a/uv.lock b/uv.lock new file mode 100644 index 0000000..2d6aede --- /dev/null +++ b/uv.lock @@ -0,0 +1,1538 @@ +version = 1 +requires-python = ">=3.10" + +[[package]] +name = "51042-notes" +version = "0.1.0" +source = { virtual = "." } +dependencies = [ + { name = "jupyter" }, +] + +[package.metadata] +requires-dist = [{ name = "jupyter", specifier = ">=1.1.1" }] + +[[package]] +name = "anyio" +version = "4.6.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "exceptiongroup", marker = "python_full_version < '3.11'" }, + { name = "idna" }, + { name = "sniffio" }, + { name = "typing-extensions", marker = "python_full_version < '3.11'" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/78/49/f3f17ec11c4a91fe79275c426658e509b07547f874b14c1a526d86a83fc8/anyio-4.6.0.tar.gz", hash = "sha256:137b4559cbb034c477165047febb6ff83f390fc3b20bf181c1fc0a728cb8beeb", size = 170983 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/9e/ef/7a4f225581a0d7886ea28359179cb861d7fbcdefad29663fc1167b86f69f/anyio-4.6.0-py3-none-any.whl", hash = "sha256:c7d2e9d63e31599eeb636c8c5c03a7e108d73b345f064f1c19fdc87b79036a9a", size = 89631 }, +] + +[[package]] +name = "appnope" +version = "0.1.4" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/35/5d/752690df9ef5b76e169e68d6a129fa6d08a7100ca7f754c89495db3c6019/appnope-0.1.4.tar.gz", hash = "sha256:1de3860566df9caf38f01f86f65e0e13e379af54f9e4bee1e66b48f2efffd1ee", size = 4170 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/81/29/5ecc3a15d5a33e31b26c11426c45c501e439cb865d0bff96315d86443b78/appnope-0.1.4-py2.py3-none-any.whl", hash = "sha256:502575ee11cd7a28c0205f379b525beefebab9d161b7c964670864014ed7213c", size = 4321 }, +] + +[[package]] +name = "argon2-cffi" +version = "23.1.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "argon2-cffi-bindings" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/31/fa/57ec2c6d16ecd2ba0cf15f3c7d1c3c2e7b5fcb83555ff56d7ab10888ec8f/argon2_cffi-23.1.0.tar.gz", hash = "sha256:879c3e79a2729ce768ebb7d36d4609e3a78a4ca2ec3a9f12286ca057e3d0db08", size = 42798 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/a4/6a/e8a041599e78b6b3752da48000b14c8d1e8a04ded09c88c714ba047f34f5/argon2_cffi-23.1.0-py3-none-any.whl", hash = "sha256:c670642b78ba29641818ab2e68bd4e6a78ba53b7eff7b4c3815ae16abf91c7ea", size = 15124 }, +] + +[[package]] +name = "argon2-cffi-bindings" +version = "21.2.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "cffi" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/b9/e9/184b8ccce6683b0aa2fbb7ba5683ea4b9c5763f1356347f1312c32e3c66e/argon2-cffi-bindings-21.2.0.tar.gz", hash = "sha256:bb89ceffa6c791807d1305ceb77dbfacc5aa499891d2c55661c6459651fc39e3", size = 1779911 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/d4/13/838ce2620025e9666aa8f686431f67a29052241692a3dd1ae9d3692a89d3/argon2_cffi_bindings-21.2.0-cp36-abi3-macosx_10_9_x86_64.whl", hash = "sha256:ccb949252cb2ab3a08c02024acb77cfb179492d5701c7cbdbfd776124d4d2367", size = 29658 }, + { url = "https://files.pythonhosted.org/packages/b3/02/f7f7bb6b6af6031edb11037639c697b912e1dea2db94d436e681aea2f495/argon2_cffi_bindings-21.2.0-cp36-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9524464572e12979364b7d600abf96181d3541da11e23ddf565a32e70bd4dc0d", size = 80583 }, + { url = "https://files.pythonhosted.org/packages/ec/f7/378254e6dd7ae6f31fe40c8649eea7d4832a42243acaf0f1fff9083b2bed/argon2_cffi_bindings-21.2.0-cp36-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b746dba803a79238e925d9046a63aa26bf86ab2a2fe74ce6b009a1c3f5c8f2ae", size = 86168 }, + { url = "https://files.pythonhosted.org/packages/74/f6/4a34a37a98311ed73bb80efe422fed95f2ac25a4cacc5ae1d7ae6a144505/argon2_cffi_bindings-21.2.0-cp36-abi3-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:58ed19212051f49a523abb1dbe954337dc82d947fb6e5a0da60f7c8471a8476c", size = 82709 }, + { url = "https://files.pythonhosted.org/packages/74/2b/73d767bfdaab25484f7e7901379d5f8793cccbb86c6e0cbc4c1b96f63896/argon2_cffi_bindings-21.2.0-cp36-abi3-musllinux_1_1_aarch64.whl", hash = "sha256:bd46088725ef7f58b5a1ef7ca06647ebaf0eb4baff7d1d0d177c6cc8744abd86", size = 83613 }, + { url = "https://files.pythonhosted.org/packages/4f/fd/37f86deef67ff57c76f137a67181949c2d408077e2e3dd70c6c42912c9bf/argon2_cffi_bindings-21.2.0-cp36-abi3-musllinux_1_1_i686.whl", hash = "sha256:8cd69c07dd875537a824deec19f978e0f2078fdda07fd5c42ac29668dda5f40f", size = 84583 }, + { url = "https://files.pythonhosted.org/packages/6f/52/5a60085a3dae8fded8327a4f564223029f5f54b0cb0455a31131b5363a01/argon2_cffi_bindings-21.2.0-cp36-abi3-musllinux_1_1_x86_64.whl", hash = "sha256:f1152ac548bd5b8bcecfb0b0371f082037e47128653df2e8ba6e914d384f3c3e", size = 88475 }, + { url = "https://files.pythonhosted.org/packages/8b/95/143cd64feb24a15fa4b189a3e1e7efbaeeb00f39a51e99b26fc62fbacabd/argon2_cffi_bindings-21.2.0-cp36-abi3-win32.whl", hash = "sha256:603ca0aba86b1349b147cab91ae970c63118a0f30444d4bc80355937c950c082", size = 27698 }, + { url = "https://files.pythonhosted.org/packages/37/2c/e34e47c7dee97ba6f01a6203e0383e15b60fb85d78ac9a15cd066f6fe28b/argon2_cffi_bindings-21.2.0-cp36-abi3-win_amd64.whl", hash = "sha256:b2ef1c30440dbbcba7a5dc3e319408b59676e2e039e2ae11a8775ecf482b192f", size = 30817 }, + { url = "https://files.pythonhosted.org/packages/5a/e4/bf8034d25edaa495da3c8a3405627d2e35758e44ff6eaa7948092646fdcc/argon2_cffi_bindings-21.2.0-cp38-abi3-macosx_10_9_universal2.whl", hash = "sha256:e415e3f62c8d124ee16018e491a009937f8cf7ebf5eb430ffc5de21b900dad93", size = 53104 }, +] + +[[package]] +name = "arrow" +version = "1.3.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "python-dateutil" }, + { name = "types-python-dateutil" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/2e/00/0f6e8fcdb23ea632c866620cc872729ff43ed91d284c866b515c6342b173/arrow-1.3.0.tar.gz", hash = "sha256:d4540617648cb5f895730f1ad8c82a65f2dad0166f57b75f3ca54759c4d67a85", size = 131960 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/f8/ed/e97229a566617f2ae958a6b13e7cc0f585470eac730a73e9e82c32a3cdd2/arrow-1.3.0-py3-none-any.whl", hash = "sha256:c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80", size = 66419 }, +] + +[[package]] +name = "asttokens" +version = "2.4.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "six" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/45/1d/f03bcb60c4a3212e15f99a56085d93093a497718adf828d050b9d675da81/asttokens-2.4.1.tar.gz", hash = "sha256:b03869718ba9a6eb027e134bfdf69f38a236d681c83c160d510768af11254ba0", size = 62284 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/45/86/4736ac618d82a20d87d2f92ae19441ebc7ac9e7a581d7e58bbe79233b24a/asttokens-2.4.1-py2.py3-none-any.whl", hash = "sha256:051ed49c3dcae8913ea7cd08e46a606dba30b79993209636c4875bc1d637bc24", size = 27764 }, +] + +[[package]] +name = "async-lru" +version = "2.0.4" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "typing-extensions", marker = "python_full_version < '3.11'" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/80/e2/2b4651eff771f6fd900d233e175ddc5e2be502c7eb62c0c42f975c6d36cd/async-lru-2.0.4.tar.gz", hash = "sha256:b8a59a5df60805ff63220b2a0c5b5393da5521b113cd5465a44eb037d81a5627", size = 10019 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/fa/9f/3c3503693386c4b0f245eaf5ca6198e3b28879ca0a40bde6b0e319793453/async_lru-2.0.4-py3-none-any.whl", hash = "sha256:ff02944ce3c288c5be660c42dbcca0742b32c3b279d6dceda655190240b99224", size = 6111 }, +] + +[[package]] +name = "attrs" +version = "24.2.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/fc/0f/aafca9af9315aee06a89ffde799a10a582fe8de76c563ee80bbcdc08b3fb/attrs-24.2.0.tar.gz", hash = "sha256:5cfb1b9148b5b086569baec03f20d7b6bf3bcacc9a42bebf87ffaaca362f6346", size = 792678 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/6a/21/5b6702a7f963e95456c0de2d495f67bf5fd62840ac655dc451586d23d39a/attrs-24.2.0-py3-none-any.whl", hash = "sha256:81921eb96de3191c8258c199618104dd27ac608d9366f5e35d011eae1867ede2", size = 63001 }, +] + +[[package]] +name = "babel" +version = "2.16.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/2a/74/f1bc80f23eeba13393b7222b11d95ca3af2c1e28edca18af487137eefed9/babel-2.16.0.tar.gz", hash = "sha256:d1f3554ca26605fe173f3de0c65f750f5a42f924499bf134de6423582298e316", size = 9348104 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/ed/20/bc79bc575ba2e2a7f70e8a1155618bb1301eaa5132a8271373a6903f73f8/babel-2.16.0-py3-none-any.whl", hash = "sha256:368b5b98b37c06b7daf6696391c3240c938b37767d4584413e8438c5c435fa8b", size = 9587599 }, +] + +[[package]] +name = "beautifulsoup4" +version = "4.12.3" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "soupsieve" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/b3/ca/824b1195773ce6166d388573fc106ce56d4a805bd7427b624e063596ec58/beautifulsoup4-4.12.3.tar.gz", hash = "sha256:74e3d1928edc070d21748185c46e3fb33490f22f52a3addee9aee0f4f7781051", size = 581181 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/b1/fe/e8c672695b37eecc5cbf43e1d0638d88d66ba3a44c4d321c796f4e59167f/beautifulsoup4-4.12.3-py3-none-any.whl", hash = "sha256:b80878c9f40111313e55da8ba20bdba06d8fa3969fc68304167741bbf9e082ed", size = 147925 }, +] + +[[package]] +name = "bleach" +version = "6.1.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "six" }, + { name = "webencodings" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/6d/10/77f32b088738f40d4f5be801daa5f327879eadd4562f36a2b5ab975ae571/bleach-6.1.0.tar.gz", hash = "sha256:0a31f1837963c41d46bbf1331b8778e1308ea0791db03cc4e7357b97cf42a8fe", size = 202119 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/ea/63/da7237f805089ecc28a3f36bca6a21c31fcbc2eb380f3b8f1be3312abd14/bleach-6.1.0-py3-none-any.whl", hash = "sha256:3225f354cfc436b9789c66c4ee030194bee0568fbf9cbdad3bc8b5c26c5f12b6", size = 162750 }, +] + +[[package]] +name = "certifi" +version = "2024.8.30" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/b0/ee/9b19140fe824b367c04c5e1b369942dd754c4c5462d5674002f75c4dedc1/certifi-2024.8.30.tar.gz", hash = "sha256:bec941d2aa8195e248a60b31ff9f0558284cf01a52591ceda73ea9afffd69fd9", size = 168507 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/12/90/3c9ff0512038035f59d279fddeb79f5f1eccd8859f06d6163c58798b9487/certifi-2024.8.30-py3-none-any.whl", hash = "sha256:922820b53db7a7257ffbda3f597266d435245903d80737e34f8a45ff3e3230d8", size = 167321 }, +] + +[[package]] +name = "cffi" +version = "1.17.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "pycparser" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/fc/97/c783634659c2920c3fc70419e3af40972dbaf758daa229a7d6ea6135c90d/cffi-1.17.1.tar.gz", hash = "sha256:1c39c6016c32bc48dd54561950ebd6836e1670f2ae46128f67cf49e789c52824", size = 516621 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/90/07/f44ca684db4e4f08a3fdc6eeb9a0d15dc6883efc7b8c90357fdbf74e186c/cffi-1.17.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:df8b1c11f177bc2313ec4b2d46baec87a5f3e71fc8b45dab2ee7cae86d9aba14", size = 182191 }, + { url = "https://files.pythonhosted.org/packages/08/fd/cc2fedbd887223f9f5d170c96e57cbf655df9831a6546c1727ae13fa977a/cffi-1.17.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:8f2cdc858323644ab277e9bb925ad72ae0e67f69e804f4898c070998d50b1a67", size = 178592 }, + { url = "https://files.pythonhosted.org/packages/de/cc/4635c320081c78d6ffc2cab0a76025b691a91204f4aa317d568ff9280a2d/cffi-1.17.1-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:edae79245293e15384b51f88b00613ba9f7198016a5948b5dddf4917d4d26382", size = 426024 }, + { url = "https://files.pythonhosted.org/packages/b6/7b/3b2b250f3aab91abe5f8a51ada1b717935fdaec53f790ad4100fe2ec64d1/cffi-1.17.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:45398b671ac6d70e67da8e4224a065cec6a93541bb7aebe1b198a61b58c7b702", size = 448188 }, + { url = "https://files.pythonhosted.org/packages/d3/48/1b9283ebbf0ec065148d8de05d647a986c5f22586b18120020452fff8f5d/cffi-1.17.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ad9413ccdeda48c5afdae7e4fa2192157e991ff761e7ab8fdd8926f40b160cc3", size = 455571 }, + { url = "https://files.pythonhosted.org/packages/40/87/3b8452525437b40f39ca7ff70276679772ee7e8b394934ff60e63b7b090c/cffi-1.17.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:5da5719280082ac6bd9aa7becb3938dc9f9cbd57fac7d2871717b1feb0902ab6", size = 436687 }, + { url = "https://files.pythonhosted.org/packages/8d/fb/4da72871d177d63649ac449aec2e8a29efe0274035880c7af59101ca2232/cffi-1.17.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2bb1a08b8008b281856e5971307cc386a8e9c5b625ac297e853d36da6efe9c17", size = 446211 }, + { url = "https://files.pythonhosted.org/packages/ab/a0/62f00bcb411332106c02b663b26f3545a9ef136f80d5df746c05878f8c4b/cffi-1.17.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:045d61c734659cc045141be4bae381a41d89b741f795af1dd018bfb532fd0df8", size = 461325 }, + { url = "https://files.pythonhosted.org/packages/36/83/76127035ed2e7e27b0787604d99da630ac3123bfb02d8e80c633f218a11d/cffi-1.17.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:6883e737d7d9e4899a8a695e00ec36bd4e5e4f18fabe0aca0efe0a4b44cdb13e", size = 438784 }, + { url = "https://files.pythonhosted.org/packages/21/81/a6cd025db2f08ac88b901b745c163d884641909641f9b826e8cb87645942/cffi-1.17.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:6b8b4a92e1c65048ff98cfe1f735ef8f1ceb72e3d5f0c25fdb12087a23da22be", size = 461564 }, + { url = "https://files.pythonhosted.org/packages/f8/fe/4d41c2f200c4a457933dbd98d3cf4e911870877bd94d9656cc0fcb390681/cffi-1.17.1-cp310-cp310-win32.whl", hash = "sha256:c9c3d058ebabb74db66e431095118094d06abf53284d9c81f27300d0e0d8bc7c", size = 171804 }, + { url = "https://files.pythonhosted.org/packages/d1/b6/0b0f5ab93b0df4acc49cae758c81fe4e5ef26c3ae2e10cc69249dfd8b3ab/cffi-1.17.1-cp310-cp310-win_amd64.whl", hash = "sha256:0f048dcf80db46f0098ccac01132761580d28e28bc0f78ae0d58048063317e15", size = 181299 }, + { url = "https://files.pythonhosted.org/packages/6b/f4/927e3a8899e52a27fa57a48607ff7dc91a9ebe97399b357b85a0c7892e00/cffi-1.17.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:a45e3c6913c5b87b3ff120dcdc03f6131fa0065027d0ed7ee6190736a74cd401", size = 182264 }, + { url = "https://files.pythonhosted.org/packages/6c/f5/6c3a8efe5f503175aaddcbea6ad0d2c96dad6f5abb205750d1b3df44ef29/cffi-1.17.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:30c5e0cb5ae493c04c8b42916e52ca38079f1b235c2f8ae5f4527b963c401caf", size = 178651 }, + { url = "https://files.pythonhosted.org/packages/94/dd/a3f0118e688d1b1a57553da23b16bdade96d2f9bcda4d32e7d2838047ff7/cffi-1.17.1-cp311-cp311-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f75c7ab1f9e4aca5414ed4d8e5c0e303a34f4421f8a0d47a4d019ceff0ab6af4", size = 445259 }, + { url = "https://files.pythonhosted.org/packages/2e/ea/70ce63780f096e16ce8588efe039d3c4f91deb1dc01e9c73a287939c79a6/cffi-1.17.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a1ed2dd2972641495a3ec98445e09766f077aee98a1c896dcb4ad0d303628e41", size = 469200 }, + { url = "https://files.pythonhosted.org/packages/1c/a0/a4fa9f4f781bda074c3ddd57a572b060fa0df7655d2a4247bbe277200146/cffi-1.17.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:46bf43160c1a35f7ec506d254e5c890f3c03648a4dbac12d624e4490a7046cd1", size = 477235 }, + { url = "https://files.pythonhosted.org/packages/62/12/ce8710b5b8affbcdd5c6e367217c242524ad17a02fe5beec3ee339f69f85/cffi-1.17.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a24ed04c8ffd54b0729c07cee15a81d964e6fee0e3d4d342a27b020d22959dc6", size = 459721 }, + { url = "https://files.pythonhosted.org/packages/ff/6b/d45873c5e0242196f042d555526f92aa9e0c32355a1be1ff8c27f077fd37/cffi-1.17.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:610faea79c43e44c71e1ec53a554553fa22321b65fae24889706c0a84d4ad86d", size = 467242 }, + { url = "https://files.pythonhosted.org/packages/1a/52/d9a0e523a572fbccf2955f5abe883cfa8bcc570d7faeee06336fbd50c9fc/cffi-1.17.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:a9b15d491f3ad5d692e11f6b71f7857e7835eb677955c00cc0aefcd0669adaf6", size = 477999 }, + { url = "https://files.pythonhosted.org/packages/44/74/f2a2460684a1a2d00ca799ad880d54652841a780c4c97b87754f660c7603/cffi-1.17.1-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:de2ea4b5833625383e464549fec1bc395c1bdeeb5f25c4a3a82b5a8c756ec22f", size = 454242 }, + { url = "https://files.pythonhosted.org/packages/f8/4a/34599cac7dfcd888ff54e801afe06a19c17787dfd94495ab0c8d35fe99fb/cffi-1.17.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:fc48c783f9c87e60831201f2cce7f3b2e4846bf4d8728eabe54d60700b318a0b", size = 478604 }, + { url = "https://files.pythonhosted.org/packages/34/33/e1b8a1ba29025adbdcda5fb3a36f94c03d771c1b7b12f726ff7fef2ebe36/cffi-1.17.1-cp311-cp311-win32.whl", hash = "sha256:85a950a4ac9c359340d5963966e3e0a94a676bd6245a4b55bc43949eee26a655", size = 171727 }, + { url = "https://files.pythonhosted.org/packages/3d/97/50228be003bb2802627d28ec0627837ac0bf35c90cf769812056f235b2d1/cffi-1.17.1-cp311-cp311-win_amd64.whl", hash = "sha256:caaf0640ef5f5517f49bc275eca1406b0ffa6aa184892812030f04c2abf589a0", size = 181400 }, + { url = "https://files.pythonhosted.org/packages/5a/84/e94227139ee5fb4d600a7a4927f322e1d4aea6fdc50bd3fca8493caba23f/cffi-1.17.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:805b4371bf7197c329fcb3ead37e710d1bca9da5d583f5073b799d5c5bd1eee4", size = 183178 }, + { url = "https://files.pythonhosted.org/packages/da/ee/fb72c2b48656111c4ef27f0f91da355e130a923473bf5ee75c5643d00cca/cffi-1.17.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:733e99bc2df47476e3848417c5a4540522f234dfd4ef3ab7fafdf555b082ec0c", size = 178840 }, + { url = "https://files.pythonhosted.org/packages/cc/b6/db007700f67d151abadf508cbfd6a1884f57eab90b1bb985c4c8c02b0f28/cffi-1.17.1-cp312-cp312-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1257bdabf294dceb59f5e70c64a3e2f462c30c7ad68092d01bbbfb1c16b1ba36", size = 454803 }, + { url = "https://files.pythonhosted.org/packages/1a/df/f8d151540d8c200eb1c6fba8cd0dfd40904f1b0682ea705c36e6c2e97ab3/cffi-1.17.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:da95af8214998d77a98cc14e3a3bd00aa191526343078b530ceb0bd710fb48a5", size = 478850 }, + { url = "https://files.pythonhosted.org/packages/28/c0/b31116332a547fd2677ae5b78a2ef662dfc8023d67f41b2a83f7c2aa78b1/cffi-1.17.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:d63afe322132c194cf832bfec0dc69a99fb9bb6bbd550f161a49e9e855cc78ff", size = 485729 }, + { url = "https://files.pythonhosted.org/packages/91/2b/9a1ddfa5c7f13cab007a2c9cc295b70fbbda7cb10a286aa6810338e60ea1/cffi-1.17.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:f79fc4fc25f1c8698ff97788206bb3c2598949bfe0fef03d299eb1b5356ada99", size = 471256 }, + { url = "https://files.pythonhosted.org/packages/b2/d5/da47df7004cb17e4955df6a43d14b3b4ae77737dff8bf7f8f333196717bf/cffi-1.17.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b62ce867176a75d03a665bad002af8e6d54644fad99a3c70905c543130e39d93", size = 479424 }, + { url = "https://files.pythonhosted.org/packages/0b/ac/2a28bcf513e93a219c8a4e8e125534f4f6db03e3179ba1c45e949b76212c/cffi-1.17.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:386c8bf53c502fff58903061338ce4f4950cbdcb23e2902d86c0f722b786bbe3", size = 484568 }, + { url = "https://files.pythonhosted.org/packages/d4/38/ca8a4f639065f14ae0f1d9751e70447a261f1a30fa7547a828ae08142465/cffi-1.17.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:4ceb10419a9adf4460ea14cfd6bc43d08701f0835e979bf821052f1805850fe8", size = 488736 }, + { url = "https://files.pythonhosted.org/packages/86/c5/28b2d6f799ec0bdecf44dced2ec5ed43e0eb63097b0f58c293583b406582/cffi-1.17.1-cp312-cp312-win32.whl", hash = "sha256:a08d7e755f8ed21095a310a693525137cfe756ce62d066e53f502a83dc550f65", size = 172448 }, + { url = "https://files.pythonhosted.org/packages/50/b9/db34c4755a7bd1cb2d1603ac3863f22bcecbd1ba29e5ee841a4bc510b294/cffi-1.17.1-cp312-cp312-win_amd64.whl", hash = "sha256:51392eae71afec0d0c8fb1a53b204dbb3bcabcb3c9b807eedf3e1e6ccf2de903", size = 181976 }, + { url = "https://files.pythonhosted.org/packages/8d/f8/dd6c246b148639254dad4d6803eb6a54e8c85c6e11ec9df2cffa87571dbe/cffi-1.17.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:f3a2b4222ce6b60e2e8b337bb9596923045681d71e5a082783484d845390938e", size = 182989 }, + { url = "https://files.pythonhosted.org/packages/8b/f1/672d303ddf17c24fc83afd712316fda78dc6fce1cd53011b839483e1ecc8/cffi-1.17.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:0984a4925a435b1da406122d4d7968dd861c1385afe3b45ba82b750f229811e2", size = 178802 }, + { url = "https://files.pythonhosted.org/packages/0e/2d/eab2e858a91fdff70533cab61dcff4a1f55ec60425832ddfdc9cd36bc8af/cffi-1.17.1-cp313-cp313-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d01b12eeeb4427d3110de311e1774046ad344f5b1a7403101878976ecd7a10f3", size = 454792 }, + { url = "https://files.pythonhosted.org/packages/75/b2/fbaec7c4455c604e29388d55599b99ebcc250a60050610fadde58932b7ee/cffi-1.17.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:706510fe141c86a69c8ddc029c7910003a17353970cff3b904ff0686a5927683", size = 478893 }, + { url = "https://files.pythonhosted.org/packages/4f/b7/6e4a2162178bf1935c336d4da8a9352cccab4d3a5d7914065490f08c0690/cffi-1.17.1-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:de55b766c7aa2e2a3092c51e0483d700341182f08e67c63630d5b6f200bb28e5", size = 485810 }, + { url = "https://files.pythonhosted.org/packages/c7/8a/1d0e4a9c26e54746dc08c2c6c037889124d4f59dffd853a659fa545f1b40/cffi-1.17.1-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c59d6e989d07460165cc5ad3c61f9fd8f1b4796eacbd81cee78957842b834af4", size = 471200 }, + { url = "https://files.pythonhosted.org/packages/26/9f/1aab65a6c0db35f43c4d1b4f580e8df53914310afc10ae0397d29d697af4/cffi-1.17.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dd398dbc6773384a17fe0d3e7eeb8d1a21c2200473ee6806bb5e6a8e62bb73dd", size = 479447 }, + { url = "https://files.pythonhosted.org/packages/5f/e4/fb8b3dd8dc0e98edf1135ff067ae070bb32ef9d509d6cb0f538cd6f7483f/cffi-1.17.1-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:3edc8d958eb099c634dace3c7e16560ae474aa3803a5df240542b305d14e14ed", size = 484358 }, + { url = "https://files.pythonhosted.org/packages/f1/47/d7145bf2dc04684935d57d67dff9d6d795b2ba2796806bb109864be3a151/cffi-1.17.1-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:72e72408cad3d5419375fc87d289076ee319835bdfa2caad331e377589aebba9", size = 488469 }, + { url = "https://files.pythonhosted.org/packages/bf/ee/f94057fa6426481d663b88637a9a10e859e492c73d0384514a17d78ee205/cffi-1.17.1-cp313-cp313-win32.whl", hash = "sha256:e03eab0a8677fa80d646b5ddece1cbeaf556c313dcfac435ba11f107ba117b5d", size = 172475 }, + { url = "https://files.pythonhosted.org/packages/7c/fc/6a8cb64e5f0324877d503c854da15d76c1e50eb722e320b15345c4d0c6de/cffi-1.17.1-cp313-cp313-win_amd64.whl", hash = "sha256:f6a16c31041f09ead72d69f583767292f750d24913dadacf5756b966aacb3f1a", size = 182009 }, +] + +[[package]] +name = "charset-normalizer" +version = "3.3.2" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/63/09/c1bc53dab74b1816a00d8d030de5bf98f724c52c1635e07681d312f20be8/charset-normalizer-3.3.2.tar.gz", hash = "sha256:f30c3cb33b24454a82faecaf01b19c18562b1e89558fb6c56de4d9118a032fd5", size = 104809 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/2b/61/095a0aa1a84d1481998b534177c8566fdc50bb1233ea9a0478cd3cc075bd/charset_normalizer-3.3.2-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:25baf083bf6f6b341f4121c2f3c548875ee6f5339300e08be3f2b2ba1721cdd3", size = 194219 }, + { url = "https://files.pythonhosted.org/packages/cc/94/f7cf5e5134175de79ad2059edf2adce18e0685ebdb9227ff0139975d0e93/charset_normalizer-3.3.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:06435b539f889b1f6f4ac1758871aae42dc3a8c0e24ac9e60c2384973ad73027", size = 122521 }, + { url = "https://files.pythonhosted.org/packages/46/6a/d5c26c41c49b546860cc1acabdddf48b0b3fb2685f4f5617ac59261b44ae/charset_normalizer-3.3.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9063e24fdb1e498ab71cb7419e24622516c4a04476b17a2dab57e8baa30d6e03", size = 120383 }, + { url = "https://files.pythonhosted.org/packages/b8/60/e2f67915a51be59d4539ed189eb0a2b0d292bf79270410746becb32bc2c3/charset_normalizer-3.3.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6897af51655e3691ff853668779c7bad41579facacf5fd7253b0133308cf000d", size = 138223 }, + { url = "https://files.pythonhosted.org/packages/05/8c/eb854996d5fef5e4f33ad56927ad053d04dc820e4a3d39023f35cad72617/charset_normalizer-3.3.2-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1d3193f4a680c64b4b6a9115943538edb896edc190f0b222e73761716519268e", size = 148101 }, + { url = "https://files.pythonhosted.org/packages/f6/93/bb6cbeec3bf9da9b2eba458c15966658d1daa8b982c642f81c93ad9b40e1/charset_normalizer-3.3.2-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:cd70574b12bb8a4d2aaa0094515df2463cb429d8536cfb6c7ce983246983e5a6", size = 140699 }, + { url = "https://files.pythonhosted.org/packages/da/f1/3702ba2a7470666a62fd81c58a4c40be00670e5006a67f4d626e57f013ae/charset_normalizer-3.3.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8465322196c8b4d7ab6d1e049e4c5cb460d0394da4a27d23cc242fbf0034b6b5", size = 142065 }, + { url = "https://files.pythonhosted.org/packages/3f/ba/3f5e7be00b215fa10e13d64b1f6237eb6ebea66676a41b2bcdd09fe74323/charset_normalizer-3.3.2-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a9a8e9031d613fd2009c182b69c7b2c1ef8239a0efb1df3f7c8da66d5dd3d537", size = 144505 }, + { url = "https://files.pythonhosted.org/packages/33/c3/3b96a435c5109dd5b6adc8a59ba1d678b302a97938f032e3770cc84cd354/charset_normalizer-3.3.2-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:beb58fe5cdb101e3a055192ac291b7a21e3b7ef4f67fa1d74e331a7f2124341c", size = 139425 }, + { url = "https://files.pythonhosted.org/packages/43/05/3bf613e719efe68fb3a77f9c536a389f35b95d75424b96b426a47a45ef1d/charset_normalizer-3.3.2-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:e06ed3eb3218bc64786f7db41917d4e686cc4856944f53d5bdf83a6884432e12", size = 145287 }, + { url = "https://files.pythonhosted.org/packages/58/78/a0bc646900994df12e07b4ae5c713f2b3e5998f58b9d3720cce2aa45652f/charset_normalizer-3.3.2-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:2e81c7b9c8979ce92ed306c249d46894776a909505d8f5a4ba55b14206e3222f", size = 149929 }, + { url = "https://files.pythonhosted.org/packages/eb/5c/97d97248af4920bc68687d9c3b3c0f47c910e21a8ff80af4565a576bd2f0/charset_normalizer-3.3.2-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:572c3763a264ba47b3cf708a44ce965d98555f618ca42c926a9c1616d8f34269", size = 141605 }, + { url = "https://files.pythonhosted.org/packages/a8/31/47d018ef89f95b8aded95c589a77c072c55e94b50a41aa99c0a2008a45a4/charset_normalizer-3.3.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:fd1abc0d89e30cc4e02e4064dc67fcc51bd941eb395c502aac3ec19fab46b519", size = 142646 }, + { url = "https://files.pythonhosted.org/packages/ae/d5/4fecf1d58bedb1340a50f165ba1c7ddc0400252d6832ff619c4568b36cc0/charset_normalizer-3.3.2-cp310-cp310-win32.whl", hash = "sha256:3d47fa203a7bd9c5b6cee4736ee84ca03b8ef23193c0d1ca99b5089f72645c73", size = 92846 }, + { url = "https://files.pythonhosted.org/packages/a2/a0/4af29e22cb5942488cf45630cbdd7cefd908768e69bdd90280842e4e8529/charset_normalizer-3.3.2-cp310-cp310-win_amd64.whl", hash = "sha256:10955842570876604d404661fbccbc9c7e684caf432c09c715ec38fbae45ae09", size = 100343 }, + { url = "https://files.pythonhosted.org/packages/68/77/02839016f6fbbf808e8b38601df6e0e66c17bbab76dff4613f7511413597/charset_normalizer-3.3.2-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:802fe99cca7457642125a8a88a084cef28ff0cf9407060f7b93dca5aa25480db", size = 191647 }, + { url = "https://files.pythonhosted.org/packages/3e/33/21a875a61057165e92227466e54ee076b73af1e21fe1b31f1e292251aa1e/charset_normalizer-3.3.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:573f6eac48f4769d667c4442081b1794f52919e7edada77495aaed9236d13a96", size = 121434 }, + { url = "https://files.pythonhosted.org/packages/dd/51/68b61b90b24ca35495956b718f35a9756ef7d3dd4b3c1508056fa98d1a1b/charset_normalizer-3.3.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:549a3a73da901d5bc3ce8d24e0600d1fa85524c10287f6004fbab87672bf3e1e", size = 118979 }, + { url = "https://files.pythonhosted.org/packages/e4/a6/7ee57823d46331ddc37dd00749c95b0edec2c79b15fc0d6e6efb532e89ac/charset_normalizer-3.3.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f27273b60488abe721a075bcca6d7f3964f9f6f067c8c4c605743023d7d3944f", size = 136582 }, + { url = "https://files.pythonhosted.org/packages/74/f1/0d9fe69ac441467b737ba7f48c68241487df2f4522dd7246d9426e7c690e/charset_normalizer-3.3.2-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1ceae2f17a9c33cb48e3263960dc5fc8005351ee19db217e9b1bb15d28c02574", size = 146645 }, + { url = "https://files.pythonhosted.org/packages/05/31/e1f51c76db7be1d4aef220d29fbfa5dbb4a99165d9833dcbf166753b6dc0/charset_normalizer-3.3.2-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:65f6f63034100ead094b8744b3b97965785388f308a64cf8d7c34f2f2e5be0c4", size = 139398 }, + { url = "https://files.pythonhosted.org/packages/40/26/f35951c45070edc957ba40a5b1db3cf60a9dbb1b350c2d5bef03e01e61de/charset_normalizer-3.3.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:753f10e867343b4511128c6ed8c82f7bec3bd026875576dfd88483c5c73b2fd8", size = 140273 }, + { url = "https://files.pythonhosted.org/packages/07/07/7e554f2bbce3295e191f7e653ff15d55309a9ca40d0362fcdab36f01063c/charset_normalizer-3.3.2-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:4a78b2b446bd7c934f5dcedc588903fb2f5eec172f3d29e52a9096a43722adfc", size = 142577 }, + { url = "https://files.pythonhosted.org/packages/d8/b5/eb705c313100defa57da79277d9207dc8d8e45931035862fa64b625bfead/charset_normalizer-3.3.2-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:e537484df0d8f426ce2afb2d0f8e1c3d0b114b83f8850e5f2fbea0e797bd82ae", size = 137747 }, + { url = "https://files.pythonhosted.org/packages/19/28/573147271fd041d351b438a5665be8223f1dd92f273713cb882ddafe214c/charset_normalizer-3.3.2-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:eb6904c354526e758fda7167b33005998fb68c46fbc10e013ca97f21ca5c8887", size = 143375 }, + { url = "https://files.pythonhosted.org/packages/cf/7c/f3b682fa053cc21373c9a839e6beba7705857075686a05c72e0f8c4980ca/charset_normalizer-3.3.2-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:deb6be0ac38ece9ba87dea880e438f25ca3eddfac8b002a2ec3d9183a454e8ae", size = 148474 }, + { url = "https://files.pythonhosted.org/packages/1e/49/7ab74d4ac537ece3bc3334ee08645e231f39f7d6df6347b29a74b0537103/charset_normalizer-3.3.2-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:4ab2fe47fae9e0f9dee8c04187ce5d09f48eabe611be8259444906793ab7cbce", size = 140232 }, + { url = "https://files.pythonhosted.org/packages/2d/dc/9dacba68c9ac0ae781d40e1a0c0058e26302ea0660e574ddf6797a0347f7/charset_normalizer-3.3.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:80402cd6ee291dcb72644d6eac93785fe2c8b9cb30893c1af5b8fdd753b9d40f", size = 140859 }, + { url = "https://files.pythonhosted.org/packages/6c/c2/4a583f800c0708dd22096298e49f887b49d9746d0e78bfc1d7e29816614c/charset_normalizer-3.3.2-cp311-cp311-win32.whl", hash = "sha256:7cd13a2e3ddeed6913a65e66e94b51d80a041145a026c27e6bb76c31a853c6ab", size = 92509 }, + { url = "https://files.pythonhosted.org/packages/57/ec/80c8d48ac8b1741d5b963797b7c0c869335619e13d4744ca2f67fc11c6fc/charset_normalizer-3.3.2-cp311-cp311-win_amd64.whl", hash = "sha256:663946639d296df6a2bb2aa51b60a2454ca1cb29835324c640dafb5ff2131a77", size = 99870 }, + { url = "https://files.pythonhosted.org/packages/d1/b2/fcedc8255ec42afee97f9e6f0145c734bbe104aac28300214593eb326f1d/charset_normalizer-3.3.2-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:0b2b64d2bb6d3fb9112bafa732def486049e63de9618b5843bcdd081d8144cd8", size = 192892 }, + { url = "https://files.pythonhosted.org/packages/2e/7d/2259318c202f3d17f3fe6438149b3b9e706d1070fe3fcbb28049730bb25c/charset_normalizer-3.3.2-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:ddbb2551d7e0102e7252db79ba445cdab71b26640817ab1e3e3648dad515003b", size = 122213 }, + { url = "https://files.pythonhosted.org/packages/3a/52/9f9d17c3b54dc238de384c4cb5a2ef0e27985b42a0e5cc8e8a31d918d48d/charset_normalizer-3.3.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:55086ee1064215781fff39a1af09518bc9255b50d6333f2e4c74ca09fac6a8f6", size = 119404 }, + { url = "https://files.pythonhosted.org/packages/99/b0/9c365f6d79a9f0f3c379ddb40a256a67aa69c59609608fe7feb6235896e1/charset_normalizer-3.3.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8f4a014bc36d3c57402e2977dada34f9c12300af536839dc38c0beab8878f38a", size = 137275 }, + { url = "https://files.pythonhosted.org/packages/91/33/749df346e93d7a30cdcb90cbfdd41a06026317bfbfb62cd68307c1a3c543/charset_normalizer-3.3.2-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:a10af20b82360ab00827f916a6058451b723b4e65030c5a18577c8b2de5b3389", size = 147518 }, + { url = "https://files.pythonhosted.org/packages/72/1a/641d5c9f59e6af4c7b53da463d07600a695b9824e20849cb6eea8a627761/charset_normalizer-3.3.2-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8d756e44e94489e49571086ef83b2bb8ce311e730092d2c34ca8f7d925cb20aa", size = 140182 }, + { url = "https://files.pythonhosted.org/packages/ee/fb/14d30eb4956408ee3ae09ad34299131fb383c47df355ddb428a7331cfa1e/charset_normalizer-3.3.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:90d558489962fd4918143277a773316e56c72da56ec7aa3dc3dbbe20fdfed15b", size = 141869 }, + { url = "https://files.pythonhosted.org/packages/df/3e/a06b18788ca2eb6695c9b22325b6fde7dde0f1d1838b1792a0076f58fe9d/charset_normalizer-3.3.2-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6ac7ffc7ad6d040517be39eb591cac5ff87416c2537df6ba3cba3bae290c0fed", size = 144042 }, + { url = "https://files.pythonhosted.org/packages/45/59/3d27019d3b447a88fe7e7d004a1e04be220227760264cc41b405e863891b/charset_normalizer-3.3.2-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:7ed9e526742851e8d5cc9e6cf41427dfc6068d4f5a3bb03659444b4cabf6bc26", size = 138275 }, + { url = "https://files.pythonhosted.org/packages/7b/ef/5eb105530b4da8ae37d506ccfa25057961b7b63d581def6f99165ea89c7e/charset_normalizer-3.3.2-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:8bdb58ff7ba23002a4c5808d608e4e6c687175724f54a5dade5fa8c67b604e4d", size = 144819 }, + { url = "https://files.pythonhosted.org/packages/a2/51/e5023f937d7f307c948ed3e5c29c4b7a3e42ed2ee0b8cdf8f3a706089bf0/charset_normalizer-3.3.2-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:6b3251890fff30ee142c44144871185dbe13b11bab478a88887a639655be1068", size = 149415 }, + { url = "https://files.pythonhosted.org/packages/24/9d/2e3ef673dfd5be0154b20363c5cdcc5606f35666544381bee15af3778239/charset_normalizer-3.3.2-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:b4a23f61ce87adf89be746c8a8974fe1c823c891d8f86eb218bb957c924bb143", size = 141212 }, + { url = "https://files.pythonhosted.org/packages/5b/ae/ce2c12fcac59cb3860b2e2d76dc405253a4475436b1861d95fe75bdea520/charset_normalizer-3.3.2-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:efcb3f6676480691518c177e3b465bcddf57cea040302f9f4e6e191af91174d4", size = 142167 }, + { url = "https://files.pythonhosted.org/packages/ed/3a/a448bf035dce5da359daf9ae8a16b8a39623cc395a2ffb1620aa1bce62b0/charset_normalizer-3.3.2-cp312-cp312-win32.whl", hash = "sha256:d965bba47ddeec8cd560687584e88cf699fd28f192ceb452d1d7ee807c5597b7", size = 93041 }, + { url = "https://files.pythonhosted.org/packages/b6/7c/8debebb4f90174074b827c63242c23851bdf00a532489fba57fef3416e40/charset_normalizer-3.3.2-cp312-cp312-win_amd64.whl", hash = "sha256:96b02a3dc4381e5494fad39be677abcb5e6634bf7b4fa83a6dd3112607547001", size = 100397 }, + { url = "https://files.pythonhosted.org/packages/28/76/e6222113b83e3622caa4bb41032d0b1bf785250607392e1b778aca0b8a7d/charset_normalizer-3.3.2-py3-none-any.whl", hash = "sha256:3e4d1f6587322d2788836a99c69062fbb091331ec940e02d12d179c1d53e25fc", size = 48543 }, +] + +[[package]] +name = "colorama" +version = "0.4.6" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/d8/53/6f443c9a4a8358a93a6792e2acffb9d9d5cb0a5cfd8802644b7b1c9a02e4/colorama-0.4.6.tar.gz", hash = "sha256:08695f5cb7ed6e0531a20572697297273c47b8cae5a63ffc6d6ed5c201be6e44", size = 27697 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl", hash = "sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6", size = 25335 }, +] + +[[package]] +name = "comm" +version = "0.2.2" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "traitlets" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/e9/a8/fb783cb0abe2b5fded9f55e5703015cdf1c9c85b3669087c538dd15a6a86/comm-0.2.2.tar.gz", hash = "sha256:3fd7a84065306e07bea1773df6eb8282de51ba82f77c72f9c85716ab11fe980e", size = 6210 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/e6/75/49e5bfe642f71f272236b5b2d2691cf915a7283cc0ceda56357b61daa538/comm-0.2.2-py3-none-any.whl", hash = "sha256:e6fb86cb70ff661ee8c9c14e7d36d6de3b4066f1441be4063df9c5009f0a64d3", size = 7180 }, +] + +[[package]] +name = "debugpy" +version = "1.8.6" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/ce/b3/05c94639560cf0eaef33662ee5102d3e2a8b9e8c527c53190bf7187bacdb/debugpy-1.8.6.zip", hash = "sha256:c931a9371a86784cee25dec8d65bc2dc7a21f3f1552e3833d9ef8f919d22280a", size = 4956612 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/f4/ce/5e093945df2da28dbd1bc14c631d71431d1aa08adc629e221c9658841f82/debugpy-1.8.6-cp310-cp310-macosx_14_0_x86_64.whl", hash = "sha256:30f467c5345d9dfdcc0afdb10e018e47f092e383447500f125b4e013236bf14b", size = 2089048 }, + { url = "https://files.pythonhosted.org/packages/d4/7a/a5fe4eaf648016a27a875403735a089ba7cc9a4cc906d37c8fdb2997b50d/debugpy-1.8.6-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5d73d8c52614432f4215d0fe79a7e595d0dd162b5c15233762565be2f014803b", size = 3547450 }, + { url = "https://files.pythonhosted.org/packages/bf/fe/53d6d46e4a1cb5fb1a979695a9a26c8a04aed6d6ce4ba808a6d42341beba/debugpy-1.8.6-cp310-cp310-win32.whl", hash = "sha256:e3e182cd98eac20ee23a00653503315085b29ab44ed66269482349d307b08df9", size = 5151732 }, + { url = "https://files.pythonhosted.org/packages/ce/68/127cfc6012fbeef126eab1e168ad788ee9832b8b0d572743e5c6fa03ea83/debugpy-1.8.6-cp310-cp310-win_amd64.whl", hash = "sha256:e3a82da039cfe717b6fb1886cbbe5c4a3f15d7df4765af857f4307585121c2dd", size = 5183983 }, + { url = "https://files.pythonhosted.org/packages/9f/cc/3158aa2c96c677e324981230dfd33087ef4bfb5afb1d9cd40b7a1b35edb2/debugpy-1.8.6-cp311-cp311-macosx_14_0_universal2.whl", hash = "sha256:67479a94cf5fd2c2d88f9615e087fcb4fec169ec780464a3f2ba4a9a2bb79955", size = 2203403 }, + { url = "https://files.pythonhosted.org/packages/d5/9f/5691af62c556392ee45ed9b5c3fde4aaa7cb3b519cc8bea92fc27eab31fc/debugpy-1.8.6-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9fb8653f6cbf1dd0a305ac1aa66ec246002145074ea57933978346ea5afdf70b", size = 3120088 }, + { url = "https://files.pythonhosted.org/packages/5e/3e/e32b36f9a391af4f8ff6b9c068ee822b5e4aa2d9cf4dc0937696e9249fa6/debugpy-1.8.6-cp311-cp311-win32.whl", hash = "sha256:cdaf0b9691879da2d13fa39b61c01887c34558d1ff6e5c30e2eb698f5384cd43", size = 5077329 }, + { url = "https://files.pythonhosted.org/packages/9d/de/ddad801b7fdbe2f97c744b44bb61169c4e0ab48a90f881c8f43b463f206b/debugpy-1.8.6-cp311-cp311-win_amd64.whl", hash = "sha256:43996632bee7435583952155c06881074b9a742a86cee74e701d87ca532fe833", size = 5101373 }, + { url = "https://files.pythonhosted.org/packages/b8/9e/882dae43f281fc4742fd9e5d2e0f5dae77f38d4f345e78bf1ed5e1f6202e/debugpy-1.8.6-cp312-cp312-macosx_14_0_universal2.whl", hash = "sha256:db891b141fc6ee4b5fc6d1cc8035ec329cabc64bdd2ae672b4550c87d4ecb128", size = 2526807 }, + { url = "https://files.pythonhosted.org/packages/77/cf/6c0497f4b092cb4a408dda5ab84750032e5535f994d21eb812086d62094d/debugpy-1.8.6-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:567419081ff67da766c898ccf21e79f1adad0e321381b0dfc7a9c8f7a9347972", size = 4162582 }, + { url = "https://files.pythonhosted.org/packages/8e/66/e9c0aef0a5118aeaa6dfccb6d4f388602271cfb37c689da5e7b6168075d2/debugpy-1.8.6-cp312-cp312-win32.whl", hash = "sha256:c9834dfd701a1f6bf0f7f0b8b1573970ae99ebbeee68314116e0ccc5c78eea3c", size = 5193541 }, + { url = "https://files.pythonhosted.org/packages/c2/97/2196c4132c29f7cd8e574bb05a4b03ed35f94e3fcd1f56e72ea9f10732f4/debugpy-1.8.6-cp312-cp312-win_amd64.whl", hash = "sha256:e4ce0570aa4aca87137890d23b86faeadf184924ad892d20c54237bcaab75d8f", size = 5233374 }, + { url = "https://files.pythonhosted.org/packages/05/ce/785925e87ce735cc3da7fb2bd66d8ca83173d8a0b60ce35a59a60b8d636f/debugpy-1.8.6-py2.py3-none-any.whl", hash = "sha256:b48892df4d810eff21d3ef37274f4c60d32cdcafc462ad5647239036b0f0649f", size = 5209208 }, +] + +[[package]] +name = "decorator" +version = "5.1.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/66/0c/8d907af351aa16b42caae42f9d6aa37b900c67308052d10fdce809f8d952/decorator-5.1.1.tar.gz", hash = "sha256:637996211036b6385ef91435e4fae22989472f9d571faba8927ba8253acbc330", size = 35016 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/d5/50/83c593b07763e1161326b3b8c6686f0f4b0f24d5526546bee538c89837d6/decorator-5.1.1-py3-none-any.whl", hash = "sha256:b8c3f85900b9dc423225913c5aace94729fe1fa9763b38939a95226f02d37186", size = 9073 }, +] + +[[package]] +name = "defusedxml" +version = "0.7.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/0f/d5/c66da9b79e5bdb124974bfe172b4daf3c984ebd9c2a06e2b8a4dc7331c72/defusedxml-0.7.1.tar.gz", hash = "sha256:1bb3032db185915b62d7c6209c5a8792be6a32ab2fedacc84e01b52c51aa3e69", size = 75520 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/07/6c/aa3f2f849e01cb6a001cd8554a88d4c77c5c1a31c95bdf1cf9301e6d9ef4/defusedxml-0.7.1-py2.py3-none-any.whl", hash = "sha256:a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61", size = 25604 }, +] + +[[package]] +name = "exceptiongroup" +version = "1.2.2" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/09/35/2495c4ac46b980e4ca1f6ad6db102322ef3ad2410b79fdde159a4b0f3b92/exceptiongroup-1.2.2.tar.gz", hash = "sha256:47c2edf7c6738fafb49fd34290706d1a1a2f4d1c6df275526b62cbb4aa5393cc", size = 28883 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/02/cc/b7e31358aac6ed1ef2bb790a9746ac2c69bcb3c8588b41616914eb106eaf/exceptiongroup-1.2.2-py3-none-any.whl", hash = "sha256:3111b9d131c238bec2f8f516e123e14ba243563fb135d3fe885990585aa7795b", size = 16453 }, +] + +[[package]] +name = "executing" +version = "2.1.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/8c/e3/7d45f492c2c4a0e8e0fad57d081a7c8a0286cdd86372b070cca1ec0caa1e/executing-2.1.0.tar.gz", hash = "sha256:8ea27ddd260da8150fa5a708269c4a10e76161e2496ec3e587da9e3c0fe4b9ab", size = 977485 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/b5/fd/afcd0496feca3276f509df3dbd5dae726fcc756f1a08d9e25abe1733f962/executing-2.1.0-py2.py3-none-any.whl", hash = "sha256:8d63781349375b5ebccc3142f4b30350c0cd9c79f921cde38be2be4637e98eaf", size = 25805 }, +] + +[[package]] +name = "fastjsonschema" +version = "2.20.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/03/3f/3ad5e7be13b4b8b55f4477141885ab2364f65d5f6ad5f7a9daffd634d066/fastjsonschema-2.20.0.tar.gz", hash = "sha256:3d48fc5300ee96f5d116f10fe6f28d938e6008f59a6a025c2649475b87f76a23", size = 373056 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/6d/ca/086311cdfc017ec964b2436fe0c98c1f4efcb7e4c328956a22456e497655/fastjsonschema-2.20.0-py3-none-any.whl", hash = "sha256:5875f0b0fa7a0043a91e93a9b8f793bcbbba9691e7fd83dca95c28ba26d21f0a", size = 23543 }, +] + +[[package]] +name = "fqdn" +version = "1.5.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/30/3e/a80a8c077fd798951169626cde3e239adeba7dab75deb3555716415bd9b0/fqdn-1.5.1.tar.gz", hash = "sha256:105ed3677e767fb5ca086a0c1f4bb66ebc3c100be518f0e0d755d9eae164d89f", size = 6015 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/cf/58/8acf1b3e91c58313ce5cb67df61001fc9dcd21be4fadb76c1a2d540e09ed/fqdn-1.5.1-py3-none-any.whl", hash = "sha256:3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014", size = 9121 }, +] + +[[package]] +name = "h11" +version = "0.14.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/f5/38/3af3d3633a34a3316095b39c8e8fb4853a28a536e55d347bd8d8e9a14b03/h11-0.14.0.tar.gz", hash = "sha256:8f19fbbe99e72420ff35c00b27a34cb9937e902a8b810e2c88300c6f0a3b699d", size = 100418 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/95/04/ff642e65ad6b90db43e668d70ffb6736436c7ce41fcc549f4e9472234127/h11-0.14.0-py3-none-any.whl", hash = "sha256:e3fe4ac4b851c468cc8363d500db52c2ead036020723024a109d37346efaa761", size = 58259 }, +] + +[[package]] +name = "httpcore" +version = "1.0.5" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "certifi" }, + { name = "h11" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/17/b0/5e8b8674f8d203335a62fdfcfa0d11ebe09e23613c3391033cbba35f7926/httpcore-1.0.5.tar.gz", hash = "sha256:34a38e2f9291467ee3b44e89dd52615370e152954ba21721378a87b2960f7a61", size = 83234 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/78/d4/e5d7e4f2174f8a4d63c8897d79eb8fe2503f7ecc03282fee1fa2719c2704/httpcore-1.0.5-py3-none-any.whl", hash = "sha256:421f18bac248b25d310f3cacd198d55b8e6125c107797b609ff9b7a6ba7991b5", size = 77926 }, +] + +[[package]] +name = "httpx" +version = "0.27.2" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "anyio" }, + { name = "certifi" }, + { name = "httpcore" }, + { name = "idna" }, + { name = "sniffio" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/78/82/08f8c936781f67d9e6b9eeb8a0c8b4e406136ea4c3d1f89a5db71d42e0e6/httpx-0.27.2.tar.gz", hash = "sha256:f7c2be1d2f3c3c3160d441802406b206c2b76f5947b11115e6df10c6c65e66c2", size = 144189 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/56/95/9377bcb415797e44274b51d46e3249eba641711cf3348050f76ee7b15ffc/httpx-0.27.2-py3-none-any.whl", hash = "sha256:7bb2708e112d8fdd7829cd4243970f0c223274051cb35ee80c03301ee29a3df0", size = 76395 }, +] + +[[package]] +name = "idna" +version = "3.10" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/f1/70/7703c29685631f5a7590aa73f1f1d3fa9a380e654b86af429e0934a32f7d/idna-3.10.tar.gz", hash = "sha256:12f65c9b470abda6dc35cf8e63cc574b1c52b11df2c86030af0ac09b01b13ea9", size = 190490 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/76/c6/c88e154df9c4e1a2a66ccf0005a88dfb2650c1dffb6f5ce603dfbd452ce3/idna-3.10-py3-none-any.whl", hash = "sha256:946d195a0d259cbba61165e88e65941f16e9b36ea6ddb97f00452bae8b1287d3", size = 70442 }, +] + +[[package]] +name = "ipykernel" +version = "6.29.5" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "appnope", marker = "platform_system == 'Darwin'" }, + { name = "comm" }, + { name = "debugpy" }, + { name = "ipython" }, + { name = "jupyter-client" }, + { name = "jupyter-core" }, + { name = "matplotlib-inline" }, + { name = "nest-asyncio" }, + { name = "packaging" }, + { name = "psutil" }, + { name = "pyzmq" }, + { name = "tornado" }, + { name = "traitlets" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/e9/5c/67594cb0c7055dc50814b21731c22a601101ea3b1b50a9a1b090e11f5d0f/ipykernel-6.29.5.tar.gz", hash = "sha256:f093a22c4a40f8828f8e330a9c297cb93dcab13bd9678ded6de8e5cf81c56215", size = 163367 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/94/5c/368ae6c01c7628438358e6d337c19b05425727fbb221d2a3c4303c372f42/ipykernel-6.29.5-py3-none-any.whl", hash = "sha256:afdb66ba5aa354b09b91379bac28ae4afebbb30e8b39510c9690afb7a10421b5", size = 117173 }, +] + +[[package]] +name = "ipython" +version = "8.27.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "colorama", marker = "sys_platform == 'win32'" }, + { name = "decorator" }, + { name = "exceptiongroup", marker = "python_full_version < '3.11'" }, + { name = "jedi" }, + { name = "matplotlib-inline" }, + { name = "pexpect", marker = "sys_platform != 'emscripten' and sys_platform != 'win32'" }, + { name = "prompt-toolkit" }, + { name = "pygments" }, + { name = "stack-data" }, + { name = "traitlets" }, + { name = "typing-extensions", marker = "python_full_version < '3.12'" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/57/24/d4fabaca03c8804bf0b8d994c8ae3a20e57e9330d277fb43d83e558dec5e/ipython-8.27.0.tar.gz", hash = "sha256:0b99a2dc9f15fd68692e898e5568725c6d49c527d36a9fb5960ffbdeaa82ff7e", size = 5494984 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/a8/a2/6c725958e6f135d8e5de081e69841bb2c1d84b3fc259d02eb092b8fc203a/ipython-8.27.0-py3-none-any.whl", hash = "sha256:f68b3cb8bde357a5d7adc9598d57e22a45dfbea19eb6b98286fa3b288c9cd55c", size = 818986 }, +] + +[[package]] +name = "ipywidgets" +version = "8.1.5" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "comm" }, + { name = "ipython" }, + { name = "jupyterlab-widgets" }, + { name = "traitlets" }, + { name = "widgetsnbextension" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/c7/4c/dab2a281b07596a5fc220d49827fe6c794c66f1493d7a74f1df0640f2cc5/ipywidgets-8.1.5.tar.gz", hash = "sha256:870e43b1a35656a80c18c9503bbf2d16802db1cb487eec6fab27d683381dde17", size = 116723 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/22/2d/9c0b76f2f9cc0ebede1b9371b6f317243028ed60b90705863d493bae622e/ipywidgets-8.1.5-py3-none-any.whl", hash = "sha256:3290f526f87ae6e77655555baba4f36681c555b8bdbbff430b70e52c34c86245", size = 139767 }, +] + +[[package]] +name = "isoduration" +version = "20.11.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "arrow" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/7c/1a/3c8edc664e06e6bd06cce40c6b22da5f1429aa4224d0c590f3be21c91ead/isoduration-20.11.0.tar.gz", hash = "sha256:ac2f9015137935279eac671f94f89eb00584f940f5dc49462a0c4ee692ba1bd9", size = 11649 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/7b/55/e5326141505c5d5e34c5e0935d2908a74e4561eca44108fbfb9c13d2911a/isoduration-20.11.0-py3-none-any.whl", hash = "sha256:b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042", size = 11321 }, +] + +[[package]] +name = "jedi" +version = "0.19.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "parso" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/d6/99/99b493cec4bf43176b678de30f81ed003fd6a647a301b9c927280c600f0a/jedi-0.19.1.tar.gz", hash = "sha256:cf0496f3651bc65d7174ac1b7d043eff454892c708a87d1b683e57b569927ffd", size = 1227821 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/20/9f/bc63f0f0737ad7a60800bfd472a4836661adae21f9c2535f3957b1e54ceb/jedi-0.19.1-py2.py3-none-any.whl", hash = "sha256:e983c654fe5c02867aef4cdfce5a2fbb4a50adc0af145f70504238f18ef5e7e0", size = 1569361 }, +] + +[[package]] +name = "jinja2" +version = "3.1.4" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "markupsafe" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/ed/55/39036716d19cab0747a5020fc7e907f362fbf48c984b14e62127f7e68e5d/jinja2-3.1.4.tar.gz", hash = "sha256:4a3aee7acbbe7303aede8e9648d13b8bf88a429282aa6122a993f0ac800cb369", size = 240245 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/31/80/3a54838c3fb461f6fec263ebf3a3a41771bd05190238de3486aae8540c36/jinja2-3.1.4-py3-none-any.whl", hash = "sha256:bc5dd2abb727a5319567b7a813e6a2e7318c39f4f487cfe6c89c6f9c7d25197d", size = 133271 }, +] + +[[package]] +name = "json5" +version = "0.9.25" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/91/59/51b032d53212a51f17ebbcc01bd4217faab6d6c09ed0d856a987a5f42bbc/json5-0.9.25.tar.gz", hash = "sha256:548e41b9be043f9426776f05df8635a00fe06104ea51ed24b67f908856e151ae", size = 40332 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/8a/3c/4f8791ee53ab9eeb0b022205aa79387119a74cc9429582ce04098e6fc540/json5-0.9.25-py3-none-any.whl", hash = "sha256:34ed7d834b1341a86987ed52f3f76cd8ee184394906b6e22a1e0deb9ab294e8f", size = 30109 }, +] + +[[package]] +name = "jsonpointer" +version = "3.0.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/6a/0a/eebeb1fa92507ea94016a2a790b93c2ae41a7e18778f85471dc54475ed25/jsonpointer-3.0.0.tar.gz", hash = "sha256:2b2d729f2091522d61c3b31f82e11870f60b68f43fbc705cb76bf4b832af59ef", size = 9114 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/71/92/5e77f98553e9e75130c78900d000368476aed74276eb8ae8796f65f00918/jsonpointer-3.0.0-py2.py3-none-any.whl", hash = "sha256:13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942", size = 7595 }, +] + +[[package]] +name = "jsonschema" +version = "4.23.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "attrs" }, + { name = "jsonschema-specifications" }, + { name = "referencing" }, + { name = "rpds-py" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/38/2e/03362ee4034a4c917f697890ccd4aec0800ccf9ded7f511971c75451deec/jsonschema-4.23.0.tar.gz", hash = "sha256:d71497fef26351a33265337fa77ffeb82423f3ea21283cd9467bb03999266bc4", size = 325778 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/69/4a/4f9dbeb84e8850557c02365a0eee0649abe5eb1d84af92a25731c6c0f922/jsonschema-4.23.0-py3-none-any.whl", hash = "sha256:fbadb6f8b144a8f8cf9f0b89ba94501d143e50411a1278633f56a7acf7fd5566", size = 88462 }, +] + +[package.optional-dependencies] +format-nongpl = [ + { name = "fqdn" }, + { name = "idna" }, + { name = "isoduration" }, + { name = "jsonpointer" }, + { name = "rfc3339-validator" }, + { name = "rfc3986-validator" }, + { name = "uri-template" }, + { name = "webcolors" }, +] + +[[package]] +name = "jsonschema-specifications" +version = "2023.12.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "referencing" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/f8/b9/cc0cc592e7c195fb8a650c1d5990b10175cf13b4c97465c72ec841de9e4b/jsonschema_specifications-2023.12.1.tar.gz", hash = "sha256:48a76787b3e70f5ed53f1160d2b81f586e4ca6d1548c5de7085d1682674764cc", size = 13983 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/ee/07/44bd408781594c4d0a027666ef27fab1e441b109dc3b76b4f836f8fd04fe/jsonschema_specifications-2023.12.1-py3-none-any.whl", hash = "sha256:87e4fdf3a94858b8a2ba2778d9ba57d8a9cafca7c7489c46ba0d30a8bc6a9c3c", size = 18482 }, +] + +[[package]] +name = "jupyter" +version = "1.1.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "ipykernel" }, + { name = "ipywidgets" }, + { name = "jupyter-console" }, + { name = "jupyterlab" }, + { name = "nbconvert" }, + { name = "notebook" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/58/f3/af28ea964ab8bc1e472dba2e82627d36d470c51f5cd38c37502eeffaa25e/jupyter-1.1.1.tar.gz", hash = "sha256:d55467bceabdea49d7e3624af7e33d59c37fff53ed3a350e1ac957bed731de7a", size = 5714959 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/38/64/285f20a31679bf547b75602702f7800e74dbabae36ef324f716c02804753/jupyter-1.1.1-py2.py3-none-any.whl", hash = "sha256:7a59533c22af65439b24bbe60373a4e95af8f16ac65a6c00820ad378e3f7cc83", size = 2657 }, +] + +[[package]] +name = "jupyter-client" +version = "8.6.3" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "jupyter-core" }, + { name = "python-dateutil" }, + { name = "pyzmq" }, + { name = "tornado" }, + { name = "traitlets" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/71/22/bf9f12fdaeae18019a468b68952a60fe6dbab5d67cd2a103cac7659b41ca/jupyter_client-8.6.3.tar.gz", hash = "sha256:35b3a0947c4a6e9d589eb97d7d4cd5e90f910ee73101611f01283732bd6d9419", size = 342019 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/11/85/b0394e0b6fcccd2c1eeefc230978a6f8cb0c5df1e4cd3e7625735a0d7d1e/jupyter_client-8.6.3-py3-none-any.whl", hash = "sha256:e8a19cc986cc45905ac3362915f410f3af85424b4c0905e94fa5f2cb08e8f23f", size = 106105 }, +] + +[[package]] +name = "jupyter-console" +version = "6.6.3" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "ipykernel" }, + { name = "ipython" }, + { name = "jupyter-client" }, + { name = "jupyter-core" }, + { name = "prompt-toolkit" }, + { name = "pygments" }, + { name = "pyzmq" }, + { name = "traitlets" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/bd/2d/e2fd31e2fc41c14e2bcb6c976ab732597e907523f6b2420305f9fc7fdbdb/jupyter_console-6.6.3.tar.gz", hash = "sha256:566a4bf31c87adbfadf22cdf846e3069b59a71ed5da71d6ba4d8aaad14a53539", size = 34363 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/ca/77/71d78d58f15c22db16328a476426f7ac4a60d3a5a7ba3b9627ee2f7903d4/jupyter_console-6.6.3-py3-none-any.whl", hash = "sha256:309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485", size = 24510 }, +] + +[[package]] +name = "jupyter-core" +version = "5.7.2" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "platformdirs" }, + { name = "pywin32", marker = "platform_python_implementation != 'PyPy' and sys_platform == 'win32'" }, + { name = "traitlets" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/00/11/b56381fa6c3f4cc5d2cf54a7dbf98ad9aa0b339ef7a601d6053538b079a7/jupyter_core-5.7.2.tar.gz", hash = "sha256:aa5f8d32bbf6b431ac830496da7392035d6f61b4f54872f15c4bd2a9c3f536d9", size = 87629 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/c9/fb/108ecd1fe961941959ad0ee4e12ee7b8b1477247f30b1fdfd83ceaf017f0/jupyter_core-5.7.2-py3-none-any.whl", hash = "sha256:4f7315d2f6b4bcf2e3e7cb6e46772eba760ae459cd1f59d29eb57b0a01bd7409", size = 28965 }, +] + +[[package]] +name = "jupyter-events" +version = "0.10.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "jsonschema", extra = ["format-nongpl"] }, + { name = "python-json-logger" }, + { name = "pyyaml" }, + { name = "referencing" }, + { name = "rfc3339-validator" }, + { name = "rfc3986-validator" }, + { name = "traitlets" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/8d/53/7537a1aa558229bb0b1b178d814c9d68a9c697d3aecb808a1cb2646acf1f/jupyter_events-0.10.0.tar.gz", hash = "sha256:670b8229d3cc882ec782144ed22e0d29e1c2d639263f92ca8383e66682845e22", size = 61516 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/a5/94/059180ea70a9a326e1815176b2370da56376da347a796f8c4f0b830208ef/jupyter_events-0.10.0-py3-none-any.whl", hash = "sha256:4b72130875e59d57716d327ea70d3ebc3af1944d3717e5a498b8a06c6c159960", size = 18777 }, +] + +[[package]] +name = "jupyter-lsp" +version = "2.2.5" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "jupyter-server" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/85/b4/3200b0b09c12bc3b72d943d923323c398eff382d1dcc7c0dbc8b74630e40/jupyter-lsp-2.2.5.tar.gz", hash = "sha256:793147a05ad446f809fd53ef1cd19a9f5256fd0a2d6b7ce943a982cb4f545001", size = 48741 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/07/e0/7bd7cff65594fd9936e2f9385701e44574fc7d721331ff676ce440b14100/jupyter_lsp-2.2.5-py3-none-any.whl", hash = "sha256:45fbddbd505f3fbfb0b6cb2f1bc5e15e83ab7c79cd6e89416b248cb3c00c11da", size = 69146 }, +] + +[[package]] +name = "jupyter-server" +version = "2.14.2" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "anyio" }, + { name = "argon2-cffi" }, + { name = "jinja2" }, + { name = "jupyter-client" }, + { name = "jupyter-core" }, + { name = "jupyter-events" }, + { name = "jupyter-server-terminals" }, + { name = "nbconvert" }, + { name = "nbformat" }, + { name = "overrides" }, + { name = "packaging" }, + { name = "prometheus-client" }, + { name = "pywinpty", marker = "os_name == 'nt'" }, + { name = "pyzmq" }, + { name = "send2trash" }, + { name = "terminado" }, + { name = "tornado" }, + { name = "traitlets" }, + { name = "websocket-client" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/0c/34/88b47749c7fa9358e10eac356c4b97d94a91a67d5c935a73f69bc4a31118/jupyter_server-2.14.2.tar.gz", hash = "sha256:66095021aa9638ced276c248b1d81862e4c50f292d575920bbe960de1c56b12b", size = 719933 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/57/e1/085edea6187a127ca8ea053eb01f4e1792d778b4d192c74d32eb6730fed6/jupyter_server-2.14.2-py3-none-any.whl", hash = "sha256:47ff506127c2f7851a17bf4713434208fc490955d0e8632e95014a9a9afbeefd", size = 383556 }, +] + +[[package]] +name = "jupyter-server-terminals" +version = "0.5.3" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "pywinpty", marker = "os_name == 'nt'" }, + { name = "terminado" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/fc/d5/562469734f476159e99a55426d697cbf8e7eb5efe89fb0e0b4f83a3d3459/jupyter_server_terminals-0.5.3.tar.gz", hash = "sha256:5ae0295167220e9ace0edcfdb212afd2b01ee8d179fe6f23c899590e9b8a5269", size = 31430 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/07/2d/2b32cdbe8d2a602f697a649798554e4f072115438e92249624e532e8aca6/jupyter_server_terminals-0.5.3-py3-none-any.whl", hash = "sha256:41ee0d7dc0ebf2809c668e0fc726dfaf258fcd3e769568996ca731b6194ae9aa", size = 13656 }, +] + +[[package]] +name = "jupyterlab" +version = "4.2.5" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "async-lru" }, + { name = "httpx" }, + { name = "ipykernel" }, + { name = "jinja2" }, + { name = "jupyter-core" }, + { name = "jupyter-lsp" }, + { name = "jupyter-server" }, + { name = "jupyterlab-server" }, + { name = "notebook-shim" }, + { name = "packaging" }, + { name = "setuptools" }, + { name = "tomli", marker = "python_full_version < '3.11'" }, + { name = "tornado" }, + { name = "traitlets" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/4a/78/ba006df6edaa561fe40be26c35e9da3f9316f071167cd7cc1a1a25bd2664/jupyterlab-4.2.5.tar.gz", hash = "sha256:ae7f3a1b8cb88b4f55009ce79fa7c06f99d70cd63601ee4aa91815d054f46f75", size = 21508698 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/fd/3f/24a0f0ce60959cfd9756a3291cd3a5581e51cbd6f7b4aa121f5bba5320e3/jupyterlab-4.2.5-py3-none-any.whl", hash = "sha256:73b6e0775d41a9fee7ee756c80f58a6bed4040869ccc21411dc559818874d321", size = 11641981 }, +] + +[[package]] +name = "jupyterlab-pygments" +version = "0.3.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/90/51/9187be60d989df97f5f0aba133fa54e7300f17616e065d1ada7d7646b6d6/jupyterlab_pygments-0.3.0.tar.gz", hash = "sha256:721aca4d9029252b11cfa9d185e5b5af4d54772bb8072f9b7036f4170054d35d", size = 512900 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/b1/dd/ead9d8ea85bf202d90cc513b533f9c363121c7792674f78e0d8a854b63b4/jupyterlab_pygments-0.3.0-py3-none-any.whl", hash = "sha256:841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780", size = 15884 }, +] + +[[package]] +name = "jupyterlab-server" +version = "2.27.3" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "babel" }, + { name = "jinja2" }, + { name = "json5" }, + { name = "jsonschema" }, + { name = "jupyter-server" }, + { name = "packaging" }, + { name = "requests" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/0a/c9/a883ce65eb27905ce77ace410d83587c82ea64dc85a48d1f7ed52bcfa68d/jupyterlab_server-2.27.3.tar.gz", hash = "sha256:eb36caca59e74471988f0ae25c77945610b887f777255aa21f8065def9e51ed4", size = 76173 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/54/09/2032e7d15c544a0e3cd831c51d77a8ca57f7555b2e1b2922142eddb02a84/jupyterlab_server-2.27.3-py3-none-any.whl", hash = "sha256:e697488f66c3db49df675158a77b3b017520d772c6e1548c7d9bcc5df7944ee4", size = 59700 }, +] + +[[package]] +name = "jupyterlab-widgets" +version = "3.0.13" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/59/73/fa26bbb747a9ea4fca6b01453aa22990d52ab62dd61384f1ac0dc9d4e7ba/jupyterlab_widgets-3.0.13.tar.gz", hash = "sha256:a2966d385328c1942b683a8cd96b89b8dd82c8b8f81dda902bb2bc06d46f5bed", size = 203556 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/a9/93/858e87edc634d628e5d752ba944c2833133a28fa87bb093e6832ced36a3e/jupyterlab_widgets-3.0.13-py3-none-any.whl", hash = "sha256:e3cda2c233ce144192f1e29914ad522b2f4c40e77214b0cc97377ca3d323db54", size = 214392 }, +] + +[[package]] +name = "markupsafe" +version = "2.1.5" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/87/5b/aae44c6655f3801e81aa3eef09dbbf012431987ba564d7231722f68df02d/MarkupSafe-2.1.5.tar.gz", hash = "sha256:d283d37a890ba4c1ae73ffadf8046435c76e7bc2247bbb63c00bd1a709c6544b", size = 19384 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/e4/54/ad5eb37bf9d51800010a74e4665425831a9db4e7c4e0fde4352e391e808e/MarkupSafe-2.1.5-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:a17a92de5231666cfbe003f0e4b9b3a7ae3afb1ec2845aadc2bacc93ff85febc", size = 18206 }, + { url = "https://files.pythonhosted.org/packages/6a/4a/a4d49415e600bacae038c67f9fecc1d5433b9d3c71a4de6f33537b89654c/MarkupSafe-2.1.5-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:72b6be590cc35924b02c78ef34b467da4ba07e4e0f0454a2c5907f473fc50ce5", size = 14079 }, + { url = "https://files.pythonhosted.org/packages/0a/7b/85681ae3c33c385b10ac0f8dd025c30af83c78cec1c37a6aa3b55e67f5ec/MarkupSafe-2.1.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e61659ba32cf2cf1481e575d0462554625196a1f2fc06a1c777d3f48e8865d46", size = 26620 }, + { url = "https://files.pythonhosted.org/packages/7c/52/2b1b570f6b8b803cef5ac28fdf78c0da318916c7d2fe9402a84d591b394c/MarkupSafe-2.1.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2174c595a0d73a3080ca3257b40096db99799265e1c27cc5a610743acd86d62f", size = 25818 }, + { url = "https://files.pythonhosted.org/packages/29/fe/a36ba8c7ca55621620b2d7c585313efd10729e63ef81e4e61f52330da781/MarkupSafe-2.1.5-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ae2ad8ae6ebee9d2d94b17fb62763125f3f374c25618198f40cbb8b525411900", size = 25493 }, + { url = "https://files.pythonhosted.org/packages/60/ae/9c60231cdfda003434e8bd27282b1f4e197ad5a710c14bee8bea8a9ca4f0/MarkupSafe-2.1.5-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:075202fa5b72c86ad32dc7d0b56024ebdbcf2048c0ba09f1cde31bfdd57bcfff", size = 30630 }, + { url = "https://files.pythonhosted.org/packages/65/dc/1510be4d179869f5dafe071aecb3f1f41b45d37c02329dfba01ff59e5ac5/MarkupSafe-2.1.5-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:598e3276b64aff0e7b3451b72e94fa3c238d452e7ddcd893c3ab324717456bad", size = 29745 }, + { url = "https://files.pythonhosted.org/packages/30/39/8d845dd7d0b0613d86e0ef89549bfb5f61ed781f59af45fc96496e897f3a/MarkupSafe-2.1.5-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:fce659a462a1be54d2ffcacea5e3ba2d74daa74f30f5f143fe0c58636e355fdd", size = 30021 }, + { url = "https://files.pythonhosted.org/packages/c7/5c/356a6f62e4f3c5fbf2602b4771376af22a3b16efa74eb8716fb4e328e01e/MarkupSafe-2.1.5-cp310-cp310-win32.whl", hash = "sha256:d9fad5155d72433c921b782e58892377c44bd6252b5af2f67f16b194987338a4", size = 16659 }, + { url = "https://files.pythonhosted.org/packages/69/48/acbf292615c65f0604a0c6fc402ce6d8c991276e16c80c46a8f758fbd30c/MarkupSafe-2.1.5-cp310-cp310-win_amd64.whl", hash = "sha256:bf50cd79a75d181c9181df03572cdce0fbb75cc353bc350712073108cba98de5", size = 17213 }, + { url = "https://files.pythonhosted.org/packages/11/e7/291e55127bb2ae67c64d66cef01432b5933859dfb7d6949daa721b89d0b3/MarkupSafe-2.1.5-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:629ddd2ca402ae6dbedfceeba9c46d5f7b2a61d9749597d4307f943ef198fc1f", size = 18219 }, + { url = "https://files.pythonhosted.org/packages/6b/cb/aed7a284c00dfa7c0682d14df85ad4955a350a21d2e3b06d8240497359bf/MarkupSafe-2.1.5-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:5b7b716f97b52c5a14bffdf688f971b2d5ef4029127f1ad7a513973cfd818df2", size = 14098 }, + { url = "https://files.pythonhosted.org/packages/1c/cf/35fe557e53709e93feb65575c93927942087e9b97213eabc3fe9d5b25a55/MarkupSafe-2.1.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6ec585f69cec0aa07d945b20805be741395e28ac1627333b1c5b0105962ffced", size = 29014 }, + { url = "https://files.pythonhosted.org/packages/97/18/c30da5e7a0e7f4603abfc6780574131221d9148f323752c2755d48abad30/MarkupSafe-2.1.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b91c037585eba9095565a3556f611e3cbfaa42ca1e865f7b8015fe5c7336d5a5", size = 28220 }, + { url = "https://files.pythonhosted.org/packages/0c/40/2e73e7d532d030b1e41180807a80d564eda53babaf04d65e15c1cf897e40/MarkupSafe-2.1.5-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7502934a33b54030eaf1194c21c692a534196063db72176b0c4028e140f8f32c", size = 27756 }, + { url = "https://files.pythonhosted.org/packages/18/46/5dca760547e8c59c5311b332f70605d24c99d1303dd9a6e1fc3ed0d73561/MarkupSafe-2.1.5-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:0e397ac966fdf721b2c528cf028494e86172b4feba51d65f81ffd65c63798f3f", size = 33988 }, + { url = "https://files.pythonhosted.org/packages/6d/c5/27febe918ac36397919cd4a67d5579cbbfa8da027fa1238af6285bb368ea/MarkupSafe-2.1.5-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:c061bb86a71b42465156a3ee7bd58c8c2ceacdbeb95d05a99893e08b8467359a", size = 32718 }, + { url = "https://files.pythonhosted.org/packages/f8/81/56e567126a2c2bc2684d6391332e357589a96a76cb9f8e5052d85cb0ead8/MarkupSafe-2.1.5-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:3a57fdd7ce31c7ff06cdfbf31dafa96cc533c21e443d57f5b1ecc6cdc668ec7f", size = 33317 }, + { url = "https://files.pythonhosted.org/packages/00/0b/23f4b2470accb53285c613a3ab9ec19dc944eaf53592cb6d9e2af8aa24cc/MarkupSafe-2.1.5-cp311-cp311-win32.whl", hash = "sha256:397081c1a0bfb5124355710fe79478cdbeb39626492b15d399526ae53422b906", size = 16670 }, + { url = "https://files.pythonhosted.org/packages/b7/a2/c78a06a9ec6d04b3445a949615c4c7ed86a0b2eb68e44e7541b9d57067cc/MarkupSafe-2.1.5-cp311-cp311-win_amd64.whl", hash = "sha256:2b7c57a4dfc4f16f7142221afe5ba4e093e09e728ca65c51f5620c9aaeb9a617", size = 17224 }, + { url = "https://files.pythonhosted.org/packages/53/bd/583bf3e4c8d6a321938c13f49d44024dbe5ed63e0a7ba127e454a66da974/MarkupSafe-2.1.5-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:8dec4936e9c3100156f8a2dc89c4b88d5c435175ff03413b443469c7c8c5f4d1", size = 18215 }, + { url = "https://files.pythonhosted.org/packages/48/d6/e7cd795fc710292c3af3a06d80868ce4b02bfbbf370b7cee11d282815a2a/MarkupSafe-2.1.5-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:3c6b973f22eb18a789b1460b4b91bf04ae3f0c4234a0a6aa6b0a92f6f7b951d4", size = 14069 }, + { url = "https://files.pythonhosted.org/packages/51/b5/5d8ec796e2a08fc814a2c7d2584b55f889a55cf17dd1a90f2beb70744e5c/MarkupSafe-2.1.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ac07bad82163452a6884fe8fa0963fb98c2346ba78d779ec06bd7a6262132aee", size = 29452 }, + { url = "https://files.pythonhosted.org/packages/0a/0d/2454f072fae3b5a137c119abf15465d1771319dfe9e4acbb31722a0fff91/MarkupSafe-2.1.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f5dfb42c4604dddc8e4305050aa6deb084540643ed5804d7455b5df8fe16f5e5", size = 28462 }, + { url = "https://files.pythonhosted.org/packages/2d/75/fd6cb2e68780f72d47e6671840ca517bda5ef663d30ada7616b0462ad1e3/MarkupSafe-2.1.5-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ea3d8a3d18833cf4304cd2fc9cbb1efe188ca9b5efef2bdac7adc20594a0e46b", size = 27869 }, + { url = "https://files.pythonhosted.org/packages/b0/81/147c477391c2750e8fc7705829f7351cf1cd3be64406edcf900dc633feb2/MarkupSafe-2.1.5-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:d050b3361367a06d752db6ead6e7edeb0009be66bc3bae0ee9d97fb326badc2a", size = 33906 }, + { url = "https://files.pythonhosted.org/packages/8b/ff/9a52b71839d7a256b563e85d11050e307121000dcebc97df120176b3ad93/MarkupSafe-2.1.5-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:bec0a414d016ac1a18862a519e54b2fd0fc8bbfd6890376898a6c0891dd82e9f", size = 32296 }, + { url = "https://files.pythonhosted.org/packages/88/07/2dc76aa51b481eb96a4c3198894f38b480490e834479611a4053fbf08623/MarkupSafe-2.1.5-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:58c98fee265677f63a4385256a6d7683ab1832f3ddd1e66fe948d5880c21a169", size = 33038 }, + { url = "https://files.pythonhosted.org/packages/96/0c/620c1fb3661858c0e37eb3cbffd8c6f732a67cd97296f725789679801b31/MarkupSafe-2.1.5-cp312-cp312-win32.whl", hash = "sha256:8590b4ae07a35970728874632fed7bd57b26b0102df2d2b233b6d9d82f6c62ad", size = 16572 }, + { url = "https://files.pythonhosted.org/packages/3f/14/c3554d512d5f9100a95e737502f4a2323a1959f6d0d01e0d0997b35f7b10/MarkupSafe-2.1.5-cp312-cp312-win_amd64.whl", hash = "sha256:823b65d8706e32ad2df51ed89496147a42a2a6e01c13cfb6ffb8b1e92bc910bb", size = 17127 }, +] + +[[package]] +name = "matplotlib-inline" +version = "0.1.7" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "traitlets" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/99/5b/a36a337438a14116b16480db471ad061c36c3694df7c2084a0da7ba538b7/matplotlib_inline-0.1.7.tar.gz", hash = "sha256:8423b23ec666be3d16e16b60bdd8ac4e86e840ebd1dd11a30b9f117f2fa0ab90", size = 8159 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/8f/8e/9ad090d3553c280a8060fbf6e24dc1c0c29704ee7d1c372f0c174aa59285/matplotlib_inline-0.1.7-py3-none-any.whl", hash = "sha256:df192d39a4ff8f21b1895d72e6a13f5fcc5099f00fa84384e0ea28c2cc0653ca", size = 9899 }, +] + +[[package]] +name = "mistune" +version = "3.0.2" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/ef/c8/f0173fe3bf85fd891aee2e7bcd8207dfe26c2c683d727c5a6cc3aec7b628/mistune-3.0.2.tar.gz", hash = "sha256:fc7f93ded930c92394ef2cb6f04a8aabab4117a91449e72dcc8dfa646a508be8", size = 90840 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/f0/74/c95adcdf032956d9ef6c89a9b8a5152bf73915f8c633f3e3d88d06bd699c/mistune-3.0.2-py3-none-any.whl", hash = "sha256:71481854c30fdbc938963d3605b72501f5c10a9320ecd412c121c163a1c7d205", size = 47958 }, +] + +[[package]] +name = "nbclient" +version = "0.10.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "jupyter-client" }, + { name = "jupyter-core" }, + { name = "nbformat" }, + { name = "traitlets" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/e2/d2/39bc36604f24bccd44d374ac34769bc58c53a1da5acd1e83f0165aa4940e/nbclient-0.10.0.tar.gz", hash = "sha256:4b3f1b7dba531e498449c4db4f53da339c91d449dc11e9af3a43b4eb5c5abb09", size = 62246 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/66/e8/00517a23d3eeaed0513e718fbc94aab26eaa1758f5690fc8578839791c79/nbclient-0.10.0-py3-none-any.whl", hash = "sha256:f13e3529332a1f1f81d82a53210322476a168bb7090a0289c795fe9cc11c9d3f", size = 25318 }, +] + +[[package]] +name = "nbconvert" +version = "7.16.4" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "beautifulsoup4" }, + { name = "bleach" }, + { name = "defusedxml" }, + { name = "jinja2" }, + { name = "jupyter-core" }, + { name = "jupyterlab-pygments" }, + { name = "markupsafe" }, + { name = "mistune" }, + { name = "nbclient" }, + { name = "nbformat" }, + { name = "packaging" }, + { name = "pandocfilters" }, + { name = "pygments" }, + { name = "tinycss2" }, + { name = "traitlets" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/af/e8/ba521a033b21132008e520c28ceb818f9f092da5f0261e94e509401b29f9/nbconvert-7.16.4.tar.gz", hash = "sha256:86ca91ba266b0a448dc96fa6c5b9d98affabde2867b363258703536807f9f7f4", size = 854422 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/b8/bb/bb5b6a515d1584aa2fd89965b11db6632e4bdc69495a52374bcc36e56cfa/nbconvert-7.16.4-py3-none-any.whl", hash = "sha256:05873c620fe520b6322bf8a5ad562692343fe3452abda5765c7a34b7d1aa3eb3", size = 257388 }, +] + +[[package]] +name = "nbformat" +version = "5.10.4" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "fastjsonschema" }, + { name = "jsonschema" }, + { name = "jupyter-core" }, + { name = "traitlets" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/6d/fd/91545e604bc3dad7dca9ed03284086039b294c6b3d75c0d2fa45f9e9caf3/nbformat-5.10.4.tar.gz", hash = "sha256:322168b14f937a5d11362988ecac2a4952d3d8e3a2cbeb2319584631226d5b3a", size = 142749 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/a9/82/0340caa499416c78e5d8f5f05947ae4bc3cba53c9f038ab6e9ed964e22f1/nbformat-5.10.4-py3-none-any.whl", hash = "sha256:3b48d6c8fbca4b299bf3982ea7db1af21580e4fec269ad087b9e81588891200b", size = 78454 }, +] + +[[package]] +name = "nest-asyncio" +version = "1.6.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/83/f8/51569ac65d696c8ecbee95938f89d4abf00f47d58d48f6fbabfe8f0baefe/nest_asyncio-1.6.0.tar.gz", hash = "sha256:6f172d5449aca15afd6c646851f4e31e02c598d553a667e38cafa997cfec55fe", size = 7418 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/a0/c4/c2971a3ba4c6103a3d10c4b0f24f461ddc027f0f09763220cf35ca1401b3/nest_asyncio-1.6.0-py3-none-any.whl", hash = "sha256:87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c", size = 5195 }, +] + +[[package]] +name = "notebook" +version = "7.2.2" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "jupyter-server" }, + { name = "jupyterlab" }, + { name = "jupyterlab-server" }, + { name = "notebook-shim" }, + { name = "tornado" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/0f/33/30b83c1c84e368087059bde1269549612584924db156bff53654e165a498/notebook-7.2.2.tar.gz", hash = "sha256:2ef07d4220421623ad3fe88118d687bc0450055570cdd160814a59cf3a1c516e", size = 4948876 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/46/77/53732fbf48196af9e51c2a61833471021c1d77d335d57b96ee3588c0c53d/notebook-7.2.2-py3-none-any.whl", hash = "sha256:c89264081f671bc02eec0ed470a627ed791b9156cad9285226b31611d3e9fe1c", size = 5037123 }, +] + +[[package]] +name = "notebook-shim" +version = "0.2.4" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "jupyter-server" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/54/d2/92fa3243712b9a3e8bafaf60aac366da1cada3639ca767ff4b5b3654ec28/notebook_shim-0.2.4.tar.gz", hash = "sha256:b4b2cfa1b65d98307ca24361f5b30fe785b53c3fd07b7a47e89acb5e6ac638cb", size = 13167 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/f9/33/bd5b9137445ea4b680023eb0469b2bb969d61303dedb2aac6560ff3d14a1/notebook_shim-0.2.4-py3-none-any.whl", hash = "sha256:411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef", size = 13307 }, +] + +[[package]] +name = "overrides" +version = "7.7.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/36/86/b585f53236dec60aba864e050778b25045f857e17f6e5ea0ae95fe80edd2/overrides-7.7.0.tar.gz", hash = "sha256:55158fa3d93b98cc75299b1e67078ad9003ca27945c76162c1c0766d6f91820a", size = 22812 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/2c/ab/fc8290c6a4c722e5514d80f62b2dc4c4df1a68a41d1364e625c35990fcf3/overrides-7.7.0-py3-none-any.whl", hash = "sha256:c7ed9d062f78b8e4c1a7b70bd8796b35ead4d9f510227ef9c5dc7626c60d7e49", size = 17832 }, +] + +[[package]] +name = "packaging" +version = "24.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/51/65/50db4dda066951078f0a96cf12f4b9ada6e4b811516bf0262c0f4f7064d4/packaging-24.1.tar.gz", hash = "sha256:026ed72c8ed3fcce5bf8950572258698927fd1dbda10a5e981cdf0ac37f4f002", size = 148788 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/08/aa/cc0199a5f0ad350994d660967a8efb233fe0416e4639146c089643407ce6/packaging-24.1-py3-none-any.whl", hash = "sha256:5b8f2217dbdbd2f7f384c41c628544e6d52f2d0f53c6d0c3ea61aa5d1d7ff124", size = 53985 }, +] + +[[package]] +name = "pandocfilters" +version = "1.5.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/70/6f/3dd4940bbe001c06a65f88e36bad298bc7a0de5036115639926b0c5c0458/pandocfilters-1.5.1.tar.gz", hash = "sha256:002b4a555ee4ebc03f8b66307e287fa492e4a77b4ea14d3f934328297bb4939e", size = 8454 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/ef/af/4fbc8cab944db5d21b7e2a5b8e9211a03a79852b1157e2c102fcc61ac440/pandocfilters-1.5.1-py2.py3-none-any.whl", hash = "sha256:93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc", size = 8663 }, +] + +[[package]] +name = "parso" +version = "0.8.4" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/66/94/68e2e17afaa9169cf6412ab0f28623903be73d1b32e208d9e8e541bb086d/parso-0.8.4.tar.gz", hash = "sha256:eb3a7b58240fb99099a345571deecc0f9540ea5f4dd2fe14c2a99d6b281ab92d", size = 400609 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/c6/ac/dac4a63f978e4dcb3c6d3a78c4d8e0192a113d288502a1216950c41b1027/parso-0.8.4-py2.py3-none-any.whl", hash = "sha256:a418670a20291dacd2dddc80c377c5c3791378ee1e8d12bffc35420643d43f18", size = 103650 }, +] + +[[package]] +name = "pexpect" +version = "4.9.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "ptyprocess" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/42/92/cc564bf6381ff43ce1f4d06852fc19a2f11d180f23dc32d9588bee2f149d/pexpect-4.9.0.tar.gz", hash = "sha256:ee7d41123f3c9911050ea2c2dac107568dc43b2d3b0c7557a33212c398ead30f", size = 166450 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/9e/c3/059298687310d527a58bb01f3b1965787ee3b40dce76752eda8b44e9a2c5/pexpect-4.9.0-py2.py3-none-any.whl", hash = "sha256:7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523", size = 63772 }, +] + +[[package]] +name = "platformdirs" +version = "4.3.6" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/13/fc/128cc9cb8f03208bdbf93d3aa862e16d376844a14f9a0ce5cf4507372de4/platformdirs-4.3.6.tar.gz", hash = "sha256:357fb2acbc885b0419afd3ce3ed34564c13c9b95c89360cd9563f73aa5e2b907", size = 21302 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/3c/a6/bc1012356d8ece4d66dd75c4b9fc6c1f6650ddd5991e421177d9f8f671be/platformdirs-4.3.6-py3-none-any.whl", hash = "sha256:73e575e1408ab8103900836b97580d5307456908a03e92031bab39e4554cc3fb", size = 18439 }, +] + +[[package]] +name = "prometheus-client" +version = "0.21.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/e1/54/a369868ed7a7f1ea5163030f4fc07d85d22d7a1d270560dab675188fb612/prometheus_client-0.21.0.tar.gz", hash = "sha256:96c83c606b71ff2b0a433c98889d275f51ffec6c5e267de37c7a2b5c9aa9233e", size = 78634 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/84/2d/46ed6436849c2c88228c3111865f44311cff784b4aabcdef4ea2545dbc3d/prometheus_client-0.21.0-py3-none-any.whl", hash = "sha256:4fa6b4dd0ac16d58bb587c04b1caae65b8c5043e85f778f42f5f632f6af2e166", size = 54686 }, +] + +[[package]] +name = "prompt-toolkit" +version = "3.0.48" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "wcwidth" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/2d/4f/feb5e137aff82f7c7f3248267b97451da3644f6cdc218edfe549fb354127/prompt_toolkit-3.0.48.tar.gz", hash = "sha256:d6623ab0477a80df74e646bdbc93621143f5caf104206aa29294d53de1a03d90", size = 424684 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/a9/6a/fd08d94654f7e67c52ca30523a178b3f8ccc4237fce4be90d39c938a831a/prompt_toolkit-3.0.48-py3-none-any.whl", hash = "sha256:f49a827f90062e411f1ce1f854f2aedb3c23353244f8108b89283587397ac10e", size = 386595 }, +] + +[[package]] +name = "psutil" +version = "6.0.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/18/c7/8c6872f7372eb6a6b2e4708b88419fb46b857f7a2e1892966b851cc79fc9/psutil-6.0.0.tar.gz", hash = "sha256:8faae4f310b6d969fa26ca0545338b21f73c6b15db7c4a8d934a5482faa818f2", size = 508067 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/c5/66/78c9c3020f573c58101dc43a44f6855d01bbbd747e24da2f0c4491200ea3/psutil-6.0.0-cp27-none-win32.whl", hash = "sha256:02b69001f44cc73c1c5279d02b30a817e339ceb258ad75997325e0e6169d8b35", size = 249766 }, + { url = "https://files.pythonhosted.org/packages/e1/3f/2403aa9558bea4d3854b0e5e567bc3dd8e9fbc1fc4453c0aa9aafeb75467/psutil-6.0.0-cp27-none-win_amd64.whl", hash = "sha256:21f1fb635deccd510f69f485b87433460a603919b45e2a324ad65b0cc74f8fb1", size = 253024 }, + { url = "https://files.pythonhosted.org/packages/0b/37/f8da2fbd29690b3557cca414c1949f92162981920699cd62095a984983bf/psutil-6.0.0-cp36-abi3-macosx_10_9_x86_64.whl", hash = "sha256:c588a7e9b1173b6e866756dde596fd4cad94f9399daf99ad8c3258b3cb2b47a0", size = 250961 }, + { url = "https://files.pythonhosted.org/packages/35/56/72f86175e81c656a01c4401cd3b1c923f891b31fbcebe98985894176d7c9/psutil-6.0.0-cp36-abi3-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6ed2440ada7ef7d0d608f20ad89a04ec47d2d3ab7190896cd62ca5fc4fe08bf0", size = 287478 }, + { url = "https://files.pythonhosted.org/packages/19/74/f59e7e0d392bc1070e9a70e2f9190d652487ac115bb16e2eff6b22ad1d24/psutil-6.0.0-cp36-abi3-manylinux_2_12_x86_64.manylinux2010_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5fd9a97c8e94059b0ef54a7d4baf13b405011176c3b6ff257c247cae0d560ecd", size = 290455 }, + { url = "https://files.pythonhosted.org/packages/cd/5f/60038e277ff0a9cc8f0c9ea3d0c5eb6ee1d2470ea3f9389d776432888e47/psutil-6.0.0-cp36-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e2e8d0054fc88153ca0544f5c4d554d42e33df2e009c4ff42284ac9ebdef4132", size = 292046 }, + { url = "https://files.pythonhosted.org/packages/8b/20/2ff69ad9c35c3df1858ac4e094f20bd2374d33c8643cf41da8fd7cdcb78b/psutil-6.0.0-cp37-abi3-win32.whl", hash = "sha256:a495580d6bae27291324fe60cea0b5a7c23fa36a7cd35035a16d93bdcf076b9d", size = 253560 }, + { url = "https://files.pythonhosted.org/packages/73/44/561092313ae925f3acfaace6f9ddc4f6a9c748704317bad9c8c8f8a36a79/psutil-6.0.0-cp37-abi3-win_amd64.whl", hash = "sha256:33ea5e1c975250a720b3a6609c490db40dae5d83a4eb315170c4fe0d8b1f34b3", size = 257399 }, + { url = "https://files.pythonhosted.org/packages/7c/06/63872a64c312a24fb9b4af123ee7007a306617da63ff13bcc1432386ead7/psutil-6.0.0-cp38-abi3-macosx_11_0_arm64.whl", hash = "sha256:ffe7fc9b6b36beadc8c322f84e1caff51e8703b88eee1da46d1e3a6ae11b4fd0", size = 251988 }, +] + +[[package]] +name = "ptyprocess" +version = "0.7.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/20/e5/16ff212c1e452235a90aeb09066144d0c5a6a8c0834397e03f5224495c4e/ptyprocess-0.7.0.tar.gz", hash = "sha256:5c5d0a3b48ceee0b48485e0c26037c0acd7d29765ca3fbb5cb3831d347423220", size = 70762 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/22/a6/858897256d0deac81a172289110f31629fc4cee19b6f01283303e18c8db3/ptyprocess-0.7.0-py2.py3-none-any.whl", hash = "sha256:4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35", size = 13993 }, +] + +[[package]] +name = "pure-eval" +version = "0.2.3" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/cd/05/0a34433a064256a578f1783a10da6df098ceaa4a57bbeaa96a6c0352786b/pure_eval-0.2.3.tar.gz", hash = "sha256:5f4e983f40564c576c7c8635ae88db5956bb2229d7e9237d03b3c0b0190eaf42", size = 19752 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/8e/37/efad0257dc6e593a18957422533ff0f87ede7c9c6ea010a2177d738fb82f/pure_eval-0.2.3-py3-none-any.whl", hash = "sha256:1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0", size = 11842 }, +] + +[[package]] +name = "pycparser" +version = "2.22" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/1d/b2/31537cf4b1ca988837256c910a668b553fceb8f069bedc4b1c826024b52c/pycparser-2.22.tar.gz", hash = "sha256:491c8be9c040f5390f5bf44a5b07752bd07f56edf992381b05c701439eec10f6", size = 172736 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/13/a3/a812df4e2dd5696d1f351d58b8fe16a405b234ad2886a0dab9183fb78109/pycparser-2.22-py3-none-any.whl", hash = "sha256:c3702b6d3dd8c7abc1afa565d7e63d53a1d0bd86cdc24edd75470f4de499cfcc", size = 117552 }, +] + +[[package]] +name = "pygments" +version = "2.18.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/8e/62/8336eff65bcbc8e4cb5d05b55faf041285951b6e80f33e2bff2024788f31/pygments-2.18.0.tar.gz", hash = "sha256:786ff802f32e91311bff3889f6e9a86e81505fe99f2735bb6d60ae0c5004f199", size = 4891905 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/f7/3f/01c8b82017c199075f8f788d0d906b9ffbbc5a47dc9918a945e13d5a2bda/pygments-2.18.0-py3-none-any.whl", hash = "sha256:b8e6aca0523f3ab76fee51799c488e38782ac06eafcf95e7ba832985c8e7b13a", size = 1205513 }, +] + +[[package]] +name = "python-dateutil" +version = "2.9.0.post0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "six" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/66/c0/0c8b6ad9f17a802ee498c46e004a0eb49bc148f2fd230864601a86dcf6db/python-dateutil-2.9.0.post0.tar.gz", hash = "sha256:37dd54208da7e1cd875388217d5e00ebd4179249f90fb72437e91a35459a0ad3", size = 342432 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/ec/57/56b9bcc3c9c6a792fcbaf139543cee77261f3651ca9da0c93f5c1221264b/python_dateutil-2.9.0.post0-py2.py3-none-any.whl", hash = "sha256:a8b2bc7bffae282281c8140a97d3aa9c14da0b136dfe83f850eea9a5f7470427", size = 229892 }, +] + +[[package]] +name = "python-json-logger" +version = "2.0.7" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/4f/da/95963cebfc578dabd323d7263958dfb68898617912bb09327dd30e9c8d13/python-json-logger-2.0.7.tar.gz", hash = "sha256:23e7ec02d34237c5aa1e29a070193a4ea87583bb4e7f8fd06d3de8264c4b2e1c", size = 10508 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/35/a6/145655273568ee78a581e734cf35beb9e33a370b29c5d3c8fee3744de29f/python_json_logger-2.0.7-py3-none-any.whl", hash = "sha256:f380b826a991ebbe3de4d897aeec42760035ac760345e57b812938dc8b35e2bd", size = 8067 }, +] + +[[package]] +name = "pywin32" +version = "306" +source = { registry = "https://pypi.org/simple" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/08/dc/28c668097edfaf4eac4617ef7adf081b9cf50d254672fcf399a70f5efc41/pywin32-306-cp310-cp310-win32.whl", hash = "sha256:06d3420a5155ba65f0b72f2699b5bacf3109f36acbe8923765c22938a69dfc8d", size = 8506422 }, + { url = "https://files.pythonhosted.org/packages/d3/d6/891894edec688e72c2e308b3243fad98b4066e1839fd2fe78f04129a9d31/pywin32-306-cp310-cp310-win_amd64.whl", hash = "sha256:84f4471dbca1887ea3803d8848a1616429ac94a4a8d05f4bc9c5dcfd42ca99c8", size = 9226392 }, + { url = "https://files.pythonhosted.org/packages/8b/1e/fc18ad83ca553e01b97aa8393ff10e33c1fb57801db05488b83282ee9913/pywin32-306-cp311-cp311-win32.whl", hash = "sha256:e65028133d15b64d2ed8f06dd9fbc268352478d4f9289e69c190ecd6818b6407", size = 8507689 }, + { url = "https://files.pythonhosted.org/packages/7e/9e/ad6b1ae2a5ad1066dc509350e0fbf74d8d50251a51e420a2a8feaa0cecbd/pywin32-306-cp311-cp311-win_amd64.whl", hash = "sha256:a7639f51c184c0272e93f244eb24dafca9b1855707d94c192d4a0b4c01e1100e", size = 9227547 }, + { url = "https://files.pythonhosted.org/packages/91/20/f744bff1da8f43388498503634378dbbefbe493e65675f2cc52f7185c2c2/pywin32-306-cp311-cp311-win_arm64.whl", hash = "sha256:70dba0c913d19f942a2db25217d9a1b726c278f483a919f1abfed79c9cf64d3a", size = 10388324 }, + { url = "https://files.pythonhosted.org/packages/14/91/17e016d5923e178346aabda3dfec6629d1a26efe587d19667542105cf0a6/pywin32-306-cp312-cp312-win32.whl", hash = "sha256:383229d515657f4e3ed1343da8be101000562bf514591ff383ae940cad65458b", size = 8507705 }, + { url = "https://files.pythonhosted.org/packages/83/1c/25b79fc3ec99b19b0a0730cc47356f7e2959863bf9f3cd314332bddb4f68/pywin32-306-cp312-cp312-win_amd64.whl", hash = "sha256:37257794c1ad39ee9be652da0462dc2e394c8159dfd913a8a4e8eb6fd346da0e", size = 9227429 }, + { url = "https://files.pythonhosted.org/packages/1c/43/e3444dc9a12f8365d9603c2145d16bf0a2f8180f343cf87be47f5579e547/pywin32-306-cp312-cp312-win_arm64.whl", hash = "sha256:5821ec52f6d321aa59e2db7e0a35b997de60c201943557d108af9d4ae1ec7040", size = 10388145 }, +] + +[[package]] +name = "pywinpty" +version = "2.0.13" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/33/d9/93956af389ab7d4ef2f558b1cc6c5cb48885d254ac882f212964c30a1e4f/pywinpty-2.0.13.tar.gz", hash = "sha256:c34e32351a3313ddd0d7da23d27f835c860d32fe4ac814d372a3ea9594f41dde", size = 28240 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/37/c4/940928b15435d56f7af38c0fab36cd00413f185721fcef4265d06bd543c9/pywinpty-2.0.13-cp310-none-win_amd64.whl", hash = "sha256:697bff211fb5a6508fee2dc6ff174ce03f34a9a233df9d8b5fe9c8ce4d5eaf56", size = 1398988 }, + { url = "https://files.pythonhosted.org/packages/02/f0/2004a0c907eb74155b6fafa5801931d9e15d55905db6811f146cc2d145cd/pywinpty-2.0.13-cp311-none-win_amd64.whl", hash = "sha256:b96fb14698db1284db84ca38c79f15b4cfdc3172065b5137383910567591fa99", size = 1399007 }, + { url = "https://files.pythonhosted.org/packages/49/37/c0dcb1dca094af3605dd22c0528839a65bc4e1e78bb91eb12841d18fa3f1/pywinpty-2.0.13-cp312-none-win_amd64.whl", hash = "sha256:2fd876b82ca750bb1333236ce98488c1be96b08f4f7647cfdf4129dfad83c2d4", size = 1399803 }, +] + +[[package]] +name = "pyyaml" +version = "6.0.2" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/54/ed/79a089b6be93607fa5cdaedf301d7dfb23af5f25c398d5ead2525b063e17/pyyaml-6.0.2.tar.gz", hash = "sha256:d584d9ec91ad65861cc08d42e834324ef890a082e591037abe114850ff7bbc3e", size = 130631 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/9b/95/a3fac87cb7158e231b5a6012e438c647e1a87f09f8e0d123acec8ab8bf71/PyYAML-6.0.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:0a9a2848a5b7feac301353437eb7d5957887edbf81d56e903999a75a3d743086", size = 184199 }, + { url = "https://files.pythonhosted.org/packages/c7/7a/68bd47624dab8fd4afbfd3c48e3b79efe09098ae941de5b58abcbadff5cb/PyYAML-6.0.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:29717114e51c84ddfba879543fb232a6ed60086602313ca38cce623c1d62cfbf", size = 171758 }, + { url = "https://files.pythonhosted.org/packages/49/ee/14c54df452143b9ee9f0f29074d7ca5516a36edb0b4cc40c3f280131656f/PyYAML-6.0.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8824b5a04a04a047e72eea5cec3bc266db09e35de6bdfe34c9436ac5ee27d237", size = 718463 }, + { url = "https://files.pythonhosted.org/packages/4d/61/de363a97476e766574650d742205be468921a7b532aa2499fcd886b62530/PyYAML-6.0.2-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:7c36280e6fb8385e520936c3cb3b8042851904eba0e58d277dca80a5cfed590b", size = 719280 }, + { url = "https://files.pythonhosted.org/packages/6b/4e/1523cb902fd98355e2e9ea5e5eb237cbc5f3ad5f3075fa65087aa0ecb669/PyYAML-6.0.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ec031d5d2feb36d1d1a24380e4db6d43695f3748343d99434e6f5f9156aaa2ed", size = 751239 }, + { url = "https://files.pythonhosted.org/packages/b7/33/5504b3a9a4464893c32f118a9cc045190a91637b119a9c881da1cf6b7a72/PyYAML-6.0.2-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:936d68689298c36b53b29f23c6dbb74de12b4ac12ca6cfe0e047bedceea56180", size = 695802 }, + { url = "https://files.pythonhosted.org/packages/5c/20/8347dcabd41ef3a3cdc4f7b7a2aff3d06598c8779faa189cdbf878b626a4/PyYAML-6.0.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:23502f431948090f597378482b4812b0caae32c22213aecf3b55325e049a6c68", size = 720527 }, + { url = "https://files.pythonhosted.org/packages/be/aa/5afe99233fb360d0ff37377145a949ae258aaab831bde4792b32650a4378/PyYAML-6.0.2-cp310-cp310-win32.whl", hash = "sha256:2e99c6826ffa974fe6e27cdb5ed0021786b03fc98e5ee3c5bfe1fd5015f42b99", size = 144052 }, + { url = "https://files.pythonhosted.org/packages/b5/84/0fa4b06f6d6c958d207620fc60005e241ecedceee58931bb20138e1e5776/PyYAML-6.0.2-cp310-cp310-win_amd64.whl", hash = "sha256:a4d3091415f010369ae4ed1fc6b79def9416358877534caf6a0fdd2146c87a3e", size = 161774 }, + { url = "https://files.pythonhosted.org/packages/f8/aa/7af4e81f7acba21a4c6be026da38fd2b872ca46226673c89a758ebdc4fd2/PyYAML-6.0.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:cc1c1159b3d456576af7a3e4d1ba7e6924cb39de8f67111c735f6fc832082774", size = 184612 }, + { url = "https://files.pythonhosted.org/packages/8b/62/b9faa998fd185f65c1371643678e4d58254add437edb764a08c5a98fb986/PyYAML-6.0.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:1e2120ef853f59c7419231f3bf4e7021f1b936f6ebd222406c3b60212205d2ee", size = 172040 }, + { url = "https://files.pythonhosted.org/packages/ad/0c/c804f5f922a9a6563bab712d8dcc70251e8af811fce4524d57c2c0fd49a4/PyYAML-6.0.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5d225db5a45f21e78dd9358e58a98702a0302f2659a3c6cd320564b75b86f47c", size = 736829 }, + { url = "https://files.pythonhosted.org/packages/51/16/6af8d6a6b210c8e54f1406a6b9481febf9c64a3109c541567e35a49aa2e7/PyYAML-6.0.2-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:5ac9328ec4831237bec75defaf839f7d4564be1e6b25ac710bd1a96321cc8317", size = 764167 }, + { url = "https://files.pythonhosted.org/packages/75/e4/2c27590dfc9992f73aabbeb9241ae20220bd9452df27483b6e56d3975cc5/PyYAML-6.0.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3ad2a3decf9aaba3d29c8f537ac4b243e36bef957511b4766cb0057d32b0be85", size = 762952 }, + { url = "https://files.pythonhosted.org/packages/9b/97/ecc1abf4a823f5ac61941a9c00fe501b02ac3ab0e373c3857f7d4b83e2b6/PyYAML-6.0.2-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:ff3824dc5261f50c9b0dfb3be22b4567a6f938ccce4587b38952d85fd9e9afe4", size = 735301 }, + { url = "https://files.pythonhosted.org/packages/45/73/0f49dacd6e82c9430e46f4a027baa4ca205e8b0a9dce1397f44edc23559d/PyYAML-6.0.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:797b4f722ffa07cc8d62053e4cff1486fa6dc094105d13fea7b1de7d8bf71c9e", size = 756638 }, + { url = "https://files.pythonhosted.org/packages/22/5f/956f0f9fc65223a58fbc14459bf34b4cc48dec52e00535c79b8db361aabd/PyYAML-6.0.2-cp311-cp311-win32.whl", hash = "sha256:11d8f3dd2b9c1207dcaf2ee0bbbfd5991f571186ec9cc78427ba5bd32afae4b5", size = 143850 }, + { url = "https://files.pythonhosted.org/packages/ed/23/8da0bbe2ab9dcdd11f4f4557ccaf95c10b9811b13ecced089d43ce59c3c8/PyYAML-6.0.2-cp311-cp311-win_amd64.whl", hash = "sha256:e10ce637b18caea04431ce14fabcf5c64a1c61ec9c56b071a4b7ca131ca52d44", size = 161980 }, + { url = "https://files.pythonhosted.org/packages/86/0c/c581167fc46d6d6d7ddcfb8c843a4de25bdd27e4466938109ca68492292c/PyYAML-6.0.2-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:c70c95198c015b85feafc136515252a261a84561b7b1d51e3384e0655ddf25ab", size = 183873 }, + { url = "https://files.pythonhosted.org/packages/a8/0c/38374f5bb272c051e2a69281d71cba6fdb983413e6758b84482905e29a5d/PyYAML-6.0.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:ce826d6ef20b1bc864f0a68340c8b3287705cae2f8b4b1d932177dcc76721725", size = 173302 }, + { url = "https://files.pythonhosted.org/packages/c3/93/9916574aa8c00aa06bbac729972eb1071d002b8e158bd0e83a3b9a20a1f7/PyYAML-6.0.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1f71ea527786de97d1a0cc0eacd1defc0985dcf6b3f17bb77dcfc8c34bec4dc5", size = 739154 }, + { url = "https://files.pythonhosted.org/packages/95/0f/b8938f1cbd09739c6da569d172531567dbcc9789e0029aa070856f123984/PyYAML-6.0.2-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:9b22676e8097e9e22e36d6b7bda33190d0d400f345f23d4065d48f4ca7ae0425", size = 766223 }, + { url = "https://files.pythonhosted.org/packages/b9/2b/614b4752f2e127db5cc206abc23a8c19678e92b23c3db30fc86ab731d3bd/PyYAML-6.0.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:80bab7bfc629882493af4aa31a4cfa43a4c57c83813253626916b8c7ada83476", size = 767542 }, + { url = "https://files.pythonhosted.org/packages/d4/00/dd137d5bcc7efea1836d6264f049359861cf548469d18da90cd8216cf05f/PyYAML-6.0.2-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:0833f8694549e586547b576dcfaba4a6b55b9e96098b36cdc7ebefe667dfed48", size = 731164 }, + { url = "https://files.pythonhosted.org/packages/c9/1f/4f998c900485e5c0ef43838363ba4a9723ac0ad73a9dc42068b12aaba4e4/PyYAML-6.0.2-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:8b9c7197f7cb2738065c481a0461e50ad02f18c78cd75775628afb4d7137fb3b", size = 756611 }, + { url = "https://files.pythonhosted.org/packages/df/d1/f5a275fdb252768b7a11ec63585bc38d0e87c9e05668a139fea92b80634c/PyYAML-6.0.2-cp312-cp312-win32.whl", hash = "sha256:ef6107725bd54b262d6dedcc2af448a266975032bc85ef0172c5f059da6325b4", size = 140591 }, + { url = "https://files.pythonhosted.org/packages/0c/e8/4f648c598b17c3d06e8753d7d13d57542b30d56e6c2dedf9c331ae56312e/PyYAML-6.0.2-cp312-cp312-win_amd64.whl", hash = "sha256:7e7401d0de89a9a855c839bc697c079a4af81cf878373abd7dc625847d25cbd8", size = 156338 }, + { url = "https://files.pythonhosted.org/packages/ef/e3/3af305b830494fa85d95f6d95ef7fa73f2ee1cc8ef5b495c7c3269fb835f/PyYAML-6.0.2-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:efdca5630322a10774e8e98e1af481aad470dd62c3170801852d752aa7a783ba", size = 181309 }, + { url = "https://files.pythonhosted.org/packages/45/9f/3b1c20a0b7a3200524eb0076cc027a970d320bd3a6592873c85c92a08731/PyYAML-6.0.2-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:50187695423ffe49e2deacb8cd10510bc361faac997de9efef88badc3bb9e2d1", size = 171679 }, + { url = "https://files.pythonhosted.org/packages/7c/9a/337322f27005c33bcb656c655fa78325b730324c78620e8328ae28b64d0c/PyYAML-6.0.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0ffe8360bab4910ef1b9e87fb812d8bc0a308b0d0eef8c8f44e0254ab3b07133", size = 733428 }, + { url = "https://files.pythonhosted.org/packages/a3/69/864fbe19e6c18ea3cc196cbe5d392175b4cf3d5d0ac1403ec3f2d237ebb5/PyYAML-6.0.2-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:17e311b6c678207928d649faa7cb0d7b4c26a0ba73d41e99c4fff6b6c3276484", size = 763361 }, + { url = "https://files.pythonhosted.org/packages/04/24/b7721e4845c2f162d26f50521b825fb061bc0a5afcf9a386840f23ea19fa/PyYAML-6.0.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:70b189594dbe54f75ab3a1acec5f1e3faa7e8cf2f1e08d9b561cb41b845f69d5", size = 759523 }, + { url = "https://files.pythonhosted.org/packages/2b/b2/e3234f59ba06559c6ff63c4e10baea10e5e7df868092bf9ab40e5b9c56b6/PyYAML-6.0.2-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:41e4e3953a79407c794916fa277a82531dd93aad34e29c2a514c2c0c5fe971cc", size = 726660 }, + { url = "https://files.pythonhosted.org/packages/fe/0f/25911a9f080464c59fab9027482f822b86bf0608957a5fcc6eaac85aa515/PyYAML-6.0.2-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:68ccc6023a3400877818152ad9a1033e3db8625d899c72eacb5a668902e4d652", size = 751597 }, + { url = "https://files.pythonhosted.org/packages/14/0d/e2c3b43bbce3cf6bd97c840b46088a3031085179e596d4929729d8d68270/PyYAML-6.0.2-cp313-cp313-win32.whl", hash = "sha256:bc2fa7c6b47d6bc618dd7fb02ef6fdedb1090ec036abab80d4681424b84c1183", size = 140527 }, + { url = "https://files.pythonhosted.org/packages/fa/de/02b54f42487e3d3c6efb3f89428677074ca7bf43aae402517bc7cca949f3/PyYAML-6.0.2-cp313-cp313-win_amd64.whl", hash = "sha256:8388ee1976c416731879ac16da0aff3f63b286ffdd57cdeb95f3f2e085687563", size = 156446 }, +] + +[[package]] +name = "pyzmq" +version = "26.2.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "cffi", marker = "implementation_name == 'pypy'" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/fd/05/bed626b9f7bb2322cdbbf7b4bd8f54b1b617b0d2ab2d3547d6e39428a48e/pyzmq-26.2.0.tar.gz", hash = "sha256:070672c258581c8e4f640b5159297580a9974b026043bd4ab0470be9ed324f1f", size = 271975 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/1f/a8/9837c39aba390eb7d01924ace49d761c8dbe7bc2d6082346d00c8332e431/pyzmq-26.2.0-cp310-cp310-macosx_10_15_universal2.whl", hash = "sha256:ddf33d97d2f52d89f6e6e7ae66ee35a4d9ca6f36eda89c24591b0c40205a3629", size = 1340058 }, + { url = "https://files.pythonhosted.org/packages/a2/1f/a006f2e8e4f7d41d464272012695da17fb95f33b54342612a6890da96ff6/pyzmq-26.2.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:dacd995031a01d16eec825bf30802fceb2c3791ef24bcce48fa98ce40918c27b", size = 1008818 }, + { url = "https://files.pythonhosted.org/packages/b6/09/b51b6683fde5ca04593a57bbe81788b6b43114d8f8ee4e80afc991e14760/pyzmq-26.2.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:89289a5ee32ef6c439086184529ae060c741334b8970a6855ec0b6ad3ff28764", size = 673199 }, + { url = "https://files.pythonhosted.org/packages/c9/78/486f3e2e824f3a645238332bf5a4c4b4477c3063033a27c1e4052358dee2/pyzmq-26.2.0-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:5506f06d7dc6ecf1efacb4a013b1f05071bb24b76350832c96449f4a2d95091c", size = 911762 }, + { url = "https://files.pythonhosted.org/packages/5e/3b/2eb1667c9b866f53e76ee8b0c301b0469745a23bd5a87b7ee3d5dd9eb6e5/pyzmq-26.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8ea039387c10202ce304af74def5021e9adc6297067f3441d348d2b633e8166a", size = 868773 }, + { url = "https://files.pythonhosted.org/packages/16/29/ca99b4598a9dc7e468b5417eda91f372b595be1e3eec9b7cbe8e5d3584e8/pyzmq-26.2.0-cp310-cp310-manylinux_2_28_x86_64.whl", hash = "sha256:a2224fa4a4c2ee872886ed00a571f5e967c85e078e8e8c2530a2fb01b3309b88", size = 868834 }, + { url = "https://files.pythonhosted.org/packages/ad/e5/9efaeb1d2f4f8c50da04144f639b042bc52869d3a206d6bf672ab3522163/pyzmq-26.2.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:28ad5233e9c3b52d76196c696e362508959741e1a005fb8fa03b51aea156088f", size = 1202861 }, + { url = "https://files.pythonhosted.org/packages/c3/62/c721b5608a8ac0a69bb83cbb7d07a56f3ff00b3991a138e44198a16f94c7/pyzmq-26.2.0-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:1c17211bc037c7d88e85ed8b7d8f7e52db6dc8eca5590d162717c654550f7282", size = 1515304 }, + { url = "https://files.pythonhosted.org/packages/87/84/e8bd321aa99b72f48d4606fc5a0a920154125bd0a4608c67eab742dab087/pyzmq-26.2.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:b8f86dd868d41bea9a5f873ee13bf5551c94cf6bc51baebc6f85075971fe6eea", size = 1414712 }, + { url = "https://files.pythonhosted.org/packages/cd/cd/420e3fd1ac6977b008b72e7ad2dae6350cc84d4c5027fc390b024e61738f/pyzmq-26.2.0-cp310-cp310-win32.whl", hash = "sha256:46a446c212e58456b23af260f3d9fb785054f3e3653dbf7279d8f2b5546b21c2", size = 578113 }, + { url = "https://files.pythonhosted.org/packages/5c/57/73930d56ed45ae0cb4946f383f985c855c9b3d4063f26416998f07523c0e/pyzmq-26.2.0-cp310-cp310-win_amd64.whl", hash = "sha256:49d34ab71db5a9c292a7644ce74190b1dd5a3475612eefb1f8be1d6961441971", size = 641631 }, + { url = "https://files.pythonhosted.org/packages/61/d2/ae6ac5c397f1ccad59031c64beaafce7a0d6182e0452cc48f1c9c87d2dd0/pyzmq-26.2.0-cp310-cp310-win_arm64.whl", hash = "sha256:bfa832bfa540e5b5c27dcf5de5d82ebc431b82c453a43d141afb1e5d2de025fa", size = 543528 }, + { url = "https://files.pythonhosted.org/packages/12/20/de7442172f77f7c96299a0ac70e7d4fb78cd51eca67aa2cf552b66c14196/pyzmq-26.2.0-cp311-cp311-macosx_10_15_universal2.whl", hash = "sha256:8f7e66c7113c684c2b3f1c83cdd3376103ee0ce4c49ff80a648643e57fb22218", size = 1340639 }, + { url = "https://files.pythonhosted.org/packages/98/4d/5000468bd64c7910190ed0a6c76a1ca59a68189ec1f007c451dc181a22f4/pyzmq-26.2.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:3a495b30fc91db2db25120df5847d9833af237546fd59170701acd816ccc01c4", size = 1008710 }, + { url = "https://files.pythonhosted.org/packages/e1/bf/c67fd638c2f9fbbab8090a3ee779370b97c82b84cc12d0c498b285d7b2c0/pyzmq-26.2.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:77eb0968da535cba0470a5165468b2cac7772cfb569977cff92e240f57e31bef", size = 673129 }, + { url = "https://files.pythonhosted.org/packages/86/94/99085a3f492aa538161cbf27246e8886ff850e113e0c294a5b8245f13b52/pyzmq-26.2.0-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6ace4f71f1900a548f48407fc9be59c6ba9d9aaf658c2eea6cf2779e72f9f317", size = 910107 }, + { url = "https://files.pythonhosted.org/packages/31/1d/346809e8a9b999646d03f21096428453465b1bca5cd5c64ecd048d9ecb01/pyzmq-26.2.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:92a78853d7280bffb93df0a4a6a2498cba10ee793cc8076ef797ef2f74d107cf", size = 867960 }, + { url = "https://files.pythonhosted.org/packages/ab/68/6fb6ae5551846ad5beca295b7bca32bf0a7ce19f135cb30e55fa2314e6b6/pyzmq-26.2.0-cp311-cp311-manylinux_2_28_x86_64.whl", hash = "sha256:689c5d781014956a4a6de61d74ba97b23547e431e9e7d64f27d4922ba96e9d6e", size = 869204 }, + { url = "https://files.pythonhosted.org/packages/0f/f9/18417771dee223ccf0f48e29adf8b4e25ba6d0e8285e33bcbce078070bc3/pyzmq-26.2.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:0aca98bc423eb7d153214b2df397c6421ba6373d3397b26c057af3c904452e37", size = 1203351 }, + { url = "https://files.pythonhosted.org/packages/e0/46/f13e67fe0d4f8a2315782cbad50493de6203ea0d744610faf4d5f5b16e90/pyzmq-26.2.0-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:1f3496d76b89d9429a656293744ceca4d2ac2a10ae59b84c1da9b5165f429ad3", size = 1514204 }, + { url = "https://files.pythonhosted.org/packages/50/11/ddcf7343b7b7a226e0fc7b68cbf5a5bb56291fac07f5c3023bb4c319ebb4/pyzmq-26.2.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:5c2b3bfd4b9689919db068ac6c9911f3fcb231c39f7dd30e3138be94896d18e6", size = 1414339 }, + { url = "https://files.pythonhosted.org/packages/01/14/1c18d7d5b7be2708f513f37c61bfadfa62161c10624f8733f1c8451b3509/pyzmq-26.2.0-cp311-cp311-win32.whl", hash = "sha256:eac5174677da084abf378739dbf4ad245661635f1600edd1221f150b165343f4", size = 576928 }, + { url = "https://files.pythonhosted.org/packages/3b/1b/0a540edd75a41df14ec416a9a500b9fec66e554aac920d4c58fbd5756776/pyzmq-26.2.0-cp311-cp311-win_amd64.whl", hash = "sha256:5a509df7d0a83a4b178d0f937ef14286659225ef4e8812e05580776c70e155d5", size = 642317 }, + { url = "https://files.pythonhosted.org/packages/98/77/1cbfec0358078a4c5add529d8a70892db1be900980cdb5dd0898b3d6ab9d/pyzmq-26.2.0-cp311-cp311-win_arm64.whl", hash = "sha256:c0e6091b157d48cbe37bd67233318dbb53e1e6327d6fc3bb284afd585d141003", size = 543834 }, + { url = "https://files.pythonhosted.org/packages/28/2f/78a766c8913ad62b28581777ac4ede50c6d9f249d39c2963e279524a1bbe/pyzmq-26.2.0-cp312-cp312-macosx_10_15_universal2.whl", hash = "sha256:ded0fc7d90fe93ae0b18059930086c51e640cdd3baebdc783a695c77f123dcd9", size = 1343105 }, + { url = "https://files.pythonhosted.org/packages/b7/9c/4b1e2d3d4065be715e007fe063ec7885978fad285f87eae1436e6c3201f4/pyzmq-26.2.0-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:17bf5a931c7f6618023cdacc7081f3f266aecb68ca692adac015c383a134ca52", size = 1008365 }, + { url = "https://files.pythonhosted.org/packages/4f/ef/5a23ec689ff36d7625b38d121ef15abfc3631a9aecb417baf7a4245e4124/pyzmq-26.2.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:55cf66647e49d4621a7e20c8d13511ef1fe1efbbccf670811864452487007e08", size = 665923 }, + { url = "https://files.pythonhosted.org/packages/ae/61/d436461a47437d63c6302c90724cf0981883ec57ceb6073873f32172d676/pyzmq-26.2.0-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:4661c88db4a9e0f958c8abc2b97472e23061f0bc737f6f6179d7a27024e1faa5", size = 903400 }, + { url = "https://files.pythonhosted.org/packages/47/42/fc6d35ecefe1739a819afaf6f8e686f7f02a4dd241c78972d316f403474c/pyzmq-26.2.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ea7f69de383cb47522c9c208aec6dd17697db7875a4674c4af3f8cfdac0bdeae", size = 860034 }, + { url = "https://files.pythonhosted.org/packages/07/3b/44ea6266a6761e9eefaa37d98fabefa112328808ac41aa87b4bbb668af30/pyzmq-26.2.0-cp312-cp312-manylinux_2_28_x86_64.whl", hash = "sha256:7f98f6dfa8b8ccaf39163ce872bddacca38f6a67289116c8937a02e30bbe9711", size = 860579 }, + { url = "https://files.pythonhosted.org/packages/38/6f/4df2014ab553a6052b0e551b37da55166991510f9e1002c89cab7ce3b3f2/pyzmq-26.2.0-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:e3e0210287329272539eea617830a6a28161fbbd8a3271bf4150ae3e58c5d0e6", size = 1196246 }, + { url = "https://files.pythonhosted.org/packages/38/9d/ee240fc0c9fe9817f0c9127a43238a3e28048795483c403cc10720ddef22/pyzmq-26.2.0-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:6b274e0762c33c7471f1a7471d1a2085b1a35eba5cdc48d2ae319f28b6fc4de3", size = 1507441 }, + { url = "https://files.pythonhosted.org/packages/85/4f/01711edaa58d535eac4a26c294c617c9a01f09857c0ce191fd574d06f359/pyzmq-26.2.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:29c6a4635eef69d68a00321e12a7d2559fe2dfccfa8efae3ffb8e91cd0b36a8b", size = 1406498 }, + { url = "https://files.pythonhosted.org/packages/07/18/907134c85c7152f679ed744e73e645b365f3ad571f38bdb62e36f347699a/pyzmq-26.2.0-cp312-cp312-win32.whl", hash = "sha256:989d842dc06dc59feea09e58c74ca3e1678c812a4a8a2a419046d711031f69c7", size = 575533 }, + { url = "https://files.pythonhosted.org/packages/ce/2c/a6f4a20202a4d3c582ad93f95ee78d79bbdc26803495aec2912b17dbbb6c/pyzmq-26.2.0-cp312-cp312-win_amd64.whl", hash = "sha256:2a50625acdc7801bc6f74698c5c583a491c61d73c6b7ea4dee3901bb99adb27a", size = 637768 }, + { url = "https://files.pythonhosted.org/packages/5f/0e/eb16ff731632d30554bf5af4dbba3ffcd04518219d82028aea4ae1b02ca5/pyzmq-26.2.0-cp312-cp312-win_arm64.whl", hash = "sha256:4d29ab8592b6ad12ebbf92ac2ed2bedcfd1cec192d8e559e2e099f648570e19b", size = 540675 }, + { url = "https://files.pythonhosted.org/packages/04/a7/0f7e2f6c126fe6e62dbae0bc93b1bd3f1099cf7fea47a5468defebe3f39d/pyzmq-26.2.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:9dd8cd1aeb00775f527ec60022004d030ddc51d783d056e3e23e74e623e33726", size = 1006564 }, + { url = "https://files.pythonhosted.org/packages/31/b6/a187165c852c5d49f826a690857684333a6a4a065af0a6015572d2284f6a/pyzmq-26.2.0-cp313-cp313-macosx_10_15_universal2.whl", hash = "sha256:28c812d9757fe8acecc910c9ac9dafd2ce968c00f9e619db09e9f8f54c3a68a3", size = 1340447 }, + { url = "https://files.pythonhosted.org/packages/68/ba/f4280c58ff71f321602a6e24fd19879b7e79793fb8ab14027027c0fb58ef/pyzmq-26.2.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4d80b1dd99c1942f74ed608ddb38b181b87476c6a966a88a950c7dee118fdf50", size = 665485 }, + { url = "https://files.pythonhosted.org/packages/77/b5/c987a5c53c7d8704216f29fc3d810b32f156bcea488a940e330e1bcbb88d/pyzmq-26.2.0-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:8c997098cc65e3208eca09303630e84d42718620e83b733d0fd69543a9cab9cb", size = 903484 }, + { url = "https://files.pythonhosted.org/packages/29/c9/07da157d2db18c72a7eccef8e684cefc155b712a88e3d479d930aa9eceba/pyzmq-26.2.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7ad1bc8d1b7a18497dda9600b12dc193c577beb391beae5cd2349184db40f187", size = 859981 }, + { url = "https://files.pythonhosted.org/packages/43/09/e12501bd0b8394b7d02c41efd35c537a1988da67fc9c745cae9c6c776d31/pyzmq-26.2.0-cp313-cp313-manylinux_2_28_x86_64.whl", hash = "sha256:bea2acdd8ea4275e1278350ced63da0b166421928276c7c8e3f9729d7402a57b", size = 860334 }, + { url = "https://files.pythonhosted.org/packages/eb/ff/f5ec1d455f8f7385cc0a8b2acd8c807d7fade875c14c44b85c1bddabae21/pyzmq-26.2.0-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:23f4aad749d13698f3f7b64aad34f5fc02d6f20f05999eebc96b89b01262fb18", size = 1196179 }, + { url = "https://files.pythonhosted.org/packages/ec/8a/bb2ac43295b1950fe436a81fc5b298be0b96ac76fb029b514d3ed58f7b27/pyzmq-26.2.0-cp313-cp313-musllinux_1_1_i686.whl", hash = "sha256:a4f96f0d88accc3dbe4a9025f785ba830f968e21e3e2c6321ccdfc9aef755115", size = 1507668 }, + { url = "https://files.pythonhosted.org/packages/a9/49/dbc284ebcfd2dca23f6349227ff1616a7ee2c4a35fe0a5d6c3deff2b4fed/pyzmq-26.2.0-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:ced65e5a985398827cc9276b93ef6dfabe0273c23de8c7931339d7e141c2818e", size = 1406539 }, + { url = "https://files.pythonhosted.org/packages/00/68/093cdce3fe31e30a341d8e52a1ad86392e13c57970d722c1f62a1d1a54b6/pyzmq-26.2.0-cp313-cp313-win32.whl", hash = "sha256:31507f7b47cc1ead1f6e86927f8ebb196a0bab043f6345ce070f412a59bf87b5", size = 575567 }, + { url = "https://files.pythonhosted.org/packages/92/ae/6cc4657148143412b5819b05e362ae7dd09fb9fe76e2a539dcff3d0386bc/pyzmq-26.2.0-cp313-cp313-win_amd64.whl", hash = "sha256:70fc7fcf0410d16ebdda9b26cbd8bf8d803d220a7f3522e060a69a9c87bf7bad", size = 637551 }, + { url = "https://files.pythonhosted.org/packages/6c/67/fbff102e201688f97c8092e4c3445d1c1068c2f27bbd45a578df97ed5f94/pyzmq-26.2.0-cp313-cp313-win_arm64.whl", hash = "sha256:c3789bd5768ab5618ebf09cef6ec2b35fed88709b104351748a63045f0ff9797", size = 540378 }, + { url = "https://files.pythonhosted.org/packages/3f/fe/2d998380b6e0122c6c4bdf9b6caf490831e5f5e2d08a203b5adff060c226/pyzmq-26.2.0-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:034da5fc55d9f8da09015d368f519478a52675e558c989bfcb5cf6d4e16a7d2a", size = 1007378 }, + { url = "https://files.pythonhosted.org/packages/4a/f4/30d6e7157f12b3a0390bde94d6a8567cdb88846ed068a6e17238a4ccf600/pyzmq-26.2.0-cp313-cp313t-macosx_10_15_universal2.whl", hash = "sha256:c92d73464b886931308ccc45b2744e5968cbaade0b1d6aeb40d8ab537765f5bc", size = 1329532 }, + { url = "https://files.pythonhosted.org/packages/82/86/3fe917870e15ee1c3ad48229a2a64458e36036e64b4afa9659045d82bfa8/pyzmq-26.2.0-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:794a4562dcb374f7dbbfb3f51d28fb40123b5a2abadee7b4091f93054909add5", size = 653242 }, + { url = "https://files.pythonhosted.org/packages/50/2d/242e7e6ef6c8c19e6cb52d095834508cd581ffb925699fd3c640cdc758f1/pyzmq-26.2.0-cp313-cp313t-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:aee22939bb6075e7afededabad1a56a905da0b3c4e3e0c45e75810ebe3a52672", size = 888404 }, + { url = "https://files.pythonhosted.org/packages/ac/11/7270566e1f31e4ea73c81ec821a4b1688fd551009a3d2bab11ec66cb1e8f/pyzmq-26.2.0-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2ae90ff9dad33a1cfe947d2c40cb9cb5e600d759ac4f0fd22616ce6540f72797", size = 845858 }, + { url = "https://files.pythonhosted.org/packages/91/d5/72b38fbc69867795c8711bdd735312f9fef1e3d9204e2f63ab57085434b9/pyzmq-26.2.0-cp313-cp313t-manylinux_2_28_x86_64.whl", hash = "sha256:43a47408ac52647dfabbc66a25b05b6a61700b5165807e3fbd40063fcaf46386", size = 847375 }, + { url = "https://files.pythonhosted.org/packages/dd/9a/10ed3c7f72b4c24e719c59359fbadd1a27556a28b36cdf1cd9e4fb7845d5/pyzmq-26.2.0-cp313-cp313t-musllinux_1_1_aarch64.whl", hash = "sha256:25bf2374a2a8433633c65ccb9553350d5e17e60c8eb4de4d92cc6bd60f01d306", size = 1183489 }, + { url = "https://files.pythonhosted.org/packages/72/2d/8660892543fabf1fe41861efa222455811adac9f3c0818d6c3170a1153e3/pyzmq-26.2.0-cp313-cp313t-musllinux_1_1_i686.whl", hash = "sha256:007137c9ac9ad5ea21e6ad97d3489af654381324d5d3ba614c323f60dab8fae6", size = 1492932 }, + { url = "https://files.pythonhosted.org/packages/7b/d6/32fd69744afb53995619bc5effa2a405ae0d343cd3e747d0fbc43fe894ee/pyzmq-26.2.0-cp313-cp313t-musllinux_1_1_x86_64.whl", hash = "sha256:470d4a4f6d48fb34e92d768b4e8a5cc3780db0d69107abf1cd7ff734b9766eb0", size = 1392485 }, + { url = "https://files.pythonhosted.org/packages/53/fb/36b2b2548286e9444e52fcd198760af99fd89102b5be50f0660fcfe902df/pyzmq-26.2.0-pp310-pypy310_pp73-macosx_10_15_x86_64.whl", hash = "sha256:706e794564bec25819d21a41c31d4df2d48e1cc4b061e8d345d7fb4dd3e94072", size = 906955 }, + { url = "https://files.pythonhosted.org/packages/77/8f/6ce54f8979a01656e894946db6299e2273fcee21c8e5fa57c6295ef11f57/pyzmq-26.2.0-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8b435f2753621cd36e7c1762156815e21c985c72b19135dac43a7f4f31d28dd1", size = 565701 }, + { url = "https://files.pythonhosted.org/packages/ee/1c/bf8cd66730a866b16db8483286078892b7f6536f8c389fb46e4beba0a970/pyzmq-26.2.0-pp310-pypy310_pp73-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:160c7e0a5eb178011e72892f99f918c04a131f36056d10d9c1afb223fc952c2d", size = 794312 }, + { url = "https://files.pythonhosted.org/packages/71/43/91fa4ff25bbfdc914ab6bafa0f03241d69370ef31a761d16bb859f346582/pyzmq-26.2.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2c4a71d5d6e7b28a47a394c0471b7e77a0661e2d651e7ae91e0cab0a587859ca", size = 752775 }, + { url = "https://files.pythonhosted.org/packages/ec/d2/3b2ab40f455a256cb6672186bea95cd97b459ce4594050132d71e76f0d6f/pyzmq-26.2.0-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:90412f2db8c02a3864cbfc67db0e3dcdbda336acf1c469526d3e869394fe001c", size = 550762 }, +] + +[[package]] +name = "referencing" +version = "0.35.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "attrs" }, + { name = "rpds-py" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/99/5b/73ca1f8e72fff6fa52119dbd185f73a907b1989428917b24cff660129b6d/referencing-0.35.1.tar.gz", hash = "sha256:25b42124a6c8b632a425174f24087783efb348a6f1e0008e63cd4466fedf703c", size = 62991 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/b7/59/2056f61236782a2c86b33906c025d4f4a0b17be0161b63b70fd9e8775d36/referencing-0.35.1-py3-none-any.whl", hash = "sha256:eda6d3234d62814d1c64e305c1331c9a3a6132da475ab6382eaa997b21ee75de", size = 26684 }, +] + +[[package]] +name = "requests" +version = "2.32.3" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "certifi" }, + { name = "charset-normalizer" }, + { name = "idna" }, + { name = "urllib3" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/63/70/2bf7780ad2d390a8d301ad0b550f1581eadbd9a20f896afe06353c2a2913/requests-2.32.3.tar.gz", hash = "sha256:55365417734eb18255590a9ff9eb97e9e1da868d4ccd6402399eaf68af20a760", size = 131218 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/f9/9b/335f9764261e915ed497fcdeb11df5dfd6f7bf257d4a6a2a686d80da4d54/requests-2.32.3-py3-none-any.whl", hash = "sha256:70761cfe03c773ceb22aa2f671b4757976145175cdfca038c02654d061d6dcc6", size = 64928 }, +] + +[[package]] +name = "rfc3339-validator" +version = "0.1.4" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "six" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/28/ea/a9387748e2d111c3c2b275ba970b735e04e15cdb1eb30693b6b5708c4dbd/rfc3339_validator-0.1.4.tar.gz", hash = "sha256:138a2abdf93304ad60530167e51d2dfb9549521a836871b88d7f4695d0022f6b", size = 5513 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/7b/44/4e421b96b67b2daff264473f7465db72fbdf36a07e05494f50300cc7b0c6/rfc3339_validator-0.1.4-py2.py3-none-any.whl", hash = "sha256:24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa", size = 3490 }, +] + +[[package]] +name = "rfc3986-validator" +version = "0.1.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/da/88/f270de456dd7d11dcc808abfa291ecdd3f45ff44e3b549ffa01b126464d0/rfc3986_validator-0.1.1.tar.gz", hash = "sha256:3d44bde7921b3b9ec3ae4e3adca370438eccebc676456449b145d533b240d055", size = 6760 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/9e/51/17023c0f8f1869d8806b979a2bffa3f861f26a3f1a66b094288323fba52f/rfc3986_validator-0.1.1-py2.py3-none-any.whl", hash = "sha256:2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9", size = 4242 }, +] + +[[package]] +name = "rpds-py" +version = "0.20.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/55/64/b693f262791b818880d17268f3f8181ef799b0d187f6f731b1772e05a29a/rpds_py-0.20.0.tar.gz", hash = "sha256:d72a210824facfdaf8768cf2d7ca25a042c30320b3020de2fa04640920d4e121", size = 25814 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/71/2d/a7e60483b72b91909e18f29a5c5ae847bac4e2ae95b77bb77e1f41819a58/rpds_py-0.20.0-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:3ad0fda1635f8439cde85c700f964b23ed5fc2d28016b32b9ee5fe30da5c84e2", size = 318432 }, + { url = "https://files.pythonhosted.org/packages/b5/b4/f15b0c55a6d880ce74170e7e28c3ed6c5acdbbd118df50b91d1dabf86008/rpds_py-0.20.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9bb4a0d90fdb03437c109a17eade42dfbf6190408f29b2744114d11586611d6f", size = 311333 }, + { url = "https://files.pythonhosted.org/packages/36/10/3f4e490fe6eb069c07c22357d0b4804cd94cb9f8d01345ef9b1d93482b9d/rpds_py-0.20.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c6377e647bbfd0a0b159fe557f2c6c602c159fc752fa316572f012fc0bf67150", size = 366697 }, + { url = "https://files.pythonhosted.org/packages/f5/c8/cd6ab31b4424c7fab3b17e153b6ea7d1bb0d7cabea5c1ef683cc8adb8bc2/rpds_py-0.20.0-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:eb851b7df9dda52dc1415ebee12362047ce771fc36914586b2e9fcbd7d293b3e", size = 368386 }, + { url = "https://files.pythonhosted.org/packages/60/5e/642a44fda6dda90b5237af7a0ef1d088159c30a504852b94b0396eb62125/rpds_py-0.20.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1e0f80b739e5a8f54837be5d5c924483996b603d5502bfff79bf33da06164ee2", size = 395374 }, + { url = "https://files.pythonhosted.org/packages/7c/b5/ff18c093c9e72630f6d6242e5ccb0728ef8265ba0a154b5972f89d23790a/rpds_py-0.20.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:5a8c94dad2e45324fc74dce25e1645d4d14df9a4e54a30fa0ae8bad9a63928e3", size = 433189 }, + { url = "https://files.pythonhosted.org/packages/4a/6d/1166a157b227f2333f8e8ae320b6b7ea2a6a38fbe7a3563ad76dffc8608d/rpds_py-0.20.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f8e604fe73ba048c06085beaf51147eaec7df856824bfe7b98657cf436623daf", size = 354849 }, + { url = "https://files.pythonhosted.org/packages/70/a4/70ea49863ea09ae4c2971f2eef58e80b757e3c0f2f618c5815bb751f7847/rpds_py-0.20.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:df3de6b7726b52966edf29663e57306b23ef775faf0ac01a3e9f4012a24a4140", size = 373233 }, + { url = "https://files.pythonhosted.org/packages/3b/d3/822a28152a1e7e2ba0dc5d06cf8736f4cd64b191bb6ec47fb51d1c3c5ccf/rpds_py-0.20.0-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:cf258ede5bc22a45c8e726b29835b9303c285ab46fc7c3a4cc770736b5304c9f", size = 541852 }, + { url = "https://files.pythonhosted.org/packages/c6/a5/6ef91e4425dc8b3445ff77d292fc4c5e37046462434a0423c4e0a596a8bd/rpds_py-0.20.0-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:55fea87029cded5df854ca7e192ec7bdb7ecd1d9a3f63d5c4eb09148acf4a7ce", size = 547630 }, + { url = "https://files.pythonhosted.org/packages/72/f8/d5625ee05c4e5c478954a16d9359069c66fe8ac8cd5ddf28f80d3b321837/rpds_py-0.20.0-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:ae94bd0b2f02c28e199e9bc51485d0c5601f58780636185660f86bf80c89af94", size = 525766 }, + { url = "https://files.pythonhosted.org/packages/94/3c/1ff1ed6ae323b3e16fdfcdae0f0a67f373a6c3d991229dc32b499edeffb7/rpds_py-0.20.0-cp310-none-win32.whl", hash = "sha256:28527c685f237c05445efec62426d285e47a58fb05ba0090a4340b73ecda6dee", size = 199174 }, + { url = "https://files.pythonhosted.org/packages/ec/ba/5762c0aee2403dfea14ed74b0f8a2415cfdbb21cf745d600d9a8ac952c5b/rpds_py-0.20.0-cp310-none-win_amd64.whl", hash = "sha256:238a2d5b1cad28cdc6ed15faf93a998336eb041c4e440dd7f902528b8891b399", size = 213543 }, + { url = "https://files.pythonhosted.org/packages/ab/2a/191374c52d7be0b056cc2a04d718d2244c152f915d4a8d2db2aacc526189/rpds_py-0.20.0-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:ac2f4f7a98934c2ed6505aead07b979e6f999389f16b714448fb39bbaa86a489", size = 318369 }, + { url = "https://files.pythonhosted.org/packages/0e/6a/2c9fdcc6d235ac0d61ec4fd9981184689c3e682abd05e3caa49bccb9c298/rpds_py-0.20.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:220002c1b846db9afd83371d08d239fdc865e8f8c5795bbaec20916a76db3318", size = 311303 }, + { url = "https://files.pythonhosted.org/packages/d2/b2/725487d29633f64ef8f9cbf4729111a0b61702c8f8e94db1653930f52cce/rpds_py-0.20.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8d7919548df3f25374a1f5d01fbcd38dacab338ef5f33e044744b5c36729c8db", size = 366424 }, + { url = "https://files.pythonhosted.org/packages/7a/8c/668195ab9226d01b7cf7cd9e59c1c0be1df05d602df7ec0cf46f857dcf59/rpds_py-0.20.0-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:758406267907b3781beee0f0edfe4a179fbd97c0be2e9b1154d7f0a1279cf8e5", size = 368359 }, + { url = "https://files.pythonhosted.org/packages/52/28/356f6a39c1adeb02cf3e5dd526f5e8e54e17899bef045397abcfbf50dffa/rpds_py-0.20.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:3d61339e9f84a3f0767b1995adfb171a0d00a1185192718a17af6e124728e0f5", size = 394886 }, + { url = "https://files.pythonhosted.org/packages/a2/65/640fb1a89080a8fb6f4bebd3dafb65a2edba82e2e44c33e6eb0f3e7956f1/rpds_py-0.20.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:1259c7b3705ac0a0bd38197565a5d603218591d3f6cee6e614e380b6ba61c6f6", size = 432416 }, + { url = "https://files.pythonhosted.org/packages/a7/e8/85835077b782555d6b3416874b702ea6ebd7db1f145283c9252968670dd5/rpds_py-0.20.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5c1dc0f53856b9cc9a0ccca0a7cc61d3d20a7088201c0937f3f4048c1718a209", size = 354819 }, + { url = "https://files.pythonhosted.org/packages/4f/87/1ac631e923d65cbf36fbcfc6eaa702a169496de1311e54be142f178e53ee/rpds_py-0.20.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:7e60cb630f674a31f0368ed32b2a6b4331b8350d67de53c0359992444b116dd3", size = 373282 }, + { url = "https://files.pythonhosted.org/packages/e4/ce/cb316f7970189e217b998191c7cf0da2ede3d5437932c86a7210dc1e9994/rpds_py-0.20.0-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:dbe982f38565bb50cb7fb061ebf762c2f254ca3d8c20d4006878766e84266272", size = 541540 }, + { url = "https://files.pythonhosted.org/packages/90/d7/4112d7655ec8aff168ecc91d4ceb51c557336edde7e6ccf6463691a2f253/rpds_py-0.20.0-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:514b3293b64187172bc77c8fb0cdae26981618021053b30d8371c3a902d4d5ad", size = 547640 }, + { url = "https://files.pythonhosted.org/packages/ab/44/4f61d64dfed98cc71623f3a7fcb612df636a208b4b2c6611eaa985e130a9/rpds_py-0.20.0-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:d0a26ffe9d4dd35e4dfdd1e71f46401cff0181c75ac174711ccff0459135fa58", size = 525555 }, + { url = "https://files.pythonhosted.org/packages/35/f2/a862d81eacb21f340d584cd1c749c289979f9a60e9229f78bffc0418a199/rpds_py-0.20.0-cp311-none-win32.whl", hash = "sha256:89c19a494bf3ad08c1da49445cc5d13d8fefc265f48ee7e7556839acdacf69d0", size = 199338 }, + { url = "https://files.pythonhosted.org/packages/cc/ec/77d0674f9af4872919f3738018558dd9d37ad3f7ad792d062eadd4af7cba/rpds_py-0.20.0-cp311-none-win_amd64.whl", hash = "sha256:c638144ce971df84650d3ed0096e2ae7af8e62ecbbb7b201c8935c370df00a2c", size = 213585 }, + { url = "https://files.pythonhosted.org/packages/89/b7/f9682c5cc37fcc035f4a0fc33c1fe92ec9cbfdee0cdfd071cf948f53e0df/rpds_py-0.20.0-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:a84ab91cbe7aab97f7446652d0ed37d35b68a465aeef8fc41932a9d7eee2c1a6", size = 321468 }, + { url = "https://files.pythonhosted.org/packages/b8/ad/fc82be4eaceb8d444cb6fc1956ce972b3a0795104279de05e0e4131d0a47/rpds_py-0.20.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:56e27147a5a4c2c21633ff8475d185734c0e4befd1c989b5b95a5d0db699b21b", size = 313062 }, + { url = "https://files.pythonhosted.org/packages/0e/1c/6039e80b13a08569a304dc13476dc986352dca4598e909384db043b4e2bb/rpds_py-0.20.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2580b0c34583b85efec8c5c5ec9edf2dfe817330cc882ee972ae650e7b5ef739", size = 370168 }, + { url = "https://files.pythonhosted.org/packages/dc/c9/5b9aa35acfb58946b4b785bc8e700ac313669e02fb100f3efa6176a83e81/rpds_py-0.20.0-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:b80d4a7900cf6b66bb9cee5c352b2d708e29e5a37fe9bf784fa97fc11504bf6c", size = 371376 }, + { url = "https://files.pythonhosted.org/packages/7b/dd/0e0dbeb70d8a5357d2814764d467ded98d81d90d3570de4fb05ec7224f6b/rpds_py-0.20.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:50eccbf054e62a7b2209b28dc7a22d6254860209d6753e6b78cfaeb0075d7bee", size = 397200 }, + { url = "https://files.pythonhosted.org/packages/e4/da/a47d931eb688ccfd77a7389e45935c79c41e8098d984d87335004baccb1d/rpds_py-0.20.0-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:49a8063ea4296b3a7e81a5dfb8f7b2d73f0b1c20c2af401fb0cdf22e14711a96", size = 426824 }, + { url = "https://files.pythonhosted.org/packages/0f/f7/a59a673594e6c2ff2dbc44b00fd4ecdec2fc399bb6a7bd82d612699a0121/rpds_py-0.20.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ea438162a9fcbee3ecf36c23e6c68237479f89f962f82dae83dc15feeceb37e4", size = 357967 }, + { url = "https://files.pythonhosted.org/packages/5f/61/3ba1905396b2cb7088f9503a460b87da33452da54d478cb9241f6ad16d00/rpds_py-0.20.0-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:18d7585c463087bddcfa74c2ba267339f14f2515158ac4db30b1f9cbdb62c8ef", size = 378905 }, + { url = "https://files.pythonhosted.org/packages/08/31/6d0df9356b4edb0a3a077f1ef714e25ad21f9f5382fc490c2383691885ea/rpds_py-0.20.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:d4c7d1a051eeb39f5c9547e82ea27cbcc28338482242e3e0b7768033cb083821", size = 546348 }, + { url = "https://files.pythonhosted.org/packages/ae/15/d33c021de5cb793101df9961c3c746dfc476953dbbf5db337d8010dffd4e/rpds_py-0.20.0-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:e4df1e3b3bec320790f699890d41c59d250f6beda159ea3c44c3f5bac1976940", size = 553152 }, + { url = "https://files.pythonhosted.org/packages/70/2d/5536d28c507a4679179ab15aa0049440e4d3dd6752050fa0843ed11e9354/rpds_py-0.20.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:2cf126d33a91ee6eedc7f3197b53e87a2acdac63602c0f03a02dd69e4b138174", size = 528807 }, + { url = "https://files.pythonhosted.org/packages/e3/62/7ebe6ec0d3dd6130921f8cffb7e34afb7f71b3819aa0446a24c5e81245ec/rpds_py-0.20.0-cp312-none-win32.whl", hash = "sha256:8bc7690f7caee50b04a79bf017a8d020c1f48c2a1077ffe172abec59870f1139", size = 200993 }, + { url = "https://files.pythonhosted.org/packages/ec/2f/b938864d66b86a6e4acadefdc56de75ef56f7cafdfd568a6464605457bd5/rpds_py-0.20.0-cp312-none-win_amd64.whl", hash = "sha256:0e13e6952ef264c40587d510ad676a988df19adea20444c2b295e536457bc585", size = 214458 }, + { url = "https://files.pythonhosted.org/packages/99/32/43b919a0a423c270a838ac2726b1c7168b946f2563fd99a51aaa9692d00f/rpds_py-0.20.0-cp313-cp313-macosx_10_12_x86_64.whl", hash = "sha256:aa9a0521aeca7d4941499a73ad7d4f8ffa3d1affc50b9ea11d992cd7eff18a29", size = 321465 }, + { url = "https://files.pythonhosted.org/packages/58/a9/c4d899cb28e9e47b0ff12462e8f827381f243176036f17bef9c1604667f2/rpds_py-0.20.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:4a1f1d51eccb7e6c32ae89243cb352389228ea62f89cd80823ea7dd1b98e0b91", size = 312900 }, + { url = "https://files.pythonhosted.org/packages/8f/90/9e51670575b5dfaa8c823369ef7d943087bfb73d4f124a99ad6ef19a2b26/rpds_py-0.20.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8a86a9b96070674fc88b6f9f71a97d2c1d3e5165574615d1f9168ecba4cecb24", size = 370973 }, + { url = "https://files.pythonhosted.org/packages/fc/c1/523f2a03f853fc0d4c1acbef161747e9ab7df0a8abf6236106e333540921/rpds_py-0.20.0-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:6c8ef2ebf76df43f5750b46851ed1cdf8f109d7787ca40035fe19fbdc1acc5a7", size = 370890 }, + { url = "https://files.pythonhosted.org/packages/51/ca/2458a771f16b0931de4d384decbe43016710bc948036c8f4562d6e063437/rpds_py-0.20.0-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b74b25f024b421d5859d156750ea9a65651793d51b76a2e9238c05c9d5f203a9", size = 397174 }, + { url = "https://files.pythonhosted.org/packages/00/7d/6e06807f6305ea2408b364efb0eef83a6e21b5e7b5267ad6b473b9a7e416/rpds_py-0.20.0-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:57eb94a8c16ab08fef6404301c38318e2c5a32216bf5de453e2714c964c125c8", size = 426449 }, + { url = "https://files.pythonhosted.org/packages/8c/d1/6c9e65260a819a1714510a7d69ac1d68aa23ee9ce8a2d9da12187263c8fc/rpds_py-0.20.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e1940dae14e715e2e02dfd5b0f64a52e8374a517a1e531ad9412319dc3ac7879", size = 357698 }, + { url = "https://files.pythonhosted.org/packages/5d/fb/ecea8b5286d2f03eec922be7173a03ed17278944f7c124348f535116db15/rpds_py-0.20.0-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:d20277fd62e1b992a50c43f13fbe13277a31f8c9f70d59759c88f644d66c619f", size = 378530 }, + { url = "https://files.pythonhosted.org/packages/e3/e3/ac72f858957f52a109c588589b73bd2fad4a0fc82387fb55fb34aeb0f9cd/rpds_py-0.20.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:06db23d43f26478303e954c34c75182356ca9aa7797d22c5345b16871ab9c45c", size = 545753 }, + { url = "https://files.pythonhosted.org/packages/b2/a4/a27683b519d5fc98e4390a3b130117d80fd475c67aeda8aac83c0e8e326a/rpds_py-0.20.0-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:b2a5db5397d82fa847e4c624b0c98fe59d2d9b7cf0ce6de09e4d2e80f8f5b3f2", size = 552443 }, + { url = "https://files.pythonhosted.org/packages/a1/ed/c074d248409b4432b1ccb2056974175fa0af2d1bc1f9c21121f80a358fa3/rpds_py-0.20.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:5a35df9f5548fd79cb2f52d27182108c3e6641a4feb0f39067911bf2adaa3e57", size = 528380 }, + { url = "https://files.pythonhosted.org/packages/d5/bd/04caf938895d2d78201e89c0c8a94dfd9990c34a19ff52fb01d0912343e3/rpds_py-0.20.0-cp313-none-win32.whl", hash = "sha256:fd2d84f40633bc475ef2d5490b9c19543fbf18596dcb1b291e3a12ea5d722f7a", size = 200540 }, + { url = "https://files.pythonhosted.org/packages/95/cc/109eb8b9863680411ae703664abacaa035820c7755acc9686d5dd02cdd2e/rpds_py-0.20.0-cp313-none-win_amd64.whl", hash = "sha256:9bc2d153989e3216b0559251b0c260cfd168ec78b1fac33dd485750a228db5a2", size = 214111 }, + { url = "https://files.pythonhosted.org/packages/06/39/bf1f664c347c946ef56cecaa896e3693d91acc741afa78ebb3fdb7aba08b/rpds_py-0.20.0-pp310-pypy310_pp73-macosx_10_12_x86_64.whl", hash = "sha256:617c7357272c67696fd052811e352ac54ed1d9b49ab370261a80d3b6ce385045", size = 319444 }, + { url = "https://files.pythonhosted.org/packages/c1/71/876135d3cb90d62468540b84e8e83ff4dc92052ab309bfdea7ea0b9221ad/rpds_py-0.20.0-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:9426133526f69fcaba6e42146b4e12d6bc6c839b8b555097020e2b78ce908dcc", size = 311699 }, + { url = "https://files.pythonhosted.org/packages/f7/da/8ccaeba6a3dda7467aebaf893de9eafd56275e2c90773c83bf15fb0b8374/rpds_py-0.20.0-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:deb62214c42a261cb3eb04d474f7155279c1a8a8c30ac89b7dcb1721d92c3c02", size = 367825 }, + { url = "https://files.pythonhosted.org/packages/04/b6/02a54c47c178d180395b3c9a8bfb3b93906e08f9acf7b4a1067d27c3fae0/rpds_py-0.20.0-pp310-pypy310_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:fcaeb7b57f1a1e071ebd748984359fef83ecb026325b9d4ca847c95bc7311c92", size = 369046 }, + { url = "https://files.pythonhosted.org/packages/a7/64/df4966743aa4def8727dc13d06527c8b13eb7412c1429def2d4701bee520/rpds_py-0.20.0-pp310-pypy310_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:d454b8749b4bd70dd0a79f428731ee263fa6995f83ccb8bada706e8d1d3ff89d", size = 395896 }, + { url = "https://files.pythonhosted.org/packages/6f/d9/7ff03ff3642c600f27ff94512bb158a8d815fea5ed4162c75a7e850d6003/rpds_py-0.20.0-pp310-pypy310_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:d807dc2051abe041b6649681dce568f8e10668e3c1c6543ebae58f2d7e617855", size = 432427 }, + { url = "https://files.pythonhosted.org/packages/b8/c6/e1b886f7277b3454e55e85332e165091c19114eecb5377b88d892fd36ccf/rpds_py-0.20.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c3c20f0ddeb6e29126d45f89206b8291352b8c5b44384e78a6499d68b52ae511", size = 355403 }, + { url = "https://files.pythonhosted.org/packages/e2/62/e26bd5b944e547c7bfd0b6ca7e306bfa430f8bd298ab72a1217976a7ca8d/rpds_py-0.20.0-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:b7f19250ceef892adf27f0399b9e5afad019288e9be756d6919cb58892129f51", size = 374491 }, + { url = "https://files.pythonhosted.org/packages/c3/92/93c5a530898d3a5d1ce087455071ba714b77806ed9ffee4070d0c7a53b7e/rpds_py-0.20.0-pp310-pypy310_pp73-musllinux_1_2_aarch64.whl", hash = "sha256:4f1ed4749a08379555cebf4650453f14452eaa9c43d0a95c49db50c18b7da075", size = 543622 }, + { url = "https://files.pythonhosted.org/packages/01/9e/d68fba289625b5d3c9d1925825d7da716fbf812bda2133ac409021d5db13/rpds_py-0.20.0-pp310-pypy310_pp73-musllinux_1_2_i686.whl", hash = "sha256:dcedf0b42bcb4cfff4101d7771a10532415a6106062f005ab97d1d0ab5681c60", size = 548558 }, + { url = "https://files.pythonhosted.org/packages/bf/d6/4b2fad4898154365f0f2bd72ffd190349274a4c1d6a6f94f02a83bb2b8f1/rpds_py-0.20.0-pp310-pypy310_pp73-musllinux_1_2_x86_64.whl", hash = "sha256:39ed0d010457a78f54090fafb5d108501b5aa5604cc22408fc1c0c77eac14344", size = 525753 }, + { url = "https://files.pythonhosted.org/packages/d2/ea/6f121d1802f3adae1981aea4209ea66f9d3c7f2f6d6b85ef4f13a61d17ef/rpds_py-0.20.0-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:bb273176be34a746bdac0b0d7e4e2c467323d13640b736c4c477881a3220a989", size = 213529 }, +] + +[[package]] +name = "send2trash" +version = "1.8.3" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/fd/3a/aec9b02217bb79b87bbc1a21bc6abc51e3d5dcf65c30487ac96c0908c722/Send2Trash-1.8.3.tar.gz", hash = "sha256:b18e7a3966d99871aefeb00cfbcfdced55ce4871194810fc71f4aa484b953abf", size = 17394 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/40/b0/4562db6223154aa4e22f939003cb92514c79f3d4dccca3444253fd17f902/Send2Trash-1.8.3-py3-none-any.whl", hash = "sha256:0c31227e0bd08961c7665474a3d1ef7193929fedda4233843689baa056be46c9", size = 18072 }, +] + +[[package]] +name = "setuptools" +version = "75.1.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/27/b8/f21073fde99492b33ca357876430822e4800cdf522011f18041351dfa74b/setuptools-75.1.0.tar.gz", hash = "sha256:d59a21b17a275fb872a9c3dae73963160ae079f1049ed956880cd7c09b120538", size = 1348057 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/ff/ae/f19306b5a221f6a436d8f2238d5b80925004093fa3edea59835b514d9057/setuptools-75.1.0-py3-none-any.whl", hash = "sha256:35ab7fd3bcd95e6b7fd704e4a1539513edad446c097797f2985e0e4b960772f2", size = 1248506 }, +] + +[[package]] +name = "six" +version = "1.16.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/71/39/171f1c67cd00715f190ba0b100d606d440a28c93c7714febeca8b79af85e/six-1.16.0.tar.gz", hash = "sha256:1e61c37477a1626458e36f7b1d82aa5c9b094fa4802892072e49de9c60c4c926", size = 34041 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/d9/5a/e7c31adbe875f2abbb91bd84cf2dc52d792b5a01506781dbcf25c91daf11/six-1.16.0-py2.py3-none-any.whl", hash = "sha256:8abb2f1d86890a2dfb989f9a77cfcfd3e47c2a354b01111771326f8aa26e0254", size = 11053 }, +] + +[[package]] +name = "sniffio" +version = "1.3.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/a2/87/a6771e1546d97e7e041b6ae58d80074f81b7d5121207425c964ddf5cfdbd/sniffio-1.3.1.tar.gz", hash = "sha256:f4324edc670a0f49750a81b895f35c3adb843cca46f0530f79fc1babb23789dc", size = 20372 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/e9/44/75a9c9421471a6c4805dbf2356f7c181a29c1879239abab1ea2cc8f38b40/sniffio-1.3.1-py3-none-any.whl", hash = "sha256:2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2", size = 10235 }, +] + +[[package]] +name = "soupsieve" +version = "2.6" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/d7/ce/fbaeed4f9fb8b2daa961f90591662df6a86c1abf25c548329a86920aedfb/soupsieve-2.6.tar.gz", hash = "sha256:e2e68417777af359ec65daac1057404a3c8a5455bb8abc36f1a9866ab1a51abb", size = 101569 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/d1/c2/fe97d779f3ef3b15f05c94a2f1e3d21732574ed441687474db9d342a7315/soupsieve-2.6-py3-none-any.whl", hash = "sha256:e72c4ff06e4fb6e4b5a9f0f55fe6e81514581fca1515028625d0f299c602ccc9", size = 36186 }, +] + +[[package]] +name = "stack-data" +version = "0.6.3" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "asttokens" }, + { name = "executing" }, + { name = "pure-eval" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/28/e3/55dcc2cfbc3ca9c29519eb6884dd1415ecb53b0e934862d3559ddcb7e20b/stack_data-0.6.3.tar.gz", hash = "sha256:836a778de4fec4dcd1dcd89ed8abff8a221f58308462e1c4aa2a3cf30148f0b9", size = 44707 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/f1/7b/ce1eafaf1a76852e2ec9b22edecf1daa58175c090266e9f6c64afcd81d91/stack_data-0.6.3-py3-none-any.whl", hash = "sha256:d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695", size = 24521 }, +] + +[[package]] +name = "terminado" +version = "0.18.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "ptyprocess", marker = "os_name != 'nt'" }, + { name = "pywinpty", marker = "os_name == 'nt'" }, + { name = "tornado" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/8a/11/965c6fd8e5cc254f1fe142d547387da17a8ebfd75a3455f637c663fb38a0/terminado-0.18.1.tar.gz", hash = "sha256:de09f2c4b85de4765f7714688fff57d3e75bad1f909b589fde880460c753fd2e", size = 32701 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/6a/9e/2064975477fdc887e47ad42157e214526dcad8f317a948dee17e1659a62f/terminado-0.18.1-py3-none-any.whl", hash = "sha256:a4468e1b37bb318f8a86514f65814e1afc977cf29b3992a4500d9dd305dcceb0", size = 14154 }, +] + +[[package]] +name = "tinycss2" +version = "1.3.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "webencodings" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/44/6f/38d2335a2b70b9982d112bb177e3dbe169746423e33f718bf5e9c7b3ddd3/tinycss2-1.3.0.tar.gz", hash = "sha256:152f9acabd296a8375fbca5b84c961ff95971fcfc32e79550c8df8e29118c54d", size = 67360 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/2c/4d/0db5b8a613d2a59bbc29bc5bb44a2f8070eb9ceab11c50d477502a8a0092/tinycss2-1.3.0-py3-none-any.whl", hash = "sha256:54a8dbdffb334d536851be0226030e9505965bb2f30f21a4a82c55fb2a80fae7", size = 22532 }, +] + +[[package]] +name = "tomli" +version = "2.0.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/c0/3f/d7af728f075fb08564c5949a9c95e44352e23dee646869fa104a3b2060a3/tomli-2.0.1.tar.gz", hash = "sha256:de526c12914f0c550d15924c62d72abc48d6fe7364aa87328337a31007fe8a4f", size = 15164 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/97/75/10a9ebee3fd790d20926a90a2547f0bf78f371b2f13aa822c759680ca7b9/tomli-2.0.1-py3-none-any.whl", hash = "sha256:939de3e7a6161af0c887ef91b7d41a53e7c5a1ca976325f429cb46ea9bc30ecc", size = 12757 }, +] + +[[package]] +name = "tornado" +version = "6.4.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/ee/66/398ac7167f1c7835406888a386f6d0d26ee5dbf197d8a571300be57662d3/tornado-6.4.1.tar.gz", hash = "sha256:92d3ab53183d8c50f8204a51e6f91d18a15d5ef261e84d452800d4ff6fc504e9", size = 500623 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/00/d9/c33be3c1a7564f7d42d87a8d186371a75fd142097076767a5c27da941fef/tornado-6.4.1-cp38-abi3-macosx_10_9_universal2.whl", hash = "sha256:163b0aafc8e23d8cdc3c9dfb24c5368af84a81e3364745ccb4427669bf84aec8", size = 435924 }, + { url = "https://files.pythonhosted.org/packages/2e/0f/721e113a2fac2f1d7d124b3279a1da4c77622e104084f56119875019ffab/tornado-6.4.1-cp38-abi3-macosx_10_9_x86_64.whl", hash = "sha256:6d5ce3437e18a2b66fbadb183c1d3364fb03f2be71299e7d10dbeeb69f4b2a14", size = 433883 }, + { url = "https://files.pythonhosted.org/packages/13/cf/786b8f1e6fe1c7c675e79657448178ad65e41c1c9765ef82e7f6f765c4c5/tornado-6.4.1-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e2e20b9113cd7293f164dc46fffb13535266e713cdb87bd2d15ddb336e96cfc4", size = 437224 }, + { url = "https://files.pythonhosted.org/packages/e4/8e/a6ce4b8d5935558828b0f30f3afcb2d980566718837b3365d98e34f6067e/tornado-6.4.1-cp38-abi3-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:8ae50a504a740365267b2a8d1a90c9fbc86b780a39170feca9bcc1787ff80842", size = 436597 }, + { url = "https://files.pythonhosted.org/packages/22/d4/54f9d12668b58336bd30defe0307e6c61589a3e687b05c366f804b7faaf0/tornado-6.4.1-cp38-abi3-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:613bf4ddf5c7a95509218b149b555621497a6cc0d46ac341b30bd9ec19eac7f3", size = 436797 }, + { url = "https://files.pythonhosted.org/packages/cf/3f/2c792e7afa7dd8b24fad7a2ed3c2f24a5ec5110c7b43a64cb6095cc106b8/tornado-6.4.1-cp38-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:25486eb223babe3eed4b8aecbac33b37e3dd6d776bc730ca14e1bf93888b979f", size = 437516 }, + { url = "https://files.pythonhosted.org/packages/71/63/c8fc62745e669ac9009044b889fc531b6f88ac0f5f183cac79eaa950bb23/tornado-6.4.1-cp38-abi3-musllinux_1_2_i686.whl", hash = "sha256:454db8a7ecfcf2ff6042dde58404164d969b6f5d58b926da15e6b23817950fc4", size = 436958 }, + { url = "https://files.pythonhosted.org/packages/94/d4/f8ac1f5bd22c15fad3b527e025ce219bd526acdbd903f52053df2baecc8b/tornado-6.4.1-cp38-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:a02a08cc7a9314b006f653ce40483b9b3c12cda222d6a46d4ac63bb6c9057698", size = 436882 }, + { url = "https://files.pythonhosted.org/packages/4b/3e/a8124c21cc0bbf144d7903d2a0cadab15cadaf683fa39a0f92bc567f0d4d/tornado-6.4.1-cp38-abi3-win32.whl", hash = "sha256:d9a566c40b89757c9aa8e6f032bcdb8ca8795d7c1a9762910c722b1635c9de4d", size = 438092 }, + { url = "https://files.pythonhosted.org/packages/d9/2f/3f2f05e84a7aff787a96d5fb06821323feb370fe0baed4db6ea7b1088f32/tornado-6.4.1-cp38-abi3-win_amd64.whl", hash = "sha256:b24b8982ed444378d7f21d563f4180a2de31ced9d8d84443907a0a64da2072e7", size = 438532 }, +] + +[[package]] +name = "traitlets" +version = "5.14.3" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/eb/79/72064e6a701c2183016abbbfedaba506d81e30e232a68c9f0d6f6fcd1574/traitlets-5.14.3.tar.gz", hash = "sha256:9ed0579d3502c94b4b3732ac120375cda96f923114522847de4b3bb98b96b6b7", size = 161621 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/00/c0/8f5d070730d7836adc9c9b6408dec68c6ced86b304a9b26a14df072a6e8c/traitlets-5.14.3-py3-none-any.whl", hash = "sha256:b74e89e397b1ed28cc831db7aea759ba6640cb3de13090ca145426688ff1ac4f", size = 85359 }, +] + +[[package]] +name = "types-python-dateutil" +version = "2.9.0.20240906" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/3e/d9/9c9ec2d870af7aa9b722ce4fd5890bb55b1d18898df7f1d069cab194bb2a/types-python-dateutil-2.9.0.20240906.tar.gz", hash = "sha256:9706c3b68284c25adffc47319ecc7947e5bb86b3773f843c73906fd598bc176e", size = 9169 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/aa/4c/5c684b333135a6fb085bb5a5bdfd962937f80bec06745a88fd551e29f4d9/types_python_dateutil-2.9.0.20240906-py3-none-any.whl", hash = "sha256:27c8cc2d058ccb14946eebcaaa503088f4f6dbc4fb6093d3d456a49aef2753f6", size = 9693 }, +] + +[[package]] +name = "typing-extensions" +version = "4.12.2" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/df/db/f35a00659bc03fec321ba8bce9420de607a1d37f8342eee1863174c69557/typing_extensions-4.12.2.tar.gz", hash = "sha256:1a7ead55c7e559dd4dee8856e3a88b41225abfe1ce8df57b7c13915fe121ffb8", size = 85321 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/26/9f/ad63fc0248c5379346306f8668cda6e2e2e9c95e01216d2b8ffd9ff037d0/typing_extensions-4.12.2-py3-none-any.whl", hash = "sha256:04e5ca0351e0f3f85c6853954072df659d0d13fac324d0072316b67d7794700d", size = 37438 }, +] + +[[package]] +name = "uri-template" +version = "1.3.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/31/c7/0336f2bd0bcbada6ccef7aaa25e443c118a704f828a0620c6fa0207c1b64/uri-template-1.3.0.tar.gz", hash = "sha256:0e00f8eb65e18c7de20d595a14336e9f337ead580c70934141624b6d1ffdacc7", size = 21678 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/e7/00/3fca040d7cf8a32776d3d81a00c8ee7457e00f80c649f1e4a863c8321ae9/uri_template-1.3.0-py3-none-any.whl", hash = "sha256:a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363", size = 11140 }, +] + +[[package]] +name = "urllib3" +version = "2.2.3" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/ed/63/22ba4ebfe7430b76388e7cd448d5478814d3032121827c12a2cc287e2260/urllib3-2.2.3.tar.gz", hash = "sha256:e7d814a81dad81e6caf2ec9fdedb284ecc9c73076b62654547cc64ccdcae26e9", size = 300677 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/ce/d9/5f4c13cecde62396b0d3fe530a50ccea91e7dfc1ccf0e09c228841bb5ba8/urllib3-2.2.3-py3-none-any.whl", hash = "sha256:ca899ca043dcb1bafa3e262d73aa25c465bfb49e0bd9dd5d59f1d0acba2f8fac", size = 126338 }, +] + +[[package]] +name = "wcwidth" +version = "0.2.13" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/6c/63/53559446a878410fc5a5974feb13d31d78d752eb18aeba59c7fef1af7598/wcwidth-0.2.13.tar.gz", hash = "sha256:72ea0c06399eb286d978fdedb6923a9eb47e1c486ce63e9b4e64fc18303972b5", size = 101301 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/fd/84/fd2ba7aafacbad3c4201d395674fc6348826569da3c0937e75505ead3528/wcwidth-0.2.13-py2.py3-none-any.whl", hash = "sha256:3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859", size = 34166 }, +] + +[[package]] +name = "webcolors" +version = "24.8.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/fe/f8/53150a5bda7e042840b14f0236e1c0a4819d403658e3d453237983addfac/webcolors-24.8.0.tar.gz", hash = "sha256:08b07af286a01bcd30d583a7acadf629583d1f79bfef27dd2c2c5c263817277d", size = 42392 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/f0/33/12020ba99beaff91682b28dc0bbf0345bbc3244a4afbae7644e4fa348f23/webcolors-24.8.0-py3-none-any.whl", hash = "sha256:fc4c3b59358ada164552084a8ebee637c221e4059267d0f8325b3b560f6c7f0a", size = 15027 }, +] + +[[package]] +name = "webencodings" +version = "0.5.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/0b/02/ae6ceac1baeda530866a85075641cec12989bd8d31af6d5ab4a3e8c92f47/webencodings-0.5.1.tar.gz", hash = "sha256:b36a1c245f2d304965eb4e0a82848379241dc04b865afcc4aab16748587e1923", size = 9721 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/f4/24/2a3e3df732393fed8b3ebf2ec078f05546de641fe1b667ee316ec1dcf3b7/webencodings-0.5.1-py2.py3-none-any.whl", hash = "sha256:a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78", size = 11774 }, +] + +[[package]] +name = "websocket-client" +version = "1.8.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/e6/30/fba0d96b4b5fbf5948ed3f4681f7da2f9f64512e1d303f94b4cc174c24a5/websocket_client-1.8.0.tar.gz", hash = "sha256:3239df9f44da632f96012472805d40a23281a991027ce11d2f45a6f24ac4c3da", size = 54648 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/5a/84/44687a29792a70e111c5c477230a72c4b957d88d16141199bf9acb7537a3/websocket_client-1.8.0-py3-none-any.whl", hash = "sha256:17b44cc997f5c498e809b22cdf2d9c7a9e71c02c8cc2b6c56e7c2d1239bfa526", size = 58826 }, +] + +[[package]] +name = "widgetsnbextension" +version = "4.0.13" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/56/fc/238c424fd7f4ebb25f8b1da9a934a3ad7c848286732ae04263661eb0fc03/widgetsnbextension-4.0.13.tar.gz", hash = "sha256:ffcb67bc9febd10234a362795f643927f4e0c05d9342c727b65d2384f8feacb6", size = 1164730 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/21/02/88b65cc394961a60c43c70517066b6b679738caf78506a5da7b88ffcb643/widgetsnbextension-4.0.13-py3-none-any.whl", hash = "sha256:74b2692e8500525cc38c2b877236ba51d34541e6385eeed5aec15a70f88a6c71", size = 2335872 }, +]