{"diffoscope-json-version": 1, "source1": "/srv/reproducible-results/rbuild-debian/r-b-build.G2ArIGPY/b1/python3.11_3.11.9-1_armhf.changes", "source2": "/srv/reproducible-results/rbuild-debian/r-b-build.G2ArIGPY/b2/python3.11_3.11.9-1_armhf.changes", "unified_diff": null, "details": [{"source1": "Files", "source2": "Files", "unified_diff": "@@ -1,17 +1,17 @@\n \n b686f9f7295fa779443a7d72f337b1c1 359228 python optional idle-python3.11_3.11.9-1_all.deb\n- 8e3f49edf7308ae5cd1ce980be2aab99 3111420 libdevel optional libpython3.11-dev_3.11.9-1_armhf.deb\n- 0162f89bed3f5687c2c8e00ec14e380b 804616 python optional libpython3.11-minimal_3.11.9-1_armhf.deb\n+ 62dd765939ad01989b087b9b0b473882 3108348 libdevel optional libpython3.11-dev_3.11.9-1_armhf.deb\n+ 8def4afd522e5eed3eb3b95a416a9aa8 804672 python optional libpython3.11-minimal_3.11.9-1_armhf.deb\n bb0a9501b359c58d7e1e20f932d509dc 1704648 python optional libpython3.11-stdlib_3.11.9-1_armhf.deb\n 9b3fed3baaa092786695ece06e334f9b 3490660 libdevel optional libpython3.11-testsuite_3.11.9-1_all.deb\n- 15bf253888683c5cdd8cab543662042f 16142880 debug optional libpython3.11t64-dbg_3.11.9-1_armhf.deb\n+ 3d6dc0853557b51829bfb0cb88282936 16135112 debug optional libpython3.11t64-dbg_3.11.9-1_armhf.deb\n aea244d07997a4b410e2dae13f5599ce 1673540 libs optional libpython3.11t64_3.11.9-1_armhf.deb\n d310c0deac32de90702ca2dbb95a25b2 34609772 debug optional python3.11-dbg_3.11.9-1_armhf.deb\n 75a2f04ef82029328c8d13da6e4c8d78 500640 python optional python3.11-dev_3.11.9-1_armhf.deb\n- 7e7cd047cdf4423a610dfa6e0154e54f 12587892 doc optional python3.11-doc_3.11.9-1_all.deb\n+ 2d3b5b2d5c4a2c1726d746c48ccdddc7 12587840 doc optional python3.11-doc_3.11.9-1_all.deb\n 29a6ab28a7cf077e72d72f27cc8d6aae 801408 python optional python3.11-examples_3.11.9-1_all.deb\n f28acb498f18cefdfd426a256946e2d5 1284 python optional python3.11-full_3.11.9-1_armhf.deb\n 1f712a5ad95df226b91d2f411bf0e8f1 1599136 python optional python3.11-minimal_3.11.9-1_armhf.deb\n 915318f6da52462900e91bcf4c1cb1f8 1589412 python optional python3.11-nopie_3.11.9-1_armhf.deb\n 381302c606eca2b59321db063f18e653 5884 python optional python3.11-venv_3.11.9-1_armhf.deb\n 1dd4e3cec13952d4c8d7a55697f3ad0b 601648 python optional python3.11_3.11.9-1_armhf.deb\n"}, {"source1": "libpython3.11-dev_3.11.9-1_armhf.deb", "source2": "libpython3.11-dev_3.11.9-1_armhf.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-04-10 13:16:36.000000 debian-binary\n--rw-r--r-- 0 0 0 5884 2024-04-10 13:16:36.000000 control.tar.xz\n--rw-r--r-- 0 0 0 3105344 2024-04-10 13:16:36.000000 data.tar.xz\n+-rw-r--r-- 0 0 0 5880 2024-04-10 13:16:36.000000 control.tar.xz\n+-rw-r--r-- 0 0 0 3102276 2024-04-10 13:16:36.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": "./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": "@@ -201,15 +201,15 @@\n drwxr-xr-x 0 root (0) root (0) 0 2024-04-10 13:16:36.000000 ./usr/lib/\n drwxr-xr-x 0 root (0) root (0) 0 2024-04-10 13:16:36.000000 ./usr/lib/arm-linux-gnueabihf/\n drwxr-xr-x 0 root (0) root (0) 0 2024-04-10 13:16:36.000000 ./usr/lib/arm-linux-gnueabihf/pkgconfig/\n -rw-r--r-- 0 root (0) root (0) 291 2024-04-10 13:16:36.000000 ./usr/lib/arm-linux-gnueabihf/pkgconfig/python-3.11-embed.pc\n -rw-r--r-- 0 root (0) root (0) 275 2024-04-10 13:16:36.000000 ./usr/lib/arm-linux-gnueabihf/pkgconfig/python-3.11.pc\n drwxr-xr-x 0 root (0) root (0) 0 2024-04-10 13:16:36.000000 ./usr/lib/python3.11/\n drwxr-xr-x 0 root (0) root (0) 0 2024-04-10 13:16:36.000000 ./usr/lib/python3.11/config-3.11-arm-linux-gnueabihf/\n--rw-r--r-- 0 root (0) root (0) 153544 2024-04-10 13:16:36.000000 ./usr/lib/python3.11/config-3.11-arm-linux-gnueabihf/Makefile\n+-rw-r--r-- 0 root (0) root (0) 153534 2024-04-10 13:16:36.000000 ./usr/lib/python3.11/config-3.11-arm-linux-gnueabihf/Makefile\n -rw-r--r-- 0 root (0) root (0) 10854 2024-04-10 13:16:36.000000 ./usr/lib/python3.11/config-3.11-arm-linux-gnueabihf/Setup\n -rw-r--r-- 0 root (0) root (0) 878 2024-04-10 13:16:36.000000 ./usr/lib/python3.11/config-3.11-arm-linux-gnueabihf/Setup.bootstrap\n -rw-r--r-- 0 root (0) root (0) 767 2024-04-10 13:16:36.000000 ./usr/lib/python3.11/config-3.11-arm-linux-gnueabihf/Setup.local\n -rw-r--r-- 0 root (0) root (0) 5379 2024-04-10 13:16:36.000000 ./usr/lib/python3.11/config-3.11-arm-linux-gnueabihf/Setup.stdlib\n -rw-r--r-- 0 root (0) root (0) 5558 2024-04-10 13:16:36.000000 ./usr/lib/python3.11/config-3.11-arm-linux-gnueabihf/config.c\n -rw-r--r-- 0 root (0) root (0) 1752 2024-04-10 13:16:36.000000 ./usr/lib/python3.11/config-3.11-arm-linux-gnueabihf/config.c.in\n -rwxr-xr-x 0 root (0) root (0) 15358 2024-04-10 13:16:36.000000 ./usr/lib/python3.11/config-3.11-arm-linux-gnueabihf/install-sh\n"}, {"source1": "./usr/include/arm-linux-gnueabihf/python3.11/pyconfig.h", "source2": "./usr/include/arm-linux-gnueabihf/python3.11/pyconfig.h", "unified_diff": "@@ -1577,15 +1577,15 @@\n 2: leave OpenSSL defaults untouched, 0: custom string */\n #define PY_SSL_DEFAULT_CIPHERS 2\n \n /* Cipher suite string for PY_SSL_DEFAULT_CIPHERS=0 */\n /* #undef PY_SSL_DEFAULT_CIPHER_STRING */\n \n /* PEP 11 Support tier (1, 2, 3 or 0 for unsupported) */\n-#define PY_SUPPORT_TIER 3\n+#define PY_SUPPORT_TIER 2\n \n /* Define if you want to build an interpreter with many run-time checks. */\n /* #undef Py_DEBUG */\n \n /* Defined if Python is built as a shared library. */\n /* #undef Py_ENABLE_SHARED */\n \n"}, {"source1": "./usr/lib/python3.11/config-3.11-arm-linux-gnueabihf/Makefile", "source2": "./usr/lib/python3.11/config-3.11-arm-linux-gnueabihf/Makefile", "unified_diff": "@@ -416,16 +416,16 @@\n PYTHON_FOR_FREEZE=./_bootstrap_python\n FREEZE_MODULE_BOOTSTRAP=./Programs/_freeze_module\n FREEZE_MODULE_BOOTSTRAP_DEPS=Programs/_freeze_module\n FREEZE_MODULE=$(PYTHON_FOR_FREEZE) $(srcdir)/Programs/_freeze_module.py\n FREEZE_MODULE_DEPS=_bootstrap_python $(srcdir)/Programs/_freeze_module.py\n \n _PYTHON_HOST_PLATFORM=\n-BUILD_GNU_TYPE=\tarmv7l-unknown-linux-gnueabihf\n-HOST_GNU_TYPE=\tarmv7l-unknown-linux-gnueabihf\n+BUILD_GNU_TYPE=\taarch64-unknown-linux-gnu\n+HOST_GNU_TYPE=\taarch64-unknown-linux-gnu\n \n # The task to run while instrumented when building the profile-opt target.\n # To speed up profile generation, we don't run the full unit test suite\n # by default. The default is \"-m test --pgo\". To run more tests, use\n # PROFILE_TASK=\"-m test --pgo-extended\"\n PROFILE_TASK=\t-m test --pgo --timeout=$(TESTTIMEOUT)\n \n"}]}]}]}, {"source1": "libpython3.11-minimal_3.11.9-1_armhf.deb", "source2": "libpython3.11-minimal_3.11.9-1_armhf.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-04-10 13:16:36.000000 debian-binary\n--rw-r--r-- 0 0 0 8260 2024-04-10 13:16:36.000000 control.tar.xz\n--rw-r--r-- 0 0 0 796164 2024-04-10 13:16:36.000000 data.tar.xz\n+-rw-r--r-- 0 0 0 8268 2024-04-10 13:16:36.000000 control.tar.xz\n+-rw-r--r-- 0 0 0 796212 2024-04-10 13:16:36.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": "./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": "@@ -7,15 +7,15 @@\n drwxr-xr-x 0 root (0) root (0) 0 2024-04-10 13:16:36.000000 ./usr/lib/python3.11/\n -rw-r--r-- 0 root (0) root (0) 5218 2024-04-10 13:16:36.000000 ./usr/lib/python3.11/__future__.py\n -rw-r--r-- 0 root (0) root (0) 30193 2024-04-10 13:16:36.000000 ./usr/lib/python3.11/_collections_abc.py\n -rw-r--r-- 0 root (0) root (0) 8761 2024-04-10 13:16:36.000000 ./usr/lib/python3.11/_compat_pickle.py\n -rw-r--r-- 0 root (0) root (0) 6189 2024-04-10 13:16:36.000000 ./usr/lib/python3.11/_py_abc.py\n -rw-r--r-- 0 root (0) root (0) 3128 2024-04-10 13:16:36.000000 ./usr/lib/python3.11/_sitebuiltins.py\n -rw-r--r-- 0 root (0) root (0) 25175 2024-04-10 13:16:36.000000 ./usr/lib/python3.11/_strptime.py\n--rw-r--r-- 0 root (0) root (0) 44060 2024-04-10 13:16:36.000000 ./usr/lib/python3.11/_sysconfigdata__arm-linux-gnueabihf.py\n+-rw-r--r-- 0 root (0) root (0) 44050 2024-04-10 13:16:36.000000 ./usr/lib/python3.11/_sysconfigdata__arm-linux-gnueabihf.py\n -rw-r--r-- 0 root (0) root (0) 7220 2024-04-10 13:16:36.000000 ./usr/lib/python3.11/_threading_local.py\n -rw-r--r-- 0 root (0) root (0) 5893 2024-04-10 13:16:36.000000 ./usr/lib/python3.11/_weakrefset.py\n -rw-r--r-- 0 root (0) root (0) 6538 2024-04-10 13:16:36.000000 ./usr/lib/python3.11/abc.py\n -rw-r--r-- 0 root (0) root (0) 100579 2024-04-10 13:16:36.000000 ./usr/lib/python3.11/argparse.py\n -rw-r--r-- 0 root (0) root (0) 61444 2024-04-10 13:16:36.000000 ./usr/lib/python3.11/ast.py\n -rwxr-xr-x 0 root (0) root (0) 21027 2024-04-10 13:16:36.000000 ./usr/lib/python3.11/base64.py\n -rw-r--r-- 0 root (0) root (0) 3135 2024-04-10 13:16:36.000000 ./usr/lib/python3.11/bisect.py\n"}, {"source1": "./usr/lib/python3.11/_sysconfigdata__arm-linux-gnueabihf.py", "source2": "./usr/lib/python3.11/_sysconfigdata__arm-linux-gnueabihf.py", "unified_diff": "@@ -17,15 +17,15 @@\n 'BLDLIBRARY': '-lpython3.11',\n 'BLDSHARED': 'arm-linux-gnueabihf-gcc -shared -Wl,-O1 '\n '-Wl,-Bsymbolic-functions '\n ' ',\n 'BOOTSTRAP_HEADERS': '\\\\',\n 'BUILDEXE': '',\n 'BUILDPYTHON': 'python',\n- 'BUILD_GNU_TYPE': 'armv7l-unknown-linux-gnueabihf',\n+ 'BUILD_GNU_TYPE': 'aarch64-unknown-linux-gnu',\n 'BYTESTR_DEPS': '\\\\',\n 'CC': 'arm-linux-gnueabihf-gcc',\n 'CCSHARED': '-fPIC',\n 'CFLAGS': '-Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g '\n '-Werror=implicit-function-declaration '\n ' '\n ' -fstack-protector-strong '\n@@ -608,15 +608,15 @@\n 'HAVE_WMEMCMP': 1,\n 'HAVE_WORKING_TZSET': 1,\n 'HAVE_WRITEV': 1,\n 'HAVE_ZLIB_COPY': 1,\n 'HAVE_ZLIB_H': 1,\n 'HAVE__GETPTY': 0,\n 'HOSTRUNNER': '',\n- 'HOST_GNU_TYPE': 'armv7l-unknown-linux-gnueabihf',\n+ 'HOST_GNU_TYPE': 'aarch64-unknown-linux-gnu',\n 'INCLDIRSTOMAKE': '/usr/include /usr/include /usr/include/python3.11 '\n '/usr/include/python3.11',\n 'INCLUDEDIR': '/usr/include',\n 'INCLUDEPY': '/usr/include/python3.11',\n 'INSTALL': '/usr/bin/install -c',\n 'INSTALL_DATA': '/usr/bin/install -c -m 644',\n 'INSTALL_PROGRAM': '/usr/bin/install -c',\n@@ -1068,15 +1068,15 @@\n '-Wno-unused-parameter -Wno-missing-field-initializers '\n '-Wstrict-prototypes '\n '-Werror=implicit-function-declaration '\n '-fvisibility=hidden -I../Include/internal -IObjects '\n '-IInclude -IPython -I. -I../Include '\n '-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 '\n '-D_TIME_BITS=64 -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC',\n- 'PY_SUPPORT_TIER': 3,\n+ 'PY_SUPPORT_TIER': 2,\n 'Py_DEBUG': 0,\n 'Py_ENABLE_SHARED': 1,\n 'Py_HASH_ALGORITHM': 0,\n 'Py_STATS': 0,\n 'Py_SUNOS_VERSION': 0,\n 'Py_TRACE_REFS': 0,\n 'QUICKTESTOPTS': '-x test_subprocess test_io test_lib2to3 \\\\',\n"}]}]}]}, {"source1": "libpython3.11t64-dbg_3.11.9-1_armhf.deb", "source2": "libpython3.11t64-dbg_3.11.9-1_armhf.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-04-10 13:16:36.000000 debian-binary\n--rw-r--r-- 0 0 0 11164 2024-04-10 13:16:36.000000 control.tar.xz\n--rw-r--r-- 0 0 0 16131524 2024-04-10 13:16:36.000000 data.tar.xz\n+-rw-r--r-- 0 0 0 11156 2024-04-10 13:16:36.000000 control.tar.xz\n+-rw-r--r-- 0 0 0 16123764 2024-04-10 13:16:36.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": "./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": "@@ -11,17 +11,17 @@\n drwxr-xr-x 0 root (0) root (0) 0 2024-04-10 13:16:36.000000 ./usr/lib/\n drwxr-xr-x 0 root (0) root (0) 0 2024-04-10 13:16:36.000000 ./usr/lib/arm-linux-gnueabihf/\n -rw-r--r-- 0 root (0) root (0) 22268276 2024-04-10 13:16:36.000000 ./usr/lib/arm-linux-gnueabihf/libpython3.11d.so.1.0\n drwxr-xr-x 0 root (0) root (0) 0 2024-04-10 13:16:36.000000 ./usr/lib/arm-linux-gnueabihf/pkgconfig/\n -rw-r--r-- 0 root (0) root (0) 293 2024-04-10 13:16:36.000000 ./usr/lib/arm-linux-gnueabihf/pkgconfig/python-3.11d-embed.pc\n -rw-r--r-- 0 root (0) root (0) 265 2024-04-10 13:16:36.000000 ./usr/lib/arm-linux-gnueabihf/pkgconfig/python-3.11d.pc\n drwxr-xr-x 0 root (0) root (0) 0 2024-04-10 13:16:36.000000 ./usr/lib/python3.11/\n--rw-r--r-- 0 root (0) root (0) 45001 2024-04-10 13:16:36.000000 ./usr/lib/python3.11/_sysconfigdata_d_arm-linux-gnueabihf.py\n+-rw-r--r-- 0 root (0) root (0) 44991 2024-04-10 13:16:36.000000 ./usr/lib/python3.11/_sysconfigdata_d_arm-linux-gnueabihf.py\n drwxr-xr-x 0 root (0) root (0) 0 2024-04-10 13:16:36.000000 ./usr/lib/python3.11/config-3.11d-arm-linux-gnueabihf/\n--rw-r--r-- 0 root (0) root (0) 153541 2024-04-10 13:16:36.000000 ./usr/lib/python3.11/config-3.11d-arm-linux-gnueabihf/Makefile\n+-rw-r--r-- 0 root (0) root (0) 153531 2024-04-10 13:16:36.000000 ./usr/lib/python3.11/config-3.11d-arm-linux-gnueabihf/Makefile\n -rw-r--r-- 0 root (0) root (0) 10854 2024-04-10 13:16:36.000000 ./usr/lib/python3.11/config-3.11d-arm-linux-gnueabihf/Setup\n -rw-r--r-- 0 root (0) root (0) 878 2024-04-10 13:16:36.000000 ./usr/lib/python3.11/config-3.11d-arm-linux-gnueabihf/Setup.bootstrap\n -rw-r--r-- 0 root (0) root (0) 767 2024-04-10 13:16:36.000000 ./usr/lib/python3.11/config-3.11d-arm-linux-gnueabihf/Setup.local\n -rw-r--r-- 0 root (0) root (0) 5379 2024-04-10 13:16:36.000000 ./usr/lib/python3.11/config-3.11d-arm-linux-gnueabihf/Setup.stdlib\n -rw-r--r-- 0 root (0) root (0) 5558 2024-04-10 13:16:36.000000 ./usr/lib/python3.11/config-3.11d-arm-linux-gnueabihf/config.c\n -rw-r--r-- 0 root (0) root (0) 1752 2024-04-10 13:16:36.000000 ./usr/lib/python3.11/config-3.11d-arm-linux-gnueabihf/config.c.in\n -rwxr-xr-x 0 root (0) root (0) 15358 2024-04-10 13:16:36.000000 ./usr/lib/python3.11/config-3.11d-arm-linux-gnueabihf/install-sh\n"}, {"source1": "./usr/include/arm-linux-gnueabihf/python3.11d/pyconfig.h", "source2": "./usr/include/arm-linux-gnueabihf/python3.11d/pyconfig.h", "unified_diff": "@@ -1577,15 +1577,15 @@\n 2: leave OpenSSL defaults untouched, 0: custom string */\n #define PY_SSL_DEFAULT_CIPHERS 2\n \n /* Cipher suite string for PY_SSL_DEFAULT_CIPHERS=0 */\n /* #undef PY_SSL_DEFAULT_CIPHER_STRING */\n \n /* PEP 11 Support tier (1, 2, 3 or 0 for unsupported) */\n-#define PY_SUPPORT_TIER 3\n+#define PY_SUPPORT_TIER 2\n \n /* Define if you want to build an interpreter with many run-time checks. */\n #define Py_DEBUG 1\n \n /* Defined if Python is built as a shared library. */\n /* #undef Py_ENABLE_SHARED */\n \n"}, {"source1": "./usr/lib/python3.11/_sysconfigdata_d_arm-linux-gnueabihf.py", "source2": "./usr/lib/python3.11/_sysconfigdata_d_arm-linux-gnueabihf.py", "unified_diff": "@@ -17,15 +17,15 @@\n 'BLDLIBRARY': '-lpython3.11d',\n 'BLDSHARED': 'arm-linux-gnueabihf-gcc -shared -Wl,-O1 '\n '-Wl,-Bsymbolic-functions '\n ' ',\n 'BOOTSTRAP_HEADERS': '\\\\',\n 'BUILDEXE': '',\n 'BUILDPYTHON': 'python',\n- 'BUILD_GNU_TYPE': 'armv7l-unknown-linux-gnueabihf',\n+ 'BUILD_GNU_TYPE': 'aarch64-unknown-linux-gnu',\n 'BYTESTR_DEPS': '\\\\',\n 'CC': 'arm-linux-gnueabihf-gcc',\n 'CCSHARED': '-fPIC',\n 'CFLAGS': '-DDYNAMIC_ANNOTATIONS_ENABLED=1 -g -Og -Wall -g -Og '\n '-Werror=implicit-function-declaration '\n ' '\n ' -fstack-protector-strong '\n@@ -610,15 +610,15 @@\n 'HAVE_WMEMCMP': 1,\n 'HAVE_WORKING_TZSET': 1,\n 'HAVE_WRITEV': 1,\n 'HAVE_ZLIB_COPY': 1,\n 'HAVE_ZLIB_H': 1,\n 'HAVE__GETPTY': 0,\n 'HOSTRUNNER': '',\n- 'HOST_GNU_TYPE': 'armv7l-unknown-linux-gnueabihf',\n+ 'HOST_GNU_TYPE': 'aarch64-unknown-linux-gnu',\n 'INCLDIRSTOMAKE': '/usr/include /usr/include /usr/include/python3.11d '\n '/usr/include/python3.11d',\n 'INCLUDEDIR': '/usr/include',\n 'INCLUDEPY': '/usr/include/python3.11d',\n 'INSTALL': '/usr/bin/install -c',\n 'INSTALL_DATA': '/usr/bin/install -c -m 644',\n 'INSTALL_PROGRAM': '/usr/bin/install -c',\n@@ -1089,15 +1089,15 @@\n '-fstack-protector-strong -fstack-clash-protection -Wformat '\n '-Werror=format-security -std=c11 '\n '-Werror=implicit-function-declaration '\n '-fvisibility=hidden -I../Include/internal -IObjects '\n '-IInclude -IPython -I. -I../Include '\n '-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 '\n '-D_TIME_BITS=64 -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC',\n- 'PY_SUPPORT_TIER': 3,\n+ 'PY_SUPPORT_TIER': 2,\n 'Py_DEBUG': 1,\n 'Py_ENABLE_SHARED': 1,\n 'Py_HASH_ALGORITHM': 0,\n 'Py_STATS': 0,\n 'Py_SUNOS_VERSION': 0,\n 'Py_TRACE_REFS': 0,\n 'QUICKTESTOPTS': '-x test_subprocess test_io test_lib2to3 \\\\',\n"}, {"source1": "./usr/lib/python3.11/config-3.11d-arm-linux-gnueabihf/Makefile", "source2": "./usr/lib/python3.11/config-3.11d-arm-linux-gnueabihf/Makefile", "unified_diff": "@@ -416,16 +416,16 @@\n PYTHON_FOR_FREEZE=./_bootstrap_python\n FREEZE_MODULE_BOOTSTRAP=./Programs/_freeze_module\n FREEZE_MODULE_BOOTSTRAP_DEPS=Programs/_freeze_module\n FREEZE_MODULE=$(PYTHON_FOR_FREEZE) $(srcdir)/Programs/_freeze_module.py\n FREEZE_MODULE_DEPS=_bootstrap_python $(srcdir)/Programs/_freeze_module.py\n \n _PYTHON_HOST_PLATFORM=\n-BUILD_GNU_TYPE=\tarmv7l-unknown-linux-gnueabihf\n-HOST_GNU_TYPE=\tarmv7l-unknown-linux-gnueabihf\n+BUILD_GNU_TYPE=\taarch64-unknown-linux-gnu\n+HOST_GNU_TYPE=\taarch64-unknown-linux-gnu\n \n # The task to run while instrumented when building the profile-opt target.\n # To speed up profile generation, we don't run the full unit test suite\n # by default. The default is \"-m test --pgo\". To run more tests, use\n # PROFILE_TASK=\"-m test --pgo-extended\"\n PROFILE_TASK=\t-m test --pgo --timeout=$(TESTTIMEOUT)\n \n"}]}]}]}, {"source1": "python3.11-doc_3.11.9-1_all.deb", "source2": "python3.11-doc_3.11.9-1_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-04-10 13:16:36.000000 debian-binary\n -rw-r--r-- 0 0 0 25584 2024-04-10 13:16:36.000000 control.tar.xz\n--rw-r--r-- 0 0 0 12562116 2024-04-10 13:16:36.000000 data.tar.xz\n+-rw-r--r-- 0 0 0 12562064 2024-04-10 13:16:36.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": "./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": "./usr/share/doc/python3.11/html/searchindex.js", "source2": "./usr/share/doc/python3.11/html/searchindex.js", "unified_diff": null, "details": [{"source1": "js-beautify {}", "source2": "js-beautify {}", "unified_diff": "@@ -58284,122 +58284,312 @@\n \"sphinx.domains.math\": 2,\n \"sphinx.domains.python\": 4,\n \"sphinx.domains.rst\": 2,\n \"sphinx.domains.std\": 2,\n \"sphinx\": 60\n },\n \"alltitles\": {\n- \"Building C and C++ Extensions on Windows\": [\n- [89, \"building-c-and-c-extensions-on-windows\"]\n+ \"Extending and Embedding the Python Interpreter\": [\n+ [86, \"extending-and-embedding-the-python-interpreter\"]\n ],\n- \"A Cookbook Approach\": [\n- [89, \"a-cookbook-approach\"]\n+ \"Recommended third party tools\": [\n+ [86, \"recommended-third-party-tools\"]\n ],\n- \"Differences Between Unix and Windows\": [\n- [89, \"differences-between-unix-and-windows\"]\n+ \"Creating extensions without third party tools\": [\n+ [86, \"creating-extensions-without-third-party-tools\"]\n ],\n- \"Using DLLs in Practice\": [\n- [89, \"using-dlls-in-practice\"]\n+ \"Embedding the CPython runtime in a larger application\": [\n+ [86, \"embedding-the-cpython-runtime-in-a-larger-application\"]\n+ ],\n+ \"The Python Package Index (PyPI)\": [\n+ [79, \"the-python-package-index-pypi\"]\n ],\n \"Argument Clinic How-To\": [\n [102, \"argument-clinic-how-to\"]\n ],\n- \"Creating a Source Distribution\": [\n- [81, \"creating-a-source-distribution\"]\n- ],\n- \"Specifying the files to distribute\": [\n- [81, \"specifying-the-files-to-distribute\"]\n- ],\n- \"Manifest-related options\": [\n- [81, \"manifest-related-options\"]\n- ],\n- \"Extending/Embedding FAQ\": [\n- [91, \"extending-embedding-faq\"]\n+ \"Programming FAQ\": [\n+ [97, \"programming-faq\"]\n ],\n \"Contents\": [\n- [91, \"contents\"],\n- [92, \"contents\"],\n- [96, \"contents\"],\n [97, \"contents\"],\n- [90, \"contents\"],\n- [98, \"contents\"],\n [93, \"contents\"],\n+ [96, \"contents\"],\n+ [92, \"contents\"],\n+ [91, \"contents\"],\n+ [98, \"contents\"],\n+ [90, \"contents\"],\n [105, \"contents\"]\n ],\n- \"Can I create my own functions in C?\": [\n- [91, \"can-i-create-my-own-functions-in-c\"]\n+ \"General Questions\": [\n+ [97, \"general-questions\"]\n ],\n- \"Can I create my own functions in C++?\": [\n- [91, \"id1\"]\n+ \"Is there a source code level debugger with breakpoints, single-stepping, etc.?\": [\n+ [97, \"is-there-a-source-code-level-debugger-with-breakpoints-single-stepping-etc\"]\n ],\n- \"Writing C is hard; are there any alternatives?\": [\n- [91, \"writing-c-is-hard-are-there-any-alternatives\"]\n+ \"Are there tools to help find bugs or perform static analysis?\": [\n+ [97, \"are-there-tools-to-help-find-bugs-or-perform-static-analysis\"]\n ],\n- \"How can I execute arbitrary Python statements from C?\": [\n- [91, \"how-can-i-execute-arbitrary-python-statements-from-c\"]\n+ \"How can I create a stand-alone binary from a Python script?\": [\n+ [97, \"how-can-i-create-a-stand-alone-binary-from-a-python-script\"]\n ],\n- \"How can I evaluate an arbitrary Python expression from C?\": [\n- [91, \"how-can-i-evaluate-an-arbitrary-python-expression-from-c\"]\n+ \"Are there coding standards or a style guide for Python programs?\": [\n+ [97, \"are-there-coding-standards-or-a-style-guide-for-python-programs\"]\n ],\n- \"How do I extract C values from a Python object?\": [\n- [91, \"how-do-i-extract-c-values-from-a-python-object\"]\n+ \"Core Language\": [\n+ [97, \"core-language\"]\n ],\n- \"How do I use Py_BuildValue() to create a tuple of arbitrary length?\": [\n- [91, \"how-do-i-use-py-buildvalue-to-create-a-tuple-of-arbitrary-length\"]\n+ \"Why am I getting an UnboundLocalError when the variable has a value?\": [\n+ [97, \"why-am-i-getting-an-unboundlocalerror-when-the-variable-has-a-value\"]\n ],\n- \"How do I call an object\\u2019s method from C?\": [\n- [91, \"how-do-i-call-an-object-s-method-from-c\"]\n+ \"What are the rules for local and global variables in Python?\": [\n+ [97, \"what-are-the-rules-for-local-and-global-variables-in-python\"]\n ],\n- \"How do I catch the output from PyErr_Print() (or anything that prints to stdout/stderr)?\": [\n- [91, \"how-do-i-catch-the-output-from-pyerr-print-or-anything-that-prints-to-stdout-stderr\"]\n+ \"Why do lambdas defined in a loop with different values all return the same result?\": [\n+ [97, \"why-do-lambdas-defined-in-a-loop-with-different-values-all-return-the-same-result\"]\n ],\n- \"How do I access a module written in Python from C?\": [\n- [91, \"how-do-i-access-a-module-written-in-python-from-c\"]\n+ \"How do I share global variables across modules?\": [\n+ [97, \"how-do-i-share-global-variables-across-modules\"]\n ],\n- \"How do I interface to C++ objects from Python?\": [\n- [91, \"how-do-i-interface-to-c-objects-from-python\"]\n+ \"What are the \\u201cbest practices\\u201d for using import in a module?\": [\n+ [97, \"what-are-the-best-practices-for-using-import-in-a-module\"]\n ],\n- \"I added a module using the Setup file and the make fails; why?\": [\n- [91, \"i-added-a-module-using-the-setup-file-and-the-make-fails-why\"]\n+ \"Why are default values shared between objects?\": [\n+ [97, \"why-are-default-values-shared-between-objects\"]\n ],\n- \"How do I debug an extension?\": [\n- [91, \"how-do-i-debug-an-extension\"]\n+ \"How can I pass optional or keyword parameters from one function to another?\": [\n+ [97, \"how-can-i-pass-optional-or-keyword-parameters-from-one-function-to-another\"]\n ],\n- \"I want to compile a Python module on my Linux system, but some files are missing. Why?\": [\n- [91, \"i-want-to-compile-a-python-module-on-my-linux-system-but-some-files-are-missing-why\"]\n+ \"What is the difference between arguments and parameters?\": [\n+ [97, \"what-is-the-difference-between-arguments-and-parameters\"]\n ],\n- \"How do I tell \\u201cincomplete input\\u201d from \\u201cinvalid input\\u201d?\": [\n- [91, \"how-do-i-tell-incomplete-input-from-invalid-input\"]\n+ \"Why did changing list \\u2018y\\u2019 also change list \\u2018x\\u2019?\": [\n+ [97, \"why-did-changing-list-y-also-change-list-x\"]\n ],\n- \"How do I find undefined g++ symbols __builtin_new or __pure_virtual?\": [\n- [91, \"how-do-i-find-undefined-g-symbols-builtin-new-or-pure-virtual\"]\n+ \"How do I write a function with output parameters (call by reference)?\": [\n+ [97, \"how-do-i-write-a-function-with-output-parameters-call-by-reference\"]\n ],\n- \"Can I create an object class with some methods implemented in C and others in Python (e.g. through inheritance)?\": [\n- [91, \"can-i-create-an-object-class-with-some-methods-implemented-in-c-and-others-in-python-e-g-through-inheritance\"]\n+ \"How do you make a higher order function in Python?\": [\n+ [97, \"how-do-you-make-a-higher-order-function-in-python\"]\n ],\n- \"Embedding Python in Another Application\": [\n- [84, \"embedding-python-in-another-application\"]\n+ \"How do I copy an object in Python?\": [\n+ [97, \"how-do-i-copy-an-object-in-python\"]\n ],\n- \"Very High Level Embedding\": [\n- [84, \"very-high-level-embedding\"]\n+ \"How can I find the methods or attributes of an object?\": [\n+ [97, \"how-can-i-find-the-methods-or-attributes-of-an-object\"]\n ],\n- \"Beyond Very High Level Embedding: An overview\": [\n- [84, \"beyond-very-high-level-embedding-an-overview\"]\n+ \"How can my code discover the name of an object?\": [\n+ [97, \"how-can-my-code-discover-the-name-of-an-object\"]\n ],\n- \"Pure Embedding\": [\n- [84, \"pure-embedding\"]\n+ \"What\\u2019s up with the comma operator\\u2019s precedence?\": [\n+ [97, \"what-s-up-with-the-comma-operator-s-precedence\"]\n ],\n- \"Extending Embedded Python\": [\n- [84, \"extending-embedded-python\"]\n+ \"Is there an equivalent of C\\u2019s \\u201c?:\\u201d ternary operator?\": [\n+ [97, \"is-there-an-equivalent-of-c-s-ternary-operator\"]\n ],\n- \"Embedding Python in C++\": [\n- [84, \"embedding-python-in-c\"]\n+ \"Is it possible to write obfuscated one-liners in Python?\": [\n+ [97, \"is-it-possible-to-write-obfuscated-one-liners-in-python\"]\n ],\n- \"Compiling and Linking under Unix-like systems\": [\n- [84, \"compiling-and-linking-under-unix-like-systems\"]\n+ \"What does the slash(/) in the parameter list of a function mean?\": [\n+ [97, \"what-does-the-slash-in-the-parameter-list-of-a-function-mean\"]\n+ ],\n+ \"Numbers and strings\": [\n+ [97, \"numbers-and-strings\"]\n+ ],\n+ \"How do I specify hexadecimal and octal integers?\": [\n+ [97, \"how-do-i-specify-hexadecimal-and-octal-integers\"]\n+ ],\n+ \"Why does -22 // 10 return -3?\": [\n+ [97, \"why-does-22-10-return-3\"]\n+ ],\n+ \"How do I get int literal attribute instead of SyntaxError?\": [\n+ [97, \"how-do-i-get-int-literal-attribute-instead-of-syntaxerror\"]\n+ ],\n+ \"How do I convert a string to a number?\": [\n+ [97, \"how-do-i-convert-a-string-to-a-number\"]\n+ ],\n+ \"How do I convert a number to a string?\": [\n+ [97, \"how-do-i-convert-a-number-to-a-string\"]\n+ ],\n+ \"How do I modify a string in place?\": [\n+ [97, \"how-do-i-modify-a-string-in-place\"]\n+ ],\n+ \"How do I use strings to call functions/methods?\": [\n+ [97, \"how-do-i-use-strings-to-call-functions-methods\"]\n+ ],\n+ \"Is there an equivalent to Perl\\u2019s chomp() for removing trailing newlines from strings?\": [\n+ [97, \"is-there-an-equivalent-to-perl-s-chomp-for-removing-trailing-newlines-from-strings\"]\n+ ],\n+ \"Is there a scanf() or sscanf() equivalent?\": [\n+ [97, \"is-there-a-scanf-or-sscanf-equivalent\"]\n+ ],\n+ \"What does \\u2018UnicodeDecodeError\\u2019 or \\u2018UnicodeEncodeError\\u2019 error mean?\": [\n+ [97, \"what-does-unicodedecodeerror-or-unicodeencodeerror-error-mean\"]\n+ ],\n+ \"Can I end a raw string with an odd number of backslashes?\": [\n+ [97, \"can-i-end-a-raw-string-with-an-odd-number-of-backslashes\"]\n+ ],\n+ \"Performance\": [\n+ [97, \"performance\"],\n+ [485, \"performance\"],\n+ [314, \"performance\"],\n+ [273, \"performance\"]\n+ ],\n+ \"My program is too slow. How do I speed it up?\": [\n+ [97, \"my-program-is-too-slow-how-do-i-speed-it-up\"]\n+ ],\n+ \"What is the most efficient way to concatenate many strings together?\": [\n+ [97, \"what-is-the-most-efficient-way-to-concatenate-many-strings-together\"]\n+ ],\n+ \"Sequences (Tuples/Lists)\": [\n+ [97, \"sequences-tuples-lists\"]\n+ ],\n+ \"How do I convert between tuples and lists?\": [\n+ [97, \"how-do-i-convert-between-tuples-and-lists\"]\n+ ],\n+ \"What\\u2019s a negative index?\": [\n+ [97, \"what-s-a-negative-index\"]\n+ ],\n+ \"How do I iterate over a sequence in reverse order?\": [\n+ [97, \"how-do-i-iterate-over-a-sequence-in-reverse-order\"]\n+ ],\n+ \"How do you remove duplicates from a list?\": [\n+ [97, \"how-do-you-remove-duplicates-from-a-list\"]\n+ ],\n+ \"How do you remove multiple items from a list\": [\n+ [97, \"how-do-you-remove-multiple-items-from-a-list\"]\n+ ],\n+ \"How do you make an array in Python?\": [\n+ [97, \"how-do-you-make-an-array-in-python\"]\n+ ],\n+ \"How do I create a multidimensional list?\": [\n+ [97, \"how-do-i-create-a-multidimensional-list\"]\n+ ],\n+ \"How do I apply a method or function to a sequence of objects?\": [\n+ [97, \"how-do-i-apply-a-method-or-function-to-a-sequence-of-objects\"]\n+ ],\n+ \"Why does a_tuple[i] += [\\u2018item\\u2019] raise an exception when the addition works?\": [\n+ [97, \"why-does-a-tuple-i-item-raise-an-exception-when-the-addition-works\"]\n+ ],\n+ \"I want to do a complicated sort: can you do a Schwartzian Transform in Python?\": [\n+ [97, \"i-want-to-do-a-complicated-sort-can-you-do-a-schwartzian-transform-in-python\"]\n+ ],\n+ \"How can I sort one list by values from another list?\": [\n+ [97, \"how-can-i-sort-one-list-by-values-from-another-list\"]\n+ ],\n+ \"Objects\": [\n+ [97, \"objects\"]\n+ ],\n+ \"What is a class?\": [\n+ [97, \"what-is-a-class\"]\n+ ],\n+ \"What is a method?\": [\n+ [97, \"what-is-a-method\"]\n+ ],\n+ \"What is self?\": [\n+ [97, \"what-is-self\"]\n+ ],\n+ \"How do I check if an object is an instance of a given class or of a subclass of it?\": [\n+ [97, \"how-do-i-check-if-an-object-is-an-instance-of-a-given-class-or-of-a-subclass-of-it\"]\n+ ],\n+ \"What is delegation?\": [\n+ [97, \"what-is-delegation\"]\n+ ],\n+ \"How do I call a method defined in a base class from a derived class that extends it?\": [\n+ [97, \"how-do-i-call-a-method-defined-in-a-base-class-from-a-derived-class-that-extends-it\"]\n+ ],\n+ \"How can I organize my code to make it easier to change the base class?\": [\n+ [97, \"how-can-i-organize-my-code-to-make-it-easier-to-change-the-base-class\"]\n+ ],\n+ \"How do I create static class data and static class methods?\": [\n+ [97, \"how-do-i-create-static-class-data-and-static-class-methods\"]\n+ ],\n+ \"How can I overload constructors (or methods) in Python?\": [\n+ [97, \"how-can-i-overload-constructors-or-methods-in-python\"]\n+ ],\n+ \"I try to use __spam and I get an error about _SomeClassName__spam.\": [\n+ [97, \"i-try-to-use-spam-and-i-get-an-error-about-someclassname-spam\"]\n+ ],\n+ \"My class defines __del__ but it is not called when I delete the object.\": [\n+ [97, \"my-class-defines-del-but-it-is-not-called-when-i-delete-the-object\"]\n+ ],\n+ \"How do I get a list of all instances of a given class?\": [\n+ [97, \"how-do-i-get-a-list-of-all-instances-of-a-given-class\"]\n+ ],\n+ \"Why does the result of id() appear to be not unique?\": [\n+ [97, \"why-does-the-result-of-id-appear-to-be-not-unique\"]\n+ ],\n+ \"When can I rely on identity tests with the is operator?\": [\n+ [97, \"when-can-i-rely-on-identity-tests-with-the-is-operator\"]\n+ ],\n+ \"How can a subclass control what data is stored in an immutable instance?\": [\n+ [97, \"how-can-a-subclass-control-what-data-is-stored-in-an-immutable-instance\"]\n+ ],\n+ \"How do I cache method calls?\": [\n+ [97, \"how-do-i-cache-method-calls\"]\n+ ],\n+ \"Modules\": [\n+ [97, \"modules\"],\n+ [443, \"modules\"],\n+ [488, \"modules\"],\n+ [465, \"modules\"],\n+ [360, \"modules\"]\n+ ],\n+ \"How do I create a .pyc file?\": [\n+ [97, \"how-do-i-create-a-pyc-file\"]\n+ ],\n+ \"How do I find the current module name?\": [\n+ [97, \"how-do-i-find-the-current-module-name\"]\n+ ],\n+ \"How can I have modules that mutually import each other?\": [\n+ [97, \"how-can-i-have-modules-that-mutually-import-each-other\"]\n+ ],\n+ \"__import__(\\u2018x.y.z\\u2019) returns ; how do I get z?\": [\n+ [97, \"import-x-y-z-returns-module-x-how-do-i-get-z\"]\n+ ],\n+ \"When I edit an imported module and reimport it, the changes don\\u2019t show up. Why does this happen?\": [\n+ [97, \"when-i-edit-an-imported-module-and-reimport-it-the-changes-don-t-show-up-why-does-this-happen\"]\n+ ],\n+ \"Creating Built Distributions\": [\n+ [72, \"creating-built-distributions\"]\n+ ],\n+ \"Creating RPM packages\": [\n+ [72, \"creating-rpm-packages\"]\n+ ],\n+ \"Cross-compiling on Windows\": [\n+ [72, \"cross-compiling-on-windows\"]\n+ ],\n+ \"The Postinstallation script\": [\n+ [72, \"the-postinstallation-script\"]\n+ ],\n+ \"Graphic User Interface FAQ\": [\n+ [93, \"graphic-user-interface-faq\"]\n+ ],\n+ \"General GUI Questions\": [\n+ [93, \"general-gui-questions\"]\n+ ],\n+ \"What GUI toolkits exist for Python?\": [\n+ [93, \"what-gui-toolkits-exist-for-python\"]\n+ ],\n+ \"Tkinter questions\": [\n+ [93, \"tkinter-questions\"]\n+ ],\n+ \"How do I freeze Tkinter applications?\": [\n+ [93, \"how-do-i-freeze-tkinter-applications\"]\n+ ],\n+ \"Can I have Tk events handled while waiting for I/O?\": [\n+ [93, \"can-i-have-tk-events-handled-while-waiting-for-i-o\"]\n+ ],\n+ \"I can\\u2019t get key bindings to work in Tkinter: why?\": [\n+ [93, \"i-can-t-get-key-bindings-to-work-in-tkinter-why\"]\n+ ],\n+ \"Python Frequently Asked Questions\": [\n+ [94, \"python-frequently-asked-questions\"]\n+ ],\n+ \"Glossary\": [\n+ [99, \"glossary\"]\n ],\n \"API Reference\": [\n [71, \"api-reference\"]\n ],\n \"distutils.core \\u2014 Core Distutils functionality\": [\n [71, \"module-distutils.core\"]\n ],\n@@ -58528,141 +58718,158 @@\n ],\n \"distutils.command.register \\u2014 Register a module with the Python Package Index\": [\n [71, \"module-distutils.command.register\"]\n ],\n \"distutils.command.check \\u2014 Check the meta-data of a package\": [\n [71, \"module-distutils.command.check\"]\n ],\n- \"Porting Extension Modules to Python 3\": [\n- [103, \"porting-extension-modules-to-python-3\"]\n+ \"\\u201cWhy is Python Installed on my Computer?\\u201d FAQ\": [\n+ [95, \"why-is-python-installed-on-my-computer-faq\"]\n ],\n- \"Python Frequently Asked Questions\": [\n- [94, \"python-frequently-asked-questions\"]\n+ \"What is Python?\": [\n+ [95, \"what-is-python\"],\n+ [92, \"what-is-python\"]\n ],\n- \"Argparse Tutorial\": [\n- [101, \"argparse-tutorial\"]\n+ \"Why is Python installed on my machine?\": [\n+ [95, \"why-is-python-installed-on-my-machine\"]\n ],\n- \"Concepts\": [\n- [101, \"concepts\"]\n+ \"Can I delete Python?\": [\n+ [95, \"can-i-delete-python\"]\n ],\n- \"The basics\": [\n- [101, \"the-basics\"]\n+ \"An Introduction to Distutils\": [\n+ [78, \"an-introduction-to-distutils\"]\n ],\n- \"Introducing Positional arguments\": [\n- [101, \"introducing-positional-arguments\"]\n+ \"Concepts & Terminology\": [\n+ [78, \"concepts-terminology\"]\n ],\n- \"Introducing Optional arguments\": [\n- [101, \"introducing-optional-arguments\"]\n+ \"A Simple Example\": [\n+ [78, \"a-simple-example\"],\n+ [85, \"a-simple-example\"]\n ],\n- \"Short options\": [\n- [101, \"short-options\"]\n+ \"General Python terminology\": [\n+ [78, \"general-python-terminology\"]\n ],\n- \"Combining Positional and Optional arguments\": [\n- [101, \"combining-positional-and-optional-arguments\"]\n+ \"Distutils-specific terminology\": [\n+ [78, \"distutils-specific-terminology\"]\n ],\n- \"Getting a little more advanced\": [\n- [101, \"getting-a-little-more-advanced\"]\n+ \"Library and Extension FAQ\": [\n+ [96, \"library-and-extension-faq\"]\n ],\n- \"Conflicting options\": [\n- [101, \"conflicting-options\"]\n+ \"General Library Questions\": [\n+ [96, \"general-library-questions\"]\n ],\n- \"How to translate the argparse output\": [\n- [101, \"how-to-translate-the-argparse-output\"]\n+ \"How do I find a module or application to perform task X?\": [\n+ [96, \"how-do-i-find-a-module-or-application-to-perform-task-x\"]\n ],\n- \"Conclusion\": [\n- [101, \"conclusion\"]\n+ \"Where is the math.py (socket.py, regex.py, etc.) source file?\": [\n+ [96, \"where-is-the-math-py-socket-py-regex-py-etc-source-file\"]\n ],\n- \"Uploading Packages to the Package Index\": [\n- [82, \"uploading-packages-to-the-package-index\"]\n+ \"How do I make a Python script executable on Unix?\": [\n+ [96, \"how-do-i-make-a-python-script-executable-on-unix\"]\n ],\n- \"Distributing Python Modules (Legacy version)\": [\n- [77, \"distributing-python-modules-legacy-version\"]\n+ \"Is there a curses/termcap package for Python?\": [\n+ [96, \"is-there-a-curses-termcap-package-for-python\"]\n ],\n- \"Writing the Setup Script\": [\n- [80, \"writing-the-setup-script\"]\n+ \"Is there an equivalent to C\\u2019s onexit() in Python?\": [\n+ [96, \"is-there-an-equivalent-to-c-s-onexit-in-python\"]\n ],\n- \"Listing whole packages\": [\n- [80, \"listing-whole-packages\"]\n+ \"Why don\\u2019t my signal handlers work?\": [\n+ [96, \"why-don-t-my-signal-handlers-work\"]\n ],\n- \"Listing individual modules\": [\n- [80, \"listing-individual-modules\"]\n+ \"Common tasks\": [\n+ [96, \"common-tasks\"]\n ],\n- \"Describing extension modules\": [\n- [80, \"describing-extension-modules\"]\n+ \"How do I test a Python program or component?\": [\n+ [96, \"how-do-i-test-a-python-program-or-component\"]\n ],\n- \"Extension names and packages\": [\n- [80, \"extension-names-and-packages\"]\n+ \"How do I create documentation from doc strings?\": [\n+ [96, \"how-do-i-create-documentation-from-doc-strings\"]\n ],\n- \"Extension source files\": [\n- [80, \"extension-source-files\"]\n+ \"How do I get a single keypress at a time?\": [\n+ [96, \"how-do-i-get-a-single-keypress-at-a-time\"]\n ],\n- \"Preprocessor options\": [\n- [80, \"preprocessor-options\"]\n+ \"Threads\": [\n+ [96, \"threads\"]\n ],\n- \"Library options\": [\n- [80, \"library-options\"]\n+ \"How do I program using threads?\": [\n+ [96, \"how-do-i-program-using-threads\"]\n ],\n- \"Other options\": [\n- [80, \"other-options\"]\n+ \"None of my threads seem to run: why?\": [\n+ [96, \"none-of-my-threads-seem-to-run-why\"]\n ],\n- \"Relationships between Distributions and Packages\": [\n- [80, \"relationships-between-distributions-and-packages\"]\n+ \"How do I parcel out work among a bunch of worker threads?\": [\n+ [96, \"how-do-i-parcel-out-work-among-a-bunch-of-worker-threads\"]\n ],\n- \"Installing Scripts\": [\n- [80, \"installing-scripts\"]\n+ \"What kinds of global value mutation are thread-safe?\": [\n+ [96, \"what-kinds-of-global-value-mutation-are-thread-safe\"]\n ],\n- \"Installing Package Data\": [\n- [80, \"installing-package-data\"]\n+ \"Can\\u2019t we get rid of the Global Interpreter Lock?\": [\n+ [96, \"can-t-we-get-rid-of-the-global-interpreter-lock\"]\n ],\n- \"Installing Additional Files\": [\n- [80, \"installing-additional-files\"]\n+ \"Input and Output\": [\n+ [96, \"input-and-output\"],\n+ [461, \"input-and-output\"]\n ],\n- \"Additional meta-data\": [\n- [80, \"additional-meta-data\"]\n+ \"How do I delete a file? (And other file questions\\u2026)\": [\n+ [96, \"how-do-i-delete-a-file-and-other-file-questions\"]\n ],\n- \"Debugging the setup script\": [\n- [80, \"debugging-the-setup-script\"]\n+ \"How do I copy a file?\": [\n+ [96, \"how-do-i-copy-a-file\"]\n ],\n- \"Defining Extension Types: Tutorial\": [\n- [88, \"defining-extension-types-tutorial\"]\n+ \"How do I read (or write) binary data?\": [\n+ [96, \"how-do-i-read-or-write-binary-data\"]\n ],\n- \"The Basics\": [\n- [88, \"the-basics\"]\n+ \"I can\\u2019t seem to use os.read() on a pipe created with os.popen(); why?\": [\n+ [96, \"i-can-t-seem-to-use-os-read-on-a-pipe-created-with-os-popen-why\"]\n ],\n- \"Adding data and methods to the Basic example\": [\n- [88, \"adding-data-and-methods-to-the-basic-example\"]\n+ \"How do I access the serial (RS232) port?\": [\n+ [96, \"how-do-i-access-the-serial-rs232-port\"]\n ],\n- \"Providing finer control over data attributes\": [\n- [88, \"providing-finer-control-over-data-attributes\"]\n+ \"Why doesn\\u2019t closing sys.stdout (stdin, stderr) really close it?\": [\n+ [96, \"why-doesn-t-closing-sys-stdout-stdin-stderr-really-close-it\"]\n ],\n- \"Supporting cyclic garbage collection\": [\n- [88, \"supporting-cyclic-garbage-collection\"]\n+ \"Network/Internet Programming\": [\n+ [96, \"network-internet-programming\"]\n ],\n- \"Subclassing other types\": [\n- [88, \"subclassing-other-types\"]\n+ \"What WWW tools are there for Python?\": [\n+ [96, \"what-www-tools-are-there-for-python\"]\n ],\n- \"Extending Distutils\": [\n- [76, \"extending-distutils\"]\n+ \"How can I mimic CGI form submission (METHOD=POST)?\": [\n+ [96, \"how-can-i-mimic-cgi-form-submission-method-post\"]\n ],\n- \"Integrating new commands\": [\n- [76, \"integrating-new-commands\"]\n+ \"What module should I use to help with generating HTML?\": [\n+ [96, \"what-module-should-i-use-to-help-with-generating-html\"]\n ],\n- \"Adding new distribution types\": [\n- [76, \"adding-new-distribution-types\"]\n+ \"How do I send mail from a Python script?\": [\n+ [96, \"how-do-i-send-mail-from-a-python-script\"]\n+ ],\n+ \"How do I avoid blocking in the connect() method of a socket?\": [\n+ [96, \"how-do-i-avoid-blocking-in-the-connect-method-of-a-socket\"]\n+ ],\n+ \"Databases\": [\n+ [96, \"databases\"]\n+ ],\n+ \"Are there any interfaces to database packages in Python?\": [\n+ [96, \"are-there-any-interfaces-to-database-packages-in-python\"]\n+ ],\n+ \"How do you implement persistent objects in Python?\": [\n+ [96, \"how-do-you-implement-persistent-objects-in-python\"]\n+ ],\n+ \"Mathematics and Numerics\": [\n+ [96, \"mathematics-and-numerics\"]\n+ ],\n+ \"How do I generate random numbers in Python?\": [\n+ [96, \"how-do-i-generate-random-numbers-in-python\"]\n ],\n \"General Python FAQ\": [\n [92, \"general-python-faq\"]\n ],\n \"General Information\": [\n [92, \"general-information\"]\n ],\n- \"What is Python?\": [\n- [92, \"what-is-python\"],\n- [95, \"what-is-python\"]\n- ],\n \"What is the Python Software Foundation?\": [\n [92, \"what-is-the-python-software-foundation\"]\n ],\n \"Are there copyright restrictions on the use of Python?\": [\n [92, \"are-there-copyright-restrictions-on-the-use-of-python\"]\n ],\n \"Why was Python created in the first place?\": [\n@@ -58724,142 +58931,74 @@\n ],\n \"Is it reasonable to propose incompatible changes to Python?\": [\n [92, \"is-it-reasonable-to-propose-incompatible-changes-to-python\"]\n ],\n \"Is Python a good language for beginning programmers?\": [\n [92, \"is-python-a-good-language-for-beginning-programmers\"]\n ],\n- \"Creating Built Distributions\": [\n- [72, \"creating-built-distributions\"]\n- ],\n- \"Creating RPM packages\": [\n- [72, \"creating-rpm-packages\"]\n- ],\n- \"Cross-compiling on Windows\": [\n- [72, \"cross-compiling-on-windows\"]\n- ],\n- \"The Postinstallation script\": [\n- [72, \"the-postinstallation-script\"]\n- ],\n- \"Library and Extension FAQ\": [\n- [96, \"library-and-extension-faq\"]\n- ],\n- \"General Library Questions\": [\n- [96, \"general-library-questions\"]\n- ],\n- \"How do I find a module or application to perform task X?\": [\n- [96, \"how-do-i-find-a-module-or-application-to-perform-task-x\"]\n- ],\n- \"Where is the math.py (socket.py, regex.py, etc.) source file?\": [\n- [96, \"where-is-the-math-py-socket-py-regex-py-etc-source-file\"]\n- ],\n- \"How do I make a Python script executable on Unix?\": [\n- [96, \"how-do-i-make-a-python-script-executable-on-unix\"]\n- ],\n- \"Is there a curses/termcap package for Python?\": [\n- [96, \"is-there-a-curses-termcap-package-for-python\"]\n- ],\n- \"Is there an equivalent to C\\u2019s onexit() in Python?\": [\n- [96, \"is-there-an-equivalent-to-c-s-onexit-in-python\"]\n- ],\n- \"Why don\\u2019t my signal handlers work?\": [\n- [96, \"why-don-t-my-signal-handlers-work\"]\n- ],\n- \"Common tasks\": [\n- [96, \"common-tasks\"]\n- ],\n- \"How do I test a Python program or component?\": [\n- [96, \"how-do-i-test-a-python-program-or-component\"]\n- ],\n- \"How do I create documentation from doc strings?\": [\n- [96, \"how-do-i-create-documentation-from-doc-strings\"]\n- ],\n- \"How do I get a single keypress at a time?\": [\n- [96, \"how-do-i-get-a-single-keypress-at-a-time\"]\n- ],\n- \"Threads\": [\n- [96, \"threads\"]\n- ],\n- \"How do I program using threads?\": [\n- [96, \"how-do-i-program-using-threads\"]\n- ],\n- \"None of my threads seem to run: why?\": [\n- [96, \"none-of-my-threads-seem-to-run-why\"]\n- ],\n- \"How do I parcel out work among a bunch of worker threads?\": [\n- [96, \"how-do-i-parcel-out-work-among-a-bunch-of-worker-threads\"]\n- ],\n- \"What kinds of global value mutation are thread-safe?\": [\n- [96, \"what-kinds-of-global-value-mutation-are-thread-safe\"]\n- ],\n- \"Can\\u2019t we get rid of the Global Interpreter Lock?\": [\n- [96, \"can-t-we-get-rid-of-the-global-interpreter-lock\"]\n+ \"Extending/Embedding FAQ\": [\n+ [91, \"extending-embedding-faq\"]\n ],\n- \"Input and Output\": [\n- [96, \"input-and-output\"],\n- [461, \"input-and-output\"]\n+ \"Can I create my own functions in C?\": [\n+ [91, \"can-i-create-my-own-functions-in-c\"]\n ],\n- \"How do I delete a file? (And other file questions\\u2026)\": [\n- [96, \"how-do-i-delete-a-file-and-other-file-questions\"]\n+ \"Can I create my own functions in C++?\": [\n+ [91, \"id1\"]\n ],\n- \"How do I copy a file?\": [\n- [96, \"how-do-i-copy-a-file\"]\n+ \"Writing C is hard; are there any alternatives?\": [\n+ [91, \"writing-c-is-hard-are-there-any-alternatives\"]\n ],\n- \"How do I read (or write) binary data?\": [\n- [96, \"how-do-i-read-or-write-binary-data\"]\n+ \"How can I execute arbitrary Python statements from C?\": [\n+ [91, \"how-can-i-execute-arbitrary-python-statements-from-c\"]\n ],\n- \"I can\\u2019t seem to use os.read() on a pipe created with os.popen(); why?\": [\n- [96, \"i-can-t-seem-to-use-os-read-on-a-pipe-created-with-os-popen-why\"]\n+ \"How can I evaluate an arbitrary Python expression from C?\": [\n+ [91, \"how-can-i-evaluate-an-arbitrary-python-expression-from-c\"]\n ],\n- \"How do I access the serial (RS232) port?\": [\n- [96, \"how-do-i-access-the-serial-rs232-port\"]\n+ \"How do I extract C values from a Python object?\": [\n+ [91, \"how-do-i-extract-c-values-from-a-python-object\"]\n ],\n- \"Why doesn\\u2019t closing sys.stdout (stdin, stderr) really close it?\": [\n- [96, \"why-doesn-t-closing-sys-stdout-stdin-stderr-really-close-it\"]\n+ \"How do I use Py_BuildValue() to create a tuple of arbitrary length?\": [\n+ [91, \"how-do-i-use-py-buildvalue-to-create-a-tuple-of-arbitrary-length\"]\n ],\n- \"Network/Internet Programming\": [\n- [96, \"network-internet-programming\"]\n+ \"How do I call an object\\u2019s method from C?\": [\n+ [91, \"how-do-i-call-an-object-s-method-from-c\"]\n ],\n- \"What WWW tools are there for Python?\": [\n- [96, \"what-www-tools-are-there-for-python\"]\n+ \"How do I catch the output from PyErr_Print() (or anything that prints to stdout/stderr)?\": [\n+ [91, \"how-do-i-catch-the-output-from-pyerr-print-or-anything-that-prints-to-stdout-stderr\"]\n ],\n- \"How can I mimic CGI form submission (METHOD=POST)?\": [\n- [96, \"how-can-i-mimic-cgi-form-submission-method-post\"]\n+ \"How do I access a module written in Python from C?\": [\n+ [91, \"how-do-i-access-a-module-written-in-python-from-c\"]\n ],\n- \"What module should I use to help with generating HTML?\": [\n- [96, \"what-module-should-i-use-to-help-with-generating-html\"]\n+ \"How do I interface to C++ objects from Python?\": [\n+ [91, \"how-do-i-interface-to-c-objects-from-python\"]\n ],\n- \"How do I send mail from a Python script?\": [\n- [96, \"how-do-i-send-mail-from-a-python-script\"]\n+ \"I added a module using the Setup file and the make fails; why?\": [\n+ [91, \"i-added-a-module-using-the-setup-file-and-the-make-fails-why\"]\n ],\n- \"How do I avoid blocking in the connect() method of a socket?\": [\n- [96, \"how-do-i-avoid-blocking-in-the-connect-method-of-a-socket\"]\n+ \"How do I debug an extension?\": [\n+ [91, \"how-do-i-debug-an-extension\"]\n ],\n- \"Databases\": [\n- [96, \"databases\"]\n+ \"I want to compile a Python module on my Linux system, but some files are missing. Why?\": [\n+ [91, \"i-want-to-compile-a-python-module-on-my-linux-system-but-some-files-are-missing-why\"]\n ],\n- \"Are there any interfaces to database packages in Python?\": [\n- [96, \"are-there-any-interfaces-to-database-packages-in-python\"]\n+ \"How do I tell \\u201cincomplete input\\u201d from \\u201cinvalid input\\u201d?\": [\n+ [91, \"how-do-i-tell-incomplete-input-from-invalid-input\"]\n ],\n- \"How do you implement persistent objects in Python?\": [\n- [96, \"how-do-you-implement-persistent-objects-in-python\"]\n+ \"How do I find undefined g++ symbols __builtin_new or __pure_virtual?\": [\n+ [91, \"how-do-i-find-undefined-g-symbols-builtin-new-or-pure-virtual\"]\n ],\n- \"Mathematics and Numerics\": [\n- [96, \"mathematics-and-numerics\"]\n+ \"Can I create an object class with some methods implemented in C and others in Python (e.g. through inheritance)?\": [\n+ [91, \"can-i-create-an-object-class-with-some-methods-implemented-in-c-and-others-in-python-e-g-through-inheritance\"]\n ],\n- \"How do I generate random numbers in Python?\": [\n- [96, \"how-do-i-generate-random-numbers-in-python\"]\n+ \"Writing the Setup Configuration File\": [\n+ [74, \"writing-the-setup-configuration-file\"]\n ],\n \"Extending Python with C or C++\": [\n [85, \"extending-python-with-c-or-c\"]\n ],\n- \"A Simple Example\": [\n- [85, \"a-simple-example\"],\n- [78, \"a-simple-example\"]\n- ],\n \"Intermezzo: Errors and Exceptions\": [\n [85, \"intermezzo-errors-and-exceptions\"]\n ],\n \"Back to the Example\": [\n [85, \"back-to-the-example\"]\n ],\n \"The Module\\u2019s Method Table and Initialization Function\": [\n@@ -58898,254 +59037,255 @@\n ],\n \"Writing Extensions in C++\": [\n [85, \"writing-extensions-in-c\"]\n ],\n \"Providing a C API for an Extension Module\": [\n [85, \"providing-a-c-api-for-an-extension-module\"]\n ],\n- \"Programming FAQ\": [\n- [97, \"programming-faq\"]\n+ \"Uploading Packages to the Package Index\": [\n+ [82, \"uploading-packages-to-the-package-index\"]\n ],\n- \"General Questions\": [\n- [97, \"general-questions\"]\n+ \"Argparse Tutorial\": [\n+ [101, \"argparse-tutorial\"]\n ],\n- \"Is there a source code level debugger with breakpoints, single-stepping, etc.?\": [\n- [97, \"is-there-a-source-code-level-debugger-with-breakpoints-single-stepping-etc\"]\n+ \"Concepts\": [\n+ [101, \"concepts\"]\n ],\n- \"Are there tools to help find bugs or perform static analysis?\": [\n- [97, \"are-there-tools-to-help-find-bugs-or-perform-static-analysis\"]\n+ \"The basics\": [\n+ [101, \"the-basics\"]\n ],\n- \"How can I create a stand-alone binary from a Python script?\": [\n- [97, \"how-can-i-create-a-stand-alone-binary-from-a-python-script\"]\n+ \"Introducing Positional arguments\": [\n+ [101, \"introducing-positional-arguments\"]\n ],\n- \"Are there coding standards or a style guide for Python programs?\": [\n- [97, \"are-there-coding-standards-or-a-style-guide-for-python-programs\"]\n+ \"Introducing Optional arguments\": [\n+ [101, \"introducing-optional-arguments\"]\n ],\n- \"Core Language\": [\n- [97, \"core-language\"]\n+ \"Short options\": [\n+ [101, \"short-options\"]\n ],\n- \"Why am I getting an UnboundLocalError when the variable has a value?\": [\n- [97, \"why-am-i-getting-an-unboundlocalerror-when-the-variable-has-a-value\"]\n+ \"Combining Positional and Optional arguments\": [\n+ [101, \"combining-positional-and-optional-arguments\"]\n ],\n- \"What are the rules for local and global variables in Python?\": [\n- [97, \"what-are-the-rules-for-local-and-global-variables-in-python\"]\n+ \"Getting a little more advanced\": [\n+ [101, \"getting-a-little-more-advanced\"]\n ],\n- \"Why do lambdas defined in a loop with different values all return the same result?\": [\n- [97, \"why-do-lambdas-defined-in-a-loop-with-different-values-all-return-the-same-result\"]\n+ \"Conflicting options\": [\n+ [101, \"conflicting-options\"]\n ],\n- \"How do I share global variables across modules?\": [\n- [97, \"how-do-i-share-global-variables-across-modules\"]\n+ \"How to translate the argparse output\": [\n+ [101, \"how-to-translate-the-argparse-output\"]\n ],\n- \"What are the \\u201cbest practices\\u201d for using import in a module?\": [\n- [97, \"what-are-the-best-practices-for-using-import-in-a-module\"]\n+ \"Conclusion\": [\n+ [101, \"conclusion\"]\n ],\n- \"Why are default values shared between objects?\": [\n- [97, \"why-are-default-values-shared-between-objects\"]\n+ \"Curses Programming with Python\": [\n+ [104, \"curses-programming-with-python\"]\n ],\n- \"How can I pass optional or keyword parameters from one function to another?\": [\n- [97, \"how-can-i-pass-optional-or-keyword-parameters-from-one-function-to-another\"]\n+ \"Abstract\": [\n+ [104, null],\n+ [100, null],\n+ [116, null],\n+ [105, \"abstract\"],\n+ [117, null],\n+ [112, null]\n ],\n- \"What is the difference between arguments and parameters?\": [\n- [97, \"what-is-the-difference-between-arguments-and-parameters\"]\n+ \"What is curses?\": [\n+ [104, \"what-is-curses\"]\n ],\n- \"Why did changing list \\u2018y\\u2019 also change list \\u2018x\\u2019?\": [\n- [97, \"why-did-changing-list-y-also-change-list-x\"]\n+ \"The Python curses module\": [\n+ [104, \"the-python-curses-module\"]\n ],\n- \"How do I write a function with output parameters (call by reference)?\": [\n- [97, \"how-do-i-write-a-function-with-output-parameters-call-by-reference\"]\n+ \"Starting and ending a curses application\": [\n+ [104, \"starting-and-ending-a-curses-application\"]\n ],\n- \"How do you make a higher order function in Python?\": [\n- [97, \"how-do-you-make-a-higher-order-function-in-python\"]\n+ \"Windows and Pads\": [\n+ [104, \"windows-and-pads\"]\n ],\n- \"How do I copy an object in Python?\": [\n- [97, \"how-do-i-copy-an-object-in-python\"]\n+ \"Displaying Text\": [\n+ [104, \"displaying-text\"]\n ],\n- \"How can I find the methods or attributes of an object?\": [\n- [97, \"how-can-i-find-the-methods-or-attributes-of-an-object\"]\n+ \"Attributes and Color\": [\n+ [104, \"attributes-and-color\"]\n ],\n- \"How can my code discover the name of an object?\": [\n- [97, \"how-can-my-code-discover-the-name-of-an-object\"]\n+ \"User Input\": [\n+ [104, \"user-input\"]\n ],\n- \"What\\u2019s up with the comma operator\\u2019s precedence?\": [\n- [97, \"what-s-up-with-the-comma-operator-s-precedence\"]\n+ \"For More Information\": [\n+ [104, \"for-more-information\"]\n ],\n- \"Is there an equivalent of C\\u2019s \\u201c?:\\u201d ternary operator?\": [\n- [97, \"is-there-an-equivalent-of-c-s-ternary-operator\"]\n+ \"Annotations Best Practices\": [\n+ [100, \"annotations-best-practices\"]\n ],\n- \"Is it possible to write obfuscated one-liners in Python?\": [\n- [97, \"is-it-possible-to-write-obfuscated-one-liners-in-python\"]\n+ \"Accessing The Annotations Dict Of An Object In Python 3.10 And Newer\": [\n+ [100, \"accessing-the-annotations-dict-of-an-object-in-python-3-10-and-newer\"]\n ],\n- \"What does the slash(/) in the parameter list of a function mean?\": [\n- [97, \"what-does-the-slash-in-the-parameter-list-of-a-function-mean\"]\n+ \"Accessing The Annotations Dict Of An Object In Python 3.9 And Older\": [\n+ [100, \"accessing-the-annotations-dict-of-an-object-in-python-3-9-and-older\"]\n ],\n- \"Numbers and strings\": [\n- [97, \"numbers-and-strings\"]\n+ \"Manually Un-Stringizing Stringized Annotations\": [\n+ [100, \"manually-un-stringizing-stringized-annotations\"]\n ],\n- \"How do I specify hexadecimal and octal integers?\": [\n- [97, \"how-do-i-specify-hexadecimal-and-octal-integers\"]\n+ \"Best Practices For __annotations__ In Any Python Version\": [\n+ [100, \"best-practices-for-annotations-in-any-python-version\"]\n ],\n- \"Why does -22 // 10 return -3?\": [\n- [97, \"why-does-22-10-return-3\"]\n+ \"__annotations__ Quirks\": [\n+ [100, \"annotations-quirks\"]\n ],\n- \"How do I get int literal attribute instead of SyntaxError?\": [\n- [97, \"how-do-i-get-int-literal-attribute-instead-of-syntaxerror\"]\n+ \"Writing the Setup Script\": [\n+ [80, \"writing-the-setup-script\"]\n ],\n- \"How do I convert a string to a number?\": [\n- [97, \"how-do-i-convert-a-string-to-a-number\"]\n+ \"Listing whole packages\": [\n+ [80, \"listing-whole-packages\"]\n ],\n- \"How do I convert a number to a string?\": [\n- [97, \"how-do-i-convert-a-number-to-a-string\"]\n+ \"Listing individual modules\": [\n+ [80, \"listing-individual-modules\"]\n ],\n- \"How do I modify a string in place?\": [\n- [97, \"how-do-i-modify-a-string-in-place\"]\n+ \"Describing extension modules\": [\n+ [80, \"describing-extension-modules\"]\n ],\n- \"How do I use strings to call functions/methods?\": [\n- [97, \"how-do-i-use-strings-to-call-functions-methods\"]\n+ \"Extension names and packages\": [\n+ [80, \"extension-names-and-packages\"]\n ],\n- \"Is there an equivalent to Perl\\u2019s chomp() for removing trailing newlines from strings?\": [\n- [97, \"is-there-an-equivalent-to-perl-s-chomp-for-removing-trailing-newlines-from-strings\"]\n+ \"Extension source files\": [\n+ [80, \"extension-source-files\"]\n ],\n- \"Is there a scanf() or sscanf() equivalent?\": [\n- [97, \"is-there-a-scanf-or-sscanf-equivalent\"]\n+ \"Preprocessor options\": [\n+ [80, \"preprocessor-options\"]\n ],\n- \"What does \\u2018UnicodeDecodeError\\u2019 or \\u2018UnicodeEncodeError\\u2019 error mean?\": [\n- [97, \"what-does-unicodedecodeerror-or-unicodeencodeerror-error-mean\"]\n+ \"Library options\": [\n+ [80, \"library-options\"]\n ],\n- \"Can I end a raw string with an odd number of backslashes?\": [\n- [97, \"can-i-end-a-raw-string-with-an-odd-number-of-backslashes\"]\n+ \"Other options\": [\n+ [80, \"other-options\"]\n ],\n- \"Performance\": [\n- [97, \"performance\"],\n- [485, \"performance\"],\n- [273, \"performance\"],\n- [314, \"performance\"]\n+ \"Relationships between Distributions and Packages\": [\n+ [80, \"relationships-between-distributions-and-packages\"]\n ],\n- \"My program is too slow. How do I speed it up?\": [\n- [97, \"my-program-is-too-slow-how-do-i-speed-it-up\"]\n+ \"Installing Scripts\": [\n+ [80, \"installing-scripts\"]\n ],\n- \"What is the most efficient way to concatenate many strings together?\": [\n- [97, \"what-is-the-most-efficient-way-to-concatenate-many-strings-together\"]\n+ \"Installing Package Data\": [\n+ [80, \"installing-package-data\"]\n ],\n- \"Sequences (Tuples/Lists)\": [\n- [97, \"sequences-tuples-lists\"]\n+ \"Installing Additional Files\": [\n+ [80, \"installing-additional-files\"]\n ],\n- \"How do I convert between tuples and lists?\": [\n- [97, \"how-do-i-convert-between-tuples-and-lists\"]\n+ \"Additional meta-data\": [\n+ [80, \"additional-meta-data\"]\n ],\n- \"What\\u2019s a negative index?\": [\n- [97, \"what-s-a-negative-index\"]\n+ \"Debugging the setup script\": [\n+ [80, \"debugging-the-setup-script\"]\n ],\n- \"How do I iterate over a sequence in reverse order?\": [\n- [97, \"how-do-i-iterate-over-a-sequence-in-reverse-order\"]\n+ \"Building C and C++ Extensions on Windows\": [\n+ [89, \"building-c-and-c-extensions-on-windows\"]\n ],\n- \"How do you remove duplicates from a list?\": [\n- [97, \"how-do-you-remove-duplicates-from-a-list\"]\n+ \"A Cookbook Approach\": [\n+ [89, \"a-cookbook-approach\"]\n ],\n- \"How do you remove multiple items from a list\": [\n- [97, \"how-do-you-remove-multiple-items-from-a-list\"]\n+ \"Differences Between Unix and Windows\": [\n+ [89, \"differences-between-unix-and-windows\"]\n ],\n- \"How do you make an array in Python?\": [\n- [97, \"how-do-you-make-an-array-in-python\"]\n+ \"Using DLLs in Practice\": [\n+ [89, \"using-dlls-in-practice\"]\n ],\n- \"How do I create a multidimensional list?\": [\n- [97, \"how-do-i-create-a-multidimensional-list\"]\n+ \"Python on Windows FAQ\": [\n+ [98, \"python-on-windows-faq\"]\n ],\n- \"How do I apply a method or function to a sequence of objects?\": [\n- [97, \"how-do-i-apply-a-method-or-function-to-a-sequence-of-objects\"]\n+ \"How do I run a Python program under Windows?\": [\n+ [98, \"how-do-i-run-a-python-program-under-windows\"]\n ],\n- \"Why does a_tuple[i] += [\\u2018item\\u2019] raise an exception when the addition works?\": [\n- [97, \"why-does-a-tuple-i-item-raise-an-exception-when-the-addition-works\"]\n+ \"How do I make Python scripts executable?\": [\n+ [98, \"how-do-i-make-python-scripts-executable\"]\n ],\n- \"I want to do a complicated sort: can you do a Schwartzian Transform in Python?\": [\n- [97, \"i-want-to-do-a-complicated-sort-can-you-do-a-schwartzian-transform-in-python\"]\n+ \"Why does Python sometimes take so long to start?\": [\n+ [98, \"why-does-python-sometimes-take-so-long-to-start\"]\n ],\n- \"How can I sort one list by values from another list?\": [\n- [97, \"how-can-i-sort-one-list-by-values-from-another-list\"]\n+ \"How do I make an executable from a Python script?\": [\n+ [98, \"how-do-i-make-an-executable-from-a-python-script\"]\n ],\n- \"Objects\": [\n- [97, \"objects\"]\n+ \"Is a *.pyd file the same as a DLL?\": [\n+ [98, \"is-a-pyd-file-the-same-as-a-dll\"]\n ],\n- \"What is a class?\": [\n- [97, \"what-is-a-class\"]\n+ \"How can I embed Python into a Windows application?\": [\n+ [98, \"how-can-i-embed-python-into-a-windows-application\"]\n ],\n- \"What is a method?\": [\n- [97, \"what-is-a-method\"]\n+ \"How do I keep editors from inserting tabs into my Python source?\": [\n+ [98, \"how-do-i-keep-editors-from-inserting-tabs-into-my-python-source\"]\n ],\n- \"What is self?\": [\n- [97, \"what-is-self\"]\n+ \"How do I check for a keypress without blocking?\": [\n+ [98, \"how-do-i-check-for-a-keypress-without-blocking\"]\n ],\n- \"How do I check if an object is an instance of a given class or of a subclass of it?\": [\n- [97, \"how-do-i-check-if-an-object-is-an-instance-of-a-given-class-or-of-a-subclass-of-it\"]\n+ \"How do I solve the missing api-ms-win-crt-runtime-l1-1-0.dll error?\": [\n+ [98, \"how-do-i-solve-the-missing-api-ms-win-crt-runtime-l1-1-0-dll-error\"]\n ],\n- \"What is delegation?\": [\n- [97, \"what-is-delegation\"]\n+ \"Defining Extension Types: Tutorial\": [\n+ [88, \"defining-extension-types-tutorial\"]\n ],\n- \"How do I call a method defined in a base class from a derived class that extends it?\": [\n- [97, \"how-do-i-call-a-method-defined-in-a-base-class-from-a-derived-class-that-extends-it\"]\n+ \"The Basics\": [\n+ [88, \"the-basics\"]\n ],\n- \"How can I organize my code to make it easier to change the base class?\": [\n- [97, \"how-can-i-organize-my-code-to-make-it-easier-to-change-the-base-class\"]\n+ \"Adding data and methods to the Basic example\": [\n+ [88, \"adding-data-and-methods-to-the-basic-example\"]\n ],\n- \"How do I create static class data and static class methods?\": [\n- [97, \"how-do-i-create-static-class-data-and-static-class-methods\"]\n+ \"Providing finer control over data attributes\": [\n+ [88, \"providing-finer-control-over-data-attributes\"]\n ],\n- \"How can I overload constructors (or methods) in Python?\": [\n- [97, \"how-can-i-overload-constructors-or-methods-in-python\"]\n+ \"Supporting cyclic garbage collection\": [\n+ [88, \"supporting-cyclic-garbage-collection\"]\n ],\n- \"I try to use __spam and I get an error about _SomeClassName__spam.\": [\n- [97, \"i-try-to-use-spam-and-i-get-an-error-about-someclassname-spam\"]\n+ \"Subclassing other types\": [\n+ [88, \"subclassing-other-types\"]\n ],\n- \"My class defines __del__ but it is not called when I delete the object.\": [\n- [97, \"my-class-defines-del-but-it-is-not-called-when-i-delete-the-object\"]\n+ \"Creating a Source Distribution\": [\n+ [81, \"creating-a-source-distribution\"]\n ],\n- \"How do I get a list of all instances of a given class?\": [\n- [97, \"how-do-i-get-a-list-of-all-instances-of-a-given-class\"]\n+ \"Specifying the files to distribute\": [\n+ [81, \"specifying-the-files-to-distribute\"]\n ],\n- \"Why does the result of id() appear to be not unique?\": [\n- [97, \"why-does-the-result-of-id-appear-to-be-not-unique\"]\n+ \"Manifest-related options\": [\n+ [81, \"manifest-related-options\"]\n ],\n- \"When can I rely on identity tests with the is operator?\": [\n- [97, \"when-can-i-rely-on-identity-tests-with-the-is-operator\"]\n+ \"Distutils Examples\": [\n+ [75, \"distutils-examples\"]\n ],\n- \"How can a subclass control what data is stored in an immutable instance?\": [\n- [97, \"how-can-a-subclass-control-what-data-is-stored-in-an-immutable-instance\"]\n+ \"Pure Python distribution (by module)\": [\n+ [75, \"pure-python-distribution-by-module\"]\n ],\n- \"How do I cache method calls?\": [\n- [97, \"how-do-i-cache-method-calls\"]\n+ \"Pure Python distribution (by package)\": [\n+ [75, \"pure-python-distribution-by-package\"]\n ],\n- \"Modules\": [\n- [97, \"modules\"],\n- [443, \"modules\"],\n- [488, \"modules\"],\n- [465, \"modules\"],\n- [360, \"modules\"]\n+ \"Single extension module\": [\n+ [75, \"single-extension-module\"]\n ],\n- \"How do I create a .pyc file?\": [\n- [97, \"how-do-i-create-a-pyc-file\"]\n+ \"Checking a package\": [\n+ [75, \"checking-a-package\"]\n ],\n- \"How do I find the current module name?\": [\n- [97, \"how-do-i-find-the-current-module-name\"]\n+ \"Reading the metadata\": [\n+ [75, \"reading-the-metadata\"]\n ],\n- \"How can I have modules that mutually import each other?\": [\n- [97, \"how-can-i-have-modules-that-mutually-import-each-other\"]\n+ \"Embedding Python in Another Application\": [\n+ [84, \"embedding-python-in-another-application\"]\n ],\n- \"__import__(\\u2018x.y.z\\u2019) returns ; how do I get z?\": [\n- [97, \"import-x-y-z-returns-module-x-how-do-i-get-z\"]\n+ \"Very High Level Embedding\": [\n+ [84, \"very-high-level-embedding\"]\n ],\n- \"When I edit an imported module and reimport it, the changes don\\u2019t show up. Why does this happen?\": [\n- [97, \"when-i-edit-an-imported-module-and-reimport-it-the-changes-don-t-show-up-why-does-this-happen\"]\n+ \"Beyond Very High Level Embedding: An overview\": [\n+ [84, \"beyond-very-high-level-embedding-an-overview\"]\n ],\n- \"\\u201cWhy is Python Installed on my Computer?\\u201d FAQ\": [\n- [95, \"why-is-python-installed-on-my-computer-faq\"]\n+ \"Pure Embedding\": [\n+ [84, \"pure-embedding\"]\n ],\n- \"Why is Python installed on my machine?\": [\n- [95, \"why-is-python-installed-on-my-machine\"]\n+ \"Extending Embedded Python\": [\n+ [84, \"extending-embedded-python\"]\n ],\n- \"Can I delete Python?\": [\n- [95, \"can-i-delete-python\"]\n+ \"Embedding Python in C++\": [\n+ [84, \"embedding-python-in-c\"]\n+ ],\n+ \"Compiling and Linking under Unix-like systems\": [\n+ [84, \"compiling-and-linking-under-unix-like-systems\"]\n ],\n \"Command Reference\": [\n [73, \"command-reference\"]\n ],\n \"Installing modules: the install command family\": [\n [73, \"installing-modules-the-install-command-family\"]\n ],\n@@ -59163,48 +59303,25 @@\n ],\n \"Building C and C++ Extensions with distutils\": [\n [83, \"building-c-and-c-extensions-with-distutils\"]\n ],\n \"Distributing your extension modules\": [\n [83, \"distributing-your-extension-modules\"]\n ],\n- \"Curses Programming with Python\": [\n- [104, \"curses-programming-with-python\"]\n- ],\n- \"Abstract\": [\n- [104, null],\n- [100, null],\n- [112, null],\n- [105, \"abstract\"],\n- [116, null],\n- [117, null]\n- ],\n- \"What is curses?\": [\n- [104, \"what-is-curses\"]\n- ],\n- \"The Python curses module\": [\n- [104, \"the-python-curses-module\"]\n- ],\n- \"Starting and ending a curses application\": [\n- [104, \"starting-and-ending-a-curses-application\"]\n- ],\n- \"Windows and Pads\": [\n- [104, \"windows-and-pads\"]\n- ],\n- \"Displaying Text\": [\n- [104, \"displaying-text\"]\n+ \"Distributing Python Modules (Legacy version)\": [\n+ [77, \"distributing-python-modules-legacy-version\"]\n ],\n- \"Attributes and Color\": [\n- [104, \"attributes-and-color\"]\n+ \"Extending Distutils\": [\n+ [76, \"extending-distutils\"]\n ],\n- \"User Input\": [\n- [104, \"user-input\"]\n+ \"Integrating new commands\": [\n+ [76, \"integrating-new-commands\"]\n ],\n- \"For More Information\": [\n- [104, \"for-more-information\"]\n+ \"Adding new distribution types\": [\n+ [76, \"adding-new-distribution-types\"]\n ],\n \"Design and History FAQ\": [\n [90, \"design-and-history-faq\"]\n ],\n \"Why does Python use indentation for grouping of statements?\": [\n [90, \"why-does-python-use-indentation-for-grouping-of-statements\"]\n ],\n@@ -59285,100 +59402,16 @@\n ],\n \"Why are colons required for the if/while/def/class statements?\": [\n [90, \"why-are-colons-required-for-the-if-while-def-class-statements\"]\n ],\n \"Why does Python allow commas at the end of lists and tuples?\": [\n [90, \"why-does-python-allow-commas-at-the-end-of-lists-and-tuples\"]\n ],\n- \"Python on Windows FAQ\": [\n- [98, \"python-on-windows-faq\"]\n- ],\n- \"How do I run a Python program under Windows?\": [\n- [98, \"how-do-i-run-a-python-program-under-windows\"]\n- ],\n- \"How do I make Python scripts executable?\": [\n- [98, \"how-do-i-make-python-scripts-executable\"]\n- ],\n- \"Why does Python sometimes take so long to start?\": [\n- [98, \"why-does-python-sometimes-take-so-long-to-start\"]\n- ],\n- \"How do I make an executable from a Python script?\": [\n- [98, \"how-do-i-make-an-executable-from-a-python-script\"]\n- ],\n- \"Is a *.pyd file the same as a DLL?\": [\n- [98, \"is-a-pyd-file-the-same-as-a-dll\"]\n- ],\n- \"How can I embed Python into a Windows application?\": [\n- [98, \"how-can-i-embed-python-into-a-windows-application\"]\n- ],\n- \"How do I keep editors from inserting tabs into my Python source?\": [\n- [98, \"how-do-i-keep-editors-from-inserting-tabs-into-my-python-source\"]\n- ],\n- \"How do I check for a keypress without blocking?\": [\n- [98, \"how-do-i-check-for-a-keypress-without-blocking\"]\n- ],\n- \"How do I solve the missing api-ms-win-crt-runtime-l1-1-0.dll error?\": [\n- [98, \"how-do-i-solve-the-missing-api-ms-win-crt-runtime-l1-1-0-dll-error\"]\n- ],\n- \"The Python Package Index (PyPI)\": [\n- [79, \"the-python-package-index-pypi\"]\n- ],\n- \"Glossary\": [\n- [99, \"glossary\"]\n- ],\n- \"Distutils Examples\": [\n- [75, \"distutils-examples\"]\n- ],\n- \"Pure Python distribution (by module)\": [\n- [75, \"pure-python-distribution-by-module\"]\n- ],\n- \"Pure Python distribution (by package)\": [\n- [75, \"pure-python-distribution-by-package\"]\n- ],\n- \"Single extension module\": [\n- [75, \"single-extension-module\"]\n- ],\n- \"Checking a package\": [\n- [75, \"checking-a-package\"]\n- ],\n- \"Reading the metadata\": [\n- [75, \"reading-the-metadata\"]\n- ],\n- \"Graphic User Interface FAQ\": [\n- [93, \"graphic-user-interface-faq\"]\n- ],\n- \"General GUI Questions\": [\n- [93, \"general-gui-questions\"]\n- ],\n- \"What GUI toolkits exist for Python?\": [\n- [93, \"what-gui-toolkits-exist-for-python\"]\n- ],\n- \"Tkinter questions\": [\n- [93, \"tkinter-questions\"]\n- ],\n- \"How do I freeze Tkinter applications?\": [\n- [93, \"how-do-i-freeze-tkinter-applications\"]\n- ],\n- \"Can I have Tk events handled while waiting for I/O?\": [\n- [93, \"can-i-have-tk-events-handled-while-waiting-for-i-o\"]\n- ],\n- \"I can\\u2019t get key bindings to work in Tkinter: why?\": [\n- [93, \"i-can-t-get-key-bindings-to-work-in-tkinter-why\"]\n- ],\n- \"An Introduction to Distutils\": [\n- [78, \"an-introduction-to-distutils\"]\n- ],\n- \"Concepts & Terminology\": [\n- [78, \"concepts-terminology\"]\n- ],\n- \"General Python terminology\": [\n- [78, \"general-python-terminology\"]\n- ],\n- \"Distutils-specific terminology\": [\n- [78, \"distutils-specific-terminology\"]\n+ \"Porting Extension Modules to Python 3\": [\n+ [103, \"porting-extension-modules-to-python-3\"]\n ],\n \"Defining Extension Types: Assorted Topics\": [\n [87, \"defining-extension-types-assorted-topics\"]\n ],\n \"Finalization and De-allocation\": [\n [87, \"finalization-and-de-allocation\"]\n ],\n@@ -59402,794 +59435,423 @@\n ],\n \"Weak Reference Support\": [\n [87, \"weak-reference-support\"]\n ],\n \"More Suggestions\": [\n [87, \"more-suggestions\"]\n ],\n- \"Annotations Best Practices\": [\n- [100, \"annotations-best-practices\"]\n- ],\n- \"Accessing The Annotations Dict Of An Object In Python 3.10 And Newer\": [\n- [100, \"accessing-the-annotations-dict-of-an-object-in-python-3-10-and-newer\"]\n- ],\n- \"Accessing The Annotations Dict Of An Object In Python 3.9 And Older\": [\n- [100, \"accessing-the-annotations-dict-of-an-object-in-python-3-9-and-older\"]\n- ],\n- \"Manually Un-Stringizing Stringized Annotations\": [\n- [100, \"manually-un-stringizing-stringized-annotations\"]\n- ],\n- \"Best Practices For __annotations__ In Any Python Version\": [\n- [100, \"best-practices-for-annotations-in-any-python-version\"]\n- ],\n- \"__annotations__ Quirks\": [\n- [100, \"annotations-quirks\"]\n- ],\n- \"Writing the Setup Configuration File\": [\n- [74, \"writing-the-setup-configuration-file\"]\n- ],\n- \"Extending and Embedding the Python Interpreter\": [\n- [86, \"extending-and-embedding-the-python-interpreter\"]\n- ],\n- \"Recommended third party tools\": [\n- [86, \"recommended-third-party-tools\"]\n- ],\n- \"Creating extensions without third party tools\": [\n- [86, \"creating-extensions-without-third-party-tools\"]\n- ],\n- \"Embedding the CPython runtime in a larger application\": [\n- [86, \"embedding-the-cpython-runtime-in-a-larger-application\"]\n- ],\n- \"An introduction to the ipaddress module\": [\n- [111, \"an-introduction-to-the-ipaddress-module\"]\n- ],\n- \"Overview\": [\n- [111, null],\n- [42, \"overview\"],\n- [442, \"overview\"],\n- [266, \"overview\"],\n- [273, \"overview\"]\n- ],\n- \"Creating Address/Network/Interface objects\": [\n- [111, \"creating-address-network-interface-objects\"]\n- ],\n- \"A Note on IP Versions\": [\n- [111, \"a-note-on-ip-versions\"]\n- ],\n- \"IP Host Addresses\": [\n- [111, \"ip-host-addresses\"]\n- ],\n- \"Defining Networks\": [\n- [111, \"defining-networks\"]\n- ],\n- \"Host Interfaces\": [\n- [111, \"host-interfaces\"]\n- ],\n- \"Inspecting Address/Network/Interface Objects\": [\n- [111, \"inspecting-address-network-interface-objects\"]\n- ],\n- \"Networks as lists of Addresses\": [\n- [111, \"networks-as-lists-of-addresses\"]\n- ],\n- \"Comparisons\": [\n- [111, \"comparisons\"],\n- [106, \"comparisons\"],\n- [445, \"comparisons\"],\n- [360, \"comparisons\"]\n- ],\n- \"Using IP Addresses with other modules\": [\n- [111, \"using-ip-addresses-with-other-modules\"]\n- ],\n- \"Getting more detail when instance creation fails\": [\n- [111, \"getting-more-detail-when-instance-creation-fails\"]\n- ],\n- \"aifc \\u2014 Read and write AIFF and AIFC files\": [\n- [128, \"module-aifc\"]\n- ],\n- \"__main__ \\u2014 Top-level code environment\": [\n- [125, \"module-__main__\"]\n- ],\n- \"__name__ == '__main__'\": [\n- [125, \"name-main\"]\n- ],\n- \"What is the \\u201ctop-level code environment\\u201d?\": [\n- [125, \"what-is-the-top-level-code-environment\"]\n- ],\n- \"Idiomatic Usage\": [\n- [125, \"idiomatic-usage\"],\n- [125, \"id1\"]\n- ],\n- \"Packaging Considerations\": [\n- [125, \"packaging-considerations\"]\n- ],\n- \"__main__.py in Python Packages\": [\n- [125, \"main-py-in-python-packages\"]\n- ],\n- \"import __main__\": [\n- [125, \"import-main\"]\n- ],\n- \"Instrumenting CPython with DTrace and SystemTap\": [\n- [110, \"instrumenting-cpython-with-dtrace-and-systemtap\"]\n- ],\n- \"Enabling the static markers\": [\n- [110, \"enabling-the-static-markers\"]\n- ],\n- \"Static DTrace probes\": [\n- [110, \"static-dtrace-probes\"]\n- ],\n- \"Static SystemTap markers\": [\n- [110, \"static-systemtap-markers\"]\n- ],\n- \"Available static markers\": [\n- [110, \"available-static-markers\"]\n- ],\n- \"SystemTap Tapsets\": [\n- [110, \"systemtap-tapsets\"]\n- ],\n- \"Examples\": [\n- [110, \"examples\"],\n- [138, \"examples\"],\n- [62, \"examples\"],\n- [42, \"examples\"],\n- [422, \"examples\"],\n- [438, \"examples\"],\n- [436, \"examples\"],\n- [445, \"examples\"],\n- [397, \"examples\"],\n- [410, \"examples\"],\n- [393, \"examples\"],\n- [394, \"examples\"],\n- [348, \"examples\"],\n- [333, \"examples\"],\n- [319, \"examples\"],\n- [344, \"examples\"],\n- [357, \"examples\"],\n- [354, \"examples\"],\n- [375, \"examples\"],\n- [382, \"examples\"],\n- [371, \"examples\"],\n- [373, \"examples\"],\n- [363, \"examples\"],\n- [264, \"examples\"],\n- [249, \"examples\"],\n- [254, \"examples\"],\n- [265, \"examples\"],\n- [256, \"examples\"],\n- [257, \"examples\"],\n- [298, \"examples\"],\n- [285, \"examples\"],\n- [314, \"examples\"],\n- [286, \"examples\"],\n- [145, \"examples\"],\n- [146, \"examples\"],\n- [149, \"examples\"],\n- [160, \"examples\"],\n- [148, \"examples\"],\n- [186, \"examples\"],\n- [188, \"examples\"]\n- ],\n- \"How to port Python 2 Code to Python 3\": [\n- [115, \"how-to-port-python-2-code-to-python-3\"]\n- ],\n- \"Third-party guides\": [\n- [115, \"third-party-guides\"]\n- ],\n- \"asyncio \\u2014 Asynchronous I/O\": [\n- [135, \"module-asyncio\"]\n- ],\n- \"Hello World!\": [\n- [135, null]\n- ],\n- \"High-level APIs\": [\n- [135, null]\n- ],\n- \"Low-level APIs\": [\n- [135, null]\n- ],\n- \"Guides and Tutorials\": [\n- [135, null]\n- ],\n- \"Enum HOWTO\": [\n- [106, \"enum-howto\"]\n- ],\n- \"Programmatic access to enumeration members and their attributes\": [\n- [106, \"programmatic-access-to-enumeration-members-and-their-attributes\"]\n- ],\n- \"Duplicating enum members and values\": [\n- [106, \"duplicating-enum-members-and-values\"]\n- ],\n- \"Ensuring unique enumeration values\": [\n- [106, \"ensuring-unique-enumeration-values\"]\n- ],\n- \"Using automatic values\": [\n- [106, \"using-automatic-values\"]\n- ],\n- \"Iteration\": [\n- [106, \"iteration\"],\n- [274, \"iteration\"]\n- ],\n- \"Allowed members and attributes of enumerations\": [\n- [106, \"allowed-members-and-attributes-of-enumerations\"]\n- ],\n- \"Restricted Enum subclassing\": [\n- [106, \"restricted-enum-subclassing\"]\n- ],\n- \"Pickling\": [\n- [106, \"pickling\"]\n- ],\n- \"Functional API\": [\n- [106, \"functional-api\"],\n- [266, \"functional-api\"]\n- ],\n- \"Derived Enumerations\": [\n- [106, \"derived-enumerations\"]\n- ],\n- \"IntEnum\": [\n- [106, \"intenum\"]\n- ],\n- \"StrEnum\": [\n- [106, \"strenum\"]\n- ],\n- \"IntFlag\": [\n- [106, \"intflag\"]\n- ],\n- \"Flag\": [\n- [106, \"flag\"]\n- ],\n- \"Others\": [\n- [106, \"others\"]\n- ],\n- \"When to use __new__() vs. __init__()\": [\n- [106, \"when-to-use-new-vs-init\"]\n- ],\n- \"Finer Points\": [\n- [106, \"finer-points\"]\n- ],\n- \"Supported __dunder__ names\": [\n- [106, \"supported-dunder-names\"],\n- [225, \"supported-dunder-names\"]\n- ],\n- \"Supported _sunder_ names\": [\n- [106, \"supported-sunder-names\"],\n- [225, \"supported-sunder-names\"]\n- ],\n- \"_Private__names\": [\n- [106, \"private-names\"]\n- ],\n- \"Enum member type\": [\n- [106, \"enum-member-type\"]\n- ],\n- \"Creating members that are mixed with other data types\": [\n- [106, \"creating-members-that-are-mixed-with-other-data-types\"]\n- ],\n- \"Boolean value of Enum classes and members\": [\n- [106, \"boolean-value-of-enum-classes-and-members\"]\n- ],\n- \"Enum classes with methods\": [\n- [106, \"enum-classes-with-methods\"]\n- ],\n- \"Combining members of Flag\": [\n- [106, \"combining-members-of-flag\"]\n- ],\n- \"Flag and IntFlag minutia\": [\n- [106, \"flag-and-intflag-minutia\"]\n- ],\n- \"How are Enums and Flags different?\": [\n- [106, \"how-are-enums-and-flags-different\"]\n- ],\n- \"Enum Classes\": [\n- [106, \"enum-classes\"]\n- ],\n- \"Flag Classes\": [\n- [106, \"flag-classes\"]\n- ],\n- \"Enum Members (aka instances)\": [\n- [106, \"enum-members-aka-instances\"]\n- ],\n- \"Flag Members\": [\n- [106, \"flag-members\"]\n- ],\n- \"Enum Cookbook\": [\n- [106, \"enum-cookbook\"]\n- ],\n- \"Omitting values\": [\n- [106, \"omitting-values\"]\n- ],\n- \"Using auto\": [\n- [106, \"using-auto\"]\n- ],\n- \"Using object\": [\n- [106, \"using-object\"]\n- ],\n- \"Using a descriptive string\": [\n- [106, \"using-a-descriptive-string\"]\n- ],\n- \"Using a custom __new__()\": [\n- [106, \"using-a-custom-new\"]\n- ],\n- \"OrderedEnum\": [\n- [106, \"orderedenum\"]\n- ],\n- \"DuplicateFreeEnum\": [\n- [106, \"duplicatefreeenum\"]\n- ],\n- \"Planet\": [\n- [106, \"planet\"]\n- ],\n- \"TimePeriod\": [\n- [106, \"timeperiod\"]\n- ],\n- \"Subclassing EnumType\": [\n- [106, \"subclassing-enumtype\"]\n- ],\n- \"Isolating Extension Modules\": [\n- [112, \"isolating-extension-modules\"]\n- ],\n- \"Who should read this\": [\n- [112, \"who-should-read-this\"]\n- ],\n- \"Background\": [\n- [112, \"background\"],\n- [307, \"background\"]\n- ],\n- \"Enter Per-Module State\": [\n- [112, \"enter-per-module-state\"]\n- ],\n- \"Isolated Module Objects\": [\n- [112, \"isolated-module-objects\"]\n- ],\n- \"Surprising Edge Cases\": [\n- [112, \"surprising-edge-cases\"]\n- ],\n- \"Making Modules Safe with Multiple Interpreters\": [\n- [112, \"making-modules-safe-with-multiple-interpreters\"]\n- ],\n- \"Managing Global State\": [\n- [112, \"managing-global-state\"]\n- ],\n- \"Managing Per-Module State\": [\n- [112, \"managing-per-module-state\"]\n- ],\n- \"Opt-Out: Limiting to One Module Object per Process\": [\n- [112, \"opt-out-limiting-to-one-module-object-per-process\"]\n- ],\n- \"Module State Access from Functions\": [\n- [112, \"module-state-access-from-functions\"]\n+ \"Call Protocol\": [\n+ [10, \"call-protocol\"]\n ],\n- \"Heap Types\": [\n- [112, \"heap-types\"],\n- [62, \"heap-types\"]\n+ \"The tp_call Protocol\": [\n+ [10, \"the-tp-call-protocol\"]\n ],\n- \"Changing Static Types to Heap Types\": [\n- [112, \"changing-static-types-to-heap-types\"]\n+ \"The Vectorcall Protocol\": [\n+ [10, \"the-vectorcall-protocol\"]\n ],\n- \"Defining Heap Types\": [\n- [112, \"defining-heap-types\"]\n+ \"Recursion Control\": [\n+ [10, \"recursion-control\"],\n+ [23, \"recursion-control\"]\n ],\n- \"Garbage-Collection Protocol\": [\n- [112, \"garbage-collection-protocol\"]\n+ \"Vectorcall Support API\": [\n+ [10, \"vectorcall-support-api\"]\n ],\n- \"tp_traverse in Python 3.8 and lower\": [\n- [112, \"tp-traverse-in-python-3-8-and-lower\"]\n+ \"Object Calling API\": [\n+ [10, \"object-calling-api\"]\n ],\n- \"Delegating tp_traverse\": [\n- [112, \"delegating-tp-traverse\"]\n+ \"Call Support API\": [\n+ [10, \"call-support-api\"]\n ],\n- \"Defining tp_dealloc\": [\n- [112, \"defining-tp-dealloc\"]\n+ \"Frame Objects\": [\n+ [26, \"frame-objects\"]\n ],\n- \"Not overriding tp_free\": [\n- [112, \"not-overriding-tp-free\"]\n+ \"Buffer Protocol\": [\n+ [7, \"buffer-protocol\"]\n ],\n- \"Avoiding PyObject_New\": [\n- [112, \"avoiding-pyobject-new\"]\n+ \"Buffer structure\": [\n+ [7, \"buffer-structure\"]\n ],\n- \"Module State Access from Classes\": [\n- [112, \"module-state-access-from-classes\"]\n+ \"Buffer request types\": [\n+ [7, \"buffer-request-types\"]\n ],\n- \"Module State Access from Regular Methods\": [\n- [112, \"module-state-access-from-regular-methods\"]\n+ \"request-independent fields\": [\n+ [7, \"request-independent-fields\"]\n ],\n- \"Module State Access from Slot Methods, Getters and Setters\": [\n- [112, \"module-state-access-from-slot-methods-getters-and-setters\"]\n+ \"readonly, format\": [\n+ [7, \"readonly-format\"]\n ],\n- \"Lifetime of the Module State\": [\n- [112, \"lifetime-of-the-module-state\"]\n+ \"shape, strides, suboffsets\": [\n+ [7, \"shape-strides-suboffsets\"]\n ],\n- \"Open Issues\": [\n- [112, \"open-issues\"]\n+ \"contiguity requests\": [\n+ [7, \"contiguity-requests\"]\n ],\n- \"Per-Class Scope\": [\n- [112, \"per-class-scope\"]\n+ \"compound requests\": [\n+ [7, \"compound-requests\"]\n ],\n- \"Lossless Conversion to Heap Types\": [\n- [112, \"lossless-conversion-to-heap-types\"]\n+ \"Complex arrays\": [\n+ [7, \"complex-arrays\"]\n ],\n- \"_thread \\u2014 Low-level threading API\": [\n- [126, \"module-_thread\"]\n+ \"NumPy-style: shape and strides\": [\n+ [7, \"numpy-style-shape-and-strides\"]\n ],\n- \"Unicode HOWTO\": [\n- [119, \"unicode-howto\"]\n+ \"PIL-style: shape, strides and suboffsets\": [\n+ [7, \"pil-style-shape-strides-and-suboffsets\"]\n ],\n- \"Introduction to Unicode\": [\n- [119, \"introduction-to-unicode\"]\n+ \"Buffer-related functions\": [\n+ [7, \"buffer-related-functions\"]\n ],\n- \"Definitions\": [\n- [119, \"definitions\"]\n+ \"Importing Modules\": [\n+ [31, \"importing-modules\"],\n+ [295, \"importing-modules\"]\n ],\n- \"Encodings\": [\n- [119, \"encodings\"]\n+ \"Concrete Objects Layer\": [\n+ [16, \"concrete-objects-layer\"]\n ],\n- \"References\": [\n- [119, \"references\"],\n- [119, \"id2\"],\n- [119, \"id3\"],\n- [107, \"references\"],\n- [447, \"references\"]\n+ \"Fundamental Objects\": [\n+ [16, \"fundamental-objects\"]\n ],\n- \"Python\\u2019s Unicode Support\": [\n- [119, \"python-s-unicode-support\"]\n+ \"Numeric Objects\": [\n+ [16, \"numeric-objects\"]\n ],\n- \"The String Type\": [\n- [119, \"the-string-type\"]\n+ \"Sequence Objects\": [\n+ [16, \"sequence-objects\"]\n ],\n- \"Converting to Bytes\": [\n- [119, \"converting-to-bytes\"]\n+ \"Container Objects\": [\n+ [16, \"container-objects\"]\n ],\n- \"Unicode Literals in Python Source Code\": [\n- [119, \"unicode-literals-in-python-source-code\"]\n+ \"Function Objects\": [\n+ [16, \"function-objects\"],\n+ [27, \"function-objects\"],\n+ [327, \"function-objects\"]\n ],\n- \"Unicode Properties\": [\n- [119, \"unicode-properties\"]\n+ \"Other Objects\": [\n+ [16, \"other-objects\"]\n ],\n- \"Comparing Strings\": [\n- [119, \"comparing-strings\"]\n+ \"API and ABI Versioning\": [\n+ [4, \"api-and-abi-versioning\"]\n ],\n- \"Unicode Regular Expressions\": [\n- [119, \"unicode-regular-expressions\"]\n+ \"Descriptor Objects\": [\n+ [21, \"descriptor-objects\"]\n ],\n- \"Reading and Writing Unicode Data\": [\n- [119, \"reading-and-writing-unicode-data\"]\n+ \"Coroutine Objects\": [\n+ [19, \"coroutine-objects\"],\n+ [443, \"coroutine-objects\"]\n ],\n- \"Unicode filenames\": [\n- [119, \"unicode-filenames\"]\n+ \"Dictionary Objects\": [\n+ [22, \"dictionary-objects\"]\n ],\n- \"Tips for Writing Unicode-aware Programs\": [\n- [119, \"tips-for-writing-unicode-aware-programs\"]\n+ \"Floating Point Objects\": [\n+ [25, \"floating-point-objects\"]\n ],\n- \"Converting Between File Encodings\": [\n- [119, \"converting-between-file-encodings\"]\n+ \"Pack and Unpack functions\": [\n+ [25, \"pack-and-unpack-functions\"]\n ],\n- \"Files in an Unknown Encoding\": [\n- [119, \"files-in-an-unknown-encoding\"]\n+ \"Pack functions\": [\n+ [25, \"pack-functions\"]\n ],\n- \"Acknowledgements\": [\n- [119, \"acknowledgements\"],\n- [481, \"acknowledgements\"],\n- [484, \"acknowledgements\"],\n- [478, \"acknowledgements\"],\n- [479, \"acknowledgements\"],\n- [483, \"acknowledgements\"],\n- [482, \"acknowledgements\"],\n- [477, \"acknowledgements\"],\n- [480, \"acknowledgements\"],\n- [244, \"acknowledgements\"]\n+ \"Unpack functions\": [\n+ [25, \"unpack-functions\"]\n ],\n- \"Descriptor HowTo Guide\": [\n- [105, \"descriptor-howto-guide\"]\n+ \"Context Variables Objects\": [\n+ [17, \"context-variables-objects\"]\n ],\n- \"Primer\": [\n- [105, \"primer\"]\n+ \"Capsules\": [\n+ [11, \"capsules\"],\n+ [484, \"capsules\"]\n ],\n- \"Simple example: A descriptor that returns a constant\": [\n- [105, \"simple-example-a-descriptor-that-returns-a-constant\"]\n+ \"Complex Number Objects\": [\n+ [15, \"complex-number-objects\"]\n ],\n- \"Dynamic lookups\": [\n- [105, \"dynamic-lookups\"]\n+ \"Complex Numbers as C Structures\": [\n+ [15, \"complex-numbers-as-c-structures\"]\n ],\n- \"Managed attributes\": [\n- [105, \"managed-attributes\"]\n+ \"Complex Numbers as Python Objects\": [\n+ [15, \"complex-numbers-as-python-objects\"]\n ],\n- \"Customized names\": [\n- [105, \"customized-names\"]\n+ \"Generator Objects\": [\n+ [29, \"generator-objects\"]\n ],\n- \"Closing thoughts\": [\n- [105, \"closing-thoughts\"]\n+ \"Exception Handling\": [\n+ [23, \"exception-handling\"]\n ],\n- \"Complete Practical Example\": [\n- [105, \"complete-practical-example\"]\n+ \"Printing and clearing\": [\n+ [23, \"printing-and-clearing\"]\n ],\n- \"Validator class\": [\n- [105, \"validator-class\"]\n+ \"Raising exceptions\": [\n+ [23, \"raising-exceptions\"]\n ],\n- \"Custom validators\": [\n- [105, \"custom-validators\"]\n+ \"Issuing warnings\": [\n+ [23, \"issuing-warnings\"]\n ],\n- \"Practical application\": [\n- [105, \"practical-application\"]\n+ \"Querying the error indicator\": [\n+ [23, \"querying-the-error-indicator\"]\n ],\n- \"Technical Tutorial\": [\n- [105, \"technical-tutorial\"]\n+ \"Signal Handling\": [\n+ [23, \"signal-handling\"],\n+ [403, \"signal-handling\"]\n ],\n- \"Definition and introduction\": [\n- [105, \"definition-and-introduction\"]\n+ \"Exception Classes\": [\n+ [23, \"exception-classes\"]\n ],\n- \"Descriptor protocol\": [\n- [105, \"descriptor-protocol\"]\n+ \"Exception Objects\": [\n+ [23, \"exception-objects\"]\n ],\n- \"Overview of descriptor invocation\": [\n- [105, \"overview-of-descriptor-invocation\"]\n+ \"Unicode Exception Objects\": [\n+ [23, \"unicode-exception-objects\"]\n ],\n- \"Invocation from an instance\": [\n- [105, \"invocation-from-an-instance\"]\n+ \"Standard Exceptions\": [\n+ [23, \"standard-exceptions\"]\n ],\n- \"Invocation from a class\": [\n- [105, \"invocation-from-a-class\"]\n+ \"Standard Warning Categories\": [\n+ [23, \"standard-warning-categories\"]\n ],\n- \"Invocation from super\": [\n- [105, \"invocation-from-super\"]\n+ \"Boolean Objects\": [\n+ [6, \"boolean-objects\"]\n ],\n- \"Summary of invocation logic\": [\n- [105, \"summary-of-invocation-logic\"]\n+ \"String conversion and formatting\": [\n+ [18, \"string-conversion-and-formatting\"]\n ],\n- \"Automatic name notification\": [\n- [105, \"automatic-name-notification\"]\n+ \"Parsing arguments and building values\": [\n+ [5, \"parsing-arguments-and-building-values\"]\n ],\n- \"ORM example\": [\n- [105, \"orm-example\"]\n+ \"Parsing arguments\": [\n+ [5, \"parsing-arguments\"],\n+ [131, \"parsing-arguments\"],\n+ [307, \"parsing-arguments\"]\n ],\n- \"Pure Python Equivalents\": [\n- [105, \"pure-python-equivalents\"]\n+ \"Strings and buffers\": [\n+ [5, \"strings-and-buffers\"]\n ],\n- \"Properties\": [\n- [105, \"properties\"]\n+ \"Numbers\": [\n+ [5, \"numbers\"],\n+ [464, \"numbers\"]\n ],\n- \"Functions and methods\": [\n- [105, \"functions-and-methods\"]\n+ \"Other objects\": [\n+ [5, \"other-objects\"]\n ],\n- \"Kinds of methods\": [\n- [105, \"kinds-of-methods\"]\n+ \"API Functions\": [\n+ [5, \"api-functions\"]\n ],\n- \"Static methods\": [\n- [105, \"static-methods\"]\n+ \"Building values\": [\n+ [5, \"building-values\"]\n ],\n- \"Class methods\": [\n- [105, \"class-methods\"]\n+ \"Initialization, Finalization, and Threads\": [\n+ [33, \"initialization-finalization-and-threads\"]\n ],\n- \"Member objects and __slots__\": [\n- [105, \"member-objects-and-slots\"]\n+ \"Before Python Initialization\": [\n+ [33, \"before-python-initialization\"]\n ],\n- \"Exceptions\": [\n- [139, \"exceptions\"],\n- [136, \"exceptions\"],\n- [131, \"exceptions\"],\n- [35, \"exceptions\"],\n- [425, \"exceptions\"],\n- [444, \"exceptions\"],\n- [423, \"exceptions\"],\n- [428, \"exceptions\"],\n- [458, \"exceptions\"],\n- [334, \"exceptions\"],\n- [356, \"exceptions\"],\n- [357, \"exceptions\"],\n- [359, \"exceptions\"],\n- [353, \"exceptions\"],\n- [364, \"exceptions\"],\n- [277, \"exceptions\"],\n- [246, \"exceptions\"],\n- [307, \"exceptions\"],\n- [286, \"exceptions\"],\n- [146, \"exceptions\"],\n- [180, \"exceptions\"]\n+ \"Global configuration variables\": [\n+ [33, \"global-configuration-variables\"]\n ],\n- \"Python HOWTOs\": [\n- [109, \"python-howtos\"]\n+ \"Initializing and finalizing the interpreter\": [\n+ [33, \"initializing-and-finalizing-the-interpreter\"]\n ],\n- \"Data Compression and Archiving\": [\n- [130, \"data-compression-and-archiving\"]\n+ \"Process-wide parameters\": [\n+ [33, \"process-wide-parameters\"]\n ],\n- \"Logging HOWTO\": [\n- [113, \"logging-howto\"]\n+ \"Thread State and the Global Interpreter Lock\": [\n+ [33, \"thread-state-and-the-global-interpreter-lock\"]\n ],\n- \"Basic Logging Tutorial\": [\n- [113, \"basic-logging-tutorial\"]\n+ \"Releasing the GIL from extension code\": [\n+ [33, \"releasing-the-gil-from-extension-code\"]\n ],\n- \"When to use logging\": [\n- [113, \"when-to-use-logging\"]\n+ \"Non-Python created threads\": [\n+ [33, \"non-python-created-threads\"]\n ],\n- \"A simple example\": [\n- [113, \"a-simple-example\"]\n+ \"Cautions about fork()\": [\n+ [33, \"cautions-about-fork\"]\n ],\n- \"Logging to a file\": [\n- [113, \"logging-to-a-file\"]\n+ \"High-level API\": [\n+ [33, \"high-level-api\"]\n ],\n- \"Logging variable data\": [\n- [113, \"logging-variable-data\"]\n+ \"Low-level API\": [\n+ [33, \"low-level-api\"]\n ],\n- \"Changing the format of displayed messages\": [\n- [113, \"changing-the-format-of-displayed-messages\"]\n+ \"Sub-interpreter support\": [\n+ [33, \"sub-interpreter-support\"]\n ],\n- \"Displaying the date/time in messages\": [\n- [113, \"displaying-the-date-time-in-messages\"]\n+ \"Bugs and caveats\": [\n+ [33, \"bugs-and-caveats\"]\n ],\n- \"Next Steps\": [\n- [113, \"next-steps\"]\n+ \"Asynchronous Notifications\": [\n+ [33, \"asynchronous-notifications\"]\n ],\n- \"Advanced Logging Tutorial\": [\n- [113, \"advanced-logging-tutorial\"]\n+ \"Profiling and Tracing\": [\n+ [33, \"profiling-and-tracing\"]\n ],\n- \"Logging Flow\": [\n- [113, \"logging-flow\"]\n+ \"Advanced Debugger Support\": [\n+ [33, \"advanced-debugger-support\"]\n ],\n- \"Loggers\": [\n- [113, \"loggers\"]\n+ \"Thread Local Storage Support\": [\n+ [33, \"thread-local-storage-support\"]\n ],\n- \"Handlers\": [\n- [113, \"handlers\"]\n+ \"Thread Specific Storage (TSS) API\": [\n+ [33, \"thread-specific-storage-tss-api\"]\n ],\n- \"Formatters\": [\n- [113, \"formatters\"]\n+ \"Dynamic Allocation\": [\n+ [33, \"dynamic-allocation\"]\n ],\n- \"Configuring Logging\": [\n- [113, \"configuring-logging\"]\n+ \"Methods\": [\n+ [33, \"methods\"],\n+ [360, \"methods\"],\n+ [311, \"methods\"],\n+ [303, \"methods\"]\n ],\n- \"What happens if no configuration is provided\": [\n- [113, \"what-happens-if-no-configuration-is-provided\"]\n+ \"Thread Local Storage (TLS) API\": [\n+ [33, \"thread-local-storage-tls-api\"]\n ],\n- \"Configuring Logging for a Library\": [\n- [113, \"configuring-logging-for-a-library\"]\n+ \"Cell Objects\": [\n+ [12, \"cell-objects\"]\n ],\n- \"Logging Levels\": [\n- [113, \"logging-levels\"],\n- [282, \"logging-levels\"]\n+ \"Bytes Objects\": [\n+ [9, \"bytes-objects\"],\n+ [360, \"bytes-objects\"]\n ],\n- \"Custom Levels\": [\n- [113, \"custom-levels\"]\n+ \"PyHash API\": [\n+ [30, \"pyhash-api\"]\n ],\n- \"Useful Handlers\": [\n- [113, \"useful-handlers\"]\n+ \"Supporting Cyclic Garbage Collection\": [\n+ [28, \"supporting-cyclic-garbage-collection\"]\n ],\n- \"Exceptions raised during logging\": [\n- [113, \"exceptions-raised-during-logging\"]\n+ \"Controlling the Garbage Collector State\": [\n+ [28, \"controlling-the-garbage-collector-state\"]\n ],\n- \"Using arbitrary objects as messages\": [\n- [113, \"using-arbitrary-objects-as-messages\"]\n+ \"Codec registry and support functions\": [\n+ [14, \"codec-registry-and-support-functions\"]\n ],\n- \"Optimization\": [\n- [113, \"optimization\"]\n+ \"Codec lookup API\": [\n+ [14, \"codec-lookup-api\"]\n ],\n- \"Installing Python Modules (Legacy version)\": [\n- [121, \"installing-python-modules-legacy-version\"]\n+ \"Registry API for Unicode encoding error handlers\": [\n+ [14, \"registry-api-for-unicode-encoding-error-handlers\"]\n ],\n- \"Introduction\": [\n- [121, \"introduction\"],\n- [107, \"introduction\"],\n- [116, \"introduction\"],\n- [120, \"introduction\"],\n- [35, \"introduction\"],\n- [449, \"introduction\"],\n- [478, \"introduction\"],\n- [479, \"introduction\"],\n- [477, \"introduction\"],\n- [468, \"introduction\"],\n- [399, \"introduction\"],\n- [344, \"introduction\"],\n- [272, \"introduction\"],\n- [265, \"introduction\"],\n- [298, \"introduction\"],\n- [164, \"introduction\"]\n+ \"About these documents\": [\n+ [0, \"about-these-documents\"]\n ],\n- \"Distutils based source distributions\": [\n- [121, \"distutils-based-source-distributions\"]\n+ \"Contributors to the Python Documentation\": [\n+ [0, \"contributors-to-the-python-documentation\"]\n ],\n- \"Standard Build and Install\": [\n- [121, \"standard-build-and-install\"]\n+ \"Python Initialization Configuration\": [\n+ [34, \"python-initialization-configuration\"]\n ],\n- \"Platform variations\": [\n- [121, \"platform-variations\"]\n+ \"Example\": [\n+ [34, \"example\"],\n+ [131, \"example\"],\n+ [428, \"example\"],\n+ [428, \"id3\"],\n+ [417, \"example\"],\n+ [413, \"example\"],\n+ [324, \"example\"],\n+ [335, \"example\"],\n+ [329, \"example\"],\n+ [322, \"example\"],\n+ [345, \"example\"],\n+ [376, \"example\"],\n+ [353, \"example\"],\n+ [314, \"example\"],\n+ [258, \"example\"],\n+ [228, \"example\"],\n+ [185, \"example\"]\n ],\n- \"Splitting the job up\": [\n- [121, \"splitting-the-job-up\"]\n+ \"PyWideStringList\": [\n+ [34, \"pywidestringlist\"]\n ],\n- \"How building works\": [\n- [121, \"how-building-works\"]\n+ \"PyStatus\": [\n+ [34, \"pystatus\"]\n ],\n- \"How installation works\": [\n- [121, \"how-installation-works\"]\n+ \"PyPreConfig\": [\n+ [34, \"pypreconfig\"]\n ],\n- \"Alternate Installation\": [\n- [121, \"alternate-installation\"]\n+ \"Preinitialize Python with PyPreConfig\": [\n+ [34, \"preinitialize-python-with-pypreconfig\"]\n ],\n- \"Alternate installation: the user scheme\": [\n- [121, \"alternate-installation-the-user-scheme\"]\n+ \"PyConfig\": [\n+ [34, \"pyconfig\"]\n ],\n- \"Alternate installation: the home scheme\": [\n- [121, \"alternate-installation-the-home-scheme\"]\n+ \"Initialization with PyConfig\": [\n+ [34, \"initialization-with-pyconfig\"]\n ],\n- \"Alternate installation: Unix (the prefix scheme)\": [\n- [121, \"alternate-installation-unix-the-prefix-scheme\"]\n+ \"Isolated Configuration\": [\n+ [34, \"isolated-configuration\"]\n ],\n- \"Alternate installation: Windows (the prefix scheme)\": [\n- [121, \"alternate-installation-windows-the-prefix-scheme\"]\n+ \"Python Configuration\": [\n+ [34, \"python-configuration\"]\n ],\n- \"Custom Installation\": [\n- [121, \"custom-installation\"]\n+ \"Python Path Configuration\": [\n+ [34, \"python-path-configuration\"]\n ],\n- \"Modifying Python\\u2019s Search Path\": [\n- [121, \"modifying-python-s-search-path\"]\n+ \"Py_RunMain()\": [\n+ [34, \"py-runmain\"]\n ],\n- \"Distutils Configuration Files\": [\n- [121, \"distutils-configuration-files\"]\n+ \"Py_GetArgcArgv()\": [\n+ [34, \"py-getargcargv\"]\n ],\n- \"Location and names of config files\": [\n- [121, \"location-and-names-of-config-files\"]\n+ \"Multi-Phase Initialization Private Provisional API\": [\n+ [34, \"multi-phase-initialization-private-provisional-api\"]\n ],\n- \"Syntax of config files\": [\n- [121, \"syntax-of-config-files\"]\n+ \"DateTime Objects\": [\n+ [20, \"datetime-objects\"],\n+ [434, \"datetime-objects\"]\n ],\n- \"Building Extensions: Tips and Tricks\": [\n- [121, \"building-extensions-tips-and-tricks\"]\n+ \"Allocating Objects on the Heap\": [\n+ [3, \"allocating-objects-on-the-heap\"]\n ],\n- \"Tweaking compiler/linker flags\": [\n- [121, \"tweaking-compiler-linker-flags\"]\n+ \"Byte Array Objects\": [\n+ [8, \"byte-array-objects\"]\n ],\n- \"Using non-Microsoft compilers on Windows\": [\n- [121, \"using-non-microsoft-compilers-on-windows\"]\n+ \"Type check macros\": [\n+ [8, \"type-check-macros\"]\n ],\n- \"Borland/CodeGear C++\": [\n- [121, \"borland-codegear-c\"]\n+ \"Direct API functions\": [\n+ [8, \"direct-api-functions\"]\n ],\n- \"GNU C / Cygwin / MinGW\": [\n- [121, \"gnu-c-cygwin-mingw\"]\n+ \"Macros\": [\n+ [8, \"macros\"]\n ],\n- \"Older Versions of Python and MinGW\": [\n- [121, \"older-versions-of-python-and-mingw\"]\n+ \"Python/C API Reference Manual\": [\n+ [32, \"python-c-api-reference-manual\"]\n ],\n- \"__future__ \\u2014 Future statement definitions\": [\n- [124, \"module-__future__\"]\n+ \"File Objects\": [\n+ [24, \"file-objects\"]\n ],\n- \"Module Contents\": [\n- [124, \"module-contents\"],\n- [425, \"module-contents\"],\n- [334, \"module-contents\"],\n- [225, \"module-contents\"],\n- [188, \"module-contents\"]\n+ \"Dealing with Bugs\": [\n+ [1, \"dealing-with-bugs\"]\n ],\n- \"2to3 \\u2014 Automated Python 2 to 3 code translation\": [\n- [123, \"to3-automated-python-2-to-3-code-translation\"]\n+ \"Documentation bugs\": [\n+ [1, \"documentation-bugs\"]\n ],\n- \"Using 2to3\": [\n- [123, \"using-2to3\"]\n+ \"Using the Python issue tracker\": [\n+ [1, \"using-the-python-issue-tracker\"]\n ],\n- \"Fixers\": [\n- [123, \"fixers\"]\n+ \"Getting started contributing to Python yourself\": [\n+ [1, \"getting-started-contributing-to-python-yourself\"]\n ],\n- \"lib2to3 \\u2014 2to3\\u2019s library\": [\n- [123, \"module-lib2to3\"]\n+ \"Abstract Objects Layer\": [\n+ [2, \"abstract-objects-layer\"]\n ],\n- \"High-level API Index\": [\n- [136, \"high-level-api-index\"]\n+ \"Code Objects\": [\n+ [13, \"code-objects\"],\n+ [360, \"code-objects\"]\n ],\n- \"Tasks\": [\n- [136, \"tasks\"]\n+ \"asyncio \\u2014 Asynchronous I/O\": [\n+ [135, \"module-asyncio\"]\n ],\n- \"Queues\": [\n- [136, \"queues\"],\n- [146, \"queues\"]\n+ \"Hello World!\": [\n+ [135, null]\n ],\n- \"Subprocesses\": [\n- [136, \"subprocesses\"],\n- [149, \"subprocesses\"]\n+ \"High-level APIs\": [\n+ [135, null]\n ],\n- \"Streams\": [\n- [136, \"streams\"],\n- [148, \"streams\"]\n+ \"Low-level APIs\": [\n+ [135, null]\n ],\n- \"Synchronization\": [\n- [136, \"synchronization\"]\n+ \"Guides and Tutorials\": [\n+ [135, null]\n ],\n \"Logging Cookbook\": [\n [114, \"logging-cookbook\"]\n ],\n \"Using logging in multiple modules\": [\n [114, \"using-logging-in-multiple-modules\"]\n ],\n@@ -60341,14 +60003,109 @@\n ],\n \"Creating a lot of loggers\": [\n [114, \"creating-a-lot-of-loggers\"]\n ],\n \"Other resources\": [\n [114, \"other-resources\"]\n ],\n+ \"Python HOWTOs\": [\n+ [109, \"python-howtos\"]\n+ ],\n+ \"__main__ \\u2014 Top-level code environment\": [\n+ [125, \"module-__main__\"]\n+ ],\n+ \"__name__ == '__main__'\": [\n+ [125, \"name-main\"]\n+ ],\n+ \"What is the \\u201ctop-level code environment\\u201d?\": [\n+ [125, \"what-is-the-top-level-code-environment\"]\n+ ],\n+ \"Idiomatic Usage\": [\n+ [125, \"idiomatic-usage\"],\n+ [125, \"id1\"]\n+ ],\n+ \"Packaging Considerations\": [\n+ [125, \"packaging-considerations\"]\n+ ],\n+ \"__main__.py in Python Packages\": [\n+ [125, \"main-py-in-python-packages\"]\n+ ],\n+ \"import __main__\": [\n+ [125, \"import-main\"]\n+ ],\n+ \"Logging HOWTO\": [\n+ [113, \"logging-howto\"]\n+ ],\n+ \"Basic Logging Tutorial\": [\n+ [113, \"basic-logging-tutorial\"]\n+ ],\n+ \"When to use logging\": [\n+ [113, \"when-to-use-logging\"]\n+ ],\n+ \"A simple example\": [\n+ [113, \"a-simple-example\"]\n+ ],\n+ \"Logging to a file\": [\n+ [113, \"logging-to-a-file\"]\n+ ],\n+ \"Logging variable data\": [\n+ [113, \"logging-variable-data\"]\n+ ],\n+ \"Changing the format of displayed messages\": [\n+ [113, \"changing-the-format-of-displayed-messages\"]\n+ ],\n+ \"Displaying the date/time in messages\": [\n+ [113, \"displaying-the-date-time-in-messages\"]\n+ ],\n+ \"Next Steps\": [\n+ [113, \"next-steps\"]\n+ ],\n+ \"Advanced Logging Tutorial\": [\n+ [113, \"advanced-logging-tutorial\"]\n+ ],\n+ \"Logging Flow\": [\n+ [113, \"logging-flow\"]\n+ ],\n+ \"Loggers\": [\n+ [113, \"loggers\"]\n+ ],\n+ \"Handlers\": [\n+ [113, \"handlers\"]\n+ ],\n+ \"Formatters\": [\n+ [113, \"formatters\"]\n+ ],\n+ \"Configuring Logging\": [\n+ [113, \"configuring-logging\"]\n+ ],\n+ \"What happens if no configuration is provided\": [\n+ [113, \"what-happens-if-no-configuration-is-provided\"]\n+ ],\n+ \"Configuring Logging for a Library\": [\n+ [113, \"configuring-logging-for-a-library\"]\n+ ],\n+ \"Logging Levels\": [\n+ [113, \"logging-levels\"],\n+ [282, \"logging-levels\"]\n+ ],\n+ \"Custom Levels\": [\n+ [113, \"custom-levels\"]\n+ ],\n+ \"Useful Handlers\": [\n+ [113, \"useful-handlers\"]\n+ ],\n+ \"Exceptions raised during logging\": [\n+ [113, \"exceptions-raised-during-logging\"]\n+ ],\n+ \"Using arbitrary objects as messages\": [\n+ [113, \"using-arbitrary-objects-as-messages\"]\n+ ],\n+ \"Optimization\": [\n+ [113, \"optimization\"]\n+ ],\n \"Event Loop\": [\n [138, \"event-loop\"]\n ],\n \"Event Loop Methods\": [\n [138, \"event-loop-methods\"],\n [142, \"event-loop-methods\"]\n ],\n@@ -60409,148 +60166,389 @@\n \"Server Objects\": [\n [138, \"server-objects\"],\n [354, \"server-objects\"]\n ],\n \"Event Loop Implementations\": [\n [138, \"event-loop-implementations\"]\n ],\n+ \"Examples\": [\n+ [138, \"examples\"],\n+ [110, \"examples\"],\n+ [62, \"examples\"],\n+ [42, \"examples\"],\n+ [438, \"examples\"],\n+ [445, \"examples\"],\n+ [436, \"examples\"],\n+ [422, \"examples\"],\n+ [393, \"examples\"],\n+ [394, \"examples\"],\n+ [410, \"examples\"],\n+ [397, \"examples\"],\n+ [344, \"examples\"],\n+ [348, \"examples\"],\n+ [319, \"examples\"],\n+ [333, \"examples\"],\n+ [371, \"examples\"],\n+ [382, \"examples\"],\n+ [373, \"examples\"],\n+ [375, \"examples\"],\n+ [363, \"examples\"],\n+ [357, \"examples\"],\n+ [354, \"examples\"],\n+ [298, \"examples\"],\n+ [285, \"examples\"],\n+ [314, \"examples\"],\n+ [286, \"examples\"],\n+ [249, \"examples\"],\n+ [257, \"examples\"],\n+ [265, \"examples\"],\n+ [254, \"examples\"],\n+ [256, \"examples\"],\n+ [264, \"examples\"],\n+ [186, \"examples\"],\n+ [188, \"examples\"],\n+ [149, \"examples\"],\n+ [145, \"examples\"],\n+ [148, \"examples\"],\n+ [146, \"examples\"],\n+ [160, \"examples\"]\n+ ],\n \"Hello World with call_soon()\": [\n [138, \"hello-world-with-call-soon\"]\n ],\n \"Display the current date with call_later()\": [\n [138, \"display-the-current-date-with-call-later\"]\n ],\n \"Watch a file descriptor for read events\": [\n [138, \"watch-a-file-descriptor-for-read-events\"]\n ],\n \"Set signal handlers for SIGINT and SIGTERM\": [\n [138, \"set-signal-handlers-for-sigint-and-sigterm\"]\n ],\n- \"abc \\u2014 Abstract Base Classes\": [\n- [127, \"module-abc\"]\n+ \"Exceptions\": [\n+ [139, \"exceptions\"],\n+ [131, \"exceptions\"],\n+ [136, \"exceptions\"],\n+ [35, \"exceptions\"],\n+ [444, \"exceptions\"],\n+ [425, \"exceptions\"],\n+ [428, \"exceptions\"],\n+ [423, \"exceptions\"],\n+ [458, \"exceptions\"],\n+ [334, \"exceptions\"],\n+ [353, \"exceptions\"],\n+ [356, \"exceptions\"],\n+ [357, \"exceptions\"],\n+ [364, \"exceptions\"],\n+ [359, \"exceptions\"],\n+ [307, \"exceptions\"],\n+ [286, \"exceptions\"],\n+ [277, \"exceptions\"],\n+ [246, \"exceptions\"],\n+ [180, \"exceptions\"],\n+ [146, \"exceptions\"]\n ],\n- \"Debugging C API extensions and CPython Internals with GDB\": [\n- [108, \"debugging-c-api-extensions-and-cpython-internals-with-gdb\"]\n+ \"Installing Python Modules (Legacy version)\": [\n+ [121, \"installing-python-modules-legacy-version\"]\n ],\n- \"Prerequisites\": [\n- [108, \"prerequisites\"]\n+ \"Introduction\": [\n+ [121, \"introduction\"],\n+ [116, \"introduction\"],\n+ [120, \"introduction\"],\n+ [107, \"introduction\"],\n+ [35, \"introduction\"],\n+ [449, \"introduction\"],\n+ [477, \"introduction\"],\n+ [478, \"introduction\"],\n+ [468, \"introduction\"],\n+ [479, \"introduction\"],\n+ [399, \"introduction\"],\n+ [344, \"introduction\"],\n+ [298, \"introduction\"],\n+ [272, \"introduction\"],\n+ [265, \"introduction\"],\n+ [164, \"introduction\"]\n ],\n- \"Setup with Python built from source\": [\n- [108, \"setup-with-python-built-from-source\"]\n+ \"Distutils based source distributions\": [\n+ [121, \"distutils-based-source-distributions\"]\n ],\n- \"Setup for Python from a Linux distro\": [\n- [108, \"setup-for-python-from-a-linux-distro\"]\n+ \"Standard Build and Install\": [\n+ [121, \"standard-build-and-install\"]\n ],\n- \"Using the Debug build and Development mode\": [\n- [108, \"using-the-debug-build-and-development-mode\"]\n+ \"Platform variations\": [\n+ [121, \"platform-variations\"]\n ],\n- \"Using the python-gdb extension\": [\n- [108, \"using-the-python-gdb-extension\"]\n+ \"Splitting the job up\": [\n+ [121, \"splitting-the-job-up\"]\n ],\n- \"Pretty-printers\": [\n- [108, \"pretty-printers\"]\n+ \"How building works\": [\n+ [121, \"how-building-works\"]\n ],\n- \"py-list\": [\n- [108, \"py-list\"]\n+ \"How installation works\": [\n+ [121, \"how-installation-works\"]\n ],\n- \"py-up and py-down\": [\n- [108, \"py-up-and-py-down\"]\n+ \"Alternate Installation\": [\n+ [121, \"alternate-installation\"]\n ],\n- \"py-bt\": [\n- [108, \"py-bt\"]\n+ \"Alternate installation: the user scheme\": [\n+ [121, \"alternate-installation-the-user-scheme\"]\n ],\n- \"py-print\": [\n- [108, \"py-print\"]\n+ \"Alternate installation: the home scheme\": [\n+ [121, \"alternate-installation-the-home-scheme\"]\n ],\n- \"py-locals\": [\n- [108, \"py-locals\"]\n+ \"Alternate installation: Unix (the prefix scheme)\": [\n+ [121, \"alternate-installation-unix-the-prefix-scheme\"]\n ],\n- \"Use with GDB commands\": [\n- [108, \"use-with-gdb-commands\"]\n+ \"Alternate installation: Windows (the prefix scheme)\": [\n+ [121, \"alternate-installation-windows-the-prefix-scheme\"]\n ],\n- \"Functional Programming HOWTO\": [\n- [107, \"functional-programming-howto\"]\n+ \"Custom Installation\": [\n+ [121, \"custom-installation\"]\n ],\n- \"Formal provability\": [\n- [107, \"formal-provability\"]\n+ \"Modifying Python\\u2019s Search Path\": [\n+ [121, \"modifying-python-s-search-path\"]\n ],\n- \"Modularity\": [\n- [107, \"modularity\"]\n+ \"Distutils Configuration Files\": [\n+ [121, \"distutils-configuration-files\"]\n ],\n- \"Ease of debugging and testing\": [\n- [107, \"ease-of-debugging-and-testing\"]\n+ \"Location and names of config files\": [\n+ [121, \"location-and-names-of-config-files\"]\n ],\n- \"Composability\": [\n- [107, \"composability\"]\n+ \"Syntax of config files\": [\n+ [121, \"syntax-of-config-files\"]\n ],\n- \"Iterators\": [\n- [107, \"iterators\"],\n- [455, \"iterators\"]\n+ \"Building Extensions: Tips and Tricks\": [\n+ [121, \"building-extensions-tips-and-tricks\"]\n ],\n- \"Data Types That Support Iterators\": [\n- [107, \"data-types-that-support-iterators\"]\n+ \"Tweaking compiler/linker flags\": [\n+ [121, \"tweaking-compiler-linker-flags\"]\n ],\n- \"Generator expressions and list comprehensions\": [\n- [107, \"generator-expressions-and-list-comprehensions\"]\n+ \"Using non-Microsoft compilers on Windows\": [\n+ [121, \"using-non-microsoft-compilers-on-windows\"]\n ],\n- \"Generators\": [\n- [107, \"generators\"],\n- [455, \"generators\"]\n+ \"Borland/CodeGear C++\": [\n+ [121, \"borland-codegear-c\"]\n ],\n- \"Passing values into a generator\": [\n- [107, \"passing-values-into-a-generator\"]\n+ \"GNU C / Cygwin / MinGW\": [\n+ [121, \"gnu-c-cygwin-mingw\"]\n ],\n- \"Built-in functions\": [\n- [107, \"built-in-functions\"],\n- [443, \"built-in-functions\"]\n+ \"Older Versions of Python and MinGW\": [\n+ [121, \"older-versions-of-python-and-mingw\"]\n ],\n- \"The itertools module\": [\n- [107, \"the-itertools-module\"]\n+ \"How to port Python 2 Code to Python 3\": [\n+ [115, \"how-to-port-python-2-code-to-python-3\"]\n ],\n- \"Creating new iterators\": [\n- [107, \"creating-new-iterators\"]\n+ \"Third-party guides\": [\n+ [115, \"third-party-guides\"]\n ],\n- \"Calling functions on elements\": [\n- [107, \"calling-functions-on-elements\"]\n+ \"Enum HOWTO\": [\n+ [106, \"enum-howto\"]\n ],\n- \"Selecting elements\": [\n- [107, \"selecting-elements\"]\n+ \"Programmatic access to enumeration members and their attributes\": [\n+ [106, \"programmatic-access-to-enumeration-members-and-their-attributes\"]\n ],\n- \"Combinatoric functions\": [\n- [107, \"combinatoric-functions\"]\n+ \"Duplicating enum members and values\": [\n+ [106, \"duplicating-enum-members-and-values\"]\n ],\n- \"Grouping elements\": [\n- [107, \"grouping-elements\"]\n+ \"Ensuring unique enumeration values\": [\n+ [106, \"ensuring-unique-enumeration-values\"]\n ],\n- \"The functools module\": [\n- [107, \"the-functools-module\"]\n+ \"Using automatic values\": [\n+ [106, \"using-automatic-values\"]\n ],\n- \"The operator module\": [\n- [107, \"the-operator-module\"]\n+ \"Iteration\": [\n+ [106, \"iteration\"],\n+ [274, \"iteration\"]\n ],\n- \"Small functions and the lambda expression\": [\n- [107, \"small-functions-and-the-lambda-expression\"]\n+ \"Comparisons\": [\n+ [106, \"comparisons\"],\n+ [111, \"comparisons\"],\n+ [445, \"comparisons\"],\n+ [360, \"comparisons\"]\n ],\n- \"Revision History and Acknowledgements\": [\n- [107, \"revision-history-and-acknowledgements\"]\n+ \"Allowed members and attributes of enumerations\": [\n+ [106, \"allowed-members-and-attributes-of-enumerations\"]\n ],\n- \"General\": [\n- [107, \"general\"]\n+ \"Restricted Enum subclassing\": [\n+ [106, \"restricted-enum-subclassing\"]\n ],\n- \"Python-specific\": [\n- [107, \"python-specific\"]\n+ \"Pickling\": [\n+ [106, \"pickling\"]\n ],\n- \"Python documentation\": [\n- [107, \"python-documentation\"]\n+ \"Functional API\": [\n+ [106, \"functional-api\"],\n+ [266, \"functional-api\"]\n ],\n- \"asynchat \\u2014 Asynchronous socket command/response handler\": [\n- [134, \"module-asynchat\"]\n+ \"Derived Enumerations\": [\n+ [106, \"derived-enumerations\"]\n ],\n- \"asynchat Example\": [\n- [134, \"asynchat-example\"]\n+ \"IntEnum\": [\n+ [106, \"intenum\"]\n+ ],\n+ \"StrEnum\": [\n+ [106, \"strenum\"]\n+ ],\n+ \"IntFlag\": [\n+ [106, \"intflag\"]\n+ ],\n+ \"Flag\": [\n+ [106, \"flag\"]\n+ ],\n+ \"Others\": [\n+ [106, \"others\"]\n+ ],\n+ \"When to use __new__() vs. __init__()\": [\n+ [106, \"when-to-use-new-vs-init\"]\n+ ],\n+ \"Finer Points\": [\n+ [106, \"finer-points\"]\n+ ],\n+ \"Supported __dunder__ names\": [\n+ [106, \"supported-dunder-names\"],\n+ [225, \"supported-dunder-names\"]\n+ ],\n+ \"Supported _sunder_ names\": [\n+ [106, \"supported-sunder-names\"],\n+ [225, \"supported-sunder-names\"]\n+ ],\n+ \"_Private__names\": [\n+ [106, \"private-names\"]\n+ ],\n+ \"Enum member type\": [\n+ [106, \"enum-member-type\"]\n+ ],\n+ \"Creating members that are mixed with other data types\": [\n+ [106, \"creating-members-that-are-mixed-with-other-data-types\"]\n+ ],\n+ \"Boolean value of Enum classes and members\": [\n+ [106, \"boolean-value-of-enum-classes-and-members\"]\n+ ],\n+ \"Enum classes with methods\": [\n+ [106, \"enum-classes-with-methods\"]\n+ ],\n+ \"Combining members of Flag\": [\n+ [106, \"combining-members-of-flag\"]\n+ ],\n+ \"Flag and IntFlag minutia\": [\n+ [106, \"flag-and-intflag-minutia\"]\n+ ],\n+ \"How are Enums and Flags different?\": [\n+ [106, \"how-are-enums-and-flags-different\"]\n+ ],\n+ \"Enum Classes\": [\n+ [106, \"enum-classes\"]\n+ ],\n+ \"Flag Classes\": [\n+ [106, \"flag-classes\"]\n+ ],\n+ \"Enum Members (aka instances)\": [\n+ [106, \"enum-members-aka-instances\"]\n+ ],\n+ \"Flag Members\": [\n+ [106, \"flag-members\"]\n+ ],\n+ \"Enum Cookbook\": [\n+ [106, \"enum-cookbook\"]\n+ ],\n+ \"Omitting values\": [\n+ [106, \"omitting-values\"]\n+ ],\n+ \"Using auto\": [\n+ [106, \"using-auto\"]\n+ ],\n+ \"Using object\": [\n+ [106, \"using-object\"]\n+ ],\n+ \"Using a descriptive string\": [\n+ [106, \"using-a-descriptive-string\"]\n+ ],\n+ \"Using a custom __new__()\": [\n+ [106, \"using-a-custom-new\"]\n+ ],\n+ \"OrderedEnum\": [\n+ [106, \"orderedenum\"]\n+ ],\n+ \"DuplicateFreeEnum\": [\n+ [106, \"duplicatefreeenum\"]\n+ ],\n+ \"Planet\": [\n+ [106, \"planet\"]\n+ ],\n+ \"TimePeriod\": [\n+ [106, \"timeperiod\"]\n+ ],\n+ \"Subclassing EnumType\": [\n+ [106, \"subclassing-enumtype\"]\n+ ],\n+ \"Unicode HOWTO\": [\n+ [119, \"unicode-howto\"]\n+ ],\n+ \"Introduction to Unicode\": [\n+ [119, \"introduction-to-unicode\"]\n+ ],\n+ \"Definitions\": [\n+ [119, \"definitions\"]\n+ ],\n+ \"Encodings\": [\n+ [119, \"encodings\"]\n+ ],\n+ \"References\": [\n+ [119, \"references\"],\n+ [119, \"id2\"],\n+ [119, \"id3\"],\n+ [107, \"references\"],\n+ [447, \"references\"]\n+ ],\n+ \"Python\\u2019s Unicode Support\": [\n+ [119, \"python-s-unicode-support\"]\n+ ],\n+ \"The String Type\": [\n+ [119, \"the-string-type\"]\n+ ],\n+ \"Converting to Bytes\": [\n+ [119, \"converting-to-bytes\"]\n+ ],\n+ \"Unicode Literals in Python Source Code\": [\n+ [119, \"unicode-literals-in-python-source-code\"]\n+ ],\n+ \"Unicode Properties\": [\n+ [119, \"unicode-properties\"]\n+ ],\n+ \"Comparing Strings\": [\n+ [119, \"comparing-strings\"]\n+ ],\n+ \"Unicode Regular Expressions\": [\n+ [119, \"unicode-regular-expressions\"]\n+ ],\n+ \"Reading and Writing Unicode Data\": [\n+ [119, \"reading-and-writing-unicode-data\"]\n+ ],\n+ \"Unicode filenames\": [\n+ [119, \"unicode-filenames\"]\n+ ],\n+ \"Tips for Writing Unicode-aware Programs\": [\n+ [119, \"tips-for-writing-unicode-aware-programs\"]\n+ ],\n+ \"Converting Between File Encodings\": [\n+ [119, \"converting-between-file-encodings\"]\n+ ],\n+ \"Files in an Unknown Encoding\": [\n+ [119, \"files-in-an-unknown-encoding\"]\n+ ],\n+ \"Acknowledgements\": [\n+ [119, \"acknowledgements\"],\n+ [477, \"acknowledgements\"],\n+ [481, \"acknowledgements\"],\n+ [478, \"acknowledgements\"],\n+ [480, \"acknowledgements\"],\n+ [482, \"acknowledgements\"],\n+ [484, \"acknowledgements\"],\n+ [483, \"acknowledgements\"],\n+ [479, \"acknowledgements\"],\n+ [244, \"acknowledgements\"]\n ],\n \"Regular Expression HOWTO\": [\n [116, \"regular-expression-howto\"]\n ],\n \"Simple Patterns\": [\n [116, \"simple-patterns\"]\n ],\n@@ -60618,100 +60616,50 @@\n ],\n \"Using re.VERBOSE\": [\n [116, \"using-re-verbose\"]\n ],\n \"Feedback\": [\n [116, \"feedback\"]\n ],\n- \"Sorting HOW TO\": [\n- [118, \"sorting-how-to\"]\n- ],\n- \"Sorting Basics\": [\n- [118, \"sorting-basics\"]\n- ],\n- \"Key Functions\": [\n- [118, \"key-functions\"]\n- ],\n- \"Operator Module Functions\": [\n- [118, \"operator-module-functions\"]\n- ],\n- \"Ascending and Descending\": [\n- [118, \"ascending-and-descending\"]\n- ],\n- \"Sort Stability and Complex Sorts\": [\n- [118, \"sort-stability-and-complex-sorts\"]\n- ],\n- \"Decorate-Sort-Undecorate\": [\n- [118, \"decorate-sort-undecorate\"]\n- ],\n- \"Comparison Functions\": [\n- [118, \"comparison-functions\"]\n- ],\n- \"Odds and Ends\": [\n- [118, \"odds-and-ends\"],\n- [455, \"odds-and-ends\"]\n- ],\n- \"Developing with asyncio\": [\n- [137, \"developing-with-asyncio\"]\n- ],\n- \"Debug Mode\": [\n- [137, \"debug-mode\"]\n- ],\n- \"Concurrency and Multithreading\": [\n- [137, \"concurrency-and-multithreading\"]\n- ],\n- \"Running Blocking Code\": [\n- [137, \"running-blocking-code\"]\n- ],\n- \"Logging\": [\n- [137, \"logging\"],\n- [467, \"logging\"],\n- [298, \"logging\"]\n- ],\n- \"Detect never-awaited coroutines\": [\n- [137, \"detect-never-awaited-coroutines\"]\n- ],\n- \"Detect never-retrieved exceptions\": [\n- [137, \"detect-never-retrieved-exceptions\"]\n- ],\n- \"Installing Python Modules\": [\n- [122, \"installing-python-modules\"]\n- ],\n- \"Key terms\": [\n- [122, \"key-terms\"]\n+ \"An introduction to the ipaddress module\": [\n+ [111, \"an-introduction-to-the-ipaddress-module\"]\n ],\n- \"Basic usage\": [\n- [122, \"basic-usage\"]\n+ \"Overview\": [\n+ [111, null],\n+ [42, \"overview\"],\n+ [442, \"overview\"],\n+ [266, \"overview\"],\n+ [273, \"overview\"]\n ],\n- \"How do I \\u2026?\": [\n- [122, \"how-do-i\"]\n+ \"Creating Address/Network/Interface objects\": [\n+ [111, \"creating-address-network-interface-objects\"]\n ],\n- \"\\u2026 install pip in versions of Python prior to Python 3.4?\": [\n- [122, \"install-pip-in-versions-of-python-prior-to-python-3-4\"]\n+ \"A Note on IP Versions\": [\n+ [111, \"a-note-on-ip-versions\"]\n ],\n- \"\\u2026 install packages just for the current user?\": [\n- [122, \"install-packages-just-for-the-current-user\"]\n+ \"IP Host Addresses\": [\n+ [111, \"ip-host-addresses\"]\n ],\n- \"\\u2026 install scientific Python packages?\": [\n- [122, \"install-scientific-python-packages\"]\n+ \"Defining Networks\": [\n+ [111, \"defining-networks\"]\n ],\n- \"\\u2026 work with multiple versions of Python installed in parallel?\": [\n- [122, \"work-with-multiple-versions-of-python-installed-in-parallel\"]\n+ \"Host Interfaces\": [\n+ [111, \"host-interfaces\"]\n ],\n- \"Common installation issues\": [\n- [122, \"common-installation-issues\"]\n+ \"Inspecting Address/Network/Interface Objects\": [\n+ [111, \"inspecting-address-network-interface-objects\"]\n ],\n- \"Installing into the system Python on Linux\": [\n- [122, \"installing-into-the-system-python-on-linux\"]\n+ \"Networks as lists of Addresses\": [\n+ [111, \"networks-as-lists-of-addresses\"]\n ],\n- \"Pip not installed\": [\n- [122, \"pip-not-installed\"]\n+ \"Using IP Addresses with other modules\": [\n+ [111, \"using-ip-addresses-with-other-modules\"]\n ],\n- \"Installing binary extensions\": [\n- [122, \"installing-binary-extensions\"]\n+ \"Getting more detail when instance creation fails\": [\n+ [111, \"getting-more-detail-when-instance-creation-fails\"]\n ],\n \"HOWTO Fetch Internet Resources Using The urllib Package\": [\n [120, \"howto-fetch-internet-resources-using-the-urllib-package\"]\n ],\n \"Related Articles\": [\n [120, null]\n ],\n@@ -60760,16 +60708,120 @@\n ],\n \"Sockets and Layers\": [\n [120, \"sockets-and-layers\"]\n ],\n \"Footnotes\": [\n [120, \"footnotes\"]\n ],\n- \"array \\u2014 Efficient arrays of numeric values\": [\n- [132, \"module-array\"]\n+ \"_thread \\u2014 Low-level threading API\": [\n+ [126, \"module-_thread\"]\n+ ],\n+ \"asynchat \\u2014 Asynchronous socket command/response handler\": [\n+ [134, \"module-asynchat\"]\n+ ],\n+ \"asynchat Example\": [\n+ [134, \"asynchat-example\"]\n+ ],\n+ \"Functional Programming HOWTO\": [\n+ [107, \"functional-programming-howto\"]\n+ ],\n+ \"Formal provability\": [\n+ [107, \"formal-provability\"]\n+ ],\n+ \"Modularity\": [\n+ [107, \"modularity\"]\n+ ],\n+ \"Ease of debugging and testing\": [\n+ [107, \"ease-of-debugging-and-testing\"]\n+ ],\n+ \"Composability\": [\n+ [107, \"composability\"]\n+ ],\n+ \"Iterators\": [\n+ [107, \"iterators\"],\n+ [455, \"iterators\"]\n+ ],\n+ \"Data Types That Support Iterators\": [\n+ [107, \"data-types-that-support-iterators\"]\n+ ],\n+ \"Generator expressions and list comprehensions\": [\n+ [107, \"generator-expressions-and-list-comprehensions\"]\n+ ],\n+ \"Generators\": [\n+ [107, \"generators\"],\n+ [455, \"generators\"]\n+ ],\n+ \"Passing values into a generator\": [\n+ [107, \"passing-values-into-a-generator\"]\n+ ],\n+ \"Built-in functions\": [\n+ [107, \"built-in-functions\"],\n+ [443, \"built-in-functions\"]\n+ ],\n+ \"The itertools module\": [\n+ [107, \"the-itertools-module\"]\n+ ],\n+ \"Creating new iterators\": [\n+ [107, \"creating-new-iterators\"]\n+ ],\n+ \"Calling functions on elements\": [\n+ [107, \"calling-functions-on-elements\"]\n+ ],\n+ \"Selecting elements\": [\n+ [107, \"selecting-elements\"]\n+ ],\n+ \"Combinatoric functions\": [\n+ [107, \"combinatoric-functions\"]\n+ ],\n+ \"Grouping elements\": [\n+ [107, \"grouping-elements\"]\n+ ],\n+ \"The functools module\": [\n+ [107, \"the-functools-module\"]\n+ ],\n+ \"The operator module\": [\n+ [107, \"the-operator-module\"]\n+ ],\n+ \"Small functions and the lambda expression\": [\n+ [107, \"small-functions-and-the-lambda-expression\"]\n+ ],\n+ \"Revision History and Acknowledgements\": [\n+ [107, \"revision-history-and-acknowledgements\"]\n+ ],\n+ \"General\": [\n+ [107, \"general\"]\n+ ],\n+ \"Python-specific\": [\n+ [107, \"python-specific\"]\n+ ],\n+ \"Python documentation\": [\n+ [107, \"python-documentation\"]\n+ ],\n+ \"Developing with asyncio\": [\n+ [137, \"developing-with-asyncio\"]\n+ ],\n+ \"Debug Mode\": [\n+ [137, \"debug-mode\"]\n+ ],\n+ \"Concurrency and Multithreading\": [\n+ [137, \"concurrency-and-multithreading\"]\n+ ],\n+ \"Running Blocking Code\": [\n+ [137, \"running-blocking-code\"]\n+ ],\n+ \"Logging\": [\n+ [137, \"logging\"],\n+ [467, \"logging\"],\n+ [298, \"logging\"]\n+ ],\n+ \"Detect never-awaited coroutines\": [\n+ [137, \"detect-never-awaited-coroutines\"]\n+ ],\n+ \"Detect never-retrieved exceptions\": [\n+ [137, \"detect-never-retrieved-exceptions\"]\n ],\n \"argparse \\u2014 Parser for command-line options, arguments and sub-commands\": [\n [131, \"module-argparse\"]\n ],\n \"Tutorial\": [\n [131, null],\n [428, \"tutorial\"],\n@@ -60779,44 +60831,20 @@\n ],\n \"Core Functionality\": [\n [131, \"core-functionality\"]\n ],\n \"Quick Links for add_argument()\": [\n [131, \"quick-links-for-add-argument\"]\n ],\n- \"Example\": [\n- [131, \"example\"],\n- [34, \"example\"],\n- [428, \"example\"],\n- [428, \"id3\"],\n- [417, \"example\"],\n- [413, \"example\"],\n- [329, \"example\"],\n- [345, \"example\"],\n- [324, \"example\"],\n- [335, \"example\"],\n- [322, \"example\"],\n- [376, \"example\"],\n- [353, \"example\"],\n- [258, \"example\"],\n- [314, \"example\"],\n- [228, \"example\"],\n- [185, \"example\"]\n- ],\n \"Creating a parser\": [\n [131, \"creating-a-parser\"]\n ],\n \"Adding arguments\": [\n [131, \"adding-arguments\"]\n ],\n- \"Parsing arguments\": [\n- [131, \"parsing-arguments\"],\n- [5, \"parsing-arguments\"],\n- [307, \"parsing-arguments\"]\n- ],\n \"ArgumentParser objects\": [\n [131, \"argumentparser-objects\"]\n ],\n \"prog\": [\n [131, \"prog\"]\n ],\n \"usage\": [\n@@ -60947,504 +60975,453 @@\n ],\n \"Intermixed parsing\": [\n [131, \"intermixed-parsing\"]\n ],\n \"Upgrading optparse code\": [\n [131, \"upgrading-optparse-code\"]\n ],\n- \"ast \\u2014 Abstract Syntax Trees\": [\n- [133, \"module-ast\"]\n- ],\n- \"Abstract Grammar\": [\n- [133, \"abstract-grammar\"]\n- ],\n- \"Node classes\": [\n- [133, \"node-classes\"]\n- ],\n- \"Root nodes\": [\n- [133, \"root-nodes\"]\n- ],\n- \"Literals\": [\n- [133, \"literals\"],\n- [450, \"literals\"],\n- [445, \"literals\"]\n- ],\n- \"Variables\": [\n- [133, \"variables\"]\n- ],\n- \"Expressions\": [\n- [133, \"expressions\"],\n- [445, \"expressions\"]\n- ],\n- \"Subscripting\": [\n- [133, \"subscripting\"]\n- ],\n- \"Comprehensions\": [\n- [133, \"comprehensions\"]\n- ],\n- \"Statements\": [\n- [133, \"statements\"]\n- ],\n- \"Imports\": [\n- [133, \"imports\"]\n- ],\n- \"Control flow\": [\n- [133, \"control-flow\"]\n- ],\n- \"Pattern matching\": [\n- [133, \"pattern-matching\"]\n- ],\n- \"Function and class definitions\": [\n- [133, \"function-and-class-definitions\"]\n- ],\n- \"Async and await\": [\n- [133, \"async-and-await\"]\n- ],\n- \"ast Helpers\": [\n- [133, \"ast-helpers\"]\n+ \"Generic Operating System Services\": [\n+ [129, \"generic-operating-system-services\"]\n ],\n- \"Compiler Flags\": [\n- [133, \"compiler-flags\"]\n+ \"__future__ \\u2014 Future statement definitions\": [\n+ [124, \"module-__future__\"]\n ],\n- \"Command-Line Usage\": [\n- [133, \"command-line-usage\"],\n- [393, \"command-line-usage\"],\n- [395, \"command-line-usage\"],\n- [163, \"command-line-usage\"]\n+ \"Module Contents\": [\n+ [124, \"module-contents\"],\n+ [425, \"module-contents\"],\n+ [334, \"module-contents\"],\n+ [225, \"module-contents\"],\n+ [188, \"module-contents\"]\n ],\n- \"Socket Programming HOWTO\": [\n- [117, \"socket-programming-howto\"]\n+ \"Debugging C API extensions and CPython Internals with GDB\": [\n+ [108, \"debugging-c-api-extensions-and-cpython-internals-with-gdb\"]\n ],\n- \"Sockets\": [\n- [117, \"sockets\"],\n- [441, \"sockets\"]\n+ \"Prerequisites\": [\n+ [108, \"prerequisites\"]\n ],\n- \"History\": [\n- [117, \"history\"]\n+ \"Setup with Python built from source\": [\n+ [108, \"setup-with-python-built-from-source\"]\n ],\n- \"Creating a Socket\": [\n- [117, \"creating-a-socket\"]\n+ \"Setup for Python from a Linux distro\": [\n+ [108, \"setup-for-python-from-a-linux-distro\"]\n ],\n- \"IPC\": [\n- [117, \"ipc\"]\n+ \"Using the Debug build and Development mode\": [\n+ [108, \"using-the-debug-build-and-development-mode\"]\n ],\n- \"Using a Socket\": [\n- [117, \"using-a-socket\"]\n+ \"Using the python-gdb extension\": [\n+ [108, \"using-the-python-gdb-extension\"]\n ],\n- \"Binary Data\": [\n- [117, \"binary-data\"]\n+ \"Pretty-printers\": [\n+ [108, \"pretty-printers\"]\n ],\n- \"Disconnecting\": [\n- [117, \"disconnecting\"]\n+ \"py-list\": [\n+ [108, \"py-list\"]\n ],\n- \"When Sockets Die\": [\n- [117, \"when-sockets-die\"]\n+ \"py-up and py-down\": [\n+ [108, \"py-up-and-py-down\"]\n ],\n- \"Non-blocking Sockets\": [\n- [117, \"non-blocking-sockets\"]\n+ \"py-bt\": [\n+ [108, \"py-bt\"]\n ],\n- \"Generic Operating System Services\": [\n- [129, \"generic-operating-system-services\"]\n+ \"py-print\": [\n+ [108, \"py-print\"]\n ],\n- \"Parsing arguments and building values\": [\n- [5, \"parsing-arguments-and-building-values\"]\n+ \"py-locals\": [\n+ [108, \"py-locals\"]\n ],\n- \"Strings and buffers\": [\n- [5, \"strings-and-buffers\"]\n+ \"Use with GDB commands\": [\n+ [108, \"use-with-gdb-commands\"]\n ],\n- \"Numbers\": [\n- [5, \"numbers\"],\n- [464, \"numbers\"]\n+ \"Descriptor HowTo Guide\": [\n+ [105, \"descriptor-howto-guide\"]\n ],\n- \"Other objects\": [\n- [5, \"other-objects\"]\n+ \"Primer\": [\n+ [105, \"primer\"]\n ],\n- \"API Functions\": [\n- [5, \"api-functions\"]\n+ \"Simple example: A descriptor that returns a constant\": [\n+ [105, \"simple-example-a-descriptor-that-returns-a-constant\"]\n ],\n- \"Building values\": [\n- [5, \"building-values\"]\n+ \"Dynamic lookups\": [\n+ [105, \"dynamic-lookups\"]\n ],\n- \"Complex Number Objects\": [\n- [15, \"complex-number-objects\"]\n+ \"Managed attributes\": [\n+ [105, \"managed-attributes\"]\n ],\n- \"Complex Numbers as C Structures\": [\n- [15, \"complex-numbers-as-c-structures\"]\n+ \"Customized names\": [\n+ [105, \"customized-names\"]\n ],\n- \"Complex Numbers as Python Objects\": [\n- [15, \"complex-numbers-as-python-objects\"]\n+ \"Closing thoughts\": [\n+ [105, \"closing-thoughts\"]\n ],\n- \"File Objects\": [\n- [24, \"file-objects\"]\n+ \"Complete Practical Example\": [\n+ [105, \"complete-practical-example\"]\n ],\n- \"Byte Array Objects\": [\n- [8, \"byte-array-objects\"]\n+ \"Validator class\": [\n+ [105, \"validator-class\"]\n ],\n- \"Type check macros\": [\n- [8, \"type-check-macros\"]\n+ \"Custom validators\": [\n+ [105, \"custom-validators\"]\n ],\n- \"Direct API functions\": [\n- [8, \"direct-api-functions\"]\n+ \"Practical application\": [\n+ [105, \"practical-application\"]\n ],\n- \"Macros\": [\n- [8, \"macros\"]\n+ \"Technical Tutorial\": [\n+ [105, \"technical-tutorial\"]\n ],\n- \"Initialization, Finalization, and Threads\": [\n- [33, \"initialization-finalization-and-threads\"]\n+ \"Definition and introduction\": [\n+ [105, \"definition-and-introduction\"]\n ],\n- \"Before Python Initialization\": [\n- [33, \"before-python-initialization\"]\n+ \"Descriptor protocol\": [\n+ [105, \"descriptor-protocol\"]\n ],\n- \"Global configuration variables\": [\n- [33, \"global-configuration-variables\"]\n+ \"Overview of descriptor invocation\": [\n+ [105, \"overview-of-descriptor-invocation\"]\n ],\n- \"Initializing and finalizing the interpreter\": [\n- [33, \"initializing-and-finalizing-the-interpreter\"]\n+ \"Invocation from an instance\": [\n+ [105, \"invocation-from-an-instance\"]\n ],\n- \"Process-wide parameters\": [\n- [33, \"process-wide-parameters\"]\n+ \"Invocation from a class\": [\n+ [105, \"invocation-from-a-class\"]\n ],\n- \"Thread State and the Global Interpreter Lock\": [\n- [33, \"thread-state-and-the-global-interpreter-lock\"]\n+ \"Invocation from super\": [\n+ [105, \"invocation-from-super\"]\n ],\n- \"Releasing the GIL from extension code\": [\n- [33, \"releasing-the-gil-from-extension-code\"]\n+ \"Summary of invocation logic\": [\n+ [105, \"summary-of-invocation-logic\"]\n ],\n- \"Non-Python created threads\": [\n- [33, \"non-python-created-threads\"]\n+ \"Automatic name notification\": [\n+ [105, \"automatic-name-notification\"]\n ],\n- \"Cautions about fork()\": [\n- [33, \"cautions-about-fork\"]\n+ \"ORM example\": [\n+ [105, \"orm-example\"]\n ],\n- \"High-level API\": [\n- [33, \"high-level-api\"]\n+ \"Pure Python Equivalents\": [\n+ [105, \"pure-python-equivalents\"]\n ],\n- \"Low-level API\": [\n- [33, \"low-level-api\"]\n+ \"Properties\": [\n+ [105, \"properties\"]\n ],\n- \"Sub-interpreter support\": [\n- [33, \"sub-interpreter-support\"]\n+ \"Functions and methods\": [\n+ [105, \"functions-and-methods\"]\n ],\n- \"Bugs and caveats\": [\n- [33, \"bugs-and-caveats\"]\n+ \"Kinds of methods\": [\n+ [105, \"kinds-of-methods\"]\n ],\n- \"Asynchronous Notifications\": [\n- [33, \"asynchronous-notifications\"]\n+ \"Static methods\": [\n+ [105, \"static-methods\"]\n ],\n- \"Profiling and Tracing\": [\n- [33, \"profiling-and-tracing\"]\n+ \"Class methods\": [\n+ [105, \"class-methods\"]\n ],\n- \"Advanced Debugger Support\": [\n- [33, \"advanced-debugger-support\"]\n+ \"Member objects and __slots__\": [\n+ [105, \"member-objects-and-slots\"]\n ],\n- \"Thread Local Storage Support\": [\n- [33, \"thread-local-storage-support\"]\n+ \"Installing Python Modules\": [\n+ [122, \"installing-python-modules\"]\n ],\n- \"Thread Specific Storage (TSS) API\": [\n- [33, \"thread-specific-storage-tss-api\"]\n+ \"Key terms\": [\n+ [122, \"key-terms\"]\n ],\n- \"Dynamic Allocation\": [\n- [33, \"dynamic-allocation\"]\n+ \"Basic usage\": [\n+ [122, \"basic-usage\"]\n ],\n- \"Methods\": [\n- [33, \"methods\"],\n- [360, \"methods\"],\n- [303, \"methods\"],\n- [311, \"methods\"]\n+ \"How do I \\u2026?\": [\n+ [122, \"how-do-i\"]\n ],\n- \"Thread Local Storage (TLS) API\": [\n- [33, \"thread-local-storage-tls-api\"]\n+ \"\\u2026 install pip in versions of Python prior to Python 3.4?\": [\n+ [122, \"install-pip-in-versions-of-python-prior-to-python-3-4\"]\n ],\n- \"Frame Objects\": [\n- [26, \"frame-objects\"]\n+ \"\\u2026 install packages just for the current user?\": [\n+ [122, \"install-packages-just-for-the-current-user\"]\n ],\n- \"Coroutine Objects\": [\n- [19, \"coroutine-objects\"],\n- [443, \"coroutine-objects\"]\n+ \"\\u2026 install scientific Python packages?\": [\n+ [122, \"install-scientific-python-packages\"]\n ],\n- \"Code Objects\": [\n- [13, \"code-objects\"],\n- [360, \"code-objects\"]\n+ \"\\u2026 work with multiple versions of Python installed in parallel?\": [\n+ [122, \"work-with-multiple-versions-of-python-installed-in-parallel\"]\n ],\n- \"Codec registry and support functions\": [\n- [14, \"codec-registry-and-support-functions\"]\n+ \"Common installation issues\": [\n+ [122, \"common-installation-issues\"]\n ],\n- \"Codec lookup API\": [\n- [14, \"codec-lookup-api\"]\n+ \"Installing into the system Python on Linux\": [\n+ [122, \"installing-into-the-system-python-on-linux\"]\n ],\n- \"Registry API for Unicode encoding error handlers\": [\n- [14, \"registry-api-for-unicode-encoding-error-handlers\"]\n+ \"Pip not installed\": [\n+ [122, \"pip-not-installed\"]\n ],\n- \"Function Objects\": [\n- [27, \"function-objects\"],\n- [16, \"function-objects\"],\n- [327, \"function-objects\"]\n+ \"Installing binary extensions\": [\n+ [122, \"installing-binary-extensions\"]\n ],\n- \"Bytes Objects\": [\n- [9, \"bytes-objects\"],\n- [360, \"bytes-objects\"]\n+ \"2to3 \\u2014 Automated Python 2 to 3 code translation\": [\n+ [123, \"to3-automated-python-2-to-3-code-translation\"]\n ],\n- \"Supporting Cyclic Garbage Collection\": [\n- [28, \"supporting-cyclic-garbage-collection\"]\n+ \"Using 2to3\": [\n+ [123, \"using-2to3\"]\n ],\n- \"Controlling the Garbage Collector State\": [\n- [28, \"controlling-the-garbage-collector-state\"]\n+ \"Fixers\": [\n+ [123, \"fixers\"]\n ],\n- \"Dealing with Bugs\": [\n- [1, \"dealing-with-bugs\"]\n+ \"lib2to3 \\u2014 2to3\\u2019s library\": [\n+ [123, \"module-lib2to3\"]\n ],\n- \"Documentation bugs\": [\n- [1, \"documentation-bugs\"]\n+ \"aifc \\u2014 Read and write AIFF and AIFC files\": [\n+ [128, \"module-aifc\"]\n ],\n- \"Using the Python issue tracker\": [\n- [1, \"using-the-python-issue-tracker\"]\n+ \"Data Compression and Archiving\": [\n+ [130, \"data-compression-and-archiving\"]\n ],\n- \"Getting started contributing to Python yourself\": [\n- [1, \"getting-started-contributing-to-python-yourself\"]\n+ \"Socket Programming HOWTO\": [\n+ [117, \"socket-programming-howto\"]\n ],\n- \"PyHash API\": [\n- [30, \"pyhash-api\"]\n+ \"Sockets\": [\n+ [117, \"sockets\"],\n+ [441, \"sockets\"]\n ],\n- \"Concrete Objects Layer\": [\n- [16, \"concrete-objects-layer\"]\n+ \"History\": [\n+ [117, \"history\"]\n ],\n- \"Fundamental Objects\": [\n- [16, \"fundamental-objects\"]\n+ \"Creating a Socket\": [\n+ [117, \"creating-a-socket\"]\n ],\n- \"Numeric Objects\": [\n- [16, \"numeric-objects\"]\n+ \"IPC\": [\n+ [117, \"ipc\"]\n ],\n- \"Sequence Objects\": [\n- [16, \"sequence-objects\"]\n+ \"Using a Socket\": [\n+ [117, \"using-a-socket\"]\n ],\n- \"Container Objects\": [\n- [16, \"container-objects\"]\n+ \"Binary Data\": [\n+ [117, \"binary-data\"]\n ],\n- \"Other Objects\": [\n- [16, \"other-objects\"]\n+ \"Disconnecting\": [\n+ [117, \"disconnecting\"]\n ],\n- \"About these documents\": [\n- [0, \"about-these-documents\"]\n+ \"When Sockets Die\": [\n+ [117, \"when-sockets-die\"]\n ],\n- \"Contributors to the Python Documentation\": [\n- [0, \"contributors-to-the-python-documentation\"]\n+ \"Non-blocking Sockets\": [\n+ [117, \"non-blocking-sockets\"]\n ],\n- \"Capsules\": [\n- [11, \"capsules\"],\n- [484, \"capsules\"]\n+ \"array \\u2014 Efficient arrays of numeric values\": [\n+ [132, \"module-array\"]\n ],\n- \"API and ABI Versioning\": [\n- [4, \"api-and-abi-versioning\"]\n+ \"Isolating Extension Modules\": [\n+ [112, \"isolating-extension-modules\"]\n ],\n- \"Buffer Protocol\": [\n- [7, \"buffer-protocol\"]\n+ \"Who should read this\": [\n+ [112, \"who-should-read-this\"]\n ],\n- \"Buffer structure\": [\n- [7, \"buffer-structure\"]\n+ \"Background\": [\n+ [112, \"background\"],\n+ [307, \"background\"]\n ],\n- \"Buffer request types\": [\n- [7, \"buffer-request-types\"]\n+ \"Enter Per-Module State\": [\n+ [112, \"enter-per-module-state\"]\n ],\n- \"request-independent fields\": [\n- [7, \"request-independent-fields\"]\n+ \"Isolated Module Objects\": [\n+ [112, \"isolated-module-objects\"]\n ],\n- \"readonly, format\": [\n- [7, \"readonly-format\"]\n+ \"Surprising Edge Cases\": [\n+ [112, \"surprising-edge-cases\"]\n ],\n- \"shape, strides, suboffsets\": [\n- [7, \"shape-strides-suboffsets\"]\n+ \"Making Modules Safe with Multiple Interpreters\": [\n+ [112, \"making-modules-safe-with-multiple-interpreters\"]\n ],\n- \"contiguity requests\": [\n- [7, \"contiguity-requests\"]\n+ \"Managing Global State\": [\n+ [112, \"managing-global-state\"]\n ],\n- \"compound requests\": [\n- [7, \"compound-requests\"]\n+ \"Managing Per-Module State\": [\n+ [112, \"managing-per-module-state\"]\n ],\n- \"Complex arrays\": [\n- [7, \"complex-arrays\"]\n+ \"Opt-Out: Limiting to One Module Object per Process\": [\n+ [112, \"opt-out-limiting-to-one-module-object-per-process\"]\n ],\n- \"NumPy-style: shape and strides\": [\n- [7, \"numpy-style-shape-and-strides\"]\n+ \"Module State Access from Functions\": [\n+ [112, \"module-state-access-from-functions\"]\n ],\n- \"PIL-style: shape, strides and suboffsets\": [\n- [7, \"pil-style-shape-strides-and-suboffsets\"]\n+ \"Heap Types\": [\n+ [112, \"heap-types\"],\n+ [62, \"heap-types\"]\n ],\n- \"Buffer-related functions\": [\n- [7, \"buffer-related-functions\"]\n+ \"Changing Static Types to Heap Types\": [\n+ [112, \"changing-static-types-to-heap-types\"]\n ],\n- \"Boolean Objects\": [\n- [6, \"boolean-objects\"]\n+ \"Defining Heap Types\": [\n+ [112, \"defining-heap-types\"]\n ],\n- \"Dictionary Objects\": [\n- [22, \"dictionary-objects\"]\n+ \"Garbage-Collection Protocol\": [\n+ [112, \"garbage-collection-protocol\"]\n ],\n- \"Exception Handling\": [\n- [23, \"exception-handling\"]\n+ \"tp_traverse in Python 3.8 and lower\": [\n+ [112, \"tp-traverse-in-python-3-8-and-lower\"]\n ],\n- \"Printing and clearing\": [\n- [23, \"printing-and-clearing\"]\n+ \"Delegating tp_traverse\": [\n+ [112, \"delegating-tp-traverse\"]\n ],\n- \"Raising exceptions\": [\n- [23, \"raising-exceptions\"]\n+ \"Defining tp_dealloc\": [\n+ [112, \"defining-tp-dealloc\"]\n ],\n- \"Issuing warnings\": [\n- [23, \"issuing-warnings\"]\n+ \"Not overriding tp_free\": [\n+ [112, \"not-overriding-tp-free\"]\n ],\n- \"Querying the error indicator\": [\n- [23, \"querying-the-error-indicator\"]\n+ \"Avoiding PyObject_New\": [\n+ [112, \"avoiding-pyobject-new\"]\n ],\n- \"Signal Handling\": [\n- [23, \"signal-handling\"],\n- [403, \"signal-handling\"]\n+ \"Module State Access from Classes\": [\n+ [112, \"module-state-access-from-classes\"]\n ],\n- \"Exception Classes\": [\n- [23, \"exception-classes\"]\n+ \"Module State Access from Regular Methods\": [\n+ [112, \"module-state-access-from-regular-methods\"]\n ],\n- \"Exception Objects\": [\n- [23, \"exception-objects\"]\n+ \"Module State Access from Slot Methods, Getters and Setters\": [\n+ [112, \"module-state-access-from-slot-methods-getters-and-setters\"]\n ],\n- \"Unicode Exception Objects\": [\n- [23, \"unicode-exception-objects\"]\n+ \"Lifetime of the Module State\": [\n+ [112, \"lifetime-of-the-module-state\"]\n ],\n- \"Recursion Control\": [\n- [23, \"recursion-control\"],\n- [10, \"recursion-control\"]\n+ \"Open Issues\": [\n+ [112, \"open-issues\"]\n ],\n- \"Standard Exceptions\": [\n- [23, \"standard-exceptions\"]\n+ \"Per-Class Scope\": [\n+ [112, \"per-class-scope\"]\n ],\n- \"Standard Warning Categories\": [\n- [23, \"standard-warning-categories\"]\n+ \"Lossless Conversion to Heap Types\": [\n+ [112, \"lossless-conversion-to-heap-types\"]\n ],\n- \"Floating Point Objects\": [\n- [25, \"floating-point-objects\"]\n+ \"Sorting HOW TO\": [\n+ [118, \"sorting-how-to\"]\n ],\n- \"Pack and Unpack functions\": [\n- [25, \"pack-and-unpack-functions\"]\n+ \"Sorting Basics\": [\n+ [118, \"sorting-basics\"]\n ],\n- \"Pack functions\": [\n- [25, \"pack-functions\"]\n+ \"Key Functions\": [\n+ [118, \"key-functions\"]\n ],\n- \"Unpack functions\": [\n- [25, \"unpack-functions\"]\n+ \"Operator Module Functions\": [\n+ [118, \"operator-module-functions\"]\n ],\n- \"Importing Modules\": [\n- [31, \"importing-modules\"],\n- [295, \"importing-modules\"]\n+ \"Ascending and Descending\": [\n+ [118, \"ascending-and-descending\"]\n ],\n- \"Python/C API Reference Manual\": [\n- [32, \"python-c-api-reference-manual\"]\n+ \"Sort Stability and Complex Sorts\": [\n+ [118, \"sort-stability-and-complex-sorts\"]\n ],\n- \"Context Variables Objects\": [\n- [17, \"context-variables-objects\"]\n+ \"Decorate-Sort-Undecorate\": [\n+ [118, \"decorate-sort-undecorate\"]\n ],\n- \"String conversion and formatting\": [\n- [18, \"string-conversion-and-formatting\"]\n+ \"Comparison Functions\": [\n+ [118, \"comparison-functions\"]\n ],\n- \"Call Protocol\": [\n- [10, \"call-protocol\"]\n+ \"Odds and Ends\": [\n+ [118, \"odds-and-ends\"],\n+ [455, \"odds-and-ends\"]\n ],\n- \"The tp_call Protocol\": [\n- [10, \"the-tp-call-protocol\"]\n+ \"abc \\u2014 Abstract Base Classes\": [\n+ [127, \"module-abc\"]\n ],\n- \"The Vectorcall Protocol\": [\n- [10, \"the-vectorcall-protocol\"]\n+ \"ast \\u2014 Abstract Syntax Trees\": [\n+ [133, \"module-ast\"]\n ],\n- \"Vectorcall Support API\": [\n- [10, \"vectorcall-support-api\"]\n+ \"Abstract Grammar\": [\n+ [133, \"abstract-grammar\"]\n ],\n- \"Object Calling API\": [\n- [10, \"object-calling-api\"]\n+ \"Node classes\": [\n+ [133, \"node-classes\"]\n ],\n- \"Call Support API\": [\n- [10, \"call-support-api\"]\n+ \"Root nodes\": [\n+ [133, \"root-nodes\"]\n ],\n- \"Allocating Objects on the Heap\": [\n- [3, \"allocating-objects-on-the-heap\"]\n+ \"Literals\": [\n+ [133, \"literals\"],\n+ [445, \"literals\"],\n+ [450, \"literals\"]\n ],\n- \"Abstract Objects Layer\": [\n- [2, \"abstract-objects-layer\"]\n+ \"Variables\": [\n+ [133, \"variables\"]\n ],\n- \"Cell Objects\": [\n- [12, \"cell-objects\"]\n+ \"Expressions\": [\n+ [133, \"expressions\"],\n+ [445, \"expressions\"]\n ],\n- \"Descriptor Objects\": [\n- [21, \"descriptor-objects\"]\n+ \"Subscripting\": [\n+ [133, \"subscripting\"]\n ],\n- \"Generator Objects\": [\n- [29, \"generator-objects\"]\n+ \"Comprehensions\": [\n+ [133, \"comprehensions\"]\n ],\n- \"DateTime Objects\": [\n- [20, \"datetime-objects\"],\n- [434, \"datetime-objects\"]\n+ \"Statements\": [\n+ [133, \"statements\"]\n ],\n- \"Python Initialization Configuration\": [\n- [34, \"python-initialization-configuration\"]\n+ \"Imports\": [\n+ [133, \"imports\"]\n ],\n- \"PyWideStringList\": [\n- [34, \"pywidestringlist\"]\n+ \"Control flow\": [\n+ [133, \"control-flow\"]\n ],\n- \"PyStatus\": [\n- [34, \"pystatus\"]\n+ \"Pattern matching\": [\n+ [133, \"pattern-matching\"]\n ],\n- \"PyPreConfig\": [\n- [34, \"pypreconfig\"]\n+ \"Function and class definitions\": [\n+ [133, \"function-and-class-definitions\"]\n ],\n- \"Preinitialize Python with PyPreConfig\": [\n- [34, \"preinitialize-python-with-pypreconfig\"]\n+ \"Async and await\": [\n+ [133, \"async-and-await\"]\n ],\n- \"PyConfig\": [\n- [34, \"pyconfig\"]\n+ \"ast Helpers\": [\n+ [133, \"ast-helpers\"]\n ],\n- \"Initialization with PyConfig\": [\n- [34, \"initialization-with-pyconfig\"]\n+ \"Compiler Flags\": [\n+ [133, \"compiler-flags\"]\n ],\n- \"Isolated Configuration\": [\n- [34, \"isolated-configuration\"]\n+ \"Command-Line Usage\": [\n+ [133, \"command-line-usage\"],\n+ [393, \"command-line-usage\"],\n+ [395, \"command-line-usage\"],\n+ [163, \"command-line-usage\"]\n ],\n- \"Python Configuration\": [\n- [34, \"python-configuration\"]\n+ \"Instrumenting CPython with DTrace and SystemTap\": [\n+ [110, \"instrumenting-cpython-with-dtrace-and-systemtap\"]\n ],\n- \"Python Path Configuration\": [\n- [34, \"python-path-configuration\"]\n+ \"Enabling the static markers\": [\n+ [110, \"enabling-the-static-markers\"]\n ],\n- \"Py_RunMain()\": [\n- [34, \"py-runmain\"]\n+ \"Static DTrace probes\": [\n+ [110, \"static-dtrace-probes\"]\n ],\n- \"Py_GetArgcArgv()\": [\n- [34, \"py-getargcargv\"]\n+ \"Static SystemTap markers\": [\n+ [110, \"static-systemtap-markers\"]\n ],\n- \"Multi-Phase Initialization Private Provisional API\": [\n- [34, \"multi-phase-initialization-private-provisional-api\"]\n+ \"Available static markers\": [\n+ [110, \"available-static-markers\"]\n ],\n- \"Object Protocol\": [\n- [49, \"object-protocol\"]\n+ \"SystemTap Tapsets\": [\n+ [110, \"systemtap-tapsets\"]\n ],\n- \"Number Protocol\": [\n- [47, \"number-protocol\"]\n+ \"High-level API Index\": [\n+ [136, \"high-level-api-index\"]\n ],\n- \"Slice Objects\": [\n- [55, \"slice-objects\"]\n+ \"Tasks\": [\n+ [136, \"tasks\"]\n ],\n- \"Ellipsis Object\": [\n- [55, \"ellipsis-object\"]\n+ \"Queues\": [\n+ [136, \"queues\"],\n+ [146, \"queues\"]\n ],\n- \"Distributing Python Modules\": [\n- [69, \"distributing-python-modules\"]\n+ \"Subprocesses\": [\n+ [136, \"subprocesses\"],\n+ [149, \"subprocesses\"]\n ],\n- \"Type Objects\": [\n- [60, \"type-objects\"],\n- [62, \"type-objects\"],\n- [360, \"type-objects\"]\n+ \"Streams\": [\n+ [136, \"streams\"],\n+ [148, \"streams\"]\n ],\n- \"Creating Heap-Allocated Types\": [\n- [60, \"creating-heap-allocated-types\"]\n+ \"Synchronization\": [\n+ [136, \"synchronization\"]\n ],\n- \"The Very High Level Layer\": [\n- [65, \"the-very-high-level-layer\"]\n+ \"Iterator Protocol\": [\n+ [36, \"iterator-protocol\"]\n ],\n \"Coding standards\": [\n [35, \"coding-standards\"]\n ],\n \"Include Files\": [\n [35, \"include-files\"]\n ],\n@@ -61463,71 +61440,102 @@\n \"Embedding Python\": [\n [35, \"embedding-python\"],\n [476, \"embedding-python\"]\n ],\n \"Debugging Builds\": [\n [35, \"debugging-builds\"]\n ],\n- \"Reference Counting\": [\n- [51, \"reference-counting\"]\n+ \"Reflection\": [\n+ [52, \"reflection\"]\n ],\n- \"Quick Reference\": [\n- [62, \"quick-reference\"]\n+ \"Copyright\": [\n+ [68, \"copyright\"]\n ],\n- \"\\u201ctp slots\\u201d\": [\n- [62, \"tp-slots\"]\n+ \"The None Object\": [\n+ [46, \"the-none-object\"]\n ],\n- \"sub-slots\": [\n- [62, \"sub-slots\"]\n+ \"Integer Objects\": [\n+ [39, \"integer-objects\"]\n ],\n- \"slot typedefs\": [\n- [62, \"slot-typedefs\"]\n+ \"Mapping Protocol\": [\n+ [40, \"mapping-protocol\"]\n ],\n- \"PyTypeObject Definition\": [\n- [62, \"pytypeobject-definition\"]\n+ \"Number Protocol\": [\n+ [47, \"number-protocol\"]\n ],\n- \"PyObject Slots\": [\n- [62, \"pyobject-slots\"]\n+ \"Python Documentation contents\": [\n+ [67, \"python-documentation-contents\"]\n ],\n- \"PyVarObject Slots\": [\n- [62, \"pyvarobject-slots\"]\n+ \"Type Objects\": [\n+ [60, \"type-objects\"],\n+ [62, \"type-objects\"],\n+ [360, \"type-objects\"]\n ],\n- \"PyTypeObject Slots\": [\n- [62, \"pytypeobject-slots\"]\n+ \"Creating Heap-Allocated Types\": [\n+ [60, \"creating-heap-allocated-types\"]\n ],\n- \"Static Types\": [\n- [62, \"static-types\"]\n+ \"Object Protocol\": [\n+ [49, \"object-protocol\"]\n ],\n- \"Number Object Structures\": [\n- [62, \"number-object-structures\"]\n+ \"Old Buffer Protocol\": [\n+ [48, \"old-buffer-protocol\"]\n ],\n- \"Mapping Object Structures\": [\n- [62, \"mapping-object-structures\"]\n+ \"Weak Reference Objects\": [\n+ [66, \"weak-reference-objects\"],\n+ [417, \"weak-reference-objects\"]\n ],\n- \"Sequence Object Structures\": [\n- [62, \"sequence-object-structures\"]\n+ \"Module Objects\": [\n+ [45, \"module-objects\"]\n ],\n- \"Buffer Object Structures\": [\n- [62, \"buffer-object-structures\"]\n+ \"Initializing C modules\": [\n+ [45, \"initializing-c-modules\"]\n ],\n- \"Async Object Structures\": [\n- [62, \"async-object-structures\"]\n+ \"Single-phase initialization\": [\n+ [45, \"single-phase-initialization\"]\n ],\n- \"Slot Type typedefs\": [\n- [62, \"slot-type-typedefs\"]\n+ \"Multi-phase initialization\": [\n+ [45, \"multi-phase-initialization\"]\n ],\n- \"Mapping Protocol\": [\n- [40, \"mapping-protocol\"]\n+ \"Low-level module creation functions\": [\n+ [45, \"low-level-module-creation-functions\"]\n ],\n- \"Reflection\": [\n- [52, \"reflection\"]\n+ \"Support functions\": [\n+ [45, \"support-functions\"]\n+ ],\n+ \"Module lookup\": [\n+ [45, \"module-lookup\"]\n+ ],\n+ \"Sequence Protocol\": [\n+ [53, \"sequence-protocol\"]\n+ ],\n+ \"Common Object Structures\": [\n+ [57, \"common-object-structures\"]\n+ ],\n+ \"Base object types and macros\": [\n+ [57, \"base-object-types-and-macros\"]\n+ ],\n+ \"Implementing functions and methods\": [\n+ [57, \"implementing-functions-and-methods\"]\n+ ],\n+ \"Accessing attributes of extension types\": [\n+ [57, \"accessing-attributes-of-extension-types\"]\n ],\n \"Data marshalling support\": [\n [41, \"data-marshalling-support\"]\n ],\n+ \"Tuple Objects\": [\n+ [59, \"tuple-objects\"]\n+ ],\n+ \"Struct Sequence Objects\": [\n+ [59, \"struct-sequence-objects\"]\n+ ],\n+ \"Utilities\": [\n+ [64, \"utilities\"],\n+ [182, \"utilities\"]\n+ ],\n \"Unicode Objects and Codecs\": [\n [63, \"unicode-objects-and-codecs\"]\n ],\n \"Unicode Objects\": [\n [63, \"unicode-objects\"]\n ],\n \"Unicode Type\": [\n@@ -61589,14 +61597,26 @@\n ],\n \"Methods & Slots\": [\n [63, \"methods-slots\"]\n ],\n \"Methods and Slot Functions\": [\n [63, \"methods-and-slot-functions\"]\n ],\n+ \"Object Implementation Support\": [\n+ [50, \"object-implementation-support\"]\n+ ],\n+ \"Objects for Type Hinting\": [\n+ [61, \"objects-for-type-hinting\"]\n+ ],\n+ \"List Objects\": [\n+ [38, \"list-objects\"]\n+ ],\n+ \"Iterator Objects\": [\n+ [37, \"iterator-objects\"]\n+ ],\n \"C API Stability\": [\n [56, \"c-api-stability\"]\n ],\n \"Stable Application Binary Interface\": [\n [56, \"stable-application-binary-interface\"]\n ],\n \"Limited C API\": [\n@@ -61613,62 +61633,61 @@\n ],\n \"Platform Considerations\": [\n [56, \"platform-considerations\"]\n ],\n \"Contents of Limited API\": [\n [56, \"contents-of-limited-api\"]\n ],\n- \"Object Implementation Support\": [\n- [50, \"object-implementation-support\"]\n+ \"Quick Reference\": [\n+ [62, \"quick-reference\"]\n ],\n- \"The None Object\": [\n- [46, \"the-none-object\"]\n+ \"\\u201ctp slots\\u201d\": [\n+ [62, \"tp-slots\"]\n ],\n- \"List Objects\": [\n- [38, \"list-objects\"]\n+ \"sub-slots\": [\n+ [62, \"sub-slots\"]\n ],\n- \"Integer Objects\": [\n- [39, \"integer-objects\"]\n+ \"slot typedefs\": [\n+ [62, \"slot-typedefs\"]\n ],\n- \"Instance Method Objects\": [\n- [44, \"instance-method-objects\"]\n+ \"PyTypeObject Definition\": [\n+ [62, \"pytypeobject-definition\"]\n ],\n- \"Method Objects\": [\n- [44, \"method-objects\"],\n- [455, \"method-objects\"]\n+ \"PyObject Slots\": [\n+ [62, \"pyobject-slots\"]\n ],\n- \"MemoryView objects\": [\n- [43, \"index-0\"]\n+ \"PyVarObject Slots\": [\n+ [62, \"pyvarobject-slots\"]\n ],\n- \"Module Objects\": [\n- [45, \"module-objects\"]\n+ \"PyTypeObject Slots\": [\n+ [62, \"pytypeobject-slots\"]\n ],\n- \"Initializing C modules\": [\n- [45, \"initializing-c-modules\"]\n+ \"Static Types\": [\n+ [62, \"static-types\"]\n ],\n- \"Single-phase initialization\": [\n- [45, \"single-phase-initialization\"]\n+ \"Number Object Structures\": [\n+ [62, \"number-object-structures\"]\n ],\n- \"Multi-phase initialization\": [\n- [45, \"multi-phase-initialization\"]\n+ \"Mapping Object Structures\": [\n+ [62, \"mapping-object-structures\"]\n ],\n- \"Low-level module creation functions\": [\n- [45, \"low-level-module-creation-functions\"]\n+ \"Sequence Object Structures\": [\n+ [62, \"sequence-object-structures\"]\n ],\n- \"Support functions\": [\n- [45, \"support-functions\"]\n+ \"Buffer Object Structures\": [\n+ [62, \"buffer-object-structures\"]\n ],\n- \"Module lookup\": [\n- [45, \"module-lookup\"]\n+ \"Async Object Structures\": [\n+ [62, \"async-object-structures\"]\n ],\n- \"Tuple Objects\": [\n- [59, \"tuple-objects\"]\n+ \"Slot Type typedefs\": [\n+ [62, \"slot-type-typedefs\"]\n ],\n- \"Struct Sequence Objects\": [\n- [59, \"struct-sequence-objects\"]\n+ \"Set Objects\": [\n+ [54, \"set-objects\"]\n ],\n \"Memory Management\": [\n [42, \"memory-management\"]\n ],\n \"Allocator Domains\": [\n [42, \"allocator-domains\"]\n ],\n@@ -61695,385 +61714,325 @@\n ],\n \"Customize pymalloc Arena Allocator\": [\n [42, \"customize-pymalloc-arena-allocator\"]\n ],\n \"tracemalloc C API\": [\n [42, \"tracemalloc-c-api\"]\n ],\n- \"Iterator Protocol\": [\n- [36, \"iterator-protocol\"]\n- ],\n- \"Old Buffer Protocol\": [\n- [48, \"old-buffer-protocol\"]\n- ],\n- \"Sequence Protocol\": [\n- [53, \"sequence-protocol\"]\n- ],\n- \"Set Objects\": [\n- [54, \"set-objects\"]\n- ],\n- \"Common Object Structures\": [\n- [57, \"common-object-structures\"]\n- ],\n- \"Base object types and macros\": [\n- [57, \"base-object-types-and-macros\"]\n- ],\n- \"Implementing functions and methods\": [\n- [57, \"implementing-functions-and-methods\"]\n- ],\n- \"Accessing attributes of extension types\": [\n- [57, \"accessing-attributes-of-extension-types\"]\n- ],\n- \"Python Documentation contents\": [\n- [67, \"python-documentation-contents\"]\n- ],\n- \"Utilities\": [\n- [64, \"utilities\"],\n- [182, \"utilities\"]\n- ],\n- \"Copyright\": [\n- [68, \"copyright\"]\n- ],\n- \"Weak Reference Objects\": [\n- [66, \"weak-reference-objects\"],\n- [417, \"weak-reference-objects\"]\n- ],\n \"Operating System Utilities\": [\n [58, \"operating-system-utilities\"]\n ],\n \"System Functions\": [\n [58, \"system-functions\"]\n ],\n \"Process Control\": [\n [58, \"process-control\"]\n ],\n- \"Iterator Objects\": [\n- [37, \"iterator-objects\"]\n- ],\n- \"Objects for Type Hinting\": [\n- [61, \"objects-for-type-hinting\"]\n- ],\n- \"xml.sax.xmlreader \\u2014 Interface for XML parsers\": [\n- [431, \"module-xml.sax.xmlreader\"]\n+ \"Reference Counting\": [\n+ [51, \"reference-counting\"]\n ],\n- \"XMLReader Objects\": [\n- [431, \"xmlreader-objects\"]\n+ \"MemoryView objects\": [\n+ [43, \"index-0\"]\n ],\n- \"IncrementalParser Objects\": [\n- [431, \"incrementalparser-objects\"]\n+ \"Instance Method Objects\": [\n+ [44, \"instance-method-objects\"]\n ],\n- \"Locator Objects\": [\n- [431, \"locator-objects\"]\n+ \"Method Objects\": [\n+ [44, \"method-objects\"],\n+ [455, \"method-objects\"]\n ],\n- \"InputSource Objects\": [\n- [431, \"inputsource-objects\"]\n+ \"The Very High Level Layer\": [\n+ [65, \"the-very-high-level-layer\"]\n ],\n- \"The Attributes Interface\": [\n- [431, \"the-attributes-interface\"]\n+ \"Slice Objects\": [\n+ [55, \"slice-objects\"]\n ],\n- \"The AttributesNS Interface\": [\n- [431, \"the-attributesns-interface\"]\n+ \"Ellipsis Object\": [\n+ [55, \"ellipsis-object\"]\n ],\n- \"zlib \\u2014 Compression compatible with gzip\": [\n- [439, \"module-zlib\"]\n+ \"Distributing Python Modules\": [\n+ [69, \"distributing-python-modules\"]\n ],\n- \"Top-level components\": [\n- [452, \"top-level-components\"]\n+ \"History and License\": [\n+ [441, \"history-and-license\"]\n ],\n- \"Complete Python programs\": [\n- [452, \"complete-python-programs\"]\n+ \"History of the software\": [\n+ [441, \"history-of-the-software\"]\n ],\n- \"File input\": [\n- [452, \"file-input\"]\n+ \"Terms and conditions for accessing or otherwise using Python\": [\n+ [441, \"terms-and-conditions-for-accessing-or-otherwise-using-python\"]\n ],\n- \"Interactive input\": [\n- [452, \"interactive-input\"]\n+ \"PSF LICENSE AGREEMENT FOR PYTHON 3.11.9\": [\n+ [441, \"psf-license-agreement-for-python-release\"]\n ],\n- \"Expression input\": [\n- [452, \"expression-input\"]\n+ \"BEOPEN.COM LICENSE AGREEMENT FOR PYTHON 2.0\": [\n+ [441, \"beopen-com-license-agreement-for-python-2-0\"]\n ],\n- \"Simple statements\": [\n- [451, \"simple-statements\"]\n+ \"CNRI LICENSE AGREEMENT FOR PYTHON 1.6.1\": [\n+ [441, \"cnri-license-agreement-for-python-1-6-1\"]\n ],\n- \"Expression statements\": [\n- [451, \"expression-statements\"]\n+ \"CWI LICENSE AGREEMENT FOR PYTHON 0.9.0 THROUGH 1.2\": [\n+ [441, \"cwi-license-agreement-for-python-0-9-0-through-1-2\"]\n ],\n- \"Assignment statements\": [\n- [451, \"assignment-statements\"]\n+ \"ZERO-CLAUSE BSD LICENSE FOR CODE IN THE PYTHON 3.11.9 DOCUMENTATION\": [\n+ [441, \"zero-clause-bsd-license-for-code-in-the-python-release-documentation\"]\n ],\n- \"Augmented assignment statements\": [\n- [451, \"augmented-assignment-statements\"]\n+ \"Licenses and Acknowledgements for Incorporated Software\": [\n+ [441, \"licenses-and-acknowledgements-for-incorporated-software\"]\n ],\n- \"Annotated assignment statements\": [\n- [451, \"annotated-assignment-statements\"]\n+ \"Mersenne Twister\": [\n+ [441, \"mersenne-twister\"]\n ],\n- \"The assert statement\": [\n- [451, \"the-assert-statement\"]\n+ \"Asynchronous socket services\": [\n+ [441, \"asynchronous-socket-services\"]\n ],\n- \"The pass statement\": [\n- [451, \"the-pass-statement\"]\n+ \"Cookie management\": [\n+ [441, \"cookie-management\"]\n ],\n- \"The del statement\": [\n- [451, \"the-del-statement\"],\n- [457, \"the-del-statement\"]\n+ \"Execution tracing\": [\n+ [441, \"execution-tracing\"]\n ],\n- \"The return statement\": [\n- [451, \"the-return-statement\"]\n+ \"UUencode and UUdecode functions\": [\n+ [441, \"uuencode-and-uudecode-functions\"]\n ],\n- \"The yield statement\": [\n- [451, \"the-yield-statement\"]\n+ \"XML Remote Procedure Calls\": [\n+ [441, \"xml-remote-procedure-calls\"]\n ],\n- \"The raise statement\": [\n- [451, \"the-raise-statement\"]\n+ \"test_epoll\": [\n+ [441, \"test-epoll\"]\n ],\n- \"The break statement\": [\n- [451, \"the-break-statement\"]\n+ \"Select kqueue\": [\n+ [441, \"select-kqueue\"]\n ],\n- \"The continue statement\": [\n- [451, \"the-continue-statement\"]\n+ \"SipHash24\": [\n+ [441, \"siphash24\"]\n ],\n- \"The import statement\": [\n- [451, \"the-import-statement\"]\n+ \"strtod and dtoa\": [\n+ [441, \"strtod-and-dtoa\"]\n ],\n- \"Future statements\": [\n- [451, \"future-statements\"]\n+ \"OpenSSL\": [\n+ [441, \"openssl\"],\n+ [488, \"openssl\"]\n ],\n- \"The global statement\": [\n- [451, \"the-global-statement\"]\n+ \"expat\": [\n+ [441, \"expat\"]\n ],\n- \"The nonlocal statement\": [\n- [451, \"the-nonlocal-statement\"]\n+ \"libffi\": [\n+ [441, \"libffi\"]\n ],\n- \"Full Grammar specification\": [\n- [446, \"full-grammar-specification\"]\n+ \"zlib\": [\n+ [441, \"zlib\"],\n+ [490, \"zlib\"],\n+ [493, \"zlib\"]\n ],\n- \"xml.sax.saxutils \\u2014 SAX Utilities\": [\n- [432, \"module-xml.sax.saxutils\"]\n+ \"cfuhash\": [\n+ [441, \"cfuhash\"]\n ],\n- \"The import system\": [\n- [447, \"the-import-system\"]\n+ \"libmpdec\": [\n+ [441, \"libmpdec\"]\n ],\n- \"importlib\": [\n- [447, \"importlib\"],\n- [493, \"importlib\"],\n- [493, \"id3\"],\n- [492, \"importlib\"],\n- [494, \"importlib\"],\n- [494, \"id6\"],\n- [491, \"importlib\"],\n- [496, \"importlib\"]\n+ \"W3C C14N test suite\": [\n+ [441, \"w3c-c14n-test-suite\"]\n ],\n- \"Packages\": [\n- [447, \"packages\"],\n- [465, \"packages\"]\n+ \"Audioop\": [\n+ [441, \"audioop\"]\n ],\n- \"Regular packages\": [\n- [447, \"regular-packages\"]\n+ \"asyncio\": [\n+ [441, \"asyncio\"],\n+ [487, \"asyncio\"],\n+ [488, \"asyncio\"],\n+ [496, \"asyncio\"],\n+ [494, \"asyncio\"],\n+ [494, \"whatsnew37-asyncio-deprecated\"],\n+ [495, \"asyncio\"],\n+ [492, \"asyncio\"],\n+ [491, \"asyncio\"],\n+ [493, \"asyncio\"]\n ],\n- \"Namespace packages\": [\n- [447, \"namespace-packages\"]\n+ \"xml.dom.pulldom \\u2014 Support for building partial DOM trees\": [\n+ [427, \"module-xml.dom.pulldom\"]\n ],\n- \"Searching\": [\n- [447, \"searching\"]\n+ \"DOMEventStream Objects\": [\n+ [427, \"domeventstream-objects\"]\n ],\n- \"The module cache\": [\n- [447, \"the-module-cache\"]\n+ \"xmlrpc.server \\u2014 Basic XML-RPC servers\": [\n+ [435, \"module-xmlrpc.server\"]\n ],\n- \"Finders and loaders\": [\n- [447, \"finders-and-loaders\"]\n+ \"SimpleXMLRPCServer Objects\": [\n+ [435, \"simplexmlrpcserver-objects\"]\n ],\n- \"Import hooks\": [\n- [447, \"import-hooks\"]\n+ \"SimpleXMLRPCServer Example\": [\n+ [435, \"simplexmlrpcserver-example\"]\n ],\n- \"The meta path\": [\n- [447, \"the-meta-path\"]\n+ \"CGIXMLRPCRequestHandler\": [\n+ [435, \"cgixmlrpcrequesthandler\"]\n ],\n- \"Loading\": [\n- [447, \"loading\"]\n+ \"Documenting XMLRPC server\": [\n+ [435, \"documenting-xmlrpc-server\"]\n ],\n- \"Loaders\": [\n- [447, \"loaders\"]\n+ \"DocXMLRPCServer Objects\": [\n+ [435, \"docxmlrpcserver-objects\"]\n ],\n- \"Submodules\": [\n- [447, \"submodules\"]\n+ \"DocCGIXMLRPCRequestHandler\": [\n+ [435, \"doccgixmlrpcrequesthandler\"]\n ],\n- \"Module spec\": [\n- [447, \"module-spec\"]\n+ \"zipimport \\u2014 Import modules from Zip archives\": [\n+ [438, \"module-zipimport\"]\n ],\n- \"Import-related module attributes\": [\n- [447, \"import-related-module-attributes\"]\n+ \"zipimporter Objects\": [\n+ [438, \"zipimporter-objects\"]\n ],\n- \"module.__path__\": [\n- [447, \"module-path\"]\n+ \"xml.sax.xmlreader \\u2014 Interface for XML parsers\": [\n+ [431, \"module-xml.sax.xmlreader\"]\n ],\n- \"Module reprs\": [\n- [447, \"module-reprs\"]\n+ \"XMLReader Objects\": [\n+ [431, \"xmlreader-objects\"]\n ],\n- \"Cached bytecode invalidation\": [\n- [447, \"cached-bytecode-invalidation\"]\n+ \"IncrementalParser Objects\": [\n+ [431, \"incrementalparser-objects\"]\n ],\n- \"The Path Based Finder\": [\n- [447, \"the-path-based-finder\"]\n+ \"Locator Objects\": [\n+ [431, \"locator-objects\"]\n ],\n- \"Path entry finders\": [\n- [447, \"path-entry-finders\"]\n+ \"InputSource Objects\": [\n+ [431, \"inputsource-objects\"]\n ],\n- \"Path entry finder protocol\": [\n- [447, \"path-entry-finder-protocol\"]\n+ \"The Attributes Interface\": [\n+ [431, \"the-attributes-interface\"]\n ],\n- \"Replacing the standard import system\": [\n- [447, \"replacing-the-standard-import-system\"]\n+ \"The AttributesNS Interface\": [\n+ [431, \"the-attributesns-interface\"]\n ],\n- \"Package Relative Imports\": [\n- [447, \"package-relative-imports\"]\n+ \"Execution model\": [\n+ [444, \"execution-model\"]\n ],\n- \"Special considerations for __main__\": [\n- [447, \"special-considerations-for-main\"]\n+ \"Structure of a program\": [\n+ [444, \"structure-of-a-program\"]\n ],\n- \"__main__.__spec__\": [\n- [447, \"main-spec\"]\n+ \"Naming and binding\": [\n+ [444, \"naming-and-binding\"]\n ],\n- \"winreg \\u2014 Windows registry access\": [\n- [420, \"module-winreg\"]\n+ \"Binding of names\": [\n+ [444, \"binding-of-names\"]\n ],\n- \"Functions\": [\n- [420, \"functions\"],\n- [440, \"functions\"],\n- [428, \"functions\"],\n- [428, \"elementinclude-functions\"],\n- [397, \"functions\"],\n- [322, \"functions\"],\n- [334, \"functions\"],\n- [381, \"functions\"],\n- [353, \"functions\"],\n- [360, \"functions\"],\n- [265, \"functions\"],\n- [164, \"functions\"],\n- [192, \"functions\"],\n- [190, \"functions\"]\n+ \"Resolution of names\": [\n+ [444, \"resolution-of-names\"]\n ],\n- \"Constants\": [\n- [420, \"constants\"],\n- [357, \"constants\"],\n- [353, \"constants\"],\n- [249, \"constants\"],\n- [290, \"constants\"],\n- [167, \"constants\"],\n- [149, \"constants\"],\n- [196, \"constants\"],\n- [190, \"constants\"],\n- [199, \"constants\"]\n+ \"Builtins and restricted execution\": [\n+ [444, \"builtins-and-restricted-execution\"]\n ],\n- \"HKEY_* Constants\": [\n- [420, \"hkey-constants\"]\n+ \"Interaction with dynamic features\": [\n+ [444, \"interaction-with-dynamic-features\"]\n ],\n- \"Access Rights\": [\n- [420, \"access-rights\"]\n+ \"Whetting Your Appetite\": [\n+ [454, \"whetting-your-appetite\"]\n ],\n- \"64-bit Specific\": [\n- [420, \"bit-specific\"]\n+ \"Arithmetic conversions\": [\n+ [445, \"arithmetic-conversions\"]\n ],\n- \"Value Types\": [\n- [420, \"value-types\"]\n+ \"Atoms\": [\n+ [445, \"atoms\"]\n ],\n- \"Registry Handle Objects\": [\n- [420, \"registry-handle-objects\"]\n+ \"Identifiers (Names)\": [\n+ [445, \"atom-identifiers\"]\n ],\n- \"wsgiref \\u2014 WSGI Utilities and Reference Implementation\": [\n- [422, \"module-wsgiref\"]\n+ \"Parenthesized forms\": [\n+ [445, \"parenthesized-forms\"]\n ],\n- \"wsgiref.util \\u2013 WSGI environment utilities\": [\n- [422, \"module-wsgiref.util\"]\n+ \"Displays for lists, sets and dictionaries\": [\n+ [445, \"displays-for-lists-sets-and-dictionaries\"]\n ],\n- \"wsgiref.headers \\u2013 WSGI response header tools\": [\n- [422, \"module-wsgiref.headers\"]\n+ \"List displays\": [\n+ [445, \"list-displays\"]\n ],\n- \"wsgiref.simple_server \\u2013 a simple WSGI HTTP server\": [\n- [422, \"module-wsgiref.simple_server\"]\n+ \"Set displays\": [\n+ [445, \"set-displays\"]\n ],\n- \"wsgiref.validate \\u2014 WSGI conformance checker\": [\n- [422, \"module-wsgiref.validate\"]\n+ \"Dictionary displays\": [\n+ [445, \"dictionary-displays\"]\n ],\n- \"wsgiref.handlers \\u2013 server/gateway base classes\": [\n- [422, \"module-wsgiref.handlers\"]\n+ \"Generator expressions\": [\n+ [445, \"generator-expressions\"]\n ],\n- \"wsgiref.types \\u2013 WSGI types for static type checking\": [\n- [422, \"module-wsgiref.types\"]\n+ \"Yield expressions\": [\n+ [445, \"yield-expressions\"]\n ],\n- \"xml.sax.handler \\u2014 Base classes for SAX handlers\": [\n- [430, \"module-xml.sax.handler\"]\n+ \"Generator-iterator methods\": [\n+ [445, \"generator-iterator-methods\"]\n ],\n- \"ContentHandler Objects\": [\n- [430, \"contenthandler-objects\"]\n+ \"Asynchronous generator functions\": [\n+ [445, \"asynchronous-generator-functions\"],\n+ [443, \"asynchronous-generator-functions\"]\n ],\n- \"DTDHandler Objects\": [\n- [430, \"dtdhandler-objects\"]\n+ \"Asynchronous generator-iterator methods\": [\n+ [445, \"asynchronous-generator-iterator-methods\"]\n ],\n- \"EntityResolver Objects\": [\n- [430, \"entityresolver-objects\"]\n+ \"Primaries\": [\n+ [445, \"primaries\"]\n ],\n- \"ErrorHandler Objects\": [\n- [430, \"errorhandler-objects\"]\n+ \"Attribute references\": [\n+ [445, \"attribute-references\"]\n ],\n- \"LexicalHandler Objects\": [\n- [430, \"lexicalhandler-objects\"]\n+ \"Subscriptions\": [\n+ [445, \"subscriptions\"]\n ],\n- \"xml.dom.minidom \\u2014 Minimal DOM implementation\": [\n- [426, \"module-xml.dom.minidom\"]\n+ \"Slicings\": [\n+ [445, \"slicings\"]\n ],\n- \"DOM Objects\": [\n- [426, \"dom-objects\"]\n+ \"Calls\": [\n+ [445, \"calls\"]\n ],\n- \"DOM Example\": [\n- [426, \"dom-example\"]\n+ \"Await expression\": [\n+ [445, \"await-expression\"]\n ],\n- \"minidom and the DOM standard\": [\n- [426, \"minidom-and-the-dom-standard\"]\n+ \"The power operator\": [\n+ [445, \"the-power-operator\"]\n ],\n- \"zoneinfo \\u2014 IANA time zone support\": [\n- [440, \"module-zoneinfo\"]\n+ \"Unary arithmetic and bitwise operations\": [\n+ [445, \"unary-arithmetic-and-bitwise-operations\"]\n ],\n- \"Using ZoneInfo\": [\n- [440, \"using-zoneinfo\"]\n+ \"Binary arithmetic operations\": [\n+ [445, \"binary-arithmetic-operations\"]\n ],\n- \"Data sources\": [\n- [440, \"data-sources\"]\n+ \"Shifting operations\": [\n+ [445, \"shifting-operations\"]\n ],\n- \"Configuring the data sources\": [\n- [440, \"configuring-the-data-sources\"]\n+ \"Binary bitwise operations\": [\n+ [445, \"binary-bitwise-operations\"]\n ],\n- \"Compile-time configuration\": [\n- [440, \"compile-time-configuration\"]\n+ \"Value comparisons\": [\n+ [445, \"value-comparisons\"]\n ],\n- \"Environment configuration\": [\n- [440, \"environment-configuration\"]\n+ \"Membership test operations\": [\n+ [445, \"membership-test-operations\"]\n ],\n- \"Runtime configuration\": [\n- [440, \"runtime-configuration\"]\n+ \"Identity comparisons\": [\n+ [445, \"is-not\"]\n ],\n- \"The ZoneInfo class\": [\n- [440, \"the-zoneinfo-class\"]\n+ \"Boolean operations\": [\n+ [445, \"boolean-operations\"]\n ],\n- \"String representations\": [\n- [440, \"string-representations\"]\n+ \"Assignment expressions\": [\n+ [445, \"assignment-expressions\"],\n+ [495, \"assignment-expressions\"]\n ],\n- \"Pickle serialization\": [\n- [440, \"pickle-serialization\"]\n+ \"Conditional expressions\": [\n+ [445, \"conditional-expressions\"]\n ],\n- \"Globals\": [\n- [440, \"globals\"]\n+ \"Lambdas\": [\n+ [445, \"lambda\"]\n ],\n- \"Exceptions and warnings\": [\n- [440, \"exceptions-and-warnings\"]\n+ \"Expression lists\": [\n+ [445, \"expression-lists\"]\n ],\n- \"Alternate Implementations\": [\n- [449, \"alternate-implementations\"]\n+ \"Evaluation order\": [\n+ [445, \"evaluation-order\"]\n ],\n- \"Notation\": [\n- [449, \"notation\"]\n+ \"Operator precedence\": [\n+ [445, \"operator-precedence\"]\n ],\n \"Lexical analysis\": [\n [450, \"lexical-analysis\"]\n ],\n \"Line structure\": [\n [450, \"line-structure\"]\n ],\n@@ -62141,380 +62100,227 @@\n [450, \"floating-point-literals\"]\n ],\n \"Imaginary literals\": [\n [450, \"imaginary-literals\"]\n ],\n \"Operators\": [\n [450, \"operators\"],\n+ [311, \"operators\"],\n [274, \"operators\"],\n [274, \"id1\"],\n- [274, \"id2\"],\n- [311, \"operators\"]\n+ [274, \"id2\"]\n ],\n \"Delimiters\": [\n [450, \"delimiters\"]\n ],\n- \"xml.sax \\u2014 Support for SAX2 parsers\": [\n- [429, \"module-xml.sax\"]\n- ],\n- \"SAXException Objects\": [\n- [429, \"saxexception-objects\"]\n- ],\n- \"zipimport \\u2014 Import modules from Zip archives\": [\n- [438, \"module-zipimport\"]\n- ],\n- \"zipimporter Objects\": [\n- [438, \"zipimporter-objects\"]\n- ],\n- \"xml.dom \\u2014 The Document Object Model API\": [\n- [425, \"module-xml.dom\"]\n- ],\n- \"Objects in the DOM\": [\n- [425, \"objects-in-the-dom\"]\n- ],\n- \"DOMImplementation Objects\": [\n- [425, \"domimplementation-objects\"]\n- ],\n- \"Node Objects\": [\n- [425, \"node-objects\"]\n- ],\n- \"NodeList Objects\": [\n- [425, \"nodelist-objects\"]\n- ],\n- \"DocumentType Objects\": [\n- [425, \"documenttype-objects\"]\n- ],\n- \"Document Objects\": [\n- [425, \"document-objects\"]\n- ],\n- \"Element Objects\": [\n- [425, \"element-objects\"],\n- [428, \"element-objects\"]\n- ],\n- \"Attr Objects\": [\n- [425, \"attr-objects\"]\n- ],\n- \"NamedNodeMap Objects\": [\n- [425, \"namednodemap-objects\"]\n+ \"zoneinfo \\u2014 IANA time zone support\": [\n+ [440, \"module-zoneinfo\"]\n ],\n- \"Comment Objects\": [\n- [425, \"comment-objects\"]\n+ \"Using ZoneInfo\": [\n+ [440, \"using-zoneinfo\"]\n ],\n- \"Text and CDATASection Objects\": [\n- [425, \"text-and-cdatasection-objects\"]\n+ \"Data sources\": [\n+ [440, \"data-sources\"]\n ],\n- \"ProcessingInstruction Objects\": [\n- [425, \"processinginstruction-objects\"]\n+ \"Configuring the data sources\": [\n+ [440, \"configuring-the-data-sources\"]\n ],\n- \"Conformance\": [\n- [425, \"conformance\"]\n+ \"Compile-time configuration\": [\n+ [440, \"compile-time-configuration\"]\n ],\n- \"Type Mapping\": [\n- [425, \"type-mapping\"]\n+ \"Environment configuration\": [\n+ [440, \"environment-configuration\"]\n ],\n- \"Accessor Methods\": [\n- [425, \"accessor-methods\"]\n+ \"Runtime configuration\": [\n+ [440, \"runtime-configuration\"]\n ],\n- \"zipapp \\u2014 Manage executable Python zip archives\": [\n- [436, \"module-zipapp\"]\n+ \"The ZoneInfo class\": [\n+ [440, \"the-zoneinfo-class\"]\n ],\n- \"Basic Example\": [\n- [436, \"basic-example\"]\n+ \"String representations\": [\n+ [440, \"string-representations\"]\n ],\n- \"Command-Line Interface\": [\n- [436, \"command-line-interface\"],\n- [437, \"command-line-interface\"],\n- [403, \"command-line-interface\"],\n- [326, \"command-line-interface\"],\n- [382, \"command-line-interface\"],\n- [373, \"command-line-interface\"]\n+ \"Pickle serialization\": [\n+ [440, \"pickle-serialization\"]\n ],\n- \"Python API\": [\n- [436, \"python-api\"]\n+ \"Functions\": [\n+ [440, \"functions\"],\n+ [428, \"functions\"],\n+ [428, \"elementinclude-functions\"],\n+ [420, \"functions\"],\n+ [397, \"functions\"],\n+ [334, \"functions\"],\n+ [322, \"functions\"],\n+ [353, \"functions\"],\n+ [381, \"functions\"],\n+ [360, \"functions\"],\n+ [265, \"functions\"],\n+ [192, \"functions\"],\n+ [190, \"functions\"],\n+ [164, \"functions\"]\n ],\n- \"Specifying the Interpreter\": [\n- [436, \"specifying-the-interpreter\"]\n+ \"Globals\": [\n+ [440, \"globals\"]\n ],\n- \"Creating Standalone Applications with zipapp\": [\n- [436, \"creating-standalone-applications-with-zipapp\"]\n+ \"Exceptions and warnings\": [\n+ [440, \"exceptions-and-warnings\"]\n ],\n- \"Making a Windows executable\": [\n- [436, \"making-a-windows-executable\"]\n+ \"xmlrpc \\u2014 XMLRPC server and client modules\": [\n+ [433, \"xmlrpc-xmlrpc-server-and-client-modules\"]\n ],\n- \"Caveats\": [\n- [436, \"caveats\"]\n+ \"XML Processing Modules\": [\n+ [424, \"module-xml\"]\n ],\n- \"The Python Zip Application Archive Format\": [\n- [436, \"the-python-zip-application-archive-format\"]\n+ \"XML vulnerabilities\": [\n+ [424, \"xml-vulnerabilities\"]\n ],\n- \"The Python Language Reference\": [\n- [448, \"the-python-language-reference\"]\n+ \"The defusedxml Package\": [\n+ [424, \"the-defusedxml-package\"]\n ],\n \"Appendix\": [\n [453, \"appendix\"]\n ],\n- \"Interactive Mode\": [\n- [453, \"interactive-mode\"],\n- [463, \"interactive-mode\"]\n- ],\n- \"Error Handling\": [\n- [453, \"error-handling\"]\n- ],\n- \"Executable Python Scripts\": [\n- [453, \"executable-python-scripts\"]\n- ],\n- \"The Interactive Startup File\": [\n- [453, \"the-interactive-startup-file\"]\n- ],\n- \"The Customization Modules\": [\n- [453, \"the-customization-modules\"]\n- ],\n- \"Execution model\": [\n- [444, \"execution-model\"]\n- ],\n- \"Structure of a program\": [\n- [444, \"structure-of-a-program\"]\n- ],\n- \"Naming and binding\": [\n- [444, \"naming-and-binding\"]\n- ],\n- \"Binding of names\": [\n- [444, \"binding-of-names\"]\n- ],\n- \"Resolution of names\": [\n- [444, \"resolution-of-names\"]\n- ],\n- \"Builtins and restricted execution\": [\n- [444, \"builtins-and-restricted-execution\"]\n- ],\n- \"Interaction with dynamic features\": [\n- [444, \"interaction-with-dynamic-features\"]\n- ],\n- \"Compound statements\": [\n- [442, \"compound-statements\"]\n- ],\n- \"The if statement\": [\n- [442, \"the-if-statement\"]\n- ],\n- \"The while statement\": [\n- [442, \"the-while-statement\"]\n- ],\n- \"The for statement\": [\n- [442, \"the-for-statement\"]\n- ],\n- \"The try statement\": [\n- [442, \"the-try-statement\"]\n- ],\n- \"except clause\": [\n- [442, \"except-clause\"]\n- ],\n- \"except* clause\": [\n- [442, \"except-star\"]\n- ],\n- \"else clause\": [\n- [442, \"else-clause\"]\n- ],\n- \"finally clause\": [\n- [442, \"finally-clause\"]\n- ],\n- \"The with statement\": [\n- [442, \"the-with-statement\"]\n- ],\n- \"The match statement\": [\n- [442, \"the-match-statement\"]\n- ],\n- \"Guards\": [\n- [442, \"guards\"]\n- ],\n- \"Irrefutable Case Blocks\": [\n- [442, \"irrefutable-case-blocks\"]\n- ],\n- \"Patterns\": [\n- [442, \"patterns\"]\n- ],\n- \"OR Patterns\": [\n- [442, \"or-patterns\"]\n- ],\n- \"AS Patterns\": [\n- [442, \"as-patterns\"]\n- ],\n- \"Literal Patterns\": [\n- [442, \"literal-patterns\"]\n- ],\n- \"Capture Patterns\": [\n- [442, \"capture-patterns\"]\n- ],\n- \"Wildcard Patterns\": [\n- [442, \"wildcard-patterns\"]\n- ],\n- \"Value Patterns\": [\n- [442, \"value-patterns\"]\n- ],\n- \"Group Patterns\": [\n- [442, \"group-patterns\"]\n- ],\n- \"Sequence Patterns\": [\n- [442, \"sequence-patterns\"]\n- ],\n- \"Mapping Patterns\": [\n- [442, \"mapping-patterns\"]\n- ],\n- \"Class Patterns\": [\n- [442, \"class-patterns\"]\n- ],\n- \"Function definitions\": [\n- [442, \"function-definitions\"]\n- ],\n- \"Class definitions\": [\n- [442, \"class-definitions\"]\n- ],\n- \"Coroutines\": [\n- [442, \"coroutines\"],\n- [443, \"coroutines\"],\n- [151, \"coroutines\"]\n- ],\n- \"Coroutine function definition\": [\n- [442, \"coroutine-function-definition\"]\n- ],\n- \"The async for statement\": [\n- [442, \"the-async-for-statement\"]\n- ],\n- \"The async with statement\": [\n- [442, \"the-async-with-statement\"]\n- ],\n- \"xmlrpc.server \\u2014 Basic XML-RPC servers\": [\n- [435, \"module-xmlrpc.server\"]\n+ \"Interactive Mode\": [\n+ [453, \"interactive-mode\"],\n+ [463, \"interactive-mode\"]\n ],\n- \"SimpleXMLRPCServer Objects\": [\n- [435, \"simplexmlrpcserver-objects\"]\n+ \"Error Handling\": [\n+ [453, \"error-handling\"]\n ],\n- \"SimpleXMLRPCServer Example\": [\n- [435, \"simplexmlrpcserver-example\"]\n+ \"Executable Python Scripts\": [\n+ [453, \"executable-python-scripts\"]\n ],\n- \"CGIXMLRPCRequestHandler\": [\n- [435, \"cgixmlrpcrequesthandler\"]\n+ \"The Interactive Startup File\": [\n+ [453, \"the-interactive-startup-file\"]\n ],\n- \"Documenting XMLRPC server\": [\n- [435, \"documenting-xmlrpc-server\"]\n+ \"The Customization Modules\": [\n+ [453, \"the-customization-modules\"]\n ],\n- \"DocXMLRPCServer Objects\": [\n- [435, \"docxmlrpcserver-objects\"]\n+ \"winsound \\u2014 Sound-playing interface for Windows\": [\n+ [421, \"module-winsound\"]\n ],\n- \"DocCGIXMLRPCRequestHandler\": [\n- [435, \"doccgixmlrpcrequesthandler\"]\n+ \"Top-level components\": [\n+ [452, \"top-level-components\"]\n ],\n- \"xmlrpc \\u2014 XMLRPC server and client modules\": [\n- [433, \"xmlrpc-xmlrpc-server-and-client-modules\"]\n+ \"Complete Python programs\": [\n+ [452, \"complete-python-programs\"]\n ],\n- \"Whetting Your Appetite\": [\n- [454, \"whetting-your-appetite\"]\n+ \"File input\": [\n+ [452, \"file-input\"]\n ],\n- \"Arithmetic conversions\": [\n- [445, \"arithmetic-conversions\"]\n+ \"Interactive input\": [\n+ [452, \"interactive-input\"]\n ],\n- \"Atoms\": [\n- [445, \"atoms\"]\n+ \"Expression input\": [\n+ [452, \"expression-input\"]\n ],\n- \"Identifiers (Names)\": [\n- [445, \"atom-identifiers\"]\n+ \"xml.dom \\u2014 The Document Object Model API\": [\n+ [425, \"module-xml.dom\"]\n ],\n- \"Parenthesized forms\": [\n- [445, \"parenthesized-forms\"]\n+ \"Objects in the DOM\": [\n+ [425, \"objects-in-the-dom\"]\n ],\n- \"Displays for lists, sets and dictionaries\": [\n- [445, \"displays-for-lists-sets-and-dictionaries\"]\n+ \"DOMImplementation Objects\": [\n+ [425, \"domimplementation-objects\"]\n ],\n- \"List displays\": [\n- [445, \"list-displays\"]\n+ \"Node Objects\": [\n+ [425, \"node-objects\"]\n ],\n- \"Set displays\": [\n- [445, \"set-displays\"]\n+ \"NodeList Objects\": [\n+ [425, \"nodelist-objects\"]\n ],\n- \"Dictionary displays\": [\n- [445, \"dictionary-displays\"]\n+ \"DocumentType Objects\": [\n+ [425, \"documenttype-objects\"]\n ],\n- \"Generator expressions\": [\n- [445, \"generator-expressions\"]\n+ \"Document Objects\": [\n+ [425, \"document-objects\"]\n ],\n- \"Yield expressions\": [\n- [445, \"yield-expressions\"]\n+ \"Element Objects\": [\n+ [425, \"element-objects\"],\n+ [428, \"element-objects\"]\n ],\n- \"Generator-iterator methods\": [\n- [445, \"generator-iterator-methods\"]\n+ \"Attr Objects\": [\n+ [425, \"attr-objects\"]\n ],\n- \"Asynchronous generator functions\": [\n- [445, \"asynchronous-generator-functions\"],\n- [443, \"asynchronous-generator-functions\"]\n+ \"NamedNodeMap Objects\": [\n+ [425, \"namednodemap-objects\"]\n ],\n- \"Asynchronous generator-iterator methods\": [\n- [445, \"asynchronous-generator-iterator-methods\"]\n+ \"Comment Objects\": [\n+ [425, \"comment-objects\"]\n ],\n- \"Primaries\": [\n- [445, \"primaries\"]\n+ \"Text and CDATASection Objects\": [\n+ [425, \"text-and-cdatasection-objects\"]\n ],\n- \"Attribute references\": [\n- [445, \"attribute-references\"]\n+ \"ProcessingInstruction Objects\": [\n+ [425, \"processinginstruction-objects\"]\n ],\n- \"Subscriptions\": [\n- [445, \"subscriptions\"]\n+ \"Conformance\": [\n+ [425, \"conformance\"]\n ],\n- \"Slicings\": [\n- [445, \"slicings\"]\n+ \"Type Mapping\": [\n+ [425, \"type-mapping\"]\n ],\n- \"Calls\": [\n- [445, \"calls\"]\n+ \"Accessor Methods\": [\n+ [425, \"accessor-methods\"]\n ],\n- \"Await expression\": [\n- [445, \"await-expression\"]\n+ \"xml.etree.ElementTree \\u2014 The ElementTree XML API\": [\n+ [428, \"module-xml.etree.ElementTree\"]\n ],\n- \"The power operator\": [\n- [445, \"the-power-operator\"]\n+ \"XML tree and elements\": [\n+ [428, \"xml-tree-and-elements\"]\n ],\n- \"Unary arithmetic and bitwise operations\": [\n- [445, \"unary-arithmetic-and-bitwise-operations\"]\n+ \"Parsing XML\": [\n+ [428, \"parsing-xml\"]\n ],\n- \"Binary arithmetic operations\": [\n- [445, \"binary-arithmetic-operations\"]\n+ \"Pull API for non-blocking parsing\": [\n+ [428, \"pull-api-for-non-blocking-parsing\"]\n ],\n- \"Shifting operations\": [\n- [445, \"shifting-operations\"]\n+ \"Finding interesting elements\": [\n+ [428, \"finding-interesting-elements\"]\n ],\n- \"Binary bitwise operations\": [\n- [445, \"binary-bitwise-operations\"]\n+ \"Modifying an XML File\": [\n+ [428, \"modifying-an-xml-file\"]\n ],\n- \"Value comparisons\": [\n- [445, \"value-comparisons\"]\n+ \"Building XML documents\": [\n+ [428, \"building-xml-documents\"]\n ],\n- \"Membership test operations\": [\n- [445, \"membership-test-operations\"]\n+ \"Parsing XML with Namespaces\": [\n+ [428, \"parsing-xml-with-namespaces\"]\n ],\n- \"Identity comparisons\": [\n- [445, \"is-not\"]\n+ \"XPath support\": [\n+ [428, \"xpath-support\"]\n ],\n- \"Boolean operations\": [\n- [445, \"boolean-operations\"]\n+ \"Supported XPath syntax\": [\n+ [428, \"supported-xpath-syntax\"]\n ],\n- \"Assignment expressions\": [\n- [445, \"assignment-expressions\"],\n- [495, \"assignment-expressions\"]\n+ \"Reference\": [\n+ [428, \"reference\"],\n+ [428, \"id4\"],\n+ [356, \"reference\"],\n+ [298, \"reference\"],\n+ [237, \"reference\"]\n ],\n- \"Conditional expressions\": [\n- [445, \"conditional-expressions\"]\n+ \"XInclude support\": [\n+ [428, \"xinclude-support\"]\n ],\n- \"Lambdas\": [\n- [445, \"lambda\"]\n+ \"ElementTree Objects\": [\n+ [428, \"elementtree-objects\"]\n ],\n- \"Expression lists\": [\n- [445, \"expression-lists\"]\n+ \"QName Objects\": [\n+ [428, \"qname-objects\"]\n ],\n- \"Evaluation order\": [\n- [445, \"evaluation-order\"]\n+ \"TreeBuilder Objects\": [\n+ [428, \"treebuilder-objects\"]\n ],\n- \"Operator precedence\": [\n- [445, \"operator-precedence\"]\n+ \"XMLParser Objects\": [\n+ [428, \"xmlparser-objects\"],\n+ [329, \"xmlparser-objects\"]\n+ ],\n+ \"XMLPullParser Objects\": [\n+ [428, \"xmlpullparser-objects\"]\n ],\n \"zipfile \\u2014 Work with ZIP archives\": [\n [437, \"module-zipfile\"]\n ],\n \"ZipFile Objects\": [\n [437, \"zipfile-objects\"]\n ],\n@@ -62523,14 +62329,22 @@\n ],\n \"PyZipFile Objects\": [\n [437, \"pyzipfile-objects\"]\n ],\n \"ZipInfo Objects\": [\n [437, \"zipinfo-objects\"]\n ],\n+ \"Command-Line Interface\": [\n+ [437, \"command-line-interface\"],\n+ [436, \"command-line-interface\"],\n+ [403, \"command-line-interface\"],\n+ [326, \"command-line-interface\"],\n+ [382, \"command-line-interface\"],\n+ [373, \"command-line-interface\"]\n+ ],\n \"Command-line options\": [\n [437, \"command-line-options\"],\n [403, \"command-line-options\"],\n [373, \"command-line-options\"]\n ],\n \"Decompression pitfalls\": [\n [437, \"decompression-pitfalls\"]\n@@ -62546,31 +62360,31 @@\n ],\n \"Interruption\": [\n [437, \"interruption\"]\n ],\n \"Default behaviors of extraction\": [\n [437, \"default-behaviors-of-extraction\"]\n ],\n- \"XML Processing Modules\": [\n- [424, \"module-xml\"]\n+ \"xml.sax.handler \\u2014 Base classes for SAX handlers\": [\n+ [430, \"module-xml.sax.handler\"]\n ],\n- \"XML vulnerabilities\": [\n- [424, \"xml-vulnerabilities\"]\n+ \"ContentHandler Objects\": [\n+ [430, \"contenthandler-objects\"]\n ],\n- \"The defusedxml Package\": [\n- [424, \"the-defusedxml-package\"]\n+ \"DTDHandler Objects\": [\n+ [430, \"dtdhandler-objects\"]\n ],\n- \"xdrlib \\u2014 Encode and decode XDR data\": [\n- [423, \"module-xdrlib\"]\n+ \"EntityResolver Objects\": [\n+ [430, \"entityresolver-objects\"]\n ],\n- \"Packer Objects\": [\n- [423, \"packer-objects\"]\n+ \"ErrorHandler Objects\": [\n+ [430, \"errorhandler-objects\"]\n ],\n- \"Unpacker Objects\": [\n- [423, \"unpacker-objects\"]\n+ \"LexicalHandler Objects\": [\n+ [430, \"lexicalhandler-objects\"]\n ],\n \"Data model\": [\n [443, \"data-model\"]\n ],\n \"Objects, values and types\": [\n [443, \"objects-values-and-types\"]\n ],\n@@ -62761,23 +62575,182 @@\n ],\n \"Customizing positional arguments in class pattern matching\": [\n [443, \"customizing-positional-arguments-in-class-pattern-matching\"]\n ],\n \"Special method lookup\": [\n [443, \"special-method-lookup\"]\n ],\n+ \"Coroutines\": [\n+ [443, \"coroutines\"],\n+ [442, \"coroutines\"],\n+ [151, \"coroutines\"]\n+ ],\n \"Awaitable Objects\": [\n [443, \"awaitable-objects\"]\n ],\n \"Asynchronous Iterators\": [\n [443, \"asynchronous-iterators\"]\n ],\n \"Asynchronous Context Managers\": [\n [443, \"asynchronous-context-managers\"]\n ],\n+ \"The Python Language Reference\": [\n+ [448, \"the-python-language-reference\"]\n+ ],\n+ \"xml.dom.minidom \\u2014 Minimal DOM implementation\": [\n+ [426, \"module-xml.dom.minidom\"]\n+ ],\n+ \"DOM Objects\": [\n+ [426, \"dom-objects\"]\n+ ],\n+ \"DOM Example\": [\n+ [426, \"dom-example\"]\n+ ],\n+ \"minidom and the DOM standard\": [\n+ [426, \"minidom-and-the-dom-standard\"]\n+ ],\n+ \"winreg \\u2014 Windows registry access\": [\n+ [420, \"module-winreg\"]\n+ ],\n+ \"Constants\": [\n+ [420, \"constants\"],\n+ [353, \"constants\"],\n+ [357, \"constants\"],\n+ [290, \"constants\"],\n+ [249, \"constants\"],\n+ [196, \"constants\"],\n+ [190, \"constants\"],\n+ [199, \"constants\"],\n+ [167, \"constants\"],\n+ [149, \"constants\"]\n+ ],\n+ \"HKEY_* Constants\": [\n+ [420, \"hkey-constants\"]\n+ ],\n+ \"Access Rights\": [\n+ [420, \"access-rights\"]\n+ ],\n+ \"64-bit Specific\": [\n+ [420, \"bit-specific\"]\n+ ],\n+ \"Value Types\": [\n+ [420, \"value-types\"]\n+ ],\n+ \"Registry Handle Objects\": [\n+ [420, \"registry-handle-objects\"]\n+ ],\n+ \"xml.sax.saxutils \\u2014 SAX Utilities\": [\n+ [432, \"module-xml.sax.saxutils\"]\n+ ],\n+ \"Simple statements\": [\n+ [451, \"simple-statements\"]\n+ ],\n+ \"Expression statements\": [\n+ [451, \"expression-statements\"]\n+ ],\n+ \"Assignment statements\": [\n+ [451, \"assignment-statements\"]\n+ ],\n+ \"Augmented assignment statements\": [\n+ [451, \"augmented-assignment-statements\"]\n+ ],\n+ \"Annotated assignment statements\": [\n+ [451, \"annotated-assignment-statements\"]\n+ ],\n+ \"The assert statement\": [\n+ [451, \"the-assert-statement\"]\n+ ],\n+ \"The pass statement\": [\n+ [451, \"the-pass-statement\"]\n+ ],\n+ \"The del statement\": [\n+ [451, \"the-del-statement\"],\n+ [457, \"the-del-statement\"]\n+ ],\n+ \"The return statement\": [\n+ [451, \"the-return-statement\"]\n+ ],\n+ \"The yield statement\": [\n+ [451, \"the-yield-statement\"]\n+ ],\n+ \"The raise statement\": [\n+ [451, \"the-raise-statement\"]\n+ ],\n+ \"The break statement\": [\n+ [451, \"the-break-statement\"]\n+ ],\n+ \"The continue statement\": [\n+ [451, \"the-continue-statement\"]\n+ ],\n+ \"The import statement\": [\n+ [451, \"the-import-statement\"]\n+ ],\n+ \"Future statements\": [\n+ [451, \"future-statements\"]\n+ ],\n+ \"The global statement\": [\n+ [451, \"the-global-statement\"]\n+ ],\n+ \"The nonlocal statement\": [\n+ [451, \"the-nonlocal-statement\"]\n+ ],\n+ \"xdrlib \\u2014 Encode and decode XDR data\": [\n+ [423, \"module-xdrlib\"]\n+ ],\n+ \"Packer Objects\": [\n+ [423, \"packer-objects\"]\n+ ],\n+ \"Unpacker Objects\": [\n+ [423, \"unpacker-objects\"]\n+ ],\n+ \"zipapp \\u2014 Manage executable Python zip archives\": [\n+ [436, \"module-zipapp\"]\n+ ],\n+ \"Basic Example\": [\n+ [436, \"basic-example\"]\n+ ],\n+ \"Python API\": [\n+ [436, \"python-api\"]\n+ ],\n+ \"Specifying the Interpreter\": [\n+ [436, \"specifying-the-interpreter\"]\n+ ],\n+ \"Creating Standalone Applications with zipapp\": [\n+ [436, \"creating-standalone-applications-with-zipapp\"]\n+ ],\n+ \"Making a Windows executable\": [\n+ [436, \"making-a-windows-executable\"]\n+ ],\n+ \"Caveats\": [\n+ [436, \"caveats\"]\n+ ],\n+ \"The Python Zip Application Archive Format\": [\n+ [436, \"the-python-zip-application-archive-format\"]\n+ ],\n+ \"wsgiref \\u2014 WSGI Utilities and Reference Implementation\": [\n+ [422, \"module-wsgiref\"]\n+ ],\n+ \"wsgiref.util \\u2013 WSGI environment utilities\": [\n+ [422, \"module-wsgiref.util\"]\n+ ],\n+ \"wsgiref.headers \\u2013 WSGI response header tools\": [\n+ [422, \"module-wsgiref.headers\"]\n+ ],\n+ \"wsgiref.simple_server \\u2013 a simple WSGI HTTP server\": [\n+ [422, \"module-wsgiref.simple_server\"]\n+ ],\n+ \"wsgiref.validate \\u2014 WSGI conformance checker\": [\n+ [422, \"module-wsgiref.validate\"]\n+ ],\n+ \"wsgiref.handlers \\u2013 server/gateway base classes\": [\n+ [422, \"module-wsgiref.handlers\"]\n+ ],\n+ \"wsgiref.types \\u2013 WSGI types for static type checking\": [\n+ [422, \"module-wsgiref.types\"]\n+ ],\n \"xmlrpc.client \\u2014 XML-RPC client access\": [\n [434, \"module-xmlrpc.client\"]\n ],\n \"ServerProxy Objects\": [\n [434, \"serverproxy-objects\"]\n ],\n \"Binary Objects\": [\n@@ -62797,190 +62770,270 @@\n ],\n \"Example of Client Usage\": [\n [434, \"example-of-client-usage\"]\n ],\n \"Example of Client and Server Usage\": [\n [434, \"example-of-client-and-server-usage\"]\n ],\n- \"History and License\": [\n- [441, \"history-and-license\"]\n+ \"The import system\": [\n+ [447, \"the-import-system\"]\n ],\n- \"History of the software\": [\n- [441, \"history-of-the-software\"]\n+ \"importlib\": [\n+ [447, \"importlib\"],\n+ [496, \"importlib\"],\n+ [494, \"importlib\"],\n+ [494, \"id6\"],\n+ [492, \"importlib\"],\n+ [491, \"importlib\"],\n+ [493, \"importlib\"],\n+ [493, \"id3\"]\n ],\n- \"Terms and conditions for accessing or otherwise using Python\": [\n- [441, \"terms-and-conditions-for-accessing-or-otherwise-using-python\"]\n+ \"Packages\": [\n+ [447, \"packages\"],\n+ [465, \"packages\"]\n ],\n- \"PSF LICENSE AGREEMENT FOR PYTHON 3.11.9\": [\n- [441, \"psf-license-agreement-for-python-release\"]\n+ \"Regular packages\": [\n+ [447, \"regular-packages\"]\n ],\n- \"BEOPEN.COM LICENSE AGREEMENT FOR PYTHON 2.0\": [\n- [441, \"beopen-com-license-agreement-for-python-2-0\"]\n+ \"Namespace packages\": [\n+ [447, \"namespace-packages\"]\n ],\n- \"CNRI LICENSE AGREEMENT FOR PYTHON 1.6.1\": [\n- [441, \"cnri-license-agreement-for-python-1-6-1\"]\n+ \"Searching\": [\n+ [447, \"searching\"]\n ],\n- \"CWI LICENSE AGREEMENT FOR PYTHON 0.9.0 THROUGH 1.2\": [\n- [441, \"cwi-license-agreement-for-python-0-9-0-through-1-2\"]\n+ \"The module cache\": [\n+ [447, \"the-module-cache\"]\n ],\n- \"ZERO-CLAUSE BSD LICENSE FOR CODE IN THE PYTHON 3.11.9 DOCUMENTATION\": [\n- [441, \"zero-clause-bsd-license-for-code-in-the-python-release-documentation\"]\n+ \"Finders and loaders\": [\n+ [447, \"finders-and-loaders\"]\n ],\n- \"Licenses and Acknowledgements for Incorporated Software\": [\n- [441, \"licenses-and-acknowledgements-for-incorporated-software\"]\n+ \"Import hooks\": [\n+ [447, \"import-hooks\"]\n ],\n- \"Mersenne Twister\": [\n- [441, \"mersenne-twister\"]\n+ \"The meta path\": [\n+ [447, \"the-meta-path\"]\n ],\n- \"Asynchronous socket services\": [\n- [441, \"asynchronous-socket-services\"]\n+ \"Loading\": [\n+ [447, \"loading\"]\n ],\n- \"Cookie management\": [\n- [441, \"cookie-management\"]\n+ \"Loaders\": [\n+ [447, \"loaders\"]\n ],\n- \"Execution tracing\": [\n- [441, \"execution-tracing\"]\n+ \"Submodules\": [\n+ [447, \"submodules\"]\n ],\n- \"UUencode and UUdecode functions\": [\n- [441, \"uuencode-and-uudecode-functions\"]\n+ \"Module spec\": [\n+ [447, \"module-spec\"]\n ],\n- \"XML Remote Procedure Calls\": [\n- [441, \"xml-remote-procedure-calls\"]\n+ \"Import-related module attributes\": [\n+ [447, \"import-related-module-attributes\"]\n ],\n- \"test_epoll\": [\n- [441, \"test-epoll\"]\n+ \"module.__path__\": [\n+ [447, \"module-path\"]\n ],\n- \"Select kqueue\": [\n- [441, \"select-kqueue\"]\n+ \"Module reprs\": [\n+ [447, \"module-reprs\"]\n ],\n- \"SipHash24\": [\n- [441, \"siphash24\"]\n+ \"Cached bytecode invalidation\": [\n+ [447, \"cached-bytecode-invalidation\"]\n ],\n- \"strtod and dtoa\": [\n- [441, \"strtod-and-dtoa\"]\n+ \"The Path Based Finder\": [\n+ [447, \"the-path-based-finder\"]\n ],\n- \"OpenSSL\": [\n- [441, \"openssl\"],\n- [488, \"openssl\"]\n+ \"Path entry finders\": [\n+ [447, \"path-entry-finders\"]\n ],\n- \"expat\": [\n- [441, \"expat\"]\n+ \"Path entry finder protocol\": [\n+ [447, \"path-entry-finder-protocol\"]\n ],\n- \"libffi\": [\n- [441, \"libffi\"]\n+ \"Replacing the standard import system\": [\n+ [447, \"replacing-the-standard-import-system\"]\n ],\n- \"zlib\": [\n- [441, \"zlib\"],\n- [493, \"zlib\"],\n- [490, \"zlib\"]\n+ \"Package Relative Imports\": [\n+ [447, \"package-relative-imports\"]\n ],\n- \"cfuhash\": [\n- [441, \"cfuhash\"]\n+ \"Special considerations for __main__\": [\n+ [447, \"special-considerations-for-main\"]\n ],\n- \"libmpdec\": [\n- [441, \"libmpdec\"]\n+ \"__main__.__spec__\": [\n+ [447, \"main-spec\"]\n ],\n- \"W3C C14N test suite\": [\n- [441, \"w3c-c14n-test-suite\"]\n+ \"xml.sax \\u2014 Support for SAX2 parsers\": [\n+ [429, \"module-xml.sax\"]\n ],\n- \"Audioop\": [\n- [441, \"audioop\"]\n+ \"SAXException Objects\": [\n+ [429, \"saxexception-objects\"]\n ],\n- \"asyncio\": [\n- [441, \"asyncio\"],\n- [487, \"asyncio\"],\n- [488, \"asyncio\"],\n- [493, \"asyncio\"],\n- [492, \"asyncio\"],\n- [494, \"asyncio\"],\n- [494, \"whatsnew37-asyncio-deprecated\"],\n- [491, \"asyncio\"],\n- [495, \"asyncio\"],\n- [496, \"asyncio\"]\n+ \"Alternate Implementations\": [\n+ [449, \"alternate-implementations\"]\n ],\n- \"winsound \\u2014 Sound-playing interface for Windows\": [\n- [421, \"module-winsound\"]\n+ \"Notation\": [\n+ [449, \"notation\"]\n ],\n- \"xml.etree.ElementTree \\u2014 The ElementTree XML API\": [\n- [428, \"module-xml.etree.ElementTree\"]\n+ \"Compound statements\": [\n+ [442, \"compound-statements\"]\n ],\n- \"XML tree and elements\": [\n- [428, \"xml-tree-and-elements\"]\n+ \"The if statement\": [\n+ [442, \"the-if-statement\"]\n ],\n- \"Parsing XML\": [\n- [428, \"parsing-xml\"]\n+ \"The while statement\": [\n+ [442, \"the-while-statement\"]\n ],\n- \"Pull API for non-blocking parsing\": [\n- [428, \"pull-api-for-non-blocking-parsing\"]\n+ \"The for statement\": [\n+ [442, \"the-for-statement\"]\n ],\n- \"Finding interesting elements\": [\n- [428, \"finding-interesting-elements\"]\n+ \"The try statement\": [\n+ [442, \"the-try-statement\"]\n ],\n- \"Modifying an XML File\": [\n- [428, \"modifying-an-xml-file\"]\n+ \"except clause\": [\n+ [442, \"except-clause\"]\n ],\n- \"Building XML documents\": [\n- [428, \"building-xml-documents\"]\n+ \"except* clause\": [\n+ [442, \"except-star\"]\n ],\n- \"Parsing XML with Namespaces\": [\n- [428, \"parsing-xml-with-namespaces\"]\n+ \"else clause\": [\n+ [442, \"else-clause\"]\n ],\n- \"XPath support\": [\n- [428, \"xpath-support\"]\n+ \"finally clause\": [\n+ [442, \"finally-clause\"]\n ],\n- \"Supported XPath syntax\": [\n- [428, \"supported-xpath-syntax\"]\n+ \"The with statement\": [\n+ [442, \"the-with-statement\"]\n ],\n- \"Reference\": [\n- [428, \"reference\"],\n- [428, \"id4\"],\n- [356, \"reference\"],\n- [298, \"reference\"],\n- [237, \"reference\"]\n+ \"The match statement\": [\n+ [442, \"the-match-statement\"]\n ],\n- \"XInclude support\": [\n- [428, \"xinclude-support\"]\n+ \"Guards\": [\n+ [442, \"guards\"]\n ],\n- \"ElementTree Objects\": [\n- [428, \"elementtree-objects\"]\n+ \"Irrefutable Case Blocks\": [\n+ [442, \"irrefutable-case-blocks\"]\n ],\n- \"QName Objects\": [\n- [428, \"qname-objects\"]\n+ \"Patterns\": [\n+ [442, \"patterns\"]\n ],\n- \"TreeBuilder Objects\": [\n- [428, \"treebuilder-objects\"]\n+ \"OR Patterns\": [\n+ [442, \"or-patterns\"]\n ],\n- \"XMLParser Objects\": [\n- [428, \"xmlparser-objects\"],\n- [329, \"xmlparser-objects\"]\n+ \"AS Patterns\": [\n+ [442, \"as-patterns\"]\n ],\n- \"XMLPullParser Objects\": [\n- [428, \"xmlpullparser-objects\"]\n+ \"Literal Patterns\": [\n+ [442, \"literal-patterns\"]\n ],\n- \"xml.dom.pulldom \\u2014 Support for building partial DOM trees\": [\n- [427, \"module-xml.dom.pulldom\"]\n+ \"Capture Patterns\": [\n+ [442, \"capture-patterns\"]\n ],\n- \"DOMEventStream Objects\": [\n- [427, \"domeventstream-objects\"]\n+ \"Wildcard Patterns\": [\n+ [442, \"wildcard-patterns\"]\n ],\n- \"An Informal Introduction to Python\": [\n- [464, \"an-informal-introduction-to-python\"]\n+ \"Value Patterns\": [\n+ [442, \"value-patterns\"]\n ],\n- \"Using Python as a Calculator\": [\n- [464, \"using-python-as-a-calculator\"]\n+ \"Group Patterns\": [\n+ [442, \"group-patterns\"]\n ],\n- \"Text\": [\n- [464, \"text\"]\n+ \"Sequence Patterns\": [\n+ [442, \"sequence-patterns\"]\n ],\n- \"Lists\": [\n- [464, \"lists\"],\n- [360, \"lists\"]\n+ \"Mapping Patterns\": [\n+ [442, \"mapping-patterns\"]\n ],\n- \"First Steps Towards Programming\": [\n- [464, \"first-steps-towards-programming\"]\n+ \"Class Patterns\": [\n+ [442, \"class-patterns\"]\n+ ],\n+ \"Function definitions\": [\n+ [442, \"function-definitions\"]\n+ ],\n+ \"Class definitions\": [\n+ [442, \"class-definitions\"]\n+ ],\n+ \"Coroutine function definition\": [\n+ [442, \"coroutine-function-definition\"]\n+ ],\n+ \"The async for statement\": [\n+ [442, \"the-async-for-statement\"]\n+ ],\n+ \"The async with statement\": [\n+ [442, \"the-async-with-statement\"]\n+ ],\n+ \"zlib \\u2014 Compression compatible with gzip\": [\n+ [439, \"module-zlib\"]\n+ ],\n+ \"Full Grammar specification\": [\n+ [446, \"full-grammar-specification\"]\n+ ],\n+ \"What\\u2019s New in Python 2.0\": [\n+ [477, \"what-s-new-in-python-2-0\"]\n+ ],\n+ \"What About Python 1.6?\": [\n+ [477, \"what-about-python-1-6\"]\n+ ],\n+ \"New Development Process\": [\n+ [477, \"new-development-process\"]\n+ ],\n+ \"Unicode\": [\n+ [477, \"unicode\"],\n+ [489, \"unicode\"]\n+ ],\n+ \"List Comprehensions\": [\n+ [477, \"list-comprehensions\"],\n+ [457, \"list-comprehensions\"]\n+ ],\n+ \"Augmented Assignment\": [\n+ [477, \"augmented-assignment\"]\n+ ],\n+ \"String Methods\": [\n+ [477, \"string-methods\"],\n+ [360, \"string-methods\"]\n+ ],\n+ \"Garbage Collection of Cycles\": [\n+ [477, \"garbage-collection-of-cycles\"]\n+ ],\n+ \"Other Core Changes\": [\n+ [477, \"other-core-changes\"]\n+ ],\n+ \"Minor Language Changes\": [\n+ [477, \"minor-language-changes\"]\n+ ],\n+ \"Changes to Built-in Functions\": [\n+ [477, \"changes-to-built-in-functions\"]\n+ ],\n+ \"Porting to 2.0\": [\n+ [477, \"porting-to-2-0\"]\n+ ],\n+ \"Extending/Embedding Changes\": [\n+ [477, \"extending-embedding-changes\"]\n+ ],\n+ \"Distutils: Making Modules Easy to Install\": [\n+ [477, \"distutils-making-modules-easy-to-install\"]\n+ ],\n+ \"XML Modules\": [\n+ [477, \"xml-modules\"]\n+ ],\n+ \"SAX2 Support\": [\n+ [477, \"sax2-support\"]\n+ ],\n+ \"DOM Support\": [\n+ [477, \"dom-support\"]\n+ ],\n+ \"Relationship to PyXML\": [\n+ [477, \"relationship-to-pyxml\"]\n+ ],\n+ \"Module changes\": [\n+ [477, \"module-changes\"]\n+ ],\n+ \"New modules\": [\n+ [477, \"new-modules\"]\n+ ],\n+ \"IDLE Improvements\": [\n+ [477, \"idle-improvements\"]\n+ ],\n+ \"Deleted and Deprecated Modules\": [\n+ [477, \"deleted-and-deprecated-modules\"]\n ],\n \"What\\u2019s New in Python 2.4\": [\n [481, \"what-s-new-in-python-2-4\"]\n ],\n \"PEP 218: Built-In Set Objects\": [\n [481, \"pep-218-built-in-set-objects\"]\n ],\n@@ -63020,45 +63073,45 @@\n ],\n \"PEP 331: Locale-Independent Float/String Conversions\": [\n [481, \"pep-331-locale-independent-float-string-conversions\"]\n ],\n \"Other Language Changes\": [\n [481, \"other-language-changes\"],\n [487, \"other-language-changes\"],\n- [484, \"other-language-changes\"],\n [488, \"other-language-changes\"],\n [489, \"other-language-changes\"],\n- [483, \"other-language-changes\"],\n- [482, \"other-language-changes\"],\n [480, \"other-language-changes\"],\n+ [482, \"other-language-changes\"],\n [486, \"other-language-changes\"],\n- [493, \"other-language-changes\"],\n- [492, \"other-language-changes\"],\n+ [484, \"other-language-changes\"],\n+ [483, \"other-language-changes\"],\n+ [496, \"other-language-changes\"],\n [494, \"other-language-changes\"],\n- [491, \"other-language-changes\"],\n- [495, \"other-language-changes\"],\n [490, \"other-language-changes\"],\n- [496, \"other-language-changes\"]\n+ [495, \"other-language-changes\"],\n+ [492, \"other-language-changes\"],\n+ [491, \"other-language-changes\"],\n+ [493, \"other-language-changes\"]\n ],\n \"Optimizations\": [\n [481, \"optimizations\"],\n [487, \"optimizations\"],\n- [484, \"optimizations\"],\n [488, \"optimizations\"],\n [489, \"optimizations\"],\n- [483, \"optimizations\"],\n- [482, \"optimizations\"],\n [480, \"optimizations\"],\n+ [482, \"optimizations\"],\n [486, \"optimizations\"],\n- [493, \"optimizations\"],\n- [492, \"optimizations\"],\n+ [484, \"optimizations\"],\n+ [483, \"optimizations\"],\n+ [496, \"optimizations\"],\n [494, \"optimizations\"],\n- [495, \"optimizations\"],\n [490, \"optimizations\"],\n- [496, \"optimizations\"]\n+ [495, \"optimizations\"],\n+ [492, \"optimizations\"],\n+ [493, \"optimizations\"]\n ],\n \"New, Improved, and Deprecated Modules\": [\n [481, \"new-improved-and-deprecated-modules\"],\n [489, \"new-improved-and-deprecated-modules\"],\n [480, \"new-improved-and-deprecated-modules\"],\n [486, \"new-improved-and-deprecated-modules\"]\n ],\n@@ -63069,142 +63122,82 @@\n [481, \"doctest\"],\n [487, \"doctest\"],\n [492, \"doctest\"],\n [491, \"doctest\"]\n ],\n \"Build and C API Changes\": [\n [481, \"build-and-c-api-changes\"],\n- [485, \"build-and-c-api-changes\"],\n- [484, \"build-and-c-api-changes\"],\n [489, \"build-and-c-api-changes\"],\n- [483, \"build-and-c-api-changes\"],\n- [482, \"build-and-c-api-changes\"],\n [480, \"build-and-c-api-changes\"],\n+ [482, \"build-and-c-api-changes\"],\n [486, \"build-and-c-api-changes\"],\n- [493, \"build-and-c-api-changes\"],\n- [492, \"build-and-c-api-changes\"],\n+ [484, \"build-and-c-api-changes\"],\n+ [483, \"build-and-c-api-changes\"],\n+ [485, \"build-and-c-api-changes\"],\n+ [490, \"build-and-c-api-changes\"],\n [495, \"build-and-c-api-changes\"],\n- [490, \"build-and-c-api-changes\"]\n+ [492, \"build-and-c-api-changes\"],\n+ [493, \"build-and-c-api-changes\"]\n ],\n \"Port-Specific Changes\": [\n [481, \"port-specific-changes\"],\n- [482, \"port-specific-changes\"],\n- [480, \"port-specific-changes\"]\n+ [480, \"port-specific-changes\"],\n+ [482, \"port-specific-changes\"]\n ],\n \"Porting to Python 2.4\": [\n [481, \"porting-to-python-2-4\"]\n ],\n- \"Errors and Exceptions\": [\n- [458, \"errors-and-exceptions\"]\n- ],\n- \"Syntax Errors\": [\n- [458, \"syntax-errors\"]\n- ],\n- \"Raising Exceptions\": [\n- [458, \"raising-exceptions\"]\n- ],\n- \"Exception Chaining\": [\n- [458, \"exception-chaining\"]\n- ],\n- \"User-defined Exceptions\": [\n- [458, \"user-defined-exceptions\"]\n- ],\n- \"Defining Clean-up Actions\": [\n- [458, \"defining-clean-up-actions\"]\n- ],\n- \"Predefined Clean-up Actions\": [\n- [458, \"predefined-clean-up-actions\"]\n- ],\n- \"Raising and Handling Multiple Unrelated Exceptions\": [\n- [458, \"raising-and-handling-multiple-unrelated-exceptions\"]\n- ],\n- \"Enriching Exceptions with Notes\": [\n- [458, \"enriching-exceptions-with-notes\"]\n- ],\n- \"What\\u2019s New In Python 3.0\": [\n- [485, \"what-s-new-in-python-3-0\"]\n- ],\n- \"Common Stumbling Blocks\": [\n- [485, \"common-stumbling-blocks\"]\n- ],\n- \"Print Is A Function\": [\n- [485, \"print-is-a-function\"]\n- ],\n- \"Views And Iterators Instead Of Lists\": [\n- [485, \"views-and-iterators-instead-of-lists\"]\n- ],\n- \"Ordering Comparisons\": [\n- [485, \"ordering-comparisons\"]\n- ],\n- \"Integers\": [\n- [485, \"integers\"]\n- ],\n- \"Text Vs. Data Instead Of Unicode Vs. 8-bit\": [\n- [485, \"text-vs-data-instead-of-unicode-vs-8-bit\"]\n- ],\n- \"Overview Of Syntax Changes\": [\n- [485, \"overview-of-syntax-changes\"]\n- ],\n- \"New Syntax\": [\n- [485, \"new-syntax\"]\n- ],\n- \"Changed Syntax\": [\n- [485, \"changed-syntax\"]\n- ],\n- \"Removed Syntax\": [\n- [485, \"removed-syntax\"]\n- ],\n- \"Changes Already Present In Python 2.6\": [\n- [485, \"changes-already-present-in-python-2-6\"]\n+ \"Fancier Output Formatting\": [\n+ [461, \"fancier-output-formatting\"]\n ],\n- \"Library Changes\": [\n- [485, \"library-changes\"]\n+ \"Formatted String Literals\": [\n+ [461, \"formatted-string-literals\"]\n ],\n- \"PEP 3101: A New Approach To String Formatting\": [\n- [485, \"pep-3101-a-new-approach-to-string-formatting\"]\n+ \"The String format() Method\": [\n+ [461, \"the-string-format-method\"]\n ],\n- \"Changes To Exceptions\": [\n- [485, \"changes-to-exceptions\"]\n+ \"Manual String Formatting\": [\n+ [461, \"manual-string-formatting\"]\n ],\n- \"Miscellaneous Other Changes\": [\n- [485, \"miscellaneous-other-changes\"]\n+ \"Old string formatting\": [\n+ [461, \"old-string-formatting\"]\n ],\n- \"Operators And Special Methods\": [\n- [485, \"operators-and-special-methods\"]\n+ \"Reading and Writing Files\": [\n+ [461, \"reading-and-writing-files\"]\n ],\n- \"Builtins\": [\n- [485, \"builtins\"]\n+ \"Methods of File Objects\": [\n+ [461, \"methods-of-file-objects\"]\n ],\n- \"Porting To Python 3.0\": [\n- [485, \"porting-to-python-3-0\"]\n+ \"Saving structured data with json\": [\n+ [461, \"saving-structured-data-with-json\"]\n ],\n \"What\\u2019s New In Python 3.10\": [\n [487, \"what-s-new-in-python-3-10\"]\n ],\n \"Summary \\u2013 Release highlights\": [\n [487, \"summary-release-highlights\"],\n [488, \"summary-release-highlights\"],\n- [493, \"summary-release-highlights\"],\n- [492, \"summary-release-highlights\"],\n- [495, \"summary-release-highlights\"],\n+ [496, \"summary-release-highlights\"],\n [490, \"summary-release-highlights\"],\n- [496, \"summary-release-highlights\"]\n+ [495, \"summary-release-highlights\"],\n+ [492, \"summary-release-highlights\"],\n+ [493, \"summary-release-highlights\"]\n ],\n \"New Features\": [\n [487, \"new-features\"],\n [487, \"id1\"],\n [488, \"new-features\"],\n [488, \"whatsnew311-c-api-new-features\"],\n- [493, \"new-features\"],\n- [492, \"new-features\"],\n+ [496, \"new-features\"],\n+ [496, \"id1\"],\n [494, \"new-features\"],\n- [491, \"new-features\"],\n [495, \"new-features\"],\n- [496, \"new-features\"],\n- [496, \"id1\"]\n+ [492, \"new-features\"],\n+ [491, \"new-features\"],\n+ [493, \"new-features\"]\n ],\n \"Parenthesized context managers\": [\n [487, \"parenthesized-context-managers\"]\n ],\n \"Better error messages\": [\n [487, \"better-error-messages\"]\n ],\n@@ -63277,216 +63270,216 @@\n ],\n \"PEP 647: User-Defined Type Guards\": [\n [487, \"pep-647-user-defined-type-guards\"]\n ],\n \"New Modules\": [\n [487, \"new-modules\"],\n [488, \"new-modules\"],\n- [493, \"new-modules\"],\n- [492, \"new-modules\"],\n+ [496, \"new-modules\"],\n [494, \"new-modules\"],\n- [491, \"new-modules\"],\n- [495, \"new-modules\"],\n [490, \"new-modules\"],\n- [496, \"new-modules\"]\n+ [495, \"new-modules\"],\n+ [492, \"new-modules\"],\n+ [491, \"new-modules\"],\n+ [493, \"new-modules\"]\n ],\n \"Improved Modules\": [\n [487, \"improved-modules\"],\n [488, \"improved-modules\"],\n- [493, \"improved-modules\"],\n- [492, \"improved-modules\"],\n+ [496, \"improved-modules\"],\n [494, \"improved-modules\"],\n- [491, \"improved-modules\"],\n- [495, \"improved-modules\"],\n [490, \"improved-modules\"],\n- [496, \"improved-modules\"]\n+ [495, \"improved-modules\"],\n+ [492, \"improved-modules\"],\n+ [491, \"improved-modules\"],\n+ [493, \"improved-modules\"]\n ],\n \"argparse\": [\n [487, \"argparse\"],\n- [492, \"argparse\"],\n [494, \"argparse\"],\n+ [492, \"argparse\"],\n [491, \"argparse\"]\n ],\n \"array\": [\n [487, \"array\"],\n- [493, \"array\"],\n- [490, \"array\"]\n+ [490, \"array\"],\n+ [493, \"array\"]\n ],\n \"asynchat, asyncore, smtpd\": [\n [487, \"asynchat-asyncore-smtpd\"]\n ],\n \"base64\": [\n [487, \"base64\"],\n- [491, \"base64\"],\n- [490, \"base64\"]\n+ [490, \"base64\"],\n+ [491, \"base64\"]\n ],\n \"bdb\": [\n [487, \"bdb\"]\n ],\n \"bisect\": [\n [487, \"bisect\"]\n ],\n \"codecs\": [\n [487, \"codecs\"],\n [490, \"codecs\"]\n ],\n \"collections.abc\": [\n [487, \"collections-abc\"],\n- [492, \"collections-abc\"],\n- [496, \"collections-abc\"]\n+ [496, \"collections-abc\"],\n+ [492, \"collections-abc\"]\n ],\n \"contextlib\": [\n [487, \"contextlib\"],\n [488, \"contextlib\"],\n [489, \"contextlib\"],\n- [493, \"contextlib\"],\n- [492, \"contextlib\"],\n [494, \"contextlib\"],\n+ [490, \"contextlib\"],\n+ [492, \"contextlib\"],\n [491, \"contextlib\"],\n- [490, \"contextlib\"]\n+ [493, \"contextlib\"]\n ],\n \"curses\": [\n [487, \"curses\"],\n- [492, \"curses\"],\n- [495, \"curses\"],\n+ [496, \"curses\"],\n [490, \"curses\"],\n- [496, \"curses\"]\n+ [495, \"curses\"],\n+ [492, \"curses\"]\n ],\n \"dataclasses\": [\n [487, \"dataclasses\"],\n [488, \"dataclasses\"],\n [494, \"dataclasses\"]\n ],\n \"Keyword-only fields\": [\n [487, \"keyword-only-fields\"]\n ],\n \"distutils\": [\n [487, \"distutils\"],\n- [493, \"distutils\"],\n- [493, \"id2\"],\n- [492, \"distutils\"],\n+ [496, \"distutils\"],\n [494, \"distutils\"],\n- [496, \"distutils\"]\n+ [492, \"distutils\"],\n+ [493, \"distutils\"],\n+ [493, \"id2\"]\n ],\n \"encodings\": [\n [487, \"encodings\"],\n [493, \"encodings\"]\n ],\n \"enum\": [\n [487, \"enum\"],\n [488, \"enum\"],\n- [493, \"enum\"],\n- [492, \"enum\"],\n [494, \"enum\"],\n [494, \"id5\"],\n- [491, \"enum\"]\n+ [492, \"enum\"],\n+ [491, \"enum\"],\n+ [493, \"enum\"]\n ],\n \"fileinput\": [\n [487, \"fileinput\"],\n [493, \"fileinput\"]\n ],\n \"faulthandler\": [\n [487, \"faulthandler\"],\n- [493, \"faulthandler\"],\n+ [490, \"faulthandler\"],\n [492, \"faulthandler\"],\n- [490, \"faulthandler\"]\n+ [493, \"faulthandler\"]\n ],\n \"gc\": [\n [487, \"gc\"],\n+ [496, \"gc\"],\n [494, \"gc\"],\n- [491, \"gc\"],\n- [495, \"gc\"],\n [490, \"gc\"],\n- [496, \"gc\"]\n+ [495, \"gc\"],\n+ [491, \"gc\"]\n ],\n \"glob\": [\n [487, \"glob\"],\n [492, \"glob\"],\n [491, \"glob\"]\n ],\n \"hashlib\": [\n [487, \"hashlib\"],\n [488, \"hashlib\"],\n [489, \"hashlib\"],\n- [493, \"hashlib\"],\n+ [496, \"hashlib\"],\n [491, \"hashlib\"],\n- [496, \"hashlib\"]\n+ [493, \"hashlib\"]\n ],\n \"hmac\": [\n [487, \"hmac\"],\n [494, \"hmac\"],\n- [491, \"hmac\"],\n- [490, \"hmac\"]\n+ [490, \"hmac\"],\n+ [491, \"hmac\"]\n ],\n \"IDLE and idlelib\": [\n [487, \"idle-and-idlelib\"],\n [488, \"whatsnew311-idle\"],\n- [495, \"idle-and-idlelib\"],\n- [496, \"idle-and-idlelib\"]\n+ [496, \"idle-and-idlelib\"],\n+ [495, \"idle-and-idlelib\"]\n ],\n \"importlib.metadata\": [\n [487, \"importlib-metadata\"]\n ],\n \"inspect\": [\n [487, \"inspect\"],\n [488, \"inspect\"],\n [489, \"inspect\"],\n- [493, \"inspect\"],\n+ [496, \"inspect\"],\n+ [490, \"inspect\"],\n+ [495, \"inspect\"],\n [492, \"inspect\"],\n [491, \"inspect\"],\n- [495, \"inspect\"],\n- [490, \"inspect\"],\n- [496, \"inspect\"]\n+ [493, \"inspect\"]\n ],\n \"itertools\": [\n [487, \"itertools\"],\n [489, \"itertools\"],\n [494, \"itertools\"],\n- [495, \"itertools\"],\n- [490, \"itertools\"]\n+ [490, \"itertools\"],\n+ [495, \"itertools\"]\n ],\n \"linecache\": [\n [487, \"linecache\"],\n [492, \"linecache\"]\n ],\n \"os\": [\n [487, \"os\"],\n [488, \"os\"],\n [489, \"os\"],\n- [493, \"os\"],\n- [493, \"id4\"],\n- [492, \"os\"],\n+ [496, \"os\"],\n [494, \"os\"],\n- [491, \"os\"],\n- [495, \"os\"],\n [490, \"os\"],\n- [496, \"os\"]\n+ [495, \"os\"],\n+ [492, \"os\"],\n+ [491, \"os\"],\n+ [493, \"os\"],\n+ [493, \"id4\"]\n ],\n \"os.path\": [\n [487, \"os-path\"],\n [495, \"os-path\"]\n ],\n \"pathlib\": [\n [487, \"pathlib\"],\n [488, \"pathlib\"],\n- [493, \"pathlib\"],\n- [492, \"pathlib\"],\n+ [496, \"pathlib\"],\n [494, \"pathlib\"],\n- [491, \"pathlib\"],\n [495, \"pathlib\"],\n- [496, \"pathlib\"]\n+ [492, \"pathlib\"],\n+ [491, \"pathlib\"],\n+ [493, \"pathlib\"]\n ],\n \"platform\": [\n [487, \"platform\"]\n ],\n \"pprint\": [\n [487, \"pprint\"],\n- [491, \"pprint\"],\n+ [496, \"pprint\"],\n [495, \"pprint\"],\n- [496, \"pprint\"]\n+ [491, \"pprint\"]\n ],\n \"py_compile\": [\n [487, \"py-compile\"],\n [494, \"py-compile\"],\n [495, \"py-compile\"]\n ],\n \"pyclbr\": [\n@@ -63494,202 +63487,202 @@\n ],\n \"shelve\": [\n [487, \"shelve\"],\n [491, \"shelve\"]\n ],\n \"statistics\": [\n [487, \"statistics\"],\n- [493, \"statistics\"],\n+ [495, \"statistics\"],\n [491, \"statistics\"],\n- [495, \"statistics\"]\n+ [493, \"statistics\"]\n ],\n \"site\": [\n [487, \"site\"],\n [489, \"site\"],\n [493, \"site\"]\n ],\n \"socket\": [\n [487, \"socket\"],\n [488, \"socket\"],\n [489, \"socket\"],\n- [493, \"socket\"],\n- [492, \"socket\"],\n+ [496, \"socket\"],\n [494, \"socket\"],\n [494, \"id8\"],\n- [491, \"socket\"],\n- [495, \"socket\"],\n [490, \"socket\"],\n- [496, \"socket\"]\n+ [495, \"socket\"],\n+ [492, \"socket\"],\n+ [491, \"socket\"],\n+ [493, \"socket\"]\n ],\n \"ssl\": [\n [487, \"ssl\"],\n [489, \"ssl\"],\n- [493, \"ssl\"],\n- [493, \"id6\"],\n- [492, \"ssl\"],\n [494, \"ssl\"],\n [494, \"id9\"],\n- [491, \"ssl\"],\n+ [490, \"ssl\"],\n [495, \"ssl\"],\n- [490, \"ssl\"]\n+ [492, \"ssl\"],\n+ [491, \"ssl\"],\n+ [493, \"ssl\"],\n+ [493, \"id6\"]\n ],\n \"sqlite3\": [\n [487, \"sqlite3\"],\n [488, \"sqlite3\"],\n [489, \"sqlite3\"],\n- [493, \"sqlite3\"],\n- [492, \"sqlite3\"],\n [494, \"sqlite3\"],\n+ [490, \"sqlite3\"],\n+ [492, \"sqlite3\"],\n [491, \"sqlite3\"],\n- [490, \"sqlite3\"]\n+ [493, \"sqlite3\"]\n ],\n \"sys\": [\n [487, \"sys\"],\n [488, \"sys\"],\n- [493, \"sys\"],\n- [492, \"sys\"],\n+ [496, \"sys\"],\n [494, \"sys\"],\n [494, \"id10\"],\n- [491, \"sys\"],\n- [495, \"sys\"],\n [490, \"sys\"],\n- [496, \"sys\"]\n+ [495, \"sys\"],\n+ [492, \"sys\"],\n+ [491, \"sys\"],\n+ [493, \"sys\"]\n ],\n \"_thread\": [\n [487, \"thread\"]\n ],\n \"threading\": [\n [487, \"threading\"],\n [488, \"threading\"],\n [489, \"threading\"],\n- [492, \"threading\"],\n [494, \"threading\"],\n- [491, \"threading\"],\n+ [490, \"threading\"],\n [495, \"threading\"],\n- [490, \"threading\"]\n+ [492, \"threading\"],\n+ [491, \"threading\"]\n ],\n \"traceback\": [\n [487, \"traceback\"],\n [488, \"traceback\"],\n- [493, \"traceback\"],\n [492, \"traceback\"],\n- [491, \"traceback\"]\n+ [491, \"traceback\"],\n+ [493, \"traceback\"]\n ],\n \"types\": [\n [487, \"types\"],\n- [492, \"types\"],\n [494, \"types\"],\n- [491, \"types\"],\n- [490, \"types\"]\n+ [490, \"types\"],\n+ [492, \"types\"],\n+ [491, \"types\"]\n ],\n \"typing\": [\n [487, \"typing\"],\n [488, \"typing\"],\n- [493, \"typing\"],\n- [492, \"typing\"],\n- [495, \"typing\"],\n [496, \"typing\"],\n- [496, \"id4\"]\n+ [496, \"id4\"],\n+ [495, \"typing\"],\n+ [492, \"typing\"],\n+ [493, \"typing\"]\n ],\n \"unittest\": [\n [487, \"unittest\"],\n [488, \"unittest\"],\n [489, \"unittest\"],\n- [492, \"unittest\"],\n [494, \"unittest\"],\n- [491, \"unittest\"],\n+ [490, \"unittest\"],\n [495, \"unittest\"],\n- [490, \"unittest\"]\n+ [492, \"unittest\"],\n+ [491, \"unittest\"]\n ],\n \"urllib.parse\": [\n [487, \"urllib-parse\"],\n [489, \"urllib-parse\"],\n- [494, \"urllib-parse\"],\n- [495, \"urllib-parse\"],\n [496, \"urllib-parse\"],\n- [496, \"id5\"]\n+ [496, \"id5\"],\n+ [494, \"urllib-parse\"],\n+ [495, \"urllib-parse\"]\n ],\n \"xml\": [\n [487, \"xml\"],\n- [493, \"xml\"],\n+ [496, \"xml\"],\n [494, \"xml\"],\n [495, \"xml\"],\n- [496, \"xml\"]\n+ [493, \"xml\"]\n ],\n \"zipimport\": [\n [487, \"zipimport\"]\n ],\n \"Deprecated\": [\n [487, \"deprecated\"],\n [487, \"id3\"],\n [488, \"deprecated\"],\n [488, \"whatsnew311-c-api-deprecated\"],\n- [493, \"deprecated\"],\n+ [496, \"deprecated\"],\n+ [490, \"deprecated\"],\n+ [495, \"deprecated\"],\n [492, \"deprecated\"],\n [491, \"deprecated\"],\n- [495, \"deprecated\"],\n- [490, \"deprecated\"],\n- [496, \"deprecated\"]\n+ [493, \"deprecated\"]\n ],\n \"Removed\": [\n [487, \"removed\"],\n [487, \"id4\"],\n [488, \"removed\"],\n [488, \"whatsnew311-c-api-removed\"],\n- [493, \"removed\"],\n+ [496, \"removed\"],\n+ [496, \"id3\"],\n [492, \"removed\"],\n [491, \"removed\"],\n- [496, \"removed\"],\n- [496, \"id3\"]\n+ [493, \"removed\"]\n ],\n \"Porting to Python 3.10\": [\n [487, \"porting-to-python-3-10\"],\n [487, \"id2\"]\n ],\n \"Changes in the Python syntax\": [\n [487, \"changes-in-the-python-syntax\"]\n ],\n \"Changes in the Python API\": [\n [487, \"changes-in-the-python-api\"],\n- [493, \"changes-in-the-python-api\"],\n- [492, \"changes-in-the-python-api\"],\n+ [496, \"changes-in-the-python-api\"],\n [494, \"changes-in-the-python-api\"],\n- [491, \"changes-in-the-python-api\"],\n [495, \"changes-in-the-python-api\"],\n [495, \"id2\"],\n- [496, \"changes-in-the-python-api\"]\n+ [492, \"changes-in-the-python-api\"],\n+ [491, \"changes-in-the-python-api\"],\n+ [493, \"changes-in-the-python-api\"]\n ],\n \"Changes in the C API\": [\n [487, \"changes-in-the-c-api\"],\n- [493, \"changes-in-the-c-api\"],\n- [492, \"changes-in-the-c-api\"],\n+ [496, \"changes-in-the-c-api\"],\n [494, \"changes-in-the-c-api\"],\n- [491, \"changes-in-the-c-api\"],\n [495, \"changes-in-the-c-api\"],\n- [496, \"changes-in-the-c-api\"]\n+ [492, \"changes-in-the-c-api\"],\n+ [491, \"changes-in-the-c-api\"],\n+ [493, \"changes-in-the-c-api\"]\n ],\n \"CPython bytecode changes\": [\n [487, \"cpython-bytecode-changes\"],\n [488, \"cpython-bytecode-changes\"],\n- [493, \"cpython-bytecode-changes\"],\n+ [496, \"cpython-bytecode-changes\"],\n [494, \"cpython-bytecode-changes\"],\n [495, \"cpython-bytecode-changes\"],\n- [496, \"cpython-bytecode-changes\"]\n+ [493, \"cpython-bytecode-changes\"]\n ],\n \"Build Changes\": [\n [487, \"build-changes\"],\n [488, \"build-changes\"],\n- [494, \"build-changes\"],\n- [496, \"build-changes\"]\n+ [496, \"build-changes\"],\n+ [494, \"build-changes\"]\n ],\n \"C API Changes\": [\n [487, \"c-api-changes\"],\n [488, \"c-api-changes\"],\n- [494, \"c-api-changes\"],\n- [496, \"c-api-changes\"]\n+ [496, \"c-api-changes\"],\n+ [494, \"c-api-changes\"]\n ],\n \"PEP 652: Maintaining the Stable ABI\": [\n [487, \"pep-652-maintaining-the-stable-abi\"]\n ],\n \"Notable security feature in 3.10.7\": [\n [487, \"notable-security-feature-in-3-10-7\"]\n ],\n@@ -63699,205 +63692,20 @@\n \"Notable changes in 3.10.12\": [\n [487, \"notable-changes-in-3-10-12\"]\n ],\n \"tarfile\": [\n [487, \"tarfile\"],\n [488, \"tarfile\"],\n [489, \"tarfile\"],\n- [492, \"tarfile\"],\n- [491, \"tarfile\"],\n+ [496, \"tarfile\"],\n+ [490, \"tarfile\"],\n [495, \"tarfile\"],\n [495, \"id3\"],\n- [490, \"tarfile\"],\n- [496, \"tarfile\"]\n- ],\n- \"More Control Flow Tools\": [\n- [456, \"more-control-flow-tools\"]\n- ],\n- \"if Statements\": [\n- [456, \"if-statements\"]\n- ],\n- \"for Statements\": [\n- [456, \"for-statements\"]\n- ],\n- \"The range() Function\": [\n- [456, \"the-range-function\"]\n- ],\n- \"break and continue Statements, and else Clauses on Loops\": [\n- [456, \"break-and-continue-statements-and-else-clauses-on-loops\"]\n- ],\n- \"pass Statements\": [\n- [456, \"pass-statements\"]\n- ],\n- \"match Statements\": [\n- [456, \"match-statements\"]\n- ],\n- \"Defining Functions\": [\n- [456, \"defining-functions\"]\n- ],\n- \"More on Defining Functions\": [\n- [456, \"more-on-defining-functions\"]\n- ],\n- \"Default Argument Values\": [\n- [456, \"default-argument-values\"]\n- ],\n- \"Keyword Arguments\": [\n- [456, \"keyword-arguments\"]\n- ],\n- \"Special parameters\": [\n- [456, \"special-parameters\"]\n- ],\n- \"Positional-or-Keyword Arguments\": [\n- [456, \"positional-or-keyword-arguments\"]\n- ],\n- \"Positional-Only Parameters\": [\n- [456, \"positional-only-parameters\"]\n- ],\n- \"Keyword-Only Arguments\": [\n- [456, \"keyword-only-arguments\"]\n- ],\n- \"Function Examples\": [\n- [456, \"function-examples\"]\n- ],\n- \"Recap\": [\n- [456, \"recap\"]\n- ],\n- \"Arbitrary Argument Lists\": [\n- [456, \"arbitrary-argument-lists\"]\n- ],\n- \"Unpacking Argument Lists\": [\n- [456, \"unpacking-argument-lists\"]\n- ],\n- \"Lambda Expressions\": [\n- [456, \"lambda-expressions\"]\n- ],\n- \"Documentation Strings\": [\n- [456, \"documentation-strings\"]\n- ],\n- \"Function Annotations\": [\n- [456, \"function-annotations\"]\n- ],\n- \"Intermezzo: Coding Style\": [\n- [456, \"intermezzo-coding-style\"]\n- ],\n- \"What\\u2019s New in Python 2.7\": [\n- [484, \"what-s-new-in-python-2-7\"]\n- ],\n- \"The Future for Python 2.x\": [\n- [484, \"the-future-for-python-2-x\"]\n- ],\n- \"Changes to the Handling of Deprecation Warnings\": [\n- [484, \"changes-to-the-handling-of-deprecation-warnings\"]\n- ],\n- \"Python 3.1 Features\": [\n- [484, \"python-3-1-features\"]\n- ],\n- \"PEP 372: Adding an Ordered Dictionary to collections\": [\n- [484, \"pep-372-adding-an-ordered-dictionary-to-collections\"]\n- ],\n- \"PEP 378: Format Specifier for Thousands Separator\": [\n- [484, \"pep-378-format-specifier-for-thousands-separator\"],\n- [486, \"pep-378-format-specifier-for-thousands-separator\"]\n- ],\n- \"PEP 389: The argparse Module for Parsing Command Lines\": [\n- [484, \"pep-389-the-argparse-module-for-parsing-command-lines\"]\n- ],\n- \"PEP 391: Dictionary-Based Configuration For Logging\": [\n- [484, \"pep-391-dictionary-based-configuration-for-logging\"]\n- ],\n- \"PEP 3106: Dictionary Views\": [\n- [484, \"pep-3106-dictionary-views\"]\n- ],\n- \"PEP 3137: The memoryview Object\": [\n- [484, \"pep-3137-the-memoryview-object\"]\n- ],\n- \"Interpreter Changes\": [\n- [484, \"interpreter-changes\"],\n- [483, \"interpreter-changes\"]\n- ],\n- \"New and Improved Modules\": [\n- [484, \"new-and-improved-modules\"],\n- [478, \"new-and-improved-modules\"],\n- [479, \"new-and-improved-modules\"],\n- [483, \"new-and-improved-modules\"]\n- ],\n- \"New module: importlib\": [\n- [484, \"new-module-importlib\"]\n- ],\n- \"New module: sysconfig\": [\n- [484, \"new-module-sysconfig\"]\n- ],\n- \"ttk: Themed Widgets for Tk\": [\n- [484, \"ttk-themed-widgets-for-tk\"]\n- ],\n- \"Updated module: unittest\": [\n- [484, \"updated-module-unittest\"]\n- ],\n- \"Updated module: ElementTree 1.3\": [\n- [484, \"updated-module-elementtree-1-3\"]\n- ],\n- \"Port-Specific Changes: Windows\": [\n- [484, \"port-specific-changes-windows\"],\n- [483, \"port-specific-changes-windows\"]\n- ],\n- \"Port-Specific Changes: Mac OS X\": [\n- [484, \"port-specific-changes-mac-os-x\"],\n- [483, \"port-specific-changes-mac-os-x\"]\n- ],\n- \"Port-Specific Changes: FreeBSD\": [\n- [484, \"port-specific-changes-freebsd\"]\n- ],\n- \"Other Changes and Fixes\": [\n- [484, \"other-changes-and-fixes\"],\n- [478, \"other-changes-and-fixes\"],\n- [479, \"other-changes-and-fixes\"],\n- [480, \"other-changes-and-fixes\"]\n- ],\n- \"Porting to Python 2.7\": [\n- [484, \"porting-to-python-2-7\"]\n- ],\n- \"New Features Added to Python 2.7 Maintenance Releases\": [\n- [484, \"new-features-added-to-python-2-7-maintenance-releases\"]\n- ],\n- \"Two new environment variables for debug mode\": [\n- [484, \"two-new-environment-variables-for-debug-mode\"]\n- ],\n- \"PEP 434: IDLE Enhancement Exception for All Branches\": [\n- [484, \"pep-434-idle-enhancement-exception-for-all-branches\"]\n- ],\n- \"PEP 466: Network Security Enhancements for Python 2.7\": [\n- [484, \"pep-466-network-security-enhancements-for-python-2-7\"]\n- ],\n- \"PEP 477: Backport ensurepip (PEP 453) to Python 2.7\": [\n- [484, \"pep-477-backport-ensurepip-pep-453-to-python-2-7\"]\n- ],\n- \"Bootstrapping pip By Default\": [\n- [484, \"bootstrapping-pip-by-default\"],\n- [491, \"bootstrapping-pip-by-default\"]\n- ],\n- \"Documentation Changes\": [\n- [484, \"documentation-changes\"],\n- [491, \"documentation-changes\"]\n- ],\n- \"PEP 476: Enabling certificate verification by default for stdlib http clients\": [\n- [484, \"pep-476-enabling-certificate-verification-by-default-for-stdlib-http-clients\"],\n- [491, \"pep-476-enabling-certificate-verification-by-default-for-stdlib-http-clients\"]\n- ],\n- \"PEP 493: HTTPS verification migration tools for Python 2.7\": [\n- [484, \"pep-493-https-verification-migration-tools-for-python-2-7\"]\n- ],\n- \"New make regen-all build target\": [\n- [484, \"new-make-regen-all-build-target\"],\n- [493, \"new-make-regen-all-build-target\"],\n- [492, \"new-make-regen-all-build-target\"]\n- ],\n- \"Removal of make touch build target\": [\n- [484, \"removal-of-make-touch-build-target\"],\n- [493, \"removal-of-make-touch-build-target\"],\n- [492, \"removal-of-make-touch-build-target\"]\n+ [492, \"tarfile\"],\n+ [491, \"tarfile\"]\n ],\n \"What\\u2019s New In Python 3.11\": [\n [488, \"what-s-new-in-python-3-11\"]\n ],\n \"PEP 657: Fine-grained error locations in tracebacks\": [\n [488, \"pep-657-fine-grained-error-locations-in-tracebacks\"]\n ],\n@@ -63930,83 +63738,83 @@\n ],\n \"Other CPython Implementation Changes\": [\n [488, \"other-cpython-implementation-changes\"],\n [494, \"other-cpython-implementation-changes\"]\n ],\n \"datetime\": [\n [488, \"datetime\"],\n- [493, \"datetime\"],\n+ [496, \"datetime\"],\n [494, \"datetime\"],\n- [495, \"datetime\"],\n [490, \"datetime\"],\n- [496, \"datetime\"]\n+ [495, \"datetime\"],\n+ [493, \"datetime\"]\n ],\n \"fcntl\": [\n [488, \"fcntl\"],\n [496, \"fcntl\"]\n ],\n \"fractions\": [\n [488, \"fractions\"]\n ],\n \"functools\": [\n [488, \"functools\"],\n [489, \"functools\"],\n- [492, \"functools\"],\n [494, \"functools\"],\n- [491, \"functools\"],\n+ [490, \"functools\"],\n [495, \"functools\"],\n- [490, \"functools\"]\n+ [492, \"functools\"],\n+ [491, \"functools\"]\n ],\n \"locale\": [\n [488, \"locale\"],\n- [492, \"locale\"],\n [494, \"locale\"],\n- [494, \"id7\"]\n+ [494, \"id7\"],\n+ [492, \"locale\"]\n ],\n \"logging\": [\n [488, \"logging\"],\n [489, \"logging\"],\n- [493, \"logging\"],\n- [492, \"logging\"],\n [494, \"logging\"],\n- [491, \"logging\"],\n+ [490, \"logging\"],\n [495, \"logging\"],\n- [490, \"logging\"]\n+ [492, \"logging\"],\n+ [491, \"logging\"],\n+ [493, \"logging\"]\n ],\n \"math\": [\n [488, \"math\"],\n [489, \"math\"],\n- [493, \"math\"],\n- [492, \"math\"],\n+ [496, \"math\"],\n [494, \"math\"],\n- [495, \"math\"],\n [490, \"math\"],\n- [496, \"math\"]\n+ [495, \"math\"],\n+ [492, \"math\"],\n+ [493, \"math\"]\n ],\n \"operator\": [\n [488, \"operator\"],\n [492, \"operator\"],\n [491, \"operator\"]\n ],\n \"re\": [\n [488, \"re\"],\n- [493, \"re\"],\n- [493, \"id5\"],\n- [492, \"re\"],\n [494, \"re\"],\n+ [490, \"re\"],\n+ [492, \"re\"],\n [491, \"re\"],\n- [490, \"re\"]\n+ [493, \"re\"],\n+ [493, \"id5\"]\n ],\n \"shutil\": [\n [488, \"shutil\"],\n [489, \"shutil\"],\n- [492, \"shutil\"],\n- [491, \"shutil\"],\n+ [490, \"shutil\"],\n [495, \"shutil\"],\n- [490, \"shutil\"]\n+ [492, \"shutil\"],\n+ [491, \"shutil\"]\n ],\n \"string\": [\n [488, \"string\"],\n [494, \"string\"]\n ],\n \"sysconfig\": [\n [488, \"sysconfig\"],\n@@ -64016,56 +63824,56 @@\n \"tempfile\": [\n [488, \"tempfile\"],\n [489, \"tempfile\"],\n [490, \"tempfile\"]\n ],\n \"time\": [\n [488, \"time\"],\n- [493, \"time\"],\n- [492, \"time\"],\n+ [496, \"time\"],\n [494, \"time\"],\n- [495, \"time\"],\n [490, \"time\"],\n- [496, \"time\"]\n+ [495, \"time\"],\n+ [492, \"time\"],\n+ [493, \"time\"]\n ],\n \"tkinter\": [\n [488, \"tkinter\"],\n- [493, \"tkinter\"],\n- [493, \"id7\"],\n- [492, \"tkinter\"],\n [494, \"tkinter\"],\n- [495, \"tkinter\"]\n+ [495, \"tkinter\"],\n+ [492, \"tkinter\"],\n+ [493, \"tkinter\"],\n+ [493, \"id7\"]\n ],\n \"unicodedata\": [\n [488, \"unicodedata\"],\n- [493, \"unicodedata\"],\n- [492, \"unicodedata\"],\n+ [496, \"unicodedata\"],\n [494, \"unicodedata\"],\n [495, \"unicodedata\"],\n- [496, \"unicodedata\"]\n+ [492, \"unicodedata\"],\n+ [493, \"unicodedata\"]\n ],\n \"venv\": [\n [488, \"venv\"],\n- [493, \"venv\"],\n- [493, \"whatsnew36-venv\"],\n- [491, \"venv\"],\n+ [496, \"venv\"],\n [495, \"venv\"],\n- [496, \"venv\"]\n+ [491, \"venv\"],\n+ [493, \"venv\"],\n+ [493, \"whatsnew36-venv\"]\n ],\n \"warnings\": [\n [488, \"warnings\"],\n- [493, \"warnings\"],\n- [494, \"warnings\"]\n+ [494, \"warnings\"],\n+ [493, \"warnings\"]\n ],\n \"zipfile\": [\n [488, \"zipfile\"],\n- [493, \"zipfile\"],\n- [492, \"zipfile\"],\n [494, \"zipfile\"],\n- [491, \"zipfile\"]\n+ [492, \"zipfile\"],\n+ [491, \"zipfile\"],\n+ [493, \"zipfile\"]\n ],\n \"Faster CPython\": [\n [488, \"faster-cpython\"]\n ],\n \"Faster Startup\": [\n [488, \"faster-startup\"]\n ],\n@@ -64130,14 +63938,215 @@\n ],\n \"Notable Changes in 3.11.4\": [\n [488, \"notable-changes-in-3-11-4\"]\n ],\n \"Notable Changes in 3.11.5\": [\n [488, \"notable-changes-in-3-11-5\"]\n ],\n+ \"More Control Flow Tools\": [\n+ [456, \"more-control-flow-tools\"]\n+ ],\n+ \"if Statements\": [\n+ [456, \"if-statements\"]\n+ ],\n+ \"for Statements\": [\n+ [456, \"for-statements\"]\n+ ],\n+ \"The range() Function\": [\n+ [456, \"the-range-function\"]\n+ ],\n+ \"break and continue Statements, and else Clauses on Loops\": [\n+ [456, \"break-and-continue-statements-and-else-clauses-on-loops\"]\n+ ],\n+ \"pass Statements\": [\n+ [456, \"pass-statements\"]\n+ ],\n+ \"match Statements\": [\n+ [456, \"match-statements\"]\n+ ],\n+ \"Defining Functions\": [\n+ [456, \"defining-functions\"]\n+ ],\n+ \"More on Defining Functions\": [\n+ [456, \"more-on-defining-functions\"]\n+ ],\n+ \"Default Argument Values\": [\n+ [456, \"default-argument-values\"]\n+ ],\n+ \"Keyword Arguments\": [\n+ [456, \"keyword-arguments\"]\n+ ],\n+ \"Special parameters\": [\n+ [456, \"special-parameters\"]\n+ ],\n+ \"Positional-or-Keyword Arguments\": [\n+ [456, \"positional-or-keyword-arguments\"]\n+ ],\n+ \"Positional-Only Parameters\": [\n+ [456, \"positional-only-parameters\"]\n+ ],\n+ \"Keyword-Only Arguments\": [\n+ [456, \"keyword-only-arguments\"]\n+ ],\n+ \"Function Examples\": [\n+ [456, \"function-examples\"]\n+ ],\n+ \"Recap\": [\n+ [456, \"recap\"]\n+ ],\n+ \"Arbitrary Argument Lists\": [\n+ [456, \"arbitrary-argument-lists\"]\n+ ],\n+ \"Unpacking Argument Lists\": [\n+ [456, \"unpacking-argument-lists\"]\n+ ],\n+ \"Lambda Expressions\": [\n+ [456, \"lambda-expressions\"]\n+ ],\n+ \"Documentation Strings\": [\n+ [456, \"documentation-strings\"]\n+ ],\n+ \"Function Annotations\": [\n+ [456, \"function-annotations\"]\n+ ],\n+ \"Intermezzo: Coding Style\": [\n+ [456, \"intermezzo-coding-style\"]\n+ ],\n+ \"Brief Tour of the Standard Library \\u2014 Part II\": [\n+ [467, \"brief-tour-of-the-standard-library-part-ii\"]\n+ ],\n+ \"Output Formatting\": [\n+ [467, \"output-formatting\"]\n+ ],\n+ \"Templating\": [\n+ [467, \"templating\"]\n+ ],\n+ \"Working with Binary Data Record Layouts\": [\n+ [467, \"working-with-binary-data-record-layouts\"]\n+ ],\n+ \"Multi-threading\": [\n+ [467, \"multi-threading\"],\n+ [489, \"multi-threading\"],\n+ [273, \"multi-threading\"]\n+ ],\n+ \"Weak References\": [\n+ [467, \"weak-references\"]\n+ ],\n+ \"Tools for Working with Lists\": [\n+ [467, \"tools-for-working-with-lists\"]\n+ ],\n+ \"Decimal Floating Point Arithmetic\": [\n+ [467, \"decimal-floating-point-arithmetic\"]\n+ ],\n+ \"The Python Tutorial\": [\n+ [460, \"the-python-tutorial\"]\n+ ],\n+ \"Command line and environment\": [\n+ [470, \"command-line-and-environment\"]\n+ ],\n+ \"Command line\": [\n+ [470, \"command-line\"]\n+ ],\n+ \"Interface options\": [\n+ [470, \"interface-options\"]\n+ ],\n+ \"Generic options\": [\n+ [470, \"generic-options\"]\n+ ],\n+ \"Miscellaneous options\": [\n+ [470, \"miscellaneous-options\"]\n+ ],\n+ \"Options you shouldn\\u2019t use\": [\n+ [470, \"options-you-shouldn-t-use\"]\n+ ],\n+ \"Environment variables\": [\n+ [470, \"environment-variables\"]\n+ ],\n+ \"Debug-mode variables\": [\n+ [470, \"debug-mode-variables\"]\n+ ],\n+ \"Using Python on a Mac\": [\n+ [474, \"using-python-on-a-mac\"]\n+ ],\n+ \"Getting and Installing Python\": [\n+ [474, \"getting-and-installing-python\"]\n+ ],\n+ \"How to run a Python script\": [\n+ [474, \"how-to-run-a-python-script\"]\n+ ],\n+ \"Running scripts with a GUI\": [\n+ [474, \"running-scripts-with-a-gui\"]\n+ ],\n+ \"Configuration\": [\n+ [474, \"configuration\"]\n+ ],\n+ \"The IDE\": [\n+ [474, \"the-ide\"]\n+ ],\n+ \"Installing Additional Python Packages\": [\n+ [474, \"installing-additional-python-packages\"]\n+ ],\n+ \"GUI Programming\": [\n+ [474, \"gui-programming\"]\n+ ],\n+ \"Distributing Python Applications\": [\n+ [474, \"distributing-python-applications\"]\n+ ],\n+ \"Other Resources\": [\n+ [474, \"other-resources\"]\n+ ],\n+ \"What\\u2019s New in Python 2.1\": [\n+ [478, \"what-s-new-in-python-2-1\"]\n+ ],\n+ \"PEP 227: Nested Scopes\": [\n+ [478, \"pep-227-nested-scopes\"],\n+ [479, \"pep-227-nested-scopes\"]\n+ ],\n+ \"PEP 236: __future__ Directives\": [\n+ [478, \"pep-236-future-directives\"]\n+ ],\n+ \"PEP 207: Rich Comparisons\": [\n+ [478, \"pep-207-rich-comparisons\"]\n+ ],\n+ \"PEP 230: Warning Framework\": [\n+ [478, \"pep-230-warning-framework\"]\n+ ],\n+ \"PEP 229: New Build System\": [\n+ [478, \"pep-229-new-build-system\"]\n+ ],\n+ \"PEP 205: Weak References\": [\n+ [478, \"pep-205-weak-references\"]\n+ ],\n+ \"PEP 232: Function Attributes\": [\n+ [478, \"pep-232-function-attributes\"]\n+ ],\n+ \"PEP 235: Importing Modules on Case-Insensitive Platforms\": [\n+ [478, \"pep-235-importing-modules-on-case-insensitive-platforms\"]\n+ ],\n+ \"PEP 217: Interactive Display Hook\": [\n+ [478, \"pep-217-interactive-display-hook\"]\n+ ],\n+ \"PEP 208: New Coercion Model\": [\n+ [478, \"pep-208-new-coercion-model\"]\n+ ],\n+ \"PEP 241: Metadata in Python Packages\": [\n+ [478, \"pep-241-metadata-in-python-packages\"]\n+ ],\n+ \"New and Improved Modules\": [\n+ [478, \"new-and-improved-modules\"],\n+ [484, \"new-and-improved-modules\"],\n+ [483, \"new-and-improved-modules\"],\n+ [479, \"new-and-improved-modules\"]\n+ ],\n+ \"Other Changes and Fixes\": [\n+ [478, \"other-changes-and-fixes\"],\n+ [480, \"other-changes-and-fixes\"],\n+ [484, \"other-changes-and-fixes\"],\n+ [479, \"other-changes-and-fixes\"]\n+ ],\n \"What\\u2019s New In Python 3.2\": [\n [489, \"what-s-new-in-python-3-2\"]\n ],\n \"PEP 384: Defining a Stable ABI\": [\n [489, \"pep-384-defining-a-stable-abi\"]\n ],\n \"PEP 389: Argparse Command Line Parsing Module\": [\n@@ -64156,168 +64165,159 @@\n [489, \"pep-3149-abi-version-tagged-so-files\"]\n ],\n \"PEP 3333: Python Web Server Gateway Interface v1.0.1\": [\n [489, \"pep-3333-python-web-server-gateway-interface-v1-0-1\"]\n ],\n \"email\": [\n [489, \"email\"],\n- [493, \"email\"],\n+ [490, \"email\"],\n [492, \"email\"],\n [491, \"email\"],\n- [490, \"email\"]\n+ [493, \"email\"]\n ],\n \"elementtree\": [\n [489, \"elementtree\"]\n ],\n \"collections\": [\n [489, \"collections\"],\n- [493, \"collections\"],\n- [492, \"collections\"],\n [494, \"collections\"],\n [494, \"id3\"],\n- [491, \"collections\"],\n+ [490, \"collections\"],\n [495, \"collections\"],\n- [490, \"collections\"]\n+ [492, \"collections\"],\n+ [491, \"collections\"],\n+ [493, \"collections\"]\n ],\n \"datetime and time\": [\n [489, \"datetime-and-time\"]\n ],\n \"abc\": [\n [489, \"abc\"],\n- [491, \"abc\"],\n- [490, \"abc\"]\n+ [490, \"abc\"],\n+ [491, \"abc\"]\n ],\n \"io\": [\n [489, \"io\"],\n- [492, \"io\"],\n [494, \"io\"],\n+ [490, \"io\"],\n [495, \"io\"],\n- [490, \"io\"]\n+ [492, \"io\"]\n ],\n \"reprlib\": [\n [489, \"reprlib\"]\n ],\n \"csv\": [\n [489, \"csv\"],\n- [492, \"csv\"],\n- [495, \"csv\"]\n+ [495, \"csv\"],\n+ [492, \"csv\"]\n ],\n \"decimal and fractions\": [\n [489, \"decimal-and-fractions\"]\n ],\n \"ftp\": [\n [489, \"ftp\"]\n ],\n \"popen\": [\n [489, \"popen\"]\n ],\n \"select\": [\n [489, \"select\"],\n- [491, \"select\"],\n- [490, \"select\"]\n+ [490, \"select\"],\n+ [491, \"select\"]\n ],\n \"gzip and zipfile\": [\n [489, \"gzip-and-zipfile\"]\n ],\n \"ast\": [\n [489, \"ast\"],\n- [493, \"ast\"],\n+ [496, \"ast\"],\n [495, \"ast\"],\n- [496, \"ast\"]\n+ [493, \"ast\"]\n ],\n \"html\": [\n [489, \"html\"],\n- [491, \"html\"],\n- [490, \"html\"]\n+ [490, \"html\"],\n+ [491, \"html\"]\n ],\n \"nntp\": [\n [489, \"nntp\"]\n ],\n \"certificates\": [\n [489, \"certificates\"]\n ],\n \"imaplib\": [\n [489, \"imaplib\"],\n- [492, \"imaplib\"],\n+ [496, \"imaplib\"],\n [490, \"imaplib\"],\n- [496, \"imaplib\"]\n+ [492, \"imaplib\"]\n ],\n \"http.client\": [\n [489, \"http-client\"],\n- [493, \"http-client\"],\n+ [494, \"http-client\"],\n [492, \"http-client\"],\n- [494, \"http-client\"]\n+ [493, \"http-client\"]\n ],\n \"random\": [\n [489, \"random\"],\n- [493, \"random\"],\n- [496, \"random\"]\n+ [496, \"random\"],\n+ [493, \"random\"]\n ],\n \"poplib\": [\n [489, \"poplib\"],\n+ [496, \"poplib\"],\n [492, \"poplib\"],\n- [491, \"poplib\"],\n- [496, \"poplib\"]\n+ [491, \"poplib\"]\n ],\n \"asyncore\": [\n [489, \"asyncore\"],\n [493, \"asyncore\"]\n ],\n \"pydoc\": [\n [489, \"pydoc\"],\n- [493, \"pydoc\"],\n+ [496, \"pydoc\"],\n [494, \"pydoc\"],\n- [491, \"pydoc\"],\n [490, \"pydoc\"],\n- [496, \"pydoc\"]\n+ [491, \"pydoc\"],\n+ [493, \"pydoc\"]\n ],\n \"dis\": [\n [489, \"dis\"],\n [494, \"dis\"],\n [491, \"dis\"]\n ],\n \"dbm\": [\n [489, \"dbm\"],\n- [493, \"dbm\"],\n- [492, \"dbm\"],\n [494, \"dbm\"],\n [494, \"id4\"],\n- [491, \"dbm\"]\n+ [492, \"dbm\"],\n+ [491, \"dbm\"],\n+ [493, \"dbm\"]\n ],\n \"ctypes\": [\n [489, \"ctypes\"],\n [495, \"ctypes\"]\n ],\n \"pdb\": [\n [489, \"pdb\"],\n- [493, \"pdb\"],\n+ [496, \"pdb\"],\n [494, \"pdb\"],\n- [491, \"pdb\"],\n [490, \"pdb\"],\n- [496, \"pdb\"]\n+ [491, \"pdb\"],\n+ [493, \"pdb\"]\n ],\n \"configparser\": [\n [489, \"configparser\"],\n [492, \"configparser\"]\n ],\n \"mailbox\": [\n [489, \"mailbox\"]\n ],\n \"turtledemo\": [\n [489, \"turtledemo\"]\n ],\n- \"Multi-threading\": [\n- [489, \"multi-threading\"],\n- [467, \"multi-threading\"],\n- [273, \"multi-threading\"]\n- ],\n- \"Unicode\": [\n- [489, \"unicode\"],\n- [477, \"unicode\"]\n- ],\n \"Codecs\": [\n [489, \"codecs\"]\n ],\n \"Documentation\": [\n [489, \"documentation\"],\n [497, \"documentation\"],\n [497, \"id5\"],\n@@ -64452,377 +64452,146 @@\n ],\n \"Code Repository\": [\n [489, \"code-repository\"]\n ],\n \"Porting to Python 3.2\": [\n [489, \"porting-to-python-3-2\"]\n ],\n- \"What\\u2019s New in Python 2.1\": [\n- [478, \"what-s-new-in-python-2-1\"]\n+ \"What\\u2019s New in Python 2.3\": [\n+ [480, \"what-s-new-in-python-2-3\"]\n ],\n- \"PEP 227: Nested Scopes\": [\n- [478, \"pep-227-nested-scopes\"],\n- [479, \"pep-227-nested-scopes\"]\n+ \"PEP 218: A Standard Set Datatype\": [\n+ [480, \"pep-218-a-standard-set-datatype\"]\n ],\n- \"PEP 236: __future__ Directives\": [\n- [478, \"pep-236-future-directives\"]\n+ \"PEP 255: Simple Generators\": [\n+ [480, \"pep-255-simple-generators\"],\n+ [479, \"pep-255-simple-generators\"]\n ],\n- \"PEP 207: Rich Comparisons\": [\n- [478, \"pep-207-rich-comparisons\"]\n+ \"PEP 263: Source Code Encodings\": [\n+ [480, \"pep-263-source-code-encodings\"]\n ],\n- \"PEP 230: Warning Framework\": [\n- [478, \"pep-230-warning-framework\"]\n+ \"PEP 273: Importing Modules from ZIP Archives\": [\n+ [480, \"pep-273-importing-modules-from-zip-archives\"]\n ],\n- \"PEP 229: New Build System\": [\n- [478, \"pep-229-new-build-system\"]\n+ \"PEP 277: Unicode file name support for Windows NT\": [\n+ [480, \"pep-277-unicode-file-name-support-for-windows-nt\"]\n ],\n- \"PEP 205: Weak References\": [\n- [478, \"pep-205-weak-references\"]\n+ \"PEP 278: Universal Newline Support\": [\n+ [480, \"pep-278-universal-newline-support\"]\n ],\n- \"PEP 232: Function Attributes\": [\n- [478, \"pep-232-function-attributes\"]\n+ \"PEP 279: enumerate()\": [\n+ [480, \"pep-279-enumerate\"]\n ],\n- \"PEP 235: Importing Modules on Case-Insensitive Platforms\": [\n- [478, \"pep-235-importing-modules-on-case-insensitive-platforms\"]\n+ \"PEP 282: The logging Package\": [\n+ [480, \"pep-282-the-logging-package\"]\n ],\n- \"PEP 217: Interactive Display Hook\": [\n- [478, \"pep-217-interactive-display-hook\"]\n+ \"PEP 285: A Boolean Type\": [\n+ [480, \"pep-285-a-boolean-type\"]\n ],\n- \"PEP 208: New Coercion Model\": [\n- [478, \"pep-208-new-coercion-model\"]\n+ \"PEP 293: Codec Error Handling Callbacks\": [\n+ [480, \"pep-293-codec-error-handling-callbacks\"]\n ],\n- \"PEP 241: Metadata in Python Packages\": [\n- [478, \"pep-241-metadata-in-python-packages\"]\n+ \"PEP 301: Package Index and Metadata for Distutils\": [\n+ [480, \"pep-301-package-index-and-metadata-for-distutils\"]\n ],\n- \"What\\u2019s New in Python 2.2\": [\n- [479, \"what-s-new-in-python-2-2\"]\n+ \"PEP 302: New Import Hooks\": [\n+ [480, \"pep-302-new-import-hooks\"]\n ],\n- \"PEPs 252 and 253: Type and Class Changes\": [\n- [479, \"peps-252-and-253-type-and-class-changes\"]\n+ \"PEP 305: Comma-separated Files\": [\n+ [480, \"pep-305-comma-separated-files\"]\n ],\n- \"Old and New Classes\": [\n- [479, \"old-and-new-classes\"]\n+ \"PEP 307: Pickle Enhancements\": [\n+ [480, \"pep-307-pickle-enhancements\"]\n ],\n- \"Descriptors\": [\n- [479, \"descriptors\"]\n+ \"Extended Slices\": [\n+ [480, \"extended-slices\"]\n ],\n- \"Multiple Inheritance: The Diamond Rule\": [\n- [479, \"multiple-inheritance-the-diamond-rule\"]\n+ \"String Changes\": [\n+ [480, \"string-changes\"]\n ],\n- \"Attribute Access\": [\n- [479, \"attribute-access\"]\n+ \"Date/Time Type\": [\n+ [480, \"date-time-type\"]\n ],\n- \"Related Links\": [\n- [479, \"related-links\"]\n+ \"The optparse Module\": [\n+ [480, \"the-optparse-module\"]\n ],\n- \"PEP 234: Iterators\": [\n- [479, \"pep-234-iterators\"]\n+ \"Pymalloc: A Specialized Object Allocator\": [\n+ [480, \"pymalloc-a-specialized-object-allocator\"]\n ],\n- \"PEP 255: Simple Generators\": [\n- [479, \"pep-255-simple-generators\"],\n- [480, \"pep-255-simple-generators\"]\n+ \"Porting to Python 2.3\": [\n+ [480, \"porting-to-python-2-3\"]\n ],\n- \"PEP 238: Changing the Division Operator\": [\n- [479, \"pep-238-changing-the-division-operator\"]\n+ \"What\\u2019s New in Python 2.5\": [\n+ [482, \"what-s-new-in-python-2-5\"]\n ],\n- \"Unicode Changes\": [\n- [479, \"unicode-changes\"]\n+ \"PEP 308: Conditional Expressions\": [\n+ [482, \"pep-308-conditional-expressions\"]\n ],\n- \"Interpreter Changes and Fixes\": [\n- [479, \"interpreter-changes-and-fixes\"]\n+ \"PEP 309: Partial Function Application\": [\n+ [482, \"pep-309-partial-function-application\"]\n ],\n- \"What\\u2019s New in Python 2.6\": [\n- [483, \"what-s-new-in-python-2-6\"]\n+ \"PEP 314: Metadata for Python Software Packages v1.1\": [\n+ [482, \"pep-314-metadata-for-python-software-packages-v1-1\"]\n ],\n- \"Python 3.0\": [\n- [483, \"python-3-0\"]\n+ \"PEP 328: Absolute and Relative Imports\": [\n+ [482, \"pep-328-absolute-and-relative-imports\"]\n ],\n- \"Changes to the Development Process\": [\n- [483, \"changes-to-the-development-process\"]\n+ \"PEP 338: Executing Modules as Scripts\": [\n+ [482, \"pep-338-executing-modules-as-scripts\"]\n ],\n- \"New Issue Tracker: Roundup\": [\n- [483, \"new-issue-tracker-roundup\"]\n+ \"PEP 341: Unified try/except/finally\": [\n+ [482, \"pep-341-unified-try-except-finally\"]\n ],\n- \"New Documentation Format: reStructuredText Using Sphinx\": [\n- [483, \"new-documentation-format-restructuredtext-using-sphinx\"]\n+ \"PEP 342: New Generator Features\": [\n+ [482, \"pep-342-new-generator-features\"]\n ],\n \"PEP 343: The \\u2018with\\u2019 statement\": [\n- [483, \"pep-343-the-with-statement\"],\n- [482, \"pep-343-the-with-statement\"]\n+ [482, \"pep-343-the-with-statement\"],\n+ [483, \"pep-343-the-with-statement\"]\n ],\n \"Writing Context Managers\": [\n- [483, \"writing-context-managers\"],\n- [482, \"writing-context-managers\"]\n+ [482, \"writing-context-managers\"],\n+ [483, \"writing-context-managers\"]\n ],\n \"The contextlib module\": [\n- [483, \"the-contextlib-module\"],\n- [482, \"the-contextlib-module\"]\n- ],\n- \"PEP 366: Explicit Relative Imports From a Main Module\": [\n- [483, \"pep-366-explicit-relative-imports-from-a-main-module\"]\n- ],\n- \"PEP 370: Per-user site-packages Directory\": [\n- [483, \"pep-370-per-user-site-packages-directory\"]\n- ],\n- \"PEP 371: The multiprocessing Package\": [\n- [483, \"pep-371-the-multiprocessing-package\"]\n- ],\n- \"PEP 3101: Advanced String Formatting\": [\n- [483, \"pep-3101-advanced-string-formatting\"]\n- ],\n- \"PEP 3105: print As a Function\": [\n- [483, \"pep-3105-print-as-a-function\"]\n- ],\n- \"PEP 3110: Exception-Handling Changes\": [\n- [483, \"pep-3110-exception-handling-changes\"]\n- ],\n- \"PEP 3112: Byte Literals\": [\n- [483, \"pep-3112-byte-literals\"]\n- ],\n- \"PEP 3116: New I/O Library\": [\n- [483, \"pep-3116-new-i-o-library\"]\n- ],\n- \"PEP 3118: Revised Buffer Protocol\": [\n- [483, \"pep-3118-revised-buffer-protocol\"]\n- ],\n- \"PEP 3119: Abstract Base Classes\": [\n- [483, \"pep-3119-abstract-base-classes\"]\n- ],\n- \"PEP 3127: Integer Literal Support and Syntax\": [\n- [483, \"pep-3127-integer-literal-support-and-syntax\"]\n- ],\n- \"PEP 3129: Class Decorators\": [\n- [483, \"pep-3129-class-decorators\"]\n- ],\n- \"PEP 3141: A Type Hierarchy for Numbers\": [\n- [483, \"pep-3141-a-type-hierarchy-for-numbers\"]\n- ],\n- \"The fractions Module\": [\n- [483, \"the-fractions-module\"]\n- ],\n- \"The ast module\": [\n- [483, \"the-ast-module\"]\n- ],\n- \"The future_builtins module\": [\n- [483, \"the-future-builtins-module\"]\n- ],\n- \"The json module: JavaScript Object Notation\": [\n- [483, \"the-json-module-javascript-object-notation\"]\n- ],\n- \"The plistlib module: A Property-List Parser\": [\n- [483, \"the-plistlib-module-a-property-list-parser\"]\n- ],\n- \"ctypes Enhancements\": [\n- [483, \"ctypes-enhancements\"]\n- ],\n- \"Improved SSL Support\": [\n- [483, \"improved-ssl-support\"]\n- ],\n- \"Deprecations and Removals\": [\n- [483, \"deprecations-and-removals\"]\n- ],\n- \"Port-Specific Changes: IRIX\": [\n- [483, \"port-specific-changes-irix\"]\n- ],\n- \"Porting to Python 2.6\": [\n- [483, \"porting-to-python-2-6\"]\n- ],\n- \"Using Python on Windows\": [\n- [476, \"using-python-on-windows\"]\n- ],\n- \"The full installer\": [\n- [476, \"the-full-installer\"]\n- ],\n- \"Installation steps\": [\n- [476, \"installation-steps\"]\n- ],\n- \"Removing the MAX_PATH Limitation\": [\n- [476, \"removing-the-max-path-limitation\"]\n+ [482, \"the-contextlib-module\"],\n+ [483, \"the-contextlib-module\"]\n ],\n- \"Installing Without UI\": [\n- [476, \"installing-without-ui\"]\n- ],\n- \"Installing Without Downloading\": [\n- [476, \"installing-without-downloading\"]\n- ],\n- \"Modifying an install\": [\n- [476, \"modifying-an-install\"]\n- ],\n- \"The Microsoft Store package\": [\n- [476, \"the-microsoft-store-package\"]\n- ],\n- \"Known issues\": [\n- [476, \"known-issues\"]\n- ],\n- \"Redirection of local data, registry, and temporary paths\": [\n- [476, \"redirection-of-local-data-registry-and-temporary-paths\"]\n- ],\n- \"The nuget.org packages\": [\n- [476, \"the-nuget-org-packages\"]\n- ],\n- \"The embeddable package\": [\n- [476, \"the-embeddable-package\"]\n- ],\n- \"Python Application\": [\n- [476, \"python-application\"]\n- ],\n- \"Alternative bundles\": [\n- [476, \"alternative-bundles\"]\n- ],\n- \"Configuring Python\": [\n- [476, \"configuring-python\"]\n- ],\n- \"Excursus: Setting environment variables\": [\n- [476, \"excursus-setting-environment-variables\"]\n- ],\n- \"Finding the Python executable\": [\n- [476, \"finding-the-python-executable\"]\n- ],\n- \"UTF-8 mode\": [\n- [476, \"utf-8-mode\"]\n- ],\n- \"Python Launcher for Windows\": [\n- [476, \"python-launcher-for-windows\"]\n- ],\n- \"Getting started\": [\n- [476, \"getting-started\"]\n- ],\n- \"From the command-line\": [\n- [476, \"from-the-command-line\"]\n- ],\n- \"Virtual environments\": [\n- [476, \"virtual-environments\"],\n- [369, \"virtual-environments\"]\n- ],\n- \"From a script\": [\n- [476, \"from-a-script\"]\n- ],\n- \"From file associations\": [\n- [476, \"from-file-associations\"]\n- ],\n- \"Shebang Lines\": [\n- [476, \"shebang-lines\"]\n- ],\n- \"Arguments in shebang lines\": [\n- [476, \"arguments-in-shebang-lines\"]\n- ],\n- \"Customization\": [\n- [476, \"customization\"]\n- ],\n- \"Customization via INI files\": [\n- [476, \"customization-via-ini-files\"]\n- ],\n- \"Customizing default Python versions\": [\n- [476, \"customizing-default-python-versions\"]\n- ],\n- \"Diagnostics\": [\n- [476, \"diagnostics\"]\n- ],\n- \"Dry Run\": [\n- [476, \"dry-run\"]\n- ],\n- \"Install on demand\": [\n- [476, \"install-on-demand\"]\n- ],\n- \"Return codes\": [\n- [476, \"return-codes\"]\n- ],\n- \"Finding modules\": [\n- [476, \"finding-modules\"]\n- ],\n- \"Additional modules\": [\n- [476, \"additional-modules\"]\n- ],\n- \"PyWin32\": [\n- [476, \"pywin32\"]\n- ],\n- \"cx_Freeze\": [\n- [476, \"cx-freeze\"]\n- ],\n- \"Compiling Python on Windows\": [\n- [476, \"compiling-python-on-windows\"]\n- ],\n- \"Other Platforms\": [\n- [476, \"other-platforms\"]\n- ],\n- \"Using Python on a Mac\": [\n- [474, \"using-python-on-a-mac\"]\n- ],\n- \"Getting and Installing Python\": [\n- [474, \"getting-and-installing-python\"]\n- ],\n- \"How to run a Python script\": [\n- [474, \"how-to-run-a-python-script\"]\n- ],\n- \"Running scripts with a GUI\": [\n- [474, \"running-scripts-with-a-gui\"]\n- ],\n- \"Configuration\": [\n- [474, \"configuration\"]\n- ],\n- \"The IDE\": [\n- [474, \"the-ide\"]\n- ],\n- \"Installing Additional Python Packages\": [\n- [474, \"installing-additional-python-packages\"]\n- ],\n- \"GUI Programming\": [\n- [474, \"gui-programming\"]\n- ],\n- \"Distributing Python Applications\": [\n- [474, \"distributing-python-applications\"]\n- ],\n- \"Other Resources\": [\n- [474, \"other-resources\"]\n- ],\n- \"Interactive Input Editing and History Substitution\": [\n- [462, \"interactive-input-editing-and-history-substitution\"]\n- ],\n- \"Tab Completion and History Editing\": [\n- [462, \"tab-completion-and-history-editing\"]\n- ],\n- \"Alternatives to the Interactive Interpreter\": [\n- [462, \"alternatives-to-the-interactive-interpreter\"]\n- ],\n- \"Editors and IDEs\": [\n- [472, \"editors-and-ides\"]\n- ],\n- \"Data Structures\": [\n- [457, \"data-structures\"]\n+ \"PEP 352: Exceptions as New-Style Classes\": [\n+ [482, \"pep-352-exceptions-as-new-style-classes\"]\n ],\n- \"More on Lists\": [\n- [457, \"more-on-lists\"]\n+ \"PEP 353: Using ssize_t as the index type\": [\n+ [482, \"pep-353-using-ssize-t-as-the-index-type\"]\n ],\n- \"Using Lists as Stacks\": [\n- [457, \"using-lists-as-stacks\"]\n+ \"PEP 357: The \\u2018__index__\\u2019 method\": [\n+ [482, \"pep-357-the-index-method\"]\n ],\n- \"Using Lists as Queues\": [\n- [457, \"using-lists-as-queues\"]\n+ \"Interactive Interpreter Changes\": [\n+ [482, \"interactive-interpreter-changes\"]\n ],\n- \"List Comprehensions\": [\n- [457, \"list-comprehensions\"],\n- [477, \"list-comprehensions\"]\n+ \"New, Improved, and Removed Modules\": [\n+ [482, \"new-improved-and-removed-modules\"]\n ],\n- \"Nested List Comprehensions\": [\n- [457, \"nested-list-comprehensions\"]\n+ \"The ctypes package\": [\n+ [482, \"the-ctypes-package\"]\n ],\n- \"Tuples and Sequences\": [\n- [457, \"tuples-and-sequences\"]\n+ \"The ElementTree package\": [\n+ [482, \"the-elementtree-package\"]\n ],\n- \"Sets\": [\n- [457, \"sets\"]\n+ \"The hashlib package\": [\n+ [482, \"the-hashlib-package\"]\n ],\n- \"Looping Techniques\": [\n- [457, \"looping-techniques\"]\n+ \"The sqlite3 package\": [\n+ [482, \"the-sqlite3-package\"]\n ],\n- \"More on Conditions\": [\n- [457, \"more-on-conditions\"]\n+ \"The wsgiref package\": [\n+ [482, \"the-wsgiref-package\"]\n ],\n- \"Comparing Sequences and Other Types\": [\n- [457, \"comparing-sequences-and-other-types\"]\n+ \"Porting to Python 2.5\": [\n+ [482, \"porting-to-python-2-5\"]\n ],\n \"Brief Tour of the Standard Library\": [\n [466, \"brief-tour-of-the-standard-library\"]\n ],\n \"Operating System Interface\": [\n [466, \"operating-system-interface\"]\n ],\n@@ -64855,182 +64624,186 @@\n ],\n \"Quality Control\": [\n [466, \"quality-control\"]\n ],\n \"Batteries Included\": [\n [466, \"batteries-included\"]\n ],\n- \"Fancier Output Formatting\": [\n- [461, \"fancier-output-formatting\"]\n- ],\n- \"Formatted String Literals\": [\n- [461, \"formatted-string-literals\"]\n- ],\n- \"The String format() Method\": [\n- [461, \"the-string-format-method\"]\n- ],\n- \"Manual String Formatting\": [\n- [461, \"manual-string-formatting\"]\n+ \"Using Python on Unix platforms\": [\n+ [475, \"using-python-on-unix-platforms\"]\n ],\n- \"Old string formatting\": [\n- [461, \"old-string-formatting\"]\n+ \"Getting and installing the latest version of Python\": [\n+ [475, \"getting-and-installing-the-latest-version-of-python\"]\n ],\n- \"Reading and Writing Files\": [\n- [461, \"reading-and-writing-files\"]\n+ \"On Linux\": [\n+ [475, \"on-linux\"]\n ],\n- \"Methods of File Objects\": [\n- [461, \"methods-of-file-objects\"]\n+ \"On FreeBSD and OpenBSD\": [\n+ [475, \"on-freebsd-and-openbsd\"]\n ],\n- \"Saving structured data with json\": [\n- [461, \"saving-structured-data-with-json\"]\n+ \"On OpenSolaris\": [\n+ [475, \"on-opensolaris\"]\n ],\n- \"Brief Tour of the Standard Library \\u2014 Part II\": [\n- [467, \"brief-tour-of-the-standard-library-part-ii\"]\n+ \"Building Python\": [\n+ [475, \"building-python\"]\n ],\n- \"Output Formatting\": [\n- [467, \"output-formatting\"]\n+ \"Python-related paths and files\": [\n+ [475, \"python-related-paths-and-files\"]\n ],\n- \"Templating\": [\n- [467, \"templating\"]\n+ \"Miscellaneous\": [\n+ [475, \"miscellaneous\"],\n+ [298, \"miscellaneous\"],\n+ [285, \"miscellaneous\"]\n ],\n- \"Working with Binary Data Record Layouts\": [\n- [467, \"working-with-binary-data-record-layouts\"]\n+ \"Custom OpenSSL\": [\n+ [475, \"custom-openssl\"]\n ],\n- \"Weak References\": [\n- [467, \"weak-references\"]\n+ \"An Informal Introduction to Python\": [\n+ [464, \"an-informal-introduction-to-python\"]\n ],\n- \"Tools for Working with Lists\": [\n- [467, \"tools-for-working-with-lists\"]\n+ \"Using Python as a Calculator\": [\n+ [464, \"using-python-as-a-calculator\"]\n ],\n- \"Decimal Floating Point Arithmetic\": [\n- [467, \"decimal-floating-point-arithmetic\"]\n+ \"Text\": [\n+ [464, \"text\"]\n ],\n- \"What\\u2019s New in Python 2.5\": [\n- [482, \"what-s-new-in-python-2-5\"]\n+ \"Lists\": [\n+ [464, \"lists\"],\n+ [360, \"lists\"]\n ],\n- \"PEP 308: Conditional Expressions\": [\n- [482, \"pep-308-conditional-expressions\"]\n+ \"First Steps Towards Programming\": [\n+ [464, \"first-steps-towards-programming\"]\n ],\n- \"PEP 309: Partial Function Application\": [\n- [482, \"pep-309-partial-function-application\"]\n+ \"What\\u2019s New In Python 3.1\": [\n+ [486, \"what-s-new-in-python-3-1\"]\n ],\n- \"PEP 314: Metadata for Python Software Packages v1.1\": [\n- [482, \"pep-314-metadata-for-python-software-packages-v1-1\"]\n+ \"PEP 372: Ordered Dictionaries\": [\n+ [486, \"pep-372-ordered-dictionaries\"]\n ],\n- \"PEP 328: Absolute and Relative Imports\": [\n- [482, \"pep-328-absolute-and-relative-imports\"]\n+ \"PEP 378: Format Specifier for Thousands Separator\": [\n+ [486, \"pep-378-format-specifier-for-thousands-separator\"],\n+ [484, \"pep-378-format-specifier-for-thousands-separator\"]\n ],\n- \"PEP 338: Executing Modules as Scripts\": [\n- [482, \"pep-338-executing-modules-as-scripts\"]\n+ \"Porting to Python 3.1\": [\n+ [486, \"porting-to-python-3-1\"]\n ],\n- \"PEP 341: Unified try/except/finally\": [\n- [482, \"pep-341-unified-try-except-finally\"]\n+ \"What Now?\": [\n+ [469, \"what-now\"]\n ],\n- \"PEP 342: New Generator Features\": [\n- [482, \"pep-342-new-generator-features\"]\n+ \"Editors and IDEs\": [\n+ [472, \"editors-and-ides\"]\n ],\n- \"PEP 352: Exceptions as New-Style Classes\": [\n- [482, \"pep-352-exceptions-as-new-style-classes\"]\n+ \"What\\u2019s New in Python 2.7\": [\n+ [484, \"what-s-new-in-python-2-7\"]\n ],\n- \"PEP 353: Using ssize_t as the index type\": [\n- [482, \"pep-353-using-ssize-t-as-the-index-type\"]\n+ \"The Future for Python 2.x\": [\n+ [484, \"the-future-for-python-2-x\"]\n ],\n- \"PEP 357: The \\u2018__index__\\u2019 method\": [\n- [482, \"pep-357-the-index-method\"]\n+ \"Changes to the Handling of Deprecation Warnings\": [\n+ [484, \"changes-to-the-handling-of-deprecation-warnings\"]\n ],\n- \"Interactive Interpreter Changes\": [\n- [482, \"interactive-interpreter-changes\"]\n+ \"Python 3.1 Features\": [\n+ [484, \"python-3-1-features\"]\n ],\n- \"New, Improved, and Removed Modules\": [\n- [482, \"new-improved-and-removed-modules\"]\n+ \"PEP 372: Adding an Ordered Dictionary to collections\": [\n+ [484, \"pep-372-adding-an-ordered-dictionary-to-collections\"]\n ],\n- \"The ctypes package\": [\n- [482, \"the-ctypes-package\"]\n+ \"PEP 389: The argparse Module for Parsing Command Lines\": [\n+ [484, \"pep-389-the-argparse-module-for-parsing-command-lines\"]\n ],\n- \"The ElementTree package\": [\n- [482, \"the-elementtree-package\"]\n+ \"PEP 391: Dictionary-Based Configuration For Logging\": [\n+ [484, \"pep-391-dictionary-based-configuration-for-logging\"]\n ],\n- \"The hashlib package\": [\n- [482, \"the-hashlib-package\"]\n+ \"PEP 3106: Dictionary Views\": [\n+ [484, \"pep-3106-dictionary-views\"]\n ],\n- \"The sqlite3 package\": [\n- [482, \"the-sqlite3-package\"]\n+ \"PEP 3137: The memoryview Object\": [\n+ [484, \"pep-3137-the-memoryview-object\"]\n ],\n- \"The wsgiref package\": [\n- [482, \"the-wsgiref-package\"]\n+ \"Interpreter Changes\": [\n+ [484, \"interpreter-changes\"],\n+ [483, \"interpreter-changes\"]\n ],\n- \"Porting to Python 2.5\": [\n- [482, \"porting-to-python-2-5\"]\n+ \"New module: importlib\": [\n+ [484, \"new-module-importlib\"]\n ],\n- \"Floating Point Arithmetic: Issues and Limitations\": [\n- [459, \"floating-point-arithmetic-issues-and-limitations\"]\n+ \"New module: sysconfig\": [\n+ [484, \"new-module-sysconfig\"]\n ],\n- \"Representation Error\": [\n- [459, \"representation-error\"]\n+ \"ttk: Themed Widgets for Tk\": [\n+ [484, \"ttk-themed-widgets-for-tk\"]\n ],\n- \"What\\u2019s New in Python 2.0\": [\n- [477, \"what-s-new-in-python-2-0\"]\n+ \"Updated module: unittest\": [\n+ [484, \"updated-module-unittest\"]\n ],\n- \"What About Python 1.6?\": [\n- [477, \"what-about-python-1-6\"]\n+ \"Updated module: ElementTree 1.3\": [\n+ [484, \"updated-module-elementtree-1-3\"]\n ],\n- \"New Development Process\": [\n- [477, \"new-development-process\"]\n+ \"Port-Specific Changes: Windows\": [\n+ [484, \"port-specific-changes-windows\"],\n+ [483, \"port-specific-changes-windows\"]\n ],\n- \"Augmented Assignment\": [\n- [477, \"augmented-assignment\"]\n+ \"Port-Specific Changes: Mac OS X\": [\n+ [484, \"port-specific-changes-mac-os-x\"],\n+ [483, \"port-specific-changes-mac-os-x\"]\n ],\n- \"String Methods\": [\n- [477, \"string-methods\"],\n- [360, \"string-methods\"]\n+ \"Port-Specific Changes: FreeBSD\": [\n+ [484, \"port-specific-changes-freebsd\"]\n ],\n- \"Garbage Collection of Cycles\": [\n- [477, \"garbage-collection-of-cycles\"]\n+ \"Porting to Python 2.7\": [\n+ [484, \"porting-to-python-2-7\"]\n ],\n- \"Other Core Changes\": [\n- [477, \"other-core-changes\"]\n+ \"New Features Added to Python 2.7 Maintenance Releases\": [\n+ [484, \"new-features-added-to-python-2-7-maintenance-releases\"]\n ],\n- \"Minor Language Changes\": [\n- [477, \"minor-language-changes\"]\n+ \"Two new environment variables for debug mode\": [\n+ [484, \"two-new-environment-variables-for-debug-mode\"]\n ],\n- \"Changes to Built-in Functions\": [\n- [477, \"changes-to-built-in-functions\"]\n+ \"PEP 434: IDLE Enhancement Exception for All Branches\": [\n+ [484, \"pep-434-idle-enhancement-exception-for-all-branches\"]\n ],\n- \"Porting to 2.0\": [\n- [477, \"porting-to-2-0\"]\n+ \"PEP 466: Network Security Enhancements for Python 2.7\": [\n+ [484, \"pep-466-network-security-enhancements-for-python-2-7\"]\n ],\n- \"Extending/Embedding Changes\": [\n- [477, \"extending-embedding-changes\"]\n+ \"PEP 477: Backport ensurepip (PEP 453) to Python 2.7\": [\n+ [484, \"pep-477-backport-ensurepip-pep-453-to-python-2-7\"]\n ],\n- \"Distutils: Making Modules Easy to Install\": [\n- [477, \"distutils-making-modules-easy-to-install\"]\n+ \"Bootstrapping pip By Default\": [\n+ [484, \"bootstrapping-pip-by-default\"],\n+ [491, \"bootstrapping-pip-by-default\"]\n ],\n- \"XML Modules\": [\n- [477, \"xml-modules\"]\n+ \"Documentation Changes\": [\n+ [484, \"documentation-changes\"],\n+ [491, \"documentation-changes\"]\n ],\n- \"SAX2 Support\": [\n- [477, \"sax2-support\"]\n+ \"PEP 476: Enabling certificate verification by default for stdlib http clients\": [\n+ [484, \"pep-476-enabling-certificate-verification-by-default-for-stdlib-http-clients\"],\n+ [491, \"pep-476-enabling-certificate-verification-by-default-for-stdlib-http-clients\"]\n ],\n- \"DOM Support\": [\n- [477, \"dom-support\"]\n+ \"PEP 493: HTTPS verification migration tools for Python 2.7\": [\n+ [484, \"pep-493-https-verification-migration-tools-for-python-2-7\"]\n ],\n- \"Relationship to PyXML\": [\n- [477, \"relationship-to-pyxml\"]\n+ \"New make regen-all build target\": [\n+ [484, \"new-make-regen-all-build-target\"],\n+ [492, \"new-make-regen-all-build-target\"],\n+ [493, \"new-make-regen-all-build-target\"]\n ],\n- \"Module changes\": [\n- [477, \"module-changes\"]\n+ \"Removal of make touch build target\": [\n+ [484, \"removal-of-make-touch-build-target\"],\n+ [492, \"removal-of-make-touch-build-target\"],\n+ [493, \"removal-of-make-touch-build-target\"]\n ],\n- \"New modules\": [\n- [477, \"new-modules\"]\n+ \"Floating Point Arithmetic: Issues and Limitations\": [\n+ [459, \"floating-point-arithmetic-issues-and-limitations\"]\n ],\n- \"IDLE Improvements\": [\n- [477, \"idle-improvements\"]\n+ \"Representation Error\": [\n+ [459, \"representation-error\"]\n ],\n- \"Deleted and Deprecated Modules\": [\n- [477, \"deleted-and-deprecated-modules\"]\n+ \"Python Setup and Usage\": [\n+ [473, \"python-setup-and-usage\"]\n ],\n \"Configure Python\": [\n [471, \"configure-python\"]\n ],\n \"Configure Options\": [\n [471, \"configure-options\"]\n ],\n@@ -65090,139 +64863,262 @@\n ],\n \"Compiler flags\": [\n [471, \"compiler-flags\"]\n ],\n \"Linker flags\": [\n [471, \"linker-flags\"]\n ],\n- \"What Now?\": [\n- [469, \"what-now\"]\n+ \"Virtual Environments and Packages\": [\n+ [468, \"virtual-environments-and-packages\"]\n ],\n- \"The Python Tutorial\": [\n- [460, \"the-python-tutorial\"]\n+ \"Creating Virtual Environments\": [\n+ [468, \"creating-virtual-environments\"]\n ],\n- \"More on Modules\": [\n- [465, \"more-on-modules\"]\n+ \"Managing Packages with pip\": [\n+ [468, \"managing-packages-with-pip\"]\n ],\n- \"Executing modules as scripts\": [\n- [465, \"executing-modules-as-scripts\"]\n+ \"What\\u2019s New in Python 2.6\": [\n+ [483, \"what-s-new-in-python-2-6\"]\n ],\n- \"The Module Search Path\": [\n- [465, \"the-module-search-path\"]\n+ \"Python 3.0\": [\n+ [483, \"python-3-0\"]\n ],\n- \"\\u201cCompiled\\u201d Python files\": [\n- [465, \"compiled-python-files\"]\n+ \"Changes to the Development Process\": [\n+ [483, \"changes-to-the-development-process\"]\n ],\n- \"Standard Modules\": [\n- [465, \"standard-modules\"]\n+ \"New Issue Tracker: Roundup\": [\n+ [483, \"new-issue-tracker-roundup\"]\n ],\n- \"The dir() Function\": [\n- [465, \"the-dir-function\"]\n+ \"New Documentation Format: reStructuredText Using Sphinx\": [\n+ [483, \"new-documentation-format-restructuredtext-using-sphinx\"]\n ],\n- \"Importing * From a Package\": [\n- [465, \"importing-from-a-package\"]\n+ \"PEP 366: Explicit Relative Imports From a Main Module\": [\n+ [483, \"pep-366-explicit-relative-imports-from-a-main-module\"]\n ],\n- \"Intra-package References\": [\n- [465, \"intra-package-references\"]\n+ \"PEP 370: Per-user site-packages Directory\": [\n+ [483, \"pep-370-per-user-site-packages-directory\"]\n ],\n- \"Packages in Multiple Directories\": [\n- [465, \"packages-in-multiple-directories\"]\n+ \"PEP 371: The multiprocessing Package\": [\n+ [483, \"pep-371-the-multiprocessing-package\"]\n ],\n- \"What\\u2019s New in Python 2.3\": [\n- [480, \"what-s-new-in-python-2-3\"]\n+ \"PEP 3101: Advanced String Formatting\": [\n+ [483, \"pep-3101-advanced-string-formatting\"]\n ],\n- \"PEP 218: A Standard Set Datatype\": [\n- [480, \"pep-218-a-standard-set-datatype\"]\n+ \"PEP 3105: print As a Function\": [\n+ [483, \"pep-3105-print-as-a-function\"]\n ],\n- \"PEP 263: Source Code Encodings\": [\n- [480, \"pep-263-source-code-encodings\"]\n+ \"PEP 3110: Exception-Handling Changes\": [\n+ [483, \"pep-3110-exception-handling-changes\"]\n ],\n- \"PEP 273: Importing Modules from ZIP Archives\": [\n- [480, \"pep-273-importing-modules-from-zip-archives\"]\n+ \"PEP 3112: Byte Literals\": [\n+ [483, \"pep-3112-byte-literals\"]\n ],\n- \"PEP 277: Unicode file name support for Windows NT\": [\n- [480, \"pep-277-unicode-file-name-support-for-windows-nt\"]\n+ \"PEP 3116: New I/O Library\": [\n+ [483, \"pep-3116-new-i-o-library\"]\n ],\n- \"PEP 278: Universal Newline Support\": [\n- [480, \"pep-278-universal-newline-support\"]\n+ \"PEP 3118: Revised Buffer Protocol\": [\n+ [483, \"pep-3118-revised-buffer-protocol\"]\n ],\n- \"PEP 279: enumerate()\": [\n- [480, \"pep-279-enumerate\"]\n+ \"PEP 3119: Abstract Base Classes\": [\n+ [483, \"pep-3119-abstract-base-classes\"]\n ],\n- \"PEP 282: The logging Package\": [\n- [480, \"pep-282-the-logging-package\"]\n+ \"PEP 3127: Integer Literal Support and Syntax\": [\n+ [483, \"pep-3127-integer-literal-support-and-syntax\"]\n ],\n- \"PEP 285: A Boolean Type\": [\n- [480, \"pep-285-a-boolean-type\"]\n+ \"PEP 3129: Class Decorators\": [\n+ [483, \"pep-3129-class-decorators\"]\n ],\n- \"PEP 293: Codec Error Handling Callbacks\": [\n- [480, \"pep-293-codec-error-handling-callbacks\"]\n+ \"PEP 3141: A Type Hierarchy for Numbers\": [\n+ [483, \"pep-3141-a-type-hierarchy-for-numbers\"]\n ],\n- \"PEP 301: Package Index and Metadata for Distutils\": [\n- [480, \"pep-301-package-index-and-metadata-for-distutils\"]\n+ \"The fractions Module\": [\n+ [483, \"the-fractions-module\"]\n ],\n- \"PEP 302: New Import Hooks\": [\n- [480, \"pep-302-new-import-hooks\"]\n+ \"The ast module\": [\n+ [483, \"the-ast-module\"]\n ],\n- \"PEP 305: Comma-separated Files\": [\n- [480, \"pep-305-comma-separated-files\"]\n+ \"The future_builtins module\": [\n+ [483, \"the-future-builtins-module\"]\n ],\n- \"PEP 307: Pickle Enhancements\": [\n- [480, \"pep-307-pickle-enhancements\"]\n+ \"The json module: JavaScript Object Notation\": [\n+ [483, \"the-json-module-javascript-object-notation\"]\n ],\n- \"Extended Slices\": [\n- [480, \"extended-slices\"]\n+ \"The plistlib module: A Property-List Parser\": [\n+ [483, \"the-plistlib-module-a-property-list-parser\"]\n ],\n- \"String Changes\": [\n- [480, \"string-changes\"]\n+ \"ctypes Enhancements\": [\n+ [483, \"ctypes-enhancements\"]\n ],\n- \"Date/Time Type\": [\n- [480, \"date-time-type\"]\n+ \"Improved SSL Support\": [\n+ [483, \"improved-ssl-support\"]\n ],\n- \"The optparse Module\": [\n- [480, \"the-optparse-module\"]\n+ \"Deprecations and Removals\": [\n+ [483, \"deprecations-and-removals\"]\n ],\n- \"Pymalloc: A Specialized Object Allocator\": [\n- [480, \"pymalloc-a-specialized-object-allocator\"]\n+ \"Port-Specific Changes: IRIX\": [\n+ [483, \"port-specific-changes-irix\"]\n ],\n- \"Porting to Python 2.3\": [\n- [480, \"porting-to-python-2-3\"]\n+ \"Porting to Python 2.6\": [\n+ [483, \"porting-to-python-2-6\"]\n ],\n- \"Command line and environment\": [\n- [470, \"command-line-and-environment\"]\n+ \"What\\u2019s New In Python 3.0\": [\n+ [485, \"what-s-new-in-python-3-0\"]\n ],\n- \"Command line\": [\n- [470, \"command-line\"]\n+ \"Common Stumbling Blocks\": [\n+ [485, \"common-stumbling-blocks\"]\n ],\n- \"Interface options\": [\n- [470, \"interface-options\"]\n+ \"Print Is A Function\": [\n+ [485, \"print-is-a-function\"]\n ],\n- \"Generic options\": [\n- [470, \"generic-options\"]\n+ \"Views And Iterators Instead Of Lists\": [\n+ [485, \"views-and-iterators-instead-of-lists\"]\n ],\n- \"Miscellaneous options\": [\n- [470, \"miscellaneous-options\"]\n+ \"Ordering Comparisons\": [\n+ [485, \"ordering-comparisons\"]\n ],\n- \"Options you shouldn\\u2019t use\": [\n- [470, \"options-you-shouldn-t-use\"]\n+ \"Integers\": [\n+ [485, \"integers\"]\n ],\n- \"Environment variables\": [\n- [470, \"environment-variables\"]\n+ \"Text Vs. Data Instead Of Unicode Vs. 8-bit\": [\n+ [485, \"text-vs-data-instead-of-unicode-vs-8-bit\"]\n ],\n- \"Debug-mode variables\": [\n- [470, \"debug-mode-variables\"]\n+ \"Overview Of Syntax Changes\": [\n+ [485, \"overview-of-syntax-changes\"]\n ],\n- \"Virtual Environments and Packages\": [\n- [468, \"virtual-environments-and-packages\"]\n+ \"New Syntax\": [\n+ [485, \"new-syntax\"]\n ],\n- \"Creating Virtual Environments\": [\n- [468, \"creating-virtual-environments\"]\n+ \"Changed Syntax\": [\n+ [485, \"changed-syntax\"]\n ],\n- \"Managing Packages with pip\": [\n- [468, \"managing-packages-with-pip\"]\n+ \"Removed Syntax\": [\n+ [485, \"removed-syntax\"]\n+ ],\n+ \"Changes Already Present In Python 2.6\": [\n+ [485, \"changes-already-present-in-python-2-6\"]\n+ ],\n+ \"Library Changes\": [\n+ [485, \"library-changes\"]\n+ ],\n+ \"PEP 3101: A New Approach To String Formatting\": [\n+ [485, \"pep-3101-a-new-approach-to-string-formatting\"]\n+ ],\n+ \"Changes To Exceptions\": [\n+ [485, \"changes-to-exceptions\"]\n+ ],\n+ \"Miscellaneous Other Changes\": [\n+ [485, \"miscellaneous-other-changes\"]\n+ ],\n+ \"Operators And Special Methods\": [\n+ [485, \"operators-and-special-methods\"]\n+ ],\n+ \"Builtins\": [\n+ [485, \"builtins\"]\n+ ],\n+ \"Porting To Python 3.0\": [\n+ [485, \"porting-to-python-3-0\"]\n+ ],\n+ \"Data Structures\": [\n+ [457, \"data-structures\"]\n+ ],\n+ \"More on Lists\": [\n+ [457, \"more-on-lists\"]\n+ ],\n+ \"Using Lists as Stacks\": [\n+ [457, \"using-lists-as-stacks\"]\n+ ],\n+ \"Using Lists as Queues\": [\n+ [457, \"using-lists-as-queues\"]\n+ ],\n+ \"Nested List Comprehensions\": [\n+ [457, \"nested-list-comprehensions\"]\n+ ],\n+ \"Tuples and Sequences\": [\n+ [457, \"tuples-and-sequences\"]\n+ ],\n+ \"Sets\": [\n+ [457, \"sets\"]\n+ ],\n+ \"Looping Techniques\": [\n+ [457, \"looping-techniques\"]\n+ ],\n+ \"More on Conditions\": [\n+ [457, \"more-on-conditions\"]\n+ ],\n+ \"Comparing Sequences and Other Types\": [\n+ [457, \"comparing-sequences-and-other-types\"]\n+ ],\n+ \"Interactive Input Editing and History Substitution\": [\n+ [462, \"interactive-input-editing-and-history-substitution\"]\n+ ],\n+ \"Tab Completion and History Editing\": [\n+ [462, \"tab-completion-and-history-editing\"]\n+ ],\n+ \"Alternatives to the Interactive Interpreter\": [\n+ [462, \"alternatives-to-the-interactive-interpreter\"]\n+ ],\n+ \"More on Modules\": [\n+ [465, \"more-on-modules\"]\n+ ],\n+ \"Executing modules as scripts\": [\n+ [465, \"executing-modules-as-scripts\"]\n+ ],\n+ \"The Module Search Path\": [\n+ [465, \"the-module-search-path\"]\n+ ],\n+ \"\\u201cCompiled\\u201d Python files\": [\n+ [465, \"compiled-python-files\"]\n+ ],\n+ \"Standard Modules\": [\n+ [465, \"standard-modules\"]\n+ ],\n+ \"The dir() Function\": [\n+ [465, \"the-dir-function\"]\n+ ],\n+ \"Importing * From a Package\": [\n+ [465, \"importing-from-a-package\"]\n+ ],\n+ \"Intra-package References\": [\n+ [465, \"intra-package-references\"]\n+ ],\n+ \"Packages in Multiple Directories\": [\n+ [465, \"packages-in-multiple-directories\"]\n+ ],\n+ \"What\\u2019s New in Python 2.2\": [\n+ [479, \"what-s-new-in-python-2-2\"]\n+ ],\n+ \"PEPs 252 and 253: Type and Class Changes\": [\n+ [479, \"peps-252-and-253-type-and-class-changes\"]\n+ ],\n+ \"Old and New Classes\": [\n+ [479, \"old-and-new-classes\"]\n+ ],\n+ \"Descriptors\": [\n+ [479, \"descriptors\"]\n+ ],\n+ \"Multiple Inheritance: The Diamond Rule\": [\n+ [479, \"multiple-inheritance-the-diamond-rule\"]\n+ ],\n+ \"Attribute Access\": [\n+ [479, \"attribute-access\"]\n+ ],\n+ \"Related Links\": [\n+ [479, \"related-links\"]\n+ ],\n+ \"PEP 234: Iterators\": [\n+ [479, \"pep-234-iterators\"]\n+ ],\n+ \"PEP 238: Changing the Division Operator\": [\n+ [479, \"pep-238-changing-the-division-operator\"]\n+ ],\n+ \"Unicode Changes\": [\n+ [479, \"unicode-changes\"]\n+ ],\n+ \"Interpreter Changes and Fixes\": [\n+ [479, \"interpreter-changes-and-fixes\"]\n ],\n \"A Word About Names and Objects\": [\n [455, \"a-word-about-names-and-objects\"]\n ],\n \"Python Scopes and Namespaces\": [\n [455, \"python-scopes-and-namespaces\"]\n ],\n@@ -65257,51 +65153,131 @@\n ],\n \"Private Variables\": [\n [455, \"private-variables\"]\n ],\n \"Generator Expressions\": [\n [455, \"generator-expressions\"]\n ],\n- \"Using Python on Unix platforms\": [\n- [475, \"using-python-on-unix-platforms\"]\n+ \"Using Python on Windows\": [\n+ [476, \"using-python-on-windows\"]\n ],\n- \"Getting and installing the latest version of Python\": [\n- [475, \"getting-and-installing-the-latest-version-of-python\"]\n+ \"The full installer\": [\n+ [476, \"the-full-installer\"]\n ],\n- \"On Linux\": [\n- [475, \"on-linux\"]\n+ \"Installation steps\": [\n+ [476, \"installation-steps\"]\n ],\n- \"On FreeBSD and OpenBSD\": [\n- [475, \"on-freebsd-and-openbsd\"]\n+ \"Removing the MAX_PATH Limitation\": [\n+ [476, \"removing-the-max-path-limitation\"]\n ],\n- \"On OpenSolaris\": [\n- [475, \"on-opensolaris\"]\n+ \"Installing Without UI\": [\n+ [476, \"installing-without-ui\"]\n ],\n- \"Building Python\": [\n- [475, \"building-python\"]\n+ \"Installing Without Downloading\": [\n+ [476, \"installing-without-downloading\"]\n ],\n- \"Python-related paths and files\": [\n- [475, \"python-related-paths-and-files\"]\n+ \"Modifying an install\": [\n+ [476, \"modifying-an-install\"]\n ],\n- \"Miscellaneous\": [\n- [475, \"miscellaneous\"],\n- [298, \"miscellaneous\"],\n- [285, \"miscellaneous\"]\n+ \"The Microsoft Store package\": [\n+ [476, \"the-microsoft-store-package\"]\n ],\n- \"Custom OpenSSL\": [\n- [475, \"custom-openssl\"]\n+ \"Known issues\": [\n+ [476, \"known-issues\"]\n ],\n- \"What\\u2019s New In Python 3.1\": [\n- [486, \"what-s-new-in-python-3-1\"]\n+ \"Redirection of local data, registry, and temporary paths\": [\n+ [476, \"redirection-of-local-data-registry-and-temporary-paths\"]\n ],\n- \"PEP 372: Ordered Dictionaries\": [\n- [486, \"pep-372-ordered-dictionaries\"]\n+ \"The nuget.org packages\": [\n+ [476, \"the-nuget-org-packages\"]\n ],\n- \"Porting to Python 3.1\": [\n- [486, \"porting-to-python-3-1\"]\n+ \"The embeddable package\": [\n+ [476, \"the-embeddable-package\"]\n+ ],\n+ \"Python Application\": [\n+ [476, \"python-application\"]\n+ ],\n+ \"Alternative bundles\": [\n+ [476, \"alternative-bundles\"]\n+ ],\n+ \"Configuring Python\": [\n+ [476, \"configuring-python\"]\n+ ],\n+ \"Excursus: Setting environment variables\": [\n+ [476, \"excursus-setting-environment-variables\"]\n+ ],\n+ \"Finding the Python executable\": [\n+ [476, \"finding-the-python-executable\"]\n+ ],\n+ \"UTF-8 mode\": [\n+ [476, \"utf-8-mode\"]\n+ ],\n+ \"Python Launcher for Windows\": [\n+ [476, \"python-launcher-for-windows\"]\n+ ],\n+ \"Getting started\": [\n+ [476, \"getting-started\"]\n+ ],\n+ \"From the command-line\": [\n+ [476, \"from-the-command-line\"]\n+ ],\n+ \"Virtual environments\": [\n+ [476, \"virtual-environments\"],\n+ [369, \"virtual-environments\"]\n+ ],\n+ \"From a script\": [\n+ [476, \"from-a-script\"]\n+ ],\n+ \"From file associations\": [\n+ [476, \"from-file-associations\"]\n+ ],\n+ \"Shebang Lines\": [\n+ [476, \"shebang-lines\"]\n+ ],\n+ \"Arguments in shebang lines\": [\n+ [476, \"arguments-in-shebang-lines\"]\n+ ],\n+ \"Customization\": [\n+ [476, \"customization\"]\n+ ],\n+ \"Customization via INI files\": [\n+ [476, \"customization-via-ini-files\"]\n+ ],\n+ \"Customizing default Python versions\": [\n+ [476, \"customizing-default-python-versions\"]\n+ ],\n+ \"Diagnostics\": [\n+ [476, \"diagnostics\"]\n+ ],\n+ \"Dry Run\": [\n+ [476, \"dry-run\"]\n+ ],\n+ \"Install on demand\": [\n+ [476, \"install-on-demand\"]\n+ ],\n+ \"Return codes\": [\n+ [476, \"return-codes\"]\n+ ],\n+ \"Finding modules\": [\n+ [476, \"finding-modules\"]\n+ ],\n+ \"Additional modules\": [\n+ [476, \"additional-modules\"]\n+ ],\n+ \"PyWin32\": [\n+ [476, \"pywin32\"]\n+ ],\n+ \"cx_Freeze\": [\n+ [476, \"cx-freeze\"]\n+ ],\n+ \"Compiling Python on Windows\": [\n+ [476, \"compiling-python-on-windows\"]\n+ ],\n+ \"Other Platforms\": [\n+ [476, \"other-platforms\"]\n ],\n \"Using the Python Interpreter\": [\n [463, \"using-the-python-interpreter\"]\n ],\n \"Invoking the Interpreter\": [\n [463, \"invoking-the-interpreter\"]\n ],\n@@ -65310,22 +65286,40 @@\n ],\n \"The Interpreter and Its Environment\": [\n [463, \"the-interpreter-and-its-environment\"]\n ],\n \"Source Code Encoding\": [\n [463, \"source-code-encoding\"]\n ],\n- \"Python Setup and Usage\": [\n- [473, \"python-setup-and-usage\"]\n+ \"Errors and Exceptions\": [\n+ [458, \"errors-and-exceptions\"]\n ],\n- \"unicodedata \\u2014 Unicode Database\": [\n- [402, \"module-unicodedata\"]\n+ \"Syntax Errors\": [\n+ [458, \"syntax-errors\"]\n ],\n- \"tty \\u2014 Terminal control functions\": [\n- [398, \"module-tty\"]\n+ \"Raising Exceptions\": [\n+ [458, \"raising-exceptions\"]\n+ ],\n+ \"Exception Chaining\": [\n+ [458, \"exception-chaining\"]\n+ ],\n+ \"User-defined Exceptions\": [\n+ [458, \"user-defined-exceptions\"]\n+ ],\n+ \"Defining Clean-up Actions\": [\n+ [458, \"defining-clean-up-actions\"]\n+ ],\n+ \"Predefined Clean-up Actions\": [\n+ [458, \"predefined-clean-up-actions\"]\n+ ],\n+ \"Raising and Handling Multiple Unrelated Exceptions\": [\n+ [458, \"raising-and-handling-multiple-unrelated-exceptions\"]\n+ ],\n+ \"Enriching Exceptions with Notes\": [\n+ [458, \"enriching-exceptions-with-notes\"]\n ],\n \"venv \\u2014 Creation of virtual environments\": [\n [414, \"module-venv\"]\n ],\n \"Creating virtual environments\": [\n [414, \"creating-virtual-environments\"]\n ],\n@@ -65335,125 +65329,82 @@\n \"API\": [\n [414, \"api\"],\n [397, \"api\"]\n ],\n \"An example of extending EnvBuilder\": [\n [414, \"an-example-of-extending-envbuilder\"]\n ],\n- \"tkinter.ttk \\u2014 Tk themed widgets\": [\n- [391, \"module-tkinter.ttk\"]\n- ],\n- \"Using Ttk\": [\n- [391, \"using-ttk\"]\n- ],\n- \"Ttk Widgets\": [\n- [391, \"ttk-widgets\"]\n- ],\n- \"Widget\": [\n- [391, \"widget\"]\n- ],\n- \"Standard Options\": [\n- [391, \"standard-options\"]\n- ],\n- \"Scrollable Widget Options\": [\n- [391, \"scrollable-widget-options\"]\n- ],\n- \"Label Options\": [\n- [391, \"label-options\"]\n- ],\n- \"Compatibility Options\": [\n- [391, \"compatibility-options\"]\n- ],\n- \"Widget States\": [\n- [391, \"widget-states\"]\n- ],\n- \"ttk.Widget\": [\n- [391, \"ttk-widget\"]\n- ],\n- \"Combobox\": [\n- [391, \"combobox\"]\n- ],\n- \"Options\": [\n- [391, \"options\"],\n- [391, \"id1\"],\n- [391, \"id3\"],\n- [391, \"id5\"],\n- [391, \"id6\"],\n- [391, \"id7\"]\n- ],\n- \"Virtual events\": [\n- [391, \"virtual-events\"],\n- [391, \"id2\"]\n+ \"tokenize \\u2014 Tokenizer for Python source\": [\n+ [393, \"module-tokenize\"]\n ],\n- \"ttk.Combobox\": [\n- [391, \"ttk-combobox\"]\n+ \"Tokenizing Input\": [\n+ [393, \"tokenizing-input\"]\n ],\n- \"Spinbox\": [\n- [391, \"spinbox\"]\n+ \"MS Windows Specific Services\": [\n+ [419, \"ms-windows-specific-services\"]\n ],\n- \"ttk.Spinbox\": [\n- [391, \"ttk-spinbox\"]\n+ \"types \\u2014 Dynamic type creation and names for built-in types\": [\n+ [400, \"module-types\"]\n ],\n- \"Notebook\": [\n- [391, \"notebook\"]\n+ \"Dynamic Type Creation\": [\n+ [400, \"dynamic-type-creation\"]\n ],\n- \"Tab Options\": [\n- [391, \"tab-options\"]\n+ \"Standard Interpreter Types\": [\n+ [400, \"standard-interpreter-types\"]\n ],\n- \"Tab Identifiers\": [\n- [391, \"tab-identifiers\"]\n+ \"Additional Utility Classes and Functions\": [\n+ [400, \"additional-utility-classes-and-functions\"]\n ],\n- \"Virtual Events\": [\n- [391, \"id4\"],\n- [391, \"id8\"]\n+ \"Coroutine Utility Functions\": [\n+ [400, \"coroutine-utility-functions\"]\n ],\n- \"ttk.Notebook\": [\n- [391, \"ttk-notebook\"]\n+ \"tkinter.messagebox \\u2014 Tkinter message prompts\": [\n+ [388, \"module-tkinter.messagebox\"]\n ],\n- \"Progressbar\": [\n- [391, \"progressbar\"]\n+ \"tkinter.scrolledtext \\u2014 Scrolled Text Widget\": [\n+ [389, \"module-tkinter.scrolledtext\"]\n ],\n- \"ttk.Progressbar\": [\n- [391, \"ttk-progressbar\"]\n+ \"token \\u2014 Constants used with Python parse trees\": [\n+ [392, \"module-token\"]\n ],\n- \"Separator\": [\n- [391, \"separator\"]\n+ \"urllib.error \\u2014 Exception classes raised by urllib.request\": [\n+ [408, \"module-urllib.error\"]\n ],\n- \"Sizegrip\": [\n- [391, \"sizegrip\"]\n+ \"webbrowser \\u2014 Convenient web-browser controller\": [\n+ [418, \"module-webbrowser\"]\n ],\n- \"Platform-specific notes\": [\n- [391, \"platform-specific-notes\"]\n+ \"Browser Controller Objects\": [\n+ [418, \"browser-controller-objects\"]\n ],\n- \"Bugs\": [\n- [391, \"bugs\"]\n+ \"urllib.parse \\u2014 Parse URLs into components\": [\n+ [409, \"module-urllib.parse\"]\n ],\n- \"Treeview\": [\n- [391, \"treeview\"]\n+ \"URL Parsing\": [\n+ [409, \"url-parsing\"]\n ],\n- \"Item Options\": [\n- [391, \"item-options\"]\n+ \"URL parsing security\": [\n+ [409, \"url-parsing-security\"]\n ],\n- \"Tag Options\": [\n- [391, \"tag-options\"]\n+ \"Parsing ASCII Encoded Bytes\": [\n+ [409, \"parsing-ascii-encoded-bytes\"]\n ],\n- \"Column Identifiers\": [\n- [391, \"column-identifiers\"]\n+ \"Structured Parse Results\": [\n+ [409, \"structured-parse-results\"]\n ],\n- \"ttk.Treeview\": [\n- [391, \"ttk-treeview\"]\n+ \"URL Quoting\": [\n+ [409, \"url-quoting\"]\n ],\n- \"Ttk Styling\": [\n- [391, \"ttk-styling\"]\n+ \"tomllib \\u2014 Parse TOML files\": [\n+ [394, \"module-tomllib\"]\n ],\n- \"Layouts\": [\n- [391, \"layouts\"]\n+ \"Conversion Table\": [\n+ [394, \"conversion-table\"]\n ],\n- \"tkinter.scrolledtext \\u2014 Scrolled Text Widget\": [\n- [389, \"module-tkinter.scrolledtext\"]\n+ \"urllib.robotparser \\u2014 Parser for robots.txt\": [\n+ [411, \"module-urllib.robotparser\"]\n ],\n \"tkinter.tix \\u2014 Extension widgets for Tk\": [\n [390, \"module-tkinter.tix\"]\n ],\n \"Using Tix\": [\n [390, \"using-tix\"]\n ],\n@@ -65483,126 +65434,115 @@\n ],\n \"Form Geometry Manager\": [\n [390, \"form-geometry-manager\"]\n ],\n \"Tix Commands\": [\n [390, \"tix-commands\"]\n ],\n- \"tkinter.font \\u2014 Tkinter font wrapper\": [\n- [387, \"module-tkinter.font\"]\n- ],\n- \"wave \\u2014 Read and write WAV files\": [\n- [416, \"module-wave\"]\n- ],\n- \"Wave_read Objects\": [\n- [416, \"wave-read-objects\"]\n- ],\n- \"Wave_write Objects\": [\n- [416, \"wave-write-objects\"]\n+ \"unittest.mock \\u2014 getting started\": [\n+ [405, \"unittest-mock-getting-started\"]\n ],\n- \"urllib.error \\u2014 Exception classes raised by urllib.request\": [\n- [408, \"module-urllib.error\"]\n+ \"Using Mock\": [\n+ [405, \"using-mock\"]\n ],\n- \"uu \\u2014 Encode and decode uuencode files\": [\n- [412, \"module-uu\"]\n+ \"Mock Patching Methods\": [\n+ [405, \"mock-patching-methods\"]\n ],\n- \"unittest \\u2014 Unit testing framework\": [\n- [403, \"module-unittest\"]\n+ \"Mock for Method Calls on an Object\": [\n+ [405, \"mock-for-method-calls-on-an-object\"]\n ],\n- \"Basic example\": [\n- [403, \"basic-example\"]\n+ \"Mocking Classes\": [\n+ [405, \"mocking-classes\"]\n ],\n- \"Test Discovery\": [\n- [403, \"test-discovery\"]\n+ \"Naming your mocks\": [\n+ [405, \"naming-your-mocks\"]\n ],\n- \"Organizing test code\": [\n- [403, \"organizing-test-code\"]\n+ \"Tracking all Calls\": [\n+ [405, \"tracking-all-calls\"]\n ],\n- \"Re-using old test code\": [\n- [403, \"re-using-old-test-code\"]\n+ \"Setting Return Values and Attributes\": [\n+ [405, \"setting-return-values-and-attributes\"]\n ],\n- \"Skipping tests and expected failures\": [\n- [403, \"skipping-tests-and-expected-failures\"]\n+ \"Raising exceptions with mocks\": [\n+ [405, \"raising-exceptions-with-mocks\"]\n ],\n- \"Distinguishing test iterations using subtests\": [\n- [403, \"distinguishing-test-iterations-using-subtests\"]\n+ \"Side effect functions and iterables\": [\n+ [405, \"side-effect-functions-and-iterables\"]\n ],\n- \"Classes and functions\": [\n- [403, \"classes-and-functions\"],\n- [270, \"classes-and-functions\"]\n+ \"Mocking asynchronous iterators\": [\n+ [405, \"mocking-asynchronous-iterators\"]\n ],\n- \"Test cases\": [\n- [403, \"test-cases\"]\n+ \"Mocking asynchronous context manager\": [\n+ [405, \"mocking-asynchronous-context-manager\"]\n ],\n- \"Deprecated aliases\": [\n- [403, \"deprecated-aliases\"],\n- [401, \"deprecated-aliases\"]\n+ \"Creating a Mock from an Existing Object\": [\n+ [405, \"creating-a-mock-from-an-existing-object\"]\n ],\n- \"Grouping tests\": [\n- [403, \"grouping-tests\"]\n+ \"Using side_effect to return per file content\": [\n+ [405, \"using-side-effect-to-return-per-file-content\"]\n ],\n- \"Loading and running tests\": [\n- [403, \"loading-and-running-tests\"]\n+ \"Patch Decorators\": [\n+ [405, \"patch-decorators\"]\n ],\n- \"load_tests Protocol\": [\n- [403, \"load-tests-protocol\"]\n+ \"Further Examples\": [\n+ [405, \"further-examples\"]\n ],\n- \"Class and Module Fixtures\": [\n- [403, \"class-and-module-fixtures\"]\n+ \"Mocking chained calls\": [\n+ [405, \"mocking-chained-calls\"]\n ],\n- \"setUpClass and tearDownClass\": [\n- [403, \"setupclass-and-teardownclass\"]\n+ \"Partial mocking\": [\n+ [405, \"partial-mocking\"]\n ],\n- \"setUpModule and tearDownModule\": [\n- [403, \"setupmodule-and-teardownmodule\"]\n+ \"Mocking a Generator Method\": [\n+ [405, \"mocking-a-generator-method\"]\n ],\n- \"weakref \\u2014 Weak references\": [\n- [417, \"module-weakref\"]\n+ \"Applying the same patch to every test method\": [\n+ [405, \"applying-the-same-patch-to-every-test-method\"]\n ],\n- \"Finalizer Objects\": [\n- [417, \"finalizer-objects\"]\n+ \"Mocking Unbound Methods\": [\n+ [405, \"mocking-unbound-methods\"]\n ],\n- \"Comparing finalizers with __del__() methods\": [\n- [417, \"comparing-finalizers-with-del-methods\"]\n+ \"Checking multiple calls with mock\": [\n+ [405, \"checking-multiple-calls-with-mock\"]\n ],\n- \"tkinter.messagebox \\u2014 Tkinter message prompts\": [\n- [388, \"module-tkinter.messagebox\"]\n+ \"Coping with mutable arguments\": [\n+ [405, \"coping-with-mutable-arguments\"]\n ],\n- \"warnings \\u2014 Warning control\": [\n- [415, \"module-warnings\"]\n+ \"Nesting Patches\": [\n+ [405, \"nesting-patches\"]\n ],\n- \"Warning Categories\": [\n- [415, \"warning-categories\"]\n+ \"Mocking a dictionary with MagicMock\": [\n+ [405, \"mocking-a-dictionary-with-magicmock\"]\n ],\n- \"The Warnings Filter\": [\n- [415, \"the-warnings-filter\"]\n+ \"Mock subclasses and their attributes\": [\n+ [405, \"mock-subclasses-and-their-attributes\"]\n ],\n- \"Describing Warning Filters\": [\n- [415, \"describing-warning-filters\"]\n+ \"Mocking imports with patch.dict\": [\n+ [405, \"mocking-imports-with-patch-dict\"]\n ],\n- \"Default Warning Filter\": [\n- [415, \"default-warning-filter\"]\n+ \"Tracking order of calls and less verbose call assertions\": [\n+ [405, \"tracking-order-of-calls-and-less-verbose-call-assertions\"]\n ],\n- \"Overriding the default filter\": [\n- [415, \"overriding-the-default-filter\"]\n+ \"More complex argument matching\": [\n+ [405, \"more-complex-argument-matching\"]\n ],\n- \"Temporarily Suppressing Warnings\": [\n- [415, \"temporarily-suppressing-warnings\"]\n+ \"wave \\u2014 Read and write WAV files\": [\n+ [416, \"module-wave\"]\n ],\n- \"Testing Warnings\": [\n- [415, \"testing-warnings\"]\n+ \"Wave_read Objects\": [\n+ [416, \"wave-read-objects\"]\n ],\n- \"Updating Code For New Versions of Dependencies\": [\n- [415, \"updating-code-for-new-versions-of-dependencies\"]\n+ \"Wave_write Objects\": [\n+ [416, \"wave-write-objects\"]\n ],\n- \"Available Functions\": [\n- [415, \"available-functions\"]\n+ \"tty \\u2014 Terminal control functions\": [\n+ [398, \"module-tty\"]\n ],\n- \"Available Context Managers\": [\n- [415, \"available-context-managers\"]\n+ \"tkinter.dnd \\u2014 Drag and drop support\": [\n+ [386, \"module-tkinter.dnd\"]\n ],\n \"typing \\u2014 Support for type hints\": [\n [401, \"typing-support-for-type-hints\"]\n ],\n \"Relevant PEPs\": [\n [401, \"relevant-peps\"]\n ],\n@@ -65671,14 +65611,18 @@\n ],\n \"Introspection helpers\": [\n [401, \"introspection-helpers\"]\n ],\n \"Constant\": [\n [401, \"constant\"]\n ],\n+ \"Deprecated aliases\": [\n+ [401, \"deprecated-aliases\"],\n+ [403, \"deprecated-aliases\"]\n+ ],\n \"Aliases to built-in types\": [\n [401, \"aliases-to-built-in-types\"]\n ],\n \"Aliases to types in collections\": [\n [401, \"aliases-to-types-in-collections\"]\n ],\n \"Aliases to other concrete types\": [\n@@ -65695,145 +65639,304 @@\n ],\n \"Aliases to contextlib ABCs\": [\n [401, \"aliases-to-contextlib-abcs\"]\n ],\n \"Deprecation Timeline of Major Features\": [\n [401, \"deprecation-timeline-of-major-features\"]\n ],\n- \"tkinter.dnd \\u2014 Drag and drop support\": [\n- [386, \"module-tkinter.dnd\"]\n+ \"unittest.mock \\u2014 mock object library\": [\n+ [404, \"module-unittest.mock\"]\n ],\n- \"tracemalloc \\u2014 Trace memory allocations\": [\n- [397, \"module-tracemalloc\"]\n+ \"Quick Guide\": [\n+ [404, \"quick-guide\"]\n ],\n- \"Display the top 10\": [\n- [397, \"display-the-top-10\"]\n+ \"The Mock Class\": [\n+ [404, \"the-mock-class\"]\n ],\n- \"Compute differences\": [\n- [397, \"compute-differences\"]\n+ \"Calling\": [\n+ [404, \"calling\"]\n ],\n- \"Get the traceback of a memory block\": [\n- [397, \"get-the-traceback-of-a-memory-block\"]\n+ \"Deleting Attributes\": [\n+ [404, \"deleting-attributes\"]\n ],\n- \"Pretty top\": [\n- [397, \"pretty-top\"]\n+ \"Mock names and the name attribute\": [\n+ [404, \"mock-names-and-the-name-attribute\"]\n ],\n- \"Record the current and peak size of all traced memory blocks\": [\n- [397, \"record-the-current-and-peak-size-of-all-traced-memory-blocks\"]\n+ \"Attaching Mocks as Attributes\": [\n+ [404, \"attaching-mocks-as-attributes\"]\n ],\n- \"DomainFilter\": [\n- [397, \"domainfilter\"]\n+ \"The patchers\": [\n+ [404, \"the-patchers\"]\n ],\n- \"Filter\": [\n- [397, \"filter\"]\n+ \"patch\": [\n+ [404, \"patch\"]\n ],\n- \"Frame\": [\n- [397, \"frame\"]\n+ \"patch.object\": [\n+ [404, \"patch-object\"]\n ],\n- \"Snapshot\": [\n- [397, \"snapshot\"]\n+ \"patch.dict\": [\n+ [404, \"patch-dict\"]\n ],\n- \"Statistic\": [\n- [397, \"statistic\"]\n+ \"patch.multiple\": [\n+ [404, \"patch-multiple\"]\n ],\n- \"StatisticDiff\": [\n- [397, \"statisticdiff\"]\n+ \"patch methods: start and stop\": [\n+ [404, \"patch-methods-start-and-stop\"]\n ],\n- \"Trace\": [\n- [397, \"trace\"]\n+ \"patch builtins\": [\n+ [404, \"patch-builtins\"]\n ],\n- \"Traceback\": [\n- [397, \"traceback\"]\n+ \"TEST_PREFIX\": [\n+ [404, \"test-prefix\"]\n ],\n- \"unittest.mock \\u2014 getting started\": [\n- [405, \"unittest-mock-getting-started\"]\n+ \"Nesting Patch Decorators\": [\n+ [404, \"nesting-patch-decorators\"]\n ],\n- \"Using Mock\": [\n- [405, \"using-mock\"]\n+ \"Where to patch\": [\n+ [404, \"where-to-patch\"]\n ],\n- \"Mock Patching Methods\": [\n- [405, \"mock-patching-methods\"]\n+ \"Patching Descriptors and Proxy Objects\": [\n+ [404, \"patching-descriptors-and-proxy-objects\"]\n ],\n- \"Mock for Method Calls on an Object\": [\n- [405, \"mock-for-method-calls-on-an-object\"]\n+ \"MagicMock and magic method support\": [\n+ [404, \"magicmock-and-magic-method-support\"]\n ],\n- \"Mocking Classes\": [\n- [405, \"mocking-classes\"]\n+ \"Mocking Magic Methods\": [\n+ [404, \"mocking-magic-methods\"]\n ],\n- \"Naming your mocks\": [\n- [405, \"naming-your-mocks\"]\n+ \"Magic Mock\": [\n+ [404, \"magic-mock\"]\n ],\n- \"Tracking all Calls\": [\n- [405, \"tracking-all-calls\"]\n+ \"Helpers\": [\n+ [404, \"helpers\"]\n ],\n- \"Setting Return Values and Attributes\": [\n- [405, \"setting-return-values-and-attributes\"]\n+ \"sentinel\": [\n+ [404, \"sentinel\"]\n ],\n- \"Raising exceptions with mocks\": [\n- [405, \"raising-exceptions-with-mocks\"]\n+ \"DEFAULT\": [\n+ [404, \"default\"]\n ],\n- \"Side effect functions and iterables\": [\n- [405, \"side-effect-functions-and-iterables\"]\n+ \"call\": [\n+ [404, \"call\"]\n ],\n- \"Mocking asynchronous iterators\": [\n- [405, \"mocking-asynchronous-iterators\"]\n+ \"create_autospec\": [\n+ [404, \"create-autospec\"]\n ],\n- \"Mocking asynchronous context manager\": [\n- [405, \"mocking-asynchronous-context-manager\"]\n+ \"ANY\": [\n+ [404, \"any\"]\n ],\n- \"Creating a Mock from an Existing Object\": [\n- [405, \"creating-a-mock-from-an-existing-object\"]\n+ \"FILTER_DIR\": [\n+ [404, \"filter-dir\"]\n ],\n- \"Using side_effect to return per file content\": [\n- [405, \"using-side-effect-to-return-per-file-content\"]\n+ \"mock_open\": [\n+ [404, \"mock-open\"]\n ],\n- \"Patch Decorators\": [\n- [405, \"patch-decorators\"]\n+ \"Autospeccing\": [\n+ [404, \"autospeccing\"]\n ],\n- \"Further Examples\": [\n- [405, \"further-examples\"]\n+ \"Sealing mocks\": [\n+ [404, \"sealing-mocks\"]\n ],\n- \"Mocking chained calls\": [\n- [405, \"mocking-chained-calls\"]\n+ \"Order of precedence of side_effect, return_value and wraps\": [\n+ [404, \"order-of-precedence-of-side-effect-return-value-and-wraps\"]\n ],\n- \"Partial mocking\": [\n- [405, \"partial-mocking\"]\n+ \"tkinter.ttk \\u2014 Tk themed widgets\": [\n+ [391, \"module-tkinter.ttk\"]\n ],\n- \"Mocking a Generator Method\": [\n- [405, \"mocking-a-generator-method\"]\n+ \"Using Ttk\": [\n+ [391, \"using-ttk\"]\n ],\n- \"Applying the same patch to every test method\": [\n- [405, \"applying-the-same-patch-to-every-test-method\"]\n+ \"Ttk Widgets\": [\n+ [391, \"ttk-widgets\"]\n ],\n- \"Mocking Unbound Methods\": [\n- [405, \"mocking-unbound-methods\"]\n+ \"Widget\": [\n+ [391, \"widget\"]\n ],\n- \"Checking multiple calls with mock\": [\n- [405, \"checking-multiple-calls-with-mock\"]\n+ \"Standard Options\": [\n+ [391, \"standard-options\"]\n ],\n- \"Coping with mutable arguments\": [\n- [405, \"coping-with-mutable-arguments\"]\n+ \"Scrollable Widget Options\": [\n+ [391, \"scrollable-widget-options\"]\n ],\n- \"Nesting Patches\": [\n- [405, \"nesting-patches\"]\n+ \"Label Options\": [\n+ [391, \"label-options\"]\n ],\n- \"Mocking a dictionary with MagicMock\": [\n- [405, \"mocking-a-dictionary-with-magicmock\"]\n+ \"Compatibility Options\": [\n+ [391, \"compatibility-options\"]\n ],\n- \"Mock subclasses and their attributes\": [\n- [405, \"mock-subclasses-and-their-attributes\"]\n+ \"Widget States\": [\n+ [391, \"widget-states\"]\n ],\n- \"Mocking imports with patch.dict\": [\n- [405, \"mocking-imports-with-patch-dict\"]\n+ \"ttk.Widget\": [\n+ [391, \"ttk-widget\"]\n ],\n- \"Tracking order of calls and less verbose call assertions\": [\n- [405, \"tracking-order-of-calls-and-less-verbose-call-assertions\"]\n+ \"Combobox\": [\n+ [391, \"combobox\"]\n ],\n- \"More complex argument matching\": [\n- [405, \"more-complex-argument-matching\"]\n+ \"Options\": [\n+ [391, \"options\"],\n+ [391, \"id1\"],\n+ [391, \"id3\"],\n+ [391, \"id5\"],\n+ [391, \"id6\"],\n+ [391, \"id7\"]\n+ ],\n+ \"Virtual events\": [\n+ [391, \"virtual-events\"],\n+ [391, \"id2\"]\n+ ],\n+ \"ttk.Combobox\": [\n+ [391, \"ttk-combobox\"]\n+ ],\n+ \"Spinbox\": [\n+ [391, \"spinbox\"]\n+ ],\n+ \"ttk.Spinbox\": [\n+ [391, \"ttk-spinbox\"]\n+ ],\n+ \"Notebook\": [\n+ [391, \"notebook\"]\n+ ],\n+ \"Tab Options\": [\n+ [391, \"tab-options\"]\n+ ],\n+ \"Tab Identifiers\": [\n+ [391, \"tab-identifiers\"]\n+ ],\n+ \"Virtual Events\": [\n+ [391, \"id4\"],\n+ [391, \"id8\"]\n+ ],\n+ \"ttk.Notebook\": [\n+ [391, \"ttk-notebook\"]\n+ ],\n+ \"Progressbar\": [\n+ [391, \"progressbar\"]\n+ ],\n+ \"ttk.Progressbar\": [\n+ [391, \"ttk-progressbar\"]\n+ ],\n+ \"Separator\": [\n+ [391, \"separator\"]\n+ ],\n+ \"Sizegrip\": [\n+ [391, \"sizegrip\"]\n+ ],\n+ \"Platform-specific notes\": [\n+ [391, \"platform-specific-notes\"]\n+ ],\n+ \"Bugs\": [\n+ [391, \"bugs\"]\n+ ],\n+ \"Treeview\": [\n+ [391, \"treeview\"]\n+ ],\n+ \"Item Options\": [\n+ [391, \"item-options\"]\n+ ],\n+ \"Tag Options\": [\n+ [391, \"tag-options\"]\n+ ],\n+ \"Column Identifiers\": [\n+ [391, \"column-identifiers\"]\n+ ],\n+ \"ttk.Treeview\": [\n+ [391, \"ttk-treeview\"]\n+ ],\n+ \"Ttk Styling\": [\n+ [391, \"ttk-styling\"]\n+ ],\n+ \"Layouts\": [\n+ [391, \"layouts\"]\n+ ],\n+ \"uu \\u2014 Encode and decode uuencode files\": [\n+ [412, \"module-uu\"]\n+ ],\n+ \"Unix Specific Services\": [\n+ [406, \"unix-specific-services\"]\n+ ],\n+ \"traceback \\u2014 Print or retrieve a stack traceback\": [\n+ [396, \"module-traceback\"]\n+ ],\n+ \"TracebackException Objects\": [\n+ [396, \"tracebackexception-objects\"]\n+ ],\n+ \"StackSummary Objects\": [\n+ [396, \"stacksummary-objects\"]\n+ ],\n+ \"FrameSummary Objects\": [\n+ [396, \"framesummary-objects\"]\n+ ],\n+ \"Traceback Examples\": [\n+ [396, \"traceback-examples\"]\n+ ],\n+ \"unittest \\u2014 Unit testing framework\": [\n+ [403, \"module-unittest\"]\n+ ],\n+ \"Basic example\": [\n+ [403, \"basic-example\"]\n+ ],\n+ \"Test Discovery\": [\n+ [403, \"test-discovery\"]\n+ ],\n+ \"Organizing test code\": [\n+ [403, \"organizing-test-code\"]\n+ ],\n+ \"Re-using old test code\": [\n+ [403, \"re-using-old-test-code\"]\n+ ],\n+ \"Skipping tests and expected failures\": [\n+ [403, \"skipping-tests-and-expected-failures\"]\n+ ],\n+ \"Distinguishing test iterations using subtests\": [\n+ [403, \"distinguishing-test-iterations-using-subtests\"]\n+ ],\n+ \"Classes and functions\": [\n+ [403, \"classes-and-functions\"],\n+ [270, \"classes-and-functions\"]\n+ ],\n+ \"Test cases\": [\n+ [403, \"test-cases\"]\n+ ],\n+ \"Grouping tests\": [\n+ [403, \"grouping-tests\"]\n+ ],\n+ \"Loading and running tests\": [\n+ [403, \"loading-and-running-tests\"]\n+ ],\n+ \"load_tests Protocol\": [\n+ [403, \"load-tests-protocol\"]\n+ ],\n+ \"Class and Module Fixtures\": [\n+ [403, \"class-and-module-fixtures\"]\n+ ],\n+ \"setUpClass and tearDownClass\": [\n+ [403, \"setupclass-and-teardownclass\"]\n+ ],\n+ \"setUpModule and tearDownModule\": [\n+ [403, \"setupmodule-and-teardownmodule\"]\n+ ],\n+ \"trace \\u2014 Trace or track Python statement execution\": [\n+ [395, \"module-trace\"]\n+ ],\n+ \"Main options\": [\n+ [395, \"main-options\"]\n+ ],\n+ \"Modifiers\": [\n+ [395, \"modifiers\"]\n+ ],\n+ \"Filters\": [\n+ [395, \"filters\"]\n+ ],\n+ \"Programmatic Interface\": [\n+ [395, \"programmatic-interface\"],\n+ [315, \"programmatic-interface\"]\n+ ],\n+ \"unicodedata \\u2014 Unicode Database\": [\n+ [402, \"module-unicodedata\"]\n ],\n \"urllib.request \\u2014 Extensible library for opening URLs\": [\n [410, \"module-urllib.request\"]\n ],\n \"Request Objects\": [\n [410, \"request-objects\"]\n ],\n@@ -65905,166 +66008,97 @@\n ],\n \"urllib.request Restrictions\": [\n [410, \"urllib-request-restrictions\"]\n ],\n \"urllib.response \\u2014 Response classes used by urllib\": [\n [410, \"module-urllib.response\"]\n ],\n- \"uuid \\u2014 UUID objects according to RFC 4122\": [\n- [413, \"module-uuid\"]\n- ],\n- \"Unix Specific Services\": [\n- [406, \"unix-specific-services\"]\n- ],\n- \"tokenize \\u2014 Tokenizer for Python source\": [\n- [393, \"module-tokenize\"]\n- ],\n- \"Tokenizing Input\": [\n- [393, \"tokenizing-input\"]\n- ],\n- \"unittest.mock \\u2014 mock object library\": [\n- [404, \"module-unittest.mock\"]\n- ],\n- \"Quick Guide\": [\n- [404, \"quick-guide\"]\n- ],\n- \"The Mock Class\": [\n- [404, \"the-mock-class\"]\n- ],\n- \"Calling\": [\n- [404, \"calling\"]\n- ],\n- \"Deleting Attributes\": [\n- [404, \"deleting-attributes\"]\n- ],\n- \"Mock names and the name attribute\": [\n- [404, \"mock-names-and-the-name-attribute\"]\n- ],\n- \"Attaching Mocks as Attributes\": [\n- [404, \"attaching-mocks-as-attributes\"]\n- ],\n- \"The patchers\": [\n- [404, \"the-patchers\"]\n- ],\n- \"patch\": [\n- [404, \"patch\"]\n- ],\n- \"patch.object\": [\n- [404, \"patch-object\"]\n- ],\n- \"patch.dict\": [\n- [404, \"patch-dict\"]\n- ],\n- \"patch.multiple\": [\n- [404, \"patch-multiple\"]\n- ],\n- \"patch methods: start and stop\": [\n- [404, \"patch-methods-start-and-stop\"]\n- ],\n- \"patch builtins\": [\n- [404, \"patch-builtins\"]\n- ],\n- \"TEST_PREFIX\": [\n- [404, \"test-prefix\"]\n- ],\n- \"Nesting Patch Decorators\": [\n- [404, \"nesting-patch-decorators\"]\n- ],\n- \"Where to patch\": [\n- [404, \"where-to-patch\"]\n- ],\n- \"Patching Descriptors and Proxy Objects\": [\n- [404, \"patching-descriptors-and-proxy-objects\"]\n- ],\n- \"MagicMock and magic method support\": [\n- [404, \"magicmock-and-magic-method-support\"]\n- ],\n- \"Mocking Magic Methods\": [\n- [404, \"mocking-magic-methods\"]\n+ \"weakref \\u2014 Weak references\": [\n+ [417, \"module-weakref\"]\n ],\n- \"Magic Mock\": [\n- [404, \"magic-mock\"]\n+ \"Finalizer Objects\": [\n+ [417, \"finalizer-objects\"]\n ],\n- \"Helpers\": [\n- [404, \"helpers\"]\n+ \"Comparing finalizers with __del__() methods\": [\n+ [417, \"comparing-finalizers-with-del-methods\"]\n ],\n- \"sentinel\": [\n- [404, \"sentinel\"]\n+ \"warnings \\u2014 Warning control\": [\n+ [415, \"module-warnings\"]\n ],\n- \"DEFAULT\": [\n- [404, \"default\"]\n+ \"Warning Categories\": [\n+ [415, \"warning-categories\"]\n ],\n- \"call\": [\n- [404, \"call\"]\n+ \"The Warnings Filter\": [\n+ [415, \"the-warnings-filter\"]\n ],\n- \"create_autospec\": [\n- [404, \"create-autospec\"]\n+ \"Describing Warning Filters\": [\n+ [415, \"describing-warning-filters\"]\n ],\n- \"ANY\": [\n- [404, \"any\"]\n+ \"Default Warning Filter\": [\n+ [415, \"default-warning-filter\"]\n ],\n- \"FILTER_DIR\": [\n- [404, \"filter-dir\"]\n+ \"Overriding the default filter\": [\n+ [415, \"overriding-the-default-filter\"]\n ],\n- \"mock_open\": [\n- [404, \"mock-open\"]\n+ \"Temporarily Suppressing Warnings\": [\n+ [415, \"temporarily-suppressing-warnings\"]\n ],\n- \"Autospeccing\": [\n- [404, \"autospeccing\"]\n+ \"Testing Warnings\": [\n+ [415, \"testing-warnings\"]\n ],\n- \"Sealing mocks\": [\n- [404, \"sealing-mocks\"]\n+ \"Updating Code For New Versions of Dependencies\": [\n+ [415, \"updating-code-for-new-versions-of-dependencies\"]\n ],\n- \"Order of precedence of side_effect, return_value and wraps\": [\n- [404, \"order-of-precedence-of-side-effect-return-value-and-wraps\"]\n+ \"Available Functions\": [\n+ [415, \"available-functions\"]\n ],\n- \"MS Windows Specific Services\": [\n- [419, \"ms-windows-specific-services\"]\n+ \"Available Context Managers\": [\n+ [415, \"available-context-managers\"]\n ],\n- \"traceback \\u2014 Print or retrieve a stack traceback\": [\n- [396, \"module-traceback\"]\n+ \"tracemalloc \\u2014 Trace memory allocations\": [\n+ [397, \"module-tracemalloc\"]\n ],\n- \"TracebackException Objects\": [\n- [396, \"tracebackexception-objects\"]\n+ \"Display the top 10\": [\n+ [397, \"display-the-top-10\"]\n ],\n- \"StackSummary Objects\": [\n- [396, \"stacksummary-objects\"]\n+ \"Compute differences\": [\n+ [397, \"compute-differences\"]\n ],\n- \"FrameSummary Objects\": [\n- [396, \"framesummary-objects\"]\n+ \"Get the traceback of a memory block\": [\n+ [397, \"get-the-traceback-of-a-memory-block\"]\n ],\n- \"Traceback Examples\": [\n- [396, \"traceback-examples\"]\n+ \"Pretty top\": [\n+ [397, \"pretty-top\"]\n ],\n- \"urllib.parse \\u2014 Parse URLs into components\": [\n- [409, \"module-urllib.parse\"]\n+ \"Record the current and peak size of all traced memory blocks\": [\n+ [397, \"record-the-current-and-peak-size-of-all-traced-memory-blocks\"]\n ],\n- \"URL Parsing\": [\n- [409, \"url-parsing\"]\n+ \"DomainFilter\": [\n+ [397, \"domainfilter\"]\n ],\n- \"URL parsing security\": [\n- [409, \"url-parsing-security\"]\n+ \"Filter\": [\n+ [397, \"filter\"]\n ],\n- \"Parsing ASCII Encoded Bytes\": [\n- [409, \"parsing-ascii-encoded-bytes\"]\n+ \"Frame\": [\n+ [397, \"frame\"]\n ],\n- \"Structured Parse Results\": [\n- [409, \"structured-parse-results\"]\n+ \"Snapshot\": [\n+ [397, \"snapshot\"]\n ],\n- \"URL Quoting\": [\n- [409, \"url-quoting\"]\n+ \"Statistic\": [\n+ [397, \"statistic\"]\n ],\n- \"tkinter.colorchooser \\u2014 Color choosing dialog\": [\n- [385, \"module-tkinter.colorchooser\"]\n+ \"StatisticDiff\": [\n+ [397, \"statisticdiff\"]\n ],\n- \"webbrowser \\u2014 Convenient web-browser controller\": [\n- [418, \"module-webbrowser\"]\n+ \"Trace\": [\n+ [397, \"trace\"]\n ],\n- \"Browser Controller Objects\": [\n- [418, \"browser-controller-objects\"]\n+ \"Traceback\": [\n+ [397, \"traceback\"]\n ],\n \"turtle \\u2014 Turtle graphics\": [\n [399, \"module-turtle\"]\n ],\n \"Turtle star\": [\n [399, null]\n ],\n@@ -66195,59 +66229,25 @@\n ],\n \"Changes since Python 2.6\": [\n [399, \"changes-since-python-2-6\"]\n ],\n \"Changes since Python 3.0\": [\n [399, \"changes-since-python-3-0\"]\n ],\n- \"types \\u2014 Dynamic type creation and names for built-in types\": [\n- [400, \"module-types\"]\n- ],\n- \"Dynamic Type Creation\": [\n- [400, \"dynamic-type-creation\"]\n- ],\n- \"Standard Interpreter Types\": [\n- [400, \"standard-interpreter-types\"]\n- ],\n- \"Additional Utility Classes and Functions\": [\n- [400, \"additional-utility-classes-and-functions\"]\n- ],\n- \"Coroutine Utility Functions\": [\n- [400, \"coroutine-utility-functions\"]\n- ],\n- \"urllib.robotparser \\u2014 Parser for robots.txt\": [\n- [411, \"module-urllib.robotparser\"]\n- ],\n- \"tomllib \\u2014 Parse TOML files\": [\n- [394, \"module-tomllib\"]\n- ],\n- \"Conversion Table\": [\n- [394, \"conversion-table\"]\n+ \"tkinter.colorchooser \\u2014 Color choosing dialog\": [\n+ [385, \"module-tkinter.colorchooser\"]\n ],\n \"urllib \\u2014 URL handling modules\": [\n [407, \"module-urllib\"]\n ],\n- \"token \\u2014 Constants used with Python parse trees\": [\n- [392, \"module-token\"]\n- ],\n- \"trace \\u2014 Trace or track Python statement execution\": [\n- [395, \"module-trace\"]\n- ],\n- \"Main options\": [\n- [395, \"main-options\"]\n- ],\n- \"Modifiers\": [\n- [395, \"modifiers\"]\n- ],\n- \"Filters\": [\n- [395, \"filters\"]\n+ \"tkinter.font \\u2014 Tkinter font wrapper\": [\n+ [387, \"module-tkinter.font\"]\n ],\n- \"Programmatic Interface\": [\n- [395, \"programmatic-interface\"],\n- [315, \"programmatic-interface\"]\n+ \"uuid \\u2014 UUID objects according to RFC 4122\": [\n+ [413, \"module-uuid\"]\n ],\n \"The Python Profilers\": [\n [323, \"the-python-profilers\"]\n ],\n \"Introduction to the profilers\": [\n [323, \"introduction-to-the-profilers\"]\n ],\n@@ -66268,104 +66268,14 @@\n ],\n \"Calibration\": [\n [323, \"calibration\"]\n ],\n \"Using a custom timer\": [\n [323, \"using-a-custom-timer\"]\n ],\n- \"Security Considerations\": [\n- [342, \"security-considerations\"],\n- [364, \"security-considerations\"],\n- [259, \"security-considerations\"],\n- [156, \"security-considerations\"]\n- ],\n- \"pkgutil \\u2014 Package extension utility\": [\n- [317, \"module-pkgutil\"]\n- ],\n- \"signal \\u2014 Set handlers for asynchronous events\": [\n- [348, \"module-signal\"]\n- ],\n- \"General rules\": [\n- [348, \"general-rules\"]\n- ],\n- \"Execution of Python signal handlers\": [\n- [348, \"execution-of-python-signal-handlers\"]\n- ],\n- \"Signals and threads\": [\n- [348, \"signals-and-threads\"]\n- ],\n- \"Note on SIGPIPE\": [\n- [348, \"note-on-sigpipe\"]\n- ],\n- \"Note on Signal Handlers and Exceptions\": [\n- [348, \"note-on-signal-handlers-and-exceptions\"]\n- ],\n- \"xml.parsers.expat \\u2014 Fast XML parsing using Expat\": [\n- [329, \"module-xml.parsers.expat\"]\n- ],\n- \"ExpatError Exceptions\": [\n- [329, \"expaterror-exceptions\"]\n- ],\n- \"Content Model Descriptions\": [\n- [329, \"module-xml.parsers.expat.model\"]\n- ],\n- \"Expat error constants\": [\n- [329, \"module-xml.parsers.expat.errors\"]\n- ],\n- \"pyclbr \\u2014 Python module browser support\": [\n- [327, \"module-pyclbr\"]\n- ],\n- \"shelve \\u2014 Python object persistence\": [\n- [345, \"module-shelve\"]\n- ],\n- \"Restrictions\": [\n- [345, \"restrictions\"]\n- ],\n- \"site \\u2014 Site-specific configuration hook\": [\n- [349, \"module-site\"]\n- ],\n- \"sitecustomize\": [\n- [349, \"module-sitecustomize\"]\n- ],\n- \"usercustomize\": [\n- [349, \"module-usercustomize\"]\n- ],\n- \"Readline configuration\": [\n- [349, \"readline-configuration\"]\n- ],\n- \"Command Line Interface\": [\n- [349, \"command-line-interface\"],\n- [277, \"module-json.tool\"],\n- [248, \"command-line-interface\"],\n- [270, \"command-line-interface\"]\n- ],\n- \"quopri \\u2014 Encode and decode MIME quoted-printable data\": [\n- [332, \"module-quopri\"]\n- ],\n- \"secrets \\u2014 Generate secure random numbers for managing secrets\": [\n- [341, \"module-secrets\"]\n- ],\n- \"Random numbers\": [\n- [341, \"random-numbers\"],\n- [308, \"random-numbers\"]\n- ],\n- \"Generating tokens\": [\n- [341, \"generating-tokens\"]\n- ],\n- \"How many bytes should tokens use?\": [\n- [341, \"how-many-bytes-should-tokens-use\"]\n- ],\n- \"Other functions\": [\n- [341, \"other-functions\"],\n- [353, \"other-functions\"],\n- [370, \"other-functions\"]\n- ],\n- \"Recipes and best practices\": [\n- [341, \"recipes-and-best-practices\"]\n- ],\n \"shutil \\u2014 High-level file operations\": [\n [347, \"module-shutil\"]\n ],\n \"Directory and files operations\": [\n [347, \"directory-and-files-operations\"]\n ],\n \"Platform-dependent efficient copy operations\": [\n@@ -66385,95 +66295,37 @@\n ],\n \"Archiving example with base_dir\": [\n [347, \"archiving-example-with-base-dir\"]\n ],\n \"Querying the size of the output terminal\": [\n [347, \"querying-the-size-of-the-output-terminal\"]\n ],\n- \"pwd \\u2014 The password database\": [\n- [325, \"module-pwd\"]\n- ],\n- \"reprlib \\u2014 Alternate repr() implementation\": [\n- [336, \"module-reprlib\"]\n- ],\n- \"Repr Objects\": [\n- [336, \"repr-objects\"]\n- ],\n- \"Subclassing Repr Objects\": [\n- [336, \"subclassing-repr-objects\"]\n- ],\n- \"runpy \\u2014 Locating and executing Python modules\": [\n- [339, \"module-runpy\"]\n- ],\n- \"poplib \\u2014 POP3 protocol client\": [\n- [320, \"module-poplib\"]\n- ],\n- \"POP3 Objects\": [\n- [320, \"pop3-objects\"]\n- ],\n- \"POP3 Example\": [\n- [320, \"pop3-example\"]\n- ],\n- \"shlex \\u2014 Simple lexical analysis\": [\n- [346, \"module-shlex\"]\n- ],\n- \"shlex Objects\": [\n- [346, \"shlex-objects\"]\n- ],\n- \"Parsing Rules\": [\n- [346, \"parsing-rules\"]\n- ],\n- \"Improved Compatibility with Shells\": [\n- [346, \"improved-compatibility-with-shells\"]\n- ],\n- \"random \\u2014 Generate pseudo-random numbers\": [\n- [333, \"module-random\"]\n- ],\n- \"Bookkeeping functions\": [\n- [333, \"bookkeeping-functions\"]\n- ],\n- \"Functions for bytes\": [\n- [333, \"functions-for-bytes\"]\n- ],\n- \"Functions for integers\": [\n- [333, \"functions-for-integers\"]\n- ],\n- \"Functions for sequences\": [\n- [333, \"functions-for-sequences\"]\n- ],\n- \"Real-valued distributions\": [\n- [333, \"real-valued-distributions\"]\n- ],\n- \"Alternative Generator\": [\n- [333, \"alternative-generator\"]\n- ],\n- \"Notes on Reproducibility\": [\n- [333, \"notes-on-reproducibility\"]\n- ],\n- \"Recipes\": [\n- [333, \"recipes\"],\n- [199, \"recipes\"]\n+ \"secrets \\u2014 Generate secure random numbers for managing secrets\": [\n+ [341, \"module-secrets\"]\n ],\n- \"py_compile \\u2014 Compile Python source files\": [\n- [326, \"module-py_compile\"]\n+ \"Random numbers\": [\n+ [341, \"random-numbers\"],\n+ [308, \"random-numbers\"]\n ],\n- \"queue \\u2014 A synchronized queue class\": [\n- [331, \"module-queue\"]\n+ \"Generating tokens\": [\n+ [341, \"generating-tokens\"]\n ],\n- \"Queue Objects\": [\n- [331, \"queue-objects\"]\n+ \"How many bytes should tokens use?\": [\n+ [341, \"how-many-bytes-should-tokens-use\"]\n ],\n- \"SimpleQueue Objects\": [\n- [331, \"simplequeue-objects\"]\n+ \"Other functions\": [\n+ [341, \"other-functions\"],\n+ [353, \"other-functions\"],\n+ [370, \"other-functions\"]\n ],\n- \"sched \\u2014 Event scheduler\": [\n- [340, \"module-sched\"]\n+ \"Recipes and best practices\": [\n+ [341, \"recipes-and-best-practices\"]\n ],\n- \"Scheduler Objects\": [\n- [340, \"scheduler-objects\"]\n+ \"pwd \\u2014 The password database\": [\n+ [325, \"module-pwd\"]\n ],\n \"platform \\u2014 Access to underlying platform\\u2019s identifying data\": [\n [318, \"module-platform\"]\n ],\n \"Cross Platform\": [\n [318, \"cross-platform\"]\n ],\n@@ -66488,113 +66340,53 @@\n ],\n \"Unix Platforms\": [\n [318, \"unix-platforms\"]\n ],\n \"Linux Platforms\": [\n [318, \"linux-platforms\"]\n ],\n- \"plistlib \\u2014 Generate and parse Apple .plist files\": [\n- [319, \"module-plistlib\"]\n- ],\n- \"rlcompleter \\u2014 Completion function for GNU readline\": [\n- [338, \"module-rlcompleter\"]\n- ],\n \"pickletools \\u2014 Tools for pickle developers\": [\n [315, \"module-pickletools\"]\n ],\n \"Command line usage\": [\n [315, \"command-line-usage\"],\n [261, \"command-line-usage\"]\n ],\n \"Command line options\": [\n [315, \"command-line-options\"],\n [277, \"command-line-options\"],\n [248, \"command-line-options\"]\n ],\n- \"Python Runtime Services\": [\n- [330, \"python-runtime-services\"]\n- ],\n- \"resource \\u2014 Resource usage information\": [\n- [337, \"module-resource\"]\n- ],\n- \"Resource Limits\": [\n- [337, \"resource-limits\"]\n- ],\n- \"Resource Usage\": [\n- [337, \"resource-usage\"]\n- ],\n \"pydoc \\u2014 Documentation generator and online help system\": [\n [328, \"module-pydoc\"]\n ],\n \"pty \\u2014 Pseudo-terminal utilities\": [\n [324, \"module-pty\"]\n ],\n- \"selectors \\u2014 High-level I/O multiplexing\": [\n- [344, \"module-selectors\"]\n+ \"reprlib \\u2014 Alternate repr() implementation\": [\n+ [336, \"module-reprlib\"]\n ],\n- \"pipes \\u2014 Interface to shell pipelines\": [\n- [316, \"module-pipes\"]\n+ \"Repr Objects\": [\n+ [336, \"repr-objects\"]\n ],\n- \"Template Objects\": [\n- [316, \"template-objects\"]\n+ \"Subclassing Repr Objects\": [\n+ [336, \"subclassing-repr-objects\"]\n+ ],\n+ \"selectors \\u2014 High-level I/O multiplexing\": [\n+ [344, \"module-selectors\"]\n ],\n \"posix \\u2014 The most common POSIX system calls\": [\n [321, \"module-posix\"]\n ],\n \"Large File Support\": [\n [321, \"large-file-support\"]\n ],\n \"Notable Module Contents\": [\n [321, \"notable-module-contents\"]\n ],\n- \"select \\u2014 Waiting for I/O completion\": [\n- [343, \"module-select\"]\n- ],\n- \"/dev/poll Polling Objects\": [\n- [343, \"dev-poll-polling-objects\"]\n- ],\n- \"Edge and Level Trigger Polling (epoll) Objects\": [\n- [343, \"edge-and-level-trigger-polling-epoll-objects\"]\n- ],\n- \"Polling Objects\": [\n- [343, \"polling-objects\"]\n- ],\n- \"Kqueue Objects\": [\n- [343, \"kqueue-objects\"]\n- ],\n- \"Kevent Objects\": [\n- [343, \"kevent-objects\"]\n- ],\n- \"readline \\u2014 GNU readline interface\": [\n- [335, \"module-readline\"]\n- ],\n- \"Init file\": [\n- [335, \"init-file\"]\n- ],\n- \"Line buffer\": [\n- [335, \"line-buffer\"]\n- ],\n- \"History file\": [\n- [335, \"history-file\"]\n- ],\n- \"History list\": [\n- [335, \"history-list\"]\n- ],\n- \"Startup hooks\": [\n- [335, \"startup-hooks\"]\n- ],\n- \"Completion\": [\n- [335, \"completion\"]\n- ],\n- \"pprint \\u2014 Data pretty printer\": [\n- [322, \"module-pprint\"]\n- ],\n- \"PrettyPrinter Objects\": [\n- [322, \"prettyprinter-objects\"]\n- ],\n \"re \\u2014 Regular expression operations\": [\n [334, \"module-re\"]\n ],\n \"Regular Expression Syntax\": [\n [334, \"regular-expression-syntax\"]\n ],\n \"Flags\": [\n@@ -66632,405 +66424,330 @@\n ],\n \"Raw String Notation\": [\n [334, \"raw-string-notation\"]\n ],\n \"Writing a Tokenizer\": [\n [334, \"writing-a-tokenizer\"]\n ],\n- \"What\\u2019s New In Python 3.6\": [\n- [493, \"what-s-new-in-python-3-6\"]\n- ],\n- \"PEP 498: Formatted string literals\": [\n- [493, \"pep-498-formatted-string-literals\"]\n- ],\n- \"PEP 526: Syntax for variable annotations\": [\n- [493, \"pep-526-syntax-for-variable-annotations\"]\n- ],\n- \"PEP 515: Underscores in Numeric Literals\": [\n- [493, \"pep-515-underscores-in-numeric-literals\"]\n+ \"readline \\u2014 GNU readline interface\": [\n+ [335, \"module-readline\"]\n ],\n- \"PEP 525: Asynchronous Generators\": [\n- [493, \"pep-525-asynchronous-generators\"]\n+ \"Init file\": [\n+ [335, \"init-file\"]\n ],\n- \"PEP 530: Asynchronous Comprehensions\": [\n- [493, \"pep-530-asynchronous-comprehensions\"]\n+ \"Line buffer\": [\n+ [335, \"line-buffer\"]\n ],\n- \"PEP 487: Simpler customization of class creation\": [\n- [493, \"pep-487-simpler-customization-of-class-creation\"]\n+ \"History file\": [\n+ [335, \"history-file\"]\n ],\n- \"PEP 487: Descriptor Protocol Enhancements\": [\n- [493, \"pep-487-descriptor-protocol-enhancements\"]\n+ \"History list\": [\n+ [335, \"history-list\"]\n ],\n- \"PEP 519: Adding a file system path protocol\": [\n- [493, \"pep-519-adding-a-file-system-path-protocol\"]\n+ \"Startup hooks\": [\n+ [335, \"startup-hooks\"]\n ],\n- \"PEP 495: Local Time Disambiguation\": [\n- [493, \"pep-495-local-time-disambiguation\"]\n+ \"Completion\": [\n+ [335, \"completion\"]\n ],\n- \"PEP 529: Change Windows filesystem encoding to UTF-8\": [\n- [493, \"pep-529-change-windows-filesystem-encoding-to-utf-8\"]\n+ \"xml.parsers.expat \\u2014 Fast XML parsing using Expat\": [\n+ [329, \"module-xml.parsers.expat\"]\n ],\n- \"PEP 528: Change Windows console encoding to UTF-8\": [\n- [493, \"pep-528-change-windows-console-encoding-to-utf-8\"]\n+ \"ExpatError Exceptions\": [\n+ [329, \"expaterror-exceptions\"]\n ],\n- \"PEP 520: Preserving Class Attribute Definition Order\": [\n- [493, \"pep-520-preserving-class-attribute-definition-order\"]\n+ \"Content Model Descriptions\": [\n+ [329, \"module-xml.parsers.expat.model\"]\n ],\n- \"PEP 468: Preserving Keyword Argument Order\": [\n- [493, \"pep-468-preserving-keyword-argument-order\"]\n+ \"Expat error constants\": [\n+ [329, \"module-xml.parsers.expat.errors\"]\n ],\n- \"New dict implementation\": [\n- [493, \"new-dict-implementation\"]\n+ \"select \\u2014 Waiting for I/O completion\": [\n+ [343, \"module-select\"]\n ],\n- \"PEP 523: Adding a frame evaluation API to CPython\": [\n- [493, \"pep-523-adding-a-frame-evaluation-api-to-cpython\"]\n+ \"/dev/poll Polling Objects\": [\n+ [343, \"dev-poll-polling-objects\"]\n ],\n- \"PYTHONMALLOC environment variable\": [\n- [493, \"pythonmalloc-environment-variable\"]\n+ \"Edge and Level Trigger Polling (epoll) Objects\": [\n+ [343, \"edge-and-level-trigger-polling-epoll-objects\"]\n ],\n- \"DTrace and SystemTap probing support\": [\n- [493, \"dtrace-and-systemtap-probing-support\"]\n+ \"Polling Objects\": [\n+ [343, \"polling-objects\"]\n ],\n- \"secrets\": [\n- [493, \"secrets\"]\n+ \"Kqueue Objects\": [\n+ [343, \"kqueue-objects\"]\n ],\n- \"binascii\": [\n- [493, \"binascii\"],\n- [494, \"binascii\"],\n- [490, \"binascii\"]\n+ \"Kevent Objects\": [\n+ [343, \"kevent-objects\"]\n ],\n- \"cmath\": [\n- [493, \"cmath\"],\n- [492, \"cmath\"]\n+ \"pkgutil \\u2014 Package extension utility\": [\n+ [317, \"module-pkgutil\"]\n ],\n- \"concurrent.futures\": [\n- [493, \"concurrent-futures\"],\n- [492, \"concurrent-futures\"],\n- [494, \"concurrent-futures\"],\n- [496, \"concurrent-futures\"]\n+ \"quopri \\u2014 Encode and decode MIME quoted-printable data\": [\n+ [332, \"module-quopri\"]\n ],\n- \"decimal\": [\n- [493, \"decimal\"],\n- [494, \"decimal\"],\n- [490, \"decimal\"]\n+ \"runpy \\u2014 Locating and executing Python modules\": [\n+ [339, \"module-runpy\"]\n ],\n- \"idlelib and IDLE\": [\n- [493, \"idlelib-and-idle\"],\n- [492, \"idlelib-and-idle\"],\n- [494, \"idlelib-and-idle\"],\n- [491, \"idlelib-and-idle\"]\n+ \"signal \\u2014 Set handlers for asynchronous events\": [\n+ [348, \"module-signal\"]\n ],\n- \"json\": [\n- [493, \"json\"],\n- [492, \"json\"]\n+ \"General rules\": [\n+ [348, \"general-rules\"]\n ],\n- \"multiprocessing\": [\n- [493, \"multiprocessing\"],\n- [492, \"multiprocessing\"],\n- [494, \"multiprocessing\"],\n- [491, \"multiprocessing\"],\n- [495, \"multiprocessing\"],\n- [490, \"multiprocessing\"],\n- [496, \"multiprocessing\"]\n+ \"Execution of Python signal handlers\": [\n+ [348, \"execution-of-python-signal-handlers\"]\n ],\n- \"pickle\": [\n- [493, \"pickle\"],\n- [492, \"pickle\"],\n- [491, \"pickle\"],\n- [495, \"pickle\"],\n- [490, \"pickle\"]\n+ \"Signals and threads\": [\n+ [348, \"signals-and-threads\"]\n ],\n- \"pickletools\": [\n- [493, \"pickletools\"]\n+ \"Note on SIGPIPE\": [\n+ [348, \"note-on-sigpipe\"]\n ],\n- \"readline\": [\n- [493, \"readline\"],\n- [492, \"readline\"]\n+ \"Note on Signal Handlers and Exceptions\": [\n+ [348, \"note-on-signal-handlers-and-exceptions\"]\n ],\n- \"rlcompleter\": [\n- [493, \"rlcompleter\"]\n+ \"rlcompleter \\u2014 Completion function for GNU readline\": [\n+ [338, \"module-rlcompleter\"]\n ],\n- \"shlex\": [\n- [493, \"shlex\"],\n- [495, \"shlex\"],\n- [490, \"shlex\"]\n+ \"plistlib \\u2014 Generate and parse Apple .plist files\": [\n+ [319, \"module-plistlib\"]\n ],\n- \"socketserver\": [\n- [493, \"socketserver\"],\n- [494, \"socketserver\"],\n- [490, \"socketserver\"]\n+ \"resource \\u2014 Resource usage information\": [\n+ [337, \"module-resource\"]\n ],\n- \"struct\": [\n- [493, \"struct\"],\n- [491, \"struct\"],\n- [490, \"struct\"]\n+ \"Resource Limits\": [\n+ [337, \"resource-limits\"]\n ],\n- \"subprocess\": [\n- [493, \"subprocess\"],\n- [492, \"subprocess\"],\n- [494, \"subprocess\"],\n- [491, \"subprocess\"],\n- [490, \"subprocess\"]\n+ \"Resource Usage\": [\n+ [337, \"resource-usage\"]\n ],\n- \"telnetlib\": [\n- [493, \"telnetlib\"]\n+ \"pyclbr \\u2014 Python module browser support\": [\n+ [327, \"module-pyclbr\"]\n ],\n- \"timeit\": [\n- [493, \"timeit\"],\n- [492, \"timeit\"]\n+ \"pipes \\u2014 Interface to shell pipelines\": [\n+ [316, \"module-pipes\"]\n ],\n- \"tracemalloc\": [\n- [493, \"tracemalloc\"],\n- [494, \"tracemalloc\"],\n- [491, \"tracemalloc\"],\n- [496, \"tracemalloc\"]\n+ \"Template Objects\": [\n+ [316, \"template-objects\"]\n ],\n- \"unittest.mock\": [\n- [493, \"unittest-mock\"],\n- [492, \"unittest-mock\"],\n- [494, \"unittest-mock\"]\n+ \"poplib \\u2014 POP3 protocol client\": [\n+ [320, \"module-poplib\"]\n ],\n- \"urllib.request\": [\n- [493, \"urllib-request\"]\n+ \"POP3 Objects\": [\n+ [320, \"pop3-objects\"]\n ],\n- \"urllib.robotparser\": [\n- [493, \"urllib-robotparser\"]\n+ \"POP3 Example\": [\n+ [320, \"pop3-example\"]\n ],\n- \"winreg\": [\n- [493, \"winreg\"]\n+ \"queue \\u2014 A synchronized queue class\": [\n+ [331, \"module-queue\"]\n ],\n- \"winsound\": [\n- [493, \"winsound\"]\n+ \"Queue Objects\": [\n+ [331, \"queue-objects\"]\n ],\n- \"xmlrpc.client\": [\n- [493, \"xmlrpc-client\"]\n+ \"SimpleQueue Objects\": [\n+ [331, \"simplequeue-objects\"]\n ],\n- \"Other Improvements\": [\n- [493, \"other-improvements\"],\n- [491, \"other-improvements\"]\n+ \"site \\u2014 Site-specific configuration hook\": [\n+ [349, \"module-site\"]\n ],\n- \"New Keywords\": [\n- [493, \"new-keywords\"],\n- [492, \"new-keywords\"]\n+ \"sitecustomize\": [\n+ [349, \"module-sitecustomize\"]\n ],\n- \"Deprecated Python behavior\": [\n- [493, \"deprecated-python-behavior\"]\n+ \"usercustomize\": [\n+ [349, \"module-usercustomize\"]\n ],\n- \"Deprecated Python modules, functions and methods\": [\n- [493, \"deprecated-python-modules-functions-and-methods\"],\n- [492, \"deprecated-python-modules-functions-and-methods\"],\n- [494, \"deprecated-python-modules-functions-and-methods\"],\n- [490, \"deprecated-python-modules-functions-and-methods\"]\n+ \"Readline configuration\": [\n+ [349, \"readline-configuration\"]\n ],\n- \"asynchat\": [\n- [493, \"asynchat\"]\n+ \"Command Line Interface\": [\n+ [349, \"command-line-interface\"],\n+ [277, \"module-json.tool\"],\n+ [270, \"command-line-interface\"],\n+ [248, \"command-line-interface\"]\n ],\n- \"grp\": [\n- [493, \"grp\"]\n+ \"sched \\u2014 Event scheduler\": [\n+ [340, \"module-sched\"]\n ],\n- \"Deprecated functions and types of the C API\": [\n- [493, \"deprecated-functions-and-types-of-the-c-api\"],\n- [494, \"deprecated-functions-and-types-of-the-c-api\"],\n- [490, \"deprecated-functions-and-types-of-the-c-api\"]\n+ \"Scheduler Objects\": [\n+ [340, \"scheduler-objects\"]\n ],\n- \"Deprecated Build Options\": [\n- [493, \"deprecated-build-options\"]\n+ \"shlex \\u2014 Simple lexical analysis\": [\n+ [346, \"module-shlex\"]\n ],\n- \"API and Feature Removals\": [\n- [493, \"api-and-feature-removals\"],\n- [492, \"api-and-feature-removals\"],\n- [494, \"api-and-feature-removals\"],\n- [491, \"api-and-feature-removals\"],\n- [495, \"api-and-feature-removals\"]\n+ \"shlex Objects\": [\n+ [346, \"shlex-objects\"]\n ],\n- \"Porting to Python 3.6\": [\n- [493, \"porting-to-python-3-6\"]\n+ \"Parsing Rules\": [\n+ [346, \"parsing-rules\"]\n ],\n- \"Changes in \\u2018python\\u2019 Command Behavior\": [\n- [493, \"changes-in-python-command-behavior\"],\n- [491, \"changes-in-python-command-behavior\"]\n+ \"Improved Compatibility with Shells\": [\n+ [346, \"improved-compatibility-with-shells\"]\n ],\n- \"Notable changes in Python 3.6.2\": [\n- [493, \"notable-changes-in-python-3-6-2\"]\n+ \"py_compile \\u2014 Compile Python source files\": [\n+ [326, \"module-py_compile\"]\n ],\n- \"Notable changes in Python 3.6.4\": [\n- [493, \"notable-changes-in-python-3-6-4\"]\n+ \"Python Runtime Services\": [\n+ [330, \"python-runtime-services\"]\n ],\n- \"Notable changes in Python 3.6.5\": [\n- [493, \"notable-changes-in-python-3-6-5\"]\n+ \"random \\u2014 Generate pseudo-random numbers\": [\n+ [333, \"module-random\"]\n ],\n- \"Notable changes in Python 3.6.7\": [\n- [493, \"notable-changes-in-python-3-6-7\"]\n+ \"Bookkeeping functions\": [\n+ [333, \"bookkeeping-functions\"]\n ],\n- \"Notable changes in Python 3.6.10\": [\n- [493, \"notable-changes-in-python-3-6-10\"]\n+ \"Functions for bytes\": [\n+ [333, \"functions-for-bytes\"]\n ],\n- \"Notable changes in Python 3.6.13\": [\n- [493, \"notable-changes-in-python-3-6-13\"]\n+ \"Functions for integers\": [\n+ [333, \"functions-for-integers\"]\n ],\n- \"Notable changes in Python 3.6.14\": [\n- [493, \"notable-changes-in-python-3-6-14\"]\n+ \"Functions for sequences\": [\n+ [333, \"functions-for-sequences\"]\n ],\n- \"What\\u2019s New In Python 3.5\": [\n- [492, \"what-s-new-in-python-3-5\"]\n+ \"Real-valued distributions\": [\n+ [333, \"real-valued-distributions\"]\n ],\n- \"PEP 492 - Coroutines with async and await syntax\": [\n- [492, \"pep-492-coroutines-with-async-and-await-syntax\"]\n+ \"Alternative Generator\": [\n+ [333, \"alternative-generator\"]\n ],\n- \"PEP 465 - A dedicated infix operator for matrix multiplication\": [\n- [492, \"pep-465-a-dedicated-infix-operator-for-matrix-multiplication\"]\n+ \"Notes on Reproducibility\": [\n+ [333, \"notes-on-reproducibility\"]\n ],\n- \"PEP 448 - Additional Unpacking Generalizations\": [\n- [492, \"pep-448-additional-unpacking-generalizations\"]\n+ \"Recipes\": [\n+ [333, \"recipes\"],\n+ [199, \"recipes\"]\n ],\n- \"PEP 461 - percent formatting support for bytes and bytearray\": [\n- [492, \"pep-461-percent-formatting-support-for-bytes-and-bytearray\"]\n+ \"Security Considerations\": [\n+ [342, \"security-considerations\"],\n+ [364, \"security-considerations\"],\n+ [259, \"security-considerations\"],\n+ [156, \"security-considerations\"]\n ],\n- \"PEP 484 - Type Hints\": [\n- [492, \"pep-484-type-hints\"]\n+ \"pprint \\u2014 Data pretty printer\": [\n+ [322, \"module-pprint\"]\n ],\n- \"PEP 471 - os.scandir() function \\u2013 a better and faster directory iterator\": [\n- [492, \"pep-471-os-scandir-function-a-better-and-faster-directory-iterator\"]\n+ \"PrettyPrinter Objects\": [\n+ [322, \"prettyprinter-objects\"]\n ],\n- \"PEP 475: Retry system calls failing with EINTR\": [\n- [492, \"pep-475-retry-system-calls-failing-with-eintr\"]\n+ \"shelve \\u2014 Python object persistence\": [\n+ [345, \"module-shelve\"]\n ],\n- \"PEP 479: Change StopIteration handling inside generators\": [\n- [492, \"pep-479-change-stopiteration-handling-inside-generators\"]\n+ \"Restrictions\": [\n+ [345, \"restrictions\"]\n ],\n- \"PEP 485: A function for testing approximate equality\": [\n- [492, \"pep-485-a-function-for-testing-approximate-equality\"]\n+ \"What\\u2019s New In Python 3.9\": [\n+ [496, \"what-s-new-in-python-3-9\"]\n ],\n- \"PEP 486: Make the Python Launcher aware of virtual environments\": [\n- [492, \"pep-486-make-the-python-launcher-aware-of-virtual-environments\"]\n+ \"You should check for DeprecationWarning in your code\": [\n+ [496, \"you-should-check-for-deprecationwarning-in-your-code\"]\n ],\n- \"PEP 488: Elimination of PYO files\": [\n- [492, \"pep-488-elimination-of-pyo-files\"]\n+ \"Dictionary Merge & Update Operators\": [\n+ [496, \"dictionary-merge-update-operators\"]\n ],\n- \"PEP 489: Multi-phase extension module initialization\": [\n- [492, \"pep-489-multi-phase-extension-module-initialization\"]\n+ \"New String Methods to Remove Prefixes and Suffixes\": [\n+ [496, \"new-string-methods-to-remove-prefixes-and-suffixes\"]\n ],\n- \"zipapp\": [\n- [492, \"zipapp\"],\n- [494, \"zipapp\"]\n+ \"Type Hinting Generics in Standard Collections\": [\n+ [496, \"type-hinting-generics-in-standard-collections\"]\n ],\n- \"bz2\": [\n- [492, \"bz2\"],\n- [490, \"bz2\"]\n+ \"New Parser\": [\n+ [496, \"new-parser\"]\n ],\n- \"cgi\": [\n- [492, \"cgi\"]\n+ \"zoneinfo\": [\n+ [496, \"zoneinfo\"]\n ],\n- \"code\": [\n- [492, \"code\"]\n+ \"graphlib\": [\n+ [496, \"graphlib\"]\n ],\n \"compileall\": [\n- [492, \"compileall\"],\n+ [496, \"compileall\"],\n [494, \"compileall\"],\n- [496, \"compileall\"]\n- ],\n- \"difflib\": [\n- [492, \"difflib\"]\n+ [492, \"compileall\"]\n ],\n- \"gzip\": [\n- [492, \"gzip\"],\n- [495, \"gzip\"]\n+ \"concurrent.futures\": [\n+ [496, \"concurrent-futures\"],\n+ [494, \"concurrent-futures\"],\n+ [492, \"concurrent-futures\"],\n+ [493, \"concurrent-futures\"]\n ],\n- \"heapq\": [\n- [492, \"heapq\"]\n+ \"ftplib\": [\n+ [496, \"ftplib\"],\n+ [490, \"ftplib\"]\n ],\n \"http\": [\n- [492, \"http\"],\n- [491, \"http\"],\n+ [496, \"http\"],\n [490, \"http\"],\n- [496, \"http\"]\n- ],\n- \"imghdr\": [\n- [492, \"imghdr\"]\n+ [492, \"http\"],\n+ [491, \"http\"]\n ],\n \"ipaddress\": [\n- [492, \"ipaddress\"],\n+ [496, \"ipaddress\"],\n [494, \"ipaddress\"],\n- [491, \"ipaddress\"],\n [490, \"ipaddress\"],\n- [496, \"ipaddress\"]\n+ [492, \"ipaddress\"],\n+ [491, \"ipaddress\"]\n ],\n- \"lzma\": [\n- [492, \"lzma\"],\n- [490, \"lzma\"]\n+ \"multiprocessing\": [\n+ [496, \"multiprocessing\"],\n+ [494, \"multiprocessing\"],\n+ [490, \"multiprocessing\"],\n+ [495, \"multiprocessing\"],\n+ [492, \"multiprocessing\"],\n+ [491, \"multiprocessing\"],\n+ [493, \"multiprocessing\"]\n ],\n- \"selectors\": [\n- [492, \"selectors\"],\n- [491, \"selectors\"]\n+ \"nntplib\": [\n+ [496, \"nntplib\"],\n+ [490, \"nntplib\"]\n ],\n \"signal\": [\n- [492, \"signal\"],\n+ [496, \"signal\"],\n [494, \"signal\"],\n [490, \"signal\"],\n- [496, \"signal\"]\n- ],\n- \"smtpd\": [\n- [492, \"smtpd\"],\n- [491, \"smtpd\"],\n- [490, \"smtpd\"]\n+ [492, \"signal\"]\n ],\n \"smtplib\": [\n- [492, \"smtplib\"],\n- [491, \"smtplib\"],\n+ [496, \"smtplib\"],\n [490, \"smtplib\"],\n- [496, \"smtplib\"]\n- ],\n- \"sndhdr\": [\n- [492, \"sndhdr\"]\n- ],\n- \"Memory BIO Support\": [\n- [492, \"memory-bio-support\"],\n- [357, \"memory-bio-support\"]\n- ],\n- \"Application-Layer Protocol Negotiation Support\": [\n- [492, \"application-layer-protocol-negotiation-support\"]\n- ],\n- \"Other Changes\": [\n- [492, \"other-changes\"]\n- ],\n- \"urllib\": [\n- [492, \"urllib\"],\n- [491, \"urllib\"],\n- [490, \"urllib\"]\n+ [492, \"smtplib\"],\n+ [491, \"smtplib\"]\n ],\n- \"wsgiref\": [\n- [492, \"wsgiref\"]\n+ \"tracemalloc\": [\n+ [496, \"tracemalloc\"],\n+ [494, \"tracemalloc\"],\n+ [491, \"tracemalloc\"],\n+ [493, \"tracemalloc\"]\n ],\n- \"xmlrpc\": [\n- [492, \"xmlrpc\"],\n- [495, \"xmlrpc\"]\n+ \"Porting to Python 3.9\": [\n+ [496, \"porting-to-python-3-9\"],\n+ [496, \"id2\"]\n ],\n- \"xml.sax\": [\n- [492, \"xml-sax\"]\n+ \"Notable changes in Python 3.9.1\": [\n+ [496, \"notable-changes-in-python-3-9-1\"]\n ],\n- \"Other module-level changes\": [\n- [492, \"other-module-level-changes\"]\n+ \"macOS 11.0 (Big Sur) and Apple Silicon Mac support\": [\n+ [496, \"macos-11-0-big-sur-and-apple-silicon-mac-support\"],\n+ [495, \"macos-11-0-big-sur-and-apple-silicon-mac-support\"]\n ],\n- \"Deprecated Python Behavior\": [\n- [492, \"deprecated-python-behavior\"],\n- [494, \"deprecated-python-behavior\"]\n+ \"Notable changes in Python 3.9.2\": [\n+ [496, \"notable-changes-in-python-3-9-2\"]\n ],\n- \"Unsupported Operating Systems\": [\n- [492, \"unsupported-operating-systems\"],\n- [490, \"unsupported-operating-systems\"]\n+ \"Notable changes in Python 3.9.3\": [\n+ [496, \"notable-changes-in-python-3-9-3\"]\n ],\n- \"Porting to Python 3.5\": [\n- [492, \"porting-to-python-3-5\"]\n+ \"Notable changes in Python 3.9.5\": [\n+ [496, \"notable-changes-in-python-3-9-5\"]\n ],\n- \"Changes in Python behavior\": [\n- [492, \"changes-in-python-behavior\"],\n- [495, \"changes-in-python-behavior\"]\n+ \"Notable security feature in 3.9.14\": [\n+ [496, \"notable-security-feature-in-3-9-14\"]\n ],\n- \"Notable changes in Python 3.5.4\": [\n- [492, \"notable-changes-in-python-3-5-4\"]\n+ \"Notable changes in 3.9.17\": [\n+ [496, \"notable-changes-in-3-9-17\"]\n ],\n \"What\\u2019s New In Python 3.7\": [\n [494, \"what-s-new-in-python-3-7\"]\n ],\n \"Summary \\u2013 Release Highlights\": [\n [494, \"summary-release-highlights\"],\n [491, \"summary-release-highlights\"]\n@@ -67073,50 +66790,97 @@\n ],\n \"contextvars\": [\n [494, \"contextvars\"]\n ],\n \"importlib.resources\": [\n [494, \"importlib-resources\"]\n ],\n+ \"binascii\": [\n+ [494, \"binascii\"],\n+ [490, \"binascii\"],\n+ [493, \"binascii\"]\n+ ],\n \"calendar\": [\n [494, \"calendar\"]\n ],\n \"cProfile\": [\n [494, \"cprofile\"],\n [495, \"cprofile\"]\n ],\n \"crypt\": [\n [494, \"crypt\"],\n [490, \"crypt\"]\n ],\n+ \"decimal\": [\n+ [494, \"decimal\"],\n+ [490, \"decimal\"],\n+ [493, \"decimal\"]\n+ ],\n \"http.server\": [\n [494, \"http-server\"]\n ],\n+ \"idlelib and IDLE\": [\n+ [494, \"idlelib-and-idle\"],\n+ [492, \"idlelib-and-idle\"],\n+ [491, \"idlelib-and-idle\"],\n+ [493, \"idlelib-and-idle\"]\n+ ],\n \"mimetypes\": [\n [494, \"mimetypes\"]\n ],\n \"msilib\": [\n [494, \"msilib\"]\n ],\n \"queue\": [\n [494, \"queue\"]\n ],\n+ \"socketserver\": [\n+ [494, \"socketserver\"],\n+ [490, \"socketserver\"],\n+ [493, \"socketserver\"]\n+ ],\n+ \"subprocess\": [\n+ [494, \"subprocess\"],\n+ [490, \"subprocess\"],\n+ [492, \"subprocess\"],\n+ [491, \"subprocess\"],\n+ [493, \"subprocess\"]\n+ ],\n+ \"unittest.mock\": [\n+ [494, \"unittest-mock\"],\n+ [492, \"unittest-mock\"],\n+ [493, \"unittest-mock\"]\n+ ],\n \"uu\": [\n [494, \"uu\"]\n ],\n \"uuid\": [\n [494, \"uuid\"]\n ],\n \"xml.etree\": [\n [494, \"xml-etree\"],\n [491, \"xml-etree\"]\n ],\n \"xmlrpc.server\": [\n [494, \"xmlrpc-server\"]\n ],\n+ \"zipapp\": [\n+ [494, \"zipapp\"],\n+ [492, \"zipapp\"]\n+ ],\n+ \"Deprecated Python Behavior\": [\n+ [494, \"deprecated-python-behavior\"],\n+ [492, \"deprecated-python-behavior\"]\n+ ],\n+ \"Deprecated Python modules, functions and methods\": [\n+ [494, \"deprecated-python-modules-functions-and-methods\"],\n+ [490, \"deprecated-python-modules-functions-and-methods\"],\n+ [492, \"deprecated-python-modules-functions-and-methods\"],\n+ [493, \"deprecated-python-modules-functions-and-methods\"]\n+ ],\n \"aifc\": [\n [494, \"aifc\"],\n [491, \"aifc\"]\n ],\n \"gettext\": [\n [494, \"gettext\"],\n [495, \"gettext\"]\n@@ -67128,17 +66892,29 @@\n [494, \"sunau\"],\n [491, \"sunau\"]\n ],\n \"wave\": [\n [494, \"wave\"],\n [491, \"wave\"]\n ],\n+ \"Deprecated functions and types of the C API\": [\n+ [494, \"deprecated-functions-and-types-of-the-c-api\"],\n+ [490, \"deprecated-functions-and-types-of-the-c-api\"],\n+ [493, \"deprecated-functions-and-types-of-the-c-api\"]\n+ ],\n \"Platform Support Removals\": [\n [494, \"platform-support-removals\"]\n ],\n+ \"API and Feature Removals\": [\n+ [494, \"api-and-feature-removals\"],\n+ [495, \"api-and-feature-removals\"],\n+ [492, \"api-and-feature-removals\"],\n+ [491, \"api-and-feature-removals\"],\n+ [493, \"api-and-feature-removals\"]\n+ ],\n \"Module Removals\": [\n [494, \"module-removals\"]\n ],\n \"Windows-only Changes\": [\n [494, \"windows-only-changes\"],\n [494, \"id12\"]\n ],\n@@ -67165,109 +66941,176 @@\n ],\n \"Notable changes in Python 3.7.11\": [\n [494, \"notable-changes-in-python-3-7-11\"]\n ],\n \"Notable security feature in 3.7.14\": [\n [494, \"notable-security-feature-in-3-7-14\"]\n ],\n- \"What\\u2019s New In Python 3.4\": [\n- [491, \"what-s-new-in-python-3-4\"]\n+ \"What\\u2019s New In Python 3.3\": [\n+ [490, \"what-s-new-in-python-3-3\"]\n ],\n- \"PEP 453: Explicit Bootstrapping of PIP in Python Installations\": [\n- [491, \"pep-453-explicit-bootstrapping-of-pip-in-python-installations\"]\n+ \"PEP 405: Virtual Environments\": [\n+ [490, \"pep-405-virtual-environments\"]\n ],\n- \"PEP 446: Newly Created File Descriptors Are Non-Inheritable\": [\n- [491, \"pep-446-newly-created-file-descriptors-are-non-inheritable\"]\n+ \"PEP 420: Implicit Namespace Packages\": [\n+ [490, \"pep-420-implicit-namespace-packages\"]\n ],\n- \"Improvements to Codec Handling\": [\n- [491, \"improvements-to-codec-handling\"]\n+ \"PEP 3118: New memoryview implementation and buffer protocol documentation\": [\n+ [490, \"pep-3118-new-memoryview-implementation-and-buffer-protocol-documentation\"]\n ],\n- \"PEP 451: A ModuleSpec Type for the Import System\": [\n- [491, \"pep-451-a-modulespec-type-for-the-import-system\"]\n+ \"Features\": [\n+ [490, \"features\"],\n+ [490, \"id1\"],\n+ [296, \"features\"]\n ],\n- \"ensurepip\": [\n- [491, \"ensurepip\"]\n+ \"API changes\": [\n+ [490, \"api-changes\"],\n+ [490, \"id2\"]\n ],\n- \"audioop\": [\n- [491, \"audioop\"]\n+ \"PEP 393: Flexible String Representation\": [\n+ [490, \"pep-393-flexible-string-representation\"]\n ],\n- \"colorsys\": [\n- [491, \"colorsys\"]\n+ \"Functionality\": [\n+ [490, \"functionality\"]\n ],\n- \"filecmp\": [\n- [491, \"filecmp\"]\n+ \"Performance and resource usage\": [\n+ [490, \"performance-and-resource-usage\"]\n ],\n- \"marshal\": [\n- [491, \"marshal\"]\n+ \"PEP 397: Python Launcher for Windows\": [\n+ [490, \"pep-397-python-launcher-for-windows\"]\n ],\n- \"mmap\": [\n- [491, \"mmap\"],\n- [495, \"mmap\"],\n- [490, \"mmap\"]\n+ \"PEP 3151: Reworking the OS and IO exception hierarchy\": [\n+ [490, \"pep-3151-reworking-the-os-and-io-exception-hierarchy\"]\n ],\n- \"plistlib\": [\n- [491, \"plistlib\"],\n- [495, \"plistlib\"]\n+ \"PEP 380: Syntax for Delegating to a Subgenerator\": [\n+ [490, \"pep-380-syntax-for-delegating-to-a-subgenerator\"]\n ],\n- \"pty\": [\n- [491, \"pty\"]\n+ \"PEP 409: Suppressing exception context\": [\n+ [490, \"pep-409-suppressing-exception-context\"]\n ],\n- \"resource\": [\n- [491, \"resource\"]\n+ \"PEP 414: Explicit Unicode literals\": [\n+ [490, \"pep-414-explicit-unicode-literals\"]\n ],\n- \"stat\": [\n- [491, \"stat\"],\n- [490, \"stat\"]\n+ \"PEP 3155: Qualified name for classes and functions\": [\n+ [490, \"pep-3155-qualified-name-for-classes-and-functions\"]\n ],\n- \"textwrap\": [\n- [491, \"textwrap\"],\n- [490, \"textwrap\"]\n+ \"PEP 412: Key-Sharing Dictionary\": [\n+ [490, \"pep-412-key-sharing-dictionary\"]\n ],\n- \"weakref\": [\n- [491, \"weakref\"],\n- [495, \"weakref\"]\n+ \"PEP 362: Function Signature Object\": [\n+ [490, \"pep-362-function-signature-object\"]\n ],\n- \"CPython Implementation Changes\": [\n- [491, \"cpython-implementation-changes\"]\n+ \"PEP 421: Adding sys.implementation\": [\n+ [490, \"pep-421-adding-sys-implementation\"]\n ],\n- \"PEP 445: Customization of CPython Memory Allocators\": [\n- [491, \"pep-445-customization-of-cpython-memory-allocators\"]\n+ \"SimpleNamespace\": [\n+ [490, \"simplenamespace\"]\n ],\n- \"PEP 442: Safe Object Finalization\": [\n- [491, \"pep-442-safe-object-finalization\"]\n+ \"Using importlib as the Implementation of Import\": [\n+ [490, \"using-importlib-as-the-implementation-of-import\"]\n ],\n- \"PEP 456: Secure and Interchangeable Hash Algorithm\": [\n- [491, \"pep-456-secure-and-interchangeable-hash-algorithm\"]\n+ \"New APIs\": [\n+ [490, \"new-apis\"]\n ],\n- \"PEP 436: Argument Clinic\": [\n- [491, \"pep-436-argument-clinic\"]\n+ \"Visible Changes\": [\n+ [490, \"visible-changes\"]\n ],\n- \"Other Build and C API Changes\": [\n- [491, \"other-build-and-c-api-changes\"]\n+ \"A Finer-Grained Import Lock\": [\n+ [490, \"a-finer-grained-import-lock\"]\n ],\n- \"Significant Optimizations\": [\n- [491, \"significant-optimizations\"]\n+ \"Builtin functions and types\": [\n+ [490, \"builtin-functions-and-types\"]\n ],\n- \"Deprecations in the Python API\": [\n- [491, \"deprecations-in-the-python-api\"]\n+ \"lzma\": [\n+ [490, \"lzma\"],\n+ [492, \"lzma\"]\n+ ],\n+ \"bz2\": [\n+ [490, \"bz2\"],\n+ [492, \"bz2\"]\n+ ],\n+ \"Policy Framework\": [\n+ [490, \"policy-framework\"]\n+ ],\n+ \"Provisional Policy with New Header API\": [\n+ [490, \"provisional-policy-with-new-header-api\"]\n+ ],\n+ \"Other API Changes\": [\n+ [490, \"other-api-changes\"]\n+ ],\n+ \"mmap\": [\n+ [490, \"mmap\"],\n+ [495, \"mmap\"],\n+ [491, \"mmap\"]\n+ ],\n+ \"pickle\": [\n+ [490, \"pickle\"],\n+ [495, \"pickle\"],\n+ [492, \"pickle\"],\n+ [491, \"pickle\"],\n+ [493, \"pickle\"]\n+ ],\n+ \"sched\": [\n+ [490, \"sched\"]\n+ ],\n+ \"shlex\": [\n+ [490, \"shlex\"],\n+ [495, \"shlex\"],\n+ [493, \"shlex\"]\n+ ],\n+ \"smtpd\": [\n+ [490, \"smtpd\"],\n+ [492, \"smtpd\"],\n+ [491, \"smtpd\"]\n+ ],\n+ \"stat\": [\n+ [490, \"stat\"],\n+ [491, \"stat\"]\n+ ],\n+ \"struct\": [\n+ [490, \"struct\"],\n+ [491, \"struct\"],\n+ [493, \"struct\"]\n+ ],\n+ \"textwrap\": [\n+ [490, \"textwrap\"],\n+ [491, \"textwrap\"]\n+ ],\n+ \"urllib\": [\n+ [490, \"urllib\"],\n+ [492, \"urllib\"],\n+ [491, \"urllib\"]\n+ ],\n+ \"webbrowser\": [\n+ [490, \"webbrowser\"]\n+ ],\n+ \"xml.etree.ElementTree\": [\n+ [490, \"xml-etree-elementtree\"]\n+ ],\n+ \"Unsupported Operating Systems\": [\n+ [490, \"unsupported-operating-systems\"],\n+ [492, \"unsupported-operating-systems\"]\n+ ],\n+ \"Deprecated features\": [\n+ [490, \"deprecated-features\"]\n ],\n- \"Deprecated Features\": [\n- [491, \"deprecated-features\"]\n+ \"Porting to Python 3.3\": [\n+ [490, \"porting-to-python-3-3\"]\n ],\n- \"Operating Systems No Longer Supported\": [\n- [491, \"operating-systems-no-longer-supported\"]\n+ \"Porting Python code\": [\n+ [490, \"porting-python-code\"]\n ],\n- \"Code Cleanups\": [\n- [491, \"code-cleanups\"]\n+ \"Porting C code\": [\n+ [490, \"porting-c-code\"]\n ],\n- \"Porting to Python 3.4\": [\n- [491, \"porting-to-python-3-4\"]\n+ \"Building C extensions\": [\n+ [490, \"building-c-extensions\"]\n ],\n- \"Changed in 3.4.3\": [\n- [491, \"changed-in-3-4-3\"]\n+ \"Command Line Switch Changes\": [\n+ [490, \"command-line-switch-changes\"]\n ],\n \"What\\u2019s New In Python 3.8\": [\n [495, \"what-s-new-in-python-3-8\"]\n ],\n \"Positional-only parameters\": [\n [495, \"positional-only-parameters\"]\n ],\n@@ -67291,23 +67134,43 @@\n ],\n \"Pickle protocol 5 with out-of-band data buffers\": [\n [495, \"pickle-protocol-5-with-out-of-band-data-buffers\"]\n ],\n \"builtins\": [\n [495, \"builtins\"]\n ],\n+ \"gzip\": [\n+ [495, \"gzip\"],\n+ [492, \"gzip\"]\n+ ],\n \"json.tool\": [\n [495, \"json-tool\"]\n ],\n+ \"plistlib\": [\n+ [495, \"plistlib\"],\n+ [491, \"plistlib\"]\n+ ],\n \"tokenize\": [\n [495, \"tokenize\"]\n ],\n+ \"weakref\": [\n+ [495, \"weakref\"],\n+ [491, \"weakref\"]\n+ ],\n+ \"xmlrpc\": [\n+ [495, \"xmlrpc\"],\n+ [492, \"xmlrpc\"]\n+ ],\n \"Porting to Python 3.8\": [\n [495, \"porting-to-python-3-8\"]\n ],\n+ \"Changes in Python behavior\": [\n+ [495, \"changes-in-python-behavior\"],\n+ [492, \"changes-in-python-behavior\"]\n+ ],\n \"Demos and Tools\": [\n [495, \"demos-and-tools\"]\n ],\n \"Notable changes in Python 3.8.1\": [\n [495, \"notable-changes-in-python-3-8-1\"]\n ],\n \"Notable changes in Python 3.8.2\": [\n@@ -67322,18 +67185,14 @@\n \"Notable changes in Python 3.8.9\": [\n [495, \"notable-changes-in-python-3-8-9\"]\n ],\n \"Notable changes in Python 3.8.10\": [\n [495, \"notable-changes-in-python-3-8-10\"],\n [495, \"id1\"]\n ],\n- \"macOS 11.0 (Big Sur) and Apple Silicon Mac support\": [\n- [495, \"macos-11-0-big-sur-and-apple-silicon-mac-support\"],\n- [496, \"macos-11-0-big-sur-and-apple-silicon-mac-support\"]\n- ],\n \"Notable changes in Python 3.8.12\": [\n [495, \"notable-changes-in-python-3-8-12\"]\n ],\n \"Notable security feature in 3.8.14\": [\n [495, \"notable-security-feature-in-3-8-14\"]\n ],\n \"Notable changes in 3.8.17\": [\n@@ -68253,425 +68112,460 @@\n ],\n \"Python 3.5.0 alpha 2\": [\n [497, \"python-3-5-0-alpha-2\"]\n ],\n \"Python 3.5.0 alpha 1\": [\n [497, \"python-3-5-0-alpha-1\"]\n ],\n- \"What\\u2019s New In Python 3.3\": [\n- [490, \"what-s-new-in-python-3-3\"]\n+ \"What\\u2019s New in Python\": [\n+ [498, \"what-s-new-in-python\"]\n ],\n- \"PEP 405: Virtual Environments\": [\n- [490, \"pep-405-virtual-environments\"]\n+ \"What\\u2019s New In Python 3.5\": [\n+ [492, \"what-s-new-in-python-3-5\"]\n ],\n- \"PEP 420: Implicit Namespace Packages\": [\n- [490, \"pep-420-implicit-namespace-packages\"]\n+ \"PEP 492 - Coroutines with async and await syntax\": [\n+ [492, \"pep-492-coroutines-with-async-and-await-syntax\"]\n ],\n- \"PEP 3118: New memoryview implementation and buffer protocol documentation\": [\n- [490, \"pep-3118-new-memoryview-implementation-and-buffer-protocol-documentation\"]\n+ \"PEP 465 - A dedicated infix operator for matrix multiplication\": [\n+ [492, \"pep-465-a-dedicated-infix-operator-for-matrix-multiplication\"]\n ],\n- \"Features\": [\n- [490, \"features\"],\n- [490, \"id1\"],\n- [296, \"features\"]\n+ \"PEP 448 - Additional Unpacking Generalizations\": [\n+ [492, \"pep-448-additional-unpacking-generalizations\"]\n ],\n- \"API changes\": [\n- [490, \"api-changes\"],\n- [490, \"id2\"]\n+ \"PEP 461 - percent formatting support for bytes and bytearray\": [\n+ [492, \"pep-461-percent-formatting-support-for-bytes-and-bytearray\"]\n ],\n- \"PEP 393: Flexible String Representation\": [\n- [490, \"pep-393-flexible-string-representation\"]\n+ \"PEP 484 - Type Hints\": [\n+ [492, \"pep-484-type-hints\"]\n ],\n- \"Functionality\": [\n- [490, \"functionality\"]\n+ \"PEP 471 - os.scandir() function \\u2013 a better and faster directory iterator\": [\n+ [492, \"pep-471-os-scandir-function-a-better-and-faster-directory-iterator\"]\n ],\n- \"Performance and resource usage\": [\n- [490, \"performance-and-resource-usage\"]\n+ \"PEP 475: Retry system calls failing with EINTR\": [\n+ [492, \"pep-475-retry-system-calls-failing-with-eintr\"]\n ],\n- \"PEP 397: Python Launcher for Windows\": [\n- [490, \"pep-397-python-launcher-for-windows\"]\n+ \"PEP 479: Change StopIteration handling inside generators\": [\n+ [492, \"pep-479-change-stopiteration-handling-inside-generators\"]\n ],\n- \"PEP 3151: Reworking the OS and IO exception hierarchy\": [\n- [490, \"pep-3151-reworking-the-os-and-io-exception-hierarchy\"]\n+ \"PEP 485: A function for testing approximate equality\": [\n+ [492, \"pep-485-a-function-for-testing-approximate-equality\"]\n ],\n- \"PEP 380: Syntax for Delegating to a Subgenerator\": [\n- [490, \"pep-380-syntax-for-delegating-to-a-subgenerator\"]\n+ \"PEP 486: Make the Python Launcher aware of virtual environments\": [\n+ [492, \"pep-486-make-the-python-launcher-aware-of-virtual-environments\"]\n ],\n- \"PEP 409: Suppressing exception context\": [\n- [490, \"pep-409-suppressing-exception-context\"]\n+ \"PEP 488: Elimination of PYO files\": [\n+ [492, \"pep-488-elimination-of-pyo-files\"]\n ],\n- \"PEP 414: Explicit Unicode literals\": [\n- [490, \"pep-414-explicit-unicode-literals\"]\n+ \"PEP 489: Multi-phase extension module initialization\": [\n+ [492, \"pep-489-multi-phase-extension-module-initialization\"]\n ],\n- \"PEP 3155: Qualified name for classes and functions\": [\n- [490, \"pep-3155-qualified-name-for-classes-and-functions\"]\n+ \"cgi\": [\n+ [492, \"cgi\"]\n ],\n- \"PEP 412: Key-Sharing Dictionary\": [\n- [490, \"pep-412-key-sharing-dictionary\"]\n+ \"cmath\": [\n+ [492, \"cmath\"],\n+ [493, \"cmath\"]\n ],\n- \"PEP 362: Function Signature Object\": [\n- [490, \"pep-362-function-signature-object\"]\n+ \"code\": [\n+ [492, \"code\"]\n ],\n- \"PEP 421: Adding sys.implementation\": [\n- [490, \"pep-421-adding-sys-implementation\"]\n+ \"difflib\": [\n+ [492, \"difflib\"]\n ],\n- \"SimpleNamespace\": [\n- [490, \"simplenamespace\"]\n+ \"heapq\": [\n+ [492, \"heapq\"]\n ],\n- \"Using importlib as the Implementation of Import\": [\n- [490, \"using-importlib-as-the-implementation-of-import\"]\n+ \"imghdr\": [\n+ [492, \"imghdr\"]\n ],\n- \"New APIs\": [\n- [490, \"new-apis\"]\n+ \"json\": [\n+ [492, \"json\"],\n+ [493, \"json\"]\n ],\n- \"Visible Changes\": [\n- [490, \"visible-changes\"]\n+ \"readline\": [\n+ [492, \"readline\"],\n+ [493, \"readline\"]\n ],\n- \"A Finer-Grained Import Lock\": [\n- [490, \"a-finer-grained-import-lock\"]\n+ \"selectors\": [\n+ [492, \"selectors\"],\n+ [491, \"selectors\"]\n ],\n- \"Builtin functions and types\": [\n- [490, \"builtin-functions-and-types\"]\n+ \"sndhdr\": [\n+ [492, \"sndhdr\"]\n ],\n- \"Policy Framework\": [\n- [490, \"policy-framework\"]\n+ \"Memory BIO Support\": [\n+ [492, \"memory-bio-support\"],\n+ [357, \"memory-bio-support\"]\n ],\n- \"Provisional Policy with New Header API\": [\n- [490, \"provisional-policy-with-new-header-api\"]\n+ \"Application-Layer Protocol Negotiation Support\": [\n+ [492, \"application-layer-protocol-negotiation-support\"]\n ],\n- \"Other API Changes\": [\n- [490, \"other-api-changes\"]\n+ \"Other Changes\": [\n+ [492, \"other-changes\"]\n ],\n- \"ftplib\": [\n- [490, \"ftplib\"],\n- [496, \"ftplib\"]\n+ \"timeit\": [\n+ [492, \"timeit\"],\n+ [493, \"timeit\"]\n ],\n- \"nntplib\": [\n- [490, \"nntplib\"],\n- [496, \"nntplib\"]\n+ \"wsgiref\": [\n+ [492, \"wsgiref\"]\n ],\n- \"sched\": [\n- [490, \"sched\"]\n+ \"xml.sax\": [\n+ [492, \"xml-sax\"]\n ],\n- \"webbrowser\": [\n- [490, \"webbrowser\"]\n+ \"Other module-level changes\": [\n+ [492, \"other-module-level-changes\"]\n ],\n- \"xml.etree.ElementTree\": [\n- [490, \"xml-etree-elementtree\"]\n+ \"New Keywords\": [\n+ [492, \"new-keywords\"],\n+ [493, \"new-keywords\"]\n ],\n- \"Deprecated features\": [\n- [490, \"deprecated-features\"]\n+ \"Porting to Python 3.5\": [\n+ [492, \"porting-to-python-3-5\"]\n ],\n- \"Porting to Python 3.3\": [\n- [490, \"porting-to-python-3-3\"]\n+ \"Notable changes in Python 3.5.4\": [\n+ [492, \"notable-changes-in-python-3-5-4\"]\n ],\n- \"Porting Python code\": [\n- [490, \"porting-python-code\"]\n+ \"What\\u2019s New In Python 3.4\": [\n+ [491, \"what-s-new-in-python-3-4\"]\n ],\n- \"Porting C code\": [\n- [490, \"porting-c-code\"]\n+ \"PEP 453: Explicit Bootstrapping of PIP in Python Installations\": [\n+ [491, \"pep-453-explicit-bootstrapping-of-pip-in-python-installations\"]\n ],\n- \"Building C extensions\": [\n- [490, \"building-c-extensions\"]\n+ \"PEP 446: Newly Created File Descriptors Are Non-Inheritable\": [\n+ [491, \"pep-446-newly-created-file-descriptors-are-non-inheritable\"]\n ],\n- \"Command Line Switch Changes\": [\n- [490, \"command-line-switch-changes\"]\n+ \"Improvements to Codec Handling\": [\n+ [491, \"improvements-to-codec-handling\"]\n ],\n- \"What\\u2019s New in Python\": [\n- [498, \"what-s-new-in-python\"]\n+ \"PEP 451: A ModuleSpec Type for the Import System\": [\n+ [491, \"pep-451-a-modulespec-type-for-the-import-system\"]\n ],\n- \"What\\u2019s New In Python 3.9\": [\n- [496, \"what-s-new-in-python-3-9\"]\n+ \"ensurepip\": [\n+ [491, \"ensurepip\"]\n ],\n- \"You should check for DeprecationWarning in your code\": [\n- [496, \"you-should-check-for-deprecationwarning-in-your-code\"]\n+ \"audioop\": [\n+ [491, \"audioop\"]\n ],\n- \"Dictionary Merge & Update Operators\": [\n- [496, \"dictionary-merge-update-operators\"]\n+ \"colorsys\": [\n+ [491, \"colorsys\"]\n ],\n- \"New String Methods to Remove Prefixes and Suffixes\": [\n- [496, \"new-string-methods-to-remove-prefixes-and-suffixes\"]\n+ \"filecmp\": [\n+ [491, \"filecmp\"]\n ],\n- \"Type Hinting Generics in Standard Collections\": [\n- [496, \"type-hinting-generics-in-standard-collections\"]\n+ \"marshal\": [\n+ [491, \"marshal\"]\n ],\n- \"New Parser\": [\n- [496, \"new-parser\"]\n+ \"pty\": [\n+ [491, \"pty\"]\n ],\n- \"zoneinfo\": [\n- [496, \"zoneinfo\"]\n+ \"resource\": [\n+ [491, \"resource\"]\n ],\n- \"graphlib\": [\n- [496, \"graphlib\"]\n+ \"CPython Implementation Changes\": [\n+ [491, \"cpython-implementation-changes\"]\n ],\n- \"Porting to Python 3.9\": [\n- [496, \"porting-to-python-3-9\"],\n- [496, \"id2\"]\n+ \"PEP 445: Customization of CPython Memory Allocators\": [\n+ [491, \"pep-445-customization-of-cpython-memory-allocators\"]\n ],\n- \"Notable changes in Python 3.9.1\": [\n- [496, \"notable-changes-in-python-3-9-1\"]\n+ \"PEP 442: Safe Object Finalization\": [\n+ [491, \"pep-442-safe-object-finalization\"]\n ],\n- \"Notable changes in Python 3.9.2\": [\n- [496, \"notable-changes-in-python-3-9-2\"]\n+ \"PEP 456: Secure and Interchangeable Hash Algorithm\": [\n+ [491, \"pep-456-secure-and-interchangeable-hash-algorithm\"]\n ],\n- \"Notable changes in Python 3.9.3\": [\n- [496, \"notable-changes-in-python-3-9-3\"]\n+ \"PEP 436: Argument Clinic\": [\n+ [491, \"pep-436-argument-clinic\"]\n ],\n- \"Notable changes in Python 3.9.5\": [\n- [496, \"notable-changes-in-python-3-9-5\"]\n+ \"Other Build and C API Changes\": [\n+ [491, \"other-build-and-c-api-changes\"]\n ],\n- \"Notable security feature in 3.9.14\": [\n- [496, \"notable-security-feature-in-3-9-14\"]\n+ \"Other Improvements\": [\n+ [491, \"other-improvements\"],\n+ [493, \"other-improvements\"]\n ],\n- \"Notable changes in 3.9.17\": [\n- [496, \"notable-changes-in-3-9-17\"]\n+ \"Significant Optimizations\": [\n+ [491, \"significant-optimizations\"]\n ],\n- \"smtpd \\u2014 SMTP Server\": [\n- [350, \"module-smtpd\"]\n+ \"Deprecations in the Python API\": [\n+ [491, \"deprecations-in-the-python-api\"]\n ],\n- \"SMTPServer Objects\": [\n- [350, \"smtpserver-objects\"]\n+ \"Deprecated Features\": [\n+ [491, \"deprecated-features\"]\n ],\n- \"DebuggingServer Objects\": [\n- [350, \"debuggingserver-objects\"]\n+ \"Operating Systems No Longer Supported\": [\n+ [491, \"operating-systems-no-longer-supported\"]\n ],\n- \"PureProxy Objects\": [\n- [350, \"pureproxy-objects\"]\n+ \"Code Cleanups\": [\n+ [491, \"code-cleanups\"]\n ],\n- \"SMTPChannel Objects\": [\n- [350, \"smtpchannel-objects\"]\n+ \"Porting to Python 3.4\": [\n+ [491, \"porting-to-python-3-4\"]\n ],\n- \"Superseded Modules\": [\n- [366, \"superseded-modules\"]\n+ \"Changes in \\u2018python\\u2019 Command Behavior\": [\n+ [491, \"changes-in-python-command-behavior\"],\n+ [493, \"changes-in-python-command-behavior\"]\n ],\n- \"sqlite3 \\u2014 DB-API 2.0 interface for SQLite databases\": [\n- [356, \"module-sqlite3\"]\n+ \"Changed in 3.4.3\": [\n+ [491, \"changed-in-3-4-3\"]\n ],\n- \"Module functions\": [\n- [356, \"module-functions\"]\n+ \"What\\u2019s New In Python 3.6\": [\n+ [493, \"what-s-new-in-python-3-6\"]\n ],\n- \"Module constants\": [\n- [356, \"module-constants\"]\n+ \"PEP 498: Formatted string literals\": [\n+ [493, \"pep-498-formatted-string-literals\"]\n ],\n- \"Connection objects\": [\n- [356, \"connection-objects\"]\n+ \"PEP 526: Syntax for variable annotations\": [\n+ [493, \"pep-526-syntax-for-variable-annotations\"]\n ],\n- \"Cursor objects\": [\n- [356, \"cursor-objects\"]\n+ \"PEP 515: Underscores in Numeric Literals\": [\n+ [493, \"pep-515-underscores-in-numeric-literals\"]\n ],\n- \"Row objects\": [\n- [356, \"row-objects\"]\n+ \"PEP 525: Asynchronous Generators\": [\n+ [493, \"pep-525-asynchronous-generators\"]\n ],\n- \"Blob objects\": [\n- [356, \"blob-objects\"]\n+ \"PEP 530: Asynchronous Comprehensions\": [\n+ [493, \"pep-530-asynchronous-comprehensions\"]\n ],\n- \"PrepareProtocol objects\": [\n- [356, \"prepareprotocol-objects\"]\n+ \"PEP 487: Simpler customization of class creation\": [\n+ [493, \"pep-487-simpler-customization-of-class-creation\"]\n ],\n- \"SQLite and Python types\": [\n- [356, \"sqlite-and-python-types\"]\n+ \"PEP 487: Descriptor Protocol Enhancements\": [\n+ [493, \"pep-487-descriptor-protocol-enhancements\"]\n ],\n- \"Default adapters and converters\": [\n- [356, \"default-adapters-and-converters\"]\n+ \"PEP 519: Adding a file system path protocol\": [\n+ [493, \"pep-519-adding-a-file-system-path-protocol\"]\n ],\n- \"How-to guides\": [\n- [356, \"how-to-guides\"]\n+ \"PEP 495: Local Time Disambiguation\": [\n+ [493, \"pep-495-local-time-disambiguation\"]\n ],\n- \"How to use placeholders to bind values in SQL queries\": [\n- [356, \"how-to-use-placeholders-to-bind-values-in-sql-queries\"]\n+ \"PEP 529: Change Windows filesystem encoding to UTF-8\": [\n+ [493, \"pep-529-change-windows-filesystem-encoding-to-utf-8\"]\n ],\n- \"How to adapt custom Python types to SQLite values\": [\n- [356, \"how-to-adapt-custom-python-types-to-sqlite-values\"]\n+ \"PEP 528: Change Windows console encoding to UTF-8\": [\n+ [493, \"pep-528-change-windows-console-encoding-to-utf-8\"]\n ],\n- \"How to write adaptable objects\": [\n- [356, \"how-to-write-adaptable-objects\"]\n+ \"PEP 520: Preserving Class Attribute Definition Order\": [\n+ [493, \"pep-520-preserving-class-attribute-definition-order\"]\n ],\n- \"How to register adapter callables\": [\n- [356, \"how-to-register-adapter-callables\"]\n+ \"PEP 468: Preserving Keyword Argument Order\": [\n+ [493, \"pep-468-preserving-keyword-argument-order\"]\n ],\n- \"How to convert SQLite values to custom Python types\": [\n- [356, \"how-to-convert-sqlite-values-to-custom-python-types\"]\n+ \"New dict implementation\": [\n+ [493, \"new-dict-implementation\"]\n ],\n- \"Adapter and converter recipes\": [\n- [356, \"adapter-and-converter-recipes\"]\n+ \"PEP 523: Adding a frame evaluation API to CPython\": [\n+ [493, \"pep-523-adding-a-frame-evaluation-api-to-cpython\"]\n ],\n- \"How to use connection shortcut methods\": [\n- [356, \"how-to-use-connection-shortcut-methods\"]\n+ \"PYTHONMALLOC environment variable\": [\n+ [493, \"pythonmalloc-environment-variable\"]\n ],\n- \"How to use the connection context manager\": [\n- [356, \"how-to-use-the-connection-context-manager\"]\n+ \"DTrace and SystemTap probing support\": [\n+ [493, \"dtrace-and-systemtap-probing-support\"]\n ],\n- \"How to work with SQLite URIs\": [\n- [356, \"how-to-work-with-sqlite-uris\"]\n+ \"secrets\": [\n+ [493, \"secrets\"]\n ],\n- \"How to create and use row factories\": [\n- [356, \"how-to-create-and-use-row-factories\"]\n+ \"pickletools\": [\n+ [493, \"pickletools\"]\n ],\n- \"How to handle non-UTF-8 text encodings\": [\n- [356, \"how-to-handle-non-utf-8-text-encodings\"]\n+ \"rlcompleter\": [\n+ [493, \"rlcompleter\"]\n ],\n- \"Transaction control\": [\n- [356, \"transaction-control\"]\n+ \"telnetlib\": [\n+ [493, \"telnetlib\"]\n ],\n- \"sys \\u2014 System-specific parameters and functions\": [\n- [368, \"module-sys\"]\n+ \"urllib.request\": [\n+ [493, \"urllib-request\"]\n ],\n- \"Attributes of the float_info named tuple\": [\n- [368, \"id2\"]\n+ \"urllib.robotparser\": [\n+ [493, \"urllib-robotparser\"]\n ],\n- \"ssl \\u2014 TLS/SSL wrapper for socket objects\": [\n- [357, \"module-ssl\"]\n+ \"winreg\": [\n+ [493, \"winreg\"]\n ],\n- \"Functions, Constants, and Exceptions\": [\n- [357, \"functions-constants-and-exceptions\"]\n+ \"winsound\": [\n+ [493, \"winsound\"]\n ],\n- \"Socket creation\": [\n- [357, \"socket-creation\"]\n+ \"xmlrpc.client\": [\n+ [493, \"xmlrpc-client\"]\n ],\n- \"Context creation\": [\n- [357, \"context-creation\"]\n+ \"Deprecated Python behavior\": [\n+ [493, \"deprecated-python-behavior\"]\n ],\n- \"Random generation\": [\n- [357, \"random-generation\"]\n+ \"asynchat\": [\n+ [493, \"asynchat\"]\n ],\n- \"Certificate handling\": [\n- [357, \"certificate-handling\"]\n+ \"grp\": [\n+ [493, \"grp\"]\n ],\n- \"SSL Sockets\": [\n- [357, \"ssl-sockets\"]\n+ \"Deprecated Build Options\": [\n+ [493, \"deprecated-build-options\"]\n ],\n- \"SSL Contexts\": [\n- [357, \"ssl-contexts\"]\n+ \"Porting to Python 3.6\": [\n+ [493, \"porting-to-python-3-6\"]\n ],\n- \"Certificates\": [\n- [357, \"certificates\"]\n+ \"Notable changes in Python 3.6.2\": [\n+ [493, \"notable-changes-in-python-3-6-2\"]\n ],\n- \"Certificate chains\": [\n- [357, \"certificate-chains\"]\n+ \"Notable changes in Python 3.6.4\": [\n+ [493, \"notable-changes-in-python-3-6-4\"]\n ],\n- \"CA certificates\": [\n- [357, \"ca-certificates\"]\n+ \"Notable changes in Python 3.6.5\": [\n+ [493, \"notable-changes-in-python-3-6-5\"]\n ],\n- \"Combined key and certificate\": [\n- [357, \"combined-key-and-certificate\"]\n+ \"Notable changes in Python 3.6.7\": [\n+ [493, \"notable-changes-in-python-3-6-7\"]\n ],\n- \"Self-signed certificates\": [\n- [357, \"self-signed-certificates\"]\n+ \"Notable changes in Python 3.6.10\": [\n+ [493, \"notable-changes-in-python-3-6-10\"]\n ],\n- \"Testing for SSL support\": [\n- [357, \"testing-for-ssl-support\"]\n+ \"Notable changes in Python 3.6.13\": [\n+ [493, \"notable-changes-in-python-3-6-13\"]\n ],\n- \"Client-side operation\": [\n- [357, \"client-side-operation\"]\n+ \"Notable changes in Python 3.6.14\": [\n+ [493, \"notable-changes-in-python-3-6-14\"]\n ],\n- \"Server-side operation\": [\n- [357, \"server-side-operation\"]\n+ \"syslog \\u2014 Unix syslog library routines\": [\n+ [371, \"module-syslog\"]\n ],\n- \"Notes on non-blocking sockets\": [\n- [357, \"notes-on-non-blocking-sockets\"]\n+ \"Simple example\": [\n+ [371, \"simple-example\"]\n ],\n- \"SSL session\": [\n- [357, \"ssl-session\"]\n+ \"termios \\u2014 POSIX style tty control\": [\n+ [376, \"module-termios\"]\n ],\n- \"Security considerations\": [\n- [357, \"security-considerations\"],\n- [283, \"security-considerations\"]\n+ \"spwd \\u2014 The shadow password database\": [\n+ [355, \"module-spwd\"]\n ],\n- \"Best defaults\": [\n- [357, \"best-defaults\"]\n+ \"test \\u2014 Regression tests package for Python\": [\n+ [377, \"module-test\"]\n ],\n- \"Manual settings\": [\n- [357, \"manual-settings\"]\n+ \"Writing Unit Tests for the test package\": [\n+ [377, \"writing-unit-tests-for-the-test-package\"]\n ],\n- \"Verifying certificates\": [\n- [357, \"verifying-certificates\"]\n+ \"Running tests using the command-line interface\": [\n+ [377, \"module-test.regrtest\"]\n ],\n- \"Protocol versions\": [\n- [357, \"protocol-versions\"]\n+ \"test.support \\u2014 Utilities for the Python test suite\": [\n+ [377, \"module-test.support\"]\n ],\n- \"Cipher selection\": [\n- [357, \"cipher-selection\"]\n+ \"test.support.socket_helper \\u2014 Utilities for socket tests\": [\n+ [377, \"module-test.support.socket_helper\"]\n ],\n- \"Multi-processing\": [\n- [357, \"multi-processing\"]\n+ \"test.support.script_helper \\u2014 Utilities for the Python execution tests\": [\n+ [377, \"module-test.support.script_helper\"]\n ],\n- \"TLS 1.3\": [\n- [357, \"tls-1-3\"]\n+ \"test.support.bytecode_helper \\u2014 Support tools for testing correct bytecode generation\": [\n+ [377, \"module-test.support.bytecode_helper\"]\n ],\n- \"stringprep \\u2014 Internet String Preparation\": [\n- [362, \"module-stringprep\"]\n+ \"test.support.threading_helper \\u2014 Utilities for threading tests\": [\n+ [377, \"module-test.support.threading_helper\"]\n ],\n- \"statistics \\u2014 Mathematical statistics functions\": [\n- [359, \"module-statistics\"]\n+ \"test.support.os_helper \\u2014 Utilities for os tests\": [\n+ [377, \"module-test.support.os_helper\"]\n ],\n- \"Averages and measures of central location\": [\n- [359, \"averages-and-measures-of-central-location\"]\n+ \"test.support.import_helper \\u2014 Utilities for import tests\": [\n+ [377, \"module-test.support.import_helper\"]\n ],\n- \"Measures of spread\": [\n- [359, \"measures-of-spread\"]\n+ \"test.support.warnings_helper \\u2014 Utilities for warnings tests\": [\n+ [377, \"module-test.support.warnings_helper\"]\n ],\n- \"Statistics for relations between two inputs\": [\n- [359, \"statistics-for-relations-between-two-inputs\"]\n+ \"socket \\u2014 Low-level networking interface\": [\n+ [353, \"module-socket\"]\n ],\n- \"Function details\": [\n- [359, \"function-details\"]\n+ \"Socket families\": [\n+ [353, \"socket-families\"]\n ],\n- \"NormalDist objects\": [\n- [359, \"normaldist-objects\"]\n+ \"Creating sockets\": [\n+ [353, \"creating-sockets\"]\n ],\n- \"NormalDist Examples and Recipes\": [\n- [359, \"normaldist-examples-and-recipes\"]\n+ \"Socket Objects\": [\n+ [353, \"socket-objects\"]\n ],\n- \"socketserver \\u2014 A framework for network servers\": [\n- [354, \"module-socketserver\"]\n+ \"Notes on socket timeouts\": [\n+ [353, \"notes-on-socket-timeouts\"]\n ],\n- \"Server Creation Notes\": [\n- [354, \"server-creation-notes\"]\n+ \"Timeouts and the connect method\": [\n+ [353, \"timeouts-and-the-connect-method\"]\n ],\n- \"Request Handler Objects\": [\n- [354, \"request-handler-objects\"]\n+ \"Timeouts and the accept method\": [\n+ [353, \"timeouts-and-the-accept-method\"]\n ],\n- \"socketserver.TCPServer Example\": [\n- [354, \"socketserver-tcpserver-example\"]\n+ \"time \\u2014 Time access and conversions\": [\n+ [381, \"module-time\"]\n ],\n- \"socketserver.UDPServer Example\": [\n- [354, \"socketserver-udpserver-example\"]\n+ \"Clock ID Constants\": [\n+ [381, \"clock-id-constants\"]\n ],\n- \"Asynchronous Mixins\": [\n- [354, \"asynchronous-mixins\"]\n+ \"Timezone Constants\": [\n+ [381, \"timezone-constants\"]\n ],\n- \"smtplib \\u2014 SMTP protocol client\": [\n- [351, \"module-smtplib\"]\n+ \"tkinter \\u2014 Python interface to Tcl/Tk\": [\n+ [384, \"module-tkinter\"]\n ],\n- \"SMTP Objects\": [\n- [351, \"smtp-objects\"]\n+ \"Architecture\": [\n+ [384, \"architecture\"]\n ],\n- \"SMTP Example\": [\n- [351, \"smtp-example\"]\n+ \"Tkinter Modules\": [\n+ [384, \"tkinter-modules\"]\n ],\n- \"termios \\u2014 POSIX style tty control\": [\n- [376, \"module-termios\"]\n+ \"Tkinter Life Preserver\": [\n+ [384, \"tkinter-life-preserver\"]\n ],\n- \"symtable \\u2014 Access to the compiler\\u2019s symbol tables\": [\n- [367, \"module-symtable\"]\n+ \"A Hello World Program\": [\n+ [384, \"a-hello-world-program\"]\n ],\n- \"Generating Symbol Tables\": [\n- [367, \"generating-symbol-tables\"]\n+ \"Important Tk Concepts\": [\n+ [384, \"important-tk-concepts\"]\n ],\n- \"Examining Symbol Tables\": [\n- [367, \"examining-symbol-tables\"]\n+ \"Understanding How Tkinter Wraps Tcl/Tk\": [\n+ [384, \"understanding-how-tkinter-wraps-tcl-tk\"]\n ],\n- \"sunau \\u2014 Read and write Sun AU files\": [\n- [365, \"module-sunau\"]\n+ \"How do I\\u2026? What option does\\u2026?\": [\n+ [384, \"how-do-i-what-option-does\"]\n ],\n- \"AU_read Objects\": [\n- [365, \"au-read-objects\"]\n+ \"Navigating the Tcl/Tk Reference Manual\": [\n+ [384, \"navigating-the-tcl-tk-reference-manual\"]\n ],\n- \"AU_write Objects\": [\n- [365, \"au-write-objects\"]\n+ \"Threading model\": [\n+ [384, \"threading-model\"]\n+ ],\n+ \"Handy Reference\": [\n+ [384, \"handy-reference\"]\n+ ],\n+ \"Setting Options\": [\n+ [384, \"setting-options\"]\n+ ],\n+ \"The Packer\": [\n+ [384, \"the-packer\"]\n+ ],\n+ \"Packer Options\": [\n+ [384, \"packer-options\"]\n+ ],\n+ \"Coupling Widget Variables\": [\n+ [384, \"coupling-widget-variables\"]\n+ ],\n+ \"The Window Manager\": [\n+ [384, \"the-window-manager\"]\n+ ],\n+ \"Tk Option Data Types\": [\n+ [384, \"tk-option-data-types\"]\n+ ],\n+ \"Bindings and Events\": [\n+ [384, \"bindings-and-events\"]\n+ ],\n+ \"The index Parameter\": [\n+ [384, \"the-index-parameter\"]\n+ ],\n+ \"Images\": [\n+ [384, \"images\"]\n+ ],\n+ \"File Handlers\": [\n+ [384, \"file-handlers\"]\n ],\n \"threading \\u2014 Thread-based parallelism\": [\n [380, \"module-threading\"]\n ],\n \"Thread-Local Data\": [\n [380, \"thread-local-data\"]\n ],\n@@ -68701,173 +68595,125 @@\n ],\n \"Barrier Objects\": [\n [380, \"barrier-objects\"]\n ],\n \"Using locks, conditions, and semaphores in the with statement\": [\n [380, \"using-locks-conditions-and-semaphores-in-the-with-statement\"]\n ],\n- \"tempfile \\u2014 Generate temporary files and directories\": [\n- [375, \"module-tempfile\"]\n- ],\n- \"Deprecated functions and variables\": [\n- [375, \"deprecated-functions-and-variables\"]\n- ],\n- \"telnetlib \\u2014 Telnet client\": [\n- [374, \"module-telnetlib\"]\n- ],\n- \"Telnet Objects\": [\n- [374, \"telnet-objects\"]\n- ],\n- \"Telnet Example\": [\n- [374, \"telnet-example\"]\n- ],\n- \"sndhdr \\u2014 Determine type of sound file\": [\n- [352, \"module-sndhdr\"]\n- ],\n- \"stat \\u2014 Interpreting stat() results\": [\n- [358, \"module-stat\"]\n- ],\n \"timeit \\u2014 Measure execution time of small code snippets\": [\n [382, \"module-timeit\"]\n ],\n \"Basic Examples\": [\n [382, \"basic-examples\"],\n [250, \"basic-examples\"]\n ],\n \"Python Interface\": [\n [382, \"python-interface\"]\n ],\n- \"textwrap \\u2014 Text wrapping and filling\": [\n- [379, \"module-textwrap\"]\n- ],\n- \"tkinter \\u2014 Python interface to Tcl/Tk\": [\n- [384, \"module-tkinter\"]\n- ],\n- \"Architecture\": [\n- [384, \"architecture\"]\n- ],\n- \"Tkinter Modules\": [\n- [384, \"tkinter-modules\"]\n- ],\n- \"Tkinter Life Preserver\": [\n- [384, \"tkinter-life-preserver\"]\n- ],\n- \"A Hello World Program\": [\n- [384, \"a-hello-world-program\"]\n- ],\n- \"Important Tk Concepts\": [\n- [384, \"important-tk-concepts\"]\n- ],\n- \"Understanding How Tkinter Wraps Tcl/Tk\": [\n- [384, \"understanding-how-tkinter-wraps-tcl-tk\"]\n- ],\n- \"How do I\\u2026? What option does\\u2026?\": [\n- [384, \"how-do-i-what-option-does\"]\n- ],\n- \"Navigating the Tcl/Tk Reference Manual\": [\n- [384, \"navigating-the-tcl-tk-reference-manual\"]\n+ \"sqlite3 \\u2014 DB-API 2.0 interface for SQLite databases\": [\n+ [356, \"module-sqlite3\"]\n ],\n- \"Threading model\": [\n- [384, \"threading-model\"]\n+ \"Module functions\": [\n+ [356, \"module-functions\"]\n ],\n- \"Handy Reference\": [\n- [384, \"handy-reference\"]\n+ \"Module constants\": [\n+ [356, \"module-constants\"]\n ],\n- \"Setting Options\": [\n- [384, \"setting-options\"]\n+ \"Connection objects\": [\n+ [356, \"connection-objects\"]\n ],\n- \"The Packer\": [\n- [384, \"the-packer\"]\n+ \"Cursor objects\": [\n+ [356, \"cursor-objects\"]\n ],\n- \"Packer Options\": [\n- [384, \"packer-options\"]\n+ \"Row objects\": [\n+ [356, \"row-objects\"]\n ],\n- \"Coupling Widget Variables\": [\n- [384, \"coupling-widget-variables\"]\n+ \"Blob objects\": [\n+ [356, \"blob-objects\"]\n ],\n- \"The Window Manager\": [\n- [384, \"the-window-manager\"]\n+ \"PrepareProtocol objects\": [\n+ [356, \"prepareprotocol-objects\"]\n ],\n- \"Tk Option Data Types\": [\n- [384, \"tk-option-data-types\"]\n+ \"SQLite and Python types\": [\n+ [356, \"sqlite-and-python-types\"]\n ],\n- \"Bindings and Events\": [\n- [384, \"bindings-and-events\"]\n+ \"Default adapters and converters\": [\n+ [356, \"default-adapters-and-converters\"]\n ],\n- \"The index Parameter\": [\n- [384, \"the-index-parameter\"]\n+ \"How-to guides\": [\n+ [356, \"how-to-guides\"]\n ],\n- \"Images\": [\n- [384, \"images\"]\n+ \"How to use placeholders to bind values in SQL queries\": [\n+ [356, \"how-to-use-placeholders-to-bind-values-in-sql-queries\"]\n ],\n- \"File Handlers\": [\n- [384, \"file-handlers\"]\n+ \"How to adapt custom Python types to SQLite values\": [\n+ [356, \"how-to-adapt-custom-python-types-to-sqlite-values\"]\n ],\n- \"tabnanny \\u2014 Detection of ambiguous indentation\": [\n- [372, \"module-tabnanny\"]\n+ \"How to write adaptable objects\": [\n+ [356, \"how-to-write-adaptable-objects\"]\n ],\n- \"string \\u2014 Common string operations\": [\n- [361, \"module-string\"]\n+ \"How to register adapter callables\": [\n+ [356, \"how-to-register-adapter-callables\"]\n ],\n- \"String constants\": [\n- [361, \"string-constants\"]\n+ \"How to convert SQLite values to custom Python types\": [\n+ [356, \"how-to-convert-sqlite-values-to-custom-python-types\"]\n ],\n- \"Custom String Formatting\": [\n- [361, \"custom-string-formatting\"]\n+ \"Adapter and converter recipes\": [\n+ [356, \"adapter-and-converter-recipes\"]\n ],\n- \"Format String Syntax\": [\n- [361, \"format-string-syntax\"]\n+ \"How to use connection shortcut methods\": [\n+ [356, \"how-to-use-connection-shortcut-methods\"]\n ],\n- \"Format Specification Mini-Language\": [\n- [361, \"format-specification-mini-language\"]\n+ \"How to use the connection context manager\": [\n+ [356, \"how-to-use-the-connection-context-manager\"]\n ],\n- \"Format examples\": [\n- [361, \"format-examples\"]\n+ \"How to work with SQLite URIs\": [\n+ [356, \"how-to-work-with-sqlite-uris\"]\n ],\n- \"Template strings\": [\n- [361, \"template-strings\"]\n+ \"How to create and use row factories\": [\n+ [356, \"how-to-create-and-use-row-factories\"]\n ],\n- \"Helper functions\": [\n- [361, \"helper-functions\"]\n+ \"How to handle non-UTF-8 text encodings\": [\n+ [356, \"how-to-handle-non-utf-8-text-encodings\"]\n ],\n- \"Graphical User Interfaces with Tk\": [\n- [383, \"graphical-user-interfaces-with-tk\"]\n+ \"Transaction control\": [\n+ [356, \"transaction-control\"]\n ],\n- \"Text Processing Services\": [\n- [378, \"text-processing-services\"]\n+ \"tarfile \\u2014 Read and write tar archive files\": [\n+ [373, \"module-tarfile\"]\n ],\n- \"time \\u2014 Time access and conversions\": [\n- [381, \"module-time\"]\n+ \"TarFile Objects\": [\n+ [373, \"tarfile-objects\"]\n ],\n- \"Clock ID Constants\": [\n- [381, \"clock-id-constants\"]\n+ \"TarInfo Objects\": [\n+ [373, \"tarinfo-objects\"]\n ],\n- \"Timezone Constants\": [\n- [381, \"timezone-constants\"]\n+ \"Extraction filters\": [\n+ [373, \"extraction-filters\"]\n ],\n- \"socket \\u2014 Low-level networking interface\": [\n- [353, \"module-socket\"]\n+ \"Default named filters\": [\n+ [373, \"default-named-filters\"]\n ],\n- \"Socket families\": [\n- [353, \"socket-families\"]\n+ \"Filter errors\": [\n+ [373, \"filter-errors\"]\n ],\n- \"Creating sockets\": [\n- [353, \"creating-sockets\"]\n+ \"Hints for further verification\": [\n+ [373, \"hints-for-further-verification\"]\n ],\n- \"Socket Objects\": [\n- [353, \"socket-objects\"]\n+ \"Supporting older Python versions\": [\n+ [373, \"supporting-older-python-versions\"]\n ],\n- \"Notes on socket timeouts\": [\n- [353, \"notes-on-socket-timeouts\"]\n+ \"Stateful extraction filter example\": [\n+ [373, \"stateful-extraction-filter-example\"]\n ],\n- \"Timeouts and the connect method\": [\n- [353, \"timeouts-and-the-connect-method\"]\n+ \"Supported tar formats\": [\n+ [373, \"supported-tar-formats\"]\n ],\n- \"Timeouts and the accept method\": [\n- [353, \"timeouts-and-the-accept-method\"]\n+ \"Unicode issues\": [\n+ [373, \"unicode-issues\"]\n ],\n \"Built-in Types\": [\n [360, \"built-in-types\"]\n ],\n \"Truth Value Testing\": [\n [360, \"truth-value-testing\"]\n ],\n@@ -68993,14 +68839,71 @@\n ],\n \"Configuring the limit\": [\n [360, \"configuring-the-limit\"]\n ],\n \"Recommended configuration\": [\n [360, \"recommended-configuration\"]\n ],\n+ \"Superseded Modules\": [\n+ [366, \"superseded-modules\"]\n+ ],\n+ \"symtable \\u2014 Access to the compiler\\u2019s symbol tables\": [\n+ [367, \"module-symtable\"]\n+ ],\n+ \"Generating Symbol Tables\": [\n+ [367, \"generating-symbol-tables\"]\n+ ],\n+ \"Examining Symbol Tables\": [\n+ [367, \"examining-symbol-tables\"]\n+ ],\n+ \"tabnanny \\u2014 Detection of ambiguous indentation\": [\n+ [372, \"module-tabnanny\"]\n+ ],\n+ \"smtplib \\u2014 SMTP protocol client\": [\n+ [351, \"module-smtplib\"]\n+ ],\n+ \"SMTP Objects\": [\n+ [351, \"smtp-objects\"]\n+ ],\n+ \"SMTP Example\": [\n+ [351, \"smtp-example\"]\n+ ],\n+ \"stringprep \\u2014 Internet String Preparation\": [\n+ [362, \"module-stringprep\"]\n+ ],\n+ \"tempfile \\u2014 Generate temporary files and directories\": [\n+ [375, \"module-tempfile\"]\n+ ],\n+ \"Deprecated functions and variables\": [\n+ [375, \"deprecated-functions-and-variables\"]\n+ ],\n+ \"struct \\u2014 Interpret bytes as packed binary data\": [\n+ [363, \"module-struct\"]\n+ ],\n+ \"Functions and Exceptions\": [\n+ [363, \"functions-and-exceptions\"]\n+ ],\n+ \"Format Strings\": [\n+ [363, \"format-strings\"]\n+ ],\n+ \"Byte Order, Size, and Alignment\": [\n+ [363, \"byte-order-size-and-alignment\"]\n+ ],\n+ \"Format Characters\": [\n+ [363, \"format-characters\"]\n+ ],\n+ \"Applications\": [\n+ [363, \"applications\"]\n+ ],\n+ \"Native Formats\": [\n+ [363, \"native-formats\"]\n+ ],\n+ \"Standard Formats\": [\n+ [363, \"standard-formats\"]\n+ ],\n \"sysconfig \\u2014 Provide access to Python\\u2019s configuration information\": [\n [370, \"module-sysconfig\"]\n ],\n \"Configuration variables\": [\n [370, \"configuration-variables\"]\n ],\n \"Installation paths\": [\n@@ -69035,88 +68938,158 @@\n ],\n \"Installation path functions\": [\n [370, \"installation-path-functions\"]\n ],\n \"Using sysconfig as a script\": [\n [370, \"using-sysconfig-as-a-script\"]\n ],\n- \"test \\u2014 Regression tests package for Python\": [\n- [377, \"module-test\"]\n+ \"sys \\u2014 System-specific parameters and functions\": [\n+ [368, \"module-sys\"]\n ],\n- \"Writing Unit Tests for the test package\": [\n- [377, \"writing-unit-tests-for-the-test-package\"]\n+ \"Attributes of the float_info named tuple\": [\n+ [368, \"id2\"]\n ],\n- \"Running tests using the command-line interface\": [\n- [377, \"module-test.regrtest\"]\n+ \"smtpd \\u2014 SMTP Server\": [\n+ [350, \"module-smtpd\"]\n ],\n- \"test.support \\u2014 Utilities for the Python test suite\": [\n- [377, \"module-test.support\"]\n+ \"SMTPServer Objects\": [\n+ [350, \"smtpserver-objects\"]\n ],\n- \"test.support.socket_helper \\u2014 Utilities for socket tests\": [\n- [377, \"module-test.support.socket_helper\"]\n+ \"DebuggingServer Objects\": [\n+ [350, \"debuggingserver-objects\"]\n ],\n- \"test.support.script_helper \\u2014 Utilities for the Python execution tests\": [\n- [377, \"module-test.support.script_helper\"]\n+ \"PureProxy Objects\": [\n+ [350, \"pureproxy-objects\"]\n ],\n- \"test.support.bytecode_helper \\u2014 Support tools for testing correct bytecode generation\": [\n- [377, \"module-test.support.bytecode_helper\"]\n+ \"SMTPChannel Objects\": [\n+ [350, \"smtpchannel-objects\"]\n ],\n- \"test.support.threading_helper \\u2014 Utilities for threading tests\": [\n- [377, \"module-test.support.threading_helper\"]\n+ \"The initialization of the sys.path module search path\": [\n+ [369, \"the-initialization-of-the-sys-path-module-search-path\"]\n ],\n- \"test.support.os_helper \\u2014 Utilities for os tests\": [\n- [377, \"module-test.support.os_helper\"]\n+ \"_pth files\": [\n+ [369, \"pth-files\"]\n ],\n- \"test.support.import_helper \\u2014 Utilities for import tests\": [\n- [377, \"module-test.support.import_helper\"]\n+ \"Embedded Python\": [\n+ [369, \"embedded-python\"]\n ],\n- \"test.support.warnings_helper \\u2014 Utilities for warnings tests\": [\n- [377, \"module-test.support.warnings_helper\"]\n+ \"sndhdr \\u2014 Determine type of sound file\": [\n+ [352, \"module-sndhdr\"]\n ],\n- \"syslog \\u2014 Unix syslog library routines\": [\n- [371, \"module-syslog\"]\n+ \"string \\u2014 Common string operations\": [\n+ [361, \"module-string\"]\n ],\n- \"Simple example\": [\n- [371, \"simple-example\"]\n+ \"String constants\": [\n+ [361, \"string-constants\"]\n ],\n- \"tarfile \\u2014 Read and write tar archive files\": [\n- [373, \"module-tarfile\"]\n+ \"Custom String Formatting\": [\n+ [361, \"custom-string-formatting\"]\n ],\n- \"TarFile Objects\": [\n- [373, \"tarfile-objects\"]\n+ \"Format String Syntax\": [\n+ [361, \"format-string-syntax\"]\n ],\n- \"TarInfo Objects\": [\n- [373, \"tarinfo-objects\"]\n+ \"Format Specification Mini-Language\": [\n+ [361, \"format-specification-mini-language\"]\n ],\n- \"Extraction filters\": [\n- [373, \"extraction-filters\"]\n+ \"Format examples\": [\n+ [361, \"format-examples\"]\n ],\n- \"Default named filters\": [\n- [373, \"default-named-filters\"]\n+ \"Template strings\": [\n+ [361, \"template-strings\"]\n ],\n- \"Filter errors\": [\n- [373, \"filter-errors\"]\n+ \"Helper functions\": [\n+ [361, \"helper-functions\"]\n ],\n- \"Hints for further verification\": [\n- [373, \"hints-for-further-verification\"]\n+ \"sunau \\u2014 Read and write Sun AU files\": [\n+ [365, \"module-sunau\"]\n ],\n- \"Supporting older Python versions\": [\n- [373, \"supporting-older-python-versions\"]\n+ \"AU_read Objects\": [\n+ [365, \"au-read-objects\"]\n ],\n- \"Stateful extraction filter example\": [\n- [373, \"stateful-extraction-filter-example\"]\n+ \"AU_write Objects\": [\n+ [365, \"au-write-objects\"]\n ],\n- \"Supported tar formats\": [\n- [373, \"supported-tar-formats\"]\n+ \"ssl \\u2014 TLS/SSL wrapper for socket objects\": [\n+ [357, \"module-ssl\"]\n ],\n- \"Unicode issues\": [\n- [373, \"unicode-issues\"]\n+ \"Functions, Constants, and Exceptions\": [\n+ [357, \"functions-constants-and-exceptions\"]\n ],\n- \"spwd \\u2014 The shadow password database\": [\n- [355, \"module-spwd\"]\n+ \"Socket creation\": [\n+ [357, \"socket-creation\"]\n+ ],\n+ \"Context creation\": [\n+ [357, \"context-creation\"]\n+ ],\n+ \"Random generation\": [\n+ [357, \"random-generation\"]\n+ ],\n+ \"Certificate handling\": [\n+ [357, \"certificate-handling\"]\n+ ],\n+ \"SSL Sockets\": [\n+ [357, \"ssl-sockets\"]\n+ ],\n+ \"SSL Contexts\": [\n+ [357, \"ssl-contexts\"]\n+ ],\n+ \"Certificates\": [\n+ [357, \"certificates\"]\n+ ],\n+ \"Certificate chains\": [\n+ [357, \"certificate-chains\"]\n+ ],\n+ \"CA certificates\": [\n+ [357, \"ca-certificates\"]\n+ ],\n+ \"Combined key and certificate\": [\n+ [357, \"combined-key-and-certificate\"]\n+ ],\n+ \"Self-signed certificates\": [\n+ [357, \"self-signed-certificates\"]\n+ ],\n+ \"Testing for SSL support\": [\n+ [357, \"testing-for-ssl-support\"]\n+ ],\n+ \"Client-side operation\": [\n+ [357, \"client-side-operation\"]\n+ ],\n+ \"Server-side operation\": [\n+ [357, \"server-side-operation\"]\n+ ],\n+ \"Notes on non-blocking sockets\": [\n+ [357, \"notes-on-non-blocking-sockets\"]\n+ ],\n+ \"SSL session\": [\n+ [357, \"ssl-session\"]\n+ ],\n+ \"Security considerations\": [\n+ [357, \"security-considerations\"],\n+ [283, \"security-considerations\"]\n+ ],\n+ \"Best defaults\": [\n+ [357, \"best-defaults\"]\n+ ],\n+ \"Manual settings\": [\n+ [357, \"manual-settings\"]\n+ ],\n+ \"Verifying certificates\": [\n+ [357, \"verifying-certificates\"]\n+ ],\n+ \"Protocol versions\": [\n+ [357, \"protocol-versions\"]\n+ ],\n+ \"Cipher selection\": [\n+ [357, \"cipher-selection\"]\n+ ],\n+ \"Multi-processing\": [\n+ [357, \"multi-processing\"]\n+ ],\n+ \"TLS 1.3\": [\n+ [357, \"tls-1-3\"]\n ],\n \"subprocess \\u2014 Subprocess management\": [\n [364, \"module-subprocess\"]\n ],\n \"Using the subprocess Module\": [\n [364, \"using-the-subprocess-module\"]\n ],\n@@ -69168,624 +69141,347 @@\n ],\n \"Converting an argument sequence to a string on Windows\": [\n [364, \"converting-an-argument-sequence-to-a-string-on-windows\"]\n ],\n \"Disabling use of vfork() or posix_spawn()\": [\n [364, \"disabling-use-of-vfork-or-posix-spawn\"]\n ],\n- \"struct \\u2014 Interpret bytes as packed binary data\": [\n- [363, \"module-struct\"]\n- ],\n- \"Functions and Exceptions\": [\n- [363, \"functions-and-exceptions\"]\n- ],\n- \"Format Strings\": [\n- [363, \"format-strings\"]\n- ],\n- \"Byte Order, Size, and Alignment\": [\n- [363, \"byte-order-size-and-alignment\"]\n- ],\n- \"Format Characters\": [\n- [363, \"format-characters\"]\n- ],\n- \"Applications\": [\n- [363, \"applications\"]\n- ],\n- \"Native Formats\": [\n- [363, \"native-formats\"]\n- ],\n- \"Standard Formats\": [\n- [363, \"standard-formats\"]\n- ],\n- \"The initialization of the sys.path module search path\": [\n- [369, \"the-initialization-of-the-sys-path-module-search-path\"]\n- ],\n- \"_pth files\": [\n- [369, \"pth-files\"]\n- ],\n- \"Embedded Python\": [\n- [369, \"embedded-python\"]\n- ],\n- \"imghdr \\u2014 Determine the type of an image\": [\n- [263, \"module-imghdr\"]\n- ],\n- \"ipaddress \\u2014 IPv4/IPv6 manipulation library\": [\n- [274, \"module-ipaddress\"]\n- ],\n- \"Convenience factory functions\": [\n- [274, \"convenience-factory-functions\"]\n- ],\n- \"IP Addresses\": [\n- [274, \"ip-addresses\"]\n- ],\n- \"Address objects\": [\n- [274, \"address-objects\"]\n- ],\n- \"Conversion to Strings and Integers\": [\n- [274, \"conversion-to-strings-and-integers\"]\n- ],\n- \"Comparison operators\": [\n- [274, \"comparison-operators\"]\n- ],\n- \"Arithmetic operators\": [\n- [274, \"arithmetic-operators\"]\n- ],\n- \"IP Network definitions\": [\n- [274, \"ip-network-definitions\"]\n- ],\n- \"Prefix, net mask and host mask\": [\n- [274, \"prefix-net-mask-and-host-mask\"]\n- ],\n- \"Network objects\": [\n- [274, \"network-objects\"]\n- ],\n- \"Logical operators\": [\n- [274, \"logical-operators\"],\n- [274, \"id3\"]\n- ],\n- \"Networks as containers of addresses\": [\n- [274, \"networks-as-containers-of-addresses\"]\n- ],\n- \"Interface objects\": [\n- [274, \"interface-objects\"]\n- ],\n- \"Other Module Level Functions\": [\n- [274, \"other-module-level-functions\"]\n- ],\n- \"Custom Exceptions\": [\n- [274, \"custom-exceptions\"]\n- ],\n- \"Internet Protocols and Support\": [\n- [271, \"internet-protocols-and-support\"]\n- ],\n- \"http.cookies \\u2014 HTTP state management\": [\n- [258, \"module-http.cookies\"]\n- ],\n- \"Cookie Objects\": [\n- [258, \"cookie-objects\"],\n- [257, \"cookie-objects\"]\n- ],\n- \"Morsel Objects\": [\n- [258, \"morsel-objects\"]\n- ],\n- \"imp \\u2014 Access the import internals\": [\n- [264, \"module-imp\"]\n- ],\n- \"importlib.resources \\u2013 Package resource reading, opening and access\": [\n- [267, \"module-importlib.resources\"]\n- ],\n- \"Deprecated functions\": [\n- [267, \"deprecated-functions\"]\n- ],\n- \"Python Language Services\": [\n- [279, \"python-language-services\"]\n- ],\n- \"hashlib \\u2014 Secure hashes and message digests\": [\n- [249, \"module-hashlib\"]\n- ],\n- \"Hash algorithms\": [\n- [249, \"hash-algorithms\"]\n- ],\n- \"Usage\": [\n- [249, \"usage\"]\n- ],\n- \"Constructors\": [\n- [249, \"constructors\"]\n- ],\n- \"Attributes\": [\n- [249, \"attributes\"],\n- [303, \"attributes\"]\n- ],\n- \"Hash Objects\": [\n- [249, \"hash-objects\"]\n- ],\n- \"SHAKE variable length digests\": [\n- [249, \"shake-variable-length-digests\"]\n- ],\n- \"File hashing\": [\n- [249, \"file-hashing\"]\n- ],\n- \"Key derivation\": [\n- [249, \"key-derivation\"]\n- ],\n- \"BLAKE2\": [\n- [249, \"blake2\"]\n- ],\n- \"Creating hash objects\": [\n- [249, \"creating-hash-objects\"]\n- ],\n- \"Simple hashing\": [\n- [249, \"simple-hashing\"]\n- ],\n- \"Using different digest sizes\": [\n- [249, \"using-different-digest-sizes\"]\n- ],\n- \"Keyed hashing\": [\n- [249, \"keyed-hashing\"]\n- ],\n- \"Randomized hashing\": [\n- [249, \"randomized-hashing\"]\n- ],\n- \"Personalization\": [\n- [249, \"personalization\"]\n- ],\n- \"Tree mode\": [\n- [249, \"tree-mode\"]\n- ],\n- \"Credits\": [\n- [249, \"credits\"]\n- ],\n- \"json \\u2014 JSON encoder and decoder\": [\n- [277, \"module-json\"]\n- ],\n- \"Basic Usage\": [\n- [277, \"basic-usage\"]\n- ],\n- \"Encoders and Decoders\": [\n- [277, \"encoders-and-decoders\"]\n- ],\n- \"Standard Compliance and Interoperability\": [\n- [277, \"standard-compliance-and-interoperability\"]\n- ],\n- \"Character Encodings\": [\n- [277, \"character-encodings\"]\n- ],\n- \"Infinite and NaN Number Values\": [\n- [277, \"infinite-and-nan-number-values\"]\n- ],\n- \"Repeated Names Within an Object\": [\n- [277, \"repeated-names-within-an-object\"]\n- ],\n- \"Top-level Non-Object, Non-Array Values\": [\n- [277, \"top-level-non-object-non-array-values\"]\n- ],\n- \"Implementation Limitations\": [\n- [277, \"implementation-limitations\"]\n- ],\n- \"importlib.metadata \\u2013 Accessing package metadata\": [\n- [266, \"module-importlib.metadata\"]\n- ],\n- \"Entry points\": [\n- [266, \"entry-points\"]\n- ],\n- \"Distribution metadata\": [\n- [266, \"distribution-metadata\"]\n- ],\n- \"Distribution versions\": [\n- [266, \"distribution-versions\"]\n- ],\n- \"Distribution files\": [\n- [266, \"distribution-files\"]\n- ],\n- \"Distribution requirements\": [\n- [266, \"distribution-requirements\"]\n- ],\n- \"Mapping import to distribution packages\": [\n- [266, \"mapping-import-to-distribution-packages\"]\n- ],\n- \"Distributions\": [\n- [266, \"distributions\"]\n- ],\n- \"Distribution Discovery\": [\n- [266, \"distribution-discovery\"]\n- ],\n- \"Extending the search algorithm\": [\n- [266, \"extending-the-search-algorithm\"]\n- ],\n- \"io \\u2014 Core tools for working with streams\": [\n- [273, \"module-io\"]\n- ],\n- \"Text I/O\": [\n- [273, \"text-i-o\"],\n- [273, \"id1\"],\n- [273, \"id3\"]\n- ],\n- \"Binary I/O\": [\n- [273, \"binary-i-o\"],\n- [273, \"id2\"]\n- ],\n- \"Raw I/O\": [\n- [273, \"raw-i-o\"]\n- ],\n- \"Text Encoding\": [\n- [273, \"text-encoding\"]\n- ],\n- \"Opt-in EncodingWarning\": [\n- [273, \"opt-in-encodingwarning\"]\n- ],\n- \"High-level Module Interface\": [\n- [273, \"high-level-module-interface\"]\n- ],\n- \"Class hierarchy\": [\n- [273, \"class-hierarchy\"]\n- ],\n- \"I/O Base Classes\": [\n- [273, \"i-o-base-classes\"]\n- ],\n- \"Raw File I/O\": [\n- [273, \"raw-file-i-o\"]\n- ],\n- \"Buffered Streams\": [\n- [273, \"buffered-streams\"]\n- ],\n- \"Reentrancy\": [\n- [273, \"reentrancy\"]\n- ],\n- \"imaplib \\u2014 IMAP4 protocol client\": [\n- [262, \"module-imaplib\"]\n- ],\n- \"IMAP4 Objects\": [\n- [262, \"imap4-objects\"]\n- ],\n- \"IMAP4 Example\": [\n- [262, \"imap4-example\"]\n- ],\n- \"Internationalization\": [\n- [260, \"internationalization\"]\n- ],\n- \"Menus\": [\n- [261, \"menus\"]\n- ],\n- \"File menu (Shell and Editor)\": [\n- [261, \"file-menu-shell-and-editor\"]\n- ],\n- \"Edit menu (Shell and Editor)\": [\n- [261, \"edit-menu-shell-and-editor\"]\n- ],\n- \"Format menu (Editor window only)\": [\n- [261, \"format-menu-editor-window-only\"]\n- ],\n- \"Run menu (Editor window only)\": [\n- [261, \"run-menu-editor-window-only\"]\n+ \"textwrap \\u2014 Text wrapping and filling\": [\n+ [379, \"module-textwrap\"]\n ],\n- \"Shell menu (Shell window only)\": [\n- [261, \"shell-menu-shell-window-only\"]\n+ \"statistics \\u2014 Mathematical statistics functions\": [\n+ [359, \"module-statistics\"]\n ],\n- \"Debug menu (Shell window only)\": [\n- [261, \"debug-menu-shell-window-only\"]\n+ \"Averages and measures of central location\": [\n+ [359, \"averages-and-measures-of-central-location\"]\n ],\n- \"Options menu (Shell and Editor)\": [\n- [261, \"options-menu-shell-and-editor\"]\n+ \"Measures of spread\": [\n+ [359, \"measures-of-spread\"]\n ],\n- \"Window menu (Shell and Editor)\": [\n- [261, \"window-menu-shell-and-editor\"]\n+ \"Statistics for relations between two inputs\": [\n+ [359, \"statistics-for-relations-between-two-inputs\"]\n ],\n- \"Help menu (Shell and Editor)\": [\n- [261, \"help-menu-shell-and-editor\"]\n+ \"Function details\": [\n+ [359, \"function-details\"]\n ],\n- \"Context menus\": [\n- [261, \"context-menus\"]\n+ \"NormalDist objects\": [\n+ [359, \"normaldist-objects\"]\n ],\n- \"Editing and Navigation\": [\n- [261, \"editing-and-navigation\"]\n+ \"NormalDist Examples and Recipes\": [\n+ [359, \"normaldist-examples-and-recipes\"]\n ],\n- \"Editor windows\": [\n- [261, \"editor-windows\"]\n+ \"Text Processing Services\": [\n+ [378, \"text-processing-services\"]\n ],\n- \"Key bindings\": [\n- [261, \"key-bindings\"]\n+ \"telnetlib \\u2014 Telnet client\": [\n+ [374, \"module-telnetlib\"]\n ],\n- \"Automatic indentation\": [\n- [261, \"automatic-indentation\"]\n+ \"Telnet Objects\": [\n+ [374, \"telnet-objects\"]\n ],\n- \"Completions\": [\n- [261, \"completions\"]\n+ \"Telnet Example\": [\n+ [374, \"telnet-example\"]\n ],\n- \"Calltips\": [\n- [261, \"calltips\"]\n+ \"Graphical User Interfaces with Tk\": [\n+ [383, \"graphical-user-interfaces-with-tk\"]\n ],\n- \"Code Context\": [\n- [261, \"code-context\"]\n+ \"stat \\u2014 Interpreting stat() results\": [\n+ [358, \"module-stat\"]\n ],\n- \"Shell window\": [\n- [261, \"shell-window\"]\n+ \"socketserver \\u2014 A framework for network servers\": [\n+ [354, \"module-socketserver\"]\n ],\n- \"Text colors\": [\n- [261, \"text-colors\"]\n+ \"Server Creation Notes\": [\n+ [354, \"server-creation-notes\"]\n ],\n- \"Startup and Code Execution\": [\n- [261, \"startup-and-code-execution\"]\n+ \"Request Handler Objects\": [\n+ [354, \"request-handler-objects\"]\n ],\n- \"Startup failure\": [\n- [261, \"startup-failure\"]\n+ \"socketserver.TCPServer Example\": [\n+ [354, \"socketserver-tcpserver-example\"]\n ],\n- \"Running user code\": [\n- [261, \"running-user-code\"]\n+ \"socketserver.UDPServer Example\": [\n+ [354, \"socketserver-udpserver-example\"]\n ],\n- \"User output in Shell\": [\n- [261, \"user-output-in-shell\"]\n+ \"Asynchronous Mixins\": [\n+ [354, \"asynchronous-mixins\"]\n ],\n- \"Developing tkinter applications\": [\n- [261, \"developing-tkinter-applications\"]\n+ \"marshal \\u2014 Internal Python object serialization\": [\n+ [289, \"module-marshal\"]\n ],\n- \"Running without a subprocess\": [\n- [261, \"running-without-a-subprocess\"]\n+ \"multiprocessing \\u2014 Process-based parallelism\": [\n+ [298, \"module-multiprocessing\"]\n ],\n- \"Help and Preferences\": [\n- [261, \"help-and-preferences\"]\n+ \"The Process class\": [\n+ [298, \"the-process-class\"]\n ],\n- \"Help sources\": [\n- [261, \"help-sources\"]\n+ \"Contexts and start methods\": [\n+ [298, \"contexts-and-start-methods\"]\n ],\n- \"Setting preferences\": [\n- [261, \"setting-preferences\"]\n+ \"Exchanging objects between processes\": [\n+ [298, \"exchanging-objects-between-processes\"]\n ],\n- \"IDLE on macOS\": [\n- [261, \"idle-on-macos\"]\n+ \"Synchronization between processes\": [\n+ [298, \"synchronization-between-processes\"]\n ],\n- \"Extensions\": [\n- [261, \"extensions\"]\n+ \"Sharing state between processes\": [\n+ [298, \"sharing-state-between-processes\"]\n ],\n- \"idlelib\": [\n- [261, \"module-idlelib\"]\n+ \"Using a pool of workers\": [\n+ [298, \"using-a-pool-of-workers\"]\n ],\n- \"html \\u2014 HyperText Markup Language support\": [\n- [252, \"module-html\"]\n+ \"Process and exceptions\": [\n+ [298, \"process-and-exceptions\"]\n ],\n- \"html.parser \\u2014 Simple HTML and XHTML parser\": [\n- [254, \"module-html.parser\"]\n+ \"Pipes and Queues\": [\n+ [298, \"pipes-and-queues\"]\n ],\n- \"Example HTML Parser Application\": [\n- [254, \"example-html-parser-application\"]\n+ \"Connection Objects\": [\n+ [298, \"connection-objects\"]\n ],\n- \"HTMLParser Methods\": [\n- [254, \"htmlparser-methods\"]\n+ \"Synchronization primitives\": [\n+ [298, \"synchronization-primitives\"]\n ],\n- \"hmac \\u2014 Keyed-Hashing for Message Authentication\": [\n- [251, \"module-hmac\"]\n+ \"Shared ctypes Objects\": [\n+ [298, \"shared-ctypes-objects\"]\n ],\n- \"Networking and Interprocess Communication\": [\n- [275, \"networking-and-interprocess-communication\"]\n+ \"The multiprocessing.sharedctypes module\": [\n+ [298, \"module-multiprocessing.sharedctypes\"]\n ],\n- \"Notes on availability\": [\n- [272, \"notes-on-availability\"]\n+ \"Managers\": [\n+ [298, \"managers\"]\n ],\n- \"WebAssembly platforms\": [\n- [272, \"webassembly-platforms\"]\n+ \"Customized managers\": [\n+ [298, \"customized-managers\"]\n ],\n- \"http.server \\u2014 HTTP servers\": [\n- [259, \"module-http.server\"]\n+ \"Using a remote manager\": [\n+ [298, \"using-a-remote-manager\"]\n ],\n- \"heapq \\u2014 Heap queue algorithm\": [\n- [250, \"module-heapq\"]\n+ \"Proxy Objects\": [\n+ [298, \"proxy-objects\"]\n ],\n- \"Priority Queue Implementation Notes\": [\n- [250, \"priority-queue-implementation-notes\"]\n+ \"Cleanup\": [\n+ [298, \"cleanup\"],\n+ [307, \"cleanup\"]\n ],\n- \"Theory\": [\n- [250, \"theory\"]\n+ \"Process Pools\": [\n+ [298, \"module-multiprocessing.pool\"]\n ],\n- \"html.entities \\u2014 Definitions of HTML general entities\": [\n- [253, \"module-html.entities\"]\n+ \"Listeners and Clients\": [\n+ [298, \"module-multiprocessing.connection\"]\n ],\n- \"The Python Standard Library\": [\n- [269, \"the-python-standard-library\"]\n+ \"Address Formats\": [\n+ [298, \"address-formats\"]\n ],\n- \"grp \\u2014 The group database\": [\n- [247, \"module-grp\"]\n+ \"Authentication keys\": [\n+ [298, \"authentication-keys\"]\n ],\n- \"importlib \\u2014 The implementation of import\": [\n- [265, \"module-importlib\"]\n+ \"The multiprocessing.dummy module\": [\n+ [298, \"module-multiprocessing.dummy\"]\n ],\n- \"importlib.abc \\u2013 Abstract base classes related to import\": [\n- [265, \"module-importlib.abc\"]\n+ \"Programming guidelines\": [\n+ [298, \"programming-guidelines\"]\n ],\n- \"importlib.machinery \\u2013 Importers and path hooks\": [\n- [265, \"module-importlib.machinery\"]\n+ \"All start methods\": [\n+ [298, \"all-start-methods\"]\n ],\n- \"importlib.util \\u2013 Utility code for importers\": [\n- [265, \"module-importlib.util\"]\n+ \"The spawn and forkserver start methods\": [\n+ [298, \"the-spawn-and-forkserver-start-methods\"]\n ],\n- \"Importing programmatically\": [\n- [265, \"importing-programmatically\"]\n+ \"Data Persistence\": [\n+ [313, \"data-persistence\"]\n ],\n- \"Checking if a module can be imported\": [\n- [265, \"checking-if-a-module-can-be-imported\"]\n+ \"logging \\u2014 Logging facility for Python\": [\n+ [282, \"module-logging\"]\n ],\n- \"Importing a source file directly\": [\n- [265, \"importing-a-source-file-directly\"]\n+ \"Important\": [\n+ [282, \"index-0\"],\n+ [284, null],\n+ [283, null],\n+ [225, null]\n ],\n- \"Implementing lazy imports\": [\n- [265, \"implementing-lazy-imports\"]\n+ \"Logger Objects\": [\n+ [282, \"logger-objects\"]\n ],\n- \"Setting up an importer\": [\n- [265, \"setting-up-an-importer\"]\n+ \"Handler Objects\": [\n+ [282, \"handler-objects\"]\n ],\n- \"Approximating importlib.import_module()\": [\n- [265, \"approximating-importlib-import-module\"]\n+ \"Formatter Objects\": [\n+ [282, \"formatter-objects\"]\n ],\n- \"http \\u2014 HTTP modules\": [\n- [255, \"module-http\"]\n+ \"Filter Objects\": [\n+ [282, \"filter-objects\"]\n ],\n- \"HTTP status codes\": [\n- [255, \"http-status-codes\"]\n+ \"LogRecord Objects\": [\n+ [282, \"logrecord-objects\"]\n ],\n- \"HTTP methods\": [\n- [255, \"http-methods\"]\n+ \"LogRecord attributes\": [\n+ [282, \"logrecord-attributes\"]\n ],\n- \"keyword \\u2014 Testing for Python keywords\": [\n- [278, \"module-keyword\"]\n+ \"LoggerAdapter Objects\": [\n+ [282, \"loggeradapter-objects\"]\n ],\n- \"gzip \\u2014 Support for gzip files\": [\n- [248, \"module-gzip\"]\n+ \"Thread Safety\": [\n+ [282, \"thread-safety\"]\n ],\n- \"Examples of usage\": [\n- [248, \"examples-of-usage\"],\n- [162, \"examples-of-usage\"]\n+ \"Module-Level Attributes\": [\n+ [282, \"module-level-attributes\"]\n ],\n- \"graphlib \\u2014 Functionality to operate with graph-like structures\": [\n- [246, \"module-graphlib\"]\n+ \"Integration with the warnings module\": [\n+ [282, \"integration-with-the-warnings-module\"]\n ],\n- \"http.client \\u2014 HTTP protocol client\": [\n- [256, \"module-http.client\"]\n+ \"lzma \\u2014 Compression using the LZMA algorithm\": [\n+ [285, \"module-lzma\"]\n ],\n- \"HTTPConnection Objects\": [\n- [256, \"httpconnection-objects\"]\n+ \"Reading and writing compressed files\": [\n+ [285, \"reading-and-writing-compressed-files\"]\n ],\n- \"HTTPResponse Objects\": [\n- [256, \"httpresponse-objects\"]\n+ \"Compressing and decompressing data in memory\": [\n+ [285, \"compressing-and-decompressing-data-in-memory\"]\n ],\n- \"HTTPMessage Objects\": [\n- [256, \"httpmessage-objects\"]\n+ \"Specifying custom filter chains\": [\n+ [285, \"specifying-custom-filter-chains\"]\n ],\n- \"itertools \\u2014 Functions creating iterators for efficient looping\": [\n- [276, \"module-itertools\"]\n+ \"multiprocessing.shared_memory \\u2014 Shared memory for direct access across processes\": [\n+ [299, \"module-multiprocessing.shared_memory\"]\n ],\n- \"Itertool functions\": [\n- [276, \"itertool-functions\"]\n+ \"modulefinder \\u2014 Find modules used by a script\": [\n+ [294, \"module-modulefinder\"]\n ],\n- \"Itertools Recipes\": [\n- [276, \"itertools-recipes\"]\n+ \"Example usage of ModuleFinder\": [\n+ [294, \"example-usage-of-modulefinder\"]\n ],\n- \"glob \\u2014 Unix style pathname pattern expansion\": [\n- [245, \"module-glob\"]\n+ \"logging.handlers \\u2014 Logging handlers\": [\n+ [284, \"module-logging.handlers\"]\n ],\n- \"importlib.resources.abc \\u2013 Abstract base classes for resources\": [\n- [268, \"module-importlib.resources.abc\"]\n+ \"StreamHandler\": [\n+ [284, \"streamhandler\"]\n ],\n- \"inspect \\u2014 Inspect live objects\": [\n- [270, \"inspect-inspect-live-objects\"]\n+ \"FileHandler\": [\n+ [284, \"filehandler\"]\n ],\n- \"Types and members\": [\n- [270, \"types-and-members\"]\n+ \"NullHandler\": [\n+ [284, \"nullhandler\"]\n ],\n- \"Retrieving source code\": [\n- [270, \"retrieving-source-code\"]\n+ \"WatchedFileHandler\": [\n+ [284, \"watchedfilehandler\"]\n ],\n- \"Introspecting callables with the Signature object\": [\n- [270, \"introspecting-callables-with-the-signature-object\"]\n+ \"BaseRotatingHandler\": [\n+ [284, \"baserotatinghandler\"]\n ],\n- \"The interpreter stack\": [\n- [270, \"the-interpreter-stack\"]\n+ \"RotatingFileHandler\": [\n+ [284, \"rotatingfilehandler\"]\n ],\n- \"Fetching attributes statically\": [\n- [270, \"fetching-attributes-statically\"]\n+ \"TimedRotatingFileHandler\": [\n+ [284, \"timedrotatingfilehandler\"]\n ],\n- \"Current State of Generators and Coroutines\": [\n- [270, \"current-state-of-generators-and-coroutines\"]\n+ \"SocketHandler\": [\n+ [284, \"sockethandler\"]\n ],\n- \"Code Objects Bit Flags\": [\n- [270, \"code-objects-bit-flags\"]\n+ \"DatagramHandler\": [\n+ [284, \"datagramhandler\"]\n ],\n- \"http.cookiejar \\u2014 Cookie handling for HTTP clients\": [\n- [257, \"module-http.cookiejar\"]\n+ \"SysLogHandler\": [\n+ [284, \"sysloghandler\"]\n ],\n- \"CookieJar and FileCookieJar Objects\": [\n- [257, \"cookiejar-and-filecookiejar-objects\"]\n+ \"NTEventLogHandler\": [\n+ [284, \"nteventloghandler\"]\n ],\n- \"FileCookieJar subclasses and co-operation with web browsers\": [\n- [257, \"filecookiejar-subclasses-and-co-operation-with-web-browsers\"]\n+ \"SMTPHandler\": [\n+ [284, \"smtphandler\"]\n ],\n- \"CookiePolicy Objects\": [\n- [257, \"cookiepolicy-objects\"]\n+ \"MemoryHandler\": [\n+ [284, \"memoryhandler\"]\n ],\n- \"DefaultCookiePolicy Objects\": [\n- [257, \"defaultcookiepolicy-objects\"]\n+ \"HTTPHandler\": [\n+ [284, \"httphandler\"]\n ],\n- \"nis \\u2014 Interface to Sun\\u2019s NIS (Yellow Pages)\": [\n- [302, \"module-nis\"]\n+ \"QueueHandler\": [\n+ [284, \"queuehandler\"]\n ],\n- \"multiprocessing \\u2014 Process-based parallelism\": [\n- [298, \"module-multiprocessing\"]\n+ \"QueueListener\": [\n+ [284, \"queuelistener\"]\n ],\n- \"The Process class\": [\n- [298, \"the-process-class\"]\n+ \"pickle \\u2014 Python object serialization\": [\n+ [314, \"module-pickle\"]\n ],\n- \"Contexts and start methods\": [\n- [298, \"contexts-and-start-methods\"]\n+ \"Relationship to other Python modules\": [\n+ [314, \"relationship-to-other-python-modules\"]\n ],\n- \"Exchanging objects between processes\": [\n- [298, \"exchanging-objects-between-processes\"]\n+ \"Comparison with marshal\": [\n+ [314, \"comparison-with-marshal\"]\n ],\n- \"Synchronization between processes\": [\n- [298, \"synchronization-between-processes\"]\n+ \"Comparison with json\": [\n+ [314, \"comparison-with-json\"]\n ],\n- \"Sharing state between processes\": [\n- [298, \"sharing-state-between-processes\"]\n+ \"Data stream format\": [\n+ [314, \"data-stream-format\"]\n ],\n- \"Using a pool of workers\": [\n- [298, \"using-a-pool-of-workers\"]\n+ \"Module Interface\": [\n+ [314, \"module-interface\"]\n ],\n- \"Process and exceptions\": [\n- [298, \"process-and-exceptions\"]\n+ \"What can be pickled and unpickled?\": [\n+ [314, \"what-can-be-pickled-and-unpickled\"]\n ],\n- \"Pipes and Queues\": [\n- [298, \"pipes-and-queues\"]\n+ \"Pickling Class Instances\": [\n+ [314, \"pickling-class-instances\"]\n ],\n- \"Connection Objects\": [\n- [298, \"connection-objects\"]\n+ \"Persistence of External Objects\": [\n+ [314, \"persistence-of-external-objects\"]\n ],\n- \"Synchronization primitives\": [\n- [298, \"synchronization-primitives\"]\n+ \"Dispatch Tables\": [\n+ [314, \"dispatch-tables\"]\n ],\n- \"Shared ctypes Objects\": [\n- [298, \"shared-ctypes-objects\"]\n+ \"Handling Stateful Objects\": [\n+ [314, \"handling-stateful-objects\"]\n ],\n- \"The multiprocessing.sharedctypes module\": [\n- [298, \"module-multiprocessing.sharedctypes\"]\n+ \"Custom Reduction for Types, Functions, and Other Objects\": [\n+ [314, \"custom-reduction-for-types-functions-and-other-objects\"]\n ],\n- \"Managers\": [\n- [298, \"managers\"]\n+ \"Out-of-band Buffers\": [\n+ [314, \"out-of-band-buffers\"]\n ],\n- \"Customized managers\": [\n- [298, \"customized-managers\"]\n+ \"Provider API\": [\n+ [314, \"provider-api\"]\n ],\n- \"Using a remote manager\": [\n- [298, \"using-a-remote-manager\"]\n+ \"Consumer API\": [\n+ [314, \"consumer-api\"]\n ],\n- \"Proxy Objects\": [\n- [298, \"proxy-objects\"]\n+ \"Restricting Globals\": [\n+ [314, \"restricting-globals\"]\n ],\n- \"Cleanup\": [\n- [298, \"cleanup\"],\n- [307, \"cleanup\"]\n+ \"Internet Data Handling\": [\n+ [300, \"internet-data-handling\"]\n ],\n- \"Process Pools\": [\n- [298, \"module-multiprocessing.pool\"]\n+ \"os.path \\u2014 Common pathname manipulations\": [\n+ [309, \"module-os.path\"]\n ],\n- \"Listeners and Clients\": [\n- [298, \"module-multiprocessing.connection\"]\n+ \"math \\u2014 Mathematical functions\": [\n+ [290, \"module-math\"]\n ],\n- \"Address Formats\": [\n- [298, \"address-formats\"]\n+ \"Number-theoretic and representation functions\": [\n+ [290, \"number-theoretic-and-representation-functions\"]\n ],\n- \"Authentication keys\": [\n- [298, \"authentication-keys\"]\n+ \"Power and logarithmic functions\": [\n+ [290, \"power-and-logarithmic-functions\"],\n+ [167, \"power-and-logarithmic-functions\"]\n ],\n- \"The multiprocessing.dummy module\": [\n- [298, \"module-multiprocessing.dummy\"]\n+ \"Trigonometric functions\": [\n+ [290, \"trigonometric-functions\"],\n+ [167, \"trigonometric-functions\"]\n ],\n- \"Programming guidelines\": [\n- [298, \"programming-guidelines\"]\n+ \"Angular conversion\": [\n+ [290, \"angular-conversion\"]\n ],\n- \"All start methods\": [\n- [298, \"all-start-methods\"]\n+ \"Hyperbolic functions\": [\n+ [290, \"hyperbolic-functions\"],\n+ [167, \"hyperbolic-functions\"]\n ],\n- \"The spawn and forkserver start methods\": [\n- [298, \"the-spawn-and-forkserver-start-methods\"]\n+ \"Special functions\": [\n+ [290, \"special-functions\"]\n ],\n \"optparse \\u2014 Parser for command line options\": [\n [307, \"module-optparse\"]\n ],\n \"Terminology\": [\n [307, \"terminology\"]\n ],\n@@ -69890,14 +69586,88 @@\n ],\n \"Adding new types\": [\n [307, \"adding-new-types\"]\n ],\n \"Adding new actions\": [\n [307, \"adding-new-actions\"]\n ],\n+ \"pathlib \\u2014 Object-oriented filesystem paths\": [\n+ [311, \"module-pathlib\"]\n+ ],\n+ \"Basic use\": [\n+ [311, \"basic-use\"]\n+ ],\n+ \"Pure paths\": [\n+ [311, \"pure-paths\"]\n+ ],\n+ \"General properties\": [\n+ [311, \"general-properties\"]\n+ ],\n+ \"Accessing individual parts\": [\n+ [311, \"accessing-individual-parts\"]\n+ ],\n+ \"Methods and properties\": [\n+ [311, \"methods-and-properties\"]\n+ ],\n+ \"Concrete paths\": [\n+ [311, \"concrete-paths\"]\n+ ],\n+ \"Correspondence to tools in the os module\": [\n+ [311, \"correspondence-to-tools-in-the-os-module\"]\n+ ],\n+ \"Structured Markup Processing Tools\": [\n+ [288, \"structured-markup-processing-tools\"]\n+ ],\n+ \"nntplib \\u2014 NNTP protocol client\": [\n+ [303, \"module-nntplib\"]\n+ ],\n+ \"NNTP Objects\": [\n+ [303, \"nntp-objects\"]\n+ ],\n+ \"Attributes\": [\n+ [303, \"attributes\"],\n+ [249, \"attributes\"]\n+ ],\n+ \"Utility functions\": [\n+ [303, \"utility-functions\"],\n+ [189, \"utility-functions\"]\n+ ],\n+ \"mmap \\u2014 Memory-mapped file support\": [\n+ [293, \"module-mmap\"]\n+ ],\n+ \"MADV_* Constants\": [\n+ [293, \"madv-constants\"]\n+ ],\n+ \"MAP_* Constants\": [\n+ [293, \"map-constants\"]\n+ ],\n+ \"mimetypes \\u2014 Map filenames to MIME types\": [\n+ [291, \"module-mimetypes\"]\n+ ],\n+ \"MimeTypes Objects\": [\n+ [291, \"mimetypes-objects\"]\n+ ],\n+ \"operator \\u2014 Standard operators as functions\": [\n+ [306, \"module-operator\"]\n+ ],\n+ \"Mapping Operators to Functions\": [\n+ [306, \"mapping-operators-to-functions\"]\n+ ],\n+ \"In-place Operators\": [\n+ [306, \"in-place-operators\"]\n+ ],\n+ \"ossaudiodev \\u2014 Access to OSS-compatible audio devices\": [\n+ [310, \"module-ossaudiodev\"]\n+ ],\n+ \"Audio Device Objects\": [\n+ [310, \"audio-device-objects\"]\n+ ],\n+ \"Mixer Device Objects\": [\n+ [310, \"mixer-device-objects\"]\n+ ],\n \"pdb \\u2014 The Python Debugger\": [\n [312, \"module-pdb\"]\n ],\n \"Debugger Commands\": [\n [312, \"debugger-commands\"]\n ],\n \"locale \\u2014 Internationalization services\": [\n@@ -69908,92 +69678,128 @@\n ],\n \"For extension writers and programs that embed Python\": [\n [281, \"for-extension-writers-and-programs-that-embed-python\"]\n ],\n \"Access to message catalogs\": [\n [281, \"access-to-message-catalogs\"]\n ],\n- \"Multimedia Services\": [\n- [292, \"multimedia-services\"]\n+ \"linecache \\u2014 Random access to text lines\": [\n+ [280, \"module-linecache\"]\n ],\n- \"Structured Markup Processing Tools\": [\n- [288, \"structured-markup-processing-tools\"]\n+ \"mailcap \\u2014 Mailcap file handling\": [\n+ [287, \"module-mailcap\"]\n ],\n- \"mmap \\u2014 Memory-mapped file support\": [\n- [293, \"module-mmap\"]\n+ \"os \\u2014 Miscellaneous operating system interfaces\": [\n+ [308, \"module-os\"]\n ],\n- \"MADV_* Constants\": [\n- [293, \"madv-constants\"]\n+ \"File Names, Command Line Arguments, and Environment Variables\": [\n+ [308, \"file-names-command-line-arguments-and-environment-variables\"]\n ],\n- \"MAP_* Constants\": [\n- [293, \"map-constants\"]\n+ \"Python UTF-8 Mode\": [\n+ [308, \"python-utf-8-mode\"]\n ],\n- \"msvcrt \\u2014 Useful routines from the MS VC++ runtime\": [\n- [297, \"module-msvcrt\"]\n+ \"Process Parameters\": [\n+ [308, \"process-parameters\"]\n ],\n- \"File Operations\": [\n- [297, \"file-operations\"]\n+ \"File Object Creation\": [\n+ [308, \"file-object-creation\"]\n ],\n- \"Console I/O\": [\n- [297, \"console-i-o\"]\n+ \"File Descriptor Operations\": [\n+ [308, \"file-descriptor-operations\"]\n ],\n- \"Other Functions\": [\n- [297, \"other-functions\"]\n+ \"Querying the size of a terminal\": [\n+ [308, \"querying-the-size-of-a-terminal\"]\n ],\n- \"lzma \\u2014 Compression using the LZMA algorithm\": [\n- [285, \"module-lzma\"]\n+ \"Inheritance of File Descriptors\": [\n+ [308, \"inheritance-of-file-descriptors\"]\n ],\n- \"Reading and writing compressed files\": [\n- [285, \"reading-and-writing-compressed-files\"]\n+ \"Files and Directories\": [\n+ [308, \"files-and-directories\"]\n ],\n- \"Compressing and decompressing data in memory\": [\n- [285, \"compressing-and-decompressing-data-in-memory\"]\n+ \"Linux extended attributes\": [\n+ [308, \"linux-extended-attributes\"]\n ],\n- \"Specifying custom filter chains\": [\n- [285, \"specifying-custom-filter-chains\"]\n+ \"Process Management\": [\n+ [308, \"process-management\"]\n ],\n- \"msilib \\u2014 Read and write Microsoft Installer files\": [\n- [296, \"module-msilib\"]\n+ \"Interface to the scheduler\": [\n+ [308, \"interface-to-the-scheduler\"]\n ],\n- \"Database Objects\": [\n- [296, \"database-objects\"]\n+ \"Miscellaneous System Information\": [\n+ [308, \"miscellaneous-system-information\"]\n ],\n- \"View Objects\": [\n- [296, \"view-objects\"]\n+ \"netrc \\u2014 netrc file processing\": [\n+ [301, \"module-netrc\"]\n ],\n- \"Summary Information Objects\": [\n- [296, \"summary-information-objects\"]\n+ \"netrc Objects\": [\n+ [301, \"netrc-objects\"]\n ],\n- \"Record Objects\": [\n- [296, \"record-objects\"]\n+ \"Numeric and Mathematical Modules\": [\n+ [305, \"numeric-and-mathematical-modules\"]\n ],\n- \"Errors\": [\n- [296, \"errors\"]\n+ \"numbers \\u2014 Numeric abstract base classes\": [\n+ [304, \"module-numbers\"]\n ],\n- \"CAB Objects\": [\n- [296, \"cab-objects\"]\n+ \"The numeric tower\": [\n+ [304, \"the-numeric-tower\"]\n ],\n- \"Directory Objects\": [\n- [296, \"directory-objects\"]\n+ \"Notes for type implementors\": [\n+ [304, \"notes-for-type-implementors\"]\n ],\n- \"GUI classes\": [\n- [296, \"gui-classes\"]\n+ \"Adding More Numeric ABCs\": [\n+ [304, \"adding-more-numeric-abcs\"]\n ],\n- \"Precomputed tables\": [\n- [296, \"precomputed-tables\"]\n+ \"Implementing the arithmetic operations\": [\n+ [304, \"implementing-the-arithmetic-operations\"]\n+ ],\n+ \"mailbox \\u2014 Manipulate mailboxes in various formats\": [\n+ [286, \"module-mailbox\"]\n+ ],\n+ \"Mailbox objects\": [\n+ [286, \"mailbox-objects\"]\n+ ],\n+ \"Maildir objects\": [\n+ [286, \"maildir-objects\"]\n+ ],\n+ \"mbox objects\": [\n+ [286, \"mbox-objects\"]\n+ ],\n+ \"MH objects\": [\n+ [286, \"mh-objects\"]\n+ ],\n+ \"Babyl objects\": [\n+ [286, \"babyl-objects\"]\n+ ],\n+ \"MMDF objects\": [\n+ [286, \"mmdf-objects\"]\n+ ],\n+ \"Message objects\": [\n+ [286, \"message-objects\"]\n+ ],\n+ \"MaildirMessage objects\": [\n+ [286, \"maildirmessage-objects\"]\n+ ],\n+ \"mboxMessage objects\": [\n+ [286, \"mboxmessage-objects\"]\n+ ],\n+ \"MHMessage objects\": [\n+ [286, \"mhmessage-objects\"]\n+ ],\n+ \"BabylMessage objects\": [\n+ [286, \"babylmessage-objects\"]\n+ ],\n+ \"MMDFMessage objects\": [\n+ [286, \"mmdfmessage-objects\"]\n+ ],\n+ \"nis \\u2014 Interface to Sun\\u2019s NIS (Yellow Pages)\": [\n+ [302, \"module-nis\"]\n ],\n \"logging.config \\u2014 Logging configuration\": [\n [283, \"module-logging.config\"]\n ],\n- \"Important\": [\n- [283, null],\n- [284, null],\n- [282, \"index-0\"],\n- [225, null]\n- ],\n \"Configuration functions\": [\n [283, \"configuration-functions\"]\n ],\n \"Configuration dictionary schema\": [\n [283, \"configuration-dictionary-schema\"]\n ],\n \"Dictionary Schema Details\": [\n@@ -70019,531 +69825,565 @@\n ],\n \"Import resolution and custom importers\": [\n [283, \"import-resolution-and-custom-importers\"]\n ],\n \"Configuration file format\": [\n [283, \"configuration-file-format\"]\n ],\n- \"linecache \\u2014 Random access to text lines\": [\n- [280, \"module-linecache\"]\n+ \"msvcrt \\u2014 Useful routines from the MS VC++ runtime\": [\n+ [297, \"module-msvcrt\"]\n ],\n- \"netrc \\u2014 netrc file processing\": [\n- [301, \"module-netrc\"]\n+ \"File Operations\": [\n+ [297, \"file-operations\"]\n ],\n- \"netrc Objects\": [\n- [301, \"netrc-objects\"]\n+ \"Console I/O\": [\n+ [297, \"console-i-o\"]\n ],\n- \"marshal \\u2014 Internal Python object serialization\": [\n- [289, \"module-marshal\"]\n+ \"Other Functions\": [\n+ [297, \"other-functions\"]\n ],\n- \"pickle \\u2014 Python object serialization\": [\n- [314, \"module-pickle\"]\n+ \"Multimedia Services\": [\n+ [292, \"multimedia-services\"]\n ],\n- \"Relationship to other Python modules\": [\n- [314, \"relationship-to-other-python-modules\"]\n+ \"msilib \\u2014 Read and write Microsoft Installer files\": [\n+ [296, \"module-msilib\"]\n ],\n- \"Comparison with marshal\": [\n- [314, \"comparison-with-marshal\"]\n+ \"Database Objects\": [\n+ [296, \"database-objects\"]\n ],\n- \"Comparison with json\": [\n- [314, \"comparison-with-json\"]\n+ \"View Objects\": [\n+ [296, \"view-objects\"]\n ],\n- \"Data stream format\": [\n- [314, \"data-stream-format\"]\n+ \"Summary Information Objects\": [\n+ [296, \"summary-information-objects\"]\n ],\n- \"Module Interface\": [\n- [314, \"module-interface\"]\n+ \"Record Objects\": [\n+ [296, \"record-objects\"]\n ],\n- \"What can be pickled and unpickled?\": [\n- [314, \"what-can-be-pickled-and-unpickled\"]\n+ \"Errors\": [\n+ [296, \"errors\"]\n ],\n- \"Pickling Class Instances\": [\n- [314, \"pickling-class-instances\"]\n+ \"CAB Objects\": [\n+ [296, \"cab-objects\"]\n ],\n- \"Persistence of External Objects\": [\n- [314, \"persistence-of-external-objects\"]\n+ \"Directory Objects\": [\n+ [296, \"directory-objects\"]\n ],\n- \"Dispatch Tables\": [\n- [314, \"dispatch-tables\"]\n+ \"GUI classes\": [\n+ [296, \"gui-classes\"]\n ],\n- \"Handling Stateful Objects\": [\n- [314, \"handling-stateful-objects\"]\n+ \"Precomputed tables\": [\n+ [296, \"precomputed-tables\"]\n ],\n- \"Custom Reduction for Types, Functions, and Other Objects\": [\n- [314, \"custom-reduction-for-types-functions-and-other-objects\"]\n+ \"http.cookies \\u2014 HTTP state management\": [\n+ [258, \"module-http.cookies\"]\n ],\n- \"Out-of-band Buffers\": [\n- [314, \"out-of-band-buffers\"]\n+ \"Cookie Objects\": [\n+ [258, \"cookie-objects\"],\n+ [257, \"cookie-objects\"]\n ],\n- \"Provider API\": [\n- [314, \"provider-api\"]\n+ \"Morsel Objects\": [\n+ [258, \"morsel-objects\"]\n ],\n- \"Consumer API\": [\n- [314, \"consumer-api\"]\n+ \"importlib.resources \\u2013 Package resource reading, opening and access\": [\n+ [267, \"module-importlib.resources\"]\n ],\n- \"Restricting Globals\": [\n- [314, \"restricting-globals\"]\n+ \"Deprecated functions\": [\n+ [267, \"deprecated-functions\"]\n ],\n- \"modulefinder \\u2014 Find modules used by a script\": [\n- [294, \"module-modulefinder\"]\n+ \"The Python Standard Library\": [\n+ [269, \"the-python-standard-library\"]\n ],\n- \"Example usage of ModuleFinder\": [\n- [294, \"example-usage-of-modulefinder\"]\n+ \"glob \\u2014 Unix style pathname pattern expansion\": [\n+ [245, \"module-glob\"]\n ],\n- \"Internet Data Handling\": [\n- [300, \"internet-data-handling\"]\n+ \"hashlib \\u2014 Secure hashes and message digests\": [\n+ [249, \"module-hashlib\"]\n ],\n- \"logging.handlers \\u2014 Logging handlers\": [\n- [284, \"module-logging.handlers\"]\n+ \"Hash algorithms\": [\n+ [249, \"hash-algorithms\"]\n ],\n- \"StreamHandler\": [\n- [284, \"streamhandler\"]\n+ \"Usage\": [\n+ [249, \"usage\"]\n ],\n- \"FileHandler\": [\n- [284, \"filehandler\"]\n+ \"Constructors\": [\n+ [249, \"constructors\"]\n ],\n- \"NullHandler\": [\n- [284, \"nullhandler\"]\n+ \"Hash Objects\": [\n+ [249, \"hash-objects\"]\n ],\n- \"WatchedFileHandler\": [\n- [284, \"watchedfilehandler\"]\n+ \"SHAKE variable length digests\": [\n+ [249, \"shake-variable-length-digests\"]\n ],\n- \"BaseRotatingHandler\": [\n- [284, \"baserotatinghandler\"]\n+ \"File hashing\": [\n+ [249, \"file-hashing\"]\n ],\n- \"RotatingFileHandler\": [\n- [284, \"rotatingfilehandler\"]\n+ \"Key derivation\": [\n+ [249, \"key-derivation\"]\n ],\n- \"TimedRotatingFileHandler\": [\n- [284, \"timedrotatingfilehandler\"]\n+ \"BLAKE2\": [\n+ [249, \"blake2\"]\n ],\n- \"SocketHandler\": [\n- [284, \"sockethandler\"]\n+ \"Creating hash objects\": [\n+ [249, \"creating-hash-objects\"]\n ],\n- \"DatagramHandler\": [\n- [284, \"datagramhandler\"]\n+ \"Simple hashing\": [\n+ [249, \"simple-hashing\"]\n ],\n- \"SysLogHandler\": [\n- [284, \"sysloghandler\"]\n+ \"Using different digest sizes\": [\n+ [249, \"using-different-digest-sizes\"]\n ],\n- \"NTEventLogHandler\": [\n- [284, \"nteventloghandler\"]\n+ \"Keyed hashing\": [\n+ [249, \"keyed-hashing\"]\n ],\n- \"SMTPHandler\": [\n- [284, \"smtphandler\"]\n+ \"Randomized hashing\": [\n+ [249, \"randomized-hashing\"]\n ],\n- \"MemoryHandler\": [\n- [284, \"memoryhandler\"]\n+ \"Personalization\": [\n+ [249, \"personalization\"]\n ],\n- \"HTTPHandler\": [\n- [284, \"httphandler\"]\n+ \"Tree mode\": [\n+ [249, \"tree-mode\"]\n ],\n- \"QueueHandler\": [\n- [284, \"queuehandler\"]\n+ \"Credits\": [\n+ [249, \"credits\"]\n ],\n- \"QueueListener\": [\n- [284, \"queuelistener\"]\n+ \"html.entities \\u2014 Definitions of HTML general entities\": [\n+ [253, \"module-html.entities\"]\n ],\n- \"mailcap \\u2014 Mailcap file handling\": [\n- [287, \"module-mailcap\"]\n+ \"imghdr \\u2014 Determine the type of an image\": [\n+ [263, \"module-imghdr\"]\n ],\n- \"Data Persistence\": [\n- [313, \"data-persistence\"]\n+ \"itertools \\u2014 Functions creating iterators for efficient looping\": [\n+ [276, \"module-itertools\"]\n ],\n- \"math \\u2014 Mathematical functions\": [\n- [290, \"module-math\"]\n+ \"Itertool functions\": [\n+ [276, \"itertool-functions\"]\n ],\n- \"Number-theoretic and representation functions\": [\n- [290, \"number-theoretic-and-representation-functions\"]\n+ \"Itertools Recipes\": [\n+ [276, \"itertools-recipes\"]\n ],\n- \"Power and logarithmic functions\": [\n- [290, \"power-and-logarithmic-functions\"],\n- [167, \"power-and-logarithmic-functions\"]\n+ \"Networking and Interprocess Communication\": [\n+ [275, \"networking-and-interprocess-communication\"]\n ],\n- \"Trigonometric functions\": [\n- [290, \"trigonometric-functions\"],\n- [167, \"trigonometric-functions\"]\n+ \"json \\u2014 JSON encoder and decoder\": [\n+ [277, \"module-json\"]\n ],\n- \"Angular conversion\": [\n- [290, \"angular-conversion\"]\n+ \"Basic Usage\": [\n+ [277, \"basic-usage\"]\n ],\n- \"Hyperbolic functions\": [\n- [290, \"hyperbolic-functions\"],\n- [167, \"hyperbolic-functions\"]\n+ \"Encoders and Decoders\": [\n+ [277, \"encoders-and-decoders\"]\n ],\n- \"Special functions\": [\n- [290, \"special-functions\"]\n+ \"Standard Compliance and Interoperability\": [\n+ [277, \"standard-compliance-and-interoperability\"]\n ],\n- \"operator \\u2014 Standard operators as functions\": [\n- [306, \"module-operator\"]\n+ \"Character Encodings\": [\n+ [277, \"character-encodings\"]\n ],\n- \"Mapping Operators to Functions\": [\n- [306, \"mapping-operators-to-functions\"]\n+ \"Infinite and NaN Number Values\": [\n+ [277, \"infinite-and-nan-number-values\"]\n ],\n- \"In-place Operators\": [\n- [306, \"in-place-operators\"]\n+ \"Repeated Names Within an Object\": [\n+ [277, \"repeated-names-within-an-object\"]\n ],\n- \"nntplib \\u2014 NNTP protocol client\": [\n- [303, \"module-nntplib\"]\n+ \"Top-level Non-Object, Non-Array Values\": [\n+ [277, \"top-level-non-object-non-array-values\"]\n ],\n- \"NNTP Objects\": [\n- [303, \"nntp-objects\"]\n+ \"Implementation Limitations\": [\n+ [277, \"implementation-limitations\"]\n ],\n- \"Utility functions\": [\n- [303, \"utility-functions\"],\n- [189, \"utility-functions\"]\n+ \"imaplib \\u2014 IMAP4 protocol client\": [\n+ [262, \"module-imaplib\"]\n ],\n- \"pathlib \\u2014 Object-oriented filesystem paths\": [\n- [311, \"module-pathlib\"]\n+ \"IMAP4 Objects\": [\n+ [262, \"imap4-objects\"]\n ],\n- \"Basic use\": [\n- [311, \"basic-use\"]\n+ \"IMAP4 Example\": [\n+ [262, \"imap4-example\"]\n ],\n- \"Pure paths\": [\n- [311, \"pure-paths\"]\n+ \"html \\u2014 HyperText Markup Language support\": [\n+ [252, \"module-html\"]\n ],\n- \"General properties\": [\n- [311, \"general-properties\"]\n+ \"hmac \\u2014 Keyed-Hashing for Message Authentication\": [\n+ [251, \"module-hmac\"]\n ],\n- \"Accessing individual parts\": [\n- [311, \"accessing-individual-parts\"]\n+ \"http.cookiejar \\u2014 Cookie handling for HTTP clients\": [\n+ [257, \"module-http.cookiejar\"]\n ],\n- \"Methods and properties\": [\n- [311, \"methods-and-properties\"]\n+ \"CookieJar and FileCookieJar Objects\": [\n+ [257, \"cookiejar-and-filecookiejar-objects\"]\n ],\n- \"Concrete paths\": [\n- [311, \"concrete-paths\"]\n+ \"FileCookieJar subclasses and co-operation with web browsers\": [\n+ [257, \"filecookiejar-subclasses-and-co-operation-with-web-browsers\"]\n ],\n- \"Correspondence to tools in the os module\": [\n- [311, \"correspondence-to-tools-in-the-os-module\"]\n+ \"CookiePolicy Objects\": [\n+ [257, \"cookiepolicy-objects\"]\n ],\n- \"multiprocessing.shared_memory \\u2014 Shared memory for direct access across processes\": [\n- [299, \"module-multiprocessing.shared_memory\"]\n+ \"DefaultCookiePolicy Objects\": [\n+ [257, \"defaultcookiepolicy-objects\"]\n ],\n- \"numbers \\u2014 Numeric abstract base classes\": [\n- [304, \"module-numbers\"]\n+ \"importlib.resources.abc \\u2013 Abstract base classes for resources\": [\n+ [268, \"module-importlib.resources.abc\"]\n ],\n- \"The numeric tower\": [\n- [304, \"the-numeric-tower\"]\n+ \"Notes on availability\": [\n+ [272, \"notes-on-availability\"]\n ],\n- \"Notes for type implementors\": [\n- [304, \"notes-for-type-implementors\"]\n+ \"WebAssembly platforms\": [\n+ [272, \"webassembly-platforms\"]\n ],\n- \"Adding More Numeric ABCs\": [\n- [304, \"adding-more-numeric-abcs\"]\n+ \"importlib \\u2014 The implementation of import\": [\n+ [265, \"module-importlib\"]\n ],\n- \"Implementing the arithmetic operations\": [\n- [304, \"implementing-the-arithmetic-operations\"]\n+ \"importlib.abc \\u2013 Abstract base classes related to import\": [\n+ [265, \"module-importlib.abc\"]\n ],\n- \"mimetypes \\u2014 Map filenames to MIME types\": [\n- [291, \"module-mimetypes\"]\n+ \"importlib.machinery \\u2013 Importers and path hooks\": [\n+ [265, \"module-importlib.machinery\"]\n ],\n- \"MimeTypes Objects\": [\n- [291, \"mimetypes-objects\"]\n+ \"importlib.util \\u2013 Utility code for importers\": [\n+ [265, \"module-importlib.util\"]\n ],\n- \"os.path \\u2014 Common pathname manipulations\": [\n- [309, \"module-os.path\"]\n+ \"Importing programmatically\": [\n+ [265, \"importing-programmatically\"]\n ],\n- \"os \\u2014 Miscellaneous operating system interfaces\": [\n- [308, \"module-os\"]\n+ \"Checking if a module can be imported\": [\n+ [265, \"checking-if-a-module-can-be-imported\"]\n ],\n- \"File Names, Command Line Arguments, and Environment Variables\": [\n- [308, \"file-names-command-line-arguments-and-environment-variables\"]\n+ \"Importing a source file directly\": [\n+ [265, \"importing-a-source-file-directly\"]\n ],\n- \"Python UTF-8 Mode\": [\n- [308, \"python-utf-8-mode\"]\n+ \"Implementing lazy imports\": [\n+ [265, \"implementing-lazy-imports\"]\n ],\n- \"Process Parameters\": [\n- [308, \"process-parameters\"]\n+ \"Setting up an importer\": [\n+ [265, \"setting-up-an-importer\"]\n ],\n- \"File Object Creation\": [\n- [308, \"file-object-creation\"]\n+ \"Approximating importlib.import_module()\": [\n+ [265, \"approximating-importlib-import-module\"]\n ],\n- \"File Descriptor Operations\": [\n- [308, \"file-descriptor-operations\"]\n+ \"http.server \\u2014 HTTP servers\": [\n+ [259, \"module-http.server\"]\n ],\n- \"Querying the size of a terminal\": [\n- [308, \"querying-the-size-of-a-terminal\"]\n+ \"html.parser \\u2014 Simple HTML and XHTML parser\": [\n+ [254, \"module-html.parser\"]\n ],\n- \"Inheritance of File Descriptors\": [\n- [308, \"inheritance-of-file-descriptors\"]\n+ \"Example HTML Parser Application\": [\n+ [254, \"example-html-parser-application\"]\n ],\n- \"Files and Directories\": [\n- [308, \"files-and-directories\"]\n+ \"HTMLParser Methods\": [\n+ [254, \"htmlparser-methods\"]\n ],\n- \"Linux extended attributes\": [\n- [308, \"linux-extended-attributes\"]\n+ \"Menus\": [\n+ [261, \"menus\"]\n ],\n- \"Process Management\": [\n- [308, \"process-management\"]\n+ \"File menu (Shell and Editor)\": [\n+ [261, \"file-menu-shell-and-editor\"]\n ],\n- \"Interface to the scheduler\": [\n- [308, \"interface-to-the-scheduler\"]\n+ \"Edit menu (Shell and Editor)\": [\n+ [261, \"edit-menu-shell-and-editor\"]\n ],\n- \"Miscellaneous System Information\": [\n- [308, \"miscellaneous-system-information\"]\n+ \"Format menu (Editor window only)\": [\n+ [261, \"format-menu-editor-window-only\"]\n ],\n- \"logging \\u2014 Logging facility for Python\": [\n- [282, \"module-logging\"]\n+ \"Run menu (Editor window only)\": [\n+ [261, \"run-menu-editor-window-only\"]\n ],\n- \"Logger Objects\": [\n- [282, \"logger-objects\"]\n+ \"Shell menu (Shell window only)\": [\n+ [261, \"shell-menu-shell-window-only\"]\n ],\n- \"Handler Objects\": [\n- [282, \"handler-objects\"]\n+ \"Debug menu (Shell window only)\": [\n+ [261, \"debug-menu-shell-window-only\"]\n ],\n- \"Formatter Objects\": [\n- [282, \"formatter-objects\"]\n+ \"Options menu (Shell and Editor)\": [\n+ [261, \"options-menu-shell-and-editor\"]\n ],\n- \"Filter Objects\": [\n- [282, \"filter-objects\"]\n+ \"Window menu (Shell and Editor)\": [\n+ [261, \"window-menu-shell-and-editor\"]\n ],\n- \"LogRecord Objects\": [\n- [282, \"logrecord-objects\"]\n+ \"Help menu (Shell and Editor)\": [\n+ [261, \"help-menu-shell-and-editor\"]\n ],\n- \"LogRecord attributes\": [\n- [282, \"logrecord-attributes\"]\n+ \"Context menus\": [\n+ [261, \"context-menus\"]\n ],\n- \"LoggerAdapter Objects\": [\n- [282, \"loggeradapter-objects\"]\n+ \"Editing and Navigation\": [\n+ [261, \"editing-and-navigation\"]\n ],\n- \"Thread Safety\": [\n- [282, \"thread-safety\"]\n+ \"Editor windows\": [\n+ [261, \"editor-windows\"]\n ],\n- \"Module-Level Attributes\": [\n- [282, \"module-level-attributes\"]\n+ \"Key bindings\": [\n+ [261, \"key-bindings\"]\n ],\n- \"Integration with the warnings module\": [\n- [282, \"integration-with-the-warnings-module\"]\n+ \"Automatic indentation\": [\n+ [261, \"automatic-indentation\"]\n ],\n- \"mailbox \\u2014 Manipulate mailboxes in various formats\": [\n- [286, \"module-mailbox\"]\n+ \"Completions\": [\n+ [261, \"completions\"]\n ],\n- \"Mailbox objects\": [\n- [286, \"mailbox-objects\"]\n+ \"Calltips\": [\n+ [261, \"calltips\"]\n ],\n- \"Maildir objects\": [\n- [286, \"maildir-objects\"]\n+ \"Code Context\": [\n+ [261, \"code-context\"]\n ],\n- \"mbox objects\": [\n- [286, \"mbox-objects\"]\n+ \"Shell window\": [\n+ [261, \"shell-window\"]\n ],\n- \"MH objects\": [\n- [286, \"mh-objects\"]\n+ \"Text colors\": [\n+ [261, \"text-colors\"]\n ],\n- \"Babyl objects\": [\n- [286, \"babyl-objects\"]\n+ \"Startup and Code Execution\": [\n+ [261, \"startup-and-code-execution\"]\n ],\n- \"MMDF objects\": [\n- [286, \"mmdf-objects\"]\n+ \"Startup failure\": [\n+ [261, \"startup-failure\"]\n ],\n- \"Message objects\": [\n- [286, \"message-objects\"]\n+ \"Running user code\": [\n+ [261, \"running-user-code\"]\n ],\n- \"MaildirMessage objects\": [\n- [286, \"maildirmessage-objects\"]\n+ \"User output in Shell\": [\n+ [261, \"user-output-in-shell\"]\n ],\n- \"mboxMessage objects\": [\n- [286, \"mboxmessage-objects\"]\n+ \"Developing tkinter applications\": [\n+ [261, \"developing-tkinter-applications\"]\n ],\n- \"MHMessage objects\": [\n- [286, \"mhmessage-objects\"]\n+ \"Running without a subprocess\": [\n+ [261, \"running-without-a-subprocess\"]\n ],\n- \"BabylMessage objects\": [\n- [286, \"babylmessage-objects\"]\n+ \"Help and Preferences\": [\n+ [261, \"help-and-preferences\"]\n ],\n- \"MMDFMessage objects\": [\n- [286, \"mmdfmessage-objects\"]\n+ \"Help sources\": [\n+ [261, \"help-sources\"]\n ],\n- \"ossaudiodev \\u2014 Access to OSS-compatible audio devices\": [\n- [310, \"module-ossaudiodev\"]\n+ \"Setting preferences\": [\n+ [261, \"setting-preferences\"]\n ],\n- \"Audio Device Objects\": [\n- [310, \"audio-device-objects\"]\n+ \"IDLE on macOS\": [\n+ [261, \"idle-on-macos\"]\n ],\n- \"Mixer Device Objects\": [\n- [310, \"mixer-device-objects\"]\n+ \"Extensions\": [\n+ [261, \"extensions\"]\n ],\n- \"Numeric and Mathematical Modules\": [\n- [305, \"numeric-and-mathematical-modules\"]\n+ \"idlelib\": [\n+ [261, \"module-idlelib\"]\n ],\n- \"email.contentmanager: Managing MIME Content\": [\n- [211, \"module-email.contentmanager\"]\n+ \"inspect \\u2014 Inspect live objects\": [\n+ [270, \"inspect-inspect-live-objects\"]\n ],\n- \"Content Manager Instances\": [\n- [211, \"content-manager-instances\"]\n+ \"Types and members\": [\n+ [270, \"types-and-members\"]\n ],\n- \"email.policy: Policy Objects\": [\n- [222, \"module-email.policy\"]\n+ \"Retrieving source code\": [\n+ [270, \"retrieving-source-code\"]\n ],\n- \"email: Examples\": [\n- [214, \"email-examples\"]\n+ \"Introspecting callables with the Signature object\": [\n+ [270, \"introspecting-callables-with-the-signature-object\"]\n ],\n- \"gettext \\u2014 Multilingual internationalization services\": [\n- [244, \"module-gettext\"]\n+ \"The interpreter stack\": [\n+ [270, \"the-interpreter-stack\"]\n ],\n- \"GNU gettext API\": [\n- [244, \"gnu-gettext-api\"]\n+ \"Fetching attributes statically\": [\n+ [270, \"fetching-attributes-statically\"]\n ],\n- \"Class-based API\": [\n- [244, \"class-based-api\"]\n+ \"Current State of Generators and Coroutines\": [\n+ [270, \"current-state-of-generators-and-coroutines\"]\n ],\n- \"The NullTranslations class\": [\n- [244, \"the-nulltranslations-class\"]\n+ \"Code Objects Bit Flags\": [\n+ [270, \"code-objects-bit-flags\"]\n ],\n- \"The GNUTranslations class\": [\n- [244, \"the-gnutranslations-class\"]\n+ \"heapq \\u2014 Heap queue algorithm\": [\n+ [250, \"module-heapq\"]\n ],\n- \"Solaris message catalog support\": [\n- [244, \"solaris-message-catalog-support\"]\n+ \"Priority Queue Implementation Notes\": [\n+ [250, \"priority-queue-implementation-notes\"]\n ],\n- \"The Catalog constructor\": [\n- [244, \"the-catalog-constructor\"]\n+ \"Theory\": [\n+ [250, \"theory\"]\n ],\n- \"Internationalizing your programs and modules\": [\n- [244, \"internationalizing-your-programs-and-modules\"]\n+ \"http \\u2014 HTTP modules\": [\n+ [255, \"module-http\"]\n ],\n- \"Localizing your module\": [\n- [244, \"localizing-your-module\"]\n+ \"HTTP status codes\": [\n+ [255, \"http-status-codes\"]\n ],\n- \"Localizing your application\": [\n- [244, \"localizing-your-application\"]\n+ \"HTTP methods\": [\n+ [255, \"http-methods\"]\n ],\n- \"Changing languages on the fly\": [\n- [244, \"changing-languages-on-the-fly\"]\n+ \"Internet Protocols and Support\": [\n+ [271, \"internet-protocols-and-support\"]\n ],\n- \"Deferred translations\": [\n- [244, \"deferred-translations\"]\n+ \"grp \\u2014 The group database\": [\n+ [247, \"module-grp\"]\n ],\n- \"fractions \\u2014 Rational numbers\": [\n- [235, \"module-fractions\"]\n+ \"Internationalization\": [\n+ [260, \"internationalization\"]\n ],\n- \"gc \\u2014 Garbage Collector interface\": [\n- [241, \"module-gc\"]\n+ \"keyword \\u2014 Testing for Python keywords\": [\n+ [278, \"module-keyword\"]\n ],\n- \"errno \\u2014 Standard errno system symbols\": [\n- [226, \"module-errno\"]\n+ \"Python Language Services\": [\n+ [279, \"python-language-services\"]\n ],\n- \"email.header: Internationalized headers\": [\n- [216, \"module-email.header\"]\n+ \"gzip \\u2014 Support for gzip files\": [\n+ [248, \"module-gzip\"]\n ],\n- \"email.utils: Miscellaneous utilities\": [\n- [223, \"module-email.utils\"]\n+ \"Examples of usage\": [\n+ [248, \"examples-of-usage\"],\n+ [162, \"examples-of-usage\"]\n ],\n- \"File and Directory Access\": [\n- [233, \"file-and-directory-access\"]\n+ \"http.client \\u2014 HTTP protocol client\": [\n+ [256, \"module-http.client\"]\n ],\n- \"getopt \\u2014 C-style parser for command line options\": [\n- [242, \"module-getopt\"]\n+ \"HTTPConnection Objects\": [\n+ [256, \"httpconnection-objects\"]\n ],\n- \"faulthandler \\u2014 Dump the Python traceback\": [\n- [228, \"module-faulthandler\"]\n+ \"HTTPResponse Objects\": [\n+ [256, \"httpresponse-objects\"]\n ],\n- \"Dumping the traceback\": [\n- [228, \"dumping-the-traceback\"]\n+ \"HTTPMessage Objects\": [\n+ [256, \"httpmessage-objects\"]\n ],\n- \"Fault handler state\": [\n- [228, \"fault-handler-state\"]\n+ \"importlib.metadata \\u2013 Accessing package metadata\": [\n+ [266, \"module-importlib.metadata\"]\n ],\n- \"Dumping the tracebacks after a timeout\": [\n- [228, \"dumping-the-tracebacks-after-a-timeout\"]\n+ \"Entry points\": [\n+ [266, \"entry-points\"]\n ],\n- \"Dumping the traceback on a user signal\": [\n- [228, \"dumping-the-traceback-on-a-user-signal\"]\n+ \"Distribution metadata\": [\n+ [266, \"distribution-metadata\"]\n ],\n- \"Issue with file descriptors\": [\n- [228, \"issue-with-file-descriptors\"]\n+ \"Distribution versions\": [\n+ [266, \"distribution-versions\"]\n ],\n- \"email.encoders: Encoders\": [\n- [212, \"module-email.encoders\"]\n+ \"Distribution files\": [\n+ [266, \"distribution-files\"]\n ],\n- \"fileinput \\u2014 Iterate over lines from multiple input streams\": [\n- [232, \"module-fileinput\"]\n+ \"Distribution requirements\": [\n+ [266, \"distribution-requirements\"]\n ],\n- \"email.iterators: Iterators\": [\n- [218, \"module-email.iterators\"]\n+ \"Mapping import to distribution packages\": [\n+ [266, \"mapping-import-to-distribution-packages\"]\n ],\n- \"email.headerregistry: Custom Header Objects\": [\n- [217, \"module-email.headerregistry\"]\n+ \"Distributions\": [\n+ [266, \"distributions\"]\n ],\n- \"Functional Programming Modules\": [\n- [238, \"functional-programming-modules\"]\n+ \"Distribution Discovery\": [\n+ [266, \"distribution-discovery\"]\n ],\n- \"fcntl \\u2014 The fcntl and ioctl system calls\": [\n- [229, \"module-fcntl\"]\n+ \"Extending the search algorithm\": [\n+ [266, \"extending-the-search-algorithm\"]\n ],\n- \"enum \\u2014 Support for enumerations\": [\n- [225, \"module-enum\"]\n+ \"imp \\u2014 Access the import internals\": [\n+ [264, \"module-imp\"]\n ],\n- \"Data Types\": [\n- [225, \"data-types\"],\n- [195, \"data-types\"]\n+ \"ipaddress \\u2014 IPv4/IPv6 manipulation library\": [\n+ [274, \"module-ipaddress\"]\n ],\n- \"Utilities and Decorators\": [\n- [225, \"utilities-and-decorators\"]\n+ \"Convenience factory functions\": [\n+ [274, \"convenience-factory-functions\"]\n ],\n- \"email.message.Message: Representing an email message using the compat32 API\": [\n- [210, \"email-message-message-representing-an-email-message-using-the-compat32-api\"]\n+ \"IP Addresses\": [\n+ [274, \"ip-addresses\"]\n ],\n- \"File Formats\": [\n- [231, \"file-formats\"]\n+ \"Address objects\": [\n+ [274, \"address-objects\"]\n ],\n- \"email.errors: Exception and Defect classes\": [\n- [213, \"module-email.errors\"]\n+ \"Conversion to Strings and Integers\": [\n+ [274, \"conversion-to-strings-and-integers\"]\n ],\n- \"email.generator: Generating MIME documents\": [\n- [215, \"module-email.generator\"]\n+ \"Comparison operators\": [\n+ [274, \"comparison-operators\"]\n ],\n- \"filecmp \\u2014 File and Directory Comparisons\": [\n- [230, \"module-filecmp\"]\n+ \"Arithmetic operators\": [\n+ [274, \"arithmetic-operators\"]\n ],\n- \"The dircmp class\": [\n- [230, \"the-dircmp-class\"]\n+ \"IP Network definitions\": [\n+ [274, \"ip-network-definitions\"]\n ],\n- \"fnmatch \\u2014 Unix filename pattern matching\": [\n- [234, \"module-fnmatch\"]\n+ \"Prefix, net mask and host mask\": [\n+ [274, \"prefix-net-mask-and-host-mask\"]\n ],\n- \"Program Frameworks\": [\n- [236, \"program-frameworks\"]\n+ \"Network objects\": [\n+ [274, \"network-objects\"]\n ],\n- \"Built-in Functions\": [\n- [239, \"built-in-functions\"]\n+ \"Logical operators\": [\n+ [274, \"logical-operators\"],\n+ [274, \"id3\"]\n ],\n- \"functools \\u2014 Higher-order functions and operations on callable objects\": [\n- [240, \"module-functools\"]\n+ \"Networks as containers of addresses\": [\n+ [274, \"networks-as-containers-of-addresses\"]\n ],\n- \"partial Objects\": [\n- [240, \"partial-objects\"]\n+ \"Interface objects\": [\n+ [274, \"interface-objects\"]\n ],\n- \"ftplib \\u2014 FTP protocol client\": [\n- [237, \"module-ftplib\"]\n+ \"Other Module Level Functions\": [\n+ [274, \"other-module-level-functions\"]\n ],\n- \"FTP objects\": [\n- [237, \"ftp-objects\"]\n+ \"Custom Exceptions\": [\n+ [274, \"custom-exceptions\"]\n ],\n- \"FTP_TLS objects\": [\n- [237, \"ftp-tls-objects\"]\n+ \"graphlib \\u2014 Functionality to operate with graph-like structures\": [\n+ [246, \"module-graphlib\"]\n ],\n- \"Module variables\": [\n- [237, \"module-variables\"]\n+ \"io \\u2014 Core tools for working with streams\": [\n+ [273, \"module-io\"]\n ],\n- \"getpass \\u2014 Portable password input\": [\n- [243, \"module-getpass\"]\n+ \"Text I/O\": [\n+ [273, \"text-i-o\"],\n+ [273, \"id1\"],\n+ [273, \"id3\"]\n+ ],\n+ \"Binary I/O\": [\n+ [273, \"binary-i-o\"],\n+ [273, \"id2\"]\n+ ],\n+ \"Raw I/O\": [\n+ [273, \"raw-i-o\"]\n+ ],\n+ \"Text Encoding\": [\n+ [273, \"text-encoding\"]\n+ ],\n+ \"Opt-in EncodingWarning\": [\n+ [273, \"opt-in-encodingwarning\"]\n+ ],\n+ \"High-level Module Interface\": [\n+ [273, \"high-level-module-interface\"]\n+ ],\n+ \"Class hierarchy\": [\n+ [273, \"class-hierarchy\"]\n+ ],\n+ \"I/O Base Classes\": [\n+ [273, \"i-o-base-classes\"]\n+ ],\n+ \"Raw File I/O\": [\n+ [273, \"raw-file-i-o\"]\n+ ],\n+ \"Buffered Streams\": [\n+ [273, \"buffered-streams\"]\n+ ],\n+ \"Reentrancy\": [\n+ [273, \"reentrancy\"]\n ],\n \"email.mime: Creating email and MIME objects from scratch\": [\n [220, \"module-email.mime\"]\n ],\n- \"ensurepip \\u2014 Bootstrapping the pip installer\": [\n- [224, \"module-ensurepip\"]\n+ \"email.utils: Miscellaneous utilities\": [\n+ [223, \"module-email.utils\"]\n ],\n- \"Command line interface\": [\n- [224, \"command-line-interface\"]\n+ \"email.encoders: Encoders\": [\n+ [212, \"module-email.encoders\"]\n ],\n- \"Module API\": [\n- [224, \"module-api\"]\n+ \"email.message: Representing an email message\": [\n+ [219, \"module-email.message\"]\n+ ],\n+ \"email.iterators: Iterators\": [\n+ [218, \"module-email.iterators\"]\n ],\n \"Built-in Exceptions\": [\n [227, \"built-in-exceptions\"]\n ],\n \"Exception context\": [\n [227, \"exception-context\"]\n ],\n@@ -70565,510 +70405,496 @@\n ],\n \"Exception groups\": [\n [227, \"exception-groups\"]\n ],\n \"Exception hierarchy\": [\n [227, \"exception-hierarchy\"]\n ],\n- \"email.parser: Parsing email messages\": [\n- [221, \"module-email.parser\"]\n- ],\n- \"FeedParser API\": [\n- [221, \"feedparser-api\"]\n- ],\n- \"Parser API\": [\n- [221, \"parser-api\"]\n- ],\n- \"Additional notes\": [\n- [221, \"additional-notes\"]\n- ],\n- \"email.message: Representing an email message\": [\n- [219, \"module-email.message\"]\n- ],\n- \"collections \\u2014 Container datatypes\": [\n- [173, \"module-collections\"]\n+ \"functools \\u2014 Higher-order functions and operations on callable objects\": [\n+ [240, \"module-functools\"]\n ],\n- \"ChainMap objects\": [\n- [173, \"chainmap-objects\"]\n+ \"partial Objects\": [\n+ [240, \"partial-objects\"]\n ],\n- \"ChainMap Examples and Recipes\": [\n- [173, \"chainmap-examples-and-recipes\"]\n+ \"email.policy: Policy Objects\": [\n+ [222, \"module-email.policy\"]\n ],\n- \"Counter objects\": [\n- [173, \"counter-objects\"]\n+ \"fcntl \\u2014 The fcntl and ioctl system calls\": [\n+ [229, \"module-fcntl\"]\n ],\n- \"deque objects\": [\n- [173, \"deque-objects\"]\n+ \"ftplib \\u2014 FTP protocol client\": [\n+ [237, \"module-ftplib\"]\n ],\n- \"deque Recipes\": [\n- [173, \"deque-recipes\"]\n+ \"FTP objects\": [\n+ [237, \"ftp-objects\"]\n ],\n- \"defaultdict objects\": [\n- [173, \"defaultdict-objects\"]\n+ \"FTP_TLS objects\": [\n+ [237, \"ftp-tls-objects\"]\n ],\n- \"defaultdict Examples\": [\n- [173, \"defaultdict-examples\"]\n+ \"Module variables\": [\n+ [237, \"module-variables\"]\n ],\n- \"namedtuple() Factory Function for Tuples with Named Fields\": [\n- [173, \"namedtuple-factory-function-for-tuples-with-named-fields\"]\n+ \"fractions \\u2014 Rational numbers\": [\n+ [235, \"module-fractions\"]\n ],\n- \"OrderedDict objects\": [\n- [173, \"ordereddict-objects\"]\n+ \"ensurepip \\u2014 Bootstrapping the pip installer\": [\n+ [224, \"module-ensurepip\"]\n ],\n- \"OrderedDict Examples and Recipes\": [\n- [173, \"ordereddict-examples-and-recipes\"]\n+ \"Command line interface\": [\n+ [224, \"command-line-interface\"]\n ],\n- \"UserDict objects\": [\n- [173, \"userdict-objects\"]\n+ \"Module API\": [\n+ [224, \"module-api\"]\n ],\n- \"UserList objects\": [\n- [173, \"userlist-objects\"]\n+ \"faulthandler \\u2014 Dump the Python traceback\": [\n+ [228, \"module-faulthandler\"]\n ],\n- \"UserString objects\": [\n- [173, \"userstring-objects\"]\n+ \"Dumping the traceback\": [\n+ [228, \"dumping-the-traceback\"]\n ],\n- \"collections.abc \\u2014 Abstract Base Classes for Containers\": [\n- [174, \"module-collections.abc\"]\n+ \"Fault handler state\": [\n+ [228, \"fault-handler-state\"]\n ],\n- \"Collections Abstract Base Classes\": [\n- [174, \"collections-abstract-base-classes\"]\n+ \"Dumping the tracebacks after a timeout\": [\n+ [228, \"dumping-the-tracebacks-after-a-timeout\"]\n ],\n- \"Collections Abstract Base Classes \\u2013 Detailed Descriptions\": [\n- [174, \"collections-abstract-base-classes-detailed-descriptions\"]\n+ \"Dumping the traceback on a user signal\": [\n+ [228, \"dumping-the-traceback-on-a-user-signal\"]\n ],\n- \"Examples and Recipes\": [\n- [174, \"examples-and-recipes\"],\n- [182, \"examples-and-recipes\"]\n+ \"Issue with file descriptors\": [\n+ [228, \"issue-with-file-descriptors\"]\n ],\n- \"cgi \\u2014 Common Gateway Interface support\": [\n- [164, \"module-cgi\"]\n+ \"filecmp \\u2014 File and Directory Comparisons\": [\n+ [230, \"module-filecmp\"]\n ],\n- \"Using the cgi module\": [\n- [164, \"using-the-cgi-module\"]\n+ \"The dircmp class\": [\n+ [230, \"the-dircmp-class\"]\n ],\n- \"Higher Level Interface\": [\n- [164, \"higher-level-interface\"]\n+ \"gc \\u2014 Garbage Collector interface\": [\n+ [241, \"module-gc\"]\n ],\n- \"Caring about security\": [\n- [164, \"caring-about-security\"]\n+ \"email.header: Internationalized headers\": [\n+ [216, \"module-email.header\"]\n ],\n- \"Installing your CGI script on a Unix system\": [\n- [164, \"installing-your-cgi-script-on-a-unix-system\"]\n+ \"email.generator: Generating MIME documents\": [\n+ [215, \"module-email.generator\"]\n ],\n- \"Testing your CGI script\": [\n- [164, \"testing-your-cgi-script\"]\n+ \"email.parser: Parsing email messages\": [\n+ [221, \"module-email.parser\"]\n ],\n- \"Debugging CGI scripts\": [\n- [164, \"debugging-cgi-scripts\"]\n+ \"FeedParser API\": [\n+ [221, \"feedparser-api\"]\n ],\n- \"Common problems and solutions\": [\n- [164, \"common-problems-and-solutions\"]\n+ \"Parser API\": [\n+ [221, \"parser-api\"]\n ],\n- \"code \\u2014 Interpreter base classes\": [\n- [170, \"module-code\"]\n+ \"Additional notes\": [\n+ [221, \"additional-notes\"]\n ],\n- \"Interactive Interpreter Objects\": [\n- [170, \"interactive-interpreter-objects\"]\n+ \"email.headerregistry: Custom Header Objects\": [\n+ [217, \"module-email.headerregistry\"]\n ],\n- \"Interactive Console Objects\": [\n- [170, \"interactive-console-objects\"]\n+ \"Built-in Functions\": [\n+ [239, \"built-in-functions\"]\n ],\n- \"Audit events table\": [\n- [155, \"audit-events-table\"]\n+ \"File Formats\": [\n+ [231, \"file-formats\"]\n ],\n- \"Transports and Protocols\": [\n- [145, \"transports-and-protocols\"]\n+ \"fnmatch \\u2014 Unix filename pattern matching\": [\n+ [234, \"module-fnmatch\"]\n ],\n- \"Transports\": [\n- [145, \"transports\"],\n- [142, \"transports\"]\n+ \"email: Examples\": [\n+ [214, \"email-examples\"]\n ],\n- \"Transports Hierarchy\": [\n- [145, \"transports-hierarchy\"]\n+ \"getpass \\u2014 Portable password input\": [\n+ [243, \"module-getpass\"]\n ],\n- \"Base Transport\": [\n- [145, \"base-transport\"]\n+ \"fileinput \\u2014 Iterate over lines from multiple input streams\": [\n+ [232, \"module-fileinput\"]\n ],\n- \"Read-only Transports\": [\n- [145, \"read-only-transports\"]\n+ \"email.errors: Exception and Defect classes\": [\n+ [213, \"module-email.errors\"]\n ],\n- \"Write-only Transports\": [\n- [145, \"write-only-transports\"]\n+ \"Program Frameworks\": [\n+ [236, \"program-frameworks\"]\n ],\n- \"Datagram Transports\": [\n- [145, \"datagram-transports\"]\n+ \"email.contentmanager: Managing MIME Content\": [\n+ [211, \"module-email.contentmanager\"]\n ],\n- \"Subprocess Transports\": [\n- [145, \"subprocess-transports\"]\n+ \"Content Manager Instances\": [\n+ [211, \"content-manager-instances\"]\n ],\n- \"Base Protocols\": [\n- [145, \"base-protocols\"]\n+ \"errno \\u2014 Standard errno system symbols\": [\n+ [226, \"module-errno\"]\n ],\n- \"Base Protocol\": [\n- [145, \"base-protocol\"]\n+ \"File and Directory Access\": [\n+ [233, \"file-and-directory-access\"]\n ],\n- \"Streaming Protocols\": [\n- [145, \"streaming-protocols\"]\n+ \"gettext \\u2014 Multilingual internationalization services\": [\n+ [244, \"module-gettext\"]\n ],\n- \"Buffered Streaming Protocols\": [\n- [145, \"buffered-streaming-protocols\"]\n+ \"GNU gettext API\": [\n+ [244, \"gnu-gettext-api\"]\n ],\n- \"Datagram Protocols\": [\n- [145, \"datagram-protocols\"]\n+ \"Class-based API\": [\n+ [244, \"class-based-api\"]\n ],\n- \"Subprocess Protocols\": [\n- [145, \"subprocess-protocols\"]\n+ \"The NullTranslations class\": [\n+ [244, \"the-nulltranslations-class\"]\n ],\n- \"TCP Echo Server\": [\n- [145, \"tcp-echo-server\"]\n+ \"The GNUTranslations class\": [\n+ [244, \"the-gnutranslations-class\"]\n ],\n- \"TCP Echo Client\": [\n- [145, \"tcp-echo-client\"]\n+ \"Solaris message catalog support\": [\n+ [244, \"solaris-message-catalog-support\"]\n ],\n- \"UDP Echo Server\": [\n- [145, \"udp-echo-server\"]\n+ \"The Catalog constructor\": [\n+ [244, \"the-catalog-constructor\"]\n ],\n- \"UDP Echo Client\": [\n- [145, \"udp-echo-client\"]\n+ \"Internationalizing your programs and modules\": [\n+ [244, \"internationalizing-your-programs-and-modules\"]\n ],\n- \"Connecting Existing Sockets\": [\n- [145, \"connecting-existing-sockets\"]\n+ \"Localizing your module\": [\n+ [244, \"localizing-your-module\"]\n ],\n- \"loop.subprocess_exec() and SubprocessProtocol\": [\n- [145, \"loop-subprocess-exec-and-subprocessprotocol\"]\n+ \"Localizing your application\": [\n+ [244, \"localizing-your-application\"]\n ],\n- \"builtins \\u2014 Built-in objects\": [\n- [161, \"module-builtins\"]\n+ \"Changing languages on the fly\": [\n+ [244, \"changing-languages-on-the-fly\"]\n ],\n- \"codecs \\u2014 Codec registry and base classes\": [\n- [171, \"module-codecs\"]\n+ \"Deferred translations\": [\n+ [244, \"deferred-translations\"]\n ],\n- \"Codec Base Classes\": [\n- [171, \"codec-base-classes\"]\n+ \"enum \\u2014 Support for enumerations\": [\n+ [225, \"module-enum\"]\n ],\n- \"Error Handlers\": [\n- [171, \"error-handlers\"]\n+ \"Data Types\": [\n+ [225, \"data-types\"],\n+ [195, \"data-types\"]\n ],\n- \"Stateless Encoding and Decoding\": [\n- [171, \"stateless-encoding-and-decoding\"]\n+ \"Utilities and Decorators\": [\n+ [225, \"utilities-and-decorators\"]\n ],\n- \"Incremental Encoding and Decoding\": [\n- [171, \"incremental-encoding-and-decoding\"]\n+ \"getopt \\u2014 C-style parser for command line options\": [\n+ [242, \"module-getopt\"]\n ],\n- \"IncrementalEncoder Objects\": [\n- [171, \"incrementalencoder-objects\"]\n+ \"email.message.Message: Representing an email message using the compat32 API\": [\n+ [210, \"email-message-message-representing-an-email-message-using-the-compat32-api\"]\n ],\n- \"IncrementalDecoder Objects\": [\n- [171, \"incrementaldecoder-objects\"]\n+ \"Functional Programming Modules\": [\n+ [238, \"functional-programming-modules\"]\n ],\n- \"Stream Encoding and Decoding\": [\n- [171, \"stream-encoding-and-decoding\"]\n+ \"Cryptographic Services\": [\n+ [187, \"cryptographic-services\"]\n ],\n- \"StreamWriter Objects\": [\n- [171, \"streamwriter-objects\"]\n+ \"Development Tools\": [\n+ [200, \"development-tools\"]\n ],\n- \"StreamReader Objects\": [\n- [171, \"streamreader-objects\"]\n+ \"colorsys \\u2014 Conversions between color systems\": [\n+ [175, \"module-colorsys\"]\n ],\n- \"StreamReaderWriter Objects\": [\n- [171, \"streamreaderwriter-objects\"]\n+ \"configparser \\u2014 Configuration file parser\": [\n+ [180, \"module-configparser\"]\n ],\n- \"StreamRecoder Objects\": [\n- [171, \"streamrecoder-objects\"]\n+ \"Quick Start\": [\n+ [180, \"quick-start\"]\n ],\n- \"Encodings and Unicode\": [\n- [171, \"encodings-and-unicode\"]\n+ \"Supported Datatypes\": [\n+ [180, \"supported-datatypes\"]\n ],\n- \"Standard Encodings\": [\n- [171, \"standard-encodings\"]\n+ \"Fallback Values\": [\n+ [180, \"fallback-values\"]\n ],\n- \"Python Specific Encodings\": [\n- [171, \"python-specific-encodings\"]\n+ \"Supported INI File Structure\": [\n+ [180, \"supported-ini-file-structure\"]\n ],\n- \"Text Encodings\": [\n- [171, \"text-encodings\"]\n+ \"Interpolation of values\": [\n+ [180, \"interpolation-of-values\"]\n ],\n- \"Binary Transforms\": [\n- [171, \"binary-transforms\"]\n+ \"Mapping Protocol Access\": [\n+ [180, \"mapping-protocol-access\"]\n ],\n- \"Text Transforms\": [\n- [171, \"text-transforms\"]\n+ \"Customizing Parser Behaviour\": [\n+ [180, \"customizing-parser-behaviour\"]\n ],\n- \"encodings.idna \\u2014 Internationalized Domain Names in Applications\": [\n- [171, \"module-encodings.idna\"]\n+ \"Legacy API Examples\": [\n+ [180, \"legacy-api-examples\"]\n ],\n- \"encodings.mbcs \\u2014 Windows ANSI codepage\": [\n- [171, \"module-encodings.mbcs\"]\n+ \"ConfigParser Objects\": [\n+ [180, \"configparser-objects\"]\n ],\n- \"encodings.utf_8_sig \\u2014 UTF-8 codec with BOM signature\": [\n- [171, \"module-encodings.utf_8_sig\"]\n+ \"RawConfigParser Objects\": [\n+ [180, \"rawconfigparser-objects\"]\n ],\n- \"Runners\": [\n- [147, \"runners\"]\n+ \"curses.ascii \\u2014 Utilities for ASCII characters\": [\n+ [191, \"module-curses.ascii\"]\n ],\n- \"Running an asyncio Program\": [\n- [147, \"running-an-asyncio-program\"]\n+ \"Built-in Constants\": [\n+ [181, \"built-in-constants\"]\n ],\n- \"Runner context manager\": [\n- [147, \"runner-context-manager\"]\n+ \"Constants added by the site module\": [\n+ [181, \"constants-added-by-the-site-module\"]\n ],\n- \"Handling Keyboard Interruption\": [\n- [147, \"handling-keyboard-interruption\"]\n+ \"datetime \\u2014 Basic date and time types\": [\n+ [196, \"module-datetime\"]\n ],\n- \"base64 \\u2014 Base16, Base32, Base64, Base85 Data Encodings\": [\n- [156, \"module-base64\"]\n+ \"Aware and Naive Objects\": [\n+ [196, \"aware-and-naive-objects\"]\n ],\n- \"asyncore \\u2014 Asynchronous socket handler\": [\n- [152, \"module-asyncore\"]\n+ \"Available Types\": [\n+ [196, \"available-types\"]\n ],\n- \"asyncore Example basic HTTP client\": [\n- [152, \"asyncore-example-basic-http-client\"]\n+ \"Common Properties\": [\n+ [196, \"common-properties\"]\n ],\n- \"asyncore Example basic echo server\": [\n- [152, \"asyncore-example-basic-echo-server\"]\n+ \"Determining if an Object is Aware or Naive\": [\n+ [196, \"determining-if-an-object-is-aware-or-naive\"]\n ],\n- \"codeop \\u2014 Compile Python code\": [\n- [172, \"module-codeop\"]\n+ \"timedelta Objects\": [\n+ [196, \"timedelta-objects\"]\n ],\n- \"Queue\": [\n- [146, \"queue\"]\n+ \"Examples of usage: timedelta\": [\n+ [196, \"examples-of-usage-timedelta\"]\n ],\n- \"Priority Queue\": [\n- [146, \"priority-queue\"]\n+ \"date Objects\": [\n+ [196, \"date-objects\"]\n ],\n- \"LIFO Queue\": [\n- [146, \"lifo-queue\"]\n+ \"Examples of Usage: date\": [\n+ [196, \"examples-of-usage-date\"]\n ],\n- \"atexit \\u2014 Exit handlers\": [\n- [153, \"module-atexit\"]\n+ \"datetime Objects\": [\n+ [196, \"datetime-objects\"]\n ],\n- \"atexit Example\": [\n- [153, \"atexit-example\"]\n+ \"Examples of Usage: datetime\": [\n+ [196, \"examples-of-usage-datetime\"]\n ],\n- \"audioop \\u2014 Manipulate raw audio data\": [\n- [154, \"module-audioop\"]\n+ \"time Objects\": [\n+ [196, \"time-objects\"]\n ],\n- \"Modules command-line interface (CLI)\": [\n- [169, \"modules-command-line-interface-cli\"]\n+ \"Examples of Usage: time\": [\n+ [196, \"examples-of-usage-time\"]\n ],\n- \"Binary Data Services\": [\n- [158, \"binary-data-services\"]\n+ \"tzinfo Objects\": [\n+ [196, \"tzinfo-objects\"]\n ],\n- \"bz2 \\u2014 Support for bzip2 compression\": [\n- [162, \"module-bz2\"]\n+ \"timezone Objects\": [\n+ [196, \"timezone-objects\"]\n ],\n- \"(De)compression of files\": [\n- [162, \"de-compression-of-files\"]\n+ \"strftime() and strptime() Behavior\": [\n+ [196, \"strftime-and-strptime-behavior\"]\n ],\n- \"Incremental (de)compression\": [\n- [162, \"incremental-de-compression\"]\n+ \"strftime() and strptime() Format Codes\": [\n+ [196, \"strftime-and-strptime-format-codes\"]\n ],\n- \"One-shot (de)compression\": [\n- [162, \"one-shot-de-compression\"]\n+ \"Technical Detail\": [\n+ [196, \"technical-detail\"]\n ],\n- \"cgitb \\u2014 Traceback manager for CGI scripts\": [\n- [165, \"module-cgitb\"]\n+ \"difflib \\u2014 Helpers for computing deltas\": [\n+ [203, \"module-difflib\"]\n ],\n- \"Futures\": [\n- [141, \"futures\"]\n+ \"SequenceMatcher Objects\": [\n+ [203, \"sequencematcher-objects\"]\n ],\n- \"Future Functions\": [\n- [141, \"future-functions\"]\n+ \"SequenceMatcher Examples\": [\n+ [203, \"sequencematcher-examples\"]\n ],\n- \"Future Object\": [\n- [141, \"future-object\"]\n+ \"Differ Objects\": [\n+ [203, \"differ-objects\"]\n ],\n- \"binascii \\u2014 Convert between binary and ASCII\": [\n- [159, \"module-binascii\"]\n+ \"Differ Example\": [\n+ [203, \"differ-example\"]\n ],\n- \"calendar \\u2014 General calendar-related functions\": [\n- [163, \"module-calendar\"]\n+ \"A command-line interface to difflib\": [\n+ [203, \"a-command-line-interface-to-difflib\"]\n ],\n- \"Policies\": [\n- [144, \"policies\"]\n+ \"crypt \\u2014 Function to check Unix passwords\": [\n+ [186, \"module-crypt\"]\n ],\n- \"Getting and Setting the Policy\": [\n- [144, \"getting-and-setting-the-policy\"]\n+ \"Hashing Methods\": [\n+ [186, \"hashing-methods\"]\n ],\n- \"Policy Objects\": [\n- [144, \"policy-objects\"]\n+ \"Module Attributes\": [\n+ [186, \"module-attributes\"]\n ],\n- \"Process Watchers\": [\n- [144, \"process-watchers\"]\n+ \"Module Functions\": [\n+ [186, \"module-functions\"],\n+ [179, \"module-functions\"]\n ],\n- \"Custom Policies\": [\n- [144, \"custom-policies\"]\n+ \"compileall \\u2014 Byte-compile Python libraries\": [\n+ [176, \"module-compileall\"]\n ],\n- \"cmd \\u2014 Support for line-oriented command interpreters\": [\n- [168, \"module-cmd\"]\n+ \"Command-line use\": [\n+ [176, \"command-line-use\"]\n ],\n- \"Cmd Objects\": [\n- [168, \"cmd-objects\"]\n+ \"Public functions\": [\n+ [176, \"public-functions\"]\n ],\n- \"Cmd Example\": [\n- [168, \"cmd-example\"]\n+ \"contextvars \\u2014 Context Variables\": [\n+ [183, \"module-contextvars\"]\n ],\n- \"chunk \\u2014 Read IFF chunked data\": [\n- [166, \"module-chunk\"]\n+ \"Context Variables\": [\n+ [183, \"context-variables\"]\n ],\n- \"Extending\": [\n- [140, \"extending\"]\n+ \"Manual Context Management\": [\n+ [183, \"manual-context-management\"]\n ],\n- \"Writing a Custom Event Loop\": [\n- [140, \"writing-a-custom-event-loop\"]\n+ \"asyncio support\": [\n+ [183, \"asyncio-support\"]\n ],\n- \"Future and Task private constructors\": [\n- [140, \"future-and-task-private-constructors\"]\n+ \"dataclasses \\u2014 Data Classes\": [\n+ [194, \"module-dataclasses\"]\n ],\n- \"Task lifetime support\": [\n- [140, \"task-lifetime-support\"]\n+ \"Post-init processing\": [\n+ [194, \"post-init-processing\"]\n ],\n- \"Coroutines and Tasks\": [\n- [151, \"coroutines-and-tasks\"]\n+ \"Class variables\": [\n+ [194, \"class-variables\"]\n ],\n- \"Awaitables\": [\n- [151, \"awaitables\"]\n+ \"Init-only variables\": [\n+ [194, \"init-only-variables\"]\n ],\n- \"Creating Tasks\": [\n- [151, \"creating-tasks\"]\n+ \"Frozen instances\": [\n+ [194, \"frozen-instances\"]\n ],\n- \"Task Cancellation\": [\n- [151, \"task-cancellation\"]\n+ \"Re-ordering of keyword-only parameters in __init__()\": [\n+ [194, \"re-ordering-of-keyword-only-parameters-in-init\"]\n ],\n- \"Task Groups\": [\n- [151, \"task-groups\"]\n+ \"Default factory functions\": [\n+ [194, \"default-factory-functions\"]\n ],\n- \"Sleeping\": [\n- [151, \"sleeping\"]\n+ \"Mutable default values\": [\n+ [194, \"mutable-default-values\"]\n ],\n- \"Running Tasks Concurrently\": [\n- [151, \"running-tasks-concurrently\"]\n+ \"Descriptor-typed fields\": [\n+ [194, \"descriptor-typed-fields\"]\n ],\n- \"Shielding From Cancellation\": [\n- [151, \"shielding-from-cancellation\"]\n+ \"csv \\u2014 CSV File Reading and Writing\": [\n+ [188, \"module-csv\"]\n ],\n- \"Timeouts\": [\n- [151, \"timeouts\"]\n+ \"Dialects and Formatting Parameters\": [\n+ [188, \"dialects-and-formatting-parameters\"]\n ],\n- \"Waiting Primitives\": [\n- [151, \"waiting-primitives\"]\n+ \"Reader Objects\": [\n+ [188, \"reader-objects\"]\n ],\n- \"Running in Threads\": [\n- [151, \"running-in-threads\"]\n+ \"Writer Objects\": [\n+ [188, \"writer-objects\"]\n ],\n- \"Scheduling From Other Threads\": [\n- [151, \"scheduling-from-other-threads\"]\n+ \"dis \\u2014 Disassembler for Python bytecode\": [\n+ [204, \"module-dis\"]\n ],\n- \"Introspection\": [\n- [151, \"introspection\"]\n+ \"Command-line interface\": [\n+ [204, \"command-line-interface\"]\n ],\n- \"Task Object\": [\n- [151, \"task-object\"]\n+ \"Bytecode analysis\": [\n+ [204, \"bytecode-analysis\"]\n ],\n- \"cmath \\u2014 Mathematical functions for complex numbers\": [\n- [167, \"module-cmath\"]\n+ \"Analysis functions\": [\n+ [204, \"analysis-functions\"]\n ],\n- \"Conversions to and from polar coordinates\": [\n- [167, \"conversions-to-and-from-polar-coordinates\"]\n+ \"Python Bytecode Instructions\": [\n+ [204, \"python-bytecode-instructions\"]\n ],\n- \"Classification functions\": [\n- [167, \"classification-functions\"]\n+ \"Opcode collections\": [\n+ [204, \"opcode-collections\"]\n ],\n- \"Creating Subprocesses\": [\n- [149, \"creating-subprocesses\"]\n+ \"Python Development Mode\": [\n+ [201, \"python-development-mode\"]\n ],\n- \"Interacting with Subprocesses\": [\n- [149, \"interacting-with-subprocesses\"]\n+ \"Effects of the Python Development Mode\": [\n+ [201, \"effects-of-the-python-development-mode\"]\n ],\n- \"Subprocess and Threads\": [\n- [149, \"subprocess-and-threads\"]\n+ \"ResourceWarning Example\": [\n+ [201, \"resourcewarning-example\"]\n ],\n- \"bisect \\u2014 Array bisection algorithm\": [\n- [160, \"module-bisect\"]\n+ \"Bad file descriptor error example\": [\n+ [201, \"bad-file-descriptor-error-example\"]\n ],\n- \"Performance Notes\": [\n- [160, \"performance-notes\"]\n+ \"Custom Python Interpreters\": [\n+ [193, \"custom-python-interpreters\"]\n ],\n- \"Searching Sorted Lists\": [\n- [160, \"searching-sorted-lists\"]\n+ \"Tkinter Dialogs\": [\n+ [202, \"tkinter-dialogs\"]\n ],\n- \"StreamReader\": [\n- [148, \"streamreader\"]\n+ \"tkinter.simpledialog \\u2014 Standard Tkinter input dialogs\": [\n+ [202, \"module-tkinter.simpledialog\"]\n ],\n- \"StreamWriter\": [\n- [148, \"streamwriter\"]\n+ \"tkinter.filedialog \\u2014 File selection dialogs\": [\n+ [202, \"module-tkinter.filedialog\"]\n ],\n- \"TCP echo client using streams\": [\n- [148, \"tcp-echo-client-using-streams\"]\n+ \"Native Load/Save Dialogs\": [\n+ [202, \"native-load-save-dialogs\"]\n ],\n- \"TCP echo server using streams\": [\n- [148, \"tcp-echo-server-using-streams\"]\n+ \"tkinter.commondialog \\u2014 Dialog window templates\": [\n+ [202, \"module-tkinter.commondialog\"]\n ],\n- \"Get HTTP headers\": [\n- [148, \"get-http-headers\"]\n+ \"curses.panel \\u2014 A panel stack extension for curses\": [\n+ [192, \"module-curses.panel\"]\n ],\n- \"Register an open socket to wait for data using streams\": [\n- [148, \"register-an-open-socket-to-wait-for-data-using-streams\"]\n+ \"Panel Objects\": [\n+ [192, \"panel-objects\"]\n ],\n- \"Low-level API Index\": [\n- [142, \"low-level-api-index\"]\n+ \"email.charset: Representing character sets\": [\n+ [209, \"module-email.charset\"]\n ],\n- \"Obtaining the Event Loop\": [\n- [142, \"obtaining-the-event-loop\"]\n+ \"contextlib \\u2014 Utilities for with-statement contexts\": [\n+ [182, \"module-contextlib\"]\n ],\n- \"Event Loop Policies\": [\n- [142, \"event-loop-policies\"]\n+ \"Examples and Recipes\": [\n+ [182, \"examples-and-recipes\"],\n+ [174, \"examples-and-recipes\"]\n ],\n- \"Synchronization Primitives\": [\n- [150, \"synchronization-primitives\"]\n+ \"Supporting a variable number of context managers\": [\n+ [182, \"supporting-a-variable-number-of-context-managers\"]\n ],\n- \"Lock\": [\n- [150, \"lock\"]\n+ \"Catching exceptions from __enter__ methods\": [\n+ [182, \"catching-exceptions-from-enter-methods\"]\n ],\n- \"Event\": [\n- [150, \"event\"]\n+ \"Cleaning up in an __enter__ implementation\": [\n+ [182, \"cleaning-up-in-an-enter-implementation\"]\n ],\n- \"Condition\": [\n- [150, \"condition\"]\n+ \"Replacing any use of try-finally and flag variables\": [\n+ [182, \"replacing-any-use-of-try-finally-and-flag-variables\"]\n ],\n- \"Semaphore\": [\n- [150, \"semaphore\"]\n+ \"Using a context manager as a function decorator\": [\n+ [182, \"using-a-context-manager-as-a-function-decorator\"]\n ],\n- \"BoundedSemaphore\": [\n- [150, \"boundedsemaphore\"]\n+ \"Single use, reusable and reentrant context managers\": [\n+ [182, \"single-use-reusable-and-reentrant-context-managers\"]\n ],\n- \"Barrier\": [\n- [150, \"barrier\"]\n+ \"Reentrant context managers\": [\n+ [182, \"reentrant-context-managers\"]\n ],\n- \"bdb \\u2014 Debugger framework\": [\n- [157, \"module-bdb\"]\n+ \"Reusable context managers\": [\n+ [182, \"reusable-context-managers\"]\n ],\n- \"Platform Support\": [\n- [143, \"platform-support\"]\n+ \"Debugging and Profiling\": [\n+ [198, \"debugging-and-profiling\"]\n ],\n- \"All Platforms\": [\n- [143, \"all-platforms\"]\n+ \"copy \\u2014 Shallow and deep copy operations\": [\n+ [184, \"module-copy\"]\n ],\n- \"Subprocess Support on Windows\": [\n- [143, \"subprocess-support-on-windows\"]\n+ \"Concurrent Execution\": [\n+ [177, \"concurrent-execution\"]\n ],\n- \"colorsys \\u2014 Conversions between color systems\": [\n- [175, \"module-colorsys\"]\n+ \"The concurrent package\": [\n+ [178, \"the-concurrent-package\"]\n ],\n- \"Built-in Constants\": [\n- [181, \"built-in-constants\"]\n+ \"curses \\u2014 Terminal handling for character-cell displays\": [\n+ [190, \"module-curses\"]\n ],\n- \"Constants added by the site module\": [\n- [181, \"constants-added-by-the-site-module\"]\n+ \"Window Objects\": [\n+ [190, \"window-objects\"]\n ],\n- \"Development Tools\": [\n- [200, \"development-tools\"]\n+ \"curses.textpad \\u2014 Text input widget for curses programs\": [\n+ [190, \"module-curses.textpad\"]\n ],\n- \"email.charset: Representing character sets\": [\n- [209, \"module-email.charset\"]\n+ \"Textbox objects\": [\n+ [190, \"textbox-objects\"]\n ],\n \"concurrent.futures \\u2014 Launching parallel tasks\": [\n [179, \"module-concurrent.futures\"]\n ],\n \"Executor Objects\": [\n [179, \"executor-objects\"]\n ],\n@@ -71083,122 +70909,155 @@\n ],\n \"ProcessPoolExecutor Example\": [\n [179, \"processpoolexecutor-example\"]\n ],\n \"Future Objects\": [\n [179, \"future-objects\"]\n ],\n- \"Module Functions\": [\n- [179, \"module-functions\"],\n- [186, \"module-functions\"]\n- ],\n \"Exception classes\": [\n [179, \"exception-classes\"]\n ],\n- \"configparser \\u2014 Configuration file parser\": [\n- [180, \"module-configparser\"]\n+ \"distutils \\u2014 Building and installing Python modules\": [\n+ [206, \"module-distutils\"]\n ],\n- \"Quick Start\": [\n- [180, \"quick-start\"]\n+ \"decimal \\u2014 Decimal fixed point and floating point arithmetic\": [\n+ [199, \"module-decimal\"]\n ],\n- \"Supported Datatypes\": [\n- [180, \"supported-datatypes\"]\n+ \"Quick-start Tutorial\": [\n+ [199, \"quick-start-tutorial\"]\n ],\n- \"Fallback Values\": [\n- [180, \"fallback-values\"]\n+ \"Decimal objects\": [\n+ [199, \"decimal-objects\"]\n ],\n- \"Supported INI File Structure\": [\n- [180, \"supported-ini-file-structure\"]\n+ \"Logical operands\": [\n+ [199, \"logical-operands\"]\n ],\n- \"Interpolation of values\": [\n- [180, \"interpolation-of-values\"]\n+ \"Context objects\": [\n+ [199, \"context-objects\"]\n ],\n- \"Mapping Protocol Access\": [\n- [180, \"mapping-protocol-access\"]\n+ \"Rounding modes\": [\n+ [199, \"rounding-modes\"]\n ],\n- \"Customizing Parser Behaviour\": [\n- [180, \"customizing-parser-behaviour\"]\n+ \"Signals\": [\n+ [199, \"signals\"]\n ],\n- \"Legacy API Examples\": [\n- [180, \"legacy-api-examples\"]\n+ \"Floating Point Notes\": [\n+ [199, \"floating-point-notes\"]\n ],\n- \"ConfigParser Objects\": [\n- [180, \"configparser-objects\"]\n+ \"Mitigating round-off error with increased precision\": [\n+ [199, \"mitigating-round-off-error-with-increased-precision\"]\n ],\n- \"RawConfigParser Objects\": [\n- [180, \"rawconfigparser-objects\"]\n+ \"Special values\": [\n+ [199, \"special-values\"]\n ],\n- \"Custom Python Interpreters\": [\n- [193, \"custom-python-interpreters\"]\n+ \"Working with threads\": [\n+ [199, \"working-with-threads\"]\n ],\n- \"curses.panel \\u2014 A panel stack extension for curses\": [\n- [192, \"module-curses.panel\"]\n+ \"Decimal FAQ\": [\n+ [199, \"decimal-faq\"]\n ],\n- \"Panel Objects\": [\n- [192, \"panel-objects\"]\n+ \"ctypes \\u2014 A foreign function library for Python\": [\n+ [189, \"module-ctypes\"]\n ],\n- \"difflib \\u2014 Helpers for computing deltas\": [\n- [203, \"module-difflib\"]\n+ \"ctypes tutorial\": [\n+ [189, \"ctypes-tutorial\"]\n ],\n- \"SequenceMatcher Objects\": [\n- [203, \"sequencematcher-objects\"]\n+ \"Loading dynamic link libraries\": [\n+ [189, \"loading-dynamic-link-libraries\"]\n ],\n- \"SequenceMatcher Examples\": [\n- [203, \"sequencematcher-examples\"]\n+ \"Accessing functions from loaded dlls\": [\n+ [189, \"accessing-functions-from-loaded-dlls\"]\n ],\n- \"Differ Objects\": [\n- [203, \"differ-objects\"]\n+ \"Calling functions\": [\n+ [189, \"calling-functions\"]\n ],\n- \"Differ Example\": [\n- [203, \"differ-example\"]\n+ \"Fundamental data types\": [\n+ [189, \"fundamental-data-types\"],\n+ [189, \"ctypes-fundamental-data-types-2\"]\n ],\n- \"A command-line interface to difflib\": [\n- [203, \"a-command-line-interface-to-difflib\"]\n+ \"Calling functions, continued\": [\n+ [189, \"calling-functions-continued\"]\n ],\n- \"email \\u2014 An email and MIME handling package\": [\n- [208, \"module-email\"]\n+ \"Calling variadic functions\": [\n+ [189, \"calling-variadic-functions\"]\n ],\n- \"contextlib \\u2014 Utilities for with-statement contexts\": [\n- [182, \"module-contextlib\"]\n+ \"Calling functions with your own custom data types\": [\n+ [189, \"calling-functions-with-your-own-custom-data-types\"]\n ],\n- \"Supporting a variable number of context managers\": [\n- [182, \"supporting-a-variable-number-of-context-managers\"]\n+ \"Specifying the required argument types (function prototypes)\": [\n+ [189, \"specifying-the-required-argument-types-function-prototypes\"]\n ],\n- \"Catching exceptions from __enter__ methods\": [\n- [182, \"catching-exceptions-from-enter-methods\"]\n+ \"Return types\": [\n+ [189, \"return-types\"]\n ],\n- \"Cleaning up in an __enter__ implementation\": [\n- [182, \"cleaning-up-in-an-enter-implementation\"]\n+ \"Passing pointers (or: passing parameters by reference)\": [\n+ [189, \"passing-pointers-or-passing-parameters-by-reference\"]\n ],\n- \"Replacing any use of try-finally and flag variables\": [\n- [182, \"replacing-any-use-of-try-finally-and-flag-variables\"]\n+ \"Structures and unions\": [\n+ [189, \"structures-and-unions\"]\n ],\n- \"Using a context manager as a function decorator\": [\n- [182, \"using-a-context-manager-as-a-function-decorator\"]\n+ \"Structure/union alignment and byte order\": [\n+ [189, \"structure-union-alignment-and-byte-order\"]\n ],\n- \"Single use, reusable and reentrant context managers\": [\n- [182, \"single-use-reusable-and-reentrant-context-managers\"]\n+ \"Bit fields in structures and unions\": [\n+ [189, \"bit-fields-in-structures-and-unions\"]\n ],\n- \"Reentrant context managers\": [\n- [182, \"reentrant-context-managers\"]\n+ \"Arrays\": [\n+ [189, \"arrays\"]\n ],\n- \"Reusable context managers\": [\n- [182, \"reusable-context-managers\"]\n+ \"Pointers\": [\n+ [189, \"pointers\"]\n ],\n- \"Python Development Mode\": [\n- [201, \"python-development-mode\"]\n+ \"Type conversions\": [\n+ [189, \"type-conversions\"]\n ],\n- \"Effects of the Python Development Mode\": [\n- [201, \"effects-of-the-python-development-mode\"]\n+ \"Incomplete Types\": [\n+ [189, \"incomplete-types\"]\n ],\n- \"ResourceWarning Example\": [\n- [201, \"resourcewarning-example\"]\n+ \"Callback functions\": [\n+ [189, \"callback-functions\"]\n ],\n- \"Bad file descriptor error example\": [\n- [201, \"bad-file-descriptor-error-example\"]\n+ \"Accessing values exported from dlls\": [\n+ [189, \"accessing-values-exported-from-dlls\"]\n+ ],\n+ \"Surprises\": [\n+ [189, \"surprises\"]\n+ ],\n+ \"Variable-sized data types\": [\n+ [189, \"variable-sized-data-types\"]\n+ ],\n+ \"ctypes reference\": [\n+ [189, \"ctypes-reference\"]\n+ ],\n+ \"Finding shared libraries\": [\n+ [189, \"finding-shared-libraries\"]\n+ ],\n+ \"Loading shared libraries\": [\n+ [189, \"loading-shared-libraries\"]\n+ ],\n+ \"Foreign functions\": [\n+ [189, \"foreign-functions\"]\n+ ],\n+ \"Function prototypes\": [\n+ [189, \"function-prototypes\"]\n+ ],\n+ \"Data types\": [\n+ [189, \"data-types\"]\n+ ],\n+ \"Structured data types\": [\n+ [189, \"structured-data-types\"]\n+ ],\n+ \"Arrays and pointers\": [\n+ [189, \"arrays-and-pointers\"]\n+ ],\n+ \"Software Packaging and Distribution\": [\n+ [205, \"software-packaging-and-distribution\"]\n+ ],\n+ \"email \\u2014 An email and MIME handling package\": [\n+ [208, \"module-email\"]\n ],\n \"doctest \\u2014 Test interactive Python examples\": [\n [207, \"module-doctest\"]\n ],\n \"Simple Usage: Checking Examples in Docstrings\": [\n [207, \"simple-usage-checking-examples-in-docstrings\"]\n ],\n@@ -71255,350 +71114,491 @@\n ],\n \"Debugging\": [\n [207, \"debugging\"]\n ],\n \"Soapbox\": [\n [207, \"soapbox\"]\n ],\n- \"dataclasses \\u2014 Data Classes\": [\n- [194, \"module-dataclasses\"]\n+ \"copyreg \\u2014 Register pickle support functions\": [\n+ [185, \"module-copyreg\"]\n ],\n- \"Post-init processing\": [\n- [194, \"post-init-processing\"]\n+ \"dbm \\u2014 Interfaces to Unix \\u201cdatabases\\u201d\": [\n+ [197, \"module-dbm\"]\n ],\n- \"Class variables\": [\n- [194, \"class-variables\"]\n+ \"dbm.gnu \\u2014 GNU database manager\": [\n+ [197, \"module-dbm.gnu\"]\n ],\n- \"Init-only variables\": [\n- [194, \"init-only-variables\"]\n+ \"dbm.ndbm \\u2014 New Database Manager\": [\n+ [197, \"module-dbm.ndbm\"]\n ],\n- \"Frozen instances\": [\n- [194, \"frozen-instances\"]\n+ \"dbm.dumb \\u2014 Portable DBM implementation\": [\n+ [197, \"module-dbm.dumb\"]\n ],\n- \"Re-ordering of keyword-only parameters in __init__()\": [\n- [194, \"re-ordering-of-keyword-only-parameters-in-init\"]\n+ \"audioop \\u2014 Manipulate raw audio data\": [\n+ [154, \"module-audioop\"]\n ],\n- \"Default factory functions\": [\n- [194, \"default-factory-functions\"]\n+ \"Coroutines and Tasks\": [\n+ [151, \"coroutines-and-tasks\"]\n ],\n- \"Mutable default values\": [\n- [194, \"mutable-default-values\"]\n+ \"Awaitables\": [\n+ [151, \"awaitables\"]\n ],\n- \"Descriptor-typed fields\": [\n- [194, \"descriptor-typed-fields\"]\n+ \"Creating Tasks\": [\n+ [151, \"creating-tasks\"]\n ],\n- \"datetime \\u2014 Basic date and time types\": [\n- [196, \"module-datetime\"]\n+ \"Task Cancellation\": [\n+ [151, \"task-cancellation\"]\n ],\n- \"Aware and Naive Objects\": [\n- [196, \"aware-and-naive-objects\"]\n+ \"Task Groups\": [\n+ [151, \"task-groups\"]\n ],\n- \"Available Types\": [\n- [196, \"available-types\"]\n+ \"Sleeping\": [\n+ [151, \"sleeping\"]\n ],\n- \"Common Properties\": [\n- [196, \"common-properties\"]\n+ \"Running Tasks Concurrently\": [\n+ [151, \"running-tasks-concurrently\"]\n ],\n- \"Determining if an Object is Aware or Naive\": [\n- [196, \"determining-if-an-object-is-aware-or-naive\"]\n+ \"Shielding From Cancellation\": [\n+ [151, \"shielding-from-cancellation\"]\n ],\n- \"timedelta Objects\": [\n- [196, \"timedelta-objects\"]\n+ \"Timeouts\": [\n+ [151, \"timeouts\"]\n ],\n- \"Examples of usage: timedelta\": [\n- [196, \"examples-of-usage-timedelta\"]\n+ \"Waiting Primitives\": [\n+ [151, \"waiting-primitives\"]\n ],\n- \"date Objects\": [\n- [196, \"date-objects\"]\n+ \"Running in Threads\": [\n+ [151, \"running-in-threads\"]\n ],\n- \"Examples of Usage: date\": [\n- [196, \"examples-of-usage-date\"]\n+ \"Scheduling From Other Threads\": [\n+ [151, \"scheduling-from-other-threads\"]\n ],\n- \"datetime Objects\": [\n- [196, \"datetime-objects\"]\n+ \"Introspection\": [\n+ [151, \"introspection\"]\n ],\n- \"Examples of Usage: datetime\": [\n- [196, \"examples-of-usage-datetime\"]\n+ \"Task Object\": [\n+ [151, \"task-object\"]\n ],\n- \"time Objects\": [\n- [196, \"time-objects\"]\n+ \"Platform Support\": [\n+ [143, \"platform-support\"]\n ],\n- \"Examples of Usage: time\": [\n- [196, \"examples-of-usage-time\"]\n+ \"All Platforms\": [\n+ [143, \"all-platforms\"]\n ],\n- \"tzinfo Objects\": [\n- [196, \"tzinfo-objects\"]\n+ \"Subprocess Support on Windows\": [\n+ [143, \"subprocess-support-on-windows\"]\n ],\n- \"timezone Objects\": [\n- [196, \"timezone-objects\"]\n+ \"Policies\": [\n+ [144, \"policies\"]\n ],\n- \"strftime() and strptime() Behavior\": [\n- [196, \"strftime-and-strptime-behavior\"]\n+ \"Getting and Setting the Policy\": [\n+ [144, \"getting-and-setting-the-policy\"]\n ],\n- \"strftime() and strptime() Format Codes\": [\n- [196, \"strftime-and-strptime-format-codes\"]\n+ \"Policy Objects\": [\n+ [144, \"policy-objects\"]\n ],\n- \"Technical Detail\": [\n- [196, \"technical-detail\"]\n+ \"Process Watchers\": [\n+ [144, \"process-watchers\"]\n ],\n- \"Tkinter Dialogs\": [\n- [202, \"tkinter-dialogs\"]\n+ \"Custom Policies\": [\n+ [144, \"custom-policies\"]\n ],\n- \"tkinter.simpledialog \\u2014 Standard Tkinter input dialogs\": [\n- [202, \"module-tkinter.simpledialog\"]\n+ \"Synchronization Primitives\": [\n+ [150, \"synchronization-primitives\"]\n ],\n- \"tkinter.filedialog \\u2014 File selection dialogs\": [\n- [202, \"module-tkinter.filedialog\"]\n+ \"Lock\": [\n+ [150, \"lock\"]\n ],\n- \"Native Load/Save Dialogs\": [\n- [202, \"native-load-save-dialogs\"]\n+ \"Event\": [\n+ [150, \"event\"]\n ],\n- \"tkinter.commondialog \\u2014 Dialog window templates\": [\n- [202, \"module-tkinter.commondialog\"]\n+ \"Condition\": [\n+ [150, \"condition\"]\n ],\n- \"Debugging and Profiling\": [\n- [198, \"debugging-and-profiling\"]\n+ \"Semaphore\": [\n+ [150, \"semaphore\"]\n ],\n- \"copyreg \\u2014 Register pickle support functions\": [\n- [185, \"module-copyreg\"]\n+ \"BoundedSemaphore\": [\n+ [150, \"boundedsemaphore\"]\n ],\n- \"ctypes \\u2014 A foreign function library for Python\": [\n- [189, \"module-ctypes\"]\n+ \"Barrier\": [\n+ [150, \"barrier\"]\n ],\n- \"ctypes tutorial\": [\n- [189, \"ctypes-tutorial\"]\n+ \"bz2 \\u2014 Support for bzip2 compression\": [\n+ [162, \"module-bz2\"]\n ],\n- \"Loading dynamic link libraries\": [\n- [189, \"loading-dynamic-link-libraries\"]\n+ \"(De)compression of files\": [\n+ [162, \"de-compression-of-files\"]\n ],\n- \"Accessing functions from loaded dlls\": [\n- [189, \"accessing-functions-from-loaded-dlls\"]\n+ \"Incremental (de)compression\": [\n+ [162, \"incremental-de-compression\"]\n ],\n- \"Calling functions\": [\n- [189, \"calling-functions\"]\n+ \"One-shot (de)compression\": [\n+ [162, \"one-shot-de-compression\"]\n ],\n- \"Fundamental data types\": [\n- [189, \"fundamental-data-types\"],\n- [189, \"ctypes-fundamental-data-types-2\"]\n+ \"calendar \\u2014 General calendar-related functions\": [\n+ [163, \"module-calendar\"]\n ],\n- \"Calling functions, continued\": [\n- [189, \"calling-functions-continued\"]\n+ \"Audit events table\": [\n+ [155, \"audit-events-table\"]\n ],\n- \"Calling variadic functions\": [\n- [189, \"calling-variadic-functions\"]\n+ \"cmath \\u2014 Mathematical functions for complex numbers\": [\n+ [167, \"module-cmath\"]\n ],\n- \"Calling functions with your own custom data types\": [\n- [189, \"calling-functions-with-your-own-custom-data-types\"]\n+ \"Conversions to and from polar coordinates\": [\n+ [167, \"conversions-to-and-from-polar-coordinates\"]\n ],\n- \"Specifying the required argument types (function prototypes)\": [\n- [189, \"specifying-the-required-argument-types-function-prototypes\"]\n+ \"Classification functions\": [\n+ [167, \"classification-functions\"]\n ],\n- \"Return types\": [\n- [189, \"return-types\"]\n+ \"Extending\": [\n+ [140, \"extending\"]\n ],\n- \"Passing pointers (or: passing parameters by reference)\": [\n- [189, \"passing-pointers-or-passing-parameters-by-reference\"]\n+ \"Writing a Custom Event Loop\": [\n+ [140, \"writing-a-custom-event-loop\"]\n ],\n- \"Structures and unions\": [\n- [189, \"structures-and-unions\"]\n+ \"Future and Task private constructors\": [\n+ [140, \"future-and-task-private-constructors\"]\n ],\n- \"Structure/union alignment and byte order\": [\n- [189, \"structure-union-alignment-and-byte-order\"]\n+ \"Task lifetime support\": [\n+ [140, \"task-lifetime-support\"]\n ],\n- \"Bit fields in structures and unions\": [\n- [189, \"bit-fields-in-structures-and-unions\"]\n+ \"bdb \\u2014 Debugger framework\": [\n+ [157, \"module-bdb\"]\n ],\n- \"Arrays\": [\n- [189, \"arrays\"]\n+ \"Creating Subprocesses\": [\n+ [149, \"creating-subprocesses\"]\n ],\n- \"Pointers\": [\n- [189, \"pointers\"]\n+ \"Interacting with Subprocesses\": [\n+ [149, \"interacting-with-subprocesses\"]\n ],\n- \"Type conversions\": [\n- [189, \"type-conversions\"]\n+ \"Subprocess and Threads\": [\n+ [149, \"subprocess-and-threads\"]\n ],\n- \"Incomplete Types\": [\n- [189, \"incomplete-types\"]\n+ \"Transports and Protocols\": [\n+ [145, \"transports-and-protocols\"]\n ],\n- \"Callback functions\": [\n- [189, \"callback-functions\"]\n+ \"Transports\": [\n+ [145, \"transports\"],\n+ [142, \"transports\"]\n ],\n- \"Accessing values exported from dlls\": [\n- [189, \"accessing-values-exported-from-dlls\"]\n+ \"Transports Hierarchy\": [\n+ [145, \"transports-hierarchy\"]\n ],\n- \"Surprises\": [\n- [189, \"surprises\"]\n+ \"Base Transport\": [\n+ [145, \"base-transport\"]\n ],\n- \"Variable-sized data types\": [\n- [189, \"variable-sized-data-types\"]\n+ \"Read-only Transports\": [\n+ [145, \"read-only-transports\"]\n ],\n- \"ctypes reference\": [\n- [189, \"ctypes-reference\"]\n+ \"Write-only Transports\": [\n+ [145, \"write-only-transports\"]\n ],\n- \"Finding shared libraries\": [\n- [189, \"finding-shared-libraries\"]\n+ \"Datagram Transports\": [\n+ [145, \"datagram-transports\"]\n ],\n- \"Loading shared libraries\": [\n- [189, \"loading-shared-libraries\"]\n+ \"Subprocess Transports\": [\n+ [145, \"subprocess-transports\"]\n ],\n- \"Foreign functions\": [\n- [189, \"foreign-functions\"]\n+ \"Base Protocols\": [\n+ [145, \"base-protocols\"]\n ],\n- \"Function prototypes\": [\n- [189, \"function-prototypes\"]\n+ \"Base Protocol\": [\n+ [145, \"base-protocol\"]\n ],\n- \"Data types\": [\n- [189, \"data-types\"]\n+ \"Streaming Protocols\": [\n+ [145, \"streaming-protocols\"]\n ],\n- \"Structured data types\": [\n- [189, \"structured-data-types\"]\n+ \"Buffered Streaming Protocols\": [\n+ [145, \"buffered-streaming-protocols\"]\n ],\n- \"Arrays and pointers\": [\n- [189, \"arrays-and-pointers\"]\n+ \"Datagram Protocols\": [\n+ [145, \"datagram-protocols\"]\n ],\n- \"curses.ascii \\u2014 Utilities for ASCII characters\": [\n- [191, \"module-curses.ascii\"]\n+ \"Subprocess Protocols\": [\n+ [145, \"subprocess-protocols\"]\n ],\n- \"Concurrent Execution\": [\n- [177, \"concurrent-execution\"]\n+ \"TCP Echo Server\": [\n+ [145, \"tcp-echo-server\"]\n ],\n- \"The concurrent package\": [\n- [178, \"the-concurrent-package\"]\n+ \"TCP Echo Client\": [\n+ [145, \"tcp-echo-client\"]\n ],\n- \"Cryptographic Services\": [\n- [187, \"cryptographic-services\"]\n+ \"UDP Echo Server\": [\n+ [145, \"udp-echo-server\"]\n ],\n- \"distutils \\u2014 Building and installing Python modules\": [\n- [206, \"module-distutils\"]\n+ \"UDP Echo Client\": [\n+ [145, \"udp-echo-client\"]\n ],\n- \"crypt \\u2014 Function to check Unix passwords\": [\n- [186, \"module-crypt\"]\n+ \"Connecting Existing Sockets\": [\n+ [145, \"connecting-existing-sockets\"]\n ],\n- \"Hashing Methods\": [\n- [186, \"hashing-methods\"]\n+ \"loop.subprocess_exec() and SubprocessProtocol\": [\n+ [145, \"loop-subprocess-exec-and-subprocessprotocol\"]\n ],\n- \"Module Attributes\": [\n- [186, \"module-attributes\"]\n+ \"cgitb \\u2014 Traceback manager for CGI scripts\": [\n+ [165, \"module-cgitb\"]\n ],\n- \"dbm \\u2014 Interfaces to Unix \\u201cdatabases\\u201d\": [\n- [197, \"module-dbm\"]\n+ \"chunk \\u2014 Read IFF chunked data\": [\n+ [166, \"module-chunk\"]\n ],\n- \"dbm.gnu \\u2014 GNU database manager\": [\n- [197, \"module-dbm.gnu\"]\n+ \"collections.abc \\u2014 Abstract Base Classes for Containers\": [\n+ [174, \"module-collections.abc\"]\n ],\n- \"dbm.ndbm \\u2014 New Database Manager\": [\n- [197, \"module-dbm.ndbm\"]\n+ \"Collections Abstract Base Classes\": [\n+ [174, \"collections-abstract-base-classes\"]\n ],\n- \"dbm.dumb \\u2014 Portable DBM implementation\": [\n- [197, \"module-dbm.dumb\"]\n+ \"Collections Abstract Base Classes \\u2013 Detailed Descriptions\": [\n+ [174, \"collections-abstract-base-classes-detailed-descriptions\"]\n ],\n- \"dis \\u2014 Disassembler for Python bytecode\": [\n- [204, \"module-dis\"]\n+ \"Low-level API Index\": [\n+ [142, \"low-level-api-index\"]\n ],\n- \"Command-line interface\": [\n- [204, \"command-line-interface\"]\n+ \"Obtaining the Event Loop\": [\n+ [142, \"obtaining-the-event-loop\"]\n ],\n- \"Bytecode analysis\": [\n- [204, \"bytecode-analysis\"]\n+ \"Event Loop Policies\": [\n+ [142, \"event-loop-policies\"]\n ],\n- \"Analysis functions\": [\n- [204, \"analysis-functions\"]\n+ \"code \\u2014 Interpreter base classes\": [\n+ [170, \"module-code\"]\n ],\n- \"Python Bytecode Instructions\": [\n- [204, \"python-bytecode-instructions\"]\n+ \"Interactive Interpreter Objects\": [\n+ [170, \"interactive-interpreter-objects\"]\n ],\n- \"Opcode collections\": [\n- [204, \"opcode-collections\"]\n+ \"Interactive Console Objects\": [\n+ [170, \"interactive-console-objects\"]\n ],\n- \"compileall \\u2014 Byte-compile Python libraries\": [\n- [176, \"module-compileall\"]\n+ \"codecs \\u2014 Codec registry and base classes\": [\n+ [171, \"module-codecs\"]\n ],\n- \"Command-line use\": [\n- [176, \"command-line-use\"]\n+ \"Codec Base Classes\": [\n+ [171, \"codec-base-classes\"]\n ],\n- \"Public functions\": [\n- [176, \"public-functions\"]\n+ \"Error Handlers\": [\n+ [171, \"error-handlers\"]\n ],\n- \"contextvars \\u2014 Context Variables\": [\n- [183, \"module-contextvars\"]\n+ \"Stateless Encoding and Decoding\": [\n+ [171, \"stateless-encoding-and-decoding\"]\n ],\n- \"Context Variables\": [\n- [183, \"context-variables\"]\n+ \"Incremental Encoding and Decoding\": [\n+ [171, \"incremental-encoding-and-decoding\"]\n ],\n- \"Manual Context Management\": [\n- [183, \"manual-context-management\"]\n+ \"IncrementalEncoder Objects\": [\n+ [171, \"incrementalencoder-objects\"]\n ],\n- \"asyncio support\": [\n- [183, \"asyncio-support\"]\n+ \"IncrementalDecoder Objects\": [\n+ [171, \"incrementaldecoder-objects\"]\n ],\n- \"curses \\u2014 Terminal handling for character-cell displays\": [\n- [190, \"module-curses\"]\n+ \"Stream Encoding and Decoding\": [\n+ [171, \"stream-encoding-and-decoding\"]\n ],\n- \"Window Objects\": [\n- [190, \"window-objects\"]\n+ \"StreamWriter Objects\": [\n+ [171, \"streamwriter-objects\"]\n ],\n- \"curses.textpad \\u2014 Text input widget for curses programs\": [\n- [190, \"module-curses.textpad\"]\n+ \"StreamReader Objects\": [\n+ [171, \"streamreader-objects\"]\n ],\n- \"Textbox objects\": [\n- [190, \"textbox-objects\"]\n+ \"StreamReaderWriter Objects\": [\n+ [171, \"streamreaderwriter-objects\"]\n ],\n- \"copy \\u2014 Shallow and deep copy operations\": [\n- [184, \"module-copy\"]\n+ \"StreamRecoder Objects\": [\n+ [171, \"streamrecoder-objects\"]\n ],\n- \"csv \\u2014 CSV File Reading and Writing\": [\n- [188, \"module-csv\"]\n+ \"Encodings and Unicode\": [\n+ [171, \"encodings-and-unicode\"]\n ],\n- \"Dialects and Formatting Parameters\": [\n- [188, \"dialects-and-formatting-parameters\"]\n+ \"Standard Encodings\": [\n+ [171, \"standard-encodings\"]\n ],\n- \"Reader Objects\": [\n- [188, \"reader-objects\"]\n+ \"Python Specific Encodings\": [\n+ [171, \"python-specific-encodings\"]\n ],\n- \"Writer Objects\": [\n- [188, \"writer-objects\"]\n+ \"Text Encodings\": [\n+ [171, \"text-encodings\"]\n ],\n- \"decimal \\u2014 Decimal fixed point and floating point arithmetic\": [\n- [199, \"module-decimal\"]\n+ \"Binary Transforms\": [\n+ [171, \"binary-transforms\"]\n ],\n- \"Quick-start Tutorial\": [\n- [199, \"quick-start-tutorial\"]\n+ \"Text Transforms\": [\n+ [171, \"text-transforms\"]\n ],\n- \"Decimal objects\": [\n- [199, \"decimal-objects\"]\n+ \"encodings.idna \\u2014 Internationalized Domain Names in Applications\": [\n+ [171, \"module-encodings.idna\"]\n ],\n- \"Logical operands\": [\n- [199, \"logical-operands\"]\n+ \"encodings.mbcs \\u2014 Windows ANSI codepage\": [\n+ [171, \"module-encodings.mbcs\"]\n ],\n- \"Context objects\": [\n- [199, \"context-objects\"]\n+ \"encodings.utf_8_sig \\u2014 UTF-8 codec with BOM signature\": [\n+ [171, \"module-encodings.utf_8_sig\"]\n ],\n- \"Rounding modes\": [\n- [199, \"rounding-modes\"]\n+ \"builtins \\u2014 Built-in objects\": [\n+ [161, \"module-builtins\"]\n ],\n- \"Signals\": [\n- [199, \"signals\"]\n+ \"StreamReader\": [\n+ [148, \"streamreader\"]\n ],\n- \"Floating Point Notes\": [\n- [199, \"floating-point-notes\"]\n+ \"StreamWriter\": [\n+ [148, \"streamwriter\"]\n ],\n- \"Mitigating round-off error with increased precision\": [\n- [199, \"mitigating-round-off-error-with-increased-precision\"]\n+ \"TCP echo client using streams\": [\n+ [148, \"tcp-echo-client-using-streams\"]\n ],\n- \"Special values\": [\n- [199, \"special-values\"]\n+ \"TCP echo server using streams\": [\n+ [148, \"tcp-echo-server-using-streams\"]\n ],\n- \"Working with threads\": [\n- [199, \"working-with-threads\"]\n+ \"Get HTTP headers\": [\n+ [148, \"get-http-headers\"]\n ],\n- \"Decimal FAQ\": [\n- [199, \"decimal-faq\"]\n+ \"Register an open socket to wait for data using streams\": [\n+ [148, \"register-an-open-socket-to-wait-for-data-using-streams\"]\n ],\n- \"Software Packaging and Distribution\": [\n- [205, \"software-packaging-and-distribution\"]\n+ \"Queue\": [\n+ [146, \"queue\"]\n+ ],\n+ \"Priority Queue\": [\n+ [146, \"priority-queue\"]\n+ ],\n+ \"LIFO Queue\": [\n+ [146, \"lifo-queue\"]\n+ ],\n+ \"Binary Data Services\": [\n+ [158, \"binary-data-services\"]\n+ ],\n+ \"Runners\": [\n+ [147, \"runners\"]\n+ ],\n+ \"Running an asyncio Program\": [\n+ [147, \"running-an-asyncio-program\"]\n+ ],\n+ \"Runner context manager\": [\n+ [147, \"runner-context-manager\"]\n+ ],\n+ \"Handling Keyboard Interruption\": [\n+ [147, \"handling-keyboard-interruption\"]\n+ ],\n+ \"asyncore \\u2014 Asynchronous socket handler\": [\n+ [152, \"module-asyncore\"]\n+ ],\n+ \"asyncore Example basic HTTP client\": [\n+ [152, \"asyncore-example-basic-http-client\"]\n+ ],\n+ \"asyncore Example basic echo server\": [\n+ [152, \"asyncore-example-basic-echo-server\"]\n+ ],\n+ \"collections \\u2014 Container datatypes\": [\n+ [173, \"module-collections\"]\n+ ],\n+ \"ChainMap objects\": [\n+ [173, \"chainmap-objects\"]\n+ ],\n+ \"ChainMap Examples and Recipes\": [\n+ [173, \"chainmap-examples-and-recipes\"]\n+ ],\n+ \"Counter objects\": [\n+ [173, \"counter-objects\"]\n+ ],\n+ \"deque objects\": [\n+ [173, \"deque-objects\"]\n+ ],\n+ \"deque Recipes\": [\n+ [173, \"deque-recipes\"]\n+ ],\n+ \"defaultdict objects\": [\n+ [173, \"defaultdict-objects\"]\n+ ],\n+ \"defaultdict Examples\": [\n+ [173, \"defaultdict-examples\"]\n+ ],\n+ \"namedtuple() Factory Function for Tuples with Named Fields\": [\n+ [173, \"namedtuple-factory-function-for-tuples-with-named-fields\"]\n+ ],\n+ \"OrderedDict objects\": [\n+ [173, \"ordereddict-objects\"]\n+ ],\n+ \"OrderedDict Examples and Recipes\": [\n+ [173, \"ordereddict-examples-and-recipes\"]\n+ ],\n+ \"UserDict objects\": [\n+ [173, \"userdict-objects\"]\n+ ],\n+ \"UserList objects\": [\n+ [173, \"userlist-objects\"]\n+ ],\n+ \"UserString objects\": [\n+ [173, \"userstring-objects\"]\n+ ],\n+ \"codeop \\u2014 Compile Python code\": [\n+ [172, \"module-codeop\"]\n+ ],\n+ \"binascii \\u2014 Convert between binary and ASCII\": [\n+ [159, \"module-binascii\"]\n+ ],\n+ \"cgi \\u2014 Common Gateway Interface support\": [\n+ [164, \"module-cgi\"]\n+ ],\n+ \"Using the cgi module\": [\n+ [164, \"using-the-cgi-module\"]\n+ ],\n+ \"Higher Level Interface\": [\n+ [164, \"higher-level-interface\"]\n+ ],\n+ \"Caring about security\": [\n+ [164, \"caring-about-security\"]\n+ ],\n+ \"Installing your CGI script on a Unix system\": [\n+ [164, \"installing-your-cgi-script-on-a-unix-system\"]\n+ ],\n+ \"Testing your CGI script\": [\n+ [164, \"testing-your-cgi-script\"]\n+ ],\n+ \"Debugging CGI scripts\": [\n+ [164, \"debugging-cgi-scripts\"]\n+ ],\n+ \"Common problems and solutions\": [\n+ [164, \"common-problems-and-solutions\"]\n+ ],\n+ \"base64 \\u2014 Base16, Base32, Base64, Base85 Data Encodings\": [\n+ [156, \"module-base64\"]\n+ ],\n+ \"atexit \\u2014 Exit handlers\": [\n+ [153, \"module-atexit\"]\n+ ],\n+ \"atexit Example\": [\n+ [153, \"atexit-example\"]\n+ ],\n+ \"Futures\": [\n+ [141, \"futures\"]\n+ ],\n+ \"Future Functions\": [\n+ [141, \"future-functions\"]\n+ ],\n+ \"Future Object\": [\n+ [141, \"future-object\"]\n+ ],\n+ \"bisect \\u2014 Array bisection algorithm\": [\n+ [160, \"module-bisect\"]\n+ ],\n+ \"Performance Notes\": [\n+ [160, \"performance-notes\"]\n+ ],\n+ \"Searching Sorted Lists\": [\n+ [160, \"searching-sorted-lists\"]\n+ ],\n+ \"Modules command-line interface (CLI)\": [\n+ [169, \"modules-command-line-interface-cli\"]\n+ ],\n+ \"cmd \\u2014 Support for line-oriented command interpreters\": [\n+ [168, \"module-cmd\"]\n+ ],\n+ \"Cmd Objects\": [\n+ [168, \"cmd-objects\"]\n+ ],\n+ \"Cmd Example\": [\n+ [168, \"cmd-example\"]\n ]\n },\n \"indexentries\": {\n \"pyobject_del (c function)\": [\n [3, \"c.PyObject_Del\"]\n ],\n \"pyobject_init (c function)\": [\n"}]}, {"source1": "./usr/share/info/python3.11.info.gz", "source2": "./usr/share/info/python3.11.info.gz", "unified_diff": null, "details": [{"source1": "python3.11.info", "source2": "python3.11.info", "has_internal_linenos": true, "unified_diff": "@@ -1246779,21 +1246779,21 @@\n 013063a0: 663a 204f 6c64 6572 2056 6572 7369 6f6e f: Older Version\n 013063b0: 7320 6f66 2050 7974 686f 6e20 616e 6420 s of Python and \n 013063c0: 4d69 6e47 572d 466f 6f74 6e6f 7465 2d31 MinGW-Footnote-1\n 013063d0: 7f31 3536 3630 3436 380a 4e6f 6465 3a20 .15660468.Node: \n 013063e0: 5079 7468 6f6e 204d 6f64 756c 6520 496e Python Module In\n 013063f0: 6465 787f 3135 3636 3035 3334 0a4e 6f64 dex.15660534.Nod\n 01306400: 653a 2049 6e64 6578 7f31 3536 3834 3138 e: Index.1568418\n-01306410: 310a 5265 663a 2075 7369 6e67 2f63 6d64 1.Ref: using/cmd\n-01306420: 6c69 6e65 2061 7564 6974 5f65 7665 6e74 line audit_event\n-01306430: 5f63 7079 7468 6f6e 5f72 756e 5f73 7464 _cpython_run_std\n-01306440: 696e 5f30 7f31 3736 3637 3335 330a 5265 in_0.17667353.Re\n-01306450: 663a 2033 6363 357f 3137 3636 3733 3534 f: 3cc5.17667354\n-01306460: 0a52 6566 3a20 7573 696e 672f 636d 646c .Ref: using/cmdl\n-01306470: 696e 6520 6175 6469 745f 6576 656e 745f ine audit_event_\n-01306480: 6370 7974 686f 6e5f 7275 6e5f 6669 6c65 cpython_run_file\n-01306490: 5f30 7f31 3736 3637 3335 360a 5265 663a _0.17667356.Ref:\n-013064a0: 2033 6363 367f 3137 3636 3733 3538 0a1f 3cc6.17667358..\n+01306410: 310a 5265 663a 2033 6363 357f 3137 3636 1.Ref: 3cc5.1766\n+01306420: 3733 3533 0a52 6566 3a20 7573 696e 672f 7353.Ref: using/\n+01306430: 636d 646c 696e 6520 6175 6469 745f 6576 cmdline audit_ev\n+01306440: 656e 745f 6370 7974 686f 6e5f 7275 6e5f ent_cpython_run_\n+01306450: 7374 6469 6e5f 307f 3137 3636 3733 3534 stdin_0.17667354\n+01306460: 0a52 6566 3a20 3363 6336 7f31 3736 3637 .Ref: 3cc6.17667\n+01306470: 3335 360a 5265 663a 2075 7369 6e67 2f63 356.Ref: using/c\n+01306480: 6d64 6c69 6e65 2061 7564 6974 5f65 7665 mdline audit_eve\n+01306490: 6e74 5f63 7079 7468 6f6e 5f72 756e 5f66 nt_cpython_run_f\n+013064a0: 696c 655f 307f 3137 3636 3733 3538 0a1f ile_0.17667358..\n 013064b0: 0a45 6e64 2054 6167 2054 6162 6c65 0a0a .End Tag Table..\n 013064c0: 1f0a 4c6f 6361 6c20 5661 7269 6162 6c65 ..Local Variable\n 013064d0: 733a 0a63 6f64 696e 673a 2075 7466 2d38 s:.coding: utf-8\n 013064e0: 0a45 6e64 3a0a .End:.\n"}]}]}]}]}]}