├── .gitignore ├── LICENSE ├── Pipfile ├── Pipfile.lock ├── README.md ├── codex_params.toml ├── logo.png ├── modes.toml ├── mouse.gif ├── requirements.txt └── streamlit_app.py /.gitignore: -------------------------------------------------------------------------------- 1 | # Streamlit runtime information 2 | .streamlit 3 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | Apache License 2 | Version 2.0, January 2004 3 | http://www.apache.org/licenses/ 4 | 5 | TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION 6 | 7 | 1. Definitions. 8 | 9 | "License" shall mean the terms and conditions for use, reproduction, 10 | and distribution as defined by Sections 1 through 9 of this document. 11 | 12 | "Licensor" shall mean the copyright owner or entity authorized by 13 | the copyright owner that is granting the License. 14 | 15 | "Legal Entity" shall mean the union of the acting entity and all 16 | other entities that control, are controlled by, or are under common 17 | control with that entity. For the purposes of this definition, 18 | "control" means (i) the power, direct or indirect, to cause the 19 | direction or management of such entity, whether by contract or 20 | otherwise, or (ii) ownership of fifty percent (50%) or more of the 21 | outstanding shares, or (iii) beneficial ownership of such entity. 22 | 23 | "You" (or "Your") shall mean an individual or Legal Entity 24 | exercising permissions granted by this License. 25 | 26 | "Source" form shall mean the preferred form for making modifications, 27 | including but not limited to software source code, documentation 28 | source, and configuration files. 29 | 30 | "Object" form shall mean any form resulting from mechanical 31 | transformation or translation of a Source form, including but 32 | not limited to compiled object code, generated documentation, 33 | and conversions to other media types. 34 | 35 | "Work" shall mean the work of authorship, whether in Source or 36 | Object form, made available under the License, as indicated by a 37 | copyright notice that is included in or attached to the work 38 | (an example is provided in the Appendix below). 39 | 40 | "Derivative Works" shall mean any work, whether in Source or Object 41 | form, that is based on (or derived from) the Work and for which the 42 | editorial revisions, annotations, elaborations, or other modifications 43 | represent, as a whole, an original work of authorship. For the purposes 44 | of this License, Derivative Works shall not include works that remain 45 | separable from, or merely link (or bind by name) to the interfaces of, 46 | the Work and Derivative Works thereof. 47 | 48 | "Contribution" shall mean any work of authorship, including 49 | the original version of the Work and any modifications or additions 50 | to that Work or Derivative Works thereof, that is intentionally 51 | submitted to Licensor for inclusion in the Work by the copyright owner 52 | or by an individual or Legal Entity authorized to submit on behalf of 53 | the copyright owner. For the purposes of this definition, "submitted" 54 | means any form of electronic, verbal, or written communication sent 55 | to the Licensor or its representatives, including but not limited to 56 | communication on electronic mailing lists, source code control systems, 57 | and issue tracking systems that are managed by, or on behalf of, the 58 | Licensor for the purpose of discussing and improving the Work, but 59 | excluding communication that is conspicuously marked or otherwise 60 | designated in writing by the copyright owner as "Not a Contribution." 61 | 62 | "Contributor" shall mean Licensor and any individual or Legal Entity 63 | on behalf of whom a Contribution has been received by Licensor and 64 | subsequently incorporated within the Work. 65 | 66 | 2. Grant of Copyright License. Subject to the terms and conditions of 67 | this License, each Contributor hereby grants to You a perpetual, 68 | worldwide, non-exclusive, no-charge, royalty-free, irrevocable 69 | copyright license to reproduce, prepare Derivative Works of, 70 | publicly display, publicly perform, sublicense, and distribute the 71 | Work and such Derivative Works in Source or Object form. 72 | 73 | 3. Grant of Patent License. Subject to the terms and conditions of 74 | this License, each Contributor hereby grants to You a perpetual, 75 | worldwide, non-exclusive, no-charge, royalty-free, irrevocable 76 | (except as stated in this section) patent license to make, have made, 77 | use, offer to sell, sell, import, and otherwise transfer the Work, 78 | where such license applies only to those patent claims licensable 79 | by such Contributor that are necessarily infringed by their 80 | Contribution(s) alone or by combination of their Contribution(s) 81 | with the Work to which such Contribution(s) was submitted. If You 82 | institute patent litigation against any entity (including a 83 | cross-claim or counterclaim in a lawsuit) alleging that the Work 84 | or a Contribution incorporated within the Work constitutes direct 85 | or contributory patent infringement, then any patent licenses 86 | granted to You under this License for that Work shall terminate 87 | as of the date such litigation is filed. 88 | 89 | 4. Redistribution. You may reproduce and distribute copies of the 90 | Work or Derivative Works thereof in any medium, with or without 91 | modifications, and in Source or Object form, provided that You 92 | meet the following conditions: 93 | 94 | (a) You must give any other recipients of the Work or 95 | Derivative Works a copy of this License; and 96 | 97 | (b) You must cause any modified files to carry prominent notices 98 | stating that You changed the files; and 99 | 100 | (c) You must retain, in the Source form of any Derivative Works 101 | that You distribute, all copyright, patent, trademark, and 102 | attribution notices from the Source form of the Work, 103 | excluding those notices that do not pertain to any part of 104 | the Derivative Works; and 105 | 106 | (d) If the Work includes a "NOTICE" text file as part of its 107 | distribution, then any Derivative Works that You distribute must 108 | include a readable copy of the attribution notices contained 109 | within such NOTICE file, excluding those notices that do not 110 | pertain to any part of the Derivative Works, in at least one 111 | of the following places: within a NOTICE text file distributed 112 | as part of the Derivative Works; within the Source form or 113 | documentation, if provided along with the Derivative Works; or, 114 | within a display generated by the Derivative Works, if and 115 | wherever such third-party notices normally appear. The contents 116 | of the NOTICE file are for informational purposes only and 117 | do not modify the License. You may add Your own attribution 118 | notices within Derivative Works that You distribute, alongside 119 | or as an addendum to the NOTICE text from the Work, provided 120 | that such additional attribution notices cannot be construed 121 | as modifying the License. 122 | 123 | You may add Your own copyright statement to Your modifications and 124 | may provide additional or different license terms and conditions 125 | for use, reproduction, or distribution of Your modifications, or 126 | for any such Derivative Works as a whole, provided Your use, 127 | reproduction, and distribution of the Work otherwise complies with 128 | the conditions stated in this License. 129 | 130 | 5. Submission of Contributions. Unless You explicitly state otherwise, 131 | any Contribution intentionally submitted for inclusion in the Work 132 | by You to the Licensor shall be under the terms and conditions of 133 | this License, without any additional terms or conditions. 134 | Notwithstanding the above, nothing herein shall supersede or modify 135 | the terms of any separate license agreement you may have executed 136 | with Licensor regarding such Contributions. 137 | 138 | 6. Trademarks. This License does not grant permission to use the trade 139 | names, trademarks, service marks, or product names of the Licensor, 140 | except as required for reasonable and customary use in describing the 141 | origin of the Work and reproducing the content of the NOTICE file. 142 | 143 | 7. Disclaimer of Warranty. Unless required by applicable law or 144 | agreed to in writing, Licensor provides the Work (and each 145 | Contributor provides its Contributions) on an "AS IS" BASIS, 146 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or 147 | implied, including, without limitation, any warranties or conditions 148 | of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A 149 | PARTICULAR PURPOSE. You are solely responsible for determining the 150 | appropriateness of using or redistributing the Work and assume any 151 | risks associated with Your exercise of permissions under this License. 152 | 153 | 8. Limitation of Liability. In no event and under no legal theory, 154 | whether in tort (including negligence), contract, or otherwise, 155 | unless required by applicable law (such as deliberate and grossly 156 | negligent acts) or agreed to in writing, shall any Contributor be 157 | liable to You for damages, including any direct, indirect, special, 158 | incidental, or consequential damages of any character arising as a 159 | result of this License or out of the use or inability to use the 160 | Work (including but not limited to damages for loss of goodwill, 161 | work stoppage, computer failure or malfunction, or any and all 162 | other commercial damages or losses), even if such Contributor 163 | has been advised of the possibility of such damages. 164 | 165 | 9. Accepting Warranty or Additional Liability. While redistributing 166 | the Work or Derivative Works thereof, You may choose to offer, 167 | and charge a fee for, acceptance of support, warranty, indemnity, 168 | or other liability obligations and/or rights consistent with this 169 | License. However, in accepting such obligations, You may act only 170 | on Your own behalf and on Your sole responsibility, not on behalf 171 | of any other Contributor, and only if You agree to indemnify, 172 | defend, and hold each Contributor harmless for any liability 173 | incurred by, or claims asserted against, such Contributor by reason 174 | of your accepting any such warranty or additional liability. 175 | 176 | END OF TERMS AND CONDITIONS 177 | 178 | APPENDIX: How to apply the Apache License to your work. 179 | 180 | To apply the Apache License to your work, attach the following 181 | boilerplate notice, with the fields enclosed by brackets "[]" 182 | replaced with your own identifying information. (Don't include 183 | the brackets!) The text should be enclosed in the appropriate 184 | comment syntax for the file format. We also recommend that a 185 | file or class name and description of purpose be included on the 186 | same "printed page" as the copyright notice for easier 187 | identification within third-party archives. 188 | 189 | Copyright [yyyy] [name of copyright owner] 190 | 191 | Licensed under the Apache License, Version 2.0 (the "License"); 192 | you may not use this file except in compliance with the License. 193 | You may obtain a copy of the License at 194 | 195 | http://www.apache.org/licenses/LICENSE-2.0 196 | 197 | Unless required by applicable law or agreed to in writing, software 198 | distributed under the License is distributed on an "AS IS" BASIS, 199 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 200 | See the License for the specific language governing permissions and 201 | limitations under the License. 202 | -------------------------------------------------------------------------------- /Pipfile: -------------------------------------------------------------------------------- 1 | [[source]] 2 | url = "https://pypi.org/simple" 3 | verify_ssl = true 4 | name = "pypi" 5 | 6 | [packages] 7 | 8 | streamlit = "*" 9 | transformers = "*" 10 | openai = "*" 11 | yfinance = "*" 12 | plotly = "*" 13 | streamlit-ace = "*" 14 | polyfuzz = "*" 15 | 16 | 17 | 18 | [dev-packages] 19 | black = "*" # Pretty formatting of Python code 20 | pynvim = "*" # Allows nvim users to use black formatting 21 | 22 | [pipenv] 23 | allow_prereleases = true 24 | -------------------------------------------------------------------------------- /Pipfile.lock: -------------------------------------------------------------------------------- 1 | { 2 | "_meta": { 3 | "hash": { 4 | "sha256": "d5757f88085e319a15e2637753eec1ab7e50efcbd7ac18be613ae950a0489e4e" 5 | }, 6 | "pipfile-spec": 6, 7 | "requires": {}, 8 | "sources": [ 9 | { 10 | "name": "pypi", 11 | "url": "https://pypi.org/simple", 12 | "verify_ssl": true 13 | } 14 | ] 15 | }, 16 | "default": { 17 | "altair": { 18 | "hashes": [ 19 | "sha256:0c724848ae53410c13fa28be2b3b9a9dcb7b5caa1a70f7f217bd663bb419935a", 20 | "sha256:d87d9372e63b48cd96b2a6415f0cf9457f50162ab79dc7a31cd7e024dd840026" 21 | ], 22 | "markers": "python_version >= '3.7'", 23 | "version": "==4.2.0" 24 | }, 25 | "astor": { 26 | "hashes": [ 27 | "sha256:070a54e890cefb5b3739d19f30f5a5ec840ffc9c50ffa7d23cc9fc1a38ebbfc5", 28 | "sha256:6a6effda93f4e1ce9f618779b2dd1d9d84f1e32812c23a29b3fff6fd7f63fa5e" 29 | ], 30 | "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'", 31 | "version": "==0.8.1" 32 | }, 33 | "attrs": { 34 | "hashes": [ 35 | "sha256:2d27e3784d7a565d36ab851fe94887c5eccd6a463168875832a1be79c82828b4", 36 | "sha256:626ba8234211db98e869df76230a137c4c40a12d72445c45d5f5b716f076e2fd" 37 | ], 38 | "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4'", 39 | "version": "==21.4.0" 40 | }, 41 | "backcall": { 42 | "hashes": [ 43 | "sha256:5cbdbf27be5e7cfadb448baf0aa95508f91f2bbc6c6437cd9cd06e2a4c215e1e", 44 | "sha256:fbbce6a29f263178a1f7915c1940bde0ec2b2a967566fe1c65c1dfb7422bd255" 45 | ], 46 | "version": "==0.2.0" 47 | }, 48 | "base58": { 49 | "hashes": [ 50 | "sha256:11a36f4d3ce51dfc1043f3218591ac4eb1ceb172919cebe05b52a5bcc8d245c2", 51 | "sha256:c5d0cb3f5b6e81e8e35da5754388ddcc6d0d14b6c6a132cb93d69ed580a7278c" 52 | ], 53 | "markers": "python_version >= '3.5'", 54 | "version": "==2.1.1" 55 | }, 56 | "blinker": { 57 | "hashes": [ 58 | "sha256:471aee25f3992bd325afa3772f1063dbdbbca947a041b8b89466dc00d606f8b6" 59 | ], 60 | "version": "==1.4" 61 | }, 62 | "cachetools": { 63 | "hashes": [ 64 | "sha256:486471dfa8799eb7ec503a8059e263db000cdda20075ce5e48903087f79d5fd6", 65 | "sha256:8fecd4203a38af17928be7b90689d8083603073622229ca7077b72d8e5a976e4" 66 | ], 67 | "markers": "python_version ~= '3.7'", 68 | "version": "==5.0.0" 69 | }, 70 | "certifi": { 71 | "hashes": [ 72 | "sha256:78884e7c1d4b00ce3cea67b44566851c4343c120abd683433ce934a68ea58872", 73 | "sha256:d62a0163eb4c2344ac042ab2bdf75399a71a2d8c7d47eac2e2ee91b9d6339569" 74 | ], 75 | "version": "==2021.10.8" 76 | }, 77 | "charset-normalizer": { 78 | "hashes": [ 79 | "sha256:876d180e9d7432c5d1dfd4c5d26b72f099d503e8fcc0feb7532c9289be60fcbd", 80 | "sha256:cb957888737fc0bbcd78e3df769addb41fd1ff8cf950dc9e7ad7793f1bf44455" 81 | ], 82 | "markers": "python_version >= '3'", 83 | "version": "==2.0.10" 84 | }, 85 | "click": { 86 | "hashes": [ 87 | "sha256:d2b5255c7c6349bc1bd1e59e08cd12acbbd63ce649f2588755783aa94dfb6b1a", 88 | "sha256:dacca89f4bfadd5de3d7489b7c8a566eee0d3676333fbb50030263894c38c0dc" 89 | ], 90 | "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4'", 91 | "version": "==7.1.2" 92 | }, 93 | "cycler": { 94 | "hashes": [ 95 | "sha256:3a27e95f763a428a739d2add979fa7494c912a32c17c4c38c4d5f082cad165a3", 96 | "sha256:9c87405839a19696e837b3b818fed3f5f69f16f1eec1a1ad77e043dcea9c772f" 97 | ], 98 | "markers": "python_version >= '3.6'", 99 | "version": "==0.11.0" 100 | }, 101 | "debugpy": { 102 | "hashes": [ 103 | "sha256:01e98c594b3e66d529e40edf314f849cd1a21f7a013298df58cd8e263bf8e184", 104 | "sha256:16db27b4b91991442f91d73604d32080b30de655aca9ba821b1972ea8171021b", 105 | "sha256:17a25ce9d7714f92fc97ef00cc06269d7c2b163094990ada30156ed31d9a5030", 106 | "sha256:194f95dd3e84568b5489aab5689a3a2c044e8fdc06f1890b8b4f70b6b89f2778", 107 | "sha256:1ec3a086e14bba6c472632025b8fe5bdfbaef2afa1ebd5c6615ce6ed8d89bc67", 108 | "sha256:23df67fc56d59e386c342428a7953c2c06cc226d8525b11319153e96afb65b0c", 109 | "sha256:26fbe53cca45a608679094791ce587b6e2798acd1d4777a8b303b07622e85182", 110 | "sha256:2b073ad5e8d8c488fbb6a116986858bab0c9c4558f28deb8832c7a5a27405bd6", 111 | "sha256:318f81f37341e4e054b4267d39896b73cddb3612ca13b39d7eea45af65165e1d", 112 | "sha256:3a457ad9c0059a21a6c7d563c1f18e924f5cf90278c722bd50ede6f56b77c7fe", 113 | "sha256:4404a62fb5332ea5c8c9132290eef50b3a0ba38cecacad5529e969a783bcbdd7", 114 | "sha256:5d76a4fd028d8009c3faf1185b4b78ceb2273dd2499447664b03939e0368bb90", 115 | "sha256:70b422c63a833630c33e3f9cdbd9b6971f8c5afd452697e464339a21bbe862ba", 116 | "sha256:82f5f9ce93af6861a0713f804e62ab390bb12a17f113153e47fea8bbb1dfbe36", 117 | "sha256:a2aa64f6d2ca7ded8a7e8a4e7cae3bc71866b09876b7b05cecad231779cb9156", 118 | "sha256:b2df2c373e85871086bd55271c929670cd4e1dba63e94a08d442db830646203b", 119 | "sha256:b5b3157372e0e0a1297a8b6b5280bcf1d35a40f436c7973771c972726d1e32d5", 120 | "sha256:d2b09e91fbd1efa4f4fda121d49af89501beda50c18ed7499712c71a4bf3452e", 121 | "sha256:d876db8c312eeb02d85611e0f696abe66a2c1515e6405943609e725d5ff36f2a", 122 | "sha256:f3a3dca9104aa14fd4210edcce6d9ce2b65bd9618c0b222135a40b9d6e2a9eeb", 123 | "sha256:f73988422b17f071ad3c4383551ace1ba5ed810cbab5f9c362783d22d40a08dc" 124 | ], 125 | "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4'", 126 | "version": "==1.5.1" 127 | }, 128 | "decorator": { 129 | "hashes": [ 130 | "sha256:637996211036b6385ef91435e4fae22989472f9d571faba8927ba8253acbc330", 131 | "sha256:b8c3f85900b9dc423225913c5aace94729fe1fa9763b38939a95226f02d37186" 132 | ], 133 | "markers": "python_version >= '3.5'", 134 | "version": "==5.1.1" 135 | }, 136 | "entrypoints": { 137 | "hashes": [ 138 | "sha256:589f874b313739ad35be6e0cd7efde2a4e9b6fea91edcc34e58ecbb8dbe56d19", 139 | "sha256:c70dd71abe5a8c85e55e12c19bd91ccfeec11a6e99044204511f9ed547d48451" 140 | ], 141 | "markers": "python_version >= '2.7'", 142 | "version": "==0.3" 143 | }, 144 | "et-xmlfile": { 145 | "hashes": [ 146 | "sha256:8eb9e2bc2f8c97e37a2dc85a09ecdcdec9d8a396530a6d5a33b30b9a92da0c5c", 147 | "sha256:a2ba85d1d6a74ef63837eed693bcb89c3f752169b0e3e7ae5b16ca5e1b3deada" 148 | ], 149 | "markers": "python_version >= '3.6'", 150 | "version": "==1.1.0" 151 | }, 152 | "filelock": { 153 | "hashes": [ 154 | "sha256:38b4f4c989f9d06d44524df1b24bd19e167d851f19b50bf3e3559952dddc5b80", 155 | "sha256:cf0fc6a2f8d26bd900f19bf33915ca70ba4dd8c56903eeb14e1e7a2fd7590146" 156 | ], 157 | "markers": "python_version >= '3.7'", 158 | "version": "==3.4.2" 159 | }, 160 | "fonttools": { 161 | "hashes": [ 162 | "sha256:545c05d0f7903a863c2020e07b8f0a57517f2c40d940bded77076397872d14ca", 163 | "sha256:edf251d5d2cc0580d5f72de4621c338d8c66c5f61abb50cf486640f73c8194d5" 164 | ], 165 | "markers": "python_version >= '3.7'", 166 | "version": "==4.28.5" 167 | }, 168 | "gitdb": { 169 | "hashes": [ 170 | "sha256:8033ad4e853066ba6ca92050b9df2f89301b8fc8bf7e9324d412a63f8bf1a8fd", 171 | "sha256:bac2fd45c0a1c9cf619e63a90d62bdc63892ef92387424b855792a6cabe789aa" 172 | ], 173 | "markers": "python_version >= '3.6'", 174 | "version": "==4.0.9" 175 | }, 176 | "gitpython": { 177 | "hashes": [ 178 | "sha256:26ac35c212d1f7b16036361ca5cff3ec66e11753a0d677fb6c48fa4e1a9dd8d6", 179 | "sha256:fc8868f63a2e6d268fb25f481995ba185a85a66fcad126f039323ff6635669ee" 180 | ], 181 | "markers": "python_version >= '3.7'", 182 | "version": "==3.1.26" 183 | }, 184 | "huggingface-hub": { 185 | "hashes": [ 186 | "sha256:808021af1ce1111104973ae54d81738eaf40be6d1e82fc6bdedb82f81c6206e7", 187 | "sha256:f0e3389f8988eb7781b17de520ae7fd0aa50d9823534e3ae55344d943a88ac87" 188 | ], 189 | "markers": "python_version >= '3.6'", 190 | "version": "==0.4.0" 191 | }, 192 | "idna": { 193 | "hashes": [ 194 | "sha256:84d9dd047ffa80596e0f246e2eab0b391788b0503584e8945f2368256d2735ff", 195 | "sha256:9d643ff0a55b762d5cdb124b8eaa99c66322e2157b69160bc32796e824360e6d" 196 | ], 197 | "markers": "python_version >= '3'", 198 | "version": "==3.3" 199 | }, 200 | "ipykernel": { 201 | "hashes": [ 202 | "sha256:6203ccd5510ff148e9433fd4a2707c5ce8d688f026427f46e13d7ebf9b3e9787", 203 | "sha256:d82b904fdc2fd8c7b1fbe0fa481c68a11b4cd4c8ef07e6517da1f10cc3114d24" 204 | ], 205 | "markers": "python_version >= '3.4'", 206 | "version": "==6.7.0" 207 | }, 208 | "ipython": { 209 | "hashes": [ 210 | "sha256:55df3e0bd0f94e715abd968bedd89d4e8a7bce4bf498fb123fed4f5398fea874", 211 | "sha256:b5548ec5329a4bcf054a5deed5099b0f9622eb9ea51aaa7104d215fece201d8c" 212 | ], 213 | "index": "pypi", 214 | "version": "==7.31.1" 215 | }, 216 | "ipython-genutils": { 217 | "hashes": [ 218 | "sha256:72dd37233799e619666c9f639a9da83c34013a73e8bbc79a7a6348d93c61fab8", 219 | "sha256:eb2e116e75ecef9d4d228fdc66af54269afa26ab4463042e33785b887c628ba8" 220 | ], 221 | "version": "==0.2.0" 222 | }, 223 | "ipywidgets": { 224 | "hashes": [ 225 | "sha256:206be4921d203461e65a3bdb0d1762aa07f26c743fe00062e73708cf7c8ce4b7", 226 | "sha256:92f700f4c2a2e94b5257e9a03c9c718b6ae76b2680025c9cdef565291358e773" 227 | ], 228 | "markers": "python_version >= '3.7'", 229 | "version": "==8.0.0b1" 230 | }, 231 | "jedi": { 232 | "hashes": [ 233 | "sha256:637c9635fcf47945ceb91cd7f320234a7be540ded6f3e99a50cb6febdfd1ba8d", 234 | "sha256:74137626a64a99c8eb6ae5832d99b3bdd7d29a3850fe2aa80a4126b2a7d949ab" 235 | ], 236 | "markers": "python_version >= '3.6'", 237 | "version": "==0.18.1" 238 | }, 239 | "jinja2": { 240 | "hashes": [ 241 | "sha256:077ce6014f7b40d03b47d1f1ca4b0fc8328a692bd284016f806ed0eaca390ad8", 242 | "sha256:611bb273cd68f3b993fabdc4064fc858c5b47a973cb5aa7999ec1ba405c87cd7" 243 | ], 244 | "markers": "python_version >= '3.6'", 245 | "version": "==3.0.3" 246 | }, 247 | "joblib": { 248 | "hashes": [ 249 | "sha256:4158fcecd13733f8be669be0683b96ebdbbd38d23559f54dca7205aea1bf1e35", 250 | "sha256:f21f109b3c7ff9d95f8387f752d0d9c34a02aa2f7060c2135f465da0e5160ff6" 251 | ], 252 | "markers": "python_version >= '3.6'", 253 | "version": "==1.1.0" 254 | }, 255 | "jsonschema": { 256 | "hashes": [ 257 | "sha256:636694eb41b3535ed608fe04129f26542b59ed99808b4f688aa32dcf55317a83", 258 | "sha256:77281a1f71684953ee8b3d488371b162419767973789272434bbc3f29d9c8823" 259 | ], 260 | "markers": "python_version >= '3.7'", 261 | "version": "==4.4.0" 262 | }, 263 | "jupyter-client": { 264 | "hashes": [ 265 | "sha256:540ca35e57e83c5ece81abd9b781a57cba39a37c60a2a30c8c1b2f6663544343", 266 | "sha256:f0c576cce235c727e30b0a0da88c2755d0947d0070fa1bc45f195079ffd64e66" 267 | ], 268 | "markers": "python_full_version >= '3.6.1'", 269 | "version": "==7.1.1" 270 | }, 271 | "jupyter-core": { 272 | "hashes": [ 273 | "sha256:1c091f3bbefd6f2a8782f2c1db662ca8478ac240e962ae2c66f0b87c818154ea", 274 | "sha256:dce8a7499da5a53ae3afd5a9f4b02e5df1d57250cf48f3ad79da23b4778cd6fa" 275 | ], 276 | "markers": "python_version >= '3.6'", 277 | "version": "==4.9.1" 278 | }, 279 | "jupyterlab-widgets": { 280 | "hashes": [ 281 | "sha256:503cc5110b4f2ab8a12d675da90b3db19d1d6fe242152ef43a158d3baae2dca1", 282 | "sha256:7121eefd9332747dcb0026e5a6c76ec84f020f5a285ef77cbaae62b8c67436f6" 283 | ], 284 | "markers": "python_version >= '3.7'", 285 | "version": "==2.0.0b1" 286 | }, 287 | "kiwisolver": { 288 | "hashes": [ 289 | "sha256:0007840186bacfaa0aba4466d5890334ea5938e0bb7e28078a0eb0e63b5b59d5", 290 | "sha256:19554bd8d54cf41139f376753af1a644b63c9ca93f8f72009d50a2080f870f77", 291 | "sha256:1d45d1c74f88b9f41062716c727f78f2a59a5476ecbe74956fafb423c5c87a76", 292 | "sha256:1d819553730d3c2724582124aee8a03c846ec4362ded1034c16fb3ef309264e6", 293 | "sha256:2210f28778c7d2ee13f3c2a20a3a22db889e75f4ec13a21072eabb5693801e84", 294 | "sha256:22521219ca739654a296eea6d4367703558fba16f98688bd8ce65abff36eaa84", 295 | "sha256:25405f88a37c5f5bcba01c6e350086d65e7465fd1caaf986333d2a045045a223", 296 | "sha256:2b65bd35f3e06a47b5c30ea99e0c2b88f72c6476eedaf8cfbc8e66adb5479dcf", 297 | "sha256:2ddb500a2808c100e72c075cbb00bf32e62763c82b6a882d403f01a119e3f402", 298 | "sha256:2f8f6c8f4f1cff93ca5058d6ec5f0efda922ecb3f4c5fb76181f327decff98b8", 299 | "sha256:30fa008c172355c7768159983a7270cb23838c4d7db73d6c0f6b60dde0d432c6", 300 | "sha256:3dbb3cea20b4af4f49f84cffaf45dd5f88e8594d18568e0225e6ad9dec0e7967", 301 | "sha256:4116ba9a58109ed5e4cb315bdcbff9838f3159d099ba5259c7c7fb77f8537492", 302 | "sha256:44e6adf67577dbdfa2d9f06db9fbc5639afefdb5bf2b4dfec25c3a7fbc619536", 303 | "sha256:5326ddfacbe51abf9469fe668944bc2e399181a2158cb5d45e1d40856b2a0589", 304 | "sha256:70adc3658138bc77a36ce769f5f183169bc0a2906a4f61f09673f7181255ac9b", 305 | "sha256:72be6ebb4e92520b9726d7146bc9c9b277513a57a38efcf66db0620aec0097e0", 306 | "sha256:7843b1624d6ccca403a610d1277f7c28ad184c5aa88a1750c1a999754e65b439", 307 | "sha256:7ba5a1041480c6e0a8b11a9544d53562abc2d19220bfa14133e0cdd9967e97af", 308 | "sha256:80efd202108c3a4150e042b269f7c78643420cc232a0a771743bb96b742f838f", 309 | "sha256:82f49c5a79d3839bc8f38cb5f4bfc87e15f04cbafa5fbd12fb32c941cb529cfb", 310 | "sha256:83d2c9db5dfc537d0171e32de160461230eb14663299b7e6d18ca6dca21e4977", 311 | "sha256:8d93a1095f83e908fc253f2fb569c2711414c0bfd451cab580466465b235b470", 312 | "sha256:8dc3d842fa41a33fe83d9f5c66c0cc1f28756530cd89944b63b072281e852031", 313 | "sha256:9661a04ca3c950a8ac8c47f53cbc0b530bce1b52f516a1e87b7736fec24bfff0", 314 | "sha256:a498bcd005e8a3fedd0022bb30ee0ad92728154a8798b703f394484452550507", 315 | "sha256:a7a4cf5bbdc861987a7745aed7a536c6405256853c94abc9f3287c3fa401b174", 316 | "sha256:b5074fb09429f2b7bc82b6fb4be8645dcbac14e592128beeff5461dcde0af09f", 317 | "sha256:b6a5431940f28b6de123de42f0eb47b84a073ee3c3345dc109ad550a3307dd28", 318 | "sha256:ba677bcaff9429fd1bf01648ad0901cea56c0d068df383d5f5856d88221fe75b", 319 | "sha256:bcadb05c3d4794eb9eee1dddf1c24215c92fb7b55a80beae7a60530a91060560", 320 | "sha256:bf7eb45d14fc036514c09554bf983f2a72323254912ed0c3c8e697b62c4c158f", 321 | "sha256:c358721aebd40c243894298f685a19eb0491a5c3e0b923b9f887ef1193ddf829", 322 | "sha256:c4550a359c5157aaf8507e6820d98682872b9100ce7607f8aa070b4b8af6c298", 323 | "sha256:c6572c2dab23c86a14e82c245473d45b4c515314f1f859e92608dcafbd2f19b8", 324 | "sha256:cba430db673c29376135e695c6e2501c44c256a81495da849e85d1793ee975ad", 325 | "sha256:dedc71c8eb9c5096037766390172c34fb86ef048b8e8958b4e484b9e505d66bc", 326 | "sha256:e6f5eb2f53fac7d408a45fbcdeda7224b1cfff64919d0f95473420a931347ae9", 327 | "sha256:ec2eba188c1906b05b9b49ae55aae4efd8150c61ba450e6721f64620c50b59eb", 328 | "sha256:ee040a7de8d295dbd261ef2d6d3192f13e2b08ec4a954de34a6fb8ff6422e24c", 329 | "sha256:eedd3b59190885d1ebdf6c5e0ca56828beb1949b4dfe6e5d0256a461429ac386", 330 | "sha256:f441422bb313ab25de7b3dbfd388e790eceb76ce01a18199ec4944b369017009", 331 | "sha256:f8eb7b6716f5b50e9c06207a14172cf2de201e41912ebe732846c02c830455b9", 332 | "sha256:fc4453705b81d03568d5b808ad8f09c77c47534f6ac2e72e733f9ca4714aa75c" 333 | ], 334 | "markers": "python_version >= '3.7'", 335 | "version": "==1.3.2" 336 | }, 337 | "lxml": { 338 | "hashes": [ 339 | "sha256:0607ff0988ad7e173e5ddf7bf55ee65534bd18a5461183c33e8e41a59e89edf4", 340 | "sha256:09b738360af8cb2da275998a8bf79517a71225b0de41ab47339c2beebfff025f", 341 | "sha256:0a5f0e4747f31cff87d1eb32a6000bde1e603107f632ef4666be0dc065889c7a", 342 | "sha256:0b5e96e25e70917b28a5391c2ed3ffc6156513d3db0e1476c5253fcd50f7a944", 343 | "sha256:1104a8d47967a414a436007c52f533e933e5d52574cab407b1e49a4e9b5ddbd1", 344 | "sha256:13dbb5c7e8f3b6a2cf6e10b0948cacb2f4c9eb05029fe31c60592d08ac63180d", 345 | "sha256:2a906c3890da6a63224d551c2967413b8790a6357a80bf6b257c9a7978c2c42d", 346 | "sha256:317bd63870b4d875af3c1be1b19202de34c32623609ec803b81c99193a788c1e", 347 | "sha256:34c22eb8c819d59cec4444d9eebe2e38b95d3dcdafe08965853f8799fd71161d", 348 | "sha256:36b16fecb10246e599f178dd74f313cbdc9f41c56e77d52100d1361eed24f51a", 349 | "sha256:38d9759733aa04fb1697d717bfabbedb21398046bd07734be7cccc3d19ea8675", 350 | "sha256:3e26ad9bc48d610bf6cc76c506b9e5ad9360ed7a945d9be3b5b2c8535a0145e3", 351 | "sha256:41358bfd24425c1673f184d7c26c6ae91943fe51dfecc3603b5e08187b4bcc55", 352 | "sha256:447d5009d6b5447b2f237395d0018901dcc673f7d9f82ba26c1b9f9c3b444b60", 353 | "sha256:44f552e0da3c8ee3c28e2eb82b0b784200631687fc6a71277ea8ab0828780e7d", 354 | "sha256:490712b91c65988012e866c411a40cc65b595929ececf75eeb4c79fcc3bc80a6", 355 | "sha256:4c093c571bc3da9ebcd484e001ba18b8452903cd428c0bc926d9b0141bcb710e", 356 | "sha256:50d3dba341f1e583265c1a808e897b4159208d814ab07530202b6036a4d86da5", 357 | "sha256:534e946bce61fd162af02bad7bfd2daec1521b71d27238869c23a672146c34a5", 358 | "sha256:585ea241ee4961dc18a95e2f5581dbc26285fcf330e007459688096f76be8c42", 359 | "sha256:59e7da839a1238807226f7143c68a479dee09244d1b3cf8c134f2fce777d12d0", 360 | "sha256:5b0f782f0e03555c55e37d93d7a57454efe7495dab33ba0ccd2dbe25fc50f05d", 361 | "sha256:5bee1b0cbfdb87686a7fb0e46f1d8bd34d52d6932c0723a86de1cc532b1aa489", 362 | "sha256:610807cea990fd545b1559466971649e69302c8a9472cefe1d6d48a1dee97440", 363 | "sha256:6308062534323f0d3edb4e702a0e26a76ca9e0e23ff99be5d82750772df32a9e", 364 | "sha256:67fa5f028e8a01e1d7944a9fb616d1d0510d5d38b0c41708310bd1bc45ae89f6", 365 | "sha256:6a2ab9d089324d77bb81745b01f4aeffe4094306d939e92ba5e71e9a6b99b71e", 366 | "sha256:6c198bfc169419c09b85ab10cb0f572744e686f40d1e7f4ed09061284fc1303f", 367 | "sha256:6e56521538f19c4a6690f439fefed551f0b296bd785adc67c1777c348beb943d", 368 | "sha256:6ec829058785d028f467be70cd195cd0aaf1a763e4d09822584ede8c9eaa4b03", 369 | "sha256:718d7208b9c2d86aaf0294d9381a6acb0158b5ff0f3515902751404e318e02c9", 370 | "sha256:735e3b4ce9c0616e85f302f109bdc6e425ba1670a73f962c9f6b98a6d51b77c9", 371 | "sha256:772057fba283c095db8c8ecde4634717a35c47061d24f889468dc67190327bcd", 372 | "sha256:7b5e2acefd33c259c4a2e157119c4373c8773cf6793e225006a1649672ab47a6", 373 | "sha256:82d16a64236970cb93c8d63ad18c5b9f138a704331e4b916b2737ddfad14e0c4", 374 | "sha256:87c1b0496e8c87ec9db5383e30042357b4839b46c2d556abd49ec770ce2ad868", 375 | "sha256:8e54945dd2eeb50925500957c7c579df3cd07c29db7810b83cf30495d79af267", 376 | "sha256:9393a05b126a7e187f3e38758255e0edf948a65b22c377414002d488221fdaa2", 377 | "sha256:9fbc0dee7ff5f15c4428775e6fa3ed20003140560ffa22b88326669d53b3c0f4", 378 | "sha256:a1613838aa6b89af4ba10a0f3a972836128801ed008078f8c1244e65958f1b24", 379 | "sha256:a1bbc4efa99ed1310b5009ce7f3a1784698082ed2c1ef3895332f5df9b3b92c2", 380 | "sha256:a555e06566c6dc167fbcd0ad507ff05fd9328502aefc963cb0a0547cfe7f00db", 381 | "sha256:a58d78653ae422df6837dd4ca0036610b8cb4962b5cfdbd337b7b24de9e5f98a", 382 | "sha256:a5edc58d631170de90e50adc2cc0248083541affef82f8cd93bea458e4d96db8", 383 | "sha256:a5f623aeaa24f71fce3177d7fee875371345eb9102b355b882243e33e04b7175", 384 | "sha256:adaab25be351fff0d8a691c4f09153647804d09a87a4e4ea2c3f9fe9e8651851", 385 | "sha256:ade74f5e3a0fd17df5782896ddca7ddb998845a5f7cd4b0be771e1ffc3b9aa5b", 386 | "sha256:b1d381f58fcc3e63fcc0ea4f0a38335163883267f77e4c6e22d7a30877218a0e", 387 | "sha256:bf6005708fc2e2c89a083f258b97709559a95f9a7a03e59f805dd23c93bc3986", 388 | "sha256:d546431636edb1d6a608b348dd58cc9841b81f4116745857b6cb9f8dadb2725f", 389 | "sha256:d5618d49de6ba63fe4510bdada62d06a8acfca0b4b5c904956c777d28382b419", 390 | "sha256:dfd0d464f3d86a1460683cd742306d1138b4e99b79094f4e07e1ca85ee267fe7", 391 | "sha256:e18281a7d80d76b66a9f9e68a98cf7e1d153182772400d9a9ce855264d7d0ce7", 392 | "sha256:e410cf3a2272d0a85526d700782a2fa92c1e304fdcc519ba74ac80b8297adf36", 393 | "sha256:e662c6266e3a275bdcb6bb049edc7cd77d0b0f7e119a53101d367c841afc66dc", 394 | "sha256:ec9027d0beb785a35aa9951d14e06d48cfbf876d8ff67519403a2522b181943b", 395 | "sha256:eed394099a7792834f0cb4a8f615319152b9d801444c1c9e1b1a2c36d2239f9e", 396 | "sha256:f76dbe44e31abf516114f6347a46fa4e7c2e8bceaa4b6f7ee3a0a03c8eba3c17", 397 | "sha256:fc15874816b9320581133ddc2096b644582ab870cf6a6ed63684433e7af4b0d3", 398 | "sha256:fc9fb11b65e7bc49f7f75aaba1b700f7181d95d4e151cf2f24d51bfd14410b77" 399 | ], 400 | "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4'", 401 | "version": "==4.7.1" 402 | }, 403 | "markupsafe": { 404 | "hashes": [ 405 | "sha256:01a9b8ea66f1658938f65b93a85ebe8bc016e6769611be228d797c9d998dd298", 406 | "sha256:023cb26ec21ece8dc3907c0e8320058b2e0cb3c55cf9564da612bc325bed5e64", 407 | "sha256:0446679737af14f45767963a1a9ef7620189912317d095f2d9ffa183a4d25d2b", 408 | "sha256:04635854b943835a6ea959e948d19dcd311762c5c0c6e1f0e16ee57022669194", 409 | "sha256:0717a7390a68be14b8c793ba258e075c6f4ca819f15edfc2a3a027c823718567", 410 | "sha256:0955295dd5eec6cb6cc2fe1698f4c6d84af2e92de33fbcac4111913cd100a6ff", 411 | "sha256:0d4b31cc67ab36e3392bbf3862cfbadac3db12bdd8b02a2731f509ed5b829724", 412 | "sha256:10f82115e21dc0dfec9ab5c0223652f7197feb168c940f3ef61563fc2d6beb74", 413 | "sha256:168cd0a3642de83558a5153c8bd34f175a9a6e7f6dc6384b9655d2697312a646", 414 | "sha256:1d609f577dc6e1aa17d746f8bd3c31aa4d258f4070d61b2aa5c4166c1539de35", 415 | "sha256:1f2ade76b9903f39aa442b4aadd2177decb66525062db244b35d71d0ee8599b6", 416 | "sha256:20dca64a3ef2d6e4d5d615a3fd418ad3bde77a47ec8a23d984a12b5b4c74491a", 417 | "sha256:2a7d351cbd8cfeb19ca00de495e224dea7e7d919659c2841bbb7f420ad03e2d6", 418 | "sha256:2d7d807855b419fc2ed3e631034685db6079889a1f01d5d9dac950f764da3dad", 419 | "sha256:2ef54abee730b502252bcdf31b10dacb0a416229b72c18b19e24a4509f273d26", 420 | "sha256:36bc903cbb393720fad60fc28c10de6acf10dc6cc883f3e24ee4012371399a38", 421 | "sha256:37205cac2a79194e3750b0af2a5720d95f786a55ce7df90c3af697bfa100eaac", 422 | "sha256:3c112550557578c26af18a1ccc9e090bfe03832ae994343cfdacd287db6a6ae7", 423 | "sha256:3dd007d54ee88b46be476e293f48c85048603f5f516008bee124ddd891398ed6", 424 | "sha256:4296f2b1ce8c86a6aea78613c34bb1a672ea0e3de9c6ba08a960efe0b0a09047", 425 | "sha256:47ab1e7b91c098ab893b828deafa1203de86d0bc6ab587b160f78fe6c4011f75", 426 | "sha256:49e3ceeabbfb9d66c3aef5af3a60cc43b85c33df25ce03d0031a608b0a8b2e3f", 427 | "sha256:4dc8f9fb58f7364b63fd9f85013b780ef83c11857ae79f2feda41e270468dd9b", 428 | "sha256:4efca8f86c54b22348a5467704e3fec767b2db12fc39c6d963168ab1d3fc9135", 429 | "sha256:53edb4da6925ad13c07b6d26c2a852bd81e364f95301c66e930ab2aef5b5ddd8", 430 | "sha256:5855f8438a7d1d458206a2466bf82b0f104a3724bf96a1c781ab731e4201731a", 431 | "sha256:594c67807fb16238b30c44bdf74f36c02cdf22d1c8cda91ef8a0ed8dabf5620a", 432 | "sha256:5b6d930f030f8ed98e3e6c98ffa0652bdb82601e7a016ec2ab5d7ff23baa78d1", 433 | "sha256:5bb28c636d87e840583ee3adeb78172efc47c8b26127267f54a9c0ec251d41a9", 434 | "sha256:60bf42e36abfaf9aff1f50f52644b336d4f0a3fd6d8a60ca0d054ac9f713a864", 435 | "sha256:611d1ad9a4288cf3e3c16014564df047fe08410e628f89805e475368bd304914", 436 | "sha256:6300b8454aa6930a24b9618fbb54b5a68135092bc666f7b06901f897fa5c2fee", 437 | "sha256:63f3268ba69ace99cab4e3e3b5840b03340efed0948ab8f78d2fd87ee5442a4f", 438 | "sha256:6557b31b5e2c9ddf0de32a691f2312a32f77cd7681d8af66c2692efdbef84c18", 439 | "sha256:693ce3f9e70a6cf7d2fb9e6c9d8b204b6b39897a2c4a1aa65728d5ac97dcc1d8", 440 | "sha256:6a7fae0dd14cf60ad5ff42baa2e95727c3d81ded453457771d02b7d2b3f9c0c2", 441 | "sha256:6c4ca60fa24e85fe25b912b01e62cb969d69a23a5d5867682dd3e80b5b02581d", 442 | "sha256:6fcf051089389abe060c9cd7caa212c707e58153afa2c649f00346ce6d260f1b", 443 | "sha256:7d91275b0245b1da4d4cfa07e0faedd5b0812efc15b702576d103293e252af1b", 444 | "sha256:89c687013cb1cd489a0f0ac24febe8c7a666e6e221b783e53ac50ebf68e45d86", 445 | "sha256:8d206346619592c6200148b01a2142798c989edcb9c896f9ac9722a99d4e77e6", 446 | "sha256:905fec760bd2fa1388bb5b489ee8ee5f7291d692638ea5f67982d968366bef9f", 447 | "sha256:97383d78eb34da7e1fa37dd273c20ad4320929af65d156e35a5e2d89566d9dfb", 448 | "sha256:984d76483eb32f1bcb536dc27e4ad56bba4baa70be32fa87152832cdd9db0833", 449 | "sha256:99df47edb6bda1249d3e80fdabb1dab8c08ef3975f69aed437cb69d0a5de1e28", 450 | "sha256:9f02365d4e99430a12647f09b6cc8bab61a6564363f313126f775eb4f6ef798e", 451 | "sha256:a30e67a65b53ea0a5e62fe23682cfe22712e01f453b95233b25502f7c61cb415", 452 | "sha256:ab3ef638ace319fa26553db0624c4699e31a28bb2a835c5faca8f8acf6a5a902", 453 | "sha256:aca6377c0cb8a8253e493c6b451565ac77e98c2951c45f913e0b52facdcff83f", 454 | "sha256:add36cb2dbb8b736611303cd3bfcee00afd96471b09cda130da3581cbdc56a6d", 455 | "sha256:b2f4bf27480f5e5e8ce285a8c8fd176c0b03e93dcc6646477d4630e83440c6a9", 456 | "sha256:b7f2d075102dc8c794cbde1947378051c4e5180d52d276987b8d28a3bd58c17d", 457 | "sha256:baa1a4e8f868845af802979fcdbf0bb11f94f1cb7ced4c4b8a351bb60d108145", 458 | "sha256:be98f628055368795d818ebf93da628541e10b75b41c559fdf36d104c5787066", 459 | "sha256:bf5d821ffabf0ef3533c39c518f3357b171a1651c1ff6827325e4489b0e46c3c", 460 | "sha256:c47adbc92fc1bb2b3274c4b3a43ae0e4573d9fbff4f54cd484555edbf030baf1", 461 | "sha256:cdfba22ea2f0029c9261a4bd07e830a8da012291fbe44dc794e488b6c9bb353a", 462 | "sha256:d6c7ebd4e944c85e2c3421e612a7057a2f48d478d79e61800d81468a8d842207", 463 | "sha256:d7f9850398e85aba693bb640262d3611788b1f29a79f0c93c565694658f4071f", 464 | "sha256:d8446c54dc28c01e5a2dbac5a25f071f6653e6e40f3a8818e8b45d790fe6ef53", 465 | "sha256:deb993cacb280823246a026e3b2d81c493c53de6acfd5e6bfe31ab3402bb37dd", 466 | "sha256:e0f138900af21926a02425cf736db95be9f4af72ba1bb21453432a07f6082134", 467 | "sha256:e9936f0b261d4df76ad22f8fee3ae83b60d7c3e871292cd42f40b81b70afae85", 468 | "sha256:f0567c4dc99f264f49fe27da5f735f414c4e7e7dd850cfd8e69f0862d7c74ea9", 469 | "sha256:f5653a225f31e113b152e56f154ccbe59eeb1c7487b39b9d9f9cdb58e6c79dc5", 470 | "sha256:f826e31d18b516f653fe296d967d700fddad5901ae07c622bb3705955e1faa94", 471 | "sha256:f8ba0e8349a38d3001fae7eadded3f6606f0da5d748ee53cc1dab1d6527b9509", 472 | "sha256:f9081981fe268bd86831e5c75f7de206ef275defcb82bc70740ae6dc507aee51", 473 | "sha256:fa130dd50c57d53368c9d59395cb5526eda596d3ffe36666cd81a44d56e48872" 474 | ], 475 | "markers": "python_version >= '3.6'", 476 | "version": "==2.0.1" 477 | }, 478 | "matplotlib": { 479 | "hashes": [ 480 | "sha256:14334b9902ec776461c4b8c6516e26b450f7ebe0b3ef8703bf5cdfbbaecf774a", 481 | "sha256:2252bfac85cec7af4a67e494bfccf9080bcba8a0299701eab075f48847cca907", 482 | "sha256:2e3484d8455af3fdb0424eae1789af61f6a79da0c80079125112fd5c1b604218", 483 | "sha256:34a1fc29f8f96e78ec57a5eff5e8d8b53d3298c3be6df61e7aa9efba26929522", 484 | "sha256:3e66497cd990b1a130e21919b004da2f1dc112132c01ac78011a90a0f9229778", 485 | "sha256:40e0d7df05e8efe60397c69b467fc8f87a2affeb4d562fe92b72ff8937a2b511", 486 | "sha256:456cc8334f6d1124e8ff856b42d2cc1c84335375a16448189999496549f7182b", 487 | "sha256:506b210cc6e66a0d1c2bb765d055f4f6bc2745070fb1129203b67e85bbfa5c18", 488 | "sha256:53273c5487d1c19c3bc03b9eb82adaf8456f243b97ed79d09dded747abaf1235", 489 | "sha256:577ed20ec9a18d6bdedb4616f5e9e957b4c08563a9f985563a31fd5b10564d2a", 490 | "sha256:6803299cbf4665eca14428d9e886de62e24f4223ac31ab9c5d6d5339a39782c7", 491 | "sha256:68fa30cec89b6139dc559ed6ef226c53fd80396da1919a1b5ef672c911aaa767", 492 | "sha256:6c094e4bfecd2fa7f9adffd03d8abceed7157c928c2976899de282f3600f0a3d", 493 | "sha256:778d398c4866d8e36ee3bf833779c940b5f57192fa0a549b3ad67bc4c822771b", 494 | "sha256:7a350ca685d9f594123f652ba796ee37219bf72c8e0fc4b471473d87121d6d34", 495 | "sha256:87900c67c0f1728e6db17c6809ec05c025c6624dcf96a8020326ea15378fe8e7", 496 | "sha256:8a77906dc2ef9b67407cec0bdbf08e3971141e535db888974a915be5e1e3efc6", 497 | "sha256:8e70ae6475cfd0fad3816dcbf6cac536dc6f100f7474be58d59fa306e6e768a4", 498 | "sha256:abf67e05a1b7f86583f6ebd01f69b693b9c535276f4e943292e444855870a1b8", 499 | "sha256:b04fc29bcef04d4e2d626af28d9d892be6aba94856cb46ed52bcb219ceac8943", 500 | "sha256:b19a761b948e939a9e20173aaae76070025f0024fc8f7ba08bef22a5c8573afc", 501 | "sha256:b2e9810e09c3a47b73ce9cab5a72243a1258f61e7900969097a817232246ce1c", 502 | "sha256:b71f3a7ca935fc759f2aed7cec06cfe10bc3100fadb5dbd9c435b04e557971e1", 503 | "sha256:b8a4fb2a0c5afbe9604f8a91d7d0f27b1832c3e0b5e365f95a13015822b4cd65", 504 | "sha256:bb1c613908f11bac270bc7494d68b1ef6e7c224b7a4204d5dacf3522a41e2bc3", 505 | "sha256:d24e5bb8028541ce25e59390122f5e48c8506b7e35587e5135efcb6471b4ac6c", 506 | "sha256:d70a32ee1f8b55eed3fd4e892f0286df8cccc7e0475c11d33b5d0a148f5c7599", 507 | "sha256:e293b16cf303fe82995e41700d172a58a15efc5331125d08246b520843ef21ee", 508 | "sha256:e2f28a07b4f82abb40267864ad7b3a4ed76f1b1663e81c7efc84a9b9248f672f", 509 | "sha256:e3520a274a0e054e919f5b3279ee5dbccf5311833819ccf3399dab7c83e90a25", 510 | "sha256:e3b6f3fd0d8ca37861c31e9a7cab71a0ef14c639b4c95654ea1dd153158bf0df", 511 | "sha256:e486f60db0cd1c8d68464d9484fd2a94011c1ac8593d765d0211f9daba2bd535", 512 | "sha256:e8c87cdaf06fd7b2477f68909838ff4176f105064a72ca9d24d3f2a29f73d393", 513 | "sha256:edf5e4e1d5fb22c18820e8586fb867455de3b109c309cb4fce3aaed85d9468d1", 514 | "sha256:fe8d40c434a8e2c68d64c6d6a04e77f21791a93ff6afe0dce169597c110d3079" 515 | ], 516 | "markers": "python_version >= '3.7'", 517 | "version": "==3.5.1" 518 | }, 519 | "matplotlib-inline": { 520 | "hashes": [ 521 | "sha256:a04bfba22e0d1395479f866853ec1ee28eea1485c1d69a6faf00dc3e24ff34ee", 522 | "sha256:aed605ba3b72462d64d475a21a9296f400a19c4f74a31b59103d2a99ffd5aa5c" 523 | ], 524 | "markers": "python_version >= '3.5'", 525 | "version": "==0.1.3" 526 | }, 527 | "multitasking": { 528 | "hashes": [ 529 | "sha256:810640fa6670be41f4a712b287d9307a14ad849d966f06a17d2cf1593b66c3cd" 530 | ], 531 | "version": "==0.0.10" 532 | }, 533 | "nbformat": { 534 | "hashes": [ 535 | "sha256:b516788ad70771c6250977c1374fcca6edebe6126fd2adb5a69aa5c2356fd1c8", 536 | "sha256:eb8447edd7127d043361bc17f2f5a807626bc8e878c7709a1c647abda28a9171" 537 | ], 538 | "markers": "python_version >= '3.5'", 539 | "version": "==5.1.3" 540 | }, 541 | "nest-asyncio": { 542 | "hashes": [ 543 | "sha256:3fdd0d6061a2bb16f21fe8a9c6a7945be83521d81a0d15cff52e9edee50101d6", 544 | "sha256:f969f6013a16fadb4adcf09d11a68a4f617c6049d7af7ac2c676110169a63abd" 545 | ], 546 | "markers": "python_version >= '3.5'", 547 | "version": "==1.5.4" 548 | }, 549 | "numpy": { 550 | "hashes": [ 551 | "sha256:0d245a2bf79188d3f361137608c3cd12ed79076badd743dc660750a9f3074f7c", 552 | "sha256:26b4018a19d2ad9606ce9089f3d52206a41b23de5dfe8dc947d2ec49ce45d015", 553 | "sha256:2db01d9838a497ba2aa9a87515aeaf458f42351d72d4e7f3b8ddbd1eba9479f2", 554 | "sha256:3d62d6b0870b53799204515145935608cdeb4cebb95a26800b6750e48884cc5b", 555 | "sha256:45a7dfbf9ed8d68fd39763940591db7637cf8817c5bce1a44f7b56c97cbe211e", 556 | "sha256:4ac4d7c9f8ea2a79d721ebfcce81705fc3cd61a10b731354f1049eb8c99521e8", 557 | "sha256:60f19c61b589d44fbbab8ff126640ae712e163299c2dd422bfe4edc7ec51aa9b", 558 | "sha256:632e062569b0fe05654b15ef0e91a53c0a95d08ffe698b66f6ba0f927ad267c2", 559 | "sha256:65f5e257987601fdfc63f1d02fca4d1c44a2b85b802f03bd6abc2b0b14648dd2", 560 | "sha256:69958735d5e01f7b38226a6c6e7187d72b7e4d42b6b496aca5860b611ca0c193", 561 | "sha256:78bfbdf809fc236490e7e65715bbd98377b122f329457fffde206299e163e7f3", 562 | "sha256:7e957ca8112c689b728037cea9c9567c27cf912741fabda9efc2c7d33d29dfa1", 563 | "sha256:800dfeaffb2219d49377da1371d710d7952c9533b57f3d51b15e61c4269a1b5b", 564 | "sha256:831f2df87bd3afdfc77829bc94bd997a7c212663889d56518359c827d7113b1f", 565 | "sha256:88d54b7b516f0ca38a69590557814de2dd638d7d4ed04864826acaac5ebb8f01", 566 | "sha256:8d1563060e77096367952fb44fca595f2b2f477156de389ce7c0ade3aef29e21", 567 | "sha256:b5ec9a5eaf391761c61fd873363ef3560a3614e9b4ead17347e4deda4358bca4", 568 | "sha256:bcd19dab43b852b03868796f533b5f5561e6c0e3048415e675bec8d2e9d286c1", 569 | "sha256:c51124df17f012c3b757380782ae46eee85213a3215e51477e559739f57d9bf6", 570 | "sha256:e348ccf5bc5235fc405ab19d53bec215bb373300e5523c7b476cc0da8a5e9973", 571 | "sha256:e60ef82c358ded965fdd3132b5738eade055f48067ac8a5a8ac75acc00cad31f", 572 | "sha256:f8ad59e6e341f38266f1549c7c2ec70ea0e3d1effb62a44e5c3dba41c55f0187" 573 | ], 574 | "markers": "python_version >= '3.8'", 575 | "version": "==1.22.1" 576 | }, 577 | "openai": { 578 | "hashes": [ 579 | "sha256:d3e7fecd728e70fa9ca3484a00ea3f7b928b172207c6017816419d57f2b3b596" 580 | ], 581 | "index": "pypi", 582 | "version": "==0.11.0" 583 | }, 584 | "openpyxl": { 585 | "hashes": [ 586 | "sha256:40f568b9829bf9e446acfffce30250ac1fa39035124d55fc024025c41481c90f", 587 | "sha256:8f3b11bd896a95468a4ab162fc4fcd260d46157155d1f8bfaabb99d88cfcf79f" 588 | ], 589 | "markers": "python_version >= '3.6'", 590 | "version": "==3.0.9" 591 | }, 592 | "packaging": { 593 | "hashes": [ 594 | "sha256:dd47c42927d89ab911e606518907cc2d3a1f38bbd026385970643f9c5b8ecfeb", 595 | "sha256:ef103e05f519cdc783ae24ea4e2e0f508a9c99b2d4969652eed6a2e1ea5bd522" 596 | ], 597 | "markers": "python_version >= '3.6'", 598 | "version": "==21.3" 599 | }, 600 | "pandas": { 601 | "hashes": [ 602 | "sha256:02bd4099522892eab97e54afdd30f1841f5464082d2ea8c6a80d98ef906eb971", 603 | "sha256:0e1e0638b1b8191f167f020579bceb7e91a1b1d428f309a268de64fd2591ea16", 604 | "sha256:17ebe6df81337c967e5fa63a72569847aafe84a4226bb6d52378c253a104c032", 605 | "sha256:209babc61877e798e06b974ef267dce7e947ec03655c41303753090cd60c0829", 606 | "sha256:2419c4f9b9eaa531c59fd04500188f9f1bf59fef483b0bed044be024fa85fafb", 607 | "sha256:2b0907d656c91b9cbf87fc585e842ac7820bf218d2f0917b5e6fbd7c655b0f3e", 608 | "sha256:300ebad475f2096ac8492a9ecc32ca63525ecfcbe5dc8b6ab290e15e2b45b092", 609 | "sha256:6ed78090d232a25dcb421e8c67276401580b349370d42d35dfb6efab4b6c16dc", 610 | "sha256:7b4c7c8cfd5df891e52d3fdaa5b9b7c3daad76d2affc9eb034fd3499b11815e0", 611 | "sha256:88e4de96414e759865866f6cd24041136fc75b4a73ec80e92ac5d9a1d6600dfb", 612 | "sha256:93426398cd9ace7e5d695244bc4b512e99837bd16d7b38f02995a4e744f8946a", 613 | "sha256:b8befb52ff25e35961fa2e678264514a8eb1ee408b53725ac2f635f100ebf5c7", 614 | "sha256:c0d453fda0a87d51f5fe65c16a89b64f13a736f4f17c0202cfcff67e6b341a57", 615 | "sha256:dad0cad077bed80399ef962ce28b90b29ff27bc784464b17799127f16a67bf77", 616 | "sha256:db0ce40a09ed997e2c66cefd20ef92620a71010474bbe436a10b78bdc6b07fd4", 617 | "sha256:dba9effcd053f882eee5df8b6800a8c2389a365276ecdded3f49f7d906fd56be", 618 | "sha256:e1014df6abaed4cefbfb6e5943f1489f711799bcffd1ac7e8f94dbe8e88430cd", 619 | "sha256:e11e4df8ea21231b6ed2bf3d35648c57d8046bd08840606095faeaceffe219e7", 620 | "sha256:e1a84925710d91fb23e0b459b2aa020cc0e27991507ca83bec2295aebcb65912", 621 | "sha256:e804aefe4b00043818e3df48d3fbc6c9bfb9364b53d5d7b5ec49b8d445002900", 622 | "sha256:ea41ec99170fa2018b3a3067936a83a52568ae970bcdc317f82bb64ec59fa90c" 623 | ], 624 | "markers": "python_version >= '3.8'", 625 | "version": "==1.4.0rc0" 626 | }, 627 | "pandas-stubs": { 628 | "hashes": [ 629 | "sha256:0c47c213ab92a8608376eee00efd207e7f7af0a7b44342a6dbaf61a6b21bcc0d", 630 | "sha256:75c153b06b87bdb663908d1dc382abeb898e0e777c165cbb620df839a609370e" 631 | ], 632 | "version": "==1.2.0.43" 633 | }, 634 | "parso": { 635 | "hashes": [ 636 | "sha256:8c07be290bb59f03588915921e29e8a50002acaf2cdc5fa0e0114f91709fafa0", 637 | "sha256:c001d4636cd3aecdaf33cbb40aebb59b094be2a74c556778ef5576c175e19e75" 638 | ], 639 | "markers": "python_version >= '3.6'", 640 | "version": "==0.8.3" 641 | }, 642 | "pexpect": { 643 | "hashes": [ 644 | "sha256:0b48a55dcb3c05f3329815901ea4fc1537514d6ba867a152b581d69ae3710937", 645 | "sha256:fc65a43959d153d0114afe13997d439c22823a27cefceb5ff35c2178c6784c0c" 646 | ], 647 | "markers": "sys_platform != 'win32'", 648 | "version": "==4.8.0" 649 | }, 650 | "pickleshare": { 651 | "hashes": [ 652 | "sha256:87683d47965c1da65cdacaf31c8441d12b8044cdec9aca500cd78fc2c683afca", 653 | "sha256:9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56" 654 | ], 655 | "version": "==0.7.5" 656 | }, 657 | "pillow": { 658 | "hashes": [ 659 | "sha256:03b27b197deb4ee400ed57d8d4e572d2d8d80f825b6634daf6e2c18c3c6ccfa6", 660 | "sha256:0b281fcadbb688607ea6ece7649c5d59d4bbd574e90db6cd030e9e85bde9fecc", 661 | "sha256:0ebd8b9137630a7bbbff8c4b31e774ff05bbb90f7911d93ea2c9371e41039b52", 662 | "sha256:113723312215b25c22df1fdf0e2da7a3b9c357a7d24a93ebbe80bfda4f37a8d4", 663 | "sha256:2d16b6196fb7a54aff6b5e3ecd00f7c0bab1b56eee39214b2b223a9d938c50af", 664 | "sha256:2fd8053e1f8ff1844419842fd474fc359676b2e2a2b66b11cc59f4fa0a301315", 665 | "sha256:31b265496e603985fad54d52d11970383e317d11e18e856971bdbb86af7242a4", 666 | "sha256:3586e12d874ce2f1bc875a3ffba98732ebb12e18fb6d97be482bd62b56803281", 667 | "sha256:47f5cf60bcb9fbc46011f75c9b45a8b5ad077ca352a78185bd3e7f1d294b98bb", 668 | "sha256:490e52e99224858f154975db61c060686df8a6b3f0212a678e5d2e2ce24675c9", 669 | "sha256:500d397ddf4bbf2ca42e198399ac13e7841956c72645513e8ddf243b31ad2128", 670 | "sha256:52abae4c96b5da630a8b4247de5428f593465291e5b239f3f843a911a3cf0105", 671 | "sha256:6579f9ba84a3d4f1807c4aab4be06f373017fc65fff43498885ac50a9b47a553", 672 | "sha256:68e06f8b2248f6dc8b899c3e7ecf02c9f413aab622f4d6190df53a78b93d97a5", 673 | "sha256:6c5439bfb35a89cac50e81c751317faea647b9a3ec11c039900cd6915831064d", 674 | "sha256:72c3110228944019e5f27232296c5923398496b28be42535e3b2dc7297b6e8b6", 675 | "sha256:72f649d93d4cc4d8cf79c91ebc25137c358718ad75f99e99e043325ea7d56100", 676 | "sha256:7aaf07085c756f6cb1c692ee0d5a86c531703b6e8c9cae581b31b562c16b98ce", 677 | "sha256:80fe92813d208ce8aa7d76da878bdc84b90809f79ccbad2a288e9bcbeac1d9bd", 678 | "sha256:95545137fc56ce8c10de646074d242001a112a92de169986abd8c88c27566a05", 679 | "sha256:97b6d21771da41497b81652d44191489296555b761684f82b7b544c49989110f", 680 | "sha256:98cb63ca63cb61f594511c06218ab4394bf80388b3d66cd61d0b1f63ee0ea69f", 681 | "sha256:9f3b4522148586d35e78313db4db0df4b759ddd7649ef70002b6c3767d0fdeb7", 682 | "sha256:a09a9d4ec2b7887f7a088bbaacfd5c07160e746e3d47ec5e8050ae3b2a229e9f", 683 | "sha256:b5050d681bcf5c9f2570b93bee5d3ec8ae4cf23158812f91ed57f7126df91762", 684 | "sha256:bb47a548cea95b86494a26c89d153fd31122ed65255db5dcbc421a2d28eb3379", 685 | "sha256:bc462d24500ba707e9cbdef436c16e5c8cbf29908278af053008d9f689f56dee", 686 | "sha256:c2067b3bb0781f14059b112c9da5a91c80a600a97915b4f48b37f197895dd925", 687 | "sha256:d154ed971a4cc04b93a6d5b47f37948d1f621f25de3e8fa0c26b2d44f24e3e8f", 688 | "sha256:d5dcea1387331c905405b09cdbfb34611050cc52c865d71f2362f354faee1e9f", 689 | "sha256:ee6e2963e92762923956fe5d3479b1fdc3b76c83f290aad131a2f98c3df0593e", 690 | "sha256:fd0e5062f11cb3e730450a7d9f323f4051b532781026395c4323b8ad055523c4" 691 | ], 692 | "markers": "python_version >= '3.7'", 693 | "version": "==9.0.0" 694 | }, 695 | "plotly": { 696 | "hashes": [ 697 | "sha256:1e5c1a5c87caaf68ce0d9872d4636e3ce1f82c7f6988eb20905ff5b58e57525c", 698 | "sha256:735d50738c760ecbf3a38e2336b8c1b119bff2d857096e4f68af31089b798161" 699 | ], 700 | "index": "pypi", 701 | "version": "==5.4.0" 702 | }, 703 | "polyfuzz": { 704 | "hashes": [ 705 | "sha256:a4eac527554e014ba18d3b11b1dfe6326adca3c32a10acbf138b58f97b2e4a18", 706 | "sha256:b2d07c8071cc813e8c1bdf6094ba7aab03f8168c5f5f7b1d66de6518ad96e57b" 707 | ], 708 | "index": "pypi", 709 | "version": "==0.3.4" 710 | }, 711 | "prompt-toolkit": { 712 | "hashes": [ 713 | "sha256:1bb05628c7d87b645974a1bad3f17612be0c29fa39af9f7688030163f680bad6", 714 | "sha256:e56f2ff799bacecd3e88165b1e2f5ebf9bcd59e80e06d395fa0cc4b8bd7bb506" 715 | ], 716 | "markers": "python_full_version >= '3.6.2'", 717 | "version": "==3.0.24" 718 | }, 719 | "protobuf": { 720 | "hashes": [ 721 | "sha256:1291a0a7db7d792745c99d4657b4c5c4942695c8b1ac1bfb993a34035ec123f7", 722 | "sha256:18c40a1b8721026a85187640f1786d52407dc9c1ba8ec38accb57a46e84015f6", 723 | "sha256:1cb2ed66aac593adbf6dca4f07cd7ee7e2958b17bbc85b2cc8bc564ebeb258ec", 724 | "sha256:2acd7ca329be544d1a603d5f13a4e34a3791c90d651ebaf130ba2e43ae5397c6", 725 | "sha256:2cddcbcc222f3144765ccccdb35d3621dc1544da57a9aca7e1944c1a4fe3db11", 726 | "sha256:397d82f1c58b76445469c8c06b8dee1ff67b3053639d054f52599a458fac9bc6", 727 | "sha256:3bf3a07d17ba3511fe5fa916afb7351f482ab5dbab5afe71a7a384274a2cd550", 728 | "sha256:3f80a3491eaca767cdd86cb8660dc778f634b44abdb0dffc9b2a8e8d0cd617d0", 729 | "sha256:49677e5e9c7ea1245a90c2e8a00d304598f22ea3aa0628f0e0a530a9e70665fa", 730 | "sha256:544fe9705189b249380fae07952d220c97f5c6c9372a6f936cc83a79601dcb70", 731 | "sha256:6202df8ee8457cb00810c6e76ced480f22a1e4e02c899a14e7b6e6e1de09f938", 732 | "sha256:84bf3aa3efb00dbe1c7ed55da0f20800b0662541e582d7e62b3e1464d61ed365", 733 | "sha256:898bda9cd37ec0c781b598891e86435de80c3bfa53eb483a9dac5a11ec93e942", 734 | "sha256:8ad761ef3be34c8bdc7285bec4b40372a8dad9e70cfbdc1793cd3cf4c1a4ce74", 735 | "sha256:8ceaf5fdb72c8e1fcb7be9f2b3b07482ce058a3548180c0bdd5c7e4ac5e14165", 736 | "sha256:a9401d96552befcc7311f5ef8f0fa7dba0ef5fd805466b158b141606cd0ab6a8", 737 | "sha256:af7238849fa79285d448a24db686517570099739527a03c9c2971cce99cc5ae2", 738 | "sha256:afa8122de8064fd577f49ae9eef433561c8ace97a0a7b969d56e8b1d39b5d177", 739 | "sha256:b53519b2ebec70cfe24b4ddda21e9843f0918d7c3627a785393fb35d402ab8ad", 740 | "sha256:c781402ed5396ab56358d7b866d78c03a77cbc26ba0598d8bb0ac32084b1a257", 741 | "sha256:d975a6314fbf5c524d4981e24294739216b5fb81ef3c14b86fb4b045d6690907", 742 | "sha256:df2ba379ee42427e8fcc6a0a76843bff6efb34ef5266b17f95043939b5e25b69", 743 | "sha256:e54b8650e849ee8e95e481024bff92cf98f5ec61c7650cb838d928a140adcb63", 744 | "sha256:e765e6dfbbb02c55e4d6d1145743401a84fc0b508f5a81b2c5a738cf86353139", 745 | "sha256:ef02d112c025e83db5d1188a847e358beab3e4bbfbbaf10eaf69e67359af51b2", 746 | "sha256:f6d4b5b7595a57e69eb7314c67bef4a3c745b4caf91accaf72913d8e0635111b" 747 | ], 748 | "markers": "python_version >= '3.5'", 749 | "version": "==3.19.3" 750 | }, 751 | "ptyprocess": { 752 | "hashes": [ 753 | "sha256:4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35", 754 | "sha256:5c5d0a3b48ceee0b48485e0c26037c0acd7d29765ca3fbb5cb3831d347423220" 755 | ], 756 | "version": "==0.7.0" 757 | }, 758 | "pyarrow": { 759 | "hashes": [ 760 | "sha256:02baee816456a6e64486e587caaae2bf9f084fa3a891354ff18c3e945a1cb72f", 761 | "sha256:04c752fb41921d0064568a15a87dbb0222cfbe9040d4b2c1b306fe6e0a453530", 762 | "sha256:0e0ef24b316c544f4bb56f5c376129097df3739e665feca0eb567f716d45c55a", 763 | "sha256:1cd4de317df01679e538004123d6d7bc325d73bad5c6bbc3d5f8aa2280408869", 764 | "sha256:1f4f3db1da51db4cfbafab3066a01b01578884206dced9f505da950d9ed4402d", 765 | "sha256:1fd077c06061b8fa8fdf91591a4270e368f63cf73c6ab56924d3b64efa96a873", 766 | "sha256:2403c8af207262ce8e2bc1a9d19313941fd2e424f1cb3c4b749c17efe1fd699a", 767 | "sha256:2523f87bd36877123fc8c4813f60d298722143ead73e907690a87e8557114693", 768 | "sha256:2c13ec3b26b3b069d673c5fa3a0c70c38f0d5c94686ac5dbc9d7e7d24040f812", 769 | "sha256:31038366484e538608f43920a5e2957b8862a43aa49438814619b527f50ec127", 770 | "sha256:423990d56cd8f12283b67367d48e142739b789085185018eb03d05087c3c8d43", 771 | "sha256:5308f4bb770b48e07c8cff36cf6a4452862e8ce9492428ad5581d846420b3884", 772 | "sha256:604782b1c744b24a55df80125991a7154fbdef60991eb3d02bfaed06d22f055e", 773 | "sha256:632bea00c2fbe2da5d29ff1698fec312ed3aabfb548f06100144e1907e22093a", 774 | "sha256:6b6483bf6b61fe9a046235e4ad4d9286b707607878d7dbdc2eb85a6ec4090baf", 775 | "sha256:71891049dc58039a9523e1cb0d921be001dacb2b327fa7b62a35b96a3aad9f0d", 776 | "sha256:725d3fe49dfe392ff14a8ae6a75b230a60e8985f2b621b18cfa912fe02b65f1a", 777 | "sha256:7ecad40a1d4e0104cd87757a403f36850261e7a989cf9e4cb3e30420bbbd1092", 778 | "sha256:8f7d34efb9d667f9204b40ce91a77613c46691c24cd098e3b6986bd7401b8f06", 779 | "sha256:943141dd8cca6c5722552a0b11a3c2e791cdf85f1768dea8170b0a8a7e824ff9", 780 | "sha256:954326b426eec6e31ff55209f8840b54d788420e96c4005aaa7beed1fe60b42d", 781 | "sha256:981ccdf4f2696550733e18da882469893d2f33f55f3cbeb6a90f81741cbf67aa", 782 | "sha256:9e90e75cb11e61ffeffb374f1db7c4788f1df0cb269596bf86c473155294958d", 783 | "sha256:a424fd9a3253d0322d53be7bbb20b5b01511706a61efadcf37f416da325e3d48", 784 | "sha256:b63b54dd0bada05fff76c15b233f9322de0e6947071b7871ec45024e16045aeb", 785 | "sha256:b8628269bd9289cae0ea668f5900451043252fe3666667f614e140084dd31aac", 786 | "sha256:c3a727642c1283dcb44728f0d0a00f8864b171e31c835f4b8def07e3fa8f5c73", 787 | "sha256:c80d2436294a07f9cc54852aa1cef034b6f9c97d29235c4bd53bbf52e24f1ebf", 788 | "sha256:c958cf3a4a9eee09e1063c02b89e882d19c61b3a2ce6cbd55191a6f45ed5004b", 789 | "sha256:cde4f711cd9476d4da18128c3a40cb529b6b7d2679aee6e0576212547530fef1", 790 | "sha256:d29605727865177918e806d855fd8404b6242bf1e56ade0a0023cd4fe5f7f841", 791 | "sha256:dc03c875e5d68b0d0143f94c438add3ab3c2411ade2748423a9c24608fea571e", 792 | "sha256:e3c9184335da8faf08c0df95668ce9d778df3795ce4eec959f44908742900e10", 793 | "sha256:e77b1f7c6c08ec319b7882c1a7c7304731530923532b3243060e6e64c456cf34", 794 | "sha256:f150b4f222d0ba397388908725692232345adaa8e58ad543ca00f03c7234ae7b", 795 | "sha256:fab8132193ae095c43b1e8d6d7f393451ac198de5aaf011c6b576b1442966fec" 796 | ], 797 | "markers": "python_version >= '3.6'", 798 | "version": "==6.0.1" 799 | }, 800 | "pydeck": { 801 | "hashes": [ 802 | "sha256:7fc49b00840608068b930f9269169c7c9f3198b8b4635c934ba6d887c4e54503", 803 | "sha256:907601c99f7510e16d27d7cb62bfa145216d166a2b5c9c50cfe2b65b032ebd2e" 804 | ], 805 | "markers": "python_version >= '3.7'", 806 | "version": "==0.7.1" 807 | }, 808 | "pygments": { 809 | "hashes": [ 810 | "sha256:44238f1b60a76d78fc8ca0528ee429702aae011c265fe6a8dd8b63049ae41c65", 811 | "sha256:4e426f72023d88d03b2fa258de560726ce890ff3b630f88c21cbb8b2503b8c6a" 812 | ], 813 | "markers": "python_version >= '3.5'", 814 | "version": "==2.11.2" 815 | }, 816 | "pympler": { 817 | "hashes": [ 818 | "sha256:993f1a3599ca3f4fcd7160c7545ad06310c9e12f70174ae7ae8d4e25f6c5d3fa", 819 | "sha256:d260dda9ae781e1eab6ea15bacb84015849833ba5555f141d2d9b7b7473b307d" 820 | ], 821 | "markers": "python_version >= '3.6'", 822 | "version": "==1.0.1" 823 | }, 824 | "pyparsing": { 825 | "hashes": [ 826 | "sha256:18ee9022775d270c55187733956460083db60b37d0d0fb357445f3094eed3eea", 827 | "sha256:a6c06a88f252e6c322f65faf8f418b16213b51bdfaece0524c1c1bc30c63c484" 828 | ], 829 | "markers": "python_version >= '3.6'", 830 | "version": "==3.0.7" 831 | }, 832 | "pyrsistent": { 833 | "hashes": [ 834 | "sha256:0e3e1fcc45199df76053026a51cc59ab2ea3fc7c094c6627e93b7b44cdae2c8c", 835 | "sha256:1b34eedd6812bf4d33814fca1b66005805d3640ce53140ab8bbb1e2651b0d9bc", 836 | "sha256:4ed6784ceac462a7d6fcb7e9b663e93b9a6fb373b7f43594f9ff68875788e01e", 837 | "sha256:5d45866ececf4a5fff8742c25722da6d4c9e180daa7b405dc0a2a2790d668c26", 838 | "sha256:636ce2dc235046ccd3d8c56a7ad54e99d5c1cd0ef07d9ae847306c91d11b5fec", 839 | "sha256:6455fc599df93d1f60e1c5c4fe471499f08d190d57eca040c0ea182301321286", 840 | "sha256:6bc66318fb7ee012071b2792024564973ecc80e9522842eb4e17743604b5e045", 841 | "sha256:7bfe2388663fd18bd8ce7db2c91c7400bf3e1a9e8bd7d63bf7e77d39051b85ec", 842 | "sha256:7ec335fc998faa4febe75cc5268a9eac0478b3f681602c1f27befaf2a1abe1d8", 843 | "sha256:914474c9f1d93080338ace89cb2acee74f4f666fb0424896fcfb8d86058bf17c", 844 | "sha256:b568f35ad53a7b07ed9b1b2bae09eb15cdd671a5ba5d2c66caee40dbf91c68ca", 845 | "sha256:cdfd2c361b8a8e5d9499b9082b501c452ade8bbf42aef97ea04854f4a3f43b22", 846 | "sha256:d1b96547410f76078eaf66d282ddca2e4baae8964364abb4f4dcdde855cd123a", 847 | "sha256:d4d61f8b993a7255ba714df3aca52700f8125289f84f704cf80916517c46eb96", 848 | "sha256:d7a096646eab884bf8bed965bad63ea327e0d0c38989fc83c5ea7b8a87037bfc", 849 | "sha256:df46c854f490f81210870e509818b729db4488e1f30f2a1ce1698b2295a878d1", 850 | "sha256:e24a828f57e0c337c8d8bb9f6b12f09dfdf0273da25fda9e314f0b684b415a07", 851 | "sha256:e4f3149fd5eb9b285d6bfb54d2e5173f6a116fe19172686797c056672689daf6", 852 | "sha256:e92a52c166426efbe0d1ec1332ee9119b6d32fc1f0bbfd55d5c1088070e7fc1b", 853 | "sha256:f87cc2863ef33c709e237d4b5f4502a62a00fab450c9e020892e8e2ede5847f5", 854 | "sha256:fd8da6d0124efa2f67d86fa70c851022f87c98e205f0594e1fae044e7119a5a6" 855 | ], 856 | "markers": "python_version >= '3.7'", 857 | "version": "==0.18.1" 858 | }, 859 | "python-dateutil": { 860 | "hashes": [ 861 | "sha256:0123cacc1627ae19ddf3c27a5de5bd67ee4586fbdd6440d9748f8abb483d3e86", 862 | "sha256:961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9" 863 | ], 864 | "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'", 865 | "version": "==2.8.2" 866 | }, 867 | "pytz": { 868 | "hashes": [ 869 | "sha256:3672058bc3453457b622aab7a1c3bfd5ab0bdae451512f6cf25f64ed37f5b87c", 870 | "sha256:acad2d8b20a1af07d4e4c9d2e9285c5ed9104354062f275f3fcd88dcef4f1326" 871 | ], 872 | "version": "==2021.3" 873 | }, 874 | "pytz-deprecation-shim": { 875 | "hashes": [ 876 | "sha256:8314c9692a636c8eb3bda879b9f119e350e93223ae83e70e80c31675a0fdc1a6", 877 | "sha256:af097bae1b616dde5c5744441e2ddc69e74dfdcb0c263129610d85b87445a59d" 878 | ], 879 | "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4, 3.5'", 880 | "version": "==0.1.0.post0" 881 | }, 882 | "pyyaml": { 883 | "hashes": [ 884 | "sha256:0283c35a6a9fbf047493e3a0ce8d79ef5030852c51e9d911a27badfde0605293", 885 | "sha256:055d937d65826939cb044fc8c9b08889e8c743fdc6a32b33e2390f66013e449b", 886 | "sha256:07751360502caac1c067a8132d150cf3d61339af5691fe9e87803040dbc5db57", 887 | "sha256:0b4624f379dab24d3725ffde76559cff63d9ec94e1736b556dacdfebe5ab6d4b", 888 | "sha256:0ce82d761c532fe4ec3f87fc45688bdd3a4c1dc5e0b4a19814b9009a29baefd4", 889 | "sha256:1e4747bc279b4f613a09eb64bba2ba602d8a6664c6ce6396a4d0cd413a50ce07", 890 | "sha256:213c60cd50106436cc818accf5baa1aba61c0189ff610f64f4a3e8c6726218ba", 891 | "sha256:231710d57adfd809ef5d34183b8ed1eeae3f76459c18fb4a0b373ad56bedcdd9", 892 | "sha256:277a0ef2981ca40581a47093e9e2d13b3f1fbbeffae064c1d21bfceba2030287", 893 | "sha256:2cd5df3de48857ed0544b34e2d40e9fac445930039f3cfe4bcc592a1f836d513", 894 | "sha256:40527857252b61eacd1d9af500c3337ba8deb8fc298940291486c465c8b46ec0", 895 | "sha256:473f9edb243cb1935ab5a084eb238d842fb8f404ed2193a915d1784b5a6b5fc0", 896 | "sha256:48c346915c114f5fdb3ead70312bd042a953a8ce5c7106d5bfb1a5254e47da92", 897 | "sha256:50602afada6d6cbfad699b0c7bb50d5ccffa7e46a3d738092afddc1f9758427f", 898 | "sha256:68fb519c14306fec9720a2a5b45bc9f0c8d1b9c72adf45c37baedfcd949c35a2", 899 | "sha256:77f396e6ef4c73fdc33a9157446466f1cff553d979bd00ecb64385760c6babdc", 900 | "sha256:819b3830a1543db06c4d4b865e70ded25be52a2e0631ccd2f6a47a2822f2fd7c", 901 | "sha256:897b80890765f037df3403d22bab41627ca8811ae55e9a722fd0392850ec4d86", 902 | "sha256:98c4d36e99714e55cfbaaee6dd5badbc9a1ec339ebfc3b1f52e293aee6bb71a4", 903 | "sha256:9df7ed3b3d2e0ecfe09e14741b857df43adb5a3ddadc919a2d94fbdf78fea53c", 904 | "sha256:9fa600030013c4de8165339db93d182b9431076eb98eb40ee068700c9c813e34", 905 | "sha256:a80a78046a72361de73f8f395f1f1e49f956c6be882eed58505a15f3e430962b", 906 | "sha256:b3d267842bf12586ba6c734f89d1f5b871df0273157918b0ccefa29deb05c21c", 907 | "sha256:b5b9eccad747aabaaffbc6064800670f0c297e52c12754eb1d976c57e4f74dcb", 908 | "sha256:c5687b8d43cf58545ade1fe3e055f70eac7a5a1a0bf42824308d868289a95737", 909 | "sha256:cba8c411ef271aa037d7357a2bc8f9ee8b58b9965831d9e51baf703280dc73d3", 910 | "sha256:d15a181d1ecd0d4270dc32edb46f7cb7733c7c508857278d3d378d14d606db2d", 911 | "sha256:d4db7c7aef085872ef65a8fd7d6d09a14ae91f691dec3e87ee5ee0539d516f53", 912 | "sha256:d4eccecf9adf6fbcc6861a38015c2a64f38b9d94838ac1810a9023a0609e1b78", 913 | "sha256:d67d839ede4ed1b28a4e8909735fc992a923cdb84e618544973d7dfc71540803", 914 | "sha256:daf496c58a8c52083df09b80c860005194014c3698698d1a57cbcfa182142a3a", 915 | "sha256:e61ceaab6f49fb8bdfaa0f92c4b57bcfbea54c09277b1b4f7ac376bfb7a7c174", 916 | "sha256:f84fbc98b019fef2ee9a1cb3ce93e3187a6df0b2538a651bfb890254ba9f90b5" 917 | ], 918 | "markers": "python_version >= '3.6'", 919 | "version": "==6.0" 920 | }, 921 | "pyzmq": { 922 | "hashes": [ 923 | "sha256:08c4e315a76ef26eb833511ebf3fa87d182152adf43dedee8d79f998a2162a0b", 924 | "sha256:0ca6cd58f62a2751728016d40082008d3b3412a7f28ddfb4a2f0d3c130f69e74", 925 | "sha256:1621e7a2af72cced1f6ec8ca8ca91d0f76ac236ab2e8828ac8fe909512d566cb", 926 | "sha256:18cd854b423fce44951c3a4d3e686bac8f1243d954f579e120a1714096637cc0", 927 | "sha256:2841997a0d85b998cbafecb4183caf51fd19c4357075dfd33eb7efea57e4c149", 928 | "sha256:2b97502c16a5ec611cd52410bdfaab264997c627a46b0f98d3f666227fd1ea2d", 929 | "sha256:3a4c9886d61d386b2b493377d980f502186cd71d501fffdba52bd2a0880cef4f", 930 | "sha256:3c1895c95be92600233e476fe283f042e71cf8f0b938aabf21b7aafa62a8dac9", 931 | "sha256:42abddebe2c6a35180ca549fadc7228d23c1e1f76167c5ebc8a936b5804ea2df", 932 | "sha256:468bd59a588e276961a918a3060948ae68f6ff5a7fa10bb2f9160c18fe341067", 933 | "sha256:480b9931bfb08bf8b094edd4836271d4d6b44150da051547d8c7113bf947a8b0", 934 | "sha256:53f4fd13976789ffafedd4d46f954c7bb01146121812b72b4ddca286034df966", 935 | "sha256:62bcade20813796c426409a3e7423862d50ff0639f5a2a95be4b85b09a618666", 936 | "sha256:67db33bea0a29d03e6eeec55a8190e033318cee3cbc732ba8fd939617cbf762d", 937 | "sha256:6b217b8f9dfb6628f74b94bdaf9f7408708cb02167d644edca33f38746ca12dd", 938 | "sha256:7661fc1d5cb73481cf710a1418a4e1e301ed7d5d924f91c67ba84b2a1b89defd", 939 | "sha256:76c532fd68b93998aab92356be280deec5de8f8fe59cd28763d2cc8a58747b7f", 940 | "sha256:79244b9e97948eaf38695f4b8e6fc63b14b78cc37f403c6642ba555517ac1268", 941 | "sha256:7c58f598d9fcc52772b89a92d72bf8829c12d09746a6d2c724c5b30076c1f11d", 942 | "sha256:7dc09198e4073e6015d9a8ea093fc348d4e59de49382476940c3dd9ae156fba8", 943 | "sha256:80e043a89c6cadefd3a0712f8a1322038e819ebe9dbac7eca3bce1721bcb63bf", 944 | "sha256:851977788b9caa8ed011f5f643d3ee8653af02c5fc723fa350db5125abf2be7b", 945 | "sha256:8eddc033e716f8c91c6a2112f0a8ebc5e00532b4a6ae1eb0ccc48e027f9c671c", 946 | "sha256:902319cfe23366595d3fa769b5b751e6ee6750a0a64c5d9f757d624b2ac3519e", 947 | "sha256:954e73c9cd4d6ae319f1c936ad159072b6d356a92dcbbabfd6e6204b9a79d356", 948 | "sha256:ab888624ed68930442a3f3b0b921ad7439c51ba122dbc8c386e6487a658e4a4e", 949 | "sha256:acebba1a23fb9d72b42471c3771b6f2f18dcd46df77482612054bd45c07dfa36", 950 | "sha256:b4ebed0977f92320f6686c96e9e8dd29eed199eb8d066936bac991afc37cbb70", 951 | "sha256:badb868fff14cfd0e200eaa845887b1011146a7d26d579aaa7f966c203736b92", 952 | "sha256:be4e0f229cf3a71f9ecd633566bd6f80d9fa6afaaff5489492be63fe459ef98c", 953 | "sha256:c0f84360dcca3481e8674393bdf931f9f10470988f87311b19d23cda869bb6b7", 954 | "sha256:c1e41b32d6f7f9c26bc731a8b529ff592f31fc8b6ef2be9fa74abd05c8a342d7", 955 | "sha256:c88fa7410e9fc471e0858638f403739ee869924dd8e4ae26748496466e27ac59", 956 | "sha256:cf98fd7a6c8aaa08dbc699ffae33fd71175696d78028281bc7b832b26f00ca57", 957 | "sha256:d072f7dfbdb184f0786d63bda26e8a0882041b1e393fbe98940395f7fab4c5e2", 958 | "sha256:d1b5d457acbadcf8b27561deeaa386b0217f47626b29672fa7bd31deb6e91e1b", 959 | "sha256:d3dcb5548ead4f1123851a5ced467791f6986d68c656bc63bfff1bf9e36671e2", 960 | "sha256:d6157793719de168b199194f6b6173f0ccd3bf3499e6870fac17086072e39115", 961 | "sha256:d728b08448e5ac3e4d886b165385a262883c34b84a7fe1166277fe675e1c197a", 962 | "sha256:de8df0684398bd74ad160afdc2a118ca28384ac6f5e234eb0508858d8d2d9364", 963 | "sha256:e6a02cf7271ee94674a44f4e62aa061d2d049001c844657740e156596298b70b", 964 | "sha256:ea12133df25e3a6918718fbb9a510c6ee5d3fdd5a346320421aac3882f4feeea", 965 | "sha256:ea5a79e808baef98c48c884effce05c31a0698c1057de8fc1c688891043c1ce1", 966 | "sha256:f43b4a2e6218371dd4f41e547bd919ceeb6ebf4abf31a7a0669cd11cd91ea973", 967 | "sha256:f762442bab706fd874064ca218b33a1d8e40d4938e96c24dafd9b12e28017f45", 968 | "sha256:f89468059ebc519a7acde1ee50b779019535db8dcf9b8c162ef669257fef7a93", 969 | "sha256:f907c7359ce8bf7f7e63c82f75ad0223384105f5126f313400b7e8004d9b33c3" 970 | ], 971 | "markers": "python_version >= '3.6'", 972 | "version": "==22.3.0" 973 | }, 974 | "rapidfuzz": { 975 | "hashes": [ 976 | "sha256:01f16b6f3fa5d1a26c12f5da5de0032f1e12c919d876005b57492a8ec9a5c043", 977 | "sha256:0bcc5bbfdbe6068cc2cf0029ab6cde08dceac498d232fa3a61dd34fbfa0b3f36", 978 | "sha256:103193a01921b54fcdad6b01cfda3a68e00aeafca236b7ecd5b1b2c2e7e96337", 979 | "sha256:1d98a3187040dca855e02179a35c137f72ef83ce243783d44ea59efa86b94b3a", 980 | "sha256:31474074a99f72289ac325fbd77983e7d355d48860bfe7a4f6f6396fdb24410a", 981 | "sha256:33479f75f36ac3a1d8421365d4fa906e013490790730a89caba31d06e6f71738", 982 | "sha256:36137f88f2b28115af506118e64e11c816611eab2434293af7fdacd1290ffb9d", 983 | "sha256:364795f617a99e1dbb55ac3947ab8366588b72531cb2d6152666287d20610706", 984 | "sha256:3d69fabcd635783cd842e7d5ee4b77164314c5124b82df5a0c436ab3d698f8a9", 985 | "sha256:3f014a0f5f8159a94c6ee884fedd1c30e07fb866a5d76ff2c18091bc6363b76f", 986 | "sha256:402b2174bded62a793c5f7d9aec16bc32c661402360a934819ae72b54cfbce1e", 987 | "sha256:433737914b46c1ffa0c678eceae1c260dc6b7fb5b6cad4c725d3e3607c764b32", 988 | "sha256:477ab1a3044bab89db45caabc562b158f68765ecaa638b73ba17e92f09dfa5ff", 989 | "sha256:5ad450badf06ddf98a246140b5059ba895ee8445e8102a5a289908327f551f81", 990 | "sha256:67e61c2baa6bb1848c4a33752f1781124dcc90bf3f31b18b44db1ae4e4e26634", 991 | "sha256:68227a8b25291d6a2140aef049271ea30a77be5ef672a58e582a55a5cc1fce93", 992 | "sha256:6ebc0d3d15ed32f98f0052cf6e3e9c9b8010fb93c04fb74d2022e3c51ec540e2", 993 | "sha256:8401c41e219ae36ca7a88762776a6270511650d4cc70d024ae61561e96d67e47", 994 | "sha256:8ab7eb003a18991347174910f11d38ff40399081185d9e3199ec277535f7828b", 995 | "sha256:8c3b08e90e45acbc469d1f456681643256e952bf84ec7714f58979baba0c8a1c", 996 | "sha256:8dc0bf1814accee08a9c9bace6672ef06eae6b0446fce88e3e97e23dfaf3ea10", 997 | "sha256:8e872763dc0367d7544aa585d2e8b27af233323b8a7cd2f9b78cafa05bae5018", 998 | "sha256:92066ccb054efc2e17afb4049c98b550969653cd58f71dd756cfcc8e6864630a", 999 | "sha256:a5298f4ac1975edcbb15583eab659a44b33aebaf3bccf172e185cfea68771c08", 1000 | "sha256:aa91609979e9d2700f0ff100df99b36e7d700b70169ee385d43d5de9e471ae97", 1001 | "sha256:ac3273364cd1619cab3bf0ba731efea5405833f9eba362da7dcd70bd42073d8e", 1002 | "sha256:af991cb333ec526d894923163050931b3a870b7694bf7687aaa6154d341a98f5", 1003 | "sha256:b06de314f426aebff8a44319016bbe2b22f7848c84e44224f80b0690b7b08b18", 1004 | "sha256:b1c54807e556dbcc6caf4ce0f24446c01b195f3cc46e2a6e74b82d3a21eaa45d", 1005 | "sha256:b4cfdd0915ab4cec86c2ff6bab9f01b03454f3de0963c37f9f219df2ddf42b95", 1006 | "sha256:bbcd265b3c86176e5db4cbba7b4364d7333c214ee80e2d259c7085929934ca9d", 1007 | "sha256:bd7a4fe33ba49db3417f0f57a8af02462554f1296dedcf35b026cd3525efef74", 1008 | "sha256:bdbd387efb8478605951344f327dd03bf053c138d757369a43404305b99e55db", 1009 | "sha256:c2fafbbf97a4632822248f4201601b691e2eac5fdb30e5d7a96d07a6d058a7d4", 1010 | "sha256:c33541995b96ff40025c1456b8c74b7dd2ab9cbf91943fc35a7bb621f48940e2", 1011 | "sha256:c6bfa4ad0158a093cd304f795ceefdc3861ae6942a61432b2a50858be6de88ca", 1012 | "sha256:c83801a7c5209663aa120b815a4f2c39e95fe8e0b774ec58a1e0affd6a2fcfc6", 1013 | "sha256:cb92bf7fc911b787055a88d9295ca3b4fe8576e3b59271f070f1b1b181eb087d", 1014 | "sha256:d5187cd5cd6273e9fee07de493a42a2153134a4914df74cb1abb0744551c548a", 1015 | "sha256:d9faf62606c08a0a6992dd480c72b6a068733ae02688dc35f2e36ba0d44673f4", 1016 | "sha256:db5978e970fb0955974d51021da4b929e2e4890fef17792989ee32658e2b159c", 1017 | "sha256:de869c8f4e8edb9b2f7b8232a04896645501defcbd9d85bc0202ff3ec6285f6b", 1018 | "sha256:e5de44e719faea79e45322b037f0d4a141d750b80d2204fa68f43a42a24f0fbc", 1019 | "sha256:e903d4702647465721e2d0431c95f04fd56a06577f06f41e2960c83fd63c1bad", 1020 | "sha256:ea10bd8e0436801c3264f7084a5ea194f12ba9fe1ba898aa4a2107d276501292", 1021 | "sha256:eb0ea02295d9278bd2dcd2df4760b0f2887b6c3f2f374005ec5af320d8d3a37e", 1022 | "sha256:ec67d79af5a2d7b0cf67b570a5579710e461cadda4120478e813b63491f394dd", 1023 | "sha256:f171d9e66144b0647f9b998ef10bdd919a640e4b1357250c8ef6259deb5ffe0d", 1024 | "sha256:f6a56a48be047637b1b0b2459a11cf7cd5aa7bbe16a439bd4f73b4af39e620e4", 1025 | "sha256:f6e5b8af63f9c05b64454460759ed84a715d581d598ec4484f4ec512f398e8b1", 1026 | "sha256:f9439df09a782afd01b67005a3b110c70bbf9e1cf06d2ac9b293ce2d02d3c549", 1027 | "sha256:fcc420cad46be7c9887110edf04cdee545f26dbf22650a443d89790fc35f7b88" 1028 | ], 1029 | "markers": "python_version >= '2.7'", 1030 | "version": "==1.9.1" 1031 | }, 1032 | "regex": { 1033 | "hashes": [ 1034 | "sha256:04611cc0f627fc4a50bc4a9a2e6178a974c6a6a4aa9c1cca921635d2c47b9c87", 1035 | "sha256:0b5d6f9aed3153487252d00a18e53f19b7f52a1651bc1d0c4b5844bc286dfa52", 1036 | "sha256:0d2f5c3f7057530afd7b739ed42eb04f1011203bc5e4663e1e1d01bb50f813e3", 1037 | "sha256:11772be1eb1748e0e197a40ffb82fb8fd0d6914cd147d841d9703e2bef24d288", 1038 | "sha256:1333b3ce73269f986b1fa4d5d395643810074dc2de5b9d262eb258daf37dc98f", 1039 | "sha256:16f81025bb3556eccb0681d7946e2b35ff254f9f888cff7d2120e8826330315c", 1040 | "sha256:1a171eaac36a08964d023eeff740b18a415f79aeb212169080c170ec42dd5184", 1041 | "sha256:1d6301f5288e9bdca65fab3de6b7de17362c5016d6bf8ee4ba4cbe833b2eda0f", 1042 | "sha256:1e031899cb2bc92c0cf4d45389eff5b078d1936860a1be3aa8c94fa25fb46ed8", 1043 | "sha256:1f8c0ae0a0de4e19fddaaff036f508db175f6f03db318c80bbc239a1def62d02", 1044 | "sha256:2245441445099411b528379dee83e56eadf449db924648e5feb9b747473f42e3", 1045 | "sha256:22709d701e7037e64dae2a04855021b62efd64a66c3ceed99dfd684bfef09e38", 1046 | "sha256:24c89346734a4e4d60ecf9b27cac4c1fee3431a413f7aa00be7c4d7bbacc2c4d", 1047 | "sha256:25716aa70a0d153cd844fe861d4f3315a6ccafce22b39d8aadbf7fcadff2b633", 1048 | "sha256:2dacb3dae6b8cc579637a7b72f008bff50a94cde5e36e432352f4ca57b9e54c4", 1049 | "sha256:34316bf693b1d2d29c087ee7e4bb10cdfa39da5f9c50fa15b07489b4ab93a1b5", 1050 | "sha256:36b2d700a27e168fa96272b42d28c7ac3ff72030c67b32f37c05616ebd22a202", 1051 | "sha256:37978254d9d00cda01acc1997513f786b6b971e57b778fbe7c20e30ae81a97f3", 1052 | "sha256:38289f1690a7e27aacd049e420769b996826f3728756859420eeee21cc857118", 1053 | "sha256:385ccf6d011b97768a640e9d4de25412204fbe8d6b9ae39ff115d4ff03f6fe5d", 1054 | "sha256:3c7ea86b9ca83e30fa4d4cd0eaf01db3ebcc7b2726a25990966627e39577d729", 1055 | "sha256:49810f907dfe6de8da5da7d2b238d343e6add62f01a15d03e2195afc180059ed", 1056 | "sha256:519c0b3a6fbb68afaa0febf0d28f6c4b0a1074aefc484802ecb9709faf181607", 1057 | "sha256:51f02ca184518702975b56affde6c573ebad4e411599005ce4468b1014b4786c", 1058 | "sha256:552a39987ac6655dad4bf6f17dd2b55c7b0c6e949d933b8846d2e312ee80005a", 1059 | "sha256:596f5ae2eeddb79b595583c2e0285312b2783b0ec759930c272dbf02f851ff75", 1060 | "sha256:6014038f52b4b2ac1fa41a58d439a8a00f015b5c0735a0cd4b09afe344c94899", 1061 | "sha256:61ebbcd208d78658b09e19c78920f1ad38936a0aa0f9c459c46c197d11c580a0", 1062 | "sha256:6213713ac743b190ecbf3f316d6e41d099e774812d470422b3a0f137ea635832", 1063 | "sha256:637e27ea1ebe4a561db75a880ac659ff439dec7f55588212e71700bb1ddd5af9", 1064 | "sha256:6aa427c55a0abec450bca10b64446331b5ca8f79b648531138f357569705bc4a", 1065 | "sha256:6ca45359d7a21644793de0e29de497ef7f1ae7268e346c4faf87b421fea364e6", 1066 | "sha256:6db1b52c6f2c04fafc8da17ea506608e6be7086715dab498570c3e55e4f8fbd1", 1067 | "sha256:752e7ddfb743344d447367baa85bccd3629c2c3940f70506eb5f01abce98ee68", 1068 | "sha256:760c54ad1b8a9b81951030a7e8e7c3ec0964c1cb9fee585a03ff53d9e531bb8e", 1069 | "sha256:768632fd8172ae03852e3245f11c8a425d95f65ff444ce46b3e673ae5b057b74", 1070 | "sha256:7a0b9f6a1a15d494b35f25ed07abda03209fa76c33564c09c9e81d34f4b919d7", 1071 | "sha256:7e070d3aef50ac3856f2ef5ec7214798453da878bb5e5a16c16a61edf1817cc3", 1072 | "sha256:7e12949e5071c20ec49ef00c75121ed2b076972132fc1913ddf5f76cae8d10b4", 1073 | "sha256:7e26eac9e52e8ce86f915fd33380f1b6896a2b51994e40bb094841e5003429b4", 1074 | "sha256:85ffd6b1cb0dfb037ede50ff3bef80d9bf7fa60515d192403af6745524524f3b", 1075 | "sha256:8618d9213a863c468a865e9d2ec50221015f7abf52221bc927152ef26c484b4c", 1076 | "sha256:8acef4d8a4353f6678fd1035422a937c2170de58a2b29f7da045d5249e934101", 1077 | "sha256:8d2f355a951f60f0843f2368b39970e4667517e54e86b1508e76f92b44811a8a", 1078 | "sha256:90b6840b6448203228a9d8464a7a0d99aa8fa9f027ef95fe230579abaf8a6ee1", 1079 | "sha256:9187500d83fd0cef4669385cbb0961e227a41c0c9bc39219044e35810793edf7", 1080 | "sha256:93c20777a72cae8620203ac11c4010365706062aa13aaedd1a21bb07adbb9d5d", 1081 | "sha256:93cce7d422a0093cfb3606beae38a8e47a25232eea0f292c878af580a9dc7605", 1082 | "sha256:94c623c331a48a5ccc7d25271399aff29729fa202c737ae3b4b28b89d2b0976d", 1083 | "sha256:97f32dc03a8054a4c4a5ab5d761ed4861e828b2c200febd4e46857069a483916", 1084 | "sha256:9a2bf98ac92f58777c0fafc772bf0493e67fcf677302e0c0a630ee517a43b949", 1085 | "sha256:a602bdc8607c99eb5b391592d58c92618dcd1537fdd87df1813f03fed49957a6", 1086 | "sha256:a9d24b03daf7415f78abc2d25a208f234e2c585e5e6f92f0204d2ab7b9ab48e3", 1087 | "sha256:abfcb0ef78df0ee9df4ea81f03beea41849340ce33a4c4bd4dbb99e23ec781b6", 1088 | "sha256:b013f759cd69cb0a62de954d6d2096d648bc210034b79b1881406b07ed0a83f9", 1089 | "sha256:b02e3e72665cd02afafb933453b0c9f6c59ff6e3708bd28d0d8580450e7e88af", 1090 | "sha256:b52cc45e71657bc4743a5606d9023459de929b2a198d545868e11898ba1c3f59", 1091 | "sha256:ba37f11e1d020969e8a779c06b4af866ffb6b854d7229db63c5fdddfceaa917f", 1092 | "sha256:bb804c7d0bfbd7e3f33924ff49757de9106c44e27979e2492819c16972ec0da2", 1093 | "sha256:bf594cc7cc9d528338d66674c10a5b25e3cde7dd75c3e96784df8f371d77a298", 1094 | "sha256:c38baee6bdb7fe1b110b6b3aaa555e6e872d322206b7245aa39572d3fc991ee4", 1095 | "sha256:c73d2166e4b210b73d1429c4f1ca97cea9cc090e5302df2a7a0a96ce55373f1c", 1096 | "sha256:c9099bf89078675c372339011ccfc9ec310310bf6c292b413c013eb90ffdcafc", 1097 | "sha256:cf0db26a1f76aa6b3aa314a74b8facd586b7a5457d05b64f8082a62c9c49582a", 1098 | "sha256:d19a34f8a3429bd536996ad53597b805c10352a8561d8382e05830df389d2b43", 1099 | "sha256:da80047524eac2acf7c04c18ac7a7da05a9136241f642dd2ed94269ef0d0a45a", 1100 | "sha256:de2923886b5d3214be951bc2ce3f6b8ac0d6dfd4a0d0e2a4d2e5523d8046fdfb", 1101 | "sha256:defa0652696ff0ba48c8aff5a1fac1eef1ca6ac9c660b047fc8e7623c4eb5093", 1102 | "sha256:e54a1eb9fd38f2779e973d2f8958fd575b532fe26013405d1afb9ee2374e7ab8", 1103 | "sha256:e5c31d70a478b0ca22a9d2d76d520ae996214019d39ed7dd93af872c7f301e52", 1104 | "sha256:ebaeb93f90c0903233b11ce913a7cb8f6ee069158406e056f884854c737d2442", 1105 | "sha256:ecfe51abf7f045e0b9cdde71ca9e153d11238679ef7b5da6c82093874adf3338", 1106 | "sha256:f99112aed4fb7cee00c7f77e8b964a9b10f69488cdff626ffd797d02e2e4484f", 1107 | "sha256:fd914db437ec25bfa410f8aa0aa2f3ba87cdfc04d9919d608d02330947afaeab" 1108 | ], 1109 | "version": "==2022.1.18" 1110 | }, 1111 | "requests": { 1112 | "hashes": [ 1113 | "sha256:68d7c56fd5a8999887728ef304a6d12edc7be74f1cfa47714fc8b414525c9a61", 1114 | "sha256:f22fa1e554c9ddfd16e6e41ac79759e17be9e492b3587efa038054674760e72d" 1115 | ], 1116 | "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4, 3.5'", 1117 | "version": "==2.27.1" 1118 | }, 1119 | "sacremoses": { 1120 | "hashes": [ 1121 | "sha256:7622c6e9fe12d45b7acf4528451bd054c1557c1f6779398f9cd9f28332d92a0b" 1122 | ], 1123 | "version": "==0.0.47" 1124 | }, 1125 | "scikit-learn": { 1126 | "hashes": [ 1127 | "sha256:08ef968f6b72033c16c479c966bf37ccd49b06ea91b765e1cc27afefe723920b", 1128 | "sha256:158faf30684c92a78e12da19c73feff9641a928a8024b4fa5ec11d583f3d8a87", 1129 | "sha256:16455ace947d8d9e5391435c2977178d0ff03a261571e67f627c8fee0f9d431a", 1130 | "sha256:245c9b5a67445f6f044411e16a93a554edc1efdcce94d3fc0bc6a4b9ac30b752", 1131 | "sha256:285db0352e635b9e3392b0b426bc48c3b485512d3b4ac3c7a44ec2a2ba061e66", 1132 | "sha256:2f3b453e0b149898577e301d27e098dfe1a36943f7bb0ad704d1e548efc3b448", 1133 | "sha256:46f431ec59dead665e1370314dbebc99ead05e1c0a9df42f22d6a0e00044820f", 1134 | "sha256:55f2f3a8414e14fbee03782f9fe16cca0f141d639d2b1c1a36779fa069e1db57", 1135 | "sha256:5cb33fe1dc6f73dc19e67b264dbb5dde2a0539b986435fdd78ed978c14654830", 1136 | "sha256:75307d9ea39236cad7eea87143155eea24d48f93f3a2f9389c817f7019f00705", 1137 | "sha256:7626a34eabbf370a638f32d1a3ad50526844ba58d63e3ab81ba91e2a7c6d037e", 1138 | "sha256:7a93c1292799620df90348800d5ac06f3794c1316ca247525fa31169f6d25855", 1139 | "sha256:7d6b2475f1c23a698b48515217eb26b45a6598c7b1840ba23b3c5acece658dbb", 1140 | "sha256:80095a1e4b93bd33261ef03b9bc86d6db649f988ea4dbcf7110d0cded8d7213d", 1141 | "sha256:85260fb430b795d806251dd3bb05e6f48cdc777ac31f2bcf2bc8bbed3270a8f5", 1142 | "sha256:9369b030e155f8188743eb4893ac17a27f81d28a884af460870c7c072f114243", 1143 | "sha256:a053a6a527c87c5c4fa7bf1ab2556fa16d8345cf99b6c5a19030a4a7cd8fd2c0", 1144 | "sha256:a90b60048f9ffdd962d2ad2fb16367a87ac34d76e02550968719eb7b5716fd10", 1145 | "sha256:a999c9f02ff9570c783069f1074f06fe7386ec65b84c983db5aeb8144356a355", 1146 | "sha256:b1391d1a6e2268485a63c3073111fe3ba6ec5145fc957481cfd0652be571226d", 1147 | "sha256:b54a62c6e318ddbfa7d22c383466d38d2ee770ebdb5ddb668d56a099f6eaf75f", 1148 | "sha256:b5870959a5484b614f26d31ca4c17524b1b0317522199dc985c3b4256e030767", 1149 | "sha256:bc3744dabc56b50bec73624aeca02e0def06b03cb287de26836e730659c5d29c", 1150 | "sha256:d93d4c28370aea8a7cbf6015e8a669cd5d69f856cc2aa44e7a590fb805bb5583", 1151 | "sha256:d9aac97e57c196206179f674f09bc6bffcd0284e2ba95b7fe0b402ac3f986023", 1152 | "sha256:da3c84694ff693b5b3194d8752ccf935a665b8b5edc33a283122f4273ca3e687", 1153 | "sha256:e174242caecb11e4abf169342641778f68e1bfaba80cd18acd6bc84286b9a534", 1154 | "sha256:eabceab574f471de0b0eb3f2ecf2eee9f10b3106570481d007ed1c84ebf6d6a1", 1155 | "sha256:f14517e174bd7332f1cca2c959e704696a5e0ba246eb8763e6c24876d8710049", 1156 | "sha256:fa38a1b9b38ae1fad2863eff5e0d69608567453fdfc850c992e6e47eb764e846", 1157 | "sha256:ff3fa8ea0e09e38677762afc6e14cad77b5e125b0ea70c9bba1992f02c93b028", 1158 | "sha256:ff746a69ff2ef25f62b36338c615dd15954ddc3ab8e73530237dd73235e76d62" 1159 | ], 1160 | "markers": "python_version >= '3.7'", 1161 | "version": "==1.0.2" 1162 | }, 1163 | "scipy": { 1164 | "hashes": [ 1165 | "sha256:28ae39a37a00f7279c1f200f0bbecd01837d489025951732556b271b38ce84f0", 1166 | "sha256:2e5a776dc7105b53204b3c9b948ee32c0325664279cccf87f7285d3cf6f4c06b", 1167 | "sha256:301ebcd624f6949e46f8f573564168fe59bdd6b56ce81df6a82f6e00db8e1d98", 1168 | "sha256:3b1d2af8a14bc393b6c763802e1e228f0f8918c29e01cef4542a712188303e78", 1169 | "sha256:3bbc009781112537a5e7969abebff60a4cbc641f4394c29cf08047f2826d3e77", 1170 | "sha256:4035b0f70d1bdbfe143005bb1033938529f684c0b93b4a90c2f59bbd88bcd0d3", 1171 | "sha256:55863c865d651aa2e49d72778db976c0d38db7ddf9ec26ee869e56c1a8c799d1", 1172 | "sha256:5b39372472fb79ea4a35684bb2f3a573e6ffe805179a07965a50d2df10e17ce3", 1173 | "sha256:62164c89c57e7bc8ca931e29edf25f534828e2cc4b7eb254f34eaa7c395dae83", 1174 | "sha256:63bea96f299c549febe7039e8c80942217e3e39851fb2258fae430b722610573", 1175 | "sha256:739ee3f6688c96516248f88725bbe1f241f3e0ab708f5eda98e2a9fe5cf38fba", 1176 | "sha256:7ae0f1c0bce0188bcb93666f7ffdc4dfcedd071e60a92fd6107bc6061cab79c6", 1177 | "sha256:83b7a82a56ccaf8b5accd8f4988898412806aecb3f52fc505eeccaee9d8cb889", 1178 | "sha256:874588522c8c97ec285effbd0bcd7c9de03e918674a9decc5779cc85de408e0d", 1179 | "sha256:8db99b6c017ab971b04a0781103a31ce745d4f0ac2b7db999523d4a94549ae15", 1180 | "sha256:9439aa6e8076df746e6d026328ba01a2160e886f185926e8915849f1e124422f", 1181 | "sha256:94a33efa21cffc5c3f8d416c0c1c79914019b9e3a82b5461176e4dc1c42218ea", 1182 | "sha256:aa31ae8d8cf0abba07bc795f75b1aacf46b6136be22eefb4435040386f0f2bec", 1183 | "sha256:bb3931cc7281fc0e5cc94f4cdc316a8628206bac24ed0ccd999be09266bc9970", 1184 | "sha256:d6ccda8592a30120ea4c3ab669a10ab6e0c45284df9066b6583165d5092e75a7", 1185 | "sha256:d73b13eb0452c178f946b4db60b27e400225df02e926609652ed67798054e77d", 1186 | "sha256:da36fd4d686ac936b7cd6b8348dfd4aebfd42650fcf15af62e5d9b582a9e7cb6", 1187 | "sha256:f3b64d3456c4f52e665019e08347c86618b702c190a9130df3c6e0a9f43eca78" 1188 | ], 1189 | "markers": "python_version < '3.11' and python_version >= '3.8'", 1190 | "version": "==1.8.0rc2" 1191 | }, 1192 | "seaborn": { 1193 | "hashes": [ 1194 | "sha256:85a6baa9b55f81a0623abddc4a26b334653ff4c6b18c418361de19dbba0ef283", 1195 | "sha256:cf45e9286d40826864be0e3c066f98536982baf701a7caa386511792d61ff4f6" 1196 | ], 1197 | "markers": "python_version >= '3.6'", 1198 | "version": "==0.11.2" 1199 | }, 1200 | "setuptools": { 1201 | "hashes": [ 1202 | "sha256:2404879cda71495fc4d5cbc445ed52fdaddf352b36e40be8dcc63147cb4edabe", 1203 | "sha256:68eb94073fc486091447fcb0501efd6560a0e5a1839ba249e5ff3c4c93f05f90" 1204 | ], 1205 | "markers": "python_version >= '3.7'", 1206 | "version": "==60.5.0" 1207 | }, 1208 | "six": { 1209 | "hashes": [ 1210 | "sha256:1e61c37477a1626458e36f7b1d82aa5c9b094fa4802892072e49de9c60c4c926", 1211 | "sha256:8abb2f1d86890a2dfb989f9a77cfcfd3e47c2a354b01111771326f8aa26e0254" 1212 | ], 1213 | "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'", 1214 | "version": "==1.16.0" 1215 | }, 1216 | "smmap": { 1217 | "hashes": [ 1218 | "sha256:2aba19d6a040e78d8b09de5c57e96207b09ed71d8e55ce0959eeee6c8e190d94", 1219 | "sha256:c840e62059cd3be204b0c9c9f74be2c09d5648eddd4580d9314c3ecde0b30936" 1220 | ], 1221 | "markers": "python_version >= '3.6'", 1222 | "version": "==5.0.0" 1223 | }, 1224 | "streamlit": { 1225 | "hashes": [ 1226 | "sha256:36846f56973f019c980a65739fcd6b621591a0c5aae1caee959b238b1432ebb7", 1227 | "sha256:f13f7463d53fb866a1d07dccfacb60333c56dc9f34b001f310475beee71a08a5" 1228 | ], 1229 | "index": "pypi", 1230 | "version": "==1.2.0" 1231 | }, 1232 | "streamlit-ace": { 1233 | "hashes": [ 1234 | "sha256:475ad13d5dc09e6a01aa3869e1e4bd7744c4f0f70c38e8354536e5c0d5da945c", 1235 | "sha256:b89d6799e34d90673f4f9a9dbcdafda0fcf731a9a862e481e8c6b670796f78e7" 1236 | ], 1237 | "index": "pypi", 1238 | "version": "==0.1.0" 1239 | }, 1240 | "tenacity": { 1241 | "hashes": [ 1242 | "sha256:43242a20e3e73291a28bcbcacfd6e000b02d3857a9a9fff56b297a27afdc932f", 1243 | "sha256:f78f4ea81b0fabc06728c11dc2a8c01277bfc5181b321a4770471902e3eb844a" 1244 | ], 1245 | "markers": "python_version >= '3.6'", 1246 | "version": "==8.0.1" 1247 | }, 1248 | "threadpoolctl": { 1249 | "hashes": [ 1250 | "sha256:4fade5b3b48ae4b1c30f200b28f39180371104fccc642e039e0f2435ec8cc211", 1251 | "sha256:d03115321233d0be715f0d3a5ad1d6c065fe425ddc2d671ca8e45e9fd5d7a52a" 1252 | ], 1253 | "markers": "python_version >= '3.6'", 1254 | "version": "==3.0.0" 1255 | }, 1256 | "tokenizers": { 1257 | "hashes": [ 1258 | "sha256:18c495e700f4588b9a00e58b4c41dc459c36daaa7c39a27faf880eb8f5533ce1", 1259 | "sha256:1a5d3b596c6d3a237e1ad7f46c472d467b0246be7fd1a364f12576eb8db8f7e6", 1260 | "sha256:1d8867db210d75d97312360ae23b92aeb6a6b5bc65e15c1cd9d204b3fa3fc262", 1261 | "sha256:2a9ee3ee574d4aa740e099b0ad6ef8e63f52f48cde359bb31801146a5aa614dc", 1262 | "sha256:2f8c5fefef0d0a03be613547e613fbda06b9e6ee0891236649524964c3e54d80", 1263 | "sha256:4ab688daf4692a6c31dfe42f1f3a4a8c22050705eb69d58d3efde9d55f434586", 1264 | "sha256:4cc194104c8e427ffc4f54c7866488b42f2b1f6351a6cad0d045ca5ab8108e42", 1265 | "sha256:6b84673997990b3c260ae2f7c57fdf1f835e316820eff14aca46dc68be3c0c74", 1266 | "sha256:7b11b373705d082d43657c08883b79b5330f1952f0668d17488b6b889c4d7feb", 1267 | "sha256:91a8c045980594c7c437a52c3da5276eb3c530a662b4ef628ff32d81fb22b543", 1268 | "sha256:a7ce051aafc53c564c9edbc09df300c2bd4f6ce87460fc22a276fed405d1892a", 1269 | "sha256:a7ce0c2f27f7c92aa3f895231de90319acdf960ce2e42ba591edc651fda7d3c9", 1270 | "sha256:ad700fd9da518884fd58bf89f0b6dfeecef9b4e2d2db8765ef259f66d6c14980", 1271 | "sha256:ae7e40d9c8a77c5a4109731ac3e21633b0c609c56a8b58be6b863da61fa54636", 1272 | "sha256:c26dbc3b2a3d71d3d40c50975ec62145932f05aea73f03ea35c48ebd3a717611", 1273 | "sha256:e9d147e545cdfeca560646c7a703bf287afe45645da426506ccd5eb78aab5ef5", 1274 | "sha256:edd8cb85c16b4b65e87ea5ef9d400be9fdd53c4152adbaca8817e16dd3aa480b" 1275 | ], 1276 | "version": "==0.10.3" 1277 | }, 1278 | "toml": { 1279 | "hashes": [ 1280 | "sha256:806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b", 1281 | "sha256:b3bda1d108d5dd99f4a20d24d9c348e91c4db7ab1b749200bded2f839ccbe68f" 1282 | ], 1283 | "markers": "python_version >= '2.6' and python_version not in '3.0, 3.1, 3.2, 3.3'", 1284 | "version": "==0.10.2" 1285 | }, 1286 | "toolz": { 1287 | "hashes": [ 1288 | "sha256:6b312d5e15138552f1bda8a4e66c30e236c831b612b2bf0005f8a1df10a4bc33", 1289 | "sha256:a5700ce83414c64514d82d60bcda8aabfde092d1c1a8663f9200c07fdcc6da8f" 1290 | ], 1291 | "markers": "python_version >= '3.5'", 1292 | "version": "==0.11.2" 1293 | }, 1294 | "tornado": { 1295 | "hashes": [ 1296 | "sha256:0a00ff4561e2929a2c37ce706cb8233b7907e0cdc22eab98888aca5dd3775feb", 1297 | "sha256:0d321a39c36e5f2c4ff12b4ed58d41390460f798422c4504e09eb5678e09998c", 1298 | "sha256:1e8225a1070cd8eec59a996c43229fe8f95689cb16e552d130b9793cb570a288", 1299 | "sha256:20241b3cb4f425e971cb0a8e4ffc9b0a861530ae3c52f2b0434e6c1b57e9fd95", 1300 | "sha256:25ad220258349a12ae87ede08a7b04aca51237721f63b1808d39bdb4b2164558", 1301 | "sha256:33892118b165401f291070100d6d09359ca74addda679b60390b09f8ef325ffe", 1302 | "sha256:33c6e81d7bd55b468d2e793517c909b139960b6c790a60b7991b9b6b76fb9791", 1303 | "sha256:3447475585bae2e77ecb832fc0300c3695516a47d46cefa0528181a34c5b9d3d", 1304 | "sha256:34ca2dac9e4d7afb0bed4677512e36a52f09caa6fded70b4e3e1c89dbd92c326", 1305 | "sha256:3e63498f680547ed24d2c71e6497f24bca791aca2fe116dbc2bd0ac7f191691b", 1306 | "sha256:548430be2740e327b3fe0201abe471f314741efcb0067ec4f2d7dcfb4825f3e4", 1307 | "sha256:6196a5c39286cc37c024cd78834fb9345e464525d8991c21e908cc046d1cc02c", 1308 | "sha256:61b32d06ae8a036a6607805e6720ef00a3c98207038444ba7fd3d169cd998910", 1309 | "sha256:6286efab1ed6e74b7028327365cf7346b1d777d63ab30e21a0f4d5b275fc17d5", 1310 | "sha256:65d98939f1a2e74b58839f8c4dab3b6b3c1ce84972ae712be02845e65391ac7c", 1311 | "sha256:66324e4e1beede9ac79e60f88de548da58b1f8ab4b2f1354d8375774f997e6c0", 1312 | "sha256:6c77c9937962577a6a76917845d06af6ab9197702a42e1346d8ae2e76b5e3675", 1313 | "sha256:70dec29e8ac485dbf57481baee40781c63e381bebea080991893cd297742b8fd", 1314 | "sha256:7250a3fa399f08ec9cb3f7b1b987955d17e044f1ade821b32e5f435130250d7f", 1315 | "sha256:748290bf9112b581c525e6e6d3820621ff020ed95af6f17fedef416b27ed564c", 1316 | "sha256:7da13da6f985aab7f6f28debab00c67ff9cbacd588e8477034c0652ac141feea", 1317 | "sha256:8f959b26f2634a091bb42241c3ed8d3cedb506e7c27b8dd5c7b9f745318ddbb6", 1318 | "sha256:9de9e5188a782be6b1ce866e8a51bc76a0fbaa0e16613823fc38e4fc2556ad05", 1319 | "sha256:a48900ecea1cbb71b8c71c620dee15b62f85f7c14189bdeee54966fbd9a0c5bd", 1320 | "sha256:b87936fd2c317b6ee08a5741ea06b9d11a6074ef4cc42e031bc6403f82a32575", 1321 | "sha256:c77da1263aa361938476f04c4b6c8916001b90b2c2fdd92d8d535e1af48fba5a", 1322 | "sha256:cb5ec8eead331e3bb4ce8066cf06d2dfef1bfb1b2a73082dfe8a161301b76e37", 1323 | "sha256:cc0ee35043162abbf717b7df924597ade8e5395e7b66d18270116f8745ceb795", 1324 | "sha256:d14d30e7f46a0476efb0deb5b61343b1526f73ebb5ed84f23dc794bdb88f9d9f", 1325 | "sha256:d371e811d6b156d82aa5f9a4e08b58debf97c302a35714f6f45e35139c332e32", 1326 | "sha256:d3d20ea5782ba63ed13bc2b8c291a053c8d807a8fa927d941bd718468f7b950c", 1327 | "sha256:d3f7594930c423fd9f5d1a76bee85a2c36fd8b4b16921cae7e965f22575e9c01", 1328 | "sha256:dcef026f608f678c118779cd6591c8af6e9b4155c44e0d1bc0c87c036fb8c8c4", 1329 | "sha256:e0791ac58d91ac58f694d8d2957884df8e4e2f6687cdf367ef7eb7497f79eaa2", 1330 | "sha256:e385b637ac3acaae8022e7e47dfa7b83d3620e432e3ecb9a3f7f58f150e50921", 1331 | "sha256:e519d64089b0876c7b467274468709dadf11e41d65f63bba207e04217f47c085", 1332 | "sha256:e7229e60ac41a1202444497ddde70a48d33909e484f96eb0da9baf8dc68541df", 1333 | "sha256:ed3ad863b1b40cd1d4bd21e7498329ccaece75db5a5bf58cd3c9f130843e7102", 1334 | "sha256:f0ba29bafd8e7e22920567ce0d232c26d4d47c8b5cf4ed7b562b5db39fa199c5", 1335 | "sha256:fa2ba70284fa42c2a5ecb35e322e68823288a4251f9ba9cc77be04ae15eada68", 1336 | "sha256:fba85b6cd9c39be262fcd23865652920832b61583de2a2ca907dbd8e8a8c81e5" 1337 | ], 1338 | "markers": "python_version >= '3.5'", 1339 | "version": "==6.1" 1340 | }, 1341 | "tqdm": { 1342 | "hashes": [ 1343 | "sha256:8dd278a422499cd6b727e6ae4061c40b48fce8b76d1ccbf5d34fca9b7f925b0c", 1344 | "sha256:d359de7217506c9851b7869f3708d8ee53ed70a1b8edbba4dbcb47442592920d" 1345 | ], 1346 | "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'", 1347 | "version": "==4.62.3" 1348 | }, 1349 | "traitlets": { 1350 | "hashes": [ 1351 | "sha256:059f456c5a7c1c82b98c2e8c799f39c9b8128f6d0d46941ee118daace9eb70c7", 1352 | "sha256:2d313cc50a42cd6c277e7d7dc8d4d7fedd06a2c215f78766ae7b1a66277e0033" 1353 | ], 1354 | "markers": "python_version >= '3.7'", 1355 | "version": "==5.1.1" 1356 | }, 1357 | "transformers": { 1358 | "hashes": [ 1359 | "sha256:421e63eecd4dc1f2087f6e96d324fdeff938c8dfc9e0ac6ddceef8f2e764b982", 1360 | "sha256:7d948488faf88fbcc8dd2b287eaa377d140dc38168e0d887d7ef37dceed6a941" 1361 | ], 1362 | "index": "pypi", 1363 | "version": "==4.12.5" 1364 | }, 1365 | "typing-extensions": { 1366 | "hashes": [ 1367 | "sha256:4ca091dea149f945ec56afb48dae714f21e8692ef22a395223bcd328961b6a0e", 1368 | "sha256:7f001e5ac290a0c0401508864c7ec868be4e701886d5b573a9528ed3973d9d3b" 1369 | ], 1370 | "markers": "python_version >= '3.6'", 1371 | "version": "==4.0.1" 1372 | }, 1373 | "tzdata": { 1374 | "hashes": [ 1375 | "sha256:3eee491e22ebfe1e5cfcc97a4137cd70f092ce59144d81f8924a844de05ba8f5", 1376 | "sha256:68dbe41afd01b867894bbdfd54fa03f468cfa4f0086bfb4adcd8de8f24f3ee21" 1377 | ], 1378 | "markers": "python_version >= '3.6'", 1379 | "version": "==2021.5" 1380 | }, 1381 | "tzlocal": { 1382 | "hashes": [ 1383 | "sha256:0f28015ac68a5c067210400a9197fc5d36ba9bc3f8eaf1da3cbd59acdfed9e09", 1384 | "sha256:28ba8d9fcb6c9a782d6e0078b4f6627af1ea26aeaa32b4eab5324abc7df4149f" 1385 | ], 1386 | "markers": "python_version >= '3.6'", 1387 | "version": "==4.1" 1388 | }, 1389 | "urllib3": { 1390 | "hashes": [ 1391 | "sha256:000ca7f471a233c2251c6c7023ee85305721bfdf18621ebff4fd17a8653427ed", 1392 | "sha256:0e7c33d9a63e7ddfcb86780aac87befc2fbddf46c58dbb487e0855f7ceec283c" 1393 | ], 1394 | "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4' and python_version < '4'", 1395 | "version": "==1.26.8" 1396 | }, 1397 | "validators": { 1398 | "hashes": [ 1399 | "sha256:0143dcca8a386498edaf5780cbd5960da1a4c85e0719f3ee5c9b41249c4fefbd", 1400 | "sha256:37cd9a9213278538ad09b5b9f9134266e7c226ab1fede1d500e29e0a8fbb9ea6" 1401 | ], 1402 | "markers": "python_version >= '3.4'", 1403 | "version": "==0.18.2" 1404 | }, 1405 | "watchdog": { 1406 | "hashes": [ 1407 | "sha256:25fb5240b195d17de949588628fdf93032ebf163524ef08933db0ea1f99bd685", 1408 | "sha256:3386b367e950a11b0568062b70cc026c6f645428a698d33d39e013aaeda4cc04", 1409 | "sha256:3becdb380d8916c873ad512f1701f8a92ce79ec6978ffde92919fd18d41da7fb", 1410 | "sha256:4ae38bf8ba6f39d5b83f78661273216e7db5b00f08be7592062cb1fc8b8ba542", 1411 | "sha256:8047da932432aa32c515ec1447ea79ce578d0559362ca3605f8e9568f844e3c6", 1412 | "sha256:8f1c00aa35f504197561060ca4c21d3cc079ba29cf6dd2fe61024c70160c990b", 1413 | "sha256:922a69fa533cb0c793b483becaaa0845f655151e7256ec73630a1b2e9ebcb660", 1414 | "sha256:9693f35162dc6208d10b10ddf0458cc09ad70c30ba689d9206e02cd836ce28a3", 1415 | "sha256:a0f1c7edf116a12f7245be06120b1852275f9506a7d90227648b250755a03923", 1416 | "sha256:a36e75df6c767cbf46f61a91c70b3ba71811dfa0aca4a324d9407a06a8b7a2e7", 1417 | "sha256:aba5c812f8ee8a3ff3be51887ca2d55fb8e268439ed44110d3846e4229eb0e8b", 1418 | "sha256:ad6f1796e37db2223d2a3f302f586f74c72c630b48a9872c1e7ae8e92e0ab669", 1419 | "sha256:ae67501c95606072aafa865b6ed47343ac6484472a2f95490ba151f6347acfc2", 1420 | "sha256:b2fcf9402fde2672545b139694284dc3b665fd1be660d73eca6805197ef776a3", 1421 | "sha256:b52b88021b9541a60531142b0a451baca08d28b74a723d0c99b13c8c8d48d604", 1422 | "sha256:b7d336912853d7b77f9b2c24eeed6a5065d0a0cc0d3b6a5a45ad6d1d05fb8cd8", 1423 | "sha256:bd9ba4f332cf57b2c1f698be0728c020399ef3040577cde2939f2e045b39c1e5", 1424 | "sha256:be9be735f827820a06340dff2ddea1fb7234561fa5e6300a62fe7f54d40546a0", 1425 | "sha256:cca7741c0fcc765568350cb139e92b7f9f3c9a08c4f32591d18ab0a6ac9e71b6", 1426 | "sha256:d0d19fb2441947b58fbf91336638c2b9f4cc98e05e1045404d7a4cb7cddc7a65", 1427 | "sha256:e02794ac791662a5eafc6ffeaf9bcc149035a0e48eb0a9d40a8feb4622605a3d", 1428 | "sha256:e0f30db709c939cabf64a6dc5babb276e6d823fd84464ab916f9b9ba5623ca15", 1429 | "sha256:e92c2d33858c8f560671b448205a268096e17870dcf60a9bb3ac7bfbafb7f5f9" 1430 | ], 1431 | "markers": "platform_system != 'Darwin'", 1432 | "version": "==2.1.6" 1433 | }, 1434 | "wcwidth": { 1435 | "hashes": [ 1436 | "sha256:beb4802a9cebb9144e99086eff703a642a13d6a0052920003a230f3294bbe784", 1437 | "sha256:c4d647b99872929fdb7bdcaa4fbe7f01413ed3d98077df798530e5b04f116c83" 1438 | ], 1439 | "version": "==0.2.5" 1440 | }, 1441 | "widgetsnbextension": { 1442 | "hashes": [ 1443 | "sha256:6aab8443ea47029e70b322034eedbbf9cf526c47ace5a3a75b60fcc633309ffd", 1444 | "sha256:7d83acb4d61b32af45c3b2f8df2868e22313f1d3130888b0b246708048b247a5" 1445 | ], 1446 | "markers": "python_version >= '3.7'", 1447 | "version": "==4.0.0b1" 1448 | }, 1449 | "yfinance": { 1450 | "hashes": [ 1451 | "sha256:9ea6fd18319fd898a8428a4a3d67171812b54779e330ead4d4ed0c59eb311be5", 1452 | "sha256:d884ec6cbc3d94faa065f2bc9f406d8041c401f78a64781bf5de2b03a1cb9206" 1453 | ], 1454 | "index": "pypi", 1455 | "version": "==0.1.66" 1456 | } 1457 | }, 1458 | "develop": { 1459 | "black": { 1460 | "hashes": [ 1461 | "sha256:802c6c30b637b28645b7fde282ed2569c0cd777dbe493a41b6a03c1d903f99ac", 1462 | "sha256:a042adbb18b3262faad5aff4e834ff186bb893f95ba3a8013f09de1e5569def2" 1463 | ], 1464 | "index": "pypi", 1465 | "version": "==21.11b1" 1466 | }, 1467 | "click": { 1468 | "hashes": [ 1469 | "sha256:d2b5255c7c6349bc1bd1e59e08cd12acbbd63ce649f2588755783aa94dfb6b1a", 1470 | "sha256:dacca89f4bfadd5de3d7489b7c8a566eee0d3676333fbb50030263894c38c0dc" 1471 | ], 1472 | "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4'", 1473 | "version": "==7.1.2" 1474 | }, 1475 | "greenlet": { 1476 | "hashes": [ 1477 | "sha256:03e6e40a1c6d523e59e4b80173986dfb4bdefbbd14104a6f1a9d321bb4dc0226", 1478 | "sha256:045a6cdd8d7ba5fffb82b9d4d35ae99bbc57afdd03a8b8eb161ec6fd0d2fc15b", 1479 | "sha256:04828fcd02de1fa606560ac13eaa026a3f1859bbb6098cbb4e2c9471bce73e17", 1480 | "sha256:063c55ae93b19dcbd077182d34ab7e70838d16edae8a5ba9fe1c8f9a6530201d", 1481 | "sha256:08f03790cd6105a5b0f452d798a22bd72944bda41dc674d39dc8e485b730056e", 1482 | "sha256:22b2111811abbd2af884426b2286b41ad3dbec15dcd362f68fc319abdf2d6f36", 1483 | "sha256:44440890e79d8bded5893fa4c322c3d8bf18fdf87657fd6523252ec247be6f4b", 1484 | "sha256:4c74283a777414ea1382448f70340096b360e3dc4bedc64259b0e355328f2f5a", 1485 | "sha256:4c79da840373815c8ebbde0e64aa0b74fbfe74394665dcf318cfd7220ca9ed8b", 1486 | "sha256:4cedd60664090cc7407119fd40b91c9a2a640909c8c59273b180ba61b1ff9210", 1487 | "sha256:53f90311f1779fac5641a75c01ba3b9d088688518915b7138b2f0636f151c20a", 1488 | "sha256:5667b436e4a365f9bc9bb98c0d5356c1929a62a51d78373c92870a138ada273a", 1489 | "sha256:5aa13f7f2650f39653c096cead3346e0a69cc17ad29a91a3a6776801f124b963", 1490 | "sha256:5f9a1fdd3339cd2fcaa2e768fb297429601888ef28ab9509a34cb3dd4497c88f", 1491 | "sha256:61c2fbbf1cebb7cbaa35690143b5dc3212d764c7975957cc5aeacfd5686ad534", 1492 | "sha256:63e0620aec7dc22fd988ec2c62c7e678921d13cf8eaefc2d2df6cc065998cc7b", 1493 | "sha256:676d9c5f0428da9f69621ff71091b4c02d952a2f7e71a47891cde93b9114f048", 1494 | "sha256:678065b2bc9a2fb804a61cfddac6b44cbddb1787e619e47eae3cb25c57709516", 1495 | "sha256:68ebc87166fc0a13d9fb0b7f231790369ea03ca0b7efa6d100ea2f701dfb6a6a", 1496 | "sha256:69a681b219c1208f0dd40c29c142e44a436f1f7add8ae9ac93470c1764b38980", 1497 | "sha256:6bcfa9dd47645ea7ab072422405858ab8afb8420014bd2dfde0fed78d4026e08", 1498 | "sha256:757ddbadc18515d28018c53f98bf85ea7af9fb7accff0d7b5d681bcbfdca9a74", 1499 | "sha256:7bf83a6b7f068e631cfae0a0fc9f7ca73bc8115c0d6240131b1d5c5d7a65bbc2", 1500 | "sha256:800c0e9f13df16c36df8b040bb1693cea4e8375b8ddc730013c87ed656d3659c", 1501 | "sha256:80e8f41031b26856b8e4a0f65a395bb57cb3fcc22a810f87994a266f63f22fd0", 1502 | "sha256:81e8c96d0f590c11ffcbed42293dc3e10be1639a57b0e531a937ac61fb400224", 1503 | "sha256:85a8b1bfccf88326cf36a43a6cd7990afa22f0a02da624ca18ac7eb16bc14edd", 1504 | "sha256:9ad8a0b3542747b4311f03784a87ba2f1c2a0bf15e7e95ecf06d97ccea2f81e9", 1505 | "sha256:9ae7b519fbacaa5bf7e9ba71d582da463ce049e493568be6da80f444504bc951", 1506 | "sha256:9d531a58f3feb283f120bacc817e4d75289bde8263363fbfeedf96376a1c68a8", 1507 | "sha256:9db3f35c9c493dbbf053fb13285822bccbf2a76049328d10edf0daf4591b65a0", 1508 | "sha256:9dcc10e86164853c5267bfac43816048a12dcf4c898c1b83a2eb8d5933da9ee0", 1509 | "sha256:a172161ec09ef67f8b88fce873f3b6b37ca99b4ddd2536147dc611d4d645bc28", 1510 | "sha256:a34b6d63ebaab722f79df4f79cbceab6fac2f96546561848a8ce1513a4478e16", 1511 | "sha256:a74c507dbef45ba85f8565a1bc297f97342a246078af5ea05330992d5a26e72c", 1512 | "sha256:ab6385c0a16c1d33ab45593f0cad49834918ad83d0406b58cd62f1454a1778c6", 1513 | "sha256:ab951ebc9f4c63d9ba0518d533f358519e3633c3a263bfba8674ee0c5043bd1a", 1514 | "sha256:b3ff97e9761e3c392eaba4b7f17da9deb9e1177b372313611ee2358a19f235bb", 1515 | "sha256:b68ff6925dd210a4eac47df411316168a2448178f837fcb01597d9a183ad8603", 1516 | "sha256:b904cbb4b69fa959674043d39aa34ec84abca917037ec931d72003b60b311174", 1517 | "sha256:be681332594c3361a32198fe591f966e6114c67bf62e1cbb1f6fe700e7f809b3", 1518 | "sha256:c006d07a64777466b4ecf75a3fc86f7c687021e9b1fae0a0c3157ae93ce44563", 1519 | "sha256:c9525a82b0ff1bb35253ec2d2e9430c53479274e65bddefbfd5db74972c7202d", 1520 | "sha256:cb1f258971419b4b34f71736b09ce7d3daeea71a5660eb28b34f8a80520ee20b", 1521 | "sha256:ce1f6e65a3b9b6a8b5b1f64ef75e49fa159721c8882027b50cfaa82472bd1c10", 1522 | "sha256:ce2ec312bcb516a83780b659fd008fdd26af449b653c8ffa52e203a397765cc2", 1523 | "sha256:da809e3861a8f697727b6bdf4c735184912215d2eb9df15eb7ad3d6c9d533a52", 1524 | "sha256:edacb7c0f8a42e6df031ef675e29156ca933403f1cb8027e8f2c82ad8d68bc67", 1525 | "sha256:fa04d0419b2ed61125bb8a4a0a810cad428546adeee87cab6f2beee50259fecc" 1526 | ], 1527 | "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4'", 1528 | "version": "==2.0.0a1" 1529 | }, 1530 | "msgpack": { 1531 | "hashes": [ 1532 | "sha256:0d8c332f53ffff01953ad25131272506500b14750c1d0ce8614b17d098252fbc", 1533 | "sha256:1c58cdec1cb5fcea8c2f1771d7b5fec79307d056874f746690bd2bdd609ab147", 1534 | "sha256:2c3ca57c96c8e69c1a0d2926a6acf2d9a522b41dc4253a8945c4c6cd4981a4e3", 1535 | "sha256:2f30dd0dc4dfe6231ad253b6f9f7128ac3202ae49edd3f10d311adc358772dba", 1536 | "sha256:2f97c0f35b3b096a330bb4a1a9247d0bd7e1f3a2eba7ab69795501504b1c2c39", 1537 | "sha256:36a64a10b16c2ab31dcd5f32d9787ed41fe68ab23dd66957ca2826c7f10d0b85", 1538 | "sha256:3d875631ecab42f65f9dce6f55ce6d736696ced240f2634633188de2f5f21af9", 1539 | "sha256:40fb89b4625d12d6027a19f4df18a4de5c64f6f3314325049f219683e07e678a", 1540 | "sha256:47d733a15ade190540c703de209ffbc42a3367600421b62ac0c09fde594da6ec", 1541 | "sha256:494471d65b25a8751d19c83f1a482fd411d7ca7a3b9e17d25980a74075ba0e88", 1542 | "sha256:51fdc7fb93615286428ee7758cecc2f374d5ff363bdd884c7ea622a7a327a81e", 1543 | "sha256:6eef0cf8db3857b2b556213d97dd82de76e28a6524853a9beb3264983391dc1a", 1544 | "sha256:6f4c22717c74d44bcd7af353024ce71c6b55346dad5e2cc1ddc17ce8c4507c6b", 1545 | "sha256:73a80bd6eb6bcb338c1ec0da273f87420829c266379c8c82fa14c23fb586cfa1", 1546 | "sha256:89908aea5f46ee1474cc37fbc146677f8529ac99201bc2faf4ef8edc023c2bf3", 1547 | "sha256:8a3a5c4b16e9d0edb823fe54b59b5660cc8d4782d7bf2c214cb4b91a1940a8ef", 1548 | "sha256:96acc674bb9c9be63fa8b6dabc3248fdc575c4adc005c440ad02f87ca7edd079", 1549 | "sha256:973ad69fd7e31159eae8f580f3f707b718b61141838321c6fa4d891c4a2cca52", 1550 | "sha256:9b6f2d714c506e79cbead331de9aae6837c8dd36190d02da74cb409b36162e8a", 1551 | "sha256:9c0903bd93cbd34653dd63bbfcb99d7539c372795201f39d16fdfde4418de43a", 1552 | "sha256:9fce00156e79af37bb6db4e7587b30d11e7ac6a02cb5bac387f023808cd7d7f4", 1553 | "sha256:a598d0685e4ae07a0672b59792d2cc767d09d7a7f39fd9bd37ff84e060b1a996", 1554 | "sha256:b0a792c091bac433dfe0a70ac17fc2087d4595ab835b47b89defc8bbabcf5c73", 1555 | "sha256:bb87f23ae7d14b7b3c21009c4b1705ec107cb21ee71975992f6aca571fb4a42a", 1556 | "sha256:bf1e6bfed4860d72106f4e0a1ab519546982b45689937b40257cfd820650b920", 1557 | "sha256:c1ba333b4024c17c7591f0f372e2daa3c31db495a9b2af3cf664aef3c14354f7", 1558 | "sha256:c2140cf7a3ec475ef0938edb6eb363fa704159e0bf71dde15d953bacc1cf9d7d", 1559 | "sha256:c7e03b06f2982aa98d4ddd082a210c3db200471da523f9ac197f2828e80e7770", 1560 | "sha256:d02cea2252abc3756b2ac31f781f7a98e89ff9759b2e7450a1c7a0d13302ff50", 1561 | "sha256:da24375ab4c50e5b7486c115a3198d207954fe10aaa5708f7b65105df09109b2", 1562 | "sha256:e4c309a68cb5d6bbd0c50d5c71a25ae81f268c2dc675c6f4ea8ab2feec2ac4e2", 1563 | "sha256:f01b26c2290cbd74316990ba84a14ac3d599af9cebefc543d241a66e785cf17d", 1564 | "sha256:f201d34dc89342fabb2a10ed7c9a9aaaed9b7af0f16a5923f1ae562b31258dea", 1565 | "sha256:f74da1e5fcf20ade12c6bf1baa17a2dc3604958922de8dc83cbe3eff22e8b611" 1566 | ], 1567 | "version": "==1.0.3" 1568 | }, 1569 | "mypy-extensions": { 1570 | "hashes": [ 1571 | "sha256:090fedd75945a69ae91ce1303b5824f428daf5a028d2f6ab8a299250a846f15d", 1572 | "sha256:2d82818f5bb3e369420cb3c4060a7970edba416647068eb4c5343488a6c604a8" 1573 | ], 1574 | "version": "==0.4.3" 1575 | }, 1576 | "pathspec": { 1577 | "hashes": [ 1578 | "sha256:7d15c4ddb0b5c802d161efc417ec1a2558ea2653c2e8ad9c19098201dc1c993a", 1579 | "sha256:e564499435a2673d586f6b2130bb5b95f04a3ba06f81b8f895b651a3c76aabb1" 1580 | ], 1581 | "version": "==0.9.0" 1582 | }, 1583 | "platformdirs": { 1584 | "hashes": [ 1585 | "sha256:1d7385c7db91728b83efd0ca99a5afb296cab9d0ed8313a45ed8ba17967ecfca", 1586 | "sha256:440633ddfebcc36264232365d7840a970e75e1018d15b4327d11f91909045fda" 1587 | ], 1588 | "markers": "python_version >= '3.7'", 1589 | "version": "==2.4.1" 1590 | }, 1591 | "pynvim": { 1592 | "hashes": [ 1593 | "sha256:3a795378bde5e8092fbeb3a1a99be9c613d2685542f1db0e5c6fd467eed56dff" 1594 | ], 1595 | "index": "pypi", 1596 | "version": "==0.4.3" 1597 | }, 1598 | "regex": { 1599 | "hashes": [ 1600 | "sha256:04611cc0f627fc4a50bc4a9a2e6178a974c6a6a4aa9c1cca921635d2c47b9c87", 1601 | "sha256:0b5d6f9aed3153487252d00a18e53f19b7f52a1651bc1d0c4b5844bc286dfa52", 1602 | "sha256:0d2f5c3f7057530afd7b739ed42eb04f1011203bc5e4663e1e1d01bb50f813e3", 1603 | "sha256:11772be1eb1748e0e197a40ffb82fb8fd0d6914cd147d841d9703e2bef24d288", 1604 | "sha256:1333b3ce73269f986b1fa4d5d395643810074dc2de5b9d262eb258daf37dc98f", 1605 | "sha256:16f81025bb3556eccb0681d7946e2b35ff254f9f888cff7d2120e8826330315c", 1606 | "sha256:1a171eaac36a08964d023eeff740b18a415f79aeb212169080c170ec42dd5184", 1607 | "sha256:1d6301f5288e9bdca65fab3de6b7de17362c5016d6bf8ee4ba4cbe833b2eda0f", 1608 | "sha256:1e031899cb2bc92c0cf4d45389eff5b078d1936860a1be3aa8c94fa25fb46ed8", 1609 | "sha256:1f8c0ae0a0de4e19fddaaff036f508db175f6f03db318c80bbc239a1def62d02", 1610 | "sha256:2245441445099411b528379dee83e56eadf449db924648e5feb9b747473f42e3", 1611 | "sha256:22709d701e7037e64dae2a04855021b62efd64a66c3ceed99dfd684bfef09e38", 1612 | "sha256:24c89346734a4e4d60ecf9b27cac4c1fee3431a413f7aa00be7c4d7bbacc2c4d", 1613 | "sha256:25716aa70a0d153cd844fe861d4f3315a6ccafce22b39d8aadbf7fcadff2b633", 1614 | "sha256:2dacb3dae6b8cc579637a7b72f008bff50a94cde5e36e432352f4ca57b9e54c4", 1615 | "sha256:34316bf693b1d2d29c087ee7e4bb10cdfa39da5f9c50fa15b07489b4ab93a1b5", 1616 | "sha256:36b2d700a27e168fa96272b42d28c7ac3ff72030c67b32f37c05616ebd22a202", 1617 | "sha256:37978254d9d00cda01acc1997513f786b6b971e57b778fbe7c20e30ae81a97f3", 1618 | "sha256:38289f1690a7e27aacd049e420769b996826f3728756859420eeee21cc857118", 1619 | "sha256:385ccf6d011b97768a640e9d4de25412204fbe8d6b9ae39ff115d4ff03f6fe5d", 1620 | "sha256:3c7ea86b9ca83e30fa4d4cd0eaf01db3ebcc7b2726a25990966627e39577d729", 1621 | "sha256:49810f907dfe6de8da5da7d2b238d343e6add62f01a15d03e2195afc180059ed", 1622 | "sha256:519c0b3a6fbb68afaa0febf0d28f6c4b0a1074aefc484802ecb9709faf181607", 1623 | "sha256:51f02ca184518702975b56affde6c573ebad4e411599005ce4468b1014b4786c", 1624 | "sha256:552a39987ac6655dad4bf6f17dd2b55c7b0c6e949d933b8846d2e312ee80005a", 1625 | "sha256:596f5ae2eeddb79b595583c2e0285312b2783b0ec759930c272dbf02f851ff75", 1626 | "sha256:6014038f52b4b2ac1fa41a58d439a8a00f015b5c0735a0cd4b09afe344c94899", 1627 | "sha256:61ebbcd208d78658b09e19c78920f1ad38936a0aa0f9c459c46c197d11c580a0", 1628 | "sha256:6213713ac743b190ecbf3f316d6e41d099e774812d470422b3a0f137ea635832", 1629 | "sha256:637e27ea1ebe4a561db75a880ac659ff439dec7f55588212e71700bb1ddd5af9", 1630 | "sha256:6aa427c55a0abec450bca10b64446331b5ca8f79b648531138f357569705bc4a", 1631 | "sha256:6ca45359d7a21644793de0e29de497ef7f1ae7268e346c4faf87b421fea364e6", 1632 | "sha256:6db1b52c6f2c04fafc8da17ea506608e6be7086715dab498570c3e55e4f8fbd1", 1633 | "sha256:752e7ddfb743344d447367baa85bccd3629c2c3940f70506eb5f01abce98ee68", 1634 | "sha256:760c54ad1b8a9b81951030a7e8e7c3ec0964c1cb9fee585a03ff53d9e531bb8e", 1635 | "sha256:768632fd8172ae03852e3245f11c8a425d95f65ff444ce46b3e673ae5b057b74", 1636 | "sha256:7a0b9f6a1a15d494b35f25ed07abda03209fa76c33564c09c9e81d34f4b919d7", 1637 | "sha256:7e070d3aef50ac3856f2ef5ec7214798453da878bb5e5a16c16a61edf1817cc3", 1638 | "sha256:7e12949e5071c20ec49ef00c75121ed2b076972132fc1913ddf5f76cae8d10b4", 1639 | "sha256:7e26eac9e52e8ce86f915fd33380f1b6896a2b51994e40bb094841e5003429b4", 1640 | "sha256:85ffd6b1cb0dfb037ede50ff3bef80d9bf7fa60515d192403af6745524524f3b", 1641 | "sha256:8618d9213a863c468a865e9d2ec50221015f7abf52221bc927152ef26c484b4c", 1642 | "sha256:8acef4d8a4353f6678fd1035422a937c2170de58a2b29f7da045d5249e934101", 1643 | "sha256:8d2f355a951f60f0843f2368b39970e4667517e54e86b1508e76f92b44811a8a", 1644 | "sha256:90b6840b6448203228a9d8464a7a0d99aa8fa9f027ef95fe230579abaf8a6ee1", 1645 | "sha256:9187500d83fd0cef4669385cbb0961e227a41c0c9bc39219044e35810793edf7", 1646 | "sha256:93c20777a72cae8620203ac11c4010365706062aa13aaedd1a21bb07adbb9d5d", 1647 | "sha256:93cce7d422a0093cfb3606beae38a8e47a25232eea0f292c878af580a9dc7605", 1648 | "sha256:94c623c331a48a5ccc7d25271399aff29729fa202c737ae3b4b28b89d2b0976d", 1649 | "sha256:97f32dc03a8054a4c4a5ab5d761ed4861e828b2c200febd4e46857069a483916", 1650 | "sha256:9a2bf98ac92f58777c0fafc772bf0493e67fcf677302e0c0a630ee517a43b949", 1651 | "sha256:a602bdc8607c99eb5b391592d58c92618dcd1537fdd87df1813f03fed49957a6", 1652 | "sha256:a9d24b03daf7415f78abc2d25a208f234e2c585e5e6f92f0204d2ab7b9ab48e3", 1653 | "sha256:abfcb0ef78df0ee9df4ea81f03beea41849340ce33a4c4bd4dbb99e23ec781b6", 1654 | "sha256:b013f759cd69cb0a62de954d6d2096d648bc210034b79b1881406b07ed0a83f9", 1655 | "sha256:b02e3e72665cd02afafb933453b0c9f6c59ff6e3708bd28d0d8580450e7e88af", 1656 | "sha256:b52cc45e71657bc4743a5606d9023459de929b2a198d545868e11898ba1c3f59", 1657 | "sha256:ba37f11e1d020969e8a779c06b4af866ffb6b854d7229db63c5fdddfceaa917f", 1658 | "sha256:bb804c7d0bfbd7e3f33924ff49757de9106c44e27979e2492819c16972ec0da2", 1659 | "sha256:bf594cc7cc9d528338d66674c10a5b25e3cde7dd75c3e96784df8f371d77a298", 1660 | "sha256:c38baee6bdb7fe1b110b6b3aaa555e6e872d322206b7245aa39572d3fc991ee4", 1661 | "sha256:c73d2166e4b210b73d1429c4f1ca97cea9cc090e5302df2a7a0a96ce55373f1c", 1662 | "sha256:c9099bf89078675c372339011ccfc9ec310310bf6c292b413c013eb90ffdcafc", 1663 | "sha256:cf0db26a1f76aa6b3aa314a74b8facd586b7a5457d05b64f8082a62c9c49582a", 1664 | "sha256:d19a34f8a3429bd536996ad53597b805c10352a8561d8382e05830df389d2b43", 1665 | "sha256:da80047524eac2acf7c04c18ac7a7da05a9136241f642dd2ed94269ef0d0a45a", 1666 | "sha256:de2923886b5d3214be951bc2ce3f6b8ac0d6dfd4a0d0e2a4d2e5523d8046fdfb", 1667 | "sha256:defa0652696ff0ba48c8aff5a1fac1eef1ca6ac9c660b047fc8e7623c4eb5093", 1668 | "sha256:e54a1eb9fd38f2779e973d2f8958fd575b532fe26013405d1afb9ee2374e7ab8", 1669 | "sha256:e5c31d70a478b0ca22a9d2d76d520ae996214019d39ed7dd93af872c7f301e52", 1670 | "sha256:ebaeb93f90c0903233b11ce913a7cb8f6ee069158406e056f884854c737d2442", 1671 | "sha256:ecfe51abf7f045e0b9cdde71ca9e153d11238679ef7b5da6c82093874adf3338", 1672 | "sha256:f99112aed4fb7cee00c7f77e8b964a9b10f69488cdff626ffd797d02e2e4484f", 1673 | "sha256:fd914db437ec25bfa410f8aa0aa2f3ba87cdfc04d9919d608d02330947afaeab" 1674 | ], 1675 | "version": "==2022.1.18" 1676 | }, 1677 | "tomli": { 1678 | "hashes": [ 1679 | "sha256:05b6166bff487dc068d322585c7ea4ef78deed501cc124060e0f238e89a9231f", 1680 | "sha256:e3069e4be3ead9668e21cb9b074cd948f7b3113fd9c8bba083f48247aab8b11c" 1681 | ], 1682 | "markers": "python_version >= '3.6'", 1683 | "version": "==1.2.3" 1684 | }, 1685 | "typing-extensions": { 1686 | "hashes": [ 1687 | "sha256:4ca091dea149f945ec56afb48dae714f21e8692ef22a395223bcd328961b6a0e", 1688 | "sha256:7f001e5ac290a0c0401508864c7ec868be4e701886d5b573a9528ed3973d9d3b" 1689 | ], 1690 | "markers": "python_version >= '3.6'", 1691 | "version": "==4.0.1" 1692 | } 1693 | } 1694 | } 1695 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | 2 | [![Open in Streamlit](https://static.streamlit.io/badges/streamlit_badge_black_white.svg)](https://share.streamlit.io/streamlit/example-app-streamlit-codex/main) 3 | 4 | 5 | 6 | A Streamlit app that builds Streamlit apps! 7 | 8 | 9 | ### How to use our Codex app 10 | 11 | Here are a few sample apps to get you started: 12 | 13 | ![image](https://user-images.githubusercontent.com/27242399/150765383-817c9cfb-9d00-497d-9aee-a35f39f255fa.png) 14 | 15 | 16 | The text prompt is where the magic starts. 17 | 18 | First, explain to Codex what app you’d like to create. For example, create a web app that shows Google stocks in a particular date range. When done, generate the code by clicking on the Execute button: 19 | 20 | ![image](https://user-images.githubusercontent.com/27242399/150765453-de38e26d-509c-497b-80db-422eb539dd4e.png) 21 | 22 | Next, tweak the settings and edit the Codex output. Once Codex generates the code, you’ll see a second prompt. Review the code and edit it if you spot any issues: 23 | 24 | ![image](https://user-images.githubusercontent.com/27242399/150765487-395131fd-fa1c-4dfe-9b4f-0398a53870cd.png) 25 | 26 | Happy with your prompt? It’s time to generate the code to launch your Streamlit app! I’ve used the Python exec function and this code snippet: 27 | 28 | 29 | ``` 30 | button3 = st.button("🎈 Execute Code") 31 | if button3: 32 | exec(output_code)Le 33 | ``` 34 | 35 | That’s it. Sit back, relax, and watch your app launch! 36 | 37 | ![image](https://user-images.githubusercontent.com/27242399/150766907-96aaa811-2551-459e-bf5d-5786f3e132e0.png) 38 | 39 | 40 | 41 | 42 | -------------------------------------------------------------------------------- /codex_params.toml: -------------------------------------------------------------------------------- 1 | [ codex_params.max_tokens ] 2 | 3 | input_type = "slider" 4 | default_value = 16 5 | 6 | input_params.min_value = 16 7 | input_params.max_value = 1000 8 | input_params.help = "The maximum number of tokens to generate in the completion." 9 | 10 | 11 | [ codex_params.temperature ] 12 | 13 | input_type = "slider" 14 | default_value = 1.0 15 | 16 | input_params.min_value = 0.0 17 | input_params.max_value = 1.0 18 | input_params.help = "Higher values means the model will take more risks." 19 | 20 | 21 | [ codex_params.frequency_penalty ] 22 | 23 | input_type = "slider" 24 | default_value = 0.0 25 | 26 | input_params.min_value = -2.0 27 | input_params.max_value = 2.0 28 | input_params.help = "Positive values penalize new tokens based on their existing frequency in the text so far, decreasing the model's likelihood to repeat the same line verbatim." 29 | 30 | 31 | [ codex_params.presence_penalty ] 32 | 33 | input_type = "slider" 34 | default_value = 0.0 35 | 36 | input_params.min_value = -2.0 37 | input_params.max_value = 2.0 38 | input_params.help = "Positive values penalize new tokens based on whether they appear in the text so far, increasing the model's likelihood to talk about new topics." 39 | 40 | 41 | [ codex_params.stop ] 42 | 43 | input_type = "multiselect" 44 | default_value = [] 45 | 46 | input_params.options = ['#', '###', '"""'] 47 | input_params.help = "Up to 4 sequences where the API will stop generating further tokens. The returned text will not contain the stop sequence." 48 | 49 | 50 | [ codex_params.best_of ] 51 | 52 | input_type = "number_input" 53 | default_value = 1 54 | 55 | input_params.min_value = 1 56 | input_params.max_value = 5 57 | input_params.help = 'Generates best_of completions server-side and returns the "best" (the one with the lowest log probability per token).' 58 | 59 | -------------------------------------------------------------------------------- /logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/streamlit/example-app-streamlit-codex/93e0f90c5ed671830f666da90d5ebf2212e7e0e4/logo.png -------------------------------------------------------------------------------- /modes.toml: -------------------------------------------------------------------------------- 1 | ##################################################################### 2 | # These are some sample modes for the Codex app. # 3 | # Each mode consists of a snippet of code with some CODEX settings. # 4 | ##################################################################### 5 | 6 | ###################################### 7 | # An app to show Google Stock prices # 8 | ###################################### 9 | 10 | [modes.google_stock] 11 | 12 | title = "💸 Google Stocks App" 13 | 14 | input_code = """ 15 | # An app to show Google stocks. 16 | 17 | \"\"\" 18 | App which shows price for Google Stock from 09/11/2019 to 09/15/2021 19 | \"\"\" 20 | 21 | import streamlit as st 22 | import yfinance as yf 23 | """ 24 | 25 | codex_args.temperature=0.0 26 | codex_args.max_tokens=500 27 | codex_args.frequency_penalty=0.0 28 | codex_args.presence_penalty=0 29 | codex_args.best_of=2 30 | 31 | 32 | # Uncommment to get an an "execute" button 33 | output_controls.execute_button = "🎈 Execute Code" 34 | 35 | 36 | ####################################### 37 | # An app to interactively blur images # 38 | ####################################### 39 | 40 | [modes.blur_image] 41 | 42 | title = "🙈 Blur Image" 43 | 44 | input_code = """ 45 | \"\"\" 46 | 1. Ask the user to upload an image. 47 | 2. Blur that image with a Guassian blur 48 | \"\"\" 49 | 50 | import streamlit as st 51 | from PIL import Image, ImageFilter 52 | """ 53 | 54 | codex_args.temperature=0.0 55 | codex_args.max_tokens=500 56 | codex_args.frequency_penalty=0.0 57 | codex_args.presence_penalty=0 58 | codex_args.best_of=2 59 | 60 | # Uncommment to get an an "execute" button 61 | output_controls.execute_button = "🎈 Execute Code" 62 | 63 | 64 | ############################################### 65 | # An app to generate firstname-lastname pairs # 66 | ############################################### 67 | 68 | [modes.name_generator] 69 | 70 | title = "👶 Name Generator app" 71 | 72 | input_code = """ 73 | \"\"\" 74 | 1. Create and display a list of first names in Streamlit 75 | 2. Create and display a list of last names in Streamlit 76 | 3. Combine them randomly into a list of 10 full names in Streamlit 77 | 4. plot the first names' length and last names' length in 2 plotly bar charts. 78 | \"\"\" 79 | """ 80 | 81 | codex_args.temperature=0.0 82 | codex_args.max_tokens=1000 83 | codex_args.frequency_penalty=0.0 84 | codex_args.presence_penalty=0 85 | codex_args.best_of=2 86 | 87 | # Uncommment to get an an "execute" button 88 | output_controls.execute_button = "🎈 Execute Code" 89 | 90 | 91 | ######################################### 92 | # An app to generate Python docstrings. # 93 | ######################################### 94 | 95 | [modes.docstring_generator] 96 | 97 | title = "💎 Python docstring generator" 98 | 99 | input_code = """ 100 | \"\"\" 101 | # Python 3.8 102 | 103 | def randomly_split_dataset(folder, filename, split_ratio=[0.8, 0.2]): 104 | df = pd.read_json(folder + filename, lines=True) 105 | train_name, test_name = "train.jsonl", "test.jsonl" 106 | df_train, df_test = train_test_split(df, test_size=split_ratio[1], random_state=42) 107 | df_train.to_json(folder + train_name, orient='records', lines=True) 108 | df_test.to_json(folder + test_name, orient='records', lines=True) 109 | randomly_split_dataset('finetune_data/', 'dataset.jsonl') 110 | 111 | # An elaborate, high quality Python docstring generator for the above function: 112 | 113 | \"\"\" 114 | """ 115 | 116 | codex_args.temperature=0.0 117 | codex_args.max_tokens=150 118 | codex_args.frequency_penalty=0.0 119 | codex_args.presence_penalty=0 120 | codex_args.stop=["#", '"""'] 121 | codex_args.best_of=2 122 | 123 | # Uncommment to get a download button 124 | output_controls.download_button = "📥 Download Python docstring" 125 | 126 | 127 | ########################################### 128 | # An app to convert javacript into Python # 129 | ########################################### 130 | 131 | [modes.javascript_to_python] 132 | title = "☕️ JavaScript to Python" 133 | 134 | input_code = """ 135 | \"\"\" 136 | 137 | #JavaScript to Python: 138 | JavaScript: 139 | dogs = ["bill", "joe", "carl"] 140 | car = [] 141 | dogs.forEach((dog) { 142 | car.push(dog); 143 | }); 144 | 145 | Python: 146 | 147 | \"\"\" 148 | """ 149 | 150 | codex_args.temperature=0.0 151 | codex_args.max_tokens=64 152 | codex_args.frequency_penalty=0.0 153 | codex_args.presence_penalty=0 154 | codex_args.stop=["#"] 155 | 156 | # Uncommment to get a download button 157 | output_controls.download_button = "📥 Download JavaScript to Python" 158 | 159 | 160 | ########################################### 161 | # An app to fix a bug in some Python code # 162 | ########################################### 163 | 164 | [modes.fix_bugs] 165 | 166 | title = "🐛 Fix bugs in Python" 167 | 168 | input_code = """ 169 | \"\"\" 170 | 171 | ##### Fix bugs in the below function 172 | 173 | ### Buggy Python 174 | import Random 175 | a = random.randint(1,12) 176 | b = random.randint(1,12) 177 | for i in range(10): 178 | question = "What is "+a+" x "+b+"? " 179 | answer = input(question) 180 | if answer = a*b 181 | print (Well done!) 182 | else: 183 | print("No.") 184 | 185 | ### Fixed Python 186 | 187 | \"\"\" 188 | """ 189 | 190 | codex_args.temperature=0.0 191 | codex_args.max_tokens=182 192 | codex_args.frequency_penalty=0.0 193 | codex_args.presence_penalty=0 194 | codex_args.stop=["###", "#"] 195 | 196 | # Uncommment to get a download button 197 | output_controls.download_button = "📥 Download fixed Python code " 198 | 199 | 200 | ######################################## 201 | # An app let you do whatever you want. # 202 | ######################################## 203 | 204 | [modes.blank] 205 | 206 | title = "🤷 Blank" 207 | 208 | input_code = """ 209 | \"\"\" 210 | \"\"\" 211 | 212 | import streamlit as st 213 | """ 214 | 215 | codex_args.temperature=0.5 216 | codex_args.max_tokens=500 217 | codex_args.frequency_penalty=0.05 218 | codex_args.presence_penalty=0 219 | codex_args.best_of=2 220 | 221 | 222 | # Uncommment to get an an "execute" button 223 | output_controls.execute_button = "🎈 Execute Code" 224 | 225 | -------------------------------------------------------------------------------- /mouse.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/streamlit/example-app-streamlit-codex/93e0f90c5ed671830f666da90d5ebf2212e7e0e4/mouse.gif -------------------------------------------------------------------------------- /requirements.txt: -------------------------------------------------------------------------------- 1 | streamlit 2 | openai 3 | yfinance 4 | plotly 5 | click==8 6 | -------------------------------------------------------------------------------- /streamlit_app.py: -------------------------------------------------------------------------------- 1 | import streamlit as st 2 | from streamlit_ace import st_ace 3 | import toml 4 | import openai 5 | 6 | 7 | @st.experimental_memo(suppress_st_warning=True) # type: ignore 8 | def complete_code(input_code: str, codex_args: dict) -> str: 9 | """Call OpenAI Codex to convert input code into output code.""" 10 | # Load your API key from an environment variable or secret management service 11 | openai.api_key = st.secrets["OPENAI_API_KEY"] 12 | 13 | # Display a funny mouse moving animation. 14 | mouse_gif = st.columns(3)[1].image("mouse.gif") 15 | 16 | # Complete the code 17 | try: 18 | response = openai.Completion.create( 19 | engine="davinci-codex", 20 | prompt=input_code, 21 | echo=True, 22 | **codex_args, 23 | ) 24 | return response["choices"][0]["text"] 25 | finally: 26 | mouse_gif.empty() 27 | 28 | 29 | def rows_of_three(width_ratio=7): 30 | """A generator of containers aranged in rows of three.""" 31 | while True: 32 | for col in st.columns([width_ratio, 1, width_ratio, 1, width_ratio])[::2]: 33 | yield col 34 | 35 | 36 | def main(): 37 | """Execution starts here.""" 38 | # Header 39 | title = "Streamlit App Builder" 40 | st.set_page_config(page_title=title, page_icon="✨") # type: ignore 41 | # st.image("logoNew.png") 42 | st.image("logo.png") 43 | 44 | # These two TOML files describe possible modes and codex parameters, respectively. 45 | codex_params = toml.load("codex_params.toml")["codex_params"] 46 | modes = list(toml.load("modes.toml")["modes"].values()) 47 | 48 | def reset_state(): 49 | """Reset the state to mode defaults.""" 50 | defaults = {key: input["default_value"] for key, input in codex_params.items()} 51 | st.session_state.update(defaults) 52 | st.session_state.update(st.session_state.mode["codex_args"]) 53 | st.session_state.execute_code = False 54 | st.session_state.output_code = "" 55 | st.session_state.state_initialized = True 56 | 57 | # Let the user select an input mode 58 | get_title = lambda mode: mode["title"] 59 | mode = st.selectbox( 60 | "Code sample", modes, format_func=get_title, on_change=reset_state, key="mode" 61 | ) 62 | if not st.session_state.get("state_initialized"): 63 | reset_state() 64 | 65 | # Let the user set the input code. 66 | input_code = st_ace(value=mode["input_code"], language="python", auto_update=True) 67 | 68 | # Draw a grid of inputs. 69 | codex_args = {} 70 | with st.form("Codex settings"): 71 | st.caption("Codex settings") 72 | for (key, input), container in zip(codex_params.items(), rows_of_three()): 73 | widget_func = getattr(container, input["input_type"]) 74 | codex_args[key] = widget_func(label=key, key=key, **input["input_params"]) 75 | 76 | # Empty lists cannot be passed in as codex_args. This only applies to "stop". 77 | if len(codex_args["stop"]) == 0: 78 | del codex_args["stop"] 79 | 80 | # Clicking the button Unchecks the "execute_code" checkbox. 81 | def uncheck_execute_code(): 82 | st.session_state.execute_code = False 83 | 84 | if st.form_submit_button("Generate Code", on_click=uncheck_execute_code): 85 | st.session_state.output_code = complete_code(input_code, codex_args) 86 | 87 | output_code = st.session_state.get("output_code", "") 88 | output_code = st_ace(value=output_code, language="python", auto_update=True) 89 | 90 | # The "output_controls" dict defines any final output controls. 91 | output_controls = mode.get("output_controls", {}) 92 | 93 | # If "execute_button" is defined, then display it. 94 | if "execute_button" in output_controls: 95 | if st.checkbox(output_controls["execute_button"], key="execute_code"): 96 | exec(output_code, globals()) 97 | 98 | # If "download_button" is defined, then display it. 99 | if "download_button" in output_controls: 100 | st.download_button(output_controls["download_button"], output_code) 101 | 102 | st.caption( 103 | "Created with [Streamlit](https://streamlit.io/) and " 104 | "[OpenAI Codex](https://openai.com/blog/openai-codex/). " 105 | "Get your own [Codex API key](https://openai.com/blog/api-no-waitlist/)!" 106 | ) 107 | 108 | 109 | if __name__ == "__main__": 110 | main() 111 | --------------------------------------------------------------------------------