Source code: Lib/idlelib/
+Source code: Lib/idlelib/
IDLE is Python’s Integrated Development and Learning Environment.
IDLE has the following features:
@@ -581,6 +581,11 @@def, strings, and comments. For any text window, these are the cursor (when
present), found text (when possible), and selected text.
+IDLE also highlights the soft keywords match,
+case, and _ in
+pattern-matching statements. However, this highlighting is not perfect and
+will be incorrect in some rare cases, including some _-s in case
+patterns.
Text coloring is done in the background, so uncolorized text is occasionally visible. To change the color scheme, use the Configure IDLE dialog Highlighting tab. The marking of debugger breakpoint lines in the editor and @@ -685,7 +690,7 @@
threading.activeCount() returns 2 instead of 1.
+and threading.active_count() returns 2 instead of 1.
By default, IDLE runs user code in a separate OS process rather than in
the user interface process that runs the shell and editor. In the execution
process, it replaces sys.stdin, sys.stdout, and sys.stderr
@@ -939,7 +944,7 @@
",
- co->co_name, co, co->co_filename, lineno);
- } else {
- return PyUnicode_FromFormat(
- "",
- co->co_name, co, lineno);
- }
-}
-
-PyObject*
-_PyCode_ConstantKey(PyObject *op)
-{
- PyObject *key;
-
- /* Py_None and Py_Ellipsis are singletons. */
- if (op == Py_None || op == Py_Ellipsis
- || PyLong_CheckExact(op)
- || PyUnicode_CheckExact(op)
- /* code_richcompare() uses _PyCode_ConstantKey() internally */
- || PyCode_Check(op))
- {
- /* Objects of these types are always different from object of other
- * type and from tuples. */
- Py_INCREF(op);
- key = op;
- }
- else if (PyBool_Check(op) || PyBytes_CheckExact(op)) {
- /* Make booleans different from integers 0 and 1.
- * Avoid BytesWarning from comparing bytes with strings. */
- key = PyTuple_Pack(2, Py_TYPE(op), op);
- }
- else if (PyFloat_CheckExact(op)) {
- double d = PyFloat_AS_DOUBLE(op);
- /* all we need is to make the tuple different in either the 0.0
- * or -0.0 case from all others, just to avoid the "coercion".
- */
- if (d == 0.0 && copysign(1.0, d) < 0.0)
- key = PyTuple_Pack(3, Py_TYPE(op), op, Py_None);
- else
- key = PyTuple_Pack(2, Py_TYPE(op), op);
- }
- else if (PyComplex_CheckExact(op)) {
- Py_complex z;
- int real_negzero, imag_negzero;
- /* For the complex case we must make complex(x, 0.)
- different from complex(x, -0.) and complex(0., y)
- different from complex(-0., y), for any x and y.
- All four complex zeros must be distinguished.*/
- z = PyComplex_AsCComplex(op);
- real_negzero = z.real == 0.0 && copysign(1.0, z.real) < 0.0;
- imag_negzero = z.imag == 0.0 && copysign(1.0, z.imag) < 0.0;
- /* use True, False and None singleton as tags for the real and imag
- * sign, to make tuples different */
- if (real_negzero && imag_negzero) {
- key = PyTuple_Pack(3, Py_TYPE(op), op, Py_True);
- }
- else if (imag_negzero) {
- key = PyTuple_Pack(3, Py_TYPE(op), op, Py_False);
- }
- else if (real_negzero) {
- key = PyTuple_Pack(3, Py_TYPE(op), op, Py_None);
- }
- else {
- key = PyTuple_Pack(2, Py_TYPE(op), op);
- }
- }
- else if (PyTuple_CheckExact(op)) {
- Py_ssize_t i, len;
- PyObject *tuple;
-
- len = PyTuple_GET_SIZE(op);
- tuple = PyTuple_New(len);
- if (tuple == NULL)
- return NULL;
-
- for (i=0; i < len; i++) {
- PyObject *item, *item_key;
-
- item = PyTuple_GET_ITEM(op, i);
- item_key = _PyCode_ConstantKey(item);
- if (item_key == NULL) {
- Py_DECREF(tuple);
- return NULL;
- }
-
- PyTuple_SET_ITEM(tuple, i, item_key);
- }
-
- key = PyTuple_Pack(2, tuple, op);
- Py_DECREF(tuple);
- }
- else if (PyFrozenSet_CheckExact(op)) {
- Py_ssize_t pos = 0;
- PyObject *item;
- Py_hash_t hash;
- Py_ssize_t i, len;
- PyObject *tuple, *set;
-
- len = PySet_GET_SIZE(op);
- tuple = PyTuple_New(len);
- if (tuple == NULL)
- return NULL;
-
- i = 0;
- while (_PySet_NextEntry(op, &pos, &item, &hash)) {
- PyObject *item_key;
-
- item_key = _PyCode_ConstantKey(item);
- if (item_key == NULL) {
- Py_DECREF(tuple);
- return NULL;
- }
-
- assert(i < len);
- PyTuple_SET_ITEM(tuple, i, item_key);
- i++;
- }
- set = PyFrozenSet_New(tuple);
- Py_DECREF(tuple);
- if (set == NULL)
- return NULL;
+ }
+ }
- key = PyTuple_Pack(2, set, op);
- Py_DECREF(set);
- return key;
+ PyMem_Free(co_extra);
}
- else {
- /* for other types, use the object identifier as a unique identifier
- * to ensure that they are seen as unequal. */
- PyObject *obj_id = PyLong_FromVoidPtr(op);
- if (obj_id == NULL)
- return NULL;
- key = PyTuple_Pack(2, obj_id, op);
- Py_DECREF(obj_id);
+ Py_XDECREF(co->co_code);
+ Py_XDECREF(co->co_consts);
+ Py_XDECREF(co->co_names);
+ Py_XDECREF(co->co_varnames);
+ Py_XDECREF(co->co_freevars);
+ Py_XDECREF(co->co_cellvars);
+ Py_XDECREF(co->co_filename);
+ Py_XDECREF(co->co_name);
+ Py_XDECREF(co->co_linetable);
+ Py_XDECREF(co->co_exceptiontable);
+ if (co->co_cell2arg != NULL)
+ PyMem_Free(co->co_cell2arg);
+ if (co->co_weakreflist != NULL)
+ PyObject_ClearWeakRefs((PyObject*)co);
+ PyObject_Free(co);
+}
+
+static PyObject *
+code_repr(PyCodeObject *co)
+{
+ int lineno;
+ if (co->co_firstlineno != 0)
+ lineno = co->co_firstlineno;
+ else
+ lineno = -1;
+ if (co->co_filename && PyUnicode_Check(co->co_filename)) {
+ return PyUnicode_FromFormat(
+ "",
+ co->co_name, co, co->co_filename, lineno);
+ } else {
+ return PyUnicode_FromFormat(
+ "",
+ co->co_name, co, lineno);
}
- return key;
}
static PyObject *
@@ -1022,182 +1162,140 @@ code_hash(PyCodeObject *co)
return h;
}
-typedef struct {
- PyObject_HEAD
- PyCodeObject *li_code;
- PyCodeAddressRange li_line;
- char *li_end;
-} lineiterator;
+
+#define OFF(x) offsetof(PyCodeObject, x)
+
+static PyMemberDef code_memberlist[] = {
+ {"co_argcount", T_INT, OFF(co_argcount), READONLY},
+ {"co_posonlyargcount", T_INT, OFF(co_posonlyargcount), READONLY},
+ {"co_kwonlyargcount", T_INT, OFF(co_kwonlyargcount), READONLY},
+ {"co_nlocals", T_INT, OFF(co_nlocals), READONLY},
+ {"co_stacksize",T_INT, OFF(co_stacksize), READONLY},
+ {"co_flags", T_INT, OFF(co_flags), READONLY},
+ {"co_code", T_OBJECT, OFF(co_code), READONLY},
+ {"co_consts", T_OBJECT, OFF(co_consts), READONLY},
+ {"co_names", T_OBJECT, OFF(co_names), READONLY},
+ {"co_varnames", T_OBJECT, OFF(co_varnames), READONLY},
+ {"co_freevars", T_OBJECT, OFF(co_freevars), READONLY},
+ {"co_cellvars", T_OBJECT, OFF(co_cellvars), READONLY},
+ {"co_filename", T_OBJECT, OFF(co_filename), READONLY},
+ {"co_name", T_OBJECT, OFF(co_name), READONLY},
+ {"co_firstlineno", T_INT, OFF(co_firstlineno), READONLY},
+ {"co_linetable", T_OBJECT, OFF(co_linetable), READONLY},
+ {"co_exceptiontable", T_OBJECT, OFF(co_exceptiontable), READONLY},
+ {NULL} /* Sentinel */
+};
-static void
-lineiter_dealloc(lineiterator *li)
-{
- Py_DECREF(li->li_code);
- Py_TYPE(li)->tp_free(li);
-}
static PyObject *
-lineiter_next(lineiterator *li)
+code_getlnotab(PyCodeObject *code, void *closure)
{
- PyCodeAddressRange *bounds = &li->li_line;
- if (!PyLineTable_NextAddressRange(bounds)) {
- return NULL;
- }
- PyObject *start = NULL;
- PyObject *end = NULL;
- PyObject *line = NULL;
- PyObject *result = PyTuple_New(3);
- start = PyLong_FromLong(bounds->ar_start);
- end = PyLong_FromLong(bounds->ar_end);
- if (bounds->ar_line < 0) {
- Py_INCREF(Py_None);
- line = Py_None;
- }
- else {
- line = PyLong_FromLong(bounds->ar_line);
- }
- if (result == NULL || start == NULL || end == NULL || line == NULL) {
- goto error;
- }
- PyTuple_SET_ITEM(result, 0, start);
- PyTuple_SET_ITEM(result, 1, end);
- PyTuple_SET_ITEM(result, 2, line);
- return result;
-error:
- Py_XDECREF(start);
- Py_XDECREF(end);
- Py_XDECREF(line);
- Py_XDECREF(result);
- return result;
+ return decode_linetable(code);
}
-static PyTypeObject LineIterator = {
- PyVarObject_HEAD_INIT(&PyType_Type, 0)
- "line_iterator", /* tp_name */
- sizeof(lineiterator), /* tp_basicsize */
- 0, /* tp_itemsize */
- /* methods */
- (destructor)lineiter_dealloc, /* tp_dealloc */
- 0, /* tp_vectorcall_offset */
- 0, /* tp_getattr */
- 0, /* tp_setattr */
- 0, /* tp_as_async */
- 0, /* tp_repr */
- 0, /* tp_as_number */
- 0, /* tp_as_sequence */
- 0, /* tp_as_mapping */
- 0, /* tp_hash */
- 0, /* tp_call */
- 0, /* tp_str */
- 0, /* tp_getattro */
- 0, /* tp_setattro */
- 0, /* tp_as_buffer */
- Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE, /* tp_flags */
- 0, /* tp_doc */
- 0, /* tp_traverse */
- 0, /* tp_clear */
- 0, /* tp_richcompare */
- 0, /* tp_weaklistoffset */
- PyObject_SelfIter, /* tp_iter */
- (iternextfunc)lineiter_next, /* tp_iternext */
- 0, /* tp_methods */
- 0, /* tp_members */
- 0, /* tp_getset */
- 0, /* tp_base */
- 0, /* tp_dict */
- 0, /* tp_descr_get */
- 0, /* tp_descr_set */
- 0, /* tp_dictoffset */
- 0, /* tp_init */
- 0, /* tp_alloc */
- 0, /* tp_new */
- PyObject_Del, /* tp_free */
+static PyGetSetDef code_getsetlist[] = {
+ {"co_lnotab", (getter)code_getlnotab, NULL, NULL},
+ {0}
};
+
static PyObject *
-code_linesiterator(PyCodeObject *code, PyObject *Py_UNUSED(args))
+code_sizeof(PyCodeObject *co, PyObject *Py_UNUSED(args))
{
- lineiterator *li = (lineiterator *)PyType_GenericAlloc(&LineIterator, 0);
- if (li == NULL) {
- return NULL;
- }
- Py_INCREF(code);
- li->li_code = code;
- _PyCode_InitAddressRange(code, &li->li_line);
- return (PyObject *)li;
-}
+ Py_ssize_t res = _PyObject_SIZE(Py_TYPE(co));
+ _PyCodeObjectExtra *co_extra = (_PyCodeObjectExtra*) co->co_extra;
-static void
-retreat(PyCodeAddressRange *bounds)
-{
- int ldelta = ((signed char *)bounds->opaque.lo_next)[-1];
- if (ldelta == -128) {
- ldelta = 0;
+ if (co->co_cell2arg != NULL && co->co_cellvars != NULL) {
+ res += co->co_ncellvars * sizeof(Py_ssize_t);
}
- bounds->opaque.computed_line -= ldelta;
- bounds->opaque.lo_next -= 2;
- bounds->ar_end = bounds->ar_start;
- bounds->ar_start -= ((unsigned char *)bounds->opaque.lo_next)[-2];
- ldelta = ((signed char *)bounds->opaque.lo_next)[-1];
- if (ldelta == -128) {
- bounds->ar_line = -1;
+ if (co_extra != NULL) {
+ res += sizeof(_PyCodeObjectExtra) +
+ (co_extra->ce_size-1) * sizeof(co_extra->ce_extras[0]);
}
- else {
- bounds->ar_line = bounds->opaque.computed_line;
+ if (co->co_opcache != NULL) {
+ assert(co->co_opcache_map != NULL);
+ // co_opcache_map
+ res += PyBytes_GET_SIZE(co->co_code) / sizeof(_Py_CODEUNIT);
+ // co_opcache
+ res += co->co_opcache_size * sizeof(_PyOpcache);
}
+ return PyLong_FromSsize_t(res);
}
-static void
-advance(PyCodeAddressRange *bounds)
+static PyObject *
+code_linesiterator(PyCodeObject *code, PyObject *Py_UNUSED(args))
{
- bounds->ar_start = bounds->ar_end;
- int delta = ((unsigned char *)bounds->opaque.lo_next)[0];
- bounds->ar_end += delta;
- int ldelta = ((signed char *)bounds->opaque.lo_next)[1];
- bounds->opaque.lo_next += 2;
- if (ldelta == -128) {
- bounds->ar_line = -1;
- }
- else {
- bounds->opaque.computed_line += ldelta;
- bounds->ar_line = bounds->opaque.computed_line;
- }
+ return (PyObject *)new_linesiterator(code);
}
-static inline int
-at_end(PyCodeAddressRange *bounds) {
- return bounds->opaque.lo_next >= bounds->opaque.limit;
-}
+/*[clinic input]
+code.replace
+
+ *
+ co_argcount: int(c_default="self->co_argcount") = -1
+ co_posonlyargcount: int(c_default="self->co_posonlyargcount") = -1
+ co_kwonlyargcount: int(c_default="self->co_kwonlyargcount") = -1
+ co_nlocals: int(c_default="self->co_nlocals") = -1
+ co_stacksize: int(c_default="self->co_stacksize") = -1
+ co_flags: int(c_default="self->co_flags") = -1
+ co_firstlineno: int(c_default="self->co_firstlineno") = -1
+ co_code: PyBytesObject(c_default="(PyBytesObject *)self->co_code") = None
+ co_consts: object(subclass_of="&PyTuple_Type", c_default="self->co_consts") = None
+ co_names: object(subclass_of="&PyTuple_Type", c_default="self->co_names") = None
+ co_varnames: object(subclass_of="&PyTuple_Type", c_default="self->co_varnames") = None
+ co_freevars: object(subclass_of="&PyTuple_Type", c_default="self->co_freevars") = None
+ co_cellvars: object(subclass_of="&PyTuple_Type", c_default="self->co_cellvars") = None
+ co_filename: unicode(c_default="self->co_filename") = None
+ co_name: unicode(c_default="self->co_name") = None
+ co_linetable: PyBytesObject(c_default="(PyBytesObject *)self->co_linetable") = None
+ co_exceptiontable: PyBytesObject(c_default="(PyBytesObject *)self->co_exceptiontable") = None
+
+Return a copy of the code object with new values for the specified fields.
+[clinic start generated code]*/
+
+static PyObject *
+code_replace_impl(PyCodeObject *self, int co_argcount,
+ int co_posonlyargcount, int co_kwonlyargcount,
+ int co_nlocals, int co_stacksize, int co_flags,
+ int co_firstlineno, PyBytesObject *co_code,
+ PyObject *co_consts, PyObject *co_names,
+ PyObject *co_varnames, PyObject *co_freevars,
+ PyObject *co_cellvars, PyObject *co_filename,
+ PyObject *co_name, PyBytesObject *co_linetable,
+ PyBytesObject *co_exceptiontable)
+/*[clinic end generated code: output=80957472b7f78ed6 input=38376b1193efbbae]*/
+{
+#define CHECK_INT_ARG(ARG) \
+ if (ARG < 0) { \
+ PyErr_SetString(PyExc_ValueError, \
+ #ARG " must be a positive integer"); \
+ return NULL; \
+ }
+
+ CHECK_INT_ARG(co_argcount);
+ CHECK_INT_ARG(co_posonlyargcount);
+ CHECK_INT_ARG(co_kwonlyargcount);
+ CHECK_INT_ARG(co_nlocals);
+ CHECK_INT_ARG(co_stacksize);
+ CHECK_INT_ARG(co_flags);
+ CHECK_INT_ARG(co_firstlineno);
-int
-PyLineTable_PreviousAddressRange(PyCodeAddressRange *range)
-{
- if (range->ar_start <= 0) {
- return 0;
- }
- retreat(range);
- while (range->ar_start == range->ar_end) {
- assert(range->ar_start > 0);
- retreat(range);
- }
- return 1;
-}
+#undef CHECK_INT_ARG
-int
-PyLineTable_NextAddressRange(PyCodeAddressRange *range)
-{
- if (at_end(range)) {
- return 0;
- }
- advance(range);
- while (range->ar_start == range->ar_end) {
- assert(!at_end(range));
- advance(range);
+ if (PySys_Audit("code.__new__", "OOOiiiiii",
+ co_code, co_filename, co_name, co_argcount,
+ co_posonlyargcount, co_kwonlyargcount, co_nlocals,
+ co_stacksize, co_flags) < 0) {
+ return NULL;
}
- return 1;
-}
+ return (PyObject *)PyCode_NewWithPosOnlyArgs(
+ co_argcount, co_posonlyargcount, co_kwonlyargcount, co_nlocals,
+ co_stacksize, co_flags, (PyObject*)co_code, co_consts, co_names,
+ co_varnames, co_freevars, co_cellvars, co_filename, co_name,
+ co_firstlineno, (PyObject*)co_linetable, (PyObject*)co_exceptiontable);
+}
/* XXX code objects need to participate in GC? */
@@ -1208,6 +1306,7 @@ static struct PyMethodDef code_methods[] = {
{NULL, NULL} /* sentinel */
};
+
PyTypeObject PyCode_Type = {
PyVarObject_HEAD_INIT(&PyType_Type, 0)
"code",
@@ -1249,119 +1348,137 @@ PyTypeObject PyCode_Type = {
code_new, /* tp_new */
};
-/* Use co_linetable to compute the line number from a bytecode index, addrq. See
- lnotab_notes.txt for the details of the lnotab representation.
-*/
-
-int
-PyCode_Addr2Line(PyCodeObject *co, int addrq)
-{
- if (addrq < 0) {
- return co->co_firstlineno;
- }
- assert(addrq >= 0 && addrq < PyBytes_GET_SIZE(co->co_code));
- PyCodeAddressRange bounds;
- _PyCode_InitAddressRange(co, &bounds);
- return _PyCode_CheckLineNumber(addrq, &bounds);
-}
-void
-PyLineTable_InitAddressRange(char *linetable, Py_ssize_t length, int firstlineno, PyCodeAddressRange *range)
-{
- range->opaque.lo_next = linetable;
- range->opaque.limit = range->opaque.lo_next + length;
- range->ar_start = -1;
- range->ar_end = 0;
- range->opaque.computed_line = firstlineno;
- range->ar_line = -1;
-}
+/******************
+ * other API
+ ******************/
-int
-_PyCode_InitAddressRange(PyCodeObject* co, PyCodeAddressRange *bounds)
+PyObject*
+_PyCode_ConstantKey(PyObject *op)
{
- char *linetable = PyBytes_AS_STRING(co->co_linetable);
- Py_ssize_t length = PyBytes_GET_SIZE(co->co_linetable);
- PyLineTable_InitAddressRange(linetable, length, co->co_firstlineno, bounds);
- return bounds->ar_line;
-}
+ PyObject *key;
-/* Update *bounds to describe the first and one-past-the-last instructions in
- the same line as lasti. Return the number of that line, or -1 if lasti is out of bounds. */
-int
-_PyCode_CheckLineNumber(int lasti, PyCodeAddressRange *bounds)
-{
- while (bounds->ar_end <= lasti) {
- if (!PyLineTable_NextAddressRange(bounds)) {
- return -1;
- }
+ /* Py_None and Py_Ellipsis are singletons. */
+ if (op == Py_None || op == Py_Ellipsis
+ || PyLong_CheckExact(op)
+ || PyUnicode_CheckExact(op)
+ /* code_richcompare() uses _PyCode_ConstantKey() internally */
+ || PyCode_Check(op))
+ {
+ /* Objects of these types are always different from object of other
+ * type and from tuples. */
+ Py_INCREF(op);
+ key = op;
}
- while (bounds->ar_start > lasti) {
- if (!PyLineTable_PreviousAddressRange(bounds)) {
- return -1;
+ else if (PyBool_Check(op) || PyBytes_CheckExact(op)) {
+ /* Make booleans different from integers 0 and 1.
+ * Avoid BytesWarning from comparing bytes with strings. */
+ key = PyTuple_Pack(2, Py_TYPE(op), op);
+ }
+ else if (PyFloat_CheckExact(op)) {
+ double d = PyFloat_AS_DOUBLE(op);
+ /* all we need is to make the tuple different in either the 0.0
+ * or -0.0 case from all others, just to avoid the "coercion".
+ */
+ if (d == 0.0 && copysign(1.0, d) < 0.0)
+ key = PyTuple_Pack(3, Py_TYPE(op), op, Py_None);
+ else
+ key = PyTuple_Pack(2, Py_TYPE(op), op);
+ }
+ else if (PyComplex_CheckExact(op)) {
+ Py_complex z;
+ int real_negzero, imag_negzero;
+ /* For the complex case we must make complex(x, 0.)
+ different from complex(x, -0.) and complex(0., y)
+ different from complex(-0., y), for any x and y.
+ All four complex zeros must be distinguished.*/
+ z = PyComplex_AsCComplex(op);
+ real_negzero = z.real == 0.0 && copysign(1.0, z.real) < 0.0;
+ imag_negzero = z.imag == 0.0 && copysign(1.0, z.imag) < 0.0;
+ /* use True, False and None singleton as tags for the real and imag
+ * sign, to make tuples different */
+ if (real_negzero && imag_negzero) {
+ key = PyTuple_Pack(3, Py_TYPE(op), op, Py_True);
+ }
+ else if (imag_negzero) {
+ key = PyTuple_Pack(3, Py_TYPE(op), op, Py_False);
+ }
+ else if (real_negzero) {
+ key = PyTuple_Pack(3, Py_TYPE(op), op, Py_None);
+ }
+ else {
+ key = PyTuple_Pack(2, Py_TYPE(op), op);
}
}
- return bounds->ar_line;
-}
-
+ else if (PyTuple_CheckExact(op)) {
+ Py_ssize_t i, len;
+ PyObject *tuple;
-int
-_PyCode_GetExtra(PyObject *code, Py_ssize_t index, void **extra)
-{
- if (!PyCode_Check(code)) {
- PyErr_BadInternalCall();
- return -1;
- }
+ len = PyTuple_GET_SIZE(op);
+ tuple = PyTuple_New(len);
+ if (tuple == NULL)
+ return NULL;
- PyCodeObject *o = (PyCodeObject*) code;
- _PyCodeObjectExtra *co_extra = (_PyCodeObjectExtra*) o->co_extra;
+ for (i=0; i < len; i++) {
+ PyObject *item, *item_key;
- if (co_extra == NULL || co_extra->ce_size <= index) {
- *extra = NULL;
- return 0;
- }
+ item = PyTuple_GET_ITEM(op, i);
+ item_key = _PyCode_ConstantKey(item);
+ if (item_key == NULL) {
+ Py_DECREF(tuple);
+ return NULL;
+ }
- *extra = co_extra->ce_extras[index];
- return 0;
-}
+ PyTuple_SET_ITEM(tuple, i, item_key);
+ }
+ key = PyTuple_Pack(2, tuple, op);
+ Py_DECREF(tuple);
+ }
+ else if (PyFrozenSet_CheckExact(op)) {
+ Py_ssize_t pos = 0;
+ PyObject *item;
+ Py_hash_t hash;
+ Py_ssize_t i, len;
+ PyObject *tuple, *set;
-int
-_PyCode_SetExtra(PyObject *code, Py_ssize_t index, void *extra)
-{
- PyInterpreterState *interp = _PyInterpreterState_GET();
+ len = PySet_GET_SIZE(op);
+ tuple = PyTuple_New(len);
+ if (tuple == NULL)
+ return NULL;
- if (!PyCode_Check(code) || index < 0 ||
- index >= interp->co_extra_user_count) {
- PyErr_BadInternalCall();
- return -1;
- }
+ i = 0;
+ while (_PySet_NextEntry(op, &pos, &item, &hash)) {
+ PyObject *item_key;
- PyCodeObject *o = (PyCodeObject*) code;
- _PyCodeObjectExtra *co_extra = (_PyCodeObjectExtra *) o->co_extra;
+ item_key = _PyCode_ConstantKey(item);
+ if (item_key == NULL) {
+ Py_DECREF(tuple);
+ return NULL;
+ }
- if (co_extra == NULL || co_extra->ce_size <= index) {
- Py_ssize_t i = (co_extra == NULL ? 0 : co_extra->ce_size);
- co_extra = PyMem_Realloc(
- co_extra,
- sizeof(_PyCodeObjectExtra) +
- (interp->co_extra_user_count-1) * sizeof(void*));
- if (co_extra == NULL) {
- return -1;
- }
- for (; i < interp->co_extra_user_count; i++) {
- co_extra->ce_extras[i] = NULL;
+ assert(i < len);
+ PyTuple_SET_ITEM(tuple, i, item_key);
+ i++;
}
- co_extra->ce_size = interp->co_extra_user_count;
- o->co_extra = co_extra;
- }
+ set = PyFrozenSet_New(tuple);
+ Py_DECREF(tuple);
+ if (set == NULL)
+ return NULL;
- if (co_extra->ce_extras[index] != NULL) {
- freefunc free = interp->co_extra_freefuncs[index];
- if (free != NULL) {
- free(co_extra->ce_extras[index]);
- }
+ key = PyTuple_Pack(2, set, op);
+ Py_DECREF(set);
+ return key;
}
+ else {
+ /* for other types, use the object identifier as a unique identifier
+ * to ensure that they are seen as unequal. */
+ PyObject *obj_id = PyLong_FromVoidPtr(op);
+ if (obj_id == NULL)
+ return NULL;
- co_extra->ce_extras[index] = extra;
- return 0;
+ key = PyTuple_Pack(2, obj_id, op);
+ Py_DECREF(obj_id);
+ }
+ return key;
}
diff --git a/Objects/dict-common.h b/Objects/dict-common.h
index 71d6b0274420b8..a6f518f301885a 100644
--- a/Objects/dict-common.h
+++ b/Objects/dict-common.h
@@ -8,37 +8,34 @@ typedef struct {
PyObject *me_value; /* This field is only meaningful for combined tables */
} PyDictKeyEntry;
-/* dict_lookup_func() returns index of entry which can be used like DK_ENTRIES(dk)[index].
+/* _Py_dict_lookup() returns index of entry which can be used like DK_ENTRIES(dk)[index].
* -1 when no entry found, -3 when compare raises error.
*/
-typedef Py_ssize_t (*dict_lookup_func)
- (PyDictObject *mp, PyObject *key, Py_hash_t hash, PyObject **value_addr);
+Py_ssize_t _Py_dict_lookup(PyDictObject *mp, PyObject *key, Py_hash_t hash, PyObject **value_addr);
+
#define DKIX_EMPTY (-1)
#define DKIX_DUMMY (-2) /* Used internally */
#define DKIX_ERROR (-3)
+typedef enum {
+ DICT_KEYS_GENERAL = 0,
+ DICT_KEYS_UNICODE = 1,
+ DICT_KEYS_SPLIT = 2
+} DictKeysKind;
+
/* See dictobject.c for actual layout of DictKeysObject */
struct _dictkeysobject {
Py_ssize_t dk_refcnt;
/* Size of the hash table (dk_indices). It must be a power of 2. */
- Py_ssize_t dk_size;
-
- /* Function to lookup in the hash table (dk_indices):
-
- - lookdict(): general-purpose, and may return DKIX_ERROR if (and
- only if) a comparison raises an exception.
-
- - lookdict_unicode(): specialized to Unicode string keys, comparison of
- which can never raise an exception; that function can never return
- DKIX_ERROR.
+ uint8_t dk_log2_size;
- - lookdict_unicode_nodummy(): similar to lookdict_unicode() but further
- specialized for Unicode string keys that cannot be the value.
+ /* Kind of keys */
+ uint8_t dk_kind;
- - lookdict_split(): Version of lookdict() for split tables. */
- dict_lookup_func dk_lookup;
+ /* Version number -- Reset to 0 by any modification to keys */
+ uint32_t dk_version;
/* Number of usable entries in dk_entries. */
Py_ssize_t dk_usable;
diff --git a/Objects/dictobject.c b/Objects/dictobject.c
index 24973c07b1d488..d97f9e2120d3fa 100644
--- a/Objects/dictobject.c
+++ b/Objects/dictobject.c
@@ -18,8 +18,8 @@ As of Python 3.6, this is compact and ordered. Basic idea is described here:
+---------------+
| dk_refcnt |
-| dk_size |
-| dk_lookup |
+| dk_log2_size |
+| dk_kind |
| dk_usable |
| dk_nentries |
+---------------+
@@ -108,6 +108,7 @@ converting the dict to the combined table.
* Making this 8, rather than 4 reduces the number of resizes for most
* dictionaries, without any significant extra memory use.
*/
+#define PyDict_LOG_MINSIZE 3
#define PyDict_MINSIZE 8
#include "Python.h"
@@ -226,18 +227,7 @@ equally good collision statistics, needed less code & used less memory.
*/
-/* forward declarations */
-static Py_ssize_t lookdict(PyDictObject *mp, PyObject *key,
- Py_hash_t hash, PyObject **value_addr);
-static Py_ssize_t lookdict_unicode(PyDictObject *mp, PyObject *key,
- Py_hash_t hash, PyObject **value_addr);
-static Py_ssize_t
-lookdict_unicode_nodummy(PyDictObject *mp, PyObject *key,
- Py_hash_t hash, PyObject **value_addr);
-static Py_ssize_t lookdict_split(PyDictObject *mp, PyObject *key,
- Py_hash_t hash, PyObject **value_addr);
-
-static int dictresize(PyDictObject *mp, Py_ssize_t newsize);
+static int dictresize(PyDictObject *mp, uint8_t log_newsize);
static PyObject* dict_iter(PyDictObject *dict);
@@ -295,24 +285,25 @@ _PyDict_DebugMallocStats(FILE *out)
state->numfree, sizeof(PyDictObject));
}
-
-#define DK_SIZE(dk) ((dk)->dk_size)
+#define DK_LOG_SIZE(dk) ((dk)->dk_log2_size)
#if SIZEOF_VOID_P > 4
-#define DK_IXSIZE(dk) \
- (DK_SIZE(dk) <= 0xff ? \
- 1 : DK_SIZE(dk) <= 0xffff ? \
- 2 : DK_SIZE(dk) <= 0xffffffff ? \
+#define DK_SIZE(dk) (((int64_t)1)<dk_indices))[DK_SIZE(dk) * DK_IXSIZE(dk)]))
-#define DK_MASK(dk) (((dk)->dk_size)-1)
+#define DK_MASK(dk) (DK_SIZE(dk)-1)
#define IS_POWER_OF_2(x) (((x) & (x-1)) == 0)
static void free_keys_object(PyDictKeysObject *keys);
@@ -374,6 +365,7 @@ dictkeys_set_index(PyDictKeysObject *keys, Py_ssize_t i, Py_ssize_t ix)
Py_ssize_t s = DK_SIZE(keys);
assert(ix >= DKIX_DUMMY);
+ assert(keys->dk_version == 0);
if (s <= 0xff) {
int8_t *indices = (int8_t*)(keys->dk_indices);
@@ -413,25 +405,25 @@ dictkeys_set_index(PyDictKeysObject *keys, Py_ssize_t i, Py_ssize_t ix)
#define USABLE_FRACTION(n) (((n) << 1)/3)
/* Find the smallest dk_size >= minsize. */
-static inline Py_ssize_t
-calculate_keysize(Py_ssize_t minsize)
+static inline uint8_t
+calculate_log2_keysize(Py_ssize_t minsize)
{
#if SIZEOF_LONG == SIZEOF_SIZE_T
minsize = (minsize | PyDict_MINSIZE) - 1;
- return 1LL << _Py_bit_length(minsize | (PyDict_MINSIZE-1));
+ return _Py_bit_length(minsize | (PyDict_MINSIZE-1));
#elif defined(_MSC_VER)
// On 64bit Windows, sizeof(long) == 4.
minsize = (minsize | PyDict_MINSIZE) - 1;
unsigned long msb;
_BitScanReverse64(&msb, (uint64_t)minsize);
- return 1LL << (msb + 1);
+ return (uint8_t)(msb + 1);
#else
- Py_ssize_t size;
- for (size = PyDict_MINSIZE;
- size < minsize && size > 0;
- size <<= 1)
+ uint8_t log2_size;
+ for (log2_size = PyDict_LOG_MINSIZE;
+ (((Py_ssize_t)1) << log2_size) < minsize;
+ log2_size++)
;
- return size;
+ return log2_size;
#endif
}
@@ -440,10 +432,10 @@ calculate_keysize(Py_ssize_t minsize)
* This can be used to reserve enough size to insert n entries without
* resizing.
*/
-static inline Py_ssize_t
-estimate_keysize(Py_ssize_t n)
+static inline uint8_t
+estimate_log2_keysize(Py_ssize_t n)
{
- return calculate_keysize((n*3 + 1) / 2);
+ return calculate_log2_keysize((n*3 + 1) / 2);
}
@@ -459,18 +451,14 @@ estimate_keysize(Py_ssize_t n)
*/
#define GROWTH_RATE(d) ((d)->ma_used*3)
-#define ENSURE_ALLOWS_DELETIONS(d) \
- if ((d)->ma_keys->dk_lookup == lookdict_unicode_nodummy) { \
- (d)->ma_keys->dk_lookup = lookdict_unicode; \
- }
-
/* This immutable, empty PyDictKeysObject is used for PyDict_Clear()
* (which cannot fail and thus can do no allocation).
*/
static PyDictKeysObject empty_keys_struct = {
1, /* dk_refcnt */
- 1, /* dk_size */
- lookdict_split, /* dk_lookup */
+ 0, /* dk_log2_size */
+ DICT_KEYS_SPLIT, /* dk_kind */
+ 1, /* dk_version */
0, /* dk_usable (immutable) */
0, /* dk_nentries */
{DKIX_EMPTY, DKIX_EMPTY, DKIX_EMPTY, DKIX_EMPTY,
@@ -503,10 +491,9 @@ _PyDict_CheckConsistency(PyObject *op, int check_content)
PyDictKeysObject *keys = mp->ma_keys;
int splitted = _PyDict_HasSplitTable(mp);
- Py_ssize_t usable = USABLE_FRACTION(keys->dk_size);
+ Py_ssize_t usable = USABLE_FRACTION(DK_SIZE(keys));
CHECK(0 <= mp->ma_used && mp->ma_used <= usable);
- CHECK(IS_POWER_OF_2(keys->dk_size));
CHECK(0 <= keys->dk_usable && keys->dk_usable <= usable);
CHECK(0 <= keys->dk_nentries && keys->dk_nentries <= usable);
CHECK(keys->dk_usable + keys->dk_nentries <= usable);
@@ -520,7 +507,7 @@ _PyDict_CheckConsistency(PyObject *op, int check_content)
PyDictKeyEntry *entries = DK_ENTRIES(keys);
Py_ssize_t i;
- for (i=0; i < keys->dk_size; i++) {
+ for (i=0; i < DK_SIZE(keys); i++) {
Py_ssize_t ix = dictkeys_get_index(keys, i);
CHECK(DKIX_DUMMY <= ix && ix <= usable);
}
@@ -563,23 +550,22 @@ _PyDict_CheckConsistency(PyObject *op, int check_content)
static PyDictKeysObject*
-new_keys_object(Py_ssize_t size)
+new_keys_object(uint8_t log2_size)
{
PyDictKeysObject *dk;
Py_ssize_t es, usable;
- assert(size >= PyDict_MINSIZE);
- assert(IS_POWER_OF_2(size));
+ assert(log2_size >= PyDict_LOG_MINSIZE);
- usable = USABLE_FRACTION(size);
- if (size <= 0xff) {
+ usable = USABLE_FRACTION(1< 4
- else if (size <= 0xffffffff) {
+ else if (log2_size <= 31) {
es = 4;
}
#endif
@@ -592,13 +578,13 @@ new_keys_object(Py_ssize_t size)
// new_keys_object() must not be called after _PyDict_Fini()
assert(state->keys_numfree != -1);
#endif
- if (size == PyDict_MINSIZE && state->keys_numfree > 0) {
+ if (log2_size == PyDict_LOG_MINSIZE && state->keys_numfree > 0) {
dk = state->keys_free_list[--state->keys_numfree];
}
else
{
dk = PyObject_Malloc(sizeof(PyDictKeysObject)
- + es * size
+ + (es<dk_refcnt = 1;
- dk->dk_size = size;
+ dk->dk_log2_size = log2_size;
dk->dk_usable = usable;
- dk->dk_lookup = lookdict_unicode_nodummy;
+ dk->dk_kind = DICT_KEYS_UNICODE;
dk->dk_nentries = 0;
- memset(&dk->dk_indices[0], 0xff, es * size);
+ dk->dk_version = 0;
+ memset(&dk->dk_indices[0], 0xff, es<keys_numfree != -1);
#endif
- if (keys->dk_size == PyDict_MINSIZE && state->keys_numfree < PyDict_MAXFREELIST) {
+ if (DK_SIZE(keys) == PyDict_MINSIZE && state->keys_numfree < PyDict_MAXFREELIST) {
state->keys_free_list[state->keys_numfree++] = keys;
return;
}
@@ -778,36 +765,62 @@ probe indices are computed as explained earlier.
All arithmetic on hash should ignore overflow.
-The details in this version are due to Tim Peters, building on many past
-contributions by Reimer Behrends, Jyrki Alakuijala, Vladimir Marangozov and
-Christian Tismer.
-
-lookdict() is general-purpose, and may return DKIX_ERROR if (and only if) a
+_Py_dict_lookup() is general-purpose, and may return DKIX_ERROR if (and only if) a
comparison raises an exception.
-lookdict_unicode() below is specialized to string keys, comparison of which can
-never raise an exception; that function can never return DKIX_ERROR when key
-is string. Otherwise, it falls back to lookdict().
-lookdict_unicode_nodummy is further specialized for string keys that cannot be
-the value.
-For both, when the key isn't found a DKIX_EMPTY is returned.
+When the key isn't found a DKIX_EMPTY is returned.
*/
-static Py_ssize_t _Py_HOT_FUNCTION
-lookdict(PyDictObject *mp, PyObject *key,
- Py_hash_t hash, PyObject **value_addr)
+Py_ssize_t _Py_HOT_FUNCTION
+_Py_dict_lookup(PyDictObject *mp, PyObject *key, Py_hash_t hash, PyObject **value_addr)
{
- size_t i, mask, perturb;
PyDictKeysObject *dk;
- PyDictKeyEntry *ep0;
-
-top:
+start:
dk = mp->ma_keys;
- ep0 = DK_ENTRIES(dk);
- mask = DK_MASK(dk);
- perturb = hash;
- i = (size_t)hash & mask;
-
+ DictKeysKind kind = dk->dk_kind;
+ PyDictKeyEntry *ep0 = DK_ENTRIES(dk);
+ size_t mask = DK_MASK(dk);
+ size_t perturb = hash;
+ size_t i = (size_t)hash & mask;
+ Py_ssize_t ix;
+ if (PyUnicode_CheckExact(key) && kind != DICT_KEYS_GENERAL) {
+ /* Strings only */
+ for (;;) {
+ ix = dictkeys_get_index(mp->ma_keys, i);
+ if (ix >= 0) {
+ PyDictKeyEntry *ep = &ep0[ix];
+ assert(ep->me_key != NULL);
+ assert(PyUnicode_CheckExact(ep->me_key));
+ if (ep->me_key == key ||
+ (ep->me_hash == hash && unicode_eq(ep->me_key, key))) {
+ goto found;
+ }
+ }
+ else if (ix == DKIX_EMPTY) {
+ *value_addr = NULL;
+ return DKIX_EMPTY;
+ }
+ perturb >>= PERTURB_SHIFT;
+ i = mask & (i*5 + perturb + 1);
+ ix = dictkeys_get_index(mp->ma_keys, i);
+ if (ix >= 0) {
+ PyDictKeyEntry *ep = &ep0[ix];
+ assert(ep->me_key != NULL);
+ assert(PyUnicode_CheckExact(ep->me_key));
+ if (ep->me_key == key ||
+ (ep->me_hash == hash && unicode_eq(ep->me_key, key))) {
+ goto found;
+ }
+ }
+ else if (ix == DKIX_EMPTY) {
+ *value_addr = NULL;
+ return DKIX_EMPTY;
+ }
+ perturb >>= PERTURB_SHIFT;
+ i = mask & (i*5 + perturb + 1);
+ }
+ Py_UNREACHABLE();
+ }
for (;;) {
- Py_ssize_t ix = dictkeys_get_index(dk, i);
+ ix = dictkeys_get_index(dk, i);
if (ix == DKIX_EMPTY) {
*value_addr = NULL;
return ix;
@@ -816,8 +829,7 @@ lookdict(PyDictObject *mp, PyObject *key,
PyDictKeyEntry *ep = &ep0[ix];
assert(ep->me_key != NULL);
if (ep->me_key == key) {
- *value_addr = ep->me_value;
- return ix;
+ goto found;
}
if (ep->me_hash == hash) {
PyObject *startkey = ep->me_key;
@@ -830,13 +842,12 @@ lookdict(PyDictObject *mp, PyObject *key,
}
if (dk == mp->ma_keys && ep->me_key == startkey) {
if (cmp > 0) {
- *value_addr = ep->me_value;
- return ix;
+ goto found;
}
}
else {
/* The dict was mutated, restart */
- goto top;
+ goto start;
}
}
}
@@ -844,133 +855,14 @@ lookdict(PyDictObject *mp, PyObject *key,
i = (i*5 + perturb + 1) & mask;
}
Py_UNREACHABLE();
-}
-
-/* Specialized version for string-only keys */
-static Py_ssize_t _Py_HOT_FUNCTION
-lookdict_unicode(PyDictObject *mp, PyObject *key,
- Py_hash_t hash, PyObject **value_addr)
-{
- assert(mp->ma_values == NULL);
- /* Make sure this function doesn't have to handle non-unicode keys,
- including subclasses of str; e.g., one reason to subclass
- unicodes is to override __eq__, and for speed we don't cater to
- that here. */
- if (!PyUnicode_CheckExact(key)) {
- return lookdict(mp, key, hash, value_addr);
- }
-
- PyDictKeyEntry *ep0 = DK_ENTRIES(mp->ma_keys);
- size_t mask = DK_MASK(mp->ma_keys);
- size_t perturb = (size_t)hash;
- size_t i = (size_t)hash & mask;
-
- for (;;) {
- Py_ssize_t ix = dictkeys_get_index(mp->ma_keys, i);
- if (ix == DKIX_EMPTY) {
- *value_addr = NULL;
- return DKIX_EMPTY;
- }
- if (ix >= 0) {
- PyDictKeyEntry *ep = &ep0[ix];
- assert(ep->me_key != NULL);
- assert(PyUnicode_CheckExact(ep->me_key));
- if (ep->me_key == key ||
- (ep->me_hash == hash && unicode_eq(ep->me_key, key))) {
- *value_addr = ep->me_value;
- return ix;
- }
- }
- perturb >>= PERTURB_SHIFT;
- i = mask & (i*5 + perturb + 1);
- }
- Py_UNREACHABLE();
-}
-
-/* Faster version of lookdict_unicode when it is known that no keys
- * will be present. */
-static Py_ssize_t _Py_HOT_FUNCTION
-lookdict_unicode_nodummy(PyDictObject *mp, PyObject *key,
- Py_hash_t hash, PyObject **value_addr)
-{
- assert(mp->ma_values == NULL);
- /* Make sure this function doesn't have to handle non-unicode keys,
- including subclasses of str; e.g., one reason to subclass
- unicodes is to override __eq__, and for speed we don't cater to
- that here. */
- if (!PyUnicode_CheckExact(key)) {
- return lookdict(mp, key, hash, value_addr);
- }
-
- PyDictKeyEntry *ep0 = DK_ENTRIES(mp->ma_keys);
- size_t mask = DK_MASK(mp->ma_keys);
- size_t perturb = (size_t)hash;
- size_t i = (size_t)hash & mask;
-
- for (;;) {
- Py_ssize_t ix = dictkeys_get_index(mp->ma_keys, i);
- assert (ix != DKIX_DUMMY);
- if (ix == DKIX_EMPTY) {
- *value_addr = NULL;
- return DKIX_EMPTY;
- }
- PyDictKeyEntry *ep = &ep0[ix];
- assert(ep->me_key != NULL);
- assert(PyUnicode_CheckExact(ep->me_key));
- if (ep->me_key == key ||
- (ep->me_hash == hash && unicode_eq(ep->me_key, key))) {
- *value_addr = ep->me_value;
- return ix;
- }
- perturb >>= PERTURB_SHIFT;
- i = mask & (i*5 + perturb + 1);
- }
- Py_UNREACHABLE();
-}
-
-/* Version of lookdict for split tables.
- * All split tables and only split tables use this lookup function.
- * Split tables only contain unicode keys and no dummy keys,
- * so algorithm is the same as lookdict_unicode_nodummy.
- */
-static Py_ssize_t _Py_HOT_FUNCTION
-lookdict_split(PyDictObject *mp, PyObject *key,
- Py_hash_t hash, PyObject **value_addr)
-{
- /* mp must split table */
- assert(mp->ma_values != NULL);
- if (!PyUnicode_CheckExact(key)) {
- Py_ssize_t ix = lookdict(mp, key, hash, value_addr);
- if (ix >= 0) {
- *value_addr = mp->ma_values[ix];
- }
- return ix;
+found:
+ if (dk->dk_kind == DICT_KEYS_SPLIT) {
+ *value_addr = mp->ma_values[ix];
}
-
- PyDictKeyEntry *ep0 = DK_ENTRIES(mp->ma_keys);
- size_t mask = DK_MASK(mp->ma_keys);
- size_t perturb = (size_t)hash;
- size_t i = (size_t)hash & mask;
-
- for (;;) {
- Py_ssize_t ix = dictkeys_get_index(mp->ma_keys, i);
- assert (ix != DKIX_DUMMY);
- if (ix == DKIX_EMPTY) {
- *value_addr = NULL;
- return DKIX_EMPTY;
- }
- PyDictKeyEntry *ep = &ep0[ix];
- assert(ep->me_key != NULL);
- assert(PyUnicode_CheckExact(ep->me_key));
- if (ep->me_key == key ||
- (ep->me_hash == hash && unicode_eq(ep->me_key, key))) {
- *value_addr = mp->ma_values[ix];
- return ix;
- }
- perturb >>= PERTURB_SHIFT;
- i = mask & (i*5 + perturb + 1);
+ else {
+ *value_addr = ep0[ix].me_value;
}
- Py_UNREACHABLE();
+ return ix;
}
int
@@ -980,7 +872,7 @@ _PyDict_HasOnlyStringKeys(PyObject *dict)
PyObject *key, *value;
assert(PyDict_Check(dict));
/* Shortcut */
- if (((PyDictObject *)dict)->ma_keys->dk_lookup != lookdict)
+ if (((PyDictObject *)dict)->ma_keys->dk_kind != DICT_KEYS_GENERAL)
return 1;
while (PyDict_Next(dict, &pos, &key, &value))
if (!PyUnicode_Check(key))
@@ -1057,7 +949,7 @@ find_empty_slot(PyDictKeysObject *keys, Py_hash_t hash)
static int
insertion_resize(PyDictObject *mp)
{
- return dictresize(mp, calculate_keysize(GROWTH_RATE(mp)));
+ return dictresize(mp, calculate_log2_keysize(GROWTH_RATE(mp)));
}
/*
@@ -1078,7 +970,7 @@ insertdict(PyDictObject *mp, PyObject *key, Py_hash_t hash, PyObject *value)
goto Fail;
}
- Py_ssize_t ix = mp->ma_keys->dk_lookup(mp, key, hash, &old_value);
+ Py_ssize_t ix = _Py_dict_lookup(mp, key, hash, &old_value);
if (ix == DKIX_ERROR)
goto Fail;
@@ -1097,14 +989,15 @@ insertdict(PyDictObject *mp, PyObject *key, Py_hash_t hash, PyObject *value)
if (ix == DKIX_EMPTY) {
/* Insert into new slot. */
+ mp->ma_keys->dk_version = 0;
assert(old_value == NULL);
if (mp->ma_keys->dk_usable <= 0) {
/* Need to resize. */
if (insertion_resize(mp) < 0)
goto Fail;
}
- if (!PyUnicode_CheckExact(key) && mp->ma_keys->dk_lookup != lookdict) {
- mp->ma_keys->dk_lookup = lookdict;
+ if (!PyUnicode_CheckExact(key) && mp->ma_keys->dk_kind != DICT_KEYS_GENERAL) {
+ mp->ma_keys->dk_kind = DICT_KEYS_GENERAL;
}
Py_ssize_t hashpos = find_empty_slot(mp->ma_keys, hash);
ep = &DK_ENTRIES(mp->ma_keys)[mp->ma_keys->dk_nentries];
@@ -1160,12 +1053,12 @@ insert_to_emptydict(PyDictObject *mp, PyObject *key, Py_hash_t hash,
{
assert(mp->ma_keys == Py_EMPTY_KEYS);
- PyDictKeysObject *newkeys = new_keys_object(PyDict_MINSIZE);
+ PyDictKeysObject *newkeys = new_keys_object(PyDict_LOG_MINSIZE);
if (newkeys == NULL) {
return -1;
}
if (!PyUnicode_CheckExact(key)) {
- newkeys->dk_lookup = lookdict;
+ newkeys->dk_kind = DICT_KEYS_GENERAL;
}
dictkeys_decref(Py_EMPTY_KEYS);
mp->ma_keys = newkeys;
@@ -1217,19 +1110,18 @@ After resizing a table is always combined,
but can be resplit by make_keys_shared().
*/
static int
-dictresize(PyDictObject *mp, Py_ssize_t newsize)
+dictresize(PyDictObject *mp, uint8_t log2_newsize)
{
Py_ssize_t numentries;
PyDictKeysObject *oldkeys;
PyObject **oldvalues;
PyDictKeyEntry *oldentries, *newentries;
- if (newsize <= 0) {
+ if (log2_newsize >= SIZEOF_SIZE_T*8) {
PyErr_NoMemory();
return -1;
}
- assert(IS_POWER_OF_2(newsize));
- assert(newsize >= PyDict_MINSIZE);
+ assert(log2_newsize >= PyDict_LOG_MINSIZE);
oldkeys = mp->ma_keys;
@@ -1239,15 +1131,15 @@ dictresize(PyDictObject *mp, Py_ssize_t newsize)
*/
/* Allocate a new table. */
- mp->ma_keys = new_keys_object(newsize);
+ mp->ma_keys = new_keys_object(log2_newsize);
if (mp->ma_keys == NULL) {
mp->ma_keys = oldkeys;
return -1;
}
// New table must be large enough.
assert(mp->ma_keys->dk_usable >= mp->ma_used);
- if (oldkeys->dk_lookup == lookdict)
- mp->ma_keys->dk_lookup = lookdict;
+ if (oldkeys->dk_kind == DICT_KEYS_GENERAL)
+ mp->ma_keys->dk_kind = DICT_KEYS_GENERAL;
numentries = mp->ma_used;
oldentries = DK_ENTRIES(oldkeys);
@@ -1287,7 +1179,7 @@ dictresize(PyDictObject *mp, Py_ssize_t newsize)
}
}
- assert(oldkeys->dk_lookup != lookdict_split);
+ assert(oldkeys->dk_kind != DICT_KEYS_SPLIT);
assert(oldkeys->dk_refcnt == 1);
#ifdef Py_REF_DEBUG
_Py_RefTotal--;
@@ -1297,7 +1189,7 @@ dictresize(PyDictObject *mp, Py_ssize_t newsize)
// dictresize() must not be called after _PyDict_Fini()
assert(state->keys_numfree != -1);
#endif
- if (oldkeys->dk_size == PyDict_MINSIZE &&
+ if (DK_SIZE(oldkeys) == PyDict_MINSIZE &&
state->keys_numfree < PyDict_MAXFREELIST)
{
state->keys_free_list[state->keys_numfree++] = oldkeys;
@@ -1328,15 +1220,15 @@ make_keys_shared(PyObject *op)
PyDictKeyEntry *ep0;
PyObject **values;
assert(mp->ma_keys->dk_refcnt == 1);
- if (mp->ma_keys->dk_lookup == lookdict) {
+ if (mp->ma_keys->dk_kind == DICT_KEYS_GENERAL) {
return NULL;
}
- else if (mp->ma_keys->dk_lookup == lookdict_unicode) {
+ else if (mp->ma_used > mp->ma_keys->dk_nentries) {
/* Remove dummy keys */
- if (dictresize(mp, DK_SIZE(mp->ma_keys)))
+ if (dictresize(mp, DK_LOG_SIZE(mp->ma_keys)))
return NULL;
}
- assert(mp->ma_keys->dk_lookup == lookdict_unicode_nodummy);
+ assert(mp->ma_used == mp->ma_keys->dk_nentries);
/* Copy values into a new array */
ep0 = DK_ENTRIES(mp->ma_keys);
size = USABLE_FRACTION(DK_SIZE(mp->ma_keys));
@@ -1350,7 +1242,7 @@ make_keys_shared(PyObject *op)
values[i] = ep0[i].me_value;
ep0[i].me_value = NULL;
}
- mp->ma_keys->dk_lookup = lookdict_split;
+ mp->ma_keys->dk_kind = DICT_KEYS_SPLIT;
mp->ma_values = values;
}
dictkeys_incref(mp->ma_keys);
@@ -1360,8 +1252,9 @@ make_keys_shared(PyObject *op)
PyObject *
_PyDict_NewPresized(Py_ssize_t minused)
{
- const Py_ssize_t max_presize = 128 * 1024;
- Py_ssize_t newsize;
+ const uint8_t log2_max_presize = 17;
+ const Py_ssize_t max_presize = ((Py_ssize_t)1) << log2_max_presize;
+ uint8_t log2_newsize;
PyDictKeysObject *new_keys;
if (minused <= USABLE_FRACTION(PyDict_MINSIZE)) {
@@ -1372,13 +1265,13 @@ _PyDict_NewPresized(Py_ssize_t minused)
* large dict or MemoryError.
*/
if (minused > USABLE_FRACTION(max_presize)) {
- newsize = max_presize;
+ log2_newsize = log2_max_presize;
}
else {
- newsize = estimate_keysize(minused);
+ log2_newsize = estimate_log2_keysize(minused);
}
- new_keys = new_keys_object(newsize);
+ new_keys = new_keys_object(log2_newsize);
if (new_keys == NULL)
return NULL;
return new_dict(new_keys, NULL);
@@ -1423,17 +1316,16 @@ PyDict_GetItem(PyObject *op, PyObject *key)
/* Preserve the existing exception */
PyObject *exc_type, *exc_value, *exc_tb;
PyObject *value;
- Py_ssize_t ix;
+ Py_ssize_t ix; (void)ix;
_PyErr_Fetch(tstate, &exc_type, &exc_value, &exc_tb);
- ix = (mp->ma_keys->dk_lookup)(mp, key, hash, &value);
+ ix = _Py_dict_lookup(mp, key, hash, &value);
/* Ignore any exception raised by the lookup */
_PyErr_Restore(tstate, exc_type, exc_value, exc_tb);
- if (ix < 0) {
- return NULL;
- }
+
+ assert(ix >= 0 || value == NULL);
return value;
}
@@ -1450,7 +1342,7 @@ _PyDict_GetItemHint(PyDictObject *mp, PyObject *key,
PyDictKeyEntry *ep = DK_ENTRIES(mp->ma_keys) + (size_t)hint;
if (ep->me_key == key) {
- if (mp->ma_keys->dk_lookup == lookdict_split) {
+ if (mp->ma_keys->dk_kind == DICT_KEYS_SPLIT) {
assert(mp->ma_values != NULL);
res = mp->ma_values[(size_t)hint];
}
@@ -1472,7 +1364,7 @@ _PyDict_GetItemHint(PyDictObject *mp, PyObject *key,
}
}
- return (mp->ma_keys->dk_lookup)(mp, key, hash, value);
+ return _Py_dict_lookup(mp, key, hash, value);
}
/* Same as PyDict_GetItemWithError() but with hash supplied by caller.
@@ -1482,7 +1374,7 @@ _PyDict_GetItemHint(PyDictObject *mp, PyObject *key,
PyObject *
_PyDict_GetItem_KnownHash(PyObject *op, PyObject *key, Py_hash_t hash)
{
- Py_ssize_t ix;
+ Py_ssize_t ix; (void)ix;
PyDictObject *mp = (PyDictObject *)op;
PyObject *value;
@@ -1491,10 +1383,8 @@ _PyDict_GetItem_KnownHash(PyObject *op, PyObject *key, Py_hash_t hash)
return NULL;
}
- ix = (mp->ma_keys->dk_lookup)(mp, key, hash, &value);
- if (ix < 0) {
- return NULL;
- }
+ ix = _Py_dict_lookup(mp, key, hash, &value);
+ assert(ix >= 0 || value == NULL);
return value;
}
@@ -1505,7 +1395,7 @@ _PyDict_GetItem_KnownHash(PyObject *op, PyObject *key, Py_hash_t hash)
PyObject *
PyDict_GetItemWithError(PyObject *op, PyObject *key)
{
- Py_ssize_t ix;
+ Py_ssize_t ix; (void)ix;
Py_hash_t hash;
PyDictObject*mp = (PyDictObject *)op;
PyObject *value;
@@ -1523,9 +1413,8 @@ PyDict_GetItemWithError(PyObject *op, PyObject *key)
}
}
- ix = (mp->ma_keys->dk_lookup)(mp, key, hash, &value);
- if (ix < 0)
- return NULL;
+ ix = _Py_dict_lookup(mp, key, hash, &value);
+ assert(ix >= 0 || value == NULL);
return value;
}
@@ -1577,16 +1466,15 @@ _PyDict_LoadGlobal(PyDictObject *globals, PyDictObject *builtins, PyObject *key)
}
/* namespace 1: globals */
- ix = globals->ma_keys->dk_lookup(globals, key, hash, &value);
+ ix = _Py_dict_lookup(globals, key, hash, &value);
if (ix == DKIX_ERROR)
return NULL;
if (ix != DKIX_EMPTY && value != NULL)
return value;
/* namespace 2: builtins */
- ix = builtins->ma_keys->dk_lookup(builtins, key, hash, &value);
- if (ix < 0)
- return NULL;
+ ix = _Py_dict_lookup(builtins, key, hash, &value);
+ assert(ix >= 0 || value == NULL);
return value;
}
@@ -1659,7 +1547,7 @@ delitem_common(PyDictObject *mp, Py_hash_t hash, Py_ssize_t ix,
mp->ma_version_tag = DICT_NEXT_VERSION();
ep = &DK_ENTRIES(mp->ma_keys)[ix];
dictkeys_set_index(mp->ma_keys, hashpos, DKIX_DUMMY);
- ENSURE_ALLOWS_DELETIONS(mp);
+ mp->ma_keys->dk_version = 0;
old_key = ep->me_key;
ep->me_key = NULL;
ep->me_value = NULL;
@@ -1699,7 +1587,7 @@ _PyDict_DelItem_KnownHash(PyObject *op, PyObject *key, Py_hash_t hash)
assert(key);
assert(hash != -1);
mp = (PyDictObject *)op;
- ix = (mp->ma_keys->dk_lookup)(mp, key, hash, &old_value);
+ ix = _Py_dict_lookup(mp, key, hash, &old_value);
if (ix == DKIX_ERROR)
return -1;
if (ix == DKIX_EMPTY || old_value == NULL) {
@@ -1709,10 +1597,10 @@ _PyDict_DelItem_KnownHash(PyObject *op, PyObject *key, Py_hash_t hash)
// Split table doesn't allow deletion. Combine it.
if (_PyDict_HasSplitTable(mp)) {
- if (dictresize(mp, DK_SIZE(mp->ma_keys))) {
+ if (dictresize(mp, DK_LOG_SIZE(mp->ma_keys))) {
return -1;
}
- ix = (mp->ma_keys->dk_lookup)(mp, key, hash, &old_value);
+ ix = _Py_dict_lookup(mp, key, hash, &old_value);
assert(ix >= 0);
}
@@ -1742,7 +1630,7 @@ _PyDict_DelItemIf(PyObject *op, PyObject *key,
if (hash == -1)
return -1;
mp = (PyDictObject *)op;
- ix = (mp->ma_keys->dk_lookup)(mp, key, hash, &old_value);
+ ix = _Py_dict_lookup(mp, key, hash, &old_value);
if (ix == DKIX_ERROR)
return -1;
if (ix == DKIX_EMPTY || old_value == NULL) {
@@ -1752,10 +1640,10 @@ _PyDict_DelItemIf(PyObject *op, PyObject *key,
// Split table doesn't allow deletion. Combine it.
if (_PyDict_HasSplitTable(mp)) {
- if (dictresize(mp, DK_SIZE(mp->ma_keys))) {
+ if (dictresize(mp, DK_LOG_SIZE(mp->ma_keys))) {
return -1;
}
- ix = (mp->ma_keys->dk_lookup)(mp, key, hash, &old_value);
+ ix = _Py_dict_lookup(mp, key, hash, &old_value);
assert(ix >= 0);
}
@@ -1902,7 +1790,7 @@ _PyDict_Pop_KnownHash(PyObject *dict, PyObject *key, Py_hash_t hash, PyObject *d
_PyErr_SetKeyError(key);
return NULL;
}
- ix = (mp->ma_keys->dk_lookup)(mp, key, hash, &old_value);
+ ix = _Py_dict_lookup(mp, key, hash, &old_value);
if (ix == DKIX_ERROR)
return NULL;
if (ix == DKIX_EMPTY || old_value == NULL) {
@@ -1916,10 +1804,10 @@ _PyDict_Pop_KnownHash(PyObject *dict, PyObject *key, Py_hash_t hash, PyObject *d
// Split table doesn't allow deletion. Combine it.
if (_PyDict_HasSplitTable(mp)) {
- if (dictresize(mp, DK_SIZE(mp->ma_keys))) {
+ if (dictresize(mp, DK_LOG_SIZE(mp->ma_keys))) {
return NULL;
}
- ix = (mp->ma_keys->dk_lookup)(mp, key, hash, &old_value);
+ ix = _Py_dict_lookup(mp, key, hash, &old_value);
assert(ix >= 0);
}
@@ -1930,7 +1818,7 @@ _PyDict_Pop_KnownHash(PyObject *dict, PyObject *key, Py_hash_t hash, PyObject *d
mp->ma_version_tag = DICT_NEXT_VERSION();
dictkeys_set_index(mp->ma_keys, hashpos, DKIX_DUMMY);
ep = &DK_ENTRIES(mp->ma_keys)[ix];
- ENSURE_ALLOWS_DELETIONS(mp);
+ mp->ma_keys->dk_version = 0;
old_key = ep->me_key;
ep->me_key = NULL;
ep->me_value = NULL;
@@ -1983,7 +1871,7 @@ _PyDict_FromKeys(PyObject *cls, PyObject *iterable, PyObject *value)
PyObject *key;
Py_hash_t hash;
- if (dictresize(mp, estimate_keysize(PyDict_GET_SIZE(iterable)))) {
+ if (dictresize(mp, estimate_log2_keysize(PyDict_GET_SIZE(iterable)))) {
Py_DECREF(d);
return NULL;
}
@@ -2002,7 +1890,7 @@ _PyDict_FromKeys(PyObject *cls, PyObject *iterable, PyObject *value)
PyObject *key;
Py_hash_t hash;
- if (dictresize(mp, estimate_keysize(PySet_GET_SIZE(iterable)))) {
+ if (dictresize(mp, estimate_log2_keysize(PySet_GET_SIZE(iterable)))) {
Py_DECREF(d);
return NULL;
}
@@ -2192,7 +2080,7 @@ dict_subscript(PyDictObject *mp, PyObject *key)
if (hash == -1)
return NULL;
}
- ix = (mp->ma_keys->dk_lookup)(mp, key, hash, &value);
+ ix = _Py_dict_lookup(mp, key, hash, &value);
if (ix == DKIX_ERROR)
return NULL;
if (ix == DKIX_EMPTY || value == NULL) {
@@ -2578,8 +2466,8 @@ dict_merge(PyObject *a, PyObject *b, int override)
// If other is clean, combined, and just allocated, just clone it.
if (other->ma_values == NULL &&
other->ma_used == okeys->dk_nentries &&
- (okeys->dk_size == PyDict_MINSIZE ||
- USABLE_FRACTION(okeys->dk_size/2) < other->ma_used)) {
+ (DK_SIZE(okeys) == PyDict_MINSIZE ||
+ USABLE_FRACTION(DK_SIZE(okeys)/2) < other->ma_used)) {
PyDictKeysObject *keys = clone_combined_dict_keys(other);
if (keys == NULL) {
return -1;
@@ -2610,8 +2498,8 @@ dict_merge(PyObject *a, PyObject *b, int override)
* incrementally resizing as we insert new items. Expect
* that there will be no (or few) overlapping keys.
*/
- if (USABLE_FRACTION(mp->ma_keys->dk_size) < other->ma_used) {
- if (dictresize(mp, estimate_keysize(mp->ma_used + other->ma_used))) {
+ if (USABLE_FRACTION(DK_SIZE(mp->ma_keys)) < other->ma_used) {
+ if (dictresize(mp, estimate_log2_keysize(mp->ma_used + other->ma_used))) {
return -1;
}
}
@@ -2908,7 +2796,7 @@ dict_equal(PyDictObject *a, PyDictObject *b)
/* ditto for key */
Py_INCREF(key);
/* reuse the known hash value */
- b->ma_keys->dk_lookup(b, key, ep->me_hash, &bval);
+ _Py_dict_lookup(b, key, ep->me_hash, &bval);
if (bval == NULL) {
Py_DECREF(key);
Py_DECREF(aval);
@@ -2975,7 +2863,7 @@ dict___contains__(PyDictObject *self, PyObject *key)
if (hash == -1)
return NULL;
}
- ix = (mp->ma_keys->dk_lookup)(mp, key, hash, &value);
+ ix = _Py_dict_lookup(mp, key, hash, &value);
if (ix == DKIX_ERROR)
return NULL;
if (ix == DKIX_EMPTY || value == NULL)
@@ -3007,7 +2895,7 @@ dict_get_impl(PyDictObject *self, PyObject *key, PyObject *default_value)
if (hash == -1)
return NULL;
}
- ix = (self->ma_keys->dk_lookup) (self, key, hash, &val);
+ ix = _Py_dict_lookup(self, key, hash, &val);
if (ix == DKIX_ERROR)
return NULL;
if (ix == DKIX_EMPTY || val == NULL) {
@@ -3047,7 +2935,7 @@ PyDict_SetDefault(PyObject *d, PyObject *key, PyObject *defaultobj)
return NULL;
}
- Py_ssize_t ix = (mp->ma_keys->dk_lookup)(mp, key, hash, &value);
+ Py_ssize_t ix = _Py_dict_lookup(mp, key, hash, &value);
if (ix == DKIX_ERROR)
return NULL;
@@ -3061,6 +2949,7 @@ PyDict_SetDefault(PyObject *d, PyObject *key, PyObject *defaultobj)
}
if (ix == DKIX_EMPTY) {
+ mp->ma_keys->dk_version = 0;
PyDictKeyEntry *ep, *ep0;
value = defaultobj;
if (mp->ma_keys->dk_usable <= 0) {
@@ -3068,8 +2957,8 @@ PyDict_SetDefault(PyObject *d, PyObject *key, PyObject *defaultobj)
return NULL;
}
}
- if (!PyUnicode_CheckExact(key) && mp->ma_keys->dk_lookup != lookdict) {
- mp->ma_keys->dk_lookup = lookdict;
+ if (!PyUnicode_CheckExact(key) && mp->ma_keys->dk_kind != DICT_KEYS_GENERAL) {
+ mp->ma_keys->dk_kind = DICT_KEYS_GENERAL;
}
Py_ssize_t hashpos = find_empty_slot(mp->ma_keys, hash);
ep0 = DK_ENTRIES(mp->ma_keys);
@@ -3194,13 +3083,13 @@ dict_popitem_impl(PyDictObject *self)
return NULL;
}
/* Convert split table to combined table */
- if (self->ma_keys->dk_lookup == lookdict_split) {
- if (dictresize(self, DK_SIZE(self->ma_keys))) {
+ if (self->ma_keys->dk_kind == DICT_KEYS_SPLIT) {
+ if (dictresize(self, DK_LOG_SIZE(self->ma_keys))) {
Py_DECREF(res);
return NULL;
}
}
- ENSURE_ALLOWS_DELETIONS(self);
+ self->ma_keys->dk_version = 0;
/* Pop last item */
ep0 = DK_ENTRIES(self->ma_keys);
@@ -3236,7 +3125,7 @@ dict_traverse(PyObject *op, visitproc visit, void *arg)
PyDictKeyEntry *entries = DK_ENTRIES(keys);
Py_ssize_t i, n = keys->dk_nentries;
- if (keys->dk_lookup == lookdict) {
+ if (keys->dk_kind == DICT_KEYS_GENERAL) {
for (i = 0; i < n; i++) {
if (entries[i].me_value != NULL) {
Py_VISIT(entries[i].me_value);
@@ -3401,7 +3290,7 @@ PyDict_Contains(PyObject *op, PyObject *key)
if (hash == -1)
return -1;
}
- ix = (mp->ma_keys->dk_lookup)(mp, key, hash, &value);
+ ix = _Py_dict_lookup(mp, key, hash, &value);
if (ix == DKIX_ERROR)
return -1;
return (ix != DKIX_EMPTY && value != NULL);
@@ -3415,7 +3304,7 @@ _PyDict_Contains_KnownHash(PyObject *op, PyObject *key, Py_hash_t hash)
PyObject *value;
Py_ssize_t ix;
- ix = (mp->ma_keys->dk_lookup)(mp, key, hash, &value);
+ ix = _Py_dict_lookup(mp, key, hash, &value);
if (ix == DKIX_ERROR)
return -1;
return (ix != DKIX_EMPTY && value != NULL);
@@ -4974,12 +4863,12 @@ dictvalues_reversed(_PyDictViewObject *dv, PyObject *Py_UNUSED(ignored))
PyDictKeysObject *
_PyDict_NewKeysForClass(void)
{
- PyDictKeysObject *keys = new_keys_object(PyDict_MINSIZE);
+ PyDictKeysObject *keys = new_keys_object(PyDict_LOG_MINSIZE);
if (keys == NULL) {
PyErr_Clear();
}
else {
- keys->dk_lookup = lookdict_split;
+ keys->dk_kind = DICT_KEYS_SPLIT;
}
return keys;
}
@@ -5091,3 +4980,18 @@ _PyDictKeys_DecRef(PyDictKeysObject *keys)
{
dictkeys_decref(keys);
}
+
+static uint32_t next_dict_keys_version = 2;
+
+uint32_t _PyDictKeys_GetVersionForCurrentState(PyDictObject *dict)
+{
+ if (dict->ma_keys->dk_version != 0) {
+ return dict->ma_keys->dk_version;
+ }
+ if (next_dict_keys_version == 0) {
+ return 0;
+ }
+ uint32_t v = next_dict_keys_version++;
+ dict->ma_keys->dk_version = v;
+ return v;
+}
diff --git a/Objects/frameobject.c b/Objects/frameobject.c
index ae8cdcfb92d6b2..1bfae90b9b2c8c 100644
--- a/Objects/frameobject.c
+++ b/Objects/frameobject.c
@@ -6,6 +6,7 @@
#include "pycore_object.h" // _PyObject_GC_UNTRACK()
#include "frameobject.h" // PyFrameObject
+#include "pycore_frame.h"
#include "opcode.h" // EXTENDED_ARG
#include "structmember.h" // PyMemberDef
@@ -13,9 +14,6 @@
static PyMemberDef frame_memberlist[] = {
{"f_back", T_OBJECT, OFF(f_back), READONLY},
- {"f_code", T_OBJECT, OFF(f_code), READONLY|PY_AUDIT_READ},
- {"f_builtins", T_OBJECT, OFF(f_builtins), READONLY},
- {"f_globals", T_OBJECT, OFF(f_globals), READONLY},
{"f_trace_lines", T_BOOL, OFF(f_trace_lines), 0},
{"f_trace_opcodes", T_BOOL, OFF(f_trace_opcodes), 0},
{NULL} /* Sentinel */
@@ -34,8 +32,9 @@ frame_getlocals(PyFrameObject *f, void *closure)
{
if (PyFrame_FastToLocalsWithError(f) < 0)
return NULL;
- Py_INCREF(f->f_locals);
- return f->f_locals;
+ PyObject *locals = _PyFrame_Specials(f)[FRAME_SPECIALS_LOCALS_OFFSET];
+ Py_INCREF(locals);
+ return locals;
}
int
@@ -71,6 +70,36 @@ frame_getlasti(PyFrameObject *f, void *closure)
return PyLong_FromLong(f->f_lasti*2);
}
+static PyObject *
+frame_getglobals(PyFrameObject *f, void *closure)
+{
+ PyObject *globals = _PyFrame_GetGlobals(f);
+ if (globals == NULL) {
+ globals = Py_None;
+ }
+ Py_INCREF(globals);
+ return globals;
+}
+
+static PyObject *
+frame_getbuiltins(PyFrameObject *f, void *closure)
+{
+ PyObject *builtins = _PyFrame_GetBuiltins(f);
+ if (builtins == NULL) {
+ builtins = Py_None;
+ }
+ Py_INCREF(builtins);
+ return builtins;
+}
+
+static PyObject *
+frame_getcode(PyFrameObject *f, void *closure)
+{
+ if (PySys_Audit("object.__getattr__", "Os", f, "f_code") < 0) {
+ return NULL;
+ }
+ return (PyObject *)PyFrame_GetCode(f);
+}
/* Given the index of the effective opcode,
scan back to construct the oparg with EXTENDED_ARG */
@@ -554,50 +583,21 @@ static PyGetSetDef frame_getsetlist[] = {
(setter)frame_setlineno, NULL},
{"f_trace", (getter)frame_gettrace, (setter)frame_settrace, NULL},
{"f_lasti", (getter)frame_getlasti, NULL, NULL},
+ {"f_globals", (getter)frame_getglobals, NULL, NULL},
+ {"f_builtins", (getter)frame_getbuiltins, NULL, NULL},
+ {"f_code", (getter)frame_getcode, NULL, NULL},
{0}
};
/* Stack frames are allocated and deallocated at a considerable rate.
- In an attempt to improve the speed of function calls, we:
-
- 1. Hold a single "zombie" frame on each code object. This retains
- the allocated and initialised frame object from an invocation of
- the code object. The zombie is reanimated the next time we need a
- frame object for that code object. Doing this saves the malloc/
- realloc required when using a free_list frame that isn't the
- correct size. It also saves some field initialisation.
-
- In zombie mode, no field of PyFrameObject holds a reference, but
- the following fields are still valid:
-
- * ob_type, ob_size, f_code, f_valuestack;
-
- * f_locals, f_trace are NULL;
-
- * f_localsplus does not require re-allocation and
- the local variables in f_localsplus are NULL.
-
- 2. We also maintain a separate free list of stack frames (just like
- floats are allocated in a special way -- see floatobject.c). When
- a stack frame is on the free list, only the following members have
- a meaning:
+ In an attempt to improve the speed of function calls, we maintain
+ a separate free list of stack frames (just like floats are
+ allocated in a special way -- see floatobject.c). When a stack
+ frame is on the free list, only the following members have a meaning:
ob_type == &Frametype
f_back next item on free list, or NULL
- f_stacksize size of value stack
- ob_size size of localsplus
- Note that the value and block stacks are preserved -- this can save
- another malloc() call or two (and two free() calls as well!).
- Also note that, unlike for integers, each frame object is a
- malloc'ed object in its own right -- it is only the actual calls to
- malloc() that we are trying to save here, not the administration.
- After all, while a typical program may make millions of calls, a
- call depth of more than 20 or 30 is probably already exceptional
- unless the program contains run-away recursion. I hope.
-
- Later, PyFrame_MAXFREELIST was added to bound the # of frames saved on
- free_list. Else programs creating lots of cyclic trash involving
- frames could provoke free_list into growing without bound.
*/
+
/* max value for numfree */
#define PyFrame_MAXFREELIST 200
@@ -609,42 +609,37 @@ frame_dealloc(PyFrameObject *f)
}
Py_TRASHCAN_SAFE_BEGIN(f)
- /* Kill all local variables */
- PyObject **valuestack = f->f_valuestack;
- for (PyObject **p = f->f_localsplus; p < valuestack; p++) {
- Py_CLEAR(*p);
- }
+ PyCodeObject *co = f->f_code;
- /* Free stack */
- for (int i = 0; i < f->f_stackdepth; i++) {
- Py_XDECREF(f->f_valuestack[i]);
+ /* Kill all local variables */
+ if (f->f_localsptr) {
+ for (int i = 0; i < co->co_nlocalsplus+FRAME_SPECIALS_SIZE; i++) {
+ Py_CLEAR(f->f_localsptr[i]);
+ }
+ /* Free items on stack */
+ for (int i = 0; i < f->f_stackdepth; i++) {
+ Py_XDECREF(f->f_valuestack[i]);
+ }
+ if (f->f_own_locals_memory) {
+ PyMem_Free(f->f_localsptr);
+ f->f_own_locals_memory = 0;
+ }
}
f->f_stackdepth = 0;
-
Py_XDECREF(f->f_back);
- Py_DECREF(f->f_builtins);
- Py_DECREF(f->f_globals);
- Py_CLEAR(f->f_locals);
Py_CLEAR(f->f_trace);
-
- PyCodeObject *co = f->f_code;
- if (co->co_zombieframe == NULL) {
- co->co_zombieframe = f;
- }
- else {
- struct _Py_frame_state *state = get_frame_state();
+ struct _Py_frame_state *state = get_frame_state();
#ifdef Py_DEBUG
- // frame_dealloc() must not be called after _PyFrame_Fini()
- assert(state->numfree != -1);
+ // frame_dealloc() must not be called after _PyFrame_Fini()
+ assert(state->numfree != -1);
#endif
- if (state->numfree < PyFrame_MAXFREELIST) {
- ++state->numfree;
- f->f_back = state->free_list;
- state->free_list = f;
- }
- else {
- PyObject_GC_Del(f);
- }
+ if (state->numfree < PyFrame_MAXFREELIST) {
+ ++state->numfree;
+ f->f_back = state->free_list;
+ state->free_list = f;
+ }
+ else {
+ PyObject_GC_Del(f);
}
Py_DECREF(co);
@@ -654,24 +649,17 @@ frame_dealloc(PyFrameObject *f)
static inline Py_ssize_t
frame_nslots(PyFrameObject *frame)
{
- PyCodeObject *code = frame->f_code;
- return (code->co_nlocals
- + PyTuple_GET_SIZE(code->co_cellvars)
- + PyTuple_GET_SIZE(code->co_freevars));
+ return frame->f_valuestack - frame->f_localsptr;
}
static int
frame_traverse(PyFrameObject *f, visitproc visit, void *arg)
{
Py_VISIT(f->f_back);
- Py_VISIT(f->f_code);
- Py_VISIT(f->f_builtins);
- Py_VISIT(f->f_globals);
- Py_VISIT(f->f_locals);
Py_VISIT(f->f_trace);
/* locals */
- PyObject **fastlocals = f->f_localsplus;
+ PyObject **fastlocals = f->f_localsptr;
for (Py_ssize_t i = frame_nslots(f); --i >= 0; ++fastlocals) {
Py_VISIT(*fastlocals);
}
@@ -696,7 +684,7 @@ frame_tp_clear(PyFrameObject *f)
Py_CLEAR(f->f_trace);
/* locals */
- PyObject **fastlocals = f->f_localsplus;
+ PyObject **fastlocals = f->f_localsptr;
for (Py_ssize_t i = frame_nslots(f); --i >= 0; ++fastlocals) {
Py_CLEAR(*fastlocals);
}
@@ -731,15 +719,12 @@ PyDoc_STRVAR(clear__doc__,
static PyObject *
frame_sizeof(PyFrameObject *f, PyObject *Py_UNUSED(ignored))
{
- Py_ssize_t res, extras, ncells, nfrees;
-
- PyCodeObject *code = f->f_code;
- ncells = PyTuple_GET_SIZE(code->co_cellvars);
- nfrees = PyTuple_GET_SIZE(code->co_freevars);
- extras = code->co_stacksize + code->co_nlocals + ncells + nfrees;
- /* subtract one as it is already included in PyFrameObject */
- res = sizeof(PyFrameObject) + (extras-1) * sizeof(PyObject *);
-
+ Py_ssize_t res;
+ res = sizeof(PyFrameObject);
+ if (f->f_own_locals_memory) {
+ PyCodeObject *code = f->f_code;
+ res += (code->co_nlocalsplus+code->co_stacksize) * sizeof(PyObject *);
+ }
return PyLong_FromSsize_t(res);
}
@@ -802,24 +787,33 @@ PyTypeObject PyFrame_Type = {
_Py_IDENTIFIER(__builtins__);
static inline PyFrameObject*
-frame_alloc(PyCodeObject *code)
+frame_alloc(PyCodeObject *code, PyObject **localsarray)
{
- PyFrameObject *f = code->co_zombieframe;
- if (f != NULL) {
- code->co_zombieframe = NULL;
- _Py_NewReference((PyObject *)f);
- assert(f->f_code == code);
- return f;
+ int owns;
+ PyFrameObject *f;
+ if (localsarray == NULL) {
+ int size = code->co_nlocalsplus+code->co_stacksize + FRAME_SPECIALS_SIZE;
+ localsarray = PyMem_Malloc(sizeof(PyObject *)*size);
+ if (localsarray == NULL) {
+ PyErr_NoMemory();
+ return NULL;
+ }
+ for (Py_ssize_t i=0; i < code->co_nlocalsplus; i++) {
+ localsarray[i] = NULL;
+ }
+ owns = 1;
+ }
+ else {
+ owns = 0;
}
-
- Py_ssize_t ncells = PyTuple_GET_SIZE(code->co_cellvars);
- Py_ssize_t nfrees = PyTuple_GET_SIZE(code->co_freevars);
- Py_ssize_t extras = code->co_stacksize + code->co_nlocals + ncells + nfrees;
struct _Py_frame_state *state = get_frame_state();
if (state->free_list == NULL)
{
- f = PyObject_GC_NewVar(PyFrameObject, &PyFrame_Type, extras);
+ f = PyObject_GC_New(PyFrameObject, &PyFrame_Type);
if (f == NULL) {
+ if (owns) {
+ PyMem_Free(localsarray);
+ }
return NULL;
}
}
@@ -832,46 +826,60 @@ frame_alloc(PyCodeObject *code)
--state->numfree;
f = state->free_list;
state->free_list = state->free_list->f_back;
- if (Py_SIZE(f) < extras) {
- PyFrameObject *new_f = PyObject_GC_Resize(PyFrameObject, f, extras);
- if (new_f == NULL) {
- PyObject_GC_Del(f);
- return NULL;
- }
- f = new_f;
- }
_Py_NewReference((PyObject *)f);
}
-
- extras = code->co_nlocals + ncells + nfrees;
- f->f_valuestack = f->f_localsplus + extras;
- for (Py_ssize_t i=0; i < extras; i++) {
- f->f_localsplus[i] = NULL;
- }
+ f->f_localsptr = localsarray;
+ f->f_own_locals_memory = owns;
return f;
}
+int
+_PyFrame_TakeLocals(PyFrameObject *f)
+{
+ assert(f->f_own_locals_memory == 0);
+ assert(f->f_stackdepth == 0);
+ Py_ssize_t size = frame_nslots(f);
+ PyObject **copy = PyMem_Malloc(sizeof(PyObject *)*size);
+ if (copy == NULL) {
+ for (int i = 0; i < size; i++) {
+ PyObject *o = f->f_localsptr[i];
+ Py_XDECREF(o);
+ }
+ PyErr_NoMemory();
+ return -1;
+ }
+ for (int i = 0; i < size; i++) {
+ PyObject *o = f->f_localsptr[i];
+ copy[i] = o;
+ }
+ f->f_own_locals_memory = 1;
+ f->f_localsptr = copy;
+ f->f_valuestack = copy + size;
+ return 0;
+}
PyFrameObject* _Py_HOT_FUNCTION
-_PyFrame_New_NoTrack(PyThreadState *tstate, PyFrameConstructor *con, PyObject *locals)
+_PyFrame_New_NoTrack(PyThreadState *tstate, PyFrameConstructor *con, PyObject *locals, PyObject **localsarray)
{
assert(con != NULL);
assert(con->fc_globals != NULL);
assert(con->fc_builtins != NULL);
assert(con->fc_code != NULL);
assert(locals == NULL || PyMapping_Check(locals));
+ PyCodeObject *code = (PyCodeObject *)con->fc_code;
- PyFrameObject *f = frame_alloc((PyCodeObject *)con->fc_code);
+ PyFrameObject *f = frame_alloc(code, localsarray);
if (f == NULL) {
return NULL;
}
+ PyObject **specials = f->f_localsptr + code->co_nlocalsplus;
+ f->f_valuestack = specials + FRAME_SPECIALS_SIZE;
f->f_back = (PyFrameObject*)Py_XNewRef(tstate->frame);
f->f_code = (PyCodeObject *)Py_NewRef(con->fc_code);
- f->f_builtins = Py_NewRef(con->fc_builtins);
- f->f_globals = Py_NewRef(con->fc_globals);
- f->f_locals = Py_XNewRef(locals);
- // f_valuestack initialized by frame_alloc()
+ specials[FRAME_SPECIALS_BUILTINS_OFFSET] = Py_NewRef(con->fc_builtins);
+ specials[FRAME_SPECIALS_GLOBALS_OFFSET] = Py_NewRef(con->fc_globals);
+ specials[FRAME_SPECIALS_LOCALS_OFFSET] = Py_XNewRef(locals);
f->f_trace = NULL;
f->f_stackdepth = 0;
f->f_trace_lines = 1;
@@ -880,7 +888,6 @@ _PyFrame_New_NoTrack(PyThreadState *tstate, PyFrameConstructor *con, PyObject *l
f->f_lasti = -1;
f->f_lineno = 0;
f->f_state = FRAME_CREATED;
- // f_blockstack and f_localsplus initialized by frame_alloc()
return f;
}
@@ -903,7 +910,7 @@ PyFrame_New(PyThreadState *tstate, PyCodeObject *code,
.fc_kwdefaults = NULL,
.fc_closure = NULL
};
- PyFrameObject *f = _PyFrame_New_NoTrack(tstate, &desc, locals);
+ PyFrameObject *f = _PyFrame_New_NoTrack(tstate, &desc, locals, NULL);
if (f) {
_PyObject_GC_TRACK(f);
}
@@ -1016,15 +1023,14 @@ PyFrame_FastToLocalsWithError(PyFrameObject *f)
PyObject **fast;
PyCodeObject *co;
Py_ssize_t j;
- Py_ssize_t ncells, nfreevars;
if (f == NULL) {
PyErr_BadInternalCall();
return -1;
}
- locals = f->f_locals;
+ locals = _PyFrame_Specials(f)[FRAME_SPECIALS_LOCALS_OFFSET];
if (locals == NULL) {
- locals = f->f_locals = PyDict_New();
+ locals = _PyFrame_Specials(f)[FRAME_SPECIALS_LOCALS_OFFSET] = PyDict_New();
if (locals == NULL)
return -1;
}
@@ -1036,7 +1042,7 @@ PyFrame_FastToLocalsWithError(PyFrameObject *f)
Py_TYPE(map)->tp_name);
return -1;
}
- fast = f->f_localsplus;
+ fast = f->f_localsptr;
j = PyTuple_GET_SIZE(map);
if (j > co->co_nlocals)
j = co->co_nlocals;
@@ -1044,10 +1050,8 @@ PyFrame_FastToLocalsWithError(PyFrameObject *f)
if (map_to_dict(map, j, locals, fast, 0) < 0)
return -1;
}
- ncells = PyTuple_GET_SIZE(co->co_cellvars);
- nfreevars = PyTuple_GET_SIZE(co->co_freevars);
- if (ncells || nfreevars) {
- if (map_to_dict(co->co_cellvars, ncells,
+ if (co->co_ncellvars || co->co_nfreevars) {
+ if (map_to_dict(co->co_cellvars, co->co_ncellvars,
locals, fast + co->co_nlocals, 1))
return -1;
@@ -1060,8 +1064,8 @@ PyFrame_FastToLocalsWithError(PyFrameObject *f)
into the locals dict used by the class.
*/
if (co->co_flags & CO_OPTIMIZED) {
- if (map_to_dict(co->co_freevars, nfreevars,
- locals, fast + co->co_nlocals + ncells, 1) < 0)
+ if (map_to_dict(co->co_freevars, co->co_nfreevars, locals,
+ fast + co->co_nlocals + co->co_ncellvars, 1) < 0)
return -1;
}
}
@@ -1083,16 +1087,15 @@ PyFrame_FastToLocals(PyFrameObject *f)
void
PyFrame_LocalsToFast(PyFrameObject *f, int clear)
{
- /* Merge f->f_locals into fast locals */
+ /* Merge locals into fast locals */
PyObject *locals, *map;
PyObject **fast;
PyObject *error_type, *error_value, *error_traceback;
PyCodeObject *co;
Py_ssize_t j;
- Py_ssize_t ncells, nfreevars;
if (f == NULL)
return;
- locals = f->f_locals;
+ locals = _PyFrame_Specials(f)[FRAME_SPECIALS_LOCALS_OFFSET];
co = f->f_code;
map = co->co_varnames;
if (locals == NULL)
@@ -1100,22 +1103,20 @@ PyFrame_LocalsToFast(PyFrameObject *f, int clear)
if (!PyTuple_Check(map))
return;
PyErr_Fetch(&error_type, &error_value, &error_traceback);
- fast = f->f_localsplus;
+ fast = f->f_localsptr;
j = PyTuple_GET_SIZE(map);
if (j > co->co_nlocals)
j = co->co_nlocals;
if (co->co_nlocals)
dict_to_map(co->co_varnames, j, locals, fast, 0, clear);
- ncells = PyTuple_GET_SIZE(co->co_cellvars);
- nfreevars = PyTuple_GET_SIZE(co->co_freevars);
- if (ncells || nfreevars) {
- dict_to_map(co->co_cellvars, ncells,
+ if (co->co_ncellvars || co->co_nfreevars) {
+ dict_to_map(co->co_cellvars, co->co_ncellvars,
locals, fast + co->co_nlocals, 1, clear);
/* Same test as in PyFrame_FastToLocals() above. */
if (co->co_flags & CO_OPTIMIZED) {
- dict_to_map(co->co_freevars, nfreevars,
- locals, fast + co->co_nlocals + ncells, 1,
- clear);
+ dict_to_map(co->co_freevars, co->co_nfreevars, locals,
+ fast + co->co_nlocals + co->co_ncellvars, 1,
+ clear);
}
}
PyErr_Restore(error_type, error_value, error_traceback);
diff --git a/Objects/funcobject.c b/Objects/funcobject.c
index f0b0b673d4fa40..dc2721593b3211 100644
--- a/Objects/funcobject.c
+++ b/Objects/funcobject.c
@@ -279,7 +279,8 @@ func_get_code(PyFunctionObject *op, void *Py_UNUSED(ignored))
static int
func_set_code(PyFunctionObject *op, PyObject *value, void *Py_UNUSED(ignored))
{
- Py_ssize_t nfree, nclosure;
+ Py_ssize_t nclosure;
+ int nfree;
/* Not legal to del f.func_code or to set it to anything
* other than a code object. */
@@ -294,7 +295,7 @@ func_set_code(PyFunctionObject *op, PyObject *value, void *Py_UNUSED(ignored))
return -1;
}
- nfree = PyCode_GetNumFree((PyCodeObject *)value);
+ nfree = ((PyCodeObject *)value)->co_nfreevars;
nclosure = (op->func_closure == NULL ? 0 :
PyTuple_GET_SIZE(op->func_closure));
if (nclosure != nfree) {
@@ -538,7 +539,7 @@ func_new_impl(PyTypeObject *type, PyCodeObject *code, PyObject *globals,
/*[clinic end generated code: output=99c6d9da3a24e3be input=93611752fc2daf11]*/
{
PyFunctionObject *newfunc;
- Py_ssize_t nfree, nclosure;
+ Py_ssize_t nclosure;
if (name != Py_None && !PyUnicode_Check(name)) {
PyErr_SetString(PyExc_TypeError,
@@ -550,9 +551,8 @@ func_new_impl(PyTypeObject *type, PyCodeObject *code, PyObject *globals,
"arg 4 (defaults) must be None or tuple");
return NULL;
}
- nfree = PyTuple_GET_SIZE(code->co_freevars);
if (!PyTuple_Check(closure)) {
- if (nfree && closure == Py_None) {
+ if (code->co_nfreevars && closure == Py_None) {
PyErr_SetString(PyExc_TypeError,
"arg 5 (closure) must be tuple");
return NULL;
@@ -566,10 +566,10 @@ func_new_impl(PyTypeObject *type, PyCodeObject *code, PyObject *globals,
/* check that the closure is well-formed */
nclosure = closure == Py_None ? 0 : PyTuple_GET_SIZE(closure);
- if (nfree != nclosure)
+ if (code->co_nfreevars != nclosure)
return PyErr_Format(PyExc_ValueError,
"%U requires closure of length %zd, not %zd",
- code->co_name, nfree, nclosure);
+ code->co_name, code->co_nfreevars, nclosure);
if (nclosure) {
Py_ssize_t i;
for (i = 0; i < nclosure; i++) {
diff --git a/Objects/genobject.c b/Objects/genobject.c
index 1889df1d137786..db00d19a3464e0 100644
--- a/Objects/genobject.c
+++ b/Objects/genobject.c
@@ -176,7 +176,7 @@ gen_send_ex2(PyGenObject *gen, PyObject *arg, PyObject **presult,
}
assert(_PyFrame_IsRunnable(f));
- assert(f->f_lasti >= 0 || ((unsigned char *)PyBytes_AS_STRING(f->f_code->co_code))[0] == GEN_START);
+ assert(f->f_lasti >= 0 || ((unsigned char *)PyBytes_AS_STRING(gen->gi_code->co_code))[0] == GEN_START);
/* Push arg onto the frame's value stack */
result = arg ? arg : Py_None;
Py_INCREF(result);
@@ -331,7 +331,7 @@ _PyGen_yf(PyGenObject *gen)
PyFrameObject *f = gen->gi_frame;
if (f) {
- PyObject *bytecode = f->f_code->co_code;
+ PyObject *bytecode = gen->gi_code->co_code;
unsigned char *code = (unsigned char *)PyBytes_AS_STRING(bytecode);
if (f->f_lasti < 0) {
@@ -826,8 +826,7 @@ gen_new_with_qualname(PyTypeObject *type, PyFrameObject *f,
}
gen->gi_frame = f;
f->f_gen = (PyObject *) gen;
- Py_INCREF(f->f_code);
- gen->gi_code = (PyObject *)(f->f_code);
+ gen->gi_code = PyFrame_GetCode(f);
gen->gi_weakreflist = NULL;
gen->gi_exc_state.exc_type = NULL;
gen->gi_exc_state.exc_value = NULL;
@@ -836,7 +835,7 @@ gen_new_with_qualname(PyTypeObject *type, PyFrameObject *f,
if (name != NULL)
gen->gi_name = name;
else
- gen->gi_name = ((PyCodeObject *)gen->gi_code)->co_name;
+ gen->gi_name = gen->gi_code->co_name;
Py_INCREF(gen->gi_name);
if (qualname != NULL)
gen->gi_qualname = qualname;
@@ -1167,11 +1166,12 @@ compute_cr_origin(int origin_depth)
}
frame = PyEval_GetFrame();
for (int i = 0; i < frame_count; ++i) {
- PyCodeObject *code = frame->f_code;
+ PyCodeObject *code = PyFrame_GetCode(frame);
PyObject *frameinfo = Py_BuildValue("OiO",
code->co_filename,
PyFrame_GetLineNumber(frame),
code->co_name);
+ Py_DECREF(code);
if (!frameinfo) {
Py_DECREF(cr_origin);
return NULL;
diff --git a/Objects/obmalloc.c b/Objects/obmalloc.c
index c1c12797aba111..903ca1c9e4b983 100644
--- a/Objects/obmalloc.c
+++ b/Objects/obmalloc.c
@@ -552,6 +552,18 @@ PyObject_GetArenaAllocator(PyObjectArenaAllocator *allocator)
*allocator = _PyObject_Arena;
}
+void *
+_PyObject_VirtualAlloc(size_t size)
+{
+ return _PyObject_Arena.alloc(_PyObject_Arena.ctx, size);
+}
+
+void
+_PyObject_VirtualFree(void *obj, size_t size)
+{
+ _PyObject_Arena.free(_PyObject_Arena.ctx, obj, size);
+}
+
void
PyObject_SetArenaAllocator(PyObjectArenaAllocator *allocator)
{
@@ -3035,7 +3047,7 @@ _PyObject_DebugMallocStats(FILE *out)
fputc('\n', out);
- /* Account for what all of those arena bytes are being used for. */
+ /* Account for what all of those arena bytes are being used for. */
total = printone(out, "# bytes in allocated blocks", allocated_bytes);
total += printone(out, "# bytes in available blocks", available_bytes);
diff --git a/Objects/odictobject.c b/Objects/odictobject.c
index 6c7f1175cd652c..6a33910d9a89de 100644
--- a/Objects/odictobject.c
+++ b/Objects/odictobject.c
@@ -40,9 +40,9 @@ we've considered:
The approach with the least performance impact (time and space) is #2,
mirroring the key order of dict's dk_entries with an array of node pointers.
-While lookdict() and friends (dk_lookup) don't give us the index into the
-array, we make use of pointer arithmetic to get that index. An alternative
-would be to refactor lookdict() to provide the index, explicitly exposing
+While _Py_dict_lookup() does not give us the index into the array,
+we make use of pointer arithmetic to get that index. An alternative would
+be to refactor _Py_dict_lookup() to provide the index, explicitly exposing
the implementation detail. We could even just use a custom lookup function
for OrderedDict that facilitates our need. However, both approaches are
significantly more complicated than just using pointer arithmetic.
@@ -535,7 +535,7 @@ _odict_get_index_raw(PyODictObject *od, PyObject *key, Py_hash_t hash)
PyDictKeysObject *keys = ((PyDictObject *)od)->ma_keys;
Py_ssize_t ix;
- ix = (keys->dk_lookup)((PyDictObject *)od, key, hash, &value);
+ ix = _Py_dict_lookup((PyDictObject *)od, key, hash, &value);
if (ix == DKIX_EMPTY) {
return keys->dk_nentries; /* index of new entry */
}
@@ -545,6 +545,8 @@ _odict_get_index_raw(PyODictObject *od, PyObject *key, Py_hash_t hash)
return ix;
}
+#define ONE ((Py_ssize_t)1)
+
/* Replace od->od_fast_nodes with a new table matching the size of dict's. */
static int
_odict_resize(PyODictObject *od)
@@ -553,7 +555,7 @@ _odict_resize(PyODictObject *od)
_ODictNode **fast_nodes, *node;
/* Initialize a new "fast nodes" table. */
- size = ((PyDictObject *)od)->ma_keys->dk_size;
+ size = ONE << (((PyDictObject *)od)->ma_keys->dk_log2_size);
fast_nodes = PyMem_NEW(_ODictNode *, size);
if (fast_nodes == NULL) {
PyErr_NoMemory();
@@ -592,7 +594,7 @@ _odict_get_index(PyODictObject *od, PyObject *key, Py_hash_t hash)
/* Ensure od_fast_nodes and dk_entries are in sync. */
if (od->od_resize_sentinel != keys ||
- od->od_fast_nodes_size != keys->dk_size) {
+ od->od_fast_nodes_size != (ONE << (keys->dk_log2_size))) {
int resize_res = _odict_resize(od);
if (resize_res < 0)
return -1;
diff --git a/Objects/stringlib/fastsearch.h b/Objects/stringlib/fastsearch.h
index 6574720b609f4c..7b8be5d6492157 100644
--- a/Objects/stringlib/fastsearch.h
+++ b/Objects/stringlib/fastsearch.h
@@ -4,7 +4,8 @@
/* fast search/count implementation, based on a mix between boyer-
moore and horspool, with a few more bells and whistles on the top.
- for some more background, see: http://effbot.org/zone/stringlib.htm */
+ for some more background, see:
+ https://web.archive.org/web/20201107074620/http://effbot.org/zone/stringlib.htm */
/* note: fastsearch may access s[n], which isn't a problem when using
Python's ordinary string types, but may cause problems if you're
diff --git a/Objects/typeobject.c b/Objects/typeobject.c
index e511cf9ebfc7e8..bf792e21c162dd 100644
--- a/Objects/typeobject.c
+++ b/Objects/typeobject.c
@@ -158,6 +158,12 @@ _PyType_CheckConsistency(PyTypeObject *type)
CHECK(!(type->tp_flags & Py_TPFLAGS_READYING));
CHECK(type->tp_dict != NULL);
+ if (type->tp_flags & Py_TPFLAGS_HAVE_GC) {
+ // bpo-44263: tp_traverse is required if Py_TPFLAGS_HAVE_GC is set.
+ // Note: tp_clear is optional.
+ CHECK(type->tp_traverse != NULL);
+ }
+
if (type->tp_flags & Py_TPFLAGS_DISALLOW_INSTANTIATION) {
CHECK(type->tp_new == NULL);
CHECK(_PyDict_ContainsId(type->tp_dict, &PyId___new__) == 0);
@@ -1446,6 +1452,12 @@ subtype_dealloc(PyObject *self)
if (_PyType_IS_GC(base)) {
_PyObject_GC_TRACK(self);
}
+
+ // Don't read type memory after calling basedealloc() since basedealloc()
+ // can deallocate the type and free its memory.
+ int type_needs_decref = (type->tp_flags & Py_TPFLAGS_HEAPTYPE
+ && !(base->tp_flags & Py_TPFLAGS_HEAPTYPE));
+
assert(basedealloc);
basedealloc(self);
@@ -1453,8 +1465,9 @@ subtype_dealloc(PyObject *self)
our type from a HEAPTYPE to a non-HEAPTYPE, so be careful about
reference counting. Only decref if the base type is not already a heap
allocated type. Otherwise, basedealloc should have decref'd it already */
- if (type->tp_flags & Py_TPFLAGS_HEAPTYPE && !(base->tp_flags & Py_TPFLAGS_HEAPTYPE))
- Py_DECREF(type);
+ if (type_needs_decref) {
+ Py_DECREF(type);
+ }
endlabel:
Py_TRASHCAN_END
@@ -3249,6 +3262,9 @@ type_new_get_bases(type_new_ctx *ctx, PyObject **type)
if (winner->tp_new != type_new) {
/* Pass it to the winner */
*type = winner->tp_new(winner, ctx->args, ctx->kwds);
+ if (*type == NULL) {
+ return -1;
+ }
return 1;
}
@@ -3300,6 +3316,7 @@ type_new(PyTypeObject *metatype, PyObject *args, PyObject *kwds)
PyObject *type = NULL;
int res = type_new_get_bases(&ctx, &type);
if (res < 0) {
+ assert(PyErr_Occurred());
return NULL;
}
if (res == 1) {
@@ -3596,6 +3613,7 @@ PyType_FromModuleAndSpec(PyObject *module, PyType_Spec *spec, PyObject *bases)
}
}
+ assert(_PyType_CheckConsistency(type));
return (PyObject*)res;
fail:
@@ -5933,7 +5951,7 @@ static int add_tp_new_wrapper(PyTypeObject *type);
#define COLLECTION_FLAGS (Py_TPFLAGS_SEQUENCE | Py_TPFLAGS_MAPPING)
static int
-type_ready_checks(PyTypeObject *type)
+type_ready_pre_checks(PyTypeObject *type)
{
/* Consistency checks for PEP 590:
* - Py_TPFLAGS_METHOD_DESCRIPTOR requires tp_descr_get
@@ -6294,10 +6312,28 @@ type_ready_set_new(PyTypeObject *type)
}
+static int
+type_ready_post_checks(PyTypeObject *type)
+{
+ // bpo-44263: tp_traverse is required if Py_TPFLAGS_HAVE_GC is set.
+ // Note: tp_clear is optional.
+ if (type->tp_flags & Py_TPFLAGS_HAVE_GC
+ && type->tp_traverse == NULL)
+ {
+ PyErr_Format(PyExc_SystemError,
+ "type %s has the Py_TPFLAGS_HAVE_GC flag "
+ "but has no traverse function",
+ type->tp_name);
+ return -1;
+ }
+ return 0;
+}
+
+
static int
type_ready(PyTypeObject *type)
{
- if (type_ready_checks(type) < 0) {
+ if (type_ready_pre_checks(type) < 0) {
return -1;
}
@@ -6335,6 +6371,9 @@ type_ready(PyTypeObject *type)
if (type_ready_add_subclasses(type) < 0) {
return -1;
}
+ if (type_ready_post_checks(type) < 0) {
+ return -1;
+ }
return 0;
}
@@ -8836,14 +8875,13 @@ super_init_without_args(PyFrameObject *f, PyCodeObject *co,
return -1;
}
- PyObject *obj = f->f_localsplus[0];
- Py_ssize_t i, n;
+ PyObject *obj = f->f_localsptr[0];
+ Py_ssize_t i;
if (obj == NULL && co->co_cell2arg) {
/* The first argument might be a cell. */
- n = PyTuple_GET_SIZE(co->co_cellvars);
- for (i = 0; i < n; i++) {
+ for (i = 0; i < co->co_ncellvars; i++) {
if (co->co_cell2arg[i] == 0) {
- PyObject *cell = f->f_localsplus[co->co_nlocals + i];
+ PyObject *cell = f->f_localsptr[co->co_nlocals + i];
assert(PyCell_Check(cell));
obj = PyCell_GET(cell);
break;
@@ -8856,22 +8894,13 @@ super_init_without_args(PyFrameObject *f, PyCodeObject *co,
return -1;
}
- if (co->co_freevars == NULL) {
- n = 0;
- }
- else {
- assert(PyTuple_Check(co->co_freevars));
- n = PyTuple_GET_SIZE(co->co_freevars);
- }
-
PyTypeObject *type = NULL;
- for (i = 0; i < n; i++) {
+ for (i = 0; i < co->co_nfreevars; i++) {
PyObject *name = PyTuple_GET_ITEM(co->co_freevars, i);
assert(PyUnicode_Check(name));
if (_PyUnicode_EqualToASCIIId(name, &PyId___class__)) {
- Py_ssize_t index = co->co_nlocals +
- PyTuple_GET_SIZE(co->co_cellvars) + i;
- PyObject *cell = f->f_localsplus[index];
+ Py_ssize_t index = co->co_nlocals + co->co_ncellvars + i;
+ PyObject *cell = f->f_localsptr[index];
if (cell == NULL || !PyCell_Check(cell)) {
PyErr_SetString(PyExc_RuntimeError,
"super(): bad __class__ cell");
diff --git a/PC/python3dll.c b/PC/python3dll.c
index 200d1d14e294d1..be85f27e72ac81 100755
--- a/PC/python3dll.c
+++ b/PC/python3dll.c
@@ -55,7 +55,6 @@ EXPORT_FUNC(Py_Exit)
EXPORT_FUNC(Py_FatalError)
EXPORT_FUNC(Py_Finalize)
EXPORT_FUNC(Py_FinalizeEx)
-EXPORT_FUNC(Py_FrozenMain)
EXPORT_FUNC(Py_GenericAlias)
EXPORT_FUNC(Py_GenericAliasType)
EXPORT_FUNC(Py_GetArgcArgv)
diff --git a/PCbuild/_sqlite3.vcxproj b/PCbuild/_sqlite3.vcxproj
index 5eb8559d2925ec..e268c473f4c985 100644
--- a/PCbuild/_sqlite3.vcxproj
+++ b/PCbuild/_sqlite3.vcxproj
@@ -97,7 +97,6 @@
-
@@ -108,7 +107,6 @@
-
diff --git a/PCbuild/_sqlite3.vcxproj.filters b/PCbuild/_sqlite3.vcxproj.filters
index 51830f6a4451a4..79fc17b53fb508 100644
--- a/PCbuild/_sqlite3.vcxproj.filters
+++ b/PCbuild/_sqlite3.vcxproj.filters
@@ -12,9 +12,6 @@
-
- Header Files
-
Header Files
@@ -41,9 +38,6 @@
-
- Source Files
-
Source Files
diff --git a/Parser/asdl_c.py b/Parser/asdl_c.py
index b71565c53fc010..4e5c5c8f7f7093 100755
--- a/Parser/asdl_c.py
+++ b/Parser/asdl_c.py
@@ -6,6 +6,7 @@
import textwrap
from argparse import ArgumentParser
+from contextlib import contextmanager
from pathlib import Path
import asdl
@@ -421,6 +422,14 @@ def visitProduct(self, prod, name):
class Obj2ModVisitor(PickleVisitor):
+ @contextmanager
+ def recursive_call(self, node, level):
+ self.emit('if (Py_EnterRecursiveCall(" while traversing \'%s\' node")) {' % node, level, reflow=False)
+ self.emit('goto failed;', level + 1)
+ self.emit('}', level)
+ yield
+ self.emit('Py_LeaveRecursiveCall();', level)
+
def funcHeader(self, name):
ctype = get_c_type(name)
self.emit("int", 0)
@@ -596,8 +605,9 @@ def visitField(self, field, name, sum=None, prod=None, depth=0):
self.emit("%s val;" % ctype, depth+2)
self.emit("PyObject *tmp2 = PyList_GET_ITEM(tmp, i);", depth+2)
self.emit("Py_INCREF(tmp2);", depth+2)
- self.emit("res = obj2ast_%s(state, tmp2, &val, arena);" %
- field.type, depth+2, reflow=False)
+ with self.recursive_call(name, depth+2):
+ self.emit("res = obj2ast_%s(state, tmp2, &val, arena);" %
+ field.type, depth+2, reflow=False)
self.emit("Py_DECREF(tmp2);", depth+2)
self.emit("if (res != 0) goto failed;", depth+2)
self.emit("if (len != PyList_GET_SIZE(tmp)) {", depth+2)
@@ -610,8 +620,9 @@ def visitField(self, field, name, sum=None, prod=None, depth=0):
self.emit("asdl_seq_SET(%s, i, val);" % field.name, depth+2)
self.emit("}", depth+1)
else:
- self.emit("res = obj2ast_%s(state, tmp, &%s, arena);" %
- (field.type, field.name), depth+1)
+ with self.recursive_call(name, depth+1):
+ self.emit("res = obj2ast_%s(state, tmp, &%s, arena);" %
+ (field.type, field.name), depth+1)
self.emit("if (res != 0) goto failed;", depth+1)
self.emit("Py_CLEAR(tmp);", depth+1)
diff --git a/Parser/parser.c b/Parser/parser.c
index 2ca628b59ba869..81218842cbafe7 100644
--- a/Parser/parser.c
+++ b/Parser/parser.c
@@ -170,8 +170,8 @@ static char *soft_keywords[] = {
#define star_expression_type 1096
#define star_named_expressions_type 1097
#define star_named_expression_type 1098
-#define named_expression_type 1099
-#define direct_named_expression_type 1100
+#define assigment_expression_type 1099
+#define named_expression_type 1100
#define annotated_rhs_type 1101
#define expressions_type 1102
#define expression_type 1103
@@ -254,244 +254,249 @@ static char *soft_keywords[] = {
#define t_atom_type 1180
#define invalid_arguments_type 1181
#define invalid_kwarg_type 1182
-#define invalid_expression_type 1183
-#define invalid_named_expression_type 1184
-#define invalid_assignment_type 1185
-#define invalid_ann_assign_target_type 1186
-#define invalid_del_stmt_type 1187
-#define invalid_block_type 1188
-#define invalid_primary_type 1189 // Left-recursive
-#define invalid_comprehension_type 1190
-#define invalid_dict_comprehension_type 1191
-#define invalid_parameters_type 1192
-#define invalid_parameters_helper_type 1193
-#define invalid_lambda_parameters_type 1194
-#define invalid_lambda_parameters_helper_type 1195
-#define invalid_star_etc_type 1196
-#define invalid_lambda_star_etc_type 1197
-#define invalid_double_type_comments_type 1198
-#define invalid_with_item_type 1199
-#define invalid_for_target_type 1200
-#define invalid_group_type 1201
-#define invalid_import_from_targets_type 1202
-#define invalid_with_stmt_type 1203
-#define invalid_with_stmt_indent_type 1204
-#define invalid_try_stmt_type 1205
-#define invalid_except_stmt_type 1206
-#define invalid_finally_stmt_type 1207
-#define invalid_except_stmt_indent_type 1208
-#define invalid_match_stmt_type 1209
-#define invalid_case_block_type 1210
-#define invalid_if_stmt_type 1211
-#define invalid_elif_stmt_type 1212
-#define invalid_else_stmt_type 1213
-#define invalid_while_stmt_type 1214
-#define invalid_for_stmt_type 1215
-#define invalid_def_raw_type 1216
-#define invalid_class_def_raw_type 1217
-#define invalid_double_starred_kvpairs_type 1218
-#define invalid_kvpair_type 1219
-#define _loop0_1_type 1220
-#define _loop0_2_type 1221
-#define _loop0_4_type 1222
-#define _gather_3_type 1223
-#define _loop0_6_type 1224
-#define _gather_5_type 1225
-#define _loop0_8_type 1226
-#define _gather_7_type 1227
-#define _loop0_10_type 1228
-#define _gather_9_type 1229
-#define _loop1_11_type 1230
-#define _loop0_13_type 1231
-#define _gather_12_type 1232
-#define _tmp_14_type 1233
-#define _tmp_15_type 1234
-#define _tmp_16_type 1235
-#define _tmp_17_type 1236
-#define _tmp_18_type 1237
-#define _tmp_19_type 1238
-#define _tmp_20_type 1239
-#define _tmp_21_type 1240
-#define _loop1_22_type 1241
-#define _tmp_23_type 1242
-#define _tmp_24_type 1243
-#define _loop0_26_type 1244
-#define _gather_25_type 1245
-#define _loop0_28_type 1246
-#define _gather_27_type 1247
-#define _tmp_29_type 1248
-#define _tmp_30_type 1249
-#define _loop0_31_type 1250
-#define _loop1_32_type 1251
-#define _loop0_34_type 1252
-#define _gather_33_type 1253
-#define _tmp_35_type 1254
-#define _loop0_37_type 1255
-#define _gather_36_type 1256
-#define _tmp_38_type 1257
-#define _loop0_40_type 1258
-#define _gather_39_type 1259
-#define _loop0_42_type 1260
-#define _gather_41_type 1261
-#define _loop0_44_type 1262
-#define _gather_43_type 1263
-#define _loop0_46_type 1264
-#define _gather_45_type 1265
-#define _tmp_47_type 1266
-#define _loop1_48_type 1267
-#define _tmp_49_type 1268
-#define _loop1_50_type 1269
-#define _loop0_52_type 1270
-#define _gather_51_type 1271
-#define _tmp_53_type 1272
-#define _tmp_54_type 1273
-#define _tmp_55_type 1274
-#define _tmp_56_type 1275
-#define _loop0_58_type 1276
-#define _gather_57_type 1277
-#define _loop0_60_type 1278
-#define _gather_59_type 1279
-#define _tmp_61_type 1280
-#define _loop0_63_type 1281
-#define _gather_62_type 1282
-#define _loop0_65_type 1283
-#define _gather_64_type 1284
-#define _tmp_66_type 1285
-#define _tmp_67_type 1286
-#define _tmp_68_type 1287
-#define _tmp_69_type 1288
-#define _loop0_70_type 1289
-#define _loop0_71_type 1290
-#define _loop0_72_type 1291
-#define _loop1_73_type 1292
-#define _loop0_74_type 1293
-#define _loop1_75_type 1294
-#define _loop1_76_type 1295
-#define _loop1_77_type 1296
-#define _loop0_78_type 1297
-#define _loop1_79_type 1298
-#define _loop0_80_type 1299
-#define _loop1_81_type 1300
-#define _loop0_82_type 1301
-#define _loop1_83_type 1302
-#define _loop1_84_type 1303
-#define _tmp_85_type 1304
-#define _loop1_86_type 1305
-#define _loop0_88_type 1306
-#define _gather_87_type 1307
-#define _loop1_89_type 1308
-#define _loop0_90_type 1309
-#define _loop0_91_type 1310
-#define _loop0_92_type 1311
-#define _loop1_93_type 1312
-#define _loop0_94_type 1313
-#define _loop1_95_type 1314
-#define _loop1_96_type 1315
-#define _loop1_97_type 1316
-#define _loop0_98_type 1317
-#define _loop1_99_type 1318
-#define _loop0_100_type 1319
-#define _loop1_101_type 1320
-#define _loop0_102_type 1321
-#define _loop1_103_type 1322
-#define _loop1_104_type 1323
-#define _loop1_105_type 1324
-#define _loop1_106_type 1325
-#define _tmp_107_type 1326
-#define _loop0_109_type 1327
-#define _gather_108_type 1328
-#define _tmp_110_type 1329
-#define _tmp_111_type 1330
-#define _tmp_112_type 1331
-#define _tmp_113_type 1332
-#define _loop1_114_type 1333
-#define _tmp_115_type 1334
-#define _tmp_116_type 1335
-#define _loop0_118_type 1336
-#define _gather_117_type 1337
-#define _loop1_119_type 1338
-#define _loop0_120_type 1339
-#define _loop0_121_type 1340
-#define _loop0_123_type 1341
-#define _gather_122_type 1342
-#define _tmp_124_type 1343
-#define _loop0_126_type 1344
-#define _gather_125_type 1345
-#define _loop0_128_type 1346
-#define _gather_127_type 1347
-#define _loop0_130_type 1348
-#define _gather_129_type 1349
-#define _loop0_132_type 1350
-#define _gather_131_type 1351
+#define expression_without_invalid_type 1183
+#define invalid_expression_type 1184
+#define invalid_named_expression_type 1185
+#define invalid_assignment_type 1186
+#define invalid_ann_assign_target_type 1187
+#define invalid_del_stmt_type 1188
+#define invalid_block_type 1189
+#define invalid_primary_type 1190 // Left-recursive
+#define invalid_comprehension_type 1191
+#define invalid_dict_comprehension_type 1192
+#define invalid_parameters_type 1193
+#define invalid_parameters_helper_type 1194
+#define invalid_lambda_parameters_type 1195
+#define invalid_lambda_parameters_helper_type 1196
+#define invalid_star_etc_type 1197
+#define invalid_lambda_star_etc_type 1198
+#define invalid_double_type_comments_type 1199
+#define invalid_with_item_type 1200
+#define invalid_for_target_type 1201
+#define invalid_group_type 1202
+#define invalid_import_from_targets_type 1203
+#define invalid_with_stmt_type 1204
+#define invalid_with_stmt_indent_type 1205
+#define invalid_try_stmt_type 1206
+#define invalid_except_stmt_type 1207
+#define invalid_finally_stmt_type 1208
+#define invalid_except_stmt_indent_type 1209
+#define invalid_match_stmt_type 1210
+#define invalid_case_block_type 1211
+#define invalid_if_stmt_type 1212
+#define invalid_elif_stmt_type 1213
+#define invalid_else_stmt_type 1214
+#define invalid_while_stmt_type 1215
+#define invalid_for_stmt_type 1216
+#define invalid_def_raw_type 1217
+#define invalid_class_def_raw_type 1218
+#define invalid_double_starred_kvpairs_type 1219
+#define invalid_kvpair_type 1220
+#define _loop0_1_type 1221
+#define _loop0_2_type 1222
+#define _loop0_4_type 1223
+#define _gather_3_type 1224
+#define _loop0_6_type 1225
+#define _gather_5_type 1226
+#define _loop0_8_type 1227
+#define _gather_7_type 1228
+#define _loop0_10_type 1229
+#define _gather_9_type 1230
+#define _loop1_11_type 1231
+#define _loop0_13_type 1232
+#define _gather_12_type 1233
+#define _tmp_14_type 1234
+#define _tmp_15_type 1235
+#define _tmp_16_type 1236
+#define _tmp_17_type 1237
+#define _tmp_18_type 1238
+#define _tmp_19_type 1239
+#define _tmp_20_type 1240
+#define _tmp_21_type 1241
+#define _loop1_22_type 1242
+#define _tmp_23_type 1243
+#define _tmp_24_type 1244
+#define _loop0_26_type 1245
+#define _gather_25_type 1246
+#define _loop0_28_type 1247
+#define _gather_27_type 1248
+#define _tmp_29_type 1249
+#define _tmp_30_type 1250
+#define _loop0_31_type 1251
+#define _loop1_32_type 1252
+#define _loop0_34_type 1253
+#define _gather_33_type 1254
+#define _tmp_35_type 1255
+#define _loop0_37_type 1256
+#define _gather_36_type 1257
+#define _tmp_38_type 1258
+#define _loop0_40_type 1259
+#define _gather_39_type 1260
+#define _loop0_42_type 1261
+#define _gather_41_type 1262
+#define _loop0_44_type 1263
+#define _gather_43_type 1264
+#define _loop0_46_type 1265
+#define _gather_45_type 1266
+#define _tmp_47_type 1267
+#define _loop1_48_type 1268
+#define _tmp_49_type 1269
+#define _loop1_50_type 1270
+#define _loop0_52_type 1271
+#define _gather_51_type 1272
+#define _tmp_53_type 1273
+#define _tmp_54_type 1274
+#define _tmp_55_type 1275
+#define _tmp_56_type 1276
+#define _loop0_58_type 1277
+#define _gather_57_type 1278
+#define _loop0_60_type 1279
+#define _gather_59_type 1280
+#define _tmp_61_type 1281
+#define _loop0_63_type 1282
+#define _gather_62_type 1283
+#define _loop0_65_type 1284
+#define _gather_64_type 1285
+#define _tmp_66_type 1286
+#define _tmp_67_type 1287
+#define _tmp_68_type 1288
+#define _tmp_69_type 1289
+#define _loop0_70_type 1290
+#define _loop0_71_type 1291
+#define _loop0_72_type 1292
+#define _loop1_73_type 1293
+#define _loop0_74_type 1294
+#define _loop1_75_type 1295
+#define _loop1_76_type 1296
+#define _loop1_77_type 1297
+#define _loop0_78_type 1298
+#define _loop1_79_type 1299
+#define _loop0_80_type 1300
+#define _loop1_81_type 1301
+#define _loop0_82_type 1302
+#define _loop1_83_type 1303
+#define _loop1_84_type 1304
+#define _tmp_85_type 1305
+#define _loop1_86_type 1306
+#define _loop0_88_type 1307
+#define _gather_87_type 1308
+#define _loop1_89_type 1309
+#define _loop0_90_type 1310
+#define _loop0_91_type 1311
+#define _loop0_92_type 1312
+#define _loop1_93_type 1313
+#define _loop0_94_type 1314
+#define _loop1_95_type 1315
+#define _loop1_96_type 1316
+#define _loop1_97_type 1317
+#define _loop0_98_type 1318
+#define _loop1_99_type 1319
+#define _loop0_100_type 1320
+#define _loop1_101_type 1321
+#define _loop0_102_type 1322
+#define _loop1_103_type 1323
+#define _loop1_104_type 1324
+#define _loop1_105_type 1325
+#define _loop1_106_type 1326
+#define _tmp_107_type 1327
+#define _loop0_109_type 1328
+#define _gather_108_type 1329
+#define _tmp_110_type 1330
+#define _tmp_111_type 1331
+#define _tmp_112_type 1332
+#define _tmp_113_type 1333
+#define _loop1_114_type 1334
+#define _tmp_115_type 1335
+#define _tmp_116_type 1336
+#define _tmp_117_type 1337
+#define _loop0_119_type 1338
+#define _gather_118_type 1339
+#define _loop1_120_type 1340
+#define _loop0_121_type 1341
+#define _loop0_122_type 1342
+#define _loop0_124_type 1343
+#define _gather_123_type 1344
+#define _tmp_125_type 1345
+#define _loop0_127_type 1346
+#define _gather_126_type 1347
+#define _loop0_129_type 1348
+#define _gather_128_type 1349
+#define _loop0_131_type 1350
+#define _gather_130_type 1351
#define _loop0_133_type 1352
-#define _loop0_135_type 1353
-#define _gather_134_type 1354
-#define _loop1_136_type 1355
-#define _tmp_137_type 1356
-#define _loop0_139_type 1357
-#define _gather_138_type 1358
-#define _loop0_141_type 1359
-#define _gather_140_type 1360
-#define _tmp_142_type 1361
-#define _tmp_143_type 1362
-#define _tmp_144_type 1363
-#define _tmp_145_type 1364
-#define _tmp_146_type 1365
-#define _loop0_147_type 1366
-#define _loop0_148_type 1367
-#define _loop0_149_type 1368
-#define _tmp_150_type 1369
-#define _tmp_151_type 1370
-#define _tmp_152_type 1371
-#define _tmp_153_type 1372
-#define _loop0_154_type 1373
-#define _loop1_155_type 1374
-#define _loop0_156_type 1375
-#define _loop1_157_type 1376
-#define _tmp_158_type 1377
-#define _tmp_159_type 1378
-#define _tmp_160_type 1379
-#define _loop0_162_type 1380
-#define _gather_161_type 1381
-#define _loop0_164_type 1382
-#define _gather_163_type 1383
-#define _loop0_166_type 1384
-#define _gather_165_type 1385
-#define _loop0_168_type 1386
-#define _gather_167_type 1387
-#define _tmp_169_type 1388
-#define _tmp_170_type 1389
-#define _tmp_171_type 1390
-#define _tmp_172_type 1391
-#define _tmp_173_type 1392
-#define _loop0_175_type 1393
-#define _gather_174_type 1394
-#define _tmp_176_type 1395
-#define _tmp_177_type 1396
-#define _tmp_178_type 1397
-#define _tmp_179_type 1398
-#define _tmp_180_type 1399
-#define _tmp_181_type 1400
-#define _tmp_182_type 1401
-#define _tmp_183_type 1402
-#define _tmp_184_type 1403
-#define _tmp_185_type 1404
-#define _tmp_186_type 1405
-#define _tmp_187_type 1406
-#define _tmp_188_type 1407
-#define _tmp_189_type 1408
-#define _tmp_190_type 1409
-#define _tmp_191_type 1410
-#define _tmp_192_type 1411
-#define _tmp_193_type 1412
-#define _tmp_194_type 1413
-#define _tmp_195_type 1414
-#define _tmp_196_type 1415
-#define _tmp_197_type 1416
-#define _tmp_198_type 1417
-#define _tmp_199_type 1418
-#define _tmp_200_type 1419
-#define _tmp_201_type 1420
+#define _gather_132_type 1353
+#define _loop0_134_type 1354
+#define _loop0_136_type 1355
+#define _gather_135_type 1356
+#define _loop1_137_type 1357
+#define _tmp_138_type 1358
+#define _loop0_140_type 1359
+#define _gather_139_type 1360
+#define _loop0_142_type 1361
+#define _gather_141_type 1362
+#define _tmp_143_type 1363
+#define _tmp_144_type 1364
+#define _tmp_145_type 1365
+#define _tmp_146_type 1366
+#define _tmp_147_type 1367
+#define _tmp_148_type 1368
+#define _loop0_149_type 1369
+#define _loop0_150_type 1370
+#define _loop0_151_type 1371
+#define _tmp_152_type 1372
+#define _tmp_153_type 1373
+#define _tmp_154_type 1374
+#define _tmp_155_type 1375
+#define _loop0_156_type 1376
+#define _loop1_157_type 1377
+#define _loop0_158_type 1378
+#define _loop1_159_type 1379
+#define _tmp_160_type 1380
+#define _tmp_161_type 1381
+#define _tmp_162_type 1382
+#define _loop0_164_type 1383
+#define _gather_163_type 1384
+#define _loop0_166_type 1385
+#define _gather_165_type 1386
+#define _loop0_168_type 1387
+#define _gather_167_type 1388
+#define _loop0_170_type 1389
+#define _gather_169_type 1390
+#define _tmp_171_type 1391
+#define _tmp_172_type 1392
+#define _tmp_173_type 1393
+#define _tmp_174_type 1394
+#define _tmp_175_type 1395
+#define _tmp_176_type 1396
+#define _loop0_178_type 1397
+#define _gather_177_type 1398
+#define _tmp_179_type 1399
+#define _tmp_180_type 1400
+#define _tmp_181_type 1401
+#define _tmp_182_type 1402
+#define _tmp_183_type 1403
+#define _tmp_184_type 1404
+#define _tmp_185_type 1405
+#define _tmp_186_type 1406
+#define _tmp_187_type 1407
+#define _tmp_188_type 1408
+#define _tmp_189_type 1409
+#define _tmp_190_type 1410
+#define _tmp_191_type 1411
+#define _tmp_192_type 1412
+#define _tmp_193_type 1413
+#define _tmp_194_type 1414
+#define _tmp_195_type 1415
+#define _tmp_196_type 1416
+#define _tmp_197_type 1417
+#define _tmp_198_type 1418
+#define _tmp_199_type 1419
+#define _tmp_200_type 1420
+#define _tmp_201_type 1421
+#define _tmp_202_type 1422
+#define _tmp_203_type 1423
+#define _tmp_204_type 1424
+#define _tmp_205_type 1425
static mod_ty file_rule(Parser *p);
static mod_ty interactive_rule(Parser *p);
@@ -592,8 +597,8 @@ static expr_ty star_expressions_rule(Parser *p);
static expr_ty star_expression_rule(Parser *p);
static asdl_expr_seq* star_named_expressions_rule(Parser *p);
static expr_ty star_named_expression_rule(Parser *p);
+static expr_ty assigment_expression_rule(Parser *p);
static expr_ty named_expression_rule(Parser *p);
-static expr_ty direct_named_expression_rule(Parser *p);
static expr_ty annotated_rhs_rule(Parser *p);
static expr_ty expressions_rule(Parser *p);
static expr_ty expression_rule(Parser *p);
@@ -676,6 +681,7 @@ static void *t_lookahead_rule(Parser *p);
static expr_ty t_atom_rule(Parser *p);
static void *invalid_arguments_rule(Parser *p);
static void *invalid_kwarg_rule(Parser *p);
+static expr_ty expression_without_invalid_rule(Parser *p);
static void *invalid_expression_rule(Parser *p);
static void *invalid_named_expression_rule(Parser *p);
static void *invalid_assignment_rule(Parser *p);
@@ -829,68 +835,68 @@ static void *_tmp_113_rule(Parser *p);
static asdl_seq *_loop1_114_rule(Parser *p);
static void *_tmp_115_rule(Parser *p);
static void *_tmp_116_rule(Parser *p);
-static asdl_seq *_loop0_118_rule(Parser *p);
-static asdl_seq *_gather_117_rule(Parser *p);
-static asdl_seq *_loop1_119_rule(Parser *p);
-static asdl_seq *_loop0_120_rule(Parser *p);
+static void *_tmp_117_rule(Parser *p);
+static asdl_seq *_loop0_119_rule(Parser *p);
+static asdl_seq *_gather_118_rule(Parser *p);
+static asdl_seq *_loop1_120_rule(Parser *p);
static asdl_seq *_loop0_121_rule(Parser *p);
-static asdl_seq *_loop0_123_rule(Parser *p);
-static asdl_seq *_gather_122_rule(Parser *p);
-static void *_tmp_124_rule(Parser *p);
-static asdl_seq *_loop0_126_rule(Parser *p);
-static asdl_seq *_gather_125_rule(Parser *p);
-static asdl_seq *_loop0_128_rule(Parser *p);
-static asdl_seq *_gather_127_rule(Parser *p);
-static asdl_seq *_loop0_130_rule(Parser *p);
-static asdl_seq *_gather_129_rule(Parser *p);
-static asdl_seq *_loop0_132_rule(Parser *p);
-static asdl_seq *_gather_131_rule(Parser *p);
+static asdl_seq *_loop0_122_rule(Parser *p);
+static asdl_seq *_loop0_124_rule(Parser *p);
+static asdl_seq *_gather_123_rule(Parser *p);
+static void *_tmp_125_rule(Parser *p);
+static asdl_seq *_loop0_127_rule(Parser *p);
+static asdl_seq *_gather_126_rule(Parser *p);
+static asdl_seq *_loop0_129_rule(Parser *p);
+static asdl_seq *_gather_128_rule(Parser *p);
+static asdl_seq *_loop0_131_rule(Parser *p);
+static asdl_seq *_gather_130_rule(Parser *p);
static asdl_seq *_loop0_133_rule(Parser *p);
-static asdl_seq *_loop0_135_rule(Parser *p);
-static asdl_seq *_gather_134_rule(Parser *p);
-static asdl_seq *_loop1_136_rule(Parser *p);
-static void *_tmp_137_rule(Parser *p);
-static asdl_seq *_loop0_139_rule(Parser *p);
-static asdl_seq *_gather_138_rule(Parser *p);
-static asdl_seq *_loop0_141_rule(Parser *p);
-static asdl_seq *_gather_140_rule(Parser *p);
-static void *_tmp_142_rule(Parser *p);
+static asdl_seq *_gather_132_rule(Parser *p);
+static asdl_seq *_loop0_134_rule(Parser *p);
+static asdl_seq *_loop0_136_rule(Parser *p);
+static asdl_seq *_gather_135_rule(Parser *p);
+static asdl_seq *_loop1_137_rule(Parser *p);
+static void *_tmp_138_rule(Parser *p);
+static asdl_seq *_loop0_140_rule(Parser *p);
+static asdl_seq *_gather_139_rule(Parser *p);
+static asdl_seq *_loop0_142_rule(Parser *p);
+static asdl_seq *_gather_141_rule(Parser *p);
static void *_tmp_143_rule(Parser *p);
static void *_tmp_144_rule(Parser *p);
static void *_tmp_145_rule(Parser *p);
static void *_tmp_146_rule(Parser *p);
-static asdl_seq *_loop0_147_rule(Parser *p);
-static asdl_seq *_loop0_148_rule(Parser *p);
+static void *_tmp_147_rule(Parser *p);
+static void *_tmp_148_rule(Parser *p);
static asdl_seq *_loop0_149_rule(Parser *p);
-static void *_tmp_150_rule(Parser *p);
-static void *_tmp_151_rule(Parser *p);
+static asdl_seq *_loop0_150_rule(Parser *p);
+static asdl_seq *_loop0_151_rule(Parser *p);
static void *_tmp_152_rule(Parser *p);
static void *_tmp_153_rule(Parser *p);
-static asdl_seq *_loop0_154_rule(Parser *p);
-static asdl_seq *_loop1_155_rule(Parser *p);
+static void *_tmp_154_rule(Parser *p);
+static void *_tmp_155_rule(Parser *p);
static asdl_seq *_loop0_156_rule(Parser *p);
static asdl_seq *_loop1_157_rule(Parser *p);
-static void *_tmp_158_rule(Parser *p);
-static void *_tmp_159_rule(Parser *p);
+static asdl_seq *_loop0_158_rule(Parser *p);
+static asdl_seq *_loop1_159_rule(Parser *p);
static void *_tmp_160_rule(Parser *p);
-static asdl_seq *_loop0_162_rule(Parser *p);
-static asdl_seq *_gather_161_rule(Parser *p);
+static void *_tmp_161_rule(Parser *p);
+static void *_tmp_162_rule(Parser *p);
static asdl_seq *_loop0_164_rule(Parser *p);
static asdl_seq *_gather_163_rule(Parser *p);
static asdl_seq *_loop0_166_rule(Parser *p);
static asdl_seq *_gather_165_rule(Parser *p);
static asdl_seq *_loop0_168_rule(Parser *p);
static asdl_seq *_gather_167_rule(Parser *p);
-static void *_tmp_169_rule(Parser *p);
-static void *_tmp_170_rule(Parser *p);
+static asdl_seq *_loop0_170_rule(Parser *p);
+static asdl_seq *_gather_169_rule(Parser *p);
static void *_tmp_171_rule(Parser *p);
static void *_tmp_172_rule(Parser *p);
static void *_tmp_173_rule(Parser *p);
-static asdl_seq *_loop0_175_rule(Parser *p);
-static asdl_seq *_gather_174_rule(Parser *p);
+static void *_tmp_174_rule(Parser *p);
+static void *_tmp_175_rule(Parser *p);
static void *_tmp_176_rule(Parser *p);
-static void *_tmp_177_rule(Parser *p);
-static void *_tmp_178_rule(Parser *p);
+static asdl_seq *_loop0_178_rule(Parser *p);
+static asdl_seq *_gather_177_rule(Parser *p);
static void *_tmp_179_rule(Parser *p);
static void *_tmp_180_rule(Parser *p);
static void *_tmp_181_rule(Parser *p);
@@ -914,6 +920,10 @@ static void *_tmp_198_rule(Parser *p);
static void *_tmp_199_rule(Parser *p);
static void *_tmp_200_rule(Parser *p);
static void *_tmp_201_rule(Parser *p);
+static void *_tmp_202_rule(Parser *p);
+static void *_tmp_203_rule(Parser *p);
+static void *_tmp_204_rule(Parser *p);
+static void *_tmp_205_rule(Parser *p);
// file: statements? $
@@ -3745,7 +3755,9 @@ dotted_name_rule(Parser *p)
return _res;
}
p->mark = _mark;
+ p->in_raw_rule++;
void *_raw = dotted_name_raw(p);
+ p->in_raw_rule--;
if (p->error_indicator)
return NULL;
if (_raw == NULL || p->mark <= _resmark)
@@ -6917,7 +6929,9 @@ attr_rule(Parser *p)
return _res;
}
p->mark = _mark;
+ p->in_raw_rule++;
void *_raw = attr_raw(p);
+ p->in_raw_rule--;
if (p->error_indicator)
return NULL;
if (_raw == NULL || p->mark <= _resmark)
@@ -10155,9 +10169,9 @@ star_named_expression_rule(Parser *p)
return _res;
}
-// named_expression: NAME ':=' ~ expression | invalid_named_expression | expression !':='
+// assigment_expression: NAME ':=' ~ expression
static expr_ty
-named_expression_rule(Parser *p)
+assigment_expression_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -10180,7 +10194,7 @@ named_expression_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> named_expression[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "NAME ':=' ~ expression"));
+ D(fprintf(stderr, "%*c> assigment_expression[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "NAME ':=' ~ expression"));
int _cut_var = 0;
Token * _literal;
expr_ty a;
@@ -10195,7 +10209,7 @@ named_expression_rule(Parser *p)
(b = expression_rule(p)) // expression
)
{
- D(fprintf(stderr, "%*c+ named_expression[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "NAME ':=' ~ expression"));
+ D(fprintf(stderr, "%*c+ assigment_expression[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "NAME ':=' ~ expression"));
Token *_token = _PyPegen_get_last_nonnwhitespace_token(p);
if (_token == NULL) {
D(p->level--);
@@ -10214,62 +10228,22 @@ named_expression_rule(Parser *p)
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s named_expression[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s assigment_expression[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "NAME ':=' ~ expression"));
if (_cut_var) {
D(p->level--);
return NULL;
}
}
- if (p->call_invalid_rules) { // invalid_named_expression
- if (p->error_indicator) {
- D(p->level--);
- return NULL;
- }
- D(fprintf(stderr, "%*c> named_expression[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "invalid_named_expression"));
- void *invalid_named_expression_var;
- if (
- (invalid_named_expression_var = invalid_named_expression_rule(p)) // invalid_named_expression
- )
- {
- D(fprintf(stderr, "%*c+ named_expression[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "invalid_named_expression"));
- _res = invalid_named_expression_var;
- goto done;
- }
- p->mark = _mark;
- D(fprintf(stderr, "%*c%s named_expression[%d-%d]: %s failed!\n", p->level, ' ',
- p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "invalid_named_expression"));
- }
- { // expression !':='
- if (p->error_indicator) {
- D(p->level--);
- return NULL;
- }
- D(fprintf(stderr, "%*c> named_expression[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "expression !':='"));
- expr_ty expression_var;
- if (
- (expression_var = expression_rule(p)) // expression
- &&
- _PyPegen_lookahead_with_int(0, _PyPegen_expect_token, p, 53) // token=':='
- )
- {
- D(fprintf(stderr, "%*c+ named_expression[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "expression !':='"));
- _res = expression_var;
- goto done;
- }
- p->mark = _mark;
- D(fprintf(stderr, "%*c%s named_expression[%d-%d]: %s failed!\n", p->level, ' ',
- p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "expression !':='"));
- }
_res = NULL;
done:
D(p->level--);
return _res;
}
-// direct_named_expression: NAME ':=' ~ expression | expression !':='
+// named_expression: assigment_expression | invalid_named_expression | expression !':='
static expr_ty
-direct_named_expression_rule(Parser *p)
+named_expression_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -10278,67 +10252,50 @@ direct_named_expression_rule(Parser *p)
}
expr_ty _res = NULL;
int _mark = p->mark;
- if (p->mark == p->fill && _PyPegen_fill_token(p) < 0) {
- p->error_indicator = 1;
- D(p->level--);
- return NULL;
- }
- int _start_lineno = p->tokens[_mark]->lineno;
- UNUSED(_start_lineno); // Only used by EXTRA macro
- int _start_col_offset = p->tokens[_mark]->col_offset;
- UNUSED(_start_col_offset); // Only used by EXTRA macro
- { // NAME ':=' ~ expression
+ { // assigment_expression
if (p->error_indicator) {
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> direct_named_expression[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "NAME ':=' ~ expression"));
- int _cut_var = 0;
- Token * _literal;
- expr_ty a;
- expr_ty b;
+ D(fprintf(stderr, "%*c> named_expression[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "assigment_expression"));
+ expr_ty assigment_expression_var;
if (
- (a = _PyPegen_name_token(p)) // NAME
- &&
- (_literal = _PyPegen_expect_token(p, 53)) // token=':='
- &&
- (_cut_var = 1)
- &&
- (b = expression_rule(p)) // expression
+ (assigment_expression_var = assigment_expression_rule(p)) // assigment_expression
)
{
- D(fprintf(stderr, "%*c+ direct_named_expression[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "NAME ':=' ~ expression"));
- Token *_token = _PyPegen_get_last_nonnwhitespace_token(p);
- if (_token == NULL) {
- D(p->level--);
- return NULL;
- }
- int _end_lineno = _token->end_lineno;
- UNUSED(_end_lineno); // Only used by EXTRA macro
- int _end_col_offset = _token->end_col_offset;
- UNUSED(_end_col_offset); // Only used by EXTRA macro
- _res = _PyAST_NamedExpr ( CHECK ( expr_ty , _PyPegen_set_expr_context ( p , a , Store ) ) , b , EXTRA );
- if (_res == NULL && PyErr_Occurred()) {
- p->error_indicator = 1;
- D(p->level--);
- return NULL;
- }
+ D(fprintf(stderr, "%*c+ named_expression[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "assigment_expression"));
+ _res = assigment_expression_var;
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s direct_named_expression[%d-%d]: %s failed!\n", p->level, ' ',
- p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "NAME ':=' ~ expression"));
- if (_cut_var) {
+ D(fprintf(stderr, "%*c%s named_expression[%d-%d]: %s failed!\n", p->level, ' ',
+ p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "assigment_expression"));
+ }
+ if (p->call_invalid_rules) { // invalid_named_expression
+ if (p->error_indicator) {
D(p->level--);
return NULL;
}
+ D(fprintf(stderr, "%*c> named_expression[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "invalid_named_expression"));
+ void *invalid_named_expression_var;
+ if (
+ (invalid_named_expression_var = invalid_named_expression_rule(p)) // invalid_named_expression
+ )
+ {
+ D(fprintf(stderr, "%*c+ named_expression[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "invalid_named_expression"));
+ _res = invalid_named_expression_var;
+ goto done;
+ }
+ p->mark = _mark;
+ D(fprintf(stderr, "%*c%s named_expression[%d-%d]: %s failed!\n", p->level, ' ',
+ p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "invalid_named_expression"));
}
{ // expression !':='
if (p->error_indicator) {
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> direct_named_expression[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "expression !':='"));
+ D(fprintf(stderr, "%*c> named_expression[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "expression !':='"));
expr_ty expression_var;
if (
(expression_var = expression_rule(p)) // expression
@@ -10346,12 +10303,12 @@ direct_named_expression_rule(Parser *p)
_PyPegen_lookahead_with_int(0, _PyPegen_expect_token, p, 53) // token=':='
)
{
- D(fprintf(stderr, "%*c+ direct_named_expression[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "expression !':='"));
+ D(fprintf(stderr, "%*c+ named_expression[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "expression !':='"));
_res = expression_var;
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s direct_named_expression[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s named_expression[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "expression !':='"));
}
_res = NULL;
@@ -12602,7 +12559,9 @@ bitwise_or_rule(Parser *p)
return _res;
}
p->mark = _mark;
+ p->in_raw_rule++;
void *_raw = bitwise_or_raw(p);
+ p->in_raw_rule--;
if (p->error_indicator)
return NULL;
if (_raw == NULL || p->mark <= _resmark)
@@ -12718,7 +12677,9 @@ bitwise_xor_rule(Parser *p)
return _res;
}
p->mark = _mark;
+ p->in_raw_rule++;
void *_raw = bitwise_xor_raw(p);
+ p->in_raw_rule--;
if (p->error_indicator)
return NULL;
if (_raw == NULL || p->mark <= _resmark)
@@ -12834,7 +12795,9 @@ bitwise_and_rule(Parser *p)
return _res;
}
p->mark = _mark;
+ p->in_raw_rule++;
void *_raw = bitwise_and_raw(p);
+ p->in_raw_rule--;
if (p->error_indicator)
return NULL;
if (_raw == NULL || p->mark <= _resmark)
@@ -12950,7 +12913,9 @@ shift_expr_rule(Parser *p)
return _res;
}
p->mark = _mark;
+ p->in_raw_rule++;
void *_raw = shift_expr_raw(p);
+ p->in_raw_rule--;
if (p->error_indicator)
return NULL;
if (_raw == NULL || p->mark <= _resmark)
@@ -13105,7 +13070,9 @@ sum_rule(Parser *p)
return _res;
}
p->mark = _mark;
+ p->in_raw_rule++;
void *_raw = sum_raw(p);
+ p->in_raw_rule--;
if (p->error_indicator)
return NULL;
if (_raw == NULL || p->mark <= _resmark)
@@ -13266,7 +13233,9 @@ term_rule(Parser *p)
return _res;
}
p->mark = _mark;
+ p->in_raw_rule++;
void *_raw = term_raw(p);
+ p->in_raw_rule--;
if (p->error_indicator)
return NULL;
if (_raw == NULL || p->mark <= _resmark)
@@ -13872,7 +13841,9 @@ primary_rule(Parser *p)
return _res;
}
p->mark = _mark;
+ p->in_raw_rule++;
void *_raw = primary_raw(p);
+ p->in_raw_rule--;
if (p->error_indicator)
return NULL;
if (_raw == NULL || p->mark <= _resmark)
@@ -14906,7 +14877,9 @@ group_rule(Parser *p)
return _res;
}
-// genexp: '(' direct_named_expression for_if_clauses ')' | invalid_comprehension
+// genexp:
+// | '(' (assigment_expression | expression !':=') for_if_clauses ')'
+// | invalid_comprehension
static expr_ty
genexp_rule(Parser *p)
{
@@ -14926,27 +14899,27 @@ genexp_rule(Parser *p)
UNUSED(_start_lineno); // Only used by EXTRA macro
int _start_col_offset = p->tokens[_mark]->col_offset;
UNUSED(_start_col_offset); // Only used by EXTRA macro
- { // '(' direct_named_expression for_if_clauses ')'
+ { // '(' (assigment_expression | expression !':=') for_if_clauses ')'
if (p->error_indicator) {
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> genexp[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'(' direct_named_expression for_if_clauses ')'"));
+ D(fprintf(stderr, "%*c> genexp[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'(' (assigment_expression | expression !':=') for_if_clauses ')'"));
Token * _literal;
Token * _literal_1;
- expr_ty a;
+ void *a;
asdl_comprehension_seq* b;
if (
(_literal = _PyPegen_expect_token(p, 7)) // token='('
&&
- (a = direct_named_expression_rule(p)) // direct_named_expression
+ (a = _tmp_117_rule(p)) // assigment_expression | expression !':='
&&
(b = for_if_clauses_rule(p)) // for_if_clauses
&&
(_literal_1 = _PyPegen_expect_token(p, 8)) // token=')'
)
{
- D(fprintf(stderr, "%*c+ genexp[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'(' direct_named_expression for_if_clauses ')'"));
+ D(fprintf(stderr, "%*c+ genexp[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'(' (assigment_expression | expression !':=') for_if_clauses ')'"));
Token *_token = _PyPegen_get_last_nonnwhitespace_token(p);
if (_token == NULL) {
D(p->level--);
@@ -14966,7 +14939,7 @@ genexp_rule(Parser *p)
}
p->mark = _mark;
D(fprintf(stderr, "%*c%s genexp[%d-%d]: %s failed!\n", p->level, ' ',
- p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "'(' direct_named_expression for_if_clauses ')'"));
+ p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "'(' (assigment_expression | expression !':=') for_if_clauses ')'"));
}
if (p->call_invalid_rules) { // invalid_comprehension
if (p->error_indicator) {
@@ -15343,7 +15316,7 @@ double_starred_kvpairs_rule(Parser *p)
UNUSED(_opt_var); // Silence compiler warnings
asdl_seq * a;
if (
- (a = _gather_117_rule(p)) // ','.double_starred_kvpair+
+ (a = _gather_118_rule(p)) // ','.double_starred_kvpair+
&&
(_opt_var = _PyPegen_expect_token(p, 12), 1) // ','?
)
@@ -15496,7 +15469,7 @@ for_if_clauses_rule(Parser *p)
D(fprintf(stderr, "%*c> for_if_clauses[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "for_if_clause+"));
asdl_comprehension_seq* a;
if (
- (a = (asdl_comprehension_seq*)_loop1_119_rule(p)) // for_if_clause+
+ (a = (asdl_comprehension_seq*)_loop1_120_rule(p)) // for_if_clause+
)
{
D(fprintf(stderr, "%*c+ for_if_clauses[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "for_if_clause+"));
@@ -15558,7 +15531,7 @@ for_if_clause_rule(Parser *p)
&&
(b = disjunction_rule(p)) // disjunction
&&
- (c = (asdl_expr_seq*)_loop0_120_rule(p)) // (('if' disjunction))*
+ (c = (asdl_expr_seq*)_loop0_121_rule(p)) // (('if' disjunction))*
)
{
D(fprintf(stderr, "%*c+ for_if_clause[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "ASYNC 'for' star_targets 'in' ~ disjunction (('if' disjunction))*"));
@@ -15601,7 +15574,7 @@ for_if_clause_rule(Parser *p)
&&
(b = disjunction_rule(p)) // disjunction
&&
- (c = (asdl_expr_seq*)_loop0_121_rule(p)) // (('if' disjunction))*
+ (c = (asdl_expr_seq*)_loop0_122_rule(p)) // (('if' disjunction))*
)
{
D(fprintf(stderr, "%*c+ for_if_clause[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'for' star_targets 'in' ~ disjunction (('if' disjunction))*"));
@@ -15818,7 +15791,9 @@ arguments_rule(Parser *p)
return _res;
}
-// args: ','.(starred_expression | direct_named_expression !'=')+ [',' kwargs] | kwargs
+// args:
+// | ','.(starred_expression | (assigment_expression | expression !':=') !'=')+ [',' kwargs]
+// | kwargs
static expr_ty
args_rule(Parser *p)
{
@@ -15838,21 +15813,21 @@ args_rule(Parser *p)
UNUSED(_start_lineno); // Only used by EXTRA macro
int _start_col_offset = p->tokens[_mark]->col_offset;
UNUSED(_start_col_offset); // Only used by EXTRA macro
- { // ','.(starred_expression | direct_named_expression !'=')+ [',' kwargs]
+ { // ','.(starred_expression | (assigment_expression | expression !':=') !'=')+ [',' kwargs]
if (p->error_indicator) {
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> args[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "','.(starred_expression | direct_named_expression !'=')+ [',' kwargs]"));
+ D(fprintf(stderr, "%*c> args[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "','.(starred_expression | (assigment_expression | expression !':=') !'=')+ [',' kwargs]"));
asdl_expr_seq* a;
void *b;
if (
- (a = (asdl_expr_seq*)_gather_122_rule(p)) // ','.(starred_expression | direct_named_expression !'=')+
+ (a = (asdl_expr_seq*)_gather_123_rule(p)) // ','.(starred_expression | (assigment_expression | expression !':=') !'=')+
&&
- (b = _tmp_124_rule(p), 1) // [',' kwargs]
+ (b = _tmp_125_rule(p), 1) // [',' kwargs]
)
{
- D(fprintf(stderr, "%*c+ args[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "','.(starred_expression | direct_named_expression !'=')+ [',' kwargs]"));
+ D(fprintf(stderr, "%*c+ args[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "','.(starred_expression | (assigment_expression | expression !':=') !'=')+ [',' kwargs]"));
Token *_token = _PyPegen_get_last_nonnwhitespace_token(p);
if (_token == NULL) {
D(p->level--);
@@ -15872,7 +15847,7 @@ args_rule(Parser *p)
}
p->mark = _mark;
D(fprintf(stderr, "%*c%s args[%d-%d]: %s failed!\n", p->level, ' ',
- p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "','.(starred_expression | direct_named_expression !'=')+ [',' kwargs]"));
+ p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "','.(starred_expression | (assigment_expression | expression !':=') !'=')+ [',' kwargs]"));
}
{ // kwargs
if (p->error_indicator) {
@@ -15937,11 +15912,11 @@ kwargs_rule(Parser *p)
asdl_seq * a;
asdl_seq * b;
if (
- (a = _gather_125_rule(p)) // ','.kwarg_or_starred+
+ (a = _gather_126_rule(p)) // ','.kwarg_or_starred+
&&
(_literal = _PyPegen_expect_token(p, 12)) // token=','
&&
- (b = _gather_127_rule(p)) // ','.kwarg_or_double_starred+
+ (b = _gather_128_rule(p)) // ','.kwarg_or_double_starred+
)
{
D(fprintf(stderr, "%*c+ kwargs[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "','.kwarg_or_starred+ ',' ','.kwarg_or_double_starred+"));
@@ -15963,13 +15938,13 @@ kwargs_rule(Parser *p)
return NULL;
}
D(fprintf(stderr, "%*c> kwargs[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "','.kwarg_or_starred+"));
- asdl_seq * _gather_129_var;
+ asdl_seq * _gather_130_var;
if (
- (_gather_129_var = _gather_129_rule(p)) // ','.kwarg_or_starred+
+ (_gather_130_var = _gather_130_rule(p)) // ','.kwarg_or_starred+
)
{
D(fprintf(stderr, "%*c+ kwargs[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "','.kwarg_or_starred+"));
- _res = _gather_129_var;
+ _res = _gather_130_var;
goto done;
}
p->mark = _mark;
@@ -15982,13 +15957,13 @@ kwargs_rule(Parser *p)
return NULL;
}
D(fprintf(stderr, "%*c> kwargs[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "','.kwarg_or_double_starred+"));
- asdl_seq * _gather_131_var;
+ asdl_seq * _gather_132_var;
if (
- (_gather_131_var = _gather_131_rule(p)) // ','.kwarg_or_double_starred+
+ (_gather_132_var = _gather_132_rule(p)) // ','.kwarg_or_double_starred+
)
{
D(fprintf(stderr, "%*c+ kwargs[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "','.kwarg_or_double_starred+"));
- _res = _gather_131_var;
+ _res = _gather_132_var;
goto done;
}
p->mark = _mark;
@@ -16063,7 +16038,7 @@ starred_expression_rule(Parser *p)
return _res;
}
-// kwarg_or_starred: NAME '=' expression | starred_expression | invalid_kwarg
+// kwarg_or_starred: invalid_kwarg | NAME '=' expression | starred_expression
static KeywordOrStarred*
kwarg_or_starred_rule(Parser *p)
{
@@ -16083,6 +16058,25 @@ kwarg_or_starred_rule(Parser *p)
UNUSED(_start_lineno); // Only used by EXTRA macro
int _start_col_offset = p->tokens[_mark]->col_offset;
UNUSED(_start_col_offset); // Only used by EXTRA macro
+ if (p->call_invalid_rules) { // invalid_kwarg
+ if (p->error_indicator) {
+ D(p->level--);
+ return NULL;
+ }
+ D(fprintf(stderr, "%*c> kwarg_or_starred[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "invalid_kwarg"));
+ void *invalid_kwarg_var;
+ if (
+ (invalid_kwarg_var = invalid_kwarg_rule(p)) // invalid_kwarg
+ )
+ {
+ D(fprintf(stderr, "%*c+ kwarg_or_starred[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "invalid_kwarg"));
+ _res = invalid_kwarg_var;
+ goto done;
+ }
+ p->mark = _mark;
+ D(fprintf(stderr, "%*c%s kwarg_or_starred[%d-%d]: %s failed!\n", p->level, ' ',
+ p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "invalid_kwarg"));
+ }
{ // NAME '=' expression
if (p->error_indicator) {
D(p->level--);
@@ -16146,32 +16140,13 @@ kwarg_or_starred_rule(Parser *p)
D(fprintf(stderr, "%*c%s kwarg_or_starred[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "starred_expression"));
}
- if (p->call_invalid_rules) { // invalid_kwarg
- if (p->error_indicator) {
- D(p->level--);
- return NULL;
- }
- D(fprintf(stderr, "%*c> kwarg_or_starred[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "invalid_kwarg"));
- void *invalid_kwarg_var;
- if (
- (invalid_kwarg_var = invalid_kwarg_rule(p)) // invalid_kwarg
- )
- {
- D(fprintf(stderr, "%*c+ kwarg_or_starred[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "invalid_kwarg"));
- _res = invalid_kwarg_var;
- goto done;
- }
- p->mark = _mark;
- D(fprintf(stderr, "%*c%s kwarg_or_starred[%d-%d]: %s failed!\n", p->level, ' ',
- p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "invalid_kwarg"));
- }
_res = NULL;
done:
D(p->level--);
return _res;
}
-// kwarg_or_double_starred: NAME '=' expression | '**' expression | invalid_kwarg
+// kwarg_or_double_starred: invalid_kwarg | NAME '=' expression | '**' expression
static KeywordOrStarred*
kwarg_or_double_starred_rule(Parser *p)
{
@@ -16191,6 +16166,25 @@ kwarg_or_double_starred_rule(Parser *p)
UNUSED(_start_lineno); // Only used by EXTRA macro
int _start_col_offset = p->tokens[_mark]->col_offset;
UNUSED(_start_col_offset); // Only used by EXTRA macro
+ if (p->call_invalid_rules) { // invalid_kwarg
+ if (p->error_indicator) {
+ D(p->level--);
+ return NULL;
+ }
+ D(fprintf(stderr, "%*c> kwarg_or_double_starred[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "invalid_kwarg"));
+ void *invalid_kwarg_var;
+ if (
+ (invalid_kwarg_var = invalid_kwarg_rule(p)) // invalid_kwarg
+ )
+ {
+ D(fprintf(stderr, "%*c+ kwarg_or_double_starred[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "invalid_kwarg"));
+ _res = invalid_kwarg_var;
+ goto done;
+ }
+ p->mark = _mark;
+ D(fprintf(stderr, "%*c%s kwarg_or_double_starred[%d-%d]: %s failed!\n", p->level, ' ',
+ p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "invalid_kwarg"));
+ }
{ // NAME '=' expression
if (p->error_indicator) {
D(p->level--);
@@ -16266,25 +16260,6 @@ kwarg_or_double_starred_rule(Parser *p)
D(fprintf(stderr, "%*c%s kwarg_or_double_starred[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "'**' expression"));
}
- if (p->call_invalid_rules) { // invalid_kwarg
- if (p->error_indicator) {
- D(p->level--);
- return NULL;
- }
- D(fprintf(stderr, "%*c> kwarg_or_double_starred[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "invalid_kwarg"));
- void *invalid_kwarg_var;
- if (
- (invalid_kwarg_var = invalid_kwarg_rule(p)) // invalid_kwarg
- )
- {
- D(fprintf(stderr, "%*c+ kwarg_or_double_starred[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "invalid_kwarg"));
- _res = invalid_kwarg_var;
- goto done;
- }
- p->mark = _mark;
- D(fprintf(stderr, "%*c%s kwarg_or_double_starred[%d-%d]: %s failed!\n", p->level, ' ',
- p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "invalid_kwarg"));
- }
_res = NULL;
done:
D(p->level--);
@@ -16350,7 +16325,7 @@ star_targets_rule(Parser *p)
if (
(a = star_target_rule(p)) // star_target
&&
- (b = _loop0_133_rule(p)) // ((',' star_target))*
+ (b = _loop0_134_rule(p)) // ((',' star_target))*
&&
(_opt_var = _PyPegen_expect_token(p, 12), 1) // ','?
)
@@ -16404,7 +16379,7 @@ star_targets_list_seq_rule(Parser *p)
UNUSED(_opt_var); // Silence compiler warnings
asdl_expr_seq* a;
if (
- (a = (asdl_expr_seq*)_gather_134_rule(p)) // ','.star_target+
+ (a = (asdl_expr_seq*)_gather_135_rule(p)) // ','.star_target+
&&
(_opt_var = _PyPegen_expect_token(p, 12), 1) // ','?
)
@@ -16452,7 +16427,7 @@ star_targets_tuple_seq_rule(Parser *p)
if (
(a = star_target_rule(p)) // star_target
&&
- (b = _loop1_136_rule(p)) // ((',' star_target))+
+ (b = _loop1_137_rule(p)) // ((',' star_target))+
&&
(_opt_var = _PyPegen_expect_token(p, 12), 1) // ','?
)
@@ -16538,7 +16513,7 @@ star_target_rule(Parser *p)
if (
(_literal = _PyPegen_expect_token(p, 16)) // token='*'
&&
- (a = _tmp_137_rule(p)) // !'*' star_target
+ (a = _tmp_138_rule(p)) // !'*' star_target
)
{
D(fprintf(stderr, "%*c+ star_target[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'*' (!'*' star_target)"));
@@ -17113,7 +17088,7 @@ del_targets_rule(Parser *p)
UNUSED(_opt_var); // Silence compiler warnings
asdl_expr_seq* a;
if (
- (a = (asdl_expr_seq*)_gather_138_rule(p)) // ','.del_target+
+ (a = (asdl_expr_seq*)_gather_139_rule(p)) // ','.del_target+
&&
(_opt_var = _PyPegen_expect_token(p, 12), 1) // ','?
)
@@ -17454,7 +17429,7 @@ targets_rule(Parser *p)
UNUSED(_opt_var); // Silence compiler warnings
asdl_expr_seq* a;
if (
- (a = (asdl_expr_seq*)_gather_140_rule(p)) // ','.target+
+ (a = (asdl_expr_seq*)_gather_141_rule(p)) // ','.target+
&&
(_opt_var = _PyPegen_expect_token(p, 12), 1) // ','?
)
@@ -17642,7 +17617,9 @@ t_primary_rule(Parser *p)
return _res;
}
p->mark = _mark;
+ p->in_raw_rule++;
void *_raw = t_primary_raw(p);
+ p->in_raw_rule--;
if (p->error_indicator)
return NULL;
if (_raw == NULL || p->mark <= _resmark)
@@ -18107,6 +18084,7 @@ t_atom_rule(Parser *p)
// invalid_arguments:
// | args ',' '*'
// | expression for_if_clauses ',' [args | expression for_if_clauses]
+// | NAME '=' expression for_if_clauses
// | args for_if_clauses
// | args ',' expression for_if_clauses
// | args ',' args
@@ -18168,7 +18146,7 @@ invalid_arguments_rule(Parser *p)
&&
(_literal = _PyPegen_expect_token(p, 12)) // token=','
&&
- (_opt_var = _tmp_142_rule(p), 1) // [args | expression for_if_clauses]
+ (_opt_var = _tmp_143_rule(p), 1) // [args | expression for_if_clauses]
)
{
D(fprintf(stderr, "%*c+ invalid_arguments[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "expression for_if_clauses ',' [args | expression for_if_clauses]"));
@@ -18184,6 +18162,39 @@ invalid_arguments_rule(Parser *p)
D(fprintf(stderr, "%*c%s invalid_arguments[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "expression for_if_clauses ',' [args | expression for_if_clauses]"));
}
+ { // NAME '=' expression for_if_clauses
+ if (p->error_indicator) {
+ D(p->level--);
+ return NULL;
+ }
+ D(fprintf(stderr, "%*c> invalid_arguments[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "NAME '=' expression for_if_clauses"));
+ expr_ty a;
+ Token * b;
+ expr_ty expression_var;
+ asdl_comprehension_seq* for_if_clauses_var;
+ if (
+ (a = _PyPegen_name_token(p)) // NAME
+ &&
+ (b = _PyPegen_expect_token(p, 22)) // token='='
+ &&
+ (expression_var = expression_rule(p)) // expression
+ &&
+ (for_if_clauses_var = for_if_clauses_rule(p)) // for_if_clauses
+ )
+ {
+ D(fprintf(stderr, "%*c+ invalid_arguments[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "NAME '=' expression for_if_clauses"));
+ _res = RAISE_SYNTAX_ERROR_KNOWN_RANGE ( a , b , "invalid syntax. Maybe you meant '==' or ':=' instead of '='?" );
+ if (_res == NULL && PyErr_Occurred()) {
+ p->error_indicator = 1;
+ D(p->level--);
+ return NULL;
+ }
+ goto done;
+ }
+ p->mark = _mark;
+ D(fprintf(stderr, "%*c%s invalid_arguments[%d-%d]: %s failed!\n", p->level, ' ',
+ p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "NAME '=' expression for_if_clauses"));
+ }
{ // args for_if_clauses
if (p->error_indicator) {
D(p->level--);
@@ -18280,7 +18291,7 @@ invalid_arguments_rule(Parser *p)
return _res;
}
-// invalid_kwarg: expression '='
+// invalid_kwarg: NAME '=' expression for_if_clauses | !(NAME '=') expression '='
static void *
invalid_kwarg_rule(Parser *p)
{
@@ -18291,22 +18302,28 @@ invalid_kwarg_rule(Parser *p)
}
void * _res = NULL;
int _mark = p->mark;
- { // expression '='
+ { // NAME '=' expression for_if_clauses
if (p->error_indicator) {
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> invalid_kwarg[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "expression '='"));
+ D(fprintf(stderr, "%*c> invalid_kwarg[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "NAME '=' expression for_if_clauses"));
expr_ty a;
Token * b;
+ expr_ty expression_var;
+ asdl_comprehension_seq* for_if_clauses_var;
if (
- (a = expression_rule(p)) // expression
+ (a = _PyPegen_name_token(p)) // NAME
&&
(b = _PyPegen_expect_token(p, 22)) // token='='
+ &&
+ (expression_var = expression_rule(p)) // expression
+ &&
+ (for_if_clauses_var = for_if_clauses_rule(p)) // for_if_clauses
)
{
- D(fprintf(stderr, "%*c+ invalid_kwarg[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "expression '='"));
- _res = RAISE_SYNTAX_ERROR_KNOWN_RANGE ( a , b , "expression cannot contain assignment, perhaps you meant \"==\"?" );
+ D(fprintf(stderr, "%*c+ invalid_kwarg[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "NAME '=' expression for_if_clauses"));
+ _res = RAISE_SYNTAX_ERROR_KNOWN_RANGE ( a , b , "invalid syntax. Maybe you meant '==' or ':=' instead of '='?" );
if (_res == NULL && PyErr_Occurred()) {
p->error_indicator = 1;
D(p->level--);
@@ -18316,43 +18333,26 @@ invalid_kwarg_rule(Parser *p)
}
p->mark = _mark;
D(fprintf(stderr, "%*c%s invalid_kwarg[%d-%d]: %s failed!\n", p->level, ' ',
- p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "expression '='"));
- }
- _res = NULL;
- done:
- D(p->level--);
- return _res;
-}
-
-// invalid_expression: !(NAME STRING | SOFT_KEYWORD) disjunction expression
-static void *
-invalid_expression_rule(Parser *p)
-{
- D(p->level++);
- if (p->error_indicator) {
- D(p->level--);
- return NULL;
+ p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "NAME '=' expression for_if_clauses"));
}
- void * _res = NULL;
- int _mark = p->mark;
- { // !(NAME STRING | SOFT_KEYWORD) disjunction expression
+ { // !(NAME '=') expression '='
if (p->error_indicator) {
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> invalid_expression[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "!(NAME STRING | SOFT_KEYWORD) disjunction expression"));
+ D(fprintf(stderr, "%*c> invalid_kwarg[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "!(NAME '=') expression '='"));
expr_ty a;
- expr_ty b;
+ Token * b;
if (
- _PyPegen_lookahead(0, _tmp_143_rule, p)
+ _PyPegen_lookahead(0, _tmp_144_rule, p)
&&
- (a = disjunction_rule(p)) // disjunction
+ (a = expression_rule(p)) // expression
&&
- (b = expression_rule(p)) // expression
+ (b = _PyPegen_expect_token(p, 22)) // token='='
)
{
- D(fprintf(stderr, "%*c+ invalid_expression[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "!(NAME STRING | SOFT_KEYWORD) disjunction expression"));
- _res = RAISE_SYNTAX_ERROR_KNOWN_RANGE ( a , b , "invalid syntax. Perhaps you forgot a comma?" );
+ D(fprintf(stderr, "%*c+ invalid_kwarg[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "!(NAME '=') expression '='"));
+ _res = RAISE_SYNTAX_ERROR_KNOWN_RANGE ( a , b , "expression cannot contain assignment, perhaps you meant \"==\"?" );
if (_res == NULL && PyErr_Occurred()) {
p->error_indicator = 1;
D(p->level--);
@@ -18361,8 +18361,8 @@ invalid_expression_rule(Parser *p)
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s invalid_expression[%d-%d]: %s failed!\n", p->level, ' ',
- p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "!(NAME STRING | SOFT_KEYWORD) disjunction expression"));
+ D(fprintf(stderr, "%*c%s invalid_kwarg[%d-%d]: %s failed!\n", p->level, ' ',
+ p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "!(NAME '=') expression '='"));
}
_res = NULL;
done:
@@ -18370,19 +18370,178 @@ invalid_expression_rule(Parser *p)
return _res;
}
-// invalid_named_expression:
-// | expression ':=' expression
-// | NAME '=' bitwise_or !('=' | ':=' | ',')
-// | !(list | tuple | genexp | 'True' | 'None' | 'False') bitwise_or '=' bitwise_or !('=' | ':=' | ',')
-static void *
-invalid_named_expression_rule(Parser *p)
+// expression_without_invalid:
+// | disjunction 'if' disjunction 'else' expression
+// | disjunction
+// | lambdef
+static expr_ty
+expression_without_invalid_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
D(p->level--);
return NULL;
}
- void * _res = NULL;
+ expr_ty _res = NULL;
+ int _mark = p->mark;
+ if (p->mark == p->fill && _PyPegen_fill_token(p) < 0) {
+ p->error_indicator = 1;
+ D(p->level--);
+ return NULL;
+ }
+ int _start_lineno = p->tokens[_mark]->lineno;
+ UNUSED(_start_lineno); // Only used by EXTRA macro
+ int _start_col_offset = p->tokens[_mark]->col_offset;
+ UNUSED(_start_col_offset); // Only used by EXTRA macro
+ { // disjunction 'if' disjunction 'else' expression
+ if (p->error_indicator) {
+ D(p->level--);
+ return NULL;
+ }
+ D(fprintf(stderr, "%*c> expression_without_invalid[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "disjunction 'if' disjunction 'else' expression"));
+ Token * _keyword;
+ Token * _keyword_1;
+ expr_ty a;
+ expr_ty b;
+ expr_ty c;
+ if (
+ (a = disjunction_rule(p)) // disjunction
+ &&
+ (_keyword = _PyPegen_expect_token(p, 510)) // token='if'
+ &&
+ (b = disjunction_rule(p)) // disjunction
+ &&
+ (_keyword_1 = _PyPegen_expect_token(p, 516)) // token='else'
+ &&
+ (c = expression_rule(p)) // expression
+ )
+ {
+ D(fprintf(stderr, "%*c+ expression_without_invalid[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "disjunction 'if' disjunction 'else' expression"));
+ Token *_token = _PyPegen_get_last_nonnwhitespace_token(p);
+ if (_token == NULL) {
+ D(p->level--);
+ return NULL;
+ }
+ int _end_lineno = _token->end_lineno;
+ UNUSED(_end_lineno); // Only used by EXTRA macro
+ int _end_col_offset = _token->end_col_offset;
+ UNUSED(_end_col_offset); // Only used by EXTRA macro
+ _res = _PyAST_IfExp ( b , a , c , EXTRA );
+ if (_res == NULL && PyErr_Occurred()) {
+ p->error_indicator = 1;
+ D(p->level--);
+ return NULL;
+ }
+ goto done;
+ }
+ p->mark = _mark;
+ D(fprintf(stderr, "%*c%s expression_without_invalid[%d-%d]: %s failed!\n", p->level, ' ',
+ p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "disjunction 'if' disjunction 'else' expression"));
+ }
+ { // disjunction
+ if (p->error_indicator) {
+ D(p->level--);
+ return NULL;
+ }
+ D(fprintf(stderr, "%*c> expression_without_invalid[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "disjunction"));
+ expr_ty disjunction_var;
+ if (
+ (disjunction_var = disjunction_rule(p)) // disjunction
+ )
+ {
+ D(fprintf(stderr, "%*c+ expression_without_invalid[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "disjunction"));
+ _res = disjunction_var;
+ goto done;
+ }
+ p->mark = _mark;
+ D(fprintf(stderr, "%*c%s expression_without_invalid[%d-%d]: %s failed!\n", p->level, ' ',
+ p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "disjunction"));
+ }
+ { // lambdef
+ if (p->error_indicator) {
+ D(p->level--);
+ return NULL;
+ }
+ D(fprintf(stderr, "%*c> expression_without_invalid[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "lambdef"));
+ expr_ty lambdef_var;
+ if (
+ (lambdef_var = lambdef_rule(p)) // lambdef
+ )
+ {
+ D(fprintf(stderr, "%*c+ expression_without_invalid[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "lambdef"));
+ _res = lambdef_var;
+ goto done;
+ }
+ p->mark = _mark;
+ D(fprintf(stderr, "%*c%s expression_without_invalid[%d-%d]: %s failed!\n", p->level, ' ',
+ p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "lambdef"));
+ }
+ _res = NULL;
+ done:
+ D(p->level--);
+ return _res;
+}
+
+// invalid_expression:
+// | !(NAME STRING | SOFT_KEYWORD) disjunction expression_without_invalid
+static void *
+invalid_expression_rule(Parser *p)
+{
+ D(p->level++);
+ if (p->error_indicator) {
+ D(p->level--);
+ return NULL;
+ }
+ void * _res = NULL;
+ int _mark = p->mark;
+ { // !(NAME STRING | SOFT_KEYWORD) disjunction expression_without_invalid
+ if (p->error_indicator) {
+ D(p->level--);
+ return NULL;
+ }
+ D(fprintf(stderr, "%*c> invalid_expression[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "!(NAME STRING | SOFT_KEYWORD) disjunction expression_without_invalid"));
+ expr_ty a;
+ expr_ty b;
+ if (
+ _PyPegen_lookahead(0, _tmp_145_rule, p)
+ &&
+ (a = disjunction_rule(p)) // disjunction
+ &&
+ (b = expression_without_invalid_rule(p)) // expression_without_invalid
+ )
+ {
+ D(fprintf(stderr, "%*c+ invalid_expression[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "!(NAME STRING | SOFT_KEYWORD) disjunction expression_without_invalid"));
+ _res = RAISE_SYNTAX_ERROR_KNOWN_RANGE ( a , b , "invalid syntax. Perhaps you forgot a comma?" );
+ if (_res == NULL && PyErr_Occurred()) {
+ p->error_indicator = 1;
+ D(p->level--);
+ return NULL;
+ }
+ goto done;
+ }
+ p->mark = _mark;
+ D(fprintf(stderr, "%*c%s invalid_expression[%d-%d]: %s failed!\n", p->level, ' ',
+ p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "!(NAME STRING | SOFT_KEYWORD) disjunction expression_without_invalid"));
+ }
+ _res = NULL;
+ done:
+ D(p->level--);
+ return _res;
+}
+
+// invalid_named_expression:
+// | expression ':=' expression
+// | NAME '=' bitwise_or !('=' | ':=')
+// | !(list | tuple | genexp | 'True' | 'None' | 'False') bitwise_or '=' bitwise_or !('=' | ':=')
+static void *
+invalid_named_expression_rule(Parser *p)
+{
+ D(p->level++);
+ if (p->error_indicator) {
+ D(p->level--);
+ return NULL;
+ }
+ void * _res = NULL;
int _mark = p->mark;
{ // expression ':=' expression
if (p->error_indicator) {
@@ -18414,12 +18573,12 @@ invalid_named_expression_rule(Parser *p)
D(fprintf(stderr, "%*c%s invalid_named_expression[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "expression ':=' expression"));
}
- { // NAME '=' bitwise_or !('=' | ':=' | ',')
+ { // NAME '=' bitwise_or !('=' | ':=')
if (p->error_indicator) {
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> invalid_named_expression[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "NAME '=' bitwise_or !('=' | ':=' | ',')"));
+ D(fprintf(stderr, "%*c> invalid_named_expression[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "NAME '=' bitwise_or !('=' | ':=')"));
Token * _literal;
expr_ty a;
expr_ty b;
@@ -18430,11 +18589,11 @@ invalid_named_expression_rule(Parser *p)
&&
(b = bitwise_or_rule(p)) // bitwise_or
&&
- _PyPegen_lookahead(0, _tmp_144_rule, p)
+ _PyPegen_lookahead(0, _tmp_146_rule, p)
)
{
- D(fprintf(stderr, "%*c+ invalid_named_expression[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "NAME '=' bitwise_or !('=' | ':=' | ',')"));
- _res = RAISE_SYNTAX_ERROR_KNOWN_RANGE ( a , b , "invalid syntax. Maybe you meant '==' or ':=' instead of '='?" );
+ D(fprintf(stderr, "%*c+ invalid_named_expression[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "NAME '=' bitwise_or !('=' | ':=')"));
+ _res = p -> in_raw_rule ? NULL : RAISE_SYNTAX_ERROR_KNOWN_RANGE ( a , b , "invalid syntax. Maybe you meant '==' or ':=' instead of '='?" );
if (_res == NULL && PyErr_Occurred()) {
p->error_indicator = 1;
D(p->level--);
@@ -18444,19 +18603,19 @@ invalid_named_expression_rule(Parser *p)
}
p->mark = _mark;
D(fprintf(stderr, "%*c%s invalid_named_expression[%d-%d]: %s failed!\n", p->level, ' ',
- p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "NAME '=' bitwise_or !('=' | ':=' | ',')"));
+ p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "NAME '=' bitwise_or !('=' | ':=')"));
}
- { // !(list | tuple | genexp | 'True' | 'None' | 'False') bitwise_or '=' bitwise_or !('=' | ':=' | ',')
+ { // !(list | tuple | genexp | 'True' | 'None' | 'False') bitwise_or '=' bitwise_or !('=' | ':=')
if (p->error_indicator) {
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> invalid_named_expression[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "!(list | tuple | genexp | 'True' | 'None' | 'False') bitwise_or '=' bitwise_or !('=' | ':=' | ',')"));
+ D(fprintf(stderr, "%*c> invalid_named_expression[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "!(list | tuple | genexp | 'True' | 'None' | 'False') bitwise_or '=' bitwise_or !('=' | ':=')"));
expr_ty a;
Token * b;
expr_ty bitwise_or_var;
if (
- _PyPegen_lookahead(0, _tmp_145_rule, p)
+ _PyPegen_lookahead(0, _tmp_147_rule, p)
&&
(a = bitwise_or_rule(p)) // bitwise_or
&&
@@ -18464,11 +18623,11 @@ invalid_named_expression_rule(Parser *p)
&&
(bitwise_or_var = bitwise_or_rule(p)) // bitwise_or
&&
- _PyPegen_lookahead(0, _tmp_146_rule, p)
+ _PyPegen_lookahead(0, _tmp_148_rule, p)
)
{
- D(fprintf(stderr, "%*c+ invalid_named_expression[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "!(list | tuple | genexp | 'True' | 'None' | 'False') bitwise_or '=' bitwise_or !('=' | ':=' | ',')"));
- _res = RAISE_SYNTAX_ERROR_KNOWN_LOCATION ( a , "cannot assign to %s here. Maybe you meant '==' instead of '='?" , _PyPegen_get_expr_name ( a ) );
+ D(fprintf(stderr, "%*c+ invalid_named_expression[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "!(list | tuple | genexp | 'True' | 'None' | 'False') bitwise_or '=' bitwise_or !('=' | ':=')"));
+ _res = p -> in_raw_rule ? NULL : RAISE_SYNTAX_ERROR_KNOWN_LOCATION ( a , "cannot assign to %s here. Maybe you meant '==' instead of '='?" , _PyPegen_get_expr_name ( a ) );
if (_res == NULL && PyErr_Occurred()) {
p->error_indicator = 1;
D(p->level--);
@@ -18478,7 +18637,7 @@ invalid_named_expression_rule(Parser *p)
}
p->mark = _mark;
D(fprintf(stderr, "%*c%s invalid_named_expression[%d-%d]: %s failed!\n", p->level, ' ',
- p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "!(list | tuple | genexp | 'True' | 'None' | 'False') bitwise_or '=' bitwise_or !('=' | ':=' | ',')"));
+ p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "!(list | tuple | genexp | 'True' | 'None' | 'False') bitwise_or '=' bitwise_or !('=' | ':=')"));
}
_res = NULL;
done:
@@ -18541,7 +18700,7 @@ invalid_assignment_rule(Parser *p)
D(fprintf(stderr, "%*c> invalid_assignment[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "star_named_expression ',' star_named_expressions* ':' expression"));
Token * _literal;
Token * _literal_1;
- asdl_seq * _loop0_147_var;
+ asdl_seq * _loop0_149_var;
expr_ty a;
expr_ty expression_var;
if (
@@ -18549,7 +18708,7 @@ invalid_assignment_rule(Parser *p)
&&
(_literal = _PyPegen_expect_token(p, 12)) // token=','
&&
- (_loop0_147_var = _loop0_147_rule(p)) // star_named_expressions*
+ (_loop0_149_var = _loop0_149_rule(p)) // star_named_expressions*
&&
(_literal_1 = _PyPegen_expect_token(p, 11)) // token=':'
&&
@@ -18606,10 +18765,10 @@ invalid_assignment_rule(Parser *p)
}
D(fprintf(stderr, "%*c> invalid_assignment[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "((star_targets '='))* star_expressions '='"));
Token * _literal;
- asdl_seq * _loop0_148_var;
+ asdl_seq * _loop0_150_var;
expr_ty a;
if (
- (_loop0_148_var = _loop0_148_rule(p)) // ((star_targets '='))*
+ (_loop0_150_var = _loop0_150_rule(p)) // ((star_targets '='))*
&&
(a = star_expressions_rule(p)) // star_expressions
&&
@@ -18636,10 +18795,10 @@ invalid_assignment_rule(Parser *p)
}
D(fprintf(stderr, "%*c> invalid_assignment[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "((star_targets '='))* yield_expr '='"));
Token * _literal;
- asdl_seq * _loop0_149_var;
+ asdl_seq * _loop0_151_var;
expr_ty a;
if (
- (_loop0_149_var = _loop0_149_rule(p)) // ((star_targets '='))*
+ (_loop0_151_var = _loop0_151_rule(p)) // ((star_targets '='))*
&&
(a = yield_expr_rule(p)) // yield_expr
&&
@@ -18665,7 +18824,7 @@ invalid_assignment_rule(Parser *p)
return NULL;
}
D(fprintf(stderr, "%*c> invalid_assignment[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "star_expressions augassign (yield_expr | star_expressions)"));
- void *_tmp_150_var;
+ void *_tmp_152_var;
expr_ty a;
AugOperator* augassign_var;
if (
@@ -18673,7 +18832,7 @@ invalid_assignment_rule(Parser *p)
&&
(augassign_var = augassign_rule(p)) // augassign
&&
- (_tmp_150_var = _tmp_150_rule(p)) // yield_expr | star_expressions
+ (_tmp_152_var = _tmp_152_rule(p)) // yield_expr | star_expressions
)
{
D(fprintf(stderr, "%*c+ invalid_assignment[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "star_expressions augassign (yield_expr | star_expressions)"));
@@ -18932,11 +19091,11 @@ invalid_comprehension_rule(Parser *p)
return NULL;
}
D(fprintf(stderr, "%*c> invalid_comprehension[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "('[' | '(' | '{') starred_expression for_if_clauses"));
- void *_tmp_151_var;
+ void *_tmp_153_var;
expr_ty a;
asdl_comprehension_seq* for_if_clauses_var;
if (
- (_tmp_151_var = _tmp_151_rule(p)) // '[' | '(' | '{'
+ (_tmp_153_var = _tmp_153_rule(p)) // '[' | '(' | '{'
&&
(a = starred_expression_rule(p)) // starred_expression
&&
@@ -18963,12 +19122,12 @@ invalid_comprehension_rule(Parser *p)
}
D(fprintf(stderr, "%*c> invalid_comprehension[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "('[' | '{') star_named_expression ',' star_named_expressions for_if_clauses"));
Token * _literal;
- void *_tmp_152_var;
+ void *_tmp_154_var;
expr_ty a;
asdl_expr_seq* b;
asdl_comprehension_seq* for_if_clauses_var;
if (
- (_tmp_152_var = _tmp_152_rule(p)) // '[' | '{'
+ (_tmp_154_var = _tmp_154_rule(p)) // '[' | '{'
&&
(a = star_named_expression_rule(p)) // star_named_expression
&&
@@ -18998,12 +19157,12 @@ invalid_comprehension_rule(Parser *p)
return NULL;
}
D(fprintf(stderr, "%*c> invalid_comprehension[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "('[' | '{') star_named_expression ',' for_if_clauses"));
- void *_tmp_153_var;
+ void *_tmp_155_var;
expr_ty a;
Token * b;
asdl_comprehension_seq* for_if_clauses_var;
if (
- (_tmp_153_var = _tmp_153_rule(p)) // '[' | '{'
+ (_tmp_155_var = _tmp_155_rule(p)) // '[' | '{'
&&
(a = star_named_expression_rule(p)) // star_named_expression
&&
@@ -19101,11 +19260,11 @@ invalid_parameters_rule(Parser *p)
return NULL;
}
D(fprintf(stderr, "%*c> invalid_parameters[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "param_no_default* invalid_parameters_helper param_no_default"));
- asdl_seq * _loop0_154_var;
+ asdl_seq * _loop0_156_var;
arg_ty a;
void *invalid_parameters_helper_var;
if (
- (_loop0_154_var = _loop0_154_rule(p)) // param_no_default*
+ (_loop0_156_var = _loop0_156_rule(p)) // param_no_default*
&&
(invalid_parameters_helper_var = invalid_parameters_helper_rule(p)) // invalid_parameters_helper
&&
@@ -19172,13 +19331,13 @@ invalid_parameters_helper_rule(Parser *p)
return NULL;
}
D(fprintf(stderr, "%*c> invalid_parameters_helper[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "param_with_default+"));
- asdl_seq * _loop1_155_var;
+ asdl_seq * _loop1_157_var;
if (
- (_loop1_155_var = _loop1_155_rule(p)) // param_with_default+
+ (_loop1_157_var = _loop1_157_rule(p)) // param_with_default+
)
{
D(fprintf(stderr, "%*c+ invalid_parameters_helper[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "param_with_default+"));
- _res = _loop1_155_var;
+ _res = _loop1_157_var;
goto done;
}
p->mark = _mark;
@@ -19209,11 +19368,11 @@ invalid_lambda_parameters_rule(Parser *p)
return NULL;
}
D(fprintf(stderr, "%*c> invalid_lambda_parameters[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "lambda_param_no_default* invalid_lambda_parameters_helper lambda_param_no_default"));
- asdl_seq * _loop0_156_var;
+ asdl_seq * _loop0_158_var;
arg_ty a;
void *invalid_lambda_parameters_helper_var;
if (
- (_loop0_156_var = _loop0_156_rule(p)) // lambda_param_no_default*
+ (_loop0_158_var = _loop0_158_rule(p)) // lambda_param_no_default*
&&
(invalid_lambda_parameters_helper_var = invalid_lambda_parameters_helper_rule(p)) // invalid_lambda_parameters_helper
&&
@@ -19282,13 +19441,13 @@ invalid_lambda_parameters_helper_rule(Parser *p)
return NULL;
}
D(fprintf(stderr, "%*c> invalid_lambda_parameters_helper[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "lambda_param_with_default+"));
- asdl_seq * _loop1_157_var;
+ asdl_seq * _loop1_159_var;
if (
- (_loop1_157_var = _loop1_157_rule(p)) // lambda_param_with_default+
+ (_loop1_159_var = _loop1_159_rule(p)) // lambda_param_with_default+
)
{
D(fprintf(stderr, "%*c+ invalid_lambda_parameters_helper[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "lambda_param_with_default+"));
- _res = _loop1_157_var;
+ _res = _loop1_159_var;
goto done;
}
p->mark = _mark;
@@ -19318,12 +19477,12 @@ invalid_star_etc_rule(Parser *p)
return NULL;
}
D(fprintf(stderr, "%*c> invalid_star_etc[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'*' (')' | ',' (')' | '**'))"));
- void *_tmp_158_var;
+ void *_tmp_160_var;
Token * a;
if (
(a = _PyPegen_expect_token(p, 16)) // token='*'
&&
- (_tmp_158_var = _tmp_158_rule(p)) // ')' | ',' (')' | '**')
+ (_tmp_160_var = _tmp_160_rule(p)) // ')' | ',' (')' | '**')
)
{
D(fprintf(stderr, "%*c+ invalid_star_etc[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'*' (')' | ',' (')' | '**'))"));
@@ -19393,11 +19552,11 @@ invalid_lambda_star_etc_rule(Parser *p)
}
D(fprintf(stderr, "%*c> invalid_lambda_star_etc[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'*' (':' | ',' (':' | '**'))"));
Token * _literal;
- void *_tmp_159_var;
+ void *_tmp_161_var;
if (
(_literal = _PyPegen_expect_token(p, 16)) // token='*'
&&
- (_tmp_159_var = _tmp_159_rule(p)) // ':' | ',' (':' | '**')
+ (_tmp_161_var = _tmp_161_rule(p)) // ':' | ',' (':' | '**')
)
{
D(fprintf(stderr, "%*c+ invalid_lambda_star_etc[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'*' (':' | ',' (':' | '**'))"));
@@ -19499,7 +19658,7 @@ invalid_with_item_rule(Parser *p)
&&
(a = expression_rule(p)) // expression
&&
- _PyPegen_lookahead(1, _tmp_160_rule, p)
+ _PyPegen_lookahead(1, _tmp_162_rule, p)
)
{
D(fprintf(stderr, "%*c+ invalid_with_item[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "expression 'as' expression &(',' | ')' | ':')"));
@@ -19712,7 +19871,7 @@ invalid_with_stmt_rule(Parser *p)
return NULL;
}
D(fprintf(stderr, "%*c> invalid_with_stmt[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "ASYNC? 'with' ','.(expression ['as' star_target])+ &&':'"));
- asdl_seq * _gather_161_var;
+ asdl_seq * _gather_163_var;
Token * _keyword;
Token * _literal;
void *_opt_var;
@@ -19722,13 +19881,13 @@ invalid_with_stmt_rule(Parser *p)
&&
(_keyword = _PyPegen_expect_token(p, 519)) // token='with'
&&
- (_gather_161_var = _gather_161_rule(p)) // ','.(expression ['as' star_target])+
+ (_gather_163_var = _gather_163_rule(p)) // ','.(expression ['as' star_target])+
&&
(_literal = _PyPegen_expect_forced_token(p, 11, ":")) // forced_token=':'
)
{
D(fprintf(stderr, "%*c+ invalid_with_stmt[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "ASYNC? 'with' ','.(expression ['as' star_target])+ &&':'"));
- _res = _PyPegen_dummy_name(p, _opt_var, _keyword, _gather_161_var, _literal);
+ _res = _PyPegen_dummy_name(p, _opt_var, _keyword, _gather_163_var, _literal);
goto done;
}
p->mark = _mark;
@@ -19741,7 +19900,7 @@ invalid_with_stmt_rule(Parser *p)
return NULL;
}
D(fprintf(stderr, "%*c> invalid_with_stmt[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "ASYNC? 'with' '(' ','.(expressions ['as' star_target])+ ','? ')' &&':'"));
- asdl_seq * _gather_163_var;
+ asdl_seq * _gather_165_var;
Token * _keyword;
Token * _literal;
Token * _literal_1;
@@ -19757,7 +19916,7 @@ invalid_with_stmt_rule(Parser *p)
&&
(_literal = _PyPegen_expect_token(p, 7)) // token='('
&&
- (_gather_163_var = _gather_163_rule(p)) // ','.(expressions ['as' star_target])+
+ (_gather_165_var = _gather_165_rule(p)) // ','.(expressions ['as' star_target])+
&&
(_opt_var_1 = _PyPegen_expect_token(p, 12), 1) // ','?
&&
@@ -19767,7 +19926,7 @@ invalid_with_stmt_rule(Parser *p)
)
{
D(fprintf(stderr, "%*c+ invalid_with_stmt[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "ASYNC? 'with' '(' ','.(expressions ['as' star_target])+ ','? ')' &&':'"));
- _res = _PyPegen_dummy_name(p, _opt_var, _keyword, _literal, _gather_163_var, _opt_var_1, _literal_1, _literal_2);
+ _res = _PyPegen_dummy_name(p, _opt_var, _keyword, _literal, _gather_165_var, _opt_var_1, _literal_1, _literal_2);
goto done;
}
p->mark = _mark;
@@ -19799,7 +19958,7 @@ invalid_with_stmt_indent_rule(Parser *p)
return NULL;
}
D(fprintf(stderr, "%*c> invalid_with_stmt_indent[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "ASYNC? 'with' ','.(expression ['as' star_target])+ ':' NEWLINE !INDENT"));
- asdl_seq * _gather_165_var;
+ asdl_seq * _gather_167_var;
Token * _literal;
void *_opt_var;
UNUSED(_opt_var); // Silence compiler warnings
@@ -19810,7 +19969,7 @@ invalid_with_stmt_indent_rule(Parser *p)
&&
(a = _PyPegen_expect_token(p, 519)) // token='with'
&&
- (_gather_165_var = _gather_165_rule(p)) // ','.(expression ['as' star_target])+
+ (_gather_167_var = _gather_167_rule(p)) // ','.(expression ['as' star_target])+
&&
(_literal = _PyPegen_expect_token(p, 11)) // token=':'
&&
@@ -19838,7 +19997,7 @@ invalid_with_stmt_indent_rule(Parser *p)
return NULL;
}
D(fprintf(stderr, "%*c> invalid_with_stmt_indent[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "ASYNC? 'with' '(' ','.(expressions ['as' star_target])+ ','? ')' ':' NEWLINE !INDENT"));
- asdl_seq * _gather_167_var;
+ asdl_seq * _gather_169_var;
Token * _literal;
Token * _literal_1;
Token * _literal_2;
@@ -19855,7 +20014,7 @@ invalid_with_stmt_indent_rule(Parser *p)
&&
(_literal = _PyPegen_expect_token(p, 7)) // token='('
&&
- (_gather_167_var = _gather_167_rule(p)) // ','.(expressions ['as' star_target])+
+ (_gather_169_var = _gather_169_rule(p)) // ','.(expressions ['as' star_target])+
&&
(_opt_var_1 = _PyPegen_expect_token(p, 12), 1) // ','?
&&
@@ -19887,7 +20046,7 @@ invalid_with_stmt_indent_rule(Parser *p)
return _res;
}
-// invalid_try_stmt: 'try' ':' NEWLINE !INDENT
+// invalid_try_stmt: 'try' ':' NEWLINE !INDENT | 'try' ':' block !('except' | 'finally')
static void *
invalid_try_stmt_rule(Parser *p)
{
@@ -19930,6 +20089,38 @@ invalid_try_stmt_rule(Parser *p)
D(fprintf(stderr, "%*c%s invalid_try_stmt[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "'try' ':' NEWLINE !INDENT"));
}
+ { // 'try' ':' block !('except' | 'finally')
+ if (p->error_indicator) {
+ D(p->level--);
+ return NULL;
+ }
+ D(fprintf(stderr, "%*c> invalid_try_stmt[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'try' ':' block !('except' | 'finally')"));
+ Token * _keyword;
+ Token * _literal;
+ asdl_stmt_seq* block_var;
+ if (
+ (_keyword = _PyPegen_expect_token(p, 511)) // token='try'
+ &&
+ (_literal = _PyPegen_expect_token(p, 11)) // token=':'
+ &&
+ (block_var = block_rule(p)) // block
+ &&
+ _PyPegen_lookahead(0, _tmp_171_rule, p)
+ )
+ {
+ D(fprintf(stderr, "%*c+ invalid_try_stmt[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'try' ':' block !('except' | 'finally')"));
+ _res = RAISE_SYNTAX_ERROR ( "expected 'except' or 'finally' block" );
+ if (_res == NULL && PyErr_Occurred()) {
+ p->error_indicator = 1;
+ D(p->level--);
+ return NULL;
+ }
+ goto done;
+ }
+ p->mark = _mark;
+ D(fprintf(stderr, "%*c%s invalid_try_stmt[%d-%d]: %s failed!\n", p->level, ' ',
+ p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "'try' ':' block !('except' | 'finally')"));
+ }
_res = NULL;
done:
D(p->level--);
@@ -19972,7 +20163,7 @@ invalid_except_stmt_rule(Parser *p)
&&
(expressions_var = expressions_rule(p)) // expressions
&&
- (_opt_var = _tmp_169_rule(p), 1) // ['as' NAME]
+ (_opt_var = _tmp_172_rule(p), 1) // ['as' NAME]
&&
(_literal_1 = _PyPegen_expect_token(p, 11)) // token=':'
)
@@ -20006,7 +20197,7 @@ invalid_except_stmt_rule(Parser *p)
&&
(expression_var = expression_rule(p)) // expression
&&
- (_opt_var = _tmp_170_rule(p), 1) // ['as' NAME]
+ (_opt_var = _tmp_173_rule(p), 1) // ['as' NAME]
&&
(newline_var = _PyPegen_expect_token(p, NEWLINE)) // token='NEWLINE'
)
@@ -20136,7 +20327,7 @@ invalid_except_stmt_indent_rule(Parser *p)
&&
(expression_var = expression_rule(p)) // expression
&&
- (_opt_var = _tmp_171_rule(p), 1) // ['as' NAME]
+ (_opt_var = _tmp_174_rule(p), 1) // ['as' NAME]
&&
(_literal = _PyPegen_expect_token(p, 11)) // token=':'
&&
@@ -20776,7 +20967,7 @@ invalid_def_raw_rule(Parser *p)
&&
(_literal_1 = _PyPegen_expect_token(p, 8)) // token=')'
&&
- (_opt_var_2 = _tmp_172_rule(p), 1) // ['->' expression]
+ (_opt_var_2 = _tmp_175_rule(p), 1) // ['->' expression]
&&
(_literal_2 = _PyPegen_expect_token(p, 11)) // token=':'
&&
@@ -20832,7 +21023,7 @@ invalid_class_def_raw_rule(Parser *p)
&&
(name_var = _PyPegen_name_token(p)) // NAME
&&
- (_opt_var = _tmp_173_rule(p), 1) // ['(' arguments? ')']
+ (_opt_var = _tmp_176_rule(p), 1) // ['(' arguments? ')']
&&
(_literal = _PyPegen_expect_token(p, 11)) // token=':'
&&
@@ -20880,11 +21071,11 @@ invalid_double_starred_kvpairs_rule(Parser *p)
return NULL;
}
D(fprintf(stderr, "%*c> invalid_double_starred_kvpairs[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "','.double_starred_kvpair+ ',' invalid_kvpair"));
- asdl_seq * _gather_174_var;
+ asdl_seq * _gather_177_var;
Token * _literal;
void *invalid_kvpair_var;
if (
- (_gather_174_var = _gather_174_rule(p)) // ','.double_starred_kvpair+
+ (_gather_177_var = _gather_177_rule(p)) // ','.double_starred_kvpair+
&&
(_literal = _PyPegen_expect_token(p, 12)) // token=','
&&
@@ -20892,7 +21083,7 @@ invalid_double_starred_kvpairs_rule(Parser *p)
)
{
D(fprintf(stderr, "%*c+ invalid_double_starred_kvpairs[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "','.double_starred_kvpair+ ',' invalid_kvpair"));
- _res = _PyPegen_dummy_name(p, _gather_174_var, _literal, invalid_kvpair_var);
+ _res = _PyPegen_dummy_name(p, _gather_177_var, _literal, invalid_kvpair_var);
goto done;
}
p->mark = _mark;
@@ -20945,7 +21136,7 @@ invalid_double_starred_kvpairs_rule(Parser *p)
&&
(a = _PyPegen_expect_token(p, 11)) // token=':'
&&
- _PyPegen_lookahead(1, _tmp_176_rule, p)
+ _PyPegen_lookahead(1, _tmp_179_rule, p)
)
{
D(fprintf(stderr, "%*c+ invalid_double_starred_kvpairs[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "expression ':' &('}' | ',')"));
@@ -22318,12 +22509,12 @@ _loop1_22_rule(Parser *p)
return NULL;
}
D(fprintf(stderr, "%*c> _loop1_22[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "(star_targets '=')"));
- void *_tmp_177_var;
+ void *_tmp_180_var;
while (
- (_tmp_177_var = _tmp_177_rule(p)) // star_targets '='
+ (_tmp_180_var = _tmp_180_rule(p)) // star_targets '='
)
{
- _res = _tmp_177_var;
+ _res = _tmp_180_var;
if (_n == _children_capacity) {
_children_capacity *= 2;
void **_new_children = PyMem_Realloc(_children, _children_capacity*sizeof(void *));
@@ -22826,12 +23017,12 @@ _loop0_31_rule(Parser *p)
return NULL;
}
D(fprintf(stderr, "%*c> _loop0_31[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "('.' | '...')"));
- void *_tmp_178_var;
+ void *_tmp_181_var;
while (
- (_tmp_178_var = _tmp_178_rule(p)) // '.' | '...'
+ (_tmp_181_var = _tmp_181_rule(p)) // '.' | '...'
)
{
- _res = _tmp_178_var;
+ _res = _tmp_181_var;
if (_n == _children_capacity) {
_children_capacity *= 2;
void **_new_children = PyMem_Realloc(_children, _children_capacity*sizeof(void *));
@@ -22892,12 +23083,12 @@ _loop1_32_rule(Parser *p)
return NULL;
}
D(fprintf(stderr, "%*c> _loop1_32[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "('.' | '...')"));
- void *_tmp_179_var;
+ void *_tmp_182_var;
while (
- (_tmp_179_var = _tmp_179_rule(p)) // '.' | '...'
+ (_tmp_182_var = _tmp_182_rule(p)) // '.' | '...'
)
{
- _res = _tmp_179_var;
+ _res = _tmp_182_var;
if (_n == _children_capacity) {
_children_capacity *= 2;
void **_new_children = PyMem_Realloc(_children, _children_capacity*sizeof(void *));
@@ -26008,12 +26199,12 @@ _loop1_84_rule(Parser *p)
return NULL;
}
D(fprintf(stderr, "%*c> _loop1_84[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "('@' named_expression NEWLINE)"));
- void *_tmp_180_var;
+ void *_tmp_183_var;
while (
- (_tmp_180_var = _tmp_180_rule(p)) // '@' named_expression NEWLINE
+ (_tmp_183_var = _tmp_183_rule(p)) // '@' named_expression NEWLINE
)
{
- _res = _tmp_180_var;
+ _res = _tmp_183_var;
if (_n == _children_capacity) {
_children_capacity *= 2;
void **_new_children = PyMem_Realloc(_children, _children_capacity*sizeof(void *));
@@ -26126,12 +26317,12 @@ _loop1_86_rule(Parser *p)
return NULL;
}
D(fprintf(stderr, "%*c> _loop1_86[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "(',' star_expression)"));
- void *_tmp_181_var;
+ void *_tmp_184_var;
while (
- (_tmp_181_var = _tmp_181_rule(p)) // ',' star_expression
+ (_tmp_184_var = _tmp_184_rule(p)) // ',' star_expression
)
{
- _res = _tmp_181_var;
+ _res = _tmp_184_var;
if (_n == _children_capacity) {
_children_capacity *= 2;
void **_new_children = PyMem_Realloc(_children, _children_capacity*sizeof(void *));
@@ -26311,12 +26502,12 @@ _loop1_89_rule(Parser *p)
return NULL;
}
D(fprintf(stderr, "%*c> _loop1_89[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "(',' expression)"));
- void *_tmp_182_var;
+ void *_tmp_185_var;
while (
- (_tmp_182_var = _tmp_182_rule(p)) // ',' expression
+ (_tmp_185_var = _tmp_185_rule(p)) // ',' expression
)
{
- _res = _tmp_182_var;
+ _res = _tmp_185_var;
if (_n == _children_capacity) {
_children_capacity *= 2;
void **_new_children = PyMem_Realloc(_children, _children_capacity*sizeof(void *));
@@ -27341,12 +27532,12 @@ _loop1_104_rule(Parser *p)
return NULL;
}
D(fprintf(stderr, "%*c> _loop1_104[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "('or' conjunction)"));
- void *_tmp_183_var;
+ void *_tmp_186_var;
while (
- (_tmp_183_var = _tmp_183_rule(p)) // 'or' conjunction
+ (_tmp_186_var = _tmp_186_rule(p)) // 'or' conjunction
)
{
- _res = _tmp_183_var;
+ _res = _tmp_186_var;
if (_n == _children_capacity) {
_children_capacity *= 2;
void **_new_children = PyMem_Realloc(_children, _children_capacity*sizeof(void *));
@@ -27412,12 +27603,12 @@ _loop1_105_rule(Parser *p)
return NULL;
}
D(fprintf(stderr, "%*c> _loop1_105[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "('and' inversion)"));
- void *_tmp_184_var;
+ void *_tmp_187_var;
while (
- (_tmp_184_var = _tmp_184_rule(p)) // 'and' inversion
+ (_tmp_187_var = _tmp_187_rule(p)) // 'and' inversion
)
{
- _res = _tmp_184_var;
+ _res = _tmp_187_var;
if (_n == _children_capacity) {
_children_capacity *= 2;
void **_new_children = PyMem_Realloc(_children, _children_capacity*sizeof(void *));
@@ -28121,64 +28312,121 @@ _tmp_116_rule(Parser *p)
return _res;
}
-// _loop0_118: ',' double_starred_kvpair
-static asdl_seq *
-_loop0_118_rule(Parser *p)
+// _tmp_117: assigment_expression | expression !':='
+static void *
+_tmp_117_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
D(p->level--);
return NULL;
}
- void *_res = NULL;
+ void * _res = NULL;
int _mark = p->mark;
- int _start_mark = p->mark;
- void **_children = PyMem_Malloc(sizeof(void *));
- if (!_children) {
- p->error_indicator = 1;
- PyErr_NoMemory();
- D(p->level--);
- return NULL;
- }
- Py_ssize_t _children_capacity = 1;
- Py_ssize_t _n = 0;
- { // ',' double_starred_kvpair
+ { // assigment_expression
if (p->error_indicator) {
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _loop0_118[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "',' double_starred_kvpair"));
- Token * _literal;
- KeyValuePair* elem;
- while (
- (_literal = _PyPegen_expect_token(p, 12)) // token=','
- &&
- (elem = double_starred_kvpair_rule(p)) // double_starred_kvpair
+ D(fprintf(stderr, "%*c> _tmp_117[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "assigment_expression"));
+ expr_ty assigment_expression_var;
+ if (
+ (assigment_expression_var = assigment_expression_rule(p)) // assigment_expression
)
{
- _res = elem;
- if (_res == NULL && PyErr_Occurred()) {
- p->error_indicator = 1;
- PyMem_Free(_children);
- D(p->level--);
- return NULL;
- }
- if (_n == _children_capacity) {
- _children_capacity *= 2;
- void **_new_children = PyMem_Realloc(_children, _children_capacity*sizeof(void *));
- if (!_new_children) {
- p->error_indicator = 1;
- PyErr_NoMemory();
- D(p->level--);
- return NULL;
- }
- _children = _new_children;
- }
- _children[_n++] = _res;
- _mark = p->mark;
+ D(fprintf(stderr, "%*c+ _tmp_117[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "assigment_expression"));
+ _res = assigment_expression_var;
+ goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _loop0_118[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _tmp_117[%d-%d]: %s failed!\n", p->level, ' ',
+ p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "assigment_expression"));
+ }
+ { // expression !':='
+ if (p->error_indicator) {
+ D(p->level--);
+ return NULL;
+ }
+ D(fprintf(stderr, "%*c> _tmp_117[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "expression !':='"));
+ expr_ty expression_var;
+ if (
+ (expression_var = expression_rule(p)) // expression
+ &&
+ _PyPegen_lookahead_with_int(0, _PyPegen_expect_token, p, 53) // token=':='
+ )
+ {
+ D(fprintf(stderr, "%*c+ _tmp_117[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "expression !':='"));
+ _res = expression_var;
+ goto done;
+ }
+ p->mark = _mark;
+ D(fprintf(stderr, "%*c%s _tmp_117[%d-%d]: %s failed!\n", p->level, ' ',
+ p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "expression !':='"));
+ }
+ _res = NULL;
+ done:
+ D(p->level--);
+ return _res;
+}
+
+// _loop0_119: ',' double_starred_kvpair
+static asdl_seq *
+_loop0_119_rule(Parser *p)
+{
+ D(p->level++);
+ if (p->error_indicator) {
+ D(p->level--);
+ return NULL;
+ }
+ void *_res = NULL;
+ int _mark = p->mark;
+ int _start_mark = p->mark;
+ void **_children = PyMem_Malloc(sizeof(void *));
+ if (!_children) {
+ p->error_indicator = 1;
+ PyErr_NoMemory();
+ D(p->level--);
+ return NULL;
+ }
+ Py_ssize_t _children_capacity = 1;
+ Py_ssize_t _n = 0;
+ { // ',' double_starred_kvpair
+ if (p->error_indicator) {
+ D(p->level--);
+ return NULL;
+ }
+ D(fprintf(stderr, "%*c> _loop0_119[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "',' double_starred_kvpair"));
+ Token * _literal;
+ KeyValuePair* elem;
+ while (
+ (_literal = _PyPegen_expect_token(p, 12)) // token=','
+ &&
+ (elem = double_starred_kvpair_rule(p)) // double_starred_kvpair
+ )
+ {
+ _res = elem;
+ if (_res == NULL && PyErr_Occurred()) {
+ p->error_indicator = 1;
+ PyMem_Free(_children);
+ D(p->level--);
+ return NULL;
+ }
+ if (_n == _children_capacity) {
+ _children_capacity *= 2;
+ void **_new_children = PyMem_Realloc(_children, _children_capacity*sizeof(void *));
+ if (!_new_children) {
+ p->error_indicator = 1;
+ PyErr_NoMemory();
+ D(p->level--);
+ return NULL;
+ }
+ _children = _new_children;
+ }
+ _children[_n++] = _res;
+ _mark = p->mark;
+ }
+ p->mark = _mark;
+ D(fprintf(stderr, "%*c%s _loop0_119[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "',' double_starred_kvpair"));
}
asdl_seq *_seq = (asdl_seq*)_Py_asdl_generic_seq_new(_n, p->arena);
@@ -28191,14 +28439,14 @@ _loop0_118_rule(Parser *p)
}
for (int i = 0; i < _n; i++) asdl_seq_SET_UNTYPED(_seq, i, _children[i]);
PyMem_Free(_children);
- _PyPegen_insert_memo(p, _start_mark, _loop0_118_type, _seq);
+ _PyPegen_insert_memo(p, _start_mark, _loop0_119_type, _seq);
D(p->level--);
return _seq;
}
-// _gather_117: double_starred_kvpair _loop0_118
+// _gather_118: double_starred_kvpair _loop0_119
static asdl_seq *
-_gather_117_rule(Parser *p)
+_gather_118_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -28207,27 +28455,27 @@ _gather_117_rule(Parser *p)
}
asdl_seq * _res = NULL;
int _mark = p->mark;
- { // double_starred_kvpair _loop0_118
+ { // double_starred_kvpair _loop0_119
if (p->error_indicator) {
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _gather_117[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "double_starred_kvpair _loop0_118"));
+ D(fprintf(stderr, "%*c> _gather_118[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "double_starred_kvpair _loop0_119"));
KeyValuePair* elem;
asdl_seq * seq;
if (
(elem = double_starred_kvpair_rule(p)) // double_starred_kvpair
&&
- (seq = _loop0_118_rule(p)) // _loop0_118
+ (seq = _loop0_119_rule(p)) // _loop0_119
)
{
- D(fprintf(stderr, "%*c+ _gather_117[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "double_starred_kvpair _loop0_118"));
+ D(fprintf(stderr, "%*c+ _gather_118[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "double_starred_kvpair _loop0_119"));
_res = _PyPegen_seq_insert_in_front(p, elem, seq);
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _gather_117[%d-%d]: %s failed!\n", p->level, ' ',
- p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "double_starred_kvpair _loop0_118"));
+ D(fprintf(stderr, "%*c%s _gather_118[%d-%d]: %s failed!\n", p->level, ' ',
+ p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "double_starred_kvpair _loop0_119"));
}
_res = NULL;
done:
@@ -28235,9 +28483,9 @@ _gather_117_rule(Parser *p)
return _res;
}
-// _loop1_119: for_if_clause
+// _loop1_120: for_if_clause
static asdl_seq *
-_loop1_119_rule(Parser *p)
+_loop1_120_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -28261,7 +28509,7 @@ _loop1_119_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _loop1_119[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "for_if_clause"));
+ D(fprintf(stderr, "%*c> _loop1_120[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "for_if_clause"));
comprehension_ty for_if_clause_var;
while (
(for_if_clause_var = for_if_clause_rule(p)) // for_if_clause
@@ -28283,7 +28531,7 @@ _loop1_119_rule(Parser *p)
_mark = p->mark;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _loop1_119[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _loop1_120[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "for_if_clause"));
}
if (_n == 0 || p->error_indicator) {
@@ -28301,14 +28549,14 @@ _loop1_119_rule(Parser *p)
}
for (int i = 0; i < _n; i++) asdl_seq_SET_UNTYPED(_seq, i, _children[i]);
PyMem_Free(_children);
- _PyPegen_insert_memo(p, _start_mark, _loop1_119_type, _seq);
+ _PyPegen_insert_memo(p, _start_mark, _loop1_120_type, _seq);
D(p->level--);
return _seq;
}
-// _loop0_120: ('if' disjunction)
+// _loop0_121: ('if' disjunction)
static asdl_seq *
-_loop0_120_rule(Parser *p)
+_loop0_121_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -28332,13 +28580,13 @@ _loop0_120_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _loop0_120[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "('if' disjunction)"));
- void *_tmp_185_var;
+ D(fprintf(stderr, "%*c> _loop0_121[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "('if' disjunction)"));
+ void *_tmp_188_var;
while (
- (_tmp_185_var = _tmp_185_rule(p)) // 'if' disjunction
+ (_tmp_188_var = _tmp_188_rule(p)) // 'if' disjunction
)
{
- _res = _tmp_185_var;
+ _res = _tmp_188_var;
if (_n == _children_capacity) {
_children_capacity *= 2;
void **_new_children = PyMem_Realloc(_children, _children_capacity*sizeof(void *));
@@ -28354,7 +28602,7 @@ _loop0_120_rule(Parser *p)
_mark = p->mark;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _loop0_120[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _loop0_121[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "('if' disjunction)"));
}
asdl_seq *_seq = (asdl_seq*)_Py_asdl_generic_seq_new(_n, p->arena);
@@ -28367,14 +28615,14 @@ _loop0_120_rule(Parser *p)
}
for (int i = 0; i < _n; i++) asdl_seq_SET_UNTYPED(_seq, i, _children[i]);
PyMem_Free(_children);
- _PyPegen_insert_memo(p, _start_mark, _loop0_120_type, _seq);
+ _PyPegen_insert_memo(p, _start_mark, _loop0_121_type, _seq);
D(p->level--);
return _seq;
}
-// _loop0_121: ('if' disjunction)
+// _loop0_122: ('if' disjunction)
static asdl_seq *
-_loop0_121_rule(Parser *p)
+_loop0_122_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -28398,13 +28646,13 @@ _loop0_121_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _loop0_121[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "('if' disjunction)"));
- void *_tmp_186_var;
+ D(fprintf(stderr, "%*c> _loop0_122[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "('if' disjunction)"));
+ void *_tmp_189_var;
while (
- (_tmp_186_var = _tmp_186_rule(p)) // 'if' disjunction
+ (_tmp_189_var = _tmp_189_rule(p)) // 'if' disjunction
)
{
- _res = _tmp_186_var;
+ _res = _tmp_189_var;
if (_n == _children_capacity) {
_children_capacity *= 2;
void **_new_children = PyMem_Realloc(_children, _children_capacity*sizeof(void *));
@@ -28420,7 +28668,7 @@ _loop0_121_rule(Parser *p)
_mark = p->mark;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _loop0_121[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _loop0_122[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "('if' disjunction)"));
}
asdl_seq *_seq = (asdl_seq*)_Py_asdl_generic_seq_new(_n, p->arena);
@@ -28433,14 +28681,14 @@ _loop0_121_rule(Parser *p)
}
for (int i = 0; i < _n; i++) asdl_seq_SET_UNTYPED(_seq, i, _children[i]);
PyMem_Free(_children);
- _PyPegen_insert_memo(p, _start_mark, _loop0_121_type, _seq);
+ _PyPegen_insert_memo(p, _start_mark, _loop0_122_type, _seq);
D(p->level--);
return _seq;
}
-// _loop0_123: ',' (starred_expression | direct_named_expression !'=')
+// _loop0_124: ',' (starred_expression | (assigment_expression | expression !':=') !'=')
static asdl_seq *
-_loop0_123_rule(Parser *p)
+_loop0_124_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -28459,18 +28707,18 @@ _loop0_123_rule(Parser *p)
}
Py_ssize_t _children_capacity = 1;
Py_ssize_t _n = 0;
- { // ',' (starred_expression | direct_named_expression !'=')
+ { // ',' (starred_expression | (assigment_expression | expression !':=') !'=')
if (p->error_indicator) {
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _loop0_123[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "',' (starred_expression | direct_named_expression !'=')"));
+ D(fprintf(stderr, "%*c> _loop0_124[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "',' (starred_expression | (assigment_expression | expression !':=') !'=')"));
Token * _literal;
void *elem;
while (
(_literal = _PyPegen_expect_token(p, 12)) // token=','
&&
- (elem = _tmp_187_rule(p)) // starred_expression | direct_named_expression !'='
+ (elem = _tmp_190_rule(p)) // starred_expression | (assigment_expression | expression !':=') !'='
)
{
_res = elem;
@@ -28495,8 +28743,8 @@ _loop0_123_rule(Parser *p)
_mark = p->mark;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _loop0_123[%d-%d]: %s failed!\n", p->level, ' ',
- p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "',' (starred_expression | direct_named_expression !'=')"));
+ D(fprintf(stderr, "%*c%s _loop0_124[%d-%d]: %s failed!\n", p->level, ' ',
+ p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "',' (starred_expression | (assigment_expression | expression !':=') !'=')"));
}
asdl_seq *_seq = (asdl_seq*)_Py_asdl_generic_seq_new(_n, p->arena);
if (!_seq) {
@@ -28508,14 +28756,15 @@ _loop0_123_rule(Parser *p)
}
for (int i = 0; i < _n; i++) asdl_seq_SET_UNTYPED(_seq, i, _children[i]);
PyMem_Free(_children);
- _PyPegen_insert_memo(p, _start_mark, _loop0_123_type, _seq);
+ _PyPegen_insert_memo(p, _start_mark, _loop0_124_type, _seq);
D(p->level--);
return _seq;
}
-// _gather_122: (starred_expression | direct_named_expression !'=') _loop0_123
+// _gather_123:
+// | (starred_expression | (assigment_expression | expression !':=') !'=') _loop0_124
static asdl_seq *
-_gather_122_rule(Parser *p)
+_gather_123_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -28524,27 +28773,27 @@ _gather_122_rule(Parser *p)
}
asdl_seq * _res = NULL;
int _mark = p->mark;
- { // (starred_expression | direct_named_expression !'=') _loop0_123
+ { // (starred_expression | (assigment_expression | expression !':=') !'=') _loop0_124
if (p->error_indicator) {
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _gather_122[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "(starred_expression | direct_named_expression !'=') _loop0_123"));
+ D(fprintf(stderr, "%*c> _gather_123[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "(starred_expression | (assigment_expression | expression !':=') !'=') _loop0_124"));
void *elem;
asdl_seq * seq;
if (
- (elem = _tmp_187_rule(p)) // starred_expression | direct_named_expression !'='
+ (elem = _tmp_190_rule(p)) // starred_expression | (assigment_expression | expression !':=') !'='
&&
- (seq = _loop0_123_rule(p)) // _loop0_123
+ (seq = _loop0_124_rule(p)) // _loop0_124
)
{
- D(fprintf(stderr, "%*c+ _gather_122[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "(starred_expression | direct_named_expression !'=') _loop0_123"));
+ D(fprintf(stderr, "%*c+ _gather_123[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "(starred_expression | (assigment_expression | expression !':=') !'=') _loop0_124"));
_res = _PyPegen_seq_insert_in_front(p, elem, seq);
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _gather_122[%d-%d]: %s failed!\n", p->level, ' ',
- p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "(starred_expression | direct_named_expression !'=') _loop0_123"));
+ D(fprintf(stderr, "%*c%s _gather_123[%d-%d]: %s failed!\n", p->level, ' ',
+ p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "(starred_expression | (assigment_expression | expression !':=') !'=') _loop0_124"));
}
_res = NULL;
done:
@@ -28552,9 +28801,9 @@ _gather_122_rule(Parser *p)
return _res;
}
-// _tmp_124: ',' kwargs
+// _tmp_125: ',' kwargs
static void *
-_tmp_124_rule(Parser *p)
+_tmp_125_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -28568,7 +28817,7 @@ _tmp_124_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _tmp_124[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "',' kwargs"));
+ D(fprintf(stderr, "%*c> _tmp_125[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "',' kwargs"));
Token * _literal;
asdl_seq* k;
if (
@@ -28577,7 +28826,7 @@ _tmp_124_rule(Parser *p)
(k = kwargs_rule(p)) // kwargs
)
{
- D(fprintf(stderr, "%*c+ _tmp_124[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "',' kwargs"));
+ D(fprintf(stderr, "%*c+ _tmp_125[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "',' kwargs"));
_res = k;
if (_res == NULL && PyErr_Occurred()) {
p->error_indicator = 1;
@@ -28587,7 +28836,7 @@ _tmp_124_rule(Parser *p)
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _tmp_124[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _tmp_125[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "',' kwargs"));
}
_res = NULL;
@@ -28596,9 +28845,9 @@ _tmp_124_rule(Parser *p)
return _res;
}
-// _loop0_126: ',' kwarg_or_starred
+// _loop0_127: ',' kwarg_or_starred
static asdl_seq *
-_loop0_126_rule(Parser *p)
+_loop0_127_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -28622,7 +28871,7 @@ _loop0_126_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _loop0_126[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "',' kwarg_or_starred"));
+ D(fprintf(stderr, "%*c> _loop0_127[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "',' kwarg_or_starred"));
Token * _literal;
KeywordOrStarred* elem;
while (
@@ -28653,7 +28902,7 @@ _loop0_126_rule(Parser *p)
_mark = p->mark;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _loop0_126[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _loop0_127[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "',' kwarg_or_starred"));
}
asdl_seq *_seq = (asdl_seq*)_Py_asdl_generic_seq_new(_n, p->arena);
@@ -28666,14 +28915,14 @@ _loop0_126_rule(Parser *p)
}
for (int i = 0; i < _n; i++) asdl_seq_SET_UNTYPED(_seq, i, _children[i]);
PyMem_Free(_children);
- _PyPegen_insert_memo(p, _start_mark, _loop0_126_type, _seq);
+ _PyPegen_insert_memo(p, _start_mark, _loop0_127_type, _seq);
D(p->level--);
return _seq;
}
-// _gather_125: kwarg_or_starred _loop0_126
+// _gather_126: kwarg_or_starred _loop0_127
static asdl_seq *
-_gather_125_rule(Parser *p)
+_gather_126_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -28682,27 +28931,27 @@ _gather_125_rule(Parser *p)
}
asdl_seq * _res = NULL;
int _mark = p->mark;
- { // kwarg_or_starred _loop0_126
+ { // kwarg_or_starred _loop0_127
if (p->error_indicator) {
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _gather_125[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "kwarg_or_starred _loop0_126"));
+ D(fprintf(stderr, "%*c> _gather_126[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "kwarg_or_starred _loop0_127"));
KeywordOrStarred* elem;
asdl_seq * seq;
if (
(elem = kwarg_or_starred_rule(p)) // kwarg_or_starred
&&
- (seq = _loop0_126_rule(p)) // _loop0_126
+ (seq = _loop0_127_rule(p)) // _loop0_127
)
{
- D(fprintf(stderr, "%*c+ _gather_125[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "kwarg_or_starred _loop0_126"));
+ D(fprintf(stderr, "%*c+ _gather_126[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "kwarg_or_starred _loop0_127"));
_res = _PyPegen_seq_insert_in_front(p, elem, seq);
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _gather_125[%d-%d]: %s failed!\n", p->level, ' ',
- p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "kwarg_or_starred _loop0_126"));
+ D(fprintf(stderr, "%*c%s _gather_126[%d-%d]: %s failed!\n", p->level, ' ',
+ p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "kwarg_or_starred _loop0_127"));
}
_res = NULL;
done:
@@ -28710,9 +28959,9 @@ _gather_125_rule(Parser *p)
return _res;
}
-// _loop0_128: ',' kwarg_or_double_starred
+// _loop0_129: ',' kwarg_or_double_starred
static asdl_seq *
-_loop0_128_rule(Parser *p)
+_loop0_129_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -28736,7 +28985,7 @@ _loop0_128_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _loop0_128[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "',' kwarg_or_double_starred"));
+ D(fprintf(stderr, "%*c> _loop0_129[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "',' kwarg_or_double_starred"));
Token * _literal;
KeywordOrStarred* elem;
while (
@@ -28767,7 +29016,7 @@ _loop0_128_rule(Parser *p)
_mark = p->mark;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _loop0_128[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _loop0_129[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "',' kwarg_or_double_starred"));
}
asdl_seq *_seq = (asdl_seq*)_Py_asdl_generic_seq_new(_n, p->arena);
@@ -28780,14 +29029,14 @@ _loop0_128_rule(Parser *p)
}
for (int i = 0; i < _n; i++) asdl_seq_SET_UNTYPED(_seq, i, _children[i]);
PyMem_Free(_children);
- _PyPegen_insert_memo(p, _start_mark, _loop0_128_type, _seq);
+ _PyPegen_insert_memo(p, _start_mark, _loop0_129_type, _seq);
D(p->level--);
return _seq;
}
-// _gather_127: kwarg_or_double_starred _loop0_128
+// _gather_128: kwarg_or_double_starred _loop0_129
static asdl_seq *
-_gather_127_rule(Parser *p)
+_gather_128_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -28796,27 +29045,27 @@ _gather_127_rule(Parser *p)
}
asdl_seq * _res = NULL;
int _mark = p->mark;
- { // kwarg_or_double_starred _loop0_128
+ { // kwarg_or_double_starred _loop0_129
if (p->error_indicator) {
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _gather_127[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "kwarg_or_double_starred _loop0_128"));
+ D(fprintf(stderr, "%*c> _gather_128[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "kwarg_or_double_starred _loop0_129"));
KeywordOrStarred* elem;
asdl_seq * seq;
if (
(elem = kwarg_or_double_starred_rule(p)) // kwarg_or_double_starred
&&
- (seq = _loop0_128_rule(p)) // _loop0_128
+ (seq = _loop0_129_rule(p)) // _loop0_129
)
{
- D(fprintf(stderr, "%*c+ _gather_127[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "kwarg_or_double_starred _loop0_128"));
+ D(fprintf(stderr, "%*c+ _gather_128[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "kwarg_or_double_starred _loop0_129"));
_res = _PyPegen_seq_insert_in_front(p, elem, seq);
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _gather_127[%d-%d]: %s failed!\n", p->level, ' ',
- p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "kwarg_or_double_starred _loop0_128"));
+ D(fprintf(stderr, "%*c%s _gather_128[%d-%d]: %s failed!\n", p->level, ' ',
+ p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "kwarg_or_double_starred _loop0_129"));
}
_res = NULL;
done:
@@ -28824,9 +29073,9 @@ _gather_127_rule(Parser *p)
return _res;
}
-// _loop0_130: ',' kwarg_or_starred
+// _loop0_131: ',' kwarg_or_starred
static asdl_seq *
-_loop0_130_rule(Parser *p)
+_loop0_131_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -28850,7 +29099,7 @@ _loop0_130_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _loop0_130[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "',' kwarg_or_starred"));
+ D(fprintf(stderr, "%*c> _loop0_131[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "',' kwarg_or_starred"));
Token * _literal;
KeywordOrStarred* elem;
while (
@@ -28881,7 +29130,7 @@ _loop0_130_rule(Parser *p)
_mark = p->mark;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _loop0_130[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _loop0_131[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "',' kwarg_or_starred"));
}
asdl_seq *_seq = (asdl_seq*)_Py_asdl_generic_seq_new(_n, p->arena);
@@ -28894,14 +29143,14 @@ _loop0_130_rule(Parser *p)
}
for (int i = 0; i < _n; i++) asdl_seq_SET_UNTYPED(_seq, i, _children[i]);
PyMem_Free(_children);
- _PyPegen_insert_memo(p, _start_mark, _loop0_130_type, _seq);
+ _PyPegen_insert_memo(p, _start_mark, _loop0_131_type, _seq);
D(p->level--);
return _seq;
}
-// _gather_129: kwarg_or_starred _loop0_130
+// _gather_130: kwarg_or_starred _loop0_131
static asdl_seq *
-_gather_129_rule(Parser *p)
+_gather_130_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -28910,27 +29159,27 @@ _gather_129_rule(Parser *p)
}
asdl_seq * _res = NULL;
int _mark = p->mark;
- { // kwarg_or_starred _loop0_130
+ { // kwarg_or_starred _loop0_131
if (p->error_indicator) {
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _gather_129[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "kwarg_or_starred _loop0_130"));
+ D(fprintf(stderr, "%*c> _gather_130[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "kwarg_or_starred _loop0_131"));
KeywordOrStarred* elem;
asdl_seq * seq;
if (
(elem = kwarg_or_starred_rule(p)) // kwarg_or_starred
&&
- (seq = _loop0_130_rule(p)) // _loop0_130
+ (seq = _loop0_131_rule(p)) // _loop0_131
)
{
- D(fprintf(stderr, "%*c+ _gather_129[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "kwarg_or_starred _loop0_130"));
+ D(fprintf(stderr, "%*c+ _gather_130[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "kwarg_or_starred _loop0_131"));
_res = _PyPegen_seq_insert_in_front(p, elem, seq);
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _gather_129[%d-%d]: %s failed!\n", p->level, ' ',
- p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "kwarg_or_starred _loop0_130"));
+ D(fprintf(stderr, "%*c%s _gather_130[%d-%d]: %s failed!\n", p->level, ' ',
+ p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "kwarg_or_starred _loop0_131"));
}
_res = NULL;
done:
@@ -28938,9 +29187,9 @@ _gather_129_rule(Parser *p)
return _res;
}
-// _loop0_132: ',' kwarg_or_double_starred
+// _loop0_133: ',' kwarg_or_double_starred
static asdl_seq *
-_loop0_132_rule(Parser *p)
+_loop0_133_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -28964,7 +29213,7 @@ _loop0_132_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _loop0_132[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "',' kwarg_or_double_starred"));
+ D(fprintf(stderr, "%*c> _loop0_133[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "',' kwarg_or_double_starred"));
Token * _literal;
KeywordOrStarred* elem;
while (
@@ -28995,7 +29244,7 @@ _loop0_132_rule(Parser *p)
_mark = p->mark;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _loop0_132[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _loop0_133[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "',' kwarg_or_double_starred"));
}
asdl_seq *_seq = (asdl_seq*)_Py_asdl_generic_seq_new(_n, p->arena);
@@ -29008,14 +29257,14 @@ _loop0_132_rule(Parser *p)
}
for (int i = 0; i < _n; i++) asdl_seq_SET_UNTYPED(_seq, i, _children[i]);
PyMem_Free(_children);
- _PyPegen_insert_memo(p, _start_mark, _loop0_132_type, _seq);
+ _PyPegen_insert_memo(p, _start_mark, _loop0_133_type, _seq);
D(p->level--);
return _seq;
}
-// _gather_131: kwarg_or_double_starred _loop0_132
+// _gather_132: kwarg_or_double_starred _loop0_133
static asdl_seq *
-_gather_131_rule(Parser *p)
+_gather_132_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -29024,27 +29273,27 @@ _gather_131_rule(Parser *p)
}
asdl_seq * _res = NULL;
int _mark = p->mark;
- { // kwarg_or_double_starred _loop0_132
+ { // kwarg_or_double_starred _loop0_133
if (p->error_indicator) {
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _gather_131[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "kwarg_or_double_starred _loop0_132"));
+ D(fprintf(stderr, "%*c> _gather_132[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "kwarg_or_double_starred _loop0_133"));
KeywordOrStarred* elem;
asdl_seq * seq;
if (
(elem = kwarg_or_double_starred_rule(p)) // kwarg_or_double_starred
&&
- (seq = _loop0_132_rule(p)) // _loop0_132
+ (seq = _loop0_133_rule(p)) // _loop0_133
)
{
- D(fprintf(stderr, "%*c+ _gather_131[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "kwarg_or_double_starred _loop0_132"));
+ D(fprintf(stderr, "%*c+ _gather_132[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "kwarg_or_double_starred _loop0_133"));
_res = _PyPegen_seq_insert_in_front(p, elem, seq);
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _gather_131[%d-%d]: %s failed!\n", p->level, ' ',
- p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "kwarg_or_double_starred _loop0_132"));
+ D(fprintf(stderr, "%*c%s _gather_132[%d-%d]: %s failed!\n", p->level, ' ',
+ p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "kwarg_or_double_starred _loop0_133"));
}
_res = NULL;
done:
@@ -29052,9 +29301,9 @@ _gather_131_rule(Parser *p)
return _res;
}
-// _loop0_133: (',' star_target)
+// _loop0_134: (',' star_target)
static asdl_seq *
-_loop0_133_rule(Parser *p)
+_loop0_134_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -29078,13 +29327,13 @@ _loop0_133_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _loop0_133[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "(',' star_target)"));
- void *_tmp_188_var;
+ D(fprintf(stderr, "%*c> _loop0_134[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "(',' star_target)"));
+ void *_tmp_191_var;
while (
- (_tmp_188_var = _tmp_188_rule(p)) // ',' star_target
+ (_tmp_191_var = _tmp_191_rule(p)) // ',' star_target
)
{
- _res = _tmp_188_var;
+ _res = _tmp_191_var;
if (_n == _children_capacity) {
_children_capacity *= 2;
void **_new_children = PyMem_Realloc(_children, _children_capacity*sizeof(void *));
@@ -29100,7 +29349,7 @@ _loop0_133_rule(Parser *p)
_mark = p->mark;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _loop0_133[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _loop0_134[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "(',' star_target)"));
}
asdl_seq *_seq = (asdl_seq*)_Py_asdl_generic_seq_new(_n, p->arena);
@@ -29113,14 +29362,14 @@ _loop0_133_rule(Parser *p)
}
for (int i = 0; i < _n; i++) asdl_seq_SET_UNTYPED(_seq, i, _children[i]);
PyMem_Free(_children);
- _PyPegen_insert_memo(p, _start_mark, _loop0_133_type, _seq);
+ _PyPegen_insert_memo(p, _start_mark, _loop0_134_type, _seq);
D(p->level--);
return _seq;
}
-// _loop0_135: ',' star_target
+// _loop0_136: ',' star_target
static asdl_seq *
-_loop0_135_rule(Parser *p)
+_loop0_136_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -29144,7 +29393,7 @@ _loop0_135_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _loop0_135[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "',' star_target"));
+ D(fprintf(stderr, "%*c> _loop0_136[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "',' star_target"));
Token * _literal;
expr_ty elem;
while (
@@ -29175,7 +29424,7 @@ _loop0_135_rule(Parser *p)
_mark = p->mark;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _loop0_135[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _loop0_136[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "',' star_target"));
}
asdl_seq *_seq = (asdl_seq*)_Py_asdl_generic_seq_new(_n, p->arena);
@@ -29188,14 +29437,14 @@ _loop0_135_rule(Parser *p)
}
for (int i = 0; i < _n; i++) asdl_seq_SET_UNTYPED(_seq, i, _children[i]);
PyMem_Free(_children);
- _PyPegen_insert_memo(p, _start_mark, _loop0_135_type, _seq);
+ _PyPegen_insert_memo(p, _start_mark, _loop0_136_type, _seq);
D(p->level--);
return _seq;
}
-// _gather_134: star_target _loop0_135
+// _gather_135: star_target _loop0_136
static asdl_seq *
-_gather_134_rule(Parser *p)
+_gather_135_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -29204,27 +29453,27 @@ _gather_134_rule(Parser *p)
}
asdl_seq * _res = NULL;
int _mark = p->mark;
- { // star_target _loop0_135
+ { // star_target _loop0_136
if (p->error_indicator) {
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _gather_134[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "star_target _loop0_135"));
+ D(fprintf(stderr, "%*c> _gather_135[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "star_target _loop0_136"));
expr_ty elem;
asdl_seq * seq;
if (
(elem = star_target_rule(p)) // star_target
&&
- (seq = _loop0_135_rule(p)) // _loop0_135
+ (seq = _loop0_136_rule(p)) // _loop0_136
)
{
- D(fprintf(stderr, "%*c+ _gather_134[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "star_target _loop0_135"));
+ D(fprintf(stderr, "%*c+ _gather_135[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "star_target _loop0_136"));
_res = _PyPegen_seq_insert_in_front(p, elem, seq);
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _gather_134[%d-%d]: %s failed!\n", p->level, ' ',
- p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "star_target _loop0_135"));
+ D(fprintf(stderr, "%*c%s _gather_135[%d-%d]: %s failed!\n", p->level, ' ',
+ p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "star_target _loop0_136"));
}
_res = NULL;
done:
@@ -29232,9 +29481,9 @@ _gather_134_rule(Parser *p)
return _res;
}
-// _loop1_136: (',' star_target)
+// _loop1_137: (',' star_target)
static asdl_seq *
-_loop1_136_rule(Parser *p)
+_loop1_137_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -29258,13 +29507,13 @@ _loop1_136_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _loop1_136[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "(',' star_target)"));
- void *_tmp_189_var;
+ D(fprintf(stderr, "%*c> _loop1_137[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "(',' star_target)"));
+ void *_tmp_192_var;
while (
- (_tmp_189_var = _tmp_189_rule(p)) // ',' star_target
+ (_tmp_192_var = _tmp_192_rule(p)) // ',' star_target
)
{
- _res = _tmp_189_var;
+ _res = _tmp_192_var;
if (_n == _children_capacity) {
_children_capacity *= 2;
void **_new_children = PyMem_Realloc(_children, _children_capacity*sizeof(void *));
@@ -29280,7 +29529,7 @@ _loop1_136_rule(Parser *p)
_mark = p->mark;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _loop1_136[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _loop1_137[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "(',' star_target)"));
}
if (_n == 0 || p->error_indicator) {
@@ -29298,14 +29547,14 @@ _loop1_136_rule(Parser *p)
}
for (int i = 0; i < _n; i++) asdl_seq_SET_UNTYPED(_seq, i, _children[i]);
PyMem_Free(_children);
- _PyPegen_insert_memo(p, _start_mark, _loop1_136_type, _seq);
+ _PyPegen_insert_memo(p, _start_mark, _loop1_137_type, _seq);
D(p->level--);
return _seq;
}
-// _tmp_137: !'*' star_target
+// _tmp_138: !'*' star_target
static void *
-_tmp_137_rule(Parser *p)
+_tmp_138_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -29319,7 +29568,7 @@ _tmp_137_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _tmp_137[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "!'*' star_target"));
+ D(fprintf(stderr, "%*c> _tmp_138[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "!'*' star_target"));
expr_ty star_target_var;
if (
_PyPegen_lookahead_with_int(0, _PyPegen_expect_token, p, 16) // token='*'
@@ -29327,12 +29576,12 @@ _tmp_137_rule(Parser *p)
(star_target_var = star_target_rule(p)) // star_target
)
{
- D(fprintf(stderr, "%*c+ _tmp_137[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "!'*' star_target"));
+ D(fprintf(stderr, "%*c+ _tmp_138[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "!'*' star_target"));
_res = star_target_var;
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _tmp_137[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _tmp_138[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "!'*' star_target"));
}
_res = NULL;
@@ -29341,9 +29590,9 @@ _tmp_137_rule(Parser *p)
return _res;
}
-// _loop0_139: ',' del_target
+// _loop0_140: ',' del_target
static asdl_seq *
-_loop0_139_rule(Parser *p)
+_loop0_140_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -29367,7 +29616,7 @@ _loop0_139_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _loop0_139[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "',' del_target"));
+ D(fprintf(stderr, "%*c> _loop0_140[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "',' del_target"));
Token * _literal;
expr_ty elem;
while (
@@ -29398,7 +29647,7 @@ _loop0_139_rule(Parser *p)
_mark = p->mark;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _loop0_139[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _loop0_140[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "',' del_target"));
}
asdl_seq *_seq = (asdl_seq*)_Py_asdl_generic_seq_new(_n, p->arena);
@@ -29411,14 +29660,14 @@ _loop0_139_rule(Parser *p)
}
for (int i = 0; i < _n; i++) asdl_seq_SET_UNTYPED(_seq, i, _children[i]);
PyMem_Free(_children);
- _PyPegen_insert_memo(p, _start_mark, _loop0_139_type, _seq);
+ _PyPegen_insert_memo(p, _start_mark, _loop0_140_type, _seq);
D(p->level--);
return _seq;
}
-// _gather_138: del_target _loop0_139
+// _gather_139: del_target _loop0_140
static asdl_seq *
-_gather_138_rule(Parser *p)
+_gather_139_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -29427,27 +29676,27 @@ _gather_138_rule(Parser *p)
}
asdl_seq * _res = NULL;
int _mark = p->mark;
- { // del_target _loop0_139
+ { // del_target _loop0_140
if (p->error_indicator) {
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _gather_138[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "del_target _loop0_139"));
+ D(fprintf(stderr, "%*c> _gather_139[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "del_target _loop0_140"));
expr_ty elem;
asdl_seq * seq;
if (
(elem = del_target_rule(p)) // del_target
&&
- (seq = _loop0_139_rule(p)) // _loop0_139
+ (seq = _loop0_140_rule(p)) // _loop0_140
)
{
- D(fprintf(stderr, "%*c+ _gather_138[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "del_target _loop0_139"));
+ D(fprintf(stderr, "%*c+ _gather_139[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "del_target _loop0_140"));
_res = _PyPegen_seq_insert_in_front(p, elem, seq);
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _gather_138[%d-%d]: %s failed!\n", p->level, ' ',
- p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "del_target _loop0_139"));
+ D(fprintf(stderr, "%*c%s _gather_139[%d-%d]: %s failed!\n", p->level, ' ',
+ p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "del_target _loop0_140"));
}
_res = NULL;
done:
@@ -29455,9 +29704,9 @@ _gather_138_rule(Parser *p)
return _res;
}
-// _loop0_141: ',' target
+// _loop0_142: ',' target
static asdl_seq *
-_loop0_141_rule(Parser *p)
+_loop0_142_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -29481,7 +29730,7 @@ _loop0_141_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _loop0_141[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "',' target"));
+ D(fprintf(stderr, "%*c> _loop0_142[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "',' target"));
Token * _literal;
expr_ty elem;
while (
@@ -29512,7 +29761,7 @@ _loop0_141_rule(Parser *p)
_mark = p->mark;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _loop0_141[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _loop0_142[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "',' target"));
}
asdl_seq *_seq = (asdl_seq*)_Py_asdl_generic_seq_new(_n, p->arena);
@@ -29525,14 +29774,14 @@ _loop0_141_rule(Parser *p)
}
for (int i = 0; i < _n; i++) asdl_seq_SET_UNTYPED(_seq, i, _children[i]);
PyMem_Free(_children);
- _PyPegen_insert_memo(p, _start_mark, _loop0_141_type, _seq);
+ _PyPegen_insert_memo(p, _start_mark, _loop0_142_type, _seq);
D(p->level--);
return _seq;
}
-// _gather_140: target _loop0_141
+// _gather_141: target _loop0_142
static asdl_seq *
-_gather_140_rule(Parser *p)
+_gather_141_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -29541,27 +29790,27 @@ _gather_140_rule(Parser *p)
}
asdl_seq * _res = NULL;
int _mark = p->mark;
- { // target _loop0_141
+ { // target _loop0_142
if (p->error_indicator) {
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _gather_140[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "target _loop0_141"));
+ D(fprintf(stderr, "%*c> _gather_141[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "target _loop0_142"));
expr_ty elem;
asdl_seq * seq;
if (
(elem = target_rule(p)) // target
&&
- (seq = _loop0_141_rule(p)) // _loop0_141
+ (seq = _loop0_142_rule(p)) // _loop0_142
)
{
- D(fprintf(stderr, "%*c+ _gather_140[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "target _loop0_141"));
+ D(fprintf(stderr, "%*c+ _gather_141[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "target _loop0_142"));
_res = _PyPegen_seq_insert_in_front(p, elem, seq);
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _gather_140[%d-%d]: %s failed!\n", p->level, ' ',
- p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "target _loop0_141"));
+ D(fprintf(stderr, "%*c%s _gather_141[%d-%d]: %s failed!\n", p->level, ' ',
+ p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "target _loop0_142"));
}
_res = NULL;
done:
@@ -29569,9 +29818,9 @@ _gather_140_rule(Parser *p)
return _res;
}
-// _tmp_142: args | expression for_if_clauses
+// _tmp_143: args | expression for_if_clauses
static void *
-_tmp_142_rule(Parser *p)
+_tmp_143_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -29585,18 +29834,18 @@ _tmp_142_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _tmp_142[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "args"));
+ D(fprintf(stderr, "%*c> _tmp_143[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "args"));
expr_ty args_var;
if (
(args_var = args_rule(p)) // args
)
{
- D(fprintf(stderr, "%*c+ _tmp_142[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "args"));
+ D(fprintf(stderr, "%*c+ _tmp_143[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "args"));
_res = args_var;
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _tmp_142[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _tmp_143[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "args"));
}
{ // expression for_if_clauses
@@ -29604,7 +29853,7 @@ _tmp_142_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _tmp_142[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "expression for_if_clauses"));
+ D(fprintf(stderr, "%*c> _tmp_143[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "expression for_if_clauses"));
expr_ty expression_var;
asdl_comprehension_seq* for_if_clauses_var;
if (
@@ -29613,12 +29862,12 @@ _tmp_142_rule(Parser *p)
(for_if_clauses_var = for_if_clauses_rule(p)) // for_if_clauses
)
{
- D(fprintf(stderr, "%*c+ _tmp_142[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "expression for_if_clauses"));
+ D(fprintf(stderr, "%*c+ _tmp_143[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "expression for_if_clauses"));
_res = _PyPegen_dummy_name(p, expression_var, for_if_clauses_var);
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _tmp_142[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _tmp_143[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "expression for_if_clauses"));
}
_res = NULL;
@@ -29627,9 +29876,48 @@ _tmp_142_rule(Parser *p)
return _res;
}
-// _tmp_143: NAME STRING | SOFT_KEYWORD
+// _tmp_144: NAME '='
static void *
-_tmp_143_rule(Parser *p)
+_tmp_144_rule(Parser *p)
+{
+ D(p->level++);
+ if (p->error_indicator) {
+ D(p->level--);
+ return NULL;
+ }
+ void * _res = NULL;
+ int _mark = p->mark;
+ { // NAME '='
+ if (p->error_indicator) {
+ D(p->level--);
+ return NULL;
+ }
+ D(fprintf(stderr, "%*c> _tmp_144[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "NAME '='"));
+ Token * _literal;
+ expr_ty name_var;
+ if (
+ (name_var = _PyPegen_name_token(p)) // NAME
+ &&
+ (_literal = _PyPegen_expect_token(p, 22)) // token='='
+ )
+ {
+ D(fprintf(stderr, "%*c+ _tmp_144[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "NAME '='"));
+ _res = _PyPegen_dummy_name(p, name_var, _literal);
+ goto done;
+ }
+ p->mark = _mark;
+ D(fprintf(stderr, "%*c%s _tmp_144[%d-%d]: %s failed!\n", p->level, ' ',
+ p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "NAME '='"));
+ }
+ _res = NULL;
+ done:
+ D(p->level--);
+ return _res;
+}
+
+// _tmp_145: NAME STRING | SOFT_KEYWORD
+static void *
+_tmp_145_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -29643,7 +29931,7 @@ _tmp_143_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _tmp_143[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "NAME STRING"));
+ D(fprintf(stderr, "%*c> _tmp_145[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "NAME STRING"));
expr_ty name_var;
expr_ty string_var;
if (
@@ -29652,12 +29940,12 @@ _tmp_143_rule(Parser *p)
(string_var = _PyPegen_string_token(p)) // STRING
)
{
- D(fprintf(stderr, "%*c+ _tmp_143[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "NAME STRING"));
+ D(fprintf(stderr, "%*c+ _tmp_145[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "NAME STRING"));
_res = _PyPegen_dummy_name(p, name_var, string_var);
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _tmp_143[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _tmp_145[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "NAME STRING"));
}
{ // SOFT_KEYWORD
@@ -29665,18 +29953,18 @@ _tmp_143_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _tmp_143[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "SOFT_KEYWORD"));
+ D(fprintf(stderr, "%*c> _tmp_145[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "SOFT_KEYWORD"));
expr_ty soft_keyword_var;
if (
(soft_keyword_var = _PyPegen_soft_keyword_token(p)) // SOFT_KEYWORD
)
{
- D(fprintf(stderr, "%*c+ _tmp_143[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "SOFT_KEYWORD"));
+ D(fprintf(stderr, "%*c+ _tmp_145[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "SOFT_KEYWORD"));
_res = soft_keyword_var;
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _tmp_143[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _tmp_145[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "SOFT_KEYWORD"));
}
_res = NULL;
@@ -29685,9 +29973,9 @@ _tmp_143_rule(Parser *p)
return _res;
}
-// _tmp_144: '=' | ':=' | ','
+// _tmp_146: '=' | ':='
static void *
-_tmp_144_rule(Parser *p)
+_tmp_146_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -29701,18 +29989,18 @@ _tmp_144_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _tmp_144[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'='"));
+ D(fprintf(stderr, "%*c> _tmp_146[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'='"));
Token * _literal;
if (
(_literal = _PyPegen_expect_token(p, 22)) // token='='
)
{
- D(fprintf(stderr, "%*c+ _tmp_144[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'='"));
+ D(fprintf(stderr, "%*c+ _tmp_146[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'='"));
_res = _literal;
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _tmp_144[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _tmp_146[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "'='"));
}
{ // ':='
@@ -29720,48 +30008,29 @@ _tmp_144_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _tmp_144[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "':='"));
+ D(fprintf(stderr, "%*c> _tmp_146[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "':='"));
Token * _literal;
if (
(_literal = _PyPegen_expect_token(p, 53)) // token=':='
)
{
- D(fprintf(stderr, "%*c+ _tmp_144[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "':='"));
+ D(fprintf(stderr, "%*c+ _tmp_146[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "':='"));
_res = _literal;
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _tmp_144[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _tmp_146[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "':='"));
}
- { // ','
- if (p->error_indicator) {
- D(p->level--);
- return NULL;
- }
- D(fprintf(stderr, "%*c> _tmp_144[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "','"));
- Token * _literal;
- if (
- (_literal = _PyPegen_expect_token(p, 12)) // token=','
- )
- {
- D(fprintf(stderr, "%*c+ _tmp_144[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "','"));
- _res = _literal;
- goto done;
- }
- p->mark = _mark;
- D(fprintf(stderr, "%*c%s _tmp_144[%d-%d]: %s failed!\n", p->level, ' ',
- p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "','"));
- }
_res = NULL;
done:
D(p->level--);
return _res;
}
-// _tmp_145: list | tuple | genexp | 'True' | 'None' | 'False'
+// _tmp_147: list | tuple | genexp | 'True' | 'None' | 'False'
static void *
-_tmp_145_rule(Parser *p)
+_tmp_147_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -29775,18 +30044,18 @@ _tmp_145_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _tmp_145[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "list"));
+ D(fprintf(stderr, "%*c> _tmp_147[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "list"));
expr_ty list_var;
if (
(list_var = list_rule(p)) // list
)
{
- D(fprintf(stderr, "%*c+ _tmp_145[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "list"));
+ D(fprintf(stderr, "%*c+ _tmp_147[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "list"));
_res = list_var;
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _tmp_145[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _tmp_147[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "list"));
}
{ // tuple
@@ -29794,18 +30063,18 @@ _tmp_145_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _tmp_145[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "tuple"));
+ D(fprintf(stderr, "%*c> _tmp_147[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "tuple"));
expr_ty tuple_var;
if (
(tuple_var = tuple_rule(p)) // tuple
)
{
- D(fprintf(stderr, "%*c+ _tmp_145[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "tuple"));
+ D(fprintf(stderr, "%*c+ _tmp_147[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "tuple"));
_res = tuple_var;
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _tmp_145[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _tmp_147[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "tuple"));
}
{ // genexp
@@ -29813,18 +30082,18 @@ _tmp_145_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _tmp_145[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "genexp"));
+ D(fprintf(stderr, "%*c> _tmp_147[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "genexp"));
expr_ty genexp_var;
if (
(genexp_var = genexp_rule(p)) // genexp
)
{
- D(fprintf(stderr, "%*c+ _tmp_145[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "genexp"));
+ D(fprintf(stderr, "%*c+ _tmp_147[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "genexp"));
_res = genexp_var;
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _tmp_145[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _tmp_147[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "genexp"));
}
{ // 'True'
@@ -29832,18 +30101,18 @@ _tmp_145_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _tmp_145[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'True'"));
+ D(fprintf(stderr, "%*c> _tmp_147[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'True'"));
Token * _keyword;
if (
(_keyword = _PyPegen_expect_token(p, 524)) // token='True'
)
{
- D(fprintf(stderr, "%*c+ _tmp_145[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'True'"));
+ D(fprintf(stderr, "%*c+ _tmp_147[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'True'"));
_res = _keyword;
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _tmp_145[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _tmp_147[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "'True'"));
}
{ // 'None'
@@ -29851,18 +30120,18 @@ _tmp_145_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _tmp_145[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'None'"));
+ D(fprintf(stderr, "%*c> _tmp_147[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'None'"));
Token * _keyword;
if (
(_keyword = _PyPegen_expect_token(p, 523)) // token='None'
)
{
- D(fprintf(stderr, "%*c+ _tmp_145[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'None'"));
+ D(fprintf(stderr, "%*c+ _tmp_147[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'None'"));
_res = _keyword;
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _tmp_145[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _tmp_147[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "'None'"));
}
{ // 'False'
@@ -29870,18 +30139,18 @@ _tmp_145_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _tmp_145[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'False'"));
+ D(fprintf(stderr, "%*c> _tmp_147[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'False'"));
Token * _keyword;
if (
(_keyword = _PyPegen_expect_token(p, 525)) // token='False'
)
{
- D(fprintf(stderr, "%*c+ _tmp_145[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'False'"));
+ D(fprintf(stderr, "%*c+ _tmp_147[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'False'"));
_res = _keyword;
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _tmp_145[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _tmp_147[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "'False'"));
}
_res = NULL;
@@ -29890,9 +30159,9 @@ _tmp_145_rule(Parser *p)
return _res;
}
-// _tmp_146: '=' | ':=' | ','
+// _tmp_148: '=' | ':='
static void *
-_tmp_146_rule(Parser *p)
+_tmp_148_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -29906,18 +30175,18 @@ _tmp_146_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _tmp_146[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'='"));
+ D(fprintf(stderr, "%*c> _tmp_148[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'='"));
Token * _literal;
if (
(_literal = _PyPegen_expect_token(p, 22)) // token='='
)
{
- D(fprintf(stderr, "%*c+ _tmp_146[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'='"));
+ D(fprintf(stderr, "%*c+ _tmp_148[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'='"));
_res = _literal;
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _tmp_146[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _tmp_148[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "'='"));
}
{ // ':='
@@ -29925,48 +30194,29 @@ _tmp_146_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _tmp_146[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "':='"));
+ D(fprintf(stderr, "%*c> _tmp_148[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "':='"));
Token * _literal;
if (
(_literal = _PyPegen_expect_token(p, 53)) // token=':='
)
{
- D(fprintf(stderr, "%*c+ _tmp_146[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "':='"));
+ D(fprintf(stderr, "%*c+ _tmp_148[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "':='"));
_res = _literal;
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _tmp_146[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _tmp_148[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "':='"));
}
- { // ','
- if (p->error_indicator) {
- D(p->level--);
- return NULL;
- }
- D(fprintf(stderr, "%*c> _tmp_146[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "','"));
- Token * _literal;
- if (
- (_literal = _PyPegen_expect_token(p, 12)) // token=','
- )
- {
- D(fprintf(stderr, "%*c+ _tmp_146[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "','"));
- _res = _literal;
- goto done;
- }
- p->mark = _mark;
- D(fprintf(stderr, "%*c%s _tmp_146[%d-%d]: %s failed!\n", p->level, ' ',
- p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "','"));
- }
_res = NULL;
done:
D(p->level--);
return _res;
}
-// _loop0_147: star_named_expressions
+// _loop0_149: star_named_expressions
static asdl_seq *
-_loop0_147_rule(Parser *p)
+_loop0_149_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -29990,7 +30240,7 @@ _loop0_147_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _loop0_147[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "star_named_expressions"));
+ D(fprintf(stderr, "%*c> _loop0_149[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "star_named_expressions"));
asdl_expr_seq* star_named_expressions_var;
while (
(star_named_expressions_var = star_named_expressions_rule(p)) // star_named_expressions
@@ -30012,7 +30262,7 @@ _loop0_147_rule(Parser *p)
_mark = p->mark;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _loop0_147[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _loop0_149[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "star_named_expressions"));
}
asdl_seq *_seq = (asdl_seq*)_Py_asdl_generic_seq_new(_n, p->arena);
@@ -30025,14 +30275,14 @@ _loop0_147_rule(Parser *p)
}
for (int i = 0; i < _n; i++) asdl_seq_SET_UNTYPED(_seq, i, _children[i]);
PyMem_Free(_children);
- _PyPegen_insert_memo(p, _start_mark, _loop0_147_type, _seq);
+ _PyPegen_insert_memo(p, _start_mark, _loop0_149_type, _seq);
D(p->level--);
return _seq;
}
-// _loop0_148: (star_targets '=')
+// _loop0_150: (star_targets '=')
static asdl_seq *
-_loop0_148_rule(Parser *p)
+_loop0_150_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -30056,13 +30306,13 @@ _loop0_148_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _loop0_148[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "(star_targets '=')"));
- void *_tmp_190_var;
+ D(fprintf(stderr, "%*c> _loop0_150[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "(star_targets '=')"));
+ void *_tmp_193_var;
while (
- (_tmp_190_var = _tmp_190_rule(p)) // star_targets '='
+ (_tmp_193_var = _tmp_193_rule(p)) // star_targets '='
)
{
- _res = _tmp_190_var;
+ _res = _tmp_193_var;
if (_n == _children_capacity) {
_children_capacity *= 2;
void **_new_children = PyMem_Realloc(_children, _children_capacity*sizeof(void *));
@@ -30078,7 +30328,7 @@ _loop0_148_rule(Parser *p)
_mark = p->mark;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _loop0_148[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _loop0_150[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "(star_targets '=')"));
}
asdl_seq *_seq = (asdl_seq*)_Py_asdl_generic_seq_new(_n, p->arena);
@@ -30091,14 +30341,14 @@ _loop0_148_rule(Parser *p)
}
for (int i = 0; i < _n; i++) asdl_seq_SET_UNTYPED(_seq, i, _children[i]);
PyMem_Free(_children);
- _PyPegen_insert_memo(p, _start_mark, _loop0_148_type, _seq);
+ _PyPegen_insert_memo(p, _start_mark, _loop0_150_type, _seq);
D(p->level--);
return _seq;
}
-// _loop0_149: (star_targets '=')
+// _loop0_151: (star_targets '=')
static asdl_seq *
-_loop0_149_rule(Parser *p)
+_loop0_151_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -30122,13 +30372,13 @@ _loop0_149_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _loop0_149[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "(star_targets '=')"));
- void *_tmp_191_var;
+ D(fprintf(stderr, "%*c> _loop0_151[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "(star_targets '=')"));
+ void *_tmp_194_var;
while (
- (_tmp_191_var = _tmp_191_rule(p)) // star_targets '='
+ (_tmp_194_var = _tmp_194_rule(p)) // star_targets '='
)
{
- _res = _tmp_191_var;
+ _res = _tmp_194_var;
if (_n == _children_capacity) {
_children_capacity *= 2;
void **_new_children = PyMem_Realloc(_children, _children_capacity*sizeof(void *));
@@ -30144,7 +30394,7 @@ _loop0_149_rule(Parser *p)
_mark = p->mark;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _loop0_149[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _loop0_151[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "(star_targets '=')"));
}
asdl_seq *_seq = (asdl_seq*)_Py_asdl_generic_seq_new(_n, p->arena);
@@ -30157,14 +30407,14 @@ _loop0_149_rule(Parser *p)
}
for (int i = 0; i < _n; i++) asdl_seq_SET_UNTYPED(_seq, i, _children[i]);
PyMem_Free(_children);
- _PyPegen_insert_memo(p, _start_mark, _loop0_149_type, _seq);
+ _PyPegen_insert_memo(p, _start_mark, _loop0_151_type, _seq);
D(p->level--);
return _seq;
}
-// _tmp_150: yield_expr | star_expressions
+// _tmp_152: yield_expr | star_expressions
static void *
-_tmp_150_rule(Parser *p)
+_tmp_152_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -30178,18 +30428,18 @@ _tmp_150_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _tmp_150[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "yield_expr"));
+ D(fprintf(stderr, "%*c> _tmp_152[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "yield_expr"));
expr_ty yield_expr_var;
if (
(yield_expr_var = yield_expr_rule(p)) // yield_expr
)
{
- D(fprintf(stderr, "%*c+ _tmp_150[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "yield_expr"));
+ D(fprintf(stderr, "%*c+ _tmp_152[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "yield_expr"));
_res = yield_expr_var;
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _tmp_150[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _tmp_152[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "yield_expr"));
}
{ // star_expressions
@@ -30197,18 +30447,18 @@ _tmp_150_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _tmp_150[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "star_expressions"));
+ D(fprintf(stderr, "%*c> _tmp_152[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "star_expressions"));
expr_ty star_expressions_var;
if (
(star_expressions_var = star_expressions_rule(p)) // star_expressions
)
{
- D(fprintf(stderr, "%*c+ _tmp_150[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "star_expressions"));
+ D(fprintf(stderr, "%*c+ _tmp_152[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "star_expressions"));
_res = star_expressions_var;
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _tmp_150[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _tmp_152[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "star_expressions"));
}
_res = NULL;
@@ -30217,9 +30467,9 @@ _tmp_150_rule(Parser *p)
return _res;
}
-// _tmp_151: '[' | '(' | '{'
+// _tmp_153: '[' | '(' | '{'
static void *
-_tmp_151_rule(Parser *p)
+_tmp_153_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -30233,18 +30483,18 @@ _tmp_151_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _tmp_151[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'['"));
+ D(fprintf(stderr, "%*c> _tmp_153[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'['"));
Token * _literal;
if (
(_literal = _PyPegen_expect_token(p, 9)) // token='['
)
{
- D(fprintf(stderr, "%*c+ _tmp_151[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'['"));
+ D(fprintf(stderr, "%*c+ _tmp_153[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'['"));
_res = _literal;
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _tmp_151[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _tmp_153[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "'['"));
}
{ // '('
@@ -30252,18 +30502,18 @@ _tmp_151_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _tmp_151[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'('"));
+ D(fprintf(stderr, "%*c> _tmp_153[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'('"));
Token * _literal;
if (
(_literal = _PyPegen_expect_token(p, 7)) // token='('
)
{
- D(fprintf(stderr, "%*c+ _tmp_151[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'('"));
+ D(fprintf(stderr, "%*c+ _tmp_153[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'('"));
_res = _literal;
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _tmp_151[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _tmp_153[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "'('"));
}
{ // '{'
@@ -30271,18 +30521,18 @@ _tmp_151_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _tmp_151[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'{'"));
+ D(fprintf(stderr, "%*c> _tmp_153[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'{'"));
Token * _literal;
if (
(_literal = _PyPegen_expect_token(p, 25)) // token='{'
)
{
- D(fprintf(stderr, "%*c+ _tmp_151[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'{'"));
+ D(fprintf(stderr, "%*c+ _tmp_153[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'{'"));
_res = _literal;
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _tmp_151[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _tmp_153[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "'{'"));
}
_res = NULL;
@@ -30291,9 +30541,9 @@ _tmp_151_rule(Parser *p)
return _res;
}
-// _tmp_152: '[' | '{'
+// _tmp_154: '[' | '{'
static void *
-_tmp_152_rule(Parser *p)
+_tmp_154_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -30307,18 +30557,18 @@ _tmp_152_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _tmp_152[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'['"));
+ D(fprintf(stderr, "%*c> _tmp_154[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'['"));
Token * _literal;
if (
(_literal = _PyPegen_expect_token(p, 9)) // token='['
)
{
- D(fprintf(stderr, "%*c+ _tmp_152[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'['"));
+ D(fprintf(stderr, "%*c+ _tmp_154[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'['"));
_res = _literal;
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _tmp_152[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _tmp_154[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "'['"));
}
{ // '{'
@@ -30326,18 +30576,18 @@ _tmp_152_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _tmp_152[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'{'"));
+ D(fprintf(stderr, "%*c> _tmp_154[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'{'"));
Token * _literal;
if (
(_literal = _PyPegen_expect_token(p, 25)) // token='{'
)
{
- D(fprintf(stderr, "%*c+ _tmp_152[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'{'"));
+ D(fprintf(stderr, "%*c+ _tmp_154[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'{'"));
_res = _literal;
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _tmp_152[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _tmp_154[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "'{'"));
}
_res = NULL;
@@ -30346,9 +30596,9 @@ _tmp_152_rule(Parser *p)
return _res;
}
-// _tmp_153: '[' | '{'
+// _tmp_155: '[' | '{'
static void *
-_tmp_153_rule(Parser *p)
+_tmp_155_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -30362,18 +30612,18 @@ _tmp_153_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _tmp_153[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'['"));
+ D(fprintf(stderr, "%*c> _tmp_155[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'['"));
Token * _literal;
if (
(_literal = _PyPegen_expect_token(p, 9)) // token='['
)
{
- D(fprintf(stderr, "%*c+ _tmp_153[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'['"));
+ D(fprintf(stderr, "%*c+ _tmp_155[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'['"));
_res = _literal;
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _tmp_153[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _tmp_155[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "'['"));
}
{ // '{'
@@ -30381,18 +30631,18 @@ _tmp_153_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _tmp_153[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'{'"));
+ D(fprintf(stderr, "%*c> _tmp_155[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'{'"));
Token * _literal;
if (
(_literal = _PyPegen_expect_token(p, 25)) // token='{'
)
{
- D(fprintf(stderr, "%*c+ _tmp_153[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'{'"));
+ D(fprintf(stderr, "%*c+ _tmp_155[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'{'"));
_res = _literal;
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _tmp_153[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _tmp_155[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "'{'"));
}
_res = NULL;
@@ -30401,9 +30651,9 @@ _tmp_153_rule(Parser *p)
return _res;
}
-// _loop0_154: param_no_default
+// _loop0_156: param_no_default
static asdl_seq *
-_loop0_154_rule(Parser *p)
+_loop0_156_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -30427,7 +30677,7 @@ _loop0_154_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _loop0_154[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "param_no_default"));
+ D(fprintf(stderr, "%*c> _loop0_156[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "param_no_default"));
arg_ty param_no_default_var;
while (
(param_no_default_var = param_no_default_rule(p)) // param_no_default
@@ -30449,7 +30699,7 @@ _loop0_154_rule(Parser *p)
_mark = p->mark;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _loop0_154[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _loop0_156[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "param_no_default"));
}
asdl_seq *_seq = (asdl_seq*)_Py_asdl_generic_seq_new(_n, p->arena);
@@ -30462,14 +30712,14 @@ _loop0_154_rule(Parser *p)
}
for (int i = 0; i < _n; i++) asdl_seq_SET_UNTYPED(_seq, i, _children[i]);
PyMem_Free(_children);
- _PyPegen_insert_memo(p, _start_mark, _loop0_154_type, _seq);
+ _PyPegen_insert_memo(p, _start_mark, _loop0_156_type, _seq);
D(p->level--);
return _seq;
}
-// _loop1_155: param_with_default
+// _loop1_157: param_with_default
static asdl_seq *
-_loop1_155_rule(Parser *p)
+_loop1_157_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -30493,7 +30743,7 @@ _loop1_155_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _loop1_155[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "param_with_default"));
+ D(fprintf(stderr, "%*c> _loop1_157[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "param_with_default"));
NameDefaultPair* param_with_default_var;
while (
(param_with_default_var = param_with_default_rule(p)) // param_with_default
@@ -30515,7 +30765,7 @@ _loop1_155_rule(Parser *p)
_mark = p->mark;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _loop1_155[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _loop1_157[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "param_with_default"));
}
if (_n == 0 || p->error_indicator) {
@@ -30533,14 +30783,14 @@ _loop1_155_rule(Parser *p)
}
for (int i = 0; i < _n; i++) asdl_seq_SET_UNTYPED(_seq, i, _children[i]);
PyMem_Free(_children);
- _PyPegen_insert_memo(p, _start_mark, _loop1_155_type, _seq);
+ _PyPegen_insert_memo(p, _start_mark, _loop1_157_type, _seq);
D(p->level--);
return _seq;
}
-// _loop0_156: lambda_param_no_default
+// _loop0_158: lambda_param_no_default
static asdl_seq *
-_loop0_156_rule(Parser *p)
+_loop0_158_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -30564,7 +30814,7 @@ _loop0_156_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _loop0_156[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "lambda_param_no_default"));
+ D(fprintf(stderr, "%*c> _loop0_158[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "lambda_param_no_default"));
arg_ty lambda_param_no_default_var;
while (
(lambda_param_no_default_var = lambda_param_no_default_rule(p)) // lambda_param_no_default
@@ -30586,7 +30836,7 @@ _loop0_156_rule(Parser *p)
_mark = p->mark;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _loop0_156[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _loop0_158[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "lambda_param_no_default"));
}
asdl_seq *_seq = (asdl_seq*)_Py_asdl_generic_seq_new(_n, p->arena);
@@ -30599,14 +30849,14 @@ _loop0_156_rule(Parser *p)
}
for (int i = 0; i < _n; i++) asdl_seq_SET_UNTYPED(_seq, i, _children[i]);
PyMem_Free(_children);
- _PyPegen_insert_memo(p, _start_mark, _loop0_156_type, _seq);
+ _PyPegen_insert_memo(p, _start_mark, _loop0_158_type, _seq);
D(p->level--);
return _seq;
}
-// _loop1_157: lambda_param_with_default
+// _loop1_159: lambda_param_with_default
static asdl_seq *
-_loop1_157_rule(Parser *p)
+_loop1_159_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -30630,7 +30880,7 @@ _loop1_157_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _loop1_157[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "lambda_param_with_default"));
+ D(fprintf(stderr, "%*c> _loop1_159[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "lambda_param_with_default"));
NameDefaultPair* lambda_param_with_default_var;
while (
(lambda_param_with_default_var = lambda_param_with_default_rule(p)) // lambda_param_with_default
@@ -30652,7 +30902,7 @@ _loop1_157_rule(Parser *p)
_mark = p->mark;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _loop1_157[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _loop1_159[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "lambda_param_with_default"));
}
if (_n == 0 || p->error_indicator) {
@@ -30670,14 +30920,14 @@ _loop1_157_rule(Parser *p)
}
for (int i = 0; i < _n; i++) asdl_seq_SET_UNTYPED(_seq, i, _children[i]);
PyMem_Free(_children);
- _PyPegen_insert_memo(p, _start_mark, _loop1_157_type, _seq);
+ _PyPegen_insert_memo(p, _start_mark, _loop1_159_type, _seq);
D(p->level--);
return _seq;
}
-// _tmp_158: ')' | ',' (')' | '**')
+// _tmp_160: ')' | ',' (')' | '**')
static void *
-_tmp_158_rule(Parser *p)
+_tmp_160_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -30691,18 +30941,18 @@ _tmp_158_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _tmp_158[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "')'"));
+ D(fprintf(stderr, "%*c> _tmp_160[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "')'"));
Token * _literal;
if (
(_literal = _PyPegen_expect_token(p, 8)) // token=')'
)
{
- D(fprintf(stderr, "%*c+ _tmp_158[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "')'"));
+ D(fprintf(stderr, "%*c+ _tmp_160[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "')'"));
_res = _literal;
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _tmp_158[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _tmp_160[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "')'"));
}
{ // ',' (')' | '**')
@@ -30710,21 +30960,21 @@ _tmp_158_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _tmp_158[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "',' (')' | '**')"));
+ D(fprintf(stderr, "%*c> _tmp_160[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "',' (')' | '**')"));
Token * _literal;
- void *_tmp_192_var;
+ void *_tmp_195_var;
if (
(_literal = _PyPegen_expect_token(p, 12)) // token=','
&&
- (_tmp_192_var = _tmp_192_rule(p)) // ')' | '**'
+ (_tmp_195_var = _tmp_195_rule(p)) // ')' | '**'
)
{
- D(fprintf(stderr, "%*c+ _tmp_158[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "',' (')' | '**')"));
- _res = _PyPegen_dummy_name(p, _literal, _tmp_192_var);
+ D(fprintf(stderr, "%*c+ _tmp_160[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "',' (')' | '**')"));
+ _res = _PyPegen_dummy_name(p, _literal, _tmp_195_var);
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _tmp_158[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _tmp_160[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "',' (')' | '**')"));
}
_res = NULL;
@@ -30733,9 +30983,9 @@ _tmp_158_rule(Parser *p)
return _res;
}
-// _tmp_159: ':' | ',' (':' | '**')
+// _tmp_161: ':' | ',' (':' | '**')
static void *
-_tmp_159_rule(Parser *p)
+_tmp_161_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -30749,18 +30999,18 @@ _tmp_159_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _tmp_159[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "':'"));
+ D(fprintf(stderr, "%*c> _tmp_161[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "':'"));
Token * _literal;
if (
(_literal = _PyPegen_expect_token(p, 11)) // token=':'
)
{
- D(fprintf(stderr, "%*c+ _tmp_159[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "':'"));
+ D(fprintf(stderr, "%*c+ _tmp_161[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "':'"));
_res = _literal;
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _tmp_159[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _tmp_161[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "':'"));
}
{ // ',' (':' | '**')
@@ -30768,21 +31018,21 @@ _tmp_159_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _tmp_159[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "',' (':' | '**')"));
+ D(fprintf(stderr, "%*c> _tmp_161[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "',' (':' | '**')"));
Token * _literal;
- void *_tmp_193_var;
+ void *_tmp_196_var;
if (
(_literal = _PyPegen_expect_token(p, 12)) // token=','
&&
- (_tmp_193_var = _tmp_193_rule(p)) // ':' | '**'
+ (_tmp_196_var = _tmp_196_rule(p)) // ':' | '**'
)
{
- D(fprintf(stderr, "%*c+ _tmp_159[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "',' (':' | '**')"));
- _res = _PyPegen_dummy_name(p, _literal, _tmp_193_var);
+ D(fprintf(stderr, "%*c+ _tmp_161[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "',' (':' | '**')"));
+ _res = _PyPegen_dummy_name(p, _literal, _tmp_196_var);
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _tmp_159[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _tmp_161[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "',' (':' | '**')"));
}
_res = NULL;
@@ -30791,9 +31041,9 @@ _tmp_159_rule(Parser *p)
return _res;
}
-// _tmp_160: ',' | ')' | ':'
+// _tmp_162: ',' | ')' | ':'
static void *
-_tmp_160_rule(Parser *p)
+_tmp_162_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -30807,18 +31057,18 @@ _tmp_160_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _tmp_160[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "','"));
+ D(fprintf(stderr, "%*c> _tmp_162[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "','"));
Token * _literal;
if (
(_literal = _PyPegen_expect_token(p, 12)) // token=','
)
{
- D(fprintf(stderr, "%*c+ _tmp_160[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "','"));
+ D(fprintf(stderr, "%*c+ _tmp_162[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "','"));
_res = _literal;
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _tmp_160[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _tmp_162[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "','"));
}
{ // ')'
@@ -30826,18 +31076,18 @@ _tmp_160_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _tmp_160[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "')'"));
+ D(fprintf(stderr, "%*c> _tmp_162[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "')'"));
Token * _literal;
if (
(_literal = _PyPegen_expect_token(p, 8)) // token=')'
)
{
- D(fprintf(stderr, "%*c+ _tmp_160[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "')'"));
+ D(fprintf(stderr, "%*c+ _tmp_162[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "')'"));
_res = _literal;
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _tmp_160[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _tmp_162[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "')'"));
}
{ // ':'
@@ -30845,18 +31095,18 @@ _tmp_160_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _tmp_160[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "':'"));
+ D(fprintf(stderr, "%*c> _tmp_162[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "':'"));
Token * _literal;
if (
(_literal = _PyPegen_expect_token(p, 11)) // token=':'
)
{
- D(fprintf(stderr, "%*c+ _tmp_160[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "':'"));
+ D(fprintf(stderr, "%*c+ _tmp_162[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "':'"));
_res = _literal;
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _tmp_160[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _tmp_162[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "':'"));
}
_res = NULL;
@@ -30865,9 +31115,9 @@ _tmp_160_rule(Parser *p)
return _res;
}
-// _loop0_162: ',' (expression ['as' star_target])
+// _loop0_164: ',' (expression ['as' star_target])
static asdl_seq *
-_loop0_162_rule(Parser *p)
+_loop0_164_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -30891,13 +31141,13 @@ _loop0_162_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _loop0_162[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "',' (expression ['as' star_target])"));
+ D(fprintf(stderr, "%*c> _loop0_164[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "',' (expression ['as' star_target])"));
Token * _literal;
void *elem;
while (
(_literal = _PyPegen_expect_token(p, 12)) // token=','
&&
- (elem = _tmp_194_rule(p)) // expression ['as' star_target]
+ (elem = _tmp_197_rule(p)) // expression ['as' star_target]
)
{
_res = elem;
@@ -30922,7 +31172,7 @@ _loop0_162_rule(Parser *p)
_mark = p->mark;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _loop0_162[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _loop0_164[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "',' (expression ['as' star_target])"));
}
asdl_seq *_seq = (asdl_seq*)_Py_asdl_generic_seq_new(_n, p->arena);
@@ -30935,14 +31185,14 @@ _loop0_162_rule(Parser *p)
}
for (int i = 0; i < _n; i++) asdl_seq_SET_UNTYPED(_seq, i, _children[i]);
PyMem_Free(_children);
- _PyPegen_insert_memo(p, _start_mark, _loop0_162_type, _seq);
+ _PyPegen_insert_memo(p, _start_mark, _loop0_164_type, _seq);
D(p->level--);
return _seq;
}
-// _gather_161: (expression ['as' star_target]) _loop0_162
+// _gather_163: (expression ['as' star_target]) _loop0_164
static asdl_seq *
-_gather_161_rule(Parser *p)
+_gather_163_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -30951,27 +31201,27 @@ _gather_161_rule(Parser *p)
}
asdl_seq * _res = NULL;
int _mark = p->mark;
- { // (expression ['as' star_target]) _loop0_162
+ { // (expression ['as' star_target]) _loop0_164
if (p->error_indicator) {
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _gather_161[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "(expression ['as' star_target]) _loop0_162"));
+ D(fprintf(stderr, "%*c> _gather_163[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "(expression ['as' star_target]) _loop0_164"));
void *elem;
asdl_seq * seq;
if (
- (elem = _tmp_194_rule(p)) // expression ['as' star_target]
+ (elem = _tmp_197_rule(p)) // expression ['as' star_target]
&&
- (seq = _loop0_162_rule(p)) // _loop0_162
+ (seq = _loop0_164_rule(p)) // _loop0_164
)
{
- D(fprintf(stderr, "%*c+ _gather_161[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "(expression ['as' star_target]) _loop0_162"));
+ D(fprintf(stderr, "%*c+ _gather_163[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "(expression ['as' star_target]) _loop0_164"));
_res = _PyPegen_seq_insert_in_front(p, elem, seq);
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _gather_161[%d-%d]: %s failed!\n", p->level, ' ',
- p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "(expression ['as' star_target]) _loop0_162"));
+ D(fprintf(stderr, "%*c%s _gather_163[%d-%d]: %s failed!\n", p->level, ' ',
+ p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "(expression ['as' star_target]) _loop0_164"));
}
_res = NULL;
done:
@@ -30979,9 +31229,9 @@ _gather_161_rule(Parser *p)
return _res;
}
-// _loop0_164: ',' (expressions ['as' star_target])
+// _loop0_166: ',' (expressions ['as' star_target])
static asdl_seq *
-_loop0_164_rule(Parser *p)
+_loop0_166_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -31005,13 +31255,13 @@ _loop0_164_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _loop0_164[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "',' (expressions ['as' star_target])"));
+ D(fprintf(stderr, "%*c> _loop0_166[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "',' (expressions ['as' star_target])"));
Token * _literal;
void *elem;
while (
(_literal = _PyPegen_expect_token(p, 12)) // token=','
&&
- (elem = _tmp_195_rule(p)) // expressions ['as' star_target]
+ (elem = _tmp_198_rule(p)) // expressions ['as' star_target]
)
{
_res = elem;
@@ -31036,7 +31286,7 @@ _loop0_164_rule(Parser *p)
_mark = p->mark;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _loop0_164[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _loop0_166[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "',' (expressions ['as' star_target])"));
}
asdl_seq *_seq = (asdl_seq*)_Py_asdl_generic_seq_new(_n, p->arena);
@@ -31049,14 +31299,14 @@ _loop0_164_rule(Parser *p)
}
for (int i = 0; i < _n; i++) asdl_seq_SET_UNTYPED(_seq, i, _children[i]);
PyMem_Free(_children);
- _PyPegen_insert_memo(p, _start_mark, _loop0_164_type, _seq);
+ _PyPegen_insert_memo(p, _start_mark, _loop0_166_type, _seq);
D(p->level--);
return _seq;
}
-// _gather_163: (expressions ['as' star_target]) _loop0_164
+// _gather_165: (expressions ['as' star_target]) _loop0_166
static asdl_seq *
-_gather_163_rule(Parser *p)
+_gather_165_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -31065,27 +31315,27 @@ _gather_163_rule(Parser *p)
}
asdl_seq * _res = NULL;
int _mark = p->mark;
- { // (expressions ['as' star_target]) _loop0_164
+ { // (expressions ['as' star_target]) _loop0_166
if (p->error_indicator) {
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _gather_163[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "(expressions ['as' star_target]) _loop0_164"));
+ D(fprintf(stderr, "%*c> _gather_165[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "(expressions ['as' star_target]) _loop0_166"));
void *elem;
asdl_seq * seq;
if (
- (elem = _tmp_195_rule(p)) // expressions ['as' star_target]
+ (elem = _tmp_198_rule(p)) // expressions ['as' star_target]
&&
- (seq = _loop0_164_rule(p)) // _loop0_164
+ (seq = _loop0_166_rule(p)) // _loop0_166
)
{
- D(fprintf(stderr, "%*c+ _gather_163[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "(expressions ['as' star_target]) _loop0_164"));
+ D(fprintf(stderr, "%*c+ _gather_165[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "(expressions ['as' star_target]) _loop0_166"));
_res = _PyPegen_seq_insert_in_front(p, elem, seq);
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _gather_163[%d-%d]: %s failed!\n", p->level, ' ',
- p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "(expressions ['as' star_target]) _loop0_164"));
+ D(fprintf(stderr, "%*c%s _gather_165[%d-%d]: %s failed!\n", p->level, ' ',
+ p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "(expressions ['as' star_target]) _loop0_166"));
}
_res = NULL;
done:
@@ -31093,9 +31343,9 @@ _gather_163_rule(Parser *p)
return _res;
}
-// _loop0_166: ',' (expression ['as' star_target])
+// _loop0_168: ',' (expression ['as' star_target])
static asdl_seq *
-_loop0_166_rule(Parser *p)
+_loop0_168_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -31119,13 +31369,13 @@ _loop0_166_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _loop0_166[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "',' (expression ['as' star_target])"));
+ D(fprintf(stderr, "%*c> _loop0_168[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "',' (expression ['as' star_target])"));
Token * _literal;
void *elem;
while (
(_literal = _PyPegen_expect_token(p, 12)) // token=','
&&
- (elem = _tmp_196_rule(p)) // expression ['as' star_target]
+ (elem = _tmp_199_rule(p)) // expression ['as' star_target]
)
{
_res = elem;
@@ -31150,7 +31400,7 @@ _loop0_166_rule(Parser *p)
_mark = p->mark;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _loop0_166[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _loop0_168[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "',' (expression ['as' star_target])"));
}
asdl_seq *_seq = (asdl_seq*)_Py_asdl_generic_seq_new(_n, p->arena);
@@ -31163,14 +31413,14 @@ _loop0_166_rule(Parser *p)
}
for (int i = 0; i < _n; i++) asdl_seq_SET_UNTYPED(_seq, i, _children[i]);
PyMem_Free(_children);
- _PyPegen_insert_memo(p, _start_mark, _loop0_166_type, _seq);
+ _PyPegen_insert_memo(p, _start_mark, _loop0_168_type, _seq);
D(p->level--);
return _seq;
}
-// _gather_165: (expression ['as' star_target]) _loop0_166
+// _gather_167: (expression ['as' star_target]) _loop0_168
static asdl_seq *
-_gather_165_rule(Parser *p)
+_gather_167_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -31179,27 +31429,27 @@ _gather_165_rule(Parser *p)
}
asdl_seq * _res = NULL;
int _mark = p->mark;
- { // (expression ['as' star_target]) _loop0_166
+ { // (expression ['as' star_target]) _loop0_168
if (p->error_indicator) {
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _gather_165[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "(expression ['as' star_target]) _loop0_166"));
+ D(fprintf(stderr, "%*c> _gather_167[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "(expression ['as' star_target]) _loop0_168"));
void *elem;
asdl_seq * seq;
if (
- (elem = _tmp_196_rule(p)) // expression ['as' star_target]
+ (elem = _tmp_199_rule(p)) // expression ['as' star_target]
&&
- (seq = _loop0_166_rule(p)) // _loop0_166
+ (seq = _loop0_168_rule(p)) // _loop0_168
)
{
- D(fprintf(stderr, "%*c+ _gather_165[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "(expression ['as' star_target]) _loop0_166"));
+ D(fprintf(stderr, "%*c+ _gather_167[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "(expression ['as' star_target]) _loop0_168"));
_res = _PyPegen_seq_insert_in_front(p, elem, seq);
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _gather_165[%d-%d]: %s failed!\n", p->level, ' ',
- p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "(expression ['as' star_target]) _loop0_166"));
+ D(fprintf(stderr, "%*c%s _gather_167[%d-%d]: %s failed!\n", p->level, ' ',
+ p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "(expression ['as' star_target]) _loop0_168"));
}
_res = NULL;
done:
@@ -31207,9 +31457,9 @@ _gather_165_rule(Parser *p)
return _res;
}
-// _loop0_168: ',' (expressions ['as' star_target])
+// _loop0_170: ',' (expressions ['as' star_target])
static asdl_seq *
-_loop0_168_rule(Parser *p)
+_loop0_170_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -31233,13 +31483,13 @@ _loop0_168_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _loop0_168[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "',' (expressions ['as' star_target])"));
+ D(fprintf(stderr, "%*c> _loop0_170[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "',' (expressions ['as' star_target])"));
Token * _literal;
void *elem;
while (
(_literal = _PyPegen_expect_token(p, 12)) // token=','
&&
- (elem = _tmp_197_rule(p)) // expressions ['as' star_target]
+ (elem = _tmp_200_rule(p)) // expressions ['as' star_target]
)
{
_res = elem;
@@ -31264,7 +31514,7 @@ _loop0_168_rule(Parser *p)
_mark = p->mark;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _loop0_168[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _loop0_170[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "',' (expressions ['as' star_target])"));
}
asdl_seq *_seq = (asdl_seq*)_Py_asdl_generic_seq_new(_n, p->arena);
@@ -31277,14 +31527,14 @@ _loop0_168_rule(Parser *p)
}
for (int i = 0; i < _n; i++) asdl_seq_SET_UNTYPED(_seq, i, _children[i]);
PyMem_Free(_children);
- _PyPegen_insert_memo(p, _start_mark, _loop0_168_type, _seq);
+ _PyPegen_insert_memo(p, _start_mark, _loop0_170_type, _seq);
D(p->level--);
return _seq;
}
-// _gather_167: (expressions ['as' star_target]) _loop0_168
+// _gather_169: (expressions ['as' star_target]) _loop0_170
static asdl_seq *
-_gather_167_rule(Parser *p)
+_gather_169_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -31293,27 +31543,27 @@ _gather_167_rule(Parser *p)
}
asdl_seq * _res = NULL;
int _mark = p->mark;
- { // (expressions ['as' star_target]) _loop0_168
+ { // (expressions ['as' star_target]) _loop0_170
if (p->error_indicator) {
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _gather_167[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "(expressions ['as' star_target]) _loop0_168"));
+ D(fprintf(stderr, "%*c> _gather_169[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "(expressions ['as' star_target]) _loop0_170"));
void *elem;
asdl_seq * seq;
if (
- (elem = _tmp_197_rule(p)) // expressions ['as' star_target]
+ (elem = _tmp_200_rule(p)) // expressions ['as' star_target]
&&
- (seq = _loop0_168_rule(p)) // _loop0_168
+ (seq = _loop0_170_rule(p)) // _loop0_170
)
{
- D(fprintf(stderr, "%*c+ _gather_167[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "(expressions ['as' star_target]) _loop0_168"));
+ D(fprintf(stderr, "%*c+ _gather_169[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "(expressions ['as' star_target]) _loop0_170"));
_res = _PyPegen_seq_insert_in_front(p, elem, seq);
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _gather_167[%d-%d]: %s failed!\n", p->level, ' ',
- p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "(expressions ['as' star_target]) _loop0_168"));
+ D(fprintf(stderr, "%*c%s _gather_169[%d-%d]: %s failed!\n", p->level, ' ',
+ p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "(expressions ['as' star_target]) _loop0_170"));
}
_res = NULL;
done:
@@ -31321,9 +31571,64 @@ _gather_167_rule(Parser *p)
return _res;
}
-// _tmp_169: 'as' NAME
+// _tmp_171: 'except' | 'finally'
static void *
-_tmp_169_rule(Parser *p)
+_tmp_171_rule(Parser *p)
+{
+ D(p->level++);
+ if (p->error_indicator) {
+ D(p->level--);
+ return NULL;
+ }
+ void * _res = NULL;
+ int _mark = p->mark;
+ { // 'except'
+ if (p->error_indicator) {
+ D(p->level--);
+ return NULL;
+ }
+ D(fprintf(stderr, "%*c> _tmp_171[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'except'"));
+ Token * _keyword;
+ if (
+ (_keyword = _PyPegen_expect_token(p, 521)) // token='except'
+ )
+ {
+ D(fprintf(stderr, "%*c+ _tmp_171[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'except'"));
+ _res = _keyword;
+ goto done;
+ }
+ p->mark = _mark;
+ D(fprintf(stderr, "%*c%s _tmp_171[%d-%d]: %s failed!\n", p->level, ' ',
+ p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "'except'"));
+ }
+ { // 'finally'
+ if (p->error_indicator) {
+ D(p->level--);
+ return NULL;
+ }
+ D(fprintf(stderr, "%*c> _tmp_171[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'finally'"));
+ Token * _keyword;
+ if (
+ (_keyword = _PyPegen_expect_token(p, 522)) // token='finally'
+ )
+ {
+ D(fprintf(stderr, "%*c+ _tmp_171[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'finally'"));
+ _res = _keyword;
+ goto done;
+ }
+ p->mark = _mark;
+ D(fprintf(stderr, "%*c%s _tmp_171[%d-%d]: %s failed!\n", p->level, ' ',
+ p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "'finally'"));
+ }
+ _res = NULL;
+ done:
+ D(p->level--);
+ return _res;
+}
+
+// _tmp_172: 'as' NAME
+static void *
+_tmp_172_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -31337,7 +31642,7 @@ _tmp_169_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _tmp_169[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'as' NAME"));
+ D(fprintf(stderr, "%*c> _tmp_172[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'as' NAME"));
Token * _keyword;
expr_ty name_var;
if (
@@ -31346,12 +31651,12 @@ _tmp_169_rule(Parser *p)
(name_var = _PyPegen_name_token(p)) // NAME
)
{
- D(fprintf(stderr, "%*c+ _tmp_169[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'as' NAME"));
+ D(fprintf(stderr, "%*c+ _tmp_172[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'as' NAME"));
_res = _PyPegen_dummy_name(p, _keyword, name_var);
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _tmp_169[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _tmp_172[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "'as' NAME"));
}
_res = NULL;
@@ -31360,9 +31665,9 @@ _tmp_169_rule(Parser *p)
return _res;
}
-// _tmp_170: 'as' NAME
+// _tmp_173: 'as' NAME
static void *
-_tmp_170_rule(Parser *p)
+_tmp_173_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -31376,7 +31681,7 @@ _tmp_170_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _tmp_170[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'as' NAME"));
+ D(fprintf(stderr, "%*c> _tmp_173[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'as' NAME"));
Token * _keyword;
expr_ty name_var;
if (
@@ -31385,12 +31690,12 @@ _tmp_170_rule(Parser *p)
(name_var = _PyPegen_name_token(p)) // NAME
)
{
- D(fprintf(stderr, "%*c+ _tmp_170[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'as' NAME"));
+ D(fprintf(stderr, "%*c+ _tmp_173[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'as' NAME"));
_res = _PyPegen_dummy_name(p, _keyword, name_var);
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _tmp_170[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _tmp_173[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "'as' NAME"));
}
_res = NULL;
@@ -31399,9 +31704,9 @@ _tmp_170_rule(Parser *p)
return _res;
}
-// _tmp_171: 'as' NAME
+// _tmp_174: 'as' NAME
static void *
-_tmp_171_rule(Parser *p)
+_tmp_174_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -31415,7 +31720,7 @@ _tmp_171_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _tmp_171[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'as' NAME"));
+ D(fprintf(stderr, "%*c> _tmp_174[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'as' NAME"));
Token * _keyword;
expr_ty name_var;
if (
@@ -31424,12 +31729,12 @@ _tmp_171_rule(Parser *p)
(name_var = _PyPegen_name_token(p)) // NAME
)
{
- D(fprintf(stderr, "%*c+ _tmp_171[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'as' NAME"));
+ D(fprintf(stderr, "%*c+ _tmp_174[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'as' NAME"));
_res = _PyPegen_dummy_name(p, _keyword, name_var);
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _tmp_171[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _tmp_174[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "'as' NAME"));
}
_res = NULL;
@@ -31438,9 +31743,9 @@ _tmp_171_rule(Parser *p)
return _res;
}
-// _tmp_172: '->' expression
+// _tmp_175: '->' expression
static void *
-_tmp_172_rule(Parser *p)
+_tmp_175_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -31454,7 +31759,7 @@ _tmp_172_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _tmp_172[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'->' expression"));
+ D(fprintf(stderr, "%*c> _tmp_175[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'->' expression"));
Token * _literal;
expr_ty expression_var;
if (
@@ -31463,12 +31768,12 @@ _tmp_172_rule(Parser *p)
(expression_var = expression_rule(p)) // expression
)
{
- D(fprintf(stderr, "%*c+ _tmp_172[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'->' expression"));
+ D(fprintf(stderr, "%*c+ _tmp_175[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'->' expression"));
_res = _PyPegen_dummy_name(p, _literal, expression_var);
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _tmp_172[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _tmp_175[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "'->' expression"));
}
_res = NULL;
@@ -31477,9 +31782,9 @@ _tmp_172_rule(Parser *p)
return _res;
}
-// _tmp_173: '(' arguments? ')'
+// _tmp_176: '(' arguments? ')'
static void *
-_tmp_173_rule(Parser *p)
+_tmp_176_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -31493,7 +31798,7 @@ _tmp_173_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _tmp_173[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'(' arguments? ')'"));
+ D(fprintf(stderr, "%*c> _tmp_176[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'(' arguments? ')'"));
Token * _literal;
Token * _literal_1;
void *_opt_var;
@@ -31506,12 +31811,12 @@ _tmp_173_rule(Parser *p)
(_literal_1 = _PyPegen_expect_token(p, 8)) // token=')'
)
{
- D(fprintf(stderr, "%*c+ _tmp_173[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'(' arguments? ')'"));
+ D(fprintf(stderr, "%*c+ _tmp_176[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'(' arguments? ')'"));
_res = _PyPegen_dummy_name(p, _literal, _opt_var, _literal_1);
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _tmp_173[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _tmp_176[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "'(' arguments? ')'"));
}
_res = NULL;
@@ -31520,9 +31825,9 @@ _tmp_173_rule(Parser *p)
return _res;
}
-// _loop0_175: ',' double_starred_kvpair
+// _loop0_178: ',' double_starred_kvpair
static asdl_seq *
-_loop0_175_rule(Parser *p)
+_loop0_178_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -31546,7 +31851,7 @@ _loop0_175_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _loop0_175[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "',' double_starred_kvpair"));
+ D(fprintf(stderr, "%*c> _loop0_178[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "',' double_starred_kvpair"));
Token * _literal;
KeyValuePair* elem;
while (
@@ -31577,7 +31882,7 @@ _loop0_175_rule(Parser *p)
_mark = p->mark;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _loop0_175[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _loop0_178[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "',' double_starred_kvpair"));
}
asdl_seq *_seq = (asdl_seq*)_Py_asdl_generic_seq_new(_n, p->arena);
@@ -31590,14 +31895,14 @@ _loop0_175_rule(Parser *p)
}
for (int i = 0; i < _n; i++) asdl_seq_SET_UNTYPED(_seq, i, _children[i]);
PyMem_Free(_children);
- _PyPegen_insert_memo(p, _start_mark, _loop0_175_type, _seq);
+ _PyPegen_insert_memo(p, _start_mark, _loop0_178_type, _seq);
D(p->level--);
return _seq;
}
-// _gather_174: double_starred_kvpair _loop0_175
+// _gather_177: double_starred_kvpair _loop0_178
static asdl_seq *
-_gather_174_rule(Parser *p)
+_gather_177_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -31606,27 +31911,27 @@ _gather_174_rule(Parser *p)
}
asdl_seq * _res = NULL;
int _mark = p->mark;
- { // double_starred_kvpair _loop0_175
+ { // double_starred_kvpair _loop0_178
if (p->error_indicator) {
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _gather_174[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "double_starred_kvpair _loop0_175"));
+ D(fprintf(stderr, "%*c> _gather_177[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "double_starred_kvpair _loop0_178"));
KeyValuePair* elem;
asdl_seq * seq;
if (
(elem = double_starred_kvpair_rule(p)) // double_starred_kvpair
&&
- (seq = _loop0_175_rule(p)) // _loop0_175
+ (seq = _loop0_178_rule(p)) // _loop0_178
)
{
- D(fprintf(stderr, "%*c+ _gather_174[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "double_starred_kvpair _loop0_175"));
+ D(fprintf(stderr, "%*c+ _gather_177[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "double_starred_kvpair _loop0_178"));
_res = _PyPegen_seq_insert_in_front(p, elem, seq);
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _gather_174[%d-%d]: %s failed!\n", p->level, ' ',
- p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "double_starred_kvpair _loop0_175"));
+ D(fprintf(stderr, "%*c%s _gather_177[%d-%d]: %s failed!\n", p->level, ' ',
+ p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "double_starred_kvpair _loop0_178"));
}
_res = NULL;
done:
@@ -31634,9 +31939,9 @@ _gather_174_rule(Parser *p)
return _res;
}
-// _tmp_176: '}' | ','
+// _tmp_179: '}' | ','
static void *
-_tmp_176_rule(Parser *p)
+_tmp_179_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -31650,18 +31955,18 @@ _tmp_176_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _tmp_176[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'}'"));
+ D(fprintf(stderr, "%*c> _tmp_179[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'}'"));
Token * _literal;
if (
(_literal = _PyPegen_expect_token(p, 26)) // token='}'
)
{
- D(fprintf(stderr, "%*c+ _tmp_176[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'}'"));
+ D(fprintf(stderr, "%*c+ _tmp_179[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'}'"));
_res = _literal;
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _tmp_176[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _tmp_179[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "'}'"));
}
{ // ','
@@ -31669,18 +31974,18 @@ _tmp_176_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _tmp_176[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "','"));
+ D(fprintf(stderr, "%*c> _tmp_179[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "','"));
Token * _literal;
if (
(_literal = _PyPegen_expect_token(p, 12)) // token=','
)
{
- D(fprintf(stderr, "%*c+ _tmp_176[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "','"));
+ D(fprintf(stderr, "%*c+ _tmp_179[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "','"));
_res = _literal;
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _tmp_176[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _tmp_179[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "','"));
}
_res = NULL;
@@ -31689,9 +31994,9 @@ _tmp_176_rule(Parser *p)
return _res;
}
-// _tmp_177: star_targets '='
+// _tmp_180: star_targets '='
static void *
-_tmp_177_rule(Parser *p)
+_tmp_180_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -31705,7 +32010,7 @@ _tmp_177_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _tmp_177[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "star_targets '='"));
+ D(fprintf(stderr, "%*c> _tmp_180[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "star_targets '='"));
Token * _literal;
expr_ty z;
if (
@@ -31714,7 +32019,7 @@ _tmp_177_rule(Parser *p)
(_literal = _PyPegen_expect_token(p, 22)) // token='='
)
{
- D(fprintf(stderr, "%*c+ _tmp_177[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "star_targets '='"));
+ D(fprintf(stderr, "%*c+ _tmp_180[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "star_targets '='"));
_res = z;
if (_res == NULL && PyErr_Occurred()) {
p->error_indicator = 1;
@@ -31724,7 +32029,7 @@ _tmp_177_rule(Parser *p)
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _tmp_177[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _tmp_180[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "star_targets '='"));
}
_res = NULL;
@@ -31733,9 +32038,9 @@ _tmp_177_rule(Parser *p)
return _res;
}
-// _tmp_178: '.' | '...'
+// _tmp_181: '.' | '...'
static void *
-_tmp_178_rule(Parser *p)
+_tmp_181_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -31749,18 +32054,18 @@ _tmp_178_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _tmp_178[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'.'"));
+ D(fprintf(stderr, "%*c> _tmp_181[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'.'"));
Token * _literal;
if (
(_literal = _PyPegen_expect_token(p, 23)) // token='.'
)
{
- D(fprintf(stderr, "%*c+ _tmp_178[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'.'"));
+ D(fprintf(stderr, "%*c+ _tmp_181[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'.'"));
_res = _literal;
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _tmp_178[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _tmp_181[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "'.'"));
}
{ // '...'
@@ -31768,18 +32073,18 @@ _tmp_178_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _tmp_178[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'...'"));
+ D(fprintf(stderr, "%*c> _tmp_181[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'...'"));
Token * _literal;
if (
(_literal = _PyPegen_expect_token(p, 52)) // token='...'
)
{
- D(fprintf(stderr, "%*c+ _tmp_178[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'...'"));
+ D(fprintf(stderr, "%*c+ _tmp_181[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'...'"));
_res = _literal;
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _tmp_178[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _tmp_181[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "'...'"));
}
_res = NULL;
@@ -31788,9 +32093,9 @@ _tmp_178_rule(Parser *p)
return _res;
}
-// _tmp_179: '.' | '...'
+// _tmp_182: '.' | '...'
static void *
-_tmp_179_rule(Parser *p)
+_tmp_182_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -31804,18 +32109,18 @@ _tmp_179_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _tmp_179[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'.'"));
+ D(fprintf(stderr, "%*c> _tmp_182[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'.'"));
Token * _literal;
if (
(_literal = _PyPegen_expect_token(p, 23)) // token='.'
)
{
- D(fprintf(stderr, "%*c+ _tmp_179[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'.'"));
+ D(fprintf(stderr, "%*c+ _tmp_182[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'.'"));
_res = _literal;
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _tmp_179[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _tmp_182[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "'.'"));
}
{ // '...'
@@ -31823,18 +32128,18 @@ _tmp_179_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _tmp_179[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'...'"));
+ D(fprintf(stderr, "%*c> _tmp_182[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'...'"));
Token * _literal;
if (
(_literal = _PyPegen_expect_token(p, 52)) // token='...'
)
{
- D(fprintf(stderr, "%*c+ _tmp_179[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'...'"));
+ D(fprintf(stderr, "%*c+ _tmp_182[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'...'"));
_res = _literal;
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _tmp_179[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _tmp_182[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "'...'"));
}
_res = NULL;
@@ -31843,9 +32148,9 @@ _tmp_179_rule(Parser *p)
return _res;
}
-// _tmp_180: '@' named_expression NEWLINE
+// _tmp_183: '@' named_expression NEWLINE
static void *
-_tmp_180_rule(Parser *p)
+_tmp_183_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -31859,7 +32164,7 @@ _tmp_180_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _tmp_180[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'@' named_expression NEWLINE"));
+ D(fprintf(stderr, "%*c> _tmp_183[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'@' named_expression NEWLINE"));
Token * _literal;
expr_ty f;
Token * newline_var;
@@ -31871,7 +32176,7 @@ _tmp_180_rule(Parser *p)
(newline_var = _PyPegen_expect_token(p, NEWLINE)) // token='NEWLINE'
)
{
- D(fprintf(stderr, "%*c+ _tmp_180[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'@' named_expression NEWLINE"));
+ D(fprintf(stderr, "%*c+ _tmp_183[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'@' named_expression NEWLINE"));
_res = f;
if (_res == NULL && PyErr_Occurred()) {
p->error_indicator = 1;
@@ -31881,7 +32186,7 @@ _tmp_180_rule(Parser *p)
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _tmp_180[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _tmp_183[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "'@' named_expression NEWLINE"));
}
_res = NULL;
@@ -31890,9 +32195,9 @@ _tmp_180_rule(Parser *p)
return _res;
}
-// _tmp_181: ',' star_expression
+// _tmp_184: ',' star_expression
static void *
-_tmp_181_rule(Parser *p)
+_tmp_184_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -31906,7 +32211,7 @@ _tmp_181_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _tmp_181[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "',' star_expression"));
+ D(fprintf(stderr, "%*c> _tmp_184[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "',' star_expression"));
Token * _literal;
expr_ty c;
if (
@@ -31915,7 +32220,7 @@ _tmp_181_rule(Parser *p)
(c = star_expression_rule(p)) // star_expression
)
{
- D(fprintf(stderr, "%*c+ _tmp_181[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "',' star_expression"));
+ D(fprintf(stderr, "%*c+ _tmp_184[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "',' star_expression"));
_res = c;
if (_res == NULL && PyErr_Occurred()) {
p->error_indicator = 1;
@@ -31925,7 +32230,7 @@ _tmp_181_rule(Parser *p)
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _tmp_181[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _tmp_184[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "',' star_expression"));
}
_res = NULL;
@@ -31934,9 +32239,9 @@ _tmp_181_rule(Parser *p)
return _res;
}
-// _tmp_182: ',' expression
+// _tmp_185: ',' expression
static void *
-_tmp_182_rule(Parser *p)
+_tmp_185_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -31950,7 +32255,7 @@ _tmp_182_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _tmp_182[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "',' expression"));
+ D(fprintf(stderr, "%*c> _tmp_185[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "',' expression"));
Token * _literal;
expr_ty c;
if (
@@ -31959,7 +32264,7 @@ _tmp_182_rule(Parser *p)
(c = expression_rule(p)) // expression
)
{
- D(fprintf(stderr, "%*c+ _tmp_182[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "',' expression"));
+ D(fprintf(stderr, "%*c+ _tmp_185[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "',' expression"));
_res = c;
if (_res == NULL && PyErr_Occurred()) {
p->error_indicator = 1;
@@ -31969,7 +32274,7 @@ _tmp_182_rule(Parser *p)
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _tmp_182[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _tmp_185[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "',' expression"));
}
_res = NULL;
@@ -31978,9 +32283,9 @@ _tmp_182_rule(Parser *p)
return _res;
}
-// _tmp_183: 'or' conjunction
+// _tmp_186: 'or' conjunction
static void *
-_tmp_183_rule(Parser *p)
+_tmp_186_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -31994,7 +32299,7 @@ _tmp_183_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _tmp_183[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'or' conjunction"));
+ D(fprintf(stderr, "%*c> _tmp_186[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'or' conjunction"));
Token * _keyword;
expr_ty c;
if (
@@ -32003,7 +32308,7 @@ _tmp_183_rule(Parser *p)
(c = conjunction_rule(p)) // conjunction
)
{
- D(fprintf(stderr, "%*c+ _tmp_183[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'or' conjunction"));
+ D(fprintf(stderr, "%*c+ _tmp_186[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'or' conjunction"));
_res = c;
if (_res == NULL && PyErr_Occurred()) {
p->error_indicator = 1;
@@ -32013,7 +32318,7 @@ _tmp_183_rule(Parser *p)
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _tmp_183[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _tmp_186[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "'or' conjunction"));
}
_res = NULL;
@@ -32022,9 +32327,9 @@ _tmp_183_rule(Parser *p)
return _res;
}
-// _tmp_184: 'and' inversion
+// _tmp_187: 'and' inversion
static void *
-_tmp_184_rule(Parser *p)
+_tmp_187_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -32038,7 +32343,7 @@ _tmp_184_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _tmp_184[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'and' inversion"));
+ D(fprintf(stderr, "%*c> _tmp_187[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'and' inversion"));
Token * _keyword;
expr_ty c;
if (
@@ -32047,7 +32352,7 @@ _tmp_184_rule(Parser *p)
(c = inversion_rule(p)) // inversion
)
{
- D(fprintf(stderr, "%*c+ _tmp_184[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'and' inversion"));
+ D(fprintf(stderr, "%*c+ _tmp_187[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'and' inversion"));
_res = c;
if (_res == NULL && PyErr_Occurred()) {
p->error_indicator = 1;
@@ -32057,7 +32362,7 @@ _tmp_184_rule(Parser *p)
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _tmp_184[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _tmp_187[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "'and' inversion"));
}
_res = NULL;
@@ -32066,9 +32371,9 @@ _tmp_184_rule(Parser *p)
return _res;
}
-// _tmp_185: 'if' disjunction
+// _tmp_188: 'if' disjunction
static void *
-_tmp_185_rule(Parser *p)
+_tmp_188_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -32082,7 +32387,7 @@ _tmp_185_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _tmp_185[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'if' disjunction"));
+ D(fprintf(stderr, "%*c> _tmp_188[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'if' disjunction"));
Token * _keyword;
expr_ty z;
if (
@@ -32091,7 +32396,7 @@ _tmp_185_rule(Parser *p)
(z = disjunction_rule(p)) // disjunction
)
{
- D(fprintf(stderr, "%*c+ _tmp_185[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'if' disjunction"));
+ D(fprintf(stderr, "%*c+ _tmp_188[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'if' disjunction"));
_res = z;
if (_res == NULL && PyErr_Occurred()) {
p->error_indicator = 1;
@@ -32101,7 +32406,7 @@ _tmp_185_rule(Parser *p)
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _tmp_185[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _tmp_188[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "'if' disjunction"));
}
_res = NULL;
@@ -32110,9 +32415,9 @@ _tmp_185_rule(Parser *p)
return _res;
}
-// _tmp_186: 'if' disjunction
+// _tmp_189: 'if' disjunction
static void *
-_tmp_186_rule(Parser *p)
+_tmp_189_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -32126,7 +32431,7 @@ _tmp_186_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _tmp_186[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'if' disjunction"));
+ D(fprintf(stderr, "%*c> _tmp_189[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'if' disjunction"));
Token * _keyword;
expr_ty z;
if (
@@ -32135,7 +32440,7 @@ _tmp_186_rule(Parser *p)
(z = disjunction_rule(p)) // disjunction
)
{
- D(fprintf(stderr, "%*c+ _tmp_186[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'if' disjunction"));
+ D(fprintf(stderr, "%*c+ _tmp_189[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'if' disjunction"));
_res = z;
if (_res == NULL && PyErr_Occurred()) {
p->error_indicator = 1;
@@ -32145,7 +32450,7 @@ _tmp_186_rule(Parser *p)
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _tmp_186[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _tmp_189[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "'if' disjunction"));
}
_res = NULL;
@@ -32154,9 +32459,9 @@ _tmp_186_rule(Parser *p)
return _res;
}
-// _tmp_187: starred_expression | direct_named_expression !'='
+// _tmp_190: starred_expression | (assigment_expression | expression !':=') !'='
static void *
-_tmp_187_rule(Parser *p)
+_tmp_190_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -32170,40 +32475,40 @@ _tmp_187_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _tmp_187[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "starred_expression"));
+ D(fprintf(stderr, "%*c> _tmp_190[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "starred_expression"));
expr_ty starred_expression_var;
if (
(starred_expression_var = starred_expression_rule(p)) // starred_expression
)
{
- D(fprintf(stderr, "%*c+ _tmp_187[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "starred_expression"));
+ D(fprintf(stderr, "%*c+ _tmp_190[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "starred_expression"));
_res = starred_expression_var;
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _tmp_187[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _tmp_190[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "starred_expression"));
}
- { // direct_named_expression !'='
+ { // (assigment_expression | expression !':=') !'='
if (p->error_indicator) {
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _tmp_187[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "direct_named_expression !'='"));
- expr_ty direct_named_expression_var;
+ D(fprintf(stderr, "%*c> _tmp_190[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "(assigment_expression | expression !':=') !'='"));
+ void *_tmp_201_var;
if (
- (direct_named_expression_var = direct_named_expression_rule(p)) // direct_named_expression
+ (_tmp_201_var = _tmp_201_rule(p)) // assigment_expression | expression !':='
&&
_PyPegen_lookahead_with_int(0, _PyPegen_expect_token, p, 22) // token='='
)
{
- D(fprintf(stderr, "%*c+ _tmp_187[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "direct_named_expression !'='"));
- _res = direct_named_expression_var;
+ D(fprintf(stderr, "%*c+ _tmp_190[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "(assigment_expression | expression !':=') !'='"));
+ _res = _tmp_201_var;
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _tmp_187[%d-%d]: %s failed!\n", p->level, ' ',
- p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "direct_named_expression !'='"));
+ D(fprintf(stderr, "%*c%s _tmp_190[%d-%d]: %s failed!\n", p->level, ' ',
+ p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "(assigment_expression | expression !':=') !'='"));
}
_res = NULL;
done:
@@ -32211,9 +32516,9 @@ _tmp_187_rule(Parser *p)
return _res;
}
-// _tmp_188: ',' star_target
+// _tmp_191: ',' star_target
static void *
-_tmp_188_rule(Parser *p)
+_tmp_191_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -32227,7 +32532,7 @@ _tmp_188_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _tmp_188[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "',' star_target"));
+ D(fprintf(stderr, "%*c> _tmp_191[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "',' star_target"));
Token * _literal;
expr_ty c;
if (
@@ -32236,7 +32541,7 @@ _tmp_188_rule(Parser *p)
(c = star_target_rule(p)) // star_target
)
{
- D(fprintf(stderr, "%*c+ _tmp_188[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "',' star_target"));
+ D(fprintf(stderr, "%*c+ _tmp_191[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "',' star_target"));
_res = c;
if (_res == NULL && PyErr_Occurred()) {
p->error_indicator = 1;
@@ -32246,7 +32551,7 @@ _tmp_188_rule(Parser *p)
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _tmp_188[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _tmp_191[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "',' star_target"));
}
_res = NULL;
@@ -32255,9 +32560,9 @@ _tmp_188_rule(Parser *p)
return _res;
}
-// _tmp_189: ',' star_target
+// _tmp_192: ',' star_target
static void *
-_tmp_189_rule(Parser *p)
+_tmp_192_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -32271,7 +32576,7 @@ _tmp_189_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _tmp_189[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "',' star_target"));
+ D(fprintf(stderr, "%*c> _tmp_192[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "',' star_target"));
Token * _literal;
expr_ty c;
if (
@@ -32280,7 +32585,7 @@ _tmp_189_rule(Parser *p)
(c = star_target_rule(p)) // star_target
)
{
- D(fprintf(stderr, "%*c+ _tmp_189[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "',' star_target"));
+ D(fprintf(stderr, "%*c+ _tmp_192[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "',' star_target"));
_res = c;
if (_res == NULL && PyErr_Occurred()) {
p->error_indicator = 1;
@@ -32290,7 +32595,7 @@ _tmp_189_rule(Parser *p)
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _tmp_189[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _tmp_192[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "',' star_target"));
}
_res = NULL;
@@ -32299,9 +32604,9 @@ _tmp_189_rule(Parser *p)
return _res;
}
-// _tmp_190: star_targets '='
+// _tmp_193: star_targets '='
static void *
-_tmp_190_rule(Parser *p)
+_tmp_193_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -32315,7 +32620,7 @@ _tmp_190_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _tmp_190[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "star_targets '='"));
+ D(fprintf(stderr, "%*c> _tmp_193[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "star_targets '='"));
Token * _literal;
expr_ty star_targets_var;
if (
@@ -32324,12 +32629,12 @@ _tmp_190_rule(Parser *p)
(_literal = _PyPegen_expect_token(p, 22)) // token='='
)
{
- D(fprintf(stderr, "%*c+ _tmp_190[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "star_targets '='"));
+ D(fprintf(stderr, "%*c+ _tmp_193[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "star_targets '='"));
_res = _PyPegen_dummy_name(p, star_targets_var, _literal);
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _tmp_190[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _tmp_193[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "star_targets '='"));
}
_res = NULL;
@@ -32338,9 +32643,9 @@ _tmp_190_rule(Parser *p)
return _res;
}
-// _tmp_191: star_targets '='
+// _tmp_194: star_targets '='
static void *
-_tmp_191_rule(Parser *p)
+_tmp_194_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -32354,7 +32659,7 @@ _tmp_191_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _tmp_191[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "star_targets '='"));
+ D(fprintf(stderr, "%*c> _tmp_194[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "star_targets '='"));
Token * _literal;
expr_ty star_targets_var;
if (
@@ -32363,12 +32668,12 @@ _tmp_191_rule(Parser *p)
(_literal = _PyPegen_expect_token(p, 22)) // token='='
)
{
- D(fprintf(stderr, "%*c+ _tmp_191[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "star_targets '='"));
+ D(fprintf(stderr, "%*c+ _tmp_194[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "star_targets '='"));
_res = _PyPegen_dummy_name(p, star_targets_var, _literal);
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _tmp_191[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _tmp_194[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "star_targets '='"));
}
_res = NULL;
@@ -32377,9 +32682,9 @@ _tmp_191_rule(Parser *p)
return _res;
}
-// _tmp_192: ')' | '**'
+// _tmp_195: ')' | '**'
static void *
-_tmp_192_rule(Parser *p)
+_tmp_195_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -32393,18 +32698,18 @@ _tmp_192_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _tmp_192[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "')'"));
+ D(fprintf(stderr, "%*c> _tmp_195[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "')'"));
Token * _literal;
if (
(_literal = _PyPegen_expect_token(p, 8)) // token=')'
)
{
- D(fprintf(stderr, "%*c+ _tmp_192[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "')'"));
+ D(fprintf(stderr, "%*c+ _tmp_195[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "')'"));
_res = _literal;
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _tmp_192[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _tmp_195[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "')'"));
}
{ // '**'
@@ -32412,18 +32717,18 @@ _tmp_192_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _tmp_192[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'**'"));
+ D(fprintf(stderr, "%*c> _tmp_195[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'**'"));
Token * _literal;
if (
(_literal = _PyPegen_expect_token(p, 35)) // token='**'
)
{
- D(fprintf(stderr, "%*c+ _tmp_192[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'**'"));
+ D(fprintf(stderr, "%*c+ _tmp_195[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'**'"));
_res = _literal;
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _tmp_192[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _tmp_195[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "'**'"));
}
_res = NULL;
@@ -32432,9 +32737,9 @@ _tmp_192_rule(Parser *p)
return _res;
}
-// _tmp_193: ':' | '**'
+// _tmp_196: ':' | '**'
static void *
-_tmp_193_rule(Parser *p)
+_tmp_196_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -32448,18 +32753,18 @@ _tmp_193_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _tmp_193[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "':'"));
+ D(fprintf(stderr, "%*c> _tmp_196[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "':'"));
Token * _literal;
if (
(_literal = _PyPegen_expect_token(p, 11)) // token=':'
)
{
- D(fprintf(stderr, "%*c+ _tmp_193[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "':'"));
+ D(fprintf(stderr, "%*c+ _tmp_196[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "':'"));
_res = _literal;
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _tmp_193[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _tmp_196[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "':'"));
}
{ // '**'
@@ -32467,18 +32772,18 @@ _tmp_193_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _tmp_193[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'**'"));
+ D(fprintf(stderr, "%*c> _tmp_196[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'**'"));
Token * _literal;
if (
(_literal = _PyPegen_expect_token(p, 35)) // token='**'
)
{
- D(fprintf(stderr, "%*c+ _tmp_193[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'**'"));
+ D(fprintf(stderr, "%*c+ _tmp_196[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'**'"));
_res = _literal;
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _tmp_193[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _tmp_196[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "'**'"));
}
_res = NULL;
@@ -32487,9 +32792,9 @@ _tmp_193_rule(Parser *p)
return _res;
}
-// _tmp_194: expression ['as' star_target]
+// _tmp_197: expression ['as' star_target]
static void *
-_tmp_194_rule(Parser *p)
+_tmp_197_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -32503,22 +32808,22 @@ _tmp_194_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _tmp_194[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "expression ['as' star_target]"));
+ D(fprintf(stderr, "%*c> _tmp_197[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "expression ['as' star_target]"));
void *_opt_var;
UNUSED(_opt_var); // Silence compiler warnings
expr_ty expression_var;
if (
(expression_var = expression_rule(p)) // expression
&&
- (_opt_var = _tmp_198_rule(p), 1) // ['as' star_target]
+ (_opt_var = _tmp_202_rule(p), 1) // ['as' star_target]
)
{
- D(fprintf(stderr, "%*c+ _tmp_194[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "expression ['as' star_target]"));
+ D(fprintf(stderr, "%*c+ _tmp_197[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "expression ['as' star_target]"));
_res = _PyPegen_dummy_name(p, expression_var, _opt_var);
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _tmp_194[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _tmp_197[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "expression ['as' star_target]"));
}
_res = NULL;
@@ -32527,9 +32832,9 @@ _tmp_194_rule(Parser *p)
return _res;
}
-// _tmp_195: expressions ['as' star_target]
+// _tmp_198: expressions ['as' star_target]
static void *
-_tmp_195_rule(Parser *p)
+_tmp_198_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -32543,22 +32848,22 @@ _tmp_195_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _tmp_195[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "expressions ['as' star_target]"));
+ D(fprintf(stderr, "%*c> _tmp_198[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "expressions ['as' star_target]"));
void *_opt_var;
UNUSED(_opt_var); // Silence compiler warnings
expr_ty expressions_var;
if (
(expressions_var = expressions_rule(p)) // expressions
&&
- (_opt_var = _tmp_199_rule(p), 1) // ['as' star_target]
+ (_opt_var = _tmp_203_rule(p), 1) // ['as' star_target]
)
{
- D(fprintf(stderr, "%*c+ _tmp_195[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "expressions ['as' star_target]"));
+ D(fprintf(stderr, "%*c+ _tmp_198[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "expressions ['as' star_target]"));
_res = _PyPegen_dummy_name(p, expressions_var, _opt_var);
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _tmp_195[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _tmp_198[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "expressions ['as' star_target]"));
}
_res = NULL;
@@ -32567,9 +32872,9 @@ _tmp_195_rule(Parser *p)
return _res;
}
-// _tmp_196: expression ['as' star_target]
+// _tmp_199: expression ['as' star_target]
static void *
-_tmp_196_rule(Parser *p)
+_tmp_199_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -32583,22 +32888,22 @@ _tmp_196_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _tmp_196[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "expression ['as' star_target]"));
+ D(fprintf(stderr, "%*c> _tmp_199[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "expression ['as' star_target]"));
void *_opt_var;
UNUSED(_opt_var); // Silence compiler warnings
expr_ty expression_var;
if (
(expression_var = expression_rule(p)) // expression
&&
- (_opt_var = _tmp_200_rule(p), 1) // ['as' star_target]
+ (_opt_var = _tmp_204_rule(p), 1) // ['as' star_target]
)
{
- D(fprintf(stderr, "%*c+ _tmp_196[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "expression ['as' star_target]"));
+ D(fprintf(stderr, "%*c+ _tmp_199[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "expression ['as' star_target]"));
_res = _PyPegen_dummy_name(p, expression_var, _opt_var);
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _tmp_196[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _tmp_199[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "expression ['as' star_target]"));
}
_res = NULL;
@@ -32607,9 +32912,9 @@ _tmp_196_rule(Parser *p)
return _res;
}
-// _tmp_197: expressions ['as' star_target]
+// _tmp_200: expressions ['as' star_target]
static void *
-_tmp_197_rule(Parser *p)
+_tmp_200_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -32623,22 +32928,22 @@ _tmp_197_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _tmp_197[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "expressions ['as' star_target]"));
+ D(fprintf(stderr, "%*c> _tmp_200[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "expressions ['as' star_target]"));
void *_opt_var;
UNUSED(_opt_var); // Silence compiler warnings
expr_ty expressions_var;
if (
(expressions_var = expressions_rule(p)) // expressions
&&
- (_opt_var = _tmp_201_rule(p), 1) // ['as' star_target]
+ (_opt_var = _tmp_205_rule(p), 1) // ['as' star_target]
)
{
- D(fprintf(stderr, "%*c+ _tmp_197[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "expressions ['as' star_target]"));
+ D(fprintf(stderr, "%*c+ _tmp_200[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "expressions ['as' star_target]"));
_res = _PyPegen_dummy_name(p, expressions_var, _opt_var);
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _tmp_197[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _tmp_200[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "expressions ['as' star_target]"));
}
_res = NULL;
@@ -32647,9 +32952,66 @@ _tmp_197_rule(Parser *p)
return _res;
}
-// _tmp_198: 'as' star_target
+// _tmp_201: assigment_expression | expression !':='
static void *
-_tmp_198_rule(Parser *p)
+_tmp_201_rule(Parser *p)
+{
+ D(p->level++);
+ if (p->error_indicator) {
+ D(p->level--);
+ return NULL;
+ }
+ void * _res = NULL;
+ int _mark = p->mark;
+ { // assigment_expression
+ if (p->error_indicator) {
+ D(p->level--);
+ return NULL;
+ }
+ D(fprintf(stderr, "%*c> _tmp_201[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "assigment_expression"));
+ expr_ty assigment_expression_var;
+ if (
+ (assigment_expression_var = assigment_expression_rule(p)) // assigment_expression
+ )
+ {
+ D(fprintf(stderr, "%*c+ _tmp_201[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "assigment_expression"));
+ _res = assigment_expression_var;
+ goto done;
+ }
+ p->mark = _mark;
+ D(fprintf(stderr, "%*c%s _tmp_201[%d-%d]: %s failed!\n", p->level, ' ',
+ p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "assigment_expression"));
+ }
+ { // expression !':='
+ if (p->error_indicator) {
+ D(p->level--);
+ return NULL;
+ }
+ D(fprintf(stderr, "%*c> _tmp_201[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "expression !':='"));
+ expr_ty expression_var;
+ if (
+ (expression_var = expression_rule(p)) // expression
+ &&
+ _PyPegen_lookahead_with_int(0, _PyPegen_expect_token, p, 53) // token=':='
+ )
+ {
+ D(fprintf(stderr, "%*c+ _tmp_201[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "expression !':='"));
+ _res = expression_var;
+ goto done;
+ }
+ p->mark = _mark;
+ D(fprintf(stderr, "%*c%s _tmp_201[%d-%d]: %s failed!\n", p->level, ' ',
+ p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "expression !':='"));
+ }
+ _res = NULL;
+ done:
+ D(p->level--);
+ return _res;
+}
+
+// _tmp_202: 'as' star_target
+static void *
+_tmp_202_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -32663,7 +33025,7 @@ _tmp_198_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _tmp_198[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'as' star_target"));
+ D(fprintf(stderr, "%*c> _tmp_202[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'as' star_target"));
Token * _keyword;
expr_ty star_target_var;
if (
@@ -32672,12 +33034,12 @@ _tmp_198_rule(Parser *p)
(star_target_var = star_target_rule(p)) // star_target
)
{
- D(fprintf(stderr, "%*c+ _tmp_198[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'as' star_target"));
+ D(fprintf(stderr, "%*c+ _tmp_202[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'as' star_target"));
_res = _PyPegen_dummy_name(p, _keyword, star_target_var);
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _tmp_198[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _tmp_202[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "'as' star_target"));
}
_res = NULL;
@@ -32686,9 +33048,9 @@ _tmp_198_rule(Parser *p)
return _res;
}
-// _tmp_199: 'as' star_target
+// _tmp_203: 'as' star_target
static void *
-_tmp_199_rule(Parser *p)
+_tmp_203_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -32702,7 +33064,7 @@ _tmp_199_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _tmp_199[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'as' star_target"));
+ D(fprintf(stderr, "%*c> _tmp_203[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'as' star_target"));
Token * _keyword;
expr_ty star_target_var;
if (
@@ -32711,12 +33073,12 @@ _tmp_199_rule(Parser *p)
(star_target_var = star_target_rule(p)) // star_target
)
{
- D(fprintf(stderr, "%*c+ _tmp_199[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'as' star_target"));
+ D(fprintf(stderr, "%*c+ _tmp_203[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'as' star_target"));
_res = _PyPegen_dummy_name(p, _keyword, star_target_var);
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _tmp_199[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _tmp_203[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "'as' star_target"));
}
_res = NULL;
@@ -32725,9 +33087,9 @@ _tmp_199_rule(Parser *p)
return _res;
}
-// _tmp_200: 'as' star_target
+// _tmp_204: 'as' star_target
static void *
-_tmp_200_rule(Parser *p)
+_tmp_204_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -32741,7 +33103,7 @@ _tmp_200_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _tmp_200[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'as' star_target"));
+ D(fprintf(stderr, "%*c> _tmp_204[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'as' star_target"));
Token * _keyword;
expr_ty star_target_var;
if (
@@ -32750,12 +33112,12 @@ _tmp_200_rule(Parser *p)
(star_target_var = star_target_rule(p)) // star_target
)
{
- D(fprintf(stderr, "%*c+ _tmp_200[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'as' star_target"));
+ D(fprintf(stderr, "%*c+ _tmp_204[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'as' star_target"));
_res = _PyPegen_dummy_name(p, _keyword, star_target_var);
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _tmp_200[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _tmp_204[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "'as' star_target"));
}
_res = NULL;
@@ -32764,9 +33126,9 @@ _tmp_200_rule(Parser *p)
return _res;
}
-// _tmp_201: 'as' star_target
+// _tmp_205: 'as' star_target
static void *
-_tmp_201_rule(Parser *p)
+_tmp_205_rule(Parser *p)
{
D(p->level++);
if (p->error_indicator) {
@@ -32780,7 +33142,7 @@ _tmp_201_rule(Parser *p)
D(p->level--);
return NULL;
}
- D(fprintf(stderr, "%*c> _tmp_201[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'as' star_target"));
+ D(fprintf(stderr, "%*c> _tmp_205[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "'as' star_target"));
Token * _keyword;
expr_ty star_target_var;
if (
@@ -32789,12 +33151,12 @@ _tmp_201_rule(Parser *p)
(star_target_var = star_target_rule(p)) // star_target
)
{
- D(fprintf(stderr, "%*c+ _tmp_201[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'as' star_target"));
+ D(fprintf(stderr, "%*c+ _tmp_205[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'as' star_target"));
_res = _PyPegen_dummy_name(p, _keyword, star_target_var);
goto done;
}
p->mark = _mark;
- D(fprintf(stderr, "%*c%s _tmp_201[%d-%d]: %s failed!\n", p->level, ' ',
+ D(fprintf(stderr, "%*c%s _tmp_205[%d-%d]: %s failed!\n", p->level, ' ',
p->error_indicator ? "ERROR!" : "-", _mark, p->mark, "'as' star_target"));
}
_res = NULL;
diff --git a/Parser/pegen.c b/Parser/pegen.c
index c2f25402ca4e13..aac7e368a799f8 100644
--- a/Parser/pegen.c
+++ b/Parser/pegen.c
@@ -217,7 +217,7 @@ _PyPegen_get_expr_name(expr_ty e)
return "True";
}
if (value == Py_Ellipsis) {
- return "Ellipsis";
+ return "ellipsis";
}
return "literal";
}
@@ -1222,7 +1222,7 @@ _PyPegen_Parser_New(struct tok_state *tok, int start_rule, int flags,
p->known_err_token = NULL;
p->level = 0;
p->call_invalid_rules = 0;
-
+ p->in_raw_rule = 0;
return p;
}
@@ -1234,6 +1234,9 @@ reset_parser_state(Parser *p)
}
p->mark = 0;
p->call_invalid_rules = 1;
+ // Don't try to get extra tokens in interactive mode when trying to
+ // raise specialized errors in the second pass.
+ p->tok->interactive_underflow = IUNDERFLOW_STOP;
}
static int
@@ -1281,6 +1284,7 @@ _PyPegen_run_parser(Parser *p)
{
void *res = _PyPegen_parse(p);
if (res == NULL) {
+ Token *last_token = p->tokens[p->fill - 1];
reset_parser_state(p);
_PyPegen_parse(p);
if (PyErr_Occurred()) {
@@ -1307,7 +1311,11 @@ _PyPegen_run_parser(Parser *p)
RAISE_INDENTATION_ERROR("unexpected unindent");
}
else {
- RAISE_SYNTAX_ERROR("invalid syntax");
+ // Use the last token we found on the first pass to avoid reporting
+ // incorrect locations for generic syntax errors just because we reached
+ // further away when trying to find specific syntax errors in the second
+ // pass.
+ RAISE_SYNTAX_ERROR_KNOWN_LOCATION(last_token, "invalid syntax");
// _PyPegen_check_tokenizer_errors will override the existing
// generic SyntaxError we just raised if errors are found.
_PyPegen_check_tokenizer_errors(p);
diff --git a/Parser/pegen.h b/Parser/pegen.h
index d591c566968c78..1540da030e9efc 100644
--- a/Parser/pegen.h
+++ b/Parser/pegen.h
@@ -74,6 +74,7 @@ typedef struct {
Token *known_err_token;
int level;
int call_invalid_rules;
+ int in_raw_rule;
} Parser;
typedef struct {
diff --git a/Parser/tokenizer.c b/Parser/tokenizer.c
index ad32293d70b785..a86af9bc0620ca 100644
--- a/Parser/tokenizer.c
+++ b/Parser/tokenizer.c
@@ -85,6 +85,7 @@ tok_new(void)
tok->async_def = 0;
tok->async_def_indent = 0;
tok->async_def_nl = 0;
+ tok->interactive_underflow = IUNDERFLOW_NORMAL;
return tok;
}
@@ -845,6 +846,10 @@ tok_underflow_string(struct tok_state *tok) {
static int
tok_underflow_interactive(struct tok_state *tok) {
+ if (tok->interactive_underflow == IUNDERFLOW_STOP) {
+ tok->done = E_INTERACT_STOP;
+ return 1;
+ }
char *newtok = PyOS_Readline(stdin, stdout, tok->prompt);
if (newtok != NULL) {
char *translated = translate_newlines(newtok, 0, tok);
@@ -1399,6 +1404,10 @@ tok_get(struct tok_state *tok, const char **p_start, const char **p_end)
}
}
+ if (tok->done == E_INTERACT_STOP) {
+ return ENDMARKER;
+ }
+
/* Check for EOF and errors now */
if (c == EOF) {
if (tok->level) {
diff --git a/Parser/tokenizer.h b/Parser/tokenizer.h
index aaa31f37962076..ff563d57fa8b15 100644
--- a/Parser/tokenizer.h
+++ b/Parser/tokenizer.h
@@ -19,6 +19,14 @@ enum decoding_state {
STATE_NORMAL
};
+enum interactive_underflow_t {
+ /* Normal mode of operation: return a new token when asked in interactie mode */
+ IUNDERFLOW_NORMAL,
+ /* Forcefully return ENDMARKER when asked for a new token in interactive mode. This
+ * can be used to prevent the tokenizer to promt the user for new tokens */
+ IUNDERFLOW_STOP,
+};
+
/* Tokenizer state */
struct tok_state {
/* Input state; buf <= cur <= inp <= end */
@@ -74,6 +82,8 @@ struct tok_state {
int async_def_indent; /* Indentation level of the outermost 'async def'. */
int async_def_nl; /* =1 if the outermost 'async def' had at least one
NEWLINE token after it. */
+ /* How to proceed when asked for a new token in interactive mode */
+ enum interactive_underflow_t interactive_underflow;
};
extern struct tok_state *PyTokenizer_FromString(const char *, int);
diff --git a/Programs/_testembed.c b/Programs/_testembed.c
index 21b24f7d51e402..a5ae7c1d863357 100644
--- a/Programs/_testembed.c
+++ b/Programs/_testembed.c
@@ -27,6 +27,14 @@
_Py_COMP_DIAG_PUSH
_Py_COMP_DIAG_IGNORE_DEPR_DECLS
+
+static void error(const char *msg)
+{
+ fprintf(stderr, "ERROR: %s\n", msg);
+ fflush(stderr);
+}
+
+
static void _testembed_Py_Initialize(void)
{
Py_SetProgramName(PROGRAM_NAME);
@@ -239,7 +247,7 @@ static void bpo20891_thread(void *lockp)
PyGILState_STATE state = PyGILState_Ensure();
if (!PyGILState_Check()) {
- fprintf(stderr, "PyGILState_Check failed!");
+ error("PyGILState_Check failed!");
abort();
}
@@ -259,7 +267,7 @@ static int test_bpo20891(void)
crash. */
PyThread_type_lock lock = PyThread_allocate_lock();
if (!lock) {
- fprintf(stderr, "PyThread_allocate_lock failed!");
+ error("PyThread_allocate_lock failed!");
return 1;
}
@@ -267,7 +275,7 @@ static int test_bpo20891(void)
unsigned long thrd = PyThread_start_new_thread(bpo20891_thread, &lock);
if (thrd == PYTHREAD_INVALID_THREAD_ID) {
- fprintf(stderr, "PyThread_start_new_thread failed!");
+ error("PyThread_start_new_thread failed!");
return 1;
}
PyThread_acquire_lock(lock, WAIT_LOCK);
@@ -1397,12 +1405,12 @@ static int test_init_setpath(void)
{
char *env = getenv("TESTPATH");
if (!env) {
- fprintf(stderr, "missing TESTPATH env var\n");
+ error("missing TESTPATH env var");
return 1;
}
wchar_t *path = Py_DecodeLocale(env, NULL);
if (path == NULL) {
- fprintf(stderr, "failed to decode TESTPATH\n");
+ error("failed to decode TESTPATH");
return 1;
}
Py_SetPath(path);
@@ -1430,12 +1438,12 @@ static int test_init_setpath_config(void)
char *env = getenv("TESTPATH");
if (!env) {
- fprintf(stderr, "missing TESTPATH env var\n");
+ error("missing TESTPATH env var");
return 1;
}
wchar_t *path = Py_DecodeLocale(env, NULL);
if (path == NULL) {
- fprintf(stderr, "failed to decode TESTPATH\n");
+ error("failed to decode TESTPATH");
return 1;
}
Py_SetPath(path);
@@ -1459,12 +1467,12 @@ static int test_init_setpythonhome(void)
{
char *env = getenv("TESTHOME");
if (!env) {
- fprintf(stderr, "missing TESTHOME env var\n");
+ error("missing TESTHOME env var");
return 1;
}
wchar_t *home = Py_DecodeLocale(env, NULL);
if (home == NULL) {
- fprintf(stderr, "failed to decode TESTHOME\n");
+ error("failed to decode TESTHOME");
return 1;
}
Py_SetPythonHome(home);
@@ -1726,6 +1734,48 @@ static int test_unicode_id_init(void)
}
+#ifndef MS_WINDOWS
+#include "test_frozenmain.h" // M_test_frozenmain
+
+static int test_frozenmain(void)
+{
+ // Get "_frozen_importlib" and "_frozen_importlib_external"
+ // from PyImport_FrozenModules
+ const struct _frozen *importlib = NULL, *importlib_external = NULL;
+ for (const struct _frozen *mod = PyImport_FrozenModules; mod->name != NULL; mod++) {
+ if (strcmp(mod->name, "_frozen_importlib") == 0) {
+ importlib = mod;
+ }
+ else if (strcmp(mod->name, "_frozen_importlib_external") == 0) {
+ importlib_external = mod;
+ }
+ }
+ if (importlib == NULL || importlib_external == NULL) {
+ error("cannot find frozen importlib and importlib_external");
+ return 1;
+ }
+
+ static struct _frozen frozen_modules[4] = {
+ {0, 0, 0}, // importlib
+ {0, 0, 0}, // importlib_external
+ {"__main__", M_test_frozenmain, sizeof(M_test_frozenmain)},
+ {0, 0, 0} // sentinel
+ };
+ frozen_modules[0] = *importlib;
+ frozen_modules[1] = *importlib_external;
+
+ char* argv[] = {
+ "./argv0",
+ "-E",
+ "arg1",
+ "arg2",
+ };
+ PyImport_FrozenModules = frozen_modules;
+ return Py_FrozenMain(Py_ARRAY_LENGTH(argv), argv);
+}
+#endif // !MS_WINDOWS
+
+
// List frozen modules.
// Command used by Tools/scripts/generate_stdlib_module_names.py script.
static int list_frozen(void)
@@ -1811,11 +1861,15 @@ static struct TestCase TestCases[] = {
{"test_audit_run_stdin", test_audit_run_stdin},
{"test_unicode_id_init", test_unicode_id_init},
+#ifndef MS_WINDOWS
+ {"test_frozenmain", test_frozenmain},
+#endif
{"list_frozen", list_frozen},
{NULL, NULL}
};
+
int main(int argc, char *argv[])
{
if (argc > 1) {
diff --git a/Programs/freeze_test_frozenmain.py b/Programs/freeze_test_frozenmain.py
new file mode 100644
index 00000000000000..848fc31b3d6f44
--- /dev/null
+++ b/Programs/freeze_test_frozenmain.py
@@ -0,0 +1,48 @@
+import marshal
+import tokenize
+import os.path
+import sys
+
+PROGRAM_DIR = os.path.dirname(__file__)
+SRC_DIR = os.path.dirname(PROGRAM_DIR)
+
+
+def writecode(fp, mod, data):
+ print('unsigned char M_%s[] = {' % mod, file=fp)
+ indent = ' ' * 4
+ for i in range(0, len(data), 16):
+ print(indent, file=fp, end='')
+ for c in bytes(data[i:i+16]):
+ print('%d,' % c, file=fp, end='')
+ print('', file=fp)
+ print('};', file=fp)
+
+
+def dump(fp, filename, name):
+ # Strip the directory to get reproducible marshal dump
+ code_filename = os.path.basename(filename)
+
+ with tokenize.open(filename) as source_fp:
+ source = source_fp.read()
+ code = compile(source, code_filename, 'exec')
+
+ data = marshal.dumps(code)
+ writecode(fp, name, data)
+
+
+def main():
+ if len(sys.argv) < 2:
+ print(f"usage: {sys.argv[0]} filename")
+ sys.exit(1)
+ filename = sys.argv[1]
+
+ with open(filename, "w") as fp:
+ print("// Auto-generated by Programs/freeze_test_frozenmain.py", file=fp)
+ frozenmain = os.path.join(PROGRAM_DIR, 'test_frozenmain.py')
+ dump(fp, frozenmain, 'test_frozenmain')
+
+ print(f"{filename} written")
+
+
+if __name__ == "__main__":
+ main()
diff --git a/Programs/test_frozenmain.h b/Programs/test_frozenmain.h
new file mode 100644
index 00000000000000..f5140b8a806b49
--- /dev/null
+++ b/Programs/test_frozenmain.h
@@ -0,0 +1,28 @@
+// Auto-generated by Programs/freeze_test_frozenmain.py
+unsigned char M_test_frozenmain[] = {
+ 227,0,0,0,0,0,0,0,0,0,0,0,0,7,0,0,
+ 0,64,0,0,0,115,86,0,0,0,100,0,100,1,108,0,
+ 90,0,100,0,100,1,108,1,90,1,101,2,100,2,131,1,
+ 1,0,101,2,100,3,101,0,106,3,131,2,1,0,101,1,
+ 160,4,161,0,100,4,25,0,90,5,100,5,68,0,93,14,
+ 90,6,101,2,100,6,101,6,155,0,100,7,101,5,101,6,
+ 25,0,155,0,157,4,131,1,1,0,113,26,100,1,83,0,
+ 41,8,233,0,0,0,0,78,122,18,70,114,111,122,101,110,
+ 32,72,101,108,108,111,32,87,111,114,108,100,122,8,115,121,
+ 115,46,97,114,103,118,218,6,99,111,110,102,105,103,41,5,
+ 90,12,112,114,111,103,114,97,109,95,110,97,109,101,218,10,
+ 101,120,101,99,117,116,97,98,108,101,90,15,117,115,101,95,
+ 101,110,118,105,114,111,110,109,101,110,116,90,17,99,111,110,
+ 102,105,103,117,114,101,95,99,95,115,116,100,105,111,90,14,
+ 98,117,102,102,101,114,101,100,95,115,116,100,105,111,122,7,
+ 99,111,110,102,105,103,32,122,2,58,32,41,7,218,3,115,
+ 121,115,90,17,95,116,101,115,116,105,110,116,101,114,110,97,
+ 108,99,97,112,105,218,5,112,114,105,110,116,218,4,97,114,
+ 103,118,90,11,103,101,116,95,99,111,110,102,105,103,115,114,
+ 2,0,0,0,218,3,107,101,121,169,0,114,8,0,0,0,
+ 114,8,0,0,0,250,18,116,101,115,116,95,102,114,111,122,
+ 101,110,109,97,105,110,46,112,121,218,8,60,109,111,100,117,
+ 108,101,62,1,0,0,0,115,16,0,0,0,8,3,8,1,
+ 8,2,12,1,12,1,8,1,26,7,4,249,243,0,0,0,
+ 0,
+};
diff --git a/Programs/test_frozenmain.py b/Programs/test_frozenmain.py
new file mode 100644
index 00000000000000..53f5fd676a2d15
--- /dev/null
+++ b/Programs/test_frozenmain.py
@@ -0,0 +1,17 @@
+# Script used to test Py_FrozenMain(): see test_embed.test_frozenmain().
+# Run "make regen-test-frozenmain" if you modify this test.
+
+import sys
+import _testinternalcapi
+
+print("Frozen Hello World")
+print("sys.argv", sys.argv)
+config = _testinternalcapi.get_configs()['config']
+for key in (
+ 'program_name',
+ 'executable',
+ 'use_environment',
+ 'configure_c_stdio',
+ 'buffered_stdio',
+):
+ print(f"config {key}: {config[key]}")
diff --git a/Python/Python-ast.c b/Python/Python-ast.c
index 5d7a0aed9beffc..ce6e6a93ea70f0 100644
--- a/Python/Python-ast.c
+++ b/Python/Python-ast.c
@@ -5373,7 +5373,11 @@ obj2ast_mod(struct ast_state *state, PyObject* obj, mod_ty* out, PyArena* arena)
stmt_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i);
Py_INCREF(tmp2);
+ if (Py_EnterRecursiveCall(" while traversing 'Module' node")) {
+ goto failed;
+ }
res = obj2ast_stmt(state, tmp2, &val, arena);
+ Py_LeaveRecursiveCall();
Py_DECREF(tmp2);
if (res != 0) goto failed;
if (len != PyList_GET_SIZE(tmp)) {
@@ -5406,7 +5410,11 @@ obj2ast_mod(struct ast_state *state, PyObject* obj, mod_ty* out, PyArena* arena)
type_ignore_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i);
Py_INCREF(tmp2);
+ if (Py_EnterRecursiveCall(" while traversing 'Module' node")) {
+ goto failed;
+ }
res = obj2ast_type_ignore(state, tmp2, &val, arena);
+ Py_LeaveRecursiveCall();
Py_DECREF(tmp2);
if (res != 0) goto failed;
if (len != PyList_GET_SIZE(tmp)) {
@@ -5451,7 +5459,11 @@ obj2ast_mod(struct ast_state *state, PyObject* obj, mod_ty* out, PyArena* arena)
stmt_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i);
Py_INCREF(tmp2);
+ if (Py_EnterRecursiveCall(" while traversing 'Interactive' node")) {
+ goto failed;
+ }
res = obj2ast_stmt(state, tmp2, &val, arena);
+ Py_LeaveRecursiveCall();
Py_DECREF(tmp2);
if (res != 0) goto failed;
if (len != PyList_GET_SIZE(tmp)) {
@@ -5483,7 +5495,11 @@ obj2ast_mod(struct ast_state *state, PyObject* obj, mod_ty* out, PyArena* arena)
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'Expression' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp, &body, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -5522,7 +5538,11 @@ obj2ast_mod(struct ast_state *state, PyObject* obj, mod_ty* out, PyArena* arena)
expr_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i);
Py_INCREF(tmp2);
+ if (Py_EnterRecursiveCall(" while traversing 'FunctionType' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp2, &val, arena);
+ Py_LeaveRecursiveCall();
Py_DECREF(tmp2);
if (res != 0) goto failed;
if (len != PyList_GET_SIZE(tmp)) {
@@ -5542,7 +5562,11 @@ obj2ast_mod(struct ast_state *state, PyObject* obj, mod_ty* out, PyArena* arena)
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'FunctionType' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp, &returns, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -5583,7 +5607,11 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'stmt' node")) {
+ goto failed;
+ }
res = obj2ast_int(state, tmp, &lineno, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -5596,7 +5624,11 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'stmt' node")) {
+ goto failed;
+ }
res = obj2ast_int(state, tmp, &col_offset, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -5609,7 +5641,11 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'stmt' node")) {
+ goto failed;
+ }
res = obj2ast_int(state, tmp, &end_lineno, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -5622,7 +5658,11 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'stmt' node")) {
+ goto failed;
+ }
res = obj2ast_int(state, tmp, &end_col_offset, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -5648,7 +5688,11 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'FunctionDef' node")) {
+ goto failed;
+ }
res = obj2ast_identifier(state, tmp, &name, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -5661,7 +5705,11 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'FunctionDef' node")) {
+ goto failed;
+ }
res = obj2ast_arguments(state, tmp, &args, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -5687,7 +5735,11 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
stmt_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i);
Py_INCREF(tmp2);
+ if (Py_EnterRecursiveCall(" while traversing 'FunctionDef' node")) {
+ goto failed;
+ }
res = obj2ast_stmt(state, tmp2, &val, arena);
+ Py_LeaveRecursiveCall();
Py_DECREF(tmp2);
if (res != 0) goto failed;
if (len != PyList_GET_SIZE(tmp)) {
@@ -5720,7 +5772,11 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
expr_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i);
Py_INCREF(tmp2);
+ if (Py_EnterRecursiveCall(" while traversing 'FunctionDef' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp2, &val, arena);
+ Py_LeaveRecursiveCall();
Py_DECREF(tmp2);
if (res != 0) goto failed;
if (len != PyList_GET_SIZE(tmp)) {
@@ -5740,7 +5796,11 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'FunctionDef' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp, &returns, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -5753,7 +5813,11 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'FunctionDef' node")) {
+ goto failed;
+ }
res = obj2ast_string(state, tmp, &type_comment, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -5785,7 +5849,11 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'AsyncFunctionDef' node")) {
+ goto failed;
+ }
res = obj2ast_identifier(state, tmp, &name, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -5798,7 +5866,11 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'AsyncFunctionDef' node")) {
+ goto failed;
+ }
res = obj2ast_arguments(state, tmp, &args, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -5824,7 +5896,11 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
stmt_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i);
Py_INCREF(tmp2);
+ if (Py_EnterRecursiveCall(" while traversing 'AsyncFunctionDef' node")) {
+ goto failed;
+ }
res = obj2ast_stmt(state, tmp2, &val, arena);
+ Py_LeaveRecursiveCall();
Py_DECREF(tmp2);
if (res != 0) goto failed;
if (len != PyList_GET_SIZE(tmp)) {
@@ -5857,7 +5933,11 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
expr_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i);
Py_INCREF(tmp2);
+ if (Py_EnterRecursiveCall(" while traversing 'AsyncFunctionDef' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp2, &val, arena);
+ Py_LeaveRecursiveCall();
Py_DECREF(tmp2);
if (res != 0) goto failed;
if (len != PyList_GET_SIZE(tmp)) {
@@ -5877,7 +5957,11 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'AsyncFunctionDef' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp, &returns, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -5890,7 +5974,11 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'AsyncFunctionDef' node")) {
+ goto failed;
+ }
res = obj2ast_string(state, tmp, &type_comment, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -5922,7 +6010,11 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'ClassDef' node")) {
+ goto failed;
+ }
res = obj2ast_identifier(state, tmp, &name, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -5948,7 +6040,11 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
expr_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i);
Py_INCREF(tmp2);
+ if (Py_EnterRecursiveCall(" while traversing 'ClassDef' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp2, &val, arena);
+ Py_LeaveRecursiveCall();
Py_DECREF(tmp2);
if (res != 0) goto failed;
if (len != PyList_GET_SIZE(tmp)) {
@@ -5981,7 +6077,11 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
keyword_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i);
Py_INCREF(tmp2);
+ if (Py_EnterRecursiveCall(" while traversing 'ClassDef' node")) {
+ goto failed;
+ }
res = obj2ast_keyword(state, tmp2, &val, arena);
+ Py_LeaveRecursiveCall();
Py_DECREF(tmp2);
if (res != 0) goto failed;
if (len != PyList_GET_SIZE(tmp)) {
@@ -6014,7 +6114,11 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
stmt_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i);
Py_INCREF(tmp2);
+ if (Py_EnterRecursiveCall(" while traversing 'ClassDef' node")) {
+ goto failed;
+ }
res = obj2ast_stmt(state, tmp2, &val, arena);
+ Py_LeaveRecursiveCall();
Py_DECREF(tmp2);
if (res != 0) goto failed;
if (len != PyList_GET_SIZE(tmp)) {
@@ -6047,7 +6151,11 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
expr_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i);
Py_INCREF(tmp2);
+ if (Py_EnterRecursiveCall(" while traversing 'ClassDef' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp2, &val, arena);
+ Py_LeaveRecursiveCall();
Py_DECREF(tmp2);
if (res != 0) goto failed;
if (len != PyList_GET_SIZE(tmp)) {
@@ -6081,7 +6189,11 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'Return' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp, &value, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -6120,7 +6232,11 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
expr_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i);
Py_INCREF(tmp2);
+ if (Py_EnterRecursiveCall(" while traversing 'Delete' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp2, &val, arena);
+ Py_LeaveRecursiveCall();
Py_DECREF(tmp2);
if (res != 0) goto failed;
if (len != PyList_GET_SIZE(tmp)) {
@@ -6168,7 +6284,11 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
expr_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i);
Py_INCREF(tmp2);
+ if (Py_EnterRecursiveCall(" while traversing 'Assign' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp2, &val, arena);
+ Py_LeaveRecursiveCall();
Py_DECREF(tmp2);
if (res != 0) goto failed;
if (len != PyList_GET_SIZE(tmp)) {
@@ -6188,7 +6308,11 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'Assign' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp, &value, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -6201,7 +6325,11 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'Assign' node")) {
+ goto failed;
+ }
res = obj2ast_string(state, tmp, &type_comment, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -6229,7 +6357,11 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'AugAssign' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp, &target, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -6242,7 +6374,11 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'AugAssign' node")) {
+ goto failed;
+ }
res = obj2ast_operator(state, tmp, &op, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -6255,7 +6391,11 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'AugAssign' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp, &value, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -6284,7 +6424,11 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'AnnAssign' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp, &target, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -6297,7 +6441,11 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'AnnAssign' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp, &annotation, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -6310,7 +6458,11 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'AnnAssign' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp, &value, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -6323,7 +6475,11 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'AnnAssign' node")) {
+ goto failed;
+ }
res = obj2ast_int(state, tmp, &simple, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -6353,7 +6509,11 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'For' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp, &target, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -6366,7 +6526,11 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'For' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp, &iter, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -6392,7 +6556,11 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
stmt_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i);
Py_INCREF(tmp2);
+ if (Py_EnterRecursiveCall(" while traversing 'For' node")) {
+ goto failed;
+ }
res = obj2ast_stmt(state, tmp2, &val, arena);
+ Py_LeaveRecursiveCall();
Py_DECREF(tmp2);
if (res != 0) goto failed;
if (len != PyList_GET_SIZE(tmp)) {
@@ -6425,7 +6593,11 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
stmt_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i);
Py_INCREF(tmp2);
+ if (Py_EnterRecursiveCall(" while traversing 'For' node")) {
+ goto failed;
+ }
res = obj2ast_stmt(state, tmp2, &val, arena);
+ Py_LeaveRecursiveCall();
Py_DECREF(tmp2);
if (res != 0) goto failed;
if (len != PyList_GET_SIZE(tmp)) {
@@ -6445,7 +6617,11 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'For' node")) {
+ goto failed;
+ }
res = obj2ast_string(state, tmp, &type_comment, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -6475,7 +6651,11 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'AsyncFor' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp, &target, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -6488,7 +6668,11 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'AsyncFor' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp, &iter, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -6514,7 +6698,11 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
stmt_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i);
Py_INCREF(tmp2);
+ if (Py_EnterRecursiveCall(" while traversing 'AsyncFor' node")) {
+ goto failed;
+ }
res = obj2ast_stmt(state, tmp2, &val, arena);
+ Py_LeaveRecursiveCall();
Py_DECREF(tmp2);
if (res != 0) goto failed;
if (len != PyList_GET_SIZE(tmp)) {
@@ -6547,7 +6735,11 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
stmt_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i);
Py_INCREF(tmp2);
+ if (Py_EnterRecursiveCall(" while traversing 'AsyncFor' node")) {
+ goto failed;
+ }
res = obj2ast_stmt(state, tmp2, &val, arena);
+ Py_LeaveRecursiveCall();
Py_DECREF(tmp2);
if (res != 0) goto failed;
if (len != PyList_GET_SIZE(tmp)) {
@@ -6567,7 +6759,11 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'AsyncFor' node")) {
+ goto failed;
+ }
res = obj2ast_string(state, tmp, &type_comment, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -6596,7 +6792,11 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'While' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp, &test, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -6622,7 +6822,11 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
stmt_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i);
Py_INCREF(tmp2);
+ if (Py_EnterRecursiveCall(" while traversing 'While' node")) {
+ goto failed;
+ }
res = obj2ast_stmt(state, tmp2, &val, arena);
+ Py_LeaveRecursiveCall();
Py_DECREF(tmp2);
if (res != 0) goto failed;
if (len != PyList_GET_SIZE(tmp)) {
@@ -6655,7 +6859,11 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
stmt_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i);
Py_INCREF(tmp2);
+ if (Py_EnterRecursiveCall(" while traversing 'While' node")) {
+ goto failed;
+ }
res = obj2ast_stmt(state, tmp2, &val, arena);
+ Py_LeaveRecursiveCall();
Py_DECREF(tmp2);
if (res != 0) goto failed;
if (len != PyList_GET_SIZE(tmp)) {
@@ -6690,7 +6898,11 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'If' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp, &test, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -6716,7 +6928,11 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
stmt_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i);
Py_INCREF(tmp2);
+ if (Py_EnterRecursiveCall(" while traversing 'If' node")) {
+ goto failed;
+ }
res = obj2ast_stmt(state, tmp2, &val, arena);
+ Py_LeaveRecursiveCall();
Py_DECREF(tmp2);
if (res != 0) goto failed;
if (len != PyList_GET_SIZE(tmp)) {
@@ -6749,7 +6965,11 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
stmt_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i);
Py_INCREF(tmp2);
+ if (Py_EnterRecursiveCall(" while traversing 'If' node")) {
+ goto failed;
+ }
res = obj2ast_stmt(state, tmp2, &val, arena);
+ Py_LeaveRecursiveCall();
Py_DECREF(tmp2);
if (res != 0) goto failed;
if (len != PyList_GET_SIZE(tmp)) {
@@ -6797,7 +7017,11 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
withitem_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i);
Py_INCREF(tmp2);
+ if (Py_EnterRecursiveCall(" while traversing 'With' node")) {
+ goto failed;
+ }
res = obj2ast_withitem(state, tmp2, &val, arena);
+ Py_LeaveRecursiveCall();
Py_DECREF(tmp2);
if (res != 0) goto failed;
if (len != PyList_GET_SIZE(tmp)) {
@@ -6830,7 +7054,11 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
stmt_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i);
Py_INCREF(tmp2);
+ if (Py_EnterRecursiveCall(" while traversing 'With' node")) {
+ goto failed;
+ }
res = obj2ast_stmt(state, tmp2, &val, arena);
+ Py_LeaveRecursiveCall();
Py_DECREF(tmp2);
if (res != 0) goto failed;
if (len != PyList_GET_SIZE(tmp)) {
@@ -6850,7 +7078,11 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'With' node")) {
+ goto failed;
+ }
res = obj2ast_string(state, tmp, &type_comment, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -6891,7 +7123,11 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
withitem_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i);
Py_INCREF(tmp2);
+ if (Py_EnterRecursiveCall(" while traversing 'AsyncWith' node")) {
+ goto failed;
+ }
res = obj2ast_withitem(state, tmp2, &val, arena);
+ Py_LeaveRecursiveCall();
Py_DECREF(tmp2);
if (res != 0) goto failed;
if (len != PyList_GET_SIZE(tmp)) {
@@ -6924,7 +7160,11 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
stmt_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i);
Py_INCREF(tmp2);
+ if (Py_EnterRecursiveCall(" while traversing 'AsyncWith' node")) {
+ goto failed;
+ }
res = obj2ast_stmt(state, tmp2, &val, arena);
+ Py_LeaveRecursiveCall();
Py_DECREF(tmp2);
if (res != 0) goto failed;
if (len != PyList_GET_SIZE(tmp)) {
@@ -6944,7 +7184,11 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'AsyncWith' node")) {
+ goto failed;
+ }
res = obj2ast_string(state, tmp, &type_comment, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -6971,7 +7215,11 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'Match' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp, &subject, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -6997,7 +7245,11 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
match_case_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i);
Py_INCREF(tmp2);
+ if (Py_EnterRecursiveCall(" while traversing 'Match' node")) {
+ goto failed;
+ }
res = obj2ast_match_case(state, tmp2, &val, arena);
+ Py_LeaveRecursiveCall();
Py_DECREF(tmp2);
if (res != 0) goto failed;
if (len != PyList_GET_SIZE(tmp)) {
@@ -7031,7 +7283,11 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'Raise' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp, &exc, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -7044,7 +7300,11 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'Raise' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp, &cause, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -7086,7 +7346,11 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
stmt_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i);
Py_INCREF(tmp2);
+ if (Py_EnterRecursiveCall(" while traversing 'Try' node")) {
+ goto failed;
+ }
res = obj2ast_stmt(state, tmp2, &val, arena);
+ Py_LeaveRecursiveCall();
Py_DECREF(tmp2);
if (res != 0) goto failed;
if (len != PyList_GET_SIZE(tmp)) {
@@ -7119,7 +7383,11 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
excepthandler_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i);
Py_INCREF(tmp2);
+ if (Py_EnterRecursiveCall(" while traversing 'Try' node")) {
+ goto failed;
+ }
res = obj2ast_excepthandler(state, tmp2, &val, arena);
+ Py_LeaveRecursiveCall();
Py_DECREF(tmp2);
if (res != 0) goto failed;
if (len != PyList_GET_SIZE(tmp)) {
@@ -7152,7 +7420,11 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
stmt_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i);
Py_INCREF(tmp2);
+ if (Py_EnterRecursiveCall(" while traversing 'Try' node")) {
+ goto failed;
+ }
res = obj2ast_stmt(state, tmp2, &val, arena);
+ Py_LeaveRecursiveCall();
Py_DECREF(tmp2);
if (res != 0) goto failed;
if (len != PyList_GET_SIZE(tmp)) {
@@ -7185,7 +7457,11 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
stmt_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i);
Py_INCREF(tmp2);
+ if (Py_EnterRecursiveCall(" while traversing 'Try' node")) {
+ goto failed;
+ }
res = obj2ast_stmt(state, tmp2, &val, arena);
+ Py_LeaveRecursiveCall();
Py_DECREF(tmp2);
if (res != 0) goto failed;
if (len != PyList_GET_SIZE(tmp)) {
@@ -7219,7 +7495,11 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'Assert' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp, &test, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -7232,7 +7512,11 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'Assert' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp, &msg, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -7271,7 +7555,11 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
alias_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i);
Py_INCREF(tmp2);
+ if (Py_EnterRecursiveCall(" while traversing 'Import' node")) {
+ goto failed;
+ }
res = obj2ast_alias(state, tmp2, &val, arena);
+ Py_LeaveRecursiveCall();
Py_DECREF(tmp2);
if (res != 0) goto failed;
if (len != PyList_GET_SIZE(tmp)) {
@@ -7306,7 +7594,11 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'ImportFrom' node")) {
+ goto failed;
+ }
res = obj2ast_identifier(state, tmp, &module, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -7332,7 +7624,11 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
alias_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i);
Py_INCREF(tmp2);
+ if (Py_EnterRecursiveCall(" while traversing 'ImportFrom' node")) {
+ goto failed;
+ }
res = obj2ast_alias(state, tmp2, &val, arena);
+ Py_LeaveRecursiveCall();
Py_DECREF(tmp2);
if (res != 0) goto failed;
if (len != PyList_GET_SIZE(tmp)) {
@@ -7352,7 +7648,11 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'ImportFrom' node")) {
+ goto failed;
+ }
res = obj2ast_int(state, tmp, &level, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -7391,7 +7691,11 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
identifier val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i);
Py_INCREF(tmp2);
+ if (Py_EnterRecursiveCall(" while traversing 'Global' node")) {
+ goto failed;
+ }
res = obj2ast_identifier(state, tmp2, &val, arena);
+ Py_LeaveRecursiveCall();
Py_DECREF(tmp2);
if (res != 0) goto failed;
if (len != PyList_GET_SIZE(tmp)) {
@@ -7437,7 +7741,11 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
identifier val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i);
Py_INCREF(tmp2);
+ if (Py_EnterRecursiveCall(" while traversing 'Nonlocal' node")) {
+ goto failed;
+ }
res = obj2ast_identifier(state, tmp2, &val, arena);
+ Py_LeaveRecursiveCall();
Py_DECREF(tmp2);
if (res != 0) goto failed;
if (len != PyList_GET_SIZE(tmp)) {
@@ -7470,7 +7778,11 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'Expr' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp, &value, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -7548,7 +7860,11 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'expr' node")) {
+ goto failed;
+ }
res = obj2ast_int(state, tmp, &lineno, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -7561,7 +7877,11 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'expr' node")) {
+ goto failed;
+ }
res = obj2ast_int(state, tmp, &col_offset, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -7574,7 +7894,11 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'expr' node")) {
+ goto failed;
+ }
res = obj2ast_int(state, tmp, &end_lineno, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -7587,7 +7911,11 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'expr' node")) {
+ goto failed;
+ }
res = obj2ast_int(state, tmp, &end_col_offset, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -7609,7 +7937,11 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'BoolOp' node")) {
+ goto failed;
+ }
res = obj2ast_boolop(state, tmp, &op, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -7635,7 +7967,11 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
expr_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i);
Py_INCREF(tmp2);
+ if (Py_EnterRecursiveCall(" while traversing 'BoolOp' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp2, &val, arena);
+ Py_LeaveRecursiveCall();
Py_DECREF(tmp2);
if (res != 0) goto failed;
if (len != PyList_GET_SIZE(tmp)) {
@@ -7669,7 +8005,11 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'NamedExpr' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp, &target, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -7682,7 +8022,11 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'NamedExpr' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp, &value, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -7710,7 +8054,11 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'BinOp' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp, &left, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -7723,7 +8071,11 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'BinOp' node")) {
+ goto failed;
+ }
res = obj2ast_operator(state, tmp, &op, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -7736,7 +8088,11 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'BinOp' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp, &right, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -7763,7 +8119,11 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'UnaryOp' node")) {
+ goto failed;
+ }
res = obj2ast_unaryop(state, tmp, &op, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -7776,7 +8136,11 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'UnaryOp' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp, &operand, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -7803,7 +8167,11 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'Lambda' node")) {
+ goto failed;
+ }
res = obj2ast_arguments(state, tmp, &args, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -7816,7 +8184,11 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'Lambda' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp, &body, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -7844,7 +8216,11 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'IfExp' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp, &test, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -7857,7 +8233,11 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'IfExp' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp, &body, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -7870,7 +8250,11 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'IfExp' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp, &orelse, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -7910,7 +8294,11 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
expr_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i);
Py_INCREF(tmp2);
+ if (Py_EnterRecursiveCall(" while traversing 'Dict' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp2, &val, arena);
+ Py_LeaveRecursiveCall();
Py_DECREF(tmp2);
if (res != 0) goto failed;
if (len != PyList_GET_SIZE(tmp)) {
@@ -7943,7 +8331,11 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
expr_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i);
Py_INCREF(tmp2);
+ if (Py_EnterRecursiveCall(" while traversing 'Dict' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp2, &val, arena);
+ Py_LeaveRecursiveCall();
Py_DECREF(tmp2);
if (res != 0) goto failed;
if (len != PyList_GET_SIZE(tmp)) {
@@ -7989,7 +8381,11 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
expr_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i);
Py_INCREF(tmp2);
+ if (Py_EnterRecursiveCall(" while traversing 'Set' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp2, &val, arena);
+ Py_LeaveRecursiveCall();
Py_DECREF(tmp2);
if (res != 0) goto failed;
if (len != PyList_GET_SIZE(tmp)) {
@@ -8023,7 +8419,11 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'ListComp' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp, &elt, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -8049,7 +8449,11 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
comprehension_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i);
Py_INCREF(tmp2);
+ if (Py_EnterRecursiveCall(" while traversing 'ListComp' node")) {
+ goto failed;
+ }
res = obj2ast_comprehension(state, tmp2, &val, arena);
+ Py_LeaveRecursiveCall();
Py_DECREF(tmp2);
if (res != 0) goto failed;
if (len != PyList_GET_SIZE(tmp)) {
@@ -8083,7 +8487,11 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'SetComp' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp, &elt, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -8109,7 +8517,11 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
comprehension_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i);
Py_INCREF(tmp2);
+ if (Py_EnterRecursiveCall(" while traversing 'SetComp' node")) {
+ goto failed;
+ }
res = obj2ast_comprehension(state, tmp2, &val, arena);
+ Py_LeaveRecursiveCall();
Py_DECREF(tmp2);
if (res != 0) goto failed;
if (len != PyList_GET_SIZE(tmp)) {
@@ -8144,7 +8556,11 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'DictComp' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp, &key, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -8157,7 +8573,11 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'DictComp' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp, &value, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -8183,7 +8603,11 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
comprehension_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i);
Py_INCREF(tmp2);
+ if (Py_EnterRecursiveCall(" while traversing 'DictComp' node")) {
+ goto failed;
+ }
res = obj2ast_comprehension(state, tmp2, &val, arena);
+ Py_LeaveRecursiveCall();
Py_DECREF(tmp2);
if (res != 0) goto failed;
if (len != PyList_GET_SIZE(tmp)) {
@@ -8217,7 +8641,11 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'GeneratorExp' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp, &elt, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -8243,7 +8671,11 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
comprehension_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i);
Py_INCREF(tmp2);
+ if (Py_EnterRecursiveCall(" while traversing 'GeneratorExp' node")) {
+ goto failed;
+ }
res = obj2ast_comprehension(state, tmp2, &val, arena);
+ Py_LeaveRecursiveCall();
Py_DECREF(tmp2);
if (res != 0) goto failed;
if (len != PyList_GET_SIZE(tmp)) {
@@ -8276,7 +8708,11 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'Await' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp, &value, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -8302,7 +8738,11 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'Yield' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp, &value, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -8328,7 +8768,11 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'YieldFrom' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp, &value, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -8356,7 +8800,11 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'Compare' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp, &left, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -8382,7 +8830,11 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
cmpop_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i);
Py_INCREF(tmp2);
+ if (Py_EnterRecursiveCall(" while traversing 'Compare' node")) {
+ goto failed;
+ }
res = obj2ast_cmpop(state, tmp2, &val, arena);
+ Py_LeaveRecursiveCall();
Py_DECREF(tmp2);
if (res != 0) goto failed;
if (len != PyList_GET_SIZE(tmp)) {
@@ -8415,7 +8867,11 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
expr_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i);
Py_INCREF(tmp2);
+ if (Py_EnterRecursiveCall(" while traversing 'Compare' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp2, &val, arena);
+ Py_LeaveRecursiveCall();
Py_DECREF(tmp2);
if (res != 0) goto failed;
if (len != PyList_GET_SIZE(tmp)) {
@@ -8450,7 +8906,11 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'Call' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp, &func, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -8476,7 +8936,11 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
expr_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i);
Py_INCREF(tmp2);
+ if (Py_EnterRecursiveCall(" while traversing 'Call' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp2, &val, arena);
+ Py_LeaveRecursiveCall();
Py_DECREF(tmp2);
if (res != 0) goto failed;
if (len != PyList_GET_SIZE(tmp)) {
@@ -8509,7 +8973,11 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
keyword_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i);
Py_INCREF(tmp2);
+ if (Py_EnterRecursiveCall(" while traversing 'Call' node")) {
+ goto failed;
+ }
res = obj2ast_keyword(state, tmp2, &val, arena);
+ Py_LeaveRecursiveCall();
Py_DECREF(tmp2);
if (res != 0) goto failed;
if (len != PyList_GET_SIZE(tmp)) {
@@ -8544,7 +9012,11 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'FormattedValue' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp, &value, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -8557,7 +9029,11 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'FormattedValue' node")) {
+ goto failed;
+ }
res = obj2ast_int(state, tmp, &conversion, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -8570,7 +9046,11 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'FormattedValue' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp, &format_spec, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -8610,7 +9090,11 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
expr_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i);
Py_INCREF(tmp2);
+ if (Py_EnterRecursiveCall(" while traversing 'JoinedStr' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp2, &val, arena);
+ Py_LeaveRecursiveCall();
Py_DECREF(tmp2);
if (res != 0) goto failed;
if (len != PyList_GET_SIZE(tmp)) {
@@ -8644,7 +9128,11 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'Constant' node")) {
+ goto failed;
+ }
res = obj2ast_constant(state, tmp, &value, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -8657,7 +9145,11 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'Constant' node")) {
+ goto failed;
+ }
res = obj2ast_string(state, tmp, &kind, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -8685,7 +9177,11 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'Attribute' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp, &value, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -8698,7 +9194,11 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'Attribute' node")) {
+ goto failed;
+ }
res = obj2ast_identifier(state, tmp, &attr, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -8711,7 +9211,11 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'Attribute' node")) {
+ goto failed;
+ }
res = obj2ast_expr_context(state, tmp, &ctx, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -8739,7 +9243,11 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'Subscript' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp, &value, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -8752,7 +9260,11 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'Subscript' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp, &slice, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -8765,7 +9277,11 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'Subscript' node")) {
+ goto failed;
+ }
res = obj2ast_expr_context(state, tmp, &ctx, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -8792,7 +9308,11 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'Starred' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp, &value, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -8805,7 +9325,11 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'Starred' node")) {
+ goto failed;
+ }
res = obj2ast_expr_context(state, tmp, &ctx, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -8832,7 +9356,11 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'Name' node")) {
+ goto failed;
+ }
res = obj2ast_identifier(state, tmp, &id, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -8845,7 +9373,11 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'Name' node")) {
+ goto failed;
+ }
res = obj2ast_expr_context(state, tmp, &ctx, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -8885,7 +9417,11 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
expr_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i);
Py_INCREF(tmp2);
+ if (Py_EnterRecursiveCall(" while traversing 'List' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp2, &val, arena);
+ Py_LeaveRecursiveCall();
Py_DECREF(tmp2);
if (res != 0) goto failed;
if (len != PyList_GET_SIZE(tmp)) {
@@ -8905,7 +9441,11 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'List' node")) {
+ goto failed;
+ }
res = obj2ast_expr_context(state, tmp, &ctx, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -8945,7 +9485,11 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
expr_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i);
Py_INCREF(tmp2);
+ if (Py_EnterRecursiveCall(" while traversing 'Tuple' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp2, &val, arena);
+ Py_LeaveRecursiveCall();
Py_DECREF(tmp2);
if (res != 0) goto failed;
if (len != PyList_GET_SIZE(tmp)) {
@@ -8965,7 +9509,11 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'Tuple' node")) {
+ goto failed;
+ }
res = obj2ast_expr_context(state, tmp, &ctx, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -8993,7 +9541,11 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'Slice' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp, &lower, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -9006,7 +9558,11 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'Slice' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp, &upper, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -9019,7 +9575,11 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'Slice' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp, &step, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -9365,7 +9925,11 @@ obj2ast_comprehension(struct ast_state *state, PyObject* obj, comprehension_ty*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'comprehension' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp, &target, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -9378,7 +9942,11 @@ obj2ast_comprehension(struct ast_state *state, PyObject* obj, comprehension_ty*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'comprehension' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp, &iter, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -9404,7 +9972,11 @@ obj2ast_comprehension(struct ast_state *state, PyObject* obj, comprehension_ty*
expr_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i);
Py_INCREF(tmp2);
+ if (Py_EnterRecursiveCall(" while traversing 'comprehension' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp2, &val, arena);
+ Py_LeaveRecursiveCall();
Py_DECREF(tmp2);
if (res != 0) goto failed;
if (len != PyList_GET_SIZE(tmp)) {
@@ -9424,7 +9996,11 @@ obj2ast_comprehension(struct ast_state *state, PyObject* obj, comprehension_ty*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'comprehension' node")) {
+ goto failed;
+ }
res = obj2ast_int(state, tmp, &is_async, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -9461,7 +10037,11 @@ obj2ast_excepthandler(struct ast_state *state, PyObject* obj, excepthandler_ty*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'excepthandler' node")) {
+ goto failed;
+ }
res = obj2ast_int(state, tmp, &lineno, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -9474,7 +10054,11 @@ obj2ast_excepthandler(struct ast_state *state, PyObject* obj, excepthandler_ty*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'excepthandler' node")) {
+ goto failed;
+ }
res = obj2ast_int(state, tmp, &col_offset, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -9487,7 +10071,11 @@ obj2ast_excepthandler(struct ast_state *state, PyObject* obj, excepthandler_ty*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'excepthandler' node")) {
+ goto failed;
+ }
res = obj2ast_int(state, tmp, &end_lineno, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -9500,7 +10088,11 @@ obj2ast_excepthandler(struct ast_state *state, PyObject* obj, excepthandler_ty*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'excepthandler' node")) {
+ goto failed;
+ }
res = obj2ast_int(state, tmp, &end_col_offset, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -9523,7 +10115,11 @@ obj2ast_excepthandler(struct ast_state *state, PyObject* obj, excepthandler_ty*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'ExceptHandler' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp, &type, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -9536,7 +10132,11 @@ obj2ast_excepthandler(struct ast_state *state, PyObject* obj, excepthandler_ty*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'ExceptHandler' node")) {
+ goto failed;
+ }
res = obj2ast_identifier(state, tmp, &name, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -9562,7 +10162,11 @@ obj2ast_excepthandler(struct ast_state *state, PyObject* obj, excepthandler_ty*
stmt_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i);
Py_INCREF(tmp2);
+ if (Py_EnterRecursiveCall(" while traversing 'ExceptHandler' node")) {
+ goto failed;
+ }
res = obj2ast_stmt(state, tmp2, &val, arena);
+ Py_LeaveRecursiveCall();
Py_DECREF(tmp2);
if (res != 0) goto failed;
if (len != PyList_GET_SIZE(tmp)) {
@@ -9620,7 +10224,11 @@ obj2ast_arguments(struct ast_state *state, PyObject* obj, arguments_ty* out,
arg_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i);
Py_INCREF(tmp2);
+ if (Py_EnterRecursiveCall(" while traversing 'arguments' node")) {
+ goto failed;
+ }
res = obj2ast_arg(state, tmp2, &val, arena);
+ Py_LeaveRecursiveCall();
Py_DECREF(tmp2);
if (res != 0) goto failed;
if (len != PyList_GET_SIZE(tmp)) {
@@ -9653,7 +10261,11 @@ obj2ast_arguments(struct ast_state *state, PyObject* obj, arguments_ty* out,
arg_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i);
Py_INCREF(tmp2);
+ if (Py_EnterRecursiveCall(" while traversing 'arguments' node")) {
+ goto failed;
+ }
res = obj2ast_arg(state, tmp2, &val, arena);
+ Py_LeaveRecursiveCall();
Py_DECREF(tmp2);
if (res != 0) goto failed;
if (len != PyList_GET_SIZE(tmp)) {
@@ -9673,7 +10285,11 @@ obj2ast_arguments(struct ast_state *state, PyObject* obj, arguments_ty* out,
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'arguments' node")) {
+ goto failed;
+ }
res = obj2ast_arg(state, tmp, &vararg, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -9699,7 +10315,11 @@ obj2ast_arguments(struct ast_state *state, PyObject* obj, arguments_ty* out,
arg_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i);
Py_INCREF(tmp2);
+ if (Py_EnterRecursiveCall(" while traversing 'arguments' node")) {
+ goto failed;
+ }
res = obj2ast_arg(state, tmp2, &val, arena);
+ Py_LeaveRecursiveCall();
Py_DECREF(tmp2);
if (res != 0) goto failed;
if (len != PyList_GET_SIZE(tmp)) {
@@ -9732,7 +10352,11 @@ obj2ast_arguments(struct ast_state *state, PyObject* obj, arguments_ty* out,
expr_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i);
Py_INCREF(tmp2);
+ if (Py_EnterRecursiveCall(" while traversing 'arguments' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp2, &val, arena);
+ Py_LeaveRecursiveCall();
Py_DECREF(tmp2);
if (res != 0) goto failed;
if (len != PyList_GET_SIZE(tmp)) {
@@ -9752,7 +10376,11 @@ obj2ast_arguments(struct ast_state *state, PyObject* obj, arguments_ty* out,
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'arguments' node")) {
+ goto failed;
+ }
res = obj2ast_arg(state, tmp, &kwarg, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -9778,7 +10406,11 @@ obj2ast_arguments(struct ast_state *state, PyObject* obj, arguments_ty* out,
expr_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i);
Py_INCREF(tmp2);
+ if (Py_EnterRecursiveCall(" while traversing 'arguments' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp2, &val, arena);
+ Py_LeaveRecursiveCall();
Py_DECREF(tmp2);
if (res != 0) goto failed;
if (len != PyList_GET_SIZE(tmp)) {
@@ -9818,7 +10450,11 @@ obj2ast_arg(struct ast_state *state, PyObject* obj, arg_ty* out, PyArena* arena)
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'arg' node")) {
+ goto failed;
+ }
res = obj2ast_identifier(state, tmp, &arg, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -9831,7 +10467,11 @@ obj2ast_arg(struct ast_state *state, PyObject* obj, arg_ty* out, PyArena* arena)
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'arg' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp, &annotation, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -9844,7 +10484,11 @@ obj2ast_arg(struct ast_state *state, PyObject* obj, arg_ty* out, PyArena* arena)
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'arg' node")) {
+ goto failed;
+ }
res = obj2ast_string(state, tmp, &type_comment, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -9857,7 +10501,11 @@ obj2ast_arg(struct ast_state *state, PyObject* obj, arg_ty* out, PyArena* arena)
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'arg' node")) {
+ goto failed;
+ }
res = obj2ast_int(state, tmp, &lineno, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -9870,7 +10518,11 @@ obj2ast_arg(struct ast_state *state, PyObject* obj, arg_ty* out, PyArena* arena)
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'arg' node")) {
+ goto failed;
+ }
res = obj2ast_int(state, tmp, &col_offset, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -9883,7 +10535,11 @@ obj2ast_arg(struct ast_state *state, PyObject* obj, arg_ty* out, PyArena* arena)
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'arg' node")) {
+ goto failed;
+ }
res = obj2ast_int(state, tmp, &end_lineno, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -9896,7 +10552,11 @@ obj2ast_arg(struct ast_state *state, PyObject* obj, arg_ty* out, PyArena* arena)
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'arg' node")) {
+ goto failed;
+ }
res = obj2ast_int(state, tmp, &end_col_offset, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -9929,7 +10589,11 @@ obj2ast_keyword(struct ast_state *state, PyObject* obj, keyword_ty* out,
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'keyword' node")) {
+ goto failed;
+ }
res = obj2ast_identifier(state, tmp, &arg, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -9942,7 +10606,11 @@ obj2ast_keyword(struct ast_state *state, PyObject* obj, keyword_ty* out,
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'keyword' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp, &value, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -9955,7 +10623,11 @@ obj2ast_keyword(struct ast_state *state, PyObject* obj, keyword_ty* out,
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'keyword' node")) {
+ goto failed;
+ }
res = obj2ast_int(state, tmp, &lineno, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -9968,7 +10640,11 @@ obj2ast_keyword(struct ast_state *state, PyObject* obj, keyword_ty* out,
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'keyword' node")) {
+ goto failed;
+ }
res = obj2ast_int(state, tmp, &col_offset, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -9981,7 +10657,11 @@ obj2ast_keyword(struct ast_state *state, PyObject* obj, keyword_ty* out,
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'keyword' node")) {
+ goto failed;
+ }
res = obj2ast_int(state, tmp, &end_lineno, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -9994,7 +10674,11 @@ obj2ast_keyword(struct ast_state *state, PyObject* obj, keyword_ty* out,
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'keyword' node")) {
+ goto failed;
+ }
res = obj2ast_int(state, tmp, &end_col_offset, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -10027,7 +10711,11 @@ obj2ast_alias(struct ast_state *state, PyObject* obj, alias_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'alias' node")) {
+ goto failed;
+ }
res = obj2ast_identifier(state, tmp, &name, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -10040,7 +10728,11 @@ obj2ast_alias(struct ast_state *state, PyObject* obj, alias_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'alias' node")) {
+ goto failed;
+ }
res = obj2ast_identifier(state, tmp, &asname, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -10053,7 +10745,11 @@ obj2ast_alias(struct ast_state *state, PyObject* obj, alias_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'alias' node")) {
+ goto failed;
+ }
res = obj2ast_int(state, tmp, &lineno, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -10066,7 +10762,11 @@ obj2ast_alias(struct ast_state *state, PyObject* obj, alias_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'alias' node")) {
+ goto failed;
+ }
res = obj2ast_int(state, tmp, &col_offset, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -10079,7 +10779,11 @@ obj2ast_alias(struct ast_state *state, PyObject* obj, alias_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'alias' node")) {
+ goto failed;
+ }
res = obj2ast_int(state, tmp, &end_lineno, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -10092,7 +10796,11 @@ obj2ast_alias(struct ast_state *state, PyObject* obj, alias_ty* out, PyArena*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'alias' node")) {
+ goto failed;
+ }
res = obj2ast_int(state, tmp, &end_col_offset, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -10121,7 +10829,11 @@ obj2ast_withitem(struct ast_state *state, PyObject* obj, withitem_ty* out,
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'withitem' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp, &context_expr, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -10134,7 +10846,11 @@ obj2ast_withitem(struct ast_state *state, PyObject* obj, withitem_ty* out,
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'withitem' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp, &optional_vars, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -10163,7 +10879,11 @@ obj2ast_match_case(struct ast_state *state, PyObject* obj, match_case_ty* out,
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'match_case' node")) {
+ goto failed;
+ }
res = obj2ast_pattern(state, tmp, &pattern, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -10176,7 +10896,11 @@ obj2ast_match_case(struct ast_state *state, PyObject* obj, match_case_ty* out,
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'match_case' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp, &guard, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -10202,7 +10926,11 @@ obj2ast_match_case(struct ast_state *state, PyObject* obj, match_case_ty* out,
stmt_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i);
Py_INCREF(tmp2);
+ if (Py_EnterRecursiveCall(" while traversing 'match_case' node")) {
+ goto failed;
+ }
res = obj2ast_stmt(state, tmp2, &val, arena);
+ Py_LeaveRecursiveCall();
Py_DECREF(tmp2);
if (res != 0) goto failed;
if (len != PyList_GET_SIZE(tmp)) {
@@ -10246,7 +10974,11 @@ obj2ast_pattern(struct ast_state *state, PyObject* obj, pattern_ty* out,
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'pattern' node")) {
+ goto failed;
+ }
res = obj2ast_int(state, tmp, &lineno, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -10259,7 +10991,11 @@ obj2ast_pattern(struct ast_state *state, PyObject* obj, pattern_ty* out,
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'pattern' node")) {
+ goto failed;
+ }
res = obj2ast_int(state, tmp, &col_offset, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -10272,7 +11008,11 @@ obj2ast_pattern(struct ast_state *state, PyObject* obj, pattern_ty* out,
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'pattern' node")) {
+ goto failed;
+ }
res = obj2ast_int(state, tmp, &end_lineno, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -10285,7 +11025,11 @@ obj2ast_pattern(struct ast_state *state, PyObject* obj, pattern_ty* out,
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'pattern' node")) {
+ goto failed;
+ }
res = obj2ast_int(state, tmp, &end_col_offset, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -10306,7 +11050,11 @@ obj2ast_pattern(struct ast_state *state, PyObject* obj, pattern_ty* out,
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'MatchValue' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp, &value, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -10332,7 +11080,11 @@ obj2ast_pattern(struct ast_state *state, PyObject* obj, pattern_ty* out,
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'MatchSingleton' node")) {
+ goto failed;
+ }
res = obj2ast_constant(state, tmp, &value, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -10371,7 +11123,11 @@ obj2ast_pattern(struct ast_state *state, PyObject* obj, pattern_ty* out,
pattern_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i);
Py_INCREF(tmp2);
+ if (Py_EnterRecursiveCall(" while traversing 'MatchSequence' node")) {
+ goto failed;
+ }
res = obj2ast_pattern(state, tmp2, &val, arena);
+ Py_LeaveRecursiveCall();
Py_DECREF(tmp2);
if (res != 0) goto failed;
if (len != PyList_GET_SIZE(tmp)) {
@@ -10419,7 +11175,11 @@ obj2ast_pattern(struct ast_state *state, PyObject* obj, pattern_ty* out,
expr_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i);
Py_INCREF(tmp2);
+ if (Py_EnterRecursiveCall(" while traversing 'MatchMapping' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp2, &val, arena);
+ Py_LeaveRecursiveCall();
Py_DECREF(tmp2);
if (res != 0) goto failed;
if (len != PyList_GET_SIZE(tmp)) {
@@ -10452,7 +11212,11 @@ obj2ast_pattern(struct ast_state *state, PyObject* obj, pattern_ty* out,
pattern_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i);
Py_INCREF(tmp2);
+ if (Py_EnterRecursiveCall(" while traversing 'MatchMapping' node")) {
+ goto failed;
+ }
res = obj2ast_pattern(state, tmp2, &val, arena);
+ Py_LeaveRecursiveCall();
Py_DECREF(tmp2);
if (res != 0) goto failed;
if (len != PyList_GET_SIZE(tmp)) {
@@ -10472,7 +11236,11 @@ obj2ast_pattern(struct ast_state *state, PyObject* obj, pattern_ty* out,
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'MatchMapping' node")) {
+ goto failed;
+ }
res = obj2ast_identifier(state, tmp, &rest, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -10501,7 +11269,11 @@ obj2ast_pattern(struct ast_state *state, PyObject* obj, pattern_ty* out,
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'MatchClass' node")) {
+ goto failed;
+ }
res = obj2ast_expr(state, tmp, &cls, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -10527,7 +11299,11 @@ obj2ast_pattern(struct ast_state *state, PyObject* obj, pattern_ty* out,
pattern_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i);
Py_INCREF(tmp2);
+ if (Py_EnterRecursiveCall(" while traversing 'MatchClass' node")) {
+ goto failed;
+ }
res = obj2ast_pattern(state, tmp2, &val, arena);
+ Py_LeaveRecursiveCall();
Py_DECREF(tmp2);
if (res != 0) goto failed;
if (len != PyList_GET_SIZE(tmp)) {
@@ -10560,7 +11336,11 @@ obj2ast_pattern(struct ast_state *state, PyObject* obj, pattern_ty* out,
identifier val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i);
Py_INCREF(tmp2);
+ if (Py_EnterRecursiveCall(" while traversing 'MatchClass' node")) {
+ goto failed;
+ }
res = obj2ast_identifier(state, tmp2, &val, arena);
+ Py_LeaveRecursiveCall();
Py_DECREF(tmp2);
if (res != 0) goto failed;
if (len != PyList_GET_SIZE(tmp)) {
@@ -10593,7 +11373,11 @@ obj2ast_pattern(struct ast_state *state, PyObject* obj, pattern_ty* out,
pattern_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i);
Py_INCREF(tmp2);
+ if (Py_EnterRecursiveCall(" while traversing 'MatchClass' node")) {
+ goto failed;
+ }
res = obj2ast_pattern(state, tmp2, &val, arena);
+ Py_LeaveRecursiveCall();
Py_DECREF(tmp2);
if (res != 0) goto failed;
if (len != PyList_GET_SIZE(tmp)) {
@@ -10627,7 +11411,11 @@ obj2ast_pattern(struct ast_state *state, PyObject* obj, pattern_ty* out,
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'MatchStar' node")) {
+ goto failed;
+ }
res = obj2ast_identifier(state, tmp, &name, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -10654,7 +11442,11 @@ obj2ast_pattern(struct ast_state *state, PyObject* obj, pattern_ty* out,
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'MatchAs' node")) {
+ goto failed;
+ }
res = obj2ast_pattern(state, tmp, &pattern, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -10667,7 +11459,11 @@ obj2ast_pattern(struct ast_state *state, PyObject* obj, pattern_ty* out,
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'MatchAs' node")) {
+ goto failed;
+ }
res = obj2ast_identifier(state, tmp, &name, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -10706,7 +11502,11 @@ obj2ast_pattern(struct ast_state *state, PyObject* obj, pattern_ty* out,
pattern_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i);
Py_INCREF(tmp2);
+ if (Py_EnterRecursiveCall(" while traversing 'MatchOr' node")) {
+ goto failed;
+ }
res = obj2ast_pattern(state, tmp2, &val, arena);
+ Py_LeaveRecursiveCall();
Py_DECREF(tmp2);
if (res != 0) goto failed;
if (len != PyList_GET_SIZE(tmp)) {
@@ -10760,7 +11560,11 @@ obj2ast_type_ignore(struct ast_state *state, PyObject* obj, type_ignore_ty*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'TypeIgnore' node")) {
+ goto failed;
+ }
res = obj2ast_int(state, tmp, &lineno, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
@@ -10773,7 +11577,11 @@ obj2ast_type_ignore(struct ast_state *state, PyObject* obj, type_ignore_ty*
}
else {
int res;
+ if (Py_EnterRecursiveCall(" while traversing 'TypeIgnore' node")) {
+ goto failed;
+ }
res = obj2ast_string(state, tmp, &tag, arena);
+ Py_LeaveRecursiveCall();
if (res != 0) goto failed;
Py_CLEAR(tmp);
}
diff --git a/Python/_warnings.c b/Python/_warnings.c
index 2c9a2a76872676..9c8815c1a3e204 100644
--- a/Python/_warnings.c
+++ b/Python/_warnings.c
@@ -5,6 +5,7 @@
#include "pycore_pyerrors.h"
#include "pycore_pystate.h" // _PyThreadState_GET()
#include "frameobject.h" // PyFrame_GetBack()
+#include "pycore_frame.h"
#include "clinic/_warnings.c.h"
#define MODULE_NAME "_warnings"
@@ -853,7 +854,7 @@ setup_context(Py_ssize_t stack_level, PyObject **filename, int *lineno,
*lineno = 1;
}
else {
- globals = f->f_globals;
+ globals = _PyFrame_GetGlobals(f);
PyCodeObject *code = PyFrame_GetCode(f);
*filename = code->co_filename;
Py_DECREF(code);
diff --git a/Python/ast_opt.c b/Python/ast_opt.c
index 53e089cfab499c..f6506cef035cd4 100644
--- a/Python/ast_opt.c
+++ b/Python/ast_opt.c
@@ -30,6 +30,20 @@ make_const(expr_ty node, PyObject *val, PyArena *arena)
#define COPY_NODE(TO, FROM) (memcpy((TO), (FROM), sizeof(struct _expr)))
+static int
+has_starred(asdl_expr_seq *elts)
+{
+ Py_ssize_t n = asdl_seq_LEN(elts);
+ for (Py_ssize_t i = 0; i < n; i++) {
+ expr_ty e = (expr_ty)asdl_seq_GET(elts, i);
+ if (e->kind == Starred_kind) {
+ return 1;
+ }
+ }
+ return 0;
+}
+
+
static PyObject*
unary_not(PyObject *v)
{
@@ -318,8 +332,8 @@ simple_format_arg_parse(PyObject *fmt, Py_ssize_t *ppos,
if (ch == '.') {
NEXTC;
+ *prec = 0;
if ('0' <= ch && ch <= '9') {
- *prec = 0;
int digits = 0;
while ('0' <= ch && ch <= '9') {
*prec = *prec * 10 + (ch - '0');
@@ -445,7 +459,8 @@ fold_binop(expr_ty node, PyArena *arena, _PyASTOptimizeState *state)
if (node->v.BinOp.op == Mod &&
rhs->kind == Tuple_kind &&
- PyUnicode_Check(lv))
+ PyUnicode_Check(lv) &&
+ !has_starred(rhs->v.Tuple.elts))
{
return optimize_format(node, lv, rhs->v.Tuple.elts, arena);
}
@@ -572,12 +587,8 @@ fold_iter(expr_ty arg, PyArena *arena, _PyASTOptimizeState *state)
if (arg->kind == List_kind) {
/* First change a list into tuple. */
asdl_expr_seq *elts = arg->v.List.elts;
- Py_ssize_t n = asdl_seq_LEN(elts);
- for (Py_ssize_t i = 0; i < n; i++) {
- expr_ty e = (expr_ty)asdl_seq_GET(elts, i);
- if (e->kind == Starred_kind) {
- return 1;
- }
+ if (has_starred(elts)) {
+ return 1;
}
expr_context_ty ctx = arg->v.List.ctx;
arg->kind = Tuple_kind;
diff --git a/Python/ceval.c b/Python/ceval.c
index fa7b0b5a051e3a..4dff7bd2df9834 100644
--- a/Python/ceval.c
+++ b/Python/ceval.c
@@ -26,6 +26,7 @@
#include "code.h"
#include "dictobject.h"
#include "frameobject.h"
+#include "pycore_frame.h"
#include "opcode.h"
#include "pydtrace.h"
#include "setobject.h"
@@ -100,10 +101,10 @@ static int get_exception_handler(PyCodeObject *, int, int*, int*, int*);
#define NAME_ERROR_MSG \
"name '%.200s' is not defined"
#define UNBOUNDLOCAL_ERROR_MSG \
- "local variable '%.200s' referenced before assignment"
+ "cannot access local variable '%s' where it is not associated with a value"
#define UNBOUNDFREE_ERROR_MSG \
- "free variable '%.200s' referenced before assignment" \
- " in enclosing scope"
+ "cannot access free variable '%s' where it is not associated with a" \
+ " value in enclosing scope"
/* Dynamic execution profile */
#ifdef DYNAMIC_EXECUTION_PROFILE
@@ -1547,6 +1548,9 @@ eval_frame_handle_pending(PyThreadState *tstate)
#endif
+#define GLOBALS() specials[FRAME_SPECIALS_GLOBALS_OFFSET]
+#define BUILTINS() specials[FRAME_SPECIALS_BUILTINS_OFFSET]
+#define LOCALS() specials[FRAME_SPECIALS_LOCALS_OFFSET]
PyObject* _Py_HOT_FUNCTION
_PyEval_EvalFrameDefault(PyThreadState *tstate, PyFrameObject *f, int throwflag)
@@ -1565,7 +1569,7 @@ _PyEval_EvalFrameDefault(PyThreadState *tstate, PyFrameObject *f, int throwflag)
const _Py_CODEUNIT *next_instr;
int opcode; /* Current opcode */
int oparg; /* Current opcode argument, if any */
- PyObject **fastlocals, **freevars;
+ PyObject **fastlocals, **freevars, **specials;
PyObject *retval = NULL; /* Return value */
_Py_atomic_int * const eval_breaker = &tstate->interp->ceval.eval_breaker;
PyCodeObject *co;
@@ -1598,6 +1602,7 @@ _PyEval_EvalFrameDefault(PyThreadState *tstate, PyFrameObject *f, int throwflag)
/* push frame */
tstate->frame = f;
+ specials = f->f_valuestack - FRAME_SPECIALS_SIZE;
co = f->f_code;
if (trace_info.cframe.use_tracing) {
@@ -1641,8 +1646,8 @@ _PyEval_EvalFrameDefault(PyThreadState *tstate, PyFrameObject *f, int throwflag)
names = co->co_names;
consts = co->co_consts;
- fastlocals = f->f_localsplus;
- freevars = f->f_localsplus + co->co_nlocals;
+ fastlocals = f->f_localsptr;
+ freevars = f->f_localsptr + co->co_nlocals;
assert(PyBytes_Check(co->co_code));
assert(PyBytes_GET_SIZE(co->co_code) <= INT_MAX);
assert(PyBytes_GET_SIZE(co->co_code) % sizeof(_Py_CODEUNIT) == 0);
@@ -1692,7 +1697,7 @@ _PyEval_EvalFrameDefault(PyThreadState *tstate, PyFrameObject *f, int throwflag)
#ifdef LLTRACE
{
- int r = _PyDict_ContainsId(f->f_globals, &PyId___ltrace__);
+ int r = _PyDict_ContainsId(GLOBALS(), &PyId___ltrace__);
if (r < 0) {
goto exit_eval_frame;
}
@@ -2726,8 +2731,8 @@ _PyEval_EvalFrameDefault(PyThreadState *tstate, PyFrameObject *f, int throwflag)
_Py_IDENTIFIER(__build_class__);
PyObject *bc;
- if (PyDict_CheckExact(f->f_builtins)) {
- bc = _PyDict_GetItemIdWithError(f->f_builtins, &PyId___build_class__);
+ if (PyDict_CheckExact(BUILTINS())) {
+ bc = _PyDict_GetItemIdWithError(BUILTINS(), &PyId___build_class__);
if (bc == NULL) {
if (!_PyErr_Occurred(tstate)) {
_PyErr_SetString(tstate, PyExc_NameError,
@@ -2741,7 +2746,7 @@ _PyEval_EvalFrameDefault(PyThreadState *tstate, PyFrameObject *f, int throwflag)
PyObject *build_class_str = _PyUnicode_FromId(&PyId___build_class__);
if (build_class_str == NULL)
goto error;
- bc = PyObject_GetItem(f->f_builtins, build_class_str);
+ bc = PyObject_GetItem(BUILTINS(), build_class_str);
if (bc == NULL) {
if (_PyErr_ExceptionMatches(tstate, PyExc_KeyError))
_PyErr_SetString(tstate, PyExc_NameError,
@@ -2756,7 +2761,7 @@ _PyEval_EvalFrameDefault(PyThreadState *tstate, PyFrameObject *f, int throwflag)
case TARGET(STORE_NAME): {
PyObject *name = GETITEM(names, oparg);
PyObject *v = POP();
- PyObject *ns = f->f_locals;
+ PyObject *ns = LOCALS();
int err;
if (ns == NULL) {
_PyErr_Format(tstate, PyExc_SystemError,
@@ -2776,7 +2781,7 @@ _PyEval_EvalFrameDefault(PyThreadState *tstate, PyFrameObject *f, int throwflag)
case TARGET(DELETE_NAME): {
PyObject *name = GETITEM(names, oparg);
- PyObject *ns = f->f_locals;
+ PyObject *ns = LOCALS();
int err;
if (ns == NULL) {
_PyErr_Format(tstate, PyExc_SystemError,
@@ -2868,7 +2873,7 @@ _PyEval_EvalFrameDefault(PyThreadState *tstate, PyFrameObject *f, int throwflag)
PyObject *name = GETITEM(names, oparg);
PyObject *v = POP();
int err;
- err = PyDict_SetItem(f->f_globals, name, v);
+ err = PyDict_SetItem(GLOBALS(), name, v);
Py_DECREF(v);
if (err != 0)
goto error;
@@ -2878,7 +2883,7 @@ _PyEval_EvalFrameDefault(PyThreadState *tstate, PyFrameObject *f, int throwflag)
case TARGET(DELETE_GLOBAL): {
PyObject *name = GETITEM(names, oparg);
int err;
- err = PyDict_DelItem(f->f_globals, name);
+ err = PyDict_DelItem(GLOBALS(), name);
if (err != 0) {
if (_PyErr_ExceptionMatches(tstate, PyExc_KeyError)) {
format_exc_check_arg(tstate, PyExc_NameError,
@@ -2891,7 +2896,7 @@ _PyEval_EvalFrameDefault(PyThreadState *tstate, PyFrameObject *f, int throwflag)
case TARGET(LOAD_NAME): {
PyObject *name = GETITEM(names, oparg);
- PyObject *locals = f->f_locals;
+ PyObject *locals = LOCALS();
PyObject *v;
if (locals == NULL) {
_PyErr_Format(tstate, PyExc_SystemError,
@@ -2916,7 +2921,7 @@ _PyEval_EvalFrameDefault(PyThreadState *tstate, PyFrameObject *f, int throwflag)
}
}
if (v == NULL) {
- v = PyDict_GetItemWithError(f->f_globals, name);
+ v = PyDict_GetItemWithError(GLOBALS(), name);
if (v != NULL) {
Py_INCREF(v);
}
@@ -2924,8 +2929,8 @@ _PyEval_EvalFrameDefault(PyThreadState *tstate, PyFrameObject *f, int throwflag)
goto error;
}
else {
- if (PyDict_CheckExact(f->f_builtins)) {
- v = PyDict_GetItemWithError(f->f_builtins, name);
+ if (PyDict_CheckExact(BUILTINS())) {
+ v = PyDict_GetItemWithError(BUILTINS(), name);
if (v == NULL) {
if (!_PyErr_Occurred(tstate)) {
format_exc_check_arg(
@@ -2937,7 +2942,7 @@ _PyEval_EvalFrameDefault(PyThreadState *tstate, PyFrameObject *f, int throwflag)
Py_INCREF(v);
}
else {
- v = PyObject_GetItem(f->f_builtins, name);
+ v = PyObject_GetItem(BUILTINS(), name);
if (v == NULL) {
if (_PyErr_ExceptionMatches(tstate, PyExc_KeyError)) {
format_exc_check_arg(
@@ -2956,17 +2961,17 @@ _PyEval_EvalFrameDefault(PyThreadState *tstate, PyFrameObject *f, int throwflag)
case TARGET(LOAD_GLOBAL): {
PyObject *name;
PyObject *v;
- if (PyDict_CheckExact(f->f_globals)
- && PyDict_CheckExact(f->f_builtins))
+ if (PyDict_CheckExact(GLOBALS())
+ && PyDict_CheckExact(BUILTINS()))
{
OPCACHE_CHECK();
if (co_opcache != NULL && co_opcache->optimized > 0) {
_PyOpcache_LoadGlobal *lg = &co_opcache->u.lg;
if (lg->globals_ver ==
- ((PyDictObject *)f->f_globals)->ma_version_tag
+ ((PyDictObject *)GLOBALS())->ma_version_tag
&& lg->builtins_ver ==
- ((PyDictObject *)f->f_builtins)->ma_version_tag)
+ ((PyDictObject *)BUILTINS())->ma_version_tag)
{
PyObject *ptr = lg->ptr;
OPCACHE_STAT_GLOBAL_HIT();
@@ -2978,8 +2983,8 @@ _PyEval_EvalFrameDefault(PyThreadState *tstate, PyFrameObject *f, int throwflag)
}
name = GETITEM(names, oparg);
- v = _PyDict_LoadGlobal((PyDictObject *)f->f_globals,
- (PyDictObject *)f->f_builtins,
+ v = _PyDict_LoadGlobal((PyDictObject *)GLOBALS(),
+ (PyDictObject *)BUILTINS(),
name);
if (v == NULL) {
if (!_PyErr_Occurred(tstate)) {
@@ -3003,9 +3008,9 @@ _PyEval_EvalFrameDefault(PyThreadState *tstate, PyFrameObject *f, int throwflag)
co_opcache->optimized = 1;
lg->globals_ver =
- ((PyDictObject *)f->f_globals)->ma_version_tag;
+ ((PyDictObject *)GLOBALS())->ma_version_tag;
lg->builtins_ver =
- ((PyDictObject *)f->f_builtins)->ma_version_tag;
+ ((PyDictObject *)BUILTINS())->ma_version_tag;
lg->ptr = v; /* borrowed */
}
@@ -3016,7 +3021,7 @@ _PyEval_EvalFrameDefault(PyThreadState *tstate, PyFrameObject *f, int throwflag)
/* namespace 1: globals */
name = GETITEM(names, oparg);
- v = PyObject_GetItem(f->f_globals, name);
+ v = PyObject_GetItem(GLOBALS(), name);
if (v == NULL) {
if (!_PyErr_ExceptionMatches(tstate, PyExc_KeyError)) {
goto error;
@@ -3024,7 +3029,7 @@ _PyEval_EvalFrameDefault(PyThreadState *tstate, PyFrameObject *f, int throwflag)
_PyErr_Clear(tstate);
/* namespace 2: builtins */
- v = PyObject_GetItem(f->f_builtins, name);
+ v = PyObject_GetItem(BUILTINS(), name);
if (v == NULL) {
if (_PyErr_ExceptionMatches(tstate, PyExc_KeyError)) {
format_exc_check_arg(
@@ -3073,12 +3078,12 @@ _PyEval_EvalFrameDefault(PyThreadState *tstate, PyFrameObject *f, int throwflag)
}
case TARGET(LOAD_CLASSDEREF): {
- PyObject *name, *value, *locals = f->f_locals;
+ PyObject *name, *value, *locals = LOCALS();
Py_ssize_t idx;
assert(locals);
- assert(oparg >= PyTuple_GET_SIZE(co->co_cellvars));
- idx = oparg - PyTuple_GET_SIZE(co->co_cellvars);
- assert(idx >= 0 && idx < PyTuple_GET_SIZE(co->co_freevars));
+ assert(oparg >= co->co_ncellvars);
+ idx = oparg - co->co_ncellvars;
+ assert(idx >= 0 && idx < co->co_nfreevars);
name = PyTuple_GET_ITEM(co->co_freevars, idx);
if (PyDict_CheckExact(locals)) {
value = PyDict_GetItemWithError(locals, name);
@@ -3266,14 +3271,14 @@ _PyEval_EvalFrameDefault(PyThreadState *tstate, PyFrameObject *f, int throwflag)
_Py_IDENTIFIER(__annotations__);
int err;
PyObject *ann_dict;
- if (f->f_locals == NULL) {
+ if (LOCALS() == NULL) {
_PyErr_Format(tstate, PyExc_SystemError,
"no locals found when setting up annotations");
goto error;
}
/* check if __annotations__ in locals()... */
- if (PyDict_CheckExact(f->f_locals)) {
- ann_dict = _PyDict_GetItemIdWithError(f->f_locals,
+ if (PyDict_CheckExact(LOCALS())) {
+ ann_dict = _PyDict_GetItemIdWithError(LOCALS(),
&PyId___annotations__);
if (ann_dict == NULL) {
if (_PyErr_Occurred(tstate)) {
@@ -3284,7 +3289,7 @@ _PyEval_EvalFrameDefault(PyThreadState *tstate, PyFrameObject *f, int throwflag)
if (ann_dict == NULL) {
goto error;
}
- err = _PyDict_SetItemId(f->f_locals,
+ err = _PyDict_SetItemId(LOCALS(),
&PyId___annotations__, ann_dict);
Py_DECREF(ann_dict);
if (err != 0) {
@@ -3298,7 +3303,7 @@ _PyEval_EvalFrameDefault(PyThreadState *tstate, PyFrameObject *f, int throwflag)
if (ann_str == NULL) {
goto error;
}
- ann_dict = PyObject_GetItem(f->f_locals, ann_str);
+ ann_dict = PyObject_GetItem(LOCALS(), ann_str);
if (ann_dict == NULL) {
if (!_PyErr_ExceptionMatches(tstate, PyExc_KeyError)) {
goto error;
@@ -3308,7 +3313,7 @@ _PyEval_EvalFrameDefault(PyThreadState *tstate, PyFrameObject *f, int throwflag)
if (ann_dict == NULL) {
goto error;
}
- err = PyObject_SetItem(f->f_locals, ann_str, ann_dict);
+ err = PyObject_SetItem(LOCALS(), ann_str, ann_dict);
Py_DECREF(ann_dict);
if (err != 0) {
goto error;
@@ -3707,7 +3712,7 @@ _PyEval_EvalFrameDefault(PyThreadState *tstate, PyFrameObject *f, int throwflag)
goto error;
}
- locals = f->f_locals;
+ locals = LOCALS();
if (locals == NULL) {
_PyErr_SetString(tstate, PyExc_SystemError,
"no locals found during 'import *'");
@@ -4313,7 +4318,7 @@ _PyEval_EvalFrameDefault(PyThreadState *tstate, PyFrameObject *f, int throwflag)
PyObject *qualname = POP();
PyObject *codeobj = POP();
PyFunctionObject *func = (PyFunctionObject *)
- PyFunction_NewWithQualName(codeobj, f->f_globals, qualname);
+ PyFunction_NewWithQualName(codeobj, GLOBALS(), qualname);
Py_DECREF(codeobj);
Py_DECREF(qualname);
@@ -4816,15 +4821,6 @@ skip_to_next_entry(unsigned char *p, unsigned char *end) {
return p;
}
-static inline unsigned char *
-parse_range(unsigned char *p, int *start, int*end)
-{
- p = parse_varint(p, start);
- int size;
- p = parse_varint(p, &size);
- *end = *start + size;
- return p;
-}
#define MAX_LINEAR_SEARCH 40
@@ -4878,25 +4874,14 @@ get_exception_handler(PyCodeObject *code, int index, int *level, int *handler, i
return 0;
}
-PyFrameObject *
-_PyEval_MakeFrameVector(PyThreadState *tstate,
- PyFrameConstructor *con, PyObject *locals,
- PyObject *const *args, Py_ssize_t argcount,
- PyObject *kwnames)
+static int
+initialize_locals(PyThreadState *tstate, PyFrameConstructor *con,
+ PyObject **fastlocals, PyObject *const *args,
+ Py_ssize_t argcount, PyObject *kwnames)
{
- assert(is_tstate_valid(tstate));
-
PyCodeObject *co = (PyCodeObject*)con->fc_code;
- assert(con->fc_defaults == NULL || PyTuple_CheckExact(con->fc_defaults));
const Py_ssize_t total_args = co->co_argcount + co->co_kwonlyargcount;
-
- /* Create the frame */
- PyFrameObject *f = _PyFrame_New_NoTrack(tstate, con, locals);
- if (f == NULL) {
- return NULL;
- }
- PyObject **fastlocals = f->f_localsplus;
- PyObject **freevars = f->f_localsplus + co->co_nlocals;
+ PyObject **freevars = fastlocals + co->co_nlocals;
/* Create a dictionary for keyword parameters (**kwags) */
PyObject *kwdict;
@@ -5077,7 +5062,7 @@ _PyEval_MakeFrameVector(PyThreadState *tstate,
/* Allocate and initialize storage for cell vars, and copy free
vars into frame. */
- for (i = 0; i < PyTuple_GET_SIZE(co->co_cellvars); ++i) {
+ for (i = 0; i < co->co_ncellvars; ++i) {
PyObject *c;
Py_ssize_t arg;
/* Possibly account for the cell variable being an argument. */
@@ -5096,31 +5081,39 @@ _PyEval_MakeFrameVector(PyThreadState *tstate,
}
/* Copy closure variables to free variables */
- for (i = 0; i < PyTuple_GET_SIZE(co->co_freevars); ++i) {
+ for (i = 0; i < co->co_nfreevars; ++i) {
PyObject *o = PyTuple_GET_ITEM(con->fc_closure, i);
Py_INCREF(o);
- freevars[PyTuple_GET_SIZE(co->co_cellvars) + i] = o;
+ freevars[co->co_ncellvars + i] = o;
}
- return f;
+ return 0;
fail: /* Jump here from prelude on failure */
+ return -1;
- /* decref'ing the frame can cause __del__ methods to get invoked,
- which can call back into Python. While we're done with the
- current Python frame (f), the associated C stack is still in use,
- so recursion_depth must be boosted for the duration.
- */
- if (Py_REFCNT(f) > 1) {
- Py_DECREF(f);
- _PyObject_GC_TRACK(f);
+}
+
+
+PyFrameObject *
+_PyEval_MakeFrameVector(PyThreadState *tstate,
+ PyFrameConstructor *con, PyObject *locals,
+ PyObject *const *args, Py_ssize_t argcount,
+ PyObject *kwnames, PyObject** localsarray)
+{
+ assert(is_tstate_valid(tstate));
+ assert(con->fc_defaults == NULL || PyTuple_CheckExact(con->fc_defaults));
+
+ /* Create the frame */
+ PyFrameObject *f = _PyFrame_New_NoTrack(tstate, con, locals, localsarray);
+ if (f == NULL) {
+ return NULL;
}
- else {
- ++tstate->recursion_depth;
+ if (initialize_locals(tstate, con, f->f_localsptr, args, argcount, kwnames)) {
Py_DECREF(f);
- --tstate->recursion_depth;
+ return NULL;
}
- return NULL;
+ return f;
}
static PyObject *
@@ -5158,30 +5151,59 @@ _PyEval_Vector(PyThreadState *tstate, PyFrameConstructor *con,
PyObject* const* args, size_t argcount,
PyObject *kwnames)
{
+ PyObject **localsarray;
+ PyCodeObject *code = (PyCodeObject *)con->fc_code;
+ int is_coro = code->co_flags &
+ (CO_GENERATOR | CO_COROUTINE | CO_ASYNC_GENERATOR);
+ if (is_coro) {
+ localsarray = NULL;
+ }
+ else {
+ int size = code->co_nlocalsplus + code->co_stacksize +
+ FRAME_SPECIALS_SIZE;
+ localsarray = _PyThreadState_PushLocals(tstate, size);
+ if (localsarray == NULL) {
+ return NULL;
+ }
+ }
PyFrameObject *f = _PyEval_MakeFrameVector(
- tstate, con, locals, args, argcount, kwnames);
+ tstate, con, locals, args, argcount, kwnames, localsarray);
if (f == NULL) {
+ if (!is_coro) {
+ _PyThreadState_PopLocals(tstate, localsarray);
+ }
return NULL;
}
- if (((PyCodeObject *)con->fc_code)->co_flags & (CO_GENERATOR | CO_COROUTINE | CO_ASYNC_GENERATOR)) {
+ if (is_coro) {
return make_coro(con, f);
}
PyObject *retval = _PyEval_EvalFrame(tstate, f, 0);
+ assert(f->f_stackdepth == 0);
/* decref'ing the frame can cause __del__ methods to get invoked,
which can call back into Python. While we're done with the
current Python frame (f), the associated C stack is still in use,
so recursion_depth must be boosted for the duration.
*/
+ assert (!is_coro);
+ assert(f->f_own_locals_memory == 0);
if (Py_REFCNT(f) > 1) {
Py_DECREF(f);
_PyObject_GC_TRACK(f);
+ if (_PyFrame_TakeLocals(f)) {
+ Py_CLEAR(retval);
+ }
}
else {
++tstate->recursion_depth;
+ f->f_localsptr = NULL;
+ for (int i = 0; i < code->co_nlocalsplus + FRAME_SPECIALS_SIZE; i++) {
+ Py_XDECREF(localsarray[i]);
+ }
Py_DECREF(f);
--tstate->recursion_depth;
}
+ _PyThreadState_PopLocals(tstate, localsarray);
return retval;
}
@@ -5787,7 +5809,7 @@ _PyEval_GetBuiltins(PyThreadState *tstate)
{
PyFrameObject *frame = tstate->frame;
if (frame != NULL) {
- return frame->f_builtins;
+ return _PyFrame_GetBuiltins(frame);
}
return tstate->interp->builtins;
}
@@ -5828,8 +5850,10 @@ PyEval_GetLocals(void)
return NULL;
}
- assert(current_frame->f_locals != NULL);
- return current_frame->f_locals;
+ PyObject *locals = current_frame->f_valuestack[
+ FRAME_SPECIALS_LOCALS_OFFSET-FRAME_SPECIALS_SIZE];
+ assert(locals != NULL);
+ return locals;
}
PyObject *
@@ -5840,9 +5864,7 @@ PyEval_GetGlobals(void)
if (current_frame == NULL) {
return NULL;
}
-
- assert(current_frame->f_globals != NULL);
- return current_frame->f_globals;
+ return _PyFrame_GetGlobals(current_frame);
}
int
@@ -6093,14 +6115,15 @@ import_name(PyThreadState *tstate, PyFrameObject *f,
PyObject *import_func, *res;
PyObject* stack[5];
- import_func = _PyDict_GetItemIdWithError(f->f_builtins, &PyId___import__);
+ import_func = _PyDict_GetItemIdWithError(_PyFrame_GetBuiltins(f), &PyId___import__);
if (import_func == NULL) {
if (!_PyErr_Occurred(tstate)) {
_PyErr_SetString(tstate, PyExc_ImportError, "__import__ not found");
}
return NULL;
}
-
+ PyObject *locals = f->f_valuestack[
+ FRAME_SPECIALS_LOCALS_OFFSET-FRAME_SPECIALS_SIZE];
/* Fast path for not overloaded __import__. */
if (import_func == tstate->interp->import_func) {
int ilevel = _PyLong_AsInt(level);
@@ -6109,8 +6132,8 @@ import_name(PyThreadState *tstate, PyFrameObject *f,
}
res = PyImport_ImportModuleLevelObject(
name,
- f->f_globals,
- f->f_locals == NULL ? Py_None : f->f_locals,
+ _PyFrame_GetGlobals(f),
+ locals == NULL ? Py_None :locals,
fromlist,
ilevel);
return res;
@@ -6119,8 +6142,8 @@ import_name(PyThreadState *tstate, PyFrameObject *f,
Py_INCREF(import_func);
stack[0] = name;
- stack[1] = f->f_globals;
- stack[2] = f->f_locals == NULL ? Py_None : f->f_locals;
+ stack[1] = _PyFrame_GetGlobals(f);
+ stack[2] = locals == NULL ? Py_None : locals;
stack[3] = fromlist;
stack[4] = level;
res = _PyObject_FastCall(import_func, stack, 5);
@@ -6394,7 +6417,7 @@ format_exc_unbound(PyThreadState *tstate, PyCodeObject *co, int oparg)
/* Don't stomp existing exception */
if (_PyErr_Occurred(tstate))
return;
- if (oparg < PyTuple_GET_SIZE(co->co_cellvars)) {
+ if (oparg < co->co_ncellvars) {
name = PyTuple_GET_ITEM(co->co_cellvars,
oparg);
format_exc_check_arg(tstate,
@@ -6402,8 +6425,7 @@ format_exc_unbound(PyThreadState *tstate, PyCodeObject *co, int oparg)
UNBOUNDLOCAL_ERROR_MSG,
name);
} else {
- name = PyTuple_GET_ITEM(co->co_freevars, oparg -
- PyTuple_GET_SIZE(co->co_cellvars));
+ name = PyTuple_GET_ITEM(co->co_freevars, oparg - co->co_ncellvars);
format_exc_check_arg(tstate, PyExc_NameError,
UNBOUNDFREE_ERROR_MSG, name);
}
@@ -6445,14 +6467,14 @@ unicode_concatenate(PyThreadState *tstate, PyObject *v, PyObject *w,
switch (opcode) {
case STORE_FAST:
{
- PyObject **fastlocals = f->f_localsplus;
+ PyObject **fastlocals = f->f_localsptr;
if (GETLOCAL(oparg) == v)
SETLOCAL(oparg, NULL);
break;
}
case STORE_DEREF:
{
- PyObject **freevars = (f->f_localsplus +
+ PyObject **freevars = (f->f_localsptr +
f->f_code->co_nlocals);
PyObject *c = freevars[oparg];
if (PyCell_GET(c) == v) {
@@ -6465,7 +6487,8 @@ unicode_concatenate(PyThreadState *tstate, PyObject *v, PyObject *w,
{
PyObject *names = f->f_code->co_names;
PyObject *name = GETITEM(names, oparg);
- PyObject *locals = f->f_locals;
+ PyObject *locals = f->f_valuestack[
+ FRAME_SPECIALS_LOCALS_OFFSET-FRAME_SPECIALS_SIZE];
if (locals && PyDict_CheckExact(locals)) {
PyObject *w = PyDict_GetItemWithError(locals, name);
if ((w == v && PyDict_DelItem(locals, name) != 0) ||
diff --git a/Python/compile.c b/Python/compile.c
index 94f2e825bd0913..03d522b34f113b 100644
--- a/Python/compile.c
+++ b/Python/compile.c
@@ -24,6 +24,7 @@
#include "Python.h"
#include "pycore_ast.h" // _PyAST_GetDocString()
#include "pycore_compile.h" // _PyFuture_FromAST()
+#include "pycore_code.h" // _PyCode_New()
#include "pycore_pymem.h" // _PyMem_IsPtrFreed()
#include "pycore_long.h" // _PyLong_GetZero()
#include "pycore_symtable.h" // PySTEntryObject
@@ -339,7 +340,6 @@ static int compiler_pattern_subpattern(struct compiler *, pattern_ty,
static void clean_basic_block(basicblock *bb);
static PyCodeObject *assemble(struct compiler *, int addNone);
-static PyObject *__doc__, *__annotations__;
#define CAPSULE_NAME "compile.c compiler unit"
@@ -438,17 +438,6 @@ _PyAST_Compile(mod_ty mod, PyObject *filename, PyCompilerFlags *flags,
PyCodeObject *co = NULL;
PyCompilerFlags local_flags = _PyCompilerFlags_INIT;
int merged;
-
- if (!__doc__) {
- __doc__ = PyUnicode_InternFromString("__doc__");
- if (!__doc__)
- return NULL;
- }
- if (!__annotations__) {
- __annotations__ = PyUnicode_InternFromString("__annotations__");
- if (!__annotations__)
- return NULL;
- }
if (!compiler_init(&c))
return NULL;
Py_INCREF(filename);
@@ -1807,7 +1796,6 @@ static int
compiler_unwind_fblock(struct compiler *c, struct fblockinfo *info,
int preserve_tos)
{
- int loc;
switch (info->fb_type) {
case WHILE_LOOP:
case EXCEPTION_HANDLER:
@@ -1861,7 +1849,6 @@ compiler_unwind_fblock(struct compiler *c, struct fblockinfo *info,
case WITH:
case ASYNC_WITH:
- loc = c->u->u_lineno;
SET_LOC(c, (stmt_ty)info->fb_datum);
ADDOP(c, POP_BLOCK);
if (preserve_tos) {
@@ -1876,7 +1863,10 @@ compiler_unwind_fblock(struct compiler *c, struct fblockinfo *info,
ADDOP(c, YIELD_FROM);
}
ADDOP(c, POP_TOP);
- c->u->u_lineno = loc;
+ /* The exit block should appear to execute after the
+ * statement causing the unwinding, so make the unwinding
+ * instruction artificial */
+ c->u->u_lineno = -1;
return 1;
case HANDLER_CLEANUP:
@@ -1938,6 +1928,11 @@ compiler_body(struct compiler *c, asdl_stmt_seq *stmts)
int i = 0;
stmt_ty st;
PyObject *docstring;
+ _Py_IDENTIFIER(__doc__);
+ PyObject *__doc__ = _PyUnicode_FromId(&PyId___doc__); /* borrowed ref*/
+ if (__doc__ == NULL) {
+ return 0;
+ }
/* Set current line number to the line number of first statement.
This way line number for SETUP_ANNOTATIONS will always
@@ -1975,11 +1970,10 @@ compiler_mod(struct compiler *c, mod_ty mod)
{
PyCodeObject *co;
int addNone = 1;
- static PyObject *module;
- if (!module) {
- module = PyUnicode_InternFromString("");
- if (!module)
- return NULL;
+ _Py_static_string(PyId__module, "");
+ PyObject *module = _PyUnicode_FromId(&PyId__module); /* borrowed ref */
+ if (module == NULL) {
+ return 0;
}
/* Use 0 for firstlineno initially, will fixup in assemble(). */
if (!compiler_enter_scope(c, module, COMPILER_SCOPE_MODULE, mod, 1))
@@ -2232,7 +2226,7 @@ compiler_visit_annotations(struct compiler *c, arguments_ty args,
Return 0 on error, -1 if no annotations pushed, 1 if a annotations is pushed.
*/
- static identifier return_str;
+ _Py_IDENTIFIER(return);
Py_ssize_t annotations_len = 0;
if (!compiler_visit_argannotations(c, args->args, &annotations_len))
@@ -2250,10 +2244,9 @@ compiler_visit_annotations(struct compiler *c, arguments_ty args,
args->kwarg->annotation, &annotations_len))
return 0;
- if (!return_str) {
- return_str = PyUnicode_InternFromString("return");
- if (!return_str)
- return 0;
+ identifier return_str = _PyUnicode_FromId(&PyId_return); /* borrowed ref */
+ if (return_str == NULL) {
+ return 0;
}
if (!compiler_visit_argannotation(c, return_str, returns, &annotations_len)) {
return 0;
@@ -2799,7 +2792,7 @@ compiler_lambda(struct compiler *c, expr_ty e)
{
PyCodeObject *co;
PyObject *qualname;
- static identifier name;
+ identifier name;
Py_ssize_t funcflags;
arguments_ty args = e->v.Lambda.args;
assert(e->kind == Lambda_kind);
@@ -2807,10 +2800,10 @@ compiler_lambda(struct compiler *c, expr_ty e)
if (!compiler_check_debug_args(c, args))
return 0;
- if (!name) {
- name = PyUnicode_InternFromString("");
- if (!name)
- return 0;
+ _Py_static_string(PyId_lambda, "");
+ name = _PyUnicode_FromId(&PyId_lambda); /* borrowed ref */
+ if (name == NULL) {
+ return 0;
}
funcflags = compiler_default_arguments(c, args);
@@ -3028,12 +3021,17 @@ compiler_return(struct compiler *c, stmt_ty s)
if (preserve_tos) {
VISIT(c, expr, s->v.Return.value);
} else {
- /* Emit instruction with line number for expression */
+ /* Emit instruction with line number for return value */
if (s->v.Return.value != NULL) {
SET_LOC(c, s->v.Return.value);
ADDOP(c, NOP);
}
}
+ if (s->v.Return.value == NULL || s->v.Return.value->lineno != s->lineno) {
+ SET_LOC(c, s);
+ ADDOP(c, NOP);
+ }
+
if (!compiler_unwind_fblock_stack(c, preserve_tos, NULL))
return 0;
if (s->v.Return.value == NULL) {
@@ -3052,6 +3050,8 @@ static int
compiler_break(struct compiler *c)
{
struct fblockinfo *loop = NULL;
+ /* Emit instruction with line number */
+ ADDOP(c, NOP);
if (!compiler_unwind_fblock_stack(c, 0, &loop)) {
return 0;
}
@@ -3070,6 +3070,8 @@ static int
compiler_continue(struct compiler *c)
{
struct fblockinfo *loop = NULL;
+ /* Emit instruction with line number */
+ ADDOP(c, NOP);
if (!compiler_unwind_fblock_stack(c, 0, &loop)) {
return 0;
}
@@ -3421,12 +3423,11 @@ compiler_from_import(struct compiler *c, stmt_ty s)
{
Py_ssize_t i, n = asdl_seq_LEN(s->v.ImportFrom.names);
PyObject *names;
- static PyObject *empty_string;
+ _Py_static_string(PyId_empty_string, "");
+ PyObject *empty_string = _PyUnicode_FromId(&PyId_empty_string); /* borrowed ref */
- if (!empty_string) {
- empty_string = PyUnicode_FromString("");
- if (!empty_string)
- return 0;
+ if (empty_string == NULL) {
+ return 0;
}
ADDOP_LOAD_CONST_NEW(c, PyLong_FromLong(s->v.ImportFrom.level));
@@ -4315,7 +4316,7 @@ maybe_optimize_method_call(struct compiler *c, expr_ty e)
ADDOP_I(c, CALL_METHOD_KW, argsl + kwdsl);
}
else {
- ADDOP_I(c, CALL_METHOD, argsl);
+ ADDOP_I(c, CALL_METHOD, argsl);
}
c->u->u_lineno = old_lineno;
return 1;
@@ -4482,7 +4483,7 @@ compiler_subkwargs(struct compiler *c, asdl_keyword_seq *keywords, Py_ssize_t be
return 1;
}
-/* Used by compiler_call_helper and maybe_optimize_method_call to emit
+/* Used by compiler_call_helper and maybe_optimize_method_call to emit
LOAD_CONST kw1
LOAD_CONST kw2
...
@@ -4493,7 +4494,7 @@ Returns 1 on success, 0 on error.
*/
static int
compiler_call_simple_kw_helper(struct compiler *c,
- asdl_keyword_seq *keywords,
+ asdl_keyword_seq *keywords,
Py_ssize_t nkwelts)
{
PyObject *names;
@@ -4972,11 +4973,10 @@ compiler_comprehension(struct compiler *c, expr_ty e, int type,
static int
compiler_genexp(struct compiler *c, expr_ty e)
{
- static identifier name;
- if (!name) {
- name = PyUnicode_InternFromString("");
- if (!name)
- return 0;
+ _Py_static_string(PyId_genexpr, "");
+ identifier name = _PyUnicode_FromId(&PyId_genexpr); /* borrowed ref */
+ if (name == NULL) {
+ return 0;
}
assert(e->kind == GeneratorExp_kind);
return compiler_comprehension(c, e, COMP_GENEXP, name,
@@ -4987,11 +4987,10 @@ compiler_genexp(struct compiler *c, expr_ty e)
static int
compiler_listcomp(struct compiler *c, expr_ty e)
{
- static identifier name;
- if (!name) {
- name = PyUnicode_InternFromString("");
- if (!name)
- return 0;
+ _Py_static_string(PyId_listcomp, "");
+ identifier name = _PyUnicode_FromId(&PyId_listcomp); /* borrowed ref */
+ if (name == NULL) {
+ return 0;
}
assert(e->kind == ListComp_kind);
return compiler_comprehension(c, e, COMP_LISTCOMP, name,
@@ -5002,11 +5001,10 @@ compiler_listcomp(struct compiler *c, expr_ty e)
static int
compiler_setcomp(struct compiler *c, expr_ty e)
{
- static identifier name;
- if (!name) {
- name = PyUnicode_InternFromString("");
- if (!name)
- return 0;
+ _Py_static_string(PyId_setcomp, "");
+ identifier name = _PyUnicode_FromId(&PyId_setcomp); /* borrowed ref */
+ if (name == NULL) {
+ return 0;
}
assert(e->kind == SetComp_kind);
return compiler_comprehension(c, e, COMP_SETCOMP, name,
@@ -5018,11 +5016,10 @@ compiler_setcomp(struct compiler *c, expr_ty e)
static int
compiler_dictcomp(struct compiler *c, expr_ty e)
{
- static identifier name;
- if (!name) {
- name = PyUnicode_InternFromString("");
- if (!name)
- return 0;
+ _Py_static_string(PyId_dictcomp, "");
+ identifier name = _PyUnicode_FromId(&PyId_dictcomp); /* borrowed ref */
+ if (name == NULL) {
+ return 0;
}
assert(e->kind == DictComp_kind);
return compiler_comprehension(c, e, COMP_DICTCOMP, name,
@@ -5553,6 +5550,12 @@ compiler_annassign(struct compiler *c, stmt_ty s)
{
expr_ty targ = s->v.AnnAssign.target;
PyObject* mangled;
+ _Py_IDENTIFIER(__annotations__);
+ /* borrowed ref*/
+ PyObject *__annotations__ = _PyUnicode_FromId(&PyId___annotations__);
+ if (__annotations__ == NULL) {
+ return 0;
+ }
assert(s->kind == AnnAssign_kind);
@@ -7174,16 +7177,16 @@ merge_const_one(struct compiler *c, PyObject **obj)
}
static PyCodeObject *
-makecode(struct compiler *c, struct assembler *a, PyObject *consts, int maxdepth)
+makecode(struct compiler *c, struct assembler *a, PyObject *constslist,
+ int maxdepth)
{
PyCodeObject *co = NULL;
PyObject *names = NULL;
+ PyObject *consts = NULL;
PyObject *varnames = NULL;
PyObject *name = NULL;
PyObject *freevars = NULL;
PyObject *cellvars = NULL;
- Py_ssize_t nlocals;
- int nlocals_int;
int flags;
int posorkeywordargcount, posonlyargcount, kwonlyargcount;
@@ -7207,34 +7210,53 @@ makecode(struct compiler *c, struct assembler *a, PyObject *consts, int maxdepth
goto error;
}
- nlocals = PyDict_GET_SIZE(c->u->u_varnames);
- assert(nlocals < INT_MAX);
- nlocals_int = Py_SAFE_DOWNCAST(nlocals, Py_ssize_t, int);
-
flags = compute_code_flags(c);
if (flags < 0)
goto error;
- consts = PyList_AsTuple(consts); /* PyCode_New requires a tuple */
+ consts = PyList_AsTuple(constslist); /* PyCode_New requires a tuple */
if (consts == NULL) {
goto error;
}
if (!merge_const_one(c, &consts)) {
- Py_DECREF(consts);
goto error;
}
posonlyargcount = Py_SAFE_DOWNCAST(c->u->u_posonlyargcount, Py_ssize_t, int);
posorkeywordargcount = Py_SAFE_DOWNCAST(c->u->u_argcount, Py_ssize_t, int);
kwonlyargcount = Py_SAFE_DOWNCAST(c->u->u_kwonlyargcount, Py_ssize_t, int);
- co = PyCode_NewWithPosOnlyArgs(posonlyargcount+posorkeywordargcount,
- posonlyargcount, kwonlyargcount, nlocals_int,
- maxdepth, flags, a->a_bytecode, consts, names,
- varnames, freevars, cellvars, c->c_filename,
- c->u->u_name, c->u->u_firstlineno, a->a_lnotab, a->a_except_table);
- Py_DECREF(consts);
+ struct _PyCodeConstructor con = {
+ .filename = c->c_filename,
+ .name = c->u->u_name,
+ .flags = flags,
+
+ .code = a->a_bytecode,
+ .firstlineno = c->u->u_firstlineno,
+ .linetable = a->a_lnotab,
+
+ .consts = consts,
+ .names = names,
+
+ .varnames = varnames,
+ .cellvars = cellvars,
+ .freevars = freevars,
+
+ .argcount = posonlyargcount + posorkeywordargcount,
+ .posonlyargcount = posonlyargcount,
+ .kwonlyargcount = kwonlyargcount,
+
+ .stacksize = maxdepth,
+
+ .exceptiontable = a->a_except_table,
+ };
+ if (_PyCode_Validate(&con) < 0) {
+ goto error;
+ }
+ co = _PyCode_New(&con);
+
error:
Py_XDECREF(names);
+ Py_XDECREF(consts);
Py_XDECREF(varnames);
Py_XDECREF(name);
Py_XDECREF(freevars);
diff --git a/Python/frozen_hello.h b/Python/frozen_hello.h
index 76b1823af20084..967dd053dd0278 100644
--- a/Python/frozen_hello.h
+++ b/Python/frozen_hello.h
@@ -1,12 +1,12 @@
/* Auto-generated by Programs/_freeze_importlib.c */
const unsigned char _Py_M__hello[] = {
- 99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,2,0,0,0,64,0,0,0,115,16,0,0,0,100,0,
- 90,0,101,1,100,1,131,1,1,0,100,2,83,0,41,3,
- 84,122,12,72,101,108,108,111,32,119,111,114,108,100,33,78,
- 41,2,90,11,105,110,105,116,105,97,108,105,122,101,100,218,
- 5,112,114,105,110,116,169,0,114,1,0,0,0,114,1,0,
- 0,0,122,14,60,102,114,111,122,101,110,32,104,101,108,108,
- 111,62,218,8,60,109,111,100,117,108,101,62,1,0,0,0,
- 115,4,0,0,0,4,0,12,1,243,0,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,16,0,0,0,100,0,90,0,101,1,
+ 100,1,131,1,1,0,100,2,83,0,41,3,84,122,12,72,
+ 101,108,108,111,32,119,111,114,108,100,33,78,41,2,90,11,
+ 105,110,105,116,105,97,108,105,122,101,100,218,5,112,114,105,
+ 110,116,169,0,114,1,0,0,0,114,1,0,0,0,122,14,
+ 60,102,114,111,122,101,110,32,104,101,108,108,111,62,218,8,
+ 60,109,111,100,117,108,101,62,1,0,0,0,115,4,0,0,
+ 0,4,0,12,1,243,0,0,0,0,
};
diff --git a/Python/frozenmain.c b/Python/frozenmain.c
index 5eb9e31112484a..8743e082b4ff8f 100644
--- a/Python/frozenmain.c
+++ b/Python/frozenmain.c
@@ -1,4 +1,3 @@
-
/* Python interpreter main program for frozen scripts */
#include "Python.h"
@@ -21,71 +20,28 @@ Py_FrozenMain(int argc, char **argv)
Py_ExitStatusException(status);
}
- const char *p;
- int i, n, sts = 1;
- int inspect = 0;
- int unbuffered = 0;
- char *oldloc = NULL;
- wchar_t **argv_copy = NULL;
- /* We need a second copies, as Python might modify the first one. */
- wchar_t **argv_copy2 = NULL;
-
- if (argc > 0) {
- argv_copy = PyMem_RawMalloc(sizeof(wchar_t*) * argc);
- argv_copy2 = PyMem_RawMalloc(sizeof(wchar_t*) * argc);
- if (!argv_copy || !argv_copy2) {
- fprintf(stderr, "out of memory\n");
- goto error;
- }
- }
-
PyConfig config;
PyConfig_InitPythonConfig(&config);
- config.pathconfig_warnings = 0; /* Suppress errors from getpath.c */
+ // Suppress errors from getpath.c
+ config.pathconfig_warnings = 0;
+ // Don't parse command line options like -E
+ config.parse_argv = 0;
- if ((p = Py_GETENV("PYTHONINSPECT")) && *p != '\0')
- inspect = 1;
- if ((p = Py_GETENV("PYTHONUNBUFFERED")) && *p != '\0')
- unbuffered = 1;
-
- if (unbuffered) {
- setbuf(stdin, (char *)NULL);
- setbuf(stdout, (char *)NULL);
- setbuf(stderr, (char *)NULL);
- }
-
- oldloc = _PyMem_RawStrdup(setlocale(LC_ALL, NULL));
- if (!oldloc) {
- fprintf(stderr, "out of memory\n");
- goto error;
+ status = PyConfig_SetBytesArgv(&config, argc, argv);
+ if (PyStatus_Exception(status)) {
+ PyConfig_Clear(&config);
+ Py_ExitStatusException(status);
}
- setlocale(LC_ALL, "");
- for (i = 0; i < argc; i++) {
- argv_copy[i] = Py_DecodeLocale(argv[i], NULL);
- argv_copy2[i] = argv_copy[i];
- if (!argv_copy[i]) {
- fprintf(stderr, "Unable to decode the command line argument #%i\n",
- i + 1);
- argc = i;
- goto error;
- }
+ const char *p;
+ int inspect = 0;
+ if ((p = Py_GETENV("PYTHONINSPECT")) && *p != '\0') {
+ inspect = 1;
}
- setlocale(LC_ALL, oldloc);
- PyMem_RawFree(oldloc);
- oldloc = NULL;
#ifdef MS_WINDOWS
PyInitFrozenExtensions();
#endif /* MS_WINDOWS */
- if (argc >= 1) {
- status = PyConfig_SetString(&config, &config.program_name,
- argv_copy[0]);
- if (PyStatus_Exception(status)) {
- PyConfig_Clear(&config);
- Py_ExitStatusException(status);
- }
- }
status = Py_InitializeFromConfig(&config);
PyConfig_Clear(&config);
@@ -97,24 +53,27 @@ Py_FrozenMain(int argc, char **argv)
PyWinFreeze_ExeInit();
#endif
- if (Py_VerboseFlag)
+ if (Py_VerboseFlag) {
fprintf(stderr, "Python %s\n%s\n",
- Py_GetVersion(), Py_GetCopyright());
-
- PySys_SetArgv(argc, argv_copy);
+ Py_GetVersion(), Py_GetCopyright());
+ }
- n = PyImport_ImportFrozenModule("__main__");
- if (n == 0)
+ int sts = 1;
+ int n = PyImport_ImportFrozenModule("__main__");
+ if (n == 0) {
Py_FatalError("the __main__ module is not frozen");
+ }
if (n < 0) {
PyErr_Print();
sts = 1;
}
- else
+ else {
sts = 0;
+ }
- if (inspect && isatty((int)fileno(stdin)))
+ if (inspect && isatty((int)fileno(stdin))) {
sts = PyRun_AnyFile(stdin, "") != 0;
+ }
#ifdef MS_WINDOWS
PyWinFreeze_ExeTerm();
@@ -122,14 +81,5 @@ Py_FrozenMain(int argc, char **argv)
if (Py_FinalizeEx() < 0) {
sts = 120;
}
-
-error:
- PyMem_RawFree(argv_copy);
- if (argv_copy2) {
- for (i = 0; i < argc; i++)
- PyMem_RawFree(argv_copy2[i]);
- PyMem_RawFree(argv_copy2);
- }
- PyMem_RawFree(oldloc);
return sts;
}
diff --git a/Python/importlib.h b/Python/importlib.h
index f5278ee2caf319..8637b097135ed7 100644
--- a/Python/importlib.h
+++ b/Python/importlib.h
@@ -1,138 +1,136 @@
/* Auto-generated by Programs/_freeze_importlib.c */
const unsigned char _Py_M__importlib_bootstrap[] = {
- 99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,4,0,0,0,64,0,0,0,115,214,1,0,0,100,0,
- 90,0,100,1,100,2,132,0,90,1,100,3,90,2,100,3,
- 90,3,100,3,90,4,100,3,97,5,100,4,100,5,132,0,
- 90,6,100,6,100,7,132,0,90,7,105,0,90,8,105,0,
- 90,9,71,0,100,8,100,9,132,0,100,9,101,10,131,3,
- 90,11,71,0,100,10,100,11,132,0,100,11,131,2,90,12,
- 71,0,100,12,100,13,132,0,100,13,131,2,90,13,71,0,
- 100,14,100,15,132,0,100,15,131,2,90,14,100,16,100,17,
- 132,0,90,15,100,18,100,19,132,0,90,16,100,20,100,21,
- 132,0,90,17,100,22,100,23,156,1,100,24,100,25,132,2,
- 90,18,100,26,100,27,132,0,90,19,100,28,100,29,132,0,
- 90,20,100,30,100,31,132,0,90,21,100,32,100,33,132,0,
- 90,22,71,0,100,34,100,35,132,0,100,35,131,2,90,23,
- 100,3,100,3,100,36,156,2,100,37,100,38,132,2,90,24,
- 100,96,100,39,100,40,132,1,90,25,100,41,100,42,156,1,
- 100,43,100,44,132,2,90,26,100,45,100,46,132,0,90,27,
- 100,47,100,48,132,0,90,28,100,49,100,50,132,0,90,29,
- 100,51,100,52,132,0,90,30,100,53,100,54,132,0,90,31,
- 100,55,100,56,132,0,90,32,71,0,100,57,100,58,132,0,
- 100,58,131,2,90,33,71,0,100,59,100,60,132,0,100,60,
- 131,2,90,34,71,0,100,61,100,62,132,0,100,62,131,2,
- 90,35,100,63,100,64,132,0,90,36,100,65,100,66,132,0,
- 90,37,100,97,100,67,100,68,132,1,90,38,100,69,100,70,
- 132,0,90,39,100,71,90,40,101,40,100,72,23,0,90,41,
- 100,73,100,74,132,0,90,42,101,43,131,0,90,44,100,75,
- 100,76,132,0,90,45,100,98,100,78,100,79,132,1,90,46,
- 100,41,100,80,156,1,100,81,100,82,132,2,90,47,100,83,
- 100,84,132,0,90,48,100,99,100,86,100,87,132,1,90,49,
- 100,88,100,89,132,0,90,50,100,90,100,91,132,0,90,51,
- 100,92,100,93,132,0,90,52,100,94,100,95,132,0,90,53,
- 100,3,83,0,41,100,97,83,1,0,0,67,111,114,101,32,
- 105,109,112,108,101,109,101,110,116,97,116,105,111,110,32,111,
- 102,32,105,109,112,111,114,116,46,10,10,84,104,105,115,32,
- 109,111,100,117,108,101,32,105,115,32,78,79,84,32,109,101,
- 97,110,116,32,116,111,32,98,101,32,100,105,114,101,99,116,
- 108,121,32,105,109,112,111,114,116,101,100,33,32,73,116,32,
- 104,97,115,32,98,101,101,110,32,100,101,115,105,103,110,101,
- 100,32,115,117,99,104,10,116,104,97,116,32,105,116,32,99,
- 97,110,32,98,101,32,98,111,111,116,115,116,114,97,112,112,
- 101,100,32,105,110,116,111,32,80,121,116,104,111,110,32,97,
- 115,32,116,104,101,32,105,109,112,108,101,109,101,110,116,97,
- 116,105,111,110,32,111,102,32,105,109,112,111,114,116,46,32,
- 65,115,10,115,117,99,104,32,105,116,32,114,101,113,117,105,
- 114,101,115,32,116,104,101,32,105,110,106,101,99,116,105,111,
- 110,32,111,102,32,115,112,101,99,105,102,105,99,32,109,111,
- 100,117,108,101,115,32,97,110,100,32,97,116,116,114,105,98,
- 117,116,101,115,32,105,110,32,111,114,100,101,114,32,116,111,
- 10,119,111,114,107,46,32,79,110,101,32,115,104,111,117,108,
- 100,32,117,115,101,32,105,109,112,111,114,116,108,105,98,32,
- 97,115,32,116,104,101,32,112,117,98,108,105,99,45,102,97,
- 99,105,110,103,32,118,101,114,115,105,111,110,32,111,102,32,
- 116,104,105,115,32,109,111,100,117,108,101,46,10,10,99,1,
- 0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,8,
- 0,0,0,67,0,0,0,115,40,0,0,0,9,0,124,0,
- 106,0,83,0,35,0,4,0,116,1,121,19,1,0,1,0,
- 1,0,116,2,124,0,131,1,106,0,6,0,89,0,83,0,
- 37,0,119,0,169,1,78,41,3,218,12,95,95,113,117,97,
- 108,110,97,109,101,95,95,218,14,65,116,116,114,105,98,117,
- 116,101,69,114,114,111,114,218,4,116,121,112,101,41,1,218,
- 3,111,98,106,169,0,114,5,0,0,0,250,29,60,102,114,
- 111,122,101,110,32,105,109,112,111,114,116,108,105,98,46,95,
- 98,111,111,116,115,116,114,97,112,62,218,12,95,111,98,106,
- 101,99,116,95,110,97,109,101,23,0,0,0,115,14,0,0,
- 0,2,1,6,1,2,128,12,1,14,1,2,128,2,255,115,
- 12,0,0,0,129,2,4,0,132,12,18,7,147,1,18,7,
- 114,7,0,0,0,78,99,2,0,0,0,0,0,0,0,0,
- 0,0,0,3,0,0,0,7,0,0,0,67,0,0,0,115,
- 56,0,0,0,100,1,68,0,93,16,125,2,116,0,124,1,
- 124,2,131,2,114,18,116,1,124,0,124,2,116,2,124,1,
- 124,2,131,2,131,3,1,0,113,2,124,0,106,3,160,4,
- 124,1,106,3,161,1,1,0,100,2,83,0,41,3,122,47,
- 83,105,109,112,108,101,32,115,117,98,115,116,105,116,117,116,
- 101,32,102,111,114,32,102,117,110,99,116,111,111,108,115,46,
- 117,112,100,97,116,101,95,119,114,97,112,112,101,114,46,41,
- 4,218,10,95,95,109,111,100,117,108,101,95,95,218,8,95,
- 95,110,97,109,101,95,95,114,1,0,0,0,218,7,95,95,
- 100,111,99,95,95,78,41,5,218,7,104,97,115,97,116,116,
- 114,218,7,115,101,116,97,116,116,114,218,7,103,101,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,218,7,114,101,112,108,97,99,101,114,5,0,0,0,114,
- 5,0,0,0,114,6,0,0,0,218,5,95,119,114,97,112,
- 40,0,0,0,115,10,0,0,0,8,2,10,1,18,1,2,
- 128,18,1,243,0,0,0,0,114,17,0,0,0,99,1,0,
- 0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,
+ 99,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,
+ 0,64,0,0,0,115,214,1,0,0,100,0,90,0,100,1,
+ 100,2,132,0,90,1,100,3,90,2,100,3,90,3,100,3,
+ 90,4,100,3,97,5,100,4,100,5,132,0,90,6,100,6,
+ 100,7,132,0,90,7,105,0,90,8,105,0,90,9,71,0,
+ 100,8,100,9,132,0,100,9,101,10,131,3,90,11,71,0,
+ 100,10,100,11,132,0,100,11,131,2,90,12,71,0,100,12,
+ 100,13,132,0,100,13,131,2,90,13,71,0,100,14,100,15,
+ 132,0,100,15,131,2,90,14,100,16,100,17,132,0,90,15,
+ 100,18,100,19,132,0,90,16,100,20,100,21,132,0,90,17,
+ 100,22,100,23,156,1,100,24,100,25,132,2,90,18,100,26,
+ 100,27,132,0,90,19,100,28,100,29,132,0,90,20,100,30,
+ 100,31,132,0,90,21,100,32,100,33,132,0,90,22,71,0,
+ 100,34,100,35,132,0,100,35,131,2,90,23,100,3,100,3,
+ 100,36,156,2,100,37,100,38,132,2,90,24,100,96,100,39,
+ 100,40,132,1,90,25,100,41,100,42,156,1,100,43,100,44,
+ 132,2,90,26,100,45,100,46,132,0,90,27,100,47,100,48,
+ 132,0,90,28,100,49,100,50,132,0,90,29,100,51,100,52,
+ 132,0,90,30,100,53,100,54,132,0,90,31,100,55,100,56,
+ 132,0,90,32,71,0,100,57,100,58,132,0,100,58,131,2,
+ 90,33,71,0,100,59,100,60,132,0,100,60,131,2,90,34,
+ 71,0,100,61,100,62,132,0,100,62,131,2,90,35,100,63,
+ 100,64,132,0,90,36,100,65,100,66,132,0,90,37,100,97,
+ 100,67,100,68,132,1,90,38,100,69,100,70,132,0,90,39,
+ 100,71,90,40,101,40,100,72,23,0,90,41,100,73,100,74,
+ 132,0,90,42,101,43,131,0,90,44,100,75,100,76,132,0,
+ 90,45,100,98,100,78,100,79,132,1,90,46,100,41,100,80,
+ 156,1,100,81,100,82,132,2,90,47,100,83,100,84,132,0,
+ 90,48,100,99,100,86,100,87,132,1,90,49,100,88,100,89,
+ 132,0,90,50,100,90,100,91,132,0,90,51,100,92,100,93,
+ 132,0,90,52,100,94,100,95,132,0,90,53,100,3,83,0,
+ 41,100,97,83,1,0,0,67,111,114,101,32,105,109,112,108,
+ 101,109,101,110,116,97,116,105,111,110,32,111,102,32,105,109,
+ 112,111,114,116,46,10,10,84,104,105,115,32,109,111,100,117,
+ 108,101,32,105,115,32,78,79,84,32,109,101,97,110,116,32,
+ 116,111,32,98,101,32,100,105,114,101,99,116,108,121,32,105,
+ 109,112,111,114,116,101,100,33,32,73,116,32,104,97,115,32,
+ 98,101,101,110,32,100,101,115,105,103,110,101,100,32,115,117,
+ 99,104,10,116,104,97,116,32,105,116,32,99,97,110,32,98,
+ 101,32,98,111,111,116,115,116,114,97,112,112,101,100,32,105,
+ 110,116,111,32,80,121,116,104,111,110,32,97,115,32,116,104,
+ 101,32,105,109,112,108,101,109,101,110,116,97,116,105,111,110,
+ 32,111,102,32,105,109,112,111,114,116,46,32,65,115,10,115,
+ 117,99,104,32,105,116,32,114,101,113,117,105,114,101,115,32,
+ 116,104,101,32,105,110,106,101,99,116,105,111,110,32,111,102,
+ 32,115,112,101,99,105,102,105,99,32,109,111,100,117,108,101,
+ 115,32,97,110,100,32,97,116,116,114,105,98,117,116,101,115,
+ 32,105,110,32,111,114,100,101,114,32,116,111,10,119,111,114,
+ 107,46,32,79,110,101,32,115,104,111,117,108,100,32,117,115,
+ 101,32,105,109,112,111,114,116,108,105,98,32,97,115,32,116,
+ 104,101,32,112,117,98,108,105,99,45,102,97,99,105,110,103,
+ 32,118,101,114,115,105,111,110,32,111,102,32,116,104,105,115,
+ 32,109,111,100,117,108,101,46,10,10,99,1,0,0,0,0,
+ 0,0,0,0,0,0,0,8,0,0,0,67,0,0,0,115,
+ 40,0,0,0,9,0,124,0,106,0,83,0,35,0,4,0,
+ 116,1,121,19,1,0,1,0,1,0,116,2,124,0,131,1,
+ 106,0,6,0,89,0,83,0,37,0,119,0,169,1,78,41,
+ 3,218,12,95,95,113,117,97,108,110,97,109,101,95,95,218,
+ 14,65,116,116,114,105,98,117,116,101,69,114,114,111,114,218,
+ 4,116,121,112,101,41,1,218,3,111,98,106,169,0,114,5,
+ 0,0,0,250,29,60,102,114,111,122,101,110,32,105,109,112,
+ 111,114,116,108,105,98,46,95,98,111,111,116,115,116,114,97,
+ 112,62,218,12,95,111,98,106,101,99,116,95,110,97,109,101,
+ 23,0,0,0,115,14,0,0,0,2,1,6,1,2,128,12,
+ 1,14,1,2,128,2,255,115,12,0,0,0,129,2,4,0,
+ 132,12,18,7,147,1,18,7,114,7,0,0,0,78,99,2,
+ 0,0,0,0,0,0,0,0,0,0,0,7,0,0,0,67,
+ 0,0,0,115,56,0,0,0,100,1,68,0,93,16,125,2,
+ 116,0,124,1,124,2,131,2,114,18,116,1,124,0,124,2,
+ 116,2,124,1,124,2,131,2,131,3,1,0,113,2,124,0,
+ 106,3,160,4,124,1,106,3,161,1,1,0,100,2,83,0,
+ 41,3,122,47,83,105,109,112,108,101,32,115,117,98,115,116,
+ 105,116,117,116,101,32,102,111,114,32,102,117,110,99,116,111,
+ 111,108,115,46,117,112,100,97,116,101,95,119,114,97,112,112,
+ 101,114,46,41,4,218,10,95,95,109,111,100,117,108,101,95,
+ 95,218,8,95,95,110,97,109,101,95,95,114,1,0,0,0,
+ 218,7,95,95,100,111,99,95,95,78,41,5,218,7,104,97,
+ 115,97,116,116,114,218,7,115,101,116,97,116,116,114,218,7,
+ 103,101,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,218,7,114,101,112,108,97,99,101,114,5,
+ 0,0,0,114,5,0,0,0,114,6,0,0,0,218,5,95,
+ 119,114,97,112,40,0,0,0,115,10,0,0,0,8,2,10,
+ 1,18,1,2,128,18,1,243,0,0,0,0,114,17,0,0,
+ 0,99,1,0,0,0,0,0,0,0,0,0,0,0,2,0,
0,0,67,0,0,0,115,12,0,0,0,116,0,116,1,131,
1,124,0,131,1,83,0,114,0,0,0,0,41,2,114,3,
0,0,0,218,3,115,121,115,169,1,218,4,110,97,109,101,
114,5,0,0,0,114,5,0,0,0,114,6,0,0,0,218,
11,95,110,101,119,95,109,111,100,117,108,101,48,0,0,0,
115,2,0,0,0,12,1,114,18,0,0,0,114,22,0,0,
- 0,99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,1,0,0,0,64,0,0,0,115,12,0,0,0,101,
- 0,90,1,100,0,90,2,100,1,83,0,41,2,218,14,95,
- 68,101,97,100,108,111,99,107,69,114,114,111,114,78,41,3,
- 114,9,0,0,0,114,8,0,0,0,114,1,0,0,0,114,
- 5,0,0,0,114,5,0,0,0,114,5,0,0,0,114,6,
- 0,0,0,114,23,0,0,0,61,0,0,0,115,4,0,0,
- 0,8,0,4,1,114,18,0,0,0,114,23,0,0,0,99,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 2,0,0,0,64,0,0,0,115,56,0,0,0,101,0,90,
- 1,100,0,90,2,100,1,90,3,100,2,100,3,132,0,90,
- 4,100,4,100,5,132,0,90,5,100,6,100,7,132,0,90,
- 6,100,8,100,9,132,0,90,7,100,10,100,11,132,0,90,
- 8,100,12,83,0,41,13,218,11,95,77,111,100,117,108,101,
- 76,111,99,107,122,169,65,32,114,101,99,117,114,115,105,118,
- 101,32,108,111,99,107,32,105,109,112,108,101,109,101,110,116,
- 97,116,105,111,110,32,119,104,105,99,104,32,105,115,32,97,
- 98,108,101,32,116,111,32,100,101,116,101,99,116,32,100,101,
- 97,100,108,111,99,107,115,10,32,32,32,32,40,101,46,103,
- 46,32,116,104,114,101,97,100,32,49,32,116,114,121,105,110,
- 103,32,116,111,32,116,97,107,101,32,108,111,99,107,115,32,
- 65,32,116,104,101,110,32,66,44,32,97,110,100,32,116,104,
- 114,101,97,100,32,50,32,116,114,121,105,110,103,32,116,111,
- 10,32,32,32,32,116,97,107,101,32,108,111,99,107,115,32,
- 66,32,116,104,101,110,32,65,41,46,10,32,32,32,32,99,
- 2,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,
- 2,0,0,0,67,0,0,0,115,48,0,0,0,116,0,160,
- 1,161,0,124,0,95,2,116,0,160,1,161,0,124,0,95,
- 3,124,1,124,0,95,4,100,0,124,0,95,5,100,1,124,
- 0,95,6,100,1,124,0,95,7,100,0,83,0,169,2,78,
- 233,0,0,0,0,41,8,218,7,95,116,104,114,101,97,100,
- 90,13,97,108,108,111,99,97,116,101,95,108,111,99,107,218,
- 4,108,111,99,107,218,6,119,97,107,101,117,112,114,21,0,
- 0,0,218,5,111,119,110,101,114,218,5,99,111,117,110,116,
- 218,7,119,97,105,116,101,114,115,169,2,218,4,115,101,108,
- 102,114,21,0,0,0,114,5,0,0,0,114,5,0,0,0,
- 114,6,0,0,0,218,8,95,95,105,110,105,116,95,95,71,
- 0,0,0,115,12,0,0,0,10,1,10,1,6,1,6,1,
- 6,1,10,1,114,18,0,0,0,122,20,95,77,111,100,117,
- 108,101,76,111,99,107,46,95,95,105,110,105,116,95,95,99,
- 1,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,
+ 0,99,0,0,0,0,0,0,0,0,0,0,0,0,1,0,
+ 0,0,64,0,0,0,115,12,0,0,0,101,0,90,1,100,
+ 0,90,2,100,1,83,0,41,2,218,14,95,68,101,97,100,
+ 108,111,99,107,69,114,114,111,114,78,41,3,114,9,0,0,
+ 0,114,8,0,0,0,114,1,0,0,0,114,5,0,0,0,
+ 114,5,0,0,0,114,5,0,0,0,114,6,0,0,0,114,
+ 23,0,0,0,61,0,0,0,115,4,0,0,0,8,0,4,
+ 1,114,18,0,0,0,114,23,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,56,0,0,0,101,0,90,1,100,0,90,2,100,1,90,
+ 3,100,2,100,3,132,0,90,4,100,4,100,5,132,0,90,
+ 5,100,6,100,7,132,0,90,6,100,8,100,9,132,0,90,
+ 7,100,10,100,11,132,0,90,8,100,12,83,0,41,13,218,
+ 11,95,77,111,100,117,108,101,76,111,99,107,122,169,65,32,
+ 114,101,99,117,114,115,105,118,101,32,108,111,99,107,32,105,
+ 109,112,108,101,109,101,110,116,97,116,105,111,110,32,119,104,
+ 105,99,104,32,105,115,32,97,98,108,101,32,116,111,32,100,
+ 101,116,101,99,116,32,100,101,97,100,108,111,99,107,115,10,
+ 32,32,32,32,40,101,46,103,46,32,116,104,114,101,97,100,
+ 32,49,32,116,114,121,105,110,103,32,116,111,32,116,97,107,
+ 101,32,108,111,99,107,115,32,65,32,116,104,101,110,32,66,
+ 44,32,97,110,100,32,116,104,114,101,97,100,32,50,32,116,
+ 114,121,105,110,103,32,116,111,10,32,32,32,32,116,97,107,
+ 101,32,108,111,99,107,115,32,66,32,116,104,101,110,32,65,
+ 41,46,10,32,32,32,32,99,2,0,0,0,0,0,0,0,
+ 0,0,0,0,2,0,0,0,67,0,0,0,115,48,0,0,
+ 0,116,0,160,1,161,0,124,0,95,2,116,0,160,1,161,
+ 0,124,0,95,3,124,1,124,0,95,4,100,0,124,0,95,
+ 5,100,1,124,0,95,6,100,1,124,0,95,7,100,0,83,
+ 0,169,2,78,233,0,0,0,0,41,8,218,7,95,116,104,
+ 114,101,97,100,90,13,97,108,108,111,99,97,116,101,95,108,
+ 111,99,107,218,4,108,111,99,107,218,6,119,97,107,101,117,
+ 112,114,21,0,0,0,218,5,111,119,110,101,114,218,5,99,
+ 111,117,110,116,218,7,119,97,105,116,101,114,115,169,2,218,
+ 4,115,101,108,102,114,21,0,0,0,114,5,0,0,0,114,
+ 5,0,0,0,114,6,0,0,0,218,8,95,95,105,110,105,
+ 116,95,95,71,0,0,0,115,12,0,0,0,10,1,10,1,
+ 6,1,6,1,6,1,10,1,114,18,0,0,0,122,20,95,
+ 77,111,100,117,108,101,76,111,99,107,46,95,95,105,110,105,
+ 116,95,95,99,1,0,0,0,0,0,0,0,0,0,0,0,
3,0,0,0,67,0,0,0,115,86,0,0,0,116,0,160,
1,161,0,125,1,124,0,106,2,125,2,116,3,131,0,125,
3,9,0,116,4,160,5,124,2,161,1,125,4,124,4,100,
@@ -151,75 +149,74 @@ const unsigned char _Py_M__importlib_bootstrap[] = {
1,8,1,4,6,10,1,2,242,114,18,0,0,0,122,24,
95,77,111,100,117,108,101,76,111,99,107,46,104,97,115,95,
100,101,97,100,108,111,99,107,99,1,0,0,0,0,0,0,
- 0,0,0,0,0,2,0,0,0,9,0,0,0,67,0,0,
- 0,115,206,0,0,0,116,0,160,1,161,0,125,1,124,0,
- 116,2,124,1,60,0,9,0,9,0,124,0,106,3,53,0,
- 1,0,124,0,106,4,100,2,107,2,115,24,124,0,106,5,
- 124,1,107,2,114,46,124,1,124,0,95,5,124,0,4,0,
- 106,4,100,3,55,0,2,0,95,4,9,0,100,4,4,0,
- 4,0,131,3,1,0,9,0,116,2,124,1,61,0,100,1,
- 83,0,124,0,160,6,161,0,114,56,116,7,100,5,124,0,
- 22,0,131,1,130,1,124,0,106,8,160,9,100,6,161,1,
- 114,69,124,0,4,0,106,10,100,3,55,0,2,0,95,10,
- 100,4,4,0,4,0,131,3,1,0,110,11,35,0,49,0,
- 115,80,119,4,37,0,1,0,1,0,1,0,89,0,1,0,
- 1,0,124,0,106,8,160,9,161,0,1,0,124,0,106,8,
- 160,11,161,0,1,0,113,10,35,0,116,2,124,1,61,0,
- 119,0,37,0,41,7,122,185,10,32,32,32,32,32,32,32,
- 32,65,99,113,117,105,114,101,32,116,104,101,32,109,111,100,
- 117,108,101,32,108,111,99,107,46,32,32,73,102,32,97,32,
- 112,111,116,101,110,116,105,97,108,32,100,101,97,100,108,111,
- 99,107,32,105,115,32,100,101,116,101,99,116,101,100,44,10,
- 32,32,32,32,32,32,32,32,97,32,95,68,101,97,100,108,
- 111,99,107,69,114,114,111,114,32,105,115,32,114,97,105,115,
- 101,100,46,10,32,32,32,32,32,32,32,32,79,116,104,101,
- 114,119,105,115,101,44,32,116,104,101,32,108,111,99,107,32,
- 105,115,32,97,108,119,97,121,115,32,97,99,113,117,105,114,
- 101,100,32,97,110,100,32,84,114,117,101,32,105,115,32,114,
- 101,116,117,114,110,101,100,46,10,32,32,32,32,32,32,32,
- 32,84,114,26,0,0,0,233,1,0,0,0,78,122,23,100,
- 101,97,100,108,111,99,107,32,100,101,116,101,99,116,101,100,
- 32,98,121,32,37,114,70,41,12,114,27,0,0,0,114,36,
- 0,0,0,114,38,0,0,0,114,28,0,0,0,114,31,0,
- 0,0,114,30,0,0,0,114,42,0,0,0,114,23,0,0,
- 0,114,29,0,0,0,218,7,97,99,113,117,105,114,101,114,
- 32,0,0,0,218,7,114,101,108,101,97,115,101,169,2,114,
- 34,0,0,0,114,41,0,0,0,114,5,0,0,0,114,5,
- 0,0,0,114,6,0,0,0,114,44,0,0,0,100,0,0,
- 0,115,46,0,0,0,8,6,8,1,2,1,2,1,8,1,
- 20,1,6,1,14,1,2,1,10,252,2,4,10,9,8,248,
- 12,1,12,1,14,1,12,248,22,128,10,10,10,1,2,244,
- 2,128,10,14,115,56,0,0,0,137,4,65,33,0,141,22,
- 65,11,3,163,5,65,33,0,174,23,65,11,3,193,5,6,
- 65,33,0,193,11,4,65,15,11,193,15,1,65,33,0,193,
- 16,3,65,15,11,193,19,14,65,33,0,193,33,5,65,38,
- 7,122,19,95,77,111,100,117,108,101,76,111,99,107,46,97,
- 99,113,117,105,114,101,99,1,0,0,0,0,0,0,0,0,
- 0,0,0,2,0,0,0,9,0,0,0,67,0,0,0,115,
- 148,0,0,0,116,0,160,1,161,0,125,1,124,0,106,2,
- 53,0,1,0,124,0,106,3,124,1,107,3,114,17,116,4,
- 100,1,131,1,130,1,124,0,106,5,100,2,107,4,115,24,
- 74,0,130,1,124,0,4,0,106,5,100,3,56,0,2,0,
- 95,5,124,0,106,5,100,2,107,2,114,54,100,0,124,0,
- 95,3,124,0,106,6,114,54,124,0,4,0,106,6,100,3,
- 56,0,2,0,95,6,124,0,106,7,160,8,161,0,1,0,
- 100,0,4,0,4,0,131,3,1,0,100,0,83,0,35,0,
- 49,0,115,66,119,4,37,0,1,0,1,0,1,0,89,0,
- 1,0,1,0,100,0,83,0,41,4,78,250,31,99,97,110,
- 110,111,116,32,114,101,108,101,97,115,101,32,117,110,45,97,
- 99,113,117,105,114,101,100,32,108,111,99,107,114,26,0,0,
- 0,114,43,0,0,0,41,9,114,27,0,0,0,114,36,0,
- 0,0,114,28,0,0,0,114,30,0,0,0,218,12,82,117,
- 110,116,105,109,101,69,114,114,111,114,114,31,0,0,0,114,
- 32,0,0,0,114,29,0,0,0,114,45,0,0,0,114,46,
+ 0,0,0,0,0,9,0,0,0,67,0,0,0,115,204,0,
+ 0,0,116,0,160,1,161,0,125,1,124,0,116,2,124,1,
+ 60,0,9,0,9,0,124,0,106,3,53,0,1,0,124,0,
+ 106,4,100,2,107,2,115,24,124,0,106,5,124,1,107,2,
+ 114,45,124,1,124,0,95,5,124,0,4,0,106,4,100,3,
+ 55,0,2,0,95,4,9,0,100,4,4,0,4,0,131,3,
+ 1,0,116,2,124,1,61,0,100,1,83,0,124,0,160,6,
+ 161,0,114,55,116,7,100,5,124,0,22,0,131,1,130,1,
+ 124,0,106,8,160,9,100,6,161,1,114,68,124,0,4,0,
+ 106,10,100,3,55,0,2,0,95,10,100,4,4,0,4,0,
+ 131,3,1,0,110,11,35,0,49,0,115,79,119,4,37,0,
+ 1,0,1,0,1,0,89,0,1,0,1,0,124,0,106,8,
+ 160,9,161,0,1,0,124,0,106,8,160,11,161,0,1,0,
+ 113,10,35,0,116,2,124,1,61,0,119,0,37,0,41,7,
+ 122,185,10,32,32,32,32,32,32,32,32,65,99,113,117,105,
+ 114,101,32,116,104,101,32,109,111,100,117,108,101,32,108,111,
+ 99,107,46,32,32,73,102,32,97,32,112,111,116,101,110,116,
+ 105,97,108,32,100,101,97,100,108,111,99,107,32,105,115,32,
+ 100,101,116,101,99,116,101,100,44,10,32,32,32,32,32,32,
+ 32,32,97,32,95,68,101,97,100,108,111,99,107,69,114,114,
+ 111,114,32,105,115,32,114,97,105,115,101,100,46,10,32,32,
+ 32,32,32,32,32,32,79,116,104,101,114,119,105,115,101,44,
+ 32,116,104,101,32,108,111,99,107,32,105,115,32,97,108,119,
+ 97,121,115,32,97,99,113,117,105,114,101,100,32,97,110,100,
+ 32,84,114,117,101,32,105,115,32,114,101,116,117,114,110,101,
+ 100,46,10,32,32,32,32,32,32,32,32,84,114,26,0,0,
+ 0,233,1,0,0,0,78,122,23,100,101,97,100,108,111,99,
+ 107,32,100,101,116,101,99,116,101,100,32,98,121,32,37,114,
+ 70,41,12,114,27,0,0,0,114,36,0,0,0,114,38,0,
+ 0,0,114,28,0,0,0,114,31,0,0,0,114,30,0,0,
+ 0,114,42,0,0,0,114,23,0,0,0,114,29,0,0,0,
+ 218,7,97,99,113,117,105,114,101,114,32,0,0,0,218,7,
+ 114,101,108,101,97,115,101,169,2,114,34,0,0,0,114,41,
0,0,0,114,5,0,0,0,114,5,0,0,0,114,6,0,
- 0,0,114,45,0,0,0,125,0,0,0,115,28,0,0,0,
- 8,1,8,1,10,1,8,1,14,1,14,1,10,1,6,1,
- 6,1,14,1,10,1,14,247,22,128,4,0,115,15,0,0,
- 0,135,47,61,3,189,4,65,1,11,193,2,3,65,1,11,
- 122,19,95,77,111,100,117,108,101,76,111,99,107,46,114,101,
- 108,101,97,115,101,99,1,0,0,0,0,0,0,0,0,0,
- 0,0,1,0,0,0,5,0,0,0,67,0,0,0,243,18,
+ 0,0,114,44,0,0,0,100,0,0,0,115,44,0,0,0,
+ 8,6,8,1,2,1,2,1,8,1,20,1,6,1,14,1,
+ 2,1,10,252,10,13,8,248,12,1,12,1,14,1,12,248,
+ 22,128,10,10,10,1,2,244,2,128,10,14,115,56,0,0,
+ 0,137,4,65,32,0,141,22,65,10,3,163,5,65,32,0,
+ 173,23,65,10,3,193,4,6,65,32,0,193,10,4,65,14,
+ 11,193,14,1,65,32,0,193,15,3,65,14,11,193,18,14,
+ 65,32,0,193,32,5,65,37,7,122,19,95,77,111,100,117,
+ 108,101,76,111,99,107,46,97,99,113,117,105,114,101,99,1,
+ 0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,67,
+ 0,0,0,115,148,0,0,0,116,0,160,1,161,0,125,1,
+ 124,0,106,2,53,0,1,0,124,0,106,3,124,1,107,3,
+ 114,17,116,4,100,1,131,1,130,1,124,0,106,5,100,2,
+ 107,4,115,24,74,0,130,1,124,0,4,0,106,5,100,3,
+ 56,0,2,0,95,5,124,0,106,5,100,2,107,2,114,54,
+ 100,0,124,0,95,3,124,0,106,6,114,54,124,0,4,0,
+ 106,6,100,3,56,0,2,0,95,6,124,0,106,7,160,8,
+ 161,0,1,0,100,0,4,0,4,0,131,3,1,0,100,0,
+ 83,0,35,0,49,0,115,66,119,4,37,0,1,0,1,0,
+ 1,0,89,0,1,0,1,0,100,0,83,0,41,4,78,250,
+ 31,99,97,110,110,111,116,32,114,101,108,101,97,115,101,32,
+ 117,110,45,97,99,113,117,105,114,101,100,32,108,111,99,107,
+ 114,26,0,0,0,114,43,0,0,0,41,9,114,27,0,0,
+ 0,114,36,0,0,0,114,28,0,0,0,114,30,0,0,0,
+ 218,12,82,117,110,116,105,109,101,69,114,114,111,114,114,31,
+ 0,0,0,114,32,0,0,0,114,29,0,0,0,114,45,0,
+ 0,0,114,46,0,0,0,114,5,0,0,0,114,5,0,0,
+ 0,114,6,0,0,0,114,45,0,0,0,125,0,0,0,115,
+ 28,0,0,0,8,1,8,1,10,1,8,1,14,1,14,1,
+ 10,1,6,1,6,1,14,1,10,1,14,247,22,128,4,0,
+ 115,15,0,0,0,135,47,61,3,189,4,65,1,11,193,2,
+ 3,65,1,11,122,19,95,77,111,100,117,108,101,76,111,99,
+ 107,46,114,101,108,101,97,115,101,99,1,0,0,0,0,0,
+ 0,0,0,0,0,0,5,0,0,0,67,0,0,0,243,18,
0,0,0,100,1,160,0,124,0,106,1,116,2,124,0,131,
1,161,2,83,0,41,2,78,122,23,95,77,111,100,117,108,
101,76,111,99,107,40,123,33,114,125,41,32,97,116,32,123,
@@ -236,35 +233,34 @@ const unsigned char _Py_M__importlib_bootstrap[] = {
0,0,0,65,0,0,0,115,14,0,0,0,8,0,4,1,
8,5,8,8,8,21,8,25,12,13,114,18,0,0,0,114,
24,0,0,0,99,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,2,0,0,0,64,0,0,0,115,48,0,
- 0,0,101,0,90,1,100,0,90,2,100,1,90,3,100,2,
- 100,3,132,0,90,4,100,4,100,5,132,0,90,5,100,6,
- 100,7,132,0,90,6,100,8,100,9,132,0,90,7,100,10,
- 83,0,41,11,218,16,95,68,117,109,109,121,77,111,100,117,
- 108,101,76,111,99,107,122,86,65,32,115,105,109,112,108,101,
- 32,95,77,111,100,117,108,101,76,111,99,107,32,101,113,117,
- 105,118,97,108,101,110,116,32,102,111,114,32,80,121,116,104,
- 111,110,32,98,117,105,108,100,115,32,119,105,116,104,111,117,
- 116,10,32,32,32,32,109,117,108,116,105,45,116,104,114,101,
- 97,100,105,110,103,32,115,117,112,112,111,114,116,46,99,2,
- 0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,2,
- 0,0,0,67,0,0,0,115,16,0,0,0,124,1,124,0,
- 95,0,100,1,124,0,95,1,100,0,83,0,114,25,0,0,
- 0,41,2,114,21,0,0,0,114,31,0,0,0,114,33,0,
- 0,0,114,5,0,0,0,114,5,0,0,0,114,6,0,0,
- 0,114,35,0,0,0,146,0,0,0,243,4,0,0,0,6,
- 1,10,1,114,18,0,0,0,122,25,95,68,117,109,109,121,
- 77,111,100,117,108,101,76,111,99,107,46,95,95,105,110,105,
- 116,95,95,99,1,0,0,0,0,0,0,0,0,0,0,0,
- 1,0,0,0,3,0,0,0,67,0,0,0,115,18,0,0,
- 0,124,0,4,0,106,0,100,1,55,0,2,0,95,0,100,
- 2,83,0,41,3,78,114,43,0,0,0,84,41,1,114,31,
- 0,0,0,114,53,0,0,0,114,5,0,0,0,114,5,0,
- 0,0,114,6,0,0,0,114,44,0,0,0,150,0,0,0,
- 115,4,0,0,0,14,1,4,1,114,18,0,0,0,122,24,
- 95,68,117,109,109,121,77,111,100,117,108,101,76,111,99,107,
- 46,97,99,113,117,105,114,101,99,1,0,0,0,0,0,0,
- 0,0,0,0,0,1,0,0,0,3,0,0,0,67,0,0,
+ 0,2,0,0,0,64,0,0,0,115,48,0,0,0,101,0,
+ 90,1,100,0,90,2,100,1,90,3,100,2,100,3,132,0,
+ 90,4,100,4,100,5,132,0,90,5,100,6,100,7,132,0,
+ 90,6,100,8,100,9,132,0,90,7,100,10,83,0,41,11,
+ 218,16,95,68,117,109,109,121,77,111,100,117,108,101,76,111,
+ 99,107,122,86,65,32,115,105,109,112,108,101,32,95,77,111,
+ 100,117,108,101,76,111,99,107,32,101,113,117,105,118,97,108,
+ 101,110,116,32,102,111,114,32,80,121,116,104,111,110,32,98,
+ 117,105,108,100,115,32,119,105,116,104,111,117,116,10,32,32,
+ 32,32,109,117,108,116,105,45,116,104,114,101,97,100,105,110,
+ 103,32,115,117,112,112,111,114,116,46,99,2,0,0,0,0,
+ 0,0,0,0,0,0,0,2,0,0,0,67,0,0,0,115,
+ 16,0,0,0,124,1,124,0,95,0,100,1,124,0,95,1,
+ 100,0,83,0,114,25,0,0,0,41,2,114,21,0,0,0,
+ 114,31,0,0,0,114,33,0,0,0,114,5,0,0,0,114,
+ 5,0,0,0,114,6,0,0,0,114,35,0,0,0,146,0,
+ 0,0,243,4,0,0,0,6,1,10,1,114,18,0,0,0,
+ 122,25,95,68,117,109,109,121,77,111,100,117,108,101,76,111,
+ 99,107,46,95,95,105,110,105,116,95,95,99,1,0,0,0,
+ 0,0,0,0,0,0,0,0,3,0,0,0,67,0,0,0,
+ 115,18,0,0,0,124,0,4,0,106,0,100,1,55,0,2,
+ 0,95,0,100,2,83,0,41,3,78,114,43,0,0,0,84,
+ 41,1,114,31,0,0,0,114,53,0,0,0,114,5,0,0,
+ 0,114,5,0,0,0,114,6,0,0,0,114,44,0,0,0,
+ 150,0,0,0,115,4,0,0,0,14,1,4,1,114,18,0,
+ 0,0,122,24,95,68,117,109,109,121,77,111,100,117,108,101,
+ 76,111,99,107,46,97,99,113,117,105,114,101,99,1,0,0,
+ 0,0,0,0,0,0,0,0,0,3,0,0,0,67,0,0,
0,115,36,0,0,0,124,0,106,0,100,1,107,2,114,9,
116,1,100,2,131,1,130,1,124,0,4,0,106,0,100,3,
56,0,2,0,95,0,100,0,83,0,41,4,78,114,26,0,
@@ -274,36 +270,35 @@ const unsigned char _Py_M__importlib_bootstrap[] = {
0,154,0,0,0,115,6,0,0,0,10,1,8,1,18,1,
114,18,0,0,0,122,24,95,68,117,109,109,121,77,111,100,
117,108,101,76,111,99,107,46,114,101,108,101,97,115,101,99,
- 1,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,
- 5,0,0,0,67,0,0,0,114,49,0,0,0,41,2,78,
- 122,28,95,68,117,109,109,121,77,111,100,117,108,101,76,111,
- 99,107,40,123,33,114,125,41,32,97,116,32,123,125,114,50,
- 0,0,0,114,53,0,0,0,114,5,0,0,0,114,5,0,
- 0,0,114,6,0,0,0,114,54,0,0,0,159,0,0,0,
- 114,55,0,0,0,114,18,0,0,0,122,25,95,68,117,109,
- 109,121,77,111,100,117,108,101,76,111,99,107,46,95,95,114,
- 101,112,114,95,95,78,41,8,114,9,0,0,0,114,8,0,
- 0,0,114,1,0,0,0,114,10,0,0,0,114,35,0,0,
- 0,114,44,0,0,0,114,45,0,0,0,114,54,0,0,0,
- 114,5,0,0,0,114,5,0,0,0,114,5,0,0,0,114,
- 6,0,0,0,114,56,0,0,0,142,0,0,0,115,12,0,
- 0,0,8,0,4,1,8,3,8,4,8,4,12,5,114,18,
- 0,0,0,114,56,0,0,0,99,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,2,0,0,0,64,0,0,
- 0,115,36,0,0,0,101,0,90,1,100,0,90,2,100,1,
- 100,2,132,0,90,3,100,3,100,4,132,0,90,4,100,5,
- 100,6,132,0,90,5,100,7,83,0,41,8,218,18,95,77,
- 111,100,117,108,101,76,111,99,107,77,97,110,97,103,101,114,
- 99,2,0,0,0,0,0,0,0,0,0,0,0,2,0,0,
- 0,2,0,0,0,67,0,0,0,115,16,0,0,0,124,1,
- 124,0,95,0,100,0,124,0,95,1,100,0,83,0,114,0,
- 0,0,0,41,2,218,5,95,110,97,109,101,218,5,95,108,
- 111,99,107,114,33,0,0,0,114,5,0,0,0,114,5,0,
- 0,0,114,6,0,0,0,114,35,0,0,0,165,0,0,0,
- 114,57,0,0,0,114,18,0,0,0,122,27,95,77,111,100,
- 117,108,101,76,111,99,107,77,97,110,97,103,101,114,46,95,
- 95,105,110,105,116,95,95,99,1,0,0,0,0,0,0,0,
- 0,0,0,0,1,0,0,0,2,0,0,0,67,0,0,0,
+ 1,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,
+ 67,0,0,0,114,49,0,0,0,41,2,78,122,28,95,68,
+ 117,109,109,121,77,111,100,117,108,101,76,111,99,107,40,123,
+ 33,114,125,41,32,97,116,32,123,125,114,50,0,0,0,114,
+ 53,0,0,0,114,5,0,0,0,114,5,0,0,0,114,6,
+ 0,0,0,114,54,0,0,0,159,0,0,0,114,55,0,0,
+ 0,114,18,0,0,0,122,25,95,68,117,109,109,121,77,111,
+ 100,117,108,101,76,111,99,107,46,95,95,114,101,112,114,95,
+ 95,78,41,8,114,9,0,0,0,114,8,0,0,0,114,1,
+ 0,0,0,114,10,0,0,0,114,35,0,0,0,114,44,0,
+ 0,0,114,45,0,0,0,114,54,0,0,0,114,5,0,0,
+ 0,114,5,0,0,0,114,5,0,0,0,114,6,0,0,0,
+ 114,56,0,0,0,142,0,0,0,115,12,0,0,0,8,0,
+ 4,1,8,3,8,4,8,4,12,5,114,18,0,0,0,114,
+ 56,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,36,0,0,0,101,0,
+ 90,1,100,0,90,2,100,1,100,2,132,0,90,3,100,3,
+ 100,4,132,0,90,4,100,5,100,6,132,0,90,5,100,7,
+ 83,0,41,8,218,18,95,77,111,100,117,108,101,76,111,99,
+ 107,77,97,110,97,103,101,114,99,2,0,0,0,0,0,0,
+ 0,0,0,0,0,2,0,0,0,67,0,0,0,115,16,0,
+ 0,0,124,1,124,0,95,0,100,0,124,0,95,1,100,0,
+ 83,0,114,0,0,0,0,41,2,218,5,95,110,97,109,101,
+ 218,5,95,108,111,99,107,114,33,0,0,0,114,5,0,0,
+ 0,114,5,0,0,0,114,6,0,0,0,114,35,0,0,0,
+ 165,0,0,0,114,57,0,0,0,114,18,0,0,0,122,27,
+ 95,77,111,100,117,108,101,76,111,99,107,77,97,110,97,103,
+ 101,114,46,95,95,105,110,105,116,95,95,99,1,0,0,0,
+ 0,0,0,0,0,0,0,0,2,0,0,0,67,0,0,0,
115,26,0,0,0,116,0,124,0,106,1,131,1,124,0,95,
2,124,0,106,2,160,3,161,0,1,0,100,0,83,0,114,
0,0,0,0,41,4,218,16,95,103,101,116,95,109,111,100,
@@ -314,68 +309,67 @@ const unsigned char _Py_M__importlib_bootstrap[] = {
1,14,1,114,18,0,0,0,122,28,95,77,111,100,117,108,
101,76,111,99,107,77,97,110,97,103,101,114,46,95,95,101,
110,116,101,114,95,95,99,1,0,0,0,0,0,0,0,0,
- 0,0,0,3,0,0,0,2,0,0,0,79,0,0,0,115,
- 14,0,0,0,124,0,106,0,160,1,161,0,1,0,100,0,
- 83,0,114,0,0,0,0,41,2,114,60,0,0,0,114,45,
- 0,0,0,41,3,114,34,0,0,0,218,4,97,114,103,115,
- 90,6,107,119,97,114,103,115,114,5,0,0,0,114,5,0,
- 0,0,114,6,0,0,0,218,8,95,95,101,120,105,116,95,
- 95,173,0,0,0,115,2,0,0,0,14,1,114,18,0,0,
- 0,122,27,95,77,111,100,117,108,101,76,111,99,107,77,97,
- 110,97,103,101,114,46,95,95,101,120,105,116,95,95,78,41,
- 6,114,9,0,0,0,114,8,0,0,0,114,1,0,0,0,
- 114,35,0,0,0,114,62,0,0,0,114,64,0,0,0,114,
- 5,0,0,0,114,5,0,0,0,114,5,0,0,0,114,6,
- 0,0,0,114,58,0,0,0,163,0,0,0,115,8,0,0,
- 0,8,0,8,2,8,4,12,4,114,18,0,0,0,114,58,
- 0,0,0,99,1,0,0,0,0,0,0,0,0,0,0,0,
- 3,0,0,0,8,0,0,0,67,0,0,0,115,138,0,0,
- 0,116,0,160,1,161,0,1,0,9,0,9,0,116,2,124,
- 0,25,0,131,0,125,1,110,12,35,0,4,0,116,3,121,
- 68,1,0,1,0,1,0,100,1,125,1,89,0,110,1,37,
- 0,124,1,100,1,117,0,114,55,116,4,100,1,117,0,114,
- 37,116,5,124,0,131,1,125,1,110,4,116,6,124,0,131,
- 1,125,1,124,0,102,1,100,2,100,3,132,1,125,2,116,
- 7,160,8,124,1,124,2,161,2,116,2,124,0,60,0,116,
- 0,160,9,161,0,1,0,124,1,83,0,35,0,116,0,160,
- 9,161,0,1,0,119,0,37,0,119,0,41,4,122,139,71,
- 101,116,32,111,114,32,99,114,101,97,116,101,32,116,104,101,
- 32,109,111,100,117,108,101,32,108,111,99,107,32,102,111,114,
- 32,97,32,103,105,118,101,110,32,109,111,100,117,108,101,32,
- 110,97,109,101,46,10,10,32,32,32,32,65,99,113,117,105,
- 114,101,47,114,101,108,101,97,115,101,32,105,110,116,101,114,
- 110,97,108,108,121,32,116,104,101,32,103,108,111,98,97,108,
- 32,105,109,112,111,114,116,32,108,111,99,107,32,116,111,32,
- 112,114,111,116,101,99,116,10,32,32,32,32,95,109,111,100,
- 117,108,101,95,108,111,99,107,115,46,78,99,2,0,0,0,
- 0,0,0,0,0,0,0,0,2,0,0,0,8,0,0,0,
- 83,0,0,0,115,56,0,0,0,116,0,160,1,161,0,1,
- 0,9,0,116,2,160,3,124,1,161,1,124,0,117,0,114,
- 15,116,2,124,1,61,0,116,0,160,4,161,0,1,0,100,
- 0,83,0,35,0,116,0,160,4,161,0,1,0,119,0,37,
- 0,114,0,0,0,0,41,5,218,4,95,105,109,112,218,12,
- 97,99,113,117,105,114,101,95,108,111,99,107,218,13,95,109,
- 111,100,117,108,101,95,108,111,99,107,115,114,39,0,0,0,
- 218,12,114,101,108,101,97,115,101,95,108,111,99,107,41,2,
- 218,3,114,101,102,114,21,0,0,0,114,5,0,0,0,114,
- 5,0,0,0,114,6,0,0,0,218,2,99,98,198,0,0,
- 0,115,16,0,0,0,8,1,2,1,14,4,6,1,12,2,
- 2,128,10,0,2,128,115,8,0,0,0,133,10,21,0,149,
- 6,27,7,122,28,95,103,101,116,95,109,111,100,117,108,101,
- 95,108,111,99,107,46,60,108,111,99,97,108,115,62,46,99,
- 98,41,10,114,65,0,0,0,114,66,0,0,0,114,67,0,
- 0,0,218,8,75,101,121,69,114,114,111,114,114,27,0,0,
- 0,114,56,0,0,0,114,24,0,0,0,218,8,95,119,101,
- 97,107,114,101,102,114,69,0,0,0,114,68,0,0,0,41,
- 3,114,21,0,0,0,114,28,0,0,0,114,70,0,0,0,
+ 0,0,0,2,0,0,0,79,0,0,0,115,14,0,0,0,
+ 124,0,106,0,160,1,161,0,1,0,100,0,83,0,114,0,
+ 0,0,0,41,2,114,60,0,0,0,114,45,0,0,0,41,
+ 3,114,34,0,0,0,218,4,97,114,103,115,90,6,107,119,
+ 97,114,103,115,114,5,0,0,0,114,5,0,0,0,114,6,
+ 0,0,0,218,8,95,95,101,120,105,116,95,95,173,0,0,
+ 0,115,2,0,0,0,14,1,114,18,0,0,0,122,27,95,
+ 77,111,100,117,108,101,76,111,99,107,77,97,110,97,103,101,
+ 114,46,95,95,101,120,105,116,95,95,78,41,6,114,9,0,
+ 0,0,114,8,0,0,0,114,1,0,0,0,114,35,0,0,
+ 0,114,62,0,0,0,114,64,0,0,0,114,5,0,0,0,
114,5,0,0,0,114,5,0,0,0,114,6,0,0,0,114,
- 61,0,0,0,179,0,0,0,115,40,0,0,0,8,6,2,
- 1,2,1,12,1,2,128,12,1,8,1,2,128,8,2,8,
- 1,10,1,8,2,12,2,16,11,8,2,4,2,2,128,10,
- 254,2,128,2,234,115,26,0,0,0,134,5,12,0,139,1,
- 61,0,140,9,23,7,149,34,61,0,189,6,65,3,7,193,
- 4,1,23,7,114,61,0,0,0,99,1,0,0,0,0,0,
- 0,0,0,0,0,0,2,0,0,0,8,0,0,0,67,0,
+ 58,0,0,0,163,0,0,0,115,8,0,0,0,8,0,8,
+ 2,8,4,12,4,114,18,0,0,0,114,58,0,0,0,99,
+ 1,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,
+ 67,0,0,0,115,138,0,0,0,116,0,160,1,161,0,1,
+ 0,9,0,9,0,116,2,124,0,25,0,131,0,125,1,110,
+ 12,35,0,4,0,116,3,121,68,1,0,1,0,1,0,100,
+ 1,125,1,89,0,110,1,37,0,124,1,100,1,117,0,114,
+ 55,116,4,100,1,117,0,114,37,116,5,124,0,131,1,125,
+ 1,110,4,116,6,124,0,131,1,125,1,124,0,102,1,100,
+ 2,100,3,132,1,125,2,116,7,160,8,124,1,124,2,161,
+ 2,116,2,124,0,60,0,116,0,160,9,161,0,1,0,124,
+ 1,83,0,35,0,116,0,160,9,161,0,1,0,119,0,37,
+ 0,119,0,41,4,122,139,71,101,116,32,111,114,32,99,114,
+ 101,97,116,101,32,116,104,101,32,109,111,100,117,108,101,32,
+ 108,111,99,107,32,102,111,114,32,97,32,103,105,118,101,110,
+ 32,109,111,100,117,108,101,32,110,97,109,101,46,10,10,32,
+ 32,32,32,65,99,113,117,105,114,101,47,114,101,108,101,97,
+ 115,101,32,105,110,116,101,114,110,97,108,108,121,32,116,104,
+ 101,32,103,108,111,98,97,108,32,105,109,112,111,114,116,32,
+ 108,111,99,107,32,116,111,32,112,114,111,116,101,99,116,10,
+ 32,32,32,32,95,109,111,100,117,108,101,95,108,111,99,107,
+ 115,46,78,99,2,0,0,0,0,0,0,0,0,0,0,0,
+ 8,0,0,0,83,0,0,0,115,56,0,0,0,116,0,160,
+ 1,161,0,1,0,9,0,116,2,160,3,124,1,161,1,124,
+ 0,117,0,114,15,116,2,124,1,61,0,116,0,160,4,161,
+ 0,1,0,100,0,83,0,35,0,116,0,160,4,161,0,1,
+ 0,119,0,37,0,114,0,0,0,0,41,5,218,4,95,105,
+ 109,112,218,12,97,99,113,117,105,114,101,95,108,111,99,107,
+ 218,13,95,109,111,100,117,108,101,95,108,111,99,107,115,114,
+ 39,0,0,0,218,12,114,101,108,101,97,115,101,95,108,111,
+ 99,107,41,2,218,3,114,101,102,114,21,0,0,0,114,5,
+ 0,0,0,114,5,0,0,0,114,6,0,0,0,218,2,99,
+ 98,198,0,0,0,115,16,0,0,0,8,1,2,1,14,4,
+ 6,1,12,2,2,128,10,0,2,128,115,8,0,0,0,133,
+ 10,21,0,149,6,27,7,122,28,95,103,101,116,95,109,111,
+ 100,117,108,101,95,108,111,99,107,46,60,108,111,99,97,108,
+ 115,62,46,99,98,41,10,114,65,0,0,0,114,66,0,0,
+ 0,114,67,0,0,0,218,8,75,101,121,69,114,114,111,114,
+ 114,27,0,0,0,114,56,0,0,0,114,24,0,0,0,218,
+ 8,95,119,101,97,107,114,101,102,114,69,0,0,0,114,68,
+ 0,0,0,41,3,114,21,0,0,0,114,28,0,0,0,114,
+ 70,0,0,0,114,5,0,0,0,114,5,0,0,0,114,6,
+ 0,0,0,114,61,0,0,0,179,0,0,0,115,40,0,0,
+ 0,8,6,2,1,2,1,12,1,2,128,12,1,8,1,2,
+ 128,8,2,8,1,10,1,8,2,12,2,16,11,8,2,4,
+ 2,2,128,10,254,2,128,2,234,115,26,0,0,0,134,5,
+ 12,0,139,1,61,0,140,9,23,7,149,34,61,0,189,6,
+ 65,3,7,193,4,1,23,7,114,61,0,0,0,99,1,0,
+ 0,0,0,0,0,0,0,0,0,0,8,0,0,0,67,0,
0,0,115,56,0,0,0,116,0,124,0,131,1,125,1,9,
0,124,1,160,1,161,0,1,0,110,11,35,0,4,0,116,
2,121,27,1,0,1,0,1,0,89,0,100,1,83,0,37,
@@ -400,62 +394,61 @@ const unsigned char _Py_M__importlib_bootstrap[] = {
8,6,2,1,10,1,2,128,12,1,6,3,2,128,12,2,
2,251,115,12,0,0,0,133,4,10,0,138,7,20,7,155,
1,20,7,114,73,0,0,0,99,1,0,0,0,0,0,0,
- 0,0,0,0,0,3,0,0,0,4,0,0,0,79,0,0,
- 0,115,14,0,0,0,124,0,124,1,105,0,124,2,164,1,
- 142,1,83,0,41,2,97,46,1,0,0,114,101,109,111,118,
- 101,95,105,109,112,111,114,116,108,105,98,95,102,114,97,109,
- 101,115,32,105,110,32,105,109,112,111,114,116,46,99,32,119,
- 105,108,108,32,97,108,119,97,121,115,32,114,101,109,111,118,
- 101,32,115,101,113,117,101,110,99,101,115,10,32,32,32,32,
- 111,102,32,105,109,112,111,114,116,108,105,98,32,102,114,97,
- 109,101,115,32,116,104,97,116,32,101,110,100,32,119,105,116,
- 104,32,97,32,99,97,108,108,32,116,111,32,116,104,105,115,
- 32,102,117,110,99,116,105,111,110,10,10,32,32,32,32,85,
- 115,101,32,105,116,32,105,110,115,116,101,97,100,32,111,102,
- 32,97,32,110,111,114,109,97,108,32,99,97,108,108,32,105,
- 110,32,112,108,97,99,101,115,32,119,104,101,114,101,32,105,
- 110,99,108,117,100,105,110,103,32,116,104,101,32,105,109,112,
- 111,114,116,108,105,98,10,32,32,32,32,102,114,97,109,101,
- 115,32,105,110,116,114,111,100,117,99,101,115,32,117,110,119,
- 97,110,116,101,100,32,110,111,105,115,101,32,105,110,116,111,
- 32,116,104,101,32,116,114,97,99,101,98,97,99,107,32,40,
- 101,46,103,46,32,119,104,101,110,32,101,120,101,99,117,116,
- 105,110,103,10,32,32,32,32,109,111,100,117,108,101,32,99,
- 111,100,101,41,10,32,32,32,32,78,114,5,0,0,0,41,
- 3,218,1,102,114,63,0,0,0,90,4,107,119,100,115,114,
- 5,0,0,0,114,5,0,0,0,114,6,0,0,0,218,25,
- 95,99,97,108,108,95,119,105,116,104,95,102,114,97,109,101,
- 115,95,114,101,109,111,118,101,100,233,0,0,0,115,2,0,
- 0,0,14,8,114,18,0,0,0,114,75,0,0,0,114,43,
- 0,0,0,41,1,218,9,118,101,114,98,111,115,105,116,121,
- 99,1,0,0,0,0,0,0,0,1,0,0,0,3,0,0,
- 0,4,0,0,0,71,0,0,0,115,58,0,0,0,116,0,
- 106,1,106,2,124,1,107,5,114,27,124,0,160,3,100,1,
- 161,1,115,15,100,2,124,0,23,0,125,0,116,4,124,0,
- 106,5,124,2,142,0,116,0,106,6,100,3,141,2,1,0,
- 100,4,83,0,100,4,83,0,41,5,122,61,80,114,105,110,
- 116,32,116,104,101,32,109,101,115,115,97,103,101,32,116,111,
- 32,115,116,100,101,114,114,32,105,102,32,45,118,47,80,89,
- 84,72,79,78,86,69,82,66,79,83,69,32,105,115,32,116,
- 117,114,110,101,100,32,111,110,46,41,2,250,1,35,122,7,
- 105,109,112,111,114,116,32,122,2,35,32,41,1,90,4,102,
- 105,108,101,78,41,7,114,19,0,0,0,218,5,102,108,97,
- 103,115,218,7,118,101,114,98,111,115,101,218,10,115,116,97,
- 114,116,115,119,105,116,104,218,5,112,114,105,110,116,114,51,
- 0,0,0,218,6,115,116,100,101,114,114,41,3,218,7,109,
- 101,115,115,97,103,101,114,76,0,0,0,114,63,0,0,0,
- 114,5,0,0,0,114,5,0,0,0,114,6,0,0,0,218,
- 16,95,118,101,114,98,111,115,101,95,109,101,115,115,97,103,
- 101,244,0,0,0,115,10,0,0,0,12,2,10,1,8,1,
- 24,1,4,253,114,18,0,0,0,114,84,0,0,0,99,1,
- 0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,3,
- 0,0,0,3,0,0,0,243,26,0,0,0,135,0,102,1,
- 100,1,100,2,132,8,125,1,116,0,124,1,136,0,131,2,
- 1,0,124,1,83,0,41,4,122,49,68,101,99,111,114,97,
- 116,111,114,32,116,111,32,118,101,114,105,102,121,32,116,104,
- 101,32,110,97,109,101,100,32,109,111,100,117,108,101,32,105,
- 115,32,98,117,105,108,116,45,105,110,46,99,2,0,0,0,
- 0,0,0,0,0,0,0,0,2,0,0,0,4,0,0,0,
+ 0,0,0,0,0,4,0,0,0,79,0,0,0,115,14,0,
+ 0,0,124,0,124,1,105,0,124,2,164,1,142,1,83,0,
+ 41,2,97,46,1,0,0,114,101,109,111,118,101,95,105,109,
+ 112,111,114,116,108,105,98,95,102,114,97,109,101,115,32,105,
+ 110,32,105,109,112,111,114,116,46,99,32,119,105,108,108,32,
+ 97,108,119,97,121,115,32,114,101,109,111,118,101,32,115,101,
+ 113,117,101,110,99,101,115,10,32,32,32,32,111,102,32,105,
+ 109,112,111,114,116,108,105,98,32,102,114,97,109,101,115,32,
+ 116,104,97,116,32,101,110,100,32,119,105,116,104,32,97,32,
+ 99,97,108,108,32,116,111,32,116,104,105,115,32,102,117,110,
+ 99,116,105,111,110,10,10,32,32,32,32,85,115,101,32,105,
+ 116,32,105,110,115,116,101,97,100,32,111,102,32,97,32,110,
+ 111,114,109,97,108,32,99,97,108,108,32,105,110,32,112,108,
+ 97,99,101,115,32,119,104,101,114,101,32,105,110,99,108,117,
+ 100,105,110,103,32,116,104,101,32,105,109,112,111,114,116,108,
+ 105,98,10,32,32,32,32,102,114,97,109,101,115,32,105,110,
+ 116,114,111,100,117,99,101,115,32,117,110,119,97,110,116,101,
+ 100,32,110,111,105,115,101,32,105,110,116,111,32,116,104,101,
+ 32,116,114,97,99,101,98,97,99,107,32,40,101,46,103,46,
+ 32,119,104,101,110,32,101,120,101,99,117,116,105,110,103,10,
+ 32,32,32,32,109,111,100,117,108,101,32,99,111,100,101,41,
+ 10,32,32,32,32,78,114,5,0,0,0,41,3,218,1,102,
+ 114,63,0,0,0,90,4,107,119,100,115,114,5,0,0,0,
+ 114,5,0,0,0,114,6,0,0,0,218,25,95,99,97,108,
+ 108,95,119,105,116,104,95,102,114,97,109,101,115,95,114,101,
+ 109,111,118,101,100,233,0,0,0,115,2,0,0,0,14,8,
+ 114,18,0,0,0,114,75,0,0,0,114,43,0,0,0,41,
+ 1,218,9,118,101,114,98,111,115,105,116,121,99,1,0,0,
+ 0,0,0,0,0,1,0,0,0,4,0,0,0,71,0,0,
+ 0,115,58,0,0,0,116,0,106,1,106,2,124,1,107,5,
+ 114,27,124,0,160,3,100,1,161,1,115,15,100,2,124,0,
+ 23,0,125,0,116,4,124,0,106,5,124,2,142,0,116,0,
+ 106,6,100,3,141,2,1,0,100,4,83,0,100,4,83,0,
+ 41,5,122,61,80,114,105,110,116,32,116,104,101,32,109,101,
+ 115,115,97,103,101,32,116,111,32,115,116,100,101,114,114,32,
+ 105,102,32,45,118,47,80,89,84,72,79,78,86,69,82,66,
+ 79,83,69,32,105,115,32,116,117,114,110,101,100,32,111,110,
+ 46,41,2,250,1,35,122,7,105,109,112,111,114,116,32,122,
+ 2,35,32,41,1,90,4,102,105,108,101,78,41,7,114,19,
+ 0,0,0,218,5,102,108,97,103,115,218,7,118,101,114,98,
+ 111,115,101,218,10,115,116,97,114,116,115,119,105,116,104,218,
+ 5,112,114,105,110,116,114,51,0,0,0,218,6,115,116,100,
+ 101,114,114,41,3,218,7,109,101,115,115,97,103,101,114,76,
+ 0,0,0,114,63,0,0,0,114,5,0,0,0,114,5,0,
+ 0,0,114,6,0,0,0,218,16,95,118,101,114,98,111,115,
+ 101,95,109,101,115,115,97,103,101,244,0,0,0,115,10,0,
+ 0,0,12,2,10,1,8,1,24,1,4,253,114,18,0,0,
+ 0,114,84,0,0,0,99,1,0,0,0,0,0,0,0,0,
+ 0,0,0,3,0,0,0,3,0,0,0,243,26,0,0,0,
+ 135,0,102,1,100,1,100,2,132,8,125,1,116,0,124,1,
+ 136,0,131,2,1,0,124,1,83,0,41,4,122,49,68,101,
+ 99,111,114,97,116,111,114,32,116,111,32,118,101,114,105,102,
+ 121,32,116,104,101,32,110,97,109,101,100,32,109,111,100,117,
+ 108,101,32,105,115,32,98,117,105,108,116,45,105,110,46,99,
+ 2,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,
19,0,0,0,115,38,0,0,0,124,1,116,0,106,1,118,
1,114,14,116,2,100,1,160,3,124,1,161,1,124,1,100,
2,141,2,130,1,136,0,124,0,124,1,131,2,83,0,41,
@@ -478,65 +471,64 @@ const unsigned char _Py_M__importlib_bootstrap[] = {
0,0,0,218,17,95,114,101,113,117,105,114,101,115,95,98,
117,105,108,116,105,110,252,0,0,0,243,6,0,0,0,12,
2,10,5,4,1,114,18,0,0,0,114,96,0,0,0,99,
- 1,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,
- 3,0,0,0,3,0,0,0,114,85,0,0,0,41,4,122,
- 47,68,101,99,111,114,97,116,111,114,32,116,111,32,118,101,
- 114,105,102,121,32,116,104,101,32,110,97,109,101,100,32,109,
- 111,100,117,108,101,32,105,115,32,102,114,111,122,101,110,46,
- 99,2,0,0,0,0,0,0,0,0,0,0,0,2,0,0,
- 0,4,0,0,0,19,0,0,0,115,38,0,0,0,116,0,
- 160,1,124,1,161,1,115,14,116,2,100,1,160,3,124,1,
- 161,1,124,1,100,2,141,2,130,1,136,0,124,0,124,1,
- 131,2,83,0,169,3,78,122,27,123,33,114,125,32,105,115,
- 32,110,111,116,32,97,32,102,114,111,122,101,110,32,109,111,
- 100,117,108,101,114,20,0,0,0,41,4,114,65,0,0,0,
- 218,9,105,115,95,102,114,111,122,101,110,114,88,0,0,0,
- 114,51,0,0,0,114,89,0,0,0,114,91,0,0,0,114,
- 5,0,0,0,114,6,0,0,0,218,24,95,114,101,113,117,
- 105,114,101,115,95,102,114,111,122,101,110,95,119,114,97,112,
- 112,101,114,9,1,0,0,114,94,0,0,0,114,18,0,0,
- 0,122,50,95,114,101,113,117,105,114,101,115,95,102,114,111,
- 122,101,110,46,60,108,111,99,97,108,115,62,46,95,114,101,
- 113,117,105,114,101,115,95,102,114,111,122,101,110,95,119,114,
- 97,112,112,101,114,78,114,95,0,0,0,41,2,114,92,0,
- 0,0,114,100,0,0,0,114,5,0,0,0,114,91,0,0,
- 0,114,6,0,0,0,218,16,95,114,101,113,117,105,114,101,
- 115,95,102,114,111,122,101,110,7,1,0,0,114,97,0,0,
- 0,114,18,0,0,0,114,101,0,0,0,99,2,0,0,0,
- 0,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,
- 67,0,0,0,115,74,0,0,0,100,1,125,2,116,0,160,
- 1,124,2,116,2,161,2,1,0,116,3,124,1,124,0,131,
- 2,125,3,124,1,116,4,106,5,118,0,114,33,116,4,106,
- 5,124,1,25,0,125,4,116,6,124,3,124,4,131,2,1,
- 0,116,4,106,5,124,1,25,0,83,0,116,7,124,3,131,
- 1,83,0,41,3,122,130,76,111,97,100,32,116,104,101,32,
- 115,112,101,99,105,102,105,101,100,32,109,111,100,117,108,101,
- 32,105,110,116,111,32,115,121,115,46,109,111,100,117,108,101,
- 115,32,97,110,100,32,114,101,116,117,114,110,32,105,116,46,
- 10,10,32,32,32,32,84,104,105,115,32,109,101,116,104,111,
- 100,32,105,115,32,100,101,112,114,101,99,97,116,101,100,46,
- 32,32,85,115,101,32,108,111,97,100,101,114,46,101,120,101,
- 99,95,109,111,100,117,108,101,40,41,32,105,110,115,116,101,
- 97,100,46,10,10,32,32,32,32,122,103,116,104,101,32,108,
- 111,97,100,95,109,111,100,117,108,101,40,41,32,109,101,116,
- 104,111,100,32,105,115,32,100,101,112,114,101,99,97,116,101,
- 100,32,97,110,100,32,115,108,97,116,101,100,32,102,111,114,
- 32,114,101,109,111,118,97,108,32,105,110,32,80,121,116,104,
- 111,110,32,51,46,49,50,59,32,117,115,101,32,101,120,101,
- 99,95,109,111,100,117,108,101,40,41,32,105,110,115,116,101,
- 97,100,78,41,8,218,9,95,119,97,114,110,105,110,103,115,
- 218,4,119,97,114,110,218,18,68,101,112,114,101,99,97,116,
- 105,111,110,87,97,114,110,105,110,103,218,16,115,112,101,99,
- 95,102,114,111,109,95,108,111,97,100,101,114,114,19,0,0,
- 0,218,7,109,111,100,117,108,101,115,218,5,95,101,120,101,
- 99,218,5,95,108,111,97,100,41,5,114,34,0,0,0,114,
- 90,0,0,0,218,3,109,115,103,218,4,115,112,101,99,218,
- 6,109,111,100,117,108,101,114,5,0,0,0,114,5,0,0,
- 0,114,6,0,0,0,218,17,95,108,111,97,100,95,109,111,
- 100,117,108,101,95,115,104,105,109,19,1,0,0,115,16,0,
- 0,0,4,6,12,2,10,1,10,1,10,1,10,1,10,1,
- 8,2,114,18,0,0,0,114,112,0,0,0,99,1,0,0,
- 0,0,0,0,0,0,0,0,0,5,0,0,0,8,0,0,
+ 1,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,
+ 3,0,0,0,114,85,0,0,0,41,4,122,47,68,101,99,
+ 111,114,97,116,111,114,32,116,111,32,118,101,114,105,102,121,
+ 32,116,104,101,32,110,97,109,101,100,32,109,111,100,117,108,
+ 101,32,105,115,32,102,114,111,122,101,110,46,99,2,0,0,
+ 0,0,0,0,0,0,0,0,0,4,0,0,0,19,0,0,
+ 0,115,38,0,0,0,116,0,160,1,124,1,161,1,115,14,
+ 116,2,100,1,160,3,124,1,161,1,124,1,100,2,141,2,
+ 130,1,136,0,124,0,124,1,131,2,83,0,169,3,78,122,
+ 27,123,33,114,125,32,105,115,32,110,111,116,32,97,32,102,
+ 114,111,122,101,110,32,109,111,100,117,108,101,114,20,0,0,
+ 0,41,4,114,65,0,0,0,218,9,105,115,95,102,114,111,
+ 122,101,110,114,88,0,0,0,114,51,0,0,0,114,89,0,
+ 0,0,114,91,0,0,0,114,5,0,0,0,114,6,0,0,
+ 0,218,24,95,114,101,113,117,105,114,101,115,95,102,114,111,
+ 122,101,110,95,119,114,97,112,112,101,114,9,1,0,0,114,
+ 94,0,0,0,114,18,0,0,0,122,50,95,114,101,113,117,
+ 105,114,101,115,95,102,114,111,122,101,110,46,60,108,111,99,
+ 97,108,115,62,46,95,114,101,113,117,105,114,101,115,95,102,
+ 114,111,122,101,110,95,119,114,97,112,112,101,114,78,114,95,
+ 0,0,0,41,2,114,92,0,0,0,114,100,0,0,0,114,
+ 5,0,0,0,114,91,0,0,0,114,6,0,0,0,218,16,
+ 95,114,101,113,117,105,114,101,115,95,102,114,111,122,101,110,
+ 7,1,0,0,114,97,0,0,0,114,18,0,0,0,114,101,
+ 0,0,0,99,2,0,0,0,0,0,0,0,0,0,0,0,
+ 4,0,0,0,67,0,0,0,115,74,0,0,0,100,1,125,
+ 2,116,0,160,1,124,2,116,2,161,2,1,0,116,3,124,
+ 1,124,0,131,2,125,3,124,1,116,4,106,5,118,0,114,
+ 33,116,4,106,5,124,1,25,0,125,4,116,6,124,3,124,
+ 4,131,2,1,0,116,4,106,5,124,1,25,0,83,0,116,
+ 7,124,3,131,1,83,0,41,3,122,130,76,111,97,100,32,
+ 116,104,101,32,115,112,101,99,105,102,105,101,100,32,109,111,
+ 100,117,108,101,32,105,110,116,111,32,115,121,115,46,109,111,
+ 100,117,108,101,115,32,97,110,100,32,114,101,116,117,114,110,
+ 32,105,116,46,10,10,32,32,32,32,84,104,105,115,32,109,
+ 101,116,104,111,100,32,105,115,32,100,101,112,114,101,99,97,
+ 116,101,100,46,32,32,85,115,101,32,108,111,97,100,101,114,
+ 46,101,120,101,99,95,109,111,100,117,108,101,40,41,32,105,
+ 110,115,116,101,97,100,46,10,10,32,32,32,32,122,103,116,
+ 104,101,32,108,111,97,100,95,109,111,100,117,108,101,40,41,
+ 32,109,101,116,104,111,100,32,105,115,32,100,101,112,114,101,
+ 99,97,116,101,100,32,97,110,100,32,115,108,97,116,101,100,
+ 32,102,111,114,32,114,101,109,111,118,97,108,32,105,110,32,
+ 80,121,116,104,111,110,32,51,46,49,50,59,32,117,115,101,
+ 32,101,120,101,99,95,109,111,100,117,108,101,40,41,32,105,
+ 110,115,116,101,97,100,78,41,8,218,9,95,119,97,114,110,
+ 105,110,103,115,218,4,119,97,114,110,218,18,68,101,112,114,
+ 101,99,97,116,105,111,110,87,97,114,110,105,110,103,218,16,
+ 115,112,101,99,95,102,114,111,109,95,108,111,97,100,101,114,
+ 114,19,0,0,0,218,7,109,111,100,117,108,101,115,218,5,
+ 95,101,120,101,99,218,5,95,108,111,97,100,41,5,114,34,
+ 0,0,0,114,90,0,0,0,218,3,109,115,103,218,4,115,
+ 112,101,99,218,6,109,111,100,117,108,101,114,5,0,0,0,
+ 114,5,0,0,0,114,6,0,0,0,218,17,95,108,111,97,
+ 100,95,109,111,100,117,108,101,95,115,104,105,109,19,1,0,
+ 0,115,16,0,0,0,4,6,12,2,10,1,10,1,10,1,
+ 10,1,10,1,8,2,114,18,0,0,0,114,112,0,0,0,
+ 99,1,0,0,0,0,0,0,0,0,0,0,0,8,0,0,
0,67,0,0,0,115,194,0,0,0,116,0,124,0,100,1,
100,2,131,3,125,1,116,0,124,0,100,3,100,2,131,3,
4,0,125,2,114,18,116,1,124,2,131,1,83,0,116,2,
@@ -576,151 +568,150 @@ const unsigned char _Py_M__importlib_bootstrap[] = {
172,9,55,7,185,3,61,0,189,16,65,23,7,193,15,6,
65,23,7,193,30,1,65,23,7,193,31,1,55,7,193,32,
1,38,7,114,125,0,0,0,99,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,4,0,0,0,64,0,0,
- 0,115,114,0,0,0,101,0,90,1,100,0,90,2,100,1,
- 90,3,100,2,100,2,100,2,100,3,156,3,100,4,100,5,
- 132,2,90,4,100,6,100,7,132,0,90,5,100,8,100,9,
- 132,0,90,6,101,7,100,10,100,11,132,0,131,1,90,8,
- 101,8,106,9,100,12,100,11,132,0,131,1,90,8,101,7,
- 100,13,100,14,132,0,131,1,90,10,101,7,100,15,100,16,
- 132,0,131,1,90,11,101,11,106,9,100,17,100,16,132,0,
- 131,1,90,11,100,2,83,0,41,18,218,10,77,111,100,117,
- 108,101,83,112,101,99,97,208,5,0,0,84,104,101,32,115,
- 112,101,99,105,102,105,99,97,116,105,111,110,32,102,111,114,
- 32,97,32,109,111,100,117,108,101,44,32,117,115,101,100,32,
- 102,111,114,32,108,111,97,100,105,110,103,46,10,10,32,32,
- 32,32,65,32,109,111,100,117,108,101,39,115,32,115,112,101,
- 99,32,105,115,32,116,104,101,32,115,111,117,114,99,101,32,
- 102,111,114,32,105,110,102,111,114,109,97,116,105,111,110,32,
- 97,98,111,117,116,32,116,104,101,32,109,111,100,117,108,101,
- 46,32,32,70,111,114,10,32,32,32,32,100,97,116,97,32,
- 97,115,115,111,99,105,97,116,101,100,32,119,105,116,104,32,
- 116,104,101,32,109,111,100,117,108,101,44,32,105,110,99,108,
- 117,100,105,110,103,32,115,111,117,114,99,101,44,32,117,115,
- 101,32,116,104,101,32,115,112,101,99,39,115,10,32,32,32,
- 32,108,111,97,100,101,114,46,10,10,32,32,32,32,96,110,
- 97,109,101,96,32,105,115,32,116,104,101,32,97,98,115,111,
- 108,117,116,101,32,110,97,109,101,32,111,102,32,116,104,101,
- 32,109,111,100,117,108,101,46,32,32,96,108,111,97,100,101,
- 114,96,32,105,115,32,116,104,101,32,108,111,97,100,101,114,
- 10,32,32,32,32,116,111,32,117,115,101,32,119,104,101,110,
- 32,108,111,97,100,105,110,103,32,116,104,101,32,109,111,100,
- 117,108,101,46,32,32,96,112,97,114,101,110,116,96,32,105,
- 115,32,116,104,101,32,110,97,109,101,32,111,102,32,116,104,
- 101,10,32,32,32,32,112,97,99,107,97,103,101,32,116,104,
- 101,32,109,111,100,117,108,101,32,105,115,32,105,110,46,32,
- 32,84,104,101,32,112,97,114,101,110,116,32,105,115,32,100,
- 101,114,105,118,101,100,32,102,114,111,109,32,116,104,101,32,
- 110,97,109,101,46,10,10,32,32,32,32,96,105,115,95,112,
- 97,99,107,97,103,101,96,32,100,101,116,101,114,109,105,110,
- 101,115,32,105,102,32,116,104,101,32,109,111,100,117,108,101,
- 32,105,115,32,99,111,110,115,105,100,101,114,101,100,32,97,
- 32,112,97,99,107,97,103,101,32,111,114,10,32,32,32,32,
- 110,111,116,46,32,32,79,110,32,109,111,100,117,108,101,115,
- 32,116,104,105,115,32,105,115,32,114,101,102,108,101,99,116,
- 101,100,32,98,121,32,116,104,101,32,96,95,95,112,97,116,
- 104,95,95,96,32,97,116,116,114,105,98,117,116,101,46,10,
- 10,32,32,32,32,96,111,114,105,103,105,110,96,32,105,115,
- 32,116,104,101,32,115,112,101,99,105,102,105,99,32,108,111,
- 99,97,116,105,111,110,32,117,115,101,100,32,98,121,32,116,
- 104,101,32,108,111,97,100,101,114,32,102,114,111,109,32,119,
- 104,105,99,104,32,116,111,10,32,32,32,32,108,111,97,100,
- 32,116,104,101,32,109,111,100,117,108,101,44,32,105,102,32,
- 116,104,97,116,32,105,110,102,111,114,109,97,116,105,111,110,
- 32,105,115,32,97,118,97,105,108,97,98,108,101,46,32,32,
- 87,104,101,110,32,102,105,108,101,110,97,109,101,32,105,115,
- 10,32,32,32,32,115,101,116,44,32,111,114,105,103,105,110,
- 32,119,105,108,108,32,109,97,116,99,104,46,10,10,32,32,
- 32,32,96,104,97,115,95,108,111,99,97,116,105,111,110,96,
- 32,105,110,100,105,99,97,116,101,115,32,116,104,97,116,32,
- 97,32,115,112,101,99,39,115,32,34,111,114,105,103,105,110,
- 34,32,114,101,102,108,101,99,116,115,32,97,32,108,111,99,
- 97,116,105,111,110,46,10,32,32,32,32,87,104,101,110,32,
- 116,104,105,115,32,105,115,32,84,114,117,101,44,32,96,95,
- 95,102,105,108,101,95,95,96,32,97,116,116,114,105,98,117,
- 116,101,32,111,102,32,116,104,101,32,109,111,100,117,108,101,
- 32,105,115,32,115,101,116,46,10,10,32,32,32,32,96,99,
- 97,99,104,101,100,96,32,105,115,32,116,104,101,32,108,111,
- 99,97,116,105,111,110,32,111,102,32,116,104,101,32,99,97,
- 99,104,101,100,32,98,121,116,101,99,111,100,101,32,102,105,
- 108,101,44,32,105,102,32,97,110,121,46,32,32,73,116,10,
- 32,32,32,32,99,111,114,114,101,115,112,111,110,100,115,32,
- 116,111,32,116,104,101,32,96,95,95,99,97,99,104,101,100,
- 95,95,96,32,97,116,116,114,105,98,117,116,101,46,10,10,
- 32,32,32,32,96,115,117,98,109,111,100,117,108,101,95,115,
- 101,97,114,99,104,95,108,111,99,97,116,105,111,110,115,96,
- 32,105,115,32,116,104,101,32,115,101,113,117,101,110,99,101,
- 32,111,102,32,112,97,116,104,32,101,110,116,114,105,101,115,
- 32,116,111,10,32,32,32,32,115,101,97,114,99,104,32,119,
- 104,101,110,32,105,109,112,111,114,116,105,110,103,32,115,117,
- 98,109,111,100,117,108,101,115,46,32,32,73,102,32,115,101,
- 116,44,32,105,115,95,112,97,99,107,97,103,101,32,115,104,
- 111,117,108,100,32,98,101,10,32,32,32,32,84,114,117,101,
- 45,45,97,110,100,32,70,97,108,115,101,32,111,116,104,101,
- 114,119,105,115,101,46,10,10,32,32,32,32,80,97,99,107,
- 97,103,101,115,32,97,114,101,32,115,105,109,112,108,121,32,
- 109,111,100,117,108,101,115,32,116,104,97,116,32,40,109,97,
- 121,41,32,104,97,118,101,32,115,117,98,109,111,100,117,108,
- 101,115,46,32,32,73,102,32,97,32,115,112,101,99,10,32,
- 32,32,32,104,97,115,32,97,32,110,111,110,45,78,111,110,
- 101,32,118,97,108,117,101,32,105,110,32,96,115,117,98,109,
- 111,100,117,108,101,95,115,101,97,114,99,104,95,108,111,99,
- 97,116,105,111,110,115,96,44,32,116,104,101,32,105,109,112,
- 111,114,116,10,32,32,32,32,115,121,115,116,101,109,32,119,
- 105,108,108,32,99,111,110,115,105,100,101,114,32,109,111,100,
- 117,108,101,115,32,108,111,97,100,101,100,32,102,114,111,109,
- 32,116,104,101,32,115,112,101,99,32,97,115,32,112,97,99,
- 107,97,103,101,115,46,10,10,32,32,32,32,79,110,108,121,
- 32,102,105,110,100,101,114,115,32,40,115,101,101,32,105,109,
- 112,111,114,116,108,105,98,46,97,98,99,46,77,101,116,97,
- 80,97,116,104,70,105,110,100,101,114,32,97,110,100,10,32,
- 32,32,32,105,109,112,111,114,116,108,105,98,46,97,98,99,
- 46,80,97,116,104,69,110,116,114,121,70,105,110,100,101,114,
- 41,32,115,104,111,117,108,100,32,109,111,100,105,102,121,32,
- 77,111,100,117,108,101,83,112,101,99,32,105,110,115,116,97,
- 110,99,101,115,46,10,10,32,32,32,32,78,41,3,218,6,
- 111,114,105,103,105,110,218,12,108,111,97,100,101,114,95,115,
- 116,97,116,101,218,10,105,115,95,112,97,99,107,97,103,101,
- 99,3,0,0,0,0,0,0,0,3,0,0,0,6,0,0,
- 0,2,0,0,0,67,0,0,0,115,54,0,0,0,124,1,
- 124,0,95,0,124,2,124,0,95,1,124,3,124,0,95,2,
- 124,4,124,0,95,3,124,5,114,16,103,0,110,1,100,0,
- 124,0,95,4,100,1,124,0,95,5,100,0,124,0,95,6,
- 100,0,83,0,41,2,78,70,41,7,114,21,0,0,0,114,
- 123,0,0,0,114,127,0,0,0,114,128,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,110,115,218,13,95,115,101,116,
- 95,102,105,108,101,97,116,116,114,218,7,95,99,97,99,104,
- 101,100,41,6,114,34,0,0,0,114,21,0,0,0,114,123,
- 0,0,0,114,127,0,0,0,114,128,0,0,0,114,129,0,
- 0,0,114,5,0,0,0,114,5,0,0,0,114,6,0,0,
- 0,114,35,0,0,0,101,1,0,0,115,14,0,0,0,6,
- 2,6,1,6,1,6,1,14,1,6,3,10,1,114,18,0,
- 0,0,122,19,77,111,100,117,108,101,83,112,101,99,46,95,
- 95,105,110,105,116,95,95,99,1,0,0,0,0,0,0,0,
- 0,0,0,0,2,0,0,0,6,0,0,0,67,0,0,0,
- 115,102,0,0,0,100,1,160,0,124,0,106,1,161,1,100,
- 2,160,0,124,0,106,2,161,1,103,2,125,1,124,0,106,
- 3,100,0,117,1,114,26,124,1,160,4,100,3,160,0,124,
- 0,106,3,161,1,161,1,1,0,124,0,106,5,100,0,117,
- 1,114,40,124,1,160,4,100,4,160,0,124,0,106,5,161,
- 1,161,1,1,0,100,5,160,0,124,0,106,6,106,7,100,
- 6,160,8,124,1,161,1,161,2,83,0,41,7,78,122,9,
- 110,97,109,101,61,123,33,114,125,122,11,108,111,97,100,101,
- 114,61,123,33,114,125,122,11,111,114,105,103,105,110,61,123,
- 33,114,125,122,29,115,117,98,109,111,100,117,108,101,95,115,
- 101,97,114,99,104,95,108,111,99,97,116,105,111,110,115,61,
- 123,125,122,6,123,125,40,123,125,41,122,2,44,32,41,9,
- 114,51,0,0,0,114,21,0,0,0,114,123,0,0,0,114,
- 127,0,0,0,218,6,97,112,112,101,110,100,114,130,0,0,
- 0,218,9,95,95,99,108,97,115,115,95,95,114,9,0,0,
- 0,218,4,106,111,105,110,41,2,114,34,0,0,0,114,63,
- 0,0,0,114,5,0,0,0,114,5,0,0,0,114,6,0,
- 0,0,114,54,0,0,0,113,1,0,0,115,20,0,0,0,
- 10,1,10,1,4,255,10,2,18,1,10,1,6,1,8,1,
- 4,255,22,2,114,18,0,0,0,122,19,77,111,100,117,108,
- 101,83,112,101,99,46,95,95,114,101,112,114,95,95,99,2,
- 0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,8,
+ 0,0,0,0,0,4,0,0,0,64,0,0,0,115,114,0,
+ 0,0,101,0,90,1,100,0,90,2,100,1,90,3,100,2,
+ 100,2,100,2,100,3,156,3,100,4,100,5,132,2,90,4,
+ 100,6,100,7,132,0,90,5,100,8,100,9,132,0,90,6,
+ 101,7,100,10,100,11,132,0,131,1,90,8,101,8,106,9,
+ 100,12,100,11,132,0,131,1,90,8,101,7,100,13,100,14,
+ 132,0,131,1,90,10,101,7,100,15,100,16,132,0,131,1,
+ 90,11,101,11,106,9,100,17,100,16,132,0,131,1,90,11,
+ 100,2,83,0,41,18,218,10,77,111,100,117,108,101,83,112,
+ 101,99,97,208,5,0,0,84,104,101,32,115,112,101,99,105,
+ 102,105,99,97,116,105,111,110,32,102,111,114,32,97,32,109,
+ 111,100,117,108,101,44,32,117,115,101,100,32,102,111,114,32,
+ 108,111,97,100,105,110,103,46,10,10,32,32,32,32,65,32,
+ 109,111,100,117,108,101,39,115,32,115,112,101,99,32,105,115,
+ 32,116,104,101,32,115,111,117,114,99,101,32,102,111,114,32,
+ 105,110,102,111,114,109,97,116,105,111,110,32,97,98,111,117,
+ 116,32,116,104,101,32,109,111,100,117,108,101,46,32,32,70,
+ 111,114,10,32,32,32,32,100,97,116,97,32,97,115,115,111,
+ 99,105,97,116,101,100,32,119,105,116,104,32,116,104,101,32,
+ 109,111,100,117,108,101,44,32,105,110,99,108,117,100,105,110,
+ 103,32,115,111,117,114,99,101,44,32,117,115,101,32,116,104,
+ 101,32,115,112,101,99,39,115,10,32,32,32,32,108,111,97,
+ 100,101,114,46,10,10,32,32,32,32,96,110,97,109,101,96,
+ 32,105,115,32,116,104,101,32,97,98,115,111,108,117,116,101,
+ 32,110,97,109,101,32,111,102,32,116,104,101,32,109,111,100,
+ 117,108,101,46,32,32,96,108,111,97,100,101,114,96,32,105,
+ 115,32,116,104,101,32,108,111,97,100,101,114,10,32,32,32,
+ 32,116,111,32,117,115,101,32,119,104,101,110,32,108,111,97,
+ 100,105,110,103,32,116,104,101,32,109,111,100,117,108,101,46,
+ 32,32,96,112,97,114,101,110,116,96,32,105,115,32,116,104,
+ 101,32,110,97,109,101,32,111,102,32,116,104,101,10,32,32,
+ 32,32,112,97,99,107,97,103,101,32,116,104,101,32,109,111,
+ 100,117,108,101,32,105,115,32,105,110,46,32,32,84,104,101,
+ 32,112,97,114,101,110,116,32,105,115,32,100,101,114,105,118,
+ 101,100,32,102,114,111,109,32,116,104,101,32,110,97,109,101,
+ 46,10,10,32,32,32,32,96,105,115,95,112,97,99,107,97,
+ 103,101,96,32,100,101,116,101,114,109,105,110,101,115,32,105,
+ 102,32,116,104,101,32,109,111,100,117,108,101,32,105,115,32,
+ 99,111,110,115,105,100,101,114,101,100,32,97,32,112,97,99,
+ 107,97,103,101,32,111,114,10,32,32,32,32,110,111,116,46,
+ 32,32,79,110,32,109,111,100,117,108,101,115,32,116,104,105,
+ 115,32,105,115,32,114,101,102,108,101,99,116,101,100,32,98,
+ 121,32,116,104,101,32,96,95,95,112,97,116,104,95,95,96,
+ 32,97,116,116,114,105,98,117,116,101,46,10,10,32,32,32,
+ 32,96,111,114,105,103,105,110,96,32,105,115,32,116,104,101,
+ 32,115,112,101,99,105,102,105,99,32,108,111,99,97,116,105,
+ 111,110,32,117,115,101,100,32,98,121,32,116,104,101,32,108,
+ 111,97,100,101,114,32,102,114,111,109,32,119,104,105,99,104,
+ 32,116,111,10,32,32,32,32,108,111,97,100,32,116,104,101,
+ 32,109,111,100,117,108,101,44,32,105,102,32,116,104,97,116,
+ 32,105,110,102,111,114,109,97,116,105,111,110,32,105,115,32,
+ 97,118,97,105,108,97,98,108,101,46,32,32,87,104,101,110,
+ 32,102,105,108,101,110,97,109,101,32,105,115,10,32,32,32,
+ 32,115,101,116,44,32,111,114,105,103,105,110,32,119,105,108,
+ 108,32,109,97,116,99,104,46,10,10,32,32,32,32,96,104,
+ 97,115,95,108,111,99,97,116,105,111,110,96,32,105,110,100,
+ 105,99,97,116,101,115,32,116,104,97,116,32,97,32,115,112,
+ 101,99,39,115,32,34,111,114,105,103,105,110,34,32,114,101,
+ 102,108,101,99,116,115,32,97,32,108,111,99,97,116,105,111,
+ 110,46,10,32,32,32,32,87,104,101,110,32,116,104,105,115,
+ 32,105,115,32,84,114,117,101,44,32,96,95,95,102,105,108,
+ 101,95,95,96,32,97,116,116,114,105,98,117,116,101,32,111,
+ 102,32,116,104,101,32,109,111,100,117,108,101,32,105,115,32,
+ 115,101,116,46,10,10,32,32,32,32,96,99,97,99,104,101,
+ 100,96,32,105,115,32,116,104,101,32,108,111,99,97,116,105,
+ 111,110,32,111,102,32,116,104,101,32,99,97,99,104,101,100,
+ 32,98,121,116,101,99,111,100,101,32,102,105,108,101,44,32,
+ 105,102,32,97,110,121,46,32,32,73,116,10,32,32,32,32,
+ 99,111,114,114,101,115,112,111,110,100,115,32,116,111,32,116,
+ 104,101,32,96,95,95,99,97,99,104,101,100,95,95,96,32,
+ 97,116,116,114,105,98,117,116,101,46,10,10,32,32,32,32,
+ 96,115,117,98,109,111,100,117,108,101,95,115,101,97,114,99,
+ 104,95,108,111,99,97,116,105,111,110,115,96,32,105,115,32,
+ 116,104,101,32,115,101,113,117,101,110,99,101,32,111,102,32,
+ 112,97,116,104,32,101,110,116,114,105,101,115,32,116,111,10,
+ 32,32,32,32,115,101,97,114,99,104,32,119,104,101,110,32,
+ 105,109,112,111,114,116,105,110,103,32,115,117,98,109,111,100,
+ 117,108,101,115,46,32,32,73,102,32,115,101,116,44,32,105,
+ 115,95,112,97,99,107,97,103,101,32,115,104,111,117,108,100,
+ 32,98,101,10,32,32,32,32,84,114,117,101,45,45,97,110,
+ 100,32,70,97,108,115,101,32,111,116,104,101,114,119,105,115,
+ 101,46,10,10,32,32,32,32,80,97,99,107,97,103,101,115,
+ 32,97,114,101,32,115,105,109,112,108,121,32,109,111,100,117,
+ 108,101,115,32,116,104,97,116,32,40,109,97,121,41,32,104,
+ 97,118,101,32,115,117,98,109,111,100,117,108,101,115,46,32,
+ 32,73,102,32,97,32,115,112,101,99,10,32,32,32,32,104,
+ 97,115,32,97,32,110,111,110,45,78,111,110,101,32,118,97,
+ 108,117,101,32,105,110,32,96,115,117,98,109,111,100,117,108,
+ 101,95,115,101,97,114,99,104,95,108,111,99,97,116,105,111,
+ 110,115,96,44,32,116,104,101,32,105,109,112,111,114,116,10,
+ 32,32,32,32,115,121,115,116,101,109,32,119,105,108,108,32,
+ 99,111,110,115,105,100,101,114,32,109,111,100,117,108,101,115,
+ 32,108,111,97,100,101,100,32,102,114,111,109,32,116,104,101,
+ 32,115,112,101,99,32,97,115,32,112,97,99,107,97,103,101,
+ 115,46,10,10,32,32,32,32,79,110,108,121,32,102,105,110,
+ 100,101,114,115,32,40,115,101,101,32,105,109,112,111,114,116,
+ 108,105,98,46,97,98,99,46,77,101,116,97,80,97,116,104,
+ 70,105,110,100,101,114,32,97,110,100,10,32,32,32,32,105,
+ 109,112,111,114,116,108,105,98,46,97,98,99,46,80,97,116,
+ 104,69,110,116,114,121,70,105,110,100,101,114,41,32,115,104,
+ 111,117,108,100,32,109,111,100,105,102,121,32,77,111,100,117,
+ 108,101,83,112,101,99,32,105,110,115,116,97,110,99,101,115,
+ 46,10,10,32,32,32,32,78,41,3,218,6,111,114,105,103,
+ 105,110,218,12,108,111,97,100,101,114,95,115,116,97,116,101,
+ 218,10,105,115,95,112,97,99,107,97,103,101,99,3,0,0,
+ 0,0,0,0,0,3,0,0,0,2,0,0,0,67,0,0,
+ 0,115,54,0,0,0,124,1,124,0,95,0,124,2,124,0,
+ 95,1,124,3,124,0,95,2,124,4,124,0,95,3,124,5,
+ 114,16,103,0,110,1,100,0,124,0,95,4,100,1,124,0,
+ 95,5,100,0,124,0,95,6,100,0,83,0,41,2,78,70,
+ 41,7,114,21,0,0,0,114,123,0,0,0,114,127,0,0,
+ 0,114,128,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,
+ 110,115,218,13,95,115,101,116,95,102,105,108,101,97,116,116,
+ 114,218,7,95,99,97,99,104,101,100,41,6,114,34,0,0,
+ 0,114,21,0,0,0,114,123,0,0,0,114,127,0,0,0,
+ 114,128,0,0,0,114,129,0,0,0,114,5,0,0,0,114,
+ 5,0,0,0,114,6,0,0,0,114,35,0,0,0,101,1,
+ 0,0,115,14,0,0,0,6,2,6,1,6,1,6,1,14,
+ 1,6,3,10,1,114,18,0,0,0,122,19,77,111,100,117,
+ 108,101,83,112,101,99,46,95,95,105,110,105,116,95,95,99,
+ 1,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,
+ 67,0,0,0,115,102,0,0,0,100,1,160,0,124,0,106,
+ 1,161,1,100,2,160,0,124,0,106,2,161,1,103,2,125,
+ 1,124,0,106,3,100,0,117,1,114,26,124,1,160,4,100,
+ 3,160,0,124,0,106,3,161,1,161,1,1,0,124,0,106,
+ 5,100,0,117,1,114,40,124,1,160,4,100,4,160,0,124,
+ 0,106,5,161,1,161,1,1,0,100,5,160,0,124,0,106,
+ 6,106,7,100,6,160,8,124,1,161,1,161,2,83,0,41,
+ 7,78,122,9,110,97,109,101,61,123,33,114,125,122,11,108,
+ 111,97,100,101,114,61,123,33,114,125,122,11,111,114,105,103,
+ 105,110,61,123,33,114,125,122,29,115,117,98,109,111,100,117,
+ 108,101,95,115,101,97,114,99,104,95,108,111,99,97,116,105,
+ 111,110,115,61,123,125,122,6,123,125,40,123,125,41,122,2,
+ 44,32,41,9,114,51,0,0,0,114,21,0,0,0,114,123,
+ 0,0,0,114,127,0,0,0,218,6,97,112,112,101,110,100,
+ 114,130,0,0,0,218,9,95,95,99,108,97,115,115,95,95,
+ 114,9,0,0,0,218,4,106,111,105,110,41,2,114,34,0,
+ 0,0,114,63,0,0,0,114,5,0,0,0,114,5,0,0,
+ 0,114,6,0,0,0,114,54,0,0,0,113,1,0,0,115,
+ 20,0,0,0,10,1,10,1,4,255,10,2,18,1,10,1,
+ 6,1,8,1,4,255,22,2,114,18,0,0,0,122,19,77,
+ 111,100,117,108,101,83,112,101,99,46,95,95,114,101,112,114,
+ 95,95,99,2,0,0,0,0,0,0,0,0,0,0,0,8,
0,0,0,67,0,0,0,115,104,0,0,0,124,0,106,0,
125,2,9,0,124,0,106,1,124,1,106,1,107,2,111,38,
124,0,106,2,124,1,106,2,107,2,111,38,124,0,106,3,
@@ -741,140 +732,138 @@ const unsigned char _Py_M__importlib_bootstrap[] = {
2,255,115,12,0,0,0,132,34,39,0,167,9,50,7,179,
1,50,7,122,17,77,111,100,117,108,101,83,112,101,99,46,
95,95,101,113,95,95,99,1,0,0,0,0,0,0,0,0,
- 0,0,0,1,0,0,0,3,0,0,0,67,0,0,0,115,
- 58,0,0,0,124,0,106,0,100,0,117,0,114,26,124,0,
- 106,1,100,0,117,1,114,26,124,0,106,2,114,26,116,3,
- 100,0,117,0,114,19,116,4,130,1,116,3,160,5,124,0,
- 106,1,161,1,124,0,95,0,124,0,106,0,83,0,114,0,
- 0,0,0,41,6,114,132,0,0,0,114,127,0,0,0,114,
- 131,0,0,0,218,19,95,98,111,111,116,115,116,114,97,112,
- 95,101,120,116,101,114,110,97,108,218,19,78,111,116,73,109,
- 112,108,101,109,101,110,116,101,100,69,114,114,111,114,90,11,
- 95,103,101,116,95,99,97,99,104,101,100,114,53,0,0,0,
- 114,5,0,0,0,114,5,0,0,0,114,6,0,0,0,114,
- 136,0,0,0,135,1,0,0,115,12,0,0,0,10,2,16,
- 1,8,1,4,1,14,1,6,1,114,18,0,0,0,122,17,
- 77,111,100,117,108,101,83,112,101,99,46,99,97,99,104,101,
- 100,99,2,0,0,0,0,0,0,0,0,0,0,0,2,0,
- 0,0,2,0,0,0,67,0,0,0,115,10,0,0,0,124,
- 1,124,0,95,0,100,0,83,0,114,0,0,0,0,41,1,
- 114,132,0,0,0,41,2,114,34,0,0,0,114,136,0,0,
+ 0,0,0,3,0,0,0,67,0,0,0,115,58,0,0,0,
+ 124,0,106,0,100,0,117,0,114,26,124,0,106,1,100,0,
+ 117,1,114,26,124,0,106,2,114,26,116,3,100,0,117,0,
+ 114,19,116,4,130,1,116,3,160,5,124,0,106,1,161,1,
+ 124,0,95,0,124,0,106,0,83,0,114,0,0,0,0,41,
+ 6,114,132,0,0,0,114,127,0,0,0,114,131,0,0,0,
+ 218,19,95,98,111,111,116,115,116,114,97,112,95,101,120,116,
+ 101,114,110,97,108,218,19,78,111,116,73,109,112,108,101,109,
+ 101,110,116,101,100,69,114,114,111,114,90,11,95,103,101,116,
+ 95,99,97,99,104,101,100,114,53,0,0,0,114,5,0,0,
+ 0,114,5,0,0,0,114,6,0,0,0,114,136,0,0,0,
+ 135,1,0,0,115,12,0,0,0,10,2,16,1,8,1,4,
+ 1,14,1,6,1,114,18,0,0,0,122,17,77,111,100,117,
+ 108,101,83,112,101,99,46,99,97,99,104,101,100,99,2,0,
+ 0,0,0,0,0,0,0,0,0,0,2,0,0,0,67,0,
+ 0,0,115,10,0,0,0,124,1,124,0,95,0,100,0,83,
+ 0,114,0,0,0,0,41,1,114,132,0,0,0,41,2,114,
+ 34,0,0,0,114,136,0,0,0,114,5,0,0,0,114,5,
+ 0,0,0,114,6,0,0,0,114,136,0,0,0,144,1,0,
+ 0,115,2,0,0,0,10,2,114,18,0,0,0,99,1,0,
+ 0,0,0,0,0,0,0,0,0,0,3,0,0,0,67,0,
+ 0,0,115,32,0,0,0,124,0,106,0,100,1,117,0,114,
+ 13,124,0,106,1,160,2,100,2,161,1,100,3,25,0,83,
+ 0,124,0,106,1,83,0,41,4,122,32,84,104,101,32,110,
+ 97,109,101,32,111,102,32,116,104,101,32,109,111,100,117,108,
+ 101,39,115,32,112,97,114,101,110,116,46,78,218,1,46,114,
+ 26,0,0,0,41,3,114,130,0,0,0,114,21,0,0,0,
+ 218,10,114,112,97,114,116,105,116,105,111,110,114,53,0,0,
0,114,5,0,0,0,114,5,0,0,0,114,6,0,0,0,
- 114,136,0,0,0,144,1,0,0,115,2,0,0,0,10,2,
- 114,18,0,0,0,99,1,0,0,0,0,0,0,0,0,0,
- 0,0,1,0,0,0,3,0,0,0,67,0,0,0,115,32,
- 0,0,0,124,0,106,0,100,1,117,0,114,13,124,0,106,
- 1,160,2,100,2,161,1,100,3,25,0,83,0,124,0,106,
- 1,83,0,41,4,122,32,84,104,101,32,110,97,109,101,32,
- 111,102,32,116,104,101,32,109,111,100,117,108,101,39,115,32,
- 112,97,114,101,110,116,46,78,218,1,46,114,26,0,0,0,
- 41,3,114,130,0,0,0,114,21,0,0,0,218,10,114,112,
- 97,114,116,105,116,105,111,110,114,53,0,0,0,114,5,0,
- 0,0,114,5,0,0,0,114,6,0,0,0,218,6,112,97,
- 114,101,110,116,148,1,0,0,115,6,0,0,0,10,3,16,
- 1,6,2,114,18,0,0,0,122,17,77,111,100,117,108,101,
- 83,112,101,99,46,112,97,114,101,110,116,99,1,0,0,0,
- 0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,
+ 218,6,112,97,114,101,110,116,148,1,0,0,115,6,0,0,
+ 0,10,3,16,1,6,2,114,18,0,0,0,122,17,77,111,
+ 100,117,108,101,83,112,101,99,46,112,97,114,101,110,116,99,
+ 1,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,
67,0,0,0,115,6,0,0,0,124,0,106,0,83,0,114,
0,0,0,0,41,1,114,131,0,0,0,114,53,0,0,0,
114,5,0,0,0,114,5,0,0,0,114,6,0,0,0,114,
137,0,0,0,156,1,0,0,115,2,0,0,0,6,2,114,
18,0,0,0,122,23,77,111,100,117,108,101,83,112,101,99,
46,104,97,115,95,108,111,99,97,116,105,111,110,99,2,0,
- 0,0,0,0,0,0,0,0,0,0,2,0,0,0,2,0,
- 0,0,67,0,0,0,115,14,0,0,0,116,0,124,1,131,
- 1,124,0,95,1,100,0,83,0,114,0,0,0,0,41,2,
- 218,4,98,111,111,108,114,131,0,0,0,41,2,114,34,0,
- 0,0,218,5,118,97,108,117,101,114,5,0,0,0,114,5,
- 0,0,0,114,6,0,0,0,114,137,0,0,0,160,1,0,
- 0,115,2,0,0,0,14,2,114,18,0,0,0,41,12,114,
- 9,0,0,0,114,8,0,0,0,114,1,0,0,0,114,10,
- 0,0,0,114,35,0,0,0,114,54,0,0,0,114,139,0,
- 0,0,218,8,112,114,111,112,101,114,116,121,114,136,0,0,
- 0,218,6,115,101,116,116,101,114,114,144,0,0,0,114,137,
- 0,0,0,114,5,0,0,0,114,5,0,0,0,114,5,0,
- 0,0,114,6,0,0,0,114,126,0,0,0,64,1,0,0,
- 115,34,0,0,0,8,0,4,1,4,36,2,1,12,255,8,
- 12,8,10,2,12,10,1,4,8,10,1,2,3,10,1,2,
- 7,10,1,4,3,14,1,114,18,0,0,0,114,126,0,0,
- 0,169,2,114,127,0,0,0,114,129,0,0,0,99,2,0,
- 0,0,0,0,0,0,2,0,0,0,6,0,0,0,8,0,
- 0,0,67,0,0,0,115,152,0,0,0,116,0,124,1,100,
- 1,131,2,114,37,116,1,100,2,117,0,114,11,116,2,130,
- 1,116,1,106,3,125,4,124,3,100,2,117,0,114,24,124,
- 4,124,0,124,1,100,3,141,2,83,0,124,3,114,28,103,
- 0,110,1,100,2,125,5,124,4,124,0,124,1,124,5,100,
- 4,141,3,83,0,124,3,100,2,117,0,114,67,116,0,124,
- 1,100,5,131,2,114,65,9,0,124,1,160,4,124,0,161,
- 1,125,3,110,14,35,0,4,0,116,5,121,75,1,0,1,
- 0,1,0,100,2,125,3,89,0,110,3,37,0,100,6,125,
- 3,116,6,124,0,124,1,124,2,124,3,100,7,141,4,83,
- 0,119,0,41,8,122,53,82,101,116,117,114,110,32,97,32,
- 109,111,100,117,108,101,32,115,112,101,99,32,98,97,115,101,
- 100,32,111,110,32,118,97,114,105,111,117,115,32,108,111,97,
- 100,101,114,32,109,101,116,104,111,100,115,46,90,12,103,101,
- 116,95,102,105,108,101,110,97,109,101,78,41,1,114,123,0,
- 0,0,41,2,114,123,0,0,0,114,130,0,0,0,114,129,
- 0,0,0,70,114,149,0,0,0,41,7,114,11,0,0,0,
- 114,140,0,0,0,114,141,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,114,129,0,0,0,114,88,0,0,0,114,126,0,
- 0,0,41,6,114,21,0,0,0,114,123,0,0,0,114,127,
- 0,0,0,114,129,0,0,0,114,150,0,0,0,90,6,115,
- 101,97,114,99,104,114,5,0,0,0,114,5,0,0,0,114,
- 6,0,0,0,114,105,0,0,0,165,1,0,0,115,42,0,
- 0,0,10,2,8,1,4,1,6,1,8,2,12,1,12,1,
- 6,1,2,1,6,255,8,3,10,1,2,1,12,1,2,128,
- 12,1,8,1,2,128,4,3,16,2,2,250,115,15,0,0,
- 0,175,5,53,0,181,9,65,0,7,193,11,1,65,0,7,
- 114,105,0,0,0,99,3,0,0,0,0,0,0,0,0,0,
- 0,0,8,0,0,0,8,0,0,0,67,0,0,0,115,50,
- 1,0,0,9,0,124,0,106,0,125,3,110,10,35,0,4,
- 0,116,1,121,152,1,0,1,0,1,0,89,0,110,7,37,
- 0,124,3,100,0,117,1,114,21,124,3,83,0,124,0,106,
- 2,125,4,124,1,100,0,117,0,114,43,9,0,124,0,106,
- 3,125,1,110,10,35,0,4,0,116,1,121,151,1,0,1,
- 0,1,0,89,0,110,1,37,0,9,0,124,0,106,4,125,
- 5,110,12,35,0,4,0,116,1,121,150,1,0,1,0,1,
- 0,100,0,125,5,89,0,110,1,37,0,124,2,100,0,117,
- 0,114,87,124,5,100,0,117,0,114,85,9,0,124,1,106,
- 5,125,2,110,14,35,0,4,0,116,1,121,149,1,0,1,
- 0,1,0,100,0,125,2,89,0,110,3,37,0,124,5,125,
- 2,9,0,124,0,106,6,125,6,110,12,35,0,4,0,116,
- 1,121,148,1,0,1,0,1,0,100,0,125,6,89,0,110,
- 1,37,0,9,0,116,7,124,0,106,8,131,1,125,7,110,
- 12,35,0,4,0,116,1,121,147,1,0,1,0,1,0,100,
- 0,125,7,89,0,110,1,37,0,116,9,124,4,124,1,124,
- 2,100,1,141,3,125,3,124,5,100,0,117,0,114,136,100,
- 2,110,1,100,3,124,3,95,10,124,6,124,3,95,11,124,
- 7,124,3,95,12,124,3,83,0,119,0,119,0,119,0,119,
- 0,119,0,119,0,41,4,78,169,1,114,127,0,0,0,70,
- 84,41,13,114,114,0,0,0,114,2,0,0,0,114,9,0,
- 0,0,114,113,0,0,0,114,122,0,0,0,218,7,95,79,
- 82,73,71,73,78,218,10,95,95,99,97,99,104,101,100,95,
- 95,218,4,108,105,115,116,218,8,95,95,112,97,116,104,95,
- 95,114,126,0,0,0,114,131,0,0,0,114,136,0,0,0,
- 114,130,0,0,0,41,8,114,111,0,0,0,114,123,0,0,
- 0,114,127,0,0,0,114,110,0,0,0,114,21,0,0,0,
- 90,8,108,111,99,97,116,105,111,110,114,136,0,0,0,114,
- 130,0,0,0,114,5,0,0,0,114,5,0,0,0,114,6,
- 0,0,0,218,17,95,115,112,101,99,95,102,114,111,109,95,
- 109,111,100,117,108,101,191,1,0,0,115,108,0,0,0,2,
- 2,8,1,2,128,12,1,4,1,2,128,8,2,4,1,6,
- 2,8,1,2,1,8,1,2,128,12,1,4,2,2,128,2,
- 1,8,1,2,128,12,1,8,1,2,128,8,1,8,1,2,
- 1,8,1,2,128,12,1,8,1,2,128,4,2,2,1,8,
- 1,2,128,12,1,8,1,2,128,2,1,12,1,2,128,12,
- 1,8,1,2,128,14,2,18,1,6,1,6,1,4,1,2,
- 249,2,252,2,250,2,250,2,251,2,246,115,93,0,0,0,
- 129,3,5,0,133,7,14,7,157,3,33,0,161,7,42,7,
- 172,3,48,0,176,9,59,7,193,5,3,65,9,0,193,9,
- 9,65,20,7,193,24,3,65,28,0,193,28,9,65,39,7,
- 193,41,5,65,47,0,193,47,9,65,58,7,194,19,1,65,
- 58,7,194,20,1,65,39,7,194,21,1,65,20,7,194,22,
- 1,59,7,194,23,1,42,7,194,24,1,14,7,114,156,0,
- 0,0,70,169,1,218,8,111,118,101,114,114,105,100,101,99,
- 2,0,0,0,0,0,0,0,1,0,0,0,5,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,2,0,0,0,67,0,
+ 0,0,115,14,0,0,0,116,0,124,1,131,1,124,0,95,
+ 1,100,0,83,0,114,0,0,0,0,41,2,218,4,98,111,
+ 111,108,114,131,0,0,0,41,2,114,34,0,0,0,218,5,
+ 118,97,108,117,101,114,5,0,0,0,114,5,0,0,0,114,
+ 6,0,0,0,114,137,0,0,0,160,1,0,0,115,2,0,
+ 0,0,14,2,114,18,0,0,0,41,12,114,9,0,0,0,
+ 114,8,0,0,0,114,1,0,0,0,114,10,0,0,0,114,
+ 35,0,0,0,114,54,0,0,0,114,139,0,0,0,218,8,
+ 112,114,111,112,101,114,116,121,114,136,0,0,0,218,6,115,
+ 101,116,116,101,114,114,144,0,0,0,114,137,0,0,0,114,
+ 5,0,0,0,114,5,0,0,0,114,5,0,0,0,114,6,
+ 0,0,0,114,126,0,0,0,64,1,0,0,115,34,0,0,
+ 0,8,0,4,1,4,36,2,1,12,255,8,12,8,10,2,
+ 12,10,1,4,8,10,1,2,3,10,1,2,7,10,1,4,
+ 3,14,1,114,18,0,0,0,114,126,0,0,0,169,2,114,
+ 127,0,0,0,114,129,0,0,0,99,2,0,0,0,0,0,
+ 0,0,2,0,0,0,8,0,0,0,67,0,0,0,115,152,
+ 0,0,0,116,0,124,1,100,1,131,2,114,37,116,1,100,
+ 2,117,0,114,11,116,2,130,1,116,1,106,3,125,4,124,
+ 3,100,2,117,0,114,24,124,4,124,0,124,1,100,3,141,
+ 2,83,0,124,3,114,28,103,0,110,1,100,2,125,5,124,
+ 4,124,0,124,1,124,5,100,4,141,3,83,0,124,3,100,
+ 2,117,0,114,67,116,0,124,1,100,5,131,2,114,65,9,
+ 0,124,1,160,4,124,0,161,1,125,3,110,14,35,0,4,
+ 0,116,5,121,75,1,0,1,0,1,0,100,2,125,3,89,
+ 0,110,3,37,0,100,6,125,3,116,6,124,0,124,1,124,
+ 2,124,3,100,7,141,4,83,0,119,0,41,8,122,53,82,
+ 101,116,117,114,110,32,97,32,109,111,100,117,108,101,32,115,
+ 112,101,99,32,98,97,115,101,100,32,111,110,32,118,97,114,
+ 105,111,117,115,32,108,111,97,100,101,114,32,109,101,116,104,
+ 111,100,115,46,90,12,103,101,116,95,102,105,108,101,110,97,
+ 109,101,78,41,1,114,123,0,0,0,41,2,114,123,0,0,
+ 0,114,130,0,0,0,114,129,0,0,0,70,114,149,0,0,
+ 0,41,7,114,11,0,0,0,114,140,0,0,0,114,141,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,114,129,0,0,0,
+ 114,88,0,0,0,114,126,0,0,0,41,6,114,21,0,0,
+ 0,114,123,0,0,0,114,127,0,0,0,114,129,0,0,0,
+ 114,150,0,0,0,90,6,115,101,97,114,99,104,114,5,0,
+ 0,0,114,5,0,0,0,114,6,0,0,0,114,105,0,0,
+ 0,165,1,0,0,115,42,0,0,0,10,2,8,1,4,1,
+ 6,1,8,2,12,1,12,1,6,1,2,1,6,255,8,3,
+ 10,1,2,1,12,1,2,128,12,1,8,1,2,128,4,3,
+ 16,2,2,250,115,15,0,0,0,175,5,53,0,181,9,65,
+ 0,7,193,11,1,65,0,7,114,105,0,0,0,99,3,0,
+ 0,0,0,0,0,0,0,0,0,0,8,0,0,0,67,0,
+ 0,0,115,50,1,0,0,9,0,124,0,106,0,125,3,110,
+ 10,35,0,4,0,116,1,121,152,1,0,1,0,1,0,89,
+ 0,110,7,37,0,124,3,100,0,117,1,114,21,124,3,83,
+ 0,124,0,106,2,125,4,124,1,100,0,117,0,114,43,9,
+ 0,124,0,106,3,125,1,110,10,35,0,4,0,116,1,121,
+ 151,1,0,1,0,1,0,89,0,110,1,37,0,9,0,124,
+ 0,106,4,125,5,110,12,35,0,4,0,116,1,121,150,1,
+ 0,1,0,1,0,100,0,125,5,89,0,110,1,37,0,124,
+ 2,100,0,117,0,114,87,124,5,100,0,117,0,114,85,9,
+ 0,124,1,106,5,125,2,110,14,35,0,4,0,116,1,121,
+ 149,1,0,1,0,1,0,100,0,125,2,89,0,110,3,37,
+ 0,124,5,125,2,9,0,124,0,106,6,125,6,110,12,35,
+ 0,4,0,116,1,121,148,1,0,1,0,1,0,100,0,125,
+ 6,89,0,110,1,37,0,9,0,116,7,124,0,106,8,131,
+ 1,125,7,110,12,35,0,4,0,116,1,121,147,1,0,1,
+ 0,1,0,100,0,125,7,89,0,110,1,37,0,116,9,124,
+ 4,124,1,124,2,100,1,141,3,125,3,124,5,100,0,117,
+ 0,114,136,100,2,110,1,100,3,124,3,95,10,124,6,124,
+ 3,95,11,124,7,124,3,95,12,124,3,83,0,119,0,119,
+ 0,119,0,119,0,119,0,119,0,41,4,78,169,1,114,127,
+ 0,0,0,70,84,41,13,114,114,0,0,0,114,2,0,0,
+ 0,114,9,0,0,0,114,113,0,0,0,114,122,0,0,0,
+ 218,7,95,79,82,73,71,73,78,218,10,95,95,99,97,99,
+ 104,101,100,95,95,218,4,108,105,115,116,218,8,95,95,112,
+ 97,116,104,95,95,114,126,0,0,0,114,131,0,0,0,114,
+ 136,0,0,0,114,130,0,0,0,41,8,114,111,0,0,0,
+ 114,123,0,0,0,114,127,0,0,0,114,110,0,0,0,114,
+ 21,0,0,0,90,8,108,111,99,97,116,105,111,110,114,136,
+ 0,0,0,114,130,0,0,0,114,5,0,0,0,114,5,0,
+ 0,0,114,6,0,0,0,218,17,95,115,112,101,99,95,102,
+ 114,111,109,95,109,111,100,117,108,101,191,1,0,0,115,108,
+ 0,0,0,2,2,8,1,2,128,12,1,4,1,2,128,8,
+ 2,4,1,6,2,8,1,2,1,8,1,2,128,12,1,4,
+ 2,2,128,2,1,8,1,2,128,12,1,8,1,2,128,8,
+ 1,8,1,2,1,8,1,2,128,12,1,8,1,2,128,4,
+ 2,2,1,8,1,2,128,12,1,8,1,2,128,2,1,12,
+ 1,2,128,12,1,8,1,2,128,14,2,18,1,6,1,6,
+ 1,4,1,2,249,2,252,2,250,2,250,2,251,2,246,115,
+ 93,0,0,0,129,3,5,0,133,7,14,7,157,3,33,0,
+ 161,7,42,7,172,3,48,0,176,9,59,7,193,5,3,65,
+ 9,0,193,9,9,65,20,7,193,24,3,65,28,0,193,28,
+ 9,65,39,7,193,41,5,65,47,0,193,47,9,65,58,7,
+ 194,19,1,65,58,7,194,20,1,65,39,7,194,21,1,65,
+ 20,7,194,22,1,59,7,194,23,1,42,7,194,24,1,14,
+ 7,114,156,0,0,0,70,169,1,218,8,111,118,101,114,114,
+ 105,100,101,99,2,0,0,0,0,0,0,0,1,0,0,0,
8,0,0,0,67,0,0,0,115,204,1,0,0,124,2,115,
10,116,0,124,1,100,1,100,0,131,3,100,0,117,0,114,
26,9,0,124,0,106,1,124,1,95,2,110,10,35,0,4,
@@ -937,98 +926,97 @@ const unsigned char _Py_M__importlib_bootstrap[] = {
195,32,1,66,59,7,195,33,1,66,30,7,195,34,1,65,
63,7,195,35,1,65,48,7,195,36,1,65,22,7,195,37,
1,25,7,114,162,0,0,0,99,1,0,0,0,0,0,0,
- 0,0,0,0,0,2,0,0,0,3,0,0,0,67,0,0,
- 0,115,82,0,0,0,100,1,125,1,116,0,124,0,106,1,
- 100,2,131,2,114,15,124,0,106,1,160,2,124,0,161,1,
- 125,1,110,10,116,0,124,0,106,1,100,3,131,2,114,25,
- 116,3,100,4,131,1,130,1,124,1,100,1,117,0,114,34,
- 116,4,124,0,106,5,131,1,125,1,116,6,124,0,124,1,
- 131,2,1,0,124,1,83,0,41,5,122,43,67,114,101,97,
- 116,101,32,97,32,109,111,100,117,108,101,32,98,97,115,101,
- 100,32,111,110,32,116,104,101,32,112,114,111,118,105,100,101,
- 100,32,115,112,101,99,46,78,218,13,99,114,101,97,116,101,
- 95,109,111,100,117,108,101,218,11,101,120,101,99,95,109,111,
- 100,117,108,101,122,66,108,111,97,100,101,114,115,32,116,104,
- 97,116,32,100,101,102,105,110,101,32,101,120,101,99,95,109,
- 111,100,117,108,101,40,41,32,109,117,115,116,32,97,108,115,
- 111,32,100,101,102,105,110,101,32,99,114,101,97,116,101,95,
- 109,111,100,117,108,101,40,41,41,7,114,11,0,0,0,114,
- 123,0,0,0,114,163,0,0,0,114,88,0,0,0,114,22,
- 0,0,0,114,21,0,0,0,114,162,0,0,0,169,2,114,
- 110,0,0,0,114,111,0,0,0,114,5,0,0,0,114,5,
- 0,0,0,114,6,0,0,0,218,16,109,111,100,117,108,101,
- 95,102,114,111,109,95,115,112,101,99,52,2,0,0,115,18,
- 0,0,0,4,3,12,1,14,3,12,1,8,1,8,2,10,
- 1,10,1,4,1,114,18,0,0,0,114,166,0,0,0,99,
- 1,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,
- 4,0,0,0,67,0,0,0,115,100,0,0,0,124,0,106,
- 0,100,1,117,0,114,7,100,2,110,2,124,0,106,0,125,
- 1,124,0,106,1,100,1,117,0,114,32,124,0,106,2,100,
- 1,117,0,114,25,100,3,160,3,124,1,161,1,83,0,100,
- 4,160,3,124,1,124,0,106,2,161,2,83,0,124,0,106,
- 4,114,42,100,5,160,3,124,1,124,0,106,1,161,2,83,
- 0,100,6,160,3,124,0,106,0,124,0,106,1,161,2,83,
- 0,41,7,122,38,82,101,116,117,114,110,32,116,104,101,32,
- 114,101,112,114,32,116,111,32,117,115,101,32,102,111,114,32,
- 116,104,101,32,109,111,100,117,108,101,46,78,114,116,0,0,
- 0,114,117,0,0,0,114,118,0,0,0,114,119,0,0,0,
- 250,18,60,109,111,100,117,108,101,32,123,33,114,125,32,40,
- 123,125,41,62,41,5,114,21,0,0,0,114,127,0,0,0,
- 114,123,0,0,0,114,51,0,0,0,114,137,0,0,0,41,
- 2,114,110,0,0,0,114,21,0,0,0,114,5,0,0,0,
- 114,5,0,0,0,114,6,0,0,0,114,120,0,0,0,69,
- 2,0,0,115,16,0,0,0,20,3,10,1,10,1,10,1,
- 14,2,6,2,14,1,16,2,114,18,0,0,0,114,120,0,
- 0,0,99,2,0,0,0,0,0,0,0,0,0,0,0,4,
- 0,0,0,10,0,0,0,67,0,0,0,115,32,1,0,0,
- 124,0,106,0,125,2,116,1,124,2,131,1,53,0,1,0,
- 116,2,106,3,160,4,124,2,161,1,124,1,117,1,114,27,
- 100,1,160,5,124,2,161,1,125,3,116,6,124,3,124,2,
- 100,2,141,2,130,1,9,0,124,0,106,7,100,3,117,0,
- 114,53,124,0,106,8,100,3,117,0,114,45,116,6,100,4,
- 124,0,106,0,100,2,141,2,130,1,116,9,124,0,124,1,
- 100,5,100,6,141,3,1,0,110,40,116,9,124,0,124,1,
- 100,5,100,6,141,3,1,0,116,10,124,0,106,7,100,7,
- 131,2,115,87,116,11,124,0,106,7,131,1,155,0,100,8,
- 157,2,125,3,116,12,160,13,124,3,116,14,161,2,1,0,
- 124,0,106,7,160,15,124,2,161,1,1,0,110,6,124,0,
- 106,7,160,16,124,1,161,1,1,0,116,2,106,3,160,17,
- 124,0,106,0,161,1,125,1,124,1,116,2,106,3,124,0,
- 106,0,60,0,110,16,35,0,116,2,106,3,160,17,124,0,
- 106,0,161,1,125,1,124,1,116,2,106,3,124,0,106,0,
- 60,0,119,0,37,0,9,0,100,3,4,0,4,0,131,3,
- 1,0,124,1,83,0,35,0,49,0,115,136,119,4,37,0,
- 1,0,1,0,1,0,89,0,1,0,1,0,124,1,83,0,
- 41,9,122,70,69,120,101,99,117,116,101,32,116,104,101,32,
- 115,112,101,99,39,115,32,115,112,101,99,105,102,105,101,100,
- 32,109,111,100,117,108,101,32,105,110,32,97,110,32,101,120,
- 105,115,116,105,110,103,32,109,111,100,117,108,101,39,115,32,
- 110,97,109,101,115,112,97,99,101,46,122,30,109,111,100,117,
- 108,101,32,123,33,114,125,32,110,111,116,32,105,110,32,115,
- 121,115,46,109,111,100,117,108,101,115,114,20,0,0,0,78,
- 250,14,109,105,115,115,105,110,103,32,108,111,97,100,101,114,
- 84,114,157,0,0,0,114,164,0,0,0,250,55,46,101,120,
- 101,99,95,109,111,100,117,108,101,40,41,32,110,111,116,32,
- 102,111,117,110,100,59,32,102,97,108,108,105,110,103,32,98,
- 97,99,107,32,116,111,32,108,111,97,100,95,109,111,100,117,
- 108,101,40,41,41,18,114,21,0,0,0,114,58,0,0,0,
- 114,19,0,0,0,114,106,0,0,0,114,39,0,0,0,114,
- 51,0,0,0,114,88,0,0,0,114,123,0,0,0,114,130,
- 0,0,0,114,162,0,0,0,114,11,0,0,0,114,7,0,
- 0,0,114,102,0,0,0,114,103,0,0,0,218,13,73,109,
- 112,111,114,116,87,97,114,110,105,110,103,218,11,108,111,97,
- 100,95,109,111,100,117,108,101,114,164,0,0,0,218,3,112,
- 111,112,41,4,114,110,0,0,0,114,111,0,0,0,114,21,
- 0,0,0,114,109,0,0,0,114,5,0,0,0,114,5,0,
- 0,0,114,6,0,0,0,114,107,0,0,0,86,2,0,0,
- 115,50,0,0,0,6,2,10,1,16,1,10,1,12,1,2,
- 1,10,1,10,1,14,1,16,2,14,2,12,1,16,1,12,
- 2,14,1,12,2,14,4,14,1,2,128,14,255,18,1,10,
- 233,4,24,22,128,4,0,115,41,0,0,0,135,20,66,3,
- 3,156,65,1,65,43,2,193,29,14,66,3,3,193,43,15,
- 65,58,9,193,58,1,66,3,3,194,3,4,66,7,11,194,
- 8,3,66,7,11,114,107,0,0,0,99,1,0,0,0,0,
- 0,0,0,0,0,0,0,2,0,0,0,8,0,0,0,67,
+ 0,0,0,0,0,3,0,0,0,67,0,0,0,115,82,0,
+ 0,0,100,1,125,1,116,0,124,0,106,1,100,2,131,2,
+ 114,15,124,0,106,1,160,2,124,0,161,1,125,1,110,10,
+ 116,0,124,0,106,1,100,3,131,2,114,25,116,3,100,4,
+ 131,1,130,1,124,1,100,1,117,0,114,34,116,4,124,0,
+ 106,5,131,1,125,1,116,6,124,0,124,1,131,2,1,0,
+ 124,1,83,0,41,5,122,43,67,114,101,97,116,101,32,97,
+ 32,109,111,100,117,108,101,32,98,97,115,101,100,32,111,110,
+ 32,116,104,101,32,112,114,111,118,105,100,101,100,32,115,112,
+ 101,99,46,78,218,13,99,114,101,97,116,101,95,109,111,100,
+ 117,108,101,218,11,101,120,101,99,95,109,111,100,117,108,101,
+ 122,66,108,111,97,100,101,114,115,32,116,104,97,116,32,100,
+ 101,102,105,110,101,32,101,120,101,99,95,109,111,100,117,108,
+ 101,40,41,32,109,117,115,116,32,97,108,115,111,32,100,101,
+ 102,105,110,101,32,99,114,101,97,116,101,95,109,111,100,117,
+ 108,101,40,41,41,7,114,11,0,0,0,114,123,0,0,0,
+ 114,163,0,0,0,114,88,0,0,0,114,22,0,0,0,114,
+ 21,0,0,0,114,162,0,0,0,169,2,114,110,0,0,0,
+ 114,111,0,0,0,114,5,0,0,0,114,5,0,0,0,114,
+ 6,0,0,0,218,16,109,111,100,117,108,101,95,102,114,111,
+ 109,95,115,112,101,99,52,2,0,0,115,18,0,0,0,4,
+ 3,12,1,14,3,12,1,8,1,8,2,10,1,10,1,4,
+ 1,114,18,0,0,0,114,166,0,0,0,99,1,0,0,0,
+ 0,0,0,0,0,0,0,0,4,0,0,0,67,0,0,0,
+ 115,100,0,0,0,124,0,106,0,100,1,117,0,114,7,100,
+ 2,110,2,124,0,106,0,125,1,124,0,106,1,100,1,117,
+ 0,114,32,124,0,106,2,100,1,117,0,114,25,100,3,160,
+ 3,124,1,161,1,83,0,100,4,160,3,124,1,124,0,106,
+ 2,161,2,83,0,124,0,106,4,114,42,100,5,160,3,124,
+ 1,124,0,106,1,161,2,83,0,100,6,160,3,124,0,106,
+ 0,124,0,106,1,161,2,83,0,41,7,122,38,82,101,116,
+ 117,114,110,32,116,104,101,32,114,101,112,114,32,116,111,32,
+ 117,115,101,32,102,111,114,32,116,104,101,32,109,111,100,117,
+ 108,101,46,78,114,116,0,0,0,114,117,0,0,0,114,118,
+ 0,0,0,114,119,0,0,0,250,18,60,109,111,100,117,108,
+ 101,32,123,33,114,125,32,40,123,125,41,62,41,5,114,21,
+ 0,0,0,114,127,0,0,0,114,123,0,0,0,114,51,0,
+ 0,0,114,137,0,0,0,41,2,114,110,0,0,0,114,21,
+ 0,0,0,114,5,0,0,0,114,5,0,0,0,114,6,0,
+ 0,0,114,120,0,0,0,69,2,0,0,115,16,0,0,0,
+ 20,3,10,1,10,1,10,1,14,2,6,2,14,1,16,2,
+ 114,18,0,0,0,114,120,0,0,0,99,2,0,0,0,0,
+ 0,0,0,0,0,0,0,10,0,0,0,67,0,0,0,115,
+ 32,1,0,0,124,0,106,0,125,2,116,1,124,2,131,1,
+ 53,0,1,0,116,2,106,3,160,4,124,2,161,1,124,1,
+ 117,1,114,27,100,1,160,5,124,2,161,1,125,3,116,6,
+ 124,3,124,2,100,2,141,2,130,1,9,0,124,0,106,7,
+ 100,3,117,0,114,53,124,0,106,8,100,3,117,0,114,45,
+ 116,6,100,4,124,0,106,0,100,2,141,2,130,1,116,9,
+ 124,0,124,1,100,5,100,6,141,3,1,0,110,40,116,9,
+ 124,0,124,1,100,5,100,6,141,3,1,0,116,10,124,0,
+ 106,7,100,7,131,2,115,87,116,11,124,0,106,7,131,1,
+ 155,0,100,8,157,2,125,3,116,12,160,13,124,3,116,14,
+ 161,2,1,0,124,0,106,7,160,15,124,2,161,1,1,0,
+ 110,6,124,0,106,7,160,16,124,1,161,1,1,0,116,2,
+ 106,3,160,17,124,0,106,0,161,1,125,1,124,1,116,2,
+ 106,3,124,0,106,0,60,0,110,16,35,0,116,2,106,3,
+ 160,17,124,0,106,0,161,1,125,1,124,1,116,2,106,3,
+ 124,0,106,0,60,0,119,0,37,0,9,0,100,3,4,0,
+ 4,0,131,3,1,0,124,1,83,0,35,0,49,0,115,136,
+ 119,4,37,0,1,0,1,0,1,0,89,0,1,0,1,0,
+ 124,1,83,0,41,9,122,70,69,120,101,99,117,116,101,32,
+ 116,104,101,32,115,112,101,99,39,115,32,115,112,101,99,105,
+ 102,105,101,100,32,109,111,100,117,108,101,32,105,110,32,97,
+ 110,32,101,120,105,115,116,105,110,103,32,109,111,100,117,108,
+ 101,39,115,32,110,97,109,101,115,112,97,99,101,46,122,30,
+ 109,111,100,117,108,101,32,123,33,114,125,32,110,111,116,32,
+ 105,110,32,115,121,115,46,109,111,100,117,108,101,115,114,20,
+ 0,0,0,78,250,14,109,105,115,115,105,110,103,32,108,111,
+ 97,100,101,114,84,114,157,0,0,0,114,164,0,0,0,250,
+ 55,46,101,120,101,99,95,109,111,100,117,108,101,40,41,32,
+ 110,111,116,32,102,111,117,110,100,59,32,102,97,108,108,105,
+ 110,103,32,98,97,99,107,32,116,111,32,108,111,97,100,95,
+ 109,111,100,117,108,101,40,41,41,18,114,21,0,0,0,114,
+ 58,0,0,0,114,19,0,0,0,114,106,0,0,0,114,39,
+ 0,0,0,114,51,0,0,0,114,88,0,0,0,114,123,0,
+ 0,0,114,130,0,0,0,114,162,0,0,0,114,11,0,0,
+ 0,114,7,0,0,0,114,102,0,0,0,114,103,0,0,0,
+ 218,13,73,109,112,111,114,116,87,97,114,110,105,110,103,218,
+ 11,108,111,97,100,95,109,111,100,117,108,101,114,164,0,0,
+ 0,218,3,112,111,112,41,4,114,110,0,0,0,114,111,0,
+ 0,0,114,21,0,0,0,114,109,0,0,0,114,5,0,0,
+ 0,114,5,0,0,0,114,6,0,0,0,114,107,0,0,0,
+ 86,2,0,0,115,50,0,0,0,6,2,10,1,16,1,10,
+ 1,12,1,2,1,10,1,10,1,14,1,16,2,14,2,12,
+ 1,16,1,12,2,14,1,12,2,14,4,14,1,2,128,14,
+ 255,18,1,10,233,4,24,22,128,4,0,115,41,0,0,0,
+ 135,20,66,3,3,156,65,1,65,43,2,193,29,14,66,3,
+ 3,193,43,15,65,58,9,193,58,1,66,3,3,194,3,4,
+ 66,7,11,194,8,3,66,7,11,114,107,0,0,0,99,1,
+ 0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,67,
0,0,0,115,22,1,0,0,9,0,124,0,106,0,160,1,
124,0,106,2,161,1,1,0,110,25,35,0,1,0,1,0,
1,0,124,0,106,2,116,3,106,4,118,0,114,32,116,3,
@@ -1067,496 +1055,489 @@ const unsigned char _Py_M__importlib_bootstrap[] = {
7,193,54,3,65,59,0,193,59,7,66,5,7,194,8,1,
66,5,7,194,9,1,65,44,7,194,10,1,65,6,7,114,
173,0,0,0,99,1,0,0,0,0,0,0,0,0,0,0,
- 0,3,0,0,0,11,0,0,0,67,0,0,0,115,248,0,
- 0,0,124,0,106,0,100,0,117,1,114,29,116,1,124,0,
- 106,0,100,1,131,2,115,29,116,2,124,0,106,0,131,1,
- 155,0,100,2,157,2,125,1,116,3,160,4,124,1,116,5,
- 161,2,1,0,116,6,124,0,131,1,83,0,116,7,124,0,
- 131,1,125,2,100,3,124,0,95,8,9,0,124,2,116,9,
- 106,10,124,0,106,11,60,0,9,0,124,0,106,0,100,0,
- 117,0,114,62,124,0,106,12,100,0,117,0,114,61,116,13,
- 100,4,124,0,106,11,100,5,141,2,130,1,110,6,124,0,
- 106,0,160,14,124,2,161,1,1,0,110,22,35,0,1,0,
- 1,0,1,0,9,0,116,9,106,10,124,0,106,11,61,0,
- 130,0,35,0,4,0,116,15,121,123,1,0,1,0,1,0,
- 89,0,130,0,37,0,37,0,116,9,106,10,160,16,124,0,
- 106,11,161,1,125,2,124,2,116,9,106,10,124,0,106,11,
- 60,0,116,17,100,6,124,0,106,11,124,0,106,0,131,3,
- 1,0,100,7,124,0,95,8,124,2,83,0,35,0,100,7,
- 124,0,95,8,119,0,37,0,119,0,41,8,78,114,164,0,
- 0,0,114,169,0,0,0,84,114,168,0,0,0,114,20,0,
- 0,0,122,18,105,109,112,111,114,116,32,123,33,114,125,32,
- 35,32,123,33,114,125,70,41,18,114,123,0,0,0,114,11,
- 0,0,0,114,7,0,0,0,114,102,0,0,0,114,103,0,
- 0,0,114,170,0,0,0,114,173,0,0,0,114,166,0,0,
- 0,90,13,95,105,110,105,116,105,97,108,105,122,105,110,103,
- 114,19,0,0,0,114,106,0,0,0,114,21,0,0,0,114,
- 130,0,0,0,114,88,0,0,0,114,164,0,0,0,114,71,
- 0,0,0,114,172,0,0,0,114,84,0,0,0,41,3,114,
- 110,0,0,0,114,109,0,0,0,114,111,0,0,0,114,5,
- 0,0,0,114,5,0,0,0,114,6,0,0,0,218,14,95,
- 108,111,97,100,95,117,110,108,111,99,107,101,100,152,2,0,
- 0,115,66,0,0,0,10,2,12,2,16,1,12,2,8,1,
- 8,2,6,5,2,1,12,1,2,1,10,1,10,1,14,1,
- 2,255,12,4,4,128,6,1,2,1,10,1,2,3,2,128,
- 12,254,2,1,2,1,4,128,14,5,12,1,16,1,6,2,
- 4,2,2,128,10,254,2,245,115,64,0,0,0,165,6,65,
- 53,0,172,24,65,5,0,193,4,1,65,53,0,193,5,4,
- 65,26,7,193,10,5,65,16,6,193,15,1,65,26,7,193,
- 16,7,65,25,13,193,23,3,65,26,7,193,26,22,65,53,
- 0,193,53,5,65,58,7,193,59,1,65,25,13,114,174,0,
- 0,0,99,1,0,0,0,0,0,0,0,0,0,0,0,1,
- 0,0,0,9,0,0,0,67,0,0,0,115,58,0,0,0,
- 116,0,124,0,106,1,131,1,53,0,1,0,116,2,124,0,
- 131,1,2,0,100,1,4,0,4,0,131,3,1,0,83,0,
- 35,0,49,0,115,21,119,4,37,0,1,0,1,0,1,0,
- 89,0,1,0,1,0,100,1,83,0,41,2,122,191,82,101,
- 116,117,114,110,32,97,32,110,101,119,32,109,111,100,117,108,
- 101,32,111,98,106,101,99,116,44,32,108,111,97,100,101,100,
- 32,98,121,32,116,104,101,32,115,112,101,99,39,115,32,108,
- 111,97,100,101,114,46,10,10,32,32,32,32,84,104,101,32,
- 109,111,100,117,108,101,32,105,115,32,110,111,116,32,97,100,
- 100,101,100,32,116,111,32,105,116,115,32,112,97,114,101,110,
- 116,46,10,10,32,32,32,32,73,102,32,97,32,109,111,100,
- 117,108,101,32,105,115,32,97,108,114,101,97,100,121,32,105,
- 110,32,115,121,115,46,109,111,100,117,108,101,115,44,32,116,
- 104,97,116,32,101,120,105,115,116,105,110,103,32,109,111,100,
- 117,108,101,32,103,101,116,115,10,32,32,32,32,99,108,111,
- 98,98,101,114,101,100,46,10,10,32,32,32,32,78,41,3,
- 114,58,0,0,0,114,21,0,0,0,114,174,0,0,0,169,
- 1,114,110,0,0,0,114,5,0,0,0,114,5,0,0,0,
- 114,6,0,0,0,114,108,0,0,0,197,2,0,0,115,12,
- 0,0,0,12,9,6,1,12,255,2,1,22,128,4,0,115,
- 12,0,0,0,133,4,16,3,144,4,20,11,149,3,20,11,
- 114,108,0,0,0,99,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,4,0,0,0,64,0,0,0,115,140,
- 0,0,0,101,0,90,1,100,0,90,2,100,1,90,3,100,
- 2,90,4,101,5,100,3,100,4,132,0,131,1,90,6,101,
- 7,100,20,100,6,100,7,132,1,131,1,90,8,101,7,100,
- 21,100,8,100,9,132,1,131,1,90,9,101,5,100,10,100,
- 11,132,0,131,1,90,10,101,5,100,12,100,13,132,0,131,
- 1,90,11,101,7,101,12,100,14,100,15,132,0,131,1,131,
- 1,90,13,101,7,101,12,100,16,100,17,132,0,131,1,131,
- 1,90,14,101,7,101,12,100,18,100,19,132,0,131,1,131,
- 1,90,15,101,7,101,16,131,1,90,17,100,5,83,0,41,
- 22,218,15,66,117,105,108,116,105,110,73,109,112,111,114,116,
- 101,114,122,144,77,101,116,97,32,112,97,116,104,32,105,109,
- 112,111,114,116,32,102,111,114,32,98,117,105,108,116,45,105,
- 110,32,109,111,100,117,108,101,115,46,10,10,32,32,32,32,
- 65,108,108,32,109,101,116,104,111,100,115,32,97,114,101,32,
- 101,105,116,104,101,114,32,99,108,97,115,115,32,111,114,32,
- 115,116,97,116,105,99,32,109,101,116,104,111,100,115,32,116,
- 111,32,97,118,111,105,100,32,116,104,101,32,110,101,101,100,
- 32,116,111,10,32,32,32,32,105,110,115,116,97,110,116,105,
- 97,116,101,32,116,104,101,32,99,108,97,115,115,46,10,10,
- 32,32,32,32,122,8,98,117,105,108,116,45,105,110,99,1,
- 0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,5,
- 0,0,0,67,0,0,0,115,34,0,0,0,116,0,160,1,
- 100,1,116,2,161,2,1,0,100,2,124,0,106,3,155,2,
- 100,3,116,4,106,5,155,0,100,4,157,5,83,0,41,6,
- 250,115,82,101,116,117,114,110,32,114,101,112,114,32,102,111,
- 114,32,116,104,101,32,109,111,100,117,108,101,46,10,10,32,
- 32,32,32,32,32,32,32,84,104,101,32,109,101,116,104,111,
- 100,32,105,115,32,100,101,112,114,101,99,97,116,101,100,46,
- 32,32,84,104,101,32,105,109,112,111,114,116,32,109,97,99,
- 104,105,110,101,114,121,32,100,111,101,115,32,116,104,101,32,
- 106,111,98,32,105,116,115,101,108,102,46,10,10,32,32,32,
- 32,32,32,32,32,122,81,66,117,105,108,116,105,110,73,109,
- 112,111,114,116,101,114,46,109,111,100,117,108,101,95,114,101,
- 112,114,40,41,32,105,115,32,100,101,112,114,101,99,97,116,
- 101,100,32,97,110,100,32,115,108,97,116,101,100,32,102,111,
- 114,32,114,101,109,111,118,97,108,32,105,110,32,80,121,116,
- 104,111,110,32,51,46,49,50,122,8,60,109,111,100,117,108,
- 101,32,122,2,32,40,122,2,41,62,78,41,6,114,102,0,
- 0,0,114,103,0,0,0,114,104,0,0,0,114,9,0,0,
- 0,114,176,0,0,0,114,152,0,0,0,169,1,114,111,0,
- 0,0,114,5,0,0,0,114,5,0,0,0,114,6,0,0,
- 0,114,115,0,0,0,223,2,0,0,115,8,0,0,0,6,
- 7,2,1,4,255,22,2,114,18,0,0,0,122,27,66,117,
- 105,108,116,105,110,73,109,112,111,114,116,101,114,46,109,111,
- 100,117,108,101,95,114,101,112,114,78,99,4,0,0,0,0,
- 0,0,0,0,0,0,0,4,0,0,0,5,0,0,0,67,
- 0,0,0,115,42,0,0,0,124,2,100,0,117,1,114,6,
- 100,0,83,0,116,0,160,1,124,1,161,1,114,19,116,2,
- 124,1,124,0,124,0,106,3,100,1,141,3,83,0,100,0,
- 83,0,169,2,78,114,151,0,0,0,41,4,114,65,0,0,
- 0,90,10,105,115,95,98,117,105,108,116,105,110,114,105,0,
- 0,0,114,152,0,0,0,169,4,218,3,99,108,115,114,90,
- 0,0,0,218,4,112,97,116,104,218,6,116,97,114,103,101,
- 116,114,5,0,0,0,114,5,0,0,0,114,6,0,0,0,
- 218,9,102,105,110,100,95,115,112,101,99,234,2,0,0,115,
- 10,0,0,0,8,2,4,1,10,1,16,1,4,2,114,18,
- 0,0,0,122,25,66,117,105,108,116,105,110,73,109,112,111,
- 114,116,101,114,46,102,105,110,100,95,115,112,101,99,99,3,
- 0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,4,
- 0,0,0,67,0,0,0,115,42,0,0,0,116,0,160,1,
- 100,1,116,2,161,2,1,0,124,0,160,3,124,1,124,2,
- 161,2,125,3,124,3,100,2,117,1,114,19,124,3,106,4,
- 83,0,100,2,83,0,41,3,122,175,70,105,110,100,32,116,
- 104,101,32,98,117,105,108,116,45,105,110,32,109,111,100,117,
- 108,101,46,10,10,32,32,32,32,32,32,32,32,73,102,32,
- 39,112,97,116,104,39,32,105,115,32,101,118,101,114,32,115,
- 112,101,99,105,102,105,101,100,32,116,104,101,110,32,116,104,
- 101,32,115,101,97,114,99,104,32,105,115,32,99,111,110,115,
- 105,100,101,114,101,100,32,97,32,102,97,105,108,117,114,101,
- 46,10,10,32,32,32,32,32,32,32,32,84,104,105,115,32,
- 109,101,116,104,111,100,32,105,115,32,100,101,112,114,101,99,
- 97,116,101,100,46,32,32,85,115,101,32,102,105,110,100,95,
- 115,112,101,99,40,41,32,105,110,115,116,101,97,100,46,10,
- 10,32,32,32,32,32,32,32,32,122,106,66,117,105,108,116,
- 105,110,73,109,112,111,114,116,101,114,46,102,105,110,100,95,
- 109,111,100,117,108,101,40,41,32,105,115,32,100,101,112,114,
- 101,99,97,116,101,100,32,97,110,100,32,115,108,97,116,101,
- 100,32,102,111,114,32,114,101,109,111,118,97,108,32,105,110,
- 32,80,121,116,104,111,110,32,51,46,49,50,59,32,117,115,
- 101,32,102,105,110,100,95,115,112,101,99,40,41,32,105,110,
- 115,116,101,97,100,78,41,5,114,102,0,0,0,114,103,0,
- 0,0,114,104,0,0,0,114,184,0,0,0,114,123,0,0,
- 0,41,4,114,181,0,0,0,114,90,0,0,0,114,182,0,
- 0,0,114,110,0,0,0,114,5,0,0,0,114,5,0,0,
- 0,114,6,0,0,0,218,11,102,105,110,100,95,109,111,100,
- 117,108,101,243,2,0,0,115,10,0,0,0,6,9,2,2,
- 4,254,12,3,18,1,114,18,0,0,0,122,27,66,117,105,
- 108,116,105,110,73,109,112,111,114,116,101,114,46,102,105,110,
- 100,95,109,111,100,117,108,101,99,1,0,0,0,0,0,0,
- 0,0,0,0,0,1,0,0,0,4,0,0,0,67,0,0,
- 0,115,46,0,0,0,124,0,106,0,116,1,106,2,118,1,
- 114,17,116,3,100,1,160,4,124,0,106,0,161,1,124,0,
- 106,0,100,2,141,2,130,1,116,5,116,6,106,7,124,0,
- 131,2,83,0,41,4,122,24,67,114,101,97,116,101,32,97,
- 32,98,117,105,108,116,45,105,110,32,109,111,100,117,108,101,
- 114,86,0,0,0,114,20,0,0,0,78,41,8,114,21,0,
- 0,0,114,19,0,0,0,114,87,0,0,0,114,88,0,0,
- 0,114,51,0,0,0,114,75,0,0,0,114,65,0,0,0,
- 90,14,99,114,101,97,116,101,95,98,117,105,108,116,105,110,
- 114,175,0,0,0,114,5,0,0,0,114,5,0,0,0,114,
- 6,0,0,0,114,163,0,0,0,2,3,0,0,115,10,0,
- 0,0,12,3,12,1,4,1,6,255,12,2,114,18,0,0,
- 0,122,29,66,117,105,108,116,105,110,73,109,112,111,114,116,
- 101,114,46,99,114,101,97,116,101,95,109,111,100,117,108,101,
- 99,1,0,0,0,0,0,0,0,0,0,0,0,1,0,0,
- 0,3,0,0,0,67,0,0,0,115,16,0,0,0,116,0,
- 116,1,106,2,124,0,131,2,1,0,100,1,83,0,41,2,
- 122,22,69,120,101,99,32,97,32,98,117,105,108,116,45,105,
- 110,32,109,111,100,117,108,101,78,41,3,114,75,0,0,0,
- 114,65,0,0,0,90,12,101,120,101,99,95,98,117,105,108,
- 116,105,110,114,178,0,0,0,114,5,0,0,0,114,5,0,
- 0,0,114,6,0,0,0,114,164,0,0,0,10,3,0,0,
- 115,2,0,0,0,16,3,114,18,0,0,0,122,27,66,117,
- 105,108,116,105,110,73,109,112,111,114,116,101,114,46,101,120,
- 101,99,95,109,111,100,117,108,101,99,2,0,0,0,0,0,
- 0,0,0,0,0,0,2,0,0,0,1,0,0,0,67,0,
- 0,0,243,4,0,0,0,100,1,83,0,41,2,122,57,82,
- 101,116,117,114,110,32,78,111,110,101,32,97,115,32,98,117,
- 105,108,116,45,105,110,32,109,111,100,117,108,101,115,32,100,
- 111,32,110,111,116,32,104,97,118,101,32,99,111,100,101,32,
- 111,98,106,101,99,116,115,46,78,114,5,0,0,0,169,2,
- 114,181,0,0,0,114,90,0,0,0,114,5,0,0,0,114,
- 5,0,0,0,114,6,0,0,0,218,8,103,101,116,95,99,
- 111,100,101,15,3,0,0,243,2,0,0,0,4,4,114,18,
- 0,0,0,122,24,66,117,105,108,116,105,110,73,109,112,111,
- 114,116,101,114,46,103,101,116,95,99,111,100,101,99,2,0,
- 0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,
- 0,0,67,0,0,0,114,186,0,0,0,41,2,122,56,82,
- 101,116,117,114,110,32,78,111,110,101,32,97,115,32,98,117,
- 105,108,116,45,105,110,32,109,111,100,117,108,101,115,32,100,
- 111,32,110,111,116,32,104,97,118,101,32,115,111,117,114,99,
- 101,32,99,111,100,101,46,78,114,5,0,0,0,114,187,0,
- 0,0,114,5,0,0,0,114,5,0,0,0,114,6,0,0,
- 0,218,10,103,101,116,95,115,111,117,114,99,101,21,3,0,
- 0,114,189,0,0,0,114,18,0,0,0,122,26,66,117,105,
- 108,116,105,110,73,109,112,111,114,116,101,114,46,103,101,116,
- 95,115,111,117,114,99,101,99,2,0,0,0,0,0,0,0,
- 0,0,0,0,2,0,0,0,1,0,0,0,67,0,0,0,
- 114,186,0,0,0,41,3,122,52,82,101,116,117,114,110,32,
- 70,97,108,115,101,32,97,115,32,98,117,105,108,116,45,105,
- 110,32,109,111,100,117,108,101,115,32,97,114,101,32,110,101,
- 118,101,114,32,112,97,99,107,97,103,101,115,46,70,78,114,
- 5,0,0,0,114,187,0,0,0,114,5,0,0,0,114,5,
- 0,0,0,114,6,0,0,0,114,129,0,0,0,27,3,0,
- 0,114,189,0,0,0,114,18,0,0,0,122,26,66,117,105,
- 108,116,105,110,73,109,112,111,114,116,101,114,46,105,115,95,
- 112,97,99,107,97,103,101,169,2,78,78,114,0,0,0,0,
- 41,18,114,9,0,0,0,114,8,0,0,0,114,1,0,0,
- 0,114,10,0,0,0,114,152,0,0,0,218,12,115,116,97,
- 116,105,99,109,101,116,104,111,100,114,115,0,0,0,218,11,
- 99,108,97,115,115,109,101,116,104,111,100,114,184,0,0,0,
- 114,185,0,0,0,114,163,0,0,0,114,164,0,0,0,114,
- 96,0,0,0,114,188,0,0,0,114,190,0,0,0,114,129,
- 0,0,0,114,112,0,0,0,114,171,0,0,0,114,5,0,
- 0,0,114,5,0,0,0,114,5,0,0,0,114,6,0,0,
- 0,114,176,0,0,0,212,2,0,0,115,46,0,0,0,8,
- 0,4,2,4,7,2,2,10,1,2,10,12,1,2,8,12,
- 1,2,14,10,1,2,7,10,1,2,4,2,1,12,1,2,
- 4,2,1,12,1,2,4,2,1,12,1,12,4,114,18,0,
- 0,0,114,176,0,0,0,99,0,0,0,0,0,0,0,0,
+ 0,11,0,0,0,67,0,0,0,115,248,0,0,0,124,0,
+ 106,0,100,0,117,1,114,29,116,1,124,0,106,0,100,1,
+ 131,2,115,29,116,2,124,0,106,0,131,1,155,0,100,2,
+ 157,2,125,1,116,3,160,4,124,1,116,5,161,2,1,0,
+ 116,6,124,0,131,1,83,0,116,7,124,0,131,1,125,2,
+ 100,3,124,0,95,8,9,0,124,2,116,9,106,10,124,0,
+ 106,11,60,0,9,0,124,0,106,0,100,0,117,0,114,62,
+ 124,0,106,12,100,0,117,0,114,61,116,13,100,4,124,0,
+ 106,11,100,5,141,2,130,1,110,6,124,0,106,0,160,14,
+ 124,2,161,1,1,0,110,22,35,0,1,0,1,0,1,0,
+ 9,0,116,9,106,10,124,0,106,11,61,0,130,0,35,0,
+ 4,0,116,15,121,123,1,0,1,0,1,0,89,0,130,0,
+ 37,0,37,0,116,9,106,10,160,16,124,0,106,11,161,1,
+ 125,2,124,2,116,9,106,10,124,0,106,11,60,0,116,17,
+ 100,6,124,0,106,11,124,0,106,0,131,3,1,0,100,7,
+ 124,0,95,8,124,2,83,0,35,0,100,7,124,0,95,8,
+ 119,0,37,0,119,0,41,8,78,114,164,0,0,0,114,169,
+ 0,0,0,84,114,168,0,0,0,114,20,0,0,0,122,18,
+ 105,109,112,111,114,116,32,123,33,114,125,32,35,32,123,33,
+ 114,125,70,41,18,114,123,0,0,0,114,11,0,0,0,114,
+ 7,0,0,0,114,102,0,0,0,114,103,0,0,0,114,170,
+ 0,0,0,114,173,0,0,0,114,166,0,0,0,90,13,95,
+ 105,110,105,116,105,97,108,105,122,105,110,103,114,19,0,0,
+ 0,114,106,0,0,0,114,21,0,0,0,114,130,0,0,0,
+ 114,88,0,0,0,114,164,0,0,0,114,71,0,0,0,114,
+ 172,0,0,0,114,84,0,0,0,41,3,114,110,0,0,0,
+ 114,109,0,0,0,114,111,0,0,0,114,5,0,0,0,114,
+ 5,0,0,0,114,6,0,0,0,218,14,95,108,111,97,100,
+ 95,117,110,108,111,99,107,101,100,152,2,0,0,115,66,0,
+ 0,0,10,2,12,2,16,1,12,2,8,1,8,2,6,5,
+ 2,1,12,1,2,1,10,1,10,1,14,1,2,255,12,4,
+ 4,128,6,1,2,1,10,1,2,3,2,128,12,254,2,1,
+ 2,1,4,128,14,5,12,1,16,1,6,2,4,2,2,128,
+ 10,254,2,245,115,64,0,0,0,165,6,65,53,0,172,24,
+ 65,5,0,193,4,1,65,53,0,193,5,4,65,26,7,193,
+ 10,5,65,16,6,193,15,1,65,26,7,193,16,7,65,25,
+ 13,193,23,3,65,26,7,193,26,22,65,53,0,193,53,5,
+ 65,58,7,193,59,1,65,25,13,114,174,0,0,0,99,1,
+ 0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,67,
+ 0,0,0,115,58,0,0,0,116,0,124,0,106,1,131,1,
+ 53,0,1,0,116,2,124,0,131,1,2,0,100,1,4,0,
+ 4,0,131,3,1,0,83,0,35,0,49,0,115,21,119,4,
+ 37,0,1,0,1,0,1,0,89,0,1,0,1,0,100,1,
+ 83,0,41,2,122,191,82,101,116,117,114,110,32,97,32,110,
+ 101,119,32,109,111,100,117,108,101,32,111,98,106,101,99,116,
+ 44,32,108,111,97,100,101,100,32,98,121,32,116,104,101,32,
+ 115,112,101,99,39,115,32,108,111,97,100,101,114,46,10,10,
+ 32,32,32,32,84,104,101,32,109,111,100,117,108,101,32,105,
+ 115,32,110,111,116,32,97,100,100,101,100,32,116,111,32,105,
+ 116,115,32,112,97,114,101,110,116,46,10,10,32,32,32,32,
+ 73,102,32,97,32,109,111,100,117,108,101,32,105,115,32,97,
+ 108,114,101,97,100,121,32,105,110,32,115,121,115,46,109,111,
+ 100,117,108,101,115,44,32,116,104,97,116,32,101,120,105,115,
+ 116,105,110,103,32,109,111,100,117,108,101,32,103,101,116,115,
+ 10,32,32,32,32,99,108,111,98,98,101,114,101,100,46,10,
+ 10,32,32,32,32,78,41,3,114,58,0,0,0,114,21,0,
+ 0,0,114,174,0,0,0,169,1,114,110,0,0,0,114,5,
+ 0,0,0,114,5,0,0,0,114,6,0,0,0,114,108,0,
+ 0,0,197,2,0,0,115,10,0,0,0,12,9,6,1,14,
+ 255,22,128,4,0,115,12,0,0,0,133,4,16,3,144,4,
+ 20,11,149,3,20,11,114,108,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,144,0,0,0,101,0,90,1,100,0,90,2,100,1,90,
+ 115,140,0,0,0,101,0,90,1,100,0,90,2,100,1,90,
3,100,2,90,4,101,5,100,3,100,4,132,0,131,1,90,
- 6,101,7,100,22,100,6,100,7,132,1,131,1,90,8,101,
- 7,100,23,100,8,100,9,132,1,131,1,90,9,101,5,100,
+ 6,101,7,100,20,100,6,100,7,132,1,131,1,90,8,101,
+ 7,100,21,100,8,100,9,132,1,131,1,90,9,101,5,100,
10,100,11,132,0,131,1,90,10,101,5,100,12,100,13,132,
- 0,131,1,90,11,101,7,100,14,100,15,132,0,131,1,90,
- 12,101,7,101,13,100,16,100,17,132,0,131,1,131,1,90,
- 14,101,7,101,13,100,18,100,19,132,0,131,1,131,1,90,
- 15,101,7,101,13,100,20,100,21,132,0,131,1,131,1,90,
- 16,100,5,83,0,41,24,218,14,70,114,111,122,101,110,73,
- 109,112,111,114,116,101,114,122,142,77,101,116,97,32,112,97,
- 116,104,32,105,109,112,111,114,116,32,102,111,114,32,102,114,
- 111,122,101,110,32,109,111,100,117,108,101,115,46,10,10,32,
- 32,32,32,65,108,108,32,109,101,116,104,111,100,115,32,97,
- 114,101,32,101,105,116,104,101,114,32,99,108,97,115,115,32,
- 111,114,32,115,116,97,116,105,99,32,109,101,116,104,111,100,
- 115,32,116,111,32,97,118,111,105,100,32,116,104,101,32,110,
- 101,101,100,32,116,111,10,32,32,32,32,105,110,115,116,97,
- 110,116,105,97,116,101,32,116,104,101,32,99,108,97,115,115,
- 46,10,10,32,32,32,32,90,6,102,114,111,122,101,110,99,
- 1,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,
- 4,0,0,0,67,0,0,0,115,28,0,0,0,116,0,160,
- 1,100,1,116,2,161,2,1,0,100,2,160,3,124,0,106,
- 4,116,5,106,6,161,2,83,0,41,4,114,177,0,0,0,
- 122,80,70,114,111,122,101,110,73,109,112,111,114,116,101,114,
- 46,109,111,100,117,108,101,95,114,101,112,114,40,41,32,105,
- 115,32,100,101,112,114,101,99,97,116,101,100,32,97,110,100,
- 32,115,108,97,116,101,100,32,102,111,114,32,114,101,109,111,
- 118,97,108,32,105,110,32,80,121,116,104,111,110,32,51,46,
- 49,50,114,167,0,0,0,78,41,7,114,102,0,0,0,114,
- 103,0,0,0,114,104,0,0,0,114,51,0,0,0,114,9,
- 0,0,0,114,194,0,0,0,114,152,0,0,0,41,1,218,
- 1,109,114,5,0,0,0,114,5,0,0,0,114,6,0,0,
- 0,114,115,0,0,0,47,3,0,0,115,8,0,0,0,6,
- 7,2,1,4,255,16,2,114,18,0,0,0,122,26,70,114,
- 111,122,101,110,73,109,112,111,114,116,101,114,46,109,111,100,
- 117,108,101,95,114,101,112,114,78,99,4,0,0,0,0,0,
- 0,0,0,0,0,0,4,0,0,0,5,0,0,0,67,0,
- 0,0,115,30,0,0,0,116,0,160,1,124,1,161,1,114,
- 13,116,2,124,1,124,0,124,0,106,3,100,1,141,3,83,
- 0,100,0,83,0,114,179,0,0,0,41,4,114,65,0,0,
- 0,114,99,0,0,0,114,105,0,0,0,114,152,0,0,0,
- 114,180,0,0,0,114,5,0,0,0,114,5,0,0,0,114,
- 6,0,0,0,114,184,0,0,0,58,3,0,0,115,6,0,
- 0,0,10,2,16,1,4,2,114,18,0,0,0,122,24,70,
- 114,111,122,101,110,73,109,112,111,114,116,101,114,46,102,105,
- 110,100,95,115,112,101,99,99,3,0,0,0,0,0,0,0,
- 0,0,0,0,3,0,0,0,4,0,0,0,67,0,0,0,
- 115,30,0,0,0,116,0,160,1,100,1,116,2,161,2,1,
- 0,116,3,160,4,124,1,161,1,114,13,124,0,83,0,100,
- 2,83,0,41,3,122,93,70,105,110,100,32,97,32,102,114,
- 111,122,101,110,32,109,111,100,117,108,101,46,10,10,32,32,
- 32,32,32,32,32,32,84,104,105,115,32,109,101,116,104,111,
- 100,32,105,115,32,100,101,112,114,101,99,97,116,101,100,46,
- 32,32,85,115,101,32,102,105,110,100,95,115,112,101,99,40,
- 41,32,105,110,115,116,101,97,100,46,10,10,32,32,32,32,
- 32,32,32,32,122,105,70,114,111,122,101,110,73,109,112,111,
- 114,116,101,114,46,102,105,110,100,95,109,111,100,117,108,101,
+ 0,131,1,90,11,101,7,101,12,100,14,100,15,132,0,131,
+ 1,131,1,90,13,101,7,101,12,100,16,100,17,132,0,131,
+ 1,131,1,90,14,101,7,101,12,100,18,100,19,132,0,131,
+ 1,131,1,90,15,101,7,101,16,131,1,90,17,100,5,83,
+ 0,41,22,218,15,66,117,105,108,116,105,110,73,109,112,111,
+ 114,116,101,114,122,144,77,101,116,97,32,112,97,116,104,32,
+ 105,109,112,111,114,116,32,102,111,114,32,98,117,105,108,116,
+ 45,105,110,32,109,111,100,117,108,101,115,46,10,10,32,32,
+ 32,32,65,108,108,32,109,101,116,104,111,100,115,32,97,114,
+ 101,32,101,105,116,104,101,114,32,99,108,97,115,115,32,111,
+ 114,32,115,116,97,116,105,99,32,109,101,116,104,111,100,115,
+ 32,116,111,32,97,118,111,105,100,32,116,104,101,32,110,101,
+ 101,100,32,116,111,10,32,32,32,32,105,110,115,116,97,110,
+ 116,105,97,116,101,32,116,104,101,32,99,108,97,115,115,46,
+ 10,10,32,32,32,32,122,8,98,117,105,108,116,45,105,110,
+ 99,1,0,0,0,0,0,0,0,0,0,0,0,5,0,0,
+ 0,67,0,0,0,115,34,0,0,0,116,0,160,1,100,1,
+ 116,2,161,2,1,0,100,2,124,0,106,3,155,2,100,3,
+ 116,4,106,5,155,0,100,4,157,5,83,0,41,6,250,115,
+ 82,101,116,117,114,110,32,114,101,112,114,32,102,111,114,32,
+ 116,104,101,32,109,111,100,117,108,101,46,10,10,32,32,32,
+ 32,32,32,32,32,84,104,101,32,109,101,116,104,111,100,32,
+ 105,115,32,100,101,112,114,101,99,97,116,101,100,46,32,32,
+ 84,104,101,32,105,109,112,111,114,116,32,109,97,99,104,105,
+ 110,101,114,121,32,100,111,101,115,32,116,104,101,32,106,111,
+ 98,32,105,116,115,101,108,102,46,10,10,32,32,32,32,32,
+ 32,32,32,122,81,66,117,105,108,116,105,110,73,109,112,111,
+ 114,116,101,114,46,109,111,100,117,108,101,95,114,101,112,114,
40,41,32,105,115,32,100,101,112,114,101,99,97,116,101,100,
32,97,110,100,32,115,108,97,116,101,100,32,102,111,114,32,
114,101,109,111,118,97,108,32,105,110,32,80,121,116,104,111,
- 110,32,51,46,49,50,59,32,117,115,101,32,102,105,110,100,
- 95,115,112,101,99,40,41,32,105,110,115,116,101,97,100,78,
- 41,5,114,102,0,0,0,114,103,0,0,0,114,104,0,0,
- 0,114,65,0,0,0,114,99,0,0,0,41,3,114,181,0,
- 0,0,114,90,0,0,0,114,182,0,0,0,114,5,0,0,
- 0,114,5,0,0,0,114,6,0,0,0,114,185,0,0,0,
- 65,3,0,0,115,8,0,0,0,6,7,2,2,4,254,18,
- 3,114,18,0,0,0,122,26,70,114,111,122,101,110,73,109,
- 112,111,114,116,101,114,46,102,105,110,100,95,109,111,100,117,
- 108,101,99,1,0,0,0,0,0,0,0,0,0,0,0,1,
- 0,0,0,1,0,0,0,67,0,0,0,114,186,0,0,0,
- 41,2,122,42,85,115,101,32,100,101,102,97,117,108,116,32,
- 115,101,109,97,110,116,105,99,115,32,102,111,114,32,109,111,
- 100,117,108,101,32,99,114,101,97,116,105,111,110,46,78,114,
- 5,0,0,0,114,175,0,0,0,114,5,0,0,0,114,5,
- 0,0,0,114,6,0,0,0,114,163,0,0,0,77,3,0,
- 0,115,2,0,0,0,4,0,114,18,0,0,0,122,28,70,
- 114,111,122,101,110,73,109,112,111,114,116,101,114,46,99,114,
- 101,97,116,101,95,109,111,100,117,108,101,99,1,0,0,0,
- 0,0,0,0,0,0,0,0,3,0,0,0,4,0,0,0,
- 67,0,0,0,115,64,0,0,0,124,0,106,0,106,1,125,
- 1,116,2,160,3,124,1,161,1,115,18,116,4,100,1,160,
- 5,124,1,161,1,124,1,100,2,141,2,130,1,116,6,116,
- 2,106,7,124,1,131,2,125,2,116,8,124,2,124,0,106,
- 9,131,2,1,0,100,0,83,0,114,98,0,0,0,41,10,
- 114,114,0,0,0,114,21,0,0,0,114,65,0,0,0,114,
- 99,0,0,0,114,88,0,0,0,114,51,0,0,0,114,75,
- 0,0,0,218,17,103,101,116,95,102,114,111,122,101,110,95,
- 111,98,106,101,99,116,218,4,101,120,101,99,114,14,0,0,
- 0,41,3,114,111,0,0,0,114,21,0,0,0,218,4,99,
- 111,100,101,114,5,0,0,0,114,5,0,0,0,114,6,0,
- 0,0,114,164,0,0,0,81,3,0,0,115,14,0,0,0,
- 8,2,10,1,10,1,2,1,6,255,12,2,16,1,114,18,
- 0,0,0,122,26,70,114,111,122,101,110,73,109,112,111,114,
- 116,101,114,46,101,120,101,99,95,109,111,100,117,108,101,99,
- 2,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,
- 3,0,0,0,67,0,0,0,115,10,0,0,0,116,0,124,
- 0,124,1,131,2,83,0,41,2,122,95,76,111,97,100,32,
- 97,32,102,114,111,122,101,110,32,109,111,100,117,108,101,46,
- 10,10,32,32,32,32,32,32,32,32,84,104,105,115,32,109,
- 101,116,104,111,100,32,105,115,32,100,101,112,114,101,99,97,
- 116,101,100,46,32,32,85,115,101,32,101,120,101,99,95,109,
- 111,100,117,108,101,40,41,32,105,110,115,116,101,97,100,46,
- 10,10,32,32,32,32,32,32,32,32,78,41,1,114,112,0,
- 0,0,114,187,0,0,0,114,5,0,0,0,114,5,0,0,
- 0,114,6,0,0,0,114,171,0,0,0,90,3,0,0,115,
- 2,0,0,0,10,8,114,18,0,0,0,122,26,70,114,111,
- 122,101,110,73,109,112,111,114,116,101,114,46,108,111,97,100,
+ 110,32,51,46,49,50,122,8,60,109,111,100,117,108,101,32,
+ 122,2,32,40,122,2,41,62,78,41,6,114,102,0,0,0,
+ 114,103,0,0,0,114,104,0,0,0,114,9,0,0,0,114,
+ 176,0,0,0,114,152,0,0,0,169,1,114,111,0,0,0,
+ 114,5,0,0,0,114,5,0,0,0,114,6,0,0,0,114,
+ 115,0,0,0,223,2,0,0,115,8,0,0,0,6,7,2,
+ 1,4,255,22,2,114,18,0,0,0,122,27,66,117,105,108,
+ 116,105,110,73,109,112,111,114,116,101,114,46,109,111,100,117,
+ 108,101,95,114,101,112,114,78,99,4,0,0,0,0,0,0,
+ 0,0,0,0,0,5,0,0,0,67,0,0,0,115,42,0,
+ 0,0,124,2,100,0,117,1,114,6,100,0,83,0,116,0,
+ 160,1,124,1,161,1,114,19,116,2,124,1,124,0,124,0,
+ 106,3,100,1,141,3,83,0,100,0,83,0,169,2,78,114,
+ 151,0,0,0,41,4,114,65,0,0,0,90,10,105,115,95,
+ 98,117,105,108,116,105,110,114,105,0,0,0,114,152,0,0,
+ 0,169,4,218,3,99,108,115,114,90,0,0,0,218,4,112,
+ 97,116,104,218,6,116,97,114,103,101,116,114,5,0,0,0,
+ 114,5,0,0,0,114,6,0,0,0,218,9,102,105,110,100,
+ 95,115,112,101,99,234,2,0,0,115,10,0,0,0,8,2,
+ 4,1,10,1,16,1,4,2,114,18,0,0,0,122,25,66,
+ 117,105,108,116,105,110,73,109,112,111,114,116,101,114,46,102,
+ 105,110,100,95,115,112,101,99,99,3,0,0,0,0,0,0,
+ 0,0,0,0,0,4,0,0,0,67,0,0,0,115,42,0,
+ 0,0,116,0,160,1,100,1,116,2,161,2,1,0,124,0,
+ 160,3,124,1,124,2,161,2,125,3,124,3,100,2,117,1,
+ 114,19,124,3,106,4,83,0,100,2,83,0,41,3,122,175,
+ 70,105,110,100,32,116,104,101,32,98,117,105,108,116,45,105,
+ 110,32,109,111,100,117,108,101,46,10,10,32,32,32,32,32,
+ 32,32,32,73,102,32,39,112,97,116,104,39,32,105,115,32,
+ 101,118,101,114,32,115,112,101,99,105,102,105,101,100,32,116,
+ 104,101,110,32,116,104,101,32,115,101,97,114,99,104,32,105,
+ 115,32,99,111,110,115,105,100,101,114,101,100,32,97,32,102,
+ 97,105,108,117,114,101,46,10,10,32,32,32,32,32,32,32,
+ 32,84,104,105,115,32,109,101,116,104,111,100,32,105,115,32,
+ 100,101,112,114,101,99,97,116,101,100,46,32,32,85,115,101,
+ 32,102,105,110,100,95,115,112,101,99,40,41,32,105,110,115,
+ 116,101,97,100,46,10,10,32,32,32,32,32,32,32,32,122,
+ 106,66,117,105,108,116,105,110,73,109,112,111,114,116,101,114,
+ 46,102,105,110,100,95,109,111,100,117,108,101,40,41,32,105,
+ 115,32,100,101,112,114,101,99,97,116,101,100,32,97,110,100,
+ 32,115,108,97,116,101,100,32,102,111,114,32,114,101,109,111,
+ 118,97,108,32,105,110,32,80,121,116,104,111,110,32,51,46,
+ 49,50,59,32,117,115,101,32,102,105,110,100,95,115,112,101,
+ 99,40,41,32,105,110,115,116,101,97,100,78,41,5,114,102,
+ 0,0,0,114,103,0,0,0,114,104,0,0,0,114,184,0,
+ 0,0,114,123,0,0,0,41,4,114,181,0,0,0,114,90,
+ 0,0,0,114,182,0,0,0,114,110,0,0,0,114,5,0,
+ 0,0,114,5,0,0,0,114,6,0,0,0,218,11,102,105,
+ 110,100,95,109,111,100,117,108,101,243,2,0,0,115,10,0,
+ 0,0,6,9,2,2,4,254,12,3,18,1,114,18,0,0,
+ 0,122,27,66,117,105,108,116,105,110,73,109,112,111,114,116,
+ 101,114,46,102,105,110,100,95,109,111,100,117,108,101,99,1,
+ 0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,67,
+ 0,0,0,115,46,0,0,0,124,0,106,0,116,1,106,2,
+ 118,1,114,17,116,3,100,1,160,4,124,0,106,0,161,1,
+ 124,0,106,0,100,2,141,2,130,1,116,5,116,6,106,7,
+ 124,0,131,2,83,0,41,4,122,24,67,114,101,97,116,101,
+ 32,97,32,98,117,105,108,116,45,105,110,32,109,111,100,117,
+ 108,101,114,86,0,0,0,114,20,0,0,0,78,41,8,114,
+ 21,0,0,0,114,19,0,0,0,114,87,0,0,0,114,88,
+ 0,0,0,114,51,0,0,0,114,75,0,0,0,114,65,0,
+ 0,0,90,14,99,114,101,97,116,101,95,98,117,105,108,116,
+ 105,110,114,175,0,0,0,114,5,0,0,0,114,5,0,0,
+ 0,114,6,0,0,0,114,163,0,0,0,2,3,0,0,115,
+ 10,0,0,0,12,3,12,1,4,1,6,255,12,2,114,18,
+ 0,0,0,122,29,66,117,105,108,116,105,110,73,109,112,111,
+ 114,116,101,114,46,99,114,101,97,116,101,95,109,111,100,117,
+ 108,101,99,1,0,0,0,0,0,0,0,0,0,0,0,3,
+ 0,0,0,67,0,0,0,115,16,0,0,0,116,0,116,1,
+ 106,2,124,0,131,2,1,0,100,1,83,0,41,2,122,22,
+ 69,120,101,99,32,97,32,98,117,105,108,116,45,105,110,32,
+ 109,111,100,117,108,101,78,41,3,114,75,0,0,0,114,65,
+ 0,0,0,90,12,101,120,101,99,95,98,117,105,108,116,105,
+ 110,114,178,0,0,0,114,5,0,0,0,114,5,0,0,0,
+ 114,6,0,0,0,114,164,0,0,0,10,3,0,0,115,2,
+ 0,0,0,16,3,114,18,0,0,0,122,27,66,117,105,108,
+ 116,105,110,73,109,112,111,114,116,101,114,46,101,120,101,99,
95,109,111,100,117,108,101,99,2,0,0,0,0,0,0,0,
- 0,0,0,0,2,0,0,0,3,0,0,0,67,0,0,0,
- 243,10,0,0,0,116,0,160,1,124,1,161,1,83,0,41,
- 2,122,45,82,101,116,117,114,110,32,116,104,101,32,99,111,
- 100,101,32,111,98,106,101,99,116,32,102,111,114,32,116,104,
- 101,32,102,114,111,122,101,110,32,109,111,100,117,108,101,46,
- 78,41,2,114,65,0,0,0,114,196,0,0,0,114,187,0,
- 0,0,114,5,0,0,0,114,5,0,0,0,114,6,0,0,
- 0,114,188,0,0,0,100,3,0,0,243,2,0,0,0,10,
- 4,114,18,0,0,0,122,23,70,114,111,122,101,110,73,109,
- 112,111,114,116,101,114,46,103,101,116,95,99,111,100,101,99,
- 2,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,
- 1,0,0,0,67,0,0,0,114,186,0,0,0,41,2,122,
- 54,82,101,116,117,114,110,32,78,111,110,101,32,97,115,32,
- 102,114,111,122,101,110,32,109,111,100,117,108,101,115,32,100,
- 111,32,110,111,116,32,104,97,118,101,32,115,111,117,114,99,
- 101,32,99,111,100,101,46,78,114,5,0,0,0,114,187,0,
- 0,0,114,5,0,0,0,114,5,0,0,0,114,6,0,0,
- 0,114,190,0,0,0,106,3,0,0,114,189,0,0,0,114,
- 18,0,0,0,122,25,70,114,111,122,101,110,73,109,112,111,
- 114,116,101,114,46,103,101,116,95,115,111,117,114,99,101,99,
- 2,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,
- 3,0,0,0,67,0,0,0,114,199,0,0,0,41,2,122,
- 46,82,101,116,117,114,110,32,84,114,117,101,32,105,102,32,
+ 0,0,0,0,1,0,0,0,67,0,0,0,243,4,0,0,
+ 0,100,1,83,0,41,2,122,57,82,101,116,117,114,110,32,
+ 78,111,110,101,32,97,115,32,98,117,105,108,116,45,105,110,
+ 32,109,111,100,117,108,101,115,32,100,111,32,110,111,116,32,
+ 104,97,118,101,32,99,111,100,101,32,111,98,106,101,99,116,
+ 115,46,78,114,5,0,0,0,169,2,114,181,0,0,0,114,
+ 90,0,0,0,114,5,0,0,0,114,5,0,0,0,114,6,
+ 0,0,0,218,8,103,101,116,95,99,111,100,101,15,3,0,
+ 0,243,2,0,0,0,4,4,114,18,0,0,0,122,24,66,
+ 117,105,108,116,105,110,73,109,112,111,114,116,101,114,46,103,
+ 101,116,95,99,111,100,101,99,2,0,0,0,0,0,0,0,
+ 0,0,0,0,1,0,0,0,67,0,0,0,114,186,0,0,
+ 0,41,2,122,56,82,101,116,117,114,110,32,78,111,110,101,
+ 32,97,115,32,98,117,105,108,116,45,105,110,32,109,111,100,
+ 117,108,101,115,32,100,111,32,110,111,116,32,104,97,118,101,
+ 32,115,111,117,114,99,101,32,99,111,100,101,46,78,114,5,
+ 0,0,0,114,187,0,0,0,114,5,0,0,0,114,5,0,
+ 0,0,114,6,0,0,0,218,10,103,101,116,95,115,111,117,
+ 114,99,101,21,3,0,0,114,189,0,0,0,114,18,0,0,
+ 0,122,26,66,117,105,108,116,105,110,73,109,112,111,114,116,
+ 101,114,46,103,101,116,95,115,111,117,114,99,101,99,2,0,
+ 0,0,0,0,0,0,0,0,0,0,1,0,0,0,67,0,
+ 0,0,114,186,0,0,0,41,3,122,52,82,101,116,117,114,
+ 110,32,70,97,108,115,101,32,97,115,32,98,117,105,108,116,
+ 45,105,110,32,109,111,100,117,108,101,115,32,97,114,101,32,
+ 110,101,118,101,114,32,112,97,99,107,97,103,101,115,46,70,
+ 78,114,5,0,0,0,114,187,0,0,0,114,5,0,0,0,
+ 114,5,0,0,0,114,6,0,0,0,114,129,0,0,0,27,
+ 3,0,0,114,189,0,0,0,114,18,0,0,0,122,26,66,
+ 117,105,108,116,105,110,73,109,112,111,114,116,101,114,46,105,
+ 115,95,112,97,99,107,97,103,101,169,2,78,78,114,0,0,
+ 0,0,41,18,114,9,0,0,0,114,8,0,0,0,114,1,
+ 0,0,0,114,10,0,0,0,114,152,0,0,0,218,12,115,
+ 116,97,116,105,99,109,101,116,104,111,100,114,115,0,0,0,
+ 218,11,99,108,97,115,115,109,101,116,104,111,100,114,184,0,
+ 0,0,114,185,0,0,0,114,163,0,0,0,114,164,0,0,
+ 0,114,96,0,0,0,114,188,0,0,0,114,190,0,0,0,
+ 114,129,0,0,0,114,112,0,0,0,114,171,0,0,0,114,
+ 5,0,0,0,114,5,0,0,0,114,5,0,0,0,114,6,
+ 0,0,0,114,176,0,0,0,212,2,0,0,115,46,0,0,
+ 0,8,0,4,2,4,7,2,2,10,1,2,10,12,1,2,
+ 8,12,1,2,14,10,1,2,7,10,1,2,4,2,1,12,
+ 1,2,4,2,1,12,1,2,4,2,1,12,1,12,4,114,
+ 18,0,0,0,114,176,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,144,
+ 0,0,0,101,0,90,1,100,0,90,2,100,1,90,3,100,
+ 2,90,4,101,5,100,3,100,4,132,0,131,1,90,6,101,
+ 7,100,22,100,6,100,7,132,1,131,1,90,8,101,7,100,
+ 23,100,8,100,9,132,1,131,1,90,9,101,5,100,10,100,
+ 11,132,0,131,1,90,10,101,5,100,12,100,13,132,0,131,
+ 1,90,11,101,7,100,14,100,15,132,0,131,1,90,12,101,
+ 7,101,13,100,16,100,17,132,0,131,1,131,1,90,14,101,
+ 7,101,13,100,18,100,19,132,0,131,1,131,1,90,15,101,
+ 7,101,13,100,20,100,21,132,0,131,1,131,1,90,16,100,
+ 5,83,0,41,24,218,14,70,114,111,122,101,110,73,109,112,
+ 111,114,116,101,114,122,142,77,101,116,97,32,112,97,116,104,
+ 32,105,109,112,111,114,116,32,102,111,114,32,102,114,111,122,
+ 101,110,32,109,111,100,117,108,101,115,46,10,10,32,32,32,
+ 32,65,108,108,32,109,101,116,104,111,100,115,32,97,114,101,
+ 32,101,105,116,104,101,114,32,99,108,97,115,115,32,111,114,
+ 32,115,116,97,116,105,99,32,109,101,116,104,111,100,115,32,
+ 116,111,32,97,118,111,105,100,32,116,104,101,32,110,101,101,
+ 100,32,116,111,10,32,32,32,32,105,110,115,116,97,110,116,
+ 105,97,116,101,32,116,104,101,32,99,108,97,115,115,46,10,
+ 10,32,32,32,32,90,6,102,114,111,122,101,110,99,1,0,
+ 0,0,0,0,0,0,0,0,0,0,4,0,0,0,67,0,
+ 0,0,115,28,0,0,0,116,0,160,1,100,1,116,2,161,
+ 2,1,0,100,2,160,3,124,0,106,4,116,5,106,6,161,
+ 2,83,0,41,4,114,177,0,0,0,122,80,70,114,111,122,
+ 101,110,73,109,112,111,114,116,101,114,46,109,111,100,117,108,
+ 101,95,114,101,112,114,40,41,32,105,115,32,100,101,112,114,
+ 101,99,97,116,101,100,32,97,110,100,32,115,108,97,116,101,
+ 100,32,102,111,114,32,114,101,109,111,118,97,108,32,105,110,
+ 32,80,121,116,104,111,110,32,51,46,49,50,114,167,0,0,
+ 0,78,41,7,114,102,0,0,0,114,103,0,0,0,114,104,
+ 0,0,0,114,51,0,0,0,114,9,0,0,0,114,194,0,
+ 0,0,114,152,0,0,0,41,1,218,1,109,114,5,0,0,
+ 0,114,5,0,0,0,114,6,0,0,0,114,115,0,0,0,
+ 47,3,0,0,115,8,0,0,0,6,7,2,1,4,255,16,
+ 2,114,18,0,0,0,122,26,70,114,111,122,101,110,73,109,
+ 112,111,114,116,101,114,46,109,111,100,117,108,101,95,114,101,
+ 112,114,78,99,4,0,0,0,0,0,0,0,0,0,0,0,
+ 5,0,0,0,67,0,0,0,115,30,0,0,0,116,0,160,
+ 1,124,1,161,1,114,13,116,2,124,1,124,0,124,0,106,
+ 3,100,1,141,3,83,0,100,0,83,0,114,179,0,0,0,
+ 41,4,114,65,0,0,0,114,99,0,0,0,114,105,0,0,
+ 0,114,152,0,0,0,114,180,0,0,0,114,5,0,0,0,
+ 114,5,0,0,0,114,6,0,0,0,114,184,0,0,0,58,
+ 3,0,0,115,6,0,0,0,10,2,16,1,4,2,114,18,
+ 0,0,0,122,24,70,114,111,122,101,110,73,109,112,111,114,
+ 116,101,114,46,102,105,110,100,95,115,112,101,99,99,3,0,
+ 0,0,0,0,0,0,0,0,0,0,4,0,0,0,67,0,
+ 0,0,115,30,0,0,0,116,0,160,1,100,1,116,2,161,
+ 2,1,0,116,3,160,4,124,1,161,1,114,13,124,0,83,
+ 0,100,2,83,0,41,3,122,93,70,105,110,100,32,97,32,
+ 102,114,111,122,101,110,32,109,111,100,117,108,101,46,10,10,
+ 32,32,32,32,32,32,32,32,84,104,105,115,32,109,101,116,
+ 104,111,100,32,105,115,32,100,101,112,114,101,99,97,116,101,
+ 100,46,32,32,85,115,101,32,102,105,110,100,95,115,112,101,
+ 99,40,41,32,105,110,115,116,101,97,100,46,10,10,32,32,
+ 32,32,32,32,32,32,122,105,70,114,111,122,101,110,73,109,
+ 112,111,114,116,101,114,46,102,105,110,100,95,109,111,100,117,
+ 108,101,40,41,32,105,115,32,100,101,112,114,101,99,97,116,
+ 101,100,32,97,110,100,32,115,108,97,116,101,100,32,102,111,
+ 114,32,114,101,109,111,118,97,108,32,105,110,32,80,121,116,
+ 104,111,110,32,51,46,49,50,59,32,117,115,101,32,102,105,
+ 110,100,95,115,112,101,99,40,41,32,105,110,115,116,101,97,
+ 100,78,41,5,114,102,0,0,0,114,103,0,0,0,114,104,
+ 0,0,0,114,65,0,0,0,114,99,0,0,0,41,3,114,
+ 181,0,0,0,114,90,0,0,0,114,182,0,0,0,114,5,
+ 0,0,0,114,5,0,0,0,114,6,0,0,0,114,185,0,
+ 0,0,65,3,0,0,115,8,0,0,0,6,7,2,2,4,
+ 254,18,3,114,18,0,0,0,122,26,70,114,111,122,101,110,
+ 73,109,112,111,114,116,101,114,46,102,105,110,100,95,109,111,
+ 100,117,108,101,99,1,0,0,0,0,0,0,0,0,0,0,
+ 0,1,0,0,0,67,0,0,0,114,186,0,0,0,41,2,
+ 122,42,85,115,101,32,100,101,102,97,117,108,116,32,115,101,
+ 109,97,110,116,105,99,115,32,102,111,114,32,109,111,100,117,
+ 108,101,32,99,114,101,97,116,105,111,110,46,78,114,5,0,
+ 0,0,114,175,0,0,0,114,5,0,0,0,114,5,0,0,
+ 0,114,6,0,0,0,114,163,0,0,0,77,3,0,0,115,
+ 2,0,0,0,4,0,114,18,0,0,0,122,28,70,114,111,
+ 122,101,110,73,109,112,111,114,116,101,114,46,99,114,101,97,
+ 116,101,95,109,111,100,117,108,101,99,1,0,0,0,0,0,
+ 0,0,0,0,0,0,4,0,0,0,67,0,0,0,115,64,
+ 0,0,0,124,0,106,0,106,1,125,1,116,2,160,3,124,
+ 1,161,1,115,18,116,4,100,1,160,5,124,1,161,1,124,
+ 1,100,2,141,2,130,1,116,6,116,2,106,7,124,1,131,
+ 2,125,2,116,8,124,2,124,0,106,9,131,2,1,0,100,
+ 0,83,0,114,98,0,0,0,41,10,114,114,0,0,0,114,
+ 21,0,0,0,114,65,0,0,0,114,99,0,0,0,114,88,
+ 0,0,0,114,51,0,0,0,114,75,0,0,0,218,17,103,
+ 101,116,95,102,114,111,122,101,110,95,111,98,106,101,99,116,
+ 218,4,101,120,101,99,114,14,0,0,0,41,3,114,111,0,
+ 0,0,114,21,0,0,0,218,4,99,111,100,101,114,5,0,
+ 0,0,114,5,0,0,0,114,6,0,0,0,114,164,0,0,
+ 0,81,3,0,0,115,14,0,0,0,8,2,10,1,10,1,
+ 2,1,6,255,12,2,16,1,114,18,0,0,0,122,26,70,
+ 114,111,122,101,110,73,109,112,111,114,116,101,114,46,101,120,
+ 101,99,95,109,111,100,117,108,101,99,2,0,0,0,0,0,
+ 0,0,0,0,0,0,3,0,0,0,67,0,0,0,115,10,
+ 0,0,0,116,0,124,0,124,1,131,2,83,0,41,2,122,
+ 95,76,111,97,100,32,97,32,102,114,111,122,101,110,32,109,
+ 111,100,117,108,101,46,10,10,32,32,32,32,32,32,32,32,
+ 84,104,105,115,32,109,101,116,104,111,100,32,105,115,32,100,
+ 101,112,114,101,99,97,116,101,100,46,32,32,85,115,101,32,
+ 101,120,101,99,95,109,111,100,117,108,101,40,41,32,105,110,
+ 115,116,101,97,100,46,10,10,32,32,32,32,32,32,32,32,
+ 78,41,1,114,112,0,0,0,114,187,0,0,0,114,5,0,
+ 0,0,114,5,0,0,0,114,6,0,0,0,114,171,0,0,
+ 0,90,3,0,0,115,2,0,0,0,10,8,114,18,0,0,
+ 0,122,26,70,114,111,122,101,110,73,109,112,111,114,116,101,
+ 114,46,108,111,97,100,95,109,111,100,117,108,101,99,2,0,
+ 0,0,0,0,0,0,0,0,0,0,3,0,0,0,67,0,
+ 0,0,243,10,0,0,0,116,0,160,1,124,1,161,1,83,
+ 0,41,2,122,45,82,101,116,117,114,110,32,116,104,101,32,
+ 99,111,100,101,32,111,98,106,101,99,116,32,102,111,114,32,
116,104,101,32,102,114,111,122,101,110,32,109,111,100,117,108,
- 101,32,105,115,32,97,32,112,97,99,107,97,103,101,46,78,
- 41,2,114,65,0,0,0,90,17,105,115,95,102,114,111,122,
- 101,110,95,112,97,99,107,97,103,101,114,187,0,0,0,114,
- 5,0,0,0,114,5,0,0,0,114,6,0,0,0,114,129,
- 0,0,0,112,3,0,0,114,200,0,0,0,114,18,0,0,
- 0,122,25,70,114,111,122,101,110,73,109,112,111,114,116,101,
- 114,46,105,115,95,112,97,99,107,97,103,101,114,191,0,0,
- 0,114,0,0,0,0,41,17,114,9,0,0,0,114,8,0,
- 0,0,114,1,0,0,0,114,10,0,0,0,114,152,0,0,
- 0,114,192,0,0,0,114,115,0,0,0,114,193,0,0,0,
- 114,184,0,0,0,114,185,0,0,0,114,163,0,0,0,114,
- 164,0,0,0,114,171,0,0,0,114,101,0,0,0,114,188,
- 0,0,0,114,190,0,0,0,114,129,0,0,0,114,5,0,
- 0,0,114,5,0,0,0,114,5,0,0,0,114,6,0,0,
- 0,114,194,0,0,0,36,3,0,0,115,48,0,0,0,8,
- 0,4,2,4,7,2,2,10,1,2,10,12,1,2,6,12,
- 1,2,11,10,1,2,3,10,1,2,8,10,1,2,9,2,
- 1,12,1,2,4,2,1,12,1,2,4,2,1,16,1,114,
- 18,0,0,0,114,194,0,0,0,99,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,2,0,0,0,64,0,
- 0,0,115,32,0,0,0,101,0,90,1,100,0,90,2,100,
- 1,90,3,100,2,100,3,132,0,90,4,100,4,100,5,132,
- 0,90,5,100,6,83,0,41,7,218,18,95,73,109,112,111,
- 114,116,76,111,99,107,67,111,110,116,101,120,116,122,36,67,
- 111,110,116,101,120,116,32,109,97,110,97,103,101,114,32,102,
- 111,114,32,116,104,101,32,105,109,112,111,114,116,32,108,111,
- 99,107,46,99,1,0,0,0,0,0,0,0,0,0,0,0,
- 1,0,0,0,2,0,0,0,67,0,0,0,243,12,0,0,
- 0,116,0,160,1,161,0,1,0,100,1,83,0,41,2,122,
- 24,65,99,113,117,105,114,101,32,116,104,101,32,105,109,112,
- 111,114,116,32,108,111,99,107,46,78,41,2,114,65,0,0,
- 0,114,66,0,0,0,114,53,0,0,0,114,5,0,0,0,
- 114,5,0,0,0,114,6,0,0,0,114,62,0,0,0,125,
- 3,0,0,243,2,0,0,0,12,2,114,18,0,0,0,122,
- 28,95,73,109,112,111,114,116,76,111,99,107,67,111,110,116,
- 101,120,116,46,95,95,101,110,116,101,114,95,95,99,4,0,
- 0,0,0,0,0,0,0,0,0,0,4,0,0,0,2,0,
- 0,0,67,0,0,0,114,202,0,0,0,41,2,122,60,82,
- 101,108,101,97,115,101,32,116,104,101,32,105,109,112,111,114,
- 116,32,108,111,99,107,32,114,101,103,97,114,100,108,101,115,
- 115,32,111,102,32,97,110,121,32,114,97,105,115,101,100,32,
- 101,120,99,101,112,116,105,111,110,115,46,78,41,2,114,65,
- 0,0,0,114,68,0,0,0,41,4,114,34,0,0,0,218,
- 8,101,120,99,95,116,121,112,101,218,9,101,120,99,95,118,
- 97,108,117,101,218,13,101,120,99,95,116,114,97,99,101,98,
- 97,99,107,114,5,0,0,0,114,5,0,0,0,114,6,0,
- 0,0,114,64,0,0,0,129,3,0,0,114,203,0,0,0,
- 114,18,0,0,0,122,27,95,73,109,112,111,114,116,76,111,
- 99,107,67,111,110,116,101,120,116,46,95,95,101,120,105,116,
- 95,95,78,41,6,114,9,0,0,0,114,8,0,0,0,114,
- 1,0,0,0,114,10,0,0,0,114,62,0,0,0,114,64,
- 0,0,0,114,5,0,0,0,114,5,0,0,0,114,5,0,
- 0,0,114,6,0,0,0,114,201,0,0,0,121,3,0,0,
- 115,8,0,0,0,8,0,4,2,8,2,12,4,114,18,0,
- 0,0,114,201,0,0,0,99,3,0,0,0,0,0,0,0,
- 0,0,0,0,5,0,0,0,5,0,0,0,67,0,0,0,
- 115,64,0,0,0,124,1,160,0,100,1,124,2,100,2,24,
- 0,161,2,125,3,116,1,124,3,131,1,124,2,107,0,114,
- 18,116,2,100,3,131,1,130,1,124,3,100,4,25,0,125,
- 4,124,0,114,30,100,5,160,3,124,4,124,0,161,2,83,
- 0,124,4,83,0,41,7,122,50,82,101,115,111,108,118,101,
- 32,97,32,114,101,108,97,116,105,118,101,32,109,111,100,117,
- 108,101,32,110,97,109,101,32,116,111,32,97,110,32,97,98,
- 115,111,108,117,116,101,32,111,110,101,46,114,142,0,0,0,
- 114,43,0,0,0,122,50,97,116,116,101,109,112,116,101,100,
- 32,114,101,108,97,116,105,118,101,32,105,109,112,111,114,116,
- 32,98,101,121,111,110,100,32,116,111,112,45,108,101,118,101,
- 108,32,112,97,99,107,97,103,101,114,26,0,0,0,250,5,
- 123,125,46,123,125,78,41,4,218,6,114,115,112,108,105,116,
- 218,3,108,101,110,114,88,0,0,0,114,51,0,0,0,41,
- 5,114,21,0,0,0,218,7,112,97,99,107,97,103,101,218,
- 5,108,101,118,101,108,90,4,98,105,116,115,90,4,98,97,
- 115,101,114,5,0,0,0,114,5,0,0,0,114,6,0,0,
- 0,218,13,95,114,101,115,111,108,118,101,95,110,97,109,101,
- 134,3,0,0,115,10,0,0,0,16,2,12,1,8,1,8,
- 1,20,1,114,18,0,0,0,114,212,0,0,0,99,3,0,
- 0,0,0,0,0,0,0,0,0,0,5,0,0,0,4,0,
- 0,0,67,0,0,0,115,60,0,0,0,116,0,124,0,131,
- 1,155,0,100,1,157,2,125,3,116,1,160,2,124,3,116,
- 3,161,2,1,0,124,0,160,4,124,1,124,2,161,2,125,
- 4,124,4,100,0,117,0,114,25,100,0,83,0,116,5,124,
- 1,124,4,131,2,83,0,41,2,78,122,53,46,102,105,110,
- 100,95,115,112,101,99,40,41,32,110,111,116,32,102,111,117,
- 110,100,59,32,102,97,108,108,105,110,103,32,98,97,99,107,
- 32,116,111,32,102,105,110,100,95,109,111,100,117,108,101,40,
- 41,41,6,114,7,0,0,0,114,102,0,0,0,114,103,0,
- 0,0,114,170,0,0,0,114,185,0,0,0,114,105,0,0,
- 0,41,5,218,6,102,105,110,100,101,114,114,21,0,0,0,
- 114,182,0,0,0,114,109,0,0,0,114,123,0,0,0,114,
- 5,0,0,0,114,5,0,0,0,114,6,0,0,0,218,17,
- 95,102,105,110,100,95,115,112,101,99,95,108,101,103,97,99,
- 121,143,3,0,0,115,12,0,0,0,14,1,12,2,12,1,
- 8,1,4,1,10,1,114,18,0,0,0,114,214,0,0,0,
- 99,3,0,0,0,0,0,0,0,0,0,0,0,10,0,0,
- 0,10,0,0,0,67,0,0,0,115,30,1,0,0,116,0,
- 106,1,125,3,124,3,100,1,117,0,114,11,116,2,100,2,
- 131,1,130,1,124,3,115,19,116,3,160,4,100,3,116,5,
- 161,2,1,0,124,0,116,0,106,6,118,0,125,4,124,3,
- 68,0,93,112,125,5,116,7,131,0,53,0,1,0,9,0,
- 124,5,106,8,125,6,110,27,35,0,4,0,116,9,121,142,
- 1,0,1,0,1,0,116,10,124,5,124,0,124,1,131,3,
- 125,7,124,7,100,1,117,0,114,61,89,0,100,1,4,0,
- 4,0,131,3,1,0,113,26,89,0,110,7,37,0,124,6,
- 124,0,124,1,124,2,131,3,125,7,100,1,4,0,4,0,
- 131,3,1,0,110,11,35,0,49,0,115,81,119,4,37,0,
- 1,0,1,0,1,0,89,0,1,0,1,0,124,7,100,1,
- 117,1,114,138,124,4,115,134,124,0,116,0,106,6,118,0,
- 114,134,116,0,106,6,124,0,25,0,125,8,9,0,124,8,
- 106,11,125,9,110,14,35,0,4,0,116,9,121,141,1,0,
- 1,0,1,0,124,7,6,0,89,0,2,0,1,0,83,0,
- 37,0,124,9,100,1,117,0,114,130,124,7,2,0,1,0,
- 83,0,124,9,2,0,1,0,83,0,124,7,2,0,1,0,
- 83,0,113,26,100,1,83,0,119,0,119,0,41,4,122,21,
- 70,105,110,100,32,97,32,109,111,100,117,108,101,39,115,32,
- 115,112,101,99,46,78,122,53,115,121,115,46,109,101,116,97,
- 95,112,97,116,104,32,105,115,32,78,111,110,101,44,32,80,
- 121,116,104,111,110,32,105,115,32,108,105,107,101,108,121,32,
- 115,104,117,116,116,105,110,103,32,100,111,119,110,122,22,115,
- 121,115,46,109,101,116,97,95,112,97,116,104,32,105,115,32,
- 101,109,112,116,121,41,12,114,19,0,0,0,218,9,109,101,
- 116,97,95,112,97,116,104,114,88,0,0,0,114,102,0,0,
- 0,114,103,0,0,0,114,170,0,0,0,114,106,0,0,0,
- 114,201,0,0,0,114,184,0,0,0,114,2,0,0,0,114,
- 214,0,0,0,114,114,0,0,0,41,10,114,21,0,0,0,
- 114,182,0,0,0,114,183,0,0,0,114,215,0,0,0,90,
- 9,105,115,95,114,101,108,111,97,100,114,213,0,0,0,114,
- 184,0,0,0,114,110,0,0,0,114,111,0,0,0,114,114,
- 0,0,0,114,5,0,0,0,114,5,0,0,0,114,6,0,
- 0,0,218,10,95,102,105,110,100,95,115,112,101,99,153,3,
- 0,0,115,78,0,0,0,6,2,8,1,8,2,4,3,12,
- 1,10,5,8,1,8,1,2,1,8,1,2,128,12,1,12,
- 1,8,1,2,1,10,250,2,6,4,255,2,128,12,3,12,
+ 101,46,78,41,2,114,65,0,0,0,114,196,0,0,0,114,
+ 187,0,0,0,114,5,0,0,0,114,5,0,0,0,114,6,
+ 0,0,0,114,188,0,0,0,100,3,0,0,243,2,0,0,
+ 0,10,4,114,18,0,0,0,122,23,70,114,111,122,101,110,
+ 73,109,112,111,114,116,101,114,46,103,101,116,95,99,111,100,
+ 101,99,2,0,0,0,0,0,0,0,0,0,0,0,1,0,
+ 0,0,67,0,0,0,114,186,0,0,0,41,2,122,54,82,
+ 101,116,117,114,110,32,78,111,110,101,32,97,115,32,102,114,
+ 111,122,101,110,32,109,111,100,117,108,101,115,32,100,111,32,
+ 110,111,116,32,104,97,118,101,32,115,111,117,114,99,101,32,
+ 99,111,100,101,46,78,114,5,0,0,0,114,187,0,0,0,
+ 114,5,0,0,0,114,5,0,0,0,114,6,0,0,0,114,
+ 190,0,0,0,106,3,0,0,114,189,0,0,0,114,18,0,
+ 0,0,122,25,70,114,111,122,101,110,73,109,112,111,114,116,
+ 101,114,46,103,101,116,95,115,111,117,114,99,101,99,2,0,
+ 0,0,0,0,0,0,0,0,0,0,3,0,0,0,67,0,
+ 0,0,114,199,0,0,0,41,2,122,46,82,101,116,117,114,
+ 110,32,84,114,117,101,32,105,102,32,116,104,101,32,102,114,
+ 111,122,101,110,32,109,111,100,117,108,101,32,105,115,32,97,
+ 32,112,97,99,107,97,103,101,46,78,41,2,114,65,0,0,
+ 0,90,17,105,115,95,102,114,111,122,101,110,95,112,97,99,
+ 107,97,103,101,114,187,0,0,0,114,5,0,0,0,114,5,
+ 0,0,0,114,6,0,0,0,114,129,0,0,0,112,3,0,
+ 0,114,200,0,0,0,114,18,0,0,0,122,25,70,114,111,
+ 122,101,110,73,109,112,111,114,116,101,114,46,105,115,95,112,
+ 97,99,107,97,103,101,114,191,0,0,0,114,0,0,0,0,
+ 41,17,114,9,0,0,0,114,8,0,0,0,114,1,0,0,
+ 0,114,10,0,0,0,114,152,0,0,0,114,192,0,0,0,
+ 114,115,0,0,0,114,193,0,0,0,114,184,0,0,0,114,
+ 185,0,0,0,114,163,0,0,0,114,164,0,0,0,114,171,
+ 0,0,0,114,101,0,0,0,114,188,0,0,0,114,190,0,
+ 0,0,114,129,0,0,0,114,5,0,0,0,114,5,0,0,
+ 0,114,5,0,0,0,114,6,0,0,0,114,194,0,0,0,
+ 36,3,0,0,115,48,0,0,0,8,0,4,2,4,7,2,
+ 2,10,1,2,10,12,1,2,6,12,1,2,11,10,1,2,
+ 3,10,1,2,8,10,1,2,9,2,1,12,1,2,4,2,
+ 1,12,1,2,4,2,1,16,1,114,18,0,0,0,114,194,
+ 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,32,0,0,0,101,0,90,
+ 1,100,0,90,2,100,1,90,3,100,2,100,3,132,0,90,
+ 4,100,4,100,5,132,0,90,5,100,6,83,0,41,7,218,
+ 18,95,73,109,112,111,114,116,76,111,99,107,67,111,110,116,
+ 101,120,116,122,36,67,111,110,116,101,120,116,32,109,97,110,
+ 97,103,101,114,32,102,111,114,32,116,104,101,32,105,109,112,
+ 111,114,116,32,108,111,99,107,46,99,1,0,0,0,0,0,
+ 0,0,0,0,0,0,2,0,0,0,67,0,0,0,243,12,
+ 0,0,0,116,0,160,1,161,0,1,0,100,1,83,0,41,
+ 2,122,24,65,99,113,117,105,114,101,32,116,104,101,32,105,
+ 109,112,111,114,116,32,108,111,99,107,46,78,41,2,114,65,
+ 0,0,0,114,66,0,0,0,114,53,0,0,0,114,5,0,
+ 0,0,114,5,0,0,0,114,6,0,0,0,114,62,0,0,
+ 0,125,3,0,0,243,2,0,0,0,12,2,114,18,0,0,
+ 0,122,28,95,73,109,112,111,114,116,76,111,99,107,67,111,
+ 110,116,101,120,116,46,95,95,101,110,116,101,114,95,95,99,
+ 4,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,
+ 67,0,0,0,114,202,0,0,0,41,2,122,60,82,101,108,
+ 101,97,115,101,32,116,104,101,32,105,109,112,111,114,116,32,
+ 108,111,99,107,32,114,101,103,97,114,100,108,101,115,115,32,
+ 111,102,32,97,110,121,32,114,97,105,115,101,100,32,101,120,
+ 99,101,112,116,105,111,110,115,46,78,41,2,114,65,0,0,
+ 0,114,68,0,0,0,41,4,114,34,0,0,0,218,8,101,
+ 120,99,95,116,121,112,101,218,9,101,120,99,95,118,97,108,
+ 117,101,218,13,101,120,99,95,116,114,97,99,101,98,97,99,
+ 107,114,5,0,0,0,114,5,0,0,0,114,6,0,0,0,
+ 114,64,0,0,0,129,3,0,0,114,203,0,0,0,114,18,
+ 0,0,0,122,27,95,73,109,112,111,114,116,76,111,99,107,
+ 67,111,110,116,101,120,116,46,95,95,101,120,105,116,95,95,
+ 78,41,6,114,9,0,0,0,114,8,0,0,0,114,1,0,
+ 0,0,114,10,0,0,0,114,62,0,0,0,114,64,0,0,
+ 0,114,5,0,0,0,114,5,0,0,0,114,5,0,0,0,
+ 114,6,0,0,0,114,201,0,0,0,121,3,0,0,115,8,
+ 0,0,0,8,0,4,2,8,2,12,4,114,18,0,0,0,
+ 114,201,0,0,0,99,3,0,0,0,0,0,0,0,0,0,
+ 0,0,5,0,0,0,67,0,0,0,115,64,0,0,0,124,
+ 1,160,0,100,1,124,2,100,2,24,0,161,2,125,3,116,
+ 1,124,3,131,1,124,2,107,0,114,18,116,2,100,3,131,
+ 1,130,1,124,3,100,4,25,0,125,4,124,0,114,30,100,
+ 5,160,3,124,4,124,0,161,2,83,0,124,4,83,0,41,
+ 7,122,50,82,101,115,111,108,118,101,32,97,32,114,101,108,
+ 97,116,105,118,101,32,109,111,100,117,108,101,32,110,97,109,
+ 101,32,116,111,32,97,110,32,97,98,115,111,108,117,116,101,
+ 32,111,110,101,46,114,142,0,0,0,114,43,0,0,0,122,
+ 50,97,116,116,101,109,112,116,101,100,32,114,101,108,97,116,
+ 105,118,101,32,105,109,112,111,114,116,32,98,101,121,111,110,
+ 100,32,116,111,112,45,108,101,118,101,108,32,112,97,99,107,
+ 97,103,101,114,26,0,0,0,250,5,123,125,46,123,125,78,
+ 41,4,218,6,114,115,112,108,105,116,218,3,108,101,110,114,
+ 88,0,0,0,114,51,0,0,0,41,5,114,21,0,0,0,
+ 218,7,112,97,99,107,97,103,101,218,5,108,101,118,101,108,
+ 90,4,98,105,116,115,90,4,98,97,115,101,114,5,0,0,
+ 0,114,5,0,0,0,114,6,0,0,0,218,13,95,114,101,
+ 115,111,108,118,101,95,110,97,109,101,134,3,0,0,115,10,
+ 0,0,0,16,2,12,1,8,1,8,1,20,1,114,18,0,
+ 0,0,114,212,0,0,0,99,3,0,0,0,0,0,0,0,
+ 0,0,0,0,4,0,0,0,67,0,0,0,115,60,0,0,
+ 0,116,0,124,0,131,1,155,0,100,1,157,2,125,3,116,
+ 1,160,2,124,3,116,3,161,2,1,0,124,0,160,4,124,
+ 1,124,2,161,2,125,4,124,4,100,0,117,0,114,25,100,
+ 0,83,0,116,5,124,1,124,4,131,2,83,0,41,2,78,
+ 122,53,46,102,105,110,100,95,115,112,101,99,40,41,32,110,
+ 111,116,32,102,111,117,110,100,59,32,102,97,108,108,105,110,
+ 103,32,98,97,99,107,32,116,111,32,102,105,110,100,95,109,
+ 111,100,117,108,101,40,41,41,6,114,7,0,0,0,114,102,
+ 0,0,0,114,103,0,0,0,114,170,0,0,0,114,185,0,
+ 0,0,114,105,0,0,0,41,5,218,6,102,105,110,100,101,
+ 114,114,21,0,0,0,114,182,0,0,0,114,109,0,0,0,
+ 114,123,0,0,0,114,5,0,0,0,114,5,0,0,0,114,
+ 6,0,0,0,218,17,95,102,105,110,100,95,115,112,101,99,
+ 95,108,101,103,97,99,121,143,3,0,0,115,12,0,0,0,
+ 14,1,12,2,12,1,8,1,4,1,10,1,114,18,0,0,
+ 0,114,214,0,0,0,99,3,0,0,0,0,0,0,0,0,
+ 0,0,0,10,0,0,0,67,0,0,0,115,30,1,0,0,
+ 116,0,106,1,125,3,124,3,100,1,117,0,114,11,116,2,
+ 100,2,131,1,130,1,124,3,115,19,116,3,160,4,100,3,
+ 116,5,161,2,1,0,124,0,116,0,106,6,118,0,125,4,
+ 124,3,68,0,93,112,125,5,116,7,131,0,53,0,1,0,
+ 9,0,124,5,106,8,125,6,110,27,35,0,4,0,116,9,
+ 121,142,1,0,1,0,1,0,116,10,124,5,124,0,124,1,
+ 131,3,125,7,124,7,100,1,117,0,114,61,89,0,100,1,
+ 4,0,4,0,131,3,1,0,113,26,89,0,110,7,37,0,
+ 124,6,124,0,124,1,124,2,131,3,125,7,100,1,4,0,
+ 4,0,131,3,1,0,110,11,35,0,49,0,115,81,119,4,
+ 37,0,1,0,1,0,1,0,89,0,1,0,1,0,124,7,
+ 100,1,117,1,114,138,124,4,115,134,124,0,116,0,106,6,
+ 118,0,114,134,116,0,106,6,124,0,25,0,125,8,9,0,
+ 124,8,106,11,125,9,110,14,35,0,4,0,116,9,121,141,
+ 1,0,1,0,1,0,124,7,6,0,89,0,2,0,1,0,
+ 83,0,37,0,124,9,100,1,117,0,114,130,124,7,2,0,
+ 1,0,83,0,124,9,2,0,1,0,83,0,124,7,2,0,
+ 1,0,83,0,113,26,100,1,83,0,119,0,119,0,41,4,
+ 122,21,70,105,110,100,32,97,32,109,111,100,117,108,101,39,
+ 115,32,115,112,101,99,46,78,122,53,115,121,115,46,109,101,
+ 116,97,95,112,97,116,104,32,105,115,32,78,111,110,101,44,
+ 32,80,121,116,104,111,110,32,105,115,32,108,105,107,101,108,
+ 121,32,115,104,117,116,116,105,110,103,32,100,111,119,110,122,
+ 22,115,121,115,46,109,101,116,97,95,112,97,116,104,32,105,
+ 115,32,101,109,112,116,121,41,12,114,19,0,0,0,218,9,
+ 109,101,116,97,95,112,97,116,104,114,88,0,0,0,114,102,
+ 0,0,0,114,103,0,0,0,114,170,0,0,0,114,106,0,
+ 0,0,114,201,0,0,0,114,184,0,0,0,114,2,0,0,
+ 0,114,214,0,0,0,114,114,0,0,0,41,10,114,21,0,
+ 0,0,114,182,0,0,0,114,183,0,0,0,114,215,0,0,
+ 0,90,9,105,115,95,114,101,108,111,97,100,114,213,0,0,
+ 0,114,184,0,0,0,114,110,0,0,0,114,111,0,0,0,
+ 114,114,0,0,0,114,5,0,0,0,114,5,0,0,0,114,
+ 6,0,0,0,218,10,95,102,105,110,100,95,115,112,101,99,
+ 153,3,0,0,115,76,0,0,0,6,2,8,1,8,2,4,
+ 3,12,1,10,5,8,1,8,1,2,1,8,1,2,128,12,
+ 1,12,1,8,1,2,1,12,250,4,5,2,128,12,3,12,
248,22,128,8,9,14,2,10,1,2,1,8,1,2,128,12,
1,12,4,2,128,8,2,8,1,8,2,8,2,2,239,4,
19,2,243,2,244,115,63,0,0,0,159,1,65,12,5,161,
@@ -1564,406 +1545,403 @@ const unsigned char _Py_M__importlib_bootstrap[] = {
5,189,9,65,12,5,193,12,4,65,16,13,193,17,3,65,
16,13,193,40,3,65,44,2,193,44,9,65,57,9,194,13,
1,65,57,9,194,14,1,63,11,114,216,0,0,0,99,3,
- 0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,5,
- 0,0,0,67,0,0,0,115,110,0,0,0,116,0,124,0,
- 116,1,131,2,115,14,116,2,100,1,160,3,116,4,124,0,
- 131,1,161,1,131,1,130,1,124,2,100,2,107,0,114,22,
- 116,5,100,3,131,1,130,1,124,2,100,2,107,4,114,41,
- 116,0,124,1,116,1,131,2,115,35,116,2,100,4,131,1,
- 130,1,124,1,115,41,116,6,100,5,131,1,130,1,124,0,
- 115,53,124,2,100,2,107,2,114,51,116,5,100,6,131,1,
- 130,1,100,7,83,0,100,7,83,0,41,8,122,28,86,101,
- 114,105,102,121,32,97,114,103,117,109,101,110,116,115,32,97,
- 114,101,32,34,115,97,110,101,34,46,122,31,109,111,100,117,
- 108,101,32,110,97,109,101,32,109,117,115,116,32,98,101,32,
- 115,116,114,44,32,110,111,116,32,123,125,114,26,0,0,0,
- 122,18,108,101,118,101,108,32,109,117,115,116,32,98,101,32,
- 62,61,32,48,122,31,95,95,112,97,99,107,97,103,101,95,
- 95,32,110,111,116,32,115,101,116,32,116,111,32,97,32,115,
- 116,114,105,110,103,122,54,97,116,116,101,109,112,116,101,100,
- 32,114,101,108,97,116,105,118,101,32,105,109,112,111,114,116,
- 32,119,105,116,104,32,110,111,32,107,110,111,119,110,32,112,
- 97,114,101,110,116,32,112,97,99,107,97,103,101,122,17,69,
- 109,112,116,121,32,109,111,100,117,108,101,32,110,97,109,101,
- 78,41,7,218,10,105,115,105,110,115,116,97,110,99,101,218,
- 3,115,116,114,218,9,84,121,112,101,69,114,114,111,114,114,
- 51,0,0,0,114,3,0,0,0,218,10,86,97,108,117,101,
- 69,114,114,111,114,114,88,0,0,0,169,3,114,21,0,0,
- 0,114,210,0,0,0,114,211,0,0,0,114,5,0,0,0,
- 114,5,0,0,0,114,6,0,0,0,218,13,95,115,97,110,
- 105,116,121,95,99,104,101,99,107,200,3,0,0,115,24,0,
- 0,0,10,2,18,1,8,1,8,1,8,1,10,1,8,1,
- 4,1,8,1,12,2,8,1,8,255,114,18,0,0,0,114,
- 222,0,0,0,122,16,78,111,32,109,111,100,117,108,101,32,
- 110,97,109,101,100,32,122,4,123,33,114,125,99,2,0,0,
- 0,0,0,0,0,0,0,0,0,9,0,0,0,8,0,0,
- 0,67,0,0,0,115,20,1,0,0,100,0,125,2,124,0,
- 160,0,100,1,161,1,100,2,25,0,125,3,124,3,114,64,
- 124,3,116,1,106,2,118,1,114,21,116,3,124,1,124,3,
- 131,2,1,0,124,0,116,1,106,2,118,0,114,31,116,1,
- 106,2,124,0,25,0,83,0,116,1,106,2,124,3,25,0,
- 125,4,9,0,124,4,106,4,125,2,110,23,35,0,4,0,
- 116,5,121,137,1,0,1,0,1,0,116,6,100,3,23,0,
- 160,7,124,0,124,3,161,2,125,5,116,8,124,5,124,0,
- 100,4,141,2,100,0,130,2,37,0,116,9,124,0,124,2,
- 131,2,125,6,124,6,100,0,117,0,114,82,116,8,116,6,
- 160,7,124,0,161,1,124,0,100,4,141,2,130,1,116,10,
- 124,6,131,1,125,7,124,3,114,134,116,1,106,2,124,3,
- 25,0,125,4,124,0,160,0,100,1,161,1,100,5,25,0,
- 125,8,9,0,116,11,124,4,124,8,124,7,131,3,1,0,
- 124,7,83,0,35,0,4,0,116,5,121,136,1,0,1,0,
- 1,0,100,6,124,3,155,2,100,7,124,8,155,2,157,4,
- 125,5,116,12,160,13,124,5,116,14,161,2,1,0,89,0,
- 124,7,83,0,37,0,124,7,83,0,119,0,119,0,41,8,
- 78,114,142,0,0,0,114,26,0,0,0,122,23,59,32,123,
- 33,114,125,32,105,115,32,110,111,116,32,97,32,112,97,99,
- 107,97,103,101,114,20,0,0,0,233,2,0,0,0,122,27,
- 67,97,110,110,111,116,32,115,101,116,32,97,110,32,97,116,
- 116,114,105,98,117,116,101,32,111,110,32,122,18,32,102,111,
- 114,32,99,104,105,108,100,32,109,111,100,117,108,101,32,41,
- 15,114,143,0,0,0,114,19,0,0,0,114,106,0,0,0,
- 114,75,0,0,0,114,155,0,0,0,114,2,0,0,0,218,
- 8,95,69,82,82,95,77,83,71,114,51,0,0,0,218,19,
- 77,111,100,117,108,101,78,111,116,70,111,117,110,100,69,114,
- 114,111,114,114,216,0,0,0,114,174,0,0,0,114,12,0,
- 0,0,114,102,0,0,0,114,103,0,0,0,114,170,0,0,
- 0,41,9,114,21,0,0,0,218,7,105,109,112,111,114,116,
- 95,114,182,0,0,0,114,144,0,0,0,90,13,112,97,114,
- 101,110,116,95,109,111,100,117,108,101,114,109,0,0,0,114,
- 110,0,0,0,114,111,0,0,0,90,5,99,104,105,108,100,
- 114,5,0,0,0,114,5,0,0,0,114,6,0,0,0,218,
- 23,95,102,105,110,100,95,97,110,100,95,108,111,97,100,95,
- 117,110,108,111,99,107,101,100,219,3,0,0,115,68,0,0,
- 0,4,1,14,1,4,1,10,1,10,1,10,2,10,1,10,
- 1,2,1,8,1,2,128,12,1,16,1,14,1,2,128,10,
- 1,8,1,18,1,8,2,4,1,10,2,14,1,2,1,12,
- 1,4,4,2,128,12,253,16,1,14,1,4,1,2,128,4,
- 0,2,253,2,242,115,31,0,0,0,165,3,41,0,169,22,
- 63,7,193,37,6,65,45,0,193,45,21,66,5,7,194,8,
- 1,66,5,7,194,9,1,63,7,114,227,0,0,0,99,2,
- 0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,9,
- 0,0,0,67,0,0,0,115,132,0,0,0,116,0,124,0,
- 131,1,53,0,1,0,116,1,106,2,160,3,124,0,116,4,
- 161,2,125,2,124,2,116,4,117,0,114,27,116,5,124,0,
- 124,1,131,2,2,0,100,1,4,0,4,0,131,3,1,0,
- 83,0,9,0,100,1,4,0,4,0,131,3,1,0,110,11,
- 35,0,49,0,115,39,119,4,37,0,1,0,1,0,1,0,
- 89,0,1,0,1,0,124,2,100,1,117,0,114,60,100,2,
- 160,6,124,0,161,1,125,3,116,7,124,3,124,0,100,3,
- 141,2,130,1,116,8,124,0,131,1,1,0,124,2,83,0,
- 41,4,122,25,70,105,110,100,32,97,110,100,32,108,111,97,
- 100,32,116,104,101,32,109,111,100,117,108,101,46,78,122,40,
- 105,109,112,111,114,116,32,111,102,32,123,125,32,104,97,108,
- 116,101,100,59,32,78,111,110,101,32,105,110,32,115,121,115,
- 46,109,111,100,117,108,101,115,114,20,0,0,0,41,9,114,
- 58,0,0,0,114,19,0,0,0,114,106,0,0,0,114,39,
- 0,0,0,218,14,95,78,69,69,68,83,95,76,79,65,68,
- 73,78,71,114,227,0,0,0,114,51,0,0,0,114,225,0,
- 0,0,114,73,0,0,0,41,4,114,21,0,0,0,114,226,
- 0,0,0,114,111,0,0,0,114,83,0,0,0,114,5,0,
- 0,0,114,5,0,0,0,114,6,0,0,0,218,14,95,102,
- 105,110,100,95,97,110,100,95,108,111,97,100,254,3,0,0,
- 115,32,0,0,0,10,2,14,1,8,1,8,1,12,253,2,
- 3,2,255,12,254,22,128,8,5,2,1,6,1,2,255,12,
- 2,8,2,4,1,115,12,0,0,0,132,16,34,3,162,4,
- 38,11,167,3,38,11,114,229,0,0,0,114,26,0,0,0,
- 99,3,0,0,0,0,0,0,0,0,0,0,0,3,0,0,
- 0,4,0,0,0,67,0,0,0,115,42,0,0,0,116,0,
- 124,0,124,1,124,2,131,3,1,0,124,2,100,1,107,4,
- 114,16,116,1,124,0,124,1,124,2,131,3,125,0,116,2,
- 124,0,116,3,131,2,83,0,41,3,97,50,1,0,0,73,
- 109,112,111,114,116,32,97,110,100,32,114,101,116,117,114,110,
- 32,116,104,101,32,109,111,100,117,108,101,32,98,97,115,101,
- 100,32,111,110,32,105,116,115,32,110,97,109,101,44,32,116,
- 104,101,32,112,97,99,107,97,103,101,32,116,104,101,32,99,
- 97,108,108,32,105,115,10,32,32,32,32,98,101,105,110,103,
- 32,109,97,100,101,32,102,114,111,109,44,32,97,110,100,32,
- 116,104,101,32,108,101,118,101,108,32,97,100,106,117,115,116,
- 109,101,110,116,46,10,10,32,32,32,32,84,104,105,115,32,
- 102,117,110,99,116,105,111,110,32,114,101,112,114,101,115,101,
- 110,116,115,32,116,104,101,32,103,114,101,97,116,101,115,116,
- 32,99,111,109,109,111,110,32,100,101,110,111,109,105,110,97,
- 116,111,114,32,111,102,32,102,117,110,99,116,105,111,110,97,
- 108,105,116,121,10,32,32,32,32,98,101,116,119,101,101,110,
- 32,105,109,112,111,114,116,95,109,111,100,117,108,101,32,97,
- 110,100,32,95,95,105,109,112,111,114,116,95,95,46,32,84,
- 104,105,115,32,105,110,99,108,117,100,101,115,32,115,101,116,
- 116,105,110,103,32,95,95,112,97,99,107,97,103,101,95,95,
- 32,105,102,10,32,32,32,32,116,104,101,32,108,111,97,100,
- 101,114,32,100,105,100,32,110,111,116,46,10,10,32,32,32,
- 32,114,26,0,0,0,78,41,4,114,222,0,0,0,114,212,
- 0,0,0,114,229,0,0,0,218,11,95,103,99,100,95,105,
- 109,112,111,114,116,114,221,0,0,0,114,5,0,0,0,114,
- 5,0,0,0,114,6,0,0,0,114,230,0,0,0,14,4,
- 0,0,115,8,0,0,0,12,9,8,1,12,1,10,1,114,
- 18,0,0,0,114,230,0,0,0,169,1,218,9,114,101,99,
- 117,114,115,105,118,101,99,3,0,0,0,0,0,0,0,1,
- 0,0,0,8,0,0,0,9,0,0,0,67,0,0,0,115,
- 216,0,0,0,124,1,68,0,93,102,125,4,116,0,124,4,
- 116,1,131,2,115,32,124,3,114,17,124,0,106,2,100,1,
- 23,0,125,5,110,2,100,2,125,5,116,3,100,3,124,5,
- 155,0,100,4,116,4,124,4,131,1,106,2,155,0,157,4,
- 131,1,130,1,124,4,100,5,107,2,114,53,124,3,115,52,
- 116,5,124,0,100,6,131,2,114,52,116,6,124,0,124,0,
- 106,7,124,2,100,7,100,8,141,4,1,0,113,2,116,5,
- 124,0,124,4,131,2,115,104,100,9,160,8,124,0,106,2,
- 124,4,161,2,125,6,9,0,116,9,124,2,124,6,131,2,
- 1,0,113,2,35,0,4,0,116,10,121,107,1,0,125,7,
- 1,0,124,7,106,11,124,6,107,2,114,98,116,12,106,13,
- 160,14,124,6,116,15,161,2,100,10,117,1,114,98,89,0,
- 100,10,125,7,126,7,113,2,130,0,100,10,125,7,126,7,
- 119,1,37,0,113,2,124,0,83,0,119,0,41,11,122,238,
- 70,105,103,117,114,101,32,111,117,116,32,119,104,97,116,32,
- 95,95,105,109,112,111,114,116,95,95,32,115,104,111,117,108,
- 100,32,114,101,116,117,114,110,46,10,10,32,32,32,32,84,
- 104,101,32,105,109,112,111,114,116,95,32,112,97,114,97,109,
- 101,116,101,114,32,105,115,32,97,32,99,97,108,108,97,98,
- 108,101,32,119,104,105,99,104,32,116,97,107,101,115,32,116,
- 104,101,32,110,97,109,101,32,111,102,32,109,111,100,117,108,
- 101,32,116,111,10,32,32,32,32,105,109,112,111,114,116,46,
- 32,73,116,32,105,115,32,114,101,113,117,105,114,101,100,32,
- 116,111,32,100,101,99,111,117,112,108,101,32,116,104,101,32,
- 102,117,110,99,116,105,111,110,32,102,114,111,109,32,97,115,
- 115,117,109,105,110,103,32,105,109,112,111,114,116,108,105,98,
- 39,115,10,32,32,32,32,105,109,112,111,114,116,32,105,109,
- 112,108,101,109,101,110,116,97,116,105,111,110,32,105,115,32,
- 100,101,115,105,114,101,100,46,10,10,32,32,32,32,122,8,
- 46,95,95,97,108,108,95,95,122,13,96,96,102,114,111,109,
- 32,108,105,115,116,39,39,122,8,73,116,101,109,32,105,110,
- 32,122,18,32,109,117,115,116,32,98,101,32,115,116,114,44,
- 32,110,111,116,32,250,1,42,218,7,95,95,97,108,108,95,
- 95,84,114,231,0,0,0,114,207,0,0,0,78,41,16,114,
- 217,0,0,0,114,218,0,0,0,114,9,0,0,0,114,219,
- 0,0,0,114,3,0,0,0,114,11,0,0,0,218,16,95,
- 104,97,110,100,108,101,95,102,114,111,109,108,105,115,116,114,
- 234,0,0,0,114,51,0,0,0,114,75,0,0,0,114,225,
- 0,0,0,114,21,0,0,0,114,19,0,0,0,114,106,0,
- 0,0,114,39,0,0,0,114,228,0,0,0,41,8,114,111,
- 0,0,0,218,8,102,114,111,109,108,105,115,116,114,226,0,
- 0,0,114,232,0,0,0,218,1,120,90,5,119,104,101,114,
- 101,90,9,102,114,111,109,95,110,97,109,101,90,3,101,120,
- 99,114,5,0,0,0,114,5,0,0,0,114,6,0,0,0,
- 114,235,0,0,0,29,4,0,0,115,58,0,0,0,8,10,
- 10,1,4,1,12,1,4,2,10,1,8,1,8,255,8,2,
- 14,1,10,1,2,1,6,255,2,128,10,2,14,1,2,1,
- 12,1,2,128,12,1,10,4,16,1,2,255,10,2,2,1,
- 10,128,2,245,4,12,2,248,115,36,0,0,0,193,2,5,
- 65,8,2,193,8,7,65,39,9,193,15,14,65,35,9,193,
- 34,1,65,35,9,193,35,4,65,39,9,193,43,1,65,39,
- 9,114,235,0,0,0,99,1,0,0,0,0,0,0,0,0,
- 0,0,0,3,0,0,0,7,0,0,0,67,0,0,0,115,
- 146,0,0,0,124,0,160,0,100,1,161,1,125,1,124,0,
- 160,0,100,2,161,1,125,2,124,1,100,3,117,1,114,41,
- 124,2,100,3,117,1,114,39,124,1,124,2,106,1,107,3,
- 114,39,116,2,160,3,100,4,124,1,155,2,100,5,124,2,
- 106,1,155,2,100,6,157,5,116,4,100,7,100,8,166,3,
- 1,0,124,1,83,0,124,2,100,3,117,1,114,48,124,2,
- 106,1,83,0,116,2,160,3,100,9,116,4,100,7,100,8,
- 166,3,1,0,124,0,100,10,25,0,125,1,100,11,124,0,
- 118,1,114,71,124,1,160,5,100,12,161,1,100,13,25,0,
- 125,1,124,1,83,0,41,14,122,167,67,97,108,99,117,108,
- 97,116,101,32,119,104,97,116,32,95,95,112,97,99,107,97,
- 103,101,95,95,32,115,104,111,117,108,100,32,98,101,46,10,
- 10,32,32,32,32,95,95,112,97,99,107,97,103,101,95,95,
- 32,105,115,32,110,111,116,32,103,117,97,114,97,110,116,101,
- 101,100,32,116,111,32,98,101,32,100,101,102,105,110,101,100,
- 32,111,114,32,99,111,117,108,100,32,98,101,32,115,101,116,
- 32,116,111,32,78,111,110,101,10,32,32,32,32,116,111,32,
- 114,101,112,114,101,115,101,110,116,32,116,104,97,116,32,105,
- 116,115,32,112,114,111,112,101,114,32,118,97,108,117,101,32,
- 105,115,32,117,110,107,110,111,119,110,46,10,10,32,32,32,
- 32,114,159,0,0,0,114,114,0,0,0,78,122,32,95,95,
- 112,97,99,107,97,103,101,95,95,32,33,61,32,95,95,115,
- 112,101,99,95,95,46,112,97,114,101,110,116,32,40,122,4,
- 32,33,61,32,250,1,41,233,3,0,0,0,41,1,90,10,
- 115,116,97,99,107,108,101,118,101,108,122,89,99,97,110,39,
- 116,32,114,101,115,111,108,118,101,32,112,97,99,107,97,103,
- 101,32,102,114,111,109,32,95,95,115,112,101,99,95,95,32,
- 111,114,32,95,95,112,97,99,107,97,103,101,95,95,44,32,
- 102,97,108,108,105,110,103,32,98,97,99,107,32,111,110,32,
- 95,95,110,97,109,101,95,95,32,97,110,100,32,95,95,112,
- 97,116,104,95,95,114,9,0,0,0,114,155,0,0,0,114,
- 142,0,0,0,114,26,0,0,0,41,6,114,39,0,0,0,
- 114,144,0,0,0,114,102,0,0,0,114,103,0,0,0,114,
- 170,0,0,0,114,143,0,0,0,41,3,218,7,103,108,111,
- 98,97,108,115,114,210,0,0,0,114,110,0,0,0,114,5,
- 0,0,0,114,5,0,0,0,114,6,0,0,0,218,17,95,
- 99,97,108,99,95,95,95,112,97,99,107,97,103,101,95,95,
- 66,4,0,0,115,42,0,0,0,10,7,10,1,8,1,18,
- 1,6,1,2,1,4,255,4,1,6,255,4,2,6,254,4,
- 3,8,1,6,1,6,2,4,2,6,254,8,3,8,1,14,
- 1,4,1,114,18,0,0,0,114,241,0,0,0,114,5,0,
- 0,0,99,5,0,0,0,0,0,0,0,0,0,0,0,9,
- 0,0,0,5,0,0,0,67,0,0,0,115,174,0,0,0,
- 124,4,100,1,107,2,114,9,116,0,124,0,131,1,125,5,
- 110,18,124,1,100,2,117,1,114,15,124,1,110,1,105,0,
- 125,6,116,1,124,6,131,1,125,7,116,0,124,0,124,7,
- 124,4,131,3,125,5,124,3,115,74,124,4,100,1,107,2,
- 114,42,116,0,124,0,160,2,100,3,161,1,100,1,25,0,
- 131,1,83,0,124,0,115,46,124,5,83,0,116,3,124,0,
- 131,1,116,3,124,0,160,2,100,3,161,1,100,1,25,0,
- 131,1,24,0,125,8,116,4,106,5,124,5,106,6,100,2,
- 116,3,124,5,106,6,131,1,124,8,24,0,133,2,25,0,
- 25,0,83,0,116,7,124,5,100,4,131,2,114,85,116,8,
- 124,5,124,3,116,0,131,3,83,0,124,5,83,0,41,5,
- 97,215,1,0,0,73,109,112,111,114,116,32,97,32,109,111,
- 100,117,108,101,46,10,10,32,32,32,32,84,104,101,32,39,
- 103,108,111,98,97,108,115,39,32,97,114,103,117,109,101,110,
- 116,32,105,115,32,117,115,101,100,32,116,111,32,105,110,102,
- 101,114,32,119,104,101,114,101,32,116,104,101,32,105,109,112,
- 111,114,116,32,105,115,32,111,99,99,117,114,114,105,110,103,
- 32,102,114,111,109,10,32,32,32,32,116,111,32,104,97,110,
- 100,108,101,32,114,101,108,97,116,105,118,101,32,105,109,112,
- 111,114,116,115,46,32,84,104,101,32,39,108,111,99,97,108,
- 115,39,32,97,114,103,117,109,101,110,116,32,105,115,32,105,
- 103,110,111,114,101,100,46,32,84,104,101,10,32,32,32,32,
- 39,102,114,111,109,108,105,115,116,39,32,97,114,103,117,109,
- 101,110,116,32,115,112,101,99,105,102,105,101,115,32,119,104,
- 97,116,32,115,104,111,117,108,100,32,101,120,105,115,116,32,
- 97,115,32,97,116,116,114,105,98,117,116,101,115,32,111,110,
- 32,116,104,101,32,109,111,100,117,108,101,10,32,32,32,32,
- 98,101,105,110,103,32,105,109,112,111,114,116,101,100,32,40,
- 101,46,103,46,32,96,96,102,114,111,109,32,109,111,100,117,
- 108,101,32,105,109,112,111,114,116,32,60,102,114,111,109,108,
- 105,115,116,62,96,96,41,46,32,32,84,104,101,32,39,108,
- 101,118,101,108,39,10,32,32,32,32,97,114,103,117,109,101,
- 110,116,32,114,101,112,114,101,115,101,110,116,115,32,116,104,
- 101,32,112,97,99,107,97,103,101,32,108,111,99,97,116,105,
- 111,110,32,116,111,32,105,109,112,111,114,116,32,102,114,111,
- 109,32,105,110,32,97,32,114,101,108,97,116,105,118,101,10,
- 32,32,32,32,105,109,112,111,114,116,32,40,101,46,103,46,
- 32,96,96,102,114,111,109,32,46,46,112,107,103,32,105,109,
- 112,111,114,116,32,109,111,100,96,96,32,119,111,117,108,100,
- 32,104,97,118,101,32,97,32,39,108,101,118,101,108,39,32,
- 111,102,32,50,41,46,10,10,32,32,32,32,114,26,0,0,
- 0,78,114,142,0,0,0,114,155,0,0,0,41,9,114,230,
- 0,0,0,114,241,0,0,0,218,9,112,97,114,116,105,116,
- 105,111,110,114,209,0,0,0,114,19,0,0,0,114,106,0,
- 0,0,114,9,0,0,0,114,11,0,0,0,114,235,0,0,
- 0,41,9,114,21,0,0,0,114,240,0,0,0,218,6,108,
- 111,99,97,108,115,114,236,0,0,0,114,211,0,0,0,114,
- 111,0,0,0,90,8,103,108,111,98,97,108,115,95,114,210,
- 0,0,0,90,7,99,117,116,95,111,102,102,114,5,0,0,
- 0,114,5,0,0,0,114,6,0,0,0,218,10,95,95,105,
- 109,112,111,114,116,95,95,93,4,0,0,115,30,0,0,0,
- 8,11,10,1,16,2,8,1,12,1,4,1,8,3,18,1,
- 4,1,4,1,26,4,30,3,10,1,12,1,4,2,114,18,
- 0,0,0,114,244,0,0,0,99,1,0,0,0,0,0,0,
- 0,0,0,0,0,2,0,0,0,3,0,0,0,67,0,0,
- 0,115,38,0,0,0,116,0,160,1,124,0,161,1,125,1,
- 124,1,100,0,117,0,114,15,116,2,100,1,124,0,23,0,
- 131,1,130,1,116,3,124,1,131,1,83,0,41,2,78,122,
- 25,110,111,32,98,117,105,108,116,45,105,110,32,109,111,100,
- 117,108,101,32,110,97,109,101,100,32,41,4,114,176,0,0,
- 0,114,184,0,0,0,114,88,0,0,0,114,174,0,0,0,
- 41,2,114,21,0,0,0,114,110,0,0,0,114,5,0,0,
- 0,114,5,0,0,0,114,6,0,0,0,218,18,95,98,117,
- 105,108,116,105,110,95,102,114,111,109,95,110,97,109,101,130,
- 4,0,0,115,8,0,0,0,10,1,8,1,12,1,8,1,
- 114,18,0,0,0,114,245,0,0,0,99,2,0,0,0,0,
- 0,0,0,0,0,0,0,10,0,0,0,5,0,0,0,67,
- 0,0,0,115,166,0,0,0,124,1,97,0,124,0,97,1,
- 116,2,116,1,131,1,125,2,116,1,106,3,160,4,161,0,
- 68,0,93,36,92,2,125,3,125,4,116,5,124,4,124,2,
- 131,2,114,49,124,3,116,1,106,6,118,0,114,30,116,7,
- 125,5,110,9,116,0,160,8,124,3,161,1,114,38,116,9,
- 125,5,110,1,113,13,116,10,124,4,124,5,131,2,125,6,
- 116,11,124,6,124,4,131,2,1,0,113,13,116,1,106,3,
- 116,12,25,0,125,7,100,1,68,0,93,23,125,8,124,8,
- 116,1,106,3,118,1,114,69,116,13,124,8,131,1,125,9,
- 110,5,116,1,106,3,124,8,25,0,125,9,116,14,124,7,
- 124,8,124,9,131,3,1,0,113,57,100,2,83,0,41,3,
- 122,250,83,101,116,117,112,32,105,109,112,111,114,116,108,105,
- 98,32,98,121,32,105,109,112,111,114,116,105,110,103,32,110,
- 101,101,100,101,100,32,98,117,105,108,116,45,105,110,32,109,
- 111,100,117,108,101,115,32,97,110,100,32,105,110,106,101,99,
- 116,105,110,103,32,116,104,101,109,10,32,32,32,32,105,110,
- 116,111,32,116,104,101,32,103,108,111,98,97,108,32,110,97,
- 109,101,115,112,97,99,101,46,10,10,32,32,32,32,65,115,
- 32,115,121,115,32,105,115,32,110,101,101,100,101,100,32,102,
- 111,114,32,115,121,115,46,109,111,100,117,108,101,115,32,97,
- 99,99,101,115,115,32,97,110,100,32,95,105,109,112,32,105,
- 115,32,110,101,101,100,101,100,32,116,111,32,108,111,97,100,
- 32,98,117,105,108,116,45,105,110,10,32,32,32,32,109,111,
- 100,117,108,101,115,44,32,116,104,111,115,101,32,116,119,111,
- 32,109,111,100,117,108,101,115,32,109,117,115,116,32,98,101,
- 32,101,120,112,108,105,99,105,116,108,121,32,112,97,115,115,
- 101,100,32,105,110,46,10,10,32,32,32,32,41,3,114,27,
- 0,0,0,114,102,0,0,0,114,72,0,0,0,78,41,15,
- 114,65,0,0,0,114,19,0,0,0,114,3,0,0,0,114,
- 106,0,0,0,218,5,105,116,101,109,115,114,217,0,0,0,
- 114,87,0,0,0,114,176,0,0,0,114,99,0,0,0,114,
- 194,0,0,0,114,156,0,0,0,114,162,0,0,0,114,9,
- 0,0,0,114,245,0,0,0,114,12,0,0,0,41,10,218,
- 10,115,121,115,95,109,111,100,117,108,101,218,11,95,105,109,
- 112,95,109,111,100,117,108,101,90,11,109,111,100,117,108,101,
- 95,116,121,112,101,114,21,0,0,0,114,111,0,0,0,114,
- 123,0,0,0,114,110,0,0,0,90,11,115,101,108,102,95,
- 109,111,100,117,108,101,90,12,98,117,105,108,116,105,110,95,
- 110,97,109,101,90,14,98,117,105,108,116,105,110,95,109,111,
- 100,117,108,101,114,5,0,0,0,114,5,0,0,0,114,6,
- 0,0,0,218,6,95,115,101,116,117,112,137,4,0,0,115,
- 40,0,0,0,4,9,4,1,8,3,18,1,10,1,10,1,
- 6,1,10,1,6,1,2,2,10,1,10,1,2,128,10,3,
- 8,1,10,1,10,1,10,2,14,1,4,251,114,18,0,0,
- 0,114,249,0,0,0,99,2,0,0,0,0,0,0,0,0,
- 0,0,0,2,0,0,0,3,0,0,0,67,0,0,0,115,
- 38,0,0,0,116,0,124,0,124,1,131,2,1,0,116,1,
- 106,2,160,3,116,4,161,1,1,0,116,1,106,2,160,3,
- 116,5,161,1,1,0,100,1,83,0,41,2,122,48,73,110,
- 115,116,97,108,108,32,105,109,112,111,114,116,101,114,115,32,
- 102,111,114,32,98,117,105,108,116,105,110,32,97,110,100,32,
- 102,114,111,122,101,110,32,109,111,100,117,108,101,115,78,41,
- 6,114,249,0,0,0,114,19,0,0,0,114,215,0,0,0,
- 114,133,0,0,0,114,176,0,0,0,114,194,0,0,0,41,
- 2,114,247,0,0,0,114,248,0,0,0,114,5,0,0,0,
- 114,5,0,0,0,114,6,0,0,0,218,8,95,105,110,115,
- 116,97,108,108,172,4,0,0,115,6,0,0,0,10,2,12,
- 2,16,1,114,18,0,0,0,114,250,0,0,0,99,0,0,
- 0,0,0,0,0,0,0,0,0,0,1,0,0,0,4,0,
- 0,0,67,0,0,0,115,32,0,0,0,100,1,100,2,108,
- 0,125,0,124,0,97,1,124,0,160,2,116,3,106,4,116,
- 5,25,0,161,1,1,0,100,2,83,0,41,3,122,57,73,
- 110,115,116,97,108,108,32,105,109,112,111,114,116,101,114,115,
- 32,116,104,97,116,32,114,101,113,117,105,114,101,32,101,120,
- 116,101,114,110,97,108,32,102,105,108,101,115,121,115,116,101,
- 109,32,97,99,99,101,115,115,114,26,0,0,0,78,41,6,
- 218,26,95,102,114,111,122,101,110,95,105,109,112,111,114,116,
- 108,105,98,95,101,120,116,101,114,110,97,108,114,140,0,0,
- 0,114,250,0,0,0,114,19,0,0,0,114,106,0,0,0,
- 114,9,0,0,0,41,1,114,251,0,0,0,114,5,0,0,
- 0,114,5,0,0,0,114,6,0,0,0,218,27,95,105,110,
- 115,116,97,108,108,95,101,120,116,101,114,110,97,108,95,105,
- 109,112,111,114,116,101,114,115,180,4,0,0,115,6,0,0,
- 0,8,3,4,1,20,1,114,18,0,0,0,114,252,0,0,
- 0,114,191,0,0,0,114,0,0,0,0,114,25,0,0,0,
- 41,4,78,78,114,5,0,0,0,114,26,0,0,0,41,54,
- 114,10,0,0,0,114,7,0,0,0,114,27,0,0,0,114,
- 102,0,0,0,114,72,0,0,0,114,140,0,0,0,114,17,
- 0,0,0,114,22,0,0,0,114,67,0,0,0,114,38,0,
- 0,0,114,48,0,0,0,114,23,0,0,0,114,24,0,0,
- 0,114,56,0,0,0,114,58,0,0,0,114,61,0,0,0,
- 114,73,0,0,0,114,75,0,0,0,114,84,0,0,0,114,
- 96,0,0,0,114,101,0,0,0,114,112,0,0,0,114,125,
- 0,0,0,114,126,0,0,0,114,105,0,0,0,114,156,0,
- 0,0,114,162,0,0,0,114,166,0,0,0,114,120,0,0,
- 0,114,107,0,0,0,114,173,0,0,0,114,174,0,0,0,
- 114,108,0,0,0,114,176,0,0,0,114,194,0,0,0,114,
- 201,0,0,0,114,212,0,0,0,114,214,0,0,0,114,216,
- 0,0,0,114,222,0,0,0,90,15,95,69,82,82,95,77,
- 83,71,95,80,82,69,70,73,88,114,224,0,0,0,114,227,
- 0,0,0,218,6,111,98,106,101,99,116,114,228,0,0,0,
- 114,229,0,0,0,114,230,0,0,0,114,235,0,0,0,114,
- 241,0,0,0,114,244,0,0,0,114,245,0,0,0,114,249,
- 0,0,0,114,250,0,0,0,114,252,0,0,0,114,5,0,
- 0,0,114,5,0,0,0,114,5,0,0,0,114,6,0,0,
- 0,218,8,60,109,111,100,117,108,101,62,1,0,0,0,115,
- 104,0,0,0,4,0,8,22,4,9,4,1,4,1,4,3,
- 8,3,8,8,4,8,4,2,16,3,14,4,14,77,14,21,
- 8,16,8,37,8,17,14,11,8,8,8,11,8,12,8,19,
- 14,26,16,101,10,26,14,45,8,72,8,17,8,17,8,30,
- 8,36,8,45,14,15,14,80,14,85,8,13,8,9,10,10,
- 8,47,4,16,8,1,8,2,6,32,8,3,10,16,14,15,
- 8,37,10,27,8,37,8,7,8,35,12,8,114,18,0,0,
- 0,
+ 0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,67,
+ 0,0,0,115,110,0,0,0,116,0,124,0,116,1,131,2,
+ 115,14,116,2,100,1,160,3,116,4,124,0,131,1,161,1,
+ 131,1,130,1,124,2,100,2,107,0,114,22,116,5,100,3,
+ 131,1,130,1,124,2,100,2,107,4,114,41,116,0,124,1,
+ 116,1,131,2,115,35,116,2,100,4,131,1,130,1,124,1,
+ 115,41,116,6,100,5,131,1,130,1,124,0,115,53,124,2,
+ 100,2,107,2,114,51,116,5,100,6,131,1,130,1,100,7,
+ 83,0,100,7,83,0,41,8,122,28,86,101,114,105,102,121,
+ 32,97,114,103,117,109,101,110,116,115,32,97,114,101,32,34,
+ 115,97,110,101,34,46,122,31,109,111,100,117,108,101,32,110,
+ 97,109,101,32,109,117,115,116,32,98,101,32,115,116,114,44,
+ 32,110,111,116,32,123,125,114,26,0,0,0,122,18,108,101,
+ 118,101,108,32,109,117,115,116,32,98,101,32,62,61,32,48,
+ 122,31,95,95,112,97,99,107,97,103,101,95,95,32,110,111,
+ 116,32,115,101,116,32,116,111,32,97,32,115,116,114,105,110,
+ 103,122,54,97,116,116,101,109,112,116,101,100,32,114,101,108,
+ 97,116,105,118,101,32,105,109,112,111,114,116,32,119,105,116,
+ 104,32,110,111,32,107,110,111,119,110,32,112,97,114,101,110,
+ 116,32,112,97,99,107,97,103,101,122,17,69,109,112,116,121,
+ 32,109,111,100,117,108,101,32,110,97,109,101,78,41,7,218,
+ 10,105,115,105,110,115,116,97,110,99,101,218,3,115,116,114,
+ 218,9,84,121,112,101,69,114,114,111,114,114,51,0,0,0,
+ 114,3,0,0,0,218,10,86,97,108,117,101,69,114,114,111,
+ 114,114,88,0,0,0,169,3,114,21,0,0,0,114,210,0,
+ 0,0,114,211,0,0,0,114,5,0,0,0,114,5,0,0,
+ 0,114,6,0,0,0,218,13,95,115,97,110,105,116,121,95,
+ 99,104,101,99,107,200,3,0,0,115,24,0,0,0,10,2,
+ 18,1,8,1,8,1,8,1,10,1,8,1,4,1,8,1,
+ 12,2,8,1,8,255,114,18,0,0,0,114,222,0,0,0,
+ 122,16,78,111,32,109,111,100,117,108,101,32,110,97,109,101,
+ 100,32,122,4,123,33,114,125,99,2,0,0,0,0,0,0,
+ 0,0,0,0,0,8,0,0,0,67,0,0,0,115,20,1,
+ 0,0,100,0,125,2,124,0,160,0,100,1,161,1,100,2,
+ 25,0,125,3,124,3,114,64,124,3,116,1,106,2,118,1,
+ 114,21,116,3,124,1,124,3,131,2,1,0,124,0,116,1,
+ 106,2,118,0,114,31,116,1,106,2,124,0,25,0,83,0,
+ 116,1,106,2,124,3,25,0,125,4,9,0,124,4,106,4,
+ 125,2,110,23,35,0,4,0,116,5,121,137,1,0,1,0,
+ 1,0,116,6,100,3,23,0,160,7,124,0,124,3,161,2,
+ 125,5,116,8,124,5,124,0,100,4,141,2,100,0,130,2,
+ 37,0,116,9,124,0,124,2,131,2,125,6,124,6,100,0,
+ 117,0,114,82,116,8,116,6,160,7,124,0,161,1,124,0,
+ 100,4,141,2,130,1,116,10,124,6,131,1,125,7,124,3,
+ 114,134,116,1,106,2,124,3,25,0,125,4,124,0,160,0,
+ 100,1,161,1,100,5,25,0,125,8,9,0,116,11,124,4,
+ 124,8,124,7,131,3,1,0,124,7,83,0,35,0,4,0,
+ 116,5,121,136,1,0,1,0,1,0,100,6,124,3,155,2,
+ 100,7,124,8,155,2,157,4,125,5,116,12,160,13,124,5,
+ 116,14,161,2,1,0,89,0,124,7,83,0,37,0,124,7,
+ 83,0,119,0,119,0,41,8,78,114,142,0,0,0,114,26,
+ 0,0,0,122,23,59,32,123,33,114,125,32,105,115,32,110,
+ 111,116,32,97,32,112,97,99,107,97,103,101,114,20,0,0,
+ 0,233,2,0,0,0,122,27,67,97,110,110,111,116,32,115,
+ 101,116,32,97,110,32,97,116,116,114,105,98,117,116,101,32,
+ 111,110,32,122,18,32,102,111,114,32,99,104,105,108,100,32,
+ 109,111,100,117,108,101,32,41,15,114,143,0,0,0,114,19,
+ 0,0,0,114,106,0,0,0,114,75,0,0,0,114,155,0,
+ 0,0,114,2,0,0,0,218,8,95,69,82,82,95,77,83,
+ 71,114,51,0,0,0,218,19,77,111,100,117,108,101,78,111,
+ 116,70,111,117,110,100,69,114,114,111,114,114,216,0,0,0,
+ 114,174,0,0,0,114,12,0,0,0,114,102,0,0,0,114,
+ 103,0,0,0,114,170,0,0,0,41,9,114,21,0,0,0,
+ 218,7,105,109,112,111,114,116,95,114,182,0,0,0,114,144,
+ 0,0,0,90,13,112,97,114,101,110,116,95,109,111,100,117,
+ 108,101,114,109,0,0,0,114,110,0,0,0,114,111,0,0,
+ 0,90,5,99,104,105,108,100,114,5,0,0,0,114,5,0,
+ 0,0,114,6,0,0,0,218,23,95,102,105,110,100,95,97,
+ 110,100,95,108,111,97,100,95,117,110,108,111,99,107,101,100,
+ 219,3,0,0,115,68,0,0,0,4,1,14,1,4,1,10,
+ 1,10,1,10,2,10,1,10,1,2,1,8,1,2,128,12,
+ 1,16,1,14,1,2,128,10,1,8,1,18,1,8,2,4,
+ 1,10,2,14,1,2,1,12,1,4,4,2,128,12,253,16,
+ 1,14,1,4,1,2,128,4,0,2,253,2,242,115,31,0,
+ 0,0,165,3,41,0,169,22,63,7,193,37,6,65,45,0,
+ 193,45,21,66,5,7,194,8,1,66,5,7,194,9,1,63,
+ 7,114,227,0,0,0,99,2,0,0,0,0,0,0,0,0,
+ 0,0,0,9,0,0,0,67,0,0,0,115,132,0,0,0,
+ 116,0,124,0,131,1,53,0,1,0,116,1,106,2,160,3,
+ 124,0,116,4,161,2,125,2,124,2,116,4,117,0,114,27,
+ 116,5,124,0,124,1,131,2,2,0,100,1,4,0,4,0,
+ 131,3,1,0,83,0,9,0,100,1,4,0,4,0,131,3,
+ 1,0,110,11,35,0,49,0,115,39,119,4,37,0,1,0,
+ 1,0,1,0,89,0,1,0,1,0,124,2,100,1,117,0,
+ 114,60,100,2,160,6,124,0,161,1,125,3,116,7,124,3,
+ 124,0,100,3,141,2,130,1,116,8,124,0,131,1,1,0,
+ 124,2,83,0,41,4,122,25,70,105,110,100,32,97,110,100,
+ 32,108,111,97,100,32,116,104,101,32,109,111,100,117,108,101,
+ 46,78,122,40,105,109,112,111,114,116,32,111,102,32,123,125,
+ 32,104,97,108,116,101,100,59,32,78,111,110,101,32,105,110,
+ 32,115,121,115,46,109,111,100,117,108,101,115,114,20,0,0,
+ 0,41,9,114,58,0,0,0,114,19,0,0,0,114,106,0,
+ 0,0,114,39,0,0,0,218,14,95,78,69,69,68,83,95,
+ 76,79,65,68,73,78,71,114,227,0,0,0,114,51,0,0,
+ 0,114,225,0,0,0,114,73,0,0,0,41,4,114,21,0,
+ 0,0,114,226,0,0,0,114,111,0,0,0,114,83,0,0,
+ 0,114,5,0,0,0,114,5,0,0,0,114,6,0,0,0,
+ 218,14,95,102,105,110,100,95,97,110,100,95,108,111,97,100,
+ 254,3,0,0,115,30,0,0,0,10,2,14,1,8,1,8,
+ 1,14,253,2,2,12,254,22,128,8,5,2,1,6,1,2,
+ 255,12,2,8,2,4,1,115,12,0,0,0,132,16,34,3,
+ 162,4,38,11,167,3,38,11,114,229,0,0,0,114,26,0,
+ 0,0,99,3,0,0,0,0,0,0,0,0,0,0,0,4,
+ 0,0,0,67,0,0,0,115,42,0,0,0,116,0,124,0,
+ 124,1,124,2,131,3,1,0,124,2,100,1,107,4,114,16,
+ 116,1,124,0,124,1,124,2,131,3,125,0,116,2,124,0,
+ 116,3,131,2,83,0,41,3,97,50,1,0,0,73,109,112,
+ 111,114,116,32,97,110,100,32,114,101,116,117,114,110,32,116,
+ 104,101,32,109,111,100,117,108,101,32,98,97,115,101,100,32,
+ 111,110,32,105,116,115,32,110,97,109,101,44,32,116,104,101,
+ 32,112,97,99,107,97,103,101,32,116,104,101,32,99,97,108,
+ 108,32,105,115,10,32,32,32,32,98,101,105,110,103,32,109,
+ 97,100,101,32,102,114,111,109,44,32,97,110,100,32,116,104,
+ 101,32,108,101,118,101,108,32,97,100,106,117,115,116,109,101,
+ 110,116,46,10,10,32,32,32,32,84,104,105,115,32,102,117,
+ 110,99,116,105,111,110,32,114,101,112,114,101,115,101,110,116,
+ 115,32,116,104,101,32,103,114,101,97,116,101,115,116,32,99,
+ 111,109,109,111,110,32,100,101,110,111,109,105,110,97,116,111,
+ 114,32,111,102,32,102,117,110,99,116,105,111,110,97,108,105,
+ 116,121,10,32,32,32,32,98,101,116,119,101,101,110,32,105,
+ 109,112,111,114,116,95,109,111,100,117,108,101,32,97,110,100,
+ 32,95,95,105,109,112,111,114,116,95,95,46,32,84,104,105,
+ 115,32,105,110,99,108,117,100,101,115,32,115,101,116,116,105,
+ 110,103,32,95,95,112,97,99,107,97,103,101,95,95,32,105,
+ 102,10,32,32,32,32,116,104,101,32,108,111,97,100,101,114,
+ 32,100,105,100,32,110,111,116,46,10,10,32,32,32,32,114,
+ 26,0,0,0,78,41,4,114,222,0,0,0,114,212,0,0,
+ 0,114,229,0,0,0,218,11,95,103,99,100,95,105,109,112,
+ 111,114,116,114,221,0,0,0,114,5,0,0,0,114,5,0,
+ 0,0,114,6,0,0,0,114,230,0,0,0,14,4,0,0,
+ 115,8,0,0,0,12,9,8,1,12,1,10,1,114,18,0,
+ 0,0,114,230,0,0,0,169,1,218,9,114,101,99,117,114,
+ 115,105,118,101,99,3,0,0,0,0,0,0,0,1,0,0,
+ 0,9,0,0,0,67,0,0,0,115,216,0,0,0,124,1,
+ 68,0,93,102,125,4,116,0,124,4,116,1,131,2,115,32,
+ 124,3,114,17,124,0,106,2,100,1,23,0,125,5,110,2,
+ 100,2,125,5,116,3,100,3,124,5,155,0,100,4,116,4,
+ 124,4,131,1,106,2,155,0,157,4,131,1,130,1,124,4,
+ 100,5,107,2,114,53,124,3,115,52,116,5,124,0,100,6,
+ 131,2,114,52,116,6,124,0,124,0,106,7,124,2,100,7,
+ 100,8,141,4,1,0,113,2,116,5,124,0,124,4,131,2,
+ 115,104,100,9,160,8,124,0,106,2,124,4,161,2,125,6,
+ 9,0,116,9,124,2,124,6,131,2,1,0,113,2,35,0,
+ 4,0,116,10,121,107,1,0,125,7,1,0,124,7,106,11,
+ 124,6,107,2,114,98,116,12,106,13,160,14,124,6,116,15,
+ 161,2,100,10,117,1,114,98,89,0,100,10,125,7,126,7,
+ 113,2,130,0,100,10,125,7,126,7,119,1,37,0,113,2,
+ 124,0,83,0,119,0,41,11,122,238,70,105,103,117,114,101,
+ 32,111,117,116,32,119,104,97,116,32,95,95,105,109,112,111,
+ 114,116,95,95,32,115,104,111,117,108,100,32,114,101,116,117,
+ 114,110,46,10,10,32,32,32,32,84,104,101,32,105,109,112,
+ 111,114,116,95,32,112,97,114,97,109,101,116,101,114,32,105,
+ 115,32,97,32,99,97,108,108,97,98,108,101,32,119,104,105,
+ 99,104,32,116,97,107,101,115,32,116,104,101,32,110,97,109,
+ 101,32,111,102,32,109,111,100,117,108,101,32,116,111,10,32,
+ 32,32,32,105,109,112,111,114,116,46,32,73,116,32,105,115,
+ 32,114,101,113,117,105,114,101,100,32,116,111,32,100,101,99,
+ 111,117,112,108,101,32,116,104,101,32,102,117,110,99,116,105,
+ 111,110,32,102,114,111,109,32,97,115,115,117,109,105,110,103,
+ 32,105,109,112,111,114,116,108,105,98,39,115,10,32,32,32,
+ 32,105,109,112,111,114,116,32,105,109,112,108,101,109,101,110,
+ 116,97,116,105,111,110,32,105,115,32,100,101,115,105,114,101,
+ 100,46,10,10,32,32,32,32,122,8,46,95,95,97,108,108,
+ 95,95,122,13,96,96,102,114,111,109,32,108,105,115,116,39,
+ 39,122,8,73,116,101,109,32,105,110,32,122,18,32,109,117,
+ 115,116,32,98,101,32,115,116,114,44,32,110,111,116,32,250,
+ 1,42,218,7,95,95,97,108,108,95,95,84,114,231,0,0,
+ 0,114,207,0,0,0,78,41,16,114,217,0,0,0,114,218,
+ 0,0,0,114,9,0,0,0,114,219,0,0,0,114,3,0,
+ 0,0,114,11,0,0,0,218,16,95,104,97,110,100,108,101,
+ 95,102,114,111,109,108,105,115,116,114,234,0,0,0,114,51,
+ 0,0,0,114,75,0,0,0,114,225,0,0,0,114,21,0,
+ 0,0,114,19,0,0,0,114,106,0,0,0,114,39,0,0,
+ 0,114,228,0,0,0,41,8,114,111,0,0,0,218,8,102,
+ 114,111,109,108,105,115,116,114,226,0,0,0,114,232,0,0,
+ 0,218,1,120,90,5,119,104,101,114,101,90,9,102,114,111,
+ 109,95,110,97,109,101,90,3,101,120,99,114,5,0,0,0,
+ 114,5,0,0,0,114,6,0,0,0,114,235,0,0,0,29,
+ 4,0,0,115,58,0,0,0,8,10,10,1,4,1,12,1,
+ 4,2,10,1,8,1,8,255,8,2,14,1,10,1,2,1,
+ 6,255,2,128,10,2,14,1,2,1,12,1,2,128,12,1,
+ 10,4,16,1,2,255,10,2,2,1,10,128,2,245,4,12,
+ 2,248,115,36,0,0,0,193,2,5,65,8,2,193,8,7,
+ 65,39,9,193,15,14,65,35,9,193,34,1,65,35,9,193,
+ 35,4,65,39,9,193,43,1,65,39,9,114,235,0,0,0,
+ 99,1,0,0,0,0,0,0,0,0,0,0,0,7,0,0,
+ 0,67,0,0,0,115,146,0,0,0,124,0,160,0,100,1,
+ 161,1,125,1,124,0,160,0,100,2,161,1,125,2,124,1,
+ 100,3,117,1,114,41,124,2,100,3,117,1,114,39,124,1,
+ 124,2,106,1,107,3,114,39,116,2,160,3,100,4,124,1,
+ 155,2,100,5,124,2,106,1,155,2,100,6,157,5,116,4,
+ 100,7,100,8,166,3,1,0,124,1,83,0,124,2,100,3,
+ 117,1,114,48,124,2,106,1,83,0,116,2,160,3,100,9,
+ 116,4,100,7,100,8,166,3,1,0,124,0,100,10,25,0,
+ 125,1,100,11,124,0,118,1,114,71,124,1,160,5,100,12,
+ 161,1,100,13,25,0,125,1,124,1,83,0,41,14,122,167,
+ 67,97,108,99,117,108,97,116,101,32,119,104,97,116,32,95,
+ 95,112,97,99,107,97,103,101,95,95,32,115,104,111,117,108,
+ 100,32,98,101,46,10,10,32,32,32,32,95,95,112,97,99,
+ 107,97,103,101,95,95,32,105,115,32,110,111,116,32,103,117,
+ 97,114,97,110,116,101,101,100,32,116,111,32,98,101,32,100,
+ 101,102,105,110,101,100,32,111,114,32,99,111,117,108,100,32,
+ 98,101,32,115,101,116,32,116,111,32,78,111,110,101,10,32,
+ 32,32,32,116,111,32,114,101,112,114,101,115,101,110,116,32,
+ 116,104,97,116,32,105,116,115,32,112,114,111,112,101,114,32,
+ 118,97,108,117,101,32,105,115,32,117,110,107,110,111,119,110,
+ 46,10,10,32,32,32,32,114,159,0,0,0,114,114,0,0,
+ 0,78,122,32,95,95,112,97,99,107,97,103,101,95,95,32,
+ 33,61,32,95,95,115,112,101,99,95,95,46,112,97,114,101,
+ 110,116,32,40,122,4,32,33,61,32,250,1,41,233,3,0,
+ 0,0,41,1,90,10,115,116,97,99,107,108,101,118,101,108,
+ 122,89,99,97,110,39,116,32,114,101,115,111,108,118,101,32,
+ 112,97,99,107,97,103,101,32,102,114,111,109,32,95,95,115,
+ 112,101,99,95,95,32,111,114,32,95,95,112,97,99,107,97,
+ 103,101,95,95,44,32,102,97,108,108,105,110,103,32,98,97,
+ 99,107,32,111,110,32,95,95,110,97,109,101,95,95,32,97,
+ 110,100,32,95,95,112,97,116,104,95,95,114,9,0,0,0,
+ 114,155,0,0,0,114,142,0,0,0,114,26,0,0,0,41,
+ 6,114,39,0,0,0,114,144,0,0,0,114,102,0,0,0,
+ 114,103,0,0,0,114,170,0,0,0,114,143,0,0,0,41,
+ 3,218,7,103,108,111,98,97,108,115,114,210,0,0,0,114,
+ 110,0,0,0,114,5,0,0,0,114,5,0,0,0,114,6,
+ 0,0,0,218,17,95,99,97,108,99,95,95,95,112,97,99,
+ 107,97,103,101,95,95,66,4,0,0,115,42,0,0,0,10,
+ 7,10,1,8,1,18,1,6,1,2,1,4,255,4,1,6,
+ 255,4,2,6,254,4,3,8,1,6,1,6,2,4,2,6,
+ 254,8,3,8,1,14,1,4,1,114,18,0,0,0,114,241,
+ 0,0,0,114,5,0,0,0,99,5,0,0,0,0,0,0,
+ 0,0,0,0,0,5,0,0,0,67,0,0,0,115,174,0,
+ 0,0,124,4,100,1,107,2,114,9,116,0,124,0,131,1,
+ 125,5,110,18,124,1,100,2,117,1,114,15,124,1,110,1,
+ 105,0,125,6,116,1,124,6,131,1,125,7,116,0,124,0,
+ 124,7,124,4,131,3,125,5,124,3,115,74,124,4,100,1,
+ 107,2,114,42,116,0,124,0,160,2,100,3,161,1,100,1,
+ 25,0,131,1,83,0,124,0,115,46,124,5,83,0,116,3,
+ 124,0,131,1,116,3,124,0,160,2,100,3,161,1,100,1,
+ 25,0,131,1,24,0,125,8,116,4,106,5,124,5,106,6,
+ 100,2,116,3,124,5,106,6,131,1,124,8,24,0,133,2,
+ 25,0,25,0,83,0,116,7,124,5,100,4,131,2,114,85,
+ 116,8,124,5,124,3,116,0,131,3,83,0,124,5,83,0,
+ 41,5,97,215,1,0,0,73,109,112,111,114,116,32,97,32,
+ 109,111,100,117,108,101,46,10,10,32,32,32,32,84,104,101,
+ 32,39,103,108,111,98,97,108,115,39,32,97,114,103,117,109,
+ 101,110,116,32,105,115,32,117,115,101,100,32,116,111,32,105,
+ 110,102,101,114,32,119,104,101,114,101,32,116,104,101,32,105,
+ 109,112,111,114,116,32,105,115,32,111,99,99,117,114,114,105,
+ 110,103,32,102,114,111,109,10,32,32,32,32,116,111,32,104,
+ 97,110,100,108,101,32,114,101,108,97,116,105,118,101,32,105,
+ 109,112,111,114,116,115,46,32,84,104,101,32,39,108,111,99,
+ 97,108,115,39,32,97,114,103,117,109,101,110,116,32,105,115,
+ 32,105,103,110,111,114,101,100,46,32,84,104,101,10,32,32,
+ 32,32,39,102,114,111,109,108,105,115,116,39,32,97,114,103,
+ 117,109,101,110,116,32,115,112,101,99,105,102,105,101,115,32,
+ 119,104,97,116,32,115,104,111,117,108,100,32,101,120,105,115,
+ 116,32,97,115,32,97,116,116,114,105,98,117,116,101,115,32,
+ 111,110,32,116,104,101,32,109,111,100,117,108,101,10,32,32,
+ 32,32,98,101,105,110,103,32,105,109,112,111,114,116,101,100,
+ 32,40,101,46,103,46,32,96,96,102,114,111,109,32,109,111,
+ 100,117,108,101,32,105,109,112,111,114,116,32,60,102,114,111,
+ 109,108,105,115,116,62,96,96,41,46,32,32,84,104,101,32,
+ 39,108,101,118,101,108,39,10,32,32,32,32,97,114,103,117,
+ 109,101,110,116,32,114,101,112,114,101,115,101,110,116,115,32,
+ 116,104,101,32,112,97,99,107,97,103,101,32,108,111,99,97,
+ 116,105,111,110,32,116,111,32,105,109,112,111,114,116,32,102,
+ 114,111,109,32,105,110,32,97,32,114,101,108,97,116,105,118,
+ 101,10,32,32,32,32,105,109,112,111,114,116,32,40,101,46,
+ 103,46,32,96,96,102,114,111,109,32,46,46,112,107,103,32,
+ 105,109,112,111,114,116,32,109,111,100,96,96,32,119,111,117,
+ 108,100,32,104,97,118,101,32,97,32,39,108,101,118,101,108,
+ 39,32,111,102,32,50,41,46,10,10,32,32,32,32,114,26,
+ 0,0,0,78,114,142,0,0,0,114,155,0,0,0,41,9,
+ 114,230,0,0,0,114,241,0,0,0,218,9,112,97,114,116,
+ 105,116,105,111,110,114,209,0,0,0,114,19,0,0,0,114,
+ 106,0,0,0,114,9,0,0,0,114,11,0,0,0,114,235,
+ 0,0,0,41,9,114,21,0,0,0,114,240,0,0,0,218,
+ 6,108,111,99,97,108,115,114,236,0,0,0,114,211,0,0,
+ 0,114,111,0,0,0,90,8,103,108,111,98,97,108,115,95,
+ 114,210,0,0,0,90,7,99,117,116,95,111,102,102,114,5,
+ 0,0,0,114,5,0,0,0,114,6,0,0,0,218,10,95,
+ 95,105,109,112,111,114,116,95,95,93,4,0,0,115,30,0,
+ 0,0,8,11,10,1,16,2,8,1,12,1,4,1,8,3,
+ 18,1,4,1,4,1,26,4,30,3,10,1,12,1,4,2,
+ 114,18,0,0,0,114,244,0,0,0,99,1,0,0,0,0,
+ 0,0,0,0,0,0,0,3,0,0,0,67,0,0,0,115,
+ 38,0,0,0,116,0,160,1,124,0,161,1,125,1,124,1,
+ 100,0,117,0,114,15,116,2,100,1,124,0,23,0,131,1,
+ 130,1,116,3,124,1,131,1,83,0,41,2,78,122,25,110,
+ 111,32,98,117,105,108,116,45,105,110,32,109,111,100,117,108,
+ 101,32,110,97,109,101,100,32,41,4,114,176,0,0,0,114,
+ 184,0,0,0,114,88,0,0,0,114,174,0,0,0,41,2,
+ 114,21,0,0,0,114,110,0,0,0,114,5,0,0,0,114,
+ 5,0,0,0,114,6,0,0,0,218,18,95,98,117,105,108,
+ 116,105,110,95,102,114,111,109,95,110,97,109,101,130,4,0,
+ 0,115,8,0,0,0,10,1,8,1,12,1,8,1,114,18,
+ 0,0,0,114,245,0,0,0,99,2,0,0,0,0,0,0,
+ 0,0,0,0,0,5,0,0,0,67,0,0,0,115,166,0,
+ 0,0,124,1,97,0,124,0,97,1,116,2,116,1,131,1,
+ 125,2,116,1,106,3,160,4,161,0,68,0,93,36,92,2,
+ 125,3,125,4,116,5,124,4,124,2,131,2,114,49,124,3,
+ 116,1,106,6,118,0,114,30,116,7,125,5,110,9,116,0,
+ 160,8,124,3,161,1,114,38,116,9,125,5,110,1,113,13,
+ 116,10,124,4,124,5,131,2,125,6,116,11,124,6,124,4,
+ 131,2,1,0,113,13,116,1,106,3,116,12,25,0,125,7,
+ 100,1,68,0,93,23,125,8,124,8,116,1,106,3,118,1,
+ 114,69,116,13,124,8,131,1,125,9,110,5,116,1,106,3,
+ 124,8,25,0,125,9,116,14,124,7,124,8,124,9,131,3,
+ 1,0,113,57,100,2,83,0,41,3,122,250,83,101,116,117,
+ 112,32,105,109,112,111,114,116,108,105,98,32,98,121,32,105,
+ 109,112,111,114,116,105,110,103,32,110,101,101,100,101,100,32,
+ 98,117,105,108,116,45,105,110,32,109,111,100,117,108,101,115,
+ 32,97,110,100,32,105,110,106,101,99,116,105,110,103,32,116,
+ 104,101,109,10,32,32,32,32,105,110,116,111,32,116,104,101,
+ 32,103,108,111,98,97,108,32,110,97,109,101,115,112,97,99,
+ 101,46,10,10,32,32,32,32,65,115,32,115,121,115,32,105,
+ 115,32,110,101,101,100,101,100,32,102,111,114,32,115,121,115,
+ 46,109,111,100,117,108,101,115,32,97,99,99,101,115,115,32,
+ 97,110,100,32,95,105,109,112,32,105,115,32,110,101,101,100,
+ 101,100,32,116,111,32,108,111,97,100,32,98,117,105,108,116,
+ 45,105,110,10,32,32,32,32,109,111,100,117,108,101,115,44,
+ 32,116,104,111,115,101,32,116,119,111,32,109,111,100,117,108,
+ 101,115,32,109,117,115,116,32,98,101,32,101,120,112,108,105,
+ 99,105,116,108,121,32,112,97,115,115,101,100,32,105,110,46,
+ 10,10,32,32,32,32,41,3,114,27,0,0,0,114,102,0,
+ 0,0,114,72,0,0,0,78,41,15,114,65,0,0,0,114,
+ 19,0,0,0,114,3,0,0,0,114,106,0,0,0,218,5,
+ 105,116,101,109,115,114,217,0,0,0,114,87,0,0,0,114,
+ 176,0,0,0,114,99,0,0,0,114,194,0,0,0,114,156,
+ 0,0,0,114,162,0,0,0,114,9,0,0,0,114,245,0,
+ 0,0,114,12,0,0,0,41,10,218,10,115,121,115,95,109,
+ 111,100,117,108,101,218,11,95,105,109,112,95,109,111,100,117,
+ 108,101,90,11,109,111,100,117,108,101,95,116,121,112,101,114,
+ 21,0,0,0,114,111,0,0,0,114,123,0,0,0,114,110,
+ 0,0,0,90,11,115,101,108,102,95,109,111,100,117,108,101,
+ 90,12,98,117,105,108,116,105,110,95,110,97,109,101,90,14,
+ 98,117,105,108,116,105,110,95,109,111,100,117,108,101,114,5,
+ 0,0,0,114,5,0,0,0,114,6,0,0,0,218,6,95,
+ 115,101,116,117,112,137,4,0,0,115,40,0,0,0,4,9,
+ 4,1,8,3,18,1,10,1,10,1,6,1,10,1,6,1,
+ 2,2,10,1,10,1,2,128,10,3,8,1,10,1,10,1,
+ 10,2,14,1,4,251,114,18,0,0,0,114,249,0,0,0,
+ 99,2,0,0,0,0,0,0,0,0,0,0,0,3,0,0,
+ 0,67,0,0,0,115,38,0,0,0,116,0,124,0,124,1,
+ 131,2,1,0,116,1,106,2,160,3,116,4,161,1,1,0,
+ 116,1,106,2,160,3,116,5,161,1,1,0,100,1,83,0,
+ 41,2,122,48,73,110,115,116,97,108,108,32,105,109,112,111,
+ 114,116,101,114,115,32,102,111,114,32,98,117,105,108,116,105,
+ 110,32,97,110,100,32,102,114,111,122,101,110,32,109,111,100,
+ 117,108,101,115,78,41,6,114,249,0,0,0,114,19,0,0,
+ 0,114,215,0,0,0,114,133,0,0,0,114,176,0,0,0,
+ 114,194,0,0,0,41,2,114,247,0,0,0,114,248,0,0,
+ 0,114,5,0,0,0,114,5,0,0,0,114,6,0,0,0,
+ 218,8,95,105,110,115,116,97,108,108,172,4,0,0,115,6,
+ 0,0,0,10,2,12,2,16,1,114,18,0,0,0,114,250,
+ 0,0,0,99,0,0,0,0,0,0,0,0,0,0,0,0,
+ 4,0,0,0,67,0,0,0,115,32,0,0,0,100,1,100,
+ 2,108,0,125,0,124,0,97,1,124,0,160,2,116,3,106,
+ 4,116,5,25,0,161,1,1,0,100,2,83,0,41,3,122,
+ 57,73,110,115,116,97,108,108,32,105,109,112,111,114,116,101,
+ 114,115,32,116,104,97,116,32,114,101,113,117,105,114,101,32,
+ 101,120,116,101,114,110,97,108,32,102,105,108,101,115,121,115,
+ 116,101,109,32,97,99,99,101,115,115,114,26,0,0,0,78,
+ 41,6,218,26,95,102,114,111,122,101,110,95,105,109,112,111,
+ 114,116,108,105,98,95,101,120,116,101,114,110,97,108,114,140,
+ 0,0,0,114,250,0,0,0,114,19,0,0,0,114,106,0,
+ 0,0,114,9,0,0,0,41,1,114,251,0,0,0,114,5,
+ 0,0,0,114,5,0,0,0,114,6,0,0,0,218,27,95,
+ 105,110,115,116,97,108,108,95,101,120,116,101,114,110,97,108,
+ 95,105,109,112,111,114,116,101,114,115,180,4,0,0,115,6,
+ 0,0,0,8,3,4,1,20,1,114,18,0,0,0,114,252,
+ 0,0,0,114,191,0,0,0,114,0,0,0,0,114,25,0,
+ 0,0,41,4,78,78,114,5,0,0,0,114,26,0,0,0,
+ 41,54,114,10,0,0,0,114,7,0,0,0,114,27,0,0,
+ 0,114,102,0,0,0,114,72,0,0,0,114,140,0,0,0,
+ 114,17,0,0,0,114,22,0,0,0,114,67,0,0,0,114,
+ 38,0,0,0,114,48,0,0,0,114,23,0,0,0,114,24,
+ 0,0,0,114,56,0,0,0,114,58,0,0,0,114,61,0,
+ 0,0,114,73,0,0,0,114,75,0,0,0,114,84,0,0,
+ 0,114,96,0,0,0,114,101,0,0,0,114,112,0,0,0,
+ 114,125,0,0,0,114,126,0,0,0,114,105,0,0,0,114,
+ 156,0,0,0,114,162,0,0,0,114,166,0,0,0,114,120,
+ 0,0,0,114,107,0,0,0,114,173,0,0,0,114,174,0,
+ 0,0,114,108,0,0,0,114,176,0,0,0,114,194,0,0,
+ 0,114,201,0,0,0,114,212,0,0,0,114,214,0,0,0,
+ 114,216,0,0,0,114,222,0,0,0,90,15,95,69,82,82,
+ 95,77,83,71,95,80,82,69,70,73,88,114,224,0,0,0,
+ 114,227,0,0,0,218,6,111,98,106,101,99,116,114,228,0,
+ 0,0,114,229,0,0,0,114,230,0,0,0,114,235,0,0,
+ 0,114,241,0,0,0,114,244,0,0,0,114,245,0,0,0,
+ 114,249,0,0,0,114,250,0,0,0,114,252,0,0,0,114,
+ 5,0,0,0,114,5,0,0,0,114,5,0,0,0,114,6,
+ 0,0,0,218,8,60,109,111,100,117,108,101,62,1,0,0,
+ 0,115,104,0,0,0,4,0,8,22,4,9,4,1,4,1,
+ 4,3,8,3,8,8,4,8,4,2,16,3,14,4,14,77,
+ 14,21,8,16,8,37,8,17,14,11,8,8,8,11,8,12,
+ 8,19,14,26,16,101,10,26,14,45,8,72,8,17,8,17,
+ 8,30,8,36,8,45,14,15,14,80,14,85,8,13,8,9,
+ 10,10,8,47,4,16,8,1,8,2,6,32,8,3,10,16,
+ 14,15,8,37,10,27,8,37,8,7,8,35,12,8,114,18,
+ 0,0,0,
};
diff --git a/Python/importlib_external.h b/Python/importlib_external.h
index 4b8052d992a8f8..07a42a7dca61e3 100644
--- a/Python/importlib_external.h
+++ b/Python/importlib_external.h
@@ -1,99 +1,98 @@
/* Auto-generated by Programs/_freeze_importlib.c */
const unsigned char _Py_M__importlib_bootstrap_external[] = {
- 99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,5,0,0,0,64,0,0,0,115,250,2,0,0,100,0,
- 90,0,100,1,97,1,100,2,100,1,108,2,90,2,100,2,
- 100,1,108,3,90,3,100,2,100,1,108,4,90,4,100,2,
- 100,1,108,5,90,5,100,2,100,1,108,6,90,6,101,4,
- 106,7,100,3,107,2,90,8,101,8,114,40,100,2,100,1,
- 108,9,90,10,100,2,100,1,108,11,90,11,110,4,100,2,
- 100,1,108,12,90,10,101,8,114,51,100,4,100,5,103,2,
- 90,13,110,3,100,5,103,1,90,13,101,14,100,6,100,7,
- 132,0,101,13,68,0,131,1,131,1,115,65,74,0,130,1,
- 101,13,100,2,25,0,90,15,101,16,101,13,131,1,90,17,
- 100,8,160,18,101,13,161,1,90,13,100,9,100,10,132,0,
- 101,13,68,0,131,1,90,19,100,11,90,20,100,12,90,21,
- 101,21,101,20,23,0,90,22,100,13,100,14,132,0,90,23,
- 101,23,131,0,90,24,100,15,100,16,132,0,90,25,100,17,
- 100,18,132,0,90,26,100,19,100,20,132,0,90,27,101,8,
- 114,119,100,21,100,22,132,0,90,28,110,4,100,23,100,22,
- 132,0,90,28,100,24,100,25,132,0,90,29,100,26,100,27,
- 132,0,90,30,100,28,100,29,132,0,90,31,100,30,100,31,
- 132,0,90,32,100,32,100,33,132,0,90,33,101,8,114,150,
- 100,34,100,35,132,0,90,34,110,4,100,36,100,35,132,0,
- 90,34,100,112,100,38,100,39,132,1,90,35,101,36,101,35,
- 106,37,131,1,90,38,100,40,160,39,100,41,100,42,161,2,
- 100,43,23,0,90,40,101,41,160,42,101,40,100,42,161,2,
- 90,43,100,44,90,44,100,45,90,45,100,46,103,1,90,46,
- 101,8,114,192,101,46,160,47,100,47,161,1,1,0,101,2,
- 160,48,161,0,90,49,100,48,103,1,90,50,101,50,4,0,
- 90,51,90,52,100,113,100,1,100,49,156,1,100,50,100,51,
- 132,3,90,53,100,52,100,53,132,0,90,54,100,54,100,55,
- 132,0,90,55,100,56,100,57,132,0,90,56,100,58,100,59,
- 132,0,90,57,100,60,100,61,132,0,90,58,100,62,100,63,
- 132,0,90,59,100,64,100,65,132,0,90,60,100,66,100,67,
- 132,0,90,61,100,68,100,69,132,0,90,62,100,114,100,70,
- 100,71,132,1,90,63,100,115,100,72,100,73,132,1,90,64,
- 100,116,100,75,100,76,132,1,90,65,100,77,100,78,132,0,
- 90,66,101,67,131,0,90,68,100,113,100,1,101,68,100,79,
- 156,2,100,80,100,81,132,3,90,69,71,0,100,82,100,83,
- 132,0,100,83,131,2,90,70,71,0,100,84,100,85,132,0,
- 100,85,131,2,90,71,71,0,100,86,100,87,132,0,100,87,
- 101,71,131,3,90,72,71,0,100,88,100,89,132,0,100,89,
- 131,2,90,73,71,0,100,90,100,91,132,0,100,91,101,73,
- 101,72,131,4,90,74,71,0,100,92,100,93,132,0,100,93,
- 101,73,101,71,131,4,90,75,71,0,100,94,100,95,132,0,
- 100,95,101,73,101,71,131,4,90,76,71,0,100,96,100,97,
- 132,0,100,97,131,2,90,77,71,0,100,98,100,99,132,0,
- 100,99,131,2,90,78,71,0,100,100,100,101,132,0,100,101,
- 131,2,90,79,71,0,100,102,100,103,132,0,100,103,131,2,
- 90,80,100,113,100,104,100,105,132,1,90,81,100,106,100,107,
- 132,0,90,82,100,108,100,109,132,0,90,83,100,110,100,111,
- 132,0,90,84,100,1,83,0,41,117,97,94,1,0,0,67,
- 111,114,101,32,105,109,112,108,101,109,101,110,116,97,116,105,
- 111,110,32,111,102,32,112,97,116,104,45,98,97,115,101,100,
- 32,105,109,112,111,114,116,46,10,10,84,104,105,115,32,109,
- 111,100,117,108,101,32,105,115,32,78,79,84,32,109,101,97,
- 110,116,32,116,111,32,98,101,32,100,105,114,101,99,116,108,
- 121,32,105,109,112,111,114,116,101,100,33,32,73,116,32,104,
- 97,115,32,98,101,101,110,32,100,101,115,105,103,110,101,100,
- 32,115,117,99,104,10,116,104,97,116,32,105,116,32,99,97,
- 110,32,98,101,32,98,111,111,116,115,116,114,97,112,112,101,
- 100,32,105,110,116,111,32,80,121,116,104,111,110,32,97,115,
- 32,116,104,101,32,105,109,112,108,101,109,101,110,116,97,116,
- 105,111,110,32,111,102,32,105,109,112,111,114,116,46,32,65,
- 115,10,115,117,99,104,32,105,116,32,114,101,113,117,105,114,
- 101,115,32,116,104,101,32,105,110,106,101,99,116,105,111,110,
- 32,111,102,32,115,112,101,99,105,102,105,99,32,109,111,100,
- 117,108,101,115,32,97,110,100,32,97,116,116,114,105,98,117,
- 116,101,115,32,105,110,32,111,114,100,101,114,32,116,111,10,
- 119,111,114,107,46,32,79,110,101,32,115,104,111,117,108,100,
- 32,117,115,101,32,105,109,112,111,114,116,108,105,98,32,97,
- 115,32,116,104,101,32,112,117,98,108,105,99,45,102,97,99,
- 105,110,103,32,118,101,114,115,105,111,110,32,111,102,32,116,
- 104,105,115,32,109,111,100,117,108,101,46,10,10,78,233,0,
- 0,0,0,90,5,119,105,110,51,50,250,1,92,250,1,47,
- 99,1,0,0,0,0,0,0,0,0,0,0,0,2,0,0,
- 0,3,0,0,0,99,0,0,0,115,28,0,0,0,129,0,
- 124,0,93,9,125,1,116,0,124,1,131,1,100,0,107,2,
- 86,0,1,0,113,2,100,1,83,0,41,2,233,1,0,0,
- 0,78,41,1,218,3,108,101,110,41,2,218,2,46,48,218,
- 3,115,101,112,169,0,114,7,0,0,0,250,38,60,102,114,
- 111,122,101,110,32,105,109,112,111,114,116,108,105,98,46,95,
- 98,111,111,116,115,116,114,97,112,95,101,120,116,101,114,110,
- 97,108,62,218,9,60,103,101,110,101,120,112,114,62,46,0,
- 0,0,115,4,0,0,0,6,128,22,0,243,0,0,0,0,
- 114,9,0,0,0,218,0,99,1,0,0,0,0,0,0,0,
- 0,0,0,0,2,0,0,0,4,0,0,0,67,0,0,0,
- 115,22,0,0,0,104,0,124,0,93,7,125,1,100,0,124,
- 1,155,0,157,2,146,2,113,2,83,0,41,1,250,1,58,
- 114,7,0,0,0,41,2,114,5,0,0,0,218,1,115,114,
- 7,0,0,0,114,7,0,0,0,114,8,0,0,0,218,9,
- 60,115,101,116,99,111,109,112,62,50,0,0,0,115,2,0,
- 0,0,22,0,114,10,0,0,0,114,14,0,0,0,41,1,
- 218,3,119,105,110,41,2,90,6,99,121,103,119,105,110,90,
- 6,100,97,114,119,105,110,99,0,0,0,0,0,0,0,0,
- 0,0,0,0,1,0,0,0,3,0,0,0,3,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,250,2,0,0,100,0,90,0,100,1,
+ 97,1,100,2,100,1,108,2,90,2,100,2,100,1,108,3,
+ 90,3,100,2,100,1,108,4,90,4,100,2,100,1,108,5,
+ 90,5,100,2,100,1,108,6,90,6,101,4,106,7,100,3,
+ 107,2,90,8,101,8,114,40,100,2,100,1,108,9,90,10,
+ 100,2,100,1,108,11,90,11,110,4,100,2,100,1,108,12,
+ 90,10,101,8,114,51,100,4,100,5,103,2,90,13,110,3,
+ 100,5,103,1,90,13,101,14,100,6,100,7,132,0,101,13,
+ 68,0,131,1,131,1,115,65,74,0,130,1,101,13,100,2,
+ 25,0,90,15,101,16,101,13,131,1,90,17,100,8,160,18,
+ 101,13,161,1,90,13,100,9,100,10,132,0,101,13,68,0,
+ 131,1,90,19,100,11,90,20,100,12,90,21,101,21,101,20,
+ 23,0,90,22,100,13,100,14,132,0,90,23,101,23,131,0,
+ 90,24,100,15,100,16,132,0,90,25,100,17,100,18,132,0,
+ 90,26,100,19,100,20,132,0,90,27,101,8,114,119,100,21,
+ 100,22,132,0,90,28,110,4,100,23,100,22,132,0,90,28,
+ 100,24,100,25,132,0,90,29,100,26,100,27,132,0,90,30,
+ 100,28,100,29,132,0,90,31,100,30,100,31,132,0,90,32,
+ 100,32,100,33,132,0,90,33,101,8,114,150,100,34,100,35,
+ 132,0,90,34,110,4,100,36,100,35,132,0,90,34,100,112,
+ 100,38,100,39,132,1,90,35,101,36,101,35,106,37,131,1,
+ 90,38,100,40,160,39,100,41,100,42,161,2,100,43,23,0,
+ 90,40,101,41,160,42,101,40,100,42,161,2,90,43,100,44,
+ 90,44,100,45,90,45,100,46,103,1,90,46,101,8,114,192,
+ 101,46,160,47,100,47,161,1,1,0,101,2,160,48,161,0,
+ 90,49,100,48,103,1,90,50,101,50,4,0,90,51,90,52,
+ 100,113,100,1,100,49,156,1,100,50,100,51,132,3,90,53,
+ 100,52,100,53,132,0,90,54,100,54,100,55,132,0,90,55,
+ 100,56,100,57,132,0,90,56,100,58,100,59,132,0,90,57,
+ 100,60,100,61,132,0,90,58,100,62,100,63,132,0,90,59,
+ 100,64,100,65,132,0,90,60,100,66,100,67,132,0,90,61,
+ 100,68,100,69,132,0,90,62,100,114,100,70,100,71,132,1,
+ 90,63,100,115,100,72,100,73,132,1,90,64,100,116,100,75,
+ 100,76,132,1,90,65,100,77,100,78,132,0,90,66,101,67,
+ 131,0,90,68,100,113,100,1,101,68,100,79,156,2,100,80,
+ 100,81,132,3,90,69,71,0,100,82,100,83,132,0,100,83,
+ 131,2,90,70,71,0,100,84,100,85,132,0,100,85,131,2,
+ 90,71,71,0,100,86,100,87,132,0,100,87,101,71,131,3,
+ 90,72,71,0,100,88,100,89,132,0,100,89,131,2,90,73,
+ 71,0,100,90,100,91,132,0,100,91,101,73,101,72,131,4,
+ 90,74,71,0,100,92,100,93,132,0,100,93,101,73,101,71,
+ 131,4,90,75,71,0,100,94,100,95,132,0,100,95,101,73,
+ 101,71,131,4,90,76,71,0,100,96,100,97,132,0,100,97,
+ 131,2,90,77,71,0,100,98,100,99,132,0,100,99,131,2,
+ 90,78,71,0,100,100,100,101,132,0,100,101,131,2,90,79,
+ 71,0,100,102,100,103,132,0,100,103,131,2,90,80,100,113,
+ 100,104,100,105,132,1,90,81,100,106,100,107,132,0,90,82,
+ 100,108,100,109,132,0,90,83,100,110,100,111,132,0,90,84,
+ 100,1,83,0,41,117,97,94,1,0,0,67,111,114,101,32,
+ 105,109,112,108,101,109,101,110,116,97,116,105,111,110,32,111,
+ 102,32,112,97,116,104,45,98,97,115,101,100,32,105,109,112,
+ 111,114,116,46,10,10,84,104,105,115,32,109,111,100,117,108,
+ 101,32,105,115,32,78,79,84,32,109,101,97,110,116,32,116,
+ 111,32,98,101,32,100,105,114,101,99,116,108,121,32,105,109,
+ 112,111,114,116,101,100,33,32,73,116,32,104,97,115,32,98,
+ 101,101,110,32,100,101,115,105,103,110,101,100,32,115,117,99,
+ 104,10,116,104,97,116,32,105,116,32,99,97,110,32,98,101,
+ 32,98,111,111,116,115,116,114,97,112,112,101,100,32,105,110,
+ 116,111,32,80,121,116,104,111,110,32,97,115,32,116,104,101,
+ 32,105,109,112,108,101,109,101,110,116,97,116,105,111,110,32,
+ 111,102,32,105,109,112,111,114,116,46,32,65,115,10,115,117,
+ 99,104,32,105,116,32,114,101,113,117,105,114,101,115,32,116,
+ 104,101,32,105,110,106,101,99,116,105,111,110,32,111,102,32,
+ 115,112,101,99,105,102,105,99,32,109,111,100,117,108,101,115,
+ 32,97,110,100,32,97,116,116,114,105,98,117,116,101,115,32,
+ 105,110,32,111,114,100,101,114,32,116,111,10,119,111,114,107,
+ 46,32,79,110,101,32,115,104,111,117,108,100,32,117,115,101,
+ 32,105,109,112,111,114,116,108,105,98,32,97,115,32,116,104,
+ 101,32,112,117,98,108,105,99,45,102,97,99,105,110,103,32,
+ 118,101,114,115,105,111,110,32,111,102,32,116,104,105,115,32,
+ 109,111,100,117,108,101,46,10,10,78,233,0,0,0,0,90,
+ 5,119,105,110,51,50,250,1,92,250,1,47,99,1,0,0,
+ 0,0,0,0,0,0,0,0,0,3,0,0,0,99,0,0,
+ 0,115,28,0,0,0,129,0,124,0,93,9,125,1,116,0,
+ 124,1,131,1,100,0,107,2,86,0,1,0,113,2,100,1,
+ 83,0,41,2,233,1,0,0,0,78,41,1,218,3,108,101,
+ 110,41,2,218,2,46,48,218,3,115,101,112,169,0,114,7,
+ 0,0,0,250,38,60,102,114,111,122,101,110,32,105,109,112,
+ 111,114,116,108,105,98,46,95,98,111,111,116,115,116,114,97,
+ 112,95,101,120,116,101,114,110,97,108,62,218,9,60,103,101,
+ 110,101,120,112,114,62,46,0,0,0,115,4,0,0,0,6,
+ 128,22,0,243,0,0,0,0,114,9,0,0,0,218,0,99,
+ 1,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,
+ 67,0,0,0,115,22,0,0,0,104,0,124,0,93,7,125,
+ 1,100,0,124,1,155,0,157,2,146,2,113,2,83,0,41,
+ 1,250,1,58,114,7,0,0,0,41,2,114,5,0,0,0,
+ 218,1,115,114,7,0,0,0,114,7,0,0,0,114,8,0,
+ 0,0,218,9,60,115,101,116,99,111,109,112,62,50,0,0,
+ 0,115,2,0,0,0,22,0,114,10,0,0,0,114,14,0,
+ 0,0,41,1,218,3,119,105,110,41,2,90,6,99,121,103,
+ 119,105,110,90,6,100,97,114,119,105,110,99,0,0,0,0,
+ 0,0,0,0,0,0,0,0,3,0,0,0,3,0,0,0,
115,62,0,0,0,116,0,106,1,160,2,116,3,161,1,114,
25,116,0,106,1,160,2,116,4,161,1,114,15,100,1,137,
0,110,2,100,2,137,0,135,0,102,1,100,3,100,4,132,
@@ -101,56 +100,55 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = {
0,83,0,41,6,78,90,12,80,89,84,72,79,78,67,65,
83,69,79,75,115,12,0,0,0,80,89,84,72,79,78,67,
65,83,69,79,75,99,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,2,0,0,0,19,0,0,0,115,20,
- 0,0,0,116,0,106,1,106,2,12,0,111,9,136,0,116,
- 3,106,4,118,0,83,0,41,2,122,94,84,114,117,101,32,
- 105,102,32,102,105,108,101,110,97,109,101,115,32,109,117,115,
- 116,32,98,101,32,99,104,101,99,107,101,100,32,99,97,115,
- 101,45,105,110,115,101,110,115,105,116,105,118,101,108,121,32,
- 97,110,100,32,105,103,110,111,114,101,32,101,110,118,105,114,
- 111,110,109,101,110,116,32,102,108,97,103,115,32,97,114,101,
- 32,110,111,116,32,115,101,116,46,78,41,5,218,3,115,121,
- 115,218,5,102,108,97,103,115,218,18,105,103,110,111,114,101,
- 95,101,110,118,105,114,111,110,109,101,110,116,218,3,95,111,
- 115,90,7,101,110,118,105,114,111,110,114,7,0,0,0,169,
- 1,218,3,107,101,121,114,7,0,0,0,114,8,0,0,0,
- 218,11,95,114,101,108,97,120,95,99,97,115,101,67,0,0,
- 0,243,2,0,0,0,20,2,114,10,0,0,0,122,37,95,
- 109,97,107,101,95,114,101,108,97,120,95,99,97,115,101,46,
- 60,108,111,99,97,108,115,62,46,95,114,101,108,97,120,95,
- 99,97,115,101,99,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,1,0,0,0,83,0,0,0,243,4,0,
- 0,0,100,1,83,0,41,3,122,53,84,114,117,101,32,105,
- 102,32,102,105,108,101,110,97,109,101,115,32,109,117,115,116,
- 32,98,101,32,99,104,101,99,107,101,100,32,99,97,115,101,
- 45,105,110,115,101,110,115,105,116,105,118,101,108,121,46,70,
- 78,114,7,0,0,0,114,7,0,0,0,114,7,0,0,0,
- 114,7,0,0,0,114,8,0,0,0,114,22,0,0,0,71,
- 0,0,0,243,2,0,0,0,4,2,114,10,0,0,0,41,
- 5,114,16,0,0,0,218,8,112,108,97,116,102,111,114,109,
- 218,10,115,116,97,114,116,115,119,105,116,104,218,27,95,67,
- 65,83,69,95,73,78,83,69,78,83,73,84,73,86,69,95,
- 80,76,65,84,70,79,82,77,83,218,35,95,67,65,83,69,
- 95,73,78,83,69,78,83,73,84,73,86,69,95,80,76,65,
- 84,70,79,82,77,83,95,83,84,82,95,75,69,89,41,1,
- 114,22,0,0,0,114,7,0,0,0,114,20,0,0,0,114,
- 8,0,0,0,218,16,95,109,97,107,101,95,114,101,108,97,
- 120,95,99,97,115,101,60,0,0,0,115,16,0,0,0,12,
- 1,12,1,6,1,4,2,12,2,4,7,8,253,4,3,114,
- 10,0,0,0,114,30,0,0,0,99,1,0,0,0,0,0,
- 0,0,0,0,0,0,1,0,0,0,4,0,0,0,67,0,
- 0,0,115,20,0,0,0,116,0,124,0,131,1,100,1,64,
- 0,160,1,100,2,100,3,161,2,83,0,41,5,122,42,67,
- 111,110,118,101,114,116,32,97,32,51,50,45,98,105,116,32,
- 105,110,116,101,103,101,114,32,116,111,32,108,105,116,116,108,
- 101,45,101,110,100,105,97,110,46,236,3,0,0,0,255,127,
- 255,127,3,0,233,4,0,0,0,218,6,108,105,116,116,108,
- 101,78,41,2,218,3,105,110,116,218,8,116,111,95,98,121,
- 116,101,115,41,1,218,1,120,114,7,0,0,0,114,7,0,
- 0,0,114,8,0,0,0,218,12,95,112,97,99,107,95,117,
- 105,110,116,51,50,79,0,0,0,114,23,0,0,0,114,10,
- 0,0,0,114,37,0,0,0,99,1,0,0,0,0,0,0,
- 0,0,0,0,0,1,0,0,0,4,0,0,0,67,0,0,
+ 0,0,2,0,0,0,19,0,0,0,115,20,0,0,0,116,
+ 0,106,1,106,2,12,0,111,9,136,0,116,3,106,4,118,
+ 0,83,0,41,2,122,94,84,114,117,101,32,105,102,32,102,
+ 105,108,101,110,97,109,101,115,32,109,117,115,116,32,98,101,
+ 32,99,104,101,99,107,101,100,32,99,97,115,101,45,105,110,
+ 115,101,110,115,105,116,105,118,101,108,121,32,97,110,100,32,
+ 105,103,110,111,114,101,32,101,110,118,105,114,111,110,109,101,
+ 110,116,32,102,108,97,103,115,32,97,114,101,32,110,111,116,
+ 32,115,101,116,46,78,41,5,218,3,115,121,115,218,5,102,
+ 108,97,103,115,218,18,105,103,110,111,114,101,95,101,110,118,
+ 105,114,111,110,109,101,110,116,218,3,95,111,115,90,7,101,
+ 110,118,105,114,111,110,114,7,0,0,0,169,1,218,3,107,
+ 101,121,114,7,0,0,0,114,8,0,0,0,218,11,95,114,
+ 101,108,97,120,95,99,97,115,101,67,0,0,0,243,2,0,
+ 0,0,20,2,114,10,0,0,0,122,37,95,109,97,107,101,
+ 95,114,101,108,97,120,95,99,97,115,101,46,60,108,111,99,
+ 97,108,115,62,46,95,114,101,108,97,120,95,99,97,115,101,
+ 99,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,
+ 0,83,0,0,0,243,4,0,0,0,100,1,83,0,41,3,
+ 122,53,84,114,117,101,32,105,102,32,102,105,108,101,110,97,
+ 109,101,115,32,109,117,115,116,32,98,101,32,99,104,101,99,
+ 107,101,100,32,99,97,115,101,45,105,110,115,101,110,115,105,
+ 116,105,118,101,108,121,46,70,78,114,7,0,0,0,114,7,
+ 0,0,0,114,7,0,0,0,114,7,0,0,0,114,8,0,
+ 0,0,114,22,0,0,0,71,0,0,0,243,2,0,0,0,
+ 4,2,114,10,0,0,0,41,5,114,16,0,0,0,218,8,
+ 112,108,97,116,102,111,114,109,218,10,115,116,97,114,116,115,
+ 119,105,116,104,218,27,95,67,65,83,69,95,73,78,83,69,
+ 78,83,73,84,73,86,69,95,80,76,65,84,70,79,82,77,
+ 83,218,35,95,67,65,83,69,95,73,78,83,69,78,83,73,
+ 84,73,86,69,95,80,76,65,84,70,79,82,77,83,95,83,
+ 84,82,95,75,69,89,41,1,114,22,0,0,0,114,7,0,
+ 0,0,114,20,0,0,0,114,8,0,0,0,218,16,95,109,
+ 97,107,101,95,114,101,108,97,120,95,99,97,115,101,60,0,
+ 0,0,115,16,0,0,0,12,1,12,1,6,1,4,2,12,
+ 2,4,7,8,253,4,3,114,10,0,0,0,114,30,0,0,
+ 0,99,1,0,0,0,0,0,0,0,0,0,0,0,4,0,
+ 0,0,67,0,0,0,115,20,0,0,0,116,0,124,0,131,
+ 1,100,1,64,0,160,1,100,2,100,3,161,2,83,0,41,
+ 5,122,42,67,111,110,118,101,114,116,32,97,32,51,50,45,
+ 98,105,116,32,105,110,116,101,103,101,114,32,116,111,32,108,
+ 105,116,116,108,101,45,101,110,100,105,97,110,46,236,3,0,
+ 0,0,255,127,255,127,3,0,233,4,0,0,0,218,6,108,
+ 105,116,116,108,101,78,41,2,218,3,105,110,116,218,8,116,
+ 111,95,98,121,116,101,115,41,1,218,1,120,114,7,0,0,
+ 0,114,7,0,0,0,114,8,0,0,0,218,12,95,112,97,
+ 99,107,95,117,105,110,116,51,50,79,0,0,0,114,23,0,
+ 0,0,114,10,0,0,0,114,37,0,0,0,99,1,0,0,
+ 0,0,0,0,0,0,0,0,0,4,0,0,0,67,0,0,
0,243,28,0,0,0,116,0,124,0,131,1,100,1,107,2,
115,8,74,0,130,1,116,1,160,2,124,0,100,2,161,2,
83,0,41,4,122,47,67,111,110,118,101,114,116,32,52,32,
@@ -163,98 +161,96 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = {
14,95,117,110,112,97,99,107,95,117,105,110,116,51,50,84,
0,0,0,243,4,0,0,0,16,2,12,1,114,10,0,0,
0,114,43,0,0,0,99,1,0,0,0,0,0,0,0,0,
- 0,0,0,1,0,0,0,4,0,0,0,67,0,0,0,114,
- 38,0,0,0,41,4,122,47,67,111,110,118,101,114,116,32,
- 50,32,98,121,116,101,115,32,105,110,32,108,105,116,116,108,
- 101,45,101,110,100,105,97,110,32,116,111,32,97,110,32,105,
- 110,116,101,103,101,114,46,233,2,0,0,0,114,33,0,0,
- 0,78,114,39,0,0,0,114,41,0,0,0,114,7,0,0,
- 0,114,7,0,0,0,114,8,0,0,0,218,14,95,117,110,
- 112,97,99,107,95,117,105,110,116,49,54,89,0,0,0,114,
- 44,0,0,0,114,10,0,0,0,114,46,0,0,0,99,0,
- 0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,4,
- 0,0,0,71,0,0,0,115,228,0,0,0,124,0,115,4,
- 100,1,83,0,116,0,124,0,131,1,100,2,107,2,114,14,
- 124,0,100,3,25,0,83,0,100,1,125,1,103,0,125,2,
- 116,1,116,2,106,3,124,0,131,2,68,0,93,61,92,2,
- 125,3,125,4,124,3,160,4,116,5,161,1,115,38,124,3,
- 160,6,116,5,161,1,114,51,124,3,160,7,116,8,161,1,
- 112,44,124,1,125,1,116,9,124,4,23,0,103,1,125,2,
- 113,24,124,3,160,6,100,4,161,1,114,76,124,1,160,10,
- 161,0,124,3,160,10,161,0,107,3,114,70,124,3,125,1,
- 124,4,103,1,125,2,113,24,124,2,160,11,124,4,161,1,
- 1,0,113,24,124,3,112,79,124,1,125,1,124,2,160,11,
- 124,4,161,1,1,0,113,24,100,5,100,6,132,0,124,2,
- 68,0,131,1,125,2,116,0,124,2,131,1,100,2,107,2,
- 114,107,124,2,100,3,25,0,115,107,124,1,116,9,23,0,
- 83,0,124,1,116,9,160,12,124,2,161,1,23,0,83,0,
- 41,8,250,31,82,101,112,108,97,99,101,109,101,110,116,32,
- 102,111,114,32,111,115,46,112,97,116,104,46,106,111,105,110,
- 40,41,46,114,11,0,0,0,114,3,0,0,0,114,0,0,
- 0,0,114,12,0,0,0,99,1,0,0,0,0,0,0,0,
- 0,0,0,0,2,0,0,0,5,0,0,0,83,0,0,0,
- 243,26,0,0,0,103,0,124,0,93,9,125,1,124,1,114,
- 2,124,1,160,0,116,1,161,1,145,2,113,2,83,0,114,
- 7,0,0,0,169,2,218,6,114,115,116,114,105,112,218,15,
- 112,97,116,104,95,115,101,112,97,114,97,116,111,114,115,169,
- 2,114,5,0,0,0,218,1,112,114,7,0,0,0,114,7,
- 0,0,0,114,8,0,0,0,218,10,60,108,105,115,116,99,
- 111,109,112,62,119,0,0,0,115,2,0,0,0,26,0,114,
- 10,0,0,0,250,30,95,112,97,116,104,95,106,111,105,110,
- 46,60,108,111,99,97,108,115,62,46,60,108,105,115,116,99,
- 111,109,112,62,78,41,13,114,4,0,0,0,218,3,109,97,
- 112,114,19,0,0,0,218,15,95,112,97,116,104,95,115,112,
- 108,105,116,114,111,111,116,114,27,0,0,0,218,14,112,97,
- 116,104,95,115,101,112,95,116,117,112,108,101,218,8,101,110,
- 100,115,119,105,116,104,114,50,0,0,0,114,51,0,0,0,
- 218,8,112,97,116,104,95,115,101,112,218,8,99,97,115,101,
- 102,111,108,100,218,6,97,112,112,101,110,100,218,4,106,111,
- 105,110,41,5,218,10,112,97,116,104,95,112,97,114,116,115,
- 218,4,114,111,111,116,218,4,112,97,116,104,90,8,110,101,
- 119,95,114,111,111,116,218,4,116,97,105,108,114,7,0,0,
- 0,114,7,0,0,0,114,8,0,0,0,218,10,95,112,97,
- 116,104,95,106,111,105,110,96,0,0,0,115,42,0,0,0,
- 4,2,4,1,12,1,8,1,4,1,4,1,20,1,20,1,
- 14,1,12,1,10,1,16,1,4,3,8,1,12,2,8,2,
- 12,1,14,1,20,1,8,2,14,1,114,10,0,0,0,114,
- 68,0,0,0,99,0,0,0,0,0,0,0,0,0,0,0,
- 0,1,0,0,0,4,0,0,0,71,0,0,0,115,20,0,
+ 0,0,0,4,0,0,0,67,0,0,0,114,38,0,0,0,
+ 41,4,122,47,67,111,110,118,101,114,116,32,50,32,98,121,
+ 116,101,115,32,105,110,32,108,105,116,116,108,101,45,101,110,
+ 100,105,97,110,32,116,111,32,97,110,32,105,110,116,101,103,
+ 101,114,46,233,2,0,0,0,114,33,0,0,0,78,114,39,
+ 0,0,0,114,41,0,0,0,114,7,0,0,0,114,7,0,
+ 0,0,114,8,0,0,0,218,14,95,117,110,112,97,99,107,
+ 95,117,105,110,116,49,54,89,0,0,0,114,44,0,0,0,
+ 114,10,0,0,0,114,46,0,0,0,99,0,0,0,0,0,
+ 0,0,0,0,0,0,0,4,0,0,0,71,0,0,0,115,
+ 228,0,0,0,124,0,115,4,100,1,83,0,116,0,124,0,
+ 131,1,100,2,107,2,114,14,124,0,100,3,25,0,83,0,
+ 100,1,125,1,103,0,125,2,116,1,116,2,106,3,124,0,
+ 131,2,68,0,93,61,92,2,125,3,125,4,124,3,160,4,
+ 116,5,161,1,115,38,124,3,160,6,116,5,161,1,114,51,
+ 124,3,160,7,116,8,161,1,112,44,124,1,125,1,116,9,
+ 124,4,23,0,103,1,125,2,113,24,124,3,160,6,100,4,
+ 161,1,114,76,124,1,160,10,161,0,124,3,160,10,161,0,
+ 107,3,114,70,124,3,125,1,124,4,103,1,125,2,113,24,
+ 124,2,160,11,124,4,161,1,1,0,113,24,124,3,112,79,
+ 124,1,125,1,124,2,160,11,124,4,161,1,1,0,113,24,
+ 100,5,100,6,132,0,124,2,68,0,131,1,125,2,116,0,
+ 124,2,131,1,100,2,107,2,114,107,124,2,100,3,25,0,
+ 115,107,124,1,116,9,23,0,83,0,124,1,116,9,160,12,
+ 124,2,161,1,23,0,83,0,41,8,250,31,82,101,112,108,
+ 97,99,101,109,101,110,116,32,102,111,114,32,111,115,46,112,
+ 97,116,104,46,106,111,105,110,40,41,46,114,11,0,0,0,
+ 114,3,0,0,0,114,0,0,0,0,114,12,0,0,0,99,
+ 1,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,
+ 83,0,0,0,243,26,0,0,0,103,0,124,0,93,9,125,
+ 1,124,1,114,2,124,1,160,0,116,1,161,1,145,2,113,
+ 2,83,0,114,7,0,0,0,169,2,218,6,114,115,116,114,
+ 105,112,218,15,112,97,116,104,95,115,101,112,97,114,97,116,
+ 111,114,115,169,2,114,5,0,0,0,218,1,112,114,7,0,
+ 0,0,114,7,0,0,0,114,8,0,0,0,218,10,60,108,
+ 105,115,116,99,111,109,112,62,119,0,0,0,115,2,0,0,
+ 0,26,0,114,10,0,0,0,250,30,95,112,97,116,104,95,
+ 106,111,105,110,46,60,108,111,99,97,108,115,62,46,60,108,
+ 105,115,116,99,111,109,112,62,78,41,13,114,4,0,0,0,
+ 218,3,109,97,112,114,19,0,0,0,218,15,95,112,97,116,
+ 104,95,115,112,108,105,116,114,111,111,116,114,27,0,0,0,
+ 218,14,112,97,116,104,95,115,101,112,95,116,117,112,108,101,
+ 218,8,101,110,100,115,119,105,116,104,114,50,0,0,0,114,
+ 51,0,0,0,218,8,112,97,116,104,95,115,101,112,218,8,
+ 99,97,115,101,102,111,108,100,218,6,97,112,112,101,110,100,
+ 218,4,106,111,105,110,41,5,218,10,112,97,116,104,95,112,
+ 97,114,116,115,218,4,114,111,111,116,218,4,112,97,116,104,
+ 90,8,110,101,119,95,114,111,111,116,218,4,116,97,105,108,
+ 114,7,0,0,0,114,7,0,0,0,114,8,0,0,0,218,
+ 10,95,112,97,116,104,95,106,111,105,110,96,0,0,0,115,
+ 42,0,0,0,4,2,4,1,12,1,8,1,4,1,4,1,
+ 20,1,20,1,14,1,12,1,10,1,16,1,4,3,8,1,
+ 12,2,8,2,12,1,14,1,20,1,8,2,14,1,114,10,
+ 0,0,0,114,68,0,0,0,99,0,0,0,0,0,0,0,
+ 0,0,0,0,0,4,0,0,0,71,0,0,0,115,20,0,
0,0,116,0,160,1,100,1,100,2,132,0,124,0,68,0,
131,1,161,1,83,0,41,4,114,47,0,0,0,99,1,0,
- 0,0,0,0,0,0,0,0,0,0,2,0,0,0,5,0,
- 0,0,83,0,0,0,114,48,0,0,0,114,7,0,0,0,
- 114,49,0,0,0,41,2,114,5,0,0,0,218,4,112,97,
- 114,116,114,7,0,0,0,114,7,0,0,0,114,8,0,0,
- 0,114,54,0,0,0,128,0,0,0,115,6,0,0,0,6,
- 0,6,1,14,255,114,10,0,0,0,114,55,0,0,0,78,
- 41,2,114,60,0,0,0,114,63,0,0,0,41,1,114,64,
- 0,0,0,114,7,0,0,0,114,7,0,0,0,114,8,0,
- 0,0,114,68,0,0,0,126,0,0,0,115,6,0,0,0,
- 10,2,2,1,8,255,114,10,0,0,0,99,1,0,0,0,
- 0,0,0,0,0,0,0,0,2,0,0,0,4,0,0,0,
- 3,0,0,0,115,66,0,0,0,116,0,135,0,102,1,100,
- 1,100,2,132,8,116,1,68,0,131,1,131,1,125,1,124,
- 1,100,3,107,0,114,19,100,4,136,0,102,2,83,0,136,
- 0,100,5,124,1,133,2,25,0,136,0,124,1,100,6,23,
- 0,100,5,133,2,25,0,102,2,83,0,41,7,122,32,82,
- 101,112,108,97,99,101,109,101,110,116,32,102,111,114,32,111,
- 115,46,112,97,116,104,46,115,112,108,105,116,40,41,46,99,
- 1,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,
- 4,0,0,0,51,0,0,0,115,26,0,0,0,129,0,124,
- 0,93,8,125,1,136,0,160,0,124,1,161,1,86,0,1,
- 0,113,2,100,0,83,0,169,1,78,41,1,218,5,114,102,
- 105,110,100,114,52,0,0,0,169,1,114,66,0,0,0,114,
- 7,0,0,0,114,8,0,0,0,114,9,0,0,0,134,0,
- 0,0,115,4,0,0,0,6,128,20,0,114,10,0,0,0,
- 122,30,95,112,97,116,104,95,115,112,108,105,116,46,60,108,
- 111,99,97,108,115,62,46,60,103,101,110,101,120,112,114,62,
- 114,0,0,0,0,114,11,0,0,0,78,114,3,0,0,0,
- 41,2,218,3,109,97,120,114,51,0,0,0,41,2,114,66,
- 0,0,0,218,1,105,114,7,0,0,0,114,72,0,0,0,
- 114,8,0,0,0,218,11,95,112,97,116,104,95,115,112,108,
- 105,116,132,0,0,0,115,8,0,0,0,22,2,8,1,8,
- 1,28,1,114,10,0,0,0,114,75,0,0,0,99,1,0,
- 0,0,0,0,0,0,0,0,0,0,1,0,0,0,3,0,
+ 0,0,0,0,0,0,0,0,0,0,5,0,0,0,83,0,
+ 0,0,114,48,0,0,0,114,7,0,0,0,114,49,0,0,
+ 0,41,2,114,5,0,0,0,218,4,112,97,114,116,114,7,
+ 0,0,0,114,7,0,0,0,114,8,0,0,0,114,54,0,
+ 0,0,128,0,0,0,115,6,0,0,0,6,0,6,1,14,
+ 255,114,10,0,0,0,114,55,0,0,0,78,41,2,114,60,
+ 0,0,0,114,63,0,0,0,41,1,114,64,0,0,0,114,
+ 7,0,0,0,114,7,0,0,0,114,8,0,0,0,114,68,
+ 0,0,0,126,0,0,0,115,6,0,0,0,10,2,2,1,
+ 8,255,114,10,0,0,0,99,1,0,0,0,0,0,0,0,
+ 0,0,0,0,4,0,0,0,3,0,0,0,115,66,0,0,
+ 0,116,0,135,0,102,1,100,1,100,2,132,8,116,1,68,
+ 0,131,1,131,1,125,1,124,1,100,3,107,0,114,19,100,
+ 4,136,0,102,2,83,0,136,0,100,5,124,1,133,2,25,
+ 0,136,0,124,1,100,6,23,0,100,5,133,2,25,0,102,
+ 2,83,0,41,7,122,32,82,101,112,108,97,99,101,109,101,
+ 110,116,32,102,111,114,32,111,115,46,112,97,116,104,46,115,
+ 112,108,105,116,40,41,46,99,1,0,0,0,0,0,0,0,
+ 0,0,0,0,4,0,0,0,51,0,0,0,115,26,0,0,
+ 0,129,0,124,0,93,8,125,1,136,0,160,0,124,1,161,
+ 1,86,0,1,0,113,2,100,0,83,0,169,1,78,41,1,
+ 218,5,114,102,105,110,100,114,52,0,0,0,169,1,114,66,
+ 0,0,0,114,7,0,0,0,114,8,0,0,0,114,9,0,
+ 0,0,134,0,0,0,115,4,0,0,0,6,128,20,0,114,
+ 10,0,0,0,122,30,95,112,97,116,104,95,115,112,108,105,
+ 116,46,60,108,111,99,97,108,115,62,46,60,103,101,110,101,
+ 120,112,114,62,114,0,0,0,0,114,11,0,0,0,78,114,
+ 3,0,0,0,41,2,218,3,109,97,120,114,51,0,0,0,
+ 41,2,114,66,0,0,0,218,1,105,114,7,0,0,0,114,
+ 72,0,0,0,114,8,0,0,0,218,11,95,112,97,116,104,
+ 95,115,112,108,105,116,132,0,0,0,115,8,0,0,0,22,
+ 2,8,1,8,1,28,1,114,10,0,0,0,114,75,0,0,
+ 0,99,1,0,0,0,0,0,0,0,0,0,0,0,3,0,
0,0,67,0,0,0,115,10,0,0,0,116,0,160,1,124,
0,161,1,83,0,41,2,122,126,83,116,97,116,32,116,104,
101,32,112,97,116,104,46,10,10,32,32,32,32,77,97,100,
@@ -269,43 +265,42 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = {
7,0,0,0,114,8,0,0,0,218,10,95,112,97,116,104,
95,115,116,97,116,140,0,0,0,115,2,0,0,0,10,7,
114,10,0,0,0,114,76,0,0,0,99,2,0,0,0,0,
- 0,0,0,0,0,0,0,3,0,0,0,8,0,0,0,67,
- 0,0,0,115,50,0,0,0,9,0,116,0,124,0,131,1,
- 125,2,110,11,35,0,4,0,116,1,121,24,1,0,1,0,
- 1,0,89,0,100,1,83,0,37,0,124,2,106,2,100,2,
- 64,0,124,1,107,2,83,0,119,0,41,4,122,49,84,101,
- 115,116,32,119,104,101,116,104,101,114,32,116,104,101,32,112,
- 97,116,104,32,105,115,32,116,104,101,32,115,112,101,99,105,
- 102,105,101,100,32,109,111,100,101,32,116,121,112,101,46,70,
- 105,0,240,0,0,78,41,3,114,76,0,0,0,218,7,79,
- 83,69,114,114,111,114,218,7,115,116,95,109,111,100,101,41,
- 3,114,66,0,0,0,218,4,109,111,100,101,90,9,115,116,
- 97,116,95,105,110,102,111,114,7,0,0,0,114,7,0,0,
- 0,114,8,0,0,0,218,18,95,112,97,116,104,95,105,115,
- 95,109,111,100,101,95,116,121,112,101,150,0,0,0,115,16,
- 0,0,0,2,2,10,1,2,128,12,1,6,1,2,128,14,
- 1,2,254,115,12,0,0,0,129,4,6,0,134,7,16,7,
- 152,1,16,7,114,80,0,0,0,99,1,0,0,0,0,0,
- 0,0,0,0,0,0,1,0,0,0,3,0,0,0,67,0,
- 0,0,115,10,0,0,0,116,0,124,0,100,1,131,2,83,
- 0,41,3,122,31,82,101,112,108,97,99,101,109,101,110,116,
- 32,102,111,114,32,111,115,46,112,97,116,104,46,105,115,102,
- 105,108,101,46,105,0,128,0,0,78,41,1,114,80,0,0,
- 0,114,72,0,0,0,114,7,0,0,0,114,7,0,0,0,
- 114,8,0,0,0,218,12,95,112,97,116,104,95,105,115,102,
- 105,108,101,159,0,0,0,243,2,0,0,0,10,2,114,10,
- 0,0,0,114,81,0,0,0,99,1,0,0,0,0,0,0,
- 0,0,0,0,0,1,0,0,0,3,0,0,0,67,0,0,
- 0,115,22,0,0,0,124,0,115,6,116,0,160,1,161,0,
- 125,0,116,2,124,0,100,1,131,2,83,0,41,3,122,30,
- 82,101,112,108,97,99,101,109,101,110,116,32,102,111,114,32,
- 111,115,46,112,97,116,104,46,105,115,100,105,114,46,105,0,
- 64,0,0,78,41,3,114,19,0,0,0,218,6,103,101,116,
- 99,119,100,114,80,0,0,0,114,72,0,0,0,114,7,0,
- 0,0,114,7,0,0,0,114,8,0,0,0,218,11,95,112,
- 97,116,104,95,105,115,100,105,114,164,0,0,0,115,6,0,
- 0,0,4,2,8,1,10,1,114,10,0,0,0,114,84,0,
- 0,0,99,1,0,0,0,0,0,0,0,0,0,0,0,2,
+ 0,0,0,0,0,0,0,8,0,0,0,67,0,0,0,115,
+ 50,0,0,0,9,0,116,0,124,0,131,1,125,2,110,11,
+ 35,0,4,0,116,1,121,24,1,0,1,0,1,0,89,0,
+ 100,1,83,0,37,0,124,2,106,2,100,2,64,0,124,1,
+ 107,2,83,0,119,0,41,4,122,49,84,101,115,116,32,119,
+ 104,101,116,104,101,114,32,116,104,101,32,112,97,116,104,32,
+ 105,115,32,116,104,101,32,115,112,101,99,105,102,105,101,100,
+ 32,109,111,100,101,32,116,121,112,101,46,70,105,0,240,0,
+ 0,78,41,3,114,76,0,0,0,218,7,79,83,69,114,114,
+ 111,114,218,7,115,116,95,109,111,100,101,41,3,114,66,0,
+ 0,0,218,4,109,111,100,101,90,9,115,116,97,116,95,105,
+ 110,102,111,114,7,0,0,0,114,7,0,0,0,114,8,0,
+ 0,0,218,18,95,112,97,116,104,95,105,115,95,109,111,100,
+ 101,95,116,121,112,101,150,0,0,0,115,16,0,0,0,2,
+ 2,10,1,2,128,12,1,6,1,2,128,14,1,2,254,115,
+ 12,0,0,0,129,4,6,0,134,7,16,7,152,1,16,7,
+ 114,80,0,0,0,99,1,0,0,0,0,0,0,0,0,0,
+ 0,0,3,0,0,0,67,0,0,0,115,10,0,0,0,116,
+ 0,124,0,100,1,131,2,83,0,41,3,122,31,82,101,112,
+ 108,97,99,101,109,101,110,116,32,102,111,114,32,111,115,46,
+ 112,97,116,104,46,105,115,102,105,108,101,46,105,0,128,0,
+ 0,78,41,1,114,80,0,0,0,114,72,0,0,0,114,7,
+ 0,0,0,114,7,0,0,0,114,8,0,0,0,218,12,95,
+ 112,97,116,104,95,105,115,102,105,108,101,159,0,0,0,243,
+ 2,0,0,0,10,2,114,10,0,0,0,114,81,0,0,0,
+ 99,1,0,0,0,0,0,0,0,0,0,0,0,3,0,0,
+ 0,67,0,0,0,115,22,0,0,0,124,0,115,6,116,0,
+ 160,1,161,0,125,0,116,2,124,0,100,1,131,2,83,0,
+ 41,3,122,30,82,101,112,108,97,99,101,109,101,110,116,32,
+ 102,111,114,32,111,115,46,112,97,116,104,46,105,115,100,105,
+ 114,46,105,0,64,0,0,78,41,3,114,19,0,0,0,218,
+ 6,103,101,116,99,119,100,114,80,0,0,0,114,72,0,0,
+ 0,114,7,0,0,0,114,7,0,0,0,114,8,0,0,0,
+ 218,11,95,112,97,116,104,95,105,115,100,105,114,164,0,0,
+ 0,115,6,0,0,0,4,2,8,1,10,1,114,10,0,0,
+ 0,114,84,0,0,0,99,1,0,0,0,0,0,0,0,0,
0,0,0,4,0,0,0,67,0,0,0,115,62,0,0,0,
124,0,115,4,100,1,83,0,116,0,160,1,124,0,161,1,
100,2,25,0,160,2,100,3,100,4,161,2,125,1,116,3,
@@ -321,177 +316,176 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = {
7,0,0,0,114,8,0,0,0,218,11,95,112,97,116,104,
95,105,115,97,98,115,172,0,0,0,115,8,0,0,0,4,
2,4,1,22,1,32,1,114,10,0,0,0,114,87,0,0,
- 0,99,1,0,0,0,0,0,0,0,0,0,0,0,1,0,
- 0,0,3,0,0,0,67,0,0,0,115,10,0,0,0,124,
- 0,160,0,116,1,161,1,83,0,41,2,114,85,0,0,0,
- 78,41,2,114,27,0,0,0,114,51,0,0,0,114,72,0,
- 0,0,114,7,0,0,0,114,7,0,0,0,114,8,0,0,
- 0,114,87,0,0,0,180,0,0,0,114,82,0,0,0,114,
- 10,0,0,0,233,182,1,0,0,99,3,0,0,0,0,0,
- 0,0,0,0,0,0,6,0,0,0,11,0,0,0,67,0,
- 0,0,115,178,0,0,0,100,1,160,0,124,0,116,1,124,
- 0,131,1,161,2,125,3,116,2,160,3,124,3,116,2,106,
- 4,116,2,106,5,66,0,116,2,106,6,66,0,124,2,100,
- 2,64,0,161,3,125,4,9,0,116,7,160,8,124,4,100,
- 3,161,2,53,0,125,5,124,5,160,9,124,1,161,1,1,
- 0,100,4,4,0,4,0,131,3,1,0,110,11,35,0,49,
- 0,115,48,119,4,37,0,1,0,1,0,1,0,89,0,1,
- 0,1,0,116,2,160,10,124,3,124,0,161,2,1,0,100,
- 4,83,0,35,0,4,0,116,11,121,88,1,0,1,0,1,
- 0,9,0,116,2,160,12,124,3,161,1,1,0,130,0,35,
- 0,4,0,116,11,121,87,1,0,1,0,1,0,89,0,130,
- 0,37,0,37,0,119,0,119,0,41,5,122,162,66,101,115,
- 116,45,101,102,102,111,114,116,32,102,117,110,99,116,105,111,
- 110,32,116,111,32,119,114,105,116,101,32,100,97,116,97,32,
- 116,111,32,97,32,112,97,116,104,32,97,116,111,109,105,99,
- 97,108,108,121,46,10,32,32,32,32,66,101,32,112,114,101,
- 112,97,114,101,100,32,116,111,32,104,97,110,100,108,101,32,
- 97,32,70,105,108,101,69,120,105,115,116,115,69,114,114,111,
- 114,32,105,102,32,99,111,110,99,117,114,114,101,110,116,32,
- 119,114,105,116,105,110,103,32,111,102,32,116,104,101,10,32,
- 32,32,32,116,101,109,112,111,114,97,114,121,32,102,105,108,
- 101,32,105,115,32,97,116,116,101,109,112,116,101,100,46,250,
- 5,123,125,46,123,125,114,88,0,0,0,90,2,119,98,78,
- 41,13,218,6,102,111,114,109,97,116,218,2,105,100,114,19,
- 0,0,0,90,4,111,112,101,110,90,6,79,95,69,88,67,
- 76,90,7,79,95,67,82,69,65,84,90,8,79,95,87,82,
- 79,78,76,89,218,3,95,105,111,218,6,70,105,108,101,73,
- 79,218,5,119,114,105,116,101,114,86,0,0,0,114,77,0,
- 0,0,90,6,117,110,108,105,110,107,41,6,114,66,0,0,
- 0,114,42,0,0,0,114,79,0,0,0,90,8,112,97,116,
- 104,95,116,109,112,90,2,102,100,218,4,102,105,108,101,114,
- 7,0,0,0,114,7,0,0,0,114,8,0,0,0,218,13,
- 95,119,114,105,116,101,95,97,116,111,109,105,99,185,0,0,
- 0,115,44,0,0,0,16,5,6,1,22,1,4,255,2,2,
- 14,3,10,1,12,255,22,128,16,2,2,128,12,1,2,1,
- 10,1,2,3,2,128,12,254,2,1,2,1,4,128,2,254,
- 2,253,115,69,0,0,0,153,6,62,0,159,6,43,3,165,
- 6,62,0,171,4,47,11,175,1,62,0,176,3,47,11,179,
- 9,62,0,190,7,65,22,7,193,6,5,65,12,6,193,11,
- 1,65,22,7,193,12,7,65,21,13,193,19,3,65,22,7,
- 193,23,1,65,21,13,193,24,1,65,22,7,114,96,0,0,
- 0,105,123,13,0,0,114,45,0,0,0,114,33,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,119,122,4,46,112,121,99,41,1,218,12,111,
- 112,116,105,109,105,122,97,116,105,111,110,99,2,0,0,0,
- 0,0,0,0,1,0,0,0,12,0,0,0,5,0,0,0,
- 67,0,0,0,115,80,1,0,0,124,1,100,1,117,1,114,
- 26,116,0,160,1,100,2,116,2,161,2,1,0,124,2,100,
- 1,117,1,114,20,100,3,125,3,116,3,124,3,131,1,130,
- 1,124,1,114,24,100,4,110,1,100,5,125,2,116,4,160,
- 5,124,0,161,1,125,0,116,6,124,0,131,1,92,2,125,
- 4,125,5,124,5,160,7,100,6,161,1,92,3,125,6,125,
- 7,125,8,116,8,106,9,106,10,125,9,124,9,100,1,117,
- 0,114,57,116,11,100,7,131,1,130,1,100,4,160,12,124,
- 6,114,63,124,6,110,1,124,8,124,7,124,9,103,3,161,
- 1,125,10,124,2,100,1,117,0,114,86,116,8,106,13,106,
- 14,100,8,107,2,114,82,100,4,125,2,110,4,116,8,106,
- 13,106,14,125,2,116,15,124,2,131,1,125,2,124,2,100,
- 4,107,3,114,112,124,2,160,16,161,0,115,105,116,17,100,
- 9,160,18,124,2,161,1,131,1,130,1,100,10,160,18,124,
- 10,116,19,124,2,161,3,125,10,124,10,116,20,100,8,25,
- 0,23,0,125,11,116,8,106,21,100,1,117,1,114,162,116,
- 22,124,4,131,1,115,134,116,23,116,4,160,24,161,0,124,
- 4,131,2,125,4,124,4,100,5,25,0,100,11,107,2,114,
- 152,124,4,100,8,25,0,116,25,118,1,114,152,124,4,100,
- 12,100,1,133,2,25,0,125,4,116,23,116,8,106,21,124,
- 4,160,26,116,25,161,1,124,11,131,3,83,0,116,23,124,
- 4,116,27,124,11,131,3,83,0,41,13,97,254,2,0,0,
- 71,105,118,101,110,32,116,104,101,32,112,97,116,104,32,116,
- 111,32,97,32,46,112,121,32,102,105,108,101,44,32,114,101,
- 116,117,114,110,32,116,104,101,32,112,97,116,104,32,116,111,
- 32,105,116,115,32,46,112,121,99,32,102,105,108,101,46,10,
- 10,32,32,32,32,84,104,101,32,46,112,121,32,102,105,108,
- 101,32,100,111,101,115,32,110,111,116,32,110,101,101,100,32,
- 116,111,32,101,120,105,115,116,59,32,116,104,105,115,32,115,
- 105,109,112,108,121,32,114,101,116,117,114,110,115,32,116,104,
- 101,32,112,97,116,104,32,116,111,32,116,104,101,10,32,32,
- 32,32,46,112,121,99,32,102,105,108,101,32,99,97,108,99,
- 117,108,97,116,101,100,32,97,115,32,105,102,32,116,104,101,
- 32,46,112,121,32,102,105,108,101,32,119,101,114,101,32,105,
- 109,112,111,114,116,101,100,46,10,10,32,32,32,32,84,104,
- 101,32,39,111,112,116,105,109,105,122,97,116,105,111,110,39,
- 32,112,97,114,97,109,101,116,101,114,32,99,111,110,116,114,
- 111,108,115,32,116,104,101,32,112,114,101,115,117,109,101,100,
- 32,111,112,116,105,109,105,122,97,116,105,111,110,32,108,101,
- 118,101,108,32,111,102,10,32,32,32,32,116,104,101,32,98,
- 121,116,101,99,111,100,101,32,102,105,108,101,46,32,73,102,
- 32,39,111,112,116,105,109,105,122,97,116,105,111,110,39,32,
- 105,115,32,110,111,116,32,78,111,110,101,44,32,116,104,101,
- 32,115,116,114,105,110,103,32,114,101,112,114,101,115,101,110,
- 116,97,116,105,111,110,10,32,32,32,32,111,102,32,116,104,
- 101,32,97,114,103,117,109,101,110,116,32,105,115,32,116,97,
- 107,101,110,32,97,110,100,32,118,101,114,105,102,105,101,100,
- 32,116,111,32,98,101,32,97,108,112,104,97,110,117,109,101,
- 114,105,99,32,40,101,108,115,101,32,86,97,108,117,101,69,
- 114,114,111,114,10,32,32,32,32,105,115,32,114,97,105,115,
- 101,100,41,46,10,10,32,32,32,32,84,104,101,32,100,101,
- 98,117,103,95,111,118,101,114,114,105,100,101,32,112,97,114,
- 97,109,101,116,101,114,32,105,115,32,100,101,112,114,101,99,
- 97,116,101,100,46,32,73,102,32,100,101,98,117,103,95,111,
- 118,101,114,114,105,100,101,32,105,115,32,110,111,116,32,78,
- 111,110,101,44,10,32,32,32,32,97,32,84,114,117,101,32,
- 118,97,108,117,101,32,105,115,32,116,104,101,32,115,97,109,
- 101,32,97,115,32,115,101,116,116,105,110,103,32,39,111,112,
- 116,105,109,105,122,97,116,105,111,110,39,32,116,111,32,116,
- 104,101,32,101,109,112,116,121,32,115,116,114,105,110,103,10,
- 32,32,32,32,119,104,105,108,101,32,97,32,70,97,108,115,
- 101,32,118,97,108,117,101,32,105,115,32,101,113,117,105,118,
- 97,108,101,110,116,32,116,111,32,115,101,116,116,105,110,103,
- 32,39,111,112,116,105,109,105,122,97,116,105,111,110,39,32,
- 116,111,32,39,49,39,46,10,10,32,32,32,32,73,102,32,
- 115,121,115,46,105,109,112,108,101,109,101,110,116,97,116,105,
- 111,110,46,99,97,99,104,101,95,116,97,103,32,105,115,32,
- 78,111,110,101,32,116,104,101,110,32,78,111,116,73,109,112,
- 108,101,109,101,110,116,101,100,69,114,114,111,114,32,105,115,
- 32,114,97,105,115,101,100,46,10,10,32,32,32,32,78,122,
- 70,116,104,101,32,100,101,98,117,103,95,111,118,101,114,114,
- 105,100,101,32,112,97,114,97,109,101,116,101,114,32,105,115,
- 32,100,101,112,114,101,99,97,116,101,100,59,32,117,115,101,
+ 0,99,1,0,0,0,0,0,0,0,0,0,0,0,3,0,
+ 0,0,67,0,0,0,115,10,0,0,0,124,0,160,0,116,
+ 1,161,1,83,0,41,2,114,85,0,0,0,78,41,2,114,
+ 27,0,0,0,114,51,0,0,0,114,72,0,0,0,114,7,
+ 0,0,0,114,7,0,0,0,114,8,0,0,0,114,87,0,
+ 0,0,180,0,0,0,114,82,0,0,0,114,10,0,0,0,
+ 233,182,1,0,0,99,3,0,0,0,0,0,0,0,0,0,
+ 0,0,11,0,0,0,67,0,0,0,115,178,0,0,0,100,
+ 1,160,0,124,0,116,1,124,0,131,1,161,2,125,3,116,
+ 2,160,3,124,3,116,2,106,4,116,2,106,5,66,0,116,
+ 2,106,6,66,0,124,2,100,2,64,0,161,3,125,4,9,
+ 0,116,7,160,8,124,4,100,3,161,2,53,0,125,5,124,
+ 5,160,9,124,1,161,1,1,0,100,4,4,0,4,0,131,
+ 3,1,0,110,11,35,0,49,0,115,48,119,4,37,0,1,
+ 0,1,0,1,0,89,0,1,0,1,0,116,2,160,10,124,
+ 3,124,0,161,2,1,0,100,4,83,0,35,0,4,0,116,
+ 11,121,88,1,0,1,0,1,0,9,0,116,2,160,12,124,
+ 3,161,1,1,0,130,0,35,0,4,0,116,11,121,87,1,
+ 0,1,0,1,0,89,0,130,0,37,0,37,0,119,0,119,
+ 0,41,5,122,162,66,101,115,116,45,101,102,102,111,114,116,
+ 32,102,117,110,99,116,105,111,110,32,116,111,32,119,114,105,
+ 116,101,32,100,97,116,97,32,116,111,32,97,32,112,97,116,
+ 104,32,97,116,111,109,105,99,97,108,108,121,46,10,32,32,
+ 32,32,66,101,32,112,114,101,112,97,114,101,100,32,116,111,
+ 32,104,97,110,100,108,101,32,97,32,70,105,108,101,69,120,
+ 105,115,116,115,69,114,114,111,114,32,105,102,32,99,111,110,
+ 99,117,114,114,101,110,116,32,119,114,105,116,105,110,103,32,
+ 111,102,32,116,104,101,10,32,32,32,32,116,101,109,112,111,
+ 114,97,114,121,32,102,105,108,101,32,105,115,32,97,116,116,
+ 101,109,112,116,101,100,46,250,5,123,125,46,123,125,114,88,
+ 0,0,0,90,2,119,98,78,41,13,218,6,102,111,114,109,
+ 97,116,218,2,105,100,114,19,0,0,0,90,4,111,112,101,
+ 110,90,6,79,95,69,88,67,76,90,7,79,95,67,82,69,
+ 65,84,90,8,79,95,87,82,79,78,76,89,218,3,95,105,
+ 111,218,6,70,105,108,101,73,79,218,5,119,114,105,116,101,
+ 114,86,0,0,0,114,77,0,0,0,90,6,117,110,108,105,
+ 110,107,41,6,114,66,0,0,0,114,42,0,0,0,114,79,
+ 0,0,0,90,8,112,97,116,104,95,116,109,112,90,2,102,
+ 100,218,4,102,105,108,101,114,7,0,0,0,114,7,0,0,
+ 0,114,8,0,0,0,218,13,95,119,114,105,116,101,95,97,
+ 116,111,109,105,99,185,0,0,0,115,44,0,0,0,16,5,
+ 6,1,22,1,4,255,2,2,14,3,10,1,12,255,22,128,
+ 16,2,2,128,12,1,2,1,10,1,2,3,2,128,12,254,
+ 2,1,2,1,4,128,2,254,2,253,115,69,0,0,0,153,
+ 6,62,0,159,6,43,3,165,6,62,0,171,4,47,11,175,
+ 1,62,0,176,3,47,11,179,9,62,0,190,7,65,22,7,
+ 193,6,5,65,12,6,193,11,1,65,22,7,193,12,7,65,
+ 21,13,193,19,3,65,22,7,193,23,1,65,21,13,193,24,
+ 1,65,22,7,114,96,0,0,0,105,124,13,0,0,114,45,
+ 0,0,0,114,33,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,119,122,4,46,
+ 112,121,99,41,1,218,12,111,112,116,105,109,105,122,97,116,
+ 105,111,110,99,2,0,0,0,0,0,0,0,1,0,0,0,
+ 5,0,0,0,67,0,0,0,115,80,1,0,0,124,1,100,
+ 1,117,1,114,26,116,0,160,1,100,2,116,2,161,2,1,
+ 0,124,2,100,1,117,1,114,20,100,3,125,3,116,3,124,
+ 3,131,1,130,1,124,1,114,24,100,4,110,1,100,5,125,
+ 2,116,4,160,5,124,0,161,1,125,0,116,6,124,0,131,
+ 1,92,2,125,4,125,5,124,5,160,7,100,6,161,1,92,
+ 3,125,6,125,7,125,8,116,8,106,9,106,10,125,9,124,
+ 9,100,1,117,0,114,57,116,11,100,7,131,1,130,1,100,
+ 4,160,12,124,6,114,63,124,6,110,1,124,8,124,7,124,
+ 9,103,3,161,1,125,10,124,2,100,1,117,0,114,86,116,
+ 8,106,13,106,14,100,8,107,2,114,82,100,4,125,2,110,
+ 4,116,8,106,13,106,14,125,2,116,15,124,2,131,1,125,
+ 2,124,2,100,4,107,3,114,112,124,2,160,16,161,0,115,
+ 105,116,17,100,9,160,18,124,2,161,1,131,1,130,1,100,
+ 10,160,18,124,10,116,19,124,2,161,3,125,10,124,10,116,
+ 20,100,8,25,0,23,0,125,11,116,8,106,21,100,1,117,
+ 1,114,162,116,22,124,4,131,1,115,134,116,23,116,4,160,
+ 24,161,0,124,4,131,2,125,4,124,4,100,5,25,0,100,
+ 11,107,2,114,152,124,4,100,8,25,0,116,25,118,1,114,
+ 152,124,4,100,12,100,1,133,2,25,0,125,4,116,23,116,
+ 8,106,21,124,4,160,26,116,25,161,1,124,11,131,3,83,
+ 0,116,23,124,4,116,27,124,11,131,3,83,0,41,13,97,
+ 254,2,0,0,71,105,118,101,110,32,116,104,101,32,112,97,
+ 116,104,32,116,111,32,97,32,46,112,121,32,102,105,108,101,
+ 44,32,114,101,116,117,114,110,32,116,104,101,32,112,97,116,
+ 104,32,116,111,32,105,116,115,32,46,112,121,99,32,102,105,
+ 108,101,46,10,10,32,32,32,32,84,104,101,32,46,112,121,
+ 32,102,105,108,101,32,100,111,101,115,32,110,111,116,32,110,
+ 101,101,100,32,116,111,32,101,120,105,115,116,59,32,116,104,
+ 105,115,32,115,105,109,112,108,121,32,114,101,116,117,114,110,
+ 115,32,116,104,101,32,112,97,116,104,32,116,111,32,116,104,
+ 101,10,32,32,32,32,46,112,121,99,32,102,105,108,101,32,
+ 99,97,108,99,117,108,97,116,101,100,32,97,115,32,105,102,
+ 32,116,104,101,32,46,112,121,32,102,105,108,101,32,119,101,
+ 114,101,32,105,109,112,111,114,116,101,100,46,10,10,32,32,
+ 32,32,84,104,101,32,39,111,112,116,105,109,105,122,97,116,
+ 105,111,110,39,32,112,97,114,97,109,101,116,101,114,32,99,
+ 111,110,116,114,111,108,115,32,116,104,101,32,112,114,101,115,
+ 117,109,101,100,32,111,112,116,105,109,105,122,97,116,105,111,
+ 110,32,108,101,118,101,108,32,111,102,10,32,32,32,32,116,
+ 104,101,32,98,121,116,101,99,111,100,101,32,102,105,108,101,
+ 46,32,73,102,32,39,111,112,116,105,109,105,122,97,116,105,
+ 111,110,39,32,105,115,32,110,111,116,32,78,111,110,101,44,
+ 32,116,104,101,32,115,116,114,105,110,103,32,114,101,112,114,
+ 101,115,101,110,116,97,116,105,111,110,10,32,32,32,32,111,
+ 102,32,116,104,101,32,97,114,103,117,109,101,110,116,32,105,
+ 115,32,116,97,107,101,110,32,97,110,100,32,118,101,114,105,
+ 102,105,101,100,32,116,111,32,98,101,32,97,108,112,104,97,
+ 110,117,109,101,114,105,99,32,40,101,108,115,101,32,86,97,
+ 108,117,101,69,114,114,111,114,10,32,32,32,32,105,115,32,
+ 114,97,105,115,101,100,41,46,10,10,32,32,32,32,84,104,
+ 101,32,100,101,98,117,103,95,111,118,101,114,114,105,100,101,
+ 32,112,97,114,97,109,101,116,101,114,32,105,115,32,100,101,
+ 112,114,101,99,97,116,101,100,46,32,73,102,32,100,101,98,
+ 117,103,95,111,118,101,114,114,105,100,101,32,105,115,32,110,
+ 111,116,32,78,111,110,101,44,10,32,32,32,32,97,32,84,
+ 114,117,101,32,118,97,108,117,101,32,105,115,32,116,104,101,
+ 32,115,97,109,101,32,97,115,32,115,101,116,116,105,110,103,
32,39,111,112,116,105,109,105,122,97,116,105,111,110,39,32,
- 105,110,115,116,101,97,100,122,50,100,101,98,117,103,95,111,
- 118,101,114,114,105,100,101,32,111,114,32,111,112,116,105,109,
- 105,122,97,116,105,111,110,32,109,117,115,116,32,98,101,32,
- 115,101,116,32,116,111,32,78,111,110,101,114,11,0,0,0,
- 114,3,0,0,0,218,1,46,250,36,115,121,115,46,105,109,
- 112,108,101,109,101,110,116,97,116,105,111,110,46,99,97,99,
- 104,101,95,116,97,103,32,105,115,32,78,111,110,101,114,0,
- 0,0,0,122,24,123,33,114,125,32,105,115,32,110,111,116,
- 32,97,108,112,104,97,110,117,109,101,114,105,99,122,7,123,
- 125,46,123,125,123,125,114,12,0,0,0,114,45,0,0,0,
- 41,28,218,9,95,119,97,114,110,105,110,103,115,218,4,119,
- 97,114,110,218,18,68,101,112,114,101,99,97,116,105,111,110,
- 87,97,114,110,105,110,103,218,9,84,121,112,101,69,114,114,
- 111,114,114,19,0,0,0,218,6,102,115,112,97,116,104,114,
- 75,0,0,0,218,10,114,112,97,114,116,105,116,105,111,110,
- 114,16,0,0,0,218,14,105,109,112,108,101,109,101,110,116,
- 97,116,105,111,110,218,9,99,97,99,104,101,95,116,97,103,
- 218,19,78,111,116,73,109,112,108,101,109,101,110,116,101,100,
- 69,114,114,111,114,114,63,0,0,0,114,17,0,0,0,218,
- 8,111,112,116,105,109,105,122,101,218,3,115,116,114,218,7,
- 105,115,97,108,110,117,109,218,10,86,97,108,117,101,69,114,
- 114,111,114,114,90,0,0,0,218,4,95,79,80,84,218,17,
- 66,89,84,69,67,79,68,69,95,83,85,70,70,73,88,69,
- 83,218,14,112,121,99,97,99,104,101,95,112,114,101,102,105,
- 120,114,87,0,0,0,114,68,0,0,0,114,83,0,0,0,
- 114,51,0,0,0,218,6,108,115,116,114,105,112,218,8,95,
- 80,89,67,65,67,72,69,41,12,114,66,0,0,0,90,14,
- 100,101,98,117,103,95,111,118,101,114,114,105,100,101,114,97,
- 0,0,0,218,7,109,101,115,115,97,103,101,218,4,104,101,
- 97,100,114,67,0,0,0,90,4,98,97,115,101,114,6,0,
- 0,0,218,4,114,101,115,116,90,3,116,97,103,90,15,97,
- 108,109,111,115,116,95,102,105,108,101,110,97,109,101,218,8,
- 102,105,108,101,110,97,109,101,114,7,0,0,0,114,7,0,
- 0,0,114,8,0,0,0,218,17,99,97,99,104,101,95,102,
- 114,111,109,95,115,111,117,114,99,101,126,1,0,0,115,72,
- 0,0,0,8,18,6,1,2,1,4,255,8,2,4,1,8,
- 1,12,1,10,1,12,1,16,1,8,1,8,1,8,1,24,
- 1,8,1,12,1,6,1,8,2,8,1,8,1,8,1,14,
- 1,14,1,12,1,10,1,8,9,14,1,24,5,12,1,2,
- 4,4,1,8,1,2,1,4,253,12,5,114,10,0,0,0,
- 114,122,0,0,0,99,1,0,0,0,0,0,0,0,0,0,
- 0,0,10,0,0,0,5,0,0,0,67,0,0,0,115,40,
+ 116,111,32,116,104,101,32,101,109,112,116,121,32,115,116,114,
+ 105,110,103,10,32,32,32,32,119,104,105,108,101,32,97,32,
+ 70,97,108,115,101,32,118,97,108,117,101,32,105,115,32,101,
+ 113,117,105,118,97,108,101,110,116,32,116,111,32,115,101,116,
+ 116,105,110,103,32,39,111,112,116,105,109,105,122,97,116,105,
+ 111,110,39,32,116,111,32,39,49,39,46,10,10,32,32,32,
+ 32,73,102,32,115,121,115,46,105,109,112,108,101,109,101,110,
+ 116,97,116,105,111,110,46,99,97,99,104,101,95,116,97,103,
+ 32,105,115,32,78,111,110,101,32,116,104,101,110,32,78,111,
+ 116,73,109,112,108,101,109,101,110,116,101,100,69,114,114,111,
+ 114,32,105,115,32,114,97,105,115,101,100,46,10,10,32,32,
+ 32,32,78,122,70,116,104,101,32,100,101,98,117,103,95,111,
+ 118,101,114,114,105,100,101,32,112,97,114,97,109,101,116,101,
+ 114,32,105,115,32,100,101,112,114,101,99,97,116,101,100,59,
+ 32,117,115,101,32,39,111,112,116,105,109,105,122,97,116,105,
+ 111,110,39,32,105,110,115,116,101,97,100,122,50,100,101,98,
+ 117,103,95,111,118,101,114,114,105,100,101,32,111,114,32,111,
+ 112,116,105,109,105,122,97,116,105,111,110,32,109,117,115,116,
+ 32,98,101,32,115,101,116,32,116,111,32,78,111,110,101,114,
+ 11,0,0,0,114,3,0,0,0,218,1,46,250,36,115,121,
+ 115,46,105,109,112,108,101,109,101,110,116,97,116,105,111,110,
+ 46,99,97,99,104,101,95,116,97,103,32,105,115,32,78,111,
+ 110,101,114,0,0,0,0,122,24,123,33,114,125,32,105,115,
+ 32,110,111,116,32,97,108,112,104,97,110,117,109,101,114,105,
+ 99,122,7,123,125,46,123,125,123,125,114,12,0,0,0,114,
+ 45,0,0,0,41,28,218,9,95,119,97,114,110,105,110,103,
+ 115,218,4,119,97,114,110,218,18,68,101,112,114,101,99,97,
+ 116,105,111,110,87,97,114,110,105,110,103,218,9,84,121,112,
+ 101,69,114,114,111,114,114,19,0,0,0,218,6,102,115,112,
+ 97,116,104,114,75,0,0,0,218,10,114,112,97,114,116,105,
+ 116,105,111,110,114,16,0,0,0,218,14,105,109,112,108,101,
+ 109,101,110,116,97,116,105,111,110,218,9,99,97,99,104,101,
+ 95,116,97,103,218,19,78,111,116,73,109,112,108,101,109,101,
+ 110,116,101,100,69,114,114,111,114,114,63,0,0,0,114,17,
+ 0,0,0,218,8,111,112,116,105,109,105,122,101,218,3,115,
+ 116,114,218,7,105,115,97,108,110,117,109,218,10,86,97,108,
+ 117,101,69,114,114,111,114,114,90,0,0,0,218,4,95,79,
+ 80,84,218,17,66,89,84,69,67,79,68,69,95,83,85,70,
+ 70,73,88,69,83,218,14,112,121,99,97,99,104,101,95,112,
+ 114,101,102,105,120,114,87,0,0,0,114,68,0,0,0,114,
+ 83,0,0,0,114,51,0,0,0,218,6,108,115,116,114,105,
+ 112,218,8,95,80,89,67,65,67,72,69,41,12,114,66,0,
+ 0,0,90,14,100,101,98,117,103,95,111,118,101,114,114,105,
+ 100,101,114,97,0,0,0,218,7,109,101,115,115,97,103,101,
+ 218,4,104,101,97,100,114,67,0,0,0,90,4,98,97,115,
+ 101,114,6,0,0,0,218,4,114,101,115,116,90,3,116,97,
+ 103,90,15,97,108,109,111,115,116,95,102,105,108,101,110,97,
+ 109,101,218,8,102,105,108,101,110,97,109,101,114,7,0,0,
+ 0,114,7,0,0,0,114,8,0,0,0,218,17,99,97,99,
+ 104,101,95,102,114,111,109,95,115,111,117,114,99,101,127,1,
+ 0,0,115,72,0,0,0,8,18,6,1,2,1,4,255,8,
+ 2,4,1,8,1,12,1,10,1,12,1,16,1,8,1,8,
+ 1,8,1,24,1,8,1,12,1,6,1,8,2,8,1,8,
+ 1,8,1,14,1,14,1,12,1,10,1,8,9,14,1,24,
+ 5,12,1,2,4,4,1,8,1,2,1,4,253,12,5,114,
+ 10,0,0,0,114,122,0,0,0,99,1,0,0,0,0,0,
+ 0,0,0,0,0,0,5,0,0,0,67,0,0,0,115,40,
1,0,0,116,0,106,1,106,2,100,1,117,0,114,10,116,
3,100,2,131,1,130,1,116,4,160,5,124,0,161,1,125,
0,116,6,124,0,131,1,92,2,125,1,125,2,100,3,125,
@@ -565,77 +559,76 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = {
0,90,9,111,112,116,95,108,101,118,101,108,90,13,98,97,
115,101,95,102,105,108,101,110,97,109,101,114,7,0,0,0,
114,7,0,0,0,114,8,0,0,0,218,17,115,111,117,114,
- 99,101,95,102,114,111,109,95,99,97,99,104,101,197,1,0,
+ 99,101,95,102,114,111,109,95,99,97,99,104,101,198,1,0,
0,115,60,0,0,0,12,9,8,1,10,1,12,1,4,1,
10,1,12,1,14,1,16,1,4,1,4,1,12,1,8,1,
8,1,2,1,8,255,10,2,8,1,14,1,8,1,16,1,
10,1,4,1,2,1,8,255,16,2,8,1,16,1,14,2,
18,1,114,10,0,0,0,114,129,0,0,0,99,1,0,0,
- 0,0,0,0,0,0,0,0,0,5,0,0,0,9,0,0,
- 0,67,0,0,0,115,126,0,0,0,116,0,124,0,131,1,
- 100,1,107,2,114,8,100,2,83,0,124,0,160,1,100,3,
- 161,1,92,3,125,1,125,2,125,3,124,1,114,28,124,3,
- 160,2,161,0,100,4,100,5,133,2,25,0,100,6,107,3,
- 114,30,124,0,83,0,9,0,116,3,124,0,131,1,125,4,
- 110,18,35,0,4,0,116,4,116,5,102,2,121,62,1,0,
- 1,0,1,0,124,0,100,2,100,5,133,2,25,0,125,4,
- 89,0,110,1,37,0,116,6,124,4,131,1,114,60,124,4,
- 83,0,124,0,83,0,119,0,41,7,122,188,67,111,110,118,
- 101,114,116,32,97,32,98,121,116,101,99,111,100,101,32,102,
- 105,108,101,32,112,97,116,104,32,116,111,32,97,32,115,111,
- 117,114,99,101,32,112,97,116,104,32,40,105,102,32,112,111,
- 115,115,105,98,108,101,41,46,10,10,32,32,32,32,84,104,
- 105,115,32,102,117,110,99,116,105,111,110,32,101,120,105,115,
- 116,115,32,112,117,114,101,108,121,32,102,111,114,32,98,97,
- 99,107,119,97,114,100,115,45,99,111,109,112,97,116,105,98,
- 105,108,105,116,121,32,102,111,114,10,32,32,32,32,80,121,
- 73,109,112,111,114,116,95,69,120,101,99,67,111,100,101,77,
- 111,100,117,108,101,87,105,116,104,70,105,108,101,110,97,109,
- 101,115,40,41,32,105,110,32,116,104,101,32,67,32,65,80,
- 73,46,10,10,32,32,32,32,114,0,0,0,0,78,114,98,
- 0,0,0,233,253,255,255,255,233,255,255,255,255,90,2,112,
- 121,41,7,114,4,0,0,0,114,105,0,0,0,218,5,108,
- 111,119,101,114,114,129,0,0,0,114,108,0,0,0,114,112,
- 0,0,0,114,81,0,0,0,41,5,218,13,98,121,116,101,
- 99,111,100,101,95,112,97,116,104,114,120,0,0,0,218,1,
- 95,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,7,0,0,0,114,7,
- 0,0,0,114,8,0,0,0,218,15,95,103,101,116,95,115,
- 111,117,114,99,101,102,105,108,101,237,1,0,0,115,26,0,
- 0,0,12,7,4,1,16,1,24,1,4,1,2,1,10,1,
- 2,128,16,1,16,1,2,128,16,1,2,254,115,12,0,0,
- 0,159,4,36,0,164,15,53,7,190,1,53,7,114,136,0,
- 0,0,99,1,0,0,0,0,0,0,0,0,0,0,0,1,
- 0,0,0,8,0,0,0,67,0,0,0,115,70,0,0,0,
- 124,0,160,0,116,1,116,2,131,1,161,1,114,23,9,0,
- 116,3,124,0,131,1,83,0,35,0,4,0,116,4,121,34,
- 1,0,1,0,1,0,89,0,100,0,83,0,37,0,124,0,
- 160,0,116,1,116,5,131,1,161,1,114,32,124,0,83,0,
- 100,0,83,0,119,0,114,70,0,0,0,41,6,114,59,0,
- 0,0,218,5,116,117,112,108,101,114,128,0,0,0,114,122,
- 0,0,0,114,108,0,0,0,114,114,0,0,0,41,1,114,
- 121,0,0,0,114,7,0,0,0,114,7,0,0,0,114,8,
- 0,0,0,218,11,95,103,101,116,95,99,97,99,104,101,100,
- 0,2,0,0,115,22,0,0,0,14,1,2,1,8,1,2,
- 128,12,1,6,1,2,128,14,1,4,1,4,2,2,251,115,
- 12,0,0,0,136,3,12,0,140,7,22,7,162,1,22,7,
- 114,138,0,0,0,99,1,0,0,0,0,0,0,0,0,0,
- 0,0,2,0,0,0,8,0,0,0,67,0,0,0,115,52,
- 0,0,0,9,0,116,0,124,0,131,1,106,1,125,1,110,
- 12,35,0,4,0,116,2,121,25,1,0,1,0,1,0,100,
- 1,125,1,89,0,110,1,37,0,124,1,100,2,79,0,125,
- 1,124,1,83,0,119,0,41,4,122,51,67,97,108,99,117,
- 108,97,116,101,32,116,104,101,32,109,111,100,101,32,112,101,
- 114,109,105,115,115,105,111,110,115,32,102,111,114,32,97,32,
- 98,121,116,101,99,111,100,101,32,102,105,108,101,46,114,88,
- 0,0,0,233,128,0,0,0,78,41,3,114,76,0,0,0,
- 114,78,0,0,0,114,77,0,0,0,41,2,114,66,0,0,
- 0,114,79,0,0,0,114,7,0,0,0,114,7,0,0,0,
- 114,8,0,0,0,218,10,95,99,97,108,99,95,109,111,100,
- 101,12,2,0,0,115,18,0,0,0,2,2,12,1,2,128,
- 12,1,8,1,2,128,8,3,4,1,2,251,115,12,0,0,
- 0,129,5,7,0,135,9,18,7,153,1,18,7,114,140,0,
- 0,0,99,1,0,0,0,0,0,0,0,0,0,0,0,3,
+ 0,0,0,0,0,0,0,0,0,9,0,0,0,67,0,0,
+ 0,115,126,0,0,0,116,0,124,0,131,1,100,1,107,2,
+ 114,8,100,2,83,0,124,0,160,1,100,3,161,1,92,3,
+ 125,1,125,2,125,3,124,1,114,28,124,3,160,2,161,0,
+ 100,4,100,5,133,2,25,0,100,6,107,3,114,30,124,0,
+ 83,0,9,0,116,3,124,0,131,1,125,4,110,18,35,0,
+ 4,0,116,4,116,5,102,2,121,62,1,0,1,0,1,0,
+ 124,0,100,2,100,5,133,2,25,0,125,4,89,0,110,1,
+ 37,0,116,6,124,4,131,1,114,60,124,4,83,0,124,0,
+ 83,0,119,0,41,7,122,188,67,111,110,118,101,114,116,32,
+ 97,32,98,121,116,101,99,111,100,101,32,102,105,108,101,32,
+ 112,97,116,104,32,116,111,32,97,32,115,111,117,114,99,101,
+ 32,112,97,116,104,32,40,105,102,32,112,111,115,115,105,98,
+ 108,101,41,46,10,10,32,32,32,32,84,104,105,115,32,102,
+ 117,110,99,116,105,111,110,32,101,120,105,115,116,115,32,112,
+ 117,114,101,108,121,32,102,111,114,32,98,97,99,107,119,97,
+ 114,100,115,45,99,111,109,112,97,116,105,98,105,108,105,116,
+ 121,32,102,111,114,10,32,32,32,32,80,121,73,109,112,111,
+ 114,116,95,69,120,101,99,67,111,100,101,77,111,100,117,108,
+ 101,87,105,116,104,70,105,108,101,110,97,109,101,115,40,41,
+ 32,105,110,32,116,104,101,32,67,32,65,80,73,46,10,10,
+ 32,32,32,32,114,0,0,0,0,78,114,98,0,0,0,233,
+ 253,255,255,255,233,255,255,255,255,90,2,112,121,41,7,114,
+ 4,0,0,0,114,105,0,0,0,218,5,108,111,119,101,114,
+ 114,129,0,0,0,114,108,0,0,0,114,112,0,0,0,114,
+ 81,0,0,0,41,5,218,13,98,121,116,101,99,111,100,101,
+ 95,112,97,116,104,114,120,0,0,0,218,1,95,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,7,0,0,0,114,7,0,0,0,114,
+ 8,0,0,0,218,15,95,103,101,116,95,115,111,117,114,99,
+ 101,102,105,108,101,238,1,0,0,115,26,0,0,0,12,7,
+ 4,1,16,1,24,1,4,1,2,1,10,1,2,128,16,1,
+ 16,1,2,128,16,1,2,254,115,12,0,0,0,159,4,36,
+ 0,164,15,53,7,190,1,53,7,114,136,0,0,0,99,1,
+ 0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,67,
+ 0,0,0,115,70,0,0,0,124,0,160,0,116,1,116,2,
+ 131,1,161,1,114,23,9,0,116,3,124,0,131,1,83,0,
+ 35,0,4,0,116,4,121,34,1,0,1,0,1,0,89,0,
+ 100,0,83,0,37,0,124,0,160,0,116,1,116,5,131,1,
+ 161,1,114,32,124,0,83,0,100,0,83,0,119,0,114,70,
+ 0,0,0,41,6,114,59,0,0,0,218,5,116,117,112,108,
+ 101,114,128,0,0,0,114,122,0,0,0,114,108,0,0,0,
+ 114,114,0,0,0,41,1,114,121,0,0,0,114,7,0,0,
+ 0,114,7,0,0,0,114,8,0,0,0,218,11,95,103,101,
+ 116,95,99,97,99,104,101,100,1,2,0,0,115,22,0,0,
+ 0,14,1,2,1,8,1,2,128,12,1,6,1,2,128,14,
+ 1,4,1,4,2,2,251,115,12,0,0,0,136,3,12,0,
+ 140,7,22,7,162,1,22,7,114,138,0,0,0,99,1,0,
+ 0,0,0,0,0,0,0,0,0,0,8,0,0,0,67,0,
+ 0,0,115,52,0,0,0,9,0,116,0,124,0,131,1,106,
+ 1,125,1,110,12,35,0,4,0,116,2,121,25,1,0,1,
+ 0,1,0,100,1,125,1,89,0,110,1,37,0,124,1,100,
+ 2,79,0,125,1,124,1,83,0,119,0,41,4,122,51,67,
+ 97,108,99,117,108,97,116,101,32,116,104,101,32,109,111,100,
+ 101,32,112,101,114,109,105,115,115,105,111,110,115,32,102,111,
+ 114,32,97,32,98,121,116,101,99,111,100,101,32,102,105,108,
+ 101,46,114,88,0,0,0,233,128,0,0,0,78,41,3,114,
+ 76,0,0,0,114,78,0,0,0,114,77,0,0,0,41,2,
+ 114,66,0,0,0,114,79,0,0,0,114,7,0,0,0,114,
+ 7,0,0,0,114,8,0,0,0,218,10,95,99,97,108,99,
+ 95,109,111,100,101,13,2,0,0,115,18,0,0,0,2,2,
+ 12,1,2,128,12,1,8,1,2,128,8,3,4,1,2,251,
+ 115,12,0,0,0,129,5,7,0,135,9,18,7,153,1,18,
+ 7,114,140,0,0,0,99,1,0,0,0,0,0,0,0,0,
0,0,0,4,0,0,0,3,0,0,0,115,52,0,0,0,
100,6,135,0,102,1,100,2,100,3,132,9,125,1,116,0,
100,1,117,1,114,15,116,0,106,1,125,2,110,4,100,4,
@@ -657,85 +650,84 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = {
108,115,32,116,104,101,110,32,73,109,112,111,114,116,69,114,
114,111,114,32,105,115,32,114,97,105,115,101,100,46,10,10,
32,32,32,32,78,99,2,0,0,0,0,0,0,0,0,0,
- 0,0,4,0,0,0,5,0,0,0,31,0,0,0,115,76,
- 0,0,0,124,1,100,0,117,0,114,8,124,0,106,0,125,
- 1,110,18,124,0,106,0,124,1,107,3,114,26,116,1,100,
- 1,124,0,106,0,155,1,100,2,124,1,155,1,157,4,124,
- 1,100,3,141,2,130,1,136,0,124,0,124,1,103,2,124,
- 2,162,1,82,0,105,0,124,3,164,1,142,1,83,0,41,
- 4,78,122,11,108,111,97,100,101,114,32,102,111,114,32,122,
- 15,32,99,97,110,110,111,116,32,104,97,110,100,108,101,32,
- 169,1,218,4,110,97,109,101,41,2,114,142,0,0,0,218,
- 11,73,109,112,111,114,116,69,114,114,111,114,41,4,218,4,
- 115,101,108,102,114,142,0,0,0,218,4,97,114,103,115,218,
- 6,107,119,97,114,103,115,169,1,218,6,109,101,116,104,111,
- 100,114,7,0,0,0,114,8,0,0,0,218,19,95,99,104,
- 101,99,107,95,110,97,109,101,95,119,114,97,112,112,101,114,
- 32,2,0,0,115,18,0,0,0,8,1,8,1,10,1,4,
- 1,12,1,2,255,2,1,6,255,24,2,114,10,0,0,0,
- 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,101,114,99,2,0,0,0,0,
- 0,0,0,0,0,0,0,3,0,0,0,7,0,0,0,83,
- 0,0,0,115,56,0,0,0,100,1,68,0,93,16,125,2,
- 116,0,124,1,124,2,131,2,114,18,116,1,124,0,124,2,
- 116,2,124,1,124,2,131,2,131,3,1,0,113,2,124,0,
- 106,3,160,4,124,1,106,3,161,1,1,0,100,0,83,0,
- 41,2,78,41,4,218,10,95,95,109,111,100,117,108,101,95,
- 95,218,8,95,95,110,97,109,101,95,95,218,12,95,95,113,
- 117,97,108,110,97,109,101,95,95,218,7,95,95,100,111,99,
- 95,95,41,5,218,7,104,97,115,97,116,116,114,218,7,115,
- 101,116,97,116,116,114,218,7,103,101,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,86,0,
- 0,0,114,7,0,0,0,114,7,0,0,0,114,8,0,0,
- 0,218,5,95,119,114,97,112,45,2,0,0,115,10,0,0,
- 0,8,1,10,1,18,1,2,128,18,1,114,10,0,0,0,
- 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,114,70,0,0,
- 0,41,2,218,10,95,98,111,111,116,115,116,114,97,112,114,
- 159,0,0,0,41,3,114,148,0,0,0,114,149,0,0,0,
- 114,159,0,0,0,114,7,0,0,0,114,147,0,0,0,114,
- 8,0,0,0,218,11,95,99,104,101,99,107,95,110,97,109,
- 101,24,2,0,0,115,12,0,0,0,14,8,8,10,8,1,
- 8,2,10,6,4,1,114,10,0,0,0,114,161,0,0,0,
- 99,2,0,0,0,0,0,0,0,0,0,0,0,5,0,0,
- 0,6,0,0,0,67,0,0,0,115,72,0,0,0,116,0,
- 160,1,100,1,116,2,161,2,1,0,124,0,160,3,124,1,
- 161,1,92,2,125,2,125,3,124,2,100,2,117,0,114,34,
- 116,4,124,3,131,1,114,34,100,3,125,4,116,0,160,1,
- 124,4,160,5,124,3,100,4,25,0,161,1,116,6,161,2,
- 1,0,124,2,83,0,41,5,122,155,84,114,121,32,116,111,
- 32,102,105,110,100,32,97,32,108,111,97,100,101,114,32,102,
- 111,114,32,116,104,101,32,115,112,101,99,105,102,105,101,100,
- 32,109,111,100,117,108,101,32,98,121,32,100,101,108,101,103,
- 97,116,105,110,103,32,116,111,10,32,32,32,32,115,101,108,
- 102,46,102,105,110,100,95,108,111,97,100,101,114,40,41,46,
- 10,10,32,32,32,32,84,104,105,115,32,109,101,116,104,111,
- 100,32,105,115,32,100,101,112,114,101,99,97,116,101,100,32,
- 105,110,32,102,97,118,111,114,32,111,102,32,102,105,110,100,
- 101,114,46,102,105,110,100,95,115,112,101,99,40,41,46,10,
- 10,32,32,32,32,122,90,102,105,110,100,95,109,111,100,117,
- 108,101,40,41,32,105,115,32,100,101,112,114,101,99,97,116,
- 101,100,32,97,110,100,32,115,108,97,116,101,100,32,102,111,
- 114,32,114,101,109,111,118,97,108,32,105,110,32,80,121,116,
- 104,111,110,32,51,46,49,50,59,32,117,115,101,32,102,105,
- 110,100,95,115,112,101,99,40,41,32,105,110,115,116,101,97,
- 100,78,122,44,78,111,116,32,105,109,112,111,114,116,105,110,
- 103,32,100,105,114,101,99,116,111,114,121,32,123,125,58,32,
- 109,105,115,115,105,110,103,32,95,95,105,110,105,116,95,95,
- 114,0,0,0,0,41,7,114,100,0,0,0,114,101,0,0,
- 0,114,102,0,0,0,218,11,102,105,110,100,95,108,111,97,
- 100,101,114,114,4,0,0,0,114,90,0,0,0,218,13,73,
- 109,112,111,114,116,87,97,114,110,105,110,103,41,5,114,144,
- 0,0,0,218,8,102,117,108,108,110,97,109,101,218,6,108,
- 111,97,100,101,114,218,8,112,111,114,116,105,111,110,115,218,
- 3,109,115,103,114,7,0,0,0,114,7,0,0,0,114,8,
- 0,0,0,218,17,95,102,105,110,100,95,109,111,100,117,108,
- 101,95,115,104,105,109,55,2,0,0,115,16,0,0,0,6,
- 7,2,2,4,254,14,6,16,1,4,1,22,1,4,1,114,
- 10,0,0,0,114,168,0,0,0,99,3,0,0,0,0,0,
- 0,0,0,0,0,0,6,0,0,0,4,0,0,0,67,0,
+ 0,0,5,0,0,0,31,0,0,0,115,76,0,0,0,124,
+ 1,100,0,117,0,114,8,124,0,106,0,125,1,110,18,124,
+ 0,106,0,124,1,107,3,114,26,116,1,100,1,124,0,106,
+ 0,155,1,100,2,124,1,155,1,157,4,124,1,100,3,141,
+ 2,130,1,136,0,124,0,124,1,103,2,124,2,162,1,82,
+ 0,105,0,124,3,164,1,142,1,83,0,41,4,78,122,11,
+ 108,111,97,100,101,114,32,102,111,114,32,122,15,32,99,97,
+ 110,110,111,116,32,104,97,110,100,108,101,32,169,1,218,4,
+ 110,97,109,101,41,2,114,142,0,0,0,218,11,73,109,112,
+ 111,114,116,69,114,114,111,114,41,4,218,4,115,101,108,102,
+ 114,142,0,0,0,218,4,97,114,103,115,218,6,107,119,97,
+ 114,103,115,169,1,218,6,109,101,116,104,111,100,114,7,0,
+ 0,0,114,8,0,0,0,218,19,95,99,104,101,99,107,95,
+ 110,97,109,101,95,119,114,97,112,112,101,114,33,2,0,0,
+ 115,18,0,0,0,8,1,8,1,10,1,4,1,12,1,2,
+ 255,2,1,6,255,24,2,114,10,0,0,0,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,101,114,99,2,0,0,0,0,0,0,0,0,
+ 0,0,0,7,0,0,0,83,0,0,0,115,56,0,0,0,
+ 100,1,68,0,93,16,125,2,116,0,124,1,124,2,131,2,
+ 114,18,116,1,124,0,124,2,116,2,124,1,124,2,131,2,
+ 131,3,1,0,113,2,124,0,106,3,160,4,124,1,106,3,
+ 161,1,1,0,100,0,83,0,41,2,78,41,4,218,10,95,
+ 95,109,111,100,117,108,101,95,95,218,8,95,95,110,97,109,
+ 101,95,95,218,12,95,95,113,117,97,108,110,97,109,101,95,
+ 95,218,7,95,95,100,111,99,95,95,41,5,218,7,104,97,
+ 115,97,116,116,114,218,7,115,101,116,97,116,116,114,218,7,
+ 103,101,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,86,0,0,0,114,7,0,0,0,114,
+ 7,0,0,0,114,8,0,0,0,218,5,95,119,114,97,112,
+ 46,2,0,0,115,10,0,0,0,8,1,10,1,18,1,2,
+ 128,18,1,114,10,0,0,0,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,114,70,0,0,0,41,2,218,10,95,98,111,
+ 111,116,115,116,114,97,112,114,159,0,0,0,41,3,114,148,
+ 0,0,0,114,149,0,0,0,114,159,0,0,0,114,7,0,
+ 0,0,114,147,0,0,0,114,8,0,0,0,218,11,95,99,
+ 104,101,99,107,95,110,97,109,101,25,2,0,0,115,12,0,
+ 0,0,14,8,8,10,8,1,8,2,10,6,4,1,114,10,
+ 0,0,0,114,161,0,0,0,99,2,0,0,0,0,0,0,
+ 0,0,0,0,0,6,0,0,0,67,0,0,0,115,72,0,
+ 0,0,116,0,160,1,100,1,116,2,161,2,1,0,124,0,
+ 160,3,124,1,161,1,92,2,125,2,125,3,124,2,100,2,
+ 117,0,114,34,116,4,124,3,131,1,114,34,100,3,125,4,
+ 116,0,160,1,124,4,160,5,124,3,100,4,25,0,161,1,
+ 116,6,161,2,1,0,124,2,83,0,41,5,122,155,84,114,
+ 121,32,116,111,32,102,105,110,100,32,97,32,108,111,97,100,
+ 101,114,32,102,111,114,32,116,104,101,32,115,112,101,99,105,
+ 102,105,101,100,32,109,111,100,117,108,101,32,98,121,32,100,
+ 101,108,101,103,97,116,105,110,103,32,116,111,10,32,32,32,
+ 32,115,101,108,102,46,102,105,110,100,95,108,111,97,100,101,
+ 114,40,41,46,10,10,32,32,32,32,84,104,105,115,32,109,
+ 101,116,104,111,100,32,105,115,32,100,101,112,114,101,99,97,
+ 116,101,100,32,105,110,32,102,97,118,111,114,32,111,102,32,
+ 102,105,110,100,101,114,46,102,105,110,100,95,115,112,101,99,
+ 40,41,46,10,10,32,32,32,32,122,90,102,105,110,100,95,
+ 109,111,100,117,108,101,40,41,32,105,115,32,100,101,112,114,
+ 101,99,97,116,101,100,32,97,110,100,32,115,108,97,116,101,
+ 100,32,102,111,114,32,114,101,109,111,118,97,108,32,105,110,
+ 32,80,121,116,104,111,110,32,51,46,49,50,59,32,117,115,
+ 101,32,102,105,110,100,95,115,112,101,99,40,41,32,105,110,
+ 115,116,101,97,100,78,122,44,78,111,116,32,105,109,112,111,
+ 114,116,105,110,103,32,100,105,114,101,99,116,111,114,121,32,
+ 123,125,58,32,109,105,115,115,105,110,103,32,95,95,105,110,
+ 105,116,95,95,114,0,0,0,0,41,7,114,100,0,0,0,
+ 114,101,0,0,0,114,102,0,0,0,218,11,102,105,110,100,
+ 95,108,111,97,100,101,114,114,4,0,0,0,114,90,0,0,
+ 0,218,13,73,109,112,111,114,116,87,97,114,110,105,110,103,
+ 41,5,114,144,0,0,0,218,8,102,117,108,108,110,97,109,
+ 101,218,6,108,111,97,100,101,114,218,8,112,111,114,116,105,
+ 111,110,115,218,3,109,115,103,114,7,0,0,0,114,7,0,
+ 0,0,114,8,0,0,0,218,17,95,102,105,110,100,95,109,
+ 111,100,117,108,101,95,115,104,105,109,56,2,0,0,115,16,
+ 0,0,0,6,7,2,2,4,254,14,6,16,1,4,1,22,
+ 1,4,1,114,10,0,0,0,114,168,0,0,0,99,3,0,
+ 0,0,0,0,0,0,0,0,0,0,4,0,0,0,67,0,
0,0,115,166,0,0,0,124,0,100,1,100,2,133,2,25,
0,125,3,124,3,116,0,107,3,114,32,100,3,124,1,155,
2,100,4,124,3,155,2,157,4,125,4,116,1,160,2,100,
@@ -800,37 +792,85 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = {
97,105,108,115,90,5,109,97,103,105,99,114,118,0,0,0,
114,17,0,0,0,114,7,0,0,0,114,7,0,0,0,114,
8,0,0,0,218,13,95,99,108,97,115,115,105,102,121,95,
- 112,121,99,75,2,0,0,115,28,0,0,0,12,16,8,1,
+ 112,121,99,76,2,0,0,115,28,0,0,0,12,16,8,1,
16,1,12,1,16,1,12,1,10,1,12,1,8,1,16,1,
8,2,16,1,16,1,4,1,114,10,0,0,0,114,177,0,
- 0,0,99,5,0,0,0,0,0,0,0,0,0,0,0,6,
- 0,0,0,4,0,0,0,67,0,0,0,115,124,0,0,0,
- 116,0,124,0,100,1,100,2,133,2,25,0,131,1,124,1,
- 100,3,64,0,107,3,114,31,100,4,124,3,155,2,157,2,
- 125,5,116,1,160,2,100,5,124,5,161,2,1,0,116,3,
- 124,5,102,1,105,0,124,4,164,1,142,1,130,1,124,2,
- 100,6,117,1,114,60,116,0,124,0,100,2,100,7,133,2,
- 25,0,131,1,124,2,100,3,64,0,107,3,114,58,116,3,
- 100,4,124,3,155,2,157,2,102,1,105,0,124,4,164,1,
- 142,1,130,1,100,6,83,0,100,6,83,0,41,8,97,7,
- 2,0,0,86,97,108,105,100,97,116,101,32,97,32,112,121,
- 99,32,97,103,97,105,110,115,116,32,116,104,101,32,115,111,
- 117,114,99,101,32,108,97,115,116,45,109,111,100,105,102,105,
- 101,100,32,116,105,109,101,46,10,10,32,32,32,32,42,100,
+ 0,0,99,5,0,0,0,0,0,0,0,0,0,0,0,4,
+ 0,0,0,67,0,0,0,115,124,0,0,0,116,0,124,0,
+ 100,1,100,2,133,2,25,0,131,1,124,1,100,3,64,0,
+ 107,3,114,31,100,4,124,3,155,2,157,2,125,5,116,1,
+ 160,2,100,5,124,5,161,2,1,0,116,3,124,5,102,1,
+ 105,0,124,4,164,1,142,1,130,1,124,2,100,6,117,1,
+ 114,60,116,0,124,0,100,2,100,7,133,2,25,0,131,1,
+ 124,2,100,3,64,0,107,3,114,58,116,3,100,4,124,3,
+ 155,2,157,2,102,1,105,0,124,4,164,1,142,1,130,1,
+ 100,6,83,0,100,6,83,0,41,8,97,7,2,0,0,86,
+ 97,108,105,100,97,116,101,32,97,32,112,121,99,32,97,103,
+ 97,105,110,115,116,32,116,104,101,32,115,111,117,114,99,101,
+ 32,108,97,115,116,45,109,111,100,105,102,105,101,100,32,116,
+ 105,109,101,46,10,10,32,32,32,32,42,100,97,116,97,42,
+ 32,105,115,32,116,104,101,32,99,111,110,116,101,110,116,115,
+ 32,111,102,32,116,104,101,32,112,121,99,32,102,105,108,101,
+ 46,32,40,79,110,108,121,32,116,104,101,32,102,105,114,115,
+ 116,32,49,54,32,98,121,116,101,115,32,97,114,101,10,32,
+ 32,32,32,114,101,113,117,105,114,101,100,46,41,10,10,32,
+ 32,32,32,42,115,111,117,114,99,101,95,109,116,105,109,101,
+ 42,32,105,115,32,116,104,101,32,108,97,115,116,32,109,111,
+ 100,105,102,105,101,100,32,116,105,109,101,115,116,97,109,112,
+ 32,111,102,32,116,104,101,32,115,111,117,114,99,101,32,102,
+ 105,108,101,46,10,10,32,32,32,32,42,115,111,117,114,99,
+ 101,95,115,105,122,101,42,32,105,115,32,78,111,110,101,32,
+ 111,114,32,116,104,101,32,115,105,122,101,32,111,102,32,116,
+ 104,101,32,115,111,117,114,99,101,32,102,105,108,101,32,105,
+ 110,32,98,121,116,101,115,46,10,10,32,32,32,32,42,110,
+ 97,109,101,42,32,105,115,32,116,104,101,32,110,97,109,101,
+ 32,111,102,32,116,104,101,32,109,111,100,117,108,101,32,98,
+ 101,105,110,103,32,105,109,112,111,114,116,101,100,46,32,73,
+ 116,32,105,115,32,117,115,101,100,32,102,111,114,32,108,111,
+ 103,103,105,110,103,46,10,10,32,32,32,32,42,101,120,99,
+ 95,100,101,116,97,105,108,115,42,32,105,115,32,97,32,100,
+ 105,99,116,105,111,110,97,114,121,32,112,97,115,115,101,100,
+ 32,116,111,32,73,109,112,111,114,116,69,114,114,111,114,32,
+ 105,102,32,105,116,32,114,97,105,115,101,100,32,102,111,114,
+ 10,32,32,32,32,105,109,112,114,111,118,101,100,32,100,101,
+ 98,117,103,103,105,110,103,46,10,10,32,32,32,32,65,110,
+ 32,73,109,112,111,114,116,69,114,114,111,114,32,105,115,32,
+ 114,97,105,115,101,100,32,105,102,32,116,104,101,32,98,121,
+ 116,101,99,111,100,101,32,105,115,32,115,116,97,108,101,46,
+ 10,10,32,32,32,32,114,171,0,0,0,233,12,0,0,0,
+ 114,31,0,0,0,122,22,98,121,116,101,99,111,100,101,32,
+ 105,115,32,115,116,97,108,101,32,102,111,114,32,114,169,0,
+ 0,0,78,114,170,0,0,0,41,4,114,43,0,0,0,114,
+ 160,0,0,0,114,174,0,0,0,114,143,0,0,0,41,6,
+ 114,42,0,0,0,218,12,115,111,117,114,99,101,95,109,116,
+ 105,109,101,218,11,115,111,117,114,99,101,95,115,105,122,101,
+ 114,142,0,0,0,114,176,0,0,0,114,118,0,0,0,114,
+ 7,0,0,0,114,7,0,0,0,114,8,0,0,0,218,23,
+ 95,118,97,108,105,100,97,116,101,95,116,105,109,101,115,116,
+ 97,109,112,95,112,121,99,109,2,0,0,115,18,0,0,0,
+ 24,19,10,1,12,1,16,1,8,1,22,1,2,255,22,2,
+ 8,254,114,10,0,0,0,114,181,0,0,0,99,4,0,0,
+ 0,0,0,0,0,0,0,0,0,4,0,0,0,67,0,0,
+ 0,115,42,0,0,0,124,0,100,1,100,2,133,2,25,0,
+ 124,1,107,3,114,19,116,0,100,3,124,2,155,2,157,2,
+ 102,1,105,0,124,3,164,1,142,1,130,1,100,4,83,0,
+ 41,5,97,243,1,0,0,86,97,108,105,100,97,116,101,32,
+ 97,32,104,97,115,104,45,98,97,115,101,100,32,112,121,99,
+ 32,98,121,32,99,104,101,99,107,105,110,103,32,116,104,101,
+ 32,114,101,97,108,32,115,111,117,114,99,101,32,104,97,115,
+ 104,32,97,103,97,105,110,115,116,32,116,104,101,32,111,110,
+ 101,32,105,110,10,32,32,32,32,116,104,101,32,112,121,99,
+ 32,104,101,97,100,101,114,46,10,10,32,32,32,32,42,100,
97,116,97,42,32,105,115,32,116,104,101,32,99,111,110,116,
101,110,116,115,32,111,102,32,116,104,101,32,112,121,99,32,
102,105,108,101,46,32,40,79,110,108,121,32,116,104,101,32,
102,105,114,115,116,32,49,54,32,98,121,116,101,115,32,97,
114,101,10,32,32,32,32,114,101,113,117,105,114,101,100,46,
- 41,10,10,32,32,32,32,42,115,111,117,114,99,101,95,109,
- 116,105,109,101,42,32,105,115,32,116,104,101,32,108,97,115,
- 116,32,109,111,100,105,102,105,101,100,32,116,105,109,101,115,
- 116,97,109,112,32,111,102,32,116,104,101,32,115,111,117,114,
- 99,101,32,102,105,108,101,46,10,10,32,32,32,32,42,115,
- 111,117,114,99,101,95,115,105,122,101,42,32,105,115,32,78,
- 111,110,101,32,111,114,32,116,104,101,32,115,105,122,101,32,
- 111,102,32,116,104,101,32,115,111,117,114,99,101,32,102,105,
- 108,101,32,105,110,32,98,121,116,101,115,46,10,10,32,32,
+ 41,10,10,32,32,32,32,42,115,111,117,114,99,101,95,104,
+ 97,115,104,42,32,105,115,32,116,104,101,32,105,109,112,111,
+ 114,116,108,105,98,46,117,116,105,108,46,115,111,117,114,99,
+ 101,95,104,97,115,104,40,41,32,111,102,32,116,104,101,32,
+ 115,111,117,114,99,101,32,102,105,108,101,46,10,10,32,32,
32,32,42,110,97,109,101,42,32,105,115,32,116,104,101,32,
110,97,109,101,32,111,102,32,116,104,101,32,109,111,100,117,
108,101,32,98,101,105,110,103,32,105,109,112,111,114,116,101,
@@ -845,91 +885,42 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = {
32,32,65,110,32,73,109,112,111,114,116,69,114,114,111,114,
32,105,115,32,114,97,105,115,101,100,32,105,102,32,116,104,
101,32,98,121,116,101,99,111,100,101,32,105,115,32,115,116,
- 97,108,101,46,10,10,32,32,32,32,114,171,0,0,0,233,
- 12,0,0,0,114,31,0,0,0,122,22,98,121,116,101,99,
- 111,100,101,32,105,115,32,115,116,97,108,101,32,102,111,114,
- 32,114,169,0,0,0,78,114,170,0,0,0,41,4,114,43,
- 0,0,0,114,160,0,0,0,114,174,0,0,0,114,143,0,
- 0,0,41,6,114,42,0,0,0,218,12,115,111,117,114,99,
- 101,95,109,116,105,109,101,218,11,115,111,117,114,99,101,95,
- 115,105,122,101,114,142,0,0,0,114,176,0,0,0,114,118,
- 0,0,0,114,7,0,0,0,114,7,0,0,0,114,8,0,
- 0,0,218,23,95,118,97,108,105,100,97,116,101,95,116,105,
- 109,101,115,116,97,109,112,95,112,121,99,108,2,0,0,115,
- 18,0,0,0,24,19,10,1,12,1,16,1,8,1,22,1,
- 2,255,22,2,8,254,114,10,0,0,0,114,181,0,0,0,
- 99,4,0,0,0,0,0,0,0,0,0,0,0,4,0,0,
- 0,4,0,0,0,67,0,0,0,115,42,0,0,0,124,0,
- 100,1,100,2,133,2,25,0,124,1,107,3,114,19,116,0,
- 100,3,124,2,155,2,157,2,102,1,105,0,124,3,164,1,
- 142,1,130,1,100,4,83,0,41,5,97,243,1,0,0,86,
- 97,108,105,100,97,116,101,32,97,32,104,97,115,104,45,98,
- 97,115,101,100,32,112,121,99,32,98,121,32,99,104,101,99,
- 107,105,110,103,32,116,104,101,32,114,101,97,108,32,115,111,
- 117,114,99,101,32,104,97,115,104,32,97,103,97,105,110,115,
- 116,32,116,104,101,32,111,110,101,32,105,110,10,32,32,32,
- 32,116,104,101,32,112,121,99,32,104,101,97,100,101,114,46,
- 10,10,32,32,32,32,42,100,97,116,97,42,32,105,115,32,
- 116,104,101,32,99,111,110,116,101,110,116,115,32,111,102,32,
- 116,104,101,32,112,121,99,32,102,105,108,101,46,32,40,79,
- 110,108,121,32,116,104,101,32,102,105,114,115,116,32,49,54,
- 32,98,121,116,101,115,32,97,114,101,10,32,32,32,32,114,
- 101,113,117,105,114,101,100,46,41,10,10,32,32,32,32,42,
- 115,111,117,114,99,101,95,104,97,115,104,42,32,105,115,32,
- 116,104,101,32,105,109,112,111,114,116,108,105,98,46,117,116,
- 105,108,46,115,111,117,114,99,101,95,104,97,115,104,40,41,
- 32,111,102,32,116,104,101,32,115,111,117,114,99,101,32,102,
- 105,108,101,46,10,10,32,32,32,32,42,110,97,109,101,42,
- 32,105,115,32,116,104,101,32,110,97,109,101,32,111,102,32,
- 116,104,101,32,109,111,100,117,108,101,32,98,101,105,110,103,
- 32,105,109,112,111,114,116,101,100,46,32,73,116,32,105,115,
- 32,117,115,101,100,32,102,111,114,32,108,111,103,103,105,110,
- 103,46,10,10,32,32,32,32,42,101,120,99,95,100,101,116,
- 97,105,108,115,42,32,105,115,32,97,32,100,105,99,116,105,
- 111,110,97,114,121,32,112,97,115,115,101,100,32,116,111,32,
- 73,109,112,111,114,116,69,114,114,111,114,32,105,102,32,105,
- 116,32,114,97,105,115,101,100,32,102,111,114,10,32,32,32,
- 32,105,109,112,114,111,118,101,100,32,100,101,98,117,103,103,
- 105,110,103,46,10,10,32,32,32,32,65,110,32,73,109,112,
- 111,114,116,69,114,114,111,114,32,105,115,32,114,97,105,115,
- 101,100,32,105,102,32,116,104,101,32,98,121,116,101,99,111,
- 100,101,32,105,115,32,115,116,97,108,101,46,10,10,32,32,
- 32,32,114,171,0,0,0,114,170,0,0,0,122,46,104,97,
- 115,104,32,105,110,32,98,121,116,101,99,111,100,101,32,100,
- 111,101,115,110,39,116,32,109,97,116,99,104,32,104,97,115,
- 104,32,111,102,32,115,111,117,114,99,101,32,78,41,1,114,
- 143,0,0,0,41,4,114,42,0,0,0,218,11,115,111,117,
- 114,99,101,95,104,97,115,104,114,142,0,0,0,114,176,0,
- 0,0,114,7,0,0,0,114,7,0,0,0,114,8,0,0,
- 0,218,18,95,118,97,108,105,100,97,116,101,95,104,97,115,
- 104,95,112,121,99,136,2,0,0,115,14,0,0,0,16,17,
- 2,1,8,1,4,255,2,2,6,254,4,255,114,10,0,0,
- 0,114,183,0,0,0,99,4,0,0,0,0,0,0,0,0,
- 0,0,0,5,0,0,0,5,0,0,0,67,0,0,0,115,
- 76,0,0,0,116,0,160,1,124,0,161,1,125,4,116,2,
- 124,4,116,3,131,2,114,28,116,4,160,5,100,1,124,2,
- 161,2,1,0,124,3,100,2,117,1,114,26,116,6,160,7,
- 124,4,124,3,161,2,1,0,124,4,83,0,116,8,100,3,
- 160,9,124,2,161,1,124,1,124,2,100,4,141,3,130,1,
- 41,5,122,35,67,111,109,112,105,108,101,32,98,121,116,101,
- 99,111,100,101,32,97,115,32,102,111,117,110,100,32,105,110,
- 32,97,32,112,121,99,46,122,21,99,111,100,101,32,111,98,
- 106,101,99,116,32,102,114,111,109,32,123,33,114,125,78,122,
- 23,78,111,110,45,99,111,100,101,32,111,98,106,101,99,116,
- 32,105,110,32,123,33,114,125,169,2,114,142,0,0,0,114,
- 66,0,0,0,41,10,218,7,109,97,114,115,104,97,108,90,
- 5,108,111,97,100,115,218,10,105,115,105,110,115,116,97,110,
- 99,101,218,10,95,99,111,100,101,95,116,121,112,101,114,160,
- 0,0,0,114,174,0,0,0,218,4,95,105,109,112,90,16,
- 95,102,105,120,95,99,111,95,102,105,108,101,110,97,109,101,
- 114,143,0,0,0,114,90,0,0,0,41,5,114,42,0,0,
- 0,114,142,0,0,0,114,133,0,0,0,114,135,0,0,0,
- 218,4,99,111,100,101,114,7,0,0,0,114,7,0,0,0,
- 114,8,0,0,0,218,17,95,99,111,109,112,105,108,101,95,
- 98,121,116,101,99,111,100,101,160,2,0,0,115,18,0,0,
- 0,10,2,10,1,12,1,8,1,12,1,4,1,10,2,4,
- 1,6,255,114,10,0,0,0,114,190,0,0,0,99,3,0,
- 0,0,0,0,0,0,0,0,0,0,4,0,0,0,5,0,
+ 97,108,101,46,10,10,32,32,32,32,114,171,0,0,0,114,
+ 170,0,0,0,122,46,104,97,115,104,32,105,110,32,98,121,
+ 116,101,99,111,100,101,32,100,111,101,115,110,39,116,32,109,
+ 97,116,99,104,32,104,97,115,104,32,111,102,32,115,111,117,
+ 114,99,101,32,78,41,1,114,143,0,0,0,41,4,114,42,
+ 0,0,0,218,11,115,111,117,114,99,101,95,104,97,115,104,
+ 114,142,0,0,0,114,176,0,0,0,114,7,0,0,0,114,
+ 7,0,0,0,114,8,0,0,0,218,18,95,118,97,108,105,
+ 100,97,116,101,95,104,97,115,104,95,112,121,99,137,2,0,
+ 0,115,14,0,0,0,16,17,2,1,8,1,4,255,2,2,
+ 6,254,4,255,114,10,0,0,0,114,183,0,0,0,99,4,
+ 0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,67,
+ 0,0,0,115,76,0,0,0,116,0,160,1,124,0,161,1,
+ 125,4,116,2,124,4,116,3,131,2,114,28,116,4,160,5,
+ 100,1,124,2,161,2,1,0,124,3,100,2,117,1,114,26,
+ 116,6,160,7,124,4,124,3,161,2,1,0,124,4,83,0,
+ 116,8,100,3,160,9,124,2,161,1,124,1,124,2,100,4,
+ 141,3,130,1,41,5,122,35,67,111,109,112,105,108,101,32,
+ 98,121,116,101,99,111,100,101,32,97,115,32,102,111,117,110,
+ 100,32,105,110,32,97,32,112,121,99,46,122,21,99,111,100,
+ 101,32,111,98,106,101,99,116,32,102,114,111,109,32,123,33,
+ 114,125,78,122,23,78,111,110,45,99,111,100,101,32,111,98,
+ 106,101,99,116,32,105,110,32,123,33,114,125,169,2,114,142,
+ 0,0,0,114,66,0,0,0,41,10,218,7,109,97,114,115,
+ 104,97,108,90,5,108,111,97,100,115,218,10,105,115,105,110,
+ 115,116,97,110,99,101,218,10,95,99,111,100,101,95,116,121,
+ 112,101,114,160,0,0,0,114,174,0,0,0,218,4,95,105,
+ 109,112,90,16,95,102,105,120,95,99,111,95,102,105,108,101,
+ 110,97,109,101,114,143,0,0,0,114,90,0,0,0,41,5,
+ 114,42,0,0,0,114,142,0,0,0,114,133,0,0,0,114,
+ 135,0,0,0,218,4,99,111,100,101,114,7,0,0,0,114,
+ 7,0,0,0,114,8,0,0,0,218,17,95,99,111,109,112,
+ 105,108,101,95,98,121,116,101,99,111,100,101,161,2,0,0,
+ 115,18,0,0,0,10,2,10,1,12,1,8,1,12,1,4,
+ 1,10,2,4,1,6,255,114,10,0,0,0,114,190,0,0,
+ 0,99,3,0,0,0,0,0,0,0,0,0,0,0,5,0,
0,0,67,0,0,0,115,70,0,0,0,116,0,116,1,131,
1,125,3,124,3,160,2,116,3,100,1,131,1,161,1,1,
0,124,3,160,2,116,3,124,1,131,1,161,1,1,0,124,
@@ -945,129 +936,128 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = {
180,0,0,0,114,42,0,0,0,114,7,0,0,0,114,7,
0,0,0,114,8,0,0,0,218,22,95,99,111,100,101,95,
116,111,95,116,105,109,101,115,116,97,109,112,95,112,121,99,
- 173,2,0,0,115,12,0,0,0,8,2,14,1,14,1,14,
+ 174,2,0,0,115,12,0,0,0,8,2,14,1,14,1,14,
1,16,1,4,1,114,10,0,0,0,114,195,0,0,0,84,
99,3,0,0,0,0,0,0,0,0,0,0,0,5,0,0,
- 0,5,0,0,0,67,0,0,0,115,80,0,0,0,116,0,
- 116,1,131,1,125,3,100,1,124,2,100,1,62,0,66,0,
- 125,4,124,3,160,2,116,3,124,4,131,1,161,1,1,0,
- 116,4,124,1,131,1,100,2,107,2,115,25,74,0,130,1,
- 124,3,160,2,124,1,161,1,1,0,124,3,160,2,116,5,
- 160,6,124,0,161,1,161,1,1,0,124,3,83,0,41,4,
- 122,38,80,114,111,100,117,99,101,32,116,104,101,32,100,97,
- 116,97,32,102,111,114,32,97,32,104,97,115,104,45,98,97,
- 115,101,100,32,112,121,99,46,114,3,0,0,0,114,171,0,
- 0,0,78,41,7,114,191,0,0,0,114,173,0,0,0,114,
- 192,0,0,0,114,37,0,0,0,114,4,0,0,0,114,185,
- 0,0,0,114,193,0,0,0,41,5,114,189,0,0,0,114,
- 182,0,0,0,90,7,99,104,101,99,107,101,100,114,42,0,
- 0,0,114,17,0,0,0,114,7,0,0,0,114,7,0,0,
- 0,114,8,0,0,0,218,17,95,99,111,100,101,95,116,111,
- 95,104,97,115,104,95,112,121,99,183,2,0,0,115,14,0,
- 0,0,8,2,12,1,14,1,16,1,10,1,16,1,4,1,
- 114,10,0,0,0,114,196,0,0,0,99,1,0,0,0,0,
- 0,0,0,0,0,0,0,5,0,0,0,6,0,0,0,67,
- 0,0,0,115,62,0,0,0,100,1,100,2,108,0,125,1,
- 116,1,160,2,124,0,161,1,106,3,125,2,124,1,160,4,
- 124,2,161,1,125,3,116,1,160,5,100,2,100,3,161,2,
- 125,4,124,4,160,6,124,0,160,6,124,3,100,1,25,0,
- 161,1,161,1,83,0,41,4,122,121,68,101,99,111,100,101,
- 32,98,121,116,101,115,32,114,101,112,114,101,115,101,110,116,
- 105,110,103,32,115,111,117,114,99,101,32,99,111,100,101,32,
- 97,110,100,32,114,101,116,117,114,110,32,116,104,101,32,115,
- 116,114,105,110,103,46,10,10,32,32,32,32,85,110,105,118,
- 101,114,115,97,108,32,110,101,119,108,105,110,101,32,115,117,
- 112,112,111,114,116,32,105,115,32,117,115,101,100,32,105,110,
- 32,116,104,101,32,100,101,99,111,100,105,110,103,46,10,32,
- 32,32,32,114,0,0,0,0,78,84,41,7,218,8,116,111,
- 107,101,110,105,122,101,114,92,0,0,0,90,7,66,121,116,
- 101,115,73,79,90,8,114,101,97,100,108,105,110,101,90,15,
- 100,101,116,101,99,116,95,101,110,99,111,100,105,110,103,90,
- 25,73,110,99,114,101,109,101,110,116,97,108,78,101,119,108,
- 105,110,101,68,101,99,111,100,101,114,218,6,100,101,99,111,
- 100,101,41,5,218,12,115,111,117,114,99,101,95,98,121,116,
- 101,115,114,197,0,0,0,90,21,115,111,117,114,99,101,95,
- 98,121,116,101,115,95,114,101,97,100,108,105,110,101,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,7,0,0,0,114,7,
- 0,0,0,114,8,0,0,0,218,13,100,101,99,111,100,101,
- 95,115,111,117,114,99,101,194,2,0,0,115,10,0,0,0,
- 8,5,12,1,10,1,12,1,20,1,114,10,0,0,0,114,
- 201,0,0,0,169,2,114,165,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,110,115,99,2,0,0,0,0,0,0,0,
- 2,0,0,0,9,0,0,0,8,0,0,0,67,0,0,0,
- 115,60,1,0,0,124,1,100,1,117,0,114,29,100,2,125,
- 1,116,0,124,2,100,3,131,2,114,28,9,0,124,2,160,
- 1,124,0,161,1,125,1,110,39,35,0,4,0,116,2,121,
- 157,1,0,1,0,1,0,89,0,110,30,37,0,110,28,116,
- 3,160,4,124,1,161,1,125,1,116,5,124,1,131,1,115,
- 57,9,0,116,6,116,3,160,7,161,0,124,1,131,2,125,
- 1,110,10,35,0,4,0,116,8,121,156,1,0,1,0,1,
- 0,89,0,110,1,37,0,116,9,160,10,124,0,124,2,124,
- 1,100,4,166,3,125,4,100,5,124,4,95,11,124,2,100,
- 1,117,0,114,99,116,12,131,0,68,0,93,21,92,2,125,
- 5,125,6,124,1,160,13,116,14,124,6,131,1,161,1,114,
- 96,124,5,124,0,124,1,131,2,125,2,124,2,124,4,95,
- 15,1,0,113,99,113,75,100,1,83,0,124,3,116,16,117,
- 0,114,131,116,0,124,2,100,6,131,2,114,130,9,0,124,
- 2,160,17,124,0,161,1,125,7,110,10,35,0,4,0,116,
- 2,121,155,1,0,1,0,1,0,89,0,110,10,37,0,124,
- 7,114,130,103,0,124,4,95,18,110,3,124,3,124,4,95,
- 18,124,4,106,18,103,0,107,2,114,153,124,1,114,153,116,
- 19,124,1,131,1,100,7,25,0,125,8,124,4,106,18,160,
- 20,124,8,161,1,1,0,124,4,83,0,119,0,119,0,119,
- 0,41,8,97,61,1,0,0,82,101,116,117,114,110,32,97,
- 32,109,111,100,117,108,101,32,115,112,101,99,32,98,97,115,
- 101,100,32,111,110,32,97,32,102,105,108,101,32,108,111,99,
- 97,116,105,111,110,46,10,10,32,32,32,32,84,111,32,105,
- 110,100,105,99,97,116,101,32,116,104,97,116,32,116,104,101,
- 32,109,111,100,117,108,101,32,105,115,32,97,32,112,97,99,
- 107,97,103,101,44,32,115,101,116,10,32,32,32,32,115,117,
- 98,109,111,100,117,108,101,95,115,101,97,114,99,104,95,108,
- 111,99,97,116,105,111,110,115,32,116,111,32,97,32,108,105,
- 115,116,32,111,102,32,100,105,114,101,99,116,111,114,121,32,
- 112,97,116,104,115,46,32,32,65,110,10,32,32,32,32,101,
- 109,112,116,121,32,108,105,115,116,32,105,115,32,115,117,102,
- 102,105,99,105,101,110,116,44,32,116,104,111,117,103,104,32,
- 105,116,115,32,110,111,116,32,111,116,104,101,114,119,105,115,
- 101,32,117,115,101,102,117,108,32,116,111,32,116,104,101,10,
- 32,32,32,32,105,109,112,111,114,116,32,115,121,115,116,101,
- 109,46,10,10,32,32,32,32,84,104,101,32,108,111,97,100,
- 101,114,32,109,117,115,116,32,116,97,107,101,32,97,32,115,
- 112,101,99,32,97,115,32,105,116,115,32,111,110,108,121,32,
- 95,95,105,110,105,116,95,95,40,41,32,97,114,103,46,10,
- 10,32,32,32,32,78,122,9,60,117,110,107,110,111,119,110,
- 62,218,12,103,101,116,95,102,105,108,101,110,97,109,101,169,
- 1,218,6,111,114,105,103,105,110,84,218,10,105,115,95,112,
- 97,99,107,97,103,101,114,0,0,0,0,41,21,114,154,0,
- 0,0,114,204,0,0,0,114,143,0,0,0,114,19,0,0,
- 0,114,104,0,0,0,114,87,0,0,0,114,68,0,0,0,
- 114,83,0,0,0,114,77,0,0,0,114,160,0,0,0,218,
- 10,77,111,100,117,108,101,83,112,101,99,90,13,95,115,101,
- 116,95,102,105,108,101,97,116,116,114,218,27,95,103,101,116,
- 95,115,117,112,112,111,114,116,101,100,95,102,105,108,101,95,
- 108,111,97,100,101,114,115,114,59,0,0,0,114,137,0,0,
- 0,114,165,0,0,0,218,9,95,80,79,80,85,76,65,84,
- 69,114,207,0,0,0,114,203,0,0,0,114,75,0,0,0,
- 114,62,0,0,0,41,9,114,142,0,0,0,90,8,108,111,
- 99,97,116,105,111,110,114,165,0,0,0,114,203,0,0,0,
- 218,4,115,112,101,99,218,12,108,111,97,100,101,114,95,99,
- 108,97,115,115,218,8,115,117,102,102,105,120,101,115,114,207,
- 0,0,0,90,7,100,105,114,110,97,109,101,114,7,0,0,
- 0,114,7,0,0,0,114,8,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,211,2,0,0,115,96,0,0,0,8,12,4,
- 4,10,1,2,2,12,1,2,128,12,1,4,1,2,128,2,
- 251,10,7,8,1,2,1,16,1,2,128,12,1,4,1,2,
- 128,16,8,6,1,8,3,14,1,14,1,10,1,6,1,4,
- 1,2,253,4,5,8,3,10,2,2,1,12,1,2,128,12,
- 1,4,1,2,128,4,2,6,1,2,128,6,2,10,1,4,
- 1,12,1,12,1,4,2,2,244,2,228,2,249,115,44,0,
- 0,0,140,5,18,0,146,7,27,7,167,7,47,0,175,7,
- 56,7,193,45,5,65,51,0,193,51,7,65,60,7,194,27,
- 1,65,60,7,194,28,1,56,7,194,29,1,27,7,114,214,
- 0,0,0,99,0,0,0,0,0,0,0,0,0,0,0,0,
+ 0,67,0,0,0,115,80,0,0,0,116,0,116,1,131,1,
+ 125,3,100,1,124,2,100,1,62,0,66,0,125,4,124,3,
+ 160,2,116,3,124,4,131,1,161,1,1,0,116,4,124,1,
+ 131,1,100,2,107,2,115,25,74,0,130,1,124,3,160,2,
+ 124,1,161,1,1,0,124,3,160,2,116,5,160,6,124,0,
+ 161,1,161,1,1,0,124,3,83,0,41,4,122,38,80,114,
+ 111,100,117,99,101,32,116,104,101,32,100,97,116,97,32,102,
+ 111,114,32,97,32,104,97,115,104,45,98,97,115,101,100,32,
+ 112,121,99,46,114,3,0,0,0,114,171,0,0,0,78,41,
+ 7,114,191,0,0,0,114,173,0,0,0,114,192,0,0,0,
+ 114,37,0,0,0,114,4,0,0,0,114,185,0,0,0,114,
+ 193,0,0,0,41,5,114,189,0,0,0,114,182,0,0,0,
+ 90,7,99,104,101,99,107,101,100,114,42,0,0,0,114,17,
+ 0,0,0,114,7,0,0,0,114,7,0,0,0,114,8,0,
+ 0,0,218,17,95,99,111,100,101,95,116,111,95,104,97,115,
+ 104,95,112,121,99,184,2,0,0,115,14,0,0,0,8,2,
+ 12,1,14,1,16,1,10,1,16,1,4,1,114,10,0,0,
+ 0,114,196,0,0,0,99,1,0,0,0,0,0,0,0,0,
+ 0,0,0,6,0,0,0,67,0,0,0,115,62,0,0,0,
+ 100,1,100,2,108,0,125,1,116,1,160,2,124,0,161,1,
+ 106,3,125,2,124,1,160,4,124,2,161,1,125,3,116,1,
+ 160,5,100,2,100,3,161,2,125,4,124,4,160,6,124,0,
+ 160,6,124,3,100,1,25,0,161,1,161,1,83,0,41,4,
+ 122,121,68,101,99,111,100,101,32,98,121,116,101,115,32,114,
+ 101,112,114,101,115,101,110,116,105,110,103,32,115,111,117,114,
+ 99,101,32,99,111,100,101,32,97,110,100,32,114,101,116,117,
+ 114,110,32,116,104,101,32,115,116,114,105,110,103,46,10,10,
+ 32,32,32,32,85,110,105,118,101,114,115,97,108,32,110,101,
+ 119,108,105,110,101,32,115,117,112,112,111,114,116,32,105,115,
+ 32,117,115,101,100,32,105,110,32,116,104,101,32,100,101,99,
+ 111,100,105,110,103,46,10,32,32,32,32,114,0,0,0,0,
+ 78,84,41,7,218,8,116,111,107,101,110,105,122,101,114,92,
+ 0,0,0,90,7,66,121,116,101,115,73,79,90,8,114,101,
+ 97,100,108,105,110,101,90,15,100,101,116,101,99,116,95,101,
+ 110,99,111,100,105,110,103,90,25,73,110,99,114,101,109,101,
+ 110,116,97,108,78,101,119,108,105,110,101,68,101,99,111,100,
+ 101,114,218,6,100,101,99,111,100,101,41,5,218,12,115,111,
+ 117,114,99,101,95,98,121,116,101,115,114,197,0,0,0,90,
+ 21,115,111,117,114,99,101,95,98,121,116,101,115,95,114,101,
+ 97,100,108,105,110,101,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,7,0,0,0,114,7,0,0,0,114,8,0,0,0,
+ 218,13,100,101,99,111,100,101,95,115,111,117,114,99,101,195,
+ 2,0,0,115,10,0,0,0,8,5,12,1,10,1,12,1,
+ 20,1,114,10,0,0,0,114,201,0,0,0,169,2,114,165,
+ 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,110,115,99,
+ 2,0,0,0,0,0,0,0,2,0,0,0,8,0,0,0,
+ 67,0,0,0,115,60,1,0,0,124,1,100,1,117,0,114,
+ 29,100,2,125,1,116,0,124,2,100,3,131,2,114,28,9,
+ 0,124,2,160,1,124,0,161,1,125,1,110,39,35,0,4,
+ 0,116,2,121,157,1,0,1,0,1,0,89,0,110,30,37,
+ 0,110,28,116,3,160,4,124,1,161,1,125,1,116,5,124,
+ 1,131,1,115,57,9,0,116,6,116,3,160,7,161,0,124,
+ 1,131,2,125,1,110,10,35,0,4,0,116,8,121,156,1,
+ 0,1,0,1,0,89,0,110,1,37,0,116,9,160,10,124,
+ 0,124,2,124,1,100,4,166,3,125,4,100,5,124,4,95,
+ 11,124,2,100,1,117,0,114,99,116,12,131,0,68,0,93,
+ 21,92,2,125,5,125,6,124,1,160,13,116,14,124,6,131,
+ 1,161,1,114,96,124,5,124,0,124,1,131,2,125,2,124,
+ 2,124,4,95,15,1,0,113,99,113,75,100,1,83,0,124,
+ 3,116,16,117,0,114,131,116,0,124,2,100,6,131,2,114,
+ 130,9,0,124,2,160,17,124,0,161,1,125,7,110,10,35,
+ 0,4,0,116,2,121,155,1,0,1,0,1,0,89,0,110,
+ 10,37,0,124,7,114,130,103,0,124,4,95,18,110,3,124,
+ 3,124,4,95,18,124,4,106,18,103,0,107,2,114,153,124,
+ 1,114,153,116,19,124,1,131,1,100,7,25,0,125,8,124,
+ 4,106,18,160,20,124,8,161,1,1,0,124,4,83,0,119,
+ 0,119,0,119,0,41,8,97,61,1,0,0,82,101,116,117,
+ 114,110,32,97,32,109,111,100,117,108,101,32,115,112,101,99,
+ 32,98,97,115,101,100,32,111,110,32,97,32,102,105,108,101,
+ 32,108,111,99,97,116,105,111,110,46,10,10,32,32,32,32,
+ 84,111,32,105,110,100,105,99,97,116,101,32,116,104,97,116,
+ 32,116,104,101,32,109,111,100,117,108,101,32,105,115,32,97,
+ 32,112,97,99,107,97,103,101,44,32,115,101,116,10,32,32,
+ 32,32,115,117,98,109,111,100,117,108,101,95,115,101,97,114,
+ 99,104,95,108,111,99,97,116,105,111,110,115,32,116,111,32,
+ 97,32,108,105,115,116,32,111,102,32,100,105,114,101,99,116,
+ 111,114,121,32,112,97,116,104,115,46,32,32,65,110,10,32,
+ 32,32,32,101,109,112,116,121,32,108,105,115,116,32,105,115,
+ 32,115,117,102,102,105,99,105,101,110,116,44,32,116,104,111,
+ 117,103,104,32,105,116,115,32,110,111,116,32,111,116,104,101,
+ 114,119,105,115,101,32,117,115,101,102,117,108,32,116,111,32,
+ 116,104,101,10,32,32,32,32,105,109,112,111,114,116,32,115,
+ 121,115,116,101,109,46,10,10,32,32,32,32,84,104,101,32,
+ 108,111,97,100,101,114,32,109,117,115,116,32,116,97,107,101,
+ 32,97,32,115,112,101,99,32,97,115,32,105,116,115,32,111,
+ 110,108,121,32,95,95,105,110,105,116,95,95,40,41,32,97,
+ 114,103,46,10,10,32,32,32,32,78,122,9,60,117,110,107,
+ 110,111,119,110,62,218,12,103,101,116,95,102,105,108,101,110,
+ 97,109,101,169,1,218,6,111,114,105,103,105,110,84,218,10,
+ 105,115,95,112,97,99,107,97,103,101,114,0,0,0,0,41,
+ 21,114,154,0,0,0,114,204,0,0,0,114,143,0,0,0,
+ 114,19,0,0,0,114,104,0,0,0,114,87,0,0,0,114,
+ 68,0,0,0,114,83,0,0,0,114,77,0,0,0,114,160,
+ 0,0,0,218,10,77,111,100,117,108,101,83,112,101,99,90,
+ 13,95,115,101,116,95,102,105,108,101,97,116,116,114,218,27,
+ 95,103,101,116,95,115,117,112,112,111,114,116,101,100,95,102,
+ 105,108,101,95,108,111,97,100,101,114,115,114,59,0,0,0,
+ 114,137,0,0,0,114,165,0,0,0,218,9,95,80,79,80,
+ 85,76,65,84,69,114,207,0,0,0,114,203,0,0,0,114,
+ 75,0,0,0,114,62,0,0,0,41,9,114,142,0,0,0,
+ 90,8,108,111,99,97,116,105,111,110,114,165,0,0,0,114,
+ 203,0,0,0,218,4,115,112,101,99,218,12,108,111,97,100,
+ 101,114,95,99,108,97,115,115,218,8,115,117,102,102,105,120,
+ 101,115,114,207,0,0,0,90,7,100,105,114,110,97,109,101,
+ 114,7,0,0,0,114,7,0,0,0,114,8,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,212,2,0,0,115,96,0,0,
+ 0,8,12,4,4,10,1,2,2,12,1,2,128,12,1,4,
+ 1,2,128,2,251,10,7,8,1,2,1,16,1,2,128,12,
+ 1,4,1,2,128,16,8,6,1,8,3,14,1,14,1,10,
+ 1,6,1,4,1,2,253,4,5,8,3,10,2,2,1,12,
+ 1,2,128,12,1,4,1,2,128,4,2,6,1,2,128,6,
+ 2,10,1,4,1,12,1,12,1,4,2,2,244,2,228,2,
+ 249,115,44,0,0,0,140,5,18,0,146,7,27,7,167,7,
+ 47,0,175,7,56,7,193,45,5,65,51,0,193,51,7,65,
+ 60,7,194,27,1,65,60,7,194,28,1,56,7,194,29,1,
+ 27,7,114,214,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,88,0,0,
0,101,0,90,1,100,0,90,2,100,1,90,3,100,2,90,
4,100,3,90,5,101,6,111,15,100,4,101,7,118,0,90,
@@ -1089,80 +1079,79 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = {
95,118,101,114,115,105,111,110,125,92,77,111,100,117,108,101,
115,92,123,102,117,108,108,110,97,109,101,125,92,68,101,98,
117,103,122,6,95,100,46,112,121,100,99,1,0,0,0,0,
- 0,0,0,0,0,0,0,1,0,0,0,8,0,0,0,67,
- 0,0,0,115,52,0,0,0,9,0,116,0,160,1,116,0,
- 106,2,124,0,161,2,83,0,35,0,4,0,116,3,121,25,
- 1,0,1,0,1,0,116,0,160,1,116,0,106,4,124,0,
- 161,2,6,0,89,0,83,0,37,0,119,0,114,70,0,0,
- 0,41,5,218,6,119,105,110,114,101,103,90,7,79,112,101,
- 110,75,101,121,90,17,72,75,69,89,95,67,85,82,82,69,
- 78,84,95,85,83,69,82,114,77,0,0,0,90,18,72,75,
- 69,89,95,76,79,67,65,76,95,77,65,67,72,73,78,69,
- 114,20,0,0,0,114,7,0,0,0,114,7,0,0,0,114,
- 8,0,0,0,218,14,95,111,112,101,110,95,114,101,103,105,
- 115,116,114,121,40,3,0,0,115,14,0,0,0,2,2,14,
- 1,2,128,12,1,18,1,2,128,2,255,115,12,0,0,0,
- 129,6,8,0,136,14,24,7,153,1,24,7,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,115,116,
- 114,121,99,2,0,0,0,0,0,0,0,0,0,0,0,6,
- 0,0,0,9,0,0,0,67,0,0,0,115,136,0,0,0,
- 124,0,106,0,114,7,124,0,106,1,125,2,110,3,124,0,
- 106,2,125,2,124,2,160,3,124,1,100,1,116,4,106,5,
- 100,0,100,2,133,2,25,0,22,0,100,3,166,2,125,3,
- 9,0,124,0,160,6,124,3,161,1,53,0,125,4,116,7,
- 160,8,124,4,100,4,161,2,125,5,100,0,4,0,4,0,
- 131,3,1,0,110,11,35,0,49,0,115,48,119,4,37,0,
- 1,0,1,0,1,0,89,0,1,0,1,0,124,5,83,0,
- 35,0,4,0,116,9,121,67,1,0,1,0,1,0,89,0,
- 100,0,83,0,37,0,119,0,41,5,78,122,5,37,100,46,
- 37,100,114,45,0,0,0,41,2,114,164,0,0,0,90,11,
- 115,121,115,95,118,101,114,115,105,111,110,114,11,0,0,0,
- 41,10,218,11,68,69,66,85,71,95,66,85,73,76,68,218,
- 18,82,69,71,73,83,84,82,89,95,75,69,89,95,68,69,
- 66,85,71,218,12,82,69,71,73,83,84,82,89,95,75,69,
- 89,114,90,0,0,0,114,16,0,0,0,218,12,118,101,114,
- 115,105,111,110,95,105,110,102,111,114,217,0,0,0,114,216,
- 0,0,0,90,10,81,117,101,114,121,86,97,108,117,101,114,
- 77,0,0,0,41,6,218,3,99,108,115,114,164,0,0,0,
- 90,12,114,101,103,105,115,116,114,121,95,107,101,121,114,21,
- 0,0,0,90,4,104,107,101,121,218,8,102,105,108,101,112,
- 97,116,104,114,7,0,0,0,114,7,0,0,0,114,8,0,
- 0,0,218,16,95,115,101,97,114,99,104,95,114,101,103,105,
- 115,116,114,121,47,3,0,0,115,34,0,0,0,6,2,8,
- 1,6,2,6,1,16,1,6,255,2,2,12,1,12,1,12,
- 255,22,128,4,4,2,128,12,254,6,1,2,128,2,255,115,
- 39,0,0,0,153,5,56,0,158,7,43,3,165,6,56,0,
- 171,4,47,11,175,1,56,0,176,3,47,11,179,3,56,0,
- 184,7,65,2,7,193,3,1,65,2,7,122,38,87,105,110,
- 100,111,119,115,82,101,103,105,115,116,114,121,70,105,110,100,
- 101,114,46,95,115,101,97,114,99,104,95,114,101,103,105,115,
- 116,114,121,78,99,4,0,0,0,0,0,0,0,0,0,0,
- 0,8,0,0,0,8,0,0,0,67,0,0,0,115,122,0,
- 0,0,124,0,160,0,124,1,161,1,125,4,124,4,100,0,
- 117,0,114,11,100,0,83,0,9,0,116,1,124,4,131,1,
- 1,0,110,11,35,0,4,0,116,2,121,60,1,0,1,0,
- 1,0,89,0,100,0,83,0,37,0,116,3,131,0,68,0,
- 93,26,92,2,125,5,125,6,124,4,160,4,116,5,124,6,
- 131,1,161,1,114,57,116,6,160,7,124,1,124,5,124,1,
- 124,4,131,2,124,4,100,1,166,3,125,7,124,7,2,0,
- 1,0,83,0,113,31,100,0,83,0,119,0,41,2,78,114,
- 205,0,0,0,41,8,114,224,0,0,0,114,76,0,0,0,
- 114,77,0,0,0,114,209,0,0,0,114,59,0,0,0,114,
- 137,0,0,0,114,160,0,0,0,218,16,115,112,101,99,95,
- 102,114,111,109,95,108,111,97,100,101,114,41,8,114,222,0,
- 0,0,114,164,0,0,0,114,66,0,0,0,218,6,116,97,
- 114,103,101,116,114,223,0,0,0,114,165,0,0,0,114,213,
- 0,0,0,114,211,0,0,0,114,7,0,0,0,114,7,0,
- 0,0,114,8,0,0,0,218,9,102,105,110,100,95,115,112,
- 101,99,62,3,0,0,115,38,0,0,0,10,2,8,1,4,
- 1,2,1,10,1,2,128,12,1,6,1,2,128,14,1,14,
- 1,6,1,8,1,2,1,6,254,8,3,2,252,4,255,2,
- 254,115,12,0,0,0,140,4,17,0,145,7,27,7,188,1,
- 27,7,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,95,115,
- 112,101,99,99,3,0,0,0,0,0,0,0,0,0,0,0,
- 4,0,0,0,4,0,0,0,67,0,0,0,115,42,0,0,
+ 0,0,0,0,0,0,0,8,0,0,0,67,0,0,0,115,
+ 52,0,0,0,9,0,116,0,160,1,116,0,106,2,124,0,
+ 161,2,83,0,35,0,4,0,116,3,121,25,1,0,1,0,
+ 1,0,116,0,160,1,116,0,106,4,124,0,161,2,6,0,
+ 89,0,83,0,37,0,119,0,114,70,0,0,0,41,5,218,
+ 6,119,105,110,114,101,103,90,7,79,112,101,110,75,101,121,
+ 90,17,72,75,69,89,95,67,85,82,82,69,78,84,95,85,
+ 83,69,82,114,77,0,0,0,90,18,72,75,69,89,95,76,
+ 79,67,65,76,95,77,65,67,72,73,78,69,114,20,0,0,
+ 0,114,7,0,0,0,114,7,0,0,0,114,8,0,0,0,
+ 218,14,95,111,112,101,110,95,114,101,103,105,115,116,114,121,
+ 41,3,0,0,115,14,0,0,0,2,2,14,1,2,128,12,
+ 1,18,1,2,128,2,255,115,12,0,0,0,129,6,8,0,
+ 136,14,24,7,153,1,24,7,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,115,116,114,121,99,2,
+ 0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,67,
+ 0,0,0,115,136,0,0,0,124,0,106,0,114,7,124,0,
+ 106,1,125,2,110,3,124,0,106,2,125,2,124,2,160,3,
+ 124,1,100,1,116,4,106,5,100,0,100,2,133,2,25,0,
+ 22,0,100,3,166,2,125,3,9,0,124,0,160,6,124,3,
+ 161,1,53,0,125,4,116,7,160,8,124,4,100,4,161,2,
+ 125,5,100,0,4,0,4,0,131,3,1,0,110,11,35,0,
+ 49,0,115,48,119,4,37,0,1,0,1,0,1,0,89,0,
+ 1,0,1,0,124,5,83,0,35,0,4,0,116,9,121,67,
+ 1,0,1,0,1,0,89,0,100,0,83,0,37,0,119,0,
+ 41,5,78,122,5,37,100,46,37,100,114,45,0,0,0,41,
+ 2,114,164,0,0,0,90,11,115,121,115,95,118,101,114,115,
+ 105,111,110,114,11,0,0,0,41,10,218,11,68,69,66,85,
+ 71,95,66,85,73,76,68,218,18,82,69,71,73,83,84,82,
+ 89,95,75,69,89,95,68,69,66,85,71,218,12,82,69,71,
+ 73,83,84,82,89,95,75,69,89,114,90,0,0,0,114,16,
+ 0,0,0,218,12,118,101,114,115,105,111,110,95,105,110,102,
+ 111,114,217,0,0,0,114,216,0,0,0,90,10,81,117,101,
+ 114,121,86,97,108,117,101,114,77,0,0,0,41,6,218,3,
+ 99,108,115,114,164,0,0,0,90,12,114,101,103,105,115,116,
+ 114,121,95,107,101,121,114,21,0,0,0,90,4,104,107,101,
+ 121,218,8,102,105,108,101,112,97,116,104,114,7,0,0,0,
+ 114,7,0,0,0,114,8,0,0,0,218,16,95,115,101,97,
+ 114,99,104,95,114,101,103,105,115,116,114,121,48,3,0,0,
+ 115,34,0,0,0,6,2,8,1,6,2,6,1,16,1,6,
+ 255,2,2,12,1,12,1,12,255,22,128,4,4,2,128,12,
+ 254,6,1,2,128,2,255,115,39,0,0,0,153,5,56,0,
+ 158,7,43,3,165,6,56,0,171,4,47,11,175,1,56,0,
+ 176,3,47,11,179,3,56,0,184,7,65,2,7,193,3,1,
+ 65,2,7,122,38,87,105,110,100,111,119,115,82,101,103,105,
+ 115,116,114,121,70,105,110,100,101,114,46,95,115,101,97,114,
+ 99,104,95,114,101,103,105,115,116,114,121,78,99,4,0,0,
+ 0,0,0,0,0,0,0,0,0,8,0,0,0,67,0,0,
+ 0,115,122,0,0,0,124,0,160,0,124,1,161,1,125,4,
+ 124,4,100,0,117,0,114,11,100,0,83,0,9,0,116,1,
+ 124,4,131,1,1,0,110,11,35,0,4,0,116,2,121,60,
+ 1,0,1,0,1,0,89,0,100,0,83,0,37,0,116,3,
+ 131,0,68,0,93,26,92,2,125,5,125,6,124,4,160,4,
+ 116,5,124,6,131,1,161,1,114,57,116,6,160,7,124,1,
+ 124,5,124,1,124,4,131,2,124,4,100,1,166,3,125,7,
+ 124,7,2,0,1,0,83,0,113,31,100,0,83,0,119,0,
+ 41,2,78,114,205,0,0,0,41,8,114,224,0,0,0,114,
+ 76,0,0,0,114,77,0,0,0,114,209,0,0,0,114,59,
+ 0,0,0,114,137,0,0,0,114,160,0,0,0,218,16,115,
+ 112,101,99,95,102,114,111,109,95,108,111,97,100,101,114,41,
+ 8,114,222,0,0,0,114,164,0,0,0,114,66,0,0,0,
+ 218,6,116,97,114,103,101,116,114,223,0,0,0,114,165,0,
+ 0,0,114,213,0,0,0,114,211,0,0,0,114,7,0,0,
+ 0,114,7,0,0,0,114,8,0,0,0,218,9,102,105,110,
+ 100,95,115,112,101,99,63,3,0,0,115,38,0,0,0,10,
+ 2,8,1,4,1,2,1,10,1,2,128,12,1,6,1,2,
+ 128,14,1,14,1,6,1,8,1,2,1,6,254,8,3,2,
+ 252,4,255,2,254,115,12,0,0,0,140,4,17,0,145,7,
+ 27,7,188,1,27,7,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,95,115,112,101,99,99,3,0,0,0,0,0,0,0,
+ 0,0,0,0,4,0,0,0,67,0,0,0,115,42,0,0,
0,116,0,160,1,100,1,116,2,161,2,1,0,124,0,160,
3,124,1,124,2,161,2,125,3,124,3,100,2,117,1,114,
19,124,3,106,4,83,0,100,2,83,0,41,3,122,106,70,
@@ -1184,7 +1173,7 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = {
0,0,114,165,0,0,0,169,4,114,222,0,0,0,114,164,
0,0,0,114,66,0,0,0,114,211,0,0,0,114,7,0,
0,0,114,7,0,0,0,114,8,0,0,0,218,11,102,105,
- 110,100,95,109,111,100,117,108,101,78,3,0,0,115,14,0,
+ 110,100,95,109,111,100,117,108,101,79,3,0,0,115,14,0,
0,0,6,7,2,2,4,254,12,3,8,1,6,1,4,2,
114,10,0,0,0,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,
@@ -1197,58 +1186,57 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = {
101,116,104,111,100,114,217,0,0,0,218,11,99,108,97,115,
115,109,101,116,104,111,100,114,224,0,0,0,114,227,0,0,
0,114,230,0,0,0,114,7,0,0,0,114,7,0,0,0,
- 114,7,0,0,0,114,8,0,0,0,114,215,0,0,0,28,
+ 114,7,0,0,0,114,8,0,0,0,114,215,0,0,0,29,
3,0,0,115,30,0,0,0,8,0,4,2,2,3,2,255,
2,4,2,255,12,3,2,2,10,1,2,6,10,1,2,14,
12,1,2,15,16,1,114,10,0,0,0,114,215,0,0,0,
- 99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,2,0,0,0,64,0,0,0,115,48,0,0,0,101,0,
- 90,1,100,0,90,2,100,1,90,3,100,2,100,3,132,0,
- 90,4,100,4,100,5,132,0,90,5,100,6,100,7,132,0,
- 90,6,100,8,100,9,132,0,90,7,100,10,83,0,41,11,
- 218,13,95,76,111,97,100,101,114,66,97,115,105,99,115,122,
- 83,66,97,115,101,32,99,108,97,115,115,32,111,102,32,99,
- 111,109,109,111,110,32,99,111,100,101,32,110,101,101,100,101,
- 100,32,98,121,32,98,111,116,104,32,83,111,117,114,99,101,
- 76,111,97,100,101,114,32,97,110,100,10,32,32,32,32,83,
- 111,117,114,99,101,108,101,115,115,70,105,108,101,76,111,97,
- 100,101,114,46,99,2,0,0,0,0,0,0,0,0,0,0,
- 0,5,0,0,0,4,0,0,0,67,0,0,0,115,64,0,
- 0,0,116,0,124,0,160,1,124,1,161,1,131,1,100,1,
- 25,0,125,2,124,2,160,2,100,2,100,1,161,2,100,3,
- 25,0,125,3,124,1,160,3,100,2,161,1,100,4,25,0,
- 125,4,124,3,100,5,107,2,111,31,124,4,100,5,107,3,
- 83,0,41,7,122,141,67,111,110,99,114,101,116,101,32,105,
- 109,112,108,101,109,101,110,116,97,116,105,111,110,32,111,102,
- 32,73,110,115,112,101,99,116,76,111,97,100,101,114,46,105,
- 115,95,112,97,99,107,97,103,101,32,98,121,32,99,104,101,
- 99,107,105,110,103,32,105,102,10,32,32,32,32,32,32,32,
- 32,116,104,101,32,112,97,116,104,32,114,101,116,117,114,110,
- 101,100,32,98,121,32,103,101,116,95,102,105,108,101,110,97,
- 109,101,32,104,97,115,32,97,32,102,105,108,101,110,97,109,
- 101,32,111,102,32,39,95,95,105,110,105,116,95,95,46,112,
- 121,39,46,114,3,0,0,0,114,98,0,0,0,114,0,0,
- 0,0,114,45,0,0,0,218,8,95,95,105,110,105,116,95,
- 95,78,41,4,114,75,0,0,0,114,204,0,0,0,114,126,
- 0,0,0,114,105,0,0,0,41,5,114,144,0,0,0,114,
- 164,0,0,0,114,121,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,7,0,0,0,114,7,0,0,0,114,8,0,
- 0,0,114,207,0,0,0,100,3,0,0,115,8,0,0,0,
- 18,3,16,1,14,1,16,1,114,10,0,0,0,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,
- 0,0,0,0,2,0,0,0,1,0,0,0,67,0,0,0,
- 114,24,0,0,0,169,2,122,42,85,115,101,32,100,101,102,
- 97,117,108,116,32,115,101,109,97,110,116,105,99,115,32,102,
- 111,114,32,109,111,100,117,108,101,32,99,114,101,97,116,105,
- 111,110,46,78,114,7,0,0,0,169,2,114,144,0,0,0,
- 114,211,0,0,0,114,7,0,0,0,114,7,0,0,0,114,
- 8,0,0,0,218,13,99,114,101,97,116,101,95,109,111,100,
- 117,108,101,108,3,0,0,243,2,0,0,0,4,0,114,10,
- 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,0,0,0,0,3,0,0,
+ 99,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,
+ 0,64,0,0,0,115,48,0,0,0,101,0,90,1,100,0,
+ 90,2,100,1,90,3,100,2,100,3,132,0,90,4,100,4,
+ 100,5,132,0,90,5,100,6,100,7,132,0,90,6,100,8,
+ 100,9,132,0,90,7,100,10,83,0,41,11,218,13,95,76,
+ 111,97,100,101,114,66,97,115,105,99,115,122,83,66,97,115,
+ 101,32,99,108,97,115,115,32,111,102,32,99,111,109,109,111,
+ 110,32,99,111,100,101,32,110,101,101,100,101,100,32,98,121,
+ 32,98,111,116,104,32,83,111,117,114,99,101,76,111,97,100,
+ 101,114,32,97,110,100,10,32,32,32,32,83,111,117,114,99,
+ 101,108,101,115,115,70,105,108,101,76,111,97,100,101,114,46,
+ 99,2,0,0,0,0,0,0,0,0,0,0,0,4,0,0,
+ 0,67,0,0,0,115,64,0,0,0,116,0,124,0,160,1,
+ 124,1,161,1,131,1,100,1,25,0,125,2,124,2,160,2,
+ 100,2,100,1,161,2,100,3,25,0,125,3,124,1,160,3,
+ 100,2,161,1,100,4,25,0,125,4,124,3,100,5,107,2,
+ 111,31,124,4,100,5,107,3,83,0,41,7,122,141,67,111,
+ 110,99,114,101,116,101,32,105,109,112,108,101,109,101,110,116,
+ 97,116,105,111,110,32,111,102,32,73,110,115,112,101,99,116,
+ 76,111,97,100,101,114,46,105,115,95,112,97,99,107,97,103,
+ 101,32,98,121,32,99,104,101,99,107,105,110,103,32,105,102,
+ 10,32,32,32,32,32,32,32,32,116,104,101,32,112,97,116,
+ 104,32,114,101,116,117,114,110,101,100,32,98,121,32,103,101,
+ 116,95,102,105,108,101,110,97,109,101,32,104,97,115,32,97,
+ 32,102,105,108,101,110,97,109,101,32,111,102,32,39,95,95,
+ 105,110,105,116,95,95,46,112,121,39,46,114,3,0,0,0,
+ 114,98,0,0,0,114,0,0,0,0,114,45,0,0,0,218,
+ 8,95,95,105,110,105,116,95,95,78,41,4,114,75,0,0,
+ 0,114,204,0,0,0,114,126,0,0,0,114,105,0,0,0,
+ 41,5,114,144,0,0,0,114,164,0,0,0,114,121,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,7,0,0,0,
+ 114,7,0,0,0,114,8,0,0,0,114,207,0,0,0,101,
+ 3,0,0,115,8,0,0,0,18,3,16,1,14,1,16,1,
+ 114,10,0,0,0,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,0,0,0,0,1,0,0,0,
+ 67,0,0,0,114,24,0,0,0,169,2,122,42,85,115,101,
+ 32,100,101,102,97,117,108,116,32,115,101,109,97,110,116,105,
+ 99,115,32,102,111,114,32,109,111,100,117,108,101,32,99,114,
+ 101,97,116,105,111,110,46,78,114,7,0,0,0,169,2,114,
+ 144,0,0,0,114,211,0,0,0,114,7,0,0,0,114,7,
+ 0,0,0,114,8,0,0,0,218,13,99,114,101,97,116,101,
+ 95,109,111,100,117,108,101,109,3,0,0,243,2,0,0,0,
+ 4,0,114,10,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,0,0,0,
0,5,0,0,0,67,0,0,0,115,56,0,0,0,124,0,
160,0,124,1,106,1,161,1,125,2,124,2,100,1,117,0,
114,18,116,2,100,2,160,3,124,1,106,1,161,1,131,1,
@@ -1265,55 +1253,54 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = {
4,101,120,101,99,114,157,0,0,0,41,3,114,144,0,0,
0,218,6,109,111,100,117,108,101,114,189,0,0,0,114,7,
0,0,0,114,7,0,0,0,114,8,0,0,0,218,11,101,
- 120,101,99,95,109,111,100,117,108,101,111,3,0,0,115,12,
+ 120,101,99,95,109,111,100,117,108,101,112,3,0,0,115,12,
0,0,0,12,2,8,1,4,1,8,1,4,255,20,2,114,
10,0,0,0,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,0,0,0,0,2,0,0,0,
- 4,0,0,0,67,0,0,0,115,12,0,0,0,116,0,160,
- 1,124,0,124,1,161,2,83,0,41,2,122,26,84,104,105,
- 115,32,109,101,116,104,111,100,32,105,115,32,100,101,112,114,
- 101,99,97,116,101,100,46,78,41,2,114,160,0,0,0,218,
- 17,95,108,111,97,100,95,109,111,100,117,108,101,95,115,104,
- 105,109,169,2,114,144,0,0,0,114,164,0,0,0,114,7,
- 0,0,0,114,7,0,0,0,114,8,0,0,0,218,11,108,
- 111,97,100,95,109,111,100,117,108,101,119,3,0,0,115,2,
- 0,0,0,12,3,114,10,0,0,0,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,151,0,0,0,114,150,0,
- 0,0,114,152,0,0,0,114,153,0,0,0,114,207,0,0,
- 0,114,240,0,0,0,114,246,0,0,0,114,249,0,0,0,
- 114,7,0,0,0,114,7,0,0,0,114,7,0,0,0,114,
- 8,0,0,0,114,236,0,0,0,95,3,0,0,115,12,0,
- 0,0,8,0,4,2,8,3,8,8,8,3,12,8,114,10,
- 0,0,0,114,236,0,0,0,99,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,3,0,0,0,64,0,0,
- 0,115,74,0,0,0,101,0,90,1,100,0,90,2,100,1,
- 100,2,132,0,90,3,100,3,100,4,132,0,90,4,100,5,
- 100,6,132,0,90,5,100,7,100,8,132,0,90,6,100,9,
- 100,10,132,0,90,7,100,11,100,12,156,1,100,13,100,14,
- 132,2,90,8,100,15,100,16,132,0,90,9,100,17,83,0,
- 41,18,218,12,83,111,117,114,99,101,76,111,97,100,101,114,
- 99,2,0,0,0,0,0,0,0,0,0,0,0,2,0,0,
- 0,1,0,0,0,67,0,0,0,115,4,0,0,0,116,0,
- 130,1,41,2,122,165,79,112,116,105,111,110,97,108,32,109,
- 101,116,104,111,100,32,116,104,97,116,32,114,101,116,117,114,
- 110,115,32,116,104,101,32,109,111,100,105,102,105,99,97,116,
- 105,111,110,32,116,105,109,101,32,40,97,110,32,105,110,116,
- 41,32,102,111,114,32,116,104,101,10,32,32,32,32,32,32,
- 32,32,115,112,101,99,105,102,105,101,100,32,112,97,116,104,
- 32,40,97,32,115,116,114,41,46,10,10,32,32,32,32,32,
- 32,32,32,82,97,105,115,101,115,32,79,83,69,114,114,111,
- 114,32,119,104,101,110,32,116,104,101,32,112,97,116,104,32,
- 99,97,110,110,111,116,32,98,101,32,104,97,110,100,108,101,
- 100,46,10,32,32,32,32,32,32,32,32,78,41,1,114,77,
- 0,0,0,169,2,114,144,0,0,0,114,66,0,0,0,114,
- 7,0,0,0,114,7,0,0,0,114,8,0,0,0,218,10,
- 112,97,116,104,95,109,116,105,109,101,127,3,0,0,115,2,
- 0,0,0,4,6,114,10,0,0,0,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,0,0,0,0,
- 2,0,0,0,4,0,0,0,67,0,0,0,115,14,0,0,
+ 2,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,
+ 67,0,0,0,115,12,0,0,0,116,0,160,1,124,0,124,
+ 1,161,2,83,0,41,2,122,26,84,104,105,115,32,109,101,
+ 116,104,111,100,32,105,115,32,100,101,112,114,101,99,97,116,
+ 101,100,46,78,41,2,114,160,0,0,0,218,17,95,108,111,
+ 97,100,95,109,111,100,117,108,101,95,115,104,105,109,169,2,
+ 114,144,0,0,0,114,164,0,0,0,114,7,0,0,0,114,
+ 7,0,0,0,114,8,0,0,0,218,11,108,111,97,100,95,
+ 109,111,100,117,108,101,120,3,0,0,115,2,0,0,0,12,
+ 3,114,10,0,0,0,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,151,0,0,0,114,150,0,0,0,114,152,
+ 0,0,0,114,153,0,0,0,114,207,0,0,0,114,240,0,
+ 0,0,114,246,0,0,0,114,249,0,0,0,114,7,0,0,
+ 0,114,7,0,0,0,114,7,0,0,0,114,8,0,0,0,
+ 114,236,0,0,0,96,3,0,0,115,12,0,0,0,8,0,
+ 4,2,8,3,8,8,8,3,12,8,114,10,0,0,0,114,
+ 236,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,74,0,0,0,101,0,
+ 90,1,100,0,90,2,100,1,100,2,132,0,90,3,100,3,
+ 100,4,132,0,90,4,100,5,100,6,132,0,90,5,100,7,
+ 100,8,132,0,90,6,100,9,100,10,132,0,90,7,100,11,
+ 100,12,156,1,100,13,100,14,132,2,90,8,100,15,100,16,
+ 132,0,90,9,100,17,83,0,41,18,218,12,83,111,117,114,
+ 99,101,76,111,97,100,101,114,99,2,0,0,0,0,0,0,
+ 0,0,0,0,0,1,0,0,0,67,0,0,0,115,4,0,
+ 0,0,116,0,130,1,41,2,122,165,79,112,116,105,111,110,
+ 97,108,32,109,101,116,104,111,100,32,116,104,97,116,32,114,
+ 101,116,117,114,110,115,32,116,104,101,32,109,111,100,105,102,
+ 105,99,97,116,105,111,110,32,116,105,109,101,32,40,97,110,
+ 32,105,110,116,41,32,102,111,114,32,116,104,101,10,32,32,
+ 32,32,32,32,32,32,115,112,101,99,105,102,105,101,100,32,
+ 112,97,116,104,32,40,97,32,115,116,114,41,46,10,10,32,
+ 32,32,32,32,32,32,32,82,97,105,115,101,115,32,79,83,
+ 69,114,114,111,114,32,119,104,101,110,32,116,104,101,32,112,
+ 97,116,104,32,99,97,110,110,111,116,32,98,101,32,104,97,
+ 110,100,108,101,100,46,10,32,32,32,32,32,32,32,32,78,
+ 41,1,114,77,0,0,0,169,2,114,144,0,0,0,114,66,
+ 0,0,0,114,7,0,0,0,114,7,0,0,0,114,8,0,
+ 0,0,218,10,112,97,116,104,95,109,116,105,109,101,128,3,
+ 0,0,115,2,0,0,0,4,6,114,10,0,0,0,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,
+ 0,0,0,0,4,0,0,0,67,0,0,0,115,14,0,0,
0,100,1,124,0,160,0,124,1,161,1,105,1,83,0,41,
3,97,158,1,0,0,79,112,116,105,111,110,97,108,32,109,
101,116,104,111,100,32,114,101,116,117,114,110,105,110,103,32,
@@ -1344,76 +1331,75 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = {
32,32,32,32,114,194,0,0,0,78,41,1,114,252,0,0,
0,114,251,0,0,0,114,7,0,0,0,114,7,0,0,0,
114,8,0,0,0,218,10,112,97,116,104,95,115,116,97,116,
- 115,135,3,0,0,115,2,0,0,0,14,12,114,10,0,0,
+ 115,136,3,0,0,115,2,0,0,0,14,12,114,10,0,0,
0,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,0,0,0,0,4,0,0,0,4,0,0,0,67,
- 0,0,0,115,12,0,0,0,124,0,160,0,124,2,124,3,
- 161,2,83,0,41,2,122,228,79,112,116,105,111,110,97,108,
- 32,109,101,116,104,111,100,32,119,104,105,99,104,32,119,114,
- 105,116,101,115,32,100,97,116,97,32,40,98,121,116,101,115,
- 41,32,116,111,32,97,32,102,105,108,101,32,112,97,116,104,
- 32,40,97,32,115,116,114,41,46,10,10,32,32,32,32,32,
- 32,32,32,73,109,112,108,101,109,101,110,116,105,110,103,32,
- 116,104,105,115,32,109,101,116,104,111,100,32,97,108,108,111,
- 119,115,32,102,111,114,32,116,104,101,32,119,114,105,116,105,
- 110,103,32,111,102,32,98,121,116,101,99,111,100,101,32,102,
- 105,108,101,115,46,10,10,32,32,32,32,32,32,32,32,84,
- 104,101,32,115,111,117,114,99,101,32,112,97,116,104,32,105,
- 115,32,110,101,101,100,101,100,32,105,110,32,111,114,100,101,
- 114,32,116,111,32,99,111,114,114,101,99,116,108,121,32,116,
- 114,97,110,115,102,101,114,32,112,101,114,109,105,115,115,105,
- 111,110,115,10,32,32,32,32,32,32,32,32,78,41,1,218,
- 8,115,101,116,95,100,97,116,97,41,4,114,144,0,0,0,
- 114,135,0,0,0,90,10,99,97,99,104,101,95,112,97,116,
- 104,114,42,0,0,0,114,7,0,0,0,114,7,0,0,0,
- 114,8,0,0,0,218,15,95,99,97,99,104,101,95,98,121,
- 116,101,99,111,100,101,149,3,0,0,115,2,0,0,0,12,
- 8,114,10,0,0,0,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,0,0,0,
- 0,3,0,0,0,1,0,0,0,67,0,0,0,114,24,0,
- 0,0,41,2,122,150,79,112,116,105,111,110,97,108,32,109,
- 101,116,104,111,100,32,119,104,105,99,104,32,119,114,105,116,
- 101,115,32,100,97,116,97,32,40,98,121,116,101,115,41,32,
- 116,111,32,97,32,102,105,108,101,32,112,97,116,104,32,40,
- 97,32,115,116,114,41,46,10,10,32,32,32,32,32,32,32,
- 32,73,109,112,108,101,109,101,110,116,105,110,103,32,116,104,
- 105,115,32,109,101,116,104,111,100,32,97,108,108,111,119,115,
- 32,102,111,114,32,116,104,101,32,119,114,105,116,105,110,103,
- 32,111,102,32,98,121,116,101,99,111,100,101,32,102,105,108,
- 101,115,46,10,32,32,32,32,32,32,32,32,78,114,7,0,
- 0,0,41,3,114,144,0,0,0,114,66,0,0,0,114,42,
- 0,0,0,114,7,0,0,0,114,7,0,0,0,114,8,0,
- 0,0,114,254,0,0,0,159,3,0,0,114,241,0,0,0,
- 114,10,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,0,0,0,0,5,0,0,0,8,0,0,
- 0,67,0,0,0,115,70,0,0,0,124,0,160,0,124,1,
- 161,1,125,2,9,0,124,0,160,1,124,2,161,1,125,3,
- 116,4,124,3,131,1,83,0,35,0,4,0,116,2,121,34,
- 1,0,125,4,1,0,116,3,100,1,124,1,100,2,141,2,
- 124,4,130,2,100,3,125,4,126,4,119,1,37,0,119,0,
- 41,4,122,52,67,111,110,99,114,101,116,101,32,105,109,112,
- 108,101,109,101,110,116,97,116,105,111,110,32,111,102,32,73,
- 110,115,112,101,99,116,76,111,97,100,101,114,46,103,101,116,
- 95,115,111,117,114,99,101,46,122,39,115,111,117,114,99,101,
- 32,110,111,116,32,97,118,97,105,108,97,98,108,101,32,116,
- 104,114,111,117,103,104,32,103,101,116,95,100,97,116,97,40,
- 41,114,141,0,0,0,78,41,5,114,204,0,0,0,218,8,
- 103,101,116,95,100,97,116,97,114,77,0,0,0,114,143,0,
- 0,0,114,201,0,0,0,41,5,114,144,0,0,0,114,164,
- 0,0,0,114,66,0,0,0,114,199,0,0,0,218,3,101,
- 120,99,114,7,0,0,0,114,7,0,0,0,114,8,0,0,
- 0,218,10,103,101,116,95,115,111,117,114,99,101,166,3,0,
- 0,115,26,0,0,0,10,2,2,1,10,1,8,4,2,128,
- 12,253,4,1,2,1,4,255,2,1,2,255,10,128,2,255,
- 115,20,0,0,0,134,5,15,0,143,7,33,7,150,7,29,
- 7,157,4,33,7,162,1,33,7,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,114,131,0,0,0,41,1,218,9,95,111,112,116,105,
- 109,105,122,101,99,3,0,0,0,0,0,0,0,1,0,0,
- 0,4,0,0,0,9,0,0,0,67,0,0,0,115,22,0,
+ 0,0,0,0,0,0,0,4,0,0,0,67,0,0,0,115,
+ 12,0,0,0,124,0,160,0,124,2,124,3,161,2,83,0,
+ 41,2,122,228,79,112,116,105,111,110,97,108,32,109,101,116,
+ 104,111,100,32,119,104,105,99,104,32,119,114,105,116,101,115,
+ 32,100,97,116,97,32,40,98,121,116,101,115,41,32,116,111,
+ 32,97,32,102,105,108,101,32,112,97,116,104,32,40,97,32,
+ 115,116,114,41,46,10,10,32,32,32,32,32,32,32,32,73,
+ 109,112,108,101,109,101,110,116,105,110,103,32,116,104,105,115,
+ 32,109,101,116,104,111,100,32,97,108,108,111,119,115,32,102,
+ 111,114,32,116,104,101,32,119,114,105,116,105,110,103,32,111,
+ 102,32,98,121,116,101,99,111,100,101,32,102,105,108,101,115,
+ 46,10,10,32,32,32,32,32,32,32,32,84,104,101,32,115,
+ 111,117,114,99,101,32,112,97,116,104,32,105,115,32,110,101,
+ 101,100,101,100,32,105,110,32,111,114,100,101,114,32,116,111,
+ 32,99,111,114,114,101,99,116,108,121,32,116,114,97,110,115,
+ 102,101,114,32,112,101,114,109,105,115,115,105,111,110,115,10,
+ 32,32,32,32,32,32,32,32,78,41,1,218,8,115,101,116,
+ 95,100,97,116,97,41,4,114,144,0,0,0,114,135,0,0,
+ 0,90,10,99,97,99,104,101,95,112,97,116,104,114,42,0,
+ 0,0,114,7,0,0,0,114,7,0,0,0,114,8,0,0,
+ 0,218,15,95,99,97,99,104,101,95,98,121,116,101,99,111,
+ 100,101,150,3,0,0,115,2,0,0,0,12,8,114,10,0,
+ 0,0,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,0,0,0,0,1,0,0,
+ 0,67,0,0,0,114,24,0,0,0,41,2,122,150,79,112,
+ 116,105,111,110,97,108,32,109,101,116,104,111,100,32,119,104,
+ 105,99,104,32,119,114,105,116,101,115,32,100,97,116,97,32,
+ 40,98,121,116,101,115,41,32,116,111,32,97,32,102,105,108,
+ 101,32,112,97,116,104,32,40,97,32,115,116,114,41,46,10,
+ 10,32,32,32,32,32,32,32,32,73,109,112,108,101,109,101,
+ 110,116,105,110,103,32,116,104,105,115,32,109,101,116,104,111,
+ 100,32,97,108,108,111,119,115,32,102,111,114,32,116,104,101,
+ 32,119,114,105,116,105,110,103,32,111,102,32,98,121,116,101,
+ 99,111,100,101,32,102,105,108,101,115,46,10,32,32,32,32,
+ 32,32,32,32,78,114,7,0,0,0,41,3,114,144,0,0,
+ 0,114,66,0,0,0,114,42,0,0,0,114,7,0,0,0,
+ 114,7,0,0,0,114,8,0,0,0,114,254,0,0,0,160,
+ 3,0,0,114,241,0,0,0,114,10,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,0,0,0,
+ 0,8,0,0,0,67,0,0,0,115,70,0,0,0,124,0,
+ 160,0,124,1,161,1,125,2,9,0,124,0,160,1,124,2,
+ 161,1,125,3,116,4,124,3,131,1,83,0,35,0,4,0,
+ 116,2,121,34,1,0,125,4,1,0,116,3,100,1,124,1,
+ 100,2,141,2,124,4,130,2,100,3,125,4,126,4,119,1,
+ 37,0,119,0,41,4,122,52,67,111,110,99,114,101,116,101,
+ 32,105,109,112,108,101,109,101,110,116,97,116,105,111,110,32,
+ 111,102,32,73,110,115,112,101,99,116,76,111,97,100,101,114,
+ 46,103,101,116,95,115,111,117,114,99,101,46,122,39,115,111,
+ 117,114,99,101,32,110,111,116,32,97,118,97,105,108,97,98,
+ 108,101,32,116,104,114,111,117,103,104,32,103,101,116,95,100,
+ 97,116,97,40,41,114,141,0,0,0,78,41,5,114,204,0,
+ 0,0,218,8,103,101,116,95,100,97,116,97,114,77,0,0,
+ 0,114,143,0,0,0,114,201,0,0,0,41,5,114,144,0,
+ 0,0,114,164,0,0,0,114,66,0,0,0,114,199,0,0,
+ 0,218,3,101,120,99,114,7,0,0,0,114,7,0,0,0,
+ 114,8,0,0,0,218,10,103,101,116,95,115,111,117,114,99,
+ 101,167,3,0,0,115,26,0,0,0,10,2,2,1,10,1,
+ 8,4,2,128,12,253,4,1,2,1,4,255,2,1,2,255,
+ 10,128,2,255,115,20,0,0,0,134,5,15,0,143,7,33,
+ 7,150,7,29,7,157,4,33,7,162,1,33,7,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,114,131,0,0,0,41,1,218,9,95,
+ 111,112,116,105,109,105,122,101,99,3,0,0,0,0,0,0,
+ 0,1,0,0,0,9,0,0,0,67,0,0,0,115,22,0,
0,0,116,0,160,1,116,2,124,1,124,2,100,1,100,2,
124,3,100,3,166,6,83,0,41,5,122,130,82,101,116,117,
114,110,32,116,104,101,32,99,111,100,101,32,111,98,106,101,
@@ -1430,183 +1416,181 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = {
4,114,144,0,0,0,114,42,0,0,0,114,66,0,0,0,
114,3,1,0,0,114,7,0,0,0,114,7,0,0,0,114,
8,0,0,0,218,14,115,111,117,114,99,101,95,116,111,95,
- 99,111,100,101,176,3,0,0,115,6,0,0,0,12,5,4,
+ 99,111,100,101,177,3,0,0,115,6,0,0,0,12,5,4,
1,6,255,114,10,0,0,0,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,0,0,
- 0,0,15,0,0,0,9,0,0,0,67,0,0,0,115,28,
- 2,0,0,124,0,160,0,124,1,161,1,125,2,100,1,125,
- 3,100,1,125,4,100,1,125,5,100,2,125,6,100,3,125,
- 7,9,0,116,1,124,2,131,1,125,8,110,13,35,0,4,
- 0,116,2,144,1,121,13,1,0,1,0,1,0,100,1,125,
- 8,89,0,110,147,37,0,9,0,124,0,160,3,124,2,161,
- 1,125,9,110,11,35,0,4,0,116,4,144,1,121,12,1,
- 0,1,0,1,0,89,0,110,129,37,0,116,5,124,9,100,
- 4,25,0,131,1,125,3,9,0,124,0,160,6,124,8,161,
- 1,125,10,110,11,35,0,4,0,116,4,144,1,121,11,1,
- 0,1,0,1,0,89,0,110,105,37,0,124,1,124,8,100,
- 5,156,2,125,11,9,0,116,7,124,10,124,1,124,11,131,
- 3,125,12,116,8,124,10,131,1,100,6,100,1,133,2,25,
- 0,125,13,124,12,100,7,64,0,100,8,107,3,125,6,124,
- 6,114,141,124,12,100,9,64,0,100,8,107,3,125,7,116,
- 9,106,10,100,10,107,3,114,140,124,7,115,122,116,9,106,
- 10,100,11,107,2,114,140,124,0,160,6,124,2,161,1,125,
- 4,116,9,160,11,116,12,124,4,161,2,125,5,116,13,124,
- 10,124,5,124,1,124,11,131,4,1,0,110,10,116,14,124,
- 10,124,3,124,9,100,12,25,0,124,1,124,11,131,5,1,
- 0,110,13,35,0,4,0,116,15,116,16,102,2,144,1,121,
- 10,1,0,1,0,1,0,89,0,110,16,37,0,116,17,160,
- 18,100,13,124,8,124,2,161,3,1,0,116,19,124,13,124,
- 1,124,8,124,2,100,14,141,4,83,0,124,4,100,1,117,
- 0,114,189,124,0,160,6,124,2,161,1,125,4,124,0,160,
- 20,124,4,124,2,161,2,125,14,116,17,160,18,100,15,124,
- 2,161,2,1,0,116,21,106,22,144,1,115,7,124,8,100,
- 1,117,1,144,1,114,7,124,3,100,1,117,1,144,1,114,
- 7,124,6,114,233,124,5,100,1,117,0,114,226,116,9,160,
- 11,124,4,161,1,125,5,116,23,124,14,124,5,124,7,131,
- 3,125,10,110,8,116,24,124,14,124,3,116,25,124,4,131,
- 1,131,3,125,10,9,0,124,0,160,26,124,2,124,8,124,
- 10,161,3,1,0,124,14,83,0,35,0,4,0,116,2,144,
- 1,121,9,1,0,1,0,1,0,89,0,124,14,83,0,37,
- 0,124,14,83,0,119,0,119,0,119,0,119,0,119,0,41,
- 16,122,190,67,111,110,99,114,101,116,101,32,105,109,112,108,
- 101,109,101,110,116,97,116,105,111,110,32,111,102,32,73,110,
- 115,112,101,99,116,76,111,97,100,101,114,46,103,101,116,95,
- 99,111,100,101,46,10,10,32,32,32,32,32,32,32,32,82,
- 101,97,100,105,110,103,32,111,102,32,98,121,116,101,99,111,
- 100,101,32,114,101,113,117,105,114,101,115,32,112,97,116,104,
- 95,115,116,97,116,115,32,116,111,32,98,101,32,105,109,112,
- 108,101,109,101,110,116,101,100,46,32,84,111,32,119,114,105,
- 116,101,10,32,32,32,32,32,32,32,32,98,121,116,101,99,
- 111,100,101,44,32,115,101,116,95,100,97,116,97,32,109,117,
- 115,116,32,97,108,115,111,32,98,101,32,105,109,112,108,101,
- 109,101,110,116,101,100,46,10,10,32,32,32,32,32,32,32,
- 32,78,70,84,114,194,0,0,0,114,184,0,0,0,114,170,
- 0,0,0,114,3,0,0,0,114,0,0,0,0,114,45,0,
- 0,0,90,5,110,101,118,101,114,90,6,97,108,119,97,121,
- 115,218,4,115,105,122,101,122,13,123,125,32,109,97,116,99,
- 104,101,115,32,123,125,41,3,114,142,0,0,0,114,133,0,
- 0,0,114,135,0,0,0,122,19,99,111,100,101,32,111,98,
- 106,101,99,116,32,102,114,111,109,32,123,125,41,27,114,204,
- 0,0,0,114,122,0,0,0,114,108,0,0,0,114,253,0,
- 0,0,114,77,0,0,0,114,34,0,0,0,114,0,1,0,
- 0,114,177,0,0,0,218,10,109,101,109,111,114,121,118,105,
- 101,119,114,188,0,0,0,90,21,99,104,101,99,107,95,104,
- 97,115,104,95,98,97,115,101,100,95,112,121,99,115,114,182,
- 0,0,0,218,17,95,82,65,87,95,77,65,71,73,67,95,
- 78,85,77,66,69,82,114,183,0,0,0,114,181,0,0,0,
- 114,143,0,0,0,114,175,0,0,0,114,160,0,0,0,114,
- 174,0,0,0,114,190,0,0,0,114,6,1,0,0,114,16,
- 0,0,0,218,19,100,111,110,116,95,119,114,105,116,101,95,
- 98,121,116,101,99,111,100,101,114,196,0,0,0,114,195,0,
- 0,0,114,4,0,0,0,114,255,0,0,0,41,15,114,144,
- 0,0,0,114,164,0,0,0,114,135,0,0,0,114,179,0,
- 0,0,114,199,0,0,0,114,182,0,0,0,90,10,104,97,
- 115,104,95,98,97,115,101,100,90,12,99,104,101,99,107,95,
- 115,111,117,114,99,101,114,133,0,0,0,218,2,115,116,114,
- 42,0,0,0,114,176,0,0,0,114,17,0,0,0,90,10,
- 98,121,116,101,115,95,100,97,116,97,90,11,99,111,100,101,
- 95,111,98,106,101,99,116,114,7,0,0,0,114,7,0,0,
- 0,114,8,0,0,0,114,242,0,0,0,184,3,0,0,115,
- 188,0,0,0,10,7,4,1,4,1,4,1,4,1,4,1,
- 2,1,10,1,2,128,14,1,8,1,2,128,2,2,12,1,
- 2,128,14,1,4,1,2,128,12,2,2,1,12,1,2,128,
- 14,1,4,1,2,128,2,3,2,1,6,254,2,4,12,1,
- 16,1,12,1,4,1,12,1,10,1,2,1,2,255,8,2,
- 2,254,10,3,4,1,2,1,2,1,4,254,8,4,2,1,
- 4,255,2,128,2,3,2,1,2,1,6,1,2,1,2,1,
- 4,251,4,128,18,7,4,1,2,128,8,2,2,1,4,255,
- 6,2,2,1,2,1,6,254,8,3,10,1,12,1,12,1,
- 18,1,6,1,4,255,4,2,8,1,10,1,14,1,6,2,
- 6,1,4,255,2,2,14,1,4,3,2,128,14,254,2,1,
- 4,1,2,128,4,0,2,254,2,233,2,225,2,250,2,251,
- 115,80,0,0,0,144,4,21,0,149,10,33,7,163,5,41,
- 0,169,8,51,7,187,5,65,1,0,193,1,8,65,11,7,
- 193,18,65,5,66,24,0,194,24,10,66,36,7,195,50,7,
- 67,59,0,195,59,8,68,6,7,196,9,1,68,6,7,196,
- 10,1,66,36,7,196,11,1,65,11,7,196,12,1,51,7,
- 196,13,1,33,7,122,21,83,111,117,114,99,101,76,111,97,
- 100,101,114,46,103,101,116,95,99,111,100,101,78,41,10,114,
- 151,0,0,0,114,150,0,0,0,114,152,0,0,0,114,252,
- 0,0,0,114,253,0,0,0,114,255,0,0,0,114,254,0,
- 0,0,114,2,1,0,0,114,6,1,0,0,114,242,0,0,
- 0,114,7,0,0,0,114,7,0,0,0,114,7,0,0,0,
- 114,8,0,0,0,114,250,0,0,0,125,3,0,0,115,16,
- 0,0,0,8,0,8,2,8,8,8,14,8,10,8,7,14,
- 10,12,8,114,10,0,0,0,114,250,0,0,0,99,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,
- 0,0,0,0,0,0,115,92,0,0,0,101,0,90,1,100,
- 0,90,2,100,1,90,3,100,2,100,3,132,0,90,4,100,
- 4,100,5,132,0,90,5,100,6,100,7,132,0,90,6,101,
- 7,135,0,102,1,100,8,100,9,132,8,131,1,90,8,101,
- 7,100,10,100,11,132,0,131,1,90,9,100,12,100,13,132,
- 0,90,10,101,7,100,14,100,15,132,0,131,1,90,11,135,
- 0,4,0,90,12,83,0,41,16,218,10,70,105,108,101,76,
- 111,97,100,101,114,122,103,66,97,115,101,32,102,105,108,101,
- 32,108,111,97,100,101,114,32,99,108,97,115,115,32,119,104,
- 105,99,104,32,105,109,112,108,101,109,101,110,116,115,32,116,
- 104,101,32,108,111,97,100,101,114,32,112,114,111,116,111,99,
- 111,108,32,109,101,116,104,111,100,115,32,116,104,97,116,10,
- 32,32,32,32,114,101,113,117,105,114,101,32,102,105,108,101,
- 32,115,121,115,116,101,109,32,117,115,97,103,101,46,99,3,
- 0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,2,
- 0,0,0,67,0,0,0,115,16,0,0,0,124,1,124,0,
- 95,0,124,2,124,0,95,1,100,1,83,0,41,2,122,75,
- 67,97,99,104,101,32,116,104,101,32,109,111,100,117,108,101,
- 32,110,97,109,101,32,97,110,100,32,116,104,101,32,112,97,
- 116,104,32,116,111,32,116,104,101,32,102,105,108,101,32,102,
- 111,117,110,100,32,98,121,32,116,104,101,10,32,32,32,32,
- 32,32,32,32,102,105,110,100,101,114,46,78,114,184,0,0,
- 0,41,3,114,144,0,0,0,114,164,0,0,0,114,66,0,
+ 0,0,9,0,0,0,67,0,0,0,115,28,2,0,0,124,
+ 0,160,0,124,1,161,1,125,2,100,1,125,3,100,1,125,
+ 4,100,1,125,5,100,2,125,6,100,3,125,7,9,0,116,
+ 1,124,2,131,1,125,8,110,13,35,0,4,0,116,2,144,
+ 1,121,13,1,0,1,0,1,0,100,1,125,8,89,0,110,
+ 147,37,0,9,0,124,0,160,3,124,2,161,1,125,9,110,
+ 11,35,0,4,0,116,4,144,1,121,12,1,0,1,0,1,
+ 0,89,0,110,129,37,0,116,5,124,9,100,4,25,0,131,
+ 1,125,3,9,0,124,0,160,6,124,8,161,1,125,10,110,
+ 11,35,0,4,0,116,4,144,1,121,11,1,0,1,0,1,
+ 0,89,0,110,105,37,0,124,1,124,8,100,5,156,2,125,
+ 11,9,0,116,7,124,10,124,1,124,11,131,3,125,12,116,
+ 8,124,10,131,1,100,6,100,1,133,2,25,0,125,13,124,
+ 12,100,7,64,0,100,8,107,3,125,6,124,6,114,141,124,
+ 12,100,9,64,0,100,8,107,3,125,7,116,9,106,10,100,
+ 10,107,3,114,140,124,7,115,122,116,9,106,10,100,11,107,
+ 2,114,140,124,0,160,6,124,2,161,1,125,4,116,9,160,
+ 11,116,12,124,4,161,2,125,5,116,13,124,10,124,5,124,
+ 1,124,11,131,4,1,0,110,10,116,14,124,10,124,3,124,
+ 9,100,12,25,0,124,1,124,11,131,5,1,0,110,13,35,
+ 0,4,0,116,15,116,16,102,2,144,1,121,10,1,0,1,
+ 0,1,0,89,0,110,16,37,0,116,17,160,18,100,13,124,
+ 8,124,2,161,3,1,0,116,19,124,13,124,1,124,8,124,
+ 2,100,14,141,4,83,0,124,4,100,1,117,0,114,189,124,
+ 0,160,6,124,2,161,1,125,4,124,0,160,20,124,4,124,
+ 2,161,2,125,14,116,17,160,18,100,15,124,2,161,2,1,
+ 0,116,21,106,22,144,1,115,7,124,8,100,1,117,1,144,
+ 1,114,7,124,3,100,1,117,1,144,1,114,7,124,6,114,
+ 233,124,5,100,1,117,0,114,226,116,9,160,11,124,4,161,
+ 1,125,5,116,23,124,14,124,5,124,7,131,3,125,10,110,
+ 8,116,24,124,14,124,3,116,25,124,4,131,1,131,3,125,
+ 10,9,0,124,0,160,26,124,2,124,8,124,10,161,3,1,
+ 0,124,14,83,0,35,0,4,0,116,2,144,1,121,9,1,
+ 0,1,0,1,0,89,0,124,14,83,0,37,0,124,14,83,
+ 0,119,0,119,0,119,0,119,0,119,0,41,16,122,190,67,
+ 111,110,99,114,101,116,101,32,105,109,112,108,101,109,101,110,
+ 116,97,116,105,111,110,32,111,102,32,73,110,115,112,101,99,
+ 116,76,111,97,100,101,114,46,103,101,116,95,99,111,100,101,
+ 46,10,10,32,32,32,32,32,32,32,32,82,101,97,100,105,
+ 110,103,32,111,102,32,98,121,116,101,99,111,100,101,32,114,
+ 101,113,117,105,114,101,115,32,112,97,116,104,95,115,116,97,
+ 116,115,32,116,111,32,98,101,32,105,109,112,108,101,109,101,
+ 110,116,101,100,46,32,84,111,32,119,114,105,116,101,10,32,
+ 32,32,32,32,32,32,32,98,121,116,101,99,111,100,101,44,
+ 32,115,101,116,95,100,97,116,97,32,109,117,115,116,32,97,
+ 108,115,111,32,98,101,32,105,109,112,108,101,109,101,110,116,
+ 101,100,46,10,10,32,32,32,32,32,32,32,32,78,70,84,
+ 114,194,0,0,0,114,184,0,0,0,114,170,0,0,0,114,
+ 3,0,0,0,114,0,0,0,0,114,45,0,0,0,90,5,
+ 110,101,118,101,114,90,6,97,108,119,97,121,115,218,4,115,
+ 105,122,101,122,13,123,125,32,109,97,116,99,104,101,115,32,
+ 123,125,41,3,114,142,0,0,0,114,133,0,0,0,114,135,
+ 0,0,0,122,19,99,111,100,101,32,111,98,106,101,99,116,
+ 32,102,114,111,109,32,123,125,41,27,114,204,0,0,0,114,
+ 122,0,0,0,114,108,0,0,0,114,253,0,0,0,114,77,
+ 0,0,0,114,34,0,0,0,114,0,1,0,0,114,177,0,
+ 0,0,218,10,109,101,109,111,114,121,118,105,101,119,114,188,
+ 0,0,0,90,21,99,104,101,99,107,95,104,97,115,104,95,
+ 98,97,115,101,100,95,112,121,99,115,114,182,0,0,0,218,
+ 17,95,82,65,87,95,77,65,71,73,67,95,78,85,77,66,
+ 69,82,114,183,0,0,0,114,181,0,0,0,114,143,0,0,
+ 0,114,175,0,0,0,114,160,0,0,0,114,174,0,0,0,
+ 114,190,0,0,0,114,6,1,0,0,114,16,0,0,0,218,
+ 19,100,111,110,116,95,119,114,105,116,101,95,98,121,116,101,
+ 99,111,100,101,114,196,0,0,0,114,195,0,0,0,114,4,
+ 0,0,0,114,255,0,0,0,41,15,114,144,0,0,0,114,
+ 164,0,0,0,114,135,0,0,0,114,179,0,0,0,114,199,
+ 0,0,0,114,182,0,0,0,90,10,104,97,115,104,95,98,
+ 97,115,101,100,90,12,99,104,101,99,107,95,115,111,117,114,
+ 99,101,114,133,0,0,0,218,2,115,116,114,42,0,0,0,
+ 114,176,0,0,0,114,17,0,0,0,90,10,98,121,116,101,
+ 115,95,100,97,116,97,90,11,99,111,100,101,95,111,98,106,
+ 101,99,116,114,7,0,0,0,114,7,0,0,0,114,8,0,
+ 0,0,114,242,0,0,0,185,3,0,0,115,188,0,0,0,
+ 10,7,4,1,4,1,4,1,4,1,4,1,2,1,10,1,
+ 2,128,14,1,8,1,2,128,2,2,12,1,2,128,14,1,
+ 4,1,2,128,12,2,2,1,12,1,2,128,14,1,4,1,
+ 2,128,2,3,2,1,6,254,2,4,12,1,16,1,12,1,
+ 4,1,12,1,10,1,2,1,2,255,8,2,2,254,10,3,
+ 4,1,2,1,2,1,4,254,8,4,2,1,4,255,2,128,
+ 2,3,2,1,2,1,6,1,2,1,2,1,4,251,4,128,
+ 18,7,4,1,2,128,8,2,2,1,4,255,6,2,2,1,
+ 2,1,6,254,8,3,10,1,12,1,12,1,18,1,6,1,
+ 4,255,4,2,8,1,10,1,14,1,6,2,6,1,4,255,
+ 2,2,14,1,4,3,2,128,14,254,2,1,4,1,2,128,
+ 4,0,2,254,2,233,2,225,2,250,2,251,115,80,0,0,
+ 0,144,4,21,0,149,10,33,7,163,5,41,0,169,8,51,
+ 7,187,5,65,1,0,193,1,8,65,11,7,193,18,65,5,
+ 66,24,0,194,24,10,66,36,7,195,50,7,67,59,0,195,
+ 59,8,68,6,7,196,9,1,68,6,7,196,10,1,66,36,
+ 7,196,11,1,65,11,7,196,12,1,51,7,196,13,1,33,
+ 7,122,21,83,111,117,114,99,101,76,111,97,100,101,114,46,
+ 103,101,116,95,99,111,100,101,78,41,10,114,151,0,0,0,
+ 114,150,0,0,0,114,152,0,0,0,114,252,0,0,0,114,
+ 253,0,0,0,114,255,0,0,0,114,254,0,0,0,114,2,
+ 1,0,0,114,6,1,0,0,114,242,0,0,0,114,7,0,
0,0,114,7,0,0,0,114,7,0,0,0,114,8,0,0,
- 0,114,237,0,0,0,18,4,0,0,115,4,0,0,0,6,
- 3,10,1,114,10,0,0,0,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,0,0,0,0,2,0,0,0,2,0,
+ 0,114,250,0,0,0,126,3,0,0,115,16,0,0,0,8,
+ 0,8,2,8,8,8,14,8,10,8,7,14,10,12,8,114,
+ 10,0,0,0,114,250,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,92,
+ 0,0,0,101,0,90,1,100,0,90,2,100,1,90,3,100,
+ 2,100,3,132,0,90,4,100,4,100,5,132,0,90,5,100,
+ 6,100,7,132,0,90,6,101,7,135,0,102,1,100,8,100,
+ 9,132,8,131,1,90,8,101,7,100,10,100,11,132,0,131,
+ 1,90,9,100,12,100,13,132,0,90,10,101,7,100,14,100,
+ 15,132,0,131,1,90,11,135,0,4,0,90,12,83,0,41,
+ 16,218,10,70,105,108,101,76,111,97,100,101,114,122,103,66,
+ 97,115,101,32,102,105,108,101,32,108,111,97,100,101,114,32,
+ 99,108,97,115,115,32,119,104,105,99,104,32,105,109,112,108,
+ 101,109,101,110,116,115,32,116,104,101,32,108,111,97,100,101,
+ 114,32,112,114,111,116,111,99,111,108,32,109,101,116,104,111,
+ 100,115,32,116,104,97,116,10,32,32,32,32,114,101,113,117,
+ 105,114,101,32,102,105,108,101,32,115,121,115,116,101,109,32,
+ 117,115,97,103,101,46,99,3,0,0,0,0,0,0,0,0,
+ 0,0,0,2,0,0,0,67,0,0,0,115,16,0,0,0,
+ 124,1,124,0,95,0,124,2,124,0,95,1,100,1,83,0,
+ 41,2,122,75,67,97,99,104,101,32,116,104,101,32,109,111,
+ 100,117,108,101,32,110,97,109,101,32,97,110,100,32,116,104,
+ 101,32,112,97,116,104,32,116,111,32,116,104,101,32,102,105,
+ 108,101,32,102,111,117,110,100,32,98,121,32,116,104,101,10,
+ 32,32,32,32,32,32,32,32,102,105,110,100,101,114,46,78,
+ 114,184,0,0,0,41,3,114,144,0,0,0,114,164,0,0,
+ 0,114,66,0,0,0,114,7,0,0,0,114,7,0,0,0,
+ 114,8,0,0,0,114,237,0,0,0,19,4,0,0,115,4,
+ 0,0,0,6,3,10,1,114,10,0,0,0,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,0,0,0,0,2,0,
0,0,67,0,0,0,243,24,0,0,0,124,0,106,0,124,
1,106,0,107,2,111,11,124,0,106,1,124,1,106,1,107,
2,83,0,114,70,0,0,0,169,2,218,9,95,95,99,108,
97,115,115,95,95,114,157,0,0,0,169,2,114,144,0,0,
0,90,5,111,116,104,101,114,114,7,0,0,0,114,7,0,
- 0,0,114,8,0,0,0,218,6,95,95,101,113,95,95,24,
+ 0,0,114,8,0,0,0,218,6,95,95,101,113,95,95,25,
4,0,0,243,6,0,0,0,12,1,10,1,2,255,114,10,
0,0,0,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,0,
- 0,0,0,1,0,0,0,3,0,0,0,67,0,0,0,243,
- 20,0,0,0,116,0,124,0,106,1,131,1,116,0,124,0,
- 106,2,131,1,65,0,83,0,114,70,0,0,0,169,3,218,
- 4,104,97,115,104,114,142,0,0,0,114,66,0,0,0,169,
- 1,114,144,0,0,0,114,7,0,0,0,114,7,0,0,0,
- 114,8,0,0,0,218,8,95,95,104,97,115,104,95,95,28,
- 4,0,0,243,2,0,0,0,20,1,114,10,0,0,0,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,0,0,0,
- 0,2,0,0,0,3,0,0,0,3,0,0,0,115,16,0,
- 0,0,116,0,116,1,124,0,131,2,160,2,124,1,161,1,
- 83,0,41,2,122,100,76,111,97,100,32,97,32,109,111,100,
- 117,108,101,32,102,114,111,109,32,97,32,102,105,108,101,46,
- 10,10,32,32,32,32,32,32,32,32,84,104,105,115,32,109,
- 101,116,104,111,100,32,105,115,32,100,101,112,114,101,99,97,
- 116,101,100,46,32,32,85,115,101,32,101,120,101,99,95,109,
- 111,100,117,108,101,40,41,32,105,110,115,116,101,97,100,46,
- 10,10,32,32,32,32,32,32,32,32,78,41,3,218,5,115,
- 117,112,101,114,114,12,1,0,0,114,249,0,0,0,114,248,
- 0,0,0,169,1,114,15,1,0,0,114,7,0,0,0,114,
- 8,0,0,0,114,249,0,0,0,31,4,0,0,115,2,0,
- 0,0,16,10,114,10,0,0,0,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,0,0,0,0,2,0,
- 0,0,1,0,0,0,67,0,0,0,243,6,0,0,0,124,
- 0,106,0,83,0,169,2,122,58,82,101,116,117,114,110,32,
- 116,104,101,32,112,97,116,104,32,116,111,32,116,104,101,32,
- 115,111,117,114,99,101,32,102,105,108,101,32,97,115,32,102,
- 111,117,110,100,32,98,121,32,116,104,101,32,102,105,110,100,
- 101,114,46,78,114,72,0,0,0,114,248,0,0,0,114,7,
- 0,0,0,114,7,0,0,0,114,8,0,0,0,114,204,0,
- 0,0,43,4,0,0,243,2,0,0,0,6,3,114,10,0,
- 0,0,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,0,0,0,0,3,0,0,0,9,0,0,0,
+ 0,0,0,3,0,0,0,67,0,0,0,243,20,0,0,0,
+ 116,0,124,0,106,1,131,1,116,0,124,0,106,2,131,1,
+ 65,0,83,0,114,70,0,0,0,169,3,218,4,104,97,115,
+ 104,114,142,0,0,0,114,66,0,0,0,169,1,114,144,0,
+ 0,0,114,7,0,0,0,114,7,0,0,0,114,8,0,0,
+ 0,218,8,95,95,104,97,115,104,95,95,29,4,0,0,243,
+ 2,0,0,0,20,1,114,10,0,0,0,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,0,0,0,0,3,0,0,
+ 0,3,0,0,0,115,16,0,0,0,116,0,116,1,124,0,
+ 131,2,160,2,124,1,161,1,83,0,41,2,122,100,76,111,
+ 97,100,32,97,32,109,111,100,117,108,101,32,102,114,111,109,
+ 32,97,32,102,105,108,101,46,10,10,32,32,32,32,32,32,
+ 32,32,84,104,105,115,32,109,101,116,104,111,100,32,105,115,
+ 32,100,101,112,114,101,99,97,116,101,100,46,32,32,85,115,
+ 101,32,101,120,101,99,95,109,111,100,117,108,101,40,41,32,
+ 105,110,115,116,101,97,100,46,10,10,32,32,32,32,32,32,
+ 32,32,78,41,3,218,5,115,117,112,101,114,114,12,1,0,
+ 0,114,249,0,0,0,114,248,0,0,0,169,1,114,15,1,
+ 0,0,114,7,0,0,0,114,8,0,0,0,114,249,0,0,
+ 0,32,4,0,0,115,2,0,0,0,16,10,114,10,0,0,
+ 0,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,0,0,0,0,1,0,0,0,67,0,0,0,243,6,
+ 0,0,0,124,0,106,0,83,0,169,2,122,58,82,101,116,
+ 117,114,110,32,116,104,101,32,112,97,116,104,32,116,111,32,
+ 116,104,101,32,115,111,117,114,99,101,32,102,105,108,101,32,
+ 97,115,32,102,111,117,110,100,32,98,121,32,116,104,101,32,
+ 102,105,110,100,101,114,46,78,114,72,0,0,0,114,248,0,
+ 0,0,114,7,0,0,0,114,7,0,0,0,114,8,0,0,
+ 0,114,204,0,0,0,44,4,0,0,243,2,0,0,0,6,
+ 3,114,10,0,0,0,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,0,0,0,0,9,0,0,0,
67,0,0,0,115,136,0,0,0,116,0,124,0,116,1,116,
2,102,2,131,2,114,38,116,3,160,4,116,5,124,1,131,
1,161,1,53,0,125,2,124,2,160,6,161,0,2,0,100,
@@ -1625,45 +1609,44 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = {
101,114,110,0,0,0,90,4,114,101,97,100,114,93,0,0,
0,41,3,114,144,0,0,0,114,66,0,0,0,114,95,0,
0,0,114,7,0,0,0,114,7,0,0,0,114,8,0,0,
- 0,114,0,1,0,0,48,4,0,0,115,26,0,0,0,14,
- 2,16,1,6,1,12,255,2,1,22,128,4,0,14,2,6,
- 1,12,255,2,1,22,128,4,0,115,24,0,0,0,142,4,
- 25,3,153,4,29,11,158,3,29,11,172,4,55,3,183,4,
- 59,11,188,3,59,11,122,19,70,105,108,101,76,111,97,100,
- 101,114,46,103,101,116,95,100,97,116,97,99,2,0,0,0,
- 0,0,0,0,0,0,0,0,3,0,0,0,2,0,0,0,
- 67,0,0,0,115,20,0,0,0,100,1,100,2,108,0,109,
- 1,125,2,1,0,124,2,124,0,131,1,83,0,41,3,78,
- 114,0,0,0,0,41,1,218,10,70,105,108,101,82,101,97,
- 100,101,114,41,2,218,17,105,109,112,111,114,116,108,105,98,
- 46,114,101,97,100,101,114,115,114,32,1,0,0,41,3,114,
- 144,0,0,0,114,245,0,0,0,114,32,1,0,0,114,7,
- 0,0,0,114,7,0,0,0,114,8,0,0,0,218,19,103,
- 101,116,95,114,101,115,111,117,114,99,101,95,114,101,97,100,
- 101,114,57,4,0,0,115,4,0,0,0,12,2,8,1,114,
- 10,0,0,0,122,30,70,105,108,101,76,111,97,100,101,114,
- 46,103,101,116,95,114,101,115,111,117,114,99,101,95,114,101,
- 97,100,101,114,41,13,114,151,0,0,0,114,150,0,0,0,
- 114,152,0,0,0,114,153,0,0,0,114,237,0,0,0,114,
- 17,1,0,0,114,23,1,0,0,114,161,0,0,0,114,249,
- 0,0,0,114,204,0,0,0,114,0,1,0,0,114,34,1,
- 0,0,90,13,95,95,99,108,97,115,115,99,101,108,108,95,
- 95,114,7,0,0,0,114,7,0,0,0,114,26,1,0,0,
- 114,8,0,0,0,114,12,1,0,0,13,4,0,0,115,24,
- 0,0,0,8,0,4,2,8,3,8,6,8,4,2,3,14,
- 1,2,11,10,1,8,4,2,9,18,1,114,10,0,0,0,
- 114,12,1,0,0,99,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,3,0,0,0,64,0,0,0,115,46,
- 0,0,0,101,0,90,1,100,0,90,2,100,1,90,3,100,
- 2,100,3,132,0,90,4,100,4,100,5,132,0,90,5,100,
- 6,100,7,156,1,100,8,100,9,132,2,90,6,100,10,83,
- 0,41,11,218,16,83,111,117,114,99,101,70,105,108,101,76,
- 111,97,100,101,114,122,62,67,111,110,99,114,101,116,101,32,
- 105,109,112,108,101,109,101,110,116,97,116,105,111,110,32,111,
- 102,32,83,111,117,114,99,101,76,111,97,100,101,114,32,117,
- 115,105,110,103,32,116,104,101,32,102,105,108,101,32,115,121,
- 115,116,101,109,46,99,2,0,0,0,0,0,0,0,0,0,
- 0,0,3,0,0,0,3,0,0,0,67,0,0,0,115,22,
+ 0,114,0,1,0,0,49,4,0,0,115,22,0,0,0,14,
+ 2,16,1,6,1,14,255,22,128,4,0,14,3,6,1,14,
+ 255,22,128,4,0,115,24,0,0,0,142,4,25,3,153,4,
+ 29,11,158,3,29,11,172,4,55,3,183,4,59,11,188,3,
+ 59,11,122,19,70,105,108,101,76,111,97,100,101,114,46,103,
+ 101,116,95,100,97,116,97,99,2,0,0,0,0,0,0,0,
+ 0,0,0,0,2,0,0,0,67,0,0,0,115,20,0,0,
+ 0,100,1,100,2,108,0,109,1,125,2,1,0,124,2,124,
+ 0,131,1,83,0,41,3,78,114,0,0,0,0,41,1,218,
+ 10,70,105,108,101,82,101,97,100,101,114,41,2,218,17,105,
+ 109,112,111,114,116,108,105,98,46,114,101,97,100,101,114,115,
+ 114,32,1,0,0,41,3,114,144,0,0,0,114,245,0,0,
+ 0,114,32,1,0,0,114,7,0,0,0,114,7,0,0,0,
+ 114,8,0,0,0,218,19,103,101,116,95,114,101,115,111,117,
+ 114,99,101,95,114,101,97,100,101,114,58,4,0,0,115,4,
+ 0,0,0,12,2,8,1,114,10,0,0,0,122,30,70,105,
+ 108,101,76,111,97,100,101,114,46,103,101,116,95,114,101,115,
+ 111,117,114,99,101,95,114,101,97,100,101,114,41,13,114,151,
+ 0,0,0,114,150,0,0,0,114,152,0,0,0,114,153,0,
+ 0,0,114,237,0,0,0,114,17,1,0,0,114,23,1,0,
+ 0,114,161,0,0,0,114,249,0,0,0,114,204,0,0,0,
+ 114,0,1,0,0,114,34,1,0,0,90,13,95,95,99,108,
+ 97,115,115,99,101,108,108,95,95,114,7,0,0,0,114,7,
+ 0,0,0,114,26,1,0,0,114,8,0,0,0,114,12,1,
+ 0,0,14,4,0,0,115,24,0,0,0,8,0,4,2,8,
+ 3,8,6,8,4,2,3,14,1,2,11,10,1,8,4,2,
+ 9,18,1,114,10,0,0,0,114,12,1,0,0,99,0,0,
+ 0,0,0,0,0,0,0,0,0,0,3,0,0,0,64,0,
+ 0,0,115,46,0,0,0,101,0,90,1,100,0,90,2,100,
+ 1,90,3,100,2,100,3,132,0,90,4,100,4,100,5,132,
+ 0,90,5,100,6,100,7,156,1,100,8,100,9,132,2,90,
+ 6,100,10,83,0,41,11,218,16,83,111,117,114,99,101,70,
+ 105,108,101,76,111,97,100,101,114,122,62,67,111,110,99,114,
+ 101,116,101,32,105,109,112,108,101,109,101,110,116,97,116,105,
+ 111,110,32,111,102,32,83,111,117,114,99,101,76,111,97,100,
+ 101,114,32,117,115,105,110,103,32,116,104,101,32,102,105,108,
+ 101,32,115,121,115,116,101,109,46,99,2,0,0,0,0,0,
+ 0,0,0,0,0,0,3,0,0,0,67,0,0,0,115,22,
0,0,0,116,0,124,1,131,1,125,2,124,2,106,1,124,
2,106,2,100,1,156,2,83,0,41,3,122,33,82,101,116,
117,114,110,32,116,104,101,32,109,101,116,97,100,97,116,97,
@@ -1672,78 +1655,77 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = {
0,0,218,8,115,116,95,109,116,105,109,101,90,7,115,116,
95,115,105,122,101,41,3,114,144,0,0,0,114,66,0,0,
0,114,11,1,0,0,114,7,0,0,0,114,7,0,0,0,
- 114,8,0,0,0,114,253,0,0,0,67,4,0,0,115,4,
+ 114,8,0,0,0,114,253,0,0,0,68,4,0,0,115,4,
0,0,0,8,2,14,1,114,10,0,0,0,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,0,0,0,0,5,0,0,0,6,0,0,0,67,0,
- 0,0,115,24,0,0,0,116,0,124,1,131,1,125,4,124,
- 0,160,1,124,2,124,3,124,4,100,1,166,3,83,0,41,
- 2,78,169,1,218,5,95,109,111,100,101,41,2,114,140,0,
- 0,0,114,254,0,0,0,41,5,114,144,0,0,0,114,135,
- 0,0,0,114,133,0,0,0,114,42,0,0,0,114,79,0,
+ 0,0,0,0,0,0,6,0,0,0,67,0,0,0,115,24,
+ 0,0,0,116,0,124,1,131,1,125,4,124,0,160,1,124,
+ 2,124,3,124,4,100,1,166,3,83,0,41,2,78,169,1,
+ 218,5,95,109,111,100,101,41,2,114,140,0,0,0,114,254,
+ 0,0,0,41,5,114,144,0,0,0,114,135,0,0,0,114,
+ 133,0,0,0,114,42,0,0,0,114,79,0,0,0,114,7,
+ 0,0,0,114,7,0,0,0,114,8,0,0,0,114,255,0,
+ 0,0,73,4,0,0,115,4,0,0,0,8,2,16,1,114,
+ 10,0,0,0,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,88,0,0,0,114,37,1,0,0,
+ 99,3,0,0,0,0,0,0,0,1,0,0,0,9,0,0,
+ 0,67,0,0,0,115,250,0,0,0,116,0,124,1,131,1,
+ 92,2,125,4,125,5,103,0,125,6,124,4,114,31,116,1,
+ 124,4,131,1,115,31,116,0,124,4,131,1,92,2,125,4,
+ 125,7,124,6,160,2,124,7,161,1,1,0,124,4,114,31,
+ 116,1,124,4,131,1,114,14,116,3,124,6,131,1,68,0,
+ 93,47,125,7,116,4,124,4,124,7,131,2,125,4,9,0,
+ 116,5,160,6,124,4,161,1,1,0,113,35,35,0,4,0,
+ 116,7,121,58,1,0,1,0,1,0,89,0,113,35,4,0,
+ 116,8,121,124,1,0,125,8,1,0,116,9,160,10,100,1,
+ 124,4,124,8,161,3,1,0,89,0,100,2,125,8,126,8,
+ 1,0,100,2,83,0,100,2,125,8,126,8,119,1,37,0,
+ 9,0,116,11,124,1,124,2,124,3,131,3,1,0,116,9,
+ 160,10,100,3,124,1,161,2,1,0,100,2,83,0,35,0,
+ 4,0,116,8,121,123,1,0,125,8,1,0,116,9,160,10,
+ 100,1,124,1,124,8,161,3,1,0,89,0,100,2,125,8,
+ 126,8,100,2,83,0,100,2,125,8,126,8,119,1,37,0,
+ 119,0,119,0,41,4,122,27,87,114,105,116,101,32,98,121,
+ 116,101,115,32,100,97,116,97,32,116,111,32,97,32,102,105,
+ 108,101,46,122,27,99,111,117,108,100,32,110,111,116,32,99,
+ 114,101,97,116,101,32,123,33,114,125,58,32,123,33,114,125,
+ 78,122,12,99,114,101,97,116,101,100,32,123,33,114,125,41,
+ 12,114,75,0,0,0,114,84,0,0,0,114,62,0,0,0,
+ 218,8,114,101,118,101,114,115,101,100,114,68,0,0,0,114,
+ 19,0,0,0,90,5,109,107,100,105,114,218,15,70,105,108,
+ 101,69,120,105,115,116,115,69,114,114,111,114,114,77,0,0,
+ 0,114,160,0,0,0,114,174,0,0,0,114,96,0,0,0,
+ 41,9,114,144,0,0,0,114,66,0,0,0,114,42,0,0,
+ 0,114,38,1,0,0,218,6,112,97,114,101,110,116,114,121,
+ 0,0,0,114,64,0,0,0,114,69,0,0,0,114,1,1,
0,0,114,7,0,0,0,114,7,0,0,0,114,8,0,0,
- 0,114,255,0,0,0,72,4,0,0,115,4,0,0,0,8,
- 2,16,1,114,10,0,0,0,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,88,0,0,0,114,
- 37,1,0,0,99,3,0,0,0,0,0,0,0,1,0,0,
- 0,9,0,0,0,9,0,0,0,67,0,0,0,115,250,0,
- 0,0,116,0,124,1,131,1,92,2,125,4,125,5,103,0,
- 125,6,124,4,114,31,116,1,124,4,131,1,115,31,116,0,
- 124,4,131,1,92,2,125,4,125,7,124,6,160,2,124,7,
- 161,1,1,0,124,4,114,31,116,1,124,4,131,1,114,14,
- 116,3,124,6,131,1,68,0,93,47,125,7,116,4,124,4,
- 124,7,131,2,125,4,9,0,116,5,160,6,124,4,161,1,
- 1,0,113,35,35,0,4,0,116,7,121,58,1,0,1,0,
- 1,0,89,0,113,35,4,0,116,8,121,124,1,0,125,8,
- 1,0,116,9,160,10,100,1,124,4,124,8,161,3,1,0,
- 89,0,100,2,125,8,126,8,1,0,100,2,83,0,100,2,
- 125,8,126,8,119,1,37,0,9,0,116,11,124,1,124,2,
- 124,3,131,3,1,0,116,9,160,10,100,3,124,1,161,2,
- 1,0,100,2,83,0,35,0,4,0,116,8,121,123,1,0,
- 125,8,1,0,116,9,160,10,100,1,124,1,124,8,161,3,
- 1,0,89,0,100,2,125,8,126,8,100,2,83,0,100,2,
- 125,8,126,8,119,1,37,0,119,0,119,0,41,4,122,27,
- 87,114,105,116,101,32,98,121,116,101,115,32,100,97,116,97,
- 32,116,111,32,97,32,102,105,108,101,46,122,27,99,111,117,
- 108,100,32,110,111,116,32,99,114,101,97,116,101,32,123,33,
- 114,125,58,32,123,33,114,125,78,122,12,99,114,101,97,116,
- 101,100,32,123,33,114,125,41,12,114,75,0,0,0,114,84,
- 0,0,0,114,62,0,0,0,218,8,114,101,118,101,114,115,
- 101,100,114,68,0,0,0,114,19,0,0,0,90,5,109,107,
- 100,105,114,218,15,70,105,108,101,69,120,105,115,116,115,69,
- 114,114,111,114,114,77,0,0,0,114,160,0,0,0,114,174,
- 0,0,0,114,96,0,0,0,41,9,114,144,0,0,0,114,
- 66,0,0,0,114,42,0,0,0,114,38,1,0,0,218,6,
- 112,97,114,101,110,116,114,121,0,0,0,114,64,0,0,0,
- 114,69,0,0,0,114,1,1,0,0,114,7,0,0,0,114,
- 7,0,0,0,114,8,0,0,0,114,254,0,0,0,77,4,
- 0,0,115,60,0,0,0,12,2,4,1,12,2,12,1,10,
- 1,12,254,12,4,10,1,2,1,12,1,2,128,12,1,4,
- 2,12,1,6,3,4,1,4,255,14,2,10,128,2,1,12,
- 1,16,1,2,128,12,1,8,2,2,1,16,255,10,128,2,
- 254,2,247,115,62,0,0,0,171,5,49,2,177,7,65,18,
- 9,186,6,65,18,9,193,0,7,65,14,9,193,14,4,65,
- 18,9,193,20,12,65,34,0,193,34,7,65,58,7,193,41,
- 7,65,54,7,193,54,4,65,58,7,193,59,1,65,58,7,
- 193,60,1,65,18,9,122,25,83,111,117,114,99,101,70,105,
- 108,101,76,111,97,100,101,114,46,115,101,116,95,100,97,116,
- 97,78,41,7,114,151,0,0,0,114,150,0,0,0,114,152,
- 0,0,0,114,153,0,0,0,114,253,0,0,0,114,255,0,
- 0,0,114,254,0,0,0,114,7,0,0,0,114,7,0,0,
- 0,114,7,0,0,0,114,8,0,0,0,114,35,1,0,0,
- 63,4,0,0,115,10,0,0,0,8,0,4,2,8,2,8,
- 5,18,5,114,10,0,0,0,114,35,1,0,0,99,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,
- 0,0,64,0,0,0,115,32,0,0,0,101,0,90,1,100,
- 0,90,2,100,1,90,3,100,2,100,3,132,0,90,4,100,
- 4,100,5,132,0,90,5,100,6,83,0,41,7,218,20,83,
- 111,117,114,99,101,108,101,115,115,70,105,108,101,76,111,97,
- 100,101,114,122,45,76,111,97,100,101,114,32,119,104,105,99,
- 104,32,104,97,110,100,108,101,115,32,115,111,117,114,99,101,
- 108,101,115,115,32,102,105,108,101,32,105,109,112,111,114,116,
- 115,46,99,2,0,0,0,0,0,0,0,0,0,0,0,5,
+ 0,114,254,0,0,0,78,4,0,0,115,60,0,0,0,12,
+ 2,4,1,12,2,12,1,10,1,12,254,12,4,10,1,2,
+ 1,12,1,2,128,12,1,4,2,12,1,6,3,4,1,4,
+ 255,14,2,10,128,2,1,12,1,16,1,2,128,12,1,8,
+ 2,2,1,16,255,10,128,2,254,2,247,115,62,0,0,0,
+ 171,5,49,2,177,7,65,18,9,186,6,65,18,9,193,0,
+ 7,65,14,9,193,14,4,65,18,9,193,20,12,65,34,0,
+ 193,34,7,65,58,7,193,41,7,65,54,7,193,54,4,65,
+ 58,7,193,59,1,65,58,7,193,60,1,65,18,9,122,25,
+ 83,111,117,114,99,101,70,105,108,101,76,111,97,100,101,114,
+ 46,115,101,116,95,100,97,116,97,78,41,7,114,151,0,0,
+ 0,114,150,0,0,0,114,152,0,0,0,114,153,0,0,0,
+ 114,253,0,0,0,114,255,0,0,0,114,254,0,0,0,114,
+ 7,0,0,0,114,7,0,0,0,114,7,0,0,0,114,8,
+ 0,0,0,114,35,1,0,0,64,4,0,0,115,10,0,0,
+ 0,8,0,4,2,8,2,8,5,18,5,114,10,0,0,0,
+ 114,35,1,0,0,99,0,0,0,0,0,0,0,0,0,0,
+ 0,0,2,0,0,0,64,0,0,0,115,32,0,0,0,101,
+ 0,90,1,100,0,90,2,100,1,90,3,100,2,100,3,132,
+ 0,90,4,100,4,100,5,132,0,90,5,100,6,83,0,41,
+ 7,218,20,83,111,117,114,99,101,108,101,115,115,70,105,108,
+ 101,76,111,97,100,101,114,122,45,76,111,97,100,101,114,32,
+ 119,104,105,99,104,32,104,97,110,100,108,101,115,32,115,111,
+ 117,114,99,101,108,101,115,115,32,102,105,108,101,32,105,109,
+ 112,111,114,116,115,46,99,2,0,0,0,0,0,0,0,0,
0,0,0,5,0,0,0,67,0,0,0,115,68,0,0,0,
124,0,160,0,124,1,161,1,125,2,124,0,160,1,124,2,
161,1,125,3,124,1,124,2,100,1,156,2,125,4,116,2,
@@ -1755,99 +1737,97 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = {
0,0,0,114,8,1,0,0,41,5,114,144,0,0,0,114,
164,0,0,0,114,66,0,0,0,114,42,0,0,0,114,176,
0,0,0,114,7,0,0,0,114,7,0,0,0,114,8,0,
- 0,0,114,242,0,0,0,112,4,0,0,115,22,0,0,0,
+ 0,0,114,242,0,0,0,113,4,0,0,115,22,0,0,0,
10,1,10,1,2,4,2,1,6,254,12,4,2,1,14,1,
2,1,2,1,6,253,114,10,0,0,0,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,
- 0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,67,
- 0,0,0,114,24,0,0,0,41,2,122,39,82,101,116,117,
- 114,110,32,78,111,110,101,32,97,115,32,116,104,101,114,101,
- 32,105,115,32,110,111,32,115,111,117,114,99,101,32,99,111,
- 100,101,46,78,114,7,0,0,0,114,248,0,0,0,114,7,
- 0,0,0,114,7,0,0,0,114,8,0,0,0,114,2,1,
- 0,0,128,4,0,0,114,25,0,0,0,114,10,0,0,0,
- 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,151,0,0,0,114,150,0,0,0,114,152,
- 0,0,0,114,153,0,0,0,114,242,0,0,0,114,2,1,
- 0,0,114,7,0,0,0,114,7,0,0,0,114,7,0,0,
- 0,114,8,0,0,0,114,42,1,0,0,108,4,0,0,115,
- 8,0,0,0,8,0,4,2,8,2,12,16,114,10,0,0,
- 0,114,42,1,0,0,99,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,3,0,0,0,64,0,0,0,115,
- 92,0,0,0,101,0,90,1,100,0,90,2,100,1,90,3,
- 100,2,100,3,132,0,90,4,100,4,100,5,132,0,90,5,
- 100,6,100,7,132,0,90,6,100,8,100,9,132,0,90,7,
- 100,10,100,11,132,0,90,8,100,12,100,13,132,0,90,9,
- 100,14,100,15,132,0,90,10,100,16,100,17,132,0,90,11,
- 101,12,100,18,100,19,132,0,131,1,90,13,100,20,83,0,
- 41,21,114,31,1,0,0,122,93,76,111,97,100,101,114,32,
- 102,111,114,32,101,120,116,101,110,115,105,111,110,32,109,111,
- 100,117,108,101,115,46,10,10,32,32,32,32,84,104,101,32,
- 99,111,110,115,116,114,117,99,116,111,114,32,105,115,32,100,
- 101,115,105,103,110,101,100,32,116,111,32,119,111,114,107,32,
- 119,105,116,104,32,70,105,108,101,70,105,110,100,101,114,46,
- 10,10,32,32,32,32,99,3,0,0,0,0,0,0,0,0,
- 0,0,0,3,0,0,0,2,0,0,0,67,0,0,0,115,
- 16,0,0,0,124,1,124,0,95,0,124,2,124,0,95,1,
- 100,0,83,0,114,70,0,0,0,114,184,0,0,0,41,3,
- 114,144,0,0,0,114,142,0,0,0,114,66,0,0,0,114,
- 7,0,0,0,114,7,0,0,0,114,8,0,0,0,114,237,
- 0,0,0,141,4,0,0,115,4,0,0,0,6,1,10,1,
- 114,10,0,0,0,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,0,0,0,0,0,0,0,
- 2,0,0,0,2,0,0,0,67,0,0,0,114,13,1,0,
+ 0,0,0,0,0,0,0,1,0,0,0,67,0,0,0,114,
+ 24,0,0,0,41,2,122,39,82,101,116,117,114,110,32,78,
+ 111,110,101,32,97,115,32,116,104,101,114,101,32,105,115,32,
+ 110,111,32,115,111,117,114,99,101,32,99,111,100,101,46,78,
+ 114,7,0,0,0,114,248,0,0,0,114,7,0,0,0,114,
+ 7,0,0,0,114,8,0,0,0,114,2,1,0,0,129,4,
+ 0,0,114,25,0,0,0,114,10,0,0,0,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,151,0,0,0,114,150,0,0,0,114,152,0,0,0,114,
+ 153,0,0,0,114,242,0,0,0,114,2,1,0,0,114,7,
+ 0,0,0,114,7,0,0,0,114,7,0,0,0,114,8,0,
+ 0,0,114,42,1,0,0,109,4,0,0,115,8,0,0,0,
+ 8,0,4,2,8,2,12,16,114,10,0,0,0,114,42,1,
+ 0,0,99,0,0,0,0,0,0,0,0,0,0,0,0,3,
+ 0,0,0,64,0,0,0,115,92,0,0,0,101,0,90,1,
+ 100,0,90,2,100,1,90,3,100,2,100,3,132,0,90,4,
+ 100,4,100,5,132,0,90,5,100,6,100,7,132,0,90,6,
+ 100,8,100,9,132,0,90,7,100,10,100,11,132,0,90,8,
+ 100,12,100,13,132,0,90,9,100,14,100,15,132,0,90,10,
+ 100,16,100,17,132,0,90,11,101,12,100,18,100,19,132,0,
+ 131,1,90,13,100,20,83,0,41,21,114,31,1,0,0,122,
+ 93,76,111,97,100,101,114,32,102,111,114,32,101,120,116,101,
+ 110,115,105,111,110,32,109,111,100,117,108,101,115,46,10,10,
+ 32,32,32,32,84,104,101,32,99,111,110,115,116,114,117,99,
+ 116,111,114,32,105,115,32,100,101,115,105,103,110,101,100,32,
+ 116,111,32,119,111,114,107,32,119,105,116,104,32,70,105,108,
+ 101,70,105,110,100,101,114,46,10,10,32,32,32,32,99,3,
+ 0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,67,
+ 0,0,0,115,16,0,0,0,124,1,124,0,95,0,124,2,
+ 124,0,95,1,100,0,83,0,114,70,0,0,0,114,184,0,
+ 0,0,41,3,114,144,0,0,0,114,142,0,0,0,114,66,
+ 0,0,0,114,7,0,0,0,114,7,0,0,0,114,8,0,
+ 0,0,114,237,0,0,0,142,4,0,0,115,4,0,0,0,
+ 6,1,10,1,114,10,0,0,0,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,0,0,0,
+ 0,0,0,0,2,0,0,0,67,0,0,0,114,13,1,0,
0,114,70,0,0,0,114,14,1,0,0,114,16,1,0,0,
114,7,0,0,0,114,7,0,0,0,114,8,0,0,0,114,
- 17,1,0,0,145,4,0,0,114,18,1,0,0,114,10,0,
+ 17,1,0,0,146,4,0,0,114,18,1,0,0,114,10,0,
0,0,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,0,0,0,0,1,0,0,0,3,
- 0,0,0,67,0,0,0,114,19,1,0,0,114,70,0,0,
- 0,114,20,1,0,0,114,22,1,0,0,114,7,0,0,0,
- 114,7,0,0,0,114,8,0,0,0,114,23,1,0,0,149,
- 4,0,0,114,24,1,0,0,114,10,0,0,0,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,0,0,0,0,3,0,0,0,5,0,0,0,
- 67,0,0,0,115,36,0,0,0,116,0,160,1,116,2,106,
- 3,124,1,161,2,125,2,116,0,160,4,100,1,124,1,106,
- 5,124,0,106,6,161,3,1,0,124,2,83,0,41,3,122,
- 38,67,114,101,97,116,101,32,97,110,32,117,110,105,116,105,
- 97,108,105,122,101,100,32,101,120,116,101,110,115,105,111,110,
- 32,109,111,100,117,108,101,122,38,101,120,116,101,110,115,105,
- 111,110,32,109,111,100,117,108,101,32,123,33,114,125,32,108,
- 111,97,100,101,100,32,102,114,111,109,32,123,33,114,125,78,
- 41,7,114,160,0,0,0,114,243,0,0,0,114,188,0,0,
- 0,90,14,99,114,101,97,116,101,95,100,121,110,97,109,105,
- 99,114,174,0,0,0,114,142,0,0,0,114,66,0,0,0,
- 41,3,114,144,0,0,0,114,211,0,0,0,114,245,0,0,
+ 0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,67,
+ 0,0,0,114,19,1,0,0,114,70,0,0,0,114,20,1,
+ 0,0,114,22,1,0,0,114,7,0,0,0,114,7,0,0,
+ 0,114,8,0,0,0,114,23,1,0,0,150,4,0,0,114,
+ 24,1,0,0,114,10,0,0,0,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,
+ 0,0,0,0,5,0,0,0,67,0,0,0,115,36,0,0,
+ 0,116,0,160,1,116,2,106,3,124,1,161,2,125,2,116,
+ 0,160,4,100,1,124,1,106,5,124,0,106,6,161,3,1,
+ 0,124,2,83,0,41,3,122,38,67,114,101,97,116,101,32,
+ 97,110,32,117,110,105,116,105,97,108,105,122,101,100,32,101,
+ 120,116,101,110,115,105,111,110,32,109,111,100,117,108,101,122,
+ 38,101,120,116,101,110,115,105,111,110,32,109,111,100,117,108,
+ 101,32,123,33,114,125,32,108,111,97,100,101,100,32,102,114,
+ 111,109,32,123,33,114,125,78,41,7,114,160,0,0,0,114,
+ 243,0,0,0,114,188,0,0,0,90,14,99,114,101,97,116,
+ 101,95,100,121,110,97,109,105,99,114,174,0,0,0,114,142,
+ 0,0,0,114,66,0,0,0,41,3,114,144,0,0,0,114,
+ 211,0,0,0,114,245,0,0,0,114,7,0,0,0,114,7,
+ 0,0,0,114,8,0,0,0,114,240,0,0,0,153,4,0,
+ 0,115,14,0,0,0,4,2,6,1,4,255,6,2,8,1,
+ 4,255,4,2,114,10,0,0,0,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,117,108,101,99,2,0,0,
+ 0,0,0,0,0,0,0,0,0,5,0,0,0,67,0,0,
+ 0,115,36,0,0,0,116,0,160,1,116,2,106,3,124,1,
+ 161,2,1,0,116,0,160,4,100,1,124,0,106,5,124,0,
+ 106,6,161,3,1,0,100,2,83,0,41,3,122,30,73,110,
+ 105,116,105,97,108,105,122,101,32,97,110,32,101,120,116,101,
+ 110,115,105,111,110,32,109,111,100,117,108,101,122,40,101,120,
+ 116,101,110,115,105,111,110,32,109,111,100,117,108,101,32,123,
+ 33,114,125,32,101,120,101,99,117,116,101,100,32,102,114,111,
+ 109,32,123,33,114,125,78,41,7,114,160,0,0,0,114,243,
+ 0,0,0,114,188,0,0,0,90,12,101,120,101,99,95,100,
+ 121,110,97,109,105,99,114,174,0,0,0,114,142,0,0,0,
+ 114,66,0,0,0,169,2,114,144,0,0,0,114,245,0,0,
0,114,7,0,0,0,114,7,0,0,0,114,8,0,0,0,
- 114,240,0,0,0,152,4,0,0,115,14,0,0,0,4,2,
- 6,1,4,255,6,2,8,1,4,255,4,2,114,10,0,0,
- 0,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,117,108,101,99,2,0,0,0,0,0,0,0,0,0,0,
- 0,2,0,0,0,5,0,0,0,67,0,0,0,115,36,0,
- 0,0,116,0,160,1,116,2,106,3,124,1,161,2,1,0,
- 116,0,160,4,100,1,124,0,106,5,124,0,106,6,161,3,
- 1,0,100,2,83,0,41,3,122,30,73,110,105,116,105,97,
- 108,105,122,101,32,97,110,32,101,120,116,101,110,115,105,111,
- 110,32,109,111,100,117,108,101,122,40,101,120,116,101,110,115,
- 105,111,110,32,109,111,100,117,108,101,32,123,33,114,125,32,
- 101,120,101,99,117,116,101,100,32,102,114,111,109,32,123,33,
- 114,125,78,41,7,114,160,0,0,0,114,243,0,0,0,114,
- 188,0,0,0,90,12,101,120,101,99,95,100,121,110,97,109,
- 105,99,114,174,0,0,0,114,142,0,0,0,114,66,0,0,
- 0,169,2,114,144,0,0,0,114,245,0,0,0,114,7,0,
- 0,0,114,7,0,0,0,114,8,0,0,0,114,246,0,0,
- 0,160,4,0,0,115,8,0,0,0,14,2,6,1,8,1,
- 8,255,114,10,0,0,0,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,
- 0,0,0,0,0,2,0,0,0,4,0,0,0,3,0,0,
+ 114,246,0,0,0,161,4,0,0,115,8,0,0,0,14,2,
+ 6,1,8,1,8,255,114,10,0,0,0,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,0,0,0,0,0,4,0,0,0,3,0,0,
0,115,36,0,0,0,116,0,124,0,106,1,131,1,100,1,
25,0,137,0,116,2,135,0,102,1,100,2,100,3,132,8,
116,3,68,0,131,1,131,1,83,0,41,5,122,49,82,101,
@@ -1855,49 +1835,48 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = {
32,101,120,116,101,110,115,105,111,110,32,109,111,100,117,108,
101,32,105,115,32,97,32,112,97,99,107,97,103,101,46,114,
3,0,0,0,99,1,0,0,0,0,0,0,0,0,0,0,
- 0,2,0,0,0,4,0,0,0,51,0,0,0,115,28,0,
- 0,0,129,0,124,0,93,9,125,1,136,0,100,0,124,1,
- 23,0,107,2,86,0,1,0,113,2,100,1,83,0,41,2,
- 114,237,0,0,0,78,114,7,0,0,0,169,2,114,5,0,
- 0,0,218,6,115,117,102,102,105,120,169,1,90,9,102,105,
- 108,101,95,110,97,109,101,114,7,0,0,0,114,8,0,0,
- 0,114,9,0,0,0,169,4,0,0,115,6,0,0,0,6,
- 128,2,1,20,255,114,10,0,0,0,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,62,78,41,4,
- 114,75,0,0,0,114,66,0,0,0,218,3,97,110,121,114,
- 233,0,0,0,114,248,0,0,0,114,7,0,0,0,114,46,
- 1,0,0,114,8,0,0,0,114,207,0,0,0,166,4,0,
- 0,115,8,0,0,0,14,2,12,1,2,1,8,255,114,10,
- 0,0,0,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,0,0,0,0,
- 2,0,0,0,1,0,0,0,67,0,0,0,114,24,0,0,
- 0,41,2,122,63,82,101,116,117,114,110,32,78,111,110,101,
- 32,97,115,32,97,110,32,101,120,116,101,110,115,105,111,110,
- 32,109,111,100,117,108,101,32,99,97,110,110,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,7,0,0,0,114,248,0,0,0,114,
- 7,0,0,0,114,7,0,0,0,114,8,0,0,0,114,242,
- 0,0,0,172,4,0,0,114,25,0,0,0,114,10,0,0,
- 0,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,0,0,0,0,2,0,0,0,
- 1,0,0,0,67,0,0,0,114,24,0,0,0,41,2,122,
- 53,82,101,116,117,114,110,32,78,111,110,101,32,97,115,32,
- 101,120,116,101,110,115,105,111,110,32,109,111,100,117,108,101,
- 115,32,104,97,118,101,32,110,111,32,115,111,117,114,99,101,
- 32,99,111,100,101,46,78,114,7,0,0,0,114,248,0,0,
- 0,114,7,0,0,0,114,7,0,0,0,114,8,0,0,0,
- 114,2,1,0,0,176,4,0,0,114,25,0,0,0,114,10,
- 0,0,0,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,0,0,0,0,
- 2,0,0,0,1,0,0,0,67,0,0,0,114,27,1,0,
+ 0,4,0,0,0,51,0,0,0,115,28,0,0,0,129,0,
+ 124,0,93,9,125,1,136,0,100,0,124,1,23,0,107,2,
+ 86,0,1,0,113,2,100,1,83,0,41,2,114,237,0,0,
+ 0,78,114,7,0,0,0,169,2,114,5,0,0,0,218,6,
+ 115,117,102,102,105,120,169,1,90,9,102,105,108,101,95,110,
+ 97,109,101,114,7,0,0,0,114,8,0,0,0,114,9,0,
+ 0,0,170,4,0,0,115,6,0,0,0,6,128,2,1,20,
+ 255,114,10,0,0,0,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,62,78,41,4,114,75,0,0,
+ 0,114,66,0,0,0,218,3,97,110,121,114,233,0,0,0,
+ 114,248,0,0,0,114,7,0,0,0,114,46,1,0,0,114,
+ 8,0,0,0,114,207,0,0,0,167,4,0,0,115,8,0,
+ 0,0,14,2,12,1,2,1,8,255,114,10,0,0,0,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,0,0,0,0,1,0,0,0,
+ 67,0,0,0,114,24,0,0,0,41,2,122,63,82,101,116,
+ 117,114,110,32,78,111,110,101,32,97,115,32,97,110,32,101,
+ 120,116,101,110,115,105,111,110,32,109,111,100,117,108,101,32,
+ 99,97,110,110,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,7,0,
+ 0,0,114,248,0,0,0,114,7,0,0,0,114,7,0,0,
+ 0,114,8,0,0,0,114,242,0,0,0,173,4,0,0,114,
+ 25,0,0,0,114,10,0,0,0,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,
+ 0,0,0,0,1,0,0,0,67,0,0,0,114,24,0,0,
+ 0,41,2,122,53,82,101,116,117,114,110,32,78,111,110,101,
+ 32,97,115,32,101,120,116,101,110,115,105,111,110,32,109,111,
+ 100,117,108,101,115,32,104,97,118,101,32,110,111,32,115,111,
+ 117,114,99,101,32,99,111,100,101,46,78,114,7,0,0,0,
+ 114,248,0,0,0,114,7,0,0,0,114,7,0,0,0,114,
+ 8,0,0,0,114,2,1,0,0,177,4,0,0,114,25,0,
+ 0,0,114,10,0,0,0,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,
+ 0,0,0,0,1,0,0,0,67,0,0,0,114,27,1,0,
0,114,28,1,0,0,114,72,0,0,0,114,248,0,0,0,
114,7,0,0,0,114,7,0,0,0,114,8,0,0,0,114,
- 204,0,0,0,180,4,0,0,114,29,1,0,0,114,10,0,
+ 204,0,0,0,181,4,0,0,114,29,1,0,0,114,10,0,
0,0,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,151,0,0,0,114,150,0,0,
@@ -1906,72 +1885,71 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = {
246,0,0,0,114,207,0,0,0,114,242,0,0,0,114,2,
1,0,0,114,161,0,0,0,114,204,0,0,0,114,7,0,
0,0,114,7,0,0,0,114,7,0,0,0,114,8,0,0,
- 0,114,31,1,0,0,133,4,0,0,115,24,0,0,0,8,
+ 0,114,31,1,0,0,134,4,0,0,115,24,0,0,0,8,
0,4,2,8,6,8,4,8,4,8,3,8,8,8,6,8,
6,8,4,2,4,14,1,114,10,0,0,0,114,31,1,0,
- 0,99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,2,0,0,0,64,0,0,0,115,104,0,0,0,101,
- 0,90,1,100,0,90,2,100,1,90,3,100,2,100,3,132,
- 0,90,4,100,4,100,5,132,0,90,5,100,6,100,7,132,
- 0,90,6,100,8,100,9,132,0,90,7,100,10,100,11,132,
- 0,90,8,100,12,100,13,132,0,90,9,100,14,100,15,132,
- 0,90,10,100,16,100,17,132,0,90,11,100,18,100,19,132,
- 0,90,12,100,20,100,21,132,0,90,13,100,22,100,23,132,
- 0,90,14,100,24,83,0,41,25,218,14,95,78,97,109,101,
- 115,112,97,99,101,80,97,116,104,97,38,1,0,0,82,101,
- 112,114,101,115,101,110,116,115,32,97,32,110,97,109,101,115,
- 112,97,99,101,32,112,97,99,107,97,103,101,39,115,32,112,
- 97,116,104,46,32,32,73,116,32,117,115,101,115,32,116,104,
- 101,32,109,111,100,117,108,101,32,110,97,109,101,10,32,32,
- 32,32,116,111,32,102,105,110,100,32,105,116,115,32,112,97,
- 114,101,110,116,32,109,111,100,117,108,101,44,32,97,110,100,
- 32,102,114,111,109,32,116,104,101,114,101,32,105,116,32,108,
- 111,111,107,115,32,117,112,32,116,104,101,32,112,97,114,101,
- 110,116,39,115,10,32,32,32,32,95,95,112,97,116,104,95,
- 95,46,32,32,87,104,101,110,32,116,104,105,115,32,99,104,
- 97,110,103,101,115,44,32,116,104,101,32,109,111,100,117,108,
- 101,39,115,32,111,119,110,32,112,97,116,104,32,105,115,32,
- 114,101,99,111,109,112,117,116,101,100,44,10,32,32,32,32,
- 117,115,105,110,103,32,112,97,116,104,95,102,105,110,100,101,
- 114,46,32,32,70,111,114,32,116,111,112,45,108,101,118,101,
- 108,32,109,111,100,117,108,101,115,44,32,116,104,101,32,112,
- 97,114,101,110,116,32,109,111,100,117,108,101,39,115,32,112,
- 97,116,104,10,32,32,32,32,105,115,32,115,121,115,46,112,
- 97,116,104,46,99,4,0,0,0,0,0,0,0,0,0,0,
- 0,4,0,0,0,3,0,0,0,67,0,0,0,115,36,0,
- 0,0,124,1,124,0,95,0,124,2,124,0,95,1,116,2,
- 124,0,160,3,161,0,131,1,124,0,95,4,124,3,124,0,
- 95,5,100,0,83,0,114,70,0,0,0,41,6,218,5,95,
- 110,97,109,101,218,5,95,112,97,116,104,114,137,0,0,0,
- 218,16,95,103,101,116,95,112,97,114,101,110,116,95,112,97,
- 116,104,218,17,95,108,97,115,116,95,112,97,114,101,110,116,
- 95,112,97,116,104,218,12,95,112,97,116,104,95,102,105,110,
- 100,101,114,169,4,114,144,0,0,0,114,142,0,0,0,114,
- 66,0,0,0,90,11,112,97,116,104,95,102,105,110,100,101,
- 114,114,7,0,0,0,114,7,0,0,0,114,8,0,0,0,
- 114,237,0,0,0,193,4,0,0,115,8,0,0,0,6,1,
- 6,1,14,1,10,1,114,10,0,0,0,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,0,0,0,
- 0,4,0,0,0,3,0,0,0,67,0,0,0,115,38,0,
- 0,0,124,0,106,0,160,1,100,1,161,1,92,3,125,1,
- 125,2,125,3,124,2,100,2,107,2,114,15,100,3,83,0,
- 124,1,100,4,102,2,83,0,41,6,122,62,82,101,116,117,
- 114,110,115,32,97,32,116,117,112,108,101,32,111,102,32,40,
- 112,97,114,101,110,116,45,109,111,100,117,108,101,45,110,97,
- 109,101,44,32,112,97,114,101,110,116,45,112,97,116,104,45,
- 97,116,116,114,45,110,97,109,101,41,114,98,0,0,0,114,
- 11,0,0,0,41,2,114,16,0,0,0,114,66,0,0,0,
- 90,8,95,95,112,97,116,104,95,95,78,41,2,114,49,1,
- 0,0,114,105,0,0,0,41,4,114,144,0,0,0,114,41,
- 1,0,0,218,3,100,111,116,90,2,109,101,114,7,0,0,
- 0,114,7,0,0,0,114,8,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,199,4,0,0,115,8,0,0,0,18,2,8,
- 1,4,2,8,3,114,10,0,0,0,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,
- 101,115,99,1,0,0,0,0,0,0,0,0,0,0,0,3,
+ 0,99,0,0,0,0,0,0,0,0,0,0,0,0,2,0,
+ 0,0,64,0,0,0,115,104,0,0,0,101,0,90,1,100,
+ 0,90,2,100,1,90,3,100,2,100,3,132,0,90,4,100,
+ 4,100,5,132,0,90,5,100,6,100,7,132,0,90,6,100,
+ 8,100,9,132,0,90,7,100,10,100,11,132,0,90,8,100,
+ 12,100,13,132,0,90,9,100,14,100,15,132,0,90,10,100,
+ 16,100,17,132,0,90,11,100,18,100,19,132,0,90,12,100,
+ 20,100,21,132,0,90,13,100,22,100,23,132,0,90,14,100,
+ 24,83,0,41,25,218,14,95,78,97,109,101,115,112,97,99,
+ 101,80,97,116,104,97,38,1,0,0,82,101,112,114,101,115,
+ 101,110,116,115,32,97,32,110,97,109,101,115,112,97,99,101,
+ 32,112,97,99,107,97,103,101,39,115,32,112,97,116,104,46,
+ 32,32,73,116,32,117,115,101,115,32,116,104,101,32,109,111,
+ 100,117,108,101,32,110,97,109,101,10,32,32,32,32,116,111,
+ 32,102,105,110,100,32,105,116,115,32,112,97,114,101,110,116,
+ 32,109,111,100,117,108,101,44,32,97,110,100,32,102,114,111,
+ 109,32,116,104,101,114,101,32,105,116,32,108,111,111,107,115,
+ 32,117,112,32,116,104,101,32,112,97,114,101,110,116,39,115,
+ 10,32,32,32,32,95,95,112,97,116,104,95,95,46,32,32,
+ 87,104,101,110,32,116,104,105,115,32,99,104,97,110,103,101,
+ 115,44,32,116,104,101,32,109,111,100,117,108,101,39,115,32,
+ 111,119,110,32,112,97,116,104,32,105,115,32,114,101,99,111,
+ 109,112,117,116,101,100,44,10,32,32,32,32,117,115,105,110,
+ 103,32,112,97,116,104,95,102,105,110,100,101,114,46,32,32,
+ 70,111,114,32,116,111,112,45,108,101,118,101,108,32,109,111,
+ 100,117,108,101,115,44,32,116,104,101,32,112,97,114,101,110,
+ 116,32,109,111,100,117,108,101,39,115,32,112,97,116,104,10,
+ 32,32,32,32,105,115,32,115,121,115,46,112,97,116,104,46,
+ 99,4,0,0,0,0,0,0,0,0,0,0,0,3,0,0,
+ 0,67,0,0,0,115,36,0,0,0,124,1,124,0,95,0,
+ 124,2,124,0,95,1,116,2,124,0,160,3,161,0,131,1,
+ 124,0,95,4,124,3,124,0,95,5,100,0,83,0,114,70,
+ 0,0,0,41,6,218,5,95,110,97,109,101,218,5,95,112,
+ 97,116,104,114,137,0,0,0,218,16,95,103,101,116,95,112,
+ 97,114,101,110,116,95,112,97,116,104,218,17,95,108,97,115,
+ 116,95,112,97,114,101,110,116,95,112,97,116,104,218,12,95,
+ 112,97,116,104,95,102,105,110,100,101,114,169,4,114,144,0,
+ 0,0,114,142,0,0,0,114,66,0,0,0,90,11,112,97,
+ 116,104,95,102,105,110,100,101,114,114,7,0,0,0,114,7,
+ 0,0,0,114,8,0,0,0,114,237,0,0,0,194,4,0,
+ 0,115,8,0,0,0,6,1,6,1,14,1,10,1,114,10,
+ 0,0,0,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,0,0,0,0,3,0,0,0,67,0,0,
+ 0,115,38,0,0,0,124,0,106,0,160,1,100,1,161,1,
+ 92,3,125,1,125,2,125,3,124,2,100,2,107,2,114,15,
+ 100,3,83,0,124,1,100,4,102,2,83,0,41,6,122,62,
+ 82,101,116,117,114,110,115,32,97,32,116,117,112,108,101,32,
+ 111,102,32,40,112,97,114,101,110,116,45,109,111,100,117,108,
+ 101,45,110,97,109,101,44,32,112,97,114,101,110,116,45,112,
+ 97,116,104,45,97,116,116,114,45,110,97,109,101,41,114,98,
+ 0,0,0,114,11,0,0,0,41,2,114,16,0,0,0,114,
+ 66,0,0,0,90,8,95,95,112,97,116,104,95,95,78,41,
+ 2,114,49,1,0,0,114,105,0,0,0,41,4,114,144,0,
+ 0,0,114,41,1,0,0,218,3,100,111,116,90,2,109,101,
+ 114,7,0,0,0,114,7,0,0,0,114,8,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,200,4,0,0,115,8,0,0,
+ 0,18,2,8,1,4,2,8,3,114,10,0,0,0,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,101,115,99,1,0,0,0,0,0,0,0,0,
0,0,0,3,0,0,0,67,0,0,0,115,28,0,0,0,
124,0,160,0,161,0,92,2,125,1,125,2,116,1,116,2,
106,3,124,1,25,0,124,2,131,2,83,0,114,70,0,0,
@@ -1980,84 +1958,82 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = {
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,7,0,0,0,114,7,0,0,0,
- 114,8,0,0,0,114,51,1,0,0,209,4,0,0,115,4,
+ 114,8,0,0,0,114,51,1,0,0,210,4,0,0,115,4,
0,0,0,12,1,16,1,114,10,0,0,0,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,0,0,0,0,0,0,0,0,0,3,0,0,0,4,0,
- 0,0,67,0,0,0,115,80,0,0,0,116,0,124,0,160,
- 1,161,0,131,1,125,1,124,1,124,0,106,2,107,3,114,
- 37,124,0,160,3,124,0,106,4,124,1,161,2,125,2,124,
- 2,100,0,117,1,114,34,124,2,106,5,100,0,117,0,114,
- 34,124,2,106,6,114,34,124,2,106,6,124,0,95,7,124,
- 1,124,0,95,2,124,0,106,7,83,0,114,70,0,0,0,
- 41,8,114,137,0,0,0,114,51,1,0,0,114,52,1,0,
- 0,114,53,1,0,0,114,49,1,0,0,114,165,0,0,0,
- 114,203,0,0,0,114,50,1,0,0,41,3,114,144,0,0,
- 0,90,11,112,97,114,101,110,116,95,112,97,116,104,114,211,
- 0,0,0,114,7,0,0,0,114,7,0,0,0,114,8,0,
- 0,0,218,12,95,114,101,99,97,108,99,117,108,97,116,101,
- 213,4,0,0,115,16,0,0,0,12,2,10,1,14,1,18,
- 3,6,1,8,1,6,1,6,1,114,10,0,0,0,122,27,
- 95,78,97,109,101,115,112,97,99,101,80,97,116,104,46,95,
- 114,101,99,97,108,99,117,108,97,116,101,99,1,0,0,0,
- 0,0,0,0,0,0,0,0,1,0,0,0,3,0,0,0,
- 67,0,0,0,243,12,0,0,0,116,0,124,0,160,1,161,
- 0,131,1,83,0,114,70,0,0,0,41,2,218,4,105,116,
- 101,114,114,58,1,0,0,114,22,1,0,0,114,7,0,0,
- 0,114,7,0,0,0,114,8,0,0,0,218,8,95,95,105,
- 116,101,114,95,95,226,4,0,0,243,2,0,0,0,12,1,
- 114,10,0,0,0,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,2,
- 0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,2,
- 0,0,0,67,0,0,0,115,12,0,0,0,124,0,160,0,
- 161,0,124,1,25,0,83,0,114,70,0,0,0,169,1,114,
- 58,1,0,0,41,2,114,144,0,0,0,218,5,105,110,100,
- 101,120,114,7,0,0,0,114,7,0,0,0,114,8,0,0,
- 0,218,11,95,95,103,101,116,105,116,101,109,95,95,229,4,
- 0,0,114,62,1,0,0,114,10,0,0,0,122,26,95,78,
- 97,109,101,115,112,97,99,101,80,97,116,104,46,95,95,103,
- 101,116,105,116,101,109,95,95,99,3,0,0,0,0,0,0,
- 0,0,0,0,0,3,0,0,0,3,0,0,0,67,0,0,
+ 0,0,0,0,0,0,0,0,0,0,4,0,0,0,67,0,
+ 0,0,115,80,0,0,0,116,0,124,0,160,1,161,0,131,
+ 1,125,1,124,1,124,0,106,2,107,3,114,37,124,0,160,
+ 3,124,0,106,4,124,1,161,2,125,2,124,2,100,0,117,
+ 1,114,34,124,2,106,5,100,0,117,0,114,34,124,2,106,
+ 6,114,34,124,2,106,6,124,0,95,7,124,1,124,0,95,
+ 2,124,0,106,7,83,0,114,70,0,0,0,41,8,114,137,
+ 0,0,0,114,51,1,0,0,114,52,1,0,0,114,53,1,
+ 0,0,114,49,1,0,0,114,165,0,0,0,114,203,0,0,
+ 0,114,50,1,0,0,41,3,114,144,0,0,0,90,11,112,
+ 97,114,101,110,116,95,112,97,116,104,114,211,0,0,0,114,
+ 7,0,0,0,114,7,0,0,0,114,8,0,0,0,218,12,
+ 95,114,101,99,97,108,99,117,108,97,116,101,214,4,0,0,
+ 115,16,0,0,0,12,2,10,1,14,1,18,3,6,1,8,
+ 1,6,1,6,1,114,10,0,0,0,122,27,95,78,97,109,
+ 101,115,112,97,99,101,80,97,116,104,46,95,114,101,99,97,
+ 108,99,117,108,97,116,101,99,1,0,0,0,0,0,0,0,
+ 0,0,0,0,3,0,0,0,67,0,0,0,243,12,0,0,
+ 0,116,0,124,0,160,1,161,0,131,1,83,0,114,70,0,
+ 0,0,41,2,218,4,105,116,101,114,114,58,1,0,0,114,
+ 22,1,0,0,114,7,0,0,0,114,7,0,0,0,114,8,
+ 0,0,0,218,8,95,95,105,116,101,114,95,95,227,4,0,
+ 0,243,2,0,0,0,12,1,114,10,0,0,0,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,2,0,0,0,0,0,0,0,0,
+ 0,0,0,2,0,0,0,67,0,0,0,115,12,0,0,0,
+ 124,0,160,0,161,0,124,1,25,0,83,0,114,70,0,0,
+ 0,169,1,114,58,1,0,0,41,2,114,144,0,0,0,218,
+ 5,105,110,100,101,120,114,7,0,0,0,114,7,0,0,0,
+ 114,8,0,0,0,218,11,95,95,103,101,116,105,116,101,109,
+ 95,95,230,4,0,0,114,62,1,0,0,114,10,0,0,0,
+ 122,26,95,78,97,109,101,115,112,97,99,101,80,97,116,104,
+ 46,95,95,103,101,116,105,116,101,109,95,95,99,3,0,0,
+ 0,0,0,0,0,0,0,0,0,3,0,0,0,67,0,0,
0,115,14,0,0,0,124,2,124,0,106,0,124,1,60,0,
100,0,83,0,114,70,0,0,0,41,1,114,50,1,0,0,
41,3,114,144,0,0,0,114,64,1,0,0,114,66,0,0,
0,114,7,0,0,0,114,7,0,0,0,114,8,0,0,0,
- 218,11,95,95,115,101,116,105,116,101,109,95,95,232,4,0,
+ 218,11,95,95,115,101,116,105,116,101,109,95,95,233,4,0,
0,115,2,0,0,0,14,1,114,10,0,0,0,122,26,95,
78,97,109,101,115,112,97,99,101,80,97,116,104,46,95,95,
115,101,116,105,116,101,109,95,95,99,1,0,0,0,0,0,
- 0,0,0,0,0,0,1,0,0,0,3,0,0,0,67,0,
- 0,0,114,59,1,0,0,114,70,0,0,0,41,2,114,4,
- 0,0,0,114,58,1,0,0,114,22,1,0,0,114,7,0,
- 0,0,114,7,0,0,0,114,8,0,0,0,218,7,95,95,
- 108,101,110,95,95,235,4,0,0,114,62,1,0,0,114,10,
- 0,0,0,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,0,0,0,0,1,0,0,0,3,0,0,0,
- 67,0,0,0,243,12,0,0,0,100,1,160,0,124,0,106,
- 1,161,1,83,0,41,2,78,122,20,95,78,97,109,101,115,
- 112,97,99,101,80,97,116,104,40,123,33,114,125,41,41,2,
- 114,90,0,0,0,114,50,1,0,0,114,22,1,0,0,114,
- 7,0,0,0,114,7,0,0,0,114,8,0,0,0,218,8,
- 95,95,114,101,112,114,95,95,238,4,0,0,114,62,1,0,
- 0,114,10,0,0,0,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,0,0,0,0,2,0,0,0,
- 3,0,0,0,67,0,0,0,115,12,0,0,0,124,1,124,
- 0,160,0,161,0,118,0,83,0,114,70,0,0,0,114,63,
- 1,0,0,169,2,114,144,0,0,0,218,4,105,116,101,109,
- 114,7,0,0,0,114,7,0,0,0,114,8,0,0,0,218,
- 12,95,95,99,111,110,116,97,105,110,115,95,95,241,4,0,
- 0,114,62,1,0,0,114,10,0,0,0,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,0,0,0,0,2,0,0,0,3,0,0,0,67,0,0,
+ 0,0,0,0,0,0,3,0,0,0,67,0,0,0,114,59,
+ 1,0,0,114,70,0,0,0,41,2,114,4,0,0,0,114,
+ 58,1,0,0,114,22,1,0,0,114,7,0,0,0,114,7,
+ 0,0,0,114,8,0,0,0,218,7,95,95,108,101,110,95,
+ 95,236,4,0,0,114,62,1,0,0,114,10,0,0,0,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,
+ 0,0,0,0,3,0,0,0,67,0,0,0,243,12,0,0,
+ 0,100,1,160,0,124,0,106,1,161,1,83,0,41,2,78,
+ 122,20,95,78,97,109,101,115,112,97,99,101,80,97,116,104,
+ 40,123,33,114,125,41,41,2,114,90,0,0,0,114,50,1,
+ 0,0,114,22,1,0,0,114,7,0,0,0,114,7,0,0,
+ 0,114,8,0,0,0,218,8,95,95,114,101,112,114,95,95,
+ 239,4,0,0,114,62,1,0,0,114,10,0,0,0,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,
+ 0,0,0,0,3,0,0,0,67,0,0,0,115,12,0,0,
+ 0,124,1,124,0,160,0,161,0,118,0,83,0,114,70,0,
+ 0,0,114,63,1,0,0,169,2,114,144,0,0,0,218,4,
+ 105,116,101,109,114,7,0,0,0,114,7,0,0,0,114,8,
+ 0,0,0,218,12,95,95,99,111,110,116,97,105,110,115,95,
+ 95,242,4,0,0,114,62,1,0,0,114,10,0,0,0,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,0,0,0,0,3,0,0,0,67,0,0,
0,115,16,0,0,0,124,0,106,0,160,1,124,1,161,1,
1,0,100,0,83,0,114,70,0,0,0,41,2,114,50,1,
0,0,114,62,0,0,0,114,70,1,0,0,114,7,0,0,
0,114,7,0,0,0,114,8,0,0,0,114,62,0,0,0,
- 244,4,0,0,243,2,0,0,0,16,1,114,10,0,0,0,
+ 245,4,0,0,243,2,0,0,0,16,1,114,10,0,0,0,
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,15,114,151,0,0,0,114,
150,0,0,0,114,152,0,0,0,114,153,0,0,0,114,237,
@@ -2065,143 +2041,140 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = {
0,0,114,61,1,0,0,114,65,1,0,0,114,66,1,0,
0,114,67,1,0,0,114,69,1,0,0,114,72,1,0,0,
114,62,0,0,0,114,7,0,0,0,114,7,0,0,0,114,
- 7,0,0,0,114,8,0,0,0,114,48,1,0,0,186,4,
+ 7,0,0,0,114,8,0,0,0,114,48,1,0,0,187,4,
0,0,115,26,0,0,0,8,0,4,1,8,6,8,6,8,
10,8,4,8,13,8,3,8,3,8,3,8,3,8,3,12,
3,114,10,0,0,0,114,48,1,0,0,99,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,
- 64,0,0,0,115,88,0,0,0,101,0,90,1,100,0,90,
- 2,100,1,100,2,132,0,90,3,101,4,100,3,100,4,132,
- 0,131,1,90,5,100,5,100,6,132,0,90,6,100,7,100,
- 8,132,0,90,7,100,9,100,10,132,0,90,8,100,11,100,
- 12,132,0,90,9,100,13,100,14,132,0,90,10,100,15,100,
- 16,132,0,90,11,100,17,100,18,132,0,90,12,100,19,83,
- 0,41,20,218,16,95,78,97,109,101,115,112,97,99,101,76,
- 111,97,100,101,114,99,4,0,0,0,0,0,0,0,0,0,
- 0,0,4,0,0,0,4,0,0,0,67,0,0,0,115,18,
- 0,0,0,116,0,124,1,124,2,124,3,131,3,124,0,95,
- 1,100,0,83,0,114,70,0,0,0,41,2,114,48,1,0,
- 0,114,50,1,0,0,114,54,1,0,0,114,7,0,0,0,
- 114,7,0,0,0,114,8,0,0,0,114,237,0,0,0,250,
- 4,0,0,115,2,0,0,0,18,1,114,10,0,0,0,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,1,0,0,0,0,
- 0,0,0,0,0,0,0,1,0,0,0,4,0,0,0,67,
- 0,0,0,115,24,0,0,0,116,0,160,1,100,1,116,2,
- 161,2,1,0,100,2,160,3,124,0,106,4,161,1,83,0,
- 41,4,122,115,82,101,116,117,114,110,32,114,101,112,114,32,
- 102,111,114,32,116,104,101,32,109,111,100,117,108,101,46,10,
- 10,32,32,32,32,32,32,32,32,84,104,101,32,109,101,116,
- 104,111,100,32,105,115,32,100,101,112,114,101,99,97,116,101,
- 100,46,32,32,84,104,101,32,105,109,112,111,114,116,32,109,
- 97,99,104,105,110,101,114,121,32,100,111,101,115,32,116,104,
- 101,32,106,111,98,32,105,116,115,101,108,102,46,10,10,32,
- 32,32,32,32,32,32,32,122,82,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,40,41,32,105,115,32,100,101,112,114,101,
- 99,97,116,101,100,32,97,110,100,32,115,108,97,116,101,100,
- 32,102,111,114,32,114,101,109,111,118,97,108,32,105,110,32,
- 80,121,116,104,111,110,32,51,46,49,50,122,25,60,109,111,
- 100,117,108,101,32,123,33,114,125,32,40,110,97,109,101,115,
- 112,97,99,101,41,62,78,41,5,114,100,0,0,0,114,101,
- 0,0,0,114,102,0,0,0,114,90,0,0,0,114,151,0,
- 0,0,41,1,114,245,0,0,0,114,7,0,0,0,114,7,
- 0,0,0,114,8,0,0,0,218,11,109,111,100,117,108,101,
- 95,114,101,112,114,253,4,0,0,115,8,0,0,0,6,7,
- 2,1,4,255,12,2,114,10,0,0,0,122,28,95,78,97,
+ 0,0,0,0,0,0,0,0,3,0,0,0,64,0,0,0,
+ 115,88,0,0,0,101,0,90,1,100,0,90,2,100,1,100,
+ 2,132,0,90,3,101,4,100,3,100,4,132,0,131,1,90,
+ 5,100,5,100,6,132,0,90,6,100,7,100,8,132,0,90,
+ 7,100,9,100,10,132,0,90,8,100,11,100,12,132,0,90,
+ 9,100,13,100,14,132,0,90,10,100,15,100,16,132,0,90,
+ 11,100,17,100,18,132,0,90,12,100,19,83,0,41,20,218,
+ 16,95,78,97,109,101,115,112,97,99,101,76,111,97,100,101,
+ 114,99,4,0,0,0,0,0,0,0,0,0,0,0,4,0,
+ 0,0,67,0,0,0,115,18,0,0,0,116,0,124,1,124,
+ 2,124,3,131,3,124,0,95,1,100,0,83,0,114,70,0,
+ 0,0,41,2,114,48,1,0,0,114,50,1,0,0,114,54,
+ 1,0,0,114,7,0,0,0,114,7,0,0,0,114,8,0,
+ 0,0,114,237,0,0,0,251,4,0,0,115,2,0,0,0,
+ 18,1,114,10,0,0,0,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,1,0,0,0,0,0,0,0,0,0,0,0,4,
+ 0,0,0,67,0,0,0,115,24,0,0,0,116,0,160,1,
+ 100,1,116,2,161,2,1,0,100,2,160,3,124,0,106,4,
+ 161,1,83,0,41,4,122,115,82,101,116,117,114,110,32,114,
+ 101,112,114,32,102,111,114,32,116,104,101,32,109,111,100,117,
+ 108,101,46,10,10,32,32,32,32,32,32,32,32,84,104,101,
+ 32,109,101,116,104,111,100,32,105,115,32,100,101,112,114,101,
+ 99,97,116,101,100,46,32,32,84,104,101,32,105,109,112,111,
+ 114,116,32,109,97,99,104,105,110,101,114,121,32,100,111,101,
+ 115,32,116,104,101,32,106,111,98,32,105,116,115,101,108,102,
+ 46,10,10,32,32,32,32,32,32,32,32,122,82,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,0,0,0,0,2,0,0,0,1,0,0,0,67,0,
+ 100,117,108,101,95,114,101,112,114,40,41,32,105,115,32,100,
+ 101,112,114,101,99,97,116,101,100,32,97,110,100,32,115,108,
+ 97,116,101,100,32,102,111,114,32,114,101,109,111,118,97,108,
+ 32,105,110,32,80,121,116,104,111,110,32,51,46,49,50,122,
+ 25,60,109,111,100,117,108,101,32,123,33,114,125,32,40,110,
+ 97,109,101,115,112,97,99,101,41,62,78,41,5,114,100,0,
+ 0,0,114,101,0,0,0,114,102,0,0,0,114,90,0,0,
+ 0,114,151,0,0,0,41,1,114,245,0,0,0,114,7,0,
+ 0,0,114,7,0,0,0,114,8,0,0,0,218,11,109,111,
+ 100,117,108,101,95,114,101,112,114,254,4,0,0,115,8,0,
+ 0,0,6,7,2,1,4,255,12,2,114,10,0,0,0,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,0,0,0,0,1,0,0,0,67,0,
0,0,114,24,0,0,0,41,2,78,84,114,7,0,0,0,
114,248,0,0,0,114,7,0,0,0,114,7,0,0,0,114,
- 8,0,0,0,114,207,0,0,0,8,5,0,0,243,2,0,
+ 8,0,0,0,114,207,0,0,0,9,5,0,0,243,2,0,
0,0,4,1,114,10,0,0,0,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,0,
- 0,0,0,2,0,0,0,1,0,0,0,67,0,0,0,114,
- 24,0,0,0,41,2,78,114,11,0,0,0,114,7,0,0,
+ 0,0,0,1,0,0,0,67,0,0,0,114,24,0,0,0,
+ 41,2,78,114,11,0,0,0,114,7,0,0,0,114,248,0,
+ 0,0,114,7,0,0,0,114,7,0,0,0,114,8,0,0,
+ 0,114,2,1,0,0,12,5,0,0,114,76,1,0,0,114,
+ 10,0,0,0,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,0,0,0,0,6,0,
+ 0,0,67,0,0,0,115,16,0,0,0,116,0,100,1,100,
+ 2,100,3,100,4,100,5,141,4,83,0,41,6,78,114,11,
+ 0,0,0,122,8,60,115,116,114,105,110,103,62,114,244,0,
+ 0,0,84,41,1,114,4,1,0,0,41,1,114,5,1,0,
0,114,248,0,0,0,114,7,0,0,0,114,7,0,0,0,
- 114,8,0,0,0,114,2,1,0,0,11,5,0,0,114,76,
- 1,0,0,114,10,0,0,0,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,0,0,
- 0,0,2,0,0,0,6,0,0,0,67,0,0,0,115,16,
- 0,0,0,116,0,100,1,100,2,100,3,100,4,100,5,141,
- 4,83,0,41,6,78,114,11,0,0,0,122,8,60,115,116,
- 114,105,110,103,62,114,244,0,0,0,84,41,1,114,4,1,
- 0,0,41,1,114,5,1,0,0,114,248,0,0,0,114,7,
- 0,0,0,114,7,0,0,0,114,8,0,0,0,114,242,0,
- 0,0,14,5,0,0,114,73,1,0,0,114,10,0,0,0,
- 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,0,0,0,0,2,0,0,0,1,0,0,0,
- 67,0,0,0,114,24,0,0,0,114,238,0,0,0,114,7,
- 0,0,0,114,239,0,0,0,114,7,0,0,0,114,7,0,
- 0,0,114,8,0,0,0,114,240,0,0,0,17,5,0,0,
- 114,241,0,0,0,114,10,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,0,0,0,0,2,0,0,0,1,0,0,0,67,
+ 114,8,0,0,0,114,242,0,0,0,15,5,0,0,114,73,
+ 1,0,0,114,10,0,0,0,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,0,0,0,0,
+ 1,0,0,0,67,0,0,0,114,24,0,0,0,114,238,0,
+ 0,0,114,7,0,0,0,114,239,0,0,0,114,7,0,0,
+ 0,114,7,0,0,0,114,8,0,0,0,114,240,0,0,0,
+ 18,5,0,0,114,241,0,0,0,114,10,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,0,0,0,0,1,0,0,0,67,
0,0,0,115,4,0,0,0,100,0,83,0,114,70,0,0,
0,114,7,0,0,0,114,43,1,0,0,114,7,0,0,0,
- 114,7,0,0,0,114,8,0,0,0,114,246,0,0,0,20,
+ 114,7,0,0,0,114,8,0,0,0,114,246,0,0,0,21,
5,0,0,114,76,1,0,0,114,10,0,0,0,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,0,0,0,0,2,0,0,0,4,0,0,0,
- 67,0,0,0,115,26,0,0,0,116,0,160,1,100,1,124,
- 0,106,2,161,2,1,0,116,0,160,3,124,0,124,1,161,
- 2,83,0,41,3,122,98,76,111,97,100,32,97,32,110,97,
- 109,101,115,112,97,99,101,32,109,111,100,117,108,101,46,10,
- 10,32,32,32,32,32,32,32,32,84,104,105,115,32,109,101,
- 116,104,111,100,32,105,115,32,100,101,112,114,101,99,97,116,
- 101,100,46,32,32,85,115,101,32,101,120,101,99,95,109,111,
- 100,117,108,101,40,41,32,105,110,115,116,101,97,100,46,10,
- 10,32,32,32,32,32,32,32,32,122,38,110,97,109,101,115,
- 112,97,99,101,32,109,111,100,117,108,101,32,108,111,97,100,
- 101,100,32,119,105,116,104,32,112,97,116,104,32,123,33,114,
- 125,78,41,4,114,160,0,0,0,114,174,0,0,0,114,50,
- 1,0,0,114,247,0,0,0,114,248,0,0,0,114,7,0,
- 0,0,114,7,0,0,0,114,8,0,0,0,114,249,0,0,
- 0,23,5,0,0,115,8,0,0,0,6,7,4,1,4,255,
- 12,3,114,10,0,0,0,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,99,2,0,0,0,0,0,0,0,0,0,
- 0,0,3,0,0,0,2,0,0,0,67,0,0,0,115,22,
- 0,0,0,100,1,100,2,108,0,109,1,125,2,1,0,124,
- 2,124,0,106,2,131,1,83,0,41,3,78,114,0,0,0,
- 0,41,1,218,15,78,97,109,101,115,112,97,99,101,82,101,
- 97,100,101,114,41,3,114,33,1,0,0,114,77,1,0,0,
- 114,50,1,0,0,41,3,114,144,0,0,0,114,245,0,0,
- 0,114,77,1,0,0,114,7,0,0,0,114,7,0,0,0,
- 114,8,0,0,0,114,34,1,0,0,35,5,0,0,115,4,
- 0,0,0,12,1,10,1,114,10,0,0,0,122,36,95,78,
- 97,109,101,115,112,97,99,101,76,111,97,100,101,114,46,103,
- 101,116,95,114,101,115,111,117,114,99,101,95,114,101,97,100,
- 101,114,78,41,13,114,151,0,0,0,114,150,0,0,0,114,
- 152,0,0,0,114,237,0,0,0,114,234,0,0,0,114,75,
- 1,0,0,114,207,0,0,0,114,2,1,0,0,114,242,0,
- 0,0,114,240,0,0,0,114,246,0,0,0,114,249,0,0,
- 0,114,34,1,0,0,114,7,0,0,0,114,7,0,0,0,
- 114,7,0,0,0,114,8,0,0,0,114,74,1,0,0,249,
- 4,0,0,115,22,0,0,0,8,0,8,1,2,3,10,1,
- 8,10,8,3,8,3,8,3,8,3,8,3,12,12,114,10,
- 0,0,0,114,74,1,0,0,99,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,4,0,0,0,64,0,0,
- 0,115,118,0,0,0,101,0,90,1,100,0,90,2,100,1,
- 90,3,101,4,100,2,100,3,132,0,131,1,90,5,101,4,
- 100,4,100,5,132,0,131,1,90,6,101,7,100,6,100,7,
- 132,0,131,1,90,8,101,7,100,8,100,9,132,0,131,1,
- 90,9,101,7,100,19,100,11,100,12,132,1,131,1,90,10,
- 101,7,100,20,100,13,100,14,132,1,131,1,90,11,101,7,
- 100,19,100,15,100,16,132,1,131,1,90,12,101,4,100,17,
- 100,18,132,0,131,1,90,13,100,10,83,0,41,21,218,10,
- 80,97,116,104,70,105,110,100,101,114,122,62,77,101,116,97,
- 32,112,97,116,104,32,102,105,110,100,101,114,32,102,111,114,
- 32,115,121,115,46,112,97,116,104,32,97,110,100,32,112,97,
- 99,107,97,103,101,32,95,95,112,97,116,104,95,95,32,97,
- 116,116,114,105,98,117,116,101,115,46,99,0,0,0,0,0,
- 0,0,0,0,0,0,0,2,0,0,0,4,0,0,0,67,
+ 0,0,0,0,0,0,0,0,4,0,0,0,67,0,0,0,
+ 115,26,0,0,0,116,0,160,1,100,1,124,0,106,2,161,
+ 2,1,0,116,0,160,3,124,0,124,1,161,2,83,0,41,
+ 3,122,98,76,111,97,100,32,97,32,110,97,109,101,115,112,
+ 97,99,101,32,109,111,100,117,108,101,46,10,10,32,32,32,
+ 32,32,32,32,32,84,104,105,115,32,109,101,116,104,111,100,
+ 32,105,115,32,100,101,112,114,101,99,97,116,101,100,46,32,
+ 32,85,115,101,32,101,120,101,99,95,109,111,100,117,108,101,
+ 40,41,32,105,110,115,116,101,97,100,46,10,10,32,32,32,
+ 32,32,32,32,32,122,38,110,97,109,101,115,112,97,99,101,
+ 32,109,111,100,117,108,101,32,108,111,97,100,101,100,32,119,
+ 105,116,104,32,112,97,116,104,32,123,33,114,125,78,41,4,
+ 114,160,0,0,0,114,174,0,0,0,114,50,1,0,0,114,
+ 247,0,0,0,114,248,0,0,0,114,7,0,0,0,114,7,
+ 0,0,0,114,8,0,0,0,114,249,0,0,0,24,5,0,
+ 0,115,8,0,0,0,6,7,4,1,4,255,12,3,114,10,
+ 0,0,0,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,99,2,0,0,0,0,0,0,0,0,0,0,0,2,0,
+ 0,0,67,0,0,0,115,22,0,0,0,100,1,100,2,108,
+ 0,109,1,125,2,1,0,124,2,124,0,106,2,131,1,83,
+ 0,41,3,78,114,0,0,0,0,41,1,218,15,78,97,109,
+ 101,115,112,97,99,101,82,101,97,100,101,114,41,3,114,33,
+ 1,0,0,114,77,1,0,0,114,50,1,0,0,41,3,114,
+ 144,0,0,0,114,245,0,0,0,114,77,1,0,0,114,7,
+ 0,0,0,114,7,0,0,0,114,8,0,0,0,114,34,1,
+ 0,0,36,5,0,0,115,4,0,0,0,12,1,10,1,114,
+ 10,0,0,0,122,36,95,78,97,109,101,115,112,97,99,101,
+ 76,111,97,100,101,114,46,103,101,116,95,114,101,115,111,117,
+ 114,99,101,95,114,101,97,100,101,114,78,41,13,114,151,0,
+ 0,0,114,150,0,0,0,114,152,0,0,0,114,237,0,0,
+ 0,114,234,0,0,0,114,75,1,0,0,114,207,0,0,0,
+ 114,2,1,0,0,114,242,0,0,0,114,240,0,0,0,114,
+ 246,0,0,0,114,249,0,0,0,114,34,1,0,0,114,7,
+ 0,0,0,114,7,0,0,0,114,7,0,0,0,114,8,0,
+ 0,0,114,74,1,0,0,250,4,0,0,115,22,0,0,0,
+ 8,0,8,1,2,3,10,1,8,10,8,3,8,3,8,3,
+ 8,3,8,3,12,12,114,10,0,0,0,114,74,1,0,0,
+ 99,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,
+ 0,64,0,0,0,115,118,0,0,0,101,0,90,1,100,0,
+ 90,2,100,1,90,3,101,4,100,2,100,3,132,0,131,1,
+ 90,5,101,4,100,4,100,5,132,0,131,1,90,6,101,7,
+ 100,6,100,7,132,0,131,1,90,8,101,7,100,8,100,9,
+ 132,0,131,1,90,9,101,7,100,19,100,11,100,12,132,1,
+ 131,1,90,10,101,7,100,20,100,13,100,14,132,1,131,1,
+ 90,11,101,7,100,19,100,15,100,16,132,1,131,1,90,12,
+ 101,4,100,17,100,18,132,0,131,1,90,13,100,10,83,0,
+ 41,21,218,10,80,97,116,104,70,105,110,100,101,114,122,62,
+ 77,101,116,97,32,112,97,116,104,32,102,105,110,100,101,114,
+ 32,102,111,114,32,115,121,115,46,112,97,116,104,32,97,110,
+ 100,32,112,97,99,107,97,103,101,32,95,95,112,97,116,104,
+ 95,95,32,97,116,116,114,105,98,117,116,101,115,46,99,0,
+ 0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,67,
0,0,0,115,64,0,0,0,116,0,116,1,106,2,160,3,
161,0,131,1,68,0,93,22,92,2,125,0,125,1,124,1,
100,1,117,0,114,20,116,1,106,2,124,0,61,0,113,7,
@@ -2221,99 +2194,98 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = {
5,105,116,101,109,115,114,154,0,0,0,114,79,1,0,0,
41,2,114,142,0,0,0,218,6,102,105,110,100,101,114,114,
7,0,0,0,114,7,0,0,0,114,8,0,0,0,114,79,
- 1,0,0,46,5,0,0,115,14,0,0,0,22,4,8,1,
+ 1,0,0,47,5,0,0,115,14,0,0,0,22,4,8,1,
10,1,10,1,8,1,2,128,4,252,114,10,0,0,0,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,1,0,
- 0,0,0,0,0,0,0,0,0,0,2,0,0,0,9,0,
- 0,0,67,0,0,0,115,78,0,0,0,116,0,106,1,100,
- 1,117,1,114,14,116,0,106,1,115,14,116,2,160,3,100,
- 2,116,4,161,2,1,0,116,0,106,1,68,0,93,18,125,
- 1,9,0,124,1,124,0,131,1,2,0,1,0,83,0,35,
- 0,4,0,116,5,121,38,1,0,1,0,1,0,89,0,113,
- 17,37,0,100,1,83,0,119,0,41,3,122,46,83,101,97,
- 114,99,104,32,115,121,115,46,112,97,116,104,95,104,111,111,
- 107,115,32,102,111,114,32,97,32,102,105,110,100,101,114,32,
- 102,111,114,32,39,112,97,116,104,39,46,78,122,23,115,121,
- 115,46,112,97,116,104,95,104,111,111,107,115,32,105,115,32,
- 101,109,112,116,121,41,6,114,16,0,0,0,218,10,112,97,
- 116,104,95,104,111,111,107,115,114,100,0,0,0,114,101,0,
- 0,0,114,163,0,0,0,114,143,0,0,0,41,2,114,66,
- 0,0,0,90,4,104,111,111,107,114,7,0,0,0,114,7,
- 0,0,0,114,8,0,0,0,218,11,95,112,97,116,104,95,
- 104,111,111,107,115,56,5,0,0,115,22,0,0,0,16,3,
- 12,1,10,1,2,1,12,1,2,128,12,1,4,1,2,128,
- 4,2,2,253,115,12,0,0,0,148,3,26,2,154,7,35,
- 9,166,1,35,9,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,0,0,0,0,3,0,0,0,8,0,
- 0,0,67,0,0,0,115,104,0,0,0,124,1,100,1,107,
- 2,114,21,9,0,116,0,160,1,161,0,125,1,110,11,35,
- 0,4,0,116,2,121,51,1,0,1,0,1,0,89,0,100,
- 2,83,0,37,0,9,0,116,3,106,4,124,1,25,0,125,
- 2,124,2,83,0,35,0,4,0,116,5,121,50,1,0,1,
- 0,1,0,124,0,160,6,124,1,161,1,125,2,124,2,116,
- 3,106,4,124,1,60,0,89,0,124,2,83,0,37,0,119,
- 0,119,0,41,3,122,210,71,101,116,32,116,104,101,32,102,
- 105,110,100,101,114,32,102,111,114,32,116,104,101,32,112,97,
- 116,104,32,101,110,116,114,121,32,102,114,111,109,32,115,121,
- 115,46,112,97,116,104,95,105,109,112,111,114,116,101,114,95,
- 99,97,99,104,101,46,10,10,32,32,32,32,32,32,32,32,
- 73,102,32,116,104,101,32,112,97,116,104,32,101,110,116,114,
- 121,32,105,115,32,110,111,116,32,105,110,32,116,104,101,32,
- 99,97,99,104,101,44,32,102,105,110,100,32,116,104,101,32,
- 97,112,112,114,111,112,114,105,97,116,101,32,102,105,110,100,
- 101,114,10,32,32,32,32,32,32,32,32,97,110,100,32,99,
- 97,99,104,101,32,105,116,46,32,73,102,32,110,111,32,102,
- 105,110,100,101,114,32,105,115,32,97,118,97,105,108,97,98,
- 108,101,44,32,115,116,111,114,101,32,78,111,110,101,46,10,
- 10,32,32,32,32,32,32,32,32,114,11,0,0,0,78,41,
- 7,114,19,0,0,0,114,83,0,0,0,218,17,70,105,108,
- 101,78,111,116,70,111,117,110,100,69,114,114,111,114,114,16,
- 0,0,0,114,81,1,0,0,218,8,75,101,121,69,114,114,
- 111,114,114,85,1,0,0,41,3,114,222,0,0,0,114,66,
- 0,0,0,114,83,1,0,0,114,7,0,0,0,114,7,0,
- 0,0,114,8,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,69,5,0,
- 0,115,36,0,0,0,8,8,2,1,10,1,2,128,12,1,
- 6,3,2,128,2,1,10,1,4,4,2,128,12,253,10,1,
- 12,1,4,1,2,128,2,253,2,250,115,24,0,0,0,133,
- 4,10,0,138,7,20,7,150,5,29,0,157,17,49,7,178,
- 1,49,7,179,1,20,7,122,31,80,97,116,104,70,105,110,
- 100,101,114,46,95,112,97,116,104,95,105,109,112,111,114,116,
- 101,114,95,99,97,99,104,101,99,3,0,0,0,0,0,0,
- 0,0,0,0,0,7,0,0,0,4,0,0,0,67,0,0,
- 0,115,138,0,0,0,116,0,124,2,100,1,131,2,114,27,
- 116,1,160,2,124,2,161,1,155,0,100,2,157,2,125,3,
- 116,3,160,4,124,3,116,5,161,2,1,0,124,2,160,6,
- 124,1,161,1,92,2,125,4,125,5,110,21,116,1,160,2,
- 124,2,161,1,155,0,100,3,157,2,125,3,116,3,160,4,
- 124,3,116,5,161,2,1,0,124,2,160,7,124,1,161,1,
- 125,4,103,0,125,5,124,4,100,0,117,1,114,58,116,1,
- 160,8,124,1,124,4,161,2,83,0,116,1,160,9,124,1,
- 100,0,161,2,125,6,124,5,124,6,95,10,124,6,83,0,
- 41,4,78,114,162,0,0,0,122,53,46,102,105,110,100,95,
- 115,112,101,99,40,41,32,110,111,116,32,102,111,117,110,100,
- 59,32,102,97,108,108,105,110,103,32,98,97,99,107,32,116,
- 111,32,102,105,110,100,95,108,111,97,100,101,114,40,41,122,
- 53,46,102,105,110,100,95,115,112,101,99,40,41,32,110,111,
- 116,32,102,111,117,110,100,59,32,102,97,108,108,105,110,103,
- 32,98,97,99,107,32,116,111,32,102,105,110,100,95,109,111,
- 100,117,108,101,40,41,41,11,114,154,0,0,0,114,160,0,
- 0,0,90,12,95,111,98,106,101,99,116,95,110,97,109,101,
- 114,100,0,0,0,114,101,0,0,0,114,163,0,0,0,114,
- 162,0,0,0,114,230,0,0,0,114,225,0,0,0,114,208,
- 0,0,0,114,203,0,0,0,41,7,114,222,0,0,0,114,
- 164,0,0,0,114,83,1,0,0,114,167,0,0,0,114,165,
- 0,0,0,114,166,0,0,0,114,211,0,0,0,114,7,0,
- 0,0,114,7,0,0,0,114,8,0,0,0,218,16,95,108,
- 101,103,97,99,121,95,103,101,116,95,115,112,101,99,91,5,
- 0,0,115,26,0,0,0,10,4,16,1,12,2,16,1,16,
- 2,12,2,10,1,4,1,8,1,12,1,12,1,6,1,4,
- 1,114,10,0,0,0,122,27,80,97,116,104,70,105,110,100,
- 101,114,46,95,108,101,103,97,99,121,95,103,101,116,95,115,
- 112,101,99,78,99,4,0,0,0,0,0,0,0,0,0,0,
- 0,9,0,0,0,5,0,0,0,67,0,0,0,115,166,0,
+ 0,0,0,0,0,0,0,0,0,0,9,0,0,0,67,0,
+ 0,0,115,78,0,0,0,116,0,106,1,100,1,117,1,114,
+ 14,116,0,106,1,115,14,116,2,160,3,100,2,116,4,161,
+ 2,1,0,116,0,106,1,68,0,93,18,125,1,9,0,124,
+ 1,124,0,131,1,2,0,1,0,83,0,35,0,4,0,116,
+ 5,121,38,1,0,1,0,1,0,89,0,113,17,37,0,100,
+ 1,83,0,119,0,41,3,122,46,83,101,97,114,99,104,32,
+ 115,121,115,46,112,97,116,104,95,104,111,111,107,115,32,102,
+ 111,114,32,97,32,102,105,110,100,101,114,32,102,111,114,32,
+ 39,112,97,116,104,39,46,78,122,23,115,121,115,46,112,97,
+ 116,104,95,104,111,111,107,115,32,105,115,32,101,109,112,116,
+ 121,41,6,114,16,0,0,0,218,10,112,97,116,104,95,104,
+ 111,111,107,115,114,100,0,0,0,114,101,0,0,0,114,163,
+ 0,0,0,114,143,0,0,0,41,2,114,66,0,0,0,90,
+ 4,104,111,111,107,114,7,0,0,0,114,7,0,0,0,114,
+ 8,0,0,0,218,11,95,112,97,116,104,95,104,111,111,107,
+ 115,57,5,0,0,115,22,0,0,0,16,3,12,1,10,1,
+ 2,1,12,1,2,128,12,1,4,1,2,128,4,2,2,253,
+ 115,12,0,0,0,148,3,26,2,154,7,35,9,166,1,35,
+ 9,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,0,0,0,0,8,0,0,0,67,0,0,0,115,104,
+ 0,0,0,124,1,100,1,107,2,114,21,9,0,116,0,160,
+ 1,161,0,125,1,110,11,35,0,4,0,116,2,121,51,1,
+ 0,1,0,1,0,89,0,100,2,83,0,37,0,9,0,116,
+ 3,106,4,124,1,25,0,125,2,124,2,83,0,35,0,4,
+ 0,116,5,121,50,1,0,1,0,1,0,124,0,160,6,124,
+ 1,161,1,125,2,124,2,116,3,106,4,124,1,60,0,89,
+ 0,124,2,83,0,37,0,119,0,119,0,41,3,122,210,71,
+ 101,116,32,116,104,101,32,102,105,110,100,101,114,32,102,111,
+ 114,32,116,104,101,32,112,97,116,104,32,101,110,116,114,121,
+ 32,102,114,111,109,32,115,121,115,46,112,97,116,104,95,105,
+ 109,112,111,114,116,101,114,95,99,97,99,104,101,46,10,10,
+ 32,32,32,32,32,32,32,32,73,102,32,116,104,101,32,112,
+ 97,116,104,32,101,110,116,114,121,32,105,115,32,110,111,116,
+ 32,105,110,32,116,104,101,32,99,97,99,104,101,44,32,102,
+ 105,110,100,32,116,104,101,32,97,112,112,114,111,112,114,105,
+ 97,116,101,32,102,105,110,100,101,114,10,32,32,32,32,32,
+ 32,32,32,97,110,100,32,99,97,99,104,101,32,105,116,46,
+ 32,73,102,32,110,111,32,102,105,110,100,101,114,32,105,115,
+ 32,97,118,97,105,108,97,98,108,101,44,32,115,116,111,114,
+ 101,32,78,111,110,101,46,10,10,32,32,32,32,32,32,32,
+ 32,114,11,0,0,0,78,41,7,114,19,0,0,0,114,83,
+ 0,0,0,218,17,70,105,108,101,78,111,116,70,111,117,110,
+ 100,69,114,114,111,114,114,16,0,0,0,114,81,1,0,0,
+ 218,8,75,101,121,69,114,114,111,114,114,85,1,0,0,41,
+ 3,114,222,0,0,0,114,66,0,0,0,114,83,1,0,0,
+ 114,7,0,0,0,114,7,0,0,0,114,8,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,70,5,0,0,115,36,0,0,0,8,8,
+ 2,1,10,1,2,128,12,1,6,3,2,128,2,1,10,1,
+ 4,4,2,128,12,253,10,1,12,1,4,1,2,128,2,253,
+ 2,250,115,24,0,0,0,133,4,10,0,138,7,20,7,150,
+ 5,29,0,157,17,49,7,178,1,49,7,179,1,20,7,122,
+ 31,80,97,116,104,70,105,110,100,101,114,46,95,112,97,116,
+ 104,95,105,109,112,111,114,116,101,114,95,99,97,99,104,101,
+ 99,3,0,0,0,0,0,0,0,0,0,0,0,4,0,0,
+ 0,67,0,0,0,115,138,0,0,0,116,0,124,2,100,1,
+ 131,2,114,27,116,1,160,2,124,2,161,1,155,0,100,2,
+ 157,2,125,3,116,3,160,4,124,3,116,5,161,2,1,0,
+ 124,2,160,6,124,1,161,1,92,2,125,4,125,5,110,21,
+ 116,1,160,2,124,2,161,1,155,0,100,3,157,2,125,3,
+ 116,3,160,4,124,3,116,5,161,2,1,0,124,2,160,7,
+ 124,1,161,1,125,4,103,0,125,5,124,4,100,0,117,1,
+ 114,58,116,1,160,8,124,1,124,4,161,2,83,0,116,1,
+ 160,9,124,1,100,0,161,2,125,6,124,5,124,6,95,10,
+ 124,6,83,0,41,4,78,114,162,0,0,0,122,53,46,102,
+ 105,110,100,95,115,112,101,99,40,41,32,110,111,116,32,102,
+ 111,117,110,100,59,32,102,97,108,108,105,110,103,32,98,97,
+ 99,107,32,116,111,32,102,105,110,100,95,108,111,97,100,101,
+ 114,40,41,122,53,46,102,105,110,100,95,115,112,101,99,40,
+ 41,32,110,111,116,32,102,111,117,110,100,59,32,102,97,108,
+ 108,105,110,103,32,98,97,99,107,32,116,111,32,102,105,110,
+ 100,95,109,111,100,117,108,101,40,41,41,11,114,154,0,0,
+ 0,114,160,0,0,0,90,12,95,111,98,106,101,99,116,95,
+ 110,97,109,101,114,100,0,0,0,114,101,0,0,0,114,163,
+ 0,0,0,114,162,0,0,0,114,230,0,0,0,114,225,0,
+ 0,0,114,208,0,0,0,114,203,0,0,0,41,7,114,222,
+ 0,0,0,114,164,0,0,0,114,83,1,0,0,114,167,0,
+ 0,0,114,165,0,0,0,114,166,0,0,0,114,211,0,0,
+ 0,114,7,0,0,0,114,7,0,0,0,114,8,0,0,0,
+ 218,16,95,108,101,103,97,99,121,95,103,101,116,95,115,112,
+ 101,99,92,5,0,0,115,26,0,0,0,10,4,16,1,12,
+ 2,16,1,16,2,12,2,10,1,4,1,8,1,12,1,12,
+ 1,6,1,4,1,114,10,0,0,0,122,27,80,97,116,104,
+ 70,105,110,100,101,114,46,95,108,101,103,97,99,121,95,103,
+ 101,116,95,115,112,101,99,78,99,4,0,0,0,0,0,0,
+ 0,0,0,0,0,5,0,0,0,67,0,0,0,115,166,0,
0,0,103,0,125,4,124,2,68,0,93,67,125,5,116,0,
124,5,116,1,116,2,102,2,131,2,115,14,113,4,124,0,
160,3,124,5,161,1,125,6,124,6,100,1,117,1,114,71,
@@ -2340,107 +2312,106 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = {
104,90,5,101,110,116,114,121,114,83,1,0,0,114,211,0,
0,0,114,166,0,0,0,114,7,0,0,0,114,7,0,0,
0,114,8,0,0,0,218,9,95,103,101,116,95,115,112,101,
- 99,112,5,0,0,115,42,0,0,0,4,5,8,1,14,1,
+ 99,113,5,0,0,115,42,0,0,0,4,5,8,1,14,1,
2,1,10,1,8,1,10,1,14,1,12,2,8,1,2,1,
10,1,8,1,6,1,8,1,8,1,10,5,2,128,12,2,
6,1,4,1,114,10,0,0,0,122,20,80,97,116,104,70,
105,110,100,101,114,46,95,103,101,116,95,115,112,101,99,99,
- 4,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,
- 5,0,0,0,67,0,0,0,115,94,0,0,0,124,2,100,
- 1,117,0,114,7,116,0,106,1,125,2,124,0,160,2,124,
- 1,124,2,124,3,161,3,125,4,124,4,100,1,117,0,114,
- 20,100,1,83,0,124,4,106,3,100,1,117,0,114,45,124,
- 4,106,4,125,5,124,5,114,43,100,1,124,4,95,5,116,
- 6,124,1,124,5,124,0,106,2,131,3,124,4,95,4,124,
- 4,83,0,100,1,83,0,124,4,83,0,41,2,122,141,84,
- 114,121,32,116,111,32,102,105,110,100,32,97,32,115,112,101,
- 99,32,102,111,114,32,39,102,117,108,108,110,97,109,101,39,
- 32,111,110,32,115,121,115,46,112,97,116,104,32,111,114,32,
- 39,112,97,116,104,39,46,10,10,32,32,32,32,32,32,32,
- 32,84,104,101,32,115,101,97,114,99,104,32,105,115,32,98,
- 97,115,101,100,32,111,110,32,115,121,115,46,112,97,116,104,
- 95,104,111,111,107,115,32,97,110,100,32,115,121,115,46,112,
- 97,116,104,95,105,109,112,111,114,116,101,114,95,99,97,99,
- 104,101,46,10,32,32,32,32,32,32,32,32,78,41,7,114,
- 16,0,0,0,114,66,0,0,0,114,92,1,0,0,114,165,
- 0,0,0,114,203,0,0,0,114,206,0,0,0,114,48,1,
- 0,0,41,6,114,222,0,0,0,114,164,0,0,0,114,66,
- 0,0,0,114,226,0,0,0,114,211,0,0,0,114,91,1,
- 0,0,114,7,0,0,0,114,7,0,0,0,114,8,0,0,
- 0,114,227,0,0,0,144,5,0,0,115,26,0,0,0,8,
- 6,6,1,14,1,8,1,4,1,10,1,6,1,4,1,6,
- 3,16,1,4,1,4,2,4,2,114,10,0,0,0,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,0,0,0,0,0,0,0,0,0,
- 0,4,0,0,0,4,0,0,0,67,0,0,0,115,42,0,
- 0,0,116,0,160,1,100,1,116,2,161,2,1,0,124,0,
- 160,3,124,1,124,2,161,2,125,3,124,3,100,2,117,0,
- 114,18,100,2,83,0,124,3,106,4,83,0,41,3,122,170,
- 102,105,110,100,32,116,104,101,32,109,111,100,117,108,101,32,
- 111,110,32,115,121,115,46,112,97,116,104,32,111,114,32,39,
- 112,97,116,104,39,32,98,97,115,101,100,32,111,110,32,115,
- 121,115,46,112,97,116,104,95,104,111,111,107,115,32,97,110,
- 100,10,32,32,32,32,32,32,32,32,115,121,115,46,112,97,
- 116,104,95,105,109,112,111,114,116,101,114,95,99,97,99,104,
- 101,46,10,10,32,32,32,32,32,32,32,32,84,104,105,115,
- 32,109,101,116,104,111,100,32,105,115,32,100,101,112,114,101,
- 99,97,116,101,100,46,32,32,85,115,101,32,102,105,110,100,
- 95,115,112,101,99,40,41,32,105,110,115,116,101,97,100,46,
- 10,10,32,32,32,32,32,32,32,32,122,101,80,97,116,104,
- 70,105,110,100,101,114,46,102,105,110,100,95,109,111,100,117,
- 108,101,40,41,32,105,115,32,100,101,112,114,101,99,97,116,
- 101,100,32,97,110,100,32,115,108,97,116,101,100,32,102,111,
- 114,32,114,101,109,111,118,97,108,32,105,110,32,80,121,116,
- 104,111,110,32,51,46,49,50,59,32,117,115,101,32,102,105,
- 110,100,95,115,112,101,99,40,41,32,105,110,115,116,101,97,
- 100,78,114,228,0,0,0,114,229,0,0,0,114,7,0,0,
- 0,114,7,0,0,0,114,8,0,0,0,114,230,0,0,0,
- 168,5,0,0,115,14,0,0,0,6,8,2,2,4,254,12,
- 3,8,1,4,1,6,1,114,10,0,0,0,122,22,80,97,
- 116,104,70,105,110,100,101,114,46,102,105,110,100,95,109,111,
- 100,117,108,101,99,0,0,0,0,0,0,0,0,0,0,0,
- 0,3,0,0,0,4,0,0,0,79,0,0,0,115,28,0,
- 0,0,100,1,100,2,108,0,109,1,125,2,1,0,124,2,
- 106,2,124,0,105,0,124,1,164,1,142,1,83,0,41,4,
- 97,32,1,0,0,10,32,32,32,32,32,32,32,32,70,105,
- 110,100,32,100,105,115,116,114,105,98,117,116,105,111,110,115,
- 46,10,10,32,32,32,32,32,32,32,32,82,101,116,117,114,
- 110,32,97,110,32,105,116,101,114,97,98,108,101,32,111,102,
- 32,97,108,108,32,68,105,115,116,114,105,98,117,116,105,111,
- 110,32,105,110,115,116,97,110,99,101,115,32,99,97,112,97,
- 98,108,101,32,111,102,10,32,32,32,32,32,32,32,32,108,
- 111,97,100,105,110,103,32,116,104,101,32,109,101,116,97,100,
- 97,116,97,32,102,111,114,32,112,97,99,107,97,103,101,115,
- 32,109,97,116,99,104,105,110,103,32,96,96,99,111,110,116,
- 101,120,116,46,110,97,109,101,96,96,10,32,32,32,32,32,
- 32,32,32,40,111,114,32,97,108,108,32,110,97,109,101,115,
- 32,105,102,32,96,96,78,111,110,101,96,96,32,105,110,100,
- 105,99,97,116,101,100,41,32,97,108,111,110,103,32,116,104,
- 101,32,112,97,116,104,115,32,105,110,32,116,104,101,32,108,
- 105,115,116,10,32,32,32,32,32,32,32,32,111,102,32,100,
- 105,114,101,99,116,111,114,105,101,115,32,96,96,99,111,110,
- 116,101,120,116,46,112,97,116,104,96,96,46,10,32,32,32,
- 32,32,32,32,32,114,0,0,0,0,41,1,218,18,77,101,
- 116,97,100,97,116,97,80,97,116,104,70,105,110,100,101,114,
- 78,41,3,90,18,105,109,112,111,114,116,108,105,98,46,109,
- 101,116,97,100,97,116,97,114,93,1,0,0,218,18,102,105,
- 110,100,95,100,105,115,116,114,105,98,117,116,105,111,110,115,
- 41,3,114,145,0,0,0,114,146,0,0,0,114,93,1,0,
+ 4,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,
+ 67,0,0,0,115,94,0,0,0,124,2,100,1,117,0,114,
+ 7,116,0,106,1,125,2,124,0,160,2,124,1,124,2,124,
+ 3,161,3,125,4,124,4,100,1,117,0,114,20,100,1,83,
+ 0,124,4,106,3,100,1,117,0,114,45,124,4,106,4,125,
+ 5,124,5,114,43,100,1,124,4,95,5,116,6,124,1,124,
+ 5,124,0,106,2,131,3,124,4,95,4,124,4,83,0,100,
+ 1,83,0,124,4,83,0,41,2,122,141,84,114,121,32,116,
+ 111,32,102,105,110,100,32,97,32,115,112,101,99,32,102,111,
+ 114,32,39,102,117,108,108,110,97,109,101,39,32,111,110,32,
+ 115,121,115,46,112,97,116,104,32,111,114,32,39,112,97,116,
+ 104,39,46,10,10,32,32,32,32,32,32,32,32,84,104,101,
+ 32,115,101,97,114,99,104,32,105,115,32,98,97,115,101,100,
+ 32,111,110,32,115,121,115,46,112,97,116,104,95,104,111,111,
+ 107,115,32,97,110,100,32,115,121,115,46,112,97,116,104,95,
+ 105,109,112,111,114,116,101,114,95,99,97,99,104,101,46,10,
+ 32,32,32,32,32,32,32,32,78,41,7,114,16,0,0,0,
+ 114,66,0,0,0,114,92,1,0,0,114,165,0,0,0,114,
+ 203,0,0,0,114,206,0,0,0,114,48,1,0,0,41,6,
+ 114,222,0,0,0,114,164,0,0,0,114,66,0,0,0,114,
+ 226,0,0,0,114,211,0,0,0,114,91,1,0,0,114,7,
+ 0,0,0,114,7,0,0,0,114,8,0,0,0,114,227,0,
+ 0,0,145,5,0,0,115,26,0,0,0,8,6,6,1,14,
+ 1,8,1,4,1,10,1,6,1,4,1,6,3,16,1,4,
+ 1,4,2,4,2,114,10,0,0,0,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,0,0,0,0,0,0,0,0,0,0,4,0,0,
+ 0,67,0,0,0,115,42,0,0,0,116,0,160,1,100,1,
+ 116,2,161,2,1,0,124,0,160,3,124,1,124,2,161,2,
+ 125,3,124,3,100,2,117,0,114,18,100,2,83,0,124,3,
+ 106,4,83,0,41,3,122,170,102,105,110,100,32,116,104,101,
+ 32,109,111,100,117,108,101,32,111,110,32,115,121,115,46,112,
+ 97,116,104,32,111,114,32,39,112,97,116,104,39,32,98,97,
+ 115,101,100,32,111,110,32,115,121,115,46,112,97,116,104,95,
+ 104,111,111,107,115,32,97,110,100,10,32,32,32,32,32,32,
+ 32,32,115,121,115,46,112,97,116,104,95,105,109,112,111,114,
+ 116,101,114,95,99,97,99,104,101,46,10,10,32,32,32,32,
+ 32,32,32,32,84,104,105,115,32,109,101,116,104,111,100,32,
+ 105,115,32,100,101,112,114,101,99,97,116,101,100,46,32,32,
+ 85,115,101,32,102,105,110,100,95,115,112,101,99,40,41,32,
+ 105,110,115,116,101,97,100,46,10,10,32,32,32,32,32,32,
+ 32,32,122,101,80,97,116,104,70,105,110,100,101,114,46,102,
+ 105,110,100,95,109,111,100,117,108,101,40,41,32,105,115,32,
+ 100,101,112,114,101,99,97,116,101,100,32,97,110,100,32,115,
+ 108,97,116,101,100,32,102,111,114,32,114,101,109,111,118,97,
+ 108,32,105,110,32,80,121,116,104,111,110,32,51,46,49,50,
+ 59,32,117,115,101,32,102,105,110,100,95,115,112,101,99,40,
+ 41,32,105,110,115,116,101,97,100,78,114,228,0,0,0,114,
+ 229,0,0,0,114,7,0,0,0,114,7,0,0,0,114,8,
+ 0,0,0,114,230,0,0,0,169,5,0,0,115,14,0,0,
+ 0,6,8,2,2,4,254,12,3,8,1,4,1,6,1,114,
+ 10,0,0,0,122,22,80,97,116,104,70,105,110,100,101,114,
+ 46,102,105,110,100,95,109,111,100,117,108,101,99,0,0,0,
+ 0,0,0,0,0,0,0,0,0,4,0,0,0,79,0,0,
+ 0,115,28,0,0,0,100,1,100,2,108,0,109,1,125,2,
+ 1,0,124,2,106,2,124,0,105,0,124,1,164,1,142,1,
+ 83,0,41,4,97,32,1,0,0,10,32,32,32,32,32,32,
+ 32,32,70,105,110,100,32,100,105,115,116,114,105,98,117,116,
+ 105,111,110,115,46,10,10,32,32,32,32,32,32,32,32,82,
+ 101,116,117,114,110,32,97,110,32,105,116,101,114,97,98,108,
+ 101,32,111,102,32,97,108,108,32,68,105,115,116,114,105,98,
+ 117,116,105,111,110,32,105,110,115,116,97,110,99,101,115,32,
+ 99,97,112,97,98,108,101,32,111,102,10,32,32,32,32,32,
+ 32,32,32,108,111,97,100,105,110,103,32,116,104,101,32,109,
+ 101,116,97,100,97,116,97,32,102,111,114,32,112,97,99,107,
+ 97,103,101,115,32,109,97,116,99,104,105,110,103,32,96,96,
+ 99,111,110,116,101,120,116,46,110,97,109,101,96,96,10,32,
+ 32,32,32,32,32,32,32,40,111,114,32,97,108,108,32,110,
+ 97,109,101,115,32,105,102,32,96,96,78,111,110,101,96,96,
+ 32,105,110,100,105,99,97,116,101,100,41,32,97,108,111,110,
+ 103,32,116,104,101,32,112,97,116,104,115,32,105,110,32,116,
+ 104,101,32,108,105,115,116,10,32,32,32,32,32,32,32,32,
+ 111,102,32,100,105,114,101,99,116,111,114,105,101,115,32,96,
+ 96,99,111,110,116,101,120,116,46,112,97,116,104,96,96,46,
+ 10,32,32,32,32,32,32,32,32,114,0,0,0,0,41,1,
+ 218,18,77,101,116,97,100,97,116,97,80,97,116,104,70,105,
+ 110,100,101,114,78,41,3,90,18,105,109,112,111,114,116,108,
+ 105,98,46,109,101,116,97,100,97,116,97,114,93,1,0,0,
+ 218,18,102,105,110,100,95,100,105,115,116,114,105,98,117,116,
+ 105,111,110,115,41,3,114,145,0,0,0,114,146,0,0,0,
+ 114,93,1,0,0,114,7,0,0,0,114,7,0,0,0,114,
+ 8,0,0,0,114,94,1,0,0,185,5,0,0,115,4,0,
+ 0,0,12,10,16,1,114,10,0,0,0,122,29,80,97,116,
+ 104,70,105,110,100,101,114,46,102,105,110,100,95,100,105,115,
+ 116,114,105,98,117,116,105,111,110,115,114,70,0,0,0,114,
+ 231,0,0,0,41,14,114,151,0,0,0,114,150,0,0,0,
+ 114,152,0,0,0,114,153,0,0,0,114,234,0,0,0,114,
+ 79,1,0,0,114,85,1,0,0,114,235,0,0,0,114,88,
+ 1,0,0,114,89,1,0,0,114,92,1,0,0,114,227,0,
+ 0,0,114,230,0,0,0,114,94,1,0,0,114,7,0,0,
0,114,7,0,0,0,114,7,0,0,0,114,8,0,0,0,
- 114,94,1,0,0,184,5,0,0,115,4,0,0,0,12,10,
- 16,1,114,10,0,0,0,122,29,80,97,116,104,70,105,110,
- 100,101,114,46,102,105,110,100,95,100,105,115,116,114,105,98,
- 117,116,105,111,110,115,114,70,0,0,0,114,231,0,0,0,
- 41,14,114,151,0,0,0,114,150,0,0,0,114,152,0,0,
- 0,114,153,0,0,0,114,234,0,0,0,114,79,1,0,0,
- 114,85,1,0,0,114,235,0,0,0,114,88,1,0,0,114,
- 89,1,0,0,114,92,1,0,0,114,227,0,0,0,114,230,
- 0,0,0,114,94,1,0,0,114,7,0,0,0,114,7,0,
- 0,0,114,7,0,0,0,114,8,0,0,0,114,78,1,0,
- 0,42,5,0,0,115,36,0,0,0,8,0,4,2,2,2,
- 10,1,2,9,10,1,2,12,10,1,2,21,10,1,2,20,
- 12,1,2,31,12,1,2,23,12,1,2,15,14,1,114,10,
- 0,0,0,114,78,1,0,0,99,0,0,0,0,0,0,0,
+ 114,78,1,0,0,43,5,0,0,115,36,0,0,0,8,0,
+ 4,2,2,2,10,1,2,9,10,1,2,12,10,1,2,21,
+ 10,1,2,20,12,1,2,31,12,1,2,23,12,1,2,15,
+ 14,1,114,10,0,0,0,114,78,1,0,0,99,0,0,0,
0,0,0,0,0,0,0,0,0,3,0,0,0,64,0,0,
0,115,90,0,0,0,101,0,90,1,100,0,90,2,100,1,
90,3,100,2,100,3,132,0,90,4,100,4,100,5,132,0,
@@ -2460,59 +2431,58 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = {
32,102,105,110,100,101,114,32,105,115,32,104,97,110,100,108,
105,110,103,32,104,97,115,32,98,101,101,110,32,109,111,100,
105,102,105,101,100,46,10,10,32,32,32,32,99,2,0,0,
- 0,0,0,0,0,0,0,0,0,5,0,0,0,6,0,0,
- 0,7,0,0,0,115,112,0,0,0,103,0,125,3,124,2,
- 68,0,93,16,92,2,137,0,125,4,124,3,160,0,135,0,
- 102,1,100,1,100,2,132,8,124,4,68,0,131,1,161,1,
- 1,0,113,4,124,3,124,0,95,1,124,1,112,27,100,3,
- 124,0,95,2,116,3,124,0,106,2,131,1,115,43,116,4,
- 116,5,160,6,161,0,124,0,106,2,131,2,124,0,95,2,
- 100,4,124,0,95,7,116,8,131,0,124,0,95,9,116,8,
- 131,0,124,0,95,10,100,5,83,0,41,6,122,154,73,110,
- 105,116,105,97,108,105,122,101,32,119,105,116,104,32,116,104,
- 101,32,112,97,116,104,32,116,111,32,115,101,97,114,99,104,
- 32,111,110,32,97,110,100,32,97,32,118,97,114,105,97,98,
- 108,101,32,110,117,109,98,101,114,32,111,102,10,32,32,32,
- 32,32,32,32,32,50,45,116,117,112,108,101,115,32,99,111,
- 110,116,97,105,110,105,110,103,32,116,104,101,32,108,111,97,
- 100,101,114,32,97,110,100,32,116,104,101,32,102,105,108,101,
- 32,115,117,102,102,105,120,101,115,32,116,104,101,32,108,111,
- 97,100,101,114,10,32,32,32,32,32,32,32,32,114,101,99,
- 111,103,110,105,122,101,115,46,99,1,0,0,0,0,0,0,
- 0,0,0,0,0,2,0,0,0,3,0,0,0,51,0,0,
- 0,115,24,0,0,0,129,0,124,0,93,7,125,1,124,1,
- 136,0,102,2,86,0,1,0,113,2,100,0,83,0,114,70,
- 0,0,0,114,7,0,0,0,114,44,1,0,0,169,1,114,
- 165,0,0,0,114,7,0,0,0,114,8,0,0,0,114,9,
- 0,0,0,213,5,0,0,115,4,0,0,0,6,128,18,0,
- 114,10,0,0,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,98,0,
- 0,0,114,131,0,0,0,78,41,11,114,192,0,0,0,218,
- 8,95,108,111,97,100,101,114,115,114,66,0,0,0,114,87,
- 0,0,0,114,68,0,0,0,114,19,0,0,0,114,83,0,
- 0,0,218,11,95,112,97,116,104,95,109,116,105,109,101,218,
- 3,115,101,116,218,11,95,112,97,116,104,95,99,97,99,104,
- 101,218,19,95,114,101,108,97,120,101,100,95,112,97,116,104,
- 95,99,97,99,104,101,41,5,114,144,0,0,0,114,66,0,
- 0,0,218,14,108,111,97,100,101,114,95,100,101,116,97,105,
- 108,115,90,7,108,111,97,100,101,114,115,114,213,0,0,0,
- 114,7,0,0,0,114,96,1,0,0,114,8,0,0,0,114,
- 237,0,0,0,207,5,0,0,115,20,0,0,0,4,4,12,
- 1,26,1,6,1,10,2,10,1,18,1,6,1,8,1,12,
- 1,114,10,0,0,0,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,0,0,0,0,1,0,0,0,2,0,0,0,
- 67,0,0,0,115,10,0,0,0,100,1,124,0,95,0,100,
- 2,83,0,41,3,122,31,73,110,118,97,108,105,100,97,116,
- 101,32,116,104,101,32,100,105,114,101,99,116,111,114,121,32,
- 109,116,105,109,101,46,114,131,0,0,0,78,41,1,114,98,
- 1,0,0,114,22,1,0,0,114,7,0,0,0,114,7,0,
- 0,0,114,8,0,0,0,114,79,1,0,0,223,5,0,0,
- 114,82,0,0,0,114,10,0,0,0,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,0,0,0,0,3,0,0,0,4,0,0,0,67,0,0,
+ 0,0,0,0,0,0,0,0,0,6,0,0,0,7,0,0,
+ 0,115,112,0,0,0,103,0,125,3,124,2,68,0,93,16,
+ 92,2,137,0,125,4,124,3,160,0,135,0,102,1,100,1,
+ 100,2,132,8,124,4,68,0,131,1,161,1,1,0,113,4,
+ 124,3,124,0,95,1,124,1,112,27,100,3,124,0,95,2,
+ 116,3,124,0,106,2,131,1,115,43,116,4,116,5,160,6,
+ 161,0,124,0,106,2,131,2,124,0,95,2,100,4,124,0,
+ 95,7,116,8,131,0,124,0,95,9,116,8,131,0,124,0,
+ 95,10,100,5,83,0,41,6,122,154,73,110,105,116,105,97,
+ 108,105,122,101,32,119,105,116,104,32,116,104,101,32,112,97,
+ 116,104,32,116,111,32,115,101,97,114,99,104,32,111,110,32,
+ 97,110,100,32,97,32,118,97,114,105,97,98,108,101,32,110,
+ 117,109,98,101,114,32,111,102,10,32,32,32,32,32,32,32,
+ 32,50,45,116,117,112,108,101,115,32,99,111,110,116,97,105,
+ 110,105,110,103,32,116,104,101,32,108,111,97,100,101,114,32,
+ 97,110,100,32,116,104,101,32,102,105,108,101,32,115,117,102,
+ 102,105,120,101,115,32,116,104,101,32,108,111,97,100,101,114,
+ 10,32,32,32,32,32,32,32,32,114,101,99,111,103,110,105,
+ 122,101,115,46,99,1,0,0,0,0,0,0,0,0,0,0,
+ 0,3,0,0,0,51,0,0,0,115,24,0,0,0,129,0,
+ 124,0,93,7,125,1,124,1,136,0,102,2,86,0,1,0,
+ 113,2,100,0,83,0,114,70,0,0,0,114,7,0,0,0,
+ 114,44,1,0,0,169,1,114,165,0,0,0,114,7,0,0,
+ 0,114,8,0,0,0,114,9,0,0,0,214,5,0,0,115,
+ 4,0,0,0,6,128,18,0,114,10,0,0,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,98,0,0,0,114,131,0,0,0,78,
+ 41,11,114,192,0,0,0,218,8,95,108,111,97,100,101,114,
+ 115,114,66,0,0,0,114,87,0,0,0,114,68,0,0,0,
+ 114,19,0,0,0,114,83,0,0,0,218,11,95,112,97,116,
+ 104,95,109,116,105,109,101,218,3,115,101,116,218,11,95,112,
+ 97,116,104,95,99,97,99,104,101,218,19,95,114,101,108,97,
+ 120,101,100,95,112,97,116,104,95,99,97,99,104,101,41,5,
+ 114,144,0,0,0,114,66,0,0,0,218,14,108,111,97,100,
+ 101,114,95,100,101,116,97,105,108,115,90,7,108,111,97,100,
+ 101,114,115,114,213,0,0,0,114,7,0,0,0,114,96,1,
+ 0,0,114,8,0,0,0,114,237,0,0,0,208,5,0,0,
+ 115,20,0,0,0,4,4,12,1,26,1,6,1,10,2,10,
+ 1,18,1,6,1,8,1,12,1,114,10,0,0,0,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,0,0,0,0,
+ 2,0,0,0,67,0,0,0,115,10,0,0,0,100,1,124,
+ 0,95,0,100,2,83,0,41,3,122,31,73,110,118,97,108,
+ 105,100,97,116,101,32,116,104,101,32,100,105,114,101,99,116,
+ 111,114,121,32,109,116,105,109,101,46,114,131,0,0,0,78,
+ 41,1,114,98,1,0,0,114,22,1,0,0,114,7,0,0,
+ 0,114,7,0,0,0,114,8,0,0,0,114,79,1,0,0,
+ 224,5,0,0,114,82,0,0,0,114,10,0,0,0,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,0,0,0,0,4,0,0,0,67,0,0,
0,115,54,0,0,0,116,0,160,1,100,1,116,2,161,2,
1,0,124,0,160,3,124,1,161,1,125,2,124,2,100,2,
117,0,114,19,100,2,103,0,102,2,83,0,124,2,106,4,
@@ -2540,110 +2510,109 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = {
0,0,0,114,165,0,0,0,114,203,0,0,0,41,3,114,
144,0,0,0,114,164,0,0,0,114,211,0,0,0,114,7,
0,0,0,114,7,0,0,0,114,8,0,0,0,114,162,0,
- 0,0,229,5,0,0,115,14,0,0,0,6,7,2,2,4,
+ 0,0,230,5,0,0,115,14,0,0,0,6,7,2,2,4,
254,10,3,8,1,8,1,16,1,114,10,0,0,0,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,0,
- 0,0,0,7,0,0,0,6,0,0,0,67,0,0,0,115,
- 26,0,0,0,124,1,124,2,124,3,131,2,125,6,116,0,
- 124,2,124,3,124,6,124,4,100,1,141,4,83,0,41,2,
- 78,114,202,0,0,0,41,1,114,214,0,0,0,41,7,114,
- 144,0,0,0,114,212,0,0,0,114,164,0,0,0,114,66,
- 0,0,0,90,4,115,109,115,108,114,226,0,0,0,114,165,
- 0,0,0,114,7,0,0,0,114,7,0,0,0,114,8,0,
- 0,0,114,92,1,0,0,244,5,0,0,115,8,0,0,0,
- 10,1,8,1,2,1,6,255,114,10,0,0,0,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,0,0,0,
- 0,14,0,0,0,9,0,0,0,67,0,0,0,115,126,1,
- 0,0,100,1,125,3,124,1,160,0,100,2,161,1,100,3,
- 25,0,125,4,9,0,116,1,124,0,106,2,112,17,116,3,
- 160,4,161,0,131,1,106,5,125,5,110,12,35,0,4,0,
- 116,6,121,190,1,0,1,0,1,0,100,4,125,5,89,0,
- 110,1,37,0,124,5,124,0,106,7,107,3,114,45,124,0,
- 160,8,161,0,1,0,124,5,124,0,95,7,116,9,131,0,
- 114,56,124,0,106,10,125,6,124,4,160,11,161,0,125,7,
- 110,5,124,0,106,12,125,6,124,4,125,7,124,7,124,6,
- 118,0,114,108,116,13,124,0,106,2,124,4,131,2,125,8,
- 124,0,106,14,68,0,93,29,92,2,125,9,125,10,100,5,
- 124,9,23,0,125,11,116,13,124,8,124,11,131,2,125,12,
- 116,15,124,12,131,1,114,103,124,0,160,16,124,10,124,1,
- 124,12,124,8,103,1,124,2,161,5,2,0,1,0,83,0,
- 113,74,116,17,124,8,131,1,125,3,124,0,106,14,68,0,
- 93,55,92,2,125,9,125,10,9,0,116,13,124,0,106,2,
- 124,4,124,9,23,0,131,2,125,12,110,12,35,0,4,0,
- 116,18,121,189,1,0,1,0,1,0,89,0,1,0,100,6,
- 83,0,37,0,116,19,160,20,100,7,124,12,100,3,100,8,
- 166,3,1,0,124,7,124,9,23,0,124,6,118,0,114,166,
- 116,15,124,12,131,1,114,166,124,0,160,16,124,10,124,1,
- 124,12,100,6,124,2,161,5,2,0,1,0,83,0,113,111,
- 124,3,114,187,116,19,160,20,100,9,124,8,161,2,1,0,
- 116,19,160,21,124,1,100,6,161,2,125,13,124,8,103,1,
- 124,13,95,22,124,13,83,0,100,6,83,0,119,0,119,0,
- 41,10,122,111,84,114,121,32,116,111,32,102,105,110,100,32,
- 97,32,115,112,101,99,32,102,111,114,32,116,104,101,32,115,
- 112,101,99,105,102,105,101,100,32,109,111,100,117,108,101,46,
- 10,10,32,32,32,32,32,32,32,32,82,101,116,117,114,110,
- 115,32,116,104,101,32,109,97,116,99,104,105,110,103,32,115,
- 112,101,99,44,32,111,114,32,78,111,110,101,32,105,102,32,
- 110,111,116,32,102,111,117,110,100,46,10,32,32,32,32,32,
- 32,32,32,70,114,98,0,0,0,114,45,0,0,0,114,131,
- 0,0,0,114,237,0,0,0,78,122,9,116,114,121,105,110,
- 103,32,123,125,41,1,90,9,118,101,114,98,111,115,105,116,
- 121,122,25,112,111,115,115,105,98,108,101,32,110,97,109,101,
- 115,112,97,99,101,32,102,111,114,32,123,125,41,23,114,105,
- 0,0,0,114,76,0,0,0,114,66,0,0,0,114,19,0,
- 0,0,114,83,0,0,0,114,36,1,0,0,114,77,0,0,
- 0,114,98,1,0,0,218,11,95,102,105,108,108,95,99,97,
- 99,104,101,114,22,0,0,0,114,101,1,0,0,114,132,0,
- 0,0,114,100,1,0,0,114,68,0,0,0,114,97,1,0,
- 0,114,81,0,0,0,114,92,1,0,0,114,84,0,0,0,
- 114,112,0,0,0,114,160,0,0,0,114,174,0,0,0,114,
- 208,0,0,0,114,203,0,0,0,41,14,114,144,0,0,0,
- 114,164,0,0,0,114,226,0,0,0,90,12,105,115,95,110,
- 97,109,101,115,112,97,99,101,90,11,116,97,105,108,95,109,
- 111,100,117,108,101,114,194,0,0,0,90,5,99,97,99,104,
- 101,90,12,99,97,99,104,101,95,109,111,100,117,108,101,90,
- 9,98,97,115,101,95,112,97,116,104,114,45,1,0,0,114,
- 212,0,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,211,
- 0,0,0,114,7,0,0,0,114,7,0,0,0,114,8,0,
- 0,0,114,227,0,0,0,249,5,0,0,115,94,0,0,0,
- 4,5,14,1,2,1,22,1,2,128,12,1,8,1,2,128,
- 10,1,8,1,6,1,6,2,6,1,10,1,6,2,4,1,
- 8,2,12,1,14,1,8,1,10,1,8,1,24,1,2,255,
- 8,5,14,2,2,1,18,1,2,128,12,1,8,1,2,128,
- 16,1,12,1,8,1,10,1,4,1,8,255,2,128,4,2,
- 12,1,12,1,8,1,4,1,4,1,2,244,2,228,115,31,
- 0,0,0,138,10,21,0,149,9,32,7,193,52,8,65,61,
- 2,193,61,7,66,8,9,194,61,1,66,8,9,194,62,1,
- 32,7,122,20,70,105,108,101,70,105,110,100,101,114,46,102,
- 105,110,100,95,115,112,101,99,99,1,0,0,0,0,0,0,
- 0,0,0,0,0,9,0,0,0,10,0,0,0,67,0,0,
- 0,115,194,0,0,0,124,0,106,0,125,1,9,0,116,1,
- 160,2,124,1,112,11,116,1,160,3,161,0,161,1,125,2,
- 110,15,35,0,4,0,116,4,116,5,116,6,102,3,121,96,
- 1,0,1,0,1,0,103,0,125,2,89,0,110,1,37,0,
- 116,7,106,8,160,9,100,1,161,1,115,41,116,10,124,2,
- 131,1,124,0,95,11,110,37,116,10,131,0,125,3,124,2,
- 68,0,93,28,125,4,124,4,160,12,100,2,161,1,92,3,
- 125,5,125,6,125,7,124,6,114,67,100,3,160,13,124,5,
- 124,7,160,14,161,0,161,2,125,8,110,2,124,5,125,8,
- 124,3,160,15,124,8,161,1,1,0,113,46,124,3,124,0,
- 95,11,116,7,106,8,160,9,116,16,161,1,114,94,100,4,
- 100,5,132,0,124,2,68,0,131,1,124,0,95,17,100,6,
- 83,0,100,6,83,0,119,0,41,7,122,68,70,105,108,108,
- 32,116,104,101,32,99,97,99,104,101,32,111,102,32,112,111,
- 116,101,110,116,105,97,108,32,109,111,100,117,108,101,115,32,
- 97,110,100,32,112,97,99,107,97,103,101,115,32,102,111,114,
- 32,116,104,105,115,32,100,105,114,101,99,116,111,114,121,46,
- 114,15,0,0,0,114,98,0,0,0,114,89,0,0,0,99,
- 1,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,
+ 0,0,0,6,0,0,0,67,0,0,0,115,26,0,0,0,
+ 124,1,124,2,124,3,131,2,125,6,116,0,124,2,124,3,
+ 124,6,124,4,100,1,141,4,83,0,41,2,78,114,202,0,
+ 0,0,41,1,114,214,0,0,0,41,7,114,144,0,0,0,
+ 114,212,0,0,0,114,164,0,0,0,114,66,0,0,0,90,
+ 4,115,109,115,108,114,226,0,0,0,114,165,0,0,0,114,
+ 7,0,0,0,114,7,0,0,0,114,8,0,0,0,114,92,
+ 1,0,0,245,5,0,0,115,8,0,0,0,10,1,8,1,
+ 2,1,6,255,114,10,0,0,0,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,0,0,0,0,9,0,0,
+ 0,67,0,0,0,115,126,1,0,0,100,1,125,3,124,1,
+ 160,0,100,2,161,1,100,3,25,0,125,4,9,0,116,1,
+ 124,0,106,2,112,17,116,3,160,4,161,0,131,1,106,5,
+ 125,5,110,12,35,0,4,0,116,6,121,190,1,0,1,0,
+ 1,0,100,4,125,5,89,0,110,1,37,0,124,5,124,0,
+ 106,7,107,3,114,45,124,0,160,8,161,0,1,0,124,5,
+ 124,0,95,7,116,9,131,0,114,56,124,0,106,10,125,6,
+ 124,4,160,11,161,0,125,7,110,5,124,0,106,12,125,6,
+ 124,4,125,7,124,7,124,6,118,0,114,108,116,13,124,0,
+ 106,2,124,4,131,2,125,8,124,0,106,14,68,0,93,29,
+ 92,2,125,9,125,10,100,5,124,9,23,0,125,11,116,13,
+ 124,8,124,11,131,2,125,12,116,15,124,12,131,1,114,103,
+ 124,0,160,16,124,10,124,1,124,12,124,8,103,1,124,2,
+ 161,5,2,0,1,0,83,0,113,74,116,17,124,8,131,1,
+ 125,3,124,0,106,14,68,0,93,55,92,2,125,9,125,10,
+ 9,0,116,13,124,0,106,2,124,4,124,9,23,0,131,2,
+ 125,12,110,12,35,0,4,0,116,18,121,189,1,0,1,0,
+ 1,0,89,0,1,0,100,6,83,0,37,0,116,19,160,20,
+ 100,7,124,12,100,3,100,8,166,3,1,0,124,7,124,9,
+ 23,0,124,6,118,0,114,166,116,15,124,12,131,1,114,166,
+ 124,0,160,16,124,10,124,1,124,12,100,6,124,2,161,5,
+ 2,0,1,0,83,0,113,111,124,3,114,187,116,19,160,20,
+ 100,9,124,8,161,2,1,0,116,19,160,21,124,1,100,6,
+ 161,2,125,13,124,8,103,1,124,13,95,22,124,13,83,0,
+ 100,6,83,0,119,0,119,0,41,10,122,111,84,114,121,32,
+ 116,111,32,102,105,110,100,32,97,32,115,112,101,99,32,102,
+ 111,114,32,116,104,101,32,115,112,101,99,105,102,105,101,100,
+ 32,109,111,100,117,108,101,46,10,10,32,32,32,32,32,32,
+ 32,32,82,101,116,117,114,110,115,32,116,104,101,32,109,97,
+ 116,99,104,105,110,103,32,115,112,101,99,44,32,111,114,32,
+ 78,111,110,101,32,105,102,32,110,111,116,32,102,111,117,110,
+ 100,46,10,32,32,32,32,32,32,32,32,70,114,98,0,0,
+ 0,114,45,0,0,0,114,131,0,0,0,114,237,0,0,0,
+ 78,122,9,116,114,121,105,110,103,32,123,125,41,1,90,9,
+ 118,101,114,98,111,115,105,116,121,122,25,112,111,115,115,105,
+ 98,108,101,32,110,97,109,101,115,112,97,99,101,32,102,111,
+ 114,32,123,125,41,23,114,105,0,0,0,114,76,0,0,0,
+ 114,66,0,0,0,114,19,0,0,0,114,83,0,0,0,114,
+ 36,1,0,0,114,77,0,0,0,114,98,1,0,0,218,11,
+ 95,102,105,108,108,95,99,97,99,104,101,114,22,0,0,0,
+ 114,101,1,0,0,114,132,0,0,0,114,100,1,0,0,114,
+ 68,0,0,0,114,97,1,0,0,114,81,0,0,0,114,92,
+ 1,0,0,114,84,0,0,0,114,112,0,0,0,114,160,0,
+ 0,0,114,174,0,0,0,114,208,0,0,0,114,203,0,0,
+ 0,41,14,114,144,0,0,0,114,164,0,0,0,114,226,0,
+ 0,0,90,12,105,115,95,110,97,109,101,115,112,97,99,101,
+ 90,11,116,97,105,108,95,109,111,100,117,108,101,114,194,0,
+ 0,0,90,5,99,97,99,104,101,90,12,99,97,99,104,101,
+ 95,109,111,100,117,108,101,90,9,98,97,115,101,95,112,97,
+ 116,104,114,45,1,0,0,114,212,0,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,211,0,0,0,114,7,0,0,0,
+ 114,7,0,0,0,114,8,0,0,0,114,227,0,0,0,250,
+ 5,0,0,115,94,0,0,0,4,5,14,1,2,1,22,1,
+ 2,128,12,1,8,1,2,128,10,1,8,1,6,1,6,2,
+ 6,1,10,1,6,2,4,1,8,2,12,1,14,1,8,1,
+ 10,1,8,1,24,1,2,255,8,5,14,2,2,1,18,1,
+ 2,128,12,1,8,1,2,128,16,1,12,1,8,1,10,1,
+ 4,1,8,255,2,128,4,2,12,1,12,1,8,1,4,1,
+ 4,1,2,244,2,228,115,31,0,0,0,138,10,21,0,149,
+ 9,32,7,193,52,8,65,61,2,193,61,7,66,8,9,194,
+ 61,1,66,8,9,194,62,1,32,7,122,20,70,105,108,101,
+ 70,105,110,100,101,114,46,102,105,110,100,95,115,112,101,99,
+ 99,1,0,0,0,0,0,0,0,0,0,0,0,10,0,0,
+ 0,67,0,0,0,115,194,0,0,0,124,0,106,0,125,1,
+ 9,0,116,1,160,2,124,1,112,11,116,1,160,3,161,0,
+ 161,1,125,2,110,15,35,0,4,0,116,4,116,5,116,6,
+ 102,3,121,96,1,0,1,0,1,0,103,0,125,2,89,0,
+ 110,1,37,0,116,7,106,8,160,9,100,1,161,1,115,41,
+ 116,10,124,2,131,1,124,0,95,11,110,37,116,10,131,0,
+ 125,3,124,2,68,0,93,28,125,4,124,4,160,12,100,2,
+ 161,1,92,3,125,5,125,6,125,7,124,6,114,67,100,3,
+ 160,13,124,5,124,7,160,14,161,0,161,2,125,8,110,2,
+ 124,5,125,8,124,3,160,15,124,8,161,1,1,0,113,46,
+ 124,3,124,0,95,11,116,7,106,8,160,9,116,16,161,1,
+ 114,94,100,4,100,5,132,0,124,2,68,0,131,1,124,0,
+ 95,17,100,6,83,0,100,6,83,0,119,0,41,7,122,68,
+ 70,105,108,108,32,116,104,101,32,99,97,99,104,101,32,111,
+ 102,32,112,111,116,101,110,116,105,97,108,32,109,111,100,117,
+ 108,101,115,32,97,110,100,32,112,97,99,107,97,103,101,115,
+ 32,102,111,114,32,116,104,105,115,32,100,105,114,101,99,116,
+ 111,114,121,46,114,15,0,0,0,114,98,0,0,0,114,89,
+ 0,0,0,99,1,0,0,0,0,0,0,0,0,0,0,0,
4,0,0,0,83,0,0,0,115,20,0,0,0,104,0,124,
0,93,6,125,1,124,1,160,0,161,0,146,2,113,2,83,
0,114,7,0,0,0,41,1,114,132,0,0,0,41,2,114,
5,0,0,0,90,2,102,110,114,7,0,0,0,114,7,0,
- 0,0,114,8,0,0,0,114,14,0,0,0,73,6,0,0,
+ 0,0,114,8,0,0,0,114,14,0,0,0,74,6,0,0,
115,2,0,0,0,20,0,114,10,0,0,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,
@@ -2661,75 +2630,74 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = {
114,71,1,0,0,114,142,0,0,0,114,55,1,0,0,114,
45,1,0,0,90,8,110,101,119,95,110,97,109,101,114,7,
0,0,0,114,7,0,0,0,114,8,0,0,0,114,103,1,
- 0,0,44,6,0,0,115,42,0,0,0,6,2,2,1,20,
+ 0,0,45,6,0,0,115,42,0,0,0,6,2,2,1,20,
1,2,128,18,1,8,3,2,128,12,3,12,1,6,7,8,
1,16,1,4,1,18,1,4,2,12,1,6,1,12,1,20,
1,4,255,2,233,115,13,0,0,0,132,9,14,0,142,12,
28,7,193,32,1,28,7,122,22,70,105,108,101,70,105,110,
100,101,114,46,95,102,105,108,108,95,99,97,99,104,101,99,
1,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,
- 3,0,0,0,7,0,0,0,115,18,0,0,0,135,0,135,
- 1,102,2,100,1,100,2,132,8,125,2,124,2,83,0,41,
- 4,97,20,1,0,0,65,32,99,108,97,115,115,32,109,101,
- 116,104,111,100,32,119,104,105,99,104,32,114,101,116,117,114,
- 110,115,32,97,32,99,108,111,115,117,114,101,32,116,111,32,
- 117,115,101,32,111,110,32,115,121,115,46,112,97,116,104,95,
- 104,111,111,107,10,32,32,32,32,32,32,32,32,119,104,105,
- 99,104,32,119,105,108,108,32,114,101,116,117,114,110,32,97,
- 110,32,105,110,115,116,97,110,99,101,32,117,115,105,110,103,
- 32,116,104,101,32,115,112,101,99,105,102,105,101,100,32,108,
- 111,97,100,101,114,115,32,97,110,100,32,116,104,101,32,112,
- 97,116,104,10,32,32,32,32,32,32,32,32,99,97,108,108,
- 101,100,32,111,110,32,116,104,101,32,99,108,111,115,117,114,
- 101,46,10,10,32,32,32,32,32,32,32,32,73,102,32,116,
- 104,101,32,112,97,116,104,32,99,97,108,108,101,100,32,111,
- 110,32,116,104,101,32,99,108,111,115,117,114,101,32,105,115,
- 32,110,111,116,32,97,32,100,105,114,101,99,116,111,114,121,
- 44,32,73,109,112,111,114,116,69,114,114,111,114,32,105,115,
- 10,32,32,32,32,32,32,32,32,114,97,105,115,101,100,46,
- 10,10,32,32,32,32,32,32,32,32,99,1,0,0,0,0,
- 0,0,0,0,0,0,0,1,0,0,0,4,0,0,0,19,
- 0,0,0,115,36,0,0,0,116,0,124,0,131,1,115,10,
- 116,1,100,1,124,0,100,2,141,2,130,1,136,0,124,0,
- 103,1,136,1,162,1,82,0,142,0,83,0,41,4,122,45,
- 80,97,116,104,32,104,111,111,107,32,102,111,114,32,105,109,
- 112,111,114,116,108,105,98,46,109,97,99,104,105,110,101,114,
- 121,46,70,105,108,101,70,105,110,100,101,114,46,122,30,111,
- 110,108,121,32,100,105,114,101,99,116,111,114,105,101,115,32,
- 97,114,101,32,115,117,112,112,111,114,116,101,100,114,72,0,
- 0,0,78,41,2,114,84,0,0,0,114,143,0,0,0,114,
- 72,0,0,0,169,2,114,222,0,0,0,114,102,1,0,0,
- 114,7,0,0,0,114,8,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,85,6,0,0,115,6,0,0,0,8,2,12,
- 1,16,1,114,10,0,0,0,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,116,104,95,104,111,111,
- 107,95,102,111,114,95,70,105,108,101,70,105,110,100,101,114,
- 78,114,7,0,0,0,41,3,114,222,0,0,0,114,102,1,
- 0,0,114,108,1,0,0,114,7,0,0,0,114,107,1,0,
- 0,114,8,0,0,0,218,9,112,97,116,104,95,104,111,111,
- 107,75,6,0,0,115,4,0,0,0,14,10,4,6,114,10,
- 0,0,0,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,0,0,0,0,1,0,0,0,3,0,0,0,67,0,
- 0,0,114,68,1,0,0,41,2,78,122,16,70,105,108,101,
- 70,105,110,100,101,114,40,123,33,114,125,41,41,2,114,90,
- 0,0,0,114,66,0,0,0,114,22,1,0,0,114,7,0,
- 0,0,114,7,0,0,0,114,8,0,0,0,114,69,1,0,
- 0,93,6,0,0,114,62,1,0,0,114,10,0,0,0,122,
- 19,70,105,108,101,70,105,110,100,101,114,46,95,95,114,101,
- 112,114,95,95,114,70,0,0,0,41,15,114,151,0,0,0,
- 114,150,0,0,0,114,152,0,0,0,114,153,0,0,0,114,
- 237,0,0,0,114,79,1,0,0,114,168,0,0,0,114,230,
- 0,0,0,114,162,0,0,0,114,92,1,0,0,114,227,0,
- 0,0,114,103,1,0,0,114,235,0,0,0,114,109,1,0,
- 0,114,69,1,0,0,114,7,0,0,0,114,7,0,0,0,
- 114,7,0,0,0,114,8,0,0,0,114,95,1,0,0,198,
- 5,0,0,115,24,0,0,0,8,0,4,2,8,7,8,16,
- 4,4,8,2,8,15,10,5,8,51,2,31,10,1,12,17,
- 114,10,0,0,0,114,95,1,0,0,99,4,0,0,0,0,
- 0,0,0,0,0,0,0,6,0,0,0,8,0,0,0,67,
+ 7,0,0,0,115,18,0,0,0,135,0,135,1,102,2,100,
+ 1,100,2,132,8,125,2,124,2,83,0,41,4,97,20,1,
+ 0,0,65,32,99,108,97,115,115,32,109,101,116,104,111,100,
+ 32,119,104,105,99,104,32,114,101,116,117,114,110,115,32,97,
+ 32,99,108,111,115,117,114,101,32,116,111,32,117,115,101,32,
+ 111,110,32,115,121,115,46,112,97,116,104,95,104,111,111,107,
+ 10,32,32,32,32,32,32,32,32,119,104,105,99,104,32,119,
+ 105,108,108,32,114,101,116,117,114,110,32,97,110,32,105,110,
+ 115,116,97,110,99,101,32,117,115,105,110,103,32,116,104,101,
+ 32,115,112,101,99,105,102,105,101,100,32,108,111,97,100,101,
+ 114,115,32,97,110,100,32,116,104,101,32,112,97,116,104,10,
+ 32,32,32,32,32,32,32,32,99,97,108,108,101,100,32,111,
+ 110,32,116,104,101,32,99,108,111,115,117,114,101,46,10,10,
+ 32,32,32,32,32,32,32,32,73,102,32,116,104,101,32,112,
+ 97,116,104,32,99,97,108,108,101,100,32,111,110,32,116,104,
+ 101,32,99,108,111,115,117,114,101,32,105,115,32,110,111,116,
+ 32,97,32,100,105,114,101,99,116,111,114,121,44,32,73,109,
+ 112,111,114,116,69,114,114,111,114,32,105,115,10,32,32,32,
+ 32,32,32,32,32,114,97,105,115,101,100,46,10,10,32,32,
+ 32,32,32,32,32,32,99,1,0,0,0,0,0,0,0,0,
+ 0,0,0,4,0,0,0,19,0,0,0,115,36,0,0,0,
+ 116,0,124,0,131,1,115,10,116,1,100,1,124,0,100,2,
+ 141,2,130,1,136,0,124,0,103,1,136,1,162,1,82,0,
+ 142,0,83,0,41,4,122,45,80,97,116,104,32,104,111,111,
+ 107,32,102,111,114,32,105,109,112,111,114,116,108,105,98,46,
+ 109,97,99,104,105,110,101,114,121,46,70,105,108,101,70,105,
+ 110,100,101,114,46,122,30,111,110,108,121,32,100,105,114,101,
+ 99,116,111,114,105,101,115,32,97,114,101,32,115,117,112,112,
+ 111,114,116,101,100,114,72,0,0,0,78,41,2,114,84,0,
+ 0,0,114,143,0,0,0,114,72,0,0,0,169,2,114,222,
+ 0,0,0,114,102,1,0,0,114,7,0,0,0,114,8,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,86,6,0,0,
+ 115,6,0,0,0,8,2,12,1,16,1,114,10,0,0,0,
+ 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,116,104,95,104,111,111,107,95,102,111,114,95,70,105,
+ 108,101,70,105,110,100,101,114,78,114,7,0,0,0,41,3,
+ 114,222,0,0,0,114,102,1,0,0,114,108,1,0,0,114,
+ 7,0,0,0,114,107,1,0,0,114,8,0,0,0,218,9,
+ 112,97,116,104,95,104,111,111,107,76,6,0,0,115,4,0,
+ 0,0,14,10,4,6,114,10,0,0,0,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,0,0,0,0,3,0,
+ 0,0,67,0,0,0,114,68,1,0,0,41,2,78,122,16,
+ 70,105,108,101,70,105,110,100,101,114,40,123,33,114,125,41,
+ 41,2,114,90,0,0,0,114,66,0,0,0,114,22,1,0,
+ 0,114,7,0,0,0,114,7,0,0,0,114,8,0,0,0,
+ 114,69,1,0,0,94,6,0,0,114,62,1,0,0,114,10,
+ 0,0,0,122,19,70,105,108,101,70,105,110,100,101,114,46,
+ 95,95,114,101,112,114,95,95,114,70,0,0,0,41,15,114,
+ 151,0,0,0,114,150,0,0,0,114,152,0,0,0,114,153,
+ 0,0,0,114,237,0,0,0,114,79,1,0,0,114,168,0,
+ 0,0,114,230,0,0,0,114,162,0,0,0,114,92,1,0,
+ 0,114,227,0,0,0,114,103,1,0,0,114,235,0,0,0,
+ 114,109,1,0,0,114,69,1,0,0,114,7,0,0,0,114,
+ 7,0,0,0,114,7,0,0,0,114,8,0,0,0,114,95,
+ 1,0,0,199,5,0,0,115,24,0,0,0,8,0,4,2,
+ 8,7,8,16,4,4,8,2,8,15,10,5,8,51,2,31,
+ 10,1,12,17,114,10,0,0,0,114,95,1,0,0,99,4,
+ 0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,67,
0,0,0,115,146,0,0,0,124,0,160,0,100,1,161,1,
125,4,124,0,160,0,100,2,161,1,125,5,124,4,115,33,
124,5,114,18,124,5,106,1,125,4,110,15,124,2,124,3,
@@ -2749,102 +2717,102 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = {
8,112,97,116,104,110,97,109,101,90,9,99,112,97,116,104,
110,97,109,101,114,165,0,0,0,114,211,0,0,0,114,7,
0,0,0,114,7,0,0,0,114,8,0,0,0,218,14,95,
- 102,105,120,95,117,112,95,109,111,100,117,108,101,99,6,0,
+ 102,105,120,95,117,112,95,109,111,100,117,108,101,100,6,0,
0,115,40,0,0,0,10,2,10,1,4,1,4,1,8,1,
8,1,12,1,10,2,4,1,14,1,2,1,8,1,8,1,
8,1,12,1,2,128,12,1,6,2,2,128,2,254,115,15,
0,0,0,171,16,61,0,189,7,65,7,7,193,8,1,65,
7,7,114,114,1,0,0,99,0,0,0,0,0,0,0,0,
- 0,0,0,0,3,0,0,0,3,0,0,0,67,0,0,0,
- 115,38,0,0,0,116,0,116,1,160,2,161,0,102,2,125,
- 0,116,3,116,4,102,2,125,1,116,5,116,6,102,2,125,
- 2,124,0,124,1,124,2,103,3,83,0,41,2,122,95,82,
- 101,116,117,114,110,115,32,97,32,108,105,115,116,32,111,102,
- 32,102,105,108,101,45,98,97,115,101,100,32,109,111,100,117,
- 108,101,32,108,111,97,100,101,114,115,46,10,10,32,32,32,
- 32,69,97,99,104,32,105,116,101,109,32,105,115,32,97,32,
- 116,117,112,108,101,32,40,108,111,97,100,101,114,44,32,115,
- 117,102,102,105,120,101,115,41,46,10,32,32,32,32,78,41,
- 7,114,31,1,0,0,114,188,0,0,0,218,18,101,120,116,
- 101,110,115,105,111,110,95,115,117,102,102,105,120,101,115,114,
- 35,1,0,0,114,128,0,0,0,114,42,1,0,0,114,114,
- 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,7,0,0,0,114,7,0,0,0,114,8,0,
- 0,0,114,209,0,0,0,122,6,0,0,115,8,0,0,0,
- 12,5,8,1,8,1,10,1,114,10,0,0,0,114,209,0,
- 0,0,99,1,0,0,0,0,0,0,0,0,0,0,0,1,
- 0,0,0,1,0,0,0,67,0,0,0,115,8,0,0,0,
- 124,0,97,0,100,0,83,0,114,70,0,0,0,41,1,114,
- 160,0,0,0,41,1,218,17,95,98,111,111,116,115,116,114,
- 97,112,95,109,111,100,117,108,101,114,7,0,0,0,114,7,
- 0,0,0,114,8,0,0,0,218,21,95,115,101,116,95,98,
- 111,111,116,115,116,114,97,112,95,109,111,100,117,108,101,133,
- 6,0,0,115,2,0,0,0,8,2,114,10,0,0,0,114,
- 117,1,0,0,99,1,0,0,0,0,0,0,0,0,0,0,
- 0,2,0,0,0,4,0,0,0,67,0,0,0,115,50,0,
- 0,0,116,0,124,0,131,1,1,0,116,1,131,0,125,1,
- 116,2,106,3,160,4,116,5,106,6,124,1,142,0,103,1,
- 161,1,1,0,116,2,106,7,160,8,116,9,161,1,1,0,
- 100,1,83,0,41,2,122,41,73,110,115,116,97,108,108,32,
- 116,104,101,32,112,97,116,104,45,98,97,115,101,100,32,105,
- 109,112,111,114,116,32,99,111,109,112,111,110,101,110,116,115,
- 46,78,41,10,114,117,1,0,0,114,209,0,0,0,114,16,
- 0,0,0,114,84,1,0,0,114,192,0,0,0,114,95,1,
- 0,0,114,109,1,0,0,218,9,109,101,116,97,95,112,97,
- 116,104,114,62,0,0,0,114,78,1,0,0,41,2,114,116,
- 1,0,0,90,17,115,117,112,112,111,114,116,101,100,95,108,
- 111,97,100,101,114,115,114,7,0,0,0,114,7,0,0,0,
- 114,8,0,0,0,218,8,95,105,110,115,116,97,108,108,138,
- 6,0,0,115,8,0,0,0,8,2,6,1,20,1,16,1,
- 114,10,0,0,0,114,119,1,0,0,41,1,114,88,0,0,
- 0,114,70,0,0,0,41,3,78,78,78,41,2,114,0,0,
- 0,0,114,0,0,0,0,41,1,84,41,85,114,153,0,0,
- 0,114,160,0,0,0,114,188,0,0,0,114,92,0,0,0,
- 114,16,0,0,0,114,100,0,0,0,114,185,0,0,0,114,
- 26,0,0,0,114,232,0,0,0,90,2,110,116,114,19,0,
- 0,0,114,216,0,0,0,90,5,112,111,115,105,120,114,51,
- 0,0,0,218,3,97,108,108,114,60,0,0,0,114,137,0,
- 0,0,114,58,0,0,0,114,63,0,0,0,90,20,95,112,
- 97,116,104,115,101,112,115,95,119,105,116,104,95,99,111,108,
- 111,110,114,29,0,0,0,90,37,95,67,65,83,69,95,73,
- 78,83,69,78,83,73,84,73,86,69,95,80,76,65,84,70,
- 79,82,77,83,95,66,89,84,69,83,95,75,69,89,114,28,
- 0,0,0,114,30,0,0,0,114,22,0,0,0,114,37,0,
- 0,0,114,43,0,0,0,114,46,0,0,0,114,68,0,0,
- 0,114,75,0,0,0,114,76,0,0,0,114,80,0,0,0,
- 114,81,0,0,0,114,84,0,0,0,114,87,0,0,0,114,
- 96,0,0,0,218,4,116,121,112,101,218,8,95,95,99,111,
- 100,101,95,95,114,187,0,0,0,114,35,0,0,0,114,173,
- 0,0,0,114,34,0,0,0,114,40,0,0,0,114,9,1,
- 0,0,114,117,0,0,0,114,113,0,0,0,114,128,0,0,
- 0,114,62,0,0,0,114,115,1,0,0,114,233,0,0,0,
- 114,114,0,0,0,90,23,68,69,66,85,71,95,66,89,84,
- 69,67,79,68,69,95,83,85,70,70,73,88,69,83,90,27,
- 79,80,84,73,77,73,90,69,68,95,66,89,84,69,67,79,
- 68,69,95,83,85,70,70,73,88,69,83,114,122,0,0,0,
- 114,129,0,0,0,114,136,0,0,0,114,138,0,0,0,114,
- 140,0,0,0,114,161,0,0,0,114,168,0,0,0,114,177,
- 0,0,0,114,181,0,0,0,114,183,0,0,0,114,190,0,
- 0,0,114,195,0,0,0,114,196,0,0,0,114,201,0,0,
- 0,218,6,111,98,106,101,99,116,114,210,0,0,0,114,214,
- 0,0,0,114,215,0,0,0,114,236,0,0,0,114,250,0,
- 0,0,114,12,1,0,0,114,35,1,0,0,114,42,1,0,
- 0,114,31,1,0,0,114,48,1,0,0,114,74,1,0,0,
- 114,78,1,0,0,114,95,1,0,0,114,114,1,0,0,114,
- 209,0,0,0,114,117,1,0,0,114,119,1,0,0,114,7,
- 0,0,0,114,7,0,0,0,114,7,0,0,0,114,8,0,
- 0,0,218,8,60,109,111,100,117,108,101,62,1,0,0,0,
- 115,180,0,0,0,4,0,4,22,8,3,8,1,8,1,8,
- 1,8,1,10,3,4,1,8,1,10,1,8,2,4,3,10,
- 1,6,2,22,2,8,1,8,1,10,1,14,1,4,4,4,
- 1,2,1,2,1,4,255,8,4,6,16,8,3,8,5,8,
- 5,4,6,10,1,8,30,8,6,8,8,8,10,8,9,8,
- 5,4,7,10,1,8,8,10,5,10,22,0,127,16,32,12,
- 1,4,2,4,1,6,2,4,1,10,1,8,2,6,2,8,
- 2,16,2,8,71,8,40,8,19,8,12,8,12,8,31,8,
- 20,8,33,8,28,10,24,10,13,10,10,8,11,6,14,4,
- 3,2,1,12,255,14,73,14,67,16,30,0,127,14,17,18,
- 50,18,45,18,25,14,53,14,63,14,49,0,127,14,29,0,
- 127,10,30,8,23,8,11,12,5,114,10,0,0,0,
+ 0,0,0,0,3,0,0,0,67,0,0,0,115,38,0,0,
+ 0,116,0,116,1,160,2,161,0,102,2,125,0,116,3,116,
+ 4,102,2,125,1,116,5,116,6,102,2,125,2,124,0,124,
+ 1,124,2,103,3,83,0,41,2,122,95,82,101,116,117,114,
+ 110,115,32,97,32,108,105,115,116,32,111,102,32,102,105,108,
+ 101,45,98,97,115,101,100,32,109,111,100,117,108,101,32,108,
+ 111,97,100,101,114,115,46,10,10,32,32,32,32,69,97,99,
+ 104,32,105,116,101,109,32,105,115,32,97,32,116,117,112,108,
+ 101,32,40,108,111,97,100,101,114,44,32,115,117,102,102,105,
+ 120,101,115,41,46,10,32,32,32,32,78,41,7,114,31,1,
+ 0,0,114,188,0,0,0,218,18,101,120,116,101,110,115,105,
+ 111,110,95,115,117,102,102,105,120,101,115,114,35,1,0,0,
+ 114,128,0,0,0,114,42,1,0,0,114,114,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,
+ 7,0,0,0,114,7,0,0,0,114,8,0,0,0,114,209,
+ 0,0,0,123,6,0,0,115,8,0,0,0,12,5,8,1,
+ 8,1,10,1,114,10,0,0,0,114,209,0,0,0,99,1,
+ 0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,67,
+ 0,0,0,115,8,0,0,0,124,0,97,0,100,0,83,0,
+ 114,70,0,0,0,41,1,114,160,0,0,0,41,1,218,17,
+ 95,98,111,111,116,115,116,114,97,112,95,109,111,100,117,108,
+ 101,114,7,0,0,0,114,7,0,0,0,114,8,0,0,0,
+ 218,21,95,115,101,116,95,98,111,111,116,115,116,114,97,112,
+ 95,109,111,100,117,108,101,134,6,0,0,115,2,0,0,0,
+ 8,2,114,10,0,0,0,114,117,1,0,0,99,1,0,0,
+ 0,0,0,0,0,0,0,0,0,4,0,0,0,67,0,0,
+ 0,115,50,0,0,0,116,0,124,0,131,1,1,0,116,1,
+ 131,0,125,1,116,2,106,3,160,4,116,5,106,6,124,1,
+ 142,0,103,1,161,1,1,0,116,2,106,7,160,8,116,9,
+ 161,1,1,0,100,1,83,0,41,2,122,41,73,110,115,116,
+ 97,108,108,32,116,104,101,32,112,97,116,104,45,98,97,115,
+ 101,100,32,105,109,112,111,114,116,32,99,111,109,112,111,110,
+ 101,110,116,115,46,78,41,10,114,117,1,0,0,114,209,0,
+ 0,0,114,16,0,0,0,114,84,1,0,0,114,192,0,0,
+ 0,114,95,1,0,0,114,109,1,0,0,218,9,109,101,116,
+ 97,95,112,97,116,104,114,62,0,0,0,114,78,1,0,0,
+ 41,2,114,116,1,0,0,90,17,115,117,112,112,111,114,116,
+ 101,100,95,108,111,97,100,101,114,115,114,7,0,0,0,114,
+ 7,0,0,0,114,8,0,0,0,218,8,95,105,110,115,116,
+ 97,108,108,139,6,0,0,115,8,0,0,0,8,2,6,1,
+ 20,1,16,1,114,10,0,0,0,114,119,1,0,0,41,1,
+ 114,88,0,0,0,114,70,0,0,0,41,3,78,78,78,41,
+ 2,114,0,0,0,0,114,0,0,0,0,41,1,84,41,85,
+ 114,153,0,0,0,114,160,0,0,0,114,188,0,0,0,114,
+ 92,0,0,0,114,16,0,0,0,114,100,0,0,0,114,185,
+ 0,0,0,114,26,0,0,0,114,232,0,0,0,90,2,110,
+ 116,114,19,0,0,0,114,216,0,0,0,90,5,112,111,115,
+ 105,120,114,51,0,0,0,218,3,97,108,108,114,60,0,0,
+ 0,114,137,0,0,0,114,58,0,0,0,114,63,0,0,0,
+ 90,20,95,112,97,116,104,115,101,112,115,95,119,105,116,104,
+ 95,99,111,108,111,110,114,29,0,0,0,90,37,95,67,65,
+ 83,69,95,73,78,83,69,78,83,73,84,73,86,69,95,80,
+ 76,65,84,70,79,82,77,83,95,66,89,84,69,83,95,75,
+ 69,89,114,28,0,0,0,114,30,0,0,0,114,22,0,0,
+ 0,114,37,0,0,0,114,43,0,0,0,114,46,0,0,0,
+ 114,68,0,0,0,114,75,0,0,0,114,76,0,0,0,114,
+ 80,0,0,0,114,81,0,0,0,114,84,0,0,0,114,87,
+ 0,0,0,114,96,0,0,0,218,4,116,121,112,101,218,8,
+ 95,95,99,111,100,101,95,95,114,187,0,0,0,114,35,0,
+ 0,0,114,173,0,0,0,114,34,0,0,0,114,40,0,0,
+ 0,114,9,1,0,0,114,117,0,0,0,114,113,0,0,0,
+ 114,128,0,0,0,114,62,0,0,0,114,115,1,0,0,114,
+ 233,0,0,0,114,114,0,0,0,90,23,68,69,66,85,71,
+ 95,66,89,84,69,67,79,68,69,95,83,85,70,70,73,88,
+ 69,83,90,27,79,80,84,73,77,73,90,69,68,95,66,89,
+ 84,69,67,79,68,69,95,83,85,70,70,73,88,69,83,114,
+ 122,0,0,0,114,129,0,0,0,114,136,0,0,0,114,138,
+ 0,0,0,114,140,0,0,0,114,161,0,0,0,114,168,0,
+ 0,0,114,177,0,0,0,114,181,0,0,0,114,183,0,0,
+ 0,114,190,0,0,0,114,195,0,0,0,114,196,0,0,0,
+ 114,201,0,0,0,218,6,111,98,106,101,99,116,114,210,0,
+ 0,0,114,214,0,0,0,114,215,0,0,0,114,236,0,0,
+ 0,114,250,0,0,0,114,12,1,0,0,114,35,1,0,0,
+ 114,42,1,0,0,114,31,1,0,0,114,48,1,0,0,114,
+ 74,1,0,0,114,78,1,0,0,114,95,1,0,0,114,114,
+ 1,0,0,114,209,0,0,0,114,117,1,0,0,114,119,1,
+ 0,0,114,7,0,0,0,114,7,0,0,0,114,7,0,0,
+ 0,114,8,0,0,0,218,8,60,109,111,100,117,108,101,62,
+ 1,0,0,0,115,180,0,0,0,4,0,4,22,8,3,8,
+ 1,8,1,8,1,8,1,10,3,4,1,8,1,10,1,8,
+ 2,4,3,10,1,6,2,22,2,8,1,8,1,10,1,14,
+ 1,4,4,4,1,2,1,2,1,4,255,8,4,6,16,8,
+ 3,8,5,8,5,4,6,10,1,8,30,8,6,8,8,8,
+ 10,8,9,8,5,4,7,10,1,8,8,10,5,10,22,0,
+ 127,16,33,12,1,4,2,4,1,6,2,4,1,10,1,8,
+ 2,6,2,8,2,16,2,8,71,8,40,8,19,8,12,8,
+ 12,8,31,8,20,8,33,8,28,10,24,10,13,10,10,8,
+ 11,6,14,4,3,2,1,12,255,14,73,14,67,16,30,0,
+ 127,14,17,18,50,18,45,18,25,14,53,14,63,14,49,0,
+ 127,14,29,0,127,10,30,8,23,8,11,12,5,114,10,0,
+ 0,0,
};
diff --git a/Python/importlib_zipimport.h b/Python/importlib_zipimport.h
index e67e6df9efb475..988d938f10b861 100644
--- a/Python/importlib_zipimport.h
+++ b/Python/importlib_zipimport.h
@@ -1,124 +1,123 @@
/* Auto-generated by Programs/_freeze_importlib.c */
const unsigned char _Py_M__zipimport[] = {
- 99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,4,0,0,0,64,0,0,0,115,80,1,0,0,100,0,
- 90,0,100,1,100,2,108,1,90,2,100,1,100,3,108,1,
- 109,3,90,3,109,4,90,4,1,0,100,1,100,2,108,5,
- 90,6,100,1,100,2,108,7,90,7,100,1,100,2,108,8,
- 90,8,100,1,100,2,108,9,90,9,100,1,100,2,108,10,
- 90,10,100,1,100,2,108,11,90,11,100,1,100,2,108,12,
- 90,12,100,4,100,5,103,2,90,13,101,2,106,14,90,14,
- 101,2,106,15,100,6,100,2,133,2,25,0,90,16,71,0,
- 100,7,100,4,132,0,100,4,101,17,131,3,90,18,105,0,
- 90,19,101,20,101,10,131,1,90,21,100,8,90,22,100,9,
- 90,23,100,10,90,24,71,0,100,11,100,5,132,0,100,5,
- 101,2,106,25,131,3,90,26,101,14,100,12,23,0,100,13,
- 100,13,102,3,101,14,100,14,23,0,100,15,100,13,102,3,
- 100,16,100,17,102,4,90,27,100,18,100,19,132,0,90,28,
- 100,20,100,21,132,0,90,29,100,22,100,23,132,0,90,30,
- 100,24,100,25,132,0,90,31,100,26,90,32,100,15,97,33,
- 100,27,100,28,132,0,90,34,100,29,100,30,132,0,90,35,
- 100,31,100,32,132,0,90,36,100,33,100,34,132,0,90,37,
- 101,20,101,37,106,38,131,1,90,39,100,35,100,36,132,0,
- 90,40,100,37,100,38,132,0,90,41,100,39,100,40,132,0,
- 90,42,100,41,100,42,132,0,90,43,100,43,100,44,132,0,
- 90,44,100,45,100,46,132,0,90,45,100,2,83,0,41,47,
- 97,80,2,0,0,122,105,112,105,109,112,111,114,116,32,112,
- 114,111,118,105,100,101,115,32,115,117,112,112,111,114,116,32,
- 102,111,114,32,105,109,112,111,114,116,105,110,103,32,80,121,
- 116,104,111,110,32,109,111,100,117,108,101,115,32,102,114,111,
- 109,32,90,105,112,32,97,114,99,104,105,118,101,115,46,10,
- 10,84,104,105,115,32,109,111,100,117,108,101,32,101,120,112,
- 111,114,116,115,32,116,104,114,101,101,32,111,98,106,101,99,
- 116,115,58,10,45,32,122,105,112,105,109,112,111,114,116,101,
- 114,58,32,97,32,99,108,97,115,115,59,32,105,116,115,32,
- 99,111,110,115,116,114,117,99,116,111,114,32,116,97,107,101,
- 115,32,97,32,112,97,116,104,32,116,111,32,97,32,90,105,
- 112,32,97,114,99,104,105,118,101,46,10,45,32,90,105,112,
- 73,109,112,111,114,116,69,114,114,111,114,58,32,101,120,99,
- 101,112,116,105,111,110,32,114,97,105,115,101,100,32,98,121,
- 32,122,105,112,105,109,112,111,114,116,101,114,32,111,98,106,
- 101,99,116,115,46,32,73,116,39,115,32,97,10,32,32,115,
- 117,98,99,108,97,115,115,32,111,102,32,73,109,112,111,114,
- 116,69,114,114,111,114,44,32,115,111,32,105,116,32,99,97,
- 110,32,98,101,32,99,97,117,103,104,116,32,97,115,32,73,
- 109,112,111,114,116,69,114,114,111,114,44,32,116,111,111,46,
- 10,45,32,95,122,105,112,95,100,105,114,101,99,116,111,114,
- 121,95,99,97,99,104,101,58,32,97,32,100,105,99,116,44,
- 32,109,97,112,112,105,110,103,32,97,114,99,104,105,118,101,
- 32,112,97,116,104,115,32,116,111,32,122,105,112,32,100,105,
- 114,101,99,116,111,114,121,10,32,32,105,110,102,111,32,100,
- 105,99,116,115,44,32,97,115,32,117,115,101,100,32,105,110,
- 32,122,105,112,105,109,112,111,114,116,101,114,46,95,102,105,
- 108,101,115,46,10,10,73,116,32,105,115,32,117,115,117,97,
- 108,108,121,32,110,111,116,32,110,101,101,100,101,100,32,116,
- 111,32,117,115,101,32,116,104,101,32,122,105,112,105,109,112,
- 111,114,116,32,109,111,100,117,108,101,32,101,120,112,108,105,
- 99,105,116,108,121,59,32,105,116,32,105,115,10,117,115,101,
- 100,32,98,121,32,116,104,101,32,98,117,105,108,116,105,110,
- 32,105,109,112,111,114,116,32,109,101,99,104,97,110,105,115,
- 109,32,102,111,114,32,115,121,115,46,112,97,116,104,32,105,
- 116,101,109,115,32,116,104,97,116,32,97,114,101,32,112,97,
- 116,104,115,10,116,111,32,90,105,112,32,97,114,99,104,105,
- 118,101,115,46,10,233,0,0,0,0,78,41,2,218,14,95,
- 117,110,112,97,99,107,95,117,105,110,116,49,54,218,14,95,
- 117,110,112,97,99,107,95,117,105,110,116,51,50,218,14,90,
- 105,112,73,109,112,111,114,116,69,114,114,111,114,218,11,122,
- 105,112,105,109,112,111,114,116,101,114,233,1,0,0,0,99,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 1,0,0,0,64,0,0,0,115,12,0,0,0,101,0,90,
- 1,100,0,90,2,100,1,83,0,41,2,114,3,0,0,0,
- 78,41,3,218,8,95,95,110,97,109,101,95,95,218,10,95,
- 95,109,111,100,117,108,101,95,95,218,12,95,95,113,117,97,
- 108,110,97,109,101,95,95,169,0,114,9,0,0,0,114,9,
- 0,0,0,250,18,60,102,114,111,122,101,110,32,122,105,112,
- 105,109,112,111,114,116,62,114,3,0,0,0,34,0,0,0,
- 115,4,0,0,0,8,0,4,1,243,0,0,0,0,233,22,
- 0,0,0,115,4,0,0,0,80,75,5,6,105,255,255,0,
- 0,99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,3,0,0,0,64,0,0,0,115,126,0,0,0,101,
- 0,90,1,100,0,90,2,100,1,90,3,100,2,100,3,132,
- 0,90,4,100,29,100,5,100,6,132,1,90,5,100,29,100,
- 7,100,8,132,1,90,6,100,29,100,9,100,10,132,1,90,
- 7,100,11,100,12,132,0,90,8,100,13,100,14,132,0,90,
- 9,100,15,100,16,132,0,90,10,100,17,100,18,132,0,90,
- 11,100,19,100,20,132,0,90,12,100,21,100,22,132,0,90,
- 13,100,23,100,24,132,0,90,14,100,25,100,26,132,0,90,
- 15,100,27,100,28,132,0,90,16,100,4,83,0,41,30,114,
- 4,0,0,0,97,255,1,0,0,122,105,112,105,109,112,111,
- 114,116,101,114,40,97,114,99,104,105,118,101,112,97,116,104,
- 41,32,45,62,32,122,105,112,105,109,112,111,114,116,101,114,
- 32,111,98,106,101,99,116,10,10,32,32,32,32,67,114,101,
- 97,116,101,32,97,32,110,101,119,32,122,105,112,105,109,112,
- 111,114,116,101,114,32,105,110,115,116,97,110,99,101,46,32,
- 39,97,114,99,104,105,118,101,112,97,116,104,39,32,109,117,
- 115,116,32,98,101,32,97,32,112,97,116,104,32,116,111,10,
- 32,32,32,32,97,32,122,105,112,102,105,108,101,44,32,111,
- 114,32,116,111,32,97,32,115,112,101,99,105,102,105,99,32,
- 112,97,116,104,32,105,110,115,105,100,101,32,97,32,122,105,
- 112,102,105,108,101,46,32,70,111,114,32,101,120,97,109,112,
- 108,101,44,32,105,116,32,99,97,110,32,98,101,10,32,32,
- 32,32,39,47,116,109,112,47,109,121,105,109,112,111,114,116,
- 46,122,105,112,39,44,32,111,114,32,39,47,116,109,112,47,
- 109,121,105,109,112,111,114,116,46,122,105,112,47,109,121,100,
- 105,114,101,99,116,111,114,121,39,44,32,105,102,32,109,121,
- 100,105,114,101,99,116,111,114,121,32,105,115,32,97,10,32,
- 32,32,32,118,97,108,105,100,32,100,105,114,101,99,116,111,
- 114,121,32,105,110,115,105,100,101,32,116,104,101,32,97,114,
- 99,104,105,118,101,46,10,10,32,32,32,32,39,90,105,112,
- 73,109,112,111,114,116,69,114,114,111,114,32,105,115,32,114,
- 97,105,115,101,100,32,105,102,32,39,97,114,99,104,105,118,
- 101,112,97,116,104,39,32,100,111,101,115,110,39,116,32,112,
- 111,105,110,116,32,116,111,32,97,32,118,97,108,105,100,32,
- 90,105,112,10,32,32,32,32,97,114,99,104,105,118,101,46,
- 10,10,32,32,32,32,84,104,101,32,39,97,114,99,104,105,
- 118,101,39,32,97,116,116,114,105,98,117,116,101,32,111,102,
- 32,122,105,112,105,109,112,111,114,116,101,114,32,111,98,106,
- 101,99,116,115,32,99,111,110,116,97,105,110,115,32,116,104,
- 101,32,110,97,109,101,32,111,102,32,116,104,101,10,32,32,
- 32,32,122,105,112,102,105,108,101,32,116,97,114,103,101,116,
- 101,100,46,10,32,32,32,32,99,2,0,0,0,0,0,0,
- 0,0,0,0,0,8,0,0,0,9,0,0,0,67,0,0,
+ 99,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,
+ 0,64,0,0,0,115,80,1,0,0,100,0,90,0,100,1,
+ 100,2,108,1,90,2,100,1,100,3,108,1,109,3,90,3,
+ 109,4,90,4,1,0,100,1,100,2,108,5,90,6,100,1,
+ 100,2,108,7,90,7,100,1,100,2,108,8,90,8,100,1,
+ 100,2,108,9,90,9,100,1,100,2,108,10,90,10,100,1,
+ 100,2,108,11,90,11,100,1,100,2,108,12,90,12,100,4,
+ 100,5,103,2,90,13,101,2,106,14,90,14,101,2,106,15,
+ 100,6,100,2,133,2,25,0,90,16,71,0,100,7,100,4,
+ 132,0,100,4,101,17,131,3,90,18,105,0,90,19,101,20,
+ 101,10,131,1,90,21,100,8,90,22,100,9,90,23,100,10,
+ 90,24,71,0,100,11,100,5,132,0,100,5,101,2,106,25,
+ 131,3,90,26,101,14,100,12,23,0,100,13,100,13,102,3,
+ 101,14,100,14,23,0,100,15,100,13,102,3,100,16,100,17,
+ 102,4,90,27,100,18,100,19,132,0,90,28,100,20,100,21,
+ 132,0,90,29,100,22,100,23,132,0,90,30,100,24,100,25,
+ 132,0,90,31,100,26,90,32,100,15,97,33,100,27,100,28,
+ 132,0,90,34,100,29,100,30,132,0,90,35,100,31,100,32,
+ 132,0,90,36,100,33,100,34,132,0,90,37,101,20,101,37,
+ 106,38,131,1,90,39,100,35,100,36,132,0,90,40,100,37,
+ 100,38,132,0,90,41,100,39,100,40,132,0,90,42,100,41,
+ 100,42,132,0,90,43,100,43,100,44,132,0,90,44,100,45,
+ 100,46,132,0,90,45,100,2,83,0,41,47,97,80,2,0,
+ 0,122,105,112,105,109,112,111,114,116,32,112,114,111,118,105,
+ 100,101,115,32,115,117,112,112,111,114,116,32,102,111,114,32,
+ 105,109,112,111,114,116,105,110,103,32,80,121,116,104,111,110,
+ 32,109,111,100,117,108,101,115,32,102,114,111,109,32,90,105,
+ 112,32,97,114,99,104,105,118,101,115,46,10,10,84,104,105,
+ 115,32,109,111,100,117,108,101,32,101,120,112,111,114,116,115,
+ 32,116,104,114,101,101,32,111,98,106,101,99,116,115,58,10,
+ 45,32,122,105,112,105,109,112,111,114,116,101,114,58,32,97,
+ 32,99,108,97,115,115,59,32,105,116,115,32,99,111,110,115,
+ 116,114,117,99,116,111,114,32,116,97,107,101,115,32,97,32,
+ 112,97,116,104,32,116,111,32,97,32,90,105,112,32,97,114,
+ 99,104,105,118,101,46,10,45,32,90,105,112,73,109,112,111,
+ 114,116,69,114,114,111,114,58,32,101,120,99,101,112,116,105,
+ 111,110,32,114,97,105,115,101,100,32,98,121,32,122,105,112,
+ 105,109,112,111,114,116,101,114,32,111,98,106,101,99,116,115,
+ 46,32,73,116,39,115,32,97,10,32,32,115,117,98,99,108,
+ 97,115,115,32,111,102,32,73,109,112,111,114,116,69,114,114,
+ 111,114,44,32,115,111,32,105,116,32,99,97,110,32,98,101,
+ 32,99,97,117,103,104,116,32,97,115,32,73,109,112,111,114,
+ 116,69,114,114,111,114,44,32,116,111,111,46,10,45,32,95,
+ 122,105,112,95,100,105,114,101,99,116,111,114,121,95,99,97,
+ 99,104,101,58,32,97,32,100,105,99,116,44,32,109,97,112,
+ 112,105,110,103,32,97,114,99,104,105,118,101,32,112,97,116,
+ 104,115,32,116,111,32,122,105,112,32,100,105,114,101,99,116,
+ 111,114,121,10,32,32,105,110,102,111,32,100,105,99,116,115,
+ 44,32,97,115,32,117,115,101,100,32,105,110,32,122,105,112,
+ 105,109,112,111,114,116,101,114,46,95,102,105,108,101,115,46,
+ 10,10,73,116,32,105,115,32,117,115,117,97,108,108,121,32,
+ 110,111,116,32,110,101,101,100,101,100,32,116,111,32,117,115,
+ 101,32,116,104,101,32,122,105,112,105,109,112,111,114,116,32,
+ 109,111,100,117,108,101,32,101,120,112,108,105,99,105,116,108,
+ 121,59,32,105,116,32,105,115,10,117,115,101,100,32,98,121,
+ 32,116,104,101,32,98,117,105,108,116,105,110,32,105,109,112,
+ 111,114,116,32,109,101,99,104,97,110,105,115,109,32,102,111,
+ 114,32,115,121,115,46,112,97,116,104,32,105,116,101,109,115,
+ 32,116,104,97,116,32,97,114,101,32,112,97,116,104,115,10,
+ 116,111,32,90,105,112,32,97,114,99,104,105,118,101,115,46,
+ 10,233,0,0,0,0,78,41,2,218,14,95,117,110,112,97,
+ 99,107,95,117,105,110,116,49,54,218,14,95,117,110,112,97,
+ 99,107,95,117,105,110,116,51,50,218,14,90,105,112,73,109,
+ 112,111,114,116,69,114,114,111,114,218,11,122,105,112,105,109,
+ 112,111,114,116,101,114,233,1,0,0,0,99,0,0,0,0,
+ 0,0,0,0,0,0,0,0,1,0,0,0,64,0,0,0,
+ 115,12,0,0,0,101,0,90,1,100,0,90,2,100,1,83,
+ 0,41,2,114,3,0,0,0,78,41,3,218,8,95,95,110,
+ 97,109,101,95,95,218,10,95,95,109,111,100,117,108,101,95,
+ 95,218,12,95,95,113,117,97,108,110,97,109,101,95,95,169,
+ 0,114,9,0,0,0,114,9,0,0,0,250,18,60,102,114,
+ 111,122,101,110,32,122,105,112,105,109,112,111,114,116,62,114,
+ 3,0,0,0,34,0,0,0,115,4,0,0,0,8,0,4,
+ 1,243,0,0,0,0,233,22,0,0,0,115,4,0,0,0,
+ 80,75,5,6,105,255,255,0,0,99,0,0,0,0,0,0,
+ 0,0,0,0,0,0,3,0,0,0,64,0,0,0,115,126,
+ 0,0,0,101,0,90,1,100,0,90,2,100,1,90,3,100,
+ 2,100,3,132,0,90,4,100,29,100,5,100,6,132,1,90,
+ 5,100,29,100,7,100,8,132,1,90,6,100,29,100,9,100,
+ 10,132,1,90,7,100,11,100,12,132,0,90,8,100,13,100,
+ 14,132,0,90,9,100,15,100,16,132,0,90,10,100,17,100,
+ 18,132,0,90,11,100,19,100,20,132,0,90,12,100,21,100,
+ 22,132,0,90,13,100,23,100,24,132,0,90,14,100,25,100,
+ 26,132,0,90,15,100,27,100,28,132,0,90,16,100,4,83,
+ 0,41,30,114,4,0,0,0,97,255,1,0,0,122,105,112,
+ 105,109,112,111,114,116,101,114,40,97,114,99,104,105,118,101,
+ 112,97,116,104,41,32,45,62,32,122,105,112,105,109,112,111,
+ 114,116,101,114,32,111,98,106,101,99,116,10,10,32,32,32,
+ 32,67,114,101,97,116,101,32,97,32,110,101,119,32,122,105,
+ 112,105,109,112,111,114,116,101,114,32,105,110,115,116,97,110,
+ 99,101,46,32,39,97,114,99,104,105,118,101,112,97,116,104,
+ 39,32,109,117,115,116,32,98,101,32,97,32,112,97,116,104,
+ 32,116,111,10,32,32,32,32,97,32,122,105,112,102,105,108,
+ 101,44,32,111,114,32,116,111,32,97,32,115,112,101,99,105,
+ 102,105,99,32,112,97,116,104,32,105,110,115,105,100,101,32,
+ 97,32,122,105,112,102,105,108,101,46,32,70,111,114,32,101,
+ 120,97,109,112,108,101,44,32,105,116,32,99,97,110,32,98,
+ 101,10,32,32,32,32,39,47,116,109,112,47,109,121,105,109,
+ 112,111,114,116,46,122,105,112,39,44,32,111,114,32,39,47,
+ 116,109,112,47,109,121,105,109,112,111,114,116,46,122,105,112,
+ 47,109,121,100,105,114,101,99,116,111,114,121,39,44,32,105,
+ 102,32,109,121,100,105,114,101,99,116,111,114,121,32,105,115,
+ 32,97,10,32,32,32,32,118,97,108,105,100,32,100,105,114,
+ 101,99,116,111,114,121,32,105,110,115,105,100,101,32,116,104,
+ 101,32,97,114,99,104,105,118,101,46,10,10,32,32,32,32,
+ 39,90,105,112,73,109,112,111,114,116,69,114,114,111,114,32,
+ 105,115,32,114,97,105,115,101,100,32,105,102,32,39,97,114,
+ 99,104,105,118,101,112,97,116,104,39,32,100,111,101,115,110,
+ 39,116,32,112,111,105,110,116,32,116,111,32,97,32,118,97,
+ 108,105,100,32,90,105,112,10,32,32,32,32,97,114,99,104,
+ 105,118,101,46,10,10,32,32,32,32,84,104,101,32,39,97,
+ 114,99,104,105,118,101,39,32,97,116,116,114,105,98,117,116,
+ 101,32,111,102,32,122,105,112,105,109,112,111,114,116,101,114,
+ 32,111,98,106,101,99,116,115,32,99,111,110,116,97,105,110,
+ 115,32,116,104,101,32,110,97,109,101,32,111,102,32,116,104,
+ 101,10,32,32,32,32,122,105,112,102,105,108,101,32,116,97,
+ 114,103,101,116,101,100,46,10,32,32,32,32,99,2,0,0,
+ 0,0,0,0,0,0,0,0,0,9,0,0,0,67,0,0,
0,115,40,1,0,0,116,0,124,1,116,1,131,2,115,14,
100,1,100,0,108,2,125,2,124,2,160,3,124,1,161,1,
125,1,124,1,115,22,116,4,100,2,124,1,100,3,141,2,
@@ -172,75 +171,16 @@ const unsigned char _Py_M__zipimport[] = {
65,50,7,194,18,1,65,50,7,194,19,1,65,11,7,122,
20,122,105,112,105,109,112,111,114,116,101,114,46,95,95,105,
110,105,116,95,95,78,99,3,0,0,0,0,0,0,0,0,
- 0,0,0,5,0,0,0,4,0,0,0,67,0,0,0,115,
- 90,0,0,0,116,0,160,1,100,1,116,2,161,2,1,0,
- 116,3,124,0,124,1,131,2,125,3,124,3,100,2,117,1,
- 114,19,124,0,103,0,102,2,83,0,116,4,124,0,124,1,
- 131,2,125,4,116,5,124,0,124,4,131,2,114,41,100,2,
- 124,0,106,6,155,0,116,7,155,0,124,4,155,0,157,3,
- 103,1,102,2,83,0,100,2,103,0,102,2,83,0,41,3,
- 97,47,2,0,0,102,105,110,100,95,108,111,97,100,101,114,
- 40,102,117,108,108,110,97,109,101,44,32,112,97,116,104,61,
- 78,111,110,101,41,32,45,62,32,115,101,108,102,44,32,115,
- 116,114,32,111,114,32,78,111,110,101,46,10,10,32,32,32,
- 32,32,32,32,32,83,101,97,114,99,104,32,102,111,114,32,
- 97,32,109,111,100,117,108,101,32,115,112,101,99,105,102,105,
- 101,100,32,98,121,32,39,102,117,108,108,110,97,109,101,39,
- 46,32,39,102,117,108,108,110,97,109,101,39,32,109,117,115,
- 116,32,98,101,32,116,104,101,10,32,32,32,32,32,32,32,
- 32,102,117,108,108,121,32,113,117,97,108,105,102,105,101,100,
- 32,40,100,111,116,116,101,100,41,32,109,111,100,117,108,101,
- 32,110,97,109,101,46,32,73,116,32,114,101,116,117,114,110,
- 115,32,116,104,101,32,122,105,112,105,109,112,111,114,116,101,
- 114,10,32,32,32,32,32,32,32,32,105,110,115,116,97,110,
- 99,101,32,105,116,115,101,108,102,32,105,102,32,116,104,101,
- 32,109,111,100,117,108,101,32,119,97,115,32,102,111,117,110,
- 100,44,32,97,32,115,116,114,105,110,103,32,99,111,110,116,
- 97,105,110,105,110,103,32,116,104,101,10,32,32,32,32,32,
- 32,32,32,102,117,108,108,32,112,97,116,104,32,110,97,109,
- 101,32,105,102,32,105,116,39,115,32,112,111,115,115,105,98,
- 108,121,32,97,32,112,111,114,116,105,111,110,32,111,102,32,
- 97,32,110,97,109,101,115,112,97,99,101,32,112,97,99,107,
- 97,103,101,44,10,32,32,32,32,32,32,32,32,111,114,32,
- 78,111,110,101,32,111,116,104,101,114,119,105,115,101,46,32,
- 84,104,101,32,111,112,116,105,111,110,97,108,32,39,112,97,
- 116,104,39,32,97,114,103,117,109,101,110,116,32,105,115,32,
- 105,103,110,111,114,101,100,32,45,45,32,105,116,39,115,10,
- 32,32,32,32,32,32,32,32,116,104,101,114,101,32,102,111,
- 114,32,99,111,109,112,97,116,105,98,105,108,105,116,121,32,
- 119,105,116,104,32,116,104,101,32,105,109,112,111,114,116,101,
- 114,32,112,114,111,116,111,99,111,108,46,10,10,32,32,32,
- 32,32,32,32,32,68,101,112,114,101,99,97,116,101,100,32,
- 115,105,110,99,101,32,80,121,116,104,111,110,32,51,46,49,
- 48,46,32,85,115,101,32,102,105,110,100,95,115,112,101,99,
- 40,41,32,105,110,115,116,101,97,100,46,10,32,32,32,32,
- 32,32,32,32,122,102,122,105,112,105,109,112,111,114,116,101,
- 114,46,102,105,110,100,95,108,111,97,100,101,114,40,41,32,
- 105,115,32,100,101,112,114,101,99,97,116,101,100,32,97,110,
- 100,32,115,108,97,116,101,100,32,102,111,114,32,114,101,109,
- 111,118,97,108,32,105,110,32,80,121,116,104,111,110,32,51,
- 46,49,50,59,32,117,115,101,32,102,105,110,100,95,115,112,
- 101,99,40,41,32,105,110,115,116,101,97,100,78,41,8,218,
- 9,95,119,97,114,110,105,110,103,115,218,4,119,97,114,110,
- 218,18,68,101,112,114,101,99,97,116,105,111,110,87,97,114,
- 110,105,110,103,218,16,95,103,101,116,95,109,111,100,117,108,
- 101,95,105,110,102,111,218,16,95,103,101,116,95,109,111,100,
- 117,108,101,95,112,97,116,104,218,7,95,105,115,95,100,105,
- 114,114,30,0,0,0,114,21,0,0,0,41,5,114,33,0,
- 0,0,218,8,102,117,108,108,110,97,109,101,114,14,0,0,
- 0,218,2,109,105,218,7,109,111,100,112,97,116,104,114,9,
- 0,0,0,114,9,0,0,0,114,10,0,0,0,218,11,102,
- 105,110,100,95,108,111,97,100,101,114,110,0,0,0,115,20,
- 0,0,0,6,12,2,2,4,254,10,3,8,1,8,2,10,
- 7,10,1,24,4,8,2,114,11,0,0,0,122,23,122,105,
- 112,105,109,112,111,114,116,101,114,46,102,105,110,100,95,108,
- 111,97,100,101,114,99,3,0,0,0,0,0,0,0,0,0,
- 0,0,3,0,0,0,4,0,0,0,67,0,0,0,115,28,
- 0,0,0,116,0,160,1,100,1,116,2,161,2,1,0,124,
- 0,160,3,124,1,124,2,161,2,100,2,25,0,83,0,41,
- 4,97,203,1,0,0,102,105,110,100,95,109,111,100,117,108,
- 101,40,102,117,108,108,110,97,109,101,44,32,112,97,116,104,
- 61,78,111,110,101,41,32,45,62,32,115,101,108,102,32,111,
+ 0,0,0,4,0,0,0,67,0,0,0,115,90,0,0,0,
+ 116,0,160,1,100,1,116,2,161,2,1,0,116,3,124,0,
+ 124,1,131,2,125,3,124,3,100,2,117,1,114,19,124,0,
+ 103,0,102,2,83,0,116,4,124,0,124,1,131,2,125,4,
+ 116,5,124,0,124,4,131,2,114,41,100,2,124,0,106,6,
+ 155,0,116,7,155,0,124,4,155,0,157,3,103,1,102,2,
+ 83,0,100,2,103,0,102,2,83,0,41,3,97,47,2,0,
+ 0,102,105,110,100,95,108,111,97,100,101,114,40,102,117,108,
+ 108,110,97,109,101,44,32,112,97,116,104,61,78,111,110,101,
+ 41,32,45,62,32,115,101,108,102,44,32,115,116,114,32,111,
114,32,78,111,110,101,46,10,10,32,32,32,32,32,32,32,
32,83,101,97,114,99,104,32,102,111,114,32,97,32,109,111,
100,117,108,101,32,115,112,101,99,105,102,105,101,100,32,98,
@@ -253,68 +193,126 @@ const unsigned char _Py_M__zipimport[] = {
101,32,122,105,112,105,109,112,111,114,116,101,114,10,32,32,
32,32,32,32,32,32,105,110,115,116,97,110,99,101,32,105,
116,115,101,108,102,32,105,102,32,116,104,101,32,109,111,100,
- 117,108,101,32,119,97,115,32,102,111,117,110,100,44,32,111,
- 114,32,78,111,110,101,32,105,102,32,105,116,32,119,97,115,
- 110,39,116,46,10,32,32,32,32,32,32,32,32,84,104,101,
- 32,111,112,116,105,111,110,97,108,32,39,112,97,116,104,39,
- 32,97,114,103,117,109,101,110,116,32,105,115,32,105,103,110,
- 111,114,101,100,32,45,45,32,105,116,39,115,32,116,104,101,
- 114,101,32,102,111,114,32,99,111,109,112,97,116,105,98,105,
- 108,105,116,121,10,32,32,32,32,32,32,32,32,119,105,116,
- 104,32,116,104,101,32,105,109,112,111,114,116,101,114,32,112,
- 114,111,116,111,99,111,108,46,10,10,32,32,32,32,32,32,
- 32,32,68,101,112,114,101,99,97,116,101,100,32,115,105,110,
- 99,101,32,80,121,116,104,111,110,32,51,46,49,48,46,32,
- 85,115,101,32,102,105,110,100,95,115,112,101,99,40,41,32,
- 105,110,115,116,101,97,100,46,10,32,32,32,32,32,32,32,
- 32,122,102,122,105,112,105,109,112,111,114,116,101,114,46,102,
- 105,110,100,95,109,111,100,117,108,101,40,41,32,105,115,32,
- 100,101,112,114,101,99,97,116,101,100,32,97,110,100,32,115,
- 108,97,116,101,100,32,102,111,114,32,114,101,109,111,118,97,
- 108,32,105,110,32,80,121,116,104,111,110,32,51,46,49,50,
- 59,32,117,115,101,32,102,105,110,100,95,115,112,101,99,40,
- 41,32,105,110,115,116,101,97,100,114,0,0,0,0,78,41,
- 4,114,36,0,0,0,114,37,0,0,0,114,38,0,0,0,
- 114,45,0,0,0,41,3,114,33,0,0,0,114,42,0,0,
- 0,114,14,0,0,0,114,9,0,0,0,114,9,0,0,0,
- 114,10,0,0,0,218,11,102,105,110,100,95,109,111,100,117,
- 108,101,147,0,0,0,115,8,0,0,0,6,11,2,2,4,
- 254,16,3,114,11,0,0,0,122,23,122,105,112,105,109,112,
- 111,114,116,101,114,46,102,105,110,100,95,109,111,100,117,108,
- 101,99,3,0,0,0,0,0,0,0,0,0,0,0,7,0,
- 0,0,6,0,0,0,67,0,0,0,115,108,0,0,0,116,
- 0,124,0,124,1,131,2,125,3,124,3,100,1,117,1,114,
- 17,116,1,160,2,124,1,124,0,124,3,100,2,166,3,83,
- 0,116,3,124,0,124,1,131,2,125,4,116,4,124,0,124,
- 4,131,2,114,52,124,0,106,5,155,0,116,6,155,0,124,
- 4,155,0,157,3,125,5,116,1,160,7,124,1,100,1,100,
- 3,100,4,166,3,125,6,124,6,106,8,160,9,124,5,161,
- 1,1,0,124,6,83,0,100,1,83,0,41,5,122,107,67,
- 114,101,97,116,101,32,97,32,77,111,100,117,108,101,83,112,
- 101,99,32,102,111,114,32,116,104,101,32,115,112,101,99,105,
- 102,105,101,100,32,109,111,100,117,108,101,46,10,10,32,32,
- 32,32,32,32,32,32,82,101,116,117,114,110,115,32,78,111,
- 110,101,32,105,102,32,116,104,101,32,109,111,100,117,108,101,
- 32,99,97,110,110,111,116,32,98,101,32,102,111,117,110,100,
- 46,10,32,32,32,32,32,32,32,32,78,41,1,218,10,105,
- 115,95,112,97,99,107,97,103,101,84,41,3,218,4,110,97,
- 109,101,90,6,108,111,97,100,101,114,114,47,0,0,0,41,
- 10,114,39,0,0,0,218,10,95,98,111,111,116,115,116,114,
- 97,112,90,16,115,112,101,99,95,102,114,111,109,95,108,111,
- 97,100,101,114,114,40,0,0,0,114,41,0,0,0,114,30,
- 0,0,0,114,21,0,0,0,90,10,77,111,100,117,108,101,
- 83,112,101,99,90,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,110,115,
- 114,25,0,0,0,41,7,114,33,0,0,0,114,42,0,0,
- 0,90,6,116,97,114,103,101,116,90,11,109,111,100,117,108,
- 101,95,105,110,102,111,114,44,0,0,0,114,14,0,0,0,
- 90,4,115,112,101,99,114,9,0,0,0,114,9,0,0,0,
- 114,10,0,0,0,218,9,102,105,110,100,95,115,112,101,99,
- 163,0,0,0,115,24,0,0,0,10,5,8,1,16,1,10,
- 7,10,1,18,4,8,1,2,1,6,255,12,2,4,1,4,
- 2,114,11,0,0,0,122,21,122,105,112,105,109,112,111,114,
- 116,101,114,46,102,105,110,100,95,115,112,101,99,99,2,0,
- 0,0,0,0,0,0,0,0,0,0,5,0,0,0,3,0,
+ 117,108,101,32,119,97,115,32,102,111,117,110,100,44,32,97,
+ 32,115,116,114,105,110,103,32,99,111,110,116,97,105,110,105,
+ 110,103,32,116,104,101,10,32,32,32,32,32,32,32,32,102,
+ 117,108,108,32,112,97,116,104,32,110,97,109,101,32,105,102,
+ 32,105,116,39,115,32,112,111,115,115,105,98,108,121,32,97,
+ 32,112,111,114,116,105,111,110,32,111,102,32,97,32,110,97,
+ 109,101,115,112,97,99,101,32,112,97,99,107,97,103,101,44,
+ 10,32,32,32,32,32,32,32,32,111,114,32,78,111,110,101,
+ 32,111,116,104,101,114,119,105,115,101,46,32,84,104,101,32,
+ 111,112,116,105,111,110,97,108,32,39,112,97,116,104,39,32,
+ 97,114,103,117,109,101,110,116,32,105,115,32,105,103,110,111,
+ 114,101,100,32,45,45,32,105,116,39,115,10,32,32,32,32,
+ 32,32,32,32,116,104,101,114,101,32,102,111,114,32,99,111,
+ 109,112,97,116,105,98,105,108,105,116,121,32,119,105,116,104,
+ 32,116,104,101,32,105,109,112,111,114,116,101,114,32,112,114,
+ 111,116,111,99,111,108,46,10,10,32,32,32,32,32,32,32,
+ 32,68,101,112,114,101,99,97,116,101,100,32,115,105,110,99,
+ 101,32,80,121,116,104,111,110,32,51,46,49,48,46,32,85,
+ 115,101,32,102,105,110,100,95,115,112,101,99,40,41,32,105,
+ 110,115,116,101,97,100,46,10,32,32,32,32,32,32,32,32,
+ 122,102,122,105,112,105,109,112,111,114,116,101,114,46,102,105,
+ 110,100,95,108,111,97,100,101,114,40,41,32,105,115,32,100,
+ 101,112,114,101,99,97,116,101,100,32,97,110,100,32,115,108,
+ 97,116,101,100,32,102,111,114,32,114,101,109,111,118,97,108,
+ 32,105,110,32,80,121,116,104,111,110,32,51,46,49,50,59,
+ 32,117,115,101,32,102,105,110,100,95,115,112,101,99,40,41,
+ 32,105,110,115,116,101,97,100,78,41,8,218,9,95,119,97,
+ 114,110,105,110,103,115,218,4,119,97,114,110,218,18,68,101,
+ 112,114,101,99,97,116,105,111,110,87,97,114,110,105,110,103,
+ 218,16,95,103,101,116,95,109,111,100,117,108,101,95,105,110,
+ 102,111,218,16,95,103,101,116,95,109,111,100,117,108,101,95,
+ 112,97,116,104,218,7,95,105,115,95,100,105,114,114,30,0,
+ 0,0,114,21,0,0,0,41,5,114,33,0,0,0,218,8,
+ 102,117,108,108,110,97,109,101,114,14,0,0,0,218,2,109,
+ 105,218,7,109,111,100,112,97,116,104,114,9,0,0,0,114,
+ 9,0,0,0,114,10,0,0,0,218,11,102,105,110,100,95,
+ 108,111,97,100,101,114,110,0,0,0,115,20,0,0,0,6,
+ 12,2,2,4,254,10,3,8,1,8,2,10,7,10,1,24,
+ 4,8,2,114,11,0,0,0,122,23,122,105,112,105,109,112,
+ 111,114,116,101,114,46,102,105,110,100,95,108,111,97,100,101,
+ 114,99,3,0,0,0,0,0,0,0,0,0,0,0,4,0,
+ 0,0,67,0,0,0,115,28,0,0,0,116,0,160,1,100,
+ 1,116,2,161,2,1,0,124,0,160,3,124,1,124,2,161,
+ 2,100,2,25,0,83,0,41,4,97,203,1,0,0,102,105,
+ 110,100,95,109,111,100,117,108,101,40,102,117,108,108,110,97,
+ 109,101,44,32,112,97,116,104,61,78,111,110,101,41,32,45,
+ 62,32,115,101,108,102,32,111,114,32,78,111,110,101,46,10,
+ 10,32,32,32,32,32,32,32,32,83,101,97,114,99,104,32,
+ 102,111,114,32,97,32,109,111,100,117,108,101,32,115,112,101,
+ 99,105,102,105,101,100,32,98,121,32,39,102,117,108,108,110,
+ 97,109,101,39,46,32,39,102,117,108,108,110,97,109,101,39,
+ 32,109,117,115,116,32,98,101,32,116,104,101,10,32,32,32,
+ 32,32,32,32,32,102,117,108,108,121,32,113,117,97,108,105,
+ 102,105,101,100,32,40,100,111,116,116,101,100,41,32,109,111,
+ 100,117,108,101,32,110,97,109,101,46,32,73,116,32,114,101,
+ 116,117,114,110,115,32,116,104,101,32,122,105,112,105,109,112,
+ 111,114,116,101,114,10,32,32,32,32,32,32,32,32,105,110,
+ 115,116,97,110,99,101,32,105,116,115,101,108,102,32,105,102,
+ 32,116,104,101,32,109,111,100,117,108,101,32,119,97,115,32,
+ 102,111,117,110,100,44,32,111,114,32,78,111,110,101,32,105,
+ 102,32,105,116,32,119,97,115,110,39,116,46,10,32,32,32,
+ 32,32,32,32,32,84,104,101,32,111,112,116,105,111,110,97,
+ 108,32,39,112,97,116,104,39,32,97,114,103,117,109,101,110,
+ 116,32,105,115,32,105,103,110,111,114,101,100,32,45,45,32,
+ 105,116,39,115,32,116,104,101,114,101,32,102,111,114,32,99,
+ 111,109,112,97,116,105,98,105,108,105,116,121,10,32,32,32,
+ 32,32,32,32,32,119,105,116,104,32,116,104,101,32,105,109,
+ 112,111,114,116,101,114,32,112,114,111,116,111,99,111,108,46,
+ 10,10,32,32,32,32,32,32,32,32,68,101,112,114,101,99,
+ 97,116,101,100,32,115,105,110,99,101,32,80,121,116,104,111,
+ 110,32,51,46,49,48,46,32,85,115,101,32,102,105,110,100,
+ 95,115,112,101,99,40,41,32,105,110,115,116,101,97,100,46,
+ 10,32,32,32,32,32,32,32,32,122,102,122,105,112,105,109,
+ 112,111,114,116,101,114,46,102,105,110,100,95,109,111,100,117,
+ 108,101,40,41,32,105,115,32,100,101,112,114,101,99,97,116,
+ 101,100,32,97,110,100,32,115,108,97,116,101,100,32,102,111,
+ 114,32,114,101,109,111,118,97,108,32,105,110,32,80,121,116,
+ 104,111,110,32,51,46,49,50,59,32,117,115,101,32,102,105,
+ 110,100,95,115,112,101,99,40,41,32,105,110,115,116,101,97,
+ 100,114,0,0,0,0,78,41,4,114,36,0,0,0,114,37,
+ 0,0,0,114,38,0,0,0,114,45,0,0,0,41,3,114,
+ 33,0,0,0,114,42,0,0,0,114,14,0,0,0,114,9,
+ 0,0,0,114,9,0,0,0,114,10,0,0,0,218,11,102,
+ 105,110,100,95,109,111,100,117,108,101,147,0,0,0,115,8,
+ 0,0,0,6,11,2,2,4,254,16,3,114,11,0,0,0,
+ 122,23,122,105,112,105,109,112,111,114,116,101,114,46,102,105,
+ 110,100,95,109,111,100,117,108,101,99,3,0,0,0,0,0,
+ 0,0,0,0,0,0,6,0,0,0,67,0,0,0,115,108,
+ 0,0,0,116,0,124,0,124,1,131,2,125,3,124,3,100,
+ 1,117,1,114,17,116,1,160,2,124,1,124,0,124,3,100,
+ 2,166,3,83,0,116,3,124,0,124,1,131,2,125,4,116,
+ 4,124,0,124,4,131,2,114,52,124,0,106,5,155,0,116,
+ 6,155,0,124,4,155,0,157,3,125,5,116,1,160,7,124,
+ 1,100,1,100,3,100,4,166,3,125,6,124,6,106,8,160,
+ 9,124,5,161,1,1,0,124,6,83,0,100,1,83,0,41,
+ 5,122,107,67,114,101,97,116,101,32,97,32,77,111,100,117,
+ 108,101,83,112,101,99,32,102,111,114,32,116,104,101,32,115,
+ 112,101,99,105,102,105,101,100,32,109,111,100,117,108,101,46,
+ 10,10,32,32,32,32,32,32,32,32,82,101,116,117,114,110,
+ 115,32,78,111,110,101,32,105,102,32,116,104,101,32,109,111,
+ 100,117,108,101,32,99,97,110,110,111,116,32,98,101,32,102,
+ 111,117,110,100,46,10,32,32,32,32,32,32,32,32,78,41,
+ 1,218,10,105,115,95,112,97,99,107,97,103,101,84,41,3,
+ 218,4,110,97,109,101,90,6,108,111,97,100,101,114,114,47,
+ 0,0,0,41,10,114,39,0,0,0,218,10,95,98,111,111,
+ 116,115,116,114,97,112,90,16,115,112,101,99,95,102,114,111,
+ 109,95,108,111,97,100,101,114,114,40,0,0,0,114,41,0,
+ 0,0,114,30,0,0,0,114,21,0,0,0,90,10,77,111,
+ 100,117,108,101,83,112,101,99,90,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,110,115,114,25,0,0,0,41,7,114,33,0,0,0,
+ 114,42,0,0,0,90,6,116,97,114,103,101,116,90,11,109,
+ 111,100,117,108,101,95,105,110,102,111,114,44,0,0,0,114,
+ 14,0,0,0,90,4,115,112,101,99,114,9,0,0,0,114,
+ 9,0,0,0,114,10,0,0,0,218,9,102,105,110,100,95,
+ 115,112,101,99,163,0,0,0,115,24,0,0,0,10,5,8,
+ 1,16,1,10,7,10,1,18,4,8,1,2,1,6,255,12,
+ 2,4,1,4,2,114,11,0,0,0,122,21,122,105,112,105,
+ 109,112,111,114,116,101,114,46,102,105,110,100,95,115,112,101,
+ 99,99,2,0,0,0,0,0,0,0,0,0,0,0,3,0,
0,0,67,0,0,0,115,20,0,0,0,116,0,124,0,124,
1,131,2,92,3,125,2,125,3,125,4,124,2,83,0,41,
2,122,166,103,101,116,95,99,111,100,101,40,102,117,108,108,
@@ -335,99 +333,98 @@ const unsigned char _Py_M__zipimport[] = {
8,103,101,116,95,99,111,100,101,190,0,0,0,115,4,0,
0,0,16,6,4,1,114,11,0,0,0,122,20,122,105,112,
105,109,112,111,114,116,101,114,46,103,101,116,95,99,111,100,
- 101,99,2,0,0,0,0,0,0,0,0,0,0,0,4,0,
- 0,0,8,0,0,0,67,0,0,0,115,114,0,0,0,116,
- 0,114,8,124,1,160,1,116,0,116,2,161,2,125,1,124,
- 1,125,2,124,1,160,3,124,0,106,4,116,2,23,0,161,
- 1,114,29,124,1,116,5,124,0,106,4,116,2,23,0,131,
- 1,100,1,133,2,25,0,125,2,9,0,124,0,106,6,124,
- 2,25,0,125,3,110,14,35,0,4,0,116,7,121,56,1,
- 0,1,0,1,0,116,8,100,2,100,3,124,2,131,3,130,
- 1,37,0,116,9,124,0,106,4,124,3,131,2,83,0,119,
- 0,41,4,122,154,103,101,116,95,100,97,116,97,40,112,97,
- 116,104,110,97,109,101,41,32,45,62,32,115,116,114,105,110,
- 103,32,119,105,116,104,32,102,105,108,101,32,100,97,116,97,
- 46,10,10,32,32,32,32,32,32,32,32,82,101,116,117,114,
- 110,32,116,104,101,32,100,97,116,97,32,97,115,115,111,99,
- 105,97,116,101,100,32,119,105,116,104,32,39,112,97,116,104,
- 110,97,109,101,39,46,32,82,97,105,115,101,32,79,83,69,
- 114,114,111,114,32,105,102,10,32,32,32,32,32,32,32,32,
- 116,104,101,32,102,105,108,101,32,119,97,115,110,39,116,32,
- 102,111,117,110,100,46,10,32,32,32,32,32,32,32,32,78,
- 114,0,0,0,0,218,0,41,10,114,19,0,0,0,114,20,
- 0,0,0,114,21,0,0,0,218,10,115,116,97,114,116,115,
- 119,105,116,104,114,30,0,0,0,218,3,108,101,110,114,29,
- 0,0,0,114,27,0,0,0,114,23,0,0,0,218,9,95,
- 103,101,116,95,100,97,116,97,41,4,114,33,0,0,0,218,
- 8,112,97,116,104,110,97,109,101,90,3,107,101,121,218,9,
- 116,111,99,95,101,110,116,114,121,114,9,0,0,0,114,9,
- 0,0,0,114,10,0,0,0,218,8,103,101,116,95,100,97,
- 116,97,200,0,0,0,115,26,0,0,0,4,6,12,1,4,
- 2,16,1,22,1,2,2,12,1,2,128,12,1,12,1,2,
- 128,12,1,2,254,115,12,0,0,0,158,5,36,0,164,13,
- 49,7,184,1,49,7,122,20,122,105,112,105,109,112,111,114,
- 116,101,114,46,103,101,116,95,100,97,116,97,99,2,0,0,
- 0,0,0,0,0,0,0,0,0,5,0,0,0,3,0,0,
- 0,67,0,0,0,115,20,0,0,0,116,0,124,0,124,1,
- 131,2,92,3,125,2,125,3,125,4,124,4,83,0,41,2,
- 122,165,103,101,116,95,102,105,108,101,110,97,109,101,40,102,
- 117,108,108,110,97,109,101,41,32,45,62,32,102,105,108,101,
- 110,97,109,101,32,115,116,114,105,110,103,46,10,10,32,32,
- 32,32,32,32,32,32,82,101,116,117,114,110,32,116,104,101,
- 32,102,105,108,101,110,97,109,101,32,102,111,114,32,116,104,
- 101,32,115,112,101,99,105,102,105,101,100,32,109,111,100,117,
- 108,101,32,111,114,32,114,97,105,115,101,32,90,105,112,73,
- 109,112,111,114,116,69,114,114,111,114,10,32,32,32,32,32,
- 32,32,32,105,102,32,105,116,32,99,111,117,108,100,110,39,
- 116,32,98,101,32,105,109,112,111,114,116,101,100,46,10,32,
- 32,32,32,32,32,32,32,78,114,51,0,0,0,114,53,0,
- 0,0,114,9,0,0,0,114,9,0,0,0,114,10,0,0,
- 0,218,12,103,101,116,95,102,105,108,101,110,97,109,101,221,
- 0,0,0,115,4,0,0,0,16,8,4,1,114,11,0,0,
- 0,122,24,122,105,112,105,109,112,111,114,116,101,114,46,103,
- 101,116,95,102,105,108,101,110,97,109,101,99,2,0,0,0,
- 0,0,0,0,0,0,0,0,6,0,0,0,8,0,0,0,
- 67,0,0,0,115,128,0,0,0,116,0,124,0,124,1,131,
- 2,125,2,124,2,100,1,117,0,114,18,116,1,100,2,124,
- 1,155,2,157,2,124,1,100,3,141,2,130,1,116,2,124,
- 0,124,1,131,2,125,3,124,2,114,32,116,3,160,4,124,
- 3,100,4,161,2,125,4,110,5,124,3,155,0,100,5,157,
- 2,125,4,9,0,124,0,106,5,124,4,25,0,125,5,110,
- 11,35,0,4,0,116,6,121,63,1,0,1,0,1,0,89,
- 0,100,1,83,0,37,0,116,7,124,0,106,8,124,5,131,
- 2,160,9,161,0,83,0,119,0,41,6,122,253,103,101,116,
- 95,115,111,117,114,99,101,40,102,117,108,108,110,97,109,101,
- 41,32,45,62,32,115,111,117,114,99,101,32,115,116,114,105,
- 110,103,46,10,10,32,32,32,32,32,32,32,32,82,101,116,
- 117,114,110,32,116,104,101,32,115,111,117,114,99,101,32,99,
- 111,100,101,32,102,111,114,32,116,104,101,32,115,112,101,99,
- 105,102,105,101,100,32,109,111,100,117,108,101,46,32,82,97,
+ 101,99,2,0,0,0,0,0,0,0,0,0,0,0,8,0,
+ 0,0,67,0,0,0,115,114,0,0,0,116,0,114,8,124,
+ 1,160,1,116,0,116,2,161,2,125,1,124,1,125,2,124,
+ 1,160,3,124,0,106,4,116,2,23,0,161,1,114,29,124,
+ 1,116,5,124,0,106,4,116,2,23,0,131,1,100,1,133,
+ 2,25,0,125,2,9,0,124,0,106,6,124,2,25,0,125,
+ 3,110,14,35,0,4,0,116,7,121,56,1,0,1,0,1,
+ 0,116,8,100,2,100,3,124,2,131,3,130,1,37,0,116,
+ 9,124,0,106,4,124,3,131,2,83,0,119,0,41,4,122,
+ 154,103,101,116,95,100,97,116,97,40,112,97,116,104,110,97,
+ 109,101,41,32,45,62,32,115,116,114,105,110,103,32,119,105,
+ 116,104,32,102,105,108,101,32,100,97,116,97,46,10,10,32,
+ 32,32,32,32,32,32,32,82,101,116,117,114,110,32,116,104,
+ 101,32,100,97,116,97,32,97,115,115,111,99,105,97,116,101,
+ 100,32,119,105,116,104,32,39,112,97,116,104,110,97,109,101,
+ 39,46,32,82,97,105,115,101,32,79,83,69,114,114,111,114,
+ 32,105,102,10,32,32,32,32,32,32,32,32,116,104,101,32,
+ 102,105,108,101,32,119,97,115,110,39,116,32,102,111,117,110,
+ 100,46,10,32,32,32,32,32,32,32,32,78,114,0,0,0,
+ 0,218,0,41,10,114,19,0,0,0,114,20,0,0,0,114,
+ 21,0,0,0,218,10,115,116,97,114,116,115,119,105,116,104,
+ 114,30,0,0,0,218,3,108,101,110,114,29,0,0,0,114,
+ 27,0,0,0,114,23,0,0,0,218,9,95,103,101,116,95,
+ 100,97,116,97,41,4,114,33,0,0,0,218,8,112,97,116,
+ 104,110,97,109,101,90,3,107,101,121,218,9,116,111,99,95,
+ 101,110,116,114,121,114,9,0,0,0,114,9,0,0,0,114,
+ 10,0,0,0,218,8,103,101,116,95,100,97,116,97,200,0,
+ 0,0,115,26,0,0,0,4,6,12,1,4,2,16,1,22,
+ 1,2,2,12,1,2,128,12,1,12,1,2,128,12,1,2,
+ 254,115,12,0,0,0,158,5,36,0,164,13,49,7,184,1,
+ 49,7,122,20,122,105,112,105,109,112,111,114,116,101,114,46,
+ 103,101,116,95,100,97,116,97,99,2,0,0,0,0,0,0,
+ 0,0,0,0,0,3,0,0,0,67,0,0,0,115,20,0,
+ 0,0,116,0,124,0,124,1,131,2,92,3,125,2,125,3,
+ 125,4,124,4,83,0,41,2,122,165,103,101,116,95,102,105,
+ 108,101,110,97,109,101,40,102,117,108,108,110,97,109,101,41,
+ 32,45,62,32,102,105,108,101,110,97,109,101,32,115,116,114,
+ 105,110,103,46,10,10,32,32,32,32,32,32,32,32,82,101,
+ 116,117,114,110,32,116,104,101,32,102,105,108,101,110,97,109,
+ 101,32,102,111,114,32,116,104,101,32,115,112,101,99,105,102,
+ 105,101,100,32,109,111,100,117,108,101,32,111,114,32,114,97,
105,115,101,32,90,105,112,73,109,112,111,114,116,69,114,114,
- 111,114,10,32,32,32,32,32,32,32,32,105,102,32,116,104,
- 101,32,109,111,100,117,108,101,32,99,111,117,108,100,110,39,
- 116,32,98,101,32,102,111,117,110,100,44,32,114,101,116,117,
- 114,110,32,78,111,110,101,32,105,102,32,116,104,101,32,97,
- 114,99,104,105,118,101,32,100,111,101,115,10,32,32,32,32,
- 32,32,32,32,99,111,110,116,97,105,110,32,116,104,101,32,
- 109,111,100,117,108,101,44,32,98,117,116,32,104,97,115,32,
- 110,111,32,115,111,117,114,99,101,32,102,111,114,32,105,116,
- 46,10,32,32,32,32,32,32,32,32,78,250,18,99,97,110,
- 39,116,32,102,105,110,100,32,109,111,100,117,108,101,32,169,
- 1,114,48,0,0,0,250,11,95,95,105,110,105,116,95,95,
- 46,112,121,250,3,46,112,121,41,10,114,39,0,0,0,114,
- 3,0,0,0,114,40,0,0,0,114,22,0,0,0,114,31,
- 0,0,0,114,29,0,0,0,114,27,0,0,0,114,60,0,
- 0,0,114,30,0,0,0,218,6,100,101,99,111,100,101,41,
- 6,114,33,0,0,0,114,42,0,0,0,114,43,0,0,0,
- 114,14,0,0,0,218,8,102,117,108,108,112,97,116,104,114,
- 62,0,0,0,114,9,0,0,0,114,9,0,0,0,114,10,
- 0,0,0,218,10,103,101,116,95,115,111,117,114,99,101,233,
- 0,0,0,115,30,0,0,0,10,7,8,1,18,1,10,2,
- 4,1,14,1,10,2,2,2,12,1,2,128,12,1,6,2,
- 2,128,16,1,2,253,115,12,0,0,0,166,5,44,0,172,
- 7,54,7,191,1,54,7,122,22,122,105,112,105,109,112,111,
- 114,116,101,114,46,103,101,116,95,115,111,117,114,99,101,99,
- 2,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,
+ 111,114,10,32,32,32,32,32,32,32,32,105,102,32,105,116,
+ 32,99,111,117,108,100,110,39,116,32,98,101,32,105,109,112,
+ 111,114,116,101,100,46,10,32,32,32,32,32,32,32,32,78,
+ 114,51,0,0,0,114,53,0,0,0,114,9,0,0,0,114,
+ 9,0,0,0,114,10,0,0,0,218,12,103,101,116,95,102,
+ 105,108,101,110,97,109,101,221,0,0,0,115,4,0,0,0,
+ 16,8,4,1,114,11,0,0,0,122,24,122,105,112,105,109,
+ 112,111,114,116,101,114,46,103,101,116,95,102,105,108,101,110,
+ 97,109,101,99,2,0,0,0,0,0,0,0,0,0,0,0,
+ 8,0,0,0,67,0,0,0,115,128,0,0,0,116,0,124,
+ 0,124,1,131,2,125,2,124,2,100,1,117,0,114,18,116,
+ 1,100,2,124,1,155,2,157,2,124,1,100,3,141,2,130,
+ 1,116,2,124,0,124,1,131,2,125,3,124,2,114,32,116,
+ 3,160,4,124,3,100,4,161,2,125,4,110,5,124,3,155,
+ 0,100,5,157,2,125,4,9,0,124,0,106,5,124,4,25,
+ 0,125,5,110,11,35,0,4,0,116,6,121,63,1,0,1,
+ 0,1,0,89,0,100,1,83,0,37,0,116,7,124,0,106,
+ 8,124,5,131,2,160,9,161,0,83,0,119,0,41,6,122,
+ 253,103,101,116,95,115,111,117,114,99,101,40,102,117,108,108,
+ 110,97,109,101,41,32,45,62,32,115,111,117,114,99,101,32,
+ 115,116,114,105,110,103,46,10,10,32,32,32,32,32,32,32,
+ 32,82,101,116,117,114,110,32,116,104,101,32,115,111,117,114,
+ 99,101,32,99,111,100,101,32,102,111,114,32,116,104,101,32,
+ 115,112,101,99,105,102,105,101,100,32,109,111,100,117,108,101,
+ 46,32,82,97,105,115,101,32,90,105,112,73,109,112,111,114,
+ 116,69,114,114,111,114,10,32,32,32,32,32,32,32,32,105,
+ 102,32,116,104,101,32,109,111,100,117,108,101,32,99,111,117,
+ 108,100,110,39,116,32,98,101,32,102,111,117,110,100,44,32,
+ 114,101,116,117,114,110,32,78,111,110,101,32,105,102,32,116,
+ 104,101,32,97,114,99,104,105,118,101,32,100,111,101,115,10,
+ 32,32,32,32,32,32,32,32,99,111,110,116,97,105,110,32,
+ 116,104,101,32,109,111,100,117,108,101,44,32,98,117,116,32,
+ 104,97,115,32,110,111,32,115,111,117,114,99,101,32,102,111,
+ 114,32,105,116,46,10,32,32,32,32,32,32,32,32,78,250,
+ 18,99,97,110,39,116,32,102,105,110,100,32,109,111,100,117,
+ 108,101,32,169,1,114,48,0,0,0,250,11,95,95,105,110,
+ 105,116,95,95,46,112,121,250,3,46,112,121,41,10,114,39,
+ 0,0,0,114,3,0,0,0,114,40,0,0,0,114,22,0,
+ 0,0,114,31,0,0,0,114,29,0,0,0,114,27,0,0,
+ 0,114,60,0,0,0,114,30,0,0,0,218,6,100,101,99,
+ 111,100,101,41,6,114,33,0,0,0,114,42,0,0,0,114,
+ 43,0,0,0,114,14,0,0,0,218,8,102,117,108,108,112,
+ 97,116,104,114,62,0,0,0,114,9,0,0,0,114,9,0,
+ 0,0,114,10,0,0,0,218,10,103,101,116,95,115,111,117,
+ 114,99,101,233,0,0,0,115,30,0,0,0,10,7,8,1,
+ 18,1,10,2,4,1,14,1,10,2,2,2,12,1,2,128,
+ 12,1,6,2,2,128,16,1,2,253,115,12,0,0,0,166,
+ 5,44,0,172,7,54,7,191,1,54,7,122,22,122,105,112,
+ 105,109,112,111,114,116,101,114,46,103,101,116,95,115,111,117,
+ 114,99,101,99,2,0,0,0,0,0,0,0,0,0,0,0,
4,0,0,0,67,0,0,0,115,40,0,0,0,116,0,124,
0,124,1,131,2,125,2,124,2,100,1,117,0,114,18,116,
1,100,2,124,1,155,2,157,2,124,1,100,3,141,2,130,
@@ -449,132 +446,131 @@ const unsigned char _Py_M__zipimport[] = {
3,1,0,0,115,8,0,0,0,10,6,8,1,18,1,4,
1,114,11,0,0,0,122,22,122,105,112,105,109,112,111,114,
116,101,114,46,105,115,95,112,97,99,107,97,103,101,99,2,
- 0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,8,
- 0,0,0,67,0,0,0,115,0,1,0,0,100,1,125,2,
- 116,0,160,1,124,2,116,2,161,2,1,0,116,3,124,0,
- 124,1,131,2,92,3,125,3,125,4,125,5,116,4,106,5,
- 160,6,124,1,161,1,125,6,124,6,100,2,117,0,115,31,
- 116,7,124,6,116,8,131,2,115,40,116,8,124,1,131,1,
- 125,6,124,6,116,4,106,5,124,1,60,0,124,0,124,6,
- 95,9,9,0,124,4,114,62,116,10,124,0,124,1,131,2,
- 125,7,116,11,160,12,124,0,106,13,124,7,161,2,125,8,
- 124,8,103,1,124,6,95,14,116,15,124,6,100,3,131,2,
- 115,70,116,16,124,6,95,16,116,11,160,17,124,6,106,18,
- 124,1,124,5,161,3,1,0,116,19,124,3,124,6,106,18,
- 131,2,1,0,110,10,35,0,1,0,1,0,1,0,116,4,
- 106,5,124,1,61,0,130,0,37,0,9,0,116,4,106,5,
- 124,1,25,0,125,6,110,16,35,0,4,0,116,20,121,127,
- 1,0,1,0,1,0,116,21,100,4,124,1,155,2,100,5,
- 157,3,131,1,130,1,37,0,116,22,160,23,100,6,124,1,
- 124,5,161,3,1,0,124,6,83,0,119,0,41,7,97,64,
- 1,0,0,108,111,97,100,95,109,111,100,117,108,101,40,102,
- 117,108,108,110,97,109,101,41,32,45,62,32,109,111,100,117,
- 108,101,46,10,10,32,32,32,32,32,32,32,32,76,111,97,
- 100,32,116,104,101,32,109,111,100,117,108,101,32,115,112,101,
- 99,105,102,105,101,100,32,98,121,32,39,102,117,108,108,110,
- 97,109,101,39,46,32,39,102,117,108,108,110,97,109,101,39,
- 32,109,117,115,116,32,98,101,32,116,104,101,10,32,32,32,
- 32,32,32,32,32,102,117,108,108,121,32,113,117,97,108,105,
- 102,105,101,100,32,40,100,111,116,116,101,100,41,32,109,111,
- 100,117,108,101,32,110,97,109,101,46,32,73,116,32,114,101,
- 116,117,114,110,115,32,116,104,101,32,105,109,112,111,114,116,
- 101,100,10,32,32,32,32,32,32,32,32,109,111,100,117,108,
- 101,44,32,111,114,32,114,97,105,115,101,115,32,90,105,112,
- 73,109,112,111,114,116,69,114,114,111,114,32,105,102,32,105,
- 116,32,99,111,117,108,100,32,110,111,116,32,98,101,32,105,
- 109,112,111,114,116,101,100,46,10,10,32,32,32,32,32,32,
- 32,32,68,101,112,114,101,99,97,116,101,100,32,115,105,110,
- 99,101,32,80,121,116,104,111,110,32,51,46,49,48,46,32,
- 85,115,101,32,101,120,101,99,95,109,111,100,117,108,101,40,
- 41,32,105,110,115,116,101,97,100,46,10,32,32,32,32,32,
- 32,32,32,122,114,122,105,112,105,109,112,111,114,116,46,122,
- 105,112,105,109,112,111,114,116,101,114,46,108,111,97,100,95,
- 109,111,100,117,108,101,40,41,32,105,115,32,100,101,112,114,
- 101,99,97,116,101,100,32,97,110,100,32,115,108,97,116,101,
- 100,32,102,111,114,32,114,101,109,111,118,97,108,32,105,110,
- 32,80,121,116,104,111,110,32,51,46,49,50,59,32,117,115,
- 101,32,101,120,101,99,95,109,111,100,117,108,101,40,41,32,
- 105,110,115,116,101,97,100,78,218,12,95,95,98,117,105,108,
- 116,105,110,115,95,95,122,14,76,111,97,100,101,100,32,109,
- 111,100,117,108,101,32,122,25,32,110,111,116,32,102,111,117,
- 110,100,32,105,110,32,115,121,115,46,109,111,100,117,108,101,
- 115,122,30,105,109,112,111,114,116,32,123,125,32,35,32,108,
- 111,97,100,101,100,32,102,114,111,109,32,90,105,112,32,123,
- 125,41,24,114,36,0,0,0,114,37,0,0,0,114,38,0,
- 0,0,114,52,0,0,0,218,3,115,121,115,218,7,109,111,
- 100,117,108,101,115,218,3,103,101,116,114,16,0,0,0,218,
- 12,95,109,111,100,117,108,101,95,116,121,112,101,218,10,95,
- 95,108,111,97,100,101,114,95,95,114,40,0,0,0,114,22,
- 0,0,0,114,31,0,0,0,114,30,0,0,0,90,8,95,
- 95,112,97,116,104,95,95,218,7,104,97,115,97,116,116,114,
- 114,72,0,0,0,90,14,95,102,105,120,95,117,112,95,109,
- 111,100,117,108,101,218,8,95,95,100,105,99,116,95,95,218,
- 4,101,120,101,99,114,27,0,0,0,218,11,73,109,112,111,
- 114,116,69,114,114,111,114,114,49,0,0,0,218,16,95,118,
- 101,114,98,111,115,101,95,109,101,115,115,97,103,101,41,9,
- 114,33,0,0,0,114,42,0,0,0,218,3,109,115,103,114,
- 54,0,0,0,114,55,0,0,0,114,44,0,0,0,90,3,
- 109,111,100,114,14,0,0,0,114,70,0,0,0,114,9,0,
- 0,0,114,9,0,0,0,114,10,0,0,0,218,11,108,111,
- 97,100,95,109,111,100,117,108,101,16,1,0,0,115,62,0,
- 0,0,4,9,12,2,16,1,12,1,18,1,8,1,10,1,
- 6,1,2,2,4,1,10,3,14,1,8,1,10,2,6,1,
- 16,1,14,1,2,128,6,1,8,1,2,1,2,128,2,2,
- 12,1,2,128,12,1,16,1,2,128,14,1,4,1,2,253,
- 115,29,0,0,0,172,40,65,21,0,193,21,9,65,30,7,
- 193,32,5,65,38,0,193,38,15,65,53,7,193,63,1,65,
- 53,7,122,23,122,105,112,105,109,112,111,114,116,101,114,46,
- 108,111,97,100,95,109,111,100,117,108,101,99,2,0,0,0,
- 0,0,0,0,0,0,0,0,3,0,0,0,8,0,0,0,
- 67,0,0,0,115,64,0,0,0,9,0,124,0,160,0,124,
- 1,161,1,115,8,100,1,83,0,110,11,35,0,4,0,116,
- 1,121,31,1,0,1,0,1,0,89,0,100,1,83,0,37,
- 0,100,2,100,3,108,2,109,3,125,2,1,0,124,2,124,
- 0,124,1,131,2,83,0,119,0,41,4,122,204,82,101,116,
- 117,114,110,32,116,104,101,32,82,101,115,111,117,114,99,101,
- 82,101,97,100,101,114,32,102,111,114,32,97,32,112,97,99,
- 107,97,103,101,32,105,110,32,97,32,122,105,112,32,102,105,
- 108,101,46,10,10,32,32,32,32,32,32,32,32,73,102,32,
- 39,102,117,108,108,110,97,109,101,39,32,105,115,32,97,32,
- 112,97,99,107,97,103,101,32,119,105,116,104,105,110,32,116,
- 104,101,32,122,105,112,32,102,105,108,101,44,32,114,101,116,
- 117,114,110,32,116,104,101,10,32,32,32,32,32,32,32,32,
- 39,82,101,115,111,117,114,99,101,82,101,97,100,101,114,39,
- 32,111,98,106,101,99,116,32,102,111,114,32,116,104,101,32,
- 112,97,99,107,97,103,101,46,32,32,79,116,104,101,114,119,
- 105,115,101,32,114,101,116,117,114,110,32,78,111,110,101,46,
- 10,32,32,32,32,32,32,32,32,78,114,0,0,0,0,41,
- 1,218,9,90,105,112,82,101,97,100,101,114,41,4,114,47,
- 0,0,0,114,3,0,0,0,90,17,105,109,112,111,114,116,
- 108,105,98,46,114,101,97,100,101,114,115,114,85,0,0,0,
- 41,3,114,33,0,0,0,114,42,0,0,0,114,85,0,0,
- 0,114,9,0,0,0,114,9,0,0,0,114,10,0,0,0,
- 218,19,103,101,116,95,114,101,115,111,117,114,99,101,95,114,
- 101,97,100,101,114,59,1,0,0,115,22,0,0,0,2,6,
- 10,1,4,1,2,255,2,128,12,2,6,1,2,128,12,1,
- 10,1,2,253,115,12,0,0,0,129,5,9,0,137,7,19,
- 7,159,1,19,7,122,31,122,105,112,105,109,112,111,114,116,
- 101,114,46,103,101,116,95,114,101,115,111,117,114,99,101,95,
- 114,101,97,100,101,114,99,1,0,0,0,0,0,0,0,0,
- 0,0,0,1,0,0,0,8,0,0,0,67,0,0,0,115,
- 74,0,0,0,9,0,116,0,124,0,106,1,131,1,124,0,
- 95,2,124,0,106,2,116,3,124,0,106,1,60,0,100,1,
- 83,0,35,0,4,0,116,4,121,36,1,0,1,0,1,0,
- 116,3,160,5,124,0,106,1,100,1,161,2,1,0,100,1,
- 124,0,95,2,89,0,100,1,83,0,37,0,119,0,41,2,
- 122,41,82,101,108,111,97,100,32,116,104,101,32,102,105,108,
- 101,32,100,97,116,97,32,111,102,32,116,104,101,32,97,114,
- 99,104,105,118,101,32,112,97,116,104,46,78,41,6,114,28,
- 0,0,0,114,30,0,0,0,114,29,0,0,0,114,26,0,
- 0,0,114,3,0,0,0,218,3,112,111,112,169,1,114,33,
- 0,0,0,114,9,0,0,0,114,9,0,0,0,114,10,0,
- 0,0,218,17,105,110,118,97,108,105,100,97,116,101,95,99,
- 97,99,104,101,115,74,1,0,0,115,18,0,0,0,2,2,
- 12,1,16,1,2,128,12,1,14,1,12,1,2,128,2,254,
- 115,12,0,0,0,129,12,15,0,143,17,35,7,164,1,35,
- 7,122,29,122,105,112,105,109,112,111,114,116,101,114,46,105,
- 110,118,97,108,105,100,97,116,101,95,99,97,99,104,101,115,
- 99,1,0,0,0,0,0,0,0,0,0,0,0,1,0,0,
+ 0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,67,
+ 0,0,0,115,0,1,0,0,100,1,125,2,116,0,160,1,
+ 124,2,116,2,161,2,1,0,116,3,124,0,124,1,131,2,
+ 92,3,125,3,125,4,125,5,116,4,106,5,160,6,124,1,
+ 161,1,125,6,124,6,100,2,117,0,115,31,116,7,124,6,
+ 116,8,131,2,115,40,116,8,124,1,131,1,125,6,124,6,
+ 116,4,106,5,124,1,60,0,124,0,124,6,95,9,9,0,
+ 124,4,114,62,116,10,124,0,124,1,131,2,125,7,116,11,
+ 160,12,124,0,106,13,124,7,161,2,125,8,124,8,103,1,
+ 124,6,95,14,116,15,124,6,100,3,131,2,115,70,116,16,
+ 124,6,95,16,116,11,160,17,124,6,106,18,124,1,124,5,
+ 161,3,1,0,116,19,124,3,124,6,106,18,131,2,1,0,
+ 110,10,35,0,1,0,1,0,1,0,116,4,106,5,124,1,
+ 61,0,130,0,37,0,9,0,116,4,106,5,124,1,25,0,
+ 125,6,110,16,35,0,4,0,116,20,121,127,1,0,1,0,
+ 1,0,116,21,100,4,124,1,155,2,100,5,157,3,131,1,
+ 130,1,37,0,116,22,160,23,100,6,124,1,124,5,161,3,
+ 1,0,124,6,83,0,119,0,41,7,97,64,1,0,0,108,
+ 111,97,100,95,109,111,100,117,108,101,40,102,117,108,108,110,
+ 97,109,101,41,32,45,62,32,109,111,100,117,108,101,46,10,
+ 10,32,32,32,32,32,32,32,32,76,111,97,100,32,116,104,
+ 101,32,109,111,100,117,108,101,32,115,112,101,99,105,102,105,
+ 101,100,32,98,121,32,39,102,117,108,108,110,97,109,101,39,
+ 46,32,39,102,117,108,108,110,97,109,101,39,32,109,117,115,
+ 116,32,98,101,32,116,104,101,10,32,32,32,32,32,32,32,
+ 32,102,117,108,108,121,32,113,117,97,108,105,102,105,101,100,
+ 32,40,100,111,116,116,101,100,41,32,109,111,100,117,108,101,
+ 32,110,97,109,101,46,32,73,116,32,114,101,116,117,114,110,
+ 115,32,116,104,101,32,105,109,112,111,114,116,101,100,10,32,
+ 32,32,32,32,32,32,32,109,111,100,117,108,101,44,32,111,
+ 114,32,114,97,105,115,101,115,32,90,105,112,73,109,112,111,
+ 114,116,69,114,114,111,114,32,105,102,32,105,116,32,99,111,
+ 117,108,100,32,110,111,116,32,98,101,32,105,109,112,111,114,
+ 116,101,100,46,10,10,32,32,32,32,32,32,32,32,68,101,
+ 112,114,101,99,97,116,101,100,32,115,105,110,99,101,32,80,
+ 121,116,104,111,110,32,51,46,49,48,46,32,85,115,101,32,
+ 101,120,101,99,95,109,111,100,117,108,101,40,41,32,105,110,
+ 115,116,101,97,100,46,10,32,32,32,32,32,32,32,32,122,
+ 114,122,105,112,105,109,112,111,114,116,46,122,105,112,105,109,
+ 112,111,114,116,101,114,46,108,111,97,100,95,109,111,100,117,
+ 108,101,40,41,32,105,115,32,100,101,112,114,101,99,97,116,
+ 101,100,32,97,110,100,32,115,108,97,116,101,100,32,102,111,
+ 114,32,114,101,109,111,118,97,108,32,105,110,32,80,121,116,
+ 104,111,110,32,51,46,49,50,59,32,117,115,101,32,101,120,
+ 101,99,95,109,111,100,117,108,101,40,41,32,105,110,115,116,
+ 101,97,100,78,218,12,95,95,98,117,105,108,116,105,110,115,
+ 95,95,122,14,76,111,97,100,101,100,32,109,111,100,117,108,
+ 101,32,122,25,32,110,111,116,32,102,111,117,110,100,32,105,
+ 110,32,115,121,115,46,109,111,100,117,108,101,115,122,30,105,
+ 109,112,111,114,116,32,123,125,32,35,32,108,111,97,100,101,
+ 100,32,102,114,111,109,32,90,105,112,32,123,125,41,24,114,
+ 36,0,0,0,114,37,0,0,0,114,38,0,0,0,114,52,
+ 0,0,0,218,3,115,121,115,218,7,109,111,100,117,108,101,
+ 115,218,3,103,101,116,114,16,0,0,0,218,12,95,109,111,
+ 100,117,108,101,95,116,121,112,101,218,10,95,95,108,111,97,
+ 100,101,114,95,95,114,40,0,0,0,114,22,0,0,0,114,
+ 31,0,0,0,114,30,0,0,0,90,8,95,95,112,97,116,
+ 104,95,95,218,7,104,97,115,97,116,116,114,114,72,0,0,
+ 0,90,14,95,102,105,120,95,117,112,95,109,111,100,117,108,
+ 101,218,8,95,95,100,105,99,116,95,95,218,4,101,120,101,
+ 99,114,27,0,0,0,218,11,73,109,112,111,114,116,69,114,
+ 114,111,114,114,49,0,0,0,218,16,95,118,101,114,98,111,
+ 115,101,95,109,101,115,115,97,103,101,41,9,114,33,0,0,
+ 0,114,42,0,0,0,218,3,109,115,103,114,54,0,0,0,
+ 114,55,0,0,0,114,44,0,0,0,90,3,109,111,100,114,
+ 14,0,0,0,114,70,0,0,0,114,9,0,0,0,114,9,
+ 0,0,0,114,10,0,0,0,218,11,108,111,97,100,95,109,
+ 111,100,117,108,101,16,1,0,0,115,62,0,0,0,4,9,
+ 12,2,16,1,12,1,18,1,8,1,10,1,6,1,2,2,
+ 4,1,10,3,14,1,8,1,10,2,6,1,16,1,14,1,
+ 2,128,6,1,8,1,2,1,2,128,2,2,12,1,2,128,
+ 12,1,16,1,2,128,14,1,4,1,2,253,115,29,0,0,
+ 0,172,40,65,21,0,193,21,9,65,30,7,193,32,5,65,
+ 38,0,193,38,15,65,53,7,193,63,1,65,53,7,122,23,
+ 122,105,112,105,109,112,111,114,116,101,114,46,108,111,97,100,
+ 95,109,111,100,117,108,101,99,2,0,0,0,0,0,0,0,
+ 0,0,0,0,8,0,0,0,67,0,0,0,115,64,0,0,
+ 0,9,0,124,0,160,0,124,1,161,1,115,8,100,1,83,
+ 0,110,11,35,0,4,0,116,1,121,31,1,0,1,0,1,
+ 0,89,0,100,1,83,0,37,0,100,2,100,3,108,2,109,
+ 3,125,2,1,0,124,2,124,0,124,1,131,2,83,0,119,
+ 0,41,4,122,204,82,101,116,117,114,110,32,116,104,101,32,
+ 82,101,115,111,117,114,99,101,82,101,97,100,101,114,32,102,
+ 111,114,32,97,32,112,97,99,107,97,103,101,32,105,110,32,
+ 97,32,122,105,112,32,102,105,108,101,46,10,10,32,32,32,
+ 32,32,32,32,32,73,102,32,39,102,117,108,108,110,97,109,
+ 101,39,32,105,115,32,97,32,112,97,99,107,97,103,101,32,
+ 119,105,116,104,105,110,32,116,104,101,32,122,105,112,32,102,
+ 105,108,101,44,32,114,101,116,117,114,110,32,116,104,101,10,
+ 32,32,32,32,32,32,32,32,39,82,101,115,111,117,114,99,
+ 101,82,101,97,100,101,114,39,32,111,98,106,101,99,116,32,
+ 102,111,114,32,116,104,101,32,112,97,99,107,97,103,101,46,
+ 32,32,79,116,104,101,114,119,105,115,101,32,114,101,116,117,
+ 114,110,32,78,111,110,101,46,10,32,32,32,32,32,32,32,
+ 32,78,114,0,0,0,0,41,1,218,9,90,105,112,82,101,
+ 97,100,101,114,41,4,114,47,0,0,0,114,3,0,0,0,
+ 90,17,105,109,112,111,114,116,108,105,98,46,114,101,97,100,
+ 101,114,115,114,85,0,0,0,41,3,114,33,0,0,0,114,
+ 42,0,0,0,114,85,0,0,0,114,9,0,0,0,114,9,
+ 0,0,0,114,10,0,0,0,218,19,103,101,116,95,114,101,
+ 115,111,117,114,99,101,95,114,101,97,100,101,114,59,1,0,
+ 0,115,22,0,0,0,2,6,10,1,4,1,2,255,2,128,
+ 12,2,6,1,2,128,12,1,10,1,2,253,115,12,0,0,
+ 0,129,5,9,0,137,7,19,7,159,1,19,7,122,31,122,
+ 105,112,105,109,112,111,114,116,101,114,46,103,101,116,95,114,
+ 101,115,111,117,114,99,101,95,114,101,97,100,101,114,99,1,
+ 0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,67,
+ 0,0,0,115,74,0,0,0,9,0,116,0,124,0,106,1,
+ 131,1,124,0,95,2,124,0,106,2,116,3,124,0,106,1,
+ 60,0,100,1,83,0,35,0,4,0,116,4,121,36,1,0,
+ 1,0,1,0,116,3,160,5,124,0,106,1,100,1,161,2,
+ 1,0,100,1,124,0,95,2,89,0,100,1,83,0,37,0,
+ 119,0,41,2,122,41,82,101,108,111,97,100,32,116,104,101,
+ 32,102,105,108,101,32,100,97,116,97,32,111,102,32,116,104,
+ 101,32,97,114,99,104,105,118,101,32,112,97,116,104,46,78,
+ 41,6,114,28,0,0,0,114,30,0,0,0,114,29,0,0,
+ 0,114,26,0,0,0,114,3,0,0,0,218,3,112,111,112,
+ 169,1,114,33,0,0,0,114,9,0,0,0,114,9,0,0,
+ 0,114,10,0,0,0,218,17,105,110,118,97,108,105,100,97,
+ 116,101,95,99,97,99,104,101,115,74,1,0,0,115,18,0,
+ 0,0,2,2,12,1,16,1,2,128,12,1,14,1,12,1,
+ 2,128,2,254,115,12,0,0,0,129,12,15,0,143,17,35,
+ 7,164,1,35,7,122,29,122,105,112,105,109,112,111,114,116,
+ 101,114,46,105,110,118,97,108,105,100,97,116,101,95,99,97,
+ 99,104,101,115,99,1,0,0,0,0,0,0,0,0,0,0,
0,5,0,0,0,67,0,0,0,115,24,0,0,0,100,1,
124,0,106,0,155,0,116,1,155,0,124,0,106,2,155,0,
100,2,157,5,83,0,41,3,78,122,21,60,122,105,112,105,
@@ -598,37 +594,36 @@ const unsigned char _Py_M__zipimport[] = {
105,110,105,116,95,95,46,112,121,99,84,114,67,0,0,0,
70,41,3,122,4,46,112,121,99,84,70,41,3,114,68,0,
0,0,70,70,99,2,0,0,0,0,0,0,0,0,0,0,
- 0,2,0,0,0,4,0,0,0,67,0,0,0,115,20,0,
- 0,0,124,0,106,0,124,1,160,1,100,1,161,1,100,2,
- 25,0,23,0,83,0,41,3,78,218,1,46,233,2,0,0,
- 0,41,2,114,32,0,0,0,218,10,114,112,97,114,116,105,
- 116,105,111,110,41,2,114,33,0,0,0,114,42,0,0,0,
- 114,9,0,0,0,114,9,0,0,0,114,10,0,0,0,114,
- 40,0,0,0,102,1,0,0,115,2,0,0,0,20,1,114,
- 11,0,0,0,114,40,0,0,0,99,2,0,0,0,0,0,
- 0,0,0,0,0,0,3,0,0,0,2,0,0,0,67,0,
- 0,0,115,18,0,0,0,124,1,116,0,23,0,125,2,124,
- 2,124,0,106,1,118,0,83,0,114,91,0,0,0,41,2,
- 114,21,0,0,0,114,29,0,0,0,41,3,114,33,0,0,
- 0,114,14,0,0,0,90,7,100,105,114,112,97,116,104,114,
- 9,0,0,0,114,9,0,0,0,114,10,0,0,0,114,41,
- 0,0,0,106,1,0,0,115,4,0,0,0,8,4,10,2,
- 114,11,0,0,0,114,41,0,0,0,99,2,0,0,0,0,
- 0,0,0,0,0,0,0,7,0,0,0,4,0,0,0,67,
- 0,0,0,115,56,0,0,0,116,0,124,0,124,1,131,2,
- 125,2,116,1,68,0,93,18,92,3,125,3,125,4,125,5,
- 124,2,124,3,23,0,125,6,124,6,124,0,106,2,118,0,
- 114,25,124,5,2,0,1,0,83,0,113,7,100,0,83,0,
- 114,91,0,0,0,41,3,114,40,0,0,0,218,16,95,122,
- 105,112,95,115,101,97,114,99,104,111,114,100,101,114,114,29,
- 0,0,0,41,7,114,33,0,0,0,114,42,0,0,0,114,
- 14,0,0,0,218,6,115,117,102,102,105,120,218,10,105,115,
- 98,121,116,101,99,111,100,101,114,55,0,0,0,114,70,0,
- 0,0,114,9,0,0,0,114,9,0,0,0,114,10,0,0,
- 0,114,39,0,0,0,115,1,0,0,115,14,0,0,0,10,
- 1,14,1,8,1,10,1,8,1,2,255,4,2,114,11,0,
- 0,0,114,39,0,0,0,99,1,0,0,0,0,0,0,0,
- 0,0,0,0,26,0,0,0,9,0,0,0,67,0,0,0,
+ 0,4,0,0,0,67,0,0,0,115,20,0,0,0,124,0,
+ 106,0,124,1,160,1,100,1,161,1,100,2,25,0,23,0,
+ 83,0,41,3,78,218,1,46,233,2,0,0,0,41,2,114,
+ 32,0,0,0,218,10,114,112,97,114,116,105,116,105,111,110,
+ 41,2,114,33,0,0,0,114,42,0,0,0,114,9,0,0,
+ 0,114,9,0,0,0,114,10,0,0,0,114,40,0,0,0,
+ 102,1,0,0,115,2,0,0,0,20,1,114,11,0,0,0,
+ 114,40,0,0,0,99,2,0,0,0,0,0,0,0,0,0,
+ 0,0,2,0,0,0,67,0,0,0,115,18,0,0,0,124,
+ 1,116,0,23,0,125,2,124,2,124,0,106,1,118,0,83,
+ 0,114,91,0,0,0,41,2,114,21,0,0,0,114,29,0,
+ 0,0,41,3,114,33,0,0,0,114,14,0,0,0,90,7,
+ 100,105,114,112,97,116,104,114,9,0,0,0,114,9,0,0,
+ 0,114,10,0,0,0,114,41,0,0,0,106,1,0,0,115,
+ 4,0,0,0,8,4,10,2,114,11,0,0,0,114,41,0,
+ 0,0,99,2,0,0,0,0,0,0,0,0,0,0,0,4,
+ 0,0,0,67,0,0,0,115,56,0,0,0,116,0,124,0,
+ 124,1,131,2,125,2,116,1,68,0,93,18,92,3,125,3,
+ 125,4,125,5,124,2,124,3,23,0,125,6,124,6,124,0,
+ 106,2,118,0,114,25,124,5,2,0,1,0,83,0,113,7,
+ 100,0,83,0,114,91,0,0,0,41,3,114,40,0,0,0,
+ 218,16,95,122,105,112,95,115,101,97,114,99,104,111,114,100,
+ 101,114,114,29,0,0,0,41,7,114,33,0,0,0,114,42,
+ 0,0,0,114,14,0,0,0,218,6,115,117,102,102,105,120,
+ 218,10,105,115,98,121,116,101,99,111,100,101,114,55,0,0,
+ 0,114,70,0,0,0,114,9,0,0,0,114,9,0,0,0,
+ 114,10,0,0,0,114,39,0,0,0,115,1,0,0,115,14,
+ 0,0,0,10,1,14,1,8,1,10,1,8,1,2,255,4,
+ 2,114,11,0,0,0,114,39,0,0,0,99,1,0,0,0,
+ 0,0,0,0,0,0,0,0,9,0,0,0,67,0,0,0,
115,248,4,0,0,9,0,116,0,160,1,124,0,161,1,125,
1,110,18,35,0,4,0,116,2,144,2,121,123,1,0,1,
0,1,0,116,3,100,1,124,0,155,2,157,2,124,0,100,
@@ -825,100 +820,99 @@ const unsigned char _Py_M__zipimport[] = {
206,181,226,136,169,226,137,161,194,177,226,137,165,226,137,164,
226,140,160,226,140,161,195,183,226,137,136,194,176,226,136,153,
194,183,226,136,154,226,129,191,194,178,226,150,160,194,160,99,
- 0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,
- 8,0,0,0,67,0,0,0,115,110,0,0,0,116,0,114,
- 11,116,1,160,2,100,1,161,1,1,0,116,3,100,2,131,
- 1,130,1,100,3,97,0,9,0,100,4,100,5,108,4,109,
- 5,125,0,1,0,110,17,35,0,4,0,116,6,121,54,1,
- 0,1,0,1,0,116,1,160,2,100,1,161,1,1,0,116,
- 3,100,2,131,1,130,1,37,0,9,0,100,6,97,0,110,
- 5,35,0,100,6,97,0,119,0,37,0,116,1,160,2,100,
- 7,161,1,1,0,124,0,83,0,119,0,41,8,78,122,27,
- 122,105,112,105,109,112,111,114,116,58,32,122,108,105,98,32,
- 85,78,65,86,65,73,76,65,66,76,69,250,41,99,97,110,
- 39,116,32,100,101,99,111,109,112,114,101,115,115,32,100,97,
- 116,97,59,32,122,108,105,98,32,110,111,116,32,97,118,97,
- 105,108,97,98,108,101,84,114,0,0,0,0,169,1,218,10,
- 100,101,99,111,109,112,114,101,115,115,70,122,25,122,105,112,
- 105,109,112,111,114,116,58,32,122,108,105,98,32,97,118,97,
- 105,108,97,98,108,101,41,7,218,15,95,105,109,112,111,114,
- 116,105,110,103,95,122,108,105,98,114,49,0,0,0,114,82,
- 0,0,0,114,3,0,0,0,90,4,122,108,105,98,114,148,
- 0,0,0,218,9,69,120,99,101,112,116,105,111,110,114,147,
- 0,0,0,114,9,0,0,0,114,9,0,0,0,114,10,0,
- 0,0,218,20,95,103,101,116,95,100,101,99,111,109,112,114,
- 101,115,115,95,102,117,110,99,48,2,0,0,115,36,0,0,
- 0,4,2,10,3,8,1,4,2,2,1,14,1,2,128,12,
- 1,10,1,8,1,2,128,2,253,6,5,2,128,8,0,10,
- 2,4,1,2,249,115,24,0,0,0,142,6,21,0,148,1,
- 42,0,149,16,37,7,165,1,42,0,170,4,46,7,182,1,
- 37,7,114,151,0,0,0,99,2,0,0,0,0,0,0,0,
- 0,0,0,0,17,0,0,0,9,0,0,0,67,0,0,0,
- 115,132,1,0,0,124,1,92,8,125,2,125,3,125,4,125,
- 5,125,6,125,7,125,8,125,9,124,4,100,1,107,0,114,
- 18,116,0,100,2,131,1,130,1,116,1,160,2,124,0,161,
- 1,53,0,125,10,9,0,124,10,160,3,124,6,161,1,1,
- 0,110,17,35,0,4,0,116,4,121,193,1,0,1,0,1,
- 0,116,0,100,3,124,0,155,2,157,2,124,0,100,4,141,
- 2,130,1,37,0,124,10,160,5,100,5,161,1,125,11,116,
- 6,124,11,131,1,100,5,107,3,114,63,116,7,100,6,131,
- 1,130,1,124,11,100,0,100,7,133,2,25,0,100,8,107,
- 3,114,80,116,0,100,9,124,0,155,2,157,2,124,0,100,
- 4,141,2,130,1,116,8,124,11,100,10,100,11,133,2,25,
- 0,131,1,125,12,116,8,124,11,100,11,100,5,133,2,25,
- 0,131,1,125,13,100,5,124,12,23,0,124,13,23,0,125,
- 14,124,6,124,14,55,0,125,6,9,0,124,10,160,3,124,
- 6,161,1,1,0,110,17,35,0,4,0,116,4,121,192,1,
- 0,1,0,1,0,116,0,100,3,124,0,155,2,157,2,124,
- 0,100,4,141,2,130,1,37,0,124,10,160,5,124,4,161,
- 1,125,15,116,6,124,15,131,1,124,4,107,3,114,145,116,
- 4,100,12,131,1,130,1,9,0,100,0,4,0,4,0,131,
- 3,1,0,110,11,35,0,49,0,115,157,119,4,37,0,1,
- 0,1,0,1,0,89,0,1,0,1,0,124,3,100,1,107,
- 2,114,169,124,15,83,0,9,0,116,9,131,0,125,16,110,
- 12,35,0,4,0,116,10,121,191,1,0,1,0,1,0,116,
- 0,100,13,131,1,130,1,37,0,124,16,124,15,100,14,131,
- 2,83,0,119,0,119,0,119,0,41,15,78,114,0,0,0,
- 0,122,18,110,101,103,97,116,105,118,101,32,100,97,116,97,
- 32,115,105,122,101,114,99,0,0,0,114,13,0,0,0,114,
- 111,0,0,0,114,105,0,0,0,114,100,0,0,0,115,4,
- 0,0,0,80,75,3,4,122,23,98,97,100,32,108,111,99,
- 97,108,32,102,105,108,101,32,104,101,97,100,101,114,58,32,
- 233,26,0,0,0,114,110,0,0,0,122,26,122,105,112,105,
- 109,112,111,114,116,58,32,99,97,110,39,116,32,114,101,97,
- 100,32,100,97,116,97,114,146,0,0,0,105,241,255,255,255,
- 41,11,114,3,0,0,0,114,117,0,0,0,114,118,0,0,
- 0,114,119,0,0,0,114,23,0,0,0,114,121,0,0,0,
- 114,59,0,0,0,114,126,0,0,0,114,1,0,0,0,114,
- 151,0,0,0,114,150,0,0,0,41,17,114,30,0,0,0,
- 114,62,0,0,0,90,8,100,97,116,97,112,97,116,104,114,
- 137,0,0,0,114,141,0,0,0,114,132,0,0,0,114,144,
- 0,0,0,114,138,0,0,0,114,139,0,0,0,114,140,0,
- 0,0,114,130,0,0,0,114,131,0,0,0,114,142,0,0,
- 0,114,143,0,0,0,114,134,0,0,0,90,8,114,97,119,
- 95,100,97,116,97,114,148,0,0,0,114,9,0,0,0,114,
- 9,0,0,0,114,10,0,0,0,114,60,0,0,0,69,2,
- 0,0,115,86,0,0,0,20,1,8,1,8,1,12,2,2,
- 2,12,1,2,128,12,1,18,1,2,128,10,1,12,1,8,
- 1,16,2,18,2,16,2,16,1,12,1,8,1,2,1,12,
- 1,2,128,12,1,18,1,2,128,10,1,12,1,8,1,2,
- 255,12,233,22,128,8,26,4,2,2,3,8,1,2,128,12,
- 1,8,1,2,128,10,1,2,254,2,243,2,240,115,88,0,
- 0,0,151,1,66,24,3,153,5,31,2,158,1,66,24,3,
- 159,16,47,9,175,59,66,24,3,193,43,5,65,49,2,193,
- 48,1,66,24,3,193,49,16,66,1,9,194,1,16,66,24,
- 3,194,24,4,66,28,11,194,29,3,66,28,11,194,42,3,
- 66,46,0,194,46,11,66,57,7,194,63,1,66,57,7,195,
- 0,1,66,1,9,195,1,1,47,9,114,60,0,0,0,99,
- 2,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,
- 3,0,0,0,67,0,0,0,115,16,0,0,0,116,0,124,
- 0,124,1,24,0,131,1,100,1,107,1,83,0,41,2,78,
- 114,5,0,0,0,41,1,218,3,97,98,115,41,2,90,2,
- 116,49,90,2,116,50,114,9,0,0,0,114,9,0,0,0,
- 114,10,0,0,0,218,9,95,101,113,95,109,116,105,109,101,
- 115,2,0,0,115,2,0,0,0,16,2,114,11,0,0,0,
- 114,154,0,0,0,99,5,0,0,0,0,0,0,0,0,0,
- 0,0,14,0,0,0,6,0,0,0,67,0,0,0,115,254,
+ 0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,
+ 67,0,0,0,115,110,0,0,0,116,0,114,11,116,1,160,
+ 2,100,1,161,1,1,0,116,3,100,2,131,1,130,1,100,
+ 3,97,0,9,0,100,4,100,5,108,4,109,5,125,0,1,
+ 0,110,17,35,0,4,0,116,6,121,54,1,0,1,0,1,
+ 0,116,1,160,2,100,1,161,1,1,0,116,3,100,2,131,
+ 1,130,1,37,0,9,0,100,6,97,0,110,5,35,0,100,
+ 6,97,0,119,0,37,0,116,1,160,2,100,7,161,1,1,
+ 0,124,0,83,0,119,0,41,8,78,122,27,122,105,112,105,
+ 109,112,111,114,116,58,32,122,108,105,98,32,85,78,65,86,
+ 65,73,76,65,66,76,69,250,41,99,97,110,39,116,32,100,
+ 101,99,111,109,112,114,101,115,115,32,100,97,116,97,59,32,
+ 122,108,105,98,32,110,111,116,32,97,118,97,105,108,97,98,
+ 108,101,84,114,0,0,0,0,169,1,218,10,100,101,99,111,
+ 109,112,114,101,115,115,70,122,25,122,105,112,105,109,112,111,
+ 114,116,58,32,122,108,105,98,32,97,118,97,105,108,97,98,
+ 108,101,41,7,218,15,95,105,109,112,111,114,116,105,110,103,
+ 95,122,108,105,98,114,49,0,0,0,114,82,0,0,0,114,
+ 3,0,0,0,90,4,122,108,105,98,114,148,0,0,0,218,
+ 9,69,120,99,101,112,116,105,111,110,114,147,0,0,0,114,
+ 9,0,0,0,114,9,0,0,0,114,10,0,0,0,218,20,
+ 95,103,101,116,95,100,101,99,111,109,112,114,101,115,115,95,
+ 102,117,110,99,48,2,0,0,115,36,0,0,0,4,2,10,
+ 3,8,1,4,2,2,1,14,1,2,128,12,1,10,1,8,
+ 1,2,128,2,253,6,5,2,128,8,0,10,2,4,1,2,
+ 249,115,24,0,0,0,142,6,21,0,148,1,42,0,149,16,
+ 37,7,165,1,42,0,170,4,46,7,182,1,37,7,114,151,
+ 0,0,0,99,2,0,0,0,0,0,0,0,0,0,0,0,
+ 9,0,0,0,67,0,0,0,115,132,1,0,0,124,1,92,
+ 8,125,2,125,3,125,4,125,5,125,6,125,7,125,8,125,
+ 9,124,4,100,1,107,0,114,18,116,0,100,2,131,1,130,
+ 1,116,1,160,2,124,0,161,1,53,0,125,10,9,0,124,
+ 10,160,3,124,6,161,1,1,0,110,17,35,0,4,0,116,
+ 4,121,193,1,0,1,0,1,0,116,0,100,3,124,0,155,
+ 2,157,2,124,0,100,4,141,2,130,1,37,0,124,10,160,
+ 5,100,5,161,1,125,11,116,6,124,11,131,1,100,5,107,
+ 3,114,63,116,7,100,6,131,1,130,1,124,11,100,0,100,
+ 7,133,2,25,0,100,8,107,3,114,80,116,0,100,9,124,
+ 0,155,2,157,2,124,0,100,4,141,2,130,1,116,8,124,
+ 11,100,10,100,11,133,2,25,0,131,1,125,12,116,8,124,
+ 11,100,11,100,5,133,2,25,0,131,1,125,13,100,5,124,
+ 12,23,0,124,13,23,0,125,14,124,6,124,14,55,0,125,
+ 6,9,0,124,10,160,3,124,6,161,1,1,0,110,17,35,
+ 0,4,0,116,4,121,192,1,0,1,0,1,0,116,0,100,
+ 3,124,0,155,2,157,2,124,0,100,4,141,2,130,1,37,
+ 0,124,10,160,5,124,4,161,1,125,15,116,6,124,15,131,
+ 1,124,4,107,3,114,145,116,4,100,12,131,1,130,1,9,
+ 0,100,0,4,0,4,0,131,3,1,0,110,11,35,0,49,
+ 0,115,157,119,4,37,0,1,0,1,0,1,0,89,0,1,
+ 0,1,0,124,3,100,1,107,2,114,169,124,15,83,0,9,
+ 0,116,9,131,0,125,16,110,12,35,0,4,0,116,10,121,
+ 191,1,0,1,0,1,0,116,0,100,13,131,1,130,1,37,
+ 0,124,16,124,15,100,14,131,2,83,0,119,0,119,0,119,
+ 0,41,15,78,114,0,0,0,0,122,18,110,101,103,97,116,
+ 105,118,101,32,100,97,116,97,32,115,105,122,101,114,99,0,
+ 0,0,114,13,0,0,0,114,111,0,0,0,114,105,0,0,
+ 0,114,100,0,0,0,115,4,0,0,0,80,75,3,4,122,
+ 23,98,97,100,32,108,111,99,97,108,32,102,105,108,101,32,
+ 104,101,97,100,101,114,58,32,233,26,0,0,0,114,110,0,
+ 0,0,122,26,122,105,112,105,109,112,111,114,116,58,32,99,
+ 97,110,39,116,32,114,101,97,100,32,100,97,116,97,114,146,
+ 0,0,0,105,241,255,255,255,41,11,114,3,0,0,0,114,
+ 117,0,0,0,114,118,0,0,0,114,119,0,0,0,114,23,
+ 0,0,0,114,121,0,0,0,114,59,0,0,0,114,126,0,
+ 0,0,114,1,0,0,0,114,151,0,0,0,114,150,0,0,
+ 0,41,17,114,30,0,0,0,114,62,0,0,0,90,8,100,
+ 97,116,97,112,97,116,104,114,137,0,0,0,114,141,0,0,
+ 0,114,132,0,0,0,114,144,0,0,0,114,138,0,0,0,
+ 114,139,0,0,0,114,140,0,0,0,114,130,0,0,0,114,
+ 131,0,0,0,114,142,0,0,0,114,143,0,0,0,114,134,
+ 0,0,0,90,8,114,97,119,95,100,97,116,97,114,148,0,
+ 0,0,114,9,0,0,0,114,9,0,0,0,114,10,0,0,
+ 0,114,60,0,0,0,69,2,0,0,115,86,0,0,0,20,
+ 1,8,1,8,1,12,2,2,2,12,1,2,128,12,1,18,
+ 1,2,128,10,1,12,1,8,1,16,2,18,2,16,2,16,
+ 1,12,1,8,1,2,1,12,1,2,128,12,1,18,1,2,
+ 128,10,1,12,1,8,1,2,255,12,233,22,128,8,26,4,
+ 2,2,3,8,1,2,128,12,1,8,1,2,128,10,1,2,
+ 254,2,243,2,240,115,88,0,0,0,151,1,66,24,3,153,
+ 5,31,2,158,1,66,24,3,159,16,47,9,175,59,66,24,
+ 3,193,43,5,65,49,2,193,48,1,66,24,3,193,49,16,
+ 66,1,9,194,1,16,66,24,3,194,24,4,66,28,11,194,
+ 29,3,66,28,11,194,42,3,66,46,0,194,46,11,66,57,
+ 7,194,63,1,66,57,7,195,0,1,66,1,9,195,1,1,
+ 47,9,114,60,0,0,0,99,2,0,0,0,0,0,0,0,
+ 0,0,0,0,3,0,0,0,67,0,0,0,115,16,0,0,
+ 0,116,0,124,0,124,1,24,0,131,1,100,1,107,1,83,
+ 0,41,2,78,114,5,0,0,0,41,1,218,3,97,98,115,
+ 41,2,90,2,116,49,90,2,116,50,114,9,0,0,0,114,
+ 9,0,0,0,114,10,0,0,0,218,9,95,101,113,95,109,
+ 116,105,109,101,115,2,0,0,115,2,0,0,0,16,2,114,
+ 11,0,0,0,114,154,0,0,0,99,5,0,0,0,0,0,
+ 0,0,0,0,0,0,6,0,0,0,67,0,0,0,115,254,
0,0,0,124,3,124,2,100,1,156,2,125,5,116,0,160,
1,124,4,124,3,124,5,161,3,125,6,124,6,100,2,64,
0,100,3,107,3,125,7,124,7,114,63,124,6,100,4,64,
@@ -972,42 +966,41 @@ const unsigned char _Py_M__zipimport[] = {
4,255,2,128,8,4,6,255,4,3,22,3,18,1,2,255,
4,2,8,1,4,255,4,2,18,2,10,1,16,1,4,1,
114,11,0,0,0,114,162,0,0,0,99,1,0,0,0,0,
- 0,0,0,0,0,0,0,1,0,0,0,4,0,0,0,67,
- 0,0,0,115,28,0,0,0,124,0,160,0,100,1,100,2,
- 161,2,125,0,124,0,160,0,100,3,100,2,161,2,125,0,
- 124,0,83,0,41,4,78,115,2,0,0,0,13,10,243,1,
- 0,0,0,10,243,1,0,0,0,13,41,1,114,20,0,0,
- 0,41,1,218,6,115,111,117,114,99,101,114,9,0,0,0,
- 114,9,0,0,0,114,10,0,0,0,218,23,95,110,111,114,
- 109,97,108,105,122,101,95,108,105,110,101,95,101,110,100,105,
- 110,103,115,168,2,0,0,115,6,0,0,0,12,1,12,1,
- 4,1,114,11,0,0,0,114,166,0,0,0,99,2,0,0,
- 0,0,0,0,0,0,0,0,0,2,0,0,0,6,0,0,
- 0,67,0,0,0,115,24,0,0,0,116,0,124,1,131,1,
- 125,1,116,1,124,1,124,0,100,1,100,2,100,3,141,4,
- 83,0,41,4,78,114,80,0,0,0,84,41,1,90,12,100,
- 111,110,116,95,105,110,104,101,114,105,116,41,2,114,166,0,
- 0,0,218,7,99,111,109,112,105,108,101,41,2,114,61,0,
- 0,0,114,165,0,0,0,114,9,0,0,0,114,9,0,0,
- 0,114,10,0,0,0,218,15,95,99,111,109,112,105,108,101,
- 95,115,111,117,114,99,101,175,2,0,0,115,4,0,0,0,
- 8,1,16,1,114,11,0,0,0,114,168,0,0,0,99,2,
- 0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,11,
- 0,0,0,67,0,0,0,115,68,0,0,0,116,0,160,1,
- 124,0,100,1,63,0,100,2,23,0,124,0,100,3,63,0,
- 100,4,64,0,124,0,100,5,64,0,124,1,100,6,63,0,
- 124,1,100,3,63,0,100,7,64,0,124,1,100,5,64,0,
- 100,8,20,0,100,9,100,9,100,9,102,9,161,1,83,0,
- 41,10,78,233,9,0,0,0,105,188,7,0,0,233,5,0,
- 0,0,233,15,0,0,0,233,31,0,0,0,233,11,0,0,
- 0,233,63,0,0,0,114,94,0,0,0,114,15,0,0,0,
- 41,2,114,138,0,0,0,90,6,109,107,116,105,109,101,41,
- 2,218,1,100,114,145,0,0,0,114,9,0,0,0,114,9,
- 0,0,0,114,10,0,0,0,218,14,95,112,97,114,115,101,
- 95,100,111,115,116,105,109,101,181,2,0,0,115,18,0,0,
- 0,4,1,10,1,10,1,6,1,6,1,10,1,10,1,6,
- 1,6,249,114,11,0,0,0,114,176,0,0,0,99,2,0,
- 0,0,0,0,0,0,0,0,0,0,6,0,0,0,10,0,
+ 0,0,0,0,0,0,0,4,0,0,0,67,0,0,0,115,
+ 28,0,0,0,124,0,160,0,100,1,100,2,161,2,125,0,
+ 124,0,160,0,100,3,100,2,161,2,125,0,124,0,83,0,
+ 41,4,78,115,2,0,0,0,13,10,243,1,0,0,0,10,
+ 243,1,0,0,0,13,41,1,114,20,0,0,0,41,1,218,
+ 6,115,111,117,114,99,101,114,9,0,0,0,114,9,0,0,
+ 0,114,10,0,0,0,218,23,95,110,111,114,109,97,108,105,
+ 122,101,95,108,105,110,101,95,101,110,100,105,110,103,115,168,
+ 2,0,0,115,6,0,0,0,12,1,12,1,4,1,114,11,
+ 0,0,0,114,166,0,0,0,99,2,0,0,0,0,0,0,
+ 0,0,0,0,0,6,0,0,0,67,0,0,0,115,24,0,
+ 0,0,116,0,124,1,131,1,125,1,116,1,124,1,124,0,
+ 100,1,100,2,100,3,141,4,83,0,41,4,78,114,80,0,
+ 0,0,84,41,1,90,12,100,111,110,116,95,105,110,104,101,
+ 114,105,116,41,2,114,166,0,0,0,218,7,99,111,109,112,
+ 105,108,101,41,2,114,61,0,0,0,114,165,0,0,0,114,
+ 9,0,0,0,114,9,0,0,0,114,10,0,0,0,218,15,
+ 95,99,111,109,112,105,108,101,95,115,111,117,114,99,101,175,
+ 2,0,0,115,4,0,0,0,8,1,16,1,114,11,0,0,
+ 0,114,168,0,0,0,99,2,0,0,0,0,0,0,0,0,
+ 0,0,0,11,0,0,0,67,0,0,0,115,68,0,0,0,
+ 116,0,160,1,124,0,100,1,63,0,100,2,23,0,124,0,
+ 100,3,63,0,100,4,64,0,124,0,100,5,64,0,124,1,
+ 100,6,63,0,124,1,100,3,63,0,100,7,64,0,124,1,
+ 100,5,64,0,100,8,20,0,100,9,100,9,100,9,102,9,
+ 161,1,83,0,41,10,78,233,9,0,0,0,105,188,7,0,
+ 0,233,5,0,0,0,233,15,0,0,0,233,31,0,0,0,
+ 233,11,0,0,0,233,63,0,0,0,114,94,0,0,0,114,
+ 15,0,0,0,41,2,114,138,0,0,0,90,6,109,107,116,
+ 105,109,101,41,2,218,1,100,114,145,0,0,0,114,9,0,
+ 0,0,114,9,0,0,0,114,10,0,0,0,218,14,95,112,
+ 97,114,115,101,95,100,111,115,116,105,109,101,181,2,0,0,
+ 115,18,0,0,0,4,1,10,1,10,1,6,1,6,1,10,
+ 1,10,1,6,1,6,249,114,11,0,0,0,114,176,0,0,
+ 0,99,2,0,0,0,0,0,0,0,0,0,0,0,10,0,
0,0,67,0,0,0,115,112,0,0,0,9,0,124,1,100,
1,100,0,133,2,25,0,100,2,118,0,115,11,74,0,130,
1,124,1,100,0,100,1,133,2,25,0,125,1,124,0,106,
@@ -1029,87 +1022,87 @@ const unsigned char _Py_M__zipimport[] = {
1,14,1,2,128,18,1,6,1,2,128,2,255,115,12,0,
0,0,129,39,41,0,169,10,54,7,183,1,54,7,114,158,
0,0,0,99,2,0,0,0,0,0,0,0,0,0,0,0,
- 3,0,0,0,8,0,0,0,67,0,0,0,115,82,0,0,
- 0,124,1,100,1,100,0,133,2,25,0,100,2,118,0,115,
- 10,74,0,130,1,124,1,100,0,100,1,133,2,25,0,125,
- 1,9,0,124,0,106,0,124,1,25,0,125,2,110,11,35,
- 0,4,0,116,1,121,40,1,0,1,0,1,0,89,0,100,
- 0,83,0,37,0,116,2,124,0,106,3,124,2,131,2,83,
- 0,119,0,41,3,78,114,15,0,0,0,114,177,0,0,0,
- 41,4,114,29,0,0,0,114,27,0,0,0,114,60,0,0,
- 0,114,30,0,0,0,41,3,114,33,0,0,0,114,14,0,
- 0,0,114,62,0,0,0,114,9,0,0,0,114,9,0,0,
- 0,114,10,0,0,0,114,156,0,0,0,213,2,0,0,115,
- 20,0,0,0,20,2,12,1,2,2,12,1,2,128,12,1,
- 6,1,2,128,12,2,2,253,115,12,0,0,0,145,5,23,
- 0,151,7,33,7,168,1,33,7,114,156,0,0,0,99,2,
- 0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,9,
- 0,0,0,67,0,0,0,115,14,1,0,0,116,0,124,0,
- 124,1,131,2,125,2,100,0,125,3,116,1,68,0,93,100,
- 92,3,125,4,125,5,125,6,124,2,124,4,23,0,125,7,
- 116,2,160,3,100,1,124,0,106,4,116,5,124,7,100,2,
- 100,3,166,5,1,0,9,0,124,0,106,6,124,7,25,0,
- 125,8,110,10,35,0,4,0,116,7,121,134,1,0,1,0,
- 1,0,89,0,113,9,37,0,124,8,100,4,25,0,125,9,
- 116,8,124,0,106,4,124,8,131,2,125,10,100,0,125,11,
- 124,5,114,89,9,0,116,9,124,0,124,9,124,7,124,1,
- 124,10,131,5,125,11,110,24,35,0,4,0,116,10,121,133,
- 1,0,125,12,1,0,124,12,125,3,89,0,100,0,125,12,
- 126,12,110,10,100,0,125,12,126,12,119,1,37,0,116,11,
- 124,9,124,10,131,2,125,11,124,11,100,0,117,0,114,99,
- 113,9,124,8,100,4,25,0,125,9,124,11,124,6,124,9,
- 102,3,2,0,1,0,83,0,124,3,114,124,100,5,124,3,
- 155,0,157,2,125,13,116,12,124,13,124,1,100,6,141,2,
- 124,3,130,2,116,12,100,7,124,1,155,2,157,2,124,1,
- 100,6,141,2,130,1,119,0,119,0,41,8,78,122,13,116,
- 114,121,105,110,103,32,123,125,123,125,123,125,114,94,0,0,
- 0,41,1,90,9,118,101,114,98,111,115,105,116,121,114,0,
- 0,0,0,122,20,109,111,100,117,108,101,32,108,111,97,100,
- 32,102,97,105,108,101,100,58,32,114,66,0,0,0,114,65,
- 0,0,0,41,13,114,40,0,0,0,114,96,0,0,0,114,
- 49,0,0,0,114,82,0,0,0,114,30,0,0,0,114,21,
- 0,0,0,114,29,0,0,0,114,27,0,0,0,114,60,0,
- 0,0,114,162,0,0,0,114,81,0,0,0,114,168,0,0,
- 0,114,3,0,0,0,41,14,114,33,0,0,0,114,42,0,
- 0,0,114,14,0,0,0,90,12,105,109,112,111,114,116,95,
- 101,114,114,111,114,114,97,0,0,0,114,98,0,0,0,114,
- 55,0,0,0,114,70,0,0,0,114,62,0,0,0,114,44,
- 0,0,0,114,133,0,0,0,114,54,0,0,0,90,3,101,
- 120,99,114,83,0,0,0,114,9,0,0,0,114,9,0,0,
- 0,114,10,0,0,0,114,52,0,0,0,228,2,0,0,115,
- 64,0,0,0,10,1,4,1,14,1,8,1,22,1,2,1,
- 12,1,2,128,12,1,4,1,2,128,8,2,12,1,4,1,
- 4,1,2,1,18,1,2,128,12,1,14,1,10,128,10,2,
- 8,1,2,3,8,1,14,1,4,2,10,1,14,1,18,2,
- 2,241,2,247,115,42,0,0,0,158,5,36,2,164,7,45,
- 9,189,8,65,6,2,193,6,7,65,24,9,193,13,2,65,
- 20,9,193,20,4,65,24,9,194,5,1,65,24,9,194,6,
- 1,45,9,114,52,0,0,0,41,46,114,92,0,0,0,90,
- 26,95,102,114,111,122,101,110,95,105,109,112,111,114,116,108,
- 105,98,95,101,120,116,101,114,110,97,108,114,22,0,0,0,
- 114,1,0,0,0,114,2,0,0,0,90,17,95,102,114,111,
- 122,101,110,95,105,109,112,111,114,116,108,105,98,114,49,0,
- 0,0,114,155,0,0,0,114,117,0,0,0,114,159,0,0,
- 0,114,73,0,0,0,114,138,0,0,0,114,36,0,0,0,
- 90,7,95,95,97,108,108,95,95,114,21,0,0,0,90,15,
- 112,97,116,104,95,115,101,112,97,114,97,116,111,114,115,114,
- 19,0,0,0,114,81,0,0,0,114,3,0,0,0,114,26,
- 0,0,0,218,4,116,121,112,101,114,76,0,0,0,114,120,
- 0,0,0,114,122,0,0,0,114,124,0,0,0,90,13,95,
- 76,111,97,100,101,114,66,97,115,105,99,115,114,4,0,0,
- 0,114,96,0,0,0,114,40,0,0,0,114,41,0,0,0,
- 114,39,0,0,0,114,28,0,0,0,114,129,0,0,0,114,
- 149,0,0,0,114,151,0,0,0,114,60,0,0,0,114,154,
- 0,0,0,114,162,0,0,0,218,8,95,95,99,111,100,101,
- 95,95,114,160,0,0,0,114,166,0,0,0,114,168,0,0,
- 0,114,176,0,0,0,114,158,0,0,0,114,156,0,0,0,
- 114,52,0,0,0,114,9,0,0,0,114,9,0,0,0,114,
- 9,0,0,0,114,10,0,0,0,218,8,60,109,111,100,117,
- 108,101,62,1,0,0,0,115,90,0,0,0,4,0,8,16,
- 16,1,8,1,8,1,8,1,8,1,8,1,8,1,8,1,
- 8,2,6,3,14,1,16,3,4,4,8,2,4,2,4,1,
- 4,1,18,2,0,127,0,127,12,50,12,1,2,1,2,1,
- 4,252,8,9,8,4,8,9,8,31,2,126,2,254,4,29,
- 8,5,8,21,8,46,8,8,10,40,8,5,8,7,8,6,
- 8,13,8,19,12,15,114,11,0,0,0,
+ 8,0,0,0,67,0,0,0,115,82,0,0,0,124,1,100,
+ 1,100,0,133,2,25,0,100,2,118,0,115,10,74,0,130,
+ 1,124,1,100,0,100,1,133,2,25,0,125,1,9,0,124,
+ 0,106,0,124,1,25,0,125,2,110,11,35,0,4,0,116,
+ 1,121,40,1,0,1,0,1,0,89,0,100,0,83,0,37,
+ 0,116,2,124,0,106,3,124,2,131,2,83,0,119,0,41,
+ 3,78,114,15,0,0,0,114,177,0,0,0,41,4,114,29,
+ 0,0,0,114,27,0,0,0,114,60,0,0,0,114,30,0,
+ 0,0,41,3,114,33,0,0,0,114,14,0,0,0,114,62,
+ 0,0,0,114,9,0,0,0,114,9,0,0,0,114,10,0,
+ 0,0,114,156,0,0,0,213,2,0,0,115,20,0,0,0,
+ 20,2,12,1,2,2,12,1,2,128,12,1,6,1,2,128,
+ 12,2,2,253,115,12,0,0,0,145,5,23,0,151,7,33,
+ 7,168,1,33,7,114,156,0,0,0,99,2,0,0,0,0,
+ 0,0,0,0,0,0,0,9,0,0,0,67,0,0,0,115,
+ 14,1,0,0,116,0,124,0,124,1,131,2,125,2,100,0,
+ 125,3,116,1,68,0,93,100,92,3,125,4,125,5,125,6,
+ 124,2,124,4,23,0,125,7,116,2,160,3,100,1,124,0,
+ 106,4,116,5,124,7,100,2,100,3,166,5,1,0,9,0,
+ 124,0,106,6,124,7,25,0,125,8,110,10,35,0,4,0,
+ 116,7,121,134,1,0,1,0,1,0,89,0,113,9,37,0,
+ 124,8,100,4,25,0,125,9,116,8,124,0,106,4,124,8,
+ 131,2,125,10,100,0,125,11,124,5,114,89,9,0,116,9,
+ 124,0,124,9,124,7,124,1,124,10,131,5,125,11,110,24,
+ 35,0,4,0,116,10,121,133,1,0,125,12,1,0,124,12,
+ 125,3,89,0,100,0,125,12,126,12,110,10,100,0,125,12,
+ 126,12,119,1,37,0,116,11,124,9,124,10,131,2,125,11,
+ 124,11,100,0,117,0,114,99,113,9,124,8,100,4,25,0,
+ 125,9,124,11,124,6,124,9,102,3,2,0,1,0,83,0,
+ 124,3,114,124,100,5,124,3,155,0,157,2,125,13,116,12,
+ 124,13,124,1,100,6,141,2,124,3,130,2,116,12,100,7,
+ 124,1,155,2,157,2,124,1,100,6,141,2,130,1,119,0,
+ 119,0,41,8,78,122,13,116,114,121,105,110,103,32,123,125,
+ 123,125,123,125,114,94,0,0,0,41,1,90,9,118,101,114,
+ 98,111,115,105,116,121,114,0,0,0,0,122,20,109,111,100,
+ 117,108,101,32,108,111,97,100,32,102,97,105,108,101,100,58,
+ 32,114,66,0,0,0,114,65,0,0,0,41,13,114,40,0,
+ 0,0,114,96,0,0,0,114,49,0,0,0,114,82,0,0,
+ 0,114,30,0,0,0,114,21,0,0,0,114,29,0,0,0,
+ 114,27,0,0,0,114,60,0,0,0,114,162,0,0,0,114,
+ 81,0,0,0,114,168,0,0,0,114,3,0,0,0,41,14,
+ 114,33,0,0,0,114,42,0,0,0,114,14,0,0,0,90,
+ 12,105,109,112,111,114,116,95,101,114,114,111,114,114,97,0,
+ 0,0,114,98,0,0,0,114,55,0,0,0,114,70,0,0,
+ 0,114,62,0,0,0,114,44,0,0,0,114,133,0,0,0,
+ 114,54,0,0,0,90,3,101,120,99,114,83,0,0,0,114,
+ 9,0,0,0,114,9,0,0,0,114,10,0,0,0,114,52,
+ 0,0,0,228,2,0,0,115,64,0,0,0,10,1,4,1,
+ 14,1,8,1,22,1,2,1,12,1,2,128,12,1,4,1,
+ 2,128,8,2,12,1,4,1,4,1,2,1,18,1,2,128,
+ 12,1,14,1,10,128,10,2,8,1,2,3,8,1,14,1,
+ 4,2,10,1,14,1,18,2,2,241,2,247,115,42,0,0,
+ 0,158,5,36,2,164,7,45,9,189,8,65,6,2,193,6,
+ 7,65,24,9,193,13,2,65,20,9,193,20,4,65,24,9,
+ 194,5,1,65,24,9,194,6,1,45,9,114,52,0,0,0,
+ 41,46,114,92,0,0,0,90,26,95,102,114,111,122,101,110,
+ 95,105,109,112,111,114,116,108,105,98,95,101,120,116,101,114,
+ 110,97,108,114,22,0,0,0,114,1,0,0,0,114,2,0,
+ 0,0,90,17,95,102,114,111,122,101,110,95,105,109,112,111,
+ 114,116,108,105,98,114,49,0,0,0,114,155,0,0,0,114,
+ 117,0,0,0,114,159,0,0,0,114,73,0,0,0,114,138,
+ 0,0,0,114,36,0,0,0,90,7,95,95,97,108,108,95,
+ 95,114,21,0,0,0,90,15,112,97,116,104,95,115,101,112,
+ 97,114,97,116,111,114,115,114,19,0,0,0,114,81,0,0,
+ 0,114,3,0,0,0,114,26,0,0,0,218,4,116,121,112,
+ 101,114,76,0,0,0,114,120,0,0,0,114,122,0,0,0,
+ 114,124,0,0,0,90,13,95,76,111,97,100,101,114,66,97,
+ 115,105,99,115,114,4,0,0,0,114,96,0,0,0,114,40,
+ 0,0,0,114,41,0,0,0,114,39,0,0,0,114,28,0,
+ 0,0,114,129,0,0,0,114,149,0,0,0,114,151,0,0,
+ 0,114,60,0,0,0,114,154,0,0,0,114,162,0,0,0,
+ 218,8,95,95,99,111,100,101,95,95,114,160,0,0,0,114,
+ 166,0,0,0,114,168,0,0,0,114,176,0,0,0,114,158,
+ 0,0,0,114,156,0,0,0,114,52,0,0,0,114,9,0,
+ 0,0,114,9,0,0,0,114,9,0,0,0,114,10,0,0,
+ 0,218,8,60,109,111,100,117,108,101,62,1,0,0,0,115,
+ 90,0,0,0,4,0,8,16,16,1,8,1,8,1,8,1,
+ 8,1,8,1,8,1,8,1,8,2,6,3,14,1,16,3,
+ 4,4,8,2,4,2,4,1,4,1,18,2,0,127,0,127,
+ 12,50,12,1,2,1,2,1,4,252,8,9,8,4,8,9,
+ 8,31,2,126,2,254,4,29,8,5,8,21,8,46,8,8,
+ 10,40,8,5,8,7,8,6,8,13,8,19,12,15,114,11,
+ 0,0,0,
};
diff --git a/Python/marshal.c b/Python/marshal.c
index f8ec7789a38689..52bf2a51aaaec0 100644
--- a/Python/marshal.c
+++ b/Python/marshal.c
@@ -13,6 +13,7 @@
#include "code.h"
#include "marshal.h"
#include "pycore_hashtable.h"
+#include "pycore_code.h" // _PyCode_New()
/*[clinic input]
module marshal
@@ -512,7 +513,6 @@ w_complex_object(PyObject *v, char flag, WFILE *p)
w_long(co->co_argcount, p);
w_long(co->co_posonlyargcount, p);
w_long(co->co_kwonlyargcount, p);
- w_long(co->co_nlocals, p);
w_long(co->co_stacksize, p);
w_long(co->co_flags, p);
w_object(co->co_code, p);
@@ -1301,7 +1301,6 @@ r_object(RFILE *p)
int argcount;
int posonlyargcount;
int kwonlyargcount;
- int nlocals;
int stacksize;
int flags;
PyObject *code = NULL;
@@ -1331,9 +1330,6 @@ r_object(RFILE *p)
goto code_error;
}
kwonlyargcount = (int)r_long(p);
- if (PyErr_Occurred())
- goto code_error;
- nlocals = (int)r_long(p);
if (PyErr_Occurred())
goto code_error;
stacksize = (int)r_long(p);
@@ -1354,6 +1350,7 @@ r_object(RFILE *p)
varnames = r_object(p);
if (varnames == NULL)
goto code_error;
+ Py_ssize_t nlocals = PyTuple_GET_SIZE(varnames);
freevars = r_object(p);
if (freevars == NULL)
goto code_error;
@@ -1376,19 +1373,43 @@ r_object(RFILE *p)
if (exceptiontable == NULL)
goto code_error;
-
if (PySys_Audit("code.__new__", "OOOiiiiii",
code, filename, name, argcount, posonlyargcount,
kwonlyargcount, nlocals, stacksize, flags) < 0) {
goto code_error;
}
- v = (PyObject *) PyCode_NewWithPosOnlyArgs(
- argcount, posonlyargcount, kwonlyargcount,
- nlocals, stacksize, flags,
- code, consts, names, varnames,
- freevars, cellvars, filename, name,
- firstlineno, linetable, exceptiontable);
+ struct _PyCodeConstructor con = {
+ .filename = filename,
+ .name = name,
+ .flags = flags,
+
+ .code = code,
+ .firstlineno = firstlineno,
+ .linetable = linetable,
+
+ .consts = consts,
+ .names = names,
+
+ .varnames = varnames,
+ .cellvars = cellvars,
+ .freevars = freevars,
+
+ .argcount = argcount,
+ .posonlyargcount = posonlyargcount,
+ .kwonlyargcount = kwonlyargcount,
+
+ .stacksize = stacksize,
+
+ .exceptiontable = exceptiontable,
+ };
+ if (_PyCode_Validate(&con) < 0) {
+ goto code_error;
+ }
+ v = (PyObject *)_PyCode_New(&con);
+ if (v == NULL) {
+ goto code_error;
+ }
v = r_ref_insert(v, idx, flag, p);
code_error:
diff --git a/Python/pylifecycle.c b/Python/pylifecycle.c
index 2dbebe45fd4b0b..d31a9c15fd1ec5 100644
--- a/Python/pylifecycle.c
+++ b/Python/pylifecycle.c
@@ -17,6 +17,10 @@
#include // setlocale()
+#if defined(__APPLE__)
+#include
+#endif
+
#ifdef HAVE_SIGNAL_H
# include // SIG_IGN
#endif
@@ -34,7 +38,6 @@
(PyObject_TypeCheck((op), &PyWindowsConsoleIO_Type))
#endif
-
#define PUTS(fd, str) _Py_write_noraise(fd, str, (int)strlen(str))
@@ -59,7 +62,30 @@ static void wait_for_thread_shutdown(PyThreadState *tstate);
static void call_ll_exitfuncs(_PyRuntimeState *runtime);
int _Py_UnhandledKeyboardInterrupt = 0;
-_PyRuntimeState _PyRuntime = _PyRuntimeState_INIT;
+
+/* The following places the `_PyRuntime` structure in a location that can be
+ * found without any external information. This is meant to ease access to the
+ * interpreter state for various runtime debugging tools, but is *not* an
+ * officially supported feature */
+
+#if defined(MS_WINDOWS)
+
+#pragma section("PyRuntime", read, write)
+__declspec(allocate("PyRuntime"))
+
+#elif defined(__APPLE__)
+
+__attribute__((
+ section(SEG_DATA ",PyRuntime")
+))
+
+#endif
+
+_PyRuntimeState _PyRuntime
+#if defined(__linux__) && (defined(__GNUC__) || defined(__clang__))
+__attribute__ ((section (".PyRuntime")))
+#endif
+= _PyRuntimeState_INIT;
static int runtime_initialized = 0;
PyStatus
diff --git a/Python/pystate.c b/Python/pystate.c
index aeebd6f61c6d7f..4a3cb24a199f17 100644
--- a/Python/pystate.c
+++ b/Python/pystate.c
@@ -607,6 +607,23 @@ PyInterpreterState_GetDict(PyInterpreterState *interp)
return interp->dict;
}
+/* Minimum size of data stack chunk */
+#define DATA_STACK_CHUNK_SIZE (16*1024)
+
+static _PyStackChunk*
+allocate_chunk(int size_in_bytes, _PyStackChunk* previous)
+{
+ assert(size_in_bytes % sizeof(PyObject **) == 0);
+ _PyStackChunk *res = _PyObject_VirtualAlloc(size_in_bytes);
+ if (res == NULL) {
+ return NULL;
+ }
+ res->previous = previous;
+ res->size = size_in_bytes;
+ res->top = 0;
+ return res;
+}
+
static PyThreadState *
new_threadstate(PyInterpreterState *interp, int init)
{
@@ -628,6 +645,11 @@ new_threadstate(PyInterpreterState *interp, int init)
tstate->gilstate_counter = 0;
tstate->async_exc = NULL;
tstate->thread_id = PyThread_get_thread_ident();
+#ifdef PY_HAVE_THREAD_NATIVE_ID
+ tstate->native_thread_id = PyThread_get_thread_native_id();
+#else
+ tstate->native_thread_id = 0;
+#endif
tstate->dict = NULL;
@@ -658,6 +680,14 @@ new_threadstate(PyInterpreterState *interp, int init)
tstate->context = NULL;
tstate->context_ver = 1;
+ tstate->datastack_chunk = allocate_chunk(DATA_STACK_CHUNK_SIZE, NULL);
+ if (tstate->datastack_chunk == NULL) {
+ PyMem_RawFree(tstate);
+ return NULL;
+ }
+ /* If top points to entry 0, then _PyThreadState_PopLocals will try to pop this chunk */
+ tstate->datastack_top = &tstate->datastack_chunk->data[1];
+ tstate->datastack_limit = (PyObject **)(((char *)tstate->datastack_chunk) + DATA_STACK_CHUNK_SIZE);
if (init) {
_PyThreadState_Init(tstate);
@@ -904,9 +934,15 @@ tstate_delete_common(PyThreadState *tstate,
{
PyThread_tss_set(&gilstate->autoTSSkey, NULL);
}
+ _PyStackChunk *chunk = tstate->datastack_chunk;
+ tstate->datastack_chunk = NULL;
+ while (chunk != NULL) {
+ _PyStackChunk *prev = chunk->previous;
+ _PyObject_VirtualFree(chunk, chunk->size);
+ chunk = prev;
+ }
}
-
static void
_PyThreadState_Delete(PyThreadState *tstate, int check_current)
{
@@ -1969,6 +2005,59 @@ _Py_GetConfig(void)
return _PyInterpreterState_GetConfig(tstate->interp);
}
+#define MINIMUM_OVERHEAD 1000
+
+PyObject **
+_PyThreadState_PushLocals(PyThreadState *tstate, int size)
+{
+ assert(((unsigned)size) < INT_MAX/sizeof(PyObject*)/2);
+ PyObject **res = tstate->datastack_top;
+ PyObject **top = res + size;
+ if (top >= tstate->datastack_limit) {
+ int allocate_size = DATA_STACK_CHUNK_SIZE;
+ while (allocate_size < (int)sizeof(PyObject*)*(size + MINIMUM_OVERHEAD)) {
+ allocate_size *= 2;
+ }
+ _PyStackChunk *new = allocate_chunk(allocate_size, tstate->datastack_chunk);
+ if (new == NULL) {
+ goto error;
+ }
+ tstate->datastack_chunk->top = tstate->datastack_top - &tstate->datastack_chunk->data[0];
+ tstate->datastack_chunk = new;
+ tstate->datastack_limit = (PyObject **)(((char *)new) + allocate_size);
+ res = &new->data[0];
+ tstate->datastack_top = res + size;
+ }
+ else {
+ tstate->datastack_top = top;
+ }
+ for (int i=0; i < size; i++) {
+ res[i] = NULL;
+ }
+ return res;
+error:
+ _PyErr_SetString(tstate, PyExc_MemoryError, "Out of memory");
+ return NULL;
+}
+
+void
+_PyThreadState_PopLocals(PyThreadState *tstate, PyObject **locals)
+{
+ if (locals == &tstate->datastack_chunk->data[0]) {
+ _PyStackChunk *chunk = tstate->datastack_chunk;
+ _PyStackChunk *previous = chunk->previous;
+ tstate->datastack_top = &previous->data[previous->top];
+ tstate->datastack_chunk = previous;
+ _PyObject_VirtualFree(chunk, chunk->size);
+ tstate->datastack_limit = (PyObject **)(((char *)previous) + previous->size);
+ }
+ else {
+ assert(tstate->datastack_top >= locals);
+ tstate->datastack_top = locals;
+ }
+}
+
+
#ifdef __cplusplus
}
#endif
diff --git a/Python/suggestions.c b/Python/suggestions.c
index 6fb01f10cd37c9..2e76551f363ed4 100644
--- a/Python/suggestions.c
+++ b/Python/suggestions.c
@@ -1,5 +1,6 @@
#include "Python.h"
#include "frameobject.h"
+#include "pycore_frame.h"
#include "pycore_pyerrors.h"
@@ -208,9 +209,10 @@ offer_suggestions_for_name_error(PyNameErrorObject *exc)
PyFrameObject *frame = traceback->tb_frame;
assert(frame != NULL);
- PyCodeObject *code = frame->f_code;
+ PyCodeObject *code = PyFrame_GetCode(frame);
assert(code != NULL && code->co_varnames != NULL);
PyObject *dir = PySequence_List(code->co_varnames);
+ Py_DECREF(code);
if (dir == NULL) {
return NULL;
}
@@ -221,7 +223,7 @@ offer_suggestions_for_name_error(PyNameErrorObject *exc)
return suggestions;
}
- dir = PySequence_List(frame->f_globals);
+ dir = PySequence_List(_PyFrame_GetGlobals(frame));
if (dir == NULL) {
return NULL;
}
@@ -231,7 +233,7 @@ offer_suggestions_for_name_error(PyNameErrorObject *exc)
return suggestions;
}
- dir = PySequence_List(frame->f_builtins);
+ dir = PySequence_List(_PyFrame_GetBuiltins(frame));
if (dir == NULL) {
return NULL;
}
diff --git a/README.rst b/README.rst
index 58cf6abba975b3..898680af095dee 100644
--- a/README.rst
+++ b/README.rst
@@ -110,12 +110,12 @@ The entire Python directory is cleaned of temporary files that may have
resulted from a previous compilation.
An instrumented version of the interpreter is built, using suitable compiler
-flags for each flavour. Note that this is just an intermediary step. The
-binary resulting from this step is not good for real life workloads as it has
+flags for each flavor. Note that this is just an intermediary step. The
+binary resulting from this step is not good for real-life workloads as it has
profiling instructions embedded inside.
After the instrumented interpreter is built, the Makefile will run a training
-workload. This is necessary in order to profile the interpreter execution.
+workload. This is necessary in order to profile the interpreter's execution.
Note also that any output, both stdout and stderr, that may appear at this step
is suppressed.
diff --git a/Tools/freeze/makefreeze.py b/Tools/freeze/makefreeze.py
index 64e3e6bf71e774..d7d05db88a96c9 100644
--- a/Tools/freeze/makefreeze.py
+++ b/Tools/freeze/makefreeze.py
@@ -74,14 +74,12 @@ def makefreeze(base, dict, debug=0, entry_point=None, fail_import=()):
# Write a C initializer for a module containing the frozen python code.
# The array is called M_.
-def writecode(outfp, mod, str):
- outfp.write('unsigned char M_%s[] = {' % mod)
- for i in range(0, len(str), 16):
- outfp.write('\n\t')
- for c in bytes(str[i:i+16]):
- outfp.write('%d,' % c)
- outfp.write('\n};\n')
-
-## def writecode(outfp, mod, str):
-## outfp.write('unsigned char M_%s[%d] = "%s";\n' % (mod, len(str),
-## '\\"'.join(map(lambda s: repr(s)[1:-1], str.split('"')))))
+def writecode(fp, mod, data):
+ print('unsigned char M_%s[] = {' % mod, file=fp)
+ indent = ' ' * 4
+ for i in range(0, len(data), 16):
+ print(indent, file=fp, end='')
+ for c in bytes(data[i:i+16]):
+ print('%d,' % c, file=fp, end='')
+ print('', file=fp)
+ print('};', file=fp)
diff --git a/Tools/gdb/libpython.py b/Tools/gdb/libpython.py
index 270aeb426eb5b3..c1d2cd8ced68c4 100755
--- a/Tools/gdb/libpython.py
+++ b/Tools/gdb/libpython.py
@@ -730,7 +730,7 @@ def write_repr(self, out, visited):
def _get_entries(self, keys):
dk_nentries = int(keys['dk_nentries'])
- dk_size = int(keys['dk_size'])
+ dk_size = 1< None:
f"_PyPegen_update_memo(p, _mark, {node.name}_type, _res)", "_res"
)
self.print("p->mark = _mark;")
+ self.print("p->in_raw_rule++;")
self.print(f"void *_raw = {node.name}_raw(p);")
+ self.print("p->in_raw_rule--;")
self.print("if (p->error_indicator)")
with self.indent():
self.print("return NULL;")
diff --git a/Tools/ssl/multissltests.py b/Tools/ssl/multissltests.py
index 8d1132f4a95846..ec7c0661f7595f 100755
--- a/Tools/ssl/multissltests.py
+++ b/Tools/ssl/multissltests.py
@@ -48,7 +48,7 @@
OPENSSL_RECENT_VERSIONS = [
"1.1.1k",
- "3.0.0-alpha16"
+ "3.0.0-alpha17"
]
LIBRESSL_OLD_VERSIONS = [
diff --git a/configure b/configure
index e1d450131fe5a0..1756d25d16fa47 100755
--- a/configure
+++ b/configure
@@ -6711,10 +6711,11 @@ fi
fi
if test "$ac_sys_system" = "Darwin" -a "${LLVM_AR_FOUND}" = "not-found"
then
- found_llvm_ar=`/usr/bin/xcrun -find llvm-ar 2>/dev/null`
+ # The Apple-supplied ar in Xcode or the Command Line Tools is apparently sufficient
+ found_llvm_ar=`/usr/bin/xcrun -find ar 2>/dev/null`
if test -n "${found_llvm_ar}"
then
- LLVM_AR='/usr/bin/xcrun llvm-ar'
+ LLVM_AR='/usr/bin/xcrun ar'
LLVM_AR_FOUND=found
{ $as_echo "$as_me:${as_lineno-$LINENO}: llvm-ar found via xcrun: ${LLVM_AR}" >&5
$as_echo "$as_me: llvm-ar found via xcrun: ${LLVM_AR}" >&6;}
@@ -6732,6 +6733,7 @@ $as_echo "$as_me: llvm-ar found via xcrun: ${LLVM_AR}" >&6;}
Darwin*)
# Any changes made here should be reflected in the GCC+Darwin case below
LTOFLAGS="-flto -Wl,-export_dynamic"
+ LTOCFLAGS="-flto"
;;
*)
LTOFLAGS="-flto"
@@ -6742,6 +6744,7 @@ $as_echo "$as_me: llvm-ar found via xcrun: ${LLVM_AR}" >&6;}
case $ac_sys_system in
Darwin*)
LTOFLAGS="-flto -Wl,-export_dynamic"
+ LTOCFLAGS="-flto"
;;
*)
LTOFLAGS="-flto -fuse-linker-plugin -ffat-lto-objects -flto-partition=none"
@@ -6757,7 +6760,7 @@ $as_echo "$as_me: llvm-ar found via xcrun: ${LLVM_AR}" >&6;}
LTOFLAGS="$LTOFLAGS -g"
fi
- CFLAGS_NODIST="$CFLAGS_NODIST $LTOFLAGS"
+ CFLAGS_NODIST="$CFLAGS_NODIST ${LTOCFLAGS-$LTOFLAGS}"
LDFLAGS_NODIST="$LDFLAGS_NODIST $LTOFLAGS"
fi
diff --git a/configure.ac b/configure.ac
index 4fc269a7309299..2f792aa60ee40f 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1385,10 +1385,11 @@ if test "$Py_LTO" = 'true' ; then
fi
if test "$ac_sys_system" = "Darwin" -a "${LLVM_AR_FOUND}" = "not-found"
then
- found_llvm_ar=`/usr/bin/xcrun -find llvm-ar 2>/dev/null`
+ # The Apple-supplied ar in Xcode or the Command Line Tools is apparently sufficient
+ found_llvm_ar=`/usr/bin/xcrun -find ar 2>/dev/null`
if test -n "${found_llvm_ar}"
then
- LLVM_AR='/usr/bin/xcrun llvm-ar'
+ LLVM_AR='/usr/bin/xcrun ar'
LLVM_AR_FOUND=found
AC_MSG_NOTICE([llvm-ar found via xcrun: ${LLVM_AR}])
fi
@@ -1405,6 +1406,7 @@ if test "$Py_LTO" = 'true' ; then
Darwin*)
# Any changes made here should be reflected in the GCC+Darwin case below
LTOFLAGS="-flto -Wl,-export_dynamic"
+ LTOCFLAGS="-flto"
;;
*)
LTOFLAGS="-flto"
@@ -1415,6 +1417,7 @@ if test "$Py_LTO" = 'true' ; then
case $ac_sys_system in
Darwin*)
LTOFLAGS="-flto -Wl,-export_dynamic"
+ LTOCFLAGS="-flto"
;;
*)
LTOFLAGS="-flto -fuse-linker-plugin -ffat-lto-objects -flto-partition=none"
@@ -1430,7 +1433,7 @@ if test "$Py_LTO" = 'true' ; then
LTOFLAGS="$LTOFLAGS -g"
fi
- CFLAGS_NODIST="$CFLAGS_NODIST $LTOFLAGS"
+ CFLAGS_NODIST="$CFLAGS_NODIST ${LTOCFLAGS-$LTOFLAGS}"
LDFLAGS_NODIST="$LDFLAGS_NODIST $LTOFLAGS"
fi
@@ -2973,7 +2976,7 @@ esac
[AC_MSG_RESULT(default)])
validate_tzpath() {
- # Checks that each element of hte path is an absolute path
+ # Checks that each element of the path is an absolute path
if test -z "$1"; then
# Empty string is allowed: it indicates no system TZPATH
return 0
diff --git a/setup.py b/setup.py
index 3857e6887a929f..ce71a966a81941 100644
--- a/setup.py
+++ b/setup.py
@@ -1578,7 +1578,7 @@ def detect_sqlite(self):
sqlite_libdir = [os.path.abspath(os.path.dirname(sqlite_libfile))]
if sqlite_incdir and sqlite_libdir:
- sqlite_srcs = ['_sqlite/cache.c',
+ sqlite_srcs = [
'_sqlite/connection.c',
'_sqlite/cursor.c',
'_sqlite/microprotocols.c',