From a78c7954d549fba967a842143b4e3050ff488468 Mon Sep 17 00:00:00 2001 From: "Eric V. Smith" Date: Tue, 3 Nov 2015 12:45:05 -0500 Subject: [PATCH] Issue 25483: Add an opcode to make f-string formatting more robust. --- Include/ceval.h | 8 ++ Include/opcode.h | 1 + Lib/importlib/_bootstrap_external.py | 3 +- Lib/opcode.py | 2 + Python/ceval.c | 57 ++++++++ Python/compile.c | 94 ++++-------- Python/importlib_external.h | 206 +++++++++++++-------------- Python/opcode_targets.h | 2 +- 8 files changed, 205 insertions(+), 168 deletions(-) diff --git a/Include/ceval.h b/Include/ceval.h index b5373a9cc47..d194044911e 100644 --- a/Include/ceval.h +++ b/Include/ceval.h @@ -206,6 +206,14 @@ PyAPI_FUNC(int) _PyEval_SliceIndex(PyObject *, Py_ssize_t *); PyAPI_FUNC(void) _PyEval_SignalAsyncExc(void); #endif +/* Masks and values used by FORMAT_VALUE opcode. */ +#define FVC_MASK 0x3 +#define FVC_NONE 0x0 +#define FVC_STR 0x1 +#define FVC_REPR 0x2 +#define FVC_ASCII 0x3 +#define FVS_MASK 0x4 +#define FVS_HAVE_SPEC 0x4 #ifdef __cplusplus } diff --git a/Include/opcode.h b/Include/opcode.h index 3f917fb6ee5..b265368b618 100644 --- a/Include/opcode.h +++ b/Include/opcode.h @@ -122,6 +122,7 @@ extern "C" { #define BUILD_TUPLE_UNPACK 152 #define BUILD_SET_UNPACK 153 #define SETUP_ASYNC_WITH 154 +#define FORMAT_VALUE 155 /* EXCEPT_HANDLER is a special, implicit block type which is created when entering an except handler. It is not an opcode but we define it here diff --git a/Lib/importlib/_bootstrap_external.py b/Lib/importlib/_bootstrap_external.py index e0a1200547b..c58a62a90dc 100644 --- a/Lib/importlib/_bootstrap_external.py +++ b/Lib/importlib/_bootstrap_external.py @@ -223,12 +223,13 @@ _code_type = type(_write_atomic.__code__) # Python 3.5b1 3330 (PEP 448: Additional Unpacking Generalizations) # Python 3.5b2 3340 (fix dictionary display evaluation order #11205) # Python 3.5b2 3350 (add GET_YIELD_FROM_ITER opcode #24400) +# Python 3.6a0 3360 (add FORMAT_VALUE opcode #25483) # # MAGIC must change whenever the bytecode emitted by the compiler may no # longer be understood by older implementations of the eval loop (usually # due to the addition of new opcodes). -MAGIC_NUMBER = (3350).to_bytes(2, 'little') + b'\r\n' +MAGIC_NUMBER = (3360).to_bytes(2, 'little') + b'\r\n' _RAW_MAGIC_NUMBER = int.from_bytes(MAGIC_NUMBER, 'little') # For import.c _PYCACHE = '__pycache__' diff --git a/Lib/opcode.py b/Lib/opcode.py index 4c826a7730c..71ce67233be 100644 --- a/Lib/opcode.py +++ b/Lib/opcode.py @@ -214,4 +214,6 @@ def_op('BUILD_MAP_UNPACK_WITH_CALL', 151) def_op('BUILD_TUPLE_UNPACK', 152) def_op('BUILD_SET_UNPACK', 153) +def_op('FORMAT_VALUE', 155) + del def_op, name_op, jrel_op, jabs_op diff --git a/Python/ceval.c b/Python/ceval.c index f9e8ef88599..60db7032121 100644 --- a/Python/ceval.c +++ b/Python/ceval.c @@ -3363,6 +3363,63 @@ PyEval_EvalFrameEx(PyFrameObject *f, int throwflag) DISPATCH(); } + TARGET(FORMAT_VALUE) { + /* Handles f-string value formatting. */ + PyObject *result; + PyObject *fmt_spec; + PyObject *value; + PyObject *(*conv_fn)(PyObject *); + int which_conversion = oparg & FVC_MASK; + int have_fmt_spec = (oparg & FVS_MASK) == FVS_HAVE_SPEC; + + fmt_spec = have_fmt_spec ? POP() : NULL; + value = TOP(); + + /* See if any conversion is specified. */ + switch (which_conversion) { + case FVC_STR: conv_fn = PyObject_Str; break; + case FVC_REPR: conv_fn = PyObject_Repr; break; + case FVC_ASCII: conv_fn = PyObject_ASCII; break; + + /* Must be 0 (meaning no conversion), since only four + values are allowed by (oparg & FVC_MASK). */ + default: conv_fn = NULL; break; + } + + /* If there's a conversion function, call it and replace + value with that result. Otherwise, just use value, + without conversion. */ + if (conv_fn) { + result = conv_fn(value); + Py_DECREF(value); + if (!result) { + Py_XDECREF(fmt_spec); + goto error; + } + value = result; + } + + /* If value is a unicode object, and there's no fmt_spec, + then we know the result of format(value) is value + itself. In that case, skip calling format(). I plan to + move this optimization in to PyObject_Format() + itself. */ + if (PyUnicode_CheckExact(value) && fmt_spec == NULL) { + /* Do nothing, just transfer ownership to result. */ + result = value; + } else { + /* Actually call format(). */ + result = PyObject_Format(value, fmt_spec); + Py_DECREF(value); + Py_XDECREF(fmt_spec); + if (!result) + goto error; + } + + SET_TOP(result); + DISPATCH(); + } + TARGET(EXTENDED_ARG) { opcode = NEXTOP(); oparg = oparg<<16 | NEXTARG(); diff --git a/Python/compile.c b/Python/compile.c index 5b53de3ee70..030afedd29c 100644 --- a/Python/compile.c +++ b/Python/compile.c @@ -1067,6 +1067,10 @@ PyCompile_OpcodeStackEffect(int opcode, int oparg) return 1; case GET_YIELD_FROM_ITER: return 0; + case FORMAT_VALUE: + /* If there's a fmt_spec on the stack, we go from 2->1, + else 1->1. */ + return (oparg & FVS_MASK) == FVS_HAVE_SPEC ? -1 : 0; default: return PY_INVALID_STACK_EFFECT; } @@ -3241,83 +3245,47 @@ compiler_joined_str(struct compiler *c, expr_ty e) return 1; } -/* Note that this code uses the builtin functions format(), str(), - repr(), and ascii(). You can break this code, or make it do odd - things, by redefining those functions. */ +/* Used to implement f-strings. Format a single value. */ static int compiler_formatted_value(struct compiler *c, expr_ty e) { - PyObject *conversion_name = NULL; + /* Our oparg encodes 2 pieces of information: the conversion + character, and whether or not a format_spec was provided. - static PyObject *format_string; - static PyObject *str_string; - static PyObject *repr_string; - static PyObject *ascii_string; + Convert the conversion char to 2 bits: + None: 000 0x0 FVC_NONE + !s : 001 0x1 FVC_STR + !r : 010 0x2 FVC_REPR + !a : 011 0x3 FVC_ASCII - if (!format_string) { - format_string = PyUnicode_InternFromString("format"); - if (!format_string) - return 0; - } + next bit is whether or not we have a format spec: + yes : 100 0x4 + no : 000 0x0 + */ - if (!str_string) { - str_string = PyUnicode_InternFromString("str"); - if (!str_string) - return 0; - } + int oparg; - if (!repr_string) { - repr_string = PyUnicode_InternFromString("repr"); - if (!repr_string) - return 0; - } - if (!ascii_string) { - ascii_string = PyUnicode_InternFromString("ascii"); - if (!ascii_string) - return 0; - } - - ADDOP_NAME(c, LOAD_GLOBAL, format_string, names); - - /* If needed, convert via str, repr, or ascii. */ - if (e->v.FormattedValue.conversion != -1) { - switch (e->v.FormattedValue.conversion) { - case 's': - conversion_name = str_string; - break; - case 'r': - conversion_name = repr_string; - break; - case 'a': - conversion_name = ascii_string; - break; - default: - PyErr_SetString(PyExc_SystemError, - "Unrecognized conversion character"); - return 0; - } - ADDOP_NAME(c, LOAD_GLOBAL, conversion_name, names); - } - - /* Evaluate the value. */ + /* Evaluate the expression to be formatted. */ VISIT(c, expr, e->v.FormattedValue.value); - /* If needed, convert via str, repr, or ascii. */ - if (conversion_name) { - /* Call the function we previously pushed. */ - ADDOP_I(c, CALL_FUNCTION, 1); + switch (e->v.FormattedValue.conversion) { + case 's': oparg = FVC_STR; break; + case 'r': oparg = FVC_REPR; break; + case 'a': oparg = FVC_ASCII; break; + case -1: oparg = FVC_NONE; break; + default: + PyErr_SetString(PyExc_SystemError, + "Unrecognized conversion character"); + return 0; } - - /* If we have a format spec, use format(value, format_spec). Otherwise, - use the single argument form. */ if (e->v.FormattedValue.format_spec) { + /* Evaluate the format spec, and update our opcode arg. */ VISIT(c, expr, e->v.FormattedValue.format_spec); - ADDOP_I(c, CALL_FUNCTION, 2); - } else { - /* No format spec specified, call format(value). */ - ADDOP_I(c, CALL_FUNCTION, 1); + oparg |= FVS_HAVE_SPEC; } + /* And push our opcode and oparg */ + ADDOP_I(c, FORMAT_VALUE, oparg); return 1; } diff --git a/Python/importlib_external.h b/Python/importlib_external.h index c4b6dc96be4..dd322a903a7 100644 --- a/Python/importlib_external.h +++ b/Python/importlib_external.h @@ -258,7 +258,7 @@ const unsigned char _Py_M__importlib_external[] = { 114,5,0,0,0,218,13,95,119,114,105,116,101,95,97,116, 111,109,105,99,99,0,0,0,115,26,0,0,0,0,5,24, 1,9,1,33,1,3,3,21,1,20,1,20,1,13,1,3, - 1,17,1,13,1,5,1,114,55,0,0,0,105,22,13,0, + 1,17,1,13,1,5,1,114,55,0,0,0,105,32,13,0, 0,233,2,0,0,0,114,13,0,0,0,115,2,0,0,0, 13,10,90,11,95,95,112,121,99,97,99,104,101,95,95,122, 4,111,112,116,45,122,3,46,112,121,122,4,46,112,121,99, @@ -368,7 +368,7 @@ const unsigned char _Py_M__importlib_external[] = { 103,90,15,97,108,109,111,115,116,95,102,105,108,101,110,97, 109,101,114,4,0,0,0,114,4,0,0,0,114,5,0,0, 0,218,17,99,97,99,104,101,95,102,114,111,109,95,115,111, - 117,114,99,101,243,0,0,0,115,46,0,0,0,0,18,12, + 117,114,99,101,244,0,0,0,115,46,0,0,0,0,18,12, 1,9,1,7,1,12,1,6,1,12,1,18,1,18,1,24, 1,12,1,12,1,12,1,36,1,12,1,18,1,9,2,12, 1,12,1,12,1,12,1,21,1,21,1,114,79,0,0,0, @@ -447,7 +447,7 @@ const unsigned char _Py_M__importlib_external[] = { 101,118,101,108,90,13,98,97,115,101,95,102,105,108,101,110, 97,109,101,114,4,0,0,0,114,4,0,0,0,114,5,0, 0,0,218,17,115,111,117,114,99,101,95,102,114,111,109,95, - 99,97,99,104,101,31,1,0,0,115,44,0,0,0,0,9, + 99,97,99,104,101,32,1,0,0,115,44,0,0,0,0,9, 18,1,12,1,18,1,18,1,12,1,9,1,15,1,15,1, 12,1,9,1,15,1,12,1,22,1,15,1,9,1,12,1, 22,1,12,1,9,1,12,1,19,1,114,85,0,0,0,99, @@ -484,7 +484,7 @@ const unsigned char _Py_M__importlib_external[] = { 0,0,114,36,0,0,0,90,9,101,120,116,101,110,115,105, 111,110,218,11,115,111,117,114,99,101,95,112,97,116,104,114, 4,0,0,0,114,4,0,0,0,114,5,0,0,0,218,15, - 95,103,101,116,95,115,111,117,114,99,101,102,105,108,101,64, + 95,103,101,116,95,115,111,117,114,99,101,102,105,108,101,65, 1,0,0,115,20,0,0,0,0,7,18,1,4,1,24,1, 35,1,4,1,3,1,16,1,19,1,21,1,114,91,0,0, 0,99,1,0,0,0,0,0,0,0,1,0,0,0,11,0, @@ -499,7 +499,7 @@ const unsigned char _Py_M__importlib_external[] = { 0,0,114,79,0,0,0,114,66,0,0,0,114,74,0,0, 0,41,1,218,8,102,105,108,101,110,97,109,101,114,4,0, 0,0,114,4,0,0,0,114,5,0,0,0,218,11,95,103, - 101,116,95,99,97,99,104,101,100,83,1,0,0,115,16,0, + 101,116,95,99,97,99,104,101,100,84,1,0,0,115,16,0, 0,0,0,1,21,1,3,1,14,1,13,1,8,1,21,1, 4,2,114,95,0,0,0,99,1,0,0,0,0,0,0,0, 2,0,0,0,11,0,0,0,67,0,0,0,115,60,0,0, @@ -514,7 +514,7 @@ const unsigned char _Py_M__importlib_external[] = { 114,39,0,0,0,114,41,0,0,0,114,40,0,0,0,41, 2,114,35,0,0,0,114,42,0,0,0,114,4,0,0,0, 114,4,0,0,0,114,5,0,0,0,218,10,95,99,97,108, - 99,95,109,111,100,101,95,1,0,0,115,12,0,0,0,0, + 99,95,109,111,100,101,96,1,0,0,115,12,0,0,0,0, 2,3,1,19,1,13,1,11,3,10,1,114,97,0,0,0, 99,1,0,0,0,0,0,0,0,3,0,0,0,11,0,0, 0,3,0,0,0,115,84,0,0,0,100,1,0,135,0,0, @@ -554,7 +554,7 @@ const unsigned char _Py_M__importlib_external[] = { 103,115,90,6,107,119,97,114,103,115,41,1,218,6,109,101, 116,104,111,100,114,4,0,0,0,114,5,0,0,0,218,19, 95,99,104,101,99,107,95,110,97,109,101,95,119,114,97,112, - 112,101,114,115,1,0,0,115,12,0,0,0,0,1,12,1, + 112,101,114,116,1,0,0,115,12,0,0,0,0,1,12,1, 12,1,15,1,6,1,25,1,122,40,95,99,104,101,99,107, 95,110,97,109,101,46,60,108,111,99,97,108,115,62,46,95, 99,104,101,99,107,95,110,97,109,101,95,119,114,97,112,112, @@ -573,7 +573,7 @@ const unsigned char _Py_M__importlib_external[] = { 116,97,116,116,114,218,8,95,95,100,105,99,116,95,95,218, 6,117,112,100,97,116,101,41,3,90,3,110,101,119,90,3, 111,108,100,114,52,0,0,0,114,4,0,0,0,114,4,0, - 0,0,114,5,0,0,0,218,5,95,119,114,97,112,126,1, + 0,0,114,5,0,0,0,218,5,95,119,114,97,112,127,1, 0,0,115,8,0,0,0,0,1,25,1,15,1,29,1,122, 26,95,99,104,101,99,107,95,110,97,109,101,46,60,108,111, 99,97,108,115,62,46,95,119,114,97,112,41,3,218,10,95, @@ -581,7 +581,7 @@ const unsigned char _Py_M__importlib_external[] = { 78,97,109,101,69,114,114,111,114,41,3,114,102,0,0,0, 114,103,0,0,0,114,113,0,0,0,114,4,0,0,0,41, 1,114,102,0,0,0,114,5,0,0,0,218,11,95,99,104, - 101,99,107,95,110,97,109,101,107,1,0,0,115,14,0,0, + 101,99,107,95,110,97,109,101,108,1,0,0,115,14,0,0, 0,0,8,21,7,3,1,13,1,13,2,17,5,13,1,114, 116,0,0,0,99,2,0,0,0,0,0,0,0,5,0,0, 0,4,0,0,0,67,0,0,0,115,84,0,0,0,124,0, @@ -611,7 +611,7 @@ const unsigned char _Py_M__importlib_external[] = { 218,8,112,111,114,116,105,111,110,115,218,3,109,115,103,114, 4,0,0,0,114,4,0,0,0,114,5,0,0,0,218,17, 95,102,105,110,100,95,109,111,100,117,108,101,95,115,104,105, - 109,135,1,0,0,115,10,0,0,0,0,10,21,1,24,1, + 109,136,1,0,0,115,10,0,0,0,0,10,21,1,24,1, 6,1,29,1,114,123,0,0,0,99,4,0,0,0,0,0, 0,0,11,0,0,0,19,0,0,0,67,0,0,0,115,252, 1,0,0,105,0,0,125,4,0,124,2,0,100,1,0,107, @@ -698,7 +698,7 @@ const unsigned char _Py_M__importlib_external[] = { 218,11,115,111,117,114,99,101,95,115,105,122,101,114,4,0, 0,0,114,4,0,0,0,114,5,0,0,0,218,25,95,118, 97,108,105,100,97,116,101,95,98,121,116,101,99,111,100,101, - 95,104,101,97,100,101,114,152,1,0,0,115,76,0,0,0, + 95,104,101,97,100,101,114,153,1,0,0,115,76,0,0,0, 0,11,6,1,12,1,13,3,6,1,12,1,10,1,16,1, 16,1,16,1,12,1,18,1,16,1,18,1,18,1,15,1, 16,1,15,1,18,1,15,1,16,1,12,1,12,1,3,1, @@ -729,7 +729,7 @@ const unsigned char _Py_M__importlib_external[] = { 5,114,53,0,0,0,114,98,0,0,0,114,89,0,0,0, 114,90,0,0,0,218,4,99,111,100,101,114,4,0,0,0, 114,4,0,0,0,114,5,0,0,0,218,17,95,99,111,109, - 112,105,108,101,95,98,121,116,101,99,111,100,101,207,1,0, + 112,105,108,101,95,98,121,116,101,99,111,100,101,208,1,0, 0,115,16,0,0,0,0,2,15,1,15,1,16,1,12,1, 16,1,4,2,18,1,114,141,0,0,0,114,59,0,0,0, 99,3,0,0,0,0,0,0,0,4,0,0,0,3,0,0, @@ -749,7 +749,7 @@ const unsigned char _Py_M__importlib_external[] = { 100,117,109,112,115,41,4,114,140,0,0,0,114,126,0,0, 0,114,134,0,0,0,114,53,0,0,0,114,4,0,0,0, 114,4,0,0,0,114,5,0,0,0,218,17,95,99,111,100, - 101,95,116,111,95,98,121,116,101,99,111,100,101,219,1,0, + 101,95,116,111,95,98,121,116,101,99,111,100,101,220,1,0, 0,115,10,0,0,0,0,3,12,1,19,1,19,1,22,1, 114,144,0,0,0,99,1,0,0,0,0,0,0,0,5,0, 0,0,4,0,0,0,67,0,0,0,115,89,0,0,0,100, @@ -778,7 +778,7 @@ const unsigned char _Py_M__importlib_external[] = { 218,8,101,110,99,111,100,105,110,103,90,15,110,101,119,108, 105,110,101,95,100,101,99,111,100,101,114,114,4,0,0,0, 114,4,0,0,0,114,5,0,0,0,218,13,100,101,99,111, - 100,101,95,115,111,117,114,99,101,229,1,0,0,115,10,0, + 100,101,95,115,111,117,114,99,101,230,1,0,0,115,10,0, 0,0,0,5,12,1,18,1,15,1,18,1,114,149,0,0, 0,114,120,0,0,0,218,26,115,117,98,109,111,100,117,108, 101,95,115,101,97,114,99,104,95,108,111,99,97,116,105,111, @@ -843,7 +843,7 @@ const unsigned char _Py_M__importlib_external[] = { 102,105,120,101,115,114,153,0,0,0,90,7,100,105,114,110, 97,109,101,114,4,0,0,0,114,4,0,0,0,114,5,0, 0,0,218,23,115,112,101,99,95,102,114,111,109,95,102,105, - 108,101,95,108,111,99,97,116,105,111,110,246,1,0,0,115, + 108,101,95,108,111,99,97,116,105,111,110,247,1,0,0,115, 60,0,0,0,0,12,12,4,6,1,15,2,3,1,19,1, 13,1,5,8,24,1,9,3,12,1,22,1,21,1,15,1, 9,1,5,2,4,3,12,2,15,1,3,1,19,1,13,1, @@ -883,7 +883,7 @@ const unsigned char _Py_M__importlib_external[] = { 72,75,69,89,95,76,79,67,65,76,95,77,65,67,72,73, 78,69,41,2,218,3,99,108,115,218,3,107,101,121,114,4, 0,0,0,114,4,0,0,0,114,5,0,0,0,218,14,95, - 111,112,101,110,95,114,101,103,105,115,116,114,121,68,2,0, + 111,112,101,110,95,114,101,103,105,115,116,114,121,69,2,0, 0,115,8,0,0,0,0,2,3,1,23,1,13,1,122,36, 87,105,110,100,111,119,115,82,101,103,105,115,116,114,121,70, 105,110,100,101,114,46,95,111,112,101,110,95,114,101,103,105, @@ -910,7 +910,7 @@ const unsigned char _Py_M__importlib_external[] = { 121,95,107,101,121,114,165,0,0,0,90,4,104,107,101,121, 218,8,102,105,108,101,112,97,116,104,114,4,0,0,0,114, 4,0,0,0,114,5,0,0,0,218,16,95,115,101,97,114, - 99,104,95,114,101,103,105,115,116,114,121,75,2,0,0,115, + 99,104,95,114,101,103,105,115,116,114,121,76,2,0,0,115, 22,0,0,0,0,2,9,1,12,2,9,1,15,1,22,1, 3,1,18,1,29,1,13,1,9,1,122,38,87,105,110,100, 111,119,115,82,101,103,105,115,116,114,121,70,105,110,100,101, @@ -935,7 +935,7 @@ const unsigned char _Py_M__importlib_external[] = { 103,101,116,114,171,0,0,0,114,120,0,0,0,114,160,0, 0,0,114,158,0,0,0,114,4,0,0,0,114,4,0,0, 0,114,5,0,0,0,218,9,102,105,110,100,95,115,112,101, - 99,90,2,0,0,115,26,0,0,0,0,2,15,1,12,1, + 99,91,2,0,0,115,26,0,0,0,0,2,15,1,12,1, 4,1,3,1,14,1,13,1,9,1,22,1,21,1,9,1, 15,1,9,1,122,31,87,105,110,100,111,119,115,82,101,103, 105,115,116,114,121,70,105,110,100,101,114,46,102,105,110,100, @@ -954,7 +954,7 @@ const unsigned char _Py_M__importlib_external[] = { 175,0,0,0,114,120,0,0,0,41,4,114,164,0,0,0, 114,119,0,0,0,114,35,0,0,0,114,158,0,0,0,114, 4,0,0,0,114,4,0,0,0,114,5,0,0,0,218,11, - 102,105,110,100,95,109,111,100,117,108,101,106,2,0,0,115, + 102,105,110,100,95,109,111,100,117,108,101,107,2,0,0,115, 8,0,0,0,0,7,18,1,12,1,7,2,122,33,87,105, 110,100,111,119,115,82,101,103,105,115,116,114,121,70,105,110, 100,101,114,46,102,105,110,100,95,109,111,100,117,108,101,41, @@ -963,7 +963,7 @@ const unsigned char _Py_M__importlib_external[] = { 167,0,0,0,218,11,99,108,97,115,115,109,101,116,104,111, 100,114,166,0,0,0,114,172,0,0,0,114,175,0,0,0, 114,176,0,0,0,114,4,0,0,0,114,4,0,0,0,114, - 4,0,0,0,114,5,0,0,0,114,162,0,0,0,56,2, + 4,0,0,0,114,5,0,0,0,114,162,0,0,0,57,2, 0,0,115,20,0,0,0,12,2,6,3,6,3,6,2,6, 2,18,7,18,15,3,1,21,15,3,1,114,162,0,0,0, 99,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0, @@ -1001,7 +1001,7 @@ const unsigned char _Py_M__importlib_external[] = { 100,0,0,0,114,119,0,0,0,114,94,0,0,0,90,13, 102,105,108,101,110,97,109,101,95,98,97,115,101,90,9,116, 97,105,108,95,110,97,109,101,114,4,0,0,0,114,4,0, - 0,0,114,5,0,0,0,114,153,0,0,0,125,2,0,0, + 0,0,114,5,0,0,0,114,153,0,0,0,126,2,0,0, 115,8,0,0,0,0,3,25,1,22,1,19,1,122,24,95, 76,111,97,100,101,114,66,97,115,105,99,115,46,105,115,95, 112,97,99,107,97,103,101,99,2,0,0,0,0,0,0,0, @@ -1012,7 +1012,7 @@ const unsigned char _Py_M__importlib_external[] = { 111,110,46,78,114,4,0,0,0,41,2,114,100,0,0,0, 114,158,0,0,0,114,4,0,0,0,114,4,0,0,0,114, 5,0,0,0,218,13,99,114,101,97,116,101,95,109,111,100, - 117,108,101,133,2,0,0,115,0,0,0,0,122,27,95,76, + 117,108,101,134,2,0,0,115,0,0,0,0,122,27,95,76, 111,97,100,101,114,66,97,115,105,99,115,46,99,114,101,97, 116,101,95,109,111,100,117,108,101,99,2,0,0,0,0,0, 0,0,3,0,0,0,4,0,0,0,67,0,0,0,115,80, @@ -1033,7 +1033,7 @@ const unsigned char _Py_M__importlib_external[] = { 101,99,114,111,0,0,0,41,3,114,100,0,0,0,218,6, 109,111,100,117,108,101,114,140,0,0,0,114,4,0,0,0, 114,4,0,0,0,114,5,0,0,0,218,11,101,120,101,99, - 95,109,111,100,117,108,101,136,2,0,0,115,10,0,0,0, + 95,109,111,100,117,108,101,137,2,0,0,115,10,0,0,0, 0,2,18,1,12,1,9,1,15,1,122,25,95,76,111,97, 100,101,114,66,97,115,105,99,115,46,101,120,101,99,95,109, 111,100,117,108,101,99,2,0,0,0,0,0,0,0,2,0, @@ -1043,13 +1043,13 @@ const unsigned char _Py_M__importlib_external[] = { 95,109,111,100,117,108,101,95,115,104,105,109,41,2,114,100, 0,0,0,114,119,0,0,0,114,4,0,0,0,114,4,0, 0,0,114,5,0,0,0,218,11,108,111,97,100,95,109,111, - 100,117,108,101,144,2,0,0,115,2,0,0,0,0,1,122, + 100,117,108,101,145,2,0,0,115,2,0,0,0,0,1,122, 25,95,76,111,97,100,101,114,66,97,115,105,99,115,46,108, 111,97,100,95,109,111,100,117,108,101,78,41,8,114,105,0, 0,0,114,104,0,0,0,114,106,0,0,0,114,107,0,0, 0,114,153,0,0,0,114,180,0,0,0,114,185,0,0,0, 114,187,0,0,0,114,4,0,0,0,114,4,0,0,0,114, - 4,0,0,0,114,5,0,0,0,114,178,0,0,0,120,2, + 4,0,0,0,114,5,0,0,0,114,178,0,0,0,121,2, 0,0,115,10,0,0,0,12,3,6,2,12,8,12,3,12, 8,114,178,0,0,0,99,0,0,0,0,0,0,0,0,0, 0,0,0,4,0,0,0,64,0,0,0,115,106,0,0,0, @@ -1077,7 +1077,7 @@ const unsigned char _Py_M__importlib_external[] = { 32,32,32,32,78,41,1,218,7,73,79,69,114,114,111,114, 41,2,114,100,0,0,0,114,35,0,0,0,114,4,0,0, 0,114,4,0,0,0,114,5,0,0,0,218,10,112,97,116, - 104,95,109,116,105,109,101,150,2,0,0,115,2,0,0,0, + 104,95,109,116,105,109,101,151,2,0,0,115,2,0,0,0, 0,6,122,23,83,111,117,114,99,101,76,111,97,100,101,114, 46,112,97,116,104,95,109,116,105,109,101,99,2,0,0,0, 0,0,0,0,2,0,0,0,3,0,0,0,67,0,0,0, @@ -1112,7 +1112,7 @@ const unsigned char _Py_M__importlib_external[] = { 10,32,32,32,32,32,32,32,32,114,126,0,0,0,41,1, 114,190,0,0,0,41,2,114,100,0,0,0,114,35,0,0, 0,114,4,0,0,0,114,4,0,0,0,114,5,0,0,0, - 218,10,112,97,116,104,95,115,116,97,116,115,158,2,0,0, + 218,10,112,97,116,104,95,115,116,97,116,115,159,2,0,0, 115,2,0,0,0,0,11,122,23,83,111,117,114,99,101,76, 111,97,100,101,114,46,112,97,116,104,95,115,116,97,116,115, 99,4,0,0,0,0,0,0,0,4,0,0,0,3,0,0, @@ -1136,7 +1136,7 @@ const unsigned char _Py_M__importlib_external[] = { 114,100,0,0,0,114,90,0,0,0,90,10,99,97,99,104, 101,95,112,97,116,104,114,53,0,0,0,114,4,0,0,0, 114,4,0,0,0,114,5,0,0,0,218,15,95,99,97,99, - 104,101,95,98,121,116,101,99,111,100,101,171,2,0,0,115, + 104,101,95,98,121,116,101,99,111,100,101,172,2,0,0,115, 2,0,0,0,0,8,122,28,83,111,117,114,99,101,76,111, 97,100,101,114,46,95,99,97,99,104,101,95,98,121,116,101, 99,111,100,101,99,3,0,0,0,0,0,0,0,3,0,0, @@ -1153,7 +1153,7 @@ const unsigned char _Py_M__importlib_external[] = { 101,115,46,10,32,32,32,32,32,32,32,32,78,114,4,0, 0,0,41,3,114,100,0,0,0,114,35,0,0,0,114,53, 0,0,0,114,4,0,0,0,114,4,0,0,0,114,5,0, - 0,0,114,192,0,0,0,181,2,0,0,115,0,0,0,0, + 0,0,114,192,0,0,0,182,2,0,0,115,0,0,0,0, 122,21,83,111,117,114,99,101,76,111,97,100,101,114,46,115, 101,116,95,100,97,116,97,99,2,0,0,0,0,0,0,0, 5,0,0,0,16,0,0,0,67,0,0,0,115,105,0,0, @@ -1175,7 +1175,7 @@ const unsigned char _Py_M__importlib_external[] = { 0,41,5,114,100,0,0,0,114,119,0,0,0,114,35,0, 0,0,114,147,0,0,0,218,3,101,120,99,114,4,0,0, 0,114,4,0,0,0,114,5,0,0,0,218,10,103,101,116, - 95,115,111,117,114,99,101,188,2,0,0,115,14,0,0,0, + 95,115,111,117,114,99,101,189,2,0,0,115,14,0,0,0, 0,2,15,1,3,1,19,1,18,1,9,1,31,1,122,23, 83,111,117,114,99,101,76,111,97,100,101,114,46,103,101,116, 95,115,111,117,114,99,101,218,9,95,111,112,116,105,109,105, @@ -1197,7 +1197,7 @@ const unsigned char _Py_M__importlib_external[] = { 99,111,109,112,105,108,101,41,4,114,100,0,0,0,114,53, 0,0,0,114,35,0,0,0,114,197,0,0,0,114,4,0, 0,0,114,4,0,0,0,114,5,0,0,0,218,14,115,111, - 117,114,99,101,95,116,111,95,99,111,100,101,198,2,0,0, + 117,114,99,101,95,116,111,95,99,111,100,101,199,2,0,0, 115,4,0,0,0,0,5,21,1,122,27,83,111,117,114,99, 101,76,111,97,100,101,114,46,115,111,117,114,99,101,95,116, 111,95,99,111,100,101,99,2,0,0,0,0,0,0,0,10, @@ -1259,7 +1259,7 @@ const unsigned char _Py_M__importlib_external[] = { 0,0,218,10,98,121,116,101,115,95,100,97,116,97,114,147, 0,0,0,90,11,99,111,100,101,95,111,98,106,101,99,116, 114,4,0,0,0,114,4,0,0,0,114,5,0,0,0,114, - 181,0,0,0,206,2,0,0,115,78,0,0,0,0,7,15, + 181,0,0,0,207,2,0,0,115,78,0,0,0,0,7,15, 1,6,1,3,1,16,1,13,1,11,2,3,1,19,1,13, 1,5,2,16,1,3,1,19,1,13,1,5,2,3,1,9, 1,12,1,13,1,19,1,5,2,12,1,7,1,15,1,6, @@ -1271,7 +1271,7 @@ const unsigned char _Py_M__importlib_external[] = { 0,0,0,114,193,0,0,0,114,192,0,0,0,114,196,0, 0,0,114,200,0,0,0,114,181,0,0,0,114,4,0,0, 0,114,4,0,0,0,114,4,0,0,0,114,5,0,0,0, - 114,188,0,0,0,148,2,0,0,115,14,0,0,0,12,2, + 114,188,0,0,0,149,2,0,0,115,14,0,0,0,12,2, 12,8,12,13,12,10,12,7,12,10,18,8,114,188,0,0, 0,99,0,0,0,0,0,0,0,0,0,0,0,0,4,0, 0,0,0,0,0,0,115,112,0,0,0,101,0,0,90,1, @@ -1300,7 +1300,7 @@ const unsigned char _Py_M__importlib_external[] = { 46,78,41,2,114,98,0,0,0,114,35,0,0,0,41,3, 114,100,0,0,0,114,119,0,0,0,114,35,0,0,0,114, 4,0,0,0,114,4,0,0,0,114,5,0,0,0,114,179, - 0,0,0,7,3,0,0,115,4,0,0,0,0,3,9,1, + 0,0,0,8,3,0,0,115,4,0,0,0,0,3,9,1, 122,19,70,105,108,101,76,111,97,100,101,114,46,95,95,105, 110,105,116,95,95,99,2,0,0,0,0,0,0,0,2,0, 0,0,2,0,0,0,67,0,0,0,115,34,0,0,0,124, @@ -1309,7 +1309,7 @@ const unsigned char _Py_M__importlib_external[] = { 83,41,1,78,41,2,218,9,95,95,99,108,97,115,115,95, 95,114,111,0,0,0,41,2,114,100,0,0,0,218,5,111, 116,104,101,114,114,4,0,0,0,114,4,0,0,0,114,5, - 0,0,0,218,6,95,95,101,113,95,95,13,3,0,0,115, + 0,0,0,218,6,95,95,101,113,95,95,14,3,0,0,115, 4,0,0,0,0,1,18,1,122,17,70,105,108,101,76,111, 97,100,101,114,46,95,95,101,113,95,95,99,1,0,0,0, 0,0,0,0,1,0,0,0,3,0,0,0,67,0,0,0, @@ -1318,7 +1318,7 @@ const unsigned char _Py_M__importlib_external[] = { 1,78,41,3,218,4,104,97,115,104,114,98,0,0,0,114, 35,0,0,0,41,1,114,100,0,0,0,114,4,0,0,0, 114,4,0,0,0,114,5,0,0,0,218,8,95,95,104,97, - 115,104,95,95,17,3,0,0,115,2,0,0,0,0,1,122, + 115,104,95,95,18,3,0,0,115,2,0,0,0,0,1,122, 19,70,105,108,101,76,111,97,100,101,114,46,95,95,104,97, 115,104,95,95,99,2,0,0,0,0,0,0,0,2,0,0, 0,3,0,0,0,3,0,0,0,115,22,0,0,0,116,0, @@ -1333,7 +1333,7 @@ const unsigned char _Py_M__importlib_external[] = { 115,117,112,101,114,114,204,0,0,0,114,187,0,0,0,41, 2,114,100,0,0,0,114,119,0,0,0,41,1,114,205,0, 0,0,114,4,0,0,0,114,5,0,0,0,114,187,0,0, - 0,20,3,0,0,115,2,0,0,0,0,10,122,22,70,105, + 0,21,3,0,0,115,2,0,0,0,0,10,122,22,70,105, 108,101,76,111,97,100,101,114,46,108,111,97,100,95,109,111, 100,117,108,101,99,2,0,0,0,0,0,0,0,2,0,0, 0,1,0,0,0,67,0,0,0,115,7,0,0,0,124,0, @@ -1343,7 +1343,7 @@ const unsigned char _Py_M__importlib_external[] = { 111,117,110,100,32,98,121,32,116,104,101,32,102,105,110,100, 101,114,46,41,1,114,35,0,0,0,41,2,114,100,0,0, 0,114,119,0,0,0,114,4,0,0,0,114,4,0,0,0, - 114,5,0,0,0,114,151,0,0,0,32,3,0,0,115,2, + 114,5,0,0,0,114,151,0,0,0,33,3,0,0,115,2, 0,0,0,0,3,122,23,70,105,108,101,76,111,97,100,101, 114,46,103,101,116,95,102,105,108,101,110,97,109,101,99,2, 0,0,0,0,0,0,0,3,0,0,0,9,0,0,0,67, @@ -1356,14 +1356,14 @@ const unsigned char _Py_M__importlib_external[] = { 78,41,3,114,49,0,0,0,114,50,0,0,0,90,4,114, 101,97,100,41,3,114,100,0,0,0,114,35,0,0,0,114, 54,0,0,0,114,4,0,0,0,114,4,0,0,0,114,5, - 0,0,0,114,194,0,0,0,37,3,0,0,115,4,0,0, + 0,0,0,114,194,0,0,0,38,3,0,0,115,4,0,0, 0,0,2,21,1,122,19,70,105,108,101,76,111,97,100,101, 114,46,103,101,116,95,100,97,116,97,41,11,114,105,0,0, 0,114,104,0,0,0,114,106,0,0,0,114,107,0,0,0, 114,179,0,0,0,114,207,0,0,0,114,209,0,0,0,114, 116,0,0,0,114,187,0,0,0,114,151,0,0,0,114,194, 0,0,0,114,4,0,0,0,114,4,0,0,0,41,1,114, - 205,0,0,0,114,5,0,0,0,114,204,0,0,0,2,3, + 205,0,0,0,114,5,0,0,0,114,204,0,0,0,3,3, 0,0,115,14,0,0,0,12,3,6,2,12,6,12,4,12, 3,24,12,18,5,114,204,0,0,0,99,0,0,0,0,0, 0,0,0,0,0,0,0,4,0,0,0,64,0,0,0,115, @@ -1387,7 +1387,7 @@ const unsigned char _Py_M__importlib_external[] = { 116,105,109,101,90,7,115,116,95,115,105,122,101,41,3,114, 100,0,0,0,114,35,0,0,0,114,202,0,0,0,114,4, 0,0,0,114,4,0,0,0,114,5,0,0,0,114,191,0, - 0,0,47,3,0,0,115,4,0,0,0,0,2,12,1,122, + 0,0,48,3,0,0,115,4,0,0,0,0,2,12,1,122, 27,83,111,117,114,99,101,70,105,108,101,76,111,97,100,101, 114,46,112,97,116,104,95,115,116,97,116,115,99,4,0,0, 0,0,0,0,0,5,0,0,0,5,0,0,0,67,0,0, @@ -1397,7 +1397,7 @@ const unsigned char _Py_M__importlib_external[] = { 100,101,41,2,114,97,0,0,0,114,192,0,0,0,41,5, 114,100,0,0,0,114,90,0,0,0,114,89,0,0,0,114, 53,0,0,0,114,42,0,0,0,114,4,0,0,0,114,4, - 0,0,0,114,5,0,0,0,114,193,0,0,0,52,3,0, + 0,0,0,114,5,0,0,0,114,193,0,0,0,53,3,0, 0,115,4,0,0,0,0,2,12,1,122,32,83,111,117,114, 99,101,70,105,108,101,76,111,97,100,101,114,46,95,99,97, 99,104,101,95,98,121,116,101,99,111,100,101,114,214,0,0, @@ -1436,7 +1436,7 @@ const unsigned char _Py_M__importlib_external[] = { 0,114,53,0,0,0,114,214,0,0,0,218,6,112,97,114, 101,110,116,114,94,0,0,0,114,27,0,0,0,114,23,0, 0,0,114,195,0,0,0,114,4,0,0,0,114,4,0,0, - 0,114,5,0,0,0,114,192,0,0,0,57,3,0,0,115, + 0,114,5,0,0,0,114,192,0,0,0,58,3,0,0,115, 42,0,0,0,0,2,18,1,6,2,22,1,18,1,17,2, 19,1,15,1,3,1,17,1,13,2,7,1,18,3,9,1, 10,1,27,1,3,1,16,1,20,1,18,2,12,1,122,25, @@ -1445,7 +1445,7 @@ const unsigned char _Py_M__importlib_external[] = { 0,114,104,0,0,0,114,106,0,0,0,114,107,0,0,0, 114,191,0,0,0,114,193,0,0,0,114,192,0,0,0,114, 4,0,0,0,114,4,0,0,0,114,4,0,0,0,114,5, - 0,0,0,114,212,0,0,0,43,3,0,0,115,8,0,0, + 0,0,0,114,212,0,0,0,44,3,0,0,115,8,0,0, 0,12,2,6,2,12,5,12,5,114,212,0,0,0,99,0, 0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,64, 0,0,0,115,46,0,0,0,101,0,0,90,1,0,100,0, @@ -1467,7 +1467,7 @@ const unsigned char _Py_M__importlib_external[] = { 0,114,135,0,0,0,114,141,0,0,0,41,5,114,100,0, 0,0,114,119,0,0,0,114,35,0,0,0,114,53,0,0, 0,114,203,0,0,0,114,4,0,0,0,114,4,0,0,0, - 114,5,0,0,0,114,181,0,0,0,92,3,0,0,115,8, + 114,5,0,0,0,114,181,0,0,0,93,3,0,0,115,8, 0,0,0,0,1,15,1,15,1,24,1,122,29,83,111,117, 114,99,101,108,101,115,115,70,105,108,101,76,111,97,100,101, 114,46,103,101,116,95,99,111,100,101,99,2,0,0,0,0, @@ -1477,13 +1477,13 @@ const unsigned char _Py_M__importlib_external[] = { 32,105,115,32,110,111,32,115,111,117,114,99,101,32,99,111, 100,101,46,78,114,4,0,0,0,41,2,114,100,0,0,0, 114,119,0,0,0,114,4,0,0,0,114,4,0,0,0,114, - 5,0,0,0,114,196,0,0,0,98,3,0,0,115,2,0, + 5,0,0,0,114,196,0,0,0,99,3,0,0,115,2,0, 0,0,0,2,122,31,83,111,117,114,99,101,108,101,115,115, 70,105,108,101,76,111,97,100,101,114,46,103,101,116,95,115, 111,117,114,99,101,78,41,6,114,105,0,0,0,114,104,0, 0,0,114,106,0,0,0,114,107,0,0,0,114,181,0,0, 0,114,196,0,0,0,114,4,0,0,0,114,4,0,0,0, - 114,4,0,0,0,114,5,0,0,0,114,217,0,0,0,88, + 114,4,0,0,0,114,5,0,0,0,114,217,0,0,0,89, 3,0,0,115,6,0,0,0,12,2,6,2,12,6,114,217, 0,0,0,99,0,0,0,0,0,0,0,0,0,0,0,0, 3,0,0,0,64,0,0,0,115,136,0,0,0,101,0,0, @@ -1508,7 +1508,7 @@ const unsigned char _Py_M__importlib_external[] = { 0,124,0,0,95,1,0,100,0,0,83,41,1,78,41,2, 114,98,0,0,0,114,35,0,0,0,41,3,114,100,0,0, 0,114,98,0,0,0,114,35,0,0,0,114,4,0,0,0, - 114,4,0,0,0,114,5,0,0,0,114,179,0,0,0,115, + 114,4,0,0,0,114,5,0,0,0,114,179,0,0,0,116, 3,0,0,115,4,0,0,0,0,1,9,1,122,28,69,120, 116,101,110,115,105,111,110,70,105,108,101,76,111,97,100,101, 114,46,95,95,105,110,105,116,95,95,99,2,0,0,0,0, @@ -1518,7 +1518,7 @@ const unsigned char _Py_M__importlib_external[] = { 1,0,107,2,0,83,41,1,78,41,2,114,205,0,0,0, 114,111,0,0,0,41,2,114,100,0,0,0,114,206,0,0, 0,114,4,0,0,0,114,4,0,0,0,114,5,0,0,0, - 114,207,0,0,0,119,3,0,0,115,4,0,0,0,0,1, + 114,207,0,0,0,120,3,0,0,115,4,0,0,0,0,1, 18,1,122,26,69,120,116,101,110,115,105,111,110,70,105,108, 101,76,111,97,100,101,114,46,95,95,101,113,95,95,99,1, 0,0,0,0,0,0,0,1,0,0,0,3,0,0,0,67, @@ -1527,7 +1527,7 @@ const unsigned char _Py_M__importlib_external[] = { 65,83,41,1,78,41,3,114,208,0,0,0,114,98,0,0, 0,114,35,0,0,0,41,1,114,100,0,0,0,114,4,0, 0,0,114,4,0,0,0,114,5,0,0,0,114,209,0,0, - 0,123,3,0,0,115,2,0,0,0,0,1,122,28,69,120, + 0,124,3,0,0,115,2,0,0,0,0,1,122,28,69,120, 116,101,110,115,105,111,110,70,105,108,101,76,111,97,100,101, 114,46,95,95,104,97,115,104,95,95,99,2,0,0,0,0, 0,0,0,3,0,0,0,4,0,0,0,67,0,0,0,115, @@ -1544,7 +1544,7 @@ const unsigned char _Py_M__importlib_external[] = { 101,95,100,121,110,97,109,105,99,114,129,0,0,0,114,98, 0,0,0,114,35,0,0,0,41,3,114,100,0,0,0,114, 158,0,0,0,114,184,0,0,0,114,4,0,0,0,114,4, - 0,0,0,114,5,0,0,0,114,180,0,0,0,126,3,0, + 0,0,0,114,5,0,0,0,114,180,0,0,0,127,3,0, 0,115,10,0,0,0,0,2,6,1,15,1,9,1,16,1, 122,33,69,120,116,101,110,115,105,111,110,70,105,108,101,76, 111,97,100,101,114,46,99,114,101,97,116,101,95,109,111,100, @@ -1562,7 +1562,7 @@ const unsigned char _Py_M__importlib_external[] = { 99,95,100,121,110,97,109,105,99,114,129,0,0,0,114,98, 0,0,0,114,35,0,0,0,41,2,114,100,0,0,0,114, 184,0,0,0,114,4,0,0,0,114,4,0,0,0,114,5, - 0,0,0,114,185,0,0,0,134,3,0,0,115,6,0,0, + 0,0,0,114,185,0,0,0,135,3,0,0,115,6,0,0, 0,0,2,19,1,9,1,122,31,69,120,116,101,110,115,105, 111,110,70,105,108,101,76,111,97,100,101,114,46,101,120,101, 99,95,109,111,100,117,108,101,99,2,0,0,0,0,0,0, @@ -1581,7 +1581,7 @@ const unsigned char _Py_M__importlib_external[] = { 0,0,41,2,114,22,0,0,0,218,6,115,117,102,102,105, 120,41,1,218,9,102,105,108,101,95,110,97,109,101,114,4, 0,0,0,114,5,0,0,0,250,9,60,103,101,110,101,120, - 112,114,62,143,3,0,0,115,2,0,0,0,6,1,122,49, + 112,114,62,144,3,0,0,115,2,0,0,0,6,1,122,49, 69,120,116,101,110,115,105,111,110,70,105,108,101,76,111,97, 100,101,114,46,105,115,95,112,97,99,107,97,103,101,46,60, 108,111,99,97,108,115,62,46,60,103,101,110,101,120,112,114, @@ -1589,7 +1589,7 @@ const unsigned char _Py_M__importlib_external[] = { 110,121,218,18,69,88,84,69,78,83,73,79,78,95,83,85, 70,70,73,88,69,83,41,2,114,100,0,0,0,114,119,0, 0,0,114,4,0,0,0,41,1,114,220,0,0,0,114,5, - 0,0,0,114,153,0,0,0,140,3,0,0,115,6,0,0, + 0,0,0,114,153,0,0,0,141,3,0,0,115,6,0,0, 0,0,2,19,1,18,1,122,30,69,120,116,101,110,115,105, 111,110,70,105,108,101,76,111,97,100,101,114,46,105,115,95, 112,97,99,107,97,103,101,99,2,0,0,0,0,0,0,0, @@ -1600,7 +1600,7 @@ const unsigned char _Py_M__importlib_external[] = { 111,116,32,99,114,101,97,116,101,32,97,32,99,111,100,101, 32,111,98,106,101,99,116,46,78,114,4,0,0,0,41,2, 114,100,0,0,0,114,119,0,0,0,114,4,0,0,0,114, - 4,0,0,0,114,5,0,0,0,114,181,0,0,0,146,3, + 4,0,0,0,114,5,0,0,0,114,181,0,0,0,147,3, 0,0,115,2,0,0,0,0,2,122,28,69,120,116,101,110, 115,105,111,110,70,105,108,101,76,111,97,100,101,114,46,103, 101,116,95,99,111,100,101,99,2,0,0,0,0,0,0,0, @@ -1611,7 +1611,7 @@ const unsigned char _Py_M__importlib_external[] = { 111,32,115,111,117,114,99,101,32,99,111,100,101,46,78,114, 4,0,0,0,41,2,114,100,0,0,0,114,119,0,0,0, 114,4,0,0,0,114,4,0,0,0,114,5,0,0,0,114, - 196,0,0,0,150,3,0,0,115,2,0,0,0,0,2,122, + 196,0,0,0,151,3,0,0,115,2,0,0,0,0,2,122, 30,69,120,116,101,110,115,105,111,110,70,105,108,101,76,111, 97,100,101,114,46,103,101,116,95,115,111,117,114,99,101,99, 2,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0, @@ -1622,7 +1622,7 @@ const unsigned char _Py_M__importlib_external[] = { 98,121,32,116,104,101,32,102,105,110,100,101,114,46,41,1, 114,35,0,0,0,41,2,114,100,0,0,0,114,119,0,0, 0,114,4,0,0,0,114,4,0,0,0,114,5,0,0,0, - 114,151,0,0,0,154,3,0,0,115,2,0,0,0,0,3, + 114,151,0,0,0,155,3,0,0,115,2,0,0,0,0,3, 122,32,69,120,116,101,110,115,105,111,110,70,105,108,101,76, 111,97,100,101,114,46,103,101,116,95,102,105,108,101,110,97, 109,101,78,41,14,114,105,0,0,0,114,104,0,0,0,114, @@ -1631,7 +1631,7 @@ const unsigned char _Py_M__importlib_external[] = { 0,0,114,153,0,0,0,114,181,0,0,0,114,196,0,0, 0,114,116,0,0,0,114,151,0,0,0,114,4,0,0,0, 114,4,0,0,0,114,4,0,0,0,114,5,0,0,0,114, - 218,0,0,0,107,3,0,0,115,20,0,0,0,12,6,6, + 218,0,0,0,108,3,0,0,115,20,0,0,0,12,6,6, 2,12,4,12,4,12,3,12,8,12,6,12,6,12,4,12, 4,114,218,0,0,0,99,0,0,0,0,0,0,0,0,0, 0,0,0,2,0,0,0,64,0,0,0,115,130,0,0,0, @@ -1675,7 +1675,7 @@ const unsigned char _Py_M__importlib_external[] = { 104,95,102,105,110,100,101,114,41,4,114,100,0,0,0,114, 98,0,0,0,114,35,0,0,0,218,11,112,97,116,104,95, 102,105,110,100,101,114,114,4,0,0,0,114,4,0,0,0, - 114,5,0,0,0,114,179,0,0,0,167,3,0,0,115,8, + 114,5,0,0,0,114,179,0,0,0,168,3,0,0,115,8, 0,0,0,0,1,9,1,9,1,21,1,122,23,95,78,97, 109,101,115,112,97,99,101,80,97,116,104,46,95,95,105,110, 105,116,95,95,99,1,0,0,0,0,0,0,0,4,0,0, @@ -1694,7 +1694,7 @@ const unsigned char _Py_M__importlib_external[] = { 0,0,0,114,216,0,0,0,218,3,100,111,116,90,2,109, 101,114,4,0,0,0,114,4,0,0,0,114,5,0,0,0, 218,23,95,102,105,110,100,95,112,97,114,101,110,116,95,112, - 97,116,104,95,110,97,109,101,115,173,3,0,0,115,8,0, + 97,116,104,95,110,97,109,101,115,174,3,0,0,115,8,0, 0,0,0,2,27,1,12,2,4,3,122,38,95,78,97,109, 101,115,112,97,99,101,80,97,116,104,46,95,102,105,110,100, 95,112,97,114,101,110,116,95,112,97,116,104,95,110,97,109, @@ -1707,7 +1707,7 @@ const unsigned char _Py_M__importlib_external[] = { 3,114,100,0,0,0,90,18,112,97,114,101,110,116,95,109, 111,100,117,108,101,95,110,97,109,101,90,14,112,97,116,104, 95,97,116,116,114,95,110,97,109,101,114,4,0,0,0,114, - 4,0,0,0,114,5,0,0,0,114,227,0,0,0,183,3, + 4,0,0,0,114,5,0,0,0,114,227,0,0,0,184,3, 0,0,115,4,0,0,0,0,1,18,1,122,31,95,78,97, 109,101,115,112,97,99,101,80,97,116,104,46,95,103,101,116, 95,112,97,114,101,110,116,95,112,97,116,104,99,1,0,0, @@ -1725,7 +1725,7 @@ const unsigned char _Py_M__importlib_external[] = { 150,0,0,0,114,226,0,0,0,41,3,114,100,0,0,0, 90,11,112,97,114,101,110,116,95,112,97,116,104,114,158,0, 0,0,114,4,0,0,0,114,4,0,0,0,114,5,0,0, - 0,218,12,95,114,101,99,97,108,99,117,108,97,116,101,187, + 0,218,12,95,114,101,99,97,108,99,117,108,97,116,101,188, 3,0,0,115,16,0,0,0,0,2,18,1,15,1,21,3, 27,1,9,1,12,1,9,1,122,27,95,78,97,109,101,115, 112,97,99,101,80,97,116,104,46,95,114,101,99,97,108,99, @@ -1734,7 +1734,7 @@ const unsigned char _Py_M__importlib_external[] = { 0,0,124,0,0,106,1,0,131,0,0,131,1,0,83,41, 1,78,41,2,218,4,105,116,101,114,114,234,0,0,0,41, 1,114,100,0,0,0,114,4,0,0,0,114,4,0,0,0, - 114,5,0,0,0,218,8,95,95,105,116,101,114,95,95,200, + 114,5,0,0,0,218,8,95,95,105,116,101,114,95,95,201, 3,0,0,115,2,0,0,0,0,1,122,23,95,78,97,109, 101,115,112,97,99,101,80,97,116,104,46,95,95,105,116,101, 114,95,95,99,1,0,0,0,0,0,0,0,1,0,0,0, @@ -1742,7 +1742,7 @@ const unsigned char _Py_M__importlib_external[] = { 124,0,0,106,1,0,131,0,0,131,1,0,83,41,1,78, 41,2,114,31,0,0,0,114,234,0,0,0,41,1,114,100, 0,0,0,114,4,0,0,0,114,4,0,0,0,114,5,0, - 0,0,218,7,95,95,108,101,110,95,95,203,3,0,0,115, + 0,0,218,7,95,95,108,101,110,95,95,204,3,0,0,115, 2,0,0,0,0,1,122,22,95,78,97,109,101,115,112,97, 99,101,80,97,116,104,46,95,95,108,101,110,95,95,99,1, 0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,67, @@ -1751,7 +1751,7 @@ const unsigned char _Py_M__importlib_external[] = { 109,101,115,112,97,99,101,80,97,116,104,40,123,33,114,125, 41,41,2,114,47,0,0,0,114,226,0,0,0,41,1,114, 100,0,0,0,114,4,0,0,0,114,4,0,0,0,114,5, - 0,0,0,218,8,95,95,114,101,112,114,95,95,206,3,0, + 0,0,0,218,8,95,95,114,101,112,114,95,95,207,3,0, 0,115,2,0,0,0,0,1,122,23,95,78,97,109,101,115, 112,97,99,101,80,97,116,104,46,95,95,114,101,112,114,95, 95,99,2,0,0,0,0,0,0,0,2,0,0,0,2,0, @@ -1759,7 +1759,7 @@ const unsigned char _Py_M__importlib_external[] = { 0,106,0,0,131,0,0,107,6,0,83,41,1,78,41,1, 114,234,0,0,0,41,2,114,100,0,0,0,218,4,105,116, 101,109,114,4,0,0,0,114,4,0,0,0,114,5,0,0, - 0,218,12,95,95,99,111,110,116,97,105,110,115,95,95,209, + 0,218,12,95,95,99,111,110,116,97,105,110,115,95,95,210, 3,0,0,115,2,0,0,0,0,1,122,27,95,78,97,109, 101,115,112,97,99,101,80,97,116,104,46,95,95,99,111,110, 116,97,105,110,115,95,95,99,2,0,0,0,0,0,0,0, @@ -1768,7 +1768,7 @@ const unsigned char _Py_M__importlib_external[] = { 1,100,0,0,83,41,1,78,41,2,114,226,0,0,0,114, 157,0,0,0,41,2,114,100,0,0,0,114,239,0,0,0, 114,4,0,0,0,114,4,0,0,0,114,5,0,0,0,114, - 157,0,0,0,212,3,0,0,115,2,0,0,0,0,1,122, + 157,0,0,0,213,3,0,0,115,2,0,0,0,0,1,122, 21,95,78,97,109,101,115,112,97,99,101,80,97,116,104,46, 97,112,112,101,110,100,78,41,13,114,105,0,0,0,114,104, 0,0,0,114,106,0,0,0,114,107,0,0,0,114,179,0, @@ -1776,7 +1776,7 @@ const unsigned char _Py_M__importlib_external[] = { 0,114,236,0,0,0,114,237,0,0,0,114,238,0,0,0, 114,240,0,0,0,114,157,0,0,0,114,4,0,0,0,114, 4,0,0,0,114,4,0,0,0,114,5,0,0,0,114,224, - 0,0,0,160,3,0,0,115,20,0,0,0,12,5,6,2, + 0,0,0,161,3,0,0,115,20,0,0,0,12,5,6,2, 12,6,12,10,12,4,12,13,12,3,12,3,12,3,12,3, 114,224,0,0,0,99,0,0,0,0,0,0,0,0,0,0, 0,0,3,0,0,0,64,0,0,0,115,118,0,0,0,101, @@ -1795,7 +1795,7 @@ const unsigned char _Py_M__importlib_external[] = { 2,114,224,0,0,0,114,226,0,0,0,41,4,114,100,0, 0,0,114,98,0,0,0,114,35,0,0,0,114,230,0,0, 0,114,4,0,0,0,114,4,0,0,0,114,5,0,0,0, - 114,179,0,0,0,218,3,0,0,115,2,0,0,0,0,1, + 114,179,0,0,0,219,3,0,0,115,2,0,0,0,0,1, 122,25,95,78,97,109,101,115,112,97,99,101,76,111,97,100, 101,114,46,95,95,105,110,105,116,95,95,99,2,0,0,0, 0,0,0,0,2,0,0,0,2,0,0,0,67,0,0,0, @@ -1812,21 +1812,21 @@ const unsigned char _Py_M__importlib_external[] = { 115,112,97,99,101,41,62,41,2,114,47,0,0,0,114,105, 0,0,0,41,2,114,164,0,0,0,114,184,0,0,0,114, 4,0,0,0,114,4,0,0,0,114,5,0,0,0,218,11, - 109,111,100,117,108,101,95,114,101,112,114,221,3,0,0,115, + 109,111,100,117,108,101,95,114,101,112,114,222,3,0,0,115, 2,0,0,0,0,7,122,28,95,78,97,109,101,115,112,97, 99,101,76,111,97,100,101,114,46,109,111,100,117,108,101,95, 114,101,112,114,99,2,0,0,0,0,0,0,0,2,0,0, 0,1,0,0,0,67,0,0,0,115,4,0,0,0,100,1, 0,83,41,2,78,84,114,4,0,0,0,41,2,114,100,0, 0,0,114,119,0,0,0,114,4,0,0,0,114,4,0,0, - 0,114,5,0,0,0,114,153,0,0,0,230,3,0,0,115, + 0,114,5,0,0,0,114,153,0,0,0,231,3,0,0,115, 2,0,0,0,0,1,122,27,95,78,97,109,101,115,112,97, 99,101,76,111,97,100,101,114,46,105,115,95,112,97,99,107, 97,103,101,99,2,0,0,0,0,0,0,0,2,0,0,0, 1,0,0,0,67,0,0,0,115,4,0,0,0,100,1,0, 83,41,2,78,114,30,0,0,0,114,4,0,0,0,41,2, 114,100,0,0,0,114,119,0,0,0,114,4,0,0,0,114, - 4,0,0,0,114,5,0,0,0,114,196,0,0,0,233,3, + 4,0,0,0,114,5,0,0,0,114,196,0,0,0,234,3, 0,0,115,2,0,0,0,0,1,122,27,95,78,97,109,101, 115,112,97,99,101,76,111,97,100,101,114,46,103,101,116,95, 115,111,117,114,99,101,99,2,0,0,0,0,0,0,0,2, @@ -1836,7 +1836,7 @@ const unsigned char _Py_M__importlib_external[] = { 60,115,116,114,105,110,103,62,114,183,0,0,0,114,198,0, 0,0,84,41,1,114,199,0,0,0,41,2,114,100,0,0, 0,114,119,0,0,0,114,4,0,0,0,114,4,0,0,0, - 114,5,0,0,0,114,181,0,0,0,236,3,0,0,115,2, + 114,5,0,0,0,114,181,0,0,0,237,3,0,0,115,2, 0,0,0,0,1,122,25,95,78,97,109,101,115,112,97,99, 101,76,111,97,100,101,114,46,103,101,116,95,99,111,100,101, 99,2,0,0,0,0,0,0,0,2,0,0,0,1,0,0, @@ -1846,14 +1846,14 @@ const unsigned char _Py_M__importlib_external[] = { 108,101,32,99,114,101,97,116,105,111,110,46,78,114,4,0, 0,0,41,2,114,100,0,0,0,114,158,0,0,0,114,4, 0,0,0,114,4,0,0,0,114,5,0,0,0,114,180,0, - 0,0,239,3,0,0,115,0,0,0,0,122,30,95,78,97, + 0,0,240,3,0,0,115,0,0,0,0,122,30,95,78,97, 109,101,115,112,97,99,101,76,111,97,100,101,114,46,99,114, 101,97,116,101,95,109,111,100,117,108,101,99,2,0,0,0, 0,0,0,0,2,0,0,0,1,0,0,0,67,0,0,0, 115,4,0,0,0,100,0,0,83,41,1,78,114,4,0,0, 0,41,2,114,100,0,0,0,114,184,0,0,0,114,4,0, 0,0,114,4,0,0,0,114,5,0,0,0,114,185,0,0, - 0,242,3,0,0,115,2,0,0,0,0,1,122,28,95,78, + 0,243,3,0,0,115,2,0,0,0,0,1,122,28,95,78, 97,109,101,115,112,97,99,101,76,111,97,100,101,114,46,101, 120,101,99,95,109,111,100,117,108,101,99,2,0,0,0,0, 0,0,0,2,0,0,0,3,0,0,0,67,0,0,0,115, @@ -1871,7 +1871,7 @@ const unsigned char _Py_M__importlib_external[] = { 32,123,33,114,125,41,4,114,114,0,0,0,114,129,0,0, 0,114,226,0,0,0,114,186,0,0,0,41,2,114,100,0, 0,0,114,119,0,0,0,114,4,0,0,0,114,4,0,0, - 0,114,5,0,0,0,114,187,0,0,0,245,3,0,0,115, + 0,114,5,0,0,0,114,187,0,0,0,246,3,0,0,115, 6,0,0,0,0,7,9,1,10,1,122,28,95,78,97,109, 101,115,112,97,99,101,76,111,97,100,101,114,46,108,111,97, 100,95,109,111,100,117,108,101,78,41,12,114,105,0,0,0, @@ -1880,7 +1880,7 @@ const unsigned char _Py_M__importlib_external[] = { 0,0,0,114,181,0,0,0,114,180,0,0,0,114,185,0, 0,0,114,187,0,0,0,114,4,0,0,0,114,4,0,0, 0,114,4,0,0,0,114,5,0,0,0,114,241,0,0,0, - 217,3,0,0,115,16,0,0,0,12,1,12,3,18,9,12, + 218,3,0,0,115,16,0,0,0,12,1,12,3,18,9,12, 3,12,3,12,3,12,3,12,3,114,241,0,0,0,99,0, 0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,64, 0,0,0,115,160,0,0,0,101,0,0,90,1,0,100,0, @@ -1917,7 +1917,7 @@ const unsigned char _Py_M__importlib_external[] = { 101,114,95,99,97,99,104,101,218,6,118,97,108,117,101,115, 114,108,0,0,0,114,244,0,0,0,41,2,114,164,0,0, 0,218,6,102,105,110,100,101,114,114,4,0,0,0,114,4, - 0,0,0,114,5,0,0,0,114,244,0,0,0,7,4,0, + 0,0,0,114,5,0,0,0,114,244,0,0,0,8,4,0, 0,115,6,0,0,0,0,4,22,1,15,1,122,28,80,97, 116,104,70,105,110,100,101,114,46,105,110,118,97,108,105,100, 97,116,101,95,99,97,99,104,101,115,99,2,0,0,0,0, @@ -1943,7 +1943,7 @@ const unsigned char _Py_M__importlib_external[] = { 114,99,0,0,0,41,3,114,164,0,0,0,114,35,0,0, 0,90,4,104,111,111,107,114,4,0,0,0,114,4,0,0, 0,114,5,0,0,0,218,11,95,112,97,116,104,95,104,111, - 111,107,115,15,4,0,0,115,16,0,0,0,0,7,25,1, + 111,107,115,16,4,0,0,115,16,0,0,0,0,7,25,1, 16,1,16,1,3,1,14,1,13,1,12,2,122,22,80,97, 116,104,70,105,110,100,101,114,46,95,112,97,116,104,95,104, 111,111,107,115,99,2,0,0,0,0,0,0,0,3,0,0, @@ -1975,7 +1975,7 @@ const unsigned char _Py_M__importlib_external[] = { 0,0,0,114,249,0,0,0,41,3,114,164,0,0,0,114, 35,0,0,0,114,247,0,0,0,114,4,0,0,0,114,4, 0,0,0,114,5,0,0,0,218,20,95,112,97,116,104,95, - 105,109,112,111,114,116,101,114,95,99,97,99,104,101,32,4, + 105,109,112,111,114,116,101,114,95,99,97,99,104,101,33,4, 0,0,115,22,0,0,0,0,8,12,1,3,1,16,1,13, 3,9,1,3,1,17,1,13,1,15,1,18,1,122,31,80, 97,116,104,70,105,110,100,101,114,46,95,112,97,116,104,95, @@ -1995,7 +1995,7 @@ const unsigned char _Py_M__importlib_external[] = { 0,0,0,114,119,0,0,0,114,247,0,0,0,114,120,0, 0,0,114,121,0,0,0,114,158,0,0,0,114,4,0,0, 0,114,4,0,0,0,114,5,0,0,0,218,16,95,108,101, - 103,97,99,121,95,103,101,116,95,115,112,101,99,54,4,0, + 103,97,99,121,95,103,101,116,95,115,112,101,99,55,4,0, 0,115,18,0,0,0,0,4,15,1,24,2,15,1,6,1, 12,1,16,1,18,1,9,1,122,27,80,97,116,104,70,105, 110,100,101,114,46,95,108,101,103,97,99,121,95,103,101,116, @@ -2031,7 +2031,7 @@ const unsigned char _Py_M__importlib_external[] = { 109,101,115,112,97,99,101,95,112,97,116,104,90,5,101,110, 116,114,121,114,247,0,0,0,114,158,0,0,0,114,121,0, 0,0,114,4,0,0,0,114,4,0,0,0,114,5,0,0, - 0,218,9,95,103,101,116,95,115,112,101,99,69,4,0,0, + 0,218,9,95,103,101,116,95,115,112,101,99,70,4,0,0, 115,40,0,0,0,0,5,6,1,13,1,21,1,3,1,15, 1,12,1,15,1,21,2,18,1,12,1,3,1,15,1,4, 1,9,1,12,1,12,5,17,2,18,1,9,1,122,20,80, @@ -2059,7 +2059,7 @@ const unsigned char _Py_M__importlib_external[] = { 41,6,114,164,0,0,0,114,119,0,0,0,114,35,0,0, 0,114,174,0,0,0,114,158,0,0,0,114,254,0,0,0, 114,4,0,0,0,114,4,0,0,0,114,5,0,0,0,114, - 175,0,0,0,101,4,0,0,115,26,0,0,0,0,4,12, + 175,0,0,0,102,4,0,0,115,26,0,0,0,0,4,12, 1,9,1,21,1,12,1,4,1,15,1,9,1,6,3,9, 1,24,1,4,2,7,2,122,20,80,97,116,104,70,105,110, 100,101,114,46,102,105,110,100,95,115,112,101,99,99,3,0, @@ -2081,7 +2081,7 @@ const unsigned char _Py_M__importlib_external[] = { 2,114,175,0,0,0,114,120,0,0,0,41,4,114,164,0, 0,0,114,119,0,0,0,114,35,0,0,0,114,158,0,0, 0,114,4,0,0,0,114,4,0,0,0,114,5,0,0,0, - 114,176,0,0,0,123,4,0,0,115,8,0,0,0,0,8, + 114,176,0,0,0,124,4,0,0,115,8,0,0,0,0,8, 18,1,12,1,4,1,122,22,80,97,116,104,70,105,110,100, 101,114,46,102,105,110,100,95,109,111,100,117,108,101,41,12, 114,105,0,0,0,114,104,0,0,0,114,106,0,0,0,114, @@ -2089,7 +2089,7 @@ const unsigned char _Py_M__importlib_external[] = { 0,0,0,114,251,0,0,0,114,252,0,0,0,114,255,0, 0,0,114,175,0,0,0,114,176,0,0,0,114,4,0,0, 0,114,4,0,0,0,114,4,0,0,0,114,5,0,0,0, - 114,243,0,0,0,3,4,0,0,115,22,0,0,0,12,2, + 114,243,0,0,0,4,4,0,0,115,22,0,0,0,12,2, 6,2,18,8,18,17,18,22,18,15,3,1,18,31,3,1, 21,21,3,1,114,243,0,0,0,99,0,0,0,0,0,0, 0,0,0,0,0,0,3,0,0,0,64,0,0,0,115,133, @@ -2138,7 +2138,7 @@ const unsigned char _Py_M__importlib_external[] = { 2,0,86,1,113,3,0,100,0,0,83,41,1,78,114,4, 0,0,0,41,2,114,22,0,0,0,114,219,0,0,0,41, 1,114,120,0,0,0,114,4,0,0,0,114,5,0,0,0, - 114,221,0,0,0,152,4,0,0,115,2,0,0,0,6,0, + 114,221,0,0,0,153,4,0,0,115,2,0,0,0,6,0, 122,38,70,105,108,101,70,105,110,100,101,114,46,95,95,105, 110,105,116,95,95,46,60,108,111,99,97,108,115,62,46,60, 103,101,110,101,120,112,114,62,114,58,0,0,0,114,29,0, @@ -2151,7 +2151,7 @@ const unsigned char _Py_M__importlib_external[] = { 108,111,97,100,101,114,95,100,101,116,97,105,108,115,90,7, 108,111,97,100,101,114,115,114,160,0,0,0,114,4,0,0, 0,41,1,114,120,0,0,0,114,5,0,0,0,114,179,0, - 0,0,146,4,0,0,115,16,0,0,0,0,4,6,1,19, + 0,0,147,4,0,0,115,16,0,0,0,0,4,6,1,19, 1,36,1,9,2,15,1,9,1,12,1,122,19,70,105,108, 101,70,105,110,100,101,114,46,95,95,105,110,105,116,95,95, 99,1,0,0,0,0,0,0,0,1,0,0,0,2,0,0, @@ -2161,7 +2161,7 @@ const unsigned char _Py_M__importlib_external[] = { 111,114,121,32,109,116,105,109,101,46,114,29,0,0,0,78, 114,87,0,0,0,41,1,114,2,1,0,0,41,1,114,100, 0,0,0,114,4,0,0,0,114,4,0,0,0,114,5,0, - 0,0,114,244,0,0,0,160,4,0,0,115,2,0,0,0, + 0,0,114,244,0,0,0,161,4,0,0,115,2,0,0,0, 0,2,122,28,70,105,108,101,70,105,110,100,101,114,46,105, 110,118,97,108,105,100,97,116,101,95,99,97,99,104,101,115, 99,2,0,0,0,0,0,0,0,3,0,0,0,2,0,0, @@ -2185,7 +2185,7 @@ const unsigned char _Py_M__importlib_external[] = { 3,114,175,0,0,0,114,120,0,0,0,114,150,0,0,0, 41,3,114,100,0,0,0,114,119,0,0,0,114,158,0,0, 0,114,4,0,0,0,114,4,0,0,0,114,5,0,0,0, - 114,117,0,0,0,166,4,0,0,115,8,0,0,0,0,7, + 114,117,0,0,0,167,4,0,0,115,8,0,0,0,0,7, 15,1,12,1,10,1,122,22,70,105,108,101,70,105,110,100, 101,114,46,102,105,110,100,95,108,111,97,100,101,114,99,6, 0,0,0,0,0,0,0,7,0,0,0,7,0,0,0,67, @@ -2196,7 +2196,7 @@ const unsigned char _Py_M__importlib_external[] = { 161,0,0,0,41,7,114,100,0,0,0,114,159,0,0,0, 114,119,0,0,0,114,35,0,0,0,90,4,115,109,115,108, 114,174,0,0,0,114,120,0,0,0,114,4,0,0,0,114, - 4,0,0,0,114,5,0,0,0,114,255,0,0,0,178,4, + 4,0,0,0,114,5,0,0,0,114,255,0,0,0,179,4, 0,0,115,6,0,0,0,0,1,15,1,18,1,122,20,70, 105,108,101,70,105,110,100,101,114,46,95,103,101,116,95,115, 112,101,99,78,99,3,0,0,0,0,0,0,0,14,0,0, @@ -2260,7 +2260,7 @@ const unsigned char _Py_M__importlib_external[] = { 0,0,90,13,105,110,105,116,95,102,105,108,101,110,97,109, 101,90,9,102,117,108,108,95,112,97,116,104,114,158,0,0, 0,114,4,0,0,0,114,4,0,0,0,114,5,0,0,0, - 114,175,0,0,0,183,4,0,0,115,70,0,0,0,0,3, + 114,175,0,0,0,184,4,0,0,115,70,0,0,0,0,3, 6,1,19,1,3,1,34,1,13,1,11,1,15,1,10,1, 9,2,9,1,9,1,15,2,9,1,6,2,12,1,18,1, 22,1,10,1,15,1,12,1,32,4,12,2,22,1,22,1, @@ -2296,7 +2296,7 @@ const unsigned char _Py_M__importlib_external[] = { 0,106,0,0,131,0,0,146,2,0,113,6,0,83,114,4, 0,0,0,41,1,114,88,0,0,0,41,2,114,22,0,0, 0,90,2,102,110,114,4,0,0,0,114,4,0,0,0,114, - 5,0,0,0,250,9,60,115,101,116,99,111,109,112,62,2, + 5,0,0,0,250,9,60,115,101,116,99,111,109,112,62,3, 5,0,0,115,2,0,0,0,9,0,122,41,70,105,108,101, 70,105,110,100,101,114,46,95,102,105,108,108,95,99,97,99, 104,101,46,60,108,111,99,97,108,115,62,46,60,115,101,116, @@ -2314,7 +2314,7 @@ const unsigned char _Py_M__importlib_external[] = { 0,0,0,114,98,0,0,0,114,231,0,0,0,114,219,0, 0,0,90,8,110,101,119,95,110,97,109,101,114,4,0,0, 0,114,4,0,0,0,114,5,0,0,0,114,7,1,0,0, - 229,4,0,0,115,34,0,0,0,0,2,9,1,3,1,31, + 230,4,0,0,115,34,0,0,0,0,2,9,1,3,1,31, 1,22,3,11,3,18,1,18,7,9,1,13,1,24,1,6, 1,27,2,6,1,17,1,9,1,18,1,122,22,70,105,108, 101,70,105,110,100,101,114,46,95,102,105,108,108,95,99,97, @@ -2352,7 +2352,7 @@ const unsigned char _Py_M__importlib_external[] = { 0,0,0,114,99,0,0,0,41,1,114,35,0,0,0,41, 2,114,164,0,0,0,114,6,1,0,0,114,4,0,0,0, 114,5,0,0,0,218,24,112,97,116,104,95,104,111,111,107, - 95,102,111,114,95,70,105,108,101,70,105,110,100,101,114,14, + 95,102,111,114,95,70,105,108,101,70,105,110,100,101,114,15, 5,0,0,115,6,0,0,0,0,2,12,1,18,1,122,54, 70,105,108,101,70,105,110,100,101,114,46,112,97,116,104,95, 104,111,111,107,46,60,108,111,99,97,108,115,62,46,112,97, @@ -2360,7 +2360,7 @@ const unsigned char _Py_M__importlib_external[] = { 70,105,110,100,101,114,114,4,0,0,0,41,3,114,164,0, 0,0,114,6,1,0,0,114,12,1,0,0,114,4,0,0, 0,41,2,114,164,0,0,0,114,6,1,0,0,114,5,0, - 0,0,218,9,112,97,116,104,95,104,111,111,107,4,5,0, + 0,0,218,9,112,97,116,104,95,104,111,111,107,5,5,0, 0,115,4,0,0,0,0,10,21,6,122,20,70,105,108,101, 70,105,110,100,101,114,46,112,97,116,104,95,104,111,111,107, 99,1,0,0,0,0,0,0,0,1,0,0,0,2,0,0, @@ -2369,7 +2369,7 @@ const unsigned char _Py_M__importlib_external[] = { 105,108,101,70,105,110,100,101,114,40,123,33,114,125,41,41, 2,114,47,0,0,0,114,35,0,0,0,41,1,114,100,0, 0,0,114,4,0,0,0,114,4,0,0,0,114,5,0,0, - 0,114,238,0,0,0,22,5,0,0,115,2,0,0,0,0, + 0,114,238,0,0,0,23,5,0,0,115,2,0,0,0,0, 1,122,19,70,105,108,101,70,105,110,100,101,114,46,95,95, 114,101,112,114,95,95,41,15,114,105,0,0,0,114,104,0, 0,0,114,106,0,0,0,114,107,0,0,0,114,179,0,0, @@ -2377,7 +2377,7 @@ const unsigned char _Py_M__importlib_external[] = { 114,117,0,0,0,114,255,0,0,0,114,175,0,0,0,114, 7,1,0,0,114,177,0,0,0,114,13,1,0,0,114,238, 0,0,0,114,4,0,0,0,114,4,0,0,0,114,4,0, - 0,0,114,5,0,0,0,114,0,1,0,0,137,4,0,0, + 0,0,114,5,0,0,0,114,0,1,0,0,138,4,0,0, 115,20,0,0,0,12,7,6,2,12,14,12,4,6,2,12, 12,12,5,15,46,12,31,18,18,114,0,1,0,0,99,4, 0,0,0,0,0,0,0,6,0,0,0,11,0,0,0,67, @@ -2403,7 +2403,7 @@ const unsigned char _Py_M__importlib_external[] = { 90,8,112,97,116,104,110,97,109,101,90,9,99,112,97,116, 104,110,97,109,101,114,120,0,0,0,114,158,0,0,0,114, 4,0,0,0,114,4,0,0,0,114,5,0,0,0,218,14, - 95,102,105,120,95,117,112,95,109,111,100,117,108,101,28,5, + 95,102,105,120,95,117,112,95,109,111,100,117,108,101,29,5, 0,0,115,34,0,0,0,0,2,15,1,15,1,6,1,6, 1,12,1,12,1,18,2,15,1,6,1,21,1,3,1,10, 1,10,1,10,1,14,1,13,2,114,18,1,0,0,99,0, @@ -2424,7 +2424,7 @@ const unsigned char _Py_M__importlib_external[] = { 0,114,74,0,0,0,41,3,90,10,101,120,116,101,110,115, 105,111,110,115,90,6,115,111,117,114,99,101,90,8,98,121, 116,101,99,111,100,101,114,4,0,0,0,114,4,0,0,0, - 114,5,0,0,0,114,155,0,0,0,51,5,0,0,115,8, + 114,5,0,0,0,114,155,0,0,0,52,5,0,0,115,8, 0,0,0,0,5,18,1,12,1,12,1,114,155,0,0,0, 99,1,0,0,0,0,0,0,0,12,0,0,0,12,0,0, 0,67,0,0,0,115,70,2,0,0,124,0,0,97,0,0, @@ -2486,7 +2486,7 @@ const unsigned char _Py_M__importlib_external[] = { 3,0,100,1,0,83,41,2,114,29,0,0,0,78,41,1, 114,31,0,0,0,41,2,114,22,0,0,0,114,77,0,0, 0,114,4,0,0,0,114,4,0,0,0,114,5,0,0,0, - 114,221,0,0,0,87,5,0,0,115,2,0,0,0,6,0, + 114,221,0,0,0,88,5,0,0,115,2,0,0,0,6,0, 122,25,95,115,101,116,117,112,46,60,108,111,99,97,108,115, 62,46,60,103,101,110,101,120,112,114,62,114,59,0,0,0, 122,30,105,109,112,111,114,116,108,105,98,32,114,101,113,117, @@ -2516,7 +2516,7 @@ const unsigned char _Py_M__importlib_external[] = { 111,100,117,108,101,90,14,119,101,97,107,114,101,102,95,109, 111,100,117,108,101,90,13,119,105,110,114,101,103,95,109,111, 100,117,108,101,114,4,0,0,0,114,4,0,0,0,114,5, - 0,0,0,218,6,95,115,101,116,117,112,62,5,0,0,115, + 0,0,0,218,6,95,115,101,116,117,112,63,5,0,0,115, 82,0,0,0,0,8,6,1,9,1,9,3,13,1,13,1, 15,1,18,2,13,1,20,3,33,1,19,2,31,1,10,1, 15,1,13,1,4,2,3,1,15,1,5,1,13,1,12,2, @@ -2542,7 +2542,7 @@ const unsigned char _Py_M__importlib_external[] = { 114,243,0,0,0,114,212,0,0,0,41,2,114,26,1,0, 0,90,17,115,117,112,112,111,114,116,101,100,95,108,111,97, 100,101,114,115,114,4,0,0,0,114,4,0,0,0,114,5, - 0,0,0,218,8,95,105,110,115,116,97,108,108,130,5,0, + 0,0,0,218,8,95,105,110,115,116,97,108,108,131,5,0, 0,115,16,0,0,0,0,2,10,1,9,1,28,1,15,1, 16,1,16,4,9,1,114,29,1,0,0,41,3,122,3,119, 105,110,114,1,0,0,0,114,2,0,0,0,41,56,114,107, @@ -2571,7 +2571,7 @@ const unsigned char _Py_M__importlib_external[] = { 0,0,0,114,4,0,0,0,114,5,0,0,0,218,8,60, 109,111,100,117,108,101,62,8,0,0,0,115,98,0,0,0, 6,17,6,3,12,12,12,5,12,5,12,6,12,12,12,10, - 12,9,12,5,12,7,15,22,15,110,22,1,18,2,6,1, + 12,9,12,5,12,7,15,22,15,111,22,1,18,2,6,1, 6,2,9,2,9,2,10,2,21,44,12,33,12,19,12,12, 12,12,12,28,12,17,21,55,21,12,18,10,12,14,9,3, 12,1,15,65,19,64,19,28,22,110,19,41,25,45,25,16, diff --git a/Python/opcode_targets.h b/Python/opcode_targets.h index 19259e1a71f..387225641c4 100644 --- a/Python/opcode_targets.h +++ b/Python/opcode_targets.h @@ -154,7 +154,7 @@ static void *opcode_targets[256] = { &&TARGET_BUILD_TUPLE_UNPACK, &&TARGET_BUILD_SET_UNPACK, &&TARGET_SETUP_ASYNC_WITH, - &&_unknown_opcode, + &&TARGET_FORMAT_VALUE, &&_unknown_opcode, &&_unknown_opcode, &&_unknown_opcode,