From af3c3f72d4a274e5d4d47be25d4dc8a5fae7facd Mon Sep 17 00:00:00 2001 From: Irit Katriel Date: Thu, 15 Apr 2021 13:19:22 +0100 Subject: [PATCH 01/10] added exception groups --- Include/cpython/pyerrors.h | 6 + Include/pyerrors.h | 2 + Lib/test/exception_hierarchy.txt | 2 + Lib/test/test_descr.py | 6 +- Lib/test/test_doctest.py | 2 +- Lib/test/test_exception_group.py | 729 +++++++++++ Lib/test/test_pickle.py | 4 +- Objects/exceptions.c | 403 +++++++ PC/python3dll.c | 2 + Python/importlib_external.h | 1936 ++++++++++++++++++++++++++++++ 10 files changed, 3089 insertions(+), 3 deletions(-) create mode 100644 Lib/test/test_exception_group.py diff --git a/Include/cpython/pyerrors.h b/Include/cpython/pyerrors.h index 37aede0f6044f5..d750bff63fdf9f 100644 --- a/Include/cpython/pyerrors.h +++ b/Include/cpython/pyerrors.h @@ -14,6 +14,12 @@ typedef struct { PyException_HEAD } PyBaseExceptionObject; +typedef struct { + PyException_HEAD + PyObject *msg; + PyObject *excs; +} PyBaseExceptionGroupObject; + typedef struct { PyException_HEAD PyObject *msg; diff --git a/Include/pyerrors.h b/Include/pyerrors.h index f5d1c711577186..8f55399d1f5780 100644 --- a/Include/pyerrors.h +++ b/Include/pyerrors.h @@ -65,6 +65,8 @@ PyAPI_FUNC(const char *) PyExceptionClass_Name(PyObject *); PyAPI_DATA(PyObject *) PyExc_BaseException; PyAPI_DATA(PyObject *) PyExc_Exception; +PyAPI_DATA(PyObject *) PyExc_BaseExceptionGroup; +PyAPI_DATA(PyObject *) PyExc_ExceptionGroup; #if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03050000 PyAPI_DATA(PyObject *) PyExc_StopAsyncIteration; #endif diff --git a/Lib/test/exception_hierarchy.txt b/Lib/test/exception_hierarchy.txt index 6c5e82139105bf..3b12503ab48b29 100644 --- a/Lib/test/exception_hierarchy.txt +++ b/Lib/test/exception_hierarchy.txt @@ -2,7 +2,9 @@ BaseException +-- SystemExit +-- KeyboardInterrupt +-- GeneratorExit + +-- BaseExceptionGroup +-- Exception + +-- ExceptionGroup +-- StopIteration +-- StopAsyncIteration +-- ArithmeticError diff --git a/Lib/test/test_descr.py b/Lib/test/test_descr.py index 3cb923ed0520a3..5027fc5df2433a 100644 --- a/Lib/test/test_descr.py +++ b/Lib/test/test_descr.py @@ -4026,7 +4026,11 @@ def test_builtin_bases(self): for tp in builtin_types: object.__getattribute__(tp, "__bases__") if tp is not object: - self.assertEqual(len(tp.__bases__), 1, tp) + if tp is ExceptionGroup: + num_bases = 2 + else: + num_bases = 1 + self.assertEqual(len(tp.__bases__), num_bases, tp) class L(list): pass diff --git a/Lib/test/test_doctest.py b/Lib/test/test_doctest.py index 828a0ff56763a4..7a9bed4e202b2a 100644 --- a/Lib/test/test_doctest.py +++ b/Lib/test/test_doctest.py @@ -668,7 +668,7 @@ def non_Python_modules(): r""" >>> import builtins >>> tests = doctest.DocTestFinder().find(builtins) - >>> 816 < len(tests) < 836 # approximate number of objects with docstrings + >>> 816 < len(tests) < 838 # approximate number of objects with docstrings True >>> real_tests = [t for t in tests if len(t.examples) > 0] >>> len(real_tests) # objects that actually have doctests diff --git a/Lib/test/test_exception_group.py b/Lib/test/test_exception_group.py new file mode 100644 index 00000000000000..1f51391a1b04a0 --- /dev/null +++ b/Lib/test/test_exception_group.py @@ -0,0 +1,729 @@ +import collections.abc +import traceback +import types +import unittest + + +class TestExceptionGroupTypeHierarchy(unittest.TestCase): + def test_exception_group_types(self): + self.assertTrue(issubclass(ExceptionGroup, Exception)) + self.assertTrue(issubclass(ExceptionGroup, BaseExceptionGroup)) + self.assertTrue(issubclass(BaseExceptionGroup, BaseException)) + + +class BadConstructorArgs(unittest.TestCase): + def test_bad_EG_construction__too_many_args(self): + MSG = 'function takes exactly 2 arguments' + with self.assertRaisesRegex(TypeError, MSG): + _ = ExceptionGroup('no errors') + with self.assertRaisesRegex(TypeError, MSG): + _ = ExceptionGroup([ValueError('no msg')]) + with self.assertRaisesRegex(TypeError, MSG): + _ = ExceptionGroup('eg', [ValueError('too')], [TypeError('many')]) + + def test_bad_EG_construction__bad_message(self): + MSG = 'Expected a message' + with self.assertRaisesRegex(TypeError, MSG): + _ = ExceptionGroup(ValueError(12), SyntaxError('bad syntax')) + with self.assertRaisesRegex(TypeError, MSG): + _ = ExceptionGroup(None, [ValueError(12)]) + + def test_bad_EG_construction__bad_excs_sequence(self): + MSG = 'Expected a non-empty sequence' + with self.assertRaisesRegex(TypeError, MSG): + _ = ExceptionGroup('errors not sequence', {ValueError(42)}) + with self.assertRaisesRegex(TypeError, MSG): + _ = ExceptionGroup("eg", []) + with self.assertRaisesRegex(TypeError, MSG): + _ = ExceptionGroup("eg", None) + + def test_bad_EG_construction__nested_non_exceptions(self): + MSG = 'Nested exceptions must derive from BaseException' + with self.assertRaisesRegex(TypeError, MSG): + _ = ExceptionGroup('bad error', ["not an exception"]) + with self.assertRaisesRegex(TypeError, MSG): + _ = ExceptionGroup('eg1', + [ExceptionGroup('eg2', ["not an exception"])]) + + +class InstanceCreation(unittest.TestCase): + def test_EG_wraps_Exceptions__creates_EG(self): + excs = [ValueError(1), TypeError(2)] + self.assertIs(type(ExceptionGroup("eg", excs)), ExceptionGroup) + + def test_BEG_wraps_Exceptions__creates_EG(self): + excs = [ValueError(1), TypeError(2)] + self.assertIs(type(BaseExceptionGroup("beg", excs)), ExceptionGroup) + + def test_EG_wraps_BaseException__raises_TypeError(self): + MSG= "Cannot nest BaseExceptions in an ExceptionGroup" + with self.assertRaisesRegex(TypeError, MSG): + eg = ExceptionGroup("eg", [ValueError(1), KeyboardInterrupt(2)]) + + def test_BEG_wraps_BaseException__creates_BEG(self): + beg = BaseExceptionGroup("beg", [ValueError(1), KeyboardInterrupt(2)]) + self.assertIs(type(beg), BaseExceptionGroup) + + def test_EG_subclass_wraps_anything(self): + class MyEG(ExceptionGroup): + pass + self.assertIs( + type(MyEG("eg", [ValueError(12), TypeError(42)])), MyEG) + self.assertIs( + type(MyEG("eg", [ValueError(12), KeyboardInterrupt(42)])), MyEG) + + def test_BEG_subclass_wraps_anything(self): + class MyBEG(BaseExceptionGroup): + pass + self.assertIs( + type(MyBEG("eg", [ValueError(12), TypeError(42)])), MyBEG) + self.assertIs( + type(MyBEG("eg", [ValueError(12), KeyboardInterrupt(42)])), MyBEG) + + +def leaf_generator(exc, tbs=None): + if tbs is None: + tbs = [] + tbs.append(exc.__traceback__) + if isinstance(exc, BaseExceptionGroup): + for e in exc.exceptions: + yield from leaf_generator(e, tbs) + else: + # exc is a leaf exception and its traceback + # is the concatenation of the traceback + # segments in tbs + yield exc, tbs + tbs.pop() + + +def tb_funcnames(tbs): + def names_list(tb): + if tb is None: + return None + else: + return [f.name for f in traceback.extract_tb(tb)] + + if isinstance(tbs, types.TracebackType): + return names_list(tbs) + else: + return [names_list(tb) for tb in tbs] + + +def tbs_for_leaf(leaf, eg): + for e, tbs in leaf_generator(eg): + if e == leaf: + return tbs + + +class ExceptionGroupTestBase(unittest.TestCase): + def assertMatchesTemplate(self, exc, exc_type, template): + """ Assert that the exception matches the template """ + if exc_type is not None: + self.assertIs(type(exc), exc_type) + + if isinstance(exc, BaseExceptionGroup): + self.assertIsInstance(template, collections.abc.Sequence) + self.assertEqual(len(exc.exceptions), len(template)) + for e, t in zip(exc.exceptions, template): + self.assertMatchesTemplate(e, None, t) + else: + self.assertIsInstance(template, BaseException) + self.assertEqual(type(exc), type(template)) + self.assertEqual(exc.args, template.args) + + +class ExceptionGroupBasicsTests(ExceptionGroupTestBase): + def setUp(self): + # simple ExceptionGroup (without nesting) + + def do_raise(type, arg, cause=None): + if cause is None: + raise type(arg) + else: + raise type(arg) from cause + + def getTypeError(v): + try: + try: + do_raise(OSError, "context for TypeError") + except: + do_raise(TypeError, v) + except Exception as e: + return e + + def getValueError(v): + try: + try: + do_raise(MemoryError, "context and cause for ValueError") + except MemoryError as e: + do_raise(ValueError, v, cause=e) + except Exception as e: + return e + + def simple_group(): + try: + raise ExceptionGroup( + 'simple EG', + [getValueError(1), getTypeError(int), getValueError(2)]) + except ExceptionGroup as e: + return e + + try: + raise simple_group() + except Exception as e: + self.eg = e + + self.eg_template = [ValueError(1), TypeError(int), ValueError(2)] + + self.root_tb_fnames = ['setUp', 'simple_group'] + self.value_error_tb_fnames = ['getValueError', 'do_raise'] + self.type_error_tb_fnames = ['getTypeError', 'do_raise'] + + def test_basics_ExceptionGroup_fields(self): + eg = self.eg + + self.assertMatchesTemplate(eg, ExceptionGroup, self.eg_template) + + # check msg + self.assertEqual(eg.message, 'simple EG') + self.assertEqual(eg.args[0], 'simple EG') + + # check cause and context + self.assertIsInstance(eg.exceptions[0], ValueError) + self.assertIsInstance(eg.exceptions[0].__cause__, MemoryError) + self.assertIsInstance(eg.exceptions[0].__context__, MemoryError) + self.assertIsInstance(eg.exceptions[1], TypeError) + self.assertIsNone(eg.exceptions[1].__cause__) + self.assertIsInstance(eg.exceptions[1].__context__, OSError) + self.assertIsInstance(eg.exceptions[2], ValueError) + self.assertIsInstance(eg.exceptions[2].__cause__, MemoryError) + self.assertIsInstance(eg.exceptions[2].__context__, MemoryError) + + # check tracebacks + self.assertSequenceEqual( + tb_funcnames(eg.__traceback__), self.root_tb_fnames) + + self.assertSequenceEqual( + tb_funcnames(eg.exceptions[0].__traceback__), + self.value_error_tb_fnames) + self.assertSequenceEqual( + tb_funcnames(eg.exceptions[1].__traceback__), + self.type_error_tb_fnames) + self.assertSequenceEqual( + tb_funcnames(eg.exceptions[2].__traceback__), + self.value_error_tb_fnames) + + + def test_basics_ExceptionGroup_fields_are_read_only(self): + eg = self.eg + self.assertEqual(type(eg.exceptions), tuple) + + _ = eg.message + with self.assertRaises(AttributeError): + eg.message = "new msg" + _ = eg.exceptions + with self.assertRaises(AttributeError): + eg.exceptions = [OSError('xyz')] + + def test_basics_leaf_generator(self): + eg = self.eg + self.assertSequenceEqual( + [e for e, _ in leaf_generator(eg)], eg.exceptions) + + self.assertSequenceEqual( + [tb_funcnames(tbs) for _, tbs in leaf_generator(eg)], + [[self.root_tb_fnames, self.value_error_tb_fnames], + [self.root_tb_fnames, self.type_error_tb_fnames], + [self.root_tb_fnames, self.value_error_tb_fnames]]) + + def test_basics_tbs_for_leaf(self): + eg = self.eg + for e, tbs in leaf_generator(eg): + self.assertSequenceEqual(tbs, tbs_for_leaf(e, eg)) + + def test_basics_subgroup_by_type__passthrough(self): + eg = self.eg + self.assertIs(eg, eg.subgroup(BaseException)) + self.assertIs(eg, eg.subgroup(Exception)) + self.assertIs(eg, eg.subgroup(BaseExceptionGroup)) + self.assertIs(eg, eg.subgroup(ExceptionGroup)) + + def test_basics_subgroup_by_type__no_match(self): + self.assertIsNone(self.eg.subgroup(OSError)) + + def test_basics_subgroup_by_type__match(self): + eg = self.eg + testcases = [ + # (match_type, result_template) + (ValueError, [ValueError(1), ValueError(2)]), + (TypeError, [TypeError(int)]), + ((ValueError, TypeError), self.eg_template)] + + for match_type, template in testcases: + subeg = eg.subgroup(match_type) + self.assertEqual(subeg.message, eg.message) + self.assertMatchesTemplate(subeg, ExceptionGroup, template) + + def test_basics_subgroup_by_predicate__passthrough(self): + self.assertIs(self.eg, self.eg.subgroup(lambda e: True)) + + def test_basics_subgroup_by_predicate__no_match(self): + self.assertIsNone(self.eg.subgroup(lambda e: False)) + + def test_basics_subgroup_by_predicate__match(self): + eg = self.eg + testcases = [ + # (match_type, result_template) + (ValueError, [ValueError(1), ValueError(2)]), + (TypeError, [TypeError(int)]), + ((ValueError, TypeError), self.eg_template)] + + for match_type, template in testcases: + subeg = eg.subgroup(lambda e: isinstance(e, match_type)) + self.assertEqual(subeg.message, eg.message) + self.assertMatchesTemplate(subeg, ExceptionGroup, template) + + def test_basics_split_by_type__passthrough(self): + for E in [BaseException, Exception, + BaseExceptionGroup, ExceptionGroup]: + match, rest = self.eg.split(E) + self.assertMatchesTemplate(match, ExceptionGroup, self.eg_template) + self.assertIsNone(rest) + + def test_basics_split_by_type__no_match(self): + match, rest = self.eg.split(OSError) + self.assertIsNone(match) + self.assertMatchesTemplate(rest, ExceptionGroup, self.eg_template) + + def test_basics_split_by_type__match(self): + eg = self.eg + testcases = [ + # (matcher, match_template, rest_template) + (ValueError, [ValueError(1), ValueError(2)], [TypeError(int)]), + (TypeError, [TypeError(int)], [ValueError(1), ValueError(2)]), + ((ValueError, TypeError), self.eg_template, None)] + for match_type, match_template, rest_template in testcases: + match, rest = eg.split(match_type) + self.assertEqual(match.message, eg.message) + self.assertMatchesTemplate( + match, ExceptionGroup, match_template) + if rest_template is not None: + self.assertEqual(rest.message, eg.message) + self.assertMatchesTemplate( + rest, ExceptionGroup, rest_template) + + def test_basics_split_by_predicate__passthrough(self): + match, rest = self.eg.split(lambda e: True) + self.assertMatchesTemplate(match, ExceptionGroup, self.eg_template) + self.assertIsNone(rest) + + def test_basics_split_by_predicate__no_match(self): + match, rest = self.eg.split(lambda e: False) + self.assertIsNone(match) + self.assertMatchesTemplate(rest, ExceptionGroup, self.eg_template) + + def test_basics_split_by_predicate__match(self): + eg = self.eg + testcases = [ + # (matcher, match_template, rest_template) + (ValueError, [ValueError(1), ValueError(2)], [TypeError(int)]), + (TypeError, [TypeError(int)], [ValueError(1), ValueError(2)]), + ((ValueError, TypeError), self.eg_template, None)] + for match_type, match_template, rest_template in testcases: + match, rest = eg.split(lambda e: isinstance(e, match_type)) + self.assertEqual(match.message, eg.message) + self.assertMatchesTemplate( + match, ExceptionGroup, match_template) + if rest_template is not None: + self.assertEqual(rest.message, eg.message) + self.assertMatchesTemplate( + rest, ExceptionGroup, rest_template) + + +class NestedExceptionGroupBasicsTest(ExceptionGroupTestBase): + def setUp(self): + def raiseVE(v): + raise ValueError(v) + + def raiseTE(t): + raise TypeError(t) + + def nested_group(): + try: + try: + raiseTE(bytes) + except TypeError as e: + raise ExceptionGroup("nested", [e]) + except ExceptionGroup as e: + excs = [e] + try: + raiseVE(1) + except ValueError as e: + excs.append(e) + raise ExceptionGroup("root", excs) + + try: + nested_group() + except ExceptionGroup as eg: + self.eg = eg + + def test_nested_group_matches_template(self): + self.assertMatchesTemplate( + self.eg, ExceptionGroup, [[TypeError(bytes)], ValueError(1)]) + + def test_nested_group_tracebacks(self): + eg = self.eg + def check(exc, expected): + self.assertEqual(tb_funcnames(exc.__traceback__), expected) + + check(eg, ['setUp', 'nested_group']) + check(eg.exceptions[0], ['nested_group']) + check(eg.exceptions[1], ['nested_group', 'raiseVE']) + check(eg.exceptions[0].exceptions[0], ['nested_group', 'raiseTE']) + + def test_iteration_full_tracebacks(self): + eg = self.eg + # check that iteration over leaves + # produces the expected tracebacks + self.assertEqual(len(list(leaf_generator(eg))), 2) + + expected_tbs = [ + [['setUp', 'nested_group'], + ['nested_group'], + ['nested_group', 'raiseTE']], + [['setUp', 'nested_group'], + ['nested_group', 'raiseVE']]] + + for (i, (e, tbs)) in enumerate(leaf_generator(eg)): + self.assertSequenceEqual( + expected_tbs[i], [tb_funcnames(tb) for tb in tbs]) + + +class ExceptionGroupSplitTests(ExceptionGroupTestBase): + def _split_exception_group(self, eg, types): + """ Split an EG and do some sanity checks on the result """ + self.assertIsInstance(eg, BaseExceptionGroup) + + match, rest = eg.split(types) + sg = eg.subgroup(types) + + if match is not None: + self.assertIsInstance(match, BaseExceptionGroup) + for e,_ in leaf_generator(match): + self.assertIsInstance(e, types) + + self.assertIsNotNone(sg) + self.assertIsInstance(sg, BaseExceptionGroup) + for e,_ in leaf_generator(sg): + self.assertIsInstance(e, types) + + if rest is not None: + self.assertIsInstance(rest, BaseExceptionGroup) + + def leaves(exc): + return [] if exc is None else [e for e,_ in leaf_generator(exc)] + + # match and subgroup have the same leaves + self.assertSequenceEqual(leaves(match), leaves(sg)) + + match_leaves = leaves(match) + rest_leaves = leaves(rest) + # each leaf exception of eg and exactly one of match and rest + self.assertEqual(len(leaves(eg)), len(leaves(match)) + len(leaves(rest))) + for e in leaves(eg): + self.assertNotEqual( + match and e in match_leaves, + rest and e in rest_leaves) + + # message, cause and context equal to eg + for part in [match, rest, sg]: + if part is not None: + self.assertEqual(eg.message, part.message) + self.assertIs(eg.__cause__, part.__cause__) + self.assertIs(eg.__context__, part.__context__) + self.assertIs(eg.__traceback__, part.__traceback__) + + # full tracebacks match + for part in [match, rest, sg]: + for e in leaves(part): + self.assertSequenceEqual( + tb_funcnames(tbs_for_leaf(e, eg)), + tb_funcnames(tbs_for_leaf(e, part))) + + return match, rest + + def test_split_by_type(self): + class MyExceptionGroup(ExceptionGroup): + pass + + def raiseVE(v): + raise ValueError(v) + + def raiseTE(t): + raise TypeError(t) + + def nested_group(): + def level1(i): + excs = [] + for f, arg in [(raiseVE, i), (raiseTE, int), (raiseVE, i+1)]: + try: + f(arg) + except Exception as e: + excs.append(e) + raise ExceptionGroup('msg1', excs) + + def level2(i): + excs = [] + for f, arg in [(level1, i), (level1, i+1), (raiseVE, i+2)]: + try: + f(arg) + except Exception as e: + excs.append(e) + raise MyExceptionGroup('msg2', excs) + + def level3(i): + excs = [] + for f, arg in [(level2, i+1), (raiseVE, i+2)]: + try: + f(arg) + except Exception as e: + excs.append(e) + raise ExceptionGroup('msg3', excs) + + level3(5) + + try: + nested_group() + except ExceptionGroup as e: + eg = e + + eg_template = [ + [ + [ValueError(6), TypeError(int), ValueError(7)], + [ValueError(7), TypeError(int), ValueError(8)], + ValueError(8), + ], + ValueError(7)] + + valueErrors_template = [ + [ + [ValueError(6), ValueError(7)], + [ValueError(7), ValueError(8)], + ValueError(8), + ], + ValueError(7)] + + typeErrors_template = [[[TypeError(int)], [TypeError(int)]]] + + self.assertMatchesTemplate(eg, ExceptionGroup, eg_template) + + # Match Nothing + match, rest = self._split_exception_group(eg, SyntaxError) + self.assertIsNone(match) + self.assertMatchesTemplate(rest, ExceptionGroup, eg_template) + + # Match Everything + match, rest = self._split_exception_group(eg, BaseException) + self.assertMatchesTemplate(match, ExceptionGroup, eg_template) + self.assertIsNone(rest) + match, rest = self._split_exception_group(eg, (ValueError, TypeError)) + self.assertMatchesTemplate(match, ExceptionGroup, eg_template) + self.assertIsNone(rest) + + # Match ValueErrors + match, rest = self._split_exception_group(eg, ValueError) + self.assertMatchesTemplate(match, ExceptionGroup, valueErrors_template) + self.assertMatchesTemplate(rest, ExceptionGroup, typeErrors_template) + + # Match TypeErrors + match, rest = self._split_exception_group(eg, (TypeError, SyntaxError)) + self.assertMatchesTemplate(match, ExceptionGroup, typeErrors_template) + self.assertMatchesTemplate(rest, ExceptionGroup, valueErrors_template) + + # Match ExceptionGroup + match, rest = eg.split(ExceptionGroup) + self.assertIs(match, eg) + self.assertIsNone(rest) + + # Match MyExceptionGroup (ExceptionGroup subclass) + match, rest = eg.split(MyExceptionGroup) + self.assertMatchesTemplate(match, ExceptionGroup, [eg_template[0]]) + self.assertMatchesTemplate(rest, ExceptionGroup, [eg_template[1]]) + + def test_split_BaseExceptionGroup(self): + def exc(ex): + try: + raise ex + except BaseException as e: + return e + + try: + raise BaseExceptionGroup( + "beg", [exc(ValueError(1)), exc(KeyboardInterrupt(2))]) + except BaseExceptionGroup as e: + beg = e + + # Match Nothing + match, rest = self._split_exception_group(beg, TypeError) + self.assertIsNone(match) + self.assertMatchesTemplate( + rest, BaseExceptionGroup, [ValueError(1), KeyboardInterrupt(2)]) + + # Match Everything + match, rest = self._split_exception_group(beg, (ValueError, KeyboardInterrupt)) + self.assertMatchesTemplate( + match, BaseExceptionGroup, [ValueError(1), KeyboardInterrupt(2)]) + self.assertIsNone(rest) + + # Match ValueErrors + match, rest = self._split_exception_group(beg, ValueError) + self.assertMatchesTemplate(match, ExceptionGroup, [ValueError(1)]) + self.assertMatchesTemplate(rest, BaseExceptionGroup, [KeyboardInterrupt(2)]) + + # Match KeyboardInterrupts + match, rest = self._split_exception_group(beg, KeyboardInterrupt) + self.assertMatchesTemplate(match, BaseExceptionGroup, [KeyboardInterrupt(2)]) + self.assertMatchesTemplate(rest, ExceptionGroup, [ValueError(1)]) + + def test_split_ExceptionGroup_subclass_no_derive_no_new_override(self): + class EG(ExceptionGroup): + pass + + try: + try: + try: + raise TypeError(2) + except TypeError as te: + raise EG("nested", [te]) + except EG as nested: + try: + raise ValueError(1) + except ValueError as ve: + raise EG("eg", [ve, nested]) + except EG as e: + eg = e + + self.assertMatchesTemplate(eg, EG, [ValueError(1), [TypeError(2)]]) + + # Match Nothing + match, rest = self._split_exception_group(eg, OSError) + self.assertIsNone(match) + self.assertMatchesTemplate( + rest, ExceptionGroup, [ValueError(1), [TypeError(2)]]) + + # Match Everything + match, rest = self._split_exception_group(eg, (ValueError, TypeError)) + self.assertMatchesTemplate( + match, ExceptionGroup, [ValueError(1), [TypeError(2)]]) + self.assertIsNone(rest) + + # Match ValueErrors + match, rest = self._split_exception_group(eg, ValueError) + self.assertMatchesTemplate(match, ExceptionGroup, [ValueError(1)]) + self.assertMatchesTemplate(rest, ExceptionGroup, [[TypeError(2)]]) + + # Match TypeErrors + match, rest = self._split_exception_group(eg, TypeError) + self.assertMatchesTemplate(match, ExceptionGroup, [[TypeError(2)]]) + self.assertMatchesTemplate(rest, ExceptionGroup, [ValueError(1)]) + + def test_split_BaseExceptionGroup_subclass_no_derive_new_override(self): + class EG(BaseExceptionGroup): + def __new__(cls, message, excs, unused): + # The "unused" arg is here to show that split() doesn't call + # the actual class constructor from the default derive() + # implementation (it would fail on unused arg if so because + # it assumes the BaseExceptionGroup.__new__ signature). + return super().__new__(cls, message, excs) + + try: + raise EG("eg", [ValueError(1), KeyboardInterrupt(2)], "unused") + except EG as e: + eg = e + + self.assertMatchesTemplate( + eg, EG, [ValueError(1), KeyboardInterrupt(2)]) + + # Match Nothing + match, rest = self._split_exception_group(eg, OSError) + self.assertIsNone(match) + self.assertMatchesTemplate( + rest, BaseExceptionGroup, [ValueError(1), KeyboardInterrupt(2)]) + + # Match Everything + match, rest = self._split_exception_group(eg, (ValueError, KeyboardInterrupt)) + self.assertMatchesTemplate( + match, BaseExceptionGroup, [ValueError(1), KeyboardInterrupt(2)]) + self.assertIsNone(rest) + + # Match ValueErrors + match, rest = self._split_exception_group(eg, ValueError) + self.assertMatchesTemplate(match, ExceptionGroup, [ValueError(1)]) + self.assertMatchesTemplate( + rest, BaseExceptionGroup, [KeyboardInterrupt(2)]) + + # Match KeyboardInterrupt + match, rest = self._split_exception_group(eg, KeyboardInterrupt) + self.assertMatchesTemplate( + match, BaseExceptionGroup, [KeyboardInterrupt(2)]) + self.assertMatchesTemplate(rest, ExceptionGroup, [ValueError(1)]) + + def test_split_ExceptionGroup_subclass_derive_and_new_overrides(self): + class EG(ExceptionGroup): + def __new__(cls, message, excs, code): + obj = super().__new__(cls, message, excs) + obj.code = code + return obj + + def derive(self, excs): + return EG(self.message, excs, self.code) + + try: + try: + try: + raise TypeError(2) + except TypeError as te: + raise EG("nested", [te], 101) + except EG as nested: + try: + raise ValueError(1) + except ValueError as ve: + raise EG("eg", [ve, nested], 42) + except EG as e: + eg = e + + self.assertMatchesTemplate(eg, EG, [ValueError(1), [TypeError(2)]]) + + # Match Nothing + match, rest = self._split_exception_group(eg, OSError) + self.assertIsNone(match) + self.assertMatchesTemplate(rest, EG, [ValueError(1), [TypeError(2)]]) + self.assertEqual(rest.code, 42) + self.assertEqual(rest.exceptions[1].code, 101) + + # Match Everything + match, rest = self._split_exception_group(eg, (ValueError, TypeError)) + self.assertMatchesTemplate(match, EG, [ValueError(1), [TypeError(2)]]) + self.assertEqual(match.code, 42) + self.assertEqual(match.exceptions[1].code, 101) + self.assertIsNone(rest) + + # Match ValueErrors + match, rest = self._split_exception_group(eg, ValueError) + self.assertMatchesTemplate(match, EG, [ValueError(1)]) + self.assertEqual(match.code, 42) + self.assertMatchesTemplate(rest, EG, [[TypeError(2)]]) + self.assertEqual(rest.code, 42) + self.assertEqual(rest.exceptions[0].code, 101) + + # Match TypeErrors + match, rest = self._split_exception_group(eg, TypeError) + self.assertMatchesTemplate(match, EG, [[TypeError(2)]]) + self.assertEqual(match.code, 42) + self.assertEqual(match.exceptions[0].code, 101) + self.assertMatchesTemplate(rest, EG, [ValueError(1)]) + self.assertEqual(rest.code, 42) + + +if __name__ == '__main__': + unittest.main() diff --git a/Lib/test/test_pickle.py b/Lib/test/test_pickle.py index 23c7bd261e85ca..35ee79782e96d6 100644 --- a/Lib/test/test_pickle.py +++ b/Lib/test/test_pickle.py @@ -478,6 +478,8 @@ def test_exceptions(self): self.assertEqual(reverse_mapping('builtins', 'OSError'), ('exceptions', 'OSError')) + exceptions_added_in_python_3 = [ + 'BaseExceptionGroup', 'ExceptionGroup'] for name, exc in get_exceptions(builtins): with self.subTest(name): if exc in (BlockingIOError, @@ -494,7 +496,7 @@ def test_exceptions(self): ('exceptions', 'ImportError')) self.assertEqual(mapping('exceptions', name), ('exceptions', name)) - else: + elif not name in exceptions_added_in_python_3: self.assertEqual(reverse_mapping('builtins', name), ('exceptions', name)) self.assertEqual(mapping('exceptions', name), diff --git a/Objects/exceptions.c b/Objects/exceptions.c index 20fcd4e04bf30a..c8d08b0cf92d1c 100644 --- a/Objects/exceptions.c +++ b/Objects/exceptions.c @@ -624,6 +624,402 @@ ComplexExtendsException(PyExc_BaseException, SystemExit, SystemExit, 0, 0, SystemExit_members, 0, 0, "Request to exit from the interpreter."); +/* + * BaseExceptionGroup extends BaseException + * ExceptionGroup extends BaseExceptionGroup and Exception + */ + +static PyObject *PyExc_ExceptionGroup; + +static PyObject * +BaseExceptionGroup_new(PyTypeObject *type, PyObject *args, PyObject *kwds) +{ + PyObject *msg = NULL; + PyObject *excs = NULL; + + if (!PyArg_ParseTuple(args, "OO", &msg, &excs)) { + return NULL; + } + if (!PyUnicode_CheckExact(msg)) { + PyErr_SetString(PyExc_TypeError, "Expected a message"); + return NULL; + } + Py_ssize_t numexcs = -1; + if (PySequence_Check(excs)) { + numexcs = PySequence_Length(excs); + } + if (numexcs <= 0) { + PyErr_SetString(PyExc_TypeError, "Expected a non-empty sequence"); + return NULL; + } + + int nested_base_exceptions = 0; + for (Py_ssize_t i = 0; i < numexcs; i++) { + PyObject *exc = PySequence_GetItem(excs, i); + if (!exc) { + return NULL; + } + if (!PyExceptionInstance_Check(exc)) { + PyErr_SetString(PyExc_TypeError, + "Nested exceptions must derive from BaseException"); + Py_DECREF(exc); + return NULL; + } + int is_exception = PyObject_IsInstance(exc, PyExc_Exception); + Py_DECREF(exc); + if (is_exception < 0) { + return NULL; + } + else if (is_exception == 0) { + nested_base_exceptions = 1; + } + } + + PyTypeObject *cls = type; + if (cls == (PyTypeObject*)PyExc_ExceptionGroup) { + if (nested_base_exceptions) { + PyErr_SetString(PyExc_TypeError, + "Cannot nest BaseExceptions in an ExceptionGroup"); + return NULL; + } + } + else if (cls == (PyTypeObject*)PyExc_BaseExceptionGroup) { + if (!nested_base_exceptions) { + /* All nested exceptions are Exception subclasses, + * wrap them in an ExceptionGroup + */ + cls = (PyTypeObject*)PyExc_ExceptionGroup; + } + } + else { + /* Do nothing - we don't interfere with subclasses */ + } + + PyBaseExceptionGroupObject *self = + (PyBaseExceptionGroupObject*)BaseException_new(cls, args, kwds); + self->msg = Py_NewRef(msg); + self->excs = PySequence_Tuple(excs); + return (PyObject*)self; +} + +static int +BaseExceptionGroup_init(PyBaseExceptionGroupObject *self, + PyObject *args, PyObject *kwds) +{ + if (!_PyArg_NoKeywords(Py_TYPE(self)->tp_name, kwds)) { + return -1; + } + if (BaseException_init((PyBaseExceptionObject *)self, args, kwds) == -1) { + return -1; + } + return 0; +} + +static int +BaseExceptionGroup_clear(PyBaseExceptionGroupObject *self) +{ + Py_CLEAR(self->msg); + Py_CLEAR(self->excs); + return BaseException_clear((PyBaseExceptionObject *)self); +} + +static void +BaseExceptionGroup_dealloc(PyBaseExceptionGroupObject *self) +{ + _PyObject_GC_UNTRACK(self); + BaseExceptionGroup_clear(self); + Py_TYPE(self)->tp_free((PyObject *)self); +} + +static int +BaseExceptionGroup_traverse(PyBaseExceptionGroupObject *self, visitproc visit, void *arg) +{ + Py_VISIT(self->msg); + Py_VISIT(self->excs); + return BaseException_traverse((PyBaseExceptionObject *)self, visit, arg); +} + +static PyObject * +BaseExceptionGroup_str(PyBaseExceptionGroupObject *self) +{ + if (self->msg && PyUnicode_CheckExact(self->msg)) { + Py_INCREF(self->msg); + return self->msg; + } + else { + return BaseException_str((PyBaseExceptionObject *)self); + } +} + +static PyObject * +BaseExceptionGroup_derive(PyBaseExceptionGroupObject *self, + PyObject *args, PyObject *kwds) { + + PyObject *excs = NULL; + if (!PyArg_ParseTuple(args, "O", &excs)) { + return NULL; + } + PyObject *init_args = PyTuple_Pack(2, self->msg, excs); + if (!init_args) { + return NULL; + } + PyObject *eg = PyObject_CallObject( + PyExc_BaseExceptionGroup, init_args); + Py_DECREF(init_args); + return eg; +} + +static PyObject* +exceptiongroup_subset(PyBaseExceptionGroupObject *orig, PyObject *excs) +{ + /* Return an ExceptionGroup wrapping excs with metadata from orig. + + This function is used by split() to construct the match/rest parts, + so excs is the matching or non-matching sub-sequence of orig->excs + (this function does not verify that it is a subsequence). + */ + Py_ssize_t num_excs = PySequence_Size(excs); + if (num_excs < 0) { + return NULL; + } + else if (num_excs == 0) { + return Py_NewRef(Py_None); + } + + PyObject *eg = PyObject_CallMethod( + (PyObject*)orig, "derive", "(O)", excs); + if (!eg) { + return NULL; + } + + if (!PyObject_TypeCheck(eg, (PyTypeObject *)PyExc_BaseExceptionGroup)) { + PyErr_SetString(PyExc_TypeError, + "derive must return an instance of BaseExceptionGroup"); + goto error; + } + + PyObject *tb = PyException_GetTraceback((PyObject*)orig); + if (tb) { + int res = PyException_SetTraceback(eg, tb); + Py_XDECREF(tb); + if (res == -1) { + goto error; + } + } + PyObject *context = PyException_GetContext((PyObject*)orig); + if (context) { + PyException_SetContext(eg, context); + } + PyObject *cause = PyException_GetCause((PyObject*)orig); + if (cause) { + PyException_SetCause(eg, cause); + } + return eg; +error: + Py_XDECREF(eg); + return NULL; +} + +static int exceptiongroup_split_check_match(PyObject *exc, PyObject *matcher) +{ + if (PyExceptionClass_Check(matcher) || PyTuple_CheckExact(matcher)) { + /* case 1: matcher is an exception type or a tuple of them */ + return PyErr_GivenExceptionMatches(exc, matcher); + } + else if (PyFunction_Check(matcher)) { + /* case 2: function matcher */ + PyObject *exc_matches = PyObject_CallOneArg(matcher, exc); + if (exc_matches == NULL) { + return -1; + } + int is_true = PyObject_IsTrue(exc_matches); + Py_DECREF(exc_matches); + return is_true; + } + else { + PyErr_SetString(PyExc_RuntimeError,"Invalid matcher type"); + return -1; + } +} + +static PyObject * +exceptiongroup_split_recursive(PyObject *exc, PyObject *matcher, int complement) +{ + int is_match = exceptiongroup_split_check_match(exc, matcher); + if (is_match < 0) { + return NULL; + } + + if (is_match) { + /* Full match */ + return PyTuple_Pack(2, exc, Py_None); + } + else if (!PyObject_TypeCheck(exc, (PyTypeObject *)PyExc_BaseExceptionGroup)) { + /* Leaf exception and no match */ + return PyTuple_Pack( + 2, Py_None, complement ? (PyObject*)exc : Py_None); + } + else { + /* Partial match */ + PyBaseExceptionGroupObject *eg = (PyBaseExceptionGroupObject *)exc; + PyObject *match_list = NULL; + PyObject *rest_list = NULL; + PyObject *match_exc = NULL; + PyObject *rest_exc = NULL; + PyObject *result = NULL; + + Py_ssize_t num_excs = PySequence_Length(eg->excs); + if (num_excs < 0) { + goto done; + } + match_list = PyList_New(0); + if (!match_list) { + goto done; + } + if (complement) { + rest_list = PyList_New(0); + if (!rest_list) { + goto done; + } + } + /* recursive calls */ + for (Py_ssize_t i = 0; i < num_excs; i++) { + PyObject *e = PySequence_GetItem(eg->excs, i); + if (!e) { + goto done; + } + PyObject *rec = exceptiongroup_split_recursive( + e, matcher, complement); + Py_DECREF(e); + if (!rec) { + goto done; + } + if (!PyTuple_CheckExact(rec) || PyTuple_GET_SIZE(rec) != 2) { + PyErr_SetString(PyExc_RuntimeError, + "Internal error: invalid value"); + Py_DECREF(rec); + goto done; + } + int res = 0; + PyObject *e_match = PyTuple_GET_ITEM(rec, 0); + if (e_match != Py_None) { + res += PyList_Append(match_list, e_match); + } + PyObject *e_rest = PyTuple_GET_ITEM(rec, 1); + if (e_rest != Py_None) { + res += PyList_Append(rest_list, e_rest); + } + Py_DECREF(rec); + if (res < 0) { + goto done; + } + } + + /* construct result */ + match_exc = exceptiongroup_subset(eg, match_list); + if (!match_exc) { + goto done; + } + + if (complement) { + rest_exc = exceptiongroup_subset(eg, rest_list); + if (!rest_exc) { + goto done; + } + } + else { + rest_exc = Py_NewRef(Py_None); + } + result = PyTuple_Pack(2, match_exc, rest_exc); + done: + Py_XDECREF(match_exc); + Py_XDECREF(rest_exc); + Py_XDECREF(match_list); + Py_XDECREF(rest_list); + return result; + } +} + +static PyObject * +BaseExceptionGroup_split(PyBaseExceptionGroupObject *self, + PyObject *args, + PyObject *kwds) +{ + PyObject *matcher = NULL; + if (!PyArg_UnpackTuple(args, "split", 1, 1, &matcher)) { + return NULL; + } + + return exceptiongroup_split_recursive( + (PyObject*)self, matcher, 1 /* with_complement */); +} + +static PyObject * +BaseExceptionGroup_subgroup(PyBaseExceptionGroupObject *self, + PyObject *args, + PyObject *kwds) +{ + PyObject *matcher = NULL; + if (!PyArg_UnpackTuple(args, "subgroup", 1, 1, &matcher)) { + return NULL; + } + + PyObject *ret = exceptiongroup_split_recursive( + (PyObject*)self, matcher, 0 /* without complement */); + + if (!ret) { + return NULL; + } + if (!PyTuple_CheckExact(ret)) { + PyErr_SetString(PyExc_RuntimeError, + "Internal error: expected a 2-tuple"); + Py_DECREF(ret); + return NULL; + } + PyObject *match = Py_NewRef(PyTuple_GetItem(ret, 0)); + Py_DECREF(ret); + return match; +} + +static PyMemberDef BaseExceptionGroup_members[] = { + {"message", T_OBJECT, offsetof(PyBaseExceptionGroupObject, msg), READONLY, + PyDoc_STR("exception message")}, + {"exceptions", T_OBJECT, offsetof(PyBaseExceptionGroupObject, excs), READONLY, + PyDoc_STR("nested exceptions")}, + {NULL} /* Sentinel */ +}; + +static PyMethodDef BaseExceptionGroup_methods[] = { + {"derive", (PyCFunction)BaseExceptionGroup_derive, METH_VARARGS}, + {"split", (PyCFunction)BaseExceptionGroup_split, METH_VARARGS}, + {"subgroup", (PyCFunction)BaseExceptionGroup_subgroup, METH_VARARGS}, + {NULL} +}; + +ComplexExtendsException(PyExc_BaseException, BaseExceptionGroup, + BaseExceptionGroup, BaseExceptionGroup_new /* new */, + BaseExceptionGroup_methods, BaseExceptionGroup_members, + 0 /* getset */, BaseExceptionGroup_str, + "A combination of multiple unrelated exceptions."); + +/* + * ExceptionGroup extends BaseExceptionGroup, Exception + */ +PyObject* create_exception_group_class() { + PyObject *bases = PyTuple_Pack( + 2, PyExc_BaseExceptionGroup, PyExc_Exception); + if (bases == NULL) { + return NULL; + } + + PyExc_ExceptionGroup = PyErr_NewException( + "builtins.ExceptionGroup", bases, NULL); + if (PyExc_ExceptionGroup == NULL) { + return NULL; + } + return PyExc_ExceptionGroup; +} + /* * KeyboardInterrupt extends BaseException */ @@ -2681,6 +3077,7 @@ _PyExc_Init(PyInterpreterState *interp) } while (0) PRE_INIT(BaseException); + PRE_INIT(BaseExceptionGroup); PRE_INIT(Exception); PRE_INIT(TypeError); PRE_INIT(StopAsyncIteration); @@ -2815,8 +3212,14 @@ _PyBuiltins_AddExceptions(PyObject *bltinmod) return _PyStatus_ERR("exceptions bootstrapping error."); } + if (!create_exception_group_class()) { + return _PyStatus_ERR("exceptions bootstrapping error."); + } + POST_INIT(BaseException); POST_INIT(Exception); + POST_INIT(BaseExceptionGroup); + POST_INIT(ExceptionGroup); POST_INIT(TypeError); POST_INIT(StopAsyncIteration); POST_INIT(StopIteration); diff --git a/PC/python3dll.c b/PC/python3dll.c index 200d1d14e294d1..1f8c0b8f57d4d4 100755 --- a/PC/python3dll.c +++ b/PC/python3dll.c @@ -753,6 +753,7 @@ EXPORT_DATA(PyExc_ArithmeticError) EXPORT_DATA(PyExc_AssertionError) EXPORT_DATA(PyExc_AttributeError) EXPORT_DATA(PyExc_BaseException) +EXPORT_DATA(PyExc_BaseExceptionGroup) EXPORT_DATA(PyExc_BlockingIOError) EXPORT_DATA(PyExc_BrokenPipeError) EXPORT_DATA(PyExc_BufferError) @@ -767,6 +768,7 @@ EXPORT_DATA(PyExc_EncodingWarning) EXPORT_DATA(PyExc_EnvironmentError) EXPORT_DATA(PyExc_EOFError) EXPORT_DATA(PyExc_Exception) +EXPORT_DATA(PyExc_ExceptionGroup) EXPORT_DATA(PyExc_FileExistsError) EXPORT_DATA(PyExc_FileNotFoundError) EXPORT_DATA(PyExc_FloatingPointError) diff --git a/Python/importlib_external.h b/Python/importlib_external.h index 73a21b696689d2..037a6c6d23bf5d 100644 --- a/Python/importlib_external.h +++ b/Python/importlib_external.h @@ -1643,6 +1643,7 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 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, +<<<<<<< HEAD 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, @@ -1671,6 +1672,276 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 0,114,7,1,0,0,78,41,3,114,76,0,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, +======= + 52,4,0,0,115,6,0,0,0,12,2,8,1,255,128,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,150,0,0,0,114,149,0,0,0,114,151,0,0,0, + 114,152,0,0,0,114,236,0,0,0,114,16,1,0,0,114, + 22,1,0,0,114,160,0,0,0,114,248,0,0,0,114,203, + 0,0,0,114,255,0,0,0,114,33,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,25,1,0,0,114,8,0,0,0, + 114,11,1,0,0,8,4,0,0,115,26,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,255,128,114,11,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,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,32,102,111,114,32,116,104,101, + 32,112,97,116,104,46,41,2,114,193,0,0,0,114,6,1, + 0,0,78,41,3,114,75,0,0,0,218,8,115,116,95,109, + 116,105,109,101,90,7,115,116,95,115,105,122,101,41,3,114, + 143,0,0,0,114,65,0,0,0,114,10,1,0,0,114,7, + 0,0,0,114,7,0,0,0,114,8,0,0,0,114,252,0, + 0,0,62,4,0,0,115,6,0,0,0,8,2,14,1,255, + 128,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,5, + 0,0,0,67,0,0,0,115,24,0,0,0,116,0,124,1, + 131,1,125,4,124,0,106,1,124,2,124,3,124,4,100,1, + 141,3,83,0,41,2,78,169,1,218,5,95,109,111,100,101, + 41,2,114,139,0,0,0,114,253,0,0,0,41,5,114,143, + 0,0,0,114,134,0,0,0,114,132,0,0,0,114,41,0, + 0,0,114,78,0,0,0,114,7,0,0,0,114,7,0,0, + 0,114,8,0,0,0,114,254,0,0,0,67,4,0,0,115, + 6,0,0,0,8,2,16,1,255,128,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,87,0,0, + 0,114,36,1,0,0,99,3,0,0,0,0,0,0,0,1, + 0,0,0,9,0,0,0,11,0,0,0,67,0,0,0,115, + 254,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,48,125,7,116,4, + 124,4,124,7,131,2,125,4,122,7,116,5,160,6,124,4, + 161,1,1,0,87,0,113,35,4,0,116,7,121,58,1,0, + 1,0,1,0,89,0,113,35,4,0,116,8,121,126,1,0, + 125,8,1,0,122,15,116,9,160,10,100,1,124,4,124,8, + 161,3,1,0,87,0,89,0,100,2,125,8,126,8,1,0, + 100,2,83,0,100,2,125,8,126,8,119,1,122,15,116,11, + 124,1,124,2,124,3,131,3,1,0,116,9,160,10,100,3, + 124,1,161,2,1,0,87,0,100,2,83,0,4,0,116,8, + 121,125,1,0,125,8,1,0,122,14,116,9,160,10,100,1, + 124,1,124,8,161,3,1,0,87,0,89,0,100,2,125,8, + 126,8,100,2,83,0,100,2,125,8,126,8,119,1,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, + 74,0,0,0,114,83,0,0,0,114,61,0,0,0,218,8, + 114,101,118,101,114,115,101,100,114,67,0,0,0,114,18,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,76,0,0,0,114, + 159,0,0,0,114,173,0,0,0,114,95,0,0,0,41,9, + 114,143,0,0,0,114,65,0,0,0,114,41,0,0,0,114, + 37,1,0,0,218,6,112,97,114,101,110,116,114,120,0,0, + 0,114,63,0,0,0,114,68,0,0,0,114,0,1,0,0, + 114,7,0,0,0,114,7,0,0,0,114,8,0,0,0,114, + 253,0,0,0,72,4,0,0,115,58,0,0,0,12,2,4, + 1,12,2,12,1,10,1,12,254,12,4,10,1,2,1,14, + 1,12,1,4,2,14,1,6,3,4,1,4,255,16,2,8, + 128,2,1,12,1,18,1,14,1,8,2,2,1,18,255,8, + 128,2,254,2,247,255,128,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,150,0,0,0,114,149,0,0,0,114, + 151,0,0,0,114,152,0,0,0,114,252,0,0,0,114,254, + 0,0,0,114,253,0,0,0,114,7,0,0,0,114,7,0, + 0,0,114,7,0,0,0,114,8,0,0,0,114,34,1,0, + 0,58,4,0,0,115,12,0,0,0,8,0,4,2,8,2, + 8,5,18,5,255,128,114,34,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,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,124,3, + 124,1,124,4,131,3,1,0,116,3,116,4,124,3,131,1, + 100,2,100,0,133,2,25,0,124,1,124,2,100,3,141,3, + 83,0,41,4,78,114,183,0,0,0,114,169,0,0,0,41, + 2,114,141,0,0,0,114,132,0,0,0,41,5,114,203,0, + 0,0,114,255,0,0,0,114,176,0,0,0,114,189,0,0, + 0,114,7,1,0,0,41,5,114,143,0,0,0,114,163,0, + 0,0,114,65,0,0,0,114,41,0,0,0,114,175,0,0, + 0,114,7,0,0,0,114,7,0,0,0,114,8,0,0,0, +<<<<<<< HEAD + 114,241,0,0,0,107,4,0,0,115,24,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,255,128,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,23, + 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,247,0,0,0,114,7,0,0,0,114,7, + 0,0,0,114,8,0,0,0,114,1,1,0,0,123,4,0, + 0,114,24,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,150,0,0,0,114, + 149,0,0,0,114,151,0,0,0,114,152,0,0,0,114,241, + 0,0,0,114,1,1,0,0,114,7,0,0,0,114,7,0, + 0,0,114,7,0,0,0,114,8,0,0,0,114,41,1,0, + 0,103,4,0,0,115,10,0,0,0,8,0,4,2,8,2, + 12,16,255,128,114,41,1,0,0,99,0,0,0,0,0,0, +======= + 114,248,0,0,0,120,3,0,0,115,18,0,0,0,8,0, + 8,2,8,8,8,14,8,10,8,7,14,10,12,8,255,128, + 114,248,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,183,0,0,0,41,3,114,143,0,0,0, + 114,163,0,0,0,114,65,0,0,0,114,7,0,0,0,114, + 7,0,0,0,114,8,0,0,0,114,235,0,0,0,13,4, + 0,0,115,6,0,0,0,6,3,10,1,255,128,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,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,69,0,0,0,169,2,218, + 9,95,95,99,108,97,115,115,95,95,114,156,0,0,0,169, + 2,114,143,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,19,4,0,0,243,8,0,0,0,12,1,10, + 1,2,255,255,128,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,69,0,0,0,169, + 3,218,4,104,97,115,104,114,141,0,0,0,114,65,0,0, + 0,169,1,114,143,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,23,4,0,0,243,4,0,0,0,20,1,255,128,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,10,1,0,0,114,247,0,0,0,114,246,0, + 0,0,169,1,114,13,1,0,0,114,7,0,0,0,114,8, + 0,0,0,114,247,0,0,0,26,4,0,0,115,4,0,0, + 0,16,10,255,128,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,71,0,0,0,114,246,0,0,0,114,7,0,0,0,114, + 7,0,0,0,114,8,0,0,0,114,203,0,0,0,38,4, + 0,0,243,4,0,0,0,6,3,255,128,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,8,0,0,0,67,0,0,0,115,128,0, + 0,0,116,0,124,0,116,1,116,2,102,2,131,2,114,36, + 116,3,160,4,116,5,124,1,131,1,161,1,143,12,125,2, + 124,2,160,6,161,0,87,0,2,0,100,1,4,0,4,0, + 131,3,1,0,83,0,49,0,115,29,119,1,1,0,1,0, + 1,0,89,0,1,0,100,1,83,0,116,3,160,7,124,1, + 100,2,161,2,143,12,125,2,124,2,160,6,161,0,87,0, + 2,0,100,1,4,0,4,0,131,3,1,0,83,0,49,0, + 115,57,119,1,1,0,1,0,1,0,89,0,1,0,100,1, + 83,0,41,3,122,39,82,101,116,117,114,110,32,116,104,101, + 32,100,97,116,97,32,102,114,111,109,32,112,97,116,104,32, + 97,115,32,114,97,119,32,98,121,116,101,115,46,78,218,1, + 114,41,8,114,185,0,0,0,114,248,0,0,0,218,19,69, + 120,116,101,110,115,105,111,110,70,105,108,101,76,111,97,100, + 101,114,114,91,0,0,0,90,9,111,112,101,110,95,99,111, + 100,101,114,109,0,0,0,90,4,114,101,97,100,114,92,0, + 0,0,41,3,114,143,0,0,0,114,65,0,0,0,114,94, + 0,0,0,114,7,0,0,0,114,7,0,0,0,114,8,0, + 0,0,114,254,0,0,0,43,4,0,0,115,16,0,0,0, + 14,2,16,1,22,1,20,128,14,2,22,1,20,128,255,128, + 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,30,1,0,0,41,3,114,143,0,0,0,114,243, + 0,0,0,114,30,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,52,4,0,0, + 115,6,0,0,0,12,2,8,1,255,128,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,150,0, + 0,0,114,149,0,0,0,114,151,0,0,0,114,152,0,0, + 0,114,235,0,0,0,114,15,1,0,0,114,21,1,0,0, + 114,160,0,0,0,114,247,0,0,0,114,203,0,0,0,114, + 254,0,0,0,114,32,1,0,0,218,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,24,1,0,0,114,8,0,0,0,114,10,1,0, + 0,8,4,0,0,115,26,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,255,128,114,10,1,0,0,99,0,0,0,0,0,0, +>>>>>>> added exception groups + 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, +<<<<<<< HEAD + 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,30,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,69,0,0,0,114,183,0,0, + 0,41,3,114,143,0,0,0,114,141,0,0,0,114,65,0, +>>>>>>> added exception groups 0,0,114,7,0,0,0,114,7,0,0,0,114,8,0,0, 0,114,253,0,0,0,66,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, @@ -2080,6 +2351,7 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 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, +<<<<<<< HEAD 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,249,4,0,0,115, @@ -2113,6 +2385,274 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 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,0,0,114,24, 0,0,0,41,2,78,84,114,7,0,0,0,114,248,0,0, +======= + 0,114,69,0,0,0,41,2,114,47,1,0,0,114,49,1, + 0,0,114,53,1,0,0,114,7,0,0,0,114,7,0,0, + 0,114,8,0,0,0,114,236,0,0,0,245,4,0,0,115, + 4,0,0,0,18,1,255,128,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,99,0,0,0,114,100,0,0,0,114,101,0,0, + 0,114,89,0,0,0,114,150,0,0,0,41,1,114,244,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,248,4, + 0,0,115,10,0,0,0,6,7,2,1,4,255,12,2,255, + 128,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,2,0,0,0, + 1,0,0,0,67,0,0,0,114,23,0,0,0,41,2,78, + 84,114,7,0,0,0,114,247,0,0,0,114,7,0,0,0, + 114,7,0,0,0,114,8,0,0,0,114,206,0,0,0,3, + 5,0,0,243,4,0,0,0,4,1,255,128,122,27,95,78, + 97,109,101,115,112,97,99,101,76,111,97,100,101,114,46,105, +======= + 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,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,32,102,111,114,32,116,104,101,32,112,97,116, + 104,46,41,2,114,193,0,0,0,114,5,1,0,0,78,41, + 3,114,75,0,0,0,218,8,115,116,95,109,116,105,109,101, + 90,7,115,116,95,115,105,122,101,41,3,114,143,0,0,0, + 114,65,0,0,0,114,9,1,0,0,114,7,0,0,0,114, + 7,0,0,0,114,8,0,0,0,114,251,0,0,0,62,4, + 0,0,115,6,0,0,0,8,2,14,1,255,128,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,5,0,0,0,67, + 0,0,0,115,24,0,0,0,116,0,124,1,131,1,125,4, + 124,0,106,1,124,2,124,3,124,4,100,1,141,3,83,0, + 41,2,78,169,1,218,5,95,109,111,100,101,41,2,114,139, + 0,0,0,114,252,0,0,0,41,5,114,143,0,0,0,114, + 134,0,0,0,114,132,0,0,0,114,41,0,0,0,114,78, + 0,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,6,0,0,0, + 8,2,16,1,255,128,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,87,0,0,0,114,36,1, + 0,0,99,3,0,0,0,0,0,0,0,1,0,0,0,9, + 0,0,0,11,0,0,0,67,0,0,0,115,254,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,48,125,7,116,4,124,4,124,7, + 131,2,125,4,122,7,116,5,160,6,124,4,161,1,1,0, + 87,0,113,35,4,0,116,7,121,58,1,0,1,0,1,0, + 89,0,113,35,4,0,116,8,121,126,1,0,125,8,1,0, + 122,15,116,9,160,10,100,1,124,4,124,8,161,3,1,0, + 87,0,89,0,100,2,125,8,126,8,1,0,100,2,83,0, + 100,2,125,8,126,8,119,1,122,15,116,11,124,1,124,2, + 124,3,131,3,1,0,116,9,160,10,100,3,124,1,161,2, + 1,0,87,0,100,2,83,0,4,0,116,8,121,125,1,0, + 125,8,1,0,122,14,116,9,160,10,100,1,124,1,124,8, + 161,3,1,0,87,0,89,0,100,2,125,8,126,8,100,2, + 83,0,100,2,125,8,126,8,119,1,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,74,0,0,0, + 114,83,0,0,0,114,61,0,0,0,218,8,114,101,118,101, + 114,115,101,100,114,67,0,0,0,114,18,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,76,0,0,0,114,159,0,0,0, + 114,173,0,0,0,114,95,0,0,0,41,9,114,143,0,0, + 0,114,65,0,0,0,114,41,0,0,0,114,37,1,0,0, + 218,6,112,97,114,101,110,116,114,120,0,0,0,114,63,0, + 0,0,114,68,0,0,0,114,255,0,0,0,114,7,0,0, + 0,114,7,0,0,0,114,8,0,0,0,114,252,0,0,0, + 72,4,0,0,115,58,0,0,0,12,2,4,1,12,2,12, + 1,10,1,12,254,12,4,10,1,2,1,14,1,12,1,4, + 2,14,1,6,3,4,1,4,255,16,2,8,128,2,1,12, + 1,18,1,14,1,8,2,2,1,18,255,8,128,2,254,2, + 247,255,128,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,150,0,0,0,114,149,0,0,0,114,151,0,0,0, + 114,152,0,0,0,114,251,0,0,0,114,253,0,0,0,114, + 252,0,0,0,114,7,0,0,0,114,7,0,0,0,114,7, + 0,0,0,114,8,0,0,0,114,34,1,0,0,58,4,0, + 0,115,12,0,0,0,8,0,4,2,8,2,8,5,18,5, + 255,128,114,34,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,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,124,3,124,1,124,4, + 131,3,1,0,116,3,116,4,124,3,131,1,100,2,100,0, + 133,2,25,0,124,1,124,2,100,3,141,3,83,0,41,4, + 78,114,183,0,0,0,114,169,0,0,0,41,2,114,141,0, + 0,0,114,132,0,0,0,41,5,114,203,0,0,0,114,254, + 0,0,0,114,176,0,0,0,114,189,0,0,0,114,6,1, + 0,0,41,5,114,143,0,0,0,114,163,0,0,0,114,65, + 0,0,0,114,41,0,0,0,114,175,0,0,0,114,7,0, + 0,0,114,7,0,0,0,114,8,0,0,0,114,240,0,0, + 0,107,4,0,0,115,24,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, + 255,128,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,23,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,246,0,0,0,114,7,0,0,0,114,7,0,0,0,114, + 8,0,0,0,114,0,1,0,0,123,4,0,0,114,24,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,150,0,0,0,114,149,0,0,0, + 114,151,0,0,0,114,152,0,0,0,114,240,0,0,0,114, + 0,1,0,0,114,7,0,0,0,114,7,0,0,0,114,7, + 0,0,0,114,8,0,0,0,114,41,1,0,0,103,4,0, + 0,115,10,0,0,0,8,0,4,2,8,2,12,16,255,128, + 114,41,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,29,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,69,0,0,0,114,183,0,0,0,41,3,114, + 143,0,0,0,114,141,0,0,0,114,65,0,0,0,114,7, + 0,0,0,114,7,0,0,0,114,8,0,0,0,114,235,0, + 0,0,136,4,0,0,115,6,0,0,0,6,1,10,1,255, + 128,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,11,1,0,0,114,69,0, + 0,0,114,12,1,0,0,114,14,1,0,0,114,7,0,0, + 0,114,7,0,0,0,114,8,0,0,0,114,15,1,0,0, + 140,4,0,0,114,16,1,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,17, + 1,0,0,114,69,0,0,0,114,18,1,0,0,114,20,1, + 0,0,114,7,0,0,0,114,7,0,0,0,114,8,0,0, + 0,114,21,1,0,0,144,4,0,0,114,22,1,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,159,0,0,0,114,241,0,0,0,114,187, + 0,0,0,90,14,99,114,101,97,116,101,95,100,121,110,97, + 109,105,99,114,173,0,0,0,114,141,0,0,0,114,65,0, + 0,0,41,3,114,143,0,0,0,114,210,0,0,0,114,243, + 0,0,0,114,7,0,0,0,114,7,0,0,0,114,8,0, + 0,0,114,238,0,0,0,147,4,0,0,115,16,0,0,0, + 4,2,6,1,4,255,6,2,8,1,4,255,4,2,255,128, + 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,159,0,0,0,114,241,0,0,0,114,187, + 0,0,0,90,12,101,120,101,99,95,100,121,110,97,109,105, + 99,114,173,0,0,0,114,141,0,0,0,114,65,0,0,0, + 169,2,114,143,0,0,0,114,243,0,0,0,114,7,0,0, + 0,114,7,0,0,0,114,8,0,0,0,114,244,0,0,0, + 155,4,0,0,115,10,0,0,0,14,2,6,1,8,1,8, + 255,255,128,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,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,116,117,114,110, + 32,84,114,117,101,32,105,102,32,116,104,101,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,235,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,164,4,0,0,115,8,0,0,0,6,128,2,1,20, + 255,255,128,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,74,0,0,0,114,65, + 0,0,0,218,3,97,110,121,114,231,0,0,0,114,246,0, + 0,0,114,7,0,0,0,114,45,1,0,0,114,8,0,0, + 0,114,206,0,0,0,161,4,0,0,115,10,0,0,0,14, + 2,12,1,2,1,8,255,255,128,122,30,69,120,116,101,110, + 115,105,111,110,70,105,108,101,76,111,97,100,101,114,46,105, +>>>>>>> added exception groups + 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,23,0,0,0,41,2,78,114,10,0,0,0,114, + 7,0,0,0,114,247,0,0,0,114,7,0,0,0,114,7, + 0,0,0,114,8,0,0,0,114,1,1,0,0,6,5,0, + 0,114,75,1,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,10,0,0,0,122,8,60,115,116,114,105, + 110,103,62,114,243,0,0,0,84,41,1,114,3,1,0,0, + 41,1,114,4,1,0,0,114,247,0,0,0,114,7,0,0, + 0,114,7,0,0,0,114,8,0,0,0,114,241,0,0,0, + 9,5,0,0,114,72,1,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,23,0, + 0,0,114,237,0,0,0,114,7,0,0,0,114,238,0,0, +>>>>>>> added exception groups 0,114,7,0,0,0,114,7,0,0,0,114,8,0,0,0, 114,207,0,0,0,7,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, @@ -2174,6 +2714,7 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 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, +<<<<<<< HEAD 0,114,34,1,0,0,34,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, @@ -2397,6 +2938,617 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 0,0,114,8,0,0,0,114,230,0,0,0,167,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, +======= + 0,114,33,1,0,0,30,5,0,0,115,6,0,0,0,12, + 1,10,1,255,128,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,150, + 0,0,0,114,149,0,0,0,114,151,0,0,0,114,236,0, + 0,0,114,233,0,0,0,114,74,1,0,0,114,206,0,0, + 0,114,1,1,0,0,114,241,0,0,0,114,239,0,0,0, + 114,245,0,0,0,114,248,0,0,0,114,33,1,0,0,114, + 7,0,0,0,114,7,0,0,0,114,7,0,0,0,114,8, + 0,0,0,114,73,1,0,0,244,4,0,0,115,24,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,255,128,114,73,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,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,116,4,124,1,100,2,131,2,114,29, + 124,1,160,5,161,0,1,0,113,7,100,1,83,0,41,3, + 122,125,67,97,108,108,32,116,104,101,32,105,110,118,97,108, + 105,100,97,116,101,95,99,97,99,104,101,115,40,41,32,109, + 101,116,104,111,100,32,111,110,32,97,108,108,32,112,97,116, + 104,32,101,110,116,114,121,32,102,105,110,100,101,114,115,10, + 32,32,32,32,32,32,32,32,115,116,111,114,101,100,32,105, + 110,32,115,121,115,46,112,97,116,104,95,105,109,112,111,114, + 116,101,114,95,99,97,99,104,101,115,32,40,119,104,101,114, + 101,32,105,109,112,108,101,109,101,110,116,101,100,41,46,78, + 218,17,105,110,118,97,108,105,100,97,116,101,95,99,97,99, + 104,101,115,41,6,218,4,108,105,115,116,114,15,0,0,0, + 218,19,112,97,116,104,95,105,109,112,111,114,116,101,114,95, + 99,97,99,104,101,218,5,105,116,101,109,115,114,153,0,0, + 0,114,78,1,0,0,41,2,114,141,0,0,0,218,6,102, + 105,110,100,101,114,114,7,0,0,0,114,7,0,0,0,114, +<<<<<<< HEAD + 8,0,0,0,114,78,1,0,0,41,5,0,0,115,16,0, + 0,0,22,4,8,1,10,1,10,1,8,1,2,128,4,252, + 255,128,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,76,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,17,125,1,122,7,124,1,124,0,131,1,87,0,2,0, + 1,0,83,0,4,0,116,5,121,37,1,0,1,0,1,0, + 89,0,113,17,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,15,0,0,0,218,10,112, + 97,116,104,95,104,111,111,107,115,114,99,0,0,0,114,100, + 0,0,0,114,162,0,0,0,114,142,0,0,0,41,2,114, + 65,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,51,5,0,0,115,20,0,0,0,16, + 3,12,1,10,1,2,1,14,1,12,1,4,1,4,2,2, + 253,255,128,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,100,0,0,0,124,1,100,1,107,2,114, + 20,122,6,116,0,160,1,161,0,125,1,87,0,110,9,4, + 0,116,2,121,49,1,0,1,0,1,0,89,0,100,2,83, + 0,122,8,116,3,106,4,124,1,25,0,125,2,87,0,124, + 2,83,0,4,0,116,5,121,48,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,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,10,0,0,0,78,41,7,114,18,0,0,0, + 114,82,0,0,0,218,17,70,105,108,101,78,111,116,70,111, + 117,110,100,69,114,114,111,114,114,15,0,0,0,114,80,1, + 0,0,218,8,75,101,121,69,114,114,111,114,114,84,1,0, + 0,41,3,114,221,0,0,0,114,65,0,0,0,114,82,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,64,5,0,0,115,30,0,0,0, + 8,8,2,1,12,1,12,1,6,3,2,1,12,1,4,4, + 12,253,10,1,12,1,4,1,2,253,2,250,255,128,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,161,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, + 153,0,0,0,114,159,0,0,0,90,12,95,111,98,106,101, + 99,116,95,110,97,109,101,114,99,0,0,0,114,100,0,0, + 0,114,162,0,0,0,114,161,0,0,0,114,229,0,0,0, + 114,224,0,0,0,114,207,0,0,0,114,202,0,0,0,41, + 7,114,221,0,0,0,114,163,0,0,0,114,82,1,0,0, + 114,166,0,0,0,114,164,0,0,0,114,165,0,0,0,114, + 210,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,86,5,0,0,115,28,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,255,128,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,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,116,4,124,6,100,2,131,2,114,35,124,6, + 160,5,124,1,124,3,161,2,125,7,110,6,124,0,160,6, + 124,1,124,6,161,2,125,7,124,7,100,1,117,0,114,46, + 113,4,124,7,106,7,100,1,117,1,114,55,124,7,2,0, + 1,0,83,0,124,7,106,8,125,8,124,8,100,1,117,0, + 114,66,116,9,100,3,131,1,130,1,124,4,160,10,124,8, + 161,1,1,0,113,4,116,11,160,12,124,1,100,1,161,2, + 125,7,124,4,124,7,95,8,124,7,83,0,41,4,122,63, + 70,105,110,100,32,116,104,101,32,108,111,97,100,101,114,32, + 111,114,32,110,97,109,101,115,112,97,99,101,95,112,97,116, + 104,32,102,111,114,32,116,104,105,115,32,109,111,100,117,108, + 101,47,112,97,99,107,97,103,101,32,110,97,109,101,46,78, + 114,226,0,0,0,122,19,115,112,101,99,32,109,105,115,115, + 105,110,103,32,108,111,97,100,101,114,41,13,114,185,0,0, + 0,114,109,0,0,0,218,5,98,121,116,101,115,114,87,1, + 0,0,114,153,0,0,0,114,226,0,0,0,114,88,1,0, + 0,114,164,0,0,0,114,202,0,0,0,114,142,0,0,0, + 114,191,0,0,0,114,159,0,0,0,114,207,0,0,0,41, + 9,114,221,0,0,0,114,163,0,0,0,114,65,0,0,0, + 114,225,0,0,0,218,14,110,97,109,101,115,112,97,99,101, + 95,112,97,116,104,90,5,101,110,116,114,121,114,82,1,0, + 0,114,210,0,0,0,114,165,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,107,5,0,0,115,44,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,255,128,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,15,0,0,0,114,65,0,0,0,114,91,1,0,0,114, + 164,0,0,0,114,202,0,0,0,114,205,0,0,0,114,47, + 1,0,0,41,6,114,221,0,0,0,114,163,0,0,0,114, + 65,0,0,0,114,225,0,0,0,114,210,0,0,0,114,90, + 1,0,0,114,7,0,0,0,114,7,0,0,0,114,8,0, + 0,0,114,226,0,0,0,139,5,0,0,115,28,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,255,128,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, +======= + 8,0,0,0,114,235,0,0,0,188,4,0,0,115,10,0, + 0,0,6,1,6,1,14,1,10,1,255,128,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,97,0,0,0, + 114,10,0,0,0,41,2,114,15,0,0,0,114,65,0,0, + 0,90,8,95,95,112,97,116,104,95,95,78,41,2,114,48, + 1,0,0,114,104,0,0,0,41,4,114,143,0,0,0,114, + 40,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,194,4,0,0,115,10,0,0,0,18,2, + 8,1,4,2,8,3,255,128,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,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,69,0,0,0,41, + 4,114,55,1,0,0,114,155,0,0,0,114,15,0,0,0, + 218,7,109,111,100,117,108,101,115,41,3,114,143,0,0,0, + 90,18,112,97,114,101,110,116,95,109,111,100,117,108,101,95, + 110,97,109,101,90,14,112,97,116,104,95,97,116,116,114,95, + 110,97,109,101,114,7,0,0,0,114,7,0,0,0,114,8, + 0,0,0,114,50,1,0,0,204,4,0,0,115,6,0,0, + 0,12,1,16,1,255,128,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,69,0,0,0,41,8,114,136,0, + 0,0,114,50,1,0,0,114,51,1,0,0,114,52,1,0, + 0,114,48,1,0,0,114,164,0,0,0,114,202,0,0,0, + 114,49,1,0,0,41,3,114,143,0,0,0,90,11,112,97, + 114,101,110,116,95,112,97,116,104,114,210,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,208,4,0,0,115, + 18,0,0,0,12,2,10,1,14,1,18,3,6,1,8,1, + 6,1,6,1,255,128,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,69,0, + 0,0,41,2,218,4,105,116,101,114,114,57,1,0,0,114, + 20,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,221,4,0, + 0,243,4,0,0,0,12,1,255,128,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,69,0, + 0,0,169,1,114,57,1,0,0,41,2,114,143,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,224,4,0,0,114,61,1,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,115,14,0,0,0,124,2,124,0,106,0,124,1,60,0, + 100,0,83,0,114,69,0,0,0,41,1,114,49,1,0,0, + 41,3,114,143,0,0,0,114,63,1,0,0,114,65,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,227,4,0, + 0,115,4,0,0,0,14,1,255,128,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, + 58,1,0,0,114,69,0,0,0,41,2,114,4,0,0,0, + 114,57,1,0,0,114,20,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,230,4,0,0,114,61,1,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,89,0,0,0,114,49,1, + 0,0,114,20,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, + 233,4,0,0,114,61,1,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,69,0,0, + 0,114,62,1,0,0,169,2,114,143,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, + 236,4,0,0,114,61,1,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,115, + 16,0,0,0,124,0,106,0,160,1,124,1,161,1,1,0, + 100,0,83,0,114,69,0,0,0,41,2,114,49,1,0,0, + 114,61,0,0,0,114,69,1,0,0,114,7,0,0,0,114, + 7,0,0,0,114,8,0,0,0,114,61,0,0,0,239,4, + 0,0,243,4,0,0,0,16,1,255,128,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,150,0,0,0,114,149,0,0,0,114, + 151,0,0,0,114,152,0,0,0,114,235,0,0,0,114,55, + 1,0,0,114,50,1,0,0,114,57,1,0,0,114,60,1, + 0,0,114,64,1,0,0,114,65,1,0,0,114,66,1,0, + 0,114,68,1,0,0,114,71,1,0,0,114,61,0,0,0, + 114,7,0,0,0,114,7,0,0,0,114,7,0,0,0,114, + 8,0,0,0,114,47,1,0,0,181,4,0,0,115,28,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,255,128,114,47, + 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,69,0, + 0,0,41,2,114,47,1,0,0,114,49,1,0,0,114,53, + 1,0,0,114,7,0,0,0,114,7,0,0,0,114,8,0, + 0,0,114,235,0,0,0,245,4,0,0,115,4,0,0,0, + 18,1,255,128,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,99, + 0,0,0,114,100,0,0,0,114,101,0,0,0,114,89,0, + 0,0,114,150,0,0,0,41,1,114,243,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,248,4,0,0,115,10, + 0,0,0,6,7,2,1,4,255,12,2,255,128,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,2,0,0,0,1,0,0,0, + 67,0,0,0,114,23,0,0,0,41,2,78,84,114,7,0, + 0,0,114,246,0,0,0,114,7,0,0,0,114,7,0,0, + 0,114,8,0,0,0,114,206,0,0,0,3,5,0,0,243, + 4,0,0,0,4,1,255,128,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,23, + 0,0,0,41,2,78,114,10,0,0,0,114,7,0,0,0, + 114,246,0,0,0,114,7,0,0,0,114,7,0,0,0,114, + 8,0,0,0,114,0,1,0,0,6,5,0,0,114,75,1, + 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,10,0,0,0,122,8,60,115,116,114,105,110,103,62,114, + 242,0,0,0,84,41,1,114,2,1,0,0,41,1,114,3, + 1,0,0,114,246,0,0,0,114,7,0,0,0,114,7,0, + 0,0,114,8,0,0,0,114,240,0,0,0,9,5,0,0, + 114,72,1,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,23,0,0,0,114,236, + 0,0,0,114,7,0,0,0,114,237,0,0,0,114,7,0, + 0,0,114,7,0,0,0,114,8,0,0,0,114,238,0,0, + 0,12,5,0,0,114,239,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, + 0,0,0,115,4,0,0,0,100,0,83,0,114,69,0,0, + 0,114,7,0,0,0,114,42,1,0,0,114,7,0,0,0, + 114,7,0,0,0,114,8,0,0,0,114,244,0,0,0,15, + 5,0,0,114,75,1,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, + 159,0,0,0,114,173,0,0,0,114,49,1,0,0,114,245, + 0,0,0,114,246,0,0,0,114,7,0,0,0,114,7,0, + 0,0,114,8,0,0,0,114,247,0,0,0,18,5,0,0, + 115,10,0,0,0,6,7,4,1,4,255,12,3,255,128,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,31, + 1,0,0,114,76,1,0,0,114,49,1,0,0,41,3,114, + 143,0,0,0,114,243,0,0,0,114,76,1,0,0,114,7, + 0,0,0,114,7,0,0,0,114,8,0,0,0,114,32,1, + 0,0,30,5,0,0,115,6,0,0,0,12,1,10,1,255, + 128,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,150,0,0,0,114, + 149,0,0,0,114,151,0,0,0,114,235,0,0,0,114,232, + 0,0,0,114,74,1,0,0,114,206,0,0,0,114,0,1, + 0,0,114,240,0,0,0,114,238,0,0,0,114,244,0,0, + 0,114,247,0,0,0,114,32,1,0,0,114,7,0,0,0, + 114,7,0,0,0,114,7,0,0,0,114,8,0,0,0,114, + 73,1,0,0,244,4,0,0,115,24,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,255,128,114,73,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,21,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,22, + 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,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,116,4,124,1,100,2,131,2,114,29,124,1,160,5, + 161,0,1,0,113,7,100,1,83,0,41,3,122,125,67,97, + 108,108,32,116,104,101,32,105,110,118,97,108,105,100,97,116, + 101,95,99,97,99,104,101,115,40,41,32,109,101,116,104,111, + 100,32,111,110,32,97,108,108,32,112,97,116,104,32,101,110, + 116,114,121,32,102,105,110,100,101,114,115,10,32,32,32,32, + 32,32,32,32,115,116,111,114,101,100,32,105,110,32,115,121, + 115,46,112,97,116,104,95,105,109,112,111,114,116,101,114,95, + 99,97,99,104,101,115,32,40,119,104,101,114,101,32,105,109, + 112,108,101,109,101,110,116,101,100,41,46,78,218,17,105,110, + 118,97,108,105,100,97,116,101,95,99,97,99,104,101,115,41, + 6,218,4,108,105,115,116,114,15,0,0,0,218,19,112,97, + 116,104,95,105,109,112,111,114,116,101,114,95,99,97,99,104, + 101,218,5,105,116,101,109,115,114,153,0,0,0,114,78,1, + 0,0,41,2,114,141,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,78,1,0,0,41,5,0,0,115,16,0,0,0,22,4, + 8,1,10,1,10,1,8,1,2,128,4,252,255,128,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,76,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,17,125,1, + 122,7,124,1,124,0,131,1,87,0,2,0,1,0,83,0, + 4,0,116,5,121,37,1,0,1,0,1,0,89,0,113,17, + 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,15,0,0,0,218,10,112,97,116,104,95, + 104,111,111,107,115,114,99,0,0,0,114,100,0,0,0,114, + 162,0,0,0,114,142,0,0,0,41,2,114,65,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,51,5,0,0,115,20,0,0,0,16,3,12,1,10, + 1,2,1,14,1,12,1,4,1,4,2,2,253,255,128,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,100,0,0,0,124,1,100,1,107,2,114,20,122,6,116, + 0,160,1,161,0,125,1,87,0,110,9,4,0,116,2,121, + 49,1,0,1,0,1,0,89,0,100,2,83,0,122,8,116, + 3,106,4,124,1,25,0,125,2,87,0,124,2,83,0,4, + 0,116,5,121,48,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,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, + 10,0,0,0,78,41,7,114,18,0,0,0,114,82,0,0, + 0,218,17,70,105,108,101,78,111,116,70,111,117,110,100,69, + 114,114,111,114,114,15,0,0,0,114,80,1,0,0,218,8, + 75,101,121,69,114,114,111,114,114,84,1,0,0,41,3,114, + 221,0,0,0,114,65,0,0,0,114,82,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,64,5,0,0,115,30,0,0,0,8,8,2,1, + 12,1,12,1,6,3,2,1,12,1,4,4,12,253,10,1, + 12,1,4,1,2,253,2,250,255,128,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,161,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,153,0,0,0, + 114,159,0,0,0,90,12,95,111,98,106,101,99,116,95,110, + 97,109,101,114,99,0,0,0,114,100,0,0,0,114,162,0, + 0,0,114,161,0,0,0,114,229,0,0,0,114,224,0,0, + 0,114,207,0,0,0,114,202,0,0,0,41,7,114,221,0, + 0,0,114,163,0,0,0,114,82,1,0,0,114,166,0,0, + 0,114,164,0,0,0,114,165,0,0,0,114,210,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,86,5,0,0,115,28,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,255,128,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,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, + 116,4,124,6,100,2,131,2,114,35,124,6,160,5,124,1, + 124,3,161,2,125,7,110,6,124,0,160,6,124,1,124,6, + 161,2,125,7,124,7,100,1,117,0,114,46,113,4,124,7, + 106,7,100,1,117,1,114,55,124,7,2,0,1,0,83,0, + 124,7,106,8,125,8,124,8,100,1,117,0,114,66,116,9, + 100,3,131,1,130,1,124,4,160,10,124,8,161,1,1,0, + 113,4,116,11,160,12,124,1,100,1,161,2,125,7,124,4, + 124,7,95,8,124,7,83,0,41,4,122,63,70,105,110,100, + 32,116,104,101,32,108,111,97,100,101,114,32,111,114,32,110, + 97,109,101,115,112,97,99,101,95,112,97,116,104,32,102,111, + 114,32,116,104,105,115,32,109,111,100,117,108,101,47,112,97, + 99,107,97,103,101,32,110,97,109,101,46,78,114,226,0,0, + 0,122,19,115,112,101,99,32,109,105,115,115,105,110,103,32, + 108,111,97,100,101,114,41,13,114,185,0,0,0,114,109,0, + 0,0,218,5,98,121,116,101,115,114,87,1,0,0,114,153, + 0,0,0,114,226,0,0,0,114,88,1,0,0,114,164,0, + 0,0,114,202,0,0,0,114,142,0,0,0,114,191,0,0, + 0,114,159,0,0,0,114,207,0,0,0,41,9,114,221,0, + 0,0,114,163,0,0,0,114,65,0,0,0,114,225,0,0, + 0,218,14,110,97,109,101,115,112,97,99,101,95,112,97,116, + 104,90,5,101,110,116,114,121,114,82,1,0,0,114,210,0, + 0,0,114,165,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,107,5,0,0,115,44,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,255,128,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, +>>>>>>> added exception groups + 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, +<<<<<<< HEAD + 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, +>>>>>>> added exception groups 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, @@ -2528,6 +3680,7 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 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, +<<<<<<< HEAD 110,115,116,101,97,100,46,10,10,32,32,32,32,32,32,32, 32,122,101,70,105,108,101,70,105,110,100,101,114,46,102,105, 110,100,95,108,111,97,100,101,114,40,41,32,105,115,32,100, @@ -2631,11 +3784,584 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 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, +======= + 110,115,116,101,97,100,78,41,6,114,99,0,0,0,114,100, + 0,0,0,114,101,0,0,0,114,226,0,0,0,114,164,0, + 0,0,114,202,0,0,0,41,3,114,143,0,0,0,114,163, + 0,0,0,114,210,0,0,0,114,7,0,0,0,114,7,0, + 0,0,114,8,0,0,0,114,161,0,0,0,224,5,0,0, + 115,16,0,0,0,6,7,2,2,4,254,10,3,8,1,8, + 1,16,1,255,128,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,201,0,0,0,41,1,114, + 213,0,0,0,41,7,114,143,0,0,0,114,211,0,0,0, + 114,163,0,0,0,114,65,0,0,0,90,4,115,109,115,108, + 114,225,0,0,0,114,164,0,0,0,114,7,0,0,0,114, + 7,0,0,0,114,8,0,0,0,114,91,1,0,0,239,5, + 0,0,115,10,0,0,0,10,1,8,1,2,1,6,255,255, + 128,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,120,1,0,0,100,1,125,3,124,1,160,0,100,2, + 161,1,100,3,25,0,125,4,122,12,116,1,124,0,106,2, + 112,17,116,3,160,4,161,0,131,1,106,5,125,5,87,0, + 110,9,4,0,116,6,121,187,1,0,1,0,1,0,100,4, + 125,5,89,0,124,5,124,0,106,7,107,3,114,43,124,0, + 160,8,161,0,1,0,124,5,124,0,95,7,116,9,131,0, + 114,54,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,106,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,101,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,72,116,17,124,8,131,1,125,3,124,0,106,14,68,0, + 93,54,92,2,125,9,125,10,122,10,116,13,124,0,106,2, + 124,4,124,9,23,0,131,2,125,12,87,0,110,10,4,0, + 116,18,121,186,1,0,1,0,1,0,89,0,1,0,100,6, + 83,0,116,19,106,20,100,7,124,12,100,3,100,8,141,3, + 1,0,124,7,124,9,23,0,124,6,118,0,114,163,116,15, + 124,12,131,1,114,163,124,0,160,16,124,10,124,1,124,12, + 100,6,124,2,161,5,2,0,1,0,83,0,113,109,124,3, + 114,184,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,97,0,0,0,114,44,0,0,0,114,130,0,0, + 0,114,236,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,104,0,0, + 0,114,75,0,0,0,114,65,0,0,0,114,18,0,0,0, + 114,82,0,0,0,114,35,1,0,0,114,76,0,0,0,114, + 97,1,0,0,218,11,95,102,105,108,108,95,99,97,99,104, + 101,114,21,0,0,0,114,100,1,0,0,114,131,0,0,0, + 114,99,1,0,0,114,67,0,0,0,114,96,1,0,0,114, + 80,0,0,0,114,91,1,0,0,114,83,0,0,0,114,111, + 0,0,0,114,159,0,0,0,114,173,0,0,0,114,207,0, + 0,0,114,202,0,0,0,41,14,114,143,0,0,0,114,163, + 0,0,0,114,225,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,193,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,44,1,0,0,114,211,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,210,0,0, + 0,114,7,0,0,0,114,7,0,0,0,114,8,0,0,0, + 114,226,0,0,0,244,5,0,0,115,88,0,0,0,4,5, + 14,1,2,1,24,1,12,1,6,1,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, + 20,1,12,1,8,1,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,255,128,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,190,0,0,0,124,0,106,0,125,1, + 122,11,116,1,160,2,124,1,112,11,116,1,160,3,161,0, + 161,1,125,2,87,0,110,12,4,0,116,4,116,5,116,6, + 102,3,121,94,1,0,1,0,1,0,103,0,125,2,89,0, + 116,7,106,8,160,9,100,1,161,1,115,39,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,65,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,44,124,3,124,0, + 95,11,116,7,106,8,160,9,116,16,161,1,114,92,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,14,0,0,0,114,97,0,0,0,114,88,0,0,0,99, + 1,0,0,0,0,0,0,0,0,0,0,0,2,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,131,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,13,0,0,0,68,6,0,0, + 115,4,0,0,0,20,0,255,128,122,41,70,105,108,101,70, + 105,110,100,101,114,46,95,102,105,108,108,95,99,97,99,104, + 101,46,60,108,111,99,97,108,115,62,46,60,115,101,116,99, + 111,109,112,62,78,41,18,114,65,0,0,0,114,18,0,0, + 0,90,7,108,105,115,116,100,105,114,114,82,0,0,0,114, + 85,1,0,0,218,15,80,101,114,109,105,115,115,105,111,110, + 69,114,114,111,114,218,18,78,111,116,65,68,105,114,101,99, + 116,111,114,121,69,114,114,111,114,114,15,0,0,0,114,25, + 0,0,0,114,26,0,0,0,114,98,1,0,0,114,99,1, + 0,0,114,126,0,0,0,114,89,0,0,0,114,131,0,0, + 0,218,3,97,100,100,114,27,0,0,0,114,100,1,0,0, + 41,9,114,143,0,0,0,114,65,0,0,0,90,8,99,111, + 110,116,101,110,116,115,90,21,108,111,119,101,114,95,115,117, + 102,102,105,120,95,99,111,110,116,101,110,116,115,114,70,1, + 0,0,114,141,0,0,0,114,54,1,0,0,114,44,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,102,1,0,0,39, + 6,0,0,115,40,0,0,0,6,2,2,1,22,1,18,1, + 6,3,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,255,128, + 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,71,0,0,0,78,41,2,114,83, + 0,0,0,114,142,0,0,0,114,71,0,0,0,169,2,114, + 221,0,0,0,114,101,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,80,6,0, + 0,115,8,0,0,0,8,2,12,1,16,1,255,128,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,221, + 0,0,0,114,101,1,0,0,114,107,1,0,0,114,7,0, + 0,0,114,106,1,0,0,114,8,0,0,0,218,9,112,97, + 116,104,95,104,111,111,107,70,6,0,0,115,6,0,0,0, + 14,10,4,6,255,128,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,67,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,89,0,0,0,114,65,0,0,0,114,21,1,0,0, + 114,7,0,0,0,114,7,0,0,0,114,8,0,0,0,114, + 68,1,0,0,88,6,0,0,114,61,1,0,0,122,19,70, + 105,108,101,70,105,110,100,101,114,46,95,95,114,101,112,114, + 95,95,114,69,0,0,0,41,15,114,150,0,0,0,114,149, + 0,0,0,114,151,0,0,0,114,152,0,0,0,114,236,0, + 0,0,114,78,1,0,0,114,167,0,0,0,114,229,0,0, + 0,114,161,0,0,0,114,91,1,0,0,114,226,0,0,0, + 114,102,1,0,0,114,234,0,0,0,114,108,1,0,0,114, + 68,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,193,5,0, + 0,115,26,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,255,128, + 114,94,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,0,0,0,115,144, + 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,107,2,114,28,116, + 2,124,1,124,2,131,2,125,4,110,5,116,3,124,1,124, + 2,131,2,125,4,124,5,115,42,116,4,124,1,124,2,124, + 4,100,3,141,3,125,5,122,19,124,5,124,0,100,2,60, + 0,124,4,124,0,100,1,60,0,124,2,124,0,100,4,60, + 0,124,3,124,0,100,5,60,0,87,0,100,0,83,0,4, + 0,116,5,121,71,1,0,1,0,1,0,89,0,100,0,83, + 0,119,0,41,6,78,218,10,95,95,108,111,97,100,101,114, + 95,95,218,8,95,95,115,112,101,99,95,95,114,95,1,0, + 0,90,8,95,95,102,105,108,101,95,95,90,10,95,95,99, + 97,99,104,101,100,95,95,41,6,218,3,103,101,116,114,164, + 0,0,0,114,41,1,0,0,114,34,1,0,0,114,213,0, + 0,0,218,9,69,120,99,101,112,116,105,111,110,41,6,90, + 2,110,115,114,141,0,0,0,90,8,112,97,116,104,110,97, + 109,101,90,9,99,112,97,116,104,110,97,109,101,114,164,0, + 0,0,114,210,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,94,6,0,0,115,38,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,14,1,12,1,6, + 2,2,254,255,128,114,113,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,30,1,0,0,114,187,0,0,0,218,18, + 101,120,116,101,110,115,105,111,110,95,115,117,102,102,105,120, + 101,115,114,34,1,0,0,114,127,0,0,0,114,41,1,0, + 0,114,113,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,208,0,0,0,117,6,0,0,115,10, + 0,0,0,12,5,8,1,8,1,10,1,255,128,114,208,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,69,0,0,0,41,1,114, + 159,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,128, + 6,0,0,115,4,0,0,0,8,2,255,128,114,116,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,116,1,0,0,114,208,0,0,0,114,15,0,0,0, + 114,83,1,0,0,114,191,0,0,0,114,94,1,0,0,114, + 108,1,0,0,218,9,109,101,116,97,95,112,97,116,104,114, + 61,0,0,0,114,77,1,0,0,41,2,114,115,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,133,6,0,0, + 115,10,0,0,0,8,2,6,1,20,1,16,1,255,128,114, + 118,1,0,0,41,1,114,87,0,0,0,114,69,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,152,0,0,0,114,159,0,0,0, + 114,187,0,0,0,114,91,0,0,0,114,15,0,0,0,114, + 99,0,0,0,114,184,0,0,0,114,25,0,0,0,114,231, + 0,0,0,90,2,110,116,114,18,0,0,0,114,215,0,0, + 0,90,5,112,111,115,105,120,114,50,0,0,0,218,3,97, + 108,108,114,59,0,0,0,114,136,0,0,0,114,57,0,0, + 0,114,62,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,28,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,27,0,0,0,114,29,0, + 0,0,114,21,0,0,0,114,36,0,0,0,114,42,0,0, + 0,114,45,0,0,0,114,67,0,0,0,114,74,0,0,0, + 114,75,0,0,0,114,79,0,0,0,114,80,0,0,0,114, + 83,0,0,0,114,86,0,0,0,114,95,0,0,0,218,4, + 116,121,112,101,218,8,95,95,99,111,100,101,95,95,114,186, + 0,0,0,114,34,0,0,0,114,172,0,0,0,114,33,0, + 0,0,114,39,0,0,0,114,8,1,0,0,114,116,0,0, + 0,114,112,0,0,0,114,127,0,0,0,114,61,0,0,0, + 114,114,1,0,0,114,232,0,0,0,114,113,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,121,0,0,0,114,128,0,0,0,114, + 135,0,0,0,114,137,0,0,0,114,139,0,0,0,114,160, + 0,0,0,114,167,0,0,0,114,176,0,0,0,114,180,0, + 0,0,114,182,0,0,0,114,189,0,0,0,114,194,0,0, + 0,114,195,0,0,0,114,200,0,0,0,218,6,111,98,106, + 101,99,116,114,209,0,0,0,114,213,0,0,0,114,214,0, + 0,0,114,235,0,0,0,114,249,0,0,0,114,11,1,0, + 0,114,34,1,0,0,114,41,1,0,0,114,30,1,0,0, + 114,47,1,0,0,114,73,1,0,0,114,77,1,0,0,114, + 94,1,0,0,114,113,1,0,0,114,208,0,0,0,114,116, + 1,0,0,114,118,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,182,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,27,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,255,128, +======= + 10,32,32,32,32,32,32,32,32,78,41,7,114,15,0,0, + 0,114,65,0,0,0,114,91,1,0,0,114,164,0,0,0, + 114,202,0,0,0,114,205,0,0,0,114,47,1,0,0,41, + 6,114,221,0,0,0,114,163,0,0,0,114,65,0,0,0, + 114,225,0,0,0,114,210,0,0,0,114,90,1,0,0,114, + 7,0,0,0,114,7,0,0,0,114,8,0,0,0,114,226, + 0,0,0,139,5,0,0,115,28,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,255,128,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,227,0,0, + 0,114,228,0,0,0,114,7,0,0,0,114,7,0,0,0, + 114,8,0,0,0,114,229,0,0,0,163,5,0,0,115,16, + 0,0,0,6,8,2,2,4,254,12,3,8,1,4,1,6, + 1,255,128,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,92, + 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,144,0,0,0,114,145, + 0,0,0,114,92,1,0,0,114,7,0,0,0,114,7,0, + 0,0,114,8,0,0,0,114,93,1,0,0,179,5,0,0, + 115,6,0,0,0,12,10,16,1,255,128,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,41,1,78,41,2,78, + 78,41,1,78,41,14,114,150,0,0,0,114,149,0,0,0, + 114,151,0,0,0,114,152,0,0,0,114,232,0,0,0,114, + 78,1,0,0,114,84,1,0,0,114,233,0,0,0,114,87, + 1,0,0,114,88,1,0,0,114,91,1,0,0,114,226,0, + 0,0,114,229,0,0,0,114,93,1,0,0,114,7,0,0, + 0,114,7,0,0,0,114,7,0,0,0,114,8,0,0,0, + 114,77,1,0,0,37,5,0,0,115,38,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,255,128,114,77,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,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,90,5,101,6,90,7,100,6,100,7,132,0,90,8,100, + 8,100,9,132,0,90,9,100,19,100,11,100,12,132,1,90, + 10,100,13,100,14,132,0,90,11,101,12,100,15,100,16,132, + 0,131,1,90,13,100,17,100,18,132,0,90,14,100,10,83, + 0,41,20,218,10,70,105,108,101,70,105,110,100,101,114,122, + 172,70,105,108,101,45,98,97,115,101,100,32,102,105,110,100, + 101,114,46,10,10,32,32,32,32,73,110,116,101,114,97,99, + 116,105,111,110,115,32,119,105,116,104,32,116,104,101,32,102, + 105,108,101,32,115,121,115,116,101,109,32,97,114,101,32,99, + 97,99,104,101,100,32,102,111,114,32,112,101,114,102,111,114, + 109,97,110,99,101,44,32,98,101,105,110,103,10,32,32,32, + 32,114,101,102,114,101,115,104,101,100,32,119,104,101,110,32, + 116,104,101,32,100,105,114,101,99,116,111,114,121,32,116,104, + 101,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, + 69,0,0,0,114,7,0,0,0,114,43,1,0,0,169,1, + 114,164,0,0,0,114,7,0,0,0,114,8,0,0,0,114, + 9,0,0,0,208,5,0,0,115,6,0,0,0,6,128,18, + 0,255,128,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,97,0,0,0, + 114,130,0,0,0,78,41,11,114,191,0,0,0,218,8,95, + 108,111,97,100,101,114,115,114,65,0,0,0,114,86,0,0, + 0,114,67,0,0,0,114,18,0,0,0,114,82,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,143,0,0,0,114,65,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,212,0,0,0,114,7, + 0,0,0,114,95,1,0,0,114,8,0,0,0,114,235,0, + 0,0,202,5,0,0,115,22,0,0,0,4,4,12,1,26, + 1,6,1,10,2,10,1,18,1,6,1,8,1,12,1,255, + 128,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,130,0,0,0,78,41,1,114,97,1,0,0,114,20, + 1,0,0,114,7,0,0,0,114,7,0,0,0,114,8,0, + 0,0,114,78,1,0,0,218,5,0,0,114,81,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,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,124,2,106,5,112,25,103,0,102,2, + 83,0,41,3,122,197,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,44,32,111,114,32,116,104,101,32,110,97,109,101, + 115,112,97,99,101,10,32,32,32,32,32,32,32,32,112,97, + 99,107,97,103,101,32,112,111,114,116,105,111,110,115,46,32, + 82,101,116,117,114,110,115,32,40,108,111,97,100,101,114,44, + 32,108,105,115,116,45,111,102,45,112,111,114,116,105,111,110, + 115,41,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,70,105,108, + 101,70,105,110,100,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,6,114,99,0,0,0,114,100,0,0,0,114, + 101,0,0,0,114,226,0,0,0,114,164,0,0,0,114,202, + 0,0,0,41,3,114,143,0,0,0,114,163,0,0,0,114, + 210,0,0,0,114,7,0,0,0,114,7,0,0,0,114,8, + 0,0,0,114,161,0,0,0,224,5,0,0,115,16,0,0, + 0,6,7,2,2,4,254,10,3,8,1,8,1,16,1,255, + 128,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,201,0,0,0,41,1,114,213,0,0,0, + 41,7,114,143,0,0,0,114,211,0,0,0,114,163,0,0, + 0,114,65,0,0,0,90,4,115,109,115,108,114,225,0,0, + 0,114,164,0,0,0,114,7,0,0,0,114,7,0,0,0, + 114,8,0,0,0,114,91,1,0,0,239,5,0,0,115,10, + 0,0,0,10,1,8,1,2,1,6,255,255,128,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,120,1, + 0,0,100,1,125,3,124,1,160,0,100,2,161,1,100,3, + 25,0,125,4,122,12,116,1,124,0,106,2,112,17,116,3, + 160,4,161,0,131,1,106,5,125,5,87,0,110,9,4,0, + 116,6,121,187,1,0,1,0,1,0,100,4,125,5,89,0, + 124,5,124,0,106,7,107,3,114,43,124,0,160,8,161,0, + 1,0,124,5,124,0,95,7,116,9,131,0,114,54,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,106, + 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,101,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,72,116,17, + 124,8,131,1,125,3,124,0,106,14,68,0,93,54,92,2, + 125,9,125,10,122,10,116,13,124,0,106,2,124,4,124,9, + 23,0,131,2,125,12,87,0,110,10,4,0,116,18,121,186, + 1,0,1,0,1,0,89,0,1,0,100,6,83,0,116,19, + 106,20,100,7,124,12,100,3,100,8,141,3,1,0,124,7, + 124,9,23,0,124,6,118,0,114,163,116,15,124,12,131,1, + 114,163,124,0,160,16,124,10,124,1,124,12,100,6,124,2, + 161,5,2,0,1,0,83,0,113,109,124,3,114,184,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,97, + 0,0,0,114,44,0,0,0,114,130,0,0,0,114,235,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,104,0,0,0,114,75,0, + 0,0,114,65,0,0,0,114,18,0,0,0,114,82,0,0, + 0,114,35,1,0,0,114,76,0,0,0,114,97,1,0,0, + 218,11,95,102,105,108,108,95,99,97,99,104,101,114,21,0, + 0,0,114,100,1,0,0,114,131,0,0,0,114,99,1,0, + 0,114,67,0,0,0,114,96,1,0,0,114,80,0,0,0, + 114,91,1,0,0,114,83,0,0,0,114,111,0,0,0,114, + 159,0,0,0,114,173,0,0,0,114,207,0,0,0,114,202, + 0,0,0,41,14,114,143,0,0,0,114,163,0,0,0,114, + 225,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, + 193,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,44,1,0,0,114,211,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,210,0,0,0,114,7,0, + 0,0,114,7,0,0,0,114,8,0,0,0,114,226,0,0, + 0,244,5,0,0,115,88,0,0,0,4,5,14,1,2,1, + 24,1,12,1,6,1,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,20,1,12,1, + 8,1,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, + 255,128,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,190,0,0,0,124,0,106,0,125,1,122,11,116,1, + 160,2,124,1,112,11,116,1,160,3,161,0,161,1,125,2, + 87,0,110,12,4,0,116,4,116,5,116,6,102,3,121,94, + 1,0,1,0,1,0,103,0,125,2,89,0,116,7,106,8, + 160,9,100,1,161,1,115,39,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,65,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,44,124,3,124,0,95,11,116,7, + 106,8,160,9,116,16,161,1,114,92,100,4,100,5,132,0, +>>>>>>> added exception groups 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, +<<<<<<< HEAD 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,4,0,0,0, @@ -2847,4 +4573,214 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 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, +======= + 115,32,100,105,114,101,99,116,111,114,121,46,114,14,0,0, + 0,114,97,0,0,0,114,88,0,0,0,99,1,0,0,0, + 0,0,0,0,0,0,0,0,2,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,131,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,13,0,0,0,68,6,0,0,115,4,0,0, + 0,20,0,255,128,122,41,70,105,108,101,70,105,110,100,101, + 114,46,95,102,105,108,108,95,99,97,99,104,101,46,60,108, + 111,99,97,108,115,62,46,60,115,101,116,99,111,109,112,62, + 78,41,18,114,65,0,0,0,114,18,0,0,0,90,7,108, + 105,115,116,100,105,114,114,82,0,0,0,114,85,1,0,0, + 218,15,80,101,114,109,105,115,115,105,111,110,69,114,114,111, + 114,218,18,78,111,116,65,68,105,114,101,99,116,111,114,121, + 69,114,114,111,114,114,15,0,0,0,114,25,0,0,0,114, + 26,0,0,0,114,98,1,0,0,114,99,1,0,0,114,126, + 0,0,0,114,89,0,0,0,114,131,0,0,0,218,3,97, + 100,100,114,27,0,0,0,114,100,1,0,0,41,9,114,143, + 0,0,0,114,65,0,0,0,90,8,99,111,110,116,101,110, + 116,115,90,21,108,111,119,101,114,95,115,117,102,102,105,120, + 95,99,111,110,116,101,110,116,115,114,70,1,0,0,114,141, + 0,0,0,114,54,1,0,0,114,44,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,102,1,0,0,39,6,0,0,115, + 40,0,0,0,6,2,2,1,22,1,18,1,6,3,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,255,128,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,71,0,0,0,78,41,2,114,83,0,0,0,114, + 142,0,0,0,114,71,0,0,0,169,2,114,221,0,0,0, + 114,101,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,80,6,0,0,115,8,0, + 0,0,8,2,12,1,16,1,255,128,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,221,0,0,0,114, + 101,1,0,0,114,107,1,0,0,114,7,0,0,0,114,106, + 1,0,0,114,8,0,0,0,218,9,112,97,116,104,95,104, + 111,111,107,70,6,0,0,115,6,0,0,0,14,10,4,6, + 255,128,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,67,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,89,0, + 0,0,114,65,0,0,0,114,20,1,0,0,114,7,0,0, + 0,114,7,0,0,0,114,8,0,0,0,114,68,1,0,0, + 88,6,0,0,114,61,1,0,0,122,19,70,105,108,101,70, + 105,110,100,101,114,46,95,95,114,101,112,114,95,95,41,1, + 78,41,15,114,150,0,0,0,114,149,0,0,0,114,151,0, + 0,0,114,152,0,0,0,114,235,0,0,0,114,78,1,0, + 0,114,167,0,0,0,114,229,0,0,0,114,161,0,0,0, + 114,91,1,0,0,114,226,0,0,0,114,102,1,0,0,114, + 233,0,0,0,114,108,1,0,0,114,68,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,193,5,0,0,115,26,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,255,128,114,94,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,0,0,0,115,144,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,107,2,114,28,116,2,124,1,124,2,131, + 2,125,4,110,5,116,3,124,1,124,2,131,2,125,4,124, + 5,115,42,116,4,124,1,124,2,124,4,100,3,141,3,125, + 5,122,19,124,5,124,0,100,2,60,0,124,4,124,0,100, + 1,60,0,124,2,124,0,100,4,60,0,124,3,124,0,100, + 5,60,0,87,0,100,0,83,0,4,0,116,5,121,71,1, + 0,1,0,1,0,89,0,100,0,83,0,119,0,41,6,78, + 218,10,95,95,108,111,97,100,101,114,95,95,218,8,95,95, + 115,112,101,99,95,95,114,95,1,0,0,90,8,95,95,102, + 105,108,101,95,95,90,10,95,95,99,97,99,104,101,100,95, + 95,41,6,218,3,103,101,116,114,164,0,0,0,114,41,1, + 0,0,114,34,1,0,0,114,213,0,0,0,218,9,69,120, + 99,101,112,116,105,111,110,41,6,90,2,110,115,114,141,0, + 0,0,90,8,112,97,116,104,110,97,109,101,90,9,99,112, + 97,116,104,110,97,109,101,114,164,0,0,0,114,210,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, + 94,6,0,0,115,38,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,14,1,12,1,6,2,2,254,255,128,114, + 113,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,29, + 1,0,0,114,187,0,0,0,218,18,101,120,116,101,110,115, + 105,111,110,95,115,117,102,102,105,120,101,115,114,34,1,0, + 0,114,127,0,0,0,114,41,1,0,0,114,113,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, + 208,0,0,0,117,6,0,0,115,10,0,0,0,12,5,8, + 1,8,1,10,1,255,128,114,208,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,69,0,0,0,41,1,114,159,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,128,6,0,0,115,4,0, + 0,0,8,2,255,128,114,116,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,116,1,0,0, + 114,208,0,0,0,114,15,0,0,0,114,83,1,0,0,114, + 191,0,0,0,114,94,1,0,0,114,108,1,0,0,218,9, + 109,101,116,97,95,112,97,116,104,114,61,0,0,0,114,77, + 1,0,0,41,2,114,115,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,133,6,0,0,115,10,0,0,0,8, + 2,6,1,20,1,16,1,255,128,114,118,1,0,0,41,1, + 114,87,0,0,0,41,1,78,41,3,78,78,78,41,2,114, + 0,0,0,0,114,0,0,0,0,41,1,84,41,1,78,41, + 1,78,41,85,114,152,0,0,0,114,159,0,0,0,114,187, + 0,0,0,114,91,0,0,0,114,15,0,0,0,114,99,0, + 0,0,114,184,0,0,0,114,25,0,0,0,114,230,0,0, + 0,90,2,110,116,114,18,0,0,0,114,215,0,0,0,90, + 5,112,111,115,105,120,114,50,0,0,0,218,3,97,108,108, + 114,59,0,0,0,114,136,0,0,0,114,57,0,0,0,114, + 62,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,28,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,27,0,0,0,114,29,0,0,0, + 114,21,0,0,0,114,36,0,0,0,114,42,0,0,0,114, + 45,0,0,0,114,67,0,0,0,114,74,0,0,0,114,75, + 0,0,0,114,79,0,0,0,114,80,0,0,0,114,83,0, + 0,0,114,86,0,0,0,114,95,0,0,0,218,4,116,121, + 112,101,218,8,95,95,99,111,100,101,95,95,114,186,0,0, + 0,114,34,0,0,0,114,172,0,0,0,114,33,0,0,0, + 114,39,0,0,0,114,7,1,0,0,114,116,0,0,0,114, + 112,0,0,0,114,127,0,0,0,114,61,0,0,0,114,114, + 1,0,0,114,231,0,0,0,114,113,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,121,0,0,0,114,128,0,0,0,114,135,0, + 0,0,114,137,0,0,0,114,139,0,0,0,114,160,0,0, + 0,114,167,0,0,0,114,176,0,0,0,114,180,0,0,0, + 114,182,0,0,0,114,189,0,0,0,114,194,0,0,0,114, + 195,0,0,0,114,200,0,0,0,218,6,111,98,106,101,99, + 116,114,209,0,0,0,114,213,0,0,0,114,214,0,0,0, + 114,234,0,0,0,114,248,0,0,0,114,10,1,0,0,114, + 34,1,0,0,114,41,1,0,0,114,29,1,0,0,114,47, + 1,0,0,114,73,1,0,0,114,77,1,0,0,114,94,1, + 0,0,114,113,1,0,0,114,208,0,0,0,114,116,1,0, + 0,114,118,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,182,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,27,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,255,128, +>>>>>>> added exception groups +>>>>>>> added exception groups }; From c1d592f62a10bd38d34e43ba54b8cf91d15a758a Mon Sep 17 00:00:00 2001 From: Irit Katriel Date: Fri, 16 Apr 2021 01:20:37 +0100 Subject: [PATCH 02/10] fix build on mac/ubuntu --- Lib/test/test_doctest.py | 2 +- Objects/exceptions.c | 30 ++++++++++++++++-------------- 2 files changed, 17 insertions(+), 15 deletions(-) diff --git a/Lib/test/test_doctest.py b/Lib/test/test_doctest.py index 7a9bed4e202b2a..a4b9c7697d6155 100644 --- a/Lib/test/test_doctest.py +++ b/Lib/test/test_doctest.py @@ -668,7 +668,7 @@ def non_Python_modules(): r""" >>> import builtins >>> tests = doctest.DocTestFinder().find(builtins) - >>> 816 < len(tests) < 838 # approximate number of objects with docstrings + >>> 816 < len(tests) < 840 # approximate number of objects with docstrings True >>> real_tests = [t for t in tests if len(t.examples) > 0] >>> len(real_tests) # objects that actually have doctests diff --git a/Objects/exceptions.c b/Objects/exceptions.c index c8d08b0cf92d1c..178e0d5743f998 100644 --- a/Objects/exceptions.c +++ b/Objects/exceptions.c @@ -629,7 +629,14 @@ ComplexExtendsException(PyExc_BaseException, SystemExit, SystemExit, * ExceptionGroup extends BaseExceptionGroup and Exception */ -static PyObject *PyExc_ExceptionGroup; +PyObject *PyExc_ExceptionGroup; + +static inline PyBaseExceptionGroupObject* +_PyBaseExceptionGroupObject_cast(PyObject *exc) +{ + assert(PyObject_TypeCheck(exc, (PyTypeObject *)PyExc_BaseExceptionGroup)); + return (PyBaseExceptionGroupObject *)exc; +} static PyObject * BaseExceptionGroup_new(PyTypeObject *type, PyObject *args, PyObject *kwds) @@ -696,7 +703,7 @@ BaseExceptionGroup_new(PyTypeObject *type, PyObject *args, PyObject *kwds) } PyBaseExceptionGroupObject *self = - (PyBaseExceptionGroupObject*)BaseException_new(cls, args, kwds); + _PyBaseExceptionGroupObject_cast(BaseException_new(cls, args, kwds)); self->msg = Py_NewRef(msg); self->excs = PySequence_Tuple(excs); return (PyObject*)self; @@ -752,9 +759,8 @@ BaseExceptionGroup_str(PyBaseExceptionGroupObject *self) } static PyObject * -BaseExceptionGroup_derive(PyBaseExceptionGroupObject *self, - PyObject *args, PyObject *kwds) { - +BaseExceptionGroup_derive(PyObject *self_, PyObject *args, PyObject *kwds) { + PyBaseExceptionGroupObject *self = _PyBaseExceptionGroupObject_cast(self_); PyObject *excs = NULL; if (!PyArg_ParseTuple(args, "O", &excs)) { return NULL; @@ -861,7 +867,7 @@ exceptiongroup_split_recursive(PyObject *exc, PyObject *matcher, int complement) } else { /* Partial match */ - PyBaseExceptionGroupObject *eg = (PyBaseExceptionGroupObject *)exc; + PyBaseExceptionGroupObject *eg = _PyBaseExceptionGroupObject_cast(exc); PyObject *match_list = NULL; PyObject *rest_list = NULL; PyObject *match_exc = NULL; @@ -941,9 +947,7 @@ exceptiongroup_split_recursive(PyObject *exc, PyObject *matcher, int complement) } static PyObject * -BaseExceptionGroup_split(PyBaseExceptionGroupObject *self, - PyObject *args, - PyObject *kwds) +BaseExceptionGroup_split(PyObject *self, PyObject *args, PyObject *kwds) { PyObject *matcher = NULL; if (!PyArg_UnpackTuple(args, "split", 1, 1, &matcher)) { @@ -951,13 +955,11 @@ BaseExceptionGroup_split(PyBaseExceptionGroupObject *self, } return exceptiongroup_split_recursive( - (PyObject*)self, matcher, 1 /* with_complement */); + self, matcher, 1 /* with_complement */); } static PyObject * -BaseExceptionGroup_subgroup(PyBaseExceptionGroupObject *self, - PyObject *args, - PyObject *kwds) +BaseExceptionGroup_subgroup(PyObject *self, PyObject *args, PyObject *kwds) { PyObject *matcher = NULL; if (!PyArg_UnpackTuple(args, "subgroup", 1, 1, &matcher)) { @@ -965,7 +967,7 @@ BaseExceptionGroup_subgroup(PyBaseExceptionGroupObject *self, } PyObject *ret = exceptiongroup_split_recursive( - (PyObject*)self, matcher, 0 /* without complement */); + self, matcher, 0 /* without complement */); if (!ret) { return NULL; From 187b10d86dd5836f09bc1fc3b08561cfe7bdf029 Mon Sep 17 00:00:00 2001 From: Irit Katriel Date: Fri, 16 Apr 2021 11:46:54 +0100 Subject: [PATCH 03/10] +-- ExceptionGroup [BaseExceptionGroup] in exception_hierarchy.txt --- Lib/test/exception_hierarchy.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Lib/test/exception_hierarchy.txt b/Lib/test/exception_hierarchy.txt index 3b12503ab48b29..78939bbce02295 100644 --- a/Lib/test/exception_hierarchy.txt +++ b/Lib/test/exception_hierarchy.txt @@ -4,7 +4,7 @@ BaseException +-- GeneratorExit +-- BaseExceptionGroup +-- Exception - +-- ExceptionGroup + +-- ExceptionGroup [BaseExceptionGroup] +-- StopIteration +-- StopAsyncIteration +-- ArithmeticError From a6d6d71b3c1e9157adeb6aa2c23685bc331b8851 Mon Sep 17 00:00:00 2001 From: Irit Katriel Date: Fri, 16 Apr 2021 15:27:17 +0100 Subject: [PATCH 04/10] regenerated Python/importlib_external.h --- Python/importlib_external.h | 1258 +++++++++++++---------------------- 1 file changed, 462 insertions(+), 796 deletions(-) diff --git a/Python/importlib_external.h b/Python/importlib_external.h index 037a6c6d23bf5d..3df879c401b3db 100644 --- a/Python/importlib_external.h +++ b/Python/importlib_external.h @@ -1679,7 +1679,7 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 13,114,150,0,0,0,114,149,0,0,0,114,151,0,0,0, 114,152,0,0,0,114,236,0,0,0,114,16,1,0,0,114, 22,1,0,0,114,160,0,0,0,114,248,0,0,0,114,203, - 0,0,0,114,255,0,0,0,114,33,1,0,0,90,13,95, + 0,0,0,114,255,0,0,0,114,33,1,0,0,218,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,25,1,0,0,114,8,0,0,0, 114,11,1,0,0,8,4,0,0,115,26,0,0,0,8,0, @@ -1719,7 +1719,7 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 6,0,0,0,8,2,16,1,255,128,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,87,0,0, - 0,114,36,1,0,0,99,3,0,0,0,0,0,0,0,1, + 0,114,37,1,0,0,99,3,0,0,0,0,0,0,0,1, 0,0,0,9,0,0,0,11,0,0,0,67,0,0,0,115, 254,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, @@ -1748,7 +1748,7 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 120,105,115,116,115,69,114,114,111,114,114,76,0,0,0,114, 159,0,0,0,114,173,0,0,0,114,95,0,0,0,41,9, 114,143,0,0,0,114,65,0,0,0,114,41,0,0,0,114, - 37,1,0,0,218,6,112,97,114,101,110,116,114,120,0,0, + 38,1,0,0,218,6,112,97,114,101,110,116,114,120,0,0, 0,114,63,0,0,0,114,68,0,0,0,114,0,1,0,0, 114,7,0,0,0,114,7,0,0,0,114,8,0,0,0,114, 253,0,0,0,72,4,0,0,115,58,0,0,0,12,2,4, @@ -1760,9 +1760,9 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 116,97,78,41,7,114,150,0,0,0,114,149,0,0,0,114, 151,0,0,0,114,152,0,0,0,114,252,0,0,0,114,254, 0,0,0,114,253,0,0,0,114,7,0,0,0,114,7,0, - 0,0,114,7,0,0,0,114,8,0,0,0,114,34,1,0, + 0,0,114,7,0,0,0,114,8,0,0,0,114,35,1,0, 0,58,4,0,0,115,12,0,0,0,8,0,4,2,8,2, - 8,5,18,5,255,128,114,34,1,0,0,99,0,0,0,0, + 8,5,18,5,255,128,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, @@ -1783,7 +1783,6 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 0,114,7,1,0,0,41,5,114,143,0,0,0,114,163,0, 0,0,114,65,0,0,0,114,41,0,0,0,114,175,0,0, 0,114,7,0,0,0,114,7,0,0,0,114,8,0,0,0, -<<<<<<< HEAD 114,241,0,0,0,107,4,0,0,115,24,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,255,128,122,29,83,111,117,114,99,101,108,101, @@ -1800,132 +1799,12 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 95,115,111,117,114,99,101,78,41,6,114,150,0,0,0,114, 149,0,0,0,114,151,0,0,0,114,152,0,0,0,114,241, 0,0,0,114,1,1,0,0,114,7,0,0,0,114,7,0, - 0,0,114,7,0,0,0,114,8,0,0,0,114,41,1,0, + 0,0,114,7,0,0,0,114,8,0,0,0,114,42,1,0, 0,103,4,0,0,115,10,0,0,0,8,0,4,2,8,2, - 12,16,255,128,114,41,1,0,0,99,0,0,0,0,0,0, -======= - 114,248,0,0,0,120,3,0,0,115,18,0,0,0,8,0, - 8,2,8,8,8,14,8,10,8,7,14,10,12,8,255,128, - 114,248,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,183,0,0,0,41,3,114,143,0,0,0, - 114,163,0,0,0,114,65,0,0,0,114,7,0,0,0,114, - 7,0,0,0,114,8,0,0,0,114,235,0,0,0,13,4, - 0,0,115,6,0,0,0,6,3,10,1,255,128,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,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,69,0,0,0,169,2,218, - 9,95,95,99,108,97,115,115,95,95,114,156,0,0,0,169, - 2,114,143,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,19,4,0,0,243,8,0,0,0,12,1,10, - 1,2,255,255,128,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,69,0,0,0,169, - 3,218,4,104,97,115,104,114,141,0,0,0,114,65,0,0, - 0,169,1,114,143,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,23,4,0,0,243,4,0,0,0,20,1,255,128,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,10,1,0,0,114,247,0,0,0,114,246,0, - 0,0,169,1,114,13,1,0,0,114,7,0,0,0,114,8, - 0,0,0,114,247,0,0,0,26,4,0,0,115,4,0,0, - 0,16,10,255,128,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,71,0,0,0,114,246,0,0,0,114,7,0,0,0,114, - 7,0,0,0,114,8,0,0,0,114,203,0,0,0,38,4, - 0,0,243,4,0,0,0,6,3,255,128,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,8,0,0,0,67,0,0,0,115,128,0, - 0,0,116,0,124,0,116,1,116,2,102,2,131,2,114,36, - 116,3,160,4,116,5,124,1,131,1,161,1,143,12,125,2, - 124,2,160,6,161,0,87,0,2,0,100,1,4,0,4,0, - 131,3,1,0,83,0,49,0,115,29,119,1,1,0,1,0, - 1,0,89,0,1,0,100,1,83,0,116,3,160,7,124,1, - 100,2,161,2,143,12,125,2,124,2,160,6,161,0,87,0, - 2,0,100,1,4,0,4,0,131,3,1,0,83,0,49,0, - 115,57,119,1,1,0,1,0,1,0,89,0,1,0,100,1, - 83,0,41,3,122,39,82,101,116,117,114,110,32,116,104,101, - 32,100,97,116,97,32,102,114,111,109,32,112,97,116,104,32, - 97,115,32,114,97,119,32,98,121,116,101,115,46,78,218,1, - 114,41,8,114,185,0,0,0,114,248,0,0,0,218,19,69, - 120,116,101,110,115,105,111,110,70,105,108,101,76,111,97,100, - 101,114,114,91,0,0,0,90,9,111,112,101,110,95,99,111, - 100,101,114,109,0,0,0,90,4,114,101,97,100,114,92,0, - 0,0,41,3,114,143,0,0,0,114,65,0,0,0,114,94, - 0,0,0,114,7,0,0,0,114,7,0,0,0,114,8,0, - 0,0,114,254,0,0,0,43,4,0,0,115,16,0,0,0, - 14,2,16,1,22,1,20,128,14,2,22,1,20,128,255,128, - 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,30,1,0,0,41,3,114,143,0,0,0,114,243, - 0,0,0,114,30,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,52,4,0,0, - 115,6,0,0,0,12,2,8,1,255,128,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,150,0, - 0,0,114,149,0,0,0,114,151,0,0,0,114,152,0,0, - 0,114,235,0,0,0,114,15,1,0,0,114,21,1,0,0, - 114,160,0,0,0,114,247,0,0,0,114,203,0,0,0,114, - 254,0,0,0,114,32,1,0,0,218,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,24,1,0,0,114,8,0,0,0,114,10,1,0, - 0,8,4,0,0,115,26,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,255,128,114,10,1,0,0,99,0,0,0,0,0,0, ->>>>>>> added exception groups + 12,16,255,128,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, -<<<<<<< HEAD 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, @@ -2084,6 +1963,7 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 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, +<<<<<<< HEAD 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, @@ -2098,6 +1978,46 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 0,0,114,7,0,0,0,114,8,0,0,0,114,240,0,0, 0,151,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, +======= + 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,159,0,0,0,114,242,0, + 0,0,114,187,0,0,0,90,12,101,120,101,99,95,100,121, + 110,97,109,105,99,114,173,0,0,0,114,141,0,0,0,114, + 65,0,0,0,169,2,114,143,0,0,0,114,244,0,0,0, + 114,7,0,0,0,114,7,0,0,0,114,8,0,0,0,114, + 245,0,0,0,155,4,0,0,115,10,0,0,0,14,2,6, + 1,8,1,8,255,255,128,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, + 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, + 116,117,114,110,32,84,114,117,101,32,105,102,32,116,104,101, + 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,236,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,164,4,0,0,115,8,0,0,0,6, + 128,2,1,20,255,255,128,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,74,0, + 0,0,114,65,0,0,0,218,3,97,110,121,114,232,0,0, + 0,114,247,0,0,0,114,7,0,0,0,114,46,1,0,0, + 114,8,0,0,0,114,206,0,0,0,161,4,0,0,115,10, + 0,0,0,14,2,12,1,2,1,8,255,255,128,122,30,69, +>>>>>>> regenerated Python/importlib_external.h 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, @@ -2153,6 +2073,7 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 114,7,0,0,0,114,8,0,0,0,114,242,0,0,0,171, 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, +<<<<<<< HEAD 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, @@ -2270,10 +2191,112 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 95,114,101,99,97,108,99,117,108,97,116,101,212,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,114,46,103,101,116,95,102,105,108,101,110,97,109,101,78, + 41,14,114,150,0,0,0,114,149,0,0,0,114,151,0,0, + 0,114,152,0,0,0,114,236,0,0,0,114,16,1,0,0, + 114,22,1,0,0,114,239,0,0,0,114,245,0,0,0,114, + 206,0,0,0,114,241,0,0,0,114,1,1,0,0,114,160, + 0,0,0,114,203,0,0,0,114,7,0,0,0,114,7,0, + 0,0,114,7,0,0,0,114,8,0,0,0,114,30,1,0, + 0,128,4,0,0,115,26,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,255,128,114,30,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,69, + 0,0,0,41,6,218,5,95,110,97,109,101,218,5,95,112, + 97,116,104,114,136,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,143,0, + 0,0,114,141,0,0,0,114,65,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,236,0,0,0,188,4,0, + 0,115,10,0,0,0,6,1,6,1,14,1,10,1,255,128, + 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, + 97,0,0,0,114,10,0,0,0,41,2,114,15,0,0,0, + 114,65,0,0,0,90,8,95,95,112,97,116,104,95,95,78, + 41,2,114,49,1,0,0,114,104,0,0,0,41,4,114,143, + 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,194,4,0,0,115,10,0, + 0,0,18,2,8,1,4,2,8,3,255,128,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,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,69, + 0,0,0,41,4,114,56,1,0,0,114,155,0,0,0,114, + 15,0,0,0,218,7,109,111,100,117,108,101,115,41,3,114, + 143,0,0,0,90,18,112,97,114,101,110,116,95,109,111,100, + 117,108,101,95,110,97,109,101,90,14,112,97,116,104,95,97, + 116,116,114,95,110,97,109,101,114,7,0,0,0,114,7,0, + 0,0,114,8,0,0,0,114,51,1,0,0,204,4,0,0, + 115,6,0,0,0,12,1,16,1,255,128,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,69,0,0,0,41, + 8,114,136,0,0,0,114,51,1,0,0,114,52,1,0,0, + 114,53,1,0,0,114,49,1,0,0,114,164,0,0,0,114, + 202,0,0,0,114,50,1,0,0,41,3,114,143,0,0,0, + 90,11,112,97,114,101,110,116,95,112,97,116,104,114,210,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,208, + 4,0,0,115,18,0,0,0,12,2,10,1,14,1,18,3, + 6,1,8,1,6,1,6,1,255,128,122,27,95,78,97,109, +>>>>>>> regenerated Python/importlib_external.h 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, +<<<<<<< HEAD 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, @@ -2303,11 +2326,42 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 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,234,4,0,0,114,62,1,0,0,114,10,0,0,0,122, +======= + 0,114,69,0,0,0,41,2,218,4,105,116,101,114,114,58, + 1,0,0,114,21,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,221,4,0,0,243,4,0,0,0,12,1,255,128,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,69,0,0,0,169,1,114,58,1,0,0,41,2,114, + 143,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,224,4,0,0,114,62,1,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,115,14,0,0,0,124,2,124,0,106,0, + 124,1,60,0,100,0,83,0,114,69,0,0,0,41,1,114, + 50,1,0,0,41,3,114,143,0,0,0,114,64,1,0,0, + 114,65,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,227,4,0,0,115,4,0,0,0,14,1,255,128,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,69,0,0,0,41,2,114, + 4,0,0,0,114,58,1,0,0,114,21,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,230,4,0,0,114,62,1,0,0,122, +>>>>>>> regenerated Python/importlib_external.h 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, +<<<<<<< HEAD 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, @@ -2340,6 +2394,39 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 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, +======= + 80,97,116,104,40,123,33,114,125,41,41,2,114,89,0,0, + 0,114,50,1,0,0,114,21,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,233,4,0,0,114,62,1,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,69,0,0,0,114,63,1,0,0,169,2,114,143,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,236,4,0,0,114,62,1,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,115,16,0,0,0,124,0,106,0,160,1,124,1, + 161,1,1,0,100,0,83,0,114,69,0,0,0,41,2,114, + 50,1,0,0,114,61,0,0,0,114,70,1,0,0,114,7, + 0,0,0,114,7,0,0,0,114,8,0,0,0,114,61,0, + 0,0,239,4,0,0,243,4,0,0,0,16,1,255,128,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,150,0,0,0,114,149, + 0,0,0,114,151,0,0,0,114,152,0,0,0,114,236,0, + 0,0,114,56,1,0,0,114,51,1,0,0,114,58,1,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, + 61,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,181,4,0, + 0,115,28,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, + 255,128,114,48,1,0,0,99,0,0,0,0,0,0,0,0, +>>>>>>> regenerated Python/importlib_external.h 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, @@ -2351,6 +2438,7 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 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, +<<<<<<< HEAD <<<<<<< HEAD 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, @@ -2388,6 +2476,10 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { ======= 0,114,69,0,0,0,41,2,114,47,1,0,0,114,49,1, 0,0,114,53,1,0,0,114,7,0,0,0,114,7,0,0, +======= + 0,114,69,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, +>>>>>>> regenerated Python/importlib_external.h 0,114,8,0,0,0,114,236,0,0,0,245,4,0,0,115, 4,0,0,0,18,1,255,128,122,25,95,78,97,109,101,115, 112,97,99,101,76,111,97,100,101,114,46,95,95,105,110,105, @@ -2422,223 +2514,12 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 114,7,0,0,0,114,8,0,0,0,114,206,0,0,0,3, 5,0,0,243,4,0,0,0,4,1,255,128,122,27,95,78, 97,109,101,115,112,97,99,101,76,111,97,100,101,114,46,105, -======= - 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,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,32,102,111,114,32,116,104,101,32,112,97,116, - 104,46,41,2,114,193,0,0,0,114,5,1,0,0,78,41, - 3,114,75,0,0,0,218,8,115,116,95,109,116,105,109,101, - 90,7,115,116,95,115,105,122,101,41,3,114,143,0,0,0, - 114,65,0,0,0,114,9,1,0,0,114,7,0,0,0,114, - 7,0,0,0,114,8,0,0,0,114,251,0,0,0,62,4, - 0,0,115,6,0,0,0,8,2,14,1,255,128,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,5,0,0,0,67, - 0,0,0,115,24,0,0,0,116,0,124,1,131,1,125,4, - 124,0,106,1,124,2,124,3,124,4,100,1,141,3,83,0, - 41,2,78,169,1,218,5,95,109,111,100,101,41,2,114,139, - 0,0,0,114,252,0,0,0,41,5,114,143,0,0,0,114, - 134,0,0,0,114,132,0,0,0,114,41,0,0,0,114,78, - 0,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,6,0,0,0, - 8,2,16,1,255,128,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,87,0,0,0,114,36,1, - 0,0,99,3,0,0,0,0,0,0,0,1,0,0,0,9, - 0,0,0,11,0,0,0,67,0,0,0,115,254,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,48,125,7,116,4,124,4,124,7, - 131,2,125,4,122,7,116,5,160,6,124,4,161,1,1,0, - 87,0,113,35,4,0,116,7,121,58,1,0,1,0,1,0, - 89,0,113,35,4,0,116,8,121,126,1,0,125,8,1,0, - 122,15,116,9,160,10,100,1,124,4,124,8,161,3,1,0, - 87,0,89,0,100,2,125,8,126,8,1,0,100,2,83,0, - 100,2,125,8,126,8,119,1,122,15,116,11,124,1,124,2, - 124,3,131,3,1,0,116,9,160,10,100,3,124,1,161,2, - 1,0,87,0,100,2,83,0,4,0,116,8,121,125,1,0, - 125,8,1,0,122,14,116,9,160,10,100,1,124,1,124,8, - 161,3,1,0,87,0,89,0,100,2,125,8,126,8,100,2, - 83,0,100,2,125,8,126,8,119,1,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,74,0,0,0, - 114,83,0,0,0,114,61,0,0,0,218,8,114,101,118,101, - 114,115,101,100,114,67,0,0,0,114,18,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,76,0,0,0,114,159,0,0,0, - 114,173,0,0,0,114,95,0,0,0,41,9,114,143,0,0, - 0,114,65,0,0,0,114,41,0,0,0,114,37,1,0,0, - 218,6,112,97,114,101,110,116,114,120,0,0,0,114,63,0, - 0,0,114,68,0,0,0,114,255,0,0,0,114,7,0,0, - 0,114,7,0,0,0,114,8,0,0,0,114,252,0,0,0, - 72,4,0,0,115,58,0,0,0,12,2,4,1,12,2,12, - 1,10,1,12,254,12,4,10,1,2,1,14,1,12,1,4, - 2,14,1,6,3,4,1,4,255,16,2,8,128,2,1,12, - 1,18,1,14,1,8,2,2,1,18,255,8,128,2,254,2, - 247,255,128,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,150,0,0,0,114,149,0,0,0,114,151,0,0,0, - 114,152,0,0,0,114,251,0,0,0,114,253,0,0,0,114, - 252,0,0,0,114,7,0,0,0,114,7,0,0,0,114,7, - 0,0,0,114,8,0,0,0,114,34,1,0,0,58,4,0, - 0,115,12,0,0,0,8,0,4,2,8,2,8,5,18,5, - 255,128,114,34,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,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,124,3,124,1,124,4, - 131,3,1,0,116,3,116,4,124,3,131,1,100,2,100,0, - 133,2,25,0,124,1,124,2,100,3,141,3,83,0,41,4, - 78,114,183,0,0,0,114,169,0,0,0,41,2,114,141,0, - 0,0,114,132,0,0,0,41,5,114,203,0,0,0,114,254, - 0,0,0,114,176,0,0,0,114,189,0,0,0,114,6,1, - 0,0,41,5,114,143,0,0,0,114,163,0,0,0,114,65, - 0,0,0,114,41,0,0,0,114,175,0,0,0,114,7,0, - 0,0,114,7,0,0,0,114,8,0,0,0,114,240,0,0, - 0,107,4,0,0,115,24,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, - 255,128,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,23,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,246,0,0,0,114,7,0,0,0,114,7,0,0,0,114, - 8,0,0,0,114,0,1,0,0,123,4,0,0,114,24,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,150,0,0,0,114,149,0,0,0, - 114,151,0,0,0,114,152,0,0,0,114,240,0,0,0,114, - 0,1,0,0,114,7,0,0,0,114,7,0,0,0,114,7, - 0,0,0,114,8,0,0,0,114,41,1,0,0,103,4,0, - 0,115,10,0,0,0,8,0,4,2,8,2,12,16,255,128, - 114,41,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,29,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,69,0,0,0,114,183,0,0,0,41,3,114, - 143,0,0,0,114,141,0,0,0,114,65,0,0,0,114,7, - 0,0,0,114,7,0,0,0,114,8,0,0,0,114,235,0, - 0,0,136,4,0,0,115,6,0,0,0,6,1,10,1,255, - 128,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,11,1,0,0,114,69,0, - 0,0,114,12,1,0,0,114,14,1,0,0,114,7,0,0, - 0,114,7,0,0,0,114,8,0,0,0,114,15,1,0,0, - 140,4,0,0,114,16,1,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,17, - 1,0,0,114,69,0,0,0,114,18,1,0,0,114,20,1, - 0,0,114,7,0,0,0,114,7,0,0,0,114,8,0,0, - 0,114,21,1,0,0,144,4,0,0,114,22,1,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,159,0,0,0,114,241,0,0,0,114,187, - 0,0,0,90,14,99,114,101,97,116,101,95,100,121,110,97, - 109,105,99,114,173,0,0,0,114,141,0,0,0,114,65,0, - 0,0,41,3,114,143,0,0,0,114,210,0,0,0,114,243, - 0,0,0,114,7,0,0,0,114,7,0,0,0,114,8,0, - 0,0,114,238,0,0,0,147,4,0,0,115,16,0,0,0, - 4,2,6,1,4,255,6,2,8,1,4,255,4,2,255,128, - 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,159,0,0,0,114,241,0,0,0,114,187, - 0,0,0,90,12,101,120,101,99,95,100,121,110,97,109,105, - 99,114,173,0,0,0,114,141,0,0,0,114,65,0,0,0, - 169,2,114,143,0,0,0,114,243,0,0,0,114,7,0,0, - 0,114,7,0,0,0,114,8,0,0,0,114,244,0,0,0, - 155,4,0,0,115,10,0,0,0,14,2,6,1,8,1,8, - 255,255,128,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,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,116,117,114,110, - 32,84,114,117,101,32,105,102,32,116,104,101,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,235,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,164,4,0,0,115,8,0,0,0,6,128,2,1,20, - 255,255,128,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,74,0,0,0,114,65, - 0,0,0,218,3,97,110,121,114,231,0,0,0,114,246,0, - 0,0,114,7,0,0,0,114,45,1,0,0,114,8,0,0, - 0,114,206,0,0,0,161,4,0,0,115,10,0,0,0,14, - 2,12,1,2,1,8,255,255,128,122,30,69,120,116,101,110, - 115,105,111,110,70,105,108,101,76,111,97,100,101,114,46,105, ->>>>>>> added exception groups 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,23,0,0,0,41,2,78,114,10,0,0,0,114, 7,0,0,0,114,247,0,0,0,114,7,0,0,0,114,7, 0,0,0,114,8,0,0,0,114,1,1,0,0,6,5,0, - 0,114,75,1,0,0,122,27,95,78,97,109,101,115,112,97, + 0,114,76,1,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, @@ -2647,13 +2528,14 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 110,103,62,114,243,0,0,0,84,41,1,114,3,1,0,0, 41,1,114,4,1,0,0,114,247,0,0,0,114,7,0,0, 0,114,7,0,0,0,114,8,0,0,0,114,241,0,0,0, - 9,5,0,0,114,72,1,0,0,122,25,95,78,97,109,101, + 9,5,0,0,114,73,1,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,23,0, 0,0,114,237,0,0,0,114,7,0,0,0,114,238,0,0, >>>>>>> added exception groups 0,114,7,0,0,0,114,7,0,0,0,114,8,0,0,0, +<<<<<<< HEAD 114,207,0,0,0,7,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, @@ -2705,14 +2587,48 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 0,0,0,114,8,0,0,0,114,249,0,0,0,22,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, +======= + 114,239,0,0,0,12,5,0,0,114,240,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,0,0,0,115,4,0,0,0,100,0,83,0, + 114,69,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,245, + 0,0,0,15,5,0,0,114,76,1,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,159,0,0,0,114,173,0,0,0,114,50,1, + 0,0,114,246,0,0,0,114,247,0,0,0,114,7,0,0, + 0,114,7,0,0,0,114,8,0,0,0,114,248,0,0,0, + 18,5,0,0,115,10,0,0,0,6,7,4,1,4,255,12, + 3,255,128,122,28,95,78,97,109,101,115,112,97,99,101,76, +>>>>>>> regenerated Python/importlib_external.h 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, +<<<<<<< HEAD 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, +======= + 41,3,114,32,1,0,0,114,77,1,0,0,114,50,1,0, + 0,41,3,114,143,0,0,0,114,244,0,0,0,114,77,1, +>>>>>>> regenerated Python/importlib_external.h 0,0,114,7,0,0,0,114,7,0,0,0,114,8,0,0, <<<<<<< HEAD 0,114,34,1,0,0,34,5,0,0,115,4,0,0,0,12, @@ -2944,13 +2860,13 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 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,150, 0,0,0,114,149,0,0,0,114,151,0,0,0,114,236,0, - 0,0,114,233,0,0,0,114,74,1,0,0,114,206,0,0, + 0,0,114,233,0,0,0,114,75,1,0,0,114,206,0,0, 0,114,1,1,0,0,114,241,0,0,0,114,239,0,0,0, 114,245,0,0,0,114,248,0,0,0,114,33,1,0,0,114, 7,0,0,0,114,7,0,0,0,114,7,0,0,0,114,8, - 0,0,0,114,73,1,0,0,244,4,0,0,115,24,0,0, + 0,0,0,114,74,1,0,0,244,4,0,0,115,24,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,255,128,114,73,1,0,0,99,0, + 3,8,3,8,3,12,12,255,128,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, @@ -2983,10 +2899,9 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 104,101,115,41,6,218,4,108,105,115,116,114,15,0,0,0, 218,19,112,97,116,104,95,105,109,112,111,114,116,101,114,95, 99,97,99,104,101,218,5,105,116,101,109,115,114,153,0,0, - 0,114,78,1,0,0,41,2,114,141,0,0,0,218,6,102, + 0,114,79,1,0,0,41,2,114,141,0,0,0,218,6,102, 105,110,100,101,114,114,7,0,0,0,114,7,0,0,0,114, -<<<<<<< HEAD - 8,0,0,0,114,78,1,0,0,41,5,0,0,115,16,0, + 8,0,0,0,114,79,1,0,0,41,5,0,0,115,16,0, 0,0,22,4,8,1,10,1,10,1,8,1,2,128,4,252, 255,128,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, @@ -3033,9 +2948,9 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 111,114,101,32,78,111,110,101,46,10,10,32,32,32,32,32, 32,32,32,114,10,0,0,0,78,41,7,114,18,0,0,0, 114,82,0,0,0,218,17,70,105,108,101,78,111,116,70,111, - 117,110,100,69,114,114,111,114,114,15,0,0,0,114,80,1, - 0,0,218,8,75,101,121,69,114,114,111,114,114,84,1,0, - 0,41,3,114,221,0,0,0,114,65,0,0,0,114,82,1, + 117,110,100,69,114,114,111,114,114,15,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,221,0,0,0,114,65,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,64,5,0,0,115,30,0,0,0, @@ -3065,7 +2980,7 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 99,116,95,110,97,109,101,114,99,0,0,0,114,100,0,0, 0,114,162,0,0,0,114,161,0,0,0,114,229,0,0,0, 114,224,0,0,0,114,207,0,0,0,114,202,0,0,0,41, - 7,114,221,0,0,0,114,163,0,0,0,114,82,1,0,0, + 7,114,221,0,0,0,114,163,0,0,0,114,83,1,0,0, 114,166,0,0,0,114,164,0,0,0,114,165,0,0,0,114, 210,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, @@ -3092,13 +3007,13 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 101,47,112,97,99,107,97,103,101,32,110,97,109,101,46,78, 114,226,0,0,0,122,19,115,112,101,99,32,109,105,115,115, 105,110,103,32,108,111,97,100,101,114,41,13,114,185,0,0, - 0,114,109,0,0,0,218,5,98,121,116,101,115,114,87,1, - 0,0,114,153,0,0,0,114,226,0,0,0,114,88,1,0, + 0,114,109,0,0,0,218,5,98,121,116,101,115,114,88,1, + 0,0,114,153,0,0,0,114,226,0,0,0,114,89,1,0, 0,114,164,0,0,0,114,202,0,0,0,114,142,0,0,0, 114,191,0,0,0,114,159,0,0,0,114,207,0,0,0,41, 9,114,221,0,0,0,114,163,0,0,0,114,65,0,0,0, 114,225,0,0,0,218,14,110,97,109,101,115,112,97,99,101, - 95,112,97,116,104,90,5,101,110,116,114,121,114,82,1,0, + 95,112,97,116,104,90,5,101,110,116,114,121,114,83,1,0, 0,114,210,0,0,0,114,165,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,107,5,0,0,115,44,0,0,0,4,5, @@ -3123,10 +3038,10 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 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,15,0,0,0,114,65,0,0,0,114,91,1,0,0,114, - 164,0,0,0,114,202,0,0,0,114,205,0,0,0,114,47, + 114,15,0,0,0,114,65,0,0,0,114,92,1,0,0,114, + 164,0,0,0,114,202,0,0,0,114,205,0,0,0,114,48, 1,0,0,41,6,114,221,0,0,0,114,163,0,0,0,114, - 65,0,0,0,114,225,0,0,0,114,210,0,0,0,114,90, + 65,0,0,0,114,225,0,0,0,114,210,0,0,0,114,91, 1,0,0,114,7,0,0,0,114,7,0,0,0,114,8,0, 0,0,114,226,0,0,0,139,5,0,0,115,28,0,0,0, 8,6,6,1,14,1,8,1,4,1,10,1,6,1,4,1, @@ -3138,411 +3053,11 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 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, -======= - 8,0,0,0,114,235,0,0,0,188,4,0,0,115,10,0, - 0,0,6,1,6,1,14,1,10,1,255,128,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,97,0,0,0, - 114,10,0,0,0,41,2,114,15,0,0,0,114,65,0,0, - 0,90,8,95,95,112,97,116,104,95,95,78,41,2,114,48, - 1,0,0,114,104,0,0,0,41,4,114,143,0,0,0,114, - 40,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,194,4,0,0,115,10,0,0,0,18,2, - 8,1,4,2,8,3,255,128,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,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,69,0,0,0,41, - 4,114,55,1,0,0,114,155,0,0,0,114,15,0,0,0, - 218,7,109,111,100,117,108,101,115,41,3,114,143,0,0,0, - 90,18,112,97,114,101,110,116,95,109,111,100,117,108,101,95, - 110,97,109,101,90,14,112,97,116,104,95,97,116,116,114,95, - 110,97,109,101,114,7,0,0,0,114,7,0,0,0,114,8, - 0,0,0,114,50,1,0,0,204,4,0,0,115,6,0,0, - 0,12,1,16,1,255,128,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,69,0,0,0,41,8,114,136,0, - 0,0,114,50,1,0,0,114,51,1,0,0,114,52,1,0, - 0,114,48,1,0,0,114,164,0,0,0,114,202,0,0,0, - 114,49,1,0,0,41,3,114,143,0,0,0,90,11,112,97, - 114,101,110,116,95,112,97,116,104,114,210,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,208,4,0,0,115, - 18,0,0,0,12,2,10,1,14,1,18,3,6,1,8,1, - 6,1,6,1,255,128,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,69,0, - 0,0,41,2,218,4,105,116,101,114,114,57,1,0,0,114, - 20,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,221,4,0, - 0,243,4,0,0,0,12,1,255,128,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,69,0, - 0,0,169,1,114,57,1,0,0,41,2,114,143,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,224,4,0,0,114,61,1,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,115,14,0,0,0,124,2,124,0,106,0,124,1,60,0, - 100,0,83,0,114,69,0,0,0,41,1,114,49,1,0,0, - 41,3,114,143,0,0,0,114,63,1,0,0,114,65,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,227,4,0, - 0,115,4,0,0,0,14,1,255,128,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, - 58,1,0,0,114,69,0,0,0,41,2,114,4,0,0,0, - 114,57,1,0,0,114,20,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,230,4,0,0,114,61,1,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,89,0,0,0,114,49,1, - 0,0,114,20,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, - 233,4,0,0,114,61,1,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,69,0,0, - 0,114,62,1,0,0,169,2,114,143,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, - 236,4,0,0,114,61,1,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,115, - 16,0,0,0,124,0,106,0,160,1,124,1,161,1,1,0, - 100,0,83,0,114,69,0,0,0,41,2,114,49,1,0,0, - 114,61,0,0,0,114,69,1,0,0,114,7,0,0,0,114, - 7,0,0,0,114,8,0,0,0,114,61,0,0,0,239,4, - 0,0,243,4,0,0,0,16,1,255,128,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,150,0,0,0,114,149,0,0,0,114, - 151,0,0,0,114,152,0,0,0,114,235,0,0,0,114,55, - 1,0,0,114,50,1,0,0,114,57,1,0,0,114,60,1, - 0,0,114,64,1,0,0,114,65,1,0,0,114,66,1,0, - 0,114,68,1,0,0,114,71,1,0,0,114,61,0,0,0, - 114,7,0,0,0,114,7,0,0,0,114,7,0,0,0,114, - 8,0,0,0,114,47,1,0,0,181,4,0,0,115,28,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,255,128,114,47, - 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,69,0, - 0,0,41,2,114,47,1,0,0,114,49,1,0,0,114,53, - 1,0,0,114,7,0,0,0,114,7,0,0,0,114,8,0, - 0,0,114,235,0,0,0,245,4,0,0,115,4,0,0,0, - 18,1,255,128,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,99, - 0,0,0,114,100,0,0,0,114,101,0,0,0,114,89,0, - 0,0,114,150,0,0,0,41,1,114,243,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,248,4,0,0,115,10, - 0,0,0,6,7,2,1,4,255,12,2,255,128,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,2,0,0,0,1,0,0,0, - 67,0,0,0,114,23,0,0,0,41,2,78,84,114,7,0, - 0,0,114,246,0,0,0,114,7,0,0,0,114,7,0,0, - 0,114,8,0,0,0,114,206,0,0,0,3,5,0,0,243, - 4,0,0,0,4,1,255,128,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,23, - 0,0,0,41,2,78,114,10,0,0,0,114,7,0,0,0, - 114,246,0,0,0,114,7,0,0,0,114,7,0,0,0,114, - 8,0,0,0,114,0,1,0,0,6,5,0,0,114,75,1, - 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,10,0,0,0,122,8,60,115,116,114,105,110,103,62,114, - 242,0,0,0,84,41,1,114,2,1,0,0,41,1,114,3, - 1,0,0,114,246,0,0,0,114,7,0,0,0,114,7,0, - 0,0,114,8,0,0,0,114,240,0,0,0,9,5,0,0, - 114,72,1,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,23,0,0,0,114,236, - 0,0,0,114,7,0,0,0,114,237,0,0,0,114,7,0, - 0,0,114,7,0,0,0,114,8,0,0,0,114,238,0,0, - 0,12,5,0,0,114,239,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, - 0,0,0,115,4,0,0,0,100,0,83,0,114,69,0,0, - 0,114,7,0,0,0,114,42,1,0,0,114,7,0,0,0, - 114,7,0,0,0,114,8,0,0,0,114,244,0,0,0,15, - 5,0,0,114,75,1,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, - 159,0,0,0,114,173,0,0,0,114,49,1,0,0,114,245, - 0,0,0,114,246,0,0,0,114,7,0,0,0,114,7,0, - 0,0,114,8,0,0,0,114,247,0,0,0,18,5,0,0, - 115,10,0,0,0,6,7,4,1,4,255,12,3,255,128,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,31, - 1,0,0,114,76,1,0,0,114,49,1,0,0,41,3,114, - 143,0,0,0,114,243,0,0,0,114,76,1,0,0,114,7, - 0,0,0,114,7,0,0,0,114,8,0,0,0,114,32,1, - 0,0,30,5,0,0,115,6,0,0,0,12,1,10,1,255, - 128,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,150,0,0,0,114, - 149,0,0,0,114,151,0,0,0,114,235,0,0,0,114,232, - 0,0,0,114,74,1,0,0,114,206,0,0,0,114,0,1, - 0,0,114,240,0,0,0,114,238,0,0,0,114,244,0,0, - 0,114,247,0,0,0,114,32,1,0,0,114,7,0,0,0, - 114,7,0,0,0,114,7,0,0,0,114,8,0,0,0,114, - 73,1,0,0,244,4,0,0,115,24,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,255,128,114,73,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,21,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,22, - 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,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,116,4,124,1,100,2,131,2,114,29,124,1,160,5, - 161,0,1,0,113,7,100,1,83,0,41,3,122,125,67,97, - 108,108,32,116,104,101,32,105,110,118,97,108,105,100,97,116, - 101,95,99,97,99,104,101,115,40,41,32,109,101,116,104,111, - 100,32,111,110,32,97,108,108,32,112,97,116,104,32,101,110, - 116,114,121,32,102,105,110,100,101,114,115,10,32,32,32,32, - 32,32,32,32,115,116,111,114,101,100,32,105,110,32,115,121, - 115,46,112,97,116,104,95,105,109,112,111,114,116,101,114,95, - 99,97,99,104,101,115,32,40,119,104,101,114,101,32,105,109, - 112,108,101,109,101,110,116,101,100,41,46,78,218,17,105,110, - 118,97,108,105,100,97,116,101,95,99,97,99,104,101,115,41, - 6,218,4,108,105,115,116,114,15,0,0,0,218,19,112,97, - 116,104,95,105,109,112,111,114,116,101,114,95,99,97,99,104, - 101,218,5,105,116,101,109,115,114,153,0,0,0,114,78,1, - 0,0,41,2,114,141,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,78,1,0,0,41,5,0,0,115,16,0,0,0,22,4, - 8,1,10,1,10,1,8,1,2,128,4,252,255,128,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,76,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,17,125,1, - 122,7,124,1,124,0,131,1,87,0,2,0,1,0,83,0, - 4,0,116,5,121,37,1,0,1,0,1,0,89,0,113,17, - 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,15,0,0,0,218,10,112,97,116,104,95, - 104,111,111,107,115,114,99,0,0,0,114,100,0,0,0,114, - 162,0,0,0,114,142,0,0,0,41,2,114,65,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,51,5,0,0,115,20,0,0,0,16,3,12,1,10, - 1,2,1,14,1,12,1,4,1,4,2,2,253,255,128,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,100,0,0,0,124,1,100,1,107,2,114,20,122,6,116, - 0,160,1,161,0,125,1,87,0,110,9,4,0,116,2,121, - 49,1,0,1,0,1,0,89,0,100,2,83,0,122,8,116, - 3,106,4,124,1,25,0,125,2,87,0,124,2,83,0,4, - 0,116,5,121,48,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,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, - 10,0,0,0,78,41,7,114,18,0,0,0,114,82,0,0, - 0,218,17,70,105,108,101,78,111,116,70,111,117,110,100,69, - 114,114,111,114,114,15,0,0,0,114,80,1,0,0,218,8, - 75,101,121,69,114,114,111,114,114,84,1,0,0,41,3,114, - 221,0,0,0,114,65,0,0,0,114,82,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,64,5,0,0,115,30,0,0,0,8,8,2,1, - 12,1,12,1,6,3,2,1,12,1,4,4,12,253,10,1, - 12,1,4,1,2,253,2,250,255,128,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,161,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,153,0,0,0, - 114,159,0,0,0,90,12,95,111,98,106,101,99,116,95,110, - 97,109,101,114,99,0,0,0,114,100,0,0,0,114,162,0, - 0,0,114,161,0,0,0,114,229,0,0,0,114,224,0,0, - 0,114,207,0,0,0,114,202,0,0,0,41,7,114,221,0, - 0,0,114,163,0,0,0,114,82,1,0,0,114,166,0,0, - 0,114,164,0,0,0,114,165,0,0,0,114,210,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,86,5,0,0,115,28,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,255,128,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,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, - 116,4,124,6,100,2,131,2,114,35,124,6,160,5,124,1, - 124,3,161,2,125,7,110,6,124,0,160,6,124,1,124,6, - 161,2,125,7,124,7,100,1,117,0,114,46,113,4,124,7, - 106,7,100,1,117,1,114,55,124,7,2,0,1,0,83,0, - 124,7,106,8,125,8,124,8,100,1,117,0,114,66,116,9, - 100,3,131,1,130,1,124,4,160,10,124,8,161,1,1,0, - 113,4,116,11,160,12,124,1,100,1,161,2,125,7,124,4, - 124,7,95,8,124,7,83,0,41,4,122,63,70,105,110,100, - 32,116,104,101,32,108,111,97,100,101,114,32,111,114,32,110, - 97,109,101,115,112,97,99,101,95,112,97,116,104,32,102,111, - 114,32,116,104,105,115,32,109,111,100,117,108,101,47,112,97, - 99,107,97,103,101,32,110,97,109,101,46,78,114,226,0,0, - 0,122,19,115,112,101,99,32,109,105,115,115,105,110,103,32, - 108,111,97,100,101,114,41,13,114,185,0,0,0,114,109,0, - 0,0,218,5,98,121,116,101,115,114,87,1,0,0,114,153, - 0,0,0,114,226,0,0,0,114,88,1,0,0,114,164,0, - 0,0,114,202,0,0,0,114,142,0,0,0,114,191,0,0, - 0,114,159,0,0,0,114,207,0,0,0,41,9,114,221,0, - 0,0,114,163,0,0,0,114,65,0,0,0,114,225,0,0, - 0,218,14,110,97,109,101,115,112,97,99,101,95,112,97,116, - 104,90,5,101,110,116,114,121,114,82,1,0,0,114,210,0, - 0,0,114,165,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,107,5,0,0,115,44,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,255,128,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, ->>>>>>> added exception groups 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, -<<<<<<< HEAD 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, @@ -3550,6 +3065,7 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 32,32,32,32,32,32,32,32,122,101,80,97,116,104,70,105, >>>>>>> added exception groups 110,100,101,114,46,102,105,110,100,95,109,111,100,117,108,101, +<<<<<<< HEAD 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, @@ -3679,6 +3195,153 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 111,114,116,105,111,110,115,41,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, +======= + 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,227,0,0,0,114,228,0,0,0,114,7,0,0,0,114, + 7,0,0,0,114,8,0,0,0,114,229,0,0,0,163,5, + 0,0,115,16,0,0,0,6,8,2,2,4,254,12,3,8, + 1,4,1,6,1,255,128,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,144,0, + 0,0,114,145,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, + 179,5,0,0,115,6,0,0,0,12,10,16,1,255,128,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,69, + 0,0,0,114,230,0,0,0,41,14,114,150,0,0,0,114, + 149,0,0,0,114,151,0,0,0,114,152,0,0,0,114,233, + 0,0,0,114,79,1,0,0,114,85,1,0,0,114,234,0, + 0,0,114,88,1,0,0,114,89,1,0,0,114,92,1,0, + 0,114,226,0,0,0,114,229,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,37,5,0,0,115,38,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,255,128,114,78,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,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,90,5,101,6,90,7,100,6,100,7,132, + 0,90,8,100,8,100,9,132,0,90,9,100,19,100,11,100, + 12,132,1,90,10,100,13,100,14,132,0,90,11,101,12,100, + 15,100,16,132,0,131,1,90,13,100,17,100,18,132,0,90, + 14,100,10,83,0,41,20,218,10,70,105,108,101,70,105,110, + 100,101,114,122,172,70,105,108,101,45,98,97,115,101,100,32, + 102,105,110,100,101,114,46,10,10,32,32,32,32,73,110,116, + 101,114,97,99,116,105,111,110,115,32,119,105,116,104,32,116, + 104,101,32,102,105,108,101,32,115,121,115,116,101,109,32,97, + 114,101,32,99,97,99,104,101,100,32,102,111,114,32,112,101, + 114,102,111,114,109,97,110,99,101,44,32,98,101,105,110,103, + 10,32,32,32,32,114,101,102,114,101,115,104,101,100,32,119, + 104,101,110,32,116,104,101,32,100,105,114,101,99,116,111,114, + 121,32,116,104,101,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,69,0,0,0,114,7,0,0,0,114,44,1, + 0,0,169,1,114,164,0,0,0,114,7,0,0,0,114,8, + 0,0,0,114,9,0,0,0,208,5,0,0,115,6,0,0, + 0,6,128,18,0,255,128,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, + 97,0,0,0,114,130,0,0,0,78,41,11,114,191,0,0, + 0,218,8,95,108,111,97,100,101,114,115,114,65,0,0,0, + 114,86,0,0,0,114,67,0,0,0,114,18,0,0,0,114, + 82,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,143,0,0,0,114, + 65,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,212,0, + 0,0,114,7,0,0,0,114,96,1,0,0,114,8,0,0, + 0,114,236,0,0,0,202,5,0,0,115,22,0,0,0,4, + 4,12,1,26,1,6,1,10,2,10,1,18,1,6,1,8, + 1,12,1,255,128,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,130,0,0,0,78,41,1,114,98,1, + 0,0,114,21,1,0,0,114,7,0,0,0,114,7,0,0, + 0,114,8,0,0,0,114,79,1,0,0,218,5,0,0,114, + 81,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,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,124,2,106,5,112,25, + 103,0,102,2,83,0,41,3,122,197,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,44,32,111,114,32,116,104,101,32, + 110,97,109,101,115,112,97,99,101,10,32,32,32,32,32,32, + 32,32,112,97,99,107,97,103,101,32,112,111,114,116,105,111, + 110,115,46,32,82,101,116,117,114,110,115,32,40,108,111,97, + 100,101,114,44,32,108,105,115,116,45,111,102,45,112,111,114, + 116,105,111,110,115,41,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,70,105,108,101,70,105,110,100,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, +>>>>>>> regenerated Python/importlib_external.h 115,101,32,102,105,110,100,95,115,112,101,99,40,41,32,105, <<<<<<< HEAD 110,115,116,101,97,100,46,10,10,32,32,32,32,32,32,32, @@ -3800,7 +3463,7 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 213,0,0,0,41,7,114,143,0,0,0,114,211,0,0,0, 114,163,0,0,0,114,65,0,0,0,90,4,115,109,115,108, 114,225,0,0,0,114,164,0,0,0,114,7,0,0,0,114, - 7,0,0,0,114,8,0,0,0,114,91,1,0,0,239,5, + 7,0,0,0,114,8,0,0,0,114,92,1,0,0,239,5, 0,0,115,10,0,0,0,10,1,8,1,2,1,6,255,255, 128,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, @@ -3842,18 +3505,18 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 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,104,0,0, 0,114,75,0,0,0,114,65,0,0,0,114,18,0,0,0, - 114,82,0,0,0,114,35,1,0,0,114,76,0,0,0,114, - 97,1,0,0,218,11,95,102,105,108,108,95,99,97,99,104, - 101,114,21,0,0,0,114,100,1,0,0,114,131,0,0,0, - 114,99,1,0,0,114,67,0,0,0,114,96,1,0,0,114, - 80,0,0,0,114,91,1,0,0,114,83,0,0,0,114,111, + 114,82,0,0,0,114,36,1,0,0,114,76,0,0,0,114, + 98,1,0,0,218,11,95,102,105,108,108,95,99,97,99,104, + 101,114,21,0,0,0,114,101,1,0,0,114,131,0,0,0, + 114,100,1,0,0,114,67,0,0,0,114,97,1,0,0,114, + 80,0,0,0,114,92,1,0,0,114,83,0,0,0,114,111, 0,0,0,114,159,0,0,0,114,173,0,0,0,114,207,0, 0,0,114,202,0,0,0,41,14,114,143,0,0,0,114,163, 0,0,0,114,225,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,193,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,44,1,0,0,114,211,0, + 97,115,101,95,112,97,116,104,114,45,1,0,0,114,211,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,210,0,0, 0,114,7,0,0,0,114,7,0,0,0,114,8,0,0,0, @@ -3895,18 +3558,18 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 101,46,60,108,111,99,97,108,115,62,46,60,115,101,116,99, 111,109,112,62,78,41,18,114,65,0,0,0,114,18,0,0, 0,90,7,108,105,115,116,100,105,114,114,82,0,0,0,114, - 85,1,0,0,218,15,80,101,114,109,105,115,115,105,111,110, + 86,1,0,0,218,15,80,101,114,109,105,115,115,105,111,110, 69,114,114,111,114,218,18,78,111,116,65,68,105,114,101,99, 116,111,114,121,69,114,114,111,114,114,15,0,0,0,114,25, - 0,0,0,114,26,0,0,0,114,98,1,0,0,114,99,1, + 0,0,0,114,26,0,0,0,114,99,1,0,0,114,100,1, 0,0,114,126,0,0,0,114,89,0,0,0,114,131,0,0, - 0,218,3,97,100,100,114,27,0,0,0,114,100,1,0,0, + 0,218,3,97,100,100,114,27,0,0,0,114,101,1,0,0, 41,9,114,143,0,0,0,114,65,0,0,0,90,8,99,111, 110,116,101,110,116,115,90,21,108,111,119,101,114,95,115,117, - 102,102,105,120,95,99,111,110,116,101,110,116,115,114,70,1, - 0,0,114,141,0,0,0,114,54,1,0,0,114,44,1,0, + 102,102,105,120,95,99,111,110,116,101,110,116,115,114,71,1, + 0,0,114,141,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,102,1,0,0,39, + 114,7,0,0,0,114,8,0,0,0,114,103,1,0,0,39, 6,0,0,115,40,0,0,0,6,2,2,1,22,1,18,1, 6,3,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,255,128, @@ -3943,7 +3606,7 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 101,99,116,111,114,105,101,115,32,97,114,101,32,115,117,112, 112,111,114,116,101,100,114,71,0,0,0,78,41,2,114,83, 0,0,0,114,142,0,0,0,114,71,0,0,0,169,2,114, - 221,0,0,0,114,101,1,0,0,114,7,0,0,0,114,8, + 221,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,80,6,0, 0,115,8,0,0,0,8,2,12,1,16,1,255,128,122,54, @@ -3951,28 +3614,28 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 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,221, - 0,0,0,114,101,1,0,0,114,107,1,0,0,114,7,0, - 0,0,114,106,1,0,0,114,8,0,0,0,218,9,112,97, + 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,70,6,0,0,115,6,0,0,0, 14,10,4,6,255,128,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,67,1,0,0,41,2,78,122,16,70, + 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,89,0,0,0,114,65,0,0,0,114,21,1,0,0, 114,7,0,0,0,114,7,0,0,0,114,8,0,0,0,114, - 68,1,0,0,88,6,0,0,114,61,1,0,0,122,19,70, + 69,1,0,0,88,6,0,0,114,62,1,0,0,122,19,70, 105,108,101,70,105,110,100,101,114,46,95,95,114,101,112,114, 95,95,114,69,0,0,0,41,15,114,150,0,0,0,114,149, 0,0,0,114,151,0,0,0,114,152,0,0,0,114,236,0, - 0,0,114,78,1,0,0,114,167,0,0,0,114,229,0,0, - 0,114,161,0,0,0,114,91,1,0,0,114,226,0,0,0, - 114,102,1,0,0,114,234,0,0,0,114,108,1,0,0,114, - 68,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,193,5,0, + 0,0,114,79,1,0,0,114,167,0,0,0,114,229,0,0, + 0,114,161,0,0,0,114,92,1,0,0,114,226,0,0,0, + 114,103,1,0,0,114,234,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,193,5,0, 0,115,26,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,255,128, - 114,94,1,0,0,99,4,0,0,0,0,0,0,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,0,0,0,115,144, 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, @@ -3984,10 +3647,10 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 0,124,3,124,0,100,5,60,0,87,0,100,0,83,0,4, 0,116,5,121,71,1,0,1,0,1,0,89,0,100,0,83, 0,119,0,41,6,78,218,10,95,95,108,111,97,100,101,114, - 95,95,218,8,95,95,115,112,101,99,95,95,114,95,1,0, + 95,95,218,8,95,95,115,112,101,99,95,95,114,96,1,0, 0,90,8,95,95,102,105,108,101,95,95,90,10,95,95,99, 97,99,104,101,100,95,95,41,6,218,3,103,101,116,114,164, - 0,0,0,114,41,1,0,0,114,34,1,0,0,114,213,0, + 0,0,0,114,42,1,0,0,114,35,1,0,0,114,213,0, 0,0,218,9,69,120,99,101,112,116,105,111,110,41,6,90, 2,110,115,114,141,0,0,0,90,8,112,97,116,104,110,97, 109,101,90,9,99,112,97,116,104,110,97,109,101,114,164,0, @@ -3996,7 +3659,7 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 109,111,100,117,108,101,94,6,0,0,115,38,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,14,1,12,1,6, - 2,2,254,255,128,114,113,1,0,0,99,0,0,0,0,0, + 2,2,254,255,128,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, @@ -4009,7 +3672,7 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 44,32,115,117,102,102,105,120,101,115,41,46,10,32,32,32, 32,78,41,7,114,30,1,0,0,114,187,0,0,0,218,18, 101,120,116,101,110,115,105,111,110,95,115,117,102,102,105,120, - 101,115,114,34,1,0,0,114,127,0,0,0,114,41,1,0, + 101,115,114,35,1,0,0,114,127,0,0,0,114,42,1,0, 0,114,113,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, @@ -4022,7 +3685,7 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 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,128, - 6,0,0,115,4,0,0,0,8,2,255,128,114,116,1,0, + 6,0,0,115,4,0,0,0,8,2,255,128,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, @@ -4031,15 +3694,15 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 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,116,1,0,0,114,208,0,0,0,114,15,0,0,0, - 114,83,1,0,0,114,191,0,0,0,114,94,1,0,0,114, - 108,1,0,0,218,9,109,101,116,97,95,112,97,116,104,114, - 61,0,0,0,114,77,1,0,0,41,2,114,115,1,0,0, + 10,114,117,1,0,0,114,208,0,0,0,114,15,0,0,0, + 114,84,1,0,0,114,191,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, + 61,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,133,6,0,0, 115,10,0,0,0,8,2,6,1,20,1,16,1,255,128,114, - 118,1,0,0,41,1,114,87,0,0,0,114,69,0,0,0, + 119,1,0,0,41,1,114,87,0,0,0,114,69,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,152,0,0,0,114,159,0,0,0, 114,187,0,0,0,114,91,0,0,0,114,15,0,0,0,114, @@ -4060,7 +3723,7 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 0,0,0,114,34,0,0,0,114,172,0,0,0,114,33,0, 0,0,114,39,0,0,0,114,8,1,0,0,114,116,0,0, 0,114,112,0,0,0,114,127,0,0,0,114,61,0,0,0, - 114,114,1,0,0,114,232,0,0,0,114,113,0,0,0,90, + 114,115,1,0,0,114,232,0,0,0,114,113,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, @@ -4071,10 +3734,10 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 0,114,195,0,0,0,114,200,0,0,0,218,6,111,98,106, 101,99,116,114,209,0,0,0,114,213,0,0,0,114,214,0, 0,0,114,235,0,0,0,114,249,0,0,0,114,11,1,0, - 0,114,34,1,0,0,114,41,1,0,0,114,30,1,0,0, - 114,47,1,0,0,114,73,1,0,0,114,77,1,0,0,114, - 94,1,0,0,114,113,1,0,0,114,208,0,0,0,114,116, - 1,0,0,114,118,1,0,0,114,7,0,0,0,114,7,0, + 0,114,35,1,0,0,114,42,1,0,0,114,30,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,208,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,182,0,0,0,4, 0,4,22,8,3,8,1,8,1,8,1,8,1,10,3,4, @@ -4089,6 +3752,7 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 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,255,128, +<<<<<<< HEAD ======= 10,32,32,32,32,32,32,32,32,78,41,7,114,15,0,0, 0,114,65,0,0,0,114,91,1,0,0,114,164,0,0,0, @@ -4783,4 +4447,6 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 5,255,128, >>>>>>> added exception groups >>>>>>> added exception groups +======= +>>>>>>> regenerated Python/importlib_external.h }; From 9ffd6e5e3abde571ca06e5913c306c8224814031 Mon Sep 17 00:00:00 2001 From: Irit Katriel Date: Fri, 16 Apr 2021 15:46:00 +0100 Subject: [PATCH 05/10] fix smelly symbol and whitespace --- Lib/test/test_exception_group.py | 10 +++++----- Objects/exceptions.c | 3 ++- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/Lib/test/test_exception_group.py b/Lib/test/test_exception_group.py index 1f51391a1b04a0..b038dc66743858 100644 --- a/Lib/test/test_exception_group.py +++ b/Lib/test/test_exception_group.py @@ -187,7 +187,7 @@ def test_basics_ExceptionGroup_fields(self): # check msg self.assertEqual(eg.message, 'simple EG') self.assertEqual(eg.args[0], 'simple EG') - + # check cause and context self.assertIsInstance(eg.exceptions[0], ValueError) self.assertIsInstance(eg.exceptions[0].__cause__, MemoryError) @@ -380,7 +380,7 @@ def check(exc, expected): check(eg.exceptions[0], ['nested_group']) check(eg.exceptions[1], ['nested_group', 'raiseVE']) check(eg.exceptions[0].exceptions[0], ['nested_group', 'raiseTE']) - + def test_iteration_full_tracebacks(self): eg = self.eg # check that iteration over leaves @@ -471,7 +471,7 @@ def level1(i): except Exception as e: excs.append(e) raise ExceptionGroup('msg1', excs) - + def level2(i): excs = [] for f, arg in [(level1, i), (level1, i+1), (raiseVE, i+2)]: @@ -513,7 +513,7 @@ def level3(i): ], ValueError(7)] - typeErrors_template = [[[TypeError(int)], [TypeError(int)]]] + typeErrors_template = [[[TypeError(int)], [TypeError(int)]]] self.assertMatchesTemplate(eg, ExceptionGroup, eg_template) @@ -568,7 +568,7 @@ def exc(ex): self.assertIsNone(match) self.assertMatchesTemplate( rest, BaseExceptionGroup, [ValueError(1), KeyboardInterrupt(2)]) - + # Match Everything match, rest = self._split_exception_group(beg, (ValueError, KeyboardInterrupt)) self.assertMatchesTemplate( diff --git a/Objects/exceptions.c b/Objects/exceptions.c index 178e0d5743f998..0832420669a8cf 100644 --- a/Objects/exceptions.c +++ b/Objects/exceptions.c @@ -1007,7 +1007,8 @@ ComplexExtendsException(PyExc_BaseException, BaseExceptionGroup, /* * ExceptionGroup extends BaseExceptionGroup, Exception */ -PyObject* create_exception_group_class() { +static PyObject* +create_exception_group_class() { PyObject *bases = PyTuple_Pack( 2, PyExc_BaseExceptionGroup, PyExc_Exception); if (bases == NULL) { From 5f0564530af558b7d186dfbee27f00a12d8b11a1 Mon Sep 17 00:00:00 2001 From: Irit Katriel Date: Mon, 19 Apr 2021 19:11:06 +0100 Subject: [PATCH 06/10] detect matcher type only once. Add option to match by instance(s)-equality which is needed for cycle detection and except*'s reraise logic --- Lib/test/test_exception_group.py | 10 ++++ Objects/exceptions.c | 91 ++++++++++++++++++++++++-------- 2 files changed, 80 insertions(+), 21 deletions(-) diff --git a/Lib/test/test_exception_group.py b/Lib/test/test_exception_group.py index b038dc66743858..0c11c52e642734 100644 --- a/Lib/test/test_exception_group.py +++ b/Lib/test/test_exception_group.py @@ -241,6 +241,16 @@ def test_basics_tbs_for_leaf(self): for e, tbs in leaf_generator(eg): self.assertSequenceEqual(tbs, tbs_for_leaf(e, eg)) + def test_basics_subgroup_split__bad_arg_type(self): + bad_args = ["bad arg", + OSError('instance not type'), + [OSError('instance not type')],] + for arg in bad_args: + with self.assertRaises(TypeError): + self.eg.subgroup(arg) + with self.assertRaises(TypeError): + self.eg.split(arg) + def test_basics_subgroup_by_type__passthrough(self): eg = self.eg self.assertIs(eg, eg.subgroup(BaseException)) diff --git a/Objects/exceptions.c b/Objects/exceptions.c index 0832420669a8cf..c40b04e0ddc3f9 100644 --- a/Objects/exceptions.c +++ b/Objects/exceptions.c @@ -826,15 +826,48 @@ exceptiongroup_subset(PyBaseExceptionGroupObject *orig, PyObject *excs) return NULL; } -static int exceptiongroup_split_check_match(PyObject *exc, PyObject *matcher) +enum _exceptiongroup_split_matcher_type { + /* Exception type or tuple of thereof */ + EXCEPTION_GROUP_MATCH_BY_TYPE = 0, + /* A PyFunction returning True for matching exceptions */ + EXCEPTION_GROUP_MATCH_BY_PREDICATE = 1, + /* An instance or container thereof, checked with equality */ + EXCEPTION_GROUP_MATCH_INSTANCES = 2 +}; + +struct _exceptiongroup_matcher { + enum _exceptiongroup_split_matcher_type type; + PyObject *value; +}; + +static int _set_matcher_type( + struct _exceptiongroup_matcher *matcher) +{ + /* the python API supports only BY_TYPE and BY_PREDICATE */ + if (PyExceptionClass_Check(matcher->value) || + PyTuple_CheckExact(matcher->value)) { + matcher->type = EXCEPTION_GROUP_MATCH_BY_TYPE; + return 0; + } + else if (PyFunction_Check(matcher->value)) { + matcher->type = EXCEPTION_GROUP_MATCH_BY_PREDICATE; + return 0; + } + PyErr_SetString( + PyExc_TypeError, + "expected a function, exception type or tuple of exception types"); + return -1; +} + +static int exceptiongroup_split_check_match( + PyObject *exc, const struct _exceptiongroup_matcher *matcher) { - if (PyExceptionClass_Check(matcher) || PyTuple_CheckExact(matcher)) { - /* case 1: matcher is an exception type or a tuple of them */ - return PyErr_GivenExceptionMatches(exc, matcher); + switch (matcher->type) { + case EXCEPTION_GROUP_MATCH_BY_TYPE: { + return PyErr_GivenExceptionMatches(exc, matcher->value); } - else if (PyFunction_Check(matcher)) { - /* case 2: function matcher */ - PyObject *exc_matches = PyObject_CallOneArg(matcher, exc); + case EXCEPTION_GROUP_MATCH_BY_PREDICATE: { + PyObject *exc_matches = PyObject_CallOneArg(matcher->value, exc); if (exc_matches == NULL) { return -1; } @@ -842,14 +875,20 @@ static int exceptiongroup_split_check_match(PyObject *exc, PyObject *matcher) Py_DECREF(exc_matches); return is_true; } - else { - PyErr_SetString(PyExc_RuntimeError,"Invalid matcher type"); - return -1; + case EXCEPTION_GROUP_MATCH_INSTANCES: { + if (PySequence_Check(matcher->value)) { + return PySequence_Contains(matcher->value, exc); + } + else { + return matcher->value == exc; + } } + } + return 0; } static PyObject * -exceptiongroup_split_recursive(PyObject *exc, PyObject *matcher, int complement) +exceptiongroup_split_recursive(PyObject *exc, const struct _exceptiongroup_matcher* matcher, int construct_rest) { int is_match = exceptiongroup_split_check_match(exc, matcher); if (is_match < 0) { @@ -863,7 +902,7 @@ exceptiongroup_split_recursive(PyObject *exc, PyObject *matcher, int complement) else if (!PyObject_TypeCheck(exc, (PyTypeObject *)PyExc_BaseExceptionGroup)) { /* Leaf exception and no match */ return PyTuple_Pack( - 2, Py_None, complement ? (PyObject*)exc : Py_None); + 2, Py_None, construct_rest ? (PyObject*)exc : Py_None); } else { /* Partial match */ @@ -882,7 +921,7 @@ exceptiongroup_split_recursive(PyObject *exc, PyObject *matcher, int complement) if (!match_list) { goto done; } - if (complement) { + if (construct_rest) { rest_list = PyList_New(0); if (!rest_list) { goto done; @@ -895,7 +934,7 @@ exceptiongroup_split_recursive(PyObject *exc, PyObject *matcher, int complement) goto done; } PyObject *rec = exceptiongroup_split_recursive( - e, matcher, complement); + e, matcher, construct_rest); Py_DECREF(e); if (!rec) { goto done; @@ -927,7 +966,7 @@ exceptiongroup_split_recursive(PyObject *exc, PyObject *matcher, int complement) goto done; } - if (complement) { + if (construct_rest) { rest_exc = exceptiongroup_subset(eg, rest_list); if (!rest_exc) { goto done; @@ -949,25 +988,35 @@ exceptiongroup_split_recursive(PyObject *exc, PyObject *matcher, int complement) static PyObject * BaseExceptionGroup_split(PyObject *self, PyObject *args, PyObject *kwds) { - PyObject *matcher = NULL; - if (!PyArg_UnpackTuple(args, "split", 1, 1, &matcher)) { + PyObject *matcher_value = NULL; + if (!PyArg_UnpackTuple(args, "split", 1, 1, &matcher_value)) { return NULL; } + struct _exceptiongroup_matcher matcher; + matcher.value = matcher_value; + if (_set_matcher_type(&matcher) == -1) { + return NULL; + } return exceptiongroup_split_recursive( - self, matcher, 1 /* with_complement */); + self, &matcher, 1 /* with_construct_rest */); } static PyObject * BaseExceptionGroup_subgroup(PyObject *self, PyObject *args, PyObject *kwds) { - PyObject *matcher = NULL; - if (!PyArg_UnpackTuple(args, "subgroup", 1, 1, &matcher)) { + PyObject *matcher_value = NULL; + if (!PyArg_UnpackTuple(args, "subgroup", 1, 1, &matcher_value)) { return NULL; } + struct _exceptiongroup_matcher matcher; + matcher.value = matcher_value; + if (_set_matcher_type(&matcher) == -1) { + return NULL; + } PyObject *ret = exceptiongroup_split_recursive( - self, matcher, 0 /* without complement */); + self, &matcher, 0 /* without construct_rest */); if (!ret) { return NULL; From 0a9e6b5472c830e0a20a3bcfe32378b8e24a8d47 Mon Sep 17 00:00:00 2001 From: Irit Katriel Date: Wed, 12 May 2021 00:18:41 +0100 Subject: [PATCH 07/10] regenerated Python/importlib_external.h --- Python/importlib_external.h | 1818 +++-------------------------------- 1 file changed, 108 insertions(+), 1710 deletions(-) diff --git a/Python/importlib_external.h b/Python/importlib_external.h index 3df879c401b3db..fbd6d42199f0f2 100644 --- a/Python/importlib_external.h +++ b/Python/importlib_external.h @@ -1643,11 +1643,10 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 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, -<<<<<<< HEAD 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, + 204,0,0,0,114,0,1,0,0,114,34,1,0,0,218,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,12,4,0,0,115,24,0,0,0,8, @@ -1672,155 +1671,6 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 0,114,7,1,0,0,78,41,3,114,76,0,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, -======= - 52,4,0,0,115,6,0,0,0,12,2,8,1,255,128,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,150,0,0,0,114,149,0,0,0,114,151,0,0,0, - 114,152,0,0,0,114,236,0,0,0,114,16,1,0,0,114, - 22,1,0,0,114,160,0,0,0,114,248,0,0,0,114,203, - 0,0,0,114,255,0,0,0,114,33,1,0,0,218,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,25,1,0,0,114,8,0,0,0, - 114,11,1,0,0,8,4,0,0,115,26,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,255,128,114,11,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,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,32,102,111,114,32,116,104,101, - 32,112,97,116,104,46,41,2,114,193,0,0,0,114,6,1, - 0,0,78,41,3,114,75,0,0,0,218,8,115,116,95,109, - 116,105,109,101,90,7,115,116,95,115,105,122,101,41,3,114, - 143,0,0,0,114,65,0,0,0,114,10,1,0,0,114,7, - 0,0,0,114,7,0,0,0,114,8,0,0,0,114,252,0, - 0,0,62,4,0,0,115,6,0,0,0,8,2,14,1,255, - 128,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,5, - 0,0,0,67,0,0,0,115,24,0,0,0,116,0,124,1, - 131,1,125,4,124,0,106,1,124,2,124,3,124,4,100,1, - 141,3,83,0,41,2,78,169,1,218,5,95,109,111,100,101, - 41,2,114,139,0,0,0,114,253,0,0,0,41,5,114,143, - 0,0,0,114,134,0,0,0,114,132,0,0,0,114,41,0, - 0,0,114,78,0,0,0,114,7,0,0,0,114,7,0,0, - 0,114,8,0,0,0,114,254,0,0,0,67,4,0,0,115, - 6,0,0,0,8,2,16,1,255,128,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,87,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,11,0,0,0,67,0,0,0,115, - 254,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,48,125,7,116,4, - 124,4,124,7,131,2,125,4,122,7,116,5,160,6,124,4, - 161,1,1,0,87,0,113,35,4,0,116,7,121,58,1,0, - 1,0,1,0,89,0,113,35,4,0,116,8,121,126,1,0, - 125,8,1,0,122,15,116,9,160,10,100,1,124,4,124,8, - 161,3,1,0,87,0,89,0,100,2,125,8,126,8,1,0, - 100,2,83,0,100,2,125,8,126,8,119,1,122,15,116,11, - 124,1,124,2,124,3,131,3,1,0,116,9,160,10,100,3, - 124,1,161,2,1,0,87,0,100,2,83,0,4,0,116,8, - 121,125,1,0,125,8,1,0,122,14,116,9,160,10,100,1, - 124,1,124,8,161,3,1,0,87,0,89,0,100,2,125,8, - 126,8,100,2,83,0,100,2,125,8,126,8,119,1,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, - 74,0,0,0,114,83,0,0,0,114,61,0,0,0,218,8, - 114,101,118,101,114,115,101,100,114,67,0,0,0,114,18,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,76,0,0,0,114, - 159,0,0,0,114,173,0,0,0,114,95,0,0,0,41,9, - 114,143,0,0,0,114,65,0,0,0,114,41,0,0,0,114, - 38,1,0,0,218,6,112,97,114,101,110,116,114,120,0,0, - 0,114,63,0,0,0,114,68,0,0,0,114,0,1,0,0, - 114,7,0,0,0,114,7,0,0,0,114,8,0,0,0,114, - 253,0,0,0,72,4,0,0,115,58,0,0,0,12,2,4, - 1,12,2,12,1,10,1,12,254,12,4,10,1,2,1,14, - 1,12,1,4,2,14,1,6,3,4,1,4,255,16,2,8, - 128,2,1,12,1,18,1,14,1,8,2,2,1,18,255,8, - 128,2,254,2,247,255,128,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,150,0,0,0,114,149,0,0,0,114, - 151,0,0,0,114,152,0,0,0,114,252,0,0,0,114,254, - 0,0,0,114,253,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,58,4,0,0,115,12,0,0,0,8,0,4,2,8,2, - 8,5,18,5,255,128,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,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,124,3, - 124,1,124,4,131,3,1,0,116,3,116,4,124,3,131,1, - 100,2,100,0,133,2,25,0,124,1,124,2,100,3,141,3, - 83,0,41,4,78,114,183,0,0,0,114,169,0,0,0,41, - 2,114,141,0,0,0,114,132,0,0,0,41,5,114,203,0, - 0,0,114,255,0,0,0,114,176,0,0,0,114,189,0,0, - 0,114,7,1,0,0,41,5,114,143,0,0,0,114,163,0, - 0,0,114,65,0,0,0,114,41,0,0,0,114,175,0,0, - 0,114,7,0,0,0,114,7,0,0,0,114,8,0,0,0, - 114,241,0,0,0,107,4,0,0,115,24,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,255,128,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,23, - 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,247,0,0,0,114,7,0,0,0,114,7, - 0,0,0,114,8,0,0,0,114,1,1,0,0,123,4,0, - 0,114,24,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,150,0,0,0,114, - 149,0,0,0,114,151,0,0,0,114,152,0,0,0,114,241, - 0,0,0,114,1,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,103,4,0,0,115,10,0,0,0,8,0,4,2,8,2, - 12,16,255,128,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,30,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,69,0,0,0,114,183,0,0, - 0,41,3,114,143,0,0,0,114,141,0,0,0,114,65,0, ->>>>>>> added exception groups 0,0,114,7,0,0,0,114,7,0,0,0,114,8,0,0, 0,114,253,0,0,0,66,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, @@ -1836,7 +1686,7 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 0,0,71,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, + 116,101,99,111,100,101,114,88,0,0,0,114,38,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, @@ -1865,7 +1715,7 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 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, + 114,42,0,0,0,114,39,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,76,4,0,0,115,60, @@ -1882,9 +1732,9 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 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,62,4,0,0, + 0,0,114,8,0,0,0,114,36,1,0,0,62,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, + 10,0,0,0,114,36,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, @@ -1922,8 +1772,8 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 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,107,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,114,43,1,0,0,107,4,0,0,115,8,0,0,0, + 8,0,4,2,8,2,12,16,114,10,0,0,0,114,43,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, @@ -1963,7 +1813,6 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 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, -<<<<<<< HEAD 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, @@ -1978,46 +1827,6 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 0,0,114,7,0,0,0,114,8,0,0,0,114,240,0,0, 0,151,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, -======= - 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,159,0,0,0,114,242,0, - 0,0,114,187,0,0,0,90,12,101,120,101,99,95,100,121, - 110,97,109,105,99,114,173,0,0,0,114,141,0,0,0,114, - 65,0,0,0,169,2,114,143,0,0,0,114,244,0,0,0, - 114,7,0,0,0,114,7,0,0,0,114,8,0,0,0,114, - 245,0,0,0,155,4,0,0,115,10,0,0,0,14,2,6, - 1,8,1,8,255,255,128,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, - 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, - 116,117,114,110,32,84,114,117,101,32,105,102,32,116,104,101, - 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,236,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,164,4,0,0,115,8,0,0,0,6, - 128,2,1,20,255,255,128,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,74,0, - 0,0,114,65,0,0,0,218,3,97,110,121,114,232,0,0, - 0,114,247,0,0,0,114,7,0,0,0,114,46,1,0,0, - 114,8,0,0,0,114,206,0,0,0,161,4,0,0,115,10, - 0,0,0,14,2,12,1,2,1,8,255,255,128,122,30,69, ->>>>>>> regenerated Python/importlib_external.h 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, @@ -2058,7 +1867,7 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 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, + 114,248,0,0,0,114,7,0,0,0,114,47,1,0,0,114, 8,0,0,0,114,207,0,0,0,165,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, @@ -2073,7 +1882,6 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 114,7,0,0,0,114,8,0,0,0,114,242,0,0,0,171, 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, -<<<<<<< HEAD 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, @@ -2154,8 +1962,8 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 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, + 112,97,116,104,95,95,78,41,2,114,50,1,0,0,114,105, + 0,0,0,41,4,114,144,0,0,0,114,42,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, @@ -2167,12 +1975,12 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 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,0,41,4,114, - 56,1,0,0,114,156,0,0,0,114,16,0,0,0,218,7, + 57,1,0,0,114,156,0,0,0,114,16,0,0,0,218,7, 109,111,100,117,108,101,115,41,3,114,144,0,0,0,90,18, 112,97,114,101,110,116,95,109,111,100,117,108,101,95,110,97, 109,101,90,14,112,97,116,104,95,97,116,116,114,95,110,97, 109,101,114,7,0,0,0,114,7,0,0,0,114,8,0,0, - 0,114,51,1,0,0,208,4,0,0,115,4,0,0,0,12, + 0,114,52,1,0,0,208,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, @@ -2183,121 +1991,19 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 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, + 0,0,0,114,52,1,0,0,114,53,1,0,0,114,54,1, + 0,0,114,50,1,0,0,114,165,0,0,0,114,203,0,0, + 0,114,51,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,212,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,114,46,103,101,116,95,102,105,108,101,110,97,109,101,78, - 41,14,114,150,0,0,0,114,149,0,0,0,114,151,0,0, - 0,114,152,0,0,0,114,236,0,0,0,114,16,1,0,0, - 114,22,1,0,0,114,239,0,0,0,114,245,0,0,0,114, - 206,0,0,0,114,241,0,0,0,114,1,1,0,0,114,160, - 0,0,0,114,203,0,0,0,114,7,0,0,0,114,7,0, - 0,0,114,7,0,0,0,114,8,0,0,0,114,30,1,0, - 0,128,4,0,0,115,26,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,255,128,114,30,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,69, - 0,0,0,41,6,218,5,95,110,97,109,101,218,5,95,112, - 97,116,104,114,136,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,143,0, - 0,0,114,141,0,0,0,114,65,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,236,0,0,0,188,4,0, - 0,115,10,0,0,0,6,1,6,1,14,1,10,1,255,128, - 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, - 97,0,0,0,114,10,0,0,0,41,2,114,15,0,0,0, - 114,65,0,0,0,90,8,95,95,112,97,116,104,95,95,78, - 41,2,114,49,1,0,0,114,104,0,0,0,41,4,114,143, - 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,194,4,0,0,115,10,0, - 0,0,18,2,8,1,4,2,8,3,255,128,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,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,69, - 0,0,0,41,4,114,56,1,0,0,114,155,0,0,0,114, - 15,0,0,0,218,7,109,111,100,117,108,101,115,41,3,114, - 143,0,0,0,90,18,112,97,114,101,110,116,95,109,111,100, - 117,108,101,95,110,97,109,101,90,14,112,97,116,104,95,97, - 116,116,114,95,110,97,109,101,114,7,0,0,0,114,7,0, - 0,0,114,8,0,0,0,114,51,1,0,0,204,4,0,0, - 115,6,0,0,0,12,1,16,1,255,128,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,69,0,0,0,41, - 8,114,136,0,0,0,114,51,1,0,0,114,52,1,0,0, - 114,53,1,0,0,114,49,1,0,0,114,164,0,0,0,114, - 202,0,0,0,114,50,1,0,0,41,3,114,143,0,0,0, - 90,11,112,97,114,101,110,116,95,112,97,116,104,114,210,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,208, - 4,0,0,115,18,0,0,0,12,2,10,1,14,1,18,3, - 6,1,8,1,6,1,6,1,255,128,122,27,95,78,97,109, ->>>>>>> regenerated Python/importlib_external.h 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, -<<<<<<< HEAD - 0,114,70,0,0,0,41,2,218,4,105,116,101,114,114,58, + 0,114,70,0,0,0,41,2,218,4,105,116,101,114,114,59, 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,225,4,0,0,243,2,0,0,0,12,1,114,10,0,0, @@ -2305,128 +2011,64 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 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, + 25,0,83,0,114,70,0,0,0,169,1,114,59,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,228,4,0,0,114,62, + 95,103,101,116,105,116,101,109,95,95,228,4,0,0,114,63, 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,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, + 114,70,0,0,0,41,1,114,51,1,0,0,41,3,114,144, + 0,0,0,114,65,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,231,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, + 0,0,1,0,0,0,3,0,0,0,67,0,0,0,114,60, 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, + 59,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,234,4,0,0,114,62,1,0,0,114,10,0,0,0,122, -======= - 0,114,69,0,0,0,41,2,218,4,105,116,101,114,114,58, - 1,0,0,114,21,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,221,4,0,0,243,4,0,0,0,12,1,255,128,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,69,0,0,0,169,1,114,58,1,0,0,41,2,114, - 143,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,224,4,0,0,114,62,1,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,115,14,0,0,0,124,2,124,0,106,0, - 124,1,60,0,100,0,83,0,114,69,0,0,0,41,1,114, - 50,1,0,0,41,3,114,143,0,0,0,114,64,1,0,0, - 114,65,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,227,4,0,0,115,4,0,0,0,14,1,255,128,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,69,0,0,0,41,2,114, - 4,0,0,0,114,58,1,0,0,114,21,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,230,4,0,0,114,62,1,0,0,122, ->>>>>>> regenerated Python/importlib_external.h + 95,234,4,0,0,114,63,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, -<<<<<<< HEAD 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, + 0,114,51,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,237,4,0,0,114,62,1,0,0,114,10,0, + 112,114,95,95,237,4,0,0,114,63,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, + 0,118,0,83,0,114,70,0,0,0,114,64,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,240,4,0,0,114,62,1, + 111,110,116,97,105,110,115,95,95,240,4,0,0,114,63,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,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, + 83,0,114,70,0,0,0,41,2,114,51,1,0,0,114,62, + 0,0,0,114,71,1,0,0,114,7,0,0,0,114,7,0, 0,0,114,8,0,0,0,114,62,0,0,0,243,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,0,0,0,114, - 56,1,0,0,114,51,1,0,0,114,58,1,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, + 57,1,0,0,114,52,1,0,0,114,59,1,0,0,114,62, + 1,0,0,114,66,1,0,0,114,67,1,0,0,114,68,1, + 0,0,114,70,1,0,0,114,73,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,185,4,0,0,115,26, + 114,8,0,0,0,114,49,1,0,0,185,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, -======= - 80,97,116,104,40,123,33,114,125,41,41,2,114,89,0,0, - 0,114,50,1,0,0,114,21,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,233,4,0,0,114,62,1,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,69,0,0,0,114,63,1,0,0,169,2,114,143,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,236,4,0,0,114,62,1,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,115,16,0,0,0,124,0,106,0,160,1,124,1, - 161,1,1,0,100,0,83,0,114,69,0,0,0,41,2,114, - 50,1,0,0,114,61,0,0,0,114,70,1,0,0,114,7, - 0,0,0,114,7,0,0,0,114,8,0,0,0,114,61,0, - 0,0,239,4,0,0,243,4,0,0,0,16,1,255,128,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,150,0,0,0,114,149, - 0,0,0,114,151,0,0,0,114,152,0,0,0,114,236,0, - 0,0,114,56,1,0,0,114,51,1,0,0,114,58,1,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, - 61,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,181,4,0, - 0,115,28,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, - 255,128,114,48,1,0,0,99,0,0,0,0,0,0,0,0, ->>>>>>> regenerated Python/importlib_external.h + 0,0,114,49,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, @@ -2438,10 +2080,8 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 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, -<<<<<<< HEAD -<<<<<<< HEAD - 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,70,0,0,0,41,2,114,49,1,0,0,114,51,1, + 0,0,114,55,1,0,0,114,7,0,0,0,114,7,0,0, 0,114,8,0,0,0,114,237,0,0,0,249,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, @@ -2473,69 +2113,7 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 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,0,0,114,24, 0,0,0,41,2,78,84,114,7,0,0,0,114,248,0,0, -======= - 0,114,69,0,0,0,41,2,114,47,1,0,0,114,49,1, - 0,0,114,53,1,0,0,114,7,0,0,0,114,7,0,0, -======= - 0,114,69,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, ->>>>>>> regenerated Python/importlib_external.h - 0,114,8,0,0,0,114,236,0,0,0,245,4,0,0,115, - 4,0,0,0,18,1,255,128,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,99,0,0,0,114,100,0,0,0,114,101,0,0, - 0,114,89,0,0,0,114,150,0,0,0,41,1,114,244,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,248,4, - 0,0,115,10,0,0,0,6,7,2,1,4,255,12,2,255, - 128,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,2,0,0,0, - 1,0,0,0,67,0,0,0,114,23,0,0,0,41,2,78, - 84,114,7,0,0,0,114,247,0,0,0,114,7,0,0,0, - 114,7,0,0,0,114,8,0,0,0,114,206,0,0,0,3, - 5,0,0,243,4,0,0,0,4,1,255,128,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,23,0,0,0,41,2,78,114,10,0,0,0,114, - 7,0,0,0,114,247,0,0,0,114,7,0,0,0,114,7, - 0,0,0,114,8,0,0,0,114,1,1,0,0,6,5,0, - 0,114,76,1,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,10,0,0,0,122,8,60,115,116,114,105, - 110,103,62,114,243,0,0,0,84,41,1,114,3,1,0,0, - 41,1,114,4,1,0,0,114,247,0,0,0,114,7,0,0, - 0,114,7,0,0,0,114,8,0,0,0,114,241,0,0,0, - 9,5,0,0,114,73,1,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,23,0, - 0,0,114,237,0,0,0,114,7,0,0,0,114,238,0,0, ->>>>>>> added exception groups 0,114,7,0,0,0,114,7,0,0,0,114,8,0,0,0, -<<<<<<< HEAD 114,207,0,0,0,7,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, @@ -2543,7 +2121,7 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 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,10,5,0,0,114,76,1,0,0,114, + 0,114,2,1,0,0,10,5,0,0,114,77,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, @@ -2553,7 +2131,7 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 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,13,5, - 0,0,114,73,1,0,0,114,10,0,0,0,122,25,95,78, + 0,0,114,74,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, @@ -2565,9 +2143,9 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 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,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,0,114,44,1,0,0,114,7,0,0,0,114,7,0,0, 0,114,8,0,0,0,114,246,0,0,0,19,5,0,0,114, - 76,1,0,0,114,10,0,0,0,122,28,95,78,97,109,101, + 77,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, @@ -2582,68 +2160,33 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 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, + 114,160,0,0,0,114,174,0,0,0,114,51,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,22,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, -======= - 114,239,0,0,0,12,5,0,0,114,240,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,0,0,0,115,4,0,0,0,100,0,83,0, - 114,69,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,245, - 0,0,0,15,5,0,0,114,76,1,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,159,0,0,0,114,173,0,0,0,114,50,1, - 0,0,114,246,0,0,0,114,247,0,0,0,114,7,0,0, - 0,114,7,0,0,0,114,8,0,0,0,114,248,0,0,0, - 18,5,0,0,115,10,0,0,0,6,7,4,1,4,255,12, - 3,255,128,122,28,95,78,97,109,101,115,112,97,99,101,76, ->>>>>>> regenerated Python/importlib_external.h 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, -<<<<<<< HEAD - 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, -======= - 41,3,114,32,1,0,0,114,77,1,0,0,114,50,1,0, - 0,41,3,114,143,0,0,0,114,244,0,0,0,114,77,1, ->>>>>>> regenerated Python/importlib_external.h + 41,3,114,33,1,0,0,114,78,1,0,0,114,51,1,0, + 0,41,3,114,144,0,0,0,114,245,0,0,0,114,78,1, 0,0,114,7,0,0,0,114,7,0,0,0,114,8,0,0, -<<<<<<< HEAD 0,114,34,1,0,0,34,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, + 114,237,0,0,0,114,234,0,0,0,114,76,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,248,4,0,0,115, + 0,114,8,0,0,0,114,75,1,0,0,248,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, + 75,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, @@ -2675,9 +2218,9 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 116,101,95,99,97,99,104,101,115,41,6,218,4,108,105,115, 116,114,16,0,0,0,218,19,112,97,116,104,95,105,109,112, 111,114,116,101,114,95,99,97,99,104,101,218,5,105,116,101, - 109,115,114,154,0,0,0,114,79,1,0,0,41,2,114,142, + 109,115,114,154,0,0,0,114,80,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,45, + 114,7,0,0,0,114,8,0,0,0,114,80,1,0,0,45, 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, @@ -2727,9 +2270,9 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 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, + 82,1,0,0,218,8,75,101,121,69,114,114,111,114,114,86, 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, + 84,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,68,5,0,0,115,36,0, 0,0,8,8,2,1,10,1,2,128,12,1,6,3,2,128, @@ -2761,7 +2304,7 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 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, + 114,84,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,90,5,0,0,115,26, @@ -2788,13 +2331,13 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 101,32,110,97,109,101,46,78,114,227,0,0,0,122,19,115, 112,101,99,32,109,105,115,115,105,110,103,32,108,111,97,100, 101,114,41,13,114,186,0,0,0,114,110,0,0,0,218,5, - 98,121,116,101,115,114,88,1,0,0,114,154,0,0,0,114, - 227,0,0,0,114,89,1,0,0,114,165,0,0,0,114,203, + 98,121,116,101,115,114,89,1,0,0,114,154,0,0,0,114, + 227,0,0,0,114,90,1,0,0,114,165,0,0,0,114,203, 0,0,0,114,143,0,0,0,114,192,0,0,0,114,160,0, 0,0,114,208,0,0,0,41,9,114,222,0,0,0,114,164, 0,0,0,114,66,0,0,0,114,226,0,0,0,218,14,110, 97,109,101,115,112,97,99,101,95,112,97,116,104,90,5,101, - 110,116,114,121,114,83,1,0,0,114,211,0,0,0,114,166, + 110,116,114,121,114,84,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,111,5,0, 0,115,42,0,0,0,4,5,8,1,14,1,2,1,10,1, @@ -2819,10 +2362,10 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 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,66,0,0,0,114,93,1,0,0,114,165,0,0,0,114, + 203,0,0,0,114,206,0,0,0,114,49,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, + 226,0,0,0,114,211,0,0,0,114,92,1,0,0,114,7, 0,0,0,114,7,0,0,0,114,8,0,0,0,114,227,0, 0,0,143,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, @@ -2854,218 +2397,7 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 0,0,114,8,0,0,0,114,230,0,0,0,167,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, -======= - 0,114,33,1,0,0,30,5,0,0,115,6,0,0,0,12, - 1,10,1,255,128,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,150, - 0,0,0,114,149,0,0,0,114,151,0,0,0,114,236,0, - 0,0,114,233,0,0,0,114,75,1,0,0,114,206,0,0, - 0,114,1,1,0,0,114,241,0,0,0,114,239,0,0,0, - 114,245,0,0,0,114,248,0,0,0,114,33,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,244,4,0,0,115,24,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,255,128,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,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,116,4,124,1,100,2,131,2,114,29, - 124,1,160,5,161,0,1,0,113,7,100,1,83,0,41,3, - 122,125,67,97,108,108,32,116,104,101,32,105,110,118,97,108, - 105,100,97,116,101,95,99,97,99,104,101,115,40,41,32,109, - 101,116,104,111,100,32,111,110,32,97,108,108,32,112,97,116, - 104,32,101,110,116,114,121,32,102,105,110,100,101,114,115,10, - 32,32,32,32,32,32,32,32,115,116,111,114,101,100,32,105, - 110,32,115,121,115,46,112,97,116,104,95,105,109,112,111,114, - 116,101,114,95,99,97,99,104,101,115,32,40,119,104,101,114, - 101,32,105,109,112,108,101,109,101,110,116,101,100,41,46,78, - 218,17,105,110,118,97,108,105,100,97,116,101,95,99,97,99, - 104,101,115,41,6,218,4,108,105,115,116,114,15,0,0,0, - 218,19,112,97,116,104,95,105,109,112,111,114,116,101,114,95, - 99,97,99,104,101,218,5,105,116,101,109,115,114,153,0,0, - 0,114,79,1,0,0,41,2,114,141,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,41,5,0,0,115,16,0, - 0,0,22,4,8,1,10,1,10,1,8,1,2,128,4,252, - 255,128,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,76,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,17,125,1,122,7,124,1,124,0,131,1,87,0,2,0, - 1,0,83,0,4,0,116,5,121,37,1,0,1,0,1,0, - 89,0,113,17,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,15,0,0,0,218,10,112, - 97,116,104,95,104,111,111,107,115,114,99,0,0,0,114,100, - 0,0,0,114,162,0,0,0,114,142,0,0,0,41,2,114, - 65,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,51,5,0,0,115,20,0,0,0,16, - 3,12,1,10,1,2,1,14,1,12,1,4,1,4,2,2, - 253,255,128,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,100,0,0,0,124,1,100,1,107,2,114, - 20,122,6,116,0,160,1,161,0,125,1,87,0,110,9,4, - 0,116,2,121,49,1,0,1,0,1,0,89,0,100,2,83, - 0,122,8,116,3,106,4,124,1,25,0,125,2,87,0,124, - 2,83,0,4,0,116,5,121,48,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,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,10,0,0,0,78,41,7,114,18,0,0,0, - 114,82,0,0,0,218,17,70,105,108,101,78,111,116,70,111, - 117,110,100,69,114,114,111,114,114,15,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,221,0,0,0,114,65,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,64,5,0,0,115,30,0,0,0, - 8,8,2,1,12,1,12,1,6,3,2,1,12,1,4,4, - 12,253,10,1,12,1,4,1,2,253,2,250,255,128,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,161,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, - 153,0,0,0,114,159,0,0,0,90,12,95,111,98,106,101, - 99,116,95,110,97,109,101,114,99,0,0,0,114,100,0,0, - 0,114,162,0,0,0,114,161,0,0,0,114,229,0,0,0, - 114,224,0,0,0,114,207,0,0,0,114,202,0,0,0,41, - 7,114,221,0,0,0,114,163,0,0,0,114,83,1,0,0, - 114,166,0,0,0,114,164,0,0,0,114,165,0,0,0,114, - 210,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,86,5,0,0,115,28,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,255,128,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,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,116,4,124,6,100,2,131,2,114,35,124,6, - 160,5,124,1,124,3,161,2,125,7,110,6,124,0,160,6, - 124,1,124,6,161,2,125,7,124,7,100,1,117,0,114,46, - 113,4,124,7,106,7,100,1,117,1,114,55,124,7,2,0, - 1,0,83,0,124,7,106,8,125,8,124,8,100,1,117,0, - 114,66,116,9,100,3,131,1,130,1,124,4,160,10,124,8, - 161,1,1,0,113,4,116,11,160,12,124,1,100,1,161,2, - 125,7,124,4,124,7,95,8,124,7,83,0,41,4,122,63, - 70,105,110,100,32,116,104,101,32,108,111,97,100,101,114,32, - 111,114,32,110,97,109,101,115,112,97,99,101,95,112,97,116, - 104,32,102,111,114,32,116,104,105,115,32,109,111,100,117,108, - 101,47,112,97,99,107,97,103,101,32,110,97,109,101,46,78, - 114,226,0,0,0,122,19,115,112,101,99,32,109,105,115,115, - 105,110,103,32,108,111,97,100,101,114,41,13,114,185,0,0, - 0,114,109,0,0,0,218,5,98,121,116,101,115,114,88,1, - 0,0,114,153,0,0,0,114,226,0,0,0,114,89,1,0, - 0,114,164,0,0,0,114,202,0,0,0,114,142,0,0,0, - 114,191,0,0,0,114,159,0,0,0,114,207,0,0,0,41, - 9,114,221,0,0,0,114,163,0,0,0,114,65,0,0,0, - 114,225,0,0,0,218,14,110,97,109,101,115,112,97,99,101, - 95,112,97,116,104,90,5,101,110,116,114,121,114,83,1,0, - 0,114,210,0,0,0,114,165,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,107,5,0,0,115,44,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,255,128,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,15,0,0,0,114,65,0,0,0,114,92,1,0,0,114, - 164,0,0,0,114,202,0,0,0,114,205,0,0,0,114,48, - 1,0,0,41,6,114,221,0,0,0,114,163,0,0,0,114, - 65,0,0,0,114,225,0,0,0,114,210,0,0,0,114,91, - 1,0,0,114,7,0,0,0,114,7,0,0,0,114,8,0, - 0,0,114,226,0,0,0,139,5,0,0,115,28,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,255,128,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, ->>>>>>> added exception groups 110,100,101,114,46,102,105,110,100,95,109,111,100,117,108,101, -<<<<<<< HEAD 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, @@ -3091,24 +2423,24 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 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, + 97,116,97,114,94,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,0,0,114,146,0,0,0,114,94,1,0,0,114,7,0, + 0,0,114,7,0,0,0,114,8,0,0,0,114,95,1,0, 0,183,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,41,5,0, + 0,0,114,234,0,0,0,114,80,1,0,0,114,86,1,0, + 0,114,235,0,0,0,114,89,1,0,0,114,90,1,0,0, + 114,93,1,0,0,114,227,0,0,0,114,230,0,0,0,114, + 95,1,0,0,114,7,0,0,0,114,7,0,0,0,114,7, + 0,0,0,114,8,0,0,0,114,79,1,0,0,41,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, + 79,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,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,90,5,101,6, @@ -3150,7 +2482,7 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 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, + 7,0,0,0,114,45,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,212, 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, @@ -3165,7 +2497,7 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 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, + 0,114,97,1,0,0,114,8,0,0,0,114,237,0,0,0, 206,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, @@ -3174,9 +2506,9 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 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, + 101,46,114,131,0,0,0,78,41,1,114,99,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,222,5,0,0,114,82,0,0, + 0,0,0,114,80,1,0,0,222,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, @@ -3195,155 +2527,7 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 111,114,116,105,111,110,115,41,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, -======= - 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,227,0,0,0,114,228,0,0,0,114,7,0,0,0,114, - 7,0,0,0,114,8,0,0,0,114,229,0,0,0,163,5, - 0,0,115,16,0,0,0,6,8,2,2,4,254,12,3,8, - 1,4,1,6,1,255,128,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,144,0, - 0,0,114,145,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, - 179,5,0,0,115,6,0,0,0,12,10,16,1,255,128,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,69, - 0,0,0,114,230,0,0,0,41,14,114,150,0,0,0,114, - 149,0,0,0,114,151,0,0,0,114,152,0,0,0,114,233, - 0,0,0,114,79,1,0,0,114,85,1,0,0,114,234,0, - 0,0,114,88,1,0,0,114,89,1,0,0,114,92,1,0, - 0,114,226,0,0,0,114,229,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,37,5,0,0,115,38,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,255,128,114,78,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,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,90,5,101,6,90,7,100,6,100,7,132, - 0,90,8,100,8,100,9,132,0,90,9,100,19,100,11,100, - 12,132,1,90,10,100,13,100,14,132,0,90,11,101,12,100, - 15,100,16,132,0,131,1,90,13,100,17,100,18,132,0,90, - 14,100,10,83,0,41,20,218,10,70,105,108,101,70,105,110, - 100,101,114,122,172,70,105,108,101,45,98,97,115,101,100,32, - 102,105,110,100,101,114,46,10,10,32,32,32,32,73,110,116, - 101,114,97,99,116,105,111,110,115,32,119,105,116,104,32,116, - 104,101,32,102,105,108,101,32,115,121,115,116,101,109,32,97, - 114,101,32,99,97,99,104,101,100,32,102,111,114,32,112,101, - 114,102,111,114,109,97,110,99,101,44,32,98,101,105,110,103, - 10,32,32,32,32,114,101,102,114,101,115,104,101,100,32,119, - 104,101,110,32,116,104,101,32,100,105,114,101,99,116,111,114, - 121,32,116,104,101,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,69,0,0,0,114,7,0,0,0,114,44,1, - 0,0,169,1,114,164,0,0,0,114,7,0,0,0,114,8, - 0,0,0,114,9,0,0,0,208,5,0,0,115,6,0,0, - 0,6,128,18,0,255,128,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, - 97,0,0,0,114,130,0,0,0,78,41,11,114,191,0,0, - 0,218,8,95,108,111,97,100,101,114,115,114,65,0,0,0, - 114,86,0,0,0,114,67,0,0,0,114,18,0,0,0,114, - 82,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,143,0,0,0,114, - 65,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,212,0, - 0,0,114,7,0,0,0,114,96,1,0,0,114,8,0,0, - 0,114,236,0,0,0,202,5,0,0,115,22,0,0,0,4, - 4,12,1,26,1,6,1,10,2,10,1,18,1,6,1,8, - 1,12,1,255,128,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,130,0,0,0,78,41,1,114,98,1, - 0,0,114,21,1,0,0,114,7,0,0,0,114,7,0,0, - 0,114,8,0,0,0,114,79,1,0,0,218,5,0,0,114, - 81,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,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,124,2,106,5,112,25, - 103,0,102,2,83,0,41,3,122,197,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,44,32,111,114,32,116,104,101,32, - 110,97,109,101,115,112,97,99,101,10,32,32,32,32,32,32, - 32,32,112,97,99,107,97,103,101,32,112,111,114,116,105,111, - 110,115,46,32,82,101,116,117,114,110,115,32,40,108,111,97, - 100,101,114,44,32,108,105,115,116,45,111,102,45,112,111,114, - 116,105,111,110,115,41,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,70,105,108,101,70,105,110,100,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, ->>>>>>> regenerated Python/importlib_external.h 115,101,32,102,105,110,100,95,115,112,101,99,40,41,32,105, -<<<<<<< HEAD 110,115,116,101,97,100,46,10,10,32,32,32,32,32,32,32, 32,122,101,70,105,108,101,70,105,110,100,101,114,46,102,105, 110,100,95,108,111,97,100,101,114,40,41,32,105,115,32,100, @@ -3366,7 +2550,7 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 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, + 7,0,0,0,114,7,0,0,0,114,8,0,0,0,114,93, 1,0,0,243,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, @@ -3409,18 +2593,18 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 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,0,114,37,1,0,0,114,77,0,0,0,114,99,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, + 22,0,0,0,114,102,1,0,0,114,132,0,0,0,114,101, + 1,0,0,114,68,0,0,0,114,98,1,0,0,114,81,0, + 0,0,114,93,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, + 101,95,112,97,116,104,114,46,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, @@ -3447,585 +2631,11 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 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, -======= - 110,115,116,101,97,100,78,41,6,114,99,0,0,0,114,100, - 0,0,0,114,101,0,0,0,114,226,0,0,0,114,164,0, - 0,0,114,202,0,0,0,41,3,114,143,0,0,0,114,163, - 0,0,0,114,210,0,0,0,114,7,0,0,0,114,7,0, - 0,0,114,8,0,0,0,114,161,0,0,0,224,5,0,0, - 115,16,0,0,0,6,7,2,2,4,254,10,3,8,1,8, - 1,16,1,255,128,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,201,0,0,0,41,1,114, - 213,0,0,0,41,7,114,143,0,0,0,114,211,0,0,0, - 114,163,0,0,0,114,65,0,0,0,90,4,115,109,115,108, - 114,225,0,0,0,114,164,0,0,0,114,7,0,0,0,114, - 7,0,0,0,114,8,0,0,0,114,92,1,0,0,239,5, - 0,0,115,10,0,0,0,10,1,8,1,2,1,6,255,255, - 128,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,120,1,0,0,100,1,125,3,124,1,160,0,100,2, - 161,1,100,3,25,0,125,4,122,12,116,1,124,0,106,2, - 112,17,116,3,160,4,161,0,131,1,106,5,125,5,87,0, - 110,9,4,0,116,6,121,187,1,0,1,0,1,0,100,4, - 125,5,89,0,124,5,124,0,106,7,107,3,114,43,124,0, - 160,8,161,0,1,0,124,5,124,0,95,7,116,9,131,0, - 114,54,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,106,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,101,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,72,116,17,124,8,131,1,125,3,124,0,106,14,68,0, - 93,54,92,2,125,9,125,10,122,10,116,13,124,0,106,2, - 124,4,124,9,23,0,131,2,125,12,87,0,110,10,4,0, - 116,18,121,186,1,0,1,0,1,0,89,0,1,0,100,6, - 83,0,116,19,106,20,100,7,124,12,100,3,100,8,141,3, - 1,0,124,7,124,9,23,0,124,6,118,0,114,163,116,15, - 124,12,131,1,114,163,124,0,160,16,124,10,124,1,124,12, - 100,6,124,2,161,5,2,0,1,0,83,0,113,109,124,3, - 114,184,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,97,0,0,0,114,44,0,0,0,114,130,0,0, - 0,114,236,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,104,0,0, - 0,114,75,0,0,0,114,65,0,0,0,114,18,0,0,0, - 114,82,0,0,0,114,36,1,0,0,114,76,0,0,0,114, - 98,1,0,0,218,11,95,102,105,108,108,95,99,97,99,104, - 101,114,21,0,0,0,114,101,1,0,0,114,131,0,0,0, - 114,100,1,0,0,114,67,0,0,0,114,97,1,0,0,114, - 80,0,0,0,114,92,1,0,0,114,83,0,0,0,114,111, - 0,0,0,114,159,0,0,0,114,173,0,0,0,114,207,0, - 0,0,114,202,0,0,0,41,14,114,143,0,0,0,114,163, - 0,0,0,114,225,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,193,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,211,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,210,0,0, - 0,114,7,0,0,0,114,7,0,0,0,114,8,0,0,0, - 114,226,0,0,0,244,5,0,0,115,88,0,0,0,4,5, - 14,1,2,1,24,1,12,1,6,1,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, - 20,1,12,1,8,1,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,255,128,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,190,0,0,0,124,0,106,0,125,1, - 122,11,116,1,160,2,124,1,112,11,116,1,160,3,161,0, - 161,1,125,2,87,0,110,12,4,0,116,4,116,5,116,6, - 102,3,121,94,1,0,1,0,1,0,103,0,125,2,89,0, - 116,7,106,8,160,9,100,1,161,1,115,39,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,65,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,44,124,3,124,0, - 95,11,116,7,106,8,160,9,116,16,161,1,114,92,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,14,0,0,0,114,97,0,0,0,114,88,0,0,0,99, - 1,0,0,0,0,0,0,0,0,0,0,0,2,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,131,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,13,0,0,0,68,6,0,0, - 115,4,0,0,0,20,0,255,128,122,41,70,105,108,101,70, - 105,110,100,101,114,46,95,102,105,108,108,95,99,97,99,104, - 101,46,60,108,111,99,97,108,115,62,46,60,115,101,116,99, - 111,109,112,62,78,41,18,114,65,0,0,0,114,18,0,0, - 0,90,7,108,105,115,116,100,105,114,114,82,0,0,0,114, - 86,1,0,0,218,15,80,101,114,109,105,115,115,105,111,110, - 69,114,114,111,114,218,18,78,111,116,65,68,105,114,101,99, - 116,111,114,121,69,114,114,111,114,114,15,0,0,0,114,25, - 0,0,0,114,26,0,0,0,114,99,1,0,0,114,100,1, - 0,0,114,126,0,0,0,114,89,0,0,0,114,131,0,0, - 0,218,3,97,100,100,114,27,0,0,0,114,101,1,0,0, - 41,9,114,143,0,0,0,114,65,0,0,0,90,8,99,111, - 110,116,101,110,116,115,90,21,108,111,119,101,114,95,115,117, - 102,102,105,120,95,99,111,110,116,101,110,116,115,114,71,1, - 0,0,114,141,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,39, - 6,0,0,115,40,0,0,0,6,2,2,1,22,1,18,1, - 6,3,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,255,128, - 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,71,0,0,0,78,41,2,114,83, - 0,0,0,114,142,0,0,0,114,71,0,0,0,169,2,114, - 221,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,80,6,0, - 0,115,8,0,0,0,8,2,12,1,16,1,255,128,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,221, - 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,70,6,0,0,115,6,0,0,0, - 14,10,4,6,255,128,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,89,0,0,0,114,65,0,0,0,114,21,1,0,0, - 114,7,0,0,0,114,7,0,0,0,114,8,0,0,0,114, - 69,1,0,0,88,6,0,0,114,62,1,0,0,122,19,70, - 105,108,101,70,105,110,100,101,114,46,95,95,114,101,112,114, - 95,95,114,69,0,0,0,41,15,114,150,0,0,0,114,149, - 0,0,0,114,151,0,0,0,114,152,0,0,0,114,236,0, - 0,0,114,79,1,0,0,114,167,0,0,0,114,229,0,0, - 0,114,161,0,0,0,114,92,1,0,0,114,226,0,0,0, - 114,103,1,0,0,114,234,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,193,5,0, - 0,115,26,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,255,128, - 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,0,0,0,115,144, - 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,107,2,114,28,116, - 2,124,1,124,2,131,2,125,4,110,5,116,3,124,1,124, - 2,131,2,125,4,124,5,115,42,116,4,124,1,124,2,124, - 4,100,3,141,3,125,5,122,19,124,5,124,0,100,2,60, - 0,124,4,124,0,100,1,60,0,124,2,124,0,100,4,60, - 0,124,3,124,0,100,5,60,0,87,0,100,0,83,0,4, - 0,116,5,121,71,1,0,1,0,1,0,89,0,100,0,83, - 0,119,0,41,6,78,218,10,95,95,108,111,97,100,101,114, - 95,95,218,8,95,95,115,112,101,99,95,95,114,96,1,0, - 0,90,8,95,95,102,105,108,101,95,95,90,10,95,95,99, - 97,99,104,101,100,95,95,41,6,218,3,103,101,116,114,164, - 0,0,0,114,42,1,0,0,114,35,1,0,0,114,213,0, - 0,0,218,9,69,120,99,101,112,116,105,111,110,41,6,90, - 2,110,115,114,141,0,0,0,90,8,112,97,116,104,110,97, - 109,101,90,9,99,112,97,116,104,110,97,109,101,114,164,0, - 0,0,114,210,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,94,6,0,0,115,38,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,14,1,12,1,6, - 2,2,254,255,128,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,30,1,0,0,114,187,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,127,0,0,0,114,42,1,0, - 0,114,113,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,208,0,0,0,117,6,0,0,115,10, - 0,0,0,12,5,8,1,8,1,10,1,255,128,114,208,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,69,0,0,0,41,1,114, - 159,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,128, - 6,0,0,115,4,0,0,0,8,2,255,128,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,208,0,0,0,114,15,0,0,0, - 114,84,1,0,0,114,191,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, - 61,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,133,6,0,0, - 115,10,0,0,0,8,2,6,1,20,1,16,1,255,128,114, - 119,1,0,0,41,1,114,87,0,0,0,114,69,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,152,0,0,0,114,159,0,0,0, - 114,187,0,0,0,114,91,0,0,0,114,15,0,0,0,114, - 99,0,0,0,114,184,0,0,0,114,25,0,0,0,114,231, - 0,0,0,90,2,110,116,114,18,0,0,0,114,215,0,0, - 0,90,5,112,111,115,105,120,114,50,0,0,0,218,3,97, - 108,108,114,59,0,0,0,114,136,0,0,0,114,57,0,0, - 0,114,62,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,28,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,27,0,0,0,114,29,0, - 0,0,114,21,0,0,0,114,36,0,0,0,114,42,0,0, - 0,114,45,0,0,0,114,67,0,0,0,114,74,0,0,0, - 114,75,0,0,0,114,79,0,0,0,114,80,0,0,0,114, - 83,0,0,0,114,86,0,0,0,114,95,0,0,0,218,4, - 116,121,112,101,218,8,95,95,99,111,100,101,95,95,114,186, - 0,0,0,114,34,0,0,0,114,172,0,0,0,114,33,0, - 0,0,114,39,0,0,0,114,8,1,0,0,114,116,0,0, - 0,114,112,0,0,0,114,127,0,0,0,114,61,0,0,0, - 114,115,1,0,0,114,232,0,0,0,114,113,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,121,0,0,0,114,128,0,0,0,114, - 135,0,0,0,114,137,0,0,0,114,139,0,0,0,114,160, - 0,0,0,114,167,0,0,0,114,176,0,0,0,114,180,0, - 0,0,114,182,0,0,0,114,189,0,0,0,114,194,0,0, - 0,114,195,0,0,0,114,200,0,0,0,218,6,111,98,106, - 101,99,116,114,209,0,0,0,114,213,0,0,0,114,214,0, - 0,0,114,235,0,0,0,114,249,0,0,0,114,11,1,0, - 0,114,35,1,0,0,114,42,1,0,0,114,30,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,208,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,182,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,27,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,255,128, -<<<<<<< HEAD -======= - 10,32,32,32,32,32,32,32,32,78,41,7,114,15,0,0, - 0,114,65,0,0,0,114,91,1,0,0,114,164,0,0,0, - 114,202,0,0,0,114,205,0,0,0,114,47,1,0,0,41, - 6,114,221,0,0,0,114,163,0,0,0,114,65,0,0,0, - 114,225,0,0,0,114,210,0,0,0,114,90,1,0,0,114, - 7,0,0,0,114,7,0,0,0,114,8,0,0,0,114,226, - 0,0,0,139,5,0,0,115,28,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,255,128,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,227,0,0, - 0,114,228,0,0,0,114,7,0,0,0,114,7,0,0,0, - 114,8,0,0,0,114,229,0,0,0,163,5,0,0,115,16, - 0,0,0,6,8,2,2,4,254,12,3,8,1,4,1,6, - 1,255,128,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,92, - 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,144,0,0,0,114,145, - 0,0,0,114,92,1,0,0,114,7,0,0,0,114,7,0, - 0,0,114,8,0,0,0,114,93,1,0,0,179,5,0,0, - 115,6,0,0,0,12,10,16,1,255,128,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,41,1,78,41,2,78, - 78,41,1,78,41,14,114,150,0,0,0,114,149,0,0,0, - 114,151,0,0,0,114,152,0,0,0,114,232,0,0,0,114, - 78,1,0,0,114,84,1,0,0,114,233,0,0,0,114,87, - 1,0,0,114,88,1,0,0,114,91,1,0,0,114,226,0, - 0,0,114,229,0,0,0,114,93,1,0,0,114,7,0,0, - 0,114,7,0,0,0,114,7,0,0,0,114,8,0,0,0, - 114,77,1,0,0,37,5,0,0,115,38,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,255,128,114,77,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,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,90,5,101,6,90,7,100,6,100,7,132,0,90,8,100, - 8,100,9,132,0,90,9,100,19,100,11,100,12,132,1,90, - 10,100,13,100,14,132,0,90,11,101,12,100,15,100,16,132, - 0,131,1,90,13,100,17,100,18,132,0,90,14,100,10,83, - 0,41,20,218,10,70,105,108,101,70,105,110,100,101,114,122, - 172,70,105,108,101,45,98,97,115,101,100,32,102,105,110,100, - 101,114,46,10,10,32,32,32,32,73,110,116,101,114,97,99, - 116,105,111,110,115,32,119,105,116,104,32,116,104,101,32,102, - 105,108,101,32,115,121,115,116,101,109,32,97,114,101,32,99, - 97,99,104,101,100,32,102,111,114,32,112,101,114,102,111,114, - 109,97,110,99,101,44,32,98,101,105,110,103,10,32,32,32, - 32,114,101,102,114,101,115,104,101,100,32,119,104,101,110,32, - 116,104,101,32,100,105,114,101,99,116,111,114,121,32,116,104, - 101,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, - 69,0,0,0,114,7,0,0,0,114,43,1,0,0,169,1, - 114,164,0,0,0,114,7,0,0,0,114,8,0,0,0,114, - 9,0,0,0,208,5,0,0,115,6,0,0,0,6,128,18, - 0,255,128,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,97,0,0,0, - 114,130,0,0,0,78,41,11,114,191,0,0,0,218,8,95, - 108,111,97,100,101,114,115,114,65,0,0,0,114,86,0,0, - 0,114,67,0,0,0,114,18,0,0,0,114,82,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,143,0,0,0,114,65,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,212,0,0,0,114,7, - 0,0,0,114,95,1,0,0,114,8,0,0,0,114,235,0, - 0,0,202,5,0,0,115,22,0,0,0,4,4,12,1,26, - 1,6,1,10,2,10,1,18,1,6,1,8,1,12,1,255, - 128,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,130,0,0,0,78,41,1,114,97,1,0,0,114,20, - 1,0,0,114,7,0,0,0,114,7,0,0,0,114,8,0, - 0,0,114,78,1,0,0,218,5,0,0,114,81,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,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,124,2,106,5,112,25,103,0,102,2, - 83,0,41,3,122,197,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,44,32,111,114,32,116,104,101,32,110,97,109,101, - 115,112,97,99,101,10,32,32,32,32,32,32,32,32,112,97, - 99,107,97,103,101,32,112,111,114,116,105,111,110,115,46,32, - 82,101,116,117,114,110,115,32,40,108,111,97,100,101,114,44, - 32,108,105,115,116,45,111,102,45,112,111,114,116,105,111,110, - 115,41,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,70,105,108, - 101,70,105,110,100,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,6,114,99,0,0,0,114,100,0,0,0,114, - 101,0,0,0,114,226,0,0,0,114,164,0,0,0,114,202, - 0,0,0,41,3,114,143,0,0,0,114,163,0,0,0,114, - 210,0,0,0,114,7,0,0,0,114,7,0,0,0,114,8, - 0,0,0,114,161,0,0,0,224,5,0,0,115,16,0,0, - 0,6,7,2,2,4,254,10,3,8,1,8,1,16,1,255, - 128,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,201,0,0,0,41,1,114,213,0,0,0, - 41,7,114,143,0,0,0,114,211,0,0,0,114,163,0,0, - 0,114,65,0,0,0,90,4,115,109,115,108,114,225,0,0, - 0,114,164,0,0,0,114,7,0,0,0,114,7,0,0,0, - 114,8,0,0,0,114,91,1,0,0,239,5,0,0,115,10, - 0,0,0,10,1,8,1,2,1,6,255,255,128,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,120,1, - 0,0,100,1,125,3,124,1,160,0,100,2,161,1,100,3, - 25,0,125,4,122,12,116,1,124,0,106,2,112,17,116,3, - 160,4,161,0,131,1,106,5,125,5,87,0,110,9,4,0, - 116,6,121,187,1,0,1,0,1,0,100,4,125,5,89,0, - 124,5,124,0,106,7,107,3,114,43,124,0,160,8,161,0, - 1,0,124,5,124,0,95,7,116,9,131,0,114,54,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,106, - 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,101,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,72,116,17, - 124,8,131,1,125,3,124,0,106,14,68,0,93,54,92,2, - 125,9,125,10,122,10,116,13,124,0,106,2,124,4,124,9, - 23,0,131,2,125,12,87,0,110,10,4,0,116,18,121,186, - 1,0,1,0,1,0,89,0,1,0,100,6,83,0,116,19, - 106,20,100,7,124,12,100,3,100,8,141,3,1,0,124,7, - 124,9,23,0,124,6,118,0,114,163,116,15,124,12,131,1, - 114,163,124,0,160,16,124,10,124,1,124,12,100,6,124,2, - 161,5,2,0,1,0,83,0,113,109,124,3,114,184,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,97, - 0,0,0,114,44,0,0,0,114,130,0,0,0,114,235,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,104,0,0,0,114,75,0, - 0,0,114,65,0,0,0,114,18,0,0,0,114,82,0,0, - 0,114,35,1,0,0,114,76,0,0,0,114,97,1,0,0, - 218,11,95,102,105,108,108,95,99,97,99,104,101,114,21,0, - 0,0,114,100,1,0,0,114,131,0,0,0,114,99,1,0, - 0,114,67,0,0,0,114,96,1,0,0,114,80,0,0,0, - 114,91,1,0,0,114,83,0,0,0,114,111,0,0,0,114, - 159,0,0,0,114,173,0,0,0,114,207,0,0,0,114,202, - 0,0,0,41,14,114,143,0,0,0,114,163,0,0,0,114, - 225,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, - 193,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,44,1,0,0,114,211,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,210,0,0,0,114,7,0, - 0,0,114,7,0,0,0,114,8,0,0,0,114,226,0,0, - 0,244,5,0,0,115,88,0,0,0,4,5,14,1,2,1, - 24,1,12,1,6,1,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,20,1,12,1, - 8,1,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, - 255,128,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,190,0,0,0,124,0,106,0,125,1,122,11,116,1, - 160,2,124,1,112,11,116,1,160,3,161,0,161,1,125,2, - 87,0,110,12,4,0,116,4,116,5,116,6,102,3,121,94, - 1,0,1,0,1,0,103,0,125,2,89,0,116,7,106,8, - 160,9,100,1,161,1,115,39,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,65,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,44,124,3,124,0,95,11,116,7, - 106,8,160,9,116,16,161,1,114,92,100,4,100,5,132,0, ->>>>>>> added exception groups 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, -<<<<<<< HEAD 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,4,0,0,0, @@ -4038,19 +2648,19 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 110,100,101,114,46,95,102,105,108,108,95,99,97,99,104,101, 46,60,108,111,99,97,108,115,62,46,60,115,101,116,99,111, 109,112,62,78,41,18,114,66,0,0,0,114,19,0,0,0, - 90,7,108,105,115,116,100,105,114,114,83,0,0,0,114,86, + 90,7,108,105,115,116,100,105,114,114,83,0,0,0,114,87, 1,0,0,218,15,80,101,114,109,105,115,115,105,111,110,69, 114,114,111,114,218,18,78,111,116,65,68,105,114,101,99,116, 111,114,121,69,114,114,111,114,114,16,0,0,0,114,26,0, - 0,0,114,27,0,0,0,114,99,1,0,0,114,100,1,0, + 0,0,114,27,0,0,0,114,100,1,0,0,114,101,1,0, 0,114,127,0,0,0,114,90,0,0,0,114,132,0,0,0, - 218,3,97,100,100,114,28,0,0,0,114,101,1,0,0,41, + 218,3,97,100,100,114,28,0,0,0,114,102,1,0,0,41, 9,114,144,0,0,0,114,66,0,0,0,90,8,99,111,110, 116,101,110,116,115,90,21,108,111,119,101,114,95,115,117,102, - 102,105,120,95,99,111,110,116,101,110,116,115,114,71,1,0, - 0,114,142,0,0,0,114,55,1,0,0,114,45,1,0,0, + 102,105,120,95,99,111,110,116,101,110,116,115,114,72,1,0, + 0,114,142,0,0,0,114,56,1,0,0,114,46,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,43,6, + 7,0,0,0,114,8,0,0,0,114,104,1,0,0,43,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, @@ -4088,7 +2698,7 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 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, + 169,2,114,222,0,0,0,114,103,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, 84,6,0,0,115,6,0,0,0,8,2,12,1,16,1,114, @@ -4096,29 +2706,29 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 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,41,3,114,222,0,0,0,114,103,1,0,0,114,109, + 1,0,0,114,7,0,0,0,114,108,1,0,0,114,8,0, 0,0,218,9,112,97,116,104,95,104,111,111,107,74,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, + 0,0,1,0,0,0,3,0,0,0,67,0,0,0,114,69, 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,92,6,0, - 0,114,62,1,0,0,114,10,0,0,0,122,19,70,105,108, + 0,0,0,114,8,0,0,0,114,70,1,0,0,92,6,0, + 0,114,63,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, + 114,80,1,0,0,114,168,0,0,0,114,230,0,0,0,114, + 162,0,0,0,114,93,1,0,0,114,227,0,0,0,114,104, + 1,0,0,114,235,0,0,0,114,110,1,0,0,114,70,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,197,5,0,0,115, + 0,114,8,0,0,0,114,96,1,0,0,197,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,114,96,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,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, @@ -4131,9 +2741,9 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 4,0,116,5,121,72,1,0,1,0,1,0,89,0,100,0, 83,0,37,0,119,0,41,6,78,218,10,95,95,108,111,97, 100,101,114,95,95,218,8,95,95,115,112,101,99,95,95,114, - 96,1,0,0,90,8,95,95,102,105,108,101,95,95,90,10, + 97,1,0,0,90,8,95,95,102,105,108,101,95,95,90,10, 95,95,99,97,99,104,101,100,95,95,41,6,218,3,103,101, - 116,114,165,0,0,0,114,42,1,0,0,114,35,1,0,0, + 116,114,165,0,0,0,114,43,1,0,0,114,36,1,0,0, 114,214,0,0,0,218,9,69,120,99,101,112,116,105,111,110, 41,6,90,2,110,115,114,142,0,0,0,90,8,112,97,116, 104,110,97,109,101,90,9,99,112,97,116,104,110,97,109,101, @@ -4143,7 +2753,7 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 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, + 16,61,0,189,7,65,7,7,193,8,1,65,7,7,114,115, 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, @@ -4156,8 +2766,8 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 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, + 111,110,95,115,117,102,102,105,120,101,115,114,36,1,0,0, + 114,128,0,0,0,114,43,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, @@ -4170,7 +2780,7 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 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,132,6,0,0,115, - 2,0,0,0,8,2,114,10,0,0,0,114,117,1,0,0, + 2,0,0,0,8,2,114,10,0,0,0,114,118,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, @@ -4179,15 +2789,15 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 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, + 114,118,1,0,0,114,209,0,0,0,114,16,0,0,0,114, + 85,1,0,0,114,192,0,0,0,114,96,1,0,0,114,110, 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, + 0,0,0,114,79,1,0,0,41,2,114,117,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,137,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,114,120,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, @@ -4208,7 +2818,7 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 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,0,114,116,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, @@ -4219,10 +2829,10 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 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, + 1,0,0,114,36,1,0,0,114,43,1,0,0,114,31,1, + 0,0,114,49,1,0,0,114,75,1,0,0,114,79,1,0, + 0,114,96,1,0,0,114,115,1,0,0,114,209,0,0,0, + 114,118,1,0,0,114,120,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, @@ -4237,216 +2847,4 @@ const unsigned char _Py_M__importlib_bootstrap_external[] = { 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, -======= - 115,32,100,105,114,101,99,116,111,114,121,46,114,14,0,0, - 0,114,97,0,0,0,114,88,0,0,0,99,1,0,0,0, - 0,0,0,0,0,0,0,0,2,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,131,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,13,0,0,0,68,6,0,0,115,4,0,0, - 0,20,0,255,128,122,41,70,105,108,101,70,105,110,100,101, - 114,46,95,102,105,108,108,95,99,97,99,104,101,46,60,108, - 111,99,97,108,115,62,46,60,115,101,116,99,111,109,112,62, - 78,41,18,114,65,0,0,0,114,18,0,0,0,90,7,108, - 105,115,116,100,105,114,114,82,0,0,0,114,85,1,0,0, - 218,15,80,101,114,109,105,115,115,105,111,110,69,114,114,111, - 114,218,18,78,111,116,65,68,105,114,101,99,116,111,114,121, - 69,114,114,111,114,114,15,0,0,0,114,25,0,0,0,114, - 26,0,0,0,114,98,1,0,0,114,99,1,0,0,114,126, - 0,0,0,114,89,0,0,0,114,131,0,0,0,218,3,97, - 100,100,114,27,0,0,0,114,100,1,0,0,41,9,114,143, - 0,0,0,114,65,0,0,0,90,8,99,111,110,116,101,110, - 116,115,90,21,108,111,119,101,114,95,115,117,102,102,105,120, - 95,99,111,110,116,101,110,116,115,114,70,1,0,0,114,141, - 0,0,0,114,54,1,0,0,114,44,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,102,1,0,0,39,6,0,0,115, - 40,0,0,0,6,2,2,1,22,1,18,1,6,3,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,255,128,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,71,0,0,0,78,41,2,114,83,0,0,0,114, - 142,0,0,0,114,71,0,0,0,169,2,114,221,0,0,0, - 114,101,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,80,6,0,0,115,8,0, - 0,0,8,2,12,1,16,1,255,128,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,221,0,0,0,114, - 101,1,0,0,114,107,1,0,0,114,7,0,0,0,114,106, - 1,0,0,114,8,0,0,0,218,9,112,97,116,104,95,104, - 111,111,107,70,6,0,0,115,6,0,0,0,14,10,4,6, - 255,128,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,67,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,89,0, - 0,0,114,65,0,0,0,114,20,1,0,0,114,7,0,0, - 0,114,7,0,0,0,114,8,0,0,0,114,68,1,0,0, - 88,6,0,0,114,61,1,0,0,122,19,70,105,108,101,70, - 105,110,100,101,114,46,95,95,114,101,112,114,95,95,41,1, - 78,41,15,114,150,0,0,0,114,149,0,0,0,114,151,0, - 0,0,114,152,0,0,0,114,235,0,0,0,114,78,1,0, - 0,114,167,0,0,0,114,229,0,0,0,114,161,0,0,0, - 114,91,1,0,0,114,226,0,0,0,114,102,1,0,0,114, - 233,0,0,0,114,108,1,0,0,114,68,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,193,5,0,0,115,26,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,255,128,114,94,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,0,0,0,115,144,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,107,2,114,28,116,2,124,1,124,2,131, - 2,125,4,110,5,116,3,124,1,124,2,131,2,125,4,124, - 5,115,42,116,4,124,1,124,2,124,4,100,3,141,3,125, - 5,122,19,124,5,124,0,100,2,60,0,124,4,124,0,100, - 1,60,0,124,2,124,0,100,4,60,0,124,3,124,0,100, - 5,60,0,87,0,100,0,83,0,4,0,116,5,121,71,1, - 0,1,0,1,0,89,0,100,0,83,0,119,0,41,6,78, - 218,10,95,95,108,111,97,100,101,114,95,95,218,8,95,95, - 115,112,101,99,95,95,114,95,1,0,0,90,8,95,95,102, - 105,108,101,95,95,90,10,95,95,99,97,99,104,101,100,95, - 95,41,6,218,3,103,101,116,114,164,0,0,0,114,41,1, - 0,0,114,34,1,0,0,114,213,0,0,0,218,9,69,120, - 99,101,112,116,105,111,110,41,6,90,2,110,115,114,141,0, - 0,0,90,8,112,97,116,104,110,97,109,101,90,9,99,112, - 97,116,104,110,97,109,101,114,164,0,0,0,114,210,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, - 94,6,0,0,115,38,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,14,1,12,1,6,2,2,254,255,128,114, - 113,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,29, - 1,0,0,114,187,0,0,0,218,18,101,120,116,101,110,115, - 105,111,110,95,115,117,102,102,105,120,101,115,114,34,1,0, - 0,114,127,0,0,0,114,41,1,0,0,114,113,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, - 208,0,0,0,117,6,0,0,115,10,0,0,0,12,5,8, - 1,8,1,10,1,255,128,114,208,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,69,0,0,0,41,1,114,159,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,128,6,0,0,115,4,0, - 0,0,8,2,255,128,114,116,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,116,1,0,0, - 114,208,0,0,0,114,15,0,0,0,114,83,1,0,0,114, - 191,0,0,0,114,94,1,0,0,114,108,1,0,0,218,9, - 109,101,116,97,95,112,97,116,104,114,61,0,0,0,114,77, - 1,0,0,41,2,114,115,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,133,6,0,0,115,10,0,0,0,8, - 2,6,1,20,1,16,1,255,128,114,118,1,0,0,41,1, - 114,87,0,0,0,41,1,78,41,3,78,78,78,41,2,114, - 0,0,0,0,114,0,0,0,0,41,1,84,41,1,78,41, - 1,78,41,85,114,152,0,0,0,114,159,0,0,0,114,187, - 0,0,0,114,91,0,0,0,114,15,0,0,0,114,99,0, - 0,0,114,184,0,0,0,114,25,0,0,0,114,230,0,0, - 0,90,2,110,116,114,18,0,0,0,114,215,0,0,0,90, - 5,112,111,115,105,120,114,50,0,0,0,218,3,97,108,108, - 114,59,0,0,0,114,136,0,0,0,114,57,0,0,0,114, - 62,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,28,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,27,0,0,0,114,29,0,0,0, - 114,21,0,0,0,114,36,0,0,0,114,42,0,0,0,114, - 45,0,0,0,114,67,0,0,0,114,74,0,0,0,114,75, - 0,0,0,114,79,0,0,0,114,80,0,0,0,114,83,0, - 0,0,114,86,0,0,0,114,95,0,0,0,218,4,116,121, - 112,101,218,8,95,95,99,111,100,101,95,95,114,186,0,0, - 0,114,34,0,0,0,114,172,0,0,0,114,33,0,0,0, - 114,39,0,0,0,114,7,1,0,0,114,116,0,0,0,114, - 112,0,0,0,114,127,0,0,0,114,61,0,0,0,114,114, - 1,0,0,114,231,0,0,0,114,113,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,121,0,0,0,114,128,0,0,0,114,135,0, - 0,0,114,137,0,0,0,114,139,0,0,0,114,160,0,0, - 0,114,167,0,0,0,114,176,0,0,0,114,180,0,0,0, - 114,182,0,0,0,114,189,0,0,0,114,194,0,0,0,114, - 195,0,0,0,114,200,0,0,0,218,6,111,98,106,101,99, - 116,114,209,0,0,0,114,213,0,0,0,114,214,0,0,0, - 114,234,0,0,0,114,248,0,0,0,114,10,1,0,0,114, - 34,1,0,0,114,41,1,0,0,114,29,1,0,0,114,47, - 1,0,0,114,73,1,0,0,114,77,1,0,0,114,94,1, - 0,0,114,113,1,0,0,114,208,0,0,0,114,116,1,0, - 0,114,118,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,182,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,27,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,255,128, ->>>>>>> added exception groups ->>>>>>> added exception groups -======= ->>>>>>> regenerated Python/importlib_external.h }; From aed5cffcf0d8cc564e9811da2d8bb19daba1cace Mon Sep 17 00:00:00 2001 From: Irit Katriel Date: Wed, 12 May 2021 10:37:19 +0100 Subject: [PATCH 08/10] regenerated PC/python3dll.c --- PC/python3dll.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/PC/python3dll.c b/PC/python3dll.c index 1f8c0b8f57d4d4..200d1d14e294d1 100755 --- a/PC/python3dll.c +++ b/PC/python3dll.c @@ -753,7 +753,6 @@ EXPORT_DATA(PyExc_ArithmeticError) EXPORT_DATA(PyExc_AssertionError) EXPORT_DATA(PyExc_AttributeError) EXPORT_DATA(PyExc_BaseException) -EXPORT_DATA(PyExc_BaseExceptionGroup) EXPORT_DATA(PyExc_BlockingIOError) EXPORT_DATA(PyExc_BrokenPipeError) EXPORT_DATA(PyExc_BufferError) @@ -768,7 +767,6 @@ EXPORT_DATA(PyExc_EncodingWarning) EXPORT_DATA(PyExc_EnvironmentError) EXPORT_DATA(PyExc_EOFError) EXPORT_DATA(PyExc_Exception) -EXPORT_DATA(PyExc_ExceptionGroup) EXPORT_DATA(PyExc_FileExistsError) EXPORT_DATA(PyExc_FileNotFoundError) EXPORT_DATA(PyExc_FloatingPointError) From 291be6853426936447c967d8e6e699172367f832 Mon Sep 17 00:00:00 2001 From: Irit Katriel Date: Wed, 12 May 2021 11:17:05 +0100 Subject: [PATCH 09/10] updated Doc/data/stable_abi.dat and regenerated PC/python3dll.c, Doc/data/stable_abi.dat --- Doc/data/stable_abi.dat | 2 ++ PC/python3dll.c | 2 ++ 2 files changed, 4 insertions(+) diff --git a/Doc/data/stable_abi.dat b/Doc/data/stable_abi.dat index d582204f5626b9..97771471fee0ff 100644 --- a/Doc/data/stable_abi.dat +++ b/Doc/data/stable_abi.dat @@ -189,6 +189,7 @@ var,PyExc_ArithmeticError,3.2, var,PyExc_AssertionError,3.2, var,PyExc_AttributeError,3.2, var,PyExc_BaseException,3.2, +var,PyExc_BaseExceptionGroup,3.11, var,PyExc_BlockingIOError,3.7, var,PyExc_BrokenPipeError,3.7, var,PyExc_BufferError,3.2, @@ -203,6 +204,7 @@ var,PyExc_EOFError,3.2, var,PyExc_EncodingWarning,3.10, var,PyExc_EnvironmentError,3.2, var,PyExc_Exception,3.2, +var,PyExc_ExceptionGroup,3.11, var,PyExc_FileExistsError,3.7, var,PyExc_FileNotFoundError,3.7, var,PyExc_FloatingPointError,3.2, diff --git a/PC/python3dll.c b/PC/python3dll.c index 200d1d14e294d1..1f8c0b8f57d4d4 100755 --- a/PC/python3dll.c +++ b/PC/python3dll.c @@ -753,6 +753,7 @@ EXPORT_DATA(PyExc_ArithmeticError) EXPORT_DATA(PyExc_AssertionError) EXPORT_DATA(PyExc_AttributeError) EXPORT_DATA(PyExc_BaseException) +EXPORT_DATA(PyExc_BaseExceptionGroup) EXPORT_DATA(PyExc_BlockingIOError) EXPORT_DATA(PyExc_BrokenPipeError) EXPORT_DATA(PyExc_BufferError) @@ -767,6 +768,7 @@ EXPORT_DATA(PyExc_EncodingWarning) EXPORT_DATA(PyExc_EnvironmentError) EXPORT_DATA(PyExc_EOFError) EXPORT_DATA(PyExc_Exception) +EXPORT_DATA(PyExc_ExceptionGroup) EXPORT_DATA(PyExc_FileExistsError) EXPORT_DATA(PyExc_FileNotFoundError) EXPORT_DATA(PyExc_FloatingPointError) From 5b3dfe2092d95cee63f4413442562a63b1475996 Mon Sep 17 00:00:00 2001 From: Irit Katriel Date: Wed, 12 May 2021 14:40:06 +0100 Subject: [PATCH 10/10] updated Misc/stable_abi.txt --- Misc/stable_abi.txt | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/Misc/stable_abi.txt b/Misc/stable_abi.txt index a78bcb76b41df6..979bc944a9078b 100644 --- a/Misc/stable_abi.txt +++ b/Misc/stable_abi.txt @@ -621,6 +621,8 @@ data PyExc_AttributeError added 3.2 data PyExc_BaseException added 3.2 +data PyExc_BaseExceptionGroup + added 3.11 data PyExc_BufferError added 3.2 data PyExc_BytesWarning @@ -633,6 +635,8 @@ data PyExc_EnvironmentError added 3.2 data PyExc_Exception added 3.2 +data PyExc_ExceptionGroup + added 3.11 data PyExc_FloatingPointError added 3.2 data PyExc_FutureWarning