{"diffoscope-json-version": 1, "source1": "/srv/reproducible-results/rbuild-debian/r-b-build.w588aKqY/b1/pandas_2.2.3+dfsg-5_amd64.changes", "source2": "/srv/reproducible-results/rbuild-debian/r-b-build.w588aKqY/b2/pandas_2.2.3+dfsg-5_amd64.changes", "unified_diff": null, "details": [{"source1": "Files", "source2": "Files", "unified_diff": "@@ -1,5 +1,5 @@\n \n- ee51b119ff6f76e83889a398abb6af94 9245488 doc optional python-pandas-doc_2.2.3+dfsg-5_all.deb\n+ 93638a550a6ff63f7f3ee8d40e2e3cea 9246508 doc optional python-pandas-doc_2.2.3+dfsg-5_all.deb\n c97ea105a109422dc5b5ce7107ea3417 37762552 debug optional python3-pandas-lib-dbgsym_2.2.3+dfsg-5_amd64.deb\n 7f847dbbf38ac52e8c3bc8509a135370 4388824 python optional python3-pandas-lib_2.2.3+dfsg-5_amd64.deb\n 82393119d6d8cb1b1ef15e3b71c2d0a7 3096356 python optional python3-pandas_2.2.3+dfsg-5_all.deb\n"}, {"source1": "python-pandas-doc_2.2.3+dfsg-5_all.deb", "source2": "python-pandas-doc_2.2.3+dfsg-5_all.deb", "unified_diff": null, "details": [{"source1": "file list", "source2": "file list", "unified_diff": "@@ -1,3 +1,3 @@\n -rw-r--r-- 0 0 0 4 2024-10-21 18:43:11.000000 debian-binary\n--rw-r--r-- 0 0 0 146864 2024-10-21 18:43:11.000000 control.tar.xz\n--rw-r--r-- 0 0 0 9098432 2024-10-21 18:43:11.000000 data.tar.xz\n+-rw-r--r-- 0 0 0 146872 2024-10-21 18:43:11.000000 control.tar.xz\n+-rw-r--r-- 0 0 0 9099444 2024-10-21 18:43:11.000000 data.tar.xz\n"}, {"source1": "control.tar.xz", "source2": "control.tar.xz", "unified_diff": null, "details": [{"source1": "control.tar", "source2": "control.tar", "unified_diff": null, "details": [{"source1": "./control", "source2": "./control", "unified_diff": "@@ -1,13 +1,13 @@\n Package: python-pandas-doc\n Source: pandas\n Version: 2.2.3+dfsg-5\n Architecture: all\n Maintainer: Debian Science Team \n-Installed-Size: 200010\n+Installed-Size: 200015\n Depends: libjs-sphinxdoc (>= 7.4), libjs-mathjax\n Suggests: python3-pandas\n Section: doc\n Priority: optional\n Multi-Arch: foreign\n Homepage: https://pandas.pydata.org/\n Description: data structures for \"relational\" or \"labeled\" data - documentation\n"}, {"source1": "./md5sums", "source2": "./md5sums", "unified_diff": null, "details": [{"source1": "./md5sums", "source2": "./md5sums", "comments": ["Files differ"], "unified_diff": null}]}]}]}, {"source1": "data.tar.xz", "source2": "data.tar.xz", "unified_diff": null, "details": [{"source1": "data.tar", "source2": "data.tar", "unified_diff": null, "details": [{"source1": "file list", "source2": "file list", "unified_diff": "@@ -6230,84 +6230,84 @@\n -rw-r--r-- 0 root (0) root (0) 209237 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/reference/series.html\n -rw-r--r-- 0 root (0) root (0) 47718 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/reference/style.html\n -rw-r--r-- 0 root (0) root (0) 47710 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/reference/testing.html\n -rw-r--r-- 0 root (0) root (0) 52348 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/reference/window.html\n -rw-r--r-- 0 root (0) root (0) 244 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/release.html\n -rw-r--r-- 0 root (0) root (0) 269 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/reshaping.html\n -rw-r--r-- 0 root (0) root (0) 16236 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/search.html\n--rw-r--r-- 0 root (0) root (0) 2358669 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/searchindex.js\n+-rw-r--r-- 0 root (0) root (0) 2358733 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/searchindex.js\n -rw-r--r-- 0 root (0) root (0) 259 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/sparse.html\n -rw-r--r-- 0 root (0) root (0) 244 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/style.html\n -rw-r--r-- 0 root (0) root (0) 255 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/text.html\n -rw-r--r-- 0 root (0) root (0) 256 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/timedeltas.html\n -rw-r--r-- 0 root (0) root (0) 277 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/timeseries.html\n -rw-r--r-- 0 root (0) root (0) 272 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/tutorials.html\n drwxr-xr-x 0 root (0) root (0) 0 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/user_guide/\n -rw-r--r-- 0 root (0) root (0) 170385 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/user_guide/10min.html\n--rw-r--r-- 0 root (0) root (0) 282856 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/user_guide/advanced.html\n+-rw-r--r-- 0 root (0) root (0) 282855 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/user_guide/advanced.html\n -rw-r--r-- 0 root (0) root (0) 434987 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/user_guide/basics.html\n -rw-r--r-- 0 root (0) root (0) 35684 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/user_guide/boolean.html\n -rw-r--r-- 0 root (0) root (0) 216528 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/user_guide/categorical.html\n -rw-r--r-- 0 root (0) root (0) 17366 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/user_guide/cookbook.html\n -rw-r--r-- 0 root (0) root (0) 65178 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/user_guide/copy_on_write.html\n -rw-r--r-- 0 root (0) root (0) 159345 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/user_guide/dsintro.html\n -rw-r--r-- 0 root (0) root (0) 80419 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/user_guide/duplicates.html\n--rw-r--r-- 0 root (0) root (0) 114404 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/user_guide/enhancingperf.html\n+-rw-r--r-- 0 root (0) root (0) 114528 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/user_guide/enhancingperf.html\n -rw-r--r-- 0 root (0) root (0) 106902 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/user_guide/gotchas.html\n -rw-r--r-- 0 root (0) root (0) 299886 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/user_guide/groupby.html\n -rw-r--r-- 0 root (0) root (0) 58768 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/user_guide/index.html\n -rw-r--r-- 0 root (0) root (0) 394407 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/user_guide/indexing.html\n -rw-r--r-- 0 root (0) root (0) 40816 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/user_guide/integer_na.html\n -rw-r--r-- 0 root (0) root (0) 1144274 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/user_guide/io.html\n -rw-r--r-- 0 root (0) root (0) 207911 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/user_guide/merging.html\n -rw-r--r-- 0 root (0) root (0) 177680 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/user_guide/missing_data.html\n -rw-r--r-- 0 root (0) root (0) 111206 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/user_guide/options.html\n -rw-r--r-- 0 root (0) root (0) 146554 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/user_guide/pyarrow.html\n -rw-r--r-- 0 root (0) root (0) 161699 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/user_guide/reshaping.html\n -rw-r--r-- 0 root (0) root (0) 114621 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/user_guide/scale.html\n -rw-r--r-- 0 root (0) root (0) 64712 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/user_guide/sparse.html\n -rw-r--r-- 0 root (0) root (0) 697282 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/user_guide/style.html\n--rw-r--r-- 0 root (0) root (0) 87873 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/user_guide/style.ipynb.gz\n+-rw-r--r-- 0 root (0) root (0) 88234 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/user_guide/style.ipynb.gz\n -rw-r--r-- 0 root (0) root (0) 164343 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/user_guide/text.html\n -rw-r--r-- 0 root (0) root (0) 99980 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/user_guide/timedeltas.html\n -rw-r--r-- 0 root (0) root (0) 485612 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/user_guide/timeseries.html\n -rw-r--r-- 0 root (0) root (0) 203394 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/user_guide/visualization.html\n -rw-r--r-- 0 root (0) root (0) 141000 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/user_guide/window.html\n -rw-r--r-- 0 root (0) root (0) 270 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/visualization.html\n drwxr-xr-x 0 root (0) root (0) 0 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/whatsnew/\n -rw-r--r-- 0 root (0) root (0) 106734 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/whatsnew/index.html\n -rw-r--r-- 0 root (0) root (0) 10079 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/whatsnew/index.html.gz\n -rw-r--r-- 0 root (0) root (0) 83016 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/whatsnew/v0.10.0.html\n -rw-r--r-- 0 root (0) root (0) 65522 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/whatsnew/v0.10.1.html\n -rw-r--r-- 0 root (0) root (0) 81344 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/whatsnew/v0.11.0.html\n -rw-r--r-- 0 root (0) root (0) 103349 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/whatsnew/v0.12.0.html\n--rw-r--r-- 0 root (0) root (0) 221509 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/whatsnew/v0.13.0.html\n+-rw-r--r-- 0 root (0) root (0) 221504 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/whatsnew/v0.13.0.html\n -rw-r--r-- 0 root (0) root (0) 88415 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/whatsnew/v0.13.1.html\n -rw-r--r-- 0 root (0) root (0) 242763 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/whatsnew/v0.14.0.html\n -rw-r--r-- 0 root (0) root (0) 82295 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/whatsnew/v0.14.1.html\n -rw-r--r-- 0 root (0) root (0) 251323 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/whatsnew/v0.15.0.html\n -rw-r--r-- 0 root (0) root (0) 67310 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/whatsnew/v0.15.1.html\n -rw-r--r-- 0 root (0) root (0) 74144 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/whatsnew/v0.15.2.html\n -rw-r--r-- 0 root (0) root (0) 144231 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/whatsnew/v0.16.0.html\n -rw-r--r-- 0 root (0) root (0) 114552 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/whatsnew/v0.16.1.html\n -rw-r--r-- 0 root (0) root (0) 63689 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/whatsnew/v0.16.2.html\n -rw-r--r-- 0 root (0) root (0) 230425 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/whatsnew/v0.17.0.html\n -rw-r--r-- 0 root (0) root (0) 94057 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/whatsnew/v0.17.1.html\n -rw-r--r-- 0 root (0) root (0) 223093 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/whatsnew/v0.18.0.html\n--rw-r--r-- 0 root (0) root (0) 170454 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/whatsnew/v0.18.1.html\n--rw-r--r-- 0 root (0) root (0) 348391 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/whatsnew/v0.19.0.html\n+-rw-r--r-- 0 root (0) root (0) 170923 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/whatsnew/v0.18.1.html\n+-rw-r--r-- 0 root (0) root (0) 349947 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/whatsnew/v0.19.0.html\n -rw-r--r-- 0 root (0) root (0) 44209 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/whatsnew/v0.19.1.html\n -rw-r--r-- 0 root (0) root (0) 47554 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/whatsnew/v0.19.2.html\n--rw-r--r-- 0 root (0) root (0) 405170 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/whatsnew/v0.20.0.html\n+-rw-r--r-- 0 root (0) root (0) 406685 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/whatsnew/v0.20.0.html\n -rw-r--r-- 0 root (0) root (0) 51932 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/whatsnew/v0.20.2.html\n -rw-r--r-- 0 root (0) root (0) 42438 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/whatsnew/v0.20.3.html\n--rw-r--r-- 0 root (0) root (0) 254134 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/whatsnew/v0.21.0.html\n+-rw-r--r-- 0 root (0) root (0) 254829 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/whatsnew/v0.21.0.html\n -rw-r--r-- 0 root (0) root (0) 60818 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/whatsnew/v0.21.1.html\n--rw-r--r-- 0 root (0) root (0) 58834 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/whatsnew/v0.22.0.html\n--rw-r--r-- 0 root (0) root (0) 400735 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/whatsnew/v0.23.0.html\n+-rw-r--r-- 0 root (0) root (0) 58889 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/whatsnew/v0.22.0.html\n+-rw-r--r-- 0 root (0) root (0) 401862 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/whatsnew/v0.23.0.html\n -rw-r--r-- 0 root (0) root (0) 58901 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/whatsnew/v0.23.1.html\n -rw-r--r-- 0 root (0) root (0) 51028 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/whatsnew/v0.23.2.html\n -rw-r--r-- 0 root (0) root (0) 31404 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/whatsnew/v0.23.3.html\n -rw-r--r-- 0 root (0) root (0) 34814 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/whatsnew/v0.23.4.html\n -rw-r--r-- 0 root (0) root (0) 519680 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/whatsnew/v0.24.0.html\n -rw-r--r-- 0 root (0) root (0) 43744 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/whatsnew/v0.24.1.html\n -rw-r--r-- 0 root (0) root (0) 48376 2024-10-21 18:43:11.000000 ./usr/share/doc/python-pandas-doc/html/whatsnew/v0.24.2.html\n"}, {"source1": "./usr/share/doc/python-pandas-doc/html/searchindex.js", "source2": "./usr/share/doc/python-pandas-doc/html/searchindex.js", "unified_diff": null, "details": [{"source1": "js-beautify {}", "source2": "js-beautify {}", "unified_diff": "@@ -21500,38 +21500,38 @@\n \"00180\": 2294,\n \"002\": [2193, 2264],\n \"002000\": 2232,\n \"002040\": 2235,\n \"002118\": [2230, 2231],\n \"002653\": 2207,\n \"002846\": 2229,\n- \"003\": [2185, 2235],\n+ \"003\": [2185, 2193, 2235],\n \"003144\": 2210,\n \"003337\": 2207,\n \"003494\": 15,\n \"003507\": [2209, 2218],\n \"003556\": 2207,\n \"00360\": 2294,\n \"003733\": 2207,\n \"003932\": 2216,\n \"003945\": 2210,\n- \"004\": [2186, 2193, 2227],\n+ \"004\": [2186, 2227],\n \"004000\": 2232,\n \"004005006\": [287, 939],\n \"004054\": 2229,\n \"004091\": [2204, 2257],\n \"004127\": 2207,\n \"004194\": 2186,\n \"004201\": 2186,\n \"004229\": 2186,\n \"004474\": 2184,\n \"004580\": 2210,\n \"00486\": 30,\n \"004956\": 2207,\n- \"005\": [2193, 2209],\n+ \"005\": 2209,\n \"005000\": 2218,\n \"005361\": 2207,\n \"005383\": 2220,\n \"005446\": 2219,\n \"005462\": 2191,\n \"005977\": 2199,\n \"005979\": 2186,\n@@ -21551,14 +21551,15 @@\n \"007200\": 2184,\n \"007207\": [2184, 2214],\n \"007717\": 2199,\n \"007824\": 15,\n \"007952\": 2207,\n \"007996\": 2186,\n \"007f\": 203,\n+ \"008\": 2193,\n \"008182\": 2204,\n \"008298\": 2186,\n \"008344\": 2207,\n \"008358\": 2207,\n \"008500\": 15,\n \"008543\": [102, 1158],\n \"008943\": [102, 1158],\n@@ -21570,43 +21571,42 @@\n \"009673\": 2195,\n \"009783\": 2207,\n \"009797\": 2186,\n \"009826\": [102, 1158, 2205],\n \"009920\": [2184, 2195, 2214],\n \"00am\": 2230,\n \"00index\": 2218,\n- \"01\": [3, 15, 16, 17, 19, 29, 30, 31, 79, 80, 82, 88, 107, 121, 182, 187, 207, 213, 218, 219, 230, 242, 261, 270, 271, 276, 277, 278, 283, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 298, 299, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 326, 329, 330, 331, 332, 333, 345, 362, 363, 423, 445, 510, 511, 513, 514, 515, 516, 517, 519, 521, 523, 525, 529, 531, 532, 533, 534, 535, 536, 537, 541, 542, 543, 544, 545, 546, 547, 548, 549, 551, 554, 556, 557, 558, 560, 561, 562, 563, 564, 565, 566, 575, 591, 592, 593, 600, 629, 637, 639, 640, 641, 642, 643, 644, 645, 646, 647, 649, 650, 651, 652, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 665, 666, 667, 668, 670, 671, 673, 674, 675, 676, 677, 678, 679, 680, 684, 685, 686, 688, 689, 696, 760, 763, 781, 788, 793, 804, 817, 874, 893, 898, 899, 902, 903, 904, 905, 909, 910, 917, 919, 922, 929, 934, 939, 940, 943, 944, 945, 948, 949, 953, 954, 957, 959, 960, 969, 972, 982, 984, 997, 1000, 1001, 1003, 1004, 1005, 1011, 1014, 1016, 1017, 1020, 1021, 1024, 1051, 1075, 1078, 1106, 1118, 1122, 1141, 1144, 1145, 1147, 1157, 1164, 1170, 1171, 1176, 1180, 1185, 1192, 1195, 1197, 1206, 1214, 1221, 1227, 1228, 1233, 1239, 1245, 1246, 1253, 1256, 1258, 1268, 1269, 1270, 1271, 1272, 1273, 1274, 1275, 1277, 1278, 1279, 1280, 1282, 1283, 1284, 1285, 1286, 1287, 1288, 1290, 1291, 1292, 1293, 1294, 1295, 1296, 1297, 1344, 1345, 1367, 1391, 1392, 1393, 1436, 1447, 1452, 1475, 1488, 1490, 1498, 1500, 1501, 1506, 1524, 1542, 1560, 1620, 1699, 1720, 1741, 1793, 1815, 1857, 1930, 1947, 1982, 2036, 2054, 2090, 2108, 2127, 2163, 2184, 2185, 2186, 2188, 2191, 2195, 2197, 2198, 2199, 2200, 2201, 2202, 2204, 2205, 2206, 2207, 2209, 2210, 2212, 2214, 2215, 2216, 2217, 2218, 2219, 2220, 2221, 2222, 2223, 2225, 2226, 2228, 2229, 2230, 2231, 2232, 2235, 2238, 2240, 2241, 2246, 2249, 2261, 2264, 2265, 2271, 2283, 2289, 2294, 2298, 2302, 2307],\n+ \"01\": [3, 15, 16, 17, 19, 29, 30, 31, 79, 80, 82, 88, 107, 121, 182, 187, 207, 213, 218, 219, 230, 242, 261, 270, 271, 276, 277, 278, 283, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 298, 299, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 326, 329, 330, 331, 332, 333, 345, 362, 363, 423, 445, 510, 511, 513, 514, 515, 516, 517, 519, 521, 523, 525, 529, 531, 532, 533, 534, 535, 536, 537, 541, 542, 543, 544, 545, 546, 547, 548, 549, 551, 554, 556, 557, 558, 560, 561, 562, 563, 564, 565, 566, 575, 591, 592, 593, 600, 629, 637, 639, 640, 641, 642, 643, 644, 645, 646, 647, 649, 650, 651, 652, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 665, 666, 667, 668, 670, 671, 673, 674, 675, 676, 677, 678, 679, 680, 684, 685, 686, 688, 689, 696, 760, 763, 781, 788, 793, 804, 817, 874, 893, 898, 899, 902, 903, 904, 905, 909, 910, 917, 919, 922, 929, 934, 939, 940, 943, 944, 945, 948, 949, 953, 954, 957, 959, 960, 969, 972, 982, 984, 997, 1000, 1001, 1003, 1004, 1005, 1011, 1014, 1016, 1017, 1020, 1021, 1024, 1051, 1075, 1078, 1106, 1118, 1122, 1141, 1144, 1145, 1147, 1157, 1164, 1170, 1171, 1176, 1180, 1185, 1192, 1195, 1197, 1206, 1214, 1221, 1227, 1228, 1233, 1239, 1245, 1246, 1253, 1256, 1258, 1268, 1269, 1270, 1271, 1272, 1273, 1274, 1275, 1277, 1278, 1279, 1280, 1282, 1283, 1284, 1285, 1286, 1287, 1288, 1290, 1291, 1292, 1293, 1294, 1295, 1296, 1297, 1344, 1345, 1367, 1391, 1392, 1393, 1436, 1447, 1452, 1475, 1488, 1490, 1498, 1500, 1501, 1506, 1524, 1542, 1560, 1620, 1699, 1720, 1741, 1793, 1815, 1857, 1930, 1947, 1982, 2036, 2054, 2090, 2108, 2127, 2163, 2184, 2185, 2186, 2188, 2191, 2193, 2195, 2197, 2198, 2199, 2200, 2201, 2202, 2204, 2205, 2206, 2207, 2209, 2210, 2212, 2214, 2215, 2216, 2217, 2218, 2219, 2220, 2221, 2222, 2223, 2225, 2226, 2228, 2229, 2230, 2231, 2232, 2235, 2238, 2240, 2241, 2246, 2249, 2261, 2264, 2265, 2271, 2283, 2289, 2294, 2298, 2302, 2307],\n \"0100\": [575, 893, 957, 970, 997, 1004, 1014, 1016, 1020, 1021, 1498, 2186, 2199, 2210, 2246, 2271],\n \"010000\": [954, 1894],\n \"010010012\": [923, 2209],\n \"010026\": 2191,\n \"010081\": 15,\n \"010165\": 2199,\n \"010589\": 2193,\n \"010670\": [102, 1158],\n \"0108\": 2257,\n \"010903\": 2207,\n+ \"011\": 2193,\n \"011111\": [182, 760],\n \"011342\": 2207,\n \"011351\": 2207,\n \"011374\": 2195,\n \"011470\": 2207,\n \"011736\": 2186,\n \"011829\": 2207,\n \"01183\": 2229,\n \"011860\": [182, 760],\n \"011975\": 2207,\n- \"012\": 2193,\n \"012108\": 2207,\n \"012299\": 2207,\n \"0123456789123456\": [2164, 2165],\n \"012549\": 2207,\n \"012694\": 2199,\n \"012922\": 2219,\n- \"013\": 2193,\n \"013086\": 15,\n \"0133\": 2202,\n \"013448\": 2207,\n \"013605\": 2207,\n \"013684\": [182, 760],\n \"013692\": [102, 1158],\n \"013747\": 2199,\n@@ -21621,14 +21621,15 @@\n \"014138\": 2191,\n \"014144\": [102, 1158],\n \"014648\": 2186,\n \"014752\": 2235,\n \"014805\": 2202,\n \"014871\": [2185, 2197, 2199, 2202],\n \"014888\": 2207,\n+ \"015\": 2193,\n \"015083\": 2186,\n \"015420\": 2195,\n \"015458\": 2207,\n \"015696\": [2220, 2228, 2230],\n \"015906\": 2186,\n \"015962\": [2184, 2214],\n \"015988\": 2186,\n@@ -21641,15 +21642,15 @@\n \"017106\": 2207,\n \"017118\": 2199,\n \"017152\": 2186,\n \"017263\": 2207,\n \"017276\": 2191,\n \"017587\": [2184, 2195, 2214],\n \"017796\": 2207,\n- \"018\": [2193, 2199],\n+ \"018\": 2199,\n \"018007\": 2207,\n \"018117\": 2191,\n \"018193\": 2207,\n \"018409\": 2207,\n \"018601\": [2184, 2214],\n \"018808\": 2207,\n \"018904\": 2207,\n@@ -21662,16 +21663,15 @@\n \"01t01\": 2210,\n \"01t03\": 2210,\n \"01t05\": [909, 2210, 2235],\n \"01t07\": 1280,\n \"01t10\": 1005,\n \"01t12\": 953,\n \"01t23\": [893, 2186, 2246],\n- \"02\": [13, 16, 17, 19, 26, 27, 29, 31, 79, 80, 82, 133, 182, 183, 202, 207, 208, 213, 218, 230, 261, 271, 276, 277, 278, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 299, 301, 304, 305, 306, 307, 310, 312, 313, 314, 318, 319, 320, 321, 322, 323, 324, 326, 327, 329, 330, 331, 332, 345, 362, 363, 423, 519, 534, 536, 542, 543, 544, 545, 546, 547, 548, 549, 557, 558, 562, 563, 564, 565, 566, 575, 591, 592, 593, 637, 639, 640, 641, 642, 643, 644, 645, 646, 647, 649, 650, 651, 652, 654, 656, 657, 658, 659, 665, 666, 667, 673, 674, 675, 677, 678, 679, 680, 684, 685, 686, 688, 708, 760, 761, 781, 782, 788, 793, 804, 893, 899, 902, 903, 904, 919, 939, 940, 943, 945, 948, 949, 953, 957, 970, 997, 1014, 1051, 1075, 1118, 1122, 1141, 1144, 1145, 1147, 1157, 1170, 1171, 1176, 1180, 1185, 1192, 1195, 1197, 1206, 1214, 1227, 1228, 1233, 1239, 1245, 1246, 1253, 1256, 1258, 1268, 1269, 1270, 1271, 1272, 1273, 1274, 1275, 1277, 1278, 1279, 1280, 1282, 1283, 1284, 1285, 1287, 1288, 1289, 1290, 1291, 1292, 1293, 1294, 1295, 1297, 1344, 1393, 1452, 1498, 1500, 1506, 1542, 1620, 1699, 1815, 1947, 2054, 2127, 2145, 2184, 2185, 2186, 2188, 2191, 2193, 2195, 2197, 2199, 2201, 2204, 2205, 2207, 2209, 2210, 2212, 2213, 2214, 2215, 2216, 2217, 2218, 2220, 2222, 2223, 2225, 2226, 2228, 2229, 2230, 2231, 2232, 2235, 2238, 2240, 2241, 2246, 2261, 2264, 2265, 2271, 2283, 2294, 2298, 2301, 2307],\n- \"020\": 2193,\n+ \"02\": [13, 16, 17, 19, 26, 27, 29, 31, 79, 80, 82, 133, 182, 183, 202, 207, 208, 213, 218, 230, 261, 271, 276, 277, 278, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 299, 301, 304, 305, 306, 307, 310, 312, 313, 314, 318, 319, 320, 321, 322, 323, 324, 326, 327, 329, 330, 331, 332, 345, 362, 363, 423, 519, 534, 536, 542, 543, 544, 545, 546, 547, 548, 549, 557, 558, 562, 563, 564, 565, 566, 575, 591, 592, 593, 637, 639, 640, 641, 642, 643, 644, 645, 646, 647, 649, 650, 651, 652, 654, 656, 657, 658, 659, 665, 666, 667, 673, 674, 675, 677, 678, 679, 680, 684, 685, 686, 688, 708, 760, 761, 781, 782, 788, 793, 804, 893, 899, 902, 903, 904, 919, 939, 940, 943, 945, 948, 949, 953, 957, 970, 997, 1014, 1051, 1075, 1118, 1122, 1141, 1144, 1145, 1147, 1157, 1170, 1171, 1176, 1180, 1185, 1192, 1195, 1197, 1206, 1214, 1227, 1228, 1233, 1239, 1245, 1246, 1253, 1256, 1258, 1268, 1269, 1270, 1271, 1272, 1273, 1274, 1275, 1277, 1278, 1279, 1280, 1282, 1283, 1284, 1285, 1287, 1288, 1289, 1290, 1291, 1292, 1293, 1294, 1295, 1297, 1344, 1393, 1452, 1498, 1500, 1506, 1542, 1620, 1699, 1815, 1947, 2054, 2127, 2145, 2184, 2185, 2186, 2188, 2191, 2195, 2197, 2199, 2201, 2204, 2205, 2207, 2209, 2210, 2212, 2213, 2214, 2215, 2216, 2217, 2218, 2220, 2222, 2223, 2225, 2226, 2228, 2229, 2230, 2231, 2232, 2235, 2238, 2240, 2241, 2246, 2261, 2264, 2265, 2271, 2283, 2294, 2298, 2301, 2307],\n \"0200\": [957, 969, 970, 997, 1498, 2210],\n \"020161\": [102, 1158],\n \"020208\": 2195,\n \"020376\": 2207,\n \"020399\": 2195,\n \"020485\": 2207,\n \"020544\": 2186,\n@@ -21680,14 +21680,15 @@\n \"021244\": 2207,\n \"021255\": 2230,\n \"021292\": 2186,\n \"021377\": 2207,\n \"021382\": 2184,\n \"021499\": 2186,\n \"02155\": 30,\n+ \"022\": 2193,\n \"022070\": 2184,\n \"022196\": 2207,\n \"022777\": 2207,\n \"023\": [1447, 2200, 2232],\n \"023100\": 2195,\n \"023167\": 15,\n \"023202\": 2199,\n@@ -21721,15 +21722,14 @@\n \"026437\": 2197,\n \"026458\": 2216,\n \"0266708\": 2202,\n \"026692\": 2207,\n \"0267\": 2202,\n \"027496\": 2207,\n \"027778\": [69, 109, 129, 171, 173, 199, 204, 206, 215, 216, 217, 220, 221, 222, 244, 275],\n- \"028\": 2193,\n \"028096\": 2210,\n \"028152\": 2207,\n \"028166\": 15,\n \"028182\": 2207,\n \"028578\": 2207,\n \"028603\": 2195,\n \"028662\": 28,\n@@ -21776,47 +21776,50 @@\n \"033350\": 2207,\n \"033387\": 2186,\n \"033606\": 2186,\n \"033606102414146\": 2186,\n \"033695\": 2186,\n \"033718\": 2204,\n \"033823\": 2210,\n- \"034\": 1433,\n+ \"034\": [1433, 2193],\n \"034069\": 2195,\n \"034326\": [2184, 2257],\n \"034374\": 2210,\n \"034446\": 2207,\n \"034512\": 2207,\n \"034523\": 2210,\n \"034571\": 2197,\n \"034838\": 2207,\n \"034870\": 2207,\n \"034899\": 2186,\n \"034905\": 2207,\n+ \"035\": 2193,\n \"035310\": 2220,\n \"035312\": 2210,\n \"035476\": 2210,\n \"035962\": 2186,\n \"036047\": 2214,\n \"036104\": 2207,\n \"036142\": [2220, 2231],\n \"0362\": 2202,\n \"0362196\": 2202,\n \"036235\": 2205,\n \"036660\": 2199,\n \"036854\": 2199,\n+ \"037\": 2193,\n \"037181\": 2191,\n \"037528\": 2235,\n \"037651\": 2207,\n \"037772\": 2214,\n \"037882\": [2184, 2214],\n \"038\": [1447, 2200, 2232],\n \"038031\": 2207,\n \"038402\": 2197,\n \"038981\": 2207,\n+ \"039\": 2193,\n \"039061\": 2207,\n \"039147\": 2207,\n \"039266\": 2215,\n \"039268\": [15, 2185, 2186, 2191, 2197, 2199, 2202, 2204, 2215, 2216, 2218, 2219, 2235, 2241, 2264],\n \"0393\": [2186, 2191],\n \"039575\": [15, 2184, 2185, 2186, 2191, 2195, 2197, 2199, 2202, 2210, 2214, 2215, 2218, 2225, 2226, 2241, 2260],\n \"0396\": [2184, 2186],\n@@ -21850,15 +21853,14 @@\n \"043302\": 2207,\n \"043558\": 2207,\n \"043702\": 2199,\n \"043719\": 2186,\n \"043771\": 2204,\n \"043859\": 2207,\n \"043877\": 2207,\n- \"044\": 2193,\n \"044125\": 2207,\n \"044184\": 2199,\n \"0442\": [2184, 2186],\n \"044236\": [16, 17, 18, 19, 2184, 2185, 2186, 2191, 2195, 2197, 2199, 2202, 2210, 2214, 2215, 2216, 2218, 2220, 2225, 2235, 2241, 2260],\n \"044522\": 586,\n \"044546\": 2207,\n \"044933\": 2207,\n@@ -21898,15 +21900,15 @@\n \"049695\": 2199,\n \"049748\": 2204,\n \"049783\": 2207,\n \"049798\": 2199,\n \"049851\": 2195,\n \"04d\": 2188,\n \"04t00\": 2261,\n- \"05\": [13, 26, 27, 29, 30, 31, 80, 148, 149, 177, 178, 183, 207, 213, 218, 230, 264, 273, 276, 292, 294, 298, 302, 316, 326, 330, 331, 332, 345, 363, 423, 551, 592, 597, 644, 646, 670, 680, 685, 686, 688, 725, 726, 755, 756, 761, 781, 788, 793, 804, 900, 902, 905, 944, 1075, 1145, 1274, 1289, 1344, 1441, 1442, 1447, 1449, 1450, 1452, 1465, 1495, 1498, 1500, 1506, 1524, 1542, 1560, 1677, 1699, 1758, 2163, 2184, 2185, 2186, 2188, 2193, 2195, 2197, 2199, 2200, 2201, 2204, 2205, 2207, 2209, 2210, 2212, 2214, 2215, 2216, 2217, 2218, 2219, 2220, 2222, 2223, 2225, 2226, 2227, 2228, 2229, 2230, 2231, 2232, 2235, 2241, 2246, 2249, 2261, 2264, 2271, 2283, 2298, 2302, 2307],\n+ \"05\": [13, 26, 27, 29, 30, 31, 80, 148, 149, 177, 178, 183, 207, 213, 218, 230, 264, 273, 276, 292, 294, 298, 302, 316, 326, 330, 331, 332, 345, 363, 423, 551, 592, 597, 644, 646, 670, 680, 685, 686, 688, 725, 726, 755, 756, 761, 781, 788, 793, 804, 900, 902, 905, 944, 1075, 1145, 1274, 1289, 1344, 1441, 1442, 1447, 1449, 1450, 1452, 1465, 1495, 1498, 1500, 1506, 1524, 1542, 1560, 1677, 1699, 1758, 2163, 2184, 2185, 2186, 2188, 2195, 2197, 2199, 2200, 2201, 2204, 2205, 2207, 2209, 2210, 2212, 2214, 2215, 2216, 2217, 2218, 2219, 2220, 2222, 2223, 2225, 2226, 2227, 2228, 2229, 2230, 2231, 2232, 2235, 2241, 2246, 2249, 2261, 2264, 2271, 2283, 2298, 2302, 2307],\n \"0500\": [24, 25, 28, 29, 32, 1498, 2210, 2235],\n \"050000\": [522, 524, 530],\n \"050038\": 2207,\n \"050046\": 2210,\n \"050390\": 2186,\n \"050498\": 2207,\n \"051514\": 2186,\n@@ -21928,14 +21930,15 @@\n \"053667\": 2207,\n \"053768\": 2199,\n \"053785\": 2219,\n \"054325\": 2191,\n \"0549\": 2202,\n \"054932\": 2207,\n \"054972\": 2207,\n+ \"055\": 2193,\n \"055224\": 2184,\n \"055300\": 2212,\n \"055457\": 2199,\n \"055473\": 2235,\n \"055501\": 2207,\n \"055556\": [69, 109, 129, 171, 173, 182, 199, 204, 206, 215, 216, 217, 220, 221, 222, 244, 275, 760],\n \"055758\": 2197,\n@@ -22101,14 +22104,15 @@\n \"079587\": 2230,\n \"079631\": 2207,\n \"0797\": 2202,\n \"079769\": 2207,\n \"079915\": 2193,\n \"07t00\": 2261,\n \"08\": [29, 30, 107, 207, 213, 230, 264, 273, 277, 292, 294, 316, 326, 330, 332, 629, 644, 646, 670, 680, 685, 688, 781, 788, 804, 900, 903, 1075, 1145, 1164, 1221, 1274, 1289, 1344, 1441, 1442, 1449, 1450, 1452, 1495, 1497, 1506, 1598, 1657, 1677, 1699, 1720, 1741, 2184, 2185, 2186, 2191, 2195, 2197, 2199, 2201, 2204, 2205, 2207, 2209, 2210, 2212, 2214, 2215, 2218, 2220, 2222, 2226, 2228, 2230, 2231, 2232, 2235, 2246, 2249, 2261, 2271, 2294, 2307],\n+ \"080\": 2193,\n \"0800\": [953, 2210],\n \"080174\": 2207,\n \"080372\": 2199,\n \"080952\": [2184, 2214],\n \"081009\": 2195,\n \"081161\": 2216,\n \"081249\": 2207,\n@@ -22126,14 +22130,15 @@\n \"082960\": 2207,\n \"083010\": 2207,\n \"083333\": 2222,\n \"083352\": 2191,\n \"08335394550\": 1371,\n \"083515\": 15,\n \"083675\": 2207,\n+ \"084\": 2193,\n \"084601\": 2191,\n \"084844\": [2185, 2191, 2197, 2202, 2204],\n \"084917\": 2195,\n \"084n\": 2202,\n \"084u\": 2202,\n \"085070\": 2207,\n \"085193\": 2207,\n@@ -22254,20 +22259,20 @@\n \"0n\": [1489, 2298],\n \"0px\": 2207,\n \"0rc0\": 13,\n \"0th\": [26, 249, 882, 1202, 2185, 2197, 2199, 2235],\n \"0x00\": 2294,\n \"0x40\": 2294,\n \"0x7efd0c0b0690\": 3,\n- \"0x7ff1226d5430\": 2230,\n- \"0x7ff124e11fd0\": 2199,\n- \"0x7ff124e23220\": 2197,\n- \"0x7ff1267ff140\": 2195,\n- \"0x7ff12fe53440\": 2246,\n- \"0x7ff13b5b1260\": 2210,\n+ \"0x7f144ea59120\": 2210,\n+ \"0x7f148185a690\": 2199,\n+ \"0x7f1486bb2890\": 2197,\n+ \"0x7f14870a6a80\": 2195,\n+ \"0x7f1489c5deb0\": 2230,\n+ \"0x7f14a22d6ab0\": 2246,\n \"1\": [1, 2, 4, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 34, 35, 39, 42, 44, 46, 49, 54, 56, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 82, 83, 84, 85, 86, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 134, 135, 136, 137, 138, 139, 140, 141, 143, 144, 145, 146, 148, 149, 151, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 177, 178, 180, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 298, 299, 300, 301, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 317, 318, 319, 321, 323, 324, 325, 326, 327, 328, 329, 331, 332, 333, 337, 339, 341, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 361, 363, 364, 366, 367, 370, 371, 372, 375, 376, 377, 378, 380, 382, 384, 385, 386, 387, 388, 389, 390, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 403, 404, 405, 406, 407, 408, 409, 411, 412, 414, 415, 416, 417, 419, 420, 421, 422, 423, 424, 425, 426, 427, 429, 430, 431, 432, 433, 434, 435, 436, 437, 440, 446, 449, 450, 451, 455, 456, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 473, 475, 476, 477, 478, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 495, 496, 498, 499, 500, 501, 502, 503, 505, 509, 510, 511, 514, 516, 519, 525, 531, 532, 533, 534, 536, 540, 543, 545, 547, 548, 549, 551, 557, 558, 561, 565, 568, 569, 571, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 589, 590, 591, 592, 593, 594, 595, 596, 597, 599, 600, 601, 602, 603, 604, 609, 613, 614, 615, 616, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 671, 673, 674, 675, 676, 678, 679, 680, 681, 682, 683, 684, 686, 688, 689, 690, 691, 692, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 709, 710, 711, 712, 713, 714, 715, 716, 717, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 743, 744, 747, 748, 749, 750, 751, 752, 753, 755, 756, 758, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 810, 812, 813, 814, 815, 816, 817, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849, 850, 852, 853, 854, 855, 856, 857, 858, 859, 860, 861, 862, 863, 864, 865, 866, 867, 868, 869, 870, 871, 872, 873, 874, 875, 876, 877, 878, 879, 880, 881, 882, 883, 884, 885, 886, 887, 888, 889, 891, 892, 894, 895, 896, 897, 898, 899, 900, 901, 902, 903, 904, 905, 906, 907, 908, 909, 910, 912, 913, 914, 916, 918, 921, 923, 927, 930, 938, 939, 940, 941, 942, 943, 945, 946, 947, 948, 949, 950, 951, 952, 953, 957, 959, 960, 970, 977, 979, 981, 984, 994, 997, 1003, 1004, 1005, 1006, 1011, 1012, 1021, 1031, 1032, 1033, 1034, 1035, 1036, 1038, 1039, 1040, 1041, 1042, 1043, 1044, 1045, 1046, 1047, 1048, 1049, 1050, 1051, 1052, 1053, 1054, 1055, 1056, 1057, 1058, 1059, 1060, 1061, 1062, 1063, 1064, 1065, 1066, 1067, 1068, 1069, 1071, 1072, 1073, 1074, 1075, 1076, 1077, 1078, 1079, 1080, 1081, 1082, 1083, 1084, 1085, 1086, 1087, 1088, 1089, 1091, 1092, 1093, 1095, 1096, 1097, 1099, 1100, 1101, 1102, 1103, 1104, 1105, 1106, 1108, 1109, 1110, 1111, 1112, 1113, 1114, 1115, 1118, 1119, 1121, 1123, 1124, 1125, 1126, 1127, 1128, 1129, 1130, 1131, 1132, 1133, 1134, 1135, 1136, 1137, 1138, 1139, 1140, 1141, 1142, 1143, 1145, 1146, 1147, 1148, 1149, 1150, 1151, 1152, 1153, 1155, 1156, 1157, 1158, 1159, 1160, 1161, 1162, 1163, 1164, 1165, 1166, 1167, 1168, 1169, 1170, 1171, 1172, 1173, 1174, 1175, 1176, 1177, 1178, 1179, 1180, 1181, 1182, 1183, 1184, 1185, 1186, 1187, 1188, 1189, 1190, 1191, 1192, 1193, 1194, 1195, 1196, 1197, 1198, 1199, 1200, 1201, 1202, 1203, 1204, 1205, 1206, 1207, 1208, 1209, 1210, 1211, 1212, 1213, 1214, 1215, 1216, 1217, 1218, 1219, 1220, 1221, 1222, 1223, 1224, 1225, 1226, 1227, 1228, 1229, 1230, 1231, 1232, 1233, 1234, 1235, 1236, 1237, 1238, 1239, 1240, 1241, 1244, 1245, 1246, 1247, 1248, 1249, 1250, 1251, 1252, 1253, 1254, 1255, 1256, 1257, 1258, 1259, 1260, 1261, 1262, 1263, 1264, 1265, 1267, 1268, 1269, 1270, 1271, 1272, 1273, 1274, 1275, 1276, 1277, 1278, 1279, 1280, 1281, 1282, 1283, 1284, 1285, 1286, 1287, 1288, 1289, 1290, 1291, 1292, 1293, 1294, 1295, 1296, 1297, 1298, 1299, 1300, 1301, 1302, 1303, 1304, 1305, 1306, 1307, 1308, 1309, 1310, 1311, 1312, 1313, 1314, 1315, 1316, 1317, 1318, 1319, 1320, 1321, 1322, 1323, 1324, 1325, 1326, 1327, 1328, 1329, 1330, 1331, 1332, 1333, 1334, 1335, 1336, 1337, 1338, 1339, 1340, 1341, 1342, 1343, 1344, 1345, 1347, 1348, 1350, 1354, 1355, 1358, 1359, 1362, 1363, 1368, 1369, 1372, 1373, 1374, 1375, 1377, 1380, 1381, 1382, 1383, 1384, 1385, 1387, 1388, 1389, 1390, 1391, 1393, 1394, 1395, 1396, 1397, 1398, 1399, 1400, 1402, 1403, 1404, 1405, 1406, 1407, 1408, 1409, 1410, 1411, 1413, 1414, 1415, 1416, 1417, 1419, 1421, 1422, 1423, 1424, 1430, 1431, 1432, 1433, 1434, 1435, 1436, 1437, 1438, 1439, 1440, 1441, 1442, 1443, 1444, 1445, 1446, 1447, 1448, 1449, 1450, 1453, 1454, 1455, 1457, 1458, 1459, 1460, 1462, 1463, 1464, 1466, 1467, 1468, 1469, 1470, 1473, 1474, 1475, 1476, 1477, 1478, 1479, 1480, 1482, 1483, 1485, 1486, 1487, 1488, 1489, 1490, 1491, 1493, 1494, 1495, 1496, 1497, 1498, 1499, 1500, 1502, 1506, 1507, 1509, 1510, 1511, 1512, 1513, 1514, 1515, 1516, 1517, 1524, 1525, 1527, 1528, 1529, 1530, 1531, 1532, 1533, 1534, 1535, 1542, 1543, 1545, 1546, 1547, 1548, 1549, 1550, 1551, 1552, 1553, 1560, 1561, 1563, 1564, 1565, 1566, 1567, 1568, 1569, 1570, 1571, 1578, 1580, 1583, 1584, 1585, 1586, 1587, 1588, 1589, 1590, 1591, 1598, 1600, 1604, 1605, 1606, 1607, 1608, 1609, 1610, 1611, 1612, 1620, 1621, 1623, 1624, 1625, 1626, 1627, 1628, 1629, 1630, 1631, 1637, 1638, 1640, 1641, 1642, 1643, 1644, 1645, 1646, 1647, 1648, 1657, 1659, 1662, 1663, 1664, 1665, 1666, 1667, 1668, 1669, 1670, 1677, 1679, 1683, 1684, 1685, 1686, 1687, 1688, 1689, 1690, 1691, 1699, 1701, 1704, 1705, 1706, 1707, 1708, 1709, 1710, 1711, 1712, 1720, 1722, 1725, 1726, 1727, 1728, 1729, 1730, 1731, 1732, 1733, 1741, 1742, 1744, 1745, 1746, 1747, 1748, 1749, 1750, 1751, 1752, 1758, 1759, 1763, 1764, 1765, 1766, 1767, 1768, 1769, 1770, 1776, 1777, 1779, 1780, 1781, 1782, 1783, 1784, 1785, 1786, 1787, 1793, 1794, 1798, 1799, 1800, 1801, 1802, 1803, 1804, 1805, 1806, 1815, 1816, 1820, 1821, 1822, 1823, 1824, 1825, 1826, 1827, 1828, 1839, 1840, 1844, 1845, 1846, 1847, 1848, 1849, 1850, 1851, 1857, 1858, 1860, 1861, 1862, 1863, 1864, 1865, 1866, 1867, 1868, 1876, 1877, 1881, 1882, 1883, 1884, 1885, 1886, 1887, 1888, 1894, 1895, 1899, 1900, 1901, 1902, 1903, 1904, 1905, 1906, 1912, 1913, 1917, 1918, 1919, 1920, 1921, 1922, 1923, 1924, 1930, 1931, 1933, 1934, 1935, 1936, 1937, 1938, 1939, 1940, 1941, 1947, 1948, 1950, 1951, 1952, 1953, 1954, 1955, 1956, 1957, 1958, 1964, 1965, 1969, 1970, 1971, 1972, 1973, 1974, 1975, 1976, 1982, 1983, 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1992, 1993, 2000, 2001, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2018, 2019, 2023, 2024, 2025, 2026, 2027, 2028, 2029, 2030, 2036, 2037, 2040, 2041, 2042, 2043, 2044, 2045, 2046, 2047, 2048, 2054, 2055, 2058, 2059, 2060, 2061, 2062, 2063, 2064, 2065, 2066, 2073, 2077, 2078, 2079, 2080, 2081, 2082, 2083, 2084, 2090, 2091, 2093, 2094, 2095, 2096, 2097, 2098, 2099, 2100, 2101, 2108, 2109, 2111, 2112, 2113, 2114, 2115, 2116, 2117, 2118, 2119, 2127, 2128, 2130, 2131, 2132, 2133, 2134, 2135, 2136, 2137, 2138, 2145, 2146, 2148, 2149, 2150, 2151, 2152, 2153, 2154, 2155, 2156, 2163, 2164, 2165, 2166, 2184, 2185, 2186, 2187, 2188, 2190, 2191, 2192, 2193, 2194, 2195, 2196, 2197, 2198, 2199, 2200, 2201, 2202, 2203, 2204, 2205, 2206, 2208, 2209, 2210, 2211, 2212, 2214, 2216, 2217, 2218, 2220, 2222, 2224, 2225, 2227, 2228, 2230, 2232, 2238, 2240, 2241, 2243, 2245, 2246, 2249, 2257, 2259, 2260, 2263, 2298, 2307, 2309, 2310],\n \"10\": [2, 3, 5, 6, 9, 10, 15, 16, 17, 18, 19, 21, 22, 24, 25, 26, 27, 28, 29, 30, 31, 32, 68, 69, 74, 80, 83, 84, 85, 88, 91, 94, 97, 98, 102, 105, 109, 111, 113, 119, 120, 121, 129, 133, 137, 138, 139, 140, 142, 144, 160, 163, 171, 173, 187, 188, 189, 190, 192, 193, 199, 202, 203, 204, 206, 207, 212, 213, 215, 216, 217, 220, 221, 222, 223, 228, 230, 234, 244, 258, 265, 268, 275, 276, 278, 284, 286, 288, 289, 293, 295, 296, 298, 300, 302, 316, 317, 318, 322, 323, 324, 329, 330, 331, 345, 395, 423, 427, 440, 445, 509, 514, 516, 534, 536, 544, 546, 551, 554, 556, 560, 562, 568, 569, 570, 571, 572, 577, 583, 592, 594, 595, 596, 600, 620, 621, 627, 635, 639, 641, 645, 647, 648, 649, 650, 652, 670, 671, 673, 677, 678, 679, 681, 684, 685, 686, 695, 696, 708, 713, 714, 738, 741, 763, 764, 765, 766, 768, 781, 787, 788, 798, 804, 808, 836, 837, 838, 839, 840, 841, 842, 843, 844, 849, 852, 863, 868, 874, 889, 895, 902, 904, 912, 923, 940, 942, 943, 944, 948, 957, 959, 960, 970, 982, 984, 995, 997, 1001, 1003, 1004, 1005, 1011, 1016, 1020, 1021, 1069, 1071, 1072, 1075, 1109, 1154, 1158, 1162, 1163, 1173, 1174, 1175, 1180, 1185, 1189, 1195, 1200, 1205, 1219, 1220, 1230, 1239, 1246, 1250, 1256, 1261, 1264, 1267, 1284, 1288, 1291, 1292, 1294, 1297, 1298, 1299, 1306, 1308, 1319, 1324, 1343, 1344, 1345, 1350, 1367, 1387, 1391, 1403, 1411, 1416, 1418, 1420, 1421, 1440, 1447, 1451, 1452, 1458, 1462, 1467, 1473, 1478, 1479, 1482, 1485, 1488, 1490, 1491, 1498, 1598, 1657, 1677, 1699, 1720, 1741, 1758, 1894, 1912, 2018, 2185, 2186, 2188, 2190, 2191, 2192, 2193, 2194, 2195, 2196, 2197, 2198, 2199, 2200, 2201, 2202, 2203, 2204, 2205, 2206, 2207, 2208, 2209, 2210, 2211, 2212, 2216, 2217, 2218, 2219, 2220, 2221, 2222, 2223, 2224, 2225, 2226, 2227, 2228, 2229, 2230, 2231, 2232, 2234, 2235, 2238, 2240, 2241, 2246, 2249, 2254, 2257, 2260, 2261, 2264, 2265, 2271, 2277, 2283, 2289, 2290, 2294, 2298, 2302, 2307, 2308],\n \"100\": [3, 15, 17, 22, 30, 68, 97, 98, 111, 118, 132, 135, 141, 142, 145, 159, 161, 175, 182, 192, 202, 207, 212, 213, 233, 273, 303, 345, 359, 360, 427, 577, 587, 588, 620, 621, 655, 709, 717, 760, 781, 787, 788, 900, 1345, 1391, 1398, 1447, 1457, 1472, 1473, 1488, 1490, 2184, 2185, 2186, 2188, 2190, 2191, 2193, 2194, 2195, 2197, 2199, 2200, 2201, 2202, 2204, 2207, 2208, 2209, 2210, 2211, 2212, 2218, 2220, 2222, 2223, 2225, 2226, 2230, 2231, 2232, 2235, 2241, 2242, 2246, 2249, 2302, 2307],\n \"1000\": [9, 10, 15, 16, 17, 18, 19, 24, 25, 28, 29, 32, 102, 141, 183, 191, 193, 194, 427, 717, 761, 767, 768, 769, 874, 1154, 1158, 1456, 1465, 1467, 1876, 1964, 2184, 2185, 2186, 2188, 2193, 2195, 2199, 2205, 2206, 2207, 2210, 2211, 2220, 2223, 2229, 2230, 2235, 2238, 2246, 2249, 2261, 2294],\n \"10000\": [192, 1485, 2185, 2201, 2206, 2210, 2220, 2228, 2266],\n \"100000\": [1354, 1372, 2199, 2201, 2210],\n \"1000000\": [144, 2199, 2228],\n@@ -22982,15 +22987,15 @@\n \"11788\": 2199,\n \"117887\": 2195,\n \"11790\": 2230,\n \"11792\": 2246,\n \"11794\": 2230,\n \"117949\": 2214,\n \"117967\": 2216,\n- \"118\": [268, 2184, 2185, 2186, 2188, 2191, 2195, 2197, 2199, 2200, 2201, 2204, 2208, 2209, 2210, 2211, 2220, 2228, 2230, 2232, 2242, 2249, 2265],\n+ \"118\": [268, 2184, 2185, 2186, 2188, 2191, 2193, 2195, 2197, 2199, 2200, 2201, 2204, 2208, 2209, 2210, 2211, 2220, 2228, 2230, 2232, 2242, 2249, 2265],\n \"11804\": 2230,\n \"11805\": 2230,\n \"11806\": 2199,\n \"118076\": 2186,\n \"11808\": 2230,\n \"118091\": 2207,\n \"11816968\": 2238,\n@@ -23374,15 +23379,14 @@\n \"12876\": 2231,\n \"1288\": 2197,\n \"12881\": 2231,\n \"12882\": [2231, 2232, 2238],\n \"12884\": 2238,\n \"12887\": 2231,\n \"12888\": 2230,\n- \"128886\": 2228,\n \"1289\": 2197,\n \"128907\": 2186,\n \"12893\": 2231,\n \"12896\": 2232,\n \"128hr\": 234,\n \"129\": [2184, 2185, 2186, 2188, 2191, 2195, 2197, 2199, 2200, 2201, 2203, 2208, 2210, 2211, 2214, 2225, 2232, 2283],\n \"1290\": 2197,\n@@ -23483,15 +23487,14 @@\n \"13144\": 2232,\n \"13145\": 2232,\n \"13146\": 2232,\n \"13147\": 2232,\n \"13149\": 2232,\n \"131521\": 2207,\n \"13156\": 2232,\n- \"131602\": 2228,\n \"13161\": 2232,\n \"131612\": 2207,\n \"13166\": 2232,\n \"13170\": 2232,\n \"131711\": 2207,\n \"13172\": 2232,\n \"13174\": 2232,\n@@ -23826,14 +23829,15 @@\n \"139583\": 2199,\n \"139606\": 2186,\n \"13965\": 2235,\n \"13966\": 2235,\n \"139683\": 2235,\n \"13971\": 2238,\n \"13972\": 2232,\n+ \"139726596391152\": 2246,\n \"13977\": 2232,\n \"13980\": 2232,\n \"13981\": 2232,\n \"13985\": 2232,\n \"139853\": 2207,\n \"13988\": 2232,\n \"13990\": 2232,\n@@ -23854,16 +23858,14 @@\n \"140249\": 2207,\n \"14039\": 2232,\n \"14041\": 2232,\n \"140528\": 2207,\n \"14058\": 2232,\n \"14065\": 2232,\n \"14066\": 2232,\n- \"140674044343568\": 2246,\n- \"140674044345968\": 2246,\n \"14068\": [2232, 2233],\n \"1408\": [2197, 2231],\n \"14086\": 2232,\n \"14088\": 2232,\n \"1409\": [2185, 2197],\n \"14093\": 2283,\n \"14094\": [2232, 2246],\n@@ -24353,15 +24355,15 @@\n \"15578\": 2235,\n \"15582\": 2235,\n \"15584\": 2265,\n \"15585\": 2298,\n \"1559\": 2262,\n \"15593\": 2236,\n \"15594\": 2235,\n- \"156\": [2185, 2186, 2188, 2195, 2197, 2199, 2200, 2201, 2207, 2210, 2211],\n+ \"156\": [2185, 2186, 2188, 2193, 2195, 2197, 2199, 2200, 2201, 2207, 2210, 2211],\n \"15604\": 2235,\n \"15621\": 2283,\n \"15622\": 2235,\n \"156251\": 2207,\n \"156280\": 2191,\n \"15630\": 2241,\n \"156349\": 2207,\n@@ -24852,15 +24854,15 @@\n \"17280\": 2249,\n \"172800\": [683, 2209, 2298],\n \"17284\": 2241,\n \"172860\": 2228,\n \"17294\": 2265,\n \"17295\": [2238, 2265],\n \"17296\": 2238,\n- \"173\": [15, 2185, 2186, 2188, 2193, 2195, 2197, 2199, 2200, 2210, 2211, 2283],\n+ \"173\": [15, 2185, 2186, 2188, 2195, 2197, 2199, 2200, 2210, 2211, 2283],\n \"173006\": 2207,\n \"17301\": 2241,\n \"173016\": 2207,\n \"17302\": 2238,\n \"17304\": 2265,\n \"17312\": 2241,\n \"173166\": 2207,\n@@ -25744,28 +25746,27 @@\n \"2017q4\": 2238,\n \"2018\": [13, 35, 80, 84, 88, 127, 157, 187, 213, 271, 277, 278, 288, 291, 296, 298, 302, 304, 305, 308, 309, 314, 318, 322, 327, 331, 418, 421, 445, 512, 513, 515, 517, 518, 522, 524, 529, 530, 534, 535, 536, 551, 562, 592, 595, 600, 639, 643, 652, 656, 657, 660, 661, 667, 673, 677, 681, 686, 703, 732, 763, 788, 899, 903, 904, 940, 943, 944, 948, 1109, 1145, 1272, 1275, 1286, 1296, 1344, 1452, 1498, 2185, 2199, 2210, 2212, 2213, 2238, 2246, 2298],\n \"20180101\": [1272, 1275, 1286, 1296],\n \"20180310\": [115, 681],\n \"2018q1\": [529, 2238],\n \"2018q2\": 2238,\n \"2019\": [13, 26, 27, 29, 30, 31, 418, 421, 1344, 1487, 1560, 2199, 2210, 2213, 2241, 2242, 2243, 2245, 2271, 2302],\n- \"202\": [2184, 2185, 2186, 2188, 2195, 2197, 2199, 2207, 2210, 2211],\n+ \"202\": [2184, 2185, 2186, 2188, 2193, 2195, 2197, 2199, 2207, 2210, 2211],\n \"2020\": [22, 82, 121, 218, 230, 268, 286, 287, 289, 293, 295, 298, 300, 317, 323, 324, 329, 519, 521, 523, 542, 547, 548, 549, 551, 593, 641, 645, 647, 649, 650, 651, 671, 678, 679, 684, 696, 793, 804, 939, 955, 956, 957, 958, 962, 963, 964, 965, 966, 967, 968, 970, 972, 973, 975, 976, 977, 978, 979, 980, 981, 983, 990, 992, 993, 994, 995, 997, 999, 1002, 1006, 1007, 1008, 1009, 1010, 1013, 1014, 1017, 1018, 1019, 1023, 1025, 1075, 1392, 1459, 1464, 1498, 1506, 1524, 1542, 1560, 2199, 2201, 2204, 2210, 2212, 2213, 2283, 2289, 2294, 2298, 2302, 2307],\n \"20200101\": [82, 593],\n \"2020q1\": 1008,\n \"2021\": [288, 296, 318, 639, 652, 673, 940, 943, 948, 957, 970, 997, 1542, 2201, 2207, 2213, 2277, 2289, 2294],\n \"2022\": [5, 22, 523, 525, 528, 537, 982, 1185, 1246, 1288, 1491, 1510, 1511, 1512, 1513, 1514, 1515, 1516, 1528, 1529, 1530, 1531, 1532, 1533, 1534, 1542, 1546, 1547, 1548, 1549, 1550, 1551, 1552, 1560, 1564, 1565, 1566, 1567, 1568, 1569, 1570, 1578, 1584, 1585, 1586, 1587, 1588, 1589, 1590, 1598, 1605, 1606, 1607, 1608, 1609, 1610, 1611, 1620, 1624, 1625, 1626, 1627, 1628, 1629, 1630, 1637, 1641, 1642, 1643, 1644, 1645, 1646, 1647, 1657, 1663, 1664, 1665, 1666, 1667, 1668, 1669, 1677, 1684, 1685, 1686, 1687, 1688, 1689, 1690, 1699, 1705, 1706, 1707, 1708, 1709, 1710, 1711, 1720, 1726, 1727, 1728, 1729, 1730, 1731, 1732, 1745, 1746, 1747, 1748, 1749, 1750, 1751, 1758, 1763, 1764, 1765, 1766, 1767, 1768, 1769, 1776, 1780, 1781, 1782, 1783, 1784, 1785, 1786, 1793, 1799, 1800, 1801, 1802, 1803, 1804, 1805, 1815, 1821, 1822, 1823, 1824, 1825, 1826, 1827, 1839, 1844, 1845, 1846, 1847, 1848, 1849, 1850, 1857, 1861, 1862, 1863, 1864, 1865, 1866, 1867, 1876, 1881, 1882, 1883, 1884, 1885, 1886, 1887, 1894, 1899, 1900, 1901, 1902, 1903, 1904, 1905, 1912, 1917, 1918, 1919, 1920, 1921, 1922, 1923, 1930, 1934, 1935, 1936, 1937, 1938, 1939, 1940, 1947, 1951, 1952, 1953, 1954, 1955, 1956, 1957, 1964, 1969, 1970, 1971, 1972, 1973, 1974, 1975, 1982, 1986, 1987, 1988, 1989, 1990, 1991, 1992, 2000, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2018, 2023, 2024, 2025, 2026, 2027, 2028, 2029, 2036, 2041, 2042, 2043, 2044, 2045, 2046, 2047, 2054, 2059, 2060, 2061, 2062, 2063, 2064, 2065, 2077, 2078, 2079, 2080, 2081, 2082, 2083, 2094, 2095, 2096, 2097, 2098, 2099, 2100, 2108, 2112, 2113, 2114, 2115, 2116, 2117, 2118, 2127, 2131, 2132, 2133, 2134, 2135, 2136, 2137, 2145, 2149, 2150, 2151, 2152, 2153, 2154, 2155, 2186, 2203, 2213, 2227, 2298, 2302, 2307],\n \"2022a\": 2294,\n \"2023\": [34, 270, 298, 301, 320, 363, 511, 519, 526, 533, 543, 544, 545, 546, 547, 548, 549, 551, 554, 555, 556, 557, 558, 560, 563, 564, 565, 566, 567, 651, 894, 898, 954, 959, 960, 982, 984, 1000, 1001, 1003, 1004, 1005, 1011, 1016, 1020, 1021, 1024, 1122, 1141, 1147, 1157, 1170, 1171, 1176, 1180, 1185, 1195, 1197, 1206, 1214, 1227, 1228, 1233, 1239, 1245, 1246, 1256, 1258, 1268, 1271, 1273, 1274, 1277, 1278, 1279, 1280, 1282, 1283, 1284, 1285, 1287, 1288, 1290, 1291, 1292, 1293, 1294, 1295, 1297, 1501, 1620, 1930, 2090, 2127, 2145, 2213],\n \"202380\": 2207,\n \"20239\": [2241, 2265],\n- \"2024\": [36, 270, 544, 546, 555, 567, 894, 898, 2127, 2213],\n+ \"2024\": [36, 270, 544, 546, 555, 567, 894, 898, 2127, 2213, 2228],\n \"2025\": [544, 546, 555, 567, 894, 898, 2228],\n \"20251\": 2307,\n- \"2026\": 2228,\n \"202602\": 2205,\n \"202646\": 2230,\n \"20271\": 2241,\n \"202872\": [2184, 2214],\n \"202946\": 2207,\n \"203\": [2185, 2186, 2188, 2195, 2197, 2199, 2210, 2211, 2231, 2253],\n \"2030\": 2265,\n@@ -26435,15 +26436,15 @@\n \"22981\": 2246,\n \"22984\": 2246,\n \"229864\": 2207,\n \"22988\": 2246,\n \"229938\": 2207,\n \"22994\": 2246,\n \"23\": [15, 17, 18, 19, 24, 25, 26, 27, 29, 30, 31, 32, 213, 230, 259, 276, 277, 341, 345, 363, 511, 514, 516, 519, 522, 531, 532, 549, 561, 651, 676, 788, 804, 823, 836, 837, 838, 839, 840, 841, 842, 843, 844, 890, 902, 903, 924, 985, 1192, 1253, 1657, 2184, 2185, 2186, 2188, 2190, 2191, 2192, 2193, 2194, 2195, 2197, 2198, 2199, 2200, 2201, 2202, 2203, 2204, 2205, 2206, 2207, 2208, 2209, 2210, 2211, 2212, 2214, 2215, 2216, 2217, 2218, 2219, 2220, 2222, 2225, 2226, 2227, 2228, 2230, 2231, 2232, 2235, 2238, 2246, 2247, 2249, 2264, 2265, 2271, 2277, 2283, 2289, 2294, 2298, 2302, 2307],\n- \"230\": [2185, 2186, 2188, 2195, 2197, 2199, 2207, 2210, 2254],\n+ \"230\": [2185, 2186, 2188, 2193, 2195, 2197, 2199, 2207, 2210, 2254],\n \"23000\": [2199, 2246],\n \"230012\": 23,\n \"230066\": 2191,\n \"23009\": 2246,\n \"2301\": 2217,\n \"23011\": 2249,\n \"23013\": 2249,\n@@ -26944,15 +26945,15 @@\n \"253128\": 2191,\n \"25317\": 2248,\n \"25318\": 2248,\n \"253355\": 2210,\n \"25338\": 2248,\n \"253495\": 2207,\n \"253881\": 2229,\n- \"254\": [2185, 2186, 2188, 2195, 2197, 2199, 2210, 2220],\n+ \"254\": [2185, 2186, 2188, 2193, 2195, 2197, 2199, 2210, 2220],\n \"254000\": [2185, 2220],\n \"25403\": 2248,\n \"25405\": 2249,\n \"25409\": 2248,\n \"254161\": [2184, 2195, 2214],\n \"25433\": 2249,\n \"25435\": 2249,\n@@ -27183,15 +27184,15 @@\n \"26469\": 2271,\n \"26476\": 2277,\n \"26490\": 2277,\n \"26491\": 2277,\n \"26493\": 2298,\n \"26495\": 2249,\n \"264975\": 2207,\n- \"265\": [2186, 2188, 2195, 2197, 2199, 2210, 2231],\n+ \"265\": [2186, 2188, 2193, 2195, 2197, 2199, 2210, 2231],\n \"26504\": 2249,\n \"26512\": 2249,\n \"26513\": 2271,\n \"265275\": 2207,\n \"265351\": 2207,\n \"26536\": 2249,\n \"26537\": 2249,\n@@ -27267,15 +27268,15 @@\n \"268413\": 2207,\n \"2685\": 2221,\n \"268520\": [2184, 2195, 2214],\n \"2686\": 2215,\n \"2687\": 2215,\n \"2689\": 2215,\n \"268968\": 2207,\n- \"269\": [2186, 2188, 2193, 2195, 2197, 2199, 2210],\n+ \"269\": [2186, 2188, 2195, 2197, 2199, 2210],\n \"2690\": 2215,\n \"26916\": 2249,\n \"26919\": 2283,\n \"2692\": 2215,\n \"269219\": [242, 817],\n \"26934\": 2249,\n \"26939\": 2265,\n@@ -28090,15 +28091,15 @@\n \"3116\": [2184, 2199, 2205],\n \"3117\": [2184, 2199, 2205],\n \"31172\": 2271,\n \"3118\": [2184, 2199, 2205],\n \"31183\": 2266,\n \"311877\": 2199,\n \"3119\": [2184, 2199, 2205],\n- \"312\": [2186, 2193, 2197, 2199, 2210, 2255],\n+ \"312\": [2186, 2197, 2199, 2210, 2255],\n \"3120\": [2184, 2199, 2205],\n \"31200\": 2271,\n \"31204\": 2271,\n \"31205\": 2266,\n \"3121\": [2184, 2199, 2205],\n \"3122\": [2184, 2199, 2205],\n \"312403\": 2191,\n@@ -28754,15 +28755,15 @@\n \"34331\": 2271,\n \"34339\": 2271,\n \"343401\": 2207,\n \"34352\": 2271,\n \"34360\": 2277,\n \"34392\": 2271,\n \"34395\": 2271,\n- \"344\": [2185, 2186, 2188, 2197, 2199, 2210],\n+ \"344\": [2186, 2188, 2197, 2199, 2210],\n \"3440\": 2218,\n \"34402\": 2271,\n \"3441\": 2246,\n \"34411\": 2283,\n \"34418\": 2298,\n \"34422\": 2271,\n \"3443\": 2191,\n@@ -29323,15 +29324,15 @@\n \"3717\": 2218,\n \"37172\": 2283,\n \"37173\": 2277,\n \"37174\": 2275,\n \"371900\": 2186,\n \"37194\": 2277,\n \"371983\": 2195,\n- \"372\": [2186, 2197, 2199, 2210, 2219],\n+ \"372\": [2186, 2193, 2197, 2199, 2210, 2219],\n \"372077\": 2204,\n \"372171\": 2207,\n \"37218\": 2277,\n \"37220\": 2275,\n \"372216\": 2207,\n \"37222\": 2298,\n \"37245\": 2275,\n@@ -29818,15 +29819,15 @@\n \"39464\": 2283,\n \"39465\": 2289,\n \"39474\": 2279,\n \"394760\": 2207,\n \"39481\": 2283,\n \"39488\": 2283,\n \"394981\": 2186,\n- \"395\": [2185, 2186, 2197, 2199, 2210, 2220, 2227],\n+ \"395\": [2186, 2197, 2199, 2210, 2220, 2227],\n \"3950\": [2220, 2221],\n \"395042\": 2184,\n \"39510\": 2283,\n \"395125\": 2257,\n \"39522\": 2283,\n \"39528\": 2279,\n \"395347\": 2199,\n@@ -29895,15 +29896,15 @@\n \"3984\": 2220,\n \"398417\": 2207,\n \"3985\": 2217,\n \"39853\": 2298,\n \"39872\": 2283,\n \"39882\": 2283,\n \"39888\": 2283,\n- \"399\": [2186, 2197, 2199, 2210],\n+ \"399\": [2185, 2186, 2197, 2199, 2210],\n \"3990\": 2217,\n \"399073\": 2186,\n \"39908\": 2283,\n \"39911\": 2298,\n \"399260\": 2207,\n \"39927\": 2283,\n \"39928\": 2283,\n@@ -30044,15 +30045,15 @@\n \"40585\": 2283,\n \"40589\": 2294,\n \"405906\": 2207,\n \"405919\": 2195,\n \"406\": [2186, 2199, 2210],\n \"4060\": 2222,\n \"40606\": 2283,\n- \"4062\": 2217,\n+ \"4062\": [2193, 2217],\n \"40628\": [2283, 2298],\n \"4063\": 2217,\n \"406345\": 2207,\n \"40638\": 2298,\n \"4065\": 2218,\n \"40660\": 2283,\n \"40662\": 2281,\n@@ -30385,15 +30386,15 @@\n \"421422\": 2207,\n \"4215\": 2217,\n \"4216\": 2217,\n \"421655\": 2207,\n \"421830\": 2219,\n \"42185\": 2289,\n \"4219\": 2218,\n- \"422\": [2186, 2193, 2199, 2210],\n+ \"422\": [2186, 2199, 2210],\n \"4220\": 2218,\n \"422008\": 2207,\n \"42201\": 2289,\n \"422022\": 2207,\n \"422060\": 2210,\n \"422064\": 2207,\n \"422106\": 2207,\n@@ -30930,15 +30931,15 @@\n \"44265\": 2289,\n \"4427\": [2192, 2197],\n \"44270\": 2289,\n \"44276\": 2289,\n \"44279\": 2302,\n \"4428\": [2192, 2197],\n \"4429\": [2192, 2197],\n- \"443\": [2199, 2210],\n+ \"443\": [2185, 2199, 2210],\n \"4430\": [2192, 2197],\n \"44304\": 2289,\n \"4431\": [2192, 2197],\n \"443110\": 2185,\n \"44312\": 2289,\n \"44316\": 2289,\n \"44322\": 2289,\n@@ -31374,15 +31375,15 @@\n \"4626960492\": 2199,\n \"4628\": 2218,\n \"462824\": 2186,\n \"46288\": 2294,\n \"462887\": 2207,\n \"46297\": 2292,\n \"462989\": 2207,\n- \"463\": [2199, 2210, 2256],\n+ \"463\": [2185, 2199, 2210, 2256],\n \"46306\": 2291,\n \"46312\": 2294,\n \"46317\": 2291,\n \"46319\": 2298,\n \"4633\": 2218,\n \"46330\": 2294,\n \"463376\": 2207,\n@@ -31611,15 +31612,15 @@\n \"47563\": [2294, 2298],\n \"47566\": 2298,\n \"47571\": 2298,\n \"47578\": 2293,\n \"47579\": 2294,\n \"4758\": 2218,\n \"47587\": 2298,\n- \"476\": [2184, 2193, 2199, 2205, 2210, 2257],\n+ \"476\": [2184, 2199, 2205, 2210, 2257],\n \"47602\": 2294,\n \"476046\": 2185,\n \"476111\": 15,\n \"47618\": 2298,\n \"47628\": 2293,\n \"47649\": 2293,\n \"47656\": 2298,\n@@ -32055,15 +32056,15 @@\n \"4987\": 2225,\n \"4988\": 2238,\n \"498861\": 2191,\n \"49888\": 2300,\n \"49889\": 2299,\n \"49890\": 2298,\n \"49897\": 2298,\n- \"499\": [2184, 2193, 2199, 2205, 2210, 2249],\n+ \"499\": [2184, 2199, 2205, 2210, 2249],\n \"49907\": 2297,\n \"499148\": 2207,\n \"49921\": 2298,\n \"49922\": 2298,\n \"49929\": 2298,\n \"4993\": 2218,\n \"49944\": 2302,\n@@ -32463,15 +32464,15 @@\n \"51856\": 2302,\n \"51858\": 2302,\n \"51861\": 2302,\n \"51873\": 2302,\n \"518736\": 2197,\n \"51895\": 2300,\n \"51896\": 2302,\n- \"519\": [2194, 2199, 2201, 2203, 2238, 2283, 2294, 2307],\n+ \"519\": [2193, 2194, 2199, 2201, 2203, 2238, 2283, 2294, 2307],\n \"51903\": 2302,\n \"5191\": 2218,\n \"519133\": 2207,\n \"51921\": 2302,\n \"51922\": 2302,\n \"51929\": 2307,\n \"51936\": 2302,\n@@ -32646,15 +32647,15 @@\n \"52761\": 2299,\n \"52764\": 2302,\n \"527645\": 2207,\n \"52777\": 2302,\n \"52781\": 2302,\n \"52788\": 2302,\n \"52795\": 2299,\n- \"528\": 2199,\n+ \"528\": [2193, 2199],\n \"52806\": 2302,\n \"52812\": 2300,\n \"528216\": 2207,\n \"52824\": 2300,\n \"528290\": 2195,\n \"5283\": 2219,\n \"52836\": 2302,\n@@ -32727,15 +32728,14 @@\n \"53195\": 2300,\n \"53199\": 2302,\n \"532\": [16, 17, 18, 19, 2199, 2235],\n \"53200\": 2300,\n \"53212\": 2302,\n \"53220\": 2302,\n \"53229\": 2302,\n- \"5323\": 2193,\n \"53231\": 2301,\n \"53232\": 2300,\n \"532359\": 2207,\n \"5324\": 2218,\n \"532532\": [2184, 2214],\n \"53255\": 2302,\n \"53258\": 2302,\n@@ -33447,15 +33447,15 @@\n \"572\": [2199, 2298],\n \"572182\": 2193,\n \"57224\": 2308,\n \"5724\": 2235,\n \"5725\": 2218,\n \"5727\": 2219,\n \"57276\": 2308,\n- \"573\": [1444, 2193, 2199],\n+ \"573\": [1444, 2199],\n \"57301\": 2308,\n \"573025\": 2191,\n \"57310\": 2308,\n \"57315\": 2308,\n \"57316\": 2308,\n \"57318\": 2308,\n \"5732\": 2219,\n@@ -33614,36 +33614,36 @@\n \"591395\": 2207,\n \"5914\": 2219,\n \"591431\": [2184, 2214],\n \"591538\": 2197,\n \"5917\": 2220,\n \"591710\": 2195,\n \"591863\": 2235,\n- \"592\": 2199,\n+ \"592\": [2193, 2199],\n \"5922\": 2219,\n \"592222\": 2207,\n \"592306\": 2184,\n \"592714\": 2195,\n \"5928\": [2186, 2219],\n \"592886\": 2235,\n \"592951\": 2207,\n \"593\": 2199,\n \"593075\": 2207,\n \"5932\": 2219,\n \"593616\": [2184, 2214],\n- \"594\": 2199,\n+ \"594\": [2193, 2199],\n \"5940\": 2220,\n \"5940742896293765\": [16, 19],\n \"5944\": 2219,\n \"59444\": 2310,\n \"594454\": 2207,\n \"5945\": 2220,\n \"5947\": 2219,\n \"594943\": 2207,\n- \"595\": [2193, 2199, 2257],\n+ \"595\": [2199, 2257],\n \"5950\": [2220, 2232],\n \"595013\": 2199,\n \"5952\": 2219,\n \"595307\": 2197,\n \"595334\": 2204,\n \"595393\": 2210,\n \"595447\": [2184, 2214],\n@@ -34410,15 +34410,15 @@\n \"683333\": 2222,\n \"6834\": 2220,\n \"683463\": 2230,\n \"683536\": 2197,\n \"683763\": 2186,\n \"683774\": 2207,\n \"683847\": 2195,\n- \"684\": [2193, 2197],\n+ \"684\": 2197,\n \"684267\": 2207,\n \"684360\": 2195,\n \"684640\": 2186,\n \"6847\": 2220,\n \"684718\": 2197,\n \"685\": [2186, 2197, 2227],\n \"685094\": 2207,\n@@ -34624,15 +34624,15 @@\n \"707\": [2199, 2203],\n \"7070\": 2222,\n \"707107\": [1264, 1301, 1316, 1333, 1339, 2211, 2212, 2235],\n \"707140\": 2197,\n \"7074\": 2228,\n \"7075\": 2220,\n \"707731\": 2184,\n- \"708\": [2185, 2199],\n+ \"708\": 2199,\n \"7081\": [2191, 2194],\n \"708355\": 2218,\n \"7084\": 2220,\n \"708758\": 2214,\n \"7088\": [2220, 2228],\n \"7089\": [2191, 2194],\n \"709\": 2199,\n@@ -34712,15 +34712,15 @@\n \"719369\": 2195,\n \"7195\": 2221,\n \"719541\": 2228,\n \"7196\": 2221,\n \"7198\": 2220,\n \"7199\": 2220,\n \"719915\": 2207,\n- \"72\": [17, 31, 190, 193, 766, 768, 1189, 1250, 1433, 2184, 2185, 2186, 2188, 2191, 2193, 2195, 2197, 2199, 2200, 2201, 2202, 2204, 2205, 2207, 2208, 2209, 2210, 2211, 2212, 2218, 2220, 2222, 2223, 2226, 2228, 2230, 2232, 2235, 2238, 2241, 2246, 2271],\n+ \"72\": [17, 31, 190, 193, 766, 768, 1189, 1250, 1433, 2184, 2185, 2186, 2188, 2191, 2195, 2197, 2199, 2200, 2201, 2202, 2204, 2205, 2207, 2208, 2209, 2210, 2211, 2212, 2218, 2220, 2222, 2223, 2226, 2228, 2230, 2232, 2235, 2238, 2241, 2246, 2271],\n \"720\": [69, 109, 129, 171, 173, 199, 204, 206, 215, 216, 217, 220, 221, 222, 244, 275, 1447, 2200, 2232],\n \"7200\": 2210,\n \"720000\": [2191, 2225],\n \"720521\": 2210,\n \"720589\": [2220, 2228, 2230, 2231],\n \"7206\": 2220,\n \"7207\": 2222,\n@@ -34831,15 +34831,15 @@\n \"735\": 2199,\n \"7352\": 2221,\n \"7353\": 2221,\n \"7354\": 2221,\n \"735523\": 2207,\n \"7357\": 2221,\n \"735925\": 2210,\n- \"736\": [16, 17, 18, 19, 183, 761, 2199, 2232, 2235],\n+ \"736\": [16, 17, 18, 19, 183, 761, 2185, 2199, 2232, 2235],\n \"7360\": 2221,\n \"736107\": 2197,\n \"7365\": 2222,\n \"7366\": 2221,\n \"736609\": 2207,\n \"736755\": 2199,\n \"7369\": 2221,\n@@ -34954,15 +34954,14 @@\n \"7511\": 2222,\n \"7512\": 2221,\n \"751208\": 2207,\n \"751328\": 2195,\n \"7516\": 2221,\n \"751694\": 2207,\n \"751976\": 2214,\n- \"752\": 2205,\n \"752102\": 2207,\n \"752239\": 2207,\n \"7523\": 2221,\n \"752332\": 2186,\n \"752441\": 2207,\n \"7528\": 2222,\n \"752861\": 2195,\n@@ -35008,15 +35007,15 @@\n \"759104\": 2185,\n \"7592\": 2221,\n \"759328\": 2199,\n \"759606\": 2199,\n \"759644\": 2222,\n \"7599\": 2228,\n \"75th\": [107, 629, 1164, 1221],\n- \"76\": [18, 190, 193, 766, 768, 1433, 2184, 2185, 2186, 2188, 2191, 2195, 2197, 2199, 2200, 2201, 2202, 2204, 2207, 2208, 2209, 2210, 2211, 2212, 2218, 2220, 2222, 2223, 2226, 2228, 2230, 2232, 2235, 2241, 2246, 2271],\n+ \"76\": [18, 190, 193, 766, 768, 1433, 2184, 2185, 2186, 2188, 2191, 2193, 2195, 2197, 2199, 2200, 2201, 2202, 2204, 2207, 2208, 2209, 2210, 2211, 2212, 2218, 2220, 2222, 2223, 2226, 2228, 2230, 2232, 2235, 2241, 2246, 2271],\n \"760\": [32, 2298],\n \"7601\": 2221,\n \"760109\": 2195,\n \"7606\": 2221,\n \"760643\": 2199,\n \"7609\": 2221,\n \"760970\": 2207,\n@@ -35119,15 +35118,14 @@\n \"7754\": 2227,\n \"775482\": 2199,\n \"775558e\": 2222,\n \"775602\": 2207,\n \"7757\": 2238,\n \"7758\": 2222,\n \"775880\": 2186,\n- \"776\": 2205,\n \"7760\": 2222,\n \"7761\": 2222,\n \"7762\": 2222,\n \"7763\": 2222,\n \"7766\": 2222,\n \"776734\": 2207,\n \"7768\": [2222, 2241],\n@@ -35199,14 +35197,15 @@\n \"784420\": 2195,\n \"7845\": 2222,\n \"784549\": 2207,\n \"7846\": 2222,\n \"784643\": 2207,\n \"7848\": 2222,\n \"785103\": 2191,\n+ \"785251\": 2228,\n \"785359\": 2230,\n \"7856\": 2226,\n \"7857\": 2222,\n \"7858\": 2222,\n \"785939\": 2211,\n \"785980\": 2195,\n \"786\": 2185,\n@@ -35274,14 +35273,15 @@\n \"794159\": 2199,\n \"7943\": 2222,\n \"794317\": 2230,\n \"794488\": 2207,\n \"7949\": 2222,\n \"7950\": 2222,\n \"7952\": 2222,\n+ \"795234\": 2228,\n \"795981\": 2207,\n \"7963\": 2241,\n \"796421\": 2195,\n \"7966\": 2222,\n \"797\": 2193,\n \"7972\": 2222,\n \"797515\": 2191,\n@@ -35468,15 +35468,15 @@\n \"819\": [2186, 2227],\n \"8190\": 2222,\n \"819059\": 2207,\n \"8193\": 2271,\n \"819476\": 2207,\n \"819492\": 2207,\n \"8199\": 2222,\n- \"82\": [2184, 2185, 2186, 2188, 2191, 2193, 2195, 2197, 2199, 2200, 2201, 2202, 2204, 2207, 2208, 2209, 2210, 2211, 2212, 2218, 2220, 2222, 2226, 2228, 2230, 2232, 2235, 2241, 2246, 2271],\n+ \"82\": [2184, 2185, 2186, 2188, 2191, 2195, 2197, 2199, 2200, 2201, 2202, 2204, 2207, 2208, 2209, 2210, 2211, 2212, 2218, 2220, 2222, 2226, 2228, 2230, 2232, 2235, 2241, 2246, 2271],\n \"820\": 2199,\n \"820223\": 2191,\n \"820408\": 2215,\n \"820750\": 2199,\n \"8208\": 2222,\n \"820801\": 2230,\n \"8209\": 2222,\n@@ -35535,15 +35535,15 @@\n \"8285\": 2225,\n \"8287\": 2232,\n \"828904\": 2191,\n \"8292\": 2232,\n \"829645\": 2207,\n \"829678\": 2191,\n \"829721\": 2212,\n- \"83\": [15, 24, 2184, 2185, 2186, 2188, 2191, 2195, 2197, 2199, 2200, 2201, 2202, 2204, 2207, 2208, 2209, 2210, 2211, 2212, 2218, 2222, 2223, 2226, 2228, 2230, 2232, 2235, 2241, 2246, 2271],\n+ \"83\": [15, 24, 2184, 2185, 2186, 2188, 2191, 2193, 2195, 2197, 2199, 2200, 2201, 2202, 2204, 2207, 2208, 2209, 2210, 2211, 2212, 2218, 2222, 2223, 2226, 2228, 2230, 2232, 2235, 2241, 2246, 2271],\n \"8302\": 2224,\n \"8303\": 2222,\n \"830429\": 2207,\n \"8305\": 2222,\n \"830545\": 2199,\n \"8306\": [2243, 2246],\n \"830957\": 2207,\n@@ -35586,15 +35586,15 @@\n \"838\": 2199,\n \"838161\": 2207,\n \"838166\": 2207,\n \"838258\": 2207,\n \"838665\": 2207,\n \"8387\": 2222,\n \"839002\": 2207,\n- \"84\": [31, 228, 2184, 2185, 2186, 2188, 2191, 2195, 2197, 2199, 2200, 2201, 2202, 2204, 2207, 2208, 2209, 2210, 2211, 2212, 2218, 2222, 2223, 2226, 2228, 2230, 2232, 2235, 2241, 2246],\n+ \"84\": [31, 228, 2184, 2185, 2186, 2188, 2191, 2193, 2195, 2197, 2199, 2200, 2201, 2202, 2204, 2207, 2208, 2209, 2210, 2211, 2212, 2218, 2222, 2223, 2226, 2228, 2230, 2232, 2235, 2241, 2246],\n \"8400\": 2222,\n \"840123\": 2215,\n \"840255\": 2228,\n \"840449\": 15,\n \"840607\": 2186,\n \"840870\": 2197,\n \"840938\": 2207,\n@@ -35820,15 +35820,15 @@\n \"868951\": 2207,\n \"869081\": 2199,\n \"869127\": 2230,\n \"869226\": 2186,\n \"869339\": 2207,\n \"869551\": 2191,\n \"8697\": 2224,\n- \"87\": [15, 18, 133, 196, 208, 242, 283, 586, 708, 771, 782, 817, 910, 2184, 2185, 2186, 2188, 2191, 2193, 2195, 2197, 2199, 2200, 2201, 2202, 2204, 2207, 2208, 2209, 2210, 2211, 2212, 2214, 2218, 2222, 2223, 2226, 2228, 2230, 2232, 2235, 2241, 2246],\n+ \"87\": [15, 18, 133, 196, 208, 242, 283, 586, 708, 771, 782, 817, 910, 2184, 2185, 2186, 2188, 2191, 2195, 2197, 2199, 2200, 2201, 2202, 2204, 2207, 2208, 2209, 2210, 2211, 2212, 2214, 2218, 2222, 2223, 2226, 2228, 2230, 2232, 2235, 2241, 2246],\n \"8701\": 2223,\n \"8702\": 2223,\n \"8703\": 2223,\n \"870756e\": 2195,\n \"8710\": 2223,\n \"871016\": 2204,\n \"871018\": 2207,\n@@ -35851,15 +35851,15 @@\n \"8737\": 2223,\n \"874\": [2199, 2259],\n \"8741\": 2223,\n \"8744\": 2225,\n \"874441\": 2207,\n \"874691\": 2207,\n \"874737\": 2193,\n- \"875\": [2186, 2222, 2227, 2259],\n+ \"875\": [2186, 2193, 2222, 2227, 2259],\n \"875000\": 31,\n \"875071\": 2207,\n \"875224\": 2207,\n \"8753\": 2224,\n \"8754\": 2224,\n \"875476\": 18,\n \"875579\": 2205,\n@@ -35871,15 +35871,14 @@\n \"876\": 1433,\n \"8761\": 2224,\n \"876100\": 2186,\n \"876341\": 2199,\n \"8765\": 2224,\n \"876654\": 2199,\n \"876808\": 2207,\n- \"877\": 2193,\n \"877025\": 2199,\n \"877046\": 2214,\n \"8771\": 2224,\n \"8772\": 2224,\n \"877353\": 2207,\n \"877384e\": 2204,\n \"877657\": 2199,\n@@ -35901,15 +35900,15 @@\n \"880331\": 2207,\n \"880609\": 15,\n \"880680\": 2207,\n \"880838\": 2218,\n \"8813\": 2224,\n \"881334\": 2191,\n \"881376\": 2204,\n- \"882\": [27, 2259],\n+ \"882\": [27, 2193, 2259],\n \"8822\": 2226,\n \"8823\": 2226,\n \"8825\": 2235,\n \"8826\": 2246,\n \"882641\": 2230,\n \"8831\": 2224,\n \"8833\": 2224,\n@@ -36303,15 +36302,15 @@\n \"938819\": 2204,\n \"939\": 2230,\n \"939036\": 2207,\n \"939145\": 2207,\n \"939470\": 2199,\n \"939652\": 2207,\n \"9398\": 2225,\n- \"94\": [15, 282, 2184, 2185, 2186, 2188, 2191, 2192, 2195, 2197, 2199, 2200, 2201, 2202, 2204, 2207, 2208, 2209, 2210, 2211, 2218, 2220, 2222, 2226, 2230, 2232, 2235, 2246],\n+ \"94\": [15, 282, 2184, 2185, 2186, 2188, 2191, 2192, 2195, 2197, 2199, 2200, 2201, 2202, 2204, 2205, 2207, 2208, 2209, 2210, 2211, 2218, 2220, 2222, 2226, 2230, 2232, 2235, 2246],\n \"9402\": 2228,\n \"941248\": 2199,\n \"9413\": 2238,\n \"941451\": 2210,\n \"9416\": 2228,\n \"9422\": 2238,\n \"942321\": 2207,\n@@ -36435,15 +36434,15 @@\n \"9586\": 2307,\n \"958621\": [218, 793],\n \"9589\": 2228,\n \"9596\": 2226,\n \"9597255933\": 2199,\n \"959726\": [2185, 2197, 2199, 2202],\n \"959844\": 2207,\n- \"96\": [586, 1447, 2184, 2185, 2186, 2188, 2191, 2192, 2195, 2197, 2199, 2200, 2201, 2202, 2204, 2205, 2207, 2208, 2209, 2210, 2211, 2218, 2222, 2223, 2226, 2230, 2231, 2232, 2235, 2246],\n+ \"96\": [586, 1447, 2184, 2185, 2186, 2188, 2191, 2192, 2195, 2197, 2199, 2200, 2201, 2202, 2204, 2207, 2208, 2209, 2210, 2211, 2218, 2222, 2223, 2226, 2230, 2231, 2232, 2235, 2246],\n \"960\": 2205,\n \"9602\": 2225,\n \"9603\": 2226,\n \"960464477539062e\": 2298,\n \"9605\": 2277,\n \"960500\": 2219,\n \"9607\": 2228,\n@@ -36634,15 +36633,15 @@\n \"988693\": [155, 156, 730, 731],\n \"9890\": 2226,\n \"9894\": 2228,\n \"9895\": 2235,\n \"989634\": 2204,\n \"989726\": 2207,\n \"989859\": 2185,\n- \"99\": [15, 22, 145, 163, 284, 532, 741, 912, 1447, 1456, 2184, 2185, 2186, 2188, 2191, 2195, 2197, 2199, 2200, 2201, 2202, 2204, 2207, 2208, 2209, 2210, 2211, 2218, 2222, 2226, 2230, 2232, 2235, 2246, 2294, 2307],\n+ \"99\": [15, 22, 145, 163, 284, 532, 741, 912, 1447, 1456, 2184, 2185, 2186, 2188, 2191, 2193, 2195, 2197, 2199, 2200, 2201, 2202, 2204, 2207, 2208, 2209, 2210, 2211, 2218, 2222, 2226, 2230, 2232, 2235, 2246, 2294, 2307],\n \"990\": [2199, 2230],\n \"9900\": 2199,\n \"990000\": 1894,\n \"990317\": 2199,\n \"990340\": 2207,\n \"9905\": 2226,\n \"990582\": [2184, 2195, 2214],\n@@ -36789,15 +36788,15 @@\n \"__array_wrap__\": [2294, 2298],\n \"__arrow_array__\": 10,\n \"__bool__\": 2201,\n \"__builtin__\": 2259,\n \"__bytes__\": [2217, 2249],\n \"__call__\": [2202, 2271, 2298],\n \"__contain\": 2249,\n- \"__contains__\": [2193, 2218, 2224, 2225, 2230, 2241, 2249, 2273, 2277, 2283, 2302],\n+ \"__contains__\": [2218, 2224, 2225, 2230, 2241, 2249, 2273, 2277, 2283, 2302],\n \"__dataframe__\": [1077, 2294, 2307, 2309],\n \"__deepcopy__\": 2235,\n \"__delitem__\": 2283,\n \"__dir__\": [2226, 2271, 2289],\n \"__doc__\": [3, 1054],\n \"__enter__\": 2224,\n \"__eq__\": [1031, 1068, 2186, 2246, 2289, 2307],\n@@ -37805,15 +37804,15 @@\n \"begin\": [3, 5, 13, 16, 19, 121, 233, 234, 259, 267, 270, 425, 426, 427, 502, 513, 515, 533, 535, 541, 696, 807, 808, 866, 873, 890, 896, 898, 1044, 1345, 1391, 1403, 1404, 1433, 1469, 1476, 1483, 1486, 1488, 1490, 1498, 1499, 1699, 1930, 2127, 2186, 2199, 2202, 2208, 2210, 2212, 2220, 2221, 2225, 2228, 2229, 2271, 2277, 2289],\n \"behav\": [7, 63, 134, 205, 267, 341, 709, 778, 896, 1350, 1387, 2168, 2185, 2187, 2190, 2195, 2198, 2203, 2207, 2209, 2210, 2211, 2220, 2222, 2224, 2225, 2232, 2235, 2238, 2240, 2249, 2261, 2265, 2277, 2283, 2289, 2290, 2294, 2302, 2307],\n \"behavior\": [0, 2, 3, 10, 12, 13, 14, 34, 72, 73, 74, 77, 81, 82, 94, 98, 99, 143, 146, 160, 169, 200, 201, 207, 208, 209, 210, 212, 213, 225, 226, 227, 242, 245, 255, 258, 263, 264, 270, 273, 274, 276, 277, 278, 283, 288, 296, 318, 427, 575, 581, 582, 583, 586, 593, 621, 622, 639, 652, 673, 681, 719, 720, 738, 774, 775, 781, 782, 783, 784, 787, 788, 800, 801, 802, 817, 873, 879, 880, 889, 894, 898, 900, 902, 903, 904, 910, 940, 943, 948, 957, 970, 997, 999, 1014, 1018, 1031, 1068, 1118, 1148, 1149, 1152, 1155, 1168, 1202, 1203, 1207, 1208, 1211, 1213, 1225, 1263, 1264, 1269, 1270, 1304, 1321, 1345, 1391, 1446, 1469, 1470, 1475, 1477, 1478, 1486, 1487, 1488, 1490, 1497, 1498, 2177, 2191, 2192, 2193, 2194, 2195, 2196, 2197, 2201, 2202, 2206, 2207, 2210, 2211, 2212, 2213, 2214, 2215, 2216, 2217, 2218, 2219, 2220, 2222, 2223, 2224, 2225, 2226, 2231, 2232, 2235, 2238, 2240, 2241, 2242, 2246, 2247, 2249, 2257, 2260, 2265, 2266, 2271, 2277, 2283, 2289, 2294, 2297, 2298, 2302, 2308],\n \"behaviour\": [18, 75, 77, 97, 98, 169, 205, 242, 247, 584, 620, 621, 634, 778, 808, 817, 864, 880, 1123, 1345, 1391, 1419, 1446, 1468, 1469, 1470, 1471, 1472, 1475, 1476, 1477, 1478, 1481, 1482, 1483, 1484, 1486, 1487, 1488, 1490, 1498, 1499, 2186, 2188, 2199, 2201, 2202, 2206, 2221, 2222, 2223, 2224, 2225, 2226, 2231, 2235, 2241, 2243, 2246, 2249, 2265, 2271, 2277, 2278, 2289, 2294, 2298, 2302, 2307],\n \"behind\": [2197, 2207, 2218, 2302, 2307],\n \"behr\": 32,\n \"beij\": [1145, 2207],\n- \"being\": [1, 2, 3, 4, 10, 13, 17, 141, 150, 152, 160, 188, 189, 209, 212, 214, 223, 241, 253, 257, 259, 262, 263, 269, 276, 346, 352, 375, 376, 563, 617, 699, 717, 738, 764, 765, 783, 787, 798, 830, 835, 858, 859, 864, 886, 890, 902, 1035, 1076, 1117, 1192, 1253, 1387, 1388, 1431, 1433, 1469, 1472, 1475, 1486, 1487, 1493, 1494, 1495, 1496, 1498, 2186, 2188, 2191, 2194, 2195, 2197, 2199, 2201, 2204, 2206, 2210, 2211, 2212, 2214, 2216, 2217, 2218, 2219, 2220, 2221, 2222, 2223, 2225, 2226, 2228, 2229, 2230, 2231, 2232, 2233, 2234, 2235, 2237, 2238, 2239, 2241, 2242, 2246, 2249, 2250, 2261, 2265, 2266, 2267, 2271, 2275, 2277, 2278, 2283, 2286, 2287, 2289, 2294, 2296, 2298, 2302, 2304, 2307, 2308],\n+ \"being\": [1, 2, 3, 4, 10, 13, 17, 141, 150, 152, 160, 188, 189, 209, 212, 214, 223, 241, 253, 257, 259, 262, 263, 269, 276, 346, 352, 375, 376, 563, 617, 699, 717, 738, 764, 765, 783, 787, 798, 830, 835, 858, 859, 864, 886, 890, 902, 1035, 1076, 1117, 1192, 1253, 1387, 1388, 1431, 1433, 1469, 1472, 1475, 1486, 1487, 1493, 1494, 1495, 1496, 1498, 2186, 2188, 2191, 2193, 2194, 2195, 2197, 2199, 2201, 2204, 2206, 2210, 2211, 2212, 2214, 2216, 2217, 2218, 2219, 2220, 2221, 2222, 2223, 2225, 2226, 2228, 2229, 2230, 2231, 2232, 2233, 2234, 2235, 2237, 2238, 2239, 2241, 2242, 2246, 2249, 2250, 2261, 2265, 2266, 2267, 2271, 2275, 2277, 2278, 2283, 2286, 2287, 2289, 2294, 2296, 2298, 2302, 2304, 2307, 2308],\n \"belal01\": 30,\n \"belhb23\": 30,\n \"belld01\": 30,\n \"belld02\": 30,\n \"belong\": [2, 150, 303, 445, 555, 655, 2195, 2210, 2211, 2217, 2222, 2228, 2232],\n \"below\": [1, 3, 5, 6, 9, 10, 13, 15, 16, 17, 19, 22, 79, 92, 98, 102, 107, 117, 160, 196, 213, 252, 276, 378, 380, 465, 489, 591, 616, 621, 629, 693, 738, 771, 788, 902, 1121, 1146, 1148, 1149, 1152, 1158, 1164, 1203, 1207, 1208, 1211, 1221, 1264, 1309, 1323, 1326, 1328, 1343, 1344, 1345, 1354, 1391, 1397, 1403, 1421, 1430, 1433, 1488, 1490, 1498, 1657, 1677, 1699, 1720, 1793, 1815, 2167, 2175, 2184, 2185, 2186, 2188, 2194, 2195, 2197, 2199, 2202, 2206, 2207, 2208, 2210, 2211, 2212, 2218, 2221, 2228, 2231, 2232, 2235, 2241, 2249, 2265, 2271, 2275, 2277, 2283, 2289, 2294, 2298, 2302, 2307],\n \"belr833\": 30,\n@@ -38713,15 +38712,15 @@\n \"correctli\": [6, 7, 1042, 1345, 1391, 1400, 1433, 1469, 1475, 1486, 1488, 1490, 2168, 2186, 2199, 2202, 2215, 2217, 2218, 2220, 2221, 2222, 2223, 2225, 2226, 2227, 2228, 2229, 2230, 2231, 2232, 2233, 2235, 2238, 2239, 2242, 2243, 2246, 2249, 2250, 2265, 2267, 2277, 2283, 2284, 2285, 2286, 2289, 2290, 2293, 2298, 2301, 2302, 2303, 2304, 2307],\n \"correl\": [99, 100, 102, 197, 597, 622, 1155, 1156, 1158, 1213, 1298, 1306, 1323, 1433, 1463, 2220, 2229, 2235, 2246, 2256, 2286, 2294, 2295],\n \"correspond\": [2, 13, 21, 27, 30, 32, 35, 56, 65, 69, 79, 109, 111, 119, 121, 129, 131, 144, 163, 171, 173, 183, 186, 192, 199, 204, 206, 207, 210, 215, 216, 217, 220, 221, 222, 244, 249, 269, 272, 275, 280, 284, 285, 286, 330, 350, 363, 378, 380, 383, 405, 420, 455, 462, 465, 489, 510, 532, 540, 578, 591, 599, 631, 685, 694, 695, 696, 706, 707, 710, 734, 739, 740, 741, 747, 749, 750, 753, 761, 762, 773, 777, 780, 781, 783, 784, 790, 791, 792, 795, 796, 797, 799, 821, 830, 834, 835, 856, 858, 859, 876, 877, 878, 882, 901, 907, 912, 913, 938, 953, 972, 1042, 1061, 1128, 1188, 1202, 1249, 1338, 1339, 1340, 1341, 1387, 1397, 1403, 1404, 1421, 1430, 1439, 1441, 1442, 1449, 1450, 1455, 1456, 1469, 1470, 1476, 1480, 1482, 1483, 1484, 1486, 1498, 1506, 1524, 1815, 1982, 2000, 2167, 2186, 2188, 2191, 2193, 2195, 2197, 2199, 2200, 2201, 2202, 2204, 2208, 2209, 2210, 2211, 2212, 2217, 2220, 2222, 2228, 2230, 2232, 2241, 2246, 2249, 2253, 2271, 2277, 2283, 2289, 2294, 2298, 2302],\n \"corrupt\": [2199, 2220, 2232, 2241, 2265, 2278, 2279, 2282, 2298, 2307],\n \"corrwith\": [99, 597, 622, 1155, 1213, 2241, 2246, 2271, 2294, 2295, 2302],\n \"cosh\": [2193, 2228],\n \"cost\": [3, 13, 118, 132, 135, 144, 159, 161, 175, 1473, 2186, 2197, 2241, 2295],\n- \"could\": [1, 2, 3, 5, 12, 13, 15, 16, 17, 18, 19, 22, 102, 162, 184, 197, 212, 251, 258, 265, 268, 272, 481, 787, 884, 889, 895, 1117, 1158, 1343, 1373, 1453, 1469, 1470, 1471, 1472, 1476, 1477, 1478, 1479, 1480, 1484, 1485, 1486, 1487, 2166, 2185, 2186, 2188, 2192, 2194, 2195, 2197, 2199, 2210, 2211, 2212, 2218, 2220, 2225, 2226, 2227, 2228, 2229, 2230, 2232, 2233, 2234, 2235, 2238, 2239, 2241, 2246, 2247, 2248, 2249, 2250, 2252, 2260, 2265, 2271, 2277, 2278, 2283, 2284, 2289, 2293, 2294, 2295, 2298, 2302, 2307, 2308],\n+ \"could\": [1, 2, 3, 5, 12, 13, 15, 16, 17, 18, 19, 22, 102, 162, 184, 197, 212, 251, 258, 265, 268, 272, 481, 787, 884, 889, 895, 1117, 1158, 1343, 1373, 1453, 1469, 1470, 1471, 1472, 1476, 1477, 1478, 1479, 1480, 1484, 1485, 1486, 1487, 2166, 2185, 2186, 2188, 2192, 2193, 2194, 2195, 2197, 2199, 2210, 2211, 2212, 2218, 2220, 2225, 2226, 2227, 2228, 2229, 2230, 2232, 2233, 2234, 2235, 2238, 2239, 2241, 2246, 2247, 2248, 2249, 2250, 2252, 2260, 2265, 2271, 2277, 2278, 2283, 2284, 2289, 2293, 2294, 2295, 2298, 2302, 2307, 2308],\n \"couldn\": [22, 2277, 2286, 2298],\n \"count\": [16, 18, 21, 23, 24, 107, 112, 123, 144, 172, 180, 281, 414, 436, 629, 748, 758, 831, 908, 1164, 1182, 1183, 1184, 1194, 1204, 1221, 1241, 1244, 1255, 1345, 1382, 1391, 1400, 1470, 1488, 1490, 2188, 2191, 2194, 2195, 2199, 2202, 2204, 2205, 2208, 2211, 2215, 2216, 2218, 2219, 2220, 2222, 2223, 2225, 2228, 2229, 2230, 2231, 2232, 2235, 2239, 2241, 2246, 2249, 2254, 2255, 2256, 2257, 2260, 2265, 2271, 2277, 2279, 2283, 2289, 2294, 2302],\n \"counter\": [3, 1416, 2235],\n \"counterexampl\": 2,\n \"counterpart\": [98, 621, 2206, 2225, 2231, 2238, 2265, 2277, 2289, 2294],\n \"countess\": 32,\n \"counti\": [1443, 2199],\n@@ -39820,15 +39819,15 @@\n \"farmer\": 2199,\n \"farthest\": [91, 1458],\n \"fashion\": [34, 39, 46, 2221, 2246, 2283],\n \"fast\": [5, 15, 34, 83, 141, 256, 351, 594, 717, 888, 1203, 1264, 1469, 1470, 1476, 1486, 2184, 2186, 2192, 2193, 2195, 2196, 2199, 2210, 2222, 2226, 2235, 2246, 2249, 2253, 2254, 2255, 2256],\n \"fast_path\": 2199,\n \"fastavro\": [1473, 2249],\n \"faster\": [4, 5, 15, 16, 34, 62, 151, 162, 251, 258, 262, 263, 265, 268, 272, 390, 615, 754, 757, 815, 884, 889, 895, 1152, 1211, 1242, 1243, 1469, 1486, 1498, 2163, 2185, 2186, 2188, 2193, 2195, 2197, 2199, 2208, 2211, 2214, 2215, 2216, 2219, 2220, 2222, 2232, 2238, 2246, 2249, 2253, 2255, 2256, 2277, 2289, 2302, 2307],\n- \"fastest\": [2186, 2197, 2199],\n+ \"fastest\": [2186, 2193, 2197, 2199],\n \"fastparquet\": [22, 263, 1345, 1391, 1478, 1488, 1490, 2184, 2199, 2202, 2205, 2238, 2246, 2249, 2265, 2271, 2277, 2278, 2283, 2286, 2289, 2294, 2298, 2302, 2307],\n \"fastparquetimpl\": 2199,\n \"fastpath\": [39, 573, 2194, 2201, 2203, 2246, 2265, 2271, 2283, 2294, 2298, 2302, 2307],\n \"fatal\": 2229,\n \"fault\": [2228, 2235, 2239, 2246, 2249, 2271, 2275, 2289],\n \"faulti\": 2220,\n \"favor\": [34, 2220, 2222, 2225, 2226, 2228, 2230, 2231, 2232, 2235, 2238, 2239, 2241, 2246, 2249, 2265, 2266, 2283, 2289, 2294, 2298],\n@@ -40900,15 +40899,15 @@\n \"interchang\": [66, 246, 916, 953, 2172, 2299, 2300, 2302, 2307, 2308],\n \"interchange_object\": [66, 1077],\n \"interest\": [1, 2, 3, 13, 23, 24, 25, 28, 29, 32, 34, 35, 789, 2186, 2193, 2197, 2199, 2207, 2210, 2212, 2217, 2219, 2307, 2308],\n \"interest_r\": 3,\n \"interf\": 2265,\n \"interfac\": [2, 10, 12, 13, 16, 17, 18, 19, 40, 77, 119, 695, 914, 1031, 1068, 1090, 2167, 2186, 2199, 2203, 2207, 2210, 2211, 2218, 2220, 2225, 2227, 2228, 2230, 2235, 2246, 2261, 2271, 2298, 2307],\n \"interleav\": 2199,\n- \"intermedi\": [7, 2172, 2195, 2205, 2210, 2212, 2253, 2307],\n+ \"intermedi\": [7, 2172, 2193, 2195, 2205, 2210, 2212, 2253, 2307],\n \"intermix\": 2186,\n \"intern\": [0, 7, 11, 22, 191, 194, 203, 268, 286, 364, 376, 430, 622, 624, 699, 767, 769, 873, 932, 938, 1031, 1044, 1123, 1124, 1140, 1148, 1149, 1203, 1207, 1208, 1213, 1215, 1264, 1280, 1345, 1361, 1364, 1388, 1391, 1422, 1423, 1433, 1469, 1486, 1488, 1490, 1493, 1494, 1495, 1496, 1499, 2186, 2188, 2193, 2194, 2195, 2197, 2202, 2207, 2210, 2213, 2216, 2217, 2219, 2220, 2230, 2232, 2235, 2238, 2246, 2249, 2253, 2261, 2263, 2265, 2267, 2271, 2274, 2277, 2280, 2289, 2293, 2298, 2307],\n \"internal_cach\": 10,\n \"internet\": 2,\n \"interoper\": [2167, 2186, 2201, 2203, 2302],\n \"interp1d\": [146, 720, 1280],\n \"interp_\": 2201,\n@@ -41517,15 +41516,15 @@\n \"logx\": [186, 762, 1188, 1249, 2211, 2215, 2249],\n \"lon\": [10, 1069, 1071, 1072],\n \"london\": [26, 27, 29, 30, 31, 586, 2210, 2221, 2271],\n \"london_mg_per_cub\": 27,\n \"long\": [0, 1, 2, 3, 21, 31, 119, 123, 167, 184, 185, 230, 241, 263, 695, 698, 804, 808, 873, 1345, 1391, 1444, 1445, 1453, 1454, 1469, 1486, 1487, 1488, 1490, 2163, 2166, 2185, 2188, 2190, 2199, 2202, 2204, 2205, 2208, 2210, 2214, 2216, 2218, 2220, 2222, 2225, 2228, 2229, 2230, 2231, 2232, 2235, 2238, 2239, 2240, 2241, 2243, 2246, 2249, 2277, 2278, 2289, 2302, 2307, 2308],\n \"long_seri\": 2186,\n \"longdoubl\": 2186,\n- \"longer\": [1, 2, 5, 98, 134, 522, 533, 563, 621, 709, 873, 874, 1118, 1178, 1179, 1180, 1181, 1189, 1200, 1237, 1238, 1239, 1240, 1250, 1261, 1284, 1290, 1295, 1469, 1486, 2191, 2197, 2199, 2202, 2210, 2214, 2215, 2217, 2218, 2219, 2220, 2221, 2222, 2224, 2225, 2226, 2228, 2230, 2231, 2233, 2235, 2238, 2242, 2243, 2246, 2247, 2257, 2261, 2263, 2264, 2265, 2266, 2271, 2275, 2277, 2278, 2292, 2294, 2295, 2298, 2302],\n+ \"longer\": [1, 2, 5, 98, 134, 522, 533, 563, 621, 709, 873, 874, 1118, 1178, 1179, 1180, 1181, 1189, 1200, 1237, 1238, 1239, 1240, 1250, 1261, 1284, 1290, 1295, 1469, 1486, 2191, 2193, 2197, 2199, 2202, 2210, 2214, 2215, 2217, 2218, 2219, 2220, 2221, 2222, 2224, 2225, 2226, 2228, 2230, 2231, 2233, 2235, 2238, 2242, 2243, 2246, 2247, 2257, 2261, 2263, 2264, 2265, 2266, 2271, 2275, 2277, 2278, 2292, 2294, 2295, 2298, 2302],\n \"longest\": [32, 923, 2217, 2272],\n \"longitud\": [10, 30, 197, 1069, 1071, 1072],\n \"longlong\": 2186,\n \"longpanel\": [2228, 2246, 2257],\n \"longtabl\": [259, 890, 1345, 1391, 1433, 1488, 1490, 2202, 2220, 2230, 2239, 2277, 2289, 2291, 2298],\n \"longtablebuild\": 2277,\n \"longtim\": 2228,\n@@ -41579,15 +41578,15 @@\n \"ly\": 2210,\n \"lz4\": [256, 263, 888, 2199, 2236],\n \"lz4hc\": [256, 888, 2199, 2236],\n \"lzip\": 2218,\n \"lzma\": [251, 258, 265, 268, 272, 884, 889, 895, 1469, 1476, 1479, 1480, 1485, 1486, 1487, 2213, 2289, 2298, 2302],\n \"lzmafil\": [251, 258, 265, 268, 272, 884, 889, 895, 1469, 1476, 1479, 1480, 1485, 1486, 1487, 2302],\n \"lzo\": [256, 888, 2199],\n- \"m\": [1, 2, 5, 8, 13, 16, 17, 19, 22, 23, 24, 25, 27, 31, 32, 153, 163, 169, 241, 258, 264, 270, 273, 276, 284, 287, 298, 300, 301, 320, 322, 326, 423, 513, 515, 519, 522, 523, 525, 528, 532, 535, 537, 538, 541, 547, 548, 549, 551, 557, 558, 562, 563, 564, 566, 651, 677, 680, 741, 857, 889, 898, 900, 902, 912, 916, 917, 918, 923, 938, 939, 953, 954, 997, 999, 1000, 1008, 1017, 1051, 1147, 1157, 1170, 1171, 1176, 1180, 1185, 1195, 1197, 1206, 1214, 1227, 1228, 1233, 1239, 1245, 1246, 1256, 1258, 1268, 1271, 1273, 1274, 1277, 1278, 1279, 1282, 1283, 1284, 1285, 1287, 1288, 1290, 1291, 1292, 1293, 1294, 1295, 1297, 1338, 1339, 1340, 1341, 1393, 1397, 1430, 1433, 1446, 1452, 1459, 1464, 1469, 1476, 1482, 1483, 1484, 1486, 1492, 1497, 1498, 1500, 1501, 1578, 1657, 1677, 1699, 1720, 1741, 2186, 2188, 2193, 2197, 2199, 2200, 2201, 2203, 2207, 2208, 2209, 2210, 2214, 2216, 2218, 2220, 2221, 2222, 2227, 2228, 2230, 2231, 2232, 2238, 2246, 2249, 2257, 2264, 2265, 2271, 2277, 2294, 2298, 2302],\n+ \"m\": [1, 2, 5, 8, 13, 16, 17, 19, 22, 23, 24, 25, 27, 31, 32, 153, 163, 169, 241, 258, 264, 270, 273, 276, 284, 287, 298, 300, 301, 320, 322, 326, 423, 513, 515, 519, 522, 523, 525, 528, 532, 535, 537, 538, 541, 547, 548, 549, 551, 557, 558, 562, 563, 564, 566, 651, 677, 680, 741, 857, 889, 898, 900, 902, 912, 916, 917, 918, 923, 938, 939, 953, 954, 997, 999, 1000, 1008, 1017, 1051, 1147, 1157, 1170, 1171, 1176, 1180, 1185, 1195, 1197, 1206, 1214, 1227, 1228, 1233, 1239, 1245, 1246, 1256, 1258, 1268, 1271, 1273, 1274, 1277, 1278, 1279, 1282, 1283, 1284, 1285, 1287, 1288, 1290, 1291, 1292, 1293, 1294, 1295, 1297, 1338, 1339, 1340, 1341, 1393, 1397, 1430, 1433, 1446, 1452, 1459, 1464, 1469, 1476, 1482, 1483, 1484, 1486, 1492, 1497, 1498, 1500, 1501, 1578, 1657, 1677, 1699, 1720, 1741, 2185, 2186, 2188, 2193, 2197, 2199, 2200, 2201, 2203, 2205, 2207, 2208, 2209, 2210, 2214, 2216, 2218, 2220, 2221, 2222, 2227, 2228, 2230, 2231, 2232, 2238, 2246, 2249, 2257, 2264, 2265, 2271, 2277, 2294, 2298, 2302],\n \"m8\": [46, 1114, 2210, 2216, 2228, 2230, 2298],\n \"ma\": [2211, 2283, 2298],\n \"mac\": [6, 22],\n \"machin\": [1, 2, 4, 11, 16, 19, 22, 1491, 2193, 2194, 2199, 2289],\n \"maco\": [5, 22, 250, 883, 2246, 2249, 2250, 2278],\n \"macro\": 2277,\n \"mactch\": 2200,\n@@ -43966,14 +43965,15 @@\n \"slight\": [3, 2195],\n \"slightli\": [3, 13, 203, 862, 866, 1387, 2185, 2197, 2199, 2217, 2228, 2277, 2294],\n \"slinear\": [146, 720, 1280, 2218],\n \"sln\": 2191,\n \"sloper\": 25,\n \"slow\": [2, 22, 1345, 1391, 1488, 1490, 1492, 1498, 2186, 2193, 2199, 2202, 2217, 2222, 2232, 2238, 2241, 2253, 2307],\n \"slower\": [1152, 1211, 2193, 2197, 2199, 2202, 2210, 2218, 2228],\n+ \"slowest\": 2193,\n \"slshape\": 1433,\n \"sm\": [1275, 2186, 2210, 2227, 2232, 2307],\n \"small\": [3, 13, 16, 17, 18, 19, 29, 111, 185, 190, 191, 194, 754, 757, 766, 767, 769, 1242, 1243, 1454, 2185, 2186, 2193, 2195, 2199, 2205, 2207, 2210, 2216, 2218, 2219, 2220, 2221, 2222, 2223, 2224, 2225, 2226, 2228, 2230, 2232, 2233, 2234, 2236, 2237, 2239, 2241, 2242, 2243, 2245, 2249, 2271, 2277, 2283, 2289, 2294, 2298, 2302],\n \"smaller\": [0, 94, 144, 268, 745, 1345, 1391, 1488, 1490, 1499, 2186, 2188, 2193, 2202, 2207, 2208, 2210, 2211, 2243, 2249],\n \"smallest\": [176, 179, 360, 588, 754, 757, 1191, 1194, 1242, 1243, 1252, 1255, 1499, 2199, 2205, 2235, 2246, 2264, 2294],\n \"smallint\": [2199, 2307],\n \"smart\": [22, 2186, 2277],\n@@ -44803,15 +44803,15 @@\n \"tolist\": [15, 432, 891, 2199, 2222, 2238, 2246, 2289, 2298, 2302],\n \"tolong\": 2241,\n \"tom\": [13, 35, 2199, 2247, 2248, 2294],\n \"tomaugsburg\": 2231,\n \"tomaugspurg\": [13, 35],\n \"toml\": [2, 22, 2238, 2265],\n \"too\": [2, 3, 233, 807, 831, 1196, 1257, 1358, 1469, 1470, 1486, 2197, 2199, 2205, 2207, 2211, 2215, 2217, 2220, 2231, 2241, 2249, 2257, 2274, 2277, 2283, 2289, 2293, 2294, 2298, 2308],\n- \"took\": [2199, 2223, 2241],\n+ \"took\": [2193, 2199, 2223, 2241],\n \"tool\": [2, 5, 6, 8, 10, 15, 21, 22, 34, 36, 1146, 1469, 1472, 1486, 2184, 2185, 2186, 2191, 2193, 2195, 2196, 2210, 2220, 2225, 2226, 2232, 2235, 2241, 2246, 2260, 2283, 2298, 2307],\n \"tooltip\": [1402, 1423, 2196, 2283],\n \"toordin\": 2302,\n \"top\": [22, 34, 91, 107, 148, 149, 177, 178, 185, 186, 203, 205, 212, 214, 241, 259, 341, 348, 376, 402, 413, 629, 699, 725, 726, 755, 756, 762, 778, 787, 890, 905, 1036, 1051, 1164, 1188, 1191, 1221, 1249, 1252, 1345, 1387, 1388, 1391, 1400, 1433, 1454, 1458, 1488, 1490, 2167, 2172, 2184, 2186, 2188, 2193, 2195, 2199, 2202, 2204, 2207, 2209, 2211, 2217, 2218, 2220, 2222, 2227, 2230, 2232, 2235, 2238, 2241, 2260, 2264, 2265, 2283, 2289, 2302],\n \"topic\": [0, 4, 13, 35, 2185, 2196],\n \"topmost\": 2204,\n \"toprul\": [259, 890, 1433, 2277],\n@@ -44969,15 +44969,15 @@\n \"tzfile\": [286, 329, 330, 331, 684, 685, 686, 953, 956, 972, 1013, 1014, 2210, 2221],\n \"tzinfo\": [277, 278, 286, 324, 329, 330, 331, 334, 575, 679, 684, 685, 686, 903, 904, 953, 983, 995, 1001, 1004, 1012, 1344, 2210, 2221, 2222, 2238, 2239, 2241, 2283, 2294, 2303],\n \"tzlocal\": [2232, 2246, 2298],\n \"tzname\": 2294,\n \"tzoffset\": 2222,\n \"tzser\": 575,\n \"tzutc\": [2210, 2246],\n- \"u\": [1, 3, 4, 5, 7, 13, 17, 18, 31, 203, 258, 287, 311, 330, 331, 532, 663, 664, 685, 686, 889, 905, 909, 916, 917, 918, 920, 921, 927, 930, 938, 939, 941, 946, 953, 954, 957, 995, 1017, 1085, 1087, 1088, 1204, 1476, 1482, 1483, 1484, 1498, 1500, 2163, 2184, 2185, 2186, 2193, 2194, 2195, 2199, 2203, 2205, 2207, 2208, 2209, 2210, 2222, 2226, 2228, 2230, 2235, 2238, 2241, 2246, 2249, 2294, 2298, 2302, 2307],\n+ \"u\": [1, 3, 4, 5, 7, 13, 17, 18, 31, 203, 258, 287, 311, 330, 331, 532, 663, 664, 685, 686, 889, 905, 909, 916, 917, 918, 920, 921, 927, 930, 938, 939, 941, 946, 953, 954, 957, 995, 1017, 1085, 1087, 1088, 1204, 1476, 1482, 1483, 1484, 1498, 1500, 2163, 2184, 2185, 2186, 2193, 2194, 2195, 2199, 2203, 2207, 2208, 2209, 2210, 2222, 2226, 2228, 2230, 2235, 2238, 2241, 2246, 2249, 2294, 2298, 2302, 2307],\n \"u1\": [131, 1118, 2185, 2186, 2199],\n \"u4\": 2197,\n \"u5\": 2197,\n \"u8\": 2186,\n \"ubuntu\": 5,\n \"udf\": [72, 73, 77, 273, 581, 582, 586, 900, 1148, 1149, 1152, 1168, 1203, 1207, 1208, 1211, 1225, 1264, 1269, 1270, 1304, 1321, 2195, 2196, 2294],\n \"ufunc\": [10, 586, 808, 1031, 2185, 2186, 2191, 2206, 2213, 2219, 2221, 2232, 2246, 2265, 2277, 2281, 2289, 2293, 2294, 2298, 2307],\n"}]}, {"source1": "./usr/share/doc/python-pandas-doc/html/user_guide/advanced.html", "source2": "./usr/share/doc/python-pandas-doc/html/user_guide/advanced.html", "unified_diff": "@@ -1856,25 +1856,25 @@\n In [141]: indexer = np.arange(10000)\n \n In [142]: random.shuffle(indexer)\n \n In [143]: %timeit arr[indexer]\n .....: %timeit arr.take(indexer, axis=0)\n .....: \n-708 us +- 203 us per loop (mean +- std. dev. of 7 runs, 1,000 loops each)\n-240 us +- 54.5 us per loop (mean +- std. dev. of 7 runs, 10,000 loops each)\n+1.88 ms +- 463 us per loop (mean +- std. dev. of 7 runs, 1,000 loops each)\n+443 us +- 105 us per loop (mean +- std. dev. of 7 runs, 1,000 loops each)\n \n \n
In [144]: ser = pd.Series(arr[:, 0])\n \n In [145]: %timeit ser.iloc[indexer]\n    .....: %timeit ser.take(indexer)\n    .....: \n-344 us +- 82.8 us per loop (mean +- std. dev. of 7 runs, 1,000 loops each)\n-395 us +- 173 us per loop (mean +- std. dev. of 7 runs, 1,000 loops each)\n+1.42 ms +- 399 us per loop (mean +- std. dev. of 7 runs, 1,000 loops each)\n+736 us +- 148 us per loop (mean +- std. dev. of 7 runs, 1,000 loops each)\n 
\n
\n \n
\n

Index types#

\n

We have discussed MultiIndex in the previous sections pretty extensively.\n Documentation about DatetimeIndex and PeriodIndex are shown here,\n", "details": [{"source1": "html2text {}", "source2": "html2text {}", "unified_diff": "@@ -1241,23 +1241,23 @@\n In [141]: indexer = np.arange(10000)\n \n In [142]: random.shuffle(indexer)\n \n In [143]: %timeit arr[indexer]\n .....: %timeit arr.take(indexer, axis=0)\n .....:\n-708 us +- 203 us per loop (mean +- std. dev. of 7 runs, 1,000 loops each)\n-240 us +- 54.5 us per loop (mean +- std. dev. of 7 runs, 10,000 loops each)\n+1.88 ms +- 463 us per loop (mean +- std. dev. of 7 runs, 1,000 loops each)\n+443 us +- 105 us per loop (mean +- std. dev. of 7 runs, 1,000 loops each)\n In [144]: ser = pd.Series(arr[:, 0])\n \n In [145]: %timeit ser.iloc[indexer]\n .....: %timeit ser.take(indexer)\n .....:\n-344 us +- 82.8 us per loop (mean +- std. dev. of 7 runs, 1,000 loops each)\n-395 us +- 173 us per loop (mean +- std. dev. of 7 runs, 1,000 loops each)\n+1.42 ms +- 399 us per loop (mean +- std. dev. of 7 runs, 1,000 loops each)\n+736 us +- 148 us per loop (mean +- std. dev. of 7 runs, 1,000 loops each)\n *\b**\b**\b**\b**\b* I\bIn\bnd\bde\bex\bx t\bty\byp\bpe\bes\bs_\b#\b# *\b**\b**\b**\b**\b*\n We have discussed MultiIndex in the previous sections pretty extensively.\n Documentation about DatetimeIndex and PeriodIndex are shown _\bh_\be_\br_\be, and\n documentation about TimedeltaIndex is found _\bh_\be_\br_\be.\n In the following sub-sections we will highlight some other index types.\n *\b**\b**\b**\b* C\bCa\bat\bte\beg\bgo\bor\bri\bic\bca\bal\blI\bIn\bnd\bde\bex\bx_\b#\b# *\b**\b**\b**\b*\n _\bC_\ba_\bt_\be_\bg_\bo_\br_\bi_\bc_\ba_\bl_\bI_\bn_\bd_\be_\bx is a type of index that is useful for supporting indexing with\n"}]}, {"source1": "./usr/share/doc/python-pandas-doc/html/user_guide/enhancingperf.html", "source2": "./usr/share/doc/python-pandas-doc/html/user_guide/enhancingperf.html", "unified_diff": "@@ -601,31 +601,31 @@\n ...: s += f(a + i * dx)\n ...: return s * dx\n ...: \n \n \n

We achieve our result by using DataFrame.apply() (row-wise):

\n
In [5]: %timeit df.apply(lambda x: integrate_f(x["a"], x["b"], x["N"]), axis=1)\n-269 ms +- 43.8 ms per loop (mean +- std. dev. of 7 runs, 1 loop each)\n+594 ms +- 97 ms per loop (mean +- std. dev. of 7 runs, 1 loop each)\n 
\n
\n

Let\u2019s take a look and see where the time is spent during this operation\n using the prun ipython magic function:

\n
# most time consuming 4 calls\n In [6]: %prun -l 4 df.apply(lambda x: integrate_f(x["a"], x["b"], x["N"]), axis=1)  # noqa E999\n-         605951 function calls (605933 primitive calls) in 0.684 seconds\n+         605951 function calls (605933 primitive calls) in 1.519 seconds\n \n    Ordered by: internal time\n    List reduced from 159 to 4 due to restriction <4>\n \n    ncalls  tottime  percall  cumtime  percall filename:lineno(function)\n-     1000    0.422    0.000    0.595    0.001 <ipython-input-4-c2a74e076cf0>:1(integrate_f)\n-   552423    0.173    0.000    0.173    0.000 <ipython-input-3-c138bdd570e3>:1(f)\n-    16098    0.013    0.000    0.018    0.000 {built-in method builtins.isinstance}\n-     1001    0.012    0.000    0.020    0.000 apply.py:1247(series_generator)\n+     1000    0.882    0.001    1.254    0.001 <ipython-input-4-c2a74e076cf0>:1(integrate_f)\n+   552423    0.372    0.000    0.372    0.000 <ipython-input-3-c138bdd570e3>:1(f)\n+     1001    0.037    0.000    0.080    0.000 apply.py:1247(series_generator)\n+    16098    0.035    0.000    0.039    0.000 {built-in method builtins.isinstance}\n 
\n
\n

By far the majority of time is spend inside either integrate_f or f,\n hence we\u2019ll concentrate our efforts cythonizing these two functions.

\n
\n
\n

Plain Cython#

\n@@ -643,15 +643,15 @@\n ...: for i in range(N):\n ...: s += f_plain(a + i * dx)\n ...: return s * dx\n ...: \n \n \n
In [9]: %timeit df.apply(lambda x: integrate_f_plain(x["a"], x["b"], x["N"]), axis=1)\n-312 ms +- 58.7 ms per loop (mean +- std. dev. of 7 runs, 1 loop each)\n+528 ms +- 118 ms per loop (mean +- std. dev. of 7 runs, 1 loop each)\n 
\n
\n

This has improved the performance compared to the pure Python approach by one-third.

\n
\n
\n

Declaring C types#

\n

We can annotate the function variables and return types as well as use cdef\n@@ -667,36 +667,36 @@\n ....: for i in range(N):\n ....: s += f_typed(a + i * dx)\n ....: return s * dx\n ....: \n \n \n

In [11]: %timeit df.apply(lambda x: integrate_f_typed(x["a"], x["b"], x["N"]), axis=1)\n-36.8 ms +- 4.86 ms per loop (mean +- std. dev. of 7 runs, 10 loops each)\n+76.2 ms +- 19.2 ms per loop (mean +- std. dev. of 7 runs, 10 loops each)\n 
\n
\n

Annotating the functions with C types yields an over ten times performance improvement compared to\n the original Python implementation.

\n
\n
\n

Using ndarray#

\n

When re-profiling, time is spent creating a Series from each row, and calling __getitem__ from both\n the index and the series (three times for each row). These Python function calls are expensive and\n can be improved by passing an np.ndarray.

\n
In [12]: %prun -l 4 df.apply(lambda x: integrate_f_typed(x["a"], x["b"], x["N"]), axis=1)\n-         52528 function calls (52510 primitive calls) in 0.044 seconds\n+         52528 function calls (52510 primitive calls) in 0.084 seconds\n \n    Ordered by: internal time\n    List reduced from 157 to 4 due to restriction <4>\n \n    ncalls  tottime  percall  cumtime  percall filename:lineno(function)\n-     3000    0.007    0.000    0.028    0.000 series.py:1095(__getitem__)\n-     3000    0.005    0.000    0.012    0.000 series.py:1220(_get_value)\n-    16098    0.005    0.000    0.006    0.000 {built-in method builtins.isinstance}\n-     3000    0.004    0.000    0.004    0.000 base.py:3777(get_loc)\n+     3000    0.022    0.000    0.034    0.000 series.py:1220(_get_value)\n+     3000    0.011    0.000    0.055    0.000 series.py:1095(__getitem__)\n+     3000    0.007    0.000    0.008    0.000 base.py:3777(get_loc)\n+     1001    0.006    0.000    0.015    0.000 apply.py:1247(series_generator)\n 
\n
\n
In [13]: %%cython\n    ....: cimport numpy as np\n    ....: import numpy as np\n    ....: cdef double f_typed(double x) except? -2:\n    ....:     return x * (x - 1)\n@@ -731,34 +731,34 @@\n 
\n

This implementation creates an array of zeros and inserts the result\n of integrate_f_typed applied over each row. Looping over an ndarray is faster\n in Cython than looping over a Series object.

\n

Since apply_integrate_f is typed to accept an np.ndarray, Series.to_numpy()\n calls are needed to utilize this function.

\n
In [14]: %timeit apply_integrate_f(df["a"].to_numpy(), df["b"].to_numpy(), df["N"].to_numpy())\n-3.05 ms +- 499 us per loop (mean +- std. dev. of 7 runs, 100 loops each)\n+4.92 ms +- 875 us per loop (mean +- std. dev. of 7 runs, 100 loops each)\n 
\n
\n

Performance has improved from the prior implementation by almost ten times.

\n
\n
\n

Disabling compiler directives#

\n

The majority of the time is now spent in apply_integrate_f. Disabling Cython\u2019s boundscheck\n and wraparound checks can yield more performance.

\n
In [15]: %prun -l 4 apply_integrate_f(df["a"].to_numpy(), df["b"].to_numpy(), df["N"].to_numpy())\n-         78 function calls in 0.007 seconds\n+         78 function calls in 0.003 seconds\n \n    Ordered by: internal time\n    List reduced from 21 to 4 due to restriction <4>\n \n    ncalls  tottime  percall  cumtime  percall filename:lineno(function)\n-        3    0.004    0.001    0.004    0.001 base.py:5323(__contains__)\n-        1    0.002    0.002    0.006    0.006 <string>:1(<module>)\n+        1    0.002    0.002    0.003    0.003 <string>:1(<module>)\n+        1    0.000    0.000    0.003    0.003 {built-in method builtins.exec}\n         1    0.000    0.000    0.000    0.000 {method 'disable' of '_lsprof.Profiler' objects}\n-        1    0.000    0.000    0.006    0.006 {built-in method builtins.exec}\n+        3    0.000    0.000    0.000    0.000 frame.py:4062(__getitem__)\n 
\n
\n
In [16]: %%cython\n    ....: cimport cython\n    ....: cimport numpy as np\n    ....: import numpy as np\n    ....: cdef np.float64_t f_typed(np.float64_t x) except? -2:\n@@ -791,15 +791,15 @@\n                  from /build/reproducible-path/pandas-2.2.3+dfsg/buildtmp/.cache/ipython/cython/_cython_magic_1beb7d842bd69f96ce1bb2d1a0cb43e06025bd15.c:1251:\n /usr/lib/python3/dist-packages/numpy/core/include/numpy/npy_1_7_deprecated_api.h:17:2: warning: #warning "Using deprecated NumPy API, disable it with " "#define NPY_NO_DEPRECATED_API NPY_1_7_API_VERSION" [-Wcpp]\n    17 | #warning "Using deprecated NumPy API, disable it with " \\\n       |  ^~~~~~~\n 
\n
\n
In [17]: %timeit apply_integrate_f_wrap(df["a"].to_numpy(), df["b"].to_numpy(), df["N"].to_numpy())\n-2.02 ms +- 476 us per loop (mean +- std. dev. of 7 runs, 100 loops each)\n+3.76 ms +- 592 us per loop (mean +- std. dev. of 7 runs, 100 loops each)\n 
\n
\n

However, a loop indexer i accessing an invalid location in an array would cause a segfault because memory access isn\u2019t checked.\n For more about boundscheck and wraparound, see the Cython docs on\n compiler directives.

\n
\n \n@@ -1157,19 +1157,20 @@\n compared to standard Python syntax for large DataFrame. This engine requires the\n optional dependency numexpr to be installed.

\n

The 'python' engine is generally not useful except for testing\n other evaluation engines against it. You will achieve no performance\n benefits using eval() with engine='python' and may\n incur a performance hit.

\n
In [40]: %timeit df1 + df2 + df3 + df4\n-31.5 ms +- 2.87 ms per loop (mean +- std. dev. of 7 runs, 10 loops each)\n+2.86 s +- 1.01 s per loop (mean +- std. dev. of 7 runs, 1 loop each)\n 
\n
\n
In [41]: %timeit pd.eval("df1 + df2 + df3 + df4", engine="python")\n-39.1 ms +- 5.82 ms per loop (mean +- std. dev. of 7 runs, 10 loops each)\n+The slowest run took 5.84 times longer than the fastest. This could mean that an intermediate result is being cached.\n+265 ms +- 230 ms per loop (mean +- std. dev. of 7 runs, 1 loop each)\n 
\n
\n \n
\n

The DataFrame.eval() method#

\n

In addition to the top level pandas.eval() function you can also\n evaluate an expression in the \u201ccontext\u201d of a DataFrame.

\n@@ -1284,39 +1285,39 @@\n
In [58]: nrows, ncols = 20000, 100\n \n In [59]: df1, df2, df3, df4 = [pd.DataFrame(np.random.randn(nrows, ncols)) for _ in range(4)]\n 
\n
\n

DataFrame arithmetic:

\n
In [60]: %timeit df1 + df2 + df3 + df4\n-38 ms +- 7.39 ms per loop (mean +- std. dev. of 7 runs, 10 loops each)\n+156 ms +- 13.9 ms per loop (mean +- std. dev. of 7 runs, 10 loops each)\n 
\n
\n
In [61]: %timeit pd.eval("df1 + df2 + df3 + df4")\n-11.3 ms +- 573 us per loop (mean +- std. dev. of 7 runs, 100 loops each)\n+54.2 ms +- 9.86 ms per loop (mean +- std. dev. of 7 runs, 10 loops each)\n 
\n
\n

DataFrame comparison:

\n
In [62]: %timeit (df1 > 0) & (df2 > 0) & (df3 > 0) & (df4 > 0)\n-35.1 ms +- 877 us per loop (mean +- std. dev. of 7 runs, 10 loops each)\n+83.2 ms +- 8.31 ms per loop (mean +- std. dev. of 7 runs, 10 loops each)\n 
\n
\n
In [63]: %timeit pd.eval("(df1 > 0) & (df2 > 0) & (df3 > 0) & (df4 > 0)")\n-19.5 ms +- 2.72 ms per loop (mean +- std. dev. of 7 runs, 10 loops each)\n+41.4 ms +- 3.99 ms per loop (mean +- std. dev. of 7 runs, 10 loops each)\n 
\n
\n

DataFrame arithmetic with unaligned axes.

\n
In [64]: s = pd.Series(np.random.randn(50))\n \n In [65]: %timeit df1 + df2 + df3 + df4 + s\n-58.7 ms +- 19.8 ms per loop (mean +- std. dev. of 7 runs, 10 loops each)\n+202 ms +- 49.5 ms per loop (mean +- std. dev. of 7 runs, 10 loops each)\n 
\n
\n
In [66]: %timeit pd.eval("df1 + df2 + df3 + df4 + s")\n-15.3 ms +- 1.39 ms per loop (mean +- std. dev. of 7 runs, 100 loops each)\n+55.9 ms +- 3.5 ms per loop (mean +- std. dev. of 7 runs, 10 loops each)\n 
\n
\n
\n

Note

\n

Operations such as

\n
1 and 2  # would parse to 1 & 2, but should evaluate to 2\n 3 or 4  # would parse to 3 | 4, but should evaluate to 3\n", "details": [{"source1": "html2text {}", "source2": "html2text {}", "unified_diff": "@@ -106,33 +106,33 @@\n    ...:     dx = (b - a) / N\n    ...:     for i in range(N):\n    ...:         s += f(a + i * dx)\n    ...:     return s * dx\n    ...:\n We achieve our result by using _\bD_\ba_\bt_\ba_\bF_\br_\ba_\bm_\be_\b._\ba_\bp_\bp_\bl_\by_\b(_\b) (row-wise):\n In [5]: %timeit df.apply(lambda x: integrate_f(x[\"a\"], x[\"b\"], x[\"N\"]), axis=1)\n-269 ms +- 43.8 ms per loop (mean +- std. dev. of 7 runs, 1 loop each)\n+594 ms +- 97 ms per loop (mean +- std. dev. of 7 runs, 1 loop each)\n Let\u2019s take a look and see where the time is spent during this operation using\n the _\bp_\br_\bu_\bn_\b _\bi_\bp_\by_\bt_\bh_\bo_\bn_\b _\bm_\ba_\bg_\bi_\bc_\b _\bf_\bu_\bn_\bc_\bt_\bi_\bo_\bn:\n # most time consuming 4 calls\n In [6]: %prun -l 4 df.apply(lambda x: integrate_f(x[\"a\"], x[\"b\"], x[\"N\"]),\n axis=1)  # noqa E999\n-         605951 function calls (605933 primitive calls) in 0.684 seconds\n+         605951 function calls (605933 primitive calls) in 1.519 seconds\n \n    Ordered by: internal time\n    List reduced from 159 to 4 due to restriction <4>\n \n    ncalls  tottime  percall  cumtime  percall filename:lineno(function)\n-     1000    0.422    0.000    0.595    0.001 :1\n+     1000    0.882    0.001    1.254    0.001 :1\n (integrate_f)\n-   552423    0.173    0.000    0.173    0.000 :1\n+   552423    0.372    0.000    0.372    0.000 :1\n (f)\n-    16098    0.013    0.000    0.018    0.000 {built-in method\n+     1001    0.037    0.000    0.080    0.000 apply.py:1247(series_generator)\n+    16098    0.035    0.000    0.039    0.000 {built-in method\n builtins.isinstance}\n-     1001    0.012    0.000    0.020    0.000 apply.py:1247(series_generator)\n By far the majority of time is spend inside either integrate_f or f, hence\n we\u2019ll concentrate our efforts cythonizing these two functions.\n *\b**\b**\b**\b* P\bPl\bla\bai\bin\bn C\bCy\byt\bth\bho\bon\bn_\b#\b# *\b**\b**\b**\b*\n First we\u2019re going to need to import the Cython magic function to IPython:\n In [7]: %load_ext Cython\n Now, let\u2019s simply copy our functions over to Cython:\n In [8]: %%cython\n@@ -143,15 +143,15 @@\n    ...:     dx = (b - a) / N\n    ...:     for i in range(N):\n    ...:         s += f_plain(a + i * dx)\n    ...:     return s * dx\n    ...:\n In [9]: %timeit df.apply(lambda x: integrate_f_plain(x[\"a\"], x[\"b\"], x[\"N\"]),\n axis=1)\n-312 ms +- 58.7 ms per loop (mean +- std. dev. of 7 runs, 1 loop each)\n+528 ms +- 118 ms per loop (mean +- std. dev. of 7 runs, 1 loop each)\n This has improved the performance compared to the pure Python approach by one-\n third.\n *\b**\b**\b**\b* D\bDe\bec\bcl\bla\bar\bri\bin\bng\bg C\bC t\bty\byp\bpe\bes\bs_\b#\b# *\b**\b**\b**\b*\n We can annotate the function variables and return types as well as use cdef and\n cpdef to improve performance:\n In [10]: %%cython\n    ....: cdef double f_typed(double x) except? -2:\n@@ -163,35 +163,34 @@\n    ....:     dx = (b - a) / N\n    ....:     for i in range(N):\n    ....:         s += f_typed(a + i * dx)\n    ....:     return s * dx\n    ....:\n In [11]: %timeit df.apply(lambda x: integrate_f_typed(x[\"a\"], x[\"b\"], x[\"N\"]),\n axis=1)\n-36.8 ms +- 4.86 ms per loop (mean +- std. dev. of 7 runs, 10 loops each)\n+76.2 ms +- 19.2 ms per loop (mean +- std. dev. of 7 runs, 10 loops each)\n Annotating the functions with C types yields an over ten times performance\n improvement compared to the original Python implementation.\n *\b**\b**\b**\b* U\bUs\bsi\bin\bng\bg n\bnd\bda\bar\brr\bra\bay\by_\b#\b# *\b**\b**\b**\b*\n When re-profiling, time is spent creating a _\bS_\be_\br_\bi_\be_\bs from each row, and calling\n __getitem__ from both the index and the series (three times for each row).\n These Python function calls are expensive and can be improved by passing an\n np.ndarray.\n In [12]: %prun -l 4 df.apply(lambda x: integrate_f_typed(x[\"a\"], x[\"b\"], x\n [\"N\"]), axis=1)\n-         52528 function calls (52510 primitive calls) in 0.044 seconds\n+         52528 function calls (52510 primitive calls) in 0.084 seconds\n \n    Ordered by: internal time\n    List reduced from 157 to 4 due to restriction <4>\n \n    ncalls  tottime  percall  cumtime  percall filename:lineno(function)\n-     3000    0.007    0.000    0.028    0.000 series.py:1095(__getitem__)\n-     3000    0.005    0.000    0.012    0.000 series.py:1220(_get_value)\n-    16098    0.005    0.000    0.006    0.000 {built-in method\n-builtins.isinstance}\n-     3000    0.004    0.000    0.004    0.000 base.py:3777(get_loc)\n+     3000    0.022    0.000    0.034    0.000 series.py:1220(_get_value)\n+     3000    0.011    0.000    0.055    0.000 series.py:1095(__getitem__)\n+     3000    0.007    0.000    0.008    0.000 base.py:3777(get_loc)\n+     1001    0.006    0.000    0.015    0.000 apply.py:1247(series_generator)\n In [13]: %%cython\n    ....: cimport numpy as np\n    ....: import numpy as np\n    ....: cdef double f_typed(double x) except? -2:\n    ....:     return x * (x - 1)\n    ....: cpdef double integrate_f_typed(double a, double b, int N):\n    ....:     cdef int i\n@@ -232,32 +231,32 @@\n This implementation creates an array of zeros and inserts the result of\n integrate_f_typed applied over each row. Looping over an ndarray is faster in\n Cython than looping over a _\bS_\be_\br_\bi_\be_\bs object.\n Since apply_integrate_f is typed to accept an np.ndarray, _\bS_\be_\br_\bi_\be_\bs_\b._\bt_\bo_\b__\bn_\bu_\bm_\bp_\by_\b(_\b)\n calls are needed to utilize this function.\n In [14]: %timeit apply_integrate_f(df[\"a\"].to_numpy(), df[\"b\"].to_numpy(), df\n [\"N\"].to_numpy())\n-3.05 ms +- 499 us per loop (mean +- std. dev. of 7 runs, 100 loops each)\n+4.92 ms +- 875 us per loop (mean +- std. dev. of 7 runs, 100 loops each)\n Performance has improved from the prior implementation by almost ten times.\n *\b**\b**\b**\b* D\bDi\bis\bsa\bab\bbl\bli\bin\bng\bg c\bco\bom\bmp\bpi\bil\ble\ber\br d\bdi\bir\bre\bec\bct\bti\biv\bve\bes\bs_\b#\b# *\b**\b**\b**\b*\n The majority of the time is now spent in apply_integrate_f. Disabling Cython\u2019s\n boundscheck and wraparound checks can yield more performance.\n In [15]: %prun -l 4 apply_integrate_f(df[\"a\"].to_numpy(), df[\"b\"].to_numpy(),\n df[\"N\"].to_numpy())\n-         78 function calls in 0.007 seconds\n+         78 function calls in 0.003 seconds\n \n    Ordered by: internal time\n    List reduced from 21 to 4 due to restriction <4>\n \n    ncalls  tottime  percall  cumtime  percall filename:lineno(function)\n-        3    0.004    0.001    0.004    0.001 base.py:5323(__contains__)\n-        1    0.002    0.002    0.006    0.006 :1()\n+        1    0.002    0.002    0.003    0.003 :1()\n+        1    0.000    0.000    0.003    0.003 {built-in method builtins.exec}\n         1    0.000    0.000    0.000    0.000 {method 'disable' of\n '_lsprof.Profiler' objects}\n-        1    0.000    0.000    0.006    0.006 {built-in method builtins.exec}\n+        3    0.000    0.000    0.000    0.000 frame.py:4062(__getitem__)\n In [16]: %%cython\n    ....: cimport cython\n    ....: cimport numpy as np\n    ....: import numpy as np\n    ....: cdef np.float64_t f_typed(np.float64_t x) except? -2:\n    ....:     return x * (x - 1)\n    ....: cpdef np.float64_t integrate_f_typed(np.float64_t a, np.float64_t b,\n@@ -295,15 +294,15 @@\n /usr/lib/python3/dist-packages/numpy/core/include/numpy/\n npy_1_7_deprecated_api.h:17:2: warning: #warning \"Using deprecated NumPy API,\n disable it with \" \"#define NPY_NO_DEPRECATED_API NPY_1_7_API_VERSION\" [-Wcpp]\n    17 | #warning \"Using deprecated NumPy API, disable it with \" \\\n       |  ^~~~~~~\n In [17]: %timeit apply_integrate_f_wrap(df[\"a\"].to_numpy(), df[\"b\"].to_numpy(),\n df[\"N\"].to_numpy())\n-2.02 ms +- 476 us per loop (mean +- std. dev. of 7 runs, 100 loops each)\n+3.76 ms +- 592 us per loop (mean +- std. dev. of 7 runs, 100 loops each)\n However, a loop indexer i accessing an invalid location in an array would cause\n a segfault because memory access isn\u2019t checked. For more about boundscheck and\n wraparound, see the Cython docs on _\bc_\bo_\bm_\bp_\bi_\bl_\be_\br_\b _\bd_\bi_\br_\be_\bc_\bt_\bi_\bv_\be_\bs.\n *\b**\b**\b**\b**\b* N\bNu\bum\bmb\bba\ba (\b(J\bJI\bIT\bT c\bco\bom\bmp\bpi\bil\bla\bat\bti\bio\bon\bn)\b)_\b#\b# *\b**\b**\b**\b**\b*\n An alternative to statically compiling Cython code is to use a dynamic just-in-\n time (JIT) compiler with _\bN_\bu_\bm_\bb_\ba.\n Numba allows you to write a pure Python function which can be JIT compiled to\n@@ -606,17 +605,19 @@\n The 'numexpr' engine is the more performant engine that can yield performance\n improvements compared to standard Python syntax for large _\bD_\ba_\bt_\ba_\bF_\br_\ba_\bm_\be. This\n engine requires the optional dependency numexpr to be installed.\n The 'python' engine is generally n\bno\bot\bt useful except for testing other evaluation\n engines against it. You will achieve n\bno\bo performance benefits using _\be_\bv_\ba_\bl_\b(_\b) with\n engine='python' and may incur a performance hit.\n In [40]: %timeit df1 + df2 + df3 + df4\n-31.5 ms +- 2.87 ms per loop (mean +- std. dev. of 7 runs, 10 loops each)\n+2.86 s +- 1.01 s per loop (mean +- std. dev. of 7 runs, 1 loop each)\n In [41]: %timeit pd.eval(\"df1 + df2 + df3 + df4\", engine=\"python\")\n-39.1 ms +- 5.82 ms per loop (mean +- std. dev. of 7 runs, 10 loops each)\n+The slowest run took 5.84 times longer than the fastest. This could mean that\n+an intermediate result is being cached.\n+265 ms +- 230 ms per loop (mean +- std. dev. of 7 runs, 1 loop each)\n *\b**\b**\b**\b* T\bTh\bhe\be _\bD\bD_\ba\ba_\bt\bt_\ba\ba_\bF\bF_\br\br_\ba\ba_\bm\bm_\be\be_\b.\b._\be\be_\bv\bv_\ba\ba_\bl\bl_\b(\b(_\b)\b) m\bme\bet\bth\bho\bod\bd_\b#\b# *\b**\b**\b**\b*\n In addition to the top level _\bp_\ba_\bn_\bd_\ba_\bs_\b._\be_\bv_\ba_\bl_\b(_\b) function you can also evaluate an\n expression in the \u201ccontext\u201d of a _\bD_\ba_\bt_\ba_\bF_\br_\ba_\bm_\be.\n In [42]: df = pd.DataFrame(np.random.randn(5, 2), columns=[\"a\", \"b\"])\n \n In [43]: df.eval(\"a + b\")\n Out[43]:\n@@ -713,29 +714,29 @@\n _\bp_\ba_\bn_\bd_\ba_\bs_\b._\be_\bv_\ba_\bl_\b(_\b) works well with expressions containing large arrays.\n In [58]: nrows, ncols = 20000, 100\n \n In [59]: df1, df2, df3, df4 = [pd.DataFrame(np.random.randn(nrows, ncols)) for\n _ in range(4)]\n _\bD_\ba_\bt_\ba_\bF_\br_\ba_\bm_\be arithmetic:\n In [60]: %timeit df1 + df2 + df3 + df4\n-38 ms +- 7.39 ms per loop (mean +- std. dev. of 7 runs, 10 loops each)\n+156 ms +- 13.9 ms per loop (mean +- std. dev. of 7 runs, 10 loops each)\n In [61]: %timeit pd.eval(\"df1 + df2 + df3 + df4\")\n-11.3 ms +- 573 us per loop (mean +- std. dev. of 7 runs, 100 loops each)\n+54.2 ms +- 9.86 ms per loop (mean +- std. dev. of 7 runs, 10 loops each)\n _\bD_\ba_\bt_\ba_\bF_\br_\ba_\bm_\be comparison:\n In [62]: %timeit (df1 > 0) & (df2 > 0) & (df3 > 0) & (df4 > 0)\n-35.1 ms +- 877 us per loop (mean +- std. dev. of 7 runs, 10 loops each)\n+83.2 ms +- 8.31 ms per loop (mean +- std. dev. of 7 runs, 10 loops each)\n In [63]: %timeit pd.eval(\"(df1 > 0) & (df2 > 0) & (df3 > 0) & (df4 > 0)\")\n-19.5 ms +- 2.72 ms per loop (mean +- std. dev. of 7 runs, 10 loops each)\n+41.4 ms +- 3.99 ms per loop (mean +- std. dev. of 7 runs, 10 loops each)\n _\bD_\ba_\bt_\ba_\bF_\br_\ba_\bm_\be arithmetic with unaligned axes.\n In [64]: s = pd.Series(np.random.randn(50))\n \n In [65]: %timeit df1 + df2 + df3 + df4 + s\n-58.7 ms +- 19.8 ms per loop (mean +- std. dev. of 7 runs, 10 loops each)\n+202 ms +- 49.5 ms per loop (mean +- std. dev. of 7 runs, 10 loops each)\n In [66]: %timeit pd.eval(\"df1 + df2 + df3 + df4 + s\")\n-15.3 ms +- 1.39 ms per loop (mean +- std. dev. of 7 runs, 100 loops each)\n+55.9 ms +- 3.5 ms per loop (mean +- std. dev. of 7 runs, 10 loops each)\n Note\n Operations such as\n 1 and 2  # would parse to 1 & 2, but should evaluate to 2\n 3 or 4  # would parse to 3 | 4, but should evaluate to 3\n ~1  # this is okay, but slower when using eval\n should be performed in Python. An exception will be raised if you try to\n perform any boolean/bitwise operations with scalar operands that are not of\n"}]}, {"source1": "./usr/share/doc/python-pandas-doc/html/user_guide/scale.html", "source2": "./usr/share/doc/python-pandas-doc/html/user_guide/scale.html", "unified_diff": "@@ -1095,16 +1095,16 @@\n    ....: files = pathlib.Path("data/timeseries/").glob("ts*.parquet")\n    ....: counts = pd.Series(dtype=int)\n    ....: for path in files:\n    ....:     df = pd.read_parquet(path)\n    ....:     counts = counts.add(df["name"].value_counts(), fill_value=0)\n    ....: counts.astype(int)\n    ....: \n-CPU times: user 656 us, sys: 96 us, total: 752 us\n-Wall time: 776 us\n+CPU times: user 1.94 ms, sys: 0 ns, total: 1.94 ms\n+Wall time: 10 ms\n Out[32]: Series([], dtype: int64)\n 
\n
\n

Some readers, like pandas.read_csv(), offer parameters to control the\n chunksize when reading a single file.

\n

Manually chunking is an OK option for workflows that don\u2019t\n require too sophisticated of operations. Some operations, like pandas.DataFrame.groupby(), are\n", "details": [{"source1": "html2text {}", "source2": "html2text {}", "unified_diff": "@@ -640,16 +640,16 @@\n ....: files = pathlib.Path(\"data/timeseries/\").glob(\"ts*.parquet\")\n ....: counts = pd.Series(dtype=int)\n ....: for path in files:\n ....: df = pd.read_parquet(path)\n ....: counts = counts.add(df[\"name\"].value_counts(), fill_value=0)\n ....: counts.astype(int)\n ....:\n-CPU times: user 656 us, sys: 96 us, total: 752 us\n-Wall time: 776 us\n+CPU times: user 1.94 ms, sys: 0 ns, total: 1.94 ms\n+Wall time: 10 ms\n Out[32]: Series([], dtype: int64)\n Some readers, like _\bp_\ba_\bn_\bd_\ba_\bs_\b._\br_\be_\ba_\bd_\b__\bc_\bs_\bv_\b(_\b), offer parameters to control the chunksize\n when reading a single file.\n Manually chunking is an OK option for workflows that don\u2019t require too\n sophisticated of operations. Some operations, like _\bp_\ba_\bn_\bd_\ba_\bs_\b._\bD_\ba_\bt_\ba_\bF_\br_\ba_\bm_\be_\b._\bg_\br_\bo_\bu_\bp_\bb_\by_\b(_\b),\n are much harder to do chunkwise. In these cases, you may be better switching to\n a different library that implements these out-of-core algorithms for you.\n"}]}, {"source1": "./usr/share/doc/python-pandas-doc/html/user_guide/style.ipynb.gz", "source2": "./usr/share/doc/python-pandas-doc/html/user_guide/style.ipynb.gz", "unified_diff": null, "details": [{"source1": "style.ipynb", "source2": "style.ipynb", "unified_diff": null, "details": [{"source1": "Pretty-printed", "source2": "Pretty-printed", "comments": ["Similarity: 0.9985610875706213%", "Differences: {\"'cells'\": \"{1: {'metadata': {'execution': {'iopub.execute_input': '2024-11-07T11:12:51.668271Z', \"", " \"'iopub.status.busy': '2024-11-07T11:12:51.667531Z', 'iopub.status.idle': \"", " \"'2024-11-07T11:12:55.165381Z', 'shell.execute_reply': \"", " \"'2024-11-07T11:12:55.149268Z'}}}, 3: {'metadata': {'execution': \"", " \"{'iopub.execute_input': '2024-11-07T11:12:55.212188Z', 'iopub.status.busy': \"", " \"'2024-11-07T11:12:55.210941Z', 'iopub.status.idle': '2024-11-07T11:12:5 [\u2026]"], "unified_diff": "@@ -39,18 +39,18 @@\n ]\n },\n {\n \"cell_type\": \"code\",\n \"execution_count\": 1,\n \"metadata\": {\n \"execution\": {\n- \"iopub.execute_input\": \"2025-12-10T13:58:11.547541Z\",\n- \"iopub.status.busy\": \"2025-12-10T13:58:11.546745Z\",\n- \"iopub.status.idle\": \"2025-12-10T13:58:12.509350Z\",\n- \"shell.execute_reply\": \"2025-12-10T13:58:12.508611Z\"\n+ \"iopub.execute_input\": \"2024-11-07T11:12:51.668271Z\",\n+ \"iopub.status.busy\": \"2024-11-07T11:12:51.667531Z\",\n+ \"iopub.status.idle\": \"2024-11-07T11:12:55.165381Z\",\n+ \"shell.execute_reply\": \"2024-11-07T11:12:55.149268Z\"\n },\n \"nbsphinx\": \"hidden\"\n },\n \"outputs\": [],\n \"source\": [\n \"import matplotlib.pyplot\\n\",\n \"# We have this here to trigger matplotlib's font cache stuff.\\n\",\n@@ -77,36 +77,36 @@\n ]\n },\n {\n \"cell_type\": \"code\",\n \"execution_count\": 2,\n \"metadata\": {\n \"execution\": {\n- \"iopub.execute_input\": \"2025-12-10T13:58:12.513584Z\",\n- \"iopub.status.busy\": \"2025-12-10T13:58:12.513042Z\",\n- \"iopub.status.idle\": \"2025-12-10T13:58:13.093527Z\",\n- \"shell.execute_reply\": \"2025-12-10T13:58:13.092616Z\"\n+ \"iopub.execute_input\": \"2024-11-07T11:12:55.212188Z\",\n+ \"iopub.status.busy\": \"2024-11-07T11:12:55.210941Z\",\n+ \"iopub.status.idle\": \"2024-11-07T11:12:58.309361Z\",\n+ \"shell.execute_reply\": \"2024-11-07T11:12:58.289271Z\"\n }\n },\n \"outputs\": [],\n \"source\": [\n \"import pandas as pd\\n\",\n \"import numpy as np\\n\",\n \"import matplotlib as mpl\\n\"\n ]\n },\n {\n \"cell_type\": \"code\",\n \"execution_count\": 3,\n \"metadata\": {\n \"execution\": {\n- \"iopub.execute_input\": \"2025-12-10T13:58:13.100858Z\",\n- \"iopub.status.busy\": \"2025-12-10T13:58:13.097265Z\",\n- \"iopub.status.idle\": \"2025-12-10T13:58:13.201945Z\",\n- \"shell.execute_reply\": \"2025-12-10T13:58:13.201160Z\"\n+ \"iopub.execute_input\": \"2024-11-07T11:12:58.352299Z\",\n+ \"iopub.status.busy\": \"2024-11-07T11:12:58.351579Z\",\n+ \"iopub.status.idle\": \"2024-11-07T11:12:59.145371Z\",\n+ \"shell.execute_reply\": \"2024-11-07T11:12:59.129263Z\"\n },\n \"nbsphinx\": \"hidden\"\n },\n \"outputs\": [],\n \"source\": [\n \"# For reproducibility - this doesn't respect uuid_len or positionally-passed uuid but the places here that use that coincidentally bypass this anyway\\n\",\n \"from pandas.io.formats.style import Styler\\n\",\n@@ -123,18 +123,18 @@\n ]\n },\n {\n \"cell_type\": \"code\",\n \"execution_count\": 4,\n \"metadata\": {\n \"execution\": {\n- \"iopub.execute_input\": \"2025-12-10T13:58:13.206577Z\",\n- \"iopub.status.busy\": \"2025-12-10T13:58:13.205635Z\",\n- \"iopub.status.idle\": \"2025-12-10T13:58:13.220500Z\",\n- \"shell.execute_reply\": \"2025-12-10T13:58:13.219836Z\"\n+ \"iopub.execute_input\": \"2024-11-07T11:12:59.171737Z\",\n+ \"iopub.status.busy\": \"2024-11-07T11:12:59.171021Z\",\n+ \"iopub.status.idle\": \"2024-11-07T11:12:59.293294Z\",\n+ \"shell.execute_reply\": \"2024-11-07T11:12:59.281226Z\"\n }\n },\n \"outputs\": [\n {\n \"data\": {\n \"text/html\": [\n \"