From 3b5b843224654ddc7b5bb8e9a1bedf6390103e65 Mon Sep 17 00:00:00 2001 From: Andrew Svetlov Date: Sat, 25 Aug 2012 14:22:07 +0300 Subject: [PATCH 001/201] Delete Misc/NEWS record for reverted #15776. --- Misc/NEWS | 2 -- 1 file changed, 2 deletions(-) diff --git a/Misc/NEWS b/Misc/NEWS index c71a7cb38ec..74cbea9d6a7 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -47,8 +47,6 @@ Library - Issue #15544: Fix Decimal.__float__ to work with payload-carrying NaNs. -- Issue #15776: Allow pyvenv to work in existing directory with --clean. - - Issue #15249: BytesGenerator now correctly mangles From lines (when requested) even if the body contains undecodable bytes. From d26c306bf18810c4e8b8dbc53c58af4b014eab06 Mon Sep 17 00:00:00 2001 From: Ezio Melotti Date: Sun, 26 Aug 2012 07:33:10 +0300 Subject: [PATCH 002/201] Fix typo. --- Doc/library/types.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Doc/library/types.rst b/Doc/library/types.rst index b60b1958a8b..695480f6cb5 100644 --- a/Doc/library/types.rst +++ b/Doc/library/types.rst @@ -69,7 +69,7 @@ implement a Python interpreter. It deliberately avoids including some of the types that arise only incidentally during processing such as the ``listiterator`` type. -Typical use is of these names is for :func:`isinstance` or +Typical use of these names is for :func:`isinstance` or :func:`issubclass` checks. Standard names are defined for the following types: From aa935dfe9cb8db13e15c1768dc343e7ee6409dd9 Mon Sep 17 00:00:00 2001 From: Ezio Melotti Date: Mon, 27 Aug 2012 10:00:05 +0300 Subject: [PATCH 003/201] #15788: fix broken links in subprocess doc. Patch by Chris Rebert. --- Doc/library/subprocess.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Doc/library/subprocess.rst b/Doc/library/subprocess.rst index 899bd7c26bc..00b72fb6e75 100644 --- a/Doc/library/subprocess.rst +++ b/Doc/library/subprocess.rst @@ -565,8 +565,8 @@ The following attributes are also available: .. warning:: - Use :meth:`communicate` rather than :attr:`.stdin.write `, - :attr:`.stdout.read ` or :attr:`.stderr.read ` to avoid + Use :meth:`~Popen.communicate` rather than :attr:`.stdin.write `, + :attr:`.stdout.read ` or :attr:`.stderr.read ` to avoid deadlocks due to any of the other OS pipe buffers filling up and blocking the child process. From 72c6eefcc638c6ca32c43f85a5180d9f091b2755 Mon Sep 17 00:00:00 2001 From: Petri Lehtinen Date: Mon, 27 Aug 2012 20:27:30 +0300 Subject: [PATCH 004/201] Fix a JSON doc typo --- Doc/library/json.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Doc/library/json.rst b/Doc/library/json.rst index 0229ab5e6fc..a5bfcd2e168 100644 --- a/Doc/library/json.rst +++ b/Doc/library/json.rst @@ -146,7 +146,7 @@ Basic Usage object members will be pretty-printed with that indent level. An indent level of 0, negative, or ``""`` will only insert newlines. ``None`` (the default) selects the most compact representation. Using a positive integer indent - indents that many spaces per level. If *indent* is a string (such at '\t'), + indents that many spaces per level. If *indent* is a string (such as ``"\t"``), that string is used to indent each level. If *separators* is an ``(item_separator, dict_separator)`` tuple, then it From 4f0338cab745c8678df4113f2fcd38dd234a73f8 Mon Sep 17 00:00:00 2001 From: Antoine Pitrou Date: Tue, 28 Aug 2012 00:24:52 +0200 Subject: [PATCH 005/201] Issue #15781: Fix two small race conditions in import's module locking. --- Lib/importlib/_bootstrap.py | 10 +- Lib/test/test_threaded_import.py | 12 +- Misc/NEWS | 2 + Python/import.c | 6 +- Python/importlib.h | 7304 +++++++++++++++--------------- 5 files changed, 3679 insertions(+), 3655 deletions(-) diff --git a/Lib/importlib/_bootstrap.py b/Lib/importlib/_bootstrap.py index 171adc572fa..6697b2bb6dd 100644 --- a/Lib/importlib/_bootstrap.py +++ b/Lib/importlib/_bootstrap.py @@ -268,8 +268,10 @@ def _get_module_lock(name): Should only be called with the import lock taken.""" lock = None - if name in _module_locks: + try: lock = _module_locks[name]() + except KeyError: + pass if lock is None: if _thread is None: lock = _DummyModuleLock(name) @@ -543,6 +545,9 @@ def module_for_loader_wrapper(self, fullname, *args, **kwargs): # implicitly imports 'locale' and would otherwise trigger an # infinite loop. module = new_module(fullname) + # This must be done before putting the module in sys.modules + # (otherwise an optimization shortcut in import.c becomes wrong) + module.__initializing__ = True sys.modules[fullname] = module module.__loader__ = self try: @@ -554,8 +559,9 @@ def module_for_loader_wrapper(self, fullname, *args, **kwargs): module.__package__ = fullname else: module.__package__ = fullname.rpartition('.')[0] - try: + else: module.__initializing__ = True + try: # If __package__ was not set above, __import__() will do it later. return fxn(self, module, *args, **kwargs) except: diff --git a/Lib/test/test_threaded_import.py b/Lib/test/test_threaded_import.py index f540bdc67c0..cfc6842e1f4 100644 --- a/Lib/test/test_threaded_import.py +++ b/Lib/test/test_threaded_import.py @@ -224,7 +224,17 @@ def target(): @reap_threads def test_main(): - run_unittest(ThreadedImportTests) + old_switchinterval = None + try: + old_switchinterval = sys.getswitchinterval() + sys.setswitchinterval(0.00000001) + except AttributeError: + pass + try: + run_unittest(ThreadedImportTests) + finally: + if old_switchinterval is not None: + sys.setswitchinterval(old_switchinterval) if __name__ == "__main__": test_main() diff --git a/Misc/NEWS b/Misc/NEWS index cc42de4b440..345d166e844 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -10,6 +10,8 @@ What's New in Python 3.3.0 Release Candidate 2? Core and Builtins ----------------- +- Issue #15781: Fix two small race conditions in import's module locking. + Library ------- diff --git a/Python/import.c b/Python/import.c index 2540f9d7b79..2f71b97bc8b 100644 --- a/Python/import.c +++ b/Python/import.c @@ -1408,7 +1408,11 @@ PyImport_ImportModuleLevelObject(PyObject *name, PyObject *given_globals, int initializing = 0; Py_INCREF(mod); - /* Only call _bootstrap._lock_unlock_module() if __initializing__ is true. */ + /* Optimization: only call _bootstrap._lock_unlock_module() if + __initializing__ is true. + NOTE: because of this, __initializing__ must be set *before* + stuffing the new module in sys.modules. + */ value = _PyObject_GetAttrId(mod, &PyId___initializing__); if (value == NULL) PyErr_Clear(); diff --git a/Python/importlib.h b/Python/importlib.h index c064ab92f6f..e0e013c0a23 100644 --- a/Python/importlib.h +++ b/Python/importlib.h @@ -641,1456 +641,1430 @@ unsigned char _Py_M__importlib[] = { 117,108,101,76,111,99,107,243,0,0,0,115,10,0,0,0, 16,2,6,2,12,4,12,4,12,5,117,16,0,0,0,95, 68,117,109,109,121,77,111,100,117,108,101,76,111,99,107,99, - 1,0,0,0,0,0,0,0,3,0,0,0,3,0,0,0, - 3,0,0,0,115,132,0,0,0,100,3,0,125,1,0,136, - 0,0,116,1,0,107,6,0,114,34,0,116,1,0,136,0, - 0,25,131,0,0,125,1,0,110,0,0,124,1,0,100,3, - 0,107,8,0,114,128,0,116,2,0,100,3,0,107,8,0, - 114,73,0,116,3,0,136,0,0,131,1,0,125,1,0,110, - 12,0,116,4,0,136,0,0,131,1,0,125,1,0,135,0, - 0,102,1,0,100,1,0,100,2,0,134,0,0,125,2,0, - 116,5,0,106,6,0,124,1,0,124,2,0,131,2,0,116, - 1,0,136,0,0,60,110,0,0,124,1,0,83,40,4,0, - 0,0,117,109,0,0,0,71,101,116,32,111,114,32,99,114, - 101,97,116,101,32,116,104,101,32,109,111,100,117,108,101,32, - 108,111,99,107,32,102,111,114,32,97,32,103,105,118,101,110, - 32,109,111,100,117,108,101,32,110,97,109,101,46,10,10,32, - 32,32,32,83,104,111,117,108,100,32,111,110,108,121,32,98, - 101,32,99,97,108,108,101,100,32,119,105,116,104,32,116,104, - 101,32,105,109,112,111,114,116,32,108,111,99,107,32,116,97, - 107,101,110,46,99,1,0,0,0,0,0,0,0,1,0,0, - 0,2,0,0,0,19,0,0,0,115,11,0,0,0,116,0, - 0,136,0,0,61,100,0,0,83,40,1,0,0,0,78,40, - 1,0,0,0,117,13,0,0,0,95,109,111,100,117,108,101, - 95,108,111,99,107,115,40,1,0,0,0,117,1,0,0,0, - 95,40,1,0,0,0,117,4,0,0,0,110,97,109,101,40, - 0,0,0,0,117,29,0,0,0,60,102,114,111,122,101,110, - 32,105,109,112,111,114,116,108,105,98,46,95,98,111,111,116, - 115,116,114,97,112,62,117,2,0,0,0,99,98,22,1,0, - 0,115,2,0,0,0,0,1,117,28,0,0,0,95,103,101, - 116,95,109,111,100,117,108,101,95,108,111,99,107,46,60,108, - 111,99,97,108,115,62,46,99,98,78,40,7,0,0,0,117, - 4,0,0,0,78,111,110,101,117,13,0,0,0,95,109,111, - 100,117,108,101,95,108,111,99,107,115,117,7,0,0,0,95, - 116,104,114,101,97,100,117,16,0,0,0,95,68,117,109,109, - 121,77,111,100,117,108,101,76,111,99,107,117,11,0,0,0, - 95,77,111,100,117,108,101,76,111,99,107,117,8,0,0,0, - 95,119,101,97,107,114,101,102,117,3,0,0,0,114,101,102, - 40,3,0,0,0,117,4,0,0,0,110,97,109,101,117,4, - 0,0,0,108,111,99,107,117,2,0,0,0,99,98,40,0, - 0,0,0,40,1,0,0,0,117,4,0,0,0,110,97,109, - 101,117,29,0,0,0,60,102,114,111,122,101,110,32,105,109, - 112,111,114,116,108,105,98,46,95,98,111,111,116,115,116,114, - 97,112,62,117,16,0,0,0,95,103,101,116,95,109,111,100, - 117,108,101,95,108,111,99,107,10,1,0,0,115,20,0,0, - 0,0,4,6,1,12,1,16,1,12,1,12,1,15,2,12, - 1,18,2,25,1,117,16,0,0,0,95,103,101,116,95,109, - 111,100,117,108,101,95,108,111,99,107,99,1,0,0,0,0, - 0,0,0,2,0,0,0,11,0,0,0,67,0,0,0,115, - 71,0,0,0,116,0,0,124,0,0,131,1,0,125,1,0, - 116,1,0,106,2,0,131,0,0,1,121,14,0,124,1,0, - 106,3,0,131,0,0,1,87,110,18,0,4,116,4,0,107, - 10,0,114,56,0,1,1,1,89,110,11,0,88,124,1,0, - 106,5,0,131,0,0,1,100,1,0,83,40,2,0,0,0, - 117,21,1,0,0,82,101,108,101,97,115,101,32,116,104,101, - 32,103,108,111,98,97,108,32,105,109,112,111,114,116,32,108, - 111,99,107,44,32,97,110,100,32,97,99,113,117,105,114,101, - 115,32,116,104,101,110,32,114,101,108,101,97,115,101,32,116, - 104,101,10,32,32,32,32,109,111,100,117,108,101,32,108,111, - 99,107,32,102,111,114,32,97,32,103,105,118,101,110,32,109, - 111,100,117,108,101,32,110,97,109,101,46,10,32,32,32,32, - 84,104,105,115,32,105,115,32,117,115,101,100,32,116,111,32, - 101,110,115,117,114,101,32,97,32,109,111,100,117,108,101,32, - 105,115,32,99,111,109,112,108,101,116,101,108,121,32,105,110, - 105,116,105,97,108,105,122,101,100,44,32,105,110,32,116,104, - 101,10,32,32,32,32,101,118,101,110,116,32,105,116,32,105, - 115,32,98,101,105,110,103,32,105,109,112,111,114,116,101,100, - 32,98,121,32,97,110,111,116,104,101,114,32,116,104,114,101, - 97,100,46,10,10,32,32,32,32,83,104,111,117,108,100,32, - 111,110,108,121,32,98,101,32,99,97,108,108,101,100,32,119, - 105,116,104,32,116,104,101,32,105,109,112,111,114,116,32,108, - 111,99,107,32,116,97,107,101,110,46,78,40,6,0,0,0, + 1,0,0,0,0,0,0,0,3,0,0,0,11,0,0,0, + 3,0,0,0,115,142,0,0,0,100,3,0,125,1,0,121, + 17,0,116,1,0,136,0,0,25,131,0,0,125,1,0,87, + 110,18,0,4,116,2,0,107,10,0,114,43,0,1,1,1, + 89,110,1,0,88,124,1,0,100,3,0,107,8,0,114,138, + 0,116,3,0,100,3,0,107,8,0,114,83,0,116,4,0, + 136,0,0,131,1,0,125,1,0,110,12,0,116,5,0,136, + 0,0,131,1,0,125,1,0,135,0,0,102,1,0,100,1, + 0,100,2,0,134,0,0,125,2,0,116,6,0,106,7,0, + 124,1,0,124,2,0,131,2,0,116,1,0,136,0,0,60, + 110,0,0,124,1,0,83,40,4,0,0,0,117,109,0,0, + 0,71,101,116,32,111,114,32,99,114,101,97,116,101,32,116, + 104,101,32,109,111,100,117,108,101,32,108,111,99,107,32,102, + 111,114,32,97,32,103,105,118,101,110,32,109,111,100,117,108, + 101,32,110,97,109,101,46,10,10,32,32,32,32,83,104,111, + 117,108,100,32,111,110,108,121,32,98,101,32,99,97,108,108, + 101,100,32,119,105,116,104,32,116,104,101,32,105,109,112,111, + 114,116,32,108,111,99,107,32,116,97,107,101,110,46,99,1, + 0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,19, + 0,0,0,115,11,0,0,0,116,0,0,136,0,0,61,100, + 0,0,83,40,1,0,0,0,78,40,1,0,0,0,117,13, + 0,0,0,95,109,111,100,117,108,101,95,108,111,99,107,115, + 40,1,0,0,0,117,1,0,0,0,95,40,1,0,0,0, + 117,4,0,0,0,110,97,109,101,40,0,0,0,0,117,29, + 0,0,0,60,102,114,111,122,101,110,32,105,109,112,111,114, + 116,108,105,98,46,95,98,111,111,116,115,116,114,97,112,62, + 117,2,0,0,0,99,98,24,1,0,0,115,2,0,0,0, + 0,1,117,28,0,0,0,95,103,101,116,95,109,111,100,117, + 108,101,95,108,111,99,107,46,60,108,111,99,97,108,115,62, + 46,99,98,78,40,8,0,0,0,117,4,0,0,0,78,111, + 110,101,117,13,0,0,0,95,109,111,100,117,108,101,95,108, + 111,99,107,115,117,8,0,0,0,75,101,121,69,114,114,111, + 114,117,7,0,0,0,95,116,104,114,101,97,100,117,16,0, + 0,0,95,68,117,109,109,121,77,111,100,117,108,101,76,111, + 99,107,117,11,0,0,0,95,77,111,100,117,108,101,76,111, + 99,107,117,8,0,0,0,95,119,101,97,107,114,101,102,117, + 3,0,0,0,114,101,102,40,3,0,0,0,117,4,0,0, + 0,110,97,109,101,117,4,0,0,0,108,111,99,107,117,2, + 0,0,0,99,98,40,0,0,0,0,40,1,0,0,0,117, + 4,0,0,0,110,97,109,101,117,29,0,0,0,60,102,114, + 111,122,101,110,32,105,109,112,111,114,116,108,105,98,46,95, + 98,111,111,116,115,116,114,97,112,62,117,16,0,0,0,95, + 103,101,116,95,109,111,100,117,108,101,95,108,111,99,107,10, + 1,0,0,115,24,0,0,0,0,4,6,1,3,1,17,1, + 13,1,5,1,12,1,12,1,15,2,12,1,18,2,25,1, 117,16,0,0,0,95,103,101,116,95,109,111,100,117,108,101, - 95,108,111,99,107,117,4,0,0,0,95,105,109,112,117,12, - 0,0,0,114,101,108,101,97,115,101,95,108,111,99,107,117, - 7,0,0,0,97,99,113,117,105,114,101,117,14,0,0,0, - 95,68,101,97,100,108,111,99,107,69,114,114,111,114,117,7, - 0,0,0,114,101,108,101,97,115,101,40,2,0,0,0,117, - 4,0,0,0,110,97,109,101,117,4,0,0,0,108,111,99, - 107,40,0,0,0,0,40,0,0,0,0,117,29,0,0,0, + 95,108,111,99,107,99,1,0,0,0,0,0,0,0,2,0, + 0,0,11,0,0,0,67,0,0,0,115,71,0,0,0,116, + 0,0,124,0,0,131,1,0,125,1,0,116,1,0,106,2, + 0,131,0,0,1,121,14,0,124,1,0,106,3,0,131,0, + 0,1,87,110,18,0,4,116,4,0,107,10,0,114,56,0, + 1,1,1,89,110,11,0,88,124,1,0,106,5,0,131,0, + 0,1,100,1,0,83,40,2,0,0,0,117,21,1,0,0, + 82,101,108,101,97,115,101,32,116,104,101,32,103,108,111,98, + 97,108,32,105,109,112,111,114,116,32,108,111,99,107,44,32, + 97,110,100,32,97,99,113,117,105,114,101,115,32,116,104,101, + 110,32,114,101,108,101,97,115,101,32,116,104,101,10,32,32, + 32,32,109,111,100,117,108,101,32,108,111,99,107,32,102,111, + 114,32,97,32,103,105,118,101,110,32,109,111,100,117,108,101, + 32,110,97,109,101,46,10,32,32,32,32,84,104,105,115,32, + 105,115,32,117,115,101,100,32,116,111,32,101,110,115,117,114, + 101,32,97,32,109,111,100,117,108,101,32,105,115,32,99,111, + 109,112,108,101,116,101,108,121,32,105,110,105,116,105,97,108, + 105,122,101,100,44,32,105,110,32,116,104,101,10,32,32,32, + 32,101,118,101,110,116,32,105,116,32,105,115,32,98,101,105, + 110,103,32,105,109,112,111,114,116,101,100,32,98,121,32,97, + 110,111,116,104,101,114,32,116,104,114,101,97,100,46,10,10, + 32,32,32,32,83,104,111,117,108,100,32,111,110,108,121,32, + 98,101,32,99,97,108,108,101,100,32,119,105,116,104,32,116, + 104,101,32,105,109,112,111,114,116,32,108,111,99,107,32,116, + 97,107,101,110,46,78,40,6,0,0,0,117,16,0,0,0, + 95,103,101,116,95,109,111,100,117,108,101,95,108,111,99,107, + 117,4,0,0,0,95,105,109,112,117,12,0,0,0,114,101, + 108,101,97,115,101,95,108,111,99,107,117,7,0,0,0,97, + 99,113,117,105,114,101,117,14,0,0,0,95,68,101,97,100, + 108,111,99,107,69,114,114,111,114,117,7,0,0,0,114,101, + 108,101,97,115,101,40,2,0,0,0,117,4,0,0,0,110, + 97,109,101,117,4,0,0,0,108,111,99,107,40,0,0,0, + 0,40,0,0,0,0,117,29,0,0,0,60,102,114,111,122, + 101,110,32,105,109,112,111,114,116,108,105,98,46,95,98,111, + 111,116,115,116,114,97,112,62,117,19,0,0,0,95,108,111, + 99,107,95,117,110,108,111,99,107,95,109,111,100,117,108,101, + 29,1,0,0,115,14,0,0,0,0,7,12,1,10,1,3, + 1,14,1,13,3,5,2,117,19,0,0,0,95,108,111,99, + 107,95,117,110,108,111,99,107,95,109,111,100,117,108,101,99, + 1,0,0,0,0,0,0,0,3,0,0,0,3,0,0,0, + 79,0,0,0,115,13,0,0,0,124,0,0,124,1,0,124, + 2,0,142,0,0,83,40,1,0,0,0,117,46,1,0,0, + 114,101,109,111,118,101,95,105,109,112,111,114,116,108,105,98, + 95,102,114,97,109,101,115,32,105,110,32,105,109,112,111,114, + 116,46,99,32,119,105,108,108,32,97,108,119,97,121,115,32, + 114,101,109,111,118,101,32,115,101,113,117,101,110,99,101,115, + 10,32,32,32,32,111,102,32,105,109,112,111,114,116,108,105, + 98,32,102,114,97,109,101,115,32,116,104,97,116,32,101,110, + 100,32,119,105,116,104,32,97,32,99,97,108,108,32,116,111, + 32,116,104,105,115,32,102,117,110,99,116,105,111,110,10,10, + 32,32,32,32,85,115,101,32,105,116,32,105,110,115,116,101, + 97,100,32,111,102,32,97,32,110,111,114,109,97,108,32,99, + 97,108,108,32,105,110,32,112,108,97,99,101,115,32,119,104, + 101,114,101,32,105,110,99,108,117,100,105,110,103,32,116,104, + 101,32,105,109,112,111,114,116,108,105,98,10,32,32,32,32, + 102,114,97,109,101,115,32,105,110,116,114,111,100,117,99,101, + 115,32,117,110,119,97,110,116,101,100,32,110,111,105,115,101, + 32,105,110,116,111,32,116,104,101,32,116,114,97,99,101,98, + 97,99,107,32,40,101,46,103,46,32,119,104,101,110,32,101, + 120,101,99,117,116,105,110,103,10,32,32,32,32,109,111,100, + 117,108,101,32,99,111,100,101,41,10,32,32,32,32,40,0, + 0,0,0,40,3,0,0,0,117,1,0,0,0,102,117,4, + 0,0,0,97,114,103,115,117,4,0,0,0,107,119,100,115, + 40,0,0,0,0,40,0,0,0,0,117,29,0,0,0,60, + 102,114,111,122,101,110,32,105,109,112,111,114,116,108,105,98, + 46,95,98,111,111,116,115,116,114,97,112,62,117,25,0,0, + 0,95,99,97,108,108,95,119,105,116,104,95,102,114,97,109, + 101,115,95,114,101,109,111,118,101,100,49,1,0,0,115,2, + 0,0,0,0,8,117,25,0,0,0,95,99,97,108,108,95, + 119,105,116,104,95,102,114,97,109,101,115,95,114,101,109,111, + 118,101,100,105,158,12,0,0,117,1,0,0,0,13,105,16, + 0,0,0,117,1,0,0,0,10,105,24,0,0,0,99,1, + 0,0,0,0,0,0,0,2,0,0,0,3,0,0,0,99, + 0,0,0,115,29,0,0,0,124,0,0,93,19,0,125,1, + 0,116,0,0,124,1,0,63,100,0,0,64,86,1,113,3, + 0,100,1,0,83,40,2,0,0,0,105,255,0,0,0,78, + 40,1,0,0,0,117,17,0,0,0,95,82,65,87,95,77, + 65,71,73,67,95,78,85,77,66,69,82,40,2,0,0,0, + 117,2,0,0,0,46,48,117,1,0,0,0,110,40,0,0, + 0,0,40,0,0,0,0,117,29,0,0,0,60,102,114,111, + 122,101,110,32,105,109,112,111,114,116,108,105,98,46,95,98, + 111,111,116,115,116,114,97,112,62,117,9,0,0,0,60,103, + 101,110,101,120,112,114,62,150,1,0,0,115,2,0,0,0, + 6,0,117,9,0,0,0,60,103,101,110,101,120,112,114,62, + 105,0,0,0,0,105,25,0,0,0,105,8,0,0,0,117, + 11,0,0,0,95,95,112,121,99,97,99,104,101,95,95,117, + 3,0,0,0,46,112,121,117,4,0,0,0,46,112,121,99, + 117,4,0,0,0,46,112,121,111,99,2,0,0,0,0,0, + 0,0,11,0,0,0,6,0,0,0,67,0,0,0,115,173, + 0,0,0,124,1,0,100,5,0,107,8,0,114,18,0,116, + 1,0,110,3,0,124,1,0,125,2,0,124,2,0,114,39, + 0,116,2,0,125,3,0,110,6,0,116,3,0,125,3,0, + 116,4,0,124,0,0,131,1,0,92,2,0,125,4,0,125, + 5,0,124,5,0,106,5,0,100,1,0,131,1,0,92,3, + 0,125,6,0,125,7,0,125,8,0,116,6,0,106,7,0, + 106,8,0,125,9,0,124,9,0,100,5,0,107,8,0,114, + 126,0,116,9,0,100,2,0,131,1,0,130,1,0,110,0, + 0,100,3,0,106,10,0,124,6,0,124,7,0,124,9,0, + 124,3,0,100,4,0,25,103,4,0,131,1,0,125,10,0, + 116,11,0,124,4,0,116,12,0,124,10,0,131,3,0,83, + 40,6,0,0,0,117,242,1,0,0,71,105,118,101,110,32, + 116,104,101,32,112,97,116,104,32,116,111,32,97,32,46,112, + 121,32,102,105,108,101,44,32,114,101,116,117,114,110,32,116, + 104,101,32,112,97,116,104,32,116,111,32,105,116,115,32,46, + 112,121,99,47,46,112,121,111,32,102,105,108,101,46,10,10, + 32,32,32,32,84,104,101,32,46,112,121,32,102,105,108,101, + 32,100,111,101,115,32,110,111,116,32,110,101,101,100,32,116, + 111,32,101,120,105,115,116,59,32,116,104,105,115,32,115,105, + 109,112,108,121,32,114,101,116,117,114,110,115,32,116,104,101, + 32,112,97,116,104,32,116,111,32,116,104,101,10,32,32,32, + 32,46,112,121,99,47,46,112,121,111,32,102,105,108,101,32, + 99,97,108,99,117,108,97,116,101,100,32,97,115,32,105,102, + 32,116,104,101,32,46,112,121,32,102,105,108,101,32,119,101, + 114,101,32,105,109,112,111,114,116,101,100,46,32,32,84,104, + 101,32,101,120,116,101,110,115,105,111,110,10,32,32,32,32, + 119,105,108,108,32,98,101,32,46,112,121,99,32,117,110,108, + 101,115,115,32,95,95,100,101,98,117,103,95,95,32,105,115, + 32,110,111,116,32,100,101,102,105,110,101,100,44,32,116,104, + 101,110,32,105,116,32,119,105,108,108,32,98,101,32,46,112, + 121,111,46,10,10,32,32,32,32,73,102,32,100,101,98,117, + 103,95,111,118,101,114,114,105,100,101,32,105,115,32,110,111, + 116,32,78,111,110,101,44,32,116,104,101,110,32,105,116,32, + 109,117,115,116,32,98,101,32,97,32,98,111,111,108,101,97, + 110,32,97,110,100,32,105,115,32,116,97,107,101,110,32,97, + 115,10,32,32,32,32,116,104,101,32,118,97,108,117,101,32, + 111,102,32,95,95,100,101,98,117,103,95,95,32,105,110,115, + 116,101,97,100,46,10,10,32,32,32,32,73,102,32,115,121, + 115,46,105,109,112,108,101,109,101,110,116,97,116,105,111,110, + 46,99,97,99,104,101,95,116,97,103,32,105,115,32,78,111, + 110,101,32,116,104,101,110,32,78,111,116,73,109,112,108,101, + 109,101,110,116,101,100,69,114,114,111,114,32,105,115,32,114, + 97,105,115,101,100,46,10,10,32,32,32,32,117,1,0,0, + 0,46,117,36,0,0,0,115,121,115,46,105,109,112,108,101, + 109,101,110,116,97,116,105,111,110,46,99,97,99,104,101,95, + 116,97,103,32,105,115,32,78,111,110,101,117,0,0,0,0, + 105,0,0,0,0,78,40,13,0,0,0,117,4,0,0,0, + 78,111,110,101,117,9,0,0,0,95,95,100,101,98,117,103, + 95,95,117,23,0,0,0,68,69,66,85,71,95,66,89,84, + 69,67,79,68,69,95,83,85,70,70,73,88,69,83,117,27, + 0,0,0,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,117,11, + 0,0,0,95,112,97,116,104,95,115,112,108,105,116,117,9, + 0,0,0,112,97,114,116,105,116,105,111,110,117,3,0,0, + 0,115,121,115,117,14,0,0,0,105,109,112,108,101,109,101, + 110,116,97,116,105,111,110,117,9,0,0,0,99,97,99,104, + 101,95,116,97,103,117,19,0,0,0,78,111,116,73,109,112, + 108,101,109,101,110,116,101,100,69,114,114,111,114,117,4,0, + 0,0,106,111,105,110,117,10,0,0,0,95,112,97,116,104, + 95,106,111,105,110,117,8,0,0,0,95,80,89,67,65,67, + 72,69,40,11,0,0,0,117,4,0,0,0,112,97,116,104, + 117,14,0,0,0,100,101,98,117,103,95,111,118,101,114,114, + 105,100,101,117,5,0,0,0,100,101,98,117,103,117,8,0, + 0,0,115,117,102,102,105,120,101,115,117,4,0,0,0,104, + 101,97,100,117,4,0,0,0,116,97,105,108,117,13,0,0, + 0,98,97,115,101,95,102,105,108,101,110,97,109,101,117,3, + 0,0,0,115,101,112,117,1,0,0,0,95,117,3,0,0, + 0,116,97,103,117,8,0,0,0,102,105,108,101,110,97,109, + 101,40,0,0,0,0,40,0,0,0,0,117,29,0,0,0, 60,102,114,111,122,101,110,32,105,109,112,111,114,116,108,105, - 98,46,95,98,111,111,116,115,116,114,97,112,62,117,19,0, - 0,0,95,108,111,99,107,95,117,110,108,111,99,107,95,109, - 111,100,117,108,101,27,1,0,0,115,14,0,0,0,0,7, - 12,1,10,1,3,1,14,1,13,3,5,2,117,19,0,0, - 0,95,108,111,99,107,95,117,110,108,111,99,107,95,109,111, - 100,117,108,101,99,1,0,0,0,0,0,0,0,3,0,0, - 0,3,0,0,0,79,0,0,0,115,13,0,0,0,124,0, - 0,124,1,0,124,2,0,142,0,0,83,40,1,0,0,0, - 117,46,1,0,0,114,101,109,111,118,101,95,105,109,112,111, - 114,116,108,105,98,95,102,114,97,109,101,115,32,105,110,32, - 105,109,112,111,114,116,46,99,32,119,105,108,108,32,97,108, - 119,97,121,115,32,114,101,109,111,118,101,32,115,101,113,117, - 101,110,99,101,115,10,32,32,32,32,111,102,32,105,109,112, - 111,114,116,108,105,98,32,102,114,97,109,101,115,32,116,104, - 97,116,32,101,110,100,32,119,105,116,104,32,97,32,99,97, - 108,108,32,116,111,32,116,104,105,115,32,102,117,110,99,116, - 105,111,110,10,10,32,32,32,32,85,115,101,32,105,116,32, - 105,110,115,116,101,97,100,32,111,102,32,97,32,110,111,114, - 109,97,108,32,99,97,108,108,32,105,110,32,112,108,97,99, - 101,115,32,119,104,101,114,101,32,105,110,99,108,117,100,105, - 110,103,32,116,104,101,32,105,109,112,111,114,116,108,105,98, - 10,32,32,32,32,102,114,97,109,101,115,32,105,110,116,114, - 111,100,117,99,101,115,32,117,110,119,97,110,116,101,100,32, - 110,111,105,115,101,32,105,110,116,111,32,116,104,101,32,116, - 114,97,99,101,98,97,99,107,32,40,101,46,103,46,32,119, - 104,101,110,32,101,120,101,99,117,116,105,110,103,10,32,32, - 32,32,109,111,100,117,108,101,32,99,111,100,101,41,10,32, - 32,32,32,40,0,0,0,0,40,3,0,0,0,117,1,0, - 0,0,102,117,4,0,0,0,97,114,103,115,117,4,0,0, - 0,107,119,100,115,40,0,0,0,0,40,0,0,0,0,117, - 29,0,0,0,60,102,114,111,122,101,110,32,105,109,112,111, - 114,116,108,105,98,46,95,98,111,111,116,115,116,114,97,112, - 62,117,25,0,0,0,95,99,97,108,108,95,119,105,116,104, - 95,102,114,97,109,101,115,95,114,101,109,111,118,101,100,47, - 1,0,0,115,2,0,0,0,0,8,117,25,0,0,0,95, - 99,97,108,108,95,119,105,116,104,95,102,114,97,109,101,115, - 95,114,101,109,111,118,101,100,105,158,12,0,0,117,1,0, - 0,0,13,105,16,0,0,0,117,1,0,0,0,10,105,24, - 0,0,0,99,1,0,0,0,0,0,0,0,2,0,0,0, - 3,0,0,0,99,0,0,0,115,29,0,0,0,124,0,0, - 93,19,0,125,1,0,116,0,0,124,1,0,63,100,0,0, - 64,86,1,113,3,0,100,1,0,83,40,2,0,0,0,105, - 255,0,0,0,78,40,1,0,0,0,117,17,0,0,0,95, - 82,65,87,95,77,65,71,73,67,95,78,85,77,66,69,82, - 40,2,0,0,0,117,2,0,0,0,46,48,117,1,0,0, - 0,110,40,0,0,0,0,40,0,0,0,0,117,29,0,0, - 0,60,102,114,111,122,101,110,32,105,109,112,111,114,116,108, - 105,98,46,95,98,111,111,116,115,116,114,97,112,62,117,9, - 0,0,0,60,103,101,110,101,120,112,114,62,148,1,0,0, - 115,2,0,0,0,6,0,117,9,0,0,0,60,103,101,110, - 101,120,112,114,62,105,0,0,0,0,105,25,0,0,0,105, - 8,0,0,0,117,11,0,0,0,95,95,112,121,99,97,99, - 104,101,95,95,117,3,0,0,0,46,112,121,117,4,0,0, - 0,46,112,121,99,117,4,0,0,0,46,112,121,111,99,2, - 0,0,0,0,0,0,0,11,0,0,0,6,0,0,0,67, - 0,0,0,115,173,0,0,0,124,1,0,100,5,0,107,8, - 0,114,18,0,116,1,0,110,3,0,124,1,0,125,2,0, - 124,2,0,114,39,0,116,2,0,125,3,0,110,6,0,116, - 3,0,125,3,0,116,4,0,124,0,0,131,1,0,92,2, - 0,125,4,0,125,5,0,124,5,0,106,5,0,100,1,0, - 131,1,0,92,3,0,125,6,0,125,7,0,125,8,0,116, - 6,0,106,7,0,106,8,0,125,9,0,124,9,0,100,5, - 0,107,8,0,114,126,0,116,9,0,100,2,0,131,1,0, - 130,1,0,110,0,0,100,3,0,106,10,0,124,6,0,124, - 7,0,124,9,0,124,3,0,100,4,0,25,103,4,0,131, - 1,0,125,10,0,116,11,0,124,4,0,116,12,0,124,10, - 0,131,3,0,83,40,6,0,0,0,117,242,1,0,0,71, - 105,118,101,110,32,116,104,101,32,112,97,116,104,32,116,111, - 32,97,32,46,112,121,32,102,105,108,101,44,32,114,101,116, - 117,114,110,32,116,104,101,32,112,97,116,104,32,116,111,32, - 105,116,115,32,46,112,121,99,47,46,112,121,111,32,102,105, - 108,101,46,10,10,32,32,32,32,84,104,101,32,46,112,121, - 32,102,105,108,101,32,100,111,101,115,32,110,111,116,32,110, - 101,101,100,32,116,111,32,101,120,105,115,116,59,32,116,104, - 105,115,32,115,105,109,112,108,121,32,114,101,116,117,114,110, - 115,32,116,104,101,32,112,97,116,104,32,116,111,32,116,104, - 101,10,32,32,32,32,46,112,121,99,47,46,112,121,111,32, - 102,105,108,101,32,99,97,108,99,117,108,97,116,101,100,32, - 97,115,32,105,102,32,116,104,101,32,46,112,121,32,102,105, - 108,101,32,119,101,114,101,32,105,109,112,111,114,116,101,100, - 46,32,32,84,104,101,32,101,120,116,101,110,115,105,111,110, - 10,32,32,32,32,119,105,108,108,32,98,101,32,46,112,121, - 99,32,117,110,108,101,115,115,32,95,95,100,101,98,117,103, - 95,95,32,105,115,32,110,111,116,32,100,101,102,105,110,101, - 100,44,32,116,104,101,110,32,105,116,32,119,105,108,108,32, - 98,101,32,46,112,121,111,46,10,10,32,32,32,32,73,102, - 32,100,101,98,117,103,95,111,118,101,114,114,105,100,101,32, - 105,115,32,110,111,116,32,78,111,110,101,44,32,116,104,101, - 110,32,105,116,32,109,117,115,116,32,98,101,32,97,32,98, - 111,111,108,101,97,110,32,97,110,100,32,105,115,32,116,97, - 107,101,110,32,97,115,10,32,32,32,32,116,104,101,32,118, - 97,108,117,101,32,111,102,32,95,95,100,101,98,117,103,95, - 95,32,105,110,115,116,101,97,100,46,10,10,32,32,32,32, - 73,102,32,115,121,115,46,105,109,112,108,101,109,101,110,116, - 97,116,105,111,110,46,99,97,99,104,101,95,116,97,103,32, - 105,115,32,78,111,110,101,32,116,104,101,110,32,78,111,116, - 73,109,112,108,101,109,101,110,116,101,100,69,114,114,111,114, - 32,105,115,32,114,97,105,115,101,100,46,10,10,32,32,32, - 32,117,1,0,0,0,46,117,36,0,0,0,115,121,115,46, - 105,109,112,108,101,109,101,110,116,97,116,105,111,110,46,99, - 97,99,104,101,95,116,97,103,32,105,115,32,78,111,110,101, - 117,0,0,0,0,105,0,0,0,0,78,40,13,0,0,0, - 117,4,0,0,0,78,111,110,101,117,9,0,0,0,95,95, - 100,101,98,117,103,95,95,117,23,0,0,0,68,69,66,85, - 71,95,66,89,84,69,67,79,68,69,95,83,85,70,70,73, - 88,69,83,117,27,0,0,0,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,117,11,0,0,0,95,112,97,116,104,95,115,112, - 108,105,116,117,9,0,0,0,112,97,114,116,105,116,105,111, - 110,117,3,0,0,0,115,121,115,117,14,0,0,0,105,109, - 112,108,101,109,101,110,116,97,116,105,111,110,117,9,0,0, - 0,99,97,99,104,101,95,116,97,103,117,19,0,0,0,78, - 111,116,73,109,112,108,101,109,101,110,116,101,100,69,114,114, - 111,114,117,4,0,0,0,106,111,105,110,117,10,0,0,0, - 95,112,97,116,104,95,106,111,105,110,117,8,0,0,0,95, - 80,89,67,65,67,72,69,40,11,0,0,0,117,4,0,0, - 0,112,97,116,104,117,14,0,0,0,100,101,98,117,103,95, - 111,118,101,114,114,105,100,101,117,5,0,0,0,100,101,98, - 117,103,117,8,0,0,0,115,117,102,102,105,120,101,115,117, - 4,0,0,0,104,101,97,100,117,4,0,0,0,116,97,105, - 108,117,13,0,0,0,98,97,115,101,95,102,105,108,101,110, - 97,109,101,117,3,0,0,0,115,101,112,117,1,0,0,0, - 95,117,3,0,0,0,116,97,103,117,8,0,0,0,102,105, + 98,46,95,98,111,111,116,115,116,114,97,112,62,117,17,0, + 0,0,99,97,99,104,101,95,102,114,111,109,95,115,111,117, + 114,99,101,163,1,0,0,115,22,0,0,0,0,13,24,1, + 6,1,9,2,6,1,18,1,24,1,12,1,12,1,15,1, + 31,1,117,17,0,0,0,99,97,99,104,101,95,102,114,111, + 109,95,115,111,117,114,99,101,99,1,0,0,0,0,0,0, + 0,5,0,0,0,5,0,0,0,67,0,0,0,115,193,0, + 0,0,116,0,0,106,1,0,106,2,0,100,7,0,107,8, + 0,114,33,0,116,4,0,100,1,0,131,1,0,130,1,0, + 110,0,0,116,5,0,124,0,0,131,1,0,92,2,0,125, + 1,0,125,2,0,116,5,0,124,1,0,131,1,0,92,2, + 0,125,1,0,125,3,0,124,3,0,116,6,0,107,3,0, + 114,108,0,116,7,0,100,2,0,106,8,0,116,6,0,124, + 0,0,131,2,0,131,1,0,130,1,0,110,0,0,124,2, + 0,106,9,0,100,3,0,131,1,0,100,4,0,107,3,0, + 114,153,0,116,7,0,100,5,0,106,8,0,124,2,0,131, + 1,0,131,1,0,130,1,0,110,0,0,124,2,0,106,10, + 0,100,3,0,131,1,0,100,6,0,25,125,4,0,116,11, + 0,124,1,0,124,4,0,116,12,0,100,6,0,25,23,131, + 2,0,83,40,8,0,0,0,117,121,1,0,0,71,105,118, + 101,110,32,116,104,101,32,112,97,116,104,32,116,111,32,97, + 32,46,112,121,99,46,47,46,112,121,111,32,102,105,108,101, + 44,32,114,101,116,117,114,110,32,116,104,101,32,112,97,116, + 104,32,116,111,32,105,116,115,32,46,112,121,32,102,105,108, + 101,46,10,10,32,32,32,32,84,104,101,32,46,112,121,99, + 47,46,112,121,111,32,102,105,108,101,32,100,111,101,115,32, + 110,111,116,32,110,101,101,100,32,116,111,32,101,120,105,115, + 116,59,32,116,104,105,115,32,115,105,109,112,108,121,32,114, + 101,116,117,114,110,115,32,116,104,101,32,112,97,116,104,32, + 116,111,10,32,32,32,32,116,104,101,32,46,112,121,32,102, + 105,108,101,32,99,97,108,99,117,108,97,116,101,100,32,116, + 111,32,99,111,114,114,101,115,112,111,110,100,32,116,111,32, + 116,104,101,32,46,112,121,99,47,46,112,121,111,32,102,105, + 108,101,46,32,32,73,102,32,112,97,116,104,32,100,111,101, + 115,10,32,32,32,32,110,111,116,32,99,111,110,102,111,114, + 109,32,116,111,32,80,69,80,32,51,49,52,55,32,102,111, + 114,109,97,116,44,32,86,97,108,117,101,69,114,114,111,114, + 32,119,105,108,108,32,98,101,32,114,97,105,115,101,100,46, + 32,73,102,10,32,32,32,32,115,121,115,46,105,109,112,108, + 101,109,101,110,116,97,116,105,111,110,46,99,97,99,104,101, + 95,116,97,103,32,105,115,32,78,111,110,101,32,116,104,101, + 110,32,78,111,116,73,109,112,108,101,109,101,110,116,101,100, + 69,114,114,111,114,32,105,115,32,114,97,105,115,101,100,46, + 10,10,32,32,32,32,117,36,0,0,0,115,121,115,46,105, + 109,112,108,101,109,101,110,116,97,116,105,111,110,46,99,97, + 99,104,101,95,116,97,103,32,105,115,32,78,111,110,101,117, + 37,0,0,0,123,125,32,110,111,116,32,98,111,116,116,111, + 109,45,108,101,118,101,108,32,100,105,114,101,99,116,111,114, + 121,32,105,110,32,123,33,114,125,117,1,0,0,0,46,105, + 2,0,0,0,117,28,0,0,0,101,120,112,101,99,116,101, + 100,32,111,110,108,121,32,50,32,100,111,116,115,32,105,110, + 32,123,33,114,125,105,0,0,0,0,78,40,13,0,0,0, + 117,3,0,0,0,115,121,115,117,14,0,0,0,105,109,112, + 108,101,109,101,110,116,97,116,105,111,110,117,9,0,0,0, + 99,97,99,104,101,95,116,97,103,117,4,0,0,0,78,111, + 110,101,117,19,0,0,0,78,111,116,73,109,112,108,101,109, + 101,110,116,101,100,69,114,114,111,114,117,11,0,0,0,95, + 112,97,116,104,95,115,112,108,105,116,117,8,0,0,0,95, + 80,89,67,65,67,72,69,117,10,0,0,0,86,97,108,117, + 101,69,114,114,111,114,117,6,0,0,0,102,111,114,109,97, + 116,117,5,0,0,0,99,111,117,110,116,117,9,0,0,0, + 112,97,114,116,105,116,105,111,110,117,10,0,0,0,95,112, + 97,116,104,95,106,111,105,110,117,15,0,0,0,83,79,85, + 82,67,69,95,83,85,70,70,73,88,69,83,40,5,0,0, + 0,117,4,0,0,0,112,97,116,104,117,4,0,0,0,104, + 101,97,100,117,16,0,0,0,112,121,99,97,99,104,101,95, + 102,105,108,101,110,97,109,101,117,7,0,0,0,112,121,99, + 97,99,104,101,117,13,0,0,0,98,97,115,101,95,102,105, 108,101,110,97,109,101,40,0,0,0,0,40,0,0,0,0, 117,29,0,0,0,60,102,114,111,122,101,110,32,105,109,112, 111,114,116,108,105,98,46,95,98,111,111,116,115,116,114,97, - 112,62,117,17,0,0,0,99,97,99,104,101,95,102,114,111, - 109,95,115,111,117,114,99,101,161,1,0,0,115,22,0,0, - 0,0,13,24,1,6,1,9,2,6,1,18,1,24,1,12, - 1,12,1,15,1,31,1,117,17,0,0,0,99,97,99,104, - 101,95,102,114,111,109,95,115,111,117,114,99,101,99,1,0, - 0,0,0,0,0,0,5,0,0,0,5,0,0,0,67,0, - 0,0,115,193,0,0,0,116,0,0,106,1,0,106,2,0, - 100,7,0,107,8,0,114,33,0,116,4,0,100,1,0,131, - 1,0,130,1,0,110,0,0,116,5,0,124,0,0,131,1, - 0,92,2,0,125,1,0,125,2,0,116,5,0,124,1,0, - 131,1,0,92,2,0,125,1,0,125,3,0,124,3,0,116, - 6,0,107,3,0,114,108,0,116,7,0,100,2,0,106,8, - 0,116,6,0,124,0,0,131,2,0,131,1,0,130,1,0, - 110,0,0,124,2,0,106,9,0,100,3,0,131,1,0,100, - 4,0,107,3,0,114,153,0,116,7,0,100,5,0,106,8, - 0,124,2,0,131,1,0,131,1,0,130,1,0,110,0,0, - 124,2,0,106,10,0,100,3,0,131,1,0,100,6,0,25, - 125,4,0,116,11,0,124,1,0,124,4,0,116,12,0,100, - 6,0,25,23,131,2,0,83,40,8,0,0,0,117,121,1, - 0,0,71,105,118,101,110,32,116,104,101,32,112,97,116,104, - 32,116,111,32,97,32,46,112,121,99,46,47,46,112,121,111, - 32,102,105,108,101,44,32,114,101,116,117,114,110,32,116,104, - 101,32,112,97,116,104,32,116,111,32,105,116,115,32,46,112, - 121,32,102,105,108,101,46,10,10,32,32,32,32,84,104,101, - 32,46,112,121,99,47,46,112,121,111,32,102,105,108,101,32, - 100,111,101,115,32,110,111,116,32,110,101,101,100,32,116,111, - 32,101,120,105,115,116,59,32,116,104,105,115,32,115,105,109, - 112,108,121,32,114,101,116,117,114,110,115,32,116,104,101,32, - 112,97,116,104,32,116,111,10,32,32,32,32,116,104,101,32, - 46,112,121,32,102,105,108,101,32,99,97,108,99,117,108,97, - 116,101,100,32,116,111,32,99,111,114,114,101,115,112,111,110, - 100,32,116,111,32,116,104,101,32,46,112,121,99,47,46,112, - 121,111,32,102,105,108,101,46,32,32,73,102,32,112,97,116, - 104,32,100,111,101,115,10,32,32,32,32,110,111,116,32,99, - 111,110,102,111,114,109,32,116,111,32,80,69,80,32,51,49, - 52,55,32,102,111,114,109,97,116,44,32,86,97,108,117,101, - 69,114,114,111,114,32,119,105,108,108,32,98,101,32,114,97, - 105,115,101,100,46,32,73,102,10,32,32,32,32,115,121,115, - 46,105,109,112,108,101,109,101,110,116,97,116,105,111,110,46, - 99,97,99,104,101,95,116,97,103,32,105,115,32,78,111,110, - 101,32,116,104,101,110,32,78,111,116,73,109,112,108,101,109, - 101,110,116,101,100,69,114,114,111,114,32,105,115,32,114,97, - 105,115,101,100,46,10,10,32,32,32,32,117,36,0,0,0, - 115,121,115,46,105,109,112,108,101,109,101,110,116,97,116,105, - 111,110,46,99,97,99,104,101,95,116,97,103,32,105,115,32, - 78,111,110,101,117,37,0,0,0,123,125,32,110,111,116,32, - 98,111,116,116,111,109,45,108,101,118,101,108,32,100,105,114, - 101,99,116,111,114,121,32,105,110,32,123,33,114,125,117,1, - 0,0,0,46,105,2,0,0,0,117,28,0,0,0,101,120, - 112,101,99,116,101,100,32,111,110,108,121,32,50,32,100,111, - 116,115,32,105,110,32,123,33,114,125,105,0,0,0,0,78, - 40,13,0,0,0,117,3,0,0,0,115,121,115,117,14,0, - 0,0,105,109,112,108,101,109,101,110,116,97,116,105,111,110, - 117,9,0,0,0,99,97,99,104,101,95,116,97,103,117,4, - 0,0,0,78,111,110,101,117,19,0,0,0,78,111,116,73, - 109,112,108,101,109,101,110,116,101,100,69,114,114,111,114,117, - 11,0,0,0,95,112,97,116,104,95,115,112,108,105,116,117, - 8,0,0,0,95,80,89,67,65,67,72,69,117,10,0,0, - 0,86,97,108,117,101,69,114,114,111,114,117,6,0,0,0, - 102,111,114,109,97,116,117,5,0,0,0,99,111,117,110,116, - 117,9,0,0,0,112,97,114,116,105,116,105,111,110,117,10, - 0,0,0,95,112,97,116,104,95,106,111,105,110,117,15,0, - 0,0,83,79,85,82,67,69,95,83,85,70,70,73,88,69, - 83,40,5,0,0,0,117,4,0,0,0,112,97,116,104,117, - 4,0,0,0,104,101,97,100,117,16,0,0,0,112,121,99, - 97,99,104,101,95,102,105,108,101,110,97,109,101,117,7,0, - 0,0,112,121,99,97,99,104,101,117,13,0,0,0,98,97, - 115,101,95,102,105,108,101,110,97,109,101,40,0,0,0,0, - 40,0,0,0,0,117,29,0,0,0,60,102,114,111,122,101, - 110,32,105,109,112,111,114,116,108,105,98,46,95,98,111,111, - 116,115,116,114,97,112,62,117,17,0,0,0,115,111,117,114, - 99,101,95,102,114,111,109,95,99,97,99,104,101,188,1,0, - 0,115,24,0,0,0,0,9,18,1,15,1,18,1,18,1, - 12,1,9,1,18,1,21,1,9,1,15,1,19,1,117,17, + 112,62,117,17,0,0,0,115,111,117,114,99,101,95,102,114, + 111,109,95,99,97,99,104,101,190,1,0,0,115,24,0,0, + 0,0,9,18,1,15,1,18,1,18,1,12,1,9,1,18, + 1,21,1,9,1,15,1,19,1,117,17,0,0,0,115,111, + 117,114,99,101,95,102,114,111,109,95,99,97,99,104,101,99, + 1,0,0,0,0,0,0,0,5,0,0,0,13,0,0,0, + 67,0,0,0,115,164,0,0,0,116,0,0,124,0,0,131, + 1,0,100,1,0,107,2,0,114,22,0,100,6,0,83,124, + 0,0,106,2,0,100,2,0,131,1,0,92,3,0,125,1, + 0,125,2,0,125,3,0,124,1,0,12,115,81,0,124,3, + 0,106,3,0,131,0,0,100,7,0,100,8,0,133,2,0, + 25,100,5,0,107,3,0,114,85,0,124,0,0,83,121,16, + 0,116,4,0,124,0,0,131,1,0,125,4,0,87,110,40, + 0,4,116,5,0,116,6,0,102,2,0,107,10,0,114,143, + 0,1,1,1,116,7,0,100,9,0,100,6,0,133,2,0, + 25,125,4,0,89,110,1,0,88,116,8,0,116,9,0,131, + 1,0,114,160,0,124,4,0,83,124,0,0,83,40,10,0, + 0,0,117,188,0,0,0,67,111,110,118,101,114,116,32,97, + 32,98,121,116,101,99,111,100,101,32,102,105,108,101,32,112, + 97,116,104,32,116,111,32,97,32,115,111,117,114,99,101,32, + 112,97,116,104,32,40,105,102,32,112,111,115,115,105,98,108, + 101,41,46,10,10,32,32,32,32,84,104,105,115,32,102,117, + 110,99,116,105,111,110,32,101,120,105,115,116,115,32,112,117, + 114,101,108,121,32,102,111,114,32,98,97,99,107,119,97,114, + 100,115,45,99,111,109,112,97,116,105,98,105,108,105,116,121, + 32,102,111,114,10,32,32,32,32,80,121,73,109,112,111,114, + 116,95,69,120,101,99,67,111,100,101,77,111,100,117,108,101, + 87,105,116,104,70,105,108,101,110,97,109,101,115,40,41,32, + 105,110,32,116,104,101,32,67,32,65,80,73,46,10,10,32, + 32,32,32,105,0,0,0,0,117,1,0,0,0,46,105,3, + 0,0,0,105,1,0,0,0,117,3,0,0,0,46,112,121, + 78,105,253,255,255,255,105,255,255,255,255,105,255,255,255,255, + 40,10,0,0,0,117,3,0,0,0,108,101,110,117,4,0, + 0,0,78,111,110,101,117,9,0,0,0,114,112,97,114,105, + 116,105,111,110,117,5,0,0,0,108,111,119,101,114,117,17, 0,0,0,115,111,117,114,99,101,95,102,114,111,109,95,99, - 97,99,104,101,99,1,0,0,0,0,0,0,0,5,0,0, - 0,13,0,0,0,67,0,0,0,115,164,0,0,0,116,0, - 0,124,0,0,131,1,0,100,1,0,107,2,0,114,22,0, - 100,6,0,83,124,0,0,106,2,0,100,2,0,131,1,0, - 92,3,0,125,1,0,125,2,0,125,3,0,124,1,0,12, - 115,81,0,124,3,0,106,3,0,131,0,0,100,7,0,100, - 8,0,133,2,0,25,100,5,0,107,3,0,114,85,0,124, - 0,0,83,121,16,0,116,4,0,124,0,0,131,1,0,125, - 4,0,87,110,40,0,4,116,5,0,116,6,0,102,2,0, - 107,10,0,114,143,0,1,1,1,116,7,0,100,9,0,100, - 6,0,133,2,0,25,125,4,0,89,110,1,0,88,116,8, - 0,116,9,0,131,1,0,114,160,0,124,4,0,83,124,0, - 0,83,40,10,0,0,0,117,188,0,0,0,67,111,110,118, - 101,114,116,32,97,32,98,121,116,101,99,111,100,101,32,102, - 105,108,101,32,112,97,116,104,32,116,111,32,97,32,115,111, - 117,114,99,101,32,112,97,116,104,32,40,105,102,32,112,111, - 115,115,105,98,108,101,41,46,10,10,32,32,32,32,84,104, - 105,115,32,102,117,110,99,116,105,111,110,32,101,120,105,115, - 116,115,32,112,117,114,101,108,121,32,102,111,114,32,98,97, - 99,107,119,97,114,100,115,45,99,111,109,112,97,116,105,98, - 105,108,105,116,121,32,102,111,114,10,32,32,32,32,80,121, - 73,109,112,111,114,116,95,69,120,101,99,67,111,100,101,77, - 111,100,117,108,101,87,105,116,104,70,105,108,101,110,97,109, - 101,115,40,41,32,105,110,32,116,104,101,32,67,32,65,80, - 73,46,10,10,32,32,32,32,105,0,0,0,0,117,1,0, - 0,0,46,105,3,0,0,0,105,1,0,0,0,117,3,0, - 0,0,46,112,121,78,105,253,255,255,255,105,255,255,255,255, - 105,255,255,255,255,40,10,0,0,0,117,3,0,0,0,108, - 101,110,117,4,0,0,0,78,111,110,101,117,9,0,0,0, - 114,112,97,114,105,116,105,111,110,117,5,0,0,0,108,111, - 119,101,114,117,17,0,0,0,115,111,117,114,99,101,95,102, - 114,111,109,95,99,97,99,104,101,117,19,0,0,0,78,111, - 116,73,109,112,108,101,109,101,110,116,101,100,69,114,114,111, - 114,117,10,0,0,0,86,97,108,117,101,69,114,114,111,114, - 117,12,0,0,0,98,121,116,99,111,100,101,95,112,97,116, - 104,117,12,0,0,0,95,112,97,116,104,95,105,115,102,105, - 108,101,117,12,0,0,0,115,111,117,114,99,101,95,115,116, - 97,116,115,40,5,0,0,0,117,13,0,0,0,98,121,116, - 101,99,111,100,101,95,112,97,116,104,117,4,0,0,0,114, - 101,115,116,117,1,0,0,0,95,117,9,0,0,0,101,120, - 116,101,110,115,105,111,110,117,11,0,0,0,115,111,117,114, - 99,101,95,112,97,116,104,40,0,0,0,0,40,0,0,0, - 0,117,29,0,0,0,60,102,114,111,122,101,110,32,105,109, - 112,111,114,116,108,105,98,46,95,98,111,111,116,115,116,114, - 97,112,62,117,15,0,0,0,95,103,101,116,95,115,111,117, - 114,99,101,102,105,108,101,211,1,0,0,115,20,0,0,0, - 0,7,18,1,4,1,24,1,35,1,4,2,3,1,16,1, - 19,1,21,2,117,15,0,0,0,95,103,101,116,95,115,111, - 117,114,99,101,102,105,108,101,99,1,0,0,0,0,0,0, - 0,2,0,0,0,4,0,0,0,71,0,0,0,115,75,0, - 0,0,116,0,0,106,1,0,106,2,0,114,71,0,124,0, - 0,106,3,0,100,6,0,131,1,0,115,40,0,100,3,0, - 124,0,0,23,125,0,0,110,0,0,116,4,0,124,0,0, - 106,5,0,124,1,0,140,0,0,100,4,0,116,0,0,106, - 6,0,131,1,1,1,110,0,0,100,5,0,83,40,7,0, - 0,0,117,61,0,0,0,80,114,105,110,116,32,116,104,101, - 32,109,101,115,115,97,103,101,32,116,111,32,115,116,100,101, - 114,114,32,105,102,32,45,118,47,80,89,84,72,79,78,86, - 69,82,66,79,83,69,32,105,115,32,116,117,114,110,101,100, - 32,111,110,46,117,1,0,0,0,35,117,7,0,0,0,105, - 109,112,111,114,116,32,117,2,0,0,0,35,32,117,4,0, - 0,0,102,105,108,101,78,40,2,0,0,0,117,1,0,0, - 0,35,117,7,0,0,0,105,109,112,111,114,116,32,40,7, - 0,0,0,117,3,0,0,0,115,121,115,117,5,0,0,0, - 102,108,97,103,115,117,7,0,0,0,118,101,114,98,111,115, - 101,117,10,0,0,0,115,116,97,114,116,115,119,105,116,104, - 117,5,0,0,0,112,114,105,110,116,117,6,0,0,0,102, - 111,114,109,97,116,117,6,0,0,0,115,116,100,101,114,114, - 40,2,0,0,0,117,7,0,0,0,109,101,115,115,97,103, - 101,117,4,0,0,0,97,114,103,115,40,0,0,0,0,40, - 0,0,0,0,117,29,0,0,0,60,102,114,111,122,101,110, - 32,105,109,112,111,114,116,108,105,98,46,95,98,111,111,116, - 115,116,114,97,112,62,117,16,0,0,0,95,118,101,114,98, - 111,115,101,95,109,101,115,115,97,103,101,232,1,0,0,115, - 8,0,0,0,0,2,12,1,15,1,13,1,117,16,0,0, - 0,95,118,101,114,98,111,115,101,95,109,101,115,115,97,103, - 101,99,1,0,0,0,0,0,0,0,2,0,0,0,3,0, - 0,0,3,0,0,0,115,35,0,0,0,135,0,0,102,1, - 0,100,1,0,100,2,0,134,0,0,125,1,0,116,0,0, - 124,1,0,136,0,0,131,2,0,1,124,1,0,83,40,3, - 0,0,0,117,39,0,0,0,83,101,116,32,95,95,112,97, - 99,107,97,103,101,95,95,32,111,110,32,116,104,101,32,114, - 101,116,117,114,110,101,100,32,109,111,100,117,108,101,46,99, - 0,0,0,0,0,0,0,0,3,0,0,0,4,0,0,0, - 31,0,0,0,115,101,0,0,0,136,0,0,124,0,0,124, - 1,0,142,0,0,125,2,0,116,0,0,124,2,0,100,1, - 0,100,0,0,131,3,0,100,0,0,107,8,0,114,97,0, - 124,2,0,106,2,0,124,2,0,95,3,0,116,4,0,124, - 2,0,100,2,0,131,2,0,115,97,0,124,2,0,106,3, - 0,106,5,0,100,3,0,131,1,0,100,4,0,25,124,2, - 0,95,3,0,113,97,0,110,0,0,124,2,0,83,40,5, - 0,0,0,78,117,11,0,0,0,95,95,112,97,99,107,97, - 103,101,95,95,117,8,0,0,0,95,95,112,97,116,104,95, - 95,117,1,0,0,0,46,105,0,0,0,0,40,6,0,0, - 0,117,7,0,0,0,103,101,116,97,116,116,114,117,4,0, - 0,0,78,111,110,101,117,8,0,0,0,95,95,110,97,109, - 101,95,95,117,11,0,0,0,95,95,112,97,99,107,97,103, - 101,95,95,117,7,0,0,0,104,97,115,97,116,116,114,117, - 10,0,0,0,114,112,97,114,116,105,116,105,111,110,40,3, - 0,0,0,117,4,0,0,0,97,114,103,115,117,6,0,0, - 0,107,119,97,114,103,115,117,6,0,0,0,109,111,100,117, - 108,101,40,1,0,0,0,117,3,0,0,0,102,120,110,40, - 0,0,0,0,117,29,0,0,0,60,102,114,111,122,101,110, - 32,105,109,112,111,114,116,108,105,98,46,95,98,111,111,116, - 115,116,114,97,112,62,117,19,0,0,0,115,101,116,95,112, - 97,99,107,97,103,101,95,119,114,97,112,112,101,114,242,1, - 0,0,115,12,0,0,0,0,1,15,1,24,1,12,1,15, - 1,31,1,117,40,0,0,0,115,101,116,95,112,97,99,107, - 97,103,101,46,60,108,111,99,97,108,115,62,46,115,101,116, - 95,112,97,99,107,97,103,101,95,119,114,97,112,112,101,114, - 40,1,0,0,0,117,5,0,0,0,95,119,114,97,112,40, - 2,0,0,0,117,3,0,0,0,102,120,110,117,19,0,0, - 0,115,101,116,95,112,97,99,107,97,103,101,95,119,114,97, - 112,112,101,114,40,0,0,0,0,40,1,0,0,0,117,3, - 0,0,0,102,120,110,117,29,0,0,0,60,102,114,111,122, - 101,110,32,105,109,112,111,114,116,108,105,98,46,95,98,111, - 111,116,115,116,114,97,112,62,117,11,0,0,0,115,101,116, - 95,112,97,99,107,97,103,101,240,1,0,0,115,6,0,0, - 0,0,2,18,7,13,1,117,11,0,0,0,115,101,116,95, - 112,97,99,107,97,103,101,99,1,0,0,0,0,0,0,0, - 2,0,0,0,3,0,0,0,3,0,0,0,115,35,0,0, - 0,135,0,0,102,1,0,100,1,0,100,2,0,134,0,0, - 125,1,0,116,0,0,124,1,0,136,0,0,131,2,0,1, - 124,1,0,83,40,3,0,0,0,117,38,0,0,0,83,101, - 116,32,95,95,108,111,97,100,101,114,95,95,32,111,110,32, - 116,104,101,32,114,101,116,117,114,110,101,100,32,109,111,100, - 117,108,101,46,99,1,0,0,0,0,0,0,0,4,0,0, - 0,4,0,0,0,31,0,0,0,115,49,0,0,0,136,0, - 0,124,0,0,124,1,0,124,2,0,142,1,0,125,3,0, - 116,0,0,124,3,0,100,1,0,131,2,0,115,45,0,124, - 0,0,124,3,0,95,1,0,110,0,0,124,3,0,83,40, - 2,0,0,0,78,117,10,0,0,0,95,95,108,111,97,100, - 101,114,95,95,40,2,0,0,0,117,7,0,0,0,104,97, - 115,97,116,116,114,117,10,0,0,0,95,95,108,111,97,100, - 101,114,95,95,40,4,0,0,0,117,4,0,0,0,115,101, - 108,102,117,4,0,0,0,97,114,103,115,117,6,0,0,0, - 107,119,97,114,103,115,117,6,0,0,0,109,111,100,117,108, - 101,40,1,0,0,0,117,3,0,0,0,102,120,110,40,0, - 0,0,0,117,29,0,0,0,60,102,114,111,122,101,110,32, - 105,109,112,111,114,116,108,105,98,46,95,98,111,111,116,115, - 116,114,97,112,62,117,18,0,0,0,115,101,116,95,108,111, - 97,100,101,114,95,119,114,97,112,112,101,114,255,1,0,0, - 115,8,0,0,0,0,1,18,1,15,1,12,1,117,38,0, - 0,0,115,101,116,95,108,111,97,100,101,114,46,60,108,111, - 99,97,108,115,62,46,115,101,116,95,108,111,97,100,101,114, - 95,119,114,97,112,112,101,114,40,1,0,0,0,117,5,0, - 0,0,95,119,114,97,112,40,2,0,0,0,117,3,0,0, - 0,102,120,110,117,18,0,0,0,115,101,116,95,108,111,97, - 100,101,114,95,119,114,97,112,112,101,114,40,0,0,0,0, - 40,1,0,0,0,117,3,0,0,0,102,120,110,117,29,0, - 0,0,60,102,114,111,122,101,110,32,105,109,112,111,114,116, - 108,105,98,46,95,98,111,111,116,115,116,114,97,112,62,117, - 10,0,0,0,115,101,116,95,108,111,97,100,101,114,253,1, - 0,0,115,6,0,0,0,0,2,18,5,13,1,117,10,0, - 0,0,115,101,116,95,108,111,97,100,101,114,99,1,0,0, + 97,99,104,101,117,19,0,0,0,78,111,116,73,109,112,108, + 101,109,101,110,116,101,100,69,114,114,111,114,117,10,0,0, + 0,86,97,108,117,101,69,114,114,111,114,117,12,0,0,0, + 98,121,116,99,111,100,101,95,112,97,116,104,117,12,0,0, + 0,95,112,97,116,104,95,105,115,102,105,108,101,117,12,0, + 0,0,115,111,117,114,99,101,95,115,116,97,116,115,40,5, + 0,0,0,117,13,0,0,0,98,121,116,101,99,111,100,101, + 95,112,97,116,104,117,4,0,0,0,114,101,115,116,117,1, + 0,0,0,95,117,9,0,0,0,101,120,116,101,110,115,105, + 111,110,117,11,0,0,0,115,111,117,114,99,101,95,112,97, + 116,104,40,0,0,0,0,40,0,0,0,0,117,29,0,0, + 0,60,102,114,111,122,101,110,32,105,109,112,111,114,116,108, + 105,98,46,95,98,111,111,116,115,116,114,97,112,62,117,15, + 0,0,0,95,103,101,116,95,115,111,117,114,99,101,102,105, + 108,101,213,1,0,0,115,20,0,0,0,0,7,18,1,4, + 1,24,1,35,1,4,2,3,1,16,1,19,1,21,2,117, + 15,0,0,0,95,103,101,116,95,115,111,117,114,99,101,102, + 105,108,101,99,1,0,0,0,0,0,0,0,2,0,0,0, + 4,0,0,0,71,0,0,0,115,75,0,0,0,116,0,0, + 106,1,0,106,2,0,114,71,0,124,0,0,106,3,0,100, + 6,0,131,1,0,115,40,0,100,3,0,124,0,0,23,125, + 0,0,110,0,0,116,4,0,124,0,0,106,5,0,124,1, + 0,140,0,0,100,4,0,116,0,0,106,6,0,131,1,1, + 1,110,0,0,100,5,0,83,40,7,0,0,0,117,61,0, + 0,0,80,114,105,110,116,32,116,104,101,32,109,101,115,115, + 97,103,101,32,116,111,32,115,116,100,101,114,114,32,105,102, + 32,45,118,47,80,89,84,72,79,78,86,69,82,66,79,83, + 69,32,105,115,32,116,117,114,110,101,100,32,111,110,46,117, + 1,0,0,0,35,117,7,0,0,0,105,109,112,111,114,116, + 32,117,2,0,0,0,35,32,117,4,0,0,0,102,105,108, + 101,78,40,2,0,0,0,117,1,0,0,0,35,117,7,0, + 0,0,105,109,112,111,114,116,32,40,7,0,0,0,117,3, + 0,0,0,115,121,115,117,5,0,0,0,102,108,97,103,115, + 117,7,0,0,0,118,101,114,98,111,115,101,117,10,0,0, + 0,115,116,97,114,116,115,119,105,116,104,117,5,0,0,0, + 112,114,105,110,116,117,6,0,0,0,102,111,114,109,97,116, + 117,6,0,0,0,115,116,100,101,114,114,40,2,0,0,0, + 117,7,0,0,0,109,101,115,115,97,103,101,117,4,0,0, + 0,97,114,103,115,40,0,0,0,0,40,0,0,0,0,117, + 29,0,0,0,60,102,114,111,122,101,110,32,105,109,112,111, + 114,116,108,105,98,46,95,98,111,111,116,115,116,114,97,112, + 62,117,16,0,0,0,95,118,101,114,98,111,115,101,95,109, + 101,115,115,97,103,101,234,1,0,0,115,8,0,0,0,0, + 2,12,1,15,1,13,1,117,16,0,0,0,95,118,101,114, + 98,111,115,101,95,109,101,115,115,97,103,101,99,1,0,0, 0,0,0,0,0,2,0,0,0,3,0,0,0,3,0,0, 0,115,35,0,0,0,135,0,0,102,1,0,100,1,0,100, 2,0,134,0,0,125,1,0,116,0,0,124,1,0,136,0, - 0,131,2,0,1,124,1,0,83,40,3,0,0,0,117,42, - 3,0,0,68,101,99,111,114,97,116,111,114,32,116,111,32, - 104,97,110,100,108,101,32,115,101,108,101,99,116,105,110,103, - 32,116,104,101,32,112,114,111,112,101,114,32,109,111,100,117, - 108,101,32,102,111,114,32,108,111,97,100,101,114,115,46,10, - 10,32,32,32,32,84,104,101,32,100,101,99,111,114,97,116, - 101,100,32,102,117,110,99,116,105,111,110,32,105,115,32,112, - 97,115,115,101,100,32,116,104,101,32,109,111,100,117,108,101, - 32,116,111,32,117,115,101,32,105,110,115,116,101,97,100,32, - 111,102,32,116,104,101,32,109,111,100,117,108,101,10,32,32, - 32,32,110,97,109,101,46,32,84,104,101,32,109,111,100,117, - 108,101,32,112,97,115,115,101,100,32,105,110,32,116,111,32, - 116,104,101,32,102,117,110,99,116,105,111,110,32,105,115,32, - 101,105,116,104,101,114,32,102,114,111,109,32,115,121,115,46, - 109,111,100,117,108,101,115,32,105,102,10,32,32,32,32,105, - 116,32,97,108,114,101,97,100,121,32,101,120,105,115,116,115, - 32,111,114,32,105,115,32,97,32,110,101,119,32,109,111,100, - 117,108,101,46,32,73,102,32,116,104,101,32,109,111,100,117, - 108,101,32,105,115,32,110,101,119,44,32,116,104,101,110,32, - 95,95,110,97,109,101,95,95,10,32,32,32,32,105,115,32, - 115,101,116,32,116,104,101,32,102,105,114,115,116,32,97,114, - 103,117,109,101,110,116,32,116,111,32,116,104,101,32,109,101, - 116,104,111,100,44,32,95,95,108,111,97,100,101,114,95,95, - 32,105,115,32,115,101,116,32,116,111,32,115,101,108,102,44, - 32,97,110,100,10,32,32,32,32,95,95,112,97,99,107,97, - 103,101,95,95,32,105,115,32,115,101,116,32,97,99,99,111, - 114,100,105,110,103,108,121,32,40,105,102,32,115,101,108,102, - 46,105,115,95,112,97,99,107,97,103,101,40,41,32,105,115, - 32,100,101,102,105,110,101,100,41,32,119,105,108,108,32,98, - 101,32,115,101,116,10,32,32,32,32,98,101,102,111,114,101, - 32,105,116,32,105,115,32,112,97,115,115,101,100,32,116,111, - 32,116,104,101,32,100,101,99,111,114,97,116,101,100,32,102, - 117,110,99,116,105,111,110,32,40,105,102,32,115,101,108,102, - 46,105,115,95,112,97,99,107,97,103,101,40,41,32,100,111, - 101,115,10,32,32,32,32,110,111,116,32,119,111,114,107,32, - 102,111,114,32,116,104,101,32,109,111,100,117,108,101,32,105, - 116,32,119,105,108,108,32,98,101,32,115,101,116,32,112,111, - 115,116,45,108,111,97,100,41,46,10,10,32,32,32,32,73, - 102,32,97,110,32,101,120,99,101,112,116,105,111,110,32,105, - 115,32,114,97,105,115,101,100,32,97,110,100,32,116,104,101, - 32,100,101,99,111,114,97,116,111,114,32,99,114,101,97,116, - 101,100,32,116,104,101,32,109,111,100,117,108,101,32,105,116, - 32,105,115,10,32,32,32,32,115,117,98,115,101,113,117,101, - 110,116,108,121,32,114,101,109,111,118,101,100,32,102,114,111, - 109,32,115,121,115,46,109,111,100,117,108,101,115,46,10,10, - 32,32,32,32,84,104,101,32,100,101,99,111,114,97,116,111, - 114,32,97,115,115,117,109,101,115,32,116,104,97,116,32,116, - 104,101,32,100,101,99,111,114,97,116,101,100,32,102,117,110, - 99,116,105,111,110,32,116,97,107,101,115,32,116,104,101,32, - 109,111,100,117,108,101,32,110,97,109,101,32,97,115,10,32, - 32,32,32,116,104,101,32,115,101,99,111,110,100,32,97,114, - 103,117,109,101,110,116,46,10,10,32,32,32,32,99,2,0, - 0,0,0,0,0,0,7,0,0,0,25,0,0,0,31,0, - 0,0,115,245,0,0,0,116,0,0,106,1,0,106,2,0, - 124,1,0,131,1,0,125,4,0,124,4,0,100,0,0,107, - 9,0,125,5,0,124,5,0,115,159,0,116,4,0,124,1, - 0,131,1,0,125,4,0,124,4,0,116,0,0,106,1,0, - 124,1,0,60,124,0,0,124,4,0,95,5,0,121,19,0, - 124,0,0,106,6,0,124,1,0,131,1,0,125,6,0,87, - 110,24,0,4,116,7,0,116,8,0,102,2,0,107,10,0, - 114,115,0,1,1,1,89,113,159,0,88,124,6,0,114,134, - 0,124,1,0,124,4,0,95,9,0,113,159,0,124,1,0, - 106,10,0,100,1,0,131,1,0,100,2,0,25,124,4,0, - 95,9,0,110,0,0,122,69,0,121,32,0,100,3,0,124, - 4,0,95,12,0,136,0,0,124,0,0,124,4,0,124,2, - 0,124,3,0,142,2,0,83,87,110,30,0,1,1,1,124, - 5,0,115,219,0,116,0,0,106,1,0,124,1,0,61,110, - 0,0,130,0,0,89,110,1,0,88,87,100,0,0,100,4, - 0,124,4,0,95,12,0,88,100,0,0,83,40,5,0,0, - 0,78,117,1,0,0,0,46,105,0,0,0,0,84,70,40, - 14,0,0,0,117,3,0,0,0,115,121,115,117,7,0,0, - 0,109,111,100,117,108,101,115,117,3,0,0,0,103,101,116, - 117,4,0,0,0,78,111,110,101,117,10,0,0,0,110,101, - 119,95,109,111,100,117,108,101,117,10,0,0,0,95,95,108, - 111,97,100,101,114,95,95,117,10,0,0,0,105,115,95,112, - 97,99,107,97,103,101,117,11,0,0,0,73,109,112,111,114, - 116,69,114,114,111,114,117,14,0,0,0,65,116,116,114,105, - 98,117,116,101,69,114,114,111,114,117,11,0,0,0,95,95, - 112,97,99,107,97,103,101,95,95,117,10,0,0,0,114,112, - 97,114,116,105,116,105,111,110,117,4,0,0,0,84,114,117, - 101,117,16,0,0,0,95,95,105,110,105,116,105,97,108,105, - 122,105,110,103,95,95,117,5,0,0,0,70,97,108,115,101, - 40,7,0,0,0,117,4,0,0,0,115,101,108,102,117,8, - 0,0,0,102,117,108,108,110,97,109,101,117,4,0,0,0, - 97,114,103,115,117,6,0,0,0,107,119,97,114,103,115,117, - 6,0,0,0,109,111,100,117,108,101,117,9,0,0,0,105, - 115,95,114,101,108,111,97,100,117,10,0,0,0,105,115,95, - 112,97,99,107,97,103,101,40,1,0,0,0,117,3,0,0, - 0,102,120,110,40,0,0,0,0,117,29,0,0,0,60,102, - 114,111,122,101,110,32,105,109,112,111,114,116,108,105,98,46, - 95,98,111,111,116,115,116,114,97,112,62,117,25,0,0,0, - 109,111,100,117,108,101,95,102,111,114,95,108,111,97,100,101, - 114,95,119,114,97,112,112,101,114,26,2,0,0,115,42,0, - 0,0,0,1,18,1,12,1,6,4,12,1,13,1,9,1, - 3,1,19,1,19,1,5,2,6,1,12,2,25,1,6,1, - 9,2,23,1,3,1,6,1,13,1,12,2,117,52,0,0, - 0,109,111,100,117,108,101,95,102,111,114,95,108,111,97,100, - 101,114,46,60,108,111,99,97,108,115,62,46,109,111,100,117, - 108,101,95,102,111,114,95,108,111,97,100,101,114,95,119,114, - 97,112,112,101,114,40,1,0,0,0,117,5,0,0,0,95, - 119,114,97,112,40,2,0,0,0,117,3,0,0,0,102,120, - 110,117,25,0,0,0,109,111,100,117,108,101,95,102,111,114, - 95,108,111,97,100,101,114,95,119,114,97,112,112,101,114,40, + 0,131,2,0,1,124,1,0,83,40,3,0,0,0,117,39, + 0,0,0,83,101,116,32,95,95,112,97,99,107,97,103,101, + 95,95,32,111,110,32,116,104,101,32,114,101,116,117,114,110, + 101,100,32,109,111,100,117,108,101,46,99,0,0,0,0,0, + 0,0,0,3,0,0,0,4,0,0,0,31,0,0,0,115, + 101,0,0,0,136,0,0,124,0,0,124,1,0,142,0,0, + 125,2,0,116,0,0,124,2,0,100,1,0,100,0,0,131, + 3,0,100,0,0,107,8,0,114,97,0,124,2,0,106,2, + 0,124,2,0,95,3,0,116,4,0,124,2,0,100,2,0, + 131,2,0,115,97,0,124,2,0,106,3,0,106,5,0,100, + 3,0,131,1,0,100,4,0,25,124,2,0,95,3,0,113, + 97,0,110,0,0,124,2,0,83,40,5,0,0,0,78,117, + 11,0,0,0,95,95,112,97,99,107,97,103,101,95,95,117, + 8,0,0,0,95,95,112,97,116,104,95,95,117,1,0,0, + 0,46,105,0,0,0,0,40,6,0,0,0,117,7,0,0, + 0,103,101,116,97,116,116,114,117,4,0,0,0,78,111,110, + 101,117,8,0,0,0,95,95,110,97,109,101,95,95,117,11, + 0,0,0,95,95,112,97,99,107,97,103,101,95,95,117,7, + 0,0,0,104,97,115,97,116,116,114,117,10,0,0,0,114, + 112,97,114,116,105,116,105,111,110,40,3,0,0,0,117,4, + 0,0,0,97,114,103,115,117,6,0,0,0,107,119,97,114, + 103,115,117,6,0,0,0,109,111,100,117,108,101,40,1,0, + 0,0,117,3,0,0,0,102,120,110,40,0,0,0,0,117, + 29,0,0,0,60,102,114,111,122,101,110,32,105,109,112,111, + 114,116,108,105,98,46,95,98,111,111,116,115,116,114,97,112, + 62,117,19,0,0,0,115,101,116,95,112,97,99,107,97,103, + 101,95,119,114,97,112,112,101,114,244,1,0,0,115,12,0, + 0,0,0,1,15,1,24,1,12,1,15,1,31,1,117,40, + 0,0,0,115,101,116,95,112,97,99,107,97,103,101,46,60, + 108,111,99,97,108,115,62,46,115,101,116,95,112,97,99,107, + 97,103,101,95,119,114,97,112,112,101,114,40,1,0,0,0, + 117,5,0,0,0,95,119,114,97,112,40,2,0,0,0,117, + 3,0,0,0,102,120,110,117,19,0,0,0,115,101,116,95, + 112,97,99,107,97,103,101,95,119,114,97,112,112,101,114,40, 0,0,0,0,40,1,0,0,0,117,3,0,0,0,102,120, 110,117,29,0,0,0,60,102,114,111,122,101,110,32,105,109, 112,111,114,116,108,105,98,46,95,98,111,111,116,115,116,114, - 97,112,62,117,17,0,0,0,109,111,100,117,108,101,95,102, - 111,114,95,108,111,97,100,101,114,8,2,0,0,115,6,0, - 0,0,0,18,18,29,13,1,117,17,0,0,0,109,111,100, - 117,108,101,95,102,111,114,95,108,111,97,100,101,114,99,1, - 0,0,0,0,0,0,0,2,0,0,0,4,0,0,0,3, - 0,0,0,115,38,0,0,0,100,3,0,135,0,0,102,1, - 0,100,1,0,100,2,0,134,1,0,125,1,0,116,1,0, - 124,1,0,136,0,0,131,2,0,1,124,1,0,83,40,4, - 0,0,0,117,252,0,0,0,68,101,99,111,114,97,116,111, - 114,32,116,111,32,118,101,114,105,102,121,32,116,104,97,116, - 32,116,104,101,32,109,111,100,117,108,101,32,98,101,105,110, - 103,32,114,101,113,117,101,115,116,101,100,32,109,97,116,99, - 104,101,115,32,116,104,101,32,111,110,101,32,116,104,101,10, - 32,32,32,32,108,111,97,100,101,114,32,99,97,110,32,104, - 97,110,100,108,101,46,10,10,32,32,32,32,84,104,101,32, - 102,105,114,115,116,32,97,114,103,117,109,101,110,116,32,40, - 115,101,108,102,41,32,109,117,115,116,32,100,101,102,105,110, - 101,32,95,110,97,109,101,32,119,104,105,99,104,32,116,104, + 97,112,62,117,11,0,0,0,115,101,116,95,112,97,99,107, + 97,103,101,242,1,0,0,115,6,0,0,0,0,2,18,7, + 13,1,117,11,0,0,0,115,101,116,95,112,97,99,107,97, + 103,101,99,1,0,0,0,0,0,0,0,2,0,0,0,3, + 0,0,0,3,0,0,0,115,35,0,0,0,135,0,0,102, + 1,0,100,1,0,100,2,0,134,0,0,125,1,0,116,0, + 0,124,1,0,136,0,0,131,2,0,1,124,1,0,83,40, + 3,0,0,0,117,38,0,0,0,83,101,116,32,95,95,108, + 111,97,100,101,114,95,95,32,111,110,32,116,104,101,32,114, + 101,116,117,114,110,101,100,32,109,111,100,117,108,101,46,99, + 1,0,0,0,0,0,0,0,4,0,0,0,4,0,0,0, + 31,0,0,0,115,49,0,0,0,136,0,0,124,0,0,124, + 1,0,124,2,0,142,1,0,125,3,0,116,0,0,124,3, + 0,100,1,0,131,2,0,115,45,0,124,0,0,124,3,0, + 95,1,0,110,0,0,124,3,0,83,40,2,0,0,0,78, + 117,10,0,0,0,95,95,108,111,97,100,101,114,95,95,40, + 2,0,0,0,117,7,0,0,0,104,97,115,97,116,116,114, + 117,10,0,0,0,95,95,108,111,97,100,101,114,95,95,40, + 4,0,0,0,117,4,0,0,0,115,101,108,102,117,4,0, + 0,0,97,114,103,115,117,6,0,0,0,107,119,97,114,103, + 115,117,6,0,0,0,109,111,100,117,108,101,40,1,0,0, + 0,117,3,0,0,0,102,120,110,40,0,0,0,0,117,29, + 0,0,0,60,102,114,111,122,101,110,32,105,109,112,111,114, + 116,108,105,98,46,95,98,111,111,116,115,116,114,97,112,62, + 117,18,0,0,0,115,101,116,95,108,111,97,100,101,114,95, + 119,114,97,112,112,101,114,1,2,0,0,115,8,0,0,0, + 0,1,18,1,15,1,12,1,117,38,0,0,0,115,101,116, + 95,108,111,97,100,101,114,46,60,108,111,99,97,108,115,62, + 46,115,101,116,95,108,111,97,100,101,114,95,119,114,97,112, + 112,101,114,40,1,0,0,0,117,5,0,0,0,95,119,114, + 97,112,40,2,0,0,0,117,3,0,0,0,102,120,110,117, + 18,0,0,0,115,101,116,95,108,111,97,100,101,114,95,119, + 114,97,112,112,101,114,40,0,0,0,0,40,1,0,0,0, + 117,3,0,0,0,102,120,110,117,29,0,0,0,60,102,114, + 111,122,101,110,32,105,109,112,111,114,116,108,105,98,46,95, + 98,111,111,116,115,116,114,97,112,62,117,10,0,0,0,115, + 101,116,95,108,111,97,100,101,114,255,1,0,0,115,6,0, + 0,0,0,2,18,5,13,1,117,10,0,0,0,115,101,116, + 95,108,111,97,100,101,114,99,1,0,0,0,0,0,0,0, + 2,0,0,0,3,0,0,0,3,0,0,0,115,35,0,0, + 0,135,0,0,102,1,0,100,1,0,100,2,0,134,0,0, + 125,1,0,116,0,0,124,1,0,136,0,0,131,2,0,1, + 124,1,0,83,40,3,0,0,0,117,42,3,0,0,68,101, + 99,111,114,97,116,111,114,32,116,111,32,104,97,110,100,108, + 101,32,115,101,108,101,99,116,105,110,103,32,116,104,101,32, + 112,114,111,112,101,114,32,109,111,100,117,108,101,32,102,111, + 114,32,108,111,97,100,101,114,115,46,10,10,32,32,32,32, + 84,104,101,32,100,101,99,111,114,97,116,101,100,32,102,117, + 110,99,116,105,111,110,32,105,115,32,112,97,115,115,101,100, + 32,116,104,101,32,109,111,100,117,108,101,32,116,111,32,117, + 115,101,32,105,110,115,116,101,97,100,32,111,102,32,116,104, + 101,32,109,111,100,117,108,101,10,32,32,32,32,110,97,109, + 101,46,32,84,104,101,32,109,111,100,117,108,101,32,112,97, + 115,115,101,100,32,105,110,32,116,111,32,116,104,101,32,102, + 117,110,99,116,105,111,110,32,105,115,32,101,105,116,104,101, + 114,32,102,114,111,109,32,115,121,115,46,109,111,100,117,108, + 101,115,32,105,102,10,32,32,32,32,105,116,32,97,108,114, + 101,97,100,121,32,101,120,105,115,116,115,32,111,114,32,105, + 115,32,97,32,110,101,119,32,109,111,100,117,108,101,46,32, + 73,102,32,116,104,101,32,109,111,100,117,108,101,32,105,115, + 32,110,101,119,44,32,116,104,101,110,32,95,95,110,97,109, + 101,95,95,10,32,32,32,32,105,115,32,115,101,116,32,116, + 104,101,32,102,105,114,115,116,32,97,114,103,117,109,101,110, + 116,32,116,111,32,116,104,101,32,109,101,116,104,111,100,44, + 32,95,95,108,111,97,100,101,114,95,95,32,105,115,32,115, + 101,116,32,116,111,32,115,101,108,102,44,32,97,110,100,10, + 32,32,32,32,95,95,112,97,99,107,97,103,101,95,95,32, + 105,115,32,115,101,116,32,97,99,99,111,114,100,105,110,103, + 108,121,32,40,105,102,32,115,101,108,102,46,105,115,95,112, + 97,99,107,97,103,101,40,41,32,105,115,32,100,101,102,105, + 110,101,100,41,32,119,105,108,108,32,98,101,32,115,101,116, + 10,32,32,32,32,98,101,102,111,114,101,32,105,116,32,105, + 115,32,112,97,115,115,101,100,32,116,111,32,116,104,101,32, + 100,101,99,111,114,97,116,101,100,32,102,117,110,99,116,105, + 111,110,32,40,105,102,32,115,101,108,102,46,105,115,95,112, + 97,99,107,97,103,101,40,41,32,100,111,101,115,10,32,32, + 32,32,110,111,116,32,119,111,114,107,32,102,111,114,32,116, + 104,101,32,109,111,100,117,108,101,32,105,116,32,119,105,108, + 108,32,98,101,32,115,101,116,32,112,111,115,116,45,108,111, + 97,100,41,46,10,10,32,32,32,32,73,102,32,97,110,32, + 101,120,99,101,112,116,105,111,110,32,105,115,32,114,97,105, + 115,101,100,32,97,110,100,32,116,104,101,32,100,101,99,111, + 114,97,116,111,114,32,99,114,101,97,116,101,100,32,116,104, + 101,32,109,111,100,117,108,101,32,105,116,32,105,115,10,32, + 32,32,32,115,117,98,115,101,113,117,101,110,116,108,121,32, + 114,101,109,111,118,101,100,32,102,114,111,109,32,115,121,115, + 46,109,111,100,117,108,101,115,46,10,10,32,32,32,32,84, + 104,101,32,100,101,99,111,114,97,116,111,114,32,97,115,115, + 117,109,101,115,32,116,104,97,116,32,116,104,101,32,100,101, + 99,111,114,97,116,101,100,32,102,117,110,99,116,105,111,110, + 32,116,97,107,101,115,32,116,104,101,32,109,111,100,117,108, + 101,32,110,97,109,101,32,97,115,10,32,32,32,32,116,104, 101,32,115,101,99,111,110,100,32,97,114,103,117,109,101,110, - 116,32,105,115,10,32,32,32,32,99,111,109,112,97,114,101, - 100,32,97,103,97,105,110,115,116,46,32,73,102,32,116,104, - 101,32,99,111,109,112,97,114,105,115,111,110,32,102,97,105, - 108,115,32,116,104,101,110,32,73,109,112,111,114,116,69,114, - 114,111,114,32,105,115,32,114,97,105,115,101,100,46,10,10, - 32,32,32,32,99,2,0,0,0,0,0,0,0,4,0,0, - 0,5,0,0,0,31,0,0,0,115,83,0,0,0,124,1, - 0,100,0,0,107,8,0,114,24,0,124,0,0,106,1,0, - 125,1,0,110,40,0,124,0,0,106,1,0,124,1,0,107, - 3,0,114,64,0,116,2,0,100,1,0,124,1,0,22,100, - 2,0,124,1,0,131,1,1,130,1,0,110,0,0,136,0, - 0,124,0,0,124,1,0,124,2,0,124,3,0,142,2,0, - 83,40,3,0,0,0,78,117,23,0,0,0,108,111,97,100, - 101,114,32,99,97,110,110,111,116,32,104,97,110,100,108,101, - 32,37,115,117,4,0,0,0,110,97,109,101,40,3,0,0, - 0,117,4,0,0,0,78,111,110,101,117,4,0,0,0,110, - 97,109,101,117,11,0,0,0,73,109,112,111,114,116,69,114, - 114,111,114,40,4,0,0,0,117,4,0,0,0,115,101,108, - 102,117,4,0,0,0,110,97,109,101,117,4,0,0,0,97, - 114,103,115,117,6,0,0,0,107,119,97,114,103,115,40,1, - 0,0,0,117,6,0,0,0,109,101,116,104,111,100,40,0, - 0,0,0,117,29,0,0,0,60,102,114,111,122,101,110,32, - 105,109,112,111,114,116,108,105,98,46,95,98,111,111,116,115, - 116,114,97,112,62,117,19,0,0,0,95,99,104,101,99,107, - 95,110,97,109,101,95,119,114,97,112,112,101,114,67,2,0, - 0,115,10,0,0,0,0,1,12,1,12,1,15,1,25,1, - 117,40,0,0,0,95,99,104,101,99,107,95,110,97,109,101, - 46,60,108,111,99,97,108,115,62,46,95,99,104,101,99,107, - 95,110,97,109,101,95,119,114,97,112,112,101,114,78,40,2, - 0,0,0,117,4,0,0,0,78,111,110,101,117,5,0,0, - 0,95,119,114,97,112,40,2,0,0,0,117,6,0,0,0, - 109,101,116,104,111,100,117,19,0,0,0,95,99,104,101,99, - 107,95,110,97,109,101,95,119,114,97,112,112,101,114,40,0, - 0,0,0,40,1,0,0,0,117,6,0,0,0,109,101,116, - 104,111,100,117,29,0,0,0,60,102,114,111,122,101,110,32, - 105,109,112,111,114,116,108,105,98,46,95,98,111,111,116,115, - 116,114,97,112,62,117,11,0,0,0,95,99,104,101,99,107, - 95,110,97,109,101,59,2,0,0,115,6,0,0,0,0,8, - 21,6,13,1,117,11,0,0,0,95,99,104,101,99,107,95, - 110,97,109,101,99,1,0,0,0,0,0,0,0,2,0,0, - 0,3,0,0,0,3,0,0,0,115,35,0,0,0,135,0, - 0,102,1,0,100,1,0,100,2,0,134,0,0,125,1,0, - 116,0,0,124,1,0,136,0,0,131,2,0,1,124,1,0, - 83,40,3,0,0,0,117,49,0,0,0,68,101,99,111,114, - 97,116,111,114,32,116,111,32,118,101,114,105,102,121,32,116, - 104,101,32,110,97,109,101,100,32,109,111,100,117,108,101,32, - 105,115,32,98,117,105,108,116,45,105,110,46,99,2,0,0, - 0,0,0,0,0,2,0,0,0,4,0,0,0,19,0,0, - 0,115,58,0,0,0,124,1,0,116,0,0,106,1,0,107, - 7,0,114,45,0,116,2,0,100,1,0,106,3,0,124,1, - 0,131,1,0,100,2,0,124,1,0,131,1,1,130,1,0, - 110,0,0,136,0,0,124,0,0,124,1,0,131,2,0,83, - 40,3,0,0,0,78,117,27,0,0,0,123,125,32,105,115, - 32,110,111,116,32,97,32,98,117,105,108,116,45,105,110,32, - 109,111,100,117,108,101,117,4,0,0,0,110,97,109,101,40, - 4,0,0,0,117,3,0,0,0,115,121,115,117,20,0,0, - 0,98,117,105,108,116,105,110,95,109,111,100,117,108,101,95, - 110,97,109,101,115,117,11,0,0,0,73,109,112,111,114,116, - 69,114,114,111,114,117,6,0,0,0,102,111,114,109,97,116, - 40,2,0,0,0,117,4,0,0,0,115,101,108,102,117,8, - 0,0,0,102,117,108,108,110,97,109,101,40,1,0,0,0, + 116,46,10,10,32,32,32,32,99,2,0,0,0,0,0,0, + 0,7,0,0,0,25,0,0,0,31,0,0,0,115,254,0, + 0,0,116,0,0,106,1,0,106,2,0,124,1,0,131,1, + 0,125,4,0,124,4,0,100,0,0,107,9,0,125,5,0, + 124,5,0,115,168,0,116,4,0,124,1,0,131,1,0,125, + 4,0,100,3,0,124,4,0,95,6,0,124,4,0,116,0, + 0,106,1,0,124,1,0,60,124,0,0,124,4,0,95,7, + 0,121,19,0,124,0,0,106,8,0,124,1,0,131,1,0, + 125,6,0,87,110,24,0,4,116,9,0,116,10,0,102,2, + 0,107,10,0,114,124,0,1,1,1,89,113,177,0,88,124, + 6,0,114,143,0,124,1,0,124,4,0,95,11,0,113,177, + 0,124,1,0,106,12,0,100,1,0,131,1,0,100,2,0, + 25,124,4,0,95,11,0,110,9,0,100,3,0,124,4,0, + 95,6,0,122,60,0,121,23,0,136,0,0,124,0,0,124, + 4,0,124,2,0,124,3,0,142,2,0,83,87,110,30,0, + 1,1,1,124,5,0,115,228,0,116,0,0,106,1,0,124, + 1,0,61,110,0,0,130,0,0,89,110,1,0,88,87,100, + 0,0,100,4,0,124,4,0,95,6,0,88,100,0,0,83, + 40,5,0,0,0,78,117,1,0,0,0,46,105,0,0,0, + 0,84,70,40,14,0,0,0,117,3,0,0,0,115,121,115, + 117,7,0,0,0,109,111,100,117,108,101,115,117,3,0,0, + 0,103,101,116,117,4,0,0,0,78,111,110,101,117,10,0, + 0,0,110,101,119,95,109,111,100,117,108,101,117,4,0,0, + 0,84,114,117,101,117,16,0,0,0,95,95,105,110,105,116, + 105,97,108,105,122,105,110,103,95,95,117,10,0,0,0,95, + 95,108,111,97,100,101,114,95,95,117,10,0,0,0,105,115, + 95,112,97,99,107,97,103,101,117,11,0,0,0,73,109,112, + 111,114,116,69,114,114,111,114,117,14,0,0,0,65,116,116, + 114,105,98,117,116,101,69,114,114,111,114,117,11,0,0,0, + 95,95,112,97,99,107,97,103,101,95,95,117,10,0,0,0, + 114,112,97,114,116,105,116,105,111,110,117,5,0,0,0,70, + 97,108,115,101,40,7,0,0,0,117,4,0,0,0,115,101, + 108,102,117,8,0,0,0,102,117,108,108,110,97,109,101,117, + 4,0,0,0,97,114,103,115,117,6,0,0,0,107,119,97, + 114,103,115,117,6,0,0,0,109,111,100,117,108,101,117,9, + 0,0,0,105,115,95,114,101,108,111,97,100,117,10,0,0, + 0,105,115,95,112,97,99,107,97,103,101,40,1,0,0,0, 117,3,0,0,0,102,120,110,40,0,0,0,0,117,29,0, 0,0,60,102,114,111,122,101,110,32,105,109,112,111,114,116, 108,105,98,46,95,98,111,111,116,115,116,114,97,112,62,117, - 25,0,0,0,95,114,101,113,117,105,114,101,115,95,98,117, - 105,108,116,105,110,95,119,114,97,112,112,101,114,79,2,0, - 0,115,8,0,0,0,0,1,15,1,18,1,12,1,117,52, - 0,0,0,95,114,101,113,117,105,114,101,115,95,98,117,105, - 108,116,105,110,46,60,108,111,99,97,108,115,62,46,95,114, + 25,0,0,0,109,111,100,117,108,101,95,102,111,114,95,108, + 111,97,100,101,114,95,119,114,97,112,112,101,114,28,2,0, + 0,115,44,0,0,0,0,1,18,1,12,1,6,4,12,3, + 9,1,13,1,9,1,3,1,19,1,19,1,5,2,6,1, + 12,2,25,2,9,1,6,2,23,1,3,1,6,1,13,1, + 12,2,117,52,0,0,0,109,111,100,117,108,101,95,102,111, + 114,95,108,111,97,100,101,114,46,60,108,111,99,97,108,115, + 62,46,109,111,100,117,108,101,95,102,111,114,95,108,111,97, + 100,101,114,95,119,114,97,112,112,101,114,40,1,0,0,0, + 117,5,0,0,0,95,119,114,97,112,40,2,0,0,0,117, + 3,0,0,0,102,120,110,117,25,0,0,0,109,111,100,117, + 108,101,95,102,111,114,95,108,111,97,100,101,114,95,119,114, + 97,112,112,101,114,40,0,0,0,0,40,1,0,0,0,117, + 3,0,0,0,102,120,110,117,29,0,0,0,60,102,114,111, + 122,101,110,32,105,109,112,111,114,116,108,105,98,46,95,98, + 111,111,116,115,116,114,97,112,62,117,17,0,0,0,109,111, + 100,117,108,101,95,102,111,114,95,108,111,97,100,101,114,10, + 2,0,0,115,6,0,0,0,0,18,18,33,13,1,117,17, + 0,0,0,109,111,100,117,108,101,95,102,111,114,95,108,111, + 97,100,101,114,99,1,0,0,0,0,0,0,0,2,0,0, + 0,4,0,0,0,3,0,0,0,115,38,0,0,0,100,3, + 0,135,0,0,102,1,0,100,1,0,100,2,0,134,1,0, + 125,1,0,116,1,0,124,1,0,136,0,0,131,2,0,1, + 124,1,0,83,40,4,0,0,0,117,252,0,0,0,68,101, + 99,111,114,97,116,111,114,32,116,111,32,118,101,114,105,102, + 121,32,116,104,97,116,32,116,104,101,32,109,111,100,117,108, + 101,32,98,101,105,110,103,32,114,101,113,117,101,115,116,101, + 100,32,109,97,116,99,104,101,115,32,116,104,101,32,111,110, + 101,32,116,104,101,10,32,32,32,32,108,111,97,100,101,114, + 32,99,97,110,32,104,97,110,100,108,101,46,10,10,32,32, + 32,32,84,104,101,32,102,105,114,115,116,32,97,114,103,117, + 109,101,110,116,32,40,115,101,108,102,41,32,109,117,115,116, + 32,100,101,102,105,110,101,32,95,110,97,109,101,32,119,104, + 105,99,104,32,116,104,101,32,115,101,99,111,110,100,32,97, + 114,103,117,109,101,110,116,32,105,115,10,32,32,32,32,99, + 111,109,112,97,114,101,100,32,97,103,97,105,110,115,116,46, + 32,73,102,32,116,104,101,32,99,111,109,112,97,114,105,115, + 111,110,32,102,97,105,108,115,32,116,104,101,110,32,73,109, + 112,111,114,116,69,114,114,111,114,32,105,115,32,114,97,105, + 115,101,100,46,10,10,32,32,32,32,99,2,0,0,0,0, + 0,0,0,4,0,0,0,5,0,0,0,31,0,0,0,115, + 83,0,0,0,124,1,0,100,0,0,107,8,0,114,24,0, + 124,0,0,106,1,0,125,1,0,110,40,0,124,0,0,106, + 1,0,124,1,0,107,3,0,114,64,0,116,2,0,100,1, + 0,124,1,0,22,100,2,0,124,1,0,131,1,1,130,1, + 0,110,0,0,136,0,0,124,0,0,124,1,0,124,2,0, + 124,3,0,142,2,0,83,40,3,0,0,0,78,117,23,0, + 0,0,108,111,97,100,101,114,32,99,97,110,110,111,116,32, + 104,97,110,100,108,101,32,37,115,117,4,0,0,0,110,97, + 109,101,40,3,0,0,0,117,4,0,0,0,78,111,110,101, + 117,4,0,0,0,110,97,109,101,117,11,0,0,0,73,109, + 112,111,114,116,69,114,114,111,114,40,4,0,0,0,117,4, + 0,0,0,115,101,108,102,117,4,0,0,0,110,97,109,101, + 117,4,0,0,0,97,114,103,115,117,6,0,0,0,107,119, + 97,114,103,115,40,1,0,0,0,117,6,0,0,0,109,101, + 116,104,111,100,40,0,0,0,0,117,29,0,0,0,60,102, + 114,111,122,101,110,32,105,109,112,111,114,116,108,105,98,46, + 95,98,111,111,116,115,116,114,97,112,62,117,19,0,0,0, + 95,99,104,101,99,107,95,110,97,109,101,95,119,114,97,112, + 112,101,114,73,2,0,0,115,10,0,0,0,0,1,12,1, + 12,1,15,1,25,1,117,40,0,0,0,95,99,104,101,99, + 107,95,110,97,109,101,46,60,108,111,99,97,108,115,62,46, + 95,99,104,101,99,107,95,110,97,109,101,95,119,114,97,112, + 112,101,114,78,40,2,0,0,0,117,4,0,0,0,78,111, + 110,101,117,5,0,0,0,95,119,114,97,112,40,2,0,0, + 0,117,6,0,0,0,109,101,116,104,111,100,117,19,0,0, + 0,95,99,104,101,99,107,95,110,97,109,101,95,119,114,97, + 112,112,101,114,40,0,0,0,0,40,1,0,0,0,117,6, + 0,0,0,109,101,116,104,111,100,117,29,0,0,0,60,102, + 114,111,122,101,110,32,105,109,112,111,114,116,108,105,98,46, + 95,98,111,111,116,115,116,114,97,112,62,117,11,0,0,0, + 95,99,104,101,99,107,95,110,97,109,101,65,2,0,0,115, + 6,0,0,0,0,8,21,6,13,1,117,11,0,0,0,95, + 99,104,101,99,107,95,110,97,109,101,99,1,0,0,0,0, + 0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,115, + 35,0,0,0,135,0,0,102,1,0,100,1,0,100,2,0, + 134,0,0,125,1,0,116,0,0,124,1,0,136,0,0,131, + 2,0,1,124,1,0,83,40,3,0,0,0,117,49,0,0, + 0,68,101,99,111,114,97,116,111,114,32,116,111,32,118,101, + 114,105,102,121,32,116,104,101,32,110,97,109,101,100,32,109, + 111,100,117,108,101,32,105,115,32,98,117,105,108,116,45,105, + 110,46,99,2,0,0,0,0,0,0,0,2,0,0,0,4, + 0,0,0,19,0,0,0,115,58,0,0,0,124,1,0,116, + 0,0,106,1,0,107,7,0,114,45,0,116,2,0,100,1, + 0,106,3,0,124,1,0,131,1,0,100,2,0,124,1,0, + 131,1,1,130,1,0,110,0,0,136,0,0,124,0,0,124, + 1,0,131,2,0,83,40,3,0,0,0,78,117,27,0,0, + 0,123,125,32,105,115,32,110,111,116,32,97,32,98,117,105, + 108,116,45,105,110,32,109,111,100,117,108,101,117,4,0,0, + 0,110,97,109,101,40,4,0,0,0,117,3,0,0,0,115, + 121,115,117,20,0,0,0,98,117,105,108,116,105,110,95,109, + 111,100,117,108,101,95,110,97,109,101,115,117,11,0,0,0, + 73,109,112,111,114,116,69,114,114,111,114,117,6,0,0,0, + 102,111,114,109,97,116,40,2,0,0,0,117,4,0,0,0, + 115,101,108,102,117,8,0,0,0,102,117,108,108,110,97,109, + 101,40,1,0,0,0,117,3,0,0,0,102,120,110,40,0, + 0,0,0,117,29,0,0,0,60,102,114,111,122,101,110,32, + 105,109,112,111,114,116,108,105,98,46,95,98,111,111,116,115, + 116,114,97,112,62,117,25,0,0,0,95,114,101,113,117,105, + 114,101,115,95,98,117,105,108,116,105,110,95,119,114,97,112, + 112,101,114,85,2,0,0,115,8,0,0,0,0,1,15,1, + 18,1,12,1,117,52,0,0,0,95,114,101,113,117,105,114, + 101,115,95,98,117,105,108,116,105,110,46,60,108,111,99,97, + 108,115,62,46,95,114,101,113,117,105,114,101,115,95,98,117, + 105,108,116,105,110,95,119,114,97,112,112,101,114,40,1,0, + 0,0,117,5,0,0,0,95,119,114,97,112,40,2,0,0, + 0,117,3,0,0,0,102,120,110,117,25,0,0,0,95,114, 101,113,117,105,114,101,115,95,98,117,105,108,116,105,110,95, - 119,114,97,112,112,101,114,40,1,0,0,0,117,5,0,0, - 0,95,119,114,97,112,40,2,0,0,0,117,3,0,0,0, - 102,120,110,117,25,0,0,0,95,114,101,113,117,105,114,101, - 115,95,98,117,105,108,116,105,110,95,119,114,97,112,112,101, + 119,114,97,112,112,101,114,40,0,0,0,0,40,1,0,0, + 0,117,3,0,0,0,102,120,110,117,29,0,0,0,60,102, + 114,111,122,101,110,32,105,109,112,111,114,116,108,105,98,46, + 95,98,111,111,116,115,116,114,97,112,62,117,17,0,0,0, + 95,114,101,113,117,105,114,101,115,95,98,117,105,108,116,105, + 110,83,2,0,0,115,6,0,0,0,0,2,18,5,13,1, + 117,17,0,0,0,95,114,101,113,117,105,114,101,115,95,98, + 117,105,108,116,105,110,99,1,0,0,0,0,0,0,0,2, + 0,0,0,3,0,0,0,3,0,0,0,115,35,0,0,0, + 135,0,0,102,1,0,100,1,0,100,2,0,134,0,0,125, + 1,0,116,0,0,124,1,0,136,0,0,131,2,0,1,124, + 1,0,83,40,3,0,0,0,117,47,0,0,0,68,101,99, + 111,114,97,116,111,114,32,116,111,32,118,101,114,105,102,121, + 32,116,104,101,32,110,97,109,101,100,32,109,111,100,117,108, + 101,32,105,115,32,102,114,111,122,101,110,46,99,2,0,0, + 0,0,0,0,0,2,0,0,0,4,0,0,0,19,0,0, + 0,115,58,0,0,0,116,0,0,106,1,0,124,1,0,131, + 1,0,115,45,0,116,2,0,100,1,0,106,3,0,124,1, + 0,131,1,0,100,2,0,124,1,0,131,1,1,130,1,0, + 110,0,0,136,0,0,124,0,0,124,1,0,131,2,0,83, + 40,3,0,0,0,78,117,25,0,0,0,123,125,32,105,115, + 32,110,111,116,32,97,32,102,114,111,122,101,110,32,109,111, + 100,117,108,101,117,4,0,0,0,110,97,109,101,40,4,0, + 0,0,117,4,0,0,0,95,105,109,112,117,9,0,0,0, + 105,115,95,102,114,111,122,101,110,117,11,0,0,0,73,109, + 112,111,114,116,69,114,114,111,114,117,6,0,0,0,102,111, + 114,109,97,116,40,2,0,0,0,117,4,0,0,0,115,101, + 108,102,117,8,0,0,0,102,117,108,108,110,97,109,101,40, + 1,0,0,0,117,3,0,0,0,102,120,110,40,0,0,0, + 0,117,29,0,0,0,60,102,114,111,122,101,110,32,105,109, + 112,111,114,116,108,105,98,46,95,98,111,111,116,115,116,114, + 97,112,62,117,24,0,0,0,95,114,101,113,117,105,114,101, + 115,95,102,114,111,122,101,110,95,119,114,97,112,112,101,114, + 96,2,0,0,115,8,0,0,0,0,1,15,1,18,1,12, + 1,117,50,0,0,0,95,114,101,113,117,105,114,101,115,95, + 102,114,111,122,101,110,46,60,108,111,99,97,108,115,62,46, + 95,114,101,113,117,105,114,101,115,95,102,114,111,122,101,110, + 95,119,114,97,112,112,101,114,40,1,0,0,0,117,5,0, + 0,0,95,119,114,97,112,40,2,0,0,0,117,3,0,0, + 0,102,120,110,117,24,0,0,0,95,114,101,113,117,105,114, + 101,115,95,102,114,111,122,101,110,95,119,114,97,112,112,101, 114,40,0,0,0,0,40,1,0,0,0,117,3,0,0,0, 102,120,110,117,29,0,0,0,60,102,114,111,122,101,110,32, 105,109,112,111,114,116,108,105,98,46,95,98,111,111,116,115, - 116,114,97,112,62,117,17,0,0,0,95,114,101,113,117,105, - 114,101,115,95,98,117,105,108,116,105,110,77,2,0,0,115, - 6,0,0,0,0,2,18,5,13,1,117,17,0,0,0,95, - 114,101,113,117,105,114,101,115,95,98,117,105,108,116,105,110, - 99,1,0,0,0,0,0,0,0,2,0,0,0,3,0,0, - 0,3,0,0,0,115,35,0,0,0,135,0,0,102,1,0, - 100,1,0,100,2,0,134,0,0,125,1,0,116,0,0,124, - 1,0,136,0,0,131,2,0,1,124,1,0,83,40,3,0, - 0,0,117,47,0,0,0,68,101,99,111,114,97,116,111,114, - 32,116,111,32,118,101,114,105,102,121,32,116,104,101,32,110, - 97,109,101,100,32,109,111,100,117,108,101,32,105,115,32,102, - 114,111,122,101,110,46,99,2,0,0,0,0,0,0,0,2, - 0,0,0,4,0,0,0,19,0,0,0,115,58,0,0,0, - 116,0,0,106,1,0,124,1,0,131,1,0,115,45,0,116, - 2,0,100,1,0,106,3,0,124,1,0,131,1,0,100,2, - 0,124,1,0,131,1,1,130,1,0,110,0,0,136,0,0, - 124,0,0,124,1,0,131,2,0,83,40,3,0,0,0,78, - 117,25,0,0,0,123,125,32,105,115,32,110,111,116,32,97, - 32,102,114,111,122,101,110,32,109,111,100,117,108,101,117,4, - 0,0,0,110,97,109,101,40,4,0,0,0,117,4,0,0, - 0,95,105,109,112,117,9,0,0,0,105,115,95,102,114,111, - 122,101,110,117,11,0,0,0,73,109,112,111,114,116,69,114, - 114,111,114,117,6,0,0,0,102,111,114,109,97,116,40,2, - 0,0,0,117,4,0,0,0,115,101,108,102,117,8,0,0, - 0,102,117,108,108,110,97,109,101,40,1,0,0,0,117,3, - 0,0,0,102,120,110,40,0,0,0,0,117,29,0,0,0, - 60,102,114,111,122,101,110,32,105,109,112,111,114,116,108,105, - 98,46,95,98,111,111,116,115,116,114,97,112,62,117,24,0, - 0,0,95,114,101,113,117,105,114,101,115,95,102,114,111,122, - 101,110,95,119,114,97,112,112,101,114,90,2,0,0,115,8, - 0,0,0,0,1,15,1,18,1,12,1,117,50,0,0,0, - 95,114,101,113,117,105,114,101,115,95,102,114,111,122,101,110, - 46,60,108,111,99,97,108,115,62,46,95,114,101,113,117,105, - 114,101,115,95,102,114,111,122,101,110,95,119,114,97,112,112, - 101,114,40,1,0,0,0,117,5,0,0,0,95,119,114,97, - 112,40,2,0,0,0,117,3,0,0,0,102,120,110,117,24, - 0,0,0,95,114,101,113,117,105,114,101,115,95,102,114,111, - 122,101,110,95,119,114,97,112,112,101,114,40,0,0,0,0, - 40,1,0,0,0,117,3,0,0,0,102,120,110,117,29,0, - 0,0,60,102,114,111,122,101,110,32,105,109,112,111,114,116, - 108,105,98,46,95,98,111,111,116,115,116,114,97,112,62,117, - 16,0,0,0,95,114,101,113,117,105,114,101,115,95,102,114, - 111,122,101,110,88,2,0,0,115,6,0,0,0,0,2,18, - 5,13,1,117,16,0,0,0,95,114,101,113,117,105,114,101, - 115,95,102,114,111,122,101,110,99,2,0,0,0,0,0,0, - 0,5,0,0,0,5,0,0,0,67,0,0,0,115,87,0, - 0,0,124,0,0,106,0,0,124,1,0,131,1,0,92,2, - 0,125,2,0,125,3,0,124,2,0,100,3,0,107,8,0, - 114,83,0,116,2,0,124,3,0,131,1,0,114,83,0,100, - 1,0,125,4,0,116,3,0,106,4,0,124,4,0,106,5, - 0,124,3,0,100,2,0,25,131,1,0,116,6,0,131,2, - 0,1,110,0,0,124,2,0,83,40,4,0,0,0,117,86, - 0,0,0,84,114,121,32,116,111,32,102,105,110,100,32,97, - 32,108,111,97,100,101,114,32,102,111,114,32,116,104,101,32, - 115,112,101,99,105,102,105,101,100,32,109,111,100,117,108,101, - 32,98,121,32,100,101,108,101,103,97,116,105,110,103,32,116, - 111,10,32,32,32,32,115,101,108,102,46,102,105,110,100,95, - 108,111,97,100,101,114,40,41,46,117,44,0,0,0,78,111, - 116,32,105,109,112,111,114,116,105,110,103,32,100,105,114,101, - 99,116,111,114,121,32,123,125,58,32,109,105,115,115,105,110, - 103,32,95,95,105,110,105,116,95,95,105,0,0,0,0,78, - 40,7,0,0,0,117,11,0,0,0,102,105,110,100,95,108, - 111,97,100,101,114,117,4,0,0,0,78,111,110,101,117,3, - 0,0,0,108,101,110,117,9,0,0,0,95,119,97,114,110, - 105,110,103,115,117,4,0,0,0,119,97,114,110,117,6,0, - 0,0,102,111,114,109,97,116,117,13,0,0,0,73,109,112, - 111,114,116,87,97,114,110,105,110,103,40,5,0,0,0,117, - 4,0,0,0,115,101,108,102,117,8,0,0,0,102,117,108, - 108,110,97,109,101,117,6,0,0,0,108,111,97,100,101,114, - 117,8,0,0,0,112,111,114,116,105,111,110,115,117,3,0, - 0,0,109,115,103,40,0,0,0,0,40,0,0,0,0,117, - 29,0,0,0,60,102,114,111,122,101,110,32,105,109,112,111, - 114,116,108,105,98,46,95,98,111,111,116,115,116,114,97,112, - 62,117,17,0,0,0,95,102,105,110,100,95,109,111,100,117, - 108,101,95,115,104,105,109,99,2,0,0,115,10,0,0,0, - 0,6,21,1,24,1,6,1,32,1,117,17,0,0,0,95, - 102,105,110,100,95,109,111,100,117,108,101,95,115,104,105,109, - 99,1,0,0,0,0,0,0,0,1,0,0,0,6,0,0, - 0,66,0,0,0,115,173,0,0,0,124,0,0,69,101,0, - 0,90,1,0,100,0,0,90,2,0,100,1,0,90,3,0, - 101,4,0,100,2,0,100,3,0,132,0,0,131,1,0,90, - 5,0,101,4,0,100,14,0,100,4,0,100,5,0,132,1, - 0,131,1,0,90,7,0,101,4,0,101,8,0,101,9,0, - 101,10,0,100,6,0,100,7,0,132,0,0,131,1,0,131, - 1,0,131,1,0,131,1,0,90,11,0,101,4,0,101,10, - 0,100,8,0,100,9,0,132,0,0,131,1,0,131,1,0, - 90,12,0,101,4,0,101,10,0,100,10,0,100,11,0,132, - 0,0,131,1,0,131,1,0,90,13,0,101,4,0,101,10, - 0,100,12,0,100,13,0,132,0,0,131,1,0,131,1,0, - 90,14,0,100,14,0,83,40,15,0,0,0,117,15,0,0, - 0,66,117,105,108,116,105,110,73,109,112,111,114,116,101,114, - 117,144,0,0,0,77,101,116,97,32,112,97,116,104,32,105, - 109,112,111,114,116,32,102,111,114,32,98,117,105,108,116,45, - 105,110,32,109,111,100,117,108,101,115,46,10,10,32,32,32, - 32,65,108,108,32,109,101,116,104,111,100,115,32,97,114,101, - 32,101,105,116,104,101,114,32,99,108,97,115,115,32,111,114, - 32,115,116,97,116,105,99,32,109,101,116,104,111,100,115,32, - 116,111,32,97,118,111,105,100,32,116,104,101,32,110,101,101, - 100,32,116,111,10,32,32,32,32,105,110,115,116,97,110,116, - 105,97,116,101,32,116,104,101,32,99,108,97,115,115,46,10, - 10,32,32,32,32,99,2,0,0,0,0,0,0,0,2,0, - 0,0,2,0,0,0,67,0,0,0,115,16,0,0,0,100, - 1,0,106,0,0,124,1,0,106,1,0,131,1,0,83,40, - 2,0,0,0,78,117,24,0,0,0,60,109,111,100,117,108, - 101,32,39,123,125,39,32,40,98,117,105,108,116,45,105,110, - 41,62,40,2,0,0,0,117,6,0,0,0,102,111,114,109, - 97,116,117,8,0,0,0,95,95,110,97,109,101,95,95,40, - 2,0,0,0,117,3,0,0,0,99,108,115,117,6,0,0, - 0,109,111,100,117,108,101,40,0,0,0,0,40,0,0,0, - 0,117,29,0,0,0,60,102,114,111,122,101,110,32,105,109, - 112,111,114,116,108,105,98,46,95,98,111,111,116,115,116,114, - 97,112,62,117,11,0,0,0,109,111,100,117,108,101,95,114, - 101,112,114,125,2,0,0,115,2,0,0,0,0,2,117,27, - 0,0,0,66,117,105,108,116,105,110,73,109,112,111,114,116, - 101,114,46,109,111,100,117,108,101,95,114,101,112,114,99,3, - 0,0,0,0,0,0,0,3,0,0,0,2,0,0,0,67, - 0,0,0,115,39,0,0,0,124,2,0,100,1,0,107,9, - 0,114,16,0,100,1,0,83,116,1,0,106,2,0,124,1, - 0,131,1,0,114,35,0,124,0,0,83,100,1,0,83,40, - 2,0,0,0,117,113,0,0,0,70,105,110,100,32,116,104, - 101,32,98,117,105,108,116,45,105,110,32,109,111,100,117,108, - 101,46,10,10,32,32,32,32,32,32,32,32,73,102,32,39, - 112,97,116,104,39,32,105,115,32,101,118,101,114,32,115,112, - 101,99,105,102,105,101,100,32,116,104,101,110,32,116,104,101, - 32,115,101,97,114,99,104,32,105,115,32,99,111,110,115,105, - 100,101,114,101,100,32,97,32,102,97,105,108,117,114,101,46, - 10,10,32,32,32,32,32,32,32,32,78,40,3,0,0,0, - 117,4,0,0,0,78,111,110,101,117,4,0,0,0,95,105, - 109,112,117,10,0,0,0,105,115,95,98,117,105,108,116,105, - 110,40,3,0,0,0,117,3,0,0,0,99,108,115,117,8, - 0,0,0,102,117,108,108,110,97,109,101,117,4,0,0,0, - 112,97,116,104,40,0,0,0,0,40,0,0,0,0,117,29, - 0,0,0,60,102,114,111,122,101,110,32,105,109,112,111,114, - 116,108,105,98,46,95,98,111,111,116,115,116,114,97,112,62, - 117,11,0,0,0,102,105,110,100,95,109,111,100,117,108,101, - 129,2,0,0,115,6,0,0,0,0,7,12,1,4,1,117, - 27,0,0,0,66,117,105,108,116,105,110,73,109,112,111,114, - 116,101,114,46,102,105,110,100,95,109,111,100,117,108,101,99, - 2,0,0,0,0,0,0,0,3,0,0,0,9,0,0,0, - 67,0,0,0,115,88,0,0,0,124,1,0,116,0,0,106, - 1,0,107,6,0,125,2,0,121,20,0,116,2,0,116,3, - 0,106,4,0,124,1,0,131,2,0,83,87,110,46,0,1, - 1,1,124,2,0,12,114,76,0,124,1,0,116,0,0,106, - 1,0,107,6,0,114,76,0,116,0,0,106,1,0,124,1, - 0,61,110,0,0,130,0,0,89,110,1,0,88,100,1,0, - 83,40,2,0,0,0,117,23,0,0,0,76,111,97,100,32, - 97,32,98,117,105,108,116,45,105,110,32,109,111,100,117,108, - 101,46,78,40,5,0,0,0,117,3,0,0,0,115,121,115, - 117,7,0,0,0,109,111,100,117,108,101,115,117,25,0,0, - 0,95,99,97,108,108,95,119,105,116,104,95,102,114,97,109, - 101,115,95,114,101,109,111,118,101,100,117,4,0,0,0,95, - 105,109,112,117,12,0,0,0,105,110,105,116,95,98,117,105, - 108,116,105,110,40,3,0,0,0,117,3,0,0,0,99,108, - 115,117,8,0,0,0,102,117,108,108,110,97,109,101,117,9, - 0,0,0,105,115,95,114,101,108,111,97,100,40,0,0,0, - 0,40,0,0,0,0,117,29,0,0,0,60,102,114,111,122, - 101,110,32,105,109,112,111,114,116,108,105,98,46,95,98,111, - 111,116,115,116,114,97,112,62,117,11,0,0,0,108,111,97, - 100,95,109,111,100,117,108,101,140,2,0,0,115,14,0,0, - 0,0,6,15,1,3,1,20,1,3,1,22,1,13,1,117, - 27,0,0,0,66,117,105,108,116,105,110,73,109,112,111,114, - 116,101,114,46,108,111,97,100,95,109,111,100,117,108,101,99, - 2,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0, - 67,0,0,0,115,4,0,0,0,100,1,0,83,40,2,0, - 0,0,117,57,0,0,0,82,101,116,117,114,110,32,78,111, - 110,101,32,97,115,32,98,117,105,108,116,45,105,110,32,109, - 111,100,117,108,101,115,32,100,111,32,110,111,116,32,104,97, - 118,101,32,99,111,100,101,32,111,98,106,101,99,116,115,46, + 116,114,97,112,62,117,16,0,0,0,95,114,101,113,117,105, + 114,101,115,95,102,114,111,122,101,110,94,2,0,0,115,6, + 0,0,0,0,2,18,5,13,1,117,16,0,0,0,95,114, + 101,113,117,105,114,101,115,95,102,114,111,122,101,110,99,2, + 0,0,0,0,0,0,0,5,0,0,0,5,0,0,0,67, + 0,0,0,115,87,0,0,0,124,0,0,106,0,0,124,1, + 0,131,1,0,92,2,0,125,2,0,125,3,0,124,2,0, + 100,3,0,107,8,0,114,83,0,116,2,0,124,3,0,131, + 1,0,114,83,0,100,1,0,125,4,0,116,3,0,106,4, + 0,124,4,0,106,5,0,124,3,0,100,2,0,25,131,1, + 0,116,6,0,131,2,0,1,110,0,0,124,2,0,83,40, + 4,0,0,0,117,86,0,0,0,84,114,121,32,116,111,32, + 102,105,110,100,32,97,32,108,111,97,100,101,114,32,102,111, + 114,32,116,104,101,32,115,112,101,99,105,102,105,101,100,32, + 109,111,100,117,108,101,32,98,121,32,100,101,108,101,103,97, + 116,105,110,103,32,116,111,10,32,32,32,32,115,101,108,102, + 46,102,105,110,100,95,108,111,97,100,101,114,40,41,46,117, + 44,0,0,0,78,111,116,32,105,109,112,111,114,116,105,110, + 103,32,100,105,114,101,99,116,111,114,121,32,123,125,58,32, + 109,105,115,115,105,110,103,32,95,95,105,110,105,116,95,95, + 105,0,0,0,0,78,40,7,0,0,0,117,11,0,0,0, + 102,105,110,100,95,108,111,97,100,101,114,117,4,0,0,0, + 78,111,110,101,117,3,0,0,0,108,101,110,117,9,0,0, + 0,95,119,97,114,110,105,110,103,115,117,4,0,0,0,119, + 97,114,110,117,6,0,0,0,102,111,114,109,97,116,117,13, + 0,0,0,73,109,112,111,114,116,87,97,114,110,105,110,103, + 40,5,0,0,0,117,4,0,0,0,115,101,108,102,117,8, + 0,0,0,102,117,108,108,110,97,109,101,117,6,0,0,0, + 108,111,97,100,101,114,117,8,0,0,0,112,111,114,116,105, + 111,110,115,117,3,0,0,0,109,115,103,40,0,0,0,0, + 40,0,0,0,0,117,29,0,0,0,60,102,114,111,122,101, + 110,32,105,109,112,111,114,116,108,105,98,46,95,98,111,111, + 116,115,116,114,97,112,62,117,17,0,0,0,95,102,105,110, + 100,95,109,111,100,117,108,101,95,115,104,105,109,105,2,0, + 0,115,10,0,0,0,0,6,21,1,24,1,6,1,32,1, + 117,17,0,0,0,95,102,105,110,100,95,109,111,100,117,108, + 101,95,115,104,105,109,99,1,0,0,0,0,0,0,0,1, + 0,0,0,6,0,0,0,66,0,0,0,115,173,0,0,0, + 124,0,0,69,101,0,0,90,1,0,100,0,0,90,2,0, + 100,1,0,90,3,0,101,4,0,100,2,0,100,3,0,132, + 0,0,131,1,0,90,5,0,101,4,0,100,14,0,100,4, + 0,100,5,0,132,1,0,131,1,0,90,7,0,101,4,0, + 101,8,0,101,9,0,101,10,0,100,6,0,100,7,0,132, + 0,0,131,1,0,131,1,0,131,1,0,131,1,0,90,11, + 0,101,4,0,101,10,0,100,8,0,100,9,0,132,0,0, + 131,1,0,131,1,0,90,12,0,101,4,0,101,10,0,100, + 10,0,100,11,0,132,0,0,131,1,0,131,1,0,90,13, + 0,101,4,0,101,10,0,100,12,0,100,13,0,132,0,0, + 131,1,0,131,1,0,90,14,0,100,14,0,83,40,15,0, + 0,0,117,15,0,0,0,66,117,105,108,116,105,110,73,109, + 112,111,114,116,101,114,117,144,0,0,0,77,101,116,97,32, + 112,97,116,104,32,105,109,112,111,114,116,32,102,111,114,32, + 98,117,105,108,116,45,105,110,32,109,111,100,117,108,101,115, + 46,10,10,32,32,32,32,65,108,108,32,109,101,116,104,111, + 100,115,32,97,114,101,32,101,105,116,104,101,114,32,99,108, + 97,115,115,32,111,114,32,115,116,97,116,105,99,32,109,101, + 116,104,111,100,115,32,116,111,32,97,118,111,105,100,32,116, + 104,101,32,110,101,101,100,32,116,111,10,32,32,32,32,105, + 110,115,116,97,110,116,105,97,116,101,32,116,104,101,32,99, + 108,97,115,115,46,10,10,32,32,32,32,99,2,0,0,0, + 0,0,0,0,2,0,0,0,2,0,0,0,67,0,0,0, + 115,16,0,0,0,100,1,0,106,0,0,124,1,0,106,1, + 0,131,1,0,83,40,2,0,0,0,78,117,24,0,0,0, + 60,109,111,100,117,108,101,32,39,123,125,39,32,40,98,117, + 105,108,116,45,105,110,41,62,40,2,0,0,0,117,6,0, + 0,0,102,111,114,109,97,116,117,8,0,0,0,95,95,110, + 97,109,101,95,95,40,2,0,0,0,117,3,0,0,0,99, + 108,115,117,6,0,0,0,109,111,100,117,108,101,40,0,0, + 0,0,40,0,0,0,0,117,29,0,0,0,60,102,114,111, + 122,101,110,32,105,109,112,111,114,116,108,105,98,46,95,98, + 111,111,116,115,116,114,97,112,62,117,11,0,0,0,109,111, + 100,117,108,101,95,114,101,112,114,131,2,0,0,115,2,0, + 0,0,0,2,117,27,0,0,0,66,117,105,108,116,105,110, + 73,109,112,111,114,116,101,114,46,109,111,100,117,108,101,95, + 114,101,112,114,99,3,0,0,0,0,0,0,0,3,0,0, + 0,2,0,0,0,67,0,0,0,115,39,0,0,0,124,2, + 0,100,1,0,107,9,0,114,16,0,100,1,0,83,116,1, + 0,106,2,0,124,1,0,131,1,0,114,35,0,124,0,0, + 83,100,1,0,83,40,2,0,0,0,117,113,0,0,0,70, + 105,110,100,32,116,104,101,32,98,117,105,108,116,45,105,110, + 32,109,111,100,117,108,101,46,10,10,32,32,32,32,32,32, + 32,32,73,102,32,39,112,97,116,104,39,32,105,115,32,101, + 118,101,114,32,115,112,101,99,105,102,105,101,100,32,116,104, + 101,110,32,116,104,101,32,115,101,97,114,99,104,32,105,115, + 32,99,111,110,115,105,100,101,114,101,100,32,97,32,102,97, + 105,108,117,114,101,46,10,10,32,32,32,32,32,32,32,32, + 78,40,3,0,0,0,117,4,0,0,0,78,111,110,101,117, + 4,0,0,0,95,105,109,112,117,10,0,0,0,105,115,95, + 98,117,105,108,116,105,110,40,3,0,0,0,117,3,0,0, + 0,99,108,115,117,8,0,0,0,102,117,108,108,110,97,109, + 101,117,4,0,0,0,112,97,116,104,40,0,0,0,0,40, + 0,0,0,0,117,29,0,0,0,60,102,114,111,122,101,110, + 32,105,109,112,111,114,116,108,105,98,46,95,98,111,111,116, + 115,116,114,97,112,62,117,11,0,0,0,102,105,110,100,95, + 109,111,100,117,108,101,135,2,0,0,115,6,0,0,0,0, + 7,12,1,4,1,117,27,0,0,0,66,117,105,108,116,105, + 110,73,109,112,111,114,116,101,114,46,102,105,110,100,95,109, + 111,100,117,108,101,99,2,0,0,0,0,0,0,0,3,0, + 0,0,9,0,0,0,67,0,0,0,115,88,0,0,0,124, + 1,0,116,0,0,106,1,0,107,6,0,125,2,0,121,20, + 0,116,2,0,116,3,0,106,4,0,124,1,0,131,2,0, + 83,87,110,46,0,1,1,1,124,2,0,12,114,76,0,124, + 1,0,116,0,0,106,1,0,107,6,0,114,76,0,116,0, + 0,106,1,0,124,1,0,61,110,0,0,130,0,0,89,110, + 1,0,88,100,1,0,83,40,2,0,0,0,117,23,0,0, + 0,76,111,97,100,32,97,32,98,117,105,108,116,45,105,110, + 32,109,111,100,117,108,101,46,78,40,5,0,0,0,117,3, + 0,0,0,115,121,115,117,7,0,0,0,109,111,100,117,108, + 101,115,117,25,0,0,0,95,99,97,108,108,95,119,105,116, + 104,95,102,114,97,109,101,115,95,114,101,109,111,118,101,100, + 117,4,0,0,0,95,105,109,112,117,12,0,0,0,105,110, + 105,116,95,98,117,105,108,116,105,110,40,3,0,0,0,117, + 3,0,0,0,99,108,115,117,8,0,0,0,102,117,108,108, + 110,97,109,101,117,9,0,0,0,105,115,95,114,101,108,111, + 97,100,40,0,0,0,0,40,0,0,0,0,117,29,0,0, + 0,60,102,114,111,122,101,110,32,105,109,112,111,114,116,108, + 105,98,46,95,98,111,111,116,115,116,114,97,112,62,117,11, + 0,0,0,108,111,97,100,95,109,111,100,117,108,101,146,2, + 0,0,115,14,0,0,0,0,6,15,1,3,1,20,1,3, + 1,22,1,13,1,117,27,0,0,0,66,117,105,108,116,105, + 110,73,109,112,111,114,116,101,114,46,108,111,97,100,95,109, + 111,100,117,108,101,99,2,0,0,0,0,0,0,0,2,0, + 0,0,1,0,0,0,67,0,0,0,115,4,0,0,0,100, + 1,0,83,40,2,0,0,0,117,57,0,0,0,82,101,116, + 117,114,110,32,78,111,110,101,32,97,115,32,98,117,105,108, + 116,45,105,110,32,109,111,100,117,108,101,115,32,100,111,32, + 110,111,116,32,104,97,118,101,32,99,111,100,101,32,111,98, + 106,101,99,116,115,46,78,40,1,0,0,0,117,4,0,0, + 0,78,111,110,101,40,2,0,0,0,117,3,0,0,0,99, + 108,115,117,8,0,0,0,102,117,108,108,110,97,109,101,40, + 0,0,0,0,40,0,0,0,0,117,29,0,0,0,60,102, + 114,111,122,101,110,32,105,109,112,111,114,116,108,105,98,46, + 95,98,111,111,116,115,116,114,97,112,62,117,8,0,0,0, + 103,101,116,95,99,111,100,101,160,2,0,0,115,2,0,0, + 0,0,4,117,24,0,0,0,66,117,105,108,116,105,110,73, + 109,112,111,114,116,101,114,46,103,101,116,95,99,111,100,101, + 99,2,0,0,0,0,0,0,0,2,0,0,0,1,0,0, + 0,67,0,0,0,115,4,0,0,0,100,1,0,83,40,2, + 0,0,0,117,56,0,0,0,82,101,116,117,114,110,32,78, + 111,110,101,32,97,115,32,98,117,105,108,116,45,105,110,32, + 109,111,100,117,108,101,115,32,100,111,32,110,111,116,32,104, + 97,118,101,32,115,111,117,114,99,101,32,99,111,100,101,46, 78,40,1,0,0,0,117,4,0,0,0,78,111,110,101,40, 2,0,0,0,117,3,0,0,0,99,108,115,117,8,0,0, 0,102,117,108,108,110,97,109,101,40,0,0,0,0,40,0, 0,0,0,117,29,0,0,0,60,102,114,111,122,101,110,32, 105,109,112,111,114,116,108,105,98,46,95,98,111,111,116,115, - 116,114,97,112,62,117,8,0,0,0,103,101,116,95,99,111, - 100,101,154,2,0,0,115,2,0,0,0,0,4,117,24,0, - 0,0,66,117,105,108,116,105,110,73,109,112,111,114,116,101, - 114,46,103,101,116,95,99,111,100,101,99,2,0,0,0,0, - 0,0,0,2,0,0,0,1,0,0,0,67,0,0,0,115, - 4,0,0,0,100,1,0,83,40,2,0,0,0,117,56,0, - 0,0,82,101,116,117,114,110,32,78,111,110,101,32,97,115, - 32,98,117,105,108,116,45,105,110,32,109,111,100,117,108,101, - 115,32,100,111,32,110,111,116,32,104,97,118,101,32,115,111, - 117,114,99,101,32,99,111,100,101,46,78,40,1,0,0,0, - 117,4,0,0,0,78,111,110,101,40,2,0,0,0,117,3, + 116,114,97,112,62,117,10,0,0,0,103,101,116,95,115,111, + 117,114,99,101,166,2,0,0,115,2,0,0,0,0,4,117, + 26,0,0,0,66,117,105,108,116,105,110,73,109,112,111,114, + 116,101,114,46,103,101,116,95,115,111,117,114,99,101,99,2, + 0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,67, + 0,0,0,115,4,0,0,0,100,1,0,83,40,2,0,0, + 0,117,52,0,0,0,82,101,116,117,114,110,32,70,97,108, + 115,101,32,97,115,32,98,117,105,108,116,45,105,110,32,109, + 111,100,117,108,101,115,32,97,114,101,32,110,101,118,101,114, + 32,112,97,99,107,97,103,101,115,46,70,40,1,0,0,0, + 117,5,0,0,0,70,97,108,115,101,40,2,0,0,0,117, + 3,0,0,0,99,108,115,117,8,0,0,0,102,117,108,108, + 110,97,109,101,40,0,0,0,0,40,0,0,0,0,117,29, + 0,0,0,60,102,114,111,122,101,110,32,105,109,112,111,114, + 116,108,105,98,46,95,98,111,111,116,115,116,114,97,112,62, + 117,10,0,0,0,105,115,95,112,97,99,107,97,103,101,172, + 2,0,0,115,2,0,0,0,0,4,117,26,0,0,0,66, + 117,105,108,116,105,110,73,109,112,111,114,116,101,114,46,105, + 115,95,112,97,99,107,97,103,101,78,40,15,0,0,0,117, + 8,0,0,0,95,95,110,97,109,101,95,95,117,10,0,0, + 0,95,95,109,111,100,117,108,101,95,95,117,12,0,0,0, + 95,95,113,117,97,108,110,97,109,101,95,95,117,7,0,0, + 0,95,95,100,111,99,95,95,117,11,0,0,0,99,108,97, + 115,115,109,101,116,104,111,100,117,11,0,0,0,109,111,100, + 117,108,101,95,114,101,112,114,117,4,0,0,0,78,111,110, + 101,117,11,0,0,0,102,105,110,100,95,109,111,100,117,108, + 101,117,11,0,0,0,115,101,116,95,112,97,99,107,97,103, + 101,117,10,0,0,0,115,101,116,95,108,111,97,100,101,114, + 117,17,0,0,0,95,114,101,113,117,105,114,101,115,95,98, + 117,105,108,116,105,110,117,11,0,0,0,108,111,97,100,95, + 109,111,100,117,108,101,117,8,0,0,0,103,101,116,95,99, + 111,100,101,117,10,0,0,0,103,101,116,95,115,111,117,114, + 99,101,117,10,0,0,0,105,115,95,112,97,99,107,97,103, + 101,40,1,0,0,0,117,10,0,0,0,95,95,108,111,99, + 97,108,115,95,95,40,0,0,0,0,40,0,0,0,0,117, + 29,0,0,0,60,102,114,111,122,101,110,32,105,109,112,111, + 114,116,108,105,98,46,95,98,111,111,116,115,116,114,97,112, + 62,117,15,0,0,0,66,117,105,108,116,105,110,73,109,112, + 111,114,116,101,114,122,2,0,0,115,28,0,0,0,16,7, + 6,2,18,4,3,1,18,10,3,1,3,1,3,1,27,11, + 3,1,21,5,3,1,21,5,3,1,117,15,0,0,0,66, + 117,105,108,116,105,110,73,109,112,111,114,116,101,114,99,1, + 0,0,0,0,0,0,0,1,0,0,0,6,0,0,0,66, + 0,0,0,115,173,0,0,0,124,0,0,69,101,0,0,90, + 1,0,100,0,0,90,2,0,100,1,0,90,3,0,101,4, + 0,100,2,0,100,3,0,132,0,0,131,1,0,90,5,0, + 101,4,0,100,14,0,100,4,0,100,5,0,132,1,0,131, + 1,0,90,7,0,101,4,0,101,8,0,101,9,0,101,10, + 0,100,6,0,100,7,0,132,0,0,131,1,0,131,1,0, + 131,1,0,131,1,0,90,11,0,101,4,0,101,10,0,100, + 8,0,100,9,0,132,0,0,131,1,0,131,1,0,90,12, + 0,101,4,0,101,10,0,100,10,0,100,11,0,132,0,0, + 131,1,0,131,1,0,90,13,0,101,4,0,101,10,0,100, + 12,0,100,13,0,132,0,0,131,1,0,131,1,0,90,14, + 0,100,14,0,83,40,15,0,0,0,117,14,0,0,0,70, + 114,111,122,101,110,73,109,112,111,114,116,101,114,117,142,0, + 0,0,77,101,116,97,32,112,97,116,104,32,105,109,112,111, + 114,116,32,102,111,114,32,102,114,111,122,101,110,32,109,111, + 100,117,108,101,115,46,10,10,32,32,32,32,65,108,108,32, + 109,101,116,104,111,100,115,32,97,114,101,32,101,105,116,104, + 101,114,32,99,108,97,115,115,32,111,114,32,115,116,97,116, + 105,99,32,109,101,116,104,111,100,115,32,116,111,32,97,118, + 111,105,100,32,116,104,101,32,110,101,101,100,32,116,111,10, + 32,32,32,32,105,110,115,116,97,110,116,105,97,116,101,32, + 116,104,101,32,99,108,97,115,115,46,10,10,32,32,32,32, + 99,2,0,0,0,0,0,0,0,2,0,0,0,2,0,0, + 0,67,0,0,0,115,16,0,0,0,100,1,0,106,0,0, + 124,1,0,106,1,0,131,1,0,83,40,2,0,0,0,78, + 117,22,0,0,0,60,109,111,100,117,108,101,32,39,123,125, + 39,32,40,102,114,111,122,101,110,41,62,40,2,0,0,0, + 117,6,0,0,0,102,111,114,109,97,116,117,8,0,0,0, + 95,95,110,97,109,101,95,95,40,2,0,0,0,117,3,0, + 0,0,99,108,115,117,1,0,0,0,109,40,0,0,0,0, + 40,0,0,0,0,117,29,0,0,0,60,102,114,111,122,101, + 110,32,105,109,112,111,114,116,108,105,98,46,95,98,111,111, + 116,115,116,114,97,112,62,117,11,0,0,0,109,111,100,117, + 108,101,95,114,101,112,114,188,2,0,0,115,2,0,0,0, + 0,2,117,26,0,0,0,70,114,111,122,101,110,73,109,112, + 111,114,116,101,114,46,109,111,100,117,108,101,95,114,101,112, + 114,99,3,0,0,0,0,0,0,0,3,0,0,0,2,0, + 0,0,67,0,0,0,115,23,0,0,0,116,0,0,106,1, + 0,124,1,0,131,1,0,114,19,0,124,0,0,83,100,1, + 0,83,40,2,0,0,0,117,21,0,0,0,70,105,110,100, + 32,97,32,102,114,111,122,101,110,32,109,111,100,117,108,101, + 46,78,40,3,0,0,0,117,4,0,0,0,95,105,109,112, + 117,9,0,0,0,105,115,95,102,114,111,122,101,110,117,4, + 0,0,0,78,111,110,101,40,3,0,0,0,117,3,0,0, + 0,99,108,115,117,8,0,0,0,102,117,108,108,110,97,109, + 101,117,4,0,0,0,112,97,116,104,40,0,0,0,0,40, + 0,0,0,0,117,29,0,0,0,60,102,114,111,122,101,110, + 32,105,109,112,111,114,116,108,105,98,46,95,98,111,111,116, + 115,116,114,97,112,62,117,11,0,0,0,102,105,110,100,95, + 109,111,100,117,108,101,192,2,0,0,115,2,0,0,0,0, + 3,117,26,0,0,0,70,114,111,122,101,110,73,109,112,111, + 114,116,101,114,46,102,105,110,100,95,109,111,100,117,108,101, + 99,2,0,0,0,0,0,0,0,4,0,0,0,9,0,0, + 0,67,0,0,0,115,100,0,0,0,124,1,0,116,0,0, + 106,1,0,107,6,0,125,2,0,121,32,0,116,2,0,116, + 3,0,106,4,0,124,1,0,131,2,0,125,3,0,124,3, + 0,96,5,0,124,3,0,83,87,110,46,0,1,1,1,124, + 2,0,12,114,88,0,124,1,0,116,0,0,106,1,0,107, + 6,0,114,88,0,116,0,0,106,1,0,124,1,0,61,110, + 0,0,130,0,0,89,110,1,0,88,100,1,0,83,40,2, + 0,0,0,117,21,0,0,0,76,111,97,100,32,97,32,102, + 114,111,122,101,110,32,109,111,100,117,108,101,46,78,40,6, + 0,0,0,117,3,0,0,0,115,121,115,117,7,0,0,0, + 109,111,100,117,108,101,115,117,25,0,0,0,95,99,97,108, + 108,95,119,105,116,104,95,102,114,97,109,101,115,95,114,101, + 109,111,118,101,100,117,4,0,0,0,95,105,109,112,117,11, + 0,0,0,105,110,105,116,95,102,114,111,122,101,110,117,8, + 0,0,0,95,95,102,105,108,101,95,95,40,4,0,0,0, + 117,3,0,0,0,99,108,115,117,8,0,0,0,102,117,108, + 108,110,97,109,101,117,9,0,0,0,105,115,95,114,101,108, + 111,97,100,117,1,0,0,0,109,40,0,0,0,0,40,0, + 0,0,0,117,29,0,0,0,60,102,114,111,122,101,110,32, + 105,109,112,111,114,116,108,105,98,46,95,98,111,111,116,115, + 116,114,97,112,62,117,11,0,0,0,108,111,97,100,95,109, + 111,100,117,108,101,197,2,0,0,115,18,0,0,0,0,6, + 15,1,3,1,18,2,6,1,8,1,3,1,22,1,13,1, + 117,26,0,0,0,70,114,111,122,101,110,73,109,112,111,114, + 116,101,114,46,108,111,97,100,95,109,111,100,117,108,101,99, + 2,0,0,0,0,0,0,0,2,0,0,0,2,0,0,0, + 67,0,0,0,115,13,0,0,0,116,0,0,106,1,0,124, + 1,0,131,1,0,83,40,1,0,0,0,117,45,0,0,0, + 82,101,116,117,114,110,32,116,104,101,32,99,111,100,101,32, + 111,98,106,101,99,116,32,102,111,114,32,116,104,101,32,102, + 114,111,122,101,110,32,109,111,100,117,108,101,46,40,2,0, + 0,0,117,4,0,0,0,95,105,109,112,117,17,0,0,0, + 103,101,116,95,102,114,111,122,101,110,95,111,98,106,101,99, + 116,40,2,0,0,0,117,3,0,0,0,99,108,115,117,8, + 0,0,0,102,117,108,108,110,97,109,101,40,0,0,0,0, + 40,0,0,0,0,117,29,0,0,0,60,102,114,111,122,101, + 110,32,105,109,112,111,114,116,108,105,98,46,95,98,111,111, + 116,115,116,114,97,112,62,117,8,0,0,0,103,101,116,95, + 99,111,100,101,214,2,0,0,115,2,0,0,0,0,4,117, + 23,0,0,0,70,114,111,122,101,110,73,109,112,111,114,116, + 101,114,46,103,101,116,95,99,111,100,101,99,2,0,0,0, + 0,0,0,0,2,0,0,0,1,0,0,0,67,0,0,0, + 115,4,0,0,0,100,1,0,83,40,2,0,0,0,117,54, + 0,0,0,82,101,116,117,114,110,32,78,111,110,101,32,97, + 115,32,102,114,111,122,101,110,32,109,111,100,117,108,101,115, + 32,100,111,32,110,111,116,32,104,97,118,101,32,115,111,117, + 114,99,101,32,99,111,100,101,46,78,40,1,0,0,0,117, + 4,0,0,0,78,111,110,101,40,2,0,0,0,117,3,0, + 0,0,99,108,115,117,8,0,0,0,102,117,108,108,110,97, + 109,101,40,0,0,0,0,40,0,0,0,0,117,29,0,0, + 0,60,102,114,111,122,101,110,32,105,109,112,111,114,116,108, + 105,98,46,95,98,111,111,116,115,116,114,97,112,62,117,10, + 0,0,0,103,101,116,95,115,111,117,114,99,101,220,2,0, + 0,115,2,0,0,0,0,4,117,25,0,0,0,70,114,111, + 122,101,110,73,109,112,111,114,116,101,114,46,103,101,116,95, + 115,111,117,114,99,101,99,2,0,0,0,0,0,0,0,2, + 0,0,0,2,0,0,0,67,0,0,0,115,13,0,0,0, + 116,0,0,106,1,0,124,1,0,131,1,0,83,40,1,0, + 0,0,117,46,0,0,0,82,101,116,117,114,110,32,84,114, + 117,101,32,105,102,32,116,104,101,32,102,114,111,122,101,110, + 32,109,111,100,117,108,101,32,105,115,32,97,32,112,97,99, + 107,97,103,101,46,40,2,0,0,0,117,4,0,0,0,95, + 105,109,112,117,17,0,0,0,105,115,95,102,114,111,122,101, + 110,95,112,97,99,107,97,103,101,40,2,0,0,0,117,3, 0,0,0,99,108,115,117,8,0,0,0,102,117,108,108,110, 97,109,101,40,0,0,0,0,40,0,0,0,0,117,29,0, 0,0,60,102,114,111,122,101,110,32,105,109,112,111,114,116, 108,105,98,46,95,98,111,111,116,115,116,114,97,112,62,117, - 10,0,0,0,103,101,116,95,115,111,117,114,99,101,160,2, - 0,0,115,2,0,0,0,0,4,117,26,0,0,0,66,117, - 105,108,116,105,110,73,109,112,111,114,116,101,114,46,103,101, - 116,95,115,111,117,114,99,101,99,2,0,0,0,0,0,0, - 0,2,0,0,0,1,0,0,0,67,0,0,0,115,4,0, - 0,0,100,1,0,83,40,2,0,0,0,117,52,0,0,0, - 82,101,116,117,114,110,32,70,97,108,115,101,32,97,115,32, - 98,117,105,108,116,45,105,110,32,109,111,100,117,108,101,115, - 32,97,114,101,32,110,101,118,101,114,32,112,97,99,107,97, - 103,101,115,46,70,40,1,0,0,0,117,5,0,0,0,70, - 97,108,115,101,40,2,0,0,0,117,3,0,0,0,99,108, - 115,117,8,0,0,0,102,117,108,108,110,97,109,101,40,0, - 0,0,0,40,0,0,0,0,117,29,0,0,0,60,102,114, - 111,122,101,110,32,105,109,112,111,114,116,108,105,98,46,95, - 98,111,111,116,115,116,114,97,112,62,117,10,0,0,0,105, - 115,95,112,97,99,107,97,103,101,166,2,0,0,115,2,0, - 0,0,0,4,117,26,0,0,0,66,117,105,108,116,105,110, - 73,109,112,111,114,116,101,114,46,105,115,95,112,97,99,107, - 97,103,101,78,40,15,0,0,0,117,8,0,0,0,95,95, - 110,97,109,101,95,95,117,10,0,0,0,95,95,109,111,100, - 117,108,101,95,95,117,12,0,0,0,95,95,113,117,97,108, - 110,97,109,101,95,95,117,7,0,0,0,95,95,100,111,99, - 95,95,117,11,0,0,0,99,108,97,115,115,109,101,116,104, - 111,100,117,11,0,0,0,109,111,100,117,108,101,95,114,101, - 112,114,117,4,0,0,0,78,111,110,101,117,11,0,0,0, - 102,105,110,100,95,109,111,100,117,108,101,117,11,0,0,0, - 115,101,116,95,112,97,99,107,97,103,101,117,10,0,0,0, - 115,101,116,95,108,111,97,100,101,114,117,17,0,0,0,95, - 114,101,113,117,105,114,101,115,95,98,117,105,108,116,105,110, - 117,11,0,0,0,108,111,97,100,95,109,111,100,117,108,101, - 117,8,0,0,0,103,101,116,95,99,111,100,101,117,10,0, - 0,0,103,101,116,95,115,111,117,114,99,101,117,10,0,0, - 0,105,115,95,112,97,99,107,97,103,101,40,1,0,0,0, - 117,10,0,0,0,95,95,108,111,99,97,108,115,95,95,40, - 0,0,0,0,40,0,0,0,0,117,29,0,0,0,60,102, - 114,111,122,101,110,32,105,109,112,111,114,116,108,105,98,46, - 95,98,111,111,116,115,116,114,97,112,62,117,15,0,0,0, - 66,117,105,108,116,105,110,73,109,112,111,114,116,101,114,116, - 2,0,0,115,28,0,0,0,16,7,6,2,18,4,3,1, - 18,10,3,1,3,1,3,1,27,11,3,1,21,5,3,1, - 21,5,3,1,117,15,0,0,0,66,117,105,108,116,105,110, - 73,109,112,111,114,116,101,114,99,1,0,0,0,0,0,0, - 0,1,0,0,0,6,0,0,0,66,0,0,0,115,173,0, - 0,0,124,0,0,69,101,0,0,90,1,0,100,0,0,90, - 2,0,100,1,0,90,3,0,101,4,0,100,2,0,100,3, - 0,132,0,0,131,1,0,90,5,0,101,4,0,100,14,0, - 100,4,0,100,5,0,132,1,0,131,1,0,90,7,0,101, - 4,0,101,8,0,101,9,0,101,10,0,100,6,0,100,7, - 0,132,0,0,131,1,0,131,1,0,131,1,0,131,1,0, - 90,11,0,101,4,0,101,10,0,100,8,0,100,9,0,132, - 0,0,131,1,0,131,1,0,90,12,0,101,4,0,101,10, - 0,100,10,0,100,11,0,132,0,0,131,1,0,131,1,0, - 90,13,0,101,4,0,101,10,0,100,12,0,100,13,0,132, - 0,0,131,1,0,131,1,0,90,14,0,100,14,0,83,40, - 15,0,0,0,117,14,0,0,0,70,114,111,122,101,110,73, - 109,112,111,114,116,101,114,117,142,0,0,0,77,101,116,97, - 32,112,97,116,104,32,105,109,112,111,114,116,32,102,111,114, - 32,102,114,111,122,101,110,32,109,111,100,117,108,101,115,46, - 10,10,32,32,32,32,65,108,108,32,109,101,116,104,111,100, - 115,32,97,114,101,32,101,105,116,104,101,114,32,99,108,97, - 115,115,32,111,114,32,115,116,97,116,105,99,32,109,101,116, - 104,111,100,115,32,116,111,32,97,118,111,105,100,32,116,104, - 101,32,110,101,101,100,32,116,111,10,32,32,32,32,105,110, - 115,116,97,110,116,105,97,116,101,32,116,104,101,32,99,108, - 97,115,115,46,10,10,32,32,32,32,99,2,0,0,0,0, - 0,0,0,2,0,0,0,2,0,0,0,67,0,0,0,115, - 16,0,0,0,100,1,0,106,0,0,124,1,0,106,1,0, - 131,1,0,83,40,2,0,0,0,78,117,22,0,0,0,60, - 109,111,100,117,108,101,32,39,123,125,39,32,40,102,114,111, - 122,101,110,41,62,40,2,0,0,0,117,6,0,0,0,102, - 111,114,109,97,116,117,8,0,0,0,95,95,110,97,109,101, - 95,95,40,2,0,0,0,117,3,0,0,0,99,108,115,117, - 1,0,0,0,109,40,0,0,0,0,40,0,0,0,0,117, - 29,0,0,0,60,102,114,111,122,101,110,32,105,109,112,111, - 114,116,108,105,98,46,95,98,111,111,116,115,116,114,97,112, - 62,117,11,0,0,0,109,111,100,117,108,101,95,114,101,112, - 114,182,2,0,0,115,2,0,0,0,0,2,117,26,0,0, - 0,70,114,111,122,101,110,73,109,112,111,114,116,101,114,46, - 109,111,100,117,108,101,95,114,101,112,114,99,3,0,0,0, - 0,0,0,0,3,0,0,0,2,0,0,0,67,0,0,0, - 115,23,0,0,0,116,0,0,106,1,0,124,1,0,131,1, - 0,114,19,0,124,0,0,83,100,1,0,83,40,2,0,0, - 0,117,21,0,0,0,70,105,110,100,32,97,32,102,114,111, - 122,101,110,32,109,111,100,117,108,101,46,78,40,3,0,0, - 0,117,4,0,0,0,95,105,109,112,117,9,0,0,0,105, - 115,95,102,114,111,122,101,110,117,4,0,0,0,78,111,110, - 101,40,3,0,0,0,117,3,0,0,0,99,108,115,117,8, - 0,0,0,102,117,108,108,110,97,109,101,117,4,0,0,0, - 112,97,116,104,40,0,0,0,0,40,0,0,0,0,117,29, - 0,0,0,60,102,114,111,122,101,110,32,105,109,112,111,114, - 116,108,105,98,46,95,98,111,111,116,115,116,114,97,112,62, - 117,11,0,0,0,102,105,110,100,95,109,111,100,117,108,101, - 186,2,0,0,115,2,0,0,0,0,3,117,26,0,0,0, - 70,114,111,122,101,110,73,109,112,111,114,116,101,114,46,102, - 105,110,100,95,109,111,100,117,108,101,99,2,0,0,0,0, - 0,0,0,4,0,0,0,9,0,0,0,67,0,0,0,115, - 100,0,0,0,124,1,0,116,0,0,106,1,0,107,6,0, - 125,2,0,121,32,0,116,2,0,116,3,0,106,4,0,124, - 1,0,131,2,0,125,3,0,124,3,0,96,5,0,124,3, - 0,83,87,110,46,0,1,1,1,124,2,0,12,114,88,0, - 124,1,0,116,0,0,106,1,0,107,6,0,114,88,0,116, - 0,0,106,1,0,124,1,0,61,110,0,0,130,0,0,89, - 110,1,0,88,100,1,0,83,40,2,0,0,0,117,21,0, - 0,0,76,111,97,100,32,97,32,102,114,111,122,101,110,32, - 109,111,100,117,108,101,46,78,40,6,0,0,0,117,3,0, - 0,0,115,121,115,117,7,0,0,0,109,111,100,117,108,101, - 115,117,25,0,0,0,95,99,97,108,108,95,119,105,116,104, - 95,102,114,97,109,101,115,95,114,101,109,111,118,101,100,117, - 4,0,0,0,95,105,109,112,117,11,0,0,0,105,110,105, - 116,95,102,114,111,122,101,110,117,8,0,0,0,95,95,102, - 105,108,101,95,95,40,4,0,0,0,117,3,0,0,0,99, - 108,115,117,8,0,0,0,102,117,108,108,110,97,109,101,117, - 9,0,0,0,105,115,95,114,101,108,111,97,100,117,1,0, - 0,0,109,40,0,0,0,0,40,0,0,0,0,117,29,0, - 0,0,60,102,114,111,122,101,110,32,105,109,112,111,114,116, - 108,105,98,46,95,98,111,111,116,115,116,114,97,112,62,117, - 11,0,0,0,108,111,97,100,95,109,111,100,117,108,101,191, - 2,0,0,115,18,0,0,0,0,6,15,1,3,1,18,2, - 6,1,8,1,3,1,22,1,13,1,117,26,0,0,0,70, - 114,111,122,101,110,73,109,112,111,114,116,101,114,46,108,111, - 97,100,95,109,111,100,117,108,101,99,2,0,0,0,0,0, - 0,0,2,0,0,0,2,0,0,0,67,0,0,0,115,13, - 0,0,0,116,0,0,106,1,0,124,1,0,131,1,0,83, - 40,1,0,0,0,117,45,0,0,0,82,101,116,117,114,110, - 32,116,104,101,32,99,111,100,101,32,111,98,106,101,99,116, - 32,102,111,114,32,116,104,101,32,102,114,111,122,101,110,32, - 109,111,100,117,108,101,46,40,2,0,0,0,117,4,0,0, - 0,95,105,109,112,117,17,0,0,0,103,101,116,95,102,114, - 111,122,101,110,95,111,98,106,101,99,116,40,2,0,0,0, - 117,3,0,0,0,99,108,115,117,8,0,0,0,102,117,108, - 108,110,97,109,101,40,0,0,0,0,40,0,0,0,0,117, - 29,0,0,0,60,102,114,111,122,101,110,32,105,109,112,111, - 114,116,108,105,98,46,95,98,111,111,116,115,116,114,97,112, - 62,117,8,0,0,0,103,101,116,95,99,111,100,101,208,2, - 0,0,115,2,0,0,0,0,4,117,23,0,0,0,70,114, - 111,122,101,110,73,109,112,111,114,116,101,114,46,103,101,116, - 95,99,111,100,101,99,2,0,0,0,0,0,0,0,2,0, - 0,0,1,0,0,0,67,0,0,0,115,4,0,0,0,100, - 1,0,83,40,2,0,0,0,117,54,0,0,0,82,101,116, - 117,114,110,32,78,111,110,101,32,97,115,32,102,114,111,122, - 101,110,32,109,111,100,117,108,101,115,32,100,111,32,110,111, - 116,32,104,97,118,101,32,115,111,117,114,99,101,32,99,111, - 100,101,46,78,40,1,0,0,0,117,4,0,0,0,78,111, - 110,101,40,2,0,0,0,117,3,0,0,0,99,108,115,117, - 8,0,0,0,102,117,108,108,110,97,109,101,40,0,0,0, - 0,40,0,0,0,0,117,29,0,0,0,60,102,114,111,122, - 101,110,32,105,109,112,111,114,116,108,105,98,46,95,98,111, - 111,116,115,116,114,97,112,62,117,10,0,0,0,103,101,116, - 95,115,111,117,114,99,101,214,2,0,0,115,2,0,0,0, - 0,4,117,25,0,0,0,70,114,111,122,101,110,73,109,112, - 111,114,116,101,114,46,103,101,116,95,115,111,117,114,99,101, - 99,2,0,0,0,0,0,0,0,2,0,0,0,2,0,0, - 0,67,0,0,0,115,13,0,0,0,116,0,0,106,1,0, - 124,1,0,131,1,0,83,40,1,0,0,0,117,46,0,0, - 0,82,101,116,117,114,110,32,84,114,117,101,32,105,102,32, - 116,104,101,32,102,114,111,122,101,110,32,109,111,100,117,108, - 101,32,105,115,32,97,32,112,97,99,107,97,103,101,46,40, - 2,0,0,0,117,4,0,0,0,95,105,109,112,117,17,0, - 0,0,105,115,95,102,114,111,122,101,110,95,112,97,99,107, - 97,103,101,40,2,0,0,0,117,3,0,0,0,99,108,115, - 117,8,0,0,0,102,117,108,108,110,97,109,101,40,0,0, - 0,0,40,0,0,0,0,117,29,0,0,0,60,102,114,111, - 122,101,110,32,105,109,112,111,114,116,108,105,98,46,95,98, - 111,111,116,115,116,114,97,112,62,117,10,0,0,0,105,115, - 95,112,97,99,107,97,103,101,220,2,0,0,115,2,0,0, - 0,0,4,117,25,0,0,0,70,114,111,122,101,110,73,109, - 112,111,114,116,101,114,46,105,115,95,112,97,99,107,97,103, - 101,78,40,15,0,0,0,117,8,0,0,0,95,95,110,97, - 109,101,95,95,117,10,0,0,0,95,95,109,111,100,117,108, - 101,95,95,117,12,0,0,0,95,95,113,117,97,108,110,97, - 109,101,95,95,117,7,0,0,0,95,95,100,111,99,95,95, - 117,11,0,0,0,99,108,97,115,115,109,101,116,104,111,100, - 117,11,0,0,0,109,111,100,117,108,101,95,114,101,112,114, - 117,4,0,0,0,78,111,110,101,117,11,0,0,0,102,105, - 110,100,95,109,111,100,117,108,101,117,11,0,0,0,115,101, - 116,95,112,97,99,107,97,103,101,117,10,0,0,0,115,101, - 116,95,108,111,97,100,101,114,117,16,0,0,0,95,114,101, - 113,117,105,114,101,115,95,102,114,111,122,101,110,117,11,0, - 0,0,108,111,97,100,95,109,111,100,117,108,101,117,8,0, - 0,0,103,101,116,95,99,111,100,101,117,10,0,0,0,103, - 101,116,95,115,111,117,114,99,101,117,10,0,0,0,105,115, - 95,112,97,99,107,97,103,101,40,1,0,0,0,117,10,0, - 0,0,95,95,108,111,99,97,108,115,95,95,40,0,0,0, - 0,40,0,0,0,0,117,29,0,0,0,60,102,114,111,122, - 101,110,32,105,109,112,111,114,116,108,105,98,46,95,98,111, - 111,116,115,116,114,97,112,62,117,14,0,0,0,70,114,111, - 122,101,110,73,109,112,111,114,116,101,114,173,2,0,0,115, - 28,0,0,0,16,7,6,2,18,4,3,1,18,4,3,1, - 3,1,3,1,27,14,3,1,21,5,3,1,21,5,3,1, - 117,14,0,0,0,70,114,111,122,101,110,73,109,112,111,114, - 116,101,114,99,1,0,0,0,0,0,0,0,1,0,0,0, - 4,0,0,0,66,0,0,0,115,101,0,0,0,124,0,0, - 69,101,0,0,90,1,0,100,0,0,90,2,0,100,1,0, - 90,3,0,100,2,0,90,4,0,100,3,0,90,5,0,100, - 11,0,90,7,0,101,8,0,100,4,0,100,5,0,132,0, - 0,131,1,0,90,9,0,101,8,0,100,6,0,100,7,0, - 132,0,0,131,1,0,90,10,0,101,8,0,100,10,0,100, - 8,0,100,9,0,132,1,0,131,1,0,90,12,0,100,10, - 0,83,40,12,0,0,0,117,21,0,0,0,87,105,110,100, - 111,119,115,82,101,103,105,115,116,114,121,70,105,110,100,101, - 114,117,67,0,0,0,77,101,116,97,32,112,97,116,104,32, - 102,105,110,100,101,114,32,102,111,114,32,109,111,100,117,108, - 101,115,32,100,101,99,108,97,114,101,100,32,105,110,32,116, - 104,101,32,87,105,110,100,111,119,115,32,114,101,103,105,115, - 116,114,121,46,10,32,32,32,32,117,59,0,0,0,83,111, - 102,116,119,97,114,101,92,80,121,116,104,111,110,92,80,121, - 116,104,111,110,67,111,114,101,92,123,115,121,115,95,118,101, - 114,115,105,111,110,125,92,77,111,100,117,108,101,115,92,123, - 102,117,108,108,110,97,109,101,125,117,65,0,0,0,83,111, - 102,116,119,97,114,101,92,80,121,116,104,111,110,92,80,121, - 116,104,111,110,67,111,114,101,92,123,115,121,115,95,118,101, - 114,115,105,111,110,125,92,77,111,100,117,108,101,115,92,123, - 102,117,108,108,110,97,109,101,125,92,68,101,98,117,103,99, - 2,0,0,0,0,0,0,0,2,0,0,0,11,0,0,0, - 67,0,0,0,115,67,0,0,0,121,23,0,116,0,0,106, - 1,0,116,0,0,106,2,0,124,1,0,131,2,0,83,87, - 110,37,0,4,116,3,0,107,10,0,114,62,0,1,1,1, - 116,0,0,106,1,0,116,0,0,106,4,0,124,1,0,131, - 2,0,83,89,110,1,0,88,100,0,0,83,40,1,0,0, - 0,78,40,5,0,0,0,117,7,0,0,0,95,119,105,110, - 114,101,103,117,7,0,0,0,79,112,101,110,75,101,121,117, - 17,0,0,0,72,75,69,89,95,67,85,82,82,69,78,84, - 95,85,83,69,82,117,12,0,0,0,87,105,110,100,111,119, - 115,69,114,114,111,114,117,18,0,0,0,72,75,69,89,95, - 76,79,67,65,76,95,77,65,67,72,73,78,69,40,2,0, - 0,0,117,3,0,0,0,99,108,115,117,3,0,0,0,107, - 101,121,40,0,0,0,0,40,0,0,0,0,117,29,0,0, - 0,60,102,114,111,122,101,110,32,105,109,112,111,114,116,108, - 105,98,46,95,98,111,111,116,115,116,114,97,112,62,117,14, - 0,0,0,95,111,112,101,110,95,114,101,103,105,115,116,114, - 121,240,2,0,0,115,8,0,0,0,0,2,3,1,23,1, - 13,1,117,36,0,0,0,87,105,110,100,111,119,115,82,101, - 103,105,115,116,114,121,70,105,110,100,101,114,46,95,111,112, - 101,110,95,114,101,103,105,115,116,114,121,99,2,0,0,0, - 0,0,0,0,6,0,0,0,16,0,0,0,67,0,0,0, - 115,142,0,0,0,124,0,0,106,0,0,114,21,0,124,0, - 0,106,1,0,125,2,0,110,9,0,124,0,0,106,2,0, - 125,2,0,124,2,0,106,3,0,100,1,0,124,1,0,100, - 2,0,116,4,0,106,5,0,100,0,0,100,3,0,133,2, - 0,25,131,0,2,125,3,0,121,46,0,124,0,0,106,6, - 0,124,3,0,131,1,0,143,25,0,125,4,0,116,7,0, - 106,8,0,124,4,0,100,4,0,131,2,0,125,5,0,87, - 100,0,0,81,88,87,110,22,0,4,116,9,0,107,10,0, - 114,137,0,1,1,1,100,0,0,83,89,110,1,0,88,124, - 5,0,83,40,5,0,0,0,78,117,8,0,0,0,102,117, - 108,108,110,97,109,101,117,11,0,0,0,115,121,115,95,118, - 101,114,115,105,111,110,105,3,0,0,0,117,0,0,0,0, - 40,11,0,0,0,117,11,0,0,0,68,69,66,85,71,95, - 66,85,73,76,68,117,18,0,0,0,82,69,71,73,83,84, - 82,89,95,75,69,89,95,68,69,66,85,71,117,12,0,0, - 0,82,69,71,73,83,84,82,89,95,75,69,89,117,6,0, - 0,0,102,111,114,109,97,116,117,3,0,0,0,115,121,115, - 117,7,0,0,0,118,101,114,115,105,111,110,117,14,0,0, - 0,95,111,112,101,110,95,114,101,103,105,115,116,114,121,117, - 7,0,0,0,95,119,105,110,114,101,103,117,10,0,0,0, - 81,117,101,114,121,86,97,108,117,101,117,12,0,0,0,87, - 105,110,100,111,119,115,69,114,114,111,114,117,4,0,0,0, - 78,111,110,101,40,6,0,0,0,117,3,0,0,0,99,108, - 115,117,8,0,0,0,102,117,108,108,110,97,109,101,117,12, - 0,0,0,114,101,103,105,115,116,114,121,95,107,101,121,117, - 3,0,0,0,107,101,121,117,4,0,0,0,104,107,101,121, - 117,8,0,0,0,102,105,108,101,112,97,116,104,40,0,0, - 0,0,40,0,0,0,0,117,29,0,0,0,60,102,114,111, - 122,101,110,32,105,109,112,111,114,116,108,105,98,46,95,98, - 111,111,116,115,116,114,97,112,62,117,16,0,0,0,95,115, - 101,97,114,99,104,95,114,101,103,105,115,116,114,121,247,2, - 0,0,115,22,0,0,0,0,2,9,1,12,2,9,1,15, - 1,22,1,3,1,18,1,28,1,13,1,9,1,117,38,0, - 0,0,87,105,110,100,111,119,115,82,101,103,105,115,116,114, - 121,70,105,110,100,101,114,46,95,115,101,97,114,99,104,95, - 114,101,103,105,115,116,114,121,99,3,0,0,0,0,0,0, - 0,7,0,0,0,12,0,0,0,67,0,0,0,115,140,0, - 0,0,124,0,0,106,0,0,124,1,0,131,1,0,125,3, - 0,124,3,0,100,1,0,107,8,0,114,31,0,100,1,0, - 83,121,17,0,116,2,0,106,3,0,124,3,0,131,1,0, - 1,87,110,22,0,4,116,4,0,107,10,0,114,72,0,1, - 1,1,100,1,0,83,89,110,1,0,88,120,60,0,116,5, - 0,131,0,0,68,93,49,0,92,3,0,125,4,0,125,5, - 0,125,6,0,124,3,0,106,6,0,116,7,0,124,5,0, - 131,1,0,131,1,0,114,83,0,124,4,0,124,1,0,124, - 3,0,131,2,0,83,113,83,0,87,100,1,0,83,40,2, - 0,0,0,117,34,0,0,0,70,105,110,100,32,109,111,100, - 117,108,101,32,110,97,109,101,100,32,105,110,32,116,104,101, - 32,114,101,103,105,115,116,114,121,46,78,40,8,0,0,0, - 117,16,0,0,0,95,115,101,97,114,99,104,95,114,101,103, - 105,115,116,114,121,117,4,0,0,0,78,111,110,101,117,3, - 0,0,0,95,111,115,117,4,0,0,0,115,116,97,116,117, - 7,0,0,0,79,83,69,114,114,111,114,117,27,0,0,0, - 95,103,101,116,95,115,117,112,112,111,114,116,101,100,95,102, - 105,108,101,95,108,111,97,100,101,114,115,117,8,0,0,0, - 101,110,100,115,119,105,116,104,117,5,0,0,0,116,117,112, - 108,101,40,7,0,0,0,117,3,0,0,0,99,108,115,117, - 8,0,0,0,102,117,108,108,110,97,109,101,117,4,0,0, - 0,112,97,116,104,117,8,0,0,0,102,105,108,101,112,97, - 116,104,117,6,0,0,0,108,111,97,100,101,114,117,8,0, - 0,0,115,117,102,102,105,120,101,115,117,1,0,0,0,95, - 40,0,0,0,0,40,0,0,0,0,117,29,0,0,0,60, - 102,114,111,122,101,110,32,105,109,112,111,114,116,108,105,98, - 46,95,98,111,111,116,115,116,114,97,112,62,117,11,0,0, - 0,102,105,110,100,95,109,111,100,117,108,101,6,3,0,0, - 115,20,0,0,0,0,3,15,1,12,1,4,1,3,1,17, - 1,13,1,9,1,25,1,21,1,117,33,0,0,0,87,105, - 110,100,111,119,115,82,101,103,105,115,116,114,121,70,105,110, - 100,101,114,46,102,105,110,100,95,109,111,100,117,108,101,78, - 70,40,13,0,0,0,117,8,0,0,0,95,95,110,97,109, - 101,95,95,117,10,0,0,0,95,95,109,111,100,117,108,101, - 95,95,117,12,0,0,0,95,95,113,117,97,108,110,97,109, - 101,95,95,117,7,0,0,0,95,95,100,111,99,95,95,117, - 12,0,0,0,82,69,71,73,83,84,82,89,95,75,69,89, - 117,18,0,0,0,82,69,71,73,83,84,82,89,95,75,69, - 89,95,68,69,66,85,71,117,5,0,0,0,70,97,108,115, - 101,117,11,0,0,0,68,69,66,85,71,95,66,85,73,76, - 68,117,11,0,0,0,99,108,97,115,115,109,101,116,104,111, - 100,117,14,0,0,0,95,111,112,101,110,95,114,101,103,105, - 115,116,114,121,117,16,0,0,0,95,115,101,97,114,99,104, - 95,114,101,103,105,115,116,114,121,117,4,0,0,0,78,111, - 110,101,117,11,0,0,0,102,105,110,100,95,109,111,100,117, - 108,101,40,1,0,0,0,117,10,0,0,0,95,95,108,111, - 99,97,108,115,95,95,40,0,0,0,0,40,0,0,0,0, - 117,29,0,0,0,60,102,114,111,122,101,110,32,105,109,112, - 111,114,116,108,105,98,46,95,98,111,111,116,115,116,114,97, - 112,62,117,21,0,0,0,87,105,110,100,111,119,115,82,101, - 103,105,115,116,114,121,70,105,110,100,101,114,227,2,0,0, - 115,16,0,0,0,16,3,6,3,6,3,6,2,6,2,18, - 7,18,15,3,1,117,21,0,0,0,87,105,110,100,111,119, - 115,82,101,103,105,115,116,114,121,70,105,110,100,101,114,99, - 1,0,0,0,0,0,0,0,1,0,0,0,5,0,0,0, - 66,0,0,0,115,74,0,0,0,124,0,0,69,101,0,0, - 90,1,0,100,0,0,90,2,0,100,1,0,90,3,0,100, - 2,0,100,3,0,132,0,0,90,4,0,100,4,0,100,5, - 0,132,0,0,90,5,0,101,6,0,100,6,0,100,10,0, - 100,7,0,100,8,0,132,0,1,131,1,0,90,8,0,100, - 9,0,83,40,11,0,0,0,117,13,0,0,0,95,76,111, - 97,100,101,114,66,97,115,105,99,115,117,83,0,0,0,66, - 97,115,101,32,99,108,97,115,115,32,111,102,32,99,111,109, - 109,111,110,32,99,111,100,101,32,110,101,101,100,101,100,32, - 98,121,32,98,111,116,104,32,83,111,117,114,99,101,76,111, - 97,100,101,114,32,97,110,100,10,32,32,32,32,83,111,117, - 114,99,101,108,101,115,115,70,105,108,101,76,111,97,100,101, - 114,46,99,2,0,0,0,0,0,0,0,5,0,0,0,3, - 0,0,0,67,0,0,0,115,88,0,0,0,116,0,0,124, - 0,0,106,1,0,124,1,0,131,1,0,131,1,0,100,1, - 0,25,125,2,0,124,2,0,106,2,0,100,2,0,100,1, - 0,131,2,0,100,3,0,25,125,3,0,124,1,0,106,3, - 0,100,2,0,131,1,0,100,4,0,25,125,4,0,124,3, - 0,100,5,0,107,2,0,111,87,0,124,4,0,100,5,0, - 107,3,0,83,40,6,0,0,0,117,141,0,0,0,67,111, - 110,99,114,101,116,101,32,105,109,112,108,101,109,101,110,116, - 97,116,105,111,110,32,111,102,32,73,110,115,112,101,99,116, - 76,111,97,100,101,114,46,105,115,95,112,97,99,107,97,103, - 101,32,98,121,32,99,104,101,99,107,105,110,103,32,105,102, - 10,32,32,32,32,32,32,32,32,116,104,101,32,112,97,116, - 104,32,114,101,116,117,114,110,101,100,32,98,121,32,103,101, - 116,95,102,105,108,101,110,97,109,101,32,104,97,115,32,97, - 32,102,105,108,101,110,97,109,101,32,111,102,32,39,95,95, - 105,110,105,116,95,95,46,112,121,39,46,105,1,0,0,0, - 117,1,0,0,0,46,105,0,0,0,0,105,2,0,0,0, - 117,8,0,0,0,95,95,105,110,105,116,95,95,40,4,0, - 0,0,117,11,0,0,0,95,112,97,116,104,95,115,112,108, - 105,116,117,12,0,0,0,103,101,116,95,102,105,108,101,110, - 97,109,101,117,6,0,0,0,114,115,112,108,105,116,117,10, - 0,0,0,114,112,97,114,116,105,116,105,111,110,40,5,0, - 0,0,117,4,0,0,0,115,101,108,102,117,8,0,0,0, - 102,117,108,108,110,97,109,101,117,8,0,0,0,102,105,108, - 101,110,97,109,101,117,13,0,0,0,102,105,108,101,110,97, - 109,101,95,98,97,115,101,117,9,0,0,0,116,97,105,108, - 95,110,97,109,101,40,0,0,0,0,40,0,0,0,0,117, - 29,0,0,0,60,102,114,111,122,101,110,32,105,109,112,111, - 114,116,108,105,98,46,95,98,111,111,116,115,116,114,97,112, - 62,117,10,0,0,0,105,115,95,112,97,99,107,97,103,101, - 26,3,0,0,115,8,0,0,0,0,3,25,1,22,1,19, - 1,117,24,0,0,0,95,76,111,97,100,101,114,66,97,115, - 105,99,115,46,105,115,95,112,97,99,107,97,103,101,99,5, - 0,0,0,0,0,0,0,12,0,0,0,22,0,0,0,67, - 0,0,0,115,198,1,0,0,124,2,0,100,1,0,100,2, - 0,133,2,0,25,125,5,0,124,2,0,100,2,0,100,3, - 0,133,2,0,25,125,6,0,124,2,0,100,3,0,100,4, - 0,133,2,0,25,125,7,0,124,5,0,116,0,0,107,3, - 0,114,105,0,100,5,0,106,1,0,124,1,0,124,5,0, - 131,2,0,125,8,0,116,2,0,124,8,0,100,6,0,124, - 1,0,100,7,0,124,3,0,131,1,2,130,1,0,110,116, - 0,116,3,0,124,6,0,131,1,0,100,2,0,107,3,0, - 114,163,0,100,8,0,106,1,0,124,1,0,131,1,0,125, - 9,0,116,4,0,124,9,0,131,1,0,1,116,5,0,124, - 9,0,131,1,0,130,1,0,110,58,0,116,3,0,124,7, - 0,131,1,0,100,2,0,107,3,0,114,221,0,100,9,0, - 106,1,0,124,1,0,131,1,0,125,9,0,116,4,0,124, - 9,0,131,1,0,1,116,5,0,124,9,0,131,1,0,130, - 1,0,110,0,0,124,4,0,100,1,0,107,9,0,114,184, - 1,121,20,0,116,7,0,124,4,0,100,10,0,25,131,1, - 0,125,10,0,87,110,18,0,4,116,8,0,107,10,0,114, - 17,1,1,1,1,89,110,71,0,88,116,9,0,124,6,0, - 131,1,0,124,10,0,107,3,0,114,88,1,100,11,0,106, - 1,0,124,1,0,131,1,0,125,9,0,116,4,0,124,9, - 0,131,1,0,1,116,2,0,124,9,0,100,6,0,124,1, - 0,100,7,0,124,3,0,131,1,2,130,1,0,110,0,0, - 121,18,0,124,4,0,100,12,0,25,100,13,0,64,125,11, - 0,87,110,18,0,4,116,8,0,107,10,0,114,126,1,1, - 1,1,89,113,184,1,88,116,9,0,124,7,0,131,1,0, - 124,11,0,107,3,0,114,184,1,116,2,0,100,11,0,106, - 1,0,124,1,0,131,1,0,100,6,0,124,1,0,100,7, - 0,124,3,0,131,1,2,130,1,0,113,184,1,110,0,0, - 124,2,0,100,4,0,100,1,0,133,2,0,25,83,40,14, - 0,0,0,117,193,0,0,0,82,101,116,117,114,110,32,116, - 104,101,32,109,97,114,115,104,97,108,108,101,100,32,98,121, - 116,101,115,32,102,114,111,109,32,98,121,116,101,99,111,100, - 101,44,32,118,101,114,105,102,121,105,110,103,32,116,104,101, - 32,109,97,103,105,99,10,32,32,32,32,32,32,32,32,110, - 117,109,98,101,114,44,32,116,105,109,101,115,116,97,109,112, - 32,97,110,100,32,115,111,117,114,99,101,32,115,105,122,101, - 32,97,108,111,110,103,32,116,104,101,32,119,97,121,46,10, - 10,32,32,32,32,32,32,32,32,73,102,32,115,111,117,114, - 99,101,95,115,116,97,116,115,32,105,115,32,78,111,110,101, - 32,116,104,101,110,32,115,107,105,112,32,116,104,101,32,116, - 105,109,101,115,116,97,109,112,32,99,104,101,99,107,46,10, - 10,32,32,32,32,32,32,32,32,78,105,4,0,0,0,105, - 8,0,0,0,105,12,0,0,0,117,30,0,0,0,98,97, - 100,32,109,97,103,105,99,32,110,117,109,98,101,114,32,105, - 110,32,123,33,114,125,58,32,123,33,114,125,117,4,0,0, - 0,110,97,109,101,117,4,0,0,0,112,97,116,104,117,19, - 0,0,0,98,97,100,32,116,105,109,101,115,116,97,109,112, - 32,105,110,32,123,125,117,14,0,0,0,98,97,100,32,115, - 105,122,101,32,105,110,32,123,125,117,5,0,0,0,109,116, - 105,109,101,117,24,0,0,0,98,121,116,101,99,111,100,101, - 32,105,115,32,115,116,97,108,101,32,102,111,114,32,123,125, - 117,4,0,0,0,115,105,122,101,108,3,0,0,0,255,127, - 255,127,3,0,40,10,0,0,0,117,12,0,0,0,95,77, - 65,71,73,67,95,66,89,84,69,83,117,6,0,0,0,102, - 111,114,109,97,116,117,11,0,0,0,73,109,112,111,114,116, - 69,114,114,111,114,117,3,0,0,0,108,101,110,117,16,0, - 0,0,95,118,101,114,98,111,115,101,95,109,101,115,115,97, - 103,101,117,8,0,0,0,69,79,70,69,114,114,111,114,117, - 4,0,0,0,78,111,110,101,117,3,0,0,0,105,110,116, - 117,8,0,0,0,75,101,121,69,114,114,111,114,117,7,0, - 0,0,95,114,95,108,111,110,103,40,12,0,0,0,117,4, - 0,0,0,115,101,108,102,117,8,0,0,0,102,117,108,108, - 110,97,109,101,117,4,0,0,0,100,97,116,97,117,13,0, - 0,0,98,121,116,101,99,111,100,101,95,112,97,116,104,117, - 12,0,0,0,115,111,117,114,99,101,95,115,116,97,116,115, - 117,5,0,0,0,109,97,103,105,99,117,13,0,0,0,114, - 97,119,95,116,105,109,101,115,116,97,109,112,117,8,0,0, - 0,114,97,119,95,115,105,122,101,117,3,0,0,0,109,115, - 103,117,7,0,0,0,109,101,115,115,97,103,101,117,12,0, - 0,0,115,111,117,114,99,101,95,109,116,105,109,101,117,11, - 0,0,0,115,111,117,114,99,101,95,115,105,122,101,40,0, - 0,0,0,40,0,0,0,0,117,29,0,0,0,60,102,114, - 111,122,101,110,32,105,109,112,111,114,116,108,105,98,46,95, - 98,111,111,116,115,116,114,97,112,62,117,20,0,0,0,95, - 98,121,116,101,115,95,102,114,111,109,95,98,121,116,101,99, - 111,100,101,34,3,0,0,115,66,0,0,0,0,7,16,1, - 16,1,16,1,12,1,18,1,27,1,18,1,15,1,10,1, - 15,1,18,1,15,1,10,1,15,1,12,1,3,1,20,1, - 13,1,5,2,18,1,15,1,10,1,15,1,12,1,3,1, - 18,1,13,1,5,2,18,1,3,1,15,1,21,3,117,34, - 0,0,0,95,76,111,97,100,101,114,66,97,115,105,99,115, - 46,95,98,121,116,101,115,95,102,114,111,109,95,98,121,116, - 101,99,111,100,101,117,10,0,0,0,115,111,117,114,99,101, - 108,101,115,115,99,2,0,0,0,1,0,0,0,5,0,0, - 0,12,0,0,0,67,0,0,0,115,227,0,0,0,124,1, - 0,106,0,0,125,3,0,124,0,0,106,1,0,124,3,0, - 131,1,0,125,4,0,124,0,0,106,2,0,124,3,0,131, - 1,0,124,1,0,95,3,0,124,2,0,115,106,0,121,22, - 0,116,4,0,124,1,0,106,3,0,131,1,0,124,1,0, - 95,5,0,87,113,118,0,4,116,6,0,107,10,0,114,102, - 0,1,1,1,124,1,0,106,3,0,124,1,0,95,5,0, - 89,113,118,0,88,110,12,0,124,1,0,106,3,0,124,1, - 0,95,5,0,124,3,0,124,1,0,95,7,0,124,0,0, - 106,8,0,124,3,0,131,1,0,114,170,0,116,9,0,124, - 1,0,106,3,0,131,1,0,100,1,0,25,103,1,0,124, - 1,0,95,10,0,110,25,0,124,1,0,106,7,0,106,11, - 0,100,2,0,131,1,0,100,1,0,25,124,1,0,95,7, - 0,124,0,0,124,1,0,95,12,0,116,13,0,116,14,0, - 124,4,0,124,1,0,106,15,0,131,3,0,1,124,1,0, - 83,40,3,0,0,0,117,82,0,0,0,72,101,108,112,101, - 114,32,102,111,114,32,108,111,97,100,95,109,111,100,117,108, - 101,32,97,98,108,101,32,116,111,32,104,97,110,100,108,101, - 32,101,105,116,104,101,114,32,115,111,117,114,99,101,32,111, - 114,32,115,111,117,114,99,101,108,101,115,115,10,32,32,32, - 32,32,32,32,32,108,111,97,100,105,110,103,46,105,0,0, - 0,0,117,1,0,0,0,46,40,16,0,0,0,117,8,0, - 0,0,95,95,110,97,109,101,95,95,117,8,0,0,0,103, - 101,116,95,99,111,100,101,117,12,0,0,0,103,101,116,95, - 102,105,108,101,110,97,109,101,117,8,0,0,0,95,95,102, - 105,108,101,95,95,117,17,0,0,0,99,97,99,104,101,95, - 102,114,111,109,95,115,111,117,114,99,101,117,10,0,0,0, - 95,95,99,97,99,104,101,100,95,95,117,19,0,0,0,78, - 111,116,73,109,112,108,101,109,101,110,116,101,100,69,114,114, - 111,114,117,11,0,0,0,95,95,112,97,99,107,97,103,101, - 95,95,117,10,0,0,0,105,115,95,112,97,99,107,97,103, - 101,117,11,0,0,0,95,112,97,116,104,95,115,112,108,105, - 116,117,8,0,0,0,95,95,112,97,116,104,95,95,117,10, - 0,0,0,114,112,97,114,116,105,116,105,111,110,117,10,0, - 0,0,95,95,108,111,97,100,101,114,95,95,117,25,0,0, - 0,95,99,97,108,108,95,119,105,116,104,95,102,114,97,109, - 101,115,95,114,101,109,111,118,101,100,117,4,0,0,0,101, - 120,101,99,117,8,0,0,0,95,95,100,105,99,116,95,95, - 40,5,0,0,0,117,4,0,0,0,115,101,108,102,117,6, - 0,0,0,109,111,100,117,108,101,117,10,0,0,0,115,111, - 117,114,99,101,108,101,115,115,117,4,0,0,0,110,97,109, - 101,117,11,0,0,0,99,111,100,101,95,111,98,106,101,99, - 116,40,0,0,0,0,40,0,0,0,0,117,29,0,0,0, - 60,102,114,111,122,101,110,32,105,109,112,111,114,116,108,105, - 98,46,95,98,111,111,116,115,116,114,97,112,62,117,12,0, - 0,0,95,108,111,97,100,95,109,111,100,117,108,101,79,3, - 0,0,115,32,0,0,0,0,4,9,1,15,1,18,1,6, - 1,3,1,22,1,13,1,20,2,12,1,9,1,15,1,28, - 2,25,1,9,1,19,1,117,26,0,0,0,95,76,111,97, - 100,101,114,66,97,115,105,99,115,46,95,108,111,97,100,95, - 109,111,100,117,108,101,78,70,40,9,0,0,0,117,8,0, + 10,0,0,0,105,115,95,112,97,99,107,97,103,101,226,2, + 0,0,115,2,0,0,0,0,4,117,25,0,0,0,70,114, + 111,122,101,110,73,109,112,111,114,116,101,114,46,105,115,95, + 112,97,99,107,97,103,101,78,40,15,0,0,0,117,8,0, 0,0,95,95,110,97,109,101,95,95,117,10,0,0,0,95, 95,109,111,100,117,108,101,95,95,117,12,0,0,0,95,95, 113,117,97,108,110,97,109,101,95,95,117,7,0,0,0,95, - 95,100,111,99,95,95,117,10,0,0,0,105,115,95,112,97, - 99,107,97,103,101,117,20,0,0,0,95,98,121,116,101,115, - 95,102,114,111,109,95,98,121,116,101,99,111,100,101,117,17, - 0,0,0,109,111,100,117,108,101,95,102,111,114,95,108,111, - 97,100,101,114,117,5,0,0,0,70,97,108,115,101,117,12, - 0,0,0,95,108,111,97,100,95,109,111,100,117,108,101,40, - 1,0,0,0,117,10,0,0,0,95,95,108,111,99,97,108, - 115,95,95,40,0,0,0,0,40,0,0,0,0,117,29,0, + 95,100,111,99,95,95,117,11,0,0,0,99,108,97,115,115, + 109,101,116,104,111,100,117,11,0,0,0,109,111,100,117,108, + 101,95,114,101,112,114,117,4,0,0,0,78,111,110,101,117, + 11,0,0,0,102,105,110,100,95,109,111,100,117,108,101,117, + 11,0,0,0,115,101,116,95,112,97,99,107,97,103,101,117, + 10,0,0,0,115,101,116,95,108,111,97,100,101,114,117,16, + 0,0,0,95,114,101,113,117,105,114,101,115,95,102,114,111, + 122,101,110,117,11,0,0,0,108,111,97,100,95,109,111,100, + 117,108,101,117,8,0,0,0,103,101,116,95,99,111,100,101, + 117,10,0,0,0,103,101,116,95,115,111,117,114,99,101,117, + 10,0,0,0,105,115,95,112,97,99,107,97,103,101,40,1, + 0,0,0,117,10,0,0,0,95,95,108,111,99,97,108,115, + 95,95,40,0,0,0,0,40,0,0,0,0,117,29,0,0, + 0,60,102,114,111,122,101,110,32,105,109,112,111,114,116,108, + 105,98,46,95,98,111,111,116,115,116,114,97,112,62,117,14, + 0,0,0,70,114,111,122,101,110,73,109,112,111,114,116,101, + 114,179,2,0,0,115,28,0,0,0,16,7,6,2,18,4, + 3,1,18,4,3,1,3,1,3,1,27,14,3,1,21,5, + 3,1,21,5,3,1,117,14,0,0,0,70,114,111,122,101, + 110,73,109,112,111,114,116,101,114,99,1,0,0,0,0,0, + 0,0,1,0,0,0,4,0,0,0,66,0,0,0,115,101, + 0,0,0,124,0,0,69,101,0,0,90,1,0,100,0,0, + 90,2,0,100,1,0,90,3,0,100,2,0,90,4,0,100, + 3,0,90,5,0,100,11,0,90,7,0,101,8,0,100,4, + 0,100,5,0,132,0,0,131,1,0,90,9,0,101,8,0, + 100,6,0,100,7,0,132,0,0,131,1,0,90,10,0,101, + 8,0,100,10,0,100,8,0,100,9,0,132,1,0,131,1, + 0,90,12,0,100,10,0,83,40,12,0,0,0,117,21,0, + 0,0,87,105,110,100,111,119,115,82,101,103,105,115,116,114, + 121,70,105,110,100,101,114,117,67,0,0,0,77,101,116,97, + 32,112,97,116,104,32,102,105,110,100,101,114,32,102,111,114, + 32,109,111,100,117,108,101,115,32,100,101,99,108,97,114,101, + 100,32,105,110,32,116,104,101,32,87,105,110,100,111,119,115, + 32,114,101,103,105,115,116,114,121,46,10,32,32,32,32,117, + 59,0,0,0,83,111,102,116,119,97,114,101,92,80,121,116, + 104,111,110,92,80,121,116,104,111,110,67,111,114,101,92,123, + 115,121,115,95,118,101,114,115,105,111,110,125,92,77,111,100, + 117,108,101,115,92,123,102,117,108,108,110,97,109,101,125,117, + 65,0,0,0,83,111,102,116,119,97,114,101,92,80,121,116, + 104,111,110,92,80,121,116,104,111,110,67,111,114,101,92,123, + 115,121,115,95,118,101,114,115,105,111,110,125,92,77,111,100, + 117,108,101,115,92,123,102,117,108,108,110,97,109,101,125,92, + 68,101,98,117,103,99,2,0,0,0,0,0,0,0,2,0, + 0,0,11,0,0,0,67,0,0,0,115,67,0,0,0,121, + 23,0,116,0,0,106,1,0,116,0,0,106,2,0,124,1, + 0,131,2,0,83,87,110,37,0,4,116,3,0,107,10,0, + 114,62,0,1,1,1,116,0,0,106,1,0,116,0,0,106, + 4,0,124,1,0,131,2,0,83,89,110,1,0,88,100,0, + 0,83,40,1,0,0,0,78,40,5,0,0,0,117,7,0, + 0,0,95,119,105,110,114,101,103,117,7,0,0,0,79,112, + 101,110,75,101,121,117,17,0,0,0,72,75,69,89,95,67, + 85,82,82,69,78,84,95,85,83,69,82,117,12,0,0,0, + 87,105,110,100,111,119,115,69,114,114,111,114,117,18,0,0, + 0,72,75,69,89,95,76,79,67,65,76,95,77,65,67,72, + 73,78,69,40,2,0,0,0,117,3,0,0,0,99,108,115, + 117,3,0,0,0,107,101,121,40,0,0,0,0,40,0,0, + 0,0,117,29,0,0,0,60,102,114,111,122,101,110,32,105, + 109,112,111,114,116,108,105,98,46,95,98,111,111,116,115,116, + 114,97,112,62,117,14,0,0,0,95,111,112,101,110,95,114, + 101,103,105,115,116,114,121,246,2,0,0,115,8,0,0,0, + 0,2,3,1,23,1,13,1,117,36,0,0,0,87,105,110, + 100,111,119,115,82,101,103,105,115,116,114,121,70,105,110,100, + 101,114,46,95,111,112,101,110,95,114,101,103,105,115,116,114, + 121,99,2,0,0,0,0,0,0,0,6,0,0,0,16,0, + 0,0,67,0,0,0,115,142,0,0,0,124,0,0,106,0, + 0,114,21,0,124,0,0,106,1,0,125,2,0,110,9,0, + 124,0,0,106,2,0,125,2,0,124,2,0,106,3,0,100, + 1,0,124,1,0,100,2,0,116,4,0,106,5,0,100,0, + 0,100,3,0,133,2,0,25,131,0,2,125,3,0,121,46, + 0,124,0,0,106,6,0,124,3,0,131,1,0,143,25,0, + 125,4,0,116,7,0,106,8,0,124,4,0,100,4,0,131, + 2,0,125,5,0,87,100,0,0,81,88,87,110,22,0,4, + 116,9,0,107,10,0,114,137,0,1,1,1,100,0,0,83, + 89,110,1,0,88,124,5,0,83,40,5,0,0,0,78,117, + 8,0,0,0,102,117,108,108,110,97,109,101,117,11,0,0, + 0,115,121,115,95,118,101,114,115,105,111,110,105,3,0,0, + 0,117,0,0,0,0,40,11,0,0,0,117,11,0,0,0, + 68,69,66,85,71,95,66,85,73,76,68,117,18,0,0,0, + 82,69,71,73,83,84,82,89,95,75,69,89,95,68,69,66, + 85,71,117,12,0,0,0,82,69,71,73,83,84,82,89,95, + 75,69,89,117,6,0,0,0,102,111,114,109,97,116,117,3, + 0,0,0,115,121,115,117,7,0,0,0,118,101,114,115,105, + 111,110,117,14,0,0,0,95,111,112,101,110,95,114,101,103, + 105,115,116,114,121,117,7,0,0,0,95,119,105,110,114,101, + 103,117,10,0,0,0,81,117,101,114,121,86,97,108,117,101, + 117,12,0,0,0,87,105,110,100,111,119,115,69,114,114,111, + 114,117,4,0,0,0,78,111,110,101,40,6,0,0,0,117, + 3,0,0,0,99,108,115,117,8,0,0,0,102,117,108,108, + 110,97,109,101,117,12,0,0,0,114,101,103,105,115,116,114, + 121,95,107,101,121,117,3,0,0,0,107,101,121,117,4,0, + 0,0,104,107,101,121,117,8,0,0,0,102,105,108,101,112, + 97,116,104,40,0,0,0,0,40,0,0,0,0,117,29,0, 0,0,60,102,114,111,122,101,110,32,105,109,112,111,114,116, 108,105,98,46,95,98,111,111,116,115,116,114,97,112,62,117, - 13,0,0,0,95,76,111,97,100,101,114,66,97,115,105,99, - 115,21,3,0,0,115,10,0,0,0,16,3,6,2,12,8, - 12,45,6,1,117,13,0,0,0,95,76,111,97,100,101,114, - 66,97,115,105,99,115,99,1,0,0,0,0,0,0,0,1, - 0,0,0,2,0,0,0,66,0,0,0,115,104,0,0,0, - 124,0,0,69,101,0,0,90,1,0,100,0,0,90,2,0, - 100,1,0,100,2,0,132,0,0,90,3,0,100,3,0,100, - 4,0,132,0,0,90,4,0,100,5,0,100,6,0,132,0, - 0,90,5,0,100,7,0,100,8,0,132,0,0,90,6,0, - 100,9,0,100,10,0,132,0,0,90,7,0,100,11,0,100, - 12,0,132,0,0,90,8,0,100,13,0,100,14,0,132,0, - 0,90,9,0,100,15,0,83,40,16,0,0,0,117,12,0, - 0,0,83,111,117,114,99,101,76,111,97,100,101,114,99,2, - 0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,67, - 0,0,0,115,10,0,0,0,116,0,0,130,1,0,100,1, - 0,83,40,2,0,0,0,117,121,0,0,0,79,112,116,105, - 111,110,97,108,32,109,101,116,104,111,100,32,116,104,97,116, - 32,114,101,116,117,114,110,115,32,116,104,101,32,109,111,100, - 105,102,105,99,97,116,105,111,110,32,116,105,109,101,32,40, - 97,110,32,105,110,116,41,32,102,111,114,32,116,104,101,10, - 32,32,32,32,32,32,32,32,115,112,101,99,105,102,105,101, - 100,32,112,97,116,104,44,32,119,104,101,114,101,32,112,97, - 116,104,32,105,115,32,97,32,115,116,114,46,10,32,32,32, - 32,32,32,32,32,78,40,1,0,0,0,117,19,0,0,0, - 78,111,116,73,109,112,108,101,109,101,110,116,101,100,69,114, - 114,111,114,40,2,0,0,0,117,4,0,0,0,115,101,108, - 102,117,4,0,0,0,112,97,116,104,40,0,0,0,0,40, - 0,0,0,0,117,29,0,0,0,60,102,114,111,122,101,110, - 32,105,109,112,111,114,116,108,105,98,46,95,98,111,111,116, - 115,116,114,97,112,62,117,10,0,0,0,112,97,116,104,95, - 109,116,105,109,101,105,3,0,0,115,2,0,0,0,0,4, - 117,23,0,0,0,83,111,117,114,99,101,76,111,97,100,101, - 114,46,112,97,116,104,95,109,116,105,109,101,99,2,0,0, - 0,0,0,0,0,2,0,0,0,3,0,0,0,67,0,0, - 0,115,20,0,0,0,105,1,0,124,0,0,106,0,0,124, - 1,0,131,1,0,100,1,0,54,83,40,2,0,0,0,117, - 114,1,0,0,79,112,116,105,111,110,97,108,32,109,101,116, - 104,111,100,32,114,101,116,117,114,110,105,110,103,32,97,32, - 109,101,116,97,100,97,116,97,32,100,105,99,116,32,102,111, - 114,32,116,104,101,32,115,112,101,99,105,102,105,101,100,32, - 112,97,116,104,10,32,32,32,32,32,32,32,32,116,111,32, - 98,121,32,116,104,101,32,112,97,116,104,32,40,115,116,114, - 41,46,10,32,32,32,32,32,32,32,32,80,111,115,115,105, - 98,108,101,32,107,101,121,115,58,10,32,32,32,32,32,32, - 32,32,45,32,39,109,116,105,109,101,39,32,40,109,97,110, - 100,97,116,111,114,121,41,32,105,115,32,116,104,101,32,110, - 117,109,101,114,105,99,32,116,105,109,101,115,116,97,109,112, - 32,111,102,32,108,97,115,116,32,115,111,117,114,99,101,10, - 32,32,32,32,32,32,32,32,32,32,99,111,100,101,32,109, - 111,100,105,102,105,99,97,116,105,111,110,59,10,32,32,32, - 32,32,32,32,32,45,32,39,115,105,122,101,39,32,40,111, - 112,116,105,111,110,97,108,41,32,105,115,32,116,104,101,32, - 115,105,122,101,32,105,110,32,98,121,116,101,115,32,111,102, - 32,116,104,101,32,115,111,117,114,99,101,32,99,111,100,101, - 46,10,10,32,32,32,32,32,32,32,32,73,109,112,108,101, - 109,101,110,116,105,110,103,32,116,104,105,115,32,109,101,116, - 104,111,100,32,97,108,108,111,119,115,32,116,104,101,32,108, - 111,97,100,101,114,32,116,111,32,114,101,97,100,32,98,121, - 116,101,99,111,100,101,32,102,105,108,101,115,46,10,32,32, - 32,32,32,32,32,32,117,5,0,0,0,109,116,105,109,101, - 40,1,0,0,0,117,10,0,0,0,112,97,116,104,95,109, - 116,105,109,101,40,2,0,0,0,117,4,0,0,0,115,101, - 108,102,117,4,0,0,0,112,97,116,104,40,0,0,0,0, + 16,0,0,0,95,115,101,97,114,99,104,95,114,101,103,105, + 115,116,114,121,253,2,0,0,115,22,0,0,0,0,2,9, + 1,12,2,9,1,15,1,22,1,3,1,18,1,28,1,13, + 1,9,1,117,38,0,0,0,87,105,110,100,111,119,115,82, + 101,103,105,115,116,114,121,70,105,110,100,101,114,46,95,115, + 101,97,114,99,104,95,114,101,103,105,115,116,114,121,99,3, + 0,0,0,0,0,0,0,7,0,0,0,12,0,0,0,67, + 0,0,0,115,140,0,0,0,124,0,0,106,0,0,124,1, + 0,131,1,0,125,3,0,124,3,0,100,1,0,107,8,0, + 114,31,0,100,1,0,83,121,17,0,116,2,0,106,3,0, + 124,3,0,131,1,0,1,87,110,22,0,4,116,4,0,107, + 10,0,114,72,0,1,1,1,100,1,0,83,89,110,1,0, + 88,120,60,0,116,5,0,131,0,0,68,93,49,0,92,3, + 0,125,4,0,125,5,0,125,6,0,124,3,0,106,6,0, + 116,7,0,124,5,0,131,1,0,131,1,0,114,83,0,124, + 4,0,124,1,0,124,3,0,131,2,0,83,113,83,0,87, + 100,1,0,83,40,2,0,0,0,117,34,0,0,0,70,105, + 110,100,32,109,111,100,117,108,101,32,110,97,109,101,100,32, + 105,110,32,116,104,101,32,114,101,103,105,115,116,114,121,46, + 78,40,8,0,0,0,117,16,0,0,0,95,115,101,97,114, + 99,104,95,114,101,103,105,115,116,114,121,117,4,0,0,0, + 78,111,110,101,117,3,0,0,0,95,111,115,117,4,0,0, + 0,115,116,97,116,117,7,0,0,0,79,83,69,114,114,111, + 114,117,27,0,0,0,95,103,101,116,95,115,117,112,112,111, + 114,116,101,100,95,102,105,108,101,95,108,111,97,100,101,114, + 115,117,8,0,0,0,101,110,100,115,119,105,116,104,117,5, + 0,0,0,116,117,112,108,101,40,7,0,0,0,117,3,0, + 0,0,99,108,115,117,8,0,0,0,102,117,108,108,110,97, + 109,101,117,4,0,0,0,112,97,116,104,117,8,0,0,0, + 102,105,108,101,112,97,116,104,117,6,0,0,0,108,111,97, + 100,101,114,117,8,0,0,0,115,117,102,102,105,120,101,115, + 117,1,0,0,0,95,40,0,0,0,0,40,0,0,0,0, + 117,29,0,0,0,60,102,114,111,122,101,110,32,105,109,112, + 111,114,116,108,105,98,46,95,98,111,111,116,115,116,114,97, + 112,62,117,11,0,0,0,102,105,110,100,95,109,111,100,117, + 108,101,12,3,0,0,115,20,0,0,0,0,3,15,1,12, + 1,4,1,3,1,17,1,13,1,9,1,25,1,21,1,117, + 33,0,0,0,87,105,110,100,111,119,115,82,101,103,105,115, + 116,114,121,70,105,110,100,101,114,46,102,105,110,100,95,109, + 111,100,117,108,101,78,70,40,13,0,0,0,117,8,0,0, + 0,95,95,110,97,109,101,95,95,117,10,0,0,0,95,95, + 109,111,100,117,108,101,95,95,117,12,0,0,0,95,95,113, + 117,97,108,110,97,109,101,95,95,117,7,0,0,0,95,95, + 100,111,99,95,95,117,12,0,0,0,82,69,71,73,83,84, + 82,89,95,75,69,89,117,18,0,0,0,82,69,71,73,83, + 84,82,89,95,75,69,89,95,68,69,66,85,71,117,5,0, + 0,0,70,97,108,115,101,117,11,0,0,0,68,69,66,85, + 71,95,66,85,73,76,68,117,11,0,0,0,99,108,97,115, + 115,109,101,116,104,111,100,117,14,0,0,0,95,111,112,101, + 110,95,114,101,103,105,115,116,114,121,117,16,0,0,0,95, + 115,101,97,114,99,104,95,114,101,103,105,115,116,114,121,117, + 4,0,0,0,78,111,110,101,117,11,0,0,0,102,105,110, + 100,95,109,111,100,117,108,101,40,1,0,0,0,117,10,0, + 0,0,95,95,108,111,99,97,108,115,95,95,40,0,0,0, + 0,40,0,0,0,0,117,29,0,0,0,60,102,114,111,122, + 101,110,32,105,109,112,111,114,116,108,105,98,46,95,98,111, + 111,116,115,116,114,97,112,62,117,21,0,0,0,87,105,110, + 100,111,119,115,82,101,103,105,115,116,114,121,70,105,110,100, + 101,114,233,2,0,0,115,16,0,0,0,16,3,6,3,6, + 3,6,2,6,2,18,7,18,15,3,1,117,21,0,0,0, + 87,105,110,100,111,119,115,82,101,103,105,115,116,114,121,70, + 105,110,100,101,114,99,1,0,0,0,0,0,0,0,1,0, + 0,0,5,0,0,0,66,0,0,0,115,74,0,0,0,124, + 0,0,69,101,0,0,90,1,0,100,0,0,90,2,0,100, + 1,0,90,3,0,100,2,0,100,3,0,132,0,0,90,4, + 0,100,4,0,100,5,0,132,0,0,90,5,0,101,6,0, + 100,6,0,100,10,0,100,7,0,100,8,0,132,0,1,131, + 1,0,90,8,0,100,9,0,83,40,11,0,0,0,117,13, + 0,0,0,95,76,111,97,100,101,114,66,97,115,105,99,115, + 117,83,0,0,0,66,97,115,101,32,99,108,97,115,115,32, + 111,102,32,99,111,109,109,111,110,32,99,111,100,101,32,110, + 101,101,100,101,100,32,98,121,32,98,111,116,104,32,83,111, + 117,114,99,101,76,111,97,100,101,114,32,97,110,100,10,32, + 32,32,32,83,111,117,114,99,101,108,101,115,115,70,105,108, + 101,76,111,97,100,101,114,46,99,2,0,0,0,0,0,0, + 0,5,0,0,0,3,0,0,0,67,0,0,0,115,88,0, + 0,0,116,0,0,124,0,0,106,1,0,124,1,0,131,1, + 0,131,1,0,100,1,0,25,125,2,0,124,2,0,106,2, + 0,100,2,0,100,1,0,131,2,0,100,3,0,25,125,3, + 0,124,1,0,106,3,0,100,2,0,131,1,0,100,4,0, + 25,125,4,0,124,3,0,100,5,0,107,2,0,111,87,0, + 124,4,0,100,5,0,107,3,0,83,40,6,0,0,0,117, + 141,0,0,0,67,111,110,99,114,101,116,101,32,105,109,112, + 108,101,109,101,110,116,97,116,105,111,110,32,111,102,32,73, + 110,115,112,101,99,116,76,111,97,100,101,114,46,105,115,95, + 112,97,99,107,97,103,101,32,98,121,32,99,104,101,99,107, + 105,110,103,32,105,102,10,32,32,32,32,32,32,32,32,116, + 104,101,32,112,97,116,104,32,114,101,116,117,114,110,101,100, + 32,98,121,32,103,101,116,95,102,105,108,101,110,97,109,101, + 32,104,97,115,32,97,32,102,105,108,101,110,97,109,101,32, + 111,102,32,39,95,95,105,110,105,116,95,95,46,112,121,39, + 46,105,1,0,0,0,117,1,0,0,0,46,105,0,0,0, + 0,105,2,0,0,0,117,8,0,0,0,95,95,105,110,105, + 116,95,95,40,4,0,0,0,117,11,0,0,0,95,112,97, + 116,104,95,115,112,108,105,116,117,12,0,0,0,103,101,116, + 95,102,105,108,101,110,97,109,101,117,6,0,0,0,114,115, + 112,108,105,116,117,10,0,0,0,114,112,97,114,116,105,116, + 105,111,110,40,5,0,0,0,117,4,0,0,0,115,101,108, + 102,117,8,0,0,0,102,117,108,108,110,97,109,101,117,8, + 0,0,0,102,105,108,101,110,97,109,101,117,13,0,0,0, + 102,105,108,101,110,97,109,101,95,98,97,115,101,117,9,0, + 0,0,116,97,105,108,95,110,97,109,101,40,0,0,0,0, 40,0,0,0,0,117,29,0,0,0,60,102,114,111,122,101, 110,32,105,109,112,111,114,116,108,105,98,46,95,98,111,111, - 116,115,116,114,97,112,62,117,10,0,0,0,112,97,116,104, - 95,115,116,97,116,115,111,3,0,0,115,2,0,0,0,0, - 10,117,23,0,0,0,83,111,117,114,99,101,76,111,97,100, - 101,114,46,112,97,116,104,95,115,116,97,116,115,99,4,0, - 0,0,0,0,0,0,4,0,0,0,3,0,0,0,67,0, - 0,0,115,16,0,0,0,124,0,0,106,0,0,124,2,0, - 124,3,0,131,2,0,83,40,1,0,0,0,117,228,0,0, - 0,79,112,116,105,111,110,97,108,32,109,101,116,104,111,100, - 32,119,104,105,99,104,32,119,114,105,116,101,115,32,100,97, - 116,97,32,40,98,121,116,101,115,41,32,116,111,32,97,32, - 102,105,108,101,32,112,97,116,104,32,40,97,32,115,116,114, - 41,46,10,10,32,32,32,32,32,32,32,32,73,109,112,108, - 101,109,101,110,116,105,110,103,32,116,104,105,115,32,109,101, - 116,104,111,100,32,97,108,108,111,119,115,32,102,111,114,32, - 116,104,101,32,119,114,105,116,105,110,103,32,111,102,32,98, - 121,116,101,99,111,100,101,32,102,105,108,101,115,46,10,10, - 32,32,32,32,32,32,32,32,84,104,101,32,115,111,117,114, - 99,101,32,112,97,116,104,32,105,115,32,110,101,101,100,101, - 100,32,105,110,32,111,114,100,101,114,32,116,111,32,99,111, - 114,114,101,99,116,108,121,32,116,114,97,110,115,102,101,114, - 32,112,101,114,109,105,115,115,105,111,110,115,10,32,32,32, - 32,32,32,32,32,40,1,0,0,0,117,8,0,0,0,115, - 101,116,95,100,97,116,97,40,4,0,0,0,117,4,0,0, - 0,115,101,108,102,117,11,0,0,0,115,111,117,114,99,101, - 95,112,97,116,104,117,10,0,0,0,99,97,99,104,101,95, - 112,97,116,104,117,4,0,0,0,100,97,116,97,40,0,0, - 0,0,40,0,0,0,0,117,29,0,0,0,60,102,114,111, - 122,101,110,32,105,109,112,111,114,116,108,105,98,46,95,98, - 111,111,116,115,116,114,97,112,62,117,15,0,0,0,95,99, - 97,99,104,101,95,98,121,116,101,99,111,100,101,123,3,0, - 0,115,2,0,0,0,0,8,117,28,0,0,0,83,111,117, - 114,99,101,76,111,97,100,101,114,46,95,99,97,99,104,101, - 95,98,121,116,101,99,111,100,101,99,3,0,0,0,0,0, - 0,0,3,0,0,0,1,0,0,0,67,0,0,0,115,10, - 0,0,0,116,0,0,130,1,0,100,1,0,83,40,2,0, - 0,0,117,151,0,0,0,79,112,116,105,111,110,97,108,32, + 116,115,116,114,97,112,62,117,10,0,0,0,105,115,95,112, + 97,99,107,97,103,101,32,3,0,0,115,8,0,0,0,0, + 3,25,1,22,1,19,1,117,24,0,0,0,95,76,111,97, + 100,101,114,66,97,115,105,99,115,46,105,115,95,112,97,99, + 107,97,103,101,99,5,0,0,0,0,0,0,0,12,0,0, + 0,22,0,0,0,67,0,0,0,115,198,1,0,0,124,2, + 0,100,1,0,100,2,0,133,2,0,25,125,5,0,124,2, + 0,100,2,0,100,3,0,133,2,0,25,125,6,0,124,2, + 0,100,3,0,100,4,0,133,2,0,25,125,7,0,124,5, + 0,116,0,0,107,3,0,114,105,0,100,5,0,106,1,0, + 124,1,0,124,5,0,131,2,0,125,8,0,116,2,0,124, + 8,0,100,6,0,124,1,0,100,7,0,124,3,0,131,1, + 2,130,1,0,110,116,0,116,3,0,124,6,0,131,1,0, + 100,2,0,107,3,0,114,163,0,100,8,0,106,1,0,124, + 1,0,131,1,0,125,9,0,116,4,0,124,9,0,131,1, + 0,1,116,5,0,124,9,0,131,1,0,130,1,0,110,58, + 0,116,3,0,124,7,0,131,1,0,100,2,0,107,3,0, + 114,221,0,100,9,0,106,1,0,124,1,0,131,1,0,125, + 9,0,116,4,0,124,9,0,131,1,0,1,116,5,0,124, + 9,0,131,1,0,130,1,0,110,0,0,124,4,0,100,1, + 0,107,9,0,114,184,1,121,20,0,116,7,0,124,4,0, + 100,10,0,25,131,1,0,125,10,0,87,110,18,0,4,116, + 8,0,107,10,0,114,17,1,1,1,1,89,110,71,0,88, + 116,9,0,124,6,0,131,1,0,124,10,0,107,3,0,114, + 88,1,100,11,0,106,1,0,124,1,0,131,1,0,125,9, + 0,116,4,0,124,9,0,131,1,0,1,116,2,0,124,9, + 0,100,6,0,124,1,0,100,7,0,124,3,0,131,1,2, + 130,1,0,110,0,0,121,18,0,124,4,0,100,12,0,25, + 100,13,0,64,125,11,0,87,110,18,0,4,116,8,0,107, + 10,0,114,126,1,1,1,1,89,113,184,1,88,116,9,0, + 124,7,0,131,1,0,124,11,0,107,3,0,114,184,1,116, + 2,0,100,11,0,106,1,0,124,1,0,131,1,0,100,6, + 0,124,1,0,100,7,0,124,3,0,131,1,2,130,1,0, + 113,184,1,110,0,0,124,2,0,100,4,0,100,1,0,133, + 2,0,25,83,40,14,0,0,0,117,193,0,0,0,82,101, + 116,117,114,110,32,116,104,101,32,109,97,114,115,104,97,108, + 108,101,100,32,98,121,116,101,115,32,102,114,111,109,32,98, + 121,116,101,99,111,100,101,44,32,118,101,114,105,102,121,105, + 110,103,32,116,104,101,32,109,97,103,105,99,10,32,32,32, + 32,32,32,32,32,110,117,109,98,101,114,44,32,116,105,109, + 101,115,116,97,109,112,32,97,110,100,32,115,111,117,114,99, + 101,32,115,105,122,101,32,97,108,111,110,103,32,116,104,101, + 32,119,97,121,46,10,10,32,32,32,32,32,32,32,32,73, + 102,32,115,111,117,114,99,101,95,115,116,97,116,115,32,105, + 115,32,78,111,110,101,32,116,104,101,110,32,115,107,105,112, + 32,116,104,101,32,116,105,109,101,115,116,97,109,112,32,99, + 104,101,99,107,46,10,10,32,32,32,32,32,32,32,32,78, + 105,4,0,0,0,105,8,0,0,0,105,12,0,0,0,117, + 30,0,0,0,98,97,100,32,109,97,103,105,99,32,110,117, + 109,98,101,114,32,105,110,32,123,33,114,125,58,32,123,33, + 114,125,117,4,0,0,0,110,97,109,101,117,4,0,0,0, + 112,97,116,104,117,19,0,0,0,98,97,100,32,116,105,109, + 101,115,116,97,109,112,32,105,110,32,123,125,117,14,0,0, + 0,98,97,100,32,115,105,122,101,32,105,110,32,123,125,117, + 5,0,0,0,109,116,105,109,101,117,24,0,0,0,98,121, + 116,101,99,111,100,101,32,105,115,32,115,116,97,108,101,32, + 102,111,114,32,123,125,117,4,0,0,0,115,105,122,101,108, + 3,0,0,0,255,127,255,127,3,0,40,10,0,0,0,117, + 12,0,0,0,95,77,65,71,73,67,95,66,89,84,69,83, + 117,6,0,0,0,102,111,114,109,97,116,117,11,0,0,0, + 73,109,112,111,114,116,69,114,114,111,114,117,3,0,0,0, + 108,101,110,117,16,0,0,0,95,118,101,114,98,111,115,101, + 95,109,101,115,115,97,103,101,117,8,0,0,0,69,79,70, + 69,114,114,111,114,117,4,0,0,0,78,111,110,101,117,3, + 0,0,0,105,110,116,117,8,0,0,0,75,101,121,69,114, + 114,111,114,117,7,0,0,0,95,114,95,108,111,110,103,40, + 12,0,0,0,117,4,0,0,0,115,101,108,102,117,8,0, + 0,0,102,117,108,108,110,97,109,101,117,4,0,0,0,100, + 97,116,97,117,13,0,0,0,98,121,116,101,99,111,100,101, + 95,112,97,116,104,117,12,0,0,0,115,111,117,114,99,101, + 95,115,116,97,116,115,117,5,0,0,0,109,97,103,105,99, + 117,13,0,0,0,114,97,119,95,116,105,109,101,115,116,97, + 109,112,117,8,0,0,0,114,97,119,95,115,105,122,101,117, + 3,0,0,0,109,115,103,117,7,0,0,0,109,101,115,115, + 97,103,101,117,12,0,0,0,115,111,117,114,99,101,95,109, + 116,105,109,101,117,11,0,0,0,115,111,117,114,99,101,95, + 115,105,122,101,40,0,0,0,0,40,0,0,0,0,117,29, + 0,0,0,60,102,114,111,122,101,110,32,105,109,112,111,114, + 116,108,105,98,46,95,98,111,111,116,115,116,114,97,112,62, + 117,20,0,0,0,95,98,121,116,101,115,95,102,114,111,109, + 95,98,121,116,101,99,111,100,101,40,3,0,0,115,66,0, + 0,0,0,7,16,1,16,1,16,1,12,1,18,1,27,1, + 18,1,15,1,10,1,15,1,18,1,15,1,10,1,15,1, + 12,1,3,1,20,1,13,1,5,2,18,1,15,1,10,1, + 15,1,12,1,3,1,18,1,13,1,5,2,18,1,3,1, + 15,1,21,3,117,34,0,0,0,95,76,111,97,100,101,114, + 66,97,115,105,99,115,46,95,98,121,116,101,115,95,102,114, + 111,109,95,98,121,116,101,99,111,100,101,117,10,0,0,0, + 115,111,117,114,99,101,108,101,115,115,99,2,0,0,0,1, + 0,0,0,5,0,0,0,12,0,0,0,67,0,0,0,115, + 227,0,0,0,124,1,0,106,0,0,125,3,0,124,0,0, + 106,1,0,124,3,0,131,1,0,125,4,0,124,0,0,106, + 2,0,124,3,0,131,1,0,124,1,0,95,3,0,124,2, + 0,115,106,0,121,22,0,116,4,0,124,1,0,106,3,0, + 131,1,0,124,1,0,95,5,0,87,113,118,0,4,116,6, + 0,107,10,0,114,102,0,1,1,1,124,1,0,106,3,0, + 124,1,0,95,5,0,89,113,118,0,88,110,12,0,124,1, + 0,106,3,0,124,1,0,95,5,0,124,3,0,124,1,0, + 95,7,0,124,0,0,106,8,0,124,3,0,131,1,0,114, + 170,0,116,9,0,124,1,0,106,3,0,131,1,0,100,1, + 0,25,103,1,0,124,1,0,95,10,0,110,25,0,124,1, + 0,106,7,0,106,11,0,100,2,0,131,1,0,100,1,0, + 25,124,1,0,95,7,0,124,0,0,124,1,0,95,12,0, + 116,13,0,116,14,0,124,4,0,124,1,0,106,15,0,131, + 3,0,1,124,1,0,83,40,3,0,0,0,117,82,0,0, + 0,72,101,108,112,101,114,32,102,111,114,32,108,111,97,100, + 95,109,111,100,117,108,101,32,97,98,108,101,32,116,111,32, + 104,97,110,100,108,101,32,101,105,116,104,101,114,32,115,111, + 117,114,99,101,32,111,114,32,115,111,117,114,99,101,108,101, + 115,115,10,32,32,32,32,32,32,32,32,108,111,97,100,105, + 110,103,46,105,0,0,0,0,117,1,0,0,0,46,40,16, + 0,0,0,117,8,0,0,0,95,95,110,97,109,101,95,95, + 117,8,0,0,0,103,101,116,95,99,111,100,101,117,12,0, + 0,0,103,101,116,95,102,105,108,101,110,97,109,101,117,8, + 0,0,0,95,95,102,105,108,101,95,95,117,17,0,0,0, + 99,97,99,104,101,95,102,114,111,109,95,115,111,117,114,99, + 101,117,10,0,0,0,95,95,99,97,99,104,101,100,95,95, + 117,19,0,0,0,78,111,116,73,109,112,108,101,109,101,110, + 116,101,100,69,114,114,111,114,117,11,0,0,0,95,95,112, + 97,99,107,97,103,101,95,95,117,10,0,0,0,105,115,95, + 112,97,99,107,97,103,101,117,11,0,0,0,95,112,97,116, + 104,95,115,112,108,105,116,117,8,0,0,0,95,95,112,97, + 116,104,95,95,117,10,0,0,0,114,112,97,114,116,105,116, + 105,111,110,117,10,0,0,0,95,95,108,111,97,100,101,114, + 95,95,117,25,0,0,0,95,99,97,108,108,95,119,105,116, + 104,95,102,114,97,109,101,115,95,114,101,109,111,118,101,100, + 117,4,0,0,0,101,120,101,99,117,8,0,0,0,95,95, + 100,105,99,116,95,95,40,5,0,0,0,117,4,0,0,0, + 115,101,108,102,117,6,0,0,0,109,111,100,117,108,101,117, + 10,0,0,0,115,111,117,114,99,101,108,101,115,115,117,4, + 0,0,0,110,97,109,101,117,11,0,0,0,99,111,100,101, + 95,111,98,106,101,99,116,40,0,0,0,0,40,0,0,0, + 0,117,29,0,0,0,60,102,114,111,122,101,110,32,105,109, + 112,111,114,116,108,105,98,46,95,98,111,111,116,115,116,114, + 97,112,62,117,12,0,0,0,95,108,111,97,100,95,109,111, + 100,117,108,101,85,3,0,0,115,32,0,0,0,0,4,9, + 1,15,1,18,1,6,1,3,1,22,1,13,1,20,2,12, + 1,9,1,15,1,28,2,25,1,9,1,19,1,117,26,0, + 0,0,95,76,111,97,100,101,114,66,97,115,105,99,115,46, + 95,108,111,97,100,95,109,111,100,117,108,101,78,70,40,9, + 0,0,0,117,8,0,0,0,95,95,110,97,109,101,95,95, + 117,10,0,0,0,95,95,109,111,100,117,108,101,95,95,117, + 12,0,0,0,95,95,113,117,97,108,110,97,109,101,95,95, + 117,7,0,0,0,95,95,100,111,99,95,95,117,10,0,0, + 0,105,115,95,112,97,99,107,97,103,101,117,20,0,0,0, + 95,98,121,116,101,115,95,102,114,111,109,95,98,121,116,101, + 99,111,100,101,117,17,0,0,0,109,111,100,117,108,101,95, + 102,111,114,95,108,111,97,100,101,114,117,5,0,0,0,70, + 97,108,115,101,117,12,0,0,0,95,108,111,97,100,95,109, + 111,100,117,108,101,40,1,0,0,0,117,10,0,0,0,95, + 95,108,111,99,97,108,115,95,95,40,0,0,0,0,40,0, + 0,0,0,117,29,0,0,0,60,102,114,111,122,101,110,32, + 105,109,112,111,114,116,108,105,98,46,95,98,111,111,116,115, + 116,114,97,112,62,117,13,0,0,0,95,76,111,97,100,101, + 114,66,97,115,105,99,115,27,3,0,0,115,10,0,0,0, + 16,3,6,2,12,8,12,45,6,1,117,13,0,0,0,95, + 76,111,97,100,101,114,66,97,115,105,99,115,99,1,0,0, + 0,0,0,0,0,1,0,0,0,2,0,0,0,66,0,0, + 0,115,104,0,0,0,124,0,0,69,101,0,0,90,1,0, + 100,0,0,90,2,0,100,1,0,100,2,0,132,0,0,90, + 3,0,100,3,0,100,4,0,132,0,0,90,4,0,100,5, + 0,100,6,0,132,0,0,90,5,0,100,7,0,100,8,0, + 132,0,0,90,6,0,100,9,0,100,10,0,132,0,0,90, + 7,0,100,11,0,100,12,0,132,0,0,90,8,0,100,13, + 0,100,14,0,132,0,0,90,9,0,100,15,0,83,40,16, + 0,0,0,117,12,0,0,0,83,111,117,114,99,101,76,111, + 97,100,101,114,99,2,0,0,0,0,0,0,0,2,0,0, + 0,1,0,0,0,67,0,0,0,115,10,0,0,0,116,0, + 0,130,1,0,100,1,0,83,40,2,0,0,0,117,121,0, + 0,0,79,112,116,105,111,110,97,108,32,109,101,116,104,111, + 100,32,116,104,97,116,32,114,101,116,117,114,110,115,32,116, + 104,101,32,109,111,100,105,102,105,99,97,116,105,111,110,32, + 116,105,109,101,32,40,97,110,32,105,110,116,41,32,102,111, + 114,32,116,104,101,10,32,32,32,32,32,32,32,32,115,112, + 101,99,105,102,105,101,100,32,112,97,116,104,44,32,119,104, + 101,114,101,32,112,97,116,104,32,105,115,32,97,32,115,116, + 114,46,10,32,32,32,32,32,32,32,32,78,40,1,0,0, + 0,117,19,0,0,0,78,111,116,73,109,112,108,101,109,101, + 110,116,101,100,69,114,114,111,114,40,2,0,0,0,117,4, + 0,0,0,115,101,108,102,117,4,0,0,0,112,97,116,104, + 40,0,0,0,0,40,0,0,0,0,117,29,0,0,0,60, + 102,114,111,122,101,110,32,105,109,112,111,114,116,108,105,98, + 46,95,98,111,111,116,115,116,114,97,112,62,117,10,0,0, + 0,112,97,116,104,95,109,116,105,109,101,111,3,0,0,115, + 2,0,0,0,0,4,117,23,0,0,0,83,111,117,114,99, + 101,76,111,97,100,101,114,46,112,97,116,104,95,109,116,105, + 109,101,99,2,0,0,0,0,0,0,0,2,0,0,0,3, + 0,0,0,67,0,0,0,115,20,0,0,0,105,1,0,124, + 0,0,106,0,0,124,1,0,131,1,0,100,1,0,54,83, + 40,2,0,0,0,117,114,1,0,0,79,112,116,105,111,110, + 97,108,32,109,101,116,104,111,100,32,114,101,116,117,114,110, + 105,110,103,32,97,32,109,101,116,97,100,97,116,97,32,100, + 105,99,116,32,102,111,114,32,116,104,101,32,115,112,101,99, + 105,102,105,101,100,32,112,97,116,104,10,32,32,32,32,32, + 32,32,32,116,111,32,98,121,32,116,104,101,32,112,97,116, + 104,32,40,115,116,114,41,46,10,32,32,32,32,32,32,32, + 32,80,111,115,115,105,98,108,101,32,107,101,121,115,58,10, + 32,32,32,32,32,32,32,32,45,32,39,109,116,105,109,101, + 39,32,40,109,97,110,100,97,116,111,114,121,41,32,105,115, + 32,116,104,101,32,110,117,109,101,114,105,99,32,116,105,109, + 101,115,116,97,109,112,32,111,102,32,108,97,115,116,32,115, + 111,117,114,99,101,10,32,32,32,32,32,32,32,32,32,32, + 99,111,100,101,32,109,111,100,105,102,105,99,97,116,105,111, + 110,59,10,32,32,32,32,32,32,32,32,45,32,39,115,105, + 122,101,39,32,40,111,112,116,105,111,110,97,108,41,32,105, + 115,32,116,104,101,32,115,105,122,101,32,105,110,32,98,121, + 116,101,115,32,111,102,32,116,104,101,32,115,111,117,114,99, + 101,32,99,111,100,101,46,10,10,32,32,32,32,32,32,32, + 32,73,109,112,108,101,109,101,110,116,105,110,103,32,116,104, + 105,115,32,109,101,116,104,111,100,32,97,108,108,111,119,115, + 32,116,104,101,32,108,111,97,100,101,114,32,116,111,32,114, + 101,97,100,32,98,121,116,101,99,111,100,101,32,102,105,108, + 101,115,46,10,32,32,32,32,32,32,32,32,117,5,0,0, + 0,109,116,105,109,101,40,1,0,0,0,117,10,0,0,0, + 112,97,116,104,95,109,116,105,109,101,40,2,0,0,0,117, + 4,0,0,0,115,101,108,102,117,4,0,0,0,112,97,116, + 104,40,0,0,0,0,40,0,0,0,0,117,29,0,0,0, + 60,102,114,111,122,101,110,32,105,109,112,111,114,116,108,105, + 98,46,95,98,111,111,116,115,116,114,97,112,62,117,10,0, + 0,0,112,97,116,104,95,115,116,97,116,115,117,3,0,0, + 115,2,0,0,0,0,10,117,23,0,0,0,83,111,117,114, + 99,101,76,111,97,100,101,114,46,112,97,116,104,95,115,116, + 97,116,115,99,4,0,0,0,0,0,0,0,4,0,0,0, + 3,0,0,0,67,0,0,0,115,16,0,0,0,124,0,0, + 106,0,0,124,2,0,124,3,0,131,2,0,83,40,1,0, + 0,0,117,228,0,0,0,79,112,116,105,111,110,97,108,32, 109,101,116,104,111,100,32,119,104,105,99,104,32,119,114,105, 116,101,115,32,100,97,116,97,32,40,98,121,116,101,115,41, 32,116,111,32,97,32,102,105,108,101,32,112,97,116,104,32, @@ -2099,2285 +2073,2313 @@ unsigned char _Py_M__importlib[] = { 104,105,115,32,109,101,116,104,111,100,32,97,108,108,111,119, 115,32,102,111,114,32,116,104,101,32,119,114,105,116,105,110, 103,32,111,102,32,98,121,116,101,99,111,100,101,32,102,105, - 108,101,115,46,10,10,32,32,32,32,32,32,32,32,78,40, - 1,0,0,0,117,19,0,0,0,78,111,116,73,109,112,108, - 101,109,101,110,116,101,100,69,114,114,111,114,40,3,0,0, - 0,117,4,0,0,0,115,101,108,102,117,4,0,0,0,112, - 97,116,104,117,4,0,0,0,100,97,116,97,40,0,0,0, - 0,40,0,0,0,0,117,29,0,0,0,60,102,114,111,122, - 101,110,32,105,109,112,111,114,116,108,105,98,46,95,98,111, - 111,116,115,116,114,97,112,62,117,8,0,0,0,115,101,116, - 95,100,97,116,97,133,3,0,0,115,2,0,0,0,0,6, - 117,21,0,0,0,83,111,117,114,99,101,76,111,97,100,101, - 114,46,115,101,116,95,100,97,116,97,99,2,0,0,0,0, - 0,0,0,9,0,0,0,44,0,0,0,67,0,0,0,115, - 62,1,0,0,100,1,0,100,2,0,108,0,0,125,2,0, - 124,0,0,106,1,0,124,1,0,131,1,0,125,3,0,121, - 19,0,124,0,0,106,2,0,124,3,0,131,1,0,125,4, - 0,87,110,58,0,4,116,3,0,107,10,0,114,106,0,1, - 125,5,0,1,122,26,0,116,4,0,100,3,0,100,4,0, - 124,1,0,131,1,1,124,5,0,130,2,0,87,89,100,2, - 0,100,2,0,125,5,0,126,5,0,88,110,1,0,88,116, - 5,0,106,6,0,124,4,0,131,1,0,106,7,0,125,6, - 0,121,19,0,124,2,0,106,8,0,124,6,0,131,1,0, - 125,7,0,87,110,58,0,4,116,9,0,107,10,0,114,204, - 0,1,125,5,0,1,122,26,0,116,4,0,100,5,0,100, - 4,0,124,1,0,131,1,1,124,5,0,130,2,0,87,89, - 100,2,0,100,2,0,125,5,0,126,5,0,88,110,1,0, - 88,116,5,0,106,10,0,100,2,0,100,7,0,131,2,0, - 125,8,0,121,30,0,124,8,0,106,13,0,124,4,0,106, - 13,0,124,7,0,100,1,0,25,131,1,0,131,1,0,83, - 87,110,58,0,4,116,14,0,107,10,0,114,57,1,1,125, - 5,0,1,122,26,0,116,4,0,100,6,0,100,4,0,124, - 1,0,131,1,1,124,5,0,130,2,0,87,89,100,2,0, - 100,2,0,125,5,0,126,5,0,88,110,1,0,88,100,2, - 0,83,40,8,0,0,0,117,52,0,0,0,67,111,110,99, + 108,101,115,46,10,10,32,32,32,32,32,32,32,32,84,104, + 101,32,115,111,117,114,99,101,32,112,97,116,104,32,105,115, + 32,110,101,101,100,101,100,32,105,110,32,111,114,100,101,114, + 32,116,111,32,99,111,114,114,101,99,116,108,121,32,116,114, + 97,110,115,102,101,114,32,112,101,114,109,105,115,115,105,111, + 110,115,10,32,32,32,32,32,32,32,32,40,1,0,0,0, + 117,8,0,0,0,115,101,116,95,100,97,116,97,40,4,0, + 0,0,117,4,0,0,0,115,101,108,102,117,11,0,0,0, + 115,111,117,114,99,101,95,112,97,116,104,117,10,0,0,0, + 99,97,99,104,101,95,112,97,116,104,117,4,0,0,0,100, + 97,116,97,40,0,0,0,0,40,0,0,0,0,117,29,0, + 0,0,60,102,114,111,122,101,110,32,105,109,112,111,114,116, + 108,105,98,46,95,98,111,111,116,115,116,114,97,112,62,117, + 15,0,0,0,95,99,97,99,104,101,95,98,121,116,101,99, + 111,100,101,129,3,0,0,115,2,0,0,0,0,8,117,28, + 0,0,0,83,111,117,114,99,101,76,111,97,100,101,114,46, + 95,99,97,99,104,101,95,98,121,116,101,99,111,100,101,99, + 3,0,0,0,0,0,0,0,3,0,0,0,1,0,0,0, + 67,0,0,0,115,10,0,0,0,116,0,0,130,1,0,100, + 1,0,83,40,2,0,0,0,117,151,0,0,0,79,112,116, + 105,111,110,97,108,32,109,101,116,104,111,100,32,119,104,105, + 99,104,32,119,114,105,116,101,115,32,100,97,116,97,32,40, + 98,121,116,101,115,41,32,116,111,32,97,32,102,105,108,101, + 32,112,97,116,104,32,40,97,32,115,116,114,41,46,10,10, + 32,32,32,32,32,32,32,32,73,109,112,108,101,109,101,110, + 116,105,110,103,32,116,104,105,115,32,109,101,116,104,111,100, + 32,97,108,108,111,119,115,32,102,111,114,32,116,104,101,32, + 119,114,105,116,105,110,103,32,111,102,32,98,121,116,101,99, + 111,100,101,32,102,105,108,101,115,46,10,10,32,32,32,32, + 32,32,32,32,78,40,1,0,0,0,117,19,0,0,0,78, + 111,116,73,109,112,108,101,109,101,110,116,101,100,69,114,114, + 111,114,40,3,0,0,0,117,4,0,0,0,115,101,108,102, + 117,4,0,0,0,112,97,116,104,117,4,0,0,0,100,97, + 116,97,40,0,0,0,0,40,0,0,0,0,117,29,0,0, + 0,60,102,114,111,122,101,110,32,105,109,112,111,114,116,108, + 105,98,46,95,98,111,111,116,115,116,114,97,112,62,117,8, + 0,0,0,115,101,116,95,100,97,116,97,139,3,0,0,115, + 2,0,0,0,0,6,117,21,0,0,0,83,111,117,114,99, + 101,76,111,97,100,101,114,46,115,101,116,95,100,97,116,97, + 99,2,0,0,0,0,0,0,0,9,0,0,0,44,0,0, + 0,67,0,0,0,115,62,1,0,0,100,1,0,100,2,0, + 108,0,0,125,2,0,124,0,0,106,1,0,124,1,0,131, + 1,0,125,3,0,121,19,0,124,0,0,106,2,0,124,3, + 0,131,1,0,125,4,0,87,110,58,0,4,116,3,0,107, + 10,0,114,106,0,1,125,5,0,1,122,26,0,116,4,0, + 100,3,0,100,4,0,124,1,0,131,1,1,124,5,0,130, + 2,0,87,89,100,2,0,100,2,0,125,5,0,126,5,0, + 88,110,1,0,88,116,5,0,106,6,0,124,4,0,131,1, + 0,106,7,0,125,6,0,121,19,0,124,2,0,106,8,0, + 124,6,0,131,1,0,125,7,0,87,110,58,0,4,116,9, + 0,107,10,0,114,204,0,1,125,5,0,1,122,26,0,116, + 4,0,100,5,0,100,4,0,124,1,0,131,1,1,124,5, + 0,130,2,0,87,89,100,2,0,100,2,0,125,5,0,126, + 5,0,88,110,1,0,88,116,5,0,106,10,0,100,2,0, + 100,7,0,131,2,0,125,8,0,121,30,0,124,8,0,106, + 13,0,124,4,0,106,13,0,124,7,0,100,1,0,25,131, + 1,0,131,1,0,83,87,110,58,0,4,116,14,0,107,10, + 0,114,57,1,1,125,5,0,1,122,26,0,116,4,0,100, + 6,0,100,4,0,124,1,0,131,1,1,124,5,0,130,2, + 0,87,89,100,2,0,100,2,0,125,5,0,126,5,0,88, + 110,1,0,88,100,2,0,83,40,8,0,0,0,117,52,0, + 0,0,67,111,110,99,114,101,116,101,32,105,109,112,108,101, + 109,101,110,116,97,116,105,111,110,32,111,102,32,73,110,115, + 112,101,99,116,76,111,97,100,101,114,46,103,101,116,95,115, + 111,117,114,99,101,46,105,0,0,0,0,78,117,39,0,0, + 0,115,111,117,114,99,101,32,110,111,116,32,97,118,97,105, + 108,97,98,108,101,32,116,104,114,111,117,103,104,32,103,101, + 116,95,100,97,116,97,40,41,117,4,0,0,0,110,97,109, + 101,117,25,0,0,0,70,97,105,108,101,100,32,116,111,32, + 100,101,116,101,99,116,32,101,110,99,111,100,105,110,103,117, + 28,0,0,0,70,97,105,108,101,100,32,116,111,32,100,101, + 99,111,100,101,32,115,111,117,114,99,101,32,102,105,108,101, + 84,40,15,0,0,0,117,8,0,0,0,116,111,107,101,110, + 105,122,101,117,12,0,0,0,103,101,116,95,102,105,108,101, + 110,97,109,101,117,8,0,0,0,103,101,116,95,100,97,116, + 97,117,7,0,0,0,73,79,69,114,114,111,114,117,11,0, + 0,0,73,109,112,111,114,116,69,114,114,111,114,117,3,0, + 0,0,95,105,111,117,7,0,0,0,66,121,116,101,115,73, + 79,117,8,0,0,0,114,101,97,100,108,105,110,101,117,15, + 0,0,0,100,101,116,101,99,116,95,101,110,99,111,100,105, + 110,103,117,11,0,0,0,83,121,110,116,97,120,69,114,114, + 111,114,117,25,0,0,0,73,110,99,114,101,109,101,110,116, + 97,108,78,101,119,108,105,110,101,68,101,99,111,100,101,114, + 117,4,0,0,0,78,111,110,101,117,4,0,0,0,84,114, + 117,101,117,6,0,0,0,100,101,99,111,100,101,117,18,0, + 0,0,85,110,105,99,111,100,101,68,101,99,111,100,101,69, + 114,114,111,114,40,9,0,0,0,117,4,0,0,0,115,101, + 108,102,117,8,0,0,0,102,117,108,108,110,97,109,101,117, + 8,0,0,0,116,111,107,101,110,105,122,101,117,4,0,0, + 0,112,97,116,104,117,12,0,0,0,115,111,117,114,99,101, + 95,98,121,116,101,115,117,3,0,0,0,101,120,99,117,10, + 0,0,0,114,101,97,100,115,111,117,114,99,101,117,8,0, + 0,0,101,110,99,111,100,105,110,103,117,15,0,0,0,110, + 101,119,108,105,110,101,95,100,101,99,111,100,101,114,40,0, + 0,0,0,40,0,0,0,0,117,29,0,0,0,60,102,114, + 111,122,101,110,32,105,109,112,111,114,116,108,105,98,46,95, + 98,111,111,116,115,116,114,97,112,62,117,10,0,0,0,103, + 101,116,95,115,111,117,114,99,101,148,3,0,0,115,38,0, + 0,0,0,2,12,1,15,1,3,1,19,1,18,1,9,1, + 31,1,18,1,3,1,19,1,18,1,9,1,31,1,18,1, + 3,1,30,1,18,1,9,1,117,23,0,0,0,83,111,117, + 114,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,12,0,0, + 0,45,0,0,0,67,0,0,0,115,52,2,0,0,124,0, + 0,106,0,0,124,1,0,131,1,0,125,2,0,100,10,0, + 125,3,0,121,16,0,116,2,0,124,2,0,131,1,0,125, + 4,0,87,110,24,0,4,116,3,0,107,10,0,114,63,0, + 1,1,1,100,10,0,125,4,0,89,110,14,1,88,121,19, + 0,124,0,0,106,4,0,124,2,0,131,1,0,125,5,0, + 87,110,18,0,4,116,3,0,107,10,0,114,103,0,1,1, + 1,89,110,230,0,88,116,5,0,124,5,0,100,1,0,25, + 131,1,0,125,3,0,121,19,0,124,0,0,106,6,0,124, + 4,0,131,1,0,125,6,0,87,110,18,0,4,116,7,0, + 107,10,0,114,159,0,1,1,1,89,110,174,0,88,121,28, + 0,124,0,0,106,8,0,124,1,0,124,6,0,124,4,0, + 124,5,0,131,4,0,125,7,0,87,110,24,0,4,116,9, + 0,116,10,0,102,2,0,107,10,0,114,214,0,1,1,1, + 89,110,119,0,88,116,11,0,100,2,0,124,4,0,124,2, + 0,131,3,0,1,116,12,0,106,13,0,124,7,0,131,1, + 0,125,8,0,116,14,0,124,8,0,116,15,0,131,2,0, + 114,38,1,116,16,0,106,17,0,124,8,0,124,2,0,131, + 2,0,1,116,11,0,100,3,0,124,4,0,131,2,0,1, + 124,8,0,83,100,4,0,125,9,0,116,9,0,124,9,0, + 106,18,0,124,4,0,131,1,0,100,5,0,124,1,0,100, + 6,0,124,4,0,131,1,2,130,1,0,124,0,0,106,6, + 0,124,2,0,131,1,0,125,10,0,116,19,0,116,20,0, + 124,10,0,124,2,0,100,7,0,100,8,0,100,11,0,131, + 4,1,125,11,0,116,11,0,100,3,0,124,2,0,131,2, + 0,1,116,22,0,106,23,0,12,114,48,2,124,4,0,100, + 10,0,107,9,0,114,48,2,124,3,0,100,10,0,107,9, + 0,114,48,2,116,24,0,116,25,0,131,1,0,125,6,0, + 124,6,0,106,26,0,116,27,0,124,3,0,131,1,0,131, + 1,0,1,124,6,0,106,26,0,116,27,0,116,28,0,124, + 10,0,131,1,0,131,1,0,131,1,0,1,124,6,0,106, + 26,0,116,12,0,106,29,0,124,11,0,131,1,0,131,1, + 0,1,121,36,0,124,0,0,106,30,0,124,2,0,124,4, + 0,124,6,0,131,3,0,1,116,11,0,100,9,0,124,4, + 0,131,2,0,1,87,113,48,2,4,116,3,0,107,10,0, + 114,44,2,1,1,1,89,113,48,2,88,110,0,0,124,11, + 0,83,40,12,0,0,0,117,190,0,0,0,67,111,110,99, 114,101,116,101,32,105,109,112,108,101,109,101,110,116,97,116, 105,111,110,32,111,102,32,73,110,115,112,101,99,116,76,111, - 97,100,101,114,46,103,101,116,95,115,111,117,114,99,101,46, - 105,0,0,0,0,78,117,39,0,0,0,115,111,117,114,99, - 101,32,110,111,116,32,97,118,97,105,108,97,98,108,101,32, - 116,104,114,111,117,103,104,32,103,101,116,95,100,97,116,97, - 40,41,117,4,0,0,0,110,97,109,101,117,25,0,0,0, - 70,97,105,108,101,100,32,116,111,32,100,101,116,101,99,116, - 32,101,110,99,111,100,105,110,103,117,28,0,0,0,70,97, - 105,108,101,100,32,116,111,32,100,101,99,111,100,101,32,115, - 111,117,114,99,101,32,102,105,108,101,84,40,15,0,0,0, - 117,8,0,0,0,116,111,107,101,110,105,122,101,117,12,0, - 0,0,103,101,116,95,102,105,108,101,110,97,109,101,117,8, - 0,0,0,103,101,116,95,100,97,116,97,117,7,0,0,0, - 73,79,69,114,114,111,114,117,11,0,0,0,73,109,112,111, - 114,116,69,114,114,111,114,117,3,0,0,0,95,105,111,117, - 7,0,0,0,66,121,116,101,115,73,79,117,8,0,0,0, - 114,101,97,100,108,105,110,101,117,15,0,0,0,100,101,116, - 101,99,116,95,101,110,99,111,100,105,110,103,117,11,0,0, - 0,83,121,110,116,97,120,69,114,114,111,114,117,25,0,0, - 0,73,110,99,114,101,109,101,110,116,97,108,78,101,119,108, - 105,110,101,68,101,99,111,100,101,114,117,4,0,0,0,78, - 111,110,101,117,4,0,0,0,84,114,117,101,117,6,0,0, - 0,100,101,99,111,100,101,117,18,0,0,0,85,110,105,99, - 111,100,101,68,101,99,111,100,101,69,114,114,111,114,40,9, - 0,0,0,117,4,0,0,0,115,101,108,102,117,8,0,0, - 0,102,117,108,108,110,97,109,101,117,8,0,0,0,116,111, - 107,101,110,105,122,101,117,4,0,0,0,112,97,116,104,117, - 12,0,0,0,115,111,117,114,99,101,95,98,121,116,101,115, - 117,3,0,0,0,101,120,99,117,10,0,0,0,114,101,97, - 100,115,111,117,114,99,101,117,8,0,0,0,101,110,99,111, - 100,105,110,103,117,15,0,0,0,110,101,119,108,105,110,101, - 95,100,101,99,111,100,101,114,40,0,0,0,0,40,0,0, - 0,0,117,29,0,0,0,60,102,114,111,122,101,110,32,105, - 109,112,111,114,116,108,105,98,46,95,98,111,111,116,115,116, - 114,97,112,62,117,10,0,0,0,103,101,116,95,115,111,117, - 114,99,101,142,3,0,0,115,38,0,0,0,0,2,12,1, - 15,1,3,1,19,1,18,1,9,1,31,1,18,1,3,1, - 19,1,18,1,9,1,31,1,18,1,3,1,30,1,18,1, - 9,1,117,23,0,0,0,83,111,117,114,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,12,0,0,0,45,0,0,0,67, - 0,0,0,115,52,2,0,0,124,0,0,106,0,0,124,1, - 0,131,1,0,125,2,0,100,10,0,125,3,0,121,16,0, - 116,2,0,124,2,0,131,1,0,125,4,0,87,110,24,0, - 4,116,3,0,107,10,0,114,63,0,1,1,1,100,10,0, - 125,4,0,89,110,14,1,88,121,19,0,124,0,0,106,4, - 0,124,2,0,131,1,0,125,5,0,87,110,18,0,4,116, - 3,0,107,10,0,114,103,0,1,1,1,89,110,230,0,88, - 116,5,0,124,5,0,100,1,0,25,131,1,0,125,3,0, - 121,19,0,124,0,0,106,6,0,124,4,0,131,1,0,125, - 6,0,87,110,18,0,4,116,7,0,107,10,0,114,159,0, - 1,1,1,89,110,174,0,88,121,28,0,124,0,0,106,8, - 0,124,1,0,124,6,0,124,4,0,124,5,0,131,4,0, - 125,7,0,87,110,24,0,4,116,9,0,116,10,0,102,2, - 0,107,10,0,114,214,0,1,1,1,89,110,119,0,88,116, - 11,0,100,2,0,124,4,0,124,2,0,131,3,0,1,116, - 12,0,106,13,0,124,7,0,131,1,0,125,8,0,116,14, - 0,124,8,0,116,15,0,131,2,0,114,38,1,116,16,0, - 106,17,0,124,8,0,124,2,0,131,2,0,1,116,11,0, - 100,3,0,124,4,0,131,2,0,1,124,8,0,83,100,4, - 0,125,9,0,116,9,0,124,9,0,106,18,0,124,4,0, - 131,1,0,100,5,0,124,1,0,100,6,0,124,4,0,131, - 1,2,130,1,0,124,0,0,106,6,0,124,2,0,131,1, - 0,125,10,0,116,19,0,116,20,0,124,10,0,124,2,0, - 100,7,0,100,8,0,100,11,0,131,4,1,125,11,0,116, - 11,0,100,3,0,124,2,0,131,2,0,1,116,22,0,106, - 23,0,12,114,48,2,124,4,0,100,10,0,107,9,0,114, - 48,2,124,3,0,100,10,0,107,9,0,114,48,2,116,24, - 0,116,25,0,131,1,0,125,6,0,124,6,0,106,26,0, - 116,27,0,124,3,0,131,1,0,131,1,0,1,124,6,0, - 106,26,0,116,27,0,116,28,0,124,10,0,131,1,0,131, - 1,0,131,1,0,1,124,6,0,106,26,0,116,12,0,106, - 29,0,124,11,0,131,1,0,131,1,0,1,121,36,0,124, - 0,0,106,30,0,124,2,0,124,4,0,124,6,0,131,3, - 0,1,116,11,0,100,9,0,124,4,0,131,2,0,1,87, - 113,48,2,4,116,3,0,107,10,0,114,44,2,1,1,1, - 89,113,48,2,88,110,0,0,124,11,0,83,40,12,0,0, - 0,117,190,0,0,0,67,111,110,99,114,101,116,101,32,105, - 109,112,108,101,109,101,110,116,97,116,105,111,110,32,111,102, - 32,73,110,115,112,101,99,116,76,111,97,100,101,114,46,103, - 101,116,95,99,111,100,101,46,10,10,32,32,32,32,32,32, - 32,32,82,101,97,100,105,110,103,32,111,102,32,98,121,116, - 101,99,111,100,101,32,114,101,113,117,105,114,101,115,32,112, - 97,116,104,95,115,116,97,116,115,32,116,111,32,98,101,32, - 105,109,112,108,101,109,101,110,116,101,100,46,32,84,111,32, - 119,114,105,116,101,10,32,32,32,32,32,32,32,32,98,121, - 116,101,99,111,100,101,44,32,115,101,116,95,100,97,116,97, - 32,109,117,115,116,32,97,108,115,111,32,98,101,32,105,109, - 112,108,101,109,101,110,116,101,100,46,10,10,32,32,32,32, - 32,32,32,32,117,5,0,0,0,109,116,105,109,101,117,13, - 0,0,0,123,125,32,109,97,116,99,104,101,115,32,123,125, - 117,19,0,0,0,99,111,100,101,32,111,98,106,101,99,116, - 32,102,114,111,109,32,123,125,117,21,0,0,0,78,111,110, - 45,99,111,100,101,32,111,98,106,101,99,116,32,105,110,32, - 123,125,117,4,0,0,0,110,97,109,101,117,4,0,0,0, - 112,97,116,104,117,4,0,0,0,101,120,101,99,117,12,0, - 0,0,100,111,110,116,95,105,110,104,101,114,105,116,117,10, - 0,0,0,119,114,111,116,101,32,123,33,114,125,78,84,40, - 31,0,0,0,117,12,0,0,0,103,101,116,95,102,105,108, - 101,110,97,109,101,117,4,0,0,0,78,111,110,101,117,17, - 0,0,0,99,97,99,104,101,95,102,114,111,109,95,115,111, - 117,114,99,101,117,19,0,0,0,78,111,116,73,109,112,108, - 101,109,101,110,116,101,100,69,114,114,111,114,117,10,0,0, - 0,112,97,116,104,95,115,116,97,116,115,117,3,0,0,0, - 105,110,116,117,8,0,0,0,103,101,116,95,100,97,116,97, - 117,7,0,0,0,73,79,69,114,114,111,114,117,20,0,0, - 0,95,98,121,116,101,115,95,102,114,111,109,95,98,121,116, - 101,99,111,100,101,117,11,0,0,0,73,109,112,111,114,116, - 69,114,114,111,114,117,8,0,0,0,69,79,70,69,114,114, - 111,114,117,16,0,0,0,95,118,101,114,98,111,115,101,95, - 109,101,115,115,97,103,101,117,7,0,0,0,109,97,114,115, - 104,97,108,117,5,0,0,0,108,111,97,100,115,117,10,0, - 0,0,105,115,105,110,115,116,97,110,99,101,117,10,0,0, - 0,95,99,111,100,101,95,116,121,112,101,117,4,0,0,0, - 95,105,109,112,117,16,0,0,0,95,102,105,120,95,99,111, - 95,102,105,108,101,110,97,109,101,117,6,0,0,0,102,111, - 114,109,97,116,117,25,0,0,0,95,99,97,108,108,95,119, - 105,116,104,95,102,114,97,109,101,115,95,114,101,109,111,118, - 101,100,117,7,0,0,0,99,111,109,112,105,108,101,117,4, - 0,0,0,84,114,117,101,117,3,0,0,0,115,121,115,117, - 19,0,0,0,100,111,110,116,95,119,114,105,116,101,95,98, - 121,116,101,99,111,100,101,117,9,0,0,0,98,121,116,101, - 97,114,114,97,121,117,12,0,0,0,95,77,65,71,73,67, - 95,66,89,84,69,83,117,6,0,0,0,101,120,116,101,110, - 100,117,7,0,0,0,95,119,95,108,111,110,103,117,3,0, - 0,0,108,101,110,117,5,0,0,0,100,117,109,112,115,117, - 15,0,0,0,95,99,97,99,104,101,95,98,121,116,101,99, - 111,100,101,40,12,0,0,0,117,4,0,0,0,115,101,108, - 102,117,8,0,0,0,102,117,108,108,110,97,109,101,117,11, - 0,0,0,115,111,117,114,99,101,95,112,97,116,104,117,12, - 0,0,0,115,111,117,114,99,101,95,109,116,105,109,101,117, - 13,0,0,0,98,121,116,101,99,111,100,101,95,112,97,116, - 104,117,2,0,0,0,115,116,117,4,0,0,0,100,97,116, - 97,117,10,0,0,0,98,121,116,101,115,95,100,97,116,97, - 117,5,0,0,0,102,111,117,110,100,117,3,0,0,0,109, - 115,103,117,12,0,0,0,115,111,117,114,99,101,95,98,121, - 116,101,115,117,11,0,0,0,99,111,100,101,95,111,98,106, - 101,99,116,40,0,0,0,0,40,0,0,0,0,117,29,0, - 0,0,60,102,114,111,122,101,110,32,105,109,112,111,114,116, - 108,105,98,46,95,98,111,111,116,115,116,114,97,112,62,117, - 8,0,0,0,103,101,116,95,99,111,100,101,164,3,0,0, - 115,98,0,0,0,0,7,15,1,6,1,3,1,16,1,13, - 1,11,2,3,1,19,1,13,1,5,2,16,1,3,1,19, - 1,13,1,5,2,3,1,12,1,3,1,13,1,19,1,5, - 2,9,1,7,1,15,1,15,1,16,1,6,1,7,1,4, - 2,6,1,18,1,15,1,15,1,6,1,12,1,9,1,13, - 1,22,1,12,1,12,1,19,1,25,1,22,1,3,1,19, - 1,17,1,13,1,8,1,117,21,0,0,0,83,111,117,114, - 99,101,76,111,97,100,101,114,46,103,101,116,95,99,111,100, - 101,99,2,0,0,0,0,0,0,0,2,0,0,0,2,0, - 0,0,67,0,0,0,115,13,0,0,0,124,0,0,106,0, - 0,124,1,0,131,1,0,83,40,1,0,0,0,117,0,1, - 0,0,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,76,111,97, - 100,101,114,46,108,111,97,100,95,109,111,100,117,108,101,46, - 10,10,32,32,32,32,32,32,32,32,82,101,113,117,105,114, - 101,115,32,69,120,101,99,117,116,105,111,110,76,111,97,100, - 101,114,46,103,101,116,95,102,105,108,101,110,97,109,101,32, - 97,110,100,32,82,101,115,111,117,114,99,101,76,111,97,100, - 101,114,46,103,101,116,95,100,97,116,97,32,116,111,32,98, - 101,10,32,32,32,32,32,32,32,32,105,109,112,108,101,109, - 101,110,116,101,100,32,116,111,32,108,111,97,100,32,115,111, - 117,114,99,101,32,99,111,100,101,46,32,85,115,101,32,111, - 102,32,98,121,116,101,99,111,100,101,32,105,115,32,100,105, - 99,116,97,116,101,100,32,98,121,32,119,104,101,116,104,101, - 114,10,32,32,32,32,32,32,32,32,103,101,116,95,99,111, - 100,101,32,117,115,101,115,47,119,114,105,116,101,115,32,98, - 121,116,101,99,111,100,101,46,10,10,32,32,32,32,32,32, - 32,32,40,1,0,0,0,117,12,0,0,0,95,108,111,97, - 100,95,109,111,100,117,108,101,40,2,0,0,0,117,4,0, - 0,0,115,101,108,102,117,8,0,0,0,102,117,108,108,110, - 97,109,101,40,0,0,0,0,40,0,0,0,0,117,29,0, - 0,0,60,102,114,111,122,101,110,32,105,109,112,111,114,116, - 108,105,98,46,95,98,111,111,116,115,116,114,97,112,62,117, - 11,0,0,0,108,111,97,100,95,109,111,100,117,108,101,226, - 3,0,0,115,2,0,0,0,0,8,117,24,0,0,0,83, - 111,117,114,99,101,76,111,97,100,101,114,46,108,111,97,100, - 95,109,111,100,117,108,101,78,40,10,0,0,0,117,8,0, - 0,0,95,95,110,97,109,101,95,95,117,10,0,0,0,95, - 95,109,111,100,117,108,101,95,95,117,12,0,0,0,95,95, - 113,117,97,108,110,97,109,101,95,95,117,10,0,0,0,112, - 97,116,104,95,109,116,105,109,101,117,10,0,0,0,112,97, - 116,104,95,115,116,97,116,115,117,15,0,0,0,95,99,97, - 99,104,101,95,98,121,116,101,99,111,100,101,117,8,0,0, - 0,115,101,116,95,100,97,116,97,117,10,0,0,0,103,101, - 116,95,115,111,117,114,99,101,117,8,0,0,0,103,101,116, - 95,99,111,100,101,117,11,0,0,0,108,111,97,100,95,109, - 111,100,117,108,101,40,1,0,0,0,117,10,0,0,0,95, - 95,108,111,99,97,108,115,95,95,40,0,0,0,0,40,0, + 97,100,101,114,46,103,101,116,95,99,111,100,101,46,10,10, + 32,32,32,32,32,32,32,32,82,101,97,100,105,110,103,32, + 111,102,32,98,121,116,101,99,111,100,101,32,114,101,113,117, + 105,114,101,115,32,112,97,116,104,95,115,116,97,116,115,32, + 116,111,32,98,101,32,105,109,112,108,101,109,101,110,116,101, + 100,46,32,84,111,32,119,114,105,116,101,10,32,32,32,32, + 32,32,32,32,98,121,116,101,99,111,100,101,44,32,115,101, + 116,95,100,97,116,97,32,109,117,115,116,32,97,108,115,111, + 32,98,101,32,105,109,112,108,101,109,101,110,116,101,100,46, + 10,10,32,32,32,32,32,32,32,32,117,5,0,0,0,109, + 116,105,109,101,117,13,0,0,0,123,125,32,109,97,116,99, + 104,101,115,32,123,125,117,19,0,0,0,99,111,100,101,32, + 111,98,106,101,99,116,32,102,114,111,109,32,123,125,117,21, + 0,0,0,78,111,110,45,99,111,100,101,32,111,98,106,101, + 99,116,32,105,110,32,123,125,117,4,0,0,0,110,97,109, + 101,117,4,0,0,0,112,97,116,104,117,4,0,0,0,101, + 120,101,99,117,12,0,0,0,100,111,110,116,95,105,110,104, + 101,114,105,116,117,10,0,0,0,119,114,111,116,101,32,123, + 33,114,125,78,84,40,31,0,0,0,117,12,0,0,0,103, + 101,116,95,102,105,108,101,110,97,109,101,117,4,0,0,0, + 78,111,110,101,117,17,0,0,0,99,97,99,104,101,95,102, + 114,111,109,95,115,111,117,114,99,101,117,19,0,0,0,78, + 111,116,73,109,112,108,101,109,101,110,116,101,100,69,114,114, + 111,114,117,10,0,0,0,112,97,116,104,95,115,116,97,116, + 115,117,3,0,0,0,105,110,116,117,8,0,0,0,103,101, + 116,95,100,97,116,97,117,7,0,0,0,73,79,69,114,114, + 111,114,117,20,0,0,0,95,98,121,116,101,115,95,102,114, + 111,109,95,98,121,116,101,99,111,100,101,117,11,0,0,0, + 73,109,112,111,114,116,69,114,114,111,114,117,8,0,0,0, + 69,79,70,69,114,114,111,114,117,16,0,0,0,95,118,101, + 114,98,111,115,101,95,109,101,115,115,97,103,101,117,7,0, + 0,0,109,97,114,115,104,97,108,117,5,0,0,0,108,111, + 97,100,115,117,10,0,0,0,105,115,105,110,115,116,97,110, + 99,101,117,10,0,0,0,95,99,111,100,101,95,116,121,112, + 101,117,4,0,0,0,95,105,109,112,117,16,0,0,0,95, + 102,105,120,95,99,111,95,102,105,108,101,110,97,109,101,117, + 6,0,0,0,102,111,114,109,97,116,117,25,0,0,0,95, + 99,97,108,108,95,119,105,116,104,95,102,114,97,109,101,115, + 95,114,101,109,111,118,101,100,117,7,0,0,0,99,111,109, + 112,105,108,101,117,4,0,0,0,84,114,117,101,117,3,0, + 0,0,115,121,115,117,19,0,0,0,100,111,110,116,95,119, + 114,105,116,101,95,98,121,116,101,99,111,100,101,117,9,0, + 0,0,98,121,116,101,97,114,114,97,121,117,12,0,0,0, + 95,77,65,71,73,67,95,66,89,84,69,83,117,6,0,0, + 0,101,120,116,101,110,100,117,7,0,0,0,95,119,95,108, + 111,110,103,117,3,0,0,0,108,101,110,117,5,0,0,0, + 100,117,109,112,115,117,15,0,0,0,95,99,97,99,104,101, + 95,98,121,116,101,99,111,100,101,40,12,0,0,0,117,4, + 0,0,0,115,101,108,102,117,8,0,0,0,102,117,108,108, + 110,97,109,101,117,11,0,0,0,115,111,117,114,99,101,95, + 112,97,116,104,117,12,0,0,0,115,111,117,114,99,101,95, + 109,116,105,109,101,117,13,0,0,0,98,121,116,101,99,111, + 100,101,95,112,97,116,104,117,2,0,0,0,115,116,117,4, + 0,0,0,100,97,116,97,117,10,0,0,0,98,121,116,101, + 115,95,100,97,116,97,117,5,0,0,0,102,111,117,110,100, + 117,3,0,0,0,109,115,103,117,12,0,0,0,115,111,117, + 114,99,101,95,98,121,116,101,115,117,11,0,0,0,99,111, + 100,101,95,111,98,106,101,99,116,40,0,0,0,0,40,0, 0,0,0,117,29,0,0,0,60,102,114,111,122,101,110,32, 105,109,112,111,114,116,108,105,98,46,95,98,111,111,116,115, - 116,114,97,112,62,117,12,0,0,0,83,111,117,114,99,101, - 76,111,97,100,101,114,103,3,0,0,115,14,0,0,0,16, - 2,12,6,12,12,12,10,12,9,12,22,12,62,117,12,0, - 0,0,83,111,117,114,99,101,76,111,97,100,101,114,99,1, - 0,0,0,0,0,0,0,1,0,0,0,4,0,0,0,2, - 0,0,0,115,92,0,0,0,124,0,0,69,101,0,0,90, - 1,0,100,0,0,90,2,0,100,1,0,90,3,0,100,2, - 0,100,3,0,132,0,0,90,4,0,101,5,0,135,0,0, - 102,1,0,100,4,0,100,5,0,134,0,0,131,1,0,90, - 6,0,101,5,0,100,6,0,100,7,0,132,0,0,131,1, - 0,90,7,0,100,8,0,100,9,0,132,0,0,90,8,0, - 135,0,0,83,40,10,0,0,0,117,10,0,0,0,70,105, - 108,101,76,111,97,100,101,114,117,103,0,0,0,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,3,0,0, - 0,2,0,0,0,67,0,0,0,115,22,0,0,0,124,1, - 0,124,0,0,95,0,0,124,2,0,124,0,0,95,1,0, - 100,1,0,83,40,2,0,0,0,117,75,0,0,0,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,40,2,0,0,0,117, - 4,0,0,0,110,97,109,101,117,4,0,0,0,112,97,116, - 104,40,3,0,0,0,117,4,0,0,0,115,101,108,102,117, - 8,0,0,0,102,117,108,108,110,97,109,101,117,4,0,0, - 0,112,97,116,104,40,0,0,0,0,40,0,0,0,0,117, - 29,0,0,0,60,102,114,111,122,101,110,32,105,109,112,111, - 114,116,108,105,98,46,95,98,111,111,116,115,116,114,97,112, - 62,117,8,0,0,0,95,95,105,110,105,116,95,95,242,3, - 0,0,115,4,0,0,0,0,3,9,1,117,19,0,0,0, - 70,105,108,101,76,111,97,100,101,114,46,95,95,105,110,105, - 116,95,95,99,2,0,0,0,0,0,0,0,2,0,0,0, - 3,0,0,0,3,0,0,0,115,22,0,0,0,116,0,0, - 116,1,0,124,0,0,131,2,0,106,2,0,124,1,0,131, - 1,0,83,40,1,0,0,0,117,26,0,0,0,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,40,3,0,0,0,117,5,0,0, - 0,115,117,112,101,114,117,10,0,0,0,70,105,108,101,76, - 111,97,100,101,114,117,11,0,0,0,108,111,97,100,95,109, - 111,100,117,108,101,40,2,0,0,0,117,4,0,0,0,115, - 101,108,102,117,8,0,0,0,102,117,108,108,110,97,109,101, - 40,1,0,0,0,117,9,0,0,0,95,95,99,108,97,115, - 115,95,95,40,0,0,0,0,117,29,0,0,0,60,102,114, - 111,122,101,110,32,105,109,112,111,114,116,108,105,98,46,95, - 98,111,111,116,115,116,114,97,112,62,117,11,0,0,0,108, - 111,97,100,95,109,111,100,117,108,101,248,3,0,0,115,2, - 0,0,0,0,5,117,22,0,0,0,70,105,108,101,76,111, - 97,100,101,114,46,108,111,97,100,95,109,111,100,117,108,101, - 99,2,0,0,0,0,0,0,0,2,0,0,0,1,0,0, - 0,67,0,0,0,115,7,0,0,0,124,0,0,106,0,0, - 83,40,1,0,0,0,117,58,0,0,0,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,40,1,0,0,0,117,4,0,0,0,112, - 97,116,104,40,2,0,0,0,117,4,0,0,0,115,101,108, - 102,117,8,0,0,0,102,117,108,108,110,97,109,101,40,0, - 0,0,0,40,0,0,0,0,117,29,0,0,0,60,102,114, - 111,122,101,110,32,105,109,112,111,114,116,108,105,98,46,95, - 98,111,111,116,115,116,114,97,112,62,117,12,0,0,0,103, - 101,116,95,102,105,108,101,110,97,109,101,255,3,0,0,115, - 2,0,0,0,0,3,117,23,0,0,0,70,105,108,101,76, - 111,97,100,101,114,46,103,101,116,95,102,105,108,101,110,97, - 109,101,99,2,0,0,0,0,0,0,0,3,0,0,0,8, - 0,0,0,67,0,0,0,115,41,0,0,0,116,0,0,106, - 1,0,124,1,0,100,1,0,131,2,0,143,17,0,125,2, - 0,124,2,0,106,2,0,131,0,0,83,87,100,2,0,81, - 88,100,2,0,83,40,3,0,0,0,117,39,0,0,0,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,117,1,0,0,0,114,78,40,3,0, - 0,0,117,3,0,0,0,95,105,111,117,6,0,0,0,70, - 105,108,101,73,79,117,4,0,0,0,114,101,97,100,40,3, - 0,0,0,117,4,0,0,0,115,101,108,102,117,4,0,0, - 0,112,97,116,104,117,4,0,0,0,102,105,108,101,40,0, - 0,0,0,40,0,0,0,0,117,29,0,0,0,60,102,114, - 111,122,101,110,32,105,109,112,111,114,116,108,105,98,46,95, - 98,111,111,116,115,116,114,97,112,62,117,8,0,0,0,103, - 101,116,95,100,97,116,97,4,4,0,0,115,4,0,0,0, - 0,2,21,1,117,19,0,0,0,70,105,108,101,76,111,97, - 100,101,114,46,103,101,116,95,100,97,116,97,40,9,0,0, - 0,117,8,0,0,0,95,95,110,97,109,101,95,95,117,10, - 0,0,0,95,95,109,111,100,117,108,101,95,95,117,12,0, - 0,0,95,95,113,117,97,108,110,97,109,101,95,95,117,7, - 0,0,0,95,95,100,111,99,95,95,117,8,0,0,0,95, - 95,105,110,105,116,95,95,117,11,0,0,0,95,99,104,101, - 99,107,95,110,97,109,101,117,11,0,0,0,108,111,97,100, - 95,109,111,100,117,108,101,117,12,0,0,0,103,101,116,95, - 102,105,108,101,110,97,109,101,117,8,0,0,0,103,101,116, - 95,100,97,116,97,40,1,0,0,0,117,10,0,0,0,95, - 95,108,111,99,97,108,115,95,95,40,0,0,0,0,40,1, - 0,0,0,117,9,0,0,0,95,95,99,108,97,115,115,95, - 95,117,29,0,0,0,60,102,114,111,122,101,110,32,105,109, - 112,111,114,116,108,105,98,46,95,98,111,111,116,115,116,114, - 97,112,62,117,10,0,0,0,70,105,108,101,76,111,97,100, - 101,114,237,3,0,0,115,10,0,0,0,16,3,6,2,12, - 6,24,7,18,5,117,10,0,0,0,70,105,108,101,76,111, + 116,114,97,112,62,117,8,0,0,0,103,101,116,95,99,111, + 100,101,170,3,0,0,115,98,0,0,0,0,7,15,1,6, + 1,3,1,16,1,13,1,11,2,3,1,19,1,13,1,5, + 2,16,1,3,1,19,1,13,1,5,2,3,1,12,1,3, + 1,13,1,19,1,5,2,9,1,7,1,15,1,15,1,16, + 1,6,1,7,1,4,2,6,1,18,1,15,1,15,1,6, + 1,12,1,9,1,13,1,22,1,12,1,12,1,19,1,25, + 1,22,1,3,1,19,1,17,1,13,1,8,1,117,21,0, + 0,0,83,111,117,114,99,101,76,111,97,100,101,114,46,103, + 101,116,95,99,111,100,101,99,2,0,0,0,0,0,0,0, + 2,0,0,0,2,0,0,0,67,0,0,0,115,13,0,0, + 0,124,0,0,106,0,0,124,1,0,131,1,0,83,40,1, + 0,0,0,117,0,1,0,0,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,76,111,97,100,101,114,46,108,111,97,100,95,109, + 111,100,117,108,101,46,10,10,32,32,32,32,32,32,32,32, + 82,101,113,117,105,114,101,115,32,69,120,101,99,117,116,105, + 111,110,76,111,97,100,101,114,46,103,101,116,95,102,105,108, + 101,110,97,109,101,32,97,110,100,32,82,101,115,111,117,114, + 99,101,76,111,97,100,101,114,46,103,101,116,95,100,97,116, + 97,32,116,111,32,98,101,10,32,32,32,32,32,32,32,32, + 105,109,112,108,101,109,101,110,116,101,100,32,116,111,32,108, + 111,97,100,32,115,111,117,114,99,101,32,99,111,100,101,46, + 32,85,115,101,32,111,102,32,98,121,116,101,99,111,100,101, + 32,105,115,32,100,105,99,116,97,116,101,100,32,98,121,32, + 119,104,101,116,104,101,114,10,32,32,32,32,32,32,32,32, + 103,101,116,95,99,111,100,101,32,117,115,101,115,47,119,114, + 105,116,101,115,32,98,121,116,101,99,111,100,101,46,10,10, + 32,32,32,32,32,32,32,32,40,1,0,0,0,117,12,0, + 0,0,95,108,111,97,100,95,109,111,100,117,108,101,40,2, + 0,0,0,117,4,0,0,0,115,101,108,102,117,8,0,0, + 0,102,117,108,108,110,97,109,101,40,0,0,0,0,40,0, + 0,0,0,117,29,0,0,0,60,102,114,111,122,101,110,32, + 105,109,112,111,114,116,108,105,98,46,95,98,111,111,116,115, + 116,114,97,112,62,117,11,0,0,0,108,111,97,100,95,109, + 111,100,117,108,101,232,3,0,0,115,2,0,0,0,0,8, + 117,24,0,0,0,83,111,117,114,99,101,76,111,97,100,101, + 114,46,108,111,97,100,95,109,111,100,117,108,101,78,40,10, + 0,0,0,117,8,0,0,0,95,95,110,97,109,101,95,95, + 117,10,0,0,0,95,95,109,111,100,117,108,101,95,95,117, + 12,0,0,0,95,95,113,117,97,108,110,97,109,101,95,95, + 117,10,0,0,0,112,97,116,104,95,109,116,105,109,101,117, + 10,0,0,0,112,97,116,104,95,115,116,97,116,115,117,15, + 0,0,0,95,99,97,99,104,101,95,98,121,116,101,99,111, + 100,101,117,8,0,0,0,115,101,116,95,100,97,116,97,117, + 10,0,0,0,103,101,116,95,115,111,117,114,99,101,117,8, + 0,0,0,103,101,116,95,99,111,100,101,117,11,0,0,0, + 108,111,97,100,95,109,111,100,117,108,101,40,1,0,0,0, + 117,10,0,0,0,95,95,108,111,99,97,108,115,95,95,40, + 0,0,0,0,40,0,0,0,0,117,29,0,0,0,60,102, + 114,111,122,101,110,32,105,109,112,111,114,116,108,105,98,46, + 95,98,111,111,116,115,116,114,97,112,62,117,12,0,0,0, + 83,111,117,114,99,101,76,111,97,100,101,114,109,3,0,0, + 115,14,0,0,0,16,2,12,6,12,12,12,10,12,9,12, + 22,12,62,117,12,0,0,0,83,111,117,114,99,101,76,111, 97,100,101,114,99,1,0,0,0,0,0,0,0,1,0,0, - 0,4,0,0,0,66,0,0,0,115,68,0,0,0,124,0, + 0,4,0,0,0,2,0,0,0,115,92,0,0,0,124,0, 0,69,101,0,0,90,1,0,100,0,0,90,2,0,100,1, 0,90,3,0,100,2,0,100,3,0,132,0,0,90,4,0, - 100,4,0,100,5,0,132,0,0,90,5,0,100,6,0,100, - 7,0,100,8,0,100,9,0,132,0,1,90,6,0,100,10, - 0,83,40,11,0,0,0,117,16,0,0,0,83,111,117,114, - 99,101,70,105,108,101,76,111,97,100,101,114,117,62,0,0, - 0,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,3,0,0,0,3,0,0,0, - 67,0,0,0,115,39,0,0,0,116,0,0,106,1,0,124, - 1,0,131,1,0,125,2,0,105,2,0,124,2,0,106,2, - 0,100,1,0,54,124,2,0,106,3,0,100,2,0,54,83, - 40,3,0,0,0,117,33,0,0,0,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,117,5,0,0,0, - 109,116,105,109,101,117,4,0,0,0,115,105,122,101,40,4, - 0,0,0,117,3,0,0,0,95,111,115,117,4,0,0,0, - 115,116,97,116,117,8,0,0,0,115,116,95,109,116,105,109, - 101,117,7,0,0,0,115,116,95,115,105,122,101,40,3,0, - 0,0,117,4,0,0,0,115,101,108,102,117,4,0,0,0, - 112,97,116,104,117,2,0,0,0,115,116,40,0,0,0,0, + 101,5,0,135,0,0,102,1,0,100,4,0,100,5,0,134, + 0,0,131,1,0,90,6,0,101,5,0,100,6,0,100,7, + 0,132,0,0,131,1,0,90,7,0,100,8,0,100,9,0, + 132,0,0,90,8,0,135,0,0,83,40,10,0,0,0,117, + 10,0,0,0,70,105,108,101,76,111,97,100,101,114,117,103, + 0,0,0,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,3,0,0,0,2,0,0,0,67,0,0,0,115, + 22,0,0,0,124,1,0,124,0,0,95,0,0,124,2,0, + 124,0,0,95,1,0,100,1,0,83,40,2,0,0,0,117, + 75,0,0,0,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, + 40,2,0,0,0,117,4,0,0,0,110,97,109,101,117,4, + 0,0,0,112,97,116,104,40,3,0,0,0,117,4,0,0, + 0,115,101,108,102,117,8,0,0,0,102,117,108,108,110,97, + 109,101,117,4,0,0,0,112,97,116,104,40,0,0,0,0, 40,0,0,0,0,117,29,0,0,0,60,102,114,111,122,101, 110,32,105,109,112,111,114,116,108,105,98,46,95,98,111,111, - 116,115,116,114,97,112,62,117,10,0,0,0,112,97,116,104, - 95,115,116,97,116,115,14,4,0,0,115,4,0,0,0,0, - 2,15,1,117,27,0,0,0,83,111,117,114,99,101,70,105, - 108,101,76,111,97,100,101,114,46,112,97,116,104,95,115,116, - 97,116,115,99,4,0,0,0,0,0,0,0,5,0,0,0, - 13,0,0,0,67,0,0,0,115,71,0,0,0,121,22,0, - 116,0,0,106,1,0,124,1,0,131,1,0,106,2,0,125, - 4,0,87,110,24,0,4,116,3,0,107,10,0,114,48,0, - 1,1,1,100,1,0,125,4,0,89,110,1,0,88,124,0, - 0,106,4,0,124,2,0,124,3,0,100,2,0,124,4,0, - 131,2,1,83,40,3,0,0,0,78,105,182,1,0,0,117, - 5,0,0,0,95,109,111,100,101,40,5,0,0,0,117,3, - 0,0,0,95,111,115,117,4,0,0,0,115,116,97,116,117, - 7,0,0,0,115,116,95,109,111,100,101,117,7,0,0,0, - 79,83,69,114,114,111,114,117,8,0,0,0,115,101,116,95, - 100,97,116,97,40,5,0,0,0,117,4,0,0,0,115,101, - 108,102,117,11,0,0,0,115,111,117,114,99,101,95,112,97, - 116,104,117,13,0,0,0,98,121,116,101,99,111,100,101,95, - 112,97,116,104,117,4,0,0,0,100,97,116,97,117,4,0, - 0,0,109,111,100,101,40,0,0,0,0,40,0,0,0,0, - 117,29,0,0,0,60,102,114,111,122,101,110,32,105,109,112, - 111,114,116,108,105,98,46,95,98,111,111,116,115,116,114,97, - 112,62,117,15,0,0,0,95,99,97,99,104,101,95,98,121, - 116,101,99,111,100,101,19,4,0,0,115,10,0,0,0,0, - 2,3,1,22,1,13,1,11,1,117,32,0,0,0,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,117,5, - 0,0,0,95,109,111,100,101,105,182,1,0,0,99,3,0, - 0,0,1,0,0,0,8,0,0,0,13,0,0,0,67,0, - 0,0,115,245,0,0,0,116,0,0,124,1,0,131,1,0, - 92,2,0,125,4,0,125,5,0,103,0,0,125,6,0,120, - 54,0,124,4,0,114,80,0,116,1,0,124,4,0,131,1, - 0,12,114,80,0,116,0,0,124,4,0,131,1,0,92,2, - 0,125,4,0,125,7,0,124,6,0,106,2,0,124,7,0, - 131,1,0,1,113,27,0,87,120,97,0,116,3,0,124,6, - 0,131,1,0,68,93,83,0,125,7,0,116,4,0,124,4, - 0,124,7,0,131,2,0,125,4,0,121,17,0,116,5,0, - 106,6,0,124,4,0,131,1,0,1,87,113,94,0,4,116, - 7,0,107,10,0,114,155,0,1,1,1,119,94,0,89,113, - 94,0,4,116,8,0,107,10,0,114,176,0,1,1,1,100, - 1,0,83,89,113,94,0,88,113,94,0,87,121,33,0,116, - 9,0,124,1,0,124,2,0,124,3,0,131,3,0,1,116, - 10,0,100,2,0,124,1,0,131,2,0,1,87,110,24,0, - 4,116,8,0,116,7,0,102,2,0,107,10,0,114,240,0, - 1,1,1,89,110,1,0,88,100,1,0,83,40,3,0,0, - 0,117,27,0,0,0,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,78,117,12,0,0,0,99,114,101,97,116,101,100,32,123, - 33,114,125,40,11,0,0,0,117,11,0,0,0,95,112,97, - 116,104,95,115,112,108,105,116,117,11,0,0,0,95,112,97, - 116,104,95,105,115,100,105,114,117,6,0,0,0,97,112,112, - 101,110,100,117,8,0,0,0,114,101,118,101,114,115,101,100, - 117,10,0,0,0,95,112,97,116,104,95,106,111,105,110,117, - 3,0,0,0,95,111,115,117,5,0,0,0,109,107,100,105, - 114,117,15,0,0,0,70,105,108,101,69,120,105,115,116,115, - 69,114,114,111,114,117,15,0,0,0,80,101,114,109,105,115, - 115,105,111,110,69,114,114,111,114,117,13,0,0,0,95,119, - 114,105,116,101,95,97,116,111,109,105,99,117,16,0,0,0, - 95,118,101,114,98,111,115,101,95,109,101,115,115,97,103,101, - 40,8,0,0,0,117,4,0,0,0,115,101,108,102,117,4, - 0,0,0,112,97,116,104,117,4,0,0,0,100,97,116,97, - 117,5,0,0,0,95,109,111,100,101,117,6,0,0,0,112, - 97,114,101,110,116,117,8,0,0,0,102,105,108,101,110,97, - 109,101,117,10,0,0,0,112,97,116,104,95,112,97,114,116, - 115,117,4,0,0,0,112,97,114,116,40,0,0,0,0,40, - 0,0,0,0,117,29,0,0,0,60,102,114,111,122,101,110, - 32,105,109,112,111,114,116,108,105,98,46,95,98,111,111,116, - 115,116,114,97,112,62,117,8,0,0,0,115,101,116,95,100, - 97,116,97,27,4,0,0,115,36,0,0,0,0,2,18,1, - 6,2,22,1,18,1,17,2,19,1,15,1,3,1,17,1, - 13,2,7,1,13,3,13,1,3,1,16,1,17,1,19,3, - 117,25,0,0,0,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,40, - 7,0,0,0,117,8,0,0,0,95,95,110,97,109,101,95, - 95,117,10,0,0,0,95,95,109,111,100,117,108,101,95,95, - 117,12,0,0,0,95,95,113,117,97,108,110,97,109,101,95, - 95,117,7,0,0,0,95,95,100,111,99,95,95,117,10,0, - 0,0,112,97,116,104,95,115,116,97,116,115,117,15,0,0, - 0,95,99,97,99,104,101,95,98,121,116,101,99,111,100,101, - 117,8,0,0,0,115,101,116,95,100,97,116,97,40,1,0, - 0,0,117,10,0,0,0,95,95,108,111,99,97,108,115,95, - 95,40,0,0,0,0,40,0,0,0,0,117,29,0,0,0, - 60,102,114,111,122,101,110,32,105,109,112,111,114,116,108,105, - 98,46,95,98,111,111,116,115,116,114,97,112,62,117,16,0, - 0,0,83,111,117,114,99,101,70,105,108,101,76,111,97,100, - 101,114,10,4,0,0,115,8,0,0,0,16,2,6,2,12, - 5,12,8,117,16,0,0,0,83,111,117,114,99,101,70,105, - 108,101,76,111,97,100,101,114,99,1,0,0,0,0,0,0, - 0,1,0,0,0,2,0,0,0,66,0,0,0,115,62,0, - 0,0,124,0,0,69,101,0,0,90,1,0,100,0,0,90, - 2,0,100,1,0,90,3,0,100,2,0,100,3,0,132,0, - 0,90,4,0,100,4,0,100,5,0,132,0,0,90,5,0, - 100,6,0,100,7,0,132,0,0,90,6,0,100,8,0,83, - 40,9,0,0,0,117,20,0,0,0,83,111,117,114,99,101, - 108,101,115,115,70,105,108,101,76,111,97,100,101,114,117,45, - 0,0,0,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,2,0,0,0,4,0,0, - 0,67,0,0,0,115,19,0,0,0,124,0,0,106,0,0, - 124,1,0,100,1,0,100,2,0,131,1,1,83,40,3,0, - 0,0,78,117,10,0,0,0,115,111,117,114,99,101,108,101, - 115,115,84,40,2,0,0,0,117,12,0,0,0,95,108,111, - 97,100,95,109,111,100,117,108,101,117,4,0,0,0,84,114, - 117,101,40,2,0,0,0,117,4,0,0,0,115,101,108,102, - 117,8,0,0,0,102,117,108,108,110,97,109,101,40,0,0, - 0,0,40,0,0,0,0,117,29,0,0,0,60,102,114,111, - 122,101,110,32,105,109,112,111,114,116,108,105,98,46,95,98, - 111,111,116,115,116,114,97,112,62,117,11,0,0,0,108,111, - 97,100,95,109,111,100,117,108,101,60,4,0,0,115,2,0, - 0,0,0,1,117,32,0,0,0,83,111,117,114,99,101,108, - 101,115,115,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,6,0,0,0,6,0,0,0,67,0,0,0,115,138, - 0,0,0,124,0,0,106,0,0,124,1,0,131,1,0,125, - 2,0,124,0,0,106,1,0,124,2,0,131,1,0,125,3, - 0,124,0,0,106,2,0,124,1,0,124,3,0,124,2,0, - 100,0,0,131,4,0,125,4,0,116,4,0,106,5,0,124, - 4,0,131,1,0,125,5,0,116,6,0,124,5,0,116,7, - 0,131,2,0,114,101,0,116,8,0,100,1,0,124,2,0, - 131,2,0,1,124,5,0,83,116,9,0,100,2,0,106,10, - 0,124,2,0,131,1,0,100,3,0,124,1,0,100,4,0, - 124,2,0,131,1,2,130,1,0,100,0,0,83,40,5,0, - 0,0,78,117,21,0,0,0,99,111,100,101,32,111,98,106, - 101,99,116,32,102,114,111,109,32,123,33,114,125,117,21,0, - 0,0,78,111,110,45,99,111,100,101,32,111,98,106,101,99, - 116,32,105,110,32,123,125,117,4,0,0,0,110,97,109,101, - 117,4,0,0,0,112,97,116,104,40,11,0,0,0,117,12, - 0,0,0,103,101,116,95,102,105,108,101,110,97,109,101,117, - 8,0,0,0,103,101,116,95,100,97,116,97,117,20,0,0, - 0,95,98,121,116,101,115,95,102,114,111,109,95,98,121,116, - 101,99,111,100,101,117,4,0,0,0,78,111,110,101,117,7, - 0,0,0,109,97,114,115,104,97,108,117,5,0,0,0,108, - 111,97,100,115,117,10,0,0,0,105,115,105,110,115,116,97, - 110,99,101,117,10,0,0,0,95,99,111,100,101,95,116,121, - 112,101,117,16,0,0,0,95,118,101,114,98,111,115,101,95, - 109,101,115,115,97,103,101,117,11,0,0,0,73,109,112,111, - 114,116,69,114,114,111,114,117,6,0,0,0,102,111,114,109, - 97,116,40,6,0,0,0,117,4,0,0,0,115,101,108,102, - 117,8,0,0,0,102,117,108,108,110,97,109,101,117,4,0, - 0,0,112,97,116,104,117,4,0,0,0,100,97,116,97,117, - 10,0,0,0,98,121,116,101,115,95,100,97,116,97,117,5, - 0,0,0,102,111,117,110,100,40,0,0,0,0,40,0,0, - 0,0,117,29,0,0,0,60,102,114,111,122,101,110,32,105, - 109,112,111,114,116,108,105,98,46,95,98,111,111,116,115,116, - 114,97,112,62,117,8,0,0,0,103,101,116,95,99,111,100, - 101,63,4,0,0,115,18,0,0,0,0,1,15,1,15,1, - 24,1,15,1,15,1,13,1,4,2,18,1,117,29,0,0, - 0,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,2,0,0,0,1,0,0,0,67, - 0,0,0,115,4,0,0,0,100,1,0,83,40,2,0,0, - 0,117,39,0,0,0,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,40,1, - 0,0,0,117,4,0,0,0,78,111,110,101,40,2,0,0, - 0,117,4,0,0,0,115,101,108,102,117,8,0,0,0,102, - 117,108,108,110,97,109,101,40,0,0,0,0,40,0,0,0, - 0,117,29,0,0,0,60,102,114,111,122,101,110,32,105,109, - 112,111,114,116,108,105,98,46,95,98,111,111,116,115,116,114, - 97,112,62,117,10,0,0,0,103,101,116,95,115,111,117,114, - 99,101,75,4,0,0,115,2,0,0,0,0,2,117,31,0, - 0,0,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,40,7,0,0,0,117,8,0,0,0,95,95,110,97, - 109,101,95,95,117,10,0,0,0,95,95,109,111,100,117,108, - 101,95,95,117,12,0,0,0,95,95,113,117,97,108,110,97, - 109,101,95,95,117,7,0,0,0,95,95,100,111,99,95,95, - 117,11,0,0,0,108,111,97,100,95,109,111,100,117,108,101, - 117,8,0,0,0,103,101,116,95,99,111,100,101,117,10,0, - 0,0,103,101,116,95,115,111,117,114,99,101,40,1,0,0, - 0,117,10,0,0,0,95,95,108,111,99,97,108,115,95,95, - 40,0,0,0,0,40,0,0,0,0,117,29,0,0,0,60, - 102,114,111,122,101,110,32,105,109,112,111,114,116,108,105,98, - 46,95,98,111,111,116,115,116,114,97,112,62,117,20,0,0, - 0,83,111,117,114,99,101,108,101,115,115,70,105,108,101,76, - 111,97,100,101,114,56,4,0,0,115,8,0,0,0,16,2, - 6,2,12,3,12,12,117,20,0,0,0,83,111,117,114,99, - 101,108,101,115,115,70,105,108,101,76,111,97,100,101,114,99, - 1,0,0,0,0,0,0,0,1,0,0,0,5,0,0,0, - 66,0,0,0,115,104,0,0,0,124,0,0,69,101,0,0, - 90,1,0,100,0,0,90,2,0,100,1,0,90,3,0,100, - 2,0,100,3,0,132,0,0,90,4,0,101,5,0,101,6, - 0,101,7,0,100,4,0,100,5,0,132,0,0,131,1,0, - 131,1,0,131,1,0,90,8,0,100,6,0,100,7,0,132, - 0,0,90,9,0,100,8,0,100,9,0,132,0,0,90,10, - 0,100,10,0,100,11,0,132,0,0,90,11,0,100,12,0, - 83,40,13,0,0,0,117,19,0,0,0,69,120,116,101,110, - 115,105,111,110,70,105,108,101,76,111,97,100,101,114,117,93, - 0,0,0,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,3,0,0,0,2,0,0, - 0,67,0,0,0,115,22,0,0,0,124,1,0,124,0,0, - 95,0,0,124,2,0,124,0,0,95,1,0,100,0,0,83, - 40,1,0,0,0,78,40,2,0,0,0,117,4,0,0,0, - 110,97,109,101,117,4,0,0,0,112,97,116,104,40,3,0, - 0,0,117,4,0,0,0,115,101,108,102,117,4,0,0,0, - 110,97,109,101,117,4,0,0,0,112,97,116,104,40,0,0, - 0,0,40,0,0,0,0,117,29,0,0,0,60,102,114,111, - 122,101,110,32,105,109,112,111,114,116,108,105,98,46,95,98, - 111,111,116,115,116,114,97,112,62,117,8,0,0,0,95,95, - 105,110,105,116,95,95,92,4,0,0,115,4,0,0,0,0, - 1,9,1,117,28,0,0,0,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,4,0,0, - 0,10,0,0,0,67,0,0,0,115,175,0,0,0,124,1, - 0,116,0,0,106,1,0,107,6,0,125,2,0,121,107,0, - 116,2,0,116,3,0,106,4,0,124,1,0,124,0,0,106, - 5,0,131,3,0,125,3,0,116,6,0,100,1,0,124,0, - 0,106,5,0,131,2,0,1,124,0,0,106,7,0,124,1, - 0,131,1,0,114,117,0,116,8,0,124,3,0,100,2,0, - 131,2,0,12,114,117,0,116,9,0,124,0,0,106,5,0, - 131,1,0,100,3,0,25,103,1,0,124,3,0,95,10,0, - 110,0,0,124,3,0,83,87,110,46,0,1,1,1,124,2, - 0,12,114,163,0,124,1,0,116,0,0,106,1,0,107,6, - 0,114,163,0,116,0,0,106,1,0,124,1,0,61,110,0, - 0,130,0,0,89,110,1,0,88,100,4,0,83,40,5,0, - 0,0,117,25,0,0,0,76,111,97,100,32,97,110,32,101, - 120,116,101,110,115,105,111,110,32,109,111,100,117,108,101,46, - 117,33,0,0,0,101,120,116,101,110,115,105,111,110,32,109, - 111,100,117,108,101,32,108,111,97,100,101,100,32,102,114,111, - 109,32,123,33,114,125,117,8,0,0,0,95,95,112,97,116, - 104,95,95,105,0,0,0,0,78,40,11,0,0,0,117,3, - 0,0,0,115,121,115,117,7,0,0,0,109,111,100,117,108, - 101,115,117,25,0,0,0,95,99,97,108,108,95,119,105,116, - 104,95,102,114,97,109,101,115,95,114,101,109,111,118,101,100, - 117,4,0,0,0,95,105,109,112,117,12,0,0,0,108,111, - 97,100,95,100,121,110,97,109,105,99,117,4,0,0,0,112, - 97,116,104,117,16,0,0,0,95,118,101,114,98,111,115,101, - 95,109,101,115,115,97,103,101,117,10,0,0,0,105,115,95, - 112,97,99,107,97,103,101,117,7,0,0,0,104,97,115,97, - 116,116,114,117,11,0,0,0,95,112,97,116,104,95,115,112, - 108,105,116,117,8,0,0,0,95,95,112,97,116,104,95,95, - 40,4,0,0,0,117,4,0,0,0,115,101,108,102,117,8, - 0,0,0,102,117,108,108,110,97,109,101,117,9,0,0,0, - 105,115,95,114,101,108,111,97,100,117,6,0,0,0,109,111, - 100,117,108,101,40,0,0,0,0,40,0,0,0,0,117,29, + 116,115,116,114,97,112,62,117,8,0,0,0,95,95,105,110, + 105,116,95,95,248,3,0,0,115,4,0,0,0,0,3,9, + 1,117,19,0,0,0,70,105,108,101,76,111,97,100,101,114, + 46,95,95,105,110,105,116,95,95,99,2,0,0,0,0,0, + 0,0,2,0,0,0,3,0,0,0,3,0,0,0,115,22, + 0,0,0,116,0,0,116,1,0,124,0,0,131,2,0,106, + 2,0,124,1,0,131,1,0,83,40,1,0,0,0,117,26, + 0,0,0,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,40,3,0, + 0,0,117,5,0,0,0,115,117,112,101,114,117,10,0,0, + 0,70,105,108,101,76,111,97,100,101,114,117,11,0,0,0, + 108,111,97,100,95,109,111,100,117,108,101,40,2,0,0,0, + 117,4,0,0,0,115,101,108,102,117,8,0,0,0,102,117, + 108,108,110,97,109,101,40,1,0,0,0,117,9,0,0,0, + 95,95,99,108,97,115,115,95,95,40,0,0,0,0,117,29, 0,0,0,60,102,114,111,122,101,110,32,105,109,112,111,114, 116,108,105,98,46,95,98,111,111,116,115,116,114,97,112,62, 117,11,0,0,0,108,111,97,100,95,109,111,100,117,108,101, - 96,4,0,0,115,24,0,0,0,0,5,15,1,3,1,9, - 1,15,1,16,1,31,1,28,1,8,1,3,1,22,1,13, - 1,117,31,0,0,0,69,120,116,101,110,115,105,111,110,70, - 105,108,101,76,111,97,100,101,114,46,108,111,97,100,95,109, - 111,100,117,108,101,99,2,0,0,0,0,0,0,0,2,0, - 0,0,4,0,0,0,3,0,0,0,115,48,0,0,0,116, - 0,0,124,0,0,106,1,0,131,1,0,100,1,0,25,137, - 0,0,116,2,0,135,0,0,102,1,0,100,2,0,100,3, - 0,134,0,0,116,3,0,68,131,1,0,131,1,0,83,40, - 4,0,0,0,117,49,0,0,0,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,105,1,0,0,0,99, - 1,0,0,0,0,0,0,0,2,0,0,0,4,0,0,0, - 51,0,0,0,115,31,0,0,0,124,0,0,93,21,0,125, - 1,0,136,0,0,100,0,0,124,1,0,23,107,2,0,86, - 1,113,3,0,100,1,0,83,40,2,0,0,0,117,8,0, - 0,0,95,95,105,110,105,116,95,95,78,40,0,0,0,0, - 40,2,0,0,0,117,2,0,0,0,46,48,117,6,0,0, - 0,115,117,102,102,105,120,40,1,0,0,0,117,9,0,0, - 0,102,105,108,101,95,110,97,109,101,40,0,0,0,0,117, - 29,0,0,0,60,102,114,111,122,101,110,32,105,109,112,111, - 114,116,108,105,98,46,95,98,111,111,116,115,116,114,97,112, - 62,117,9,0,0,0,60,103,101,110,101,120,112,114,62,117, - 4,0,0,115,2,0,0,0,6,1,117,49,0,0,0,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, - 40,4,0,0,0,117,11,0,0,0,95,112,97,116,104,95, - 115,112,108,105,116,117,4,0,0,0,112,97,116,104,117,3, - 0,0,0,97,110,121,117,18,0,0,0,69,88,84,69,78, - 83,73,79,78,95,83,85,70,70,73,88,69,83,40,2,0, - 0,0,117,4,0,0,0,115,101,108,102,117,8,0,0,0, - 102,117,108,108,110,97,109,101,40,0,0,0,0,40,1,0, - 0,0,117,9,0,0,0,102,105,108,101,95,110,97,109,101, - 117,29,0,0,0,60,102,114,111,122,101,110,32,105,109,112, - 111,114,116,108,105,98,46,95,98,111,111,116,115,116,114,97, - 112,62,117,10,0,0,0,105,115,95,112,97,99,107,97,103, - 101,114,4,0,0,115,6,0,0,0,0,2,19,1,18,1, - 117,30,0,0,0,69,120,116,101,110,115,105,111,110,70,105, - 108,101,76,111,97,100,101,114,46,105,115,95,112,97,99,107, - 97,103,101,99,2,0,0,0,0,0,0,0,2,0,0,0, - 1,0,0,0,67,0,0,0,115,4,0,0,0,100,1,0, - 83,40,2,0,0,0,117,63,0,0,0,82,101,116,117,114, - 110,32,78,111,110,101,32,97,115,32,97,110,32,101,120,116, - 101,110,115,105,111,110,32,109,111,100,117,108,101,32,99,97, - 110,110,111,116,32,99,114,101,97,116,101,32,97,32,99,111, - 100,101,32,111,98,106,101,99,116,46,78,40,1,0,0,0, - 117,4,0,0,0,78,111,110,101,40,2,0,0,0,117,4, + 254,3,0,0,115,2,0,0,0,0,5,117,22,0,0,0, + 70,105,108,101,76,111,97,100,101,114,46,108,111,97,100,95, + 109,111,100,117,108,101,99,2,0,0,0,0,0,0,0,2, + 0,0,0,1,0,0,0,67,0,0,0,115,7,0,0,0, + 124,0,0,106,0,0,83,40,1,0,0,0,117,58,0,0, + 0,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,40,1,0,0,0, + 117,4,0,0,0,112,97,116,104,40,2,0,0,0,117,4, 0,0,0,115,101,108,102,117,8,0,0,0,102,117,108,108, 110,97,109,101,40,0,0,0,0,40,0,0,0,0,117,29, 0,0,0,60,102,114,111,122,101,110,32,105,109,112,111,114, 116,108,105,98,46,95,98,111,111,116,115,116,114,97,112,62, - 117,8,0,0,0,103,101,116,95,99,111,100,101,120,4,0, - 0,115,2,0,0,0,0,2,117,28,0,0,0,69,120,116, - 101,110,115,105,111,110,70,105,108,101,76,111,97,100,101,114, - 46,103,101,116,95,99,111,100,101,99,2,0,0,0,0,0, - 0,0,2,0,0,0,1,0,0,0,67,0,0,0,115,4, - 0,0,0,100,1,0,83,40,2,0,0,0,117,53,0,0, - 0,82,101,116,117,114,110,32,78,111,110,101,32,97,115,32, - 101,120,116,101,110,115,105,111,110,32,109,111,100,117,108,101, - 115,32,104,97,118,101,32,110,111,32,115,111,117,114,99,101, - 32,99,111,100,101,46,78,40,1,0,0,0,117,4,0,0, - 0,78,111,110,101,40,2,0,0,0,117,4,0,0,0,115, - 101,108,102,117,8,0,0,0,102,117,108,108,110,97,109,101, - 40,0,0,0,0,40,0,0,0,0,117,29,0,0,0,60, - 102,114,111,122,101,110,32,105,109,112,111,114,116,108,105,98, - 46,95,98,111,111,116,115,116,114,97,112,62,117,10,0,0, - 0,103,101,116,95,115,111,117,114,99,101,124,4,0,0,115, - 2,0,0,0,0,2,117,30,0,0,0,69,120,116,101,110, - 115,105,111,110,70,105,108,101,76,111,97,100,101,114,46,103, - 101,116,95,115,111,117,114,99,101,78,40,12,0,0,0,117, - 8,0,0,0,95,95,110,97,109,101,95,95,117,10,0,0, - 0,95,95,109,111,100,117,108,101,95,95,117,12,0,0,0, - 95,95,113,117,97,108,110,97,109,101,95,95,117,7,0,0, - 0,95,95,100,111,99,95,95,117,8,0,0,0,95,95,105, - 110,105,116,95,95,117,11,0,0,0,95,99,104,101,99,107, - 95,110,97,109,101,117,11,0,0,0,115,101,116,95,112,97, - 99,107,97,103,101,117,10,0,0,0,115,101,116,95,108,111, - 97,100,101,114,117,11,0,0,0,108,111,97,100,95,109,111, - 100,117,108,101,117,10,0,0,0,105,115,95,112,97,99,107, - 97,103,101,117,8,0,0,0,103,101,116,95,99,111,100,101, - 117,10,0,0,0,103,101,116,95,115,111,117,114,99,101,40, - 1,0,0,0,117,10,0,0,0,95,95,108,111,99,97,108, - 115,95,95,40,0,0,0,0,40,0,0,0,0,117,29,0, - 0,0,60,102,114,111,122,101,110,32,105,109,112,111,114,116, - 108,105,98,46,95,98,111,111,116,115,116,114,97,112,62,117, - 19,0,0,0,69,120,116,101,110,115,105,111,110,70,105,108, - 101,76,111,97,100,101,114,84,4,0,0,115,16,0,0,0, - 16,6,6,2,12,4,3,1,3,1,24,16,12,6,12,4, - 117,19,0,0,0,69,120,116,101,110,115,105,111,110,70,105, - 108,101,76,111,97,100,101,114,99,1,0,0,0,0,0,0, - 0,1,0,0,0,2,0,0,0,66,0,0,0,115,134,0, - 0,0,124,0,0,69,101,0,0,90,1,0,100,0,0,90, - 2,0,100,1,0,90,3,0,100,2,0,100,3,0,132,0, - 0,90,4,0,100,4,0,100,5,0,132,0,0,90,5,0, - 100,6,0,100,7,0,132,0,0,90,6,0,100,8,0,100, - 9,0,132,0,0,90,7,0,100,10,0,100,11,0,132,0, - 0,90,8,0,100,12,0,100,13,0,132,0,0,90,9,0, - 100,14,0,100,15,0,132,0,0,90,10,0,100,16,0,100, - 17,0,132,0,0,90,11,0,100,18,0,100,19,0,132,0, - 0,90,12,0,100,20,0,83,40,21,0,0,0,117,14,0, - 0,0,95,78,97,109,101,115,112,97,99,101,80,97,116,104, - 117,37,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,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,4,0,0,0,2,0,0,0,67,0,0,0,115, - 52,0,0,0,124,1,0,124,0,0,95,0,0,124,2,0, - 124,0,0,95,1,0,116,2,0,124,0,0,106,3,0,131, - 0,0,131,1,0,124,0,0,95,4,0,124,3,0,124,0, - 0,95,5,0,100,0,0,83,40,1,0,0,0,78,40,6, - 0,0,0,117,5,0,0,0,95,110,97,109,101,117,5,0, - 0,0,95,112,97,116,104,117,5,0,0,0,116,117,112,108, - 101,117,16,0,0,0,95,103,101,116,95,112,97,114,101,110, - 116,95,112,97,116,104,117,17,0,0,0,95,108,97,115,116, - 95,112,97,114,101,110,116,95,112,97,116,104,117,12,0,0, - 0,95,112,97,116,104,95,102,105,110,100,101,114,40,4,0, - 0,0,117,4,0,0,0,115,101,108,102,117,4,0,0,0, - 110,97,109,101,117,4,0,0,0,112,97,116,104,117,11,0, - 0,0,112,97,116,104,95,102,105,110,100,101,114,40,0,0, - 0,0,40,0,0,0,0,117,29,0,0,0,60,102,114,111, - 122,101,110,32,105,109,112,111,114,116,108,105,98,46,95,98, - 111,111,116,115,116,114,97,112,62,117,8,0,0,0,95,95, - 105,110,105,116,95,95,136,4,0,0,115,8,0,0,0,0, - 1,9,1,9,1,21,1,117,23,0,0,0,95,78,97,109, - 101,115,112,97,99,101,80,97,116,104,46,95,95,105,110,105, - 116,95,95,99,1,0,0,0,0,0,0,0,4,0,0,0, - 3,0,0,0,67,0,0,0,115,53,0,0,0,124,0,0, - 106,0,0,106,1,0,100,1,0,131,1,0,92,3,0,125, - 1,0,125,2,0,125,3,0,124,2,0,100,2,0,107,2, - 0,114,43,0,100,6,0,83,124,1,0,100,5,0,102,2, - 0,83,40,7,0,0,0,117,62,0,0,0,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,117,1,0,0,0,46, - 117,0,0,0,0,117,3,0,0,0,115,121,115,117,4,0, - 0,0,112,97,116,104,117,8,0,0,0,95,95,112,97,116, - 104,95,95,40,2,0,0,0,117,3,0,0,0,115,121,115, - 117,4,0,0,0,112,97,116,104,40,2,0,0,0,117,5, - 0,0,0,95,110,97,109,101,117,10,0,0,0,114,112,97, - 114,116,105,116,105,111,110,40,4,0,0,0,117,4,0,0, - 0,115,101,108,102,117,6,0,0,0,112,97,114,101,110,116, - 117,3,0,0,0,100,111,116,117,2,0,0,0,109,101,40, - 0,0,0,0,40,0,0,0,0,117,29,0,0,0,60,102, - 114,111,122,101,110,32,105,109,112,111,114,116,108,105,98,46, - 95,98,111,111,116,115,116,114,97,112,62,117,23,0,0,0, - 95,102,105,110,100,95,112,97,114,101,110,116,95,112,97,116, - 104,95,110,97,109,101,115,142,4,0,0,115,8,0,0,0, - 0,2,27,1,12,2,4,3,117,38,0,0,0,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,3,0,0,0, - 3,0,0,0,67,0,0,0,115,38,0,0,0,124,0,0, - 106,0,0,131,0,0,92,2,0,125,1,0,125,2,0,116, - 1,0,116,2,0,106,3,0,124,1,0,25,124,2,0,131, - 2,0,83,40,1,0,0,0,78,40,4,0,0,0,117,23, - 0,0,0,95,102,105,110,100,95,112,97,114,101,110,116,95, - 112,97,116,104,95,110,97,109,101,115,117,7,0,0,0,103, - 101,116,97,116,116,114,117,3,0,0,0,115,121,115,117,7, - 0,0,0,109,111,100,117,108,101,115,40,3,0,0,0,117, - 4,0,0,0,115,101,108,102,117,18,0,0,0,112,97,114, - 101,110,116,95,109,111,100,117,108,101,95,110,97,109,101,117, - 14,0,0,0,112,97,116,104,95,97,116,116,114,95,110,97, - 109,101,40,0,0,0,0,40,0,0,0,0,117,29,0,0, - 0,60,102,114,111,122,101,110,32,105,109,112,111,114,116,108, - 105,98,46,95,98,111,111,116,115,116,114,97,112,62,117,16, - 0,0,0,95,103,101,116,95,112,97,114,101,110,116,95,112, - 97,116,104,152,4,0,0,115,4,0,0,0,0,1,18,1, - 117,31,0,0,0,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,4,0,0, - 0,3,0,0,0,67,0,0,0,115,103,0,0,0,116,0, - 0,124,0,0,106,1,0,131,0,0,131,1,0,125,1,0, - 124,1,0,124,0,0,106,2,0,107,3,0,114,96,0,124, - 0,0,106,3,0,124,0,0,106,4,0,124,1,0,131,2, - 0,92,2,0,125,2,0,125,3,0,124,2,0,100,0,0, - 107,8,0,114,84,0,124,3,0,124,0,0,95,6,0,110, - 0,0,124,1,0,124,0,0,95,2,0,110,0,0,124,0, - 0,106,6,0,83,40,1,0,0,0,78,40,7,0,0,0, - 117,5,0,0,0,116,117,112,108,101,117,16,0,0,0,95, - 103,101,116,95,112,97,114,101,110,116,95,112,97,116,104,117, - 17,0,0,0,95,108,97,115,116,95,112,97,114,101,110,116, - 95,112,97,116,104,117,12,0,0,0,95,112,97,116,104,95, - 102,105,110,100,101,114,117,5,0,0,0,95,110,97,109,101, - 117,4,0,0,0,78,111,110,101,117,5,0,0,0,95,112, - 97,116,104,40,4,0,0,0,117,4,0,0,0,115,101,108, - 102,117,11,0,0,0,112,97,114,101,110,116,95,112,97,116, - 104,117,6,0,0,0,108,111,97,100,101,114,117,8,0,0, - 0,110,101,119,95,112,97,116,104,40,0,0,0,0,40,0, - 0,0,0,117,29,0,0,0,60,102,114,111,122,101,110,32, - 105,109,112,111,114,116,108,105,98,46,95,98,111,111,116,115, - 116,114,97,112,62,117,12,0,0,0,95,114,101,99,97,108, - 99,117,108,97,116,101,156,4,0,0,115,14,0,0,0,0, - 2,18,1,15,1,27,3,12,1,12,1,12,1,117,27,0, - 0,0,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,1,0,0,0,2,0,0,0,67,0, - 0,0,115,16,0,0,0,116,0,0,124,0,0,106,1,0, - 131,0,0,131,1,0,83,40,1,0,0,0,78,40,2,0, - 0,0,117,4,0,0,0,105,116,101,114,117,12,0,0,0, - 95,114,101,99,97,108,99,117,108,97,116,101,40,1,0,0, - 0,117,4,0,0,0,115,101,108,102,40,0,0,0,0,40, - 0,0,0,0,117,29,0,0,0,60,102,114,111,122,101,110, - 32,105,109,112,111,114,116,108,105,98,46,95,98,111,111,116, - 115,116,114,97,112,62,117,8,0,0,0,95,95,105,116,101, - 114,95,95,168,4,0,0,115,2,0,0,0,0,1,117,23, - 0,0,0,95,78,97,109,101,115,112,97,99,101,80,97,116, - 104,46,95,95,105,116,101,114,95,95,99,1,0,0,0,0, - 0,0,0,1,0,0,0,2,0,0,0,67,0,0,0,115, - 16,0,0,0,116,0,0,124,0,0,106,1,0,131,0,0, - 131,1,0,83,40,1,0,0,0,78,40,2,0,0,0,117, - 3,0,0,0,108,101,110,117,12,0,0,0,95,114,101,99, - 97,108,99,117,108,97,116,101,40,1,0,0,0,117,4,0, - 0,0,115,101,108,102,40,0,0,0,0,40,0,0,0,0, - 117,29,0,0,0,60,102,114,111,122,101,110,32,105,109,112, - 111,114,116,108,105,98,46,95,98,111,111,116,115,116,114,97, - 112,62,117,7,0,0,0,95,95,108,101,110,95,95,171,4, - 0,0,115,2,0,0,0,0,1,117,22,0,0,0,95,78, - 97,109,101,115,112,97,99,101,80,97,116,104,46,95,95,108, - 101,110,95,95,99,1,0,0,0,0,0,0,0,1,0,0, - 0,2,0,0,0,67,0,0,0,115,16,0,0,0,100,1, - 0,106,0,0,124,0,0,106,1,0,131,1,0,83,40,2, - 0,0,0,78,117,20,0,0,0,95,78,97,109,101,115,112, - 97,99,101,80,97,116,104,40,123,33,114,125,41,40,2,0, - 0,0,117,6,0,0,0,102,111,114,109,97,116,117,5,0, - 0,0,95,112,97,116,104,40,1,0,0,0,117,4,0,0, - 0,115,101,108,102,40,0,0,0,0,40,0,0,0,0,117, - 29,0,0,0,60,102,114,111,122,101,110,32,105,109,112,111, - 114,116,108,105,98,46,95,98,111,111,116,115,116,114,97,112, - 62,117,8,0,0,0,95,95,114,101,112,114,95,95,174,4, - 0,0,115,2,0,0,0,0,1,117,23,0,0,0,95,78, - 97,109,101,115,112,97,99,101,80,97,116,104,46,95,95,114, - 101,112,114,95,95,99,2,0,0,0,0,0,0,0,2,0, - 0,0,2,0,0,0,67,0,0,0,115,16,0,0,0,124, - 1,0,124,0,0,106,0,0,131,0,0,107,6,0,83,40, - 1,0,0,0,78,40,1,0,0,0,117,12,0,0,0,95, - 114,101,99,97,108,99,117,108,97,116,101,40,2,0,0,0, - 117,4,0,0,0,115,101,108,102,117,4,0,0,0,105,116, - 101,109,40,0,0,0,0,40,0,0,0,0,117,29,0,0, - 0,60,102,114,111,122,101,110,32,105,109,112,111,114,116,108, - 105,98,46,95,98,111,111,116,115,116,114,97,112,62,117,12, - 0,0,0,95,95,99,111,110,116,97,105,110,115,95,95,177, - 4,0,0,115,2,0,0,0,0,1,117,27,0,0,0,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,2,0,0,0,2,0,0,0,67,0,0,0,115, - 20,0,0,0,124,0,0,106,0,0,106,1,0,124,1,0, - 131,1,0,1,100,0,0,83,40,1,0,0,0,78,40,2, - 0,0,0,117,5,0,0,0,95,112,97,116,104,117,6,0, - 0,0,97,112,112,101,110,100,40,2,0,0,0,117,4,0, - 0,0,115,101,108,102,117,4,0,0,0,105,116,101,109,40, - 0,0,0,0,40,0,0,0,0,117,29,0,0,0,60,102, - 114,111,122,101,110,32,105,109,112,111,114,116,108,105,98,46, - 95,98,111,111,116,115,116,114,97,112,62,117,6,0,0,0, - 97,112,112,101,110,100,180,4,0,0,115,2,0,0,0,0, - 1,117,21,0,0,0,95,78,97,109,101,115,112,97,99,101, - 80,97,116,104,46,97,112,112,101,110,100,78,40,13,0,0, - 0,117,8,0,0,0,95,95,110,97,109,101,95,95,117,10, - 0,0,0,95,95,109,111,100,117,108,101,95,95,117,12,0, - 0,0,95,95,113,117,97,108,110,97,109,101,95,95,117,7, - 0,0,0,95,95,100,111,99,95,95,117,8,0,0,0,95, - 95,105,110,105,116,95,95,117,23,0,0,0,95,102,105,110, - 100,95,112,97,114,101,110,116,95,112,97,116,104,95,110,97, - 109,101,115,117,16,0,0,0,95,103,101,116,95,112,97,114, - 101,110,116,95,112,97,116,104,117,12,0,0,0,95,114,101, - 99,97,108,99,117,108,97,116,101,117,8,0,0,0,95,95, - 105,116,101,114,95,95,117,7,0,0,0,95,95,108,101,110, - 95,95,117,8,0,0,0,95,95,114,101,112,114,95,95,117, - 12,0,0,0,95,95,99,111,110,116,97,105,110,115,95,95, - 117,6,0,0,0,97,112,112,101,110,100,40,1,0,0,0, + 117,12,0,0,0,103,101,116,95,102,105,108,101,110,97,109, + 101,5,4,0,0,115,2,0,0,0,0,3,117,23,0,0, + 0,70,105,108,101,76,111,97,100,101,114,46,103,101,116,95, + 102,105,108,101,110,97,109,101,99,2,0,0,0,0,0,0, + 0,3,0,0,0,8,0,0,0,67,0,0,0,115,41,0, + 0,0,116,0,0,106,1,0,124,1,0,100,1,0,131,2, + 0,143,17,0,125,2,0,124,2,0,106,2,0,131,0,0, + 83,87,100,2,0,81,88,100,2,0,83,40,3,0,0,0, + 117,39,0,0,0,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,117,1,0,0, + 0,114,78,40,3,0,0,0,117,3,0,0,0,95,105,111, + 117,6,0,0,0,70,105,108,101,73,79,117,4,0,0,0, + 114,101,97,100,40,3,0,0,0,117,4,0,0,0,115,101, + 108,102,117,4,0,0,0,112,97,116,104,117,4,0,0,0, + 102,105,108,101,40,0,0,0,0,40,0,0,0,0,117,29, + 0,0,0,60,102,114,111,122,101,110,32,105,109,112,111,114, + 116,108,105,98,46,95,98,111,111,116,115,116,114,97,112,62, + 117,8,0,0,0,103,101,116,95,100,97,116,97,10,4,0, + 0,115,4,0,0,0,0,2,21,1,117,19,0,0,0,70, + 105,108,101,76,111,97,100,101,114,46,103,101,116,95,100,97, + 116,97,40,9,0,0,0,117,8,0,0,0,95,95,110,97, + 109,101,95,95,117,10,0,0,0,95,95,109,111,100,117,108, + 101,95,95,117,12,0,0,0,95,95,113,117,97,108,110,97, + 109,101,95,95,117,7,0,0,0,95,95,100,111,99,95,95, + 117,8,0,0,0,95,95,105,110,105,116,95,95,117,11,0, + 0,0,95,99,104,101,99,107,95,110,97,109,101,117,11,0, + 0,0,108,111,97,100,95,109,111,100,117,108,101,117,12,0, + 0,0,103,101,116,95,102,105,108,101,110,97,109,101,117,8, + 0,0,0,103,101,116,95,100,97,116,97,40,1,0,0,0, 117,10,0,0,0,95,95,108,111,99,97,108,115,95,95,40, - 0,0,0,0,40,0,0,0,0,117,29,0,0,0,60,102, - 114,111,122,101,110,32,105,109,112,111,114,116,108,105,98,46, - 95,98,111,111,116,115,116,114,97,112,62,117,14,0,0,0, - 95,78,97,109,101,115,112,97,99,101,80,97,116,104,129,4, - 0,0,115,20,0,0,0,16,5,6,2,12,6,12,10,12, - 4,12,12,12,3,12,3,12,3,12,3,117,14,0,0,0, - 95,78,97,109,101,115,112,97,99,101,80,97,116,104,99,1, - 0,0,0,0,0,0,0,1,0,0,0,3,0,0,0,66, - 0,0,0,115,68,0,0,0,124,0,0,69,101,0,0,90, - 1,0,100,0,0,90,2,0,100,1,0,100,2,0,132,0, - 0,90,3,0,101,4,0,100,3,0,100,4,0,132,0,0, - 131,1,0,90,5,0,101,6,0,100,5,0,100,6,0,132, - 0,0,131,1,0,90,7,0,100,7,0,83,40,8,0,0, - 0,117,15,0,0,0,78,97,109,101,115,112,97,99,101,76, - 111,97,100,101,114,99,4,0,0,0,0,0,0,0,4,0, - 0,0,4,0,0,0,67,0,0,0,115,25,0,0,0,116, - 0,0,124,1,0,124,2,0,124,3,0,131,3,0,124,0, - 0,95,1,0,100,0,0,83,40,1,0,0,0,78,40,2, - 0,0,0,117,14,0,0,0,95,78,97,109,101,115,112,97, - 99,101,80,97,116,104,117,5,0,0,0,95,112,97,116,104, - 40,4,0,0,0,117,4,0,0,0,115,101,108,102,117,4, - 0,0,0,110,97,109,101,117,4,0,0,0,112,97,116,104, - 117,11,0,0,0,112,97,116,104,95,102,105,110,100,101,114, + 0,0,0,0,40,1,0,0,0,117,9,0,0,0,95,95, + 99,108,97,115,115,95,95,117,29,0,0,0,60,102,114,111, + 122,101,110,32,105,109,112,111,114,116,108,105,98,46,95,98, + 111,111,116,115,116,114,97,112,62,117,10,0,0,0,70,105, + 108,101,76,111,97,100,101,114,243,3,0,0,115,10,0,0, + 0,16,3,6,2,12,6,24,7,18,5,117,10,0,0,0, + 70,105,108,101,76,111,97,100,101,114,99,1,0,0,0,0, + 0,0,0,1,0,0,0,4,0,0,0,66,0,0,0,115, + 68,0,0,0,124,0,0,69,101,0,0,90,1,0,100,0, + 0,90,2,0,100,1,0,90,3,0,100,2,0,100,3,0, + 132,0,0,90,4,0,100,4,0,100,5,0,132,0,0,90, + 5,0,100,6,0,100,7,0,100,8,0,100,9,0,132,0, + 1,90,6,0,100,10,0,83,40,11,0,0,0,117,16,0, + 0,0,83,111,117,114,99,101,70,105,108,101,76,111,97,100, + 101,114,117,62,0,0,0,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,3,0, + 0,0,3,0,0,0,67,0,0,0,115,39,0,0,0,116, + 0,0,106,1,0,124,1,0,131,1,0,125,2,0,105,2, + 0,124,2,0,106,2,0,100,1,0,54,124,2,0,106,3, + 0,100,2,0,54,83,40,3,0,0,0,117,33,0,0,0, + 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,117,5,0,0,0,109,116,105,109,101,117,4,0,0,0, + 115,105,122,101,40,4,0,0,0,117,3,0,0,0,95,111, + 115,117,4,0,0,0,115,116,97,116,117,8,0,0,0,115, + 116,95,109,116,105,109,101,117,7,0,0,0,115,116,95,115, + 105,122,101,40,3,0,0,0,117,4,0,0,0,115,101,108, + 102,117,4,0,0,0,112,97,116,104,117,2,0,0,0,115, + 116,40,0,0,0,0,40,0,0,0,0,117,29,0,0,0, + 60,102,114,111,122,101,110,32,105,109,112,111,114,116,108,105, + 98,46,95,98,111,111,116,115,116,114,97,112,62,117,10,0, + 0,0,112,97,116,104,95,115,116,97,116,115,20,4,0,0, + 115,4,0,0,0,0,2,15,1,117,27,0,0,0,83,111, + 117,114,99,101,70,105,108,101,76,111,97,100,101,114,46,112, + 97,116,104,95,115,116,97,116,115,99,4,0,0,0,0,0, + 0,0,5,0,0,0,13,0,0,0,67,0,0,0,115,71, + 0,0,0,121,22,0,116,0,0,106,1,0,124,1,0,131, + 1,0,106,2,0,125,4,0,87,110,24,0,4,116,3,0, + 107,10,0,114,48,0,1,1,1,100,1,0,125,4,0,89, + 110,1,0,88,124,0,0,106,4,0,124,2,0,124,3,0, + 100,2,0,124,4,0,131,2,1,83,40,3,0,0,0,78, + 105,182,1,0,0,117,5,0,0,0,95,109,111,100,101,40, + 5,0,0,0,117,3,0,0,0,95,111,115,117,4,0,0, + 0,115,116,97,116,117,7,0,0,0,115,116,95,109,111,100, + 101,117,7,0,0,0,79,83,69,114,114,111,114,117,8,0, + 0,0,115,101,116,95,100,97,116,97,40,5,0,0,0,117, + 4,0,0,0,115,101,108,102,117,11,0,0,0,115,111,117, + 114,99,101,95,112,97,116,104,117,13,0,0,0,98,121,116, + 101,99,111,100,101,95,112,97,116,104,117,4,0,0,0,100, + 97,116,97,117,4,0,0,0,109,111,100,101,40,0,0,0, + 0,40,0,0,0,0,117,29,0,0,0,60,102,114,111,122, + 101,110,32,105,109,112,111,114,116,108,105,98,46,95,98,111, + 111,116,115,116,114,97,112,62,117,15,0,0,0,95,99,97, + 99,104,101,95,98,121,116,101,99,111,100,101,25,4,0,0, + 115,10,0,0,0,0,2,3,1,22,1,13,1,11,1,117, + 32,0,0,0,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,117,5,0,0,0,95,109,111,100,101,105,182, + 1,0,0,99,3,0,0,0,1,0,0,0,8,0,0,0, + 13,0,0,0,67,0,0,0,115,245,0,0,0,116,0,0, + 124,1,0,131,1,0,92,2,0,125,4,0,125,5,0,103, + 0,0,125,6,0,120,54,0,124,4,0,114,80,0,116,1, + 0,124,4,0,131,1,0,12,114,80,0,116,0,0,124,4, + 0,131,1,0,92,2,0,125,4,0,125,7,0,124,6,0, + 106,2,0,124,7,0,131,1,0,1,113,27,0,87,120,97, + 0,116,3,0,124,6,0,131,1,0,68,93,83,0,125,7, + 0,116,4,0,124,4,0,124,7,0,131,2,0,125,4,0, + 121,17,0,116,5,0,106,6,0,124,4,0,131,1,0,1, + 87,113,94,0,4,116,7,0,107,10,0,114,155,0,1,1, + 1,119,94,0,89,113,94,0,4,116,8,0,107,10,0,114, + 176,0,1,1,1,100,1,0,83,89,113,94,0,88,113,94, + 0,87,121,33,0,116,9,0,124,1,0,124,2,0,124,3, + 0,131,3,0,1,116,10,0,100,2,0,124,1,0,131,2, + 0,1,87,110,24,0,4,116,8,0,116,7,0,102,2,0, + 107,10,0,114,240,0,1,1,1,89,110,1,0,88,100,1, + 0,83,40,3,0,0,0,117,27,0,0,0,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,78,117,12,0,0,0,99,114,101, + 97,116,101,100,32,123,33,114,125,40,11,0,0,0,117,11, + 0,0,0,95,112,97,116,104,95,115,112,108,105,116,117,11, + 0,0,0,95,112,97,116,104,95,105,115,100,105,114,117,6, + 0,0,0,97,112,112,101,110,100,117,8,0,0,0,114,101, + 118,101,114,115,101,100,117,10,0,0,0,95,112,97,116,104, + 95,106,111,105,110,117,3,0,0,0,95,111,115,117,5,0, + 0,0,109,107,100,105,114,117,15,0,0,0,70,105,108,101, + 69,120,105,115,116,115,69,114,114,111,114,117,15,0,0,0, + 80,101,114,109,105,115,115,105,111,110,69,114,114,111,114,117, + 13,0,0,0,95,119,114,105,116,101,95,97,116,111,109,105, + 99,117,16,0,0,0,95,118,101,114,98,111,115,101,95,109, + 101,115,115,97,103,101,40,8,0,0,0,117,4,0,0,0, + 115,101,108,102,117,4,0,0,0,112,97,116,104,117,4,0, + 0,0,100,97,116,97,117,5,0,0,0,95,109,111,100,101, + 117,6,0,0,0,112,97,114,101,110,116,117,8,0,0,0, + 102,105,108,101,110,97,109,101,117,10,0,0,0,112,97,116, + 104,95,112,97,114,116,115,117,4,0,0,0,112,97,114,116, 40,0,0,0,0,40,0,0,0,0,117,29,0,0,0,60, 102,114,111,122,101,110,32,105,109,112,111,114,116,108,105,98, 46,95,98,111,111,116,115,116,114,97,112,62,117,8,0,0, - 0,95,95,105,110,105,116,95,95,185,4,0,0,115,2,0, - 0,0,0,1,117,24,0,0,0,78,97,109,101,115,112,97, - 99,101,76,111,97,100,101,114,46,95,95,105,110,105,116,95, - 95,99,2,0,0,0,0,0,0,0,2,0,0,0,2,0, - 0,0,67,0,0,0,115,16,0,0,0,100,1,0,106,0, - 0,124,1,0,106,1,0,131,1,0,83,40,2,0,0,0, - 78,117,25,0,0,0,60,109,111,100,117,108,101,32,39,123, - 125,39,32,40,110,97,109,101,115,112,97,99,101,41,62,40, - 2,0,0,0,117,6,0,0,0,102,111,114,109,97,116,117, - 8,0,0,0,95,95,110,97,109,101,95,95,40,2,0,0, - 0,117,3,0,0,0,99,108,115,117,6,0,0,0,109,111, - 100,117,108,101,40,0,0,0,0,40,0,0,0,0,117,29, - 0,0,0,60,102,114,111,122,101,110,32,105,109,112,111,114, - 116,108,105,98,46,95,98,111,111,116,115,116,114,97,112,62, - 117,11,0,0,0,109,111,100,117,108,101,95,114,101,112,114, - 188,4,0,0,115,2,0,0,0,0,2,117,27,0,0,0, - 78,97,109,101,115,112,97,99,101,76,111,97,100,101,114,46, - 109,111,100,117,108,101,95,114,101,112,114,99,2,0,0,0, - 0,0,0,0,2,0,0,0,3,0,0,0,67,0,0,0, - 115,32,0,0,0,116,0,0,100,1,0,124,0,0,106,1, - 0,131,2,0,1,124,0,0,106,1,0,124,1,0,95,2, - 0,124,1,0,83,40,2,0,0,0,117,24,0,0,0,76, - 111,97,100,32,97,32,110,97,109,101,115,112,97,99,101,32, - 109,111,100,117,108,101,46,117,38,0,0,0,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,40,3,0,0,0,117,16,0,0,0,95,118,101,114, - 98,111,115,101,95,109,101,115,115,97,103,101,117,5,0,0, - 0,95,112,97,116,104,117,8,0,0,0,95,95,112,97,116, - 104,95,95,40,2,0,0,0,117,4,0,0,0,115,101,108, - 102,117,6,0,0,0,109,111,100,117,108,101,40,0,0,0, - 0,40,0,0,0,0,117,29,0,0,0,60,102,114,111,122, - 101,110,32,105,109,112,111,114,116,108,105,98,46,95,98,111, - 111,116,115,116,114,97,112,62,117,11,0,0,0,108,111,97, - 100,95,109,111,100,117,108,101,192,4,0,0,115,6,0,0, - 0,0,3,16,1,12,1,117,27,0,0,0,78,97,109,101, - 115,112,97,99,101,76,111,97,100,101,114,46,108,111,97,100, - 95,109,111,100,117,108,101,78,40,8,0,0,0,117,8,0, - 0,0,95,95,110,97,109,101,95,95,117,10,0,0,0,95, - 95,109,111,100,117,108,101,95,95,117,12,0,0,0,95,95, - 113,117,97,108,110,97,109,101,95,95,117,8,0,0,0,95, - 95,105,110,105,116,95,95,117,11,0,0,0,99,108,97,115, - 115,109,101,116,104,111,100,117,11,0,0,0,109,111,100,117, - 108,101,95,114,101,112,114,117,17,0,0,0,109,111,100,117, - 108,101,95,102,111,114,95,108,111,97,100,101,114,117,11,0, - 0,0,108,111,97,100,95,109,111,100,117,108,101,40,1,0, - 0,0,117,10,0,0,0,95,95,108,111,99,97,108,115,95, - 95,40,0,0,0,0,40,0,0,0,0,117,29,0,0,0, - 60,102,114,111,122,101,110,32,105,109,112,111,114,116,108,105, - 98,46,95,98,111,111,116,115,116,114,97,112,62,117,15,0, - 0,0,78,97,109,101,115,112,97,99,101,76,111,97,100,101, - 114,184,4,0,0,115,6,0,0,0,16,1,12,3,18,4, - 117,15,0,0,0,78,97,109,101,115,112,97,99,101,76,111, - 97,100,101,114,99,1,0,0,0,0,0,0,0,1,0,0, - 0,4,0,0,0,66,0,0,0,115,119,0,0,0,124,0, - 0,69,101,0,0,90,1,0,100,0,0,90,2,0,100,1, - 0,90,3,0,101,4,0,100,2,0,100,3,0,132,0,0, - 131,1,0,90,5,0,101,4,0,100,4,0,100,5,0,132, - 0,0,131,1,0,90,6,0,101,4,0,100,6,0,100,7, - 0,132,0,0,131,1,0,90,7,0,101,4,0,100,8,0, - 100,9,0,132,0,0,131,1,0,90,8,0,101,4,0,100, - 12,0,100,10,0,100,11,0,132,1,0,131,1,0,90,10, - 0,100,12,0,83,40,13,0,0,0,117,10,0,0,0,80, - 97,116,104,70,105,110,100,101,114,117,62,0,0,0,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,1,0,0, - 0,0,0,0,0,2,0,0,0,4,0,0,0,67,0,0, - 0,115,58,0,0,0,120,51,0,116,0,0,106,1,0,106, - 2,0,131,0,0,68,93,34,0,125,1,0,116,3,0,124, - 1,0,100,1,0,131,2,0,114,16,0,124,1,0,106,4, - 0,131,0,0,1,113,16,0,113,16,0,87,100,2,0,83, - 40,3,0,0,0,117,125,0,0,0,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,117,17,0,0,0,105,110,118,97, - 108,105,100,97,116,101,95,99,97,99,104,101,115,78,40,5, - 0,0,0,117,3,0,0,0,115,121,115,117,19,0,0,0, - 112,97,116,104,95,105,109,112,111,114,116,101,114,95,99,97, - 99,104,101,117,6,0,0,0,118,97,108,117,101,115,117,7, - 0,0,0,104,97,115,97,116,116,114,117,17,0,0,0,105, - 110,118,97,108,105,100,97,116,101,95,99,97,99,104,101,115, - 40,2,0,0,0,117,3,0,0,0,99,108,115,117,6,0, - 0,0,102,105,110,100,101,114,40,0,0,0,0,40,0,0, - 0,0,117,29,0,0,0,60,102,114,111,122,101,110,32,105, - 109,112,111,114,116,108,105,98,46,95,98,111,111,116,115,116, - 114,97,112,62,117,17,0,0,0,105,110,118,97,108,105,100, - 97,116,101,95,99,97,99,104,101,115,206,4,0,0,115,6, - 0,0,0,0,4,22,1,15,1,117,28,0,0,0,80,97, - 116,104,70,105,110,100,101,114,46,105,110,118,97,108,105,100, - 97,116,101,95,99,97,99,104,101,115,99,2,0,0,0,0, - 0,0,0,3,0,0,0,12,0,0,0,67,0,0,0,115, - 94,0,0,0,116,0,0,106,1,0,115,28,0,116,2,0, - 106,3,0,100,1,0,116,4,0,131,2,0,1,110,0,0, - 120,59,0,116,0,0,106,1,0,68,93,44,0,125,2,0, - 121,14,0,124,2,0,124,1,0,131,1,0,83,87,113,38, - 0,4,116,5,0,107,10,0,114,81,0,1,1,1,119,38, - 0,89,113,38,0,88,113,38,0,87,100,2,0,83,100,2, - 0,83,40,3,0,0,0,117,113,0,0,0,83,101,97,114, - 99,104,32,115,101,113,117,101,110,99,101,32,111,102,32,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,10,10,32, - 32,32,32,32,32,32,32,73,102,32,39,104,111,111,107,115, - 39,32,105,115,32,102,97,108,115,101,32,116,104,101,110,32, - 117,115,101,32,115,121,115,46,112,97,116,104,95,104,111,111, - 107,115,46,10,10,32,32,32,32,32,32,32,32,117,23,0, - 0,0,115,121,115,46,112,97,116,104,95,104,111,111,107,115, - 32,105,115,32,101,109,112,116,121,78,40,7,0,0,0,117, - 3,0,0,0,115,121,115,117,10,0,0,0,112,97,116,104, - 95,104,111,111,107,115,117,9,0,0,0,95,119,97,114,110, - 105,110,103,115,117,4,0,0,0,119,97,114,110,117,13,0, - 0,0,73,109,112,111,114,116,87,97,114,110,105,110,103,117, - 11,0,0,0,73,109,112,111,114,116,69,114,114,111,114,117, - 4,0,0,0,78,111,110,101,40,3,0,0,0,117,3,0, - 0,0,99,108,115,117,4,0,0,0,112,97,116,104,117,4, - 0,0,0,104,111,111,107,40,0,0,0,0,40,0,0,0, + 0,115,101,116,95,100,97,116,97,33,4,0,0,115,36,0, + 0,0,0,2,18,1,6,2,22,1,18,1,17,2,19,1, + 15,1,3,1,17,1,13,2,7,1,13,3,13,1,3,1, + 16,1,17,1,19,3,117,25,0,0,0,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,40,7,0,0,0,117,8,0,0,0,95, + 95,110,97,109,101,95,95,117,10,0,0,0,95,95,109,111, + 100,117,108,101,95,95,117,12,0,0,0,95,95,113,117,97, + 108,110,97,109,101,95,95,117,7,0,0,0,95,95,100,111, + 99,95,95,117,10,0,0,0,112,97,116,104,95,115,116,97, + 116,115,117,15,0,0,0,95,99,97,99,104,101,95,98,121, + 116,101,99,111,100,101,117,8,0,0,0,115,101,116,95,100, + 97,116,97,40,1,0,0,0,117,10,0,0,0,95,95,108, + 111,99,97,108,115,95,95,40,0,0,0,0,40,0,0,0, 0,117,29,0,0,0,60,102,114,111,122,101,110,32,105,109, 112,111,114,116,108,105,98,46,95,98,111,111,116,115,116,114, - 97,112,62,117,11,0,0,0,95,112,97,116,104,95,104,111, - 111,107,115,214,4,0,0,115,16,0,0,0,0,7,9,1, - 19,1,16,1,3,1,14,1,13,1,12,2,117,22,0,0, - 0,80,97,116,104,70,105,110,100,101,114,46,95,112,97,116, - 104,95,104,111,111,107,115,99,2,0,0,0,0,0,0,0, - 3,0,0,0,11,0,0,0,67,0,0,0,115,91,0,0, - 0,124,1,0,100,1,0,107,2,0,114,21,0,100,2,0, - 125,1,0,110,0,0,121,17,0,116,0,0,106,1,0,124, - 1,0,25,125,2,0,87,110,46,0,4,116,2,0,107,10, - 0,114,86,0,1,1,1,124,0,0,106,3,0,124,1,0, - 131,1,0,125,2,0,124,2,0,116,0,0,106,1,0,124, - 1,0,60,89,110,1,0,88,124,2,0,83,40,3,0,0, - 0,117,210,0,0,0,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,117,0,0,0,0,117,1,0, - 0,0,46,40,4,0,0,0,117,3,0,0,0,115,121,115, - 117,19,0,0,0,112,97,116,104,95,105,109,112,111,114,116, - 101,114,95,99,97,99,104,101,117,8,0,0,0,75,101,121, - 69,114,114,111,114,117,11,0,0,0,95,112,97,116,104,95, - 104,111,111,107,115,40,3,0,0,0,117,3,0,0,0,99, - 108,115,117,4,0,0,0,112,97,116,104,117,6,0,0,0, - 102,105,110,100,101,114,40,0,0,0,0,40,0,0,0,0, + 97,112,62,117,16,0,0,0,83,111,117,114,99,101,70,105, + 108,101,76,111,97,100,101,114,16,4,0,0,115,8,0,0, + 0,16,2,6,2,12,5,12,8,117,16,0,0,0,83,111, + 117,114,99,101,70,105,108,101,76,111,97,100,101,114,99,1, + 0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,66, + 0,0,0,115,62,0,0,0,124,0,0,69,101,0,0,90, + 1,0,100,0,0,90,2,0,100,1,0,90,3,0,100,2, + 0,100,3,0,132,0,0,90,4,0,100,4,0,100,5,0, + 132,0,0,90,5,0,100,6,0,100,7,0,132,0,0,90, + 6,0,100,8,0,83,40,9,0,0,0,117,20,0,0,0, + 83,111,117,114,99,101,108,101,115,115,70,105,108,101,76,111, + 97,100,101,114,117,45,0,0,0,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,2, + 0,0,0,4,0,0,0,67,0,0,0,115,19,0,0,0, + 124,0,0,106,0,0,124,1,0,100,1,0,100,2,0,131, + 1,1,83,40,3,0,0,0,78,117,10,0,0,0,115,111, + 117,114,99,101,108,101,115,115,84,40,2,0,0,0,117,12, + 0,0,0,95,108,111,97,100,95,109,111,100,117,108,101,117, + 4,0,0,0,84,114,117,101,40,2,0,0,0,117,4,0, + 0,0,115,101,108,102,117,8,0,0,0,102,117,108,108,110, + 97,109,101,40,0,0,0,0,40,0,0,0,0,117,29,0, + 0,0,60,102,114,111,122,101,110,32,105,109,112,111,114,116, + 108,105,98,46,95,98,111,111,116,115,116,114,97,112,62,117, + 11,0,0,0,108,111,97,100,95,109,111,100,117,108,101,66, + 4,0,0,115,2,0,0,0,0,1,117,32,0,0,0,83, + 111,117,114,99,101,108,101,115,115,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,6,0,0,0,6,0,0,0, + 67,0,0,0,115,138,0,0,0,124,0,0,106,0,0,124, + 1,0,131,1,0,125,2,0,124,0,0,106,1,0,124,2, + 0,131,1,0,125,3,0,124,0,0,106,2,0,124,1,0, + 124,3,0,124,2,0,100,0,0,131,4,0,125,4,0,116, + 4,0,106,5,0,124,4,0,131,1,0,125,5,0,116,6, + 0,124,5,0,116,7,0,131,2,0,114,101,0,116,8,0, + 100,1,0,124,2,0,131,2,0,1,124,5,0,83,116,9, + 0,100,2,0,106,10,0,124,2,0,131,1,0,100,3,0, + 124,1,0,100,4,0,124,2,0,131,1,2,130,1,0,100, + 0,0,83,40,5,0,0,0,78,117,21,0,0,0,99,111, + 100,101,32,111,98,106,101,99,116,32,102,114,111,109,32,123, + 33,114,125,117,21,0,0,0,78,111,110,45,99,111,100,101, + 32,111,98,106,101,99,116,32,105,110,32,123,125,117,4,0, + 0,0,110,97,109,101,117,4,0,0,0,112,97,116,104,40, + 11,0,0,0,117,12,0,0,0,103,101,116,95,102,105,108, + 101,110,97,109,101,117,8,0,0,0,103,101,116,95,100,97, + 116,97,117,20,0,0,0,95,98,121,116,101,115,95,102,114, + 111,109,95,98,121,116,101,99,111,100,101,117,4,0,0,0, + 78,111,110,101,117,7,0,0,0,109,97,114,115,104,97,108, + 117,5,0,0,0,108,111,97,100,115,117,10,0,0,0,105, + 115,105,110,115,116,97,110,99,101,117,10,0,0,0,95,99, + 111,100,101,95,116,121,112,101,117,16,0,0,0,95,118,101, + 114,98,111,115,101,95,109,101,115,115,97,103,101,117,11,0, + 0,0,73,109,112,111,114,116,69,114,114,111,114,117,6,0, + 0,0,102,111,114,109,97,116,40,6,0,0,0,117,4,0, + 0,0,115,101,108,102,117,8,0,0,0,102,117,108,108,110, + 97,109,101,117,4,0,0,0,112,97,116,104,117,4,0,0, + 0,100,97,116,97,117,10,0,0,0,98,121,116,101,115,95, + 100,97,116,97,117,5,0,0,0,102,111,117,110,100,40,0, + 0,0,0,40,0,0,0,0,117,29,0,0,0,60,102,114, + 111,122,101,110,32,105,109,112,111,114,116,108,105,98,46,95, + 98,111,111,116,115,116,114,97,112,62,117,8,0,0,0,103, + 101,116,95,99,111,100,101,69,4,0,0,115,18,0,0,0, + 0,1,15,1,15,1,24,1,15,1,15,1,13,1,4,2, + 18,1,117,29,0,0,0,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,2,0,0, + 0,1,0,0,0,67,0,0,0,115,4,0,0,0,100,1, + 0,83,40,2,0,0,0,117,39,0,0,0,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,40,1,0,0,0,117,4,0,0,0,78,111, + 110,101,40,2,0,0,0,117,4,0,0,0,115,101,108,102, + 117,8,0,0,0,102,117,108,108,110,97,109,101,40,0,0, + 0,0,40,0,0,0,0,117,29,0,0,0,60,102,114,111, + 122,101,110,32,105,109,112,111,114,116,108,105,98,46,95,98, + 111,111,116,115,116,114,97,112,62,117,10,0,0,0,103,101, + 116,95,115,111,117,114,99,101,81,4,0,0,115,2,0,0, + 0,0,2,117,31,0,0,0,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,40,7,0,0,0,117,8,0, + 0,0,95,95,110,97,109,101,95,95,117,10,0,0,0,95, + 95,109,111,100,117,108,101,95,95,117,12,0,0,0,95,95, + 113,117,97,108,110,97,109,101,95,95,117,7,0,0,0,95, + 95,100,111,99,95,95,117,11,0,0,0,108,111,97,100,95, + 109,111,100,117,108,101,117,8,0,0,0,103,101,116,95,99, + 111,100,101,117,10,0,0,0,103,101,116,95,115,111,117,114, + 99,101,40,1,0,0,0,117,10,0,0,0,95,95,108,111, + 99,97,108,115,95,95,40,0,0,0,0,40,0,0,0,0, 117,29,0,0,0,60,102,114,111,122,101,110,32,105,109,112, 111,114,116,108,105,98,46,95,98,111,111,116,115,116,114,97, - 112,62,117,20,0,0,0,95,112,97,116,104,95,105,109,112, - 111,114,116,101,114,95,99,97,99,104,101,231,4,0,0,115, - 16,0,0,0,0,8,12,1,9,1,3,1,17,1,13,1, - 15,1,18,1,117,31,0,0,0,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,8,0,0,0,4,0,0,0,67,0,0,0,115,162,0, - 0,0,103,0,0,125,3,0,120,149,0,124,2,0,68,93, - 131,0,125,4,0,124,0,0,106,0,0,124,4,0,131,1, - 0,125,5,0,124,5,0,100,2,0,107,9,0,114,13,0, - 116,2,0,124,5,0,100,1,0,131,2,0,114,85,0,124, - 5,0,106,3,0,124,1,0,131,1,0,92,2,0,125,6, - 0,125,7,0,110,21,0,124,5,0,106,4,0,124,1,0, - 131,1,0,125,6,0,103,0,0,125,7,0,124,6,0,100, - 2,0,107,9,0,114,128,0,124,6,0,124,3,0,102,2, - 0,83,124,3,0,106,5,0,124,7,0,131,1,0,1,113, - 13,0,113,13,0,87,100,2,0,124,3,0,102,2,0,83, - 100,2,0,83,40,3,0,0,0,117,63,0,0,0,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,117,11,0, - 0,0,102,105,110,100,95,108,111,97,100,101,114,78,40,6, - 0,0,0,117,20,0,0,0,95,112,97,116,104,95,105,109, - 112,111,114,116,101,114,95,99,97,99,104,101,117,4,0,0, - 0,78,111,110,101,117,7,0,0,0,104,97,115,97,116,116, - 114,117,11,0,0,0,102,105,110,100,95,108,111,97,100,101, - 114,117,11,0,0,0,102,105,110,100,95,109,111,100,117,108, - 101,117,6,0,0,0,101,120,116,101,110,100,40,8,0,0, - 0,117,3,0,0,0,99,108,115,117,8,0,0,0,102,117, - 108,108,110,97,109,101,117,4,0,0,0,112,97,116,104,117, - 14,0,0,0,110,97,109,101,115,112,97,99,101,95,112,97, - 116,104,117,5,0,0,0,101,110,116,114,121,117,6,0,0, - 0,102,105,110,100,101,114,117,6,0,0,0,108,111,97,100, - 101,114,117,8,0,0,0,112,111,114,116,105,111,110,115,40, - 0,0,0,0,40,0,0,0,0,117,29,0,0,0,60,102, - 114,111,122,101,110,32,105,109,112,111,114,116,108,105,98,46, - 95,98,111,111,116,115,116,114,97,112,62,117,11,0,0,0, - 95,103,101,116,95,108,111,97,100,101,114,248,4,0,0,115, - 24,0,0,0,0,5,6,1,13,1,15,1,12,1,15,1, - 24,2,15,1,6,1,12,2,10,5,20,2,117,22,0,0, - 0,80,97,116,104,70,105,110,100,101,114,46,95,103,101,116, - 95,108,111,97,100,101,114,99,3,0,0,0,0,0,0,0, - 5,0,0,0,4,0,0,0,67,0,0,0,115,97,0,0, - 0,124,2,0,100,1,0,107,8,0,114,24,0,116,1,0, - 106,2,0,125,2,0,110,0,0,124,0,0,106,3,0,124, - 1,0,124,2,0,131,2,0,92,2,0,125,3,0,125,4, - 0,124,3,0,100,1,0,107,9,0,114,64,0,124,3,0, - 83,124,4,0,114,89,0,116,4,0,124,1,0,124,4,0, - 124,0,0,106,3,0,131,3,0,83,100,1,0,83,100,1, - 0,83,40,2,0,0,0,117,98,0,0,0,70,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,78,40, - 5,0,0,0,117,4,0,0,0,78,111,110,101,117,3,0, - 0,0,115,121,115,117,4,0,0,0,112,97,116,104,117,11, - 0,0,0,95,103,101,116,95,108,111,97,100,101,114,117,15, - 0,0,0,78,97,109,101,115,112,97,99,101,76,111,97,100, - 101,114,40,5,0,0,0,117,3,0,0,0,99,108,115,117, - 8,0,0,0,102,117,108,108,110,97,109,101,117,4,0,0, - 0,112,97,116,104,117,6,0,0,0,108,111,97,100,101,114, - 117,14,0,0,0,110,97,109,101,115,112,97,99,101,95,112, + 112,62,117,20,0,0,0,83,111,117,114,99,101,108,101,115, + 115,70,105,108,101,76,111,97,100,101,114,62,4,0,0,115, + 8,0,0,0,16,2,6,2,12,3,12,12,117,20,0,0, + 0,83,111,117,114,99,101,108,101,115,115,70,105,108,101,76, + 111,97,100,101,114,99,1,0,0,0,0,0,0,0,1,0, + 0,0,5,0,0,0,66,0,0,0,115,104,0,0,0,124, + 0,0,69,101,0,0,90,1,0,100,0,0,90,2,0,100, + 1,0,90,3,0,100,2,0,100,3,0,132,0,0,90,4, + 0,101,5,0,101,6,0,101,7,0,100,4,0,100,5,0, + 132,0,0,131,1,0,131,1,0,131,1,0,90,8,0,100, + 6,0,100,7,0,132,0,0,90,9,0,100,8,0,100,9, + 0,132,0,0,90,10,0,100,10,0,100,11,0,132,0,0, + 90,11,0,100,12,0,83,40,13,0,0,0,117,19,0,0, + 0,69,120,116,101,110,115,105,111,110,70,105,108,101,76,111, + 97,100,101,114,117,93,0,0,0,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,3, + 0,0,0,2,0,0,0,67,0,0,0,115,22,0,0,0, + 124,1,0,124,0,0,95,0,0,124,2,0,124,0,0,95, + 1,0,100,0,0,83,40,1,0,0,0,78,40,2,0,0, + 0,117,4,0,0,0,110,97,109,101,117,4,0,0,0,112, + 97,116,104,40,3,0,0,0,117,4,0,0,0,115,101,108, + 102,117,4,0,0,0,110,97,109,101,117,4,0,0,0,112, 97,116,104,40,0,0,0,0,40,0,0,0,0,117,29,0, 0,0,60,102,114,111,122,101,110,32,105,109,112,111,114,116, 108,105,98,46,95,98,111,111,116,115,116,114,97,112,62,117, - 11,0,0,0,102,105,110,100,95,109,111,100,117,108,101,17, - 5,0,0,115,16,0,0,0,0,4,12,1,12,1,24,1, - 12,1,4,2,6,3,19,2,117,22,0,0,0,80,97,116, - 104,70,105,110,100,101,114,46,102,105,110,100,95,109,111,100, - 117,108,101,78,40,11,0,0,0,117,8,0,0,0,95,95, - 110,97,109,101,95,95,117,10,0,0,0,95,95,109,111,100, - 117,108,101,95,95,117,12,0,0,0,95,95,113,117,97,108, - 110,97,109,101,95,95,117,7,0,0,0,95,95,100,111,99, - 95,95,117,11,0,0,0,99,108,97,115,115,109,101,116,104, - 111,100,117,17,0,0,0,105,110,118,97,108,105,100,97,116, - 101,95,99,97,99,104,101,115,117,11,0,0,0,95,112,97, - 116,104,95,104,111,111,107,115,117,20,0,0,0,95,112,97, - 116,104,95,105,109,112,111,114,116,101,114,95,99,97,99,104, - 101,117,11,0,0,0,95,103,101,116,95,108,111,97,100,101, - 114,117,4,0,0,0,78,111,110,101,117,11,0,0,0,102, - 105,110,100,95,109,111,100,117,108,101,40,1,0,0,0,117, - 10,0,0,0,95,95,108,111,99,97,108,115,95,95,40,0, - 0,0,0,40,0,0,0,0,117,29,0,0,0,60,102,114, - 111,122,101,110,32,105,109,112,111,114,116,108,105,98,46,95, - 98,111,111,116,115,116,114,97,112,62,117,10,0,0,0,80, - 97,116,104,70,105,110,100,101,114,202,4,0,0,115,14,0, - 0,0,16,2,6,2,18,8,18,17,18,17,18,25,3,1, - 117,10,0,0,0,80,97,116,104,70,105,110,100,101,114,99, - 1,0,0,0,0,0,0,0,1,0,0,0,3,0,0,0, - 66,0,0,0,115,110,0,0,0,124,0,0,69,101,0,0, - 90,1,0,100,0,0,90,2,0,100,1,0,90,3,0,100, - 2,0,100,3,0,132,0,0,90,4,0,100,4,0,100,5, - 0,132,0,0,90,5,0,101,6,0,90,7,0,100,6,0, - 100,7,0,132,0,0,90,8,0,100,8,0,100,9,0,132, - 0,0,90,9,0,101,10,0,100,10,0,100,11,0,132,0, - 0,131,1,0,90,11,0,100,12,0,100,13,0,132,0,0, - 90,12,0,100,14,0,83,40,15,0,0,0,117,10,0,0, - 0,70,105,108,101,70,105,110,100,101,114,117,172,0,0,0, - 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,5,0,0,0,5,0,0,0,7,0,0, - 0,115,122,0,0,0,103,0,0,125,3,0,120,52,0,124, - 2,0,68,93,44,0,92,2,0,137,0,0,125,4,0,124, - 3,0,106,0,0,135,0,0,102,1,0,100,1,0,100,2, - 0,134,0,0,124,4,0,68,131,1,0,131,1,0,1,113, - 13,0,87,124,3,0,124,0,0,95,1,0,124,1,0,112, - 79,0,100,3,0,124,0,0,95,2,0,100,6,0,124,0, - 0,95,3,0,116,4,0,131,0,0,124,0,0,95,5,0, - 116,4,0,131,0,0,124,0,0,95,6,0,100,5,0,83, - 40,7,0,0,0,117,201,0,0,0,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,51,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,44, - 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,32,114,101,99,111,103,110, - 105,122,101,115,44,10,32,32,32,32,32,32,32,32,97,110, - 100,32,97,32,98,111,111,108,101,97,110,32,111,102,32,119, - 104,101,116,104,101,114,32,116,104,101,32,108,111,97,100,101, - 114,32,104,97,110,100,108,101,115,32,112,97,99,107,97,103, - 101,115,46,99,1,0,0,0,0,0,0,0,2,0,0,0, - 3,0,0,0,51,0,0,0,115,27,0,0,0,124,0,0, - 93,17,0,125,1,0,124,1,0,136,0,0,102,2,0,86, - 1,113,3,0,100,0,0,83,40,1,0,0,0,78,40,0, - 0,0,0,40,2,0,0,0,117,2,0,0,0,46,48,117, - 6,0,0,0,115,117,102,102,105,120,40,1,0,0,0,117, - 6,0,0,0,108,111,97,100,101,114,40,0,0,0,0,117, - 29,0,0,0,60,102,114,111,122,101,110,32,105,109,112,111, - 114,116,108,105,98,46,95,98,111,111,116,115,116,114,97,112, - 62,117,9,0,0,0,60,103,101,110,101,120,112,114,62,50, - 5,0,0,115,2,0,0,0,6,0,117,38,0,0,0,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,117,1,0,0,0,46,105,1,0,0,0, - 78,105,255,255,255,255,40,7,0,0,0,117,6,0,0,0, - 101,120,116,101,110,100,117,8,0,0,0,95,108,111,97,100, - 101,114,115,117,4,0,0,0,112,97,116,104,117,11,0,0, - 0,95,112,97,116,104,95,109,116,105,109,101,117,3,0,0, - 0,115,101,116,117,11,0,0,0,95,112,97,116,104,95,99, - 97,99,104,101,117,19,0,0,0,95,114,101,108,97,120,101, - 100,95,112,97,116,104,95,99,97,99,104,101,40,5,0,0, - 0,117,4,0,0,0,115,101,108,102,117,4,0,0,0,112, - 97,116,104,117,7,0,0,0,100,101,116,97,105,108,115,117, - 7,0,0,0,108,111,97,100,101,114,115,117,8,0,0,0, - 115,117,102,102,105,120,101,115,40,0,0,0,0,40,1,0, - 0,0,117,6,0,0,0,108,111,97,100,101,114,117,29,0, - 0,0,60,102,114,111,122,101,110,32,105,109,112,111,114,116, - 108,105,98,46,95,98,111,111,116,115,116,114,97,112,62,117, - 8,0,0,0,95,95,105,110,105,116,95,95,44,5,0,0, - 115,16,0,0,0,0,4,6,1,19,1,36,1,9,2,15, - 1,9,1,12,1,117,19,0,0,0,70,105,108,101,70,105, - 110,100,101,114,46,95,95,105,110,105,116,95,95,99,1,0, - 0,0,0,0,0,0,1,0,0,0,2,0,0,0,67,0, - 0,0,115,13,0,0,0,100,3,0,124,0,0,95,0,0, - 100,2,0,83,40,4,0,0,0,117,31,0,0,0,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,105,1,0, - 0,0,78,105,255,255,255,255,40,1,0,0,0,117,11,0, - 0,0,95,112,97,116,104,95,109,116,105,109,101,40,1,0, - 0,0,117,4,0,0,0,115,101,108,102,40,0,0,0,0, + 8,0,0,0,95,95,105,110,105,116,95,95,98,4,0,0, + 115,4,0,0,0,0,1,9,1,117,28,0,0,0,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,4,0,0,0,10,0,0,0,67,0,0,0,115, + 175,0,0,0,124,1,0,116,0,0,106,1,0,107,6,0, + 125,2,0,121,107,0,116,2,0,116,3,0,106,4,0,124, + 1,0,124,0,0,106,5,0,131,3,0,125,3,0,116,6, + 0,100,1,0,124,0,0,106,5,0,131,2,0,1,124,0, + 0,106,7,0,124,1,0,131,1,0,114,117,0,116,8,0, + 124,3,0,100,2,0,131,2,0,12,114,117,0,116,9,0, + 124,0,0,106,5,0,131,1,0,100,3,0,25,103,1,0, + 124,3,0,95,10,0,110,0,0,124,3,0,83,87,110,46, + 0,1,1,1,124,2,0,12,114,163,0,124,1,0,116,0, + 0,106,1,0,107,6,0,114,163,0,116,0,0,106,1,0, + 124,1,0,61,110,0,0,130,0,0,89,110,1,0,88,100, + 4,0,83,40,5,0,0,0,117,25,0,0,0,76,111,97, + 100,32,97,110,32,101,120,116,101,110,115,105,111,110,32,109, + 111,100,117,108,101,46,117,33,0,0,0,101,120,116,101,110, + 115,105,111,110,32,109,111,100,117,108,101,32,108,111,97,100, + 101,100,32,102,114,111,109,32,123,33,114,125,117,8,0,0, + 0,95,95,112,97,116,104,95,95,105,0,0,0,0,78,40, + 11,0,0,0,117,3,0,0,0,115,121,115,117,7,0,0, + 0,109,111,100,117,108,101,115,117,25,0,0,0,95,99,97, + 108,108,95,119,105,116,104,95,102,114,97,109,101,115,95,114, + 101,109,111,118,101,100,117,4,0,0,0,95,105,109,112,117, + 12,0,0,0,108,111,97,100,95,100,121,110,97,109,105,99, + 117,4,0,0,0,112,97,116,104,117,16,0,0,0,95,118, + 101,114,98,111,115,101,95,109,101,115,115,97,103,101,117,10, + 0,0,0,105,115,95,112,97,99,107,97,103,101,117,7,0, + 0,0,104,97,115,97,116,116,114,117,11,0,0,0,95,112, + 97,116,104,95,115,112,108,105,116,117,8,0,0,0,95,95, + 112,97,116,104,95,95,40,4,0,0,0,117,4,0,0,0, + 115,101,108,102,117,8,0,0,0,102,117,108,108,110,97,109, + 101,117,9,0,0,0,105,115,95,114,101,108,111,97,100,117, + 6,0,0,0,109,111,100,117,108,101,40,0,0,0,0,40, + 0,0,0,0,117,29,0,0,0,60,102,114,111,122,101,110, + 32,105,109,112,111,114,116,108,105,98,46,95,98,111,111,116, + 115,116,114,97,112,62,117,11,0,0,0,108,111,97,100,95, + 109,111,100,117,108,101,102,4,0,0,115,24,0,0,0,0, + 5,15,1,3,1,9,1,15,1,16,1,31,1,28,1,8, + 1,3,1,22,1,13,1,117,31,0,0,0,69,120,116,101, + 110,115,105,111,110,70,105,108,101,76,111,97,100,101,114,46, + 108,111,97,100,95,109,111,100,117,108,101,99,2,0,0,0, + 0,0,0,0,2,0,0,0,4,0,0,0,3,0,0,0, + 115,48,0,0,0,116,0,0,124,0,0,106,1,0,131,1, + 0,100,1,0,25,137,0,0,116,2,0,135,0,0,102,1, + 0,100,2,0,100,3,0,134,0,0,116,3,0,68,131,1, + 0,131,1,0,83,40,4,0,0,0,117,49,0,0,0,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, + 105,1,0,0,0,99,1,0,0,0,0,0,0,0,2,0, + 0,0,4,0,0,0,51,0,0,0,115,31,0,0,0,124, + 0,0,93,21,0,125,1,0,136,0,0,100,0,0,124,1, + 0,23,107,2,0,86,1,113,3,0,100,1,0,83,40,2, + 0,0,0,117,8,0,0,0,95,95,105,110,105,116,95,95, + 78,40,0,0,0,0,40,2,0,0,0,117,2,0,0,0, + 46,48,117,6,0,0,0,115,117,102,102,105,120,40,1,0, + 0,0,117,9,0,0,0,102,105,108,101,95,110,97,109,101, 40,0,0,0,0,117,29,0,0,0,60,102,114,111,122,101, 110,32,105,109,112,111,114,116,108,105,98,46,95,98,111,111, - 116,115,116,114,97,112,62,117,17,0,0,0,105,110,118,97, - 108,105,100,97,116,101,95,99,97,99,104,101,115,58,5,0, - 0,115,2,0,0,0,0,2,117,28,0,0,0,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,12,0,0,0,13,0,0,0,67,0,0,0,115,172, - 1,0,0,100,5,0,125,2,0,124,1,0,106,1,0,100, - 1,0,131,1,0,100,2,0,25,125,3,0,121,25,0,116, - 2,0,106,3,0,124,0,0,106,4,0,131,1,0,106,5, - 0,125,4,0,87,110,24,0,4,116,6,0,107,10,0,114, - 76,0,1,1,1,100,6,0,125,4,0,89,110,1,0,88, - 124,4,0,124,0,0,106,7,0,107,3,0,114,114,0,124, - 0,0,106,8,0,131,0,0,1,124,4,0,124,0,0,95, - 7,0,110,0,0,116,9,0,131,0,0,114,147,0,124,0, - 0,106,10,0,125,5,0,124,3,0,106,11,0,131,0,0, - 125,6,0,110,15,0,124,0,0,106,12,0,125,5,0,124, - 3,0,125,6,0,124,6,0,124,5,0,107,6,0,114,45, - 1,116,13,0,124,0,0,106,4,0,124,3,0,131,2,0, - 125,7,0,116,14,0,124,7,0,131,1,0,114,45,1,120, - 91,0,124,0,0,106,15,0,68,93,71,0,92,2,0,125, - 8,0,125,9,0,100,4,0,124,8,0,23,125,10,0,116, - 13,0,124,7,0,124,10,0,131,2,0,125,11,0,116,16, - 0,124,11,0,131,1,0,114,214,0,124,9,0,124,1,0, - 124,11,0,131,2,0,124,7,0,103,1,0,102,2,0,83, - 113,214,0,87,100,7,0,125,2,0,113,45,1,110,0,0, - 120,95,0,124,0,0,106,15,0,68,93,84,0,92,2,0, - 125,8,0,125,9,0,124,6,0,124,8,0,23,124,5,0, - 107,6,0,114,55,1,116,13,0,124,0,0,106,4,0,124, - 3,0,124,8,0,23,131,2,0,125,11,0,116,16,0,124, - 11,0,131,1,0,114,139,1,124,9,0,124,1,0,124,11, - 0,131,2,0,103,0,0,102,2,0,83,113,55,1,113,55, - 1,87,124,2,0,114,162,1,100,8,0,124,7,0,103,1, - 0,102,2,0,83,100,8,0,103,0,0,102,2,0,83,40, - 9,0,0,0,117,125,0,0,0,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,117,1,0,0,0,46,105,2,0,0, - 0,105,1,0,0,0,117,8,0,0,0,95,95,105,110,105, - 116,95,95,70,105,255,255,255,255,84,78,40,19,0,0,0, - 117,5,0,0,0,70,97,108,115,101,117,10,0,0,0,114, - 112,97,114,116,105,116,105,111,110,117,3,0,0,0,95,111, - 115,117,4,0,0,0,115,116,97,116,117,4,0,0,0,112, - 97,116,104,117,8,0,0,0,115,116,95,109,116,105,109,101, - 117,7,0,0,0,79,83,69,114,114,111,114,117,11,0,0, - 0,95,112,97,116,104,95,109,116,105,109,101,117,11,0,0, - 0,95,102,105,108,108,95,99,97,99,104,101,117,11,0,0, - 0,95,114,101,108,97,120,95,99,97,115,101,117,19,0,0, - 0,95,114,101,108,97,120,101,100,95,112,97,116,104,95,99, - 97,99,104,101,117,5,0,0,0,108,111,119,101,114,117,11, - 0,0,0,95,112,97,116,104,95,99,97,99,104,101,117,10, - 0,0,0,95,112,97,116,104,95,106,111,105,110,117,11,0, - 0,0,95,112,97,116,104,95,105,115,100,105,114,117,8,0, - 0,0,95,108,111,97,100,101,114,115,117,12,0,0,0,95, - 112,97,116,104,95,105,115,102,105,108,101,117,4,0,0,0, - 84,114,117,101,117,4,0,0,0,78,111,110,101,40,12,0, - 0,0,117,4,0,0,0,115,101,108,102,117,8,0,0,0, - 102,117,108,108,110,97,109,101,117,12,0,0,0,105,115,95, - 110,97,109,101,115,112,97,99,101,117,11,0,0,0,116,97, - 105,108,95,109,111,100,117,108,101,117,5,0,0,0,109,116, - 105,109,101,117,5,0,0,0,99,97,99,104,101,117,12,0, - 0,0,99,97,99,104,101,95,109,111,100,117,108,101,117,9, - 0,0,0,98,97,115,101,95,112,97,116,104,117,6,0,0, - 0,115,117,102,102,105,120,117,6,0,0,0,108,111,97,100, - 101,114,117,13,0,0,0,105,110,105,116,95,102,105,108,101, - 110,97,109,101,117,9,0,0,0,102,117,108,108,95,112,97, - 116,104,40,0,0,0,0,40,0,0,0,0,117,29,0,0, - 0,60,102,114,111,122,101,110,32,105,109,112,111,114,116,108, - 105,98,46,95,98,111,111,116,115,116,114,97,112,62,117,11, - 0,0,0,102,105,110,100,95,108,111,97,100,101,114,64,5, - 0,0,115,62,0,0,0,0,3,6,1,19,1,3,1,25, - 1,13,1,11,1,15,1,10,1,12,2,9,1,9,1,15, - 2,9,1,6,2,12,1,18,1,12,1,22,1,10,1,15, - 1,12,1,26,4,12,2,22,1,16,1,22,1,12,1,26, - 1,6,1,13,1,117,22,0,0,0,70,105,108,101,70,105, - 110,100,101,114,46,102,105,110,100,95,108,111,97,100,101,114, - 99,1,0,0,0,0,0,0,0,9,0,0,0,12,0,0, - 0,67,0,0,0,115,255,0,0,0,124,0,0,106,0,0, - 125,1,0,121,19,0,116,1,0,106,2,0,124,1,0,131, - 1,0,125,2,0,87,110,24,0,4,116,3,0,107,10,0, - 114,54,0,1,1,1,103,0,0,125,2,0,89,110,1,0, - 88,116,4,0,106,5,0,106,6,0,100,1,0,131,1,0, - 115,91,0,116,7,0,124,2,0,131,1,0,124,0,0,95, - 8,0,110,111,0,116,7,0,131,0,0,125,3,0,120,90, - 0,124,2,0,68,93,82,0,125,4,0,124,4,0,106,9, - 0,100,2,0,131,1,0,92,3,0,125,5,0,125,6,0, - 125,7,0,124,6,0,114,170,0,100,3,0,106,10,0,124, - 5,0,124,7,0,106,11,0,131,0,0,131,2,0,125,8, - 0,110,6,0,124,5,0,125,8,0,124,3,0,106,12,0, - 124,8,0,131,1,0,1,113,107,0,87,124,3,0,124,0, - 0,95,8,0,116,4,0,106,5,0,106,6,0,116,13,0, - 131,1,0,114,251,0,116,7,0,100,4,0,100,5,0,132, - 0,0,124,2,0,68,131,1,0,131,1,0,124,0,0,95, - 14,0,110,0,0,100,6,0,83,40,7,0,0,0,117,68, - 0,0,0,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,117,3,0,0,0,119,105,110,117, - 1,0,0,0,46,117,5,0,0,0,123,125,46,123,125,99, - 1,0,0,0,0,0,0,0,2,0,0,0,2,0,0,0, - 115,0,0,0,115,27,0,0,0,124,0,0,93,17,0,125, - 1,0,124,1,0,106,0,0,131,0,0,86,1,113,3,0, - 100,0,0,83,40,1,0,0,0,78,40,1,0,0,0,117, - 5,0,0,0,108,111,119,101,114,40,2,0,0,0,117,2, - 0,0,0,46,48,117,2,0,0,0,102,110,40,0,0,0, - 0,40,0,0,0,0,117,29,0,0,0,60,102,114,111,122, + 116,115,116,114,97,112,62,117,9,0,0,0,60,103,101,110, + 101,120,112,114,62,123,4,0,0,115,2,0,0,0,6,1, + 117,49,0,0,0,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,40,4,0,0,0,117,11,0,0,0, + 95,112,97,116,104,95,115,112,108,105,116,117,4,0,0,0, + 112,97,116,104,117,3,0,0,0,97,110,121,117,18,0,0, + 0,69,88,84,69,78,83,73,79,78,95,83,85,70,70,73, + 88,69,83,40,2,0,0,0,117,4,0,0,0,115,101,108, + 102,117,8,0,0,0,102,117,108,108,110,97,109,101,40,0, + 0,0,0,40,1,0,0,0,117,9,0,0,0,102,105,108, + 101,95,110,97,109,101,117,29,0,0,0,60,102,114,111,122, 101,110,32,105,109,112,111,114,116,108,105,98,46,95,98,111, - 111,116,115,116,114,97,112,62,117,9,0,0,0,60,103,101, - 110,101,120,112,114,62,134,5,0,0,115,2,0,0,0,6, - 0,117,41,0,0,0,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,103,101,110,101,120,112,114,62,78, - 40,15,0,0,0,117,4,0,0,0,112,97,116,104,117,3, - 0,0,0,95,111,115,117,7,0,0,0,108,105,115,116,100, - 105,114,117,17,0,0,0,70,105,108,101,78,111,116,70,111, - 117,110,100,69,114,114,111,114,117,3,0,0,0,115,121,115, - 117,8,0,0,0,112,108,97,116,102,111,114,109,117,10,0, - 0,0,115,116,97,114,116,115,119,105,116,104,117,3,0,0, - 0,115,101,116,117,11,0,0,0,95,112,97,116,104,95,99, - 97,99,104,101,117,9,0,0,0,112,97,114,116,105,116,105, - 111,110,117,6,0,0,0,102,111,114,109,97,116,117,5,0, - 0,0,108,111,119,101,114,117,3,0,0,0,97,100,100,117, - 27,0,0,0,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,117, - 19,0,0,0,95,114,101,108,97,120,101,100,95,112,97,116, - 104,95,99,97,99,104,101,40,9,0,0,0,117,4,0,0, - 0,115,101,108,102,117,4,0,0,0,112,97,116,104,117,8, - 0,0,0,99,111,110,116,101,110,116,115,117,21,0,0,0, - 108,111,119,101,114,95,115,117,102,102,105,120,95,99,111,110, - 116,101,110,116,115,117,4,0,0,0,105,116,101,109,117,4, - 0,0,0,110,97,109,101,117,3,0,0,0,100,111,116,117, - 6,0,0,0,115,117,102,102,105,120,117,8,0,0,0,110, - 101,119,95,110,97,109,101,40,0,0,0,0,40,0,0,0, - 0,117,29,0,0,0,60,102,114,111,122,101,110,32,105,109, - 112,111,114,116,108,105,98,46,95,98,111,111,116,115,116,114, - 97,112,62,117,11,0,0,0,95,102,105,108,108,95,99,97, - 99,104,101,106,5,0,0,115,34,0,0,0,0,2,9,1, - 3,1,19,1,13,2,11,3,18,1,18,7,9,1,13,1, - 24,1,6,1,27,2,6,1,17,1,9,1,18,1,117,22, - 0,0,0,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,3,0,0,0,3,0,0,0,7,0,0,0,115,25, - 0,0,0,135,0,0,135,1,0,102,2,0,100,1,0,100, - 2,0,134,0,0,125,2,0,124,2,0,83,40,3,0,0, - 0,117,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,1,0,0,0,4,0,0,0,19,0,0,0,115, - 46,0,0,0,116,0,0,124,0,0,131,1,0,115,33,0, - 116,1,0,100,1,0,100,2,0,124,0,0,131,1,1,130, - 1,0,110,0,0,136,0,0,124,0,0,136,1,0,140,1, - 0,83,40,3,0,0,0,117,45,0,0,0,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,117,30,0,0,0,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,117,4,0,0, - 0,112,97,116,104,40,2,0,0,0,117,11,0,0,0,95, - 112,97,116,104,95,105,115,100,105,114,117,11,0,0,0,73, - 109,112,111,114,116,69,114,114,111,114,40,1,0,0,0,117, - 4,0,0,0,112,97,116,104,40,2,0,0,0,117,3,0, - 0,0,99,108,115,117,14,0,0,0,108,111,97,100,101,114, - 95,100,101,116,97,105,108,115,40,0,0,0,0,117,29,0, - 0,0,60,102,114,111,122,101,110,32,105,109,112,111,114,116, - 108,105,98,46,95,98,111,111,116,115,116,114,97,112,62,117, - 24,0,0,0,112,97,116,104,95,104,111,111,107,95,102,111, - 114,95,70,105,108,101,70,105,110,100,101,114,146,5,0,0, - 115,6,0,0,0,0,2,12,1,21,1,117,54,0,0,0, - 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,40,0,0,0,0,40,3,0,0,0, - 117,3,0,0,0,99,108,115,117,14,0,0,0,108,111,97, - 100,101,114,95,100,101,116,97,105,108,115,117,24,0,0,0, - 112,97,116,104,95,104,111,111,107,95,102,111,114,95,70,105, - 108,101,70,105,110,100,101,114,40,0,0,0,0,40,2,0, - 0,0,117,3,0,0,0,99,108,115,117,14,0,0,0,108, - 111,97,100,101,114,95,100,101,116,97,105,108,115,117,29,0, - 0,0,60,102,114,111,122,101,110,32,105,109,112,111,114,116, - 108,105,98,46,95,98,111,111,116,115,116,114,97,112,62,117, - 9,0,0,0,112,97,116,104,95,104,111,111,107,136,5,0, - 0,115,4,0,0,0,0,10,21,6,117,20,0,0,0,70, - 105,108,101,70,105,110,100,101,114,46,112,97,116,104,95,104, - 111,111,107,99,1,0,0,0,0,0,0,0,1,0,0,0, - 2,0,0,0,67,0,0,0,115,14,0,0,0,100,1,0, - 124,0,0,106,0,0,102,1,0,22,83,40,2,0,0,0, - 78,117,14,0,0,0,70,105,108,101,70,105,110,100,101,114, - 40,37,114,41,40,1,0,0,0,117,4,0,0,0,112,97, - 116,104,40,1,0,0,0,117,4,0,0,0,115,101,108,102, - 40,0,0,0,0,40,0,0,0,0,117,29,0,0,0,60, - 102,114,111,122,101,110,32,105,109,112,111,114,116,108,105,98, - 46,95,98,111,111,116,115,116,114,97,112,62,117,8,0,0, - 0,95,95,114,101,112,114,95,95,154,5,0,0,115,2,0, - 0,0,0,1,117,19,0,0,0,70,105,108,101,70,105,110, - 100,101,114,46,95,95,114,101,112,114,95,95,78,40,13,0, - 0,0,117,8,0,0,0,95,95,110,97,109,101,95,95,117, - 10,0,0,0,95,95,109,111,100,117,108,101,95,95,117,12, - 0,0,0,95,95,113,117,97,108,110,97,109,101,95,95,117, - 7,0,0,0,95,95,100,111,99,95,95,117,8,0,0,0, - 95,95,105,110,105,116,95,95,117,17,0,0,0,105,110,118, - 97,108,105,100,97,116,101,95,99,97,99,104,101,115,117,17, - 0,0,0,95,102,105,110,100,95,109,111,100,117,108,101,95, - 115,104,105,109,117,11,0,0,0,102,105,110,100,95,109,111, - 100,117,108,101,117,11,0,0,0,102,105,110,100,95,108,111, - 97,100,101,114,117,11,0,0,0,95,102,105,108,108,95,99, - 97,99,104,101,117,11,0,0,0,99,108,97,115,115,109,101, - 116,104,111,100,117,9,0,0,0,112,97,116,104,95,104,111, - 111,107,117,8,0,0,0,95,95,114,101,112,114,95,95,40, - 1,0,0,0,117,10,0,0,0,95,95,108,111,99,97,108, - 115,95,95,40,0,0,0,0,40,0,0,0,0,117,29,0, - 0,0,60,102,114,111,122,101,110,32,105,109,112,111,114,116, - 108,105,98,46,95,98,111,111,116,115,116,114,97,112,62,117, - 10,0,0,0,70,105,108,101,70,105,110,100,101,114,35,5, - 0,0,115,16,0,0,0,16,7,6,2,12,14,12,4,6, - 2,12,42,12,30,18,18,117,10,0,0,0,70,105,108,101, - 70,105,110,100,101,114,99,1,0,0,0,0,0,0,0,1, - 0,0,0,2,0,0,0,66,0,0,0,115,50,0,0,0, - 124,0,0,69,101,0,0,90,1,0,100,0,0,90,2,0, - 100,1,0,90,3,0,100,2,0,100,3,0,132,0,0,90, - 4,0,100,4,0,100,5,0,132,0,0,90,5,0,100,6, - 0,83,40,7,0,0,0,117,18,0,0,0,95,73,109,112, - 111,114,116,76,111,99,107,67,111,110,116,101,120,116,117,36, - 0,0,0,67,111,110,116,101,120,116,32,109,97,110,97,103, - 101,114,32,102,111,114,32,116,104,101,32,105,109,112,111,114, - 116,32,108,111,99,107,46,99,1,0,0,0,0,0,0,0, - 1,0,0,0,1,0,0,0,67,0,0,0,115,14,0,0, - 0,116,0,0,106,1,0,131,0,0,1,100,1,0,83,40, - 2,0,0,0,117,24,0,0,0,65,99,113,117,105,114,101, - 32,116,104,101,32,105,109,112,111,114,116,32,108,111,99,107, - 46,78,40,2,0,0,0,117,4,0,0,0,95,105,109,112, - 117,12,0,0,0,97,99,113,117,105,114,101,95,108,111,99, - 107,40,1,0,0,0,117,4,0,0,0,115,101,108,102,40, - 0,0,0,0,40,0,0,0,0,117,29,0,0,0,60,102, - 114,111,122,101,110,32,105,109,112,111,114,116,108,105,98,46, - 95,98,111,111,116,115,116,114,97,112,62,117,9,0,0,0, - 95,95,101,110,116,101,114,95,95,164,5,0,0,115,2,0, - 0,0,0,2,117,28,0,0,0,95,73,109,112,111,114,116, - 76,111,99,107,67,111,110,116,101,120,116,46,95,95,101,110, - 116,101,114,95,95,99,4,0,0,0,0,0,0,0,4,0, - 0,0,1,0,0,0,67,0,0,0,115,14,0,0,0,116, - 0,0,106,1,0,131,0,0,1,100,1,0,83,40,2,0, - 0,0,117,60,0,0,0,82,101,108,101,97,115,101,32,116, - 104,101,32,105,109,112,111,114,116,32,108,111,99,107,32,114, - 101,103,97,114,100,108,101,115,115,32,111,102,32,97,110,121, - 32,114,97,105,115,101,100,32,101,120,99,101,112,116,105,111, - 110,115,46,78,40,2,0,0,0,117,4,0,0,0,95,105, - 109,112,117,12,0,0,0,114,101,108,101,97,115,101,95,108, - 111,99,107,40,4,0,0,0,117,4,0,0,0,115,101,108, - 102,117,8,0,0,0,101,120,99,95,116,121,112,101,117,9, - 0,0,0,101,120,99,95,118,97,108,117,101,117,13,0,0, - 0,101,120,99,95,116,114,97,99,101,98,97,99,107,40,0, - 0,0,0,40,0,0,0,0,117,29,0,0,0,60,102,114, - 111,122,101,110,32,105,109,112,111,114,116,108,105,98,46,95, - 98,111,111,116,115,116,114,97,112,62,117,8,0,0,0,95, - 95,101,120,105,116,95,95,168,5,0,0,115,2,0,0,0, - 0,2,117,27,0,0,0,95,73,109,112,111,114,116,76,111, - 99,107,67,111,110,116,101,120,116,46,95,95,101,120,105,116, - 95,95,78,40,6,0,0,0,117,8,0,0,0,95,95,110, - 97,109,101,95,95,117,10,0,0,0,95,95,109,111,100,117, - 108,101,95,95,117,12,0,0,0,95,95,113,117,97,108,110, - 97,109,101,95,95,117,7,0,0,0,95,95,100,111,99,95, - 95,117,9,0,0,0,95,95,101,110,116,101,114,95,95,117, - 8,0,0,0,95,95,101,120,105,116,95,95,40,1,0,0, - 0,117,10,0,0,0,95,95,108,111,99,97,108,115,95,95, - 40,0,0,0,0,40,0,0,0,0,117,29,0,0,0,60, - 102,114,111,122,101,110,32,105,109,112,111,114,116,108,105,98, - 46,95,98,111,111,116,115,116,114,97,112,62,117,18,0,0, - 0,95,73,109,112,111,114,116,76,111,99,107,67,111,110,116, - 101,120,116,160,5,0,0,115,6,0,0,0,16,2,6,2, - 12,4,117,18,0,0,0,95,73,109,112,111,114,116,76,111, - 99,107,67,111,110,116,101,120,116,99,3,0,0,0,0,0, - 0,0,5,0,0,0,4,0,0,0,67,0,0,0,115,91, - 0,0,0,124,1,0,106,0,0,100,1,0,124,2,0,100, - 2,0,24,131,2,0,125,3,0,116,1,0,124,3,0,131, - 1,0,124,2,0,107,0,0,114,55,0,116,2,0,100,3, - 0,131,1,0,130,1,0,110,0,0,124,3,0,100,4,0, - 25,125,4,0,124,0,0,114,87,0,100,5,0,106,3,0, - 124,4,0,124,0,0,131,2,0,83,124,4,0,83,40,6, - 0,0,0,117,50,0,0,0,82,101,115,111,108,118,101,32, - 97,32,114,101,108,97,116,105,118,101,32,109,111,100,117,108, - 101,32,110,97,109,101,32,116,111,32,97,110,32,97,98,115, - 111,108,117,116,101,32,111,110,101,46,117,1,0,0,0,46, - 105,1,0,0,0,117,50,0,0,0,97,116,116,101,109,112, - 116,101,100,32,114,101,108,97,116,105,118,101,32,105,109,112, - 111,114,116,32,98,101,121,111,110,100,32,116,111,112,45,108, - 101,118,101,108,32,112,97,99,107,97,103,101,105,0,0,0, - 0,117,5,0,0,0,123,125,46,123,125,40,4,0,0,0, - 117,6,0,0,0,114,115,112,108,105,116,117,3,0,0,0, - 108,101,110,117,10,0,0,0,86,97,108,117,101,69,114,114, - 111,114,117,6,0,0,0,102,111,114,109,97,116,40,5,0, - 0,0,117,4,0,0,0,110,97,109,101,117,7,0,0,0, - 112,97,99,107,97,103,101,117,5,0,0,0,108,101,118,101, - 108,117,4,0,0,0,98,105,116,115,117,4,0,0,0,98, - 97,115,101,40,0,0,0,0,40,0,0,0,0,117,29,0, - 0,0,60,102,114,111,122,101,110,32,105,109,112,111,114,116, - 108,105,98,46,95,98,111,111,116,115,116,114,97,112,62,117, - 13,0,0,0,95,114,101,115,111,108,118,101,95,110,97,109, - 101,173,5,0,0,115,10,0,0,0,0,2,22,1,18,1, - 15,1,10,1,117,13,0,0,0,95,114,101,115,111,108,118, - 101,95,110,97,109,101,99,2,0,0,0,0,0,0,0,4, - 0,0,0,11,0,0,0,67,0,0,0,115,138,0,0,0, - 116,0,0,106,1,0,115,28,0,116,2,0,106,3,0,100, - 1,0,116,4,0,131,2,0,1,110,0,0,120,103,0,116, - 0,0,106,1,0,68,93,88,0,125,2,0,116,5,0,131, - 0,0,143,23,0,1,124,2,0,106,6,0,124,0,0,124, - 1,0,131,2,0,125,3,0,87,100,2,0,81,88,124,3, - 0,100,2,0,107,9,0,114,38,0,124,0,0,116,0,0, - 106,8,0,107,7,0,114,109,0,124,3,0,83,116,0,0, - 106,8,0,124,0,0,25,106,9,0,83,113,38,0,113,38, - 0,87,100,2,0,83,100,2,0,83,40,3,0,0,0,117, - 23,0,0,0,70,105,110,100,32,97,32,109,111,100,117,108, - 101,39,115,32,108,111,97,100,101,114,46,117,22,0,0,0, - 115,121,115,46,109,101,116,97,95,112,97,116,104,32,105,115, - 32,101,109,112,116,121,78,40,10,0,0,0,117,3,0,0, - 0,115,121,115,117,9,0,0,0,109,101,116,97,95,112,97, - 116,104,117,9,0,0,0,95,119,97,114,110,105,110,103,115, - 117,4,0,0,0,119,97,114,110,117,13,0,0,0,73,109, - 112,111,114,116,87,97,114,110,105,110,103,117,18,0,0,0, - 95,73,109,112,111,114,116,76,111,99,107,67,111,110,116,101, - 120,116,117,11,0,0,0,102,105,110,100,95,109,111,100,117, - 108,101,117,4,0,0,0,78,111,110,101,117,7,0,0,0, - 109,111,100,117,108,101,115,117,10,0,0,0,95,95,108,111, - 97,100,101,114,95,95,40,4,0,0,0,117,4,0,0,0, - 110,97,109,101,117,4,0,0,0,112,97,116,104,117,6,0, - 0,0,102,105,110,100,101,114,117,6,0,0,0,108,111,97, + 111,116,115,116,114,97,112,62,117,10,0,0,0,105,115,95, + 112,97,99,107,97,103,101,120,4,0,0,115,6,0,0,0, + 0,2,19,1,18,1,117,30,0,0,0,69,120,116,101,110, + 115,105,111,110,70,105,108,101,76,111,97,100,101,114,46,105, + 115,95,112,97,99,107,97,103,101,99,2,0,0,0,0,0, + 0,0,2,0,0,0,1,0,0,0,67,0,0,0,115,4, + 0,0,0,100,1,0,83,40,2,0,0,0,117,63,0,0, + 0,82,101,116,117,114,110,32,78,111,110,101,32,97,115,32, + 97,110,32,101,120,116,101,110,115,105,111,110,32,109,111,100, + 117,108,101,32,99,97,110,110,111,116,32,99,114,101,97,116, + 101,32,97,32,99,111,100,101,32,111,98,106,101,99,116,46, + 78,40,1,0,0,0,117,4,0,0,0,78,111,110,101,40, + 2,0,0,0,117,4,0,0,0,115,101,108,102,117,8,0, + 0,0,102,117,108,108,110,97,109,101,40,0,0,0,0,40, + 0,0,0,0,117,29,0,0,0,60,102,114,111,122,101,110, + 32,105,109,112,111,114,116,108,105,98,46,95,98,111,111,116, + 115,116,114,97,112,62,117,8,0,0,0,103,101,116,95,99, + 111,100,101,126,4,0,0,115,2,0,0,0,0,2,117,28, + 0,0,0,69,120,116,101,110,115,105,111,110,70,105,108,101, + 76,111,97,100,101,114,46,103,101,116,95,99,111,100,101,99, + 2,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0, + 67,0,0,0,115,4,0,0,0,100,1,0,83,40,2,0, + 0,0,117,53,0,0,0,82,101,116,117,114,110,32,78,111, + 110,101,32,97,115,32,101,120,116,101,110,115,105,111,110,32, + 109,111,100,117,108,101,115,32,104,97,118,101,32,110,111,32, + 115,111,117,114,99,101,32,99,111,100,101,46,78,40,1,0, + 0,0,117,4,0,0,0,78,111,110,101,40,2,0,0,0, + 117,4,0,0,0,115,101,108,102,117,8,0,0,0,102,117, + 108,108,110,97,109,101,40,0,0,0,0,40,0,0,0,0, + 117,29,0,0,0,60,102,114,111,122,101,110,32,105,109,112, + 111,114,116,108,105,98,46,95,98,111,111,116,115,116,114,97, + 112,62,117,10,0,0,0,103,101,116,95,115,111,117,114,99, + 101,130,4,0,0,115,2,0,0,0,0,2,117,30,0,0, + 0,69,120,116,101,110,115,105,111,110,70,105,108,101,76,111, + 97,100,101,114,46,103,101,116,95,115,111,117,114,99,101,78, + 40,12,0,0,0,117,8,0,0,0,95,95,110,97,109,101, + 95,95,117,10,0,0,0,95,95,109,111,100,117,108,101,95, + 95,117,12,0,0,0,95,95,113,117,97,108,110,97,109,101, + 95,95,117,7,0,0,0,95,95,100,111,99,95,95,117,8, + 0,0,0,95,95,105,110,105,116,95,95,117,11,0,0,0, + 95,99,104,101,99,107,95,110,97,109,101,117,11,0,0,0, + 115,101,116,95,112,97,99,107,97,103,101,117,10,0,0,0, + 115,101,116,95,108,111,97,100,101,114,117,11,0,0,0,108, + 111,97,100,95,109,111,100,117,108,101,117,10,0,0,0,105, + 115,95,112,97,99,107,97,103,101,117,8,0,0,0,103,101, + 116,95,99,111,100,101,117,10,0,0,0,103,101,116,95,115, + 111,117,114,99,101,40,1,0,0,0,117,10,0,0,0,95, + 95,108,111,99,97,108,115,95,95,40,0,0,0,0,40,0, + 0,0,0,117,29,0,0,0,60,102,114,111,122,101,110,32, + 105,109,112,111,114,116,108,105,98,46,95,98,111,111,116,115, + 116,114,97,112,62,117,19,0,0,0,69,120,116,101,110,115, + 105,111,110,70,105,108,101,76,111,97,100,101,114,90,4,0, + 0,115,16,0,0,0,16,6,6,2,12,4,3,1,3,1, + 24,16,12,6,12,4,117,19,0,0,0,69,120,116,101,110, + 115,105,111,110,70,105,108,101,76,111,97,100,101,114,99,1, + 0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,66, + 0,0,0,115,134,0,0,0,124,0,0,69,101,0,0,90, + 1,0,100,0,0,90,2,0,100,1,0,90,3,0,100,2, + 0,100,3,0,132,0,0,90,4,0,100,4,0,100,5,0, + 132,0,0,90,5,0,100,6,0,100,7,0,132,0,0,90, + 6,0,100,8,0,100,9,0,132,0,0,90,7,0,100,10, + 0,100,11,0,132,0,0,90,8,0,100,12,0,100,13,0, + 132,0,0,90,9,0,100,14,0,100,15,0,132,0,0,90, + 10,0,100,16,0,100,17,0,132,0,0,90,11,0,100,18, + 0,100,19,0,132,0,0,90,12,0,100,20,0,83,40,21, + 0,0,0,117,14,0,0,0,95,78,97,109,101,115,112,97, + 99,101,80,97,116,104,117,37,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,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,4,0,0,0,2,0,0, + 0,67,0,0,0,115,52,0,0,0,124,1,0,124,0,0, + 95,0,0,124,2,0,124,0,0,95,1,0,116,2,0,124, + 0,0,106,3,0,131,0,0,131,1,0,124,0,0,95,4, + 0,124,3,0,124,0,0,95,5,0,100,0,0,83,40,1, + 0,0,0,78,40,6,0,0,0,117,5,0,0,0,95,110, + 97,109,101,117,5,0,0,0,95,112,97,116,104,117,5,0, + 0,0,116,117,112,108,101,117,16,0,0,0,95,103,101,116, + 95,112,97,114,101,110,116,95,112,97,116,104,117,17,0,0, + 0,95,108,97,115,116,95,112,97,114,101,110,116,95,112,97, + 116,104,117,12,0,0,0,95,112,97,116,104,95,102,105,110, + 100,101,114,40,4,0,0,0,117,4,0,0,0,115,101,108, + 102,117,4,0,0,0,110,97,109,101,117,4,0,0,0,112, + 97,116,104,117,11,0,0,0,112,97,116,104,95,102,105,110, 100,101,114,40,0,0,0,0,40,0,0,0,0,117,29,0, 0,0,60,102,114,111,122,101,110,32,105,109,112,111,114,116, 108,105,98,46,95,98,111,111,116,115,116,114,97,112,62,117, - 12,0,0,0,95,102,105,110,100,95,109,111,100,117,108,101, - 182,5,0,0,115,20,0,0,0,0,2,9,1,19,1,16, - 1,10,1,24,1,12,2,15,1,4,2,21,2,117,12,0, - 0,0,95,102,105,110,100,95,109,111,100,117,108,101,99,3, - 0,0,0,0,0,0,0,4,0,0,0,4,0,0,0,67, - 0,0,0,115,194,0,0,0,116,0,0,124,0,0,116,1, - 0,131,2,0,115,45,0,116,2,0,100,1,0,106,3,0, - 116,4,0,124,0,0,131,1,0,131,1,0,131,1,0,130, - 1,0,110,0,0,124,2,0,100,2,0,107,0,0,114,72, - 0,116,5,0,100,3,0,131,1,0,130,1,0,110,0,0, - 124,1,0,114,156,0,116,0,0,124,1,0,116,1,0,131, - 2,0,115,108,0,116,2,0,100,4,0,131,1,0,130,1, - 0,113,156,0,124,1,0,116,6,0,106,7,0,107,7,0, - 114,156,0,100,5,0,125,3,0,116,8,0,124,3,0,106, - 3,0,124,1,0,131,1,0,131,1,0,130,1,0,113,156, - 0,110,0,0,124,0,0,12,114,190,0,124,2,0,100,2, - 0,107,2,0,114,190,0,116,5,0,100,6,0,131,1,0, - 130,1,0,110,0,0,100,7,0,83,40,8,0,0,0,117, - 28,0,0,0,86,101,114,105,102,121,32,97,114,103,117,109, - 101,110,116,115,32,97,114,101,32,34,115,97,110,101,34,46, - 117,31,0,0,0,109,111,100,117,108,101,32,110,97,109,101, - 32,109,117,115,116,32,98,101,32,115,116,114,44,32,110,111, - 116,32,123,125,105,0,0,0,0,117,18,0,0,0,108,101, - 118,101,108,32,109,117,115,116,32,98,101,32,62,61,32,48, - 117,31,0,0,0,95,95,112,97,99,107,97,103,101,95,95, - 32,110,111,116,32,115,101,116,32,116,111,32,97,32,115,116, - 114,105,110,103,117,61,0,0,0,80,97,114,101,110,116,32, - 109,111,100,117,108,101,32,123,33,114,125,32,110,111,116,32, - 108,111,97,100,101,100,44,32,99,97,110,110,111,116,32,112, - 101,114,102,111,114,109,32,114,101,108,97,116,105,118,101,32, - 105,109,112,111,114,116,117,17,0,0,0,69,109,112,116,121, - 32,109,111,100,117,108,101,32,110,97,109,101,78,40,9,0, - 0,0,117,10,0,0,0,105,115,105,110,115,116,97,110,99, - 101,117,3,0,0,0,115,116,114,117,9,0,0,0,84,121, - 112,101,69,114,114,111,114,117,6,0,0,0,102,111,114,109, - 97,116,117,4,0,0,0,116,121,112,101,117,10,0,0,0, - 86,97,108,117,101,69,114,114,111,114,117,3,0,0,0,115, - 121,115,117,7,0,0,0,109,111,100,117,108,101,115,117,11, - 0,0,0,83,121,115,116,101,109,69,114,114,111,114,40,4, - 0,0,0,117,4,0,0,0,110,97,109,101,117,7,0,0, - 0,112,97,99,107,97,103,101,117,5,0,0,0,108,101,118, - 101,108,117,3,0,0,0,109,115,103,40,0,0,0,0,40, - 0,0,0,0,117,29,0,0,0,60,102,114,111,122,101,110, - 32,105,109,112,111,114,116,108,105,98,46,95,98,111,111,116, - 115,116,114,97,112,62,117,13,0,0,0,95,115,97,110,105, - 116,121,95,99,104,101,99,107,199,5,0,0,115,24,0,0, - 0,0,2,15,1,30,1,12,1,15,1,6,1,15,1,15, - 1,15,1,6,2,27,1,19,1,117,13,0,0,0,95,115, - 97,110,105,116,121,95,99,104,101,99,107,117,20,0,0,0, - 78,111,32,109,111,100,117,108,101,32,110,97,109,101,100,32, - 123,33,114,125,99,2,0,0,0,0,0,0,0,9,0,0, - 0,27,0,0,0,67,0,0,0,115,12,2,0,0,100,0, - 0,125,2,0,124,0,0,106,1,0,100,1,0,131,1,0, - 100,2,0,25,125,3,0,124,3,0,114,178,0,124,3,0, - 116,2,0,106,3,0,107,7,0,114,62,0,116,4,0,124, - 1,0,124,3,0,131,2,0,1,110,0,0,124,0,0,116, - 2,0,106,3,0,107,6,0,114,88,0,116,2,0,106,3, - 0,124,0,0,25,83,116,2,0,106,3,0,124,3,0,25, - 125,4,0,121,13,0,124,4,0,106,5,0,125,2,0,87, - 113,178,0,4,116,6,0,107,10,0,114,174,0,1,1,1, - 116,7,0,100,3,0,23,106,8,0,124,0,0,124,3,0, - 131,2,0,125,5,0,116,9,0,124,5,0,100,4,0,124, - 0,0,131,1,1,130,1,0,89,113,178,0,88,110,0,0, - 116,10,0,124,0,0,124,2,0,131,2,0,125,6,0,124, - 6,0,100,0,0,107,8,0,114,250,0,116,9,0,116,7, - 0,106,8,0,124,0,0,131,1,0,100,4,0,124,0,0, - 131,1,1,125,7,0,100,10,0,124,7,0,95,12,0,124, - 7,0,130,1,0,110,47,0,124,0,0,116,2,0,106,3, - 0,107,7,0,114,41,1,124,6,0,106,13,0,124,0,0, - 131,1,0,1,116,14,0,100,5,0,124,0,0,124,6,0, - 131,3,0,1,110,0,0,116,2,0,106,3,0,124,0,0, - 25,125,8,0,124,3,0,114,105,1,116,2,0,106,3,0, - 124,3,0,25,125,4,0,116,15,0,124,4,0,124,0,0, - 106,1,0,100,1,0,131,1,0,100,6,0,25,124,8,0, - 131,3,0,1,110,0,0,116,16,0,124,8,0,100,7,0, - 100,0,0,131,3,0,100,0,0,107,8,0,114,212,1,121, - 59,0,124,8,0,106,17,0,124,8,0,95,18,0,116,19, - 0,124,8,0,100,8,0,131,2,0,115,187,1,124,8,0, - 106,18,0,106,1,0,100,1,0,131,1,0,100,2,0,25, - 124,8,0,95,18,0,110,0,0,87,113,212,1,4,116,6, - 0,107,10,0,114,208,1,1,1,1,89,113,212,1,88,110, - 0,0,116,19,0,124,8,0,100,9,0,131,2,0,115,8, - 2,121,13,0,124,6,0,124,8,0,95,20,0,87,113,8, - 2,4,116,6,0,107,10,0,114,4,2,1,1,1,89,113, - 8,2,88,110,0,0,124,8,0,83,40,11,0,0,0,78, - 117,1,0,0,0,46,105,0,0,0,0,117,21,0,0,0, - 59,32,123,125,32,105,115,32,110,111,116,32,97,32,112,97, - 99,107,97,103,101,117,4,0,0,0,110,97,109,101,117,18, - 0,0,0,105,109,112,111,114,116,32,123,33,114,125,32,35, - 32,123,33,114,125,105,2,0,0,0,117,11,0,0,0,95, - 95,112,97,99,107,97,103,101,95,95,117,8,0,0,0,95, - 95,112,97,116,104,95,95,117,10,0,0,0,95,95,108,111, - 97,100,101,114,95,95,84,40,21,0,0,0,117,4,0,0, - 0,78,111,110,101,117,10,0,0,0,114,112,97,114,116,105, - 116,105,111,110,117,3,0,0,0,115,121,115,117,7,0,0, - 0,109,111,100,117,108,101,115,117,25,0,0,0,95,99,97, - 108,108,95,119,105,116,104,95,102,114,97,109,101,115,95,114, - 101,109,111,118,101,100,117,8,0,0,0,95,95,112,97,116, - 104,95,95,117,14,0,0,0,65,116,116,114,105,98,117,116, - 101,69,114,114,111,114,117,8,0,0,0,95,69,82,82,95, - 77,83,71,117,6,0,0,0,102,111,114,109,97,116,117,11, - 0,0,0,73,109,112,111,114,116,69,114,114,111,114,117,12, - 0,0,0,95,102,105,110,100,95,109,111,100,117,108,101,117, - 4,0,0,0,84,114,117,101,117,10,0,0,0,95,110,111, - 116,95,102,111,117,110,100,117,11,0,0,0,108,111,97,100, - 95,109,111,100,117,108,101,117,16,0,0,0,95,118,101,114, - 98,111,115,101,95,109,101,115,115,97,103,101,117,7,0,0, - 0,115,101,116,97,116,116,114,117,7,0,0,0,103,101,116, - 97,116,116,114,117,8,0,0,0,95,95,110,97,109,101,95, - 95,117,11,0,0,0,95,95,112,97,99,107,97,103,101,95, - 95,117,7,0,0,0,104,97,115,97,116,116,114,117,10,0, - 0,0,95,95,108,111,97,100,101,114,95,95,40,9,0,0, - 0,117,4,0,0,0,110,97,109,101,117,7,0,0,0,105, - 109,112,111,114,116,95,117,4,0,0,0,112,97,116,104,117, - 6,0,0,0,112,97,114,101,110,116,117,13,0,0,0,112, - 97,114,101,110,116,95,109,111,100,117,108,101,117,3,0,0, - 0,109,115,103,117,6,0,0,0,108,111,97,100,101,114,117, - 3,0,0,0,101,120,99,117,6,0,0,0,109,111,100,117, - 108,101,40,0,0,0,0,40,0,0,0,0,117,29,0,0, - 0,60,102,114,111,122,101,110,32,105,109,112,111,114,116,108, - 105,98,46,95,98,111,111,116,115,116,114,97,112,62,117,23, - 0,0,0,95,102,105,110,100,95,97,110,100,95,108,111,97, - 100,95,117,110,108,111,99,107,101,100,218,5,0,0,115,76, - 0,0,0,0,1,6,1,19,1,6,1,15,1,16,2,15, - 1,11,2,13,1,3,1,13,1,13,1,22,1,26,1,15, - 1,12,1,27,3,9,1,9,1,15,2,13,1,19,2,13, - 1,6,2,13,1,32,2,24,1,3,1,12,1,15,1,32, - 1,13,1,8,2,15,1,3,1,13,1,13,1,8,1,117, - 23,0,0,0,95,102,105,110,100,95,97,110,100,95,108,111, - 97,100,95,117,110,108,111,99,107,101,100,99,2,0,0,0, - 0,0,0,0,3,0,0,0,18,0,0,0,67,0,0,0, - 115,75,0,0,0,122,16,0,116,0,0,124,0,0,131,1, - 0,125,2,0,87,100,1,0,116,1,0,106,2,0,131,0, - 0,1,88,124,2,0,106,3,0,131,0,0,1,122,17,0, - 116,4,0,124,0,0,124,1,0,131,2,0,83,87,100,1, - 0,124,2,0,106,5,0,131,0,0,1,88,100,1,0,83, - 40,2,0,0,0,117,54,0,0,0,70,105,110,100,32,97, - 110,100,32,108,111,97,100,32,116,104,101,32,109,111,100,117, - 108,101,44,32,97,110,100,32,114,101,108,101,97,115,101,32, - 116,104,101,32,105,109,112,111,114,116,32,108,111,99,107,46, - 78,40,6,0,0,0,117,16,0,0,0,95,103,101,116,95, - 109,111,100,117,108,101,95,108,111,99,107,117,4,0,0,0, - 95,105,109,112,117,12,0,0,0,114,101,108,101,97,115,101, - 95,108,111,99,107,117,7,0,0,0,97,99,113,117,105,114, - 101,117,23,0,0,0,95,102,105,110,100,95,97,110,100,95, - 108,111,97,100,95,117,110,108,111,99,107,101,100,117,7,0, - 0,0,114,101,108,101,97,115,101,40,3,0,0,0,117,4, - 0,0,0,110,97,109,101,117,7,0,0,0,105,109,112,111, - 114,116,95,117,4,0,0,0,108,111,99,107,40,0,0,0, - 0,40,0,0,0,0,117,29,0,0,0,60,102,114,111,122, - 101,110,32,105,109,112,111,114,116,108,105,98,46,95,98,111, - 111,116,115,116,114,97,112,62,117,14,0,0,0,95,102,105, - 110,100,95,97,110,100,95,108,111,97,100,12,6,0,0,115, - 14,0,0,0,0,2,3,1,16,2,11,1,10,1,3,1, - 17,2,117,14,0,0,0,95,102,105,110,100,95,97,110,100, - 95,108,111,97,100,99,3,0,0,0,0,0,0,0,5,0, - 0,0,4,0,0,0,67,0,0,0,115,172,0,0,0,116, - 0,0,124,0,0,124,1,0,124,2,0,131,3,0,1,124, - 2,0,100,1,0,107,4,0,114,49,0,116,1,0,124,0, - 0,124,1,0,124,2,0,131,3,0,125,0,0,110,0,0, - 116,2,0,106,3,0,131,0,0,1,124,0,0,116,4,0, - 106,5,0,107,7,0,114,87,0,116,6,0,124,0,0,116, - 7,0,131,2,0,83,116,4,0,106,5,0,124,0,0,25, - 125,3,0,124,3,0,100,4,0,107,8,0,114,158,0,116, - 2,0,106,9,0,131,0,0,1,100,2,0,106,10,0,124, - 0,0,131,1,0,125,4,0,116,11,0,124,4,0,100,3, - 0,124,0,0,131,1,1,130,1,0,110,0,0,116,12,0, - 124,0,0,131,1,0,1,124,3,0,83,40,5,0,0,0, - 117,50,1,0,0,73,109,112,111,114,116,32,97,110,100,32, - 114,101,116,117,114,110,32,116,104,101,32,109,111,100,117,108, - 101,32,98,97,115,101,100,32,111,110,32,105,116,115,32,110, - 97,109,101,44,32,116,104,101,32,112,97,99,107,97,103,101, - 32,116,104,101,32,99,97,108,108,32,105,115,10,32,32,32, - 32,98,101,105,110,103,32,109,97,100,101,32,102,114,111,109, - 44,32,97,110,100,32,116,104,101,32,108,101,118,101,108,32, - 97,100,106,117,115,116,109,101,110,116,46,10,10,32,32,32, - 32,84,104,105,115,32,102,117,110,99,116,105,111,110,32,114, - 101,112,114,101,115,101,110,116,115,32,116,104,101,32,103,114, - 101,97,116,101,115,116,32,99,111,109,109,111,110,32,100,101, - 110,111,109,105,110,97,116,111,114,32,111,102,32,102,117,110, - 99,116,105,111,110,97,108,105,116,121,10,32,32,32,32,98, - 101,116,119,101,101,110,32,105,109,112,111,114,116,95,109,111, - 100,117,108,101,32,97,110,100,32,95,95,105,109,112,111,114, - 116,95,95,46,32,84,104,105,115,32,105,110,99,108,117,100, - 101,115,32,115,101,116,116,105,110,103,32,95,95,112,97,99, - 107,97,103,101,95,95,32,105,102,10,32,32,32,32,116,104, - 101,32,108,111,97,100,101,114,32,100,105,100,32,110,111,116, - 46,10,10,32,32,32,32,105,0,0,0,0,117,40,0,0, - 0,105,109,112,111,114,116,32,111,102,32,123,125,32,104,97, - 108,116,101,100,59,32,78,111,110,101,32,105,110,32,115,121, - 115,46,109,111,100,117,108,101,115,117,4,0,0,0,110,97, - 109,101,78,40,13,0,0,0,117,13,0,0,0,95,115,97, - 110,105,116,121,95,99,104,101,99,107,117,13,0,0,0,95, - 114,101,115,111,108,118,101,95,110,97,109,101,117,4,0,0, - 0,95,105,109,112,117,12,0,0,0,97,99,113,117,105,114, - 101,95,108,111,99,107,117,3,0,0,0,115,121,115,117,7, - 0,0,0,109,111,100,117,108,101,115,117,14,0,0,0,95, - 102,105,110,100,95,97,110,100,95,108,111,97,100,117,11,0, - 0,0,95,103,99,100,95,105,109,112,111,114,116,117,4,0, - 0,0,78,111,110,101,117,12,0,0,0,114,101,108,101,97, - 115,101,95,108,111,99,107,117,6,0,0,0,102,111,114,109, - 97,116,117,11,0,0,0,73,109,112,111,114,116,69,114,114, - 111,114,117,19,0,0,0,95,108,111,99,107,95,117,110,108, - 111,99,107,95,109,111,100,117,108,101,40,5,0,0,0,117, - 4,0,0,0,110,97,109,101,117,7,0,0,0,112,97,99, - 107,97,103,101,117,5,0,0,0,108,101,118,101,108,117,6, - 0,0,0,109,111,100,117,108,101,117,7,0,0,0,109,101, - 115,115,97,103,101,40,0,0,0,0,40,0,0,0,0,117, + 8,0,0,0,95,95,105,110,105,116,95,95,142,4,0,0, + 115,8,0,0,0,0,1,9,1,9,1,21,1,117,23,0, + 0,0,95,78,97,109,101,115,112,97,99,101,80,97,116,104, + 46,95,95,105,110,105,116,95,95,99,1,0,0,0,0,0, + 0,0,4,0,0,0,3,0,0,0,67,0,0,0,115,53, + 0,0,0,124,0,0,106,0,0,106,1,0,100,1,0,131, + 1,0,92,3,0,125,1,0,125,2,0,125,3,0,124,2, + 0,100,2,0,107,2,0,114,43,0,100,6,0,83,124,1, + 0,100,5,0,102,2,0,83,40,7,0,0,0,117,62,0, + 0,0,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, + 117,1,0,0,0,46,117,0,0,0,0,117,3,0,0,0, + 115,121,115,117,4,0,0,0,112,97,116,104,117,8,0,0, + 0,95,95,112,97,116,104,95,95,40,2,0,0,0,117,3, + 0,0,0,115,121,115,117,4,0,0,0,112,97,116,104,40, + 2,0,0,0,117,5,0,0,0,95,110,97,109,101,117,10, + 0,0,0,114,112,97,114,116,105,116,105,111,110,40,4,0, + 0,0,117,4,0,0,0,115,101,108,102,117,6,0,0,0, + 112,97,114,101,110,116,117,3,0,0,0,100,111,116,117,2, + 0,0,0,109,101,40,0,0,0,0,40,0,0,0,0,117, 29,0,0,0,60,102,114,111,122,101,110,32,105,109,112,111, 114,116,108,105,98,46,95,98,111,111,116,115,116,114,97,112, - 62,117,11,0,0,0,95,103,99,100,95,105,109,112,111,114, - 116,25,6,0,0,115,28,0,0,0,0,9,16,1,12,1, - 21,1,10,1,15,1,13,1,13,1,12,1,10,1,6,1, - 9,1,21,1,10,1,117,11,0,0,0,95,103,99,100,95, - 105,109,112,111,114,116,99,3,0,0,0,0,0,0,0,5, - 0,0,0,17,0,0,0,67,0,0,0,115,233,0,0,0, - 116,0,0,124,0,0,100,1,0,131,2,0,114,229,0,100, - 2,0,124,1,0,107,6,0,114,89,0,116,1,0,124,1, - 0,131,1,0,125,1,0,124,1,0,106,2,0,100,2,0, - 131,1,0,1,116,0,0,124,0,0,100,3,0,131,2,0, - 114,89,0,124,1,0,106,3,0,124,0,0,106,4,0,131, - 1,0,1,113,89,0,110,0,0,120,137,0,124,1,0,68, - 93,126,0,125,3,0,116,0,0,124,0,0,124,3,0,131, - 2,0,115,96,0,121,32,0,116,5,0,124,2,0,100,4, - 0,106,6,0,124,0,0,106,7,0,124,3,0,131,2,0, - 131,2,0,1,87,113,222,0,4,116,8,0,107,10,0,114, - 218,0,1,125,4,0,1,122,35,0,116,0,0,124,4,0, - 100,5,0,131,2,0,114,197,0,124,4,0,106,9,0,114, - 197,0,110,3,0,130,0,0,87,89,100,6,0,100,6,0, - 125,4,0,126,4,0,88,113,222,0,88,113,96,0,113,96, - 0,87,110,0,0,124,0,0,83,40,7,0,0,0,117,238, - 0,0,0,70,105,103,117,114,101,32,111,117,116,32,119,104, - 97,116,32,95,95,105,109,112,111,114,116,95,95,32,115,104, - 111,117,108,100,32,114,101,116,117,114,110,46,10,10,32,32, - 32,32,84,104,101,32,105,109,112,111,114,116,95,32,112,97, - 114,97,109,101,116,101,114,32,105,115,32,97,32,99,97,108, - 108,97,98,108,101,32,119,104,105,99,104,32,116,97,107,101, - 115,32,116,104,101,32,110,97,109,101,32,111,102,32,109,111, - 100,117,108,101,32,116,111,10,32,32,32,32,105,109,112,111, - 114,116,46,32,73,116,32,105,115,32,114,101,113,117,105,114, - 101,100,32,116,111,32,100,101,99,111,117,112,108,101,32,116, - 104,101,32,102,117,110,99,116,105,111,110,32,102,114,111,109, - 32,97,115,115,117,109,105,110,103,32,105,109,112,111,114,116, - 108,105,98,39,115,10,32,32,32,32,105,109,112,111,114,116, - 32,105,109,112,108,101,109,101,110,116,97,116,105,111,110,32, - 105,115,32,100,101,115,105,114,101,100,46,10,10,32,32,32, - 32,117,8,0,0,0,95,95,112,97,116,104,95,95,117,1, - 0,0,0,42,117,7,0,0,0,95,95,97,108,108,95,95, - 117,5,0,0,0,123,125,46,123,125,117,10,0,0,0,95, - 110,111,116,95,102,111,117,110,100,78,40,10,0,0,0,117, - 7,0,0,0,104,97,115,97,116,116,114,117,4,0,0,0, - 108,105,115,116,117,6,0,0,0,114,101,109,111,118,101,117, - 6,0,0,0,101,120,116,101,110,100,117,7,0,0,0,95, - 95,97,108,108,95,95,117,25,0,0,0,95,99,97,108,108, - 95,119,105,116,104,95,102,114,97,109,101,115,95,114,101,109, - 111,118,101,100,117,6,0,0,0,102,111,114,109,97,116,117, - 8,0,0,0,95,95,110,97,109,101,95,95,117,11,0,0, - 0,73,109,112,111,114,116,69,114,114,111,114,117,10,0,0, - 0,95,110,111,116,95,102,111,117,110,100,40,5,0,0,0, - 117,6,0,0,0,109,111,100,117,108,101,117,8,0,0,0, - 102,114,111,109,108,105,115,116,117,7,0,0,0,105,109,112, - 111,114,116,95,117,1,0,0,0,120,117,3,0,0,0,101, - 120,99,40,0,0,0,0,40,0,0,0,0,117,29,0,0, - 0,60,102,114,111,122,101,110,32,105,109,112,111,114,116,108, - 105,98,46,95,98,111,111,116,115,116,114,97,112,62,117,16, - 0,0,0,95,104,97,110,100,108,101,95,102,114,111,109,108, - 105,115,116,49,6,0,0,115,32,0,0,0,0,10,15,1, - 12,1,12,1,13,1,15,1,22,1,13,1,15,1,3,1, - 6,1,26,1,18,6,24,1,3,2,32,1,117,16,0,0, - 0,95,104,97,110,100,108,101,95,102,114,111,109,108,105,115, - 116,99,1,0,0,0,0,0,0,0,2,0,0,0,2,0, - 0,0,67,0,0,0,115,78,0,0,0,124,0,0,106,0, - 0,100,1,0,131,1,0,125,1,0,124,1,0,100,6,0, - 107,8,0,114,74,0,124,0,0,100,2,0,25,125,1,0, - 100,3,0,124,0,0,107,7,0,114,74,0,124,1,0,106, - 2,0,100,4,0,131,1,0,100,5,0,25,125,1,0,113, - 74,0,110,0,0,124,1,0,83,40,7,0,0,0,117,167, - 0,0,0,67,97,108,99,117,108,97,116,101,32,119,104,97, - 116,32,95,95,112,97,99,107,97,103,101,95,95,32,115,104, - 111,117,108,100,32,98,101,46,10,10,32,32,32,32,95,95, - 112,97,99,107,97,103,101,95,95,32,105,115,32,110,111,116, - 32,103,117,97,114,97,110,116,101,101,100,32,116,111,32,98, - 101,32,100,101,102,105,110,101,100,32,111,114,32,99,111,117, - 108,100,32,98,101,32,115,101,116,32,116,111,32,78,111,110, - 101,10,32,32,32,32,116,111,32,114,101,112,114,101,115,101, - 110,116,32,116,104,97,116,32,105,116,115,32,112,114,111,112, - 101,114,32,118,97,108,117,101,32,105,115,32,117,110,107,110, - 111,119,110,46,10,10,32,32,32,32,117,11,0,0,0,95, - 95,112,97,99,107,97,103,101,95,95,117,8,0,0,0,95, - 95,110,97,109,101,95,95,117,8,0,0,0,95,95,112,97, - 116,104,95,95,117,1,0,0,0,46,105,0,0,0,0,78, - 40,3,0,0,0,117,3,0,0,0,103,101,116,117,4,0, - 0,0,78,111,110,101,117,10,0,0,0,114,112,97,114,116, - 105,116,105,111,110,40,2,0,0,0,117,7,0,0,0,103, - 108,111,98,97,108,115,117,7,0,0,0,112,97,99,107,97, - 103,101,40,0,0,0,0,40,0,0,0,0,117,29,0,0, - 0,60,102,114,111,122,101,110,32,105,109,112,111,114,116,108, - 105,98,46,95,98,111,111,116,115,116,114,97,112,62,117,17, - 0,0,0,95,99,97,108,99,95,95,95,112,97,99,107,97, - 103,101,95,95,83,6,0,0,115,12,0,0,0,0,7,15, - 1,12,1,10,1,12,1,25,1,117,17,0,0,0,95,99, - 97,108,99,95,95,95,112,97,99,107,97,103,101,95,95,99, - 0,0,0,0,0,0,0,0,3,0,0,0,3,0,0,0, - 67,0,0,0,115,55,0,0,0,116,0,0,116,1,0,106, - 2,0,131,0,0,102,2,0,125,0,0,116,3,0,116,4, - 0,102,2,0,125,1,0,116,5,0,116,6,0,102,2,0, - 125,2,0,124,0,0,124,1,0,124,2,0,103,3,0,83, - 40,1,0,0,0,117,111,0,0,0,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,44,32,97,108,108,111,119,95,112,97,99,107,97,103, - 101,115,41,46,10,32,32,32,32,40,7,0,0,0,117,19, - 0,0,0,69,120,116,101,110,115,105,111,110,70,105,108,101, - 76,111,97,100,101,114,117,4,0,0,0,95,105,109,112,117, - 18,0,0,0,101,120,116,101,110,115,105,111,110,95,115,117, - 102,102,105,120,101,115,117,16,0,0,0,83,111,117,114,99, - 101,70,105,108,101,76,111,97,100,101,114,117,15,0,0,0, - 83,79,85,82,67,69,95,83,85,70,70,73,88,69,83,117, - 20,0,0,0,83,111,117,114,99,101,108,101,115,115,70,105, - 108,101,76,111,97,100,101,114,117,17,0,0,0,66,89,84, - 69,67,79,68,69,95,83,85,70,70,73,88,69,83,40,3, - 0,0,0,117,10,0,0,0,101,120,116,101,110,115,105,111, - 110,115,117,6,0,0,0,115,111,117,114,99,101,117,8,0, - 0,0,98,121,116,101,99,111,100,101,40,0,0,0,0,40, - 0,0,0,0,117,29,0,0,0,60,102,114,111,122,101,110, - 32,105,109,112,111,114,116,108,105,98,46,95,98,111,111,116, - 115,116,114,97,112,62,117,27,0,0,0,95,103,101,116,95, - 115,117,112,112,111,114,116,101,100,95,102,105,108,101,95,108, - 111,97,100,101,114,115,98,6,0,0,115,8,0,0,0,0, - 5,18,1,12,1,12,1,117,27,0,0,0,95,103,101,116, - 95,115,117,112,112,111,114,116,101,100,95,102,105,108,101,95, - 108,111,97,100,101,114,115,99,5,0,0,0,0,0,0,0, - 9,0,0,0,5,0,0,0,67,0,0,0,115,227,0,0, - 0,124,4,0,100,1,0,107,2,0,114,27,0,116,0,0, - 124,0,0,131,1,0,125,5,0,110,54,0,124,1,0,100, - 3,0,107,9,0,114,45,0,124,1,0,110,3,0,105,0, - 0,125,6,0,116,2,0,124,6,0,131,1,0,125,7,0, - 116,0,0,124,0,0,124,7,0,124,4,0,131,3,0,125, - 5,0,124,3,0,115,207,0,124,4,0,100,1,0,107,2, - 0,114,122,0,116,0,0,124,0,0,106,3,0,100,2,0, - 131,1,0,100,1,0,25,131,1,0,83,124,0,0,115,132, - 0,124,5,0,83,116,4,0,124,0,0,131,1,0,116,4, - 0,124,0,0,106,3,0,100,2,0,131,1,0,100,1,0, - 25,131,1,0,24,125,8,0,116,5,0,106,6,0,124,5, - 0,106,7,0,100,3,0,116,4,0,124,5,0,106,7,0, - 131,1,0,124,8,0,24,133,2,0,25,25,83,110,16,0, - 116,8,0,124,5,0,124,3,0,116,0,0,131,3,0,83, - 100,3,0,83,40,4,0,0,0,117,214,1,0,0,73,109, - 112,111,114,116,32,97,32,109,111,100,117,108,101,46,10,10, - 32,32,32,32,84,104,101,32,39,103,108,111,98,97,108,115, - 39,32,97,114,103,117,109,101,110,116,32,105,115,32,117,115, - 101,100,32,116,111,32,105,110,102,101,114,32,119,104,101,114, - 101,32,116,104,101,32,105,109,112,111,114,116,32,105,115,32, - 111,99,99,117,114,105,110,103,32,102,114,111,109,10,32,32, - 32,32,116,111,32,104,97,110,100,108,101,32,114,101,108,97, - 116,105,118,101,32,105,109,112,111,114,116,115,46,32,84,104, - 101,32,39,108,111,99,97,108,115,39,32,97,114,103,117,109, - 101,110,116,32,105,115,32,105,103,110,111,114,101,100,46,32, - 84,104,101,10,32,32,32,32,39,102,114,111,109,108,105,115, - 116,39,32,97,114,103,117,109,101,110,116,32,115,112,101,99, - 105,102,105,101,115,32,119,104,97,116,32,115,104,111,117,108, - 100,32,101,120,105,115,116,32,97,115,32,97,116,116,114,105, - 98,117,116,101,115,32,111,110,32,116,104,101,32,109,111,100, - 117,108,101,10,32,32,32,32,98,101,105,110,103,32,105,109, - 112,111,114,116,101,100,32,40,101,46,103,46,32,96,96,102, - 114,111,109,32,109,111,100,117,108,101,32,105,109,112,111,114, - 116,32,60,102,114,111,109,108,105,115,116,62,96,96,41,46, - 32,32,84,104,101,32,39,108,101,118,101,108,39,10,32,32, - 32,32,97,114,103,117,109,101,110,116,32,114,101,112,114,101, - 115,101,110,116,115,32,116,104,101,32,112,97,99,107,97,103, - 101,32,108,111,99,97,116,105,111,110,32,116,111,32,105,109, - 112,111,114,116,32,102,114,111,109,32,105,110,32,97,32,114, - 101,108,97,116,105,118,101,10,32,32,32,32,105,109,112,111, - 114,116,32,40,101,46,103,46,32,96,96,102,114,111,109,32, - 46,46,112,107,103,32,105,109,112,111,114,116,32,109,111,100, - 96,96,32,119,111,117,108,100,32,104,97,118,101,32,97,32, - 39,108,101,118,101,108,39,32,111,102,32,50,41,46,10,10, - 32,32,32,32,105,0,0,0,0,117,1,0,0,0,46,78, - 40,9,0,0,0,117,11,0,0,0,95,103,99,100,95,105, - 109,112,111,114,116,117,4,0,0,0,78,111,110,101,117,17, - 0,0,0,95,99,97,108,99,95,95,95,112,97,99,107,97, - 103,101,95,95,117,9,0,0,0,112,97,114,116,105,116,105, - 111,110,117,3,0,0,0,108,101,110,117,3,0,0,0,115, - 121,115,117,7,0,0,0,109,111,100,117,108,101,115,117,8, - 0,0,0,95,95,110,97,109,101,95,95,117,16,0,0,0, - 95,104,97,110,100,108,101,95,102,114,111,109,108,105,115,116, - 40,9,0,0,0,117,4,0,0,0,110,97,109,101,117,7, - 0,0,0,103,108,111,98,97,108,115,117,6,0,0,0,108, - 111,99,97,108,115,117,8,0,0,0,102,114,111,109,108,105, - 115,116,117,5,0,0,0,108,101,118,101,108,117,6,0,0, - 0,109,111,100,117,108,101,117,8,0,0,0,103,108,111,98, - 97,108,115,95,117,7,0,0,0,112,97,99,107,97,103,101, - 117,7,0,0,0,99,117,116,95,111,102,102,40,0,0,0, + 62,117,23,0,0,0,95,102,105,110,100,95,112,97,114,101, + 110,116,95,112,97,116,104,95,110,97,109,101,115,148,4,0, + 0,115,8,0,0,0,0,2,27,1,12,2,4,3,117,38, + 0,0,0,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,3,0,0,0,3,0,0,0,67,0,0,0,115,38, + 0,0,0,124,0,0,106,0,0,131,0,0,92,2,0,125, + 1,0,125,2,0,116,1,0,116,2,0,106,3,0,124,1, + 0,25,124,2,0,131,2,0,83,40,1,0,0,0,78,40, + 4,0,0,0,117,23,0,0,0,95,102,105,110,100,95,112, + 97,114,101,110,116,95,112,97,116,104,95,110,97,109,101,115, + 117,7,0,0,0,103,101,116,97,116,116,114,117,3,0,0, + 0,115,121,115,117,7,0,0,0,109,111,100,117,108,101,115, + 40,3,0,0,0,117,4,0,0,0,115,101,108,102,117,18, + 0,0,0,112,97,114,101,110,116,95,109,111,100,117,108,101, + 95,110,97,109,101,117,14,0,0,0,112,97,116,104,95,97, + 116,116,114,95,110,97,109,101,40,0,0,0,0,40,0,0, + 0,0,117,29,0,0,0,60,102,114,111,122,101,110,32,105, + 109,112,111,114,116,108,105,98,46,95,98,111,111,116,115,116, + 114,97,112,62,117,16,0,0,0,95,103,101,116,95,112,97, + 114,101,110,116,95,112,97,116,104,158,4,0,0,115,4,0, + 0,0,0,1,18,1,117,31,0,0,0,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,4,0,0,0,3,0,0,0,67,0,0,0,115, + 103,0,0,0,116,0,0,124,0,0,106,1,0,131,0,0, + 131,1,0,125,1,0,124,1,0,124,0,0,106,2,0,107, + 3,0,114,96,0,124,0,0,106,3,0,124,0,0,106,4, + 0,124,1,0,131,2,0,92,2,0,125,2,0,125,3,0, + 124,2,0,100,0,0,107,8,0,114,84,0,124,3,0,124, + 0,0,95,6,0,110,0,0,124,1,0,124,0,0,95,2, + 0,110,0,0,124,0,0,106,6,0,83,40,1,0,0,0, + 78,40,7,0,0,0,117,5,0,0,0,116,117,112,108,101, + 117,16,0,0,0,95,103,101,116,95,112,97,114,101,110,116, + 95,112,97,116,104,117,17,0,0,0,95,108,97,115,116,95, + 112,97,114,101,110,116,95,112,97,116,104,117,12,0,0,0, + 95,112,97,116,104,95,102,105,110,100,101,114,117,5,0,0, + 0,95,110,97,109,101,117,4,0,0,0,78,111,110,101,117, + 5,0,0,0,95,112,97,116,104,40,4,0,0,0,117,4, + 0,0,0,115,101,108,102,117,11,0,0,0,112,97,114,101, + 110,116,95,112,97,116,104,117,6,0,0,0,108,111,97,100, + 101,114,117,8,0,0,0,110,101,119,95,112,97,116,104,40, + 0,0,0,0,40,0,0,0,0,117,29,0,0,0,60,102, + 114,111,122,101,110,32,105,109,112,111,114,116,108,105,98,46, + 95,98,111,111,116,115,116,114,97,112,62,117,12,0,0,0, + 95,114,101,99,97,108,99,117,108,97,116,101,162,4,0,0, + 115,14,0,0,0,0,2,18,1,15,1,27,3,12,1,12, + 1,12,1,117,27,0,0,0,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,1,0,0,0, + 2,0,0,0,67,0,0,0,115,16,0,0,0,116,0,0, + 124,0,0,106,1,0,131,0,0,131,1,0,83,40,1,0, + 0,0,78,40,2,0,0,0,117,4,0,0,0,105,116,101, + 114,117,12,0,0,0,95,114,101,99,97,108,99,117,108,97, + 116,101,40,1,0,0,0,117,4,0,0,0,115,101,108,102, + 40,0,0,0,0,40,0,0,0,0,117,29,0,0,0,60, + 102,114,111,122,101,110,32,105,109,112,111,114,116,108,105,98, + 46,95,98,111,111,116,115,116,114,97,112,62,117,8,0,0, + 0,95,95,105,116,101,114,95,95,174,4,0,0,115,2,0, + 0,0,0,1,117,23,0,0,0,95,78,97,109,101,115,112, + 97,99,101,80,97,116,104,46,95,95,105,116,101,114,95,95, + 99,1,0,0,0,0,0,0,0,1,0,0,0,2,0,0, + 0,67,0,0,0,115,16,0,0,0,116,0,0,124,0,0, + 106,1,0,131,0,0,131,1,0,83,40,1,0,0,0,78, + 40,2,0,0,0,117,3,0,0,0,108,101,110,117,12,0, + 0,0,95,114,101,99,97,108,99,117,108,97,116,101,40,1, + 0,0,0,117,4,0,0,0,115,101,108,102,40,0,0,0, 0,40,0,0,0,0,117,29,0,0,0,60,102,114,111,122, 101,110,32,105,109,112,111,114,116,108,105,98,46,95,98,111, - 111,116,115,116,114,97,112,62,117,10,0,0,0,95,95,105, - 109,112,111,114,116,95,95,109,6,0,0,115,26,0,0,0, - 0,11,12,1,15,2,24,1,12,1,18,1,6,3,12,1, - 23,1,6,1,4,2,35,1,40,2,117,10,0,0,0,95, - 95,105,109,112,111,114,116,95,95,99,2,0,0,0,0,0, - 0,0,14,0,0,0,13,0,0,0,67,0,0,0,115,169, - 2,0,0,124,1,0,97,0,0,124,0,0,97,1,0,120, - 47,0,116,0,0,116,1,0,102,2,0,68,93,33,0,125, - 2,0,116,2,0,124,2,0,100,1,0,131,2,0,115,25, - 0,116,3,0,124,2,0,95,4,0,113,25,0,113,25,0, - 87,116,1,0,106,5,0,116,6,0,25,125,3,0,120,76, - 0,100,28,0,68,93,68,0,125,4,0,124,4,0,116,1, - 0,106,5,0,107,7,0,114,121,0,116,3,0,106,7,0, - 124,4,0,131,1,0,125,5,0,110,13,0,116,1,0,106, - 5,0,124,4,0,25,125,5,0,116,8,0,124,3,0,124, - 4,0,124,5,0,131,3,0,1,113,82,0,87,100,6,0, - 100,7,0,103,1,0,102,2,0,100,8,0,100,9,0,100, - 7,0,103,2,0,102,2,0,100,10,0,100,9,0,100,7, - 0,103,2,0,102,2,0,102,3,0,125,6,0,120,189,0, - 124,6,0,68,93,169,0,92,2,0,125,7,0,125,8,0, - 116,9,0,100,11,0,100,12,0,132,0,0,124,8,0,68, - 131,1,0,131,1,0,115,252,0,116,10,0,130,1,0,124, - 8,0,100,13,0,25,125,9,0,124,7,0,116,1,0,106, - 5,0,107,6,0,114,38,1,116,1,0,106,5,0,124,7, - 0,25,125,10,0,80,113,209,0,121,60,0,116,3,0,106, - 7,0,124,7,0,131,1,0,125,10,0,124,7,0,100,10, - 0,107,2,0,114,96,1,100,14,0,116,1,0,106,11,0, - 107,6,0,114,96,1,124,8,0,100,15,0,25,125,9,0, - 110,0,0,80,87,113,209,0,4,116,12,0,107,10,0,114, - 121,1,1,1,1,119,209,0,89,113,209,0,88,113,209,0, - 87,116,12,0,100,16,0,131,1,0,130,1,0,121,19,0, - 116,3,0,106,7,0,100,17,0,131,1,0,125,11,0,87, - 110,24,0,4,116,12,0,107,10,0,114,183,1,1,1,1, - 100,27,0,125,11,0,89,110,1,0,88,116,3,0,106,7, - 0,100,18,0,131,1,0,125,12,0,124,7,0,100,8,0, - 107,2,0,114,245,1,116,3,0,106,7,0,100,19,0,131, - 1,0,125,13,0,116,8,0,124,3,0,100,20,0,124,13, - 0,131,3,0,1,110,0,0,116,8,0,124,3,0,100,21, - 0,124,10,0,131,3,0,1,116,8,0,124,3,0,100,17, - 0,124,11,0,131,3,0,1,116,8,0,124,3,0,100,18, - 0,124,12,0,131,3,0,1,116,8,0,124,3,0,100,22, - 0,124,9,0,131,3,0,1,116,8,0,124,3,0,100,23, - 0,116,14,0,124,8,0,131,1,0,131,3,0,1,116,8, - 0,124,3,0,100,24,0,116,15,0,131,0,0,131,3,0, - 1,116,16,0,106,17,0,116,0,0,106,18,0,131,0,0, - 131,1,0,1,124,7,0,100,8,0,107,2,0,114,165,2, - 116,19,0,106,20,0,100,25,0,131,1,0,1,100,26,0, - 116,16,0,107,6,0,114,165,2,100,29,0,116,22,0,95, - 23,0,113,165,2,110,0,0,100,27,0,83,40,30,0,0, - 0,117,250,0,0,0,83,101,116,117,112,32,105,109,112,111, - 114,116,108,105,98,32,98,121,32,105,109,112,111,114,116,105, - 110,103,32,110,101,101,100,101,100,32,98,117,105,108,116,45, - 105,110,32,109,111,100,117,108,101,115,32,97,110,100,32,105, - 110,106,101,99,116,105,110,103,32,116,104,101,109,10,32,32, - 32,32,105,110,116,111,32,116,104,101,32,103,108,111,98,97, - 108,32,110,97,109,101,115,112,97,99,101,46,10,10,32,32, - 32,32,65,115,32,115,121,115,32,105,115,32,110,101,101,100, - 101,100,32,102,111,114,32,115,121,115,46,109,111,100,117,108, - 101,115,32,97,99,99,101,115,115,32,97,110,100,32,95,105, - 109,112,32,105,115,32,110,101,101,100,101,100,32,116,111,32, - 108,111,97,100,32,98,117,105,108,116,45,105,110,10,32,32, - 32,32,109,111,100,117,108,101,115,44,32,116,104,111,115,101, - 32,116,119,111,32,109,111,100,117,108,101,115,32,109,117,115, - 116,32,98,101,32,101,120,112,108,105,99,105,116,108,121,32, - 112,97,115,115,101,100,32,105,110,46,10,10,32,32,32,32, - 117,10,0,0,0,95,95,108,111,97,100,101,114,95,95,117, - 3,0,0,0,95,105,111,117,9,0,0,0,95,119,97,114, - 110,105,110,103,115,117,8,0,0,0,98,117,105,108,116,105, - 110,115,117,7,0,0,0,109,97,114,115,104,97,108,117,5, - 0,0,0,112,111,115,105,120,117,1,0,0,0,47,117,2, - 0,0,0,110,116,117,1,0,0,0,92,117,3,0,0,0, - 111,115,50,99,1,0,0,0,0,0,0,0,2,0,0,0, - 3,0,0,0,115,0,0,0,115,33,0,0,0,124,0,0, - 93,23,0,125,1,0,116,0,0,124,1,0,131,1,0,100, - 0,0,107,2,0,86,1,113,3,0,100,1,0,83,40,2, - 0,0,0,105,1,0,0,0,78,40,1,0,0,0,117,3, - 0,0,0,108,101,110,40,2,0,0,0,117,2,0,0,0, - 46,48,117,3,0,0,0,115,101,112,40,0,0,0,0,40, + 111,116,115,116,114,97,112,62,117,7,0,0,0,95,95,108, + 101,110,95,95,177,4,0,0,115,2,0,0,0,0,1,117, + 22,0,0,0,95,78,97,109,101,115,112,97,99,101,80,97, + 116,104,46,95,95,108,101,110,95,95,99,1,0,0,0,0, + 0,0,0,1,0,0,0,2,0,0,0,67,0,0,0,115, + 16,0,0,0,100,1,0,106,0,0,124,0,0,106,1,0, + 131,1,0,83,40,2,0,0,0,78,117,20,0,0,0,95, + 78,97,109,101,115,112,97,99,101,80,97,116,104,40,123,33, + 114,125,41,40,2,0,0,0,117,6,0,0,0,102,111,114, + 109,97,116,117,5,0,0,0,95,112,97,116,104,40,1,0, + 0,0,117,4,0,0,0,115,101,108,102,40,0,0,0,0, + 40,0,0,0,0,117,29,0,0,0,60,102,114,111,122,101, + 110,32,105,109,112,111,114,116,108,105,98,46,95,98,111,111, + 116,115,116,114,97,112,62,117,8,0,0,0,95,95,114,101, + 112,114,95,95,180,4,0,0,115,2,0,0,0,0,1,117, + 23,0,0,0,95,78,97,109,101,115,112,97,99,101,80,97, + 116,104,46,95,95,114,101,112,114,95,95,99,2,0,0,0, + 0,0,0,0,2,0,0,0,2,0,0,0,67,0,0,0, + 115,16,0,0,0,124,1,0,124,0,0,106,0,0,131,0, + 0,107,6,0,83,40,1,0,0,0,78,40,1,0,0,0, + 117,12,0,0,0,95,114,101,99,97,108,99,117,108,97,116, + 101,40,2,0,0,0,117,4,0,0,0,115,101,108,102,117, + 4,0,0,0,105,116,101,109,40,0,0,0,0,40,0,0, + 0,0,117,29,0,0,0,60,102,114,111,122,101,110,32,105, + 109,112,111,114,116,108,105,98,46,95,98,111,111,116,115,116, + 114,97,112,62,117,12,0,0,0,95,95,99,111,110,116,97, + 105,110,115,95,95,183,4,0,0,115,2,0,0,0,0,1, + 117,27,0,0,0,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,2,0,0,0,2,0,0, + 0,67,0,0,0,115,20,0,0,0,124,0,0,106,0,0, + 106,1,0,124,1,0,131,1,0,1,100,0,0,83,40,1, + 0,0,0,78,40,2,0,0,0,117,5,0,0,0,95,112, + 97,116,104,117,6,0,0,0,97,112,112,101,110,100,40,2, + 0,0,0,117,4,0,0,0,115,101,108,102,117,4,0,0, + 0,105,116,101,109,40,0,0,0,0,40,0,0,0,0,117, + 29,0,0,0,60,102,114,111,122,101,110,32,105,109,112,111, + 114,116,108,105,98,46,95,98,111,111,116,115,116,114,97,112, + 62,117,6,0,0,0,97,112,112,101,110,100,186,4,0,0, + 115,2,0,0,0,0,1,117,21,0,0,0,95,78,97,109, + 101,115,112,97,99,101,80,97,116,104,46,97,112,112,101,110, + 100,78,40,13,0,0,0,117,8,0,0,0,95,95,110,97, + 109,101,95,95,117,10,0,0,0,95,95,109,111,100,117,108, + 101,95,95,117,12,0,0,0,95,95,113,117,97,108,110,97, + 109,101,95,95,117,7,0,0,0,95,95,100,111,99,95,95, + 117,8,0,0,0,95,95,105,110,105,116,95,95,117,23,0, + 0,0,95,102,105,110,100,95,112,97,114,101,110,116,95,112, + 97,116,104,95,110,97,109,101,115,117,16,0,0,0,95,103, + 101,116,95,112,97,114,101,110,116,95,112,97,116,104,117,12, + 0,0,0,95,114,101,99,97,108,99,117,108,97,116,101,117, + 8,0,0,0,95,95,105,116,101,114,95,95,117,7,0,0, + 0,95,95,108,101,110,95,95,117,8,0,0,0,95,95,114, + 101,112,114,95,95,117,12,0,0,0,95,95,99,111,110,116, + 97,105,110,115,95,95,117,6,0,0,0,97,112,112,101,110, + 100,40,1,0,0,0,117,10,0,0,0,95,95,108,111,99, + 97,108,115,95,95,40,0,0,0,0,40,0,0,0,0,117, + 29,0,0,0,60,102,114,111,122,101,110,32,105,109,112,111, + 114,116,108,105,98,46,95,98,111,111,116,115,116,114,97,112, + 62,117,14,0,0,0,95,78,97,109,101,115,112,97,99,101, + 80,97,116,104,135,4,0,0,115,20,0,0,0,16,5,6, + 2,12,6,12,10,12,4,12,12,12,3,12,3,12,3,12, + 3,117,14,0,0,0,95,78,97,109,101,115,112,97,99,101, + 80,97,116,104,99,1,0,0,0,0,0,0,0,1,0,0, + 0,3,0,0,0,66,0,0,0,115,68,0,0,0,124,0, + 0,69,101,0,0,90,1,0,100,0,0,90,2,0,100,1, + 0,100,2,0,132,0,0,90,3,0,101,4,0,100,3,0, + 100,4,0,132,0,0,131,1,0,90,5,0,101,6,0,100, + 5,0,100,6,0,132,0,0,131,1,0,90,7,0,100,7, + 0,83,40,8,0,0,0,117,15,0,0,0,78,97,109,101, + 115,112,97,99,101,76,111,97,100,101,114,99,4,0,0,0, + 0,0,0,0,4,0,0,0,4,0,0,0,67,0,0,0, + 115,25,0,0,0,116,0,0,124,1,0,124,2,0,124,3, + 0,131,3,0,124,0,0,95,1,0,100,0,0,83,40,1, + 0,0,0,78,40,2,0,0,0,117,14,0,0,0,95,78, + 97,109,101,115,112,97,99,101,80,97,116,104,117,5,0,0, + 0,95,112,97,116,104,40,4,0,0,0,117,4,0,0,0, + 115,101,108,102,117,4,0,0,0,110,97,109,101,117,4,0, + 0,0,112,97,116,104,117,11,0,0,0,112,97,116,104,95, + 102,105,110,100,101,114,40,0,0,0,0,40,0,0,0,0, + 117,29,0,0,0,60,102,114,111,122,101,110,32,105,109,112, + 111,114,116,108,105,98,46,95,98,111,111,116,115,116,114,97, + 112,62,117,8,0,0,0,95,95,105,110,105,116,95,95,191, + 4,0,0,115,2,0,0,0,0,1,117,24,0,0,0,78, + 97,109,101,115,112,97,99,101,76,111,97,100,101,114,46,95, + 95,105,110,105,116,95,95,99,2,0,0,0,0,0,0,0, + 2,0,0,0,2,0,0,0,67,0,0,0,115,16,0,0, + 0,100,1,0,106,0,0,124,1,0,106,1,0,131,1,0, + 83,40,2,0,0,0,78,117,25,0,0,0,60,109,111,100, + 117,108,101,32,39,123,125,39,32,40,110,97,109,101,115,112, + 97,99,101,41,62,40,2,0,0,0,117,6,0,0,0,102, + 111,114,109,97,116,117,8,0,0,0,95,95,110,97,109,101, + 95,95,40,2,0,0,0,117,3,0,0,0,99,108,115,117, + 6,0,0,0,109,111,100,117,108,101,40,0,0,0,0,40, 0,0,0,0,117,29,0,0,0,60,102,114,111,122,101,110, 32,105,109,112,111,114,116,108,105,98,46,95,98,111,111,116, - 115,116,114,97,112,62,117,9,0,0,0,60,103,101,110,101, - 120,112,114,62,168,6,0,0,115,2,0,0,0,6,0,117, - 25,0,0,0,95,115,101,116,117,112,46,60,108,111,99,97, - 108,115,62,46,60,103,101,110,101,120,112,114,62,105,0,0, - 0,0,117,7,0,0,0,69,77,88,32,71,67,67,105,1, - 0,0,0,117,30,0,0,0,105,109,112,111,114,116,108,105, - 98,32,114,101,113,117,105,114,101,115,32,112,111,115,105,120, - 32,111,114,32,110,116,117,7,0,0,0,95,116,104,114,101, - 97,100,117,8,0,0,0,95,119,101,97,107,114,101,102,117, - 6,0,0,0,119,105,110,114,101,103,117,7,0,0,0,95, - 119,105,110,114,101,103,117,3,0,0,0,95,111,115,117,8, - 0,0,0,112,97,116,104,95,115,101,112,117,15,0,0,0, - 112,97,116,104,95,115,101,112,97,114,97,116,111,114,115,117, - 11,0,0,0,95,114,101,108,97,120,95,99,97,115,101,117, - 4,0,0,0,46,112,121,119,117,6,0,0,0,95,100,46, - 112,121,100,78,40,4,0,0,0,117,3,0,0,0,95,105, - 111,117,9,0,0,0,95,119,97,114,110,105,110,103,115,117, - 8,0,0,0,98,117,105,108,116,105,110,115,117,7,0,0, - 0,109,97,114,115,104,97,108,84,40,24,0,0,0,117,4, - 0,0,0,95,105,109,112,117,3,0,0,0,115,121,115,117, - 7,0,0,0,104,97,115,97,116,116,114,117,15,0,0,0, - 66,117,105,108,116,105,110,73,109,112,111,114,116,101,114,117, - 10,0,0,0,95,95,108,111,97,100,101,114,95,95,117,7, - 0,0,0,109,111,100,117,108,101,115,117,8,0,0,0,95, - 95,110,97,109,101,95,95,117,11,0,0,0,108,111,97,100, - 95,109,111,100,117,108,101,117,7,0,0,0,115,101,116,97, - 116,116,114,117,3,0,0,0,97,108,108,117,14,0,0,0, - 65,115,115,101,114,116,105,111,110,69,114,114,111,114,117,7, - 0,0,0,118,101,114,115,105,111,110,117,11,0,0,0,73, - 109,112,111,114,116,69,114,114,111,114,117,4,0,0,0,78, - 111,110,101,117,3,0,0,0,115,101,116,117,16,0,0,0, - 95,109,97,107,101,95,114,101,108,97,120,95,99,97,115,101, - 117,18,0,0,0,69,88,84,69,78,83,73,79,78,95,83, - 85,70,70,73,88,69,83,117,6,0,0,0,101,120,116,101, - 110,100,117,18,0,0,0,101,120,116,101,110,115,105,111,110, - 95,115,117,102,102,105,120,101,115,117,15,0,0,0,83,79, - 85,82,67,69,95,83,85,70,70,73,88,69,83,117,6,0, - 0,0,97,112,112,101,110,100,117,4,0,0,0,84,114,117, - 101,117,21,0,0,0,87,105,110,100,111,119,115,82,101,103, - 105,115,116,114,121,70,105,110,100,101,114,117,11,0,0,0, - 68,69,66,85,71,95,66,85,73,76,68,40,14,0,0,0, - 117,10,0,0,0,115,121,115,95,109,111,100,117,108,101,117, - 11,0,0,0,95,105,109,112,95,109,111,100,117,108,101,117, - 6,0,0,0,109,111,100,117,108,101,117,11,0,0,0,115, - 101,108,102,95,109,111,100,117,108,101,117,12,0,0,0,98, - 117,105,108,116,105,110,95,110,97,109,101,117,14,0,0,0, - 98,117,105,108,116,105,110,95,109,111,100,117,108,101,117,10, - 0,0,0,111,115,95,100,101,116,97,105,108,115,117,10,0, - 0,0,98,117,105,108,116,105,110,95,111,115,117,15,0,0, - 0,112,97,116,104,95,115,101,112,97,114,97,116,111,114,115, - 117,8,0,0,0,112,97,116,104,95,115,101,112,117,9,0, - 0,0,111,115,95,109,111,100,117,108,101,117,13,0,0,0, - 116,104,114,101,97,100,95,109,111,100,117,108,101,117,14,0, - 0,0,119,101,97,107,114,101,102,95,109,111,100,117,108,101, - 117,13,0,0,0,119,105,110,114,101,103,95,109,111,100,117, + 115,116,114,97,112,62,117,11,0,0,0,109,111,100,117,108, + 101,95,114,101,112,114,194,4,0,0,115,2,0,0,0,0, + 2,117,27,0,0,0,78,97,109,101,115,112,97,99,101,76, + 111,97,100,101,114,46,109,111,100,117,108,101,95,114,101,112, + 114,99,2,0,0,0,0,0,0,0,2,0,0,0,3,0, + 0,0,67,0,0,0,115,32,0,0,0,116,0,0,100,1, + 0,124,0,0,106,1,0,131,2,0,1,124,0,0,106,1, + 0,124,1,0,95,2,0,124,1,0,83,40,2,0,0,0, + 117,24,0,0,0,76,111,97,100,32,97,32,110,97,109,101, + 115,112,97,99,101,32,109,111,100,117,108,101,46,117,38,0, + 0,0,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,40,3,0,0,0,117,16,0, + 0,0,95,118,101,114,98,111,115,101,95,109,101,115,115,97, + 103,101,117,5,0,0,0,95,112,97,116,104,117,8,0,0, + 0,95,95,112,97,116,104,95,95,40,2,0,0,0,117,4, + 0,0,0,115,101,108,102,117,6,0,0,0,109,111,100,117, 108,101,40,0,0,0,0,40,0,0,0,0,117,29,0,0, 0,60,102,114,111,122,101,110,32,105,109,112,111,114,116,108, - 105,98,46,95,98,111,111,116,115,116,114,97,112,62,117,6, - 0,0,0,95,115,101,116,117,112,141,6,0,0,115,90,0, - 0,0,0,9,6,1,6,2,19,1,15,1,16,2,13,1, - 13,1,15,1,18,2,13,1,20,2,48,1,19,2,31,1, - 10,1,15,1,13,1,4,2,3,1,15,2,27,1,13,1, - 5,1,13,1,12,2,12,2,3,1,19,1,13,2,11,1, - 15,2,12,1,15,1,19,2,16,1,16,1,16,1,16,1, - 22,2,19,1,19,1,12,1,13,1,12,1,117,6,0,0, - 0,95,115,101,116,117,112,99,2,0,0,0,0,0,0,0, - 3,0,0,0,3,0,0,0,67,0,0,0,115,136,0,0, - 0,116,0,0,124,0,0,124,1,0,131,2,0,1,116,1, - 0,131,0,0,125,2,0,116,2,0,106,3,0,106,4,0, - 116,5,0,106,6,0,124,2,0,140,0,0,103,1,0,131, - 1,0,1,116,2,0,106,7,0,106,8,0,116,9,0,131, - 1,0,1,116,2,0,106,7,0,106,8,0,116,10,0,131, - 1,0,1,116,11,0,106,12,0,100,1,0,107,2,0,114, - 116,0,116,2,0,106,7,0,106,8,0,116,13,0,131,1, - 0,1,110,0,0,116,2,0,106,7,0,106,8,0,116,14, - 0,131,1,0,1,100,2,0,83,40,3,0,0,0,117,50, - 0,0,0,73,110,115,116,97,108,108,32,105,109,112,111,114, - 116,108,105,98,32,97,115,32,116,104,101,32,105,109,112,108, - 101,109,101,110,116,97,116,105,111,110,32,111,102,32,105,109, - 112,111,114,116,46,117,2,0,0,0,110,116,78,40,15,0, - 0,0,117,6,0,0,0,95,115,101,116,117,112,117,27,0, - 0,0,95,103,101,116,95,115,117,112,112,111,114,116,101,100, - 95,102,105,108,101,95,108,111,97,100,101,114,115,117,3,0, - 0,0,115,121,115,117,10,0,0,0,112,97,116,104,95,104, - 111,111,107,115,117,6,0,0,0,101,120,116,101,110,100,117, - 10,0,0,0,70,105,108,101,70,105,110,100,101,114,117,9, - 0,0,0,112,97,116,104,95,104,111,111,107,117,9,0,0, - 0,109,101,116,97,95,112,97,116,104,117,6,0,0,0,97, - 112,112,101,110,100,117,15,0,0,0,66,117,105,108,116,105, - 110,73,109,112,111,114,116,101,114,117,14,0,0,0,70,114, - 111,122,101,110,73,109,112,111,114,116,101,114,117,3,0,0, - 0,95,111,115,117,8,0,0,0,95,95,110,97,109,101,95, - 95,117,21,0,0,0,87,105,110,100,111,119,115,82,101,103, - 105,115,116,114,121,70,105,110,100,101,114,117,10,0,0,0, - 80,97,116,104,70,105,110,100,101,114,40,3,0,0,0,117, - 10,0,0,0,115,121,115,95,109,111,100,117,108,101,117,11, - 0,0,0,95,105,109,112,95,109,111,100,117,108,101,117,17, - 0,0,0,115,117,112,112,111,114,116,101,100,95,108,111,97, - 100,101,114,115,40,0,0,0,0,40,0,0,0,0,117,29, + 105,98,46,95,98,111,111,116,115,116,114,97,112,62,117,11, + 0,0,0,108,111,97,100,95,109,111,100,117,108,101,198,4, + 0,0,115,6,0,0,0,0,3,16,1,12,1,117,27,0, + 0,0,78,97,109,101,115,112,97,99,101,76,111,97,100,101, + 114,46,108,111,97,100,95,109,111,100,117,108,101,78,40,8, + 0,0,0,117,8,0,0,0,95,95,110,97,109,101,95,95, + 117,10,0,0,0,95,95,109,111,100,117,108,101,95,95,117, + 12,0,0,0,95,95,113,117,97,108,110,97,109,101,95,95, + 117,8,0,0,0,95,95,105,110,105,116,95,95,117,11,0, + 0,0,99,108,97,115,115,109,101,116,104,111,100,117,11,0, + 0,0,109,111,100,117,108,101,95,114,101,112,114,117,17,0, + 0,0,109,111,100,117,108,101,95,102,111,114,95,108,111,97, + 100,101,114,117,11,0,0,0,108,111,97,100,95,109,111,100, + 117,108,101,40,1,0,0,0,117,10,0,0,0,95,95,108, + 111,99,97,108,115,95,95,40,0,0,0,0,40,0,0,0, + 0,117,29,0,0,0,60,102,114,111,122,101,110,32,105,109, + 112,111,114,116,108,105,98,46,95,98,111,111,116,115,116,114, + 97,112,62,117,15,0,0,0,78,97,109,101,115,112,97,99, + 101,76,111,97,100,101,114,190,4,0,0,115,6,0,0,0, + 16,1,12,3,18,4,117,15,0,0,0,78,97,109,101,115, + 112,97,99,101,76,111,97,100,101,114,99,1,0,0,0,0, + 0,0,0,1,0,0,0,4,0,0,0,66,0,0,0,115, + 119,0,0,0,124,0,0,69,101,0,0,90,1,0,100,0, + 0,90,2,0,100,1,0,90,3,0,101,4,0,100,2,0, + 100,3,0,132,0,0,131,1,0,90,5,0,101,4,0,100, + 4,0,100,5,0,132,0,0,131,1,0,90,6,0,101,4, + 0,100,6,0,100,7,0,132,0,0,131,1,0,90,7,0, + 101,4,0,100,8,0,100,9,0,132,0,0,131,1,0,90, + 8,0,101,4,0,100,12,0,100,10,0,100,11,0,132,1, + 0,131,1,0,90,10,0,100,12,0,83,40,13,0,0,0, + 117,10,0,0,0,80,97,116,104,70,105,110,100,101,114,117, + 62,0,0,0,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,1,0,0,0,0,0,0,0,2,0,0,0,4, + 0,0,0,67,0,0,0,115,58,0,0,0,120,51,0,116, + 0,0,106,1,0,106,2,0,131,0,0,68,93,34,0,125, + 1,0,116,3,0,124,1,0,100,1,0,131,2,0,114,16, + 0,124,1,0,106,4,0,131,0,0,1,113,16,0,113,16, + 0,87,100,2,0,83,40,3,0,0,0,117,125,0,0,0, + 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,117,17,0, + 0,0,105,110,118,97,108,105,100,97,116,101,95,99,97,99, + 104,101,115,78,40,5,0,0,0,117,3,0,0,0,115,121, + 115,117,19,0,0,0,112,97,116,104,95,105,109,112,111,114, + 116,101,114,95,99,97,99,104,101,117,6,0,0,0,118,97, + 108,117,101,115,117,7,0,0,0,104,97,115,97,116,116,114, + 117,17,0,0,0,105,110,118,97,108,105,100,97,116,101,95, + 99,97,99,104,101,115,40,2,0,0,0,117,3,0,0,0, + 99,108,115,117,6,0,0,0,102,105,110,100,101,114,40,0, + 0,0,0,40,0,0,0,0,117,29,0,0,0,60,102,114, + 111,122,101,110,32,105,109,112,111,114,116,108,105,98,46,95, + 98,111,111,116,115,116,114,97,112,62,117,17,0,0,0,105, + 110,118,97,108,105,100,97,116,101,95,99,97,99,104,101,115, + 212,4,0,0,115,6,0,0,0,0,4,22,1,15,1,117, + 28,0,0,0,80,97,116,104,70,105,110,100,101,114,46,105, + 110,118,97,108,105,100,97,116,101,95,99,97,99,104,101,115, + 99,2,0,0,0,0,0,0,0,3,0,0,0,12,0,0, + 0,67,0,0,0,115,94,0,0,0,116,0,0,106,1,0, + 115,28,0,116,2,0,106,3,0,100,1,0,116,4,0,131, + 2,0,1,110,0,0,120,59,0,116,0,0,106,1,0,68, + 93,44,0,125,2,0,121,14,0,124,2,0,124,1,0,131, + 1,0,83,87,113,38,0,4,116,5,0,107,10,0,114,81, + 0,1,1,1,119,38,0,89,113,38,0,88,113,38,0,87, + 100,2,0,83,100,2,0,83,40,3,0,0,0,117,113,0, + 0,0,83,101,97,114,99,104,32,115,101,113,117,101,110,99, + 101,32,111,102,32,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,10,10,32,32,32,32,32,32,32,32,73,102,32, + 39,104,111,111,107,115,39,32,105,115,32,102,97,108,115,101, + 32,116,104,101,110,32,117,115,101,32,115,121,115,46,112,97, + 116,104,95,104,111,111,107,115,46,10,10,32,32,32,32,32, + 32,32,32,117,23,0,0,0,115,121,115,46,112,97,116,104, + 95,104,111,111,107,115,32,105,115,32,101,109,112,116,121,78, + 40,7,0,0,0,117,3,0,0,0,115,121,115,117,10,0, + 0,0,112,97,116,104,95,104,111,111,107,115,117,9,0,0, + 0,95,119,97,114,110,105,110,103,115,117,4,0,0,0,119, + 97,114,110,117,13,0,0,0,73,109,112,111,114,116,87,97, + 114,110,105,110,103,117,11,0,0,0,73,109,112,111,114,116, + 69,114,114,111,114,117,4,0,0,0,78,111,110,101,40,3, + 0,0,0,117,3,0,0,0,99,108,115,117,4,0,0,0, + 112,97,116,104,117,4,0,0,0,104,111,111,107,40,0,0, + 0,0,40,0,0,0,0,117,29,0,0,0,60,102,114,111, + 122,101,110,32,105,109,112,111,114,116,108,105,98,46,95,98, + 111,111,116,115,116,114,97,112,62,117,11,0,0,0,95,112, + 97,116,104,95,104,111,111,107,115,220,4,0,0,115,16,0, + 0,0,0,7,9,1,19,1,16,1,3,1,14,1,13,1, + 12,2,117,22,0,0,0,80,97,116,104,70,105,110,100,101, + 114,46,95,112,97,116,104,95,104,111,111,107,115,99,2,0, + 0,0,0,0,0,0,3,0,0,0,11,0,0,0,67,0, + 0,0,115,91,0,0,0,124,1,0,100,1,0,107,2,0, + 114,21,0,100,2,0,125,1,0,110,0,0,121,17,0,116, + 0,0,106,1,0,124,1,0,25,125,2,0,87,110,46,0, + 4,116,2,0,107,10,0,114,86,0,1,1,1,124,0,0, + 106,3,0,124,1,0,131,1,0,125,2,0,124,2,0,116, + 0,0,106,1,0,124,1,0,60,89,110,1,0,88,124,2, + 0,83,40,3,0,0,0,117,210,0,0,0,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,117,0, + 0,0,0,117,1,0,0,0,46,40,4,0,0,0,117,3, + 0,0,0,115,121,115,117,19,0,0,0,112,97,116,104,95, + 105,109,112,111,114,116,101,114,95,99,97,99,104,101,117,8, + 0,0,0,75,101,121,69,114,114,111,114,117,11,0,0,0, + 95,112,97,116,104,95,104,111,111,107,115,40,3,0,0,0, + 117,3,0,0,0,99,108,115,117,4,0,0,0,112,97,116, + 104,117,6,0,0,0,102,105,110,100,101,114,40,0,0,0, + 0,40,0,0,0,0,117,29,0,0,0,60,102,114,111,122, + 101,110,32,105,109,112,111,114,116,108,105,98,46,95,98,111, + 111,116,115,116,114,97,112,62,117,20,0,0,0,95,112,97, + 116,104,95,105,109,112,111,114,116,101,114,95,99,97,99,104, + 101,237,4,0,0,115,16,0,0,0,0,8,12,1,9,1, + 3,1,17,1,13,1,15,1,18,1,117,31,0,0,0,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,8,0,0,0,4,0,0,0,67, + 0,0,0,115,162,0,0,0,103,0,0,125,3,0,120,149, + 0,124,2,0,68,93,131,0,125,4,0,124,0,0,106,0, + 0,124,4,0,131,1,0,125,5,0,124,5,0,100,2,0, + 107,9,0,114,13,0,116,2,0,124,5,0,100,1,0,131, + 2,0,114,85,0,124,5,0,106,3,0,124,1,0,131,1, + 0,92,2,0,125,6,0,125,7,0,110,21,0,124,5,0, + 106,4,0,124,1,0,131,1,0,125,6,0,103,0,0,125, + 7,0,124,6,0,100,2,0,107,9,0,114,128,0,124,6, + 0,124,3,0,102,2,0,83,124,3,0,106,5,0,124,7, + 0,131,1,0,1,113,13,0,113,13,0,87,100,2,0,124, + 3,0,102,2,0,83,100,2,0,83,40,3,0,0,0,117, + 63,0,0,0,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,117,11,0,0,0,102,105,110,100,95,108,111,97, + 100,101,114,78,40,6,0,0,0,117,20,0,0,0,95,112, + 97,116,104,95,105,109,112,111,114,116,101,114,95,99,97,99, + 104,101,117,4,0,0,0,78,111,110,101,117,7,0,0,0, + 104,97,115,97,116,116,114,117,11,0,0,0,102,105,110,100, + 95,108,111,97,100,101,114,117,11,0,0,0,102,105,110,100, + 95,109,111,100,117,108,101,117,6,0,0,0,101,120,116,101, + 110,100,40,8,0,0,0,117,3,0,0,0,99,108,115,117, + 8,0,0,0,102,117,108,108,110,97,109,101,117,4,0,0, + 0,112,97,116,104,117,14,0,0,0,110,97,109,101,115,112, + 97,99,101,95,112,97,116,104,117,5,0,0,0,101,110,116, + 114,121,117,6,0,0,0,102,105,110,100,101,114,117,6,0, + 0,0,108,111,97,100,101,114,117,8,0,0,0,112,111,114, + 116,105,111,110,115,40,0,0,0,0,40,0,0,0,0,117, + 29,0,0,0,60,102,114,111,122,101,110,32,105,109,112,111, + 114,116,108,105,98,46,95,98,111,111,116,115,116,114,97,112, + 62,117,11,0,0,0,95,103,101,116,95,108,111,97,100,101, + 114,254,4,0,0,115,24,0,0,0,0,5,6,1,13,1, + 15,1,12,1,15,1,24,2,15,1,6,1,12,2,10,5, + 20,2,117,22,0,0,0,80,97,116,104,70,105,110,100,101, + 114,46,95,103,101,116,95,108,111,97,100,101,114,99,3,0, + 0,0,0,0,0,0,5,0,0,0,4,0,0,0,67,0, + 0,0,115,97,0,0,0,124,2,0,100,1,0,107,8,0, + 114,24,0,116,1,0,106,2,0,125,2,0,110,0,0,124, + 0,0,106,3,0,124,1,0,124,2,0,131,2,0,92,2, + 0,125,3,0,125,4,0,124,3,0,100,1,0,107,9,0, + 114,64,0,124,3,0,83,124,4,0,114,89,0,116,4,0, + 124,1,0,124,4,0,124,0,0,106,3,0,131,3,0,83, + 100,1,0,83,100,1,0,83,40,2,0,0,0,117,98,0, + 0,0,70,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,78,40,5,0,0,0,117,4,0,0,0,78, + 111,110,101,117,3,0,0,0,115,121,115,117,4,0,0,0, + 112,97,116,104,117,11,0,0,0,95,103,101,116,95,108,111, + 97,100,101,114,117,15,0,0,0,78,97,109,101,115,112,97, + 99,101,76,111,97,100,101,114,40,5,0,0,0,117,3,0, + 0,0,99,108,115,117,8,0,0,0,102,117,108,108,110,97, + 109,101,117,4,0,0,0,112,97,116,104,117,6,0,0,0, + 108,111,97,100,101,114,117,14,0,0,0,110,97,109,101,115, + 112,97,99,101,95,112,97,116,104,40,0,0,0,0,40,0, + 0,0,0,117,29,0,0,0,60,102,114,111,122,101,110,32, + 105,109,112,111,114,116,108,105,98,46,95,98,111,111,116,115, + 116,114,97,112,62,117,11,0,0,0,102,105,110,100,95,109, + 111,100,117,108,101,23,5,0,0,115,16,0,0,0,0,4, + 12,1,12,1,24,1,12,1,4,2,6,3,19,2,117,22, + 0,0,0,80,97,116,104,70,105,110,100,101,114,46,102,105, + 110,100,95,109,111,100,117,108,101,78,40,11,0,0,0,117, + 8,0,0,0,95,95,110,97,109,101,95,95,117,10,0,0, + 0,95,95,109,111,100,117,108,101,95,95,117,12,0,0,0, + 95,95,113,117,97,108,110,97,109,101,95,95,117,7,0,0, + 0,95,95,100,111,99,95,95,117,11,0,0,0,99,108,97, + 115,115,109,101,116,104,111,100,117,17,0,0,0,105,110,118, + 97,108,105,100,97,116,101,95,99,97,99,104,101,115,117,11, + 0,0,0,95,112,97,116,104,95,104,111,111,107,115,117,20, + 0,0,0,95,112,97,116,104,95,105,109,112,111,114,116,101, + 114,95,99,97,99,104,101,117,11,0,0,0,95,103,101,116, + 95,108,111,97,100,101,114,117,4,0,0,0,78,111,110,101, + 117,11,0,0,0,102,105,110,100,95,109,111,100,117,108,101, + 40,1,0,0,0,117,10,0,0,0,95,95,108,111,99,97, + 108,115,95,95,40,0,0,0,0,40,0,0,0,0,117,29, 0,0,0,60,102,114,111,122,101,110,32,105,109,112,111,114, 116,108,105,98,46,95,98,111,111,116,115,116,114,97,112,62, - 117,8,0,0,0,95,105,110,115,116,97,108,108,210,6,0, - 0,115,16,0,0,0,0,2,13,1,9,1,28,1,16,1, - 16,1,15,1,19,1,117,8,0,0,0,95,105,110,115,116, - 97,108,108,78,40,3,0,0,0,117,3,0,0,0,119,105, - 110,117,6,0,0,0,99,121,103,119,105,110,117,6,0,0, - 0,100,97,114,119,105,110,40,75,0,0,0,117,7,0,0, - 0,95,95,100,111,99,95,95,117,27,0,0,0,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,117,16,0,0,0,95,109,97, - 107,101,95,114,101,108,97,120,95,99,97,115,101,117,7,0, - 0,0,95,119,95,108,111,110,103,117,7,0,0,0,95,114, - 95,108,111,110,103,117,10,0,0,0,95,112,97,116,104,95, - 106,111,105,110,117,11,0,0,0,95,112,97,116,104,95,115, - 112,108,105,116,117,18,0,0,0,95,112,97,116,104,95,105, - 115,95,109,111,100,101,95,116,121,112,101,117,12,0,0,0, - 95,112,97,116,104,95,105,115,102,105,108,101,117,11,0,0, - 0,95,112,97,116,104,95,105,115,100,105,114,117,13,0,0, - 0,95,119,114,105,116,101,95,97,116,111,109,105,99,117,5, - 0,0,0,95,119,114,97,112,117,4,0,0,0,116,121,112, - 101,117,8,0,0,0,95,95,99,111,100,101,95,95,117,10, - 0,0,0,95,99,111,100,101,95,116,121,112,101,117,10,0, - 0,0,110,101,119,95,109,111,100,117,108,101,117,13,0,0, - 0,95,109,111,100,117,108,101,95,108,111,99,107,115,117,12, - 0,0,0,95,98,108,111,99,107,105,110,103,95,111,110,117, - 12,0,0,0,82,117,110,116,105,109,101,69,114,114,111,114, - 117,14,0,0,0,95,68,101,97,100,108,111,99,107,69,114, - 114,111,114,117,11,0,0,0,95,77,111,100,117,108,101,76, - 111,99,107,117,16,0,0,0,95,68,117,109,109,121,77,111, - 100,117,108,101,76,111,99,107,117,16,0,0,0,95,103,101, - 116,95,109,111,100,117,108,101,95,108,111,99,107,117,19,0, - 0,0,95,108,111,99,107,95,117,110,108,111,99,107,95,109, - 111,100,117,108,101,117,25,0,0,0,95,99,97,108,108,95, - 119,105,116,104,95,102,114,97,109,101,115,95,114,101,109,111, - 118,101,100,117,3,0,0,0,111,114,100,117,17,0,0,0, - 95,82,65,87,95,77,65,71,73,67,95,78,85,77,66,69, - 82,117,5,0,0,0,98,121,116,101,115,117,5,0,0,0, - 114,97,110,103,101,117,12,0,0,0,95,77,65,71,73,67, - 95,66,89,84,69,83,117,8,0,0,0,95,80,89,67,65, - 67,72,69,117,15,0,0,0,83,79,85,82,67,69,95,83, - 85,70,70,73,88,69,83,117,23,0,0,0,68,69,66,85, - 71,95,66,89,84,69,67,79,68,69,95,83,85,70,70,73, - 88,69,83,117,27,0,0,0,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,117,17,0,0,0,66,89,84,69,67,79,68,69, - 95,83,85,70,70,73,88,69,83,117,4,0,0,0,78,111, - 110,101,117,17,0,0,0,99,97,99,104,101,95,102,114,111, - 109,95,115,111,117,114,99,101,117,17,0,0,0,115,111,117, - 114,99,101,95,102,114,111,109,95,99,97,99,104,101,117,15, - 0,0,0,95,103,101,116,95,115,111,117,114,99,101,102,105, - 108,101,117,16,0,0,0,95,118,101,114,98,111,115,101,95, - 109,101,115,115,97,103,101,117,11,0,0,0,115,101,116,95, - 112,97,99,107,97,103,101,117,10,0,0,0,115,101,116,95, - 108,111,97,100,101,114,117,17,0,0,0,109,111,100,117,108, - 101,95,102,111,114,95,108,111,97,100,101,114,117,11,0,0, - 0,95,99,104,101,99,107,95,110,97,109,101,117,17,0,0, - 0,95,114,101,113,117,105,114,101,115,95,98,117,105,108,116, - 105,110,117,16,0,0,0,95,114,101,113,117,105,114,101,115, - 95,102,114,111,122,101,110,117,17,0,0,0,95,102,105,110, - 100,95,109,111,100,117,108,101,95,115,104,105,109,117,15,0, - 0,0,66,117,105,108,116,105,110,73,109,112,111,114,116,101, - 114,117,14,0,0,0,70,114,111,122,101,110,73,109,112,111, - 114,116,101,114,117,21,0,0,0,87,105,110,100,111,119,115, - 82,101,103,105,115,116,114,121,70,105,110,100,101,114,117,13, - 0,0,0,95,76,111,97,100,101,114,66,97,115,105,99,115, - 117,12,0,0,0,83,111,117,114,99,101,76,111,97,100,101, - 114,117,10,0,0,0,70,105,108,101,76,111,97,100,101,114, - 117,16,0,0,0,83,111,117,114,99,101,70,105,108,101,76, - 111,97,100,101,114,117,20,0,0,0,83,111,117,114,99,101, - 108,101,115,115,70,105,108,101,76,111,97,100,101,114,117,18, - 0,0,0,69,88,84,69,78,83,73,79,78,95,83,85,70, - 70,73,88,69,83,117,19,0,0,0,69,120,116,101,110,115, - 105,111,110,70,105,108,101,76,111,97,100,101,114,117,14,0, - 0,0,95,78,97,109,101,115,112,97,99,101,80,97,116,104, - 117,15,0,0,0,78,97,109,101,115,112,97,99,101,76,111, - 97,100,101,114,117,10,0,0,0,80,97,116,104,70,105,110, - 100,101,114,117,10,0,0,0,70,105,108,101,70,105,110,100, - 101,114,117,18,0,0,0,95,73,109,112,111,114,116,76,111, - 99,107,67,111,110,116,101,120,116,117,13,0,0,0,95,114, - 101,115,111,108,118,101,95,110,97,109,101,117,12,0,0,0, - 95,102,105,110,100,95,109,111,100,117,108,101,117,13,0,0, - 0,95,115,97,110,105,116,121,95,99,104,101,99,107,117,8, - 0,0,0,95,69,82,82,95,77,83,71,117,23,0,0,0, - 95,102,105,110,100,95,97,110,100,95,108,111,97,100,95,117, - 110,108,111,99,107,101,100,117,14,0,0,0,95,102,105,110, - 100,95,97,110,100,95,108,111,97,100,117,11,0,0,0,95, - 103,99,100,95,105,109,112,111,114,116,117,16,0,0,0,95, - 104,97,110,100,108,101,95,102,114,111,109,108,105,115,116,117, - 17,0,0,0,95,99,97,108,99,95,95,95,112,97,99,107, - 97,103,101,95,95,117,27,0,0,0,95,103,101,116,95,115, - 117,112,112,111,114,116,101,100,95,102,105,108,101,95,108,111, - 97,100,101,114,115,117,10,0,0,0,95,95,105,109,112,111, - 114,116,95,95,117,6,0,0,0,95,115,101,116,117,112,117, - 8,0,0,0,95,105,110,115,116,97,108,108,40,0,0,0, - 0,40,0,0,0,0,40,0,0,0,0,117,29,0,0,0, + 117,10,0,0,0,80,97,116,104,70,105,110,100,101,114,208, + 4,0,0,115,14,0,0,0,16,2,6,2,18,8,18,17, + 18,17,18,25,3,1,117,10,0,0,0,80,97,116,104,70, + 105,110,100,101,114,99,1,0,0,0,0,0,0,0,1,0, + 0,0,3,0,0,0,66,0,0,0,115,110,0,0,0,124, + 0,0,69,101,0,0,90,1,0,100,0,0,90,2,0,100, + 1,0,90,3,0,100,2,0,100,3,0,132,0,0,90,4, + 0,100,4,0,100,5,0,132,0,0,90,5,0,101,6,0, + 90,7,0,100,6,0,100,7,0,132,0,0,90,8,0,100, + 8,0,100,9,0,132,0,0,90,9,0,101,10,0,100,10, + 0,100,11,0,132,0,0,131,1,0,90,11,0,100,12,0, + 100,13,0,132,0,0,90,12,0,100,14,0,83,40,15,0, + 0,0,117,10,0,0,0,70,105,108,101,70,105,110,100,101, + 114,117,172,0,0,0,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,5,0,0,0,5, + 0,0,0,7,0,0,0,115,122,0,0,0,103,0,0,125, + 3,0,120,52,0,124,2,0,68,93,44,0,92,2,0,137, + 0,0,125,4,0,124,3,0,106,0,0,135,0,0,102,1, + 0,100,1,0,100,2,0,134,0,0,124,4,0,68,131,1, + 0,131,1,0,1,113,13,0,87,124,3,0,124,0,0,95, + 1,0,124,1,0,112,79,0,100,3,0,124,0,0,95,2, + 0,100,6,0,124,0,0,95,3,0,116,4,0,131,0,0, + 124,0,0,95,5,0,116,4,0,131,0,0,124,0,0,95, + 6,0,100,5,0,83,40,7,0,0,0,117,201,0,0,0, + 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,51,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,44,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,32, + 114,101,99,111,103,110,105,122,101,115,44,10,32,32,32,32, + 32,32,32,32,97,110,100,32,97,32,98,111,111,108,101,97, + 110,32,111,102,32,119,104,101,116,104,101,114,32,116,104,101, + 32,108,111,97,100,101,114,32,104,97,110,100,108,101,115,32, + 112,97,99,107,97,103,101,115,46,99,1,0,0,0,0,0, + 0,0,2,0,0,0,3,0,0,0,51,0,0,0,115,27, + 0,0,0,124,0,0,93,17,0,125,1,0,124,1,0,136, + 0,0,102,2,0,86,1,113,3,0,100,0,0,83,40,1, + 0,0,0,78,40,0,0,0,0,40,2,0,0,0,117,2, + 0,0,0,46,48,117,6,0,0,0,115,117,102,102,105,120, + 40,1,0,0,0,117,6,0,0,0,108,111,97,100,101,114, + 40,0,0,0,0,117,29,0,0,0,60,102,114,111,122,101, + 110,32,105,109,112,111,114,116,108,105,98,46,95,98,111,111, + 116,115,116,114,97,112,62,117,9,0,0,0,60,103,101,110, + 101,120,112,114,62,56,5,0,0,115,2,0,0,0,6,0, + 117,38,0,0,0,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,117,1,0,0,0, + 46,105,1,0,0,0,78,105,255,255,255,255,40,7,0,0, + 0,117,6,0,0,0,101,120,116,101,110,100,117,8,0,0, + 0,95,108,111,97,100,101,114,115,117,4,0,0,0,112,97, + 116,104,117,11,0,0,0,95,112,97,116,104,95,109,116,105, + 109,101,117,3,0,0,0,115,101,116,117,11,0,0,0,95, + 112,97,116,104,95,99,97,99,104,101,117,19,0,0,0,95, + 114,101,108,97,120,101,100,95,112,97,116,104,95,99,97,99, + 104,101,40,5,0,0,0,117,4,0,0,0,115,101,108,102, + 117,4,0,0,0,112,97,116,104,117,7,0,0,0,100,101, + 116,97,105,108,115,117,7,0,0,0,108,111,97,100,101,114, + 115,117,8,0,0,0,115,117,102,102,105,120,101,115,40,0, + 0,0,0,40,1,0,0,0,117,6,0,0,0,108,111,97, + 100,101,114,117,29,0,0,0,60,102,114,111,122,101,110,32, + 105,109,112,111,114,116,108,105,98,46,95,98,111,111,116,115, + 116,114,97,112,62,117,8,0,0,0,95,95,105,110,105,116, + 95,95,50,5,0,0,115,16,0,0,0,0,4,6,1,19, + 1,36,1,9,2,15,1,9,1,12,1,117,19,0,0,0, + 70,105,108,101,70,105,110,100,101,114,46,95,95,105,110,105, + 116,95,95,99,1,0,0,0,0,0,0,0,1,0,0,0, + 2,0,0,0,67,0,0,0,115,13,0,0,0,100,3,0, + 124,0,0,95,0,0,100,2,0,83,40,4,0,0,0,117, + 31,0,0,0,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,105,1,0,0,0,78,105,255,255,255,255,40,1, + 0,0,0,117,11,0,0,0,95,112,97,116,104,95,109,116, + 105,109,101,40,1,0,0,0,117,4,0,0,0,115,101,108, + 102,40,0,0,0,0,40,0,0,0,0,117,29,0,0,0, 60,102,114,111,122,101,110,32,105,109,112,111,114,116,108,105, - 98,46,95,98,111,111,116,115,116,114,97,112,62,117,8,0, - 0,0,60,109,111,100,117,108,101,62,8,0,0,0,115,134, - 0,0,0,6,21,6,3,12,13,12,16,12,13,12,12,12, - 12,12,10,12,6,12,7,15,22,12,8,15,3,12,12,6, - 2,6,3,22,4,19,68,19,23,12,17,12,20,12,100,34, - 1,37,2,6,2,9,2,9,1,9,2,6,4,15,27,12, - 23,12,21,12,8,12,13,12,11,12,51,12,18,12,11,12, - 11,12,17,19,57,19,54,19,50,19,82,22,134,19,29,25, - 46,25,25,6,3,19,45,19,55,19,18,19,89,19,125,19, - 13,12,9,12,17,12,17,6,2,12,50,12,13,18,24,12, - 34,12,15,12,11,24,32,12,69, + 98,46,95,98,111,111,116,115,116,114,97,112,62,117,17,0, + 0,0,105,110,118,97,108,105,100,97,116,101,95,99,97,99, + 104,101,115,64,5,0,0,115,2,0,0,0,0,2,117,28, + 0,0,0,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,12,0,0,0,13,0,0,0, + 67,0,0,0,115,172,1,0,0,100,5,0,125,2,0,124, + 1,0,106,1,0,100,1,0,131,1,0,100,2,0,25,125, + 3,0,121,25,0,116,2,0,106,3,0,124,0,0,106,4, + 0,131,1,0,106,5,0,125,4,0,87,110,24,0,4,116, + 6,0,107,10,0,114,76,0,1,1,1,100,6,0,125,4, + 0,89,110,1,0,88,124,4,0,124,0,0,106,7,0,107, + 3,0,114,114,0,124,0,0,106,8,0,131,0,0,1,124, + 4,0,124,0,0,95,7,0,110,0,0,116,9,0,131,0, + 0,114,147,0,124,0,0,106,10,0,125,5,0,124,3,0, + 106,11,0,131,0,0,125,6,0,110,15,0,124,0,0,106, + 12,0,125,5,0,124,3,0,125,6,0,124,6,0,124,5, + 0,107,6,0,114,45,1,116,13,0,124,0,0,106,4,0, + 124,3,0,131,2,0,125,7,0,116,14,0,124,7,0,131, + 1,0,114,45,1,120,91,0,124,0,0,106,15,0,68,93, + 71,0,92,2,0,125,8,0,125,9,0,100,4,0,124,8, + 0,23,125,10,0,116,13,0,124,7,0,124,10,0,131,2, + 0,125,11,0,116,16,0,124,11,0,131,1,0,114,214,0, + 124,9,0,124,1,0,124,11,0,131,2,0,124,7,0,103, + 1,0,102,2,0,83,113,214,0,87,100,7,0,125,2,0, + 113,45,1,110,0,0,120,95,0,124,0,0,106,15,0,68, + 93,84,0,92,2,0,125,8,0,125,9,0,124,6,0,124, + 8,0,23,124,5,0,107,6,0,114,55,1,116,13,0,124, + 0,0,106,4,0,124,3,0,124,8,0,23,131,2,0,125, + 11,0,116,16,0,124,11,0,131,1,0,114,139,1,124,9, + 0,124,1,0,124,11,0,131,2,0,103,0,0,102,2,0, + 83,113,55,1,113,55,1,87,124,2,0,114,162,1,100,8, + 0,124,7,0,103,1,0,102,2,0,83,100,8,0,103,0, + 0,102,2,0,83,40,9,0,0,0,117,125,0,0,0,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,117,1,0,0, + 0,46,105,2,0,0,0,105,1,0,0,0,117,8,0,0, + 0,95,95,105,110,105,116,95,95,70,105,255,255,255,255,84, + 78,40,19,0,0,0,117,5,0,0,0,70,97,108,115,101, + 117,10,0,0,0,114,112,97,114,116,105,116,105,111,110,117, + 3,0,0,0,95,111,115,117,4,0,0,0,115,116,97,116, + 117,4,0,0,0,112,97,116,104,117,8,0,0,0,115,116, + 95,109,116,105,109,101,117,7,0,0,0,79,83,69,114,114, + 111,114,117,11,0,0,0,95,112,97,116,104,95,109,116,105, + 109,101,117,11,0,0,0,95,102,105,108,108,95,99,97,99, + 104,101,117,11,0,0,0,95,114,101,108,97,120,95,99,97, + 115,101,117,19,0,0,0,95,114,101,108,97,120,101,100,95, + 112,97,116,104,95,99,97,99,104,101,117,5,0,0,0,108, + 111,119,101,114,117,11,0,0,0,95,112,97,116,104,95,99, + 97,99,104,101,117,10,0,0,0,95,112,97,116,104,95,106, + 111,105,110,117,11,0,0,0,95,112,97,116,104,95,105,115, + 100,105,114,117,8,0,0,0,95,108,111,97,100,101,114,115, + 117,12,0,0,0,95,112,97,116,104,95,105,115,102,105,108, + 101,117,4,0,0,0,84,114,117,101,117,4,0,0,0,78, + 111,110,101,40,12,0,0,0,117,4,0,0,0,115,101,108, + 102,117,8,0,0,0,102,117,108,108,110,97,109,101,117,12, + 0,0,0,105,115,95,110,97,109,101,115,112,97,99,101,117, + 11,0,0,0,116,97,105,108,95,109,111,100,117,108,101,117, + 5,0,0,0,109,116,105,109,101,117,5,0,0,0,99,97, + 99,104,101,117,12,0,0,0,99,97,99,104,101,95,109,111, + 100,117,108,101,117,9,0,0,0,98,97,115,101,95,112,97, + 116,104,117,6,0,0,0,115,117,102,102,105,120,117,6,0, + 0,0,108,111,97,100,101,114,117,13,0,0,0,105,110,105, + 116,95,102,105,108,101,110,97,109,101,117,9,0,0,0,102, + 117,108,108,95,112,97,116,104,40,0,0,0,0,40,0,0, + 0,0,117,29,0,0,0,60,102,114,111,122,101,110,32,105, + 109,112,111,114,116,108,105,98,46,95,98,111,111,116,115,116, + 114,97,112,62,117,11,0,0,0,102,105,110,100,95,108,111, + 97,100,101,114,70,5,0,0,115,62,0,0,0,0,3,6, + 1,19,1,3,1,25,1,13,1,11,1,15,1,10,1,12, + 2,9,1,9,1,15,2,9,1,6,2,12,1,18,1,12, + 1,22,1,10,1,15,1,12,1,26,4,12,2,22,1,16, + 1,22,1,12,1,26,1,6,1,13,1,117,22,0,0,0, + 70,105,108,101,70,105,110,100,101,114,46,102,105,110,100,95, + 108,111,97,100,101,114,99,1,0,0,0,0,0,0,0,9, + 0,0,0,12,0,0,0,67,0,0,0,115,255,0,0,0, + 124,0,0,106,0,0,125,1,0,121,19,0,116,1,0,106, + 2,0,124,1,0,131,1,0,125,2,0,87,110,24,0,4, + 116,3,0,107,10,0,114,54,0,1,1,1,103,0,0,125, + 2,0,89,110,1,0,88,116,4,0,106,5,0,106,6,0, + 100,1,0,131,1,0,115,91,0,116,7,0,124,2,0,131, + 1,0,124,0,0,95,8,0,110,111,0,116,7,0,131,0, + 0,125,3,0,120,90,0,124,2,0,68,93,82,0,125,4, + 0,124,4,0,106,9,0,100,2,0,131,1,0,92,3,0, + 125,5,0,125,6,0,125,7,0,124,6,0,114,170,0,100, + 3,0,106,10,0,124,5,0,124,7,0,106,11,0,131,0, + 0,131,2,0,125,8,0,110,6,0,124,5,0,125,8,0, + 124,3,0,106,12,0,124,8,0,131,1,0,1,113,107,0, + 87,124,3,0,124,0,0,95,8,0,116,4,0,106,5,0, + 106,6,0,116,13,0,131,1,0,114,251,0,116,7,0,100, + 4,0,100,5,0,132,0,0,124,2,0,68,131,1,0,131, + 1,0,124,0,0,95,14,0,110,0,0,100,6,0,83,40, + 7,0,0,0,117,68,0,0,0,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,117,3,0, + 0,0,119,105,110,117,1,0,0,0,46,117,5,0,0,0, + 123,125,46,123,125,99,1,0,0,0,0,0,0,0,2,0, + 0,0,2,0,0,0,115,0,0,0,115,27,0,0,0,124, + 0,0,93,17,0,125,1,0,124,1,0,106,0,0,131,0, + 0,86,1,113,3,0,100,0,0,83,40,1,0,0,0,78, + 40,1,0,0,0,117,5,0,0,0,108,111,119,101,114,40, + 2,0,0,0,117,2,0,0,0,46,48,117,2,0,0,0, + 102,110,40,0,0,0,0,40,0,0,0,0,117,29,0,0, + 0,60,102,114,111,122,101,110,32,105,109,112,111,114,116,108, + 105,98,46,95,98,111,111,116,115,116,114,97,112,62,117,9, + 0,0,0,60,103,101,110,101,120,112,114,62,140,5,0,0, + 115,2,0,0,0,6,0,117,41,0,0,0,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,103,101,110, + 101,120,112,114,62,78,40,15,0,0,0,117,4,0,0,0, + 112,97,116,104,117,3,0,0,0,95,111,115,117,7,0,0, + 0,108,105,115,116,100,105,114,117,17,0,0,0,70,105,108, + 101,78,111,116,70,111,117,110,100,69,114,114,111,114,117,3, + 0,0,0,115,121,115,117,8,0,0,0,112,108,97,116,102, + 111,114,109,117,10,0,0,0,115,116,97,114,116,115,119,105, + 116,104,117,3,0,0,0,115,101,116,117,11,0,0,0,95, + 112,97,116,104,95,99,97,99,104,101,117,9,0,0,0,112, + 97,114,116,105,116,105,111,110,117,6,0,0,0,102,111,114, + 109,97,116,117,5,0,0,0,108,111,119,101,114,117,3,0, + 0,0,97,100,100,117,27,0,0,0,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,117,19,0,0,0,95,114,101,108,97,120, + 101,100,95,112,97,116,104,95,99,97,99,104,101,40,9,0, + 0,0,117,4,0,0,0,115,101,108,102,117,4,0,0,0, + 112,97,116,104,117,8,0,0,0,99,111,110,116,101,110,116, + 115,117,21,0,0,0,108,111,119,101,114,95,115,117,102,102, + 105,120,95,99,111,110,116,101,110,116,115,117,4,0,0,0, + 105,116,101,109,117,4,0,0,0,110,97,109,101,117,3,0, + 0,0,100,111,116,117,6,0,0,0,115,117,102,102,105,120, + 117,8,0,0,0,110,101,119,95,110,97,109,101,40,0,0, + 0,0,40,0,0,0,0,117,29,0,0,0,60,102,114,111, + 122,101,110,32,105,109,112,111,114,116,108,105,98,46,95,98, + 111,111,116,115,116,114,97,112,62,117,11,0,0,0,95,102, + 105,108,108,95,99,97,99,104,101,112,5,0,0,115,34,0, + 0,0,0,2,9,1,3,1,19,1,13,2,11,3,18,1, + 18,7,9,1,13,1,24,1,6,1,27,2,6,1,17,1, + 9,1,18,1,117,22,0,0,0,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,3,0,0,0,3,0,0,0, + 7,0,0,0,115,25,0,0,0,135,0,0,135,1,0,102, + 2,0,100,1,0,100,2,0,134,0,0,125,2,0,124,2, + 0,83,40,3,0,0,0,117,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,1,0,0,0,4,0,0, + 0,19,0,0,0,115,46,0,0,0,116,0,0,124,0,0, + 131,1,0,115,33,0,116,1,0,100,1,0,100,2,0,124, + 0,0,131,1,1,130,1,0,110,0,0,136,0,0,124,0, + 0,136,1,0,140,1,0,83,40,3,0,0,0,117,45,0, + 0,0,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,117, + 30,0,0,0,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,117,4,0,0,0,112,97,116,104,40,2,0,0,0, + 117,11,0,0,0,95,112,97,116,104,95,105,115,100,105,114, + 117,11,0,0,0,73,109,112,111,114,116,69,114,114,111,114, + 40,1,0,0,0,117,4,0,0,0,112,97,116,104,40,2, + 0,0,0,117,3,0,0,0,99,108,115,117,14,0,0,0, + 108,111,97,100,101,114,95,100,101,116,97,105,108,115,40,0, + 0,0,0,117,29,0,0,0,60,102,114,111,122,101,110,32, + 105,109,112,111,114,116,108,105,98,46,95,98,111,111,116,115, + 116,114,97,112,62,117,24,0,0,0,112,97,116,104,95,104, + 111,111,107,95,102,111,114,95,70,105,108,101,70,105,110,100, + 101,114,152,5,0,0,115,6,0,0,0,0,2,12,1,21, + 1,117,54,0,0,0,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,40,0,0,0, + 0,40,3,0,0,0,117,3,0,0,0,99,108,115,117,14, + 0,0,0,108,111,97,100,101,114,95,100,101,116,97,105,108, + 115,117,24,0,0,0,112,97,116,104,95,104,111,111,107,95, + 102,111,114,95,70,105,108,101,70,105,110,100,101,114,40,0, + 0,0,0,40,2,0,0,0,117,3,0,0,0,99,108,115, + 117,14,0,0,0,108,111,97,100,101,114,95,100,101,116,97, + 105,108,115,117,29,0,0,0,60,102,114,111,122,101,110,32, + 105,109,112,111,114,116,108,105,98,46,95,98,111,111,116,115, + 116,114,97,112,62,117,9,0,0,0,112,97,116,104,95,104, + 111,111,107,142,5,0,0,115,4,0,0,0,0,10,21,6, + 117,20,0,0,0,70,105,108,101,70,105,110,100,101,114,46, + 112,97,116,104,95,104,111,111,107,99,1,0,0,0,0,0, + 0,0,1,0,0,0,2,0,0,0,67,0,0,0,115,14, + 0,0,0,100,1,0,124,0,0,106,0,0,102,1,0,22, + 83,40,2,0,0,0,78,117,14,0,0,0,70,105,108,101, + 70,105,110,100,101,114,40,37,114,41,40,1,0,0,0,117, + 4,0,0,0,112,97,116,104,40,1,0,0,0,117,4,0, + 0,0,115,101,108,102,40,0,0,0,0,40,0,0,0,0, + 117,29,0,0,0,60,102,114,111,122,101,110,32,105,109,112, + 111,114,116,108,105,98,46,95,98,111,111,116,115,116,114,97, + 112,62,117,8,0,0,0,95,95,114,101,112,114,95,95,160, + 5,0,0,115,2,0,0,0,0,1,117,19,0,0,0,70, + 105,108,101,70,105,110,100,101,114,46,95,95,114,101,112,114, + 95,95,78,40,13,0,0,0,117,8,0,0,0,95,95,110, + 97,109,101,95,95,117,10,0,0,0,95,95,109,111,100,117, + 108,101,95,95,117,12,0,0,0,95,95,113,117,97,108,110, + 97,109,101,95,95,117,7,0,0,0,95,95,100,111,99,95, + 95,117,8,0,0,0,95,95,105,110,105,116,95,95,117,17, + 0,0,0,105,110,118,97,108,105,100,97,116,101,95,99,97, + 99,104,101,115,117,17,0,0,0,95,102,105,110,100,95,109, + 111,100,117,108,101,95,115,104,105,109,117,11,0,0,0,102, + 105,110,100,95,109,111,100,117,108,101,117,11,0,0,0,102, + 105,110,100,95,108,111,97,100,101,114,117,11,0,0,0,95, + 102,105,108,108,95,99,97,99,104,101,117,11,0,0,0,99, + 108,97,115,115,109,101,116,104,111,100,117,9,0,0,0,112, + 97,116,104,95,104,111,111,107,117,8,0,0,0,95,95,114, + 101,112,114,95,95,40,1,0,0,0,117,10,0,0,0,95, + 95,108,111,99,97,108,115,95,95,40,0,0,0,0,40,0, + 0,0,0,117,29,0,0,0,60,102,114,111,122,101,110,32, + 105,109,112,111,114,116,108,105,98,46,95,98,111,111,116,115, + 116,114,97,112,62,117,10,0,0,0,70,105,108,101,70,105, + 110,100,101,114,41,5,0,0,115,16,0,0,0,16,7,6, + 2,12,14,12,4,6,2,12,42,12,30,18,18,117,10,0, + 0,0,70,105,108,101,70,105,110,100,101,114,99,1,0,0, + 0,0,0,0,0,1,0,0,0,2,0,0,0,66,0,0, + 0,115,50,0,0,0,124,0,0,69,101,0,0,90,1,0, + 100,0,0,90,2,0,100,1,0,90,3,0,100,2,0,100, + 3,0,132,0,0,90,4,0,100,4,0,100,5,0,132,0, + 0,90,5,0,100,6,0,83,40,7,0,0,0,117,18,0, + 0,0,95,73,109,112,111,114,116,76,111,99,107,67,111,110, + 116,101,120,116,117,36,0,0,0,67,111,110,116,101,120,116, + 32,109,97,110,97,103,101,114,32,102,111,114,32,116,104,101, + 32,105,109,112,111,114,116,32,108,111,99,107,46,99,1,0, + 0,0,0,0,0,0,1,0,0,0,1,0,0,0,67,0, + 0,0,115,14,0,0,0,116,0,0,106,1,0,131,0,0, + 1,100,1,0,83,40,2,0,0,0,117,24,0,0,0,65, + 99,113,117,105,114,101,32,116,104,101,32,105,109,112,111,114, + 116,32,108,111,99,107,46,78,40,2,0,0,0,117,4,0, + 0,0,95,105,109,112,117,12,0,0,0,97,99,113,117,105, + 114,101,95,108,111,99,107,40,1,0,0,0,117,4,0,0, + 0,115,101,108,102,40,0,0,0,0,40,0,0,0,0,117, + 29,0,0,0,60,102,114,111,122,101,110,32,105,109,112,111, + 114,116,108,105,98,46,95,98,111,111,116,115,116,114,97,112, + 62,117,9,0,0,0,95,95,101,110,116,101,114,95,95,170, + 5,0,0,115,2,0,0,0,0,2,117,28,0,0,0,95, + 73,109,112,111,114,116,76,111,99,107,67,111,110,116,101,120, + 116,46,95,95,101,110,116,101,114,95,95,99,4,0,0,0, + 0,0,0,0,4,0,0,0,1,0,0,0,67,0,0,0, + 115,14,0,0,0,116,0,0,106,1,0,131,0,0,1,100, + 1,0,83,40,2,0,0,0,117,60,0,0,0,82,101,108, + 101,97,115,101,32,116,104,101,32,105,109,112,111,114,116,32, + 108,111,99,107,32,114,101,103,97,114,100,108,101,115,115,32, + 111,102,32,97,110,121,32,114,97,105,115,101,100,32,101,120, + 99,101,112,116,105,111,110,115,46,78,40,2,0,0,0,117, + 4,0,0,0,95,105,109,112,117,12,0,0,0,114,101,108, + 101,97,115,101,95,108,111,99,107,40,4,0,0,0,117,4, + 0,0,0,115,101,108,102,117,8,0,0,0,101,120,99,95, + 116,121,112,101,117,9,0,0,0,101,120,99,95,118,97,108, + 117,101,117,13,0,0,0,101,120,99,95,116,114,97,99,101, + 98,97,99,107,40,0,0,0,0,40,0,0,0,0,117,29, + 0,0,0,60,102,114,111,122,101,110,32,105,109,112,111,114, + 116,108,105,98,46,95,98,111,111,116,115,116,114,97,112,62, + 117,8,0,0,0,95,95,101,120,105,116,95,95,174,5,0, + 0,115,2,0,0,0,0,2,117,27,0,0,0,95,73,109, + 112,111,114,116,76,111,99,107,67,111,110,116,101,120,116,46, + 95,95,101,120,105,116,95,95,78,40,6,0,0,0,117,8, + 0,0,0,95,95,110,97,109,101,95,95,117,10,0,0,0, + 95,95,109,111,100,117,108,101,95,95,117,12,0,0,0,95, + 95,113,117,97,108,110,97,109,101,95,95,117,7,0,0,0, + 95,95,100,111,99,95,95,117,9,0,0,0,95,95,101,110, + 116,101,114,95,95,117,8,0,0,0,95,95,101,120,105,116, + 95,95,40,1,0,0,0,117,10,0,0,0,95,95,108,111, + 99,97,108,115,95,95,40,0,0,0,0,40,0,0,0,0, + 117,29,0,0,0,60,102,114,111,122,101,110,32,105,109,112, + 111,114,116,108,105,98,46,95,98,111,111,116,115,116,114,97, + 112,62,117,18,0,0,0,95,73,109,112,111,114,116,76,111, + 99,107,67,111,110,116,101,120,116,166,5,0,0,115,6,0, + 0,0,16,2,6,2,12,4,117,18,0,0,0,95,73,109, + 112,111,114,116,76,111,99,107,67,111,110,116,101,120,116,99, + 3,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0, + 67,0,0,0,115,91,0,0,0,124,1,0,106,0,0,100, + 1,0,124,2,0,100,2,0,24,131,2,0,125,3,0,116, + 1,0,124,3,0,131,1,0,124,2,0,107,0,0,114,55, + 0,116,2,0,100,3,0,131,1,0,130,1,0,110,0,0, + 124,3,0,100,4,0,25,125,4,0,124,0,0,114,87,0, + 100,5,0,106,3,0,124,4,0,124,0,0,131,2,0,83, + 124,4,0,83,40,6,0,0,0,117,50,0,0,0,82,101, + 115,111,108,118,101,32,97,32,114,101,108,97,116,105,118,101, + 32,109,111,100,117,108,101,32,110,97,109,101,32,116,111,32, + 97,110,32,97,98,115,111,108,117,116,101,32,111,110,101,46, + 117,1,0,0,0,46,105,1,0,0,0,117,50,0,0,0, + 97,116,116,101,109,112,116,101,100,32,114,101,108,97,116,105, + 118,101,32,105,109,112,111,114,116,32,98,101,121,111,110,100, + 32,116,111,112,45,108,101,118,101,108,32,112,97,99,107,97, + 103,101,105,0,0,0,0,117,5,0,0,0,123,125,46,123, + 125,40,4,0,0,0,117,6,0,0,0,114,115,112,108,105, + 116,117,3,0,0,0,108,101,110,117,10,0,0,0,86,97, + 108,117,101,69,114,114,111,114,117,6,0,0,0,102,111,114, + 109,97,116,40,5,0,0,0,117,4,0,0,0,110,97,109, + 101,117,7,0,0,0,112,97,99,107,97,103,101,117,5,0, + 0,0,108,101,118,101,108,117,4,0,0,0,98,105,116,115, + 117,4,0,0,0,98,97,115,101,40,0,0,0,0,40,0, + 0,0,0,117,29,0,0,0,60,102,114,111,122,101,110,32, + 105,109,112,111,114,116,108,105,98,46,95,98,111,111,116,115, + 116,114,97,112,62,117,13,0,0,0,95,114,101,115,111,108, + 118,101,95,110,97,109,101,179,5,0,0,115,10,0,0,0, + 0,2,22,1,18,1,15,1,10,1,117,13,0,0,0,95, + 114,101,115,111,108,118,101,95,110,97,109,101,99,2,0,0, + 0,0,0,0,0,4,0,0,0,11,0,0,0,67,0,0, + 0,115,138,0,0,0,116,0,0,106,1,0,115,28,0,116, + 2,0,106,3,0,100,1,0,116,4,0,131,2,0,1,110, + 0,0,120,103,0,116,0,0,106,1,0,68,93,88,0,125, + 2,0,116,5,0,131,0,0,143,23,0,1,124,2,0,106, + 6,0,124,0,0,124,1,0,131,2,0,125,3,0,87,100, + 2,0,81,88,124,3,0,100,2,0,107,9,0,114,38,0, + 124,0,0,116,0,0,106,8,0,107,7,0,114,109,0,124, + 3,0,83,116,0,0,106,8,0,124,0,0,25,106,9,0, + 83,113,38,0,113,38,0,87,100,2,0,83,100,2,0,83, + 40,3,0,0,0,117,23,0,0,0,70,105,110,100,32,97, + 32,109,111,100,117,108,101,39,115,32,108,111,97,100,101,114, + 46,117,22,0,0,0,115,121,115,46,109,101,116,97,95,112, + 97,116,104,32,105,115,32,101,109,112,116,121,78,40,10,0, + 0,0,117,3,0,0,0,115,121,115,117,9,0,0,0,109, + 101,116,97,95,112,97,116,104,117,9,0,0,0,95,119,97, + 114,110,105,110,103,115,117,4,0,0,0,119,97,114,110,117, + 13,0,0,0,73,109,112,111,114,116,87,97,114,110,105,110, + 103,117,18,0,0,0,95,73,109,112,111,114,116,76,111,99, + 107,67,111,110,116,101,120,116,117,11,0,0,0,102,105,110, + 100,95,109,111,100,117,108,101,117,4,0,0,0,78,111,110, + 101,117,7,0,0,0,109,111,100,117,108,101,115,117,10,0, + 0,0,95,95,108,111,97,100,101,114,95,95,40,4,0,0, + 0,117,4,0,0,0,110,97,109,101,117,4,0,0,0,112, + 97,116,104,117,6,0,0,0,102,105,110,100,101,114,117,6, + 0,0,0,108,111,97,100,101,114,40,0,0,0,0,40,0, + 0,0,0,117,29,0,0,0,60,102,114,111,122,101,110,32, + 105,109,112,111,114,116,108,105,98,46,95,98,111,111,116,115, + 116,114,97,112,62,117,12,0,0,0,95,102,105,110,100,95, + 109,111,100,117,108,101,188,5,0,0,115,20,0,0,0,0, + 2,9,1,19,1,16,1,10,1,24,1,12,2,15,1,4, + 2,21,2,117,12,0,0,0,95,102,105,110,100,95,109,111, + 100,117,108,101,99,3,0,0,0,0,0,0,0,4,0,0, + 0,4,0,0,0,67,0,0,0,115,194,0,0,0,116,0, + 0,124,0,0,116,1,0,131,2,0,115,45,0,116,2,0, + 100,1,0,106,3,0,116,4,0,124,0,0,131,1,0,131, + 1,0,131,1,0,130,1,0,110,0,0,124,2,0,100,2, + 0,107,0,0,114,72,0,116,5,0,100,3,0,131,1,0, + 130,1,0,110,0,0,124,1,0,114,156,0,116,0,0,124, + 1,0,116,1,0,131,2,0,115,108,0,116,2,0,100,4, + 0,131,1,0,130,1,0,113,156,0,124,1,0,116,6,0, + 106,7,0,107,7,0,114,156,0,100,5,0,125,3,0,116, + 8,0,124,3,0,106,3,0,124,1,0,131,1,0,131,1, + 0,130,1,0,113,156,0,110,0,0,124,0,0,12,114,190, + 0,124,2,0,100,2,0,107,2,0,114,190,0,116,5,0, + 100,6,0,131,1,0,130,1,0,110,0,0,100,7,0,83, + 40,8,0,0,0,117,28,0,0,0,86,101,114,105,102,121, + 32,97,114,103,117,109,101,110,116,115,32,97,114,101,32,34, + 115,97,110,101,34,46,117,31,0,0,0,109,111,100,117,108, + 101,32,110,97,109,101,32,109,117,115,116,32,98,101,32,115, + 116,114,44,32,110,111,116,32,123,125,105,0,0,0,0,117, + 18,0,0,0,108,101,118,101,108,32,109,117,115,116,32,98, + 101,32,62,61,32,48,117,31,0,0,0,95,95,112,97,99, + 107,97,103,101,95,95,32,110,111,116,32,115,101,116,32,116, + 111,32,97,32,115,116,114,105,110,103,117,61,0,0,0,80, + 97,114,101,110,116,32,109,111,100,117,108,101,32,123,33,114, + 125,32,110,111,116,32,108,111,97,100,101,100,44,32,99,97, + 110,110,111,116,32,112,101,114,102,111,114,109,32,114,101,108, + 97,116,105,118,101,32,105,109,112,111,114,116,117,17,0,0, + 0,69,109,112,116,121,32,109,111,100,117,108,101,32,110,97, + 109,101,78,40,9,0,0,0,117,10,0,0,0,105,115,105, + 110,115,116,97,110,99,101,117,3,0,0,0,115,116,114,117, + 9,0,0,0,84,121,112,101,69,114,114,111,114,117,6,0, + 0,0,102,111,114,109,97,116,117,4,0,0,0,116,121,112, + 101,117,10,0,0,0,86,97,108,117,101,69,114,114,111,114, + 117,3,0,0,0,115,121,115,117,7,0,0,0,109,111,100, + 117,108,101,115,117,11,0,0,0,83,121,115,116,101,109,69, + 114,114,111,114,40,4,0,0,0,117,4,0,0,0,110,97, + 109,101,117,7,0,0,0,112,97,99,107,97,103,101,117,5, + 0,0,0,108,101,118,101,108,117,3,0,0,0,109,115,103, + 40,0,0,0,0,40,0,0,0,0,117,29,0,0,0,60, + 102,114,111,122,101,110,32,105,109,112,111,114,116,108,105,98, + 46,95,98,111,111,116,115,116,114,97,112,62,117,13,0,0, + 0,95,115,97,110,105,116,121,95,99,104,101,99,107,205,5, + 0,0,115,24,0,0,0,0,2,15,1,30,1,12,1,15, + 1,6,1,15,1,15,1,15,1,6,2,27,1,19,1,117, + 13,0,0,0,95,115,97,110,105,116,121,95,99,104,101,99, + 107,117,20,0,0,0,78,111,32,109,111,100,117,108,101,32, + 110,97,109,101,100,32,123,33,114,125,99,2,0,0,0,0, + 0,0,0,9,0,0,0,27,0,0,0,67,0,0,0,115, + 12,2,0,0,100,0,0,125,2,0,124,0,0,106,1,0, + 100,1,0,131,1,0,100,2,0,25,125,3,0,124,3,0, + 114,178,0,124,3,0,116,2,0,106,3,0,107,7,0,114, + 62,0,116,4,0,124,1,0,124,3,0,131,2,0,1,110, + 0,0,124,0,0,116,2,0,106,3,0,107,6,0,114,88, + 0,116,2,0,106,3,0,124,0,0,25,83,116,2,0,106, + 3,0,124,3,0,25,125,4,0,121,13,0,124,4,0,106, + 5,0,125,2,0,87,113,178,0,4,116,6,0,107,10,0, + 114,174,0,1,1,1,116,7,0,100,3,0,23,106,8,0, + 124,0,0,124,3,0,131,2,0,125,5,0,116,9,0,124, + 5,0,100,4,0,124,0,0,131,1,1,130,1,0,89,113, + 178,0,88,110,0,0,116,10,0,124,0,0,124,2,0,131, + 2,0,125,6,0,124,6,0,100,0,0,107,8,0,114,250, + 0,116,9,0,116,7,0,106,8,0,124,0,0,131,1,0, + 100,4,0,124,0,0,131,1,1,125,7,0,100,10,0,124, + 7,0,95,12,0,124,7,0,130,1,0,110,47,0,124,0, + 0,116,2,0,106,3,0,107,7,0,114,41,1,124,6,0, + 106,13,0,124,0,0,131,1,0,1,116,14,0,100,5,0, + 124,0,0,124,6,0,131,3,0,1,110,0,0,116,2,0, + 106,3,0,124,0,0,25,125,8,0,124,3,0,114,105,1, + 116,2,0,106,3,0,124,3,0,25,125,4,0,116,15,0, + 124,4,0,124,0,0,106,1,0,100,1,0,131,1,0,100, + 6,0,25,124,8,0,131,3,0,1,110,0,0,116,16,0, + 124,8,0,100,7,0,100,0,0,131,3,0,100,0,0,107, + 8,0,114,212,1,121,59,0,124,8,0,106,17,0,124,8, + 0,95,18,0,116,19,0,124,8,0,100,8,0,131,2,0, + 115,187,1,124,8,0,106,18,0,106,1,0,100,1,0,131, + 1,0,100,2,0,25,124,8,0,95,18,0,110,0,0,87, + 113,212,1,4,116,6,0,107,10,0,114,208,1,1,1,1, + 89,113,212,1,88,110,0,0,116,19,0,124,8,0,100,9, + 0,131,2,0,115,8,2,121,13,0,124,6,0,124,8,0, + 95,20,0,87,113,8,2,4,116,6,0,107,10,0,114,4, + 2,1,1,1,89,113,8,2,88,110,0,0,124,8,0,83, + 40,11,0,0,0,78,117,1,0,0,0,46,105,0,0,0, + 0,117,21,0,0,0,59,32,123,125,32,105,115,32,110,111, + 116,32,97,32,112,97,99,107,97,103,101,117,4,0,0,0, + 110,97,109,101,117,18,0,0,0,105,109,112,111,114,116,32, + 123,33,114,125,32,35,32,123,33,114,125,105,2,0,0,0, + 117,11,0,0,0,95,95,112,97,99,107,97,103,101,95,95, + 117,8,0,0,0,95,95,112,97,116,104,95,95,117,10,0, + 0,0,95,95,108,111,97,100,101,114,95,95,84,40,21,0, + 0,0,117,4,0,0,0,78,111,110,101,117,10,0,0,0, + 114,112,97,114,116,105,116,105,111,110,117,3,0,0,0,115, + 121,115,117,7,0,0,0,109,111,100,117,108,101,115,117,25, + 0,0,0,95,99,97,108,108,95,119,105,116,104,95,102,114, + 97,109,101,115,95,114,101,109,111,118,101,100,117,8,0,0, + 0,95,95,112,97,116,104,95,95,117,14,0,0,0,65,116, + 116,114,105,98,117,116,101,69,114,114,111,114,117,8,0,0, + 0,95,69,82,82,95,77,83,71,117,6,0,0,0,102,111, + 114,109,97,116,117,11,0,0,0,73,109,112,111,114,116,69, + 114,114,111,114,117,12,0,0,0,95,102,105,110,100,95,109, + 111,100,117,108,101,117,4,0,0,0,84,114,117,101,117,10, + 0,0,0,95,110,111,116,95,102,111,117,110,100,117,11,0, + 0,0,108,111,97,100,95,109,111,100,117,108,101,117,16,0, + 0,0,95,118,101,114,98,111,115,101,95,109,101,115,115,97, + 103,101,117,7,0,0,0,115,101,116,97,116,116,114,117,7, + 0,0,0,103,101,116,97,116,116,114,117,8,0,0,0,95, + 95,110,97,109,101,95,95,117,11,0,0,0,95,95,112,97, + 99,107,97,103,101,95,95,117,7,0,0,0,104,97,115,97, + 116,116,114,117,10,0,0,0,95,95,108,111,97,100,101,114, + 95,95,40,9,0,0,0,117,4,0,0,0,110,97,109,101, + 117,7,0,0,0,105,109,112,111,114,116,95,117,4,0,0, + 0,112,97,116,104,117,6,0,0,0,112,97,114,101,110,116, + 117,13,0,0,0,112,97,114,101,110,116,95,109,111,100,117, + 108,101,117,3,0,0,0,109,115,103,117,6,0,0,0,108, + 111,97,100,101,114,117,3,0,0,0,101,120,99,117,6,0, + 0,0,109,111,100,117,108,101,40,0,0,0,0,40,0,0, + 0,0,117,29,0,0,0,60,102,114,111,122,101,110,32,105, + 109,112,111,114,116,108,105,98,46,95,98,111,111,116,115,116, + 114,97,112,62,117,23,0,0,0,95,102,105,110,100,95,97, + 110,100,95,108,111,97,100,95,117,110,108,111,99,107,101,100, + 224,5,0,0,115,76,0,0,0,0,1,6,1,19,1,6, + 1,15,1,16,2,15,1,11,2,13,1,3,1,13,1,13, + 1,22,1,26,1,15,1,12,1,27,3,9,1,9,1,15, + 2,13,1,19,2,13,1,6,2,13,1,32,2,24,1,3, + 1,12,1,15,1,32,1,13,1,8,2,15,1,3,1,13, + 1,13,1,8,1,117,23,0,0,0,95,102,105,110,100,95, + 97,110,100,95,108,111,97,100,95,117,110,108,111,99,107,101, + 100,99,2,0,0,0,0,0,0,0,3,0,0,0,18,0, + 0,0,67,0,0,0,115,75,0,0,0,122,16,0,116,0, + 0,124,0,0,131,1,0,125,2,0,87,100,1,0,116,1, + 0,106,2,0,131,0,0,1,88,124,2,0,106,3,0,131, + 0,0,1,122,17,0,116,4,0,124,0,0,124,1,0,131, + 2,0,83,87,100,1,0,124,2,0,106,5,0,131,0,0, + 1,88,100,1,0,83,40,2,0,0,0,117,54,0,0,0, + 70,105,110,100,32,97,110,100,32,108,111,97,100,32,116,104, + 101,32,109,111,100,117,108,101,44,32,97,110,100,32,114,101, + 108,101,97,115,101,32,116,104,101,32,105,109,112,111,114,116, + 32,108,111,99,107,46,78,40,6,0,0,0,117,16,0,0, + 0,95,103,101,116,95,109,111,100,117,108,101,95,108,111,99, + 107,117,4,0,0,0,95,105,109,112,117,12,0,0,0,114, + 101,108,101,97,115,101,95,108,111,99,107,117,7,0,0,0, + 97,99,113,117,105,114,101,117,23,0,0,0,95,102,105,110, + 100,95,97,110,100,95,108,111,97,100,95,117,110,108,111,99, + 107,101,100,117,7,0,0,0,114,101,108,101,97,115,101,40, + 3,0,0,0,117,4,0,0,0,110,97,109,101,117,7,0, + 0,0,105,109,112,111,114,116,95,117,4,0,0,0,108,111, + 99,107,40,0,0,0,0,40,0,0,0,0,117,29,0,0, + 0,60,102,114,111,122,101,110,32,105,109,112,111,114,116,108, + 105,98,46,95,98,111,111,116,115,116,114,97,112,62,117,14, + 0,0,0,95,102,105,110,100,95,97,110,100,95,108,111,97, + 100,18,6,0,0,115,14,0,0,0,0,2,3,1,16,2, + 11,1,10,1,3,1,17,2,117,14,0,0,0,95,102,105, + 110,100,95,97,110,100,95,108,111,97,100,99,3,0,0,0, + 0,0,0,0,5,0,0,0,4,0,0,0,67,0,0,0, + 115,172,0,0,0,116,0,0,124,0,0,124,1,0,124,2, + 0,131,3,0,1,124,2,0,100,1,0,107,4,0,114,49, + 0,116,1,0,124,0,0,124,1,0,124,2,0,131,3,0, + 125,0,0,110,0,0,116,2,0,106,3,0,131,0,0,1, + 124,0,0,116,4,0,106,5,0,107,7,0,114,87,0,116, + 6,0,124,0,0,116,7,0,131,2,0,83,116,4,0,106, + 5,0,124,0,0,25,125,3,0,124,3,0,100,4,0,107, + 8,0,114,158,0,116,2,0,106,9,0,131,0,0,1,100, + 2,0,106,10,0,124,0,0,131,1,0,125,4,0,116,11, + 0,124,4,0,100,3,0,124,0,0,131,1,1,130,1,0, + 110,0,0,116,12,0,124,0,0,131,1,0,1,124,3,0, + 83,40,5,0,0,0,117,50,1,0,0,73,109,112,111,114, + 116,32,97,110,100,32,114,101,116,117,114,110,32,116,104,101, + 32,109,111,100,117,108,101,32,98,97,115,101,100,32,111,110, + 32,105,116,115,32,110,97,109,101,44,32,116,104,101,32,112, + 97,99,107,97,103,101,32,116,104,101,32,99,97,108,108,32, + 105,115,10,32,32,32,32,98,101,105,110,103,32,109,97,100, + 101,32,102,114,111,109,44,32,97,110,100,32,116,104,101,32, + 108,101,118,101,108,32,97,100,106,117,115,116,109,101,110,116, + 46,10,10,32,32,32,32,84,104,105,115,32,102,117,110,99, + 116,105,111,110,32,114,101,112,114,101,115,101,110,116,115,32, + 116,104,101,32,103,114,101,97,116,101,115,116,32,99,111,109, + 109,111,110,32,100,101,110,111,109,105,110,97,116,111,114,32, + 111,102,32,102,117,110,99,116,105,111,110,97,108,105,116,121, + 10,32,32,32,32,98,101,116,119,101,101,110,32,105,109,112, + 111,114,116,95,109,111,100,117,108,101,32,97,110,100,32,95, + 95,105,109,112,111,114,116,95,95,46,32,84,104,105,115,32, + 105,110,99,108,117,100,101,115,32,115,101,116,116,105,110,103, + 32,95,95,112,97,99,107,97,103,101,95,95,32,105,102,10, + 32,32,32,32,116,104,101,32,108,111,97,100,101,114,32,100, + 105,100,32,110,111,116,46,10,10,32,32,32,32,105,0,0, + 0,0,117,40,0,0,0,105,109,112,111,114,116,32,111,102, + 32,123,125,32,104,97,108,116,101,100,59,32,78,111,110,101, + 32,105,110,32,115,121,115,46,109,111,100,117,108,101,115,117, + 4,0,0,0,110,97,109,101,78,40,13,0,0,0,117,13, + 0,0,0,95,115,97,110,105,116,121,95,99,104,101,99,107, + 117,13,0,0,0,95,114,101,115,111,108,118,101,95,110,97, + 109,101,117,4,0,0,0,95,105,109,112,117,12,0,0,0, + 97,99,113,117,105,114,101,95,108,111,99,107,117,3,0,0, + 0,115,121,115,117,7,0,0,0,109,111,100,117,108,101,115, + 117,14,0,0,0,95,102,105,110,100,95,97,110,100,95,108, + 111,97,100,117,11,0,0,0,95,103,99,100,95,105,109,112, + 111,114,116,117,4,0,0,0,78,111,110,101,117,12,0,0, + 0,114,101,108,101,97,115,101,95,108,111,99,107,117,6,0, + 0,0,102,111,114,109,97,116,117,11,0,0,0,73,109,112, + 111,114,116,69,114,114,111,114,117,19,0,0,0,95,108,111, + 99,107,95,117,110,108,111,99,107,95,109,111,100,117,108,101, + 40,5,0,0,0,117,4,0,0,0,110,97,109,101,117,7, + 0,0,0,112,97,99,107,97,103,101,117,5,0,0,0,108, + 101,118,101,108,117,6,0,0,0,109,111,100,117,108,101,117, + 7,0,0,0,109,101,115,115,97,103,101,40,0,0,0,0, + 40,0,0,0,0,117,29,0,0,0,60,102,114,111,122,101, + 110,32,105,109,112,111,114,116,108,105,98,46,95,98,111,111, + 116,115,116,114,97,112,62,117,11,0,0,0,95,103,99,100, + 95,105,109,112,111,114,116,31,6,0,0,115,28,0,0,0, + 0,9,16,1,12,1,21,1,10,1,15,1,13,1,13,1, + 12,1,10,1,6,1,9,1,21,1,10,1,117,11,0,0, + 0,95,103,99,100,95,105,109,112,111,114,116,99,3,0,0, + 0,0,0,0,0,5,0,0,0,17,0,0,0,67,0,0, + 0,115,233,0,0,0,116,0,0,124,0,0,100,1,0,131, + 2,0,114,229,0,100,2,0,124,1,0,107,6,0,114,89, + 0,116,1,0,124,1,0,131,1,0,125,1,0,124,1,0, + 106,2,0,100,2,0,131,1,0,1,116,0,0,124,0,0, + 100,3,0,131,2,0,114,89,0,124,1,0,106,3,0,124, + 0,0,106,4,0,131,1,0,1,113,89,0,110,0,0,120, + 137,0,124,1,0,68,93,126,0,125,3,0,116,0,0,124, + 0,0,124,3,0,131,2,0,115,96,0,121,32,0,116,5, + 0,124,2,0,100,4,0,106,6,0,124,0,0,106,7,0, + 124,3,0,131,2,0,131,2,0,1,87,113,222,0,4,116, + 8,0,107,10,0,114,218,0,1,125,4,0,1,122,35,0, + 116,0,0,124,4,0,100,5,0,131,2,0,114,197,0,124, + 4,0,106,9,0,114,197,0,110,3,0,130,0,0,87,89, + 100,6,0,100,6,0,125,4,0,126,4,0,88,113,222,0, + 88,113,96,0,113,96,0,87,110,0,0,124,0,0,83,40, + 7,0,0,0,117,238,0,0,0,70,105,103,117,114,101,32, + 111,117,116,32,119,104,97,116,32,95,95,105,109,112,111,114, + 116,95,95,32,115,104,111,117,108,100,32,114,101,116,117,114, + 110,46,10,10,32,32,32,32,84,104,101,32,105,109,112,111, + 114,116,95,32,112,97,114,97,109,101,116,101,114,32,105,115, + 32,97,32,99,97,108,108,97,98,108,101,32,119,104,105,99, + 104,32,116,97,107,101,115,32,116,104,101,32,110,97,109,101, + 32,111,102,32,109,111,100,117,108,101,32,116,111,10,32,32, + 32,32,105,109,112,111,114,116,46,32,73,116,32,105,115,32, + 114,101,113,117,105,114,101,100,32,116,111,32,100,101,99,111, + 117,112,108,101,32,116,104,101,32,102,117,110,99,116,105,111, + 110,32,102,114,111,109,32,97,115,115,117,109,105,110,103,32, + 105,109,112,111,114,116,108,105,98,39,115,10,32,32,32,32, + 105,109,112,111,114,116,32,105,109,112,108,101,109,101,110,116, + 97,116,105,111,110,32,105,115,32,100,101,115,105,114,101,100, + 46,10,10,32,32,32,32,117,8,0,0,0,95,95,112,97, + 116,104,95,95,117,1,0,0,0,42,117,7,0,0,0,95, + 95,97,108,108,95,95,117,5,0,0,0,123,125,46,123,125, + 117,10,0,0,0,95,110,111,116,95,102,111,117,110,100,78, + 40,10,0,0,0,117,7,0,0,0,104,97,115,97,116,116, + 114,117,4,0,0,0,108,105,115,116,117,6,0,0,0,114, + 101,109,111,118,101,117,6,0,0,0,101,120,116,101,110,100, + 117,7,0,0,0,95,95,97,108,108,95,95,117,25,0,0, + 0,95,99,97,108,108,95,119,105,116,104,95,102,114,97,109, + 101,115,95,114,101,109,111,118,101,100,117,6,0,0,0,102, + 111,114,109,97,116,117,8,0,0,0,95,95,110,97,109,101, + 95,95,117,11,0,0,0,73,109,112,111,114,116,69,114,114, + 111,114,117,10,0,0,0,95,110,111,116,95,102,111,117,110, + 100,40,5,0,0,0,117,6,0,0,0,109,111,100,117,108, + 101,117,8,0,0,0,102,114,111,109,108,105,115,116,117,7, + 0,0,0,105,109,112,111,114,116,95,117,1,0,0,0,120, + 117,3,0,0,0,101,120,99,40,0,0,0,0,40,0,0, + 0,0,117,29,0,0,0,60,102,114,111,122,101,110,32,105, + 109,112,111,114,116,108,105,98,46,95,98,111,111,116,115,116, + 114,97,112,62,117,16,0,0,0,95,104,97,110,100,108,101, + 95,102,114,111,109,108,105,115,116,55,6,0,0,115,32,0, + 0,0,0,10,15,1,12,1,12,1,13,1,15,1,22,1, + 13,1,15,1,3,1,6,1,26,1,18,6,24,1,3,2, + 32,1,117,16,0,0,0,95,104,97,110,100,108,101,95,102, + 114,111,109,108,105,115,116,99,1,0,0,0,0,0,0,0, + 2,0,0,0,2,0,0,0,67,0,0,0,115,78,0,0, + 0,124,0,0,106,0,0,100,1,0,131,1,0,125,1,0, + 124,1,0,100,6,0,107,8,0,114,74,0,124,0,0,100, + 2,0,25,125,1,0,100,3,0,124,0,0,107,7,0,114, + 74,0,124,1,0,106,2,0,100,4,0,131,1,0,100,5, + 0,25,125,1,0,113,74,0,110,0,0,124,1,0,83,40, + 7,0,0,0,117,167,0,0,0,67,97,108,99,117,108,97, + 116,101,32,119,104,97,116,32,95,95,112,97,99,107,97,103, + 101,95,95,32,115,104,111,117,108,100,32,98,101,46,10,10, + 32,32,32,32,95,95,112,97,99,107,97,103,101,95,95,32, + 105,115,32,110,111,116,32,103,117,97,114,97,110,116,101,101, + 100,32,116,111,32,98,101,32,100,101,102,105,110,101,100,32, + 111,114,32,99,111,117,108,100,32,98,101,32,115,101,116,32, + 116,111,32,78,111,110,101,10,32,32,32,32,116,111,32,114, + 101,112,114,101,115,101,110,116,32,116,104,97,116,32,105,116, + 115,32,112,114,111,112,101,114,32,118,97,108,117,101,32,105, + 115,32,117,110,107,110,111,119,110,46,10,10,32,32,32,32, + 117,11,0,0,0,95,95,112,97,99,107,97,103,101,95,95, + 117,8,0,0,0,95,95,110,97,109,101,95,95,117,8,0, + 0,0,95,95,112,97,116,104,95,95,117,1,0,0,0,46, + 105,0,0,0,0,78,40,3,0,0,0,117,3,0,0,0, + 103,101,116,117,4,0,0,0,78,111,110,101,117,10,0,0, + 0,114,112,97,114,116,105,116,105,111,110,40,2,0,0,0, + 117,7,0,0,0,103,108,111,98,97,108,115,117,7,0,0, + 0,112,97,99,107,97,103,101,40,0,0,0,0,40,0,0, + 0,0,117,29,0,0,0,60,102,114,111,122,101,110,32,105, + 109,112,111,114,116,108,105,98,46,95,98,111,111,116,115,116, + 114,97,112,62,117,17,0,0,0,95,99,97,108,99,95,95, + 95,112,97,99,107,97,103,101,95,95,89,6,0,0,115,12, + 0,0,0,0,7,15,1,12,1,10,1,12,1,25,1,117, + 17,0,0,0,95,99,97,108,99,95,95,95,112,97,99,107, + 97,103,101,95,95,99,0,0,0,0,0,0,0,0,3,0, + 0,0,3,0,0,0,67,0,0,0,115,55,0,0,0,116, + 0,0,116,1,0,106,2,0,131,0,0,102,2,0,125,0, + 0,116,3,0,116,4,0,102,2,0,125,1,0,116,5,0, + 116,6,0,102,2,0,125,2,0,124,0,0,124,1,0,124, + 2,0,103,3,0,83,40,1,0,0,0,117,111,0,0,0, + 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,44,32,97,108,108,111,119,95, + 112,97,99,107,97,103,101,115,41,46,10,32,32,32,32,40, + 7,0,0,0,117,19,0,0,0,69,120,116,101,110,115,105, + 111,110,70,105,108,101,76,111,97,100,101,114,117,4,0,0, + 0,95,105,109,112,117,18,0,0,0,101,120,116,101,110,115, + 105,111,110,95,115,117,102,102,105,120,101,115,117,16,0,0, + 0,83,111,117,114,99,101,70,105,108,101,76,111,97,100,101, + 114,117,15,0,0,0,83,79,85,82,67,69,95,83,85,70, + 70,73,88,69,83,117,20,0,0,0,83,111,117,114,99,101, + 108,101,115,115,70,105,108,101,76,111,97,100,101,114,117,17, + 0,0,0,66,89,84,69,67,79,68,69,95,83,85,70,70, + 73,88,69,83,40,3,0,0,0,117,10,0,0,0,101,120, + 116,101,110,115,105,111,110,115,117,6,0,0,0,115,111,117, + 114,99,101,117,8,0,0,0,98,121,116,101,99,111,100,101, + 40,0,0,0,0,40,0,0,0,0,117,29,0,0,0,60, + 102,114,111,122,101,110,32,105,109,112,111,114,116,108,105,98, + 46,95,98,111,111,116,115,116,114,97,112,62,117,27,0,0, + 0,95,103,101,116,95,115,117,112,112,111,114,116,101,100,95, + 102,105,108,101,95,108,111,97,100,101,114,115,104,6,0,0, + 115,8,0,0,0,0,5,18,1,12,1,12,1,117,27,0, + 0,0,95,103,101,116,95,115,117,112,112,111,114,116,101,100, + 95,102,105,108,101,95,108,111,97,100,101,114,115,99,5,0, + 0,0,0,0,0,0,9,0,0,0,5,0,0,0,67,0, + 0,0,115,227,0,0,0,124,4,0,100,1,0,107,2,0, + 114,27,0,116,0,0,124,0,0,131,1,0,125,5,0,110, + 54,0,124,1,0,100,3,0,107,9,0,114,45,0,124,1, + 0,110,3,0,105,0,0,125,6,0,116,2,0,124,6,0, + 131,1,0,125,7,0,116,0,0,124,0,0,124,7,0,124, + 4,0,131,3,0,125,5,0,124,3,0,115,207,0,124,4, + 0,100,1,0,107,2,0,114,122,0,116,0,0,124,0,0, + 106,3,0,100,2,0,131,1,0,100,1,0,25,131,1,0, + 83,124,0,0,115,132,0,124,5,0,83,116,4,0,124,0, + 0,131,1,0,116,4,0,124,0,0,106,3,0,100,2,0, + 131,1,0,100,1,0,25,131,1,0,24,125,8,0,116,5, + 0,106,6,0,124,5,0,106,7,0,100,3,0,116,4,0, + 124,5,0,106,7,0,131,1,0,124,8,0,24,133,2,0, + 25,25,83,110,16,0,116,8,0,124,5,0,124,3,0,116, + 0,0,131,3,0,83,100,3,0,83,40,4,0,0,0,117, + 214,1,0,0,73,109,112,111,114,116,32,97,32,109,111,100, + 117,108,101,46,10,10,32,32,32,32,84,104,101,32,39,103, + 108,111,98,97,108,115,39,32,97,114,103,117,109,101,110,116, + 32,105,115,32,117,115,101,100,32,116,111,32,105,110,102,101, + 114,32,119,104,101,114,101,32,116,104,101,32,105,109,112,111, + 114,116,32,105,115,32,111,99,99,117,114,105,110,103,32,102, + 114,111,109,10,32,32,32,32,116,111,32,104,97,110,100,108, + 101,32,114,101,108,97,116,105,118,101,32,105,109,112,111,114, + 116,115,46,32,84,104,101,32,39,108,111,99,97,108,115,39, + 32,97,114,103,117,109,101,110,116,32,105,115,32,105,103,110, + 111,114,101,100,46,32,84,104,101,10,32,32,32,32,39,102, + 114,111,109,108,105,115,116,39,32,97,114,103,117,109,101,110, + 116,32,115,112,101,99,105,102,105,101,115,32,119,104,97,116, + 32,115,104,111,117,108,100,32,101,120,105,115,116,32,97,115, + 32,97,116,116,114,105,98,117,116,101,115,32,111,110,32,116, + 104,101,32,109,111,100,117,108,101,10,32,32,32,32,98,101, + 105,110,103,32,105,109,112,111,114,116,101,100,32,40,101,46, + 103,46,32,96,96,102,114,111,109,32,109,111,100,117,108,101, + 32,105,109,112,111,114,116,32,60,102,114,111,109,108,105,115, + 116,62,96,96,41,46,32,32,84,104,101,32,39,108,101,118, + 101,108,39,10,32,32,32,32,97,114,103,117,109,101,110,116, + 32,114,101,112,114,101,115,101,110,116,115,32,116,104,101,32, + 112,97,99,107,97,103,101,32,108,111,99,97,116,105,111,110, + 32,116,111,32,105,109,112,111,114,116,32,102,114,111,109,32, + 105,110,32,97,32,114,101,108,97,116,105,118,101,10,32,32, + 32,32,105,109,112,111,114,116,32,40,101,46,103,46,32,96, + 96,102,114,111,109,32,46,46,112,107,103,32,105,109,112,111, + 114,116,32,109,111,100,96,96,32,119,111,117,108,100,32,104, + 97,118,101,32,97,32,39,108,101,118,101,108,39,32,111,102, + 32,50,41,46,10,10,32,32,32,32,105,0,0,0,0,117, + 1,0,0,0,46,78,40,9,0,0,0,117,11,0,0,0, + 95,103,99,100,95,105,109,112,111,114,116,117,4,0,0,0, + 78,111,110,101,117,17,0,0,0,95,99,97,108,99,95,95, + 95,112,97,99,107,97,103,101,95,95,117,9,0,0,0,112, + 97,114,116,105,116,105,111,110,117,3,0,0,0,108,101,110, + 117,3,0,0,0,115,121,115,117,7,0,0,0,109,111,100, + 117,108,101,115,117,8,0,0,0,95,95,110,97,109,101,95, + 95,117,16,0,0,0,95,104,97,110,100,108,101,95,102,114, + 111,109,108,105,115,116,40,9,0,0,0,117,4,0,0,0, + 110,97,109,101,117,7,0,0,0,103,108,111,98,97,108,115, + 117,6,0,0,0,108,111,99,97,108,115,117,8,0,0,0, + 102,114,111,109,108,105,115,116,117,5,0,0,0,108,101,118, + 101,108,117,6,0,0,0,109,111,100,117,108,101,117,8,0, + 0,0,103,108,111,98,97,108,115,95,117,7,0,0,0,112, + 97,99,107,97,103,101,117,7,0,0,0,99,117,116,95,111, + 102,102,40,0,0,0,0,40,0,0,0,0,117,29,0,0, + 0,60,102,114,111,122,101,110,32,105,109,112,111,114,116,108, + 105,98,46,95,98,111,111,116,115,116,114,97,112,62,117,10, + 0,0,0,95,95,105,109,112,111,114,116,95,95,115,6,0, + 0,115,26,0,0,0,0,11,12,1,15,2,24,1,12,1, + 18,1,6,3,12,1,23,1,6,1,4,2,35,1,40,2, + 117,10,0,0,0,95,95,105,109,112,111,114,116,95,95,99, + 2,0,0,0,0,0,0,0,14,0,0,0,13,0,0,0, + 67,0,0,0,115,169,2,0,0,124,1,0,97,0,0,124, + 0,0,97,1,0,120,47,0,116,0,0,116,1,0,102,2, + 0,68,93,33,0,125,2,0,116,2,0,124,2,0,100,1, + 0,131,2,0,115,25,0,116,3,0,124,2,0,95,4,0, + 113,25,0,113,25,0,87,116,1,0,106,5,0,116,6,0, + 25,125,3,0,120,76,0,100,28,0,68,93,68,0,125,4, + 0,124,4,0,116,1,0,106,5,0,107,7,0,114,121,0, + 116,3,0,106,7,0,124,4,0,131,1,0,125,5,0,110, + 13,0,116,1,0,106,5,0,124,4,0,25,125,5,0,116, + 8,0,124,3,0,124,4,0,124,5,0,131,3,0,1,113, + 82,0,87,100,6,0,100,7,0,103,1,0,102,2,0,100, + 8,0,100,9,0,100,7,0,103,2,0,102,2,0,100,10, + 0,100,9,0,100,7,0,103,2,0,102,2,0,102,3,0, + 125,6,0,120,189,0,124,6,0,68,93,169,0,92,2,0, + 125,7,0,125,8,0,116,9,0,100,11,0,100,12,0,132, + 0,0,124,8,0,68,131,1,0,131,1,0,115,252,0,116, + 10,0,130,1,0,124,8,0,100,13,0,25,125,9,0,124, + 7,0,116,1,0,106,5,0,107,6,0,114,38,1,116,1, + 0,106,5,0,124,7,0,25,125,10,0,80,113,209,0,121, + 60,0,116,3,0,106,7,0,124,7,0,131,1,0,125,10, + 0,124,7,0,100,10,0,107,2,0,114,96,1,100,14,0, + 116,1,0,106,11,0,107,6,0,114,96,1,124,8,0,100, + 15,0,25,125,9,0,110,0,0,80,87,113,209,0,4,116, + 12,0,107,10,0,114,121,1,1,1,1,119,209,0,89,113, + 209,0,88,113,209,0,87,116,12,0,100,16,0,131,1,0, + 130,1,0,121,19,0,116,3,0,106,7,0,100,17,0,131, + 1,0,125,11,0,87,110,24,0,4,116,12,0,107,10,0, + 114,183,1,1,1,1,100,27,0,125,11,0,89,110,1,0, + 88,116,3,0,106,7,0,100,18,0,131,1,0,125,12,0, + 124,7,0,100,8,0,107,2,0,114,245,1,116,3,0,106, + 7,0,100,19,0,131,1,0,125,13,0,116,8,0,124,3, + 0,100,20,0,124,13,0,131,3,0,1,110,0,0,116,8, + 0,124,3,0,100,21,0,124,10,0,131,3,0,1,116,8, + 0,124,3,0,100,17,0,124,11,0,131,3,0,1,116,8, + 0,124,3,0,100,18,0,124,12,0,131,3,0,1,116,8, + 0,124,3,0,100,22,0,124,9,0,131,3,0,1,116,8, + 0,124,3,0,100,23,0,116,14,0,124,8,0,131,1,0, + 131,3,0,1,116,8,0,124,3,0,100,24,0,116,15,0, + 131,0,0,131,3,0,1,116,16,0,106,17,0,116,0,0, + 106,18,0,131,0,0,131,1,0,1,124,7,0,100,8,0, + 107,2,0,114,165,2,116,19,0,106,20,0,100,25,0,131, + 1,0,1,100,26,0,116,16,0,107,6,0,114,165,2,100, + 29,0,116,22,0,95,23,0,113,165,2,110,0,0,100,27, + 0,83,40,30,0,0,0,117,250,0,0,0,83,101,116,117, + 112,32,105,109,112,111,114,116,108,105,98,32,98,121,32,105, + 109,112,111,114,116,105,110,103,32,110,101,101,100,101,100,32, + 98,117,105,108,116,45,105,110,32,109,111,100,117,108,101,115, + 32,97,110,100,32,105,110,106,101,99,116,105,110,103,32,116, + 104,101,109,10,32,32,32,32,105,110,116,111,32,116,104,101, + 32,103,108,111,98,97,108,32,110,97,109,101,115,112,97,99, + 101,46,10,10,32,32,32,32,65,115,32,115,121,115,32,105, + 115,32,110,101,101,100,101,100,32,102,111,114,32,115,121,115, + 46,109,111,100,117,108,101,115,32,97,99,99,101,115,115,32, + 97,110,100,32,95,105,109,112,32,105,115,32,110,101,101,100, + 101,100,32,116,111,32,108,111,97,100,32,98,117,105,108,116, + 45,105,110,10,32,32,32,32,109,111,100,117,108,101,115,44, + 32,116,104,111,115,101,32,116,119,111,32,109,111,100,117,108, + 101,115,32,109,117,115,116,32,98,101,32,101,120,112,108,105, + 99,105,116,108,121,32,112,97,115,115,101,100,32,105,110,46, + 10,10,32,32,32,32,117,10,0,0,0,95,95,108,111,97, + 100,101,114,95,95,117,3,0,0,0,95,105,111,117,9,0, + 0,0,95,119,97,114,110,105,110,103,115,117,8,0,0,0, + 98,117,105,108,116,105,110,115,117,7,0,0,0,109,97,114, + 115,104,97,108,117,5,0,0,0,112,111,115,105,120,117,1, + 0,0,0,47,117,2,0,0,0,110,116,117,1,0,0,0, + 92,117,3,0,0,0,111,115,50,99,1,0,0,0,0,0, + 0,0,2,0,0,0,3,0,0,0,115,0,0,0,115,33, + 0,0,0,124,0,0,93,23,0,125,1,0,116,0,0,124, + 1,0,131,1,0,100,0,0,107,2,0,86,1,113,3,0, + 100,1,0,83,40,2,0,0,0,105,1,0,0,0,78,40, + 1,0,0,0,117,3,0,0,0,108,101,110,40,2,0,0, + 0,117,2,0,0,0,46,48,117,3,0,0,0,115,101,112, + 40,0,0,0,0,40,0,0,0,0,117,29,0,0,0,60, + 102,114,111,122,101,110,32,105,109,112,111,114,116,108,105,98, + 46,95,98,111,111,116,115,116,114,97,112,62,117,9,0,0, + 0,60,103,101,110,101,120,112,114,62,174,6,0,0,115,2, + 0,0,0,6,0,117,25,0,0,0,95,115,101,116,117,112, + 46,60,108,111,99,97,108,115,62,46,60,103,101,110,101,120, + 112,114,62,105,0,0,0,0,117,7,0,0,0,69,77,88, + 32,71,67,67,105,1,0,0,0,117,30,0,0,0,105,109, + 112,111,114,116,108,105,98,32,114,101,113,117,105,114,101,115, + 32,112,111,115,105,120,32,111,114,32,110,116,117,7,0,0, + 0,95,116,104,114,101,97,100,117,8,0,0,0,95,119,101, + 97,107,114,101,102,117,6,0,0,0,119,105,110,114,101,103, + 117,7,0,0,0,95,119,105,110,114,101,103,117,3,0,0, + 0,95,111,115,117,8,0,0,0,112,97,116,104,95,115,101, + 112,117,15,0,0,0,112,97,116,104,95,115,101,112,97,114, + 97,116,111,114,115,117,11,0,0,0,95,114,101,108,97,120, + 95,99,97,115,101,117,4,0,0,0,46,112,121,119,117,6, + 0,0,0,95,100,46,112,121,100,78,40,4,0,0,0,117, + 3,0,0,0,95,105,111,117,9,0,0,0,95,119,97,114, + 110,105,110,103,115,117,8,0,0,0,98,117,105,108,116,105, + 110,115,117,7,0,0,0,109,97,114,115,104,97,108,84,40, + 24,0,0,0,117,4,0,0,0,95,105,109,112,117,3,0, + 0,0,115,121,115,117,7,0,0,0,104,97,115,97,116,116, + 114,117,15,0,0,0,66,117,105,108,116,105,110,73,109,112, + 111,114,116,101,114,117,10,0,0,0,95,95,108,111,97,100, + 101,114,95,95,117,7,0,0,0,109,111,100,117,108,101,115, + 117,8,0,0,0,95,95,110,97,109,101,95,95,117,11,0, + 0,0,108,111,97,100,95,109,111,100,117,108,101,117,7,0, + 0,0,115,101,116,97,116,116,114,117,3,0,0,0,97,108, + 108,117,14,0,0,0,65,115,115,101,114,116,105,111,110,69, + 114,114,111,114,117,7,0,0,0,118,101,114,115,105,111,110, + 117,11,0,0,0,73,109,112,111,114,116,69,114,114,111,114, + 117,4,0,0,0,78,111,110,101,117,3,0,0,0,115,101, + 116,117,16,0,0,0,95,109,97,107,101,95,114,101,108,97, + 120,95,99,97,115,101,117,18,0,0,0,69,88,84,69,78, + 83,73,79,78,95,83,85,70,70,73,88,69,83,117,6,0, + 0,0,101,120,116,101,110,100,117,18,0,0,0,101,120,116, + 101,110,115,105,111,110,95,115,117,102,102,105,120,101,115,117, + 15,0,0,0,83,79,85,82,67,69,95,83,85,70,70,73, + 88,69,83,117,6,0,0,0,97,112,112,101,110,100,117,4, + 0,0,0,84,114,117,101,117,21,0,0,0,87,105,110,100, + 111,119,115,82,101,103,105,115,116,114,121,70,105,110,100,101, + 114,117,11,0,0,0,68,69,66,85,71,95,66,85,73,76, + 68,40,14,0,0,0,117,10,0,0,0,115,121,115,95,109, + 111,100,117,108,101,117,11,0,0,0,95,105,109,112,95,109, + 111,100,117,108,101,117,6,0,0,0,109,111,100,117,108,101, + 117,11,0,0,0,115,101,108,102,95,109,111,100,117,108,101, + 117,12,0,0,0,98,117,105,108,116,105,110,95,110,97,109, + 101,117,14,0,0,0,98,117,105,108,116,105,110,95,109,111, + 100,117,108,101,117,10,0,0,0,111,115,95,100,101,116,97, + 105,108,115,117,10,0,0,0,98,117,105,108,116,105,110,95, + 111,115,117,15,0,0,0,112,97,116,104,95,115,101,112,97, + 114,97,116,111,114,115,117,8,0,0,0,112,97,116,104,95, + 115,101,112,117,9,0,0,0,111,115,95,109,111,100,117,108, + 101,117,13,0,0,0,116,104,114,101,97,100,95,109,111,100, + 117,108,101,117,14,0,0,0,119,101,97,107,114,101,102,95, + 109,111,100,117,108,101,117,13,0,0,0,119,105,110,114,101, + 103,95,109,111,100,117,108,101,40,0,0,0,0,40,0,0, + 0,0,117,29,0,0,0,60,102,114,111,122,101,110,32,105, + 109,112,111,114,116,108,105,98,46,95,98,111,111,116,115,116, + 114,97,112,62,117,6,0,0,0,95,115,101,116,117,112,147, + 6,0,0,115,90,0,0,0,0,9,6,1,6,2,19,1, + 15,1,16,2,13,1,13,1,15,1,18,2,13,1,20,2, + 48,1,19,2,31,1,10,1,15,1,13,1,4,2,3,1, + 15,2,27,1,13,1,5,1,13,1,12,2,12,2,3,1, + 19,1,13,2,11,1,15,2,12,1,15,1,19,2,16,1, + 16,1,16,1,16,1,22,2,19,1,19,1,12,1,13,1, + 12,1,117,6,0,0,0,95,115,101,116,117,112,99,2,0, + 0,0,0,0,0,0,3,0,0,0,3,0,0,0,67,0, + 0,0,115,136,0,0,0,116,0,0,124,0,0,124,1,0, + 131,2,0,1,116,1,0,131,0,0,125,2,0,116,2,0, + 106,3,0,106,4,0,116,5,0,106,6,0,124,2,0,140, + 0,0,103,1,0,131,1,0,1,116,2,0,106,7,0,106, + 8,0,116,9,0,131,1,0,1,116,2,0,106,7,0,106, + 8,0,116,10,0,131,1,0,1,116,11,0,106,12,0,100, + 1,0,107,2,0,114,116,0,116,2,0,106,7,0,106,8, + 0,116,13,0,131,1,0,1,110,0,0,116,2,0,106,7, + 0,106,8,0,116,14,0,131,1,0,1,100,2,0,83,40, + 3,0,0,0,117,50,0,0,0,73,110,115,116,97,108,108, + 32,105,109,112,111,114,116,108,105,98,32,97,115,32,116,104, + 101,32,105,109,112,108,101,109,101,110,116,97,116,105,111,110, + 32,111,102,32,105,109,112,111,114,116,46,117,2,0,0,0, + 110,116,78,40,15,0,0,0,117,6,0,0,0,95,115,101, + 116,117,112,117,27,0,0,0,95,103,101,116,95,115,117,112, + 112,111,114,116,101,100,95,102,105,108,101,95,108,111,97,100, + 101,114,115,117,3,0,0,0,115,121,115,117,10,0,0,0, + 112,97,116,104,95,104,111,111,107,115,117,6,0,0,0,101, + 120,116,101,110,100,117,10,0,0,0,70,105,108,101,70,105, + 110,100,101,114,117,9,0,0,0,112,97,116,104,95,104,111, + 111,107,117,9,0,0,0,109,101,116,97,95,112,97,116,104, + 117,6,0,0,0,97,112,112,101,110,100,117,15,0,0,0, + 66,117,105,108,116,105,110,73,109,112,111,114,116,101,114,117, + 14,0,0,0,70,114,111,122,101,110,73,109,112,111,114,116, + 101,114,117,3,0,0,0,95,111,115,117,8,0,0,0,95, + 95,110,97,109,101,95,95,117,21,0,0,0,87,105,110,100, + 111,119,115,82,101,103,105,115,116,114,121,70,105,110,100,101, + 114,117,10,0,0,0,80,97,116,104,70,105,110,100,101,114, + 40,3,0,0,0,117,10,0,0,0,115,121,115,95,109,111, + 100,117,108,101,117,11,0,0,0,95,105,109,112,95,109,111, + 100,117,108,101,117,17,0,0,0,115,117,112,112,111,114,116, + 101,100,95,108,111,97,100,101,114,115,40,0,0,0,0,40, + 0,0,0,0,117,29,0,0,0,60,102,114,111,122,101,110, + 32,105,109,112,111,114,116,108,105,98,46,95,98,111,111,116, + 115,116,114,97,112,62,117,8,0,0,0,95,105,110,115,116, + 97,108,108,216,6,0,0,115,16,0,0,0,0,2,13,1, + 9,1,28,1,16,1,16,1,15,1,19,1,117,8,0,0, + 0,95,105,110,115,116,97,108,108,78,40,3,0,0,0,117, + 3,0,0,0,119,105,110,117,6,0,0,0,99,121,103,119, + 105,110,117,6,0,0,0,100,97,114,119,105,110,40,75,0, + 0,0,117,7,0,0,0,95,95,100,111,99,95,95,117,27, + 0,0,0,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,117,16, + 0,0,0,95,109,97,107,101,95,114,101,108,97,120,95,99, + 97,115,101,117,7,0,0,0,95,119,95,108,111,110,103,117, + 7,0,0,0,95,114,95,108,111,110,103,117,10,0,0,0, + 95,112,97,116,104,95,106,111,105,110,117,11,0,0,0,95, + 112,97,116,104,95,115,112,108,105,116,117,18,0,0,0,95, + 112,97,116,104,95,105,115,95,109,111,100,101,95,116,121,112, + 101,117,12,0,0,0,95,112,97,116,104,95,105,115,102,105, + 108,101,117,11,0,0,0,95,112,97,116,104,95,105,115,100, + 105,114,117,13,0,0,0,95,119,114,105,116,101,95,97,116, + 111,109,105,99,117,5,0,0,0,95,119,114,97,112,117,4, + 0,0,0,116,121,112,101,117,8,0,0,0,95,95,99,111, + 100,101,95,95,117,10,0,0,0,95,99,111,100,101,95,116, + 121,112,101,117,10,0,0,0,110,101,119,95,109,111,100,117, + 108,101,117,13,0,0,0,95,109,111,100,117,108,101,95,108, + 111,99,107,115,117,12,0,0,0,95,98,108,111,99,107,105, + 110,103,95,111,110,117,12,0,0,0,82,117,110,116,105,109, + 101,69,114,114,111,114,117,14,0,0,0,95,68,101,97,100, + 108,111,99,107,69,114,114,111,114,117,11,0,0,0,95,77, + 111,100,117,108,101,76,111,99,107,117,16,0,0,0,95,68, + 117,109,109,121,77,111,100,117,108,101,76,111,99,107,117,16, + 0,0,0,95,103,101,116,95,109,111,100,117,108,101,95,108, + 111,99,107,117,19,0,0,0,95,108,111,99,107,95,117,110, + 108,111,99,107,95,109,111,100,117,108,101,117,25,0,0,0, + 95,99,97,108,108,95,119,105,116,104,95,102,114,97,109,101, + 115,95,114,101,109,111,118,101,100,117,3,0,0,0,111,114, + 100,117,17,0,0,0,95,82,65,87,95,77,65,71,73,67, + 95,78,85,77,66,69,82,117,5,0,0,0,98,121,116,101, + 115,117,5,0,0,0,114,97,110,103,101,117,12,0,0,0, + 95,77,65,71,73,67,95,66,89,84,69,83,117,8,0,0, + 0,95,80,89,67,65,67,72,69,117,15,0,0,0,83,79, + 85,82,67,69,95,83,85,70,70,73,88,69,83,117,23,0, + 0,0,68,69,66,85,71,95,66,89,84,69,67,79,68,69, + 95,83,85,70,70,73,88,69,83,117,27,0,0,0,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,117,17,0,0,0,66,89, + 84,69,67,79,68,69,95,83,85,70,70,73,88,69,83,117, + 4,0,0,0,78,111,110,101,117,17,0,0,0,99,97,99, + 104,101,95,102,114,111,109,95,115,111,117,114,99,101,117,17, + 0,0,0,115,111,117,114,99,101,95,102,114,111,109,95,99, + 97,99,104,101,117,15,0,0,0,95,103,101,116,95,115,111, + 117,114,99,101,102,105,108,101,117,16,0,0,0,95,118,101, + 114,98,111,115,101,95,109,101,115,115,97,103,101,117,11,0, + 0,0,115,101,116,95,112,97,99,107,97,103,101,117,10,0, + 0,0,115,101,116,95,108,111,97,100,101,114,117,17,0,0, + 0,109,111,100,117,108,101,95,102,111,114,95,108,111,97,100, + 101,114,117,11,0,0,0,95,99,104,101,99,107,95,110,97, + 109,101,117,17,0,0,0,95,114,101,113,117,105,114,101,115, + 95,98,117,105,108,116,105,110,117,16,0,0,0,95,114,101, + 113,117,105,114,101,115,95,102,114,111,122,101,110,117,17,0, + 0,0,95,102,105,110,100,95,109,111,100,117,108,101,95,115, + 104,105,109,117,15,0,0,0,66,117,105,108,116,105,110,73, + 109,112,111,114,116,101,114,117,14,0,0,0,70,114,111,122, + 101,110,73,109,112,111,114,116,101,114,117,21,0,0,0,87, + 105,110,100,111,119,115,82,101,103,105,115,116,114,121,70,105, + 110,100,101,114,117,13,0,0,0,95,76,111,97,100,101,114, + 66,97,115,105,99,115,117,12,0,0,0,83,111,117,114,99, + 101,76,111,97,100,101,114,117,10,0,0,0,70,105,108,101, + 76,111,97,100,101,114,117,16,0,0,0,83,111,117,114,99, + 101,70,105,108,101,76,111,97,100,101,114,117,20,0,0,0, + 83,111,117,114,99,101,108,101,115,115,70,105,108,101,76,111, + 97,100,101,114,117,18,0,0,0,69,88,84,69,78,83,73, + 79,78,95,83,85,70,70,73,88,69,83,117,19,0,0,0, + 69,120,116,101,110,115,105,111,110,70,105,108,101,76,111,97, + 100,101,114,117,14,0,0,0,95,78,97,109,101,115,112,97, + 99,101,80,97,116,104,117,15,0,0,0,78,97,109,101,115, + 112,97,99,101,76,111,97,100,101,114,117,10,0,0,0,80, + 97,116,104,70,105,110,100,101,114,117,10,0,0,0,70,105, + 108,101,70,105,110,100,101,114,117,18,0,0,0,95,73,109, + 112,111,114,116,76,111,99,107,67,111,110,116,101,120,116,117, + 13,0,0,0,95,114,101,115,111,108,118,101,95,110,97,109, + 101,117,12,0,0,0,95,102,105,110,100,95,109,111,100,117, + 108,101,117,13,0,0,0,95,115,97,110,105,116,121,95,99, + 104,101,99,107,117,8,0,0,0,95,69,82,82,95,77,83, + 71,117,23,0,0,0,95,102,105,110,100,95,97,110,100,95, + 108,111,97,100,95,117,110,108,111,99,107,101,100,117,14,0, + 0,0,95,102,105,110,100,95,97,110,100,95,108,111,97,100, + 117,11,0,0,0,95,103,99,100,95,105,109,112,111,114,116, + 117,16,0,0,0,95,104,97,110,100,108,101,95,102,114,111, + 109,108,105,115,116,117,17,0,0,0,95,99,97,108,99,95, + 95,95,112,97,99,107,97,103,101,95,95,117,27,0,0,0, + 95,103,101,116,95,115,117,112,112,111,114,116,101,100,95,102, + 105,108,101,95,108,111,97,100,101,114,115,117,10,0,0,0, + 95,95,105,109,112,111,114,116,95,95,117,6,0,0,0,95, + 115,101,116,117,112,117,8,0,0,0,95,105,110,115,116,97, + 108,108,40,0,0,0,0,40,0,0,0,0,40,0,0,0, + 0,117,29,0,0,0,60,102,114,111,122,101,110,32,105,109, + 112,111,114,116,108,105,98,46,95,98,111,111,116,115,116,114, + 97,112,62,117,8,0,0,0,60,109,111,100,117,108,101,62, + 8,0,0,0,115,134,0,0,0,6,21,6,3,12,13,12, + 16,12,13,12,12,12,12,12,10,12,6,12,7,15,22,12, + 8,15,3,12,12,6,2,6,3,22,4,19,68,19,23,12, + 19,12,20,12,100,34,1,37,2,6,2,9,2,9,1,9, + 2,6,4,15,27,12,23,12,21,12,8,12,13,12,11,12, + 55,12,18,12,11,12,11,12,17,19,57,19,54,19,50,19, + 82,22,134,19,29,25,46,25,25,6,3,19,45,19,55,19, + 18,19,89,19,125,19,13,12,9,12,17,12,17,6,2,12, + 50,12,13,18,24,12,34,12,15,12,11,24,32,12,69, }; From 72b1426cfb6c19932f8303614720b2a528d1dd3c Mon Sep 17 00:00:00 2001 From: Petri Lehtinen Date: Tue, 28 Aug 2012 07:08:44 +0300 Subject: [PATCH 006/201] #11964: Document a change in v3.2 to the json indent parameter --- Doc/library/json.rst | 16 ++++++++++++---- Misc/NEWS | 3 +++ 2 files changed, 15 insertions(+), 4 deletions(-) diff --git a/Doc/library/json.rst b/Doc/library/json.rst index a5bfcd2e168..95f120cc7f2 100644 --- a/Doc/library/json.rst +++ b/Doc/library/json.rst @@ -149,6 +149,9 @@ Basic Usage indents that many spaces per level. If *indent* is a string (such as ``"\t"``), that string is used to indent each level. + .. versionchanged:: 3.2 + Allow strings for *indent* in addition to integers. + If *separators* is an ``(item_separator, dict_separator)`` tuple, then it will be used instead of the default ``(', ', ': ')`` separators. ``(',', ':')`` is the most compact JSON representation. @@ -371,10 +374,15 @@ Encoders and Decoders will be sorted by key; this is useful for regression tests to ensure that JSON serializations can be compared on a day-to-day basis. - If *indent* is a non-negative integer (it is ``None`` by default), then JSON - array elements and object members will be pretty-printed with that indent - level. An indent level of 0 will only insert newlines. ``None`` is the most - compact representation. + If *indent* is a non-negative integer or string, then JSON array elements and + object members will be pretty-printed with that indent level. An indent level + of 0, negative, or ``""`` will only insert newlines. ``None`` (the default) + selects the most compact representation. Using a positive integer indent + indents that many spaces per level. If *indent* is a string (such as ``"\t"``), + that string is used to indent each level. + + .. versionchanged:: 3.2 + Allow strings for *indent* in addition to integers. If specified, *separators* should be an ``(item_separator, key_separator)`` tuple. The default is ``(', ', ': ')``. To get the most compact JSON diff --git a/Misc/NEWS b/Misc/NEWS index bcf2921a93f..b333c0cc764 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -519,6 +519,9 @@ Build Documentation ------------- +- Issue #11964: Document a change in v3.2 to the behavior of the indent + parameter of json encoding operations. + - Issue #14674: Add a discussion of the json module's standard compliance. Patch by Chris Rebert. From 25b10a28f51bc6125946c5fad0c3cfad38227928 Mon Sep 17 00:00:00 2001 From: Matthias Klose Date: Tue, 28 Aug 2012 18:55:07 +0200 Subject: [PATCH 007/201] - Issue #15591: Fix parsing MAKEFLAGS in the sharedmods target. --- Makefile.pre.in | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/Makefile.pre.in b/Makefile.pre.in index 318bbadfbf4..62db9c1374a 100644 --- a/Makefile.pre.in +++ b/Makefile.pre.in @@ -436,10 +436,14 @@ platform: $(BUILDPYTHON) # Build the shared modules sharedmods: $(BUILDPYTHON) - @case $$MAKEFLAGS in \ - *s*) $(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' ./$(BUILDPYTHON) -E $(srcdir)/setup.py -q build;; \ - *) $(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' ./$(BUILDPYTHON) -E $(srcdir)/setup.py build;; \ - esac + if which getopt >/dev/null; then \ + mflags=`getopt s $$MAKEFLAGS 2>/dev/null | sed 's/ --.*/ /'`; \ + else \ + mflags=" $$MAKEFLAGS "; \ + fi; \ + case $$mflags in "* -s *") quiet=-q; esac; \ + $(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' \ + ./$(BUILDPYTHON) -E $(srcdir)/setup.py $$quiet build # Build static library # avoid long command lines, same as LIBRARY_OBJS From 2412c93a6068221686397c26b129215eac024e9c Mon Sep 17 00:00:00 2001 From: Matthias Klose Date: Tue, 28 Aug 2012 19:07:38 +0200 Subject: [PATCH 008/201] - fix paste error (whitespace) from previous commit --- Makefile.pre.in | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Makefile.pre.in b/Makefile.pre.in index 62db9c1374a..de08382c23c 100644 --- a/Makefile.pre.in +++ b/Makefile.pre.in @@ -436,7 +436,7 @@ platform: $(BUILDPYTHON) # Build the shared modules sharedmods: $(BUILDPYTHON) - if which getopt >/dev/null; then \ + if which getopt >/dev/null; then \ mflags=`getopt s $$MAKEFLAGS 2>/dev/null | sed 's/ --.*/ /'`; \ else \ mflags=" $$MAKEFLAGS "; \ From 5b9eccb383c21fda80f3e3b5b9d6bb803b7b70bf Mon Sep 17 00:00:00 2001 From: Antoine Pitrou Date: Tue, 28 Aug 2012 20:10:18 +0200 Subject: [PATCH 009/201] Issue #15794: Relax a test case due to the deadlock detection's conservativeness. --- Lib/test/test_importlib/test_locks.py | 22 ++++++++++++++++++---- 1 file changed, 18 insertions(+), 4 deletions(-) diff --git a/Lib/test/test_importlib/test_locks.py b/Lib/test/test_importlib/test_locks.py index d36b71eb18e..c373b112569 100644 --- a/Lib/test/test_importlib/test_locks.py +++ b/Lib/test/test_importlib/test_locks.py @@ -1,4 +1,5 @@ from importlib import _bootstrap +import sys import time import unittest import weakref @@ -41,6 +42,17 @@ class ModuleLockAsRLockTests(unittest.TestCase): @unittest.skipUnless(threading, "threads needed for this test") class DeadlockAvoidanceTests(unittest.TestCase): + def setUp(self): + try: + self.old_switchinterval = sys.getswitchinterval() + sys.setswitchinterval(0.000001) + except AttributeError: + self.old_switchinterval = None + + def tearDown(self): + if self.old_switchinterval is not None: + sys.setswitchinterval(self.old_switchinterval) + def run_deadlock_avoidance_test(self, create_deadlock): NLOCKS = 10 locks = [LockType(str(i)) for i in range(NLOCKS)] @@ -75,10 +87,12 @@ def f(): def test_deadlock(self): results = self.run_deadlock_avoidance_test(True) - # One of the threads detected a potential deadlock on its second - # acquire() call. - self.assertEqual(results.count((True, False)), 1) - self.assertEqual(results.count((True, True)), len(results) - 1) + # At least one of the threads detected a potential deadlock on its + # second acquire() call. It may be several of them, because the + # deadlock avoidance mechanism is conservative. + nb_deadlocks = results.count((True, False)) + self.assertGreaterEqual(nb_deadlocks, 1) + self.assertEqual(results.count((True, True)), len(results) - nb_deadlocks) def test_no_deadlock(self): results = self.run_deadlock_avoidance_test(False) From ea62bd50a37beb6346a6819c54ffd1ae1e70545f Mon Sep 17 00:00:00 2001 From: Richard Oudkerk Date: Tue, 28 Aug 2012 19:33:26 +0100 Subject: [PATCH 010/201] Issue #15784: Modify OSError.__str__() to better distinguish between errno error numbers and Windows error numbers. --- Lib/test/test_exceptions.py | 4 ++-- Misc/NEWS | 3 +++ Objects/exceptions.c | 4 ++-- 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/Lib/test/test_exceptions.py b/Lib/test/test_exceptions.py index 55e9db37803..413f4dd62bc 100644 --- a/Lib/test/test_exceptions.py +++ b/Lib/test/test_exceptions.py @@ -216,14 +216,14 @@ def test_WindowsError(self): self.assertEqual(w.winerror, 3) self.assertEqual(w.strerror, 'foo') self.assertEqual(w.filename, 'bar') - self.assertEqual(str(w), "[Error 3] foo: 'bar'") + self.assertEqual(str(w), "[WinError 3] foo: 'bar'") # Unknown win error becomes EINVAL (22) w = OSError(0, 'foo', None, 1001) self.assertEqual(w.errno, 22) self.assertEqual(w.winerror, 1001) self.assertEqual(w.strerror, 'foo') self.assertEqual(w.filename, None) - self.assertEqual(str(w), "[Error 1001] foo") + self.assertEqual(str(w), "[WinError 1001] foo") # Non-numeric "errno" w = OSError('bar', 'foo') self.assertEqual(w.errno, 'bar') diff --git a/Misc/NEWS b/Misc/NEWS index f59b1b8c65d..17d0c105b69 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -40,6 +40,9 @@ What's New in Python 3.3.0 Release Candidate 2? Core and Builtins ----------------- +- Issue #15784: Modify OSError.__str__() to better distinguish between + errno error numbers and Windows error numbers. + - Issue #15781: Fix two small race conditions in import's module locking. Library diff --git a/Objects/exceptions.c b/Objects/exceptions.c index 74bb26285ef..6b047006211 100644 --- a/Objects/exceptions.c +++ b/Objects/exceptions.c @@ -1016,12 +1016,12 @@ OSError_str(PyOSErrorObject *self) #ifdef MS_WINDOWS /* If available, winerror has the priority over myerrno */ if (self->winerror && self->filename) - return PyUnicode_FromFormat("[Error %S] %S: %R", + return PyUnicode_FromFormat("[WinError %S] %S: %R", self->winerror ? self->winerror: Py_None, self->strerror ? self->strerror: Py_None, self->filename); if (self->winerror && self->strerror) - return PyUnicode_FromFormat("[Error %S] %S", + return PyUnicode_FromFormat("[WinError %S] %S", self->winerror ? self->winerror: Py_None, self->strerror ? self->strerror: Py_None); #endif From 28a6cfaefc41a4e4bfa6dd0b54318c0465987652 Mon Sep 17 00:00:00 2001 From: Benjamin Peterson Date: Tue, 28 Aug 2012 17:55:35 -0400 Subject: [PATCH 011/201] use the stricter PyMapping_Check (closes #15801) --- Lib/test/string_tests.py | 3 +++ Misc/NEWS | 3 +++ Objects/unicodeobject.c | 3 +-- 3 files changed, 7 insertions(+), 2 deletions(-) diff --git a/Lib/test/string_tests.py b/Lib/test/string_tests.py index d7925290206..413f9dd8fea 100644 --- a/Lib/test/string_tests.py +++ b/Lib/test/string_tests.py @@ -1142,6 +1142,9 @@ def test_formatting(self): self.checkraises(TypeError, '%10.*f', '__mod__', ('foo', 42.)) self.checkraises(ValueError, '%10', '__mod__', (42,)) + class X(object): pass + self.checkraises(TypeError, 'abc', '__mod__', X()) + def test_floatformatting(self): # float formatting for prec in range(100): diff --git a/Misc/NEWS b/Misc/NEWS index b333c0cc764..25be2aa88ee 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -12,6 +12,9 @@ Core and Builtins - Issue #15761: Fix crash when PYTHONEXECUTABLE is set on Mac OS X. +- Issue #15801: Make sure mappings passed to '%' formatting are actually + subscriptable. + - Issue #15726: Fix incorrect bounds checking in PyState_FindModule. Patch by Robin Schreiber. diff --git a/Objects/unicodeobject.c b/Objects/unicodeobject.c index b25b17b6a03..8b782b4065e 100644 --- a/Objects/unicodeobject.c +++ b/Objects/unicodeobject.c @@ -9504,8 +9504,7 @@ PyObject *PyUnicode_Format(PyObject *format, arglen = -1; argidx = -2; } - if (Py_TYPE(args)->tp_as_mapping && !PyTuple_Check(args) && - !PyUnicode_Check(args)) + if (PyMapping_Check(args) && !PyTuple_Check(args) && !PyUnicode_Check(args)) dict = args; while (--fmtcnt >= 0) { From 1d39cde50c9cd485de482ec2cce987482394bff5 Mon Sep 17 00:00:00 2001 From: Victor Stinner Date: Wed, 29 Aug 2012 01:40:57 +0200 Subject: [PATCH 012/201] Issue #15785: Modify window.get_wch() API of the curses module: return a character for most keys, and an integer for special keys, instead of always returning an integer. So it is now possible to distinguish special keys like keypad keys. --- Doc/library/curses.rst | 9 +++++---- Lib/test/test_curses.py | 12 +++++------- Misc/NEWS | 7 ++++++- Modules/_cursesmodule.c | 5 ++++- 4 files changed, 20 insertions(+), 13 deletions(-) diff --git a/Doc/library/curses.rst b/Doc/library/curses.rst index ff3a7938d69..c4241483b58 100644 --- a/Doc/library/curses.rst +++ b/Doc/library/curses.rst @@ -869,8 +869,8 @@ the following methods and attributes: .. method:: window.get_wch([y, x]) - Get a wide character. Like :meth:`getch`, but the integer returned is the - Unicode code point for the key pressed, so it can be passed to :func:`chr`. + Get a wide character. Return a character for most keys, or an integer for + function keys, keypad keys, and other special keys. .. versionadded:: 3.3 @@ -878,8 +878,9 @@ the following methods and attributes: .. method:: window.getkey([y, x]) Get a character, returning a string instead of an integer, as :meth:`getch` - does. Function keys, keypad keys and so on return a multibyte string containing - the key name. In no-delay mode, an exception is raised if there is no input. + does. Function keys, keypad keys and other special keys return a multibyte + string containing the key name. In no-delay mode, an exception is raised if + there is no input. .. method:: window.getmaxyx() diff --git a/Lib/test/test_curses.py b/Lib/test/test_curses.py index 21ac6089fc6..e959622c733 100644 --- a/Lib/test/test_curses.py +++ b/Lib/test/test_curses.py @@ -267,8 +267,7 @@ def test_issue6243(stdscr): def test_unget_wch(stdscr): if not hasattr(curses, 'unget_wch'): return - import locale - encoding = locale.getpreferredencoding() + encoding = stdscr.encoding for ch in ('a', '\xe9', '\u20ac', '\U0010FFFF'): try: ch.encode(encoding) @@ -277,18 +276,17 @@ def test_unget_wch(stdscr): try: curses.unget_wch(ch) except Exception as err: - raise Exception("unget_wch(%a) failed with locale encoding %s: %s" - % (ch, encoding, err)) + raise Exception("unget_wch(%a) failed with encoding %s: %s" + % (ch, stdscr.encoding, err)) read = stdscr.get_wch() - read = chr(read) if read != ch: raise AssertionError("%r != %r" % (read, ch)) code = ord(ch) curses.unget_wch(code) read = stdscr.get_wch() - if read != code: - raise AssertionError("%r != %r" % (read, code)) + if read != ch: + raise AssertionError("%r != %r" % (read, ch)) def test_issue10570(): b = curses.tparm(curses.tigetstr("cup"), 5, 3) diff --git a/Misc/NEWS b/Misc/NEWS index 2d46263099d..5bae2486c6f 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -48,6 +48,11 @@ Core and Builtins Library ------- +- Issue #15785: Modify window.get_wch() API of the curses module: return + a character for most keys, and an integer for special keys, instead of + always returning an integer. So it is now possible to distinguish special + keys like keypad keys. + What's New in Python 3.3.0 Release Candidate 1? =============================================== @@ -58,7 +63,7 @@ Core and Builtins ----------------- - Issue #15573: memoryview comparisons are now performed by value with full - support for any valid struct module format definition. + support for any valid struct module format definition. - Issue #15316: When an item in the fromlist for __import__ doesn't exist, don't raise an error, but if an exception is raised as part of an import do diff --git a/Modules/_cursesmodule.c b/Modules/_cursesmodule.c index de45f5189cb..0436e7fec8e 100644 --- a/Modules/_cursesmodule.c +++ b/Modules/_cursesmodule.c @@ -1203,7 +1203,10 @@ PyCursesWindow_Get_WCh(PyCursesWindowObject *self, PyObject *args) PyErr_SetString(PyCursesError, "no input"); return NULL; } - return PyLong_FromLong(rtn); + if (ct == KEY_CODE_YES) + return PyLong_FromLong(rtn); + else + return PyUnicode_FromOrdinal(rtn); } #endif From 0c6a1e75486528cfaa23fc2995e650ed1a923d09 Mon Sep 17 00:00:00 2001 From: Benjamin Peterson Date: Wed, 29 Aug 2012 08:04:11 -0400 Subject: [PATCH 013/201] move entry to the correct version --- Misc/NEWS | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Misc/NEWS b/Misc/NEWS index 5bae2486c6f..9a9a587a988 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -10,6 +10,9 @@ What's New in Python 3.3.1 Core and Builtins ----------------- +- Issue #15801: Make sure mappings passed to '%' formatting are actually + subscriptable. + Library ------- @@ -79,9 +82,6 @@ Core and Builtins - Issue #15761: Fix crash when PYTHONEXECUTABLE is set on Mac OS X. -- Issue #15801: Make sure mappings passed to '%' formatting are actually - subscriptable. - - Issue #15726: Fix incorrect bounds checking in PyState_FindModule. Patch by Robin Schreiber. From 49ccd514d2e29048062a3a669fed98329807c765 Mon Sep 17 00:00:00 2001 From: Ezio Melotti Date: Wed, 29 Aug 2012 17:50:42 +0300 Subject: [PATCH 014/201] Add missing comma. --- Doc/library/unittest.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Doc/library/unittest.rst b/Doc/library/unittest.rst index 4d3216b3df2..72a3a7b51a5 100644 --- a/Doc/library/unittest.rst +++ b/Doc/library/unittest.rst @@ -1271,7 +1271,7 @@ Test cases .. method:: assertListEqual(first, second, msg=None) assertTupleEqual(first, second, msg=None) - Tests that two lists or tuples are equal. If not an error message is + Tests that two lists or tuples are equal. If not, an error message is constructed that shows only the differences between the two. An error is also raised if either of the parameters are of the wrong type. These methods are used by default when comparing lists or tuples with From ecc4757b79c7d8f7b09fbc2e8b24258c22cfed12 Mon Sep 17 00:00:00 2001 From: Antoine Pitrou Date: Thu, 30 Aug 2012 00:29:24 +0200 Subject: [PATCH 015/201] Issue #15800: fix the closing of input / output files when gzip is used as a script. --- Lib/gzip.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Lib/gzip.py b/Lib/gzip.py index ee45e50ffba..e1b43a55988 100644 --- a/Lib/gzip.py +++ b/Lib/gzip.py @@ -621,9 +621,9 @@ def _test(): if not chunk: break g.write(chunk) - if g is not sys.stdout: + if g is not sys.stdout.buffer: g.close() - if f is not sys.stdin: + if f is not sys.stdin.buffer: f.close() if __name__ == '__main__': From ab0c3c7183d87ded2705c9f1ca0e9b877d87cc1a Mon Sep 17 00:00:00 2001 From: Stefan Krah Date: Thu, 30 Aug 2012 12:09:09 +0200 Subject: [PATCH 016/201] Issue #15724: Add versionchanged tags to the memoryview documentation. --- Doc/library/stdtypes.rst | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/Doc/library/stdtypes.rst b/Doc/library/stdtypes.rst index 34d6f89612b..e49370394a1 100644 --- a/Doc/library/stdtypes.rst +++ b/Doc/library/stdtypes.rst @@ -2450,6 +2450,8 @@ copying. ``v == w`` for memoryview objects. .. versionchanged:: 3.3 + Previous versions compared the raw memory disregarding the item format + and the logical array structure. .. method:: tobytes() @@ -2479,8 +2481,10 @@ copying. >>> m.tolist() [1.1, 2.2, 3.3] - :meth:`tolist` is currently restricted to single character native formats - in :mod:`struct` module syntax. + .. versionchanged:: 3.3 + :meth:`tolist` now supports all single character native formats in + :mod:`struct` module syntax as well as multi-dimensional + representations. .. method:: release() @@ -2664,6 +2668,10 @@ copying. arbitrary format strings, but some methods (e.g. :meth:`tolist`) are restricted to native single element formats. + .. versionchanged:: 3.3 + format ``'B'`` is now handled according to the struct module syntax. + This means that ``memoryview(b'abc')[0] == b'abc'[0] == 97``. + .. attribute:: itemsize The size in bytes of each element of the memoryview:: From 0f8cab20d9d203530bd550fb237d55e8c1ce9e19 Mon Sep 17 00:00:00 2001 From: Stefan Krah Date: Thu, 30 Aug 2012 12:33:55 +0200 Subject: [PATCH 017/201] Closes #10650: Deprecate the watchexp parameter of Decimal.quantize(). --- Doc/library/decimal.rst | 5 +++++ Doc/whatsnew/3.3.rst | 4 ++++ Misc/NEWS | 3 +++ 3 files changed, 12 insertions(+) diff --git a/Doc/library/decimal.rst b/Doc/library/decimal.rst index 3fa006bec22..4a2b2d0a9bf 100644 --- a/Doc/library/decimal.rst +++ b/Doc/library/decimal.rst @@ -737,6 +737,11 @@ Decimal objects resulting exponent is greater than :attr:`Emax` or less than :attr:`Etiny`. + .. deprecated:: 3.3 + *watchexp* is an implementation detail from the pure Python version + and is not present in the C version. It will be removed in version + 3.4, where it defaults to ``True``. + .. method:: radix() Return ``Decimal(10)``, the radix (base) in which the :class:`Decimal` diff --git a/Doc/whatsnew/3.3.rst b/Doc/whatsnew/3.3.rst index 27bf12dd9f3..e019ea7f700 100644 --- a/Doc/whatsnew/3.3.rst +++ b/Doc/whatsnew/3.3.rst @@ -1190,6 +1190,10 @@ API changes changed to match the order displayed by :func:`repr`. +* The ``watchexp`` parameter in the :meth:`~decimal.Decimal.quantize` method + is deprecated. + + ftplib ------ diff --git a/Misc/NEWS b/Misc/NEWS index 9a9a587a988..dad1622c44d 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -51,6 +51,9 @@ Core and Builtins Library ------- +- Issue #10650: Deprecate the watchexp parameter of the Decimal.quantize() + method. + - Issue #15785: Modify window.get_wch() API of the curses module: return a character for most keys, and an integer for special keys, instead of always returning an integer. So it is now possible to distinguish special From a45afcada37d7945a97ed6d0c241f0b0468e7932 Mon Sep 17 00:00:00 2001 From: Trent Nelson Date: Thu, 30 Aug 2012 14:32:02 +0000 Subject: [PATCH 018/201] Issue #15819: Fix out-of-tree builds from a readonly source. --- Makefile.pre.in | 12 ++++++++---- Misc/NEWS | 3 +++ configure | 50 +++++++++++++++++++++++++++++++++++++++++++++++++ configure.ac | 1 + 4 files changed, 62 insertions(+), 4 deletions(-) diff --git a/Makefile.pre.in b/Makefile.pre.in index de08382c23c..63ffc7d5b9f 100644 --- a/Makefile.pre.in +++ b/Makefile.pre.in @@ -59,6 +59,8 @@ INSTALL_DATA= @INSTALL_DATA@ # Also, making them read-only seems to be a good idea... INSTALL_SHARED= ${INSTALL} -m 555 +MKDIR_P= @MKDIR_P@ + MAKESETUP= $(srcdir)/Modules/makesetup # Compiler options @@ -223,8 +225,8 @@ IO_OBJS= \ ########################################################################## # Grammar -GRAMMAR_H= $(srcdir)/Include/graminit.h -GRAMMAR_C= $(srcdir)/Python/graminit.c +GRAMMAR_H= Include/graminit.h +GRAMMAR_C= Python/graminit.c GRAMMAR_INPUT= $(srcdir)/Grammar/Grammar @@ -266,9 +268,9 @@ PGENOBJS= $(PGENMAIN) $(POBJS) $(PGOBJS) ########################################################################## # AST -AST_H_DIR= $(srcdir)/Include +AST_H_DIR= Include AST_H= $(AST_H_DIR)/Python-ast.h -AST_C_DIR= $(srcdir)/Python +AST_C_DIR= Python AST_C= $(AST_C_DIR)/Python-ast.c AST_ASDL= $(srcdir)/Parser/Python.asdl @@ -609,9 +611,11 @@ Parser/tokenizer_pgen.o: $(srcdir)/Parser/tokenizer.c Parser/pgenmain.o: $(srcdir)/Include/parsetok.h $(AST_H): $(AST_ASDL) $(ASDLGEN_FILES) + $(MKDIR_P) $(AST_H_DIR) $(ASDLGEN) -h $(AST_H_DIR) $(AST_ASDL) $(AST_C): $(AST_ASDL) $(ASDLGEN_FILES) + $(MKDIR_P) $(AST_C_DIR) $(ASDLGEN) -c $(AST_C_DIR) $(AST_ASDL) Python/compile.o Python/symtable.o Python/ast.o: $(GRAMMAR_H) $(AST_H) diff --git a/Misc/NEWS b/Misc/NEWS index 25be2aa88ee..8b0b145b787 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -495,6 +495,9 @@ Tests Build ----- +- Issue #15819: Make sure we can build Python out-of-tree from a readonly + source directory. (Somewhat related to Issue #9860.) + - Issue #15645: Ensure 2to3 grammar pickles are properly installed. - Issue #15560: Fix building _sqlite3 extension on OS X with an SDK. diff --git a/configure b/configure index 9e7cfc06b2c..f9a62613a34 100755 --- a/configure +++ b/configure @@ -641,6 +641,7 @@ BASECFLAGS OPT ABIFLAGS LN +MKDIR_P INSTALL_DATA INSTALL_SCRIPT INSTALL_PROGRAM @@ -5438,6 +5439,48 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}' test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a thread-safe mkdir -p" >&5 +$as_echo_n "checking for a thread-safe mkdir -p... " >&6; } +if test -z "$MKDIR_P"; then + if ${ac_cv_path_mkdir+:} false; then : + $as_echo_n "(cached) " >&6 +else + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH$PATH_SEPARATOR/opt/sfw/bin +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_prog in mkdir gmkdir; do + for ac_exec_ext in '' $ac_executable_extensions; do + { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_test_x "$as_dir/$ac_prog$ac_exec_ext"; } || continue + case `"$as_dir/$ac_prog$ac_exec_ext" --version 2>&1` in #( + 'mkdir (GNU coreutils) '* | \ + 'mkdir (coreutils) '* | \ + 'mkdir (fileutils) '4.1*) + ac_cv_path_mkdir=$as_dir/$ac_prog$ac_exec_ext + break 3;; + esac + done + done + done +IFS=$as_save_IFS + +fi + + test -d ./--version && rmdir ./--version + if test "${ac_cv_path_mkdir+set}" = set; then + MKDIR_P="$ac_cv_path_mkdir -p" + else + # As a last resort, use the slow shell script. Don't cache a + # value for MKDIR_P within a source directory, because that will + # break other packages using the cache if that directory is + # removed, or if the value is a relative name. + MKDIR_P="$ac_install_sh -d" + fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $MKDIR_P" >&5 +$as_echo "$MKDIR_P" >&6; } + # Not every filesystem supports hard links @@ -14567,6 +14610,7 @@ gives unlimited permission to copy, distribute and modify it." ac_pwd='$ac_pwd' srcdir='$srcdir' INSTALL='$INSTALL' +MKDIR_P='$MKDIR_P' test -n "\$AWK" || AWK=awk _ACEOF @@ -15134,6 +15178,11 @@ ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;; *) ac_INSTALL=$ac_top_build_prefix$INSTALL ;; esac + ac_MKDIR_P=$MKDIR_P + case $MKDIR_P in + [\\/$]* | ?:[\\/]* ) ;; + */*) ac_MKDIR_P=$ac_top_build_prefix$MKDIR_P ;; + esac _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 @@ -15188,6 +15237,7 @@ s&@builddir@&$ac_builddir&;t t s&@abs_builddir@&$ac_abs_builddir&;t t s&@abs_top_builddir@&$ac_abs_top_builddir&;t t s&@INSTALL@&$ac_INSTALL&;t t +s&@MKDIR_P@&$ac_MKDIR_P&;t t $ac_datarootdir_hack " eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$ac_tmp/subs.awk" \ diff --git a/configure.ac b/configure.ac index 138d562011a..84d723aa8a7 100644 --- a/configure.ac +++ b/configure.ac @@ -869,6 +869,7 @@ bsdos*|hp*|HP*) fi esac AC_PROG_INSTALL +AC_PROG_MKDIR_P # Not every filesystem supports hard links AC_SUBST(LN) From e60ee2985cfd5e5057da1a6e25e74cf717792fef Mon Sep 17 00:00:00 2001 From: Trent Nelson Date: Thu, 30 Aug 2012 14:52:38 +0000 Subject: [PATCH 019/201] Issue #15819: Fix out-of-tree builds from a readonly source. --- Makefile.pre.in | 10 ++++++---- Misc/NEWS | 3 +++ 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/Makefile.pre.in b/Makefile.pre.in index e0356e6c7fb..681286598d9 100644 --- a/Makefile.pre.in +++ b/Makefile.pre.in @@ -229,8 +229,8 @@ IO_OBJS= \ ########################################################################## # Grammar -GRAMMAR_H= $(srcdir)/Include/graminit.h -GRAMMAR_C= $(srcdir)/Python/graminit.c +GRAMMAR_H= Include/graminit.h +GRAMMAR_C= Python/graminit.c GRAMMAR_INPUT= $(srcdir)/Grammar/Grammar @@ -296,9 +296,9 @@ PGENOBJS= $(POBJS) $(PGOBJS) ########################################################################## # AST -AST_H_DIR= $(srcdir)/Include +AST_H_DIR= Include AST_H= $(AST_H_DIR)/Python-ast.h -AST_C_DIR= $(srcdir)/Python +AST_C_DIR= Python AST_C= $(AST_C_DIR)/Python-ast.c AST_ASDL= $(srcdir)/Parser/Python.asdl @@ -665,9 +665,11 @@ Parser/printgrammar.o: $(srcdir)/Parser/printgrammar.c Parser/pgenmain.o: $(srcdir)/Include/parsetok.h $(AST_H): $(AST_ASDL) $(ASDLGEN_FILES) + $(MKDIR_P) $(AST_H_DIR) $(ASDLGEN) -h $(AST_H_DIR) $(AST_ASDL) $(AST_C): $(AST_H) $(AST_ASDL) $(ASDLGEN_FILES) + $(MKDIR_P) $(AST_C_DIR) $(ASDLGEN) -c $(AST_C_DIR) $(AST_ASDL) Python/compile.o Python/symtable.o Python/ast.o: $(GRAMMAR_H) $(AST_H) diff --git a/Misc/NEWS b/Misc/NEWS index dad1622c44d..12766944440 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -25,6 +25,9 @@ Tests Build ----- +- Issue #15819: Make sure we can build Python out-of-tree from a readonly + source directory. (Somewhat related to Issue #9860.) + Documentation ------------- From ff63e7afcf23dd5559c57d5486453fe60ee50be5 Mon Sep 17 00:00:00 2001 From: Andrew Svetlov Date: Fri, 31 Aug 2012 13:54:54 +0300 Subject: [PATCH 020/201] Issue #15825: fix typo in OrderedDict docs. Patch by Mike Hoy. --- Doc/ACKS.txt | 1 + Doc/library/collections.rst | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/Doc/ACKS.txt b/Doc/ACKS.txt index 03e1a6badc0..26f7ea907f6 100644 --- a/Doc/ACKS.txt +++ b/Doc/ACKS.txt @@ -95,6 +95,7 @@ docs@python.org), and we'll be glad to correct the problem. * Rob Hooft * Brian Hooper * Randall Hopper + * Mike Hoy * Michael Hudson * Eric Huss * Jeremy Hylton diff --git a/Doc/library/collections.rst b/Doc/library/collections.rst index e90b25e8705..57e04810f75 100644 --- a/Doc/library/collections.rst +++ b/Doc/library/collections.rst @@ -878,7 +878,7 @@ are deleted. But when new keys are added, the keys are appended to the end and the sort is not maintained. It is also straight-forward to create an ordered dictionary variant -that the remembers the order the keys were *last* inserted. +that remembers the order the keys were *last* inserted. If a new entry overwrites an existing entry, the original insertion position is changed and moved to the end:: From 5d0612411e3812d7e851fabeb5fd7f2f103f50d2 Mon Sep 17 00:00:00 2001 From: Nick Coghlan Date: Sat, 1 Sep 2012 00:13:45 +1000 Subject: [PATCH 021/201] Issue #15828: Restore support for C extension modules in imp.load_module() --- Lib/imp.py | 6 ++++-- Lib/test/test_imp.py | 29 +++++++++++++++++++++++++++++ Lib/test/test_import.py | 19 ------------------- Misc/NEWS | 2 ++ 4 files changed, 35 insertions(+), 21 deletions(-) diff --git a/Lib/imp.py b/Lib/imp.py index 80b04c83ed0..da9c84ee39d 100644 --- a/Lib/imp.py +++ b/Lib/imp.py @@ -153,13 +153,15 @@ def load_module(name, file, filename, details): warnings.simplefilter('ignore') if mode and (not mode.startswith(('r', 'U')) or '+' in mode): raise ValueError('invalid file open mode {!r}'.format(mode)) - elif file is None and type_ in {PY_SOURCE, PY_COMPILED}: + elif file is None and type_ in {PY_SOURCE, PY_COMPILED, C_EXTENSION}: msg = 'file object required for import (type code {})'.format(type_) raise ValueError(msg) elif type_ == PY_SOURCE: return load_source(name, filename, file) elif type_ == PY_COMPILED: return load_compiled(name, filename, file) + elif type_ == C_EXTENSION: + return load_dynamic(name, filename, file) elif type_ == PKG_DIRECTORY: return load_package(name, filename) elif type_ == C_BUILTIN: @@ -167,7 +169,7 @@ def load_module(name, file, filename, details): elif type_ == PY_FROZEN: return init_frozen(name) else: - msg = "Don't know how to import {} (type code {}".format(name, type_) + msg = "Don't know how to import {} (type code {})".format(name, type_) raise ImportError(msg, name=name) diff --git a/Lib/test/test_imp.py b/Lib/test/test_imp.py index a660278c9c7..20e5608e81b 100644 --- a/Lib/test/test_imp.py +++ b/Lib/test/test_imp.py @@ -186,6 +186,35 @@ def test_issue9319(self): self.assertRaises(SyntaxError, imp.find_module, "badsyntax_pep3120", [path]) + def test_load_from_source(self): + # Verify that the imp module can correctly load and find .py files + # XXX (ncoghlan): It would be nice to use support.CleanImport + # here, but that breaks because the os module registers some + # handlers in copy_reg on import. Since CleanImport doesn't + # revert that registration, the module is left in a broken + # state after reversion. Reinitialising the module contents + # and just reverting os.environ to its previous state is an OK + # workaround + orig_path = os.path + orig_getenv = os.getenv + with support.EnvironmentVarGuard(): + x = imp.find_module("os") + self.addCleanup(x[0].close) + new_os = imp.load_module("os", *x) + self.assertIs(os, new_os) + self.assertIs(orig_path, new_os.path) + self.assertIsNot(orig_getenv, new_os.getenv) + + @support.cpython_only + def test_issue15828_load_extensions(self): + # Issue 15828 picked up that the adapter between the old imp API + # and importlib couldn't handle C extensions + example = "_heapq" + x = imp.find_module(example) + self.addCleanup(x[0].close) + mod = imp.load_module(example, *x) + self.assertEqual(mod.__name__, example) + def test_load_dynamic_ImportError_path(self): # Issue #1559549 added `name` and `path` attributes to ImportError # in order to provide better detail. Issue #10854 implemented those diff --git a/Lib/test/test_import.py b/Lib/test/test_import.py index 60447dc26bc..19863b936af 100644 --- a/Lib/test/test_import.py +++ b/Lib/test/test_import.py @@ -149,25 +149,6 @@ def test_cached_mode_issue_2051(self): self.assertEqual(oct(stat.S_IMODE(stat_info.st_mode)), oct(mode)) - def test_imp_module(self): - # Verify that the imp module can correctly load and find .py files - # XXX (ncoghlan): It would be nice to use support.CleanImport - # here, but that breaks because the os module registers some - # handlers in copy_reg on import. Since CleanImport doesn't - # revert that registration, the module is left in a broken - # state after reversion. Reinitialising the module contents - # and just reverting os.environ to its previous state is an OK - # workaround - orig_path = os.path - orig_getenv = os.getenv - with EnvironmentVarGuard(): - x = imp.find_module("os") - self.addCleanup(x[0].close) - new_os = imp.load_module("os", *x) - self.assertIs(os, new_os) - self.assertIs(orig_path, new_os.path) - self.assertIsNot(orig_getenv, new_os.getenv) - def test_bug7732(self): source = TESTFN + '.py' os.mkdir(source) diff --git a/Misc/NEWS b/Misc/NEWS index 12766944440..e59173d177a 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -54,6 +54,8 @@ Core and Builtins Library ------- +- Issue #15828: Restore support for C extensions in imp.load_module() + - Issue #10650: Deprecate the watchexp parameter of the Decimal.quantize() method. From f7d176efe944d199f822ccdd1542f9bf06eeb850 Mon Sep 17 00:00:00 2001 From: Brett Cannon Date: Fri, 31 Aug 2012 11:31:20 -0400 Subject: [PATCH 022/201] Issue #15828: Don't try to close a file if imp.find_module() doesn't return one. --- Lib/test/test_imp.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Lib/test/test_imp.py b/Lib/test/test_imp.py index 20e5608e81b..65c9f25c838 100644 --- a/Lib/test/test_imp.py +++ b/Lib/test/test_imp.py @@ -211,7 +211,9 @@ def test_issue15828_load_extensions(self): # and importlib couldn't handle C extensions example = "_heapq" x = imp.find_module(example) - self.addCleanup(x[0].close) + file_ = x[0] + if file_ is not None: + self.addCleanup(file_.close) mod = imp.load_module(example, *x) self.assertEqual(mod.__name__, example) From 2a0fb147ec7149b732083adedb6c6d1ba5ef8ebb Mon Sep 17 00:00:00 2001 From: Trent Nelson Date: Fri, 31 Aug 2012 17:11:39 -0400 Subject: [PATCH 023/201] Remove trailing whitespace in order to silence warnings on HP-UX. --- Include/pyfpe.h | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Include/pyfpe.h b/Include/pyfpe.h index 19110ab058b..e957119dd52 100644 --- a/Include/pyfpe.h +++ b/Include/pyfpe.h @@ -4,8 +4,8 @@ extern "C" { #endif /* - --------------------------------------------------------------------- - / Copyright (c) 1996. \ + --------------------------------------------------------------------- + / Copyright (c) 1996. \ | The Regents of the University of California. | | All rights reserved. | | | @@ -37,8 +37,8 @@ extern "C" { | opinions of authors expressed herein do not necessarily state or | | reflect those of the United States Government or the University | | of California, and shall not be used for advertising or product | - \ endorsement purposes. / - --------------------------------------------------------------------- + \ endorsement purposes. / + --------------------------------------------------------------------- */ /* From 6fb8fb17bff87fdd5e738430502f34f8729766e3 Mon Sep 17 00:00:00 2001 From: R David Murray Date: Fri, 31 Aug 2012 22:45:20 -0400 Subject: [PATCH 024/201] #12776,#11839: call argparse type function only once. Before, the type function was called twice in the case where the default was specified and the argument was given as well. This was especially problematic for the FileType type, as a default file would always be opened, even if a file argument was specified on the command line. Patch by Arnaud Fontaine, with additional test by Mike Meyer. --- Lib/argparse.py | 21 +++++++++++------ Lib/test/test_argparse.py | 48 +++++++++++++++++++++++++++++++++++++++ Misc/ACKS | 1 + Misc/NEWS | 6 +++++ 4 files changed, 69 insertions(+), 7 deletions(-) diff --git a/Lib/argparse.py b/Lib/argparse.py index 0ee8c0865e8..f77c0c2d75f 100644 --- a/Lib/argparse.py +++ b/Lib/argparse.py @@ -1714,10 +1714,7 @@ def parse_known_args(self, args=None, namespace=None): if action.dest is not SUPPRESS: if not hasattr(namespace, action.dest): if action.default is not SUPPRESS: - default = action.default - if isinstance(action.default, str): - default = self._get_value(action, default) - setattr(namespace, action.dest, default) + setattr(namespace, action.dest, action.default) # add any parser defaults that aren't present for dest in self._defaults: @@ -1945,12 +1942,22 @@ def consume_positionals(start_index): if positionals: self.error(_('too few arguments')) - # make sure all required actions were present + # make sure all required actions were present, and convert defaults. for action in self._actions: - if action.required: - if action not in seen_actions: + if action not in seen_actions: + if action.required: name = _get_action_name(action) self.error(_('argument %s is required') % name) + else: + # Convert action default now instead of doing it before + # parsing arguments to avoid calling convert functions + # twice (which may fail) if the argument was given, but + # only if it was defined already in the namespace + if (action.default is not None and + hasattr(namespace, action.dest) and + action.default is getattr(namespace, action.dest)): + setattr(namespace, action.dest, + self._get_value(action, action.default)) # make sure all required groups had one option present for group in self._mutually_exclusive_groups: diff --git a/Lib/test/test_argparse.py b/Lib/test/test_argparse.py index 3a2976126f2..cc051607e97 100644 --- a/Lib/test/test_argparse.py +++ b/Lib/test/test_argparse.py @@ -1462,6 +1462,22 @@ def setUp(self): ('readonly', NS(x=None, spam=RFile('readonly'))), ] +class TestFileTypeDefaults(TempDirMixin, ParserTestCase): + """Test that a file is not created unless the default is needed""" + def setUp(self): + super(TestFileTypeDefaults, self).setUp() + file = open(os.path.join(self.temp_dir, 'good'), 'w') + file.write('good') + file.close() + + argument_signatures = [ + Sig('-c', type=argparse.FileType('r'), default='no-file.txt'), + ] + # should provoke no such file error + failures = [''] + # should not provoke error because default file is created + successes = [('-c good', NS(c=RFile('good')))] + class TestFileTypeRB(TempDirMixin, ParserTestCase): """Test the FileType option/argument type for reading files""" @@ -4468,6 +4484,38 @@ def spam(string): else: self.fail() +# ================================================ +# Check that the type function is called only once +# ================================================ + +class TestTypeFunctionCallOnlyOnce(TestCase): + + def test_type_function_call_only_once(self): + def spam(string_to_convert): + self.assertEqual(string_to_convert, 'spam!') + return 'foo_converted' + + parser = argparse.ArgumentParser() + parser.add_argument('--foo', type=spam, default='bar') + args = parser.parse_args('--foo spam!'.split()) + self.assertEqual(NS(foo='foo_converted'), args) + +# ================================================================ +# Check that the type function is called with a non-string default +# ================================================================ + +class TestTypeFunctionCallWithNonStringDefault(TestCase): + + def test_type_function_call_with_non_string_default(self): + def spam(int_to_convert): + self.assertEqual(int_to_convert, 0) + return 'foo_converted' + + parser = argparse.ArgumentParser() + parser.add_argument('--foo', type=spam, default=0) + args = parser.parse_args([]) + self.assertEqual(NS(foo='foo_converted'), args) + # ====================== # parse_known_args tests # ====================== diff --git a/Misc/ACKS b/Misc/ACKS index a46ee843e5d..f534143cb60 100644 --- a/Misc/ACKS +++ b/Misc/ACKS @@ -305,6 +305,7 @@ Nils Fischbeck Frederik Fix Matt Fleming Hernán Martínez Foffani +Arnaud Fontaine Michael Foord Amaury Forgeot d'Arc Doug Fort diff --git a/Misc/NEWS b/Misc/NEWS index 8b0b145b787..c78dc96ee75 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -112,6 +112,12 @@ Core and Builtins Library ------- +- Issue #12776,#11839: call argparse type function (specified by add_argument) + only once. Before, the type function was called twice in the case where the + default was specified and the argument was given as well. This was + especially problematic for the FileType type, as a default file would always + be opened, even if a file argument was specified on the command line. + - Issue #13370: Ensure that ctypes works on Mac OS X when Python is compiled using the clang compiler From 1c371b255ff15971f2aac1f1ff4a248718744af3 Mon Sep 17 00:00:00 2001 From: Petri Lehtinen Date: Sat, 1 Sep 2012 14:22:36 +0300 Subject: [PATCH 025/201] #15802: Fix test logic in TestMaildir.test_create_tmp --- Lib/test/test_mailbox.py | 10 +++++----- Misc/NEWS | 3 +++ 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/Lib/test/test_mailbox.py b/Lib/test/test_mailbox.py index 65120f7af9b..b83e2c3d5af 100644 --- a/Lib/test/test_mailbox.py +++ b/Lib/test/test_mailbox.py @@ -759,13 +759,13 @@ def test_create_tmp(self, repetitions=10): self.assertIsNot(match, None, "Invalid file name: '%s'" % tail) groups = match.groups() if previous_groups is not None: - self.assertTrue(int(groups[0] >= previous_groups[0]), + self.assertGreaterEqual(int(groups[0]), int(previous_groups[0]), "Non-monotonic seconds: '%s' before '%s'" % (previous_groups[0], groups[0])) - self.assertTrue(int(groups[1] >= previous_groups[1]) or - groups[0] != groups[1], - "Non-monotonic milliseconds: '%s' before '%s'" % - (previous_groups[1], groups[1])) + if int(groups[0]) == int(previous_groups[0]): + self.assertGreaterEqual(int(groups[1]), int(previous_groups[1]), + "Non-monotonic milliseconds: '%s' before '%s'" % + (previous_groups[1], groups[1])) self.assertEqual(int(groups[2]), pid, "Process ID mismatch: '%s' should be '%s'" % (groups[2], pid)) diff --git a/Misc/NEWS b/Misc/NEWS index c78dc96ee75..4bb9698ac1d 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -457,6 +457,9 @@ Extension Modules Tests ----- +- Issue #15802: Fix test logic in TestMaildir.test_create_tmp. Patch + by Serhiy Storchaka. + - Issue #15747: ZFS always returns EOPNOTSUPP when attempting to set the UF_IMMUTABLE flag (via either chflags or lchflags); refactor affected tests in test_posix.py to account for this. From a10e2fbe0bb820d2c893653b4e42b10cb7d5eb27 Mon Sep 17 00:00:00 2001 From: Stefan Krah Date: Sat, 1 Sep 2012 14:21:22 +0200 Subject: [PATCH 026/201] Compile _decimal without asserts and update benchmark results. --- Doc/whatsnew/3.3.rst | 2 +- setup.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Doc/whatsnew/3.3.rst b/Doc/whatsnew/3.3.rst index e019ea7f700..7de02562028 100644 --- a/Doc/whatsnew/3.3.rst +++ b/Doc/whatsnew/3.3.rst @@ -1119,7 +1119,7 @@ at http://www.bytereef.org/mpdecimal/quickstart.html. +---------+-------------+--------------+-------------+ | | decimal.py | _decimal | speedup | +=========+=============+==============+=============+ - | pi | 38.89s | 0.38s | 100x | + | pi | 42.02 | 0.345 | 120x | +---------+-------------+--------------+-------------+ | telco | 172.19s | 5.68s | 30x | +---------+-------------+--------------+-------------+ diff --git a/setup.py b/setup.py index 7f863a47896..9ddf2e9add3 100644 --- a/setup.py +++ b/setup.py @@ -1897,7 +1897,7 @@ def detect_ctypes(self, inc_dirs, lib_dirs): def _decimal_ext(self): extra_compile_args = [] - undef_macros = ['NDEBUG'] + undef_macros = [] if '--with-system-libmpdec' in sysconfig.get_config_var("CONFIG_ARGS"): include_dirs = [] libraries = ['mpdec'] From 49dc1d401300b671eb364599042028df399b0bf4 Mon Sep 17 00:00:00 2001 From: Stefan Krah Date: Sat, 1 Sep 2012 14:27:51 +0200 Subject: [PATCH 027/201] Add missing unit. --- Doc/whatsnew/3.3.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Doc/whatsnew/3.3.rst b/Doc/whatsnew/3.3.rst index 7de02562028..47cbd4ec4dd 100644 --- a/Doc/whatsnew/3.3.rst +++ b/Doc/whatsnew/3.3.rst @@ -1119,7 +1119,7 @@ at http://www.bytereef.org/mpdecimal/quickstart.html. +---------+-------------+--------------+-------------+ | | decimal.py | _decimal | speedup | +=========+=============+==============+=============+ - | pi | 42.02 | 0.345 | 120x | + | pi | 42.02s | 0.345s | 120x | +---------+-------------+--------------+-------------+ | telco | 172.19s | 5.68s | 30x | +---------+-------------+--------------+-------------+ From dbf56c2ef396311e4997e4631ce9a701b0f151f2 Mon Sep 17 00:00:00 2001 From: Stefan Krah Date: Sat, 1 Sep 2012 14:34:45 +0200 Subject: [PATCH 028/201] Issue #15814: Document planned restrictions for memoryview hashes in 3.3.1. --- Doc/library/stdtypes.rst | 22 +++++++--------------- 1 file changed, 7 insertions(+), 15 deletions(-) diff --git a/Doc/library/stdtypes.rst b/Doc/library/stdtypes.rst index e49370394a1..23d7fe16e67 100644 --- a/Doc/library/stdtypes.rst +++ b/Doc/library/stdtypes.rst @@ -2376,8 +2376,8 @@ copying. >>> data bytearray(b'z1spam') - Memoryviews of hashable (read-only) types are also hashable. The hash - is defined as ``hash(m) == hash(m.tobytes())``:: + Memoryviews of hashable (read-only) types with formats 'B', 'b' or 'c' + are also hashable. The hash is defined as ``hash(m) == hash(m.tobytes())``:: >>> v = memoryview(b'abcefg') >>> hash(v) == hash(b'abcefg') @@ -2387,21 +2387,13 @@ copying. >>> hash(v[::-2]) == hash(b'abcefg'[::-2]) True - Hashing of multi-dimensional objects is supported:: - - >>> buf = bytes(list(range(12))) - >>> x = memoryview(buf) - >>> y = x.cast('B', shape=[2,2,3]) - >>> x.tolist() - [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11] - >>> y.tolist() - [[[0, 1, 2], [3, 4, 5]], [[6, 7, 8], [9, 10, 11]]] - >>> hash(x) == hash(y) == hash(y.tobytes()) - True - .. versionchanged:: 3.3 - Memoryview objects are now hashable. + Memoryview objects with formats 'B', 'b' or 'c' are now hashable. + .. note:: + Hashing of memoryviews with formats other than 'B', 'b' or 'c' is + possible in version 3.3.0, but will raise an error in 3.3.1 in order + to be compatible with the new memoryview equality definition. :class:`memoryview` has several methods: From 9f16e44a479d9efdfd4315df93a9e83901ef96b5 Mon Sep 17 00:00:00 2001 From: Victor Stinner Date: Sat, 1 Sep 2012 15:00:34 +0200 Subject: [PATCH 029/201] Close #14223: Fix window.addch(curses.ACS_HLINE) Fix window.addch() of the curses module for special characters like curses.ACS_HLINE: the Python function addch(int) and addch(bytes) is now calling the C function waddch()/mvwaddch() (as it was done in Python 3.2), instead of wadd_wch()/mvwadd_wch(). The Python function addch(str) is still calling the C function wadd_wch()/mvwadd_wch() if the Python curses is linked to libncursesw. --- Misc/NEWS | 7 +++++++ Modules/_cursesmodule.c | 34 +++++++--------------------------- 2 files changed, 14 insertions(+), 27 deletions(-) diff --git a/Misc/NEWS b/Misc/NEWS index b1be8895103..fef71cfdb8a 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -73,6 +73,13 @@ Library always returning an integer. So it is now possible to distinguish special keys like keypad keys. +- Issue #14223: Fix window.addch() of the curses module for special characters + like curses.ACS_HLINE: the Python function addch(int) and addch(bytes) is now + calling the C function waddch()/mvwaddch() (as it was done in Python 3.2), + instead of wadd_wch()/mvwadd_wch(). The Python function addch(str) is still + calling the C function wadd_wch()/mvwadd_wch() if the Python curses is linked + to libncursesw. + What's New in Python 3.3.0 Release Candidate 1? =============================================== diff --git a/Modules/_cursesmodule.c b/Modules/_cursesmodule.c index 0436e7fec8e..3f9ca1313da 100644 --- a/Modules/_cursesmodule.c +++ b/Modules/_cursesmodule.c @@ -280,7 +280,6 @@ PyCurses_ConvertToCchar_t(PyCursesWindowObject *win, PyObject *obj, #endif ) { - int ret = 0; long value; #ifdef HAVE_NCURSESW wchar_t buffer[2]; @@ -304,7 +303,6 @@ PyCurses_ConvertToCchar_t(PyCursesWindowObject *win, PyObject *obj, } else if(PyBytes_Check(obj) && PyBytes_Size(obj) == 1) { value = (unsigned char)PyBytes_AsString(obj)[0]; - ret = 1; } else if (PyLong_CheckExact(obj)) { int overflow; @@ -314,11 +312,6 @@ PyCurses_ConvertToCchar_t(PyCursesWindowObject *win, PyObject *obj, "int doesn't fit in long"); return 0; } -#ifdef HAVE_NCURSESW - ret = 2; -#else - ret = 1; -#endif } else { PyErr_Format(PyExc_TypeError, @@ -326,27 +319,14 @@ PyCurses_ConvertToCchar_t(PyCursesWindowObject *win, PyObject *obj, Py_TYPE(obj)->tp_name); return 0; } -#ifdef HAVE_NCURSESW - if (ret == 2) { - memset(wch->chars, 0, sizeof(wch->chars)); - wch->chars[0] = (wchar_t)value; - if ((long)wch->chars[0] != value) { - PyErr_Format(PyExc_OverflowError, - "character doesn't fit in wchar_t"); - return 0; - } + + *ch = (chtype)value; + if ((long)*ch != value) { + PyErr_Format(PyExc_OverflowError, + "byte doesn't fit in chtype"); + return 0; } - else -#endif - { - *ch = (chtype)value; - if ((long)*ch != value) { - PyErr_Format(PyExc_OverflowError, - "byte doesn't fit in chtype"); - return 0; - } - } - return ret; + return 1; } /* Convert an object to a byte string (char*) or a wide character string From 6a42bd67d7dc251ea96784c77dfc130a8456a486 Mon Sep 17 00:00:00 2001 From: Benjamin Peterson Date: Sat, 1 Sep 2012 23:04:38 -0400 Subject: [PATCH 030/201] Make super() internal errors RuntimeError instead of SystemError (closes #15839) --- Lib/test/test_super.py | 15 +++++++++++++++ Misc/NEWS | 2 ++ Objects/typeobject.c | 14 +++++++------- 3 files changed, 24 insertions(+), 7 deletions(-) diff --git a/Lib/test/test_super.py b/Lib/test/test_super.py index 32eb1c09091..f6469cf2639 100644 --- a/Lib/test/test_super.py +++ b/Lib/test/test_super.py @@ -115,6 +115,21 @@ def f(): return __class__ self.assertIs(X.f(), X) + def test_obscure_super_errors(self): + def f(): + super() + self.assertRaises(RuntimeError, f) + def f(x): + del x + super() + self.assertRaises(RuntimeError, f, None) + class X: + def f(x): + nonlocal __class__ + del __class__ + super() + self.assertRaises(RuntimeError, X().f) + def test_main(): support.run_unittest(TestSuper) diff --git a/Misc/NEWS b/Misc/NEWS index fef71cfdb8a..2af87eed7b1 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -10,6 +10,8 @@ What's New in Python 3.3.1 Core and Builtins ----------------- +- Issue #15839: Convert SystemErrors in super() to RuntimeErrors. + - Issue #15801: Make sure mappings passed to '%' formatting are actually subscriptable. diff --git a/Objects/typeobject.c b/Objects/typeobject.c index a357ced2201..bc01b0da85b 100644 --- a/Objects/typeobject.c +++ b/Objects/typeobject.c @@ -6497,18 +6497,18 @@ super_init(PyObject *self, PyObject *args, PyObject *kwds) PyCodeObject *co = f->f_code; Py_ssize_t i, n; if (co == NULL) { - PyErr_SetString(PyExc_SystemError, + PyErr_SetString(PyExc_RuntimeError, "super(): no code object"); return -1; } if (co->co_argcount == 0) { - PyErr_SetString(PyExc_SystemError, + PyErr_SetString(PyExc_RuntimeError, "super(): no arguments"); return -1; } obj = f->f_localsplus[0]; if (obj == NULL) { - PyErr_SetString(PyExc_SystemError, + PyErr_SetString(PyExc_RuntimeError, "super(): arg[0] deleted"); return -1; } @@ -6527,18 +6527,18 @@ super_init(PyObject *self, PyObject *args, PyObject *kwds) PyTuple_GET_SIZE(co->co_cellvars) + i; PyObject *cell = f->f_localsplus[index]; if (cell == NULL || !PyCell_Check(cell)) { - PyErr_SetString(PyExc_SystemError, + PyErr_SetString(PyExc_RuntimeError, "super(): bad __class__ cell"); return -1; } type = (PyTypeObject *) PyCell_GET(cell); if (type == NULL) { - PyErr_SetString(PyExc_SystemError, + PyErr_SetString(PyExc_RuntimeError, "super(): empty __class__ cell"); return -1; } if (!PyType_Check(type)) { - PyErr_Format(PyExc_SystemError, + PyErr_Format(PyExc_RuntimeError, "super(): __class__ is not a type (%s)", Py_TYPE(type)->tp_name); return -1; @@ -6547,7 +6547,7 @@ super_init(PyObject *self, PyObject *args, PyObject *kwds) } } if (type == NULL) { - PyErr_SetString(PyExc_SystemError, + PyErr_SetString(PyExc_RuntimeError, "super(): __class__ cell not found"); return -1; } From a3b84fb2f9d555e9efac556ea24f4ad75a54b4c8 Mon Sep 17 00:00:00 2001 From: Stefan Krah Date: Sun, 2 Sep 2012 14:50:56 +0200 Subject: [PATCH 031/201] Issue #15814: Documentation: disallow hashing of multi-dimensional memoryviews. --- Doc/library/stdtypes.rst | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/Doc/library/stdtypes.rst b/Doc/library/stdtypes.rst index 23d7fe16e67..90f3e54cd56 100644 --- a/Doc/library/stdtypes.rst +++ b/Doc/library/stdtypes.rst @@ -2376,8 +2376,9 @@ copying. >>> data bytearray(b'z1spam') - Memoryviews of hashable (read-only) types with formats 'B', 'b' or 'c' - are also hashable. The hash is defined as ``hash(m) == hash(m.tobytes())``:: + One-dimensional memoryviews of hashable (read-only) types with formats + 'B', 'b' or 'c' are also hashable. The hash is defined as + ``hash(m) == hash(m.tobytes())``:: >>> v = memoryview(b'abcefg') >>> hash(v) == hash(b'abcefg') @@ -2388,12 +2389,13 @@ copying. True .. versionchanged:: 3.3 - Memoryview objects with formats 'B', 'b' or 'c' are now hashable. + One-dimensional memoryviews with formats 'B', 'b' or 'c' are now hashable. .. note:: - Hashing of memoryviews with formats other than 'B', 'b' or 'c' is - possible in version 3.3.0, but will raise an error in 3.3.1 in order - to be compatible with the new memoryview equality definition. + Hashing of memoryviews with formats other than 'B', 'b' or 'c' as well + as hashing of multi-dimensional memoryviews is possible in version 3.3.0, + but will raise an error in 3.3.1 in order to be compatible with the new + memoryview equality definition. :class:`memoryview` has several methods: From 057119b0b77aec2956e6beb3de8a0690bca67644 Mon Sep 17 00:00:00 2001 From: Antoine Pitrou Date: Sun, 2 Sep 2012 17:56:33 +0200 Subject: [PATCH 032/201] Fix C++-style comment (xlc compilation failure) --- Objects/unicodeobject.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Objects/unicodeobject.c b/Objects/unicodeobject.c index af4a13a47c7..279516809f9 100644 --- a/Objects/unicodeobject.c +++ b/Objects/unicodeobject.c @@ -9146,7 +9146,7 @@ tailmatch(PyObject *self, /* We do not need to compare 0 and len(substring)-1 because the if statement above ensured already that they are equal when we end up here. */ - // TODO: honor direction and do a forward or backwards search + /* TODO: honor direction and do a forward or backwards search */ for (i = 1; i < end_sub; ++i) { if (PyUnicode_READ(kind_self, data_self, offset + i) != PyUnicode_READ(kind_sub, data_sub, i)) From 2e2c903700991aa9f7e96d7a7fdaed3628dc7e1e Mon Sep 17 00:00:00 2001 From: Benjamin Peterson Date: Sun, 2 Sep 2012 14:23:15 -0400 Subject: [PATCH 033/201] prevert ast errors from being normalized before ast_error_finish is called (closes #15846) --- Lib/test/test_ast.py | 6 ++++++ Misc/NEWS | 3 +++ Python/ast.c | 8 ++++++++ 3 files changed, 17 insertions(+) diff --git a/Lib/test/test_ast.py b/Lib/test/test_ast.py index e22d4de88ba..2887092a7d7 100644 --- a/Lib/test/test_ast.py +++ b/Lib/test/test_ast.py @@ -386,6 +386,12 @@ def test_parse(self): b = compile('foo(1 + 1)', '', 'exec', ast.PyCF_ONLY_AST) self.assertEqual(ast.dump(a), ast.dump(b)) + def test_parse_in_error(self): + try: + 1/0 + except Exception: + self.assertRaises(SyntaxError, ast.parse, r"'\U'") + def test_dump(self): node = ast.parse('spam(eggs, "and cheese")') self.assertEqual(ast.dump(node), diff --git a/Misc/NEWS b/Misc/NEWS index 4bb9698ac1d..544bf67afb2 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -10,6 +10,9 @@ What's New in Python 3.2.4 Core and Builtins ----------------- +- Issue #15846: Fix SystemError which happened when using ast.parse in an + exception handler on code with syntax errors. + - Issue #15761: Fix crash when PYTHONEXECUTABLE is set on Mac OS X. - Issue #15801: Make sure mappings passed to '%' formatting are actually diff --git a/Python/ast.c b/Python/ast.c index 6faf5b21a6e..3d0e3844b72 100644 --- a/Python/ast.c +++ b/Python/ast.c @@ -92,7 +92,15 @@ ast_error(const node *n, const char *errstr) PyObject *u = Py_BuildValue("zii", errstr, LINENO(n), n->n_col_offset); if (!u) return 0; + /* + * Prevent the error from being chained. PyErr_SetObject will normalize the + * exception in order to chain it. ast_error_finish, however, requires the + * error not to be normalized. + */ + PyObject *save = PyThreadState_GET()->exc_value; + PyThreadState_GET()->exc_value = NULL; PyErr_SetObject(PyExc_SyntaxError, u); + PyThreadState_GET()->exc_value = save; Py_DECREF(u); return 0; } From c5d7518a2eb139172f324a3c6a1ea78ee312b1a5 Mon Sep 17 00:00:00 2001 From: Benjamin Peterson Date: Sun, 2 Sep 2012 14:38:08 -0400 Subject: [PATCH 034/201] move variable decl to the top of the function --- Python/ast.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Python/ast.c b/Python/ast.c index 3d0e3844b72..d2bf032c509 100644 --- a/Python/ast.c +++ b/Python/ast.c @@ -89,7 +89,7 @@ new_identifier(const char* n, PyArena *arena) static int ast_error(const node *n, const char *errstr) { - PyObject *u = Py_BuildValue("zii", errstr, LINENO(n), n->n_col_offset); + PyObject *u = Py_BuildValue("zii", errstr, LINENO(n), n->n_col_offset), *save; if (!u) return 0; /* @@ -97,7 +97,7 @@ ast_error(const node *n, const char *errstr) * exception in order to chain it. ast_error_finish, however, requires the * error not to be normalized. */ - PyObject *save = PyThreadState_GET()->exc_value; + save = PyThreadState_GET()->exc_value; PyThreadState_GET()->exc_value = NULL; PyErr_SetObject(PyExc_SyntaxError, u); PyThreadState_GET()->exc_value = save; From bd0df50fb6fd54efee84707e9e372b5e9133ce03 Mon Sep 17 00:00:00 2001 From: Benjamin Peterson Date: Sun, 2 Sep 2012 15:04:51 -0400 Subject: [PATCH 035/201] get rid of ast_error_finish by passing the compiling struct to ast_error --- Lib/test/test_ast.py | 4 +- Python/ast.c | 188 ++++++++++++++++--------------------------- 2 files changed, 74 insertions(+), 118 deletions(-) diff --git a/Lib/test/test_ast.py b/Lib/test/test_ast.py index 413613f24b9..a8853c7e21f 100644 --- a/Lib/test/test_ast.py +++ b/Lib/test/test_ast.py @@ -411,7 +411,9 @@ def test_parse_in_error(self): try: 1/0 except Exception: - self.assertRaises(SyntaxError, ast.parse, r"'\U'") + with self.assertRaises(SyntaxError) as e: + ast.literal_eval(r"'\U'") + self.assertIsNotNone(e.exception.__context__) def test_dump(self): node = ast.parse('spam(eggs, "and cheese")') diff --git a/Python/ast.c b/Python/ast.c index c78b81e5644..aca5b09f03f 100644 --- a/Python/ast.c +++ b/Python/ast.c @@ -574,87 +574,43 @@ new_identifier(const char* n, struct compiling *c) #define NEW_IDENTIFIER(n) new_identifier(STR(n), c) -/* This routine provides an invalid object for the syntax error. - The outermost routine must unpack this error and create the - proper object. We do this so that we don't have to pass - the filename to everything function. - - XXX Maybe we should just pass the filename... -*/ - static int -ast_error(const node *n, const char *errstr) +ast_error(struct compiling *c, const node *n, const char *errmsg) { - PyObject *u = Py_BuildValue("zii", errstr, LINENO(n), n->n_col_offset), *save; - if (!u) - return 0; - /* - * Prevent the error from being chained. PyErr_SetObject will normalize the - * exception in order to chain it. ast_error_finish, however, requires the - * error not to be normalized. - */ - save = PyThreadState_GET()->exc_value; - PyThreadState_GET()->exc_value = NULL; - PyErr_SetObject(PyExc_SyntaxError, u); - PyThreadState_GET()->exc_value = save; - Py_DECREF(u); - return 0; -} - -static void -ast_error_finish(const char *filename) -{ - PyObject *type, *value, *tback, *errstr, *offset, *loc, *tmp; + PyObject *value, *errstr, *loc, *tmp; PyObject *filename_obj; - long lineno; - assert(PyErr_Occurred()); - if (!PyErr_ExceptionMatches(PyExc_SyntaxError)) - return; - - PyErr_Fetch(&type, &value, &tback); - errstr = PyTuple_GetItem(value, 0); - if (!errstr) - return; - Py_INCREF(errstr); - lineno = PyLong_AsLong(PyTuple_GetItem(value, 1)); - if (lineno == -1) { - Py_DECREF(errstr); - return; - } - offset = PyTuple_GetItem(value, 2); - if (!offset) { - Py_DECREF(errstr); - return; - } - Py_DECREF(value); - - loc = PyErr_ProgramText(filename, lineno); + loc = PyErr_ProgramText(c->c_filename, LINENO(n)); if (!loc) { Py_INCREF(Py_None); loc = Py_None; } - if (filename != NULL) - filename_obj = PyUnicode_DecodeFSDefault(filename); - else { + if (c->c_filename) { + filename_obj = PyUnicode_DecodeFSDefault(c->c_filename); + if (!filename_obj) { + Py_DECREF(loc); + return 0; + } + } else { Py_INCREF(Py_None); filename_obj = Py_None; } - if (filename_obj != NULL) - tmp = Py_BuildValue("(NlOO)", filename_obj, lineno, offset, loc); - else - tmp = NULL; - Py_DECREF(loc); - if (!tmp) { - Py_DECREF(errstr); - return; + tmp = Py_BuildValue("(NiiN)", filename_obj, LINENO(n), n->n_col_offset, loc); + if (!tmp) + return 0; + errstr = PyUnicode_FromString(errmsg); + if (!errstr) { + Py_DECREF(tmp); + return 0; } value = PyTuple_Pack(2, errstr, tmp); Py_DECREF(errstr); Py_DECREF(tmp); - if (!value) - return; - PyErr_Restore(type, value, tback); + if (value) { + PyErr_SetObject(PyExc_SyntaxError, value); + Py_DECREF(value); + } + return 0; } /* num_stmts() returns number of contained statements. @@ -732,11 +688,14 @@ PyAST_FromNode(const node *n, PyCompilerFlags *flags, const char *filename, struct compiling c; mod_ty res = NULL; + c.c_arena = arena; + c.c_filename = filename; + c.c_normalize = c.c_normalize_args = NULL; if (flags && flags->cf_flags & PyCF_SOURCE_IS_UTF8) { c.c_encoding = "utf-8"; if (TYPE(n) == encoding_decl) { #if 0 - ast_error(n, "encoding declaration in Unicode string"); + ast_error(c, n, "encoding declaration in Unicode string"); goto out; #endif n = CHILD(n, 0); @@ -748,9 +707,6 @@ PyAST_FromNode(const node *n, PyCompilerFlags *flags, const char *filename, /* PEP 3120 */ c.c_encoding = "utf-8"; } - c.c_arena = arena; - c.c_filename = filename; - c.c_normalize = c.c_normalize_args = NULL; k = 0; switch (TYPE(n)) { @@ -843,8 +799,6 @@ PyAST_FromNode(const node *n, PyCompilerFlags *flags, const char *filename, PyTuple_SET_ITEM(c.c_normalize_args, 1, NULL); Py_DECREF(c.c_normalize_args); } - if (!res) - ast_error_finish(filename); return res; } @@ -890,18 +844,18 @@ static const char* FORBIDDEN[] = { }; static int -forbidden_name(identifier name, const node *n, int full_checks) +forbidden_name(struct compiling *c, identifier name, const node *n, int full_checks) { assert(PyUnicode_Check(name)); if (PyUnicode_CompareWithASCIIString(name, "__debug__") == 0) { - ast_error(n, "assignment to keyword"); + ast_error(c, n, "assignment to keyword"); return 1; } if (full_checks) { const char **p; for (p = FORBIDDEN; *p; p++) { if (PyUnicode_CompareWithASCIIString(name, *p) == 0) { - ast_error(n, "assignment to keyword"); + ast_error(c, n, "assignment to keyword"); return 1; } } @@ -937,7 +891,7 @@ set_context(struct compiling *c, expr_ty e, expr_context_ty ctx, const node *n) switch (e->kind) { case Attribute_kind: e->v.Attribute.ctx = ctx; - if (ctx == Store && forbidden_name(e->v.Attribute.attr, n, 1)) + if (ctx == Store && forbidden_name(c, e->v.Attribute.attr, n, 1)) return 0; break; case Subscript_kind: @@ -950,7 +904,7 @@ set_context(struct compiling *c, expr_ty e, expr_context_ty ctx, const node *n) break; case Name_kind: if (ctx == Store) { - if (forbidden_name(e->v.Name.id, n, 1)) + if (forbidden_name(c, e->v.Name.id, n, 1)) return 0; /* forbidden_name() calls ast_error() */ } e->v.Name.ctx = ctx; @@ -1024,7 +978,7 @@ set_context(struct compiling *c, expr_ty e, expr_context_ty ctx, const node *n) "can't %s %s", ctx == Store ? "assign to" : "delete", expr_name); - return ast_error(n, buf); + return ast_error(c, n, buf); } /* If the LHS is a list or tuple, we need to set the assignment @@ -1172,7 +1126,7 @@ ast_for_arg(struct compiling *c, const node *n) name = NEW_IDENTIFIER(ch); if (!name) return NULL; - if (forbidden_name(name, ch, 0)) + if (forbidden_name(c, name, ch, 0)) return NULL; if (NCH(n) == 3 && TYPE(CHILD(n, 1)) == COLON) { @@ -1202,7 +1156,7 @@ handle_keywordonly_args(struct compiling *c, const node *n, int start, int j = 0; /* index for kwdefaults and kwonlyargs */ if (kwonlyargs == NULL) { - ast_error(CHILD(n, start), "named arguments must follow bare *"); + ast_error(c, CHILD(n, start), "named arguments must follow bare *"); return -1; } assert(kwdefaults != NULL); @@ -1234,7 +1188,7 @@ handle_keywordonly_args(struct compiling *c, const node *n, int start, argname = NEW_IDENTIFIER(ch); if (!argname) goto error; - if (forbidden_name(argname, ch, 0)) + if (forbidden_name(c, argname, ch, 0)) goto error; arg = arg(argname, annotation, c->c_arena); if (!arg) @@ -1245,7 +1199,7 @@ handle_keywordonly_args(struct compiling *c, const node *n, int start, case DOUBLESTAR: return i; default: - ast_error(ch, "unexpected node"); + ast_error(c, ch, "unexpected node"); goto error; } } @@ -1337,7 +1291,7 @@ ast_for_arguments(struct compiling *c, const node *n) return NULL; if (nposargs + nkwonlyargs > 255) { - ast_error(n, "more than 255 arguments"); + ast_error(c, n, "more than 255 arguments"); return NULL; } @@ -1365,7 +1319,7 @@ ast_for_arguments(struct compiling *c, const node *n) found_default = 1; } else if (found_default) { - ast_error(n, + ast_error(c, n, "non-default argument follows default argument"); return NULL; } @@ -1377,7 +1331,7 @@ ast_for_arguments(struct compiling *c, const node *n) break; case STAR: if (i+1 >= NCH(n)) { - ast_error(CHILD(n, i), + ast_error(c, CHILD(n, i), "named arguments must follow bare *"); return NULL; } @@ -1394,7 +1348,7 @@ ast_for_arguments(struct compiling *c, const node *n) vararg = NEW_IDENTIFIER(CHILD(ch, 0)); if (!vararg) return NULL; - if (forbidden_name(vararg, CHILD(ch, 0), 0)) + if (forbidden_name(c, vararg, CHILD(ch, 0), 0)) return NULL; if (NCH(ch) > 1) { /* there is an annotation on the vararg */ @@ -1425,7 +1379,7 @@ ast_for_arguments(struct compiling *c, const node *n) if (!kwargannotation) return NULL; } - if (forbidden_name(kwarg, CHILD(ch, 0), 0)) + if (forbidden_name(c, kwarg, CHILD(ch, 0), 0)) return NULL; i += 3; break; @@ -1544,7 +1498,7 @@ ast_for_funcdef(struct compiling *c, const node *n, asdl_seq *decorator_seq) name = NEW_IDENTIFIER(CHILD(n, name_i)); if (!name) return NULL; - if (forbidden_name(name, CHILD(n, name_i), 0)) + if (forbidden_name(c, name, CHILD(n, name_i), 0)) return NULL; args = ast_for_arguments(c, CHILD(n, name_i + 1)); if (!args) @@ -1885,10 +1839,10 @@ ast_for_atom(struct compiling *c, const node *n) char buf[128]; s = _PyUnicode_AsString(errstr); PyOS_snprintf(buf, sizeof(buf), "(unicode error) %s", s); - ast_error(n, buf); + ast_error(c, n, buf); Py_DECREF(errstr); } else { - ast_error(n, "(unicode error) unknown error"); + ast_error(c, n, "(unicode error) unknown error"); } Py_DECREF(type); Py_DECREF(value); @@ -2473,14 +2427,14 @@ ast_for_call(struct compiling *c, const node *n, expr_ty func) } } if (ngens > 1 || (ngens && (nargs || nkeywords))) { - ast_error(n, "Generator expression must be parenthesized " + ast_error(c, n, "Generator expression must be parenthesized " "if not sole argument"); return NULL; } if (nargs + nkeywords + ngens > 255) { - ast_error(n, "more than 255 arguments"); - return NULL; + ast_error(c, n, "more than 255 arguments"); + return NULL; } args = asdl_seq_new(nargs + ngens, c->c_arena); @@ -2497,12 +2451,12 @@ ast_for_call(struct compiling *c, const node *n, expr_ty func) expr_ty e; if (NCH(ch) == 1) { if (nkeywords) { - ast_error(CHILD(ch, 0), + ast_error(c, CHILD(ch, 0), "non-keyword arg after keyword arg"); return NULL; } if (vararg) { - ast_error(CHILD(ch, 0), + ast_error(c, CHILD(ch, 0), "only named arguments may follow *expression"); return NULL; } @@ -2532,19 +2486,19 @@ ast_for_call(struct compiling *c, const node *n, expr_ty func) * then is very confusing. */ if (e->kind == Lambda_kind) { - ast_error(CHILD(ch, 0), "lambda cannot contain assignment"); + ast_error(c, CHILD(ch, 0), "lambda cannot contain assignment"); return NULL; } else if (e->kind != Name_kind) { - ast_error(CHILD(ch, 0), "keyword can't be an expression"); + ast_error(c, CHILD(ch, 0), "keyword can't be an expression"); return NULL; - } else if (forbidden_name(e->v.Name.id, ch, 1)) { + } else if (forbidden_name(c, e->v.Name.id, ch, 1)) { return NULL; } key = e->v.Name.id; for (k = 0; k < nkeywords; k++) { tmp = ((keyword_ty)asdl_seq_GET(keywords, k))->arg; if (!PyUnicode_Compare(tmp, key)) { - ast_error(CHILD(ch, 0), "keyword argument repeated"); + ast_error(c, CHILD(ch, 0), "keyword argument repeated"); return NULL; } } @@ -2637,7 +2591,7 @@ ast_for_expr_stmt(struct compiling *c, const node *n) case Subscript_kind: break; default: - ast_error(ch, "illegal expression for augmented assignment"); + ast_error(c, ch, "illegal expression for augmented assignment"); return NULL; } @@ -2670,7 +2624,7 @@ ast_for_expr_stmt(struct compiling *c, const node *n) expr_ty e; node *ch = CHILD(n, i); if (TYPE(ch) == yield_expr) { - ast_error(ch, "assignment to yield expression not possible"); + ast_error(c, ch, "assignment to yield expression not possible"); return NULL; } e = ast_for_testlist(c, ch); @@ -2817,11 +2771,11 @@ alias_for_import_name(struct compiling *c, const node *n, int store) str = NEW_IDENTIFIER(str_node); if (!str) return NULL; - if (store && forbidden_name(str, str_node, 0)) + if (store && forbidden_name(c, str, str_node, 0)) return NULL; } else { - if (forbidden_name(name, name_node, 0)) + if (forbidden_name(c, name, name_node, 0)) return NULL; } return alias(name, str, c->c_arena); @@ -2840,7 +2794,7 @@ alias_for_import_name(struct compiling *c, const node *n, int store) a->asname = NEW_IDENTIFIER(asname_node); if (!a->asname) return NULL; - if (forbidden_name(a->asname, asname_node, 0)) + if (forbidden_name(c, a->asname, asname_node, 0)) return NULL; return a; } @@ -2851,7 +2805,7 @@ alias_for_import_name(struct compiling *c, const node *n, int store) name = NEW_IDENTIFIER(name_node); if (!name) return NULL; - if (store && forbidden_name(name, name_node, 0)) + if (store && forbidden_name(c, name, name_node, 0)) return NULL; return alias(name, NULL, c->c_arena); } @@ -2980,13 +2934,13 @@ ast_for_import_stmt(struct compiling *c, const node *n) n = CHILD(n, idx); n_children = NCH(n); if (n_children % 2 == 0) { - ast_error(n, "trailing comma not allowed without" + ast_error(c, n, "trailing comma not allowed without" " surrounding parentheses"); return NULL; } break; default: - ast_error(n, "Unexpected node-type in from-import"); + ast_error(c, n, "Unexpected node-type in from-import"); return NULL; } @@ -3392,7 +3346,7 @@ ast_for_except_clause(struct compiling *c, const node *exc, node *body) identifier e = NEW_IDENTIFIER(CHILD(exc, 3)); if (!e) return NULL; - if (forbidden_name(e, CHILD(exc, 3), 0)) + if (forbidden_name(c, e, CHILD(exc, 3), 0)) return NULL; expression = ast_for_expr(c, CHILD(exc, 1)); if (!expression) @@ -3451,7 +3405,7 @@ ast_for_try_stmt(struct compiling *c, const node *n) } } else if (TYPE(CHILD(n, nch - 3)) != except_clause) { - ast_error(n, "malformed 'try' statement"); + ast_error(c, n, "malformed 'try' statement"); return NULL; } @@ -3543,7 +3497,7 @@ ast_for_classdef(struct compiling *c, const node *n, asdl_seq *decorator_seq) classname = NEW_IDENTIFIER(CHILD(n, 1)); if (!classname) return NULL; - if (forbidden_name(classname, CHILD(n, 3), 0)) + if (forbidden_name(c, classname, CHILD(n, 3), 0)) return NULL; return ClassDef(classname, NULL, NULL, NULL, NULL, s, decorator_seq, LINENO(n), n->n_col_offset, c->c_arena); @@ -3556,7 +3510,7 @@ ast_for_classdef(struct compiling *c, const node *n, asdl_seq *decorator_seq) classname = NEW_IDENTIFIER(CHILD(n, 1)); if (!classname) return NULL; - if (forbidden_name(classname, CHILD(n, 3), 0)) + if (forbidden_name(c, classname, CHILD(n, 3), 0)) return NULL; return ClassDef(classname, NULL, NULL, NULL, NULL, s, decorator_seq, LINENO(n), n->n_col_offset, c->c_arena); @@ -3581,7 +3535,7 @@ ast_for_classdef(struct compiling *c, const node *n, asdl_seq *decorator_seq) classname = NEW_IDENTIFIER(CHILD(n, 1)); if (!classname) return NULL; - if (forbidden_name(classname, CHILD(n, 1), 0)) + if (forbidden_name(c, classname, CHILD(n, 1), 0)) return NULL; return ClassDef(classname, call->v.Call.args, call->v.Call.keywords, @@ -3840,10 +3794,10 @@ parsestr(struct compiling *c, const node *n, int *bytesmode) } if (*bytesmode) { /* Disallow non-ascii characters (but not escapes) */ - const char *c; - for (c = s; *c; c++) { - if (Py_CHARMASK(*c) >= 0x80) { - ast_error(n, "bytes can only contain ASCII " + const char *ch; + for (ch = s; *ch; ch++) { + if (Py_CHARMASK(*ch) >= 0x80) { + ast_error(c, n, "bytes can only contain ASCII " "literal characters."); return NULL; } @@ -3891,7 +3845,7 @@ parsestrplus(struct compiling *c, const node *n, int *bytesmode) if (s == NULL) goto onError; if (*bytesmode != subbm) { - ast_error(n, "cannot mix bytes and nonbytes literals"); + ast_error(c, n, "cannot mix bytes and nonbytes literals"); goto onError; } if (PyBytes_Check(v) && PyBytes_Check(s)) { From c7dedb09453705210b3126ccc86c1df6f03fa8f3 Mon Sep 17 00:00:00 2001 From: Benjamin Peterson Date: Sun, 2 Sep 2012 16:36:01 -0400 Subject: [PATCH 036/201] put * in the normal place --- Python/ast.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Python/ast.c b/Python/ast.c index d2bf032c509..4ae9d75d034 100644 --- a/Python/ast.c +++ b/Python/ast.c @@ -47,9 +47,9 @@ static PyObject *parsestrplus(struct compiling *, const node *n, #define COMP_SETCOMP 2 static identifier -new_identifier(const char* n, PyArena *arena) +new_identifier(const char *n, PyArena *arena) { - PyObject* id = PyUnicode_DecodeUTF8(n, strlen(n), NULL); + PyObject *id = PyUnicode_DecodeUTF8(n, strlen(n), NULL); Py_UNICODE *u; if (!id) return NULL; From f147d7345a840bd28396f0a718d31e6710078f06 Mon Sep 17 00:00:00 2001 From: Nick Coghlan Date: Mon, 3 Sep 2012 21:46:33 +1000 Subject: [PATCH 037/201] Issue #15814: Add NEWS entry regarding intended memoryview hashing restrictions --- Misc/NEWS | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/Misc/NEWS b/Misc/NEWS index 41732efeb05..7af4faef9d0 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -85,6 +85,14 @@ Library calling the C function wadd_wch()/mvwadd_wch() if the Python curses is linked to libncursesw. +Documentation +------------- + +- Issue #15814: The memoryview enhancements in 3.3.0 accidentally permitted + the hashing of multi-dimensional memorviews and memoryviews with multi-byte + item formats. The intended restrictions have now been documented - they + will be correctly enforced in 3.3.1 + What's New in Python 3.3.0 Release Candidate 1? =============================================== From 94dd7cb0c71dd9e43bd79df2281a8baa4f3f76ca Mon Sep 17 00:00:00 2001 From: R David Murray Date: Mon, 3 Sep 2012 12:30:12 -0400 Subject: [PATCH 038/201] #15509: If %action substitution produces a null string, drop it. Patch by Anton Barkovsky, comment addition by me. This showed up as a bug in 3.3 because the definition for Chrome produced such an empty string. This fix is tested in 3.3+; backporting the new test suite is more trouble than it is worth. --- Lib/webbrowser.py | 11 +++++++++-- Misc/NEWS | 3 +++ 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/Lib/webbrowser.py b/Lib/webbrowser.py index 6f967b61cf2..202f34a1a2e 100644 --- a/Lib/webbrowser.py +++ b/Lib/webbrowser.py @@ -206,12 +206,18 @@ class UnixBrowser(BaseBrowser): """Parent class for all Unix browsers with remote functionality.""" raise_opts = None + background = False + redirect_stdout = True + # In remote_args, %s will be replaced with the requested URL. %action will + # be replaced depending on the value of 'new' passed to open. + # remote_action is used for new=0 (open). If newwin is not None, it is + # used for new=1 (open_new). If newtab is not None, it is used for + # new=3 (open_new_tab). After both substitutions are made, any empty + # strings in the transformed remote_args list will be removed. remote_args = ['%action', '%s'] remote_action = None remote_action_newwin = None remote_action_newtab = None - background = False - redirect_stdout = True def _invoke(self, args, remote, autoraise): raise_opt = [] @@ -267,6 +273,7 @@ def open(self, url, new=0, autoraise=True): args = [arg.replace("%s", url).replace("%action", action) for arg in self.remote_args] + args = [arg for arg in args if arg] success = self._invoke(args, True, autoraise) if not success: # remote invocation failed, try straight way diff --git a/Misc/NEWS b/Misc/NEWS index 544bf67afb2..93b679b37ff 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -115,6 +115,9 @@ Core and Builtins Library ------- +- Issue #15509: webbrowser.UnixBrowser no longer passes empty arguments to + Popen when %action substitutions produce empty strings. + - Issue #12776,#11839: call argparse type function (specified by add_argument) only once. Before, the type function was called twice in the case where the default was specified and the argument was given as well. This was From 02ca144b92eef8d2b8da10c7b70b4e9d42480b9b Mon Sep 17 00:00:00 2001 From: R David Murray Date: Mon, 3 Sep 2012 12:44:29 -0400 Subject: [PATCH 039/201] #15447: Use subprocess.DEVNULL in webbrowser, instead of opening This eliminates a ResourceWarning, since before webbrowser was explicitly opening os.devnull and then leaving it open. Tests to follow. Patch by Anton Barkovsky. --- Lib/webbrowser.py | 4 ++-- Misc/NEWS | 3 +++ 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/Lib/webbrowser.py b/Lib/webbrowser.py index 861742538ec..94d4ad42e6a 100644 --- a/Lib/webbrowser.py +++ b/Lib/webbrowser.py @@ -230,7 +230,7 @@ def _invoke(self, args, remote, autoraise): cmdline = [self.name] + raise_opt + args if remote or self.background: - inout = io.open(os.devnull, "r+") + inout = subprocess.DEVNULL else: # for TTY browsers, we need stdin/out inout = None @@ -354,7 +354,7 @@ def open(self, url, new=0, autoraise=True): else: action = "openURL" - devnull = io.open(os.devnull, "r+") + devnull = subprocess.DEVNULL # if possible, put browser in separate process group, so # keyboard interrupts don't affect browser as well as Python setsid = getattr(os, 'setsid', None) diff --git a/Misc/NEWS b/Misc/NEWS index 93bc1dba61a..0463aa24a3b 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -21,6 +21,9 @@ Core and Builtins Library ------- +- Issue #15447: Use subprocess.DEVNULL in webbrowser, instead of opening + os.devnull explicitly and leaving it open. + - Issue #15509: webbrowser.UnixBrowser no longer passes empty arguments to Popen when %action substitutions produce empty strings. From 3561901cd9ec919454b29c6c9d81e2a558e46736 Mon Sep 17 00:00:00 2001 From: R David Murray Date: Mon, 3 Sep 2012 12:52:08 -0400 Subject: [PATCH 040/201] #15557,#15447,#15509: webbrowser test suite added. Initial patch by Anton Barkovsky, refined a bit by me to further subdivide the test methods. Provides tests for the previous two bug fix commits. --- Lib/test/test_webbrowser.py | 192 ++++++++++++++++++++++++++++++++++++ Misc/NEWS | 3 + 2 files changed, 195 insertions(+) create mode 100644 Lib/test/test_webbrowser.py diff --git a/Lib/test/test_webbrowser.py b/Lib/test/test_webbrowser.py new file mode 100644 index 00000000000..34b9364a3fa --- /dev/null +++ b/Lib/test/test_webbrowser.py @@ -0,0 +1,192 @@ +import webbrowser +import unittest +import subprocess +from unittest import mock +from test import support + + +URL = 'http://www.example.com' +CMD_NAME = 'test' + + +class PopenMock(mock.MagicMock): + + def poll(self): + return 0 + + def wait(self, seconds=None): + return 0 + + +class CommandTestMixin: + + def _test(self, meth, *, args=[URL], kw={}, options, arguments): + """Given a web browser instance method name along with arguments and + keywords for same (which defaults to the single argument URL), creates + a browser instance from the class pointed to by self.browser, calls the + indicated instance method with the indicated arguments, and compares + the resulting options and arguments passed to Popen by the browser + instance against the 'options' and 'args' lists. Options are compared + in a position independent fashion, and the arguments are compared in + sequence order to whatever is left over after removing the options. + + """ + popen = PopenMock() + support.patch(self, subprocess, 'Popen', popen) + browser = self.browser_class(name=CMD_NAME) + getattr(browser, meth)(*args, **kw) + popen_args = subprocess.Popen.call_args[0][0] + self.assertEqual(popen_args[0], CMD_NAME) + popen_args.pop(0) + for option in options: + self.assertIn(option, popen_args) + popen_args.pop(popen_args.index(option)) + self.assertEqual(popen_args, arguments) + + +class GenericBrowserCommandTest(CommandTestMixin, unittest.TestCase): + + browser_class = webbrowser.GenericBrowser + + def test_open(self): + self._test('open', + options=[], + arguments=[URL]) + + +class BackgroundBrowserCommandTest(CommandTestMixin, unittest.TestCase): + + browser_class = webbrowser.BackgroundBrowser + + def test_open(self): + self._test('open', + options=[], + arguments=[URL]) + + +class ChromeCommandTest(CommandTestMixin, unittest.TestCase): + + browser_class = webbrowser.Chrome + + def test_open(self): + self._test('open', + options=[], + arguments=[URL]) + + def test_open_with_autoraise_false(self): + self._test('open', kw=dict(autoraise=False), + options=[], + arguments=[URL]) + + def test_open_new(self): + self._test('open_new', + options=['--new-window'], + arguments=[URL]) + + def test_open_new_tab(self): + self._test('open_new_tab', + options=[], + arguments=[URL]) + + +class MozillaCommandTest(CommandTestMixin, unittest.TestCase): + + browser_class = webbrowser.Mozilla + + def test_open(self): + self._test('open', + options=['-raise', '-remote'], + arguments=['openURL({})'.format(URL)]) + + def test_open_with_autoraise_false(self): + self._test('open', kw=dict(autoraise=False), + options=['-noraise', '-remote'], + arguments=['openURL({})'.format(URL)]) + + def test_open_new(self): + self._test('open_new', + options=['-raise', '-remote'], + arguments=['openURL({},new-window)'.format(URL)]) + + def test_open_new_tab(self): + self._test('open_new_tab', + options=['-raise', '-remote'], + arguments=['openURL({},new-tab)'.format(URL)]) + + +class GaleonCommandTest(CommandTestMixin, unittest.TestCase): + + browser_class = webbrowser.Galeon + + def test_open(self): + self._test('open', + options=['-n'], + arguments=[URL]) + + def test_open_with_autoraise_false(self): + self._test('open', kw=dict(autoraise=False), + options=['-noraise', '-n'], + arguments=[URL]) + + def test_open_new(self): + self._test('open_new', + options=['-w'], + arguments=[URL]) + + def test_open_new_tab(self): + self._test('open_new_tab', + options=['-w'], + arguments=[URL]) + + +class OperaCommandTest(CommandTestMixin, unittest.TestCase): + + browser_class = webbrowser.Opera + + def test_open(self): + self._test('open', + options=['-remote'], + arguments=['openURL({})'.format(URL)]) + + def test_open_with_autoraise_false(self): + self._test('open', kw=dict(autoraise=False), + options=['-remote', '-noraise'], + arguments=['openURL({})'.format(URL)]) + + def test_open_new(self): + self._test('open_new', + options=['-remote'], + arguments=['openURL({},new-window)'.format(URL)]) + + def test_open_new(self): + self._test('open_new_tab', + options=['-remote'], + arguments=['openURL({},new-page)'.format(URL)]) + + +class ELinksCommandTest(CommandTestMixin, unittest.TestCase): + + browser_class = webbrowser.Elinks + + def test_open(self): + self._test('open', options=['-remote'], + arguments=['openURL({})'.format(URL)]) + + def test_open_with_autoraise_false(self): + self._test('open', + options=['-remote'], + arguments=['openURL({})'.format(URL)]) + + def test_open_new(self): + self._test('open_new', + options=['-remote'], + arguments=['openURL({},new-window)'.format(URL)]) + + def test_open_new_tab(self): + self._test('open_new_tab', + options=['-remote'], + arguments=['openURL({},new-tab)'.format(URL)]) + + +if __name__=='__main__': + unittest.main() diff --git a/Misc/NEWS b/Misc/NEWS index 0463aa24a3b..bc8530577de 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -42,6 +42,9 @@ Tests - Issue #15802: Fix test logic in TestMaildir.test_create_tmp. Patch by Serhiy Storchaka. +- Issue #15557: Added a test suite for the webbrowser module, thanks + to Anton Barkovsky. + Build ----- From 397e5c98bc27416fe8a407e39e4c5aa4baf94423 Mon Sep 17 00:00:00 2001 From: Alexander Belopolsky Date: Mon, 3 Sep 2012 16:29:11 -0400 Subject: [PATCH 041/201] Issue #15855: added docstrings for memoryview methods and data descriptors. --- Objects/memoryobject.c | 54 +++++++++++++++++++++++++++++++++--------- 1 file changed, 43 insertions(+), 11 deletions(-) diff --git a/Objects/memoryobject.c b/Objects/memoryobject.c index 2e32b2a0e9f..403aa68a9e9 100644 --- a/Objects/memoryobject.c +++ b/Objects/memoryobject.c @@ -402,14 +402,33 @@ memory_ndim_get(PyMemoryViewObject *self) return PyLong_FromLong(self->view.ndim); } -static PyGetSetDef memory_getsetlist[] ={ - {"format", (getter)memory_format_get, NULL, NULL}, - {"itemsize", (getter)memory_itemsize_get, NULL, NULL}, - {"shape", (getter)memory_shape_get, NULL, NULL}, - {"strides", (getter)memory_strides_get, NULL, NULL}, - {"suboffsets", (getter)memory_suboffsets_get, NULL, NULL}, - {"readonly", (getter)memory_readonly_get, NULL, NULL}, - {"ndim", (getter)memory_ndim_get, NULL, NULL}, +PyDoc_STRVAR(memory_format_doc, + "A string containing the format (in struct module style)\n" + " for each element in the view."); +PyDoc_STRVAR(memory_itemsize_doc, + "The size in bytes of each element of the memoryview."); +PyDoc_STRVAR(memory_shape_doc, + "A tuple of ndim integers giving the shape of the memory\n" + " as an N-dimensional array."); +PyDoc_STRVAR(memory_strides_doc, + "A tuple of ndim integers giving the size in bytes to access\n" + " each element for each dimension of the array."); +PyDoc_STRVAR(memory_suboffsets_doc, + "A tuple of integers used internally for PIL-style arrays."); +PyDoc_STRVAR(memory_readonly_doc, + "A bool indicating whether the memory is read only."); +PyDoc_STRVAR(memory_ndim_doc, + "An integer indicating how many dimensions of a multi-dimensional\n" + " array the memory represents."); + +static PyGetSetDef memory_getsetlist[] = { + {"format", (getter)memory_format_get, NULL, memory_format_doc}, + {"itemsize", (getter)memory_itemsize_get, NULL, memory_itemsize_doc}, + {"shape", (getter)memory_shape_get, NULL, memory_shape_doc}, + {"strides", (getter)memory_strides_get, NULL, memory_strides_doc}, + {"suboffsets", (getter)memory_suboffsets_get, NULL, memory_suboffsets_doc}, + {"readonly", (getter)memory_readonly_get, NULL, memory_readonly_doc}, + {"ndim", (getter)memory_ndim_get, NULL, memory_ndim_doc}, {NULL, NULL, NULL, NULL}, }; @@ -485,10 +504,23 @@ memory_exit(PyObject *self, PyObject *args) Py_RETURN_NONE; } +PyDoc_STRVAR(memory_release_doc, +"M.release() -> None\n\ +\n\ +Release the underlying buffer exposed by the memoryview object."); +PyDoc_STRVAR(memory_tobytes_doc, +"M.tobytes() -> bytes\n\ +\n\ +Return the data in the buffer as a byte string."); +PyDoc_STRVAR(memory_tolist_doc, +"M.tolist() -> list\n\ +\n\ +Return the data in the buffer as a list of elements."); + static PyMethodDef memory_methods[] = { - {"release", memory_exit, METH_NOARGS}, - {"tobytes", (PyCFunction)memory_tobytes, METH_NOARGS, NULL}, - {"tolist", (PyCFunction)memory_tolist, METH_NOARGS, NULL}, + {"release", memory_exit, METH_NOARGS, memory_release_doc}, + {"tobytes", (PyCFunction)memory_tobytes, METH_NOARGS, memory_tobytes_doc}, + {"tolist", (PyCFunction)memory_tolist, METH_NOARGS, memory_tolist_doc}, {"__enter__", memory_enter, METH_NOARGS}, {"__exit__", memory_exit, METH_VARARGS}, {NULL, NULL} /* sentinel */ From f73c69e06fbc96b8c26f6cfe2538bc2fd5ef4fda Mon Sep 17 00:00:00 2001 From: Alexander Belopolsky Date: Mon, 3 Sep 2012 16:51:01 -0400 Subject: [PATCH 042/201] Issue #15855: added docstrings for memoryview methods and data descriptors new in 3.3. --- Objects/memoryobject.c | 41 ++++++++++++++++++++++++++++------------- 1 file changed, 28 insertions(+), 13 deletions(-) diff --git a/Objects/memoryobject.c b/Objects/memoryobject.c index e0f20fe5754..d56faf87cc4 100644 --- a/Objects/memoryobject.c +++ b/Objects/memoryobject.c @@ -2861,11 +2861,21 @@ memory_contiguous(PyMemoryViewObject *self, PyObject *dummy) return PyBool_FromLong(MV_ANY_CONTIGUOUS(self->flags)); } +PyDoc_STRVAR(memory_obj_doc, + "The underlying object of the memoryview."); +PyDoc_STRVAR(memory_nbytes_doc, + "The amount of space in bytes that the array would use in\n" + " a contiguous representation."); +PyDoc_STRVAR(memory_readonly_doc, + "A bool indicating whether the memory is read only."); +PyDoc_STRVAR(memory_itemsize_doc, + "The size in bytes of each element of the memoryview."); PyDoc_STRVAR(memory_format_doc, "A string containing the format (in struct module style)\n" " for each element in the view."); -PyDoc_STRVAR(memory_itemsize_doc, - "The size in bytes of each element of the memoryview."); +PyDoc_STRVAR(memory_ndim_doc, + "An integer indicating how many dimensions of a multi-dimensional\n" + " array the memory represents."); PyDoc_STRVAR(memory_shape_doc, "A tuple of ndim integers giving the shape of the memory\n" " as an N-dimensional array."); @@ -2874,15 +2884,16 @@ PyDoc_STRVAR(memory_strides_doc, " each element for each dimension of the array."); PyDoc_STRVAR(memory_suboffsets_doc, "A tuple of integers used internally for PIL-style arrays."); -PyDoc_STRVAR(memory_readonly_doc, - "A bool indicating whether the memory is read only."); -PyDoc_STRVAR(memory_ndim_doc, - "An integer indicating how many dimensions of a multi-dimensional\n" - " array the memory represents."); +PyDoc_STRVAR(memory_c_contiguous_doc, + "A bool indicating whether the memory is C contiguous."); +PyDoc_STRVAR(memory_f_contiguous_doc, + "A bool indicating whether the memory is Fortran contiguous."); +PyDoc_STRVAR(memory_contiguous_doc, + "A bool indicating whether the memory is contiguous."); static PyGetSetDef memory_getsetlist[] = { - {"obj", (getter)memory_obj_get, NULL, NULL}, - {"nbytes", (getter)memory_nbytes_get, NULL, NULL}, + {"obj", (getter)memory_obj_get, NULL, memory_obj_doc}, + {"nbytes", (getter)memory_nbytes_get, NULL, memory_nbytes_doc}, {"readonly", (getter)memory_readonly_get, NULL, memory_readonly_doc}, {"itemsize", (getter)memory_itemsize_get, NULL, memory_itemsize_doc}, {"format", (getter)memory_format_get, NULL, memory_format_doc}, @@ -2890,9 +2901,9 @@ static PyGetSetDef memory_getsetlist[] = { {"shape", (getter)memory_shape_get, NULL, memory_shape_doc}, {"strides", (getter)memory_strides_get, NULL, memory_strides_doc}, {"suboffsets", (getter)memory_suboffsets_get, NULL, memory_suboffsets_doc}, - {"c_contiguous", (getter)memory_c_contiguous, NULL, NULL}, - {"f_contiguous", (getter)memory_f_contiguous, NULL, NULL}, - {"contiguous", (getter)memory_contiguous, NULL, NULL}, + {"c_contiguous", (getter)memory_c_contiguous, NULL, memory_c_contiguous_doc}, + {"f_contiguous", (getter)memory_f_contiguous, NULL, memory_f_contiguous_doc}, + {"contiguous", (getter)memory_contiguous, NULL, memory_contiguous_doc}, {NULL, NULL, NULL, NULL}, }; @@ -2908,12 +2919,16 @@ PyDoc_STRVAR(memory_tolist_doc, "M.tolist() -> list\n\ \n\ Return the data in the buffer as a list of elements."); +PyDoc_STRVAR(memory_cast_doc, +"M.cast(format[, shape]) -> memoryview\n\ +\n\ +Cast a memoryview to a new format or shape."); static PyMethodDef memory_methods[] = { {"release", (PyCFunction)memory_release, METH_NOARGS, memory_release_doc}, {"tobytes", (PyCFunction)memory_tobytes, METH_NOARGS, memory_tobytes_doc}, {"tolist", (PyCFunction)memory_tolist, METH_NOARGS, memory_tolist_doc}, - {"cast", (PyCFunction)memory_cast, METH_VARARGS|METH_KEYWORDS, NULL}, + {"cast", (PyCFunction)memory_cast, METH_VARARGS|METH_KEYWORDS, memory_cast_doc}, {"__enter__", memory_enter, METH_NOARGS, NULL}, {"__exit__", memory_exit, METH_VARARGS, NULL}, {NULL, NULL} From e8677c038f94795f54de324e5d9235636c92afa0 Mon Sep 17 00:00:00 2001 From: Alexander Belopolsky Date: Mon, 3 Sep 2012 17:29:22 -0400 Subject: [PATCH 043/201] Issue #15855: updated related manual entries. --- Doc/library/stdtypes.rst | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/Doc/library/stdtypes.rst b/Doc/library/stdtypes.rst index 90f3e54cd56..3c038beec4f 100644 --- a/Doc/library/stdtypes.rst +++ b/Doc/library/stdtypes.rst @@ -2687,13 +2687,19 @@ copying. .. attribute:: shape A tuple of integers the length of :attr:`ndim` giving the shape of the - memory as a N-dimensional array. + memory as an N-dimensional array. + + .. versionchanged:: 3.3 + An empty tuple instead of None when ndim = 0. .. attribute:: strides A tuple of integers the length of :attr:`ndim` giving the size in bytes to access each element for each dimension of the array. + .. versionchanged:: 3.3 + An empty tuple instead of None when ndim = 0. + .. attribute:: suboffsets Used internally for PIL-style arrays. The value is informational only. From 1d857453b7065dafdc34a72c1bbb2a993782b383 Mon Sep 17 00:00:00 2001 From: Antoine Pitrou Date: Wed, 5 Sep 2012 20:11:49 +0200 Subject: [PATCH 044/201] Issue #15841: The readable(), writable() and seekable() methods of BytesIO and StringIO objects now raise ValueError when the object has been closed. Patch by Alessandro Moura. --- Lib/_pyio.py | 8 ++++++++ Lib/test/test_memoryio.py | 7 +++---- Misc/ACKS | 1 + Misc/NEWS | 4 ++++ Modules/_io/bytesio.c | 20 +++++++++++++++----- Modules/_io/stringio.c | 19 ++++++++++++++++--- 6 files changed, 47 insertions(+), 12 deletions(-) diff --git a/Lib/_pyio.py b/Lib/_pyio.py index a2faeb32579..2d376d83002 100644 --- a/Lib/_pyio.py +++ b/Lib/_pyio.py @@ -889,12 +889,18 @@ def truncate(self, pos=None): return pos def readable(self): + if self.closed: + raise ValueError("I/O operation on closed file.") return True def writable(self): + if self.closed: + raise ValueError("I/O operation on closed file.") return True def seekable(self): + if self.closed: + raise ValueError("I/O operation on closed file.") return True @@ -1567,6 +1573,8 @@ def buffer(self): return self._buffer def seekable(self): + if self.closed: + raise ValueError("I/O operation on closed file.") return self._seekable def readable(self): diff --git a/Lib/test/test_memoryio.py b/Lib/test/test_memoryio.py index 92480989aca..7c0c84f0d95 100644 --- a/Lib/test/test_memoryio.py +++ b/Lib/test/test_memoryio.py @@ -318,9 +318,9 @@ def test_flags(self): self.assertEqual(memio.isatty(), False) self.assertEqual(memio.closed, False) memio.close() - self.assertEqual(memio.writable(), True) - self.assertEqual(memio.readable(), True) - self.assertEqual(memio.seekable(), True) + self.assertRaises(ValueError, memio.writable) + self.assertRaises(ValueError, memio.readable) + self.assertRaises(ValueError, memio.seekable) self.assertRaises(ValueError, memio.isatty) self.assertEqual(memio.closed, True) @@ -665,7 +665,6 @@ def test_sizeof(self): check(io.BytesIO(b'a'), basesize + 1 + 1 ) check(io.BytesIO(b'a' * 1000), basesize + 1000 + 1 ) - class CStringIOTest(PyStringIOTest): ioclass = io.StringIO UnsupportedOperation = io.UnsupportedOperation diff --git a/Misc/ACKS b/Misc/ACKS index f534143cb60..5df7962c489 100644 --- a/Misc/ACKS +++ b/Misc/ACKS @@ -658,6 +658,7 @@ Skip Montanaro Paul Moore Derek Morr James A Morrison +Alessandro Moura Pablo Mouzo Mher Movsisyan Ruslan Mstoi diff --git a/Misc/NEWS b/Misc/NEWS index 93b679b37ff..3e75f44b856 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -115,6 +115,10 @@ Core and Builtins Library ------- +- Issue #15841: The readable(), writable() and seekable() methods of BytesIO + and StringIO objects now raise ValueError when the object has been closed. + Patch by Alessandro Moura. + - Issue #15509: webbrowser.UnixBrowser no longer passes empty arguments to Popen when %action substitutions produce empty strings. diff --git a/Modules/_io/bytesio.c b/Modules/_io/bytesio.c index 03f4c7d14aa..ef951aaa031 100644 --- a/Modules/_io/bytesio.c +++ b/Modules/_io/bytesio.c @@ -121,7 +121,7 @@ resize_buffer(bytesio *self, size_t size) } /* Internal routine for writing a string of bytes to the buffer of a BytesIO - object. Returns the number of bytes wrote, or -1 on error. */ + object. Returns the number of bytes written, or -1 on error. */ static Py_ssize_t write_bytes(bytesio *self, const char *bytes, Py_ssize_t len) { @@ -171,10 +171,20 @@ bytesio_get_closed(bytesio *self) } } +PyDoc_STRVAR(readable_doc, +"readable() -> bool. Returns True if the IO object can be read."); + +PyDoc_STRVAR(writable_doc, +"writable() -> bool. Returns True if the IO object can be written."); + +PyDoc_STRVAR(seekable_doc, +"seekable() -> bool. Returns True if the IO object can be seeked."); + /* Generic getter for the writable, readable and seekable properties */ static PyObject * -return_true(bytesio *self) +return_not_closed(bytesio *self) { + CHECK_CLOSED(self); Py_RETURN_TRUE; } @@ -867,9 +877,9 @@ static PyGetSetDef bytesio_getsetlist[] = { }; static struct PyMethodDef bytesio_methods[] = { - {"readable", (PyCFunction)return_true, METH_NOARGS, NULL}, - {"seekable", (PyCFunction)return_true, METH_NOARGS, NULL}, - {"writable", (PyCFunction)return_true, METH_NOARGS, NULL}, + {"readable", (PyCFunction)return_not_closed, METH_NOARGS, readable_doc}, + {"seekable", (PyCFunction)return_not_closed, METH_NOARGS, seekable_doc}, + {"writable", (PyCFunction)return_not_closed, METH_NOARGS, writable_doc}, {"close", (PyCFunction)bytesio_close, METH_NOARGS, close_doc}, {"flush", (PyCFunction)bytesio_flush, METH_NOARGS, flush_doc}, {"isatty", (PyCFunction)bytesio_isatty, METH_NOARGS, isatty_doc}, diff --git a/Modules/_io/stringio.c b/Modules/_io/stringio.c index c9d14b114b1..1f1fa40b02d 100644 --- a/Modules/_io/stringio.c +++ b/Modules/_io/stringio.c @@ -650,10 +650,21 @@ stringio_init(stringio *self, PyObject *args, PyObject *kwds) } /* Properties and pseudo-properties */ + +PyDoc_STRVAR(stringio_readable_doc, +"readable() -> bool. Returns True if the IO object can be read."); + +PyDoc_STRVAR(stringio_writable_doc, +"writable() -> bool. Returns True if the IO object can be written."); + +PyDoc_STRVAR(stringio_seekable_doc, +"seekable() -> bool. Returns True if the IO object can be seeked."); + static PyObject * stringio_seekable(stringio *self, PyObject *args) { CHECK_INITIALIZED(self); + CHECK_CLOSED(self); Py_RETURN_TRUE; } @@ -661,6 +672,7 @@ static PyObject * stringio_readable(stringio *self, PyObject *args) { CHECK_INITIALIZED(self); + CHECK_CLOSED(self); Py_RETURN_TRUE; } @@ -668,6 +680,7 @@ static PyObject * stringio_writable(stringio *self, PyObject *args) { CHECK_INITIALIZED(self); + CHECK_CLOSED(self); Py_RETURN_TRUE; } @@ -835,9 +848,9 @@ static struct PyMethodDef stringio_methods[] = { {"seek", (PyCFunction)stringio_seek, METH_VARARGS, stringio_seek_doc}, {"write", (PyCFunction)stringio_write, METH_O, stringio_write_doc}, - {"seekable", (PyCFunction)stringio_seekable, METH_NOARGS}, - {"readable", (PyCFunction)stringio_readable, METH_NOARGS}, - {"writable", (PyCFunction)stringio_writable, METH_NOARGS}, + {"seekable", (PyCFunction)stringio_seekable, METH_NOARGS, stringio_seekable_doc}, + {"readable", (PyCFunction)stringio_readable, METH_NOARGS, stringio_readable_doc}, + {"writable", (PyCFunction)stringio_writable, METH_NOARGS, stringio_writable_doc}, {"__getstate__", (PyCFunction)stringio_getstate, METH_NOARGS}, {"__setstate__", (PyCFunction)stringio_setstate, METH_O}, From 56cd62c04a7fbd9d923de000e6e6734cf8ac9ddc Mon Sep 17 00:00:00 2001 From: Antoine Pitrou Date: Thu, 6 Sep 2012 00:59:49 +0200 Subject: [PATCH 045/201] Issue #13992: The trashcan mechanism is now thread-safe. This eliminates sporadic crashes in multi-thread programs when several long deallocator chains ran concurrently and involved subclasses of built-in container types. Because of this change, a couple extension modules compiled for 3.2.4 (those which use the trashcan mechanism, despite it being undocumented) will not be loadable by 3.2.3 and earlier. However, extension modules compiled for 3.2.3 and earlier will be loadable by 3.2.4. --- Include/object.h | 27 +++++++++++------ Include/pystate.h | 3 ++ Lib/test/test_gc.py | 69 ++++++++++++++++++++++++++++++++++++++++++++ Misc/NEWS | 5 ++++ Objects/object.c | 37 ++++++++++++++++++++++++ Objects/typeobject.c | 5 ++++ Python/pystate.c | 3 ++ 7 files changed, 140 insertions(+), 9 deletions(-) diff --git a/Include/object.h b/Include/object.h index 315766c4214..6120ab813c4 100644 --- a/Include/object.h +++ b/Include/object.h @@ -911,24 +911,33 @@ chain of N deallocations is broken into N / PyTrash_UNWIND_LEVEL pieces, with the call stack never exceeding a depth of PyTrash_UNWIND_LEVEL. */ +/* This is the old private API, invoked by the macros before 3.2.4. + Kept for binary compatibility of extensions. */ PyAPI_FUNC(void) _PyTrash_deposit_object(PyObject*); PyAPI_FUNC(void) _PyTrash_destroy_chain(void); PyAPI_DATA(int) _PyTrash_delete_nesting; PyAPI_DATA(PyObject *) _PyTrash_delete_later; +/* The new thread-safe private API, invoked by the macros below. */ +PyAPI_FUNC(void) _PyTrash_thread_deposit_object(PyObject*); +PyAPI_FUNC(void) _PyTrash_thread_destroy_chain(void); + #define PyTrash_UNWIND_LEVEL 50 #define Py_TRASHCAN_SAFE_BEGIN(op) \ - if (_PyTrash_delete_nesting < PyTrash_UNWIND_LEVEL) { \ - ++_PyTrash_delete_nesting; - /* The body of the deallocator is here. */ + do { \ + PyThreadState *_tstate = PyThreadState_GET(); \ + if (_tstate->trash_delete_nesting < PyTrash_UNWIND_LEVEL) { \ + ++_tstate->trash_delete_nesting; + /* The body of the deallocator is here. */ #define Py_TRASHCAN_SAFE_END(op) \ - --_PyTrash_delete_nesting; \ - if (_PyTrash_delete_later && _PyTrash_delete_nesting <= 0) \ - _PyTrash_destroy_chain(); \ - } \ - else \ - _PyTrash_deposit_object((PyObject*)op); + --_tstate->trash_delete_nesting; \ + if (_tstate->trash_delete_later && _tstate->trash_delete_nesting <= 0) \ + _PyTrash_thread_destroy_chain(); \ + } \ + else \ + _PyTrash_thread_deposit_object((PyObject*)op); \ + } while (0); #ifdef __cplusplus } diff --git a/Include/pystate.h b/Include/pystate.h index b5fe1adddcf..060efa7ffd5 100644 --- a/Include/pystate.h +++ b/Include/pystate.h @@ -113,6 +113,9 @@ typedef struct _ts { PyObject *async_exc; /* Asynchronous exception to raise */ long thread_id; /* Thread id where this tstate was created */ + int trash_delete_nesting; + PyObject *trash_delete_later; + /* XXX signal handlers should also be here */ } PyThreadState; diff --git a/Lib/test/test_gc.py b/Lib/test/test_gc.py index 100c76729c2..e1c124d160f 100644 --- a/Lib/test/test_gc.py +++ b/Lib/test/test_gc.py @@ -1,9 +1,15 @@ import unittest from test.support import verbose, run_unittest, strip_python_stderr import sys +import time import gc import weakref +try: + import threading +except ImportError: + threading = None + ### Support code ############################################################################### @@ -310,6 +316,69 @@ def __del__(self): v = {1: v, 2: Ouch()} gc.disable() + @unittest.skipUnless(threading, "test meaningless on builds without threads") + def test_trashcan_threads(self): + # Issue #13992: trashcan mechanism should be thread-safe + NESTING = 60 + N_THREADS = 2 + + def sleeper_gen(): + """A generator that releases the GIL when closed or dealloc'ed.""" + try: + yield + finally: + time.sleep(0.000001) + + class C(list): + # Appending to a list is atomic, which avoids the use of a lock. + inits = [] + dels = [] + def __init__(self, alist): + self[:] = alist + C.inits.append(None) + def __del__(self): + # This __del__ is called by subtype_dealloc(). + C.dels.append(None) + # `g` will release the GIL when garbage-collected. This + # helps assert subtype_dealloc's behaviour when threads + # switch in the middle of it. + g = sleeper_gen() + next(g) + # Now that __del__ is finished, subtype_dealloc will proceed + # to call list_dealloc, which also uses the trashcan mechanism. + + def make_nested(): + """Create a sufficiently nested container object so that the + trashcan mechanism is invoked when deallocating it.""" + x = C([]) + for i in range(NESTING): + x = [C([x])] + del x + + def run_thread(): + """Exercise make_nested() in a loop.""" + while not exit: + make_nested() + + old_switchinterval = sys.getswitchinterval() + sys.setswitchinterval(1e-5) + try: + exit = False + threads = [] + for i in range(N_THREADS): + t = threading.Thread(target=run_thread) + threads.append(t) + for t in threads: + t.start() + time.sleep(1.0) + exit = True + for t in threads: + t.join() + finally: + sys.setswitchinterval(old_switchinterval) + gc.collect() + self.assertEqual(len(C.inits), len(C.dels)) + def test_boom(self): class Boom: def __getattr__(self, someattribute): diff --git a/Misc/NEWS b/Misc/NEWS index 3e75f44b856..a1d35a4f1d3 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -10,6 +10,11 @@ What's New in Python 3.2.4 Core and Builtins ----------------- +- Issue #13992: The trashcan mechanism is now thread-safe. This eliminates + sporadic crashes in multi-thread programs when several long deallocator + chains ran concurrently and involved subclasses of built-in container + types. + - Issue #15846: Fix SystemError which happened when using ast.parse in an exception handler on code with syntax errors. diff --git a/Objects/object.c b/Objects/object.c index 84ec2f34f58..4730a66659c 100644 --- a/Objects/object.c +++ b/Objects/object.c @@ -1876,6 +1876,18 @@ _PyTrash_deposit_object(PyObject *op) _PyTrash_delete_later = op; } +/* The equivalent API, using per-thread state recursion info */ +void +_PyTrash_thread_deposit_object(PyObject *op) +{ + PyThreadState *tstate = PyThreadState_GET(); + assert(PyObject_IS_GC(op)); + assert(_Py_AS_GC(op)->gc.gc_refs == _PyGC_REFS_UNTRACKED); + assert(op->ob_refcnt == 0); + _Py_AS_GC(op)->gc.gc_prev = (PyGC_Head *) tstate->trash_delete_later; + tstate->trash_delete_later = op; +} + /* Dealloccate all the objects in the _PyTrash_delete_later list. Called when * the call-stack unwinds again. */ @@ -1902,6 +1914,31 @@ _PyTrash_destroy_chain(void) } } +/* The equivalent API, using per-thread state recursion info */ +void +_PyTrash_thread_destroy_chain(void) +{ + PyThreadState *tstate = PyThreadState_GET(); + while (tstate->trash_delete_later) { + PyObject *op = tstate->trash_delete_later; + destructor dealloc = Py_TYPE(op)->tp_dealloc; + + tstate->trash_delete_later = + (PyObject*) _Py_AS_GC(op)->gc.gc_prev; + + /* Call the deallocator directly. This used to try to + * fool Py_DECREF into calling it indirectly, but + * Py_DECREF was already called on this object, and in + * assorted non-release builds calling Py_DECREF again ends + * up distorting allocation statistics. + */ + assert(op->ob_refcnt == 0); + ++tstate->trash_delete_nesting; + (*dealloc)(op); + --tstate->trash_delete_nesting; + } +} + #ifndef Py_TRACE_REFS /* For Py_LIMITED_API, we need an out-of-line version of _Py_Dealloc. Define this here, so we can undefine the macro. */ diff --git a/Objects/typeobject.c b/Objects/typeobject.c index adb69cb627d..1bda375c3d2 100644 --- a/Objects/typeobject.c +++ b/Objects/typeobject.c @@ -847,6 +847,7 @@ subtype_dealloc(PyObject *self) { PyTypeObject *type, *base; destructor basedealloc; + PyThreadState *tstate = PyThreadState_GET(); /* Extract the type; we expect it to be a heap type */ type = Py_TYPE(self); @@ -896,8 +897,10 @@ subtype_dealloc(PyObject *self) /* See explanation at end of function for full disclosure */ PyObject_GC_UnTrack(self); ++_PyTrash_delete_nesting; + ++ tstate->trash_delete_nesting; Py_TRASHCAN_SAFE_BEGIN(self); --_PyTrash_delete_nesting; + -- tstate->trash_delete_nesting; /* DO NOT restore GC tracking at this point. weakref callbacks * (if any, and whether directly here or indirectly in something we * call) may trigger GC, and if self is tracked at that point, it @@ -976,8 +979,10 @@ subtype_dealloc(PyObject *self) endlabel: ++_PyTrash_delete_nesting; + ++ tstate->trash_delete_nesting; Py_TRASHCAN_SAFE_END(self); --_PyTrash_delete_nesting; + -- tstate->trash_delete_nesting; /* Explanation of the weirdness around the trashcan macros: diff --git a/Python/pystate.c b/Python/pystate.c index 13923313c0a..42bc3eceafa 100644 --- a/Python/pystate.c +++ b/Python/pystate.c @@ -206,6 +206,9 @@ new_threadstate(PyInterpreterState *interp, int init) tstate->c_profileobj = NULL; tstate->c_traceobj = NULL; + tstate->trash_delete_nesting = 0; + tstate->trash_delete_later = NULL; + if (init) _PyThreadState_Init(tstate); From b2a61e1ead72a89d21a0bd84930dbb7a28be3793 Mon Sep 17 00:00:00 2001 From: Eric Snow Date: Wed, 5 Sep 2012 22:19:38 -0700 Subject: [PATCH 046/201] add whatsnew entry for PEP 421 --- Doc/whatsnew/3.3.rst | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/Doc/whatsnew/3.3.rst b/Doc/whatsnew/3.3.rst index 47cbd4ec4dd..3891eb18485 100644 --- a/Doc/whatsnew/3.3.rst +++ b/Doc/whatsnew/3.3.rst @@ -564,6 +564,41 @@ which considerably simplifies writing decorators and any code that validates or amends calling signatures or arguments. +PEP 421: Adding sys.implementation +================================== + +:pep:`421` - Adding sys.implementation + PEP written and implemented by Eric Snow. + +A new attribute on the :mod:`sys` module exposes details specific to the +implementation of the currently running interpreter. The initial set of +attributes on :attr:`sys.implementation` are ``name``, ``version``, +``hexversion``, and ``cache_tag``. + +The intention of ``sys.implementation`` is to consolidate into one namespace +the implementation-specific data used by the standard library. This allows +different Python implementations to share a single standard library code base +much more easily. In its initial state, ``sys.implementation`` holds only a +small portion of the implementation-specific data. Over time that ratio will +shift in order to make the standard library more portable. + +One example of improved standard library portability is ``cache_tag``. As of +Python 3.3, ``sys.implementation.cache_tag`` is used by :mod:`importlib` to +support :pep:`3147` compliance. Any Python implementation that uses +``importlib`` for its built-in import system may use ``cache_tag`` to control +the caching behavior for modules. + +SimpleNamespace +--------------- + +The implementation of ``sys.implementation`` also introduces a new type to +Python: :class:`types.SimpleNamespace`. In contrast to a mapping-based +namespace, like :class:`dict`, ``SimpleNamespace`` is attribute-based, like +:class:`object`. However, unlike ``object``, ``SimpleNamespace`` instances +are writable. This means that you can add, remove, and modify the namespace +through normal attribute access. + + .. _importlib: Using importlib as the Implementation of Import From 527a2400fb236bb4ab9fa81ad90d932bab6da071 Mon Sep 17 00:00:00 2001 From: Stefan Krah Date: Thu, 6 Sep 2012 09:42:29 +0200 Subject: [PATCH 047/201] _testbuffer.c: In all current use cases of cmp_structure() dest->format and src->format are either both NULL or both non-NULL. However, it is safer to generalize the function. Found by Coverity. --- Modules/_testbuffer.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/Modules/_testbuffer.c b/Modules/_testbuffer.c index 87ada0a0928..316666e68ec 100644 --- a/Modules/_testbuffer.c +++ b/Modules/_testbuffer.c @@ -16,6 +16,7 @@ PyObject *calcsize = NULL; static const char *simple_fmt = "B"; PyObject *simple_format = NULL; #define SIMPLE_FORMAT(fmt) (fmt == NULL || strcmp(fmt, "B") == 0) +#define FIX_FORMAT(fmt) (fmt == NULL ? "B" : fmt) /**************************************************************************/ @@ -513,10 +514,8 @@ static int cmp_structure(Py_buffer *dest, Py_buffer *src) { Py_ssize_t i; - int same_fmt = ((dest->format == NULL && src->format == NULL) || \ - (strcmp(dest->format, src->format) == 0)); - if (!same_fmt || + if (strcmp(FIX_FORMAT(dest->format), FIX_FORMAT(src->format)) != 0 || dest->itemsize != src->itemsize || dest->ndim != src->ndim) return -1; From d9c1bf7f1f4d5436956c3629ed97cec507463951 Mon Sep 17 00:00:00 2001 From: Stefan Krah Date: Thu, 6 Sep 2012 13:02:46 +0200 Subject: [PATCH 048/201] After the jump in line 1051 unicode_tmp is NULL. Found by Coverity. --- Python/formatter_unicode.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Python/formatter_unicode.c b/Python/formatter_unicode.c index a263efc84f8..aa62502dbef 100644 --- a/Python/formatter_unicode.c +++ b/Python/formatter_unicode.c @@ -1099,7 +1099,7 @@ format_float_internal(PyObject *value, &locale, 0); done: - Py_DECREF(unicode_tmp); + Py_XDECREF(unicode_tmp); free_locale_info(&locale); return result; } From 7dd06e1dc038ffb8c765a024910f24be21fb2c8f Mon Sep 17 00:00:00 2001 From: Christian Heimes Date: Thu, 6 Sep 2012 18:02:49 +0200 Subject: [PATCH 049/201] Issue #15591: run ctypes' configure in quiet mode when setup.py runs silently --- setup.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/setup.py b/setup.py index 65acb99f7c1..10ce79e29c2 100644 --- a/setup.py +++ b/setup.py @@ -1675,6 +1675,8 @@ def configure_ctypes(self, ext): from distutils.dir_util import mkpath mkpath(ffi_builddir) config_args = [] + if not self.verbose: + config_args.append("-q") # Pass empty CFLAGS because we'll just append the resulting # CFLAGS to Python's; -g or -O2 is to be avoided. From ce66a3e36fc0405cc2c751df4b5ecdd49ec37013 Mon Sep 17 00:00:00 2001 From: Ross Lagerwall Date: Thu, 6 Sep 2012 18:58:43 +0200 Subject: [PATCH 050/201] Fix a typo in the curses docs --- Doc/library/curses.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Doc/library/curses.rst b/Doc/library/curses.rst index c4241483b58..2d0043cbd18 100644 --- a/Doc/library/curses.rst +++ b/Doc/library/curses.rst @@ -837,7 +837,7 @@ the following methods and attributes: .. attribute:: window.encoding Encoding used to encode method arguments (Unicode strings and characters). - The encoding attribute is inherited from by parent window when a subwindow + The encoding attribute is inherited from the parent window when a subwindow is created, for example with :meth:`window.subwin`. By default, the locale encoding is used (see :func:`locale.getpreferredencoding`). From 0897683381092a061e2c294389185bd638d72d47 Mon Sep 17 00:00:00 2001 From: Christian Heimes Date: Fri, 7 Sep 2012 00:55:33 +0200 Subject: [PATCH 051/201] Issue #15591 and Issue #11715: silence output of setup.py when make is run with -s option. --- Makefile.pre.in | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/Makefile.pre.in b/Makefile.pre.in index 63ffc7d5b9f..41dabd4c4a9 100644 --- a/Makefile.pre.in +++ b/Makefile.pre.in @@ -198,6 +198,14 @@ BUILDPYTHON= python$(BUILDEXE) PROFILE_TASK= $(srcdir)/Tools/pybench/pybench.py -n 2 --with-gc --with-syscheck #PROFILE_TASK= $(srcdir)/Lib/test/regrtest.py +# Find the silent flag in MAKEFLAGS. The flags are sorted and normalized +# by GNU make. The 's' flag is always in the first word. +ifneq (,$(findstring s,$(word 1,$(MAKEFLAGS)))) + QUIET=-q +else + QUIET= +endif + # === Definitions added by makesetup === @@ -438,14 +446,8 @@ platform: $(BUILDPYTHON) # Build the shared modules sharedmods: $(BUILDPYTHON) - if which getopt >/dev/null; then \ - mflags=`getopt s $$MAKEFLAGS 2>/dev/null | sed 's/ --.*/ /'`; \ - else \ - mflags=" $$MAKEFLAGS "; \ - fi; \ - case $$mflags in "* -s *") quiet=-q; esac; \ $(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' \ - ./$(BUILDPYTHON) -E $(srcdir)/setup.py $$quiet build + ./$(BUILDPYTHON) -E $(srcdir)/setup.py $(QUIET) build # Build static library # avoid long command lines, same as LIBRARY_OBJS From 5f381210c464b044b5d1d931db08d68ce04038e4 Mon Sep 17 00:00:00 2001 From: Christian Heimes Date: Fri, 7 Sep 2012 02:24:58 +0200 Subject: [PATCH 052/201] Fix for fcc629208842 BSD's make doesn't support some of the features. --- Makefile.pre.in | 16 +++++++--------- 1 file changed, 7 insertions(+), 9 deletions(-) diff --git a/Makefile.pre.in b/Makefile.pre.in index 41dabd4c4a9..5cb6774130c 100644 --- a/Makefile.pre.in +++ b/Makefile.pre.in @@ -198,14 +198,6 @@ BUILDPYTHON= python$(BUILDEXE) PROFILE_TASK= $(srcdir)/Tools/pybench/pybench.py -n 2 --with-gc --with-syscheck #PROFILE_TASK= $(srcdir)/Lib/test/regrtest.py -# Find the silent flag in MAKEFLAGS. The flags are sorted and normalized -# by GNU make. The 's' flag is always in the first word. -ifneq (,$(findstring s,$(word 1,$(MAKEFLAGS)))) - QUIET=-q -else - QUIET= -endif - # === Definitions added by makesetup === @@ -445,9 +437,15 @@ platform: $(BUILDPYTHON) # Build the shared modules +# MAKEFLAGS are sorted and normalized. Under GNU make the 's' for +# -s, --silent or --quiet is always the first char. sharedmods: $(BUILDPYTHON) + @case "$$MAKEFLAGS" in \ + s*) quiet="-q";; \ + *) quiet="";; \ + esac; \ $(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' \ - ./$(BUILDPYTHON) -E $(srcdir)/setup.py $(QUIET) build + ./$(BUILDPYTHON) -E $(srcdir)/setup.py $$quiet build # Build static library # avoid long command lines, same as LIBRARY_OBJS From 2dabaf63cf165dce61edbd51edfa5510348371bf Mon Sep 17 00:00:00 2001 From: Ross Lagerwall Date: Fri, 7 Sep 2012 08:34:23 +0200 Subject: [PATCH 053/201] Issue #15876: Fix a refleak in the curses module The refleak occurred when assigning to window.encoding. --- Misc/NEWS | 2 ++ Modules/_cursesmodule.c | 1 + 2 files changed, 3 insertions(+) diff --git a/Misc/NEWS b/Misc/NEWS index 8046b7bf458..9babfd86a89 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -26,6 +26,8 @@ Core and Builtins Library ------- +- Issue #15876: Fix a refleak in the curses module: window.encoding. + - Issue #15841: The readable(), writable() and seekable() methods of BytesIO and StringIO objects now raise ValueError when the object has been closed. Patch by Alessandro Moura. diff --git a/Modules/_cursesmodule.c b/Modules/_cursesmodule.c index 3f9ca1313da..4e1449bf69f 100644 --- a/Modules/_cursesmodule.c +++ b/Modules/_cursesmodule.c @@ -1938,6 +1938,7 @@ PyCursesWindow_set_encoding(PyCursesWindowObject *self, PyObject *value) if (ascii == NULL) return -1; encoding = strdup(PyBytes_AS_STRING(ascii)); + Py_DECREF(ascii); if (encoding == NULL) { PyErr_NoMemory(); return -1; From 7ff1822ec729fc389786683af886ea2f2b13cfbf Mon Sep 17 00:00:00 2001 From: Antoine Pitrou Date: Fri, 7 Sep 2012 23:49:07 +0200 Subject: [PATCH 054/201] Issue #15340: Fix importing the random module when /dev/urandom cannot be opened. This was a regression caused by the hash randomization patch. --- Misc/NEWS | 3 +++ Python/random.c | 3 ++- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/Misc/NEWS b/Misc/NEWS index a1d35a4f1d3..065f5f61a49 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -120,6 +120,9 @@ Core and Builtins Library ------- +- Issue #15340: Fix importing the random module when /dev/urandom cannot + be opened. This was a regression caused by the hash randomization patch. + - Issue #15841: The readable(), writable() and seekable() methods of BytesIO and StringIO objects now raise ValueError when the object has been closed. Patch by Alessandro Moura. diff --git a/Python/random.c b/Python/random.c index a2ae002261a..825260f36b2 100644 --- a/Python/random.c +++ b/Python/random.c @@ -165,7 +165,8 @@ dev_urandom_python(char *buffer, Py_ssize_t size) Py_END_ALLOW_THREADS if (fd < 0) { - PyErr_SetFromErrnoWithFilename(PyExc_OSError, "/dev/urandom"); + PyErr_SetString(PyExc_NotImplementedError, + "/dev/urandom (or equivalent) not found"); return -1; } From 96efdd422cef75f70770107847b1a97e7e524e4c Mon Sep 17 00:00:00 2001 From: Stefan Krah Date: Sat, 8 Sep 2012 11:12:33 +0200 Subject: [PATCH 055/201] Issue #15868: Fix refleak in bytesio.c (Coverity #715365). --- Modules/_io/bytesio.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Modules/_io/bytesio.c b/Modules/_io/bytesio.c index ef951aaa031..41645334075 100644 --- a/Modules/_io/bytesio.c +++ b/Modules/_io/bytesio.c @@ -692,8 +692,10 @@ bytesio_getstate(bytesio *self) } else { dict = PyDict_Copy(self->dict); - if (dict == NULL) + if (dict == NULL) { + Py_DECREF(initvalue); return NULL; + } } state = Py_BuildValue("(OnN)", initvalue, self->pos, dict); From 37a0170fa3e5023952040479675fd2002ffe3592 Mon Sep 17 00:00:00 2001 From: Stefan Krah Date: Sat, 8 Sep 2012 15:35:01 +0200 Subject: [PATCH 056/201] Issue #15814: Update whatsnew to the current state of hashing memoryviews. --- Doc/whatsnew/3.3.rst | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/Doc/whatsnew/3.3.rst b/Doc/whatsnew/3.3.rst index 3891eb18485..caa838f3532 100644 --- a/Doc/whatsnew/3.3.rst +++ b/Doc/whatsnew/3.3.rst @@ -158,9 +158,8 @@ Features * Multi-dimensional comparisons are supported for any array type. -* All array types are hashable if the exporting object is hashable - and the view is read-only. (Contributed by Antoine Pitrou in - :issue:`13411`) +* One-dimensional memoryviews of hashable (read-only) types with formats B, + b or c are now hashable. (Contributed by Antoine Pitrou in :issue:`13411`) * Arbitrary slicing of any 1-D arrays type is supported. For example, it is now possible to reverse a memoryview in O(1) by using a negative step. From b522828d2a6bdc4438441eda837a696851ba4263 Mon Sep 17 00:00:00 2001 From: R David Murray Date: Sat, 8 Sep 2012 12:08:01 -0400 Subject: [PATCH 057/201] #15847: allow args to be a tuple in parse_args MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This fixes a regression introduced by the fix for issue #13922. Although args is not documented as being allowed to be a tuple, previously this worked and so naturally there are programs in the field that depend on it. Patch by Zbyszek Jędrzejewski-Szmek. --- Lib/argparse.py | 5 ++++- Lib/test/test_argparse.py | 18 ++++++++++++++++++ 2 files changed, 22 insertions(+), 1 deletion(-) diff --git a/Lib/argparse.py b/Lib/argparse.py index f77c0c2d75f..52ed3ab107a 100644 --- a/Lib/argparse.py +++ b/Lib/argparse.py @@ -1701,9 +1701,12 @@ def parse_args(self, args=None, namespace=None): return args def parse_known_args(self, args=None, namespace=None): - # args default to the system args if args is None: + # args default to the system args args = _sys.argv[1:] + else: + # make sure that args are mutable + args = list(args) # default Namespace built from parser defaults if namespace is None: diff --git a/Lib/test/test_argparse.py b/Lib/test/test_argparse.py index cc051607e97..a2f9a69a59a 100644 --- a/Lib/test/test_argparse.py +++ b/Lib/test/test_argparse.py @@ -4522,6 +4522,24 @@ def spam(int_to_convert): class TestParseKnownArgs(TestCase): + def test_arguments_tuple(self): + parser = argparse.ArgumentParser() + parser.parse_args(()) + + def test_arguments_list(self): + parser = argparse.ArgumentParser() + parser.parse_args([]) + + def test_arguments_tuple_positional(self): + parser = argparse.ArgumentParser() + parser.add_argument('x') + parser.parse_args(('x',)) + + def test_arguments_list_positional(self): + parser = argparse.ArgumentParser() + parser.add_argument('x') + parser.parse_args(['x']) + def test_optionals(self): parser = argparse.ArgumentParser() parser.add_argument('--foo') From 1585b708139f9b431081229fb664b9638a5062b8 Mon Sep 17 00:00:00 2001 From: R David Murray Date: Sat, 8 Sep 2012 13:13:25 -0400 Subject: [PATCH 058/201] #15510: clarify textwrap's handling of whitespace, and add confirming tests. Patch by Chris Jerdonek. --- Doc/library/textwrap.rst | 19 ++++++++---- Lib/test/test_textwrap.py | 64 ++++++++++++++++++++++++++++++++++----- 2 files changed, 69 insertions(+), 14 deletions(-) diff --git a/Doc/library/textwrap.rst b/Doc/library/textwrap.rst index 547db79d77c..3c1ecf60b61 100644 --- a/Doc/library/textwrap.rst +++ b/Doc/library/textwrap.rst @@ -25,6 +25,9 @@ otherwise, you should use an instance of :class:`TextWrapper` for efficiency. Optional keyword arguments correspond to the instance attributes of :class:`TextWrapper`, documented below. *width* defaults to ``70``. + See the :meth:`TextWrapper.wrap` method for additional details on how + :func:`wrap` behaves. + .. function:: fill(text, width=70, **kwargs) @@ -131,15 +134,18 @@ indentation from strings that have unwanted whitespace to the left of the text. .. attribute:: drop_whitespace - (default: ``True``) If true, whitespace that, after wrapping, happens to - end up at the beginning or end of a line is dropped (leading whitespace in - the first line is always preserved, though). + (default: ``True``) If true, whitespace at the beginning and ending of + every line (after wrapping but before indenting) is dropped. + Whitespace at the beginning of the paragraph, however, is not dropped + if non-whitespace follows it. If whitespace being dropped takes up an + entire line, the whole line is dropped. .. attribute:: initial_indent (default: ``''``) String that will be prepended to the first line of - wrapped output. Counts towards the length of the first line. + wrapped output. Counts towards the length of the first line. The empty + string is not indented. .. attribute:: subsequent_indent @@ -200,8 +206,9 @@ indentation from strings that have unwanted whitespace to the left of the text. Wraps the single paragraph in *text* (a string) so every line is at most :attr:`width` characters long. All wrapping options are taken from - instance attributes of the :class:`TextWrapper` instance. Returns a list - of output lines, without final newlines. + instance attributes of the :class:`TextWrapper` instance. Returns a list + of output lines, without final newlines. If the wrapped output has no + content, the returned list is empty. .. method:: fill(text) diff --git a/Lib/test/test_textwrap.py b/Lib/test/test_textwrap.py index 905dd4c9e64..3901120c879 100644 --- a/Lib/test/test_textwrap.py +++ b/Lib/test/test_textwrap.py @@ -22,7 +22,7 @@ def show(self, textin): result = [] for i in range(len(textin)): result.append(" %d: %r" % (i, textin[i])) - result = '\n'.join(result) + result = "\n".join(result) if result else " no lines" elif isinstance(textin, str): result = " %s\n" % repr(textin) return result @@ -66,6 +66,15 @@ def test_simple(self): "I'm glad to hear it!"]) self.check_wrap(text, 80, [text]) + def test_empty_string(self): + # Check that wrapping the empty string returns an empty list. + self.check_wrap("", 6, []) + self.check_wrap("", 6, [], drop_whitespace=False) + + def test_empty_string_with_initial_indent(self): + # Check that the empty string is not indented. + self.check_wrap("", 6, [], initial_indent="++") + self.check_wrap("", 6, [], initial_indent="++", drop_whitespace=False) def test_whitespace(self): # Whitespace munging and end-of-sentence detection @@ -323,7 +332,32 @@ def test_funky_parens (self): ["blah", " ", "(ding", " ", "dong),", " ", "wubba"]) - def test_initial_whitespace(self): + def test_drop_whitespace_false(self): + # Check that drop_whitespace=False preserves whitespace. + # SF patch #1581073 + text = " This is a sentence with much whitespace." + self.check_wrap(text, 10, + [" This is a", " ", "sentence ", + "with ", "much white", "space."], + drop_whitespace=False) + + def test_drop_whitespace_false_whitespace_only(self): + # Check that drop_whitespace=False preserves a whitespace-only string. + self.check_wrap(" ", 6, [" "], drop_whitespace=False) + + def test_drop_whitespace_false_whitespace_only_with_indent(self): + # Check that a whitespace-only string gets indented (when + # drop_whitespace is False). + self.check_wrap(" ", 6, [" "], drop_whitespace=False, + initial_indent=" ") + + def test_drop_whitespace_whitespace_only(self): + # Check drop_whitespace on a whitespace-only string. + self.check_wrap(" ", 6, []) + + def test_drop_whitespace_leading_whitespace(self): + # Check that drop_whitespace does not drop leading whitespace (if + # followed by non-whitespace). # SF bug #622849 reported inconsistent handling of leading # whitespace; let's test that a bit, shall we? text = " This is a sentence with leading whitespace." @@ -332,13 +366,27 @@ def test_initial_whitespace(self): self.check_wrap(text, 30, [" This is a sentence with", "leading whitespace."]) - def test_no_drop_whitespace(self): - # SF patch #1581073 - text = " This is a sentence with much whitespace." - self.check_wrap(text, 10, - [" This is a", " ", "sentence ", - "with ", "much white", "space."], + def test_drop_whitespace_whitespace_line(self): + # Check that drop_whitespace skips the whole line if a non-leading + # line consists only of whitespace. + text = "abcd efgh" + # Include the result for drop_whitespace=False for comparison. + self.check_wrap(text, 6, ["abcd", " ", "efgh"], drop_whitespace=False) + self.check_wrap(text, 6, ["abcd", "efgh"]) + + def test_drop_whitespace_whitespace_only_with_indent(self): + # Check that initial_indent is not applied to a whitespace-only + # string. This checks a special case of the fact that dropping + # whitespace occurs before indenting. + self.check_wrap(" ", 6, [], initial_indent="++") + + def test_drop_whitespace_whitespace_indent(self): + # Check that drop_whitespace does not drop whitespace indents. + # This checks a special case of the fact that dropping whitespace + # occurs before indenting. + self.check_wrap("abcd efgh", 6, [" abcd", " efgh"], + initial_indent=" ", subsequent_indent=" ") def test_split(self): # Ensure that the standard _split() method works as advertised From e927e256378707b8f173b38f0a1bac6d23a56d3a Mon Sep 17 00:00:00 2001 From: Ezio Melotti Date: Sat, 8 Sep 2012 20:46:01 +0300 Subject: [PATCH 059/201] #15865: add "*" in the signature to document keyword-only args in the docs. Patch by Chris Jerdonek. --- Doc/library/configparser.rst | 16 +++++++++++----- Doc/library/nntplib.rst | 6 +++--- 2 files changed, 14 insertions(+), 8 deletions(-) diff --git a/Doc/library/configparser.rst b/Doc/library/configparser.rst index afceb8d30ab..6f0ae6ace82 100644 --- a/Doc/library/configparser.rst +++ b/Doc/library/configparser.rst @@ -1007,7 +1007,7 @@ ConfigParser Objects .. versionadded:: 3.2 - .. method:: get(section, option, raw=False, [vars, fallback]) + .. method:: get(section, option, *, raw=False, vars=None[, fallback]) Get an *option* value for the named *section*. If *vars* is provided, it must be a dictionary. The *option* is looked up in *vars* (if provided), @@ -1025,21 +1025,21 @@ ConfigParser Objects (especially when using the mapping protocol). - .. method:: getint(section, option, raw=False, [vars, fallback]) + .. method:: getint(section, option, *, raw=False, vars=None[, fallback]) A convenience method which coerces the *option* in the specified *section* to an integer. See :meth:`get` for explanation of *raw*, *vars* and *fallback*. - .. method:: getfloat(section, option, raw=False, [vars, fallback]) + .. method:: getfloat(section, option, *, raw=False, vars=None[, fallback]) A convenience method which coerces the *option* in the specified *section* to a floating point number. See :meth:`get` for explanation of *raw*, *vars* and *fallback*. - .. method:: getboolean(section, option, raw=False, [vars, fallback]) + .. method:: getboolean(section, option, *, raw=False, vars=None[, fallback]) A convenience method which coerces the *option* in the specified *section* to a Boolean value. Note that the accepted values for the option are @@ -1149,7 +1149,13 @@ ConfigParser Objects RawConfigParser Objects ----------------------- -.. class:: RawConfigParser(defaults=None, dict_type=collections.OrderedDict, allow_no_value=False, delimiters=('=', ':'), comment_prefixes=('#', ';'), inline_comment_prefixes=None, strict=True, empty_lines_in_values=True, default_section=configaparser.DEFAULTSECT, interpolation=None) +.. class:: RawConfigParser(defaults=None, dict_type=collections.OrderedDict, \ + allow_no_value=False, *, delimiters=('=', ':'), \ + comment_prefixes=('#', ';'), \ + inline_comment_prefixes=None, strict=True, \ + empty_lines_in_values=True, \ + default_section=configparser.DEFAULTSECT[, \ + interpolation]) Legacy variant of the :class:`ConfigParser` with interpolation disabled by default and unsafe ``add_section`` and ``set`` methods. diff --git a/Doc/library/nntplib.rst b/Doc/library/nntplib.rst index ef507e1ff98..247efb7deb4 100644 --- a/Doc/library/nntplib.rst +++ b/Doc/library/nntplib.rst @@ -474,10 +474,10 @@ The following are optional NNTP extensions defined in :rfc:`2980`. Some of them have been superseded by newer commands in :rfc:`3977`. -.. method:: NNTP.xhdr(header, string, *, file=None) +.. method:: NNTP.xhdr(hdr, str, *, file=None) - Send an ``XHDR`` command. The *header* argument is a header keyword, e.g. - ``'subject'``. The *string* argument should have the form ``'first-last'`` + Send an ``XHDR`` command. The *hdr* argument is a header keyword, e.g. + ``'subject'``. The *str* argument should have the form ``'first-last'`` where *first* and *last* are the first and last article numbers to search. Return a pair ``(response, list)``, where *list* is a list of pairs ``(id, text)``, where *id* is an article number (as a string) and *text* is the text of From 14d66a98ed8674fd2e6ba2f04ddef694111011a2 Mon Sep 17 00:00:00 2001 From: R David Murray Date: Sat, 8 Sep 2012 16:45:35 -0400 Subject: [PATCH 060/201] #5088: document behavior of optparse defaults with 'append' action. --- Doc/library/optparse.rst | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/Doc/library/optparse.rst b/Doc/library/optparse.rst index add582efed7..6dc57bb3a64 100644 --- a/Doc/library/optparse.rst +++ b/Doc/library/optparse.rst @@ -1165,6 +1165,17 @@ must specify for any option using that action. options.tracks.append(int("4")) + The ``append`` action calls the ``append`` method on the current value of the + option. This means that any default value specified must have an ``append`` + method. It also means that if the default value is non-empty, the default + elements will be present in the parsed value for the option, with any values + from the command line appended after those default values:: + + >>> parser.add_option("--files", action="append", default=['~/.mypkg/defaults']) + >>> opts, args = parser.parse_args(['--files', 'overrides.mypkg']) + >>> opts.files + ['~/.mypkg/defaults', 'overrides.mypkg'] + * ``"append_const"`` [required: :attr:`~Option.const`; relevant: :attr:`~Option.dest`] From 47bcfff26be59c3979778b4621cd61f132c1a6d9 Mon Sep 17 00:00:00 2001 From: Ned Deily Date: Sat, 8 Sep 2012 18:50:56 -0700 Subject: [PATCH 061/201] Issue #15822: Fix installation of lib2to3 grammar pickles to ensure they are created in the install locations and with the proper timestamp. (Solution suggested by MvL) --- Lib/lib2to3/pgen2/driver.py | 17 +++++++++++++++++ Makefile.pre.in | 8 +++++--- Misc/NEWS | 2 +- 3 files changed, 23 insertions(+), 4 deletions(-) diff --git a/Lib/lib2to3/pgen2/driver.py b/Lib/lib2to3/pgen2/driver.py index e7828ffe160..4c611c66401 100644 --- a/Lib/lib2to3/pgen2/driver.py +++ b/Lib/lib2to3/pgen2/driver.py @@ -138,3 +138,20 @@ def _newer(a, b): if not os.path.exists(b): return True return os.path.getmtime(a) >= os.path.getmtime(b) + + +def main(*args): + """Main program, when run as a script: produce grammar pickle files. + + Calls load_grammar for each argument, a path to a grammar text file. + """ + if not args: + args = sys.argv[1:] + logging.basicConfig(level=logging.INFO, stream=sys.stdout, + format='%(message)s') + for gt in args: + load_grammar(gt, save=True, force=True) + return True + +if __name__ == "__main__": + sys.exit(int(not main())) diff --git a/Makefile.pre.in b/Makefile.pre.in index 5cb6774130c..6dec272ab82 100644 --- a/Makefile.pre.in +++ b/Makefile.pre.in @@ -945,8 +945,6 @@ LIBSUBDIRS= tkinter tkinter/test tkinter/test/test_tkinter \ unittest unittest/test \ curses pydoc_data $(MACHDEPS) libinstall: build_all $(srcdir)/Lib/$(PLATDIR) $(srcdir)/Modules/xxmodule.c - -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ - ./$(BUILDPYTHON) -Wi -c "import lib2to3.pygram, lib2to3.patcomp;lib2to3.patcomp.PatternCompiler()" @for i in $(SCRIPTDIR) $(LIBDEST); \ do \ if test ! -d $(DESTDIR)$$i; then \ @@ -1024,6 +1022,10 @@ libinstall: build_all $(srcdir)/Lib/$(PLATDIR) $(srcdir)/Modules/xxmodule.c ./$(BUILDPYTHON) -Wi -O $(DESTDIR)$(LIBDEST)/compileall.py \ -d $(LIBDEST)/site-packages -f \ -x badsyntax $(DESTDIR)$(LIBDEST)/site-packages + -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ + ./$(BUILDPYTHON) -m lib2to3.pgen2.driver $(DESTDIR)$(LIBDEST)/lib2to3/Grammar.txt + -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ + ./$(BUILDPYTHON) -m lib2to3.pgen2.driver $(DESTDIR)$(LIBDEST)/lib2to3/PatternGrammar.txt # Create the PLATDIR source directory, if one wasn't distributed.. $(srcdir)/Lib/$(PLATDIR): @@ -1264,7 +1266,7 @@ clean: pycremoval find . -name '*.so.[0-9]*.[0-9]*' -exec rm -f {} ';' find build -name 'fficonfig.h' -exec rm -f {} ';' || true find build -name 'fficonfig.py' -exec rm -f {} ';' || true - -rm -f $(srcdir)/Lib/lib2to3/*Grammar*.pickle + -rm -f Lib/lib2to3/*Grammar*.pickle -rm -f Modules/_testembed profile-removal: diff --git a/Misc/NEWS b/Misc/NEWS index 065f5f61a49..de76a78f5e5 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -525,7 +525,7 @@ Build - Issue #15819: Make sure we can build Python out-of-tree from a readonly source directory. (Somewhat related to Issue #9860.) -- Issue #15645: Ensure 2to3 grammar pickles are properly installed. +- Issue #15822: Ensure 2to3 grammar pickles are properly installed. - Issue #15560: Fix building _sqlite3 extension on OS X with an SDK. From 4725b13ab335ff320eef8dc115941b8d34026023 Mon Sep 17 00:00:00 2001 From: Ned Deily Date: Sat, 8 Sep 2012 19:04:47 -0700 Subject: [PATCH 062/201] Issue #15822: Fix installation of lib2to3 grammar pickles to ensure they are created in the install locations and with the proper timestamp. (Solution suggested by MvL) --- Lib/lib2to3/pgen2/driver.py | 17 +++++++++++++++++ Makefile.pre.in | 8 +++++--- Misc/NEWS | 3 +++ 3 files changed, 25 insertions(+), 3 deletions(-) diff --git a/Lib/lib2to3/pgen2/driver.py b/Lib/lib2to3/pgen2/driver.py index e7828ffe160..4c611c66401 100644 --- a/Lib/lib2to3/pgen2/driver.py +++ b/Lib/lib2to3/pgen2/driver.py @@ -138,3 +138,20 @@ def _newer(a, b): if not os.path.exists(b): return True return os.path.getmtime(a) >= os.path.getmtime(b) + + +def main(*args): + """Main program, when run as a script: produce grammar pickle files. + + Calls load_grammar for each argument, a path to a grammar text file. + """ + if not args: + args = sys.argv[1:] + logging.basicConfig(level=logging.INFO, stream=sys.stdout, + format='%(message)s') + for gt in args: + load_grammar(gt, save=True, force=True) + return True + +if __name__ == "__main__": + sys.exit(int(not main())) diff --git a/Makefile.pre.in b/Makefile.pre.in index cbc1f9e774f..af4fd81d4a7 100644 --- a/Makefile.pre.in +++ b/Makefile.pre.in @@ -1024,8 +1024,6 @@ LIBSUBDIRS= tkinter tkinter/test tkinter/test/test_tkinter \ venv venv/scripts venv/scripts/posix \ curses pydoc_data $(MACHDEPS) libinstall: build_all $(srcdir)/Lib/$(PLATDIR) $(srcdir)/Modules/xxmodule.c - -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ - $(PYTHON_FOR_BUILD) -Wi -c "import lib2to3.pygram, lib2to3.patcomp;lib2to3.patcomp.PatternCompiler()" @for i in $(SCRIPTDIR) $(LIBDEST); \ do \ if test ! -d $(DESTDIR)$$i; then \ @@ -1103,6 +1101,10 @@ libinstall: build_all $(srcdir)/Lib/$(PLATDIR) $(srcdir)/Modules/xxmodule.c $(PYTHON_FOR_BUILD) -Wi -O $(DESTDIR)$(LIBDEST)/compileall.py \ -d $(LIBDEST)/site-packages -f \ -x badsyntax $(DESTDIR)$(LIBDEST)/site-packages + -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ + $(PYTHON_FOR_BUILD) -m lib2to3.pgen2.driver $(DESTDIR)$(LIBDEST)/lib2to3/Grammar.txt + -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ + $(PYTHON_FOR_BUILD) -m lib2to3.pgen2.driver $(DESTDIR)$(LIBDEST)/lib2to3/PatternGrammar.txt # Create the PLATDIR source directory, if one wasn't distributed.. $(srcdir)/Lib/$(PLATDIR): @@ -1347,7 +1349,7 @@ clean: pycremoval find . -name '*.so.[0-9]*.[0-9]*' -exec rm -f {} ';' find build -name 'fficonfig.h' -exec rm -f {} ';' || true find build -name 'fficonfig.py' -exec rm -f {} ';' || true - -rm -f $(srcdir)/Lib/lib2to3/*Grammar*.pickle + -rm -f Lib/lib2to3/*Grammar*.pickle -rm -f $(SYSCONFIGDATA) -rm -f Modules/_testembed Modules/_freeze_importlib diff --git a/Misc/NEWS b/Misc/NEWS index 24c42503ac5..b961f9fe581 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -62,6 +62,9 @@ Build - Issue #15819: Make sure we can build Python out-of-tree from a readonly source directory. (Somewhat related to Issue #9860.) +- Issue #15822: Really ensure 2to3 grammar pickles are properly installed + (replaces fixes for Issue #15645). + Documentation ------------- From 59fb38b5820e9f61f6e64e506c2dad98f7f32971 Mon Sep 17 00:00:00 2001 From: Alexander Belopolsky Date: Sun, 9 Sep 2012 13:16:15 -0400 Subject: [PATCH 063/201] Issue #15881: Fixed atexit hook in multiprocessing. --- Doc/ACKS.txt | 1 + Lib/multiprocessing/util.py | 50 ++++++++++++++++++++++++++----------- 2 files changed, 37 insertions(+), 14 deletions(-) diff --git a/Doc/ACKS.txt b/Doc/ACKS.txt index 26f7ea907f6..69735ca06c1 100644 --- a/Doc/ACKS.txt +++ b/Doc/ACKS.txt @@ -236,3 +236,4 @@ docs@python.org), and we'll be glad to correct the problem. * Moshe Zadka * Milan Zamazal * Cheng Zhang + * Chris McDonough diff --git a/Lib/multiprocessing/util.py b/Lib/multiprocessing/util.py index 30b7a85fa26..68d6c1f9c4a 100644 --- a/Lib/multiprocessing/util.py +++ b/Lib/multiprocessing/util.py @@ -247,6 +247,12 @@ def _run_finalizers(minpriority=None): Finalizers with highest priority are called first; finalizers with the same priority will be called in reverse order of creation. ''' + if _finalizer_registry is None: + # This function may be called after this module's globals are + # destroyed. See the _exit_function function in this module for more + # notes. + return + if minpriority is None: f = lambda p : p[0][0] is not None else: @@ -278,24 +284,40 @@ def is_exiting(): _exiting = False -def _exit_function(): +def _exit_function(info=info, debug=debug, _run_finalizers=_run_finalizers, + active_children=active_children, + current_process=current_process): + # We hold on to references to functions in the arglist due to the + # situation described below, where this function is called after this + # module's globals are destroyed. + global _exiting - info('process shutting down') - debug('running all "atexit" finalizers with priority >= 0') - _run_finalizers(0) + if not _exiting: + info('process shutting down') + debug('running all "atexit" finalizers with priority >= 0') + _run_finalizers(0) + if current_process() is not None: + # We check if the current process is None here because if + # it's None, any call to ``active_children()`` will throw an + # AttributeError (active_children winds up trying to get + # attributes from util._current_process). This happens in a + # variety of shutdown circumstances that are not well-understood + # because module-scope variables are not apparently supposed to + # be destroyed until after this function is called. However, + # they are indeed destroyed before this function is called. See + # issues #9775 and #15881. Also related: #4106, #9205, and #9207. + for p in active_children(): + if p._daemonic: + info('calling terminate() for daemon %s', p.name) + p._popen.terminate() - for p in active_children(): - if p._daemonic: - info('calling terminate() for daemon %s', p.name) - p._popen.terminate() + for p in active_children(): + info('calling join() for process %s', p.name) + p.join() - for p in active_children(): - info('calling join() for process %s', p.name) - p.join() - - debug('running the remaining "atexit" finalizers') - _run_finalizers() + debug('running the remaining "atexit" finalizers') + _run_finalizers() atexit.register(_exit_function) From f36c49d124af3cbe97ff5e1dd2a4e1a85f2575d2 Mon Sep 17 00:00:00 2001 From: Alexander Belopolsky Date: Sun, 9 Sep 2012 13:20:58 -0400 Subject: [PATCH 064/201] Issue #15881: Fixed atexit hook in multiprocessing. --- Doc/ACKS.txt | 1 + Lib/multiprocessing/util.py | 39 +++++++++++++++++++++++++++++-------- 2 files changed, 32 insertions(+), 8 deletions(-) diff --git a/Doc/ACKS.txt b/Doc/ACKS.txt index 68aff563b6d..a063827d65f 100644 --- a/Doc/ACKS.txt +++ b/Doc/ACKS.txt @@ -238,3 +238,4 @@ docs@python.org), and we'll be glad to correct the problem. * Moshe Zadka * Milan Zamazal * Cheng Zhang + * Chris McDonough diff --git a/Lib/multiprocessing/util.py b/Lib/multiprocessing/util.py index 8a6aede162a..bc2d65639e2 100644 --- a/Lib/multiprocessing/util.py +++ b/Lib/multiprocessing/util.py @@ -235,6 +235,12 @@ def _run_finalizers(minpriority=None): Finalizers with highest priority are called first; finalizers with the same priority will be called in reverse order of creation. ''' + if _finalizer_registry is None: + # This function may be called after this module's globals are + # destroyed. See the _exit_function function in this module for more + # notes. + return + if minpriority is None: f = lambda p : p[0][0] is not None else: @@ -266,7 +272,13 @@ def is_exiting(): _exiting = False -def _exit_function(): +def _exit_function(info=info, debug=debug, _run_finalizers=_run_finalizers, + active_children=active_children, + current_process=current_process): + # We hold on to references to functions in the arglist due to the + # situation described below, where this function is called after this + # module's globals are destroyed. + global _exiting if not _exiting: @@ -276,14 +288,25 @@ def _exit_function(): debug('running all "atexit" finalizers with priority >= 0') _run_finalizers(0) - for p in active_children(): - if p._daemonic: - info('calling terminate() for daemon %s', p.name) - p._popen.terminate() + if current_process() is not None: + # We check if the current process is None here because if + # it's None, any call to ``active_children()`` will throw an + # AttributeError (active_children winds up trying to get + # attributes from util._current_process). This happens in a + # variety of shutdown circumstances that are not well-understood + # because module-scope variables are not apparently supposed to + # be destroyed until after this function is called. However, + # they are indeed destroyed before this function is called. See + # issues #9775 and #15881. Also related: #4106, #9205, and #9207. - for p in active_children(): - info('calling join() for process %s', p.name) - p.join() + for p in active_children(): + if p._daemonic: + info('calling terminate() for daemon %s', p.name) + p._popen.terminate() + + for p in active_children(): + info('calling join() for process %s', p.name) + p.join() debug('running the remaining "atexit" finalizers') _run_finalizers() From 36351564a252d396fcaeb63b785b21226bfacd67 Mon Sep 17 00:00:00 2001 From: Alexander Belopolsky Date: Sun, 9 Sep 2012 13:22:45 -0400 Subject: [PATCH 065/201] Fixed whitespace --- Lib/multiprocessing/util.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Lib/multiprocessing/util.py b/Lib/multiprocessing/util.py index 68d6c1f9c4a..5e501bda625 100644 --- a/Lib/multiprocessing/util.py +++ b/Lib/multiprocessing/util.py @@ -252,7 +252,7 @@ def _run_finalizers(minpriority=None): # destroyed. See the _exit_function function in this module for more # notes. return - + if minpriority is None: f = lambda p : p[0][0] is not None else: From 7f704c11dbf6c766e11ed52c38fb732f7beda904 Mon Sep 17 00:00:00 2001 From: Alexander Belopolsky Date: Sun, 9 Sep 2012 13:25:06 -0400 Subject: [PATCH 066/201] Fixed whitespace --- Lib/multiprocessing/util.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Lib/multiprocessing/util.py b/Lib/multiprocessing/util.py index bc2d65639e2..3bb954670fc 100644 --- a/Lib/multiprocessing/util.py +++ b/Lib/multiprocessing/util.py @@ -240,7 +240,7 @@ def _run_finalizers(minpriority=None): # destroyed. See the _exit_function function in this module for more # notes. return - + if minpriority is None: f = lambda p : p[0][0] is not None else: From 5bedef3e64825c65e7bae51d2aea73f8bea34dd8 Mon Sep 17 00:00:00 2001 From: Alexander Belopolsky Date: Sun, 9 Sep 2012 13:31:08 -0400 Subject: [PATCH 067/201] Issue #15881: Fixed 3.2 backport. --- Lib/multiprocessing/util.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Lib/multiprocessing/util.py b/Lib/multiprocessing/util.py index 5e501bda625..20bba3764c2 100644 --- a/Lib/multiprocessing/util.py +++ b/Lib/multiprocessing/util.py @@ -294,6 +294,8 @@ def _exit_function(info=info, debug=debug, _run_finalizers=_run_finalizers, global _exiting if not _exiting: + _exiting = True + info('process shutting down') debug('running all "atexit" finalizers with priority >= 0') _run_finalizers(0) From 7330da42978ffcde525295ffc928ee3e0eedfb1b Mon Sep 17 00:00:00 2001 From: Alexander Belopolsky Date: Sun, 9 Sep 2012 14:11:45 -0400 Subject: [PATCH 068/201] Issue #15881: Added NEWS entry and proper credit. --- Doc/ACKS.txt | 1 - Misc/NEWS | 3 +++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/Doc/ACKS.txt b/Doc/ACKS.txt index 69735ca06c1..26f7ea907f6 100644 --- a/Doc/ACKS.txt +++ b/Doc/ACKS.txt @@ -236,4 +236,3 @@ docs@python.org), and we'll be glad to correct the problem. * Moshe Zadka * Milan Zamazal * Cheng Zhang - * Chris McDonough diff --git a/Misc/NEWS b/Misc/NEWS index de76a78f5e5..8672b0a468b 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -120,6 +120,9 @@ Core and Builtins Library ------- +- Issue #15881: Fixed atexit hook in multiprocessing. Original patch + by Chris McDonough. + - Issue #15340: Fix importing the random module when /dev/urandom cannot be opened. This was a regression caused by the hash randomization patch. From 941bfcc537a25077e2a73ddf8d8b3bfe288c81f4 Mon Sep 17 00:00:00 2001 From: Jesus Cea Date: Mon, 10 Sep 2012 00:27:55 +0200 Subject: [PATCH 069/201] Closes #15676: mmap: add empty file check prior to offset check --- Lib/test/test_mmap.py | 9 +++++++++ Misc/NEWS | 3 +++ Modules/mmapmodule.c | 5 +++++ 3 files changed, 17 insertions(+) diff --git a/Lib/test/test_mmap.py b/Lib/test/test_mmap.py index 0e18aabd662..c060e61dda8 100644 --- a/Lib/test/test_mmap.py +++ b/Lib/test/test_mmap.py @@ -459,6 +459,15 @@ def make_mmap_file (self, f, halfsize): f.flush () return mmap.mmap (f.fileno(), 0) + def test_empty_file (self): + f = open (TESTFN, 'w+b') + f.close() + f = open(TESTFN, "rb") + self.assertRaisesRegex(ValueError, + "cannot mmap an empty file", + mmap.mmap, f.fileno(), 0, access=mmap.ACCESS_READ) + f.close() + def test_offset (self): f = open (TESTFN, 'w+b') diff --git a/Misc/NEWS b/Misc/NEWS index 8672b0a468b..725fb9e5c13 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -463,6 +463,9 @@ Library Extension Modules ----------------- +- Issue #15676: Now "mmap" check for empty files before doing the + offset check. Patch by Steven Willis. + - Issue #6493: An issue in ctypes on Windows that caused structure bitfields of type ctypes.c_uint32 and width 32 to incorrectly be set has been fixed. diff --git a/Modules/mmapmodule.c b/Modules/mmapmodule.c index da9283bf1b7..e23613eb125 100644 --- a/Modules/mmapmodule.c +++ b/Modules/mmapmodule.c @@ -1141,6 +1141,11 @@ new_mmap_object(PyTypeObject *type, PyObject *args, PyObject *kwdict) if (fd != -1 && fstat(fd, &st) == 0 && S_ISREG(st.st_mode)) { if (map_size == 0) { off_t calc_size; + if (st.st_size == 0) { + PyErr_SetString(PyExc_ValueError, + "cannot mmap an empty file"); + return NULL; + } if (offset >= st.st_size) { PyErr_SetString(PyExc_ValueError, "mmap offset is greater than file size"); From 15b6885fe0ac67a23bbf80f90b1854c3bd7db984 Mon Sep 17 00:00:00 2001 From: Christian Heimes Date: Mon, 10 Sep 2012 01:25:50 +0200 Subject: [PATCH 070/201] Make sure that *really* no more than sizeof(ifr.ifr_name) chars are strcpy-ed to ifr.ifr_name and that the string is *always* NUL terminated. New code shouldn't use strcpy(), too. CID 719692 --- Modules/socketmodule.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Modules/socketmodule.c b/Modules/socketmodule.c index 717667454a5..d8c81fe1566 100644 --- a/Modules/socketmodule.c +++ b/Modules/socketmodule.c @@ -1674,7 +1674,8 @@ getsockaddrarg(PySocketSockObject *s, PyObject *args, if (len == 0) { ifr.ifr_ifindex = 0; } else if (len < sizeof(ifr.ifr_name)) { - strcpy(ifr.ifr_name, PyBytes_AS_STRING(interfaceName)); + strncpy(ifr.ifr_name, PyBytes_AS_STRING(interfaceName), sizeof(ifr.ifr_name)); + ifr.ifr_name[(sizeof(ifr.ifr_name))-1] = '\0'; if (ioctl(s->sock_fd, SIOCGIFINDEX, &ifr) < 0) { s->errorhandler(); Py_DECREF(interfaceName); From 1b5c76a2832e3fc3eb4d850b5bc69692bf23c83a Mon Sep 17 00:00:00 2001 From: Christian Heimes Date: Mon, 10 Sep 2012 02:00:34 +0200 Subject: [PATCH 071/201] Fixed two memory leaks in make_filename() in zipimport.c. The allocated buffer wasn't cleaned up in two error cases. CID 486832 --- Modules/zipimport.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/Modules/zipimport.c b/Modules/zipimport.c index 12bfe233fc5..ccbc7846583 100644 --- a/Modules/zipimport.c +++ b/Modules/zipimport.c @@ -236,12 +236,16 @@ make_filename(PyObject *prefix, PyObject *name) return NULL; } - if (!PyUnicode_AsUCS4(prefix, p, len, 0)) + if (!PyUnicode_AsUCS4(prefix, p, len, 0)) { + PyMem_Free(buf); return NULL; + } p += PyUnicode_GET_LENGTH(prefix); len -= PyUnicode_GET_LENGTH(prefix); - if (!PyUnicode_AsUCS4(name, p, len, 1)) + if (!PyUnicode_AsUCS4(name, p, len, 1)) { + PyMem_Free(buf); return NULL; + } for (; *p; p++) { if (*p == '.') *p = SEP; From 949f3317312c64425efae21bda86b98423aac9cf Mon Sep 17 00:00:00 2001 From: Christian Heimes Date: Mon, 10 Sep 2012 02:45:31 +0200 Subject: [PATCH 072/201] Py_TYPE() has already dereferenced self before the NULL check. Moved Py_TYPE() after the check for self == NULL --- Objects/classobject.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Objects/classobject.c b/Objects/classobject.c index b7d35ef8852..f9568527b36 100644 --- a/Objects/classobject.c +++ b/Objects/classobject.c @@ -218,7 +218,7 @@ method_repr(PyMethodObject *a) { PyObject *self = a->im_self; PyObject *func = a->im_func; - PyObject *klass = (PyObject*)Py_TYPE(self); + PyObject *klass; PyObject *funcname = NULL ,*klassname = NULL, *result = NULL; char *defname = "?"; @@ -226,6 +226,7 @@ method_repr(PyMethodObject *a) PyErr_BadInternalCall(); return NULL; } + klass = (PyObject*)Py_TYPE(self); funcname = PyObject_GetAttrString(func, "__name__"); if (funcname == NULL) { From 110ac16b9f1be086ba98aa6f1ef8d7105493d92e Mon Sep 17 00:00:00 2001 From: Christian Heimes Date: Mon, 10 Sep 2012 02:51:27 +0200 Subject: [PATCH 073/201] Fixed resource leak to scratch when _PyUnicodeWriter_Prepare fails --- Objects/longobject.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Objects/longobject.c b/Objects/longobject.c index 80fe724d345..7e12b348848 100644 --- a/Objects/longobject.c +++ b/Objects/longobject.c @@ -1628,8 +1628,10 @@ long_to_decimal_string_internal(PyObject *aa, strlen++; } if (writer) { - if (_PyUnicodeWriter_Prepare(writer, strlen, '9') == -1) + if (_PyUnicodeWriter_Prepare(writer, strlen, '9') == -1) { + Py_DECREF(scratch); return -1; + } kind = writer->kind; str = NULL; } From d5a88044a3fe666c63db99a2b58561f726728664 Mon Sep 17 00:00:00 2001 From: Christian Heimes Date: Mon, 10 Sep 2012 02:54:51 +0200 Subject: [PATCH 074/201] PyTuple_Pack() was missing va_end() in its error branch which lead to a resource leak. --- Objects/tupleobject.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Objects/tupleobject.c b/Objects/tupleobject.c index e99eda06f18..b3454600c9b 100644 --- a/Objects/tupleobject.c +++ b/Objects/tupleobject.c @@ -194,8 +194,10 @@ PyTuple_Pack(Py_ssize_t n, ...) va_start(vargs, n); result = PyTuple_New(n); - if (result == NULL) + if (result == NULL) { + va_end(vargs); return NULL; + } items = ((PyTupleObject *)result)->ob_item; for (i = 0; i < n; i++) { o = va_arg(vargs, PyObject *); From a0e7e41cba6c75f493a64ce09037cecb60642190 Mon Sep 17 00:00:00 2001 From: Christian Heimes Date: Mon, 10 Sep 2012 03:00:14 +0200 Subject: [PATCH 075/201] Fixed possible reference leak to mod when type_name() returns NULL --- Objects/typeobject.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Objects/typeobject.c b/Objects/typeobject.c index 1bda375c3d2..e34b10ce40a 100644 --- a/Objects/typeobject.c +++ b/Objects/typeobject.c @@ -647,8 +647,10 @@ type_repr(PyTypeObject *type) mod = NULL; } name = type_name(type, NULL); - if (name == NULL) + if (name == NULL) { + Py_XDECREF(mod); return NULL; + } if (mod != NULL && PyUnicode_CompareWithASCIIString(mod, "builtins")) rtn = PyUnicode_FromFormat("", mod, name); From 837e53a7c268215bb521a5b0ce765367ca0704da Mon Sep 17 00:00:00 2001 From: Christian Heimes Date: Mon, 10 Sep 2012 03:08:46 +0200 Subject: [PATCH 076/201] Closed reference leak of variable 'k' in function ste_new which wasn't decrefed in error cases --- Python/symtable.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Python/symtable.c b/Python/symtable.c index 1ec51f708c3..00b342761f0 100644 --- a/Python/symtable.c +++ b/Python/symtable.c @@ -28,7 +28,7 @@ ste_new(struct symtable *st, identifier name, _Py_block_ty block, void *key, int lineno, int col_offset) { PySTEntryObject *ste = NULL; - PyObject *k; + PyObject *k = NULL; k = PyLong_FromVoidPtr(key); if (k == NULL) @@ -83,6 +83,7 @@ ste_new(struct symtable *st, identifier name, _Py_block_ty block, return ste; fail: + Py_XDECREF(k); Py_XDECREF(ste); return NULL; } From 89ff3c7f20ef2451041f80350f4718e3e4e735a1 Mon Sep 17 00:00:00 2001 From: Christian Heimes Date: Mon, 10 Sep 2012 03:50:48 +0200 Subject: [PATCH 077/201] Fixed out-of-bounce write to rawmode buffer. The fixed size buffer wasn't enlarged for the new 'x' flag. The buffer may contain the 5 flags xrwa+ and the \0 byte --- Modules/_io/_iomodule.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Modules/_io/_iomodule.c b/Modules/_io/_iomodule.c index 15781ac32ea..0622c581818 100644 --- a/Modules/_io/_iomodule.c +++ b/Modules/_io/_iomodule.c @@ -229,7 +229,7 @@ io_open(PyObject *self, PyObject *args, PyObject *kwds) int creating = 0, reading = 0, writing = 0, appending = 0, updating = 0; int text = 0, binary = 0, universal = 0; - char rawmode[5], *m; + char rawmode[6], *m; int line_buffering, isatty; PyObject *raw, *modeobj = NULL, *buffer = NULL, *wrapper = NULL; From f4f9939a96ed09cee5a73fd40a040e381dbdf6f1 Mon Sep 17 00:00:00 2001 From: Christian Heimes Date: Mon, 10 Sep 2012 11:48:41 +0200 Subject: [PATCH 078/201] Fixed memory leak in error branch of formatfloat(). CID 719687 --- Objects/unicodeobject.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Objects/unicodeobject.c b/Objects/unicodeobject.c index 279516809f9..2d74d1cca3b 100644 --- a/Objects/unicodeobject.c +++ b/Objects/unicodeobject.c @@ -13238,8 +13238,10 @@ formatfloat(PyObject *v, int flags, int prec, int type, return -1; len = strlen(p); if (writer) { - if (_PyUnicodeWriter_Prepare(writer, len, 127) == -1) + if (_PyUnicodeWriter_Prepare(writer, len, 127) == -1) { + PyMem_Free(p); return -1; + } unicode_write_cstr(writer->buffer, writer->pos, p, len); writer->pos += len; } From 48d8d2143867fa7027499146dd69f879e92a1d5d Mon Sep 17 00:00:00 2001 From: Christian Heimes Date: Mon, 10 Sep 2012 13:16:45 +0200 Subject: [PATCH 079/201] Added missing va_end in error branch of PyArg_UnpackTuple(). CID 486641 --- Python/getargs.c | 1 + 1 file changed, 1 insertion(+) diff --git a/Python/getargs.c b/Python/getargs.c index 0069671d3c7..a77bb05529d 100644 --- a/Python/getargs.c +++ b/Python/getargs.c @@ -1725,6 +1725,7 @@ PyArg_UnpackTuple(PyObject *args, const char *name, Py_ssize_t min, Py_ssize_t m assert(min >= 0); assert(min <= max); if (!PyTuple_Check(args)) { + va_end(vargs); PyErr_SetString(PyExc_SystemError, "PyArg_UnpackTuple() argument list is not a tuple"); return 0; From b517596721e3036ce914a8a065500b77ee83bd97 Mon Sep 17 00:00:00 2001 From: Richard Oudkerk Date: Mon, 10 Sep 2012 13:00:33 +0100 Subject: [PATCH 080/201] Issue #15901: Change example to use byte string instead of string --- Doc/library/multiprocessing.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Doc/library/multiprocessing.rst b/Doc/library/multiprocessing.rst index e93d121a5fc..18302a792c3 100644 --- a/Doc/library/multiprocessing.rst +++ b/Doc/library/multiprocessing.rst @@ -1093,7 +1093,7 @@ process:: n = Value('i', 7) x = Value(c_double, 1.0/3.0, lock=False) - s = Array('c', 'hello world', lock=lock) + s = Array('c', b'hello world', lock=lock) A = Array(Point, [(1.875,-6.25), (-5.75,2.0), (2.375,9.5)], lock=lock) p = Process(target=modify, args=(n, x, s, A)) From 01beb69c7dacc0a59acd568239322716da6e55d0 Mon Sep 17 00:00:00 2001 From: "doko@ubuntu.com" Date: Mon, 10 Sep 2012 14:19:42 +0200 Subject: [PATCH 081/201] backport from the trunk, to fix test_tools with srcdir != builddir changeset: 77827:c23b442b5d5e user: Antoine Pitrou date: Thu Jun 28 01:20:26 2012 +0200 summary: Avoid using scrdir, it's broken. changeset: 77826:f0e58e778215 user: Neil Schemenauer date: Wed Jun 27 15:58:37 2012 -0600 summary: Fix bug in test_tools that prevented building is separate directory. --- Lib/test/test_tools.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Lib/test/test_tools.py b/Lib/test/test_tools.py index cfe13acc2df..42816a2c4f6 100644 --- a/Lib/test/test_tools.py +++ b/Lib/test/test_tools.py @@ -18,8 +18,8 @@ # and run the tests in that case too? raise unittest.SkipTest('test irrelevant for an installed Python') -srcdir = sysconfig.get_config_var('projectbase') -basepath = os.path.join(os.getcwd(), srcdir, 'Tools') +basepath = os.path.join(os.path.dirname(os.path.dirname(os.path.dirname(__file__))), + 'Tools') scriptsdir = os.path.join(basepath, 'scripts') From 7b648753abdb255396c7d6621e21eaf12b5d7ffc Mon Sep 17 00:00:00 2001 From: Christian Heimes Date: Mon, 10 Sep 2012 14:48:43 +0200 Subject: [PATCH 082/201] Added test for 85cb90f79cbf and see how the code handles all flags at once --- Lib/test/test_io.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/Lib/test/test_io.py b/Lib/test/test_io.py index 57353506eae..d5eec7c2215 100644 --- a/Lib/test/test_io.py +++ b/Lib/test/test_io.py @@ -2887,6 +2887,11 @@ def test_create_writes(self): with self.open(support.TESTFN, 'rb') as f: self.assertEqual(b"spam", f.read()) + def test_open_allargs(self): + # there used to be a buffer overflow in the parser for rawmode + self.assertRaises(ValueError, self.open, support.TESTFN, 'rwax+') + + class CMiscIOTest(MiscIOTest): io = io From 5abd76a75d633a1ba6f5fcc66b0bc4799b9e2eaa Mon Sep 17 00:00:00 2001 From: R David Murray Date: Mon, 10 Sep 2012 10:15:58 -0400 Subject: [PATCH 083/201] #14649: clarify DocTestSuite error when there are no docstrings. Also adds tests to verify the documented behavior (which is probably a bug, as indicated in the added comments). Patch by Chris Jerdonek. --- Doc/library/doctest.rst | 10 ++++++++++ Lib/doctest.py | 7 ++++++- Lib/test/sample_doctest_no_docstrings.py | 12 ++++++++++++ Lib/test/sample_doctest_no_doctests.py | 15 ++++++++++++++ Lib/test/test_doctest.py | 25 ++++++++++++++++++++++++ Lib/test/test_zipimport_support.py | 21 +++++++++++++++----- 6 files changed, 84 insertions(+), 6 deletions(-) create mode 100644 Lib/test/sample_doctest_no_docstrings.py create mode 100644 Lib/test/sample_doctest_no_doctests.py diff --git a/Doc/library/doctest.rst b/Doc/library/doctest.rst index cdd6c262451..cad03bd2a1b 100644 --- a/Doc/library/doctest.rst +++ b/Doc/library/doctest.rst @@ -1024,6 +1024,16 @@ from text files and modules with doctests: This function uses the same search technique as :func:`testmod`. + .. note:: + Unlike :func:`testmod` and :class:`DocTestFinder`, this function raises + a :exc:`ValueError` if *module* contains no docstrings. You can prevent + this error by passing a :class:`DocTestFinder` instance as the + *test_finder* argument with its *exclude_empty* keyword argument set + to ``False``:: + + >>> finder = doctest.DocTestFinder(exclude_empty=False) + >>> suite = doctest.DocTestSuite(test_finder=finder) + Under the covers, :func:`DocTestSuite` creates a :class:`unittest.TestSuite` out of :class:`doctest.DocTestCase` instances, and :class:`DocTestCase` is a diff --git a/Lib/doctest.py b/Lib/doctest.py index cc3b425075d..e189c8feba3 100644 --- a/Lib/doctest.py +++ b/Lib/doctest.py @@ -2333,7 +2333,12 @@ def DocTestSuite(module=None, globs=None, extraglobs=None, test_finder=None, elif not tests: # Why do we want to do this? Because it reveals a bug that might # otherwise be hidden. - raise ValueError(module, "has no tests") + # It is probably a bug that this exception is not also raised if the + # number of doctest examples in tests is zero (i.e. if no doctest + # examples were found). However, we should probably not be raising + # an exception at all here, though it is too late to make this change + # for a maintenance release. See also issue #14649. + raise ValueError(module, "has no docstrings") tests.sort() suite = unittest.TestSuite() diff --git a/Lib/test/sample_doctest_no_docstrings.py b/Lib/test/sample_doctest_no_docstrings.py new file mode 100644 index 00000000000..e4201edbce9 --- /dev/null +++ b/Lib/test/sample_doctest_no_docstrings.py @@ -0,0 +1,12 @@ +# This is a sample module used for testing doctest. +# +# This module is for testing how doctest handles a module with no +# docstrings. + + +class Foo(object): + + # A class with no docstring. + + def __init__(self): + pass diff --git a/Lib/test/sample_doctest_no_doctests.py b/Lib/test/sample_doctest_no_doctests.py new file mode 100644 index 00000000000..7daa57231c8 --- /dev/null +++ b/Lib/test/sample_doctest_no_doctests.py @@ -0,0 +1,15 @@ +"""This is a sample module used for testing doctest. + +This module is for testing how doctest handles a module with docstrings +but no doctest examples. + +""" + + +class Foo(object): + """A docstring with no doctest examples. + + """ + + def __init__(self): + pass diff --git a/Lib/test/test_doctest.py b/Lib/test/test_doctest.py index 5969ce2fbe3..a6c17cc4320 100644 --- a/Lib/test/test_doctest.py +++ b/Lib/test/test_doctest.py @@ -1984,6 +1984,31 @@ def test_DocTestSuite(): >>> suite.run(unittest.TestResult()) + The module need not contain any doctest examples: + + >>> suite = doctest.DocTestSuite('test.sample_doctest_no_doctests') + >>> suite.run(unittest.TestResult()) + + + However, if DocTestSuite finds no docstrings, it raises an error: + + >>> try: + ... doctest.DocTestSuite('test.sample_doctest_no_docstrings') + ... except ValueError as e: + ... error = e + + >>> print(error.args[1]) + has no docstrings + + You can prevent this error by passing a DocTestFinder instance with + the `exclude_empty` keyword argument set to False: + + >>> finder = doctest.DocTestFinder(exclude_empty=False) + >>> suite = doctest.DocTestSuite('test.sample_doctest_no_docstrings', + ... test_finder=finder) + >>> suite.run(unittest.TestResult()) + + We can use the current module: >>> suite = test.sample_doctest.test_suite() diff --git a/Lib/test/test_zipimport_support.py b/Lib/test/test_zipimport_support.py index a558d7dd237..060108f2d09 100644 --- a/Lib/test/test_zipimport_support.py +++ b/Lib/test/test_zipimport_support.py @@ -29,7 +29,8 @@ # test_cmd_line_script (covers the zipimport support in runpy) # Retrieve some helpers from other test cases -from test import test_doctest, sample_doctest +from test import (test_doctest, sample_doctest, sample_doctest_no_doctests, + sample_doctest_no_docstrings) def _run_object_doctest(obj, module): @@ -105,16 +106,26 @@ def test_doctest_issue4197(self): "test_zipped_doctest") test_src = test_src.replace("test.sample_doctest", "sample_zipped_doctest") - sample_src = inspect.getsource(sample_doctest) - sample_src = sample_src.replace("test.test_doctest", - "test_zipped_doctest") + # The sample doctest files rewritten to include in the zipped version. + sample_sources = {} + for mod in [sample_doctest, sample_doctest_no_doctests, + sample_doctest_no_docstrings]: + src = inspect.getsource(mod) + src = src.replace("test.test_doctest", "test_zipped_doctest") + # Rewrite the module name so that, for example, + # "test.sample_doctest" becomes "sample_zipped_doctest". + mod_name = mod.__name__.split(".")[-1] + mod_name = mod_name.replace("sample_", "sample_zipped_") + sample_sources[mod_name] = src + with temp_dir() as d: script_name = make_script(d, 'test_zipped_doctest', test_src) zip_name, run_name = make_zip_script(d, 'test_zip', script_name) z = zipfile.ZipFile(zip_name, 'a') - z.writestr("sample_zipped_doctest.py", sample_src) + for mod_name, src in sample_sources.items(): + z.writestr(mod_name + ".py", src) z.close() if verbose: zip_file = zipfile.ZipFile(zip_name, 'r') From 3d463393bb068a8ef8e99e00f8cb46d8a2c8631b Mon Sep 17 00:00:00 2001 From: Christian Heimes Date: Mon, 10 Sep 2012 16:52:42 +0200 Subject: [PATCH 084/201] Fixed memory leak in error branch of parsestrplus. CID 715374 Variable s going out of scope leaks the storage it points to. --- Python/ast.c | 1 + 1 file changed, 1 insertion(+) diff --git a/Python/ast.c b/Python/ast.c index 4ae9d75d034..d2f063bb5ba 100644 --- a/Python/ast.c +++ b/Python/ast.c @@ -3395,6 +3395,7 @@ parsestrplus(struct compiling *c, const node *n, int *bytesmode) goto onError; if (*bytesmode != subbm) { ast_error(n, "cannot mix bytes and nonbytes literals"); + Py_DECREF(s); goto onError; } if (PyBytes_Check(v) && PyBytes_Check(s)) { From e81dc296f287ca20ebfebda8de2fbcca5580d666 Mon Sep 17 00:00:00 2001 From: Christian Heimes Date: Mon, 10 Sep 2012 16:57:36 +0200 Subject: [PATCH 085/201] Fixed memory leak in error branch of object_repr which may leak a reference to mod when type_name returns NULL. CID 715371 --- Objects/typeobject.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Objects/typeobject.c b/Objects/typeobject.c index e34b10ce40a..0fc0ad38e82 100644 --- a/Objects/typeobject.c +++ b/Objects/typeobject.c @@ -2925,8 +2925,10 @@ object_repr(PyObject *self) mod = NULL; } name = type_name(type, NULL); - if (name == NULL) + if (name == NULL) { + Py_XDECREF(mod); return NULL; + } if (mod != NULL && PyUnicode_CompareWithASCIIString(mod, "builtins")) rtn = PyUnicode_FromFormat("<%U.%U object at %p>", mod, name, self); else From f47d79fec1b6cbb0d38b9a828cf94202c21e50f8 Mon Sep 17 00:00:00 2001 From: Christian Heimes Date: Mon, 10 Sep 2012 17:46:09 +0200 Subject: [PATCH 086/201] Fixed reference leak in error branch of _bufferedreader_read_all(). The variable data can contain a bytes object but it wasn't cleaned up when PyList_New() failed. CID 715364 --- Modules/_io/bufferedio.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Modules/_io/bufferedio.c b/Modules/_io/bufferedio.c index 67b7cc4501a..334734beccb 100644 --- a/Modules/_io/bufferedio.c +++ b/Modules/_io/bufferedio.c @@ -1499,8 +1499,10 @@ _bufferedreader_read_all(buffered *self) } chunks = PyList_New(0); - if (chunks == NULL) + if (chunks == NULL) { + Py_XDECREF(data); return NULL; + } while (1) { if (data) { From 76e12179c5381dd1f4f27c6d679a16a629ebeef7 Mon Sep 17 00:00:00 2001 From: Stefan Krah Date: Mon, 10 Sep 2012 19:34:58 +0200 Subject: [PATCH 087/201] Issue #15882: Change _decimal to accept any coefficient tuple when constructing infinities. This is done for backwards compatibility with decimal.py: Infinity coefficients are undefined in _decimal (in accordance with the specification). --- Lib/test/test_decimal.py | 17 ++++++++++------- Misc/NEWS | 4 ++++ Modules/_decimal/_decimal.c | 7 +++++++ 3 files changed, 21 insertions(+), 7 deletions(-) diff --git a/Lib/test/test_decimal.py b/Lib/test/test_decimal.py index d00ed5aa40c..3ca5927f79e 100644 --- a/Lib/test/test_decimal.py +++ b/Lib/test/test_decimal.py @@ -1992,7 +1992,8 @@ def test_as_tuple(self): d = Decimal("-4.34913534E-17") self.assertEqual(d.as_tuple(), (1, (4, 3, 4, 9, 1, 3, 5, 3, 4), -25) ) - # XXX non-compliant infinity payload. + # The '0' coefficient is implementation specific to decimal.py. + # It has no meaning in the C-version and is ignored there. d = Decimal("Infinity") self.assertEqual(d.as_tuple(), (0, (0,), 'F') ) @@ -2012,12 +2013,14 @@ def test_as_tuple(self): d = Decimal( (1, (), 'n') ) self.assertEqual(d.as_tuple(), (1, (), 'n') ) - # XXX coefficient in infinity should raise an error - if self.decimal == P: - d = Decimal( (0, (4, 5, 3, 4), 'F') ) - self.assertEqual(d.as_tuple(), (0, (0,), 'F')) - d = Decimal( (1, (0, 2, 7, 1), 'F') ) - self.assertEqual(d.as_tuple(), (1, (0,), 'F')) + # For infinities, decimal.py has always silently accepted any + # coefficient tuple. + d = Decimal( (0, (0,), 'F') ) + self.assertEqual(d.as_tuple(), (0, (0,), 'F')) + d = Decimal( (0, (4, 5, 3, 4), 'F') ) + self.assertEqual(d.as_tuple(), (0, (0,), 'F')) + d = Decimal( (1, (0, 2, 7, 1), 'F') ) + self.assertEqual(d.as_tuple(), (1, (0,), 'F')) def test_subclassing(self): # Different behaviours when subclassing Decimal diff --git a/Misc/NEWS b/Misc/NEWS index 3bc05348b6e..de603c49100 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -21,6 +21,10 @@ Core and Builtins Library ------- +- Issue #15882: Change _decimal to accept any coefficient tuple when + constructing infinities. This is done for backwards compatibility + with decimal.py: Infinity coefficients are undefined in _decimal + (in accordance with the specification). - Issue #15876: Fix a refleak in the curses module: window.encoding. diff --git a/Modules/_decimal/_decimal.c b/Modules/_decimal/_decimal.c index 15c64e215d7..996f9da17be 100644 --- a/Modules/_decimal/_decimal.c +++ b/Modules/_decimal/_decimal.c @@ -2364,6 +2364,7 @@ dectuple_as_str(PyObject *dectuple) long sign, l; mpd_ssize_t exp = 0; Py_ssize_t i, mem, tsize; + int is_infinite = 0; int n; assert(PyTuple_Check(dectuple)); @@ -2399,6 +2400,7 @@ dectuple_as_str(PyObject *dectuple) /* special */ if (PyUnicode_CompareWithASCIIString(tmp, "F") == 0) { strcat(sign_special, "Inf"); + is_infinite = 1; } else if (PyUnicode_CompareWithASCIIString(tmp, "n") == 0) { strcat(sign_special, "NaN"); @@ -2470,6 +2472,11 @@ dectuple_as_str(PyObject *dectuple) "coefficient must be a tuple of digits"); goto error; } + if (is_infinite) { + /* accept but ignore any well-formed coefficient for compatibility + with decimal.py */ + continue; + } *cp++ = (char)l + '0'; } *cp = '\0'; From 3159cb51a77da430272bfaf42c768493c72b456a Mon Sep 17 00:00:00 2001 From: Jesus Cea Date: Mon, 10 Sep 2012 20:19:25 +0200 Subject: [PATCH 088/201] #15676: Proper attribution in Misc/ACKS --- Misc/ACKS | 1 + 1 file changed, 1 insertion(+) diff --git a/Misc/ACKS b/Misc/ACKS index 5df7962c489..b7f3b5b7d64 100644 --- a/Misc/ACKS +++ b/Misc/ACKS @@ -1029,6 +1029,7 @@ Jason Williams John Williams Sue Williams Gerald S. Williams +Steven Willis Frank Willison Greg V. Wilson J Derek Wilson From 1f2799bef45673419e96ad4ef6a923c59d1c6a85 Mon Sep 17 00:00:00 2001 From: Jesus Cea Date: Mon, 10 Sep 2012 22:49:50 +0200 Subject: [PATCH 089/201] #15676: mmap: add empty file check prior to offset check <- Previous patch was incomplete --- Lib/test/test_mmap.py | 10 +++++----- Modules/mmapmodule.c | 5 +++++ 2 files changed, 10 insertions(+), 5 deletions(-) diff --git a/Lib/test/test_mmap.py b/Lib/test/test_mmap.py index c060e61dda8..28b52a98e6e 100644 --- a/Lib/test/test_mmap.py +++ b/Lib/test/test_mmap.py @@ -462,11 +462,11 @@ def make_mmap_file (self, f, halfsize): def test_empty_file (self): f = open (TESTFN, 'w+b') f.close() - f = open(TESTFN, "rb") - self.assertRaisesRegex(ValueError, - "cannot mmap an empty file", - mmap.mmap, f.fileno(), 0, access=mmap.ACCESS_READ) - f.close() + with open(TESTFN, "rb") as f : + self.assertRaisesRegex(ValueError, + "cannot mmap an empty file", + mmap.mmap, f.fileno(), 0, + access=mmap.ACCESS_READ) def test_offset (self): f = open (TESTFN, 'w+b') diff --git a/Modules/mmapmodule.c b/Modules/mmapmodule.c index e23613eb125..b993fdf92de 100644 --- a/Modules/mmapmodule.c +++ b/Modules/mmapmodule.c @@ -1342,6 +1342,11 @@ new_mmap_object(PyTypeObject *type, PyObject *args, PyObject *kwdict) } size = (((PY_LONG_LONG) high) << 32) + low; + if (size == 0) { + PyErr_SetString(PyExc_ValueError, + "cannot mmap an empty file"); + return NULL; + } if (offset >= size) { PyErr_SetString(PyExc_ValueError, "mmap offset is greater than file size"); From e8db356cf1084105a97db9457a2374209868005b Mon Sep 17 00:00:00 2001 From: Jesus Cea Date: Mon, 10 Sep 2012 22:58:07 +0200 Subject: [PATCH 090/201] #15676: mmap: add empty file check prior to offset check <- Previous patch was incomplete (fix 2) --- Modules/mmapmodule.c | 1 + 1 file changed, 1 insertion(+) diff --git a/Modules/mmapmodule.c b/Modules/mmapmodule.c index b993fdf92de..33c143eba8c 100644 --- a/Modules/mmapmodule.c +++ b/Modules/mmapmodule.c @@ -1345,6 +1345,7 @@ new_mmap_object(PyTypeObject *type, PyObject *args, PyObject *kwdict) if (size == 0) { PyErr_SetString(PyExc_ValueError, "cannot mmap an empty file"); + Py_DECREF(m_obj); return NULL; } if (offset >= size) { From c8754a13e607ebc70f12a10297c76dc574a91d5b Mon Sep 17 00:00:00 2001 From: Jesus Cea Date: Tue, 11 Sep 2012 02:00:58 +0200 Subject: [PATCH 091/201] Closes #15793: Stack corruption in ssl.RAND_egd() --- Lib/test/test_ssl.py | 8 ++------ Misc/NEWS | 3 +++ Modules/_ssl.c | 2 +- 3 files changed, 6 insertions(+), 7 deletions(-) diff --git a/Lib/test/test_ssl.py b/Lib/test/test_ssl.py index 551151e873c..d4c5e6351a3 100644 --- a/Lib/test/test_ssl.py +++ b/Lib/test/test_ssl.py @@ -103,12 +103,8 @@ def test_random(self): sys.stdout.write("\n RAND_status is %d (%s)\n" % (v, (v and "sufficient randomness") or "insufficient randomness")) - try: - ssl.RAND_egd(1) - except TypeError: - pass - else: - print("didn't raise TypeError") + self.assertRaises(TypeError, ssl.RAND_egd, 1) + self.assertRaises(TypeError, ssl.RAND_egd, 'foo', 1) ssl.RAND_add("this is a random string", 75.0) def test_parse_cert(self): diff --git a/Misc/NEWS b/Misc/NEWS index 725fb9e5c13..3b09e9633af 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -154,6 +154,9 @@ Library - Issue #13579: string.Formatter now understands the 'a' conversion specifier. +- Issue #15793: Stack corruption in ssl.RAND_egd(). + Patch by Serhiy Storchaka. + - Issue #15595: Fix subprocess.Popen(universal_newlines=True) for certain locales (utf-16 and utf-32 family). Patch by Chris Jerdonek. diff --git a/Modules/_ssl.c b/Modules/_ssl.c index 0a841183a5f..e9de8cad273 100644 --- a/Modules/_ssl.c +++ b/Modules/_ssl.c @@ -1917,7 +1917,7 @@ PySSL_RAND_egd(PyObject *self, PyObject *args) PyObject *path; int bytes; - if (!PyArg_ParseTuple(args, "O&|i:RAND_egd", + if (!PyArg_ParseTuple(args, "O&:RAND_egd", PyUnicode_FSConverter, &path)) return NULL; From ce478b9891fd303e87ecee557028c65126ce4b8f Mon Sep 17 00:00:00 2001 From: R David Murray Date: Mon, 10 Sep 2012 21:08:50 -0400 Subject: [PATCH 092/201] #15886: remove redundant phrase --- Doc/library/os.rst | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/Doc/library/os.rst b/Doc/library/os.rst index aec8073436e..5f149cb9810 100644 --- a/Doc/library/os.rst +++ b/Doc/library/os.rst @@ -1855,9 +1855,8 @@ features: :attr:`st_mtime`, :attr:`st_ctime`. More items may be added at the end by some implementations. - This function can support :ref:`specifying a file descriptor - `, :ref:`specifying a file descriptor ` and :ref:`not - following symlinks `. + This function can support :ref:`specifying a file descriptor ` and + :ref:`not following symlinks `. .. index:: module: stat From 2fd8bdbc9d904a7cb9f7cd676322eee03d92ee0c Mon Sep 17 00:00:00 2001 From: Senthil Kumaran Date: Tue, 11 Sep 2012 03:17:52 -0700 Subject: [PATCH 093/201] Fix issue #15899: Make the unicode.rst doctests pass. Patch by Chris Jerdonek. --- Doc/howto/unicode.rst | 27 +++++++++++++-------------- 1 file changed, 13 insertions(+), 14 deletions(-) diff --git a/Doc/howto/unicode.rst b/Doc/howto/unicode.rst index 045fd339fd1..bcd29be6988 100644 --- a/Doc/howto/unicode.rst +++ b/Doc/howto/unicode.rst @@ -257,13 +257,13 @@ converted according to the encoding's rules. Legal values for this argument are 'REPLACEMENT CHARACTER'), or 'ignore' (just leave the character out of the Unicode result). The following examples show the differences:: - >>> b'\x80abc'.decode("utf-8", "strict") + >>> b'\x80abc'.decode("utf-8", "strict") #doctest: +NORMALIZE_WHITESPACE Traceback (most recent call last): - File "", line 1, in ? - UnicodeDecodeError: 'utf8' codec can't decode byte 0x80 in position 0: - unexpected code byte + ... + UnicodeDecodeError: 'utf-8' codec can't decode byte 0x80 in position 0: + invalid start byte >>> b'\x80abc'.decode("utf-8", "replace") - '?abc' + '�abc' >>> b'\x80abc'.decode("utf-8", "ignore") 'abc' @@ -301,11 +301,11 @@ XML's character references. The following example shows the different results:: >>> u = chr(40960) + 'abcd' + chr(1972) >>> u.encode('utf-8') b'\xea\x80\x80abcd\xde\xb4' - >>> u.encode('ascii') + >>> u.encode('ascii') #doctest: +NORMALIZE_WHITESPACE Traceback (most recent call last): - File "", line 1, in ? + ... UnicodeEncodeError: 'ascii' codec can't encode character '\ua000' in - position 0: ordinal not in range(128) + position 0: ordinal not in range(128) >>> u.encode('ascii', 'ignore') b'abcd' >>> u.encode('ascii', 'replace') @@ -331,12 +331,11 @@ point. The ``\U`` escape sequence is similar, but expects eight hex digits, not four:: >>> s = "a\xac\u1234\u20ac\U00008000" - ^^^^ two-digit hex escape - ^^^^^ four-digit Unicode escape - ^^^^^^^^^^ eight-digit Unicode escape - >>> for c in s: print(ord(c), end=" ") - ... - 97 172 4660 8364 32768 + ... # ^^^^ two-digit hex escape + ... # ^^^^^^ four-digit Unicode escape + ... # ^^^^^^^^^^ eight-digit Unicode escape + >>> [ord(c) for c in s] + [97, 172, 4660, 8364, 32768] Using escape sequences for code points greater than 127 is fine in small doses, but becomes an annoyance if you're using many accented characters, as you would From 5f520f4fed072561c5782e505284c63093b5b20d Mon Sep 17 00:00:00 2001 From: Christian Heimes Date: Tue, 11 Sep 2012 14:03:25 +0200 Subject: [PATCH 094/201] Issue #15900: Fixed reference leak in PyUnicode_TranslateCharmap() --- Misc/NEWS | 2 ++ Objects/unicodeobject.c | 11 +++++------ 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/Misc/NEWS b/Misc/NEWS index d1aeaec9b55..85160873f43 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -10,6 +10,8 @@ What's New in Python 3.3.1 Core and Builtins ----------------- +- Issue #15900: Fixed reference leak in PyUnicode_TranslateCharmap(). + - Issue #15839: Convert SystemErrors in super() to RuntimeErrors. - Issue #15846: Fix SystemError which happened when using ast.parse in an diff --git a/Objects/unicodeobject.c b/Objects/unicodeobject.c index 2d74d1cca3b..61f743ebda6 100644 --- a/Objects/unicodeobject.c +++ b/Objects/unicodeobject.c @@ -8585,10 +8585,13 @@ PyUnicode_TranslateCharmap(const Py_UNICODE *p, PyObject *mapping, const char *errors) { + PyObject *result; PyObject *unicode = PyUnicode_FromUnicode(p, size); if (!unicode) return NULL; - return _PyUnicode_TranslateCharmap(unicode, mapping, errors); + result = _PyUnicode_TranslateCharmap(unicode, mapping, errors); + Py_DECREF(unicode); + return result; } PyObject * @@ -8600,14 +8603,10 @@ PyUnicode_Translate(PyObject *str, str = PyUnicode_FromObject(str); if (str == NULL) - goto onError; + return NULL; result = _PyUnicode_TranslateCharmap(str, mapping, errors); Py_DECREF(str); return result; - - onError: - Py_XDECREF(str); - return NULL; } static Py_UCS4 From 26b9f4b2f324cd5767d8fe9a2ab85566f34be809 Mon Sep 17 00:00:00 2001 From: Christian Heimes Date: Tue, 11 Sep 2012 14:08:49 +0200 Subject: [PATCH 095/201] Spelling past tense -> present tense --- Misc/NEWS | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Misc/NEWS b/Misc/NEWS index 85160873f43..53d20f4a74e 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -10,7 +10,7 @@ What's New in Python 3.3.1 Core and Builtins ----------------- -- Issue #15900: Fixed reference leak in PyUnicode_TranslateCharmap(). +- Issue #15900: Fix reference leak in PyUnicode_TranslateCharmap(). - Issue #15839: Convert SystemErrors in super() to RuntimeErrors. From 6a77af690fc5022ecd218771960d15af2dc74977 Mon Sep 17 00:00:00 2001 From: Christian Heimes Date: Tue, 11 Sep 2012 14:11:03 +0200 Subject: [PATCH 096/201] Issue #15895: Fix FILE pointer leak in PyRun_SimpleFileExFlags() when filename points to a pyc/pyo file and closeit is false. --- Misc/NEWS | 3 +++ Python/pythonrun.c | 6 +++++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/Misc/NEWS b/Misc/NEWS index 53d20f4a74e..068c4b1307e 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -10,6 +10,9 @@ What's New in Python 3.3.1 Core and Builtins ----------------- +- Issue #15895: Fix FILE pointer leak in PyRun_SimpleFileExFlags() when + filename points to a pyc/pyo file and closeit is false. + - Issue #15900: Fix reference leak in PyUnicode_TranslateCharmap(). - Issue #15839: Convert SystemErrors in super() to RuntimeErrors. diff --git a/Python/pythonrun.c b/Python/pythonrun.c index 05dfb8e1d0a..7e9f6545e26 100644 --- a/Python/pythonrun.c +++ b/Python/pythonrun.c @@ -1385,7 +1385,7 @@ PyRun_SimpleFileExFlags(FILE *fp, const char *filename, int closeit, { PyObject *m, *d, *v; const char *ext; - int set_file_name = 0, ret; + int set_file_name = 0, close_own_fp = 0, ret; size_t len; m = PyImport_AddModule("__main__"); @@ -1419,6 +1419,7 @@ PyRun_SimpleFileExFlags(FILE *fp, const char *filename, int closeit, ret = -1; goto done; } + close_own_fp = 1; /* Turn on optimization if a .pyo file is given */ if (strcmp(ext, ".pyo") == 0) Py_OptimizeFlag = 1; @@ -1449,6 +1450,9 @@ PyRun_SimpleFileExFlags(FILE *fp, const char *filename, int closeit, Py_DECREF(v); ret = 0; done: + if (close_own_fp) { + fclose(fp); + } if (set_file_name && PyDict_DelItemString(d, "__file__")) PyErr_Clear(); return ret; From 6d29352cfd76d569198dd2fd2eb02b2b0c5a8c44 Mon Sep 17 00:00:00 2001 From: Christian Heimes Date: Tue, 11 Sep 2012 15:47:28 +0200 Subject: [PATCH 097/201] Issue #15895: my analysis was slightly off. The FILE pointer is only leaked when set_main_loader() fails for a pyc file with closeit=0. In the success case run_pyc_file() does its own cleanup of the fp. I've changed the code to use another FILE ptr for pyc files and moved the fclose() to PyRun_SimpleFileExFlags() to make it more obvious what's happening. --- Misc/NEWS | 3 ++- Python/pythonrun.c | 14 ++++++-------- 2 files changed, 8 insertions(+), 9 deletions(-) diff --git a/Misc/NEWS b/Misc/NEWS index 068c4b1307e..0fe95da7165 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -10,7 +10,8 @@ What's New in Python 3.3.1 Core and Builtins ----------------- -- Issue #15895: Fix FILE pointer leak in PyRun_SimpleFileExFlags() when +- Issue #15895: Fix FILE pointer leak in one error branch of + PyRun_SimpleFileExFlags() when filename points to a pyc/pyo file and closeit is false. - Issue #15900: Fix reference leak in PyUnicode_TranslateCharmap(). diff --git a/Python/pythonrun.c b/Python/pythonrun.c index 7e9f6545e26..b1ca125781c 100644 --- a/Python/pythonrun.c +++ b/Python/pythonrun.c @@ -1385,7 +1385,7 @@ PyRun_SimpleFileExFlags(FILE *fp, const char *filename, int closeit, { PyObject *m, *d, *v; const char *ext; - int set_file_name = 0, close_own_fp = 0, ret; + int set_file_name = 0, ret; size_t len; m = PyImport_AddModule("__main__"); @@ -1411,15 +1411,15 @@ PyRun_SimpleFileExFlags(FILE *fp, const char *filename, int closeit, len = strlen(filename); ext = filename + len - (len > 4 ? 4 : 0); if (maybe_pyc_file(fp, filename, ext, closeit)) { + FILE *pyc_fp; /* Try to run a pyc file. First, re-open in binary */ if (closeit) fclose(fp); - if ((fp = fopen(filename, "rb")) == NULL) { + if ((pyc_fp = fopen(filename, "rb")) == NULL) { fprintf(stderr, "python: Can't reopen .pyc file\n"); ret = -1; goto done; } - close_own_fp = 1; /* Turn on optimization if a .pyo file is given */ if (strcmp(ext, ".pyo") == 0) Py_OptimizeFlag = 1; @@ -1427,9 +1427,11 @@ PyRun_SimpleFileExFlags(FILE *fp, const char *filename, int closeit, if (set_main_loader(d, filename, "SourcelessFileLoader") < 0) { fprintf(stderr, "python: failed to set __main__.__loader__\n"); ret = -1; + fclose(pyc_fp); goto done; } - v = run_pyc_file(fp, filename, d, d, flags); + v = run_pyc_file(pyc_fp, filename, d, d, flags); + fclose(pyc_fp); } else { /* When running from stdin, leave __main__.__loader__ alone */ if (strcmp(filename, "") != 0 && @@ -1450,9 +1452,6 @@ PyRun_SimpleFileExFlags(FILE *fp, const char *filename, int closeit, Py_DECREF(v); ret = 0; done: - if (close_own_fp) { - fclose(fp); - } if (set_file_name && PyDict_DelItemString(d, "__file__")) PyErr_Clear(); return ret; @@ -1999,7 +1998,6 @@ run_pyc_file(FILE *fp, const char *filename, PyObject *globals, (void) PyMarshal_ReadLongFromFile(fp); (void) PyMarshal_ReadLongFromFile(fp); v = PyMarshal_ReadLastObjectFromFile(fp); - fclose(fp); if (v == NULL || !PyCode_Check(v)) { Py_XDECREF(v); PyErr_SetString(PyExc_RuntimeError, From 5557a9c73fc52276c3fb382491b3f9fe5999a042 Mon Sep 17 00:00:00 2001 From: Christian Heimes Date: Tue, 11 Sep 2012 17:30:53 +0200 Subject: [PATCH 098/201] Fix null pointer dereferencing in structmember.c PyMember_SetOne() for T_CHAR. _PyUnicode_AsStringAndSize() can return NULL without touching the len argument. Also remove unnecessary PyUnicode_Check(), _PyUnicode_AsStringAndSize() performance the test again. CID 486815 --- Python/structmember.c | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/Python/structmember.c b/Python/structmember.c index ddedea5419c..af0296d802f 100644 --- a/Python/structmember.c +++ b/Python/structmember.c @@ -254,12 +254,8 @@ PyMember_SetOne(char *addr, PyMemberDef *l, PyObject *v) char *string; Py_ssize_t len; - if (!PyUnicode_Check(v)) { - PyErr_BadArgument(); - return -1; - } string = _PyUnicode_AsStringAndSize(v, &len); - if (len != 1) { + if (string == NULL || len != 1) { PyErr_BadArgument(); return -1; } From 6f3e5e48d37388f820642f3f71dcc8da4c79ad19 Mon Sep 17 00:00:00 2001 From: Benjamin Peterson Date: Tue, 11 Sep 2012 12:05:05 -0400 Subject: [PATCH 099/201] remove useless and defined initialization (closes #15921) --- Modules/selectmodule.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Modules/selectmodule.c b/Modules/selectmodule.c index 5b5eb92cc68..7cec49bc410 100644 --- a/Modules/selectmodule.c +++ b/Modules/selectmodule.c @@ -239,7 +239,7 @@ select_select(PyObject *self, PyObject *args) #else /* 64-bit OS X has struct timeval.tv_usec as an int (and thus still 4 bytes as required), but no longer defined by a long. */ - long tv_usec = tv.tv_usec; + long tv_usec; if (_PyTime_ObjectToTimeval(tout, &tv.tv_sec, &tv_usec) == -1) return NULL; tv.tv_usec = tv_usec; From d8bbde35fee845b96c55543088b0f8ddcc1aec12 Mon Sep 17 00:00:00 2001 From: R David Murray Date: Tue, 11 Sep 2012 13:01:43 -0400 Subject: [PATCH 100/201] #14617: clarify discussion of interrelationship of __eq__ and __hash__. --- Doc/reference/datamodel.rst | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/Doc/reference/datamodel.rst b/Doc/reference/datamodel.rst index 7dcd4596ac5..2ddb852468e 100644 --- a/Doc/reference/datamodel.rst +++ b/Doc/reference/datamodel.rst @@ -1255,22 +1255,22 @@ Basic customization by default; with them, all objects compare unequal (except with themselves) and ``x.__hash__()`` returns ``id(x)``. - Classes which inherit a :meth:`__hash__` method from a parent class but - change the meaning of :meth:`__eq__` such that the hash value returned is no - longer appropriate (e.g. by switching to a value-based concept of equality - instead of the default identity based equality) can explicitly flag - themselves as being unhashable by setting ``__hash__ = None`` in the class - definition. Doing so means that not only will instances of the class raise an - appropriate :exc:`TypeError` when a program attempts to retrieve their hash - value, but they will also be correctly identified as unhashable when checking - ``isinstance(obj, collections.Hashable)`` (unlike classes which define their - own :meth:`__hash__` to explicitly raise :exc:`TypeError`). + A class that overrides :meth:`__eq__` and does not define :meth:`__hash__` + will have its :meth:`__hash__` implicitly set to ``None``. When the + :meth:`__hash__` method of a class is ``None``, instances of the class will + raise an appropriate :exc:`TypeError` when a program attempts to retrieve + their hash value, and will also be correctly identified as unhashable when + checking ``isinstance(obj, collections.Hashable``). If a class that overrides :meth:`__eq__` needs to retain the implementation of :meth:`__hash__` from a parent class, the interpreter must be told this - explicitly by setting ``__hash__ = .__hash__``. Otherwise the - inheritance of :meth:`__hash__` will be blocked, just as if :attr:`__hash__` - had been explicitly set to :const:`None`. + explicitly by setting ``__hash__ = .__hash__``. + + If a class that does not override :meth:`__eq__` wishes to suppress hash + support, it should include ``__hash__ = None`` in the class definition. + A class which defines its own :meth:`__hash__` that explicitly raises + a :exc:`TypeError` would be incorrectly identified as hashable by + an ``isinstance(obj, collections.Hashable)`` call. See also the :option:`-R` command-line option. From 8f49456b4e3afda90b5ee0469d6f7d55f5c79c82 Mon Sep 17 00:00:00 2001 From: Christian Heimes Date: Tue, 11 Sep 2012 19:28:42 +0200 Subject: [PATCH 101/201] Updates NEWS for issue #15895 --- Misc/NEWS | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Misc/NEWS b/Misc/NEWS index 0fe95da7165..fabb36e3723 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -11,8 +11,8 @@ Core and Builtins ----------------- - Issue #15895: Fix FILE pointer leak in one error branch of - PyRun_SimpleFileExFlags() when - filename points to a pyc/pyo file and closeit is false. + PyRun_SimpleFileExFlags() when filename points to a pyc/pyo file, closeit + is false an and set_main_loader() fails. - Issue #15900: Fix reference leak in PyUnicode_TranslateCharmap(). From 4b2f9e914d497d6b2b5ec09a03da8b6f171dffed Mon Sep 17 00:00:00 2001 From: Barry Warsaw Date: Tue, 11 Sep 2012 22:38:47 -0400 Subject: [PATCH 102/201] - Issue #15906: Fix a regression in argparse caused by the preceding change, when action='append', type='str' and default=[]. --- Lib/argparse.py | 1 + Lib/test/test_argparse.py | 10 ++++++++++ Misc/NEWS | 3 +++ 3 files changed, 14 insertions(+) diff --git a/Lib/argparse.py b/Lib/argparse.py index 52ed3ab107a..fba6a262f52 100644 --- a/Lib/argparse.py +++ b/Lib/argparse.py @@ -1957,6 +1957,7 @@ def consume_positionals(start_index): # twice (which may fail) if the argument was given, but # only if it was defined already in the namespace if (action.default is not None and + isinstance(action, _StoreAction) and hasattr(namespace, action.dest) and action.default is getattr(namespace, action.dest)): setattr(namespace, action.dest, diff --git a/Lib/test/test_argparse.py b/Lib/test/test_argparse.py index a2f9a69a59a..cd80dc6d16f 100644 --- a/Lib/test/test_argparse.py +++ b/Lib/test/test_argparse.py @@ -4516,6 +4516,16 @@ def spam(int_to_convert): args = parser.parse_args([]) self.assertEqual(NS(foo='foo_converted'), args) + def test_issue_15906(self): + # Issue #15906: When action='append', type=str, default=[] are + # providing, the dest value was the string representation "[]" when it + # should have been an empty list. + parser = argparse.ArgumentParser() + parser.add_argument('--test', dest='test', type=str, + default=[], action='append') + args = parser.parse_args([]) + self.assertEqual(args.test, []) + # ====================== # parse_known_args tests # ====================== diff --git a/Misc/NEWS b/Misc/NEWS index 3b09e9633af..24c6b7121d5 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -139,6 +139,9 @@ Library especially problematic for the FileType type, as a default file would always be opened, even if a file argument was specified on the command line. +- Issue #15906: Fix a regression in argparse caused by the preceding change, + when action='append', type='str' and default=[]. + - Issue #13370: Ensure that ctypes works on Mac OS X when Python is compiled using the clang compiler From 79b97ee2ab2620921d409ed4010e84f6c227b470 Mon Sep 17 00:00:00 2001 From: Christian Heimes Date: Wed, 12 Sep 2012 15:31:43 +0200 Subject: [PATCH 103/201] Fix out of bounds read in long_new() for empty bytes with an explicit base. int(b'', somebase) calls PyLong_FromString() with char* of length 1 but the function accesses the first argument at offset 1. CID 715359 --- Objects/longobject.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Objects/longobject.c b/Objects/longobject.c index a735e33e046..f2f63afbf69 100644 --- a/Objects/longobject.c +++ b/Objects/longobject.c @@ -4149,8 +4149,8 @@ long_new(PyTypeObject *type, PyObject *args, PyObject *kwds) string = PyByteArray_AS_STRING(x); else string = PyBytes_AS_STRING(x); - if (strlen(string) != (size_t)size) { - /* We only see this if there's a null byte in x, + if (strlen(string) != (size_t)size || !size) { + /* We only see this if there's a null byte in x or x is empty, x is a bytes or buffer, *and* a base is given. */ PyErr_Format(PyExc_ValueError, "invalid literal for int() with base %d: %R", From 1526582df686a66e15c1944aed13c2ea6b922882 Mon Sep 17 00:00:00 2001 From: Christian Heimes Date: Wed, 12 Sep 2012 17:52:46 +0200 Subject: [PATCH 104/201] Partly revert ad3824a90261 and add comment about reference ownership --- Python/symtable.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/Python/symtable.c b/Python/symtable.c index 00b342761f0..992b5aeb585 100644 --- a/Python/symtable.c +++ b/Python/symtable.c @@ -37,7 +37,7 @@ ste_new(struct symtable *st, identifier name, _Py_block_ty block, if (ste == NULL) goto fail; ste->ste_table = st; - ste->ste_id = k; + ste->ste_id = k; /* ste owns reference to k */ ste->ste_name = name; Py_INCREF(name); @@ -83,7 +83,6 @@ ste_new(struct symtable *st, identifier name, _Py_block_ty block, return ste; fail: - Py_XDECREF(k); Py_XDECREF(ste); return NULL; } From 55ad6515c90148bbcaeee0d7a185bfecc9aa1693 Mon Sep 17 00:00:00 2001 From: Christian Heimes Date: Wed, 12 Sep 2012 17:58:10 +0200 Subject: [PATCH 105/201] Cleanup 'k' when the creation of PySTEntryObject fails. ad3824a90261 used to decref 'k' in too many error cases. --- Python/symtable.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Python/symtable.c b/Python/symtable.c index 992b5aeb585..35fc6e19543 100644 --- a/Python/symtable.c +++ b/Python/symtable.c @@ -34,8 +34,10 @@ ste_new(struct symtable *st, identifier name, _Py_block_ty block, if (k == NULL) goto fail; ste = PyObject_New(PySTEntryObject, &PySTEntry_Type); - if (ste == NULL) + if (ste == NULL) { + Py_DECREF(k); goto fail; + } ste->ste_table = st; ste->ste_id = k; /* ste owns reference to k */ From 9d20e0edd966431fa63e85ff7c04087de0c9ed7c Mon Sep 17 00:00:00 2001 From: Antoine Pitrou Date: Wed, 12 Sep 2012 18:01:36 +0200 Subject: [PATCH 106/201] Issue #15926: Fix crash after multiple reinitializations of the interpreter. --- Misc/NEWS | 2 ++ Modules/posixmodule.c | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/Misc/NEWS b/Misc/NEWS index 993bc11b0f7..d72a9d5f252 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -10,6 +10,8 @@ What's New in Python 3.3.1 Core and Builtins ----------------- +- Issue #15926: Fix crash after multiple reinitializations of the interpreter. + - Issue #15895: Fix FILE pointer leak in one error branch of PyRun_SimpleFileExFlags() when filename points to a pyc/pyo file, closeit is false an and set_main_loader() fails. diff --git a/Modules/posixmodule.c b/Modules/posixmodule.c index 1f2b0cc0cad..54f6cd2b22c 100644 --- a/Modules/posixmodule.c +++ b/Modules/posixmodule.c @@ -11852,7 +11852,6 @@ INITFUNC(void) /* initialize TerminalSize_info */ PyStructSequence_InitType(&TerminalSizeType, &TerminalSize_desc); - Py_INCREF(&TerminalSizeType); } #if defined(HAVE_WAITID) && !defined(__APPLE__) Py_INCREF((PyObject*) &WaitidResultType); @@ -11915,6 +11914,7 @@ INITFUNC(void) #endif /* __APPLE__ */ + Py_INCREF(&TerminalSizeType); PyModule_AddObject(m, "terminal_size", (PyObject*) &TerminalSizeType); billion = PyLong_FromLong(1000000000); From eaae1b76aecd2c2fc1cf1aa1578db69e7d1464e6 Mon Sep 17 00:00:00 2001 From: Barry Warsaw Date: Wed, 12 Sep 2012 14:34:50 -0400 Subject: [PATCH 107/201] A follow up for issue #15906: change the test for calling the type conversion on the action's default, reverting it back to previous behavior. Conversion is only done on string defaults. Add a test for this and another test that ensures such type conversions are only called once. --- Lib/argparse.py | 2 +- Lib/test/test_argparse.py | 31 +++++++++++++++++++++++++++---- 2 files changed, 28 insertions(+), 5 deletions(-) diff --git a/Lib/argparse.py b/Lib/argparse.py index fba6a262f52..e2677f81d69 100644 --- a/Lib/argparse.py +++ b/Lib/argparse.py @@ -1957,7 +1957,7 @@ def consume_positionals(start_index): # twice (which may fail) if the argument was given, but # only if it was defined already in the namespace if (action.default is not None and - isinstance(action, _StoreAction) and + isinstance(action.default, basestring) and hasattr(namespace, action.dest) and action.default is getattr(namespace, action.dest)): setattr(namespace, action.dest, diff --git a/Lib/test/test_argparse.py b/Lib/test/test_argparse.py index cd80dc6d16f..22c26cc1038 100644 --- a/Lib/test/test_argparse.py +++ b/Lib/test/test_argparse.py @@ -4500,11 +4500,11 @@ def spam(string_to_convert): args = parser.parse_args('--foo spam!'.split()) self.assertEqual(NS(foo='foo_converted'), args) -# ================================================================ -# Check that the type function is called with a non-string default -# ================================================================ +# ================================================================== +# Check semantics regarding the default argument and type conversion +# ================================================================== -class TestTypeFunctionCallWithNonStringDefault(TestCase): +class TestTypeFunctionCalledOnDefault(TestCase): def test_type_function_call_with_non_string_default(self): def spam(int_to_convert): @@ -4514,8 +4514,31 @@ def spam(int_to_convert): parser = argparse.ArgumentParser() parser.add_argument('--foo', type=spam, default=0) args = parser.parse_args([]) + # foo should *not* be converted because its default is not a string. + self.assertEqual(NS(foo=0), args) + + def test_type_function_call_with_string_default(self): + def spam(int_to_convert): + return 'foo_converted' + + parser = argparse.ArgumentParser() + parser.add_argument('--foo', type=spam, default='0') + args = parser.parse_args([]) + # foo is converted because its default is a string. self.assertEqual(NS(foo='foo_converted'), args) + def test_no_double_type_conversion_of_default(self): + def extend(str_to_convert): + return str_to_convert + '*' + + parser = argparse.ArgumentParser() + parser.add_argument('--test', type=extend, default='*') + args = parser.parse_args([]) + # The test argument will be two stars, one coming from the default + # value and one coming from the type conversion being called exactly + # once. + self.assertEqual(NS(test='**'), args) + def test_issue_15906(self): # Issue #15906: When action='append', type=str, default=[] are # providing, the dest value was the string representation "[]" when it From 2dceb359cb0353d4f327fc36be27e67a3e94566e Mon Sep 17 00:00:00 2001 From: Barry Warsaw Date: Wed, 12 Sep 2012 14:42:34 -0400 Subject: [PATCH 108/201] Update merge from 2.7: s/basetring/str --- Lib/argparse.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Lib/argparse.py b/Lib/argparse.py index e2677f81d69..eb894caebc2 100644 --- a/Lib/argparse.py +++ b/Lib/argparse.py @@ -1957,7 +1957,7 @@ def consume_positionals(start_index): # twice (which may fail) if the argument was given, but # only if it was defined already in the namespace if (action.default is not None and - isinstance(action.default, basestring) and + isinstance(action.default, str) and hasattr(namespace, action.dest) and action.default is getattr(namespace, action.dest)): setattr(namespace, action.dest, From 0b90d66342469f7969d6e0cc3e5926cffaf566c5 Mon Sep 17 00:00:00 2001 From: Stefan Krah Date: Wed, 12 Sep 2012 21:30:09 +0200 Subject: [PATCH 109/201] Issue #15599: FreeBSD on KVM cannot handle a very low switch interval. --- Lib/test/test_threaded_import.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Lib/test/test_threaded_import.py b/Lib/test/test_threaded_import.py index cfc6842e1f4..4a5d7bee099 100644 --- a/Lib/test/test_threaded_import.py +++ b/Lib/test/test_threaded_import.py @@ -225,9 +225,11 @@ def target(): @reap_threads def test_main(): old_switchinterval = None + # Issue #15599: FreeBSD/KVM cannot handle gil_interval == 1. + new_switchinterval = 0.00001 if 'freebsd' in sys.platform else 0.00000001 try: old_switchinterval = sys.getswitchinterval() - sys.setswitchinterval(0.00000001) + sys.setswitchinterval(new_switchinterval) except AttributeError: pass try: From e8cd6bb127698306ae25ed18c8cfe4fbfe7b6f15 Mon Sep 17 00:00:00 2001 From: Richard Oudkerk Date: Thu, 13 Sep 2012 17:27:15 +0100 Subject: [PATCH 110/201] Issue #15881: Clarify comment in exit function --- Lib/multiprocessing/util.py | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/Lib/multiprocessing/util.py b/Lib/multiprocessing/util.py index 3bb954670fc..7495813c9a8 100644 --- a/Lib/multiprocessing/util.py +++ b/Lib/multiprocessing/util.py @@ -290,14 +290,17 @@ def _exit_function(info=info, debug=debug, _run_finalizers=_run_finalizers, if current_process() is not None: # We check if the current process is None here because if - # it's None, any call to ``active_children()`` will throw an - # AttributeError (active_children winds up trying to get - # attributes from util._current_process). This happens in a - # variety of shutdown circumstances that are not well-understood - # because module-scope variables are not apparently supposed to - # be destroyed until after this function is called. However, - # they are indeed destroyed before this function is called. See - # issues #9775 and #15881. Also related: #4106, #9205, and #9207. + # it's None, any call to ``active_children()`` will throw + # an AttributeError (active_children winds up trying to + # get attributes from util._current_process). One + # situation where this can happen is if someone has + # manipulated sys.modules, causing this module to be + # garbage collected. The destructor for the module type + # then replaces all values in the module dict with None. + # For instance, after setuptools runs a test it replaces + # sys.modules with a copy created earlier. See issues + # #9775 and #15881. Also related: #4106, #9205, and + # #9207. for p in active_children(): if p._daemonic: From 56f37aa965e794046dad62ddef2cb63e59e4f357 Mon Sep 17 00:00:00 2001 From: Ezio Melotti Date: Fri, 14 Sep 2012 01:24:44 +0300 Subject: [PATCH 111/201] #15437, #15439: merge Doc/ACKS.txt with Misc/ACKS and modify Doc/about.rst accordingly. --- Doc/ACKS.txt | 238 -------------------------------------------------- Doc/about.rst | 9 +- Misc/ACKS | 121 ++++++++++++++++++++++++- 3 files changed, 124 insertions(+), 244 deletions(-) delete mode 100644 Doc/ACKS.txt diff --git a/Doc/ACKS.txt b/Doc/ACKS.txt deleted file mode 100644 index 26f7ea907f6..00000000000 --- a/Doc/ACKS.txt +++ /dev/null @@ -1,238 +0,0 @@ -Contributors to the Python Documentation ----------------------------------------- - -This section lists people who have contributed in some way to the Python -documentation. It is probably not complete -- if you feel that you or -anyone else should be on this list, please let us know (send email to -docs@python.org), and we'll be glad to correct the problem. - -.. acks:: - - * Aahz - * Michael Abbott - * Steve Alexander - * Jim Ahlstrom - * Fred Allen - * A. Amoroso - * Pehr Anderson - * Oliver Andrich - * Heidi Annexstad - * Jesús Cea Avión - * Manuel Balsera - * Daniel Barclay - * Chris Barker - * Don Bashford - * Anthony Baxter - * Alexander Belopolsky - * Bennett Benson - * Jonathan Black - * Robin Boerdijk - * Michal Bozon - * Aaron Brancotti - * Georg Brandl - * Keith Briggs - * Ian Bruntlett - * Lee Busby - * Arnaud Calmettes - * Lorenzo M. Catucci - * Carl Cerecke - * Mauro Cicognini - * Gilles Civario - * Mike Clarkson - * Steve Clift - * Dave Cole - * Matthew Cowles - * Jeremy Craven - * Andrew Dalke - * Ben Darnell - * L. Peter Deutsch - * Robert Donohue - * Fred L. Drake, Jr. - * Jacques Ducasse - * Josip Dzolonga - * Jeff Epler - * Michael Ernst - * Blame Andy Eskilsson - * Carey Evans - * Martijn Faassen - * Carl Feynman - * Dan Finnie - * Hernán Martínez Foffani - * Michael Foord - * Stefan Franke - * Jim Fulton - * Peter Funk - * Lele Gaifax - * Matthew Gallagher - * Gabriel Genellina - * Ben Gertzfield - * Nadim Ghaznavi - * Jonathan Giddy - * Matt Giuca - * Shelley Gooch - * Nathaniel Gray - * Grant Griffin - * Thomas Guettler - * Anders Hammarquist - * Mark Hammond - * Harald Hanche-Olsen - * Manus Hand - * Gerhard Häring - * Travis B. Hartwell - * Tim Hatch - * Janko Hauser - * Ben Hayden - * Thomas Heller - * Bernhard Herzog - * Magnus L. Hetland - * Konrad Hinsen - * Stefan Hoffmeister - * Albert Hofkamp - * Gregor Hoffleit - * Steve Holden - * Thomas Holenstein - * Gerrit Holl - * Rob Hooft - * Brian Hooper - * Randall Hopper - * Mike Hoy - * Michael Hudson - * Eric Huss - * Jeremy Hylton - * Roger Irwin - * Jack Jansen - * Philip H. Jensen - * Pedro Diaz Jimenez - * Kent Johnson - * Lucas de Jonge - * Andreas Jung - * Robert Kern - * Jim Kerr - * Jan Kim - * Kamil Kisiel - * Greg Kochanski - * Guido Kollerie - * Peter A. Koren - * Daniel Kozan - * Andrew M. Kuchling - * Dave Kuhlman - * Erno Kuusela - * Ross Lagerwall - * Thomas Lamb - * Detlef Lannert - * Piers Lauder - * Julia Lawall - * Glyph Lefkowitz - * Robert Lehmann - * Marc-André Lemburg - * Ross Light - * Gediminas Liktaras - * Ulf A. Lindgren - * Everett Lipman - * Mirko Liss - * Martin von Löwis - * Fredrik Lundh - * Jeff MacDonald - * John Machin - * Andrew MacIntyre - * Vladimir Marangozov - * Vincent Marchetti - * Westley Martínez - * Laura Matson - * Daniel May - * Rebecca McCreary - * Doug Mennella - * Paolo Milani - * Skip Montanaro - * Paul Moore - * Ross Moore - * Sjoerd Mullender - * Dale Nagata - * Trent Nelson - * Michal Nowikowski - * Steffen Daode Nurpmeso - * Ng Pheng Siong - * Koray Oner - * Tomas Oppelstrup - * Denis S. Otkidach - * Zooko O'Whielacronx - * Shriphani Palakodety - * William Park - * Joonas Paalasmaa - * Harri Pasanen - * Bo Peng - * Tim Peters - * Benjamin Peterson - * Christopher Petrilli - * Justin D. Pettit - * Chris Phoenix - * François Pinard - * Paul Prescod - * Eric S. Raymond - * Edward K. Ream - * Terry J. Reedy - * Sean Reifschneider - * Bernhard Reiter - * Armin Rigo - * Wes Rishel - * Armin Ronacher - * Jim Roskind - * Guido van Rossum - * Donald Wallace Rouse II - * Mark Russell - * Nick Russo - * Chris Ryland - * Constantina S. - * Hugh Sasse - * Bob Savage - * Scott Schram - * Neil Schemenauer - * Barry Scott - * Joakim Sernbrant - * Justin Sheehy - * Charlie Shepherd - * Yue Shuaijie - * SilentGhost - * Michael Simcich - * Ionel Simionescu - * Michael Sloan - * Gregory P. Smith - * Roy Smith - * Clay Spence - * Nicholas Spies - * Tage Stabell-Kulo - * Frank Stajano - * Anthony Starks - * Greg Stein - * Peter Stoehr - * Mark Summerfield - * Reuben Sumner - * Kalle Svensson - * Jim Tittsler - * David Turner - * Sandro Tosi - * Ville Vainio - * Martijn Vries - * Charles G. Waldman - * Greg Ward - * Barry Warsaw - * Corran Webster - * Glyn Webster - * Bob Weiner - * Eddy Welbourne - * Jeff Wheeler - * Mats Wichmann - * Gerry Wiener - * Timothy Wild - * Paul Winkler - * Collin Winter - * Blake Winton - * Dan Wolfe - * Adam Woodbeck - * Steven Work - * Thomas Wouters - * Ka-Ping Yee - * Rory Yorke - * Moshe Zadka - * Milan Zamazal - * Cheng Zhang diff --git a/Doc/about.rst b/Doc/about.rst index 2c229e662c4..d316f09ff34 100644 --- a/Doc/about.rst +++ b/Doc/about.rst @@ -29,8 +29,13 @@ Many thanks go to: See :ref:`reporting-bugs` for information how to report bugs in this documentation, or Python itself. -.. including the ACKS file here so that it can be maintained separately -.. include:: ACKS.txt + +Contributors to the Python Documentation +---------------------------------------- + +Many people have contributed to the Python language, the Python standard +library, and the Python documentation. See :source:`Misc/ACKS` in the Python +source distribution for a partial list of contributors. It is only with the input and contributions of the Python community that Python has such wonderful documentation -- Thank You! diff --git a/Misc/ACKS b/Misc/ACKS index b7f3b5b7d64..85190297844 100644 --- a/Misc/ACKS +++ b/Misc/ACKS @@ -11,6 +11,8 @@ Without you, I would've stopped working on Python long ago! PS: In the standard Python distribution, this file is encoded in UTF-8 and the list is in rough alphabetical order by last names. +Aahz +Michael Abbott David Abrahams Ron Adam Jim Ahlstrom @@ -19,24 +21,30 @@ Matthew Ahrens Nir Aides Yaniv Aknin Jyrki Alakuijala +Steve Alexander +Fred Allen Ray Allen Billy G. Allie Kevin Altis Joe Amenta +A. Amoroso Mark Anacker Shashwat Anand Anders Andersen John Anderson +Pehr Anderson Erik Andersén Oliver Andrich Ross Andrus Jérémy Anger Jon Anglin +Heidi Annexstad Éric Araujo Alicia Arlen Jason Asbahr David Ascher Chris AtLee +Jesús Cea Avión John Aycock Jan-Hein Bührman Donovan Baarda @@ -48,8 +56,10 @@ Stig Bakken Greg Ball Luigi Ballabio Jeff Balogh +Manuel Balsera Matt Bandy Michael J. Barber +Daniel Barclay Nicolas Bareil Chris Barker Anton Barkovsky @@ -59,6 +69,7 @@ Richard Barran Cesar Eduardo Barros Des Barry Ulf Bartelt +Don Bashford Nick Bastin Jeff Bauer Mike Bayer @@ -79,6 +90,7 @@ Alexander “Саша” Belopolsky Eli Bendersky Andrew Bennetts Andy Bensky +Bennett Benson Michel Van den Bergh Julian Berman Brice Berna @@ -93,6 +105,7 @@ Dominic Binks Philippe Biondi Stuart Bishop Roy Bixler +Jonathan Black Mike Bland Martin Bless Pablo Bleyer @@ -101,6 +114,7 @@ Eric Blossom Finn Bock Paul Boddie Matthew Boedicker +Robin Boerdijk David Bolen Forest Bond Gawain Bolton @@ -110,7 +124,9 @@ Peter Bosch Eric Bouck Thierry Bousch Sebastian Boving +Michal Bozon Jeff Bradberry +Aaron Brancotti Monty Brandenberg Georg Brandl Christopher Brannon @@ -118,6 +134,7 @@ Terrence Brannon Brian Brazil Dave Brennan Tom Bridgman +Keith Briggs Tobias Brink Richard Brodie Michael Broghton @@ -127,6 +144,7 @@ Gary S. Brown Oleg Broytmann Dave Brueck Francisco Martín Brugué +Ian Bruntlett Floris Bruynooghe Stan Bubrouski Erik de Bueger @@ -152,6 +170,7 @@ Donn Cave Charles Cazabon Per Cederqvist Matej Cepl +Carl Cerecke Octavian Cerna Pascal Chambon John Chandler @@ -170,8 +189,10 @@ Matt Chisholm Anders Chrigström Tom Christiansen Vadim Chugunov +Mauro Cicognini David Cinege Craig Citro +Gilles Civario Mike Clarkson Andrew Clegg Brad Clements @@ -203,6 +224,7 @@ Alex Coventry Matthew Dixon Cowles Ryan Coyner Christopher A. Craig +Jeremy Craven Laura Creighton Simon Cross Drew Csillag @@ -226,6 +248,7 @@ Vincent Delft Arnaud Delobelle Erik Demaine John Dennis +L. Peter Deutsch Roger Dev Philippe Devalkeneer Raghuram Devarakonda @@ -241,6 +264,7 @@ Yves Dionne Daniel Dittmar Jaromir Dolecek Ismail Donmez +Robert Donohue Marcos Donolo Dima Dorfman Yves Dorfsman @@ -250,6 +274,7 @@ Fred L. Drake, Jr. Derk Drukker John DuBois Paul Dubois +Jacques Ducasse Graham Dumpleton Quinn Dunkan Robin Dunn @@ -297,10 +322,12 @@ Niels Ferguson Sebastian Fernandez Florian Festi John Feuerstein +Carl Feynman Vincent Fiack Tomer Filiba Jeffrey Finkelstein Russell Finn +Dan Finnie Nils Fischbeck Frederik Fix Matt Fleming @@ -310,6 +337,7 @@ Michael Foord Amaury Forgeot d'Arc Doug Fort John Fouhy +Stefan Franke Martin Franklin Robin Friedrich Bradley Froehle @@ -328,6 +356,7 @@ Martin von Gagern Lele Gaifax Santiago Gala Yitzchak Gale +Matthew Gallagher Quentin Gallet-Gilles Riccardo Attilio Galli Raymund Galvin @@ -344,22 +373,28 @@ Thomas Gellekum Gabriel Genellina Christos Georgiou Ben Gertzfield +Nadim Ghaznavi Dinu Gherman Jonathan Giddy Johannes Gijsbers Michael Gilfix +Matt Giuca Christoph Gohlke Tim Golden Guilherme Gonçalves Chris Gonnerman +Shelley Gooch David Goodger Hans de Graaff +Nathaniel Gray Eddy De Greef +Grant Griffin Duncan Grisby Fabian Groffen Eric Groo Dag Gruneau Filip Gruszczyński +Thomas Guettler Michael Guravage Lars Gustäbel Thomas Güttler @@ -372,7 +407,9 @@ Václav Haisman Bob Halley Jesse Hallio Jun Hamano +Anders Hammarquist Mark Hammond +Harald Hanche-Olsen Manus Hand Milton L. Hankins Stephen Hansen @@ -381,8 +418,11 @@ Lynda Hardman Derek Harland Jason Harper Brian Harring +Travis B. Hartwell Larry Hastings +Tim Hatch Shane Hathaway +Janko Hauser Rycharde Hawkes Ben Hayden Jochen Hayek @@ -411,10 +451,13 @@ Tim Hochberg Joerg-Cyril Hoehle Gregor Hoffleit Chris Hoffman +Stefan Hoffmeister Albert Hofkamp Tomas Hoger Jonathan Hogg +Steve Holden Akintayo Holder +Thomas Holenstein Gerrit Holl Shane Holloway Rune Holm @@ -448,6 +491,7 @@ Meador Inge Tony Ingraldi John Interrante Bob Ippolito +Roger Irwin Atsuo Ishimoto Adam Jackson Ben Jackson @@ -463,11 +507,14 @@ Thomas Jarosch Zbyszek Jędrzejewski-Szmek Drew Jenkins Flemming Kjær Jensen +Philip H. Jensen MunSic Jeong Chris Jerdonek +Pedro Diaz Jimenez Orjan Johansen Fredrik Johansson Gregory K. Johnson +Kent Johnson Simon Johnston Matt Joiner Thomas Jollans @@ -497,16 +544,19 @@ Ryan Kelly Dan Kenigsberg Robert Kern Randall Kern +Jim Kerr Magnus Kessler Lawrence Kesteloot Vivek Khera -Akira Kitada Mads Kiilerich +Jan Kim Taek Joo Kim W. Trevor King Paul Kippes Steve Kirsch Sebastian Kirsche +Kamil Kisiel +Akira Kitada Ron Klatchko Reid Kleckner Bastian Kleineidam @@ -521,9 +571,12 @@ Jeff Knupp Greg Kochanski Damon Kohler Marko Kohtala +Guido Kollerie Arkady Koplyarov +Peter A. Koren Vlad Korolev Joseph Koshy +Daniel Kozan Jerzy Kozera Maksim Kozyarchuk Stefan Krah @@ -536,9 +589,12 @@ Hannu Krosing Andrej Krpic Ivan Krstić Andrew Kuchling +Dave Kuhlman Vladimir Kushnir +Erno Kuusela Ross Lagerwall Cameron Laird +Thomas Lamb Jean-Baptiste "Jiba" Lamy Torsten Landschoff Łukasz Langa @@ -559,6 +615,7 @@ Thomas Lee Christopher Lee Tennessee Leeuwenburg Luc Lefebvre +Glyph Lefkowitz Vincent Legoll Kip Lehman Joerg Lehmann @@ -566,7 +623,7 @@ Robert Lehmann Petri Lehtinen Luke Kenneth Casson Leighton Tshepang Lekhonkhobe -Marc-Andre Lemburg +Marc-André Lemburg John Lenton Christopher Tur Lesniewski-Laas Mark Levinson @@ -577,12 +634,16 @@ Robert van Liere Ross Light Shawn Ligocki Martin Ligr +Gediminas Liktaras Grant Limberg Christopher Lindblad +Ulf A. Lindgren Björn Lindqvist Per Lindqvist Eric Lindvall Gregor Lingl +Everett Lipman +Mirko Liss Nick Lockwood Stephanie Lockwood Anne Lord @@ -598,6 +659,8 @@ Mark Lutz Jim Lynch Mikael Lyngvig Martin von Löwis +Jeff MacDonald +John Machin Andrew I MacIntyre Tim MacKenzie Nick Maclaren @@ -607,18 +670,23 @@ Grzegorz Makarewicz David Malcolm Ken Manheimer Vladimir Marangozov +Vincent Marchetti David Marek Doug Marien Sven Marnach Alex Martelli Anthony Martin Owen Martin +Westley Martínez Sébastien Martini Roger Masse Nick Mathewson +Laura Matson Graham Matthews Dieter Maurer +Daniel May Arnaud Mazin +Rebecca McCreary Kirk McDonald Chris McDonough Greg McFarlane @@ -633,6 +701,7 @@ Lambert Meertens Bill van Melle Lucas Prado Melo Ezio Melotti +Doug Mennella Brian Merrell Luke Mewburn Carl Meyer @@ -643,6 +712,7 @@ Tom Middleton Stan Mihai Stefan Mihaila Aristotelis Mikropoulos +Paolo Milani Damien Miller Chad Miller Jason V. Miller @@ -656,6 +726,7 @@ Doug Moen The Dragon De Monsyne Skip Montanaro Paul Moore +Ross Moore Derek Morr James A Morrison Alessandro Moura @@ -668,6 +739,7 @@ Michael Muller Neil Muller R. David Murray Piotr Meyer +Dale Nagata John Nagle Takahiro Nakayama Travers Naran @@ -698,11 +770,14 @@ Nigel O'Brian John O'Connor Kevin O'Connor Tim O'Malley +Zooko O'Whielacronx Pascal Oberndoerfer Jeffrey Ollie Adam Olsen Grant Olson +Koray Oner Piet van Oostrum +Tomas Oppelstrup Jason Orendorff Douglas Orr Michele Orrù @@ -712,6 +787,8 @@ Peter Otten Michael Otteneder R. M. Oudkerk Russel Owen +Joonas Paalasmaa +Shriphani Palakodety Ondrej Palkovsky Mike Pall Todd R. Palmer @@ -721,7 +798,9 @@ M. Papillon Peter Parente Alexandre Parenteau Dan Parisien +William Park Harri Pasanen +Bo Peng Joe Peterson Randy Pausch Samuele Pedroni @@ -736,6 +815,7 @@ Benjamin Peterson Joe Peterson Chris Petrilli Bjorn Pettersen +Justin D. Pettit Geoff Philbrick Gavrie Philipson Adrian Phillips @@ -772,12 +852,12 @@ Brodie Rao Antti Rasinen Sridhar Ratnakumar Ysj Ray -Eric Raymond +Eric S. Raymond Edward K. Ream Chris Rebert Marc Recht John Redford -Terry Reedy +Terry J. Reedy Gareth Rees Steve Reeves Lennart Regebro @@ -795,6 +875,7 @@ Armin Rigo Nicholas Riley Jean-Claude Rimbault Vlad Riscutia +Wes Rishel Juan M. Bello Rivas Davide Rizzo Anthony Roach @@ -811,6 +892,7 @@ Armin Ronacher Case Roole Timothy Roscoe Jim Roskind +Guido van Rossum Just van Rossum Hugo van Rossum Saskia van Rossum @@ -827,6 +909,8 @@ Jeff Rush Sam Rushing Mark Russell Nick Russo +Chris Ryland +Constantina S. Sébastien Sablé Suman Saha Hajime Saitou @@ -837,6 +921,8 @@ Adrian Sampson Ilya Sandler Mark Sapiro Ty Sarna +Hugh Sasse +Bob Savage Ben Sayer sbt Marco Scataglini @@ -852,6 +938,7 @@ Ralf Schmitt Michael Schneider Peter Schneider-Kamp Arvin Schnell +Scott Schram Robin Schreiber Chad J. Schroeder Sam Schulenburg @@ -865,6 +952,7 @@ Nick Seidenman Yury Selivanov Fred Sells Jiwon Seo +Joakim Sernbrant Roger Serwy Jerry Seutter Denis Severson @@ -872,6 +960,8 @@ Ian Seyer Ha Shao Mark Shannon Richard Shapiro +Justin Sheehy +Charlie Shepherd Bruce Sherwood Alexander Shigin Pete Shinners @@ -879,31 +969,41 @@ Michael Shiplett John W. Shipman Joel Shprentz Itamar Shtull-Trauring +Yue Shuaijie Eric Siegerman Paul Sijben +SilentGhost Tim Silk +Michael Simcich +Ionel Simionescu Kirill Simonov Nathan Paul Simons Janne Sinkkonen +Ng Pheng Siong George Sipe J. Sipprell Kragen Sitaker +Michael Sloan Eric V. Smith Christopher Smith Gregory P. Smith +Roy Smith Rafal Smotrzyk Dirk Soede Paul Sokolovsky Cody Somerville Clay Spence Stefan Sperling +Nicholas Spies Per Spilling Joshua Spoerri Noah Spurrier Nathan Srebro RajGopal Srinivasan +Tage Stabell-Kulo Quentin Stafford-Fraser Frank Stajano +Anthony Starks Oliver Steele Greg Stein Chris Stern @@ -921,6 +1021,7 @@ Colin Su Pal Subbiah Nathan Sullivan Mark Summerfield +Reuben Sumner Hisao Suzuki Kalle Svensson Andrew Svetlov @@ -951,6 +1052,7 @@ Tracy Tims Oren Tirosh Jason Tishler Christian Tismer +Jim Tittsler Frank J. Tobin R Lindsay Todd Bennett Todd @@ -963,6 +1065,7 @@ John Tromp Jason Trowbridge Anthony Tuininga Erno Tukia +David Turner Stephen Turner Theodore Turocy Bill Tutt @@ -973,6 +1076,7 @@ Roger Upole Daniel Urban Michael Urman Hector Urtubia +Ville Vainio Andi Vajda Case Van Horsen Kyle VanderBeek @@ -993,6 +1097,7 @@ Kurt Vile Norman Vine Frank Visser Johannes Vogel +Martijn Vries Sjoerd de Vries Niki W. Waibel Wojtek Walczak @@ -1010,8 +1115,10 @@ David Watson Aaron Watters Henrik Weber Corran Webster +Glyn Webster Stefan Wehr Zack Weinberg +Bob Weiner Edward Welbourne Cliff Wells Rickard Westman @@ -1024,6 +1131,7 @@ Felix Wiemann Gerry Wiener Frank Wierzbicki Bryce "Zooko" Wilcox-O'Hearn +Timothy Wild Jakub Wilk Jason Williams John Williams @@ -1033,6 +1141,7 @@ Steven Willis Frank Willison Greg V. Wilson J Derek Wilson +Paul Winkler Jody Winston Collin Winter Dik Winter @@ -1047,6 +1156,8 @@ David Wolever Klaus-Juergen Wolf Dan Wolfe Richard Wolff +Adam Woodbeck +Steven Work Darren Worrall Gordon Worley Thomas Wouters @@ -1059,6 +1170,7 @@ Ka-Ping Yee Jason Yeo Bob Yodlowski Danny Yoo +Rory Yorke George Yoshida Masazumi Yoshikawa Arnaud Ysmal @@ -1070,6 +1182,7 @@ Mike Zarnstorff Siebren van der Zee Yuxiao Zeng Uwe Zessin +Cheng Zhang Kai Zhu Tarek Ziadé Peter Åstrand From e0add764688a3f3237749e0c2830b669d2c76ca0 Mon Sep 17 00:00:00 2001 From: Ezio Melotti Date: Fri, 14 Sep 2012 06:32:35 +0300 Subject: [PATCH 112/201] #15831: document multiple signatures on different lines. Patch by Chris Jerdonek. --- Doc/library/argparse.rst | 9 ++++--- Doc/library/configparser.rst | 3 ++- Doc/library/curses.rst | 44 ++++++++++++++++++++++----------- Doc/library/functions.rst | 38 ++++++++++++++++++---------- Doc/library/http.client.rst | 8 ++++-- Doc/library/itertools.rst | 3 ++- Doc/library/multiprocessing.rst | 2 +- Doc/library/optparse.rst | 6 +++-- Doc/library/ossaudiodev.rst | 3 ++- Doc/library/random.rst | 11 +++++---- Doc/library/socket.rst | 3 ++- Doc/library/syslog.rst | 3 ++- Doc/library/tkinter.tix.rst | 2 +- 13 files changed, 89 insertions(+), 46 deletions(-) diff --git a/Doc/library/argparse.rst b/Doc/library/argparse.rst index 6aaa36e06ba..1313e4b1de1 100644 --- a/Doc/library/argparse.rst +++ b/Doc/library/argparse.rst @@ -130,9 +130,12 @@ command-line arguments from :data:`sys.argv`. ArgumentParser objects ---------------------- -.. class:: ArgumentParser([description], [epilog], [prog], [usage], [add_help], \ - [argument_default], [parents], [prefix_chars], \ - [conflict_handler], [formatter_class]) +.. class:: ArgumentParser(prog=None, usage=None, description=None, \ + epilog=None, parents=[], \ + formatter_class=argparse.HelpFormatter, \ + prefix_chars='-', fromfile_prefix_chars=None, \ + argument_default=None, conflict_handler='error', \ + add_help=True) Create a new :class:`ArgumentParser` object. Each parameter has its own more detailed description below, but in short they are: diff --git a/Doc/library/configparser.rst b/Doc/library/configparser.rst index 6f0ae6ace82..c202cf2bb10 100644 --- a/Doc/library/configparser.rst +++ b/Doc/library/configparser.rst @@ -1051,7 +1051,8 @@ ConfigParser Objects *fallback*. - .. method:: items([section], raw=False, vars=None) + .. method:: items(raw=False, vars=None) + items(section, raw=False, vars=None) When *section* is not given, return a list of *section_name*, *section_proxy* pairs, including DEFAULTSECT. diff --git a/Doc/library/curses.rst b/Doc/library/curses.rst index f31b9c536b3..11ab5d01057 100644 --- a/Doc/library/curses.rst +++ b/Doc/library/curses.rst @@ -377,7 +377,8 @@ The module :mod:`curses` defines the following functions: is to be displayed. -.. function:: newwin([nlines, ncols,] begin_y, begin_x) +.. function:: newwin(begin_y, begin_x) + newwin(nlines, ncols, begin_y, begin_x) Return a new window, whose left-upper corner is at ``(begin_y, begin_x)``, and whose height/width is *nlines*/*ncols*. @@ -645,7 +646,8 @@ Window objects, as returned by :func:`initscr` and :func:`newwin` above, have the following methods: -.. method:: window.addch([y, x,] ch[, attr]) +.. method:: window.addch(ch[, attr]) + window.addch(y, x, ch[, attr]) .. note:: @@ -659,13 +661,15 @@ the following methods: position and attributes are the current settings for the window object. -.. method:: window.addnstr([y, x,] str, n[, attr]) +.. method:: window.addnstr(str, n[, attr]) + window.addnstr(y, x, str, n[, attr]) Paint at most *n* characters of the string *str* at ``(y, x)`` with attributes *attr*, overwriting anything previously on the display. -.. method:: window.addstr([y, x,] str[, attr]) +.. method:: window.addstr(str[, attr]) + window.addstr(y, x, str[, attr]) Paint the string *str* at ``(y, x)`` with attributes *attr*, overwriting anything previously on the display. @@ -752,7 +756,10 @@ the following methods: *bs* are *horch*. The default corner characters are always used by this function. -.. method:: window.chgat([y, x, ] [num,] attr) +.. method:: window.chgat(attr) + window.chgat(num, attr) + window.chgat(y, x, attr) + window.chgat(y, x, num, attr) Set the attributes of *num* characters at the current cursor position, or at position ``(y, x)`` if supplied. If no value of *num* is given or *num* = -1, @@ -801,7 +808,8 @@ the following methods: Delete the line under the cursor. All following lines are moved up by one line. -.. method:: window.derwin([nlines, ncols,] begin_y, begin_x) +.. method:: window.derwin(begin_y, begin_x) + window.derwin(nlines, ncols, begin_y, begin_x) An abbreviation for "derive window", :meth:`derwin` is the same as calling :meth:`subwin`, except that *begin_y* and *begin_x* are relative to the origin @@ -876,7 +884,8 @@ the following methods: upper-left corner. -.. method:: window.hline([y, x,] ch, n) +.. method:: window.hline(ch, n) + window.hline(y, x, ch, n) Display a horizontal line starting at ``(y, x)`` with length *n* consisting of the character *ch*. @@ -910,7 +919,8 @@ the following methods: the character proper, and upper bits are the attributes. -.. method:: window.insch([y, x,] ch[, attr]) +.. method:: window.insch(ch[, attr]) + window.insch(y, x, ch[, attr]) Paint character *ch* at ``(y, x)`` with attributes *attr*, moving the line from position *x* right by one character. @@ -931,7 +941,8 @@ the following methods: line. -.. method:: window.insnstr([y, x,] str, n [, attr]) +.. method:: window.insnstr(str, n[, attr]) + window.insnstr(y, x, str, n[, attr]) Insert a character string (as many characters as will fit on the line) before the character under the cursor, up to *n* characters. If *n* is zero or @@ -940,7 +951,8 @@ the following methods: The cursor position does not change (after moving to *y*, *x*, if specified). -.. method:: window.insstr([y, x, ] str [, attr]) +.. method:: window.insstr(str[, attr]) + window.insstr(y, x, str[, attr]) Insert a character string (as many characters as will fit on the line) before the character under the cursor. All characters to the right of the cursor are @@ -948,7 +960,8 @@ the following methods: position does not change (after moving to *y*, *x*, if specified). -.. method:: window.instr([y, x] [, n]) +.. method:: window.instr([n]) + window.instr(y, x[, n]) Return a string of characters, extracted from the window starting at the current cursor position, or at *y*, *x* if specified. Attributes are stripped @@ -1123,13 +1136,15 @@ the following methods: Turn on attribute *A_STANDOUT*. -.. method:: window.subpad([nlines, ncols,] begin_y, begin_x) +.. method:: window.subpad(begin_y, begin_x) + window.subpad(nlines, ncols, begin_y, begin_x) Return a sub-window, whose upper-left corner is at ``(begin_y, begin_x)``, and whose width/height is *ncols*/*nlines*. -.. method:: window.subwin([nlines, ncols,] begin_y, begin_x) +.. method:: window.subwin(begin_y, begin_x) + window.subwin(nlines, ncols, begin_y, begin_x) Return a sub-window, whose upper-left corner is at ``(begin_y, begin_x)``, and whose width/height is *ncols*/*nlines*. @@ -1186,7 +1201,8 @@ the following methods: :meth:`refresh`. -.. method:: window.vline([y, x,] ch, n) +.. method:: window.vline(ch, n) + window.vline(y, x, ch, n) Display a vertical line starting at ``(y, x)`` with length *n* consisting of the character *ch*. diff --git a/Doc/library/functions.rst b/Doc/library/functions.rst index b3238b154b8..be5d4c7e278 100644 --- a/Doc/library/functions.rst +++ b/Doc/library/functions.rst @@ -727,11 +727,16 @@ are always available. They are listed here in alphabetical order. already arranged into argument tuples, see :func:`itertools.starmap`\. -.. function:: max(iterable[, args...], *[, key]) +.. function:: max(iterable, *[, key]) + max(arg1, arg2, *args[, key]) - With a single argument *iterable*, return the largest item of a non-empty - iterable (such as a string, tuple or list). With more than one argument, return - the largest of the arguments. + Return the largest item in an iterable or the largest of two or more + arguments. + + If one positional argument is provided, *iterable* must be a non-empty + iterable (such as a non-empty string, tuple or list). The largest item + in the iterable is returned. If two or more positional arguments are + provided, the largest of the positional arguments is returned. The optional keyword-only *key* argument specifies a one-argument ordering function like that used for :meth:`list.sort`. @@ -750,11 +755,16 @@ are always available. They are listed here in alphabetical order. :ref:`typememoryview` for more information. -.. function:: min(iterable[, args...], *[, key]) +.. function:: min(iterable, *[, key]) + min(arg1, arg2, *args[, key]) - With a single argument *iterable*, return the smallest item of a non-empty - iterable (such as a string, tuple or list). With more than one argument, return - the smallest of the arguments. + Return the smallest item in an iterable or the smallest of two or more + arguments. + + If one positional argument is provided, *iterable* must be a non-empty + iterable (such as a non-empty string, tuple or list). The smallest item + in the iterable is returned. If two or more positional arguments are + provided, the smallest of the positional arguments is returned. The optional keyword-only *key* argument specifies a one-argument ordering function like that used for :meth:`list.sort`. @@ -957,16 +967,16 @@ are always available. They are listed here in alphabetical order. must be of integer types, and *y* must be non-negative. -.. function:: print([object, ...], *, sep=' ', end='\\n', file=sys.stdout) +.. function:: print(*objects, sep=' ', end='\\n', file=sys.stdout) - Print *object*\(s) to the stream *file*, separated by *sep* and followed by + Print *objects* to the stream *file*, separated by *sep* and followed by *end*. *sep*, *end* and *file*, if present, must be given as keyword arguments. All non-keyword arguments are converted to strings like :func:`str` does and written to the stream, separated by *sep* and followed by *end*. Both *sep* and *end* must be strings; they can also be ``None``, which means to use the - default values. If no *object* is given, :func:`print` will just write + default values. If no *objects* are given, :func:`print` will just write *end*. The *file* argument must be an object with a ``write(string)`` method; if it @@ -1045,7 +1055,8 @@ are always available. They are listed here in alphabetical order. .. XXX does accept objects with __index__ too -.. function:: range([start,] stop[, step]) +.. function:: range(stop) + range(start, stop[, step]) This is a versatile function to create iterables yielding arithmetic progressions. It is most often used in :keyword:`for` loops. The arguments @@ -1160,7 +1171,8 @@ are always available. They are listed here in alphabetical order. ``x.foobar = 123``. -.. function:: slice([start,] stop[, step]) +.. function:: slice(stop) + slice(start, stop[, step]) .. index:: single: Numerical Python diff --git a/Doc/library/http.client.rst b/Doc/library/http.client.rst index 52fbe573c0c..d439f246139 100644 --- a/Doc/library/http.client.rst +++ b/Doc/library/http.client.rst @@ -27,7 +27,8 @@ HTTPS protocols. It is normally not used directly --- the module The module provides the following classes: -.. class:: HTTPConnection(host, port=None[, strict[, timeout[, source_address]]]) +.. class:: HTTPConnection(host, port=None[, strict][, timeout], \ + source_address=None) An :class:`HTTPConnection` instance represents one transaction with an HTTP server. It should be instantiated passing it a host and optional port @@ -55,7 +56,10 @@ The module provides the following classes: are not supported anymore. -.. class:: HTTPSConnection(host, port=None, key_file=None, cert_file=None[, strict[, timeout[, source_address]]], *, context=None, check_hostname=None) +.. class:: HTTPSConnection(host, port=None, key_file=None, \ + cert_file=None[, strict][, timeout], \ + source_address=None, *, context=None, \ + check_hostname=None) A subclass of :class:`HTTPConnection` that uses SSL for communication with secure servers. Default port is ``443``. If *context* is specified, it diff --git a/Doc/library/itertools.rst b/Doc/library/itertools.rst index d1d1188106e..308f925d76c 100644 --- a/Doc/library/itertools.rst +++ b/Doc/library/itertools.rst @@ -363,7 +363,8 @@ loops that truncate the stream. self.currkey = self.keyfunc(self.currvalue) -.. function:: islice(iterable, [start,] stop [, step]) +.. function:: islice(iterable, stop) + islice(iterable, start, stop[, step]) Make an iterator that returns selected elements from the iterable. If *start* is non-zero, then elements from the iterable are skipped until start is reached. diff --git a/Doc/library/multiprocessing.rst b/Doc/library/multiprocessing.rst index 18302a792c3..4271fc25976 100644 --- a/Doc/library/multiprocessing.rst +++ b/Doc/library/multiprocessing.rst @@ -298,7 +298,7 @@ The :mod:`multiprocessing` package mostly replicates the API of the :class:`Process` and exceptions ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -.. class:: Process([group[, target[, name[, args[, kwargs]]]]]) +.. class:: Process(group=None, target=None, name=None, args=(), kwargs={}) Process objects represent activity that is run in a separate process. The :class:`Process` class has equivalents of all the methods of diff --git a/Doc/library/optparse.rst b/Doc/library/optparse.rst index 6dc57bb3a64..6a03edf1341 100644 --- a/Doc/library/optparse.rst +++ b/Doc/library/optparse.rst @@ -273,7 +273,8 @@ You're free to define as many short option strings and as many long option strings as you like (including zero), as long as there is at least one option string overall. -The option strings passed to :meth:`add_option` are effectively labels for the +The option strings passed to :meth:`OptionParser.add_option` are effectively +labels for the option defined by that call. For brevity, we will frequently refer to *encountering an option* on the command line; in reality, :mod:`optparse` encounters *option strings* and looks up options from them. @@ -892,7 +893,8 @@ long option strings, but you must specify at least one overall option string. The canonical way to create an :class:`Option` instance is with the :meth:`add_option` method of :class:`OptionParser`. -.. method:: OptionParser.add_option(opt_str[, ...], attr=value, ...) +.. method:: OptionParser.add_option(option) + OptionParser.add_option(*opt_str, attr=value, ...) To define an option with only a short option string:: diff --git a/Doc/library/ossaudiodev.rst b/Doc/library/ossaudiodev.rst index cf302cce633..ed84413b7a6 100644 --- a/Doc/library/ossaudiodev.rst +++ b/Doc/library/ossaudiodev.rst @@ -63,7 +63,8 @@ the standard audio interface for Linux and recent versions of FreeBSD. ``ossaudiodev.error``.) -.. function:: open([device, ]mode) +.. function:: open(mode) + open(device, mode) Open an audio device and return an OSS audio device object. This object supports many file-like methods, such as :meth:`read`, :meth:`write`, and diff --git a/Doc/library/random.rst b/Doc/library/random.rst index 3a7f131fdbb..1cd4d268828 100644 --- a/Doc/library/random.rst +++ b/Doc/library/random.rst @@ -46,20 +46,20 @@ from sources provided by the operating system. Bookkeeping functions: -.. function:: seed([x], version=2) +.. function:: seed(a=None, version=2) Initialize the random number generator. - If *x* is omitted or ``None``, the current system time is used. If + If *a* is omitted or ``None``, the current system time is used. If randomness sources are provided by the operating system, they are used instead of the system time (see the :func:`os.urandom` function for details on availability). - If *x* is an int, it is used directly. + If *a* is an int, it is used directly. With version 2 (the default), a :class:`str`, :class:`bytes`, or :class:`bytearray` object gets converted to an :class:`int` and all of its bits are used. With version 1, - the :func:`hash` of *x* is used instead. + the :func:`hash` of *a* is used instead. .. versionchanged:: 3.2 Moved to the version 2 scheme which uses all of the bits in a string seed. @@ -87,7 +87,8 @@ Bookkeeping functions: Functions for integers: -.. function:: randrange([start,] stop[, step]) +.. function:: randrange(stop) + randrange(start, stop[, step]) Return a randomly selected element from ``range(start, stop, step)``. This is equivalent to ``choice(range(start, stop, step))``, but doesn't actually build a diff --git a/Doc/library/socket.rst b/Doc/library/socket.rst index 0aef183872c..344a29f2a53 100644 --- a/Doc/library/socket.rst +++ b/Doc/library/socket.rst @@ -745,7 +745,8 @@ correspond to Unix system calls applicable to sockets. much data, if any, was successfully sent. -.. method:: socket.sendto(bytes[, flags], address) +.. method:: socket.sendto(bytes, address) + socket.sendto(bytes, flags, address) Send data to the socket. The socket should not be connected to a remote socket, since the destination socket is specified by *address*. The optional *flags* diff --git a/Doc/library/syslog.rst b/Doc/library/syslog.rst index 645c326678f..974ecf97f8a 100644 --- a/Doc/library/syslog.rst +++ b/Doc/library/syslog.rst @@ -17,7 +17,8 @@ library that can speak to a syslog server is available in the The module defines the following functions: -.. function:: syslog([priority,] message) +.. function:: syslog(message) + syslog(priority, message) Send the string *message* to the system logger. A trailing newline is added if necessary. Each message is tagged with a priority composed of a diff --git a/Doc/library/tkinter.tix.rst b/Doc/library/tkinter.tix.rst index 289bffd1ad4..9de73ade421 100644 --- a/Doc/library/tkinter.tix.rst +++ b/Doc/library/tkinter.tix.rst @@ -504,7 +504,7 @@ Tix Commands print(root.tix_configure()) -.. method:: tixCommand.tix_configure([cnf,] **kw) +.. method:: tixCommand.tix_configure(cnf=None, **kw) Query or modify the configuration options of the Tix application context. If no option is specified, returns a dictionary all of the available options. If From 1e7ee9dfa0cc5007da1cbc3331b799584af8b680 Mon Sep 17 00:00:00 2001 From: Antoine Pitrou Date: Fri, 14 Sep 2012 17:28:10 +0200 Subject: [PATCH 113/201] Issue #15842: the SocketIO.{readable,writable,seekable} methods now raise ValueError when the file-like object is closed. Patch by Alessandro Moura. --- Lib/socket.py | 15 +++++++++++++-- Lib/test/test_socket.py | 11 +++++++++++ Misc/NEWS | 4 ++++ 3 files changed, 28 insertions(+), 2 deletions(-) diff --git a/Lib/socket.py b/Lib/socket.py index a93cd11248c..ea56a67d555 100644 --- a/Lib/socket.py +++ b/Lib/socket.py @@ -315,12 +315,23 @@ def write(self, b): def readable(self): """True if the SocketIO is open for reading. """ - return self._reading and not self.closed + if self.closed: + raise ValueError("I/O operation on closed socket.") + return self._reading def writable(self): """True if the SocketIO is open for writing. """ - return self._writing and not self.closed + if self.closed: + raise ValueError("I/O operation on closed socket.") + return self._writing + + def seekable(self): + """True if the SocketIO is open for seeking. + """ + if self.closed: + raise ValueError("I/O operation on closed socket.") + return super().seekable() def fileno(self): """Return the file descriptor of the underlying socket. diff --git a/Lib/test/test_socket.py b/Lib/test/test_socket.py index cce0d1b6eb4..e2ed21d222b 100644 --- a/Lib/test/test_socket.py +++ b/Lib/test/test_socket.py @@ -839,6 +839,17 @@ def test_name_closed_socketio(self): fp.close() self.assertEqual(repr(fp), "<_io.BufferedReader name=-1>") + def test_unusable_closed_socketio(self): + with socket.socket() as sock: + fp = sock.makefile("rb", buffering=0) + self.assertTrue(fp.readable()) + self.assertFalse(fp.writable()) + self.assertFalse(fp.seekable()) + fp.close() + self.assertRaises(ValueError, fp.readable) + self.assertRaises(ValueError, fp.writable) + self.assertRaises(ValueError, fp.seekable) + def testListenBacklog0(self): srv = socket.socket(socket.AF_INET, socket.SOCK_STREAM) srv.bind((HOST, 0)) diff --git a/Misc/NEWS b/Misc/NEWS index 24c6b7121d5..29e2c195656 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -120,6 +120,10 @@ Core and Builtins Library ------- +- Issue #15842: the SocketIO.{readable,writable,seekable} methods now + raise ValueError when the file-like object is closed. Patch by Alessandro + Moura. + - Issue #15881: Fixed atexit hook in multiprocessing. Original patch by Chris McDonough. From e34f8a943b35f646ba3b1b5ff1835e9b3b242402 Mon Sep 17 00:00:00 2001 From: Ezio Melotti Date: Sat, 15 Sep 2012 05:51:45 +0300 Subject: [PATCH 114/201] #15932: use with statement in csv doc examples. Patch by Dario Bertini. --- Doc/library/csv.rst | 28 +++++++++++++++------------- 1 file changed, 15 insertions(+), 13 deletions(-) diff --git a/Doc/library/csv.rst b/Doc/library/csv.rst index e84e218a37e..d8df7fca27b 100644 --- a/Doc/library/csv.rst +++ b/Doc/library/csv.rst @@ -71,9 +71,10 @@ The :mod:`csv` module defines the following functions: A short usage example:: >>> import csv - >>> spamReader = csv.reader(open('eggs.csv', newline=''), delimiter=' ', quotechar='|') - >>> for row in spamReader: - ... print(', '.join(row)) + >>> with open('eggs.csv', newline='') as csvfile: + ... spamreader = csv.reader(csvfile, delimiter=' ', quotechar='|') + ... for row in spamreader: + ... print(', '.join(row)) Spam, Spam, Spam, Spam, Spam, Baked Beans Spam, Lovely Spam, Wonderful Spam @@ -99,11 +100,12 @@ The :mod:`csv` module defines the following functions: A short usage example:: - >>> import csv - >>> spamWriter = csv.writer(open('eggs.csv', 'w', newline=''), delimiter=' ', - ... quotechar='|', quoting=csv.QUOTE_MINIMAL) - >>> spamWriter.writerow(['Spam'] * 5 + ['Baked Beans']) - >>> spamWriter.writerow(['Spam', 'Lovely Spam', 'Wonderful Spam']) + import csv + with open('eggs.csv', 'w', newline='') as csvfile: + spamwriter = csv.writer(csvfile, delimiter=' ', + quotechar='|', quoting=csv.QUOTE_MINIMAL) + spamwriter.writerow(['Spam'] * 5 + ['Baked Beans']) + spamwriter.writerow(['Spam', 'Lovely Spam', 'Wonderful Spam']) .. function:: register_dialect(name[, dialect], **fmtparams) @@ -221,11 +223,11 @@ The :mod:`csv` module defines the following classes: An example for :class:`Sniffer` use:: - csvfile = open("example.csv") - dialect = csv.Sniffer().sniff(csvfile.read(1024)) - csvfile.seek(0) - reader = csv.reader(csvfile, dialect) - # ... process CSV file contents here ... + with open('example.csv') as csvfile: + dialect = csv.Sniffer().sniff(csvfile.read(1024)) + csvfile.seek(0) + reader = csv.reader(csvfile, dialect) + # ... process CSV file contents here ... The :mod:`csv` module defines the following constants: From 186d5238eaa2edfa97b1a160ee218400ebe6ff47 Mon Sep 17 00:00:00 2001 From: Ezio Melotti Date: Sat, 15 Sep 2012 08:34:08 +0300 Subject: [PATCH 115/201] #15789: mention shell-like parts of the stdlib in the subprocess docs. Patch by Chris Rebert. --- Doc/library/subprocess.rst | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/Doc/library/subprocess.rst b/Doc/library/subprocess.rst index 00b72fb6e75..9c03e06ec66 100644 --- a/Doc/library/subprocess.rst +++ b/Doc/library/subprocess.rst @@ -245,10 +245,14 @@ default values. The arguments that are most commonly needed are: :meth:`Popen.communicate` method. If *shell* is ``True``, the specified command will be executed through - the shell. This can be useful if you are using Python primarily for the + the shell. This can be useful if you are using Python primarily for the enhanced control flow it offers over most system shells and still want - access to other shell features such as filename wildcards, shell pipes and - environment variable expansion. + convenient access to other shell features such as shell pipes, filename + wildcards, environment variable expansion, and expansion of ``~`` to a + user's home directory. However, note that Python itself offers + implementations of many shell-like features (in particular, :mod:`glob`, + :mod:`fnmatch`, :func:`os.walk`, :func:`os.path.expandvars`, + :func:`os.path.expanduser`, and :mod:`shutil`). .. warning:: From 8a53dbeb7a9d0ae3e446f36e56cf9acfabe443c1 Mon Sep 17 00:00:00 2001 From: Antoine Pitrou Date: Sun, 16 Sep 2012 00:12:50 +0200 Subject: [PATCH 116/201] Issue #15526: try to fix test_startfile's inability to clean up after itself in time. Patch by Jeremy Kloth. --- Lib/test/test_startfile.py | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/Lib/test/test_startfile.py b/Lib/test/test_startfile.py index dd505bf8ced..ae9aeb9b6ce 100644 --- a/Lib/test/test_startfile.py +++ b/Lib/test/test_startfile.py @@ -10,8 +10,8 @@ import unittest from test import support import os +import sys from os import path -from time import sleep startfile = support.get_attribute(os, 'startfile') @@ -21,13 +21,12 @@ def test_nonexisting(self): self.assertRaises(OSError, startfile, "nonexisting.vbs") def test_empty(self): - empty = path.join(path.dirname(__file__), "empty.vbs") - startfile(empty) - startfile(empty, "open") - # Give the child process some time to exit before we finish. - # Otherwise the cleanup code will not be able to delete the cwd, - # because it is still in use. - sleep(0.1) + # Switch to an existing, but safe, working directory to let the + # cleanup code do its thing without permission errors. + with support.temp_cwd(path=path.dirname(sys.executable)): + empty = path.join(path.dirname(__file__), "empty.vbs") + startfile(empty) + startfile(empty, "open") def test_main(): support.run_unittest(TestCase) From 13bec9b31509a45dc692d854ca5b3ae2fb2dac87 Mon Sep 17 00:00:00 2001 From: Ezio Melotti Date: Mon, 17 Sep 2012 05:29:47 +0300 Subject: [PATCH 117/201] #15920: fix doctests in Doc/howto/regex.rst. Patch by Chris Jerdonek. --- Doc/howto/regex.rst | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/Doc/howto/regex.rst b/Doc/howto/regex.rst index 3ac03ca86a3..3beca38130f 100644 --- a/Doc/howto/regex.rst +++ b/Doc/howto/regex.rst @@ -260,7 +260,7 @@ performing string substitutions. :: >>> import re >>> p = re.compile('ab*') - >>> p + >>> p #doctest: +ELLIPSIS <_sre.SRE_Pattern object at 0x...> :func:`re.compile` also accepts an optional *flags* argument, used to enable @@ -372,7 +372,7 @@ Python interpreter, import the :mod:`re` module, and compile a RE:: >>> import re >>> p = re.compile('[a-z]+') - >>> p + >>> p #doctest: +ELLIPSIS <_sre.SRE_Pattern object at 0x...> Now, you can try matching various strings against the RE ``[a-z]+``. An empty @@ -390,7 +390,7 @@ case, :meth:`match` will return a :class:`MatchObject`, so you should store the result in a variable for later use. :: >>> m = p.match('tempo') - >>> m + >>> m #doctest: +ELLIPSIS <_sre.SRE_Match object at 0x...> Now you can query the :class:`MatchObject` for information about the matching @@ -429,7 +429,7 @@ case. :: >>> print(p.match('::: message')) None - >>> m = p.search('::: message') ; print(m) + >>> m = p.search('::: message'); print(m) #doctest: +ELLIPSIS <_sre.SRE_Match object at 0x...> >>> m.group() 'message' @@ -458,7 +458,7 @@ result. The :meth:`finditer` method returns a sequence of :class:`MatchObject` instances as an :term:`iterator`:: >>> iterator = p.finditer('12 drummers drumming, 11 ... 10 ...') - >>> iterator + >>> iterator #doctest: +ELLIPSIS >>> for match in iterator: ... print(match.span()) @@ -480,7 +480,7 @@ the RE string added as the first argument, and still return either ``None`` or a >>> print(re.match(r'From\s+', 'Fromage amk')) None - >>> re.match(r'From\s+', 'From amk Thu May 14 19:12:10 1998') + >>> re.match(r'From\s+', 'From amk Thu May 14 19:12:10 1998') #doctest: +ELLIPSIS <_sre.SRE_Match object at 0x...> Under the hood, these functions simply create a pattern object for you @@ -682,7 +682,7 @@ given location, they can obviously be matched an infinite number of times. For example, if you wish to match the word ``From`` only at the beginning of a line, the RE to use is ``^From``. :: - >>> print(re.search('^From', 'From Here to Eternity')) + >>> print(re.search('^From', 'From Here to Eternity')) #doctest: +ELLIPSIS <_sre.SRE_Match object at 0x...> >>> print(re.search('^From', 'Reciting From Memory')) None @@ -694,11 +694,11 @@ given location, they can obviously be matched an infinite number of times. Matches at the end of a line, which is defined as either the end of the string, or any location followed by a newline character. :: - >>> print(re.search('}$', '{block}')) + >>> print(re.search('}$', '{block}')) #doctest: +ELLIPSIS <_sre.SRE_Match object at 0x...> >>> print(re.search('}$', '{block} ')) None - >>> print(re.search('}$', '{block}\n')) + >>> print(re.search('}$', '{block}\n')) #doctest: +ELLIPSIS <_sre.SRE_Match object at 0x...> To match a literal ``'$'``, use ``\$`` or enclose it inside a character class, @@ -723,7 +723,7 @@ given location, they can obviously be matched an infinite number of times. match when it's contained inside another word. :: >>> p = re.compile(r'\bclass\b') - >>> print(p.search('no class at all')) + >>> print(p.search('no class at all')) #doctest: +ELLIPSIS <_sre.SRE_Match object at 0x...> >>> print(p.search('the declassified algorithm')) None @@ -741,7 +741,7 @@ given location, they can obviously be matched an infinite number of times. >>> p = re.compile('\bclass\b') >>> print(p.search('no class at all')) None - >>> print(p.search('\b' + 'class' + '\b') ) + >>> print(p.search('\b' + 'class' + '\b')) #doctest: +ELLIPSIS <_sre.SRE_Match object at 0x...> Second, inside a character class, where there's no use for this assertion, @@ -1182,9 +1182,9 @@ compute the desired replacement string and return it. In the following example, the replacement function translates decimals into hexadecimal:: - >>> def hexrepl( match ): + >>> def hexrepl(match): ... "Return the hex string for a decimal number" - ... value = int( match.group() ) + ... value = int(match.group()) ... return hex(value) ... >>> p = re.compile(r'\d+') From 26e5878d6fa8383acd2544459993502f91a1713a Mon Sep 17 00:00:00 2001 From: Ezio Melotti Date: Mon, 17 Sep 2012 08:59:36 +0200 Subject: [PATCH 118/201] #11643: fix rst markup error in site.rst. --- Doc/library/site.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Doc/library/site.rst b/Doc/library/site.rst index db96adde828..579571aca59 100644 --- a/Doc/library/site.rst +++ b/Doc/library/site.rst @@ -26,7 +26,7 @@ It starts by constructing up to four directories from a head and a tail part. For the head part, it uses ``sys.prefix`` and ``sys.exec_prefix``; empty heads are skipped. For the tail part, it uses the empty string and then :file:`lib/site-packages` (on Windows) or -:file:`lib/python|version|/site-packages` and then :file:`lib/site-python` (on +:file:`lib/python{X.Y}/site-packages` and then :file:`lib/site-python` (on Unix and Macintosh). For each of the distinct head-tail combinations, it sees if it refers to an existing directory, and if so, adds it to ``sys.path`` and also inspects the newly added path for configuration files. From 16d2b478372ba68923f8e325c75202416aaeaa93 Mon Sep 17 00:00:00 2001 From: Ezio Melotti Date: Tue, 18 Sep 2012 07:20:18 +0300 Subject: [PATCH 119/201] #15796: Fix \n in readline docstring. Patch by Serhiy Storchaka. --- Modules/_io/_iomodule.c | 2 +- Modules/_io/iobase.c | 2 +- Modules/_io/textio.c | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Modules/_io/_iomodule.c b/Modules/_io/_iomodule.c index 59876791d80..e18aec66861 100644 --- a/Modules/_io/_iomodule.c +++ b/Modules/_io/_iomodule.c @@ -264,7 +264,7 @@ PyDoc_STRVAR(open_doc, "\n" "* On output, if newline is None, any '\\n' characters written are\n" " translated to the system default line separator, os.linesep. If\n" -" newline is '' or '\n', no translation takes place. If newline is any\n" +" newline is '' or '\\n', no translation takes place. If newline is any\n" " of the other legal values, any '\\n' characters written are translated\n" " to the given string.\n" "\n" diff --git a/Modules/_io/iobase.c b/Modules/_io/iobase.c index 2bba1bfd58f..ba861467904 100644 --- a/Modules/_io/iobase.c +++ b/Modules/_io/iobase.c @@ -451,7 +451,7 @@ PyDoc_STRVAR(iobase_readline_doc, "\n" "If limit is specified, at most limit bytes will be read.\n" "\n" - "The line terminator is always b'\n' for binary files; for text\n" + "The line terminator is always b'\\n' for binary files; for text\n" "files, the newlines argument to open can be used to select the line\n" "terminator(s) recognized.\n"); diff --git a/Modules/_io/textio.c b/Modules/_io/textio.c index 490484254b3..2fbb8f30523 100644 --- a/Modules/_io/textio.c +++ b/Modules/_io/textio.c @@ -635,7 +635,7 @@ PyDoc_STRVAR(textiowrapper_doc, "\n" "* On output, if newline is None, any '\\n' characters written are\n" " translated to the system default line separator, os.linesep. If\n" - " newline is '' or '\n', no translation takes place. If newline is any\n" + " newline is '' or '\\n', no translation takes place. If newline is any\n" " of the other legal values, any '\\n' characters written are translated\n" " to the given string.\n" "\n" From 1da769a30295eb9e4acb5367b49c7cb21ca255cb Mon Sep 17 00:00:00 2001 From: Victor Stinner Date: Tue, 18 Sep 2012 22:40:03 +0200 Subject: [PATCH 120/201] What's New in Python 3.3: mention unittest.mock --- Doc/whatsnew/3.3.rst | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Doc/whatsnew/3.3.rst b/Doc/whatsnew/3.3.rst index caa838f3532..2aa41f916e2 100644 --- a/Doc/whatsnew/3.3.rst +++ b/Doc/whatsnew/3.3.rst @@ -69,6 +69,7 @@ New library modules: * :mod:`faulthandler` (helps debugging low-level crashes) * :mod:`ipaddress` (high-level objects representing IP addresses and masks) * :mod:`lzma` (compress data using the XZ / LZMA algorithm) +* :mod:`unittest.mock` (replace parts of your system under test with mock objects) * :mod:`venv` (Python :ref:`virtual environments `, as in the popular ``virtualenv`` package) @@ -923,7 +924,7 @@ New Modules faulthandler ------------ -This new debug module contains functions to dump Python tracebacks explicitly, +This new debug module :mod:`faulthandler` contains functions to dump Python tracebacks explicitly, on a fault (a crash like a segmentation fault), after a timeout, or on a user signal. Call :func:`faulthandler.enable` to install fault handlers for the :const:`SIGSEGV`, :const:`SIGFPE`, :const:`SIGABRT`, :const:`SIGBUS`, and From 9a46105a897f6a4d6e2cf74cdb215d934fab76d9 Mon Sep 17 00:00:00 2001 From: Trent Nelson Date: Tue, 18 Sep 2012 21:50:06 -0400 Subject: [PATCH 121/201] #15965: Explicitly cast AT_FDCWD as (int). Required on Solaris 10 (which defines AT_FDCWD as 0xffd19553), harmless on other platforms. --- Misc/NEWS | 3 +++ Modules/posixmodule.c | 9 ++++++++- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/Misc/NEWS b/Misc/NEWS index 990f4d6c92f..90e3cc188c5 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -10,6 +10,9 @@ What's New in Python 3.3.1 Core and Builtins ----------------- +- Issue #15965: Explicitly cast AT_FDCWD as (int). Required on Solaris 10 + (which defines AT_FDCWD as 0xffd19553), harmless on other platforms. + - Issue #15926: Fix crash after multiple reinitializations of the interpreter. - Issue #15895: Fix FILE pointer leak in one error branch of diff --git a/Modules/posixmodule.c b/Modules/posixmodule.c index 54f6cd2b22c..e0efebfe1b0 100644 --- a/Modules/posixmodule.c +++ b/Modules/posixmodule.c @@ -414,7 +414,14 @@ win32_warn_bytes_api() #ifdef AT_FDCWD -#define DEFAULT_DIR_FD AT_FDCWD +/* + * Why the (int) cast? Solaris 10 defines AT_FDCWD as 0xffd19553 (-3041965); + * without the int cast, the value gets interpreted as uint (4291925331), + * which doesn't play nicely with all the initializer lines in this file that + * look like this: + * int dir_fd = DEFAULT_DIR_FD; + */ +#define DEFAULT_DIR_FD (int)AT_FDCWD #else #define DEFAULT_DIR_FD (-100) #endif From ab02db23b1032c7b1fcf7063ae736b25e4466624 Mon Sep 17 00:00:00 2001 From: Trent Nelson Date: Tue, 18 Sep 2012 21:58:03 -0400 Subject: [PATCH 122/201] Silence compiler warnings on Solaris 10 via explicit (void *) casts. (Compiler: Solaris Studio 12.3) --- Objects/typeobject.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Objects/typeobject.c b/Objects/typeobject.c index 0fc0ad38e82..fd2ae67d860 100644 --- a/Objects/typeobject.c +++ b/Objects/typeobject.c @@ -5772,7 +5772,7 @@ update_one_slot(PyTypeObject *type, slotdef *p) descr = _PyType_Lookup(type, p->name_strobj); if (descr == NULL) { if (ptr == (void**)&type->tp_iternext) { - specific = _PyObject_NextNotImplemented; + specific = (void *)_PyObject_NextNotImplemented; } continue; } @@ -5819,7 +5819,7 @@ update_one_slot(PyTypeObject *type, slotdef *p) /* We specifically allow __hash__ to be set to None to prevent inheritance of the default implementation from object.__hash__ */ - specific = PyObject_HashNotImplemented; + specific = (void *)PyObject_HashNotImplemented; } else { use_generic = 1; @@ -6034,7 +6034,7 @@ add_operators(PyTypeObject *type) continue; if (PyDict_GetItem(dict, p->name_strobj)) continue; - if (*ptr == PyObject_HashNotImplemented) { + if (*ptr == (void *)PyObject_HashNotImplemented) { /* Classes may prevent the inheritance of the tp_hash slot by storing PyObject_HashNotImplemented in it. Make it visible as a None value for the __hash__ attribute. */ From c90111f9ab617a1dbdde8952a4b81e6eecc36e7c Mon Sep 17 00:00:00 2001 From: Ezio Melotti Date: Wed, 19 Sep 2012 08:19:12 +0300 Subject: [PATCH 123/201] #15970: xml.etree.ElementTree now serializes correctly the empty HTML elements "meta" and "param". --- Lib/test/test_xml_etree.py | 20 ++++++++++++++++++++ Lib/xml/etree/ElementTree.py | 2 +- Misc/NEWS | 3 +++ 3 files changed, 24 insertions(+), 1 deletion(-) diff --git a/Lib/test/test_xml_etree.py b/Lib/test/test_xml_etree.py index b7a996c29ca..3092f3bc11e 100644 --- a/Lib/test/test_xml_etree.py +++ b/Lib/test/test_xml_etree.py @@ -1851,6 +1851,26 @@ def check_issue10777(): >>> ET.register_namespace('test10777', 'http://myuri/') """ +def check_html_empty_elems_serialization(self): + # issue 15970 + # from http://www.w3.org/TR/html401/index/elements.html + """ + + >>> empty_elems = ['AREA', 'BASE', 'BASEFONT', 'BR', 'COL', 'FRAME', 'HR', + ... 'IMG', 'INPUT', 'ISINDEX', 'LINK', 'META', 'PARAM'] + >>> elems = ''.join('<%s />' % elem for elem in empty_elems) + >>> serialize(ET.XML('%s' % elems), method='html') + '

' + >>> serialize(ET.XML('%s' % elems.lower()), method='html') + '

' + >>> elems = ''.join('<%s>' % (elem, elem) for elem in empty_elems) + >>> serialize(ET.XML('%s' % elems), method='html') + '

' + >>> serialize(ET.XML('%s' % elems.lower()), method='html') + '

' + + """ + # -------------------------------------------------------------------- diff --git a/Lib/xml/etree/ElementTree.py b/Lib/xml/etree/ElementTree.py index f94c48c09c7..9742f32f381 100644 --- a/Lib/xml/etree/ElementTree.py +++ b/Lib/xml/etree/ElementTree.py @@ -983,7 +983,7 @@ def _serialize_xml(write, elem, qnames, namespaces): write(_escape_cdata(elem.tail)) HTML_EMPTY = ("area", "base", "basefont", "br", "col", "frame", "hr", - "img", "input", "isindex", "link", "meta" "param") + "img", "input", "isindex", "link", "meta", "param") try: HTML_EMPTY = set(HTML_EMPTY) diff --git a/Misc/NEWS b/Misc/NEWS index 29e2c195656..5113ec08ce9 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -120,6 +120,9 @@ Core and Builtins Library ------- +- Issue #15970: xml.etree.ElementTree now serializes correctly the empty HTML + elements 'meta' and 'param'. + - Issue #15842: the SocketIO.{readable,writable,seekable} methods now raise ValueError when the file-like object is closed. Patch by Alessandro Moura. From a3ccb237c7e16d15dca294f377d73ad14c48fcca Mon Sep 17 00:00:00 2001 From: Ezio Melotti Date: Thu, 20 Sep 2012 06:13:38 +0300 Subject: [PATCH 124/201] Fix rst markup in timeit docs. --- Doc/library/timeit.rst | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/Doc/library/timeit.rst b/Doc/library/timeit.rst index cd2d205b99f..1e734dfe520 100644 --- a/Doc/library/timeit.rst +++ b/Doc/library/timeit.rst @@ -31,13 +31,13 @@ The module defines the following public class: may also contain multiple statements separated by ``;`` or newlines, as long as they don't contain multi-line string literals. - To measure the execution time of the first statement, use the :meth:`timeit` - method. The :meth:`repeat` method is a convenience to call :meth:`timeit` + To measure the execution time of the first statement, use the :meth:`Timer.timeit` + method. The :meth:`repeat` method is a convenience to call :meth:`.timeit` multiple times and return a list of results. The *stmt* and *setup* parameters can also take objects that are callable without arguments. This will embed calls to them in a timer function that - will then be executed by :meth:`timeit`. Note that the timing overhead is a + will then be executed by :meth:`.timeit`. Note that the timing overhead is a little larger in this case because of the extra function calls. @@ -60,12 +60,12 @@ The module defines the following public class: .. method:: Timer.repeat(repeat=3, number=1000000) - Call :meth:`timeit` a few times. + Call :meth:`.timeit` a few times. - This is a convenience function that calls the :meth:`timeit` repeatedly, + This is a convenience function that calls the :meth:`.timeit` repeatedly, returning a list of results. The first argument specifies how many times to - call :meth:`timeit`. The second argument specifies the *number* argument for - :func:`timeit`. + call :meth:`.timeit`. The second argument specifies the *number* argument for + :meth:`.timeit`. .. note:: @@ -89,7 +89,7 @@ The module defines the following public class: .. note:: - By default, :meth:`timeit` temporarily turns off :term:`garbage collection` + By default, :meth:`.timeit` temporarily turns off :term:`garbage collection` during the timing. The advantage of this approach is that it makes independent timings more comparable. This disadvantage is that GC may be an important component of the performance of the function being measured. @@ -123,7 +123,7 @@ The module also defines three convenience functions: .. function:: timeit(stmt='pass', setup='pass', timer=, number=1000000) Create a :class:`Timer` instance with the given statement, setup code and timer - function and run its :meth:`timeit` method with *number* executions. + function and run its :meth:`.timeit` method with *number* executions. Command Line Interface @@ -243,7 +243,7 @@ attributes. :: 3.15 usec/pass To give the :mod:`timeit` module access to functions you define, you can pass a -``setup`` parameter which contains an import statement:: +*setup* parameter which contains an import statement:: def test(): """Stupid test function""" From 7598e18bf236a035fe16c62c0ca51290dfd21949 Mon Sep 17 00:00:00 2001 From: Ezio Melotti Date: Thu, 20 Sep 2012 08:33:53 +0300 Subject: [PATCH 125/201] Fix rst markup. --- Doc/c-api/import.rst | 2 +- Doc/whatsnew/3.3.rst | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/Doc/c-api/import.rst b/Doc/c-api/import.rst index c3c8f42cf01..270152ebbe7 100644 --- a/Doc/c-api/import.rst +++ b/Doc/c-api/import.rst @@ -76,7 +76,7 @@ Importing Modules UTF-8 encoded string instead of a Unicode object. .. versionchanged:: 3.3 - Negative values for **level** are no longer accepted. + Negative values for *level* are no longer accepted. .. c:function:: PyObject* PyImport_Import(PyObject *name) diff --git a/Doc/whatsnew/3.3.rst b/Doc/whatsnew/3.3.rst index 2aa41f916e2..7d7747299d2 100644 --- a/Doc/whatsnew/3.3.rst +++ b/Doc/whatsnew/3.3.rst @@ -1928,7 +1928,7 @@ Porting Python code updated to use the full name of the module instead of just the tail of the name. -* The **index** argument to :func:`__import__` now defaults to 0 instead of -1 +* The *index* argument to :func:`__import__` now defaults to 0 instead of -1 and no longer support negative values. It was an oversight when :pep:`328` was implemented that the default value remained -1. If you need to continue to perform a relative import followed by an absolute import, then perform the @@ -1996,9 +1996,9 @@ Porting C code * :c:func:`PyImport_GetMagicNumber` now returns -1 upon failure. -* As a negative value for the **level** argument to :func:`__import__` is no +* As a negative value for the *level* argument to :func:`__import__` is no longer valid, the same now holds for :c:func:`PyImport_ImportModuleLevel`. - This also means that the value of **level** used by + This also means that the value of *level* used by :c:func:`PyImport_ImportModuleEx` is now 0 instead of -1. From be54d6d2f3a4f2f73caf4980046e53bfc5a6901a Mon Sep 17 00:00:00 2001 From: Ezio Melotti Date: Thu, 20 Sep 2012 08:46:06 +0300 Subject: [PATCH 126/201] Update suspicious ignore file. --- Doc/tools/sphinxext/susp-ignored.csv | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/Doc/tools/sphinxext/susp-ignored.csv b/Doc/tools/sphinxext/susp-ignored.csv index 7317ca26087..138e00049c6 100644 --- a/Doc/tools/sphinxext/susp-ignored.csv +++ b/Doc/tools/sphinxext/susp-ignored.csv @@ -124,9 +124,8 @@ library/functions,,:step,a[start:stop:step] library/functions,,:stop,"a[start:stop, i]" library/functions,,:stop,a[start:stop:step] library/hotshot,,:lineno,"ncalls tottime percall cumtime percall filename:lineno(function)" -library/http.client,52,:port,host:port +library/http.client,,:port,host:port library/http.cookies,,`,!#$%&'*+-.^_`|~: -library/httplib,,:port,host:port library/imaplib,,:MM,"""DD-Mmm-YYYY HH:MM:SS" library/imaplib,,:SS,"""DD-Mmm-YYYY HH:MM:SS" library/inspect,,:int,">>> def foo(a, *, b:int, **kwargs):" From 8bbcb584ddc74e6b2a58ee5bda8387776300d815 Mon Sep 17 00:00:00 2001 From: Ezio Melotti Date: Thu, 20 Sep 2012 09:06:51 +0300 Subject: [PATCH 127/201] Fix markup in smtpd.rst. --- Doc/library/smtpd.rst | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/Doc/library/smtpd.rst b/Doc/library/smtpd.rst index 48da5d0cf51..bfdc7271f76 100644 --- a/Doc/library/smtpd.rst +++ b/Doc/library/smtpd.rst @@ -104,12 +104,13 @@ SMTPChannel Objects .. attribute:: addr Holds the address of the client, the second value returned by - socket.accept() + :func:`socket.accept ` .. attribute:: received_lines Holds a list of the line strings (decoded using UTF-8) received from - the client. The lines have their "\\r\\n" line ending translated to "\\n". + the client. The lines have their ``"\r\n"`` line ending translated to + ``"\n"``. .. attribute:: smtp_state @@ -134,12 +135,12 @@ SMTPChannel Objects .. attribute:: received_data Holds a string containing all of the data sent by the client during the - DATA state, up to but not including the terminating "\r\n.\r\n". + DATA state, up to but not including the terminating ``"\r\n.\r\n"``. .. attribute:: fqdn Holds the fully-qualified domain name of the server as returned by - ``socket.getfqdn()``. + :func:`socket.getfqdn`. .. attribute:: peer @@ -166,5 +167,5 @@ SMTPChannel Objects :attr:`received_data`, but not the greeting. DATA Sets the internal state to :attr:`DATA` and stores remaining lines from the client in :attr:`received_data` until the terminator - "\r\n.\r\n" is received. + ``"\r\n.\r\n"`` is received. ======== =================================================================== From 694f2331c6959872e05f76c757799be0c4b00748 Mon Sep 17 00:00:00 2001 From: Ezio Melotti Date: Thu, 20 Sep 2012 09:47:03 +0300 Subject: [PATCH 128/201] Fix a few quotes/backslashes. --- Doc/faq/windows.rst | 10 +++++----- Doc/library/doctest.rst | 2 +- Doc/library/pyexpat.rst | 2 +- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/Doc/faq/windows.rst b/Doc/faq/windows.rst index 68a1b5c153c..84e3ff47391 100644 --- a/Doc/faq/windows.rst +++ b/Doc/faq/windows.rst @@ -464,13 +464,13 @@ to console subprocesses which are designed to handle those signals. See Why does os.path.isdir() fail on NT shared directories? ------------------------------------------------------- -The solution appears to be always append the "\\" on the end of shared -drives. +In order to work correctly, :func:`os.path.isdir` requires a ``"\\"`` at the +end of the shared drive:: >>> import os - >>> os.path.isdir( '\\\\rorschach\\public') + >>> os.path.isdir('\\\\rorschach\\public') 0 - >>> os.path.isdir( '\\\\rorschach\\public\\') + >>> os.path.isdir('\\\\rorschach\\public\\') 1 It helps to think of share points as being like drive letters. Example:: @@ -480,7 +480,7 @@ It helps to think of share points as being like drive letters. Example:: k:\media is a directory k:\media\ is not a directory -The same rules apply if you substitute "k:" with "\\conky\foo":: +The same rules apply if you substitute ``"k:"`` with ``"\\conky\foo"``:: \\conky\foo is not a directory \\conky\foo\ is a directory diff --git a/Doc/library/doctest.rst b/Doc/library/doctest.rst index cad03bd2a1b..ed53f060517 100644 --- a/Doc/library/doctest.rst +++ b/Doc/library/doctest.rst @@ -338,7 +338,7 @@ The fine print: Backslashes in a raw docstring: m\n Otherwise, the backslash will be interpreted as part of the string. For example, - the "\\" above would be interpreted as a newline character. Alternatively, you + the ``\n`` above would be interpreted as a newline character. Alternatively, you can double each backslash in the doctest version (and not use a raw string):: >>> def f(x): diff --git a/Doc/library/pyexpat.rst b/Doc/library/pyexpat.rst index a648cfa5290..861546c2e87 100644 --- a/Doc/library/pyexpat.rst +++ b/Doc/library/pyexpat.rst @@ -402,7 +402,7 @@ otherwise stated. .. method:: xmlparser.CommentHandler(data) Called for comments. *data* is the text of the comment, excluding the leading - '````'. + ``''``. .. method:: xmlparser.StartCdataSectionHandler() From 5cb31c9277500745b443dacf183fd16c7704577b Mon Sep 17 00:00:00 2001 From: Christian Heimes Date: Thu, 20 Sep 2012 12:42:54 +0200 Subject: [PATCH 129/201] Issue #15977: Fix memory leak in Modules/_ssl.c when the function _set_npn_protocols() is called multiple times --- Misc/NEWS | 3 +++ Modules/_ssl.c | 7 +++++++ 2 files changed, 10 insertions(+) diff --git a/Misc/NEWS b/Misc/NEWS index 990f4d6c92f..63434ba81e4 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -68,6 +68,9 @@ Library Extension Modules ----------------- +- Issue #15977: Fix memory leak in Modules/_ssl.c when the function + _set_npn_protocols() is called multiple times, thanks to Daniel Sommermann. + Tests ----- diff --git a/Modules/_ssl.c b/Modules/_ssl.c index 456b1f1eadb..ad22c5299ce 100644 --- a/Modules/_ssl.c +++ b/Modules/_ssl.c @@ -1713,6 +1713,9 @@ context_new(PyTypeObject *type, PyObject *args, PyObject *kwds) return NULL; } self->ctx = ctx; +#ifdef OPENSSL_NPN_NEGOTIATED + self->npn_protocols = NULL; +#endif /* Defaults */ SSL_CTX_set_verify(self->ctx, SSL_VERIFY_NONE, NULL); SSL_CTX_set_options(self->ctx, @@ -1812,6 +1815,10 @@ _set_npn_protocols(PySSLContext *self, PyObject *args) if (!PyArg_ParseTuple(args, "y*:set_npn_protocols", &protos)) return NULL; + if (self->npn_protocols != NULL) { + PyMem_Free(self->npn_protocols); + } + self->npn_protocols = PyMem_Malloc(protos.len); if (self->npn_protocols == NULL) { PyBuffer_Release(&protos); From ca8aa4acf6755dd012706e1e38fb737ae83ab5c6 Mon Sep 17 00:00:00 2001 From: Antoine Pitrou Date: Thu, 20 Sep 2012 20:56:47 +0200 Subject: [PATCH 130/201] Issue #15144: Fix possible integer overflow when handling pointers as integer values, by using Py_uintptr_t instead of size_t. Patch by Serhiy Storchaka. --- Include/objimpl.h | 9 +++------ Include/pymacro.h | 14 ++++++++++++++ Misc/NEWS | 4 ++++ Modules/_elementtree.c | 2 +- Objects/obmalloc.c | 7 ++----- Objects/stringlib/codecs.h | 14 +++++--------- Objects/stringlib/fastsearch.h | 3 +-- Objects/stringlib/find_max_char.h | 11 ++++------- Objects/unicodeobject.c | 15 ++++++--------- Parser/node.c | 2 +- Python/pyarena.c | 8 +++----- 11 files changed, 44 insertions(+), 45 deletions(-) diff --git a/Include/objimpl.h b/Include/objimpl.h index b1a624c8ebf..3d5f5094048 100644 --- a/Include/objimpl.h +++ b/Include/objimpl.h @@ -181,12 +181,9 @@ PyAPI_FUNC(PyVarObject *) _PyObject_NewVar(PyTypeObject *, Py_ssize_t); #endif #define _PyObject_VAR_SIZE(typeobj, nitems) \ - (size_t) \ - ( ( (typeobj)->tp_basicsize + \ - (nitems)*(typeobj)->tp_itemsize + \ - (SIZEOF_VOID_P - 1) \ - ) & ~(SIZEOF_VOID_P - 1) \ - ) + _Py_SIZE_ROUND_UP((typeobj)->tp_basicsize + \ + (nitems)*(typeobj)->tp_itemsize, \ + SIZEOF_VOID_P) #define PyObject_NEW(type, typeobj) \ ( (type *) PyObject_Init( \ diff --git a/Include/pymacro.h b/Include/pymacro.h index 1dc0c61653c..ce1cbefb73e 100644 --- a/Include/pymacro.h +++ b/Include/pymacro.h @@ -52,4 +52,18 @@ #define PyDoc_STR(str) "" #endif +/* Below "a" is a power of 2. */ +/* Round down size "n" to be a multiple of "a". */ +#define _Py_SIZE_ROUND_DOWN(n, a) ((size_t)(n) & ~(size_t)((a) - 1)) +/* Round up size "n" to be a multiple of "a". */ +#define _Py_SIZE_ROUND_UP(n, a) (((size_t)(n) + \ + (size_t)((a) - 1)) & ~(size_t)((a) - 1)) +/* Round pointer "p" down to the closest "a"-aligned address <= "p". */ +#define _Py_ALIGN_DOWN(p, a) ((void *)((Py_uintptr_t)(p) & ~(Py_uintptr_t)((a) - 1))) +/* Round pointer "p" up to the closest "a"-aligned address >= "p". */ +#define _Py_ALIGN_UP(p, a) ((void *)(((Py_uintptr_t)(p) + \ + (Py_uintptr_t)((a) - 1)) & ~(Py_uintptr_t)((a) - 1))) +/* Check if pointer "p" is aligned to "a"-bytes boundary. */ +#define _Py_IS_ALIGNED(p, a) (!((Py_uintptr_t)(p) & (Py_uintptr_t)((a) - 1))) + #endif /* Py_PYMACRO_H */ diff --git a/Misc/NEWS b/Misc/NEWS index da84c3a4e45..04580d71f42 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -10,6 +10,10 @@ What's New in Python 3.3.1 Core and Builtins ----------------- +- Issue #15144: Fix possible integer overflow when handling pointers as + integer values, by using Py_uintptr_t instead of size_t. Patch by + Serhiy Storchaka. + - Issue #15965: Explicitly cast AT_FDCWD as (int). Required on Solaris 10 (which defines AT_FDCWD as 0xffd19553), harmless on other platforms. diff --git a/Modules/_elementtree.c b/Modules/_elementtree.c index 6f17d800ba8..43f9d9b28dc 100644 --- a/Modules/_elementtree.c +++ b/Modules/_elementtree.c @@ -98,7 +98,7 @@ do { memory -= size; printf("%8d - %s\n", memory, comment); } while (0) info. */ #define JOIN_GET(p) ((Py_uintptr_t) (p) & 1) #define JOIN_SET(p, flag) ((void*) ((Py_uintptr_t) (JOIN_OBJ(p)) | (flag))) -#define JOIN_OBJ(p) ((PyObject*) ((Py_uintptr_t) (p) & ~1)) +#define JOIN_OBJ(p) ((PyObject*) ((Py_uintptr_t) (p) & ~(Py_uintptr_t)1)) /* glue functions (see the init function for details) */ static PyObject* elementtree_parseerror_obj; diff --git a/Objects/obmalloc.c b/Objects/obmalloc.c index 925482156de..6225ebbbf13 100644 --- a/Objects/obmalloc.c +++ b/Objects/obmalloc.c @@ -138,7 +138,6 @@ static int running_on_valgrind = -1; */ #define ALIGNMENT 8 /* must be 2^N */ #define ALIGNMENT_SHIFT 3 -#define ALIGNMENT_MASK (ALIGNMENT - 1) /* Return the number of bytes in size class I, as a uint. */ #define INDEX2SIZE(I) (((uint)(I) + 1) << ALIGNMENT_SHIFT) @@ -314,14 +313,12 @@ struct arena_object { struct arena_object* prevarena; }; -#undef ROUNDUP -#define ROUNDUP(x) (((x) + ALIGNMENT_MASK) & ~ALIGNMENT_MASK) -#define POOL_OVERHEAD ROUNDUP(sizeof(struct pool_header)) +#define POOL_OVERHEAD _Py_SIZE_ROUND_UP(sizeof(struct pool_header), ALIGNMENT) #define DUMMY_SIZE_IDX 0xffff /* size class of newly cached pools */ /* Round pointer P down to the closest pool-aligned address <= P, as a poolp */ -#define POOL_ADDR(P) ((poolp)((uptr)(P) & ~(uptr)POOL_SIZE_MASK)) +#define POOL_ADDR(P) ((poolp)_Py_ALIGN_DOWN((P), POOL_SIZE)) /* Return total number of blocks in pool of size index I, as a uint. */ #define NUMBLOCKS(I) ((uint)(POOL_SIZE - POOL_OVERHEAD) / INDEX2SIZE(I)) diff --git a/Objects/stringlib/codecs.h b/Objects/stringlib/codecs.h index 7d55f49a003..2a01089c0fc 100644 --- a/Objects/stringlib/codecs.h +++ b/Objects/stringlib/codecs.h @@ -2,9 +2,6 @@ #if STRINGLIB_IS_UNICODE -/* Mask to check or force alignment of a pointer to C 'long' boundaries */ -#define LONG_PTR_MASK (size_t) (SIZEOF_LONG - 1) - /* Mask to quickly check whether a C 'long' contains a non-ASCII, UTF8-encoded char. */ #if (SIZEOF_LONG == 8) @@ -25,7 +22,7 @@ STRINGLIB(utf8_decode)(const char **inptr, const char *end, { Py_UCS4 ch; const char *s = *inptr; - const char *aligned_end = (const char *) ((size_t) end & ~LONG_PTR_MASK); + const char *aligned_end = (const char *) _Py_ALIGN_DOWN(end, SIZEOF_LONG); STRINGLIB_CHAR *p = dest + *outpos; while (s < end) { @@ -39,7 +36,7 @@ STRINGLIB(utf8_decode)(const char **inptr, const char *end, First, check if we can do an aligned read, as most CPUs have a penalty for unaligned reads. */ - if (!((size_t) s & LONG_PTR_MASK)) { + if (_Py_IS_ALIGNED(s, SIZEOF_LONG)) { /* Help register allocation */ register const char *_s = s; register STRINGLIB_CHAR *_p = p; @@ -453,7 +450,7 @@ STRINGLIB(utf16_decode)(const unsigned char **inptr, const unsigned char *e, { Py_UCS4 ch; const unsigned char *aligned_end = - (const unsigned char *) ((size_t) e & ~LONG_PTR_MASK); + (const unsigned char *) _Py_ALIGN_DOWN(e, SIZEOF_LONG); const unsigned char *q = *inptr; STRINGLIB_CHAR *p = dest + *outpos; /* Offsets from q for retrieving byte pairs in the right order. */ @@ -468,7 +465,7 @@ STRINGLIB(utf16_decode)(const unsigned char **inptr, const unsigned char *e, Py_UCS4 ch2; /* First check for possible aligned read of a C 'long'. Unaligned reads are more expensive, better to defer to another iteration. */ - if (!((size_t) q & LONG_PTR_MASK)) { + if (_Py_IS_ALIGNED(q, SIZEOF_LONG)) { /* Fast path for runs of in-range non-surrogate chars. */ register const unsigned char *_q = q; while (_q < aligned_end) { @@ -565,7 +562,6 @@ STRINGLIB(utf16_decode)(const unsigned char **inptr, const unsigned char *e, #undef FAST_CHAR_MASK #undef STRIPPED_MASK #undef SWAB -#undef LONG_PTR_MASK Py_LOCAL_INLINE(void) @@ -588,7 +584,7 @@ STRINGLIB(utf16_encode)(unsigned short *out, _PyUnicode_CONVERT_BYTES(STRINGLIB_CHAR, unsigned short, in, end, out); # endif } else { - const STRINGLIB_CHAR *unrolled_end = in + (len & ~ (Py_ssize_t) 3); + const STRINGLIB_CHAR *unrolled_end = in + _Py_SIZE_ROUND_DOWN(len, 4); while (in < unrolled_end) { out[0] = SWAB2(in[0]); out[1] = SWAB2(in[1]); diff --git a/Objects/stringlib/fastsearch.h b/Objects/stringlib/fastsearch.h index 5b8d5dbcddd..ecf885e7e12 100644 --- a/Objects/stringlib/fastsearch.h +++ b/Objects/stringlib/fastsearch.h @@ -43,8 +43,7 @@ STRINGLIB(fastsearch_memchr_1char)(const STRINGLIB_CHAR* s, Py_ssize_t n, #define DO_MEMCHR(memchr, s, needle, nchars) do { \ candidate = memchr((const void *) (s), (needle), (nchars) * sizeof(STRINGLIB_CHAR)); \ - found = (const STRINGLIB_CHAR *) \ - ((Py_ssize_t) candidate & (~ ((Py_ssize_t) sizeof(STRINGLIB_CHAR) - 1))); \ + found = (const STRINGLIB_CHAR *) _Py_ALIGN_DOWN(candidate, sizeof(STRINGLIB_CHAR)); \ } while (0) if (mode == FAST_SEARCH) { diff --git a/Objects/stringlib/find_max_char.h b/Objects/stringlib/find_max_char.h index 9e344a0de95..06559c8a9ff 100644 --- a/Objects/stringlib/find_max_char.h +++ b/Objects/stringlib/find_max_char.h @@ -2,9 +2,6 @@ #if STRINGLIB_IS_UNICODE -/* Mask to check or force alignment of a pointer to C 'long' boundaries */ -#define LONG_PTR_MASK (size_t) (SIZEOF_LONG - 1) - /* Mask to quickly check whether a C 'long' contains a non-ASCII, UTF8-encoded char. */ #if (SIZEOF_LONG == 8) @@ -21,10 +18,11 @@ Py_LOCAL_INLINE(Py_UCS4) STRINGLIB(find_max_char)(const STRINGLIB_CHAR *begin, const STRINGLIB_CHAR *end) { const unsigned char *p = (const unsigned char *) begin; - const unsigned char *aligned_end = (const unsigned char *) ((size_t) end & ~LONG_PTR_MASK); + const unsigned char *aligned_end = + (const unsigned char *) _Py_ALIGN_DOWN(end, SIZEOF_LONG); while (p < end) { - if (!((size_t) p & LONG_PTR_MASK)) { + if (_Py_IS_ALIGNED(p, SIZEOF_LONG)) { /* Help register allocation */ register const unsigned char *_p = p; while (_p < aligned_end) { @@ -43,7 +41,6 @@ STRINGLIB(find_max_char)(const STRINGLIB_CHAR *begin, const STRINGLIB_CHAR *end) return 127; } -#undef LONG_PTR_MASK #undef ASCII_CHAR_MASK #else /* STRINGLIB_SIZEOF_CHAR == 1 */ @@ -72,7 +69,7 @@ STRINGLIB(find_max_char)(const STRINGLIB_CHAR *begin, const STRINGLIB_CHAR *end) register Py_UCS4 mask; Py_ssize_t n = end - begin; const STRINGLIB_CHAR *p = begin; - const STRINGLIB_CHAR *unrolled_end = begin + (n & ~ (Py_ssize_t) 3); + const STRINGLIB_CHAR *unrolled_end = begin + _Py_SIZE_ROUND_DOWN(n, 4); Py_UCS4 max_char; max_char = MAX_CHAR_ASCII; diff --git a/Objects/unicodeobject.c b/Objects/unicodeobject.c index 61f743ebda6..748508b2788 100644 --- a/Objects/unicodeobject.c +++ b/Objects/unicodeobject.c @@ -159,7 +159,7 @@ extern "C" { const from_type *_end = (end); \ Py_ssize_t n = (_end) - (_iter); \ const from_type *_unrolled_end = \ - _iter + (n & ~ (Py_ssize_t) 3); \ + _iter + _Py_SIZE_ROUND_DOWN(n, 4); \ while (_iter < (_unrolled_end)) { \ _to[0] = (to_type) _iter[0]; \ _to[1] = (to_type) _iter[1]; \ @@ -4635,9 +4635,6 @@ PyUnicode_DecodeUTF8(const char *s, #include "stringlib/codecs.h" #include "stringlib/undef.h" -/* Mask to check or force alignment of a pointer to C 'long' boundaries */ -#define LONG_PTR_MASK (size_t) (SIZEOF_LONG - 1) - /* Mask to quickly check whether a C 'long' contains a non-ASCII, UTF8-encoded char. */ #if (SIZEOF_LONG == 8) @@ -4652,11 +4649,11 @@ static Py_ssize_t ascii_decode(const char *start, const char *end, Py_UCS1 *dest) { const char *p = start; - const char *aligned_end = (const char *) ((size_t) end & ~LONG_PTR_MASK); + const char *aligned_end = (const char *) _Py_ALIGN_DOWN(end, SIZEOF_LONG); #if SIZEOF_LONG <= SIZEOF_VOID_P - assert(!((size_t) dest & LONG_PTR_MASK)); - if (!((size_t) p & LONG_PTR_MASK)) { + assert(_Py_IS_ALIGNED(dest, SIZEOF_LONG)); + if (_Py_IS_ALIGNED(p, SIZEOF_LONG)) { /* Fast path, see in STRINGLIB(utf8_decode) for an explanation. */ /* Help register allocation */ @@ -4682,7 +4679,7 @@ ascii_decode(const char *start, const char *end, Py_UCS1 *dest) while (p < end) { /* Fast path, see in STRINGLIB(utf8_decode) in stringlib/codecs.h for an explanation. */ - if (!((size_t) p & LONG_PTR_MASK)) { + if (_Py_IS_ALIGNED(p, SIZEOF_LONG)) { /* Help register allocation */ register const char *_p = p; while (_p < aligned_end) { @@ -5390,7 +5387,7 @@ _PyUnicode_EncodeUTF16(PyObject *str, return NULL; /* output buffer is 2-bytes aligned */ - assert(((Py_uintptr_t)PyBytes_AS_STRING(v) & 1) == 0); + assert(_Py_IS_ALIGNED(PyBytes_AS_STRING(v), 2)); out = (unsigned short *)PyBytes_AS_STRING(v); if (byteorder == 0) *out++ = 0xFEFF; diff --git a/Parser/node.c b/Parser/node.c index 0dea30f7378..1e4f0dab4b6 100644 --- a/Parser/node.c +++ b/Parser/node.c @@ -71,7 +71,7 @@ fancy_roundup(int n) * capacity. The code is tricky to avoid that. */ #define XXXROUNDUP(n) ((n) <= 1 ? (n) : \ - (n) <= 128 ? (((n) + 3) & ~3) : \ + (n) <= 128 ? _Py_SIZE_ROUND_UP((n), 4) : \ fancy_roundup(n)) diff --git a/Python/pyarena.c b/Python/pyarena.c index 5a255ae497e..bb2fd1e42ab 100644 --- a/Python/pyarena.c +++ b/Python/pyarena.c @@ -12,8 +12,6 @@ #define DEFAULT_BLOCK_SIZE 8192 #define ALIGNMENT 8 -#define ALIGNMENT_MASK (ALIGNMENT - 1) -#define ROUNDUP(x) (((x) + ALIGNMENT_MASK) & ~ALIGNMENT_MASK) typedef struct _block { /* Total number of bytes owned by this block available to pass out. @@ -85,8 +83,8 @@ block_new(size_t size) b->ab_size = size; b->ab_mem = (void *)(b + 1); b->ab_next = NULL; - b->ab_offset = ROUNDUP((Py_uintptr_t)(b->ab_mem)) - - (Py_uintptr_t)(b->ab_mem); + b->ab_offset = (char *)_Py_ALIGN_UP(b->ab_mem, ALIGNMENT) - + (char *)(b->ab_mem); return b; } @@ -104,7 +102,7 @@ block_alloc(block *b, size_t size) { void *p; assert(b); - size = ROUNDUP(size); + size = _Py_SIZE_ROUND_UP(size, ALIGNMENT); if (b->ab_offset + size > b->ab_size) { /* If we need to allocate more memory than will fit in the default block, allocate a one-off block that is From 4e12ad19c984dc8dfdb8c326b0ea44c490408579 Mon Sep 17 00:00:00 2001 From: Mark Dickinson Date: Thu, 20 Sep 2012 20:51:14 +0100 Subject: [PATCH 131/201] Issue 15985: fix round argument names in documentation. Thanks Chris Jerdonek. --- Doc/library/functions.rst | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/Doc/library/functions.rst b/Doc/library/functions.rst index be5d4c7e278..17a0d1bccb9 100644 --- a/Doc/library/functions.rst +++ b/Doc/library/functions.rst @@ -1132,18 +1132,18 @@ are always available. They are listed here in alphabetical order. arguments starting at ``0``). -.. function:: round(x[, n]) +.. function:: round(number[, ndigits]) - Return the floating point value *x* rounded to *n* digits after the decimal - point. If *n* is omitted, it defaults to zero. Delegates to - ``x.__round__(n)``. + Return the floating point value *number* rounded to *ndigits* digits after + the decimal point. If *ndigits* is omitted, it defaults to zero. Delegates + to ``number.__round__(ndigits)``. For the built-in types supporting :func:`round`, values are rounded to the - closest multiple of 10 to the power minus *n*; if two multiples are equally - close, rounding is done toward the even choice (so, for example, both - ``round(0.5)`` and ``round(-0.5)`` are ``0``, and ``round(1.5)`` is ``2``). - The return value is an integer if called with one argument, otherwise of the - same type as *x*. + closest multiple of 10 to the power minus *ndigits*; if two multiples are + equally close, rounding is done toward the even choice (so, for example, + both ``round(0.5)`` and ``round(-0.5)`` are ``0``, and ``round(1.5)`` is + ``2``). The return value is an integer if called with one argument, + otherwise of the same type as *number*. .. note:: From c286e58044839bd8d946b12fee454ae861e6cdbc Mon Sep 17 00:00:00 2001 From: Mark Dickinson Date: Thu, 20 Sep 2012 21:29:28 +0100 Subject: [PATCH 132/201] Issue 15959: Fix type mismatch for quick{_neg}_int_allocs. Thanks Serhiy Storchaka. --- Objects/longobject.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Objects/longobject.c b/Objects/longobject.c index f2f63afbf69..dfedfb7bfec 100644 --- a/Objects/longobject.c +++ b/Objects/longobject.c @@ -30,7 +30,7 @@ */ static PyLongObject small_ints[NSMALLNEGINTS + NSMALLPOSINTS]; #ifdef COUNT_ALLOCS -int quick_int_allocs, quick_neg_int_allocs; +Py_ssize_t quick_int_allocs, quick_neg_int_allocs; #endif static PyObject * From 3ec153681e4e5553fc6882699beb5af6d45c75e6 Mon Sep 17 00:00:00 2001 From: Alexander Belopolsky Date: Thu, 20 Sep 2012 16:39:33 -0400 Subject: [PATCH 133/201] Issue #15973: Fixed segmentation fault on timezone comparison to other types. --- Lib/datetime.py | 2 ++ Lib/test/datetimetester.py | 2 ++ Modules/_datetimemodule.c | 10 +++++++--- 3 files changed, 11 insertions(+), 3 deletions(-) diff --git a/Lib/datetime.py b/Lib/datetime.py index 65f95d20308..bf23e5002d9 100644 --- a/Lib/datetime.py +++ b/Lib/datetime.py @@ -1821,6 +1821,8 @@ def __getinitargs__(self): return (self._offset, self._name) def __eq__(self, other): + if type(other) != timezone: + return False return self._offset == other._offset def __hash__(self): diff --git a/Lib/test/datetimetester.py b/Lib/test/datetimetester.py index 3fd6799b579..bb18630339d 100644 --- a/Lib/test/datetimetester.py +++ b/Lib/test/datetimetester.py @@ -235,6 +235,8 @@ def test_comparison(self): self.assertEqual(timezone(-5 * HOUR), timezone(-5 * HOUR, 'EST')) with self.assertRaises(TypeError): timezone(ZERO) < timezone(ZERO) self.assertIn(timezone(ZERO), {timezone(ZERO)}) + self.assertTrue(timezone(ZERO) != None) + self.assertFalse(timezone(ZERO) == None) def test_aware_datetime(self): # test that timezone instances can be used by datetime diff --git a/Modules/_datetimemodule.c b/Modules/_datetimemodule.c index 8f571adf371..444cc00d2c5 100644 --- a/Modules/_datetimemodule.c +++ b/Modules/_datetimemodule.c @@ -3243,9 +3243,13 @@ static PyObject * timezone_richcompare(PyDateTime_TimeZone *self, PyDateTime_TimeZone *other, int op) { - if (op != Py_EQ && op != Py_NE) { - Py_INCREF(Py_NotImplemented); - return Py_NotImplemented; + if (op != Py_EQ && op != Py_NE) + Py_RETURN_NOTIMPLEMENTED; + if (Py_TYPE(other) != &PyDateTime_TimeZoneType) { + if (op == Py_EQ) + Py_RETURN_FALSE; + else + Py_RETURN_TRUE; } return delta_richcompare(self->offset, other->offset, op); } From 57caede4705f5e3121f9f90435009ef8e7269a98 Mon Sep 17 00:00:00 2001 From: Alexander Belopolsky Date: Thu, 20 Sep 2012 17:23:46 -0400 Subject: [PATCH 134/201] Issue #15973: fixed 3.2 backport. --- Modules/_datetimemodule.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/Modules/_datetimemodule.c b/Modules/_datetimemodule.c index 444cc00d2c5..ef2f7b306a0 100644 --- a/Modules/_datetimemodule.c +++ b/Modules/_datetimemodule.c @@ -3243,8 +3243,10 @@ static PyObject * timezone_richcompare(PyDateTime_TimeZone *self, PyDateTime_TimeZone *other, int op) { - if (op != Py_EQ && op != Py_NE) - Py_RETURN_NOTIMPLEMENTED; + if (op != Py_EQ && op != Py_NE) { + Py_INCREF(Py_NotImplemented); + return Py_NotImplemented; + } if (Py_TYPE(other) != &PyDateTime_TimeZoneType) { if (op == Py_EQ) Py_RETURN_FALSE; From f8a9a837c405ab5e8c8ad892188850480da9d0b1 Mon Sep 17 00:00:00 2001 From: Benjamin Peterson Date: Thu, 20 Sep 2012 23:48:23 -0400 Subject: [PATCH 135/201] remove gdb noise about linux-vdso --- Lib/test/test_gdb.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/Lib/test/test_gdb.py b/Lib/test/test_gdb.py index a02f5c754ef..fb8261beff0 100644 --- a/Lib/test/test_gdb.py +++ b/Lib/test/test_gdb.py @@ -144,6 +144,11 @@ def get_stack_trace(self, source=None, script=None, err = err.replace("warning: Cannot initialize thread debugging" " library: Debugger service failed\n", '') + err = err.replace('warning: Could not load shared library symbols for ' + 'linux-vdso.so.1.\n' + 'Do you need "set solib-search-path" or ' + '"set sysroot"?\n', + '') # Ensure no unexpected error messages: self.assertEqual(err, '') From 98b1c446d533f432352fa1970a14f5bf5dab68cb Mon Sep 17 00:00:00 2001 From: "doko@ubuntu.com" Date: Fri, 21 Sep 2012 13:52:29 +0200 Subject: [PATCH 136/201] - Issue #11715: Fix multiarch detection without having Debian development tools (dpkg-dev) installed. --- Misc/NEWS | 3 +++ setup.py | 21 +++++++++++++++++++++ 2 files changed, 24 insertions(+) diff --git a/Misc/NEWS b/Misc/NEWS index 5113ec08ce9..c7e18277fbd 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -541,6 +541,9 @@ Tests Build ----- +- Issue #11715: Fix multiarch detection without having Debian development + tools (dpkg-dev) installed. + - Issue #15819: Make sure we can build Python out-of-tree from a readonly source directory. (Somewhat related to Issue #9860.) diff --git a/setup.py b/setup.py index 10ce79e29c2..0dea9248e6f 100644 --- a/setup.py +++ b/setup.py @@ -376,6 +376,27 @@ def get_platform(self): def add_multiarch_paths(self): # Debian/Ubuntu multiarch support. # https://wiki.ubuntu.com/MultiarchSpec + cc = sysconfig.get_config_var('CC') + tmpfile = os.path.join(self.build_temp, 'multiarch') + if not os.path.exists(self.build_temp): + os.makedirs(self.build_temp) + ret = os.system( + '%s -print-multiarch > %s 2> /dev/null' % (cc, tmpfile)) + multiarch_path_component = '' + try: + if ret >> 8 == 0: + with open(tmpfile) as fp: + multiarch_path_component = fp.readline().strip() + finally: + os.unlink(tmpfile) + + if multiarch_path_component != '': + add_dir_to_list(self.compiler.library_dirs, + '/usr/lib/' + multiarch_path_component) + add_dir_to_list(self.compiler.include_dirs, + '/usr/include/' + multiarch_path_component) + return + if not find_executable('dpkg-architecture'): return tmpfile = os.path.join(self.build_temp, 'multiarch') From 0847db7c01cb07011d3ab7a4de43cc90417637af Mon Sep 17 00:00:00 2001 From: Ezio Melotti Date: Fri, 21 Sep 2012 16:30:22 +0300 Subject: [PATCH 137/201] #15980: properly escape newlines in docstrings. Patch by Serhiy Storchaka. --- Lib/http/cookiejar.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Lib/http/cookiejar.py b/Lib/http/cookiejar.py index a516d735b8a..b6cfc355c96 100644 --- a/Lib/http/cookiejar.py +++ b/Lib/http/cookiejar.py @@ -1825,7 +1825,7 @@ def lwp_cookie_str(cookie): class LWPCookieJar(FileCookieJar): """ - The LWPCookieJar saves a sequence of"Set-Cookie3" lines. + The LWPCookieJar saves a sequence of "Set-Cookie3" lines. "Set-Cookie3" is the format used by the libwww-perl libary, not known to be compatible with any browser, but which is easy to read and doesn't lose information about RFC 2965 cookies. @@ -1837,7 +1837,7 @@ class LWPCookieJar(FileCookieJar): """ def as_lwp_str(self, ignore_discard=True, ignore_expires=True): - """Return cookies as a string of "\n"-separated "Set-Cookie3" headers. + """Return cookies as a string of "\\n"-separated "Set-Cookie3" headers. ignore_discard and ignore_expires: see docstring for FileCookieJar.save From e418d760897cc6f6f4dedb364f80f3f52525ffa6 Mon Sep 17 00:00:00 2001 From: Ezio Melotti Date: Fri, 21 Sep 2012 16:48:12 +0300 Subject: [PATCH 138/201] #15304: fix wrong warning message in test.support.temp_cwd(). --- Lib/test/support.py | 2 +- Misc/NEWS | 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/Lib/test/support.py b/Lib/test/support.py index d88562e907d..e1ec9e2d1f7 100644 --- a/Lib/test/support.py +++ b/Lib/test/support.py @@ -600,7 +600,7 @@ def temp_cwd(name='tempcwd', quiet=False, path=None): except OSError: if not quiet: raise - warnings.warn('tests may fail, unable to change the CWD to ' + name, + warnings.warn('tests may fail, unable to change the CWD to ' + path, RuntimeWarning, stacklevel=3) try: yield os.getcwd() diff --git a/Misc/NEWS b/Misc/NEWS index c7e18277fbd..bebab93611d 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -494,6 +494,9 @@ Extension Modules Tests ----- +- Issue #15304: Fix warning message when os.chdir() fails inside + test.support.temp_cwd(). Patch by Chris Jerdonek. + - Issue #15802: Fix test logic in TestMaildir.test_create_tmp. Patch by Serhiy Storchaka. From 85710a40e7e9eab86060bedc3762ccf9ca8d26ca Mon Sep 17 00:00:00 2001 From: Ezio Melotti Date: Fri, 21 Sep 2012 17:26:35 +0300 Subject: [PATCH 139/201] =?UTF-8?q?#15421:=20fix=20an=20OverflowError=20in?= =?UTF-8?q?=20Calendar.itermonthdates()=20after=20datetime.MAXYEAR.=20=20P?= =?UTF-8?q?atch=20by=20C=C3=A9dric=20Krier.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Lib/calendar.py | 6 +++++- Lib/test/test_calendar.py | 6 ++++++ Misc/NEWS | 3 +++ 3 files changed, 14 insertions(+), 1 deletion(-) diff --git a/Lib/calendar.py b/Lib/calendar.py index 0301d6b5d6c..3bbf399649f 100644 --- a/Lib/calendar.py +++ b/Lib/calendar.py @@ -161,7 +161,11 @@ def itermonthdates(self, year, month): oneday = datetime.timedelta(days=1) while True: yield date - date += oneday + try: + date += oneday + except OverflowError: + # Adding one day could fail after datetime.MAXYEAR + break if date.month != month and date.weekday() == self.firstweekday: break diff --git a/Lib/test/test_calendar.py b/Lib/test/test_calendar.py index d3093ac9391..948a1197b9c 100644 --- a/Lib/test/test_calendar.py +++ b/Lib/test/test_calendar.py @@ -5,6 +5,7 @@ from test.script_helper import assert_python_ok import time import locale +import datetime result_2004_text = """ 2004 @@ -265,6 +266,11 @@ def test_localecalendars(self): new_october = calendar.TextCalendar().formatmonthname(2010, 10, 10) self.assertEqual(old_october, new_october) + def test_itermonthdates(self): + # ensure itermonthdates doesn't overflow after datetime.MAXYEAR + # see #15421 + list(calendar.Calendar().itermonthdates(datetime.MAXYEAR, 12)) + class MonthCalendarTestCase(unittest.TestCase): def setUp(self): diff --git a/Misc/NEWS b/Misc/NEWS index bebab93611d..74782aac68c 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -120,6 +120,9 @@ Core and Builtins Library ------- +- Issue #15421: fix an OverflowError in Calendar.itermonthdates() after + datetime.MAXYEAR. Patch by Cédric Krier. + - Issue #15970: xml.etree.ElementTree now serializes correctly the empty HTML elements 'meta' and 'param'. From 88950fb4d0b945b6a78571eafcd1dcb5356544eb Mon Sep 17 00:00:00 2001 From: Larry Hastings Date: Fri, 21 Sep 2012 09:30:19 -0700 Subject: [PATCH 140/201] Add What's New entries for some minor work I did in 3.3. --- Doc/whatsnew/3.3.rst | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/Doc/whatsnew/3.3.rst b/Doc/whatsnew/3.3.rst index 7d7747299d2..617700c9aea 100644 --- a/Doc/whatsnew/3.3.rst +++ b/Doc/whatsnew/3.3.rst @@ -1358,7 +1358,7 @@ os files and directories, it is more reliable (and also faster) to manipulate file descriptors instead of file names. Python 3.3 enhances existing functions and introduces new functions to work on file descriptors (:issue:`4761`, - :issue:`10755`). + :issue:`10755` and :issue:`14626`). - The :mod:`os` module has a new :func:`~os.fwalk` function similar to :func:`~os.walk` except that it also yields file descriptors referring to the @@ -1391,6 +1391,12 @@ os Windows. (Contributed by Antoine Pitrou in :issue:`8828`.) +* The stat family of functions (:func:`~os.stat`, :func:`~os.fstat`, + and :func:`~os.lstat`) now support reading a file's timestamps + with nanosecond precision. Symmetrically, :func:`~os.utime` + can now write file timestamps with nanosecond precision. (Contributed by + Larry Hastings in :issue:`14127`.) + * The new :func:`os.get_terminal_size` function queries the size of the terminal attached to a file descriptor. See also :func:`shutil.get_terminal_size`. @@ -1510,6 +1516,11 @@ shutil path also specifying the user/group names and not only their numeric ids. (Contributed by Sandro Tosi in :issue:`12191`) +* :func:`~shutil.copy2` and :func:`~shutil.copystat` now preserve file + timestamps with nanosecond precision on platforms that support it. + They also preserve file "extended attributes" on Linux. (Contributed + by Larry Hastings in :issue:`14127` and :issue:`15238`.) + * The new :func:`shutil.get_terminal_size` function returns the size of the terminal window the interpreter is attached to. (Contributed by Zbigniew Jędrzejewski-Szmek in :issue:`13609`.) From bf84bbabbbae397c747c4ba6281b60c0987a317b Mon Sep 17 00:00:00 2001 From: Larry Hastings Date: Fri, 21 Sep 2012 09:40:41 -0700 Subject: [PATCH 141/201] Mention that "defaults" can be None for inspect.getfullargspec. Also minor formatting cleanups. --- Doc/library/inspect.rst | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/Doc/library/inspect.rst b/Doc/library/inspect.rst index d1d2dea29bb..4050ab3a149 100644 --- a/Doc/library/inspect.rst +++ b/Doc/library/inspect.rst @@ -675,9 +675,9 @@ Classes and functions :term:`named tuple` ``ArgSpec(args, varargs, keywords, defaults)`` is returned. *args* is a list of the argument names. *varargs* and *keywords* are the names of the ``*`` and ``**`` arguments or ``None``. *defaults* is a - tuple of default argument values or None if there are no default arguments; - if this tuple has *n* elements, they correspond to the last *n* elements - listed in *args*. + tuple of default argument values or ``None`` if there are no default + arguments; if this tuple has *n* elements, they correspond to the last + *n* elements listed in *args*. .. deprecated:: 3.0 Use :func:`getfullargspec` instead, which provides information about @@ -693,8 +693,9 @@ Classes and functions annotations)`` *args* is a list of the argument names. *varargs* and *varkw* are the names - of the ``*`` and ``**`` arguments or ``None``. *defaults* is an n-tuple of - the default values of the last n arguments. *kwonlyargs* is a list of + of the ``*`` and ``**`` arguments or ``None``. *defaults* is an *n*-tuple + of the default values of the last *n* arguments, or ``None`` if there are no + default arguments. *kwonlyargs* is a list of keyword-only argument names. *kwonlydefaults* is a dictionary mapping names from kwonlyargs to defaults. *annotations* is a dictionary mapping argument names to annotations. From a867ed553e3c459dadf3e393490cfa587177ea07 Mon Sep 17 00:00:00 2001 From: Larry Hastings Date: Fri, 21 Sep 2012 10:12:14 -0700 Subject: [PATCH 142/201] Cleanup/rewrite shutil docs regarding follow_symlinks and copying attributes. --- Doc/library/shutil.rst | 115 ++++++++++++++++++++++++++++++----------- 1 file changed, 84 insertions(+), 31 deletions(-) diff --git a/Doc/library/shutil.rst b/Doc/library/shutil.rst index 8ed7e9edb1c..080c9233a9a 100644 --- a/Doc/library/shutil.rst +++ b/Doc/library/shutil.rst @@ -50,14 +50,15 @@ Directory and files operations .. function:: copyfile(src, dst, *, follow_symlinks=True) Copy the contents (no metadata) of the file named *src* to a file named - *dst* and return *dst*. *dst* must be the complete target file name; look at - :func:`shutil.copy` for a copy that accepts a target directory path. If - *src* and *dst* are the same files, :exc:`Error` is raised. + *dst* and return *dst*. *src* and *dst* are path names given as strings. + *dst* must be the complete target file name; look at :func:`shutil.copy` + for a copy that accepts a target directory path. If *src* and *dst* + specify the same file, :exc:`Error` is raised. - The destination location must be writable; otherwise, an :exc:`OSError` exception - will be raised. If *dst* already exists, it will be replaced. Special files - such as character or block devices and pipes cannot be copied with this - function. *src* and *dst* are path names given as strings. + The destination location must be writable; otherwise, an :exc:`OSError` + exception will be raised. If *dst* already exists, it will be replaced. + Special files such as character or block devices and pipes cannot be + copied with this function. If *follow_symlinks* is false and *src* is a symbolic link, a new symbolic link will be created instead of copying the @@ -71,52 +72,104 @@ Directory and files operations .. function:: copymode(src, dst, *, follow_symlinks=True) Copy the permission bits from *src* to *dst*. The file contents, owner, and - group are unaffected. *src* and *dst* are path names given as strings. If - *follow_symlinks* is false, *src* is a symbolic link, and the operating - system supports modes for symbolic links (for example BSD-based ones), - the mode of the link will be copied. + group are unaffected. *src* and *dst* are path names given as strings. + If *follow_symlinks* is false, and both *src* and *dst* are symbolic links, + :func:`copymode` will attempt to modify the mode of *dst* itself (rather + than the file it points to). This functionality is not available on every + platform; please see :func:`copystat` for more information. If + :func:`copymode` cannot modify symbolic links on the local platform, and it + is asked to do so, it will do nothing and return. .. versionchanged:: 3.3 Added *follow_symlinks* argument. .. function:: copystat(src, dst, *, follow_symlinks=True) - Copy the permission bits, last access time, last modification time, and flags - from *src* to *dst*. The file contents, owner, and group are unaffected. *src* - and *dst* are path names given as strings. If *follow_symlinks* is false, and - *src* and *dst* are both symbolic links, the stats of the link will be copied as - far as the platform allows. On Linux, :func:`copystat` also copies the - "extended attributes" where possible. + Copy the permission bits, last access time, last modification time, and + flags from *src* to *dst*. On Linux, :func:`copystat` also copies the + "extended attributes" where possible. The file contents, owner, and + group are unaffected. *src* and *dst* are path names given as strings. + + If *follow_symlinks* is false, and *src* and *dst* both + refer to symbolic links, :func:`copystat` will operate on + the symbolic links themselves rather than the files the + symbolic links refer to--reading the information from the + *src* symbolic link, and writing the information to the + *dst* symbolic link. + + .. note:: + + Not all platforms provide the ability to examine and + modify symbolic links. Python itself can tell you what + functionality is locally available. + + * If ``os.chmod in os.supports_follow_symlinks`` is + ``True``, :func:`copystat` can modify the permission + bits of a symbolic link. + + * If ``os.utime in os.supports_follow_symlinks`` is + ``True``, :func:`copystat` can modify the last access + and modification times of a symbolic link. + + * If ``os.chflags in os.supports_follow_symlinks`` is + ``True``, :func:`copystat` can modify the flags of + a symbolic link. (``os.chflags`` is not available on + all platforms.) + + On platforms where some or all of this functionality + is unavailable, when asked to modify a symbolic link, + :func:`copystat` will copy everything it can. + :func:`copystat` never returns failure. + + Please see :data:`os.supports_follow_symlinks` + for more information. .. versionchanged:: 3.3 Added *follow_symlinks* argument and support for Linux extended attributes. .. function:: copy(src, dst, *, follow_symlinks=True) - Copy the file *src* to the file or directory *dst* and return the file's - destination. If *dst* is a directory, a - file with the same basename as *src* is created (or overwritten) in the - directory specified. Permission bits are copied. *src* and *dst* are path - names given as strings. If *follow_symlinks* is false, symbolic - links won't be followed but recreated instead -- this resembles GNU's - :program:`cp -P`. + Copies the file *src* to the file or directory *dst*. *src* and *dst* + should be strings. If *dst* specifies a directory, the file will be + copied into *dst* using the base filename from *src*. Returns the + path to the newly created file. + + If *follow_symlinks* is false, and *src* is a symbolic link, + *dst* will be created as a symbolic link. If *follow_symlinks* + is true and *src* is a symbolic link, *dst* will be a copy of + the file *src* refers to. + + :func:`copy` copies the file data and the file's permission + mode (see :func:`os.chmod`). Other metadata, like the + file's creation and modification times, is not preserved. + To preserve all file metadata from the original, use + :func:`~shutil.copy2` instead. .. versionchanged:: 3.3 Added *follow_symlinks* argument. - Now returns *dst*. + Now returns path to the newly created file. .. function:: copy2(src, dst, *, follow_symlinks=True) - Similar to :func:`shutil.copy`, including that the destination is - returned, but metadata is copied as well. This is similar to the Unix - command :program:`cp -p`. If *follow_symlinks* is false, - symbolic links won't be followed but recreated instead -- this resembles - GNU's :program:`cp -P`. + Identical to :func:`~shutil.copy` except that :func:`copy2` + also attempts to preserve all file metadata. + + When *follow_symlinks* is false, and *src* is a symbolic + link, :func:`copy2` attempts to copy all metadata from the + *src* symbolic link to the newly-created *dst* symbolic link. + However, this functionality is not available on all platforms. + On platforms where some or all of this functionality is + unavailable, :func:`copy2` will preserve all the metadata + it can; :func:`copy2` never returns failure. + + :func:`copy2` uses :func:`copystat` to copy the file metadata. + Please see :func:`copystat` for more information + about platform support for modifying symbolic link metadata. .. versionchanged:: 3.3 Added *follow_symlinks* argument, try to copy extended file system attributes too (currently Linux only). - Now returns *dst*. + Now returns path to the newly created file. .. function:: ignore_patterns(\*patterns) From b1d0e5b11eac1ed5ae3d41bf952a3f68ad35f668 Mon Sep 17 00:00:00 2001 From: Ezio Melotti Date: Sat, 22 Sep 2012 11:23:06 +0300 Subject: [PATCH 143/201] #15949, 15899: avoid using non-latin1 chars in the doc (they break `make all-pdf`). --- Doc/howto/unicode.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Doc/howto/unicode.rst b/Doc/howto/unicode.rst index bcd29be6988..ea83d29199a 100644 --- a/Doc/howto/unicode.rst +++ b/Doc/howto/unicode.rst @@ -262,8 +262,8 @@ Unicode result). The following examples show the differences:: ... UnicodeDecodeError: 'utf-8' codec can't decode byte 0x80 in position 0: invalid start byte - >>> b'\x80abc'.decode("utf-8", "replace") - '�abc' + >>> b'\x80abc'.decode("utf-8", "replace") #doctest: +SKIP + '?abc' >>> b'\x80abc'.decode("utf-8", "ignore") 'abc' From 752a2241eab92d223b4f803c1cd20494bf17e799 Mon Sep 17 00:00:00 2001 From: R David Murray Date: Sat, 22 Sep 2012 09:59:51 -0400 Subject: [PATCH 144/201] #15925: fix regression: return None for null and non-date strings. Since the logic for null detection had to move into the _parseaddr functions, I removed the wrappers from email.utils and just import the _parseaddr functions directly. --- Lib/email/_parseaddr.py | 4 ++++ Lib/email/utils.py | 24 ++---------------------- Lib/test/test_email/test_email.py | 13 +++++++++++-- Misc/NEWS | 3 +++ 4 files changed, 20 insertions(+), 24 deletions(-) diff --git a/Lib/email/_parseaddr.py b/Lib/email/_parseaddr.py index 3528d0297c8..cdfa3729adc 100644 --- a/Lib/email/_parseaddr.py +++ b/Lib/email/_parseaddr.py @@ -48,6 +48,8 @@ def parsedate_tz(data): Accounts for military timezones. """ res = _parsedate_tz(data) + if not res: + return if res[9] is None: res[9] = 0 return tuple(res) @@ -62,6 +64,8 @@ def _parsedate_tz(data): source timezone really was UTC. """ + if not data: + return data = data.split() # The FWS after the comma after the day-of-week is optional, so search and # adjust for this. diff --git a/Lib/email/utils.py b/Lib/email/utils.py index 73bc3481d63..6b6d7f44744 100644 --- a/Lib/email/utils.py +++ b/Lib/email/utils.py @@ -37,10 +37,7 @@ from email._parseaddr import AddressList as _AddressList from email._parseaddr import mktime_tz -# We need wormarounds for bugs in these methods in older Pythons (see below) -from email._parseaddr import parsedate as _parsedate -from email._parseaddr import parsedate_tz as _parsedate_tz -from email._parseaddr import _parsedate_tz as __parsedate_tz +from email._parseaddr import parsedate, parsedate_tz, _parsedate_tz from quopri import decodestring as _qdecode @@ -222,25 +219,8 @@ def make_msgid(idstring=None, domain=None): return msgid - -# These functions are in the standalone mimelib version only because they've -# subsequently been fixed in the latest Python versions. We use this to worm -# around broken older Pythons. -def parsedate(data): - if not data: - return None - return _parsedate(data) - - -def parsedate_tz(data): - if not data: - return None - return _parsedate_tz(data) - def parsedate_to_datetime(data): - if not data: - return None - *dtuple, tz = __parsedate_tz(data) + *dtuple, tz = _parsedate_tz(data) if tz is None: return datetime.datetime(*dtuple[:6]) return datetime.datetime(*dtuple[:6], diff --git a/Lib/test/test_email/test_email.py b/Lib/test/test_email/test_email.py index 5cc6d0467ee..36c344f846b 100644 --- a/Lib/test/test_email/test_email.py +++ b/Lib/test/test_email/test_email.py @@ -2718,8 +2718,17 @@ def test_formatdate_usegmt(self): utils.formatdate(now, localtime=False, usegmt=True), time.strftime('%a, %d %b %Y %H:%M:%S GMT', time.gmtime(now))) - def test_parsedate_none(self): - self.assertEqual(utils.parsedate(''), None) + # parsedate and parsedate_tz will become deprecated interfaces someday + def test_parsedate_returns_None_for_invalid_strings(self): + self.assertIsNone(utils.parsedate('')) + self.assertIsNone(utils.parsedate_tz('')) + self.assertIsNone(utils.parsedate('0')) + self.assertIsNone(utils.parsedate_tz('0')) + self.assertIsNone(utils.parsedate('A Complete Waste of Time')) + self.assertIsNone(utils.parsedate_tz('A Complete Waste of Time')) + # Not a part of the spec but, but this has historically worked: + self.assertIsNone(utils.parsedate(None)) + self.assertIsNone(utils.parsedate_tz(None)) def test_parsedate_compact(self): # The FWS after the comma is optional diff --git a/Misc/NEWS b/Misc/NEWS index abe8eb8028f..ac449101f12 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -36,6 +36,9 @@ Core and Builtins Library ------- +- Issue #15925: fixed regression in email.utils.parsedate and parsedate_tz + handling of empty and non-date strings. + - Issue #15421: fix an OverflowError in Calendar.itermonthdates() after datetime.MAXYEAR. Patch by Cédric Krier. From a3ff101e6a4b0a14da0388c612d1e2f3c120a959 Mon Sep 17 00:00:00 2001 From: Victor Stinner Date: Sun, 23 Sep 2012 11:06:21 +0200 Subject: [PATCH 145/201] Issue #5969: faulthandler module: rename dump_tracebacks_later() to dump_traceback_later() and cancel_dump_tracebacks_later() to cancel_dump_traceback_later(). --- Doc/library/faulthandler.rst | 8 ++++---- Lib/test/test_faulthandler.py | 38 +++++++++++++++++------------------ Misc/NEWS | 3 +++ Modules/faulthandler.c | 28 +++++++++++++------------- 4 files changed, 40 insertions(+), 37 deletions(-) diff --git a/Doc/library/faulthandler.rst b/Doc/library/faulthandler.rst index b079b30f59d..3c336215fc2 100644 --- a/Doc/library/faulthandler.rst +++ b/Doc/library/faulthandler.rst @@ -71,7 +71,7 @@ Fault handler state Dump the tracebacks after a timeout ----------------------------------- -.. function:: dump_tracebacks_later(timeout, repeat=False, file=sys.stderr, exit=False) +.. function:: dump_traceback_later(timeout, repeat=False, file=sys.stderr, exit=False) Dump the tracebacks of all threads, after a timeout of *timeout* seconds, or every *timeout* seconds if *repeat* is ``True``. If *exit* is ``True``, call @@ -84,9 +84,9 @@ Dump the tracebacks after a timeout This function is implemented using a watchdog thread and therefore is not available if Python is compiled with threads disabled. -.. function:: cancel_dump_tracebacks_later() +.. function:: cancel_dump_traceback_later() - Cancel the last call to :func:`dump_tracebacks_later`. + Cancel the last call to :func:`dump_traceback_later`. Dump the traceback on a user signal @@ -112,7 +112,7 @@ Dump the traceback on a user signal File descriptor issue --------------------- -:func:`enable`, :func:`dump_tracebacks_later` and :func:`register` keep the +:func:`enable`, :func:`dump_traceback_later` and :func:`register` keep the file descriptor of their *file* argument. If the file is closed and its file descriptor is reused by a new file, or if :func:`os.dup2` is used to replace the file descriptor, the traceback will be written into a different file. Call diff --git a/Lib/test/test_faulthandler.py b/Lib/test/test_faulthandler.py index c186b3472a4..b81b34d3ef0 100644 --- a/Lib/test/test_faulthandler.py +++ b/Lib/test/test_faulthandler.py @@ -407,7 +407,7 @@ def test_dump_traceback_threads_file(self): with temporary_filename() as filename: self.check_dump_traceback_threads(filename) - def _check_dump_tracebacks_later(self, repeat, cancel, filename, loops): + def _check_dump_traceback_later(self, repeat, cancel, filename, loops): """ Check how many times the traceback is written in timeout x 2.5 seconds, or timeout x 3.5 seconds if cancel is True: 1, 2 or 3 times depending @@ -422,11 +422,11 @@ def _check_dump_tracebacks_later(self, repeat, cancel, filename, loops): def func(timeout, repeat, cancel, file, loops): for loop in range(loops): - faulthandler.dump_tracebacks_later(timeout, repeat=repeat, file=file) + faulthandler.dump_traceback_later(timeout, repeat=repeat, file=file) if cancel: - faulthandler.cancel_dump_tracebacks_later() + faulthandler.cancel_dump_traceback_later() time.sleep(timeout * 5) - faulthandler.cancel_dump_tracebacks_later() + faulthandler.cancel_dump_traceback_later() timeout = {timeout} repeat = {repeat} @@ -462,9 +462,9 @@ def func(timeout, repeat, cancel, file, loops): self.assertEqual(trace, '') self.assertEqual(exitcode, 0) - @unittest.skipIf(not hasattr(faulthandler, 'dump_tracebacks_later'), - 'need faulthandler.dump_tracebacks_later()') - def check_dump_tracebacks_later(self, repeat=False, cancel=False, + @unittest.skipIf(not hasattr(faulthandler, 'dump_traceback_later'), + 'need faulthandler.dump_traceback_later()') + def check_dump_traceback_later(self, repeat=False, cancel=False, file=False, twice=False): if twice: loops = 2 @@ -472,25 +472,25 @@ def check_dump_tracebacks_later(self, repeat=False, cancel=False, loops = 1 if file: with temporary_filename() as filename: - self._check_dump_tracebacks_later(repeat, cancel, + self._check_dump_traceback_later(repeat, cancel, filename, loops) else: - self._check_dump_tracebacks_later(repeat, cancel, None, loops) + self._check_dump_traceback_later(repeat, cancel, None, loops) - def test_dump_tracebacks_later(self): - self.check_dump_tracebacks_later() + def test_dump_traceback_later(self): + self.check_dump_traceback_later() - def test_dump_tracebacks_later_repeat(self): - self.check_dump_tracebacks_later(repeat=True) + def test_dump_traceback_later_repeat(self): + self.check_dump_traceback_later(repeat=True) - def test_dump_tracebacks_later_cancel(self): - self.check_dump_tracebacks_later(cancel=True) + def test_dump_traceback_later_cancel(self): + self.check_dump_traceback_later(cancel=True) - def test_dump_tracebacks_later_file(self): - self.check_dump_tracebacks_later(file=True) + def test_dump_traceback_later_file(self): + self.check_dump_traceback_later(file=True) - def test_dump_tracebacks_later_twice(self): - self.check_dump_tracebacks_later(twice=True) + def test_dump_traceback_later_twice(self): + self.check_dump_traceback_later(twice=True) @unittest.skipIf(not hasattr(faulthandler, "register"), "need faulthandler.register") diff --git a/Misc/NEWS b/Misc/NEWS index ac449101f12..79b956c526b 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -127,6 +127,9 @@ Core and Builtins Library ------- +- Issue #5969: faulthandler module: rename dump_tracebacks_later() to + dump_traceback_later() and cancel_dump_tracebacks_later() to + cancel_dump_traceback_later(). What's New in Python 3.3.0 Release Candidate 2? =============================================== diff --git a/Modules/faulthandler.c b/Modules/faulthandler.c index 4aa91242638..7e363f03c94 100644 --- a/Modules/faulthandler.c +++ b/Modules/faulthandler.c @@ -462,7 +462,7 @@ faulthandler_thread(void *unused) } static void -cancel_dump_tracebacks_later(void) +cancel_dump_traceback_later(void) { /* Notify cancellation */ PyThread_release_lock(thread.cancel_event); @@ -509,7 +509,7 @@ format_timeout(double timeout) } static PyObject* -faulthandler_dump_tracebacks_later(PyObject *self, +faulthandler_dump_traceback_later(PyObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = {"timeout", "repeat", "file", "exit", NULL}; @@ -524,7 +524,7 @@ faulthandler_dump_tracebacks_later(PyObject *self, size_t header_len; if (!PyArg_ParseTupleAndKeywords(args, kwargs, - "d|iOi:dump_tracebacks_later", kwlist, + "d|iOi:dump_traceback_later", kwlist, &timeout, &repeat, &file, &exit)) return NULL; if ((timeout * 1e6) >= (double) PY_TIMEOUT_MAX) { @@ -552,7 +552,7 @@ faulthandler_dump_tracebacks_later(PyObject *self, header_len = strlen(header); /* Cancel previous thread, if running */ - cancel_dump_tracebacks_later(); + cancel_dump_traceback_later(); Py_XDECREF(thread.file); Py_INCREF(file); @@ -582,9 +582,9 @@ faulthandler_dump_tracebacks_later(PyObject *self, } static PyObject* -faulthandler_cancel_dump_tracebacks_later_py(PyObject *self) +faulthandler_cancel_dump_traceback_later_py(PyObject *self) { - cancel_dump_tracebacks_later(); + cancel_dump_traceback_later(); Py_RETURN_NONE; } #endif /* FAULTHANDLER_LATER */ @@ -970,16 +970,16 @@ static PyMethodDef module_methods[] = { "dump the traceback of the current thread, or of all threads " "if all_threads is True, into file")}, #ifdef FAULTHANDLER_LATER - {"dump_tracebacks_later", - (PyCFunction)faulthandler_dump_tracebacks_later, METH_VARARGS|METH_KEYWORDS, - PyDoc_STR("dump_tracebacks_later(timeout, repeat=False, file=sys.stderrn, exit=False):\n" + {"dump_traceback_later", + (PyCFunction)faulthandler_dump_traceback_later, METH_VARARGS|METH_KEYWORDS, + PyDoc_STR("dump_traceback_later(timeout, repeat=False, file=sys.stderrn, exit=False):\n" "dump the traceback of all threads in timeout seconds,\n" "or each timeout seconds if repeat is True. If exit is True, " "call _exit(1) which is not safe.")}, - {"cancel_dump_tracebacks_later", - (PyCFunction)faulthandler_cancel_dump_tracebacks_later_py, METH_NOARGS, - PyDoc_STR("cancel_dump_tracebacks_later():\ncancel the previous call " - "to dump_tracebacks_later().")}, + {"cancel_dump_traceback_later", + (PyCFunction)faulthandler_cancel_dump_traceback_later_py, METH_NOARGS, + PyDoc_STR("cancel_dump_traceback_later():\ncancel the previous call " + "to dump_traceback_later().")}, #endif #ifdef FAULTHANDLER_USER @@ -1120,7 +1120,7 @@ void _PyFaulthandler_Fini(void) #ifdef FAULTHANDLER_LATER /* later */ if (thread.cancel_event) { - cancel_dump_tracebacks_later(); + cancel_dump_traceback_later(); PyThread_release_lock(thread.cancel_event); PyThread_free_lock(thread.cancel_event); thread.cancel_event = NULL; From 707bce4a66bbe34fc346775543876161379cfb3e Mon Sep 17 00:00:00 2001 From: Victor Stinner Date: Sun, 23 Sep 2012 11:11:07 +0200 Subject: [PATCH 146/201] Issue #15969: Fix the issue number in Misc/NEWS --- Misc/NEWS | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Misc/NEWS b/Misc/NEWS index 79b956c526b..29fd3070e3b 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -127,7 +127,7 @@ Core and Builtins Library ------- -- Issue #5969: faulthandler module: rename dump_tracebacks_later() to +- Issue #15969: faulthandler module: rename dump_tracebacks_later() to dump_traceback_later() and cancel_dump_tracebacks_later() to cancel_dump_traceback_later(). From 20b8d992b008672d52a84c8d35992033ccfc9d84 Mon Sep 17 00:00:00 2001 From: Ezio Melotti Date: Sun, 23 Sep 2012 15:55:14 +0300 Subject: [PATCH 147/201] #15949, #15899: use \ufffd instead of ?. --- Doc/howto/unicode.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Doc/howto/unicode.rst b/Doc/howto/unicode.rst index ea83d29199a..f9eeae4c027 100644 --- a/Doc/howto/unicode.rst +++ b/Doc/howto/unicode.rst @@ -262,8 +262,8 @@ Unicode result). The following examples show the differences:: ... UnicodeDecodeError: 'utf-8' codec can't decode byte 0x80 in position 0: invalid start byte - >>> b'\x80abc'.decode("utf-8", "replace") #doctest: +SKIP - '?abc' + >>> b'\x80abc'.decode("utf-8", "replace") + '\ufffdabc' >>> b'\x80abc'.decode("utf-8", "ignore") 'abc' From 7e6523fbd7641b61a795c303ec46cfc25b6098fc Mon Sep 17 00:00:00 2001 From: Stefan Krah Date: Sun, 23 Sep 2012 15:46:09 +0200 Subject: [PATCH 148/201] Use C-style comments. --- Modules/_decimal/libmpdec/mpdecimal.c | 48 +++++++++++++-------------- 1 file changed, 24 insertions(+), 24 deletions(-) diff --git a/Modules/_decimal/libmpdec/mpdecimal.c b/Modules/_decimal/libmpdec/mpdecimal.c index 0558d5e6cc0..05f76283689 100644 --- a/Modules/_decimal/libmpdec/mpdecimal.c +++ b/Modules/_decimal/libmpdec/mpdecimal.c @@ -5063,28 +5063,28 @@ _karatsuba_rec(mpd_uint_t *c, const mpd_uint_t *a, const mpd_uint_t *b, return; } - m = (la+1)/2; // ceil(la/2) + m = (la+1)/2; /* ceil(la/2) */ /* lb <= m < la */ if (lb <= m) { /* lb can now be larger than la-m */ if (lb > la-m) { - lt = lb + lb + 1; // space needed for result array - mpd_uint_zero(w, lt); // clear result array - _karatsuba_rec(w, b, a+m, w+lt, lb, la-m); // b*ah + lt = lb + lb + 1; /* space needed for result array */ + mpd_uint_zero(w, lt); /* clear result array */ + _karatsuba_rec(w, b, a+m, w+lt, lb, la-m); /* b*ah */ } else { - lt = (la-m) + (la-m) + 1; // space needed for result array - mpd_uint_zero(w, lt); // clear result array - _karatsuba_rec(w, a+m, b, w+lt, la-m, lb); // ah*b + lt = (la-m) + (la-m) + 1; /* space needed for result array */ + mpd_uint_zero(w, lt); /* clear result array */ + _karatsuba_rec(w, a+m, b, w+lt, la-m, lb); /* ah*b */ } - _mpd_baseaddto(c+m, w, (la-m)+lb); // add ah*b*B**m + _mpd_baseaddto(c+m, w, (la-m)+lb); /* add ah*b*B**m */ - lt = m + m + 1; // space needed for the result array - mpd_uint_zero(w, lt); // clear result array - _karatsuba_rec(w, a, b, w+lt, m, lb); // al*b - _mpd_baseaddto(c, w, m+lb); // add al*b + lt = m + m + 1; /* space needed for the result array */ + mpd_uint_zero(w, lt); /* clear result array */ + _karatsuba_rec(w, a, b, w+lt, m, lb); /* al*b */ + _mpd_baseaddto(c, w, m+lb); /* add al*b */ return; } @@ -5360,34 +5360,34 @@ _karatsuba_rec_fnt(mpd_uint_t *c, const mpd_uint_t *a, const mpd_uint_t *b, return 1; } - m = (la+1)/2; // ceil(la/2) + m = (la+1)/2; /* ceil(la/2) */ /* lb <= m < la */ if (lb <= m) { /* lb can now be larger than la-m */ if (lb > la-m) { - lt = lb + lb + 1; // space needed for result array - mpd_uint_zero(w, lt); // clear result array - if (!_karatsuba_rec_fnt(w, b, a+m, w+lt, lb, la-m)) { // b*ah + lt = lb + lb + 1; /* space needed for result array */ + mpd_uint_zero(w, lt); /* clear result array */ + if (!_karatsuba_rec_fnt(w, b, a+m, w+lt, lb, la-m)) { /* b*ah */ return 0; /* GCOV_UNLIKELY */ } } else { - lt = (la-m) + (la-m) + 1; // space needed for result array - mpd_uint_zero(w, lt); // clear result array - if (!_karatsuba_rec_fnt(w, a+m, b, w+lt, la-m, lb)) { // ah*b + lt = (la-m) + (la-m) + 1; /* space needed for result array */ + mpd_uint_zero(w, lt); /* clear result array */ + if (!_karatsuba_rec_fnt(w, a+m, b, w+lt, la-m, lb)) { /* ah*b */ return 0; /* GCOV_UNLIKELY */ } } - _mpd_baseaddto(c+m, w, (la-m)+lb); // add ah*b*B**m + _mpd_baseaddto(c+m, w, (la-m)+lb); /* add ah*b*B**m */ - lt = m + m + 1; // space needed for the result array - mpd_uint_zero(w, lt); // clear result array - if (!_karatsuba_rec_fnt(w, a, b, w+lt, m, lb)) { // al*b + lt = m + m + 1; /* space needed for the result array */ + mpd_uint_zero(w, lt); /* clear result array */ + if (!_karatsuba_rec_fnt(w, a, b, w+lt, m, lb)) { /* al*b */ return 0; /* GCOV_UNLIKELY */ } - _mpd_baseaddto(c, w, m+lb); // add al*b + _mpd_baseaddto(c, w, m+lb); /* add al*b */ return 1; } From 91ceeceea7ac48012a3e7834d61e6ed0f49689d5 Mon Sep 17 00:00:00 2001 From: Stefan Krah Date: Sun, 23 Sep 2012 15:51:16 +0200 Subject: [PATCH 149/201] Use C-style comments (required for the AIX build slave). --- Modules/unicodedata.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Modules/unicodedata.c b/Modules/unicodedata.c index 5c982f5c293..d339f580805 100644 --- a/Modules/unicodedata.c +++ b/Modules/unicodedata.c @@ -1236,8 +1236,8 @@ unicodedata_lookup(PyObject* self, PyObject* args) PyErr_Format(PyExc_KeyError, "undefined character name '%s'", name); return NULL; } - // check if code is in the PUA range that we use for named sequences - // and convert it + /* check if code is in the PUA range that we use for named sequences + and convert it */ if (IS_NAMED_SEQ(code)) { index = code-named_sequences_start; return PyUnicode_FromKindAndData(PyUnicode_2BYTE_KIND, From 3b9493b53cadbe49055d8e7bef5da391c090e652 Mon Sep 17 00:00:00 2001 From: Christian Heimes Date: Sun, 23 Sep 2012 16:11:15 +0200 Subject: [PATCH 150/201] Use C-style comments for C89 / ANSI C compatibility --- Modules/posixmodule.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Modules/posixmodule.c b/Modules/posixmodule.c index e0efebfe1b0..bd94ffb5fe5 100644 --- a/Modules/posixmodule.c +++ b/Modules/posixmodule.c @@ -10495,7 +10495,7 @@ posix_listxattr(PyObject *self, PyObject *args, PyObject *kwargs) static Py_ssize_t buffer_sizes[] = { 256, XATTR_LIST_MAX, 0 }; Py_ssize_t buffer_size = buffer_sizes[i]; if (!buffer_size) { - // ERANGE + /* ERANGE */ path_error("listxattr", &path); break; } From fd0ddab97ba458ef00deab9ff846ca11c510f4e1 Mon Sep 17 00:00:00 2001 From: Christian Heimes Date: Sun, 23 Sep 2012 16:15:01 +0200 Subject: [PATCH 151/201] GCC doesn't support typeof in strict ansi mode (e.g. -ansi or -std=c89) --- Include/pymacro.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Include/pymacro.h b/Include/pymacro.h index ce1cbefb73e..52e8ee3a289 100644 --- a/Include/pymacro.h +++ b/Include/pymacro.h @@ -30,7 +30,7 @@ error (see Py_BUILD_ASSERT_EXPR). Written by Rusty Russell, public domain, http://ccodearchive.net/ */ -#if defined(__GNUC__) +#if (defined(__GNUC__) && !defined(__STRICT_ANSI__)) /* Two gcc extensions. &a[0] degrades to a pointer: a different type from an array */ #define Py_ARRAY_LENGTH(array) \ From 667a13bf2a6a47b84cd63ef82e49ae26fc9529eb Mon Sep 17 00:00:00 2001 From: Nadeem Vawda Date: Sun, 23 Sep 2012 18:08:57 +0200 Subject: [PATCH 152/201] Fix indentation of examples in lzma module documentation. --- Doc/library/lzma.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Doc/library/lzma.rst b/Doc/library/lzma.rst index 402fae203c1..4c637db1e43 100644 --- a/Doc/library/lzma.rst +++ b/Doc/library/lzma.rst @@ -336,14 +336,14 @@ Reading in a compressed file:: import lzma with lzma.LZMAFile("file.xz") as f: - file_content = f.read() + file_content = f.read() Creating a compressed file:: import lzma data = b"Insert Data Here" with lzma.LZMAFile("file.xz", "w") as f: - f.write(data) + f.write(data) Compressing data in memory:: From 5011244be0f12ab51ca318bdc409d5df5f8c7914 Mon Sep 17 00:00:00 2001 From: Nadeem Vawda Date: Sun, 23 Sep 2012 18:20:23 +0200 Subject: [PATCH 153/201] Prefer lzma.open() over lzma.LZMAFile() in lzma module documentation. --- Doc/library/lzma.rst | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Doc/library/lzma.rst b/Doc/library/lzma.rst index 4c637db1e43..f09fa08c419 100644 --- a/Doc/library/lzma.rst +++ b/Doc/library/lzma.rst @@ -335,14 +335,14 @@ Examples Reading in a compressed file:: import lzma - with lzma.LZMAFile("file.xz") as f: + with lzma.open("file.xz") as f: file_content = f.read() Creating a compressed file:: import lzma data = b"Insert Data Here" - with lzma.LZMAFile("file.xz", "w") as f: + with lzma.open("file.xz", "w") as f: f.write(data) Compressing data in memory:: @@ -367,7 +367,7 @@ Writing compressed data to an already-open file:: import lzma with open("file.xz", "wb") as f: f.write(b"This data will not be compressed\n") - with lzma.LZMAFile(f, "w") as lzf: + with lzma.open(f, "w") as lzf: lzf.write(b"This *will* be compressed\n") f.write(b"Not compressed\n") @@ -378,5 +378,5 @@ Creating a compressed file using a custom filter chain:: {"id": lzma.FILTER_DELTA, "dist": 5}, {"id": lzma.FILTER_LZMA2, "preset": 7 | lzma.PRESET_EXTREME}, ] - with lzma.LZMAFile("file.xz", "w", filters=my_filters) as f: + with lzma.open("file.xz", "w", filters=my_filters) as f: f.write(b"blah blah blah") From 6f80f5d4446f06d15274ad519cae6929a3565cc0 Mon Sep 17 00:00:00 2001 From: Antoine Pitrou Date: Sun, 23 Sep 2012 19:55:21 +0200 Subject: [PATCH 154/201] Issue #15379: Fix passing of non-BMP characters as integers for the charmap decoder (already working as unicode strings). Patch by Serhiy Storchaka. --- Lib/test/test_codeccallbacks.py | 2 +- Lib/test/test_codecs.py | 105 ++++++++++++++++++++++++++++++++ Misc/NEWS | 3 + Objects/unicodeobject.c | 28 ++++++++- 4 files changed, 135 insertions(+), 3 deletions(-) diff --git a/Lib/test/test_codeccallbacks.py b/Lib/test/test_codeccallbacks.py index c5b1e25c208..e656d2fe8f7 100644 --- a/Lib/test/test_codeccallbacks.py +++ b/Lib/test/test_codeccallbacks.py @@ -744,7 +744,7 @@ def __getitem__(self, key): raise ValueError self.assertRaises(UnicodeError, codecs.charmap_decode, b"\xff", "strict", {0xff: None}) self.assertRaises(ValueError, codecs.charmap_decode, b"\xff", "strict", D()) - self.assertRaises(TypeError, codecs.charmap_decode, b"\xff", "strict", {0xff: sys.maxunicode+1}) + self.assertRaises(TypeError, codecs.charmap_decode, b"\xff", "strict", {0xff: 0x110000}) def test_encodehelper(self): # enhance coverage of: diff --git a/Lib/test/test_codecs.py b/Lib/test/test_codecs.py index 3426a4dde9a..f342d88b9f6 100644 --- a/Lib/test/test_codecs.py +++ b/Lib/test/test_codecs.py @@ -1546,6 +1546,10 @@ def test_decode_with_string_map(self): ("abc", 3) ) + self.assertRaises(UnicodeDecodeError, + codecs.charmap_decode, b"\x00\x01\x02", "strict", "ab" + ) + self.assertEqual( codecs.charmap_decode(b"\x00\x01\x02", "replace", "ab"), ("ab\ufffd", 3) @@ -1572,6 +1576,107 @@ def test_decode_with_string_map(self): ("", len(allbytes)) ) + def test_decode_with_int2str_map(self): + self.assertEqual( + codecs.charmap_decode(b"\x00\x01\x02", "strict", + {0: 'a', 1: 'b', 2: 'c'}), + ("abc", 3) + ) + + self.assertEqual( + codecs.charmap_decode(b"\x00\x01\x02", "strict", + {0: 'Aa', 1: 'Bb', 2: 'Cc'}), + ("AaBbCc", 3) + ) + + self.assertEqual( + codecs.charmap_decode(b"\x00\x01\x02", "strict", + {0: '\U0010FFFF', 1: 'b', 2: 'c'}), + ("\U0010FFFFbc", 3) + ) + + self.assertEqual( + codecs.charmap_decode(b"\x00\x01\x02", "strict", + {0: 'a', 1: 'b', 2: ''}), + ("ab", 3) + ) + + self.assertRaises(UnicodeDecodeError, + codecs.charmap_decode, b"\x00\x01\x02", "strict", + {0: 'a', 1: 'b'} + ) + + self.assertEqual( + codecs.charmap_decode(b"\x00\x01\x02", "replace", + {0: 'a', 1: 'b'}), + ("ab\ufffd", 3) + ) + + self.assertEqual( + codecs.charmap_decode(b"\x00\x01\x02", "replace", + {0: 'a', 1: 'b', 2: None}), + ("ab\ufffd", 3) + ) + + self.assertEqual( + codecs.charmap_decode(b"\x00\x01\x02", "ignore", + {0: 'a', 1: 'b'}), + ("ab", 3) + ) + + self.assertEqual( + codecs.charmap_decode(b"\x00\x01\x02", "ignore", + {0: 'a', 1: 'b', 2: None}), + ("ab", 3) + ) + + allbytes = bytes(range(256)) + self.assertEqual( + codecs.charmap_decode(allbytes, "ignore", {}), + ("", len(allbytes)) + ) + + def test_decode_with_int2int_map(self): + a = ord('a') + b = ord('b') + c = ord('c') + + self.assertEqual( + codecs.charmap_decode(b"\x00\x01\x02", "strict", + {0: a, 1: b, 2: c}), + ("abc", 3) + ) + + # Issue #15379 + self.assertEqual( + codecs.charmap_decode(b"\x00\x01\x02", "strict", + {0: 0x10FFFF, 1: b, 2: c}), + ("\U0010FFFFbc", 3) + ) + + self.assertRaises(TypeError, + codecs.charmap_decode, b"\x00\x01\x02", "strict", + {0: 0x110000, 1: b, 2: c} + ) + + self.assertRaises(UnicodeDecodeError, + codecs.charmap_decode, b"\x00\x01\x02", "strict", + {0: a, 1: b}, + ) + + self.assertEqual( + codecs.charmap_decode(b"\x00\x01\x02", "replace", + {0: a, 1: b}), + ("ab\ufffd", 3) + ) + + self.assertEqual( + codecs.charmap_decode(b"\x00\x01\x02", "ignore", + {0: a, 1: b}), + ("ab", 3) + ) + + class WithStmtTest(unittest.TestCase): def test_encodedfile(self): f = io.BytesIO(b"\xc3\xbc") diff --git a/Misc/NEWS b/Misc/NEWS index 74782aac68c..57ed006fa76 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -10,6 +10,9 @@ What's New in Python 3.2.4 Core and Builtins ----------------- +- Issue #15379: Fix passing of non-BMP characters as integers for the charmap + decoder (already working as unicode strings). Patch by Serhiy Storchaka. + - Issue #13992: The trashcan mechanism is now thread-safe. This eliminates sporadic crashes in multi-thread programs when several long deallocator chains ran concurrently and involved subclasses of built-in container diff --git a/Objects/unicodeobject.c b/Objects/unicodeobject.c index 8b782b4065e..f59db36dd3d 100644 --- a/Objects/unicodeobject.c +++ b/Objects/unicodeobject.c @@ -5250,12 +5250,36 @@ PyObject *PyUnicode_DecodeCharmap(const char *s, /* Apply mapping */ if (PyLong_Check(x)) { long value = PyLong_AS_LONG(x); - if (value < 0 || value > 65535) { + if (value < 0 || value > 0x10FFFF) { PyErr_SetString(PyExc_TypeError, - "character mapping must be in range(65536)"); + "character mapping must be in range(0x110000)"); Py_DECREF(x); goto onError; } + +#ifndef Py_UNICODE_WIDE + if (value > 0xFFFF) { + /* see the code for 1-n mapping below */ + if (extrachars < 2) { + /* resize first */ + Py_ssize_t oldpos = p - PyUnicode_AS_UNICODE(v); + Py_ssize_t needed = 10 - extrachars; + extrachars += needed; + /* XXX overflow detection missing */ + if (_PyUnicode_Resize(&v, + PyUnicode_GET_SIZE(v) + needed) < 0) { + Py_DECREF(x); + goto onError; + } + p = PyUnicode_AS_UNICODE(v) + oldpos; + } + value -= 0x10000; + *p++ = 0xD800 | (value >> 10); + *p++ = 0xDC00 | (value & 0x3FF); + extrachars -= 2; + } + else +#endif *p++ = (Py_UNICODE)value; } else if (x == Py_None) { From e26d3af7ee5b8ce804786d31ecfda173d92d7ab0 Mon Sep 17 00:00:00 2001 From: Christian Heimes Date: Mon, 24 Sep 2012 13:17:08 +0200 Subject: [PATCH 155/201] Issue #16012: Fix a regression in pyexpat. The parser's UseForeignDTD() method doesn't require an argument again. --- Lib/test/test_pyexpat.py | 10 ++++++++++ Misc/NEWS | 3 +++ Modules/pyexpat.c | 2 +- 3 files changed, 14 insertions(+), 1 deletion(-) diff --git a/Lib/test/test_pyexpat.py b/Lib/test/test_pyexpat.py index 27eecb8d838..117bda0c9d5 100644 --- a/Lib/test/test_pyexpat.py +++ b/Lib/test/test_pyexpat.py @@ -641,6 +641,16 @@ def resolve_entity(context, base, system_id, public_id): parser.Parse("") self.assertEqual(handler_call_args, [(None, None)]) + # test UseForeignDTD() is equal to UseForeignDTD(True) + handler_call_args[:] = [] + + parser = expat.ParserCreate() + parser.UseForeignDTD() + parser.SetParamEntityParsing(expat.XML_PARAM_ENTITY_PARSING_ALWAYS) + parser.ExternalEntityRefHandler = resolve_entity + parser.Parse("") + self.assertEqual(handler_call_args, [(None, None)]) + def test_ignore_use_foreign_dtd(self): """ If UseForeignDTD is passed True and a document with an external diff --git a/Misc/NEWS b/Misc/NEWS index 57ed006fa76..3283117d619 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -482,6 +482,9 @@ Library Extension Modules ----------------- +- Issue #16012: Fix a regression in pyexpat. The parser's UseForeignDTD() + method doesn't require an argument again. + - Issue #15676: Now "mmap" check for empty files before doing the offset check. Patch by Steven Willis. diff --git a/Modules/pyexpat.c b/Modules/pyexpat.c index c965ff4aa0c..4b9687a051e 100644 --- a/Modules/pyexpat.c +++ b/Modules/pyexpat.c @@ -1035,7 +1035,7 @@ xmlparse_UseForeignDTD(xmlparseobject *self, PyObject *args) PyObject *flagobj = NULL; int flag = 1; enum XML_Error rc; - if (!PyArg_ParseTuple(args, "O:UseForeignDTD", &flagobj)) + if (!PyArg_ParseTuple(args, "|O:UseForeignDTD", &flagobj)) return NULL; if (flagobj != NULL) { flag = PyObject_IsTrue(flagobj); From 4f24af065ddafef6f0f20a481e7abfacbc303fcc Mon Sep 17 00:00:00 2001 From: Ezio Melotti Date: Mon, 24 Sep 2012 16:56:59 +0300 Subject: [PATCH 156/201] #16014: fix broken link. --- Doc/license.rst | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Doc/license.rst b/Doc/license.rst index cb20c833caf..a44fa046b12 100644 --- a/Doc/license.rst +++ b/Doc/license.rst @@ -325,7 +325,7 @@ Mersenne Twister ---------------- The :mod:`_random` module includes code based on a download from -http://www.math.keio.ac.jp/ matumoto/MT2002/emt19937ar.html. The following are +http://www.math.sci.hiroshima-u.ac.jp/~m-mat/MT/MT2002/emt19937ar.html. The following are the verbatim comments from the original code:: A C-program for MT19937, with initialization improved 2002/1/26. @@ -366,8 +366,8 @@ the verbatim comments from the original code:: Any feedback is very welcome. - http://www.math.keio.ac.jp/matumoto/emt.html - email: matumoto@math.keio.ac.jp + http://www.math.sci.hiroshima-u.ac.jp/~m-mat/MT/emt.html + email: m-mat @ math.sci.hiroshima-u.ac.jp (remove space) Sockets From c926c59d80cc7068bda210f5d47af898e39a314b Mon Sep 17 00:00:00 2001 From: Ezio Melotti Date: Mon, 24 Sep 2012 17:07:39 +0300 Subject: [PATCH 157/201] #16017: capitalize URLs. --- Doc/tutorial/stdlib.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Doc/tutorial/stdlib.rst b/Doc/tutorial/stdlib.rst index 97297434ed8..128e6a6f42f 100644 --- a/Doc/tutorial/stdlib.rst +++ b/Doc/tutorial/stdlib.rst @@ -148,7 +148,7 @@ Internet Access There are a number of modules for accessing the internet and processing internet protocols. Two of the simplest are :mod:`urllib.request` for retrieving data -from urls and :mod:`smtplib` for sending mail:: +from URLs and :mod:`smtplib` for sending mail:: >>> from urllib.request import urlopen >>> for line in urlopen('http://tycho.usno.navy.mil/cgi-bin/timer.pl'): From 8618fb6a65435338d88c9f7e18fff000aacb4ec0 Mon Sep 17 00:00:00 2001 From: Ezio Melotti Date: Mon, 24 Sep 2012 17:30:39 +0300 Subject: [PATCH 158/201] #16019, #16020: fix syntax highlight. --- Doc/tutorial/stdlib2.rst | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/Doc/tutorial/stdlib2.rst b/Doc/tutorial/stdlib2.rst index fe7f027b539..a9ae8714098 100644 --- a/Doc/tutorial/stdlib2.rst +++ b/Doc/tutorial/stdlib2.rst @@ -95,7 +95,7 @@ placeholders unchanged if data is missing:: >>> d = dict(item='unladen swallow') >>> t.substitute(d) Traceback (most recent call last): - . . . + ... KeyError: 'owner' >>> t.safe_substitute(d) 'Return the unladen swallow to $owner.' @@ -218,7 +218,9 @@ At its simplest, log messages are sent to a file or to ``sys.stderr``:: logging.error('Error occurred') logging.critical('Critical error -- shutting down') -This produces the following output:: +This produces the following output: + +.. code-block:: none WARNING:root:Warning:config file server.conf not found ERROR:root:Error occurred @@ -309,6 +311,8 @@ tree searches:: >>> print("Handling", d.popleft()) Handling task1 +:: + unsearched = deque([starting_node]) def breadth_first_search(unsearched): node = unsearched.popleft() From 05ee5817a1d87c85d3377a436792889af21e8972 Mon Sep 17 00:00:00 2001 From: Mark Dickinson Date: Mon, 24 Sep 2012 20:16:38 +0100 Subject: [PATCH 159/201] Issue #14167: restore statement about breaks in finally clauses. --- Doc/reference/compound_stmts.rst | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/Doc/reference/compound_stmts.rst b/Doc/reference/compound_stmts.rst index 687ba3e1360..003224ba8ed 100644 --- a/Doc/reference/compound_stmts.rst +++ b/Doc/reference/compound_stmts.rst @@ -307,11 +307,11 @@ If :keyword:`finally` is present, it specifies a 'cleanup' handler. The :keyword:`try` clause is executed, including any :keyword:`except` and :keyword:`else` clauses. If an exception occurs in any of the clauses and is not handled, the exception is temporarily saved. The :keyword:`finally` clause -is executed. If there is a saved exception or :keyword:`break` statement, -it is re-raised at the end of the :keyword:`finally` clause. If the -:keyword:`finally` clause raises another exception the saved exception -is set as the context of the new exception; if the :keyword:`finally` clause -executes a :keyword:`return` statement, the saved exception is discarded:: +is executed. If there is a saved exception it is re-raised at the end of the +:keyword:`finally` clause. If the :keyword:`finally` clause raises another +exception, the saved exception is set as the context of the new exception. +If the :keyword:`finally` clause executes a :keyword:`return` or :keyword:`break` +statement, the saved exception is discarded:: def f(): try: From 6447b9214a927eca0b24ef2918d021d27635b3d0 Mon Sep 17 00:00:00 2001 From: Victor Stinner Date: Mon, 24 Sep 2012 23:19:17 +0200 Subject: [PATCH 160/201] Close #16022: What's New in Python 3.3 document is no more at beta stage --- Doc/whatsnew/3.3.rst | 4 ---- 1 file changed, 4 deletions(-) diff --git a/Doc/whatsnew/3.3.rst b/Doc/whatsnew/3.3.rst index 617700c9aea..c1c66428a26 100644 --- a/Doc/whatsnew/3.3.rst +++ b/Doc/whatsnew/3.3.rst @@ -48,10 +48,6 @@ This article explains the new features in Python 3.3, compared to 3.2. -.. note:: Beta users should be aware that this document is currently in - draft form. It will be updated substantially as Python 3.3 moves towards - release, so it's worth checking back even after reading earlier versions. - Summary -- Release highlights ============================= From 9bb56a66c548e84012de141e4665ea39701c1e5f Mon Sep 17 00:00:00 2001 From: Chris Jerdonek Date: Mon, 24 Sep 2012 19:28:59 -0700 Subject: [PATCH 161/201] Issue #16015: Fix NameError doctest example in tutorial introduction. --- Doc/tutorial/introduction.rst | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/Doc/tutorial/introduction.rst b/Doc/tutorial/introduction.rst index 43ea7aa3718..b6d94accfdd 100644 --- a/Doc/tutorial/introduction.rst +++ b/Doc/tutorial/introduction.rst @@ -94,8 +94,7 @@ A value can be assigned to several variables simultaneously:: Variables must be "defined" (assigned a value) before they can be used, or an error will occur:: - >>> # try to access an undefined variable - ... n + >>> n # try to access an undefined variable Traceback (most recent call last): File "", line 1, in NameError: name 'n' is not defined From 67b7b98a479a5703a5707b6ea0cf81d3e0b441ea Mon Sep 17 00:00:00 2001 From: Senthil Kumaran Date: Tue, 25 Sep 2012 02:30:27 -0700 Subject: [PATCH 162/201] Issue #16013: Fix CSV Reader parsing issue with ending quote characters. Patch by Serhiy Storchaka. --- Lib/test/test_csv.py | 9 +++++++++ Misc/NEWS | 3 +++ Modules/_csv.c | 10 +++++++--- 3 files changed, 19 insertions(+), 3 deletions(-) diff --git a/Lib/test/test_csv.py b/Lib/test/test_csv.py index 8ca1e62c4ae..55796a204ad 100644 --- a/Lib/test/test_csv.py +++ b/Lib/test/test_csv.py @@ -225,6 +225,15 @@ def test_read_eol(self): self.assertRaises(csv.Error, self._read_test, ['a,b\nc,d'], []) self.assertRaises(csv.Error, self._read_test, ['a,b\r\nc,d'], []) + def test_read_eof(self): + self._read_test(['a,"'], [['a', '']]) + self._read_test(['"a'], [['a']]) + self._read_test(['^'], [['\n']], escapechar='^') + self.assertRaises(csv.Error, self._read_test, ['a,"'], [], strict=True) + self.assertRaises(csv.Error, self._read_test, ['"a'], [], strict=True) + self.assertRaises(csv.Error, self._read_test, + ['^'], [], escapechar='^', strict=True) + def test_read_escape(self): self._read_test(['a,\\b,c'], [['a', 'b', 'c']], escapechar='\\') self._read_test(['a,b\\,c'], [['a', 'b,c']], escapechar='\\') diff --git a/Misc/NEWS b/Misc/NEWS index 3283117d619..ab3c7d447a8 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -123,6 +123,9 @@ Core and Builtins Library ------- +- Issue #16013: Fix CSV Reader parsing issue with ending quote characters. + Patch by Serhiy Storchaka. + - Issue #15421: fix an OverflowError in Calendar.itermonthdates() after datetime.MAXYEAR. Patch by Cédric Krier. diff --git a/Modules/_csv.c b/Modules/_csv.c index 6c564d727bb..88d4f9774fa 100644 --- a/Modules/_csv.c +++ b/Modules/_csv.c @@ -759,9 +759,13 @@ Reader_iternext(ReaderObj *self) lineobj = PyIter_Next(self->input_iter); if (lineobj == NULL) { /* End of input OR exception */ - if (!PyErr_Occurred() && self->field_len != 0) - PyErr_Format(error_obj, - "newline inside string"); + if (!PyErr_Occurred() && (self->field_len != 0 || + self->state == IN_QUOTED_FIELD)) { + if (self->dialect->strict) + PyErr_SetString(error_obj, "unexpected end of data"); + else if (parse_save_field(self) >= 0) + break; + } return NULL; } if (!PyUnicode_Check(lineobj)) { From df12f2bbb6d7d2a26fc10072ead199b3a19c6623 Mon Sep 17 00:00:00 2001 From: Chris Jerdonek Date: Tue, 25 Sep 2012 04:20:29 -0700 Subject: [PATCH 163/201] Issue #16015: Make welcome message more realistic in tutorial example. --- Doc/tutorial/interpreter.rst | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/Doc/tutorial/interpreter.rst b/Doc/tutorial/interpreter.rst index 2338465d628..d61dafcaf1e 100644 --- a/Doc/tutorial/interpreter.rst +++ b/Doc/tutorial/interpreter.rst @@ -12,7 +12,9 @@ Invoking the Interpreter The Python interpreter is usually installed as :file:`/usr/local/bin/python3.2` on those machines where it is available; putting :file:`/usr/local/bin` in your -Unix shell's search path makes it possible to start it by typing the command :: +Unix shell's search path makes it possible to start it by typing the command: + +.. code-block:: text python3.2 @@ -94,8 +96,8 @@ prints a welcome message stating its version number and a copyright notice before printing the first prompt:: $ python3.2 - Python 3.2 (py3k, Sep 12 2007, 12:21:02) - [GCC 3.4.6 20060404 (Red Hat 3.4.6-8)] on linux2 + Python 3.2.3 (default, May 3 2012, 15:54:42) + [GCC 4.6.3] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> From d266c4451f25840651d94b6e68b05a0e28dd2a03 Mon Sep 17 00:00:00 2001 From: Brett Cannon Date: Tue, 25 Sep 2012 10:23:47 -0400 Subject: [PATCH 164/201] Make the decimal bench file run under Python 2.7. --- Modules/_decimal/tests/bench.py | 46 ++++++++++++++++++++------------- 1 file changed, 28 insertions(+), 18 deletions(-) diff --git a/Modules/_decimal/tests/bench.py b/Modules/_decimal/tests/bench.py index 01f851c8195..ce864b4f114 100644 --- a/Modules/_decimal/tests/bench.py +++ b/Modules/_decimal/tests/bench.py @@ -10,7 +10,10 @@ import time from math import log, ceil -from test.support import import_fresh_module +try: + from test.support import import_fresh_module +except ImportError: + from test.test_support import import_fresh_module C = import_fresh_module('decimal', fresh=['_decimal']) P = import_fresh_module('decimal', blocked=['_decimal']) @@ -69,9 +72,13 @@ def factorial(n, m): for prec in [9, 19]: print("\nPrecision: %d decimal digits\n" % prec) - for func in [pi_float, pi_cdecimal, pi_decimal]: + to_benchmark = [pi_float, pi_decimal] + if C is not None: + to_benchmark.append(pi_cdecimal) + for func in to_benchmark: start = time.time() - C.getcontext().prec = prec + if C is not None: + C.getcontext().prec = prec P.getcontext().prec = prec for i in range(10000): x = func() @@ -84,25 +91,27 @@ def factorial(n, m): print("# Factorial") print("# ======================================================================\n") -c = C.getcontext() -c.prec = C.MAX_PREC -c.Emax = C.MAX_EMAX -c.Emin = C.MIN_EMIN +if C is not None: + c = C.getcontext() + c.prec = C.MAX_PREC + c.Emax = C.MAX_EMAX + c.Emin = C.MIN_EMIN for n in [100000, 1000000]: print("n = %d\n" % n) - # C version of decimal - start_calc = time.time() - x = factorial(C.Decimal(n), 0) - end_calc = time.time() - start_conv = time.time() - sx = str(x) - end_conv = time.time() - print("cdecimal:") - print("calculation time: %fs" % (end_calc-start_calc)) - print("conversion time: %fs\n" % (end_conv-start_conv)) + if C is not None: + # C version of decimal + start_calc = time.time() + x = factorial(C.Decimal(n), 0) + end_calc = time.time() + start_conv = time.time() + sx = str(x) + end_conv = time.time() + print("cdecimal:") + print("calculation time: %fs" % (end_calc-start_calc)) + print("conversion time: %fs\n" % (end_conv-start_conv)) # Python integers start_calc = time.time() @@ -116,4 +125,5 @@ def factorial(n, m): print("calculation time: %fs" % (end_calc-start_calc)) print("conversion time: %fs\n\n" % (end_conv-start_conv)) - assert(sx == sy) + if C is not None: + assert(sx == sy) From 63092fe0ea5779aea6c64020290863d125de7fa2 Mon Sep 17 00:00:00 2001 From: Brett Cannon Date: Tue, 25 Sep 2012 10:25:41 -0400 Subject: [PATCH 165/201] Fix whitespace. --- Modules/_decimal/tests/bench.py | 36 ++++++++++++++++----------------- 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/Modules/_decimal/tests/bench.py b/Modules/_decimal/tests/bench.py index ce864b4f114..fef7a220196 100644 --- a/Modules/_decimal/tests/bench.py +++ b/Modules/_decimal/tests/bench.py @@ -11,9 +11,9 @@ import time from math import log, ceil try: - from test.support import import_fresh_module + from test.support import import_fresh_module except ImportError: - from test.test_support import import_fresh_module + from test.test_support import import_fresh_module C = import_fresh_module('decimal', fresh=['_decimal']) P = import_fresh_module('decimal', blocked=['_decimal']) @@ -74,7 +74,7 @@ def factorial(n, m): print("\nPrecision: %d decimal digits\n" % prec) to_benchmark = [pi_float, pi_decimal] if C is not None: - to_benchmark.append(pi_cdecimal) + to_benchmark.append(pi_cdecimal) for func in to_benchmark: start = time.time() if C is not None: @@ -92,26 +92,26 @@ def factorial(n, m): print("# ======================================================================\n") if C is not None: - c = C.getcontext() - c.prec = C.MAX_PREC - c.Emax = C.MAX_EMAX - c.Emin = C.MIN_EMIN + c = C.getcontext() + c.prec = C.MAX_PREC + c.Emax = C.MAX_EMAX + c.Emin = C.MIN_EMIN for n in [100000, 1000000]: print("n = %d\n" % n) if C is not None: - # C version of decimal - start_calc = time.time() - x = factorial(C.Decimal(n), 0) - end_calc = time.time() - start_conv = time.time() - sx = str(x) - end_conv = time.time() - print("cdecimal:") - print("calculation time: %fs" % (end_calc-start_calc)) - print("conversion time: %fs\n" % (end_conv-start_conv)) + # C version of decimal + start_calc = time.time() + x = factorial(C.Decimal(n), 0) + end_calc = time.time() + start_conv = time.time() + sx = str(x) + end_conv = time.time() + print("cdecimal:") + print("calculation time: %fs" % (end_calc-start_calc)) + print("conversion time: %fs\n" % (end_conv-start_conv)) # Python integers start_calc = time.time() @@ -126,4 +126,4 @@ def factorial(n, m): print("conversion time: %fs\n\n" % (end_conv-start_conv)) if C is not None: - assert(sx == sy) + assert(sx == sy) From 6cf50c5b1deb7d31debe345e2d18f8402d00d1f4 Mon Sep 17 00:00:00 2001 From: Brett Cannon Date: Tue, 25 Sep 2012 10:26:15 -0400 Subject: [PATCH 166/201] Fix whitespace. --- Modules/_decimal/tests/bench.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Modules/_decimal/tests/bench.py b/Modules/_decimal/tests/bench.py index fef7a220196..23b80b4bedf 100644 --- a/Modules/_decimal/tests/bench.py +++ b/Modules/_decimal/tests/bench.py @@ -78,7 +78,7 @@ def factorial(n, m): for func in to_benchmark: start = time.time() if C is not None: - C.getcontext().prec = prec + C.getcontext().prec = prec P.getcontext().prec = prec for i in range(10000): x = func() From 1dedd0a4a4b88eeabb95af4b372a447b4d41b223 Mon Sep 17 00:00:00 2001 From: Barry Warsaw Date: Tue, 25 Sep 2012 10:37:58 -0400 Subject: [PATCH 167/201] - Issue #15935: Clarification of argparse docs, re: add_argument() type and default arguments. Patch contributed by Chris Jerdonek. --- Doc/library/argparse.rst | 14 ++++++++++++++ Misc/NEWS | 3 +++ 2 files changed, 17 insertions(+) diff --git a/Doc/library/argparse.rst b/Doc/library/argparse.rst index 1313e4b1de1..5273e9b12c4 100644 --- a/Doc/library/argparse.rst +++ b/Doc/library/argparse.rst @@ -904,6 +904,17 @@ was not present at the command line:: >>> parser.parse_args(''.split()) Namespace(foo=42) +If the ``default`` value is a string, the parser parses the value as if it +were a command-line argument. In particular, the parser applies any type_ +conversion argument, if provided, before setting the attribute on the +:class:`Namespace` return value. Otherwise, the parser uses the value as is:: + + >>> parser = argparse.ArgumentParser() + >>> parser.add_argument('--length', default='10', type=int) + >>> parser.add_argument('--width', default=10.5, type=int) + >>> parser.parse_args() + Namespace(length=10, width=10.5) + For positional arguments with nargs_ equal to ``?`` or ``*``, the ``default`` value is used when no command-line argument was present:: @@ -942,6 +953,9 @@ types and functions can be used directly as the value of the ``type`` argument:: >>> parser.parse_args('2 temp.txt'.split()) Namespace(bar=<_io.TextIOWrapper name='temp.txt' encoding='UTF-8'>, foo=2) +See the section on the default_ keyword argument for information on when the +``type`` argument is applied to default arguments. + To ease the use of various types of files, the argparse module provides the factory FileType which takes the ``mode=`` and ``bufsize=`` arguments of the :func:`open` function. For example, ``FileType('w')`` can be used to create a diff --git a/Misc/NEWS b/Misc/NEWS index ab3c7d447a8..2285f8c285f 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -589,6 +589,9 @@ Build Documentation ------------- +- Issue #15935: Clarification of argparse docs, re: add_argument() type and + default arguments. Patch contributed by Chris Jerdonek. + - Issue #11964: Document a change in v3.2 to the behavior of the indent parameter of json encoding operations. From d388c4e02f824808c7d9d46d95fac4497fdd89b2 Mon Sep 17 00:00:00 2001 From: Benjamin Peterson Date: Tue, 25 Sep 2012 11:01:41 -0400 Subject: [PATCH 168/201] use modern conditional syntax --- Lib/test/test_import.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Lib/test/test_import.py b/Lib/test/test_import.py index cfed1428458..0f8f1f584f5 100644 --- a/Lib/test/test_import.py +++ b/Lib/test/test_import.py @@ -575,7 +575,7 @@ def test_import_pyc_path(self): self.assertTrue(os.path.exists('__pycache__')) self.assertTrue(os.path.exists(os.path.join( '__pycache__', '{}.{}.py{}'.format( - TESTFN, self.tag, __debug__ and 'c' or 'o')))) + TESTFN, self.tag, 'c' if __debug__ else 'o')))) @unittest.skipUnless(os.name == 'posix', "test meaningful only on posix systems") From 6b6a1df9960b9f2bb1834ae81290fe04d2f259a6 Mon Sep 17 00:00:00 2001 From: Stefan Krah Date: Tue, 25 Sep 2012 17:07:55 +0200 Subject: [PATCH 169/201] Restore the benchmark order to avoid waiting for decimal.py if just the prec=9 test is used. --- Modules/_decimal/tests/bench.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/Modules/_decimal/tests/bench.py b/Modules/_decimal/tests/bench.py index 23b80b4bedf..7ab6b4464ce 100644 --- a/Modules/_decimal/tests/bench.py +++ b/Modules/_decimal/tests/bench.py @@ -70,11 +70,12 @@ def factorial(n, m): print("# Calculating pi, 10000 iterations") print("# ======================================================================\n") +to_benchmark = [pi_float, pi_decimal] +if C is not None: + to_benchmark.insert(1, pi_cdecimal) + for prec in [9, 19]: print("\nPrecision: %d decimal digits\n" % prec) - to_benchmark = [pi_float, pi_decimal] - if C is not None: - to_benchmark.append(pi_cdecimal) for func in to_benchmark: start = time.time() if C is not None: From feaa54f537cf36ca47cefd934a568ff92fe3aa43 Mon Sep 17 00:00:00 2001 From: Benjamin Peterson Date: Tue, 25 Sep 2012 11:22:59 -0400 Subject: [PATCH 170/201] don't depend on __debug__ because it's baked in at freeze time (issue #16046) --- Lib/importlib/_bootstrap.py | 17 +- Misc/NEWS | 2 + Python/importlib.h | 8585 ++++++++++++++++++----------------- 3 files changed, 4308 insertions(+), 4296 deletions(-) diff --git a/Lib/importlib/_bootstrap.py b/Lib/importlib/_bootstrap.py index 6697b2bb6dd..5c4d2c6adc6 100644 --- a/Lib/importlib/_bootstrap.py +++ b/Lib/importlib/_bootstrap.py @@ -411,25 +411,21 @@ def _call_with_frames_removed(f, *args, **kwds): DEBUG_BYTECODE_SUFFIXES = ['.pyc'] OPTIMIZED_BYTECODE_SUFFIXES = ['.pyo'] -if __debug__: - BYTECODE_SUFFIXES = DEBUG_BYTECODE_SUFFIXES -else: - BYTECODE_SUFFIXES = OPTIMIZED_BYTECODE_SUFFIXES def cache_from_source(path, debug_override=None): """Given the path to a .py file, return the path to its .pyc/.pyo file. The .py file does not need to exist; this simply returns the path to the .pyc/.pyo file calculated as if the .py file were imported. The extension - will be .pyc unless __debug__ is not defined, then it will be .pyo. + will be .pyc unless sys.flags.optimize is non-zero, then it will be .pyo. If debug_override is not None, then it must be a boolean and is taken as - the value of __debug__ instead. + the value of bool(sys.flags.optimize) instead. If sys.implementation.cache_tag is None then NotImplementedError is raised. """ - debug = __debug__ if debug_override is None else debug_override + debug = not sys.flags.optimize if debug_override is None else debug_override if debug: suffixes = DEBUG_BYTECODE_SUFFIXES else: @@ -1688,10 +1684,15 @@ def _setup(sys_module, _imp_module): modules, those two modules must be explicitly passed in. """ - global _imp, sys + global _imp, sys, BYTECODE_SUFFIXES _imp = _imp_module sys = sys_module + if sys.flags.optimize: + BYTECODE_SUFFIXES = OPTIMIZED_BYTECODE_SUFFIXES + else: + BYTECODE_SUFFIXES = DEBUG_BYTECODE_SUFFIXES + for module in (_imp, sys): if not hasattr(module, '__loader__'): module.__loader__ = BuiltinImporter diff --git a/Misc/NEWS b/Misc/NEWS index 18d743b5dfe..c39ab778ab2 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -10,6 +10,8 @@ What's New in Python 3.3.1? Core and Builtins ----------------- +- Issue #16046: Fix loading sourceless legacy pyos. + - Issue #15379: Fix passing of non-BMP characters as integers for the charmap decoder (already working as unicode strings). Patch by Serhiy Storchaka. diff --git a/Python/importlib.h b/Python/importlib.h index e0e013c0a23..ee800ce32af 100644 --- a/Python/importlib.h +++ b/Python/importlib.h @@ -1,7 +1,7 @@ /* Auto-generated by Modules/_freeze_importlib.c */ unsigned char _Py_M__importlib[] = { 99,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0, - 0,64,0,0,0,115,206,3,0,0,100,0,0,90,0,0, + 0,64,0,0,0,115,200,3,0,0,100,0,0,90,0,0, 100,129,0,90,1,0,100,4,0,100,5,0,132,0,0,90, 2,0,100,6,0,100,7,0,132,0,0,90,3,0,100,8, 0,100,9,0,132,0,0,90,4,0,100,10,0,100,11,0, @@ -25,4361 +25,4370 @@ unsigned char _Py_M__importlib[] = { 48,0,131,3,0,68,131,1,0,131,1,0,90,29,0,100, 49,0,90,30,0,100,50,0,103,1,0,90,31,0,100,51, 0,103,1,0,90,32,0,100,52,0,103,1,0,90,33,0, - 101,32,0,90,34,0,100,128,0,100,53,0,100,54,0,132, - 1,0,90,36,0,100,55,0,100,56,0,132,0,0,90,37, - 0,100,57,0,100,58,0,132,0,0,90,38,0,100,59,0, - 100,60,0,132,0,0,90,39,0,100,61,0,100,62,0,132, - 0,0,90,40,0,100,63,0,100,64,0,132,0,0,90,41, - 0,100,65,0,100,66,0,132,0,0,90,42,0,100,67,0, - 100,68,0,132,0,0,90,43,0,100,69,0,100,70,0,132, - 0,0,90,44,0,100,71,0,100,72,0,132,0,0,90,45, - 0,100,73,0,100,74,0,132,0,0,90,46,0,71,100,75, - 0,100,76,0,132,0,0,100,76,0,131,2,0,90,47,0, - 71,100,77,0,100,78,0,132,0,0,100,78,0,131,2,0, - 90,48,0,71,100,79,0,100,80,0,132,0,0,100,80,0, - 131,2,0,90,49,0,71,100,81,0,100,82,0,132,0,0, - 100,82,0,131,2,0,90,50,0,71,100,83,0,100,84,0, - 132,0,0,100,84,0,101,50,0,131,3,0,90,51,0,71, - 100,85,0,100,86,0,132,0,0,100,86,0,131,2,0,90, - 52,0,71,100,87,0,100,88,0,132,0,0,100,88,0,101, - 52,0,101,51,0,131,4,0,90,53,0,71,100,89,0,100, - 90,0,132,0,0,100,90,0,101,52,0,101,50,0,131,4, - 0,90,54,0,103,0,0,90,55,0,71,100,91,0,100,92, - 0,132,0,0,100,92,0,131,2,0,90,56,0,71,100,93, - 0,100,94,0,132,0,0,100,94,0,131,2,0,90,57,0, - 71,100,95,0,100,96,0,132,0,0,100,96,0,131,2,0, - 90,58,0,71,100,97,0,100,98,0,132,0,0,100,98,0, - 131,2,0,90,59,0,71,100,99,0,100,100,0,132,0,0, - 100,100,0,131,2,0,90,60,0,71,100,101,0,100,102,0, - 132,0,0,100,102,0,131,2,0,90,61,0,100,103,0,100, - 104,0,132,0,0,90,62,0,100,105,0,100,106,0,132,0, - 0,90,63,0,100,107,0,100,108,0,132,0,0,90,64,0, - 100,109,0,90,65,0,100,110,0,100,111,0,132,0,0,90, - 66,0,100,112,0,100,113,0,132,0,0,90,67,0,100,128, - 0,100,46,0,100,114,0,100,115,0,132,2,0,90,68,0, - 100,116,0,100,117,0,132,0,0,90,69,0,100,118,0,100, - 119,0,132,0,0,90,70,0,100,120,0,100,121,0,132,0, - 0,90,71,0,100,128,0,100,128,0,102,0,0,100,46,0, - 100,122,0,100,123,0,132,4,0,90,72,0,100,124,0,100, - 125,0,132,0,0,90,73,0,100,126,0,100,127,0,132,0, - 0,90,74,0,100,128,0,83,40,130,0,0,0,117,83,1, - 0,0,67,111,114,101,32,105,109,112,108,101,109,101,110,116, + 100,128,0,100,53,0,100,54,0,132,1,0,90,35,0,100, + 55,0,100,56,0,132,0,0,90,36,0,100,57,0,100,58, + 0,132,0,0,90,37,0,100,59,0,100,60,0,132,0,0, + 90,38,0,100,61,0,100,62,0,132,0,0,90,39,0,100, + 63,0,100,64,0,132,0,0,90,40,0,100,65,0,100,66, + 0,132,0,0,90,41,0,100,67,0,100,68,0,132,0,0, + 90,42,0,100,69,0,100,70,0,132,0,0,90,43,0,100, + 71,0,100,72,0,132,0,0,90,44,0,100,73,0,100,74, + 0,132,0,0,90,45,0,71,100,75,0,100,76,0,132,0, + 0,100,76,0,131,2,0,90,46,0,71,100,77,0,100,78, + 0,132,0,0,100,78,0,131,2,0,90,47,0,71,100,79, + 0,100,80,0,132,0,0,100,80,0,131,2,0,90,48,0, + 71,100,81,0,100,82,0,132,0,0,100,82,0,131,2,0, + 90,49,0,71,100,83,0,100,84,0,132,0,0,100,84,0, + 101,49,0,131,3,0,90,50,0,71,100,85,0,100,86,0, + 132,0,0,100,86,0,131,2,0,90,51,0,71,100,87,0, + 100,88,0,132,0,0,100,88,0,101,51,0,101,50,0,131, + 4,0,90,52,0,71,100,89,0,100,90,0,132,0,0,100, + 90,0,101,51,0,101,49,0,131,4,0,90,53,0,103,0, + 0,90,54,0,71,100,91,0,100,92,0,132,0,0,100,92, + 0,131,2,0,90,55,0,71,100,93,0,100,94,0,132,0, + 0,100,94,0,131,2,0,90,56,0,71,100,95,0,100,96, + 0,132,0,0,100,96,0,131,2,0,90,57,0,71,100,97, + 0,100,98,0,132,0,0,100,98,0,131,2,0,90,58,0, + 71,100,99,0,100,100,0,132,0,0,100,100,0,131,2,0, + 90,59,0,71,100,101,0,100,102,0,132,0,0,100,102,0, + 131,2,0,90,60,0,100,103,0,100,104,0,132,0,0,90, + 61,0,100,105,0,100,106,0,132,0,0,90,62,0,100,107, + 0,100,108,0,132,0,0,90,63,0,100,109,0,90,64,0, + 100,110,0,100,111,0,132,0,0,90,65,0,100,112,0,100, + 113,0,132,0,0,90,66,0,100,128,0,100,46,0,100,114, + 0,100,115,0,132,2,0,90,67,0,100,116,0,100,117,0, + 132,0,0,90,68,0,100,118,0,100,119,0,132,0,0,90, + 69,0,100,120,0,100,121,0,132,0,0,90,70,0,100,128, + 0,100,128,0,102,0,0,100,46,0,100,122,0,100,123,0, + 132,4,0,90,71,0,100,124,0,100,125,0,132,0,0,90, + 72,0,100,126,0,100,127,0,132,0,0,90,73,0,100,128, + 0,83,40,130,0,0,0,117,83,1,0,0,67,111,114,101, + 32,105,109,112,108,101,109,101,110,116,97,116,105,111,110,32, + 111,102,32,105,109,112,111,114,116,46,10,10,84,104,105,115, + 32,109,111,100,117,108,101,32,105,115,32,78,79,84,32,109, + 101,97,110,116,32,116,111,32,98,101,32,100,105,114,101,99, + 116,108,121,32,105,109,112,111,114,116,101,100,33,32,73,116, + 32,104,97,115,32,98,101,101,110,32,100,101,115,105,103,110, + 101,100,32,115,117,99,104,10,116,104,97,116,32,105,116,32, + 99,97,110,32,98,101,32,98,111,111,116,115,116,114,97,112, + 112,101,100,32,105,110,116,111,32,80,121,116,104,111,110,32, + 97,115,32,116,104,101,32,105,109,112,108,101,109,101,110,116, 97,116,105,111,110,32,111,102,32,105,109,112,111,114,116,46, - 10,10,84,104,105,115,32,109,111,100,117,108,101,32,105,115, - 32,78,79,84,32,109,101,97,110,116,32,116,111,32,98,101, - 32,100,105,114,101,99,116,108,121,32,105,109,112,111,114,116, - 101,100,33,32,73,116,32,104,97,115,32,98,101,101,110,32, - 100,101,115,105,103,110,101,100,32,115,117,99,104,10,116,104, - 97,116,32,105,116,32,99,97,110,32,98,101,32,98,111,111, - 116,115,116,114,97,112,112,101,100,32,105,110,116,111,32,80, - 121,116,104,111,110,32,97,115,32,116,104,101,32,105,109,112, - 108,101,109,101,110,116,97,116,105,111,110,32,111,102,32,105, - 109,112,111,114,116,46,32,65,115,10,115,117,99,104,32,105, - 116,32,114,101,113,117,105,114,101,115,32,116,104,101,32,105, - 110,106,101,99,116,105,111,110,32,111,102,32,115,112,101,99, - 105,102,105,99,32,109,111,100,117,108,101,115,32,97,110,100, - 32,97,116,116,114,105,98,117,116,101,115,32,105,110,32,111, - 114,100,101,114,32,116,111,10,119,111,114,107,46,32,79,110, - 101,32,115,104,111,117,108,100,32,117,115,101,32,105,109,112, - 111,114,116,108,105,98,32,97,115,32,116,104,101,32,112,117, - 98,108,105,99,45,102,97,99,105,110,103,32,118,101,114,115, - 105,111,110,32,111,102,32,116,104,105,115,32,109,111,100,117, - 108,101,46,10,10,117,3,0,0,0,119,105,110,117,6,0, - 0,0,99,121,103,119,105,110,117,6,0,0,0,100,97,114, - 119,105,110,99,0,0,0,0,0,0,0,0,1,0,0,0, - 2,0,0,0,67,0,0,0,115,49,0,0,0,116,0,0, - 106,1,0,106,2,0,116,3,0,131,1,0,114,33,0,100, - 1,0,100,2,0,132,0,0,125,0,0,110,12,0,100,3, - 0,100,2,0,132,0,0,125,0,0,124,0,0,83,40,4, - 0,0,0,78,99,0,0,0,0,0,0,0,0,0,0,0, - 0,2,0,0,0,83,0,0,0,115,13,0,0,0,100,1, - 0,116,0,0,106,1,0,107,6,0,83,40,2,0,0,0, - 117,53,0,0,0,84,114,117,101,32,105,102,32,102,105,108, - 101,110,97,109,101,115,32,109,117,115,116,32,98,101,32,99, - 104,101,99,107,101,100,32,99,97,115,101,45,105,110,115,101, - 110,115,105,116,105,118,101,108,121,46,115,12,0,0,0,80, - 89,84,72,79,78,67,65,83,69,79,75,40,2,0,0,0, - 117,3,0,0,0,95,111,115,117,7,0,0,0,101,110,118, - 105,114,111,110,40,0,0,0,0,40,0,0,0,0,40,0, - 0,0,0,117,29,0,0,0,60,102,114,111,122,101,110,32, - 105,109,112,111,114,116,108,105,98,46,95,98,111,111,116,115, - 116,114,97,112,62,117,11,0,0,0,95,114,101,108,97,120, - 95,99,97,115,101,34,0,0,0,115,2,0,0,0,0,2, - 117,37,0,0,0,95,109,97,107,101,95,114,101,108,97,120, - 95,99,97,115,101,46,60,108,111,99,97,108,115,62,46,95, - 114,101,108,97,120,95,99,97,115,101,99,0,0,0,0,0, - 0,0,0,0,0,0,0,1,0,0,0,83,0,0,0,115, - 4,0,0,0,100,1,0,83,40,2,0,0,0,117,53,0, - 0,0,84,114,117,101,32,105,102,32,102,105,108,101,110,97, - 109,101,115,32,109,117,115,116,32,98,101,32,99,104,101,99, - 107,101,100,32,99,97,115,101,45,105,110,115,101,110,115,105, - 116,105,118,101,108,121,46,70,40,1,0,0,0,117,5,0, - 0,0,70,97,108,115,101,40,0,0,0,0,40,0,0,0, - 0,40,0,0,0,0,117,29,0,0,0,60,102,114,111,122, - 101,110,32,105,109,112,111,114,116,108,105,98,46,95,98,111, - 111,116,115,116,114,97,112,62,117,11,0,0,0,95,114,101, - 108,97,120,95,99,97,115,101,38,0,0,0,115,2,0,0, - 0,0,2,40,4,0,0,0,117,3,0,0,0,115,121,115, - 117,8,0,0,0,112,108,97,116,102,111,114,109,117,10,0, - 0,0,115,116,97,114,116,115,119,105,116,104,117,27,0,0, - 0,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,40,1,0,0, - 0,117,11,0,0,0,95,114,101,108,97,120,95,99,97,115, - 101,40,0,0,0,0,40,0,0,0,0,117,29,0,0,0, - 60,102,114,111,122,101,110,32,105,109,112,111,114,116,108,105, - 98,46,95,98,111,111,116,115,116,114,97,112,62,117,16,0, - 0,0,95,109,97,107,101,95,114,101,108,97,120,95,99,97, - 115,101,32,0,0,0,115,8,0,0,0,0,1,18,1,15, - 4,12,3,117,16,0,0,0,95,109,97,107,101,95,114,101, - 108,97,120,95,99,97,115,101,99,1,0,0,0,0,0,0, - 0,2,0,0,0,3,0,0,0,67,0,0,0,115,108,0, - 0,0,116,0,0,124,0,0,131,1,0,125,0,0,103,0, - 0,125,1,0,124,1,0,106,1,0,124,0,0,100,1,0, - 64,131,1,0,1,124,1,0,106,1,0,124,0,0,100,2, - 0,63,100,1,0,64,131,1,0,1,124,1,0,106,1,0, - 124,0,0,100,3,0,63,100,1,0,64,131,1,0,1,124, - 1,0,106,1,0,124,0,0,100,4,0,63,100,1,0,64, - 131,1,0,1,116,2,0,124,1,0,131,1,0,83,40,5, - 0,0,0,117,111,0,0,0,67,111,110,118,101,114,116,32, - 97,32,51,50,45,98,105,116,32,105,110,116,101,103,101,114, - 32,116,111,32,108,105,116,116,108,101,45,101,110,100,105,97, - 110,46,10,10,32,32,32,32,88,88,88,32,84,101,109,112, - 111,114,97,114,121,32,117,110,116,105,108,32,109,97,114,115, - 104,97,108,39,115,32,108,111,110,103,32,102,117,110,99,116, - 105,111,110,115,32,97,114,101,32,101,120,112,111,115,101,100, - 46,10,10,32,32,32,32,105,255,0,0,0,105,8,0,0, - 0,105,16,0,0,0,105,24,0,0,0,40,3,0,0,0, - 117,3,0,0,0,105,110,116,117,6,0,0,0,97,112,112, - 101,110,100,117,9,0,0,0,98,121,116,101,97,114,114,97, - 121,40,2,0,0,0,117,1,0,0,0,120,117,9,0,0, - 0,105,110,116,95,98,121,116,101,115,40,0,0,0,0,40, - 0,0,0,0,117,29,0,0,0,60,102,114,111,122,101,110, - 32,105,109,112,111,114,116,108,105,98,46,95,98,111,111,116, - 115,116,114,97,112,62,117,7,0,0,0,95,119,95,108,111, - 110,103,45,0,0,0,115,14,0,0,0,0,6,12,1,6, - 1,17,1,21,1,21,1,21,1,117,7,0,0,0,95,119, - 95,108,111,110,103,99,1,0,0,0,0,0,0,0,2,0, - 0,0,3,0,0,0,67,0,0,0,115,68,0,0,0,124, - 0,0,100,1,0,25,125,1,0,124,1,0,124,0,0,100, - 2,0,25,100,3,0,62,79,125,1,0,124,1,0,124,0, - 0,100,4,0,25,100,5,0,62,79,125,1,0,124,1,0, - 124,0,0,100,6,0,25,100,7,0,62,79,125,1,0,124, - 1,0,83,40,8,0,0,0,117,115,0,0,0,67,111,110, - 118,101,114,116,32,52,32,98,121,116,101,115,32,105,110,32, - 108,105,116,116,108,101,45,101,110,100,105,97,110,32,116,111, - 32,97,110,32,105,110,116,101,103,101,114,46,10,10,32,32, - 32,32,88,88,88,32,84,101,109,112,111,114,97,114,121,32, - 117,110,116,105,108,32,109,97,114,115,104,97,108,39,115,32, - 108,111,110,103,32,102,117,110,99,116,105,111,110,32,97,114, - 101,32,101,120,112,111,115,101,100,46,10,10,32,32,32,32, - 105,0,0,0,0,105,1,0,0,0,105,8,0,0,0,105, - 2,0,0,0,105,16,0,0,0,105,3,0,0,0,105,24, - 0,0,0,40,0,0,0,0,40,2,0,0,0,117,9,0, - 0,0,105,110,116,95,98,121,116,101,115,117,1,0,0,0, - 120,40,0,0,0,0,40,0,0,0,0,117,29,0,0,0, - 60,102,114,111,122,101,110,32,105,109,112,111,114,116,108,105, - 98,46,95,98,111,111,116,115,116,114,97,112,62,117,7,0, - 0,0,95,114,95,108,111,110,103,61,0,0,0,115,10,0, - 0,0,0,6,10,1,18,1,18,1,18,1,117,7,0,0, - 0,95,114,95,108,111,110,103,99,0,0,0,0,0,0,0, - 0,3,0,0,0,4,0,0,0,71,0,0,0,115,103,0, - 0,0,103,0,0,125,1,0,120,71,0,124,0,0,68,93, - 63,0,125,2,0,124,2,0,115,31,0,113,13,0,110,0, - 0,124,1,0,106,0,0,124,2,0,131,1,0,1,124,2, - 0,100,4,0,25,116,1,0,107,7,0,114,13,0,124,1, - 0,106,0,0,116,2,0,131,1,0,1,113,13,0,113,13, - 0,87,100,2,0,106,3,0,124,1,0,100,3,0,100,5, - 0,133,2,0,25,131,1,0,83,40,6,0,0,0,117,31, - 0,0,0,82,101,112,108,97,99,101,109,101,110,116,32,102, - 111,114,32,111,115,46,112,97,116,104,46,106,111,105,110,40, - 41,46,105,1,0,0,0,117,0,0,0,0,78,105,255,255, - 255,255,105,255,255,255,255,40,4,0,0,0,117,6,0,0, - 0,97,112,112,101,110,100,117,15,0,0,0,112,97,116,104, - 95,115,101,112,97,114,97,116,111,114,115,117,8,0,0,0, - 112,97,116,104,95,115,101,112,117,4,0,0,0,106,111,105, - 110,40,3,0,0,0,117,10,0,0,0,112,97,116,104,95, - 112,97,114,116,115,117,9,0,0,0,110,101,119,95,112,97, - 114,116,115,117,4,0,0,0,112,97,114,116,40,0,0,0, - 0,40,0,0,0,0,117,29,0,0,0,60,102,114,111,122, - 101,110,32,105,109,112,111,114,116,108,105,98,46,95,98,111, - 111,116,115,116,114,97,112,62,117,10,0,0,0,95,112,97, - 116,104,95,106,111,105,110,74,0,0,0,115,16,0,0,0, - 0,2,6,1,13,1,6,1,6,1,13,1,16,1,20,1, - 117,10,0,0,0,95,112,97,116,104,95,106,111,105,110,99, - 1,0,0,0,0,0,0,0,6,0,0,0,3,0,0,0, - 67,0,0,0,115,85,0,0,0,120,48,0,116,0,0,124, - 0,0,131,1,0,68,93,28,0,125,1,0,124,1,0,116, - 1,0,107,6,0,114,13,0,124,1,0,125,2,0,80,113, - 13,0,113,13,0,87,116,2,0,125,2,0,124,0,0,106, - 3,0,124,2,0,131,1,0,92,3,0,125,3,0,125,4, - 0,125,5,0,124,3,0,124,5,0,102,2,0,83,40,1, - 0,0,0,117,32,0,0,0,82,101,112,108,97,99,101,109, - 101,110,116,32,102,111,114,32,111,115,46,112,97,116,104,46, - 115,112,108,105,116,40,41,46,40,4,0,0,0,117,8,0, - 0,0,114,101,118,101,114,115,101,100,117,15,0,0,0,112, - 97,116,104,95,115,101,112,97,114,97,116,111,114,115,117,8, - 0,0,0,112,97,116,104,95,115,101,112,117,10,0,0,0, - 114,112,97,114,116,105,116,105,111,110,40,6,0,0,0,117, - 4,0,0,0,112,97,116,104,117,1,0,0,0,120,117,3, - 0,0,0,115,101,112,117,5,0,0,0,102,114,111,110,116, - 117,1,0,0,0,95,117,4,0,0,0,116,97,105,108,40, - 0,0,0,0,40,0,0,0,0,117,29,0,0,0,60,102, - 114,111,122,101,110,32,105,109,112,111,114,116,108,105,98,46, - 95,98,111,111,116,115,116,114,97,112,62,117,11,0,0,0, - 95,112,97,116,104,95,115,112,108,105,116,86,0,0,0,115, - 14,0,0,0,0,2,19,1,12,1,6,1,8,2,6,1, - 24,1,117,11,0,0,0,95,112,97,116,104,95,115,112,108, - 105,116,99,2,0,0,0,0,0,0,0,3,0,0,0,11, - 0,0,0,67,0,0,0,115,61,0,0,0,121,19,0,116, - 0,0,106,1,0,124,0,0,131,1,0,125,2,0,87,110, - 22,0,4,116,2,0,107,10,0,114,43,0,1,1,1,100, - 2,0,83,89,110,1,0,88,124,2,0,106,4,0,100,1, - 0,64,124,1,0,107,2,0,83,40,3,0,0,0,117,49, - 0,0,0,84,101,115,116,32,119,104,101,116,104,101,114,32, - 116,104,101,32,112,97,116,104,32,105,115,32,116,104,101,32, - 115,112,101,99,105,102,105,101,100,32,109,111,100,101,32,116, - 121,112,101,46,105,0,240,0,0,70,40,5,0,0,0,117, - 3,0,0,0,95,111,115,117,4,0,0,0,115,116,97,116, - 117,7,0,0,0,79,83,69,114,114,111,114,117,5,0,0, - 0,70,97,108,115,101,117,7,0,0,0,115,116,95,109,111, - 100,101,40,3,0,0,0,117,4,0,0,0,112,97,116,104, - 117,4,0,0,0,109,111,100,101,117,9,0,0,0,115,116, - 97,116,95,105,110,102,111,40,0,0,0,0,40,0,0,0, - 0,117,29,0,0,0,60,102,114,111,122,101,110,32,105,109, - 112,111,114,116,108,105,98,46,95,98,111,111,116,115,116,114, - 97,112,62,117,18,0,0,0,95,112,97,116,104,95,105,115, - 95,109,111,100,101,95,116,121,112,101,98,0,0,0,115,10, - 0,0,0,0,2,3,1,19,1,13,1,9,1,117,18,0, - 0,0,95,112,97,116,104,95,105,115,95,109,111,100,101,95, - 116,121,112,101,99,1,0,0,0,0,0,0,0,1,0,0, - 0,3,0,0,0,67,0,0,0,115,13,0,0,0,116,0, - 0,124,0,0,100,1,0,131,2,0,83,40,2,0,0,0, - 117,31,0,0,0,82,101,112,108,97,99,101,109,101,110,116, - 32,102,111,114,32,111,115,46,112,97,116,104,46,105,115,102, - 105,108,101,46,105,0,128,0,0,40,1,0,0,0,117,18, - 0,0,0,95,112,97,116,104,95,105,115,95,109,111,100,101, - 95,116,121,112,101,40,1,0,0,0,117,4,0,0,0,112, - 97,116,104,40,0,0,0,0,40,0,0,0,0,117,29,0, + 32,65,115,10,115,117,99,104,32,105,116,32,114,101,113,117, + 105,114,101,115,32,116,104,101,32,105,110,106,101,99,116,105, + 111,110,32,111,102,32,115,112,101,99,105,102,105,99,32,109, + 111,100,117,108,101,115,32,97,110,100,32,97,116,116,114,105, + 98,117,116,101,115,32,105,110,32,111,114,100,101,114,32,116, + 111,10,119,111,114,107,46,32,79,110,101,32,115,104,111,117, + 108,100,32,117,115,101,32,105,109,112,111,114,116,108,105,98, + 32,97,115,32,116,104,101,32,112,117,98,108,105,99,45,102, + 97,99,105,110,103,32,118,101,114,115,105,111,110,32,111,102, + 32,116,104,105,115,32,109,111,100,117,108,101,46,10,10,117, + 3,0,0,0,119,105,110,117,6,0,0,0,99,121,103,119, + 105,110,117,6,0,0,0,100,97,114,119,105,110,99,0,0, + 0,0,0,0,0,0,1,0,0,0,2,0,0,0,67,0, + 0,0,115,49,0,0,0,116,0,0,106,1,0,106,2,0, + 116,3,0,131,1,0,114,33,0,100,1,0,100,2,0,132, + 0,0,125,0,0,110,12,0,100,3,0,100,2,0,132,0, + 0,125,0,0,124,0,0,83,40,4,0,0,0,78,99,0, + 0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,83, + 0,0,0,115,13,0,0,0,100,1,0,116,0,0,106,1, + 0,107,6,0,83,40,2,0,0,0,117,53,0,0,0,84, + 114,117,101,32,105,102,32,102,105,108,101,110,97,109,101,115, + 32,109,117,115,116,32,98,101,32,99,104,101,99,107,101,100, + 32,99,97,115,101,45,105,110,115,101,110,115,105,116,105,118, + 101,108,121,46,115,12,0,0,0,80,89,84,72,79,78,67, + 65,83,69,79,75,40,2,0,0,0,117,3,0,0,0,95, + 111,115,117,7,0,0,0,101,110,118,105,114,111,110,40,0, + 0,0,0,40,0,0,0,0,40,0,0,0,0,117,29,0, 0,0,60,102,114,111,122,101,110,32,105,109,112,111,114,116, 108,105,98,46,95,98,111,111,116,115,116,114,97,112,62,117, - 12,0,0,0,95,112,97,116,104,95,105,115,102,105,108,101, - 108,0,0,0,115,2,0,0,0,0,2,117,12,0,0,0, - 95,112,97,116,104,95,105,115,102,105,108,101,99,1,0,0, - 0,0,0,0,0,1,0,0,0,3,0,0,0,67,0,0, - 0,115,34,0,0,0,124,0,0,115,21,0,116,0,0,106, - 1,0,131,0,0,125,0,0,110,0,0,116,2,0,124,0, - 0,100,1,0,131,2,0,83,40,2,0,0,0,117,30,0, - 0,0,82,101,112,108,97,99,101,109,101,110,116,32,102,111, - 114,32,111,115,46,112,97,116,104,46,105,115,100,105,114,46, - 105,0,64,0,0,40,3,0,0,0,117,3,0,0,0,95, - 111,115,117,6,0,0,0,103,101,116,99,119,100,117,18,0, - 0,0,95,112,97,116,104,95,105,115,95,109,111,100,101,95, - 116,121,112,101,40,1,0,0,0,117,4,0,0,0,112,97, - 116,104,40,0,0,0,0,40,0,0,0,0,117,29,0,0, - 0,60,102,114,111,122,101,110,32,105,109,112,111,114,116,108, - 105,98,46,95,98,111,111,116,115,116,114,97,112,62,117,11, - 0,0,0,95,112,97,116,104,95,105,115,100,105,114,114,0, - 0,0,115,6,0,0,0,0,2,6,1,15,1,117,11,0, - 0,0,95,112,97,116,104,95,105,115,100,105,114,105,182,1, - 0,0,99,3,0,0,0,0,0,0,0,6,0,0,0,17, - 0,0,0,67,0,0,0,115,192,0,0,0,100,1,0,106, - 0,0,124,0,0,116,1,0,124,0,0,131,1,0,131,2, - 0,125,3,0,116,2,0,106,3,0,124,3,0,116,2,0, - 106,4,0,116,2,0,106,5,0,66,116,2,0,106,6,0, - 66,124,2,0,100,2,0,64,131,3,0,125,4,0,121,60, - 0,116,7,0,106,8,0,124,4,0,100,3,0,131,2,0, - 143,20,0,125,5,0,124,5,0,106,9,0,124,1,0,131, - 1,0,1,87,100,4,0,81,88,116,2,0,106,10,0,124, - 3,0,124,0,0,131,2,0,1,87,110,59,0,4,116,11, - 0,107,10,0,114,187,0,1,1,1,121,17,0,116,2,0, - 106,12,0,124,3,0,131,1,0,1,87,110,18,0,4,116, - 11,0,107,10,0,114,179,0,1,1,1,89,110,1,0,88, - 130,0,0,89,110,1,0,88,100,4,0,83,40,5,0,0, - 0,117,162,0,0,0,66,101,115,116,45,101,102,102,111,114, - 116,32,102,117,110,99,116,105,111,110,32,116,111,32,119,114, - 105,116,101,32,100,97,116,97,32,116,111,32,97,32,112,97, - 116,104,32,97,116,111,109,105,99,97,108,108,121,46,10,32, - 32,32,32,66,101,32,112,114,101,112,97,114,101,100,32,116, - 111,32,104,97,110,100,108,101,32,97,32,70,105,108,101,69, - 120,105,115,116,115,69,114,114,111,114,32,105,102,32,99,111, - 110,99,117,114,114,101,110,116,32,119,114,105,116,105,110,103, - 32,111,102,32,116,104,101,10,32,32,32,32,116,101,109,112, - 111,114,97,114,121,32,102,105,108,101,32,105,115,32,97,116, - 116,101,109,112,116,101,100,46,117,5,0,0,0,123,125,46, - 123,125,105,182,1,0,0,117,2,0,0,0,119,98,78,40, - 13,0,0,0,117,6,0,0,0,102,111,114,109,97,116,117, - 2,0,0,0,105,100,117,3,0,0,0,95,111,115,117,4, - 0,0,0,111,112,101,110,117,6,0,0,0,79,95,69,88, - 67,76,117,7,0,0,0,79,95,67,82,69,65,84,117,8, - 0,0,0,79,95,87,82,79,78,76,89,117,3,0,0,0, - 95,105,111,117,6,0,0,0,70,105,108,101,73,79,117,5, - 0,0,0,119,114,105,116,101,117,7,0,0,0,114,101,112, - 108,97,99,101,117,7,0,0,0,79,83,69,114,114,111,114, - 117,6,0,0,0,117,110,108,105,110,107,40,6,0,0,0, - 117,4,0,0,0,112,97,116,104,117,4,0,0,0,100,97, - 116,97,117,4,0,0,0,109,111,100,101,117,8,0,0,0, - 112,97,116,104,95,116,109,112,117,2,0,0,0,102,100,117, - 4,0,0,0,102,105,108,101,40,0,0,0,0,40,0,0, - 0,0,117,29,0,0,0,60,102,114,111,122,101,110,32,105, - 109,112,111,114,116,108,105,98,46,95,98,111,111,116,115,116, - 114,97,112,62,117,13,0,0,0,95,119,114,105,116,101,95, - 97,116,111,109,105,99,121,0,0,0,115,26,0,0,0,0, - 5,24,1,9,1,33,1,3,3,21,1,19,1,20,1,13, - 1,3,1,17,1,13,1,5,1,117,13,0,0,0,95,119, - 114,105,116,101,95,97,116,111,109,105,99,99,2,0,0,0, - 0,0,0,0,3,0,0,0,7,0,0,0,67,0,0,0, - 115,95,0,0,0,120,69,0,100,1,0,100,2,0,100,3, - 0,100,4,0,103,4,0,68,93,49,0,125,2,0,116,0, - 0,124,1,0,124,2,0,131,2,0,114,19,0,116,1,0, - 124,0,0,124,2,0,116,2,0,124,1,0,124,2,0,131, - 2,0,131,3,0,1,113,19,0,113,19,0,87,124,0,0, - 106,3,0,106,4,0,124,1,0,106,3,0,131,1,0,1, - 100,5,0,83,40,6,0,0,0,117,47,0,0,0,83,105, - 109,112,108,101,32,115,117,98,115,116,105,116,117,116,101,32, - 102,111,114,32,102,117,110,99,116,111,111,108,115,46,117,112, - 100,97,116,101,95,119,114,97,112,112,101,114,46,117,10,0, - 0,0,95,95,109,111,100,117,108,101,95,95,117,8,0,0, - 0,95,95,110,97,109,101,95,95,117,12,0,0,0,95,95, - 113,117,97,108,110,97,109,101,95,95,117,7,0,0,0,95, - 95,100,111,99,95,95,78,40,5,0,0,0,117,7,0,0, - 0,104,97,115,97,116,116,114,117,7,0,0,0,115,101,116, - 97,116,116,114,117,7,0,0,0,103,101,116,97,116,116,114, - 117,8,0,0,0,95,95,100,105,99,116,95,95,117,6,0, - 0,0,117,112,100,97,116,101,40,3,0,0,0,117,3,0, - 0,0,110,101,119,117,3,0,0,0,111,108,100,117,7,0, - 0,0,114,101,112,108,97,99,101,40,0,0,0,0,40,0, - 0,0,0,117,29,0,0,0,60,102,114,111,122,101,110,32, - 105,109,112,111,114,116,108,105,98,46,95,98,111,111,116,115, - 116,114,97,112,62,117,5,0,0,0,95,119,114,97,112,143, - 0,0,0,115,8,0,0,0,0,2,25,1,15,1,32,1, - 117,5,0,0,0,95,119,114,97,112,99,1,0,0,0,0, - 0,0,0,1,0,0,0,2,0,0,0,67,0,0,0,115, - 16,0,0,0,116,0,0,116,1,0,131,1,0,124,0,0, - 131,1,0,83,40,1,0,0,0,117,75,0,0,0,67,114, - 101,97,116,101,32,97,32,110,101,119,32,109,111,100,117,108, - 101,46,10,10,32,32,32,32,84,104,101,32,109,111,100,117, - 108,101,32,105,115,32,110,111,116,32,101,110,116,101,114,101, - 100,32,105,110,116,111,32,115,121,115,46,109,111,100,117,108, - 101,115,46,10,10,32,32,32,32,40,2,0,0,0,117,4, - 0,0,0,116,121,112,101,117,3,0,0,0,95,105,111,40, - 1,0,0,0,117,4,0,0,0,110,97,109,101,40,0,0, - 0,0,40,0,0,0,0,117,29,0,0,0,60,102,114,111, - 122,101,110,32,105,109,112,111,114,116,108,105,98,46,95,98, - 111,111,116,115,116,114,97,112,62,117,10,0,0,0,110,101, - 119,95,109,111,100,117,108,101,154,0,0,0,115,2,0,0, - 0,0,6,117,10,0,0,0,110,101,119,95,109,111,100,117, - 108,101,99,1,0,0,0,0,0,0,0,1,0,0,0,1, - 0,0,0,66,0,0,0,115,20,0,0,0,124,0,0,69, - 101,0,0,90,1,0,100,0,0,90,2,0,100,1,0,83, - 40,2,0,0,0,117,14,0,0,0,95,68,101,97,100,108, - 111,99,107,69,114,114,111,114,78,40,3,0,0,0,117,8, - 0,0,0,95,95,110,97,109,101,95,95,117,10,0,0,0, - 95,95,109,111,100,117,108,101,95,95,117,12,0,0,0,95, - 95,113,117,97,108,110,97,109,101,95,95,40,1,0,0,0, - 117,10,0,0,0,95,95,108,111,99,97,108,115,95,95,40, - 0,0,0,0,40,0,0,0,0,117,29,0,0,0,60,102, - 114,111,122,101,110,32,105,109,112,111,114,116,108,105,98,46, - 95,98,111,111,116,115,116,114,97,112,62,117,14,0,0,0, - 95,68,101,97,100,108,111,99,107,69,114,114,111,114,171,0, - 0,0,115,2,0,0,0,16,1,117,14,0,0,0,95,68, - 101,97,100,108,111,99,107,69,114,114,111,114,99,1,0,0, - 0,0,0,0,0,1,0,0,0,2,0,0,0,66,0,0, - 0,115,86,0,0,0,124,0,0,69,101,0,0,90,1,0, - 100,0,0,90,2,0,100,1,0,90,3,0,100,2,0,100, - 3,0,132,0,0,90,4,0,100,4,0,100,5,0,132,0, - 0,90,5,0,100,6,0,100,7,0,132,0,0,90,6,0, - 100,8,0,100,9,0,132,0,0,90,7,0,100,10,0,100, - 11,0,132,0,0,90,8,0,100,12,0,83,40,13,0,0, - 0,117,11,0,0,0,95,77,111,100,117,108,101,76,111,99, - 107,117,169,0,0,0,65,32,114,101,99,117,114,115,105,118, - 101,32,108,111,99,107,32,105,109,112,108,101,109,101,110,116, - 97,116,105,111,110,32,119,104,105,99,104,32,105,115,32,97, - 98,108,101,32,116,111,32,100,101,116,101,99,116,32,100,101, - 97,100,108,111,99,107,115,10,32,32,32,32,40,101,46,103, - 46,32,116,104,114,101,97,100,32,49,32,116,114,121,105,110, - 103,32,116,111,32,116,97,107,101,32,108,111,99,107,115,32, - 65,32,116,104,101,110,32,66,44,32,97,110,100,32,116,104, - 114,101,97,100,32,50,32,116,114,121,105,110,103,32,116,111, - 10,32,32,32,32,116,97,107,101,32,108,111,99,107,115,32, - 66,32,116,104,101,110,32,65,41,46,10,32,32,32,32,99, - 2,0,0,0,0,0,0,0,2,0,0,0,2,0,0,0, - 67,0,0,0,115,70,0,0,0,116,0,0,106,1,0,131, - 0,0,124,0,0,95,2,0,116,0,0,106,1,0,131,0, - 0,124,0,0,95,3,0,124,1,0,124,0,0,95,4,0, - 100,0,0,124,0,0,95,6,0,100,1,0,124,0,0,95, - 7,0,100,1,0,124,0,0,95,8,0,100,0,0,83,40, - 2,0,0,0,78,105,0,0,0,0,40,9,0,0,0,117, - 7,0,0,0,95,116,104,114,101,97,100,117,13,0,0,0, - 97,108,108,111,99,97,116,101,95,108,111,99,107,117,4,0, - 0,0,108,111,99,107,117,6,0,0,0,119,97,107,101,117, - 112,117,4,0,0,0,110,97,109,101,117,4,0,0,0,78, - 111,110,101,117,5,0,0,0,111,119,110,101,114,117,5,0, - 0,0,99,111,117,110,116,117,7,0,0,0,119,97,105,116, - 101,114,115,40,2,0,0,0,117,4,0,0,0,115,101,108, - 102,117,4,0,0,0,110,97,109,101,40,0,0,0,0,40, - 0,0,0,0,117,29,0,0,0,60,102,114,111,122,101,110, - 32,105,109,112,111,114,116,108,105,98,46,95,98,111,111,116, - 115,116,114,97,112,62,117,8,0,0,0,95,95,105,110,105, - 116,95,95,181,0,0,0,115,12,0,0,0,0,1,15,1, - 15,1,9,1,9,1,9,1,117,20,0,0,0,95,77,111, - 100,117,108,101,76,111,99,107,46,95,95,105,110,105,116,95, - 95,99,1,0,0,0,0,0,0,0,4,0,0,0,2,0, - 0,0,67,0,0,0,115,87,0,0,0,116,0,0,106,1, - 0,131,0,0,125,1,0,124,0,0,106,2,0,125,2,0, - 120,59,0,116,3,0,106,4,0,124,2,0,131,1,0,125, - 3,0,124,3,0,100,0,0,107,8,0,114,55,0,100,1, - 0,83,124,3,0,106,2,0,125,2,0,124,2,0,124,1, - 0,107,2,0,114,24,0,100,2,0,83,113,24,0,100,0, - 0,83,40,3,0,0,0,78,70,84,40,8,0,0,0,117, - 7,0,0,0,95,116,104,114,101,97,100,117,9,0,0,0, - 103,101,116,95,105,100,101,110,116,117,5,0,0,0,111,119, - 110,101,114,117,12,0,0,0,95,98,108,111,99,107,105,110, - 103,95,111,110,117,3,0,0,0,103,101,116,117,4,0,0, - 0,78,111,110,101,117,5,0,0,0,70,97,108,115,101,117, - 4,0,0,0,84,114,117,101,40,4,0,0,0,117,4,0, - 0,0,115,101,108,102,117,2,0,0,0,109,101,117,3,0, - 0,0,116,105,100,117,4,0,0,0,108,111,99,107,40,0, - 0,0,0,40,0,0,0,0,117,29,0,0,0,60,102,114, - 111,122,101,110,32,105,109,112,111,114,116,108,105,98,46,95, - 98,111,111,116,115,116,114,97,112,62,117,12,0,0,0,104, - 97,115,95,100,101,97,100,108,111,99,107,189,0,0,0,115, - 18,0,0,0,0,2,12,1,9,1,3,1,15,1,12,1, - 4,1,9,1,12,1,117,24,0,0,0,95,77,111,100,117, - 108,101,76,111,99,107,46,104,97,115,95,100,101,97,100,108, - 111,99,107,99,1,0,0,0,0,0,0,0,2,0,0,0, - 17,0,0,0,67,0,0,0,115,214,0,0,0,116,0,0, - 106,1,0,131,0,0,125,1,0,124,0,0,116,2,0,124, - 1,0,60,122,177,0,120,170,0,124,0,0,106,3,0,143, - 130,0,1,124,0,0,106,4,0,100,1,0,107,2,0,115, - 68,0,124,0,0,106,5,0,124,1,0,107,2,0,114,96, - 0,124,1,0,124,0,0,95,5,0,124,0,0,4,106,4, - 0,100,2,0,55,2,95,4,0,100,5,0,83,124,0,0, - 106,7,0,131,0,0,114,127,0,116,8,0,100,3,0,124, - 0,0,22,131,1,0,130,1,0,110,0,0,124,0,0,106, - 9,0,106,10,0,100,6,0,131,1,0,114,163,0,124,0, - 0,4,106,12,0,100,2,0,55,2,95,12,0,110,0,0, - 87,100,4,0,81,88,124,0,0,106,9,0,106,10,0,131, - 0,0,1,124,0,0,106,9,0,106,13,0,131,0,0,1, - 113,28,0,87,100,4,0,116,2,0,124,1,0,61,88,100, - 4,0,83,40,7,0,0,0,117,185,0,0,0,10,32,32, - 32,32,32,32,32,32,65,99,113,117,105,114,101,32,116,104, - 101,32,109,111,100,117,108,101,32,108,111,99,107,46,32,32, - 73,102,32,97,32,112,111,116,101,110,116,105,97,108,32,100, - 101,97,100,108,111,99,107,32,105,115,32,100,101,116,101,99, - 116,101,100,44,10,32,32,32,32,32,32,32,32,97,32,95, - 68,101,97,100,108,111,99,107,69,114,114,111,114,32,105,115, - 32,114,97,105,115,101,100,46,10,32,32,32,32,32,32,32, - 32,79,116,104,101,114,119,105,115,101,44,32,116,104,101,32, - 108,111,99,107,32,105,115,32,97,108,119,97,121,115,32,97, - 99,113,117,105,114,101,100,32,97,110,100,32,84,114,117,101, - 32,105,115,32,114,101,116,117,114,110,101,100,46,10,32,32, - 32,32,32,32,32,32,105,0,0,0,0,105,1,0,0,0, - 117,23,0,0,0,100,101,97,100,108,111,99,107,32,100,101, - 116,101,99,116,101,100,32,98,121,32,37,114,78,84,70,40, - 14,0,0,0,117,7,0,0,0,95,116,104,114,101,97,100, - 117,9,0,0,0,103,101,116,95,105,100,101,110,116,117,12, - 0,0,0,95,98,108,111,99,107,105,110,103,95,111,110,117, - 4,0,0,0,108,111,99,107,117,5,0,0,0,99,111,117, - 110,116,117,5,0,0,0,111,119,110,101,114,117,4,0,0, - 0,84,114,117,101,117,12,0,0,0,104,97,115,95,100,101, - 97,100,108,111,99,107,117,14,0,0,0,95,68,101,97,100, - 108,111,99,107,69,114,114,111,114,117,6,0,0,0,119,97, - 107,101,117,112,117,7,0,0,0,97,99,113,117,105,114,101, - 117,5,0,0,0,70,97,108,115,101,117,7,0,0,0,119, - 97,105,116,101,114,115,117,7,0,0,0,114,101,108,101,97, - 115,101,40,2,0,0,0,117,4,0,0,0,115,101,108,102, - 117,3,0,0,0,116,105,100,40,0,0,0,0,40,0,0, - 0,0,117,29,0,0,0,60,102,114,111,122,101,110,32,105, - 109,112,111,114,116,108,105,98,46,95,98,111,111,116,115,116, - 114,97,112,62,117,7,0,0,0,97,99,113,117,105,114,101, - 201,0,0,0,115,32,0,0,0,0,6,12,1,10,1,3, - 1,3,1,10,1,30,1,9,1,15,1,4,1,12,1,19, - 1,18,1,24,2,13,1,20,2,117,19,0,0,0,95,77, - 111,100,117,108,101,76,111,99,107,46,97,99,113,117,105,114, - 101,99,1,0,0,0,0,0,0,0,2,0,0,0,10,0, - 0,0,67,0,0,0,115,165,0,0,0,116,0,0,106,1, - 0,131,0,0,125,1,0,124,0,0,106,2,0,143,138,0, - 1,124,0,0,106,3,0,124,1,0,107,3,0,114,52,0, - 116,4,0,100,1,0,131,1,0,130,1,0,110,0,0,124, - 0,0,106,5,0,100,2,0,107,4,0,115,73,0,116,6, - 0,130,1,0,124,0,0,4,106,5,0,100,3,0,56,2, - 95,5,0,124,0,0,106,5,0,100,2,0,107,2,0,114, - 155,0,100,0,0,124,0,0,95,3,0,124,0,0,106,8, - 0,114,155,0,124,0,0,4,106,8,0,100,3,0,56,2, - 95,8,0,124,0,0,106,9,0,106,10,0,131,0,0,1, - 113,155,0,110,0,0,87,100,0,0,81,88,100,0,0,83, - 40,4,0,0,0,78,117,31,0,0,0,99,97,110,110,111, - 116,32,114,101,108,101,97,115,101,32,117,110,45,97,99,113, - 117,105,114,101,100,32,108,111,99,107,105,0,0,0,0,105, - 1,0,0,0,40,11,0,0,0,117,7,0,0,0,95,116, - 104,114,101,97,100,117,9,0,0,0,103,101,116,95,105,100, - 101,110,116,117,4,0,0,0,108,111,99,107,117,5,0,0, - 0,111,119,110,101,114,117,12,0,0,0,82,117,110,116,105, - 109,101,69,114,114,111,114,117,5,0,0,0,99,111,117,110, - 116,117,14,0,0,0,65,115,115,101,114,116,105,111,110,69, - 114,114,111,114,117,4,0,0,0,78,111,110,101,117,7,0, - 0,0,119,97,105,116,101,114,115,117,6,0,0,0,119,97, - 107,101,117,112,117,7,0,0,0,114,101,108,101,97,115,101, - 40,2,0,0,0,117,4,0,0,0,115,101,108,102,117,3, - 0,0,0,116,105,100,40,0,0,0,0,40,0,0,0,0, + 11,0,0,0,95,114,101,108,97,120,95,99,97,115,101,34, + 0,0,0,115,2,0,0,0,0,2,117,37,0,0,0,95, + 109,97,107,101,95,114,101,108,97,120,95,99,97,115,101,46, + 60,108,111,99,97,108,115,62,46,95,114,101,108,97,120,95, + 99,97,115,101,99,0,0,0,0,0,0,0,0,0,0,0, + 0,1,0,0,0,83,0,0,0,115,4,0,0,0,100,1, + 0,83,40,2,0,0,0,117,53,0,0,0,84,114,117,101, + 32,105,102,32,102,105,108,101,110,97,109,101,115,32,109,117, + 115,116,32,98,101,32,99,104,101,99,107,101,100,32,99,97, + 115,101,45,105,110,115,101,110,115,105,116,105,118,101,108,121, + 46,70,40,1,0,0,0,117,5,0,0,0,70,97,108,115, + 101,40,0,0,0,0,40,0,0,0,0,40,0,0,0,0, 117,29,0,0,0,60,102,114,111,122,101,110,32,105,109,112, 111,114,116,108,105,98,46,95,98,111,111,116,115,116,114,97, - 112,62,117,7,0,0,0,114,101,108,101,97,115,101,226,0, - 0,0,115,22,0,0,0,0,1,12,1,10,1,15,1,15, - 1,21,1,15,1,15,1,9,1,9,1,15,1,117,19,0, - 0,0,95,77,111,100,117,108,101,76,111,99,107,46,114,101, - 108,101,97,115,101,99,1,0,0,0,0,0,0,0,1,0, - 0,0,4,0,0,0,67,0,0,0,115,23,0,0,0,100, - 1,0,124,0,0,106,0,0,116,1,0,124,0,0,131,1, - 0,102,2,0,22,83,40,2,0,0,0,78,117,21,0,0, - 0,95,77,111,100,117,108,101,76,111,99,107,40,37,114,41, - 32,97,116,32,37,100,40,2,0,0,0,117,4,0,0,0, - 110,97,109,101,117,2,0,0,0,105,100,40,1,0,0,0, - 117,4,0,0,0,115,101,108,102,40,0,0,0,0,40,0, + 112,62,117,11,0,0,0,95,114,101,108,97,120,95,99,97, + 115,101,38,0,0,0,115,2,0,0,0,0,2,40,4,0, + 0,0,117,3,0,0,0,115,121,115,117,8,0,0,0,112, + 108,97,116,102,111,114,109,117,10,0,0,0,115,116,97,114, + 116,115,119,105,116,104,117,27,0,0,0,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,40,1,0,0,0,117,11,0,0,0, + 95,114,101,108,97,120,95,99,97,115,101,40,0,0,0,0, + 40,0,0,0,0,117,29,0,0,0,60,102,114,111,122,101, + 110,32,105,109,112,111,114,116,108,105,98,46,95,98,111,111, + 116,115,116,114,97,112,62,117,16,0,0,0,95,109,97,107, + 101,95,114,101,108,97,120,95,99,97,115,101,32,0,0,0, + 115,8,0,0,0,0,1,18,1,15,4,12,3,117,16,0, + 0,0,95,109,97,107,101,95,114,101,108,97,120,95,99,97, + 115,101,99,1,0,0,0,0,0,0,0,2,0,0,0,3, + 0,0,0,67,0,0,0,115,108,0,0,0,116,0,0,124, + 0,0,131,1,0,125,0,0,103,0,0,125,1,0,124,1, + 0,106,1,0,124,0,0,100,1,0,64,131,1,0,1,124, + 1,0,106,1,0,124,0,0,100,2,0,63,100,1,0,64, + 131,1,0,1,124,1,0,106,1,0,124,0,0,100,3,0, + 63,100,1,0,64,131,1,0,1,124,1,0,106,1,0,124, + 0,0,100,4,0,63,100,1,0,64,131,1,0,1,116,2, + 0,124,1,0,131,1,0,83,40,5,0,0,0,117,111,0, + 0,0,67,111,110,118,101,114,116,32,97,32,51,50,45,98, + 105,116,32,105,110,116,101,103,101,114,32,116,111,32,108,105, + 116,116,108,101,45,101,110,100,105,97,110,46,10,10,32,32, + 32,32,88,88,88,32,84,101,109,112,111,114,97,114,121,32, + 117,110,116,105,108,32,109,97,114,115,104,97,108,39,115,32, + 108,111,110,103,32,102,117,110,99,116,105,111,110,115,32,97, + 114,101,32,101,120,112,111,115,101,100,46,10,10,32,32,32, + 32,105,255,0,0,0,105,8,0,0,0,105,16,0,0,0, + 105,24,0,0,0,40,3,0,0,0,117,3,0,0,0,105, + 110,116,117,6,0,0,0,97,112,112,101,110,100,117,9,0, + 0,0,98,121,116,101,97,114,114,97,121,40,2,0,0,0, + 117,1,0,0,0,120,117,9,0,0,0,105,110,116,95,98, + 121,116,101,115,40,0,0,0,0,40,0,0,0,0,117,29, + 0,0,0,60,102,114,111,122,101,110,32,105,109,112,111,114, + 116,108,105,98,46,95,98,111,111,116,115,116,114,97,112,62, + 117,7,0,0,0,95,119,95,108,111,110,103,45,0,0,0, + 115,14,0,0,0,0,6,12,1,6,1,17,1,21,1,21, + 1,21,1,117,7,0,0,0,95,119,95,108,111,110,103,99, + 1,0,0,0,0,0,0,0,2,0,0,0,3,0,0,0, + 67,0,0,0,115,68,0,0,0,124,0,0,100,1,0,25, + 125,1,0,124,1,0,124,0,0,100,2,0,25,100,3,0, + 62,79,125,1,0,124,1,0,124,0,0,100,4,0,25,100, + 5,0,62,79,125,1,0,124,1,0,124,0,0,100,6,0, + 25,100,7,0,62,79,125,1,0,124,1,0,83,40,8,0, + 0,0,117,115,0,0,0,67,111,110,118,101,114,116,32,52, + 32,98,121,116,101,115,32,105,110,32,108,105,116,116,108,101, + 45,101,110,100,105,97,110,32,116,111,32,97,110,32,105,110, + 116,101,103,101,114,46,10,10,32,32,32,32,88,88,88,32, + 84,101,109,112,111,114,97,114,121,32,117,110,116,105,108,32, + 109,97,114,115,104,97,108,39,115,32,108,111,110,103,32,102, + 117,110,99,116,105,111,110,32,97,114,101,32,101,120,112,111, + 115,101,100,46,10,10,32,32,32,32,105,0,0,0,0,105, + 1,0,0,0,105,8,0,0,0,105,2,0,0,0,105,16, + 0,0,0,105,3,0,0,0,105,24,0,0,0,40,0,0, + 0,0,40,2,0,0,0,117,9,0,0,0,105,110,116,95, + 98,121,116,101,115,117,1,0,0,0,120,40,0,0,0,0, + 40,0,0,0,0,117,29,0,0,0,60,102,114,111,122,101, + 110,32,105,109,112,111,114,116,108,105,98,46,95,98,111,111, + 116,115,116,114,97,112,62,117,7,0,0,0,95,114,95,108, + 111,110,103,61,0,0,0,115,10,0,0,0,0,6,10,1, + 18,1,18,1,18,1,117,7,0,0,0,95,114,95,108,111, + 110,103,99,0,0,0,0,0,0,0,0,3,0,0,0,4, + 0,0,0,71,0,0,0,115,103,0,0,0,103,0,0,125, + 1,0,120,71,0,124,0,0,68,93,63,0,125,2,0,124, + 2,0,115,31,0,113,13,0,110,0,0,124,1,0,106,0, + 0,124,2,0,131,1,0,1,124,2,0,100,4,0,25,116, + 1,0,107,7,0,114,13,0,124,1,0,106,0,0,116,2, + 0,131,1,0,1,113,13,0,113,13,0,87,100,2,0,106, + 3,0,124,1,0,100,3,0,100,5,0,133,2,0,25,131, + 1,0,83,40,6,0,0,0,117,31,0,0,0,82,101,112, + 108,97,99,101,109,101,110,116,32,102,111,114,32,111,115,46, + 112,97,116,104,46,106,111,105,110,40,41,46,105,1,0,0, + 0,117,0,0,0,0,78,105,255,255,255,255,105,255,255,255, + 255,40,4,0,0,0,117,6,0,0,0,97,112,112,101,110, + 100,117,15,0,0,0,112,97,116,104,95,115,101,112,97,114, + 97,116,111,114,115,117,8,0,0,0,112,97,116,104,95,115, + 101,112,117,4,0,0,0,106,111,105,110,40,3,0,0,0, + 117,10,0,0,0,112,97,116,104,95,112,97,114,116,115,117, + 9,0,0,0,110,101,119,95,112,97,114,116,115,117,4,0, + 0,0,112,97,114,116,40,0,0,0,0,40,0,0,0,0, + 117,29,0,0,0,60,102,114,111,122,101,110,32,105,109,112, + 111,114,116,108,105,98,46,95,98,111,111,116,115,116,114,97, + 112,62,117,10,0,0,0,95,112,97,116,104,95,106,111,105, + 110,74,0,0,0,115,16,0,0,0,0,2,6,1,13,1, + 6,1,6,1,13,1,16,1,20,1,117,10,0,0,0,95, + 112,97,116,104,95,106,111,105,110,99,1,0,0,0,0,0, + 0,0,6,0,0,0,3,0,0,0,67,0,0,0,115,85, + 0,0,0,120,48,0,116,0,0,124,0,0,131,1,0,68, + 93,28,0,125,1,0,124,1,0,116,1,0,107,6,0,114, + 13,0,124,1,0,125,2,0,80,113,13,0,113,13,0,87, + 116,2,0,125,2,0,124,0,0,106,3,0,124,2,0,131, + 1,0,92,3,0,125,3,0,125,4,0,125,5,0,124,3, + 0,124,5,0,102,2,0,83,40,1,0,0,0,117,32,0, + 0,0,82,101,112,108,97,99,101,109,101,110,116,32,102,111, + 114,32,111,115,46,112,97,116,104,46,115,112,108,105,116,40, + 41,46,40,4,0,0,0,117,8,0,0,0,114,101,118,101, + 114,115,101,100,117,15,0,0,0,112,97,116,104,95,115,101, + 112,97,114,97,116,111,114,115,117,8,0,0,0,112,97,116, + 104,95,115,101,112,117,10,0,0,0,114,112,97,114,116,105, + 116,105,111,110,40,6,0,0,0,117,4,0,0,0,112,97, + 116,104,117,1,0,0,0,120,117,3,0,0,0,115,101,112, + 117,5,0,0,0,102,114,111,110,116,117,1,0,0,0,95, + 117,4,0,0,0,116,97,105,108,40,0,0,0,0,40,0, 0,0,0,117,29,0,0,0,60,102,114,111,122,101,110,32, 105,109,112,111,114,116,108,105,98,46,95,98,111,111,116,115, - 116,114,97,112,62,117,8,0,0,0,95,95,114,101,112,114, - 95,95,239,0,0,0,115,2,0,0,0,0,1,117,20,0, - 0,0,95,77,111,100,117,108,101,76,111,99,107,46,95,95, - 114,101,112,114,95,95,78,40,9,0,0,0,117,8,0,0, - 0,95,95,110,97,109,101,95,95,117,10,0,0,0,95,95, - 109,111,100,117,108,101,95,95,117,12,0,0,0,95,95,113, - 117,97,108,110,97,109,101,95,95,117,7,0,0,0,95,95, - 100,111,99,95,95,117,8,0,0,0,95,95,105,110,105,116, - 95,95,117,12,0,0,0,104,97,115,95,100,101,97,100,108, - 111,99,107,117,7,0,0,0,97,99,113,117,105,114,101,117, - 7,0,0,0,114,101,108,101,97,115,101,117,8,0,0,0, - 95,95,114,101,112,114,95,95,40,1,0,0,0,117,10,0, - 0,0,95,95,108,111,99,97,108,115,95,95,40,0,0,0, + 116,114,97,112,62,117,11,0,0,0,95,112,97,116,104,95, + 115,112,108,105,116,86,0,0,0,115,14,0,0,0,0,2, + 19,1,12,1,6,1,8,2,6,1,24,1,117,11,0,0, + 0,95,112,97,116,104,95,115,112,108,105,116,99,2,0,0, + 0,0,0,0,0,3,0,0,0,11,0,0,0,67,0,0, + 0,115,61,0,0,0,121,19,0,116,0,0,106,1,0,124, + 0,0,131,1,0,125,2,0,87,110,22,0,4,116,2,0, + 107,10,0,114,43,0,1,1,1,100,2,0,83,89,110,1, + 0,88,124,2,0,106,4,0,100,1,0,64,124,1,0,107, + 2,0,83,40,3,0,0,0,117,49,0,0,0,84,101,115, + 116,32,119,104,101,116,104,101,114,32,116,104,101,32,112,97, + 116,104,32,105,115,32,116,104,101,32,115,112,101,99,105,102, + 105,101,100,32,109,111,100,101,32,116,121,112,101,46,105,0, + 240,0,0,70,40,5,0,0,0,117,3,0,0,0,95,111, + 115,117,4,0,0,0,115,116,97,116,117,7,0,0,0,79, + 83,69,114,114,111,114,117,5,0,0,0,70,97,108,115,101, + 117,7,0,0,0,115,116,95,109,111,100,101,40,3,0,0, + 0,117,4,0,0,0,112,97,116,104,117,4,0,0,0,109, + 111,100,101,117,9,0,0,0,115,116,97,116,95,105,110,102, + 111,40,0,0,0,0,40,0,0,0,0,117,29,0,0,0, + 60,102,114,111,122,101,110,32,105,109,112,111,114,116,108,105, + 98,46,95,98,111,111,116,115,116,114,97,112,62,117,18,0, + 0,0,95,112,97,116,104,95,105,115,95,109,111,100,101,95, + 116,121,112,101,98,0,0,0,115,10,0,0,0,0,2,3, + 1,19,1,13,1,9,1,117,18,0,0,0,95,112,97,116, + 104,95,105,115,95,109,111,100,101,95,116,121,112,101,99,1, + 0,0,0,0,0,0,0,1,0,0,0,3,0,0,0,67, + 0,0,0,115,13,0,0,0,116,0,0,124,0,0,100,1, + 0,131,2,0,83,40,2,0,0,0,117,31,0,0,0,82, + 101,112,108,97,99,101,109,101,110,116,32,102,111,114,32,111, + 115,46,112,97,116,104,46,105,115,102,105,108,101,46,105,0, + 128,0,0,40,1,0,0,0,117,18,0,0,0,95,112,97, + 116,104,95,105,115,95,109,111,100,101,95,116,121,112,101,40, + 1,0,0,0,117,4,0,0,0,112,97,116,104,40,0,0, + 0,0,40,0,0,0,0,117,29,0,0,0,60,102,114,111, + 122,101,110,32,105,109,112,111,114,116,108,105,98,46,95,98, + 111,111,116,115,116,114,97,112,62,117,12,0,0,0,95,112, + 97,116,104,95,105,115,102,105,108,101,108,0,0,0,115,2, + 0,0,0,0,2,117,12,0,0,0,95,112,97,116,104,95, + 105,115,102,105,108,101,99,1,0,0,0,0,0,0,0,1, + 0,0,0,3,0,0,0,67,0,0,0,115,34,0,0,0, + 124,0,0,115,21,0,116,0,0,106,1,0,131,0,0,125, + 0,0,110,0,0,116,2,0,124,0,0,100,1,0,131,2, + 0,83,40,2,0,0,0,117,30,0,0,0,82,101,112,108, + 97,99,101,109,101,110,116,32,102,111,114,32,111,115,46,112, + 97,116,104,46,105,115,100,105,114,46,105,0,64,0,0,40, + 3,0,0,0,117,3,0,0,0,95,111,115,117,6,0,0, + 0,103,101,116,99,119,100,117,18,0,0,0,95,112,97,116, + 104,95,105,115,95,109,111,100,101,95,116,121,112,101,40,1, + 0,0,0,117,4,0,0,0,112,97,116,104,40,0,0,0, 0,40,0,0,0,0,117,29,0,0,0,60,102,114,111,122, 101,110,32,105,109,112,111,114,116,108,105,98,46,95,98,111, - 111,116,115,116,114,97,112,62,117,11,0,0,0,95,77,111, - 100,117,108,101,76,111,99,107,175,0,0,0,115,12,0,0, - 0,16,4,6,2,12,8,12,12,12,25,12,13,117,11,0, - 0,0,95,77,111,100,117,108,101,76,111,99,107,99,1,0, - 0,0,0,0,0,0,1,0,0,0,2,0,0,0,66,0, - 0,0,115,74,0,0,0,124,0,0,69,101,0,0,90,1, - 0,100,0,0,90,2,0,100,1,0,90,3,0,100,2,0, - 100,3,0,132,0,0,90,4,0,100,4,0,100,5,0,132, - 0,0,90,5,0,100,6,0,100,7,0,132,0,0,90,6, - 0,100,8,0,100,9,0,132,0,0,90,7,0,100,10,0, - 83,40,11,0,0,0,117,16,0,0,0,95,68,117,109,109, - 121,77,111,100,117,108,101,76,111,99,107,117,86,0,0,0, - 65,32,115,105,109,112,108,101,32,95,77,111,100,117,108,101, - 76,111,99,107,32,101,113,117,105,118,97,108,101,110,116,32, - 102,111,114,32,80,121,116,104,111,110,32,98,117,105,108,100, - 115,32,119,105,116,104,111,117,116,10,32,32,32,32,109,117, - 108,116,105,45,116,104,114,101,97,100,105,110,103,32,115,117, - 112,112,111,114,116,46,99,2,0,0,0,0,0,0,0,2, - 0,0,0,2,0,0,0,67,0,0,0,115,22,0,0,0, - 124,1,0,124,0,0,95,0,0,100,1,0,124,0,0,95, - 1,0,100,0,0,83,40,2,0,0,0,78,105,0,0,0, - 0,40,2,0,0,0,117,4,0,0,0,110,97,109,101,117, - 5,0,0,0,99,111,117,110,116,40,2,0,0,0,117,4, - 0,0,0,115,101,108,102,117,4,0,0,0,110,97,109,101, + 111,116,115,116,114,97,112,62,117,11,0,0,0,95,112,97, + 116,104,95,105,115,100,105,114,114,0,0,0,115,6,0,0, + 0,0,2,6,1,15,1,117,11,0,0,0,95,112,97,116, + 104,95,105,115,100,105,114,105,182,1,0,0,99,3,0,0, + 0,0,0,0,0,6,0,0,0,17,0,0,0,67,0,0, + 0,115,192,0,0,0,100,1,0,106,0,0,124,0,0,116, + 1,0,124,0,0,131,1,0,131,2,0,125,3,0,116,2, + 0,106,3,0,124,3,0,116,2,0,106,4,0,116,2,0, + 106,5,0,66,116,2,0,106,6,0,66,124,2,0,100,2, + 0,64,131,3,0,125,4,0,121,60,0,116,7,0,106,8, + 0,124,4,0,100,3,0,131,2,0,143,20,0,125,5,0, + 124,5,0,106,9,0,124,1,0,131,1,0,1,87,100,4, + 0,81,88,116,2,0,106,10,0,124,3,0,124,0,0,131, + 2,0,1,87,110,59,0,4,116,11,0,107,10,0,114,187, + 0,1,1,1,121,17,0,116,2,0,106,12,0,124,3,0, + 131,1,0,1,87,110,18,0,4,116,11,0,107,10,0,114, + 179,0,1,1,1,89,110,1,0,88,130,0,0,89,110,1, + 0,88,100,4,0,83,40,5,0,0,0,117,162,0,0,0, + 66,101,115,116,45,101,102,102,111,114,116,32,102,117,110,99, + 116,105,111,110,32,116,111,32,119,114,105,116,101,32,100,97, + 116,97,32,116,111,32,97,32,112,97,116,104,32,97,116,111, + 109,105,99,97,108,108,121,46,10,32,32,32,32,66,101,32, + 112,114,101,112,97,114,101,100,32,116,111,32,104,97,110,100, + 108,101,32,97,32,70,105,108,101,69,120,105,115,116,115,69, + 114,114,111,114,32,105,102,32,99,111,110,99,117,114,114,101, + 110,116,32,119,114,105,116,105,110,103,32,111,102,32,116,104, + 101,10,32,32,32,32,116,101,109,112,111,114,97,114,121,32, + 102,105,108,101,32,105,115,32,97,116,116,101,109,112,116,101, + 100,46,117,5,0,0,0,123,125,46,123,125,105,182,1,0, + 0,117,2,0,0,0,119,98,78,40,13,0,0,0,117,6, + 0,0,0,102,111,114,109,97,116,117,2,0,0,0,105,100, + 117,3,0,0,0,95,111,115,117,4,0,0,0,111,112,101, + 110,117,6,0,0,0,79,95,69,88,67,76,117,7,0,0, + 0,79,95,67,82,69,65,84,117,8,0,0,0,79,95,87, + 82,79,78,76,89,117,3,0,0,0,95,105,111,117,6,0, + 0,0,70,105,108,101,73,79,117,5,0,0,0,119,114,105, + 116,101,117,7,0,0,0,114,101,112,108,97,99,101,117,7, + 0,0,0,79,83,69,114,114,111,114,117,6,0,0,0,117, + 110,108,105,110,107,40,6,0,0,0,117,4,0,0,0,112, + 97,116,104,117,4,0,0,0,100,97,116,97,117,4,0,0, + 0,109,111,100,101,117,8,0,0,0,112,97,116,104,95,116, + 109,112,117,2,0,0,0,102,100,117,4,0,0,0,102,105, + 108,101,40,0,0,0,0,40,0,0,0,0,117,29,0,0, + 0,60,102,114,111,122,101,110,32,105,109,112,111,114,116,108, + 105,98,46,95,98,111,111,116,115,116,114,97,112,62,117,13, + 0,0,0,95,119,114,105,116,101,95,97,116,111,109,105,99, + 121,0,0,0,115,26,0,0,0,0,5,24,1,9,1,33, + 1,3,3,21,1,19,1,20,1,13,1,3,1,17,1,13, + 1,5,1,117,13,0,0,0,95,119,114,105,116,101,95,97, + 116,111,109,105,99,99,2,0,0,0,0,0,0,0,3,0, + 0,0,7,0,0,0,67,0,0,0,115,95,0,0,0,120, + 69,0,100,1,0,100,2,0,100,3,0,100,4,0,103,4, + 0,68,93,49,0,125,2,0,116,0,0,124,1,0,124,2, + 0,131,2,0,114,19,0,116,1,0,124,0,0,124,2,0, + 116,2,0,124,1,0,124,2,0,131,2,0,131,3,0,1, + 113,19,0,113,19,0,87,124,0,0,106,3,0,106,4,0, + 124,1,0,106,3,0,131,1,0,1,100,5,0,83,40,6, + 0,0,0,117,47,0,0,0,83,105,109,112,108,101,32,115, + 117,98,115,116,105,116,117,116,101,32,102,111,114,32,102,117, + 110,99,116,111,111,108,115,46,117,112,100,97,116,101,95,119, + 114,97,112,112,101,114,46,117,10,0,0,0,95,95,109,111, + 100,117,108,101,95,95,117,8,0,0,0,95,95,110,97,109, + 101,95,95,117,12,0,0,0,95,95,113,117,97,108,110,97, + 109,101,95,95,117,7,0,0,0,95,95,100,111,99,95,95, + 78,40,5,0,0,0,117,7,0,0,0,104,97,115,97,116, + 116,114,117,7,0,0,0,115,101,116,97,116,116,114,117,7, + 0,0,0,103,101,116,97,116,116,114,117,8,0,0,0,95, + 95,100,105,99,116,95,95,117,6,0,0,0,117,112,100,97, + 116,101,40,3,0,0,0,117,3,0,0,0,110,101,119,117, + 3,0,0,0,111,108,100,117,7,0,0,0,114,101,112,108, + 97,99,101,40,0,0,0,0,40,0,0,0,0,117,29,0, + 0,0,60,102,114,111,122,101,110,32,105,109,112,111,114,116, + 108,105,98,46,95,98,111,111,116,115,116,114,97,112,62,117, + 5,0,0,0,95,119,114,97,112,143,0,0,0,115,8,0, + 0,0,0,2,25,1,15,1,32,1,117,5,0,0,0,95, + 119,114,97,112,99,1,0,0,0,0,0,0,0,1,0,0, + 0,2,0,0,0,67,0,0,0,115,16,0,0,0,116,0, + 0,116,1,0,131,1,0,124,0,0,131,1,0,83,40,1, + 0,0,0,117,75,0,0,0,67,114,101,97,116,101,32,97, + 32,110,101,119,32,109,111,100,117,108,101,46,10,10,32,32, + 32,32,84,104,101,32,109,111,100,117,108,101,32,105,115,32, + 110,111,116,32,101,110,116,101,114,101,100,32,105,110,116,111, + 32,115,121,115,46,109,111,100,117,108,101,115,46,10,10,32, + 32,32,32,40,2,0,0,0,117,4,0,0,0,116,121,112, + 101,117,3,0,0,0,95,105,111,40,1,0,0,0,117,4, + 0,0,0,110,97,109,101,40,0,0,0,0,40,0,0,0, + 0,117,29,0,0,0,60,102,114,111,122,101,110,32,105,109, + 112,111,114,116,108,105,98,46,95,98,111,111,116,115,116,114, + 97,112,62,117,10,0,0,0,110,101,119,95,109,111,100,117, + 108,101,154,0,0,0,115,2,0,0,0,0,6,117,10,0, + 0,0,110,101,119,95,109,111,100,117,108,101,99,1,0,0, + 0,0,0,0,0,1,0,0,0,1,0,0,0,66,0,0, + 0,115,20,0,0,0,124,0,0,69,101,0,0,90,1,0, + 100,0,0,90,2,0,100,1,0,83,40,2,0,0,0,117, + 14,0,0,0,95,68,101,97,100,108,111,99,107,69,114,114, + 111,114,78,40,3,0,0,0,117,8,0,0,0,95,95,110, + 97,109,101,95,95,117,10,0,0,0,95,95,109,111,100,117, + 108,101,95,95,117,12,0,0,0,95,95,113,117,97,108,110, + 97,109,101,95,95,40,1,0,0,0,117,10,0,0,0,95, + 95,108,111,99,97,108,115,95,95,40,0,0,0,0,40,0, + 0,0,0,117,29,0,0,0,60,102,114,111,122,101,110,32, + 105,109,112,111,114,116,108,105,98,46,95,98,111,111,116,115, + 116,114,97,112,62,117,14,0,0,0,95,68,101,97,100,108, + 111,99,107,69,114,114,111,114,171,0,0,0,115,2,0,0, + 0,16,1,117,14,0,0,0,95,68,101,97,100,108,111,99, + 107,69,114,114,111,114,99,1,0,0,0,0,0,0,0,1, + 0,0,0,2,0,0,0,66,0,0,0,115,86,0,0,0, + 124,0,0,69,101,0,0,90,1,0,100,0,0,90,2,0, + 100,1,0,90,3,0,100,2,0,100,3,0,132,0,0,90, + 4,0,100,4,0,100,5,0,132,0,0,90,5,0,100,6, + 0,100,7,0,132,0,0,90,6,0,100,8,0,100,9,0, + 132,0,0,90,7,0,100,10,0,100,11,0,132,0,0,90, + 8,0,100,12,0,83,40,13,0,0,0,117,11,0,0,0, + 95,77,111,100,117,108,101,76,111,99,107,117,169,0,0,0, + 65,32,114,101,99,117,114,115,105,118,101,32,108,111,99,107, + 32,105,109,112,108,101,109,101,110,116,97,116,105,111,110,32, + 119,104,105,99,104,32,105,115,32,97,98,108,101,32,116,111, + 32,100,101,116,101,99,116,32,100,101,97,100,108,111,99,107, + 115,10,32,32,32,32,40,101,46,103,46,32,116,104,114,101, + 97,100,32,49,32,116,114,121,105,110,103,32,116,111,32,116, + 97,107,101,32,108,111,99,107,115,32,65,32,116,104,101,110, + 32,66,44,32,97,110,100,32,116,104,114,101,97,100,32,50, + 32,116,114,121,105,110,103,32,116,111,10,32,32,32,32,116, + 97,107,101,32,108,111,99,107,115,32,66,32,116,104,101,110, + 32,65,41,46,10,32,32,32,32,99,2,0,0,0,0,0, + 0,0,2,0,0,0,2,0,0,0,67,0,0,0,115,70, + 0,0,0,116,0,0,106,1,0,131,0,0,124,0,0,95, + 2,0,116,0,0,106,1,0,131,0,0,124,0,0,95,3, + 0,124,1,0,124,0,0,95,4,0,100,0,0,124,0,0, + 95,6,0,100,1,0,124,0,0,95,7,0,100,1,0,124, + 0,0,95,8,0,100,0,0,83,40,2,0,0,0,78,105, + 0,0,0,0,40,9,0,0,0,117,7,0,0,0,95,116, + 104,114,101,97,100,117,13,0,0,0,97,108,108,111,99,97, + 116,101,95,108,111,99,107,117,4,0,0,0,108,111,99,107, + 117,6,0,0,0,119,97,107,101,117,112,117,4,0,0,0, + 110,97,109,101,117,4,0,0,0,78,111,110,101,117,5,0, + 0,0,111,119,110,101,114,117,5,0,0,0,99,111,117,110, + 116,117,7,0,0,0,119,97,105,116,101,114,115,40,2,0, + 0,0,117,4,0,0,0,115,101,108,102,117,4,0,0,0, + 110,97,109,101,40,0,0,0,0,40,0,0,0,0,117,29, + 0,0,0,60,102,114,111,122,101,110,32,105,109,112,111,114, + 116,108,105,98,46,95,98,111,111,116,115,116,114,97,112,62, + 117,8,0,0,0,95,95,105,110,105,116,95,95,181,0,0, + 0,115,12,0,0,0,0,1,15,1,15,1,9,1,9,1, + 9,1,117,20,0,0,0,95,77,111,100,117,108,101,76,111, + 99,107,46,95,95,105,110,105,116,95,95,99,1,0,0,0, + 0,0,0,0,4,0,0,0,2,0,0,0,67,0,0,0, + 115,87,0,0,0,116,0,0,106,1,0,131,0,0,125,1, + 0,124,0,0,106,2,0,125,2,0,120,59,0,116,3,0, + 106,4,0,124,2,0,131,1,0,125,3,0,124,3,0,100, + 0,0,107,8,0,114,55,0,100,1,0,83,124,3,0,106, + 2,0,125,2,0,124,2,0,124,1,0,107,2,0,114,24, + 0,100,2,0,83,113,24,0,100,0,0,83,40,3,0,0, + 0,78,70,84,40,8,0,0,0,117,7,0,0,0,95,116, + 104,114,101,97,100,117,9,0,0,0,103,101,116,95,105,100, + 101,110,116,117,5,0,0,0,111,119,110,101,114,117,12,0, + 0,0,95,98,108,111,99,107,105,110,103,95,111,110,117,3, + 0,0,0,103,101,116,117,4,0,0,0,78,111,110,101,117, + 5,0,0,0,70,97,108,115,101,117,4,0,0,0,84,114, + 117,101,40,4,0,0,0,117,4,0,0,0,115,101,108,102, + 117,2,0,0,0,109,101,117,3,0,0,0,116,105,100,117, + 4,0,0,0,108,111,99,107,40,0,0,0,0,40,0,0, + 0,0,117,29,0,0,0,60,102,114,111,122,101,110,32,105, + 109,112,111,114,116,108,105,98,46,95,98,111,111,116,115,116, + 114,97,112,62,117,12,0,0,0,104,97,115,95,100,101,97, + 100,108,111,99,107,189,0,0,0,115,18,0,0,0,0,2, + 12,1,9,1,3,1,15,1,12,1,4,1,9,1,12,1, + 117,24,0,0,0,95,77,111,100,117,108,101,76,111,99,107, + 46,104,97,115,95,100,101,97,100,108,111,99,107,99,1,0, + 0,0,0,0,0,0,2,0,0,0,17,0,0,0,67,0, + 0,0,115,214,0,0,0,116,0,0,106,1,0,131,0,0, + 125,1,0,124,0,0,116,2,0,124,1,0,60,122,177,0, + 120,170,0,124,0,0,106,3,0,143,130,0,1,124,0,0, + 106,4,0,100,1,0,107,2,0,115,68,0,124,0,0,106, + 5,0,124,1,0,107,2,0,114,96,0,124,1,0,124,0, + 0,95,5,0,124,0,0,4,106,4,0,100,2,0,55,2, + 95,4,0,100,5,0,83,124,0,0,106,7,0,131,0,0, + 114,127,0,116,8,0,100,3,0,124,0,0,22,131,1,0, + 130,1,0,110,0,0,124,0,0,106,9,0,106,10,0,100, + 6,0,131,1,0,114,163,0,124,0,0,4,106,12,0,100, + 2,0,55,2,95,12,0,110,0,0,87,100,4,0,81,88, + 124,0,0,106,9,0,106,10,0,131,0,0,1,124,0,0, + 106,9,0,106,13,0,131,0,0,1,113,28,0,87,100,4, + 0,116,2,0,124,1,0,61,88,100,4,0,83,40,7,0, + 0,0,117,185,0,0,0,10,32,32,32,32,32,32,32,32, + 65,99,113,117,105,114,101,32,116,104,101,32,109,111,100,117, + 108,101,32,108,111,99,107,46,32,32,73,102,32,97,32,112, + 111,116,101,110,116,105,97,108,32,100,101,97,100,108,111,99, + 107,32,105,115,32,100,101,116,101,99,116,101,100,44,10,32, + 32,32,32,32,32,32,32,97,32,95,68,101,97,100,108,111, + 99,107,69,114,114,111,114,32,105,115,32,114,97,105,115,101, + 100,46,10,32,32,32,32,32,32,32,32,79,116,104,101,114, + 119,105,115,101,44,32,116,104,101,32,108,111,99,107,32,105, + 115,32,97,108,119,97,121,115,32,97,99,113,117,105,114,101, + 100,32,97,110,100,32,84,114,117,101,32,105,115,32,114,101, + 116,117,114,110,101,100,46,10,32,32,32,32,32,32,32,32, + 105,0,0,0,0,105,1,0,0,0,117,23,0,0,0,100, + 101,97,100,108,111,99,107,32,100,101,116,101,99,116,101,100, + 32,98,121,32,37,114,78,84,70,40,14,0,0,0,117,7, + 0,0,0,95,116,104,114,101,97,100,117,9,0,0,0,103, + 101,116,95,105,100,101,110,116,117,12,0,0,0,95,98,108, + 111,99,107,105,110,103,95,111,110,117,4,0,0,0,108,111, + 99,107,117,5,0,0,0,99,111,117,110,116,117,5,0,0, + 0,111,119,110,101,114,117,4,0,0,0,84,114,117,101,117, + 12,0,0,0,104,97,115,95,100,101,97,100,108,111,99,107, + 117,14,0,0,0,95,68,101,97,100,108,111,99,107,69,114, + 114,111,114,117,6,0,0,0,119,97,107,101,117,112,117,7, + 0,0,0,97,99,113,117,105,114,101,117,5,0,0,0,70, + 97,108,115,101,117,7,0,0,0,119,97,105,116,101,114,115, + 117,7,0,0,0,114,101,108,101,97,115,101,40,2,0,0, + 0,117,4,0,0,0,115,101,108,102,117,3,0,0,0,116, + 105,100,40,0,0,0,0,40,0,0,0,0,117,29,0,0, + 0,60,102,114,111,122,101,110,32,105,109,112,111,114,116,108, + 105,98,46,95,98,111,111,116,115,116,114,97,112,62,117,7, + 0,0,0,97,99,113,117,105,114,101,201,0,0,0,115,32, + 0,0,0,0,6,12,1,10,1,3,1,3,1,10,1,30, + 1,9,1,15,1,4,1,12,1,19,1,18,1,24,2,13, + 1,20,2,117,19,0,0,0,95,77,111,100,117,108,101,76, + 111,99,107,46,97,99,113,117,105,114,101,99,1,0,0,0, + 0,0,0,0,2,0,0,0,10,0,0,0,67,0,0,0, + 115,165,0,0,0,116,0,0,106,1,0,131,0,0,125,1, + 0,124,0,0,106,2,0,143,138,0,1,124,0,0,106,3, + 0,124,1,0,107,3,0,114,52,0,116,4,0,100,1,0, + 131,1,0,130,1,0,110,0,0,124,0,0,106,5,0,100, + 2,0,107,4,0,115,73,0,116,6,0,130,1,0,124,0, + 0,4,106,5,0,100,3,0,56,2,95,5,0,124,0,0, + 106,5,0,100,2,0,107,2,0,114,155,0,100,0,0,124, + 0,0,95,3,0,124,0,0,106,8,0,114,155,0,124,0, + 0,4,106,8,0,100,3,0,56,2,95,8,0,124,0,0, + 106,9,0,106,10,0,131,0,0,1,113,155,0,110,0,0, + 87,100,0,0,81,88,100,0,0,83,40,4,0,0,0,78, + 117,31,0,0,0,99,97,110,110,111,116,32,114,101,108,101, + 97,115,101,32,117,110,45,97,99,113,117,105,114,101,100,32, + 108,111,99,107,105,0,0,0,0,105,1,0,0,0,40,11, + 0,0,0,117,7,0,0,0,95,116,104,114,101,97,100,117, + 9,0,0,0,103,101,116,95,105,100,101,110,116,117,4,0, + 0,0,108,111,99,107,117,5,0,0,0,111,119,110,101,114, + 117,12,0,0,0,82,117,110,116,105,109,101,69,114,114,111, + 114,117,5,0,0,0,99,111,117,110,116,117,14,0,0,0, + 65,115,115,101,114,116,105,111,110,69,114,114,111,114,117,4, + 0,0,0,78,111,110,101,117,7,0,0,0,119,97,105,116, + 101,114,115,117,6,0,0,0,119,97,107,101,117,112,117,7, + 0,0,0,114,101,108,101,97,115,101,40,2,0,0,0,117, + 4,0,0,0,115,101,108,102,117,3,0,0,0,116,105,100, 40,0,0,0,0,40,0,0,0,0,117,29,0,0,0,60, 102,114,111,122,101,110,32,105,109,112,111,114,116,108,105,98, - 46,95,98,111,111,116,115,116,114,97,112,62,117,8,0,0, - 0,95,95,105,110,105,116,95,95,247,0,0,0,115,4,0, - 0,0,0,1,9,1,117,25,0,0,0,95,68,117,109,109, - 121,77,111,100,117,108,101,76,111,99,107,46,95,95,105,110, - 105,116,95,95,99,1,0,0,0,0,0,0,0,1,0,0, - 0,3,0,0,0,67,0,0,0,115,19,0,0,0,124,0, - 0,4,106,0,0,100,1,0,55,2,95,0,0,100,2,0, - 83,40,3,0,0,0,78,105,1,0,0,0,84,40,2,0, - 0,0,117,5,0,0,0,99,111,117,110,116,117,4,0,0, - 0,84,114,117,101,40,1,0,0,0,117,4,0,0,0,115, + 46,95,98,111,111,116,115,116,114,97,112,62,117,7,0,0, + 0,114,101,108,101,97,115,101,226,0,0,0,115,22,0,0, + 0,0,1,12,1,10,1,15,1,15,1,21,1,15,1,15, + 1,9,1,9,1,15,1,117,19,0,0,0,95,77,111,100, + 117,108,101,76,111,99,107,46,114,101,108,101,97,115,101,99, + 1,0,0,0,0,0,0,0,1,0,0,0,4,0,0,0, + 67,0,0,0,115,23,0,0,0,100,1,0,124,0,0,106, + 0,0,116,1,0,124,0,0,131,1,0,102,2,0,22,83, + 40,2,0,0,0,78,117,21,0,0,0,95,77,111,100,117, + 108,101,76,111,99,107,40,37,114,41,32,97,116,32,37,100, + 40,2,0,0,0,117,4,0,0,0,110,97,109,101,117,2, + 0,0,0,105,100,40,1,0,0,0,117,4,0,0,0,115, 101,108,102,40,0,0,0,0,40,0,0,0,0,117,29,0, 0,0,60,102,114,111,122,101,110,32,105,109,112,111,114,116, 108,105,98,46,95,98,111,111,116,115,116,114,97,112,62,117, - 7,0,0,0,97,99,113,117,105,114,101,251,0,0,0,115, - 4,0,0,0,0,1,15,1,117,24,0,0,0,95,68,117, - 109,109,121,77,111,100,117,108,101,76,111,99,107,46,97,99, - 113,117,105,114,101,99,1,0,0,0,0,0,0,0,1,0, - 0,0,3,0,0,0,67,0,0,0,115,49,0,0,0,124, - 0,0,106,0,0,100,1,0,107,2,0,114,30,0,116,1, - 0,100,2,0,131,1,0,130,1,0,110,0,0,124,0,0, - 4,106,0,0,100,3,0,56,2,95,0,0,100,0,0,83, - 40,4,0,0,0,78,105,0,0,0,0,117,31,0,0,0, - 99,97,110,110,111,116,32,114,101,108,101,97,115,101,32,117, - 110,45,97,99,113,117,105,114,101,100,32,108,111,99,107,105, - 1,0,0,0,40,2,0,0,0,117,5,0,0,0,99,111, - 117,110,116,117,12,0,0,0,82,117,110,116,105,109,101,69, - 114,114,111,114,40,1,0,0,0,117,4,0,0,0,115,101, - 108,102,40,0,0,0,0,40,0,0,0,0,117,29,0,0, - 0,60,102,114,111,122,101,110,32,105,109,112,111,114,116,108, - 105,98,46,95,98,111,111,116,115,116,114,97,112,62,117,7, - 0,0,0,114,101,108,101,97,115,101,255,0,0,0,115,6, - 0,0,0,0,1,15,1,15,1,117,24,0,0,0,95,68, - 117,109,109,121,77,111,100,117,108,101,76,111,99,107,46,114, - 101,108,101,97,115,101,99,1,0,0,0,0,0,0,0,1, - 0,0,0,4,0,0,0,67,0,0,0,115,23,0,0,0, - 100,1,0,124,0,0,106,0,0,116,1,0,124,0,0,131, - 1,0,102,2,0,22,83,40,2,0,0,0,78,117,26,0, - 0,0,95,68,117,109,109,121,77,111,100,117,108,101,76,111, - 99,107,40,37,114,41,32,97,116,32,37,100,40,2,0,0, - 0,117,4,0,0,0,110,97,109,101,117,2,0,0,0,105, - 100,40,1,0,0,0,117,4,0,0,0,115,101,108,102,40, - 0,0,0,0,40,0,0,0,0,117,29,0,0,0,60,102, - 114,111,122,101,110,32,105,109,112,111,114,116,108,105,98,46, - 95,98,111,111,116,115,116,114,97,112,62,117,8,0,0,0, - 95,95,114,101,112,114,95,95,4,1,0,0,115,2,0,0, - 0,0,1,117,25,0,0,0,95,68,117,109,109,121,77,111, - 100,117,108,101,76,111,99,107,46,95,95,114,101,112,114,95, - 95,78,40,8,0,0,0,117,8,0,0,0,95,95,110,97, - 109,101,95,95,117,10,0,0,0,95,95,109,111,100,117,108, - 101,95,95,117,12,0,0,0,95,95,113,117,97,108,110,97, - 109,101,95,95,117,7,0,0,0,95,95,100,111,99,95,95, - 117,8,0,0,0,95,95,105,110,105,116,95,95,117,7,0, + 8,0,0,0,95,95,114,101,112,114,95,95,239,0,0,0, + 115,2,0,0,0,0,1,117,20,0,0,0,95,77,111,100, + 117,108,101,76,111,99,107,46,95,95,114,101,112,114,95,95, + 78,40,9,0,0,0,117,8,0,0,0,95,95,110,97,109, + 101,95,95,117,10,0,0,0,95,95,109,111,100,117,108,101, + 95,95,117,12,0,0,0,95,95,113,117,97,108,110,97,109, + 101,95,95,117,7,0,0,0,95,95,100,111,99,95,95,117, + 8,0,0,0,95,95,105,110,105,116,95,95,117,12,0,0, + 0,104,97,115,95,100,101,97,100,108,111,99,107,117,7,0, 0,0,97,99,113,117,105,114,101,117,7,0,0,0,114,101, 108,101,97,115,101,117,8,0,0,0,95,95,114,101,112,114, 95,95,40,1,0,0,0,117,10,0,0,0,95,95,108,111, 99,97,108,115,95,95,40,0,0,0,0,40,0,0,0,0, 117,29,0,0,0,60,102,114,111,122,101,110,32,105,109,112, 111,114,116,108,105,98,46,95,98,111,111,116,115,116,114,97, - 112,62,117,16,0,0,0,95,68,117,109,109,121,77,111,100, - 117,108,101,76,111,99,107,243,0,0,0,115,10,0,0,0, - 16,2,6,2,12,4,12,4,12,5,117,16,0,0,0,95, - 68,117,109,109,121,77,111,100,117,108,101,76,111,99,107,99, - 1,0,0,0,0,0,0,0,3,0,0,0,11,0,0,0, - 3,0,0,0,115,142,0,0,0,100,3,0,125,1,0,121, - 17,0,116,1,0,136,0,0,25,131,0,0,125,1,0,87, - 110,18,0,4,116,2,0,107,10,0,114,43,0,1,1,1, - 89,110,1,0,88,124,1,0,100,3,0,107,8,0,114,138, - 0,116,3,0,100,3,0,107,8,0,114,83,0,116,4,0, - 136,0,0,131,1,0,125,1,0,110,12,0,116,5,0,136, - 0,0,131,1,0,125,1,0,135,0,0,102,1,0,100,1, - 0,100,2,0,134,0,0,125,2,0,116,6,0,106,7,0, - 124,1,0,124,2,0,131,2,0,116,1,0,136,0,0,60, - 110,0,0,124,1,0,83,40,4,0,0,0,117,109,0,0, - 0,71,101,116,32,111,114,32,99,114,101,97,116,101,32,116, - 104,101,32,109,111,100,117,108,101,32,108,111,99,107,32,102, - 111,114,32,97,32,103,105,118,101,110,32,109,111,100,117,108, - 101,32,110,97,109,101,46,10,10,32,32,32,32,83,104,111, - 117,108,100,32,111,110,108,121,32,98,101,32,99,97,108,108, - 101,100,32,119,105,116,104,32,116,104,101,32,105,109,112,111, - 114,116,32,108,111,99,107,32,116,97,107,101,110,46,99,1, - 0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,19, - 0,0,0,115,11,0,0,0,116,0,0,136,0,0,61,100, - 0,0,83,40,1,0,0,0,78,40,1,0,0,0,117,13, - 0,0,0,95,109,111,100,117,108,101,95,108,111,99,107,115, - 40,1,0,0,0,117,1,0,0,0,95,40,1,0,0,0, - 117,4,0,0,0,110,97,109,101,40,0,0,0,0,117,29, - 0,0,0,60,102,114,111,122,101,110,32,105,109,112,111,114, - 116,108,105,98,46,95,98,111,111,116,115,116,114,97,112,62, - 117,2,0,0,0,99,98,24,1,0,0,115,2,0,0,0, - 0,1,117,28,0,0,0,95,103,101,116,95,109,111,100,117, - 108,101,95,108,111,99,107,46,60,108,111,99,97,108,115,62, - 46,99,98,78,40,8,0,0,0,117,4,0,0,0,78,111, - 110,101,117,13,0,0,0,95,109,111,100,117,108,101,95,108, - 111,99,107,115,117,8,0,0,0,75,101,121,69,114,114,111, - 114,117,7,0,0,0,95,116,104,114,101,97,100,117,16,0, - 0,0,95,68,117,109,109,121,77,111,100,117,108,101,76,111, - 99,107,117,11,0,0,0,95,77,111,100,117,108,101,76,111, - 99,107,117,8,0,0,0,95,119,101,97,107,114,101,102,117, - 3,0,0,0,114,101,102,40,3,0,0,0,117,4,0,0, - 0,110,97,109,101,117,4,0,0,0,108,111,99,107,117,2, - 0,0,0,99,98,40,0,0,0,0,40,1,0,0,0,117, - 4,0,0,0,110,97,109,101,117,29,0,0,0,60,102,114, - 111,122,101,110,32,105,109,112,111,114,116,108,105,98,46,95, - 98,111,111,116,115,116,114,97,112,62,117,16,0,0,0,95, - 103,101,116,95,109,111,100,117,108,101,95,108,111,99,107,10, - 1,0,0,115,24,0,0,0,0,4,6,1,3,1,17,1, - 13,1,5,1,12,1,12,1,15,2,12,1,18,2,25,1, - 117,16,0,0,0,95,103,101,116,95,109,111,100,117,108,101, - 95,108,111,99,107,99,1,0,0,0,0,0,0,0,2,0, - 0,0,11,0,0,0,67,0,0,0,115,71,0,0,0,116, - 0,0,124,0,0,131,1,0,125,1,0,116,1,0,106,2, - 0,131,0,0,1,121,14,0,124,1,0,106,3,0,131,0, - 0,1,87,110,18,0,4,116,4,0,107,10,0,114,56,0, - 1,1,1,89,110,11,0,88,124,1,0,106,5,0,131,0, - 0,1,100,1,0,83,40,2,0,0,0,117,21,1,0,0, - 82,101,108,101,97,115,101,32,116,104,101,32,103,108,111,98, - 97,108,32,105,109,112,111,114,116,32,108,111,99,107,44,32, - 97,110,100,32,97,99,113,117,105,114,101,115,32,116,104,101, - 110,32,114,101,108,101,97,115,101,32,116,104,101,10,32,32, - 32,32,109,111,100,117,108,101,32,108,111,99,107,32,102,111, - 114,32,97,32,103,105,118,101,110,32,109,111,100,117,108,101, - 32,110,97,109,101,46,10,32,32,32,32,84,104,105,115,32, - 105,115,32,117,115,101,100,32,116,111,32,101,110,115,117,114, - 101,32,97,32,109,111,100,117,108,101,32,105,115,32,99,111, - 109,112,108,101,116,101,108,121,32,105,110,105,116,105,97,108, - 105,122,101,100,44,32,105,110,32,116,104,101,10,32,32,32, - 32,101,118,101,110,116,32,105,116,32,105,115,32,98,101,105, - 110,103,32,105,109,112,111,114,116,101,100,32,98,121,32,97, - 110,111,116,104,101,114,32,116,104,114,101,97,100,46,10,10, - 32,32,32,32,83,104,111,117,108,100,32,111,110,108,121,32, - 98,101,32,99,97,108,108,101,100,32,119,105,116,104,32,116, - 104,101,32,105,109,112,111,114,116,32,108,111,99,107,32,116, - 97,107,101,110,46,78,40,6,0,0,0,117,16,0,0,0, - 95,103,101,116,95,109,111,100,117,108,101,95,108,111,99,107, - 117,4,0,0,0,95,105,109,112,117,12,0,0,0,114,101, - 108,101,97,115,101,95,108,111,99,107,117,7,0,0,0,97, - 99,113,117,105,114,101,117,14,0,0,0,95,68,101,97,100, - 108,111,99,107,69,114,114,111,114,117,7,0,0,0,114,101, - 108,101,97,115,101,40,2,0,0,0,117,4,0,0,0,110, - 97,109,101,117,4,0,0,0,108,111,99,107,40,0,0,0, - 0,40,0,0,0,0,117,29,0,0,0,60,102,114,111,122, - 101,110,32,105,109,112,111,114,116,108,105,98,46,95,98,111, - 111,116,115,116,114,97,112,62,117,19,0,0,0,95,108,111, - 99,107,95,117,110,108,111,99,107,95,109,111,100,117,108,101, - 29,1,0,0,115,14,0,0,0,0,7,12,1,10,1,3, - 1,14,1,13,3,5,2,117,19,0,0,0,95,108,111,99, - 107,95,117,110,108,111,99,107,95,109,111,100,117,108,101,99, - 1,0,0,0,0,0,0,0,3,0,0,0,3,0,0,0, - 79,0,0,0,115,13,0,0,0,124,0,0,124,1,0,124, - 2,0,142,0,0,83,40,1,0,0,0,117,46,1,0,0, - 114,101,109,111,118,101,95,105,109,112,111,114,116,108,105,98, - 95,102,114,97,109,101,115,32,105,110,32,105,109,112,111,114, - 116,46,99,32,119,105,108,108,32,97,108,119,97,121,115,32, - 114,101,109,111,118,101,32,115,101,113,117,101,110,99,101,115, - 10,32,32,32,32,111,102,32,105,109,112,111,114,116,108,105, - 98,32,102,114,97,109,101,115,32,116,104,97,116,32,101,110, - 100,32,119,105,116,104,32,97,32,99,97,108,108,32,116,111, - 32,116,104,105,115,32,102,117,110,99,116,105,111,110,10,10, - 32,32,32,32,85,115,101,32,105,116,32,105,110,115,116,101, - 97,100,32,111,102,32,97,32,110,111,114,109,97,108,32,99, - 97,108,108,32,105,110,32,112,108,97,99,101,115,32,119,104, - 101,114,101,32,105,110,99,108,117,100,105,110,103,32,116,104, - 101,32,105,109,112,111,114,116,108,105,98,10,32,32,32,32, - 102,114,97,109,101,115,32,105,110,116,114,111,100,117,99,101, - 115,32,117,110,119,97,110,116,101,100,32,110,111,105,115,101, - 32,105,110,116,111,32,116,104,101,32,116,114,97,99,101,98, - 97,99,107,32,40,101,46,103,46,32,119,104,101,110,32,101, - 120,101,99,117,116,105,110,103,10,32,32,32,32,109,111,100, - 117,108,101,32,99,111,100,101,41,10,32,32,32,32,40,0, - 0,0,0,40,3,0,0,0,117,1,0,0,0,102,117,4, - 0,0,0,97,114,103,115,117,4,0,0,0,107,119,100,115, - 40,0,0,0,0,40,0,0,0,0,117,29,0,0,0,60, - 102,114,111,122,101,110,32,105,109,112,111,114,116,108,105,98, - 46,95,98,111,111,116,115,116,114,97,112,62,117,25,0,0, - 0,95,99,97,108,108,95,119,105,116,104,95,102,114,97,109, - 101,115,95,114,101,109,111,118,101,100,49,1,0,0,115,2, - 0,0,0,0,8,117,25,0,0,0,95,99,97,108,108,95, - 119,105,116,104,95,102,114,97,109,101,115,95,114,101,109,111, - 118,101,100,105,158,12,0,0,117,1,0,0,0,13,105,16, - 0,0,0,117,1,0,0,0,10,105,24,0,0,0,99,1, - 0,0,0,0,0,0,0,2,0,0,0,3,0,0,0,99, - 0,0,0,115,29,0,0,0,124,0,0,93,19,0,125,1, - 0,116,0,0,124,1,0,63,100,0,0,64,86,1,113,3, - 0,100,1,0,83,40,2,0,0,0,105,255,0,0,0,78, - 40,1,0,0,0,117,17,0,0,0,95,82,65,87,95,77, - 65,71,73,67,95,78,85,77,66,69,82,40,2,0,0,0, - 117,2,0,0,0,46,48,117,1,0,0,0,110,40,0,0, + 112,62,117,11,0,0,0,95,77,111,100,117,108,101,76,111, + 99,107,175,0,0,0,115,12,0,0,0,16,4,6,2,12, + 8,12,12,12,25,12,13,117,11,0,0,0,95,77,111,100, + 117,108,101,76,111,99,107,99,1,0,0,0,0,0,0,0, + 1,0,0,0,2,0,0,0,66,0,0,0,115,74,0,0, + 0,124,0,0,69,101,0,0,90,1,0,100,0,0,90,2, + 0,100,1,0,90,3,0,100,2,0,100,3,0,132,0,0, + 90,4,0,100,4,0,100,5,0,132,0,0,90,5,0,100, + 6,0,100,7,0,132,0,0,90,6,0,100,8,0,100,9, + 0,132,0,0,90,7,0,100,10,0,83,40,11,0,0,0, + 117,16,0,0,0,95,68,117,109,109,121,77,111,100,117,108, + 101,76,111,99,107,117,86,0,0,0,65,32,115,105,109,112, + 108,101,32,95,77,111,100,117,108,101,76,111,99,107,32,101, + 113,117,105,118,97,108,101,110,116,32,102,111,114,32,80,121, + 116,104,111,110,32,98,117,105,108,100,115,32,119,105,116,104, + 111,117,116,10,32,32,32,32,109,117,108,116,105,45,116,104, + 114,101,97,100,105,110,103,32,115,117,112,112,111,114,116,46, + 99,2,0,0,0,0,0,0,0,2,0,0,0,2,0,0, + 0,67,0,0,0,115,22,0,0,0,124,1,0,124,0,0, + 95,0,0,100,1,0,124,0,0,95,1,0,100,0,0,83, + 40,2,0,0,0,78,105,0,0,0,0,40,2,0,0,0, + 117,4,0,0,0,110,97,109,101,117,5,0,0,0,99,111, + 117,110,116,40,2,0,0,0,117,4,0,0,0,115,101,108, + 102,117,4,0,0,0,110,97,109,101,40,0,0,0,0,40, + 0,0,0,0,117,29,0,0,0,60,102,114,111,122,101,110, + 32,105,109,112,111,114,116,108,105,98,46,95,98,111,111,116, + 115,116,114,97,112,62,117,8,0,0,0,95,95,105,110,105, + 116,95,95,247,0,0,0,115,4,0,0,0,0,1,9,1, + 117,25,0,0,0,95,68,117,109,109,121,77,111,100,117,108, + 101,76,111,99,107,46,95,95,105,110,105,116,95,95,99,1, + 0,0,0,0,0,0,0,1,0,0,0,3,0,0,0,67, + 0,0,0,115,19,0,0,0,124,0,0,4,106,0,0,100, + 1,0,55,2,95,0,0,100,2,0,83,40,3,0,0,0, + 78,105,1,0,0,0,84,40,2,0,0,0,117,5,0,0, + 0,99,111,117,110,116,117,4,0,0,0,84,114,117,101,40, + 1,0,0,0,117,4,0,0,0,115,101,108,102,40,0,0, 0,0,40,0,0,0,0,117,29,0,0,0,60,102,114,111, 122,101,110,32,105,109,112,111,114,116,108,105,98,46,95,98, - 111,111,116,115,116,114,97,112,62,117,9,0,0,0,60,103, - 101,110,101,120,112,114,62,150,1,0,0,115,2,0,0,0, - 6,0,117,9,0,0,0,60,103,101,110,101,120,112,114,62, - 105,0,0,0,0,105,25,0,0,0,105,8,0,0,0,117, - 11,0,0,0,95,95,112,121,99,97,99,104,101,95,95,117, - 3,0,0,0,46,112,121,117,4,0,0,0,46,112,121,99, - 117,4,0,0,0,46,112,121,111,99,2,0,0,0,0,0, - 0,0,11,0,0,0,6,0,0,0,67,0,0,0,115,173, - 0,0,0,124,1,0,100,5,0,107,8,0,114,18,0,116, - 1,0,110,3,0,124,1,0,125,2,0,124,2,0,114,39, - 0,116,2,0,125,3,0,110,6,0,116,3,0,125,3,0, - 116,4,0,124,0,0,131,1,0,92,2,0,125,4,0,125, - 5,0,124,5,0,106,5,0,100,1,0,131,1,0,92,3, - 0,125,6,0,125,7,0,125,8,0,116,6,0,106,7,0, - 106,8,0,125,9,0,124,9,0,100,5,0,107,8,0,114, - 126,0,116,9,0,100,2,0,131,1,0,130,1,0,110,0, - 0,100,3,0,106,10,0,124,6,0,124,7,0,124,9,0, - 124,3,0,100,4,0,25,103,4,0,131,1,0,125,10,0, - 116,11,0,124,4,0,116,12,0,124,10,0,131,3,0,83, - 40,6,0,0,0,117,242,1,0,0,71,105,118,101,110,32, - 116,104,101,32,112,97,116,104,32,116,111,32,97,32,46,112, - 121,32,102,105,108,101,44,32,114,101,116,117,114,110,32,116, - 104,101,32,112,97,116,104,32,116,111,32,105,116,115,32,46, - 112,121,99,47,46,112,121,111,32,102,105,108,101,46,10,10, - 32,32,32,32,84,104,101,32,46,112,121,32,102,105,108,101, - 32,100,111,101,115,32,110,111,116,32,110,101,101,100,32,116, - 111,32,101,120,105,115,116,59,32,116,104,105,115,32,115,105, - 109,112,108,121,32,114,101,116,117,114,110,115,32,116,104,101, - 32,112,97,116,104,32,116,111,32,116,104,101,10,32,32,32, - 32,46,112,121,99,47,46,112,121,111,32,102,105,108,101,32, - 99,97,108,99,117,108,97,116,101,100,32,97,115,32,105,102, - 32,116,104,101,32,46,112,121,32,102,105,108,101,32,119,101, - 114,101,32,105,109,112,111,114,116,101,100,46,32,32,84,104, - 101,32,101,120,116,101,110,115,105,111,110,10,32,32,32,32, - 119,105,108,108,32,98,101,32,46,112,121,99,32,117,110,108, - 101,115,115,32,95,95,100,101,98,117,103,95,95,32,105,115, - 32,110,111,116,32,100,101,102,105,110,101,100,44,32,116,104, - 101,110,32,105,116,32,119,105,108,108,32,98,101,32,46,112, - 121,111,46,10,10,32,32,32,32,73,102,32,100,101,98,117, - 103,95,111,118,101,114,114,105,100,101,32,105,115,32,110,111, - 116,32,78,111,110,101,44,32,116,104,101,110,32,105,116,32, - 109,117,115,116,32,98,101,32,97,32,98,111,111,108,101,97, - 110,32,97,110,100,32,105,115,32,116,97,107,101,110,32,97, - 115,10,32,32,32,32,116,104,101,32,118,97,108,117,101,32, - 111,102,32,95,95,100,101,98,117,103,95,95,32,105,110,115, - 116,101,97,100,46,10,10,32,32,32,32,73,102,32,115,121, - 115,46,105,109,112,108,101,109,101,110,116,97,116,105,111,110, - 46,99,97,99,104,101,95,116,97,103,32,105,115,32,78,111, - 110,101,32,116,104,101,110,32,78,111,116,73,109,112,108,101, - 109,101,110,116,101,100,69,114,114,111,114,32,105,115,32,114, - 97,105,115,101,100,46,10,10,32,32,32,32,117,1,0,0, - 0,46,117,36,0,0,0,115,121,115,46,105,109,112,108,101, - 109,101,110,116,97,116,105,111,110,46,99,97,99,104,101,95, - 116,97,103,32,105,115,32,78,111,110,101,117,0,0,0,0, - 105,0,0,0,0,78,40,13,0,0,0,117,4,0,0,0, - 78,111,110,101,117,9,0,0,0,95,95,100,101,98,117,103, - 95,95,117,23,0,0,0,68,69,66,85,71,95,66,89,84, - 69,67,79,68,69,95,83,85,70,70,73,88,69,83,117,27, - 0,0,0,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,117,11, - 0,0,0,95,112,97,116,104,95,115,112,108,105,116,117,9, - 0,0,0,112,97,114,116,105,116,105,111,110,117,3,0,0, - 0,115,121,115,117,14,0,0,0,105,109,112,108,101,109,101, - 110,116,97,116,105,111,110,117,9,0,0,0,99,97,99,104, - 101,95,116,97,103,117,19,0,0,0,78,111,116,73,109,112, - 108,101,109,101,110,116,101,100,69,114,114,111,114,117,4,0, - 0,0,106,111,105,110,117,10,0,0,0,95,112,97,116,104, - 95,106,111,105,110,117,8,0,0,0,95,80,89,67,65,67, - 72,69,40,11,0,0,0,117,4,0,0,0,112,97,116,104, - 117,14,0,0,0,100,101,98,117,103,95,111,118,101,114,114, - 105,100,101,117,5,0,0,0,100,101,98,117,103,117,8,0, - 0,0,115,117,102,102,105,120,101,115,117,4,0,0,0,104, - 101,97,100,117,4,0,0,0,116,97,105,108,117,13,0,0, - 0,98,97,115,101,95,102,105,108,101,110,97,109,101,117,3, - 0,0,0,115,101,112,117,1,0,0,0,95,117,3,0,0, - 0,116,97,103,117,8,0,0,0,102,105,108,101,110,97,109, - 101,40,0,0,0,0,40,0,0,0,0,117,29,0,0,0, - 60,102,114,111,122,101,110,32,105,109,112,111,114,116,108,105, - 98,46,95,98,111,111,116,115,116,114,97,112,62,117,17,0, - 0,0,99,97,99,104,101,95,102,114,111,109,95,115,111,117, - 114,99,101,163,1,0,0,115,22,0,0,0,0,13,24,1, - 6,1,9,2,6,1,18,1,24,1,12,1,12,1,15,1, - 31,1,117,17,0,0,0,99,97,99,104,101,95,102,114,111, - 109,95,115,111,117,114,99,101,99,1,0,0,0,0,0,0, - 0,5,0,0,0,5,0,0,0,67,0,0,0,115,193,0, - 0,0,116,0,0,106,1,0,106,2,0,100,7,0,107,8, - 0,114,33,0,116,4,0,100,1,0,131,1,0,130,1,0, - 110,0,0,116,5,0,124,0,0,131,1,0,92,2,0,125, - 1,0,125,2,0,116,5,0,124,1,0,131,1,0,92,2, - 0,125,1,0,125,3,0,124,3,0,116,6,0,107,3,0, - 114,108,0,116,7,0,100,2,0,106,8,0,116,6,0,124, - 0,0,131,2,0,131,1,0,130,1,0,110,0,0,124,2, - 0,106,9,0,100,3,0,131,1,0,100,4,0,107,3,0, - 114,153,0,116,7,0,100,5,0,106,8,0,124,2,0,131, - 1,0,131,1,0,130,1,0,110,0,0,124,2,0,106,10, - 0,100,3,0,131,1,0,100,6,0,25,125,4,0,116,11, - 0,124,1,0,124,4,0,116,12,0,100,6,0,25,23,131, - 2,0,83,40,8,0,0,0,117,121,1,0,0,71,105,118, - 101,110,32,116,104,101,32,112,97,116,104,32,116,111,32,97, - 32,46,112,121,99,46,47,46,112,121,111,32,102,105,108,101, - 44,32,114,101,116,117,114,110,32,116,104,101,32,112,97,116, - 104,32,116,111,32,105,116,115,32,46,112,121,32,102,105,108, - 101,46,10,10,32,32,32,32,84,104,101,32,46,112,121,99, - 47,46,112,121,111,32,102,105,108,101,32,100,111,101,115,32, - 110,111,116,32,110,101,101,100,32,116,111,32,101,120,105,115, - 116,59,32,116,104,105,115,32,115,105,109,112,108,121,32,114, - 101,116,117,114,110,115,32,116,104,101,32,112,97,116,104,32, - 116,111,10,32,32,32,32,116,104,101,32,46,112,121,32,102, - 105,108,101,32,99,97,108,99,117,108,97,116,101,100,32,116, - 111,32,99,111,114,114,101,115,112,111,110,100,32,116,111,32, - 116,104,101,32,46,112,121,99,47,46,112,121,111,32,102,105, - 108,101,46,32,32,73,102,32,112,97,116,104,32,100,111,101, - 115,10,32,32,32,32,110,111,116,32,99,111,110,102,111,114, - 109,32,116,111,32,80,69,80,32,51,49,52,55,32,102,111, - 114,109,97,116,44,32,86,97,108,117,101,69,114,114,111,114, - 32,119,105,108,108,32,98,101,32,114,97,105,115,101,100,46, - 32,73,102,10,32,32,32,32,115,121,115,46,105,109,112,108, - 101,109,101,110,116,97,116,105,111,110,46,99,97,99,104,101, - 95,116,97,103,32,105,115,32,78,111,110,101,32,116,104,101, - 110,32,78,111,116,73,109,112,108,101,109,101,110,116,101,100, - 69,114,114,111,114,32,105,115,32,114,97,105,115,101,100,46, - 10,10,32,32,32,32,117,36,0,0,0,115,121,115,46,105, - 109,112,108,101,109,101,110,116,97,116,105,111,110,46,99,97, - 99,104,101,95,116,97,103,32,105,115,32,78,111,110,101,117, - 37,0,0,0,123,125,32,110,111,116,32,98,111,116,116,111, - 109,45,108,101,118,101,108,32,100,105,114,101,99,116,111,114, - 121,32,105,110,32,123,33,114,125,117,1,0,0,0,46,105, - 2,0,0,0,117,28,0,0,0,101,120,112,101,99,116,101, - 100,32,111,110,108,121,32,50,32,100,111,116,115,32,105,110, - 32,123,33,114,125,105,0,0,0,0,78,40,13,0,0,0, - 117,3,0,0,0,115,121,115,117,14,0,0,0,105,109,112, - 108,101,109,101,110,116,97,116,105,111,110,117,9,0,0,0, - 99,97,99,104,101,95,116,97,103,117,4,0,0,0,78,111, - 110,101,117,19,0,0,0,78,111,116,73,109,112,108,101,109, - 101,110,116,101,100,69,114,114,111,114,117,11,0,0,0,95, - 112,97,116,104,95,115,112,108,105,116,117,8,0,0,0,95, - 80,89,67,65,67,72,69,117,10,0,0,0,86,97,108,117, - 101,69,114,114,111,114,117,6,0,0,0,102,111,114,109,97, - 116,117,5,0,0,0,99,111,117,110,116,117,9,0,0,0, - 112,97,114,116,105,116,105,111,110,117,10,0,0,0,95,112, - 97,116,104,95,106,111,105,110,117,15,0,0,0,83,79,85, - 82,67,69,95,83,85,70,70,73,88,69,83,40,5,0,0, - 0,117,4,0,0,0,112,97,116,104,117,4,0,0,0,104, - 101,97,100,117,16,0,0,0,112,121,99,97,99,104,101,95, - 102,105,108,101,110,97,109,101,117,7,0,0,0,112,121,99, - 97,99,104,101,117,13,0,0,0,98,97,115,101,95,102,105, - 108,101,110,97,109,101,40,0,0,0,0,40,0,0,0,0, + 111,111,116,115,116,114,97,112,62,117,7,0,0,0,97,99, + 113,117,105,114,101,251,0,0,0,115,4,0,0,0,0,1, + 15,1,117,24,0,0,0,95,68,117,109,109,121,77,111,100, + 117,108,101,76,111,99,107,46,97,99,113,117,105,114,101,99, + 1,0,0,0,0,0,0,0,1,0,0,0,3,0,0,0, + 67,0,0,0,115,49,0,0,0,124,0,0,106,0,0,100, + 1,0,107,2,0,114,30,0,116,1,0,100,2,0,131,1, + 0,130,1,0,110,0,0,124,0,0,4,106,0,0,100,3, + 0,56,2,95,0,0,100,0,0,83,40,4,0,0,0,78, + 105,0,0,0,0,117,31,0,0,0,99,97,110,110,111,116, + 32,114,101,108,101,97,115,101,32,117,110,45,97,99,113,117, + 105,114,101,100,32,108,111,99,107,105,1,0,0,0,40,2, + 0,0,0,117,5,0,0,0,99,111,117,110,116,117,12,0, + 0,0,82,117,110,116,105,109,101,69,114,114,111,114,40,1, + 0,0,0,117,4,0,0,0,115,101,108,102,40,0,0,0, + 0,40,0,0,0,0,117,29,0,0,0,60,102,114,111,122, + 101,110,32,105,109,112,111,114,116,108,105,98,46,95,98,111, + 111,116,115,116,114,97,112,62,117,7,0,0,0,114,101,108, + 101,97,115,101,255,0,0,0,115,6,0,0,0,0,1,15, + 1,15,1,117,24,0,0,0,95,68,117,109,109,121,77,111, + 100,117,108,101,76,111,99,107,46,114,101,108,101,97,115,101, + 99,1,0,0,0,0,0,0,0,1,0,0,0,4,0,0, + 0,67,0,0,0,115,23,0,0,0,100,1,0,124,0,0, + 106,0,0,116,1,0,124,0,0,131,1,0,102,2,0,22, + 83,40,2,0,0,0,78,117,26,0,0,0,95,68,117,109, + 109,121,77,111,100,117,108,101,76,111,99,107,40,37,114,41, + 32,97,116,32,37,100,40,2,0,0,0,117,4,0,0,0, + 110,97,109,101,117,2,0,0,0,105,100,40,1,0,0,0, + 117,4,0,0,0,115,101,108,102,40,0,0,0,0,40,0, + 0,0,0,117,29,0,0,0,60,102,114,111,122,101,110,32, + 105,109,112,111,114,116,108,105,98,46,95,98,111,111,116,115, + 116,114,97,112,62,117,8,0,0,0,95,95,114,101,112,114, + 95,95,4,1,0,0,115,2,0,0,0,0,1,117,25,0, + 0,0,95,68,117,109,109,121,77,111,100,117,108,101,76,111, + 99,107,46,95,95,114,101,112,114,95,95,78,40,8,0,0, + 0,117,8,0,0,0,95,95,110,97,109,101,95,95,117,10, + 0,0,0,95,95,109,111,100,117,108,101,95,95,117,12,0, + 0,0,95,95,113,117,97,108,110,97,109,101,95,95,117,7, + 0,0,0,95,95,100,111,99,95,95,117,8,0,0,0,95, + 95,105,110,105,116,95,95,117,7,0,0,0,97,99,113,117, + 105,114,101,117,7,0,0,0,114,101,108,101,97,115,101,117, + 8,0,0,0,95,95,114,101,112,114,95,95,40,1,0,0, + 0,117,10,0,0,0,95,95,108,111,99,97,108,115,95,95, + 40,0,0,0,0,40,0,0,0,0,117,29,0,0,0,60, + 102,114,111,122,101,110,32,105,109,112,111,114,116,108,105,98, + 46,95,98,111,111,116,115,116,114,97,112,62,117,16,0,0, + 0,95,68,117,109,109,121,77,111,100,117,108,101,76,111,99, + 107,243,0,0,0,115,10,0,0,0,16,2,6,2,12,4, + 12,4,12,5,117,16,0,0,0,95,68,117,109,109,121,77, + 111,100,117,108,101,76,111,99,107,99,1,0,0,0,0,0, + 0,0,3,0,0,0,11,0,0,0,3,0,0,0,115,142, + 0,0,0,100,3,0,125,1,0,121,17,0,116,1,0,136, + 0,0,25,131,0,0,125,1,0,87,110,18,0,4,116,2, + 0,107,10,0,114,43,0,1,1,1,89,110,1,0,88,124, + 1,0,100,3,0,107,8,0,114,138,0,116,3,0,100,3, + 0,107,8,0,114,83,0,116,4,0,136,0,0,131,1,0, + 125,1,0,110,12,0,116,5,0,136,0,0,131,1,0,125, + 1,0,135,0,0,102,1,0,100,1,0,100,2,0,134,0, + 0,125,2,0,116,6,0,106,7,0,124,1,0,124,2,0, + 131,2,0,116,1,0,136,0,0,60,110,0,0,124,1,0, + 83,40,4,0,0,0,117,109,0,0,0,71,101,116,32,111, + 114,32,99,114,101,97,116,101,32,116,104,101,32,109,111,100, + 117,108,101,32,108,111,99,107,32,102,111,114,32,97,32,103, + 105,118,101,110,32,109,111,100,117,108,101,32,110,97,109,101, + 46,10,10,32,32,32,32,83,104,111,117,108,100,32,111,110, + 108,121,32,98,101,32,99,97,108,108,101,100,32,119,105,116, + 104,32,116,104,101,32,105,109,112,111,114,116,32,108,111,99, + 107,32,116,97,107,101,110,46,99,1,0,0,0,0,0,0, + 0,1,0,0,0,2,0,0,0,19,0,0,0,115,11,0, + 0,0,116,0,0,136,0,0,61,100,0,0,83,40,1,0, + 0,0,78,40,1,0,0,0,117,13,0,0,0,95,109,111, + 100,117,108,101,95,108,111,99,107,115,40,1,0,0,0,117, + 1,0,0,0,95,40,1,0,0,0,117,4,0,0,0,110, + 97,109,101,40,0,0,0,0,117,29,0,0,0,60,102,114, + 111,122,101,110,32,105,109,112,111,114,116,108,105,98,46,95, + 98,111,111,116,115,116,114,97,112,62,117,2,0,0,0,99, + 98,24,1,0,0,115,2,0,0,0,0,1,117,28,0,0, + 0,95,103,101,116,95,109,111,100,117,108,101,95,108,111,99, + 107,46,60,108,111,99,97,108,115,62,46,99,98,78,40,8, + 0,0,0,117,4,0,0,0,78,111,110,101,117,13,0,0, + 0,95,109,111,100,117,108,101,95,108,111,99,107,115,117,8, + 0,0,0,75,101,121,69,114,114,111,114,117,7,0,0,0, + 95,116,104,114,101,97,100,117,16,0,0,0,95,68,117,109, + 109,121,77,111,100,117,108,101,76,111,99,107,117,11,0,0, + 0,95,77,111,100,117,108,101,76,111,99,107,117,8,0,0, + 0,95,119,101,97,107,114,101,102,117,3,0,0,0,114,101, + 102,40,3,0,0,0,117,4,0,0,0,110,97,109,101,117, + 4,0,0,0,108,111,99,107,117,2,0,0,0,99,98,40, + 0,0,0,0,40,1,0,0,0,117,4,0,0,0,110,97, + 109,101,117,29,0,0,0,60,102,114,111,122,101,110,32,105, + 109,112,111,114,116,108,105,98,46,95,98,111,111,116,115,116, + 114,97,112,62,117,16,0,0,0,95,103,101,116,95,109,111, + 100,117,108,101,95,108,111,99,107,10,1,0,0,115,24,0, + 0,0,0,4,6,1,3,1,17,1,13,1,5,1,12,1, + 12,1,15,2,12,1,18,2,25,1,117,16,0,0,0,95, + 103,101,116,95,109,111,100,117,108,101,95,108,111,99,107,99, + 1,0,0,0,0,0,0,0,2,0,0,0,11,0,0,0, + 67,0,0,0,115,71,0,0,0,116,0,0,124,0,0,131, + 1,0,125,1,0,116,1,0,106,2,0,131,0,0,1,121, + 14,0,124,1,0,106,3,0,131,0,0,1,87,110,18,0, + 4,116,4,0,107,10,0,114,56,0,1,1,1,89,110,11, + 0,88,124,1,0,106,5,0,131,0,0,1,100,1,0,83, + 40,2,0,0,0,117,21,1,0,0,82,101,108,101,97,115, + 101,32,116,104,101,32,103,108,111,98,97,108,32,105,109,112, + 111,114,116,32,108,111,99,107,44,32,97,110,100,32,97,99, + 113,117,105,114,101,115,32,116,104,101,110,32,114,101,108,101, + 97,115,101,32,116,104,101,10,32,32,32,32,109,111,100,117, + 108,101,32,108,111,99,107,32,102,111,114,32,97,32,103,105, + 118,101,110,32,109,111,100,117,108,101,32,110,97,109,101,46, + 10,32,32,32,32,84,104,105,115,32,105,115,32,117,115,101, + 100,32,116,111,32,101,110,115,117,114,101,32,97,32,109,111, + 100,117,108,101,32,105,115,32,99,111,109,112,108,101,116,101, + 108,121,32,105,110,105,116,105,97,108,105,122,101,100,44,32, + 105,110,32,116,104,101,10,32,32,32,32,101,118,101,110,116, + 32,105,116,32,105,115,32,98,101,105,110,103,32,105,109,112, + 111,114,116,101,100,32,98,121,32,97,110,111,116,104,101,114, + 32,116,104,114,101,97,100,46,10,10,32,32,32,32,83,104, + 111,117,108,100,32,111,110,108,121,32,98,101,32,99,97,108, + 108,101,100,32,119,105,116,104,32,116,104,101,32,105,109,112, + 111,114,116,32,108,111,99,107,32,116,97,107,101,110,46,78, + 40,6,0,0,0,117,16,0,0,0,95,103,101,116,95,109, + 111,100,117,108,101,95,108,111,99,107,117,4,0,0,0,95, + 105,109,112,117,12,0,0,0,114,101,108,101,97,115,101,95, + 108,111,99,107,117,7,0,0,0,97,99,113,117,105,114,101, + 117,14,0,0,0,95,68,101,97,100,108,111,99,107,69,114, + 114,111,114,117,7,0,0,0,114,101,108,101,97,115,101,40, + 2,0,0,0,117,4,0,0,0,110,97,109,101,117,4,0, + 0,0,108,111,99,107,40,0,0,0,0,40,0,0,0,0, 117,29,0,0,0,60,102,114,111,122,101,110,32,105,109,112, 111,114,116,108,105,98,46,95,98,111,111,116,115,116,114,97, - 112,62,117,17,0,0,0,115,111,117,114,99,101,95,102,114, - 111,109,95,99,97,99,104,101,190,1,0,0,115,24,0,0, - 0,0,9,18,1,15,1,18,1,18,1,12,1,9,1,18, - 1,21,1,9,1,15,1,19,1,117,17,0,0,0,115,111, - 117,114,99,101,95,102,114,111,109,95,99,97,99,104,101,99, - 1,0,0,0,0,0,0,0,5,0,0,0,13,0,0,0, - 67,0,0,0,115,164,0,0,0,116,0,0,124,0,0,131, - 1,0,100,1,0,107,2,0,114,22,0,100,6,0,83,124, - 0,0,106,2,0,100,2,0,131,1,0,92,3,0,125,1, - 0,125,2,0,125,3,0,124,1,0,12,115,81,0,124,3, - 0,106,3,0,131,0,0,100,7,0,100,8,0,133,2,0, - 25,100,5,0,107,3,0,114,85,0,124,0,0,83,121,16, - 0,116,4,0,124,0,0,131,1,0,125,4,0,87,110,40, - 0,4,116,5,0,116,6,0,102,2,0,107,10,0,114,143, - 0,1,1,1,116,7,0,100,9,0,100,6,0,133,2,0, - 25,125,4,0,89,110,1,0,88,116,8,0,116,9,0,131, - 1,0,114,160,0,124,4,0,83,124,0,0,83,40,10,0, - 0,0,117,188,0,0,0,67,111,110,118,101,114,116,32,97, - 32,98,121,116,101,99,111,100,101,32,102,105,108,101,32,112, - 97,116,104,32,116,111,32,97,32,115,111,117,114,99,101,32, - 112,97,116,104,32,40,105,102,32,112,111,115,115,105,98,108, - 101,41,46,10,10,32,32,32,32,84,104,105,115,32,102,117, - 110,99,116,105,111,110,32,101,120,105,115,116,115,32,112,117, - 114,101,108,121,32,102,111,114,32,98,97,99,107,119,97,114, - 100,115,45,99,111,109,112,97,116,105,98,105,108,105,116,121, - 32,102,111,114,10,32,32,32,32,80,121,73,109,112,111,114, - 116,95,69,120,101,99,67,111,100,101,77,111,100,117,108,101, - 87,105,116,104,70,105,108,101,110,97,109,101,115,40,41,32, - 105,110,32,116,104,101,32,67,32,65,80,73,46,10,10,32, - 32,32,32,105,0,0,0,0,117,1,0,0,0,46,105,3, - 0,0,0,105,1,0,0,0,117,3,0,0,0,46,112,121, - 78,105,253,255,255,255,105,255,255,255,255,105,255,255,255,255, - 40,10,0,0,0,117,3,0,0,0,108,101,110,117,4,0, - 0,0,78,111,110,101,117,9,0,0,0,114,112,97,114,105, - 116,105,111,110,117,5,0,0,0,108,111,119,101,114,117,17, - 0,0,0,115,111,117,114,99,101,95,102,114,111,109,95,99, - 97,99,104,101,117,19,0,0,0,78,111,116,73,109,112,108, - 101,109,101,110,116,101,100,69,114,114,111,114,117,10,0,0, - 0,86,97,108,117,101,69,114,114,111,114,117,12,0,0,0, - 98,121,116,99,111,100,101,95,112,97,116,104,117,12,0,0, - 0,95,112,97,116,104,95,105,115,102,105,108,101,117,12,0, - 0,0,115,111,117,114,99,101,95,115,116,97,116,115,40,5, - 0,0,0,117,13,0,0,0,98,121,116,101,99,111,100,101, - 95,112,97,116,104,117,4,0,0,0,114,101,115,116,117,1, - 0,0,0,95,117,9,0,0,0,101,120,116,101,110,115,105, - 111,110,117,11,0,0,0,115,111,117,114,99,101,95,112,97, - 116,104,40,0,0,0,0,40,0,0,0,0,117,29,0,0, - 0,60,102,114,111,122,101,110,32,105,109,112,111,114,116,108, - 105,98,46,95,98,111,111,116,115,116,114,97,112,62,117,15, - 0,0,0,95,103,101,116,95,115,111,117,114,99,101,102,105, - 108,101,213,1,0,0,115,20,0,0,0,0,7,18,1,4, - 1,24,1,35,1,4,2,3,1,16,1,19,1,21,2,117, - 15,0,0,0,95,103,101,116,95,115,111,117,114,99,101,102, - 105,108,101,99,1,0,0,0,0,0,0,0,2,0,0,0, - 4,0,0,0,71,0,0,0,115,75,0,0,0,116,0,0, - 106,1,0,106,2,0,114,71,0,124,0,0,106,3,0,100, - 6,0,131,1,0,115,40,0,100,3,0,124,0,0,23,125, - 0,0,110,0,0,116,4,0,124,0,0,106,5,0,124,1, - 0,140,0,0,100,4,0,116,0,0,106,6,0,131,1,1, - 1,110,0,0,100,5,0,83,40,7,0,0,0,117,61,0, - 0,0,80,114,105,110,116,32,116,104,101,32,109,101,115,115, - 97,103,101,32,116,111,32,115,116,100,101,114,114,32,105,102, - 32,45,118,47,80,89,84,72,79,78,86,69,82,66,79,83, - 69,32,105,115,32,116,117,114,110,101,100,32,111,110,46,117, - 1,0,0,0,35,117,7,0,0,0,105,109,112,111,114,116, - 32,117,2,0,0,0,35,32,117,4,0,0,0,102,105,108, - 101,78,40,2,0,0,0,117,1,0,0,0,35,117,7,0, - 0,0,105,109,112,111,114,116,32,40,7,0,0,0,117,3, - 0,0,0,115,121,115,117,5,0,0,0,102,108,97,103,115, - 117,7,0,0,0,118,101,114,98,111,115,101,117,10,0,0, - 0,115,116,97,114,116,115,119,105,116,104,117,5,0,0,0, - 112,114,105,110,116,117,6,0,0,0,102,111,114,109,97,116, - 117,6,0,0,0,115,116,100,101,114,114,40,2,0,0,0, - 117,7,0,0,0,109,101,115,115,97,103,101,117,4,0,0, - 0,97,114,103,115,40,0,0,0,0,40,0,0,0,0,117, - 29,0,0,0,60,102,114,111,122,101,110,32,105,109,112,111, - 114,116,108,105,98,46,95,98,111,111,116,115,116,114,97,112, - 62,117,16,0,0,0,95,118,101,114,98,111,115,101,95,109, - 101,115,115,97,103,101,234,1,0,0,115,8,0,0,0,0, - 2,12,1,15,1,13,1,117,16,0,0,0,95,118,101,114, - 98,111,115,101,95,109,101,115,115,97,103,101,99,1,0,0, - 0,0,0,0,0,2,0,0,0,3,0,0,0,3,0,0, - 0,115,35,0,0,0,135,0,0,102,1,0,100,1,0,100, - 2,0,134,0,0,125,1,0,116,0,0,124,1,0,136,0, - 0,131,2,0,1,124,1,0,83,40,3,0,0,0,117,39, - 0,0,0,83,101,116,32,95,95,112,97,99,107,97,103,101, - 95,95,32,111,110,32,116,104,101,32,114,101,116,117,114,110, - 101,100,32,109,111,100,117,108,101,46,99,0,0,0,0,0, - 0,0,0,3,0,0,0,4,0,0,0,31,0,0,0,115, - 101,0,0,0,136,0,0,124,0,0,124,1,0,142,0,0, - 125,2,0,116,0,0,124,2,0,100,1,0,100,0,0,131, - 3,0,100,0,0,107,8,0,114,97,0,124,2,0,106,2, - 0,124,2,0,95,3,0,116,4,0,124,2,0,100,2,0, - 131,2,0,115,97,0,124,2,0,106,3,0,106,5,0,100, - 3,0,131,1,0,100,4,0,25,124,2,0,95,3,0,113, - 97,0,110,0,0,124,2,0,83,40,5,0,0,0,78,117, - 11,0,0,0,95,95,112,97,99,107,97,103,101,95,95,117, - 8,0,0,0,95,95,112,97,116,104,95,95,117,1,0,0, - 0,46,105,0,0,0,0,40,6,0,0,0,117,7,0,0, - 0,103,101,116,97,116,116,114,117,4,0,0,0,78,111,110, - 101,117,8,0,0,0,95,95,110,97,109,101,95,95,117,11, - 0,0,0,95,95,112,97,99,107,97,103,101,95,95,117,7, - 0,0,0,104,97,115,97,116,116,114,117,10,0,0,0,114, - 112,97,114,116,105,116,105,111,110,40,3,0,0,0,117,4, - 0,0,0,97,114,103,115,117,6,0,0,0,107,119,97,114, - 103,115,117,6,0,0,0,109,111,100,117,108,101,40,1,0, - 0,0,117,3,0,0,0,102,120,110,40,0,0,0,0,117, - 29,0,0,0,60,102,114,111,122,101,110,32,105,109,112,111, - 114,116,108,105,98,46,95,98,111,111,116,115,116,114,97,112, - 62,117,19,0,0,0,115,101,116,95,112,97,99,107,97,103, - 101,95,119,114,97,112,112,101,114,244,1,0,0,115,12,0, - 0,0,0,1,15,1,24,1,12,1,15,1,31,1,117,40, - 0,0,0,115,101,116,95,112,97,99,107,97,103,101,46,60, - 108,111,99,97,108,115,62,46,115,101,116,95,112,97,99,107, - 97,103,101,95,119,114,97,112,112,101,114,40,1,0,0,0, - 117,5,0,0,0,95,119,114,97,112,40,2,0,0,0,117, - 3,0,0,0,102,120,110,117,19,0,0,0,115,101,116,95, - 112,97,99,107,97,103,101,95,119,114,97,112,112,101,114,40, - 0,0,0,0,40,1,0,0,0,117,3,0,0,0,102,120, - 110,117,29,0,0,0,60,102,114,111,122,101,110,32,105,109, + 112,62,117,19,0,0,0,95,108,111,99,107,95,117,110,108, + 111,99,107,95,109,111,100,117,108,101,29,1,0,0,115,14, + 0,0,0,0,7,12,1,10,1,3,1,14,1,13,3,5, + 2,117,19,0,0,0,95,108,111,99,107,95,117,110,108,111, + 99,107,95,109,111,100,117,108,101,99,1,0,0,0,0,0, + 0,0,3,0,0,0,3,0,0,0,79,0,0,0,115,13, + 0,0,0,124,0,0,124,1,0,124,2,0,142,0,0,83, + 40,1,0,0,0,117,46,1,0,0,114,101,109,111,118,101, + 95,105,109,112,111,114,116,108,105,98,95,102,114,97,109,101, + 115,32,105,110,32,105,109,112,111,114,116,46,99,32,119,105, + 108,108,32,97,108,119,97,121,115,32,114,101,109,111,118,101, + 32,115,101,113,117,101,110,99,101,115,10,32,32,32,32,111, + 102,32,105,109,112,111,114,116,108,105,98,32,102,114,97,109, + 101,115,32,116,104,97,116,32,101,110,100,32,119,105,116,104, + 32,97,32,99,97,108,108,32,116,111,32,116,104,105,115,32, + 102,117,110,99,116,105,111,110,10,10,32,32,32,32,85,115, + 101,32,105,116,32,105,110,115,116,101,97,100,32,111,102,32, + 97,32,110,111,114,109,97,108,32,99,97,108,108,32,105,110, + 32,112,108,97,99,101,115,32,119,104,101,114,101,32,105,110, + 99,108,117,100,105,110,103,32,116,104,101,32,105,109,112,111, + 114,116,108,105,98,10,32,32,32,32,102,114,97,109,101,115, + 32,105,110,116,114,111,100,117,99,101,115,32,117,110,119,97, + 110,116,101,100,32,110,111,105,115,101,32,105,110,116,111,32, + 116,104,101,32,116,114,97,99,101,98,97,99,107,32,40,101, + 46,103,46,32,119,104,101,110,32,101,120,101,99,117,116,105, + 110,103,10,32,32,32,32,109,111,100,117,108,101,32,99,111, + 100,101,41,10,32,32,32,32,40,0,0,0,0,40,3,0, + 0,0,117,1,0,0,0,102,117,4,0,0,0,97,114,103, + 115,117,4,0,0,0,107,119,100,115,40,0,0,0,0,40, + 0,0,0,0,117,29,0,0,0,60,102,114,111,122,101,110, + 32,105,109,112,111,114,116,108,105,98,46,95,98,111,111,116, + 115,116,114,97,112,62,117,25,0,0,0,95,99,97,108,108, + 95,119,105,116,104,95,102,114,97,109,101,115,95,114,101,109, + 111,118,101,100,49,1,0,0,115,2,0,0,0,0,8,117, + 25,0,0,0,95,99,97,108,108,95,119,105,116,104,95,102, + 114,97,109,101,115,95,114,101,109,111,118,101,100,105,158,12, + 0,0,117,1,0,0,0,13,105,16,0,0,0,117,1,0, + 0,0,10,105,24,0,0,0,99,1,0,0,0,0,0,0, + 0,2,0,0,0,3,0,0,0,99,0,0,0,115,29,0, + 0,0,124,0,0,93,19,0,125,1,0,116,0,0,124,1, + 0,63,100,0,0,64,86,1,113,3,0,100,1,0,83,40, + 2,0,0,0,105,255,0,0,0,78,40,1,0,0,0,117, + 17,0,0,0,95,82,65,87,95,77,65,71,73,67,95,78, + 85,77,66,69,82,40,2,0,0,0,117,2,0,0,0,46, + 48,117,1,0,0,0,110,40,0,0,0,0,40,0,0,0, + 0,117,29,0,0,0,60,102,114,111,122,101,110,32,105,109, 112,111,114,116,108,105,98,46,95,98,111,111,116,115,116,114, - 97,112,62,117,11,0,0,0,115,101,116,95,112,97,99,107, - 97,103,101,242,1,0,0,115,6,0,0,0,0,2,18,7, - 13,1,117,11,0,0,0,115,101,116,95,112,97,99,107,97, - 103,101,99,1,0,0,0,0,0,0,0,2,0,0,0,3, - 0,0,0,3,0,0,0,115,35,0,0,0,135,0,0,102, - 1,0,100,1,0,100,2,0,134,0,0,125,1,0,116,0, - 0,124,1,0,136,0,0,131,2,0,1,124,1,0,83,40, - 3,0,0,0,117,38,0,0,0,83,101,116,32,95,95,108, - 111,97,100,101,114,95,95,32,111,110,32,116,104,101,32,114, - 101,116,117,114,110,101,100,32,109,111,100,117,108,101,46,99, - 1,0,0,0,0,0,0,0,4,0,0,0,4,0,0,0, - 31,0,0,0,115,49,0,0,0,136,0,0,124,0,0,124, - 1,0,124,2,0,142,1,0,125,3,0,116,0,0,124,3, - 0,100,1,0,131,2,0,115,45,0,124,0,0,124,3,0, - 95,1,0,110,0,0,124,3,0,83,40,2,0,0,0,78, - 117,10,0,0,0,95,95,108,111,97,100,101,114,95,95,40, - 2,0,0,0,117,7,0,0,0,104,97,115,97,116,116,114, - 117,10,0,0,0,95,95,108,111,97,100,101,114,95,95,40, - 4,0,0,0,117,4,0,0,0,115,101,108,102,117,4,0, + 97,112,62,117,9,0,0,0,60,103,101,110,101,120,112,114, + 62,150,1,0,0,115,2,0,0,0,6,0,117,9,0,0, + 0,60,103,101,110,101,120,112,114,62,105,0,0,0,0,105, + 25,0,0,0,105,8,0,0,0,117,11,0,0,0,95,95, + 112,121,99,97,99,104,101,95,95,117,3,0,0,0,46,112, + 121,117,4,0,0,0,46,112,121,99,117,4,0,0,0,46, + 112,121,111,99,2,0,0,0,0,0,0,0,11,0,0,0, + 6,0,0,0,67,0,0,0,115,180,0,0,0,124,1,0, + 100,5,0,107,8,0,114,25,0,116,1,0,106,2,0,106, + 3,0,12,110,3,0,124,1,0,125,2,0,124,2,0,114, + 46,0,116,4,0,125,3,0,110,6,0,116,5,0,125,3, + 0,116,6,0,124,0,0,131,1,0,92,2,0,125,4,0, + 125,5,0,124,5,0,106,7,0,100,1,0,131,1,0,92, + 3,0,125,6,0,125,7,0,125,8,0,116,1,0,106,8, + 0,106,9,0,125,9,0,124,9,0,100,5,0,107,8,0, + 114,133,0,116,10,0,100,2,0,131,1,0,130,1,0,110, + 0,0,100,3,0,106,11,0,124,6,0,124,7,0,124,9, + 0,124,3,0,100,4,0,25,103,4,0,131,1,0,125,10, + 0,116,12,0,124,4,0,116,13,0,124,10,0,131,3,0, + 83,40,6,0,0,0,117,7,2,0,0,71,105,118,101,110, + 32,116,104,101,32,112,97,116,104,32,116,111,32,97,32,46, + 112,121,32,102,105,108,101,44,32,114,101,116,117,114,110,32, + 116,104,101,32,112,97,116,104,32,116,111,32,105,116,115,32, + 46,112,121,99,47,46,112,121,111,32,102,105,108,101,46,10, + 10,32,32,32,32,84,104,101,32,46,112,121,32,102,105,108, + 101,32,100,111,101,115,32,110,111,116,32,110,101,101,100,32, + 116,111,32,101,120,105,115,116,59,32,116,104,105,115,32,115, + 105,109,112,108,121,32,114,101,116,117,114,110,115,32,116,104, + 101,32,112,97,116,104,32,116,111,32,116,104,101,10,32,32, + 32,32,46,112,121,99,47,46,112,121,111,32,102,105,108,101, + 32,99,97,108,99,117,108,97,116,101,100,32,97,115,32,105, + 102,32,116,104,101,32,46,112,121,32,102,105,108,101,32,119, + 101,114,101,32,105,109,112,111,114,116,101,100,46,32,32,84, + 104,101,32,101,120,116,101,110,115,105,111,110,10,32,32,32, + 32,119,105,108,108,32,98,101,32,46,112,121,99,32,117,110, + 108,101,115,115,32,115,121,115,46,102,108,97,103,115,46,111, + 112,116,105,109,105,122,101,32,105,115,32,110,111,110,45,122, + 101,114,111,44,32,116,104,101,110,32,105,116,32,119,105,108, + 108,32,98,101,32,46,112,121,111,46,10,10,32,32,32,32, + 73,102,32,100,101,98,117,103,95,111,118,101,114,114,105,100, + 101,32,105,115,32,110,111,116,32,78,111,110,101,44,32,116, + 104,101,110,32,105,116,32,109,117,115,116,32,98,101,32,97, + 32,98,111,111,108,101,97,110,32,97,110,100,32,105,115,32, + 116,97,107,101,110,32,97,115,10,32,32,32,32,116,104,101, + 32,118,97,108,117,101,32,111,102,32,98,111,111,108,40,115, + 121,115,46,102,108,97,103,115,46,111,112,116,105,109,105,122, + 101,41,32,105,110,115,116,101,97,100,46,10,10,32,32,32, + 32,73,102,32,115,121,115,46,105,109,112,108,101,109,101,110, + 116,97,116,105,111,110,46,99,97,99,104,101,95,116,97,103, + 32,105,115,32,78,111,110,101,32,116,104,101,110,32,78,111, + 116,73,109,112,108,101,109,101,110,116,101,100,69,114,114,111, + 114,32,105,115,32,114,97,105,115,101,100,46,10,10,32,32, + 32,32,117,1,0,0,0,46,117,36,0,0,0,115,121,115, + 46,105,109,112,108,101,109,101,110,116,97,116,105,111,110,46, + 99,97,99,104,101,95,116,97,103,32,105,115,32,78,111,110, + 101,117,0,0,0,0,105,0,0,0,0,78,40,14,0,0, + 0,117,4,0,0,0,78,111,110,101,117,3,0,0,0,115, + 121,115,117,5,0,0,0,102,108,97,103,115,117,8,0,0, + 0,111,112,116,105,109,105,122,101,117,23,0,0,0,68,69, + 66,85,71,95,66,89,84,69,67,79,68,69,95,83,85,70, + 70,73,88,69,83,117,27,0,0,0,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,117,11,0,0,0,95,112,97,116,104,95, + 115,112,108,105,116,117,9,0,0,0,112,97,114,116,105,116, + 105,111,110,117,14,0,0,0,105,109,112,108,101,109,101,110, + 116,97,116,105,111,110,117,9,0,0,0,99,97,99,104,101, + 95,116,97,103,117,19,0,0,0,78,111,116,73,109,112,108, + 101,109,101,110,116,101,100,69,114,114,111,114,117,4,0,0, + 0,106,111,105,110,117,10,0,0,0,95,112,97,116,104,95, + 106,111,105,110,117,8,0,0,0,95,80,89,67,65,67,72, + 69,40,11,0,0,0,117,4,0,0,0,112,97,116,104,117, + 14,0,0,0,100,101,98,117,103,95,111,118,101,114,114,105, + 100,101,117,5,0,0,0,100,101,98,117,103,117,8,0,0, + 0,115,117,102,102,105,120,101,115,117,4,0,0,0,104,101, + 97,100,117,4,0,0,0,116,97,105,108,117,13,0,0,0, + 98,97,115,101,95,102,105,108,101,110,97,109,101,117,3,0, + 0,0,115,101,112,117,1,0,0,0,95,117,3,0,0,0, + 116,97,103,117,8,0,0,0,102,105,108,101,110,97,109,101, + 40,0,0,0,0,40,0,0,0,0,117,29,0,0,0,60, + 102,114,111,122,101,110,32,105,109,112,111,114,116,108,105,98, + 46,95,98,111,111,116,115,116,114,97,112,62,117,17,0,0, + 0,99,97,99,104,101,95,102,114,111,109,95,115,111,117,114, + 99,101,159,1,0,0,115,22,0,0,0,0,13,31,1,6, + 1,9,2,6,1,18,1,24,1,12,1,12,1,15,1,31, + 1,117,17,0,0,0,99,97,99,104,101,95,102,114,111,109, + 95,115,111,117,114,99,101,99,1,0,0,0,0,0,0,0, + 5,0,0,0,5,0,0,0,67,0,0,0,115,193,0,0, + 0,116,0,0,106,1,0,106,2,0,100,7,0,107,8,0, + 114,33,0,116,4,0,100,1,0,131,1,0,130,1,0,110, + 0,0,116,5,0,124,0,0,131,1,0,92,2,0,125,1, + 0,125,2,0,116,5,0,124,1,0,131,1,0,92,2,0, + 125,1,0,125,3,0,124,3,0,116,6,0,107,3,0,114, + 108,0,116,7,0,100,2,0,106,8,0,116,6,0,124,0, + 0,131,2,0,131,1,0,130,1,0,110,0,0,124,2,0, + 106,9,0,100,3,0,131,1,0,100,4,0,107,3,0,114, + 153,0,116,7,0,100,5,0,106,8,0,124,2,0,131,1, + 0,131,1,0,130,1,0,110,0,0,124,2,0,106,10,0, + 100,3,0,131,1,0,100,6,0,25,125,4,0,116,11,0, + 124,1,0,124,4,0,116,12,0,100,6,0,25,23,131,2, + 0,83,40,8,0,0,0,117,121,1,0,0,71,105,118,101, + 110,32,116,104,101,32,112,97,116,104,32,116,111,32,97,32, + 46,112,121,99,46,47,46,112,121,111,32,102,105,108,101,44, + 32,114,101,116,117,114,110,32,116,104,101,32,112,97,116,104, + 32,116,111,32,105,116,115,32,46,112,121,32,102,105,108,101, + 46,10,10,32,32,32,32,84,104,101,32,46,112,121,99,47, + 46,112,121,111,32,102,105,108,101,32,100,111,101,115,32,110, + 111,116,32,110,101,101,100,32,116,111,32,101,120,105,115,116, + 59,32,116,104,105,115,32,115,105,109,112,108,121,32,114,101, + 116,117,114,110,115,32,116,104,101,32,112,97,116,104,32,116, + 111,10,32,32,32,32,116,104,101,32,46,112,121,32,102,105, + 108,101,32,99,97,108,99,117,108,97,116,101,100,32,116,111, + 32,99,111,114,114,101,115,112,111,110,100,32,116,111,32,116, + 104,101,32,46,112,121,99,47,46,112,121,111,32,102,105,108, + 101,46,32,32,73,102,32,112,97,116,104,32,100,111,101,115, + 10,32,32,32,32,110,111,116,32,99,111,110,102,111,114,109, + 32,116,111,32,80,69,80,32,51,49,52,55,32,102,111,114, + 109,97,116,44,32,86,97,108,117,101,69,114,114,111,114,32, + 119,105,108,108,32,98,101,32,114,97,105,115,101,100,46,32, + 73,102,10,32,32,32,32,115,121,115,46,105,109,112,108,101, + 109,101,110,116,97,116,105,111,110,46,99,97,99,104,101,95, + 116,97,103,32,105,115,32,78,111,110,101,32,116,104,101,110, + 32,78,111,116,73,109,112,108,101,109,101,110,116,101,100,69, + 114,114,111,114,32,105,115,32,114,97,105,115,101,100,46,10, + 10,32,32,32,32,117,36,0,0,0,115,121,115,46,105,109, + 112,108,101,109,101,110,116,97,116,105,111,110,46,99,97,99, + 104,101,95,116,97,103,32,105,115,32,78,111,110,101,117,37, + 0,0,0,123,125,32,110,111,116,32,98,111,116,116,111,109, + 45,108,101,118,101,108,32,100,105,114,101,99,116,111,114,121, + 32,105,110,32,123,33,114,125,117,1,0,0,0,46,105,2, + 0,0,0,117,28,0,0,0,101,120,112,101,99,116,101,100, + 32,111,110,108,121,32,50,32,100,111,116,115,32,105,110,32, + 123,33,114,125,105,0,0,0,0,78,40,13,0,0,0,117, + 3,0,0,0,115,121,115,117,14,0,0,0,105,109,112,108, + 101,109,101,110,116,97,116,105,111,110,117,9,0,0,0,99, + 97,99,104,101,95,116,97,103,117,4,0,0,0,78,111,110, + 101,117,19,0,0,0,78,111,116,73,109,112,108,101,109,101, + 110,116,101,100,69,114,114,111,114,117,11,0,0,0,95,112, + 97,116,104,95,115,112,108,105,116,117,8,0,0,0,95,80, + 89,67,65,67,72,69,117,10,0,0,0,86,97,108,117,101, + 69,114,114,111,114,117,6,0,0,0,102,111,114,109,97,116, + 117,5,0,0,0,99,111,117,110,116,117,9,0,0,0,112, + 97,114,116,105,116,105,111,110,117,10,0,0,0,95,112,97, + 116,104,95,106,111,105,110,117,15,0,0,0,83,79,85,82, + 67,69,95,83,85,70,70,73,88,69,83,40,5,0,0,0, + 117,4,0,0,0,112,97,116,104,117,4,0,0,0,104,101, + 97,100,117,16,0,0,0,112,121,99,97,99,104,101,95,102, + 105,108,101,110,97,109,101,117,7,0,0,0,112,121,99,97, + 99,104,101,117,13,0,0,0,98,97,115,101,95,102,105,108, + 101,110,97,109,101,40,0,0,0,0,40,0,0,0,0,117, + 29,0,0,0,60,102,114,111,122,101,110,32,105,109,112,111, + 114,116,108,105,98,46,95,98,111,111,116,115,116,114,97,112, + 62,117,17,0,0,0,115,111,117,114,99,101,95,102,114,111, + 109,95,99,97,99,104,101,186,1,0,0,115,24,0,0,0, + 0,9,18,1,15,1,18,1,18,1,12,1,9,1,18,1, + 21,1,9,1,15,1,19,1,117,17,0,0,0,115,111,117, + 114,99,101,95,102,114,111,109,95,99,97,99,104,101,99,1, + 0,0,0,0,0,0,0,5,0,0,0,13,0,0,0,67, + 0,0,0,115,164,0,0,0,116,0,0,124,0,0,131,1, + 0,100,1,0,107,2,0,114,22,0,100,6,0,83,124,0, + 0,106,2,0,100,2,0,131,1,0,92,3,0,125,1,0, + 125,2,0,125,3,0,124,1,0,12,115,81,0,124,3,0, + 106,3,0,131,0,0,100,7,0,100,8,0,133,2,0,25, + 100,5,0,107,3,0,114,85,0,124,0,0,83,121,16,0, + 116,4,0,124,0,0,131,1,0,125,4,0,87,110,40,0, + 4,116,5,0,116,6,0,102,2,0,107,10,0,114,143,0, + 1,1,1,116,7,0,100,9,0,100,6,0,133,2,0,25, + 125,4,0,89,110,1,0,88,116,8,0,116,9,0,131,1, + 0,114,160,0,124,4,0,83,124,0,0,83,40,10,0,0, + 0,117,188,0,0,0,67,111,110,118,101,114,116,32,97,32, + 98,121,116,101,99,111,100,101,32,102,105,108,101,32,112,97, + 116,104,32,116,111,32,97,32,115,111,117,114,99,101,32,112, + 97,116,104,32,40,105,102,32,112,111,115,115,105,98,108,101, + 41,46,10,10,32,32,32,32,84,104,105,115,32,102,117,110, + 99,116,105,111,110,32,101,120,105,115,116,115,32,112,117,114, + 101,108,121,32,102,111,114,32,98,97,99,107,119,97,114,100, + 115,45,99,111,109,112,97,116,105,98,105,108,105,116,121,32, + 102,111,114,10,32,32,32,32,80,121,73,109,112,111,114,116, + 95,69,120,101,99,67,111,100,101,77,111,100,117,108,101,87, + 105,116,104,70,105,108,101,110,97,109,101,115,40,41,32,105, + 110,32,116,104,101,32,67,32,65,80,73,46,10,10,32,32, + 32,32,105,0,0,0,0,117,1,0,0,0,46,105,3,0, + 0,0,105,1,0,0,0,117,3,0,0,0,46,112,121,78, + 105,253,255,255,255,105,255,255,255,255,105,255,255,255,255,40, + 10,0,0,0,117,3,0,0,0,108,101,110,117,4,0,0, + 0,78,111,110,101,117,9,0,0,0,114,112,97,114,105,116, + 105,111,110,117,5,0,0,0,108,111,119,101,114,117,17,0, + 0,0,115,111,117,114,99,101,95,102,114,111,109,95,99,97, + 99,104,101,117,19,0,0,0,78,111,116,73,109,112,108,101, + 109,101,110,116,101,100,69,114,114,111,114,117,10,0,0,0, + 86,97,108,117,101,69,114,114,111,114,117,12,0,0,0,98, + 121,116,99,111,100,101,95,112,97,116,104,117,12,0,0,0, + 95,112,97,116,104,95,105,115,102,105,108,101,117,12,0,0, + 0,115,111,117,114,99,101,95,115,116,97,116,115,40,5,0, + 0,0,117,13,0,0,0,98,121,116,101,99,111,100,101,95, + 112,97,116,104,117,4,0,0,0,114,101,115,116,117,1,0, + 0,0,95,117,9,0,0,0,101,120,116,101,110,115,105,111, + 110,117,11,0,0,0,115,111,117,114,99,101,95,112,97,116, + 104,40,0,0,0,0,40,0,0,0,0,117,29,0,0,0, + 60,102,114,111,122,101,110,32,105,109,112,111,114,116,108,105, + 98,46,95,98,111,111,116,115,116,114,97,112,62,117,15,0, + 0,0,95,103,101,116,95,115,111,117,114,99,101,102,105,108, + 101,209,1,0,0,115,20,0,0,0,0,7,18,1,4,1, + 24,1,35,1,4,2,3,1,16,1,19,1,21,2,117,15, + 0,0,0,95,103,101,116,95,115,111,117,114,99,101,102,105, + 108,101,99,1,0,0,0,0,0,0,0,2,0,0,0,4, + 0,0,0,71,0,0,0,115,75,0,0,0,116,0,0,106, + 1,0,106,2,0,114,71,0,124,0,0,106,3,0,100,6, + 0,131,1,0,115,40,0,100,3,0,124,0,0,23,125,0, + 0,110,0,0,116,4,0,124,0,0,106,5,0,124,1,0, + 140,0,0,100,4,0,116,0,0,106,6,0,131,1,1,1, + 110,0,0,100,5,0,83,40,7,0,0,0,117,61,0,0, + 0,80,114,105,110,116,32,116,104,101,32,109,101,115,115,97, + 103,101,32,116,111,32,115,116,100,101,114,114,32,105,102,32, + 45,118,47,80,89,84,72,79,78,86,69,82,66,79,83,69, + 32,105,115,32,116,117,114,110,101,100,32,111,110,46,117,1, + 0,0,0,35,117,7,0,0,0,105,109,112,111,114,116,32, + 117,2,0,0,0,35,32,117,4,0,0,0,102,105,108,101, + 78,40,2,0,0,0,117,1,0,0,0,35,117,7,0,0, + 0,105,109,112,111,114,116,32,40,7,0,0,0,117,3,0, + 0,0,115,121,115,117,5,0,0,0,102,108,97,103,115,117, + 7,0,0,0,118,101,114,98,111,115,101,117,10,0,0,0, + 115,116,97,114,116,115,119,105,116,104,117,5,0,0,0,112, + 114,105,110,116,117,6,0,0,0,102,111,114,109,97,116,117, + 6,0,0,0,115,116,100,101,114,114,40,2,0,0,0,117, + 7,0,0,0,109,101,115,115,97,103,101,117,4,0,0,0, + 97,114,103,115,40,0,0,0,0,40,0,0,0,0,117,29, + 0,0,0,60,102,114,111,122,101,110,32,105,109,112,111,114, + 116,108,105,98,46,95,98,111,111,116,115,116,114,97,112,62, + 117,16,0,0,0,95,118,101,114,98,111,115,101,95,109,101, + 115,115,97,103,101,230,1,0,0,115,8,0,0,0,0,2, + 12,1,15,1,13,1,117,16,0,0,0,95,118,101,114,98, + 111,115,101,95,109,101,115,115,97,103,101,99,1,0,0,0, + 0,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0, + 115,35,0,0,0,135,0,0,102,1,0,100,1,0,100,2, + 0,134,0,0,125,1,0,116,0,0,124,1,0,136,0,0, + 131,2,0,1,124,1,0,83,40,3,0,0,0,117,39,0, + 0,0,83,101,116,32,95,95,112,97,99,107,97,103,101,95, + 95,32,111,110,32,116,104,101,32,114,101,116,117,114,110,101, + 100,32,109,111,100,117,108,101,46,99,0,0,0,0,0,0, + 0,0,3,0,0,0,4,0,0,0,31,0,0,0,115,101, + 0,0,0,136,0,0,124,0,0,124,1,0,142,0,0,125, + 2,0,116,0,0,124,2,0,100,1,0,100,0,0,131,3, + 0,100,0,0,107,8,0,114,97,0,124,2,0,106,2,0, + 124,2,0,95,3,0,116,4,0,124,2,0,100,2,0,131, + 2,0,115,97,0,124,2,0,106,3,0,106,5,0,100,3, + 0,131,1,0,100,4,0,25,124,2,0,95,3,0,113,97, + 0,110,0,0,124,2,0,83,40,5,0,0,0,78,117,11, + 0,0,0,95,95,112,97,99,107,97,103,101,95,95,117,8, + 0,0,0,95,95,112,97,116,104,95,95,117,1,0,0,0, + 46,105,0,0,0,0,40,6,0,0,0,117,7,0,0,0, + 103,101,116,97,116,116,114,117,4,0,0,0,78,111,110,101, + 117,8,0,0,0,95,95,110,97,109,101,95,95,117,11,0, + 0,0,95,95,112,97,99,107,97,103,101,95,95,117,7,0, + 0,0,104,97,115,97,116,116,114,117,10,0,0,0,114,112, + 97,114,116,105,116,105,111,110,40,3,0,0,0,117,4,0, 0,0,97,114,103,115,117,6,0,0,0,107,119,97,114,103, 115,117,6,0,0,0,109,111,100,117,108,101,40,1,0,0, 0,117,3,0,0,0,102,120,110,40,0,0,0,0,117,29, 0,0,0,60,102,114,111,122,101,110,32,105,109,112,111,114, 116,108,105,98,46,95,98,111,111,116,115,116,114,97,112,62, - 117,18,0,0,0,115,101,116,95,108,111,97,100,101,114,95, - 119,114,97,112,112,101,114,1,2,0,0,115,8,0,0,0, - 0,1,18,1,15,1,12,1,117,38,0,0,0,115,101,116, - 95,108,111,97,100,101,114,46,60,108,111,99,97,108,115,62, - 46,115,101,116,95,108,111,97,100,101,114,95,119,114,97,112, - 112,101,114,40,1,0,0,0,117,5,0,0,0,95,119,114, - 97,112,40,2,0,0,0,117,3,0,0,0,102,120,110,117, - 18,0,0,0,115,101,116,95,108,111,97,100,101,114,95,119, - 114,97,112,112,101,114,40,0,0,0,0,40,1,0,0,0, - 117,3,0,0,0,102,120,110,117,29,0,0,0,60,102,114, - 111,122,101,110,32,105,109,112,111,114,116,108,105,98,46,95, - 98,111,111,116,115,116,114,97,112,62,117,10,0,0,0,115, - 101,116,95,108,111,97,100,101,114,255,1,0,0,115,6,0, - 0,0,0,2,18,5,13,1,117,10,0,0,0,115,101,116, - 95,108,111,97,100,101,114,99,1,0,0,0,0,0,0,0, - 2,0,0,0,3,0,0,0,3,0,0,0,115,35,0,0, - 0,135,0,0,102,1,0,100,1,0,100,2,0,134,0,0, - 125,1,0,116,0,0,124,1,0,136,0,0,131,2,0,1, - 124,1,0,83,40,3,0,0,0,117,42,3,0,0,68,101, - 99,111,114,97,116,111,114,32,116,111,32,104,97,110,100,108, - 101,32,115,101,108,101,99,116,105,110,103,32,116,104,101,32, - 112,114,111,112,101,114,32,109,111,100,117,108,101,32,102,111, - 114,32,108,111,97,100,101,114,115,46,10,10,32,32,32,32, - 84,104,101,32,100,101,99,111,114,97,116,101,100,32,102,117, - 110,99,116,105,111,110,32,105,115,32,112,97,115,115,101,100, - 32,116,104,101,32,109,111,100,117,108,101,32,116,111,32,117, - 115,101,32,105,110,115,116,101,97,100,32,111,102,32,116,104, - 101,32,109,111,100,117,108,101,10,32,32,32,32,110,97,109, - 101,46,32,84,104,101,32,109,111,100,117,108,101,32,112,97, - 115,115,101,100,32,105,110,32,116,111,32,116,104,101,32,102, - 117,110,99,116,105,111,110,32,105,115,32,101,105,116,104,101, - 114,32,102,114,111,109,32,115,121,115,46,109,111,100,117,108, - 101,115,32,105,102,10,32,32,32,32,105,116,32,97,108,114, - 101,97,100,121,32,101,120,105,115,116,115,32,111,114,32,105, - 115,32,97,32,110,101,119,32,109,111,100,117,108,101,46,32, - 73,102,32,116,104,101,32,109,111,100,117,108,101,32,105,115, - 32,110,101,119,44,32,116,104,101,110,32,95,95,110,97,109, - 101,95,95,10,32,32,32,32,105,115,32,115,101,116,32,116, - 104,101,32,102,105,114,115,116,32,97,114,103,117,109,101,110, - 116,32,116,111,32,116,104,101,32,109,101,116,104,111,100,44, - 32,95,95,108,111,97,100,101,114,95,95,32,105,115,32,115, - 101,116,32,116,111,32,115,101,108,102,44,32,97,110,100,10, - 32,32,32,32,95,95,112,97,99,107,97,103,101,95,95,32, - 105,115,32,115,101,116,32,97,99,99,111,114,100,105,110,103, - 108,121,32,40,105,102,32,115,101,108,102,46,105,115,95,112, - 97,99,107,97,103,101,40,41,32,105,115,32,100,101,102,105, - 110,101,100,41,32,119,105,108,108,32,98,101,32,115,101,116, - 10,32,32,32,32,98,101,102,111,114,101,32,105,116,32,105, - 115,32,112,97,115,115,101,100,32,116,111,32,116,104,101,32, - 100,101,99,111,114,97,116,101,100,32,102,117,110,99,116,105, - 111,110,32,40,105,102,32,115,101,108,102,46,105,115,95,112, - 97,99,107,97,103,101,40,41,32,100,111,101,115,10,32,32, - 32,32,110,111,116,32,119,111,114,107,32,102,111,114,32,116, - 104,101,32,109,111,100,117,108,101,32,105,116,32,119,105,108, - 108,32,98,101,32,115,101,116,32,112,111,115,116,45,108,111, - 97,100,41,46,10,10,32,32,32,32,73,102,32,97,110,32, - 101,120,99,101,112,116,105,111,110,32,105,115,32,114,97,105, - 115,101,100,32,97,110,100,32,116,104,101,32,100,101,99,111, - 114,97,116,111,114,32,99,114,101,97,116,101,100,32,116,104, - 101,32,109,111,100,117,108,101,32,105,116,32,105,115,10,32, - 32,32,32,115,117,98,115,101,113,117,101,110,116,108,121,32, - 114,101,109,111,118,101,100,32,102,114,111,109,32,115,121,115, - 46,109,111,100,117,108,101,115,46,10,10,32,32,32,32,84, - 104,101,32,100,101,99,111,114,97,116,111,114,32,97,115,115, - 117,109,101,115,32,116,104,97,116,32,116,104,101,32,100,101, - 99,111,114,97,116,101,100,32,102,117,110,99,116,105,111,110, - 32,116,97,107,101,115,32,116,104,101,32,109,111,100,117,108, - 101,32,110,97,109,101,32,97,115,10,32,32,32,32,116,104, - 101,32,115,101,99,111,110,100,32,97,114,103,117,109,101,110, - 116,46,10,10,32,32,32,32,99,2,0,0,0,0,0,0, - 0,7,0,0,0,25,0,0,0,31,0,0,0,115,254,0, - 0,0,116,0,0,106,1,0,106,2,0,124,1,0,131,1, - 0,125,4,0,124,4,0,100,0,0,107,9,0,125,5,0, - 124,5,0,115,168,0,116,4,0,124,1,0,131,1,0,125, - 4,0,100,3,0,124,4,0,95,6,0,124,4,0,116,0, - 0,106,1,0,124,1,0,60,124,0,0,124,4,0,95,7, - 0,121,19,0,124,0,0,106,8,0,124,1,0,131,1,0, - 125,6,0,87,110,24,0,4,116,9,0,116,10,0,102,2, - 0,107,10,0,114,124,0,1,1,1,89,113,177,0,88,124, - 6,0,114,143,0,124,1,0,124,4,0,95,11,0,113,177, - 0,124,1,0,106,12,0,100,1,0,131,1,0,100,2,0, - 25,124,4,0,95,11,0,110,9,0,100,3,0,124,4,0, - 95,6,0,122,60,0,121,23,0,136,0,0,124,0,0,124, - 4,0,124,2,0,124,3,0,142,2,0,83,87,110,30,0, - 1,1,1,124,5,0,115,228,0,116,0,0,106,1,0,124, - 1,0,61,110,0,0,130,0,0,89,110,1,0,88,87,100, - 0,0,100,4,0,124,4,0,95,6,0,88,100,0,0,83, - 40,5,0,0,0,78,117,1,0,0,0,46,105,0,0,0, - 0,84,70,40,14,0,0,0,117,3,0,0,0,115,121,115, - 117,7,0,0,0,109,111,100,117,108,101,115,117,3,0,0, - 0,103,101,116,117,4,0,0,0,78,111,110,101,117,10,0, - 0,0,110,101,119,95,109,111,100,117,108,101,117,4,0,0, - 0,84,114,117,101,117,16,0,0,0,95,95,105,110,105,116, - 105,97,108,105,122,105,110,103,95,95,117,10,0,0,0,95, - 95,108,111,97,100,101,114,95,95,117,10,0,0,0,105,115, - 95,112,97,99,107,97,103,101,117,11,0,0,0,73,109,112, - 111,114,116,69,114,114,111,114,117,14,0,0,0,65,116,116, - 114,105,98,117,116,101,69,114,114,111,114,117,11,0,0,0, - 95,95,112,97,99,107,97,103,101,95,95,117,10,0,0,0, - 114,112,97,114,116,105,116,105,111,110,117,5,0,0,0,70, - 97,108,115,101,40,7,0,0,0,117,4,0,0,0,115,101, - 108,102,117,8,0,0,0,102,117,108,108,110,97,109,101,117, - 4,0,0,0,97,114,103,115,117,6,0,0,0,107,119,97, - 114,103,115,117,6,0,0,0,109,111,100,117,108,101,117,9, - 0,0,0,105,115,95,114,101,108,111,97,100,117,10,0,0, - 0,105,115,95,112,97,99,107,97,103,101,40,1,0,0,0, + 117,19,0,0,0,115,101,116,95,112,97,99,107,97,103,101, + 95,119,114,97,112,112,101,114,240,1,0,0,115,12,0,0, + 0,0,1,15,1,24,1,12,1,15,1,31,1,117,40,0, + 0,0,115,101,116,95,112,97,99,107,97,103,101,46,60,108, + 111,99,97,108,115,62,46,115,101,116,95,112,97,99,107,97, + 103,101,95,119,114,97,112,112,101,114,40,1,0,0,0,117, + 5,0,0,0,95,119,114,97,112,40,2,0,0,0,117,3, + 0,0,0,102,120,110,117,19,0,0,0,115,101,116,95,112, + 97,99,107,97,103,101,95,119,114,97,112,112,101,114,40,0, + 0,0,0,40,1,0,0,0,117,3,0,0,0,102,120,110, + 117,29,0,0,0,60,102,114,111,122,101,110,32,105,109,112, + 111,114,116,108,105,98,46,95,98,111,111,116,115,116,114,97, + 112,62,117,11,0,0,0,115,101,116,95,112,97,99,107,97, + 103,101,238,1,0,0,115,6,0,0,0,0,2,18,7,13, + 1,117,11,0,0,0,115,101,116,95,112,97,99,107,97,103, + 101,99,1,0,0,0,0,0,0,0,2,0,0,0,3,0, + 0,0,3,0,0,0,115,35,0,0,0,135,0,0,102,1, + 0,100,1,0,100,2,0,134,0,0,125,1,0,116,0,0, + 124,1,0,136,0,0,131,2,0,1,124,1,0,83,40,3, + 0,0,0,117,38,0,0,0,83,101,116,32,95,95,108,111, + 97,100,101,114,95,95,32,111,110,32,116,104,101,32,114,101, + 116,117,114,110,101,100,32,109,111,100,117,108,101,46,99,1, + 0,0,0,0,0,0,0,4,0,0,0,4,0,0,0,31, + 0,0,0,115,49,0,0,0,136,0,0,124,0,0,124,1, + 0,124,2,0,142,1,0,125,3,0,116,0,0,124,3,0, + 100,1,0,131,2,0,115,45,0,124,0,0,124,3,0,95, + 1,0,110,0,0,124,3,0,83,40,2,0,0,0,78,117, + 10,0,0,0,95,95,108,111,97,100,101,114,95,95,40,2, + 0,0,0,117,7,0,0,0,104,97,115,97,116,116,114,117, + 10,0,0,0,95,95,108,111,97,100,101,114,95,95,40,4, + 0,0,0,117,4,0,0,0,115,101,108,102,117,4,0,0, + 0,97,114,103,115,117,6,0,0,0,107,119,97,114,103,115, + 117,6,0,0,0,109,111,100,117,108,101,40,1,0,0,0, 117,3,0,0,0,102,120,110,40,0,0,0,0,117,29,0, 0,0,60,102,114,111,122,101,110,32,105,109,112,111,114,116, 108,105,98,46,95,98,111,111,116,115,116,114,97,112,62,117, - 25,0,0,0,109,111,100,117,108,101,95,102,111,114,95,108, - 111,97,100,101,114,95,119,114,97,112,112,101,114,28,2,0, - 0,115,44,0,0,0,0,1,18,1,12,1,6,4,12,3, - 9,1,13,1,9,1,3,1,19,1,19,1,5,2,6,1, - 12,2,25,2,9,1,6,2,23,1,3,1,6,1,13,1, - 12,2,117,52,0,0,0,109,111,100,117,108,101,95,102,111, - 114,95,108,111,97,100,101,114,46,60,108,111,99,97,108,115, - 62,46,109,111,100,117,108,101,95,102,111,114,95,108,111,97, - 100,101,114,95,119,114,97,112,112,101,114,40,1,0,0,0, - 117,5,0,0,0,95,119,114,97,112,40,2,0,0,0,117, - 3,0,0,0,102,120,110,117,25,0,0,0,109,111,100,117, - 108,101,95,102,111,114,95,108,111,97,100,101,114,95,119,114, + 18,0,0,0,115,101,116,95,108,111,97,100,101,114,95,119, + 114,97,112,112,101,114,253,1,0,0,115,8,0,0,0,0, + 1,18,1,15,1,12,1,117,38,0,0,0,115,101,116,95, + 108,111,97,100,101,114,46,60,108,111,99,97,108,115,62,46, + 115,101,116,95,108,111,97,100,101,114,95,119,114,97,112,112, + 101,114,40,1,0,0,0,117,5,0,0,0,95,119,114,97, + 112,40,2,0,0,0,117,3,0,0,0,102,120,110,117,18, + 0,0,0,115,101,116,95,108,111,97,100,101,114,95,119,114, 97,112,112,101,114,40,0,0,0,0,40,1,0,0,0,117, 3,0,0,0,102,120,110,117,29,0,0,0,60,102,114,111, 122,101,110,32,105,109,112,111,114,116,108,105,98,46,95,98, - 111,111,116,115,116,114,97,112,62,117,17,0,0,0,109,111, - 100,117,108,101,95,102,111,114,95,108,111,97,100,101,114,10, - 2,0,0,115,6,0,0,0,0,18,18,33,13,1,117,17, - 0,0,0,109,111,100,117,108,101,95,102,111,114,95,108,111, - 97,100,101,114,99,1,0,0,0,0,0,0,0,2,0,0, - 0,4,0,0,0,3,0,0,0,115,38,0,0,0,100,3, - 0,135,0,0,102,1,0,100,1,0,100,2,0,134,1,0, - 125,1,0,116,1,0,124,1,0,136,0,0,131,2,0,1, - 124,1,0,83,40,4,0,0,0,117,252,0,0,0,68,101, - 99,111,114,97,116,111,114,32,116,111,32,118,101,114,105,102, - 121,32,116,104,97,116,32,116,104,101,32,109,111,100,117,108, - 101,32,98,101,105,110,103,32,114,101,113,117,101,115,116,101, - 100,32,109,97,116,99,104,101,115,32,116,104,101,32,111,110, - 101,32,116,104,101,10,32,32,32,32,108,111,97,100,101,114, - 32,99,97,110,32,104,97,110,100,108,101,46,10,10,32,32, - 32,32,84,104,101,32,102,105,114,115,116,32,97,114,103,117, - 109,101,110,116,32,40,115,101,108,102,41,32,109,117,115,116, - 32,100,101,102,105,110,101,32,95,110,97,109,101,32,119,104, - 105,99,104,32,116,104,101,32,115,101,99,111,110,100,32,97, - 114,103,117,109,101,110,116,32,105,115,10,32,32,32,32,99, - 111,109,112,97,114,101,100,32,97,103,97,105,110,115,116,46, - 32,73,102,32,116,104,101,32,99,111,109,112,97,114,105,115, - 111,110,32,102,97,105,108,115,32,116,104,101,110,32,73,109, - 112,111,114,116,69,114,114,111,114,32,105,115,32,114,97,105, - 115,101,100,46,10,10,32,32,32,32,99,2,0,0,0,0, - 0,0,0,4,0,0,0,5,0,0,0,31,0,0,0,115, - 83,0,0,0,124,1,0,100,0,0,107,8,0,114,24,0, - 124,0,0,106,1,0,125,1,0,110,40,0,124,0,0,106, - 1,0,124,1,0,107,3,0,114,64,0,116,2,0,100,1, - 0,124,1,0,22,100,2,0,124,1,0,131,1,1,130,1, - 0,110,0,0,136,0,0,124,0,0,124,1,0,124,2,0, - 124,3,0,142,2,0,83,40,3,0,0,0,78,117,23,0, - 0,0,108,111,97,100,101,114,32,99,97,110,110,111,116,32, - 104,97,110,100,108,101,32,37,115,117,4,0,0,0,110,97, - 109,101,40,3,0,0,0,117,4,0,0,0,78,111,110,101, - 117,4,0,0,0,110,97,109,101,117,11,0,0,0,73,109, - 112,111,114,116,69,114,114,111,114,40,4,0,0,0,117,4, - 0,0,0,115,101,108,102,117,4,0,0,0,110,97,109,101, - 117,4,0,0,0,97,114,103,115,117,6,0,0,0,107,119, - 97,114,103,115,40,1,0,0,0,117,6,0,0,0,109,101, - 116,104,111,100,40,0,0,0,0,117,29,0,0,0,60,102, - 114,111,122,101,110,32,105,109,112,111,114,116,108,105,98,46, - 95,98,111,111,116,115,116,114,97,112,62,117,19,0,0,0, - 95,99,104,101,99,107,95,110,97,109,101,95,119,114,97,112, - 112,101,114,73,2,0,0,115,10,0,0,0,0,1,12,1, - 12,1,15,1,25,1,117,40,0,0,0,95,99,104,101,99, - 107,95,110,97,109,101,46,60,108,111,99,97,108,115,62,46, - 95,99,104,101,99,107,95,110,97,109,101,95,119,114,97,112, - 112,101,114,78,40,2,0,0,0,117,4,0,0,0,78,111, - 110,101,117,5,0,0,0,95,119,114,97,112,40,2,0,0, - 0,117,6,0,0,0,109,101,116,104,111,100,117,19,0,0, - 0,95,99,104,101,99,107,95,110,97,109,101,95,119,114,97, - 112,112,101,114,40,0,0,0,0,40,1,0,0,0,117,6, - 0,0,0,109,101,116,104,111,100,117,29,0,0,0,60,102, - 114,111,122,101,110,32,105,109,112,111,114,116,108,105,98,46, - 95,98,111,111,116,115,116,114,97,112,62,117,11,0,0,0, - 95,99,104,101,99,107,95,110,97,109,101,65,2,0,0,115, - 6,0,0,0,0,8,21,6,13,1,117,11,0,0,0,95, - 99,104,101,99,107,95,110,97,109,101,99,1,0,0,0,0, - 0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,115, - 35,0,0,0,135,0,0,102,1,0,100,1,0,100,2,0, - 134,0,0,125,1,0,116,0,0,124,1,0,136,0,0,131, - 2,0,1,124,1,0,83,40,3,0,0,0,117,49,0,0, - 0,68,101,99,111,114,97,116,111,114,32,116,111,32,118,101, - 114,105,102,121,32,116,104,101,32,110,97,109,101,100,32,109, - 111,100,117,108,101,32,105,115,32,98,117,105,108,116,45,105, - 110,46,99,2,0,0,0,0,0,0,0,2,0,0,0,4, - 0,0,0,19,0,0,0,115,58,0,0,0,124,1,0,116, - 0,0,106,1,0,107,7,0,114,45,0,116,2,0,100,1, - 0,106,3,0,124,1,0,131,1,0,100,2,0,124,1,0, - 131,1,1,130,1,0,110,0,0,136,0,0,124,0,0,124, - 1,0,131,2,0,83,40,3,0,0,0,78,117,27,0,0, - 0,123,125,32,105,115,32,110,111,116,32,97,32,98,117,105, - 108,116,45,105,110,32,109,111,100,117,108,101,117,4,0,0, - 0,110,97,109,101,40,4,0,0,0,117,3,0,0,0,115, - 121,115,117,20,0,0,0,98,117,105,108,116,105,110,95,109, - 111,100,117,108,101,95,110,97,109,101,115,117,11,0,0,0, - 73,109,112,111,114,116,69,114,114,111,114,117,6,0,0,0, - 102,111,114,109,97,116,40,2,0,0,0,117,4,0,0,0, - 115,101,108,102,117,8,0,0,0,102,117,108,108,110,97,109, - 101,40,1,0,0,0,117,3,0,0,0,102,120,110,40,0, - 0,0,0,117,29,0,0,0,60,102,114,111,122,101,110,32, - 105,109,112,111,114,116,108,105,98,46,95,98,111,111,116,115, - 116,114,97,112,62,117,25,0,0,0,95,114,101,113,117,105, - 114,101,115,95,98,117,105,108,116,105,110,95,119,114,97,112, - 112,101,114,85,2,0,0,115,8,0,0,0,0,1,15,1, - 18,1,12,1,117,52,0,0,0,95,114,101,113,117,105,114, - 101,115,95,98,117,105,108,116,105,110,46,60,108,111,99,97, - 108,115,62,46,95,114,101,113,117,105,114,101,115,95,98,117, - 105,108,116,105,110,95,119,114,97,112,112,101,114,40,1,0, - 0,0,117,5,0,0,0,95,119,114,97,112,40,2,0,0, - 0,117,3,0,0,0,102,120,110,117,25,0,0,0,95,114, - 101,113,117,105,114,101,115,95,98,117,105,108,116,105,110,95, - 119,114,97,112,112,101,114,40,0,0,0,0,40,1,0,0, - 0,117,3,0,0,0,102,120,110,117,29,0,0,0,60,102, - 114,111,122,101,110,32,105,109,112,111,114,116,108,105,98,46, - 95,98,111,111,116,115,116,114,97,112,62,117,17,0,0,0, - 95,114,101,113,117,105,114,101,115,95,98,117,105,108,116,105, - 110,83,2,0,0,115,6,0,0,0,0,2,18,5,13,1, - 117,17,0,0,0,95,114,101,113,117,105,114,101,115,95,98, - 117,105,108,116,105,110,99,1,0,0,0,0,0,0,0,2, + 111,111,116,115,116,114,97,112,62,117,10,0,0,0,115,101, + 116,95,108,111,97,100,101,114,251,1,0,0,115,6,0,0, + 0,0,2,18,5,13,1,117,10,0,0,0,115,101,116,95, + 108,111,97,100,101,114,99,1,0,0,0,0,0,0,0,2, 0,0,0,3,0,0,0,3,0,0,0,115,35,0,0,0, 135,0,0,102,1,0,100,1,0,100,2,0,134,0,0,125, 1,0,116,0,0,124,1,0,136,0,0,131,2,0,1,124, - 1,0,83,40,3,0,0,0,117,47,0,0,0,68,101,99, + 1,0,83,40,3,0,0,0,117,42,3,0,0,68,101,99, + 111,114,97,116,111,114,32,116,111,32,104,97,110,100,108,101, + 32,115,101,108,101,99,116,105,110,103,32,116,104,101,32,112, + 114,111,112,101,114,32,109,111,100,117,108,101,32,102,111,114, + 32,108,111,97,100,101,114,115,46,10,10,32,32,32,32,84, + 104,101,32,100,101,99,111,114,97,116,101,100,32,102,117,110, + 99,116,105,111,110,32,105,115,32,112,97,115,115,101,100,32, + 116,104,101,32,109,111,100,117,108,101,32,116,111,32,117,115, + 101,32,105,110,115,116,101,97,100,32,111,102,32,116,104,101, + 32,109,111,100,117,108,101,10,32,32,32,32,110,97,109,101, + 46,32,84,104,101,32,109,111,100,117,108,101,32,112,97,115, + 115,101,100,32,105,110,32,116,111,32,116,104,101,32,102,117, + 110,99,116,105,111,110,32,105,115,32,101,105,116,104,101,114, + 32,102,114,111,109,32,115,121,115,46,109,111,100,117,108,101, + 115,32,105,102,10,32,32,32,32,105,116,32,97,108,114,101, + 97,100,121,32,101,120,105,115,116,115,32,111,114,32,105,115, + 32,97,32,110,101,119,32,109,111,100,117,108,101,46,32,73, + 102,32,116,104,101,32,109,111,100,117,108,101,32,105,115,32, + 110,101,119,44,32,116,104,101,110,32,95,95,110,97,109,101, + 95,95,10,32,32,32,32,105,115,32,115,101,116,32,116,104, + 101,32,102,105,114,115,116,32,97,114,103,117,109,101,110,116, + 32,116,111,32,116,104,101,32,109,101,116,104,111,100,44,32, + 95,95,108,111,97,100,101,114,95,95,32,105,115,32,115,101, + 116,32,116,111,32,115,101,108,102,44,32,97,110,100,10,32, + 32,32,32,95,95,112,97,99,107,97,103,101,95,95,32,105, + 115,32,115,101,116,32,97,99,99,111,114,100,105,110,103,108, + 121,32,40,105,102,32,115,101,108,102,46,105,115,95,112,97, + 99,107,97,103,101,40,41,32,105,115,32,100,101,102,105,110, + 101,100,41,32,119,105,108,108,32,98,101,32,115,101,116,10, + 32,32,32,32,98,101,102,111,114,101,32,105,116,32,105,115, + 32,112,97,115,115,101,100,32,116,111,32,116,104,101,32,100, + 101,99,111,114,97,116,101,100,32,102,117,110,99,116,105,111, + 110,32,40,105,102,32,115,101,108,102,46,105,115,95,112,97, + 99,107,97,103,101,40,41,32,100,111,101,115,10,32,32,32, + 32,110,111,116,32,119,111,114,107,32,102,111,114,32,116,104, + 101,32,109,111,100,117,108,101,32,105,116,32,119,105,108,108, + 32,98,101,32,115,101,116,32,112,111,115,116,45,108,111,97, + 100,41,46,10,10,32,32,32,32,73,102,32,97,110,32,101, + 120,99,101,112,116,105,111,110,32,105,115,32,114,97,105,115, + 101,100,32,97,110,100,32,116,104,101,32,100,101,99,111,114, + 97,116,111,114,32,99,114,101,97,116,101,100,32,116,104,101, + 32,109,111,100,117,108,101,32,105,116,32,105,115,10,32,32, + 32,32,115,117,98,115,101,113,117,101,110,116,108,121,32,114, + 101,109,111,118,101,100,32,102,114,111,109,32,115,121,115,46, + 109,111,100,117,108,101,115,46,10,10,32,32,32,32,84,104, + 101,32,100,101,99,111,114,97,116,111,114,32,97,115,115,117, + 109,101,115,32,116,104,97,116,32,116,104,101,32,100,101,99, + 111,114,97,116,101,100,32,102,117,110,99,116,105,111,110,32, + 116,97,107,101,115,32,116,104,101,32,109,111,100,117,108,101, + 32,110,97,109,101,32,97,115,10,32,32,32,32,116,104,101, + 32,115,101,99,111,110,100,32,97,114,103,117,109,101,110,116, + 46,10,10,32,32,32,32,99,2,0,0,0,0,0,0,0, + 7,0,0,0,25,0,0,0,31,0,0,0,115,254,0,0, + 0,116,0,0,106,1,0,106,2,0,124,1,0,131,1,0, + 125,4,0,124,4,0,100,0,0,107,9,0,125,5,0,124, + 5,0,115,168,0,116,4,0,124,1,0,131,1,0,125,4, + 0,100,3,0,124,4,0,95,6,0,124,4,0,116,0,0, + 106,1,0,124,1,0,60,124,0,0,124,4,0,95,7,0, + 121,19,0,124,0,0,106,8,0,124,1,0,131,1,0,125, + 6,0,87,110,24,0,4,116,9,0,116,10,0,102,2,0, + 107,10,0,114,124,0,1,1,1,89,113,177,0,88,124,6, + 0,114,143,0,124,1,0,124,4,0,95,11,0,113,177,0, + 124,1,0,106,12,0,100,1,0,131,1,0,100,2,0,25, + 124,4,0,95,11,0,110,9,0,100,3,0,124,4,0,95, + 6,0,122,60,0,121,23,0,136,0,0,124,0,0,124,4, + 0,124,2,0,124,3,0,142,2,0,83,87,110,30,0,1, + 1,1,124,5,0,115,228,0,116,0,0,106,1,0,124,1, + 0,61,110,0,0,130,0,0,89,110,1,0,88,87,100,0, + 0,100,4,0,124,4,0,95,6,0,88,100,0,0,83,40, + 5,0,0,0,78,117,1,0,0,0,46,105,0,0,0,0, + 84,70,40,14,0,0,0,117,3,0,0,0,115,121,115,117, + 7,0,0,0,109,111,100,117,108,101,115,117,3,0,0,0, + 103,101,116,117,4,0,0,0,78,111,110,101,117,10,0,0, + 0,110,101,119,95,109,111,100,117,108,101,117,4,0,0,0, + 84,114,117,101,117,16,0,0,0,95,95,105,110,105,116,105, + 97,108,105,122,105,110,103,95,95,117,10,0,0,0,95,95, + 108,111,97,100,101,114,95,95,117,10,0,0,0,105,115,95, + 112,97,99,107,97,103,101,117,11,0,0,0,73,109,112,111, + 114,116,69,114,114,111,114,117,14,0,0,0,65,116,116,114, + 105,98,117,116,101,69,114,114,111,114,117,11,0,0,0,95, + 95,112,97,99,107,97,103,101,95,95,117,10,0,0,0,114, + 112,97,114,116,105,116,105,111,110,117,5,0,0,0,70,97, + 108,115,101,40,7,0,0,0,117,4,0,0,0,115,101,108, + 102,117,8,0,0,0,102,117,108,108,110,97,109,101,117,4, + 0,0,0,97,114,103,115,117,6,0,0,0,107,119,97,114, + 103,115,117,6,0,0,0,109,111,100,117,108,101,117,9,0, + 0,0,105,115,95,114,101,108,111,97,100,117,10,0,0,0, + 105,115,95,112,97,99,107,97,103,101,40,1,0,0,0,117, + 3,0,0,0,102,120,110,40,0,0,0,0,117,29,0,0, + 0,60,102,114,111,122,101,110,32,105,109,112,111,114,116,108, + 105,98,46,95,98,111,111,116,115,116,114,97,112,62,117,25, + 0,0,0,109,111,100,117,108,101,95,102,111,114,95,108,111, + 97,100,101,114,95,119,114,97,112,112,101,114,24,2,0,0, + 115,44,0,0,0,0,1,18,1,12,1,6,4,12,3,9, + 1,13,1,9,1,3,1,19,1,19,1,5,2,6,1,12, + 2,25,2,9,1,6,2,23,1,3,1,6,1,13,1,12, + 2,117,52,0,0,0,109,111,100,117,108,101,95,102,111,114, + 95,108,111,97,100,101,114,46,60,108,111,99,97,108,115,62, + 46,109,111,100,117,108,101,95,102,111,114,95,108,111,97,100, + 101,114,95,119,114,97,112,112,101,114,40,1,0,0,0,117, + 5,0,0,0,95,119,114,97,112,40,2,0,0,0,117,3, + 0,0,0,102,120,110,117,25,0,0,0,109,111,100,117,108, + 101,95,102,111,114,95,108,111,97,100,101,114,95,119,114,97, + 112,112,101,114,40,0,0,0,0,40,1,0,0,0,117,3, + 0,0,0,102,120,110,117,29,0,0,0,60,102,114,111,122, + 101,110,32,105,109,112,111,114,116,108,105,98,46,95,98,111, + 111,116,115,116,114,97,112,62,117,17,0,0,0,109,111,100, + 117,108,101,95,102,111,114,95,108,111,97,100,101,114,6,2, + 0,0,115,6,0,0,0,0,18,18,33,13,1,117,17,0, + 0,0,109,111,100,117,108,101,95,102,111,114,95,108,111,97, + 100,101,114,99,1,0,0,0,0,0,0,0,2,0,0,0, + 4,0,0,0,3,0,0,0,115,38,0,0,0,100,3,0, + 135,0,0,102,1,0,100,1,0,100,2,0,134,1,0,125, + 1,0,116,1,0,124,1,0,136,0,0,131,2,0,1,124, + 1,0,83,40,4,0,0,0,117,252,0,0,0,68,101,99, 111,114,97,116,111,114,32,116,111,32,118,101,114,105,102,121, - 32,116,104,101,32,110,97,109,101,100,32,109,111,100,117,108, - 101,32,105,115,32,102,114,111,122,101,110,46,99,2,0,0, - 0,0,0,0,0,2,0,0,0,4,0,0,0,19,0,0, - 0,115,58,0,0,0,116,0,0,106,1,0,124,1,0,131, - 1,0,115,45,0,116,2,0,100,1,0,106,3,0,124,1, - 0,131,1,0,100,2,0,124,1,0,131,1,1,130,1,0, - 110,0,0,136,0,0,124,0,0,124,1,0,131,2,0,83, - 40,3,0,0,0,78,117,25,0,0,0,123,125,32,105,115, - 32,110,111,116,32,97,32,102,114,111,122,101,110,32,109,111, - 100,117,108,101,117,4,0,0,0,110,97,109,101,40,4,0, - 0,0,117,4,0,0,0,95,105,109,112,117,9,0,0,0, - 105,115,95,102,114,111,122,101,110,117,11,0,0,0,73,109, - 112,111,114,116,69,114,114,111,114,117,6,0,0,0,102,111, - 114,109,97,116,40,2,0,0,0,117,4,0,0,0,115,101, - 108,102,117,8,0,0,0,102,117,108,108,110,97,109,101,40, - 1,0,0,0,117,3,0,0,0,102,120,110,40,0,0,0, - 0,117,29,0,0,0,60,102,114,111,122,101,110,32,105,109, - 112,111,114,116,108,105,98,46,95,98,111,111,116,115,116,114, - 97,112,62,117,24,0,0,0,95,114,101,113,117,105,114,101, + 32,116,104,97,116,32,116,104,101,32,109,111,100,117,108,101, + 32,98,101,105,110,103,32,114,101,113,117,101,115,116,101,100, + 32,109,97,116,99,104,101,115,32,116,104,101,32,111,110,101, + 32,116,104,101,10,32,32,32,32,108,111,97,100,101,114,32, + 99,97,110,32,104,97,110,100,108,101,46,10,10,32,32,32, + 32,84,104,101,32,102,105,114,115,116,32,97,114,103,117,109, + 101,110,116,32,40,115,101,108,102,41,32,109,117,115,116,32, + 100,101,102,105,110,101,32,95,110,97,109,101,32,119,104,105, + 99,104,32,116,104,101,32,115,101,99,111,110,100,32,97,114, + 103,117,109,101,110,116,32,105,115,10,32,32,32,32,99,111, + 109,112,97,114,101,100,32,97,103,97,105,110,115,116,46,32, + 73,102,32,116,104,101,32,99,111,109,112,97,114,105,115,111, + 110,32,102,97,105,108,115,32,116,104,101,110,32,73,109,112, + 111,114,116,69,114,114,111,114,32,105,115,32,114,97,105,115, + 101,100,46,10,10,32,32,32,32,99,2,0,0,0,0,0, + 0,0,4,0,0,0,5,0,0,0,31,0,0,0,115,83, + 0,0,0,124,1,0,100,0,0,107,8,0,114,24,0,124, + 0,0,106,1,0,125,1,0,110,40,0,124,0,0,106,1, + 0,124,1,0,107,3,0,114,64,0,116,2,0,100,1,0, + 124,1,0,22,100,2,0,124,1,0,131,1,1,130,1,0, + 110,0,0,136,0,0,124,0,0,124,1,0,124,2,0,124, + 3,0,142,2,0,83,40,3,0,0,0,78,117,23,0,0, + 0,108,111,97,100,101,114,32,99,97,110,110,111,116,32,104, + 97,110,100,108,101,32,37,115,117,4,0,0,0,110,97,109, + 101,40,3,0,0,0,117,4,0,0,0,78,111,110,101,117, + 4,0,0,0,110,97,109,101,117,11,0,0,0,73,109,112, + 111,114,116,69,114,114,111,114,40,4,0,0,0,117,4,0, + 0,0,115,101,108,102,117,4,0,0,0,110,97,109,101,117, + 4,0,0,0,97,114,103,115,117,6,0,0,0,107,119,97, + 114,103,115,40,1,0,0,0,117,6,0,0,0,109,101,116, + 104,111,100,40,0,0,0,0,117,29,0,0,0,60,102,114, + 111,122,101,110,32,105,109,112,111,114,116,108,105,98,46,95, + 98,111,111,116,115,116,114,97,112,62,117,19,0,0,0,95, + 99,104,101,99,107,95,110,97,109,101,95,119,114,97,112,112, + 101,114,69,2,0,0,115,10,0,0,0,0,1,12,1,12, + 1,15,1,25,1,117,40,0,0,0,95,99,104,101,99,107, + 95,110,97,109,101,46,60,108,111,99,97,108,115,62,46,95, + 99,104,101,99,107,95,110,97,109,101,95,119,114,97,112,112, + 101,114,78,40,2,0,0,0,117,4,0,0,0,78,111,110, + 101,117,5,0,0,0,95,119,114,97,112,40,2,0,0,0, + 117,6,0,0,0,109,101,116,104,111,100,117,19,0,0,0, + 95,99,104,101,99,107,95,110,97,109,101,95,119,114,97,112, + 112,101,114,40,0,0,0,0,40,1,0,0,0,117,6,0, + 0,0,109,101,116,104,111,100,117,29,0,0,0,60,102,114, + 111,122,101,110,32,105,109,112,111,114,116,108,105,98,46,95, + 98,111,111,116,115,116,114,97,112,62,117,11,0,0,0,95, + 99,104,101,99,107,95,110,97,109,101,61,2,0,0,115,6, + 0,0,0,0,8,21,6,13,1,117,11,0,0,0,95,99, + 104,101,99,107,95,110,97,109,101,99,1,0,0,0,0,0, + 0,0,2,0,0,0,3,0,0,0,3,0,0,0,115,35, + 0,0,0,135,0,0,102,1,0,100,1,0,100,2,0,134, + 0,0,125,1,0,116,0,0,124,1,0,136,0,0,131,2, + 0,1,124,1,0,83,40,3,0,0,0,117,49,0,0,0, + 68,101,99,111,114,97,116,111,114,32,116,111,32,118,101,114, + 105,102,121,32,116,104,101,32,110,97,109,101,100,32,109,111, + 100,117,108,101,32,105,115,32,98,117,105,108,116,45,105,110, + 46,99,2,0,0,0,0,0,0,0,2,0,0,0,4,0, + 0,0,19,0,0,0,115,58,0,0,0,124,1,0,116,0, + 0,106,1,0,107,7,0,114,45,0,116,2,0,100,1,0, + 106,3,0,124,1,0,131,1,0,100,2,0,124,1,0,131, + 1,1,130,1,0,110,0,0,136,0,0,124,0,0,124,1, + 0,131,2,0,83,40,3,0,0,0,78,117,27,0,0,0, + 123,125,32,105,115,32,110,111,116,32,97,32,98,117,105,108, + 116,45,105,110,32,109,111,100,117,108,101,117,4,0,0,0, + 110,97,109,101,40,4,0,0,0,117,3,0,0,0,115,121, + 115,117,20,0,0,0,98,117,105,108,116,105,110,95,109,111, + 100,117,108,101,95,110,97,109,101,115,117,11,0,0,0,73, + 109,112,111,114,116,69,114,114,111,114,117,6,0,0,0,102, + 111,114,109,97,116,40,2,0,0,0,117,4,0,0,0,115, + 101,108,102,117,8,0,0,0,102,117,108,108,110,97,109,101, + 40,1,0,0,0,117,3,0,0,0,102,120,110,40,0,0, + 0,0,117,29,0,0,0,60,102,114,111,122,101,110,32,105, + 109,112,111,114,116,108,105,98,46,95,98,111,111,116,115,116, + 114,97,112,62,117,25,0,0,0,95,114,101,113,117,105,114, + 101,115,95,98,117,105,108,116,105,110,95,119,114,97,112,112, + 101,114,81,2,0,0,115,8,0,0,0,0,1,15,1,18, + 1,12,1,117,52,0,0,0,95,114,101,113,117,105,114,101, + 115,95,98,117,105,108,116,105,110,46,60,108,111,99,97,108, + 115,62,46,95,114,101,113,117,105,114,101,115,95,98,117,105, + 108,116,105,110,95,119,114,97,112,112,101,114,40,1,0,0, + 0,117,5,0,0,0,95,119,114,97,112,40,2,0,0,0, + 117,3,0,0,0,102,120,110,117,25,0,0,0,95,114,101, + 113,117,105,114,101,115,95,98,117,105,108,116,105,110,95,119, + 114,97,112,112,101,114,40,0,0,0,0,40,1,0,0,0, + 117,3,0,0,0,102,120,110,117,29,0,0,0,60,102,114, + 111,122,101,110,32,105,109,112,111,114,116,108,105,98,46,95, + 98,111,111,116,115,116,114,97,112,62,117,17,0,0,0,95, + 114,101,113,117,105,114,101,115,95,98,117,105,108,116,105,110, + 79,2,0,0,115,6,0,0,0,0,2,18,5,13,1,117, + 17,0,0,0,95,114,101,113,117,105,114,101,115,95,98,117, + 105,108,116,105,110,99,1,0,0,0,0,0,0,0,2,0, + 0,0,3,0,0,0,3,0,0,0,115,35,0,0,0,135, + 0,0,102,1,0,100,1,0,100,2,0,134,0,0,125,1, + 0,116,0,0,124,1,0,136,0,0,131,2,0,1,124,1, + 0,83,40,3,0,0,0,117,47,0,0,0,68,101,99,111, + 114,97,116,111,114,32,116,111,32,118,101,114,105,102,121,32, + 116,104,101,32,110,97,109,101,100,32,109,111,100,117,108,101, + 32,105,115,32,102,114,111,122,101,110,46,99,2,0,0,0, + 0,0,0,0,2,0,0,0,4,0,0,0,19,0,0,0, + 115,58,0,0,0,116,0,0,106,1,0,124,1,0,131,1, + 0,115,45,0,116,2,0,100,1,0,106,3,0,124,1,0, + 131,1,0,100,2,0,124,1,0,131,1,1,130,1,0,110, + 0,0,136,0,0,124,0,0,124,1,0,131,2,0,83,40, + 3,0,0,0,78,117,25,0,0,0,123,125,32,105,115,32, + 110,111,116,32,97,32,102,114,111,122,101,110,32,109,111,100, + 117,108,101,117,4,0,0,0,110,97,109,101,40,4,0,0, + 0,117,4,0,0,0,95,105,109,112,117,9,0,0,0,105, + 115,95,102,114,111,122,101,110,117,11,0,0,0,73,109,112, + 111,114,116,69,114,114,111,114,117,6,0,0,0,102,111,114, + 109,97,116,40,2,0,0,0,117,4,0,0,0,115,101,108, + 102,117,8,0,0,0,102,117,108,108,110,97,109,101,40,1, + 0,0,0,117,3,0,0,0,102,120,110,40,0,0,0,0, + 117,29,0,0,0,60,102,114,111,122,101,110,32,105,109,112, + 111,114,116,108,105,98,46,95,98,111,111,116,115,116,114,97, + 112,62,117,24,0,0,0,95,114,101,113,117,105,114,101,115, + 95,102,114,111,122,101,110,95,119,114,97,112,112,101,114,92, + 2,0,0,115,8,0,0,0,0,1,15,1,18,1,12,1, + 117,50,0,0,0,95,114,101,113,117,105,114,101,115,95,102, + 114,111,122,101,110,46,60,108,111,99,97,108,115,62,46,95, + 114,101,113,117,105,114,101,115,95,102,114,111,122,101,110,95, + 119,114,97,112,112,101,114,40,1,0,0,0,117,5,0,0, + 0,95,119,114,97,112,40,2,0,0,0,117,3,0,0,0, + 102,120,110,117,24,0,0,0,95,114,101,113,117,105,114,101, 115,95,102,114,111,122,101,110,95,119,114,97,112,112,101,114, - 96,2,0,0,115,8,0,0,0,0,1,15,1,18,1,12, - 1,117,50,0,0,0,95,114,101,113,117,105,114,101,115,95, - 102,114,111,122,101,110,46,60,108,111,99,97,108,115,62,46, - 95,114,101,113,117,105,114,101,115,95,102,114,111,122,101,110, - 95,119,114,97,112,112,101,114,40,1,0,0,0,117,5,0, - 0,0,95,119,114,97,112,40,2,0,0,0,117,3,0,0, - 0,102,120,110,117,24,0,0,0,95,114,101,113,117,105,114, - 101,115,95,102,114,111,122,101,110,95,119,114,97,112,112,101, - 114,40,0,0,0,0,40,1,0,0,0,117,3,0,0,0, - 102,120,110,117,29,0,0,0,60,102,114,111,122,101,110,32, - 105,109,112,111,114,116,108,105,98,46,95,98,111,111,116,115, - 116,114,97,112,62,117,16,0,0,0,95,114,101,113,117,105, - 114,101,115,95,102,114,111,122,101,110,94,2,0,0,115,6, - 0,0,0,0,2,18,5,13,1,117,16,0,0,0,95,114, - 101,113,117,105,114,101,115,95,102,114,111,122,101,110,99,2, - 0,0,0,0,0,0,0,5,0,0,0,5,0,0,0,67, - 0,0,0,115,87,0,0,0,124,0,0,106,0,0,124,1, - 0,131,1,0,92,2,0,125,2,0,125,3,0,124,2,0, - 100,3,0,107,8,0,114,83,0,116,2,0,124,3,0,131, - 1,0,114,83,0,100,1,0,125,4,0,116,3,0,106,4, - 0,124,4,0,106,5,0,124,3,0,100,2,0,25,131,1, - 0,116,6,0,131,2,0,1,110,0,0,124,2,0,83,40, - 4,0,0,0,117,86,0,0,0,84,114,121,32,116,111,32, - 102,105,110,100,32,97,32,108,111,97,100,101,114,32,102,111, - 114,32,116,104,101,32,115,112,101,99,105,102,105,101,100,32, - 109,111,100,117,108,101,32,98,121,32,100,101,108,101,103,97, - 116,105,110,103,32,116,111,10,32,32,32,32,115,101,108,102, - 46,102,105,110,100,95,108,111,97,100,101,114,40,41,46,117, - 44,0,0,0,78,111,116,32,105,109,112,111,114,116,105,110, - 103,32,100,105,114,101,99,116,111,114,121,32,123,125,58,32, - 109,105,115,115,105,110,103,32,95,95,105,110,105,116,95,95, - 105,0,0,0,0,78,40,7,0,0,0,117,11,0,0,0, - 102,105,110,100,95,108,111,97,100,101,114,117,4,0,0,0, - 78,111,110,101,117,3,0,0,0,108,101,110,117,9,0,0, - 0,95,119,97,114,110,105,110,103,115,117,4,0,0,0,119, - 97,114,110,117,6,0,0,0,102,111,114,109,97,116,117,13, - 0,0,0,73,109,112,111,114,116,87,97,114,110,105,110,103, - 40,5,0,0,0,117,4,0,0,0,115,101,108,102,117,8, - 0,0,0,102,117,108,108,110,97,109,101,117,6,0,0,0, - 108,111,97,100,101,114,117,8,0,0,0,112,111,114,116,105, - 111,110,115,117,3,0,0,0,109,115,103,40,0,0,0,0, - 40,0,0,0,0,117,29,0,0,0,60,102,114,111,122,101, - 110,32,105,109,112,111,114,116,108,105,98,46,95,98,111,111, - 116,115,116,114,97,112,62,117,17,0,0,0,95,102,105,110, - 100,95,109,111,100,117,108,101,95,115,104,105,109,105,2,0, - 0,115,10,0,0,0,0,6,21,1,24,1,6,1,32,1, - 117,17,0,0,0,95,102,105,110,100,95,109,111,100,117,108, - 101,95,115,104,105,109,99,1,0,0,0,0,0,0,0,1, - 0,0,0,6,0,0,0,66,0,0,0,115,173,0,0,0, - 124,0,0,69,101,0,0,90,1,0,100,0,0,90,2,0, - 100,1,0,90,3,0,101,4,0,100,2,0,100,3,0,132, - 0,0,131,1,0,90,5,0,101,4,0,100,14,0,100,4, - 0,100,5,0,132,1,0,131,1,0,90,7,0,101,4,0, - 101,8,0,101,9,0,101,10,0,100,6,0,100,7,0,132, - 0,0,131,1,0,131,1,0,131,1,0,131,1,0,90,11, - 0,101,4,0,101,10,0,100,8,0,100,9,0,132,0,0, - 131,1,0,131,1,0,90,12,0,101,4,0,101,10,0,100, - 10,0,100,11,0,132,0,0,131,1,0,131,1,0,90,13, - 0,101,4,0,101,10,0,100,12,0,100,13,0,132,0,0, - 131,1,0,131,1,0,90,14,0,100,14,0,83,40,15,0, - 0,0,117,15,0,0,0,66,117,105,108,116,105,110,73,109, - 112,111,114,116,101,114,117,144,0,0,0,77,101,116,97,32, - 112,97,116,104,32,105,109,112,111,114,116,32,102,111,114,32, - 98,117,105,108,116,45,105,110,32,109,111,100,117,108,101,115, - 46,10,10,32,32,32,32,65,108,108,32,109,101,116,104,111, - 100,115,32,97,114,101,32,101,105,116,104,101,114,32,99,108, - 97,115,115,32,111,114,32,115,116,97,116,105,99,32,109,101, - 116,104,111,100,115,32,116,111,32,97,118,111,105,100,32,116, - 104,101,32,110,101,101,100,32,116,111,10,32,32,32,32,105, - 110,115,116,97,110,116,105,97,116,101,32,116,104,101,32,99, - 108,97,115,115,46,10,10,32,32,32,32,99,2,0,0,0, - 0,0,0,0,2,0,0,0,2,0,0,0,67,0,0,0, - 115,16,0,0,0,100,1,0,106,0,0,124,1,0,106,1, - 0,131,1,0,83,40,2,0,0,0,78,117,24,0,0,0, - 60,109,111,100,117,108,101,32,39,123,125,39,32,40,98,117, - 105,108,116,45,105,110,41,62,40,2,0,0,0,117,6,0, - 0,0,102,111,114,109,97,116,117,8,0,0,0,95,95,110, - 97,109,101,95,95,40,2,0,0,0,117,3,0,0,0,99, - 108,115,117,6,0,0,0,109,111,100,117,108,101,40,0,0, - 0,0,40,0,0,0,0,117,29,0,0,0,60,102,114,111, - 122,101,110,32,105,109,112,111,114,116,108,105,98,46,95,98, - 111,111,116,115,116,114,97,112,62,117,11,0,0,0,109,111, - 100,117,108,101,95,114,101,112,114,131,2,0,0,115,2,0, - 0,0,0,2,117,27,0,0,0,66,117,105,108,116,105,110, - 73,109,112,111,114,116,101,114,46,109,111,100,117,108,101,95, - 114,101,112,114,99,3,0,0,0,0,0,0,0,3,0,0, - 0,2,0,0,0,67,0,0,0,115,39,0,0,0,124,2, - 0,100,1,0,107,9,0,114,16,0,100,1,0,83,116,1, - 0,106,2,0,124,1,0,131,1,0,114,35,0,124,0,0, - 83,100,1,0,83,40,2,0,0,0,117,113,0,0,0,70, - 105,110,100,32,116,104,101,32,98,117,105,108,116,45,105,110, - 32,109,111,100,117,108,101,46,10,10,32,32,32,32,32,32, - 32,32,73,102,32,39,112,97,116,104,39,32,105,115,32,101, - 118,101,114,32,115,112,101,99,105,102,105,101,100,32,116,104, - 101,110,32,116,104,101,32,115,101,97,114,99,104,32,105,115, - 32,99,111,110,115,105,100,101,114,101,100,32,97,32,102,97, - 105,108,117,114,101,46,10,10,32,32,32,32,32,32,32,32, - 78,40,3,0,0,0,117,4,0,0,0,78,111,110,101,117, - 4,0,0,0,95,105,109,112,117,10,0,0,0,105,115,95, - 98,117,105,108,116,105,110,40,3,0,0,0,117,3,0,0, - 0,99,108,115,117,8,0,0,0,102,117,108,108,110,97,109, - 101,117,4,0,0,0,112,97,116,104,40,0,0,0,0,40, + 40,0,0,0,0,40,1,0,0,0,117,3,0,0,0,102, + 120,110,117,29,0,0,0,60,102,114,111,122,101,110,32,105, + 109,112,111,114,116,108,105,98,46,95,98,111,111,116,115,116, + 114,97,112,62,117,16,0,0,0,95,114,101,113,117,105,114, + 101,115,95,102,114,111,122,101,110,90,2,0,0,115,6,0, + 0,0,0,2,18,5,13,1,117,16,0,0,0,95,114,101, + 113,117,105,114,101,115,95,102,114,111,122,101,110,99,2,0, + 0,0,0,0,0,0,5,0,0,0,5,0,0,0,67,0, + 0,0,115,87,0,0,0,124,0,0,106,0,0,124,1,0, + 131,1,0,92,2,0,125,2,0,125,3,0,124,2,0,100, + 3,0,107,8,0,114,83,0,116,2,0,124,3,0,131,1, + 0,114,83,0,100,1,0,125,4,0,116,3,0,106,4,0, + 124,4,0,106,5,0,124,3,0,100,2,0,25,131,1,0, + 116,6,0,131,2,0,1,110,0,0,124,2,0,83,40,4, + 0,0,0,117,86,0,0,0,84,114,121,32,116,111,32,102, + 105,110,100,32,97,32,108,111,97,100,101,114,32,102,111,114, + 32,116,104,101,32,115,112,101,99,105,102,105,101,100,32,109, + 111,100,117,108,101,32,98,121,32,100,101,108,101,103,97,116, + 105,110,103,32,116,111,10,32,32,32,32,115,101,108,102,46, + 102,105,110,100,95,108,111,97,100,101,114,40,41,46,117,44, + 0,0,0,78,111,116,32,105,109,112,111,114,116,105,110,103, + 32,100,105,114,101,99,116,111,114,121,32,123,125,58,32,109, + 105,115,115,105,110,103,32,95,95,105,110,105,116,95,95,105, + 0,0,0,0,78,40,7,0,0,0,117,11,0,0,0,102, + 105,110,100,95,108,111,97,100,101,114,117,4,0,0,0,78, + 111,110,101,117,3,0,0,0,108,101,110,117,9,0,0,0, + 95,119,97,114,110,105,110,103,115,117,4,0,0,0,119,97, + 114,110,117,6,0,0,0,102,111,114,109,97,116,117,13,0, + 0,0,73,109,112,111,114,116,87,97,114,110,105,110,103,40, + 5,0,0,0,117,4,0,0,0,115,101,108,102,117,8,0, + 0,0,102,117,108,108,110,97,109,101,117,6,0,0,0,108, + 111,97,100,101,114,117,8,0,0,0,112,111,114,116,105,111, + 110,115,117,3,0,0,0,109,115,103,40,0,0,0,0,40, 0,0,0,0,117,29,0,0,0,60,102,114,111,122,101,110, 32,105,109,112,111,114,116,108,105,98,46,95,98,111,111,116, - 115,116,114,97,112,62,117,11,0,0,0,102,105,110,100,95, - 109,111,100,117,108,101,135,2,0,0,115,6,0,0,0,0, - 7,12,1,4,1,117,27,0,0,0,66,117,105,108,116,105, - 110,73,109,112,111,114,116,101,114,46,102,105,110,100,95,109, - 111,100,117,108,101,99,2,0,0,0,0,0,0,0,3,0, - 0,0,9,0,0,0,67,0,0,0,115,88,0,0,0,124, - 1,0,116,0,0,106,1,0,107,6,0,125,2,0,121,20, - 0,116,2,0,116,3,0,106,4,0,124,1,0,131,2,0, - 83,87,110,46,0,1,1,1,124,2,0,12,114,76,0,124, - 1,0,116,0,0,106,1,0,107,6,0,114,76,0,116,0, - 0,106,1,0,124,1,0,61,110,0,0,130,0,0,89,110, - 1,0,88,100,1,0,83,40,2,0,0,0,117,23,0,0, - 0,76,111,97,100,32,97,32,98,117,105,108,116,45,105,110, - 32,109,111,100,117,108,101,46,78,40,5,0,0,0,117,3, - 0,0,0,115,121,115,117,7,0,0,0,109,111,100,117,108, - 101,115,117,25,0,0,0,95,99,97,108,108,95,119,105,116, - 104,95,102,114,97,109,101,115,95,114,101,109,111,118,101,100, - 117,4,0,0,0,95,105,109,112,117,12,0,0,0,105,110, - 105,116,95,98,117,105,108,116,105,110,40,3,0,0,0,117, - 3,0,0,0,99,108,115,117,8,0,0,0,102,117,108,108, - 110,97,109,101,117,9,0,0,0,105,115,95,114,101,108,111, - 97,100,40,0,0,0,0,40,0,0,0,0,117,29,0,0, - 0,60,102,114,111,122,101,110,32,105,109,112,111,114,116,108, - 105,98,46,95,98,111,111,116,115,116,114,97,112,62,117,11, - 0,0,0,108,111,97,100,95,109,111,100,117,108,101,146,2, - 0,0,115,14,0,0,0,0,6,15,1,3,1,20,1,3, - 1,22,1,13,1,117,27,0,0,0,66,117,105,108,116,105, - 110,73,109,112,111,114,116,101,114,46,108,111,97,100,95,109, - 111,100,117,108,101,99,2,0,0,0,0,0,0,0,2,0, - 0,0,1,0,0,0,67,0,0,0,115,4,0,0,0,100, - 1,0,83,40,2,0,0,0,117,57,0,0,0,82,101,116, - 117,114,110,32,78,111,110,101,32,97,115,32,98,117,105,108, - 116,45,105,110,32,109,111,100,117,108,101,115,32,100,111,32, - 110,111,116,32,104,97,118,101,32,99,111,100,101,32,111,98, - 106,101,99,116,115,46,78,40,1,0,0,0,117,4,0,0, - 0,78,111,110,101,40,2,0,0,0,117,3,0,0,0,99, - 108,115,117,8,0,0,0,102,117,108,108,110,97,109,101,40, - 0,0,0,0,40,0,0,0,0,117,29,0,0,0,60,102, - 114,111,122,101,110,32,105,109,112,111,114,116,108,105,98,46, - 95,98,111,111,116,115,116,114,97,112,62,117,8,0,0,0, - 103,101,116,95,99,111,100,101,160,2,0,0,115,2,0,0, - 0,0,4,117,24,0,0,0,66,117,105,108,116,105,110,73, - 109,112,111,114,116,101,114,46,103,101,116,95,99,111,100,101, - 99,2,0,0,0,0,0,0,0,2,0,0,0,1,0,0, - 0,67,0,0,0,115,4,0,0,0,100,1,0,83,40,2, - 0,0,0,117,56,0,0,0,82,101,116,117,114,110,32,78, - 111,110,101,32,97,115,32,98,117,105,108,116,45,105,110,32, - 109,111,100,117,108,101,115,32,100,111,32,110,111,116,32,104, - 97,118,101,32,115,111,117,114,99,101,32,99,111,100,101,46, - 78,40,1,0,0,0,117,4,0,0,0,78,111,110,101,40, - 2,0,0,0,117,3,0,0,0,99,108,115,117,8,0,0, - 0,102,117,108,108,110,97,109,101,40,0,0,0,0,40,0, + 115,116,114,97,112,62,117,17,0,0,0,95,102,105,110,100, + 95,109,111,100,117,108,101,95,115,104,105,109,101,2,0,0, + 115,10,0,0,0,0,6,21,1,24,1,6,1,32,1,117, + 17,0,0,0,95,102,105,110,100,95,109,111,100,117,108,101, + 95,115,104,105,109,99,1,0,0,0,0,0,0,0,1,0, + 0,0,6,0,0,0,66,0,0,0,115,173,0,0,0,124, + 0,0,69,101,0,0,90,1,0,100,0,0,90,2,0,100, + 1,0,90,3,0,101,4,0,100,2,0,100,3,0,132,0, + 0,131,1,0,90,5,0,101,4,0,100,14,0,100,4,0, + 100,5,0,132,1,0,131,1,0,90,7,0,101,4,0,101, + 8,0,101,9,0,101,10,0,100,6,0,100,7,0,132,0, + 0,131,1,0,131,1,0,131,1,0,131,1,0,90,11,0, + 101,4,0,101,10,0,100,8,0,100,9,0,132,0,0,131, + 1,0,131,1,0,90,12,0,101,4,0,101,10,0,100,10, + 0,100,11,0,132,0,0,131,1,0,131,1,0,90,13,0, + 101,4,0,101,10,0,100,12,0,100,13,0,132,0,0,131, + 1,0,131,1,0,90,14,0,100,14,0,83,40,15,0,0, + 0,117,15,0,0,0,66,117,105,108,116,105,110,73,109,112, + 111,114,116,101,114,117,144,0,0,0,77,101,116,97,32,112, + 97,116,104,32,105,109,112,111,114,116,32,102,111,114,32,98, + 117,105,108,116,45,105,110,32,109,111,100,117,108,101,115,46, + 10,10,32,32,32,32,65,108,108,32,109,101,116,104,111,100, + 115,32,97,114,101,32,101,105,116,104,101,114,32,99,108,97, + 115,115,32,111,114,32,115,116,97,116,105,99,32,109,101,116, + 104,111,100,115,32,116,111,32,97,118,111,105,100,32,116,104, + 101,32,110,101,101,100,32,116,111,10,32,32,32,32,105,110, + 115,116,97,110,116,105,97,116,101,32,116,104,101,32,99,108, + 97,115,115,46,10,10,32,32,32,32,99,2,0,0,0,0, + 0,0,0,2,0,0,0,2,0,0,0,67,0,0,0,115, + 16,0,0,0,100,1,0,106,0,0,124,1,0,106,1,0, + 131,1,0,83,40,2,0,0,0,78,117,24,0,0,0,60, + 109,111,100,117,108,101,32,39,123,125,39,32,40,98,117,105, + 108,116,45,105,110,41,62,40,2,0,0,0,117,6,0,0, + 0,102,111,114,109,97,116,117,8,0,0,0,95,95,110,97, + 109,101,95,95,40,2,0,0,0,117,3,0,0,0,99,108, + 115,117,6,0,0,0,109,111,100,117,108,101,40,0,0,0, + 0,40,0,0,0,0,117,29,0,0,0,60,102,114,111,122, + 101,110,32,105,109,112,111,114,116,108,105,98,46,95,98,111, + 111,116,115,116,114,97,112,62,117,11,0,0,0,109,111,100, + 117,108,101,95,114,101,112,114,127,2,0,0,115,2,0,0, + 0,0,2,117,27,0,0,0,66,117,105,108,116,105,110,73, + 109,112,111,114,116,101,114,46,109,111,100,117,108,101,95,114, + 101,112,114,99,3,0,0,0,0,0,0,0,3,0,0,0, + 2,0,0,0,67,0,0,0,115,39,0,0,0,124,2,0, + 100,1,0,107,9,0,114,16,0,100,1,0,83,116,1,0, + 106,2,0,124,1,0,131,1,0,114,35,0,124,0,0,83, + 100,1,0,83,40,2,0,0,0,117,113,0,0,0,70,105, + 110,100,32,116,104,101,32,98,117,105,108,116,45,105,110,32, + 109,111,100,117,108,101,46,10,10,32,32,32,32,32,32,32, + 32,73,102,32,39,112,97,116,104,39,32,105,115,32,101,118, + 101,114,32,115,112,101,99,105,102,105,101,100,32,116,104,101, + 110,32,116,104,101,32,115,101,97,114,99,104,32,105,115,32, + 99,111,110,115,105,100,101,114,101,100,32,97,32,102,97,105, + 108,117,114,101,46,10,10,32,32,32,32,32,32,32,32,78, + 40,3,0,0,0,117,4,0,0,0,78,111,110,101,117,4, + 0,0,0,95,105,109,112,117,10,0,0,0,105,115,95,98, + 117,105,108,116,105,110,40,3,0,0,0,117,3,0,0,0, + 99,108,115,117,8,0,0,0,102,117,108,108,110,97,109,101, + 117,4,0,0,0,112,97,116,104,40,0,0,0,0,40,0, 0,0,0,117,29,0,0,0,60,102,114,111,122,101,110,32, 105,109,112,111,114,116,108,105,98,46,95,98,111,111,116,115, - 116,114,97,112,62,117,10,0,0,0,103,101,116,95,115,111, - 117,114,99,101,166,2,0,0,115,2,0,0,0,0,4,117, - 26,0,0,0,66,117,105,108,116,105,110,73,109,112,111,114, - 116,101,114,46,103,101,116,95,115,111,117,114,99,101,99,2, - 0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,67, - 0,0,0,115,4,0,0,0,100,1,0,83,40,2,0,0, - 0,117,52,0,0,0,82,101,116,117,114,110,32,70,97,108, - 115,101,32,97,115,32,98,117,105,108,116,45,105,110,32,109, - 111,100,117,108,101,115,32,97,114,101,32,110,101,118,101,114, - 32,112,97,99,107,97,103,101,115,46,70,40,1,0,0,0, - 117,5,0,0,0,70,97,108,115,101,40,2,0,0,0,117, - 3,0,0,0,99,108,115,117,8,0,0,0,102,117,108,108, - 110,97,109,101,40,0,0,0,0,40,0,0,0,0,117,29, - 0,0,0,60,102,114,111,122,101,110,32,105,109,112,111,114, - 116,108,105,98,46,95,98,111,111,116,115,116,114,97,112,62, - 117,10,0,0,0,105,115,95,112,97,99,107,97,103,101,172, - 2,0,0,115,2,0,0,0,0,4,117,26,0,0,0,66, - 117,105,108,116,105,110,73,109,112,111,114,116,101,114,46,105, - 115,95,112,97,99,107,97,103,101,78,40,15,0,0,0,117, - 8,0,0,0,95,95,110,97,109,101,95,95,117,10,0,0, - 0,95,95,109,111,100,117,108,101,95,95,117,12,0,0,0, - 95,95,113,117,97,108,110,97,109,101,95,95,117,7,0,0, - 0,95,95,100,111,99,95,95,117,11,0,0,0,99,108,97, - 115,115,109,101,116,104,111,100,117,11,0,0,0,109,111,100, - 117,108,101,95,114,101,112,114,117,4,0,0,0,78,111,110, - 101,117,11,0,0,0,102,105,110,100,95,109,111,100,117,108, - 101,117,11,0,0,0,115,101,116,95,112,97,99,107,97,103, - 101,117,10,0,0,0,115,101,116,95,108,111,97,100,101,114, - 117,17,0,0,0,95,114,101,113,117,105,114,101,115,95,98, - 117,105,108,116,105,110,117,11,0,0,0,108,111,97,100,95, - 109,111,100,117,108,101,117,8,0,0,0,103,101,116,95,99, - 111,100,101,117,10,0,0,0,103,101,116,95,115,111,117,114, - 99,101,117,10,0,0,0,105,115,95,112,97,99,107,97,103, - 101,40,1,0,0,0,117,10,0,0,0,95,95,108,111,99, - 97,108,115,95,95,40,0,0,0,0,40,0,0,0,0,117, - 29,0,0,0,60,102,114,111,122,101,110,32,105,109,112,111, - 114,116,108,105,98,46,95,98,111,111,116,115,116,114,97,112, - 62,117,15,0,0,0,66,117,105,108,116,105,110,73,109,112, - 111,114,116,101,114,122,2,0,0,115,28,0,0,0,16,7, - 6,2,18,4,3,1,18,10,3,1,3,1,3,1,27,11, - 3,1,21,5,3,1,21,5,3,1,117,15,0,0,0,66, - 117,105,108,116,105,110,73,109,112,111,114,116,101,114,99,1, - 0,0,0,0,0,0,0,1,0,0,0,6,0,0,0,66, - 0,0,0,115,173,0,0,0,124,0,0,69,101,0,0,90, - 1,0,100,0,0,90,2,0,100,1,0,90,3,0,101,4, - 0,100,2,0,100,3,0,132,0,0,131,1,0,90,5,0, - 101,4,0,100,14,0,100,4,0,100,5,0,132,1,0,131, - 1,0,90,7,0,101,4,0,101,8,0,101,9,0,101,10, - 0,100,6,0,100,7,0,132,0,0,131,1,0,131,1,0, - 131,1,0,131,1,0,90,11,0,101,4,0,101,10,0,100, - 8,0,100,9,0,132,0,0,131,1,0,131,1,0,90,12, - 0,101,4,0,101,10,0,100,10,0,100,11,0,132,0,0, - 131,1,0,131,1,0,90,13,0,101,4,0,101,10,0,100, - 12,0,100,13,0,132,0,0,131,1,0,131,1,0,90,14, - 0,100,14,0,83,40,15,0,0,0,117,14,0,0,0,70, - 114,111,122,101,110,73,109,112,111,114,116,101,114,117,142,0, - 0,0,77,101,116,97,32,112,97,116,104,32,105,109,112,111, - 114,116,32,102,111,114,32,102,114,111,122,101,110,32,109,111, - 100,117,108,101,115,46,10,10,32,32,32,32,65,108,108,32, - 109,101,116,104,111,100,115,32,97,114,101,32,101,105,116,104, - 101,114,32,99,108,97,115,115,32,111,114,32,115,116,97,116, - 105,99,32,109,101,116,104,111,100,115,32,116,111,32,97,118, - 111,105,100,32,116,104,101,32,110,101,101,100,32,116,111,10, - 32,32,32,32,105,110,115,116,97,110,116,105,97,116,101,32, - 116,104,101,32,99,108,97,115,115,46,10,10,32,32,32,32, - 99,2,0,0,0,0,0,0,0,2,0,0,0,2,0,0, - 0,67,0,0,0,115,16,0,0,0,100,1,0,106,0,0, - 124,1,0,106,1,0,131,1,0,83,40,2,0,0,0,78, - 117,22,0,0,0,60,109,111,100,117,108,101,32,39,123,125, - 39,32,40,102,114,111,122,101,110,41,62,40,2,0,0,0, - 117,6,0,0,0,102,111,114,109,97,116,117,8,0,0,0, - 95,95,110,97,109,101,95,95,40,2,0,0,0,117,3,0, - 0,0,99,108,115,117,1,0,0,0,109,40,0,0,0,0, - 40,0,0,0,0,117,29,0,0,0,60,102,114,111,122,101, - 110,32,105,109,112,111,114,116,108,105,98,46,95,98,111,111, - 116,115,116,114,97,112,62,117,11,0,0,0,109,111,100,117, - 108,101,95,114,101,112,114,188,2,0,0,115,2,0,0,0, - 0,2,117,26,0,0,0,70,114,111,122,101,110,73,109,112, - 111,114,116,101,114,46,109,111,100,117,108,101,95,114,101,112, - 114,99,3,0,0,0,0,0,0,0,3,0,0,0,2,0, - 0,0,67,0,0,0,115,23,0,0,0,116,0,0,106,1, - 0,124,1,0,131,1,0,114,19,0,124,0,0,83,100,1, - 0,83,40,2,0,0,0,117,21,0,0,0,70,105,110,100, - 32,97,32,102,114,111,122,101,110,32,109,111,100,117,108,101, - 46,78,40,3,0,0,0,117,4,0,0,0,95,105,109,112, - 117,9,0,0,0,105,115,95,102,114,111,122,101,110,117,4, - 0,0,0,78,111,110,101,40,3,0,0,0,117,3,0,0, - 0,99,108,115,117,8,0,0,0,102,117,108,108,110,97,109, - 101,117,4,0,0,0,112,97,116,104,40,0,0,0,0,40, - 0,0,0,0,117,29,0,0,0,60,102,114,111,122,101,110, - 32,105,109,112,111,114,116,108,105,98,46,95,98,111,111,116, - 115,116,114,97,112,62,117,11,0,0,0,102,105,110,100,95, - 109,111,100,117,108,101,192,2,0,0,115,2,0,0,0,0, - 3,117,26,0,0,0,70,114,111,122,101,110,73,109,112,111, - 114,116,101,114,46,102,105,110,100,95,109,111,100,117,108,101, - 99,2,0,0,0,0,0,0,0,4,0,0,0,9,0,0, - 0,67,0,0,0,115,100,0,0,0,124,1,0,116,0,0, - 106,1,0,107,6,0,125,2,0,121,32,0,116,2,0,116, - 3,0,106,4,0,124,1,0,131,2,0,125,3,0,124,3, - 0,96,5,0,124,3,0,83,87,110,46,0,1,1,1,124, - 2,0,12,114,88,0,124,1,0,116,0,0,106,1,0,107, - 6,0,114,88,0,116,0,0,106,1,0,124,1,0,61,110, - 0,0,130,0,0,89,110,1,0,88,100,1,0,83,40,2, - 0,0,0,117,21,0,0,0,76,111,97,100,32,97,32,102, - 114,111,122,101,110,32,109,111,100,117,108,101,46,78,40,6, - 0,0,0,117,3,0,0,0,115,121,115,117,7,0,0,0, - 109,111,100,117,108,101,115,117,25,0,0,0,95,99,97,108, - 108,95,119,105,116,104,95,102,114,97,109,101,115,95,114,101, - 109,111,118,101,100,117,4,0,0,0,95,105,109,112,117,11, - 0,0,0,105,110,105,116,95,102,114,111,122,101,110,117,8, - 0,0,0,95,95,102,105,108,101,95,95,40,4,0,0,0, - 117,3,0,0,0,99,108,115,117,8,0,0,0,102,117,108, - 108,110,97,109,101,117,9,0,0,0,105,115,95,114,101,108, - 111,97,100,117,1,0,0,0,109,40,0,0,0,0,40,0, - 0,0,0,117,29,0,0,0,60,102,114,111,122,101,110,32, - 105,109,112,111,114,116,108,105,98,46,95,98,111,111,116,115, - 116,114,97,112,62,117,11,0,0,0,108,111,97,100,95,109, - 111,100,117,108,101,197,2,0,0,115,18,0,0,0,0,6, - 15,1,3,1,18,2,6,1,8,1,3,1,22,1,13,1, - 117,26,0,0,0,70,114,111,122,101,110,73,109,112,111,114, - 116,101,114,46,108,111,97,100,95,109,111,100,117,108,101,99, - 2,0,0,0,0,0,0,0,2,0,0,0,2,0,0,0, - 67,0,0,0,115,13,0,0,0,116,0,0,106,1,0,124, - 1,0,131,1,0,83,40,1,0,0,0,117,45,0,0,0, - 82,101,116,117,114,110,32,116,104,101,32,99,111,100,101,32, - 111,98,106,101,99,116,32,102,111,114,32,116,104,101,32,102, - 114,111,122,101,110,32,109,111,100,117,108,101,46,40,2,0, - 0,0,117,4,0,0,0,95,105,109,112,117,17,0,0,0, - 103,101,116,95,102,114,111,122,101,110,95,111,98,106,101,99, - 116,40,2,0,0,0,117,3,0,0,0,99,108,115,117,8, - 0,0,0,102,117,108,108,110,97,109,101,40,0,0,0,0, - 40,0,0,0,0,117,29,0,0,0,60,102,114,111,122,101, - 110,32,105,109,112,111,114,116,108,105,98,46,95,98,111,111, - 116,115,116,114,97,112,62,117,8,0,0,0,103,101,116,95, - 99,111,100,101,214,2,0,0,115,2,0,0,0,0,4,117, - 23,0,0,0,70,114,111,122,101,110,73,109,112,111,114,116, - 101,114,46,103,101,116,95,99,111,100,101,99,2,0,0,0, - 0,0,0,0,2,0,0,0,1,0,0,0,67,0,0,0, - 115,4,0,0,0,100,1,0,83,40,2,0,0,0,117,54, - 0,0,0,82,101,116,117,114,110,32,78,111,110,101,32,97, - 115,32,102,114,111,122,101,110,32,109,111,100,117,108,101,115, - 32,100,111,32,110,111,116,32,104,97,118,101,32,115,111,117, - 114,99,101,32,99,111,100,101,46,78,40,1,0,0,0,117, - 4,0,0,0,78,111,110,101,40,2,0,0,0,117,3,0, - 0,0,99,108,115,117,8,0,0,0,102,117,108,108,110,97, - 109,101,40,0,0,0,0,40,0,0,0,0,117,29,0,0, - 0,60,102,114,111,122,101,110,32,105,109,112,111,114,116,108, - 105,98,46,95,98,111,111,116,115,116,114,97,112,62,117,10, - 0,0,0,103,101,116,95,115,111,117,114,99,101,220,2,0, - 0,115,2,0,0,0,0,4,117,25,0,0,0,70,114,111, - 122,101,110,73,109,112,111,114,116,101,114,46,103,101,116,95, - 115,111,117,114,99,101,99,2,0,0,0,0,0,0,0,2, - 0,0,0,2,0,0,0,67,0,0,0,115,13,0,0,0, - 116,0,0,106,1,0,124,1,0,131,1,0,83,40,1,0, - 0,0,117,46,0,0,0,82,101,116,117,114,110,32,84,114, - 117,101,32,105,102,32,116,104,101,32,102,114,111,122,101,110, - 32,109,111,100,117,108,101,32,105,115,32,97,32,112,97,99, - 107,97,103,101,46,40,2,0,0,0,117,4,0,0,0,95, - 105,109,112,117,17,0,0,0,105,115,95,102,114,111,122,101, - 110,95,112,97,99,107,97,103,101,40,2,0,0,0,117,3, + 116,114,97,112,62,117,11,0,0,0,102,105,110,100,95,109, + 111,100,117,108,101,131,2,0,0,115,6,0,0,0,0,7, + 12,1,4,1,117,27,0,0,0,66,117,105,108,116,105,110, + 73,109,112,111,114,116,101,114,46,102,105,110,100,95,109,111, + 100,117,108,101,99,2,0,0,0,0,0,0,0,3,0,0, + 0,9,0,0,0,67,0,0,0,115,88,0,0,0,124,1, + 0,116,0,0,106,1,0,107,6,0,125,2,0,121,20,0, + 116,2,0,116,3,0,106,4,0,124,1,0,131,2,0,83, + 87,110,46,0,1,1,1,124,2,0,12,114,76,0,124,1, + 0,116,0,0,106,1,0,107,6,0,114,76,0,116,0,0, + 106,1,0,124,1,0,61,110,0,0,130,0,0,89,110,1, + 0,88,100,1,0,83,40,2,0,0,0,117,23,0,0,0, + 76,111,97,100,32,97,32,98,117,105,108,116,45,105,110,32, + 109,111,100,117,108,101,46,78,40,5,0,0,0,117,3,0, + 0,0,115,121,115,117,7,0,0,0,109,111,100,117,108,101, + 115,117,25,0,0,0,95,99,97,108,108,95,119,105,116,104, + 95,102,114,97,109,101,115,95,114,101,109,111,118,101,100,117, + 4,0,0,0,95,105,109,112,117,12,0,0,0,105,110,105, + 116,95,98,117,105,108,116,105,110,40,3,0,0,0,117,3, + 0,0,0,99,108,115,117,8,0,0,0,102,117,108,108,110, + 97,109,101,117,9,0,0,0,105,115,95,114,101,108,111,97, + 100,40,0,0,0,0,40,0,0,0,0,117,29,0,0,0, + 60,102,114,111,122,101,110,32,105,109,112,111,114,116,108,105, + 98,46,95,98,111,111,116,115,116,114,97,112,62,117,11,0, + 0,0,108,111,97,100,95,109,111,100,117,108,101,142,2,0, + 0,115,14,0,0,0,0,6,15,1,3,1,20,1,3,1, + 22,1,13,1,117,27,0,0,0,66,117,105,108,116,105,110, + 73,109,112,111,114,116,101,114,46,108,111,97,100,95,109,111, + 100,117,108,101,99,2,0,0,0,0,0,0,0,2,0,0, + 0,1,0,0,0,67,0,0,0,115,4,0,0,0,100,1, + 0,83,40,2,0,0,0,117,57,0,0,0,82,101,116,117, + 114,110,32,78,111,110,101,32,97,115,32,98,117,105,108,116, + 45,105,110,32,109,111,100,117,108,101,115,32,100,111,32,110, + 111,116,32,104,97,118,101,32,99,111,100,101,32,111,98,106, + 101,99,116,115,46,78,40,1,0,0,0,117,4,0,0,0, + 78,111,110,101,40,2,0,0,0,117,3,0,0,0,99,108, + 115,117,8,0,0,0,102,117,108,108,110,97,109,101,40,0, + 0,0,0,40,0,0,0,0,117,29,0,0,0,60,102,114, + 111,122,101,110,32,105,109,112,111,114,116,108,105,98,46,95, + 98,111,111,116,115,116,114,97,112,62,117,8,0,0,0,103, + 101,116,95,99,111,100,101,156,2,0,0,115,2,0,0,0, + 0,4,117,24,0,0,0,66,117,105,108,116,105,110,73,109, + 112,111,114,116,101,114,46,103,101,116,95,99,111,100,101,99, + 2,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0, + 67,0,0,0,115,4,0,0,0,100,1,0,83,40,2,0, + 0,0,117,56,0,0,0,82,101,116,117,114,110,32,78,111, + 110,101,32,97,115,32,98,117,105,108,116,45,105,110,32,109, + 111,100,117,108,101,115,32,100,111,32,110,111,116,32,104,97, + 118,101,32,115,111,117,114,99,101,32,99,111,100,101,46,78, + 40,1,0,0,0,117,4,0,0,0,78,111,110,101,40,2, + 0,0,0,117,3,0,0,0,99,108,115,117,8,0,0,0, + 102,117,108,108,110,97,109,101,40,0,0,0,0,40,0,0, + 0,0,117,29,0,0,0,60,102,114,111,122,101,110,32,105, + 109,112,111,114,116,108,105,98,46,95,98,111,111,116,115,116, + 114,97,112,62,117,10,0,0,0,103,101,116,95,115,111,117, + 114,99,101,162,2,0,0,115,2,0,0,0,0,4,117,26, + 0,0,0,66,117,105,108,116,105,110,73,109,112,111,114,116, + 101,114,46,103,101,116,95,115,111,117,114,99,101,99,2,0, + 0,0,0,0,0,0,2,0,0,0,1,0,0,0,67,0, + 0,0,115,4,0,0,0,100,1,0,83,40,2,0,0,0, + 117,52,0,0,0,82,101,116,117,114,110,32,70,97,108,115, + 101,32,97,115,32,98,117,105,108,116,45,105,110,32,109,111, + 100,117,108,101,115,32,97,114,101,32,110,101,118,101,114,32, + 112,97,99,107,97,103,101,115,46,70,40,1,0,0,0,117, + 5,0,0,0,70,97,108,115,101,40,2,0,0,0,117,3, 0,0,0,99,108,115,117,8,0,0,0,102,117,108,108,110, 97,109,101,40,0,0,0,0,40,0,0,0,0,117,29,0, 0,0,60,102,114,111,122,101,110,32,105,109,112,111,114,116, 108,105,98,46,95,98,111,111,116,115,116,114,97,112,62,117, - 10,0,0,0,105,115,95,112,97,99,107,97,103,101,226,2, - 0,0,115,2,0,0,0,0,4,117,25,0,0,0,70,114, - 111,122,101,110,73,109,112,111,114,116,101,114,46,105,115,95, - 112,97,99,107,97,103,101,78,40,15,0,0,0,117,8,0, - 0,0,95,95,110,97,109,101,95,95,117,10,0,0,0,95, - 95,109,111,100,117,108,101,95,95,117,12,0,0,0,95,95, - 113,117,97,108,110,97,109,101,95,95,117,7,0,0,0,95, - 95,100,111,99,95,95,117,11,0,0,0,99,108,97,115,115, - 109,101,116,104,111,100,117,11,0,0,0,109,111,100,117,108, - 101,95,114,101,112,114,117,4,0,0,0,78,111,110,101,117, - 11,0,0,0,102,105,110,100,95,109,111,100,117,108,101,117, - 11,0,0,0,115,101,116,95,112,97,99,107,97,103,101,117, - 10,0,0,0,115,101,116,95,108,111,97,100,101,114,117,16, - 0,0,0,95,114,101,113,117,105,114,101,115,95,102,114,111, - 122,101,110,117,11,0,0,0,108,111,97,100,95,109,111,100, - 117,108,101,117,8,0,0,0,103,101,116,95,99,111,100,101, - 117,10,0,0,0,103,101,116,95,115,111,117,114,99,101,117, - 10,0,0,0,105,115,95,112,97,99,107,97,103,101,40,1, - 0,0,0,117,10,0,0,0,95,95,108,111,99,97,108,115, - 95,95,40,0,0,0,0,40,0,0,0,0,117,29,0,0, - 0,60,102,114,111,122,101,110,32,105,109,112,111,114,116,108, - 105,98,46,95,98,111,111,116,115,116,114,97,112,62,117,14, - 0,0,0,70,114,111,122,101,110,73,109,112,111,114,116,101, - 114,179,2,0,0,115,28,0,0,0,16,7,6,2,18,4, - 3,1,18,4,3,1,3,1,3,1,27,14,3,1,21,5, - 3,1,21,5,3,1,117,14,0,0,0,70,114,111,122,101, - 110,73,109,112,111,114,116,101,114,99,1,0,0,0,0,0, - 0,0,1,0,0,0,4,0,0,0,66,0,0,0,115,101, - 0,0,0,124,0,0,69,101,0,0,90,1,0,100,0,0, - 90,2,0,100,1,0,90,3,0,100,2,0,90,4,0,100, - 3,0,90,5,0,100,11,0,90,7,0,101,8,0,100,4, - 0,100,5,0,132,0,0,131,1,0,90,9,0,101,8,0, - 100,6,0,100,7,0,132,0,0,131,1,0,90,10,0,101, - 8,0,100,10,0,100,8,0,100,9,0,132,1,0,131,1, - 0,90,12,0,100,10,0,83,40,12,0,0,0,117,21,0, - 0,0,87,105,110,100,111,119,115,82,101,103,105,115,116,114, - 121,70,105,110,100,101,114,117,67,0,0,0,77,101,116,97, - 32,112,97,116,104,32,102,105,110,100,101,114,32,102,111,114, - 32,109,111,100,117,108,101,115,32,100,101,99,108,97,114,101, - 100,32,105,110,32,116,104,101,32,87,105,110,100,111,119,115, - 32,114,101,103,105,115,116,114,121,46,10,32,32,32,32,117, - 59,0,0,0,83,111,102,116,119,97,114,101,92,80,121,116, - 104,111,110,92,80,121,116,104,111,110,67,111,114,101,92,123, - 115,121,115,95,118,101,114,115,105,111,110,125,92,77,111,100, - 117,108,101,115,92,123,102,117,108,108,110,97,109,101,125,117, - 65,0,0,0,83,111,102,116,119,97,114,101,92,80,121,116, - 104,111,110,92,80,121,116,104,111,110,67,111,114,101,92,123, - 115,121,115,95,118,101,114,115,105,111,110,125,92,77,111,100, - 117,108,101,115,92,123,102,117,108,108,110,97,109,101,125,92, - 68,101,98,117,103,99,2,0,0,0,0,0,0,0,2,0, - 0,0,11,0,0,0,67,0,0,0,115,67,0,0,0,121, - 23,0,116,0,0,106,1,0,116,0,0,106,2,0,124,1, - 0,131,2,0,83,87,110,37,0,4,116,3,0,107,10,0, - 114,62,0,1,1,1,116,0,0,106,1,0,116,0,0,106, - 4,0,124,1,0,131,2,0,83,89,110,1,0,88,100,0, - 0,83,40,1,0,0,0,78,40,5,0,0,0,117,7,0, - 0,0,95,119,105,110,114,101,103,117,7,0,0,0,79,112, - 101,110,75,101,121,117,17,0,0,0,72,75,69,89,95,67, - 85,82,82,69,78,84,95,85,83,69,82,117,12,0,0,0, - 87,105,110,100,111,119,115,69,114,114,111,114,117,18,0,0, - 0,72,75,69,89,95,76,79,67,65,76,95,77,65,67,72, - 73,78,69,40,2,0,0,0,117,3,0,0,0,99,108,115, - 117,3,0,0,0,107,101,121,40,0,0,0,0,40,0,0, - 0,0,117,29,0,0,0,60,102,114,111,122,101,110,32,105, - 109,112,111,114,116,108,105,98,46,95,98,111,111,116,115,116, - 114,97,112,62,117,14,0,0,0,95,111,112,101,110,95,114, - 101,103,105,115,116,114,121,246,2,0,0,115,8,0,0,0, - 0,2,3,1,23,1,13,1,117,36,0,0,0,87,105,110, - 100,111,119,115,82,101,103,105,115,116,114,121,70,105,110,100, - 101,114,46,95,111,112,101,110,95,114,101,103,105,115,116,114, - 121,99,2,0,0,0,0,0,0,0,6,0,0,0,16,0, - 0,0,67,0,0,0,115,142,0,0,0,124,0,0,106,0, - 0,114,21,0,124,0,0,106,1,0,125,2,0,110,9,0, - 124,0,0,106,2,0,125,2,0,124,2,0,106,3,0,100, - 1,0,124,1,0,100,2,0,116,4,0,106,5,0,100,0, - 0,100,3,0,133,2,0,25,131,0,2,125,3,0,121,46, - 0,124,0,0,106,6,0,124,3,0,131,1,0,143,25,0, - 125,4,0,116,7,0,106,8,0,124,4,0,100,4,0,131, - 2,0,125,5,0,87,100,0,0,81,88,87,110,22,0,4, - 116,9,0,107,10,0,114,137,0,1,1,1,100,0,0,83, - 89,110,1,0,88,124,5,0,83,40,5,0,0,0,78,117, - 8,0,0,0,102,117,108,108,110,97,109,101,117,11,0,0, - 0,115,121,115,95,118,101,114,115,105,111,110,105,3,0,0, - 0,117,0,0,0,0,40,11,0,0,0,117,11,0,0,0, - 68,69,66,85,71,95,66,85,73,76,68,117,18,0,0,0, - 82,69,71,73,83,84,82,89,95,75,69,89,95,68,69,66, - 85,71,117,12,0,0,0,82,69,71,73,83,84,82,89,95, - 75,69,89,117,6,0,0,0,102,111,114,109,97,116,117,3, - 0,0,0,115,121,115,117,7,0,0,0,118,101,114,115,105, - 111,110,117,14,0,0,0,95,111,112,101,110,95,114,101,103, - 105,115,116,114,121,117,7,0,0,0,95,119,105,110,114,101, - 103,117,10,0,0,0,81,117,101,114,121,86,97,108,117,101, - 117,12,0,0,0,87,105,110,100,111,119,115,69,114,114,111, - 114,117,4,0,0,0,78,111,110,101,40,6,0,0,0,117, - 3,0,0,0,99,108,115,117,8,0,0,0,102,117,108,108, - 110,97,109,101,117,12,0,0,0,114,101,103,105,115,116,114, - 121,95,107,101,121,117,3,0,0,0,107,101,121,117,4,0, - 0,0,104,107,101,121,117,8,0,0,0,102,105,108,101,112, - 97,116,104,40,0,0,0,0,40,0,0,0,0,117,29,0, - 0,0,60,102,114,111,122,101,110,32,105,109,112,111,114,116, - 108,105,98,46,95,98,111,111,116,115,116,114,97,112,62,117, - 16,0,0,0,95,115,101,97,114,99,104,95,114,101,103,105, - 115,116,114,121,253,2,0,0,115,22,0,0,0,0,2,9, - 1,12,2,9,1,15,1,22,1,3,1,18,1,28,1,13, - 1,9,1,117,38,0,0,0,87,105,110,100,111,119,115,82, - 101,103,105,115,116,114,121,70,105,110,100,101,114,46,95,115, - 101,97,114,99,104,95,114,101,103,105,115,116,114,121,99,3, - 0,0,0,0,0,0,0,7,0,0,0,12,0,0,0,67, - 0,0,0,115,140,0,0,0,124,0,0,106,0,0,124,1, - 0,131,1,0,125,3,0,124,3,0,100,1,0,107,8,0, - 114,31,0,100,1,0,83,121,17,0,116,2,0,106,3,0, - 124,3,0,131,1,0,1,87,110,22,0,4,116,4,0,107, - 10,0,114,72,0,1,1,1,100,1,0,83,89,110,1,0, - 88,120,60,0,116,5,0,131,0,0,68,93,49,0,92,3, - 0,125,4,0,125,5,0,125,6,0,124,3,0,106,6,0, - 116,7,0,124,5,0,131,1,0,131,1,0,114,83,0,124, - 4,0,124,1,0,124,3,0,131,2,0,83,113,83,0,87, - 100,1,0,83,40,2,0,0,0,117,34,0,0,0,70,105, - 110,100,32,109,111,100,117,108,101,32,110,97,109,101,100,32, - 105,110,32,116,104,101,32,114,101,103,105,115,116,114,121,46, - 78,40,8,0,0,0,117,16,0,0,0,95,115,101,97,114, - 99,104,95,114,101,103,105,115,116,114,121,117,4,0,0,0, - 78,111,110,101,117,3,0,0,0,95,111,115,117,4,0,0, - 0,115,116,97,116,117,7,0,0,0,79,83,69,114,114,111, - 114,117,27,0,0,0,95,103,101,116,95,115,117,112,112,111, - 114,116,101,100,95,102,105,108,101,95,108,111,97,100,101,114, - 115,117,8,0,0,0,101,110,100,115,119,105,116,104,117,5, - 0,0,0,116,117,112,108,101,40,7,0,0,0,117,3,0, - 0,0,99,108,115,117,8,0,0,0,102,117,108,108,110,97, - 109,101,117,4,0,0,0,112,97,116,104,117,8,0,0,0, - 102,105,108,101,112,97,116,104,117,6,0,0,0,108,111,97, - 100,101,114,117,8,0,0,0,115,117,102,102,105,120,101,115, - 117,1,0,0,0,95,40,0,0,0,0,40,0,0,0,0, - 117,29,0,0,0,60,102,114,111,122,101,110,32,105,109,112, - 111,114,116,108,105,98,46,95,98,111,111,116,115,116,114,97, - 112,62,117,11,0,0,0,102,105,110,100,95,109,111,100,117, - 108,101,12,3,0,0,115,20,0,0,0,0,3,15,1,12, - 1,4,1,3,1,17,1,13,1,9,1,25,1,21,1,117, - 33,0,0,0,87,105,110,100,111,119,115,82,101,103,105,115, - 116,114,121,70,105,110,100,101,114,46,102,105,110,100,95,109, - 111,100,117,108,101,78,70,40,13,0,0,0,117,8,0,0, - 0,95,95,110,97,109,101,95,95,117,10,0,0,0,95,95, - 109,111,100,117,108,101,95,95,117,12,0,0,0,95,95,113, - 117,97,108,110,97,109,101,95,95,117,7,0,0,0,95,95, - 100,111,99,95,95,117,12,0,0,0,82,69,71,73,83,84, - 82,89,95,75,69,89,117,18,0,0,0,82,69,71,73,83, - 84,82,89,95,75,69,89,95,68,69,66,85,71,117,5,0, - 0,0,70,97,108,115,101,117,11,0,0,0,68,69,66,85, - 71,95,66,85,73,76,68,117,11,0,0,0,99,108,97,115, - 115,109,101,116,104,111,100,117,14,0,0,0,95,111,112,101, - 110,95,114,101,103,105,115,116,114,121,117,16,0,0,0,95, - 115,101,97,114,99,104,95,114,101,103,105,115,116,114,121,117, - 4,0,0,0,78,111,110,101,117,11,0,0,0,102,105,110, - 100,95,109,111,100,117,108,101,40,1,0,0,0,117,10,0, - 0,0,95,95,108,111,99,97,108,115,95,95,40,0,0,0, - 0,40,0,0,0,0,117,29,0,0,0,60,102,114,111,122, - 101,110,32,105,109,112,111,114,116,108,105,98,46,95,98,111, - 111,116,115,116,114,97,112,62,117,21,0,0,0,87,105,110, - 100,111,119,115,82,101,103,105,115,116,114,121,70,105,110,100, - 101,114,233,2,0,0,115,16,0,0,0,16,3,6,3,6, - 3,6,2,6,2,18,7,18,15,3,1,117,21,0,0,0, - 87,105,110,100,111,119,115,82,101,103,105,115,116,114,121,70, - 105,110,100,101,114,99,1,0,0,0,0,0,0,0,1,0, - 0,0,5,0,0,0,66,0,0,0,115,74,0,0,0,124, - 0,0,69,101,0,0,90,1,0,100,0,0,90,2,0,100, - 1,0,90,3,0,100,2,0,100,3,0,132,0,0,90,4, - 0,100,4,0,100,5,0,132,0,0,90,5,0,101,6,0, - 100,6,0,100,10,0,100,7,0,100,8,0,132,0,1,131, - 1,0,90,8,0,100,9,0,83,40,11,0,0,0,117,13, - 0,0,0,95,76,111,97,100,101,114,66,97,115,105,99,115, - 117,83,0,0,0,66,97,115,101,32,99,108,97,115,115,32, - 111,102,32,99,111,109,109,111,110,32,99,111,100,101,32,110, - 101,101,100,101,100,32,98,121,32,98,111,116,104,32,83,111, - 117,114,99,101,76,111,97,100,101,114,32,97,110,100,10,32, - 32,32,32,83,111,117,114,99,101,108,101,115,115,70,105,108, - 101,76,111,97,100,101,114,46,99,2,0,0,0,0,0,0, - 0,5,0,0,0,3,0,0,0,67,0,0,0,115,88,0, - 0,0,116,0,0,124,0,0,106,1,0,124,1,0,131,1, - 0,131,1,0,100,1,0,25,125,2,0,124,2,0,106,2, - 0,100,2,0,100,1,0,131,2,0,100,3,0,25,125,3, - 0,124,1,0,106,3,0,100,2,0,131,1,0,100,4,0, - 25,125,4,0,124,3,0,100,5,0,107,2,0,111,87,0, - 124,4,0,100,5,0,107,3,0,83,40,6,0,0,0,117, - 141,0,0,0,67,111,110,99,114,101,116,101,32,105,109,112, - 108,101,109,101,110,116,97,116,105,111,110,32,111,102,32,73, - 110,115,112,101,99,116,76,111,97,100,101,114,46,105,115,95, - 112,97,99,107,97,103,101,32,98,121,32,99,104,101,99,107, - 105,110,103,32,105,102,10,32,32,32,32,32,32,32,32,116, - 104,101,32,112,97,116,104,32,114,101,116,117,114,110,101,100, - 32,98,121,32,103,101,116,95,102,105,108,101,110,97,109,101, - 32,104,97,115,32,97,32,102,105,108,101,110,97,109,101,32, - 111,102,32,39,95,95,105,110,105,116,95,95,46,112,121,39, - 46,105,1,0,0,0,117,1,0,0,0,46,105,0,0,0, - 0,105,2,0,0,0,117,8,0,0,0,95,95,105,110,105, - 116,95,95,40,4,0,0,0,117,11,0,0,0,95,112,97, - 116,104,95,115,112,108,105,116,117,12,0,0,0,103,101,116, - 95,102,105,108,101,110,97,109,101,117,6,0,0,0,114,115, - 112,108,105,116,117,10,0,0,0,114,112,97,114,116,105,116, - 105,111,110,40,5,0,0,0,117,4,0,0,0,115,101,108, - 102,117,8,0,0,0,102,117,108,108,110,97,109,101,117,8, - 0,0,0,102,105,108,101,110,97,109,101,117,13,0,0,0, - 102,105,108,101,110,97,109,101,95,98,97,115,101,117,9,0, - 0,0,116,97,105,108,95,110,97,109,101,40,0,0,0,0, - 40,0,0,0,0,117,29,0,0,0,60,102,114,111,122,101, - 110,32,105,109,112,111,114,116,108,105,98,46,95,98,111,111, - 116,115,116,114,97,112,62,117,10,0,0,0,105,115,95,112, - 97,99,107,97,103,101,32,3,0,0,115,8,0,0,0,0, - 3,25,1,22,1,19,1,117,24,0,0,0,95,76,111,97, - 100,101,114,66,97,115,105,99,115,46,105,115,95,112,97,99, - 107,97,103,101,99,5,0,0,0,0,0,0,0,12,0,0, - 0,22,0,0,0,67,0,0,0,115,198,1,0,0,124,2, - 0,100,1,0,100,2,0,133,2,0,25,125,5,0,124,2, - 0,100,2,0,100,3,0,133,2,0,25,125,6,0,124,2, - 0,100,3,0,100,4,0,133,2,0,25,125,7,0,124,5, - 0,116,0,0,107,3,0,114,105,0,100,5,0,106,1,0, - 124,1,0,124,5,0,131,2,0,125,8,0,116,2,0,124, - 8,0,100,6,0,124,1,0,100,7,0,124,3,0,131,1, - 2,130,1,0,110,116,0,116,3,0,124,6,0,131,1,0, - 100,2,0,107,3,0,114,163,0,100,8,0,106,1,0,124, - 1,0,131,1,0,125,9,0,116,4,0,124,9,0,131,1, - 0,1,116,5,0,124,9,0,131,1,0,130,1,0,110,58, - 0,116,3,0,124,7,0,131,1,0,100,2,0,107,3,0, - 114,221,0,100,9,0,106,1,0,124,1,0,131,1,0,125, - 9,0,116,4,0,124,9,0,131,1,0,1,116,5,0,124, - 9,0,131,1,0,130,1,0,110,0,0,124,4,0,100,1, - 0,107,9,0,114,184,1,121,20,0,116,7,0,124,4,0, - 100,10,0,25,131,1,0,125,10,0,87,110,18,0,4,116, - 8,0,107,10,0,114,17,1,1,1,1,89,110,71,0,88, - 116,9,0,124,6,0,131,1,0,124,10,0,107,3,0,114, - 88,1,100,11,0,106,1,0,124,1,0,131,1,0,125,9, - 0,116,4,0,124,9,0,131,1,0,1,116,2,0,124,9, - 0,100,6,0,124,1,0,100,7,0,124,3,0,131,1,2, - 130,1,0,110,0,0,121,18,0,124,4,0,100,12,0,25, - 100,13,0,64,125,11,0,87,110,18,0,4,116,8,0,107, - 10,0,114,126,1,1,1,1,89,113,184,1,88,116,9,0, - 124,7,0,131,1,0,124,11,0,107,3,0,114,184,1,116, - 2,0,100,11,0,106,1,0,124,1,0,131,1,0,100,6, - 0,124,1,0,100,7,0,124,3,0,131,1,2,130,1,0, - 113,184,1,110,0,0,124,2,0,100,4,0,100,1,0,133, - 2,0,25,83,40,14,0,0,0,117,193,0,0,0,82,101, - 116,117,114,110,32,116,104,101,32,109,97,114,115,104,97,108, - 108,101,100,32,98,121,116,101,115,32,102,114,111,109,32,98, - 121,116,101,99,111,100,101,44,32,118,101,114,105,102,121,105, - 110,103,32,116,104,101,32,109,97,103,105,99,10,32,32,32, - 32,32,32,32,32,110,117,109,98,101,114,44,32,116,105,109, - 101,115,116,97,109,112,32,97,110,100,32,115,111,117,114,99, - 101,32,115,105,122,101,32,97,108,111,110,103,32,116,104,101, - 32,119,97,121,46,10,10,32,32,32,32,32,32,32,32,73, - 102,32,115,111,117,114,99,101,95,115,116,97,116,115,32,105, - 115,32,78,111,110,101,32,116,104,101,110,32,115,107,105,112, - 32,116,104,101,32,116,105,109,101,115,116,97,109,112,32,99, - 104,101,99,107,46,10,10,32,32,32,32,32,32,32,32,78, - 105,4,0,0,0,105,8,0,0,0,105,12,0,0,0,117, - 30,0,0,0,98,97,100,32,109,97,103,105,99,32,110,117, - 109,98,101,114,32,105,110,32,123,33,114,125,58,32,123,33, - 114,125,117,4,0,0,0,110,97,109,101,117,4,0,0,0, - 112,97,116,104,117,19,0,0,0,98,97,100,32,116,105,109, - 101,115,116,97,109,112,32,105,110,32,123,125,117,14,0,0, - 0,98,97,100,32,115,105,122,101,32,105,110,32,123,125,117, - 5,0,0,0,109,116,105,109,101,117,24,0,0,0,98,121, - 116,101,99,111,100,101,32,105,115,32,115,116,97,108,101,32, - 102,111,114,32,123,125,117,4,0,0,0,115,105,122,101,108, - 3,0,0,0,255,127,255,127,3,0,40,10,0,0,0,117, - 12,0,0,0,95,77,65,71,73,67,95,66,89,84,69,83, - 117,6,0,0,0,102,111,114,109,97,116,117,11,0,0,0, - 73,109,112,111,114,116,69,114,114,111,114,117,3,0,0,0, - 108,101,110,117,16,0,0,0,95,118,101,114,98,111,115,101, - 95,109,101,115,115,97,103,101,117,8,0,0,0,69,79,70, - 69,114,114,111,114,117,4,0,0,0,78,111,110,101,117,3, - 0,0,0,105,110,116,117,8,0,0,0,75,101,121,69,114, - 114,111,114,117,7,0,0,0,95,114,95,108,111,110,103,40, - 12,0,0,0,117,4,0,0,0,115,101,108,102,117,8,0, - 0,0,102,117,108,108,110,97,109,101,117,4,0,0,0,100, - 97,116,97,117,13,0,0,0,98,121,116,101,99,111,100,101, - 95,112,97,116,104,117,12,0,0,0,115,111,117,114,99,101, - 95,115,116,97,116,115,117,5,0,0,0,109,97,103,105,99, - 117,13,0,0,0,114,97,119,95,116,105,109,101,115,116,97, - 109,112,117,8,0,0,0,114,97,119,95,115,105,122,101,117, - 3,0,0,0,109,115,103,117,7,0,0,0,109,101,115,115, - 97,103,101,117,12,0,0,0,115,111,117,114,99,101,95,109, - 116,105,109,101,117,11,0,0,0,115,111,117,114,99,101,95, - 115,105,122,101,40,0,0,0,0,40,0,0,0,0,117,29, - 0,0,0,60,102,114,111,122,101,110,32,105,109,112,111,114, - 116,108,105,98,46,95,98,111,111,116,115,116,114,97,112,62, - 117,20,0,0,0,95,98,121,116,101,115,95,102,114,111,109, - 95,98,121,116,101,99,111,100,101,40,3,0,0,115,66,0, - 0,0,0,7,16,1,16,1,16,1,12,1,18,1,27,1, - 18,1,15,1,10,1,15,1,18,1,15,1,10,1,15,1, - 12,1,3,1,20,1,13,1,5,2,18,1,15,1,10,1, - 15,1,12,1,3,1,18,1,13,1,5,2,18,1,3,1, - 15,1,21,3,117,34,0,0,0,95,76,111,97,100,101,114, - 66,97,115,105,99,115,46,95,98,121,116,101,115,95,102,114, - 111,109,95,98,121,116,101,99,111,100,101,117,10,0,0,0, - 115,111,117,114,99,101,108,101,115,115,99,2,0,0,0,1, - 0,0,0,5,0,0,0,12,0,0,0,67,0,0,0,115, - 227,0,0,0,124,1,0,106,0,0,125,3,0,124,0,0, - 106,1,0,124,3,0,131,1,0,125,4,0,124,0,0,106, - 2,0,124,3,0,131,1,0,124,1,0,95,3,0,124,2, - 0,115,106,0,121,22,0,116,4,0,124,1,0,106,3,0, - 131,1,0,124,1,0,95,5,0,87,113,118,0,4,116,6, - 0,107,10,0,114,102,0,1,1,1,124,1,0,106,3,0, - 124,1,0,95,5,0,89,113,118,0,88,110,12,0,124,1, - 0,106,3,0,124,1,0,95,5,0,124,3,0,124,1,0, - 95,7,0,124,0,0,106,8,0,124,3,0,131,1,0,114, - 170,0,116,9,0,124,1,0,106,3,0,131,1,0,100,1, - 0,25,103,1,0,124,1,0,95,10,0,110,25,0,124,1, - 0,106,7,0,106,11,0,100,2,0,131,1,0,100,1,0, - 25,124,1,0,95,7,0,124,0,0,124,1,0,95,12,0, - 116,13,0,116,14,0,124,4,0,124,1,0,106,15,0,131, - 3,0,1,124,1,0,83,40,3,0,0,0,117,82,0,0, - 0,72,101,108,112,101,114,32,102,111,114,32,108,111,97,100, - 95,109,111,100,117,108,101,32,97,98,108,101,32,116,111,32, - 104,97,110,100,108,101,32,101,105,116,104,101,114,32,115,111, - 117,114,99,101,32,111,114,32,115,111,117,114,99,101,108,101, - 115,115,10,32,32,32,32,32,32,32,32,108,111,97,100,105, - 110,103,46,105,0,0,0,0,117,1,0,0,0,46,40,16, - 0,0,0,117,8,0,0,0,95,95,110,97,109,101,95,95, - 117,8,0,0,0,103,101,116,95,99,111,100,101,117,12,0, - 0,0,103,101,116,95,102,105,108,101,110,97,109,101,117,8, - 0,0,0,95,95,102,105,108,101,95,95,117,17,0,0,0, - 99,97,99,104,101,95,102,114,111,109,95,115,111,117,114,99, - 101,117,10,0,0,0,95,95,99,97,99,104,101,100,95,95, - 117,19,0,0,0,78,111,116,73,109,112,108,101,109,101,110, - 116,101,100,69,114,114,111,114,117,11,0,0,0,95,95,112, - 97,99,107,97,103,101,95,95,117,10,0,0,0,105,115,95, - 112,97,99,107,97,103,101,117,11,0,0,0,95,112,97,116, - 104,95,115,112,108,105,116,117,8,0,0,0,95,95,112,97, - 116,104,95,95,117,10,0,0,0,114,112,97,114,116,105,116, - 105,111,110,117,10,0,0,0,95,95,108,111,97,100,101,114, - 95,95,117,25,0,0,0,95,99,97,108,108,95,119,105,116, - 104,95,102,114,97,109,101,115,95,114,101,109,111,118,101,100, - 117,4,0,0,0,101,120,101,99,117,8,0,0,0,95,95, - 100,105,99,116,95,95,40,5,0,0,0,117,4,0,0,0, - 115,101,108,102,117,6,0,0,0,109,111,100,117,108,101,117, - 10,0,0,0,115,111,117,114,99,101,108,101,115,115,117,4, - 0,0,0,110,97,109,101,117,11,0,0,0,99,111,100,101, - 95,111,98,106,101,99,116,40,0,0,0,0,40,0,0,0, - 0,117,29,0,0,0,60,102,114,111,122,101,110,32,105,109, - 112,111,114,116,108,105,98,46,95,98,111,111,116,115,116,114, - 97,112,62,117,12,0,0,0,95,108,111,97,100,95,109,111, - 100,117,108,101,85,3,0,0,115,32,0,0,0,0,4,9, - 1,15,1,18,1,6,1,3,1,22,1,13,1,20,2,12, - 1,9,1,15,1,28,2,25,1,9,1,19,1,117,26,0, - 0,0,95,76,111,97,100,101,114,66,97,115,105,99,115,46, - 95,108,111,97,100,95,109,111,100,117,108,101,78,70,40,9, - 0,0,0,117,8,0,0,0,95,95,110,97,109,101,95,95, - 117,10,0,0,0,95,95,109,111,100,117,108,101,95,95,117, - 12,0,0,0,95,95,113,117,97,108,110,97,109,101,95,95, - 117,7,0,0,0,95,95,100,111,99,95,95,117,10,0,0, - 0,105,115,95,112,97,99,107,97,103,101,117,20,0,0,0, - 95,98,121,116,101,115,95,102,114,111,109,95,98,121,116,101, - 99,111,100,101,117,17,0,0,0,109,111,100,117,108,101,95, - 102,111,114,95,108,111,97,100,101,114,117,5,0,0,0,70, - 97,108,115,101,117,12,0,0,0,95,108,111,97,100,95,109, - 111,100,117,108,101,40,1,0,0,0,117,10,0,0,0,95, - 95,108,111,99,97,108,115,95,95,40,0,0,0,0,40,0, - 0,0,0,117,29,0,0,0,60,102,114,111,122,101,110,32, - 105,109,112,111,114,116,108,105,98,46,95,98,111,111,116,115, - 116,114,97,112,62,117,13,0,0,0,95,76,111,97,100,101, - 114,66,97,115,105,99,115,27,3,0,0,115,10,0,0,0, - 16,3,6,2,12,8,12,45,6,1,117,13,0,0,0,95, - 76,111,97,100,101,114,66,97,115,105,99,115,99,1,0,0, - 0,0,0,0,0,1,0,0,0,2,0,0,0,66,0,0, - 0,115,104,0,0,0,124,0,0,69,101,0,0,90,1,0, - 100,0,0,90,2,0,100,1,0,100,2,0,132,0,0,90, - 3,0,100,3,0,100,4,0,132,0,0,90,4,0,100,5, - 0,100,6,0,132,0,0,90,5,0,100,7,0,100,8,0, - 132,0,0,90,6,0,100,9,0,100,10,0,132,0,0,90, - 7,0,100,11,0,100,12,0,132,0,0,90,8,0,100,13, - 0,100,14,0,132,0,0,90,9,0,100,15,0,83,40,16, - 0,0,0,117,12,0,0,0,83,111,117,114,99,101,76,111, - 97,100,101,114,99,2,0,0,0,0,0,0,0,2,0,0, - 0,1,0,0,0,67,0,0,0,115,10,0,0,0,116,0, - 0,130,1,0,100,1,0,83,40,2,0,0,0,117,121,0, - 0,0,79,112,116,105,111,110,97,108,32,109,101,116,104,111, - 100,32,116,104,97,116,32,114,101,116,117,114,110,115,32,116, - 104,101,32,109,111,100,105,102,105,99,97,116,105,111,110,32, - 116,105,109,101,32,40,97,110,32,105,110,116,41,32,102,111, - 114,32,116,104,101,10,32,32,32,32,32,32,32,32,115,112, - 101,99,105,102,105,101,100,32,112,97,116,104,44,32,119,104, - 101,114,101,32,112,97,116,104,32,105,115,32,97,32,115,116, - 114,46,10,32,32,32,32,32,32,32,32,78,40,1,0,0, - 0,117,19,0,0,0,78,111,116,73,109,112,108,101,109,101, - 110,116,101,100,69,114,114,111,114,40,2,0,0,0,117,4, - 0,0,0,115,101,108,102,117,4,0,0,0,112,97,116,104, - 40,0,0,0,0,40,0,0,0,0,117,29,0,0,0,60, - 102,114,111,122,101,110,32,105,109,112,111,114,116,108,105,98, - 46,95,98,111,111,116,115,116,114,97,112,62,117,10,0,0, - 0,112,97,116,104,95,109,116,105,109,101,111,3,0,0,115, - 2,0,0,0,0,4,117,23,0,0,0,83,111,117,114,99, - 101,76,111,97,100,101,114,46,112,97,116,104,95,109,116,105, - 109,101,99,2,0,0,0,0,0,0,0,2,0,0,0,3, - 0,0,0,67,0,0,0,115,20,0,0,0,105,1,0,124, - 0,0,106,0,0,124,1,0,131,1,0,100,1,0,54,83, - 40,2,0,0,0,117,114,1,0,0,79,112,116,105,111,110, - 97,108,32,109,101,116,104,111,100,32,114,101,116,117,114,110, - 105,110,103,32,97,32,109,101,116,97,100,97,116,97,32,100, - 105,99,116,32,102,111,114,32,116,104,101,32,115,112,101,99, - 105,102,105,101,100,32,112,97,116,104,10,32,32,32,32,32, - 32,32,32,116,111,32,98,121,32,116,104,101,32,112,97,116, - 104,32,40,115,116,114,41,46,10,32,32,32,32,32,32,32, - 32,80,111,115,115,105,98,108,101,32,107,101,121,115,58,10, - 32,32,32,32,32,32,32,32,45,32,39,109,116,105,109,101, - 39,32,40,109,97,110,100,97,116,111,114,121,41,32,105,115, - 32,116,104,101,32,110,117,109,101,114,105,99,32,116,105,109, - 101,115,116,97,109,112,32,111,102,32,108,97,115,116,32,115, - 111,117,114,99,101,10,32,32,32,32,32,32,32,32,32,32, - 99,111,100,101,32,109,111,100,105,102,105,99,97,116,105,111, - 110,59,10,32,32,32,32,32,32,32,32,45,32,39,115,105, - 122,101,39,32,40,111,112,116,105,111,110,97,108,41,32,105, - 115,32,116,104,101,32,115,105,122,101,32,105,110,32,98,121, - 116,101,115,32,111,102,32,116,104,101,32,115,111,117,114,99, - 101,32,99,111,100,101,46,10,10,32,32,32,32,32,32,32, - 32,73,109,112,108,101,109,101,110,116,105,110,103,32,116,104, - 105,115,32,109,101,116,104,111,100,32,97,108,108,111,119,115, - 32,116,104,101,32,108,111,97,100,101,114,32,116,111,32,114, - 101,97,100,32,98,121,116,101,99,111,100,101,32,102,105,108, - 101,115,46,10,32,32,32,32,32,32,32,32,117,5,0,0, - 0,109,116,105,109,101,40,1,0,0,0,117,10,0,0,0, - 112,97,116,104,95,109,116,105,109,101,40,2,0,0,0,117, - 4,0,0,0,115,101,108,102,117,4,0,0,0,112,97,116, - 104,40,0,0,0,0,40,0,0,0,0,117,29,0,0,0, - 60,102,114,111,122,101,110,32,105,109,112,111,114,116,108,105, - 98,46,95,98,111,111,116,115,116,114,97,112,62,117,10,0, - 0,0,112,97,116,104,95,115,116,97,116,115,117,3,0,0, - 115,2,0,0,0,0,10,117,23,0,0,0,83,111,117,114, - 99,101,76,111,97,100,101,114,46,112,97,116,104,95,115,116, - 97,116,115,99,4,0,0,0,0,0,0,0,4,0,0,0, - 3,0,0,0,67,0,0,0,115,16,0,0,0,124,0,0, - 106,0,0,124,2,0,124,3,0,131,2,0,83,40,1,0, - 0,0,117,228,0,0,0,79,112,116,105,111,110,97,108,32, - 109,101,116,104,111,100,32,119,104,105,99,104,32,119,114,105, - 116,101,115,32,100,97,116,97,32,40,98,121,116,101,115,41, - 32,116,111,32,97,32,102,105,108,101,32,112,97,116,104,32, - 40,97,32,115,116,114,41,46,10,10,32,32,32,32,32,32, - 32,32,73,109,112,108,101,109,101,110,116,105,110,103,32,116, - 104,105,115,32,109,101,116,104,111,100,32,97,108,108,111,119, - 115,32,102,111,114,32,116,104,101,32,119,114,105,116,105,110, - 103,32,111,102,32,98,121,116,101,99,111,100,101,32,102,105, - 108,101,115,46,10,10,32,32,32,32,32,32,32,32,84,104, - 101,32,115,111,117,114,99,101,32,112,97,116,104,32,105,115, - 32,110,101,101,100,101,100,32,105,110,32,111,114,100,101,114, - 32,116,111,32,99,111,114,114,101,99,116,108,121,32,116,114, - 97,110,115,102,101,114,32,112,101,114,109,105,115,115,105,111, - 110,115,10,32,32,32,32,32,32,32,32,40,1,0,0,0, - 117,8,0,0,0,115,101,116,95,100,97,116,97,40,4,0, - 0,0,117,4,0,0,0,115,101,108,102,117,11,0,0,0, - 115,111,117,114,99,101,95,112,97,116,104,117,10,0,0,0, - 99,97,99,104,101,95,112,97,116,104,117,4,0,0,0,100, - 97,116,97,40,0,0,0,0,40,0,0,0,0,117,29,0, - 0,0,60,102,114,111,122,101,110,32,105,109,112,111,114,116, - 108,105,98,46,95,98,111,111,116,115,116,114,97,112,62,117, - 15,0,0,0,95,99,97,99,104,101,95,98,121,116,101,99, - 111,100,101,129,3,0,0,115,2,0,0,0,0,8,117,28, - 0,0,0,83,111,117,114,99,101,76,111,97,100,101,114,46, - 95,99,97,99,104,101,95,98,121,116,101,99,111,100,101,99, - 3,0,0,0,0,0,0,0,3,0,0,0,1,0,0,0, - 67,0,0,0,115,10,0,0,0,116,0,0,130,1,0,100, - 1,0,83,40,2,0,0,0,117,151,0,0,0,79,112,116, - 105,111,110,97,108,32,109,101,116,104,111,100,32,119,104,105, - 99,104,32,119,114,105,116,101,115,32,100,97,116,97,32,40, - 98,121,116,101,115,41,32,116,111,32,97,32,102,105,108,101, - 32,112,97,116,104,32,40,97,32,115,116,114,41,46,10,10, - 32,32,32,32,32,32,32,32,73,109,112,108,101,109,101,110, - 116,105,110,103,32,116,104,105,115,32,109,101,116,104,111,100, - 32,97,108,108,111,119,115,32,102,111,114,32,116,104,101,32, - 119,114,105,116,105,110,103,32,111,102,32,98,121,116,101,99, - 111,100,101,32,102,105,108,101,115,46,10,10,32,32,32,32, - 32,32,32,32,78,40,1,0,0,0,117,19,0,0,0,78, - 111,116,73,109,112,108,101,109,101,110,116,101,100,69,114,114, - 111,114,40,3,0,0,0,117,4,0,0,0,115,101,108,102, - 117,4,0,0,0,112,97,116,104,117,4,0,0,0,100,97, - 116,97,40,0,0,0,0,40,0,0,0,0,117,29,0,0, - 0,60,102,114,111,122,101,110,32,105,109,112,111,114,116,108, - 105,98,46,95,98,111,111,116,115,116,114,97,112,62,117,8, - 0,0,0,115,101,116,95,100,97,116,97,139,3,0,0,115, - 2,0,0,0,0,6,117,21,0,0,0,83,111,117,114,99, - 101,76,111,97,100,101,114,46,115,101,116,95,100,97,116,97, - 99,2,0,0,0,0,0,0,0,9,0,0,0,44,0,0, - 0,67,0,0,0,115,62,1,0,0,100,1,0,100,2,0, - 108,0,0,125,2,0,124,0,0,106,1,0,124,1,0,131, - 1,0,125,3,0,121,19,0,124,0,0,106,2,0,124,3, - 0,131,1,0,125,4,0,87,110,58,0,4,116,3,0,107, - 10,0,114,106,0,1,125,5,0,1,122,26,0,116,4,0, - 100,3,0,100,4,0,124,1,0,131,1,1,124,5,0,130, - 2,0,87,89,100,2,0,100,2,0,125,5,0,126,5,0, - 88,110,1,0,88,116,5,0,106,6,0,124,4,0,131,1, - 0,106,7,0,125,6,0,121,19,0,124,2,0,106,8,0, - 124,6,0,131,1,0,125,7,0,87,110,58,0,4,116,9, - 0,107,10,0,114,204,0,1,125,5,0,1,122,26,0,116, - 4,0,100,5,0,100,4,0,124,1,0,131,1,1,124,5, - 0,130,2,0,87,89,100,2,0,100,2,0,125,5,0,126, - 5,0,88,110,1,0,88,116,5,0,106,10,0,100,2,0, - 100,7,0,131,2,0,125,8,0,121,30,0,124,8,0,106, - 13,0,124,4,0,106,13,0,124,7,0,100,1,0,25,131, - 1,0,131,1,0,83,87,110,58,0,4,116,14,0,107,10, - 0,114,57,1,1,125,5,0,1,122,26,0,116,4,0,100, - 6,0,100,4,0,124,1,0,131,1,1,124,5,0,130,2, - 0,87,89,100,2,0,100,2,0,125,5,0,126,5,0,88, - 110,1,0,88,100,2,0,83,40,8,0,0,0,117,52,0, - 0,0,67,111,110,99,114,101,116,101,32,105,109,112,108,101, - 109,101,110,116,97,116,105,111,110,32,111,102,32,73,110,115, - 112,101,99,116,76,111,97,100,101,114,46,103,101,116,95,115, - 111,117,114,99,101,46,105,0,0,0,0,78,117,39,0,0, - 0,115,111,117,114,99,101,32,110,111,116,32,97,118,97,105, - 108,97,98,108,101,32,116,104,114,111,117,103,104,32,103,101, - 116,95,100,97,116,97,40,41,117,4,0,0,0,110,97,109, - 101,117,25,0,0,0,70,97,105,108,101,100,32,116,111,32, - 100,101,116,101,99,116,32,101,110,99,111,100,105,110,103,117, - 28,0,0,0,70,97,105,108,101,100,32,116,111,32,100,101, - 99,111,100,101,32,115,111,117,114,99,101,32,102,105,108,101, - 84,40,15,0,0,0,117,8,0,0,0,116,111,107,101,110, - 105,122,101,117,12,0,0,0,103,101,116,95,102,105,108,101, - 110,97,109,101,117,8,0,0,0,103,101,116,95,100,97,116, - 97,117,7,0,0,0,73,79,69,114,114,111,114,117,11,0, - 0,0,73,109,112,111,114,116,69,114,114,111,114,117,3,0, - 0,0,95,105,111,117,7,0,0,0,66,121,116,101,115,73, - 79,117,8,0,0,0,114,101,97,100,108,105,110,101,117,15, - 0,0,0,100,101,116,101,99,116,95,101,110,99,111,100,105, - 110,103,117,11,0,0,0,83,121,110,116,97,120,69,114,114, - 111,114,117,25,0,0,0,73,110,99,114,101,109,101,110,116, - 97,108,78,101,119,108,105,110,101,68,101,99,111,100,101,114, - 117,4,0,0,0,78,111,110,101,117,4,0,0,0,84,114, - 117,101,117,6,0,0,0,100,101,99,111,100,101,117,18,0, - 0,0,85,110,105,99,111,100,101,68,101,99,111,100,101,69, - 114,114,111,114,40,9,0,0,0,117,4,0,0,0,115,101, - 108,102,117,8,0,0,0,102,117,108,108,110,97,109,101,117, - 8,0,0,0,116,111,107,101,110,105,122,101,117,4,0,0, - 0,112,97,116,104,117,12,0,0,0,115,111,117,114,99,101, - 95,98,121,116,101,115,117,3,0,0,0,101,120,99,117,10, - 0,0,0,114,101,97,100,115,111,117,114,99,101,117,8,0, - 0,0,101,110,99,111,100,105,110,103,117,15,0,0,0,110, - 101,119,108,105,110,101,95,100,101,99,111,100,101,114,40,0, - 0,0,0,40,0,0,0,0,117,29,0,0,0,60,102,114, - 111,122,101,110,32,105,109,112,111,114,116,108,105,98,46,95, - 98,111,111,116,115,116,114,97,112,62,117,10,0,0,0,103, - 101,116,95,115,111,117,114,99,101,148,3,0,0,115,38,0, - 0,0,0,2,12,1,15,1,3,1,19,1,18,1,9,1, - 31,1,18,1,3,1,19,1,18,1,9,1,31,1,18,1, - 3,1,30,1,18,1,9,1,117,23,0,0,0,83,111,117, - 114,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,12,0,0, - 0,45,0,0,0,67,0,0,0,115,52,2,0,0,124,0, - 0,106,0,0,124,1,0,131,1,0,125,2,0,100,10,0, - 125,3,0,121,16,0,116,2,0,124,2,0,131,1,0,125, - 4,0,87,110,24,0,4,116,3,0,107,10,0,114,63,0, - 1,1,1,100,10,0,125,4,0,89,110,14,1,88,121,19, - 0,124,0,0,106,4,0,124,2,0,131,1,0,125,5,0, - 87,110,18,0,4,116,3,0,107,10,0,114,103,0,1,1, - 1,89,110,230,0,88,116,5,0,124,5,0,100,1,0,25, - 131,1,0,125,3,0,121,19,0,124,0,0,106,6,0,124, - 4,0,131,1,0,125,6,0,87,110,18,0,4,116,7,0, - 107,10,0,114,159,0,1,1,1,89,110,174,0,88,121,28, - 0,124,0,0,106,8,0,124,1,0,124,6,0,124,4,0, - 124,5,0,131,4,0,125,7,0,87,110,24,0,4,116,9, - 0,116,10,0,102,2,0,107,10,0,114,214,0,1,1,1, - 89,110,119,0,88,116,11,0,100,2,0,124,4,0,124,2, - 0,131,3,0,1,116,12,0,106,13,0,124,7,0,131,1, - 0,125,8,0,116,14,0,124,8,0,116,15,0,131,2,0, - 114,38,1,116,16,0,106,17,0,124,8,0,124,2,0,131, - 2,0,1,116,11,0,100,3,0,124,4,0,131,2,0,1, - 124,8,0,83,100,4,0,125,9,0,116,9,0,124,9,0, - 106,18,0,124,4,0,131,1,0,100,5,0,124,1,0,100, - 6,0,124,4,0,131,1,2,130,1,0,124,0,0,106,6, - 0,124,2,0,131,1,0,125,10,0,116,19,0,116,20,0, - 124,10,0,124,2,0,100,7,0,100,8,0,100,11,0,131, - 4,1,125,11,0,116,11,0,100,3,0,124,2,0,131,2, - 0,1,116,22,0,106,23,0,12,114,48,2,124,4,0,100, - 10,0,107,9,0,114,48,2,124,3,0,100,10,0,107,9, - 0,114,48,2,116,24,0,116,25,0,131,1,0,125,6,0, - 124,6,0,106,26,0,116,27,0,124,3,0,131,1,0,131, - 1,0,1,124,6,0,106,26,0,116,27,0,116,28,0,124, - 10,0,131,1,0,131,1,0,131,1,0,1,124,6,0,106, - 26,0,116,12,0,106,29,0,124,11,0,131,1,0,131,1, - 0,1,121,36,0,124,0,0,106,30,0,124,2,0,124,4, - 0,124,6,0,131,3,0,1,116,11,0,100,9,0,124,4, - 0,131,2,0,1,87,113,48,2,4,116,3,0,107,10,0, - 114,44,2,1,1,1,89,113,48,2,88,110,0,0,124,11, - 0,83,40,12,0,0,0,117,190,0,0,0,67,111,110,99, - 114,101,116,101,32,105,109,112,108,101,109,101,110,116,97,116, - 105,111,110,32,111,102,32,73,110,115,112,101,99,116,76,111, - 97,100,101,114,46,103,101,116,95,99,111,100,101,46,10,10, - 32,32,32,32,32,32,32,32,82,101,97,100,105,110,103,32, - 111,102,32,98,121,116,101,99,111,100,101,32,114,101,113,117, - 105,114,101,115,32,112,97,116,104,95,115,116,97,116,115,32, - 116,111,32,98,101,32,105,109,112,108,101,109,101,110,116,101, - 100,46,32,84,111,32,119,114,105,116,101,10,32,32,32,32, - 32,32,32,32,98,121,116,101,99,111,100,101,44,32,115,101, - 116,95,100,97,116,97,32,109,117,115,116,32,97,108,115,111, - 32,98,101,32,105,109,112,108,101,109,101,110,116,101,100,46, - 10,10,32,32,32,32,32,32,32,32,117,5,0,0,0,109, - 116,105,109,101,117,13,0,0,0,123,125,32,109,97,116,99, - 104,101,115,32,123,125,117,19,0,0,0,99,111,100,101,32, - 111,98,106,101,99,116,32,102,114,111,109,32,123,125,117,21, - 0,0,0,78,111,110,45,99,111,100,101,32,111,98,106,101, - 99,116,32,105,110,32,123,125,117,4,0,0,0,110,97,109, - 101,117,4,0,0,0,112,97,116,104,117,4,0,0,0,101, - 120,101,99,117,12,0,0,0,100,111,110,116,95,105,110,104, - 101,114,105,116,117,10,0,0,0,119,114,111,116,101,32,123, - 33,114,125,78,84,40,31,0,0,0,117,12,0,0,0,103, - 101,116,95,102,105,108,101,110,97,109,101,117,4,0,0,0, - 78,111,110,101,117,17,0,0,0,99,97,99,104,101,95,102, - 114,111,109,95,115,111,117,114,99,101,117,19,0,0,0,78, - 111,116,73,109,112,108,101,109,101,110,116,101,100,69,114,114, - 111,114,117,10,0,0,0,112,97,116,104,95,115,116,97,116, - 115,117,3,0,0,0,105,110,116,117,8,0,0,0,103,101, - 116,95,100,97,116,97,117,7,0,0,0,73,79,69,114,114, - 111,114,117,20,0,0,0,95,98,121,116,101,115,95,102,114, - 111,109,95,98,121,116,101,99,111,100,101,117,11,0,0,0, - 73,109,112,111,114,116,69,114,114,111,114,117,8,0,0,0, - 69,79,70,69,114,114,111,114,117,16,0,0,0,95,118,101, - 114,98,111,115,101,95,109,101,115,115,97,103,101,117,7,0, - 0,0,109,97,114,115,104,97,108,117,5,0,0,0,108,111, - 97,100,115,117,10,0,0,0,105,115,105,110,115,116,97,110, - 99,101,117,10,0,0,0,95,99,111,100,101,95,116,121,112, - 101,117,4,0,0,0,95,105,109,112,117,16,0,0,0,95, - 102,105,120,95,99,111,95,102,105,108,101,110,97,109,101,117, - 6,0,0,0,102,111,114,109,97,116,117,25,0,0,0,95, - 99,97,108,108,95,119,105,116,104,95,102,114,97,109,101,115, - 95,114,101,109,111,118,101,100,117,7,0,0,0,99,111,109, - 112,105,108,101,117,4,0,0,0,84,114,117,101,117,3,0, - 0,0,115,121,115,117,19,0,0,0,100,111,110,116,95,119, - 114,105,116,101,95,98,121,116,101,99,111,100,101,117,9,0, - 0,0,98,121,116,101,97,114,114,97,121,117,12,0,0,0, - 95,77,65,71,73,67,95,66,89,84,69,83,117,6,0,0, - 0,101,120,116,101,110,100,117,7,0,0,0,95,119,95,108, - 111,110,103,117,3,0,0,0,108,101,110,117,5,0,0,0, - 100,117,109,112,115,117,15,0,0,0,95,99,97,99,104,101, - 95,98,121,116,101,99,111,100,101,40,12,0,0,0,117,4, - 0,0,0,115,101,108,102,117,8,0,0,0,102,117,108,108, - 110,97,109,101,117,11,0,0,0,115,111,117,114,99,101,95, - 112,97,116,104,117,12,0,0,0,115,111,117,114,99,101,95, - 109,116,105,109,101,117,13,0,0,0,98,121,116,101,99,111, - 100,101,95,112,97,116,104,117,2,0,0,0,115,116,117,4, - 0,0,0,100,97,116,97,117,10,0,0,0,98,121,116,101, - 115,95,100,97,116,97,117,5,0,0,0,102,111,117,110,100, - 117,3,0,0,0,109,115,103,117,12,0,0,0,115,111,117, - 114,99,101,95,98,121,116,101,115,117,11,0,0,0,99,111, - 100,101,95,111,98,106,101,99,116,40,0,0,0,0,40,0, - 0,0,0,117,29,0,0,0,60,102,114,111,122,101,110,32, - 105,109,112,111,114,116,108,105,98,46,95,98,111,111,116,115, - 116,114,97,112,62,117,8,0,0,0,103,101,116,95,99,111, - 100,101,170,3,0,0,115,98,0,0,0,0,7,15,1,6, - 1,3,1,16,1,13,1,11,2,3,1,19,1,13,1,5, - 2,16,1,3,1,19,1,13,1,5,2,3,1,12,1,3, - 1,13,1,19,1,5,2,9,1,7,1,15,1,15,1,16, - 1,6,1,7,1,4,2,6,1,18,1,15,1,15,1,6, - 1,12,1,9,1,13,1,22,1,12,1,12,1,19,1,25, - 1,22,1,3,1,19,1,17,1,13,1,8,1,117,21,0, - 0,0,83,111,117,114,99,101,76,111,97,100,101,114,46,103, - 101,116,95,99,111,100,101,99,2,0,0,0,0,0,0,0, - 2,0,0,0,2,0,0,0,67,0,0,0,115,13,0,0, - 0,124,0,0,106,0,0,124,1,0,131,1,0,83,40,1, - 0,0,0,117,0,1,0,0,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,76,111,97,100,101,114,46,108,111,97,100,95,109, - 111,100,117,108,101,46,10,10,32,32,32,32,32,32,32,32, - 82,101,113,117,105,114,101,115,32,69,120,101,99,117,116,105, - 111,110,76,111,97,100,101,114,46,103,101,116,95,102,105,108, - 101,110,97,109,101,32,97,110,100,32,82,101,115,111,117,114, - 99,101,76,111,97,100,101,114,46,103,101,116,95,100,97,116, - 97,32,116,111,32,98,101,10,32,32,32,32,32,32,32,32, - 105,109,112,108,101,109,101,110,116,101,100,32,116,111,32,108, - 111,97,100,32,115,111,117,114,99,101,32,99,111,100,101,46, - 32,85,115,101,32,111,102,32,98,121,116,101,99,111,100,101, - 32,105,115,32,100,105,99,116,97,116,101,100,32,98,121,32, - 119,104,101,116,104,101,114,10,32,32,32,32,32,32,32,32, - 103,101,116,95,99,111,100,101,32,117,115,101,115,47,119,114, - 105,116,101,115,32,98,121,116,101,99,111,100,101,46,10,10, - 32,32,32,32,32,32,32,32,40,1,0,0,0,117,12,0, - 0,0,95,108,111,97,100,95,109,111,100,117,108,101,40,2, - 0,0,0,117,4,0,0,0,115,101,108,102,117,8,0,0, - 0,102,117,108,108,110,97,109,101,40,0,0,0,0,40,0, - 0,0,0,117,29,0,0,0,60,102,114,111,122,101,110,32, - 105,109,112,111,114,116,108,105,98,46,95,98,111,111,116,115, - 116,114,97,112,62,117,11,0,0,0,108,111,97,100,95,109, - 111,100,117,108,101,232,3,0,0,115,2,0,0,0,0,8, - 117,24,0,0,0,83,111,117,114,99,101,76,111,97,100,101, - 114,46,108,111,97,100,95,109,111,100,117,108,101,78,40,10, - 0,0,0,117,8,0,0,0,95,95,110,97,109,101,95,95, - 117,10,0,0,0,95,95,109,111,100,117,108,101,95,95,117, - 12,0,0,0,95,95,113,117,97,108,110,97,109,101,95,95, - 117,10,0,0,0,112,97,116,104,95,109,116,105,109,101,117, - 10,0,0,0,112,97,116,104,95,115,116,97,116,115,117,15, - 0,0,0,95,99,97,99,104,101,95,98,121,116,101,99,111, - 100,101,117,8,0,0,0,115,101,116,95,100,97,116,97,117, - 10,0,0,0,103,101,116,95,115,111,117,114,99,101,117,8, - 0,0,0,103,101,116,95,99,111,100,101,117,11,0,0,0, - 108,111,97,100,95,109,111,100,117,108,101,40,1,0,0,0, - 117,10,0,0,0,95,95,108,111,99,97,108,115,95,95,40, - 0,0,0,0,40,0,0,0,0,117,29,0,0,0,60,102, - 114,111,122,101,110,32,105,109,112,111,114,116,108,105,98,46, - 95,98,111,111,116,115,116,114,97,112,62,117,12,0,0,0, - 83,111,117,114,99,101,76,111,97,100,101,114,109,3,0,0, - 115,14,0,0,0,16,2,12,6,12,12,12,10,12,9,12, - 22,12,62,117,12,0,0,0,83,111,117,114,99,101,76,111, - 97,100,101,114,99,1,0,0,0,0,0,0,0,1,0,0, - 0,4,0,0,0,2,0,0,0,115,92,0,0,0,124,0, - 0,69,101,0,0,90,1,0,100,0,0,90,2,0,100,1, - 0,90,3,0,100,2,0,100,3,0,132,0,0,90,4,0, - 101,5,0,135,0,0,102,1,0,100,4,0,100,5,0,134, - 0,0,131,1,0,90,6,0,101,5,0,100,6,0,100,7, - 0,132,0,0,131,1,0,90,7,0,100,8,0,100,9,0, - 132,0,0,90,8,0,135,0,0,83,40,10,0,0,0,117, - 10,0,0,0,70,105,108,101,76,111,97,100,101,114,117,103, - 0,0,0,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,3,0,0,0,2,0,0,0,67,0,0,0,115, - 22,0,0,0,124,1,0,124,0,0,95,0,0,124,2,0, - 124,0,0,95,1,0,100,1,0,83,40,2,0,0,0,117, - 75,0,0,0,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, - 40,2,0,0,0,117,4,0,0,0,110,97,109,101,117,4, - 0,0,0,112,97,116,104,40,3,0,0,0,117,4,0,0, - 0,115,101,108,102,117,8,0,0,0,102,117,108,108,110,97, - 109,101,117,4,0,0,0,112,97,116,104,40,0,0,0,0, - 40,0,0,0,0,117,29,0,0,0,60,102,114,111,122,101, - 110,32,105,109,112,111,114,116,108,105,98,46,95,98,111,111, - 116,115,116,114,97,112,62,117,8,0,0,0,95,95,105,110, - 105,116,95,95,248,3,0,0,115,4,0,0,0,0,3,9, - 1,117,19,0,0,0,70,105,108,101,76,111,97,100,101,114, - 46,95,95,105,110,105,116,95,95,99,2,0,0,0,0,0, - 0,0,2,0,0,0,3,0,0,0,3,0,0,0,115,22, - 0,0,0,116,0,0,116,1,0,124,0,0,131,2,0,106, - 2,0,124,1,0,131,1,0,83,40,1,0,0,0,117,26, - 0,0,0,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,40,3,0, - 0,0,117,5,0,0,0,115,117,112,101,114,117,10,0,0, - 0,70,105,108,101,76,111,97,100,101,114,117,11,0,0,0, - 108,111,97,100,95,109,111,100,117,108,101,40,2,0,0,0, - 117,4,0,0,0,115,101,108,102,117,8,0,0,0,102,117, - 108,108,110,97,109,101,40,1,0,0,0,117,9,0,0,0, - 95,95,99,108,97,115,115,95,95,40,0,0,0,0,117,29, - 0,0,0,60,102,114,111,122,101,110,32,105,109,112,111,114, - 116,108,105,98,46,95,98,111,111,116,115,116,114,97,112,62, - 117,11,0,0,0,108,111,97,100,95,109,111,100,117,108,101, - 254,3,0,0,115,2,0,0,0,0,5,117,22,0,0,0, - 70,105,108,101,76,111,97,100,101,114,46,108,111,97,100,95, - 109,111,100,117,108,101,99,2,0,0,0,0,0,0,0,2, - 0,0,0,1,0,0,0,67,0,0,0,115,7,0,0,0, - 124,0,0,106,0,0,83,40,1,0,0,0,117,58,0,0, - 0,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,40,1,0,0,0, - 117,4,0,0,0,112,97,116,104,40,2,0,0,0,117,4, - 0,0,0,115,101,108,102,117,8,0,0,0,102,117,108,108, - 110,97,109,101,40,0,0,0,0,40,0,0,0,0,117,29, - 0,0,0,60,102,114,111,122,101,110,32,105,109,112,111,114, - 116,108,105,98,46,95,98,111,111,116,115,116,114,97,112,62, - 117,12,0,0,0,103,101,116,95,102,105,108,101,110,97,109, - 101,5,4,0,0,115,2,0,0,0,0,3,117,23,0,0, - 0,70,105,108,101,76,111,97,100,101,114,46,103,101,116,95, - 102,105,108,101,110,97,109,101,99,2,0,0,0,0,0,0, - 0,3,0,0,0,8,0,0,0,67,0,0,0,115,41,0, - 0,0,116,0,0,106,1,0,124,1,0,100,1,0,131,2, - 0,143,17,0,125,2,0,124,2,0,106,2,0,131,0,0, - 83,87,100,2,0,81,88,100,2,0,83,40,3,0,0,0, - 117,39,0,0,0,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,117,1,0,0, - 0,114,78,40,3,0,0,0,117,3,0,0,0,95,105,111, - 117,6,0,0,0,70,105,108,101,73,79,117,4,0,0,0, - 114,101,97,100,40,3,0,0,0,117,4,0,0,0,115,101, - 108,102,117,4,0,0,0,112,97,116,104,117,4,0,0,0, - 102,105,108,101,40,0,0,0,0,40,0,0,0,0,117,29, - 0,0,0,60,102,114,111,122,101,110,32,105,109,112,111,114, - 116,108,105,98,46,95,98,111,111,116,115,116,114,97,112,62, - 117,8,0,0,0,103,101,116,95,100,97,116,97,10,4,0, - 0,115,4,0,0,0,0,2,21,1,117,19,0,0,0,70, - 105,108,101,76,111,97,100,101,114,46,103,101,116,95,100,97, - 116,97,40,9,0,0,0,117,8,0,0,0,95,95,110,97, - 109,101,95,95,117,10,0,0,0,95,95,109,111,100,117,108, - 101,95,95,117,12,0,0,0,95,95,113,117,97,108,110,97, - 109,101,95,95,117,7,0,0,0,95,95,100,111,99,95,95, - 117,8,0,0,0,95,95,105,110,105,116,95,95,117,11,0, - 0,0,95,99,104,101,99,107,95,110,97,109,101,117,11,0, - 0,0,108,111,97,100,95,109,111,100,117,108,101,117,12,0, - 0,0,103,101,116,95,102,105,108,101,110,97,109,101,117,8, - 0,0,0,103,101,116,95,100,97,116,97,40,1,0,0,0, - 117,10,0,0,0,95,95,108,111,99,97,108,115,95,95,40, - 0,0,0,0,40,1,0,0,0,117,9,0,0,0,95,95, - 99,108,97,115,115,95,95,117,29,0,0,0,60,102,114,111, - 122,101,110,32,105,109,112,111,114,116,108,105,98,46,95,98, - 111,111,116,115,116,114,97,112,62,117,10,0,0,0,70,105, - 108,101,76,111,97,100,101,114,243,3,0,0,115,10,0,0, - 0,16,3,6,2,12,6,24,7,18,5,117,10,0,0,0, - 70,105,108,101,76,111,97,100,101,114,99,1,0,0,0,0, - 0,0,0,1,0,0,0,4,0,0,0,66,0,0,0,115, - 68,0,0,0,124,0,0,69,101,0,0,90,1,0,100,0, - 0,90,2,0,100,1,0,90,3,0,100,2,0,100,3,0, - 132,0,0,90,4,0,100,4,0,100,5,0,132,0,0,90, - 5,0,100,6,0,100,7,0,100,8,0,100,9,0,132,0, - 1,90,6,0,100,10,0,83,40,11,0,0,0,117,16,0, - 0,0,83,111,117,114,99,101,70,105,108,101,76,111,97,100, - 101,114,117,62,0,0,0,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,3,0, - 0,0,3,0,0,0,67,0,0,0,115,39,0,0,0,116, - 0,0,106,1,0,124,1,0,131,1,0,125,2,0,105,2, - 0,124,2,0,106,2,0,100,1,0,54,124,2,0,106,3, - 0,100,2,0,54,83,40,3,0,0,0,117,33,0,0,0, - 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,117,5,0,0,0,109,116,105,109,101,117,4,0,0,0, - 115,105,122,101,40,4,0,0,0,117,3,0,0,0,95,111, - 115,117,4,0,0,0,115,116,97,116,117,8,0,0,0,115, - 116,95,109,116,105,109,101,117,7,0,0,0,115,116,95,115, - 105,122,101,40,3,0,0,0,117,4,0,0,0,115,101,108, - 102,117,4,0,0,0,112,97,116,104,117,2,0,0,0,115, - 116,40,0,0,0,0,40,0,0,0,0,117,29,0,0,0, - 60,102,114,111,122,101,110,32,105,109,112,111,114,116,108,105, - 98,46,95,98,111,111,116,115,116,114,97,112,62,117,10,0, - 0,0,112,97,116,104,95,115,116,97,116,115,20,4,0,0, - 115,4,0,0,0,0,2,15,1,117,27,0,0,0,83,111, - 117,114,99,101,70,105,108,101,76,111,97,100,101,114,46,112, - 97,116,104,95,115,116,97,116,115,99,4,0,0,0,0,0, - 0,0,5,0,0,0,13,0,0,0,67,0,0,0,115,71, - 0,0,0,121,22,0,116,0,0,106,1,0,124,1,0,131, - 1,0,106,2,0,125,4,0,87,110,24,0,4,116,3,0, - 107,10,0,114,48,0,1,1,1,100,1,0,125,4,0,89, - 110,1,0,88,124,0,0,106,4,0,124,2,0,124,3,0, - 100,2,0,124,4,0,131,2,1,83,40,3,0,0,0,78, - 105,182,1,0,0,117,5,0,0,0,95,109,111,100,101,40, - 5,0,0,0,117,3,0,0,0,95,111,115,117,4,0,0, - 0,115,116,97,116,117,7,0,0,0,115,116,95,109,111,100, - 101,117,7,0,0,0,79,83,69,114,114,111,114,117,8,0, - 0,0,115,101,116,95,100,97,116,97,40,5,0,0,0,117, - 4,0,0,0,115,101,108,102,117,11,0,0,0,115,111,117, - 114,99,101,95,112,97,116,104,117,13,0,0,0,98,121,116, - 101,99,111,100,101,95,112,97,116,104,117,4,0,0,0,100, - 97,116,97,117,4,0,0,0,109,111,100,101,40,0,0,0, - 0,40,0,0,0,0,117,29,0,0,0,60,102,114,111,122, - 101,110,32,105,109,112,111,114,116,108,105,98,46,95,98,111, - 111,116,115,116,114,97,112,62,117,15,0,0,0,95,99,97, - 99,104,101,95,98,121,116,101,99,111,100,101,25,4,0,0, - 115,10,0,0,0,0,2,3,1,22,1,13,1,11,1,117, - 32,0,0,0,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,117,5,0,0,0,95,109,111,100,101,105,182, - 1,0,0,99,3,0,0,0,1,0,0,0,8,0,0,0, - 13,0,0,0,67,0,0,0,115,245,0,0,0,116,0,0, - 124,1,0,131,1,0,92,2,0,125,4,0,125,5,0,103, - 0,0,125,6,0,120,54,0,124,4,0,114,80,0,116,1, - 0,124,4,0,131,1,0,12,114,80,0,116,0,0,124,4, - 0,131,1,0,92,2,0,125,4,0,125,7,0,124,6,0, - 106,2,0,124,7,0,131,1,0,1,113,27,0,87,120,97, - 0,116,3,0,124,6,0,131,1,0,68,93,83,0,125,7, - 0,116,4,0,124,4,0,124,7,0,131,2,0,125,4,0, - 121,17,0,116,5,0,106,6,0,124,4,0,131,1,0,1, - 87,113,94,0,4,116,7,0,107,10,0,114,155,0,1,1, - 1,119,94,0,89,113,94,0,4,116,8,0,107,10,0,114, - 176,0,1,1,1,100,1,0,83,89,113,94,0,88,113,94, - 0,87,121,33,0,116,9,0,124,1,0,124,2,0,124,3, - 0,131,3,0,1,116,10,0,100,2,0,124,1,0,131,2, - 0,1,87,110,24,0,4,116,8,0,116,7,0,102,2,0, - 107,10,0,114,240,0,1,1,1,89,110,1,0,88,100,1, - 0,83,40,3,0,0,0,117,27,0,0,0,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,78,117,12,0,0,0,99,114,101, - 97,116,101,100,32,123,33,114,125,40,11,0,0,0,117,11, - 0,0,0,95,112,97,116,104,95,115,112,108,105,116,117,11, - 0,0,0,95,112,97,116,104,95,105,115,100,105,114,117,6, - 0,0,0,97,112,112,101,110,100,117,8,0,0,0,114,101, - 118,101,114,115,101,100,117,10,0,0,0,95,112,97,116,104, - 95,106,111,105,110,117,3,0,0,0,95,111,115,117,5,0, - 0,0,109,107,100,105,114,117,15,0,0,0,70,105,108,101, - 69,120,105,115,116,115,69,114,114,111,114,117,15,0,0,0, - 80,101,114,109,105,115,115,105,111,110,69,114,114,111,114,117, - 13,0,0,0,95,119,114,105,116,101,95,97,116,111,109,105, - 99,117,16,0,0,0,95,118,101,114,98,111,115,101,95,109, - 101,115,115,97,103,101,40,8,0,0,0,117,4,0,0,0, - 115,101,108,102,117,4,0,0,0,112,97,116,104,117,4,0, - 0,0,100,97,116,97,117,5,0,0,0,95,109,111,100,101, - 117,6,0,0,0,112,97,114,101,110,116,117,8,0,0,0, - 102,105,108,101,110,97,109,101,117,10,0,0,0,112,97,116, - 104,95,112,97,114,116,115,117,4,0,0,0,112,97,114,116, - 40,0,0,0,0,40,0,0,0,0,117,29,0,0,0,60, - 102,114,111,122,101,110,32,105,109,112,111,114,116,108,105,98, - 46,95,98,111,111,116,115,116,114,97,112,62,117,8,0,0, - 0,115,101,116,95,100,97,116,97,33,4,0,0,115,36,0, - 0,0,0,2,18,1,6,2,22,1,18,1,17,2,19,1, - 15,1,3,1,17,1,13,2,7,1,13,3,13,1,3,1, - 16,1,17,1,19,3,117,25,0,0,0,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,40,7,0,0,0,117,8,0,0,0,95, - 95,110,97,109,101,95,95,117,10,0,0,0,95,95,109,111, - 100,117,108,101,95,95,117,12,0,0,0,95,95,113,117,97, - 108,110,97,109,101,95,95,117,7,0,0,0,95,95,100,111, - 99,95,95,117,10,0,0,0,112,97,116,104,95,115,116,97, - 116,115,117,15,0,0,0,95,99,97,99,104,101,95,98,121, - 116,101,99,111,100,101,117,8,0,0,0,115,101,116,95,100, - 97,116,97,40,1,0,0,0,117,10,0,0,0,95,95,108, - 111,99,97,108,115,95,95,40,0,0,0,0,40,0,0,0, - 0,117,29,0,0,0,60,102,114,111,122,101,110,32,105,109, - 112,111,114,116,108,105,98,46,95,98,111,111,116,115,116,114, - 97,112,62,117,16,0,0,0,83,111,117,114,99,101,70,105, - 108,101,76,111,97,100,101,114,16,4,0,0,115,8,0,0, - 0,16,2,6,2,12,5,12,8,117,16,0,0,0,83,111, - 117,114,99,101,70,105,108,101,76,111,97,100,101,114,99,1, - 0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,66, - 0,0,0,115,62,0,0,0,124,0,0,69,101,0,0,90, - 1,0,100,0,0,90,2,0,100,1,0,90,3,0,100,2, - 0,100,3,0,132,0,0,90,4,0,100,4,0,100,5,0, - 132,0,0,90,5,0,100,6,0,100,7,0,132,0,0,90, - 6,0,100,8,0,83,40,9,0,0,0,117,20,0,0,0, - 83,111,117,114,99,101,108,101,115,115,70,105,108,101,76,111, - 97,100,101,114,117,45,0,0,0,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,2, - 0,0,0,4,0,0,0,67,0,0,0,115,19,0,0,0, - 124,0,0,106,0,0,124,1,0,100,1,0,100,2,0,131, - 1,1,83,40,3,0,0,0,78,117,10,0,0,0,115,111, - 117,114,99,101,108,101,115,115,84,40,2,0,0,0,117,12, - 0,0,0,95,108,111,97,100,95,109,111,100,117,108,101,117, - 4,0,0,0,84,114,117,101,40,2,0,0,0,117,4,0, - 0,0,115,101,108,102,117,8,0,0,0,102,117,108,108,110, - 97,109,101,40,0,0,0,0,40,0,0,0,0,117,29,0, - 0,0,60,102,114,111,122,101,110,32,105,109,112,111,114,116, - 108,105,98,46,95,98,111,111,116,115,116,114,97,112,62,117, - 11,0,0,0,108,111,97,100,95,109,111,100,117,108,101,66, - 4,0,0,115,2,0,0,0,0,1,117,32,0,0,0,83, - 111,117,114,99,101,108,101,115,115,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,6,0,0,0,6,0,0,0, - 67,0,0,0,115,138,0,0,0,124,0,0,106,0,0,124, - 1,0,131,1,0,125,2,0,124,0,0,106,1,0,124,2, - 0,131,1,0,125,3,0,124,0,0,106,2,0,124,1,0, - 124,3,0,124,2,0,100,0,0,131,4,0,125,4,0,116, - 4,0,106,5,0,124,4,0,131,1,0,125,5,0,116,6, - 0,124,5,0,116,7,0,131,2,0,114,101,0,116,8,0, - 100,1,0,124,2,0,131,2,0,1,124,5,0,83,116,9, - 0,100,2,0,106,10,0,124,2,0,131,1,0,100,3,0, - 124,1,0,100,4,0,124,2,0,131,1,2,130,1,0,100, - 0,0,83,40,5,0,0,0,78,117,21,0,0,0,99,111, - 100,101,32,111,98,106,101,99,116,32,102,114,111,109,32,123, - 33,114,125,117,21,0,0,0,78,111,110,45,99,111,100,101, - 32,111,98,106,101,99,116,32,105,110,32,123,125,117,4,0, - 0,0,110,97,109,101,117,4,0,0,0,112,97,116,104,40, - 11,0,0,0,117,12,0,0,0,103,101,116,95,102,105,108, - 101,110,97,109,101,117,8,0,0,0,103,101,116,95,100,97, - 116,97,117,20,0,0,0,95,98,121,116,101,115,95,102,114, - 111,109,95,98,121,116,101,99,111,100,101,117,4,0,0,0, - 78,111,110,101,117,7,0,0,0,109,97,114,115,104,97,108, - 117,5,0,0,0,108,111,97,100,115,117,10,0,0,0,105, - 115,105,110,115,116,97,110,99,101,117,10,0,0,0,95,99, - 111,100,101,95,116,121,112,101,117,16,0,0,0,95,118,101, - 114,98,111,115,101,95,109,101,115,115,97,103,101,117,11,0, - 0,0,73,109,112,111,114,116,69,114,114,111,114,117,6,0, - 0,0,102,111,114,109,97,116,40,6,0,0,0,117,4,0, - 0,0,115,101,108,102,117,8,0,0,0,102,117,108,108,110, - 97,109,101,117,4,0,0,0,112,97,116,104,117,4,0,0, - 0,100,97,116,97,117,10,0,0,0,98,121,116,101,115,95, - 100,97,116,97,117,5,0,0,0,102,111,117,110,100,40,0, - 0,0,0,40,0,0,0,0,117,29,0,0,0,60,102,114, - 111,122,101,110,32,105,109,112,111,114,116,108,105,98,46,95, - 98,111,111,116,115,116,114,97,112,62,117,8,0,0,0,103, - 101,116,95,99,111,100,101,69,4,0,0,115,18,0,0,0, - 0,1,15,1,15,1,24,1,15,1,15,1,13,1,4,2, - 18,1,117,29,0,0,0,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,2,0,0, - 0,1,0,0,0,67,0,0,0,115,4,0,0,0,100,1, - 0,83,40,2,0,0,0,117,39,0,0,0,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,40,1,0,0,0,117,4,0,0,0,78,111, - 110,101,40,2,0,0,0,117,4,0,0,0,115,101,108,102, - 117,8,0,0,0,102,117,108,108,110,97,109,101,40,0,0, - 0,0,40,0,0,0,0,117,29,0,0,0,60,102,114,111, - 122,101,110,32,105,109,112,111,114,116,108,105,98,46,95,98, - 111,111,116,115,116,114,97,112,62,117,10,0,0,0,103,101, - 116,95,115,111,117,114,99,101,81,4,0,0,115,2,0,0, - 0,0,2,117,31,0,0,0,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,40,7,0,0,0,117,8,0, - 0,0,95,95,110,97,109,101,95,95,117,10,0,0,0,95, - 95,109,111,100,117,108,101,95,95,117,12,0,0,0,95,95, - 113,117,97,108,110,97,109,101,95,95,117,7,0,0,0,95, - 95,100,111,99,95,95,117,11,0,0,0,108,111,97,100,95, - 109,111,100,117,108,101,117,8,0,0,0,103,101,116,95,99, - 111,100,101,117,10,0,0,0,103,101,116,95,115,111,117,114, - 99,101,40,1,0,0,0,117,10,0,0,0,95,95,108,111, - 99,97,108,115,95,95,40,0,0,0,0,40,0,0,0,0, - 117,29,0,0,0,60,102,114,111,122,101,110,32,105,109,112, - 111,114,116,108,105,98,46,95,98,111,111,116,115,116,114,97, - 112,62,117,20,0,0,0,83,111,117,114,99,101,108,101,115, - 115,70,105,108,101,76,111,97,100,101,114,62,4,0,0,115, - 8,0,0,0,16,2,6,2,12,3,12,12,117,20,0,0, - 0,83,111,117,114,99,101,108,101,115,115,70,105,108,101,76, - 111,97,100,101,114,99,1,0,0,0,0,0,0,0,1,0, - 0,0,5,0,0,0,66,0,0,0,115,104,0,0,0,124, - 0,0,69,101,0,0,90,1,0,100,0,0,90,2,0,100, - 1,0,90,3,0,100,2,0,100,3,0,132,0,0,90,4, - 0,101,5,0,101,6,0,101,7,0,100,4,0,100,5,0, - 132,0,0,131,1,0,131,1,0,131,1,0,90,8,0,100, - 6,0,100,7,0,132,0,0,90,9,0,100,8,0,100,9, - 0,132,0,0,90,10,0,100,10,0,100,11,0,132,0,0, - 90,11,0,100,12,0,83,40,13,0,0,0,117,19,0,0, - 0,69,120,116,101,110,115,105,111,110,70,105,108,101,76,111, - 97,100,101,114,117,93,0,0,0,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,3, - 0,0,0,2,0,0,0,67,0,0,0,115,22,0,0,0, - 124,1,0,124,0,0,95,0,0,124,2,0,124,0,0,95, - 1,0,100,0,0,83,40,1,0,0,0,78,40,2,0,0, - 0,117,4,0,0,0,110,97,109,101,117,4,0,0,0,112, - 97,116,104,40,3,0,0,0,117,4,0,0,0,115,101,108, - 102,117,4,0,0,0,110,97,109,101,117,4,0,0,0,112, - 97,116,104,40,0,0,0,0,40,0,0,0,0,117,29,0, - 0,0,60,102,114,111,122,101,110,32,105,109,112,111,114,116, - 108,105,98,46,95,98,111,111,116,115,116,114,97,112,62,117, - 8,0,0,0,95,95,105,110,105,116,95,95,98,4,0,0, - 115,4,0,0,0,0,1,9,1,117,28,0,0,0,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,4,0,0,0,10,0,0,0,67,0,0,0,115, - 175,0,0,0,124,1,0,116,0,0,106,1,0,107,6,0, - 125,2,0,121,107,0,116,2,0,116,3,0,106,4,0,124, - 1,0,124,0,0,106,5,0,131,3,0,125,3,0,116,6, - 0,100,1,0,124,0,0,106,5,0,131,2,0,1,124,0, - 0,106,7,0,124,1,0,131,1,0,114,117,0,116,8,0, - 124,3,0,100,2,0,131,2,0,12,114,117,0,116,9,0, - 124,0,0,106,5,0,131,1,0,100,3,0,25,103,1,0, - 124,3,0,95,10,0,110,0,0,124,3,0,83,87,110,46, - 0,1,1,1,124,2,0,12,114,163,0,124,1,0,116,0, - 0,106,1,0,107,6,0,114,163,0,116,0,0,106,1,0, - 124,1,0,61,110,0,0,130,0,0,89,110,1,0,88,100, - 4,0,83,40,5,0,0,0,117,25,0,0,0,76,111,97, - 100,32,97,110,32,101,120,116,101,110,115,105,111,110,32,109, - 111,100,117,108,101,46,117,33,0,0,0,101,120,116,101,110, - 115,105,111,110,32,109,111,100,117,108,101,32,108,111,97,100, - 101,100,32,102,114,111,109,32,123,33,114,125,117,8,0,0, - 0,95,95,112,97,116,104,95,95,105,0,0,0,0,78,40, - 11,0,0,0,117,3,0,0,0,115,121,115,117,7,0,0, - 0,109,111,100,117,108,101,115,117,25,0,0,0,95,99,97, - 108,108,95,119,105,116,104,95,102,114,97,109,101,115,95,114, - 101,109,111,118,101,100,117,4,0,0,0,95,105,109,112,117, - 12,0,0,0,108,111,97,100,95,100,121,110,97,109,105,99, - 117,4,0,0,0,112,97,116,104,117,16,0,0,0,95,118, - 101,114,98,111,115,101,95,109,101,115,115,97,103,101,117,10, - 0,0,0,105,115,95,112,97,99,107,97,103,101,117,7,0, - 0,0,104,97,115,97,116,116,114,117,11,0,0,0,95,112, - 97,116,104,95,115,112,108,105,116,117,8,0,0,0,95,95, - 112,97,116,104,95,95,40,4,0,0,0,117,4,0,0,0, - 115,101,108,102,117,8,0,0,0,102,117,108,108,110,97,109, - 101,117,9,0,0,0,105,115,95,114,101,108,111,97,100,117, - 6,0,0,0,109,111,100,117,108,101,40,0,0,0,0,40, - 0,0,0,0,117,29,0,0,0,60,102,114,111,122,101,110, - 32,105,109,112,111,114,116,108,105,98,46,95,98,111,111,116, - 115,116,114,97,112,62,117,11,0,0,0,108,111,97,100,95, - 109,111,100,117,108,101,102,4,0,0,115,24,0,0,0,0, - 5,15,1,3,1,9,1,15,1,16,1,31,1,28,1,8, - 1,3,1,22,1,13,1,117,31,0,0,0,69,120,116,101, - 110,115,105,111,110,70,105,108,101,76,111,97,100,101,114,46, - 108,111,97,100,95,109,111,100,117,108,101,99,2,0,0,0, - 0,0,0,0,2,0,0,0,4,0,0,0,3,0,0,0, - 115,48,0,0,0,116,0,0,124,0,0,106,1,0,131,1, - 0,100,1,0,25,137,0,0,116,2,0,135,0,0,102,1, - 0,100,2,0,100,3,0,134,0,0,116,3,0,68,131,1, - 0,131,1,0,83,40,4,0,0,0,117,49,0,0,0,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, - 105,1,0,0,0,99,1,0,0,0,0,0,0,0,2,0, - 0,0,4,0,0,0,51,0,0,0,115,31,0,0,0,124, - 0,0,93,21,0,125,1,0,136,0,0,100,0,0,124,1, - 0,23,107,2,0,86,1,113,3,0,100,1,0,83,40,2, - 0,0,0,117,8,0,0,0,95,95,105,110,105,116,95,95, - 78,40,0,0,0,0,40,2,0,0,0,117,2,0,0,0, - 46,48,117,6,0,0,0,115,117,102,102,105,120,40,1,0, - 0,0,117,9,0,0,0,102,105,108,101,95,110,97,109,101, - 40,0,0,0,0,117,29,0,0,0,60,102,114,111,122,101, - 110,32,105,109,112,111,114,116,108,105,98,46,95,98,111,111, - 116,115,116,114,97,112,62,117,9,0,0,0,60,103,101,110, - 101,120,112,114,62,123,4,0,0,115,2,0,0,0,6,1, - 117,49,0,0,0,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,40,4,0,0,0,117,11,0,0,0, - 95,112,97,116,104,95,115,112,108,105,116,117,4,0,0,0, - 112,97,116,104,117,3,0,0,0,97,110,121,117,18,0,0, - 0,69,88,84,69,78,83,73,79,78,95,83,85,70,70,73, - 88,69,83,40,2,0,0,0,117,4,0,0,0,115,101,108, - 102,117,8,0,0,0,102,117,108,108,110,97,109,101,40,0, - 0,0,0,40,1,0,0,0,117,9,0,0,0,102,105,108, - 101,95,110,97,109,101,117,29,0,0,0,60,102,114,111,122, - 101,110,32,105,109,112,111,114,116,108,105,98,46,95,98,111, - 111,116,115,116,114,97,112,62,117,10,0,0,0,105,115,95, - 112,97,99,107,97,103,101,120,4,0,0,115,6,0,0,0, - 0,2,19,1,18,1,117,30,0,0,0,69,120,116,101,110, - 115,105,111,110,70,105,108,101,76,111,97,100,101,114,46,105, - 115,95,112,97,99,107,97,103,101,99,2,0,0,0,0,0, - 0,0,2,0,0,0,1,0,0,0,67,0,0,0,115,4, - 0,0,0,100,1,0,83,40,2,0,0,0,117,63,0,0, - 0,82,101,116,117,114,110,32,78,111,110,101,32,97,115,32, - 97,110,32,101,120,116,101,110,115,105,111,110,32,109,111,100, - 117,108,101,32,99,97,110,110,111,116,32,99,114,101,97,116, - 101,32,97,32,99,111,100,101,32,111,98,106,101,99,116,46, - 78,40,1,0,0,0,117,4,0,0,0,78,111,110,101,40, - 2,0,0,0,117,4,0,0,0,115,101,108,102,117,8,0, - 0,0,102,117,108,108,110,97,109,101,40,0,0,0,0,40, - 0,0,0,0,117,29,0,0,0,60,102,114,111,122,101,110, - 32,105,109,112,111,114,116,108,105,98,46,95,98,111,111,116, - 115,116,114,97,112,62,117,8,0,0,0,103,101,116,95,99, - 111,100,101,126,4,0,0,115,2,0,0,0,0,2,117,28, - 0,0,0,69,120,116,101,110,115,105,111,110,70,105,108,101, - 76,111,97,100,101,114,46,103,101,116,95,99,111,100,101,99, - 2,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0, - 67,0,0,0,115,4,0,0,0,100,1,0,83,40,2,0, - 0,0,117,53,0,0,0,82,101,116,117,114,110,32,78,111, - 110,101,32,97,115,32,101,120,116,101,110,115,105,111,110,32, - 109,111,100,117,108,101,115,32,104,97,118,101,32,110,111,32, - 115,111,117,114,99,101,32,99,111,100,101,46,78,40,1,0, - 0,0,117,4,0,0,0,78,111,110,101,40,2,0,0,0, - 117,4,0,0,0,115,101,108,102,117,8,0,0,0,102,117, - 108,108,110,97,109,101,40,0,0,0,0,40,0,0,0,0, - 117,29,0,0,0,60,102,114,111,122,101,110,32,105,109,112, - 111,114,116,108,105,98,46,95,98,111,111,116,115,116,114,97, - 112,62,117,10,0,0,0,103,101,116,95,115,111,117,114,99, - 101,130,4,0,0,115,2,0,0,0,0,2,117,30,0,0, - 0,69,120,116,101,110,115,105,111,110,70,105,108,101,76,111, - 97,100,101,114,46,103,101,116,95,115,111,117,114,99,101,78, - 40,12,0,0,0,117,8,0,0,0,95,95,110,97,109,101, - 95,95,117,10,0,0,0,95,95,109,111,100,117,108,101,95, - 95,117,12,0,0,0,95,95,113,117,97,108,110,97,109,101, - 95,95,117,7,0,0,0,95,95,100,111,99,95,95,117,8, - 0,0,0,95,95,105,110,105,116,95,95,117,11,0,0,0, - 95,99,104,101,99,107,95,110,97,109,101,117,11,0,0,0, - 115,101,116,95,112,97,99,107,97,103,101,117,10,0,0,0, - 115,101,116,95,108,111,97,100,101,114,117,11,0,0,0,108, - 111,97,100,95,109,111,100,117,108,101,117,10,0,0,0,105, - 115,95,112,97,99,107,97,103,101,117,8,0,0,0,103,101, - 116,95,99,111,100,101,117,10,0,0,0,103,101,116,95,115, - 111,117,114,99,101,40,1,0,0,0,117,10,0,0,0,95, - 95,108,111,99,97,108,115,95,95,40,0,0,0,0,40,0, - 0,0,0,117,29,0,0,0,60,102,114,111,122,101,110,32, - 105,109,112,111,114,116,108,105,98,46,95,98,111,111,116,115, - 116,114,97,112,62,117,19,0,0,0,69,120,116,101,110,115, - 105,111,110,70,105,108,101,76,111,97,100,101,114,90,4,0, - 0,115,16,0,0,0,16,6,6,2,12,4,3,1,3,1, - 24,16,12,6,12,4,117,19,0,0,0,69,120,116,101,110, - 115,105,111,110,70,105,108,101,76,111,97,100,101,114,99,1, - 0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,66, - 0,0,0,115,134,0,0,0,124,0,0,69,101,0,0,90, - 1,0,100,0,0,90,2,0,100,1,0,90,3,0,100,2, - 0,100,3,0,132,0,0,90,4,0,100,4,0,100,5,0, - 132,0,0,90,5,0,100,6,0,100,7,0,132,0,0,90, - 6,0,100,8,0,100,9,0,132,0,0,90,7,0,100,10, - 0,100,11,0,132,0,0,90,8,0,100,12,0,100,13,0, - 132,0,0,90,9,0,100,14,0,100,15,0,132,0,0,90, - 10,0,100,16,0,100,17,0,132,0,0,90,11,0,100,18, - 0,100,19,0,132,0,0,90,12,0,100,20,0,83,40,21, - 0,0,0,117,14,0,0,0,95,78,97,109,101,115,112,97, - 99,101,80,97,116,104,117,37,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,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,4,0,0,0,2,0,0, - 0,67,0,0,0,115,52,0,0,0,124,1,0,124,0,0, - 95,0,0,124,2,0,124,0,0,95,1,0,116,2,0,124, - 0,0,106,3,0,131,0,0,131,1,0,124,0,0,95,4, - 0,124,3,0,124,0,0,95,5,0,100,0,0,83,40,1, - 0,0,0,78,40,6,0,0,0,117,5,0,0,0,95,110, - 97,109,101,117,5,0,0,0,95,112,97,116,104,117,5,0, - 0,0,116,117,112,108,101,117,16,0,0,0,95,103,101,116, - 95,112,97,114,101,110,116,95,112,97,116,104,117,17,0,0, - 0,95,108,97,115,116,95,112,97,114,101,110,116,95,112,97, - 116,104,117,12,0,0,0,95,112,97,116,104,95,102,105,110, - 100,101,114,40,4,0,0,0,117,4,0,0,0,115,101,108, - 102,117,4,0,0,0,110,97,109,101,117,4,0,0,0,112, - 97,116,104,117,11,0,0,0,112,97,116,104,95,102,105,110, - 100,101,114,40,0,0,0,0,40,0,0,0,0,117,29,0, - 0,0,60,102,114,111,122,101,110,32,105,109,112,111,114,116, - 108,105,98,46,95,98,111,111,116,115,116,114,97,112,62,117, - 8,0,0,0,95,95,105,110,105,116,95,95,142,4,0,0, - 115,8,0,0,0,0,1,9,1,9,1,21,1,117,23,0, - 0,0,95,78,97,109,101,115,112,97,99,101,80,97,116,104, - 46,95,95,105,110,105,116,95,95,99,1,0,0,0,0,0, - 0,0,4,0,0,0,3,0,0,0,67,0,0,0,115,53, - 0,0,0,124,0,0,106,0,0,106,1,0,100,1,0,131, - 1,0,92,3,0,125,1,0,125,2,0,125,3,0,124,2, - 0,100,2,0,107,2,0,114,43,0,100,6,0,83,124,1, - 0,100,5,0,102,2,0,83,40,7,0,0,0,117,62,0, - 0,0,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, - 117,1,0,0,0,46,117,0,0,0,0,117,3,0,0,0, - 115,121,115,117,4,0,0,0,112,97,116,104,117,8,0,0, - 0,95,95,112,97,116,104,95,95,40,2,0,0,0,117,3, - 0,0,0,115,121,115,117,4,0,0,0,112,97,116,104,40, - 2,0,0,0,117,5,0,0,0,95,110,97,109,101,117,10, - 0,0,0,114,112,97,114,116,105,116,105,111,110,40,4,0, - 0,0,117,4,0,0,0,115,101,108,102,117,6,0,0,0, - 112,97,114,101,110,116,117,3,0,0,0,100,111,116,117,2, - 0,0,0,109,101,40,0,0,0,0,40,0,0,0,0,117, - 29,0,0,0,60,102,114,111,122,101,110,32,105,109,112,111, - 114,116,108,105,98,46,95,98,111,111,116,115,116,114,97,112, - 62,117,23,0,0,0,95,102,105,110,100,95,112,97,114,101, - 110,116,95,112,97,116,104,95,110,97,109,101,115,148,4,0, - 0,115,8,0,0,0,0,2,27,1,12,2,4,3,117,38, - 0,0,0,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,3,0,0,0,3,0,0,0,67,0,0,0,115,38, - 0,0,0,124,0,0,106,0,0,131,0,0,92,2,0,125, - 1,0,125,2,0,116,1,0,116,2,0,106,3,0,124,1, - 0,25,124,2,0,131,2,0,83,40,1,0,0,0,78,40, - 4,0,0,0,117,23,0,0,0,95,102,105,110,100,95,112, - 97,114,101,110,116,95,112,97,116,104,95,110,97,109,101,115, - 117,7,0,0,0,103,101,116,97,116,116,114,117,3,0,0, - 0,115,121,115,117,7,0,0,0,109,111,100,117,108,101,115, - 40,3,0,0,0,117,4,0,0,0,115,101,108,102,117,18, - 0,0,0,112,97,114,101,110,116,95,109,111,100,117,108,101, - 95,110,97,109,101,117,14,0,0,0,112,97,116,104,95,97, - 116,116,114,95,110,97,109,101,40,0,0,0,0,40,0,0, - 0,0,117,29,0,0,0,60,102,114,111,122,101,110,32,105, - 109,112,111,114,116,108,105,98,46,95,98,111,111,116,115,116, - 114,97,112,62,117,16,0,0,0,95,103,101,116,95,112,97, - 114,101,110,116,95,112,97,116,104,158,4,0,0,115,4,0, - 0,0,0,1,18,1,117,31,0,0,0,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,4,0,0,0,3,0,0,0,67,0,0,0,115, - 103,0,0,0,116,0,0,124,0,0,106,1,0,131,0,0, - 131,1,0,125,1,0,124,1,0,124,0,0,106,2,0,107, - 3,0,114,96,0,124,0,0,106,3,0,124,0,0,106,4, - 0,124,1,0,131,2,0,92,2,0,125,2,0,125,3,0, - 124,2,0,100,0,0,107,8,0,114,84,0,124,3,0,124, - 0,0,95,6,0,110,0,0,124,1,0,124,0,0,95,2, - 0,110,0,0,124,0,0,106,6,0,83,40,1,0,0,0, - 78,40,7,0,0,0,117,5,0,0,0,116,117,112,108,101, - 117,16,0,0,0,95,103,101,116,95,112,97,114,101,110,116, - 95,112,97,116,104,117,17,0,0,0,95,108,97,115,116,95, - 112,97,114,101,110,116,95,112,97,116,104,117,12,0,0,0, - 95,112,97,116,104,95,102,105,110,100,101,114,117,5,0,0, - 0,95,110,97,109,101,117,4,0,0,0,78,111,110,101,117, - 5,0,0,0,95,112,97,116,104,40,4,0,0,0,117,4, - 0,0,0,115,101,108,102,117,11,0,0,0,112,97,114,101, - 110,116,95,112,97,116,104,117,6,0,0,0,108,111,97,100, - 101,114,117,8,0,0,0,110,101,119,95,112,97,116,104,40, - 0,0,0,0,40,0,0,0,0,117,29,0,0,0,60,102, - 114,111,122,101,110,32,105,109,112,111,114,116,108,105,98,46, - 95,98,111,111,116,115,116,114,97,112,62,117,12,0,0,0, - 95,114,101,99,97,108,99,117,108,97,116,101,162,4,0,0, - 115,14,0,0,0,0,2,18,1,15,1,27,3,12,1,12, - 1,12,1,117,27,0,0,0,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,1,0,0,0, - 2,0,0,0,67,0,0,0,115,16,0,0,0,116,0,0, - 124,0,0,106,1,0,131,0,0,131,1,0,83,40,1,0, - 0,0,78,40,2,0,0,0,117,4,0,0,0,105,116,101, - 114,117,12,0,0,0,95,114,101,99,97,108,99,117,108,97, - 116,101,40,1,0,0,0,117,4,0,0,0,115,101,108,102, - 40,0,0,0,0,40,0,0,0,0,117,29,0,0,0,60, - 102,114,111,122,101,110,32,105,109,112,111,114,116,108,105,98, - 46,95,98,111,111,116,115,116,114,97,112,62,117,8,0,0, - 0,95,95,105,116,101,114,95,95,174,4,0,0,115,2,0, - 0,0,0,1,117,23,0,0,0,95,78,97,109,101,115,112, - 97,99,101,80,97,116,104,46,95,95,105,116,101,114,95,95, - 99,1,0,0,0,0,0,0,0,1,0,0,0,2,0,0, - 0,67,0,0,0,115,16,0,0,0,116,0,0,124,0,0, - 106,1,0,131,0,0,131,1,0,83,40,1,0,0,0,78, - 40,2,0,0,0,117,3,0,0,0,108,101,110,117,12,0, - 0,0,95,114,101,99,97,108,99,117,108,97,116,101,40,1, - 0,0,0,117,4,0,0,0,115,101,108,102,40,0,0,0, - 0,40,0,0,0,0,117,29,0,0,0,60,102,114,111,122, - 101,110,32,105,109,112,111,114,116,108,105,98,46,95,98,111, - 111,116,115,116,114,97,112,62,117,7,0,0,0,95,95,108, - 101,110,95,95,177,4,0,0,115,2,0,0,0,0,1,117, - 22,0,0,0,95,78,97,109,101,115,112,97,99,101,80,97, - 116,104,46,95,95,108,101,110,95,95,99,1,0,0,0,0, - 0,0,0,1,0,0,0,2,0,0,0,67,0,0,0,115, - 16,0,0,0,100,1,0,106,0,0,124,0,0,106,1,0, - 131,1,0,83,40,2,0,0,0,78,117,20,0,0,0,95, - 78,97,109,101,115,112,97,99,101,80,97,116,104,40,123,33, - 114,125,41,40,2,0,0,0,117,6,0,0,0,102,111,114, - 109,97,116,117,5,0,0,0,95,112,97,116,104,40,1,0, - 0,0,117,4,0,0,0,115,101,108,102,40,0,0,0,0, - 40,0,0,0,0,117,29,0,0,0,60,102,114,111,122,101, - 110,32,105,109,112,111,114,116,108,105,98,46,95,98,111,111, - 116,115,116,114,97,112,62,117,8,0,0,0,95,95,114,101, - 112,114,95,95,180,4,0,0,115,2,0,0,0,0,1,117, - 23,0,0,0,95,78,97,109,101,115,112,97,99,101,80,97, - 116,104,46,95,95,114,101,112,114,95,95,99,2,0,0,0, - 0,0,0,0,2,0,0,0,2,0,0,0,67,0,0,0, - 115,16,0,0,0,124,1,0,124,0,0,106,0,0,131,0, - 0,107,6,0,83,40,1,0,0,0,78,40,1,0,0,0, - 117,12,0,0,0,95,114,101,99,97,108,99,117,108,97,116, - 101,40,2,0,0,0,117,4,0,0,0,115,101,108,102,117, - 4,0,0,0,105,116,101,109,40,0,0,0,0,40,0,0, - 0,0,117,29,0,0,0,60,102,114,111,122,101,110,32,105, - 109,112,111,114,116,108,105,98,46,95,98,111,111,116,115,116, - 114,97,112,62,117,12,0,0,0,95,95,99,111,110,116,97, - 105,110,115,95,95,183,4,0,0,115,2,0,0,0,0,1, - 117,27,0,0,0,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,2,0,0,0,2,0,0, - 0,67,0,0,0,115,20,0,0,0,124,0,0,106,0,0, - 106,1,0,124,1,0,131,1,0,1,100,0,0,83,40,1, - 0,0,0,78,40,2,0,0,0,117,5,0,0,0,95,112, - 97,116,104,117,6,0,0,0,97,112,112,101,110,100,40,2, - 0,0,0,117,4,0,0,0,115,101,108,102,117,4,0,0, - 0,105,116,101,109,40,0,0,0,0,40,0,0,0,0,117, - 29,0,0,0,60,102,114,111,122,101,110,32,105,109,112,111, - 114,116,108,105,98,46,95,98,111,111,116,115,116,114,97,112, - 62,117,6,0,0,0,97,112,112,101,110,100,186,4,0,0, - 115,2,0,0,0,0,1,117,21,0,0,0,95,78,97,109, - 101,115,112,97,99,101,80,97,116,104,46,97,112,112,101,110, - 100,78,40,13,0,0,0,117,8,0,0,0,95,95,110,97, - 109,101,95,95,117,10,0,0,0,95,95,109,111,100,117,108, - 101,95,95,117,12,0,0,0,95,95,113,117,97,108,110,97, - 109,101,95,95,117,7,0,0,0,95,95,100,111,99,95,95, - 117,8,0,0,0,95,95,105,110,105,116,95,95,117,23,0, - 0,0,95,102,105,110,100,95,112,97,114,101,110,116,95,112, - 97,116,104,95,110,97,109,101,115,117,16,0,0,0,95,103, - 101,116,95,112,97,114,101,110,116,95,112,97,116,104,117,12, - 0,0,0,95,114,101,99,97,108,99,117,108,97,116,101,117, - 8,0,0,0,95,95,105,116,101,114,95,95,117,7,0,0, - 0,95,95,108,101,110,95,95,117,8,0,0,0,95,95,114, - 101,112,114,95,95,117,12,0,0,0,95,95,99,111,110,116, - 97,105,110,115,95,95,117,6,0,0,0,97,112,112,101,110, - 100,40,1,0,0,0,117,10,0,0,0,95,95,108,111,99, - 97,108,115,95,95,40,0,0,0,0,40,0,0,0,0,117, - 29,0,0,0,60,102,114,111,122,101,110,32,105,109,112,111, - 114,116,108,105,98,46,95,98,111,111,116,115,116,114,97,112, - 62,117,14,0,0,0,95,78,97,109,101,115,112,97,99,101, - 80,97,116,104,135,4,0,0,115,20,0,0,0,16,5,6, - 2,12,6,12,10,12,4,12,12,12,3,12,3,12,3,12, - 3,117,14,0,0,0,95,78,97,109,101,115,112,97,99,101, - 80,97,116,104,99,1,0,0,0,0,0,0,0,1,0,0, - 0,3,0,0,0,66,0,0,0,115,68,0,0,0,124,0, - 0,69,101,0,0,90,1,0,100,0,0,90,2,0,100,1, - 0,100,2,0,132,0,0,90,3,0,101,4,0,100,3,0, - 100,4,0,132,0,0,131,1,0,90,5,0,101,6,0,100, - 5,0,100,6,0,132,0,0,131,1,0,90,7,0,100,7, - 0,83,40,8,0,0,0,117,15,0,0,0,78,97,109,101, - 115,112,97,99,101,76,111,97,100,101,114,99,4,0,0,0, - 0,0,0,0,4,0,0,0,4,0,0,0,67,0,0,0, - 115,25,0,0,0,116,0,0,124,1,0,124,2,0,124,3, - 0,131,3,0,124,0,0,95,1,0,100,0,0,83,40,1, - 0,0,0,78,40,2,0,0,0,117,14,0,0,0,95,78, - 97,109,101,115,112,97,99,101,80,97,116,104,117,5,0,0, - 0,95,112,97,116,104,40,4,0,0,0,117,4,0,0,0, - 115,101,108,102,117,4,0,0,0,110,97,109,101,117,4,0, - 0,0,112,97,116,104,117,11,0,0,0,112,97,116,104,95, - 102,105,110,100,101,114,40,0,0,0,0,40,0,0,0,0, - 117,29,0,0,0,60,102,114,111,122,101,110,32,105,109,112, - 111,114,116,108,105,98,46,95,98,111,111,116,115,116,114,97, - 112,62,117,8,0,0,0,95,95,105,110,105,116,95,95,191, - 4,0,0,115,2,0,0,0,0,1,117,24,0,0,0,78, - 97,109,101,115,112,97,99,101,76,111,97,100,101,114,46,95, - 95,105,110,105,116,95,95,99,2,0,0,0,0,0,0,0, - 2,0,0,0,2,0,0,0,67,0,0,0,115,16,0,0, - 0,100,1,0,106,0,0,124,1,0,106,1,0,131,1,0, - 83,40,2,0,0,0,78,117,25,0,0,0,60,109,111,100, - 117,108,101,32,39,123,125,39,32,40,110,97,109,101,115,112, - 97,99,101,41,62,40,2,0,0,0,117,6,0,0,0,102, - 111,114,109,97,116,117,8,0,0,0,95,95,110,97,109,101, - 95,95,40,2,0,0,0,117,3,0,0,0,99,108,115,117, - 6,0,0,0,109,111,100,117,108,101,40,0,0,0,0,40, - 0,0,0,0,117,29,0,0,0,60,102,114,111,122,101,110, - 32,105,109,112,111,114,116,108,105,98,46,95,98,111,111,116, - 115,116,114,97,112,62,117,11,0,0,0,109,111,100,117,108, - 101,95,114,101,112,114,194,4,0,0,115,2,0,0,0,0, - 2,117,27,0,0,0,78,97,109,101,115,112,97,99,101,76, - 111,97,100,101,114,46,109,111,100,117,108,101,95,114,101,112, - 114,99,2,0,0,0,0,0,0,0,2,0,0,0,3,0, - 0,0,67,0,0,0,115,32,0,0,0,116,0,0,100,1, - 0,124,0,0,106,1,0,131,2,0,1,124,0,0,106,1, - 0,124,1,0,95,2,0,124,1,0,83,40,2,0,0,0, - 117,24,0,0,0,76,111,97,100,32,97,32,110,97,109,101, - 115,112,97,99,101,32,109,111,100,117,108,101,46,117,38,0, - 0,0,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,40,3,0,0,0,117,16,0, - 0,0,95,118,101,114,98,111,115,101,95,109,101,115,115,97, - 103,101,117,5,0,0,0,95,112,97,116,104,117,8,0,0, - 0,95,95,112,97,116,104,95,95,40,2,0,0,0,117,4, - 0,0,0,115,101,108,102,117,6,0,0,0,109,111,100,117, - 108,101,40,0,0,0,0,40,0,0,0,0,117,29,0,0, - 0,60,102,114,111,122,101,110,32,105,109,112,111,114,116,108, - 105,98,46,95,98,111,111,116,115,116,114,97,112,62,117,11, - 0,0,0,108,111,97,100,95,109,111,100,117,108,101,198,4, - 0,0,115,6,0,0,0,0,3,16,1,12,1,117,27,0, - 0,0,78,97,109,101,115,112,97,99,101,76,111,97,100,101, - 114,46,108,111,97,100,95,109,111,100,117,108,101,78,40,8, - 0,0,0,117,8,0,0,0,95,95,110,97,109,101,95,95, - 117,10,0,0,0,95,95,109,111,100,117,108,101,95,95,117, - 12,0,0,0,95,95,113,117,97,108,110,97,109,101,95,95, - 117,8,0,0,0,95,95,105,110,105,116,95,95,117,11,0, - 0,0,99,108,97,115,115,109,101,116,104,111,100,117,11,0, - 0,0,109,111,100,117,108,101,95,114,101,112,114,117,17,0, - 0,0,109,111,100,117,108,101,95,102,111,114,95,108,111,97, - 100,101,114,117,11,0,0,0,108,111,97,100,95,109,111,100, - 117,108,101,40,1,0,0,0,117,10,0,0,0,95,95,108, - 111,99,97,108,115,95,95,40,0,0,0,0,40,0,0,0, - 0,117,29,0,0,0,60,102,114,111,122,101,110,32,105,109, - 112,111,114,116,108,105,98,46,95,98,111,111,116,115,116,114, - 97,112,62,117,15,0,0,0,78,97,109,101,115,112,97,99, - 101,76,111,97,100,101,114,190,4,0,0,115,6,0,0,0, - 16,1,12,3,18,4,117,15,0,0,0,78,97,109,101,115, - 112,97,99,101,76,111,97,100,101,114,99,1,0,0,0,0, - 0,0,0,1,0,0,0,4,0,0,0,66,0,0,0,115, - 119,0,0,0,124,0,0,69,101,0,0,90,1,0,100,0, - 0,90,2,0,100,1,0,90,3,0,101,4,0,100,2,0, - 100,3,0,132,0,0,131,1,0,90,5,0,101,4,0,100, - 4,0,100,5,0,132,0,0,131,1,0,90,6,0,101,4, - 0,100,6,0,100,7,0,132,0,0,131,1,0,90,7,0, - 101,4,0,100,8,0,100,9,0,132,0,0,131,1,0,90, - 8,0,101,4,0,100,12,0,100,10,0,100,11,0,132,1, - 0,131,1,0,90,10,0,100,12,0,83,40,13,0,0,0, - 117,10,0,0,0,80,97,116,104,70,105,110,100,101,114,117, - 62,0,0,0,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,1,0,0,0,0,0,0,0,2,0,0,0,4, - 0,0,0,67,0,0,0,115,58,0,0,0,120,51,0,116, - 0,0,106,1,0,106,2,0,131,0,0,68,93,34,0,125, - 1,0,116,3,0,124,1,0,100,1,0,131,2,0,114,16, - 0,124,1,0,106,4,0,131,0,0,1,113,16,0,113,16, - 0,87,100,2,0,83,40,3,0,0,0,117,125,0,0,0, - 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,117,17,0, - 0,0,105,110,118,97,108,105,100,97,116,101,95,99,97,99, - 104,101,115,78,40,5,0,0,0,117,3,0,0,0,115,121, - 115,117,19,0,0,0,112,97,116,104,95,105,109,112,111,114, - 116,101,114,95,99,97,99,104,101,117,6,0,0,0,118,97, - 108,117,101,115,117,7,0,0,0,104,97,115,97,116,116,114, - 117,17,0,0,0,105,110,118,97,108,105,100,97,116,101,95, - 99,97,99,104,101,115,40,2,0,0,0,117,3,0,0,0, - 99,108,115,117,6,0,0,0,102,105,110,100,101,114,40,0, - 0,0,0,40,0,0,0,0,117,29,0,0,0,60,102,114, - 111,122,101,110,32,105,109,112,111,114,116,108,105,98,46,95, - 98,111,111,116,115,116,114,97,112,62,117,17,0,0,0,105, - 110,118,97,108,105,100,97,116,101,95,99,97,99,104,101,115, - 212,4,0,0,115,6,0,0,0,0,4,22,1,15,1,117, - 28,0,0,0,80,97,116,104,70,105,110,100,101,114,46,105, - 110,118,97,108,105,100,97,116,101,95,99,97,99,104,101,115, - 99,2,0,0,0,0,0,0,0,3,0,0,0,12,0,0, - 0,67,0,0,0,115,94,0,0,0,116,0,0,106,1,0, - 115,28,0,116,2,0,106,3,0,100,1,0,116,4,0,131, - 2,0,1,110,0,0,120,59,0,116,0,0,106,1,0,68, - 93,44,0,125,2,0,121,14,0,124,2,0,124,1,0,131, - 1,0,83,87,113,38,0,4,116,5,0,107,10,0,114,81, - 0,1,1,1,119,38,0,89,113,38,0,88,113,38,0,87, - 100,2,0,83,100,2,0,83,40,3,0,0,0,117,113,0, - 0,0,83,101,97,114,99,104,32,115,101,113,117,101,110,99, - 101,32,111,102,32,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,10,10,32,32,32,32,32,32,32,32,73,102,32, - 39,104,111,111,107,115,39,32,105,115,32,102,97,108,115,101, - 32,116,104,101,110,32,117,115,101,32,115,121,115,46,112,97, - 116,104,95,104,111,111,107,115,46,10,10,32,32,32,32,32, - 32,32,32,117,23,0,0,0,115,121,115,46,112,97,116,104, - 95,104,111,111,107,115,32,105,115,32,101,109,112,116,121,78, - 40,7,0,0,0,117,3,0,0,0,115,121,115,117,10,0, - 0,0,112,97,116,104,95,104,111,111,107,115,117,9,0,0, - 0,95,119,97,114,110,105,110,103,115,117,4,0,0,0,119, - 97,114,110,117,13,0,0,0,73,109,112,111,114,116,87,97, - 114,110,105,110,103,117,11,0,0,0,73,109,112,111,114,116, - 69,114,114,111,114,117,4,0,0,0,78,111,110,101,40,3, - 0,0,0,117,3,0,0,0,99,108,115,117,4,0,0,0, - 112,97,116,104,117,4,0,0,0,104,111,111,107,40,0,0, - 0,0,40,0,0,0,0,117,29,0,0,0,60,102,114,111, - 122,101,110,32,105,109,112,111,114,116,108,105,98,46,95,98, - 111,111,116,115,116,114,97,112,62,117,11,0,0,0,95,112, - 97,116,104,95,104,111,111,107,115,220,4,0,0,115,16,0, - 0,0,0,7,9,1,19,1,16,1,3,1,14,1,13,1, - 12,2,117,22,0,0,0,80,97,116,104,70,105,110,100,101, - 114,46,95,112,97,116,104,95,104,111,111,107,115,99,2,0, - 0,0,0,0,0,0,3,0,0,0,11,0,0,0,67,0, - 0,0,115,91,0,0,0,124,1,0,100,1,0,107,2,0, - 114,21,0,100,2,0,125,1,0,110,0,0,121,17,0,116, - 0,0,106,1,0,124,1,0,25,125,2,0,87,110,46,0, - 4,116,2,0,107,10,0,114,86,0,1,1,1,124,0,0, - 106,3,0,124,1,0,131,1,0,125,2,0,124,2,0,116, - 0,0,106,1,0,124,1,0,60,89,110,1,0,88,124,2, - 0,83,40,3,0,0,0,117,210,0,0,0,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,117,0, - 0,0,0,117,1,0,0,0,46,40,4,0,0,0,117,3, - 0,0,0,115,121,115,117,19,0,0,0,112,97,116,104,95, - 105,109,112,111,114,116,101,114,95,99,97,99,104,101,117,8, - 0,0,0,75,101,121,69,114,114,111,114,117,11,0,0,0, - 95,112,97,116,104,95,104,111,111,107,115,40,3,0,0,0, - 117,3,0,0,0,99,108,115,117,4,0,0,0,112,97,116, - 104,117,6,0,0,0,102,105,110,100,101,114,40,0,0,0, - 0,40,0,0,0,0,117,29,0,0,0,60,102,114,111,122, - 101,110,32,105,109,112,111,114,116,108,105,98,46,95,98,111, - 111,116,115,116,114,97,112,62,117,20,0,0,0,95,112,97, - 116,104,95,105,109,112,111,114,116,101,114,95,99,97,99,104, - 101,237,4,0,0,115,16,0,0,0,0,8,12,1,9,1, - 3,1,17,1,13,1,15,1,18,1,117,31,0,0,0,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,8,0,0,0,4,0,0,0,67, - 0,0,0,115,162,0,0,0,103,0,0,125,3,0,120,149, - 0,124,2,0,68,93,131,0,125,4,0,124,0,0,106,0, - 0,124,4,0,131,1,0,125,5,0,124,5,0,100,2,0, - 107,9,0,114,13,0,116,2,0,124,5,0,100,1,0,131, - 2,0,114,85,0,124,5,0,106,3,0,124,1,0,131,1, - 0,92,2,0,125,6,0,125,7,0,110,21,0,124,5,0, - 106,4,0,124,1,0,131,1,0,125,6,0,103,0,0,125, - 7,0,124,6,0,100,2,0,107,9,0,114,128,0,124,6, - 0,124,3,0,102,2,0,83,124,3,0,106,5,0,124,7, - 0,131,1,0,1,113,13,0,113,13,0,87,100,2,0,124, - 3,0,102,2,0,83,100,2,0,83,40,3,0,0,0,117, - 63,0,0,0,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,117,11,0,0,0,102,105,110,100,95,108,111,97, - 100,101,114,78,40,6,0,0,0,117,20,0,0,0,95,112, - 97,116,104,95,105,109,112,111,114,116,101,114,95,99,97,99, - 104,101,117,4,0,0,0,78,111,110,101,117,7,0,0,0, - 104,97,115,97,116,116,114,117,11,0,0,0,102,105,110,100, - 95,108,111,97,100,101,114,117,11,0,0,0,102,105,110,100, - 95,109,111,100,117,108,101,117,6,0,0,0,101,120,116,101, - 110,100,40,8,0,0,0,117,3,0,0,0,99,108,115,117, - 8,0,0,0,102,117,108,108,110,97,109,101,117,4,0,0, - 0,112,97,116,104,117,14,0,0,0,110,97,109,101,115,112, - 97,99,101,95,112,97,116,104,117,5,0,0,0,101,110,116, - 114,121,117,6,0,0,0,102,105,110,100,101,114,117,6,0, - 0,0,108,111,97,100,101,114,117,8,0,0,0,112,111,114, - 116,105,111,110,115,40,0,0,0,0,40,0,0,0,0,117, - 29,0,0,0,60,102,114,111,122,101,110,32,105,109,112,111, - 114,116,108,105,98,46,95,98,111,111,116,115,116,114,97,112, - 62,117,11,0,0,0,95,103,101,116,95,108,111,97,100,101, - 114,254,4,0,0,115,24,0,0,0,0,5,6,1,13,1, - 15,1,12,1,15,1,24,2,15,1,6,1,12,2,10,5, - 20,2,117,22,0,0,0,80,97,116,104,70,105,110,100,101, - 114,46,95,103,101,116,95,108,111,97,100,101,114,99,3,0, - 0,0,0,0,0,0,5,0,0,0,4,0,0,0,67,0, - 0,0,115,97,0,0,0,124,2,0,100,1,0,107,8,0, - 114,24,0,116,1,0,106,2,0,125,2,0,110,0,0,124, - 0,0,106,3,0,124,1,0,124,2,0,131,2,0,92,2, - 0,125,3,0,125,4,0,124,3,0,100,1,0,107,9,0, - 114,64,0,124,3,0,83,124,4,0,114,89,0,116,4,0, - 124,1,0,124,4,0,124,0,0,106,3,0,131,3,0,83, - 100,1,0,83,100,1,0,83,40,2,0,0,0,117,98,0, - 0,0,70,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,78,40,5,0,0,0,117,4,0,0,0,78, - 111,110,101,117,3,0,0,0,115,121,115,117,4,0,0,0, - 112,97,116,104,117,11,0,0,0,95,103,101,116,95,108,111, - 97,100,101,114,117,15,0,0,0,78,97,109,101,115,112,97, - 99,101,76,111,97,100,101,114,40,5,0,0,0,117,3,0, - 0,0,99,108,115,117,8,0,0,0,102,117,108,108,110,97, - 109,101,117,4,0,0,0,112,97,116,104,117,6,0,0,0, - 108,111,97,100,101,114,117,14,0,0,0,110,97,109,101,115, - 112,97,99,101,95,112,97,116,104,40,0,0,0,0,40,0, - 0,0,0,117,29,0,0,0,60,102,114,111,122,101,110,32, - 105,109,112,111,114,116,108,105,98,46,95,98,111,111,116,115, - 116,114,97,112,62,117,11,0,0,0,102,105,110,100,95,109, - 111,100,117,108,101,23,5,0,0,115,16,0,0,0,0,4, - 12,1,12,1,24,1,12,1,4,2,6,3,19,2,117,22, - 0,0,0,80,97,116,104,70,105,110,100,101,114,46,102,105, - 110,100,95,109,111,100,117,108,101,78,40,11,0,0,0,117, - 8,0,0,0,95,95,110,97,109,101,95,95,117,10,0,0, - 0,95,95,109,111,100,117,108,101,95,95,117,12,0,0,0, - 95,95,113,117,97,108,110,97,109,101,95,95,117,7,0,0, - 0,95,95,100,111,99,95,95,117,11,0,0,0,99,108,97, - 115,115,109,101,116,104,111,100,117,17,0,0,0,105,110,118, - 97,108,105,100,97,116,101,95,99,97,99,104,101,115,117,11, - 0,0,0,95,112,97,116,104,95,104,111,111,107,115,117,20, - 0,0,0,95,112,97,116,104,95,105,109,112,111,114,116,101, - 114,95,99,97,99,104,101,117,11,0,0,0,95,103,101,116, - 95,108,111,97,100,101,114,117,4,0,0,0,78,111,110,101, + 10,0,0,0,105,115,95,112,97,99,107,97,103,101,168,2, + 0,0,115,2,0,0,0,0,4,117,26,0,0,0,66,117, + 105,108,116,105,110,73,109,112,111,114,116,101,114,46,105,115, + 95,112,97,99,107,97,103,101,78,40,15,0,0,0,117,8, + 0,0,0,95,95,110,97,109,101,95,95,117,10,0,0,0, + 95,95,109,111,100,117,108,101,95,95,117,12,0,0,0,95, + 95,113,117,97,108,110,97,109,101,95,95,117,7,0,0,0, + 95,95,100,111,99,95,95,117,11,0,0,0,99,108,97,115, + 115,109,101,116,104,111,100,117,11,0,0,0,109,111,100,117, + 108,101,95,114,101,112,114,117,4,0,0,0,78,111,110,101, 117,11,0,0,0,102,105,110,100,95,109,111,100,117,108,101, + 117,11,0,0,0,115,101,116,95,112,97,99,107,97,103,101, + 117,10,0,0,0,115,101,116,95,108,111,97,100,101,114,117, + 17,0,0,0,95,114,101,113,117,105,114,101,115,95,98,117, + 105,108,116,105,110,117,11,0,0,0,108,111,97,100,95,109, + 111,100,117,108,101,117,8,0,0,0,103,101,116,95,99,111, + 100,101,117,10,0,0,0,103,101,116,95,115,111,117,114,99, + 101,117,10,0,0,0,105,115,95,112,97,99,107,97,103,101, 40,1,0,0,0,117,10,0,0,0,95,95,108,111,99,97, 108,115,95,95,40,0,0,0,0,40,0,0,0,0,117,29, 0,0,0,60,102,114,111,122,101,110,32,105,109,112,111,114, 116,108,105,98,46,95,98,111,111,116,115,116,114,97,112,62, - 117,10,0,0,0,80,97,116,104,70,105,110,100,101,114,208, - 4,0,0,115,14,0,0,0,16,2,6,2,18,8,18,17, - 18,17,18,25,3,1,117,10,0,0,0,80,97,116,104,70, - 105,110,100,101,114,99,1,0,0,0,0,0,0,0,1,0, - 0,0,3,0,0,0,66,0,0,0,115,110,0,0,0,124, - 0,0,69,101,0,0,90,1,0,100,0,0,90,2,0,100, - 1,0,90,3,0,100,2,0,100,3,0,132,0,0,90,4, - 0,100,4,0,100,5,0,132,0,0,90,5,0,101,6,0, - 90,7,0,100,6,0,100,7,0,132,0,0,90,8,0,100, - 8,0,100,9,0,132,0,0,90,9,0,101,10,0,100,10, - 0,100,11,0,132,0,0,131,1,0,90,11,0,100,12,0, - 100,13,0,132,0,0,90,12,0,100,14,0,83,40,15,0, - 0,0,117,10,0,0,0,70,105,108,101,70,105,110,100,101, - 114,117,172,0,0,0,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,5,0,0,0,5, - 0,0,0,7,0,0,0,115,122,0,0,0,103,0,0,125, - 3,0,120,52,0,124,2,0,68,93,44,0,92,2,0,137, - 0,0,125,4,0,124,3,0,106,0,0,135,0,0,102,1, - 0,100,1,0,100,2,0,134,0,0,124,4,0,68,131,1, - 0,131,1,0,1,113,13,0,87,124,3,0,124,0,0,95, - 1,0,124,1,0,112,79,0,100,3,0,124,0,0,95,2, - 0,100,6,0,124,0,0,95,3,0,116,4,0,131,0,0, - 124,0,0,95,5,0,116,4,0,131,0,0,124,0,0,95, - 6,0,100,5,0,83,40,7,0,0,0,117,201,0,0,0, - 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,51,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,44,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,32, - 114,101,99,111,103,110,105,122,101,115,44,10,32,32,32,32, - 32,32,32,32,97,110,100,32,97,32,98,111,111,108,101,97, - 110,32,111,102,32,119,104,101,116,104,101,114,32,116,104,101, - 32,108,111,97,100,101,114,32,104,97,110,100,108,101,115,32, - 112,97,99,107,97,103,101,115,46,99,1,0,0,0,0,0, - 0,0,2,0,0,0,3,0,0,0,51,0,0,0,115,27, - 0,0,0,124,0,0,93,17,0,125,1,0,124,1,0,136, - 0,0,102,2,0,86,1,113,3,0,100,0,0,83,40,1, - 0,0,0,78,40,0,0,0,0,40,2,0,0,0,117,2, - 0,0,0,46,48,117,6,0,0,0,115,117,102,102,105,120, - 40,1,0,0,0,117,6,0,0,0,108,111,97,100,101,114, - 40,0,0,0,0,117,29,0,0,0,60,102,114,111,122,101, - 110,32,105,109,112,111,114,116,108,105,98,46,95,98,111,111, - 116,115,116,114,97,112,62,117,9,0,0,0,60,103,101,110, - 101,120,112,114,62,56,5,0,0,115,2,0,0,0,6,0, - 117,38,0,0,0,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,117,1,0,0,0, - 46,105,1,0,0,0,78,105,255,255,255,255,40,7,0,0, - 0,117,6,0,0,0,101,120,116,101,110,100,117,8,0,0, - 0,95,108,111,97,100,101,114,115,117,4,0,0,0,112,97, - 116,104,117,11,0,0,0,95,112,97,116,104,95,109,116,105, - 109,101,117,3,0,0,0,115,101,116,117,11,0,0,0,95, - 112,97,116,104,95,99,97,99,104,101,117,19,0,0,0,95, - 114,101,108,97,120,101,100,95,112,97,116,104,95,99,97,99, - 104,101,40,5,0,0,0,117,4,0,0,0,115,101,108,102, - 117,4,0,0,0,112,97,116,104,117,7,0,0,0,100,101, - 116,97,105,108,115,117,7,0,0,0,108,111,97,100,101,114, - 115,117,8,0,0,0,115,117,102,102,105,120,101,115,40,0, - 0,0,0,40,1,0,0,0,117,6,0,0,0,108,111,97, - 100,101,114,117,29,0,0,0,60,102,114,111,122,101,110,32, + 117,15,0,0,0,66,117,105,108,116,105,110,73,109,112,111, + 114,116,101,114,118,2,0,0,115,28,0,0,0,16,7,6, + 2,18,4,3,1,18,10,3,1,3,1,3,1,27,11,3, + 1,21,5,3,1,21,5,3,1,117,15,0,0,0,66,117, + 105,108,116,105,110,73,109,112,111,114,116,101,114,99,1,0, + 0,0,0,0,0,0,1,0,0,0,6,0,0,0,66,0, + 0,0,115,173,0,0,0,124,0,0,69,101,0,0,90,1, + 0,100,0,0,90,2,0,100,1,0,90,3,0,101,4,0, + 100,2,0,100,3,0,132,0,0,131,1,0,90,5,0,101, + 4,0,100,14,0,100,4,0,100,5,0,132,1,0,131,1, + 0,90,7,0,101,4,0,101,8,0,101,9,0,101,10,0, + 100,6,0,100,7,0,132,0,0,131,1,0,131,1,0,131, + 1,0,131,1,0,90,11,0,101,4,0,101,10,0,100,8, + 0,100,9,0,132,0,0,131,1,0,131,1,0,90,12,0, + 101,4,0,101,10,0,100,10,0,100,11,0,132,0,0,131, + 1,0,131,1,0,90,13,0,101,4,0,101,10,0,100,12, + 0,100,13,0,132,0,0,131,1,0,131,1,0,90,14,0, + 100,14,0,83,40,15,0,0,0,117,14,0,0,0,70,114, + 111,122,101,110,73,109,112,111,114,116,101,114,117,142,0,0, + 0,77,101,116,97,32,112,97,116,104,32,105,109,112,111,114, + 116,32,102,111,114,32,102,114,111,122,101,110,32,109,111,100, + 117,108,101,115,46,10,10,32,32,32,32,65,108,108,32,109, + 101,116,104,111,100,115,32,97,114,101,32,101,105,116,104,101, + 114,32,99,108,97,115,115,32,111,114,32,115,116,97,116,105, + 99,32,109,101,116,104,111,100,115,32,116,111,32,97,118,111, + 105,100,32,116,104,101,32,110,101,101,100,32,116,111,10,32, + 32,32,32,105,110,115,116,97,110,116,105,97,116,101,32,116, + 104,101,32,99,108,97,115,115,46,10,10,32,32,32,32,99, + 2,0,0,0,0,0,0,0,2,0,0,0,2,0,0,0, + 67,0,0,0,115,16,0,0,0,100,1,0,106,0,0,124, + 1,0,106,1,0,131,1,0,83,40,2,0,0,0,78,117, + 22,0,0,0,60,109,111,100,117,108,101,32,39,123,125,39, + 32,40,102,114,111,122,101,110,41,62,40,2,0,0,0,117, + 6,0,0,0,102,111,114,109,97,116,117,8,0,0,0,95, + 95,110,97,109,101,95,95,40,2,0,0,0,117,3,0,0, + 0,99,108,115,117,1,0,0,0,109,40,0,0,0,0,40, + 0,0,0,0,117,29,0,0,0,60,102,114,111,122,101,110, + 32,105,109,112,111,114,116,108,105,98,46,95,98,111,111,116, + 115,116,114,97,112,62,117,11,0,0,0,109,111,100,117,108, + 101,95,114,101,112,114,184,2,0,0,115,2,0,0,0,0, + 2,117,26,0,0,0,70,114,111,122,101,110,73,109,112,111, + 114,116,101,114,46,109,111,100,117,108,101,95,114,101,112,114, + 99,3,0,0,0,0,0,0,0,3,0,0,0,2,0,0, + 0,67,0,0,0,115,23,0,0,0,116,0,0,106,1,0, + 124,1,0,131,1,0,114,19,0,124,0,0,83,100,1,0, + 83,40,2,0,0,0,117,21,0,0,0,70,105,110,100,32, + 97,32,102,114,111,122,101,110,32,109,111,100,117,108,101,46, + 78,40,3,0,0,0,117,4,0,0,0,95,105,109,112,117, + 9,0,0,0,105,115,95,102,114,111,122,101,110,117,4,0, + 0,0,78,111,110,101,40,3,0,0,0,117,3,0,0,0, + 99,108,115,117,8,0,0,0,102,117,108,108,110,97,109,101, + 117,4,0,0,0,112,97,116,104,40,0,0,0,0,40,0, + 0,0,0,117,29,0,0,0,60,102,114,111,122,101,110,32, 105,109,112,111,114,116,108,105,98,46,95,98,111,111,116,115, - 116,114,97,112,62,117,8,0,0,0,95,95,105,110,105,116, - 95,95,50,5,0,0,115,16,0,0,0,0,4,6,1,19, - 1,36,1,9,2,15,1,9,1,12,1,117,19,0,0,0, - 70,105,108,101,70,105,110,100,101,114,46,95,95,105,110,105, - 116,95,95,99,1,0,0,0,0,0,0,0,1,0,0,0, - 2,0,0,0,67,0,0,0,115,13,0,0,0,100,3,0, - 124,0,0,95,0,0,100,2,0,83,40,4,0,0,0,117, - 31,0,0,0,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,105,1,0,0,0,78,105,255,255,255,255,40,1, - 0,0,0,117,11,0,0,0,95,112,97,116,104,95,109,116, - 105,109,101,40,1,0,0,0,117,4,0,0,0,115,101,108, - 102,40,0,0,0,0,40,0,0,0,0,117,29,0,0,0, - 60,102,114,111,122,101,110,32,105,109,112,111,114,116,108,105, - 98,46,95,98,111,111,116,115,116,114,97,112,62,117,17,0, - 0,0,105,110,118,97,108,105,100,97,116,101,95,99,97,99, - 104,101,115,64,5,0,0,115,2,0,0,0,0,2,117,28, - 0,0,0,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,12,0,0,0,13,0,0,0, - 67,0,0,0,115,172,1,0,0,100,5,0,125,2,0,124, - 1,0,106,1,0,100,1,0,131,1,0,100,2,0,25,125, - 3,0,121,25,0,116,2,0,106,3,0,124,0,0,106,4, - 0,131,1,0,106,5,0,125,4,0,87,110,24,0,4,116, - 6,0,107,10,0,114,76,0,1,1,1,100,6,0,125,4, - 0,89,110,1,0,88,124,4,0,124,0,0,106,7,0,107, - 3,0,114,114,0,124,0,0,106,8,0,131,0,0,1,124, - 4,0,124,0,0,95,7,0,110,0,0,116,9,0,131,0, - 0,114,147,0,124,0,0,106,10,0,125,5,0,124,3,0, - 106,11,0,131,0,0,125,6,0,110,15,0,124,0,0,106, - 12,0,125,5,0,124,3,0,125,6,0,124,6,0,124,5, - 0,107,6,0,114,45,1,116,13,0,124,0,0,106,4,0, - 124,3,0,131,2,0,125,7,0,116,14,0,124,7,0,131, - 1,0,114,45,1,120,91,0,124,0,0,106,15,0,68,93, - 71,0,92,2,0,125,8,0,125,9,0,100,4,0,124,8, - 0,23,125,10,0,116,13,0,124,7,0,124,10,0,131,2, - 0,125,11,0,116,16,0,124,11,0,131,1,0,114,214,0, - 124,9,0,124,1,0,124,11,0,131,2,0,124,7,0,103, - 1,0,102,2,0,83,113,214,0,87,100,7,0,125,2,0, - 113,45,1,110,0,0,120,95,0,124,0,0,106,15,0,68, - 93,84,0,92,2,0,125,8,0,125,9,0,124,6,0,124, - 8,0,23,124,5,0,107,6,0,114,55,1,116,13,0,124, - 0,0,106,4,0,124,3,0,124,8,0,23,131,2,0,125, - 11,0,116,16,0,124,11,0,131,1,0,114,139,1,124,9, - 0,124,1,0,124,11,0,131,2,0,103,0,0,102,2,0, - 83,113,55,1,113,55,1,87,124,2,0,114,162,1,100,8, - 0,124,7,0,103,1,0,102,2,0,83,100,8,0,103,0, - 0,102,2,0,83,40,9,0,0,0,117,125,0,0,0,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,117,1,0,0, - 0,46,105,2,0,0,0,105,1,0,0,0,117,8,0,0, - 0,95,95,105,110,105,116,95,95,70,105,255,255,255,255,84, - 78,40,19,0,0,0,117,5,0,0,0,70,97,108,115,101, - 117,10,0,0,0,114,112,97,114,116,105,116,105,111,110,117, - 3,0,0,0,95,111,115,117,4,0,0,0,115,116,97,116, - 117,4,0,0,0,112,97,116,104,117,8,0,0,0,115,116, - 95,109,116,105,109,101,117,7,0,0,0,79,83,69,114,114, - 111,114,117,11,0,0,0,95,112,97,116,104,95,109,116,105, - 109,101,117,11,0,0,0,95,102,105,108,108,95,99,97,99, - 104,101,117,11,0,0,0,95,114,101,108,97,120,95,99,97, - 115,101,117,19,0,0,0,95,114,101,108,97,120,101,100,95, - 112,97,116,104,95,99,97,99,104,101,117,5,0,0,0,108, - 111,119,101,114,117,11,0,0,0,95,112,97,116,104,95,99, - 97,99,104,101,117,10,0,0,0,95,112,97,116,104,95,106, - 111,105,110,117,11,0,0,0,95,112,97,116,104,95,105,115, - 100,105,114,117,8,0,0,0,95,108,111,97,100,101,114,115, - 117,12,0,0,0,95,112,97,116,104,95,105,115,102,105,108, - 101,117,4,0,0,0,84,114,117,101,117,4,0,0,0,78, - 111,110,101,40,12,0,0,0,117,4,0,0,0,115,101,108, - 102,117,8,0,0,0,102,117,108,108,110,97,109,101,117,12, - 0,0,0,105,115,95,110,97,109,101,115,112,97,99,101,117, - 11,0,0,0,116,97,105,108,95,109,111,100,117,108,101,117, - 5,0,0,0,109,116,105,109,101,117,5,0,0,0,99,97, - 99,104,101,117,12,0,0,0,99,97,99,104,101,95,109,111, - 100,117,108,101,117,9,0,0,0,98,97,115,101,95,112,97, - 116,104,117,6,0,0,0,115,117,102,102,105,120,117,6,0, - 0,0,108,111,97,100,101,114,117,13,0,0,0,105,110,105, - 116,95,102,105,108,101,110,97,109,101,117,9,0,0,0,102, - 117,108,108,95,112,97,116,104,40,0,0,0,0,40,0,0, + 116,114,97,112,62,117,11,0,0,0,102,105,110,100,95,109, + 111,100,117,108,101,188,2,0,0,115,2,0,0,0,0,3, + 117,26,0,0,0,70,114,111,122,101,110,73,109,112,111,114, + 116,101,114,46,102,105,110,100,95,109,111,100,117,108,101,99, + 2,0,0,0,0,0,0,0,4,0,0,0,9,0,0,0, + 67,0,0,0,115,100,0,0,0,124,1,0,116,0,0,106, + 1,0,107,6,0,125,2,0,121,32,0,116,2,0,116,3, + 0,106,4,0,124,1,0,131,2,0,125,3,0,124,3,0, + 96,5,0,124,3,0,83,87,110,46,0,1,1,1,124,2, + 0,12,114,88,0,124,1,0,116,0,0,106,1,0,107,6, + 0,114,88,0,116,0,0,106,1,0,124,1,0,61,110,0, + 0,130,0,0,89,110,1,0,88,100,1,0,83,40,2,0, + 0,0,117,21,0,0,0,76,111,97,100,32,97,32,102,114, + 111,122,101,110,32,109,111,100,117,108,101,46,78,40,6,0, + 0,0,117,3,0,0,0,115,121,115,117,7,0,0,0,109, + 111,100,117,108,101,115,117,25,0,0,0,95,99,97,108,108, + 95,119,105,116,104,95,102,114,97,109,101,115,95,114,101,109, + 111,118,101,100,117,4,0,0,0,95,105,109,112,117,11,0, + 0,0,105,110,105,116,95,102,114,111,122,101,110,117,8,0, + 0,0,95,95,102,105,108,101,95,95,40,4,0,0,0,117, + 3,0,0,0,99,108,115,117,8,0,0,0,102,117,108,108, + 110,97,109,101,117,9,0,0,0,105,115,95,114,101,108,111, + 97,100,117,1,0,0,0,109,40,0,0,0,0,40,0,0, 0,0,117,29,0,0,0,60,102,114,111,122,101,110,32,105, 109,112,111,114,116,108,105,98,46,95,98,111,111,116,115,116, - 114,97,112,62,117,11,0,0,0,102,105,110,100,95,108,111, - 97,100,101,114,70,5,0,0,115,62,0,0,0,0,3,6, - 1,19,1,3,1,25,1,13,1,11,1,15,1,10,1,12, - 2,9,1,9,1,15,2,9,1,6,2,12,1,18,1,12, - 1,22,1,10,1,15,1,12,1,26,4,12,2,22,1,16, - 1,22,1,12,1,26,1,6,1,13,1,117,22,0,0,0, - 70,105,108,101,70,105,110,100,101,114,46,102,105,110,100,95, - 108,111,97,100,101,114,99,1,0,0,0,0,0,0,0,9, - 0,0,0,12,0,0,0,67,0,0,0,115,255,0,0,0, - 124,0,0,106,0,0,125,1,0,121,19,0,116,1,0,106, - 2,0,124,1,0,131,1,0,125,2,0,87,110,24,0,4, - 116,3,0,107,10,0,114,54,0,1,1,1,103,0,0,125, - 2,0,89,110,1,0,88,116,4,0,106,5,0,106,6,0, - 100,1,0,131,1,0,115,91,0,116,7,0,124,2,0,131, - 1,0,124,0,0,95,8,0,110,111,0,116,7,0,131,0, - 0,125,3,0,120,90,0,124,2,0,68,93,82,0,125,4, - 0,124,4,0,106,9,0,100,2,0,131,1,0,92,3,0, - 125,5,0,125,6,0,125,7,0,124,6,0,114,170,0,100, - 3,0,106,10,0,124,5,0,124,7,0,106,11,0,131,0, - 0,131,2,0,125,8,0,110,6,0,124,5,0,125,8,0, - 124,3,0,106,12,0,124,8,0,131,1,0,1,113,107,0, - 87,124,3,0,124,0,0,95,8,0,116,4,0,106,5,0, - 106,6,0,116,13,0,131,1,0,114,251,0,116,7,0,100, - 4,0,100,5,0,132,0,0,124,2,0,68,131,1,0,131, - 1,0,124,0,0,95,14,0,110,0,0,100,6,0,83,40, - 7,0,0,0,117,68,0,0,0,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,117,3,0, - 0,0,119,105,110,117,1,0,0,0,46,117,5,0,0,0, - 123,125,46,123,125,99,1,0,0,0,0,0,0,0,2,0, - 0,0,2,0,0,0,115,0,0,0,115,27,0,0,0,124, - 0,0,93,17,0,125,1,0,124,1,0,106,0,0,131,0, - 0,86,1,113,3,0,100,0,0,83,40,1,0,0,0,78, - 40,1,0,0,0,117,5,0,0,0,108,111,119,101,114,40, - 2,0,0,0,117,2,0,0,0,46,48,117,2,0,0,0, - 102,110,40,0,0,0,0,40,0,0,0,0,117,29,0,0, + 114,97,112,62,117,11,0,0,0,108,111,97,100,95,109,111, + 100,117,108,101,193,2,0,0,115,18,0,0,0,0,6,15, + 1,3,1,18,2,6,1,8,1,3,1,22,1,13,1,117, + 26,0,0,0,70,114,111,122,101,110,73,109,112,111,114,116, + 101,114,46,108,111,97,100,95,109,111,100,117,108,101,99,2, + 0,0,0,0,0,0,0,2,0,0,0,2,0,0,0,67, + 0,0,0,115,13,0,0,0,116,0,0,106,1,0,124,1, + 0,131,1,0,83,40,1,0,0,0,117,45,0,0,0,82, + 101,116,117,114,110,32,116,104,101,32,99,111,100,101,32,111, + 98,106,101,99,116,32,102,111,114,32,116,104,101,32,102,114, + 111,122,101,110,32,109,111,100,117,108,101,46,40,2,0,0, + 0,117,4,0,0,0,95,105,109,112,117,17,0,0,0,103, + 101,116,95,102,114,111,122,101,110,95,111,98,106,101,99,116, + 40,2,0,0,0,117,3,0,0,0,99,108,115,117,8,0, + 0,0,102,117,108,108,110,97,109,101,40,0,0,0,0,40, + 0,0,0,0,117,29,0,0,0,60,102,114,111,122,101,110, + 32,105,109,112,111,114,116,108,105,98,46,95,98,111,111,116, + 115,116,114,97,112,62,117,8,0,0,0,103,101,116,95,99, + 111,100,101,210,2,0,0,115,2,0,0,0,0,4,117,23, + 0,0,0,70,114,111,122,101,110,73,109,112,111,114,116,101, + 114,46,103,101,116,95,99,111,100,101,99,2,0,0,0,0, + 0,0,0,2,0,0,0,1,0,0,0,67,0,0,0,115, + 4,0,0,0,100,1,0,83,40,2,0,0,0,117,54,0, + 0,0,82,101,116,117,114,110,32,78,111,110,101,32,97,115, + 32,102,114,111,122,101,110,32,109,111,100,117,108,101,115,32, + 100,111,32,110,111,116,32,104,97,118,101,32,115,111,117,114, + 99,101,32,99,111,100,101,46,78,40,1,0,0,0,117,4, + 0,0,0,78,111,110,101,40,2,0,0,0,117,3,0,0, + 0,99,108,115,117,8,0,0,0,102,117,108,108,110,97,109, + 101,40,0,0,0,0,40,0,0,0,0,117,29,0,0,0, + 60,102,114,111,122,101,110,32,105,109,112,111,114,116,108,105, + 98,46,95,98,111,111,116,115,116,114,97,112,62,117,10,0, + 0,0,103,101,116,95,115,111,117,114,99,101,216,2,0,0, + 115,2,0,0,0,0,4,117,25,0,0,0,70,114,111,122, + 101,110,73,109,112,111,114,116,101,114,46,103,101,116,95,115, + 111,117,114,99,101,99,2,0,0,0,0,0,0,0,2,0, + 0,0,2,0,0,0,67,0,0,0,115,13,0,0,0,116, + 0,0,106,1,0,124,1,0,131,1,0,83,40,1,0,0, + 0,117,46,0,0,0,82,101,116,117,114,110,32,84,114,117, + 101,32,105,102,32,116,104,101,32,102,114,111,122,101,110,32, + 109,111,100,117,108,101,32,105,115,32,97,32,112,97,99,107, + 97,103,101,46,40,2,0,0,0,117,4,0,0,0,95,105, + 109,112,117,17,0,0,0,105,115,95,102,114,111,122,101,110, + 95,112,97,99,107,97,103,101,40,2,0,0,0,117,3,0, + 0,0,99,108,115,117,8,0,0,0,102,117,108,108,110,97, + 109,101,40,0,0,0,0,40,0,0,0,0,117,29,0,0, 0,60,102,114,111,122,101,110,32,105,109,112,111,114,116,108, - 105,98,46,95,98,111,111,116,115,116,114,97,112,62,117,9, - 0,0,0,60,103,101,110,101,120,112,114,62,140,5,0,0, - 115,2,0,0,0,6,0,117,41,0,0,0,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,103,101,110, - 101,120,112,114,62,78,40,15,0,0,0,117,4,0,0,0, - 112,97,116,104,117,3,0,0,0,95,111,115,117,7,0,0, - 0,108,105,115,116,100,105,114,117,17,0,0,0,70,105,108, - 101,78,111,116,70,111,117,110,100,69,114,114,111,114,117,3, - 0,0,0,115,121,115,117,8,0,0,0,112,108,97,116,102, - 111,114,109,117,10,0,0,0,115,116,97,114,116,115,119,105, - 116,104,117,3,0,0,0,115,101,116,117,11,0,0,0,95, - 112,97,116,104,95,99,97,99,104,101,117,9,0,0,0,112, - 97,114,116,105,116,105,111,110,117,6,0,0,0,102,111,114, - 109,97,116,117,5,0,0,0,108,111,119,101,114,117,3,0, - 0,0,97,100,100,117,27,0,0,0,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,117,19,0,0,0,95,114,101,108,97,120, - 101,100,95,112,97,116,104,95,99,97,99,104,101,40,9,0, - 0,0,117,4,0,0,0,115,101,108,102,117,4,0,0,0, - 112,97,116,104,117,8,0,0,0,99,111,110,116,101,110,116, - 115,117,21,0,0,0,108,111,119,101,114,95,115,117,102,102, - 105,120,95,99,111,110,116,101,110,116,115,117,4,0,0,0, - 105,116,101,109,117,4,0,0,0,110,97,109,101,117,3,0, - 0,0,100,111,116,117,6,0,0,0,115,117,102,102,105,120, - 117,8,0,0,0,110,101,119,95,110,97,109,101,40,0,0, - 0,0,40,0,0,0,0,117,29,0,0,0,60,102,114,111, - 122,101,110,32,105,109,112,111,114,116,108,105,98,46,95,98, - 111,111,116,115,116,114,97,112,62,117,11,0,0,0,95,102, - 105,108,108,95,99,97,99,104,101,112,5,0,0,115,34,0, - 0,0,0,2,9,1,3,1,19,1,13,2,11,3,18,1, - 18,7,9,1,13,1,24,1,6,1,27,2,6,1,17,1, - 9,1,18,1,117,22,0,0,0,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,3,0,0,0,3,0,0,0, - 7,0,0,0,115,25,0,0,0,135,0,0,135,1,0,102, - 2,0,100,1,0,100,2,0,134,0,0,125,2,0,124,2, - 0,83,40,3,0,0,0,117,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,1,0,0,0,4,0,0, - 0,19,0,0,0,115,46,0,0,0,116,0,0,124,0,0, - 131,1,0,115,33,0,116,1,0,100,1,0,100,2,0,124, - 0,0,131,1,1,130,1,0,110,0,0,136,0,0,124,0, - 0,136,1,0,140,1,0,83,40,3,0,0,0,117,45,0, - 0,0,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,117, - 30,0,0,0,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,117,4,0,0,0,112,97,116,104,40,2,0,0,0, - 117,11,0,0,0,95,112,97,116,104,95,105,115,100,105,114, - 117,11,0,0,0,73,109,112,111,114,116,69,114,114,111,114, - 40,1,0,0,0,117,4,0,0,0,112,97,116,104,40,2, - 0,0,0,117,3,0,0,0,99,108,115,117,14,0,0,0, - 108,111,97,100,101,114,95,100,101,116,97,105,108,115,40,0, - 0,0,0,117,29,0,0,0,60,102,114,111,122,101,110,32, - 105,109,112,111,114,116,108,105,98,46,95,98,111,111,116,115, - 116,114,97,112,62,117,24,0,0,0,112,97,116,104,95,104, - 111,111,107,95,102,111,114,95,70,105,108,101,70,105,110,100, - 101,114,152,5,0,0,115,6,0,0,0,0,2,12,1,21, - 1,117,54,0,0,0,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,40,0,0,0, - 0,40,3,0,0,0,117,3,0,0,0,99,108,115,117,14, - 0,0,0,108,111,97,100,101,114,95,100,101,116,97,105,108, - 115,117,24,0,0,0,112,97,116,104,95,104,111,111,107,95, - 102,111,114,95,70,105,108,101,70,105,110,100,101,114,40,0, - 0,0,0,40,2,0,0,0,117,3,0,0,0,99,108,115, - 117,14,0,0,0,108,111,97,100,101,114,95,100,101,116,97, - 105,108,115,117,29,0,0,0,60,102,114,111,122,101,110,32, - 105,109,112,111,114,116,108,105,98,46,95,98,111,111,116,115, - 116,114,97,112,62,117,9,0,0,0,112,97,116,104,95,104, - 111,111,107,142,5,0,0,115,4,0,0,0,0,10,21,6, - 117,20,0,0,0,70,105,108,101,70,105,110,100,101,114,46, - 112,97,116,104,95,104,111,111,107,99,1,0,0,0,0,0, - 0,0,1,0,0,0,2,0,0,0,67,0,0,0,115,14, - 0,0,0,100,1,0,124,0,0,106,0,0,102,1,0,22, - 83,40,2,0,0,0,78,117,14,0,0,0,70,105,108,101, - 70,105,110,100,101,114,40,37,114,41,40,1,0,0,0,117, - 4,0,0,0,112,97,116,104,40,1,0,0,0,117,4,0, - 0,0,115,101,108,102,40,0,0,0,0,40,0,0,0,0, - 117,29,0,0,0,60,102,114,111,122,101,110,32,105,109,112, - 111,114,116,108,105,98,46,95,98,111,111,116,115,116,114,97, - 112,62,117,8,0,0,0,95,95,114,101,112,114,95,95,160, - 5,0,0,115,2,0,0,0,0,1,117,19,0,0,0,70, - 105,108,101,70,105,110,100,101,114,46,95,95,114,101,112,114, - 95,95,78,40,13,0,0,0,117,8,0,0,0,95,95,110, - 97,109,101,95,95,117,10,0,0,0,95,95,109,111,100,117, - 108,101,95,95,117,12,0,0,0,95,95,113,117,97,108,110, - 97,109,101,95,95,117,7,0,0,0,95,95,100,111,99,95, - 95,117,8,0,0,0,95,95,105,110,105,116,95,95,117,17, - 0,0,0,105,110,118,97,108,105,100,97,116,101,95,99,97, - 99,104,101,115,117,17,0,0,0,95,102,105,110,100,95,109, - 111,100,117,108,101,95,115,104,105,109,117,11,0,0,0,102, - 105,110,100,95,109,111,100,117,108,101,117,11,0,0,0,102, - 105,110,100,95,108,111,97,100,101,114,117,11,0,0,0,95, - 102,105,108,108,95,99,97,99,104,101,117,11,0,0,0,99, - 108,97,115,115,109,101,116,104,111,100,117,9,0,0,0,112, - 97,116,104,95,104,111,111,107,117,8,0,0,0,95,95,114, - 101,112,114,95,95,40,1,0,0,0,117,10,0,0,0,95, - 95,108,111,99,97,108,115,95,95,40,0,0,0,0,40,0, - 0,0,0,117,29,0,0,0,60,102,114,111,122,101,110,32, - 105,109,112,111,114,116,108,105,98,46,95,98,111,111,116,115, - 116,114,97,112,62,117,10,0,0,0,70,105,108,101,70,105, - 110,100,101,114,41,5,0,0,115,16,0,0,0,16,7,6, - 2,12,14,12,4,6,2,12,42,12,30,18,18,117,10,0, - 0,0,70,105,108,101,70,105,110,100,101,114,99,1,0,0, - 0,0,0,0,0,1,0,0,0,2,0,0,0,66,0,0, - 0,115,50,0,0,0,124,0,0,69,101,0,0,90,1,0, - 100,0,0,90,2,0,100,1,0,90,3,0,100,2,0,100, - 3,0,132,0,0,90,4,0,100,4,0,100,5,0,132,0, - 0,90,5,0,100,6,0,83,40,7,0,0,0,117,18,0, - 0,0,95,73,109,112,111,114,116,76,111,99,107,67,111,110, - 116,101,120,116,117,36,0,0,0,67,111,110,116,101,120,116, - 32,109,97,110,97,103,101,114,32,102,111,114,32,116,104,101, - 32,105,109,112,111,114,116,32,108,111,99,107,46,99,1,0, - 0,0,0,0,0,0,1,0,0,0,1,0,0,0,67,0, - 0,0,115,14,0,0,0,116,0,0,106,1,0,131,0,0, - 1,100,1,0,83,40,2,0,0,0,117,24,0,0,0,65, - 99,113,117,105,114,101,32,116,104,101,32,105,109,112,111,114, - 116,32,108,111,99,107,46,78,40,2,0,0,0,117,4,0, - 0,0,95,105,109,112,117,12,0,0,0,97,99,113,117,105, - 114,101,95,108,111,99,107,40,1,0,0,0,117,4,0,0, - 0,115,101,108,102,40,0,0,0,0,40,0,0,0,0,117, + 105,98,46,95,98,111,111,116,115,116,114,97,112,62,117,10, + 0,0,0,105,115,95,112,97,99,107,97,103,101,222,2,0, + 0,115,2,0,0,0,0,4,117,25,0,0,0,70,114,111, + 122,101,110,73,109,112,111,114,116,101,114,46,105,115,95,112, + 97,99,107,97,103,101,78,40,15,0,0,0,117,8,0,0, + 0,95,95,110,97,109,101,95,95,117,10,0,0,0,95,95, + 109,111,100,117,108,101,95,95,117,12,0,0,0,95,95,113, + 117,97,108,110,97,109,101,95,95,117,7,0,0,0,95,95, + 100,111,99,95,95,117,11,0,0,0,99,108,97,115,115,109, + 101,116,104,111,100,117,11,0,0,0,109,111,100,117,108,101, + 95,114,101,112,114,117,4,0,0,0,78,111,110,101,117,11, + 0,0,0,102,105,110,100,95,109,111,100,117,108,101,117,11, + 0,0,0,115,101,116,95,112,97,99,107,97,103,101,117,10, + 0,0,0,115,101,116,95,108,111,97,100,101,114,117,16,0, + 0,0,95,114,101,113,117,105,114,101,115,95,102,114,111,122, + 101,110,117,11,0,0,0,108,111,97,100,95,109,111,100,117, + 108,101,117,8,0,0,0,103,101,116,95,99,111,100,101,117, + 10,0,0,0,103,101,116,95,115,111,117,114,99,101,117,10, + 0,0,0,105,115,95,112,97,99,107,97,103,101,40,1,0, + 0,0,117,10,0,0,0,95,95,108,111,99,97,108,115,95, + 95,40,0,0,0,0,40,0,0,0,0,117,29,0,0,0, + 60,102,114,111,122,101,110,32,105,109,112,111,114,116,108,105, + 98,46,95,98,111,111,116,115,116,114,97,112,62,117,14,0, + 0,0,70,114,111,122,101,110,73,109,112,111,114,116,101,114, + 175,2,0,0,115,28,0,0,0,16,7,6,2,18,4,3, + 1,18,4,3,1,3,1,3,1,27,14,3,1,21,5,3, + 1,21,5,3,1,117,14,0,0,0,70,114,111,122,101,110, + 73,109,112,111,114,116,101,114,99,1,0,0,0,0,0,0, + 0,1,0,0,0,4,0,0,0,66,0,0,0,115,101,0, + 0,0,124,0,0,69,101,0,0,90,1,0,100,0,0,90, + 2,0,100,1,0,90,3,0,100,2,0,90,4,0,100,3, + 0,90,5,0,100,11,0,90,7,0,101,8,0,100,4,0, + 100,5,0,132,0,0,131,1,0,90,9,0,101,8,0,100, + 6,0,100,7,0,132,0,0,131,1,0,90,10,0,101,8, + 0,100,10,0,100,8,0,100,9,0,132,1,0,131,1,0, + 90,12,0,100,10,0,83,40,12,0,0,0,117,21,0,0, + 0,87,105,110,100,111,119,115,82,101,103,105,115,116,114,121, + 70,105,110,100,101,114,117,67,0,0,0,77,101,116,97,32, + 112,97,116,104,32,102,105,110,100,101,114,32,102,111,114,32, + 109,111,100,117,108,101,115,32,100,101,99,108,97,114,101,100, + 32,105,110,32,116,104,101,32,87,105,110,100,111,119,115,32, + 114,101,103,105,115,116,114,121,46,10,32,32,32,32,117,59, + 0,0,0,83,111,102,116,119,97,114,101,92,80,121,116,104, + 111,110,92,80,121,116,104,111,110,67,111,114,101,92,123,115, + 121,115,95,118,101,114,115,105,111,110,125,92,77,111,100,117, + 108,101,115,92,123,102,117,108,108,110,97,109,101,125,117,65, + 0,0,0,83,111,102,116,119,97,114,101,92,80,121,116,104, + 111,110,92,80,121,116,104,111,110,67,111,114,101,92,123,115, + 121,115,95,118,101,114,115,105,111,110,125,92,77,111,100,117, + 108,101,115,92,123,102,117,108,108,110,97,109,101,125,92,68, + 101,98,117,103,99,2,0,0,0,0,0,0,0,2,0,0, + 0,11,0,0,0,67,0,0,0,115,67,0,0,0,121,23, + 0,116,0,0,106,1,0,116,0,0,106,2,0,124,1,0, + 131,2,0,83,87,110,37,0,4,116,3,0,107,10,0,114, + 62,0,1,1,1,116,0,0,106,1,0,116,0,0,106,4, + 0,124,1,0,131,2,0,83,89,110,1,0,88,100,0,0, + 83,40,1,0,0,0,78,40,5,0,0,0,117,7,0,0, + 0,95,119,105,110,114,101,103,117,7,0,0,0,79,112,101, + 110,75,101,121,117,17,0,0,0,72,75,69,89,95,67,85, + 82,82,69,78,84,95,85,83,69,82,117,12,0,0,0,87, + 105,110,100,111,119,115,69,114,114,111,114,117,18,0,0,0, + 72,75,69,89,95,76,79,67,65,76,95,77,65,67,72,73, + 78,69,40,2,0,0,0,117,3,0,0,0,99,108,115,117, + 3,0,0,0,107,101,121,40,0,0,0,0,40,0,0,0, + 0,117,29,0,0,0,60,102,114,111,122,101,110,32,105,109, + 112,111,114,116,108,105,98,46,95,98,111,111,116,115,116,114, + 97,112,62,117,14,0,0,0,95,111,112,101,110,95,114,101, + 103,105,115,116,114,121,242,2,0,0,115,8,0,0,0,0, + 2,3,1,23,1,13,1,117,36,0,0,0,87,105,110,100, + 111,119,115,82,101,103,105,115,116,114,121,70,105,110,100,101, + 114,46,95,111,112,101,110,95,114,101,103,105,115,116,114,121, + 99,2,0,0,0,0,0,0,0,6,0,0,0,16,0,0, + 0,67,0,0,0,115,142,0,0,0,124,0,0,106,0,0, + 114,21,0,124,0,0,106,1,0,125,2,0,110,9,0,124, + 0,0,106,2,0,125,2,0,124,2,0,106,3,0,100,1, + 0,124,1,0,100,2,0,116,4,0,106,5,0,100,0,0, + 100,3,0,133,2,0,25,131,0,2,125,3,0,121,46,0, + 124,0,0,106,6,0,124,3,0,131,1,0,143,25,0,125, + 4,0,116,7,0,106,8,0,124,4,0,100,4,0,131,2, + 0,125,5,0,87,100,0,0,81,88,87,110,22,0,4,116, + 9,0,107,10,0,114,137,0,1,1,1,100,0,0,83,89, + 110,1,0,88,124,5,0,83,40,5,0,0,0,78,117,8, + 0,0,0,102,117,108,108,110,97,109,101,117,11,0,0,0, + 115,121,115,95,118,101,114,115,105,111,110,105,3,0,0,0, + 117,0,0,0,0,40,11,0,0,0,117,11,0,0,0,68, + 69,66,85,71,95,66,85,73,76,68,117,18,0,0,0,82, + 69,71,73,83,84,82,89,95,75,69,89,95,68,69,66,85, + 71,117,12,0,0,0,82,69,71,73,83,84,82,89,95,75, + 69,89,117,6,0,0,0,102,111,114,109,97,116,117,3,0, + 0,0,115,121,115,117,7,0,0,0,118,101,114,115,105,111, + 110,117,14,0,0,0,95,111,112,101,110,95,114,101,103,105, + 115,116,114,121,117,7,0,0,0,95,119,105,110,114,101,103, + 117,10,0,0,0,81,117,101,114,121,86,97,108,117,101,117, + 12,0,0,0,87,105,110,100,111,119,115,69,114,114,111,114, + 117,4,0,0,0,78,111,110,101,40,6,0,0,0,117,3, + 0,0,0,99,108,115,117,8,0,0,0,102,117,108,108,110, + 97,109,101,117,12,0,0,0,114,101,103,105,115,116,114,121, + 95,107,101,121,117,3,0,0,0,107,101,121,117,4,0,0, + 0,104,107,101,121,117,8,0,0,0,102,105,108,101,112,97, + 116,104,40,0,0,0,0,40,0,0,0,0,117,29,0,0, + 0,60,102,114,111,122,101,110,32,105,109,112,111,114,116,108, + 105,98,46,95,98,111,111,116,115,116,114,97,112,62,117,16, + 0,0,0,95,115,101,97,114,99,104,95,114,101,103,105,115, + 116,114,121,249,2,0,0,115,22,0,0,0,0,2,9,1, + 12,2,9,1,15,1,22,1,3,1,18,1,28,1,13,1, + 9,1,117,38,0,0,0,87,105,110,100,111,119,115,82,101, + 103,105,115,116,114,121,70,105,110,100,101,114,46,95,115,101, + 97,114,99,104,95,114,101,103,105,115,116,114,121,99,3,0, + 0,0,0,0,0,0,7,0,0,0,12,0,0,0,67,0, + 0,0,115,140,0,0,0,124,0,0,106,0,0,124,1,0, + 131,1,0,125,3,0,124,3,0,100,1,0,107,8,0,114, + 31,0,100,1,0,83,121,17,0,116,2,0,106,3,0,124, + 3,0,131,1,0,1,87,110,22,0,4,116,4,0,107,10, + 0,114,72,0,1,1,1,100,1,0,83,89,110,1,0,88, + 120,60,0,116,5,0,131,0,0,68,93,49,0,92,3,0, + 125,4,0,125,5,0,125,6,0,124,3,0,106,6,0,116, + 7,0,124,5,0,131,1,0,131,1,0,114,83,0,124,4, + 0,124,1,0,124,3,0,131,2,0,83,113,83,0,87,100, + 1,0,83,40,2,0,0,0,117,34,0,0,0,70,105,110, + 100,32,109,111,100,117,108,101,32,110,97,109,101,100,32,105, + 110,32,116,104,101,32,114,101,103,105,115,116,114,121,46,78, + 40,8,0,0,0,117,16,0,0,0,95,115,101,97,114,99, + 104,95,114,101,103,105,115,116,114,121,117,4,0,0,0,78, + 111,110,101,117,3,0,0,0,95,111,115,117,4,0,0,0, + 115,116,97,116,117,7,0,0,0,79,83,69,114,114,111,114, + 117,27,0,0,0,95,103,101,116,95,115,117,112,112,111,114, + 116,101,100,95,102,105,108,101,95,108,111,97,100,101,114,115, + 117,8,0,0,0,101,110,100,115,119,105,116,104,117,5,0, + 0,0,116,117,112,108,101,40,7,0,0,0,117,3,0,0, + 0,99,108,115,117,8,0,0,0,102,117,108,108,110,97,109, + 101,117,4,0,0,0,112,97,116,104,117,8,0,0,0,102, + 105,108,101,112,97,116,104,117,6,0,0,0,108,111,97,100, + 101,114,117,8,0,0,0,115,117,102,102,105,120,101,115,117, + 1,0,0,0,95,40,0,0,0,0,40,0,0,0,0,117, 29,0,0,0,60,102,114,111,122,101,110,32,105,109,112,111, 114,116,108,105,98,46,95,98,111,111,116,115,116,114,97,112, - 62,117,9,0,0,0,95,95,101,110,116,101,114,95,95,170, - 5,0,0,115,2,0,0,0,0,2,117,28,0,0,0,95, - 73,109,112,111,114,116,76,111,99,107,67,111,110,116,101,120, - 116,46,95,95,101,110,116,101,114,95,95,99,4,0,0,0, - 0,0,0,0,4,0,0,0,1,0,0,0,67,0,0,0, - 115,14,0,0,0,116,0,0,106,1,0,131,0,0,1,100, - 1,0,83,40,2,0,0,0,117,60,0,0,0,82,101,108, - 101,97,115,101,32,116,104,101,32,105,109,112,111,114,116,32, - 108,111,99,107,32,114,101,103,97,114,100,108,101,115,115,32, - 111,102,32,97,110,121,32,114,97,105,115,101,100,32,101,120, - 99,101,112,116,105,111,110,115,46,78,40,2,0,0,0,117, - 4,0,0,0,95,105,109,112,117,12,0,0,0,114,101,108, - 101,97,115,101,95,108,111,99,107,40,4,0,0,0,117,4, - 0,0,0,115,101,108,102,117,8,0,0,0,101,120,99,95, - 116,121,112,101,117,9,0,0,0,101,120,99,95,118,97,108, - 117,101,117,13,0,0,0,101,120,99,95,116,114,97,99,101, - 98,97,99,107,40,0,0,0,0,40,0,0,0,0,117,29, - 0,0,0,60,102,114,111,122,101,110,32,105,109,112,111,114, - 116,108,105,98,46,95,98,111,111,116,115,116,114,97,112,62, - 117,8,0,0,0,95,95,101,120,105,116,95,95,174,5,0, - 0,115,2,0,0,0,0,2,117,27,0,0,0,95,73,109, - 112,111,114,116,76,111,99,107,67,111,110,116,101,120,116,46, - 95,95,101,120,105,116,95,95,78,40,6,0,0,0,117,8, - 0,0,0,95,95,110,97,109,101,95,95,117,10,0,0,0, - 95,95,109,111,100,117,108,101,95,95,117,12,0,0,0,95, - 95,113,117,97,108,110,97,109,101,95,95,117,7,0,0,0, - 95,95,100,111,99,95,95,117,9,0,0,0,95,95,101,110, - 116,101,114,95,95,117,8,0,0,0,95,95,101,120,105,116, - 95,95,40,1,0,0,0,117,10,0,0,0,95,95,108,111, + 62,117,11,0,0,0,102,105,110,100,95,109,111,100,117,108, + 101,8,3,0,0,115,20,0,0,0,0,3,15,1,12,1, + 4,1,3,1,17,1,13,1,9,1,25,1,21,1,117,33, + 0,0,0,87,105,110,100,111,119,115,82,101,103,105,115,116, + 114,121,70,105,110,100,101,114,46,102,105,110,100,95,109,111, + 100,117,108,101,78,70,40,13,0,0,0,117,8,0,0,0, + 95,95,110,97,109,101,95,95,117,10,0,0,0,95,95,109, + 111,100,117,108,101,95,95,117,12,0,0,0,95,95,113,117, + 97,108,110,97,109,101,95,95,117,7,0,0,0,95,95,100, + 111,99,95,95,117,12,0,0,0,82,69,71,73,83,84,82, + 89,95,75,69,89,117,18,0,0,0,82,69,71,73,83,84, + 82,89,95,75,69,89,95,68,69,66,85,71,117,5,0,0, + 0,70,97,108,115,101,117,11,0,0,0,68,69,66,85,71, + 95,66,85,73,76,68,117,11,0,0,0,99,108,97,115,115, + 109,101,116,104,111,100,117,14,0,0,0,95,111,112,101,110, + 95,114,101,103,105,115,116,114,121,117,16,0,0,0,95,115, + 101,97,114,99,104,95,114,101,103,105,115,116,114,121,117,4, + 0,0,0,78,111,110,101,117,11,0,0,0,102,105,110,100, + 95,109,111,100,117,108,101,40,1,0,0,0,117,10,0,0, + 0,95,95,108,111,99,97,108,115,95,95,40,0,0,0,0, + 40,0,0,0,0,117,29,0,0,0,60,102,114,111,122,101, + 110,32,105,109,112,111,114,116,108,105,98,46,95,98,111,111, + 116,115,116,114,97,112,62,117,21,0,0,0,87,105,110,100, + 111,119,115,82,101,103,105,115,116,114,121,70,105,110,100,101, + 114,229,2,0,0,115,16,0,0,0,16,3,6,3,6,3, + 6,2,6,2,18,7,18,15,3,1,117,21,0,0,0,87, + 105,110,100,111,119,115,82,101,103,105,115,116,114,121,70,105, + 110,100,101,114,99,1,0,0,0,0,0,0,0,1,0,0, + 0,5,0,0,0,66,0,0,0,115,74,0,0,0,124,0, + 0,69,101,0,0,90,1,0,100,0,0,90,2,0,100,1, + 0,90,3,0,100,2,0,100,3,0,132,0,0,90,4,0, + 100,4,0,100,5,0,132,0,0,90,5,0,101,6,0,100, + 6,0,100,10,0,100,7,0,100,8,0,132,0,1,131,1, + 0,90,8,0,100,9,0,83,40,11,0,0,0,117,13,0, + 0,0,95,76,111,97,100,101,114,66,97,115,105,99,115,117, + 83,0,0,0,66,97,115,101,32,99,108,97,115,115,32,111, + 102,32,99,111,109,109,111,110,32,99,111,100,101,32,110,101, + 101,100,101,100,32,98,121,32,98,111,116,104,32,83,111,117, + 114,99,101,76,111,97,100,101,114,32,97,110,100,10,32,32, + 32,32,83,111,117,114,99,101,108,101,115,115,70,105,108,101, + 76,111,97,100,101,114,46,99,2,0,0,0,0,0,0,0, + 5,0,0,0,3,0,0,0,67,0,0,0,115,88,0,0, + 0,116,0,0,124,0,0,106,1,0,124,1,0,131,1,0, + 131,1,0,100,1,0,25,125,2,0,124,2,0,106,2,0, + 100,2,0,100,1,0,131,2,0,100,3,0,25,125,3,0, + 124,1,0,106,3,0,100,2,0,131,1,0,100,4,0,25, + 125,4,0,124,3,0,100,5,0,107,2,0,111,87,0,124, + 4,0,100,5,0,107,3,0,83,40,6,0,0,0,117,141, + 0,0,0,67,111,110,99,114,101,116,101,32,105,109,112,108, + 101,109,101,110,116,97,116,105,111,110,32,111,102,32,73,110, + 115,112,101,99,116,76,111,97,100,101,114,46,105,115,95,112, + 97,99,107,97,103,101,32,98,121,32,99,104,101,99,107,105, + 110,103,32,105,102,10,32,32,32,32,32,32,32,32,116,104, + 101,32,112,97,116,104,32,114,101,116,117,114,110,101,100,32, + 98,121,32,103,101,116,95,102,105,108,101,110,97,109,101,32, + 104,97,115,32,97,32,102,105,108,101,110,97,109,101,32,111, + 102,32,39,95,95,105,110,105,116,95,95,46,112,121,39,46, + 105,1,0,0,0,117,1,0,0,0,46,105,0,0,0,0, + 105,2,0,0,0,117,8,0,0,0,95,95,105,110,105,116, + 95,95,40,4,0,0,0,117,11,0,0,0,95,112,97,116, + 104,95,115,112,108,105,116,117,12,0,0,0,103,101,116,95, + 102,105,108,101,110,97,109,101,117,6,0,0,0,114,115,112, + 108,105,116,117,10,0,0,0,114,112,97,114,116,105,116,105, + 111,110,40,5,0,0,0,117,4,0,0,0,115,101,108,102, + 117,8,0,0,0,102,117,108,108,110,97,109,101,117,8,0, + 0,0,102,105,108,101,110,97,109,101,117,13,0,0,0,102, + 105,108,101,110,97,109,101,95,98,97,115,101,117,9,0,0, + 0,116,97,105,108,95,110,97,109,101,40,0,0,0,0,40, + 0,0,0,0,117,29,0,0,0,60,102,114,111,122,101,110, + 32,105,109,112,111,114,116,108,105,98,46,95,98,111,111,116, + 115,116,114,97,112,62,117,10,0,0,0,105,115,95,112,97, + 99,107,97,103,101,28,3,0,0,115,8,0,0,0,0,3, + 25,1,22,1,19,1,117,24,0,0,0,95,76,111,97,100, + 101,114,66,97,115,105,99,115,46,105,115,95,112,97,99,107, + 97,103,101,99,5,0,0,0,0,0,0,0,12,0,0,0, + 22,0,0,0,67,0,0,0,115,198,1,0,0,124,2,0, + 100,1,0,100,2,0,133,2,0,25,125,5,0,124,2,0, + 100,2,0,100,3,0,133,2,0,25,125,6,0,124,2,0, + 100,3,0,100,4,0,133,2,0,25,125,7,0,124,5,0, + 116,0,0,107,3,0,114,105,0,100,5,0,106,1,0,124, + 1,0,124,5,0,131,2,0,125,8,0,116,2,0,124,8, + 0,100,6,0,124,1,0,100,7,0,124,3,0,131,1,2, + 130,1,0,110,116,0,116,3,0,124,6,0,131,1,0,100, + 2,0,107,3,0,114,163,0,100,8,0,106,1,0,124,1, + 0,131,1,0,125,9,0,116,4,0,124,9,0,131,1,0, + 1,116,5,0,124,9,0,131,1,0,130,1,0,110,58,0, + 116,3,0,124,7,0,131,1,0,100,2,0,107,3,0,114, + 221,0,100,9,0,106,1,0,124,1,0,131,1,0,125,9, + 0,116,4,0,124,9,0,131,1,0,1,116,5,0,124,9, + 0,131,1,0,130,1,0,110,0,0,124,4,0,100,1,0, + 107,9,0,114,184,1,121,20,0,116,7,0,124,4,0,100, + 10,0,25,131,1,0,125,10,0,87,110,18,0,4,116,8, + 0,107,10,0,114,17,1,1,1,1,89,110,71,0,88,116, + 9,0,124,6,0,131,1,0,124,10,0,107,3,0,114,88, + 1,100,11,0,106,1,0,124,1,0,131,1,0,125,9,0, + 116,4,0,124,9,0,131,1,0,1,116,2,0,124,9,0, + 100,6,0,124,1,0,100,7,0,124,3,0,131,1,2,130, + 1,0,110,0,0,121,18,0,124,4,0,100,12,0,25,100, + 13,0,64,125,11,0,87,110,18,0,4,116,8,0,107,10, + 0,114,126,1,1,1,1,89,113,184,1,88,116,9,0,124, + 7,0,131,1,0,124,11,0,107,3,0,114,184,1,116,2, + 0,100,11,0,106,1,0,124,1,0,131,1,0,100,6,0, + 124,1,0,100,7,0,124,3,0,131,1,2,130,1,0,113, + 184,1,110,0,0,124,2,0,100,4,0,100,1,0,133,2, + 0,25,83,40,14,0,0,0,117,193,0,0,0,82,101,116, + 117,114,110,32,116,104,101,32,109,97,114,115,104,97,108,108, + 101,100,32,98,121,116,101,115,32,102,114,111,109,32,98,121, + 116,101,99,111,100,101,44,32,118,101,114,105,102,121,105,110, + 103,32,116,104,101,32,109,97,103,105,99,10,32,32,32,32, + 32,32,32,32,110,117,109,98,101,114,44,32,116,105,109,101, + 115,116,97,109,112,32,97,110,100,32,115,111,117,114,99,101, + 32,115,105,122,101,32,97,108,111,110,103,32,116,104,101,32, + 119,97,121,46,10,10,32,32,32,32,32,32,32,32,73,102, + 32,115,111,117,114,99,101,95,115,116,97,116,115,32,105,115, + 32,78,111,110,101,32,116,104,101,110,32,115,107,105,112,32, + 116,104,101,32,116,105,109,101,115,116,97,109,112,32,99,104, + 101,99,107,46,10,10,32,32,32,32,32,32,32,32,78,105, + 4,0,0,0,105,8,0,0,0,105,12,0,0,0,117,30, + 0,0,0,98,97,100,32,109,97,103,105,99,32,110,117,109, + 98,101,114,32,105,110,32,123,33,114,125,58,32,123,33,114, + 125,117,4,0,0,0,110,97,109,101,117,4,0,0,0,112, + 97,116,104,117,19,0,0,0,98,97,100,32,116,105,109,101, + 115,116,97,109,112,32,105,110,32,123,125,117,14,0,0,0, + 98,97,100,32,115,105,122,101,32,105,110,32,123,125,117,5, + 0,0,0,109,116,105,109,101,117,24,0,0,0,98,121,116, + 101,99,111,100,101,32,105,115,32,115,116,97,108,101,32,102, + 111,114,32,123,125,117,4,0,0,0,115,105,122,101,108,3, + 0,0,0,255,127,255,127,3,0,40,10,0,0,0,117,12, + 0,0,0,95,77,65,71,73,67,95,66,89,84,69,83,117, + 6,0,0,0,102,111,114,109,97,116,117,11,0,0,0,73, + 109,112,111,114,116,69,114,114,111,114,117,3,0,0,0,108, + 101,110,117,16,0,0,0,95,118,101,114,98,111,115,101,95, + 109,101,115,115,97,103,101,117,8,0,0,0,69,79,70,69, + 114,114,111,114,117,4,0,0,0,78,111,110,101,117,3,0, + 0,0,105,110,116,117,8,0,0,0,75,101,121,69,114,114, + 111,114,117,7,0,0,0,95,114,95,108,111,110,103,40,12, + 0,0,0,117,4,0,0,0,115,101,108,102,117,8,0,0, + 0,102,117,108,108,110,97,109,101,117,4,0,0,0,100,97, + 116,97,117,13,0,0,0,98,121,116,101,99,111,100,101,95, + 112,97,116,104,117,12,0,0,0,115,111,117,114,99,101,95, + 115,116,97,116,115,117,5,0,0,0,109,97,103,105,99,117, + 13,0,0,0,114,97,119,95,116,105,109,101,115,116,97,109, + 112,117,8,0,0,0,114,97,119,95,115,105,122,101,117,3, + 0,0,0,109,115,103,117,7,0,0,0,109,101,115,115,97, + 103,101,117,12,0,0,0,115,111,117,114,99,101,95,109,116, + 105,109,101,117,11,0,0,0,115,111,117,114,99,101,95,115, + 105,122,101,40,0,0,0,0,40,0,0,0,0,117,29,0, + 0,0,60,102,114,111,122,101,110,32,105,109,112,111,114,116, + 108,105,98,46,95,98,111,111,116,115,116,114,97,112,62,117, + 20,0,0,0,95,98,121,116,101,115,95,102,114,111,109,95, + 98,121,116,101,99,111,100,101,36,3,0,0,115,66,0,0, + 0,0,7,16,1,16,1,16,1,12,1,18,1,27,1,18, + 1,15,1,10,1,15,1,18,1,15,1,10,1,15,1,12, + 1,3,1,20,1,13,1,5,2,18,1,15,1,10,1,15, + 1,12,1,3,1,18,1,13,1,5,2,18,1,3,1,15, + 1,21,3,117,34,0,0,0,95,76,111,97,100,101,114,66, + 97,115,105,99,115,46,95,98,121,116,101,115,95,102,114,111, + 109,95,98,121,116,101,99,111,100,101,117,10,0,0,0,115, + 111,117,114,99,101,108,101,115,115,99,2,0,0,0,1,0, + 0,0,5,0,0,0,12,0,0,0,67,0,0,0,115,227, + 0,0,0,124,1,0,106,0,0,125,3,0,124,0,0,106, + 1,0,124,3,0,131,1,0,125,4,0,124,0,0,106,2, + 0,124,3,0,131,1,0,124,1,0,95,3,0,124,2,0, + 115,106,0,121,22,0,116,4,0,124,1,0,106,3,0,131, + 1,0,124,1,0,95,5,0,87,113,118,0,4,116,6,0, + 107,10,0,114,102,0,1,1,1,124,1,0,106,3,0,124, + 1,0,95,5,0,89,113,118,0,88,110,12,0,124,1,0, + 106,3,0,124,1,0,95,5,0,124,3,0,124,1,0,95, + 7,0,124,0,0,106,8,0,124,3,0,131,1,0,114,170, + 0,116,9,0,124,1,0,106,3,0,131,1,0,100,1,0, + 25,103,1,0,124,1,0,95,10,0,110,25,0,124,1,0, + 106,7,0,106,11,0,100,2,0,131,1,0,100,1,0,25, + 124,1,0,95,7,0,124,0,0,124,1,0,95,12,0,116, + 13,0,116,14,0,124,4,0,124,1,0,106,15,0,131,3, + 0,1,124,1,0,83,40,3,0,0,0,117,82,0,0,0, + 72,101,108,112,101,114,32,102,111,114,32,108,111,97,100,95, + 109,111,100,117,108,101,32,97,98,108,101,32,116,111,32,104, + 97,110,100,108,101,32,101,105,116,104,101,114,32,115,111,117, + 114,99,101,32,111,114,32,115,111,117,114,99,101,108,101,115, + 115,10,32,32,32,32,32,32,32,32,108,111,97,100,105,110, + 103,46,105,0,0,0,0,117,1,0,0,0,46,40,16,0, + 0,0,117,8,0,0,0,95,95,110,97,109,101,95,95,117, + 8,0,0,0,103,101,116,95,99,111,100,101,117,12,0,0, + 0,103,101,116,95,102,105,108,101,110,97,109,101,117,8,0, + 0,0,95,95,102,105,108,101,95,95,117,17,0,0,0,99, + 97,99,104,101,95,102,114,111,109,95,115,111,117,114,99,101, + 117,10,0,0,0,95,95,99,97,99,104,101,100,95,95,117, + 19,0,0,0,78,111,116,73,109,112,108,101,109,101,110,116, + 101,100,69,114,114,111,114,117,11,0,0,0,95,95,112,97, + 99,107,97,103,101,95,95,117,10,0,0,0,105,115,95,112, + 97,99,107,97,103,101,117,11,0,0,0,95,112,97,116,104, + 95,115,112,108,105,116,117,8,0,0,0,95,95,112,97,116, + 104,95,95,117,10,0,0,0,114,112,97,114,116,105,116,105, + 111,110,117,10,0,0,0,95,95,108,111,97,100,101,114,95, + 95,117,25,0,0,0,95,99,97,108,108,95,119,105,116,104, + 95,102,114,97,109,101,115,95,114,101,109,111,118,101,100,117, + 4,0,0,0,101,120,101,99,117,8,0,0,0,95,95,100, + 105,99,116,95,95,40,5,0,0,0,117,4,0,0,0,115, + 101,108,102,117,6,0,0,0,109,111,100,117,108,101,117,10, + 0,0,0,115,111,117,114,99,101,108,101,115,115,117,4,0, + 0,0,110,97,109,101,117,11,0,0,0,99,111,100,101,95, + 111,98,106,101,99,116,40,0,0,0,0,40,0,0,0,0, + 117,29,0,0,0,60,102,114,111,122,101,110,32,105,109,112, + 111,114,116,108,105,98,46,95,98,111,111,116,115,116,114,97, + 112,62,117,12,0,0,0,95,108,111,97,100,95,109,111,100, + 117,108,101,81,3,0,0,115,32,0,0,0,0,4,9,1, + 15,1,18,1,6,1,3,1,22,1,13,1,20,2,12,1, + 9,1,15,1,28,2,25,1,9,1,19,1,117,26,0,0, + 0,95,76,111,97,100,101,114,66,97,115,105,99,115,46,95, + 108,111,97,100,95,109,111,100,117,108,101,78,70,40,9,0, + 0,0,117,8,0,0,0,95,95,110,97,109,101,95,95,117, + 10,0,0,0,95,95,109,111,100,117,108,101,95,95,117,12, + 0,0,0,95,95,113,117,97,108,110,97,109,101,95,95,117, + 7,0,0,0,95,95,100,111,99,95,95,117,10,0,0,0, + 105,115,95,112,97,99,107,97,103,101,117,20,0,0,0,95, + 98,121,116,101,115,95,102,114,111,109,95,98,121,116,101,99, + 111,100,101,117,17,0,0,0,109,111,100,117,108,101,95,102, + 111,114,95,108,111,97,100,101,114,117,5,0,0,0,70,97, + 108,115,101,117,12,0,0,0,95,108,111,97,100,95,109,111, + 100,117,108,101,40,1,0,0,0,117,10,0,0,0,95,95, + 108,111,99,97,108,115,95,95,40,0,0,0,0,40,0,0, + 0,0,117,29,0,0,0,60,102,114,111,122,101,110,32,105, + 109,112,111,114,116,108,105,98,46,95,98,111,111,116,115,116, + 114,97,112,62,117,13,0,0,0,95,76,111,97,100,101,114, + 66,97,115,105,99,115,23,3,0,0,115,10,0,0,0,16, + 3,6,2,12,8,12,45,6,1,117,13,0,0,0,95,76, + 111,97,100,101,114,66,97,115,105,99,115,99,1,0,0,0, + 0,0,0,0,1,0,0,0,2,0,0,0,66,0,0,0, + 115,104,0,0,0,124,0,0,69,101,0,0,90,1,0,100, + 0,0,90,2,0,100,1,0,100,2,0,132,0,0,90,3, + 0,100,3,0,100,4,0,132,0,0,90,4,0,100,5,0, + 100,6,0,132,0,0,90,5,0,100,7,0,100,8,0,132, + 0,0,90,6,0,100,9,0,100,10,0,132,0,0,90,7, + 0,100,11,0,100,12,0,132,0,0,90,8,0,100,13,0, + 100,14,0,132,0,0,90,9,0,100,15,0,83,40,16,0, + 0,0,117,12,0,0,0,83,111,117,114,99,101,76,111,97, + 100,101,114,99,2,0,0,0,0,0,0,0,2,0,0,0, + 1,0,0,0,67,0,0,0,115,10,0,0,0,116,0,0, + 130,1,0,100,1,0,83,40,2,0,0,0,117,121,0,0, + 0,79,112,116,105,111,110,97,108,32,109,101,116,104,111,100, + 32,116,104,97,116,32,114,101,116,117,114,110,115,32,116,104, + 101,32,109,111,100,105,102,105,99,97,116,105,111,110,32,116, + 105,109,101,32,40,97,110,32,105,110,116,41,32,102,111,114, + 32,116,104,101,10,32,32,32,32,32,32,32,32,115,112,101, + 99,105,102,105,101,100,32,112,97,116,104,44,32,119,104,101, + 114,101,32,112,97,116,104,32,105,115,32,97,32,115,116,114, + 46,10,32,32,32,32,32,32,32,32,78,40,1,0,0,0, + 117,19,0,0,0,78,111,116,73,109,112,108,101,109,101,110, + 116,101,100,69,114,114,111,114,40,2,0,0,0,117,4,0, + 0,0,115,101,108,102,117,4,0,0,0,112,97,116,104,40, + 0,0,0,0,40,0,0,0,0,117,29,0,0,0,60,102, + 114,111,122,101,110,32,105,109,112,111,114,116,108,105,98,46, + 95,98,111,111,116,115,116,114,97,112,62,117,10,0,0,0, + 112,97,116,104,95,109,116,105,109,101,107,3,0,0,115,2, + 0,0,0,0,4,117,23,0,0,0,83,111,117,114,99,101, + 76,111,97,100,101,114,46,112,97,116,104,95,109,116,105,109, + 101,99,2,0,0,0,0,0,0,0,2,0,0,0,3,0, + 0,0,67,0,0,0,115,20,0,0,0,105,1,0,124,0, + 0,106,0,0,124,1,0,131,1,0,100,1,0,54,83,40, + 2,0,0,0,117,114,1,0,0,79,112,116,105,111,110,97, + 108,32,109,101,116,104,111,100,32,114,101,116,117,114,110,105, + 110,103,32,97,32,109,101,116,97,100,97,116,97,32,100,105, + 99,116,32,102,111,114,32,116,104,101,32,115,112,101,99,105, + 102,105,101,100,32,112,97,116,104,10,32,32,32,32,32,32, + 32,32,116,111,32,98,121,32,116,104,101,32,112,97,116,104, + 32,40,115,116,114,41,46,10,32,32,32,32,32,32,32,32, + 80,111,115,115,105,98,108,101,32,107,101,121,115,58,10,32, + 32,32,32,32,32,32,32,45,32,39,109,116,105,109,101,39, + 32,40,109,97,110,100,97,116,111,114,121,41,32,105,115,32, + 116,104,101,32,110,117,109,101,114,105,99,32,116,105,109,101, + 115,116,97,109,112,32,111,102,32,108,97,115,116,32,115,111, + 117,114,99,101,10,32,32,32,32,32,32,32,32,32,32,99, + 111,100,101,32,109,111,100,105,102,105,99,97,116,105,111,110, + 59,10,32,32,32,32,32,32,32,32,45,32,39,115,105,122, + 101,39,32,40,111,112,116,105,111,110,97,108,41,32,105,115, + 32,116,104,101,32,115,105,122,101,32,105,110,32,98,121,116, + 101,115,32,111,102,32,116,104,101,32,115,111,117,114,99,101, + 32,99,111,100,101,46,10,10,32,32,32,32,32,32,32,32, + 73,109,112,108,101,109,101,110,116,105,110,103,32,116,104,105, + 115,32,109,101,116,104,111,100,32,97,108,108,111,119,115,32, + 116,104,101,32,108,111,97,100,101,114,32,116,111,32,114,101, + 97,100,32,98,121,116,101,99,111,100,101,32,102,105,108,101, + 115,46,10,32,32,32,32,32,32,32,32,117,5,0,0,0, + 109,116,105,109,101,40,1,0,0,0,117,10,0,0,0,112, + 97,116,104,95,109,116,105,109,101,40,2,0,0,0,117,4, + 0,0,0,115,101,108,102,117,4,0,0,0,112,97,116,104, + 40,0,0,0,0,40,0,0,0,0,117,29,0,0,0,60, + 102,114,111,122,101,110,32,105,109,112,111,114,116,108,105,98, + 46,95,98,111,111,116,115,116,114,97,112,62,117,10,0,0, + 0,112,97,116,104,95,115,116,97,116,115,113,3,0,0,115, + 2,0,0,0,0,10,117,23,0,0,0,83,111,117,114,99, + 101,76,111,97,100,101,114,46,112,97,116,104,95,115,116,97, + 116,115,99,4,0,0,0,0,0,0,0,4,0,0,0,3, + 0,0,0,67,0,0,0,115,16,0,0,0,124,0,0,106, + 0,0,124,2,0,124,3,0,131,2,0,83,40,1,0,0, + 0,117,228,0,0,0,79,112,116,105,111,110,97,108,32,109, + 101,116,104,111,100,32,119,104,105,99,104,32,119,114,105,116, + 101,115,32,100,97,116,97,32,40,98,121,116,101,115,41,32, + 116,111,32,97,32,102,105,108,101,32,112,97,116,104,32,40, + 97,32,115,116,114,41,46,10,10,32,32,32,32,32,32,32, + 32,73,109,112,108,101,109,101,110,116,105,110,103,32,116,104, + 105,115,32,109,101,116,104,111,100,32,97,108,108,111,119,115, + 32,102,111,114,32,116,104,101,32,119,114,105,116,105,110,103, + 32,111,102,32,98,121,116,101,99,111,100,101,32,102,105,108, + 101,115,46,10,10,32,32,32,32,32,32,32,32,84,104,101, + 32,115,111,117,114,99,101,32,112,97,116,104,32,105,115,32, + 110,101,101,100,101,100,32,105,110,32,111,114,100,101,114,32, + 116,111,32,99,111,114,114,101,99,116,108,121,32,116,114,97, + 110,115,102,101,114,32,112,101,114,109,105,115,115,105,111,110, + 115,10,32,32,32,32,32,32,32,32,40,1,0,0,0,117, + 8,0,0,0,115,101,116,95,100,97,116,97,40,4,0,0, + 0,117,4,0,0,0,115,101,108,102,117,11,0,0,0,115, + 111,117,114,99,101,95,112,97,116,104,117,10,0,0,0,99, + 97,99,104,101,95,112,97,116,104,117,4,0,0,0,100,97, + 116,97,40,0,0,0,0,40,0,0,0,0,117,29,0,0, + 0,60,102,114,111,122,101,110,32,105,109,112,111,114,116,108, + 105,98,46,95,98,111,111,116,115,116,114,97,112,62,117,15, + 0,0,0,95,99,97,99,104,101,95,98,121,116,101,99,111, + 100,101,125,3,0,0,115,2,0,0,0,0,8,117,28,0, + 0,0,83,111,117,114,99,101,76,111,97,100,101,114,46,95, + 99,97,99,104,101,95,98,121,116,101,99,111,100,101,99,3, + 0,0,0,0,0,0,0,3,0,0,0,1,0,0,0,67, + 0,0,0,115,10,0,0,0,116,0,0,130,1,0,100,1, + 0,83,40,2,0,0,0,117,151,0,0,0,79,112,116,105, + 111,110,97,108,32,109,101,116,104,111,100,32,119,104,105,99, + 104,32,119,114,105,116,101,115,32,100,97,116,97,32,40,98, + 121,116,101,115,41,32,116,111,32,97,32,102,105,108,101,32, + 112,97,116,104,32,40,97,32,115,116,114,41,46,10,10,32, + 32,32,32,32,32,32,32,73,109,112,108,101,109,101,110,116, + 105,110,103,32,116,104,105,115,32,109,101,116,104,111,100,32, + 97,108,108,111,119,115,32,102,111,114,32,116,104,101,32,119, + 114,105,116,105,110,103,32,111,102,32,98,121,116,101,99,111, + 100,101,32,102,105,108,101,115,46,10,10,32,32,32,32,32, + 32,32,32,78,40,1,0,0,0,117,19,0,0,0,78,111, + 116,73,109,112,108,101,109,101,110,116,101,100,69,114,114,111, + 114,40,3,0,0,0,117,4,0,0,0,115,101,108,102,117, + 4,0,0,0,112,97,116,104,117,4,0,0,0,100,97,116, + 97,40,0,0,0,0,40,0,0,0,0,117,29,0,0,0, + 60,102,114,111,122,101,110,32,105,109,112,111,114,116,108,105, + 98,46,95,98,111,111,116,115,116,114,97,112,62,117,8,0, + 0,0,115,101,116,95,100,97,116,97,135,3,0,0,115,2, + 0,0,0,0,6,117,21,0,0,0,83,111,117,114,99,101, + 76,111,97,100,101,114,46,115,101,116,95,100,97,116,97,99, + 2,0,0,0,0,0,0,0,9,0,0,0,44,0,0,0, + 67,0,0,0,115,62,1,0,0,100,1,0,100,2,0,108, + 0,0,125,2,0,124,0,0,106,1,0,124,1,0,131,1, + 0,125,3,0,121,19,0,124,0,0,106,2,0,124,3,0, + 131,1,0,125,4,0,87,110,58,0,4,116,3,0,107,10, + 0,114,106,0,1,125,5,0,1,122,26,0,116,4,0,100, + 3,0,100,4,0,124,1,0,131,1,1,124,5,0,130,2, + 0,87,89,100,2,0,100,2,0,125,5,0,126,5,0,88, + 110,1,0,88,116,5,0,106,6,0,124,4,0,131,1,0, + 106,7,0,125,6,0,121,19,0,124,2,0,106,8,0,124, + 6,0,131,1,0,125,7,0,87,110,58,0,4,116,9,0, + 107,10,0,114,204,0,1,125,5,0,1,122,26,0,116,4, + 0,100,5,0,100,4,0,124,1,0,131,1,1,124,5,0, + 130,2,0,87,89,100,2,0,100,2,0,125,5,0,126,5, + 0,88,110,1,0,88,116,5,0,106,10,0,100,2,0,100, + 7,0,131,2,0,125,8,0,121,30,0,124,8,0,106,13, + 0,124,4,0,106,13,0,124,7,0,100,1,0,25,131,1, + 0,131,1,0,83,87,110,58,0,4,116,14,0,107,10,0, + 114,57,1,1,125,5,0,1,122,26,0,116,4,0,100,6, + 0,100,4,0,124,1,0,131,1,1,124,5,0,130,2,0, + 87,89,100,2,0,100,2,0,125,5,0,126,5,0,88,110, + 1,0,88,100,2,0,83,40,8,0,0,0,117,52,0,0, + 0,67,111,110,99,114,101,116,101,32,105,109,112,108,101,109, + 101,110,116,97,116,105,111,110,32,111,102,32,73,110,115,112, + 101,99,116,76,111,97,100,101,114,46,103,101,116,95,115,111, + 117,114,99,101,46,105,0,0,0,0,78,117,39,0,0,0, + 115,111,117,114,99,101,32,110,111,116,32,97,118,97,105,108, + 97,98,108,101,32,116,104,114,111,117,103,104,32,103,101,116, + 95,100,97,116,97,40,41,117,4,0,0,0,110,97,109,101, + 117,25,0,0,0,70,97,105,108,101,100,32,116,111,32,100, + 101,116,101,99,116,32,101,110,99,111,100,105,110,103,117,28, + 0,0,0,70,97,105,108,101,100,32,116,111,32,100,101,99, + 111,100,101,32,115,111,117,114,99,101,32,102,105,108,101,84, + 40,15,0,0,0,117,8,0,0,0,116,111,107,101,110,105, + 122,101,117,12,0,0,0,103,101,116,95,102,105,108,101,110, + 97,109,101,117,8,0,0,0,103,101,116,95,100,97,116,97, + 117,7,0,0,0,73,79,69,114,114,111,114,117,11,0,0, + 0,73,109,112,111,114,116,69,114,114,111,114,117,3,0,0, + 0,95,105,111,117,7,0,0,0,66,121,116,101,115,73,79, + 117,8,0,0,0,114,101,97,100,108,105,110,101,117,15,0, + 0,0,100,101,116,101,99,116,95,101,110,99,111,100,105,110, + 103,117,11,0,0,0,83,121,110,116,97,120,69,114,114,111, + 114,117,25,0,0,0,73,110,99,114,101,109,101,110,116,97, + 108,78,101,119,108,105,110,101,68,101,99,111,100,101,114,117, + 4,0,0,0,78,111,110,101,117,4,0,0,0,84,114,117, + 101,117,6,0,0,0,100,101,99,111,100,101,117,18,0,0, + 0,85,110,105,99,111,100,101,68,101,99,111,100,101,69,114, + 114,111,114,40,9,0,0,0,117,4,0,0,0,115,101,108, + 102,117,8,0,0,0,102,117,108,108,110,97,109,101,117,8, + 0,0,0,116,111,107,101,110,105,122,101,117,4,0,0,0, + 112,97,116,104,117,12,0,0,0,115,111,117,114,99,101,95, + 98,121,116,101,115,117,3,0,0,0,101,120,99,117,10,0, + 0,0,114,101,97,100,115,111,117,114,99,101,117,8,0,0, + 0,101,110,99,111,100,105,110,103,117,15,0,0,0,110,101, + 119,108,105,110,101,95,100,101,99,111,100,101,114,40,0,0, + 0,0,40,0,0,0,0,117,29,0,0,0,60,102,114,111, + 122,101,110,32,105,109,112,111,114,116,108,105,98,46,95,98, + 111,111,116,115,116,114,97,112,62,117,10,0,0,0,103,101, + 116,95,115,111,117,114,99,101,144,3,0,0,115,38,0,0, + 0,0,2,12,1,15,1,3,1,19,1,18,1,9,1,31, + 1,18,1,3,1,19,1,18,1,9,1,31,1,18,1,3, + 1,30,1,18,1,9,1,117,23,0,0,0,83,111,117,114, + 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,12,0,0,0, + 45,0,0,0,67,0,0,0,115,52,2,0,0,124,0,0, + 106,0,0,124,1,0,131,1,0,125,2,0,100,10,0,125, + 3,0,121,16,0,116,2,0,124,2,0,131,1,0,125,4, + 0,87,110,24,0,4,116,3,0,107,10,0,114,63,0,1, + 1,1,100,10,0,125,4,0,89,110,14,1,88,121,19,0, + 124,0,0,106,4,0,124,2,0,131,1,0,125,5,0,87, + 110,18,0,4,116,3,0,107,10,0,114,103,0,1,1,1, + 89,110,230,0,88,116,5,0,124,5,0,100,1,0,25,131, + 1,0,125,3,0,121,19,0,124,0,0,106,6,0,124,4, + 0,131,1,0,125,6,0,87,110,18,0,4,116,7,0,107, + 10,0,114,159,0,1,1,1,89,110,174,0,88,121,28,0, + 124,0,0,106,8,0,124,1,0,124,6,0,124,4,0,124, + 5,0,131,4,0,125,7,0,87,110,24,0,4,116,9,0, + 116,10,0,102,2,0,107,10,0,114,214,0,1,1,1,89, + 110,119,0,88,116,11,0,100,2,0,124,4,0,124,2,0, + 131,3,0,1,116,12,0,106,13,0,124,7,0,131,1,0, + 125,8,0,116,14,0,124,8,0,116,15,0,131,2,0,114, + 38,1,116,16,0,106,17,0,124,8,0,124,2,0,131,2, + 0,1,116,11,0,100,3,0,124,4,0,131,2,0,1,124, + 8,0,83,100,4,0,125,9,0,116,9,0,124,9,0,106, + 18,0,124,4,0,131,1,0,100,5,0,124,1,0,100,6, + 0,124,4,0,131,1,2,130,1,0,124,0,0,106,6,0, + 124,2,0,131,1,0,125,10,0,116,19,0,116,20,0,124, + 10,0,124,2,0,100,7,0,100,8,0,100,11,0,131,4, + 1,125,11,0,116,11,0,100,3,0,124,2,0,131,2,0, + 1,116,22,0,106,23,0,12,114,48,2,124,4,0,100,10, + 0,107,9,0,114,48,2,124,3,0,100,10,0,107,9,0, + 114,48,2,116,24,0,116,25,0,131,1,0,125,6,0,124, + 6,0,106,26,0,116,27,0,124,3,0,131,1,0,131,1, + 0,1,124,6,0,106,26,0,116,27,0,116,28,0,124,10, + 0,131,1,0,131,1,0,131,1,0,1,124,6,0,106,26, + 0,116,12,0,106,29,0,124,11,0,131,1,0,131,1,0, + 1,121,36,0,124,0,0,106,30,0,124,2,0,124,4,0, + 124,6,0,131,3,0,1,116,11,0,100,9,0,124,4,0, + 131,2,0,1,87,113,48,2,4,116,3,0,107,10,0,114, + 44,2,1,1,1,89,113,48,2,88,110,0,0,124,11,0, + 83,40,12,0,0,0,117,190,0,0,0,67,111,110,99,114, + 101,116,101,32,105,109,112,108,101,109,101,110,116,97,116,105, + 111,110,32,111,102,32,73,110,115,112,101,99,116,76,111,97, + 100,101,114,46,103,101,116,95,99,111,100,101,46,10,10,32, + 32,32,32,32,32,32,32,82,101,97,100,105,110,103,32,111, + 102,32,98,121,116,101,99,111,100,101,32,114,101,113,117,105, + 114,101,115,32,112,97,116,104,95,115,116,97,116,115,32,116, + 111,32,98,101,32,105,109,112,108,101,109,101,110,116,101,100, + 46,32,84,111,32,119,114,105,116,101,10,32,32,32,32,32, + 32,32,32,98,121,116,101,99,111,100,101,44,32,115,101,116, + 95,100,97,116,97,32,109,117,115,116,32,97,108,115,111,32, + 98,101,32,105,109,112,108,101,109,101,110,116,101,100,46,10, + 10,32,32,32,32,32,32,32,32,117,5,0,0,0,109,116, + 105,109,101,117,13,0,0,0,123,125,32,109,97,116,99,104, + 101,115,32,123,125,117,19,0,0,0,99,111,100,101,32,111, + 98,106,101,99,116,32,102,114,111,109,32,123,125,117,21,0, + 0,0,78,111,110,45,99,111,100,101,32,111,98,106,101,99, + 116,32,105,110,32,123,125,117,4,0,0,0,110,97,109,101, + 117,4,0,0,0,112,97,116,104,117,4,0,0,0,101,120, + 101,99,117,12,0,0,0,100,111,110,116,95,105,110,104,101, + 114,105,116,117,10,0,0,0,119,114,111,116,101,32,123,33, + 114,125,78,84,40,31,0,0,0,117,12,0,0,0,103,101, + 116,95,102,105,108,101,110,97,109,101,117,4,0,0,0,78, + 111,110,101,117,17,0,0,0,99,97,99,104,101,95,102,114, + 111,109,95,115,111,117,114,99,101,117,19,0,0,0,78,111, + 116,73,109,112,108,101,109,101,110,116,101,100,69,114,114,111, + 114,117,10,0,0,0,112,97,116,104,95,115,116,97,116,115, + 117,3,0,0,0,105,110,116,117,8,0,0,0,103,101,116, + 95,100,97,116,97,117,7,0,0,0,73,79,69,114,114,111, + 114,117,20,0,0,0,95,98,121,116,101,115,95,102,114,111, + 109,95,98,121,116,101,99,111,100,101,117,11,0,0,0,73, + 109,112,111,114,116,69,114,114,111,114,117,8,0,0,0,69, + 79,70,69,114,114,111,114,117,16,0,0,0,95,118,101,114, + 98,111,115,101,95,109,101,115,115,97,103,101,117,7,0,0, + 0,109,97,114,115,104,97,108,117,5,0,0,0,108,111,97, + 100,115,117,10,0,0,0,105,115,105,110,115,116,97,110,99, + 101,117,10,0,0,0,95,99,111,100,101,95,116,121,112,101, + 117,4,0,0,0,95,105,109,112,117,16,0,0,0,95,102, + 105,120,95,99,111,95,102,105,108,101,110,97,109,101,117,6, + 0,0,0,102,111,114,109,97,116,117,25,0,0,0,95,99, + 97,108,108,95,119,105,116,104,95,102,114,97,109,101,115,95, + 114,101,109,111,118,101,100,117,7,0,0,0,99,111,109,112, + 105,108,101,117,4,0,0,0,84,114,117,101,117,3,0,0, + 0,115,121,115,117,19,0,0,0,100,111,110,116,95,119,114, + 105,116,101,95,98,121,116,101,99,111,100,101,117,9,0,0, + 0,98,121,116,101,97,114,114,97,121,117,12,0,0,0,95, + 77,65,71,73,67,95,66,89,84,69,83,117,6,0,0,0, + 101,120,116,101,110,100,117,7,0,0,0,95,119,95,108,111, + 110,103,117,3,0,0,0,108,101,110,117,5,0,0,0,100, + 117,109,112,115,117,15,0,0,0,95,99,97,99,104,101,95, + 98,121,116,101,99,111,100,101,40,12,0,0,0,117,4,0, + 0,0,115,101,108,102,117,8,0,0,0,102,117,108,108,110, + 97,109,101,117,11,0,0,0,115,111,117,114,99,101,95,112, + 97,116,104,117,12,0,0,0,115,111,117,114,99,101,95,109, + 116,105,109,101,117,13,0,0,0,98,121,116,101,99,111,100, + 101,95,112,97,116,104,117,2,0,0,0,115,116,117,4,0, + 0,0,100,97,116,97,117,10,0,0,0,98,121,116,101,115, + 95,100,97,116,97,117,5,0,0,0,102,111,117,110,100,117, + 3,0,0,0,109,115,103,117,12,0,0,0,115,111,117,114, + 99,101,95,98,121,116,101,115,117,11,0,0,0,99,111,100, + 101,95,111,98,106,101,99,116,40,0,0,0,0,40,0,0, + 0,0,117,29,0,0,0,60,102,114,111,122,101,110,32,105, + 109,112,111,114,116,108,105,98,46,95,98,111,111,116,115,116, + 114,97,112,62,117,8,0,0,0,103,101,116,95,99,111,100, + 101,166,3,0,0,115,98,0,0,0,0,7,15,1,6,1, + 3,1,16,1,13,1,11,2,3,1,19,1,13,1,5,2, + 16,1,3,1,19,1,13,1,5,2,3,1,12,1,3,1, + 13,1,19,1,5,2,9,1,7,1,15,1,15,1,16,1, + 6,1,7,1,4,2,6,1,18,1,15,1,15,1,6,1, + 12,1,9,1,13,1,22,1,12,1,12,1,19,1,25,1, + 22,1,3,1,19,1,17,1,13,1,8,1,117,21,0,0, + 0,83,111,117,114,99,101,76,111,97,100,101,114,46,103,101, + 116,95,99,111,100,101,99,2,0,0,0,0,0,0,0,2, + 0,0,0,2,0,0,0,67,0,0,0,115,13,0,0,0, + 124,0,0,106,0,0,124,1,0,131,1,0,83,40,1,0, + 0,0,117,0,1,0,0,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,76,111,97,100,101,114,46,108,111,97,100,95,109,111, + 100,117,108,101,46,10,10,32,32,32,32,32,32,32,32,82, + 101,113,117,105,114,101,115,32,69,120,101,99,117,116,105,111, + 110,76,111,97,100,101,114,46,103,101,116,95,102,105,108,101, + 110,97,109,101,32,97,110,100,32,82,101,115,111,117,114,99, + 101,76,111,97,100,101,114,46,103,101,116,95,100,97,116,97, + 32,116,111,32,98,101,10,32,32,32,32,32,32,32,32,105, + 109,112,108,101,109,101,110,116,101,100,32,116,111,32,108,111, + 97,100,32,115,111,117,114,99,101,32,99,111,100,101,46,32, + 85,115,101,32,111,102,32,98,121,116,101,99,111,100,101,32, + 105,115,32,100,105,99,116,97,116,101,100,32,98,121,32,119, + 104,101,116,104,101,114,10,32,32,32,32,32,32,32,32,103, + 101,116,95,99,111,100,101,32,117,115,101,115,47,119,114,105, + 116,101,115,32,98,121,116,101,99,111,100,101,46,10,10,32, + 32,32,32,32,32,32,32,40,1,0,0,0,117,12,0,0, + 0,95,108,111,97,100,95,109,111,100,117,108,101,40,2,0, + 0,0,117,4,0,0,0,115,101,108,102,117,8,0,0,0, + 102,117,108,108,110,97,109,101,40,0,0,0,0,40,0,0, + 0,0,117,29,0,0,0,60,102,114,111,122,101,110,32,105, + 109,112,111,114,116,108,105,98,46,95,98,111,111,116,115,116, + 114,97,112,62,117,11,0,0,0,108,111,97,100,95,109,111, + 100,117,108,101,228,3,0,0,115,2,0,0,0,0,8,117, + 24,0,0,0,83,111,117,114,99,101,76,111,97,100,101,114, + 46,108,111,97,100,95,109,111,100,117,108,101,78,40,10,0, + 0,0,117,8,0,0,0,95,95,110,97,109,101,95,95,117, + 10,0,0,0,95,95,109,111,100,117,108,101,95,95,117,12, + 0,0,0,95,95,113,117,97,108,110,97,109,101,95,95,117, + 10,0,0,0,112,97,116,104,95,109,116,105,109,101,117,10, + 0,0,0,112,97,116,104,95,115,116,97,116,115,117,15,0, + 0,0,95,99,97,99,104,101,95,98,121,116,101,99,111,100, + 101,117,8,0,0,0,115,101,116,95,100,97,116,97,117,10, + 0,0,0,103,101,116,95,115,111,117,114,99,101,117,8,0, + 0,0,103,101,116,95,99,111,100,101,117,11,0,0,0,108, + 111,97,100,95,109,111,100,117,108,101,40,1,0,0,0,117, + 10,0,0,0,95,95,108,111,99,97,108,115,95,95,40,0, + 0,0,0,40,0,0,0,0,117,29,0,0,0,60,102,114, + 111,122,101,110,32,105,109,112,111,114,116,108,105,98,46,95, + 98,111,111,116,115,116,114,97,112,62,117,12,0,0,0,83, + 111,117,114,99,101,76,111,97,100,101,114,105,3,0,0,115, + 14,0,0,0,16,2,12,6,12,12,12,10,12,9,12,22, + 12,62,117,12,0,0,0,83,111,117,114,99,101,76,111,97, + 100,101,114,99,1,0,0,0,0,0,0,0,1,0,0,0, + 4,0,0,0,2,0,0,0,115,92,0,0,0,124,0,0, + 69,101,0,0,90,1,0,100,0,0,90,2,0,100,1,0, + 90,3,0,100,2,0,100,3,0,132,0,0,90,4,0,101, + 5,0,135,0,0,102,1,0,100,4,0,100,5,0,134,0, + 0,131,1,0,90,6,0,101,5,0,100,6,0,100,7,0, + 132,0,0,131,1,0,90,7,0,100,8,0,100,9,0,132, + 0,0,90,8,0,135,0,0,83,40,10,0,0,0,117,10, + 0,0,0,70,105,108,101,76,111,97,100,101,114,117,103,0, + 0,0,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,3,0,0,0,2,0,0,0,67,0,0,0,115,22, + 0,0,0,124,1,0,124,0,0,95,0,0,124,2,0,124, + 0,0,95,1,0,100,1,0,83,40,2,0,0,0,117,75, + 0,0,0,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,40, + 2,0,0,0,117,4,0,0,0,110,97,109,101,117,4,0, + 0,0,112,97,116,104,40,3,0,0,0,117,4,0,0,0, + 115,101,108,102,117,8,0,0,0,102,117,108,108,110,97,109, + 101,117,4,0,0,0,112,97,116,104,40,0,0,0,0,40, + 0,0,0,0,117,29,0,0,0,60,102,114,111,122,101,110, + 32,105,109,112,111,114,116,108,105,98,46,95,98,111,111,116, + 115,116,114,97,112,62,117,8,0,0,0,95,95,105,110,105, + 116,95,95,244,3,0,0,115,4,0,0,0,0,3,9,1, + 117,19,0,0,0,70,105,108,101,76,111,97,100,101,114,46, + 95,95,105,110,105,116,95,95,99,2,0,0,0,0,0,0, + 0,2,0,0,0,3,0,0,0,3,0,0,0,115,22,0, + 0,0,116,0,0,116,1,0,124,0,0,131,2,0,106,2, + 0,124,1,0,131,1,0,83,40,1,0,0,0,117,26,0, + 0,0,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,40,3,0,0, + 0,117,5,0,0,0,115,117,112,101,114,117,10,0,0,0, + 70,105,108,101,76,111,97,100,101,114,117,11,0,0,0,108, + 111,97,100,95,109,111,100,117,108,101,40,2,0,0,0,117, + 4,0,0,0,115,101,108,102,117,8,0,0,0,102,117,108, + 108,110,97,109,101,40,1,0,0,0,117,9,0,0,0,95, + 95,99,108,97,115,115,95,95,40,0,0,0,0,117,29,0, + 0,0,60,102,114,111,122,101,110,32,105,109,112,111,114,116, + 108,105,98,46,95,98,111,111,116,115,116,114,97,112,62,117, + 11,0,0,0,108,111,97,100,95,109,111,100,117,108,101,250, + 3,0,0,115,2,0,0,0,0,5,117,22,0,0,0,70, + 105,108,101,76,111,97,100,101,114,46,108,111,97,100,95,109, + 111,100,117,108,101,99,2,0,0,0,0,0,0,0,2,0, + 0,0,1,0,0,0,67,0,0,0,115,7,0,0,0,124, + 0,0,106,0,0,83,40,1,0,0,0,117,58,0,0,0, + 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,40,1,0,0,0,117, + 4,0,0,0,112,97,116,104,40,2,0,0,0,117,4,0, + 0,0,115,101,108,102,117,8,0,0,0,102,117,108,108,110, + 97,109,101,40,0,0,0,0,40,0,0,0,0,117,29,0, + 0,0,60,102,114,111,122,101,110,32,105,109,112,111,114,116, + 108,105,98,46,95,98,111,111,116,115,116,114,97,112,62,117, + 12,0,0,0,103,101,116,95,102,105,108,101,110,97,109,101, + 1,4,0,0,115,2,0,0,0,0,3,117,23,0,0,0, + 70,105,108,101,76,111,97,100,101,114,46,103,101,116,95,102, + 105,108,101,110,97,109,101,99,2,0,0,0,0,0,0,0, + 3,0,0,0,8,0,0,0,67,0,0,0,115,41,0,0, + 0,116,0,0,106,1,0,124,1,0,100,1,0,131,2,0, + 143,17,0,125,2,0,124,2,0,106,2,0,131,0,0,83, + 87,100,2,0,81,88,100,2,0,83,40,3,0,0,0,117, + 39,0,0,0,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,117,1,0,0,0, + 114,78,40,3,0,0,0,117,3,0,0,0,95,105,111,117, + 6,0,0,0,70,105,108,101,73,79,117,4,0,0,0,114, + 101,97,100,40,3,0,0,0,117,4,0,0,0,115,101,108, + 102,117,4,0,0,0,112,97,116,104,117,4,0,0,0,102, + 105,108,101,40,0,0,0,0,40,0,0,0,0,117,29,0, + 0,0,60,102,114,111,122,101,110,32,105,109,112,111,114,116, + 108,105,98,46,95,98,111,111,116,115,116,114,97,112,62,117, + 8,0,0,0,103,101,116,95,100,97,116,97,6,4,0,0, + 115,4,0,0,0,0,2,21,1,117,19,0,0,0,70,105, + 108,101,76,111,97,100,101,114,46,103,101,116,95,100,97,116, + 97,40,9,0,0,0,117,8,0,0,0,95,95,110,97,109, + 101,95,95,117,10,0,0,0,95,95,109,111,100,117,108,101, + 95,95,117,12,0,0,0,95,95,113,117,97,108,110,97,109, + 101,95,95,117,7,0,0,0,95,95,100,111,99,95,95,117, + 8,0,0,0,95,95,105,110,105,116,95,95,117,11,0,0, + 0,95,99,104,101,99,107,95,110,97,109,101,117,11,0,0, + 0,108,111,97,100,95,109,111,100,117,108,101,117,12,0,0, + 0,103,101,116,95,102,105,108,101,110,97,109,101,117,8,0, + 0,0,103,101,116,95,100,97,116,97,40,1,0,0,0,117, + 10,0,0,0,95,95,108,111,99,97,108,115,95,95,40,0, + 0,0,0,40,1,0,0,0,117,9,0,0,0,95,95,99, + 108,97,115,115,95,95,117,29,0,0,0,60,102,114,111,122, + 101,110,32,105,109,112,111,114,116,108,105,98,46,95,98,111, + 111,116,115,116,114,97,112,62,117,10,0,0,0,70,105,108, + 101,76,111,97,100,101,114,239,3,0,0,115,10,0,0,0, + 16,3,6,2,12,6,24,7,18,5,117,10,0,0,0,70, + 105,108,101,76,111,97,100,101,114,99,1,0,0,0,0,0, + 0,0,1,0,0,0,4,0,0,0,66,0,0,0,115,68, + 0,0,0,124,0,0,69,101,0,0,90,1,0,100,0,0, + 90,2,0,100,1,0,90,3,0,100,2,0,100,3,0,132, + 0,0,90,4,0,100,4,0,100,5,0,132,0,0,90,5, + 0,100,6,0,100,7,0,100,8,0,100,9,0,132,0,1, + 90,6,0,100,10,0,83,40,11,0,0,0,117,16,0,0, + 0,83,111,117,114,99,101,70,105,108,101,76,111,97,100,101, + 114,117,62,0,0,0,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,3,0,0, + 0,3,0,0,0,67,0,0,0,115,39,0,0,0,116,0, + 0,106,1,0,124,1,0,131,1,0,125,2,0,105,2,0, + 124,2,0,106,2,0,100,1,0,54,124,2,0,106,3,0, + 100,2,0,54,83,40,3,0,0,0,117,33,0,0,0,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, + 117,5,0,0,0,109,116,105,109,101,117,4,0,0,0,115, + 105,122,101,40,4,0,0,0,117,3,0,0,0,95,111,115, + 117,4,0,0,0,115,116,97,116,117,8,0,0,0,115,116, + 95,109,116,105,109,101,117,7,0,0,0,115,116,95,115,105, + 122,101,40,3,0,0,0,117,4,0,0,0,115,101,108,102, + 117,4,0,0,0,112,97,116,104,117,2,0,0,0,115,116, + 40,0,0,0,0,40,0,0,0,0,117,29,0,0,0,60, + 102,114,111,122,101,110,32,105,109,112,111,114,116,108,105,98, + 46,95,98,111,111,116,115,116,114,97,112,62,117,10,0,0, + 0,112,97,116,104,95,115,116,97,116,115,16,4,0,0,115, + 4,0,0,0,0,2,15,1,117,27,0,0,0,83,111,117, + 114,99,101,70,105,108,101,76,111,97,100,101,114,46,112,97, + 116,104,95,115,116,97,116,115,99,4,0,0,0,0,0,0, + 0,5,0,0,0,13,0,0,0,67,0,0,0,115,71,0, + 0,0,121,22,0,116,0,0,106,1,0,124,1,0,131,1, + 0,106,2,0,125,4,0,87,110,24,0,4,116,3,0,107, + 10,0,114,48,0,1,1,1,100,1,0,125,4,0,89,110, + 1,0,88,124,0,0,106,4,0,124,2,0,124,3,0,100, + 2,0,124,4,0,131,2,1,83,40,3,0,0,0,78,105, + 182,1,0,0,117,5,0,0,0,95,109,111,100,101,40,5, + 0,0,0,117,3,0,0,0,95,111,115,117,4,0,0,0, + 115,116,97,116,117,7,0,0,0,115,116,95,109,111,100,101, + 117,7,0,0,0,79,83,69,114,114,111,114,117,8,0,0, + 0,115,101,116,95,100,97,116,97,40,5,0,0,0,117,4, + 0,0,0,115,101,108,102,117,11,0,0,0,115,111,117,114, + 99,101,95,112,97,116,104,117,13,0,0,0,98,121,116,101, + 99,111,100,101,95,112,97,116,104,117,4,0,0,0,100,97, + 116,97,117,4,0,0,0,109,111,100,101,40,0,0,0,0, + 40,0,0,0,0,117,29,0,0,0,60,102,114,111,122,101, + 110,32,105,109,112,111,114,116,108,105,98,46,95,98,111,111, + 116,115,116,114,97,112,62,117,15,0,0,0,95,99,97,99, + 104,101,95,98,121,116,101,99,111,100,101,21,4,0,0,115, + 10,0,0,0,0,2,3,1,22,1,13,1,11,1,117,32, + 0,0,0,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,117,5,0,0,0,95,109,111,100,101,105,182,1, + 0,0,99,3,0,0,0,1,0,0,0,8,0,0,0,13, + 0,0,0,67,0,0,0,115,245,0,0,0,116,0,0,124, + 1,0,131,1,0,92,2,0,125,4,0,125,5,0,103,0, + 0,125,6,0,120,54,0,124,4,0,114,80,0,116,1,0, + 124,4,0,131,1,0,12,114,80,0,116,0,0,124,4,0, + 131,1,0,92,2,0,125,4,0,125,7,0,124,6,0,106, + 2,0,124,7,0,131,1,0,1,113,27,0,87,120,97,0, + 116,3,0,124,6,0,131,1,0,68,93,83,0,125,7,0, + 116,4,0,124,4,0,124,7,0,131,2,0,125,4,0,121, + 17,0,116,5,0,106,6,0,124,4,0,131,1,0,1,87, + 113,94,0,4,116,7,0,107,10,0,114,155,0,1,1,1, + 119,94,0,89,113,94,0,4,116,8,0,107,10,0,114,176, + 0,1,1,1,100,1,0,83,89,113,94,0,88,113,94,0, + 87,121,33,0,116,9,0,124,1,0,124,2,0,124,3,0, + 131,3,0,1,116,10,0,100,2,0,124,1,0,131,2,0, + 1,87,110,24,0,4,116,8,0,116,7,0,102,2,0,107, + 10,0,114,240,0,1,1,1,89,110,1,0,88,100,1,0, + 83,40,3,0,0,0,117,27,0,0,0,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,78,117,12,0,0,0,99,114,101,97, + 116,101,100,32,123,33,114,125,40,11,0,0,0,117,11,0, + 0,0,95,112,97,116,104,95,115,112,108,105,116,117,11,0, + 0,0,95,112,97,116,104,95,105,115,100,105,114,117,6,0, + 0,0,97,112,112,101,110,100,117,8,0,0,0,114,101,118, + 101,114,115,101,100,117,10,0,0,0,95,112,97,116,104,95, + 106,111,105,110,117,3,0,0,0,95,111,115,117,5,0,0, + 0,109,107,100,105,114,117,15,0,0,0,70,105,108,101,69, + 120,105,115,116,115,69,114,114,111,114,117,15,0,0,0,80, + 101,114,109,105,115,115,105,111,110,69,114,114,111,114,117,13, + 0,0,0,95,119,114,105,116,101,95,97,116,111,109,105,99, + 117,16,0,0,0,95,118,101,114,98,111,115,101,95,109,101, + 115,115,97,103,101,40,8,0,0,0,117,4,0,0,0,115, + 101,108,102,117,4,0,0,0,112,97,116,104,117,4,0,0, + 0,100,97,116,97,117,5,0,0,0,95,109,111,100,101,117, + 6,0,0,0,112,97,114,101,110,116,117,8,0,0,0,102, + 105,108,101,110,97,109,101,117,10,0,0,0,112,97,116,104, + 95,112,97,114,116,115,117,4,0,0,0,112,97,114,116,40, + 0,0,0,0,40,0,0,0,0,117,29,0,0,0,60,102, + 114,111,122,101,110,32,105,109,112,111,114,116,108,105,98,46, + 95,98,111,111,116,115,116,114,97,112,62,117,8,0,0,0, + 115,101,116,95,100,97,116,97,29,4,0,0,115,36,0,0, + 0,0,2,18,1,6,2,22,1,18,1,17,2,19,1,15, + 1,3,1,17,1,13,2,7,1,13,3,13,1,3,1,16, + 1,17,1,19,3,117,25,0,0,0,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,40,7,0,0,0,117,8,0,0,0,95,95, + 110,97,109,101,95,95,117,10,0,0,0,95,95,109,111,100, + 117,108,101,95,95,117,12,0,0,0,95,95,113,117,97,108, + 110,97,109,101,95,95,117,7,0,0,0,95,95,100,111,99, + 95,95,117,10,0,0,0,112,97,116,104,95,115,116,97,116, + 115,117,15,0,0,0,95,99,97,99,104,101,95,98,121,116, + 101,99,111,100,101,117,8,0,0,0,115,101,116,95,100,97, + 116,97,40,1,0,0,0,117,10,0,0,0,95,95,108,111, 99,97,108,115,95,95,40,0,0,0,0,40,0,0,0,0, 117,29,0,0,0,60,102,114,111,122,101,110,32,105,109,112, 111,114,116,108,105,98,46,95,98,111,111,116,115,116,114,97, - 112,62,117,18,0,0,0,95,73,109,112,111,114,116,76,111, - 99,107,67,111,110,116,101,120,116,166,5,0,0,115,6,0, - 0,0,16,2,6,2,12,4,117,18,0,0,0,95,73,109, - 112,111,114,116,76,111,99,107,67,111,110,116,101,120,116,99, - 3,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0, - 67,0,0,0,115,91,0,0,0,124,1,0,106,0,0,100, - 1,0,124,2,0,100,2,0,24,131,2,0,125,3,0,116, - 1,0,124,3,0,131,1,0,124,2,0,107,0,0,114,55, - 0,116,2,0,100,3,0,131,1,0,130,1,0,110,0,0, - 124,3,0,100,4,0,25,125,4,0,124,0,0,114,87,0, - 100,5,0,106,3,0,124,4,0,124,0,0,131,2,0,83, - 124,4,0,83,40,6,0,0,0,117,50,0,0,0,82,101, - 115,111,108,118,101,32,97,32,114,101,108,97,116,105,118,101, - 32,109,111,100,117,108,101,32,110,97,109,101,32,116,111,32, - 97,110,32,97,98,115,111,108,117,116,101,32,111,110,101,46, - 117,1,0,0,0,46,105,1,0,0,0,117,50,0,0,0, - 97,116,116,101,109,112,116,101,100,32,114,101,108,97,116,105, - 118,101,32,105,109,112,111,114,116,32,98,101,121,111,110,100, - 32,116,111,112,45,108,101,118,101,108,32,112,97,99,107,97, - 103,101,105,0,0,0,0,117,5,0,0,0,123,125,46,123, - 125,40,4,0,0,0,117,6,0,0,0,114,115,112,108,105, - 116,117,3,0,0,0,108,101,110,117,10,0,0,0,86,97, - 108,117,101,69,114,114,111,114,117,6,0,0,0,102,111,114, - 109,97,116,40,5,0,0,0,117,4,0,0,0,110,97,109, - 101,117,7,0,0,0,112,97,99,107,97,103,101,117,5,0, - 0,0,108,101,118,101,108,117,4,0,0,0,98,105,116,115, - 117,4,0,0,0,98,97,115,101,40,0,0,0,0,40,0, + 112,62,117,16,0,0,0,83,111,117,114,99,101,70,105,108, + 101,76,111,97,100,101,114,12,4,0,0,115,8,0,0,0, + 16,2,6,2,12,5,12,8,117,16,0,0,0,83,111,117, + 114,99,101,70,105,108,101,76,111,97,100,101,114,99,1,0, + 0,0,0,0,0,0,1,0,0,0,2,0,0,0,66,0, + 0,0,115,62,0,0,0,124,0,0,69,101,0,0,90,1, + 0,100,0,0,90,2,0,100,1,0,90,3,0,100,2,0, + 100,3,0,132,0,0,90,4,0,100,4,0,100,5,0,132, + 0,0,90,5,0,100,6,0,100,7,0,132,0,0,90,6, + 0,100,8,0,83,40,9,0,0,0,117,20,0,0,0,83, + 111,117,114,99,101,108,101,115,115,70,105,108,101,76,111,97, + 100,101,114,117,45,0,0,0,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,2,0, + 0,0,4,0,0,0,67,0,0,0,115,19,0,0,0,124, + 0,0,106,0,0,124,1,0,100,1,0,100,2,0,131,1, + 1,83,40,3,0,0,0,78,117,10,0,0,0,115,111,117, + 114,99,101,108,101,115,115,84,40,2,0,0,0,117,12,0, + 0,0,95,108,111,97,100,95,109,111,100,117,108,101,117,4, + 0,0,0,84,114,117,101,40,2,0,0,0,117,4,0,0, + 0,115,101,108,102,117,8,0,0,0,102,117,108,108,110,97, + 109,101,40,0,0,0,0,40,0,0,0,0,117,29,0,0, + 0,60,102,114,111,122,101,110,32,105,109,112,111,114,116,108, + 105,98,46,95,98,111,111,116,115,116,114,97,112,62,117,11, + 0,0,0,108,111,97,100,95,109,111,100,117,108,101,62,4, + 0,0,115,2,0,0,0,0,1,117,32,0,0,0,83,111, + 117,114,99,101,108,101,115,115,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,6,0,0,0,6,0,0,0,67, + 0,0,0,115,138,0,0,0,124,0,0,106,0,0,124,1, + 0,131,1,0,125,2,0,124,0,0,106,1,0,124,2,0, + 131,1,0,125,3,0,124,0,0,106,2,0,124,1,0,124, + 3,0,124,2,0,100,0,0,131,4,0,125,4,0,116,4, + 0,106,5,0,124,4,0,131,1,0,125,5,0,116,6,0, + 124,5,0,116,7,0,131,2,0,114,101,0,116,8,0,100, + 1,0,124,2,0,131,2,0,1,124,5,0,83,116,9,0, + 100,2,0,106,10,0,124,2,0,131,1,0,100,3,0,124, + 1,0,100,4,0,124,2,0,131,1,2,130,1,0,100,0, + 0,83,40,5,0,0,0,78,117,21,0,0,0,99,111,100, + 101,32,111,98,106,101,99,116,32,102,114,111,109,32,123,33, + 114,125,117,21,0,0,0,78,111,110,45,99,111,100,101,32, + 111,98,106,101,99,116,32,105,110,32,123,125,117,4,0,0, + 0,110,97,109,101,117,4,0,0,0,112,97,116,104,40,11, + 0,0,0,117,12,0,0,0,103,101,116,95,102,105,108,101, + 110,97,109,101,117,8,0,0,0,103,101,116,95,100,97,116, + 97,117,20,0,0,0,95,98,121,116,101,115,95,102,114,111, + 109,95,98,121,116,101,99,111,100,101,117,4,0,0,0,78, + 111,110,101,117,7,0,0,0,109,97,114,115,104,97,108,117, + 5,0,0,0,108,111,97,100,115,117,10,0,0,0,105,115, + 105,110,115,116,97,110,99,101,117,10,0,0,0,95,99,111, + 100,101,95,116,121,112,101,117,16,0,0,0,95,118,101,114, + 98,111,115,101,95,109,101,115,115,97,103,101,117,11,0,0, + 0,73,109,112,111,114,116,69,114,114,111,114,117,6,0,0, + 0,102,111,114,109,97,116,40,6,0,0,0,117,4,0,0, + 0,115,101,108,102,117,8,0,0,0,102,117,108,108,110,97, + 109,101,117,4,0,0,0,112,97,116,104,117,4,0,0,0, + 100,97,116,97,117,10,0,0,0,98,121,116,101,115,95,100, + 97,116,97,117,5,0,0,0,102,111,117,110,100,40,0,0, + 0,0,40,0,0,0,0,117,29,0,0,0,60,102,114,111, + 122,101,110,32,105,109,112,111,114,116,108,105,98,46,95,98, + 111,111,116,115,116,114,97,112,62,117,8,0,0,0,103,101, + 116,95,99,111,100,101,65,4,0,0,115,18,0,0,0,0, + 1,15,1,15,1,24,1,15,1,15,1,13,1,4,2,18, + 1,117,29,0,0,0,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,2,0,0,0, + 1,0,0,0,67,0,0,0,115,4,0,0,0,100,1,0, + 83,40,2,0,0,0,117,39,0,0,0,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,40,1,0,0,0,117,4,0,0,0,78,111,110, + 101,40,2,0,0,0,117,4,0,0,0,115,101,108,102,117, + 8,0,0,0,102,117,108,108,110,97,109,101,40,0,0,0, + 0,40,0,0,0,0,117,29,0,0,0,60,102,114,111,122, + 101,110,32,105,109,112,111,114,116,108,105,98,46,95,98,111, + 111,116,115,116,114,97,112,62,117,10,0,0,0,103,101,116, + 95,115,111,117,114,99,101,77,4,0,0,115,2,0,0,0, + 0,2,117,31,0,0,0,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,40,7,0,0,0,117,8,0,0, + 0,95,95,110,97,109,101,95,95,117,10,0,0,0,95,95, + 109,111,100,117,108,101,95,95,117,12,0,0,0,95,95,113, + 117,97,108,110,97,109,101,95,95,117,7,0,0,0,95,95, + 100,111,99,95,95,117,11,0,0,0,108,111,97,100,95,109, + 111,100,117,108,101,117,8,0,0,0,103,101,116,95,99,111, + 100,101,117,10,0,0,0,103,101,116,95,115,111,117,114,99, + 101,40,1,0,0,0,117,10,0,0,0,95,95,108,111,99, + 97,108,115,95,95,40,0,0,0,0,40,0,0,0,0,117, + 29,0,0,0,60,102,114,111,122,101,110,32,105,109,112,111, + 114,116,108,105,98,46,95,98,111,111,116,115,116,114,97,112, + 62,117,20,0,0,0,83,111,117,114,99,101,108,101,115,115, + 70,105,108,101,76,111,97,100,101,114,58,4,0,0,115,8, + 0,0,0,16,2,6,2,12,3,12,12,117,20,0,0,0, + 83,111,117,114,99,101,108,101,115,115,70,105,108,101,76,111, + 97,100,101,114,99,1,0,0,0,0,0,0,0,1,0,0, + 0,5,0,0,0,66,0,0,0,115,104,0,0,0,124,0, + 0,69,101,0,0,90,1,0,100,0,0,90,2,0,100,1, + 0,90,3,0,100,2,0,100,3,0,132,0,0,90,4,0, + 101,5,0,101,6,0,101,7,0,100,4,0,100,5,0,132, + 0,0,131,1,0,131,1,0,131,1,0,90,8,0,100,6, + 0,100,7,0,132,0,0,90,9,0,100,8,0,100,9,0, + 132,0,0,90,10,0,100,10,0,100,11,0,132,0,0,90, + 11,0,100,12,0,83,40,13,0,0,0,117,19,0,0,0, + 69,120,116,101,110,115,105,111,110,70,105,108,101,76,111,97, + 100,101,114,117,93,0,0,0,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,3,0, + 0,0,2,0,0,0,67,0,0,0,115,22,0,0,0,124, + 1,0,124,0,0,95,0,0,124,2,0,124,0,0,95,1, + 0,100,0,0,83,40,1,0,0,0,78,40,2,0,0,0, + 117,4,0,0,0,110,97,109,101,117,4,0,0,0,112,97, + 116,104,40,3,0,0,0,117,4,0,0,0,115,101,108,102, + 117,4,0,0,0,110,97,109,101,117,4,0,0,0,112,97, + 116,104,40,0,0,0,0,40,0,0,0,0,117,29,0,0, + 0,60,102,114,111,122,101,110,32,105,109,112,111,114,116,108, + 105,98,46,95,98,111,111,116,115,116,114,97,112,62,117,8, + 0,0,0,95,95,105,110,105,116,95,95,94,4,0,0,115, + 4,0,0,0,0,1,9,1,117,28,0,0,0,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,4,0,0,0,10,0,0,0,67,0,0,0,115,175, + 0,0,0,124,1,0,116,0,0,106,1,0,107,6,0,125, + 2,0,121,107,0,116,2,0,116,3,0,106,4,0,124,1, + 0,124,0,0,106,5,0,131,3,0,125,3,0,116,6,0, + 100,1,0,124,0,0,106,5,0,131,2,0,1,124,0,0, + 106,7,0,124,1,0,131,1,0,114,117,0,116,8,0,124, + 3,0,100,2,0,131,2,0,12,114,117,0,116,9,0,124, + 0,0,106,5,0,131,1,0,100,3,0,25,103,1,0,124, + 3,0,95,10,0,110,0,0,124,3,0,83,87,110,46,0, + 1,1,1,124,2,0,12,114,163,0,124,1,0,116,0,0, + 106,1,0,107,6,0,114,163,0,116,0,0,106,1,0,124, + 1,0,61,110,0,0,130,0,0,89,110,1,0,88,100,4, + 0,83,40,5,0,0,0,117,25,0,0,0,76,111,97,100, + 32,97,110,32,101,120,116,101,110,115,105,111,110,32,109,111, + 100,117,108,101,46,117,33,0,0,0,101,120,116,101,110,115, + 105,111,110,32,109,111,100,117,108,101,32,108,111,97,100,101, + 100,32,102,114,111,109,32,123,33,114,125,117,8,0,0,0, + 95,95,112,97,116,104,95,95,105,0,0,0,0,78,40,11, + 0,0,0,117,3,0,0,0,115,121,115,117,7,0,0,0, + 109,111,100,117,108,101,115,117,25,0,0,0,95,99,97,108, + 108,95,119,105,116,104,95,102,114,97,109,101,115,95,114,101, + 109,111,118,101,100,117,4,0,0,0,95,105,109,112,117,12, + 0,0,0,108,111,97,100,95,100,121,110,97,109,105,99,117, + 4,0,0,0,112,97,116,104,117,16,0,0,0,95,118,101, + 114,98,111,115,101,95,109,101,115,115,97,103,101,117,10,0, + 0,0,105,115,95,112,97,99,107,97,103,101,117,7,0,0, + 0,104,97,115,97,116,116,114,117,11,0,0,0,95,112,97, + 116,104,95,115,112,108,105,116,117,8,0,0,0,95,95,112, + 97,116,104,95,95,40,4,0,0,0,117,4,0,0,0,115, + 101,108,102,117,8,0,0,0,102,117,108,108,110,97,109,101, + 117,9,0,0,0,105,115,95,114,101,108,111,97,100,117,6, + 0,0,0,109,111,100,117,108,101,40,0,0,0,0,40,0, 0,0,0,117,29,0,0,0,60,102,114,111,122,101,110,32, 105,109,112,111,114,116,108,105,98,46,95,98,111,111,116,115, - 116,114,97,112,62,117,13,0,0,0,95,114,101,115,111,108, - 118,101,95,110,97,109,101,179,5,0,0,115,10,0,0,0, - 0,2,22,1,18,1,15,1,10,1,117,13,0,0,0,95, - 114,101,115,111,108,118,101,95,110,97,109,101,99,2,0,0, - 0,0,0,0,0,4,0,0,0,11,0,0,0,67,0,0, - 0,115,138,0,0,0,116,0,0,106,1,0,115,28,0,116, - 2,0,106,3,0,100,1,0,116,4,0,131,2,0,1,110, - 0,0,120,103,0,116,0,0,106,1,0,68,93,88,0,125, - 2,0,116,5,0,131,0,0,143,23,0,1,124,2,0,106, - 6,0,124,0,0,124,1,0,131,2,0,125,3,0,87,100, - 2,0,81,88,124,3,0,100,2,0,107,9,0,114,38,0, - 124,0,0,116,0,0,106,8,0,107,7,0,114,109,0,124, - 3,0,83,116,0,0,106,8,0,124,0,0,25,106,9,0, - 83,113,38,0,113,38,0,87,100,2,0,83,100,2,0,83, - 40,3,0,0,0,117,23,0,0,0,70,105,110,100,32,97, - 32,109,111,100,117,108,101,39,115,32,108,111,97,100,101,114, - 46,117,22,0,0,0,115,121,115,46,109,101,116,97,95,112, - 97,116,104,32,105,115,32,101,109,112,116,121,78,40,10,0, - 0,0,117,3,0,0,0,115,121,115,117,9,0,0,0,109, - 101,116,97,95,112,97,116,104,117,9,0,0,0,95,119,97, - 114,110,105,110,103,115,117,4,0,0,0,119,97,114,110,117, - 13,0,0,0,73,109,112,111,114,116,87,97,114,110,105,110, - 103,117,18,0,0,0,95,73,109,112,111,114,116,76,111,99, - 107,67,111,110,116,101,120,116,117,11,0,0,0,102,105,110, - 100,95,109,111,100,117,108,101,117,4,0,0,0,78,111,110, - 101,117,7,0,0,0,109,111,100,117,108,101,115,117,10,0, - 0,0,95,95,108,111,97,100,101,114,95,95,40,4,0,0, - 0,117,4,0,0,0,110,97,109,101,117,4,0,0,0,112, - 97,116,104,117,6,0,0,0,102,105,110,100,101,114,117,6, - 0,0,0,108,111,97,100,101,114,40,0,0,0,0,40,0, - 0,0,0,117,29,0,0,0,60,102,114,111,122,101,110,32, - 105,109,112,111,114,116,108,105,98,46,95,98,111,111,116,115, - 116,114,97,112,62,117,12,0,0,0,95,102,105,110,100,95, - 109,111,100,117,108,101,188,5,0,0,115,20,0,0,0,0, - 2,9,1,19,1,16,1,10,1,24,1,12,2,15,1,4, - 2,21,2,117,12,0,0,0,95,102,105,110,100,95,109,111, - 100,117,108,101,99,3,0,0,0,0,0,0,0,4,0,0, - 0,4,0,0,0,67,0,0,0,115,194,0,0,0,116,0, - 0,124,0,0,116,1,0,131,2,0,115,45,0,116,2,0, - 100,1,0,106,3,0,116,4,0,124,0,0,131,1,0,131, - 1,0,131,1,0,130,1,0,110,0,0,124,2,0,100,2, - 0,107,0,0,114,72,0,116,5,0,100,3,0,131,1,0, - 130,1,0,110,0,0,124,1,0,114,156,0,116,0,0,124, - 1,0,116,1,0,131,2,0,115,108,0,116,2,0,100,4, - 0,131,1,0,130,1,0,113,156,0,124,1,0,116,6,0, - 106,7,0,107,7,0,114,156,0,100,5,0,125,3,0,116, - 8,0,124,3,0,106,3,0,124,1,0,131,1,0,131,1, - 0,130,1,0,113,156,0,110,0,0,124,0,0,12,114,190, - 0,124,2,0,100,2,0,107,2,0,114,190,0,116,5,0, - 100,6,0,131,1,0,130,1,0,110,0,0,100,7,0,83, - 40,8,0,0,0,117,28,0,0,0,86,101,114,105,102,121, - 32,97,114,103,117,109,101,110,116,115,32,97,114,101,32,34, - 115,97,110,101,34,46,117,31,0,0,0,109,111,100,117,108, - 101,32,110,97,109,101,32,109,117,115,116,32,98,101,32,115, - 116,114,44,32,110,111,116,32,123,125,105,0,0,0,0,117, - 18,0,0,0,108,101,118,101,108,32,109,117,115,116,32,98, - 101,32,62,61,32,48,117,31,0,0,0,95,95,112,97,99, - 107,97,103,101,95,95,32,110,111,116,32,115,101,116,32,116, - 111,32,97,32,115,116,114,105,110,103,117,61,0,0,0,80, - 97,114,101,110,116,32,109,111,100,117,108,101,32,123,33,114, - 125,32,110,111,116,32,108,111,97,100,101,100,44,32,99,97, - 110,110,111,116,32,112,101,114,102,111,114,109,32,114,101,108, - 97,116,105,118,101,32,105,109,112,111,114,116,117,17,0,0, - 0,69,109,112,116,121,32,109,111,100,117,108,101,32,110,97, - 109,101,78,40,9,0,0,0,117,10,0,0,0,105,115,105, - 110,115,116,97,110,99,101,117,3,0,0,0,115,116,114,117, - 9,0,0,0,84,121,112,101,69,114,114,111,114,117,6,0, - 0,0,102,111,114,109,97,116,117,4,0,0,0,116,121,112, - 101,117,10,0,0,0,86,97,108,117,101,69,114,114,111,114, - 117,3,0,0,0,115,121,115,117,7,0,0,0,109,111,100, - 117,108,101,115,117,11,0,0,0,83,121,115,116,101,109,69, - 114,114,111,114,40,4,0,0,0,117,4,0,0,0,110,97, - 109,101,117,7,0,0,0,112,97,99,107,97,103,101,117,5, - 0,0,0,108,101,118,101,108,117,3,0,0,0,109,115,103, - 40,0,0,0,0,40,0,0,0,0,117,29,0,0,0,60, - 102,114,111,122,101,110,32,105,109,112,111,114,116,108,105,98, - 46,95,98,111,111,116,115,116,114,97,112,62,117,13,0,0, - 0,95,115,97,110,105,116,121,95,99,104,101,99,107,205,5, - 0,0,115,24,0,0,0,0,2,15,1,30,1,12,1,15, - 1,6,1,15,1,15,1,15,1,6,2,27,1,19,1,117, - 13,0,0,0,95,115,97,110,105,116,121,95,99,104,101,99, - 107,117,20,0,0,0,78,111,32,109,111,100,117,108,101,32, - 110,97,109,101,100,32,123,33,114,125,99,2,0,0,0,0, - 0,0,0,9,0,0,0,27,0,0,0,67,0,0,0,115, - 12,2,0,0,100,0,0,125,2,0,124,0,0,106,1,0, - 100,1,0,131,1,0,100,2,0,25,125,3,0,124,3,0, - 114,178,0,124,3,0,116,2,0,106,3,0,107,7,0,114, - 62,0,116,4,0,124,1,0,124,3,0,131,2,0,1,110, - 0,0,124,0,0,116,2,0,106,3,0,107,6,0,114,88, - 0,116,2,0,106,3,0,124,0,0,25,83,116,2,0,106, - 3,0,124,3,0,25,125,4,0,121,13,0,124,4,0,106, - 5,0,125,2,0,87,113,178,0,4,116,6,0,107,10,0, - 114,174,0,1,1,1,116,7,0,100,3,0,23,106,8,0, - 124,0,0,124,3,0,131,2,0,125,5,0,116,9,0,124, - 5,0,100,4,0,124,0,0,131,1,1,130,1,0,89,113, - 178,0,88,110,0,0,116,10,0,124,0,0,124,2,0,131, - 2,0,125,6,0,124,6,0,100,0,0,107,8,0,114,250, - 0,116,9,0,116,7,0,106,8,0,124,0,0,131,1,0, - 100,4,0,124,0,0,131,1,1,125,7,0,100,10,0,124, - 7,0,95,12,0,124,7,0,130,1,0,110,47,0,124,0, - 0,116,2,0,106,3,0,107,7,0,114,41,1,124,6,0, - 106,13,0,124,0,0,131,1,0,1,116,14,0,100,5,0, - 124,0,0,124,6,0,131,3,0,1,110,0,0,116,2,0, - 106,3,0,124,0,0,25,125,8,0,124,3,0,114,105,1, - 116,2,0,106,3,0,124,3,0,25,125,4,0,116,15,0, - 124,4,0,124,0,0,106,1,0,100,1,0,131,1,0,100, - 6,0,25,124,8,0,131,3,0,1,110,0,0,116,16,0, - 124,8,0,100,7,0,100,0,0,131,3,0,100,0,0,107, - 8,0,114,212,1,121,59,0,124,8,0,106,17,0,124,8, - 0,95,18,0,116,19,0,124,8,0,100,8,0,131,2,0, - 115,187,1,124,8,0,106,18,0,106,1,0,100,1,0,131, - 1,0,100,2,0,25,124,8,0,95,18,0,110,0,0,87, - 113,212,1,4,116,6,0,107,10,0,114,208,1,1,1,1, - 89,113,212,1,88,110,0,0,116,19,0,124,8,0,100,9, - 0,131,2,0,115,8,2,121,13,0,124,6,0,124,8,0, - 95,20,0,87,113,8,2,4,116,6,0,107,10,0,114,4, - 2,1,1,1,89,113,8,2,88,110,0,0,124,8,0,83, - 40,11,0,0,0,78,117,1,0,0,0,46,105,0,0,0, - 0,117,21,0,0,0,59,32,123,125,32,105,115,32,110,111, - 116,32,97,32,112,97,99,107,97,103,101,117,4,0,0,0, - 110,97,109,101,117,18,0,0,0,105,109,112,111,114,116,32, - 123,33,114,125,32,35,32,123,33,114,125,105,2,0,0,0, - 117,11,0,0,0,95,95,112,97,99,107,97,103,101,95,95, - 117,8,0,0,0,95,95,112,97,116,104,95,95,117,10,0, - 0,0,95,95,108,111,97,100,101,114,95,95,84,40,21,0, - 0,0,117,4,0,0,0,78,111,110,101,117,10,0,0,0, - 114,112,97,114,116,105,116,105,111,110,117,3,0,0,0,115, - 121,115,117,7,0,0,0,109,111,100,117,108,101,115,117,25, - 0,0,0,95,99,97,108,108,95,119,105,116,104,95,102,114, - 97,109,101,115,95,114,101,109,111,118,101,100,117,8,0,0, - 0,95,95,112,97,116,104,95,95,117,14,0,0,0,65,116, - 116,114,105,98,117,116,101,69,114,114,111,114,117,8,0,0, - 0,95,69,82,82,95,77,83,71,117,6,0,0,0,102,111, - 114,109,97,116,117,11,0,0,0,73,109,112,111,114,116,69, - 114,114,111,114,117,12,0,0,0,95,102,105,110,100,95,109, - 111,100,117,108,101,117,4,0,0,0,84,114,117,101,117,10, - 0,0,0,95,110,111,116,95,102,111,117,110,100,117,11,0, - 0,0,108,111,97,100,95,109,111,100,117,108,101,117,16,0, - 0,0,95,118,101,114,98,111,115,101,95,109,101,115,115,97, - 103,101,117,7,0,0,0,115,101,116,97,116,116,114,117,7, - 0,0,0,103,101,116,97,116,116,114,117,8,0,0,0,95, - 95,110,97,109,101,95,95,117,11,0,0,0,95,95,112,97, - 99,107,97,103,101,95,95,117,7,0,0,0,104,97,115,97, - 116,116,114,117,10,0,0,0,95,95,108,111,97,100,101,114, - 95,95,40,9,0,0,0,117,4,0,0,0,110,97,109,101, - 117,7,0,0,0,105,109,112,111,114,116,95,117,4,0,0, - 0,112,97,116,104,117,6,0,0,0,112,97,114,101,110,116, - 117,13,0,0,0,112,97,114,101,110,116,95,109,111,100,117, - 108,101,117,3,0,0,0,109,115,103,117,6,0,0,0,108, - 111,97,100,101,114,117,3,0,0,0,101,120,99,117,6,0, - 0,0,109,111,100,117,108,101,40,0,0,0,0,40,0,0, - 0,0,117,29,0,0,0,60,102,114,111,122,101,110,32,105, - 109,112,111,114,116,108,105,98,46,95,98,111,111,116,115,116, - 114,97,112,62,117,23,0,0,0,95,102,105,110,100,95,97, - 110,100,95,108,111,97,100,95,117,110,108,111,99,107,101,100, - 224,5,0,0,115,76,0,0,0,0,1,6,1,19,1,6, - 1,15,1,16,2,15,1,11,2,13,1,3,1,13,1,13, - 1,22,1,26,1,15,1,12,1,27,3,9,1,9,1,15, - 2,13,1,19,2,13,1,6,2,13,1,32,2,24,1,3, - 1,12,1,15,1,32,1,13,1,8,2,15,1,3,1,13, - 1,13,1,8,1,117,23,0,0,0,95,102,105,110,100,95, - 97,110,100,95,108,111,97,100,95,117,110,108,111,99,107,101, - 100,99,2,0,0,0,0,0,0,0,3,0,0,0,18,0, - 0,0,67,0,0,0,115,75,0,0,0,122,16,0,116,0, - 0,124,0,0,131,1,0,125,2,0,87,100,1,0,116,1, - 0,106,2,0,131,0,0,1,88,124,2,0,106,3,0,131, - 0,0,1,122,17,0,116,4,0,124,0,0,124,1,0,131, - 2,0,83,87,100,1,0,124,2,0,106,5,0,131,0,0, - 1,88,100,1,0,83,40,2,0,0,0,117,54,0,0,0, - 70,105,110,100,32,97,110,100,32,108,111,97,100,32,116,104, - 101,32,109,111,100,117,108,101,44,32,97,110,100,32,114,101, - 108,101,97,115,101,32,116,104,101,32,105,109,112,111,114,116, - 32,108,111,99,107,46,78,40,6,0,0,0,117,16,0,0, - 0,95,103,101,116,95,109,111,100,117,108,101,95,108,111,99, - 107,117,4,0,0,0,95,105,109,112,117,12,0,0,0,114, - 101,108,101,97,115,101,95,108,111,99,107,117,7,0,0,0, - 97,99,113,117,105,114,101,117,23,0,0,0,95,102,105,110, - 100,95,97,110,100,95,108,111,97,100,95,117,110,108,111,99, - 107,101,100,117,7,0,0,0,114,101,108,101,97,115,101,40, - 3,0,0,0,117,4,0,0,0,110,97,109,101,117,7,0, - 0,0,105,109,112,111,114,116,95,117,4,0,0,0,108,111, - 99,107,40,0,0,0,0,40,0,0,0,0,117,29,0,0, - 0,60,102,114,111,122,101,110,32,105,109,112,111,114,116,108, - 105,98,46,95,98,111,111,116,115,116,114,97,112,62,117,14, - 0,0,0,95,102,105,110,100,95,97,110,100,95,108,111,97, - 100,18,6,0,0,115,14,0,0,0,0,2,3,1,16,2, - 11,1,10,1,3,1,17,2,117,14,0,0,0,95,102,105, - 110,100,95,97,110,100,95,108,111,97,100,99,3,0,0,0, - 0,0,0,0,5,0,0,0,4,0,0,0,67,0,0,0, - 115,172,0,0,0,116,0,0,124,0,0,124,1,0,124,2, - 0,131,3,0,1,124,2,0,100,1,0,107,4,0,114,49, - 0,116,1,0,124,0,0,124,1,0,124,2,0,131,3,0, - 125,0,0,110,0,0,116,2,0,106,3,0,131,0,0,1, - 124,0,0,116,4,0,106,5,0,107,7,0,114,87,0,116, - 6,0,124,0,0,116,7,0,131,2,0,83,116,4,0,106, - 5,0,124,0,0,25,125,3,0,124,3,0,100,4,0,107, - 8,0,114,158,0,116,2,0,106,9,0,131,0,0,1,100, - 2,0,106,10,0,124,0,0,131,1,0,125,4,0,116,11, - 0,124,4,0,100,3,0,124,0,0,131,1,1,130,1,0, - 110,0,0,116,12,0,124,0,0,131,1,0,1,124,3,0, - 83,40,5,0,0,0,117,50,1,0,0,73,109,112,111,114, - 116,32,97,110,100,32,114,101,116,117,114,110,32,116,104,101, - 32,109,111,100,117,108,101,32,98,97,115,101,100,32,111,110, - 32,105,116,115,32,110,97,109,101,44,32,116,104,101,32,112, - 97,99,107,97,103,101,32,116,104,101,32,99,97,108,108,32, - 105,115,10,32,32,32,32,98,101,105,110,103,32,109,97,100, - 101,32,102,114,111,109,44,32,97,110,100,32,116,104,101,32, - 108,101,118,101,108,32,97,100,106,117,115,116,109,101,110,116, - 46,10,10,32,32,32,32,84,104,105,115,32,102,117,110,99, - 116,105,111,110,32,114,101,112,114,101,115,101,110,116,115,32, - 116,104,101,32,103,114,101,97,116,101,115,116,32,99,111,109, - 109,111,110,32,100,101,110,111,109,105,110,97,116,111,114,32, - 111,102,32,102,117,110,99,116,105,111,110,97,108,105,116,121, - 10,32,32,32,32,98,101,116,119,101,101,110,32,105,109,112, - 111,114,116,95,109,111,100,117,108,101,32,97,110,100,32,95, - 95,105,109,112,111,114,116,95,95,46,32,84,104,105,115,32, - 105,110,99,108,117,100,101,115,32,115,101,116,116,105,110,103, - 32,95,95,112,97,99,107,97,103,101,95,95,32,105,102,10, - 32,32,32,32,116,104,101,32,108,111,97,100,101,114,32,100, - 105,100,32,110,111,116,46,10,10,32,32,32,32,105,0,0, - 0,0,117,40,0,0,0,105,109,112,111,114,116,32,111,102, - 32,123,125,32,104,97,108,116,101,100,59,32,78,111,110,101, - 32,105,110,32,115,121,115,46,109,111,100,117,108,101,115,117, - 4,0,0,0,110,97,109,101,78,40,13,0,0,0,117,13, - 0,0,0,95,115,97,110,105,116,121,95,99,104,101,99,107, - 117,13,0,0,0,95,114,101,115,111,108,118,101,95,110,97, - 109,101,117,4,0,0,0,95,105,109,112,117,12,0,0,0, - 97,99,113,117,105,114,101,95,108,111,99,107,117,3,0,0, - 0,115,121,115,117,7,0,0,0,109,111,100,117,108,101,115, - 117,14,0,0,0,95,102,105,110,100,95,97,110,100,95,108, - 111,97,100,117,11,0,0,0,95,103,99,100,95,105,109,112, - 111,114,116,117,4,0,0,0,78,111,110,101,117,12,0,0, - 0,114,101,108,101,97,115,101,95,108,111,99,107,117,6,0, - 0,0,102,111,114,109,97,116,117,11,0,0,0,73,109,112, - 111,114,116,69,114,114,111,114,117,19,0,0,0,95,108,111, - 99,107,95,117,110,108,111,99,107,95,109,111,100,117,108,101, - 40,5,0,0,0,117,4,0,0,0,110,97,109,101,117,7, - 0,0,0,112,97,99,107,97,103,101,117,5,0,0,0,108, - 101,118,101,108,117,6,0,0,0,109,111,100,117,108,101,117, - 7,0,0,0,109,101,115,115,97,103,101,40,0,0,0,0, - 40,0,0,0,0,117,29,0,0,0,60,102,114,111,122,101, - 110,32,105,109,112,111,114,116,108,105,98,46,95,98,111,111, - 116,115,116,114,97,112,62,117,11,0,0,0,95,103,99,100, - 95,105,109,112,111,114,116,31,6,0,0,115,28,0,0,0, - 0,9,16,1,12,1,21,1,10,1,15,1,13,1,13,1, - 12,1,10,1,6,1,9,1,21,1,10,1,117,11,0,0, - 0,95,103,99,100,95,105,109,112,111,114,116,99,3,0,0, - 0,0,0,0,0,5,0,0,0,17,0,0,0,67,0,0, - 0,115,233,0,0,0,116,0,0,124,0,0,100,1,0,131, - 2,0,114,229,0,100,2,0,124,1,0,107,6,0,114,89, - 0,116,1,0,124,1,0,131,1,0,125,1,0,124,1,0, - 106,2,0,100,2,0,131,1,0,1,116,0,0,124,0,0, - 100,3,0,131,2,0,114,89,0,124,1,0,106,3,0,124, - 0,0,106,4,0,131,1,0,1,113,89,0,110,0,0,120, - 137,0,124,1,0,68,93,126,0,125,3,0,116,0,0,124, - 0,0,124,3,0,131,2,0,115,96,0,121,32,0,116,5, - 0,124,2,0,100,4,0,106,6,0,124,0,0,106,7,0, - 124,3,0,131,2,0,131,2,0,1,87,113,222,0,4,116, - 8,0,107,10,0,114,218,0,1,125,4,0,1,122,35,0, - 116,0,0,124,4,0,100,5,0,131,2,0,114,197,0,124, - 4,0,106,9,0,114,197,0,110,3,0,130,0,0,87,89, - 100,6,0,100,6,0,125,4,0,126,4,0,88,113,222,0, - 88,113,96,0,113,96,0,87,110,0,0,124,0,0,83,40, - 7,0,0,0,117,238,0,0,0,70,105,103,117,114,101,32, - 111,117,116,32,119,104,97,116,32,95,95,105,109,112,111,114, - 116,95,95,32,115,104,111,117,108,100,32,114,101,116,117,114, - 110,46,10,10,32,32,32,32,84,104,101,32,105,109,112,111, - 114,116,95,32,112,97,114,97,109,101,116,101,114,32,105,115, - 32,97,32,99,97,108,108,97,98,108,101,32,119,104,105,99, - 104,32,116,97,107,101,115,32,116,104,101,32,110,97,109,101, - 32,111,102,32,109,111,100,117,108,101,32,116,111,10,32,32, - 32,32,105,109,112,111,114,116,46,32,73,116,32,105,115,32, - 114,101,113,117,105,114,101,100,32,116,111,32,100,101,99,111, - 117,112,108,101,32,116,104,101,32,102,117,110,99,116,105,111, - 110,32,102,114,111,109,32,97,115,115,117,109,105,110,103,32, - 105,109,112,111,114,116,108,105,98,39,115,10,32,32,32,32, - 105,109,112,111,114,116,32,105,109,112,108,101,109,101,110,116, - 97,116,105,111,110,32,105,115,32,100,101,115,105,114,101,100, - 46,10,10,32,32,32,32,117,8,0,0,0,95,95,112,97, - 116,104,95,95,117,1,0,0,0,42,117,7,0,0,0,95, - 95,97,108,108,95,95,117,5,0,0,0,123,125,46,123,125, - 117,10,0,0,0,95,110,111,116,95,102,111,117,110,100,78, - 40,10,0,0,0,117,7,0,0,0,104,97,115,97,116,116, - 114,117,4,0,0,0,108,105,115,116,117,6,0,0,0,114, - 101,109,111,118,101,117,6,0,0,0,101,120,116,101,110,100, - 117,7,0,0,0,95,95,97,108,108,95,95,117,25,0,0, - 0,95,99,97,108,108,95,119,105,116,104,95,102,114,97,109, - 101,115,95,114,101,109,111,118,101,100,117,6,0,0,0,102, - 111,114,109,97,116,117,8,0,0,0,95,95,110,97,109,101, - 95,95,117,11,0,0,0,73,109,112,111,114,116,69,114,114, - 111,114,117,10,0,0,0,95,110,111,116,95,102,111,117,110, - 100,40,5,0,0,0,117,6,0,0,0,109,111,100,117,108, - 101,117,8,0,0,0,102,114,111,109,108,105,115,116,117,7, - 0,0,0,105,109,112,111,114,116,95,117,1,0,0,0,120, - 117,3,0,0,0,101,120,99,40,0,0,0,0,40,0,0, - 0,0,117,29,0,0,0,60,102,114,111,122,101,110,32,105, - 109,112,111,114,116,108,105,98,46,95,98,111,111,116,115,116, - 114,97,112,62,117,16,0,0,0,95,104,97,110,100,108,101, - 95,102,114,111,109,108,105,115,116,55,6,0,0,115,32,0, - 0,0,0,10,15,1,12,1,12,1,13,1,15,1,22,1, - 13,1,15,1,3,1,6,1,26,1,18,6,24,1,3,2, - 32,1,117,16,0,0,0,95,104,97,110,100,108,101,95,102, - 114,111,109,108,105,115,116,99,1,0,0,0,0,0,0,0, - 2,0,0,0,2,0,0,0,67,0,0,0,115,78,0,0, - 0,124,0,0,106,0,0,100,1,0,131,1,0,125,1,0, - 124,1,0,100,6,0,107,8,0,114,74,0,124,0,0,100, - 2,0,25,125,1,0,100,3,0,124,0,0,107,7,0,114, - 74,0,124,1,0,106,2,0,100,4,0,131,1,0,100,5, - 0,25,125,1,0,113,74,0,110,0,0,124,1,0,83,40, - 7,0,0,0,117,167,0,0,0,67,97,108,99,117,108,97, - 116,101,32,119,104,97,116,32,95,95,112,97,99,107,97,103, - 101,95,95,32,115,104,111,117,108,100,32,98,101,46,10,10, - 32,32,32,32,95,95,112,97,99,107,97,103,101,95,95,32, - 105,115,32,110,111,116,32,103,117,97,114,97,110,116,101,101, - 100,32,116,111,32,98,101,32,100,101,102,105,110,101,100,32, - 111,114,32,99,111,117,108,100,32,98,101,32,115,101,116,32, - 116,111,32,78,111,110,101,10,32,32,32,32,116,111,32,114, - 101,112,114,101,115,101,110,116,32,116,104,97,116,32,105,116, - 115,32,112,114,111,112,101,114,32,118,97,108,117,101,32,105, - 115,32,117,110,107,110,111,119,110,46,10,10,32,32,32,32, - 117,11,0,0,0,95,95,112,97,99,107,97,103,101,95,95, - 117,8,0,0,0,95,95,110,97,109,101,95,95,117,8,0, - 0,0,95,95,112,97,116,104,95,95,117,1,0,0,0,46, - 105,0,0,0,0,78,40,3,0,0,0,117,3,0,0,0, - 103,101,116,117,4,0,0,0,78,111,110,101,117,10,0,0, - 0,114,112,97,114,116,105,116,105,111,110,40,2,0,0,0, - 117,7,0,0,0,103,108,111,98,97,108,115,117,7,0,0, - 0,112,97,99,107,97,103,101,40,0,0,0,0,40,0,0, - 0,0,117,29,0,0,0,60,102,114,111,122,101,110,32,105, - 109,112,111,114,116,108,105,98,46,95,98,111,111,116,115,116, - 114,97,112,62,117,17,0,0,0,95,99,97,108,99,95,95, - 95,112,97,99,107,97,103,101,95,95,89,6,0,0,115,12, - 0,0,0,0,7,15,1,12,1,10,1,12,1,25,1,117, - 17,0,0,0,95,99,97,108,99,95,95,95,112,97,99,107, - 97,103,101,95,95,99,0,0,0,0,0,0,0,0,3,0, - 0,0,3,0,0,0,67,0,0,0,115,55,0,0,0,116, - 0,0,116,1,0,106,2,0,131,0,0,102,2,0,125,0, - 0,116,3,0,116,4,0,102,2,0,125,1,0,116,5,0, - 116,6,0,102,2,0,125,2,0,124,0,0,124,1,0,124, - 2,0,103,3,0,83,40,1,0,0,0,117,111,0,0,0, - 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,44,32,97,108,108,111,119,95, - 112,97,99,107,97,103,101,115,41,46,10,32,32,32,32,40, - 7,0,0,0,117,19,0,0,0,69,120,116,101,110,115,105, - 111,110,70,105,108,101,76,111,97,100,101,114,117,4,0,0, - 0,95,105,109,112,117,18,0,0,0,101,120,116,101,110,115, - 105,111,110,95,115,117,102,102,105,120,101,115,117,16,0,0, - 0,83,111,117,114,99,101,70,105,108,101,76,111,97,100,101, - 114,117,15,0,0,0,83,79,85,82,67,69,95,83,85,70, - 70,73,88,69,83,117,20,0,0,0,83,111,117,114,99,101, - 108,101,115,115,70,105,108,101,76,111,97,100,101,114,117,17, - 0,0,0,66,89,84,69,67,79,68,69,95,83,85,70,70, - 73,88,69,83,40,3,0,0,0,117,10,0,0,0,101,120, - 116,101,110,115,105,111,110,115,117,6,0,0,0,115,111,117, - 114,99,101,117,8,0,0,0,98,121,116,101,99,111,100,101, - 40,0,0,0,0,40,0,0,0,0,117,29,0,0,0,60, - 102,114,111,122,101,110,32,105,109,112,111,114,116,108,105,98, - 46,95,98,111,111,116,115,116,114,97,112,62,117,27,0,0, - 0,95,103,101,116,95,115,117,112,112,111,114,116,101,100,95, - 102,105,108,101,95,108,111,97,100,101,114,115,104,6,0,0, - 115,8,0,0,0,0,5,18,1,12,1,12,1,117,27,0, - 0,0,95,103,101,116,95,115,117,112,112,111,114,116,101,100, - 95,102,105,108,101,95,108,111,97,100,101,114,115,99,5,0, - 0,0,0,0,0,0,9,0,0,0,5,0,0,0,67,0, - 0,0,115,227,0,0,0,124,4,0,100,1,0,107,2,0, - 114,27,0,116,0,0,124,0,0,131,1,0,125,5,0,110, - 54,0,124,1,0,100,3,0,107,9,0,114,45,0,124,1, - 0,110,3,0,105,0,0,125,6,0,116,2,0,124,6,0, - 131,1,0,125,7,0,116,0,0,124,0,0,124,7,0,124, - 4,0,131,3,0,125,5,0,124,3,0,115,207,0,124,4, - 0,100,1,0,107,2,0,114,122,0,116,0,0,124,0,0, - 106,3,0,100,2,0,131,1,0,100,1,0,25,131,1,0, - 83,124,0,0,115,132,0,124,5,0,83,116,4,0,124,0, - 0,131,1,0,116,4,0,124,0,0,106,3,0,100,2,0, - 131,1,0,100,1,0,25,131,1,0,24,125,8,0,116,5, - 0,106,6,0,124,5,0,106,7,0,100,3,0,116,4,0, - 124,5,0,106,7,0,131,1,0,124,8,0,24,133,2,0, - 25,25,83,110,16,0,116,8,0,124,5,0,124,3,0,116, - 0,0,131,3,0,83,100,3,0,83,40,4,0,0,0,117, - 214,1,0,0,73,109,112,111,114,116,32,97,32,109,111,100, - 117,108,101,46,10,10,32,32,32,32,84,104,101,32,39,103, - 108,111,98,97,108,115,39,32,97,114,103,117,109,101,110,116, - 32,105,115,32,117,115,101,100,32,116,111,32,105,110,102,101, - 114,32,119,104,101,114,101,32,116,104,101,32,105,109,112,111, - 114,116,32,105,115,32,111,99,99,117,114,105,110,103,32,102, - 114,111,109,10,32,32,32,32,116,111,32,104,97,110,100,108, - 101,32,114,101,108,97,116,105,118,101,32,105,109,112,111,114, - 116,115,46,32,84,104,101,32,39,108,111,99,97,108,115,39, - 32,97,114,103,117,109,101,110,116,32,105,115,32,105,103,110, - 111,114,101,100,46,32,84,104,101,10,32,32,32,32,39,102, - 114,111,109,108,105,115,116,39,32,97,114,103,117,109,101,110, - 116,32,115,112,101,99,105,102,105,101,115,32,119,104,97,116, - 32,115,104,111,117,108,100,32,101,120,105,115,116,32,97,115, - 32,97,116,116,114,105,98,117,116,101,115,32,111,110,32,116, - 104,101,32,109,111,100,117,108,101,10,32,32,32,32,98,101, - 105,110,103,32,105,109,112,111,114,116,101,100,32,40,101,46, - 103,46,32,96,96,102,114,111,109,32,109,111,100,117,108,101, - 32,105,109,112,111,114,116,32,60,102,114,111,109,108,105,115, - 116,62,96,96,41,46,32,32,84,104,101,32,39,108,101,118, - 101,108,39,10,32,32,32,32,97,114,103,117,109,101,110,116, - 32,114,101,112,114,101,115,101,110,116,115,32,116,104,101,32, - 112,97,99,107,97,103,101,32,108,111,99,97,116,105,111,110, - 32,116,111,32,105,109,112,111,114,116,32,102,114,111,109,32, - 105,110,32,97,32,114,101,108,97,116,105,118,101,10,32,32, - 32,32,105,109,112,111,114,116,32,40,101,46,103,46,32,96, - 96,102,114,111,109,32,46,46,112,107,103,32,105,109,112,111, - 114,116,32,109,111,100,96,96,32,119,111,117,108,100,32,104, - 97,118,101,32,97,32,39,108,101,118,101,108,39,32,111,102, - 32,50,41,46,10,10,32,32,32,32,105,0,0,0,0,117, - 1,0,0,0,46,78,40,9,0,0,0,117,11,0,0,0, - 95,103,99,100,95,105,109,112,111,114,116,117,4,0,0,0, - 78,111,110,101,117,17,0,0,0,95,99,97,108,99,95,95, - 95,112,97,99,107,97,103,101,95,95,117,9,0,0,0,112, - 97,114,116,105,116,105,111,110,117,3,0,0,0,108,101,110, - 117,3,0,0,0,115,121,115,117,7,0,0,0,109,111,100, - 117,108,101,115,117,8,0,0,0,95,95,110,97,109,101,95, - 95,117,16,0,0,0,95,104,97,110,100,108,101,95,102,114, - 111,109,108,105,115,116,40,9,0,0,0,117,4,0,0,0, - 110,97,109,101,117,7,0,0,0,103,108,111,98,97,108,115, - 117,6,0,0,0,108,111,99,97,108,115,117,8,0,0,0, - 102,114,111,109,108,105,115,116,117,5,0,0,0,108,101,118, - 101,108,117,6,0,0,0,109,111,100,117,108,101,117,8,0, - 0,0,103,108,111,98,97,108,115,95,117,7,0,0,0,112, - 97,99,107,97,103,101,117,7,0,0,0,99,117,116,95,111, - 102,102,40,0,0,0,0,40,0,0,0,0,117,29,0,0, - 0,60,102,114,111,122,101,110,32,105,109,112,111,114,116,108, - 105,98,46,95,98,111,111,116,115,116,114,97,112,62,117,10, - 0,0,0,95,95,105,109,112,111,114,116,95,95,115,6,0, - 0,115,26,0,0,0,0,11,12,1,15,2,24,1,12,1, - 18,1,6,3,12,1,23,1,6,1,4,2,35,1,40,2, - 117,10,0,0,0,95,95,105,109,112,111,114,116,95,95,99, - 2,0,0,0,0,0,0,0,14,0,0,0,13,0,0,0, - 67,0,0,0,115,169,2,0,0,124,1,0,97,0,0,124, - 0,0,97,1,0,120,47,0,116,0,0,116,1,0,102,2, - 0,68,93,33,0,125,2,0,116,2,0,124,2,0,100,1, - 0,131,2,0,115,25,0,116,3,0,124,2,0,95,4,0, - 113,25,0,113,25,0,87,116,1,0,106,5,0,116,6,0, - 25,125,3,0,120,76,0,100,28,0,68,93,68,0,125,4, - 0,124,4,0,116,1,0,106,5,0,107,7,0,114,121,0, - 116,3,0,106,7,0,124,4,0,131,1,0,125,5,0,110, - 13,0,116,1,0,106,5,0,124,4,0,25,125,5,0,116, - 8,0,124,3,0,124,4,0,124,5,0,131,3,0,1,113, - 82,0,87,100,6,0,100,7,0,103,1,0,102,2,0,100, - 8,0,100,9,0,100,7,0,103,2,0,102,2,0,100,10, - 0,100,9,0,100,7,0,103,2,0,102,2,0,102,3,0, - 125,6,0,120,189,0,124,6,0,68,93,169,0,92,2,0, - 125,7,0,125,8,0,116,9,0,100,11,0,100,12,0,132, - 0,0,124,8,0,68,131,1,0,131,1,0,115,252,0,116, - 10,0,130,1,0,124,8,0,100,13,0,25,125,9,0,124, - 7,0,116,1,0,106,5,0,107,6,0,114,38,1,116,1, - 0,106,5,0,124,7,0,25,125,10,0,80,113,209,0,121, - 60,0,116,3,0,106,7,0,124,7,0,131,1,0,125,10, - 0,124,7,0,100,10,0,107,2,0,114,96,1,100,14,0, - 116,1,0,106,11,0,107,6,0,114,96,1,124,8,0,100, - 15,0,25,125,9,0,110,0,0,80,87,113,209,0,4,116, - 12,0,107,10,0,114,121,1,1,1,1,119,209,0,89,113, - 209,0,88,113,209,0,87,116,12,0,100,16,0,131,1,0, - 130,1,0,121,19,0,116,3,0,106,7,0,100,17,0,131, - 1,0,125,11,0,87,110,24,0,4,116,12,0,107,10,0, - 114,183,1,1,1,1,100,27,0,125,11,0,89,110,1,0, - 88,116,3,0,106,7,0,100,18,0,131,1,0,125,12,0, - 124,7,0,100,8,0,107,2,0,114,245,1,116,3,0,106, - 7,0,100,19,0,131,1,0,125,13,0,116,8,0,124,3, - 0,100,20,0,124,13,0,131,3,0,1,110,0,0,116,8, - 0,124,3,0,100,21,0,124,10,0,131,3,0,1,116,8, - 0,124,3,0,100,17,0,124,11,0,131,3,0,1,116,8, - 0,124,3,0,100,18,0,124,12,0,131,3,0,1,116,8, - 0,124,3,0,100,22,0,124,9,0,131,3,0,1,116,8, - 0,124,3,0,100,23,0,116,14,0,124,8,0,131,1,0, - 131,3,0,1,116,8,0,124,3,0,100,24,0,116,15,0, - 131,0,0,131,3,0,1,116,16,0,106,17,0,116,0,0, - 106,18,0,131,0,0,131,1,0,1,124,7,0,100,8,0, - 107,2,0,114,165,2,116,19,0,106,20,0,100,25,0,131, - 1,0,1,100,26,0,116,16,0,107,6,0,114,165,2,100, - 29,0,116,22,0,95,23,0,113,165,2,110,0,0,100,27, - 0,83,40,30,0,0,0,117,250,0,0,0,83,101,116,117, - 112,32,105,109,112,111,114,116,108,105,98,32,98,121,32,105, - 109,112,111,114,116,105,110,103,32,110,101,101,100,101,100,32, - 98,117,105,108,116,45,105,110,32,109,111,100,117,108,101,115, - 32,97,110,100,32,105,110,106,101,99,116,105,110,103,32,116, - 104,101,109,10,32,32,32,32,105,110,116,111,32,116,104,101, - 32,103,108,111,98,97,108,32,110,97,109,101,115,112,97,99, - 101,46,10,10,32,32,32,32,65,115,32,115,121,115,32,105, - 115,32,110,101,101,100,101,100,32,102,111,114,32,115,121,115, - 46,109,111,100,117,108,101,115,32,97,99,99,101,115,115,32, - 97,110,100,32,95,105,109,112,32,105,115,32,110,101,101,100, - 101,100,32,116,111,32,108,111,97,100,32,98,117,105,108,116, - 45,105,110,10,32,32,32,32,109,111,100,117,108,101,115,44, - 32,116,104,111,115,101,32,116,119,111,32,109,111,100,117,108, - 101,115,32,109,117,115,116,32,98,101,32,101,120,112,108,105, - 99,105,116,108,121,32,112,97,115,115,101,100,32,105,110,46, - 10,10,32,32,32,32,117,10,0,0,0,95,95,108,111,97, - 100,101,114,95,95,117,3,0,0,0,95,105,111,117,9,0, - 0,0,95,119,97,114,110,105,110,103,115,117,8,0,0,0, - 98,117,105,108,116,105,110,115,117,7,0,0,0,109,97,114, - 115,104,97,108,117,5,0,0,0,112,111,115,105,120,117,1, - 0,0,0,47,117,2,0,0,0,110,116,117,1,0,0,0, - 92,117,3,0,0,0,111,115,50,99,1,0,0,0,0,0, - 0,0,2,0,0,0,3,0,0,0,115,0,0,0,115,33, - 0,0,0,124,0,0,93,23,0,125,1,0,116,0,0,124, - 1,0,131,1,0,100,0,0,107,2,0,86,1,113,3,0, - 100,1,0,83,40,2,0,0,0,105,1,0,0,0,78,40, - 1,0,0,0,117,3,0,0,0,108,101,110,40,2,0,0, - 0,117,2,0,0,0,46,48,117,3,0,0,0,115,101,112, - 40,0,0,0,0,40,0,0,0,0,117,29,0,0,0,60, - 102,114,111,122,101,110,32,105,109,112,111,114,116,108,105,98, - 46,95,98,111,111,116,115,116,114,97,112,62,117,9,0,0, - 0,60,103,101,110,101,120,112,114,62,174,6,0,0,115,2, - 0,0,0,6,0,117,25,0,0,0,95,115,101,116,117,112, - 46,60,108,111,99,97,108,115,62,46,60,103,101,110,101,120, - 112,114,62,105,0,0,0,0,117,7,0,0,0,69,77,88, - 32,71,67,67,105,1,0,0,0,117,30,0,0,0,105,109, - 112,111,114,116,108,105,98,32,114,101,113,117,105,114,101,115, - 32,112,111,115,105,120,32,111,114,32,110,116,117,7,0,0, - 0,95,116,104,114,101,97,100,117,8,0,0,0,95,119,101, - 97,107,114,101,102,117,6,0,0,0,119,105,110,114,101,103, - 117,7,0,0,0,95,119,105,110,114,101,103,117,3,0,0, - 0,95,111,115,117,8,0,0,0,112,97,116,104,95,115,101, - 112,117,15,0,0,0,112,97,116,104,95,115,101,112,97,114, - 97,116,111,114,115,117,11,0,0,0,95,114,101,108,97,120, - 95,99,97,115,101,117,4,0,0,0,46,112,121,119,117,6, - 0,0,0,95,100,46,112,121,100,78,40,4,0,0,0,117, - 3,0,0,0,95,105,111,117,9,0,0,0,95,119,97,114, - 110,105,110,103,115,117,8,0,0,0,98,117,105,108,116,105, - 110,115,117,7,0,0,0,109,97,114,115,104,97,108,84,40, - 24,0,0,0,117,4,0,0,0,95,105,109,112,117,3,0, - 0,0,115,121,115,117,7,0,0,0,104,97,115,97,116,116, - 114,117,15,0,0,0,66,117,105,108,116,105,110,73,109,112, - 111,114,116,101,114,117,10,0,0,0,95,95,108,111,97,100, - 101,114,95,95,117,7,0,0,0,109,111,100,117,108,101,115, - 117,8,0,0,0,95,95,110,97,109,101,95,95,117,11,0, - 0,0,108,111,97,100,95,109,111,100,117,108,101,117,7,0, - 0,0,115,101,116,97,116,116,114,117,3,0,0,0,97,108, - 108,117,14,0,0,0,65,115,115,101,114,116,105,111,110,69, - 114,114,111,114,117,7,0,0,0,118,101,114,115,105,111,110, - 117,11,0,0,0,73,109,112,111,114,116,69,114,114,111,114, - 117,4,0,0,0,78,111,110,101,117,3,0,0,0,115,101, - 116,117,16,0,0,0,95,109,97,107,101,95,114,101,108,97, - 120,95,99,97,115,101,117,18,0,0,0,69,88,84,69,78, - 83,73,79,78,95,83,85,70,70,73,88,69,83,117,6,0, - 0,0,101,120,116,101,110,100,117,18,0,0,0,101,120,116, - 101,110,115,105,111,110,95,115,117,102,102,105,120,101,115,117, - 15,0,0,0,83,79,85,82,67,69,95,83,85,70,70,73, - 88,69,83,117,6,0,0,0,97,112,112,101,110,100,117,4, - 0,0,0,84,114,117,101,117,21,0,0,0,87,105,110,100, - 111,119,115,82,101,103,105,115,116,114,121,70,105,110,100,101, - 114,117,11,0,0,0,68,69,66,85,71,95,66,85,73,76, - 68,40,14,0,0,0,117,10,0,0,0,115,121,115,95,109, - 111,100,117,108,101,117,11,0,0,0,95,105,109,112,95,109, - 111,100,117,108,101,117,6,0,0,0,109,111,100,117,108,101, - 117,11,0,0,0,115,101,108,102,95,109,111,100,117,108,101, - 117,12,0,0,0,98,117,105,108,116,105,110,95,110,97,109, - 101,117,14,0,0,0,98,117,105,108,116,105,110,95,109,111, - 100,117,108,101,117,10,0,0,0,111,115,95,100,101,116,97, - 105,108,115,117,10,0,0,0,98,117,105,108,116,105,110,95, - 111,115,117,15,0,0,0,112,97,116,104,95,115,101,112,97, - 114,97,116,111,114,115,117,8,0,0,0,112,97,116,104,95, - 115,101,112,117,9,0,0,0,111,115,95,109,111,100,117,108, - 101,117,13,0,0,0,116,104,114,101,97,100,95,109,111,100, - 117,108,101,117,14,0,0,0,119,101,97,107,114,101,102,95, - 109,111,100,117,108,101,117,13,0,0,0,119,105,110,114,101, - 103,95,109,111,100,117,108,101,40,0,0,0,0,40,0,0, - 0,0,117,29,0,0,0,60,102,114,111,122,101,110,32,105, - 109,112,111,114,116,108,105,98,46,95,98,111,111,116,115,116, - 114,97,112,62,117,6,0,0,0,95,115,101,116,117,112,147, - 6,0,0,115,90,0,0,0,0,9,6,1,6,2,19,1, - 15,1,16,2,13,1,13,1,15,1,18,2,13,1,20,2, - 48,1,19,2,31,1,10,1,15,1,13,1,4,2,3,1, - 15,2,27,1,13,1,5,1,13,1,12,2,12,2,3,1, - 19,1,13,2,11,1,15,2,12,1,15,1,19,2,16,1, - 16,1,16,1,16,1,22,2,19,1,19,1,12,1,13,1, - 12,1,117,6,0,0,0,95,115,101,116,117,112,99,2,0, - 0,0,0,0,0,0,3,0,0,0,3,0,0,0,67,0, - 0,0,115,136,0,0,0,116,0,0,124,0,0,124,1,0, - 131,2,0,1,116,1,0,131,0,0,125,2,0,116,2,0, - 106,3,0,106,4,0,116,5,0,106,6,0,124,2,0,140, - 0,0,103,1,0,131,1,0,1,116,2,0,106,7,0,106, - 8,0,116,9,0,131,1,0,1,116,2,0,106,7,0,106, - 8,0,116,10,0,131,1,0,1,116,11,0,106,12,0,100, - 1,0,107,2,0,114,116,0,116,2,0,106,7,0,106,8, - 0,116,13,0,131,1,0,1,110,0,0,116,2,0,106,7, - 0,106,8,0,116,14,0,131,1,0,1,100,2,0,83,40, - 3,0,0,0,117,50,0,0,0,73,110,115,116,97,108,108, - 32,105,109,112,111,114,116,108,105,98,32,97,115,32,116,104, - 101,32,105,109,112,108,101,109,101,110,116,97,116,105,111,110, - 32,111,102,32,105,109,112,111,114,116,46,117,2,0,0,0, - 110,116,78,40,15,0,0,0,117,6,0,0,0,95,115,101, - 116,117,112,117,27,0,0,0,95,103,101,116,95,115,117,112, - 112,111,114,116,101,100,95,102,105,108,101,95,108,111,97,100, - 101,114,115,117,3,0,0,0,115,121,115,117,10,0,0,0, - 112,97,116,104,95,104,111,111,107,115,117,6,0,0,0,101, - 120,116,101,110,100,117,10,0,0,0,70,105,108,101,70,105, - 110,100,101,114,117,9,0,0,0,112,97,116,104,95,104,111, - 111,107,117,9,0,0,0,109,101,116,97,95,112,97,116,104, - 117,6,0,0,0,97,112,112,101,110,100,117,15,0,0,0, - 66,117,105,108,116,105,110,73,109,112,111,114,116,101,114,117, - 14,0,0,0,70,114,111,122,101,110,73,109,112,111,114,116, - 101,114,117,3,0,0,0,95,111,115,117,8,0,0,0,95, - 95,110,97,109,101,95,95,117,21,0,0,0,87,105,110,100, - 111,119,115,82,101,103,105,115,116,114,121,70,105,110,100,101, - 114,117,10,0,0,0,80,97,116,104,70,105,110,100,101,114, - 40,3,0,0,0,117,10,0,0,0,115,121,115,95,109,111, - 100,117,108,101,117,11,0,0,0,95,105,109,112,95,109,111, - 100,117,108,101,117,17,0,0,0,115,117,112,112,111,114,116, - 101,100,95,108,111,97,100,101,114,115,40,0,0,0,0,40, + 116,114,97,112,62,117,11,0,0,0,108,111,97,100,95,109, + 111,100,117,108,101,98,4,0,0,115,24,0,0,0,0,5, + 15,1,3,1,9,1,15,1,16,1,31,1,28,1,8,1, + 3,1,22,1,13,1,117,31,0,0,0,69,120,116,101,110, + 115,105,111,110,70,105,108,101,76,111,97,100,101,114,46,108, + 111,97,100,95,109,111,100,117,108,101,99,2,0,0,0,0, + 0,0,0,2,0,0,0,4,0,0,0,3,0,0,0,115, + 48,0,0,0,116,0,0,124,0,0,106,1,0,131,1,0, + 100,1,0,25,137,0,0,116,2,0,135,0,0,102,1,0, + 100,2,0,100,3,0,134,0,0,116,3,0,68,131,1,0, + 131,1,0,83,40,4,0,0,0,117,49,0,0,0,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,105, + 1,0,0,0,99,1,0,0,0,0,0,0,0,2,0,0, + 0,4,0,0,0,51,0,0,0,115,31,0,0,0,124,0, + 0,93,21,0,125,1,0,136,0,0,100,0,0,124,1,0, + 23,107,2,0,86,1,113,3,0,100,1,0,83,40,2,0, + 0,0,117,8,0,0,0,95,95,105,110,105,116,95,95,78, + 40,0,0,0,0,40,2,0,0,0,117,2,0,0,0,46, + 48,117,6,0,0,0,115,117,102,102,105,120,40,1,0,0, + 0,117,9,0,0,0,102,105,108,101,95,110,97,109,101,40, 0,0,0,0,117,29,0,0,0,60,102,114,111,122,101,110, 32,105,109,112,111,114,116,108,105,98,46,95,98,111,111,116, - 115,116,114,97,112,62,117,8,0,0,0,95,105,110,115,116, - 97,108,108,216,6,0,0,115,16,0,0,0,0,2,13,1, - 9,1,28,1,16,1,16,1,15,1,19,1,117,8,0,0, - 0,95,105,110,115,116,97,108,108,78,40,3,0,0,0,117, - 3,0,0,0,119,105,110,117,6,0,0,0,99,121,103,119, - 105,110,117,6,0,0,0,100,97,114,119,105,110,40,75,0, - 0,0,117,7,0,0,0,95,95,100,111,99,95,95,117,27, - 0,0,0,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,117,16, - 0,0,0,95,109,97,107,101,95,114,101,108,97,120,95,99, - 97,115,101,117,7,0,0,0,95,119,95,108,111,110,103,117, - 7,0,0,0,95,114,95,108,111,110,103,117,10,0,0,0, - 95,112,97,116,104,95,106,111,105,110,117,11,0,0,0,95, - 112,97,116,104,95,115,112,108,105,116,117,18,0,0,0,95, - 112,97,116,104,95,105,115,95,109,111,100,101,95,116,121,112, - 101,117,12,0,0,0,95,112,97,116,104,95,105,115,102,105, - 108,101,117,11,0,0,0,95,112,97,116,104,95,105,115,100, - 105,114,117,13,0,0,0,95,119,114,105,116,101,95,97,116, - 111,109,105,99,117,5,0,0,0,95,119,114,97,112,117,4, - 0,0,0,116,121,112,101,117,8,0,0,0,95,95,99,111, - 100,101,95,95,117,10,0,0,0,95,99,111,100,101,95,116, - 121,112,101,117,10,0,0,0,110,101,119,95,109,111,100,117, - 108,101,117,13,0,0,0,95,109,111,100,117,108,101,95,108, - 111,99,107,115,117,12,0,0,0,95,98,108,111,99,107,105, - 110,103,95,111,110,117,12,0,0,0,82,117,110,116,105,109, - 101,69,114,114,111,114,117,14,0,0,0,95,68,101,97,100, - 108,111,99,107,69,114,114,111,114,117,11,0,0,0,95,77, - 111,100,117,108,101,76,111,99,107,117,16,0,0,0,95,68, - 117,109,109,121,77,111,100,117,108,101,76,111,99,107,117,16, - 0,0,0,95,103,101,116,95,109,111,100,117,108,101,95,108, - 111,99,107,117,19,0,0,0,95,108,111,99,107,95,117,110, - 108,111,99,107,95,109,111,100,117,108,101,117,25,0,0,0, - 95,99,97,108,108,95,119,105,116,104,95,102,114,97,109,101, - 115,95,114,101,109,111,118,101,100,117,3,0,0,0,111,114, - 100,117,17,0,0,0,95,82,65,87,95,77,65,71,73,67, - 95,78,85,77,66,69,82,117,5,0,0,0,98,121,116,101, - 115,117,5,0,0,0,114,97,110,103,101,117,12,0,0,0, - 95,77,65,71,73,67,95,66,89,84,69,83,117,8,0,0, - 0,95,80,89,67,65,67,72,69,117,15,0,0,0,83,79, - 85,82,67,69,95,83,85,70,70,73,88,69,83,117,23,0, - 0,0,68,69,66,85,71,95,66,89,84,69,67,79,68,69, - 95,83,85,70,70,73,88,69,83,117,27,0,0,0,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,117,17,0,0,0,66,89, - 84,69,67,79,68,69,95,83,85,70,70,73,88,69,83,117, - 4,0,0,0,78,111,110,101,117,17,0,0,0,99,97,99, - 104,101,95,102,114,111,109,95,115,111,117,114,99,101,117,17, - 0,0,0,115,111,117,114,99,101,95,102,114,111,109,95,99, - 97,99,104,101,117,15,0,0,0,95,103,101,116,95,115,111, - 117,114,99,101,102,105,108,101,117,16,0,0,0,95,118,101, - 114,98,111,115,101,95,109,101,115,115,97,103,101,117,11,0, - 0,0,115,101,116,95,112,97,99,107,97,103,101,117,10,0, - 0,0,115,101,116,95,108,111,97,100,101,114,117,17,0,0, - 0,109,111,100,117,108,101,95,102,111,114,95,108,111,97,100, - 101,114,117,11,0,0,0,95,99,104,101,99,107,95,110,97, - 109,101,117,17,0,0,0,95,114,101,113,117,105,114,101,115, - 95,98,117,105,108,116,105,110,117,16,0,0,0,95,114,101, - 113,117,105,114,101,115,95,102,114,111,122,101,110,117,17,0, - 0,0,95,102,105,110,100,95,109,111,100,117,108,101,95,115, - 104,105,109,117,15,0,0,0,66,117,105,108,116,105,110,73, - 109,112,111,114,116,101,114,117,14,0,0,0,70,114,111,122, - 101,110,73,109,112,111,114,116,101,114,117,21,0,0,0,87, - 105,110,100,111,119,115,82,101,103,105,115,116,114,121,70,105, - 110,100,101,114,117,13,0,0,0,95,76,111,97,100,101,114, - 66,97,115,105,99,115,117,12,0,0,0,83,111,117,114,99, - 101,76,111,97,100,101,114,117,10,0,0,0,70,105,108,101, - 76,111,97,100,101,114,117,16,0,0,0,83,111,117,114,99, - 101,70,105,108,101,76,111,97,100,101,114,117,20,0,0,0, - 83,111,117,114,99,101,108,101,115,115,70,105,108,101,76,111, - 97,100,101,114,117,18,0,0,0,69,88,84,69,78,83,73, - 79,78,95,83,85,70,70,73,88,69,83,117,19,0,0,0, + 115,116,114,97,112,62,117,9,0,0,0,60,103,101,110,101, + 120,112,114,62,119,4,0,0,115,2,0,0,0,6,1,117, + 49,0,0,0,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,40,4,0,0,0,117,11,0,0,0,95, + 112,97,116,104,95,115,112,108,105,116,117,4,0,0,0,112, + 97,116,104,117,3,0,0,0,97,110,121,117,18,0,0,0, + 69,88,84,69,78,83,73,79,78,95,83,85,70,70,73,88, + 69,83,40,2,0,0,0,117,4,0,0,0,115,101,108,102, + 117,8,0,0,0,102,117,108,108,110,97,109,101,40,0,0, + 0,0,40,1,0,0,0,117,9,0,0,0,102,105,108,101, + 95,110,97,109,101,117,29,0,0,0,60,102,114,111,122,101, + 110,32,105,109,112,111,114,116,108,105,98,46,95,98,111,111, + 116,115,116,114,97,112,62,117,10,0,0,0,105,115,95,112, + 97,99,107,97,103,101,116,4,0,0,115,6,0,0,0,0, + 2,19,1,18,1,117,30,0,0,0,69,120,116,101,110,115, + 105,111,110,70,105,108,101,76,111,97,100,101,114,46,105,115, + 95,112,97,99,107,97,103,101,99,2,0,0,0,0,0,0, + 0,2,0,0,0,1,0,0,0,67,0,0,0,115,4,0, + 0,0,100,1,0,83,40,2,0,0,0,117,63,0,0,0, + 82,101,116,117,114,110,32,78,111,110,101,32,97,115,32,97, + 110,32,101,120,116,101,110,115,105,111,110,32,109,111,100,117, + 108,101,32,99,97,110,110,111,116,32,99,114,101,97,116,101, + 32,97,32,99,111,100,101,32,111,98,106,101,99,116,46,78, + 40,1,0,0,0,117,4,0,0,0,78,111,110,101,40,2, + 0,0,0,117,4,0,0,0,115,101,108,102,117,8,0,0, + 0,102,117,108,108,110,97,109,101,40,0,0,0,0,40,0, + 0,0,0,117,29,0,0,0,60,102,114,111,122,101,110,32, + 105,109,112,111,114,116,108,105,98,46,95,98,111,111,116,115, + 116,114,97,112,62,117,8,0,0,0,103,101,116,95,99,111, + 100,101,122,4,0,0,115,2,0,0,0,0,2,117,28,0, + 0,0,69,120,116,101,110,115,105,111,110,70,105,108,101,76, + 111,97,100,101,114,46,103,101,116,95,99,111,100,101,99,2, + 0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,67, + 0,0,0,115,4,0,0,0,100,1,0,83,40,2,0,0, + 0,117,53,0,0,0,82,101,116,117,114,110,32,78,111,110, + 101,32,97,115,32,101,120,116,101,110,115,105,111,110,32,109, + 111,100,117,108,101,115,32,104,97,118,101,32,110,111,32,115, + 111,117,114,99,101,32,99,111,100,101,46,78,40,1,0,0, + 0,117,4,0,0,0,78,111,110,101,40,2,0,0,0,117, + 4,0,0,0,115,101,108,102,117,8,0,0,0,102,117,108, + 108,110,97,109,101,40,0,0,0,0,40,0,0,0,0,117, + 29,0,0,0,60,102,114,111,122,101,110,32,105,109,112,111, + 114,116,108,105,98,46,95,98,111,111,116,115,116,114,97,112, + 62,117,10,0,0,0,103,101,116,95,115,111,117,114,99,101, + 126,4,0,0,115,2,0,0,0,0,2,117,30,0,0,0, 69,120,116,101,110,115,105,111,110,70,105,108,101,76,111,97, - 100,101,114,117,14,0,0,0,95,78,97,109,101,115,112,97, - 99,101,80,97,116,104,117,15,0,0,0,78,97,109,101,115, - 112,97,99,101,76,111,97,100,101,114,117,10,0,0,0,80, - 97,116,104,70,105,110,100,101,114,117,10,0,0,0,70,105, - 108,101,70,105,110,100,101,114,117,18,0,0,0,95,73,109, - 112,111,114,116,76,111,99,107,67,111,110,116,101,120,116,117, - 13,0,0,0,95,114,101,115,111,108,118,101,95,110,97,109, - 101,117,12,0,0,0,95,102,105,110,100,95,109,111,100,117, - 108,101,117,13,0,0,0,95,115,97,110,105,116,121,95,99, - 104,101,99,107,117,8,0,0,0,95,69,82,82,95,77,83, - 71,117,23,0,0,0,95,102,105,110,100,95,97,110,100,95, - 108,111,97,100,95,117,110,108,111,99,107,101,100,117,14,0, - 0,0,95,102,105,110,100,95,97,110,100,95,108,111,97,100, - 117,11,0,0,0,95,103,99,100,95,105,109,112,111,114,116, - 117,16,0,0,0,95,104,97,110,100,108,101,95,102,114,111, - 109,108,105,115,116,117,17,0,0,0,95,99,97,108,99,95, - 95,95,112,97,99,107,97,103,101,95,95,117,27,0,0,0, - 95,103,101,116,95,115,117,112,112,111,114,116,101,100,95,102, - 105,108,101,95,108,111,97,100,101,114,115,117,10,0,0,0, - 95,95,105,109,112,111,114,116,95,95,117,6,0,0,0,95, - 115,101,116,117,112,117,8,0,0,0,95,105,110,115,116,97, - 108,108,40,0,0,0,0,40,0,0,0,0,40,0,0,0, + 100,101,114,46,103,101,116,95,115,111,117,114,99,101,78,40, + 12,0,0,0,117,8,0,0,0,95,95,110,97,109,101,95, + 95,117,10,0,0,0,95,95,109,111,100,117,108,101,95,95, + 117,12,0,0,0,95,95,113,117,97,108,110,97,109,101,95, + 95,117,7,0,0,0,95,95,100,111,99,95,95,117,8,0, + 0,0,95,95,105,110,105,116,95,95,117,11,0,0,0,95, + 99,104,101,99,107,95,110,97,109,101,117,11,0,0,0,115, + 101,116,95,112,97,99,107,97,103,101,117,10,0,0,0,115, + 101,116,95,108,111,97,100,101,114,117,11,0,0,0,108,111, + 97,100,95,109,111,100,117,108,101,117,10,0,0,0,105,115, + 95,112,97,99,107,97,103,101,117,8,0,0,0,103,101,116, + 95,99,111,100,101,117,10,0,0,0,103,101,116,95,115,111, + 117,114,99,101,40,1,0,0,0,117,10,0,0,0,95,95, + 108,111,99,97,108,115,95,95,40,0,0,0,0,40,0,0, + 0,0,117,29,0,0,0,60,102,114,111,122,101,110,32,105, + 109,112,111,114,116,108,105,98,46,95,98,111,111,116,115,116, + 114,97,112,62,117,19,0,0,0,69,120,116,101,110,115,105, + 111,110,70,105,108,101,76,111,97,100,101,114,86,4,0,0, + 115,16,0,0,0,16,6,6,2,12,4,3,1,3,1,24, + 16,12,6,12,4,117,19,0,0,0,69,120,116,101,110,115, + 105,111,110,70,105,108,101,76,111,97,100,101,114,99,1,0, + 0,0,0,0,0,0,1,0,0,0,2,0,0,0,66,0, + 0,0,115,134,0,0,0,124,0,0,69,101,0,0,90,1, + 0,100,0,0,90,2,0,100,1,0,90,3,0,100,2,0, + 100,3,0,132,0,0,90,4,0,100,4,0,100,5,0,132, + 0,0,90,5,0,100,6,0,100,7,0,132,0,0,90,6, + 0,100,8,0,100,9,0,132,0,0,90,7,0,100,10,0, + 100,11,0,132,0,0,90,8,0,100,12,0,100,13,0,132, + 0,0,90,9,0,100,14,0,100,15,0,132,0,0,90,10, + 0,100,16,0,100,17,0,132,0,0,90,11,0,100,18,0, + 100,19,0,132,0,0,90,12,0,100,20,0,83,40,21,0, + 0,0,117,14,0,0,0,95,78,97,109,101,115,112,97,99, + 101,80,97,116,104,117,37,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,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,4,0,0,0,2,0,0,0, + 67,0,0,0,115,52,0,0,0,124,1,0,124,0,0,95, + 0,0,124,2,0,124,0,0,95,1,0,116,2,0,124,0, + 0,106,3,0,131,0,0,131,1,0,124,0,0,95,4,0, + 124,3,0,124,0,0,95,5,0,100,0,0,83,40,1,0, + 0,0,78,40,6,0,0,0,117,5,0,0,0,95,110,97, + 109,101,117,5,0,0,0,95,112,97,116,104,117,5,0,0, + 0,116,117,112,108,101,117,16,0,0,0,95,103,101,116,95, + 112,97,114,101,110,116,95,112,97,116,104,117,17,0,0,0, + 95,108,97,115,116,95,112,97,114,101,110,116,95,112,97,116, + 104,117,12,0,0,0,95,112,97,116,104,95,102,105,110,100, + 101,114,40,4,0,0,0,117,4,0,0,0,115,101,108,102, + 117,4,0,0,0,110,97,109,101,117,4,0,0,0,112,97, + 116,104,117,11,0,0,0,112,97,116,104,95,102,105,110,100, + 101,114,40,0,0,0,0,40,0,0,0,0,117,29,0,0, + 0,60,102,114,111,122,101,110,32,105,109,112,111,114,116,108, + 105,98,46,95,98,111,111,116,115,116,114,97,112,62,117,8, + 0,0,0,95,95,105,110,105,116,95,95,138,4,0,0,115, + 8,0,0,0,0,1,9,1,9,1,21,1,117,23,0,0, + 0,95,78,97,109,101,115,112,97,99,101,80,97,116,104,46, + 95,95,105,110,105,116,95,95,99,1,0,0,0,0,0,0, + 0,4,0,0,0,3,0,0,0,67,0,0,0,115,53,0, + 0,0,124,0,0,106,0,0,106,1,0,100,1,0,131,1, + 0,92,3,0,125,1,0,125,2,0,125,3,0,124,2,0, + 100,2,0,107,2,0,114,43,0,100,6,0,83,124,1,0, + 100,5,0,102,2,0,83,40,7,0,0,0,117,62,0,0, + 0,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,117, + 1,0,0,0,46,117,0,0,0,0,117,3,0,0,0,115, + 121,115,117,4,0,0,0,112,97,116,104,117,8,0,0,0, + 95,95,112,97,116,104,95,95,40,2,0,0,0,117,3,0, + 0,0,115,121,115,117,4,0,0,0,112,97,116,104,40,2, + 0,0,0,117,5,0,0,0,95,110,97,109,101,117,10,0, + 0,0,114,112,97,114,116,105,116,105,111,110,40,4,0,0, + 0,117,4,0,0,0,115,101,108,102,117,6,0,0,0,112, + 97,114,101,110,116,117,3,0,0,0,100,111,116,117,2,0, + 0,0,109,101,40,0,0,0,0,40,0,0,0,0,117,29, + 0,0,0,60,102,114,111,122,101,110,32,105,109,112,111,114, + 116,108,105,98,46,95,98,111,111,116,115,116,114,97,112,62, + 117,23,0,0,0,95,102,105,110,100,95,112,97,114,101,110, + 116,95,112,97,116,104,95,110,97,109,101,115,144,4,0,0, + 115,8,0,0,0,0,2,27,1,12,2,4,3,117,38,0, + 0,0,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,3,0,0,0,3,0,0,0,67,0,0,0,115,38,0, + 0,0,124,0,0,106,0,0,131,0,0,92,2,0,125,1, + 0,125,2,0,116,1,0,116,2,0,106,3,0,124,1,0, + 25,124,2,0,131,2,0,83,40,1,0,0,0,78,40,4, + 0,0,0,117,23,0,0,0,95,102,105,110,100,95,112,97, + 114,101,110,116,95,112,97,116,104,95,110,97,109,101,115,117, + 7,0,0,0,103,101,116,97,116,116,114,117,3,0,0,0, + 115,121,115,117,7,0,0,0,109,111,100,117,108,101,115,40, + 3,0,0,0,117,4,0,0,0,115,101,108,102,117,18,0, + 0,0,112,97,114,101,110,116,95,109,111,100,117,108,101,95, + 110,97,109,101,117,14,0,0,0,112,97,116,104,95,97,116, + 116,114,95,110,97,109,101,40,0,0,0,0,40,0,0,0, 0,117,29,0,0,0,60,102,114,111,122,101,110,32,105,109, 112,111,114,116,108,105,98,46,95,98,111,111,116,115,116,114, - 97,112,62,117,8,0,0,0,60,109,111,100,117,108,101,62, - 8,0,0,0,115,134,0,0,0,6,21,6,3,12,13,12, - 16,12,13,12,12,12,12,12,10,12,6,12,7,15,22,12, - 8,15,3,12,12,6,2,6,3,22,4,19,68,19,23,12, - 19,12,20,12,100,34,1,37,2,6,2,9,2,9,1,9, - 2,6,4,15,27,12,23,12,21,12,8,12,13,12,11,12, - 55,12,18,12,11,12,11,12,17,19,57,19,54,19,50,19, - 82,22,134,19,29,25,46,25,25,6,3,19,45,19,55,19, - 18,19,89,19,125,19,13,12,9,12,17,12,17,6,2,12, - 50,12,13,18,24,12,34,12,15,12,11,24,32,12,69, + 97,112,62,117,16,0,0,0,95,103,101,116,95,112,97,114, + 101,110,116,95,112,97,116,104,154,4,0,0,115,4,0,0, + 0,0,1,18,1,117,31,0,0,0,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,4,0,0,0,3,0,0,0,67,0,0,0,115,103, + 0,0,0,116,0,0,124,0,0,106,1,0,131,0,0,131, + 1,0,125,1,0,124,1,0,124,0,0,106,2,0,107,3, + 0,114,96,0,124,0,0,106,3,0,124,0,0,106,4,0, + 124,1,0,131,2,0,92,2,0,125,2,0,125,3,0,124, + 2,0,100,0,0,107,8,0,114,84,0,124,3,0,124,0, + 0,95,6,0,110,0,0,124,1,0,124,0,0,95,2,0, + 110,0,0,124,0,0,106,6,0,83,40,1,0,0,0,78, + 40,7,0,0,0,117,5,0,0,0,116,117,112,108,101,117, + 16,0,0,0,95,103,101,116,95,112,97,114,101,110,116,95, + 112,97,116,104,117,17,0,0,0,95,108,97,115,116,95,112, + 97,114,101,110,116,95,112,97,116,104,117,12,0,0,0,95, + 112,97,116,104,95,102,105,110,100,101,114,117,5,0,0,0, + 95,110,97,109,101,117,4,0,0,0,78,111,110,101,117,5, + 0,0,0,95,112,97,116,104,40,4,0,0,0,117,4,0, + 0,0,115,101,108,102,117,11,0,0,0,112,97,114,101,110, + 116,95,112,97,116,104,117,6,0,0,0,108,111,97,100,101, + 114,117,8,0,0,0,110,101,119,95,112,97,116,104,40,0, + 0,0,0,40,0,0,0,0,117,29,0,0,0,60,102,114, + 111,122,101,110,32,105,109,112,111,114,116,108,105,98,46,95, + 98,111,111,116,115,116,114,97,112,62,117,12,0,0,0,95, + 114,101,99,97,108,99,117,108,97,116,101,158,4,0,0,115, + 14,0,0,0,0,2,18,1,15,1,27,3,12,1,12,1, + 12,1,117,27,0,0,0,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,1,0,0,0,2, + 0,0,0,67,0,0,0,115,16,0,0,0,116,0,0,124, + 0,0,106,1,0,131,0,0,131,1,0,83,40,1,0,0, + 0,78,40,2,0,0,0,117,4,0,0,0,105,116,101,114, + 117,12,0,0,0,95,114,101,99,97,108,99,117,108,97,116, + 101,40,1,0,0,0,117,4,0,0,0,115,101,108,102,40, + 0,0,0,0,40,0,0,0,0,117,29,0,0,0,60,102, + 114,111,122,101,110,32,105,109,112,111,114,116,108,105,98,46, + 95,98,111,111,116,115,116,114,97,112,62,117,8,0,0,0, + 95,95,105,116,101,114,95,95,170,4,0,0,115,2,0,0, + 0,0,1,117,23,0,0,0,95,78,97,109,101,115,112,97, + 99,101,80,97,116,104,46,95,95,105,116,101,114,95,95,99, + 1,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0, + 67,0,0,0,115,16,0,0,0,116,0,0,124,0,0,106, + 1,0,131,0,0,131,1,0,83,40,1,0,0,0,78,40, + 2,0,0,0,117,3,0,0,0,108,101,110,117,12,0,0, + 0,95,114,101,99,97,108,99,117,108,97,116,101,40,1,0, + 0,0,117,4,0,0,0,115,101,108,102,40,0,0,0,0, + 40,0,0,0,0,117,29,0,0,0,60,102,114,111,122,101, + 110,32,105,109,112,111,114,116,108,105,98,46,95,98,111,111, + 116,115,116,114,97,112,62,117,7,0,0,0,95,95,108,101, + 110,95,95,173,4,0,0,115,2,0,0,0,0,1,117,22, + 0,0,0,95,78,97,109,101,115,112,97,99,101,80,97,116, + 104,46,95,95,108,101,110,95,95,99,1,0,0,0,0,0, + 0,0,1,0,0,0,2,0,0,0,67,0,0,0,115,16, + 0,0,0,100,1,0,106,0,0,124,0,0,106,1,0,131, + 1,0,83,40,2,0,0,0,78,117,20,0,0,0,95,78, + 97,109,101,115,112,97,99,101,80,97,116,104,40,123,33,114, + 125,41,40,2,0,0,0,117,6,0,0,0,102,111,114,109, + 97,116,117,5,0,0,0,95,112,97,116,104,40,1,0,0, + 0,117,4,0,0,0,115,101,108,102,40,0,0,0,0,40, + 0,0,0,0,117,29,0,0,0,60,102,114,111,122,101,110, + 32,105,109,112,111,114,116,108,105,98,46,95,98,111,111,116, + 115,116,114,97,112,62,117,8,0,0,0,95,95,114,101,112, + 114,95,95,176,4,0,0,115,2,0,0,0,0,1,117,23, + 0,0,0,95,78,97,109,101,115,112,97,99,101,80,97,116, + 104,46,95,95,114,101,112,114,95,95,99,2,0,0,0,0, + 0,0,0,2,0,0,0,2,0,0,0,67,0,0,0,115, + 16,0,0,0,124,1,0,124,0,0,106,0,0,131,0,0, + 107,6,0,83,40,1,0,0,0,78,40,1,0,0,0,117, + 12,0,0,0,95,114,101,99,97,108,99,117,108,97,116,101, + 40,2,0,0,0,117,4,0,0,0,115,101,108,102,117,4, + 0,0,0,105,116,101,109,40,0,0,0,0,40,0,0,0, + 0,117,29,0,0,0,60,102,114,111,122,101,110,32,105,109, + 112,111,114,116,108,105,98,46,95,98,111,111,116,115,116,114, + 97,112,62,117,12,0,0,0,95,95,99,111,110,116,97,105, + 110,115,95,95,179,4,0,0,115,2,0,0,0,0,1,117, + 27,0,0,0,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,2,0,0,0,2,0,0,0, + 67,0,0,0,115,20,0,0,0,124,0,0,106,0,0,106, + 1,0,124,1,0,131,1,0,1,100,0,0,83,40,1,0, + 0,0,78,40,2,0,0,0,117,5,0,0,0,95,112,97, + 116,104,117,6,0,0,0,97,112,112,101,110,100,40,2,0, + 0,0,117,4,0,0,0,115,101,108,102,117,4,0,0,0, + 105,116,101,109,40,0,0,0,0,40,0,0,0,0,117,29, + 0,0,0,60,102,114,111,122,101,110,32,105,109,112,111,114, + 116,108,105,98,46,95,98,111,111,116,115,116,114,97,112,62, + 117,6,0,0,0,97,112,112,101,110,100,182,4,0,0,115, + 2,0,0,0,0,1,117,21,0,0,0,95,78,97,109,101, + 115,112,97,99,101,80,97,116,104,46,97,112,112,101,110,100, + 78,40,13,0,0,0,117,8,0,0,0,95,95,110,97,109, + 101,95,95,117,10,0,0,0,95,95,109,111,100,117,108,101, + 95,95,117,12,0,0,0,95,95,113,117,97,108,110,97,109, + 101,95,95,117,7,0,0,0,95,95,100,111,99,95,95,117, + 8,0,0,0,95,95,105,110,105,116,95,95,117,23,0,0, + 0,95,102,105,110,100,95,112,97,114,101,110,116,95,112,97, + 116,104,95,110,97,109,101,115,117,16,0,0,0,95,103,101, + 116,95,112,97,114,101,110,116,95,112,97,116,104,117,12,0, + 0,0,95,114,101,99,97,108,99,117,108,97,116,101,117,8, + 0,0,0,95,95,105,116,101,114,95,95,117,7,0,0,0, + 95,95,108,101,110,95,95,117,8,0,0,0,95,95,114,101, + 112,114,95,95,117,12,0,0,0,95,95,99,111,110,116,97, + 105,110,115,95,95,117,6,0,0,0,97,112,112,101,110,100, + 40,1,0,0,0,117,10,0,0,0,95,95,108,111,99,97, + 108,115,95,95,40,0,0,0,0,40,0,0,0,0,117,29, + 0,0,0,60,102,114,111,122,101,110,32,105,109,112,111,114, + 116,108,105,98,46,95,98,111,111,116,115,116,114,97,112,62, + 117,14,0,0,0,95,78,97,109,101,115,112,97,99,101,80, + 97,116,104,131,4,0,0,115,20,0,0,0,16,5,6,2, + 12,6,12,10,12,4,12,12,12,3,12,3,12,3,12,3, + 117,14,0,0,0,95,78,97,109,101,115,112,97,99,101,80, + 97,116,104,99,1,0,0,0,0,0,0,0,1,0,0,0, + 3,0,0,0,66,0,0,0,115,68,0,0,0,124,0,0, + 69,101,0,0,90,1,0,100,0,0,90,2,0,100,1,0, + 100,2,0,132,0,0,90,3,0,101,4,0,100,3,0,100, + 4,0,132,0,0,131,1,0,90,5,0,101,6,0,100,5, + 0,100,6,0,132,0,0,131,1,0,90,7,0,100,7,0, + 83,40,8,0,0,0,117,15,0,0,0,78,97,109,101,115, + 112,97,99,101,76,111,97,100,101,114,99,4,0,0,0,0, + 0,0,0,4,0,0,0,4,0,0,0,67,0,0,0,115, + 25,0,0,0,116,0,0,124,1,0,124,2,0,124,3,0, + 131,3,0,124,0,0,95,1,0,100,0,0,83,40,1,0, + 0,0,78,40,2,0,0,0,117,14,0,0,0,95,78,97, + 109,101,115,112,97,99,101,80,97,116,104,117,5,0,0,0, + 95,112,97,116,104,40,4,0,0,0,117,4,0,0,0,115, + 101,108,102,117,4,0,0,0,110,97,109,101,117,4,0,0, + 0,112,97,116,104,117,11,0,0,0,112,97,116,104,95,102, + 105,110,100,101,114,40,0,0,0,0,40,0,0,0,0,117, + 29,0,0,0,60,102,114,111,122,101,110,32,105,109,112,111, + 114,116,108,105,98,46,95,98,111,111,116,115,116,114,97,112, + 62,117,8,0,0,0,95,95,105,110,105,116,95,95,187,4, + 0,0,115,2,0,0,0,0,1,117,24,0,0,0,78,97, + 109,101,115,112,97,99,101,76,111,97,100,101,114,46,95,95, + 105,110,105,116,95,95,99,2,0,0,0,0,0,0,0,2, + 0,0,0,2,0,0,0,67,0,0,0,115,16,0,0,0, + 100,1,0,106,0,0,124,1,0,106,1,0,131,1,0,83, + 40,2,0,0,0,78,117,25,0,0,0,60,109,111,100,117, + 108,101,32,39,123,125,39,32,40,110,97,109,101,115,112,97, + 99,101,41,62,40,2,0,0,0,117,6,0,0,0,102,111, + 114,109,97,116,117,8,0,0,0,95,95,110,97,109,101,95, + 95,40,2,0,0,0,117,3,0,0,0,99,108,115,117,6, + 0,0,0,109,111,100,117,108,101,40,0,0,0,0,40,0, + 0,0,0,117,29,0,0,0,60,102,114,111,122,101,110,32, + 105,109,112,111,114,116,108,105,98,46,95,98,111,111,116,115, + 116,114,97,112,62,117,11,0,0,0,109,111,100,117,108,101, + 95,114,101,112,114,190,4,0,0,115,2,0,0,0,0,2, + 117,27,0,0,0,78,97,109,101,115,112,97,99,101,76,111, + 97,100,101,114,46,109,111,100,117,108,101,95,114,101,112,114, + 99,2,0,0,0,0,0,0,0,2,0,0,0,3,0,0, + 0,67,0,0,0,115,32,0,0,0,116,0,0,100,1,0, + 124,0,0,106,1,0,131,2,0,1,124,0,0,106,1,0, + 124,1,0,95,2,0,124,1,0,83,40,2,0,0,0,117, + 24,0,0,0,76,111,97,100,32,97,32,110,97,109,101,115, + 112,97,99,101,32,109,111,100,117,108,101,46,117,38,0,0, + 0,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,40,3,0,0,0,117,16,0,0, + 0,95,118,101,114,98,111,115,101,95,109,101,115,115,97,103, + 101,117,5,0,0,0,95,112,97,116,104,117,8,0,0,0, + 95,95,112,97,116,104,95,95,40,2,0,0,0,117,4,0, + 0,0,115,101,108,102,117,6,0,0,0,109,111,100,117,108, + 101,40,0,0,0,0,40,0,0,0,0,117,29,0,0,0, + 60,102,114,111,122,101,110,32,105,109,112,111,114,116,108,105, + 98,46,95,98,111,111,116,115,116,114,97,112,62,117,11,0, + 0,0,108,111,97,100,95,109,111,100,117,108,101,194,4,0, + 0,115,6,0,0,0,0,3,16,1,12,1,117,27,0,0, + 0,78,97,109,101,115,112,97,99,101,76,111,97,100,101,114, + 46,108,111,97,100,95,109,111,100,117,108,101,78,40,8,0, + 0,0,117,8,0,0,0,95,95,110,97,109,101,95,95,117, + 10,0,0,0,95,95,109,111,100,117,108,101,95,95,117,12, + 0,0,0,95,95,113,117,97,108,110,97,109,101,95,95,117, + 8,0,0,0,95,95,105,110,105,116,95,95,117,11,0,0, + 0,99,108,97,115,115,109,101,116,104,111,100,117,11,0,0, + 0,109,111,100,117,108,101,95,114,101,112,114,117,17,0,0, + 0,109,111,100,117,108,101,95,102,111,114,95,108,111,97,100, + 101,114,117,11,0,0,0,108,111,97,100,95,109,111,100,117, + 108,101,40,1,0,0,0,117,10,0,0,0,95,95,108,111, + 99,97,108,115,95,95,40,0,0,0,0,40,0,0,0,0, + 117,29,0,0,0,60,102,114,111,122,101,110,32,105,109,112, + 111,114,116,108,105,98,46,95,98,111,111,116,115,116,114,97, + 112,62,117,15,0,0,0,78,97,109,101,115,112,97,99,101, + 76,111,97,100,101,114,186,4,0,0,115,6,0,0,0,16, + 1,12,3,18,4,117,15,0,0,0,78,97,109,101,115,112, + 97,99,101,76,111,97,100,101,114,99,1,0,0,0,0,0, + 0,0,1,0,0,0,4,0,0,0,66,0,0,0,115,119, + 0,0,0,124,0,0,69,101,0,0,90,1,0,100,0,0, + 90,2,0,100,1,0,90,3,0,101,4,0,100,2,0,100, + 3,0,132,0,0,131,1,0,90,5,0,101,4,0,100,4, + 0,100,5,0,132,0,0,131,1,0,90,6,0,101,4,0, + 100,6,0,100,7,0,132,0,0,131,1,0,90,7,0,101, + 4,0,100,8,0,100,9,0,132,0,0,131,1,0,90,8, + 0,101,4,0,100,12,0,100,10,0,100,11,0,132,1,0, + 131,1,0,90,10,0,100,12,0,83,40,13,0,0,0,117, + 10,0,0,0,80,97,116,104,70,105,110,100,101,114,117,62, + 0,0,0,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,1,0,0,0,0,0,0,0,2,0,0,0,4,0, + 0,0,67,0,0,0,115,58,0,0,0,120,51,0,116,0, + 0,106,1,0,106,2,0,131,0,0,68,93,34,0,125,1, + 0,116,3,0,124,1,0,100,1,0,131,2,0,114,16,0, + 124,1,0,106,4,0,131,0,0,1,113,16,0,113,16,0, + 87,100,2,0,83,40,3,0,0,0,117,125,0,0,0,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,117,17,0,0, + 0,105,110,118,97,108,105,100,97,116,101,95,99,97,99,104, + 101,115,78,40,5,0,0,0,117,3,0,0,0,115,121,115, + 117,19,0,0,0,112,97,116,104,95,105,109,112,111,114,116, + 101,114,95,99,97,99,104,101,117,6,0,0,0,118,97,108, + 117,101,115,117,7,0,0,0,104,97,115,97,116,116,114,117, + 17,0,0,0,105,110,118,97,108,105,100,97,116,101,95,99, + 97,99,104,101,115,40,2,0,0,0,117,3,0,0,0,99, + 108,115,117,6,0,0,0,102,105,110,100,101,114,40,0,0, + 0,0,40,0,0,0,0,117,29,0,0,0,60,102,114,111, + 122,101,110,32,105,109,112,111,114,116,108,105,98,46,95,98, + 111,111,116,115,116,114,97,112,62,117,17,0,0,0,105,110, + 118,97,108,105,100,97,116,101,95,99,97,99,104,101,115,208, + 4,0,0,115,6,0,0,0,0,4,22,1,15,1,117,28, + 0,0,0,80,97,116,104,70,105,110,100,101,114,46,105,110, + 118,97,108,105,100,97,116,101,95,99,97,99,104,101,115,99, + 2,0,0,0,0,0,0,0,3,0,0,0,12,0,0,0, + 67,0,0,0,115,94,0,0,0,116,0,0,106,1,0,115, + 28,0,116,2,0,106,3,0,100,1,0,116,4,0,131,2, + 0,1,110,0,0,120,59,0,116,0,0,106,1,0,68,93, + 44,0,125,2,0,121,14,0,124,2,0,124,1,0,131,1, + 0,83,87,113,38,0,4,116,5,0,107,10,0,114,81,0, + 1,1,1,119,38,0,89,113,38,0,88,113,38,0,87,100, + 2,0,83,100,2,0,83,40,3,0,0,0,117,113,0,0, + 0,83,101,97,114,99,104,32,115,101,113,117,101,110,99,101, + 32,111,102,32,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,10,10,32,32,32,32,32,32,32,32,73,102,32,39, + 104,111,111,107,115,39,32,105,115,32,102,97,108,115,101,32, + 116,104,101,110,32,117,115,101,32,115,121,115,46,112,97,116, + 104,95,104,111,111,107,115,46,10,10,32,32,32,32,32,32, + 32,32,117,23,0,0,0,115,121,115,46,112,97,116,104,95, + 104,111,111,107,115,32,105,115,32,101,109,112,116,121,78,40, + 7,0,0,0,117,3,0,0,0,115,121,115,117,10,0,0, + 0,112,97,116,104,95,104,111,111,107,115,117,9,0,0,0, + 95,119,97,114,110,105,110,103,115,117,4,0,0,0,119,97, + 114,110,117,13,0,0,0,73,109,112,111,114,116,87,97,114, + 110,105,110,103,117,11,0,0,0,73,109,112,111,114,116,69, + 114,114,111,114,117,4,0,0,0,78,111,110,101,40,3,0, + 0,0,117,3,0,0,0,99,108,115,117,4,0,0,0,112, + 97,116,104,117,4,0,0,0,104,111,111,107,40,0,0,0, + 0,40,0,0,0,0,117,29,0,0,0,60,102,114,111,122, + 101,110,32,105,109,112,111,114,116,108,105,98,46,95,98,111, + 111,116,115,116,114,97,112,62,117,11,0,0,0,95,112,97, + 116,104,95,104,111,111,107,115,216,4,0,0,115,16,0,0, + 0,0,7,9,1,19,1,16,1,3,1,14,1,13,1,12, + 2,117,22,0,0,0,80,97,116,104,70,105,110,100,101,114, + 46,95,112,97,116,104,95,104,111,111,107,115,99,2,0,0, + 0,0,0,0,0,3,0,0,0,11,0,0,0,67,0,0, + 0,115,91,0,0,0,124,1,0,100,1,0,107,2,0,114, + 21,0,100,2,0,125,1,0,110,0,0,121,17,0,116,0, + 0,106,1,0,124,1,0,25,125,2,0,87,110,46,0,4, + 116,2,0,107,10,0,114,86,0,1,1,1,124,0,0,106, + 3,0,124,1,0,131,1,0,125,2,0,124,2,0,116,0, + 0,106,1,0,124,1,0,60,89,110,1,0,88,124,2,0, + 83,40,3,0,0,0,117,210,0,0,0,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,117,0,0, + 0,0,117,1,0,0,0,46,40,4,0,0,0,117,3,0, + 0,0,115,121,115,117,19,0,0,0,112,97,116,104,95,105, + 109,112,111,114,116,101,114,95,99,97,99,104,101,117,8,0, + 0,0,75,101,121,69,114,114,111,114,117,11,0,0,0,95, + 112,97,116,104,95,104,111,111,107,115,40,3,0,0,0,117, + 3,0,0,0,99,108,115,117,4,0,0,0,112,97,116,104, + 117,6,0,0,0,102,105,110,100,101,114,40,0,0,0,0, + 40,0,0,0,0,117,29,0,0,0,60,102,114,111,122,101, + 110,32,105,109,112,111,114,116,108,105,98,46,95,98,111,111, + 116,115,116,114,97,112,62,117,20,0,0,0,95,112,97,116, + 104,95,105,109,112,111,114,116,101,114,95,99,97,99,104,101, + 233,4,0,0,115,16,0,0,0,0,8,12,1,9,1,3, + 1,17,1,13,1,15,1,18,1,117,31,0,0,0,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,8,0,0,0,4,0,0,0,67,0, + 0,0,115,162,0,0,0,103,0,0,125,3,0,120,149,0, + 124,2,0,68,93,131,0,125,4,0,124,0,0,106,0,0, + 124,4,0,131,1,0,125,5,0,124,5,0,100,2,0,107, + 9,0,114,13,0,116,2,0,124,5,0,100,1,0,131,2, + 0,114,85,0,124,5,0,106,3,0,124,1,0,131,1,0, + 92,2,0,125,6,0,125,7,0,110,21,0,124,5,0,106, + 4,0,124,1,0,131,1,0,125,6,0,103,0,0,125,7, + 0,124,6,0,100,2,0,107,9,0,114,128,0,124,6,0, + 124,3,0,102,2,0,83,124,3,0,106,5,0,124,7,0, + 131,1,0,1,113,13,0,113,13,0,87,100,2,0,124,3, + 0,102,2,0,83,100,2,0,83,40,3,0,0,0,117,63, + 0,0,0,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,117,11,0,0,0,102,105,110,100,95,108,111,97,100, + 101,114,78,40,6,0,0,0,117,20,0,0,0,95,112,97, + 116,104,95,105,109,112,111,114,116,101,114,95,99,97,99,104, + 101,117,4,0,0,0,78,111,110,101,117,7,0,0,0,104, + 97,115,97,116,116,114,117,11,0,0,0,102,105,110,100,95, + 108,111,97,100,101,114,117,11,0,0,0,102,105,110,100,95, + 109,111,100,117,108,101,117,6,0,0,0,101,120,116,101,110, + 100,40,8,0,0,0,117,3,0,0,0,99,108,115,117,8, + 0,0,0,102,117,108,108,110,97,109,101,117,4,0,0,0, + 112,97,116,104,117,14,0,0,0,110,97,109,101,115,112,97, + 99,101,95,112,97,116,104,117,5,0,0,0,101,110,116,114, + 121,117,6,0,0,0,102,105,110,100,101,114,117,6,0,0, + 0,108,111,97,100,101,114,117,8,0,0,0,112,111,114,116, + 105,111,110,115,40,0,0,0,0,40,0,0,0,0,117,29, + 0,0,0,60,102,114,111,122,101,110,32,105,109,112,111,114, + 116,108,105,98,46,95,98,111,111,116,115,116,114,97,112,62, + 117,11,0,0,0,95,103,101,116,95,108,111,97,100,101,114, + 250,4,0,0,115,24,0,0,0,0,5,6,1,13,1,15, + 1,12,1,15,1,24,2,15,1,6,1,12,2,10,5,20, + 2,117,22,0,0,0,80,97,116,104,70,105,110,100,101,114, + 46,95,103,101,116,95,108,111,97,100,101,114,99,3,0,0, + 0,0,0,0,0,5,0,0,0,4,0,0,0,67,0,0, + 0,115,97,0,0,0,124,2,0,100,1,0,107,8,0,114, + 24,0,116,1,0,106,2,0,125,2,0,110,0,0,124,0, + 0,106,3,0,124,1,0,124,2,0,131,2,0,92,2,0, + 125,3,0,125,4,0,124,3,0,100,1,0,107,9,0,114, + 64,0,124,3,0,83,124,4,0,114,89,0,116,4,0,124, + 1,0,124,4,0,124,0,0,106,3,0,131,3,0,83,100, + 1,0,83,100,1,0,83,40,2,0,0,0,117,98,0,0, + 0,70,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,78,40,5,0,0,0,117,4,0,0,0,78,111, + 110,101,117,3,0,0,0,115,121,115,117,4,0,0,0,112, + 97,116,104,117,11,0,0,0,95,103,101,116,95,108,111,97, + 100,101,114,117,15,0,0,0,78,97,109,101,115,112,97,99, + 101,76,111,97,100,101,114,40,5,0,0,0,117,3,0,0, + 0,99,108,115,117,8,0,0,0,102,117,108,108,110,97,109, + 101,117,4,0,0,0,112,97,116,104,117,6,0,0,0,108, + 111,97,100,101,114,117,14,0,0,0,110,97,109,101,115,112, + 97,99,101,95,112,97,116,104,40,0,0,0,0,40,0,0, + 0,0,117,29,0,0,0,60,102,114,111,122,101,110,32,105, + 109,112,111,114,116,108,105,98,46,95,98,111,111,116,115,116, + 114,97,112,62,117,11,0,0,0,102,105,110,100,95,109,111, + 100,117,108,101,19,5,0,0,115,16,0,0,0,0,4,12, + 1,12,1,24,1,12,1,4,2,6,3,19,2,117,22,0, + 0,0,80,97,116,104,70,105,110,100,101,114,46,102,105,110, + 100,95,109,111,100,117,108,101,78,40,11,0,0,0,117,8, + 0,0,0,95,95,110,97,109,101,95,95,117,10,0,0,0, + 95,95,109,111,100,117,108,101,95,95,117,12,0,0,0,95, + 95,113,117,97,108,110,97,109,101,95,95,117,7,0,0,0, + 95,95,100,111,99,95,95,117,11,0,0,0,99,108,97,115, + 115,109,101,116,104,111,100,117,17,0,0,0,105,110,118,97, + 108,105,100,97,116,101,95,99,97,99,104,101,115,117,11,0, + 0,0,95,112,97,116,104,95,104,111,111,107,115,117,20,0, + 0,0,95,112,97,116,104,95,105,109,112,111,114,116,101,114, + 95,99,97,99,104,101,117,11,0,0,0,95,103,101,116,95, + 108,111,97,100,101,114,117,4,0,0,0,78,111,110,101,117, + 11,0,0,0,102,105,110,100,95,109,111,100,117,108,101,40, + 1,0,0,0,117,10,0,0,0,95,95,108,111,99,97,108, + 115,95,95,40,0,0,0,0,40,0,0,0,0,117,29,0, + 0,0,60,102,114,111,122,101,110,32,105,109,112,111,114,116, + 108,105,98,46,95,98,111,111,116,115,116,114,97,112,62,117, + 10,0,0,0,80,97,116,104,70,105,110,100,101,114,204,4, + 0,0,115,14,0,0,0,16,2,6,2,18,8,18,17,18, + 17,18,25,3,1,117,10,0,0,0,80,97,116,104,70,105, + 110,100,101,114,99,1,0,0,0,0,0,0,0,1,0,0, + 0,3,0,0,0,66,0,0,0,115,110,0,0,0,124,0, + 0,69,101,0,0,90,1,0,100,0,0,90,2,0,100,1, + 0,90,3,0,100,2,0,100,3,0,132,0,0,90,4,0, + 100,4,0,100,5,0,132,0,0,90,5,0,101,6,0,90, + 7,0,100,6,0,100,7,0,132,0,0,90,8,0,100,8, + 0,100,9,0,132,0,0,90,9,0,101,10,0,100,10,0, + 100,11,0,132,0,0,131,1,0,90,11,0,100,12,0,100, + 13,0,132,0,0,90,12,0,100,14,0,83,40,15,0,0, + 0,117,10,0,0,0,70,105,108,101,70,105,110,100,101,114, + 117,172,0,0,0,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,5,0,0,0,5,0, + 0,0,7,0,0,0,115,122,0,0,0,103,0,0,125,3, + 0,120,52,0,124,2,0,68,93,44,0,92,2,0,137,0, + 0,125,4,0,124,3,0,106,0,0,135,0,0,102,1,0, + 100,1,0,100,2,0,134,0,0,124,4,0,68,131,1,0, + 131,1,0,1,113,13,0,87,124,3,0,124,0,0,95,1, + 0,124,1,0,112,79,0,100,3,0,124,0,0,95,2,0, + 100,6,0,124,0,0,95,3,0,116,4,0,131,0,0,124, + 0,0,95,5,0,116,4,0,131,0,0,124,0,0,95,6, + 0,100,5,0,83,40,7,0,0,0,117,201,0,0,0,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,51,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,44,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,32,114, + 101,99,111,103,110,105,122,101,115,44,10,32,32,32,32,32, + 32,32,32,97,110,100,32,97,32,98,111,111,108,101,97,110, + 32,111,102,32,119,104,101,116,104,101,114,32,116,104,101,32, + 108,111,97,100,101,114,32,104,97,110,100,108,101,115,32,112, + 97,99,107,97,103,101,115,46,99,1,0,0,0,0,0,0, + 0,2,0,0,0,3,0,0,0,51,0,0,0,115,27,0, + 0,0,124,0,0,93,17,0,125,1,0,124,1,0,136,0, + 0,102,2,0,86,1,113,3,0,100,0,0,83,40,1,0, + 0,0,78,40,0,0,0,0,40,2,0,0,0,117,2,0, + 0,0,46,48,117,6,0,0,0,115,117,102,102,105,120,40, + 1,0,0,0,117,6,0,0,0,108,111,97,100,101,114,40, + 0,0,0,0,117,29,0,0,0,60,102,114,111,122,101,110, + 32,105,109,112,111,114,116,108,105,98,46,95,98,111,111,116, + 115,116,114,97,112,62,117,9,0,0,0,60,103,101,110,101, + 120,112,114,62,52,5,0,0,115,2,0,0,0,6,0,117, + 38,0,0,0,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,117,1,0,0,0,46, + 105,1,0,0,0,78,105,255,255,255,255,40,7,0,0,0, + 117,6,0,0,0,101,120,116,101,110,100,117,8,0,0,0, + 95,108,111,97,100,101,114,115,117,4,0,0,0,112,97,116, + 104,117,11,0,0,0,95,112,97,116,104,95,109,116,105,109, + 101,117,3,0,0,0,115,101,116,117,11,0,0,0,95,112, + 97,116,104,95,99,97,99,104,101,117,19,0,0,0,95,114, + 101,108,97,120,101,100,95,112,97,116,104,95,99,97,99,104, + 101,40,5,0,0,0,117,4,0,0,0,115,101,108,102,117, + 4,0,0,0,112,97,116,104,117,7,0,0,0,100,101,116, + 97,105,108,115,117,7,0,0,0,108,111,97,100,101,114,115, + 117,8,0,0,0,115,117,102,102,105,120,101,115,40,0,0, + 0,0,40,1,0,0,0,117,6,0,0,0,108,111,97,100, + 101,114,117,29,0,0,0,60,102,114,111,122,101,110,32,105, + 109,112,111,114,116,108,105,98,46,95,98,111,111,116,115,116, + 114,97,112,62,117,8,0,0,0,95,95,105,110,105,116,95, + 95,46,5,0,0,115,16,0,0,0,0,4,6,1,19,1, + 36,1,9,2,15,1,9,1,12,1,117,19,0,0,0,70, + 105,108,101,70,105,110,100,101,114,46,95,95,105,110,105,116, + 95,95,99,1,0,0,0,0,0,0,0,1,0,0,0,2, + 0,0,0,67,0,0,0,115,13,0,0,0,100,3,0,124, + 0,0,95,0,0,100,2,0,83,40,4,0,0,0,117,31, + 0,0,0,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,105,1,0,0,0,78,105,255,255,255,255,40,1,0, + 0,0,117,11,0,0,0,95,112,97,116,104,95,109,116,105, + 109,101,40,1,0,0,0,117,4,0,0,0,115,101,108,102, + 40,0,0,0,0,40,0,0,0,0,117,29,0,0,0,60, + 102,114,111,122,101,110,32,105,109,112,111,114,116,108,105,98, + 46,95,98,111,111,116,115,116,114,97,112,62,117,17,0,0, + 0,105,110,118,97,108,105,100,97,116,101,95,99,97,99,104, + 101,115,60,5,0,0,115,2,0,0,0,0,2,117,28,0, + 0,0,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,12,0,0,0,13,0,0,0,67, + 0,0,0,115,172,1,0,0,100,5,0,125,2,0,124,1, + 0,106,1,0,100,1,0,131,1,0,100,2,0,25,125,3, + 0,121,25,0,116,2,0,106,3,0,124,0,0,106,4,0, + 131,1,0,106,5,0,125,4,0,87,110,24,0,4,116,6, + 0,107,10,0,114,76,0,1,1,1,100,6,0,125,4,0, + 89,110,1,0,88,124,4,0,124,0,0,106,7,0,107,3, + 0,114,114,0,124,0,0,106,8,0,131,0,0,1,124,4, + 0,124,0,0,95,7,0,110,0,0,116,9,0,131,0,0, + 114,147,0,124,0,0,106,10,0,125,5,0,124,3,0,106, + 11,0,131,0,0,125,6,0,110,15,0,124,0,0,106,12, + 0,125,5,0,124,3,0,125,6,0,124,6,0,124,5,0, + 107,6,0,114,45,1,116,13,0,124,0,0,106,4,0,124, + 3,0,131,2,0,125,7,0,116,14,0,124,7,0,131,1, + 0,114,45,1,120,91,0,124,0,0,106,15,0,68,93,71, + 0,92,2,0,125,8,0,125,9,0,100,4,0,124,8,0, + 23,125,10,0,116,13,0,124,7,0,124,10,0,131,2,0, + 125,11,0,116,16,0,124,11,0,131,1,0,114,214,0,124, + 9,0,124,1,0,124,11,0,131,2,0,124,7,0,103,1, + 0,102,2,0,83,113,214,0,87,100,7,0,125,2,0,113, + 45,1,110,0,0,120,95,0,124,0,0,106,15,0,68,93, + 84,0,92,2,0,125,8,0,125,9,0,124,6,0,124,8, + 0,23,124,5,0,107,6,0,114,55,1,116,13,0,124,0, + 0,106,4,0,124,3,0,124,8,0,23,131,2,0,125,11, + 0,116,16,0,124,11,0,131,1,0,114,139,1,124,9,0, + 124,1,0,124,11,0,131,2,0,103,0,0,102,2,0,83, + 113,55,1,113,55,1,87,124,2,0,114,162,1,100,8,0, + 124,7,0,103,1,0,102,2,0,83,100,8,0,103,0,0, + 102,2,0,83,40,9,0,0,0,117,125,0,0,0,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,117,1,0,0,0, + 46,105,2,0,0,0,105,1,0,0,0,117,8,0,0,0, + 95,95,105,110,105,116,95,95,70,105,255,255,255,255,84,78, + 40,19,0,0,0,117,5,0,0,0,70,97,108,115,101,117, + 10,0,0,0,114,112,97,114,116,105,116,105,111,110,117,3, + 0,0,0,95,111,115,117,4,0,0,0,115,116,97,116,117, + 4,0,0,0,112,97,116,104,117,8,0,0,0,115,116,95, + 109,116,105,109,101,117,7,0,0,0,79,83,69,114,114,111, + 114,117,11,0,0,0,95,112,97,116,104,95,109,116,105,109, + 101,117,11,0,0,0,95,102,105,108,108,95,99,97,99,104, + 101,117,11,0,0,0,95,114,101,108,97,120,95,99,97,115, + 101,117,19,0,0,0,95,114,101,108,97,120,101,100,95,112, + 97,116,104,95,99,97,99,104,101,117,5,0,0,0,108,111, + 119,101,114,117,11,0,0,0,95,112,97,116,104,95,99,97, + 99,104,101,117,10,0,0,0,95,112,97,116,104,95,106,111, + 105,110,117,11,0,0,0,95,112,97,116,104,95,105,115,100, + 105,114,117,8,0,0,0,95,108,111,97,100,101,114,115,117, + 12,0,0,0,95,112,97,116,104,95,105,115,102,105,108,101, + 117,4,0,0,0,84,114,117,101,117,4,0,0,0,78,111, + 110,101,40,12,0,0,0,117,4,0,0,0,115,101,108,102, + 117,8,0,0,0,102,117,108,108,110,97,109,101,117,12,0, + 0,0,105,115,95,110,97,109,101,115,112,97,99,101,117,11, + 0,0,0,116,97,105,108,95,109,111,100,117,108,101,117,5, + 0,0,0,109,116,105,109,101,117,5,0,0,0,99,97,99, + 104,101,117,12,0,0,0,99,97,99,104,101,95,109,111,100, + 117,108,101,117,9,0,0,0,98,97,115,101,95,112,97,116, + 104,117,6,0,0,0,115,117,102,102,105,120,117,6,0,0, + 0,108,111,97,100,101,114,117,13,0,0,0,105,110,105,116, + 95,102,105,108,101,110,97,109,101,117,9,0,0,0,102,117, + 108,108,95,112,97,116,104,40,0,0,0,0,40,0,0,0, + 0,117,29,0,0,0,60,102,114,111,122,101,110,32,105,109, + 112,111,114,116,108,105,98,46,95,98,111,111,116,115,116,114, + 97,112,62,117,11,0,0,0,102,105,110,100,95,108,111,97, + 100,101,114,66,5,0,0,115,62,0,0,0,0,3,6,1, + 19,1,3,1,25,1,13,1,11,1,15,1,10,1,12,2, + 9,1,9,1,15,2,9,1,6,2,12,1,18,1,12,1, + 22,1,10,1,15,1,12,1,26,4,12,2,22,1,16,1, + 22,1,12,1,26,1,6,1,13,1,117,22,0,0,0,70, + 105,108,101,70,105,110,100,101,114,46,102,105,110,100,95,108, + 111,97,100,101,114,99,1,0,0,0,0,0,0,0,9,0, + 0,0,12,0,0,0,67,0,0,0,115,255,0,0,0,124, + 0,0,106,0,0,125,1,0,121,19,0,116,1,0,106,2, + 0,124,1,0,131,1,0,125,2,0,87,110,24,0,4,116, + 3,0,107,10,0,114,54,0,1,1,1,103,0,0,125,2, + 0,89,110,1,0,88,116,4,0,106,5,0,106,6,0,100, + 1,0,131,1,0,115,91,0,116,7,0,124,2,0,131,1, + 0,124,0,0,95,8,0,110,111,0,116,7,0,131,0,0, + 125,3,0,120,90,0,124,2,0,68,93,82,0,125,4,0, + 124,4,0,106,9,0,100,2,0,131,1,0,92,3,0,125, + 5,0,125,6,0,125,7,0,124,6,0,114,170,0,100,3, + 0,106,10,0,124,5,0,124,7,0,106,11,0,131,0,0, + 131,2,0,125,8,0,110,6,0,124,5,0,125,8,0,124, + 3,0,106,12,0,124,8,0,131,1,0,1,113,107,0,87, + 124,3,0,124,0,0,95,8,0,116,4,0,106,5,0,106, + 6,0,116,13,0,131,1,0,114,251,0,116,7,0,100,4, + 0,100,5,0,132,0,0,124,2,0,68,131,1,0,131,1, + 0,124,0,0,95,14,0,110,0,0,100,6,0,83,40,7, + 0,0,0,117,68,0,0,0,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,117,3,0,0, + 0,119,105,110,117,1,0,0,0,46,117,5,0,0,0,123, + 125,46,123,125,99,1,0,0,0,0,0,0,0,2,0,0, + 0,2,0,0,0,115,0,0,0,115,27,0,0,0,124,0, + 0,93,17,0,125,1,0,124,1,0,106,0,0,131,0,0, + 86,1,113,3,0,100,0,0,83,40,1,0,0,0,78,40, + 1,0,0,0,117,5,0,0,0,108,111,119,101,114,40,2, + 0,0,0,117,2,0,0,0,46,48,117,2,0,0,0,102, + 110,40,0,0,0,0,40,0,0,0,0,117,29,0,0,0, + 60,102,114,111,122,101,110,32,105,109,112,111,114,116,108,105, + 98,46,95,98,111,111,116,115,116,114,97,112,62,117,9,0, + 0,0,60,103,101,110,101,120,112,114,62,136,5,0,0,115, + 2,0,0,0,6,0,117,41,0,0,0,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,103,101,110,101, + 120,112,114,62,78,40,15,0,0,0,117,4,0,0,0,112, + 97,116,104,117,3,0,0,0,95,111,115,117,7,0,0,0, + 108,105,115,116,100,105,114,117,17,0,0,0,70,105,108,101, + 78,111,116,70,111,117,110,100,69,114,114,111,114,117,3,0, + 0,0,115,121,115,117,8,0,0,0,112,108,97,116,102,111, + 114,109,117,10,0,0,0,115,116,97,114,116,115,119,105,116, + 104,117,3,0,0,0,115,101,116,117,11,0,0,0,95,112, + 97,116,104,95,99,97,99,104,101,117,9,0,0,0,112,97, + 114,116,105,116,105,111,110,117,6,0,0,0,102,111,114,109, + 97,116,117,5,0,0,0,108,111,119,101,114,117,3,0,0, + 0,97,100,100,117,27,0,0,0,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,117,19,0,0,0,95,114,101,108,97,120,101, + 100,95,112,97,116,104,95,99,97,99,104,101,40,9,0,0, + 0,117,4,0,0,0,115,101,108,102,117,4,0,0,0,112, + 97,116,104,117,8,0,0,0,99,111,110,116,101,110,116,115, + 117,21,0,0,0,108,111,119,101,114,95,115,117,102,102,105, + 120,95,99,111,110,116,101,110,116,115,117,4,0,0,0,105, + 116,101,109,117,4,0,0,0,110,97,109,101,117,3,0,0, + 0,100,111,116,117,6,0,0,0,115,117,102,102,105,120,117, + 8,0,0,0,110,101,119,95,110,97,109,101,40,0,0,0, + 0,40,0,0,0,0,117,29,0,0,0,60,102,114,111,122, + 101,110,32,105,109,112,111,114,116,108,105,98,46,95,98,111, + 111,116,115,116,114,97,112,62,117,11,0,0,0,95,102,105, + 108,108,95,99,97,99,104,101,108,5,0,0,115,34,0,0, + 0,0,2,9,1,3,1,19,1,13,2,11,3,18,1,18, + 7,9,1,13,1,24,1,6,1,27,2,6,1,17,1,9, + 1,18,1,117,22,0,0,0,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,3,0,0,0,3,0,0,0,7, + 0,0,0,115,25,0,0,0,135,0,0,135,1,0,102,2, + 0,100,1,0,100,2,0,134,0,0,125,2,0,124,2,0, + 83,40,3,0,0,0,117,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,1,0,0,0,4,0,0,0, + 19,0,0,0,115,46,0,0,0,116,0,0,124,0,0,131, + 1,0,115,33,0,116,1,0,100,1,0,100,2,0,124,0, + 0,131,1,1,130,1,0,110,0,0,136,0,0,124,0,0, + 136,1,0,140,1,0,83,40,3,0,0,0,117,45,0,0, + 0,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,117,30, + 0,0,0,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,117,4,0,0,0,112,97,116,104,40,2,0,0,0,117, + 11,0,0,0,95,112,97,116,104,95,105,115,100,105,114,117, + 11,0,0,0,73,109,112,111,114,116,69,114,114,111,114,40, + 1,0,0,0,117,4,0,0,0,112,97,116,104,40,2,0, + 0,0,117,3,0,0,0,99,108,115,117,14,0,0,0,108, + 111,97,100,101,114,95,100,101,116,97,105,108,115,40,0,0, + 0,0,117,29,0,0,0,60,102,114,111,122,101,110,32,105, + 109,112,111,114,116,108,105,98,46,95,98,111,111,116,115,116, + 114,97,112,62,117,24,0,0,0,112,97,116,104,95,104,111, + 111,107,95,102,111,114,95,70,105,108,101,70,105,110,100,101, + 114,148,5,0,0,115,6,0,0,0,0,2,12,1,21,1, + 117,54,0,0,0,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,40,0,0,0,0, + 40,3,0,0,0,117,3,0,0,0,99,108,115,117,14,0, + 0,0,108,111,97,100,101,114,95,100,101,116,97,105,108,115, + 117,24,0,0,0,112,97,116,104,95,104,111,111,107,95,102, + 111,114,95,70,105,108,101,70,105,110,100,101,114,40,0,0, + 0,0,40,2,0,0,0,117,3,0,0,0,99,108,115,117, + 14,0,0,0,108,111,97,100,101,114,95,100,101,116,97,105, + 108,115,117,29,0,0,0,60,102,114,111,122,101,110,32,105, + 109,112,111,114,116,108,105,98,46,95,98,111,111,116,115,116, + 114,97,112,62,117,9,0,0,0,112,97,116,104,95,104,111, + 111,107,138,5,0,0,115,4,0,0,0,0,10,21,6,117, + 20,0,0,0,70,105,108,101,70,105,110,100,101,114,46,112, + 97,116,104,95,104,111,111,107,99,1,0,0,0,0,0,0, + 0,1,0,0,0,2,0,0,0,67,0,0,0,115,14,0, + 0,0,100,1,0,124,0,0,106,0,0,102,1,0,22,83, + 40,2,0,0,0,78,117,14,0,0,0,70,105,108,101,70, + 105,110,100,101,114,40,37,114,41,40,1,0,0,0,117,4, + 0,0,0,112,97,116,104,40,1,0,0,0,117,4,0,0, + 0,115,101,108,102,40,0,0,0,0,40,0,0,0,0,117, + 29,0,0,0,60,102,114,111,122,101,110,32,105,109,112,111, + 114,116,108,105,98,46,95,98,111,111,116,115,116,114,97,112, + 62,117,8,0,0,0,95,95,114,101,112,114,95,95,156,5, + 0,0,115,2,0,0,0,0,1,117,19,0,0,0,70,105, + 108,101,70,105,110,100,101,114,46,95,95,114,101,112,114,95, + 95,78,40,13,0,0,0,117,8,0,0,0,95,95,110,97, + 109,101,95,95,117,10,0,0,0,95,95,109,111,100,117,108, + 101,95,95,117,12,0,0,0,95,95,113,117,97,108,110,97, + 109,101,95,95,117,7,0,0,0,95,95,100,111,99,95,95, + 117,8,0,0,0,95,95,105,110,105,116,95,95,117,17,0, + 0,0,105,110,118,97,108,105,100,97,116,101,95,99,97,99, + 104,101,115,117,17,0,0,0,95,102,105,110,100,95,109,111, + 100,117,108,101,95,115,104,105,109,117,11,0,0,0,102,105, + 110,100,95,109,111,100,117,108,101,117,11,0,0,0,102,105, + 110,100,95,108,111,97,100,101,114,117,11,0,0,0,95,102, + 105,108,108,95,99,97,99,104,101,117,11,0,0,0,99,108, + 97,115,115,109,101,116,104,111,100,117,9,0,0,0,112,97, + 116,104,95,104,111,111,107,117,8,0,0,0,95,95,114,101, + 112,114,95,95,40,1,0,0,0,117,10,0,0,0,95,95, + 108,111,99,97,108,115,95,95,40,0,0,0,0,40,0,0, + 0,0,117,29,0,0,0,60,102,114,111,122,101,110,32,105, + 109,112,111,114,116,108,105,98,46,95,98,111,111,116,115,116, + 114,97,112,62,117,10,0,0,0,70,105,108,101,70,105,110, + 100,101,114,37,5,0,0,115,16,0,0,0,16,7,6,2, + 12,14,12,4,6,2,12,42,12,30,18,18,117,10,0,0, + 0,70,105,108,101,70,105,110,100,101,114,99,1,0,0,0, + 0,0,0,0,1,0,0,0,2,0,0,0,66,0,0,0, + 115,50,0,0,0,124,0,0,69,101,0,0,90,1,0,100, + 0,0,90,2,0,100,1,0,90,3,0,100,2,0,100,3, + 0,132,0,0,90,4,0,100,4,0,100,5,0,132,0,0, + 90,5,0,100,6,0,83,40,7,0,0,0,117,18,0,0, + 0,95,73,109,112,111,114,116,76,111,99,107,67,111,110,116, + 101,120,116,117,36,0,0,0,67,111,110,116,101,120,116,32, + 109,97,110,97,103,101,114,32,102,111,114,32,116,104,101,32, + 105,109,112,111,114,116,32,108,111,99,107,46,99,1,0,0, + 0,0,0,0,0,1,0,0,0,1,0,0,0,67,0,0, + 0,115,14,0,0,0,116,0,0,106,1,0,131,0,0,1, + 100,1,0,83,40,2,0,0,0,117,24,0,0,0,65,99, + 113,117,105,114,101,32,116,104,101,32,105,109,112,111,114,116, + 32,108,111,99,107,46,78,40,2,0,0,0,117,4,0,0, + 0,95,105,109,112,117,12,0,0,0,97,99,113,117,105,114, + 101,95,108,111,99,107,40,1,0,0,0,117,4,0,0,0, + 115,101,108,102,40,0,0,0,0,40,0,0,0,0,117,29, + 0,0,0,60,102,114,111,122,101,110,32,105,109,112,111,114, + 116,108,105,98,46,95,98,111,111,116,115,116,114,97,112,62, + 117,9,0,0,0,95,95,101,110,116,101,114,95,95,166,5, + 0,0,115,2,0,0,0,0,2,117,28,0,0,0,95,73, + 109,112,111,114,116,76,111,99,107,67,111,110,116,101,120,116, + 46,95,95,101,110,116,101,114,95,95,99,4,0,0,0,0, + 0,0,0,4,0,0,0,1,0,0,0,67,0,0,0,115, + 14,0,0,0,116,0,0,106,1,0,131,0,0,1,100,1, + 0,83,40,2,0,0,0,117,60,0,0,0,82,101,108,101, + 97,115,101,32,116,104,101,32,105,109,112,111,114,116,32,108, + 111,99,107,32,114,101,103,97,114,100,108,101,115,115,32,111, + 102,32,97,110,121,32,114,97,105,115,101,100,32,101,120,99, + 101,112,116,105,111,110,115,46,78,40,2,0,0,0,117,4, + 0,0,0,95,105,109,112,117,12,0,0,0,114,101,108,101, + 97,115,101,95,108,111,99,107,40,4,0,0,0,117,4,0, + 0,0,115,101,108,102,117,8,0,0,0,101,120,99,95,116, + 121,112,101,117,9,0,0,0,101,120,99,95,118,97,108,117, + 101,117,13,0,0,0,101,120,99,95,116,114,97,99,101,98, + 97,99,107,40,0,0,0,0,40,0,0,0,0,117,29,0, + 0,0,60,102,114,111,122,101,110,32,105,109,112,111,114,116, + 108,105,98,46,95,98,111,111,116,115,116,114,97,112,62,117, + 8,0,0,0,95,95,101,120,105,116,95,95,170,5,0,0, + 115,2,0,0,0,0,2,117,27,0,0,0,95,73,109,112, + 111,114,116,76,111,99,107,67,111,110,116,101,120,116,46,95, + 95,101,120,105,116,95,95,78,40,6,0,0,0,117,8,0, + 0,0,95,95,110,97,109,101,95,95,117,10,0,0,0,95, + 95,109,111,100,117,108,101,95,95,117,12,0,0,0,95,95, + 113,117,97,108,110,97,109,101,95,95,117,7,0,0,0,95, + 95,100,111,99,95,95,117,9,0,0,0,95,95,101,110,116, + 101,114,95,95,117,8,0,0,0,95,95,101,120,105,116,95, + 95,40,1,0,0,0,117,10,0,0,0,95,95,108,111,99, + 97,108,115,95,95,40,0,0,0,0,40,0,0,0,0,117, + 29,0,0,0,60,102,114,111,122,101,110,32,105,109,112,111, + 114,116,108,105,98,46,95,98,111,111,116,115,116,114,97,112, + 62,117,18,0,0,0,95,73,109,112,111,114,116,76,111,99, + 107,67,111,110,116,101,120,116,162,5,0,0,115,6,0,0, + 0,16,2,6,2,12,4,117,18,0,0,0,95,73,109,112, + 111,114,116,76,111,99,107,67,111,110,116,101,120,116,99,3, + 0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,67, + 0,0,0,115,91,0,0,0,124,1,0,106,0,0,100,1, + 0,124,2,0,100,2,0,24,131,2,0,125,3,0,116,1, + 0,124,3,0,131,1,0,124,2,0,107,0,0,114,55,0, + 116,2,0,100,3,0,131,1,0,130,1,0,110,0,0,124, + 3,0,100,4,0,25,125,4,0,124,0,0,114,87,0,100, + 5,0,106,3,0,124,4,0,124,0,0,131,2,0,83,124, + 4,0,83,40,6,0,0,0,117,50,0,0,0,82,101,115, + 111,108,118,101,32,97,32,114,101,108,97,116,105,118,101,32, + 109,111,100,117,108,101,32,110,97,109,101,32,116,111,32,97, + 110,32,97,98,115,111,108,117,116,101,32,111,110,101,46,117, + 1,0,0,0,46,105,1,0,0,0,117,50,0,0,0,97, + 116,116,101,109,112,116,101,100,32,114,101,108,97,116,105,118, + 101,32,105,109,112,111,114,116,32,98,101,121,111,110,100,32, + 116,111,112,45,108,101,118,101,108,32,112,97,99,107,97,103, + 101,105,0,0,0,0,117,5,0,0,0,123,125,46,123,125, + 40,4,0,0,0,117,6,0,0,0,114,115,112,108,105,116, + 117,3,0,0,0,108,101,110,117,10,0,0,0,86,97,108, + 117,101,69,114,114,111,114,117,6,0,0,0,102,111,114,109, + 97,116,40,5,0,0,0,117,4,0,0,0,110,97,109,101, + 117,7,0,0,0,112,97,99,107,97,103,101,117,5,0,0, + 0,108,101,118,101,108,117,4,0,0,0,98,105,116,115,117, + 4,0,0,0,98,97,115,101,40,0,0,0,0,40,0,0, + 0,0,117,29,0,0,0,60,102,114,111,122,101,110,32,105, + 109,112,111,114,116,108,105,98,46,95,98,111,111,116,115,116, + 114,97,112,62,117,13,0,0,0,95,114,101,115,111,108,118, + 101,95,110,97,109,101,175,5,0,0,115,10,0,0,0,0, + 2,22,1,18,1,15,1,10,1,117,13,0,0,0,95,114, + 101,115,111,108,118,101,95,110,97,109,101,99,2,0,0,0, + 0,0,0,0,4,0,0,0,11,0,0,0,67,0,0,0, + 115,138,0,0,0,116,0,0,106,1,0,115,28,0,116,2, + 0,106,3,0,100,1,0,116,4,0,131,2,0,1,110,0, + 0,120,103,0,116,0,0,106,1,0,68,93,88,0,125,2, + 0,116,5,0,131,0,0,143,23,0,1,124,2,0,106,6, + 0,124,0,0,124,1,0,131,2,0,125,3,0,87,100,2, + 0,81,88,124,3,0,100,2,0,107,9,0,114,38,0,124, + 0,0,116,0,0,106,8,0,107,7,0,114,109,0,124,3, + 0,83,116,0,0,106,8,0,124,0,0,25,106,9,0,83, + 113,38,0,113,38,0,87,100,2,0,83,100,2,0,83,40, + 3,0,0,0,117,23,0,0,0,70,105,110,100,32,97,32, + 109,111,100,117,108,101,39,115,32,108,111,97,100,101,114,46, + 117,22,0,0,0,115,121,115,46,109,101,116,97,95,112,97, + 116,104,32,105,115,32,101,109,112,116,121,78,40,10,0,0, + 0,117,3,0,0,0,115,121,115,117,9,0,0,0,109,101, + 116,97,95,112,97,116,104,117,9,0,0,0,95,119,97,114, + 110,105,110,103,115,117,4,0,0,0,119,97,114,110,117,13, + 0,0,0,73,109,112,111,114,116,87,97,114,110,105,110,103, + 117,18,0,0,0,95,73,109,112,111,114,116,76,111,99,107, + 67,111,110,116,101,120,116,117,11,0,0,0,102,105,110,100, + 95,109,111,100,117,108,101,117,4,0,0,0,78,111,110,101, + 117,7,0,0,0,109,111,100,117,108,101,115,117,10,0,0, + 0,95,95,108,111,97,100,101,114,95,95,40,4,0,0,0, + 117,4,0,0,0,110,97,109,101,117,4,0,0,0,112,97, + 116,104,117,6,0,0,0,102,105,110,100,101,114,117,6,0, + 0,0,108,111,97,100,101,114,40,0,0,0,0,40,0,0, + 0,0,117,29,0,0,0,60,102,114,111,122,101,110,32,105, + 109,112,111,114,116,108,105,98,46,95,98,111,111,116,115,116, + 114,97,112,62,117,12,0,0,0,95,102,105,110,100,95,109, + 111,100,117,108,101,184,5,0,0,115,20,0,0,0,0,2, + 9,1,19,1,16,1,10,1,24,1,12,2,15,1,4,2, + 21,2,117,12,0,0,0,95,102,105,110,100,95,109,111,100, + 117,108,101,99,3,0,0,0,0,0,0,0,4,0,0,0, + 4,0,0,0,67,0,0,0,115,194,0,0,0,116,0,0, + 124,0,0,116,1,0,131,2,0,115,45,0,116,2,0,100, + 1,0,106,3,0,116,4,0,124,0,0,131,1,0,131,1, + 0,131,1,0,130,1,0,110,0,0,124,2,0,100,2,0, + 107,0,0,114,72,0,116,5,0,100,3,0,131,1,0,130, + 1,0,110,0,0,124,1,0,114,156,0,116,0,0,124,1, + 0,116,1,0,131,2,0,115,108,0,116,2,0,100,4,0, + 131,1,0,130,1,0,113,156,0,124,1,0,116,6,0,106, + 7,0,107,7,0,114,156,0,100,5,0,125,3,0,116,8, + 0,124,3,0,106,3,0,124,1,0,131,1,0,131,1,0, + 130,1,0,113,156,0,110,0,0,124,0,0,12,114,190,0, + 124,2,0,100,2,0,107,2,0,114,190,0,116,5,0,100, + 6,0,131,1,0,130,1,0,110,0,0,100,7,0,83,40, + 8,0,0,0,117,28,0,0,0,86,101,114,105,102,121,32, + 97,114,103,117,109,101,110,116,115,32,97,114,101,32,34,115, + 97,110,101,34,46,117,31,0,0,0,109,111,100,117,108,101, + 32,110,97,109,101,32,109,117,115,116,32,98,101,32,115,116, + 114,44,32,110,111,116,32,123,125,105,0,0,0,0,117,18, + 0,0,0,108,101,118,101,108,32,109,117,115,116,32,98,101, + 32,62,61,32,48,117,31,0,0,0,95,95,112,97,99,107, + 97,103,101,95,95,32,110,111,116,32,115,101,116,32,116,111, + 32,97,32,115,116,114,105,110,103,117,61,0,0,0,80,97, + 114,101,110,116,32,109,111,100,117,108,101,32,123,33,114,125, + 32,110,111,116,32,108,111,97,100,101,100,44,32,99,97,110, + 110,111,116,32,112,101,114,102,111,114,109,32,114,101,108,97, + 116,105,118,101,32,105,109,112,111,114,116,117,17,0,0,0, + 69,109,112,116,121,32,109,111,100,117,108,101,32,110,97,109, + 101,78,40,9,0,0,0,117,10,0,0,0,105,115,105,110, + 115,116,97,110,99,101,117,3,0,0,0,115,116,114,117,9, + 0,0,0,84,121,112,101,69,114,114,111,114,117,6,0,0, + 0,102,111,114,109,97,116,117,4,0,0,0,116,121,112,101, + 117,10,0,0,0,86,97,108,117,101,69,114,114,111,114,117, + 3,0,0,0,115,121,115,117,7,0,0,0,109,111,100,117, + 108,101,115,117,11,0,0,0,83,121,115,116,101,109,69,114, + 114,111,114,40,4,0,0,0,117,4,0,0,0,110,97,109, + 101,117,7,0,0,0,112,97,99,107,97,103,101,117,5,0, + 0,0,108,101,118,101,108,117,3,0,0,0,109,115,103,40, + 0,0,0,0,40,0,0,0,0,117,29,0,0,0,60,102, + 114,111,122,101,110,32,105,109,112,111,114,116,108,105,98,46, + 95,98,111,111,116,115,116,114,97,112,62,117,13,0,0,0, + 95,115,97,110,105,116,121,95,99,104,101,99,107,201,5,0, + 0,115,24,0,0,0,0,2,15,1,30,1,12,1,15,1, + 6,1,15,1,15,1,15,1,6,2,27,1,19,1,117,13, + 0,0,0,95,115,97,110,105,116,121,95,99,104,101,99,107, + 117,20,0,0,0,78,111,32,109,111,100,117,108,101,32,110, + 97,109,101,100,32,123,33,114,125,99,2,0,0,0,0,0, + 0,0,9,0,0,0,27,0,0,0,67,0,0,0,115,12, + 2,0,0,100,0,0,125,2,0,124,0,0,106,1,0,100, + 1,0,131,1,0,100,2,0,25,125,3,0,124,3,0,114, + 178,0,124,3,0,116,2,0,106,3,0,107,7,0,114,62, + 0,116,4,0,124,1,0,124,3,0,131,2,0,1,110,0, + 0,124,0,0,116,2,0,106,3,0,107,6,0,114,88,0, + 116,2,0,106,3,0,124,0,0,25,83,116,2,0,106,3, + 0,124,3,0,25,125,4,0,121,13,0,124,4,0,106,5, + 0,125,2,0,87,113,178,0,4,116,6,0,107,10,0,114, + 174,0,1,1,1,116,7,0,100,3,0,23,106,8,0,124, + 0,0,124,3,0,131,2,0,125,5,0,116,9,0,124,5, + 0,100,4,0,124,0,0,131,1,1,130,1,0,89,113,178, + 0,88,110,0,0,116,10,0,124,0,0,124,2,0,131,2, + 0,125,6,0,124,6,0,100,0,0,107,8,0,114,250,0, + 116,9,0,116,7,0,106,8,0,124,0,0,131,1,0,100, + 4,0,124,0,0,131,1,1,125,7,0,100,10,0,124,7, + 0,95,12,0,124,7,0,130,1,0,110,47,0,124,0,0, + 116,2,0,106,3,0,107,7,0,114,41,1,124,6,0,106, + 13,0,124,0,0,131,1,0,1,116,14,0,100,5,0,124, + 0,0,124,6,0,131,3,0,1,110,0,0,116,2,0,106, + 3,0,124,0,0,25,125,8,0,124,3,0,114,105,1,116, + 2,0,106,3,0,124,3,0,25,125,4,0,116,15,0,124, + 4,0,124,0,0,106,1,0,100,1,0,131,1,0,100,6, + 0,25,124,8,0,131,3,0,1,110,0,0,116,16,0,124, + 8,0,100,7,0,100,0,0,131,3,0,100,0,0,107,8, + 0,114,212,1,121,59,0,124,8,0,106,17,0,124,8,0, + 95,18,0,116,19,0,124,8,0,100,8,0,131,2,0,115, + 187,1,124,8,0,106,18,0,106,1,0,100,1,0,131,1, + 0,100,2,0,25,124,8,0,95,18,0,110,0,0,87,113, + 212,1,4,116,6,0,107,10,0,114,208,1,1,1,1,89, + 113,212,1,88,110,0,0,116,19,0,124,8,0,100,9,0, + 131,2,0,115,8,2,121,13,0,124,6,0,124,8,0,95, + 20,0,87,113,8,2,4,116,6,0,107,10,0,114,4,2, + 1,1,1,89,113,8,2,88,110,0,0,124,8,0,83,40, + 11,0,0,0,78,117,1,0,0,0,46,105,0,0,0,0, + 117,21,0,0,0,59,32,123,125,32,105,115,32,110,111,116, + 32,97,32,112,97,99,107,97,103,101,117,4,0,0,0,110, + 97,109,101,117,18,0,0,0,105,109,112,111,114,116,32,123, + 33,114,125,32,35,32,123,33,114,125,105,2,0,0,0,117, + 11,0,0,0,95,95,112,97,99,107,97,103,101,95,95,117, + 8,0,0,0,95,95,112,97,116,104,95,95,117,10,0,0, + 0,95,95,108,111,97,100,101,114,95,95,84,40,21,0,0, + 0,117,4,0,0,0,78,111,110,101,117,10,0,0,0,114, + 112,97,114,116,105,116,105,111,110,117,3,0,0,0,115,121, + 115,117,7,0,0,0,109,111,100,117,108,101,115,117,25,0, + 0,0,95,99,97,108,108,95,119,105,116,104,95,102,114,97, + 109,101,115,95,114,101,109,111,118,101,100,117,8,0,0,0, + 95,95,112,97,116,104,95,95,117,14,0,0,0,65,116,116, + 114,105,98,117,116,101,69,114,114,111,114,117,8,0,0,0, + 95,69,82,82,95,77,83,71,117,6,0,0,0,102,111,114, + 109,97,116,117,11,0,0,0,73,109,112,111,114,116,69,114, + 114,111,114,117,12,0,0,0,95,102,105,110,100,95,109,111, + 100,117,108,101,117,4,0,0,0,84,114,117,101,117,10,0, + 0,0,95,110,111,116,95,102,111,117,110,100,117,11,0,0, + 0,108,111,97,100,95,109,111,100,117,108,101,117,16,0,0, + 0,95,118,101,114,98,111,115,101,95,109,101,115,115,97,103, + 101,117,7,0,0,0,115,101,116,97,116,116,114,117,7,0, + 0,0,103,101,116,97,116,116,114,117,8,0,0,0,95,95, + 110,97,109,101,95,95,117,11,0,0,0,95,95,112,97,99, + 107,97,103,101,95,95,117,7,0,0,0,104,97,115,97,116, + 116,114,117,10,0,0,0,95,95,108,111,97,100,101,114,95, + 95,40,9,0,0,0,117,4,0,0,0,110,97,109,101,117, + 7,0,0,0,105,109,112,111,114,116,95,117,4,0,0,0, + 112,97,116,104,117,6,0,0,0,112,97,114,101,110,116,117, + 13,0,0,0,112,97,114,101,110,116,95,109,111,100,117,108, + 101,117,3,0,0,0,109,115,103,117,6,0,0,0,108,111, + 97,100,101,114,117,3,0,0,0,101,120,99,117,6,0,0, + 0,109,111,100,117,108,101,40,0,0,0,0,40,0,0,0, + 0,117,29,0,0,0,60,102,114,111,122,101,110,32,105,109, + 112,111,114,116,108,105,98,46,95,98,111,111,116,115,116,114, + 97,112,62,117,23,0,0,0,95,102,105,110,100,95,97,110, + 100,95,108,111,97,100,95,117,110,108,111,99,107,101,100,220, + 5,0,0,115,76,0,0,0,0,1,6,1,19,1,6,1, + 15,1,16,2,15,1,11,2,13,1,3,1,13,1,13,1, + 22,1,26,1,15,1,12,1,27,3,9,1,9,1,15,2, + 13,1,19,2,13,1,6,2,13,1,32,2,24,1,3,1, + 12,1,15,1,32,1,13,1,8,2,15,1,3,1,13,1, + 13,1,8,1,117,23,0,0,0,95,102,105,110,100,95,97, + 110,100,95,108,111,97,100,95,117,110,108,111,99,107,101,100, + 99,2,0,0,0,0,0,0,0,3,0,0,0,18,0,0, + 0,67,0,0,0,115,75,0,0,0,122,16,0,116,0,0, + 124,0,0,131,1,0,125,2,0,87,100,1,0,116,1,0, + 106,2,0,131,0,0,1,88,124,2,0,106,3,0,131,0, + 0,1,122,17,0,116,4,0,124,0,0,124,1,0,131,2, + 0,83,87,100,1,0,124,2,0,106,5,0,131,0,0,1, + 88,100,1,0,83,40,2,0,0,0,117,54,0,0,0,70, + 105,110,100,32,97,110,100,32,108,111,97,100,32,116,104,101, + 32,109,111,100,117,108,101,44,32,97,110,100,32,114,101,108, + 101,97,115,101,32,116,104,101,32,105,109,112,111,114,116,32, + 108,111,99,107,46,78,40,6,0,0,0,117,16,0,0,0, + 95,103,101,116,95,109,111,100,117,108,101,95,108,111,99,107, + 117,4,0,0,0,95,105,109,112,117,12,0,0,0,114,101, + 108,101,97,115,101,95,108,111,99,107,117,7,0,0,0,97, + 99,113,117,105,114,101,117,23,0,0,0,95,102,105,110,100, + 95,97,110,100,95,108,111,97,100,95,117,110,108,111,99,107, + 101,100,117,7,0,0,0,114,101,108,101,97,115,101,40,3, + 0,0,0,117,4,0,0,0,110,97,109,101,117,7,0,0, + 0,105,109,112,111,114,116,95,117,4,0,0,0,108,111,99, + 107,40,0,0,0,0,40,0,0,0,0,117,29,0,0,0, + 60,102,114,111,122,101,110,32,105,109,112,111,114,116,108,105, + 98,46,95,98,111,111,116,115,116,114,97,112,62,117,14,0, + 0,0,95,102,105,110,100,95,97,110,100,95,108,111,97,100, + 14,6,0,0,115,14,0,0,0,0,2,3,1,16,2,11, + 1,10,1,3,1,17,2,117,14,0,0,0,95,102,105,110, + 100,95,97,110,100,95,108,111,97,100,99,3,0,0,0,0, + 0,0,0,5,0,0,0,4,0,0,0,67,0,0,0,115, + 172,0,0,0,116,0,0,124,0,0,124,1,0,124,2,0, + 131,3,0,1,124,2,0,100,1,0,107,4,0,114,49,0, + 116,1,0,124,0,0,124,1,0,124,2,0,131,3,0,125, + 0,0,110,0,0,116,2,0,106,3,0,131,0,0,1,124, + 0,0,116,4,0,106,5,0,107,7,0,114,87,0,116,6, + 0,124,0,0,116,7,0,131,2,0,83,116,4,0,106,5, + 0,124,0,0,25,125,3,0,124,3,0,100,4,0,107,8, + 0,114,158,0,116,2,0,106,9,0,131,0,0,1,100,2, + 0,106,10,0,124,0,0,131,1,0,125,4,0,116,11,0, + 124,4,0,100,3,0,124,0,0,131,1,1,130,1,0,110, + 0,0,116,12,0,124,0,0,131,1,0,1,124,3,0,83, + 40,5,0,0,0,117,50,1,0,0,73,109,112,111,114,116, + 32,97,110,100,32,114,101,116,117,114,110,32,116,104,101,32, + 109,111,100,117,108,101,32,98,97,115,101,100,32,111,110,32, + 105,116,115,32,110,97,109,101,44,32,116,104,101,32,112,97, + 99,107,97,103,101,32,116,104,101,32,99,97,108,108,32,105, + 115,10,32,32,32,32,98,101,105,110,103,32,109,97,100,101, + 32,102,114,111,109,44,32,97,110,100,32,116,104,101,32,108, + 101,118,101,108,32,97,100,106,117,115,116,109,101,110,116,46, + 10,10,32,32,32,32,84,104,105,115,32,102,117,110,99,116, + 105,111,110,32,114,101,112,114,101,115,101,110,116,115,32,116, + 104,101,32,103,114,101,97,116,101,115,116,32,99,111,109,109, + 111,110,32,100,101,110,111,109,105,110,97,116,111,114,32,111, + 102,32,102,117,110,99,116,105,111,110,97,108,105,116,121,10, + 32,32,32,32,98,101,116,119,101,101,110,32,105,109,112,111, + 114,116,95,109,111,100,117,108,101,32,97,110,100,32,95,95, + 105,109,112,111,114,116,95,95,46,32,84,104,105,115,32,105, + 110,99,108,117,100,101,115,32,115,101,116,116,105,110,103,32, + 95,95,112,97,99,107,97,103,101,95,95,32,105,102,10,32, + 32,32,32,116,104,101,32,108,111,97,100,101,114,32,100,105, + 100,32,110,111,116,46,10,10,32,32,32,32,105,0,0,0, + 0,117,40,0,0,0,105,109,112,111,114,116,32,111,102,32, + 123,125,32,104,97,108,116,101,100,59,32,78,111,110,101,32, + 105,110,32,115,121,115,46,109,111,100,117,108,101,115,117,4, + 0,0,0,110,97,109,101,78,40,13,0,0,0,117,13,0, + 0,0,95,115,97,110,105,116,121,95,99,104,101,99,107,117, + 13,0,0,0,95,114,101,115,111,108,118,101,95,110,97,109, + 101,117,4,0,0,0,95,105,109,112,117,12,0,0,0,97, + 99,113,117,105,114,101,95,108,111,99,107,117,3,0,0,0, + 115,121,115,117,7,0,0,0,109,111,100,117,108,101,115,117, + 14,0,0,0,95,102,105,110,100,95,97,110,100,95,108,111, + 97,100,117,11,0,0,0,95,103,99,100,95,105,109,112,111, + 114,116,117,4,0,0,0,78,111,110,101,117,12,0,0,0, + 114,101,108,101,97,115,101,95,108,111,99,107,117,6,0,0, + 0,102,111,114,109,97,116,117,11,0,0,0,73,109,112,111, + 114,116,69,114,114,111,114,117,19,0,0,0,95,108,111,99, + 107,95,117,110,108,111,99,107,95,109,111,100,117,108,101,40, + 5,0,0,0,117,4,0,0,0,110,97,109,101,117,7,0, + 0,0,112,97,99,107,97,103,101,117,5,0,0,0,108,101, + 118,101,108,117,6,0,0,0,109,111,100,117,108,101,117,7, + 0,0,0,109,101,115,115,97,103,101,40,0,0,0,0,40, + 0,0,0,0,117,29,0,0,0,60,102,114,111,122,101,110, + 32,105,109,112,111,114,116,108,105,98,46,95,98,111,111,116, + 115,116,114,97,112,62,117,11,0,0,0,95,103,99,100,95, + 105,109,112,111,114,116,27,6,0,0,115,28,0,0,0,0, + 9,16,1,12,1,21,1,10,1,15,1,13,1,13,1,12, + 1,10,1,6,1,9,1,21,1,10,1,117,11,0,0,0, + 95,103,99,100,95,105,109,112,111,114,116,99,3,0,0,0, + 0,0,0,0,5,0,0,0,17,0,0,0,67,0,0,0, + 115,233,0,0,0,116,0,0,124,0,0,100,1,0,131,2, + 0,114,229,0,100,2,0,124,1,0,107,6,0,114,89,0, + 116,1,0,124,1,0,131,1,0,125,1,0,124,1,0,106, + 2,0,100,2,0,131,1,0,1,116,0,0,124,0,0,100, + 3,0,131,2,0,114,89,0,124,1,0,106,3,0,124,0, + 0,106,4,0,131,1,0,1,113,89,0,110,0,0,120,137, + 0,124,1,0,68,93,126,0,125,3,0,116,0,0,124,0, + 0,124,3,0,131,2,0,115,96,0,121,32,0,116,5,0, + 124,2,0,100,4,0,106,6,0,124,0,0,106,7,0,124, + 3,0,131,2,0,131,2,0,1,87,113,222,0,4,116,8, + 0,107,10,0,114,218,0,1,125,4,0,1,122,35,0,116, + 0,0,124,4,0,100,5,0,131,2,0,114,197,0,124,4, + 0,106,9,0,114,197,0,110,3,0,130,0,0,87,89,100, + 6,0,100,6,0,125,4,0,126,4,0,88,113,222,0,88, + 113,96,0,113,96,0,87,110,0,0,124,0,0,83,40,7, + 0,0,0,117,238,0,0,0,70,105,103,117,114,101,32,111, + 117,116,32,119,104,97,116,32,95,95,105,109,112,111,114,116, + 95,95,32,115,104,111,117,108,100,32,114,101,116,117,114,110, + 46,10,10,32,32,32,32,84,104,101,32,105,109,112,111,114, + 116,95,32,112,97,114,97,109,101,116,101,114,32,105,115,32, + 97,32,99,97,108,108,97,98,108,101,32,119,104,105,99,104, + 32,116,97,107,101,115,32,116,104,101,32,110,97,109,101,32, + 111,102,32,109,111,100,117,108,101,32,116,111,10,32,32,32, + 32,105,109,112,111,114,116,46,32,73,116,32,105,115,32,114, + 101,113,117,105,114,101,100,32,116,111,32,100,101,99,111,117, + 112,108,101,32,116,104,101,32,102,117,110,99,116,105,111,110, + 32,102,114,111,109,32,97,115,115,117,109,105,110,103,32,105, + 109,112,111,114,116,108,105,98,39,115,10,32,32,32,32,105, + 109,112,111,114,116,32,105,109,112,108,101,109,101,110,116,97, + 116,105,111,110,32,105,115,32,100,101,115,105,114,101,100,46, + 10,10,32,32,32,32,117,8,0,0,0,95,95,112,97,116, + 104,95,95,117,1,0,0,0,42,117,7,0,0,0,95,95, + 97,108,108,95,95,117,5,0,0,0,123,125,46,123,125,117, + 10,0,0,0,95,110,111,116,95,102,111,117,110,100,78,40, + 10,0,0,0,117,7,0,0,0,104,97,115,97,116,116,114, + 117,4,0,0,0,108,105,115,116,117,6,0,0,0,114,101, + 109,111,118,101,117,6,0,0,0,101,120,116,101,110,100,117, + 7,0,0,0,95,95,97,108,108,95,95,117,25,0,0,0, + 95,99,97,108,108,95,119,105,116,104,95,102,114,97,109,101, + 115,95,114,101,109,111,118,101,100,117,6,0,0,0,102,111, + 114,109,97,116,117,8,0,0,0,95,95,110,97,109,101,95, + 95,117,11,0,0,0,73,109,112,111,114,116,69,114,114,111, + 114,117,10,0,0,0,95,110,111,116,95,102,111,117,110,100, + 40,5,0,0,0,117,6,0,0,0,109,111,100,117,108,101, + 117,8,0,0,0,102,114,111,109,108,105,115,116,117,7,0, + 0,0,105,109,112,111,114,116,95,117,1,0,0,0,120,117, + 3,0,0,0,101,120,99,40,0,0,0,0,40,0,0,0, + 0,117,29,0,0,0,60,102,114,111,122,101,110,32,105,109, + 112,111,114,116,108,105,98,46,95,98,111,111,116,115,116,114, + 97,112,62,117,16,0,0,0,95,104,97,110,100,108,101,95, + 102,114,111,109,108,105,115,116,51,6,0,0,115,32,0,0, + 0,0,10,15,1,12,1,12,1,13,1,15,1,22,1,13, + 1,15,1,3,1,6,1,26,1,18,6,24,1,3,2,32, + 1,117,16,0,0,0,95,104,97,110,100,108,101,95,102,114, + 111,109,108,105,115,116,99,1,0,0,0,0,0,0,0,2, + 0,0,0,2,0,0,0,67,0,0,0,115,78,0,0,0, + 124,0,0,106,0,0,100,1,0,131,1,0,125,1,0,124, + 1,0,100,6,0,107,8,0,114,74,0,124,0,0,100,2, + 0,25,125,1,0,100,3,0,124,0,0,107,7,0,114,74, + 0,124,1,0,106,2,0,100,4,0,131,1,0,100,5,0, + 25,125,1,0,113,74,0,110,0,0,124,1,0,83,40,7, + 0,0,0,117,167,0,0,0,67,97,108,99,117,108,97,116, + 101,32,119,104,97,116,32,95,95,112,97,99,107,97,103,101, + 95,95,32,115,104,111,117,108,100,32,98,101,46,10,10,32, + 32,32,32,95,95,112,97,99,107,97,103,101,95,95,32,105, + 115,32,110,111,116,32,103,117,97,114,97,110,116,101,101,100, + 32,116,111,32,98,101,32,100,101,102,105,110,101,100,32,111, + 114,32,99,111,117,108,100,32,98,101,32,115,101,116,32,116, + 111,32,78,111,110,101,10,32,32,32,32,116,111,32,114,101, + 112,114,101,115,101,110,116,32,116,104,97,116,32,105,116,115, + 32,112,114,111,112,101,114,32,118,97,108,117,101,32,105,115, + 32,117,110,107,110,111,119,110,46,10,10,32,32,32,32,117, + 11,0,0,0,95,95,112,97,99,107,97,103,101,95,95,117, + 8,0,0,0,95,95,110,97,109,101,95,95,117,8,0,0, + 0,95,95,112,97,116,104,95,95,117,1,0,0,0,46,105, + 0,0,0,0,78,40,3,0,0,0,117,3,0,0,0,103, + 101,116,117,4,0,0,0,78,111,110,101,117,10,0,0,0, + 114,112,97,114,116,105,116,105,111,110,40,2,0,0,0,117, + 7,0,0,0,103,108,111,98,97,108,115,117,7,0,0,0, + 112,97,99,107,97,103,101,40,0,0,0,0,40,0,0,0, + 0,117,29,0,0,0,60,102,114,111,122,101,110,32,105,109, + 112,111,114,116,108,105,98,46,95,98,111,111,116,115,116,114, + 97,112,62,117,17,0,0,0,95,99,97,108,99,95,95,95, + 112,97,99,107,97,103,101,95,95,85,6,0,0,115,12,0, + 0,0,0,7,15,1,12,1,10,1,12,1,25,1,117,17, + 0,0,0,95,99,97,108,99,95,95,95,112,97,99,107,97, + 103,101,95,95,99,0,0,0,0,0,0,0,0,3,0,0, + 0,3,0,0,0,67,0,0,0,115,55,0,0,0,116,0, + 0,116,1,0,106,2,0,131,0,0,102,2,0,125,0,0, + 116,3,0,116,4,0,102,2,0,125,1,0,116,5,0,116, + 6,0,102,2,0,125,2,0,124,0,0,124,1,0,124,2, + 0,103,3,0,83,40,1,0,0,0,117,111,0,0,0,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,44,32,97,108,108,111,119,95,112, + 97,99,107,97,103,101,115,41,46,10,32,32,32,32,40,7, + 0,0,0,117,19,0,0,0,69,120,116,101,110,115,105,111, + 110,70,105,108,101,76,111,97,100,101,114,117,4,0,0,0, + 95,105,109,112,117,18,0,0,0,101,120,116,101,110,115,105, + 111,110,95,115,117,102,102,105,120,101,115,117,16,0,0,0, + 83,111,117,114,99,101,70,105,108,101,76,111,97,100,101,114, + 117,15,0,0,0,83,79,85,82,67,69,95,83,85,70,70, + 73,88,69,83,117,20,0,0,0,83,111,117,114,99,101,108, + 101,115,115,70,105,108,101,76,111,97,100,101,114,117,17,0, + 0,0,66,89,84,69,67,79,68,69,95,83,85,70,70,73, + 88,69,83,40,3,0,0,0,117,10,0,0,0,101,120,116, + 101,110,115,105,111,110,115,117,6,0,0,0,115,111,117,114, + 99,101,117,8,0,0,0,98,121,116,101,99,111,100,101,40, + 0,0,0,0,40,0,0,0,0,117,29,0,0,0,60,102, + 114,111,122,101,110,32,105,109,112,111,114,116,108,105,98,46, + 95,98,111,111,116,115,116,114,97,112,62,117,27,0,0,0, + 95,103,101,116,95,115,117,112,112,111,114,116,101,100,95,102, + 105,108,101,95,108,111,97,100,101,114,115,100,6,0,0,115, + 8,0,0,0,0,5,18,1,12,1,12,1,117,27,0,0, + 0,95,103,101,116,95,115,117,112,112,111,114,116,101,100,95, + 102,105,108,101,95,108,111,97,100,101,114,115,99,5,0,0, + 0,0,0,0,0,9,0,0,0,5,0,0,0,67,0,0, + 0,115,227,0,0,0,124,4,0,100,1,0,107,2,0,114, + 27,0,116,0,0,124,0,0,131,1,0,125,5,0,110,54, + 0,124,1,0,100,3,0,107,9,0,114,45,0,124,1,0, + 110,3,0,105,0,0,125,6,0,116,2,0,124,6,0,131, + 1,0,125,7,0,116,0,0,124,0,0,124,7,0,124,4, + 0,131,3,0,125,5,0,124,3,0,115,207,0,124,4,0, + 100,1,0,107,2,0,114,122,0,116,0,0,124,0,0,106, + 3,0,100,2,0,131,1,0,100,1,0,25,131,1,0,83, + 124,0,0,115,132,0,124,5,0,83,116,4,0,124,0,0, + 131,1,0,116,4,0,124,0,0,106,3,0,100,2,0,131, + 1,0,100,1,0,25,131,1,0,24,125,8,0,116,5,0, + 106,6,0,124,5,0,106,7,0,100,3,0,116,4,0,124, + 5,0,106,7,0,131,1,0,124,8,0,24,133,2,0,25, + 25,83,110,16,0,116,8,0,124,5,0,124,3,0,116,0, + 0,131,3,0,83,100,3,0,83,40,4,0,0,0,117,214, + 1,0,0,73,109,112,111,114,116,32,97,32,109,111,100,117, + 108,101,46,10,10,32,32,32,32,84,104,101,32,39,103,108, + 111,98,97,108,115,39,32,97,114,103,117,109,101,110,116,32, + 105,115,32,117,115,101,100,32,116,111,32,105,110,102,101,114, + 32,119,104,101,114,101,32,116,104,101,32,105,109,112,111,114, + 116,32,105,115,32,111,99,99,117,114,105,110,103,32,102,114, + 111,109,10,32,32,32,32,116,111,32,104,97,110,100,108,101, + 32,114,101,108,97,116,105,118,101,32,105,109,112,111,114,116, + 115,46,32,84,104,101,32,39,108,111,99,97,108,115,39,32, + 97,114,103,117,109,101,110,116,32,105,115,32,105,103,110,111, + 114,101,100,46,32,84,104,101,10,32,32,32,32,39,102,114, + 111,109,108,105,115,116,39,32,97,114,103,117,109,101,110,116, + 32,115,112,101,99,105,102,105,101,115,32,119,104,97,116,32, + 115,104,111,117,108,100,32,101,120,105,115,116,32,97,115,32, + 97,116,116,114,105,98,117,116,101,115,32,111,110,32,116,104, + 101,32,109,111,100,117,108,101,10,32,32,32,32,98,101,105, + 110,103,32,105,109,112,111,114,116,101,100,32,40,101,46,103, + 46,32,96,96,102,114,111,109,32,109,111,100,117,108,101,32, + 105,109,112,111,114,116,32,60,102,114,111,109,108,105,115,116, + 62,96,96,41,46,32,32,84,104,101,32,39,108,101,118,101, + 108,39,10,32,32,32,32,97,114,103,117,109,101,110,116,32, + 114,101,112,114,101,115,101,110,116,115,32,116,104,101,32,112, + 97,99,107,97,103,101,32,108,111,99,97,116,105,111,110,32, + 116,111,32,105,109,112,111,114,116,32,102,114,111,109,32,105, + 110,32,97,32,114,101,108,97,116,105,118,101,10,32,32,32, + 32,105,109,112,111,114,116,32,40,101,46,103,46,32,96,96, + 102,114,111,109,32,46,46,112,107,103,32,105,109,112,111,114, + 116,32,109,111,100,96,96,32,119,111,117,108,100,32,104,97, + 118,101,32,97,32,39,108,101,118,101,108,39,32,111,102,32, + 50,41,46,10,10,32,32,32,32,105,0,0,0,0,117,1, + 0,0,0,46,78,40,9,0,0,0,117,11,0,0,0,95, + 103,99,100,95,105,109,112,111,114,116,117,4,0,0,0,78, + 111,110,101,117,17,0,0,0,95,99,97,108,99,95,95,95, + 112,97,99,107,97,103,101,95,95,117,9,0,0,0,112,97, + 114,116,105,116,105,111,110,117,3,0,0,0,108,101,110,117, + 3,0,0,0,115,121,115,117,7,0,0,0,109,111,100,117, + 108,101,115,117,8,0,0,0,95,95,110,97,109,101,95,95, + 117,16,0,0,0,95,104,97,110,100,108,101,95,102,114,111, + 109,108,105,115,116,40,9,0,0,0,117,4,0,0,0,110, + 97,109,101,117,7,0,0,0,103,108,111,98,97,108,115,117, + 6,0,0,0,108,111,99,97,108,115,117,8,0,0,0,102, + 114,111,109,108,105,115,116,117,5,0,0,0,108,101,118,101, + 108,117,6,0,0,0,109,111,100,117,108,101,117,8,0,0, + 0,103,108,111,98,97,108,115,95,117,7,0,0,0,112,97, + 99,107,97,103,101,117,7,0,0,0,99,117,116,95,111,102, + 102,40,0,0,0,0,40,0,0,0,0,117,29,0,0,0, + 60,102,114,111,122,101,110,32,105,109,112,111,114,116,108,105, + 98,46,95,98,111,111,116,115,116,114,97,112,62,117,10,0, + 0,0,95,95,105,109,112,111,114,116,95,95,111,6,0,0, + 115,26,0,0,0,0,11,12,1,15,2,24,1,12,1,18, + 1,6,3,12,1,23,1,6,1,4,2,35,1,40,2,117, + 10,0,0,0,95,95,105,109,112,111,114,116,95,95,99,2, + 0,0,0,0,0,0,0,14,0,0,0,13,0,0,0,67, + 0,0,0,115,196,2,0,0,124,1,0,97,0,0,124,0, + 0,97,1,0,116,1,0,106,2,0,106,3,0,114,33,0, + 116,4,0,97,5,0,110,6,0,116,6,0,97,5,0,120, + 47,0,116,0,0,116,1,0,102,2,0,68,93,33,0,125, + 2,0,116,7,0,124,2,0,100,1,0,131,2,0,115,52, + 0,116,8,0,124,2,0,95,9,0,113,52,0,113,52,0, + 87,116,1,0,106,10,0,116,11,0,25,125,3,0,120,76, + 0,100,28,0,68,93,68,0,125,4,0,124,4,0,116,1, + 0,106,10,0,107,7,0,114,148,0,116,8,0,106,12,0, + 124,4,0,131,1,0,125,5,0,110,13,0,116,1,0,106, + 10,0,124,4,0,25,125,5,0,116,13,0,124,3,0,124, + 4,0,124,5,0,131,3,0,1,113,109,0,87,100,6,0, + 100,7,0,103,1,0,102,2,0,100,8,0,100,9,0,100, + 7,0,103,2,0,102,2,0,100,10,0,100,9,0,100,7, + 0,103,2,0,102,2,0,102,3,0,125,6,0,120,189,0, + 124,6,0,68,93,169,0,92,2,0,125,7,0,125,8,0, + 116,14,0,100,11,0,100,12,0,132,0,0,124,8,0,68, + 131,1,0,131,1,0,115,23,1,116,15,0,130,1,0,124, + 8,0,100,13,0,25,125,9,0,124,7,0,116,1,0,106, + 10,0,107,6,0,114,65,1,116,1,0,106,10,0,124,7, + 0,25,125,10,0,80,113,236,0,121,60,0,116,8,0,106, + 12,0,124,7,0,131,1,0,125,10,0,124,7,0,100,10, + 0,107,2,0,114,123,1,100,14,0,116,1,0,106,16,0, + 107,6,0,114,123,1,124,8,0,100,15,0,25,125,9,0, + 110,0,0,80,87,113,236,0,4,116,17,0,107,10,0,114, + 148,1,1,1,1,119,236,0,89,113,236,0,88,113,236,0, + 87,116,17,0,100,16,0,131,1,0,130,1,0,121,19,0, + 116,8,0,106,12,0,100,17,0,131,1,0,125,11,0,87, + 110,24,0,4,116,17,0,107,10,0,114,210,1,1,1,1, + 100,27,0,125,11,0,89,110,1,0,88,116,8,0,106,12, + 0,100,18,0,131,1,0,125,12,0,124,7,0,100,8,0, + 107,2,0,114,16,2,116,8,0,106,12,0,100,19,0,131, + 1,0,125,13,0,116,13,0,124,3,0,100,20,0,124,13, + 0,131,3,0,1,110,0,0,116,13,0,124,3,0,100,21, + 0,124,10,0,131,3,0,1,116,13,0,124,3,0,100,17, + 0,124,11,0,131,3,0,1,116,13,0,124,3,0,100,18, + 0,124,12,0,131,3,0,1,116,13,0,124,3,0,100,22, + 0,124,9,0,131,3,0,1,116,13,0,124,3,0,100,23, + 0,116,19,0,124,8,0,131,1,0,131,3,0,1,116,13, + 0,124,3,0,100,24,0,116,20,0,131,0,0,131,3,0, + 1,116,21,0,106,22,0,116,0,0,106,23,0,131,0,0, + 131,1,0,1,124,7,0,100,8,0,107,2,0,114,192,2, + 116,24,0,106,25,0,100,25,0,131,1,0,1,100,26,0, + 116,21,0,107,6,0,114,192,2,100,29,0,116,27,0,95, + 28,0,113,192,2,110,0,0,100,27,0,83,40,30,0,0, + 0,117,250,0,0,0,83,101,116,117,112,32,105,109,112,111, + 114,116,108,105,98,32,98,121,32,105,109,112,111,114,116,105, + 110,103,32,110,101,101,100,101,100,32,98,117,105,108,116,45, + 105,110,32,109,111,100,117,108,101,115,32,97,110,100,32,105, + 110,106,101,99,116,105,110,103,32,116,104,101,109,10,32,32, + 32,32,105,110,116,111,32,116,104,101,32,103,108,111,98,97, + 108,32,110,97,109,101,115,112,97,99,101,46,10,10,32,32, + 32,32,65,115,32,115,121,115,32,105,115,32,110,101,101,100, + 101,100,32,102,111,114,32,115,121,115,46,109,111,100,117,108, + 101,115,32,97,99,99,101,115,115,32,97,110,100,32,95,105, + 109,112,32,105,115,32,110,101,101,100,101,100,32,116,111,32, + 108,111,97,100,32,98,117,105,108,116,45,105,110,10,32,32, + 32,32,109,111,100,117,108,101,115,44,32,116,104,111,115,101, + 32,116,119,111,32,109,111,100,117,108,101,115,32,109,117,115, + 116,32,98,101,32,101,120,112,108,105,99,105,116,108,121,32, + 112,97,115,115,101,100,32,105,110,46,10,10,32,32,32,32, + 117,10,0,0,0,95,95,108,111,97,100,101,114,95,95,117, + 3,0,0,0,95,105,111,117,9,0,0,0,95,119,97,114, + 110,105,110,103,115,117,8,0,0,0,98,117,105,108,116,105, + 110,115,117,7,0,0,0,109,97,114,115,104,97,108,117,5, + 0,0,0,112,111,115,105,120,117,1,0,0,0,47,117,2, + 0,0,0,110,116,117,1,0,0,0,92,117,3,0,0,0, + 111,115,50,99,1,0,0,0,0,0,0,0,2,0,0,0, + 3,0,0,0,115,0,0,0,115,33,0,0,0,124,0,0, + 93,23,0,125,1,0,116,0,0,124,1,0,131,1,0,100, + 0,0,107,2,0,86,1,113,3,0,100,1,0,83,40,2, + 0,0,0,105,1,0,0,0,78,40,1,0,0,0,117,3, + 0,0,0,108,101,110,40,2,0,0,0,117,2,0,0,0, + 46,48,117,3,0,0,0,115,101,112,40,0,0,0,0,40, + 0,0,0,0,117,29,0,0,0,60,102,114,111,122,101,110, + 32,105,109,112,111,114,116,108,105,98,46,95,98,111,111,116, + 115,116,114,97,112,62,117,9,0,0,0,60,103,101,110,101, + 120,112,114,62,175,6,0,0,115,2,0,0,0,6,0,117, + 25,0,0,0,95,115,101,116,117,112,46,60,108,111,99,97, + 108,115,62,46,60,103,101,110,101,120,112,114,62,105,0,0, + 0,0,117,7,0,0,0,69,77,88,32,71,67,67,105,1, + 0,0,0,117,30,0,0,0,105,109,112,111,114,116,108,105, + 98,32,114,101,113,117,105,114,101,115,32,112,111,115,105,120, + 32,111,114,32,110,116,117,7,0,0,0,95,116,104,114,101, + 97,100,117,8,0,0,0,95,119,101,97,107,114,101,102,117, + 6,0,0,0,119,105,110,114,101,103,117,7,0,0,0,95, + 119,105,110,114,101,103,117,3,0,0,0,95,111,115,117,8, + 0,0,0,112,97,116,104,95,115,101,112,117,15,0,0,0, + 112,97,116,104,95,115,101,112,97,114,97,116,111,114,115,117, + 11,0,0,0,95,114,101,108,97,120,95,99,97,115,101,117, + 4,0,0,0,46,112,121,119,117,6,0,0,0,95,100,46, + 112,121,100,78,40,4,0,0,0,117,3,0,0,0,95,105, + 111,117,9,0,0,0,95,119,97,114,110,105,110,103,115,117, + 8,0,0,0,98,117,105,108,116,105,110,115,117,7,0,0, + 0,109,97,114,115,104,97,108,84,40,29,0,0,0,117,4, + 0,0,0,95,105,109,112,117,3,0,0,0,115,121,115,117, + 5,0,0,0,102,108,97,103,115,117,8,0,0,0,111,112, + 116,105,109,105,122,101,117,27,0,0,0,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,117,17,0,0,0,66,89,84,69,67, + 79,68,69,95,83,85,70,70,73,88,69,83,117,23,0,0, + 0,68,69,66,85,71,95,66,89,84,69,67,79,68,69,95, + 83,85,70,70,73,88,69,83,117,7,0,0,0,104,97,115, + 97,116,116,114,117,15,0,0,0,66,117,105,108,116,105,110, + 73,109,112,111,114,116,101,114,117,10,0,0,0,95,95,108, + 111,97,100,101,114,95,95,117,7,0,0,0,109,111,100,117, + 108,101,115,117,8,0,0,0,95,95,110,97,109,101,95,95, + 117,11,0,0,0,108,111,97,100,95,109,111,100,117,108,101, + 117,7,0,0,0,115,101,116,97,116,116,114,117,3,0,0, + 0,97,108,108,117,14,0,0,0,65,115,115,101,114,116,105, + 111,110,69,114,114,111,114,117,7,0,0,0,118,101,114,115, + 105,111,110,117,11,0,0,0,73,109,112,111,114,116,69,114, + 114,111,114,117,4,0,0,0,78,111,110,101,117,3,0,0, + 0,115,101,116,117,16,0,0,0,95,109,97,107,101,95,114, + 101,108,97,120,95,99,97,115,101,117,18,0,0,0,69,88, + 84,69,78,83,73,79,78,95,83,85,70,70,73,88,69,83, + 117,6,0,0,0,101,120,116,101,110,100,117,18,0,0,0, + 101,120,116,101,110,115,105,111,110,95,115,117,102,102,105,120, + 101,115,117,15,0,0,0,83,79,85,82,67,69,95,83,85, + 70,70,73,88,69,83,117,6,0,0,0,97,112,112,101,110, + 100,117,4,0,0,0,84,114,117,101,117,21,0,0,0,87, + 105,110,100,111,119,115,82,101,103,105,115,116,114,121,70,105, + 110,100,101,114,117,11,0,0,0,68,69,66,85,71,95,66, + 85,73,76,68,40,14,0,0,0,117,10,0,0,0,115,121, + 115,95,109,111,100,117,108,101,117,11,0,0,0,95,105,109, + 112,95,109,111,100,117,108,101,117,6,0,0,0,109,111,100, + 117,108,101,117,11,0,0,0,115,101,108,102,95,109,111,100, + 117,108,101,117,12,0,0,0,98,117,105,108,116,105,110,95, + 110,97,109,101,117,14,0,0,0,98,117,105,108,116,105,110, + 95,109,111,100,117,108,101,117,10,0,0,0,111,115,95,100, + 101,116,97,105,108,115,117,10,0,0,0,98,117,105,108,116, + 105,110,95,111,115,117,15,0,0,0,112,97,116,104,95,115, + 101,112,97,114,97,116,111,114,115,117,8,0,0,0,112,97, + 116,104,95,115,101,112,117,9,0,0,0,111,115,95,109,111, + 100,117,108,101,117,13,0,0,0,116,104,114,101,97,100,95, + 109,111,100,117,108,101,117,14,0,0,0,119,101,97,107,114, + 101,102,95,109,111,100,117,108,101,117,13,0,0,0,119,105, + 110,114,101,103,95,109,111,100,117,108,101,40,0,0,0,0, + 40,0,0,0,0,117,29,0,0,0,60,102,114,111,122,101, + 110,32,105,109,112,111,114,116,108,105,98,46,95,98,111,111, + 116,115,116,114,97,112,62,117,6,0,0,0,95,115,101,116, + 117,112,143,6,0,0,115,96,0,0,0,0,9,6,1,6, + 2,12,1,9,2,6,2,19,1,15,1,16,2,13,1,13, + 1,15,1,18,2,13,1,20,2,48,1,19,2,31,1,10, + 1,15,1,13,1,4,2,3,1,15,2,27,1,13,1,5, + 1,13,1,12,2,12,2,3,1,19,1,13,2,11,1,15, + 2,12,1,15,1,19,2,16,1,16,1,16,1,16,1,22, + 2,19,1,19,1,12,1,13,1,12,1,117,6,0,0,0, + 95,115,101,116,117,112,99,2,0,0,0,0,0,0,0,3, + 0,0,0,3,0,0,0,67,0,0,0,115,136,0,0,0, + 116,0,0,124,0,0,124,1,0,131,2,0,1,116,1,0, + 131,0,0,125,2,0,116,2,0,106,3,0,106,4,0,116, + 5,0,106,6,0,124,2,0,140,0,0,103,1,0,131,1, + 0,1,116,2,0,106,7,0,106,8,0,116,9,0,131,1, + 0,1,116,2,0,106,7,0,106,8,0,116,10,0,131,1, + 0,1,116,11,0,106,12,0,100,1,0,107,2,0,114,116, + 0,116,2,0,106,7,0,106,8,0,116,13,0,131,1,0, + 1,110,0,0,116,2,0,106,7,0,106,8,0,116,14,0, + 131,1,0,1,100,2,0,83,40,3,0,0,0,117,50,0, + 0,0,73,110,115,116,97,108,108,32,105,109,112,111,114,116, + 108,105,98,32,97,115,32,116,104,101,32,105,109,112,108,101, + 109,101,110,116,97,116,105,111,110,32,111,102,32,105,109,112, + 111,114,116,46,117,2,0,0,0,110,116,78,40,15,0,0, + 0,117,6,0,0,0,95,115,101,116,117,112,117,27,0,0, + 0,95,103,101,116,95,115,117,112,112,111,114,116,101,100,95, + 102,105,108,101,95,108,111,97,100,101,114,115,117,3,0,0, + 0,115,121,115,117,10,0,0,0,112,97,116,104,95,104,111, + 111,107,115,117,6,0,0,0,101,120,116,101,110,100,117,10, + 0,0,0,70,105,108,101,70,105,110,100,101,114,117,9,0, + 0,0,112,97,116,104,95,104,111,111,107,117,9,0,0,0, + 109,101,116,97,95,112,97,116,104,117,6,0,0,0,97,112, + 112,101,110,100,117,15,0,0,0,66,117,105,108,116,105,110, + 73,109,112,111,114,116,101,114,117,14,0,0,0,70,114,111, + 122,101,110,73,109,112,111,114,116,101,114,117,3,0,0,0, + 95,111,115,117,8,0,0,0,95,95,110,97,109,101,95,95, + 117,21,0,0,0,87,105,110,100,111,119,115,82,101,103,105, + 115,116,114,121,70,105,110,100,101,114,117,10,0,0,0,80, + 97,116,104,70,105,110,100,101,114,40,3,0,0,0,117,10, + 0,0,0,115,121,115,95,109,111,100,117,108,101,117,11,0, + 0,0,95,105,109,112,95,109,111,100,117,108,101,117,17,0, + 0,0,115,117,112,112,111,114,116,101,100,95,108,111,97,100, + 101,114,115,40,0,0,0,0,40,0,0,0,0,117,29,0, + 0,0,60,102,114,111,122,101,110,32,105,109,112,111,114,116, + 108,105,98,46,95,98,111,111,116,115,116,114,97,112,62,117, + 8,0,0,0,95,105,110,115,116,97,108,108,217,6,0,0, + 115,16,0,0,0,0,2,13,1,9,1,28,1,16,1,16, + 1,15,1,19,1,117,8,0,0,0,95,105,110,115,116,97, + 108,108,78,40,3,0,0,0,117,3,0,0,0,119,105,110, + 117,6,0,0,0,99,121,103,119,105,110,117,6,0,0,0, + 100,97,114,119,105,110,40,74,0,0,0,117,7,0,0,0, + 95,95,100,111,99,95,95,117,27,0,0,0,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,117,16,0,0,0,95,109,97,107, + 101,95,114,101,108,97,120,95,99,97,115,101,117,7,0,0, + 0,95,119,95,108,111,110,103,117,7,0,0,0,95,114,95, + 108,111,110,103,117,10,0,0,0,95,112,97,116,104,95,106, + 111,105,110,117,11,0,0,0,95,112,97,116,104,95,115,112, + 108,105,116,117,18,0,0,0,95,112,97,116,104,95,105,115, + 95,109,111,100,101,95,116,121,112,101,117,12,0,0,0,95, + 112,97,116,104,95,105,115,102,105,108,101,117,11,0,0,0, + 95,112,97,116,104,95,105,115,100,105,114,117,13,0,0,0, + 95,119,114,105,116,101,95,97,116,111,109,105,99,117,5,0, + 0,0,95,119,114,97,112,117,4,0,0,0,116,121,112,101, + 117,8,0,0,0,95,95,99,111,100,101,95,95,117,10,0, + 0,0,95,99,111,100,101,95,116,121,112,101,117,10,0,0, + 0,110,101,119,95,109,111,100,117,108,101,117,13,0,0,0, + 95,109,111,100,117,108,101,95,108,111,99,107,115,117,12,0, + 0,0,95,98,108,111,99,107,105,110,103,95,111,110,117,12, + 0,0,0,82,117,110,116,105,109,101,69,114,114,111,114,117, + 14,0,0,0,95,68,101,97,100,108,111,99,107,69,114,114, + 111,114,117,11,0,0,0,95,77,111,100,117,108,101,76,111, + 99,107,117,16,0,0,0,95,68,117,109,109,121,77,111,100, + 117,108,101,76,111,99,107,117,16,0,0,0,95,103,101,116, + 95,109,111,100,117,108,101,95,108,111,99,107,117,19,0,0, + 0,95,108,111,99,107,95,117,110,108,111,99,107,95,109,111, + 100,117,108,101,117,25,0,0,0,95,99,97,108,108,95,119, + 105,116,104,95,102,114,97,109,101,115,95,114,101,109,111,118, + 101,100,117,3,0,0,0,111,114,100,117,17,0,0,0,95, + 82,65,87,95,77,65,71,73,67,95,78,85,77,66,69,82, + 117,5,0,0,0,98,121,116,101,115,117,5,0,0,0,114, + 97,110,103,101,117,12,0,0,0,95,77,65,71,73,67,95, + 66,89,84,69,83,117,8,0,0,0,95,80,89,67,65,67, + 72,69,117,15,0,0,0,83,79,85,82,67,69,95,83,85, + 70,70,73,88,69,83,117,23,0,0,0,68,69,66,85,71, + 95,66,89,84,69,67,79,68,69,95,83,85,70,70,73,88, + 69,83,117,27,0,0,0,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,117,4,0,0,0,78,111,110,101,117,17,0,0,0, + 99,97,99,104,101,95,102,114,111,109,95,115,111,117,114,99, + 101,117,17,0,0,0,115,111,117,114,99,101,95,102,114,111, + 109,95,99,97,99,104,101,117,15,0,0,0,95,103,101,116, + 95,115,111,117,114,99,101,102,105,108,101,117,16,0,0,0, + 95,118,101,114,98,111,115,101,95,109,101,115,115,97,103,101, + 117,11,0,0,0,115,101,116,95,112,97,99,107,97,103,101, + 117,10,0,0,0,115,101,116,95,108,111,97,100,101,114,117, + 17,0,0,0,109,111,100,117,108,101,95,102,111,114,95,108, + 111,97,100,101,114,117,11,0,0,0,95,99,104,101,99,107, + 95,110,97,109,101,117,17,0,0,0,95,114,101,113,117,105, + 114,101,115,95,98,117,105,108,116,105,110,117,16,0,0,0, + 95,114,101,113,117,105,114,101,115,95,102,114,111,122,101,110, + 117,17,0,0,0,95,102,105,110,100,95,109,111,100,117,108, + 101,95,115,104,105,109,117,15,0,0,0,66,117,105,108,116, + 105,110,73,109,112,111,114,116,101,114,117,14,0,0,0,70, + 114,111,122,101,110,73,109,112,111,114,116,101,114,117,21,0, + 0,0,87,105,110,100,111,119,115,82,101,103,105,115,116,114, + 121,70,105,110,100,101,114,117,13,0,0,0,95,76,111,97, + 100,101,114,66,97,115,105,99,115,117,12,0,0,0,83,111, + 117,114,99,101,76,111,97,100,101,114,117,10,0,0,0,70, + 105,108,101,76,111,97,100,101,114,117,16,0,0,0,83,111, + 117,114,99,101,70,105,108,101,76,111,97,100,101,114,117,20, + 0,0,0,83,111,117,114,99,101,108,101,115,115,70,105,108, + 101,76,111,97,100,101,114,117,18,0,0,0,69,88,84,69, + 78,83,73,79,78,95,83,85,70,70,73,88,69,83,117,19, + 0,0,0,69,120,116,101,110,115,105,111,110,70,105,108,101, + 76,111,97,100,101,114,117,14,0,0,0,95,78,97,109,101, + 115,112,97,99,101,80,97,116,104,117,15,0,0,0,78,97, + 109,101,115,112,97,99,101,76,111,97,100,101,114,117,10,0, + 0,0,80,97,116,104,70,105,110,100,101,114,117,10,0,0, + 0,70,105,108,101,70,105,110,100,101,114,117,18,0,0,0, + 95,73,109,112,111,114,116,76,111,99,107,67,111,110,116,101, + 120,116,117,13,0,0,0,95,114,101,115,111,108,118,101,95, + 110,97,109,101,117,12,0,0,0,95,102,105,110,100,95,109, + 111,100,117,108,101,117,13,0,0,0,95,115,97,110,105,116, + 121,95,99,104,101,99,107,117,8,0,0,0,95,69,82,82, + 95,77,83,71,117,23,0,0,0,95,102,105,110,100,95,97, + 110,100,95,108,111,97,100,95,117,110,108,111,99,107,101,100, + 117,14,0,0,0,95,102,105,110,100,95,97,110,100,95,108, + 111,97,100,117,11,0,0,0,95,103,99,100,95,105,109,112, + 111,114,116,117,16,0,0,0,95,104,97,110,100,108,101,95, + 102,114,111,109,108,105,115,116,117,17,0,0,0,95,99,97, + 108,99,95,95,95,112,97,99,107,97,103,101,95,95,117,27, + 0,0,0,95,103,101,116,95,115,117,112,112,111,114,116,101, + 100,95,102,105,108,101,95,108,111,97,100,101,114,115,117,10, + 0,0,0,95,95,105,109,112,111,114,116,95,95,117,6,0, + 0,0,95,115,101,116,117,112,117,8,0,0,0,95,105,110, + 115,116,97,108,108,40,0,0,0,0,40,0,0,0,0,40, + 0,0,0,0,117,29,0,0,0,60,102,114,111,122,101,110, + 32,105,109,112,111,114,116,108,105,98,46,95,98,111,111,116, + 115,116,114,97,112,62,117,8,0,0,0,60,109,111,100,117, + 108,101,62,8,0,0,0,115,132,0,0,0,6,21,6,3, + 12,13,12,16,12,13,12,12,12,12,12,10,12,6,12,7, + 15,22,12,8,15,3,12,12,6,2,6,3,22,4,19,68, + 19,23,12,19,12,20,12,100,34,1,37,2,6,2,9,2, + 9,1,9,2,15,27,12,23,12,21,12,8,12,13,12,11, + 12,55,12,18,12,11,12,11,12,17,19,57,19,54,19,50, + 19,82,22,134,19,29,25,46,25,25,6,3,19,45,19,55, + 19,18,19,89,19,125,19,13,12,9,12,17,12,17,6,2, + 12,50,12,13,18,24,12,34,12,15,12,11,24,32,12,74, }; From a820c7ca707f2c073acf560cedf4a1c723854276 Mon Sep 17 00:00:00 2001 From: Benjamin Peterson Date: Tue, 25 Sep 2012 11:42:35 -0400 Subject: [PATCH 171/201] fix test_compileall when run with -O[O] --- Lib/test/test_compileall.py | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/Lib/test/test_compileall.py b/Lib/test/test_compileall.py index 6ec105c9223..ba9fe465f83 100644 --- a/Lib/test/test_compileall.py +++ b/Lib/test/test_compileall.py @@ -134,15 +134,21 @@ def test_error(self): class CommandLineTests(unittest.TestCase): """Test compileall's CLI.""" + def _get_run_args(self, args): + interp_args = ['-S'] + if sys.flags.optimize: + interp_args.append({1 : '-O', 2 : '-OO'}[sys.flags.optimize]) + return interp_args + ['-m', 'compileall'] + list(args) + def assertRunOK(self, *args, **env_vars): rc, out, err = script_helper.assert_python_ok( - '-S', '-m', 'compileall', *args, **env_vars) + *self._get_run_args(args), **env_vars) self.assertEqual(b'', err) return out def assertRunNotOK(self, *args, **env_vars): rc, out, err = script_helper.assert_python_failure( - '-S', '-m', 'compileall', *args, **env_vars) + *self._get_run_args(args), **env_vars) return rc, out, err def assertCompiled(self, fn): @@ -198,7 +204,9 @@ def test_legacy_paths(self): self.assertRunOK('-b', '-q', self.pkgdir) # Verify the __pycache__ directory contents. self.assertFalse(os.path.exists(self.pkgdir_cachedir)) - expected = sorted(['__init__.py', '__init__.pyc', 'bar.py', 'bar.pyc']) + opt = 'c' if __debug__ else 'o' + expected = sorted(['__init__.py', '__init__.py' + opt, 'bar.py', + 'bar.py' + opt]) self.assertEqual(sorted(os.listdir(self.pkgdir)), expected) def test_multiple_runs(self): @@ -326,7 +334,7 @@ def test_include_on_stdin(self): f2 = script_helper.make_script(self.pkgdir, 'f2', '') f3 = script_helper.make_script(self.pkgdir, 'f3', '') f4 = script_helper.make_script(self.pkgdir, 'f4', '') - p = script_helper.spawn_python('-m', 'compileall', '-i', '-') + p = script_helper.spawn_python(*(self._get_run_args(()) + ['-i', '-'])) p.stdin.write((f3+os.linesep).encode('ascii')) script_helper.kill_python(p) self.assertNotCompiled(f1) From 1654d74e9a6250491bfb923424c4cf83af2af7a6 Mon Sep 17 00:00:00 2001 From: Benjamin Peterson Date: Tue, 25 Sep 2012 11:48:50 -0400 Subject: [PATCH 172/201] switch assertion to an explicit ValueError --- Lib/lib2to3/fixer_util.py | 4 ++-- Lib/lib2to3/refactor.py | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Lib/lib2to3/fixer_util.py b/Lib/lib2to3/fixer_util.py index 92f0da95162..2b5bb1dfd27 100644 --- a/Lib/lib2to3/fixer_util.py +++ b/Lib/lib2to3/fixer_util.py @@ -274,9 +274,9 @@ def find_root(node): """Find the top level namespace.""" # Scamper up to the top level namespace while node.type != syms.file_input: - assert node.parent, "Tree is insane! root found before "\ - "file_input node was found." node = node.parent + if not node: + raise ValueError("root found before file_input node was found.") return node def does_tree_import(package, name, node): diff --git a/Lib/lib2to3/refactor.py b/Lib/lib2to3/refactor.py index 7cd034a2695..38fb8ed9e22 100644 --- a/Lib/lib2to3/refactor.py +++ b/Lib/lib2to3/refactor.py @@ -445,7 +445,7 @@ def refactor_tree(self, tree, name): try: find_root(node) - except AssertionError: + except ValueError: # this node has been cut off from a # previous transformation ; skip continue From 3095f4724ec7ca735dfae5c9bd3925c27688a115 Mon Sep 17 00:00:00 2001 From: Benjamin Peterson Date: Tue, 25 Sep 2012 12:45:42 -0400 Subject: [PATCH 173/201] raise a ValueError instead of an AssertionError when pool is an invalid state --- Lib/multiprocessing/pool.py | 15 ++++++++------- Lib/test/test_multiprocessing.py | 3 ++- 2 files changed, 10 insertions(+), 8 deletions(-) diff --git a/Lib/multiprocessing/pool.py b/Lib/multiprocessing/pool.py index 9e07e32de6d..ec57939c45f 100644 --- a/Lib/multiprocessing/pool.py +++ b/Lib/multiprocessing/pool.py @@ -225,7 +225,6 @@ def map(self, func, iterable, chunksize=None): Apply `func` to each element in `iterable`, collecting the results in a list that is returned. ''' - assert self._state == RUN return self._map_async(func, iterable, mapstar, chunksize).get() def starmap(self, func, iterable, chunksize=None): @@ -234,7 +233,6 @@ def starmap(self, func, iterable, chunksize=None): be iterables as well and will be unpacked as arguments. Hence `func` and (a, b) becomes func(a, b). ''' - assert self._state == RUN return self._map_async(func, iterable, starmapstar, chunksize).get() def starmap_async(self, func, iterable, chunksize=None, callback=None, @@ -242,7 +240,6 @@ def starmap_async(self, func, iterable, chunksize=None, callback=None, ''' Asynchronous version of `starmap()` method. ''' - assert self._state == RUN return self._map_async(func, iterable, starmapstar, chunksize, callback, error_callback) @@ -250,7 +247,8 @@ def imap(self, func, iterable, chunksize=1): ''' Equivalent of `map()` -- can be MUCH slower than `Pool.map()`. ''' - assert self._state == RUN + if self._state != RUN: + raise ValueError("Pool not running") if chunksize == 1: result = IMapIterator(self._cache) self._taskqueue.put((((result._job, i, func, (x,), {}) @@ -268,7 +266,8 @@ def imap_unordered(self, func, iterable, chunksize=1): ''' Like `imap()` method but ordering of results is arbitrary. ''' - assert self._state == RUN + if self._state != RUN: + raise ValueError("Pool not running") if chunksize == 1: result = IMapUnorderedIterator(self._cache) self._taskqueue.put((((result._job, i, func, (x,), {}) @@ -287,7 +286,8 @@ def apply_async(self, func, args=(), kwds={}, callback=None, ''' Asynchronous version of `apply()` method. ''' - assert self._state == RUN + if self._state != RUN: + raise ValueError("Pool not running") result = ApplyResult(self._cache, callback, error_callback) self._taskqueue.put(([(result._job, None, func, args, kwds)], None)) return result @@ -297,7 +297,6 @@ def map_async(self, func, iterable, chunksize=None, callback=None, ''' Asynchronous version of `map()` method. ''' - assert self._state == RUN return self._map_async(func, iterable, mapstar, chunksize) def _map_async(self, func, iterable, mapper, chunksize=None, callback=None, @@ -305,6 +304,8 @@ def _map_async(self, func, iterable, mapper, chunksize=None, callback=None, ''' Helper function to implement map, starmap and their async counterparts. ''' + if self._state != RUN: + raise ValueError("Pool not running") if not hasattr(iterable, '__len__'): iterable = list(iterable) diff --git a/Lib/test/test_multiprocessing.py b/Lib/test/test_multiprocessing.py index b70783a1919..e313dd60622 100644 --- a/Lib/test/test_multiprocessing.py +++ b/Lib/test/test_multiprocessing.py @@ -1727,7 +1727,8 @@ def test_context(self): with multiprocessing.Pool(2) as p: r = p.map_async(sqr, L) self.assertEqual(r.get(), expected) - self.assertRaises(AssertionError, p.map_async, sqr, L) + print(p._state) + self.assertRaises(ValueError, p.map_async, sqr, L) def raising(): raise KeyError("key") From 468091954f9e9d46e9d4c7673a37ccb3b3b03eb5 Mon Sep 17 00:00:00 2001 From: Petri Lehtinen Date: Tue, 25 Sep 2012 21:58:51 +0300 Subject: [PATCH 174/201] #15222: test_mailbox: End message template in a newline --- Lib/test/test_mailbox.py | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/Lib/test/test_mailbox.py b/Lib/test/test_mailbox.py index b83e2c3d5af..a9c4c70c704 100644 --- a/Lib/test/test_mailbox.py +++ b/Lib/test/test_mailbox.py @@ -49,7 +49,7 @@ class TestMailbox(TestBase): maxDiff = None _factory = None # Overridden by subclasses to reuse tests - _template = 'From: foo\n\n%s' + _template = 'From: foo\n\n%s\n' def setUp(self): self._path = support.TESTFN @@ -228,7 +228,7 @@ def test_get(self): key0 = self._box.add(self._template % 0) msg = self._box.get(key0) self.assertEqual(msg['from'], 'foo') - self.assertEqual(msg.get_payload(), '0') + self.assertEqual(msg.get_payload(), '0\n') self.assertIs(self._box.get('foo'), None) self.assertIs(self._box.get('foo', False), False) self._box.close() @@ -236,14 +236,14 @@ def test_get(self): key1 = self._box.add(self._template % 1) msg = self._box.get(key1) self.assertEqual(msg['from'], 'foo') - self.assertEqual(msg.get_payload(), '1') + self.assertEqual(msg.get_payload(), '1\n') def test_getitem(self): # Retrieve message using __getitem__() key0 = self._box.add(self._template % 0) msg = self._box[key0] self.assertEqual(msg['from'], 'foo') - self.assertEqual(msg.get_payload(), '0') + self.assertEqual(msg.get_payload(), '0\n') self.assertRaises(KeyError, lambda: self._box['foo']) self._box.discard(key0) self.assertRaises(KeyError, lambda: self._box[key0]) @@ -255,7 +255,7 @@ def test_get_message(self): msg0 = self._box.get_message(key0) self.assertIsInstance(msg0, mailbox.Message) self.assertEqual(msg0['from'], 'foo') - self.assertEqual(msg0.get_payload(), '0') + self.assertEqual(msg0.get_payload(), '0\n') self._check_sample(self._box.get_message(key1)) def test_get_bytes(self): @@ -428,15 +428,15 @@ def test_pop(self): self.assertIn(key0, self._box) key1 = self._box.add(self._template % 1) self.assertIn(key1, self._box) - self.assertEqual(self._box.pop(key0).get_payload(), '0') + self.assertEqual(self._box.pop(key0).get_payload(), '0\n') self.assertNotIn(key0, self._box) self.assertIn(key1, self._box) key2 = self._box.add(self._template % 2) self.assertIn(key2, self._box) - self.assertEqual(self._box.pop(key2).get_payload(), '2') + self.assertEqual(self._box.pop(key2).get_payload(), '2\n') self.assertNotIn(key2, self._box) self.assertIn(key1, self._box) - self.assertEqual(self._box.pop(key1).get_payload(), '1') + self.assertEqual(self._box.pop(key1).get_payload(), '1\n') self.assertNotIn(key1, self._box) self.assertEqual(len(self._box), 0) @@ -631,7 +631,7 @@ def test_set_MM(self): msg_returned = self._box.get_message(key) self.assertEqual(msg_returned.get_subdir(), 'new') self.assertEqual(msg_returned.get_flags(), '') - self.assertEqual(msg_returned.get_payload(), '1') + self.assertEqual(msg_returned.get_payload(), '1\n') msg2 = mailbox.MaildirMessage(self._template % 2) msg2.set_info('2,S') self._box[key] = msg2 @@ -639,7 +639,7 @@ def test_set_MM(self): msg_returned = self._box.get_message(key) self.assertEqual(msg_returned.get_subdir(), 'new') self.assertEqual(msg_returned.get_flags(), 'S') - self.assertEqual(msg_returned.get_payload(), '3') + self.assertEqual(msg_returned.get_payload(), '3\n') def test_consistent_factory(self): # Add a message. @@ -993,20 +993,20 @@ def assertMailboxEmpty(self): def test_add_from_string(self): # Add a string starting with 'From ' to the mailbox - key = self._box.add('From foo@bar blah\nFrom: foo\n\n0') + key = self._box.add('From foo@bar blah\nFrom: foo\n\n0\n') self.assertEqual(self._box[key].get_from(), 'foo@bar blah') - self.assertEqual(self._box[key].get_payload(), '0') + self.assertEqual(self._box[key].get_payload(), '0\n') def test_add_from_bytes(self): # Add a byte string starting with 'From ' to the mailbox - key = self._box.add(b'From foo@bar blah\nFrom: foo\n\n0') + key = self._box.add(b'From foo@bar blah\nFrom: foo\n\n0\n') self.assertEqual(self._box[key].get_from(), 'foo@bar blah') - self.assertEqual(self._box[key].get_payload(), '0') + self.assertEqual(self._box[key].get_payload(), '0\n') def test_add_mbox_or_mmdf_message(self): # Add an mboxMessage or MMDFMessage for class_ in (mailbox.mboxMessage, mailbox.MMDFMessage): - msg = class_('From foo@bar blah\nFrom: foo\n\n0') + msg = class_('From foo@bar blah\nFrom: foo\n\n0\n') key = self._box.add(msg) def test_open_close_open(self): From 15c88490011743585134436c7ca0f5186e5dd2a3 Mon Sep 17 00:00:00 2001 From: Giampaolo Rodola' Date: Tue, 25 Sep 2012 12:00:04 -0700 Subject: [PATCH 175/201] fix contextlib.ExitStack typo in 3.3's whatsnew.rst --- Doc/whatsnew/3.3.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Doc/whatsnew/3.3.rst b/Doc/whatsnew/3.3.rst index c1c66428a26..8208f0714c5 100644 --- a/Doc/whatsnew/3.3.rst +++ b/Doc/whatsnew/3.3.rst @@ -1079,7 +1079,7 @@ collections classes. Aliases for ABCs are still present in the contextlib ---------- -:class:`~collections.ExitStack` now provides a solid foundation for +:class:`~contextlib.ExitStack` now provides a solid foundation for programmatic manipulation of context managers and similar cleanup functionality. Unlike the previous ``contextlib.nested`` API (which was deprecated and removed), the new API is designed to work correctly From f39884bb5a01c3fa9db74833d2d8a05bf0530315 Mon Sep 17 00:00:00 2001 From: Petri Lehtinen Date: Tue, 25 Sep 2012 22:00:32 +0300 Subject: [PATCH 176/201] #15222: Insert blank line after each message in mbox mailboxes --- Lib/mailbox.py | 44 ++++++++++++++++++++++++++++++++++------ Lib/test/test_mailbox.py | 23 +++++++++++++++++++++ Misc/NEWS | 2 ++ 3 files changed, 63 insertions(+), 6 deletions(-) diff --git a/Lib/mailbox.py b/Lib/mailbox.py index 282c0553ce9..c73fb95fe21 100644 --- a/Lib/mailbox.py +++ b/Lib/mailbox.py @@ -208,6 +208,9 @@ def _string_to_bytes(self, message): raise ValueError("String input must be ASCII-only; " "use bytes or a Message instead") + # Whether each message must end in a newline + _append_newline = False + def _dump_message(self, message, target, mangle_from_=False): # This assumes the target file is open in binary mode. """Dump message contents to target file.""" @@ -219,6 +222,9 @@ def _dump_message(self, message, target, mangle_from_=False): data = buffer.read() data = data.replace(b'\n', linesep) target.write(data) + if self._append_newline and not data.endswith(linesep): + # Make sure the message ends with a newline + target.write(linesep) elif isinstance(message, (str, bytes, io.StringIO)): if isinstance(message, io.StringIO): warnings.warn("Use of StringIO input is deprecated, " @@ -230,11 +236,15 @@ def _dump_message(self, message, target, mangle_from_=False): message = message.replace(b'\nFrom ', b'\n>From ') message = message.replace(b'\n', linesep) target.write(message) + if self._append_newline and not message.endswith(linesep): + # Make sure the message ends with a newline + target.write(linesep) elif hasattr(message, 'read'): if hasattr(message, 'buffer'): warnings.warn("Use of text mode files is deprecated, " "use a binary mode file instead", DeprecationWarning, 3) message = message.buffer + lastline = None while True: line = message.readline() # Universal newline support. @@ -248,6 +258,10 @@ def _dump_message(self, message, target, mangle_from_=False): line = b'>From ' + line[5:] line = line.replace(b'\n', linesep) target.write(line) + lastline = line + if self._append_newline and lastline and not lastline.endswith(linesep): + # Make sure the message ends with a newline + target.write(linesep) else: raise TypeError('Invalid message type: %s' % type(message)) @@ -833,30 +847,48 @@ class mbox(_mboxMMDF): _mangle_from_ = True + # All messages must end in a newline character, and + # _post_message_hooks outputs an empty line between messages. + _append_newline = True + def __init__(self, path, factory=None, create=True): """Initialize an mbox mailbox.""" self._message_factory = mboxMessage _mboxMMDF.__init__(self, path, factory, create) - def _pre_message_hook(self, f): - """Called before writing each message to file f.""" - if f.tell() != 0: - f.write(linesep) + def _post_message_hook(self, f): + """Called after writing each message to file f.""" + f.write(linesep) def _generate_toc(self): """Generate key-to-(start, stop) table of contents.""" starts, stops = [], [] + last_was_empty = False self._file.seek(0) while True: line_pos = self._file.tell() line = self._file.readline() if line.startswith(b'From '): if len(stops) < len(starts): - stops.append(line_pos - len(linesep)) + if last_was_empty: + stops.append(line_pos - len(linesep)) + else: + # The last line before the "From " line wasn't + # blank, but we consider it a start of a + # message anyway. + stops.append(line_pos) starts.append(line_pos) + last_was_empty = False elif not line: - stops.append(line_pos) + if last_was_empty: + stops.append(line_pos - len(linesep)) + else: + stops.append(line_pos) break + elif line == linesep: + last_was_empty = True + else: + last_was_empty = False self._toc = dict(enumerate(zip(starts, stops))) self._next_key = len(self._toc) self._file_length = self._file.tell() diff --git a/Lib/test/test_mailbox.py b/Lib/test/test_mailbox.py index a9c4c70c704..c72eb1c949c 100644 --- a/Lib/test/test_mailbox.py +++ b/Lib/test/test_mailbox.py @@ -1113,6 +1113,29 @@ def test_file_perms(self): perms = st.st_mode self.assertFalse((perms & 0o111)) # Execute bits should all be off. + def test_terminating_newline(self): + message = email.message.Message() + message['From'] = 'john@example.com' + message.set_payload('No newline at the end') + i = self._box.add(message) + + # A newline should have been appended to the payload + message = self._box.get(i) + self.assertEqual(message.get_payload(), 'No newline at the end\n') + + def test_message_separator(self): + # Check there's always a single blank line after each message + self._box.add('From: foo\n\n0') # No newline at the end + with open(self._path) as f: + data = f.read() + self.assertEqual(data[-3:], '0\n\n') + + self._box.add('From: foo\n\n0\n') # Newline at the end + with open(self._path) as f: + data = f.read() + self.assertEqual(data[-3:], '0\n\n') + + class TestMMDF(_TestMboxMMDF, unittest.TestCase): _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) diff --git a/Misc/NEWS b/Misc/NEWS index 2285f8c285f..485b73f805d 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -123,6 +123,8 @@ Core and Builtins Library ------- +- Issue #15222: Insert blank line after each message in mbox mailboxes + - Issue #16013: Fix CSV Reader parsing issue with ending quote characters. Patch by Serhiy Storchaka. From 288717a2ac9500759f3c82a32b907633ec8782c4 Mon Sep 17 00:00:00 2001 From: Brett Cannon Date: Tue, 25 Sep 2012 15:23:07 -0400 Subject: [PATCH 177/201] Shift a deprecation from the porting section to the deprecation section. --- Doc/whatsnew/3.3.rst | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/Doc/whatsnew/3.3.rst b/Doc/whatsnew/3.3.rst index c1c66428a26..ef8f15ccc59 100644 --- a/Doc/whatsnew/3.3.rst +++ b/Doc/whatsnew/3.3.rst @@ -1827,6 +1827,15 @@ Deprecated Python modules, functions and methods * :class:`abc.abstractstaticmethod` has been deprecated, use :class:`staticmethod` with :func:`abc.abstractmethod` instead. +* :mod:`imoprtlib` package: + + * :meth:`importlib.abc.SourceLoader.path_mtime` is now deprecated in favour of + :meth:`importlib.abc.SourceLoader.path_stats` as bytecode files now store + both the modification time and size of the source file the bytecode file was + compiled from. + + + Deprecated functions and types of the C API @@ -1958,11 +1967,6 @@ Porting Python code :attr:`sys.path_importer_cache` where it repesents the use of implicit finders, but semantically it should not change anything. -* :meth:`importlib.abc.SourceLoader.path_mtime` is now deprecated in favour of - :meth:`importlib.abc.SourceLoader.path_stats` as bytecode files now store - both the modification time and size of the source file the bytecode file was - compiled from. - * :class:`importlib.abc.Finder` no longer specifies a `find_module()` abstract method that must be implemented. If you were relying on subclasses to implement that method, make sure to check for the method's existence first. From 49379c05cd11ae075acf6e84824594bad785ef32 Mon Sep 17 00:00:00 2001 From: Giampaolo Rodola' Date: Tue, 25 Sep 2012 12:32:46 -0700 Subject: [PATCH 178/201] mention new MLSD support for ftplib in 3.3 whatsnew --- Doc/whatsnew/3.3.rst | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/Doc/whatsnew/3.3.rst b/Doc/whatsnew/3.3.rst index 8208f0714c5..c0e0e13202c 100644 --- a/Doc/whatsnew/3.3.rst +++ b/Doc/whatsnew/3.3.rst @@ -1228,13 +1228,18 @@ API changes ftplib ------ -The :class:`~ftplib.FTP_TLS` class now provides a new -:func:`~ftplib.FTP_TLS.ccc` function to revert control channel back to -plaintext. This can be useful to take advantage of firewalls that know how to -handle NAT with non-secure FTP without opening fixed ports. +* The :class:`~ftplib.FTP_TLS` class now provides a new + :func:`~ftplib.FTP_TLS.ccc` function to revert control channel back to + plaintext. This can be useful to take advantage of firewalls that know how to + handle NAT with non-secure FTP without opening fixed ports. -(Contributed by Giampaolo Rodolà in :issue:`12139`) + (Contributed by Giampaolo Rodolà in :issue:`12139`) +* Added :meth:`ftplib.FTP.mlsd` method which provides a parsable directory + listing format and deprecates :meth:`ftplib.FTP.nlst` and + :meth:`ftplib.FTP.dir`. + + (Contributed by Giampaolo Rodolà in :issue:`11072`) gc -- From 52c62d8697f96b774c3582a23cb7e7a05e9b8aa7 Mon Sep 17 00:00:00 2001 From: Benjamin Peterson Date: Wed, 26 Sep 2012 00:25:10 -0400 Subject: [PATCH 179/201] rephrase --- Lib/importlib/_bootstrap.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Lib/importlib/_bootstrap.py b/Lib/importlib/_bootstrap.py index 5c4d2c6adc6..224b4dc7279 100644 --- a/Lib/importlib/_bootstrap.py +++ b/Lib/importlib/_bootstrap.py @@ -419,8 +419,8 @@ def cache_from_source(path, debug_override=None): .pyc/.pyo file calculated as if the .py file were imported. The extension will be .pyc unless sys.flags.optimize is non-zero, then it will be .pyo. - If debug_override is not None, then it must be a boolean and is taken as - the value of bool(sys.flags.optimize) instead. + If debug_override is not None, then it must be a boolean and is used in + place of sys.flags.optimize. If sys.implementation.cache_tag is None then NotImplementedError is raised. From fc349216d717418df43164b24fd07323f336b360 Mon Sep 17 00:00:00 2001 From: Georg Brandl Date: Wed, 26 Sep 2012 13:11:48 +0200 Subject: [PATCH 180/201] Closes #16052: fix typo. Patch by Lars Buitinck. --- Doc/whatsnew/3.3.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Doc/whatsnew/3.3.rst b/Doc/whatsnew/3.3.rst index d4b9f89c833..73d112a8f96 100644 --- a/Doc/whatsnew/3.3.rst +++ b/Doc/whatsnew/3.3.rst @@ -1832,7 +1832,7 @@ Deprecated Python modules, functions and methods * :class:`abc.abstractstaticmethod` has been deprecated, use :class:`staticmethod` with :func:`abc.abstractmethod` instead. -* :mod:`imoprtlib` package: +* :mod:`importlib` package: * :meth:`importlib.abc.SourceLoader.path_mtime` is now deprecated in favour of :meth:`importlib.abc.SourceLoader.path_stats` as bytecode files now store From 461f41df5bc7a1a35b2ad7ae8654dbc953ca1dc6 Mon Sep 17 00:00:00 2001 From: Ezio Melotti Date: Wed, 26 Sep 2012 17:43:23 +0300 Subject: [PATCH 181/201] Add a few entries to whatsnew/3.3.rst. --- Doc/whatsnew/3.3.rst | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/Doc/whatsnew/3.3.rst b/Doc/whatsnew/3.3.rst index 73d112a8f96..97672378428 100644 --- a/Doc/whatsnew/3.3.rst +++ b/Doc/whatsnew/3.3.rst @@ -1257,6 +1257,31 @@ side channel attacks on digests through timing analysis. (Contributed by Nick Coghlan and Christian Heimes in issue:`15061`) +html.entities +------------- + +A new :data:`~html.entities.html5` dictionary that maps HTML5 named character +references to the equivalent Unicode character(s) (e.g. ``html5['gt;'] == '>'``) +has been added to the :mod:`html.entities` module. The dictionary is now also +used by :class:`~html.parser.HTMLParser`. + +(Contributed by Ezio Melotti in :issue:`11113` and :issue:`15156`) + + +html.parser +----------- + +:class:`~html.parser.HTMLParser` is now able to parse broken markup without +raising errors, therefore the *strict* argument of the constructor and the +:exc:`~html.parser.HTMLParseError` exception are now deprecated. +The ability to parse broken markup is the result of a number of bug fixes that +are also available on the latest bug fix releases of Python 2.7/3.2. + +(Contributed by Ezio Melotti in :issue:`15114`, and :issue:`14538`, +:issue:`13993`, :issue:`13960`, :issue:`13358`, :issue:`1745761`, +:issue:`755670`, :issue:`13357`, :issue:`12629`, :issue:`1200313`, +:issue:`670664`, :issue:`13273`, :issue:`12888`, :issue:`7311`) + imaplib ------- @@ -1699,6 +1724,16 @@ The new functions `types.new_class` and `types.prepare_class` provide support for PEP 3115 compliant dynamic type creation. (:issue:`14588`) +unittest +-------- + +:meth:`.assertRaises`, :meth:`.assertRaisesRegex`, :meth:`.assertWarns`, and +:meth:`.assertWarnsRegex` now accept a keyword argument *msg* when used as +context managers. + +(Contributed by Ezio Melotti and Winston Ewert in :issue:`10775`) + + urllib ------ From c7e139b431b0180d6be9b9d5bfe45b37ea01a14a Mon Sep 17 00:00:00 2001 From: Ezio Melotti Date: Wed, 26 Sep 2012 20:01:34 +0300 Subject: [PATCH 182/201] #1087: use proper skips in test_os. --- Lib/test/test_os.py | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/Lib/test/test_os.py b/Lib/test/test_os.py index 6219eff7672..7d6b3779a42 100644 --- a/Lib/test/test_os.py +++ b/Lib/test/test_os.py @@ -514,23 +514,23 @@ def _empty_mapping(self): return os.environ # Bug 1110478 + @unittest.skipUnless(os.path.exists('/bin/sh'), 'requires /bin/sh') def test_update2(self): os.environ.clear() - if os.path.exists("/bin/sh"): - os.environ.update(HELLO="World") - with os.popen("/bin/sh -c 'echo $HELLO'") as popen: - value = popen.read().strip() - self.assertEqual(value, "World") + os.environ.update(HELLO="World") + with os.popen("/bin/sh -c 'echo $HELLO'") as popen: + value = popen.read().strip() + self.assertEqual(value, "World") + @unittest.skipUnless(os.path.exists('/bin/sh'), 'requires /bin/sh') def test_os_popen_iter(self): - if os.path.exists("/bin/sh"): - with os.popen( - "/bin/sh -c 'echo \"line1\nline2\nline3\"'") as popen: - it = iter(popen) - self.assertEqual(next(it), "line1\n") - self.assertEqual(next(it), "line2\n") - self.assertEqual(next(it), "line3\n") - self.assertRaises(StopIteration, next, it) + with os.popen( + "/bin/sh -c 'echo \"line1\nline2\nline3\"'") as popen: + it = iter(popen) + self.assertEqual(next(it), "line1\n") + self.assertEqual(next(it), "line2\n") + self.assertEqual(next(it), "line3\n") + self.assertRaises(StopIteration, next, it) # Verify environ keys and values from the OS are of the # correct str type. From c4bacd364651721206594f24833becd1e3217832 Mon Sep 17 00:00:00 2001 From: Nick Coghlan Date: Thu, 27 Sep 2012 19:58:31 +1000 Subject: [PATCH 183/201] Mention the Unicode version bump in What's New --- Doc/whatsnew/3.3.rst | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Doc/whatsnew/3.3.rst b/Doc/whatsnew/3.3.rst index 97672378428..385ef6e5121 100644 --- a/Doc/whatsnew/3.3.rst +++ b/Doc/whatsnew/3.3.rst @@ -850,6 +850,8 @@ Some smaller changes made to the core Python language are: (Contributed by Ezio Melotti in :issue:`12753`) +* Unicode database updated to UCD version 6.1.0 + * Equality comparisons on :func:`range` objects now return a result reflecting the equality of the underlying sequences generated by those range objects. From 3658cb3012fa14e4594ed62a227115fbbd15da26 Mon Sep 17 00:00:00 2001 From: Nick Coghlan Date: Thu, 27 Sep 2012 20:07:45 +1000 Subject: [PATCH 184/201] Tell people the *new* behaviour, not just the old behaviour --- Doc/whatsnew/3.3.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Doc/whatsnew/3.3.rst b/Doc/whatsnew/3.3.rst index 385ef6e5121..19ecc38846d 100644 --- a/Doc/whatsnew/3.3.rst +++ b/Doc/whatsnew/3.3.rst @@ -1121,7 +1121,7 @@ datetime -------- * Equality comparisons between naive and aware :class:`~datetime.datetime` - instances don't raise :exc:`TypeError`. + instances now return :const:`False` instead of raising :exc:`TypeError`. * New :meth:`datetime.datetime.timestamp` method: Return POSIX timestamp corresponding to the :class:`~datetime.datetime` instance. * The :meth:`datetime.datetime.strftime` method supports formatting years From 7c95bb35e40a1bb598a259248b5a9880d8716556 Mon Sep 17 00:00:00 2001 From: Mark Dickinson Date: Thu, 27 Sep 2012 19:38:59 +0100 Subject: [PATCH 185/201] Issue #16060: Fix a double DECREF in int() implementation. Thanks Serhiy Storchaka. --- Lib/test/test_int.py | 12 ++++++++++++ Misc/NEWS | 3 +++ Objects/abstract.c | 7 +++---- 3 files changed, 18 insertions(+), 4 deletions(-) diff --git a/Lib/test/test_int.py b/Lib/test/test_int.py index 437e323cbcc..227759f2696 100644 --- a/Lib/test/test_int.py +++ b/Lib/test/test_int.py @@ -305,6 +305,18 @@ def __trunc__(self): self.fail("Failed to raise TypeError with %s" % ((base, trunc_result_base),)) + # Regression test for bugs.python.org/issue16060. + class BadInt(trunc_result_base): + def __int__(self): + return 42.0 + + class TruncReturnsBadInt(base): + def __trunc__(self): + return BadInt() + + with self.assertRaises(TypeError): + int(TruncReturnsBadInt()) + def test_error_message(self): testlist = ('\xbd', '123\xbd', ' 123 456 ') for s in testlist: diff --git a/Misc/NEWS b/Misc/NEWS index b1e59b841af..c0e6508d214 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -10,6 +10,9 @@ What's New in Python 3.3.1? Core and Builtins ----------------- +- Issue #16060: Fix refcounting bug when __trunc__ returns an object + whose __int__ gives a non-integer. Patch by Serhiy Storchaka. + - Issue #16046: Fix loading sourceless legacy pyos. - Issue #15379: Fix passing of non-BMP characters as integers for the charmap diff --git a/Objects/abstract.c b/Objects/abstract.c index ed5e196843c..a2737dd5f4f 100644 --- a/Objects/abstract.c +++ b/Objects/abstract.c @@ -1228,11 +1228,10 @@ convert_integral_to_int(PyObject *integral, const char *error_format) nb = Py_TYPE(integral)->tp_as_number; if (nb->nb_int) { PyObject *as_int = nb->nb_int(integral); - Py_DECREF(integral); - if (!as_int) - return NULL; - if (PyLong_Check(as_int)) + if (!as_int || PyLong_Check(as_int)) { + Py_DECREF(integral); return as_int; + } Py_DECREF(as_int); } PyErr_Format(PyExc_TypeError, error_format, Py_TYPE(integral)->tp_name); From 43f8f4cf18d3d2ffbc34f259d884cc71e064b584 Mon Sep 17 00:00:00 2001 From: Benjamin Peterson Date: Thu, 27 Sep 2012 18:10:17 -0400 Subject: [PATCH 186/201] renmae test method to avoid conflict (#16056) --- Lib/test/test_types.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Lib/test/test_types.py b/Lib/test/test_types.py index 31ebd9c603b..3f5ac98a0e3 100644 --- a/Lib/test/test_types.py +++ b/Lib/test/test_types.py @@ -791,7 +791,7 @@ def func(ns): self.assertEqual(C.y, 1) self.assertEqual(C.z, 2) - def test_new_class_exec_body(self): + def test_new_class_metaclass_keywords(self): #Test that keywords are passed to the metaclass: def meta_func(name, bases, ns, **kw): return name, bases, ns, kw From 57491e0703ab46f6f4f43e534750611d96be1aa2 Mon Sep 17 00:00:00 2001 From: Chris Jerdonek Date: Fri, 28 Sep 2012 00:10:44 -0700 Subject: [PATCH 187/201] Issue #16036: Improve documentation of built-in int()'s signature and arguments. --- Doc/library/functions.rst | 19 ++++++++++++------- Misc/NEWS | 3 +++ 2 files changed, 15 insertions(+), 7 deletions(-) diff --git a/Doc/library/functions.rst b/Doc/library/functions.rst index 17a0d1bccb9..1ee8540b096 100644 --- a/Doc/library/functions.rst +++ b/Doc/library/functions.rst @@ -627,14 +627,19 @@ are always available. They are listed here in alphabetical order. to provide elaborate line editing and history features. -.. function:: int([number | string[, base]]) +.. function:: int(x=0) + int(x, base=10) - Convert a number or string to an integer. If no arguments are given, return - ``0``. If a number is given, return ``number.__int__()``. Conversion of - floating point numbers to integers truncates towards zero. A string must be - a base-radix integer literal optionally preceded by '+' or '-' (with no space - in between) and optionally surrounded by whitespace. A base-n literal - consists of the digits 0 to n-1, with 'a' to 'z' (or 'A' to 'Z') having + Convert a number or string *x* to an integer, or return ``0`` if no + arguments are given. If *x* is a number, return :meth:`x.__int__() + `. For floating point numbers, this truncates towards zero. + + If *x* is not a number or if *base* is given, then *x* must be a string, + :class:`bytes`, or :class:`bytearray` instance representing an :ref:`integer + literal ` in radix *base*. Optionally, the literal can be + preceded by ``+`` or ``-`` (with no space in between) and surrounded by + whitespace. A base-n literal consists of the digits 0 to n-1, with ``a`` + to ``z`` (or ``A`` to ``Z``) having values 10 to 35. The default *base* is 10. The allowed values are 0 and 2-36. Base-2, -8, and -16 literals can be optionally prefixed with ``0b``/``0B``, ``0o``/``0O``, or ``0x``/``0X``, as with integer literals in code. Base 0 diff --git a/Misc/NEWS b/Misc/NEWS index 485b73f805d..26d0134e4da 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -591,6 +591,9 @@ Build Documentation ------------- +- Issue #16036: Improve documentation of built-in int()'s signature and + arguments. + - Issue #15935: Clarification of argparse docs, re: add_argument() type and default arguments. Patch contributed by Chris Jerdonek. From 7a1901f86129dc15dc9004da02907eb1c90f32fa Mon Sep 17 00:00:00 2001 From: Michael Foord Date: Fri, 28 Sep 2012 14:14:03 +0100 Subject: [PATCH 188/201] Closes issue #12376 : Pass on parameters in unittest.TextTestResult.__init__ super call --- Lib/unittest/runner.py | 2 +- Lib/unittest/test/test_runner.py | 13 +++++++++++++ Misc/NEWS | 2 ++ 3 files changed, 16 insertions(+), 1 deletion(-) diff --git a/Lib/unittest/runner.py b/Lib/unittest/runner.py index 10c47784340..28b8865978a 100644 --- a/Lib/unittest/runner.py +++ b/Lib/unittest/runner.py @@ -35,7 +35,7 @@ class TextTestResult(result.TestResult): separator2 = '-' * 70 def __init__(self, stream, descriptions, verbosity): - super(TextTestResult, self).__init__() + super(TextTestResult, self).__init__(stream, descriptions, verbosity) self.stream = stream self.showAll = verbosity > 1 self.dots = verbosity == 1 diff --git a/Lib/unittest/test/test_runner.py b/Lib/unittest/test/test_runner.py index 8e95410e9ee..aed1e76940a 100644 --- a/Lib/unittest/test/test_runner.py +++ b/Lib/unittest/test/test_runner.py @@ -149,6 +149,19 @@ def test_init(self): self.assertEqual(runner.resultclass, unittest.TextTestResult) + def test_multiple_inheritance(self): + class AResult(unittest.TestResult): + def __init__(self, stream, descriptions, verbosity): + super(AResult, self).__init__(stream, descriptions, verbosity) + + class ATextResult(unittest.TextTestResult, AResult): + pass + + # This used to raise an exception due to TextTestResult not passing + # on arguments in its __init__ super call + ATextResult(None, None, 1) + + def testBufferAndFailfast(self): class Test(unittest.TestCase): def testFoo(self): diff --git a/Misc/NEWS b/Misc/NEWS index 26d0134e4da..cb1df24f5a5 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -123,6 +123,8 @@ Core and Builtins Library ------- +- Issue #12376: Pass on parameters in TextTestResult.__init__ super call + - Issue #15222: Insert blank line after each message in mbox mailboxes - Issue #16013: Fix CSV Reader parsing issue with ending quote characters. From 74cca70ce28859906cfbd4e95520c6add6461d9e Mon Sep 17 00:00:00 2001 From: Nick Coghlan Date: Fri, 28 Sep 2012 18:50:38 +0530 Subject: [PATCH 189/201] Now that it's possible, avoid timing attacks in the crypt module examples) --- Doc/library/crypt.rst | 10 +++++++--- Doc/library/crypto.rst | 1 + 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/Doc/library/crypt.rst b/Doc/library/crypt.rst index 1ba2ed34270..b4c90cd5923 100644 --- a/Doc/library/crypt.rst +++ b/Doc/library/crypt.rst @@ -121,11 +121,14 @@ The :mod:`crypt` module defines the following functions: Examples -------- -A simple example illustrating typical use:: +A simple example illustrating typical use (a constant-time comparison +operation is needed to limit exposure to timing attacks. +:func:`hmac.compare_digest` is suitable for this purpose):: import pwd import crypt import getpass + from hmac import compare_digest as compare_hash def login(): username = input('Python login: ') @@ -134,7 +137,7 @@ A simple example illustrating typical use:: if cryptedpasswd == 'x' or cryptedpasswd == '*': raise ValueError('no support for shadow passwords') cleartext = getpass.getpass() - return crypt.crypt(cleartext, cryptedpasswd) == cryptedpasswd + return compare_hash(crypt.crypt(cleartext, cryptedpasswd), cryptedpasswd) else: return True @@ -142,7 +145,8 @@ To generate a hash of a password using the strongest available method and check it against the original:: import crypt + from hmac import compare_digest as compare_hash hashed = crypt.crypt(plaintext) - if hashed != crypt.crypt(plaintext, hashed): + if not compare_hash(hashed, crypt.crypt(plaintext, hashed)): raise ValueError("hashed version doesn't validate against original") diff --git a/Doc/library/crypto.rst b/Doc/library/crypto.rst index a233561d1ec..469ede4982c 100644 --- a/Doc/library/crypto.rst +++ b/Doc/library/crypto.rst @@ -8,6 +8,7 @@ Cryptographic Services The modules described in this chapter implement various algorithms of a cryptographic nature. They are available at the discretion of the installation. +On Unix systems, the :mod:`crypt` module may also be available. Here's an overview: From 207d22993320c74732e996e5d4843874d2640bcd Mon Sep 17 00:00:00 2001 From: Michael Foord Date: Fri, 28 Sep 2012 14:40:44 +0100 Subject: [PATCH 190/201] urllib.parse.urlencode doc updarte. Closes issue 15593 --- Doc/library/urllib.parse.rst | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/Doc/library/urllib.parse.rst b/Doc/library/urllib.parse.rst index bc1da62b3f2..b6f241c287b 100644 --- a/Doc/library/urllib.parse.rst +++ b/Doc/library/urllib.parse.rst @@ -141,8 +141,9 @@ or on combining URL components into a URL string. percent-encoded sequences into Unicode characters, as accepted by the :meth:`bytes.decode` method. - Use the :func:`urllib.parse.urlencode` function to convert such - dictionaries into query strings. + Use the :func:`urllib.parse.urlencode` function (with the ``doseq`` + parameter set to ``True``) to convert such dictionaries into query + strings. .. versionchanged:: 3.2 From 0e1af282b8e747c8dc032ea0dbda53f3f4ef17d4 Mon Sep 17 00:00:00 2001 From: Ezio Melotti Date: Fri, 28 Sep 2012 16:43:40 +0300 Subject: [PATCH 191/201] Fix typo. --- Objects/setobject.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Objects/setobject.c b/Objects/setobject.c index 3e91572d32b..723679a7e6e 100644 --- a/Objects/setobject.c +++ b/Objects/setobject.c @@ -831,10 +831,10 @@ setiter_reduce(setiterobject *si) if (!list) return NULL; - /* copy the itertor state */ + /* copy the iterator state */ tmp = *si; Py_XINCREF(tmp.si_set); - + /* iterate the temporary into a list */ for(;;) { PyObject *element = setiter_iternext(&tmp); From fd448daf770de7ceb5f433c40a14c9a889dffa92 Mon Sep 17 00:00:00 2001 From: Chris Jerdonek Date: Fri, 28 Sep 2012 07:07:12 -0700 Subject: [PATCH 192/201] Close issue #16073: fix map() example in list comprehension documentation. Thanks for the e-mail report to docs@. --- Doc/tutorial/datastructures.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Doc/tutorial/datastructures.rst b/Doc/tutorial/datastructures.rst index 7ec044c50d1..12b5c57aa55 100644 --- a/Doc/tutorial/datastructures.rst +++ b/Doc/tutorial/datastructures.rst @@ -181,7 +181,7 @@ We can obtain the same result with:: squares = [x**2 for x in range(10)] -This is also equivalent to ``squares = map(lambda x: x**2, range(10))``, +This is also equivalent to ``squares = list(map(lambda x: x**2, range(10)))``, but it's more concise and readable. A list comprehension consists of brackets containing an expression followed From d38e6e516de30158e4bb4e32961c3889f2f69339 Mon Sep 17 00:00:00 2001 From: Michael Foord Date: Fri, 28 Sep 2012 15:14:37 +0100 Subject: [PATCH 193/201] Closes issue 16064. No longer hard code executable name in unittest help output. --- Lib/unittest/__main__.py | 9 ++++++++- Misc/NEWS | 2 ++ 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/Lib/unittest/__main__.py b/Lib/unittest/__main__.py index 7320050ae95..798ebc0f530 100644 --- a/Lib/unittest/__main__.py +++ b/Lib/unittest/__main__.py @@ -2,7 +2,14 @@ import sys if sys.argv[0].endswith("__main__.py"): - sys.argv[0] = "python -m unittest" + import os.path + # We change sys.argv[0] to make help message more useful + # use executable without path, unquoted + # (it's just a hint anyway) + # (if you have spaces in your executable you get what you deserve!) + executable = os.path.basename(sys.executable) + sys.argv[0] = executable + " -m unittest" + del os __unittest = True diff --git a/Misc/NEWS b/Misc/NEWS index 33ea2669341..fe0be742030 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -36,6 +36,8 @@ Core and Builtins Library ------- +- Issue #16064: unittest -m claims executable is "python", not "python3" + - Issue #15222: Insert blank line after each message in mbox mailboxes - Issue #16013: Fix CSV Reader parsing issue with ending quote characters. From 6fb204af790dffd3829c62c4266383e84b48cc04 Mon Sep 17 00:00:00 2001 From: Stefan Krah Date: Fri, 28 Sep 2012 16:18:54 +0200 Subject: [PATCH 194/201] Issue #16080: Use run_with_locale() decorator to reset the locale properly. --- Lib/test/test_decimal.py | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/Lib/test/test_decimal.py b/Lib/test/test_decimal.py index 3ca5927f79e..b2ec1a6e07a 100644 --- a/Lib/test/test_decimal.py +++ b/Lib/test/test_decimal.py @@ -34,7 +34,8 @@ import locale from test.support import (run_unittest, run_doctest, is_resource_enabled, requires_IEEE_754) -from test.support import check_warnings, import_fresh_module, TestFailed +from test.support import (check_warnings, import_fresh_module, TestFailed, + run_with_locale) import random import time import warnings @@ -1136,18 +1137,13 @@ def get_fmt(x, override=None, fmt='n'): self.assertEqual(get_fmt(Decimal('-1.5'), dotsep_wide, '020n'), '-0\u00b4000\u00b4000\u00b4000\u00b4001\u00bf5') + @run_with_locale('LC_ALL', 'ps_AF') def test_wide_char_separator_decimal_point(self): # locale with wide char separator and decimal point Decimal = self.decimal.Decimal - try: - locale.setlocale(locale.LC_ALL, 'ps_AF') - except locale.Error: - return - self.assertEqual(format(Decimal('100000000.123'), 'n'), '100\u066c000\u066c000\u066b123') - locale.resetlocale() class CFormatTest(FormatTest): decimal = C From 33b5769db550b0e318f7b9fea097c6d1386d02ba Mon Sep 17 00:00:00 2001 From: Jesus Cea Date: Fri, 28 Sep 2012 16:34:45 +0200 Subject: [PATCH 195/201] Closes #15953: Incorrect some fields declaration in the PyTypeObject documentation --- Doc/extending/newtypes.rst | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Doc/extending/newtypes.rst b/Doc/extending/newtypes.rst index 8f1825383ec..3001415188b 100644 --- a/Doc/extending/newtypes.rst +++ b/Doc/extending/newtypes.rst @@ -1299,9 +1299,9 @@ that the slots are present and should be checked by the interpreter. (The flag bit does not indicate that the slot values are non-*NULL*. The flag may be set to indicate the presence of a slot, but a slot may still be unfilled.) :: - PyNumberMethods tp_as_number; - PySequenceMethods tp_as_sequence; - PyMappingMethods tp_as_mapping; + PyNumberMethods *tp_as_number; + PySequenceMethods *tp_as_sequence; + PyMappingMethods *tp_as_mapping; If you wish your object to be able to act like a number, a sequence, or a mapping object, then you place the address of a structure that implements the C From 811b981fcbf8aea829093f69f91ee930b8c12710 Mon Sep 17 00:00:00 2001 From: Georg Brandl Date: Fri, 28 Sep 2012 17:10:11 +0200 Subject: [PATCH 196/201] Move NEWS items from 3.3.0 to that section, to ease merging from the release clone later. --- Misc/NEWS | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/Misc/NEWS b/Misc/NEWS index c3fc68605b1..1600ee0368c 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -10,11 +10,6 @@ What's New in Python 3.3.1? Core and Builtins ----------------- -- Issue #16060: Fix refcounting bug when __trunc__ returns an object - whose __int__ gives a non-integer. Patch by Serhiy Storchaka. - -- Issue #16046: Fix loading sourceless legacy pyos. - - Issue #15379: Fix passing of non-BMP characters as integers for the charmap decoder (already working as unicode strings). Patch by Serhiy Storchaka. @@ -85,9 +80,6 @@ Library Extension Modules ----------------- -- Issue #16012: Fix a regression in pyexpat. The parser's UseForeignDTD() - method doesn't require an argument again. - Tests ----- @@ -131,9 +123,20 @@ What's New in Python 3.3.0? Core and Builtins ----------------- +- Issue #16046: Fix loading sourceless legacy pyos. + +- Issue #16060: Fix refcounting bug when __trunc__ returns an object + whose __int__ gives a non-integer. Patch by Serhiy Storchaka. + Library ------- +Extension Modules +----------------- + +- Issue #16012: Fix a regression in pyexpat. The parser's UseForeignDTD() + method doesn't require an argument again. + What's New in Python 3.3.0 Release Candidate 3? =============================================== From 28d591ceef337cc37c4b44d7958dea3f59d92018 Mon Sep 17 00:00:00 2001 From: Michael Foord Date: Fri, 28 Sep 2012 16:15:22 +0100 Subject: [PATCH 197/201] Closes issue 15323. Improve failure message of Mock.assert_called_once_with --- Doc/library/unittest.mock.rst | 4 ++-- Lib/unittest/mock.py | 4 ++-- Lib/unittest/test/testmock/testmock.py | 7 +++++++ Misc/NEWS | 2 ++ 4 files changed, 13 insertions(+), 4 deletions(-) diff --git a/Doc/library/unittest.mock.rst b/Doc/library/unittest.mock.rst index bed698afe40..3e500311158 100644 --- a/Doc/library/unittest.mock.rst +++ b/Doc/library/unittest.mock.rst @@ -276,7 +276,7 @@ the `new_callable` argument to `patch`. >>> mock.assert_called_once_with('foo', bar='baz') Traceback (most recent call last): ... - AssertionError: Expected to be called once. Called 2 times. + AssertionError: Expected 'mock' to be called once. Called 2 times. .. method:: assert_any_call(*args, **kwargs) @@ -2020,7 +2020,7 @@ extremely handy: :meth:`~Mock.assert_called_with` and >>> mock.assert_called_once_with(1, 2, 3) Traceback (most recent call last): ... - AssertionError: Expected to be called once. Called 2 times. + AssertionError: Expected 'mock' to be called once. Called 2 times. Because mocks auto-create attributes on demand, and allow you to call them with arbitrary arguments, if you misspell one of these assert methods then diff --git a/Lib/unittest/mock.py b/Lib/unittest/mock.py index 95570aa3a99..324cf399b37 100644 --- a/Lib/unittest/mock.py +++ b/Lib/unittest/mock.py @@ -731,8 +731,8 @@ def assert_called_once_with(_mock_self, *args, **kwargs): arguments.""" self = _mock_self if not self.call_count == 1: - msg = ("Expected to be called once. Called %s times." % - self.call_count) + msg = ("Expected '%s' to be called once. Called %s times." % + (self._mock_name or 'mock', self.call_count)) raise AssertionError(msg) return self.assert_called_with(*args, **kwargs) diff --git a/Lib/unittest/test/testmock/testmock.py b/Lib/unittest/test/testmock/testmock.py index 64fd1a11c9b..2c6f1289758 100644 --- a/Lib/unittest/test/testmock/testmock.py +++ b/Lib/unittest/test/testmock/testmock.py @@ -463,6 +463,13 @@ def test_assert_called_with_message(self): mock.assert_called_with) + def test_assert_called_once_with_message(self): + mock = Mock(name='geoffrey') + self.assertRaisesRegex(AssertionError, + r"Expected 'geoffrey' to be called once\.", + mock.assert_called_once_with) + + def test__name__(self): mock = Mock() self.assertRaises(AttributeError, lambda: mock.__name__) diff --git a/Misc/NEWS b/Misc/NEWS index c3fc68605b1..43fcfa42c76 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -36,6 +36,8 @@ Core and Builtins Library ------- +- Issue #15323: improve failure message of Mock.assert_called_once_with + - Issue #16064: unittest -m claims executable is "python", not "python3" - Issue #12376: Pass on parameters in TextTestResult.__init__ super call From 8a491a8eef6c2e1997eae1b17ba94cd8c2d1763e Mon Sep 17 00:00:00 2001 From: Stefan Krah Date: Fri, 28 Sep 2012 17:17:11 +0200 Subject: [PATCH 198/201] Closes #16080: The decorator ignores failed attempts to set the required locale, so an additional check is required. --- Lib/test/test_decimal.py | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/Lib/test/test_decimal.py b/Lib/test/test_decimal.py index b2ec1a6e07a..ec5db9fa423 100644 --- a/Lib/test/test_decimal.py +++ b/Lib/test/test_decimal.py @@ -1140,8 +1140,14 @@ def get_fmt(x, override=None, fmt='n'): @run_with_locale('LC_ALL', 'ps_AF') def test_wide_char_separator_decimal_point(self): # locale with wide char separator and decimal point + import locale Decimal = self.decimal.Decimal + decimal_point = locale.localeconv()['decimal_point'] + thousands_sep = locale.localeconv()['thousands_sep'] + if decimal_point != '\u066b' or thousands_sep != '\u066c': + return + self.assertEqual(format(Decimal('100000000.123'), 'n'), '100\u066c000\u066c000\u066b123') From c5fe4073af0247bdf7913e9391ed3b9aab02f63f Mon Sep 17 00:00:00 2001 From: R David Murray Date: Fri, 28 Sep 2012 15:09:31 -0400 Subject: [PATCH 199/201] #16071: fix links to email.message.Message in mailbox docs. --- Doc/library/mailbox.rst | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/Doc/library/mailbox.rst b/Doc/library/mailbox.rst index 8623630aaaa..54d7758094e 100644 --- a/Doc/library/mailbox.rst +++ b/Doc/library/mailbox.rst @@ -757,11 +757,12 @@ Maildir, mbox, MH, Babyl, and MMDF. .. class:: Message(message=None) - A subclass of the :mod:`email.Message` module's :class:`Message`. Subclasses of - :class:`mailbox.Message` add mailbox-format-specific state and behavior. + A subclass of the :mod:`email.message` module's + :class:`~email.message.Message`. Subclasses of :class:`mailbox.Message` add + mailbox-format-specific state and behavior. If *message* is omitted, the new instance is created in a default, empty state. - If *message* is an :class:`email.Message.Message` instance, its contents are + If *message* is an :class:`email.message.Message` instance, its contents are copied; furthermore, any format-specific information is converted insofar as possible if *message* is a :class:`Message` instance. If *message* is a string, a byte string, From 53202504852bc97fc70c5715e936d22c5c5ba1e1 Mon Sep 17 00:00:00 2001 From: R David Murray Date: Fri, 28 Sep 2012 15:19:16 -0400 Subject: [PATCH 200/201] #16071: fix more email.message links in mailbox docs. --- Doc/library/mailbox.rst | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/Doc/library/mailbox.rst b/Doc/library/mailbox.rst index 54d7758094e..0f6aba17a54 100644 --- a/Doc/library/mailbox.rst +++ b/Doc/library/mailbox.rst @@ -10,9 +10,9 @@ This module defines two classes, :class:`Mailbox` and :class:`Message`, for accessing and manipulating on-disk mailboxes and the messages they contain. :class:`Mailbox` offers a dictionary-like mapping from keys to messages. -:class:`Message` extends the :mod:`email.Message` module's :class:`Message` -class with format-specific state and behavior. Supported mailbox formats are -Maildir, mbox, MH, Babyl, and MMDF. +:class:`Message` extends the :mod:`email.message` module's +:class:`~email.message.Message` class with format-specific state and behavior. +Supported mailbox formats are Maildir, mbox, MH, Babyl, and MMDF. .. seealso:: @@ -81,7 +81,7 @@ Maildir, mbox, MH, Babyl, and MMDF. it. Parameter *message* may be a :class:`Message` instance, an - :class:`email.Message.Message` instance, a string, a byte string, or a + :class:`email.message.Message` instance, a string, a byte string, or a file-like object (which should be open in binary mode). If *message* is an instance of the appropriate format-specific :class:`Message` subclass (e.g., if it's an @@ -112,7 +112,7 @@ Maildir, mbox, MH, Babyl, and MMDF. :exc:`KeyError` exception if no message already corresponds to *key*. As with :meth:`add`, parameter *message* may be a :class:`Message` - instance, an :class:`email.Message.Message` instance, a string, a byte + instance, an :class:`email.message.Message` instance, a string, a byte string, or a file-like object (which should be open in binary mode). If *message* is an instance of the appropriate format-specific :class:`Message` subclass @@ -1268,7 +1268,7 @@ When an :class:`MHMessage` instance is created based upon a Set the message's visible headers to be the same as the headers in *message*. Parameter *visible* should be a :class:`Message` instance, an - :class:`email.Message.Message` instance, a string, or a file-like object + :class:`email.message.Message` instance, a string, or a file-like object (which should be open in text mode). From 8ed677db129171317b8ee7cd45b39b9013f5a2d6 Mon Sep 17 00:00:00 2001 From: Brett Cannon Date: Fri, 28 Sep 2012 16:41:39 -0400 Subject: [PATCH 201/201] Add some comments. --- Lib/importlib/_bootstrap.py | 4 + Python/importlib.h | 7051 +++++++++++++++++------------------ 2 files changed, 3529 insertions(+), 3526 deletions(-) diff --git a/Lib/importlib/_bootstrap.py b/Lib/importlib/_bootstrap.py index 224b4dc7279..98361a77b9c 100644 --- a/Lib/importlib/_bootstrap.py +++ b/Lib/importlib/_bootstrap.py @@ -1669,7 +1669,11 @@ def __import__(name, globals=None, locals=None, fromlist=(), level=0): elif not name: return module else: + # Figure out where to slice the module's name up to the first dot + # in 'name'. cut_off = len(name) - len(name.partition('.')[0]) + # Slice end needs to be positive to alleviate need to special-case + # when ``'.' not in name``. return sys.modules[module.__name__[:len(module.__name__)-cut_off]] else: return _handle_fromlist(module, fromlist, _gcd_import) diff --git a/Python/importlib.h b/Python/importlib.h index ee800ce32af..9d3b4dcd533 100644 --- a/Python/importlib.h +++ b/Python/importlib.h @@ -787,7 +787,7 @@ unsigned char _Py_M__importlib[] = { 0,0,100,3,0,106,11,0,124,6,0,124,7,0,124,9, 0,124,3,0,100,4,0,25,103,4,0,131,1,0,125,10, 0,116,12,0,124,4,0,116,13,0,124,10,0,131,3,0, - 83,40,6,0,0,0,117,7,2,0,0,71,105,118,101,110, + 83,40,6,0,0,0,117,244,1,0,0,71,105,118,101,110, 32,116,104,101,32,112,97,116,104,32,116,111,32,97,32,46, 112,121,32,102,105,108,101,44,32,114,101,116,117,114,110,32, 116,104,101,32,112,97,116,104,32,116,111,32,105,116,115,32, @@ -811,3584 +811,3583 @@ unsigned char _Py_M__importlib[] = { 101,32,105,115,32,110,111,116,32,78,111,110,101,44,32,116, 104,101,110,32,105,116,32,109,117,115,116,32,98,101,32,97, 32,98,111,111,108,101,97,110,32,97,110,100,32,105,115,32, - 116,97,107,101,110,32,97,115,10,32,32,32,32,116,104,101, - 32,118,97,108,117,101,32,111,102,32,98,111,111,108,40,115, - 121,115,46,102,108,97,103,115,46,111,112,116,105,109,105,122, - 101,41,32,105,110,115,116,101,97,100,46,10,10,32,32,32, - 32,73,102,32,115,121,115,46,105,109,112,108,101,109,101,110, + 117,115,101,100,32,105,110,10,32,32,32,32,112,108,97,99, + 101,32,111,102,32,115,121,115,46,102,108,97,103,115,46,111, + 112,116,105,109,105,122,101,46,10,10,32,32,32,32,73,102, + 32,115,121,115,46,105,109,112,108,101,109,101,110,116,97,116, + 105,111,110,46,99,97,99,104,101,95,116,97,103,32,105,115, + 32,78,111,110,101,32,116,104,101,110,32,78,111,116,73,109, + 112,108,101,109,101,110,116,101,100,69,114,114,111,114,32,105, + 115,32,114,97,105,115,101,100,46,10,10,32,32,32,32,117, + 1,0,0,0,46,117,36,0,0,0,115,121,115,46,105,109, + 112,108,101,109,101,110,116,97,116,105,111,110,46,99,97,99, + 104,101,95,116,97,103,32,105,115,32,78,111,110,101,117,0, + 0,0,0,105,0,0,0,0,78,40,14,0,0,0,117,4, + 0,0,0,78,111,110,101,117,3,0,0,0,115,121,115,117, + 5,0,0,0,102,108,97,103,115,117,8,0,0,0,111,112, + 116,105,109,105,122,101,117,23,0,0,0,68,69,66,85,71, + 95,66,89,84,69,67,79,68,69,95,83,85,70,70,73,88, + 69,83,117,27,0,0,0,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,117,11,0,0,0,95,112,97,116,104,95,115,112,108, + 105,116,117,9,0,0,0,112,97,114,116,105,116,105,111,110, + 117,14,0,0,0,105,109,112,108,101,109,101,110,116,97,116, + 105,111,110,117,9,0,0,0,99,97,99,104,101,95,116,97, + 103,117,19,0,0,0,78,111,116,73,109,112,108,101,109,101, + 110,116,101,100,69,114,114,111,114,117,4,0,0,0,106,111, + 105,110,117,10,0,0,0,95,112,97,116,104,95,106,111,105, + 110,117,8,0,0,0,95,80,89,67,65,67,72,69,40,11, + 0,0,0,117,4,0,0,0,112,97,116,104,117,14,0,0, + 0,100,101,98,117,103,95,111,118,101,114,114,105,100,101,117, + 5,0,0,0,100,101,98,117,103,117,8,0,0,0,115,117, + 102,102,105,120,101,115,117,4,0,0,0,104,101,97,100,117, + 4,0,0,0,116,97,105,108,117,13,0,0,0,98,97,115, + 101,95,102,105,108,101,110,97,109,101,117,3,0,0,0,115, + 101,112,117,1,0,0,0,95,117,3,0,0,0,116,97,103, + 117,8,0,0,0,102,105,108,101,110,97,109,101,40,0,0, + 0,0,40,0,0,0,0,117,29,0,0,0,60,102,114,111, + 122,101,110,32,105,109,112,111,114,116,108,105,98,46,95,98, + 111,111,116,115,116,114,97,112,62,117,17,0,0,0,99,97, + 99,104,101,95,102,114,111,109,95,115,111,117,114,99,101,159, + 1,0,0,115,22,0,0,0,0,13,31,1,6,1,9,2, + 6,1,18,1,24,1,12,1,12,1,15,1,31,1,117,17, + 0,0,0,99,97,99,104,101,95,102,114,111,109,95,115,111, + 117,114,99,101,99,1,0,0,0,0,0,0,0,5,0,0, + 0,5,0,0,0,67,0,0,0,115,193,0,0,0,116,0, + 0,106,1,0,106,2,0,100,7,0,107,8,0,114,33,0, + 116,4,0,100,1,0,131,1,0,130,1,0,110,0,0,116, + 5,0,124,0,0,131,1,0,92,2,0,125,1,0,125,2, + 0,116,5,0,124,1,0,131,1,0,92,2,0,125,1,0, + 125,3,0,124,3,0,116,6,0,107,3,0,114,108,0,116, + 7,0,100,2,0,106,8,0,116,6,0,124,0,0,131,2, + 0,131,1,0,130,1,0,110,0,0,124,2,0,106,9,0, + 100,3,0,131,1,0,100,4,0,107,3,0,114,153,0,116, + 7,0,100,5,0,106,8,0,124,2,0,131,1,0,131,1, + 0,130,1,0,110,0,0,124,2,0,106,10,0,100,3,0, + 131,1,0,100,6,0,25,125,4,0,116,11,0,124,1,0, + 124,4,0,116,12,0,100,6,0,25,23,131,2,0,83,40, + 8,0,0,0,117,121,1,0,0,71,105,118,101,110,32,116, + 104,101,32,112,97,116,104,32,116,111,32,97,32,46,112,121, + 99,46,47,46,112,121,111,32,102,105,108,101,44,32,114,101, + 116,117,114,110,32,116,104,101,32,112,97,116,104,32,116,111, + 32,105,116,115,32,46,112,121,32,102,105,108,101,46,10,10, + 32,32,32,32,84,104,101,32,46,112,121,99,47,46,112,121, + 111,32,102,105,108,101,32,100,111,101,115,32,110,111,116,32, + 110,101,101,100,32,116,111,32,101,120,105,115,116,59,32,116, + 104,105,115,32,115,105,109,112,108,121,32,114,101,116,117,114, + 110,115,32,116,104,101,32,112,97,116,104,32,116,111,10,32, + 32,32,32,116,104,101,32,46,112,121,32,102,105,108,101,32, + 99,97,108,99,117,108,97,116,101,100,32,116,111,32,99,111, + 114,114,101,115,112,111,110,100,32,116,111,32,116,104,101,32, + 46,112,121,99,47,46,112,121,111,32,102,105,108,101,46,32, + 32,73,102,32,112,97,116,104,32,100,111,101,115,10,32,32, + 32,32,110,111,116,32,99,111,110,102,111,114,109,32,116,111, + 32,80,69,80,32,51,49,52,55,32,102,111,114,109,97,116, + 44,32,86,97,108,117,101,69,114,114,111,114,32,119,105,108, + 108,32,98,101,32,114,97,105,115,101,100,46,32,73,102,10, + 32,32,32,32,115,121,115,46,105,109,112,108,101,109,101,110, 116,97,116,105,111,110,46,99,97,99,104,101,95,116,97,103, 32,105,115,32,78,111,110,101,32,116,104,101,110,32,78,111, 116,73,109,112,108,101,109,101,110,116,101,100,69,114,114,111, 114,32,105,115,32,114,97,105,115,101,100,46,10,10,32,32, - 32,32,117,1,0,0,0,46,117,36,0,0,0,115,121,115, - 46,105,109,112,108,101,109,101,110,116,97,116,105,111,110,46, - 99,97,99,104,101,95,116,97,103,32,105,115,32,78,111,110, - 101,117,0,0,0,0,105,0,0,0,0,78,40,14,0,0, - 0,117,4,0,0,0,78,111,110,101,117,3,0,0,0,115, - 121,115,117,5,0,0,0,102,108,97,103,115,117,8,0,0, - 0,111,112,116,105,109,105,122,101,117,23,0,0,0,68,69, - 66,85,71,95,66,89,84,69,67,79,68,69,95,83,85,70, - 70,73,88,69,83,117,27,0,0,0,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,117,11,0,0,0,95,112,97,116,104,95, - 115,112,108,105,116,117,9,0,0,0,112,97,114,116,105,116, - 105,111,110,117,14,0,0,0,105,109,112,108,101,109,101,110, - 116,97,116,105,111,110,117,9,0,0,0,99,97,99,104,101, - 95,116,97,103,117,19,0,0,0,78,111,116,73,109,112,108, - 101,109,101,110,116,101,100,69,114,114,111,114,117,4,0,0, - 0,106,111,105,110,117,10,0,0,0,95,112,97,116,104,95, - 106,111,105,110,117,8,0,0,0,95,80,89,67,65,67,72, - 69,40,11,0,0,0,117,4,0,0,0,112,97,116,104,117, - 14,0,0,0,100,101,98,117,103,95,111,118,101,114,114,105, - 100,101,117,5,0,0,0,100,101,98,117,103,117,8,0,0, - 0,115,117,102,102,105,120,101,115,117,4,0,0,0,104,101, - 97,100,117,4,0,0,0,116,97,105,108,117,13,0,0,0, - 98,97,115,101,95,102,105,108,101,110,97,109,101,117,3,0, - 0,0,115,101,112,117,1,0,0,0,95,117,3,0,0,0, - 116,97,103,117,8,0,0,0,102,105,108,101,110,97,109,101, - 40,0,0,0,0,40,0,0,0,0,117,29,0,0,0,60, - 102,114,111,122,101,110,32,105,109,112,111,114,116,108,105,98, - 46,95,98,111,111,116,115,116,114,97,112,62,117,17,0,0, - 0,99,97,99,104,101,95,102,114,111,109,95,115,111,117,114, - 99,101,159,1,0,0,115,22,0,0,0,0,13,31,1,6, - 1,9,2,6,1,18,1,24,1,12,1,12,1,15,1,31, - 1,117,17,0,0,0,99,97,99,104,101,95,102,114,111,109, - 95,115,111,117,114,99,101,99,1,0,0,0,0,0,0,0, - 5,0,0,0,5,0,0,0,67,0,0,0,115,193,0,0, - 0,116,0,0,106,1,0,106,2,0,100,7,0,107,8,0, - 114,33,0,116,4,0,100,1,0,131,1,0,130,1,0,110, - 0,0,116,5,0,124,0,0,131,1,0,92,2,0,125,1, - 0,125,2,0,116,5,0,124,1,0,131,1,0,92,2,0, - 125,1,0,125,3,0,124,3,0,116,6,0,107,3,0,114, - 108,0,116,7,0,100,2,0,106,8,0,116,6,0,124,0, - 0,131,2,0,131,1,0,130,1,0,110,0,0,124,2,0, - 106,9,0,100,3,0,131,1,0,100,4,0,107,3,0,114, - 153,0,116,7,0,100,5,0,106,8,0,124,2,0,131,1, - 0,131,1,0,130,1,0,110,0,0,124,2,0,106,10,0, - 100,3,0,131,1,0,100,6,0,25,125,4,0,116,11,0, - 124,1,0,124,4,0,116,12,0,100,6,0,25,23,131,2, - 0,83,40,8,0,0,0,117,121,1,0,0,71,105,118,101, - 110,32,116,104,101,32,112,97,116,104,32,116,111,32,97,32, - 46,112,121,99,46,47,46,112,121,111,32,102,105,108,101,44, - 32,114,101,116,117,114,110,32,116,104,101,32,112,97,116,104, - 32,116,111,32,105,116,115,32,46,112,121,32,102,105,108,101, - 46,10,10,32,32,32,32,84,104,101,32,46,112,121,99,47, - 46,112,121,111,32,102,105,108,101,32,100,111,101,115,32,110, - 111,116,32,110,101,101,100,32,116,111,32,101,120,105,115,116, - 59,32,116,104,105,115,32,115,105,109,112,108,121,32,114,101, - 116,117,114,110,115,32,116,104,101,32,112,97,116,104,32,116, - 111,10,32,32,32,32,116,104,101,32,46,112,121,32,102,105, - 108,101,32,99,97,108,99,117,108,97,116,101,100,32,116,111, - 32,99,111,114,114,101,115,112,111,110,100,32,116,111,32,116, - 104,101,32,46,112,121,99,47,46,112,121,111,32,102,105,108, - 101,46,32,32,73,102,32,112,97,116,104,32,100,111,101,115, - 10,32,32,32,32,110,111,116,32,99,111,110,102,111,114,109, - 32,116,111,32,80,69,80,32,51,49,52,55,32,102,111,114, - 109,97,116,44,32,86,97,108,117,101,69,114,114,111,114,32, - 119,105,108,108,32,98,101,32,114,97,105,115,101,100,46,32, - 73,102,10,32,32,32,32,115,121,115,46,105,109,112,108,101, + 32,32,117,36,0,0,0,115,121,115,46,105,109,112,108,101, 109,101,110,116,97,116,105,111,110,46,99,97,99,104,101,95, - 116,97,103,32,105,115,32,78,111,110,101,32,116,104,101,110, - 32,78,111,116,73,109,112,108,101,109,101,110,116,101,100,69, - 114,114,111,114,32,105,115,32,114,97,105,115,101,100,46,10, - 10,32,32,32,32,117,36,0,0,0,115,121,115,46,105,109, - 112,108,101,109,101,110,116,97,116,105,111,110,46,99,97,99, - 104,101,95,116,97,103,32,105,115,32,78,111,110,101,117,37, - 0,0,0,123,125,32,110,111,116,32,98,111,116,116,111,109, - 45,108,101,118,101,108,32,100,105,114,101,99,116,111,114,121, - 32,105,110,32,123,33,114,125,117,1,0,0,0,46,105,2, - 0,0,0,117,28,0,0,0,101,120,112,101,99,116,101,100, - 32,111,110,108,121,32,50,32,100,111,116,115,32,105,110,32, - 123,33,114,125,105,0,0,0,0,78,40,13,0,0,0,117, - 3,0,0,0,115,121,115,117,14,0,0,0,105,109,112,108, - 101,109,101,110,116,97,116,105,111,110,117,9,0,0,0,99, - 97,99,104,101,95,116,97,103,117,4,0,0,0,78,111,110, - 101,117,19,0,0,0,78,111,116,73,109,112,108,101,109,101, - 110,116,101,100,69,114,114,111,114,117,11,0,0,0,95,112, - 97,116,104,95,115,112,108,105,116,117,8,0,0,0,95,80, - 89,67,65,67,72,69,117,10,0,0,0,86,97,108,117,101, - 69,114,114,111,114,117,6,0,0,0,102,111,114,109,97,116, - 117,5,0,0,0,99,111,117,110,116,117,9,0,0,0,112, - 97,114,116,105,116,105,111,110,117,10,0,0,0,95,112,97, - 116,104,95,106,111,105,110,117,15,0,0,0,83,79,85,82, - 67,69,95,83,85,70,70,73,88,69,83,40,5,0,0,0, - 117,4,0,0,0,112,97,116,104,117,4,0,0,0,104,101, - 97,100,117,16,0,0,0,112,121,99,97,99,104,101,95,102, - 105,108,101,110,97,109,101,117,7,0,0,0,112,121,99,97, - 99,104,101,117,13,0,0,0,98,97,115,101,95,102,105,108, - 101,110,97,109,101,40,0,0,0,0,40,0,0,0,0,117, - 29,0,0,0,60,102,114,111,122,101,110,32,105,109,112,111, - 114,116,108,105,98,46,95,98,111,111,116,115,116,114,97,112, - 62,117,17,0,0,0,115,111,117,114,99,101,95,102,114,111, - 109,95,99,97,99,104,101,186,1,0,0,115,24,0,0,0, - 0,9,18,1,15,1,18,1,18,1,12,1,9,1,18,1, - 21,1,9,1,15,1,19,1,117,17,0,0,0,115,111,117, - 114,99,101,95,102,114,111,109,95,99,97,99,104,101,99,1, - 0,0,0,0,0,0,0,5,0,0,0,13,0,0,0,67, - 0,0,0,115,164,0,0,0,116,0,0,124,0,0,131,1, - 0,100,1,0,107,2,0,114,22,0,100,6,0,83,124,0, - 0,106,2,0,100,2,0,131,1,0,92,3,0,125,1,0, - 125,2,0,125,3,0,124,1,0,12,115,81,0,124,3,0, - 106,3,0,131,0,0,100,7,0,100,8,0,133,2,0,25, - 100,5,0,107,3,0,114,85,0,124,0,0,83,121,16,0, - 116,4,0,124,0,0,131,1,0,125,4,0,87,110,40,0, - 4,116,5,0,116,6,0,102,2,0,107,10,0,114,143,0, - 1,1,1,116,7,0,100,9,0,100,6,0,133,2,0,25, - 125,4,0,89,110,1,0,88,116,8,0,116,9,0,131,1, - 0,114,160,0,124,4,0,83,124,0,0,83,40,10,0,0, - 0,117,188,0,0,0,67,111,110,118,101,114,116,32,97,32, - 98,121,116,101,99,111,100,101,32,102,105,108,101,32,112,97, - 116,104,32,116,111,32,97,32,115,111,117,114,99,101,32,112, - 97,116,104,32,40,105,102,32,112,111,115,115,105,98,108,101, - 41,46,10,10,32,32,32,32,84,104,105,115,32,102,117,110, - 99,116,105,111,110,32,101,120,105,115,116,115,32,112,117,114, - 101,108,121,32,102,111,114,32,98,97,99,107,119,97,114,100, - 115,45,99,111,109,112,97,116,105,98,105,108,105,116,121,32, - 102,111,114,10,32,32,32,32,80,121,73,109,112,111,114,116, - 95,69,120,101,99,67,111,100,101,77,111,100,117,108,101,87, - 105,116,104,70,105,108,101,110,97,109,101,115,40,41,32,105, - 110,32,116,104,101,32,67,32,65,80,73,46,10,10,32,32, - 32,32,105,0,0,0,0,117,1,0,0,0,46,105,3,0, - 0,0,105,1,0,0,0,117,3,0,0,0,46,112,121,78, - 105,253,255,255,255,105,255,255,255,255,105,255,255,255,255,40, - 10,0,0,0,117,3,0,0,0,108,101,110,117,4,0,0, - 0,78,111,110,101,117,9,0,0,0,114,112,97,114,105,116, - 105,111,110,117,5,0,0,0,108,111,119,101,114,117,17,0, - 0,0,115,111,117,114,99,101,95,102,114,111,109,95,99,97, - 99,104,101,117,19,0,0,0,78,111,116,73,109,112,108,101, - 109,101,110,116,101,100,69,114,114,111,114,117,10,0,0,0, - 86,97,108,117,101,69,114,114,111,114,117,12,0,0,0,98, - 121,116,99,111,100,101,95,112,97,116,104,117,12,0,0,0, - 95,112,97,116,104,95,105,115,102,105,108,101,117,12,0,0, - 0,115,111,117,114,99,101,95,115,116,97,116,115,40,5,0, - 0,0,117,13,0,0,0,98,121,116,101,99,111,100,101,95, - 112,97,116,104,117,4,0,0,0,114,101,115,116,117,1,0, - 0,0,95,117,9,0,0,0,101,120,116,101,110,115,105,111, - 110,117,11,0,0,0,115,111,117,114,99,101,95,112,97,116, - 104,40,0,0,0,0,40,0,0,0,0,117,29,0,0,0, + 116,97,103,32,105,115,32,78,111,110,101,117,37,0,0,0, + 123,125,32,110,111,116,32,98,111,116,116,111,109,45,108,101, + 118,101,108,32,100,105,114,101,99,116,111,114,121,32,105,110, + 32,123,33,114,125,117,1,0,0,0,46,105,2,0,0,0, + 117,28,0,0,0,101,120,112,101,99,116,101,100,32,111,110, + 108,121,32,50,32,100,111,116,115,32,105,110,32,123,33,114, + 125,105,0,0,0,0,78,40,13,0,0,0,117,3,0,0, + 0,115,121,115,117,14,0,0,0,105,109,112,108,101,109,101, + 110,116,97,116,105,111,110,117,9,0,0,0,99,97,99,104, + 101,95,116,97,103,117,4,0,0,0,78,111,110,101,117,19, + 0,0,0,78,111,116,73,109,112,108,101,109,101,110,116,101, + 100,69,114,114,111,114,117,11,0,0,0,95,112,97,116,104, + 95,115,112,108,105,116,117,8,0,0,0,95,80,89,67,65, + 67,72,69,117,10,0,0,0,86,97,108,117,101,69,114,114, + 111,114,117,6,0,0,0,102,111,114,109,97,116,117,5,0, + 0,0,99,111,117,110,116,117,9,0,0,0,112,97,114,116, + 105,116,105,111,110,117,10,0,0,0,95,112,97,116,104,95, + 106,111,105,110,117,15,0,0,0,83,79,85,82,67,69,95, + 83,85,70,70,73,88,69,83,40,5,0,0,0,117,4,0, + 0,0,112,97,116,104,117,4,0,0,0,104,101,97,100,117, + 16,0,0,0,112,121,99,97,99,104,101,95,102,105,108,101, + 110,97,109,101,117,7,0,0,0,112,121,99,97,99,104,101, + 117,13,0,0,0,98,97,115,101,95,102,105,108,101,110,97, + 109,101,40,0,0,0,0,40,0,0,0,0,117,29,0,0, + 0,60,102,114,111,122,101,110,32,105,109,112,111,114,116,108, + 105,98,46,95,98,111,111,116,115,116,114,97,112,62,117,17, + 0,0,0,115,111,117,114,99,101,95,102,114,111,109,95,99, + 97,99,104,101,186,1,0,0,115,24,0,0,0,0,9,18, + 1,15,1,18,1,18,1,12,1,9,1,18,1,21,1,9, + 1,15,1,19,1,117,17,0,0,0,115,111,117,114,99,101, + 95,102,114,111,109,95,99,97,99,104,101,99,1,0,0,0, + 0,0,0,0,5,0,0,0,13,0,0,0,67,0,0,0, + 115,164,0,0,0,116,0,0,124,0,0,131,1,0,100,1, + 0,107,2,0,114,22,0,100,6,0,83,124,0,0,106,2, + 0,100,2,0,131,1,0,92,3,0,125,1,0,125,2,0, + 125,3,0,124,1,0,12,115,81,0,124,3,0,106,3,0, + 131,0,0,100,7,0,100,8,0,133,2,0,25,100,5,0, + 107,3,0,114,85,0,124,0,0,83,121,16,0,116,4,0, + 124,0,0,131,1,0,125,4,0,87,110,40,0,4,116,5, + 0,116,6,0,102,2,0,107,10,0,114,143,0,1,1,1, + 116,7,0,100,9,0,100,6,0,133,2,0,25,125,4,0, + 89,110,1,0,88,116,8,0,116,9,0,131,1,0,114,160, + 0,124,4,0,83,124,0,0,83,40,10,0,0,0,117,188, + 0,0,0,67,111,110,118,101,114,116,32,97,32,98,121,116, + 101,99,111,100,101,32,102,105,108,101,32,112,97,116,104,32, + 116,111,32,97,32,115,111,117,114,99,101,32,112,97,116,104, + 32,40,105,102,32,112,111,115,115,105,98,108,101,41,46,10, + 10,32,32,32,32,84,104,105,115,32,102,117,110,99,116,105, + 111,110,32,101,120,105,115,116,115,32,112,117,114,101,108,121, + 32,102,111,114,32,98,97,99,107,119,97,114,100,115,45,99, + 111,109,112,97,116,105,98,105,108,105,116,121,32,102,111,114, + 10,32,32,32,32,80,121,73,109,112,111,114,116,95,69,120, + 101,99,67,111,100,101,77,111,100,117,108,101,87,105,116,104, + 70,105,108,101,110,97,109,101,115,40,41,32,105,110,32,116, + 104,101,32,67,32,65,80,73,46,10,10,32,32,32,32,105, + 0,0,0,0,117,1,0,0,0,46,105,3,0,0,0,105, + 1,0,0,0,117,3,0,0,0,46,112,121,78,105,253,255, + 255,255,105,255,255,255,255,105,255,255,255,255,40,10,0,0, + 0,117,3,0,0,0,108,101,110,117,4,0,0,0,78,111, + 110,101,117,9,0,0,0,114,112,97,114,105,116,105,111,110, + 117,5,0,0,0,108,111,119,101,114,117,17,0,0,0,115, + 111,117,114,99,101,95,102,114,111,109,95,99,97,99,104,101, + 117,19,0,0,0,78,111,116,73,109,112,108,101,109,101,110, + 116,101,100,69,114,114,111,114,117,10,0,0,0,86,97,108, + 117,101,69,114,114,111,114,117,12,0,0,0,98,121,116,99, + 111,100,101,95,112,97,116,104,117,12,0,0,0,95,112,97, + 116,104,95,105,115,102,105,108,101,117,12,0,0,0,115,111, + 117,114,99,101,95,115,116,97,116,115,40,5,0,0,0,117, + 13,0,0,0,98,121,116,101,99,111,100,101,95,112,97,116, + 104,117,4,0,0,0,114,101,115,116,117,1,0,0,0,95, + 117,9,0,0,0,101,120,116,101,110,115,105,111,110,117,11, + 0,0,0,115,111,117,114,99,101,95,112,97,116,104,40,0, + 0,0,0,40,0,0,0,0,117,29,0,0,0,60,102,114, + 111,122,101,110,32,105,109,112,111,114,116,108,105,98,46,95, + 98,111,111,116,115,116,114,97,112,62,117,15,0,0,0,95, + 103,101,116,95,115,111,117,114,99,101,102,105,108,101,209,1, + 0,0,115,20,0,0,0,0,7,18,1,4,1,24,1,35, + 1,4,2,3,1,16,1,19,1,21,2,117,15,0,0,0, + 95,103,101,116,95,115,111,117,114,99,101,102,105,108,101,99, + 1,0,0,0,0,0,0,0,2,0,0,0,4,0,0,0, + 71,0,0,0,115,75,0,0,0,116,0,0,106,1,0,106, + 2,0,114,71,0,124,0,0,106,3,0,100,6,0,131,1, + 0,115,40,0,100,3,0,124,0,0,23,125,0,0,110,0, + 0,116,4,0,124,0,0,106,5,0,124,1,0,140,0,0, + 100,4,0,116,0,0,106,6,0,131,1,1,1,110,0,0, + 100,5,0,83,40,7,0,0,0,117,61,0,0,0,80,114, + 105,110,116,32,116,104,101,32,109,101,115,115,97,103,101,32, + 116,111,32,115,116,100,101,114,114,32,105,102,32,45,118,47, + 80,89,84,72,79,78,86,69,82,66,79,83,69,32,105,115, + 32,116,117,114,110,101,100,32,111,110,46,117,1,0,0,0, + 35,117,7,0,0,0,105,109,112,111,114,116,32,117,2,0, + 0,0,35,32,117,4,0,0,0,102,105,108,101,78,40,2, + 0,0,0,117,1,0,0,0,35,117,7,0,0,0,105,109, + 112,111,114,116,32,40,7,0,0,0,117,3,0,0,0,115, + 121,115,117,5,0,0,0,102,108,97,103,115,117,7,0,0, + 0,118,101,114,98,111,115,101,117,10,0,0,0,115,116,97, + 114,116,115,119,105,116,104,117,5,0,0,0,112,114,105,110, + 116,117,6,0,0,0,102,111,114,109,97,116,117,6,0,0, + 0,115,116,100,101,114,114,40,2,0,0,0,117,7,0,0, + 0,109,101,115,115,97,103,101,117,4,0,0,0,97,114,103, + 115,40,0,0,0,0,40,0,0,0,0,117,29,0,0,0, 60,102,114,111,122,101,110,32,105,109,112,111,114,116,108,105, - 98,46,95,98,111,111,116,115,116,114,97,112,62,117,15,0, - 0,0,95,103,101,116,95,115,111,117,114,99,101,102,105,108, - 101,209,1,0,0,115,20,0,0,0,0,7,18,1,4,1, - 24,1,35,1,4,2,3,1,16,1,19,1,21,2,117,15, - 0,0,0,95,103,101,116,95,115,111,117,114,99,101,102,105, - 108,101,99,1,0,0,0,0,0,0,0,2,0,0,0,4, - 0,0,0,71,0,0,0,115,75,0,0,0,116,0,0,106, - 1,0,106,2,0,114,71,0,124,0,0,106,3,0,100,6, - 0,131,1,0,115,40,0,100,3,0,124,0,0,23,125,0, - 0,110,0,0,116,4,0,124,0,0,106,5,0,124,1,0, - 140,0,0,100,4,0,116,0,0,106,6,0,131,1,1,1, - 110,0,0,100,5,0,83,40,7,0,0,0,117,61,0,0, - 0,80,114,105,110,116,32,116,104,101,32,109,101,115,115,97, - 103,101,32,116,111,32,115,116,100,101,114,114,32,105,102,32, - 45,118,47,80,89,84,72,79,78,86,69,82,66,79,83,69, - 32,105,115,32,116,117,114,110,101,100,32,111,110,46,117,1, - 0,0,0,35,117,7,0,0,0,105,109,112,111,114,116,32, - 117,2,0,0,0,35,32,117,4,0,0,0,102,105,108,101, - 78,40,2,0,0,0,117,1,0,0,0,35,117,7,0,0, - 0,105,109,112,111,114,116,32,40,7,0,0,0,117,3,0, - 0,0,115,121,115,117,5,0,0,0,102,108,97,103,115,117, - 7,0,0,0,118,101,114,98,111,115,101,117,10,0,0,0, - 115,116,97,114,116,115,119,105,116,104,117,5,0,0,0,112, - 114,105,110,116,117,6,0,0,0,102,111,114,109,97,116,117, - 6,0,0,0,115,116,100,101,114,114,40,2,0,0,0,117, - 7,0,0,0,109,101,115,115,97,103,101,117,4,0,0,0, - 97,114,103,115,40,0,0,0,0,40,0,0,0,0,117,29, - 0,0,0,60,102,114,111,122,101,110,32,105,109,112,111,114, - 116,108,105,98,46,95,98,111,111,116,115,116,114,97,112,62, - 117,16,0,0,0,95,118,101,114,98,111,115,101,95,109,101, - 115,115,97,103,101,230,1,0,0,115,8,0,0,0,0,2, - 12,1,15,1,13,1,117,16,0,0,0,95,118,101,114,98, - 111,115,101,95,109,101,115,115,97,103,101,99,1,0,0,0, - 0,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0, - 115,35,0,0,0,135,0,0,102,1,0,100,1,0,100,2, - 0,134,0,0,125,1,0,116,0,0,124,1,0,136,0,0, - 131,2,0,1,124,1,0,83,40,3,0,0,0,117,39,0, - 0,0,83,101,116,32,95,95,112,97,99,107,97,103,101,95, - 95,32,111,110,32,116,104,101,32,114,101,116,117,114,110,101, - 100,32,109,111,100,117,108,101,46,99,0,0,0,0,0,0, - 0,0,3,0,0,0,4,0,0,0,31,0,0,0,115,101, - 0,0,0,136,0,0,124,0,0,124,1,0,142,0,0,125, - 2,0,116,0,0,124,2,0,100,1,0,100,0,0,131,3, - 0,100,0,0,107,8,0,114,97,0,124,2,0,106,2,0, - 124,2,0,95,3,0,116,4,0,124,2,0,100,2,0,131, - 2,0,115,97,0,124,2,0,106,3,0,106,5,0,100,3, - 0,131,1,0,100,4,0,25,124,2,0,95,3,0,113,97, - 0,110,0,0,124,2,0,83,40,5,0,0,0,78,117,11, - 0,0,0,95,95,112,97,99,107,97,103,101,95,95,117,8, - 0,0,0,95,95,112,97,116,104,95,95,117,1,0,0,0, - 46,105,0,0,0,0,40,6,0,0,0,117,7,0,0,0, - 103,101,116,97,116,116,114,117,4,0,0,0,78,111,110,101, - 117,8,0,0,0,95,95,110,97,109,101,95,95,117,11,0, - 0,0,95,95,112,97,99,107,97,103,101,95,95,117,7,0, - 0,0,104,97,115,97,116,116,114,117,10,0,0,0,114,112, - 97,114,116,105,116,105,111,110,40,3,0,0,0,117,4,0, - 0,0,97,114,103,115,117,6,0,0,0,107,119,97,114,103, - 115,117,6,0,0,0,109,111,100,117,108,101,40,1,0,0, - 0,117,3,0,0,0,102,120,110,40,0,0,0,0,117,29, - 0,0,0,60,102,114,111,122,101,110,32,105,109,112,111,114, - 116,108,105,98,46,95,98,111,111,116,115,116,114,97,112,62, - 117,19,0,0,0,115,101,116,95,112,97,99,107,97,103,101, - 95,119,114,97,112,112,101,114,240,1,0,0,115,12,0,0, - 0,0,1,15,1,24,1,12,1,15,1,31,1,117,40,0, - 0,0,115,101,116,95,112,97,99,107,97,103,101,46,60,108, - 111,99,97,108,115,62,46,115,101,116,95,112,97,99,107,97, - 103,101,95,119,114,97,112,112,101,114,40,1,0,0,0,117, - 5,0,0,0,95,119,114,97,112,40,2,0,0,0,117,3, - 0,0,0,102,120,110,117,19,0,0,0,115,101,116,95,112, - 97,99,107,97,103,101,95,119,114,97,112,112,101,114,40,0, - 0,0,0,40,1,0,0,0,117,3,0,0,0,102,120,110, - 117,29,0,0,0,60,102,114,111,122,101,110,32,105,109,112, - 111,114,116,108,105,98,46,95,98,111,111,116,115,116,114,97, - 112,62,117,11,0,0,0,115,101,116,95,112,97,99,107,97, - 103,101,238,1,0,0,115,6,0,0,0,0,2,18,7,13, - 1,117,11,0,0,0,115,101,116,95,112,97,99,107,97,103, - 101,99,1,0,0,0,0,0,0,0,2,0,0,0,3,0, - 0,0,3,0,0,0,115,35,0,0,0,135,0,0,102,1, - 0,100,1,0,100,2,0,134,0,0,125,1,0,116,0,0, - 124,1,0,136,0,0,131,2,0,1,124,1,0,83,40,3, - 0,0,0,117,38,0,0,0,83,101,116,32,95,95,108,111, - 97,100,101,114,95,95,32,111,110,32,116,104,101,32,114,101, - 116,117,114,110,101,100,32,109,111,100,117,108,101,46,99,1, - 0,0,0,0,0,0,0,4,0,0,0,4,0,0,0,31, - 0,0,0,115,49,0,0,0,136,0,0,124,0,0,124,1, - 0,124,2,0,142,1,0,125,3,0,116,0,0,124,3,0, - 100,1,0,131,2,0,115,45,0,124,0,0,124,3,0,95, - 1,0,110,0,0,124,3,0,83,40,2,0,0,0,78,117, - 10,0,0,0,95,95,108,111,97,100,101,114,95,95,40,2, - 0,0,0,117,7,0,0,0,104,97,115,97,116,116,114,117, - 10,0,0,0,95,95,108,111,97,100,101,114,95,95,40,4, - 0,0,0,117,4,0,0,0,115,101,108,102,117,4,0,0, - 0,97,114,103,115,117,6,0,0,0,107,119,97,114,103,115, - 117,6,0,0,0,109,111,100,117,108,101,40,1,0,0,0, - 117,3,0,0,0,102,120,110,40,0,0,0,0,117,29,0, + 98,46,95,98,111,111,116,115,116,114,97,112,62,117,16,0, + 0,0,95,118,101,114,98,111,115,101,95,109,101,115,115,97, + 103,101,230,1,0,0,115,8,0,0,0,0,2,12,1,15, + 1,13,1,117,16,0,0,0,95,118,101,114,98,111,115,101, + 95,109,101,115,115,97,103,101,99,1,0,0,0,0,0,0, + 0,2,0,0,0,3,0,0,0,3,0,0,0,115,35,0, + 0,0,135,0,0,102,1,0,100,1,0,100,2,0,134,0, + 0,125,1,0,116,0,0,124,1,0,136,0,0,131,2,0, + 1,124,1,0,83,40,3,0,0,0,117,39,0,0,0,83, + 101,116,32,95,95,112,97,99,107,97,103,101,95,95,32,111, + 110,32,116,104,101,32,114,101,116,117,114,110,101,100,32,109, + 111,100,117,108,101,46,99,0,0,0,0,0,0,0,0,3, + 0,0,0,4,0,0,0,31,0,0,0,115,101,0,0,0, + 136,0,0,124,0,0,124,1,0,142,0,0,125,2,0,116, + 0,0,124,2,0,100,1,0,100,0,0,131,3,0,100,0, + 0,107,8,0,114,97,0,124,2,0,106,2,0,124,2,0, + 95,3,0,116,4,0,124,2,0,100,2,0,131,2,0,115, + 97,0,124,2,0,106,3,0,106,5,0,100,3,0,131,1, + 0,100,4,0,25,124,2,0,95,3,0,113,97,0,110,0, + 0,124,2,0,83,40,5,0,0,0,78,117,11,0,0,0, + 95,95,112,97,99,107,97,103,101,95,95,117,8,0,0,0, + 95,95,112,97,116,104,95,95,117,1,0,0,0,46,105,0, + 0,0,0,40,6,0,0,0,117,7,0,0,0,103,101,116, + 97,116,116,114,117,4,0,0,0,78,111,110,101,117,8,0, + 0,0,95,95,110,97,109,101,95,95,117,11,0,0,0,95, + 95,112,97,99,107,97,103,101,95,95,117,7,0,0,0,104, + 97,115,97,116,116,114,117,10,0,0,0,114,112,97,114,116, + 105,116,105,111,110,40,3,0,0,0,117,4,0,0,0,97, + 114,103,115,117,6,0,0,0,107,119,97,114,103,115,117,6, + 0,0,0,109,111,100,117,108,101,40,1,0,0,0,117,3, + 0,0,0,102,120,110,40,0,0,0,0,117,29,0,0,0, + 60,102,114,111,122,101,110,32,105,109,112,111,114,116,108,105, + 98,46,95,98,111,111,116,115,116,114,97,112,62,117,19,0, + 0,0,115,101,116,95,112,97,99,107,97,103,101,95,119,114, + 97,112,112,101,114,240,1,0,0,115,12,0,0,0,0,1, + 15,1,24,1,12,1,15,1,31,1,117,40,0,0,0,115, + 101,116,95,112,97,99,107,97,103,101,46,60,108,111,99,97, + 108,115,62,46,115,101,116,95,112,97,99,107,97,103,101,95, + 119,114,97,112,112,101,114,40,1,0,0,0,117,5,0,0, + 0,95,119,114,97,112,40,2,0,0,0,117,3,0,0,0, + 102,120,110,117,19,0,0,0,115,101,116,95,112,97,99,107, + 97,103,101,95,119,114,97,112,112,101,114,40,0,0,0,0, + 40,1,0,0,0,117,3,0,0,0,102,120,110,117,29,0, 0,0,60,102,114,111,122,101,110,32,105,109,112,111,114,116, 108,105,98,46,95,98,111,111,116,115,116,114,97,112,62,117, - 18,0,0,0,115,101,116,95,108,111,97,100,101,114,95,119, - 114,97,112,112,101,114,253,1,0,0,115,8,0,0,0,0, - 1,18,1,15,1,12,1,117,38,0,0,0,115,101,116,95, - 108,111,97,100,101,114,46,60,108,111,99,97,108,115,62,46, + 11,0,0,0,115,101,116,95,112,97,99,107,97,103,101,238, + 1,0,0,115,6,0,0,0,0,2,18,7,13,1,117,11, + 0,0,0,115,101,116,95,112,97,99,107,97,103,101,99,1, + 0,0,0,0,0,0,0,2,0,0,0,3,0,0,0,3, + 0,0,0,115,35,0,0,0,135,0,0,102,1,0,100,1, + 0,100,2,0,134,0,0,125,1,0,116,0,0,124,1,0, + 136,0,0,131,2,0,1,124,1,0,83,40,3,0,0,0, + 117,38,0,0,0,83,101,116,32,95,95,108,111,97,100,101, + 114,95,95,32,111,110,32,116,104,101,32,114,101,116,117,114, + 110,101,100,32,109,111,100,117,108,101,46,99,1,0,0,0, + 0,0,0,0,4,0,0,0,4,0,0,0,31,0,0,0, + 115,49,0,0,0,136,0,0,124,0,0,124,1,0,124,2, + 0,142,1,0,125,3,0,116,0,0,124,3,0,100,1,0, + 131,2,0,115,45,0,124,0,0,124,3,0,95,1,0,110, + 0,0,124,3,0,83,40,2,0,0,0,78,117,10,0,0, + 0,95,95,108,111,97,100,101,114,95,95,40,2,0,0,0, + 117,7,0,0,0,104,97,115,97,116,116,114,117,10,0,0, + 0,95,95,108,111,97,100,101,114,95,95,40,4,0,0,0, + 117,4,0,0,0,115,101,108,102,117,4,0,0,0,97,114, + 103,115,117,6,0,0,0,107,119,97,114,103,115,117,6,0, + 0,0,109,111,100,117,108,101,40,1,0,0,0,117,3,0, + 0,0,102,120,110,40,0,0,0,0,117,29,0,0,0,60, + 102,114,111,122,101,110,32,105,109,112,111,114,116,108,105,98, + 46,95,98,111,111,116,115,116,114,97,112,62,117,18,0,0, + 0,115,101,116,95,108,111,97,100,101,114,95,119,114,97,112, + 112,101,114,253,1,0,0,115,8,0,0,0,0,1,18,1, + 15,1,12,1,117,38,0,0,0,115,101,116,95,108,111,97, + 100,101,114,46,60,108,111,99,97,108,115,62,46,115,101,116, + 95,108,111,97,100,101,114,95,119,114,97,112,112,101,114,40, + 1,0,0,0,117,5,0,0,0,95,119,114,97,112,40,2, + 0,0,0,117,3,0,0,0,102,120,110,117,18,0,0,0, 115,101,116,95,108,111,97,100,101,114,95,119,114,97,112,112, - 101,114,40,1,0,0,0,117,5,0,0,0,95,119,114,97, - 112,40,2,0,0,0,117,3,0,0,0,102,120,110,117,18, - 0,0,0,115,101,116,95,108,111,97,100,101,114,95,119,114, - 97,112,112,101,114,40,0,0,0,0,40,1,0,0,0,117, - 3,0,0,0,102,120,110,117,29,0,0,0,60,102,114,111, - 122,101,110,32,105,109,112,111,114,116,108,105,98,46,95,98, - 111,111,116,115,116,114,97,112,62,117,10,0,0,0,115,101, - 116,95,108,111,97,100,101,114,251,1,0,0,115,6,0,0, - 0,0,2,18,5,13,1,117,10,0,0,0,115,101,116,95, - 108,111,97,100,101,114,99,1,0,0,0,0,0,0,0,2, + 101,114,40,0,0,0,0,40,1,0,0,0,117,3,0,0, + 0,102,120,110,117,29,0,0,0,60,102,114,111,122,101,110, + 32,105,109,112,111,114,116,108,105,98,46,95,98,111,111,116, + 115,116,114,97,112,62,117,10,0,0,0,115,101,116,95,108, + 111,97,100,101,114,251,1,0,0,115,6,0,0,0,0,2, + 18,5,13,1,117,10,0,0,0,115,101,116,95,108,111,97, + 100,101,114,99,1,0,0,0,0,0,0,0,2,0,0,0, + 3,0,0,0,3,0,0,0,115,35,0,0,0,135,0,0, + 102,1,0,100,1,0,100,2,0,134,0,0,125,1,0,116, + 0,0,124,1,0,136,0,0,131,2,0,1,124,1,0,83, + 40,3,0,0,0,117,42,3,0,0,68,101,99,111,114,97, + 116,111,114,32,116,111,32,104,97,110,100,108,101,32,115,101, + 108,101,99,116,105,110,103,32,116,104,101,32,112,114,111,112, + 101,114,32,109,111,100,117,108,101,32,102,111,114,32,108,111, + 97,100,101,114,115,46,10,10,32,32,32,32,84,104,101,32, + 100,101,99,111,114,97,116,101,100,32,102,117,110,99,116,105, + 111,110,32,105,115,32,112,97,115,115,101,100,32,116,104,101, + 32,109,111,100,117,108,101,32,116,111,32,117,115,101,32,105, + 110,115,116,101,97,100,32,111,102,32,116,104,101,32,109,111, + 100,117,108,101,10,32,32,32,32,110,97,109,101,46,32,84, + 104,101,32,109,111,100,117,108,101,32,112,97,115,115,101,100, + 32,105,110,32,116,111,32,116,104,101,32,102,117,110,99,116, + 105,111,110,32,105,115,32,101,105,116,104,101,114,32,102,114, + 111,109,32,115,121,115,46,109,111,100,117,108,101,115,32,105, + 102,10,32,32,32,32,105,116,32,97,108,114,101,97,100,121, + 32,101,120,105,115,116,115,32,111,114,32,105,115,32,97,32, + 110,101,119,32,109,111,100,117,108,101,46,32,73,102,32,116, + 104,101,32,109,111,100,117,108,101,32,105,115,32,110,101,119, + 44,32,116,104,101,110,32,95,95,110,97,109,101,95,95,10, + 32,32,32,32,105,115,32,115,101,116,32,116,104,101,32,102, + 105,114,115,116,32,97,114,103,117,109,101,110,116,32,116,111, + 32,116,104,101,32,109,101,116,104,111,100,44,32,95,95,108, + 111,97,100,101,114,95,95,32,105,115,32,115,101,116,32,116, + 111,32,115,101,108,102,44,32,97,110,100,10,32,32,32,32, + 95,95,112,97,99,107,97,103,101,95,95,32,105,115,32,115, + 101,116,32,97,99,99,111,114,100,105,110,103,108,121,32,40, + 105,102,32,115,101,108,102,46,105,115,95,112,97,99,107,97, + 103,101,40,41,32,105,115,32,100,101,102,105,110,101,100,41, + 32,119,105,108,108,32,98,101,32,115,101,116,10,32,32,32, + 32,98,101,102,111,114,101,32,105,116,32,105,115,32,112,97, + 115,115,101,100,32,116,111,32,116,104,101,32,100,101,99,111, + 114,97,116,101,100,32,102,117,110,99,116,105,111,110,32,40, + 105,102,32,115,101,108,102,46,105,115,95,112,97,99,107,97, + 103,101,40,41,32,100,111,101,115,10,32,32,32,32,110,111, + 116,32,119,111,114,107,32,102,111,114,32,116,104,101,32,109, + 111,100,117,108,101,32,105,116,32,119,105,108,108,32,98,101, + 32,115,101,116,32,112,111,115,116,45,108,111,97,100,41,46, + 10,10,32,32,32,32,73,102,32,97,110,32,101,120,99,101, + 112,116,105,111,110,32,105,115,32,114,97,105,115,101,100,32, + 97,110,100,32,116,104,101,32,100,101,99,111,114,97,116,111, + 114,32,99,114,101,97,116,101,100,32,116,104,101,32,109,111, + 100,117,108,101,32,105,116,32,105,115,10,32,32,32,32,115, + 117,98,115,101,113,117,101,110,116,108,121,32,114,101,109,111, + 118,101,100,32,102,114,111,109,32,115,121,115,46,109,111,100, + 117,108,101,115,46,10,10,32,32,32,32,84,104,101,32,100, + 101,99,111,114,97,116,111,114,32,97,115,115,117,109,101,115, + 32,116,104,97,116,32,116,104,101,32,100,101,99,111,114,97, + 116,101,100,32,102,117,110,99,116,105,111,110,32,116,97,107, + 101,115,32,116,104,101,32,109,111,100,117,108,101,32,110,97, + 109,101,32,97,115,10,32,32,32,32,116,104,101,32,115,101, + 99,111,110,100,32,97,114,103,117,109,101,110,116,46,10,10, + 32,32,32,32,99,2,0,0,0,0,0,0,0,7,0,0, + 0,25,0,0,0,31,0,0,0,115,254,0,0,0,116,0, + 0,106,1,0,106,2,0,124,1,0,131,1,0,125,4,0, + 124,4,0,100,0,0,107,9,0,125,5,0,124,5,0,115, + 168,0,116,4,0,124,1,0,131,1,0,125,4,0,100,3, + 0,124,4,0,95,6,0,124,4,0,116,0,0,106,1,0, + 124,1,0,60,124,0,0,124,4,0,95,7,0,121,19,0, + 124,0,0,106,8,0,124,1,0,131,1,0,125,6,0,87, + 110,24,0,4,116,9,0,116,10,0,102,2,0,107,10,0, + 114,124,0,1,1,1,89,113,177,0,88,124,6,0,114,143, + 0,124,1,0,124,4,0,95,11,0,113,177,0,124,1,0, + 106,12,0,100,1,0,131,1,0,100,2,0,25,124,4,0, + 95,11,0,110,9,0,100,3,0,124,4,0,95,6,0,122, + 60,0,121,23,0,136,0,0,124,0,0,124,4,0,124,2, + 0,124,3,0,142,2,0,83,87,110,30,0,1,1,1,124, + 5,0,115,228,0,116,0,0,106,1,0,124,1,0,61,110, + 0,0,130,0,0,89,110,1,0,88,87,100,0,0,100,4, + 0,124,4,0,95,6,0,88,100,0,0,83,40,5,0,0, + 0,78,117,1,0,0,0,46,105,0,0,0,0,84,70,40, + 14,0,0,0,117,3,0,0,0,115,121,115,117,7,0,0, + 0,109,111,100,117,108,101,115,117,3,0,0,0,103,101,116, + 117,4,0,0,0,78,111,110,101,117,10,0,0,0,110,101, + 119,95,109,111,100,117,108,101,117,4,0,0,0,84,114,117, + 101,117,16,0,0,0,95,95,105,110,105,116,105,97,108,105, + 122,105,110,103,95,95,117,10,0,0,0,95,95,108,111,97, + 100,101,114,95,95,117,10,0,0,0,105,115,95,112,97,99, + 107,97,103,101,117,11,0,0,0,73,109,112,111,114,116,69, + 114,114,111,114,117,14,0,0,0,65,116,116,114,105,98,117, + 116,101,69,114,114,111,114,117,11,0,0,0,95,95,112,97, + 99,107,97,103,101,95,95,117,10,0,0,0,114,112,97,114, + 116,105,116,105,111,110,117,5,0,0,0,70,97,108,115,101, + 40,7,0,0,0,117,4,0,0,0,115,101,108,102,117,8, + 0,0,0,102,117,108,108,110,97,109,101,117,4,0,0,0, + 97,114,103,115,117,6,0,0,0,107,119,97,114,103,115,117, + 6,0,0,0,109,111,100,117,108,101,117,9,0,0,0,105, + 115,95,114,101,108,111,97,100,117,10,0,0,0,105,115,95, + 112,97,99,107,97,103,101,40,1,0,0,0,117,3,0,0, + 0,102,120,110,40,0,0,0,0,117,29,0,0,0,60,102, + 114,111,122,101,110,32,105,109,112,111,114,116,108,105,98,46, + 95,98,111,111,116,115,116,114,97,112,62,117,25,0,0,0, + 109,111,100,117,108,101,95,102,111,114,95,108,111,97,100,101, + 114,95,119,114,97,112,112,101,114,24,2,0,0,115,44,0, + 0,0,0,1,18,1,12,1,6,4,12,3,9,1,13,1, + 9,1,3,1,19,1,19,1,5,2,6,1,12,2,25,2, + 9,1,6,2,23,1,3,1,6,1,13,1,12,2,117,52, + 0,0,0,109,111,100,117,108,101,95,102,111,114,95,108,111, + 97,100,101,114,46,60,108,111,99,97,108,115,62,46,109,111, + 100,117,108,101,95,102,111,114,95,108,111,97,100,101,114,95, + 119,114,97,112,112,101,114,40,1,0,0,0,117,5,0,0, + 0,95,119,114,97,112,40,2,0,0,0,117,3,0,0,0, + 102,120,110,117,25,0,0,0,109,111,100,117,108,101,95,102, + 111,114,95,108,111,97,100,101,114,95,119,114,97,112,112,101, + 114,40,0,0,0,0,40,1,0,0,0,117,3,0,0,0, + 102,120,110,117,29,0,0,0,60,102,114,111,122,101,110,32, + 105,109,112,111,114,116,108,105,98,46,95,98,111,111,116,115, + 116,114,97,112,62,117,17,0,0,0,109,111,100,117,108,101, + 95,102,111,114,95,108,111,97,100,101,114,6,2,0,0,115, + 6,0,0,0,0,18,18,33,13,1,117,17,0,0,0,109, + 111,100,117,108,101,95,102,111,114,95,108,111,97,100,101,114, + 99,1,0,0,0,0,0,0,0,2,0,0,0,4,0,0, + 0,3,0,0,0,115,38,0,0,0,100,3,0,135,0,0, + 102,1,0,100,1,0,100,2,0,134,1,0,125,1,0,116, + 1,0,124,1,0,136,0,0,131,2,0,1,124,1,0,83, + 40,4,0,0,0,117,252,0,0,0,68,101,99,111,114,97, + 116,111,114,32,116,111,32,118,101,114,105,102,121,32,116,104, + 97,116,32,116,104,101,32,109,111,100,117,108,101,32,98,101, + 105,110,103,32,114,101,113,117,101,115,116,101,100,32,109,97, + 116,99,104,101,115,32,116,104,101,32,111,110,101,32,116,104, + 101,10,32,32,32,32,108,111,97,100,101,114,32,99,97,110, + 32,104,97,110,100,108,101,46,10,10,32,32,32,32,84,104, + 101,32,102,105,114,115,116,32,97,114,103,117,109,101,110,116, + 32,40,115,101,108,102,41,32,109,117,115,116,32,100,101,102, + 105,110,101,32,95,110,97,109,101,32,119,104,105,99,104,32, + 116,104,101,32,115,101,99,111,110,100,32,97,114,103,117,109, + 101,110,116,32,105,115,10,32,32,32,32,99,111,109,112,97, + 114,101,100,32,97,103,97,105,110,115,116,46,32,73,102,32, + 116,104,101,32,99,111,109,112,97,114,105,115,111,110,32,102, + 97,105,108,115,32,116,104,101,110,32,73,109,112,111,114,116, + 69,114,114,111,114,32,105,115,32,114,97,105,115,101,100,46, + 10,10,32,32,32,32,99,2,0,0,0,0,0,0,0,4, + 0,0,0,5,0,0,0,31,0,0,0,115,83,0,0,0, + 124,1,0,100,0,0,107,8,0,114,24,0,124,0,0,106, + 1,0,125,1,0,110,40,0,124,0,0,106,1,0,124,1, + 0,107,3,0,114,64,0,116,2,0,100,1,0,124,1,0, + 22,100,2,0,124,1,0,131,1,1,130,1,0,110,0,0, + 136,0,0,124,0,0,124,1,0,124,2,0,124,3,0,142, + 2,0,83,40,3,0,0,0,78,117,23,0,0,0,108,111, + 97,100,101,114,32,99,97,110,110,111,116,32,104,97,110,100, + 108,101,32,37,115,117,4,0,0,0,110,97,109,101,40,3, + 0,0,0,117,4,0,0,0,78,111,110,101,117,4,0,0, + 0,110,97,109,101,117,11,0,0,0,73,109,112,111,114,116, + 69,114,114,111,114,40,4,0,0,0,117,4,0,0,0,115, + 101,108,102,117,4,0,0,0,110,97,109,101,117,4,0,0, + 0,97,114,103,115,117,6,0,0,0,107,119,97,114,103,115, + 40,1,0,0,0,117,6,0,0,0,109,101,116,104,111,100, + 40,0,0,0,0,117,29,0,0,0,60,102,114,111,122,101, + 110,32,105,109,112,111,114,116,108,105,98,46,95,98,111,111, + 116,115,116,114,97,112,62,117,19,0,0,0,95,99,104,101, + 99,107,95,110,97,109,101,95,119,114,97,112,112,101,114,69, + 2,0,0,115,10,0,0,0,0,1,12,1,12,1,15,1, + 25,1,117,40,0,0,0,95,99,104,101,99,107,95,110,97, + 109,101,46,60,108,111,99,97,108,115,62,46,95,99,104,101, + 99,107,95,110,97,109,101,95,119,114,97,112,112,101,114,78, + 40,2,0,0,0,117,4,0,0,0,78,111,110,101,117,5, + 0,0,0,95,119,114,97,112,40,2,0,0,0,117,6,0, + 0,0,109,101,116,104,111,100,117,19,0,0,0,95,99,104, + 101,99,107,95,110,97,109,101,95,119,114,97,112,112,101,114, + 40,0,0,0,0,40,1,0,0,0,117,6,0,0,0,109, + 101,116,104,111,100,117,29,0,0,0,60,102,114,111,122,101, + 110,32,105,109,112,111,114,116,108,105,98,46,95,98,111,111, + 116,115,116,114,97,112,62,117,11,0,0,0,95,99,104,101, + 99,107,95,110,97,109,101,61,2,0,0,115,6,0,0,0, + 0,8,21,6,13,1,117,11,0,0,0,95,99,104,101,99, + 107,95,110,97,109,101,99,1,0,0,0,0,0,0,0,2, 0,0,0,3,0,0,0,3,0,0,0,115,35,0,0,0, 135,0,0,102,1,0,100,1,0,100,2,0,134,0,0,125, 1,0,116,0,0,124,1,0,136,0,0,131,2,0,1,124, - 1,0,83,40,3,0,0,0,117,42,3,0,0,68,101,99, - 111,114,97,116,111,114,32,116,111,32,104,97,110,100,108,101, - 32,115,101,108,101,99,116,105,110,103,32,116,104,101,32,112, - 114,111,112,101,114,32,109,111,100,117,108,101,32,102,111,114, - 32,108,111,97,100,101,114,115,46,10,10,32,32,32,32,84, - 104,101,32,100,101,99,111,114,97,116,101,100,32,102,117,110, - 99,116,105,111,110,32,105,115,32,112,97,115,115,101,100,32, - 116,104,101,32,109,111,100,117,108,101,32,116,111,32,117,115, - 101,32,105,110,115,116,101,97,100,32,111,102,32,116,104,101, - 32,109,111,100,117,108,101,10,32,32,32,32,110,97,109,101, - 46,32,84,104,101,32,109,111,100,117,108,101,32,112,97,115, - 115,101,100,32,105,110,32,116,111,32,116,104,101,32,102,117, - 110,99,116,105,111,110,32,105,115,32,101,105,116,104,101,114, - 32,102,114,111,109,32,115,121,115,46,109,111,100,117,108,101, - 115,32,105,102,10,32,32,32,32,105,116,32,97,108,114,101, - 97,100,121,32,101,120,105,115,116,115,32,111,114,32,105,115, - 32,97,32,110,101,119,32,109,111,100,117,108,101,46,32,73, - 102,32,116,104,101,32,109,111,100,117,108,101,32,105,115,32, - 110,101,119,44,32,116,104,101,110,32,95,95,110,97,109,101, - 95,95,10,32,32,32,32,105,115,32,115,101,116,32,116,104, - 101,32,102,105,114,115,116,32,97,114,103,117,109,101,110,116, - 32,116,111,32,116,104,101,32,109,101,116,104,111,100,44,32, - 95,95,108,111,97,100,101,114,95,95,32,105,115,32,115,101, - 116,32,116,111,32,115,101,108,102,44,32,97,110,100,10,32, - 32,32,32,95,95,112,97,99,107,97,103,101,95,95,32,105, - 115,32,115,101,116,32,97,99,99,111,114,100,105,110,103,108, - 121,32,40,105,102,32,115,101,108,102,46,105,115,95,112,97, - 99,107,97,103,101,40,41,32,105,115,32,100,101,102,105,110, - 101,100,41,32,119,105,108,108,32,98,101,32,115,101,116,10, - 32,32,32,32,98,101,102,111,114,101,32,105,116,32,105,115, - 32,112,97,115,115,101,100,32,116,111,32,116,104,101,32,100, - 101,99,111,114,97,116,101,100,32,102,117,110,99,116,105,111, - 110,32,40,105,102,32,115,101,108,102,46,105,115,95,112,97, - 99,107,97,103,101,40,41,32,100,111,101,115,10,32,32,32, - 32,110,111,116,32,119,111,114,107,32,102,111,114,32,116,104, - 101,32,109,111,100,117,108,101,32,105,116,32,119,105,108,108, - 32,98,101,32,115,101,116,32,112,111,115,116,45,108,111,97, - 100,41,46,10,10,32,32,32,32,73,102,32,97,110,32,101, - 120,99,101,112,116,105,111,110,32,105,115,32,114,97,105,115, - 101,100,32,97,110,100,32,116,104,101,32,100,101,99,111,114, - 97,116,111,114,32,99,114,101,97,116,101,100,32,116,104,101, - 32,109,111,100,117,108,101,32,105,116,32,105,115,10,32,32, - 32,32,115,117,98,115,101,113,117,101,110,116,108,121,32,114, - 101,109,111,118,101,100,32,102,114,111,109,32,115,121,115,46, - 109,111,100,117,108,101,115,46,10,10,32,32,32,32,84,104, - 101,32,100,101,99,111,114,97,116,111,114,32,97,115,115,117, - 109,101,115,32,116,104,97,116,32,116,104,101,32,100,101,99, - 111,114,97,116,101,100,32,102,117,110,99,116,105,111,110,32, - 116,97,107,101,115,32,116,104,101,32,109,111,100,117,108,101, - 32,110,97,109,101,32,97,115,10,32,32,32,32,116,104,101, - 32,115,101,99,111,110,100,32,97,114,103,117,109,101,110,116, - 46,10,10,32,32,32,32,99,2,0,0,0,0,0,0,0, - 7,0,0,0,25,0,0,0,31,0,0,0,115,254,0,0, - 0,116,0,0,106,1,0,106,2,0,124,1,0,131,1,0, - 125,4,0,124,4,0,100,0,0,107,9,0,125,5,0,124, - 5,0,115,168,0,116,4,0,124,1,0,131,1,0,125,4, - 0,100,3,0,124,4,0,95,6,0,124,4,0,116,0,0, - 106,1,0,124,1,0,60,124,0,0,124,4,0,95,7,0, - 121,19,0,124,0,0,106,8,0,124,1,0,131,1,0,125, - 6,0,87,110,24,0,4,116,9,0,116,10,0,102,2,0, - 107,10,0,114,124,0,1,1,1,89,113,177,0,88,124,6, - 0,114,143,0,124,1,0,124,4,0,95,11,0,113,177,0, - 124,1,0,106,12,0,100,1,0,131,1,0,100,2,0,25, - 124,4,0,95,11,0,110,9,0,100,3,0,124,4,0,95, - 6,0,122,60,0,121,23,0,136,0,0,124,0,0,124,4, - 0,124,2,0,124,3,0,142,2,0,83,87,110,30,0,1, - 1,1,124,5,0,115,228,0,116,0,0,106,1,0,124,1, - 0,61,110,0,0,130,0,0,89,110,1,0,88,87,100,0, - 0,100,4,0,124,4,0,95,6,0,88,100,0,0,83,40, - 5,0,0,0,78,117,1,0,0,0,46,105,0,0,0,0, - 84,70,40,14,0,0,0,117,3,0,0,0,115,121,115,117, - 7,0,0,0,109,111,100,117,108,101,115,117,3,0,0,0, - 103,101,116,117,4,0,0,0,78,111,110,101,117,10,0,0, - 0,110,101,119,95,109,111,100,117,108,101,117,4,0,0,0, - 84,114,117,101,117,16,0,0,0,95,95,105,110,105,116,105, - 97,108,105,122,105,110,103,95,95,117,10,0,0,0,95,95, - 108,111,97,100,101,114,95,95,117,10,0,0,0,105,115,95, - 112,97,99,107,97,103,101,117,11,0,0,0,73,109,112,111, - 114,116,69,114,114,111,114,117,14,0,0,0,65,116,116,114, - 105,98,117,116,101,69,114,114,111,114,117,11,0,0,0,95, - 95,112,97,99,107,97,103,101,95,95,117,10,0,0,0,114, - 112,97,114,116,105,116,105,111,110,117,5,0,0,0,70,97, - 108,115,101,40,7,0,0,0,117,4,0,0,0,115,101,108, - 102,117,8,0,0,0,102,117,108,108,110,97,109,101,117,4, - 0,0,0,97,114,103,115,117,6,0,0,0,107,119,97,114, - 103,115,117,6,0,0,0,109,111,100,117,108,101,117,9,0, - 0,0,105,115,95,114,101,108,111,97,100,117,10,0,0,0, - 105,115,95,112,97,99,107,97,103,101,40,1,0,0,0,117, - 3,0,0,0,102,120,110,40,0,0,0,0,117,29,0,0, - 0,60,102,114,111,122,101,110,32,105,109,112,111,114,116,108, - 105,98,46,95,98,111,111,116,115,116,114,97,112,62,117,25, - 0,0,0,109,111,100,117,108,101,95,102,111,114,95,108,111, - 97,100,101,114,95,119,114,97,112,112,101,114,24,2,0,0, - 115,44,0,0,0,0,1,18,1,12,1,6,4,12,3,9, - 1,13,1,9,1,3,1,19,1,19,1,5,2,6,1,12, - 2,25,2,9,1,6,2,23,1,3,1,6,1,13,1,12, - 2,117,52,0,0,0,109,111,100,117,108,101,95,102,111,114, - 95,108,111,97,100,101,114,46,60,108,111,99,97,108,115,62, - 46,109,111,100,117,108,101,95,102,111,114,95,108,111,97,100, - 101,114,95,119,114,97,112,112,101,114,40,1,0,0,0,117, - 5,0,0,0,95,119,114,97,112,40,2,0,0,0,117,3, - 0,0,0,102,120,110,117,25,0,0,0,109,111,100,117,108, - 101,95,102,111,114,95,108,111,97,100,101,114,95,119,114,97, - 112,112,101,114,40,0,0,0,0,40,1,0,0,0,117,3, - 0,0,0,102,120,110,117,29,0,0,0,60,102,114,111,122, - 101,110,32,105,109,112,111,114,116,108,105,98,46,95,98,111, - 111,116,115,116,114,97,112,62,117,17,0,0,0,109,111,100, - 117,108,101,95,102,111,114,95,108,111,97,100,101,114,6,2, - 0,0,115,6,0,0,0,0,18,18,33,13,1,117,17,0, - 0,0,109,111,100,117,108,101,95,102,111,114,95,108,111,97, - 100,101,114,99,1,0,0,0,0,0,0,0,2,0,0,0, - 4,0,0,0,3,0,0,0,115,38,0,0,0,100,3,0, - 135,0,0,102,1,0,100,1,0,100,2,0,134,1,0,125, - 1,0,116,1,0,124,1,0,136,0,0,131,2,0,1,124, - 1,0,83,40,4,0,0,0,117,252,0,0,0,68,101,99, + 1,0,83,40,3,0,0,0,117,49,0,0,0,68,101,99, 111,114,97,116,111,114,32,116,111,32,118,101,114,105,102,121, - 32,116,104,97,116,32,116,104,101,32,109,111,100,117,108,101, - 32,98,101,105,110,103,32,114,101,113,117,101,115,116,101,100, - 32,109,97,116,99,104,101,115,32,116,104,101,32,111,110,101, - 32,116,104,101,10,32,32,32,32,108,111,97,100,101,114,32, - 99,97,110,32,104,97,110,100,108,101,46,10,10,32,32,32, - 32,84,104,101,32,102,105,114,115,116,32,97,114,103,117,109, - 101,110,116,32,40,115,101,108,102,41,32,109,117,115,116,32, - 100,101,102,105,110,101,32,95,110,97,109,101,32,119,104,105, - 99,104,32,116,104,101,32,115,101,99,111,110,100,32,97,114, - 103,117,109,101,110,116,32,105,115,10,32,32,32,32,99,111, - 109,112,97,114,101,100,32,97,103,97,105,110,115,116,46,32, - 73,102,32,116,104,101,32,99,111,109,112,97,114,105,115,111, - 110,32,102,97,105,108,115,32,116,104,101,110,32,73,109,112, - 111,114,116,69,114,114,111,114,32,105,115,32,114,97,105,115, - 101,100,46,10,10,32,32,32,32,99,2,0,0,0,0,0, - 0,0,4,0,0,0,5,0,0,0,31,0,0,0,115,83, - 0,0,0,124,1,0,100,0,0,107,8,0,114,24,0,124, - 0,0,106,1,0,125,1,0,110,40,0,124,0,0,106,1, - 0,124,1,0,107,3,0,114,64,0,116,2,0,100,1,0, - 124,1,0,22,100,2,0,124,1,0,131,1,1,130,1,0, - 110,0,0,136,0,0,124,0,0,124,1,0,124,2,0,124, - 3,0,142,2,0,83,40,3,0,0,0,78,117,23,0,0, - 0,108,111,97,100,101,114,32,99,97,110,110,111,116,32,104, - 97,110,100,108,101,32,37,115,117,4,0,0,0,110,97,109, - 101,40,3,0,0,0,117,4,0,0,0,78,111,110,101,117, - 4,0,0,0,110,97,109,101,117,11,0,0,0,73,109,112, - 111,114,116,69,114,114,111,114,40,4,0,0,0,117,4,0, - 0,0,115,101,108,102,117,4,0,0,0,110,97,109,101,117, - 4,0,0,0,97,114,103,115,117,6,0,0,0,107,119,97, - 114,103,115,40,1,0,0,0,117,6,0,0,0,109,101,116, - 104,111,100,40,0,0,0,0,117,29,0,0,0,60,102,114, - 111,122,101,110,32,105,109,112,111,114,116,108,105,98,46,95, - 98,111,111,116,115,116,114,97,112,62,117,19,0,0,0,95, - 99,104,101,99,107,95,110,97,109,101,95,119,114,97,112,112, - 101,114,69,2,0,0,115,10,0,0,0,0,1,12,1,12, - 1,15,1,25,1,117,40,0,0,0,95,99,104,101,99,107, - 95,110,97,109,101,46,60,108,111,99,97,108,115,62,46,95, - 99,104,101,99,107,95,110,97,109,101,95,119,114,97,112,112, - 101,114,78,40,2,0,0,0,117,4,0,0,0,78,111,110, - 101,117,5,0,0,0,95,119,114,97,112,40,2,0,0,0, - 117,6,0,0,0,109,101,116,104,111,100,117,19,0,0,0, - 95,99,104,101,99,107,95,110,97,109,101,95,119,114,97,112, - 112,101,114,40,0,0,0,0,40,1,0,0,0,117,6,0, - 0,0,109,101,116,104,111,100,117,29,0,0,0,60,102,114, - 111,122,101,110,32,105,109,112,111,114,116,108,105,98,46,95, - 98,111,111,116,115,116,114,97,112,62,117,11,0,0,0,95, - 99,104,101,99,107,95,110,97,109,101,61,2,0,0,115,6, - 0,0,0,0,8,21,6,13,1,117,11,0,0,0,95,99, - 104,101,99,107,95,110,97,109,101,99,1,0,0,0,0,0, - 0,0,2,0,0,0,3,0,0,0,3,0,0,0,115,35, - 0,0,0,135,0,0,102,1,0,100,1,0,100,2,0,134, - 0,0,125,1,0,116,0,0,124,1,0,136,0,0,131,2, - 0,1,124,1,0,83,40,3,0,0,0,117,49,0,0,0, - 68,101,99,111,114,97,116,111,114,32,116,111,32,118,101,114, - 105,102,121,32,116,104,101,32,110,97,109,101,100,32,109,111, - 100,117,108,101,32,105,115,32,98,117,105,108,116,45,105,110, - 46,99,2,0,0,0,0,0,0,0,2,0,0,0,4,0, - 0,0,19,0,0,0,115,58,0,0,0,124,1,0,116,0, - 0,106,1,0,107,7,0,114,45,0,116,2,0,100,1,0, - 106,3,0,124,1,0,131,1,0,100,2,0,124,1,0,131, - 1,1,130,1,0,110,0,0,136,0,0,124,0,0,124,1, - 0,131,2,0,83,40,3,0,0,0,78,117,27,0,0,0, - 123,125,32,105,115,32,110,111,116,32,97,32,98,117,105,108, - 116,45,105,110,32,109,111,100,117,108,101,117,4,0,0,0, - 110,97,109,101,40,4,0,0,0,117,3,0,0,0,115,121, - 115,117,20,0,0,0,98,117,105,108,116,105,110,95,109,111, - 100,117,108,101,95,110,97,109,101,115,117,11,0,0,0,73, - 109,112,111,114,116,69,114,114,111,114,117,6,0,0,0,102, - 111,114,109,97,116,40,2,0,0,0,117,4,0,0,0,115, - 101,108,102,117,8,0,0,0,102,117,108,108,110,97,109,101, - 40,1,0,0,0,117,3,0,0,0,102,120,110,40,0,0, - 0,0,117,29,0,0,0,60,102,114,111,122,101,110,32,105, - 109,112,111,114,116,108,105,98,46,95,98,111,111,116,115,116, - 114,97,112,62,117,25,0,0,0,95,114,101,113,117,105,114, - 101,115,95,98,117,105,108,116,105,110,95,119,114,97,112,112, - 101,114,81,2,0,0,115,8,0,0,0,0,1,15,1,18, - 1,12,1,117,52,0,0,0,95,114,101,113,117,105,114,101, - 115,95,98,117,105,108,116,105,110,46,60,108,111,99,97,108, - 115,62,46,95,114,101,113,117,105,114,101,115,95,98,117,105, - 108,116,105,110,95,119,114,97,112,112,101,114,40,1,0,0, - 0,117,5,0,0,0,95,119,114,97,112,40,2,0,0,0, - 117,3,0,0,0,102,120,110,117,25,0,0,0,95,114,101, - 113,117,105,114,101,115,95,98,117,105,108,116,105,110,95,119, - 114,97,112,112,101,114,40,0,0,0,0,40,1,0,0,0, - 117,3,0,0,0,102,120,110,117,29,0,0,0,60,102,114, - 111,122,101,110,32,105,109,112,111,114,116,108,105,98,46,95, - 98,111,111,116,115,116,114,97,112,62,117,17,0,0,0,95, - 114,101,113,117,105,114,101,115,95,98,117,105,108,116,105,110, - 79,2,0,0,115,6,0,0,0,0,2,18,5,13,1,117, - 17,0,0,0,95,114,101,113,117,105,114,101,115,95,98,117, - 105,108,116,105,110,99,1,0,0,0,0,0,0,0,2,0, - 0,0,3,0,0,0,3,0,0,0,115,35,0,0,0,135, - 0,0,102,1,0,100,1,0,100,2,0,134,0,0,125,1, - 0,116,0,0,124,1,0,136,0,0,131,2,0,1,124,1, - 0,83,40,3,0,0,0,117,47,0,0,0,68,101,99,111, - 114,97,116,111,114,32,116,111,32,118,101,114,105,102,121,32, - 116,104,101,32,110,97,109,101,100,32,109,111,100,117,108,101, - 32,105,115,32,102,114,111,122,101,110,46,99,2,0,0,0, - 0,0,0,0,2,0,0,0,4,0,0,0,19,0,0,0, - 115,58,0,0,0,116,0,0,106,1,0,124,1,0,131,1, - 0,115,45,0,116,2,0,100,1,0,106,3,0,124,1,0, - 131,1,0,100,2,0,124,1,0,131,1,1,130,1,0,110, - 0,0,136,0,0,124,0,0,124,1,0,131,2,0,83,40, - 3,0,0,0,78,117,25,0,0,0,123,125,32,105,115,32, - 110,111,116,32,97,32,102,114,111,122,101,110,32,109,111,100, - 117,108,101,117,4,0,0,0,110,97,109,101,40,4,0,0, - 0,117,4,0,0,0,95,105,109,112,117,9,0,0,0,105, - 115,95,102,114,111,122,101,110,117,11,0,0,0,73,109,112, - 111,114,116,69,114,114,111,114,117,6,0,0,0,102,111,114, - 109,97,116,40,2,0,0,0,117,4,0,0,0,115,101,108, - 102,117,8,0,0,0,102,117,108,108,110,97,109,101,40,1, - 0,0,0,117,3,0,0,0,102,120,110,40,0,0,0,0, - 117,29,0,0,0,60,102,114,111,122,101,110,32,105,109,112, - 111,114,116,108,105,98,46,95,98,111,111,116,115,116,114,97, - 112,62,117,24,0,0,0,95,114,101,113,117,105,114,101,115, - 95,102,114,111,122,101,110,95,119,114,97,112,112,101,114,92, + 32,116,104,101,32,110,97,109,101,100,32,109,111,100,117,108, + 101,32,105,115,32,98,117,105,108,116,45,105,110,46,99,2, + 0,0,0,0,0,0,0,2,0,0,0,4,0,0,0,19, + 0,0,0,115,58,0,0,0,124,1,0,116,0,0,106,1, + 0,107,7,0,114,45,0,116,2,0,100,1,0,106,3,0, + 124,1,0,131,1,0,100,2,0,124,1,0,131,1,1,130, + 1,0,110,0,0,136,0,0,124,0,0,124,1,0,131,2, + 0,83,40,3,0,0,0,78,117,27,0,0,0,123,125,32, + 105,115,32,110,111,116,32,97,32,98,117,105,108,116,45,105, + 110,32,109,111,100,117,108,101,117,4,0,0,0,110,97,109, + 101,40,4,0,0,0,117,3,0,0,0,115,121,115,117,20, + 0,0,0,98,117,105,108,116,105,110,95,109,111,100,117,108, + 101,95,110,97,109,101,115,117,11,0,0,0,73,109,112,111, + 114,116,69,114,114,111,114,117,6,0,0,0,102,111,114,109, + 97,116,40,2,0,0,0,117,4,0,0,0,115,101,108,102, + 117,8,0,0,0,102,117,108,108,110,97,109,101,40,1,0, + 0,0,117,3,0,0,0,102,120,110,40,0,0,0,0,117, + 29,0,0,0,60,102,114,111,122,101,110,32,105,109,112,111, + 114,116,108,105,98,46,95,98,111,111,116,115,116,114,97,112, + 62,117,25,0,0,0,95,114,101,113,117,105,114,101,115,95, + 98,117,105,108,116,105,110,95,119,114,97,112,112,101,114,81, 2,0,0,115,8,0,0,0,0,1,15,1,18,1,12,1, - 117,50,0,0,0,95,114,101,113,117,105,114,101,115,95,102, - 114,111,122,101,110,46,60,108,111,99,97,108,115,62,46,95, - 114,101,113,117,105,114,101,115,95,102,114,111,122,101,110,95, - 119,114,97,112,112,101,114,40,1,0,0,0,117,5,0,0, - 0,95,119,114,97,112,40,2,0,0,0,117,3,0,0,0, - 102,120,110,117,24,0,0,0,95,114,101,113,117,105,114,101, - 115,95,102,114,111,122,101,110,95,119,114,97,112,112,101,114, - 40,0,0,0,0,40,1,0,0,0,117,3,0,0,0,102, - 120,110,117,29,0,0,0,60,102,114,111,122,101,110,32,105, - 109,112,111,114,116,108,105,98,46,95,98,111,111,116,115,116, - 114,97,112,62,117,16,0,0,0,95,114,101,113,117,105,114, - 101,115,95,102,114,111,122,101,110,90,2,0,0,115,6,0, - 0,0,0,2,18,5,13,1,117,16,0,0,0,95,114,101, - 113,117,105,114,101,115,95,102,114,111,122,101,110,99,2,0, - 0,0,0,0,0,0,5,0,0,0,5,0,0,0,67,0, - 0,0,115,87,0,0,0,124,0,0,106,0,0,124,1,0, - 131,1,0,92,2,0,125,2,0,125,3,0,124,2,0,100, - 3,0,107,8,0,114,83,0,116,2,0,124,3,0,131,1, - 0,114,83,0,100,1,0,125,4,0,116,3,0,106,4,0, - 124,4,0,106,5,0,124,3,0,100,2,0,25,131,1,0, - 116,6,0,131,2,0,1,110,0,0,124,2,0,83,40,4, - 0,0,0,117,86,0,0,0,84,114,121,32,116,111,32,102, - 105,110,100,32,97,32,108,111,97,100,101,114,32,102,111,114, - 32,116,104,101,32,115,112,101,99,105,102,105,101,100,32,109, - 111,100,117,108,101,32,98,121,32,100,101,108,101,103,97,116, - 105,110,103,32,116,111,10,32,32,32,32,115,101,108,102,46, - 102,105,110,100,95,108,111,97,100,101,114,40,41,46,117,44, - 0,0,0,78,111,116,32,105,109,112,111,114,116,105,110,103, - 32,100,105,114,101,99,116,111,114,121,32,123,125,58,32,109, - 105,115,115,105,110,103,32,95,95,105,110,105,116,95,95,105, - 0,0,0,0,78,40,7,0,0,0,117,11,0,0,0,102, - 105,110,100,95,108,111,97,100,101,114,117,4,0,0,0,78, - 111,110,101,117,3,0,0,0,108,101,110,117,9,0,0,0, - 95,119,97,114,110,105,110,103,115,117,4,0,0,0,119,97, - 114,110,117,6,0,0,0,102,111,114,109,97,116,117,13,0, - 0,0,73,109,112,111,114,116,87,97,114,110,105,110,103,40, - 5,0,0,0,117,4,0,0,0,115,101,108,102,117,8,0, - 0,0,102,117,108,108,110,97,109,101,117,6,0,0,0,108, - 111,97,100,101,114,117,8,0,0,0,112,111,114,116,105,111, - 110,115,117,3,0,0,0,109,115,103,40,0,0,0,0,40, - 0,0,0,0,117,29,0,0,0,60,102,114,111,122,101,110, - 32,105,109,112,111,114,116,108,105,98,46,95,98,111,111,116, - 115,116,114,97,112,62,117,17,0,0,0,95,102,105,110,100, - 95,109,111,100,117,108,101,95,115,104,105,109,101,2,0,0, - 115,10,0,0,0,0,6,21,1,24,1,6,1,32,1,117, - 17,0,0,0,95,102,105,110,100,95,109,111,100,117,108,101, - 95,115,104,105,109,99,1,0,0,0,0,0,0,0,1,0, - 0,0,6,0,0,0,66,0,0,0,115,173,0,0,0,124, - 0,0,69,101,0,0,90,1,0,100,0,0,90,2,0,100, - 1,0,90,3,0,101,4,0,100,2,0,100,3,0,132,0, - 0,131,1,0,90,5,0,101,4,0,100,14,0,100,4,0, - 100,5,0,132,1,0,131,1,0,90,7,0,101,4,0,101, - 8,0,101,9,0,101,10,0,100,6,0,100,7,0,132,0, - 0,131,1,0,131,1,0,131,1,0,131,1,0,90,11,0, - 101,4,0,101,10,0,100,8,0,100,9,0,132,0,0,131, - 1,0,131,1,0,90,12,0,101,4,0,101,10,0,100,10, - 0,100,11,0,132,0,0,131,1,0,131,1,0,90,13,0, - 101,4,0,101,10,0,100,12,0,100,13,0,132,0,0,131, - 1,0,131,1,0,90,14,0,100,14,0,83,40,15,0,0, - 0,117,15,0,0,0,66,117,105,108,116,105,110,73,109,112, - 111,114,116,101,114,117,144,0,0,0,77,101,116,97,32,112, - 97,116,104,32,105,109,112,111,114,116,32,102,111,114,32,98, - 117,105,108,116,45,105,110,32,109,111,100,117,108,101,115,46, - 10,10,32,32,32,32,65,108,108,32,109,101,116,104,111,100, - 115,32,97,114,101,32,101,105,116,104,101,114,32,99,108,97, - 115,115,32,111,114,32,115,116,97,116,105,99,32,109,101,116, - 104,111,100,115,32,116,111,32,97,118,111,105,100,32,116,104, - 101,32,110,101,101,100,32,116,111,10,32,32,32,32,105,110, - 115,116,97,110,116,105,97,116,101,32,116,104,101,32,99,108, - 97,115,115,46,10,10,32,32,32,32,99,2,0,0,0,0, - 0,0,0,2,0,0,0,2,0,0,0,67,0,0,0,115, - 16,0,0,0,100,1,0,106,0,0,124,1,0,106,1,0, - 131,1,0,83,40,2,0,0,0,78,117,24,0,0,0,60, - 109,111,100,117,108,101,32,39,123,125,39,32,40,98,117,105, - 108,116,45,105,110,41,62,40,2,0,0,0,117,6,0,0, - 0,102,111,114,109,97,116,117,8,0,0,0,95,95,110,97, - 109,101,95,95,40,2,0,0,0,117,3,0,0,0,99,108, - 115,117,6,0,0,0,109,111,100,117,108,101,40,0,0,0, - 0,40,0,0,0,0,117,29,0,0,0,60,102,114,111,122, - 101,110,32,105,109,112,111,114,116,108,105,98,46,95,98,111, - 111,116,115,116,114,97,112,62,117,11,0,0,0,109,111,100, - 117,108,101,95,114,101,112,114,127,2,0,0,115,2,0,0, - 0,0,2,117,27,0,0,0,66,117,105,108,116,105,110,73, - 109,112,111,114,116,101,114,46,109,111,100,117,108,101,95,114, - 101,112,114,99,3,0,0,0,0,0,0,0,3,0,0,0, - 2,0,0,0,67,0,0,0,115,39,0,0,0,124,2,0, - 100,1,0,107,9,0,114,16,0,100,1,0,83,116,1,0, - 106,2,0,124,1,0,131,1,0,114,35,0,124,0,0,83, - 100,1,0,83,40,2,0,0,0,117,113,0,0,0,70,105, - 110,100,32,116,104,101,32,98,117,105,108,116,45,105,110,32, - 109,111,100,117,108,101,46,10,10,32,32,32,32,32,32,32, - 32,73,102,32,39,112,97,116,104,39,32,105,115,32,101,118, - 101,114,32,115,112,101,99,105,102,105,101,100,32,116,104,101, - 110,32,116,104,101,32,115,101,97,114,99,104,32,105,115,32, - 99,111,110,115,105,100,101,114,101,100,32,97,32,102,97,105, - 108,117,114,101,46,10,10,32,32,32,32,32,32,32,32,78, - 40,3,0,0,0,117,4,0,0,0,78,111,110,101,117,4, - 0,0,0,95,105,109,112,117,10,0,0,0,105,115,95,98, - 117,105,108,116,105,110,40,3,0,0,0,117,3,0,0,0, - 99,108,115,117,8,0,0,0,102,117,108,108,110,97,109,101, - 117,4,0,0,0,112,97,116,104,40,0,0,0,0,40,0, - 0,0,0,117,29,0,0,0,60,102,114,111,122,101,110,32, - 105,109,112,111,114,116,108,105,98,46,95,98,111,111,116,115, - 116,114,97,112,62,117,11,0,0,0,102,105,110,100,95,109, - 111,100,117,108,101,131,2,0,0,115,6,0,0,0,0,7, - 12,1,4,1,117,27,0,0,0,66,117,105,108,116,105,110, - 73,109,112,111,114,116,101,114,46,102,105,110,100,95,109,111, - 100,117,108,101,99,2,0,0,0,0,0,0,0,3,0,0, - 0,9,0,0,0,67,0,0,0,115,88,0,0,0,124,1, - 0,116,0,0,106,1,0,107,6,0,125,2,0,121,20,0, - 116,2,0,116,3,0,106,4,0,124,1,0,131,2,0,83, - 87,110,46,0,1,1,1,124,2,0,12,114,76,0,124,1, - 0,116,0,0,106,1,0,107,6,0,114,76,0,116,0,0, - 106,1,0,124,1,0,61,110,0,0,130,0,0,89,110,1, - 0,88,100,1,0,83,40,2,0,0,0,117,23,0,0,0, - 76,111,97,100,32,97,32,98,117,105,108,116,45,105,110,32, - 109,111,100,117,108,101,46,78,40,5,0,0,0,117,3,0, - 0,0,115,121,115,117,7,0,0,0,109,111,100,117,108,101, - 115,117,25,0,0,0,95,99,97,108,108,95,119,105,116,104, - 95,102,114,97,109,101,115,95,114,101,109,111,118,101,100,117, - 4,0,0,0,95,105,109,112,117,12,0,0,0,105,110,105, - 116,95,98,117,105,108,116,105,110,40,3,0,0,0,117,3, - 0,0,0,99,108,115,117,8,0,0,0,102,117,108,108,110, - 97,109,101,117,9,0,0,0,105,115,95,114,101,108,111,97, - 100,40,0,0,0,0,40,0,0,0,0,117,29,0,0,0, - 60,102,114,111,122,101,110,32,105,109,112,111,114,116,108,105, - 98,46,95,98,111,111,116,115,116,114,97,112,62,117,11,0, - 0,0,108,111,97,100,95,109,111,100,117,108,101,142,2,0, - 0,115,14,0,0,0,0,6,15,1,3,1,20,1,3,1, - 22,1,13,1,117,27,0,0,0,66,117,105,108,116,105,110, - 73,109,112,111,114,116,101,114,46,108,111,97,100,95,109,111, - 100,117,108,101,99,2,0,0,0,0,0,0,0,2,0,0, - 0,1,0,0,0,67,0,0,0,115,4,0,0,0,100,1, - 0,83,40,2,0,0,0,117,57,0,0,0,82,101,116,117, - 114,110,32,78,111,110,101,32,97,115,32,98,117,105,108,116, - 45,105,110,32,109,111,100,117,108,101,115,32,100,111,32,110, - 111,116,32,104,97,118,101,32,99,111,100,101,32,111,98,106, - 101,99,116,115,46,78,40,1,0,0,0,117,4,0,0,0, - 78,111,110,101,40,2,0,0,0,117,3,0,0,0,99,108, - 115,117,8,0,0,0,102,117,108,108,110,97,109,101,40,0, - 0,0,0,40,0,0,0,0,117,29,0,0,0,60,102,114, - 111,122,101,110,32,105,109,112,111,114,116,108,105,98,46,95, - 98,111,111,116,115,116,114,97,112,62,117,8,0,0,0,103, - 101,116,95,99,111,100,101,156,2,0,0,115,2,0,0,0, - 0,4,117,24,0,0,0,66,117,105,108,116,105,110,73,109, - 112,111,114,116,101,114,46,103,101,116,95,99,111,100,101,99, - 2,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0, - 67,0,0,0,115,4,0,0,0,100,1,0,83,40,2,0, - 0,0,117,56,0,0,0,82,101,116,117,114,110,32,78,111, - 110,101,32,97,115,32,98,117,105,108,116,45,105,110,32,109, - 111,100,117,108,101,115,32,100,111,32,110,111,116,32,104,97, - 118,101,32,115,111,117,114,99,101,32,99,111,100,101,46,78, - 40,1,0,0,0,117,4,0,0,0,78,111,110,101,40,2, - 0,0,0,117,3,0,0,0,99,108,115,117,8,0,0,0, - 102,117,108,108,110,97,109,101,40,0,0,0,0,40,0,0, - 0,0,117,29,0,0,0,60,102,114,111,122,101,110,32,105, - 109,112,111,114,116,108,105,98,46,95,98,111,111,116,115,116, - 114,97,112,62,117,10,0,0,0,103,101,116,95,115,111,117, - 114,99,101,162,2,0,0,115,2,0,0,0,0,4,117,26, - 0,0,0,66,117,105,108,116,105,110,73,109,112,111,114,116, - 101,114,46,103,101,116,95,115,111,117,114,99,101,99,2,0, - 0,0,0,0,0,0,2,0,0,0,1,0,0,0,67,0, - 0,0,115,4,0,0,0,100,1,0,83,40,2,0,0,0, - 117,52,0,0,0,82,101,116,117,114,110,32,70,97,108,115, - 101,32,97,115,32,98,117,105,108,116,45,105,110,32,109,111, - 100,117,108,101,115,32,97,114,101,32,110,101,118,101,114,32, - 112,97,99,107,97,103,101,115,46,70,40,1,0,0,0,117, - 5,0,0,0,70,97,108,115,101,40,2,0,0,0,117,3, - 0,0,0,99,108,115,117,8,0,0,0,102,117,108,108,110, - 97,109,101,40,0,0,0,0,40,0,0,0,0,117,29,0, + 117,52,0,0,0,95,114,101,113,117,105,114,101,115,95,98, + 117,105,108,116,105,110,46,60,108,111,99,97,108,115,62,46, + 95,114,101,113,117,105,114,101,115,95,98,117,105,108,116,105, + 110,95,119,114,97,112,112,101,114,40,1,0,0,0,117,5, + 0,0,0,95,119,114,97,112,40,2,0,0,0,117,3,0, + 0,0,102,120,110,117,25,0,0,0,95,114,101,113,117,105, + 114,101,115,95,98,117,105,108,116,105,110,95,119,114,97,112, + 112,101,114,40,0,0,0,0,40,1,0,0,0,117,3,0, + 0,0,102,120,110,117,29,0,0,0,60,102,114,111,122,101, + 110,32,105,109,112,111,114,116,108,105,98,46,95,98,111,111, + 116,115,116,114,97,112,62,117,17,0,0,0,95,114,101,113, + 117,105,114,101,115,95,98,117,105,108,116,105,110,79,2,0, + 0,115,6,0,0,0,0,2,18,5,13,1,117,17,0,0, + 0,95,114,101,113,117,105,114,101,115,95,98,117,105,108,116, + 105,110,99,1,0,0,0,0,0,0,0,2,0,0,0,3, + 0,0,0,3,0,0,0,115,35,0,0,0,135,0,0,102, + 1,0,100,1,0,100,2,0,134,0,0,125,1,0,116,0, + 0,124,1,0,136,0,0,131,2,0,1,124,1,0,83,40, + 3,0,0,0,117,47,0,0,0,68,101,99,111,114,97,116, + 111,114,32,116,111,32,118,101,114,105,102,121,32,116,104,101, + 32,110,97,109,101,100,32,109,111,100,117,108,101,32,105,115, + 32,102,114,111,122,101,110,46,99,2,0,0,0,0,0,0, + 0,2,0,0,0,4,0,0,0,19,0,0,0,115,58,0, + 0,0,116,0,0,106,1,0,124,1,0,131,1,0,115,45, + 0,116,2,0,100,1,0,106,3,0,124,1,0,131,1,0, + 100,2,0,124,1,0,131,1,1,130,1,0,110,0,0,136, + 0,0,124,0,0,124,1,0,131,2,0,83,40,3,0,0, + 0,78,117,25,0,0,0,123,125,32,105,115,32,110,111,116, + 32,97,32,102,114,111,122,101,110,32,109,111,100,117,108,101, + 117,4,0,0,0,110,97,109,101,40,4,0,0,0,117,4, + 0,0,0,95,105,109,112,117,9,0,0,0,105,115,95,102, + 114,111,122,101,110,117,11,0,0,0,73,109,112,111,114,116, + 69,114,114,111,114,117,6,0,0,0,102,111,114,109,97,116, + 40,2,0,0,0,117,4,0,0,0,115,101,108,102,117,8, + 0,0,0,102,117,108,108,110,97,109,101,40,1,0,0,0, + 117,3,0,0,0,102,120,110,40,0,0,0,0,117,29,0, 0,0,60,102,114,111,122,101,110,32,105,109,112,111,114,116, 108,105,98,46,95,98,111,111,116,115,116,114,97,112,62,117, - 10,0,0,0,105,115,95,112,97,99,107,97,103,101,168,2, - 0,0,115,2,0,0,0,0,4,117,26,0,0,0,66,117, - 105,108,116,105,110,73,109,112,111,114,116,101,114,46,105,115, - 95,112,97,99,107,97,103,101,78,40,15,0,0,0,117,8, - 0,0,0,95,95,110,97,109,101,95,95,117,10,0,0,0, - 95,95,109,111,100,117,108,101,95,95,117,12,0,0,0,95, - 95,113,117,97,108,110,97,109,101,95,95,117,7,0,0,0, - 95,95,100,111,99,95,95,117,11,0,0,0,99,108,97,115, - 115,109,101,116,104,111,100,117,11,0,0,0,109,111,100,117, - 108,101,95,114,101,112,114,117,4,0,0,0,78,111,110,101, - 117,11,0,0,0,102,105,110,100,95,109,111,100,117,108,101, - 117,11,0,0,0,115,101,116,95,112,97,99,107,97,103,101, - 117,10,0,0,0,115,101,116,95,108,111,97,100,101,114,117, - 17,0,0,0,95,114,101,113,117,105,114,101,115,95,98,117, - 105,108,116,105,110,117,11,0,0,0,108,111,97,100,95,109, - 111,100,117,108,101,117,8,0,0,0,103,101,116,95,99,111, - 100,101,117,10,0,0,0,103,101,116,95,115,111,117,114,99, - 101,117,10,0,0,0,105,115,95,112,97,99,107,97,103,101, - 40,1,0,0,0,117,10,0,0,0,95,95,108,111,99,97, - 108,115,95,95,40,0,0,0,0,40,0,0,0,0,117,29, - 0,0,0,60,102,114,111,122,101,110,32,105,109,112,111,114, - 116,108,105,98,46,95,98,111,111,116,115,116,114,97,112,62, - 117,15,0,0,0,66,117,105,108,116,105,110,73,109,112,111, - 114,116,101,114,118,2,0,0,115,28,0,0,0,16,7,6, - 2,18,4,3,1,18,10,3,1,3,1,3,1,27,11,3, - 1,21,5,3,1,21,5,3,1,117,15,0,0,0,66,117, - 105,108,116,105,110,73,109,112,111,114,116,101,114,99,1,0, - 0,0,0,0,0,0,1,0,0,0,6,0,0,0,66,0, - 0,0,115,173,0,0,0,124,0,0,69,101,0,0,90,1, - 0,100,0,0,90,2,0,100,1,0,90,3,0,101,4,0, - 100,2,0,100,3,0,132,0,0,131,1,0,90,5,0,101, - 4,0,100,14,0,100,4,0,100,5,0,132,1,0,131,1, - 0,90,7,0,101,4,0,101,8,0,101,9,0,101,10,0, - 100,6,0,100,7,0,132,0,0,131,1,0,131,1,0,131, - 1,0,131,1,0,90,11,0,101,4,0,101,10,0,100,8, - 0,100,9,0,132,0,0,131,1,0,131,1,0,90,12,0, - 101,4,0,101,10,0,100,10,0,100,11,0,132,0,0,131, - 1,0,131,1,0,90,13,0,101,4,0,101,10,0,100,12, - 0,100,13,0,132,0,0,131,1,0,131,1,0,90,14,0, - 100,14,0,83,40,15,0,0,0,117,14,0,0,0,70,114, - 111,122,101,110,73,109,112,111,114,116,101,114,117,142,0,0, - 0,77,101,116,97,32,112,97,116,104,32,105,109,112,111,114, - 116,32,102,111,114,32,102,114,111,122,101,110,32,109,111,100, - 117,108,101,115,46,10,10,32,32,32,32,65,108,108,32,109, - 101,116,104,111,100,115,32,97,114,101,32,101,105,116,104,101, - 114,32,99,108,97,115,115,32,111,114,32,115,116,97,116,105, - 99,32,109,101,116,104,111,100,115,32,116,111,32,97,118,111, - 105,100,32,116,104,101,32,110,101,101,100,32,116,111,10,32, - 32,32,32,105,110,115,116,97,110,116,105,97,116,101,32,116, - 104,101,32,99,108,97,115,115,46,10,10,32,32,32,32,99, - 2,0,0,0,0,0,0,0,2,0,0,0,2,0,0,0, - 67,0,0,0,115,16,0,0,0,100,1,0,106,0,0,124, - 1,0,106,1,0,131,1,0,83,40,2,0,0,0,78,117, - 22,0,0,0,60,109,111,100,117,108,101,32,39,123,125,39, - 32,40,102,114,111,122,101,110,41,62,40,2,0,0,0,117, - 6,0,0,0,102,111,114,109,97,116,117,8,0,0,0,95, - 95,110,97,109,101,95,95,40,2,0,0,0,117,3,0,0, - 0,99,108,115,117,1,0,0,0,109,40,0,0,0,0,40, - 0,0,0,0,117,29,0,0,0,60,102,114,111,122,101,110, - 32,105,109,112,111,114,116,108,105,98,46,95,98,111,111,116, - 115,116,114,97,112,62,117,11,0,0,0,109,111,100,117,108, - 101,95,114,101,112,114,184,2,0,0,115,2,0,0,0,0, - 2,117,26,0,0,0,70,114,111,122,101,110,73,109,112,111, - 114,116,101,114,46,109,111,100,117,108,101,95,114,101,112,114, - 99,3,0,0,0,0,0,0,0,3,0,0,0,2,0,0, - 0,67,0,0,0,115,23,0,0,0,116,0,0,106,1,0, - 124,1,0,131,1,0,114,19,0,124,0,0,83,100,1,0, - 83,40,2,0,0,0,117,21,0,0,0,70,105,110,100,32, - 97,32,102,114,111,122,101,110,32,109,111,100,117,108,101,46, - 78,40,3,0,0,0,117,4,0,0,0,95,105,109,112,117, - 9,0,0,0,105,115,95,102,114,111,122,101,110,117,4,0, - 0,0,78,111,110,101,40,3,0,0,0,117,3,0,0,0, - 99,108,115,117,8,0,0,0,102,117,108,108,110,97,109,101, - 117,4,0,0,0,112,97,116,104,40,0,0,0,0,40,0, - 0,0,0,117,29,0,0,0,60,102,114,111,122,101,110,32, - 105,109,112,111,114,116,108,105,98,46,95,98,111,111,116,115, - 116,114,97,112,62,117,11,0,0,0,102,105,110,100,95,109, - 111,100,117,108,101,188,2,0,0,115,2,0,0,0,0,3, - 117,26,0,0,0,70,114,111,122,101,110,73,109,112,111,114, - 116,101,114,46,102,105,110,100,95,109,111,100,117,108,101,99, - 2,0,0,0,0,0,0,0,4,0,0,0,9,0,0,0, - 67,0,0,0,115,100,0,0,0,124,1,0,116,0,0,106, - 1,0,107,6,0,125,2,0,121,32,0,116,2,0,116,3, - 0,106,4,0,124,1,0,131,2,0,125,3,0,124,3,0, - 96,5,0,124,3,0,83,87,110,46,0,1,1,1,124,2, - 0,12,114,88,0,124,1,0,116,0,0,106,1,0,107,6, - 0,114,88,0,116,0,0,106,1,0,124,1,0,61,110,0, - 0,130,0,0,89,110,1,0,88,100,1,0,83,40,2,0, - 0,0,117,21,0,0,0,76,111,97,100,32,97,32,102,114, - 111,122,101,110,32,109,111,100,117,108,101,46,78,40,6,0, - 0,0,117,3,0,0,0,115,121,115,117,7,0,0,0,109, - 111,100,117,108,101,115,117,25,0,0,0,95,99,97,108,108, - 95,119,105,116,104,95,102,114,97,109,101,115,95,114,101,109, - 111,118,101,100,117,4,0,0,0,95,105,109,112,117,11,0, - 0,0,105,110,105,116,95,102,114,111,122,101,110,117,8,0, - 0,0,95,95,102,105,108,101,95,95,40,4,0,0,0,117, - 3,0,0,0,99,108,115,117,8,0,0,0,102,117,108,108, - 110,97,109,101,117,9,0,0,0,105,115,95,114,101,108,111, - 97,100,117,1,0,0,0,109,40,0,0,0,0,40,0,0, - 0,0,117,29,0,0,0,60,102,114,111,122,101,110,32,105, - 109,112,111,114,116,108,105,98,46,95,98,111,111,116,115,116, - 114,97,112,62,117,11,0,0,0,108,111,97,100,95,109,111, - 100,117,108,101,193,2,0,0,115,18,0,0,0,0,6,15, - 1,3,1,18,2,6,1,8,1,3,1,22,1,13,1,117, - 26,0,0,0,70,114,111,122,101,110,73,109,112,111,114,116, - 101,114,46,108,111,97,100,95,109,111,100,117,108,101,99,2, - 0,0,0,0,0,0,0,2,0,0,0,2,0,0,0,67, - 0,0,0,115,13,0,0,0,116,0,0,106,1,0,124,1, - 0,131,1,0,83,40,1,0,0,0,117,45,0,0,0,82, - 101,116,117,114,110,32,116,104,101,32,99,111,100,101,32,111, - 98,106,101,99,116,32,102,111,114,32,116,104,101,32,102,114, - 111,122,101,110,32,109,111,100,117,108,101,46,40,2,0,0, - 0,117,4,0,0,0,95,105,109,112,117,17,0,0,0,103, - 101,116,95,102,114,111,122,101,110,95,111,98,106,101,99,116, - 40,2,0,0,0,117,3,0,0,0,99,108,115,117,8,0, - 0,0,102,117,108,108,110,97,109,101,40,0,0,0,0,40, - 0,0,0,0,117,29,0,0,0,60,102,114,111,122,101,110, - 32,105,109,112,111,114,116,108,105,98,46,95,98,111,111,116, - 115,116,114,97,112,62,117,8,0,0,0,103,101,116,95,99, - 111,100,101,210,2,0,0,115,2,0,0,0,0,4,117,23, - 0,0,0,70,114,111,122,101,110,73,109,112,111,114,116,101, - 114,46,103,101,116,95,99,111,100,101,99,2,0,0,0,0, - 0,0,0,2,0,0,0,1,0,0,0,67,0,0,0,115, - 4,0,0,0,100,1,0,83,40,2,0,0,0,117,54,0, - 0,0,82,101,116,117,114,110,32,78,111,110,101,32,97,115, - 32,102,114,111,122,101,110,32,109,111,100,117,108,101,115,32, - 100,111,32,110,111,116,32,104,97,118,101,32,115,111,117,114, - 99,101,32,99,111,100,101,46,78,40,1,0,0,0,117,4, - 0,0,0,78,111,110,101,40,2,0,0,0,117,3,0,0, - 0,99,108,115,117,8,0,0,0,102,117,108,108,110,97,109, - 101,40,0,0,0,0,40,0,0,0,0,117,29,0,0,0, - 60,102,114,111,122,101,110,32,105,109,112,111,114,116,108,105, - 98,46,95,98,111,111,116,115,116,114,97,112,62,117,10,0, - 0,0,103,101,116,95,115,111,117,114,99,101,216,2,0,0, - 115,2,0,0,0,0,4,117,25,0,0,0,70,114,111,122, - 101,110,73,109,112,111,114,116,101,114,46,103,101,116,95,115, - 111,117,114,99,101,99,2,0,0,0,0,0,0,0,2,0, - 0,0,2,0,0,0,67,0,0,0,115,13,0,0,0,116, - 0,0,106,1,0,124,1,0,131,1,0,83,40,1,0,0, - 0,117,46,0,0,0,82,101,116,117,114,110,32,84,114,117, - 101,32,105,102,32,116,104,101,32,102,114,111,122,101,110,32, - 109,111,100,117,108,101,32,105,115,32,97,32,112,97,99,107, - 97,103,101,46,40,2,0,0,0,117,4,0,0,0,95,105, - 109,112,117,17,0,0,0,105,115,95,102,114,111,122,101,110, - 95,112,97,99,107,97,103,101,40,2,0,0,0,117,3,0, - 0,0,99,108,115,117,8,0,0,0,102,117,108,108,110,97, - 109,101,40,0,0,0,0,40,0,0,0,0,117,29,0,0, - 0,60,102,114,111,122,101,110,32,105,109,112,111,114,116,108, - 105,98,46,95,98,111,111,116,115,116,114,97,112,62,117,10, - 0,0,0,105,115,95,112,97,99,107,97,103,101,222,2,0, - 0,115,2,0,0,0,0,4,117,25,0,0,0,70,114,111, - 122,101,110,73,109,112,111,114,116,101,114,46,105,115,95,112, - 97,99,107,97,103,101,78,40,15,0,0,0,117,8,0,0, - 0,95,95,110,97,109,101,95,95,117,10,0,0,0,95,95, - 109,111,100,117,108,101,95,95,117,12,0,0,0,95,95,113, - 117,97,108,110,97,109,101,95,95,117,7,0,0,0,95,95, - 100,111,99,95,95,117,11,0,0,0,99,108,97,115,115,109, - 101,116,104,111,100,117,11,0,0,0,109,111,100,117,108,101, - 95,114,101,112,114,117,4,0,0,0,78,111,110,101,117,11, - 0,0,0,102,105,110,100,95,109,111,100,117,108,101,117,11, - 0,0,0,115,101,116,95,112,97,99,107,97,103,101,117,10, - 0,0,0,115,101,116,95,108,111,97,100,101,114,117,16,0, + 24,0,0,0,95,114,101,113,117,105,114,101,115,95,102,114, + 111,122,101,110,95,119,114,97,112,112,101,114,92,2,0,0, + 115,8,0,0,0,0,1,15,1,18,1,12,1,117,50,0, 0,0,95,114,101,113,117,105,114,101,115,95,102,114,111,122, - 101,110,117,11,0,0,0,108,111,97,100,95,109,111,100,117, - 108,101,117,8,0,0,0,103,101,116,95,99,111,100,101,117, - 10,0,0,0,103,101,116,95,115,111,117,114,99,101,117,10, - 0,0,0,105,115,95,112,97,99,107,97,103,101,40,1,0, - 0,0,117,10,0,0,0,95,95,108,111,99,97,108,115,95, - 95,40,0,0,0,0,40,0,0,0,0,117,29,0,0,0, - 60,102,114,111,122,101,110,32,105,109,112,111,114,116,108,105, - 98,46,95,98,111,111,116,115,116,114,97,112,62,117,14,0, - 0,0,70,114,111,122,101,110,73,109,112,111,114,116,101,114, - 175,2,0,0,115,28,0,0,0,16,7,6,2,18,4,3, - 1,18,4,3,1,3,1,3,1,27,14,3,1,21,5,3, - 1,21,5,3,1,117,14,0,0,0,70,114,111,122,101,110, - 73,109,112,111,114,116,101,114,99,1,0,0,0,0,0,0, - 0,1,0,0,0,4,0,0,0,66,0,0,0,115,101,0, - 0,0,124,0,0,69,101,0,0,90,1,0,100,0,0,90, - 2,0,100,1,0,90,3,0,100,2,0,90,4,0,100,3, - 0,90,5,0,100,11,0,90,7,0,101,8,0,100,4,0, - 100,5,0,132,0,0,131,1,0,90,9,0,101,8,0,100, - 6,0,100,7,0,132,0,0,131,1,0,90,10,0,101,8, - 0,100,10,0,100,8,0,100,9,0,132,1,0,131,1,0, - 90,12,0,100,10,0,83,40,12,0,0,0,117,21,0,0, - 0,87,105,110,100,111,119,115,82,101,103,105,115,116,114,121, - 70,105,110,100,101,114,117,67,0,0,0,77,101,116,97,32, - 112,97,116,104,32,102,105,110,100,101,114,32,102,111,114,32, - 109,111,100,117,108,101,115,32,100,101,99,108,97,114,101,100, - 32,105,110,32,116,104,101,32,87,105,110,100,111,119,115,32, - 114,101,103,105,115,116,114,121,46,10,32,32,32,32,117,59, - 0,0,0,83,111,102,116,119,97,114,101,92,80,121,116,104, - 111,110,92,80,121,116,104,111,110,67,111,114,101,92,123,115, - 121,115,95,118,101,114,115,105,111,110,125,92,77,111,100,117, - 108,101,115,92,123,102,117,108,108,110,97,109,101,125,117,65, - 0,0,0,83,111,102,116,119,97,114,101,92,80,121,116,104, - 111,110,92,80,121,116,104,111,110,67,111,114,101,92,123,115, - 121,115,95,118,101,114,115,105,111,110,125,92,77,111,100,117, - 108,101,115,92,123,102,117,108,108,110,97,109,101,125,92,68, - 101,98,117,103,99,2,0,0,0,0,0,0,0,2,0,0, - 0,11,0,0,0,67,0,0,0,115,67,0,0,0,121,23, - 0,116,0,0,106,1,0,116,0,0,106,2,0,124,1,0, - 131,2,0,83,87,110,37,0,4,116,3,0,107,10,0,114, - 62,0,1,1,1,116,0,0,106,1,0,116,0,0,106,4, - 0,124,1,0,131,2,0,83,89,110,1,0,88,100,0,0, - 83,40,1,0,0,0,78,40,5,0,0,0,117,7,0,0, - 0,95,119,105,110,114,101,103,117,7,0,0,0,79,112,101, - 110,75,101,121,117,17,0,0,0,72,75,69,89,95,67,85, - 82,82,69,78,84,95,85,83,69,82,117,12,0,0,0,87, - 105,110,100,111,119,115,69,114,114,111,114,117,18,0,0,0, - 72,75,69,89,95,76,79,67,65,76,95,77,65,67,72,73, - 78,69,40,2,0,0,0,117,3,0,0,0,99,108,115,117, - 3,0,0,0,107,101,121,40,0,0,0,0,40,0,0,0, + 101,110,46,60,108,111,99,97,108,115,62,46,95,114,101,113, + 117,105,114,101,115,95,102,114,111,122,101,110,95,119,114,97, + 112,112,101,114,40,1,0,0,0,117,5,0,0,0,95,119, + 114,97,112,40,2,0,0,0,117,3,0,0,0,102,120,110, + 117,24,0,0,0,95,114,101,113,117,105,114,101,115,95,102, + 114,111,122,101,110,95,119,114,97,112,112,101,114,40,0,0, + 0,0,40,1,0,0,0,117,3,0,0,0,102,120,110,117, + 29,0,0,0,60,102,114,111,122,101,110,32,105,109,112,111, + 114,116,108,105,98,46,95,98,111,111,116,115,116,114,97,112, + 62,117,16,0,0,0,95,114,101,113,117,105,114,101,115,95, + 102,114,111,122,101,110,90,2,0,0,115,6,0,0,0,0, + 2,18,5,13,1,117,16,0,0,0,95,114,101,113,117,105, + 114,101,115,95,102,114,111,122,101,110,99,2,0,0,0,0, + 0,0,0,5,0,0,0,5,0,0,0,67,0,0,0,115, + 87,0,0,0,124,0,0,106,0,0,124,1,0,131,1,0, + 92,2,0,125,2,0,125,3,0,124,2,0,100,3,0,107, + 8,0,114,83,0,116,2,0,124,3,0,131,1,0,114,83, + 0,100,1,0,125,4,0,116,3,0,106,4,0,124,4,0, + 106,5,0,124,3,0,100,2,0,25,131,1,0,116,6,0, + 131,2,0,1,110,0,0,124,2,0,83,40,4,0,0,0, + 117,86,0,0,0,84,114,121,32,116,111,32,102,105,110,100, + 32,97,32,108,111,97,100,101,114,32,102,111,114,32,116,104, + 101,32,115,112,101,99,105,102,105,101,100,32,109,111,100,117, + 108,101,32,98,121,32,100,101,108,101,103,97,116,105,110,103, + 32,116,111,10,32,32,32,32,115,101,108,102,46,102,105,110, + 100,95,108,111,97,100,101,114,40,41,46,117,44,0,0,0, + 78,111,116,32,105,109,112,111,114,116,105,110,103,32,100,105, + 114,101,99,116,111,114,121,32,123,125,58,32,109,105,115,115, + 105,110,103,32,95,95,105,110,105,116,95,95,105,0,0,0, + 0,78,40,7,0,0,0,117,11,0,0,0,102,105,110,100, + 95,108,111,97,100,101,114,117,4,0,0,0,78,111,110,101, + 117,3,0,0,0,108,101,110,117,9,0,0,0,95,119,97, + 114,110,105,110,103,115,117,4,0,0,0,119,97,114,110,117, + 6,0,0,0,102,111,114,109,97,116,117,13,0,0,0,73, + 109,112,111,114,116,87,97,114,110,105,110,103,40,5,0,0, + 0,117,4,0,0,0,115,101,108,102,117,8,0,0,0,102, + 117,108,108,110,97,109,101,117,6,0,0,0,108,111,97,100, + 101,114,117,8,0,0,0,112,111,114,116,105,111,110,115,117, + 3,0,0,0,109,115,103,40,0,0,0,0,40,0,0,0, 0,117,29,0,0,0,60,102,114,111,122,101,110,32,105,109, 112,111,114,116,108,105,98,46,95,98,111,111,116,115,116,114, - 97,112,62,117,14,0,0,0,95,111,112,101,110,95,114,101, - 103,105,115,116,114,121,242,2,0,0,115,8,0,0,0,0, - 2,3,1,23,1,13,1,117,36,0,0,0,87,105,110,100, - 111,119,115,82,101,103,105,115,116,114,121,70,105,110,100,101, - 114,46,95,111,112,101,110,95,114,101,103,105,115,116,114,121, - 99,2,0,0,0,0,0,0,0,6,0,0,0,16,0,0, - 0,67,0,0,0,115,142,0,0,0,124,0,0,106,0,0, - 114,21,0,124,0,0,106,1,0,125,2,0,110,9,0,124, - 0,0,106,2,0,125,2,0,124,2,0,106,3,0,100,1, - 0,124,1,0,100,2,0,116,4,0,106,5,0,100,0,0, - 100,3,0,133,2,0,25,131,0,2,125,3,0,121,46,0, - 124,0,0,106,6,0,124,3,0,131,1,0,143,25,0,125, - 4,0,116,7,0,106,8,0,124,4,0,100,4,0,131,2, - 0,125,5,0,87,100,0,0,81,88,87,110,22,0,4,116, - 9,0,107,10,0,114,137,0,1,1,1,100,0,0,83,89, - 110,1,0,88,124,5,0,83,40,5,0,0,0,78,117,8, - 0,0,0,102,117,108,108,110,97,109,101,117,11,0,0,0, - 115,121,115,95,118,101,114,115,105,111,110,105,3,0,0,0, - 117,0,0,0,0,40,11,0,0,0,117,11,0,0,0,68, - 69,66,85,71,95,66,85,73,76,68,117,18,0,0,0,82, - 69,71,73,83,84,82,89,95,75,69,89,95,68,69,66,85, - 71,117,12,0,0,0,82,69,71,73,83,84,82,89,95,75, - 69,89,117,6,0,0,0,102,111,114,109,97,116,117,3,0, - 0,0,115,121,115,117,7,0,0,0,118,101,114,115,105,111, - 110,117,14,0,0,0,95,111,112,101,110,95,114,101,103,105, - 115,116,114,121,117,7,0,0,0,95,119,105,110,114,101,103, - 117,10,0,0,0,81,117,101,114,121,86,97,108,117,101,117, - 12,0,0,0,87,105,110,100,111,119,115,69,114,114,111,114, - 117,4,0,0,0,78,111,110,101,40,6,0,0,0,117,3, - 0,0,0,99,108,115,117,8,0,0,0,102,117,108,108,110, - 97,109,101,117,12,0,0,0,114,101,103,105,115,116,114,121, - 95,107,101,121,117,3,0,0,0,107,101,121,117,4,0,0, - 0,104,107,101,121,117,8,0,0,0,102,105,108,101,112,97, - 116,104,40,0,0,0,0,40,0,0,0,0,117,29,0,0, - 0,60,102,114,111,122,101,110,32,105,109,112,111,114,116,108, - 105,98,46,95,98,111,111,116,115,116,114,97,112,62,117,16, - 0,0,0,95,115,101,97,114,99,104,95,114,101,103,105,115, - 116,114,121,249,2,0,0,115,22,0,0,0,0,2,9,1, - 12,2,9,1,15,1,22,1,3,1,18,1,28,1,13,1, - 9,1,117,38,0,0,0,87,105,110,100,111,119,115,82,101, - 103,105,115,116,114,121,70,105,110,100,101,114,46,95,115,101, - 97,114,99,104,95,114,101,103,105,115,116,114,121,99,3,0, - 0,0,0,0,0,0,7,0,0,0,12,0,0,0,67,0, - 0,0,115,140,0,0,0,124,0,0,106,0,0,124,1,0, - 131,1,0,125,3,0,124,3,0,100,1,0,107,8,0,114, - 31,0,100,1,0,83,121,17,0,116,2,0,106,3,0,124, - 3,0,131,1,0,1,87,110,22,0,4,116,4,0,107,10, - 0,114,72,0,1,1,1,100,1,0,83,89,110,1,0,88, - 120,60,0,116,5,0,131,0,0,68,93,49,0,92,3,0, - 125,4,0,125,5,0,125,6,0,124,3,0,106,6,0,116, - 7,0,124,5,0,131,1,0,131,1,0,114,83,0,124,4, - 0,124,1,0,124,3,0,131,2,0,83,113,83,0,87,100, - 1,0,83,40,2,0,0,0,117,34,0,0,0,70,105,110, - 100,32,109,111,100,117,108,101,32,110,97,109,101,100,32,105, - 110,32,116,104,101,32,114,101,103,105,115,116,114,121,46,78, - 40,8,0,0,0,117,16,0,0,0,95,115,101,97,114,99, - 104,95,114,101,103,105,115,116,114,121,117,4,0,0,0,78, - 111,110,101,117,3,0,0,0,95,111,115,117,4,0,0,0, - 115,116,97,116,117,7,0,0,0,79,83,69,114,114,111,114, - 117,27,0,0,0,95,103,101,116,95,115,117,112,112,111,114, - 116,101,100,95,102,105,108,101,95,108,111,97,100,101,114,115, - 117,8,0,0,0,101,110,100,115,119,105,116,104,117,5,0, - 0,0,116,117,112,108,101,40,7,0,0,0,117,3,0,0, - 0,99,108,115,117,8,0,0,0,102,117,108,108,110,97,109, - 101,117,4,0,0,0,112,97,116,104,117,8,0,0,0,102, - 105,108,101,112,97,116,104,117,6,0,0,0,108,111,97,100, - 101,114,117,8,0,0,0,115,117,102,102,105,120,101,115,117, - 1,0,0,0,95,40,0,0,0,0,40,0,0,0,0,117, - 29,0,0,0,60,102,114,111,122,101,110,32,105,109,112,111, - 114,116,108,105,98,46,95,98,111,111,116,115,116,114,97,112, - 62,117,11,0,0,0,102,105,110,100,95,109,111,100,117,108, - 101,8,3,0,0,115,20,0,0,0,0,3,15,1,12,1, - 4,1,3,1,17,1,13,1,9,1,25,1,21,1,117,33, - 0,0,0,87,105,110,100,111,119,115,82,101,103,105,115,116, - 114,121,70,105,110,100,101,114,46,102,105,110,100,95,109,111, - 100,117,108,101,78,70,40,13,0,0,0,117,8,0,0,0, - 95,95,110,97,109,101,95,95,117,10,0,0,0,95,95,109, - 111,100,117,108,101,95,95,117,12,0,0,0,95,95,113,117, - 97,108,110,97,109,101,95,95,117,7,0,0,0,95,95,100, - 111,99,95,95,117,12,0,0,0,82,69,71,73,83,84,82, - 89,95,75,69,89,117,18,0,0,0,82,69,71,73,83,84, - 82,89,95,75,69,89,95,68,69,66,85,71,117,5,0,0, - 0,70,97,108,115,101,117,11,0,0,0,68,69,66,85,71, - 95,66,85,73,76,68,117,11,0,0,0,99,108,97,115,115, - 109,101,116,104,111,100,117,14,0,0,0,95,111,112,101,110, - 95,114,101,103,105,115,116,114,121,117,16,0,0,0,95,115, - 101,97,114,99,104,95,114,101,103,105,115,116,114,121,117,4, - 0,0,0,78,111,110,101,117,11,0,0,0,102,105,110,100, - 95,109,111,100,117,108,101,40,1,0,0,0,117,10,0,0, - 0,95,95,108,111,99,97,108,115,95,95,40,0,0,0,0, - 40,0,0,0,0,117,29,0,0,0,60,102,114,111,122,101, - 110,32,105,109,112,111,114,116,108,105,98,46,95,98,111,111, - 116,115,116,114,97,112,62,117,21,0,0,0,87,105,110,100, - 111,119,115,82,101,103,105,115,116,114,121,70,105,110,100,101, - 114,229,2,0,0,115,16,0,0,0,16,3,6,3,6,3, - 6,2,6,2,18,7,18,15,3,1,117,21,0,0,0,87, - 105,110,100,111,119,115,82,101,103,105,115,116,114,121,70,105, - 110,100,101,114,99,1,0,0,0,0,0,0,0,1,0,0, - 0,5,0,0,0,66,0,0,0,115,74,0,0,0,124,0, - 0,69,101,0,0,90,1,0,100,0,0,90,2,0,100,1, - 0,90,3,0,100,2,0,100,3,0,132,0,0,90,4,0, - 100,4,0,100,5,0,132,0,0,90,5,0,101,6,0,100, - 6,0,100,10,0,100,7,0,100,8,0,132,0,1,131,1, - 0,90,8,0,100,9,0,83,40,11,0,0,0,117,13,0, - 0,0,95,76,111,97,100,101,114,66,97,115,105,99,115,117, - 83,0,0,0,66,97,115,101,32,99,108,97,115,115,32,111, - 102,32,99,111,109,109,111,110,32,99,111,100,101,32,110,101, - 101,100,101,100,32,98,121,32,98,111,116,104,32,83,111,117, - 114,99,101,76,111,97,100,101,114,32,97,110,100,10,32,32, - 32,32,83,111,117,114,99,101,108,101,115,115,70,105,108,101, - 76,111,97,100,101,114,46,99,2,0,0,0,0,0,0,0, - 5,0,0,0,3,0,0,0,67,0,0,0,115,88,0,0, - 0,116,0,0,124,0,0,106,1,0,124,1,0,131,1,0, - 131,1,0,100,1,0,25,125,2,0,124,2,0,106,2,0, - 100,2,0,100,1,0,131,2,0,100,3,0,25,125,3,0, - 124,1,0,106,3,0,100,2,0,131,1,0,100,4,0,25, - 125,4,0,124,3,0,100,5,0,107,2,0,111,87,0,124, - 4,0,100,5,0,107,3,0,83,40,6,0,0,0,117,141, - 0,0,0,67,111,110,99,114,101,116,101,32,105,109,112,108, - 101,109,101,110,116,97,116,105,111,110,32,111,102,32,73,110, - 115,112,101,99,116,76,111,97,100,101,114,46,105,115,95,112, - 97,99,107,97,103,101,32,98,121,32,99,104,101,99,107,105, - 110,103,32,105,102,10,32,32,32,32,32,32,32,32,116,104, - 101,32,112,97,116,104,32,114,101,116,117,114,110,101,100,32, - 98,121,32,103,101,116,95,102,105,108,101,110,97,109,101,32, - 104,97,115,32,97,32,102,105,108,101,110,97,109,101,32,111, - 102,32,39,95,95,105,110,105,116,95,95,46,112,121,39,46, - 105,1,0,0,0,117,1,0,0,0,46,105,0,0,0,0, - 105,2,0,0,0,117,8,0,0,0,95,95,105,110,105,116, - 95,95,40,4,0,0,0,117,11,0,0,0,95,112,97,116, - 104,95,115,112,108,105,116,117,12,0,0,0,103,101,116,95, - 102,105,108,101,110,97,109,101,117,6,0,0,0,114,115,112, - 108,105,116,117,10,0,0,0,114,112,97,114,116,105,116,105, - 111,110,40,5,0,0,0,117,4,0,0,0,115,101,108,102, - 117,8,0,0,0,102,117,108,108,110,97,109,101,117,8,0, - 0,0,102,105,108,101,110,97,109,101,117,13,0,0,0,102, - 105,108,101,110,97,109,101,95,98,97,115,101,117,9,0,0, - 0,116,97,105,108,95,110,97,109,101,40,0,0,0,0,40, - 0,0,0,0,117,29,0,0,0,60,102,114,111,122,101,110, - 32,105,109,112,111,114,116,108,105,98,46,95,98,111,111,116, - 115,116,114,97,112,62,117,10,0,0,0,105,115,95,112,97, - 99,107,97,103,101,28,3,0,0,115,8,0,0,0,0,3, - 25,1,22,1,19,1,117,24,0,0,0,95,76,111,97,100, - 101,114,66,97,115,105,99,115,46,105,115,95,112,97,99,107, - 97,103,101,99,5,0,0,0,0,0,0,0,12,0,0,0, - 22,0,0,0,67,0,0,0,115,198,1,0,0,124,2,0, - 100,1,0,100,2,0,133,2,0,25,125,5,0,124,2,0, - 100,2,0,100,3,0,133,2,0,25,125,6,0,124,2,0, - 100,3,0,100,4,0,133,2,0,25,125,7,0,124,5,0, - 116,0,0,107,3,0,114,105,0,100,5,0,106,1,0,124, - 1,0,124,5,0,131,2,0,125,8,0,116,2,0,124,8, - 0,100,6,0,124,1,0,100,7,0,124,3,0,131,1,2, - 130,1,0,110,116,0,116,3,0,124,6,0,131,1,0,100, - 2,0,107,3,0,114,163,0,100,8,0,106,1,0,124,1, - 0,131,1,0,125,9,0,116,4,0,124,9,0,131,1,0, - 1,116,5,0,124,9,0,131,1,0,130,1,0,110,58,0, - 116,3,0,124,7,0,131,1,0,100,2,0,107,3,0,114, - 221,0,100,9,0,106,1,0,124,1,0,131,1,0,125,9, - 0,116,4,0,124,9,0,131,1,0,1,116,5,0,124,9, - 0,131,1,0,130,1,0,110,0,0,124,4,0,100,1,0, - 107,9,0,114,184,1,121,20,0,116,7,0,124,4,0,100, - 10,0,25,131,1,0,125,10,0,87,110,18,0,4,116,8, - 0,107,10,0,114,17,1,1,1,1,89,110,71,0,88,116, - 9,0,124,6,0,131,1,0,124,10,0,107,3,0,114,88, - 1,100,11,0,106,1,0,124,1,0,131,1,0,125,9,0, - 116,4,0,124,9,0,131,1,0,1,116,2,0,124,9,0, - 100,6,0,124,1,0,100,7,0,124,3,0,131,1,2,130, - 1,0,110,0,0,121,18,0,124,4,0,100,12,0,25,100, - 13,0,64,125,11,0,87,110,18,0,4,116,8,0,107,10, - 0,114,126,1,1,1,1,89,113,184,1,88,116,9,0,124, - 7,0,131,1,0,124,11,0,107,3,0,114,184,1,116,2, - 0,100,11,0,106,1,0,124,1,0,131,1,0,100,6,0, - 124,1,0,100,7,0,124,3,0,131,1,2,130,1,0,113, - 184,1,110,0,0,124,2,0,100,4,0,100,1,0,133,2, - 0,25,83,40,14,0,0,0,117,193,0,0,0,82,101,116, - 117,114,110,32,116,104,101,32,109,97,114,115,104,97,108,108, - 101,100,32,98,121,116,101,115,32,102,114,111,109,32,98,121, - 116,101,99,111,100,101,44,32,118,101,114,105,102,121,105,110, - 103,32,116,104,101,32,109,97,103,105,99,10,32,32,32,32, - 32,32,32,32,110,117,109,98,101,114,44,32,116,105,109,101, - 115,116,97,109,112,32,97,110,100,32,115,111,117,114,99,101, - 32,115,105,122,101,32,97,108,111,110,103,32,116,104,101,32, - 119,97,121,46,10,10,32,32,32,32,32,32,32,32,73,102, - 32,115,111,117,114,99,101,95,115,116,97,116,115,32,105,115, - 32,78,111,110,101,32,116,104,101,110,32,115,107,105,112,32, - 116,104,101,32,116,105,109,101,115,116,97,109,112,32,99,104, - 101,99,107,46,10,10,32,32,32,32,32,32,32,32,78,105, - 4,0,0,0,105,8,0,0,0,105,12,0,0,0,117,30, - 0,0,0,98,97,100,32,109,97,103,105,99,32,110,117,109, - 98,101,114,32,105,110,32,123,33,114,125,58,32,123,33,114, - 125,117,4,0,0,0,110,97,109,101,117,4,0,0,0,112, - 97,116,104,117,19,0,0,0,98,97,100,32,116,105,109,101, - 115,116,97,109,112,32,105,110,32,123,125,117,14,0,0,0, - 98,97,100,32,115,105,122,101,32,105,110,32,123,125,117,5, - 0,0,0,109,116,105,109,101,117,24,0,0,0,98,121,116, - 101,99,111,100,101,32,105,115,32,115,116,97,108,101,32,102, - 111,114,32,123,125,117,4,0,0,0,115,105,122,101,108,3, - 0,0,0,255,127,255,127,3,0,40,10,0,0,0,117,12, - 0,0,0,95,77,65,71,73,67,95,66,89,84,69,83,117, - 6,0,0,0,102,111,114,109,97,116,117,11,0,0,0,73, - 109,112,111,114,116,69,114,114,111,114,117,3,0,0,0,108, - 101,110,117,16,0,0,0,95,118,101,114,98,111,115,101,95, - 109,101,115,115,97,103,101,117,8,0,0,0,69,79,70,69, - 114,114,111,114,117,4,0,0,0,78,111,110,101,117,3,0, - 0,0,105,110,116,117,8,0,0,0,75,101,121,69,114,114, - 111,114,117,7,0,0,0,95,114,95,108,111,110,103,40,12, - 0,0,0,117,4,0,0,0,115,101,108,102,117,8,0,0, - 0,102,117,108,108,110,97,109,101,117,4,0,0,0,100,97, - 116,97,117,13,0,0,0,98,121,116,101,99,111,100,101,95, - 112,97,116,104,117,12,0,0,0,115,111,117,114,99,101,95, - 115,116,97,116,115,117,5,0,0,0,109,97,103,105,99,117, - 13,0,0,0,114,97,119,95,116,105,109,101,115,116,97,109, - 112,117,8,0,0,0,114,97,119,95,115,105,122,101,117,3, - 0,0,0,109,115,103,117,7,0,0,0,109,101,115,115,97, - 103,101,117,12,0,0,0,115,111,117,114,99,101,95,109,116, - 105,109,101,117,11,0,0,0,115,111,117,114,99,101,95,115, - 105,122,101,40,0,0,0,0,40,0,0,0,0,117,29,0, - 0,0,60,102,114,111,122,101,110,32,105,109,112,111,114,116, - 108,105,98,46,95,98,111,111,116,115,116,114,97,112,62,117, - 20,0,0,0,95,98,121,116,101,115,95,102,114,111,109,95, - 98,121,116,101,99,111,100,101,36,3,0,0,115,66,0,0, - 0,0,7,16,1,16,1,16,1,12,1,18,1,27,1,18, - 1,15,1,10,1,15,1,18,1,15,1,10,1,15,1,12, - 1,3,1,20,1,13,1,5,2,18,1,15,1,10,1,15, - 1,12,1,3,1,18,1,13,1,5,2,18,1,3,1,15, - 1,21,3,117,34,0,0,0,95,76,111,97,100,101,114,66, - 97,115,105,99,115,46,95,98,121,116,101,115,95,102,114,111, - 109,95,98,121,116,101,99,111,100,101,117,10,0,0,0,115, - 111,117,114,99,101,108,101,115,115,99,2,0,0,0,1,0, - 0,0,5,0,0,0,12,0,0,0,67,0,0,0,115,227, - 0,0,0,124,1,0,106,0,0,125,3,0,124,0,0,106, - 1,0,124,3,0,131,1,0,125,4,0,124,0,0,106,2, - 0,124,3,0,131,1,0,124,1,0,95,3,0,124,2,0, - 115,106,0,121,22,0,116,4,0,124,1,0,106,3,0,131, - 1,0,124,1,0,95,5,0,87,113,118,0,4,116,6,0, - 107,10,0,114,102,0,1,1,1,124,1,0,106,3,0,124, - 1,0,95,5,0,89,113,118,0,88,110,12,0,124,1,0, - 106,3,0,124,1,0,95,5,0,124,3,0,124,1,0,95, - 7,0,124,0,0,106,8,0,124,3,0,131,1,0,114,170, - 0,116,9,0,124,1,0,106,3,0,131,1,0,100,1,0, - 25,103,1,0,124,1,0,95,10,0,110,25,0,124,1,0, - 106,7,0,106,11,0,100,2,0,131,1,0,100,1,0,25, - 124,1,0,95,7,0,124,0,0,124,1,0,95,12,0,116, - 13,0,116,14,0,124,4,0,124,1,0,106,15,0,131,3, - 0,1,124,1,0,83,40,3,0,0,0,117,82,0,0,0, - 72,101,108,112,101,114,32,102,111,114,32,108,111,97,100,95, - 109,111,100,117,108,101,32,97,98,108,101,32,116,111,32,104, - 97,110,100,108,101,32,101,105,116,104,101,114,32,115,111,117, - 114,99,101,32,111,114,32,115,111,117,114,99,101,108,101,115, - 115,10,32,32,32,32,32,32,32,32,108,111,97,100,105,110, - 103,46,105,0,0,0,0,117,1,0,0,0,46,40,16,0, - 0,0,117,8,0,0,0,95,95,110,97,109,101,95,95,117, - 8,0,0,0,103,101,116,95,99,111,100,101,117,12,0,0, - 0,103,101,116,95,102,105,108,101,110,97,109,101,117,8,0, - 0,0,95,95,102,105,108,101,95,95,117,17,0,0,0,99, - 97,99,104,101,95,102,114,111,109,95,115,111,117,114,99,101, - 117,10,0,0,0,95,95,99,97,99,104,101,100,95,95,117, - 19,0,0,0,78,111,116,73,109,112,108,101,109,101,110,116, - 101,100,69,114,114,111,114,117,11,0,0,0,95,95,112,97, - 99,107,97,103,101,95,95,117,10,0,0,0,105,115,95,112, - 97,99,107,97,103,101,117,11,0,0,0,95,112,97,116,104, - 95,115,112,108,105,116,117,8,0,0,0,95,95,112,97,116, - 104,95,95,117,10,0,0,0,114,112,97,114,116,105,116,105, - 111,110,117,10,0,0,0,95,95,108,111,97,100,101,114,95, - 95,117,25,0,0,0,95,99,97,108,108,95,119,105,116,104, - 95,102,114,97,109,101,115,95,114,101,109,111,118,101,100,117, - 4,0,0,0,101,120,101,99,117,8,0,0,0,95,95,100, - 105,99,116,95,95,40,5,0,0,0,117,4,0,0,0,115, - 101,108,102,117,6,0,0,0,109,111,100,117,108,101,117,10, - 0,0,0,115,111,117,114,99,101,108,101,115,115,117,4,0, - 0,0,110,97,109,101,117,11,0,0,0,99,111,100,101,95, - 111,98,106,101,99,116,40,0,0,0,0,40,0,0,0,0, - 117,29,0,0,0,60,102,114,111,122,101,110,32,105,109,112, - 111,114,116,108,105,98,46,95,98,111,111,116,115,116,114,97, - 112,62,117,12,0,0,0,95,108,111,97,100,95,109,111,100, - 117,108,101,81,3,0,0,115,32,0,0,0,0,4,9,1, - 15,1,18,1,6,1,3,1,22,1,13,1,20,2,12,1, - 9,1,15,1,28,2,25,1,9,1,19,1,117,26,0,0, - 0,95,76,111,97,100,101,114,66,97,115,105,99,115,46,95, - 108,111,97,100,95,109,111,100,117,108,101,78,70,40,9,0, - 0,0,117,8,0,0,0,95,95,110,97,109,101,95,95,117, - 10,0,0,0,95,95,109,111,100,117,108,101,95,95,117,12, - 0,0,0,95,95,113,117,97,108,110,97,109,101,95,95,117, - 7,0,0,0,95,95,100,111,99,95,95,117,10,0,0,0, - 105,115,95,112,97,99,107,97,103,101,117,20,0,0,0,95, - 98,121,116,101,115,95,102,114,111,109,95,98,121,116,101,99, - 111,100,101,117,17,0,0,0,109,111,100,117,108,101,95,102, - 111,114,95,108,111,97,100,101,114,117,5,0,0,0,70,97, - 108,115,101,117,12,0,0,0,95,108,111,97,100,95,109,111, - 100,117,108,101,40,1,0,0,0,117,10,0,0,0,95,95, - 108,111,99,97,108,115,95,95,40,0,0,0,0,40,0,0, - 0,0,117,29,0,0,0,60,102,114,111,122,101,110,32,105, - 109,112,111,114,116,108,105,98,46,95,98,111,111,116,115,116, - 114,97,112,62,117,13,0,0,0,95,76,111,97,100,101,114, - 66,97,115,105,99,115,23,3,0,0,115,10,0,0,0,16, - 3,6,2,12,8,12,45,6,1,117,13,0,0,0,95,76, - 111,97,100,101,114,66,97,115,105,99,115,99,1,0,0,0, - 0,0,0,0,1,0,0,0,2,0,0,0,66,0,0,0, - 115,104,0,0,0,124,0,0,69,101,0,0,90,1,0,100, - 0,0,90,2,0,100,1,0,100,2,0,132,0,0,90,3, - 0,100,3,0,100,4,0,132,0,0,90,4,0,100,5,0, - 100,6,0,132,0,0,90,5,0,100,7,0,100,8,0,132, - 0,0,90,6,0,100,9,0,100,10,0,132,0,0,90,7, - 0,100,11,0,100,12,0,132,0,0,90,8,0,100,13,0, - 100,14,0,132,0,0,90,9,0,100,15,0,83,40,16,0, - 0,0,117,12,0,0,0,83,111,117,114,99,101,76,111,97, - 100,101,114,99,2,0,0,0,0,0,0,0,2,0,0,0, - 1,0,0,0,67,0,0,0,115,10,0,0,0,116,0,0, - 130,1,0,100,1,0,83,40,2,0,0,0,117,121,0,0, - 0,79,112,116,105,111,110,97,108,32,109,101,116,104,111,100, - 32,116,104,97,116,32,114,101,116,117,114,110,115,32,116,104, - 101,32,109,111,100,105,102,105,99,97,116,105,111,110,32,116, - 105,109,101,32,40,97,110,32,105,110,116,41,32,102,111,114, - 32,116,104,101,10,32,32,32,32,32,32,32,32,115,112,101, - 99,105,102,105,101,100,32,112,97,116,104,44,32,119,104,101, - 114,101,32,112,97,116,104,32,105,115,32,97,32,115,116,114, - 46,10,32,32,32,32,32,32,32,32,78,40,1,0,0,0, - 117,19,0,0,0,78,111,116,73,109,112,108,101,109,101,110, - 116,101,100,69,114,114,111,114,40,2,0,0,0,117,4,0, - 0,0,115,101,108,102,117,4,0,0,0,112,97,116,104,40, - 0,0,0,0,40,0,0,0,0,117,29,0,0,0,60,102, - 114,111,122,101,110,32,105,109,112,111,114,116,108,105,98,46, - 95,98,111,111,116,115,116,114,97,112,62,117,10,0,0,0, - 112,97,116,104,95,109,116,105,109,101,107,3,0,0,115,2, - 0,0,0,0,4,117,23,0,0,0,83,111,117,114,99,101, - 76,111,97,100,101,114,46,112,97,116,104,95,109,116,105,109, - 101,99,2,0,0,0,0,0,0,0,2,0,0,0,3,0, - 0,0,67,0,0,0,115,20,0,0,0,105,1,0,124,0, - 0,106,0,0,124,1,0,131,1,0,100,1,0,54,83,40, - 2,0,0,0,117,114,1,0,0,79,112,116,105,111,110,97, - 108,32,109,101,116,104,111,100,32,114,101,116,117,114,110,105, - 110,103,32,97,32,109,101,116,97,100,97,116,97,32,100,105, - 99,116,32,102,111,114,32,116,104,101,32,115,112,101,99,105, - 102,105,101,100,32,112,97,116,104,10,32,32,32,32,32,32, - 32,32,116,111,32,98,121,32,116,104,101,32,112,97,116,104, - 32,40,115,116,114,41,46,10,32,32,32,32,32,32,32,32, - 80,111,115,115,105,98,108,101,32,107,101,121,115,58,10,32, - 32,32,32,32,32,32,32,45,32,39,109,116,105,109,101,39, - 32,40,109,97,110,100,97,116,111,114,121,41,32,105,115,32, - 116,104,101,32,110,117,109,101,114,105,99,32,116,105,109,101, - 115,116,97,109,112,32,111,102,32,108,97,115,116,32,115,111, - 117,114,99,101,10,32,32,32,32,32,32,32,32,32,32,99, - 111,100,101,32,109,111,100,105,102,105,99,97,116,105,111,110, - 59,10,32,32,32,32,32,32,32,32,45,32,39,115,105,122, - 101,39,32,40,111,112,116,105,111,110,97,108,41,32,105,115, - 32,116,104,101,32,115,105,122,101,32,105,110,32,98,121,116, - 101,115,32,111,102,32,116,104,101,32,115,111,117,114,99,101, - 32,99,111,100,101,46,10,10,32,32,32,32,32,32,32,32, - 73,109,112,108,101,109,101,110,116,105,110,103,32,116,104,105, - 115,32,109,101,116,104,111,100,32,97,108,108,111,119,115,32, - 116,104,101,32,108,111,97,100,101,114,32,116,111,32,114,101, - 97,100,32,98,121,116,101,99,111,100,101,32,102,105,108,101, - 115,46,10,32,32,32,32,32,32,32,32,117,5,0,0,0, - 109,116,105,109,101,40,1,0,0,0,117,10,0,0,0,112, - 97,116,104,95,109,116,105,109,101,40,2,0,0,0,117,4, - 0,0,0,115,101,108,102,117,4,0,0,0,112,97,116,104, - 40,0,0,0,0,40,0,0,0,0,117,29,0,0,0,60, - 102,114,111,122,101,110,32,105,109,112,111,114,116,108,105,98, - 46,95,98,111,111,116,115,116,114,97,112,62,117,10,0,0, - 0,112,97,116,104,95,115,116,97,116,115,113,3,0,0,115, - 2,0,0,0,0,10,117,23,0,0,0,83,111,117,114,99, - 101,76,111,97,100,101,114,46,112,97,116,104,95,115,116,97, - 116,115,99,4,0,0,0,0,0,0,0,4,0,0,0,3, - 0,0,0,67,0,0,0,115,16,0,0,0,124,0,0,106, - 0,0,124,2,0,124,3,0,131,2,0,83,40,1,0,0, - 0,117,228,0,0,0,79,112,116,105,111,110,97,108,32,109, - 101,116,104,111,100,32,119,104,105,99,104,32,119,114,105,116, - 101,115,32,100,97,116,97,32,40,98,121,116,101,115,41,32, - 116,111,32,97,32,102,105,108,101,32,112,97,116,104,32,40, - 97,32,115,116,114,41,46,10,10,32,32,32,32,32,32,32, - 32,73,109,112,108,101,109,101,110,116,105,110,103,32,116,104, - 105,115,32,109,101,116,104,111,100,32,97,108,108,111,119,115, - 32,102,111,114,32,116,104,101,32,119,114,105,116,105,110,103, - 32,111,102,32,98,121,116,101,99,111,100,101,32,102,105,108, - 101,115,46,10,10,32,32,32,32,32,32,32,32,84,104,101, - 32,115,111,117,114,99,101,32,112,97,116,104,32,105,115,32, - 110,101,101,100,101,100,32,105,110,32,111,114,100,101,114,32, - 116,111,32,99,111,114,114,101,99,116,108,121,32,116,114,97, - 110,115,102,101,114,32,112,101,114,109,105,115,115,105,111,110, - 115,10,32,32,32,32,32,32,32,32,40,1,0,0,0,117, - 8,0,0,0,115,101,116,95,100,97,116,97,40,4,0,0, - 0,117,4,0,0,0,115,101,108,102,117,11,0,0,0,115, - 111,117,114,99,101,95,112,97,116,104,117,10,0,0,0,99, - 97,99,104,101,95,112,97,116,104,117,4,0,0,0,100,97, - 116,97,40,0,0,0,0,40,0,0,0,0,117,29,0,0, - 0,60,102,114,111,122,101,110,32,105,109,112,111,114,116,108, - 105,98,46,95,98,111,111,116,115,116,114,97,112,62,117,15, - 0,0,0,95,99,97,99,104,101,95,98,121,116,101,99,111, - 100,101,125,3,0,0,115,2,0,0,0,0,8,117,28,0, - 0,0,83,111,117,114,99,101,76,111,97,100,101,114,46,95, - 99,97,99,104,101,95,98,121,116,101,99,111,100,101,99,3, - 0,0,0,0,0,0,0,3,0,0,0,1,0,0,0,67, - 0,0,0,115,10,0,0,0,116,0,0,130,1,0,100,1, - 0,83,40,2,0,0,0,117,151,0,0,0,79,112,116,105, - 111,110,97,108,32,109,101,116,104,111,100,32,119,104,105,99, - 104,32,119,114,105,116,101,115,32,100,97,116,97,32,40,98, - 121,116,101,115,41,32,116,111,32,97,32,102,105,108,101,32, - 112,97,116,104,32,40,97,32,115,116,114,41,46,10,10,32, - 32,32,32,32,32,32,32,73,109,112,108,101,109,101,110,116, - 105,110,103,32,116,104,105,115,32,109,101,116,104,111,100,32, - 97,108,108,111,119,115,32,102,111,114,32,116,104,101,32,119, - 114,105,116,105,110,103,32,111,102,32,98,121,116,101,99,111, - 100,101,32,102,105,108,101,115,46,10,10,32,32,32,32,32, - 32,32,32,78,40,1,0,0,0,117,19,0,0,0,78,111, - 116,73,109,112,108,101,109,101,110,116,101,100,69,114,114,111, - 114,40,3,0,0,0,117,4,0,0,0,115,101,108,102,117, - 4,0,0,0,112,97,116,104,117,4,0,0,0,100,97,116, - 97,40,0,0,0,0,40,0,0,0,0,117,29,0,0,0, - 60,102,114,111,122,101,110,32,105,109,112,111,114,116,108,105, - 98,46,95,98,111,111,116,115,116,114,97,112,62,117,8,0, - 0,0,115,101,116,95,100,97,116,97,135,3,0,0,115,2, - 0,0,0,0,6,117,21,0,0,0,83,111,117,114,99,101, - 76,111,97,100,101,114,46,115,101,116,95,100,97,116,97,99, - 2,0,0,0,0,0,0,0,9,0,0,0,44,0,0,0, - 67,0,0,0,115,62,1,0,0,100,1,0,100,2,0,108, - 0,0,125,2,0,124,0,0,106,1,0,124,1,0,131,1, - 0,125,3,0,121,19,0,124,0,0,106,2,0,124,3,0, - 131,1,0,125,4,0,87,110,58,0,4,116,3,0,107,10, - 0,114,106,0,1,125,5,0,1,122,26,0,116,4,0,100, - 3,0,100,4,0,124,1,0,131,1,1,124,5,0,130,2, - 0,87,89,100,2,0,100,2,0,125,5,0,126,5,0,88, - 110,1,0,88,116,5,0,106,6,0,124,4,0,131,1,0, - 106,7,0,125,6,0,121,19,0,124,2,0,106,8,0,124, - 6,0,131,1,0,125,7,0,87,110,58,0,4,116,9,0, - 107,10,0,114,204,0,1,125,5,0,1,122,26,0,116,4, - 0,100,5,0,100,4,0,124,1,0,131,1,1,124,5,0, - 130,2,0,87,89,100,2,0,100,2,0,125,5,0,126,5, - 0,88,110,1,0,88,116,5,0,106,10,0,100,2,0,100, - 7,0,131,2,0,125,8,0,121,30,0,124,8,0,106,13, - 0,124,4,0,106,13,0,124,7,0,100,1,0,25,131,1, - 0,131,1,0,83,87,110,58,0,4,116,14,0,107,10,0, - 114,57,1,1,125,5,0,1,122,26,0,116,4,0,100,6, - 0,100,4,0,124,1,0,131,1,1,124,5,0,130,2,0, - 87,89,100,2,0,100,2,0,125,5,0,126,5,0,88,110, - 1,0,88,100,2,0,83,40,8,0,0,0,117,52,0,0, - 0,67,111,110,99,114,101,116,101,32,105,109,112,108,101,109, - 101,110,116,97,116,105,111,110,32,111,102,32,73,110,115,112, - 101,99,116,76,111,97,100,101,114,46,103,101,116,95,115,111, - 117,114,99,101,46,105,0,0,0,0,78,117,39,0,0,0, - 115,111,117,114,99,101,32,110,111,116,32,97,118,97,105,108, - 97,98,108,101,32,116,104,114,111,117,103,104,32,103,101,116, - 95,100,97,116,97,40,41,117,4,0,0,0,110,97,109,101, - 117,25,0,0,0,70,97,105,108,101,100,32,116,111,32,100, - 101,116,101,99,116,32,101,110,99,111,100,105,110,103,117,28, - 0,0,0,70,97,105,108,101,100,32,116,111,32,100,101,99, - 111,100,101,32,115,111,117,114,99,101,32,102,105,108,101,84, - 40,15,0,0,0,117,8,0,0,0,116,111,107,101,110,105, - 122,101,117,12,0,0,0,103,101,116,95,102,105,108,101,110, - 97,109,101,117,8,0,0,0,103,101,116,95,100,97,116,97, - 117,7,0,0,0,73,79,69,114,114,111,114,117,11,0,0, - 0,73,109,112,111,114,116,69,114,114,111,114,117,3,0,0, - 0,95,105,111,117,7,0,0,0,66,121,116,101,115,73,79, - 117,8,0,0,0,114,101,97,100,108,105,110,101,117,15,0, - 0,0,100,101,116,101,99,116,95,101,110,99,111,100,105,110, - 103,117,11,0,0,0,83,121,110,116,97,120,69,114,114,111, - 114,117,25,0,0,0,73,110,99,114,101,109,101,110,116,97, - 108,78,101,119,108,105,110,101,68,101,99,111,100,101,114,117, - 4,0,0,0,78,111,110,101,117,4,0,0,0,84,114,117, - 101,117,6,0,0,0,100,101,99,111,100,101,117,18,0,0, - 0,85,110,105,99,111,100,101,68,101,99,111,100,101,69,114, - 114,111,114,40,9,0,0,0,117,4,0,0,0,115,101,108, - 102,117,8,0,0,0,102,117,108,108,110,97,109,101,117,8, - 0,0,0,116,111,107,101,110,105,122,101,117,4,0,0,0, - 112,97,116,104,117,12,0,0,0,115,111,117,114,99,101,95, - 98,121,116,101,115,117,3,0,0,0,101,120,99,117,10,0, - 0,0,114,101,97,100,115,111,117,114,99,101,117,8,0,0, - 0,101,110,99,111,100,105,110,103,117,15,0,0,0,110,101, - 119,108,105,110,101,95,100,101,99,111,100,101,114,40,0,0, - 0,0,40,0,0,0,0,117,29,0,0,0,60,102,114,111, - 122,101,110,32,105,109,112,111,114,116,108,105,98,46,95,98, - 111,111,116,115,116,114,97,112,62,117,10,0,0,0,103,101, - 116,95,115,111,117,114,99,101,144,3,0,0,115,38,0,0, - 0,0,2,12,1,15,1,3,1,19,1,18,1,9,1,31, - 1,18,1,3,1,19,1,18,1,9,1,31,1,18,1,3, - 1,30,1,18,1,9,1,117,23,0,0,0,83,111,117,114, - 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,12,0,0,0, - 45,0,0,0,67,0,0,0,115,52,2,0,0,124,0,0, - 106,0,0,124,1,0,131,1,0,125,2,0,100,10,0,125, - 3,0,121,16,0,116,2,0,124,2,0,131,1,0,125,4, - 0,87,110,24,0,4,116,3,0,107,10,0,114,63,0,1, - 1,1,100,10,0,125,4,0,89,110,14,1,88,121,19,0, - 124,0,0,106,4,0,124,2,0,131,1,0,125,5,0,87, - 110,18,0,4,116,3,0,107,10,0,114,103,0,1,1,1, - 89,110,230,0,88,116,5,0,124,5,0,100,1,0,25,131, - 1,0,125,3,0,121,19,0,124,0,0,106,6,0,124,4, - 0,131,1,0,125,6,0,87,110,18,0,4,116,7,0,107, - 10,0,114,159,0,1,1,1,89,110,174,0,88,121,28,0, - 124,0,0,106,8,0,124,1,0,124,6,0,124,4,0,124, - 5,0,131,4,0,125,7,0,87,110,24,0,4,116,9,0, - 116,10,0,102,2,0,107,10,0,114,214,0,1,1,1,89, - 110,119,0,88,116,11,0,100,2,0,124,4,0,124,2,0, - 131,3,0,1,116,12,0,106,13,0,124,7,0,131,1,0, - 125,8,0,116,14,0,124,8,0,116,15,0,131,2,0,114, - 38,1,116,16,0,106,17,0,124,8,0,124,2,0,131,2, - 0,1,116,11,0,100,3,0,124,4,0,131,2,0,1,124, - 8,0,83,100,4,0,125,9,0,116,9,0,124,9,0,106, - 18,0,124,4,0,131,1,0,100,5,0,124,1,0,100,6, - 0,124,4,0,131,1,2,130,1,0,124,0,0,106,6,0, - 124,2,0,131,1,0,125,10,0,116,19,0,116,20,0,124, - 10,0,124,2,0,100,7,0,100,8,0,100,11,0,131,4, - 1,125,11,0,116,11,0,100,3,0,124,2,0,131,2,0, - 1,116,22,0,106,23,0,12,114,48,2,124,4,0,100,10, - 0,107,9,0,114,48,2,124,3,0,100,10,0,107,9,0, - 114,48,2,116,24,0,116,25,0,131,1,0,125,6,0,124, - 6,0,106,26,0,116,27,0,124,3,0,131,1,0,131,1, - 0,1,124,6,0,106,26,0,116,27,0,116,28,0,124,10, - 0,131,1,0,131,1,0,131,1,0,1,124,6,0,106,26, - 0,116,12,0,106,29,0,124,11,0,131,1,0,131,1,0, - 1,121,36,0,124,0,0,106,30,0,124,2,0,124,4,0, - 124,6,0,131,3,0,1,116,11,0,100,9,0,124,4,0, - 131,2,0,1,87,113,48,2,4,116,3,0,107,10,0,114, - 44,2,1,1,1,89,113,48,2,88,110,0,0,124,11,0, - 83,40,12,0,0,0,117,190,0,0,0,67,111,110,99,114, - 101,116,101,32,105,109,112,108,101,109,101,110,116,97,116,105, - 111,110,32,111,102,32,73,110,115,112,101,99,116,76,111,97, - 100,101,114,46,103,101,116,95,99,111,100,101,46,10,10,32, - 32,32,32,32,32,32,32,82,101,97,100,105,110,103,32,111, - 102,32,98,121,116,101,99,111,100,101,32,114,101,113,117,105, - 114,101,115,32,112,97,116,104,95,115,116,97,116,115,32,116, - 111,32,98,101,32,105,109,112,108,101,109,101,110,116,101,100, - 46,32,84,111,32,119,114,105,116,101,10,32,32,32,32,32, - 32,32,32,98,121,116,101,99,111,100,101,44,32,115,101,116, - 95,100,97,116,97,32,109,117,115,116,32,97,108,115,111,32, - 98,101,32,105,109,112,108,101,109,101,110,116,101,100,46,10, - 10,32,32,32,32,32,32,32,32,117,5,0,0,0,109,116, - 105,109,101,117,13,0,0,0,123,125,32,109,97,116,99,104, - 101,115,32,123,125,117,19,0,0,0,99,111,100,101,32,111, - 98,106,101,99,116,32,102,114,111,109,32,123,125,117,21,0, - 0,0,78,111,110,45,99,111,100,101,32,111,98,106,101,99, - 116,32,105,110,32,123,125,117,4,0,0,0,110,97,109,101, - 117,4,0,0,0,112,97,116,104,117,4,0,0,0,101,120, - 101,99,117,12,0,0,0,100,111,110,116,95,105,110,104,101, - 114,105,116,117,10,0,0,0,119,114,111,116,101,32,123,33, - 114,125,78,84,40,31,0,0,0,117,12,0,0,0,103,101, - 116,95,102,105,108,101,110,97,109,101,117,4,0,0,0,78, - 111,110,101,117,17,0,0,0,99,97,99,104,101,95,102,114, - 111,109,95,115,111,117,114,99,101,117,19,0,0,0,78,111, - 116,73,109,112,108,101,109,101,110,116,101,100,69,114,114,111, - 114,117,10,0,0,0,112,97,116,104,95,115,116,97,116,115, - 117,3,0,0,0,105,110,116,117,8,0,0,0,103,101,116, - 95,100,97,116,97,117,7,0,0,0,73,79,69,114,114,111, - 114,117,20,0,0,0,95,98,121,116,101,115,95,102,114,111, - 109,95,98,121,116,101,99,111,100,101,117,11,0,0,0,73, - 109,112,111,114,116,69,114,114,111,114,117,8,0,0,0,69, - 79,70,69,114,114,111,114,117,16,0,0,0,95,118,101,114, - 98,111,115,101,95,109,101,115,115,97,103,101,117,7,0,0, - 0,109,97,114,115,104,97,108,117,5,0,0,0,108,111,97, - 100,115,117,10,0,0,0,105,115,105,110,115,116,97,110,99, - 101,117,10,0,0,0,95,99,111,100,101,95,116,121,112,101, - 117,4,0,0,0,95,105,109,112,117,16,0,0,0,95,102, - 105,120,95,99,111,95,102,105,108,101,110,97,109,101,117,6, - 0,0,0,102,111,114,109,97,116,117,25,0,0,0,95,99, - 97,108,108,95,119,105,116,104,95,102,114,97,109,101,115,95, - 114,101,109,111,118,101,100,117,7,0,0,0,99,111,109,112, - 105,108,101,117,4,0,0,0,84,114,117,101,117,3,0,0, - 0,115,121,115,117,19,0,0,0,100,111,110,116,95,119,114, - 105,116,101,95,98,121,116,101,99,111,100,101,117,9,0,0, - 0,98,121,116,101,97,114,114,97,121,117,12,0,0,0,95, - 77,65,71,73,67,95,66,89,84,69,83,117,6,0,0,0, - 101,120,116,101,110,100,117,7,0,0,0,95,119,95,108,111, - 110,103,117,3,0,0,0,108,101,110,117,5,0,0,0,100, - 117,109,112,115,117,15,0,0,0,95,99,97,99,104,101,95, - 98,121,116,101,99,111,100,101,40,12,0,0,0,117,4,0, - 0,0,115,101,108,102,117,8,0,0,0,102,117,108,108,110, - 97,109,101,117,11,0,0,0,115,111,117,114,99,101,95,112, - 97,116,104,117,12,0,0,0,115,111,117,114,99,101,95,109, - 116,105,109,101,117,13,0,0,0,98,121,116,101,99,111,100, - 101,95,112,97,116,104,117,2,0,0,0,115,116,117,4,0, - 0,0,100,97,116,97,117,10,0,0,0,98,121,116,101,115, - 95,100,97,116,97,117,5,0,0,0,102,111,117,110,100,117, - 3,0,0,0,109,115,103,117,12,0,0,0,115,111,117,114, - 99,101,95,98,121,116,101,115,117,11,0,0,0,99,111,100, - 101,95,111,98,106,101,99,116,40,0,0,0,0,40,0,0, - 0,0,117,29,0,0,0,60,102,114,111,122,101,110,32,105, - 109,112,111,114,116,108,105,98,46,95,98,111,111,116,115,116, - 114,97,112,62,117,8,0,0,0,103,101,116,95,99,111,100, - 101,166,3,0,0,115,98,0,0,0,0,7,15,1,6,1, - 3,1,16,1,13,1,11,2,3,1,19,1,13,1,5,2, - 16,1,3,1,19,1,13,1,5,2,3,1,12,1,3,1, - 13,1,19,1,5,2,9,1,7,1,15,1,15,1,16,1, - 6,1,7,1,4,2,6,1,18,1,15,1,15,1,6,1, - 12,1,9,1,13,1,22,1,12,1,12,1,19,1,25,1, - 22,1,3,1,19,1,17,1,13,1,8,1,117,21,0,0, - 0,83,111,117,114,99,101,76,111,97,100,101,114,46,103,101, - 116,95,99,111,100,101,99,2,0,0,0,0,0,0,0,2, - 0,0,0,2,0,0,0,67,0,0,0,115,13,0,0,0, - 124,0,0,106,0,0,124,1,0,131,1,0,83,40,1,0, - 0,0,117,0,1,0,0,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,76,111,97,100,101,114,46,108,111,97,100,95,109,111, - 100,117,108,101,46,10,10,32,32,32,32,32,32,32,32,82, - 101,113,117,105,114,101,115,32,69,120,101,99,117,116,105,111, - 110,76,111,97,100,101,114,46,103,101,116,95,102,105,108,101, - 110,97,109,101,32,97,110,100,32,82,101,115,111,117,114,99, - 101,76,111,97,100,101,114,46,103,101,116,95,100,97,116,97, - 32,116,111,32,98,101,10,32,32,32,32,32,32,32,32,105, - 109,112,108,101,109,101,110,116,101,100,32,116,111,32,108,111, - 97,100,32,115,111,117,114,99,101,32,99,111,100,101,46,32, - 85,115,101,32,111,102,32,98,121,116,101,99,111,100,101,32, - 105,115,32,100,105,99,116,97,116,101,100,32,98,121,32,119, - 104,101,116,104,101,114,10,32,32,32,32,32,32,32,32,103, - 101,116,95,99,111,100,101,32,117,115,101,115,47,119,114,105, - 116,101,115,32,98,121,116,101,99,111,100,101,46,10,10,32, - 32,32,32,32,32,32,32,40,1,0,0,0,117,12,0,0, - 0,95,108,111,97,100,95,109,111,100,117,108,101,40,2,0, - 0,0,117,4,0,0,0,115,101,108,102,117,8,0,0,0, - 102,117,108,108,110,97,109,101,40,0,0,0,0,40,0,0, - 0,0,117,29,0,0,0,60,102,114,111,122,101,110,32,105, - 109,112,111,114,116,108,105,98,46,95,98,111,111,116,115,116, - 114,97,112,62,117,11,0,0,0,108,111,97,100,95,109,111, - 100,117,108,101,228,3,0,0,115,2,0,0,0,0,8,117, - 24,0,0,0,83,111,117,114,99,101,76,111,97,100,101,114, - 46,108,111,97,100,95,109,111,100,117,108,101,78,40,10,0, - 0,0,117,8,0,0,0,95,95,110,97,109,101,95,95,117, - 10,0,0,0,95,95,109,111,100,117,108,101,95,95,117,12, - 0,0,0,95,95,113,117,97,108,110,97,109,101,95,95,117, - 10,0,0,0,112,97,116,104,95,109,116,105,109,101,117,10, - 0,0,0,112,97,116,104,95,115,116,97,116,115,117,15,0, - 0,0,95,99,97,99,104,101,95,98,121,116,101,99,111,100, - 101,117,8,0,0,0,115,101,116,95,100,97,116,97,117,10, - 0,0,0,103,101,116,95,115,111,117,114,99,101,117,8,0, - 0,0,103,101,116,95,99,111,100,101,117,11,0,0,0,108, - 111,97,100,95,109,111,100,117,108,101,40,1,0,0,0,117, - 10,0,0,0,95,95,108,111,99,97,108,115,95,95,40,0, - 0,0,0,40,0,0,0,0,117,29,0,0,0,60,102,114, - 111,122,101,110,32,105,109,112,111,114,116,108,105,98,46,95, - 98,111,111,116,115,116,114,97,112,62,117,12,0,0,0,83, - 111,117,114,99,101,76,111,97,100,101,114,105,3,0,0,115, - 14,0,0,0,16,2,12,6,12,12,12,10,12,9,12,22, - 12,62,117,12,0,0,0,83,111,117,114,99,101,76,111,97, - 100,101,114,99,1,0,0,0,0,0,0,0,1,0,0,0, - 4,0,0,0,2,0,0,0,115,92,0,0,0,124,0,0, - 69,101,0,0,90,1,0,100,0,0,90,2,0,100,1,0, - 90,3,0,100,2,0,100,3,0,132,0,0,90,4,0,101, - 5,0,135,0,0,102,1,0,100,4,0,100,5,0,134,0, - 0,131,1,0,90,6,0,101,5,0,100,6,0,100,7,0, - 132,0,0,131,1,0,90,7,0,100,8,0,100,9,0,132, - 0,0,90,8,0,135,0,0,83,40,10,0,0,0,117,10, - 0,0,0,70,105,108,101,76,111,97,100,101,114,117,103,0, - 0,0,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,3,0,0,0,2,0,0,0,67,0,0,0,115,22, - 0,0,0,124,1,0,124,0,0,95,0,0,124,2,0,124, - 0,0,95,1,0,100,1,0,83,40,2,0,0,0,117,75, - 0,0,0,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,40, - 2,0,0,0,117,4,0,0,0,110,97,109,101,117,4,0, - 0,0,112,97,116,104,40,3,0,0,0,117,4,0,0,0, - 115,101,108,102,117,8,0,0,0,102,117,108,108,110,97,109, - 101,117,4,0,0,0,112,97,116,104,40,0,0,0,0,40, - 0,0,0,0,117,29,0,0,0,60,102,114,111,122,101,110, - 32,105,109,112,111,114,116,108,105,98,46,95,98,111,111,116, - 115,116,114,97,112,62,117,8,0,0,0,95,95,105,110,105, - 116,95,95,244,3,0,0,115,4,0,0,0,0,3,9,1, - 117,19,0,0,0,70,105,108,101,76,111,97,100,101,114,46, - 95,95,105,110,105,116,95,95,99,2,0,0,0,0,0,0, - 0,2,0,0,0,3,0,0,0,3,0,0,0,115,22,0, - 0,0,116,0,0,116,1,0,124,0,0,131,2,0,106,2, - 0,124,1,0,131,1,0,83,40,1,0,0,0,117,26,0, - 0,0,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,40,3,0,0, - 0,117,5,0,0,0,115,117,112,101,114,117,10,0,0,0, - 70,105,108,101,76,111,97,100,101,114,117,11,0,0,0,108, - 111,97,100,95,109,111,100,117,108,101,40,2,0,0,0,117, - 4,0,0,0,115,101,108,102,117,8,0,0,0,102,117,108, - 108,110,97,109,101,40,1,0,0,0,117,9,0,0,0,95, - 95,99,108,97,115,115,95,95,40,0,0,0,0,117,29,0, - 0,0,60,102,114,111,122,101,110,32,105,109,112,111,114,116, - 108,105,98,46,95,98,111,111,116,115,116,114,97,112,62,117, - 11,0,0,0,108,111,97,100,95,109,111,100,117,108,101,250, - 3,0,0,115,2,0,0,0,0,5,117,22,0,0,0,70, - 105,108,101,76,111,97,100,101,114,46,108,111,97,100,95,109, - 111,100,117,108,101,99,2,0,0,0,0,0,0,0,2,0, - 0,0,1,0,0,0,67,0,0,0,115,7,0,0,0,124, - 0,0,106,0,0,83,40,1,0,0,0,117,58,0,0,0, - 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,40,1,0,0,0,117, - 4,0,0,0,112,97,116,104,40,2,0,0,0,117,4,0, - 0,0,115,101,108,102,117,8,0,0,0,102,117,108,108,110, - 97,109,101,40,0,0,0,0,40,0,0,0,0,117,29,0, - 0,0,60,102,114,111,122,101,110,32,105,109,112,111,114,116, - 108,105,98,46,95,98,111,111,116,115,116,114,97,112,62,117, - 12,0,0,0,103,101,116,95,102,105,108,101,110,97,109,101, - 1,4,0,0,115,2,0,0,0,0,3,117,23,0,0,0, - 70,105,108,101,76,111,97,100,101,114,46,103,101,116,95,102, - 105,108,101,110,97,109,101,99,2,0,0,0,0,0,0,0, - 3,0,0,0,8,0,0,0,67,0,0,0,115,41,0,0, - 0,116,0,0,106,1,0,124,1,0,100,1,0,131,2,0, - 143,17,0,125,2,0,124,2,0,106,2,0,131,0,0,83, - 87,100,2,0,81,88,100,2,0,83,40,3,0,0,0,117, - 39,0,0,0,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,117,1,0,0,0, - 114,78,40,3,0,0,0,117,3,0,0,0,95,105,111,117, - 6,0,0,0,70,105,108,101,73,79,117,4,0,0,0,114, - 101,97,100,40,3,0,0,0,117,4,0,0,0,115,101,108, - 102,117,4,0,0,0,112,97,116,104,117,4,0,0,0,102, - 105,108,101,40,0,0,0,0,40,0,0,0,0,117,29,0, - 0,0,60,102,114,111,122,101,110,32,105,109,112,111,114,116, - 108,105,98,46,95,98,111,111,116,115,116,114,97,112,62,117, - 8,0,0,0,103,101,116,95,100,97,116,97,6,4,0,0, - 115,4,0,0,0,0,2,21,1,117,19,0,0,0,70,105, - 108,101,76,111,97,100,101,114,46,103,101,116,95,100,97,116, - 97,40,9,0,0,0,117,8,0,0,0,95,95,110,97,109, - 101,95,95,117,10,0,0,0,95,95,109,111,100,117,108,101, - 95,95,117,12,0,0,0,95,95,113,117,97,108,110,97,109, - 101,95,95,117,7,0,0,0,95,95,100,111,99,95,95,117, - 8,0,0,0,95,95,105,110,105,116,95,95,117,11,0,0, - 0,95,99,104,101,99,107,95,110,97,109,101,117,11,0,0, - 0,108,111,97,100,95,109,111,100,117,108,101,117,12,0,0, - 0,103,101,116,95,102,105,108,101,110,97,109,101,117,8,0, - 0,0,103,101,116,95,100,97,116,97,40,1,0,0,0,117, - 10,0,0,0,95,95,108,111,99,97,108,115,95,95,40,0, - 0,0,0,40,1,0,0,0,117,9,0,0,0,95,95,99, - 108,97,115,115,95,95,117,29,0,0,0,60,102,114,111,122, - 101,110,32,105,109,112,111,114,116,108,105,98,46,95,98,111, - 111,116,115,116,114,97,112,62,117,10,0,0,0,70,105,108, - 101,76,111,97,100,101,114,239,3,0,0,115,10,0,0,0, - 16,3,6,2,12,6,24,7,18,5,117,10,0,0,0,70, - 105,108,101,76,111,97,100,101,114,99,1,0,0,0,0,0, - 0,0,1,0,0,0,4,0,0,0,66,0,0,0,115,68, - 0,0,0,124,0,0,69,101,0,0,90,1,0,100,0,0, - 90,2,0,100,1,0,90,3,0,100,2,0,100,3,0,132, - 0,0,90,4,0,100,4,0,100,5,0,132,0,0,90,5, - 0,100,6,0,100,7,0,100,8,0,100,9,0,132,0,1, - 90,6,0,100,10,0,83,40,11,0,0,0,117,16,0,0, - 0,83,111,117,114,99,101,70,105,108,101,76,111,97,100,101, - 114,117,62,0,0,0,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,3,0,0, - 0,3,0,0,0,67,0,0,0,115,39,0,0,0,116,0, - 0,106,1,0,124,1,0,131,1,0,125,2,0,105,2,0, - 124,2,0,106,2,0,100,1,0,54,124,2,0,106,3,0, - 100,2,0,54,83,40,3,0,0,0,117,33,0,0,0,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, - 117,5,0,0,0,109,116,105,109,101,117,4,0,0,0,115, - 105,122,101,40,4,0,0,0,117,3,0,0,0,95,111,115, - 117,4,0,0,0,115,116,97,116,117,8,0,0,0,115,116, - 95,109,116,105,109,101,117,7,0,0,0,115,116,95,115,105, - 122,101,40,3,0,0,0,117,4,0,0,0,115,101,108,102, - 117,4,0,0,0,112,97,116,104,117,2,0,0,0,115,116, - 40,0,0,0,0,40,0,0,0,0,117,29,0,0,0,60, - 102,114,111,122,101,110,32,105,109,112,111,114,116,108,105,98, - 46,95,98,111,111,116,115,116,114,97,112,62,117,10,0,0, - 0,112,97,116,104,95,115,116,97,116,115,16,4,0,0,115, - 4,0,0,0,0,2,15,1,117,27,0,0,0,83,111,117, - 114,99,101,70,105,108,101,76,111,97,100,101,114,46,112,97, - 116,104,95,115,116,97,116,115,99,4,0,0,0,0,0,0, - 0,5,0,0,0,13,0,0,0,67,0,0,0,115,71,0, - 0,0,121,22,0,116,0,0,106,1,0,124,1,0,131,1, - 0,106,2,0,125,4,0,87,110,24,0,4,116,3,0,107, - 10,0,114,48,0,1,1,1,100,1,0,125,4,0,89,110, - 1,0,88,124,0,0,106,4,0,124,2,0,124,3,0,100, - 2,0,124,4,0,131,2,1,83,40,3,0,0,0,78,105, - 182,1,0,0,117,5,0,0,0,95,109,111,100,101,40,5, - 0,0,0,117,3,0,0,0,95,111,115,117,4,0,0,0, - 115,116,97,116,117,7,0,0,0,115,116,95,109,111,100,101, - 117,7,0,0,0,79,83,69,114,114,111,114,117,8,0,0, - 0,115,101,116,95,100,97,116,97,40,5,0,0,0,117,4, - 0,0,0,115,101,108,102,117,11,0,0,0,115,111,117,114, - 99,101,95,112,97,116,104,117,13,0,0,0,98,121,116,101, - 99,111,100,101,95,112,97,116,104,117,4,0,0,0,100,97, - 116,97,117,4,0,0,0,109,111,100,101,40,0,0,0,0, - 40,0,0,0,0,117,29,0,0,0,60,102,114,111,122,101, - 110,32,105,109,112,111,114,116,108,105,98,46,95,98,111,111, - 116,115,116,114,97,112,62,117,15,0,0,0,95,99,97,99, - 104,101,95,98,121,116,101,99,111,100,101,21,4,0,0,115, - 10,0,0,0,0,2,3,1,22,1,13,1,11,1,117,32, - 0,0,0,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,117,5,0,0,0,95,109,111,100,101,105,182,1, - 0,0,99,3,0,0,0,1,0,0,0,8,0,0,0,13, - 0,0,0,67,0,0,0,115,245,0,0,0,116,0,0,124, - 1,0,131,1,0,92,2,0,125,4,0,125,5,0,103,0, - 0,125,6,0,120,54,0,124,4,0,114,80,0,116,1,0, - 124,4,0,131,1,0,12,114,80,0,116,0,0,124,4,0, - 131,1,0,92,2,0,125,4,0,125,7,0,124,6,0,106, - 2,0,124,7,0,131,1,0,1,113,27,0,87,120,97,0, - 116,3,0,124,6,0,131,1,0,68,93,83,0,125,7,0, - 116,4,0,124,4,0,124,7,0,131,2,0,125,4,0,121, - 17,0,116,5,0,106,6,0,124,4,0,131,1,0,1,87, - 113,94,0,4,116,7,0,107,10,0,114,155,0,1,1,1, - 119,94,0,89,113,94,0,4,116,8,0,107,10,0,114,176, - 0,1,1,1,100,1,0,83,89,113,94,0,88,113,94,0, - 87,121,33,0,116,9,0,124,1,0,124,2,0,124,3,0, - 131,3,0,1,116,10,0,100,2,0,124,1,0,131,2,0, - 1,87,110,24,0,4,116,8,0,116,7,0,102,2,0,107, - 10,0,114,240,0,1,1,1,89,110,1,0,88,100,1,0, - 83,40,3,0,0,0,117,27,0,0,0,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,78,117,12,0,0,0,99,114,101,97, - 116,101,100,32,123,33,114,125,40,11,0,0,0,117,11,0, - 0,0,95,112,97,116,104,95,115,112,108,105,116,117,11,0, - 0,0,95,112,97,116,104,95,105,115,100,105,114,117,6,0, - 0,0,97,112,112,101,110,100,117,8,0,0,0,114,101,118, - 101,114,115,101,100,117,10,0,0,0,95,112,97,116,104,95, - 106,111,105,110,117,3,0,0,0,95,111,115,117,5,0,0, - 0,109,107,100,105,114,117,15,0,0,0,70,105,108,101,69, - 120,105,115,116,115,69,114,114,111,114,117,15,0,0,0,80, - 101,114,109,105,115,115,105,111,110,69,114,114,111,114,117,13, - 0,0,0,95,119,114,105,116,101,95,97,116,111,109,105,99, - 117,16,0,0,0,95,118,101,114,98,111,115,101,95,109,101, - 115,115,97,103,101,40,8,0,0,0,117,4,0,0,0,115, - 101,108,102,117,4,0,0,0,112,97,116,104,117,4,0,0, - 0,100,97,116,97,117,5,0,0,0,95,109,111,100,101,117, - 6,0,0,0,112,97,114,101,110,116,117,8,0,0,0,102, - 105,108,101,110,97,109,101,117,10,0,0,0,112,97,116,104, - 95,112,97,114,116,115,117,4,0,0,0,112,97,114,116,40, - 0,0,0,0,40,0,0,0,0,117,29,0,0,0,60,102, - 114,111,122,101,110,32,105,109,112,111,114,116,108,105,98,46, - 95,98,111,111,116,115,116,114,97,112,62,117,8,0,0,0, - 115,101,116,95,100,97,116,97,29,4,0,0,115,36,0,0, - 0,0,2,18,1,6,2,22,1,18,1,17,2,19,1,15, - 1,3,1,17,1,13,2,7,1,13,3,13,1,3,1,16, - 1,17,1,19,3,117,25,0,0,0,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,40,7,0,0,0,117,8,0,0,0,95,95, - 110,97,109,101,95,95,117,10,0,0,0,95,95,109,111,100, - 117,108,101,95,95,117,12,0,0,0,95,95,113,117,97,108, - 110,97,109,101,95,95,117,7,0,0,0,95,95,100,111,99, - 95,95,117,10,0,0,0,112,97,116,104,95,115,116,97,116, - 115,117,15,0,0,0,95,99,97,99,104,101,95,98,121,116, - 101,99,111,100,101,117,8,0,0,0,115,101,116,95,100,97, - 116,97,40,1,0,0,0,117,10,0,0,0,95,95,108,111, - 99,97,108,115,95,95,40,0,0,0,0,40,0,0,0,0, - 117,29,0,0,0,60,102,114,111,122,101,110,32,105,109,112, - 111,114,116,108,105,98,46,95,98,111,111,116,115,116,114,97, - 112,62,117,16,0,0,0,83,111,117,114,99,101,70,105,108, - 101,76,111,97,100,101,114,12,4,0,0,115,8,0,0,0, - 16,2,6,2,12,5,12,8,117,16,0,0,0,83,111,117, - 114,99,101,70,105,108,101,76,111,97,100,101,114,99,1,0, - 0,0,0,0,0,0,1,0,0,0,2,0,0,0,66,0, - 0,0,115,62,0,0,0,124,0,0,69,101,0,0,90,1, - 0,100,0,0,90,2,0,100,1,0,90,3,0,100,2,0, - 100,3,0,132,0,0,90,4,0,100,4,0,100,5,0,132, - 0,0,90,5,0,100,6,0,100,7,0,132,0,0,90,6, - 0,100,8,0,83,40,9,0,0,0,117,20,0,0,0,83, - 111,117,114,99,101,108,101,115,115,70,105,108,101,76,111,97, - 100,101,114,117,45,0,0,0,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,2,0, - 0,0,4,0,0,0,67,0,0,0,115,19,0,0,0,124, - 0,0,106,0,0,124,1,0,100,1,0,100,2,0,131,1, - 1,83,40,3,0,0,0,78,117,10,0,0,0,115,111,117, - 114,99,101,108,101,115,115,84,40,2,0,0,0,117,12,0, - 0,0,95,108,111,97,100,95,109,111,100,117,108,101,117,4, - 0,0,0,84,114,117,101,40,2,0,0,0,117,4,0,0, - 0,115,101,108,102,117,8,0,0,0,102,117,108,108,110,97, - 109,101,40,0,0,0,0,40,0,0,0,0,117,29,0,0, - 0,60,102,114,111,122,101,110,32,105,109,112,111,114,116,108, - 105,98,46,95,98,111,111,116,115,116,114,97,112,62,117,11, - 0,0,0,108,111,97,100,95,109,111,100,117,108,101,62,4, - 0,0,115,2,0,0,0,0,1,117,32,0,0,0,83,111, - 117,114,99,101,108,101,115,115,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,6,0,0,0,6,0,0,0,67, - 0,0,0,115,138,0,0,0,124,0,0,106,0,0,124,1, - 0,131,1,0,125,2,0,124,0,0,106,1,0,124,2,0, - 131,1,0,125,3,0,124,0,0,106,2,0,124,1,0,124, - 3,0,124,2,0,100,0,0,131,4,0,125,4,0,116,4, - 0,106,5,0,124,4,0,131,1,0,125,5,0,116,6,0, - 124,5,0,116,7,0,131,2,0,114,101,0,116,8,0,100, - 1,0,124,2,0,131,2,0,1,124,5,0,83,116,9,0, - 100,2,0,106,10,0,124,2,0,131,1,0,100,3,0,124, - 1,0,100,4,0,124,2,0,131,1,2,130,1,0,100,0, - 0,83,40,5,0,0,0,78,117,21,0,0,0,99,111,100, - 101,32,111,98,106,101,99,116,32,102,114,111,109,32,123,33, - 114,125,117,21,0,0,0,78,111,110,45,99,111,100,101,32, - 111,98,106,101,99,116,32,105,110,32,123,125,117,4,0,0, - 0,110,97,109,101,117,4,0,0,0,112,97,116,104,40,11, - 0,0,0,117,12,0,0,0,103,101,116,95,102,105,108,101, - 110,97,109,101,117,8,0,0,0,103,101,116,95,100,97,116, - 97,117,20,0,0,0,95,98,121,116,101,115,95,102,114,111, - 109,95,98,121,116,101,99,111,100,101,117,4,0,0,0,78, - 111,110,101,117,7,0,0,0,109,97,114,115,104,97,108,117, - 5,0,0,0,108,111,97,100,115,117,10,0,0,0,105,115, - 105,110,115,116,97,110,99,101,117,10,0,0,0,95,99,111, - 100,101,95,116,121,112,101,117,16,0,0,0,95,118,101,114, - 98,111,115,101,95,109,101,115,115,97,103,101,117,11,0,0, - 0,73,109,112,111,114,116,69,114,114,111,114,117,6,0,0, - 0,102,111,114,109,97,116,40,6,0,0,0,117,4,0,0, - 0,115,101,108,102,117,8,0,0,0,102,117,108,108,110,97, - 109,101,117,4,0,0,0,112,97,116,104,117,4,0,0,0, - 100,97,116,97,117,10,0,0,0,98,121,116,101,115,95,100, - 97,116,97,117,5,0,0,0,102,111,117,110,100,40,0,0, - 0,0,40,0,0,0,0,117,29,0,0,0,60,102,114,111, - 122,101,110,32,105,109,112,111,114,116,108,105,98,46,95,98, - 111,111,116,115,116,114,97,112,62,117,8,0,0,0,103,101, - 116,95,99,111,100,101,65,4,0,0,115,18,0,0,0,0, - 1,15,1,15,1,24,1,15,1,15,1,13,1,4,2,18, - 1,117,29,0,0,0,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,2,0,0,0, - 1,0,0,0,67,0,0,0,115,4,0,0,0,100,1,0, - 83,40,2,0,0,0,117,39,0,0,0,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,40,1,0,0,0,117,4,0,0,0,78,111,110, - 101,40,2,0,0,0,117,4,0,0,0,115,101,108,102,117, - 8,0,0,0,102,117,108,108,110,97,109,101,40,0,0,0, - 0,40,0,0,0,0,117,29,0,0,0,60,102,114,111,122, - 101,110,32,105,109,112,111,114,116,108,105,98,46,95,98,111, - 111,116,115,116,114,97,112,62,117,10,0,0,0,103,101,116, - 95,115,111,117,114,99,101,77,4,0,0,115,2,0,0,0, - 0,2,117,31,0,0,0,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,40,7,0,0,0,117,8,0,0, - 0,95,95,110,97,109,101,95,95,117,10,0,0,0,95,95, - 109,111,100,117,108,101,95,95,117,12,0,0,0,95,95,113, - 117,97,108,110,97,109,101,95,95,117,7,0,0,0,95,95, - 100,111,99,95,95,117,11,0,0,0,108,111,97,100,95,109, - 111,100,117,108,101,117,8,0,0,0,103,101,116,95,99,111, - 100,101,117,10,0,0,0,103,101,116,95,115,111,117,114,99, - 101,40,1,0,0,0,117,10,0,0,0,95,95,108,111,99, - 97,108,115,95,95,40,0,0,0,0,40,0,0,0,0,117, - 29,0,0,0,60,102,114,111,122,101,110,32,105,109,112,111, - 114,116,108,105,98,46,95,98,111,111,116,115,116,114,97,112, - 62,117,20,0,0,0,83,111,117,114,99,101,108,101,115,115, - 70,105,108,101,76,111,97,100,101,114,58,4,0,0,115,8, - 0,0,0,16,2,6,2,12,3,12,12,117,20,0,0,0, - 83,111,117,114,99,101,108,101,115,115,70,105,108,101,76,111, - 97,100,101,114,99,1,0,0,0,0,0,0,0,1,0,0, - 0,5,0,0,0,66,0,0,0,115,104,0,0,0,124,0, - 0,69,101,0,0,90,1,0,100,0,0,90,2,0,100,1, - 0,90,3,0,100,2,0,100,3,0,132,0,0,90,4,0, - 101,5,0,101,6,0,101,7,0,100,4,0,100,5,0,132, - 0,0,131,1,0,131,1,0,131,1,0,90,8,0,100,6, - 0,100,7,0,132,0,0,90,9,0,100,8,0,100,9,0, - 132,0,0,90,10,0,100,10,0,100,11,0,132,0,0,90, - 11,0,100,12,0,83,40,13,0,0,0,117,19,0,0,0, - 69,120,116,101,110,115,105,111,110,70,105,108,101,76,111,97, - 100,101,114,117,93,0,0,0,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,3,0, - 0,0,2,0,0,0,67,0,0,0,115,22,0,0,0,124, - 1,0,124,0,0,95,0,0,124,2,0,124,0,0,95,1, - 0,100,0,0,83,40,1,0,0,0,78,40,2,0,0,0, - 117,4,0,0,0,110,97,109,101,117,4,0,0,0,112,97, - 116,104,40,3,0,0,0,117,4,0,0,0,115,101,108,102, - 117,4,0,0,0,110,97,109,101,117,4,0,0,0,112,97, - 116,104,40,0,0,0,0,40,0,0,0,0,117,29,0,0, - 0,60,102,114,111,122,101,110,32,105,109,112,111,114,116,108, - 105,98,46,95,98,111,111,116,115,116,114,97,112,62,117,8, - 0,0,0,95,95,105,110,105,116,95,95,94,4,0,0,115, - 4,0,0,0,0,1,9,1,117,28,0,0,0,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,4,0,0,0,10,0,0,0,67,0,0,0,115,175, - 0,0,0,124,1,0,116,0,0,106,1,0,107,6,0,125, - 2,0,121,107,0,116,2,0,116,3,0,106,4,0,124,1, - 0,124,0,0,106,5,0,131,3,0,125,3,0,116,6,0, - 100,1,0,124,0,0,106,5,0,131,2,0,1,124,0,0, - 106,7,0,124,1,0,131,1,0,114,117,0,116,8,0,124, - 3,0,100,2,0,131,2,0,12,114,117,0,116,9,0,124, - 0,0,106,5,0,131,1,0,100,3,0,25,103,1,0,124, - 3,0,95,10,0,110,0,0,124,3,0,83,87,110,46,0, - 1,1,1,124,2,0,12,114,163,0,124,1,0,116,0,0, - 106,1,0,107,6,0,114,163,0,116,0,0,106,1,0,124, - 1,0,61,110,0,0,130,0,0,89,110,1,0,88,100,4, - 0,83,40,5,0,0,0,117,25,0,0,0,76,111,97,100, - 32,97,110,32,101,120,116,101,110,115,105,111,110,32,109,111, - 100,117,108,101,46,117,33,0,0,0,101,120,116,101,110,115, - 105,111,110,32,109,111,100,117,108,101,32,108,111,97,100,101, - 100,32,102,114,111,109,32,123,33,114,125,117,8,0,0,0, - 95,95,112,97,116,104,95,95,105,0,0,0,0,78,40,11, - 0,0,0,117,3,0,0,0,115,121,115,117,7,0,0,0, - 109,111,100,117,108,101,115,117,25,0,0,0,95,99,97,108, - 108,95,119,105,116,104,95,102,114,97,109,101,115,95,114,101, - 109,111,118,101,100,117,4,0,0,0,95,105,109,112,117,12, - 0,0,0,108,111,97,100,95,100,121,110,97,109,105,99,117, - 4,0,0,0,112,97,116,104,117,16,0,0,0,95,118,101, - 114,98,111,115,101,95,109,101,115,115,97,103,101,117,10,0, - 0,0,105,115,95,112,97,99,107,97,103,101,117,7,0,0, - 0,104,97,115,97,116,116,114,117,11,0,0,0,95,112,97, - 116,104,95,115,112,108,105,116,117,8,0,0,0,95,95,112, - 97,116,104,95,95,40,4,0,0,0,117,4,0,0,0,115, - 101,108,102,117,8,0,0,0,102,117,108,108,110,97,109,101, - 117,9,0,0,0,105,115,95,114,101,108,111,97,100,117,6, - 0,0,0,109,111,100,117,108,101,40,0,0,0,0,40,0, - 0,0,0,117,29,0,0,0,60,102,114,111,122,101,110,32, - 105,109,112,111,114,116,108,105,98,46,95,98,111,111,116,115, - 116,114,97,112,62,117,11,0,0,0,108,111,97,100,95,109, - 111,100,117,108,101,98,4,0,0,115,24,0,0,0,0,5, - 15,1,3,1,9,1,15,1,16,1,31,1,28,1,8,1, - 3,1,22,1,13,1,117,31,0,0,0,69,120,116,101,110, - 115,105,111,110,70,105,108,101,76,111,97,100,101,114,46,108, - 111,97,100,95,109,111,100,117,108,101,99,2,0,0,0,0, - 0,0,0,2,0,0,0,4,0,0,0,3,0,0,0,115, - 48,0,0,0,116,0,0,124,0,0,106,1,0,131,1,0, - 100,1,0,25,137,0,0,116,2,0,135,0,0,102,1,0, - 100,2,0,100,3,0,134,0,0,116,3,0,68,131,1,0, - 131,1,0,83,40,4,0,0,0,117,49,0,0,0,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,105, - 1,0,0,0,99,1,0,0,0,0,0,0,0,2,0,0, - 0,4,0,0,0,51,0,0,0,115,31,0,0,0,124,0, - 0,93,21,0,125,1,0,136,0,0,100,0,0,124,1,0, - 23,107,2,0,86,1,113,3,0,100,1,0,83,40,2,0, - 0,0,117,8,0,0,0,95,95,105,110,105,116,95,95,78, - 40,0,0,0,0,40,2,0,0,0,117,2,0,0,0,46, - 48,117,6,0,0,0,115,117,102,102,105,120,40,1,0,0, - 0,117,9,0,0,0,102,105,108,101,95,110,97,109,101,40, - 0,0,0,0,117,29,0,0,0,60,102,114,111,122,101,110, - 32,105,109,112,111,114,116,108,105,98,46,95,98,111,111,116, - 115,116,114,97,112,62,117,9,0,0,0,60,103,101,110,101, - 120,112,114,62,119,4,0,0,115,2,0,0,0,6,1,117, - 49,0,0,0,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,40,4,0,0,0,117,11,0,0,0,95, - 112,97,116,104,95,115,112,108,105,116,117,4,0,0,0,112, - 97,116,104,117,3,0,0,0,97,110,121,117,18,0,0,0, - 69,88,84,69,78,83,73,79,78,95,83,85,70,70,73,88, - 69,83,40,2,0,0,0,117,4,0,0,0,115,101,108,102, - 117,8,0,0,0,102,117,108,108,110,97,109,101,40,0,0, - 0,0,40,1,0,0,0,117,9,0,0,0,102,105,108,101, - 95,110,97,109,101,117,29,0,0,0,60,102,114,111,122,101, - 110,32,105,109,112,111,114,116,108,105,98,46,95,98,111,111, - 116,115,116,114,97,112,62,117,10,0,0,0,105,115,95,112, - 97,99,107,97,103,101,116,4,0,0,115,6,0,0,0,0, - 2,19,1,18,1,117,30,0,0,0,69,120,116,101,110,115, - 105,111,110,70,105,108,101,76,111,97,100,101,114,46,105,115, - 95,112,97,99,107,97,103,101,99,2,0,0,0,0,0,0, - 0,2,0,0,0,1,0,0,0,67,0,0,0,115,4,0, - 0,0,100,1,0,83,40,2,0,0,0,117,63,0,0,0, - 82,101,116,117,114,110,32,78,111,110,101,32,97,115,32,97, - 110,32,101,120,116,101,110,115,105,111,110,32,109,111,100,117, - 108,101,32,99,97,110,110,111,116,32,99,114,101,97,116,101, - 32,97,32,99,111,100,101,32,111,98,106,101,99,116,46,78, - 40,1,0,0,0,117,4,0,0,0,78,111,110,101,40,2, - 0,0,0,117,4,0,0,0,115,101,108,102,117,8,0,0, - 0,102,117,108,108,110,97,109,101,40,0,0,0,0,40,0, - 0,0,0,117,29,0,0,0,60,102,114,111,122,101,110,32, - 105,109,112,111,114,116,108,105,98,46,95,98,111,111,116,115, - 116,114,97,112,62,117,8,0,0,0,103,101,116,95,99,111, - 100,101,122,4,0,0,115,2,0,0,0,0,2,117,28,0, - 0,0,69,120,116,101,110,115,105,111,110,70,105,108,101,76, - 111,97,100,101,114,46,103,101,116,95,99,111,100,101,99,2, - 0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,67, - 0,0,0,115,4,0,0,0,100,1,0,83,40,2,0,0, - 0,117,53,0,0,0,82,101,116,117,114,110,32,78,111,110, - 101,32,97,115,32,101,120,116,101,110,115,105,111,110,32,109, - 111,100,117,108,101,115,32,104,97,118,101,32,110,111,32,115, - 111,117,114,99,101,32,99,111,100,101,46,78,40,1,0,0, - 0,117,4,0,0,0,78,111,110,101,40,2,0,0,0,117, - 4,0,0,0,115,101,108,102,117,8,0,0,0,102,117,108, - 108,110,97,109,101,40,0,0,0,0,40,0,0,0,0,117, - 29,0,0,0,60,102,114,111,122,101,110,32,105,109,112,111, - 114,116,108,105,98,46,95,98,111,111,116,115,116,114,97,112, - 62,117,10,0,0,0,103,101,116,95,115,111,117,114,99,101, - 126,4,0,0,115,2,0,0,0,0,2,117,30,0,0,0, - 69,120,116,101,110,115,105,111,110,70,105,108,101,76,111,97, - 100,101,114,46,103,101,116,95,115,111,117,114,99,101,78,40, - 12,0,0,0,117,8,0,0,0,95,95,110,97,109,101,95, - 95,117,10,0,0,0,95,95,109,111,100,117,108,101,95,95, - 117,12,0,0,0,95,95,113,117,97,108,110,97,109,101,95, - 95,117,7,0,0,0,95,95,100,111,99,95,95,117,8,0, - 0,0,95,95,105,110,105,116,95,95,117,11,0,0,0,95, - 99,104,101,99,107,95,110,97,109,101,117,11,0,0,0,115, - 101,116,95,112,97,99,107,97,103,101,117,10,0,0,0,115, - 101,116,95,108,111,97,100,101,114,117,11,0,0,0,108,111, - 97,100,95,109,111,100,117,108,101,117,10,0,0,0,105,115, - 95,112,97,99,107,97,103,101,117,8,0,0,0,103,101,116, - 95,99,111,100,101,117,10,0,0,0,103,101,116,95,115,111, - 117,114,99,101,40,1,0,0,0,117,10,0,0,0,95,95, - 108,111,99,97,108,115,95,95,40,0,0,0,0,40,0,0, - 0,0,117,29,0,0,0,60,102,114,111,122,101,110,32,105, - 109,112,111,114,116,108,105,98,46,95,98,111,111,116,115,116, - 114,97,112,62,117,19,0,0,0,69,120,116,101,110,115,105, - 111,110,70,105,108,101,76,111,97,100,101,114,86,4,0,0, - 115,16,0,0,0,16,6,6,2,12,4,3,1,3,1,24, - 16,12,6,12,4,117,19,0,0,0,69,120,116,101,110,115, - 105,111,110,70,105,108,101,76,111,97,100,101,114,99,1,0, - 0,0,0,0,0,0,1,0,0,0,2,0,0,0,66,0, - 0,0,115,134,0,0,0,124,0,0,69,101,0,0,90,1, - 0,100,0,0,90,2,0,100,1,0,90,3,0,100,2,0, - 100,3,0,132,0,0,90,4,0,100,4,0,100,5,0,132, - 0,0,90,5,0,100,6,0,100,7,0,132,0,0,90,6, - 0,100,8,0,100,9,0,132,0,0,90,7,0,100,10,0, - 100,11,0,132,0,0,90,8,0,100,12,0,100,13,0,132, - 0,0,90,9,0,100,14,0,100,15,0,132,0,0,90,10, - 0,100,16,0,100,17,0,132,0,0,90,11,0,100,18,0, - 100,19,0,132,0,0,90,12,0,100,20,0,83,40,21,0, - 0,0,117,14,0,0,0,95,78,97,109,101,115,112,97,99, - 101,80,97,116,104,117,37,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,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,4,0,0,0,2,0,0,0, - 67,0,0,0,115,52,0,0,0,124,1,0,124,0,0,95, - 0,0,124,2,0,124,0,0,95,1,0,116,2,0,124,0, - 0,106,3,0,131,0,0,131,1,0,124,0,0,95,4,0, - 124,3,0,124,0,0,95,5,0,100,0,0,83,40,1,0, - 0,0,78,40,6,0,0,0,117,5,0,0,0,95,110,97, - 109,101,117,5,0,0,0,95,112,97,116,104,117,5,0,0, - 0,116,117,112,108,101,117,16,0,0,0,95,103,101,116,95, - 112,97,114,101,110,116,95,112,97,116,104,117,17,0,0,0, - 95,108,97,115,116,95,112,97,114,101,110,116,95,112,97,116, - 104,117,12,0,0,0,95,112,97,116,104,95,102,105,110,100, - 101,114,40,4,0,0,0,117,4,0,0,0,115,101,108,102, - 117,4,0,0,0,110,97,109,101,117,4,0,0,0,112,97, - 116,104,117,11,0,0,0,112,97,116,104,95,102,105,110,100, - 101,114,40,0,0,0,0,40,0,0,0,0,117,29,0,0, - 0,60,102,114,111,122,101,110,32,105,109,112,111,114,116,108, - 105,98,46,95,98,111,111,116,115,116,114,97,112,62,117,8, - 0,0,0,95,95,105,110,105,116,95,95,138,4,0,0,115, - 8,0,0,0,0,1,9,1,9,1,21,1,117,23,0,0, - 0,95,78,97,109,101,115,112,97,99,101,80,97,116,104,46, - 95,95,105,110,105,116,95,95,99,1,0,0,0,0,0,0, - 0,4,0,0,0,3,0,0,0,67,0,0,0,115,53,0, - 0,0,124,0,0,106,0,0,106,1,0,100,1,0,131,1, - 0,92,3,0,125,1,0,125,2,0,125,3,0,124,2,0, - 100,2,0,107,2,0,114,43,0,100,6,0,83,124,1,0, - 100,5,0,102,2,0,83,40,7,0,0,0,117,62,0,0, - 0,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,117, - 1,0,0,0,46,117,0,0,0,0,117,3,0,0,0,115, - 121,115,117,4,0,0,0,112,97,116,104,117,8,0,0,0, - 95,95,112,97,116,104,95,95,40,2,0,0,0,117,3,0, - 0,0,115,121,115,117,4,0,0,0,112,97,116,104,40,2, - 0,0,0,117,5,0,0,0,95,110,97,109,101,117,10,0, - 0,0,114,112,97,114,116,105,116,105,111,110,40,4,0,0, - 0,117,4,0,0,0,115,101,108,102,117,6,0,0,0,112, - 97,114,101,110,116,117,3,0,0,0,100,111,116,117,2,0, - 0,0,109,101,40,0,0,0,0,40,0,0,0,0,117,29, - 0,0,0,60,102,114,111,122,101,110,32,105,109,112,111,114, - 116,108,105,98,46,95,98,111,111,116,115,116,114,97,112,62, - 117,23,0,0,0,95,102,105,110,100,95,112,97,114,101,110, - 116,95,112,97,116,104,95,110,97,109,101,115,144,4,0,0, - 115,8,0,0,0,0,2,27,1,12,2,4,3,117,38,0, - 0,0,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,3,0,0,0,3,0,0,0,67,0,0,0,115,38,0, - 0,0,124,0,0,106,0,0,131,0,0,92,2,0,125,1, - 0,125,2,0,116,1,0,116,2,0,106,3,0,124,1,0, - 25,124,2,0,131,2,0,83,40,1,0,0,0,78,40,4, - 0,0,0,117,23,0,0,0,95,102,105,110,100,95,112,97, - 114,101,110,116,95,112,97,116,104,95,110,97,109,101,115,117, - 7,0,0,0,103,101,116,97,116,116,114,117,3,0,0,0, - 115,121,115,117,7,0,0,0,109,111,100,117,108,101,115,40, - 3,0,0,0,117,4,0,0,0,115,101,108,102,117,18,0, - 0,0,112,97,114,101,110,116,95,109,111,100,117,108,101,95, - 110,97,109,101,117,14,0,0,0,112,97,116,104,95,97,116, - 116,114,95,110,97,109,101,40,0,0,0,0,40,0,0,0, - 0,117,29,0,0,0,60,102,114,111,122,101,110,32,105,109, - 112,111,114,116,108,105,98,46,95,98,111,111,116,115,116,114, - 97,112,62,117,16,0,0,0,95,103,101,116,95,112,97,114, - 101,110,116,95,112,97,116,104,154,4,0,0,115,4,0,0, - 0,0,1,18,1,117,31,0,0,0,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,4,0,0,0,3,0,0,0,67,0,0,0,115,103, - 0,0,0,116,0,0,124,0,0,106,1,0,131,0,0,131, - 1,0,125,1,0,124,1,0,124,0,0,106,2,0,107,3, - 0,114,96,0,124,0,0,106,3,0,124,0,0,106,4,0, - 124,1,0,131,2,0,92,2,0,125,2,0,125,3,0,124, - 2,0,100,0,0,107,8,0,114,84,0,124,3,0,124,0, - 0,95,6,0,110,0,0,124,1,0,124,0,0,95,2,0, - 110,0,0,124,0,0,106,6,0,83,40,1,0,0,0,78, - 40,7,0,0,0,117,5,0,0,0,116,117,112,108,101,117, - 16,0,0,0,95,103,101,116,95,112,97,114,101,110,116,95, - 112,97,116,104,117,17,0,0,0,95,108,97,115,116,95,112, - 97,114,101,110,116,95,112,97,116,104,117,12,0,0,0,95, - 112,97,116,104,95,102,105,110,100,101,114,117,5,0,0,0, - 95,110,97,109,101,117,4,0,0,0,78,111,110,101,117,5, - 0,0,0,95,112,97,116,104,40,4,0,0,0,117,4,0, - 0,0,115,101,108,102,117,11,0,0,0,112,97,114,101,110, - 116,95,112,97,116,104,117,6,0,0,0,108,111,97,100,101, - 114,117,8,0,0,0,110,101,119,95,112,97,116,104,40,0, - 0,0,0,40,0,0,0,0,117,29,0,0,0,60,102,114, - 111,122,101,110,32,105,109,112,111,114,116,108,105,98,46,95, - 98,111,111,116,115,116,114,97,112,62,117,12,0,0,0,95, - 114,101,99,97,108,99,117,108,97,116,101,158,4,0,0,115, - 14,0,0,0,0,2,18,1,15,1,27,3,12,1,12,1, - 12,1,117,27,0,0,0,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,1,0,0,0,2, - 0,0,0,67,0,0,0,115,16,0,0,0,116,0,0,124, - 0,0,106,1,0,131,0,0,131,1,0,83,40,1,0,0, - 0,78,40,2,0,0,0,117,4,0,0,0,105,116,101,114, - 117,12,0,0,0,95,114,101,99,97,108,99,117,108,97,116, - 101,40,1,0,0,0,117,4,0,0,0,115,101,108,102,40, - 0,0,0,0,40,0,0,0,0,117,29,0,0,0,60,102, - 114,111,122,101,110,32,105,109,112,111,114,116,108,105,98,46, - 95,98,111,111,116,115,116,114,97,112,62,117,8,0,0,0, - 95,95,105,116,101,114,95,95,170,4,0,0,115,2,0,0, - 0,0,1,117,23,0,0,0,95,78,97,109,101,115,112,97, - 99,101,80,97,116,104,46,95,95,105,116,101,114,95,95,99, - 1,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0, - 67,0,0,0,115,16,0,0,0,116,0,0,124,0,0,106, - 1,0,131,0,0,131,1,0,83,40,1,0,0,0,78,40, - 2,0,0,0,117,3,0,0,0,108,101,110,117,12,0,0, - 0,95,114,101,99,97,108,99,117,108,97,116,101,40,1,0, - 0,0,117,4,0,0,0,115,101,108,102,40,0,0,0,0, - 40,0,0,0,0,117,29,0,0,0,60,102,114,111,122,101, - 110,32,105,109,112,111,114,116,108,105,98,46,95,98,111,111, - 116,115,116,114,97,112,62,117,7,0,0,0,95,95,108,101, - 110,95,95,173,4,0,0,115,2,0,0,0,0,1,117,22, - 0,0,0,95,78,97,109,101,115,112,97,99,101,80,97,116, - 104,46,95,95,108,101,110,95,95,99,1,0,0,0,0,0, - 0,0,1,0,0,0,2,0,0,0,67,0,0,0,115,16, - 0,0,0,100,1,0,106,0,0,124,0,0,106,1,0,131, - 1,0,83,40,2,0,0,0,78,117,20,0,0,0,95,78, - 97,109,101,115,112,97,99,101,80,97,116,104,40,123,33,114, - 125,41,40,2,0,0,0,117,6,0,0,0,102,111,114,109, - 97,116,117,5,0,0,0,95,112,97,116,104,40,1,0,0, - 0,117,4,0,0,0,115,101,108,102,40,0,0,0,0,40, - 0,0,0,0,117,29,0,0,0,60,102,114,111,122,101,110, - 32,105,109,112,111,114,116,108,105,98,46,95,98,111,111,116, - 115,116,114,97,112,62,117,8,0,0,0,95,95,114,101,112, - 114,95,95,176,4,0,0,115,2,0,0,0,0,1,117,23, - 0,0,0,95,78,97,109,101,115,112,97,99,101,80,97,116, - 104,46,95,95,114,101,112,114,95,95,99,2,0,0,0,0, - 0,0,0,2,0,0,0,2,0,0,0,67,0,0,0,115, - 16,0,0,0,124,1,0,124,0,0,106,0,0,131,0,0, - 107,6,0,83,40,1,0,0,0,78,40,1,0,0,0,117, - 12,0,0,0,95,114,101,99,97,108,99,117,108,97,116,101, - 40,2,0,0,0,117,4,0,0,0,115,101,108,102,117,4, - 0,0,0,105,116,101,109,40,0,0,0,0,40,0,0,0, - 0,117,29,0,0,0,60,102,114,111,122,101,110,32,105,109, - 112,111,114,116,108,105,98,46,95,98,111,111,116,115,116,114, - 97,112,62,117,12,0,0,0,95,95,99,111,110,116,97,105, - 110,115,95,95,179,4,0,0,115,2,0,0,0,0,1,117, - 27,0,0,0,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,2,0,0,0,2,0,0,0, - 67,0,0,0,115,20,0,0,0,124,0,0,106,0,0,106, - 1,0,124,1,0,131,1,0,1,100,0,0,83,40,1,0, - 0,0,78,40,2,0,0,0,117,5,0,0,0,95,112,97, - 116,104,117,6,0,0,0,97,112,112,101,110,100,40,2,0, - 0,0,117,4,0,0,0,115,101,108,102,117,4,0,0,0, - 105,116,101,109,40,0,0,0,0,40,0,0,0,0,117,29, - 0,0,0,60,102,114,111,122,101,110,32,105,109,112,111,114, - 116,108,105,98,46,95,98,111,111,116,115,116,114,97,112,62, - 117,6,0,0,0,97,112,112,101,110,100,182,4,0,0,115, - 2,0,0,0,0,1,117,21,0,0,0,95,78,97,109,101, - 115,112,97,99,101,80,97,116,104,46,97,112,112,101,110,100, - 78,40,13,0,0,0,117,8,0,0,0,95,95,110,97,109, - 101,95,95,117,10,0,0,0,95,95,109,111,100,117,108,101, - 95,95,117,12,0,0,0,95,95,113,117,97,108,110,97,109, - 101,95,95,117,7,0,0,0,95,95,100,111,99,95,95,117, - 8,0,0,0,95,95,105,110,105,116,95,95,117,23,0,0, - 0,95,102,105,110,100,95,112,97,114,101,110,116,95,112,97, - 116,104,95,110,97,109,101,115,117,16,0,0,0,95,103,101, - 116,95,112,97,114,101,110,116,95,112,97,116,104,117,12,0, - 0,0,95,114,101,99,97,108,99,117,108,97,116,101,117,8, - 0,0,0,95,95,105,116,101,114,95,95,117,7,0,0,0, - 95,95,108,101,110,95,95,117,8,0,0,0,95,95,114,101, - 112,114,95,95,117,12,0,0,0,95,95,99,111,110,116,97, - 105,110,115,95,95,117,6,0,0,0,97,112,112,101,110,100, - 40,1,0,0,0,117,10,0,0,0,95,95,108,111,99,97, - 108,115,95,95,40,0,0,0,0,40,0,0,0,0,117,29, - 0,0,0,60,102,114,111,122,101,110,32,105,109,112,111,114, - 116,108,105,98,46,95,98,111,111,116,115,116,114,97,112,62, - 117,14,0,0,0,95,78,97,109,101,115,112,97,99,101,80, - 97,116,104,131,4,0,0,115,20,0,0,0,16,5,6,2, - 12,6,12,10,12,4,12,12,12,3,12,3,12,3,12,3, - 117,14,0,0,0,95,78,97,109,101,115,112,97,99,101,80, - 97,116,104,99,1,0,0,0,0,0,0,0,1,0,0,0, - 3,0,0,0,66,0,0,0,115,68,0,0,0,124,0,0, - 69,101,0,0,90,1,0,100,0,0,90,2,0,100,1,0, - 100,2,0,132,0,0,90,3,0,101,4,0,100,3,0,100, - 4,0,132,0,0,131,1,0,90,5,0,101,6,0,100,5, - 0,100,6,0,132,0,0,131,1,0,90,7,0,100,7,0, - 83,40,8,0,0,0,117,15,0,0,0,78,97,109,101,115, - 112,97,99,101,76,111,97,100,101,114,99,4,0,0,0,0, - 0,0,0,4,0,0,0,4,0,0,0,67,0,0,0,115, - 25,0,0,0,116,0,0,124,1,0,124,2,0,124,3,0, - 131,3,0,124,0,0,95,1,0,100,0,0,83,40,1,0, - 0,0,78,40,2,0,0,0,117,14,0,0,0,95,78,97, - 109,101,115,112,97,99,101,80,97,116,104,117,5,0,0,0, - 95,112,97,116,104,40,4,0,0,0,117,4,0,0,0,115, - 101,108,102,117,4,0,0,0,110,97,109,101,117,4,0,0, - 0,112,97,116,104,117,11,0,0,0,112,97,116,104,95,102, - 105,110,100,101,114,40,0,0,0,0,40,0,0,0,0,117, - 29,0,0,0,60,102,114,111,122,101,110,32,105,109,112,111, - 114,116,108,105,98,46,95,98,111,111,116,115,116,114,97,112, - 62,117,8,0,0,0,95,95,105,110,105,116,95,95,187,4, - 0,0,115,2,0,0,0,0,1,117,24,0,0,0,78,97, - 109,101,115,112,97,99,101,76,111,97,100,101,114,46,95,95, - 105,110,105,116,95,95,99,2,0,0,0,0,0,0,0,2, - 0,0,0,2,0,0,0,67,0,0,0,115,16,0,0,0, - 100,1,0,106,0,0,124,1,0,106,1,0,131,1,0,83, - 40,2,0,0,0,78,117,25,0,0,0,60,109,111,100,117, - 108,101,32,39,123,125,39,32,40,110,97,109,101,115,112,97, - 99,101,41,62,40,2,0,0,0,117,6,0,0,0,102,111, + 97,112,62,117,17,0,0,0,95,102,105,110,100,95,109,111, + 100,117,108,101,95,115,104,105,109,101,2,0,0,115,10,0, + 0,0,0,6,21,1,24,1,6,1,32,1,117,17,0,0, + 0,95,102,105,110,100,95,109,111,100,117,108,101,95,115,104, + 105,109,99,1,0,0,0,0,0,0,0,1,0,0,0,6, + 0,0,0,66,0,0,0,115,173,0,0,0,124,0,0,69, + 101,0,0,90,1,0,100,0,0,90,2,0,100,1,0,90, + 3,0,101,4,0,100,2,0,100,3,0,132,0,0,131,1, + 0,90,5,0,101,4,0,100,14,0,100,4,0,100,5,0, + 132,1,0,131,1,0,90,7,0,101,4,0,101,8,0,101, + 9,0,101,10,0,100,6,0,100,7,0,132,0,0,131,1, + 0,131,1,0,131,1,0,131,1,0,90,11,0,101,4,0, + 101,10,0,100,8,0,100,9,0,132,0,0,131,1,0,131, + 1,0,90,12,0,101,4,0,101,10,0,100,10,0,100,11, + 0,132,0,0,131,1,0,131,1,0,90,13,0,101,4,0, + 101,10,0,100,12,0,100,13,0,132,0,0,131,1,0,131, + 1,0,90,14,0,100,14,0,83,40,15,0,0,0,117,15, + 0,0,0,66,117,105,108,116,105,110,73,109,112,111,114,116, + 101,114,117,144,0,0,0,77,101,116,97,32,112,97,116,104, + 32,105,109,112,111,114,116,32,102,111,114,32,98,117,105,108, + 116,45,105,110,32,109,111,100,117,108,101,115,46,10,10,32, + 32,32,32,65,108,108,32,109,101,116,104,111,100,115,32,97, + 114,101,32,101,105,116,104,101,114,32,99,108,97,115,115,32, + 111,114,32,115,116,97,116,105,99,32,109,101,116,104,111,100, + 115,32,116,111,32,97,118,111,105,100,32,116,104,101,32,110, + 101,101,100,32,116,111,10,32,32,32,32,105,110,115,116,97, + 110,116,105,97,116,101,32,116,104,101,32,99,108,97,115,115, + 46,10,10,32,32,32,32,99,2,0,0,0,0,0,0,0, + 2,0,0,0,2,0,0,0,67,0,0,0,115,16,0,0, + 0,100,1,0,106,0,0,124,1,0,106,1,0,131,1,0, + 83,40,2,0,0,0,78,117,24,0,0,0,60,109,111,100, + 117,108,101,32,39,123,125,39,32,40,98,117,105,108,116,45, + 105,110,41,62,40,2,0,0,0,117,6,0,0,0,102,111, 114,109,97,116,117,8,0,0,0,95,95,110,97,109,101,95, 95,40,2,0,0,0,117,3,0,0,0,99,108,115,117,6, 0,0,0,109,111,100,117,108,101,40,0,0,0,0,40,0, 0,0,0,117,29,0,0,0,60,102,114,111,122,101,110,32, 105,109,112,111,114,116,108,105,98,46,95,98,111,111,116,115, 116,114,97,112,62,117,11,0,0,0,109,111,100,117,108,101, - 95,114,101,112,114,190,4,0,0,115,2,0,0,0,0,2, - 117,27,0,0,0,78,97,109,101,115,112,97,99,101,76,111, - 97,100,101,114,46,109,111,100,117,108,101,95,114,101,112,114, - 99,2,0,0,0,0,0,0,0,2,0,0,0,3,0,0, - 0,67,0,0,0,115,32,0,0,0,116,0,0,100,1,0, - 124,0,0,106,1,0,131,2,0,1,124,0,0,106,1,0, - 124,1,0,95,2,0,124,1,0,83,40,2,0,0,0,117, - 24,0,0,0,76,111,97,100,32,97,32,110,97,109,101,115, - 112,97,99,101,32,109,111,100,117,108,101,46,117,38,0,0, - 0,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,40,3,0,0,0,117,16,0,0, - 0,95,118,101,114,98,111,115,101,95,109,101,115,115,97,103, - 101,117,5,0,0,0,95,112,97,116,104,117,8,0,0,0, - 95,95,112,97,116,104,95,95,40,2,0,0,0,117,4,0, - 0,0,115,101,108,102,117,6,0,0,0,109,111,100,117,108, - 101,40,0,0,0,0,40,0,0,0,0,117,29,0,0,0, - 60,102,114,111,122,101,110,32,105,109,112,111,114,116,108,105, - 98,46,95,98,111,111,116,115,116,114,97,112,62,117,11,0, - 0,0,108,111,97,100,95,109,111,100,117,108,101,194,4,0, - 0,115,6,0,0,0,0,3,16,1,12,1,117,27,0,0, - 0,78,97,109,101,115,112,97,99,101,76,111,97,100,101,114, - 46,108,111,97,100,95,109,111,100,117,108,101,78,40,8,0, - 0,0,117,8,0,0,0,95,95,110,97,109,101,95,95,117, - 10,0,0,0,95,95,109,111,100,117,108,101,95,95,117,12, - 0,0,0,95,95,113,117,97,108,110,97,109,101,95,95,117, - 8,0,0,0,95,95,105,110,105,116,95,95,117,11,0,0, - 0,99,108,97,115,115,109,101,116,104,111,100,117,11,0,0, - 0,109,111,100,117,108,101,95,114,101,112,114,117,17,0,0, - 0,109,111,100,117,108,101,95,102,111,114,95,108,111,97,100, - 101,114,117,11,0,0,0,108,111,97,100,95,109,111,100,117, - 108,101,40,1,0,0,0,117,10,0,0,0,95,95,108,111, - 99,97,108,115,95,95,40,0,0,0,0,40,0,0,0,0, + 95,114,101,112,114,127,2,0,0,115,2,0,0,0,0,2, + 117,27,0,0,0,66,117,105,108,116,105,110,73,109,112,111, + 114,116,101,114,46,109,111,100,117,108,101,95,114,101,112,114, + 99,3,0,0,0,0,0,0,0,3,0,0,0,2,0,0, + 0,67,0,0,0,115,39,0,0,0,124,2,0,100,1,0, + 107,9,0,114,16,0,100,1,0,83,116,1,0,106,2,0, + 124,1,0,131,1,0,114,35,0,124,0,0,83,100,1,0, + 83,40,2,0,0,0,117,113,0,0,0,70,105,110,100,32, + 116,104,101,32,98,117,105,108,116,45,105,110,32,109,111,100, + 117,108,101,46,10,10,32,32,32,32,32,32,32,32,73,102, + 32,39,112,97,116,104,39,32,105,115,32,101,118,101,114,32, + 115,112,101,99,105,102,105,101,100,32,116,104,101,110,32,116, + 104,101,32,115,101,97,114,99,104,32,105,115,32,99,111,110, + 115,105,100,101,114,101,100,32,97,32,102,97,105,108,117,114, + 101,46,10,10,32,32,32,32,32,32,32,32,78,40,3,0, + 0,0,117,4,0,0,0,78,111,110,101,117,4,0,0,0, + 95,105,109,112,117,10,0,0,0,105,115,95,98,117,105,108, + 116,105,110,40,3,0,0,0,117,3,0,0,0,99,108,115, + 117,8,0,0,0,102,117,108,108,110,97,109,101,117,4,0, + 0,0,112,97,116,104,40,0,0,0,0,40,0,0,0,0, 117,29,0,0,0,60,102,114,111,122,101,110,32,105,109,112, 111,114,116,108,105,98,46,95,98,111,111,116,115,116,114,97, - 112,62,117,15,0,0,0,78,97,109,101,115,112,97,99,101, - 76,111,97,100,101,114,186,4,0,0,115,6,0,0,0,16, - 1,12,3,18,4,117,15,0,0,0,78,97,109,101,115,112, - 97,99,101,76,111,97,100,101,114,99,1,0,0,0,0,0, - 0,0,1,0,0,0,4,0,0,0,66,0,0,0,115,119, - 0,0,0,124,0,0,69,101,0,0,90,1,0,100,0,0, - 90,2,0,100,1,0,90,3,0,101,4,0,100,2,0,100, - 3,0,132,0,0,131,1,0,90,5,0,101,4,0,100,4, - 0,100,5,0,132,0,0,131,1,0,90,6,0,101,4,0, - 100,6,0,100,7,0,132,0,0,131,1,0,90,7,0,101, - 4,0,100,8,0,100,9,0,132,0,0,131,1,0,90,8, - 0,101,4,0,100,12,0,100,10,0,100,11,0,132,1,0, - 131,1,0,90,10,0,100,12,0,83,40,13,0,0,0,117, - 10,0,0,0,80,97,116,104,70,105,110,100,101,114,117,62, - 0,0,0,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,1,0,0,0,0,0,0,0,2,0,0,0,4,0, - 0,0,67,0,0,0,115,58,0,0,0,120,51,0,116,0, - 0,106,1,0,106,2,0,131,0,0,68,93,34,0,125,1, - 0,116,3,0,124,1,0,100,1,0,131,2,0,114,16,0, - 124,1,0,106,4,0,131,0,0,1,113,16,0,113,16,0, - 87,100,2,0,83,40,3,0,0,0,117,125,0,0,0,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,117,17,0,0, - 0,105,110,118,97,108,105,100,97,116,101,95,99,97,99,104, - 101,115,78,40,5,0,0,0,117,3,0,0,0,115,121,115, - 117,19,0,0,0,112,97,116,104,95,105,109,112,111,114,116, - 101,114,95,99,97,99,104,101,117,6,0,0,0,118,97,108, - 117,101,115,117,7,0,0,0,104,97,115,97,116,116,114,117, - 17,0,0,0,105,110,118,97,108,105,100,97,116,101,95,99, - 97,99,104,101,115,40,2,0,0,0,117,3,0,0,0,99, - 108,115,117,6,0,0,0,102,105,110,100,101,114,40,0,0, - 0,0,40,0,0,0,0,117,29,0,0,0,60,102,114,111, - 122,101,110,32,105,109,112,111,114,116,108,105,98,46,95,98, - 111,111,116,115,116,114,97,112,62,117,17,0,0,0,105,110, - 118,97,108,105,100,97,116,101,95,99,97,99,104,101,115,208, - 4,0,0,115,6,0,0,0,0,4,22,1,15,1,117,28, - 0,0,0,80,97,116,104,70,105,110,100,101,114,46,105,110, - 118,97,108,105,100,97,116,101,95,99,97,99,104,101,115,99, - 2,0,0,0,0,0,0,0,3,0,0,0,12,0,0,0, - 67,0,0,0,115,94,0,0,0,116,0,0,106,1,0,115, - 28,0,116,2,0,106,3,0,100,1,0,116,4,0,131,2, - 0,1,110,0,0,120,59,0,116,0,0,106,1,0,68,93, - 44,0,125,2,0,121,14,0,124,2,0,124,1,0,131,1, - 0,83,87,113,38,0,4,116,5,0,107,10,0,114,81,0, - 1,1,1,119,38,0,89,113,38,0,88,113,38,0,87,100, - 2,0,83,100,2,0,83,40,3,0,0,0,117,113,0,0, - 0,83,101,97,114,99,104,32,115,101,113,117,101,110,99,101, - 32,111,102,32,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,10,10,32,32,32,32,32,32,32,32,73,102,32,39, - 104,111,111,107,115,39,32,105,115,32,102,97,108,115,101,32, - 116,104,101,110,32,117,115,101,32,115,121,115,46,112,97,116, - 104,95,104,111,111,107,115,46,10,10,32,32,32,32,32,32, - 32,32,117,23,0,0,0,115,121,115,46,112,97,116,104,95, - 104,111,111,107,115,32,105,115,32,101,109,112,116,121,78,40, - 7,0,0,0,117,3,0,0,0,115,121,115,117,10,0,0, - 0,112,97,116,104,95,104,111,111,107,115,117,9,0,0,0, - 95,119,97,114,110,105,110,103,115,117,4,0,0,0,119,97, - 114,110,117,13,0,0,0,73,109,112,111,114,116,87,97,114, - 110,105,110,103,117,11,0,0,0,73,109,112,111,114,116,69, - 114,114,111,114,117,4,0,0,0,78,111,110,101,40,3,0, - 0,0,117,3,0,0,0,99,108,115,117,4,0,0,0,112, - 97,116,104,117,4,0,0,0,104,111,111,107,40,0,0,0, - 0,40,0,0,0,0,117,29,0,0,0,60,102,114,111,122, - 101,110,32,105,109,112,111,114,116,108,105,98,46,95,98,111, - 111,116,115,116,114,97,112,62,117,11,0,0,0,95,112,97, - 116,104,95,104,111,111,107,115,216,4,0,0,115,16,0,0, - 0,0,7,9,1,19,1,16,1,3,1,14,1,13,1,12, - 2,117,22,0,0,0,80,97,116,104,70,105,110,100,101,114, - 46,95,112,97,116,104,95,104,111,111,107,115,99,2,0,0, - 0,0,0,0,0,3,0,0,0,11,0,0,0,67,0,0, - 0,115,91,0,0,0,124,1,0,100,1,0,107,2,0,114, - 21,0,100,2,0,125,1,0,110,0,0,121,17,0,116,0, - 0,106,1,0,124,1,0,25,125,2,0,87,110,46,0,4, - 116,2,0,107,10,0,114,86,0,1,1,1,124,0,0,106, - 3,0,124,1,0,131,1,0,125,2,0,124,2,0,116,0, - 0,106,1,0,124,1,0,60,89,110,1,0,88,124,2,0, - 83,40,3,0,0,0,117,210,0,0,0,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,117,0,0, - 0,0,117,1,0,0,0,46,40,4,0,0,0,117,3,0, - 0,0,115,121,115,117,19,0,0,0,112,97,116,104,95,105, - 109,112,111,114,116,101,114,95,99,97,99,104,101,117,8,0, - 0,0,75,101,121,69,114,114,111,114,117,11,0,0,0,95, - 112,97,116,104,95,104,111,111,107,115,40,3,0,0,0,117, - 3,0,0,0,99,108,115,117,4,0,0,0,112,97,116,104, - 117,6,0,0,0,102,105,110,100,101,114,40,0,0,0,0, + 112,62,117,11,0,0,0,102,105,110,100,95,109,111,100,117, + 108,101,131,2,0,0,115,6,0,0,0,0,7,12,1,4, + 1,117,27,0,0,0,66,117,105,108,116,105,110,73,109,112, + 111,114,116,101,114,46,102,105,110,100,95,109,111,100,117,108, + 101,99,2,0,0,0,0,0,0,0,3,0,0,0,9,0, + 0,0,67,0,0,0,115,88,0,0,0,124,1,0,116,0, + 0,106,1,0,107,6,0,125,2,0,121,20,0,116,2,0, + 116,3,0,106,4,0,124,1,0,131,2,0,83,87,110,46, + 0,1,1,1,124,2,0,12,114,76,0,124,1,0,116,0, + 0,106,1,0,107,6,0,114,76,0,116,0,0,106,1,0, + 124,1,0,61,110,0,0,130,0,0,89,110,1,0,88,100, + 1,0,83,40,2,0,0,0,117,23,0,0,0,76,111,97, + 100,32,97,32,98,117,105,108,116,45,105,110,32,109,111,100, + 117,108,101,46,78,40,5,0,0,0,117,3,0,0,0,115, + 121,115,117,7,0,0,0,109,111,100,117,108,101,115,117,25, + 0,0,0,95,99,97,108,108,95,119,105,116,104,95,102,114, + 97,109,101,115,95,114,101,109,111,118,101,100,117,4,0,0, + 0,95,105,109,112,117,12,0,0,0,105,110,105,116,95,98, + 117,105,108,116,105,110,40,3,0,0,0,117,3,0,0,0, + 99,108,115,117,8,0,0,0,102,117,108,108,110,97,109,101, + 117,9,0,0,0,105,115,95,114,101,108,111,97,100,40,0, + 0,0,0,40,0,0,0,0,117,29,0,0,0,60,102,114, + 111,122,101,110,32,105,109,112,111,114,116,108,105,98,46,95, + 98,111,111,116,115,116,114,97,112,62,117,11,0,0,0,108, + 111,97,100,95,109,111,100,117,108,101,142,2,0,0,115,14, + 0,0,0,0,6,15,1,3,1,20,1,3,1,22,1,13, + 1,117,27,0,0,0,66,117,105,108,116,105,110,73,109,112, + 111,114,116,101,114,46,108,111,97,100,95,109,111,100,117,108, + 101,99,2,0,0,0,0,0,0,0,2,0,0,0,1,0, + 0,0,67,0,0,0,115,4,0,0,0,100,1,0,83,40, + 2,0,0,0,117,57,0,0,0,82,101,116,117,114,110,32, + 78,111,110,101,32,97,115,32,98,117,105,108,116,45,105,110, + 32,109,111,100,117,108,101,115,32,100,111,32,110,111,116,32, + 104,97,118,101,32,99,111,100,101,32,111,98,106,101,99,116, + 115,46,78,40,1,0,0,0,117,4,0,0,0,78,111,110, + 101,40,2,0,0,0,117,3,0,0,0,99,108,115,117,8, + 0,0,0,102,117,108,108,110,97,109,101,40,0,0,0,0, 40,0,0,0,0,117,29,0,0,0,60,102,114,111,122,101, 110,32,105,109,112,111,114,116,108,105,98,46,95,98,111,111, - 116,115,116,114,97,112,62,117,20,0,0,0,95,112,97,116, - 104,95,105,109,112,111,114,116,101,114,95,99,97,99,104,101, - 233,4,0,0,115,16,0,0,0,0,8,12,1,9,1,3, - 1,17,1,13,1,15,1,18,1,117,31,0,0,0,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,8,0,0,0,4,0,0,0,67,0, - 0,0,115,162,0,0,0,103,0,0,125,3,0,120,149,0, - 124,2,0,68,93,131,0,125,4,0,124,0,0,106,0,0, - 124,4,0,131,1,0,125,5,0,124,5,0,100,2,0,107, - 9,0,114,13,0,116,2,0,124,5,0,100,1,0,131,2, - 0,114,85,0,124,5,0,106,3,0,124,1,0,131,1,0, - 92,2,0,125,6,0,125,7,0,110,21,0,124,5,0,106, - 4,0,124,1,0,131,1,0,125,6,0,103,0,0,125,7, - 0,124,6,0,100,2,0,107,9,0,114,128,0,124,6,0, - 124,3,0,102,2,0,83,124,3,0,106,5,0,124,7,0, - 131,1,0,1,113,13,0,113,13,0,87,100,2,0,124,3, - 0,102,2,0,83,100,2,0,83,40,3,0,0,0,117,63, - 0,0,0,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,117,11,0,0,0,102,105,110,100,95,108,111,97,100, - 101,114,78,40,6,0,0,0,117,20,0,0,0,95,112,97, - 116,104,95,105,109,112,111,114,116,101,114,95,99,97,99,104, - 101,117,4,0,0,0,78,111,110,101,117,7,0,0,0,104, - 97,115,97,116,116,114,117,11,0,0,0,102,105,110,100,95, - 108,111,97,100,101,114,117,11,0,0,0,102,105,110,100,95, - 109,111,100,117,108,101,117,6,0,0,0,101,120,116,101,110, - 100,40,8,0,0,0,117,3,0,0,0,99,108,115,117,8, - 0,0,0,102,117,108,108,110,97,109,101,117,4,0,0,0, - 112,97,116,104,117,14,0,0,0,110,97,109,101,115,112,97, - 99,101,95,112,97,116,104,117,5,0,0,0,101,110,116,114, - 121,117,6,0,0,0,102,105,110,100,101,114,117,6,0,0, - 0,108,111,97,100,101,114,117,8,0,0,0,112,111,114,116, - 105,111,110,115,40,0,0,0,0,40,0,0,0,0,117,29, + 116,115,116,114,97,112,62,117,8,0,0,0,103,101,116,95, + 99,111,100,101,156,2,0,0,115,2,0,0,0,0,4,117, + 24,0,0,0,66,117,105,108,116,105,110,73,109,112,111,114, + 116,101,114,46,103,101,116,95,99,111,100,101,99,2,0,0, + 0,0,0,0,0,2,0,0,0,1,0,0,0,67,0,0, + 0,115,4,0,0,0,100,1,0,83,40,2,0,0,0,117, + 56,0,0,0,82,101,116,117,114,110,32,78,111,110,101,32, + 97,115,32,98,117,105,108,116,45,105,110,32,109,111,100,117, + 108,101,115,32,100,111,32,110,111,116,32,104,97,118,101,32, + 115,111,117,114,99,101,32,99,111,100,101,46,78,40,1,0, + 0,0,117,4,0,0,0,78,111,110,101,40,2,0,0,0, + 117,3,0,0,0,99,108,115,117,8,0,0,0,102,117,108, + 108,110,97,109,101,40,0,0,0,0,40,0,0,0,0,117, + 29,0,0,0,60,102,114,111,122,101,110,32,105,109,112,111, + 114,116,108,105,98,46,95,98,111,111,116,115,116,114,97,112, + 62,117,10,0,0,0,103,101,116,95,115,111,117,114,99,101, + 162,2,0,0,115,2,0,0,0,0,4,117,26,0,0,0, + 66,117,105,108,116,105,110,73,109,112,111,114,116,101,114,46, + 103,101,116,95,115,111,117,114,99,101,99,2,0,0,0,0, + 0,0,0,2,0,0,0,1,0,0,0,67,0,0,0,115, + 4,0,0,0,100,1,0,83,40,2,0,0,0,117,52,0, + 0,0,82,101,116,117,114,110,32,70,97,108,115,101,32,97, + 115,32,98,117,105,108,116,45,105,110,32,109,111,100,117,108, + 101,115,32,97,114,101,32,110,101,118,101,114,32,112,97,99, + 107,97,103,101,115,46,70,40,1,0,0,0,117,5,0,0, + 0,70,97,108,115,101,40,2,0,0,0,117,3,0,0,0, + 99,108,115,117,8,0,0,0,102,117,108,108,110,97,109,101, + 40,0,0,0,0,40,0,0,0,0,117,29,0,0,0,60, + 102,114,111,122,101,110,32,105,109,112,111,114,116,108,105,98, + 46,95,98,111,111,116,115,116,114,97,112,62,117,10,0,0, + 0,105,115,95,112,97,99,107,97,103,101,168,2,0,0,115, + 2,0,0,0,0,4,117,26,0,0,0,66,117,105,108,116, + 105,110,73,109,112,111,114,116,101,114,46,105,115,95,112,97, + 99,107,97,103,101,78,40,15,0,0,0,117,8,0,0,0, + 95,95,110,97,109,101,95,95,117,10,0,0,0,95,95,109, + 111,100,117,108,101,95,95,117,12,0,0,0,95,95,113,117, + 97,108,110,97,109,101,95,95,117,7,0,0,0,95,95,100, + 111,99,95,95,117,11,0,0,0,99,108,97,115,115,109,101, + 116,104,111,100,117,11,0,0,0,109,111,100,117,108,101,95, + 114,101,112,114,117,4,0,0,0,78,111,110,101,117,11,0, + 0,0,102,105,110,100,95,109,111,100,117,108,101,117,11,0, + 0,0,115,101,116,95,112,97,99,107,97,103,101,117,10,0, + 0,0,115,101,116,95,108,111,97,100,101,114,117,17,0,0, + 0,95,114,101,113,117,105,114,101,115,95,98,117,105,108,116, + 105,110,117,11,0,0,0,108,111,97,100,95,109,111,100,117, + 108,101,117,8,0,0,0,103,101,116,95,99,111,100,101,117, + 10,0,0,0,103,101,116,95,115,111,117,114,99,101,117,10, + 0,0,0,105,115,95,112,97,99,107,97,103,101,40,1,0, + 0,0,117,10,0,0,0,95,95,108,111,99,97,108,115,95, + 95,40,0,0,0,0,40,0,0,0,0,117,29,0,0,0, + 60,102,114,111,122,101,110,32,105,109,112,111,114,116,108,105, + 98,46,95,98,111,111,116,115,116,114,97,112,62,117,15,0, + 0,0,66,117,105,108,116,105,110,73,109,112,111,114,116,101, + 114,118,2,0,0,115,28,0,0,0,16,7,6,2,18,4, + 3,1,18,10,3,1,3,1,3,1,27,11,3,1,21,5, + 3,1,21,5,3,1,117,15,0,0,0,66,117,105,108,116, + 105,110,73,109,112,111,114,116,101,114,99,1,0,0,0,0, + 0,0,0,1,0,0,0,6,0,0,0,66,0,0,0,115, + 173,0,0,0,124,0,0,69,101,0,0,90,1,0,100,0, + 0,90,2,0,100,1,0,90,3,0,101,4,0,100,2,0, + 100,3,0,132,0,0,131,1,0,90,5,0,101,4,0,100, + 14,0,100,4,0,100,5,0,132,1,0,131,1,0,90,7, + 0,101,4,0,101,8,0,101,9,0,101,10,0,100,6,0, + 100,7,0,132,0,0,131,1,0,131,1,0,131,1,0,131, + 1,0,90,11,0,101,4,0,101,10,0,100,8,0,100,9, + 0,132,0,0,131,1,0,131,1,0,90,12,0,101,4,0, + 101,10,0,100,10,0,100,11,0,132,0,0,131,1,0,131, + 1,0,90,13,0,101,4,0,101,10,0,100,12,0,100,13, + 0,132,0,0,131,1,0,131,1,0,90,14,0,100,14,0, + 83,40,15,0,0,0,117,14,0,0,0,70,114,111,122,101, + 110,73,109,112,111,114,116,101,114,117,142,0,0,0,77,101, + 116,97,32,112,97,116,104,32,105,109,112,111,114,116,32,102, + 111,114,32,102,114,111,122,101,110,32,109,111,100,117,108,101, + 115,46,10,10,32,32,32,32,65,108,108,32,109,101,116,104, + 111,100,115,32,97,114,101,32,101,105,116,104,101,114,32,99, + 108,97,115,115,32,111,114,32,115,116,97,116,105,99,32,109, + 101,116,104,111,100,115,32,116,111,32,97,118,111,105,100,32, + 116,104,101,32,110,101,101,100,32,116,111,10,32,32,32,32, + 105,110,115,116,97,110,116,105,97,116,101,32,116,104,101,32, + 99,108,97,115,115,46,10,10,32,32,32,32,99,2,0,0, + 0,0,0,0,0,2,0,0,0,2,0,0,0,67,0,0, + 0,115,16,0,0,0,100,1,0,106,0,0,124,1,0,106, + 1,0,131,1,0,83,40,2,0,0,0,78,117,22,0,0, + 0,60,109,111,100,117,108,101,32,39,123,125,39,32,40,102, + 114,111,122,101,110,41,62,40,2,0,0,0,117,6,0,0, + 0,102,111,114,109,97,116,117,8,0,0,0,95,95,110,97, + 109,101,95,95,40,2,0,0,0,117,3,0,0,0,99,108, + 115,117,1,0,0,0,109,40,0,0,0,0,40,0,0,0, + 0,117,29,0,0,0,60,102,114,111,122,101,110,32,105,109, + 112,111,114,116,108,105,98,46,95,98,111,111,116,115,116,114, + 97,112,62,117,11,0,0,0,109,111,100,117,108,101,95,114, + 101,112,114,184,2,0,0,115,2,0,0,0,0,2,117,26, + 0,0,0,70,114,111,122,101,110,73,109,112,111,114,116,101, + 114,46,109,111,100,117,108,101,95,114,101,112,114,99,3,0, + 0,0,0,0,0,0,3,0,0,0,2,0,0,0,67,0, + 0,0,115,23,0,0,0,116,0,0,106,1,0,124,1,0, + 131,1,0,114,19,0,124,0,0,83,100,1,0,83,40,2, + 0,0,0,117,21,0,0,0,70,105,110,100,32,97,32,102, + 114,111,122,101,110,32,109,111,100,117,108,101,46,78,40,3, + 0,0,0,117,4,0,0,0,95,105,109,112,117,9,0,0, + 0,105,115,95,102,114,111,122,101,110,117,4,0,0,0,78, + 111,110,101,40,3,0,0,0,117,3,0,0,0,99,108,115, + 117,8,0,0,0,102,117,108,108,110,97,109,101,117,4,0, + 0,0,112,97,116,104,40,0,0,0,0,40,0,0,0,0, + 117,29,0,0,0,60,102,114,111,122,101,110,32,105,109,112, + 111,114,116,108,105,98,46,95,98,111,111,116,115,116,114,97, + 112,62,117,11,0,0,0,102,105,110,100,95,109,111,100,117, + 108,101,188,2,0,0,115,2,0,0,0,0,3,117,26,0, + 0,0,70,114,111,122,101,110,73,109,112,111,114,116,101,114, + 46,102,105,110,100,95,109,111,100,117,108,101,99,2,0,0, + 0,0,0,0,0,4,0,0,0,9,0,0,0,67,0,0, + 0,115,100,0,0,0,124,1,0,116,0,0,106,1,0,107, + 6,0,125,2,0,121,32,0,116,2,0,116,3,0,106,4, + 0,124,1,0,131,2,0,125,3,0,124,3,0,96,5,0, + 124,3,0,83,87,110,46,0,1,1,1,124,2,0,12,114, + 88,0,124,1,0,116,0,0,106,1,0,107,6,0,114,88, + 0,116,0,0,106,1,0,124,1,0,61,110,0,0,130,0, + 0,89,110,1,0,88,100,1,0,83,40,2,0,0,0,117, + 21,0,0,0,76,111,97,100,32,97,32,102,114,111,122,101, + 110,32,109,111,100,117,108,101,46,78,40,6,0,0,0,117, + 3,0,0,0,115,121,115,117,7,0,0,0,109,111,100,117, + 108,101,115,117,25,0,0,0,95,99,97,108,108,95,119,105, + 116,104,95,102,114,97,109,101,115,95,114,101,109,111,118,101, + 100,117,4,0,0,0,95,105,109,112,117,11,0,0,0,105, + 110,105,116,95,102,114,111,122,101,110,117,8,0,0,0,95, + 95,102,105,108,101,95,95,40,4,0,0,0,117,3,0,0, + 0,99,108,115,117,8,0,0,0,102,117,108,108,110,97,109, + 101,117,9,0,0,0,105,115,95,114,101,108,111,97,100,117, + 1,0,0,0,109,40,0,0,0,0,40,0,0,0,0,117, + 29,0,0,0,60,102,114,111,122,101,110,32,105,109,112,111, + 114,116,108,105,98,46,95,98,111,111,116,115,116,114,97,112, + 62,117,11,0,0,0,108,111,97,100,95,109,111,100,117,108, + 101,193,2,0,0,115,18,0,0,0,0,6,15,1,3,1, + 18,2,6,1,8,1,3,1,22,1,13,1,117,26,0,0, + 0,70,114,111,122,101,110,73,109,112,111,114,116,101,114,46, + 108,111,97,100,95,109,111,100,117,108,101,99,2,0,0,0, + 0,0,0,0,2,0,0,0,2,0,0,0,67,0,0,0, + 115,13,0,0,0,116,0,0,106,1,0,124,1,0,131,1, + 0,83,40,1,0,0,0,117,45,0,0,0,82,101,116,117, + 114,110,32,116,104,101,32,99,111,100,101,32,111,98,106,101, + 99,116,32,102,111,114,32,116,104,101,32,102,114,111,122,101, + 110,32,109,111,100,117,108,101,46,40,2,0,0,0,117,4, + 0,0,0,95,105,109,112,117,17,0,0,0,103,101,116,95, + 102,114,111,122,101,110,95,111,98,106,101,99,116,40,2,0, + 0,0,117,3,0,0,0,99,108,115,117,8,0,0,0,102, + 117,108,108,110,97,109,101,40,0,0,0,0,40,0,0,0, + 0,117,29,0,0,0,60,102,114,111,122,101,110,32,105,109, + 112,111,114,116,108,105,98,46,95,98,111,111,116,115,116,114, + 97,112,62,117,8,0,0,0,103,101,116,95,99,111,100,101, + 210,2,0,0,115,2,0,0,0,0,4,117,23,0,0,0, + 70,114,111,122,101,110,73,109,112,111,114,116,101,114,46,103, + 101,116,95,99,111,100,101,99,2,0,0,0,0,0,0,0, + 2,0,0,0,1,0,0,0,67,0,0,0,115,4,0,0, + 0,100,1,0,83,40,2,0,0,0,117,54,0,0,0,82, + 101,116,117,114,110,32,78,111,110,101,32,97,115,32,102,114, + 111,122,101,110,32,109,111,100,117,108,101,115,32,100,111,32, + 110,111,116,32,104,97,118,101,32,115,111,117,114,99,101,32, + 99,111,100,101,46,78,40,1,0,0,0,117,4,0,0,0, + 78,111,110,101,40,2,0,0,0,117,3,0,0,0,99,108, + 115,117,8,0,0,0,102,117,108,108,110,97,109,101,40,0, + 0,0,0,40,0,0,0,0,117,29,0,0,0,60,102,114, + 111,122,101,110,32,105,109,112,111,114,116,108,105,98,46,95, + 98,111,111,116,115,116,114,97,112,62,117,10,0,0,0,103, + 101,116,95,115,111,117,114,99,101,216,2,0,0,115,2,0, + 0,0,0,4,117,25,0,0,0,70,114,111,122,101,110,73, + 109,112,111,114,116,101,114,46,103,101,116,95,115,111,117,114, + 99,101,99,2,0,0,0,0,0,0,0,2,0,0,0,2, + 0,0,0,67,0,0,0,115,13,0,0,0,116,0,0,106, + 1,0,124,1,0,131,1,0,83,40,1,0,0,0,117,46, + 0,0,0,82,101,116,117,114,110,32,84,114,117,101,32,105, + 102,32,116,104,101,32,102,114,111,122,101,110,32,109,111,100, + 117,108,101,32,105,115,32,97,32,112,97,99,107,97,103,101, + 46,40,2,0,0,0,117,4,0,0,0,95,105,109,112,117, + 17,0,0,0,105,115,95,102,114,111,122,101,110,95,112,97, + 99,107,97,103,101,40,2,0,0,0,117,3,0,0,0,99, + 108,115,117,8,0,0,0,102,117,108,108,110,97,109,101,40, + 0,0,0,0,40,0,0,0,0,117,29,0,0,0,60,102, + 114,111,122,101,110,32,105,109,112,111,114,116,108,105,98,46, + 95,98,111,111,116,115,116,114,97,112,62,117,10,0,0,0, + 105,115,95,112,97,99,107,97,103,101,222,2,0,0,115,2, + 0,0,0,0,4,117,25,0,0,0,70,114,111,122,101,110, + 73,109,112,111,114,116,101,114,46,105,115,95,112,97,99,107, + 97,103,101,78,40,15,0,0,0,117,8,0,0,0,95,95, + 110,97,109,101,95,95,117,10,0,0,0,95,95,109,111,100, + 117,108,101,95,95,117,12,0,0,0,95,95,113,117,97,108, + 110,97,109,101,95,95,117,7,0,0,0,95,95,100,111,99, + 95,95,117,11,0,0,0,99,108,97,115,115,109,101,116,104, + 111,100,117,11,0,0,0,109,111,100,117,108,101,95,114,101, + 112,114,117,4,0,0,0,78,111,110,101,117,11,0,0,0, + 102,105,110,100,95,109,111,100,117,108,101,117,11,0,0,0, + 115,101,116,95,112,97,99,107,97,103,101,117,10,0,0,0, + 115,101,116,95,108,111,97,100,101,114,117,16,0,0,0,95, + 114,101,113,117,105,114,101,115,95,102,114,111,122,101,110,117, + 11,0,0,0,108,111,97,100,95,109,111,100,117,108,101,117, + 8,0,0,0,103,101,116,95,99,111,100,101,117,10,0,0, + 0,103,101,116,95,115,111,117,114,99,101,117,10,0,0,0, + 105,115,95,112,97,99,107,97,103,101,40,1,0,0,0,117, + 10,0,0,0,95,95,108,111,99,97,108,115,95,95,40,0, + 0,0,0,40,0,0,0,0,117,29,0,0,0,60,102,114, + 111,122,101,110,32,105,109,112,111,114,116,108,105,98,46,95, + 98,111,111,116,115,116,114,97,112,62,117,14,0,0,0,70, + 114,111,122,101,110,73,109,112,111,114,116,101,114,175,2,0, + 0,115,28,0,0,0,16,7,6,2,18,4,3,1,18,4, + 3,1,3,1,3,1,27,14,3,1,21,5,3,1,21,5, + 3,1,117,14,0,0,0,70,114,111,122,101,110,73,109,112, + 111,114,116,101,114,99,1,0,0,0,0,0,0,0,1,0, + 0,0,4,0,0,0,66,0,0,0,115,101,0,0,0,124, + 0,0,69,101,0,0,90,1,0,100,0,0,90,2,0,100, + 1,0,90,3,0,100,2,0,90,4,0,100,3,0,90,5, + 0,100,11,0,90,7,0,101,8,0,100,4,0,100,5,0, + 132,0,0,131,1,0,90,9,0,101,8,0,100,6,0,100, + 7,0,132,0,0,131,1,0,90,10,0,101,8,0,100,10, + 0,100,8,0,100,9,0,132,1,0,131,1,0,90,12,0, + 100,10,0,83,40,12,0,0,0,117,21,0,0,0,87,105, + 110,100,111,119,115,82,101,103,105,115,116,114,121,70,105,110, + 100,101,114,117,67,0,0,0,77,101,116,97,32,112,97,116, + 104,32,102,105,110,100,101,114,32,102,111,114,32,109,111,100, + 117,108,101,115,32,100,101,99,108,97,114,101,100,32,105,110, + 32,116,104,101,32,87,105,110,100,111,119,115,32,114,101,103, + 105,115,116,114,121,46,10,32,32,32,32,117,59,0,0,0, + 83,111,102,116,119,97,114,101,92,80,121,116,104,111,110,92, + 80,121,116,104,111,110,67,111,114,101,92,123,115,121,115,95, + 118,101,114,115,105,111,110,125,92,77,111,100,117,108,101,115, + 92,123,102,117,108,108,110,97,109,101,125,117,65,0,0,0, + 83,111,102,116,119,97,114,101,92,80,121,116,104,111,110,92, + 80,121,116,104,111,110,67,111,114,101,92,123,115,121,115,95, + 118,101,114,115,105,111,110,125,92,77,111,100,117,108,101,115, + 92,123,102,117,108,108,110,97,109,101,125,92,68,101,98,117, + 103,99,2,0,0,0,0,0,0,0,2,0,0,0,11,0, + 0,0,67,0,0,0,115,67,0,0,0,121,23,0,116,0, + 0,106,1,0,116,0,0,106,2,0,124,1,0,131,2,0, + 83,87,110,37,0,4,116,3,0,107,10,0,114,62,0,1, + 1,1,116,0,0,106,1,0,116,0,0,106,4,0,124,1, + 0,131,2,0,83,89,110,1,0,88,100,0,0,83,40,1, + 0,0,0,78,40,5,0,0,0,117,7,0,0,0,95,119, + 105,110,114,101,103,117,7,0,0,0,79,112,101,110,75,101, + 121,117,17,0,0,0,72,75,69,89,95,67,85,82,82,69, + 78,84,95,85,83,69,82,117,12,0,0,0,87,105,110,100, + 111,119,115,69,114,114,111,114,117,18,0,0,0,72,75,69, + 89,95,76,79,67,65,76,95,77,65,67,72,73,78,69,40, + 2,0,0,0,117,3,0,0,0,99,108,115,117,3,0,0, + 0,107,101,121,40,0,0,0,0,40,0,0,0,0,117,29, 0,0,0,60,102,114,111,122,101,110,32,105,109,112,111,114, 116,108,105,98,46,95,98,111,111,116,115,116,114,97,112,62, - 117,11,0,0,0,95,103,101,116,95,108,111,97,100,101,114, - 250,4,0,0,115,24,0,0,0,0,5,6,1,13,1,15, - 1,12,1,15,1,24,2,15,1,6,1,12,2,10,5,20, - 2,117,22,0,0,0,80,97,116,104,70,105,110,100,101,114, - 46,95,103,101,116,95,108,111,97,100,101,114,99,3,0,0, - 0,0,0,0,0,5,0,0,0,4,0,0,0,67,0,0, - 0,115,97,0,0,0,124,2,0,100,1,0,107,8,0,114, - 24,0,116,1,0,106,2,0,125,2,0,110,0,0,124,0, - 0,106,3,0,124,1,0,124,2,0,131,2,0,92,2,0, - 125,3,0,125,4,0,124,3,0,100,1,0,107,9,0,114, - 64,0,124,3,0,83,124,4,0,114,89,0,116,4,0,124, - 1,0,124,4,0,124,0,0,106,3,0,131,3,0,83,100, - 1,0,83,100,1,0,83,40,2,0,0,0,117,98,0,0, - 0,70,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,78,40,5,0,0,0,117,4,0,0,0,78,111, - 110,101,117,3,0,0,0,115,121,115,117,4,0,0,0,112, - 97,116,104,117,11,0,0,0,95,103,101,116,95,108,111,97, - 100,101,114,117,15,0,0,0,78,97,109,101,115,112,97,99, - 101,76,111,97,100,101,114,40,5,0,0,0,117,3,0,0, - 0,99,108,115,117,8,0,0,0,102,117,108,108,110,97,109, - 101,117,4,0,0,0,112,97,116,104,117,6,0,0,0,108, - 111,97,100,101,114,117,14,0,0,0,110,97,109,101,115,112, - 97,99,101,95,112,97,116,104,40,0,0,0,0,40,0,0, + 117,14,0,0,0,95,111,112,101,110,95,114,101,103,105,115, + 116,114,121,242,2,0,0,115,8,0,0,0,0,2,3,1, + 23,1,13,1,117,36,0,0,0,87,105,110,100,111,119,115, + 82,101,103,105,115,116,114,121,70,105,110,100,101,114,46,95, + 111,112,101,110,95,114,101,103,105,115,116,114,121,99,2,0, + 0,0,0,0,0,0,6,0,0,0,16,0,0,0,67,0, + 0,0,115,142,0,0,0,124,0,0,106,0,0,114,21,0, + 124,0,0,106,1,0,125,2,0,110,9,0,124,0,0,106, + 2,0,125,2,0,124,2,0,106,3,0,100,1,0,124,1, + 0,100,2,0,116,4,0,106,5,0,100,0,0,100,3,0, + 133,2,0,25,131,0,2,125,3,0,121,46,0,124,0,0, + 106,6,0,124,3,0,131,1,0,143,25,0,125,4,0,116, + 7,0,106,8,0,124,4,0,100,4,0,131,2,0,125,5, + 0,87,100,0,0,81,88,87,110,22,0,4,116,9,0,107, + 10,0,114,137,0,1,1,1,100,0,0,83,89,110,1,0, + 88,124,5,0,83,40,5,0,0,0,78,117,8,0,0,0, + 102,117,108,108,110,97,109,101,117,11,0,0,0,115,121,115, + 95,118,101,114,115,105,111,110,105,3,0,0,0,117,0,0, + 0,0,40,11,0,0,0,117,11,0,0,0,68,69,66,85, + 71,95,66,85,73,76,68,117,18,0,0,0,82,69,71,73, + 83,84,82,89,95,75,69,89,95,68,69,66,85,71,117,12, + 0,0,0,82,69,71,73,83,84,82,89,95,75,69,89,117, + 6,0,0,0,102,111,114,109,97,116,117,3,0,0,0,115, + 121,115,117,7,0,0,0,118,101,114,115,105,111,110,117,14, + 0,0,0,95,111,112,101,110,95,114,101,103,105,115,116,114, + 121,117,7,0,0,0,95,119,105,110,114,101,103,117,10,0, + 0,0,81,117,101,114,121,86,97,108,117,101,117,12,0,0, + 0,87,105,110,100,111,119,115,69,114,114,111,114,117,4,0, + 0,0,78,111,110,101,40,6,0,0,0,117,3,0,0,0, + 99,108,115,117,8,0,0,0,102,117,108,108,110,97,109,101, + 117,12,0,0,0,114,101,103,105,115,116,114,121,95,107,101, + 121,117,3,0,0,0,107,101,121,117,4,0,0,0,104,107, + 101,121,117,8,0,0,0,102,105,108,101,112,97,116,104,40, + 0,0,0,0,40,0,0,0,0,117,29,0,0,0,60,102, + 114,111,122,101,110,32,105,109,112,111,114,116,108,105,98,46, + 95,98,111,111,116,115,116,114,97,112,62,117,16,0,0,0, + 95,115,101,97,114,99,104,95,114,101,103,105,115,116,114,121, + 249,2,0,0,115,22,0,0,0,0,2,9,1,12,2,9, + 1,15,1,22,1,3,1,18,1,28,1,13,1,9,1,117, + 38,0,0,0,87,105,110,100,111,119,115,82,101,103,105,115, + 116,114,121,70,105,110,100,101,114,46,95,115,101,97,114,99, + 104,95,114,101,103,105,115,116,114,121,99,3,0,0,0,0, + 0,0,0,7,0,0,0,12,0,0,0,67,0,0,0,115, + 140,0,0,0,124,0,0,106,0,0,124,1,0,131,1,0, + 125,3,0,124,3,0,100,1,0,107,8,0,114,31,0,100, + 1,0,83,121,17,0,116,2,0,106,3,0,124,3,0,131, + 1,0,1,87,110,22,0,4,116,4,0,107,10,0,114,72, + 0,1,1,1,100,1,0,83,89,110,1,0,88,120,60,0, + 116,5,0,131,0,0,68,93,49,0,92,3,0,125,4,0, + 125,5,0,125,6,0,124,3,0,106,6,0,116,7,0,124, + 5,0,131,1,0,131,1,0,114,83,0,124,4,0,124,1, + 0,124,3,0,131,2,0,83,113,83,0,87,100,1,0,83, + 40,2,0,0,0,117,34,0,0,0,70,105,110,100,32,109, + 111,100,117,108,101,32,110,97,109,101,100,32,105,110,32,116, + 104,101,32,114,101,103,105,115,116,114,121,46,78,40,8,0, + 0,0,117,16,0,0,0,95,115,101,97,114,99,104,95,114, + 101,103,105,115,116,114,121,117,4,0,0,0,78,111,110,101, + 117,3,0,0,0,95,111,115,117,4,0,0,0,115,116,97, + 116,117,7,0,0,0,79,83,69,114,114,111,114,117,27,0, + 0,0,95,103,101,116,95,115,117,112,112,111,114,116,101,100, + 95,102,105,108,101,95,108,111,97,100,101,114,115,117,8,0, + 0,0,101,110,100,115,119,105,116,104,117,5,0,0,0,116, + 117,112,108,101,40,7,0,0,0,117,3,0,0,0,99,108, + 115,117,8,0,0,0,102,117,108,108,110,97,109,101,117,4, + 0,0,0,112,97,116,104,117,8,0,0,0,102,105,108,101, + 112,97,116,104,117,6,0,0,0,108,111,97,100,101,114,117, + 8,0,0,0,115,117,102,102,105,120,101,115,117,1,0,0, + 0,95,40,0,0,0,0,40,0,0,0,0,117,29,0,0, + 0,60,102,114,111,122,101,110,32,105,109,112,111,114,116,108, + 105,98,46,95,98,111,111,116,115,116,114,97,112,62,117,11, + 0,0,0,102,105,110,100,95,109,111,100,117,108,101,8,3, + 0,0,115,20,0,0,0,0,3,15,1,12,1,4,1,3, + 1,17,1,13,1,9,1,25,1,21,1,117,33,0,0,0, + 87,105,110,100,111,119,115,82,101,103,105,115,116,114,121,70, + 105,110,100,101,114,46,102,105,110,100,95,109,111,100,117,108, + 101,78,70,40,13,0,0,0,117,8,0,0,0,95,95,110, + 97,109,101,95,95,117,10,0,0,0,95,95,109,111,100,117, + 108,101,95,95,117,12,0,0,0,95,95,113,117,97,108,110, + 97,109,101,95,95,117,7,0,0,0,95,95,100,111,99,95, + 95,117,12,0,0,0,82,69,71,73,83,84,82,89,95,75, + 69,89,117,18,0,0,0,82,69,71,73,83,84,82,89,95, + 75,69,89,95,68,69,66,85,71,117,5,0,0,0,70,97, + 108,115,101,117,11,0,0,0,68,69,66,85,71,95,66,85, + 73,76,68,117,11,0,0,0,99,108,97,115,115,109,101,116, + 104,111,100,117,14,0,0,0,95,111,112,101,110,95,114,101, + 103,105,115,116,114,121,117,16,0,0,0,95,115,101,97,114, + 99,104,95,114,101,103,105,115,116,114,121,117,4,0,0,0, + 78,111,110,101,117,11,0,0,0,102,105,110,100,95,109,111, + 100,117,108,101,40,1,0,0,0,117,10,0,0,0,95,95, + 108,111,99,97,108,115,95,95,40,0,0,0,0,40,0,0, 0,0,117,29,0,0,0,60,102,114,111,122,101,110,32,105, 109,112,111,114,116,108,105,98,46,95,98,111,111,116,115,116, - 114,97,112,62,117,11,0,0,0,102,105,110,100,95,109,111, - 100,117,108,101,19,5,0,0,115,16,0,0,0,0,4,12, - 1,12,1,24,1,12,1,4,2,6,3,19,2,117,22,0, - 0,0,80,97,116,104,70,105,110,100,101,114,46,102,105,110, - 100,95,109,111,100,117,108,101,78,40,11,0,0,0,117,8, - 0,0,0,95,95,110,97,109,101,95,95,117,10,0,0,0, - 95,95,109,111,100,117,108,101,95,95,117,12,0,0,0,95, - 95,113,117,97,108,110,97,109,101,95,95,117,7,0,0,0, - 95,95,100,111,99,95,95,117,11,0,0,0,99,108,97,115, - 115,109,101,116,104,111,100,117,17,0,0,0,105,110,118,97, - 108,105,100,97,116,101,95,99,97,99,104,101,115,117,11,0, - 0,0,95,112,97,116,104,95,104,111,111,107,115,117,20,0, - 0,0,95,112,97,116,104,95,105,109,112,111,114,116,101,114, - 95,99,97,99,104,101,117,11,0,0,0,95,103,101,116,95, - 108,111,97,100,101,114,117,4,0,0,0,78,111,110,101,117, - 11,0,0,0,102,105,110,100,95,109,111,100,117,108,101,40, + 114,97,112,62,117,21,0,0,0,87,105,110,100,111,119,115, + 82,101,103,105,115,116,114,121,70,105,110,100,101,114,229,2, + 0,0,115,16,0,0,0,16,3,6,3,6,3,6,2,6, + 2,18,7,18,15,3,1,117,21,0,0,0,87,105,110,100, + 111,119,115,82,101,103,105,115,116,114,121,70,105,110,100,101, + 114,99,1,0,0,0,0,0,0,0,1,0,0,0,5,0, + 0,0,66,0,0,0,115,74,0,0,0,124,0,0,69,101, + 0,0,90,1,0,100,0,0,90,2,0,100,1,0,90,3, + 0,100,2,0,100,3,0,132,0,0,90,4,0,100,4,0, + 100,5,0,132,0,0,90,5,0,101,6,0,100,6,0,100, + 10,0,100,7,0,100,8,0,132,0,1,131,1,0,90,8, + 0,100,9,0,83,40,11,0,0,0,117,13,0,0,0,95, + 76,111,97,100,101,114,66,97,115,105,99,115,117,83,0,0, + 0,66,97,115,101,32,99,108,97,115,115,32,111,102,32,99, + 111,109,109,111,110,32,99,111,100,101,32,110,101,101,100,101, + 100,32,98,121,32,98,111,116,104,32,83,111,117,114,99,101, + 76,111,97,100,101,114,32,97,110,100,10,32,32,32,32,83, + 111,117,114,99,101,108,101,115,115,70,105,108,101,76,111,97, + 100,101,114,46,99,2,0,0,0,0,0,0,0,5,0,0, + 0,3,0,0,0,67,0,0,0,115,88,0,0,0,116,0, + 0,124,0,0,106,1,0,124,1,0,131,1,0,131,1,0, + 100,1,0,25,125,2,0,124,2,0,106,2,0,100,2,0, + 100,1,0,131,2,0,100,3,0,25,125,3,0,124,1,0, + 106,3,0,100,2,0,131,1,0,100,4,0,25,125,4,0, + 124,3,0,100,5,0,107,2,0,111,87,0,124,4,0,100, + 5,0,107,3,0,83,40,6,0,0,0,117,141,0,0,0, + 67,111,110,99,114,101,116,101,32,105,109,112,108,101,109,101, + 110,116,97,116,105,111,110,32,111,102,32,73,110,115,112,101, + 99,116,76,111,97,100,101,114,46,105,115,95,112,97,99,107, + 97,103,101,32,98,121,32,99,104,101,99,107,105,110,103,32, + 105,102,10,32,32,32,32,32,32,32,32,116,104,101,32,112, + 97,116,104,32,114,101,116,117,114,110,101,100,32,98,121,32, + 103,101,116,95,102,105,108,101,110,97,109,101,32,104,97,115, + 32,97,32,102,105,108,101,110,97,109,101,32,111,102,32,39, + 95,95,105,110,105,116,95,95,46,112,121,39,46,105,1,0, + 0,0,117,1,0,0,0,46,105,0,0,0,0,105,2,0, + 0,0,117,8,0,0,0,95,95,105,110,105,116,95,95,40, + 4,0,0,0,117,11,0,0,0,95,112,97,116,104,95,115, + 112,108,105,116,117,12,0,0,0,103,101,116,95,102,105,108, + 101,110,97,109,101,117,6,0,0,0,114,115,112,108,105,116, + 117,10,0,0,0,114,112,97,114,116,105,116,105,111,110,40, + 5,0,0,0,117,4,0,0,0,115,101,108,102,117,8,0, + 0,0,102,117,108,108,110,97,109,101,117,8,0,0,0,102, + 105,108,101,110,97,109,101,117,13,0,0,0,102,105,108,101, + 110,97,109,101,95,98,97,115,101,117,9,0,0,0,116,97, + 105,108,95,110,97,109,101,40,0,0,0,0,40,0,0,0, + 0,117,29,0,0,0,60,102,114,111,122,101,110,32,105,109, + 112,111,114,116,108,105,98,46,95,98,111,111,116,115,116,114, + 97,112,62,117,10,0,0,0,105,115,95,112,97,99,107,97, + 103,101,28,3,0,0,115,8,0,0,0,0,3,25,1,22, + 1,19,1,117,24,0,0,0,95,76,111,97,100,101,114,66, + 97,115,105,99,115,46,105,115,95,112,97,99,107,97,103,101, + 99,5,0,0,0,0,0,0,0,12,0,0,0,22,0,0, + 0,67,0,0,0,115,198,1,0,0,124,2,0,100,1,0, + 100,2,0,133,2,0,25,125,5,0,124,2,0,100,2,0, + 100,3,0,133,2,0,25,125,6,0,124,2,0,100,3,0, + 100,4,0,133,2,0,25,125,7,0,124,5,0,116,0,0, + 107,3,0,114,105,0,100,5,0,106,1,0,124,1,0,124, + 5,0,131,2,0,125,8,0,116,2,0,124,8,0,100,6, + 0,124,1,0,100,7,0,124,3,0,131,1,2,130,1,0, + 110,116,0,116,3,0,124,6,0,131,1,0,100,2,0,107, + 3,0,114,163,0,100,8,0,106,1,0,124,1,0,131,1, + 0,125,9,0,116,4,0,124,9,0,131,1,0,1,116,5, + 0,124,9,0,131,1,0,130,1,0,110,58,0,116,3,0, + 124,7,0,131,1,0,100,2,0,107,3,0,114,221,0,100, + 9,0,106,1,0,124,1,0,131,1,0,125,9,0,116,4, + 0,124,9,0,131,1,0,1,116,5,0,124,9,0,131,1, + 0,130,1,0,110,0,0,124,4,0,100,1,0,107,9,0, + 114,184,1,121,20,0,116,7,0,124,4,0,100,10,0,25, + 131,1,0,125,10,0,87,110,18,0,4,116,8,0,107,10, + 0,114,17,1,1,1,1,89,110,71,0,88,116,9,0,124, + 6,0,131,1,0,124,10,0,107,3,0,114,88,1,100,11, + 0,106,1,0,124,1,0,131,1,0,125,9,0,116,4,0, + 124,9,0,131,1,0,1,116,2,0,124,9,0,100,6,0, + 124,1,0,100,7,0,124,3,0,131,1,2,130,1,0,110, + 0,0,121,18,0,124,4,0,100,12,0,25,100,13,0,64, + 125,11,0,87,110,18,0,4,116,8,0,107,10,0,114,126, + 1,1,1,1,89,113,184,1,88,116,9,0,124,7,0,131, + 1,0,124,11,0,107,3,0,114,184,1,116,2,0,100,11, + 0,106,1,0,124,1,0,131,1,0,100,6,0,124,1,0, + 100,7,0,124,3,0,131,1,2,130,1,0,113,184,1,110, + 0,0,124,2,0,100,4,0,100,1,0,133,2,0,25,83, + 40,14,0,0,0,117,193,0,0,0,82,101,116,117,114,110, + 32,116,104,101,32,109,97,114,115,104,97,108,108,101,100,32, + 98,121,116,101,115,32,102,114,111,109,32,98,121,116,101,99, + 111,100,101,44,32,118,101,114,105,102,121,105,110,103,32,116, + 104,101,32,109,97,103,105,99,10,32,32,32,32,32,32,32, + 32,110,117,109,98,101,114,44,32,116,105,109,101,115,116,97, + 109,112,32,97,110,100,32,115,111,117,114,99,101,32,115,105, + 122,101,32,97,108,111,110,103,32,116,104,101,32,119,97,121, + 46,10,10,32,32,32,32,32,32,32,32,73,102,32,115,111, + 117,114,99,101,95,115,116,97,116,115,32,105,115,32,78,111, + 110,101,32,116,104,101,110,32,115,107,105,112,32,116,104,101, + 32,116,105,109,101,115,116,97,109,112,32,99,104,101,99,107, + 46,10,10,32,32,32,32,32,32,32,32,78,105,4,0,0, + 0,105,8,0,0,0,105,12,0,0,0,117,30,0,0,0, + 98,97,100,32,109,97,103,105,99,32,110,117,109,98,101,114, + 32,105,110,32,123,33,114,125,58,32,123,33,114,125,117,4, + 0,0,0,110,97,109,101,117,4,0,0,0,112,97,116,104, + 117,19,0,0,0,98,97,100,32,116,105,109,101,115,116,97, + 109,112,32,105,110,32,123,125,117,14,0,0,0,98,97,100, + 32,115,105,122,101,32,105,110,32,123,125,117,5,0,0,0, + 109,116,105,109,101,117,24,0,0,0,98,121,116,101,99,111, + 100,101,32,105,115,32,115,116,97,108,101,32,102,111,114,32, + 123,125,117,4,0,0,0,115,105,122,101,108,3,0,0,0, + 255,127,255,127,3,0,40,10,0,0,0,117,12,0,0,0, + 95,77,65,71,73,67,95,66,89,84,69,83,117,6,0,0, + 0,102,111,114,109,97,116,117,11,0,0,0,73,109,112,111, + 114,116,69,114,114,111,114,117,3,0,0,0,108,101,110,117, + 16,0,0,0,95,118,101,114,98,111,115,101,95,109,101,115, + 115,97,103,101,117,8,0,0,0,69,79,70,69,114,114,111, + 114,117,4,0,0,0,78,111,110,101,117,3,0,0,0,105, + 110,116,117,8,0,0,0,75,101,121,69,114,114,111,114,117, + 7,0,0,0,95,114,95,108,111,110,103,40,12,0,0,0, + 117,4,0,0,0,115,101,108,102,117,8,0,0,0,102,117, + 108,108,110,97,109,101,117,4,0,0,0,100,97,116,97,117, + 13,0,0,0,98,121,116,101,99,111,100,101,95,112,97,116, + 104,117,12,0,0,0,115,111,117,114,99,101,95,115,116,97, + 116,115,117,5,0,0,0,109,97,103,105,99,117,13,0,0, + 0,114,97,119,95,116,105,109,101,115,116,97,109,112,117,8, + 0,0,0,114,97,119,95,115,105,122,101,117,3,0,0,0, + 109,115,103,117,7,0,0,0,109,101,115,115,97,103,101,117, + 12,0,0,0,115,111,117,114,99,101,95,109,116,105,109,101, + 117,11,0,0,0,115,111,117,114,99,101,95,115,105,122,101, + 40,0,0,0,0,40,0,0,0,0,117,29,0,0,0,60, + 102,114,111,122,101,110,32,105,109,112,111,114,116,108,105,98, + 46,95,98,111,111,116,115,116,114,97,112,62,117,20,0,0, + 0,95,98,121,116,101,115,95,102,114,111,109,95,98,121,116, + 101,99,111,100,101,36,3,0,0,115,66,0,0,0,0,7, + 16,1,16,1,16,1,12,1,18,1,27,1,18,1,15,1, + 10,1,15,1,18,1,15,1,10,1,15,1,12,1,3,1, + 20,1,13,1,5,2,18,1,15,1,10,1,15,1,12,1, + 3,1,18,1,13,1,5,2,18,1,3,1,15,1,21,3, + 117,34,0,0,0,95,76,111,97,100,101,114,66,97,115,105, + 99,115,46,95,98,121,116,101,115,95,102,114,111,109,95,98, + 121,116,101,99,111,100,101,117,10,0,0,0,115,111,117,114, + 99,101,108,101,115,115,99,2,0,0,0,1,0,0,0,5, + 0,0,0,12,0,0,0,67,0,0,0,115,227,0,0,0, + 124,1,0,106,0,0,125,3,0,124,0,0,106,1,0,124, + 3,0,131,1,0,125,4,0,124,0,0,106,2,0,124,3, + 0,131,1,0,124,1,0,95,3,0,124,2,0,115,106,0, + 121,22,0,116,4,0,124,1,0,106,3,0,131,1,0,124, + 1,0,95,5,0,87,113,118,0,4,116,6,0,107,10,0, + 114,102,0,1,1,1,124,1,0,106,3,0,124,1,0,95, + 5,0,89,113,118,0,88,110,12,0,124,1,0,106,3,0, + 124,1,0,95,5,0,124,3,0,124,1,0,95,7,0,124, + 0,0,106,8,0,124,3,0,131,1,0,114,170,0,116,9, + 0,124,1,0,106,3,0,131,1,0,100,1,0,25,103,1, + 0,124,1,0,95,10,0,110,25,0,124,1,0,106,7,0, + 106,11,0,100,2,0,131,1,0,100,1,0,25,124,1,0, + 95,7,0,124,0,0,124,1,0,95,12,0,116,13,0,116, + 14,0,124,4,0,124,1,0,106,15,0,131,3,0,1,124, + 1,0,83,40,3,0,0,0,117,82,0,0,0,72,101,108, + 112,101,114,32,102,111,114,32,108,111,97,100,95,109,111,100, + 117,108,101,32,97,98,108,101,32,116,111,32,104,97,110,100, + 108,101,32,101,105,116,104,101,114,32,115,111,117,114,99,101, + 32,111,114,32,115,111,117,114,99,101,108,101,115,115,10,32, + 32,32,32,32,32,32,32,108,111,97,100,105,110,103,46,105, + 0,0,0,0,117,1,0,0,0,46,40,16,0,0,0,117, + 8,0,0,0,95,95,110,97,109,101,95,95,117,8,0,0, + 0,103,101,116,95,99,111,100,101,117,12,0,0,0,103,101, + 116,95,102,105,108,101,110,97,109,101,117,8,0,0,0,95, + 95,102,105,108,101,95,95,117,17,0,0,0,99,97,99,104, + 101,95,102,114,111,109,95,115,111,117,114,99,101,117,10,0, + 0,0,95,95,99,97,99,104,101,100,95,95,117,19,0,0, + 0,78,111,116,73,109,112,108,101,109,101,110,116,101,100,69, + 114,114,111,114,117,11,0,0,0,95,95,112,97,99,107,97, + 103,101,95,95,117,10,0,0,0,105,115,95,112,97,99,107, + 97,103,101,117,11,0,0,0,95,112,97,116,104,95,115,112, + 108,105,116,117,8,0,0,0,95,95,112,97,116,104,95,95, + 117,10,0,0,0,114,112,97,114,116,105,116,105,111,110,117, + 10,0,0,0,95,95,108,111,97,100,101,114,95,95,117,25, + 0,0,0,95,99,97,108,108,95,119,105,116,104,95,102,114, + 97,109,101,115,95,114,101,109,111,118,101,100,117,4,0,0, + 0,101,120,101,99,117,8,0,0,0,95,95,100,105,99,116, + 95,95,40,5,0,0,0,117,4,0,0,0,115,101,108,102, + 117,6,0,0,0,109,111,100,117,108,101,117,10,0,0,0, + 115,111,117,114,99,101,108,101,115,115,117,4,0,0,0,110, + 97,109,101,117,11,0,0,0,99,111,100,101,95,111,98,106, + 101,99,116,40,0,0,0,0,40,0,0,0,0,117,29,0, + 0,0,60,102,114,111,122,101,110,32,105,109,112,111,114,116, + 108,105,98,46,95,98,111,111,116,115,116,114,97,112,62,117, + 12,0,0,0,95,108,111,97,100,95,109,111,100,117,108,101, + 81,3,0,0,115,32,0,0,0,0,4,9,1,15,1,18, + 1,6,1,3,1,22,1,13,1,20,2,12,1,9,1,15, + 1,28,2,25,1,9,1,19,1,117,26,0,0,0,95,76, + 111,97,100,101,114,66,97,115,105,99,115,46,95,108,111,97, + 100,95,109,111,100,117,108,101,78,70,40,9,0,0,0,117, + 8,0,0,0,95,95,110,97,109,101,95,95,117,10,0,0, + 0,95,95,109,111,100,117,108,101,95,95,117,12,0,0,0, + 95,95,113,117,97,108,110,97,109,101,95,95,117,7,0,0, + 0,95,95,100,111,99,95,95,117,10,0,0,0,105,115,95, + 112,97,99,107,97,103,101,117,20,0,0,0,95,98,121,116, + 101,115,95,102,114,111,109,95,98,121,116,101,99,111,100,101, + 117,17,0,0,0,109,111,100,117,108,101,95,102,111,114,95, + 108,111,97,100,101,114,117,5,0,0,0,70,97,108,115,101, + 117,12,0,0,0,95,108,111,97,100,95,109,111,100,117,108, + 101,40,1,0,0,0,117,10,0,0,0,95,95,108,111,99, + 97,108,115,95,95,40,0,0,0,0,40,0,0,0,0,117, + 29,0,0,0,60,102,114,111,122,101,110,32,105,109,112,111, + 114,116,108,105,98,46,95,98,111,111,116,115,116,114,97,112, + 62,117,13,0,0,0,95,76,111,97,100,101,114,66,97,115, + 105,99,115,23,3,0,0,115,10,0,0,0,16,3,6,2, + 12,8,12,45,6,1,117,13,0,0,0,95,76,111,97,100, + 101,114,66,97,115,105,99,115,99,1,0,0,0,0,0,0, + 0,1,0,0,0,2,0,0,0,66,0,0,0,115,104,0, + 0,0,124,0,0,69,101,0,0,90,1,0,100,0,0,90, + 2,0,100,1,0,100,2,0,132,0,0,90,3,0,100,3, + 0,100,4,0,132,0,0,90,4,0,100,5,0,100,6,0, + 132,0,0,90,5,0,100,7,0,100,8,0,132,0,0,90, + 6,0,100,9,0,100,10,0,132,0,0,90,7,0,100,11, + 0,100,12,0,132,0,0,90,8,0,100,13,0,100,14,0, + 132,0,0,90,9,0,100,15,0,83,40,16,0,0,0,117, + 12,0,0,0,83,111,117,114,99,101,76,111,97,100,101,114, + 99,2,0,0,0,0,0,0,0,2,0,0,0,1,0,0, + 0,67,0,0,0,115,10,0,0,0,116,0,0,130,1,0, + 100,1,0,83,40,2,0,0,0,117,121,0,0,0,79,112, + 116,105,111,110,97,108,32,109,101,116,104,111,100,32,116,104, + 97,116,32,114,101,116,117,114,110,115,32,116,104,101,32,109, + 111,100,105,102,105,99,97,116,105,111,110,32,116,105,109,101, + 32,40,97,110,32,105,110,116,41,32,102,111,114,32,116,104, + 101,10,32,32,32,32,32,32,32,32,115,112,101,99,105,102, + 105,101,100,32,112,97,116,104,44,32,119,104,101,114,101,32, + 112,97,116,104,32,105,115,32,97,32,115,116,114,46,10,32, + 32,32,32,32,32,32,32,78,40,1,0,0,0,117,19,0, + 0,0,78,111,116,73,109,112,108,101,109,101,110,116,101,100, + 69,114,114,111,114,40,2,0,0,0,117,4,0,0,0,115, + 101,108,102,117,4,0,0,0,112,97,116,104,40,0,0,0, + 0,40,0,0,0,0,117,29,0,0,0,60,102,114,111,122, + 101,110,32,105,109,112,111,114,116,108,105,98,46,95,98,111, + 111,116,115,116,114,97,112,62,117,10,0,0,0,112,97,116, + 104,95,109,116,105,109,101,107,3,0,0,115,2,0,0,0, + 0,4,117,23,0,0,0,83,111,117,114,99,101,76,111,97, + 100,101,114,46,112,97,116,104,95,109,116,105,109,101,99,2, + 0,0,0,0,0,0,0,2,0,0,0,3,0,0,0,67, + 0,0,0,115,20,0,0,0,105,1,0,124,0,0,106,0, + 0,124,1,0,131,1,0,100,1,0,54,83,40,2,0,0, + 0,117,114,1,0,0,79,112,116,105,111,110,97,108,32,109, + 101,116,104,111,100,32,114,101,116,117,114,110,105,110,103,32, + 97,32,109,101,116,97,100,97,116,97,32,100,105,99,116,32, + 102,111,114,32,116,104,101,32,115,112,101,99,105,102,105,101, + 100,32,112,97,116,104,10,32,32,32,32,32,32,32,32,116, + 111,32,98,121,32,116,104,101,32,112,97,116,104,32,40,115, + 116,114,41,46,10,32,32,32,32,32,32,32,32,80,111,115, + 115,105,98,108,101,32,107,101,121,115,58,10,32,32,32,32, + 32,32,32,32,45,32,39,109,116,105,109,101,39,32,40,109, + 97,110,100,97,116,111,114,121,41,32,105,115,32,116,104,101, + 32,110,117,109,101,114,105,99,32,116,105,109,101,115,116,97, + 109,112,32,111,102,32,108,97,115,116,32,115,111,117,114,99, + 101,10,32,32,32,32,32,32,32,32,32,32,99,111,100,101, + 32,109,111,100,105,102,105,99,97,116,105,111,110,59,10,32, + 32,32,32,32,32,32,32,45,32,39,115,105,122,101,39,32, + 40,111,112,116,105,111,110,97,108,41,32,105,115,32,116,104, + 101,32,115,105,122,101,32,105,110,32,98,121,116,101,115,32, + 111,102,32,116,104,101,32,115,111,117,114,99,101,32,99,111, + 100,101,46,10,10,32,32,32,32,32,32,32,32,73,109,112, + 108,101,109,101,110,116,105,110,103,32,116,104,105,115,32,109, + 101,116,104,111,100,32,97,108,108,111,119,115,32,116,104,101, + 32,108,111,97,100,101,114,32,116,111,32,114,101,97,100,32, + 98,121,116,101,99,111,100,101,32,102,105,108,101,115,46,10, + 32,32,32,32,32,32,32,32,117,5,0,0,0,109,116,105, + 109,101,40,1,0,0,0,117,10,0,0,0,112,97,116,104, + 95,109,116,105,109,101,40,2,0,0,0,117,4,0,0,0, + 115,101,108,102,117,4,0,0,0,112,97,116,104,40,0,0, + 0,0,40,0,0,0,0,117,29,0,0,0,60,102,114,111, + 122,101,110,32,105,109,112,111,114,116,108,105,98,46,95,98, + 111,111,116,115,116,114,97,112,62,117,10,0,0,0,112,97, + 116,104,95,115,116,97,116,115,113,3,0,0,115,2,0,0, + 0,0,10,117,23,0,0,0,83,111,117,114,99,101,76,111, + 97,100,101,114,46,112,97,116,104,95,115,116,97,116,115,99, + 4,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0, + 67,0,0,0,115,16,0,0,0,124,0,0,106,0,0,124, + 2,0,124,3,0,131,2,0,83,40,1,0,0,0,117,228, + 0,0,0,79,112,116,105,111,110,97,108,32,109,101,116,104, + 111,100,32,119,104,105,99,104,32,119,114,105,116,101,115,32, + 100,97,116,97,32,40,98,121,116,101,115,41,32,116,111,32, + 97,32,102,105,108,101,32,112,97,116,104,32,40,97,32,115, + 116,114,41,46,10,10,32,32,32,32,32,32,32,32,73,109, + 112,108,101,109,101,110,116,105,110,103,32,116,104,105,115,32, + 109,101,116,104,111,100,32,97,108,108,111,119,115,32,102,111, + 114,32,116,104,101,32,119,114,105,116,105,110,103,32,111,102, + 32,98,121,116,101,99,111,100,101,32,102,105,108,101,115,46, + 10,10,32,32,32,32,32,32,32,32,84,104,101,32,115,111, + 117,114,99,101,32,112,97,116,104,32,105,115,32,110,101,101, + 100,101,100,32,105,110,32,111,114,100,101,114,32,116,111,32, + 99,111,114,114,101,99,116,108,121,32,116,114,97,110,115,102, + 101,114,32,112,101,114,109,105,115,115,105,111,110,115,10,32, + 32,32,32,32,32,32,32,40,1,0,0,0,117,8,0,0, + 0,115,101,116,95,100,97,116,97,40,4,0,0,0,117,4, + 0,0,0,115,101,108,102,117,11,0,0,0,115,111,117,114, + 99,101,95,112,97,116,104,117,10,0,0,0,99,97,99,104, + 101,95,112,97,116,104,117,4,0,0,0,100,97,116,97,40, + 0,0,0,0,40,0,0,0,0,117,29,0,0,0,60,102, + 114,111,122,101,110,32,105,109,112,111,114,116,108,105,98,46, + 95,98,111,111,116,115,116,114,97,112,62,117,15,0,0,0, + 95,99,97,99,104,101,95,98,121,116,101,99,111,100,101,125, + 3,0,0,115,2,0,0,0,0,8,117,28,0,0,0,83, + 111,117,114,99,101,76,111,97,100,101,114,46,95,99,97,99, + 104,101,95,98,121,116,101,99,111,100,101,99,3,0,0,0, + 0,0,0,0,3,0,0,0,1,0,0,0,67,0,0,0, + 115,10,0,0,0,116,0,0,130,1,0,100,1,0,83,40, + 2,0,0,0,117,151,0,0,0,79,112,116,105,111,110,97, + 108,32,109,101,116,104,111,100,32,119,104,105,99,104,32,119, + 114,105,116,101,115,32,100,97,116,97,32,40,98,121,116,101, + 115,41,32,116,111,32,97,32,102,105,108,101,32,112,97,116, + 104,32,40,97,32,115,116,114,41,46,10,10,32,32,32,32, + 32,32,32,32,73,109,112,108,101,109,101,110,116,105,110,103, + 32,116,104,105,115,32,109,101,116,104,111,100,32,97,108,108, + 111,119,115,32,102,111,114,32,116,104,101,32,119,114,105,116, + 105,110,103,32,111,102,32,98,121,116,101,99,111,100,101,32, + 102,105,108,101,115,46,10,10,32,32,32,32,32,32,32,32, + 78,40,1,0,0,0,117,19,0,0,0,78,111,116,73,109, + 112,108,101,109,101,110,116,101,100,69,114,114,111,114,40,3, + 0,0,0,117,4,0,0,0,115,101,108,102,117,4,0,0, + 0,112,97,116,104,117,4,0,0,0,100,97,116,97,40,0, + 0,0,0,40,0,0,0,0,117,29,0,0,0,60,102,114, + 111,122,101,110,32,105,109,112,111,114,116,108,105,98,46,95, + 98,111,111,116,115,116,114,97,112,62,117,8,0,0,0,115, + 101,116,95,100,97,116,97,135,3,0,0,115,2,0,0,0, + 0,6,117,21,0,0,0,83,111,117,114,99,101,76,111,97, + 100,101,114,46,115,101,116,95,100,97,116,97,99,2,0,0, + 0,0,0,0,0,9,0,0,0,44,0,0,0,67,0,0, + 0,115,62,1,0,0,100,1,0,100,2,0,108,0,0,125, + 2,0,124,0,0,106,1,0,124,1,0,131,1,0,125,3, + 0,121,19,0,124,0,0,106,2,0,124,3,0,131,1,0, + 125,4,0,87,110,58,0,4,116,3,0,107,10,0,114,106, + 0,1,125,5,0,1,122,26,0,116,4,0,100,3,0,100, + 4,0,124,1,0,131,1,1,124,5,0,130,2,0,87,89, + 100,2,0,100,2,0,125,5,0,126,5,0,88,110,1,0, + 88,116,5,0,106,6,0,124,4,0,131,1,0,106,7,0, + 125,6,0,121,19,0,124,2,0,106,8,0,124,6,0,131, + 1,0,125,7,0,87,110,58,0,4,116,9,0,107,10,0, + 114,204,0,1,125,5,0,1,122,26,0,116,4,0,100,5, + 0,100,4,0,124,1,0,131,1,1,124,5,0,130,2,0, + 87,89,100,2,0,100,2,0,125,5,0,126,5,0,88,110, + 1,0,88,116,5,0,106,10,0,100,2,0,100,7,0,131, + 2,0,125,8,0,121,30,0,124,8,0,106,13,0,124,4, + 0,106,13,0,124,7,0,100,1,0,25,131,1,0,131,1, + 0,83,87,110,58,0,4,116,14,0,107,10,0,114,57,1, + 1,125,5,0,1,122,26,0,116,4,0,100,6,0,100,4, + 0,124,1,0,131,1,1,124,5,0,130,2,0,87,89,100, + 2,0,100,2,0,125,5,0,126,5,0,88,110,1,0,88, + 100,2,0,83,40,8,0,0,0,117,52,0,0,0,67,111, + 110,99,114,101,116,101,32,105,109,112,108,101,109,101,110,116, + 97,116,105,111,110,32,111,102,32,73,110,115,112,101,99,116, + 76,111,97,100,101,114,46,103,101,116,95,115,111,117,114,99, + 101,46,105,0,0,0,0,78,117,39,0,0,0,115,111,117, + 114,99,101,32,110,111,116,32,97,118,97,105,108,97,98,108, + 101,32,116,104,114,111,117,103,104,32,103,101,116,95,100,97, + 116,97,40,41,117,4,0,0,0,110,97,109,101,117,25,0, + 0,0,70,97,105,108,101,100,32,116,111,32,100,101,116,101, + 99,116,32,101,110,99,111,100,105,110,103,117,28,0,0,0, + 70,97,105,108,101,100,32,116,111,32,100,101,99,111,100,101, + 32,115,111,117,114,99,101,32,102,105,108,101,84,40,15,0, + 0,0,117,8,0,0,0,116,111,107,101,110,105,122,101,117, + 12,0,0,0,103,101,116,95,102,105,108,101,110,97,109,101, + 117,8,0,0,0,103,101,116,95,100,97,116,97,117,7,0, + 0,0,73,79,69,114,114,111,114,117,11,0,0,0,73,109, + 112,111,114,116,69,114,114,111,114,117,3,0,0,0,95,105, + 111,117,7,0,0,0,66,121,116,101,115,73,79,117,8,0, + 0,0,114,101,97,100,108,105,110,101,117,15,0,0,0,100, + 101,116,101,99,116,95,101,110,99,111,100,105,110,103,117,11, + 0,0,0,83,121,110,116,97,120,69,114,114,111,114,117,25, + 0,0,0,73,110,99,114,101,109,101,110,116,97,108,78,101, + 119,108,105,110,101,68,101,99,111,100,101,114,117,4,0,0, + 0,78,111,110,101,117,4,0,0,0,84,114,117,101,117,6, + 0,0,0,100,101,99,111,100,101,117,18,0,0,0,85,110, + 105,99,111,100,101,68,101,99,111,100,101,69,114,114,111,114, + 40,9,0,0,0,117,4,0,0,0,115,101,108,102,117,8, + 0,0,0,102,117,108,108,110,97,109,101,117,8,0,0,0, + 116,111,107,101,110,105,122,101,117,4,0,0,0,112,97,116, + 104,117,12,0,0,0,115,111,117,114,99,101,95,98,121,116, + 101,115,117,3,0,0,0,101,120,99,117,10,0,0,0,114, + 101,97,100,115,111,117,114,99,101,117,8,0,0,0,101,110, + 99,111,100,105,110,103,117,15,0,0,0,110,101,119,108,105, + 110,101,95,100,101,99,111,100,101,114,40,0,0,0,0,40, + 0,0,0,0,117,29,0,0,0,60,102,114,111,122,101,110, + 32,105,109,112,111,114,116,108,105,98,46,95,98,111,111,116, + 115,116,114,97,112,62,117,10,0,0,0,103,101,116,95,115, + 111,117,114,99,101,144,3,0,0,115,38,0,0,0,0,2, + 12,1,15,1,3,1,19,1,18,1,9,1,31,1,18,1, + 3,1,19,1,18,1,9,1,31,1,18,1,3,1,30,1, + 18,1,9,1,117,23,0,0,0,83,111,117,114,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,12,0,0,0,45,0,0, + 0,67,0,0,0,115,52,2,0,0,124,0,0,106,0,0, + 124,1,0,131,1,0,125,2,0,100,10,0,125,3,0,121, + 16,0,116,2,0,124,2,0,131,1,0,125,4,0,87,110, + 24,0,4,116,3,0,107,10,0,114,63,0,1,1,1,100, + 10,0,125,4,0,89,110,14,1,88,121,19,0,124,0,0, + 106,4,0,124,2,0,131,1,0,125,5,0,87,110,18,0, + 4,116,3,0,107,10,0,114,103,0,1,1,1,89,110,230, + 0,88,116,5,0,124,5,0,100,1,0,25,131,1,0,125, + 3,0,121,19,0,124,0,0,106,6,0,124,4,0,131,1, + 0,125,6,0,87,110,18,0,4,116,7,0,107,10,0,114, + 159,0,1,1,1,89,110,174,0,88,121,28,0,124,0,0, + 106,8,0,124,1,0,124,6,0,124,4,0,124,5,0,131, + 4,0,125,7,0,87,110,24,0,4,116,9,0,116,10,0, + 102,2,0,107,10,0,114,214,0,1,1,1,89,110,119,0, + 88,116,11,0,100,2,0,124,4,0,124,2,0,131,3,0, + 1,116,12,0,106,13,0,124,7,0,131,1,0,125,8,0, + 116,14,0,124,8,0,116,15,0,131,2,0,114,38,1,116, + 16,0,106,17,0,124,8,0,124,2,0,131,2,0,1,116, + 11,0,100,3,0,124,4,0,131,2,0,1,124,8,0,83, + 100,4,0,125,9,0,116,9,0,124,9,0,106,18,0,124, + 4,0,131,1,0,100,5,0,124,1,0,100,6,0,124,4, + 0,131,1,2,130,1,0,124,0,0,106,6,0,124,2,0, + 131,1,0,125,10,0,116,19,0,116,20,0,124,10,0,124, + 2,0,100,7,0,100,8,0,100,11,0,131,4,1,125,11, + 0,116,11,0,100,3,0,124,2,0,131,2,0,1,116,22, + 0,106,23,0,12,114,48,2,124,4,0,100,10,0,107,9, + 0,114,48,2,124,3,0,100,10,0,107,9,0,114,48,2, + 116,24,0,116,25,0,131,1,0,125,6,0,124,6,0,106, + 26,0,116,27,0,124,3,0,131,1,0,131,1,0,1,124, + 6,0,106,26,0,116,27,0,116,28,0,124,10,0,131,1, + 0,131,1,0,131,1,0,1,124,6,0,106,26,0,116,12, + 0,106,29,0,124,11,0,131,1,0,131,1,0,1,121,36, + 0,124,0,0,106,30,0,124,2,0,124,4,0,124,6,0, + 131,3,0,1,116,11,0,100,9,0,124,4,0,131,2,0, + 1,87,113,48,2,4,116,3,0,107,10,0,114,44,2,1, + 1,1,89,113,48,2,88,110,0,0,124,11,0,83,40,12, + 0,0,0,117,190,0,0,0,67,111,110,99,114,101,116,101, + 32,105,109,112,108,101,109,101,110,116,97,116,105,111,110,32, + 111,102,32,73,110,115,112,101,99,116,76,111,97,100,101,114, + 46,103,101,116,95,99,111,100,101,46,10,10,32,32,32,32, + 32,32,32,32,82,101,97,100,105,110,103,32,111,102,32,98, + 121,116,101,99,111,100,101,32,114,101,113,117,105,114,101,115, + 32,112,97,116,104,95,115,116,97,116,115,32,116,111,32,98, + 101,32,105,109,112,108,101,109,101,110,116,101,100,46,32,84, + 111,32,119,114,105,116,101,10,32,32,32,32,32,32,32,32, + 98,121,116,101,99,111,100,101,44,32,115,101,116,95,100,97, + 116,97,32,109,117,115,116,32,97,108,115,111,32,98,101,32, + 105,109,112,108,101,109,101,110,116,101,100,46,10,10,32,32, + 32,32,32,32,32,32,117,5,0,0,0,109,116,105,109,101, + 117,13,0,0,0,123,125,32,109,97,116,99,104,101,115,32, + 123,125,117,19,0,0,0,99,111,100,101,32,111,98,106,101, + 99,116,32,102,114,111,109,32,123,125,117,21,0,0,0,78, + 111,110,45,99,111,100,101,32,111,98,106,101,99,116,32,105, + 110,32,123,125,117,4,0,0,0,110,97,109,101,117,4,0, + 0,0,112,97,116,104,117,4,0,0,0,101,120,101,99,117, + 12,0,0,0,100,111,110,116,95,105,110,104,101,114,105,116, + 117,10,0,0,0,119,114,111,116,101,32,123,33,114,125,78, + 84,40,31,0,0,0,117,12,0,0,0,103,101,116,95,102, + 105,108,101,110,97,109,101,117,4,0,0,0,78,111,110,101, + 117,17,0,0,0,99,97,99,104,101,95,102,114,111,109,95, + 115,111,117,114,99,101,117,19,0,0,0,78,111,116,73,109, + 112,108,101,109,101,110,116,101,100,69,114,114,111,114,117,10, + 0,0,0,112,97,116,104,95,115,116,97,116,115,117,3,0, + 0,0,105,110,116,117,8,0,0,0,103,101,116,95,100,97, + 116,97,117,7,0,0,0,73,79,69,114,114,111,114,117,20, + 0,0,0,95,98,121,116,101,115,95,102,114,111,109,95,98, + 121,116,101,99,111,100,101,117,11,0,0,0,73,109,112,111, + 114,116,69,114,114,111,114,117,8,0,0,0,69,79,70,69, + 114,114,111,114,117,16,0,0,0,95,118,101,114,98,111,115, + 101,95,109,101,115,115,97,103,101,117,7,0,0,0,109,97, + 114,115,104,97,108,117,5,0,0,0,108,111,97,100,115,117, + 10,0,0,0,105,115,105,110,115,116,97,110,99,101,117,10, + 0,0,0,95,99,111,100,101,95,116,121,112,101,117,4,0, + 0,0,95,105,109,112,117,16,0,0,0,95,102,105,120,95, + 99,111,95,102,105,108,101,110,97,109,101,117,6,0,0,0, + 102,111,114,109,97,116,117,25,0,0,0,95,99,97,108,108, + 95,119,105,116,104,95,102,114,97,109,101,115,95,114,101,109, + 111,118,101,100,117,7,0,0,0,99,111,109,112,105,108,101, + 117,4,0,0,0,84,114,117,101,117,3,0,0,0,115,121, + 115,117,19,0,0,0,100,111,110,116,95,119,114,105,116,101, + 95,98,121,116,101,99,111,100,101,117,9,0,0,0,98,121, + 116,101,97,114,114,97,121,117,12,0,0,0,95,77,65,71, + 73,67,95,66,89,84,69,83,117,6,0,0,0,101,120,116, + 101,110,100,117,7,0,0,0,95,119,95,108,111,110,103,117, + 3,0,0,0,108,101,110,117,5,0,0,0,100,117,109,112, + 115,117,15,0,0,0,95,99,97,99,104,101,95,98,121,116, + 101,99,111,100,101,40,12,0,0,0,117,4,0,0,0,115, + 101,108,102,117,8,0,0,0,102,117,108,108,110,97,109,101, + 117,11,0,0,0,115,111,117,114,99,101,95,112,97,116,104, + 117,12,0,0,0,115,111,117,114,99,101,95,109,116,105,109, + 101,117,13,0,0,0,98,121,116,101,99,111,100,101,95,112, + 97,116,104,117,2,0,0,0,115,116,117,4,0,0,0,100, + 97,116,97,117,10,0,0,0,98,121,116,101,115,95,100,97, + 116,97,117,5,0,0,0,102,111,117,110,100,117,3,0,0, + 0,109,115,103,117,12,0,0,0,115,111,117,114,99,101,95, + 98,121,116,101,115,117,11,0,0,0,99,111,100,101,95,111, + 98,106,101,99,116,40,0,0,0,0,40,0,0,0,0,117, + 29,0,0,0,60,102,114,111,122,101,110,32,105,109,112,111, + 114,116,108,105,98,46,95,98,111,111,116,115,116,114,97,112, + 62,117,8,0,0,0,103,101,116,95,99,111,100,101,166,3, + 0,0,115,98,0,0,0,0,7,15,1,6,1,3,1,16, + 1,13,1,11,2,3,1,19,1,13,1,5,2,16,1,3, + 1,19,1,13,1,5,2,3,1,12,1,3,1,13,1,19, + 1,5,2,9,1,7,1,15,1,15,1,16,1,6,1,7, + 1,4,2,6,1,18,1,15,1,15,1,6,1,12,1,9, + 1,13,1,22,1,12,1,12,1,19,1,25,1,22,1,3, + 1,19,1,17,1,13,1,8,1,117,21,0,0,0,83,111, + 117,114,99,101,76,111,97,100,101,114,46,103,101,116,95,99, + 111,100,101,99,2,0,0,0,0,0,0,0,2,0,0,0, + 2,0,0,0,67,0,0,0,115,13,0,0,0,124,0,0, + 106,0,0,124,1,0,131,1,0,83,40,1,0,0,0,117, + 0,1,0,0,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,76, + 111,97,100,101,114,46,108,111,97,100,95,109,111,100,117,108, + 101,46,10,10,32,32,32,32,32,32,32,32,82,101,113,117, + 105,114,101,115,32,69,120,101,99,117,116,105,111,110,76,111, + 97,100,101,114,46,103,101,116,95,102,105,108,101,110,97,109, + 101,32,97,110,100,32,82,101,115,111,117,114,99,101,76,111, + 97,100,101,114,46,103,101,116,95,100,97,116,97,32,116,111, + 32,98,101,10,32,32,32,32,32,32,32,32,105,109,112,108, + 101,109,101,110,116,101,100,32,116,111,32,108,111,97,100,32, + 115,111,117,114,99,101,32,99,111,100,101,46,32,85,115,101, + 32,111,102,32,98,121,116,101,99,111,100,101,32,105,115,32, + 100,105,99,116,97,116,101,100,32,98,121,32,119,104,101,116, + 104,101,114,10,32,32,32,32,32,32,32,32,103,101,116,95, + 99,111,100,101,32,117,115,101,115,47,119,114,105,116,101,115, + 32,98,121,116,101,99,111,100,101,46,10,10,32,32,32,32, + 32,32,32,32,40,1,0,0,0,117,12,0,0,0,95,108, + 111,97,100,95,109,111,100,117,108,101,40,2,0,0,0,117, + 4,0,0,0,115,101,108,102,117,8,0,0,0,102,117,108, + 108,110,97,109,101,40,0,0,0,0,40,0,0,0,0,117, + 29,0,0,0,60,102,114,111,122,101,110,32,105,109,112,111, + 114,116,108,105,98,46,95,98,111,111,116,115,116,114,97,112, + 62,117,11,0,0,0,108,111,97,100,95,109,111,100,117,108, + 101,228,3,0,0,115,2,0,0,0,0,8,117,24,0,0, + 0,83,111,117,114,99,101,76,111,97,100,101,114,46,108,111, + 97,100,95,109,111,100,117,108,101,78,40,10,0,0,0,117, + 8,0,0,0,95,95,110,97,109,101,95,95,117,10,0,0, + 0,95,95,109,111,100,117,108,101,95,95,117,12,0,0,0, + 95,95,113,117,97,108,110,97,109,101,95,95,117,10,0,0, + 0,112,97,116,104,95,109,116,105,109,101,117,10,0,0,0, + 112,97,116,104,95,115,116,97,116,115,117,15,0,0,0,95, + 99,97,99,104,101,95,98,121,116,101,99,111,100,101,117,8, + 0,0,0,115,101,116,95,100,97,116,97,117,10,0,0,0, + 103,101,116,95,115,111,117,114,99,101,117,8,0,0,0,103, + 101,116,95,99,111,100,101,117,11,0,0,0,108,111,97,100, + 95,109,111,100,117,108,101,40,1,0,0,0,117,10,0,0, + 0,95,95,108,111,99,97,108,115,95,95,40,0,0,0,0, + 40,0,0,0,0,117,29,0,0,0,60,102,114,111,122,101, + 110,32,105,109,112,111,114,116,108,105,98,46,95,98,111,111, + 116,115,116,114,97,112,62,117,12,0,0,0,83,111,117,114, + 99,101,76,111,97,100,101,114,105,3,0,0,115,14,0,0, + 0,16,2,12,6,12,12,12,10,12,9,12,22,12,62,117, + 12,0,0,0,83,111,117,114,99,101,76,111,97,100,101,114, + 99,1,0,0,0,0,0,0,0,1,0,0,0,4,0,0, + 0,2,0,0,0,115,92,0,0,0,124,0,0,69,101,0, + 0,90,1,0,100,0,0,90,2,0,100,1,0,90,3,0, + 100,2,0,100,3,0,132,0,0,90,4,0,101,5,0,135, + 0,0,102,1,0,100,4,0,100,5,0,134,0,0,131,1, + 0,90,6,0,101,5,0,100,6,0,100,7,0,132,0,0, + 131,1,0,90,7,0,100,8,0,100,9,0,132,0,0,90, + 8,0,135,0,0,83,40,10,0,0,0,117,10,0,0,0, + 70,105,108,101,76,111,97,100,101,114,117,103,0,0,0,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,3, + 0,0,0,2,0,0,0,67,0,0,0,115,22,0,0,0, + 124,1,0,124,0,0,95,0,0,124,2,0,124,0,0,95, + 1,0,100,1,0,83,40,2,0,0,0,117,75,0,0,0, + 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,40,2,0,0, + 0,117,4,0,0,0,110,97,109,101,117,4,0,0,0,112, + 97,116,104,40,3,0,0,0,117,4,0,0,0,115,101,108, + 102,117,8,0,0,0,102,117,108,108,110,97,109,101,117,4, + 0,0,0,112,97,116,104,40,0,0,0,0,40,0,0,0, + 0,117,29,0,0,0,60,102,114,111,122,101,110,32,105,109, + 112,111,114,116,108,105,98,46,95,98,111,111,116,115,116,114, + 97,112,62,117,8,0,0,0,95,95,105,110,105,116,95,95, + 244,3,0,0,115,4,0,0,0,0,3,9,1,117,19,0, + 0,0,70,105,108,101,76,111,97,100,101,114,46,95,95,105, + 110,105,116,95,95,99,2,0,0,0,0,0,0,0,2,0, + 0,0,3,0,0,0,3,0,0,0,115,22,0,0,0,116, + 0,0,116,1,0,124,0,0,131,2,0,106,2,0,124,1, + 0,131,1,0,83,40,1,0,0,0,117,26,0,0,0,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,40,3,0,0,0,117,5, + 0,0,0,115,117,112,101,114,117,10,0,0,0,70,105,108, + 101,76,111,97,100,101,114,117,11,0,0,0,108,111,97,100, + 95,109,111,100,117,108,101,40,2,0,0,0,117,4,0,0, + 0,115,101,108,102,117,8,0,0,0,102,117,108,108,110,97, + 109,101,40,1,0,0,0,117,9,0,0,0,95,95,99,108, + 97,115,115,95,95,40,0,0,0,0,117,29,0,0,0,60, + 102,114,111,122,101,110,32,105,109,112,111,114,116,108,105,98, + 46,95,98,111,111,116,115,116,114,97,112,62,117,11,0,0, + 0,108,111,97,100,95,109,111,100,117,108,101,250,3,0,0, + 115,2,0,0,0,0,5,117,22,0,0,0,70,105,108,101, + 76,111,97,100,101,114,46,108,111,97,100,95,109,111,100,117, + 108,101,99,2,0,0,0,0,0,0,0,2,0,0,0,1, + 0,0,0,67,0,0,0,115,7,0,0,0,124,0,0,106, + 0,0,83,40,1,0,0,0,117,58,0,0,0,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,40,1,0,0,0,117,4,0,0, + 0,112,97,116,104,40,2,0,0,0,117,4,0,0,0,115, + 101,108,102,117,8,0,0,0,102,117,108,108,110,97,109,101, + 40,0,0,0,0,40,0,0,0,0,117,29,0,0,0,60, + 102,114,111,122,101,110,32,105,109,112,111,114,116,108,105,98, + 46,95,98,111,111,116,115,116,114,97,112,62,117,12,0,0, + 0,103,101,116,95,102,105,108,101,110,97,109,101,1,4,0, + 0,115,2,0,0,0,0,3,117,23,0,0,0,70,105,108, + 101,76,111,97,100,101,114,46,103,101,116,95,102,105,108,101, + 110,97,109,101,99,2,0,0,0,0,0,0,0,3,0,0, + 0,8,0,0,0,67,0,0,0,115,41,0,0,0,116,0, + 0,106,1,0,124,1,0,100,1,0,131,2,0,143,17,0, + 125,2,0,124,2,0,106,2,0,131,0,0,83,87,100,2, + 0,81,88,100,2,0,83,40,3,0,0,0,117,39,0,0, + 0,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,117,1,0,0,0,114,78,40, + 3,0,0,0,117,3,0,0,0,95,105,111,117,6,0,0, + 0,70,105,108,101,73,79,117,4,0,0,0,114,101,97,100, + 40,3,0,0,0,117,4,0,0,0,115,101,108,102,117,4, + 0,0,0,112,97,116,104,117,4,0,0,0,102,105,108,101, + 40,0,0,0,0,40,0,0,0,0,117,29,0,0,0,60, + 102,114,111,122,101,110,32,105,109,112,111,114,116,108,105,98, + 46,95,98,111,111,116,115,116,114,97,112,62,117,8,0,0, + 0,103,101,116,95,100,97,116,97,6,4,0,0,115,4,0, + 0,0,0,2,21,1,117,19,0,0,0,70,105,108,101,76, + 111,97,100,101,114,46,103,101,116,95,100,97,116,97,40,9, + 0,0,0,117,8,0,0,0,95,95,110,97,109,101,95,95, + 117,10,0,0,0,95,95,109,111,100,117,108,101,95,95,117, + 12,0,0,0,95,95,113,117,97,108,110,97,109,101,95,95, + 117,7,0,0,0,95,95,100,111,99,95,95,117,8,0,0, + 0,95,95,105,110,105,116,95,95,117,11,0,0,0,95,99, + 104,101,99,107,95,110,97,109,101,117,11,0,0,0,108,111, + 97,100,95,109,111,100,117,108,101,117,12,0,0,0,103,101, + 116,95,102,105,108,101,110,97,109,101,117,8,0,0,0,103, + 101,116,95,100,97,116,97,40,1,0,0,0,117,10,0,0, + 0,95,95,108,111,99,97,108,115,95,95,40,0,0,0,0, + 40,1,0,0,0,117,9,0,0,0,95,95,99,108,97,115, + 115,95,95,117,29,0,0,0,60,102,114,111,122,101,110,32, + 105,109,112,111,114,116,108,105,98,46,95,98,111,111,116,115, + 116,114,97,112,62,117,10,0,0,0,70,105,108,101,76,111, + 97,100,101,114,239,3,0,0,115,10,0,0,0,16,3,6, + 2,12,6,24,7,18,5,117,10,0,0,0,70,105,108,101, + 76,111,97,100,101,114,99,1,0,0,0,0,0,0,0,1, + 0,0,0,4,0,0,0,66,0,0,0,115,68,0,0,0, + 124,0,0,69,101,0,0,90,1,0,100,0,0,90,2,0, + 100,1,0,90,3,0,100,2,0,100,3,0,132,0,0,90, + 4,0,100,4,0,100,5,0,132,0,0,90,5,0,100,6, + 0,100,7,0,100,8,0,100,9,0,132,0,1,90,6,0, + 100,10,0,83,40,11,0,0,0,117,16,0,0,0,83,111, + 117,114,99,101,70,105,108,101,76,111,97,100,101,114,117,62, + 0,0,0,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,3,0,0,0,3,0, + 0,0,67,0,0,0,115,39,0,0,0,116,0,0,106,1, + 0,124,1,0,131,1,0,125,2,0,105,2,0,124,2,0, + 106,2,0,100,1,0,54,124,2,0,106,3,0,100,2,0, + 54,83,40,3,0,0,0,117,33,0,0,0,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,117,5,0, + 0,0,109,116,105,109,101,117,4,0,0,0,115,105,122,101, + 40,4,0,0,0,117,3,0,0,0,95,111,115,117,4,0, + 0,0,115,116,97,116,117,8,0,0,0,115,116,95,109,116, + 105,109,101,117,7,0,0,0,115,116,95,115,105,122,101,40, + 3,0,0,0,117,4,0,0,0,115,101,108,102,117,4,0, + 0,0,112,97,116,104,117,2,0,0,0,115,116,40,0,0, + 0,0,40,0,0,0,0,117,29,0,0,0,60,102,114,111, + 122,101,110,32,105,109,112,111,114,116,108,105,98,46,95,98, + 111,111,116,115,116,114,97,112,62,117,10,0,0,0,112,97, + 116,104,95,115,116,97,116,115,16,4,0,0,115,4,0,0, + 0,0,2,15,1,117,27,0,0,0,83,111,117,114,99,101, + 70,105,108,101,76,111,97,100,101,114,46,112,97,116,104,95, + 115,116,97,116,115,99,4,0,0,0,0,0,0,0,5,0, + 0,0,13,0,0,0,67,0,0,0,115,71,0,0,0,121, + 22,0,116,0,0,106,1,0,124,1,0,131,1,0,106,2, + 0,125,4,0,87,110,24,0,4,116,3,0,107,10,0,114, + 48,0,1,1,1,100,1,0,125,4,0,89,110,1,0,88, + 124,0,0,106,4,0,124,2,0,124,3,0,100,2,0,124, + 4,0,131,2,1,83,40,3,0,0,0,78,105,182,1,0, + 0,117,5,0,0,0,95,109,111,100,101,40,5,0,0,0, + 117,3,0,0,0,95,111,115,117,4,0,0,0,115,116,97, + 116,117,7,0,0,0,115,116,95,109,111,100,101,117,7,0, + 0,0,79,83,69,114,114,111,114,117,8,0,0,0,115,101, + 116,95,100,97,116,97,40,5,0,0,0,117,4,0,0,0, + 115,101,108,102,117,11,0,0,0,115,111,117,114,99,101,95, + 112,97,116,104,117,13,0,0,0,98,121,116,101,99,111,100, + 101,95,112,97,116,104,117,4,0,0,0,100,97,116,97,117, + 4,0,0,0,109,111,100,101,40,0,0,0,0,40,0,0, + 0,0,117,29,0,0,0,60,102,114,111,122,101,110,32,105, + 109,112,111,114,116,108,105,98,46,95,98,111,111,116,115,116, + 114,97,112,62,117,15,0,0,0,95,99,97,99,104,101,95, + 98,121,116,101,99,111,100,101,21,4,0,0,115,10,0,0, + 0,0,2,3,1,22,1,13,1,11,1,117,32,0,0,0, + 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, + 117,5,0,0,0,95,109,111,100,101,105,182,1,0,0,99, + 3,0,0,0,1,0,0,0,8,0,0,0,13,0,0,0, + 67,0,0,0,115,245,0,0,0,116,0,0,124,1,0,131, + 1,0,92,2,0,125,4,0,125,5,0,103,0,0,125,6, + 0,120,54,0,124,4,0,114,80,0,116,1,0,124,4,0, + 131,1,0,12,114,80,0,116,0,0,124,4,0,131,1,0, + 92,2,0,125,4,0,125,7,0,124,6,0,106,2,0,124, + 7,0,131,1,0,1,113,27,0,87,120,97,0,116,3,0, + 124,6,0,131,1,0,68,93,83,0,125,7,0,116,4,0, + 124,4,0,124,7,0,131,2,0,125,4,0,121,17,0,116, + 5,0,106,6,0,124,4,0,131,1,0,1,87,113,94,0, + 4,116,7,0,107,10,0,114,155,0,1,1,1,119,94,0, + 89,113,94,0,4,116,8,0,107,10,0,114,176,0,1,1, + 1,100,1,0,83,89,113,94,0,88,113,94,0,87,121,33, + 0,116,9,0,124,1,0,124,2,0,124,3,0,131,3,0, + 1,116,10,0,100,2,0,124,1,0,131,2,0,1,87,110, + 24,0,4,116,8,0,116,7,0,102,2,0,107,10,0,114, + 240,0,1,1,1,89,110,1,0,88,100,1,0,83,40,3, + 0,0,0,117,27,0,0,0,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,78,117,12,0,0,0,99,114,101,97,116,101,100, + 32,123,33,114,125,40,11,0,0,0,117,11,0,0,0,95, + 112,97,116,104,95,115,112,108,105,116,117,11,0,0,0,95, + 112,97,116,104,95,105,115,100,105,114,117,6,0,0,0,97, + 112,112,101,110,100,117,8,0,0,0,114,101,118,101,114,115, + 101,100,117,10,0,0,0,95,112,97,116,104,95,106,111,105, + 110,117,3,0,0,0,95,111,115,117,5,0,0,0,109,107, + 100,105,114,117,15,0,0,0,70,105,108,101,69,120,105,115, + 116,115,69,114,114,111,114,117,15,0,0,0,80,101,114,109, + 105,115,115,105,111,110,69,114,114,111,114,117,13,0,0,0, + 95,119,114,105,116,101,95,97,116,111,109,105,99,117,16,0, + 0,0,95,118,101,114,98,111,115,101,95,109,101,115,115,97, + 103,101,40,8,0,0,0,117,4,0,0,0,115,101,108,102, + 117,4,0,0,0,112,97,116,104,117,4,0,0,0,100,97, + 116,97,117,5,0,0,0,95,109,111,100,101,117,6,0,0, + 0,112,97,114,101,110,116,117,8,0,0,0,102,105,108,101, + 110,97,109,101,117,10,0,0,0,112,97,116,104,95,112,97, + 114,116,115,117,4,0,0,0,112,97,114,116,40,0,0,0, + 0,40,0,0,0,0,117,29,0,0,0,60,102,114,111,122, + 101,110,32,105,109,112,111,114,116,108,105,98,46,95,98,111, + 111,116,115,116,114,97,112,62,117,8,0,0,0,115,101,116, + 95,100,97,116,97,29,4,0,0,115,36,0,0,0,0,2, + 18,1,6,2,22,1,18,1,17,2,19,1,15,1,3,1, + 17,1,13,2,7,1,13,3,13,1,3,1,16,1,17,1, + 19,3,117,25,0,0,0,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,40,7,0,0,0,117,8,0,0,0,95,95,110,97,109, + 101,95,95,117,10,0,0,0,95,95,109,111,100,117,108,101, + 95,95,117,12,0,0,0,95,95,113,117,97,108,110,97,109, + 101,95,95,117,7,0,0,0,95,95,100,111,99,95,95,117, + 10,0,0,0,112,97,116,104,95,115,116,97,116,115,117,15, + 0,0,0,95,99,97,99,104,101,95,98,121,116,101,99,111, + 100,101,117,8,0,0,0,115,101,116,95,100,97,116,97,40, 1,0,0,0,117,10,0,0,0,95,95,108,111,99,97,108, 115,95,95,40,0,0,0,0,40,0,0,0,0,117,29,0, 0,0,60,102,114,111,122,101,110,32,105,109,112,111,114,116, 108,105,98,46,95,98,111,111,116,115,116,114,97,112,62,117, - 10,0,0,0,80,97,116,104,70,105,110,100,101,114,204,4, - 0,0,115,14,0,0,0,16,2,6,2,18,8,18,17,18, - 17,18,25,3,1,117,10,0,0,0,80,97,116,104,70,105, - 110,100,101,114,99,1,0,0,0,0,0,0,0,1,0,0, - 0,3,0,0,0,66,0,0,0,115,110,0,0,0,124,0, - 0,69,101,0,0,90,1,0,100,0,0,90,2,0,100,1, - 0,90,3,0,100,2,0,100,3,0,132,0,0,90,4,0, - 100,4,0,100,5,0,132,0,0,90,5,0,101,6,0,90, - 7,0,100,6,0,100,7,0,132,0,0,90,8,0,100,8, - 0,100,9,0,132,0,0,90,9,0,101,10,0,100,10,0, - 100,11,0,132,0,0,131,1,0,90,11,0,100,12,0,100, - 13,0,132,0,0,90,12,0,100,14,0,83,40,15,0,0, - 0,117,10,0,0,0,70,105,108,101,70,105,110,100,101,114, - 117,172,0,0,0,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,5,0,0,0,5,0, - 0,0,7,0,0,0,115,122,0,0,0,103,0,0,125,3, - 0,120,52,0,124,2,0,68,93,44,0,92,2,0,137,0, - 0,125,4,0,124,3,0,106,0,0,135,0,0,102,1,0, - 100,1,0,100,2,0,134,0,0,124,4,0,68,131,1,0, - 131,1,0,1,113,13,0,87,124,3,0,124,0,0,95,1, - 0,124,1,0,112,79,0,100,3,0,124,0,0,95,2,0, - 100,6,0,124,0,0,95,3,0,116,4,0,131,0,0,124, - 0,0,95,5,0,116,4,0,131,0,0,124,0,0,95,6, - 0,100,5,0,83,40,7,0,0,0,117,201,0,0,0,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,51,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,44,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,32,114, - 101,99,111,103,110,105,122,101,115,44,10,32,32,32,32,32, - 32,32,32,97,110,100,32,97,32,98,111,111,108,101,97,110, - 32,111,102,32,119,104,101,116,104,101,114,32,116,104,101,32, - 108,111,97,100,101,114,32,104,97,110,100,108,101,115,32,112, - 97,99,107,97,103,101,115,46,99,1,0,0,0,0,0,0, - 0,2,0,0,0,3,0,0,0,51,0,0,0,115,27,0, - 0,0,124,0,0,93,17,0,125,1,0,124,1,0,136,0, - 0,102,2,0,86,1,113,3,0,100,0,0,83,40,1,0, - 0,0,78,40,0,0,0,0,40,2,0,0,0,117,2,0, - 0,0,46,48,117,6,0,0,0,115,117,102,102,105,120,40, - 1,0,0,0,117,6,0,0,0,108,111,97,100,101,114,40, + 16,0,0,0,83,111,117,114,99,101,70,105,108,101,76,111, + 97,100,101,114,12,4,0,0,115,8,0,0,0,16,2,6, + 2,12,5,12,8,117,16,0,0,0,83,111,117,114,99,101, + 70,105,108,101,76,111,97,100,101,114,99,1,0,0,0,0, + 0,0,0,1,0,0,0,2,0,0,0,66,0,0,0,115, + 62,0,0,0,124,0,0,69,101,0,0,90,1,0,100,0, + 0,90,2,0,100,1,0,90,3,0,100,2,0,100,3,0, + 132,0,0,90,4,0,100,4,0,100,5,0,132,0,0,90, + 5,0,100,6,0,100,7,0,132,0,0,90,6,0,100,8, + 0,83,40,9,0,0,0,117,20,0,0,0,83,111,117,114, + 99,101,108,101,115,115,70,105,108,101,76,111,97,100,101,114, + 117,45,0,0,0,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,2,0,0,0,4, + 0,0,0,67,0,0,0,115,19,0,0,0,124,0,0,106, + 0,0,124,1,0,100,1,0,100,2,0,131,1,1,83,40, + 3,0,0,0,78,117,10,0,0,0,115,111,117,114,99,101, + 108,101,115,115,84,40,2,0,0,0,117,12,0,0,0,95, + 108,111,97,100,95,109,111,100,117,108,101,117,4,0,0,0, + 84,114,117,101,40,2,0,0,0,117,4,0,0,0,115,101, + 108,102,117,8,0,0,0,102,117,108,108,110,97,109,101,40, + 0,0,0,0,40,0,0,0,0,117,29,0,0,0,60,102, + 114,111,122,101,110,32,105,109,112,111,114,116,108,105,98,46, + 95,98,111,111,116,115,116,114,97,112,62,117,11,0,0,0, + 108,111,97,100,95,109,111,100,117,108,101,62,4,0,0,115, + 2,0,0,0,0,1,117,32,0,0,0,83,111,117,114,99, + 101,108,101,115,115,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,6,0,0,0,6,0,0,0,67,0,0,0, + 115,138,0,0,0,124,0,0,106,0,0,124,1,0,131,1, + 0,125,2,0,124,0,0,106,1,0,124,2,0,131,1,0, + 125,3,0,124,0,0,106,2,0,124,1,0,124,3,0,124, + 2,0,100,0,0,131,4,0,125,4,0,116,4,0,106,5, + 0,124,4,0,131,1,0,125,5,0,116,6,0,124,5,0, + 116,7,0,131,2,0,114,101,0,116,8,0,100,1,0,124, + 2,0,131,2,0,1,124,5,0,83,116,9,0,100,2,0, + 106,10,0,124,2,0,131,1,0,100,3,0,124,1,0,100, + 4,0,124,2,0,131,1,2,130,1,0,100,0,0,83,40, + 5,0,0,0,78,117,21,0,0,0,99,111,100,101,32,111, + 98,106,101,99,116,32,102,114,111,109,32,123,33,114,125,117, + 21,0,0,0,78,111,110,45,99,111,100,101,32,111,98,106, + 101,99,116,32,105,110,32,123,125,117,4,0,0,0,110,97, + 109,101,117,4,0,0,0,112,97,116,104,40,11,0,0,0, + 117,12,0,0,0,103,101,116,95,102,105,108,101,110,97,109, + 101,117,8,0,0,0,103,101,116,95,100,97,116,97,117,20, + 0,0,0,95,98,121,116,101,115,95,102,114,111,109,95,98, + 121,116,101,99,111,100,101,117,4,0,0,0,78,111,110,101, + 117,7,0,0,0,109,97,114,115,104,97,108,117,5,0,0, + 0,108,111,97,100,115,117,10,0,0,0,105,115,105,110,115, + 116,97,110,99,101,117,10,0,0,0,95,99,111,100,101,95, + 116,121,112,101,117,16,0,0,0,95,118,101,114,98,111,115, + 101,95,109,101,115,115,97,103,101,117,11,0,0,0,73,109, + 112,111,114,116,69,114,114,111,114,117,6,0,0,0,102,111, + 114,109,97,116,40,6,0,0,0,117,4,0,0,0,115,101, + 108,102,117,8,0,0,0,102,117,108,108,110,97,109,101,117, + 4,0,0,0,112,97,116,104,117,4,0,0,0,100,97,116, + 97,117,10,0,0,0,98,121,116,101,115,95,100,97,116,97, + 117,5,0,0,0,102,111,117,110,100,40,0,0,0,0,40, 0,0,0,0,117,29,0,0,0,60,102,114,111,122,101,110, 32,105,109,112,111,114,116,108,105,98,46,95,98,111,111,116, - 115,116,114,97,112,62,117,9,0,0,0,60,103,101,110,101, - 120,112,114,62,52,5,0,0,115,2,0,0,0,6,0,117, - 38,0,0,0,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,117,1,0,0,0,46, - 105,1,0,0,0,78,105,255,255,255,255,40,7,0,0,0, - 117,6,0,0,0,101,120,116,101,110,100,117,8,0,0,0, - 95,108,111,97,100,101,114,115,117,4,0,0,0,112,97,116, - 104,117,11,0,0,0,95,112,97,116,104,95,109,116,105,109, - 101,117,3,0,0,0,115,101,116,117,11,0,0,0,95,112, - 97,116,104,95,99,97,99,104,101,117,19,0,0,0,95,114, - 101,108,97,120,101,100,95,112,97,116,104,95,99,97,99,104, - 101,40,5,0,0,0,117,4,0,0,0,115,101,108,102,117, - 4,0,0,0,112,97,116,104,117,7,0,0,0,100,101,116, - 97,105,108,115,117,7,0,0,0,108,111,97,100,101,114,115, - 117,8,0,0,0,115,117,102,102,105,120,101,115,40,0,0, - 0,0,40,1,0,0,0,117,6,0,0,0,108,111,97,100, - 101,114,117,29,0,0,0,60,102,114,111,122,101,110,32,105, - 109,112,111,114,116,108,105,98,46,95,98,111,111,116,115,116, - 114,97,112,62,117,8,0,0,0,95,95,105,110,105,116,95, - 95,46,5,0,0,115,16,0,0,0,0,4,6,1,19,1, - 36,1,9,2,15,1,9,1,12,1,117,19,0,0,0,70, - 105,108,101,70,105,110,100,101,114,46,95,95,105,110,105,116, - 95,95,99,1,0,0,0,0,0,0,0,1,0,0,0,2, - 0,0,0,67,0,0,0,115,13,0,0,0,100,3,0,124, - 0,0,95,0,0,100,2,0,83,40,4,0,0,0,117,31, - 0,0,0,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,105,1,0,0,0,78,105,255,255,255,255,40,1,0, - 0,0,117,11,0,0,0,95,112,97,116,104,95,109,116,105, - 109,101,40,1,0,0,0,117,4,0,0,0,115,101,108,102, - 40,0,0,0,0,40,0,0,0,0,117,29,0,0,0,60, - 102,114,111,122,101,110,32,105,109,112,111,114,116,108,105,98, - 46,95,98,111,111,116,115,116,114,97,112,62,117,17,0,0, - 0,105,110,118,97,108,105,100,97,116,101,95,99,97,99,104, - 101,115,60,5,0,0,115,2,0,0,0,0,2,117,28,0, - 0,0,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,12,0,0,0,13,0,0,0,67, - 0,0,0,115,172,1,0,0,100,5,0,125,2,0,124,1, - 0,106,1,0,100,1,0,131,1,0,100,2,0,25,125,3, - 0,121,25,0,116,2,0,106,3,0,124,0,0,106,4,0, - 131,1,0,106,5,0,125,4,0,87,110,24,0,4,116,6, - 0,107,10,0,114,76,0,1,1,1,100,6,0,125,4,0, - 89,110,1,0,88,124,4,0,124,0,0,106,7,0,107,3, - 0,114,114,0,124,0,0,106,8,0,131,0,0,1,124,4, - 0,124,0,0,95,7,0,110,0,0,116,9,0,131,0,0, - 114,147,0,124,0,0,106,10,0,125,5,0,124,3,0,106, - 11,0,131,0,0,125,6,0,110,15,0,124,0,0,106,12, - 0,125,5,0,124,3,0,125,6,0,124,6,0,124,5,0, - 107,6,0,114,45,1,116,13,0,124,0,0,106,4,0,124, - 3,0,131,2,0,125,7,0,116,14,0,124,7,0,131,1, - 0,114,45,1,120,91,0,124,0,0,106,15,0,68,93,71, - 0,92,2,0,125,8,0,125,9,0,100,4,0,124,8,0, - 23,125,10,0,116,13,0,124,7,0,124,10,0,131,2,0, - 125,11,0,116,16,0,124,11,0,131,1,0,114,214,0,124, - 9,0,124,1,0,124,11,0,131,2,0,124,7,0,103,1, - 0,102,2,0,83,113,214,0,87,100,7,0,125,2,0,113, - 45,1,110,0,0,120,95,0,124,0,0,106,15,0,68,93, - 84,0,92,2,0,125,8,0,125,9,0,124,6,0,124,8, - 0,23,124,5,0,107,6,0,114,55,1,116,13,0,124,0, - 0,106,4,0,124,3,0,124,8,0,23,131,2,0,125,11, - 0,116,16,0,124,11,0,131,1,0,114,139,1,124,9,0, - 124,1,0,124,11,0,131,2,0,103,0,0,102,2,0,83, - 113,55,1,113,55,1,87,124,2,0,114,162,1,100,8,0, - 124,7,0,103,1,0,102,2,0,83,100,8,0,103,0,0, - 102,2,0,83,40,9,0,0,0,117,125,0,0,0,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,117,1,0,0,0, - 46,105,2,0,0,0,105,1,0,0,0,117,8,0,0,0, - 95,95,105,110,105,116,95,95,70,105,255,255,255,255,84,78, - 40,19,0,0,0,117,5,0,0,0,70,97,108,115,101,117, - 10,0,0,0,114,112,97,114,116,105,116,105,111,110,117,3, - 0,0,0,95,111,115,117,4,0,0,0,115,116,97,116,117, - 4,0,0,0,112,97,116,104,117,8,0,0,0,115,116,95, - 109,116,105,109,101,117,7,0,0,0,79,83,69,114,114,111, - 114,117,11,0,0,0,95,112,97,116,104,95,109,116,105,109, - 101,117,11,0,0,0,95,102,105,108,108,95,99,97,99,104, - 101,117,11,0,0,0,95,114,101,108,97,120,95,99,97,115, - 101,117,19,0,0,0,95,114,101,108,97,120,101,100,95,112, - 97,116,104,95,99,97,99,104,101,117,5,0,0,0,108,111, - 119,101,114,117,11,0,0,0,95,112,97,116,104,95,99,97, - 99,104,101,117,10,0,0,0,95,112,97,116,104,95,106,111, - 105,110,117,11,0,0,0,95,112,97,116,104,95,105,115,100, - 105,114,117,8,0,0,0,95,108,111,97,100,101,114,115,117, - 12,0,0,0,95,112,97,116,104,95,105,115,102,105,108,101, - 117,4,0,0,0,84,114,117,101,117,4,0,0,0,78,111, - 110,101,40,12,0,0,0,117,4,0,0,0,115,101,108,102, - 117,8,0,0,0,102,117,108,108,110,97,109,101,117,12,0, - 0,0,105,115,95,110,97,109,101,115,112,97,99,101,117,11, - 0,0,0,116,97,105,108,95,109,111,100,117,108,101,117,5, - 0,0,0,109,116,105,109,101,117,5,0,0,0,99,97,99, - 104,101,117,12,0,0,0,99,97,99,104,101,95,109,111,100, - 117,108,101,117,9,0,0,0,98,97,115,101,95,112,97,116, - 104,117,6,0,0,0,115,117,102,102,105,120,117,6,0,0, - 0,108,111,97,100,101,114,117,13,0,0,0,105,110,105,116, - 95,102,105,108,101,110,97,109,101,117,9,0,0,0,102,117, - 108,108,95,112,97,116,104,40,0,0,0,0,40,0,0,0, + 115,116,114,97,112,62,117,8,0,0,0,103,101,116,95,99, + 111,100,101,65,4,0,0,115,18,0,0,0,0,1,15,1, + 15,1,24,1,15,1,15,1,13,1,4,2,18,1,117,29, + 0,0,0,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,2,0,0,0,1,0,0, + 0,67,0,0,0,115,4,0,0,0,100,1,0,83,40,2, + 0,0,0,117,39,0,0,0,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, + 40,1,0,0,0,117,4,0,0,0,78,111,110,101,40,2, + 0,0,0,117,4,0,0,0,115,101,108,102,117,8,0,0, + 0,102,117,108,108,110,97,109,101,40,0,0,0,0,40,0, + 0,0,0,117,29,0,0,0,60,102,114,111,122,101,110,32, + 105,109,112,111,114,116,108,105,98,46,95,98,111,111,116,115, + 116,114,97,112,62,117,10,0,0,0,103,101,116,95,115,111, + 117,114,99,101,77,4,0,0,115,2,0,0,0,0,2,117, + 31,0,0,0,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,40,7,0,0,0,117,8,0,0,0,95,95, + 110,97,109,101,95,95,117,10,0,0,0,95,95,109,111,100, + 117,108,101,95,95,117,12,0,0,0,95,95,113,117,97,108, + 110,97,109,101,95,95,117,7,0,0,0,95,95,100,111,99, + 95,95,117,11,0,0,0,108,111,97,100,95,109,111,100,117, + 108,101,117,8,0,0,0,103,101,116,95,99,111,100,101,117, + 10,0,0,0,103,101,116,95,115,111,117,114,99,101,40,1, + 0,0,0,117,10,0,0,0,95,95,108,111,99,97,108,115, + 95,95,40,0,0,0,0,40,0,0,0,0,117,29,0,0, + 0,60,102,114,111,122,101,110,32,105,109,112,111,114,116,108, + 105,98,46,95,98,111,111,116,115,116,114,97,112,62,117,20, + 0,0,0,83,111,117,114,99,101,108,101,115,115,70,105,108, + 101,76,111,97,100,101,114,58,4,0,0,115,8,0,0,0, + 16,2,6,2,12,3,12,12,117,20,0,0,0,83,111,117, + 114,99,101,108,101,115,115,70,105,108,101,76,111,97,100,101, + 114,99,1,0,0,0,0,0,0,0,1,0,0,0,5,0, + 0,0,66,0,0,0,115,104,0,0,0,124,0,0,69,101, + 0,0,90,1,0,100,0,0,90,2,0,100,1,0,90,3, + 0,100,2,0,100,3,0,132,0,0,90,4,0,101,5,0, + 101,6,0,101,7,0,100,4,0,100,5,0,132,0,0,131, + 1,0,131,1,0,131,1,0,90,8,0,100,6,0,100,7, + 0,132,0,0,90,9,0,100,8,0,100,9,0,132,0,0, + 90,10,0,100,10,0,100,11,0,132,0,0,90,11,0,100, + 12,0,83,40,13,0,0,0,117,19,0,0,0,69,120,116, + 101,110,115,105,111,110,70,105,108,101,76,111,97,100,101,114, + 117,93,0,0,0,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,3,0,0,0,2, + 0,0,0,67,0,0,0,115,22,0,0,0,124,1,0,124, + 0,0,95,0,0,124,2,0,124,0,0,95,1,0,100,0, + 0,83,40,1,0,0,0,78,40,2,0,0,0,117,4,0, + 0,0,110,97,109,101,117,4,0,0,0,112,97,116,104,40, + 3,0,0,0,117,4,0,0,0,115,101,108,102,117,4,0, + 0,0,110,97,109,101,117,4,0,0,0,112,97,116,104,40, + 0,0,0,0,40,0,0,0,0,117,29,0,0,0,60,102, + 114,111,122,101,110,32,105,109,112,111,114,116,108,105,98,46, + 95,98,111,111,116,115,116,114,97,112,62,117,8,0,0,0, + 95,95,105,110,105,116,95,95,94,4,0,0,115,4,0,0, + 0,0,1,9,1,117,28,0,0,0,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,4, + 0,0,0,10,0,0,0,67,0,0,0,115,175,0,0,0, + 124,1,0,116,0,0,106,1,0,107,6,0,125,2,0,121, + 107,0,116,2,0,116,3,0,106,4,0,124,1,0,124,0, + 0,106,5,0,131,3,0,125,3,0,116,6,0,100,1,0, + 124,0,0,106,5,0,131,2,0,1,124,0,0,106,7,0, + 124,1,0,131,1,0,114,117,0,116,8,0,124,3,0,100, + 2,0,131,2,0,12,114,117,0,116,9,0,124,0,0,106, + 5,0,131,1,0,100,3,0,25,103,1,0,124,3,0,95, + 10,0,110,0,0,124,3,0,83,87,110,46,0,1,1,1, + 124,2,0,12,114,163,0,124,1,0,116,0,0,106,1,0, + 107,6,0,114,163,0,116,0,0,106,1,0,124,1,0,61, + 110,0,0,130,0,0,89,110,1,0,88,100,4,0,83,40, + 5,0,0,0,117,25,0,0,0,76,111,97,100,32,97,110, + 32,101,120,116,101,110,115,105,111,110,32,109,111,100,117,108, + 101,46,117,33,0,0,0,101,120,116,101,110,115,105,111,110, + 32,109,111,100,117,108,101,32,108,111,97,100,101,100,32,102, + 114,111,109,32,123,33,114,125,117,8,0,0,0,95,95,112, + 97,116,104,95,95,105,0,0,0,0,78,40,11,0,0,0, + 117,3,0,0,0,115,121,115,117,7,0,0,0,109,111,100, + 117,108,101,115,117,25,0,0,0,95,99,97,108,108,95,119, + 105,116,104,95,102,114,97,109,101,115,95,114,101,109,111,118, + 101,100,117,4,0,0,0,95,105,109,112,117,12,0,0,0, + 108,111,97,100,95,100,121,110,97,109,105,99,117,4,0,0, + 0,112,97,116,104,117,16,0,0,0,95,118,101,114,98,111, + 115,101,95,109,101,115,115,97,103,101,117,10,0,0,0,105, + 115,95,112,97,99,107,97,103,101,117,7,0,0,0,104,97, + 115,97,116,116,114,117,11,0,0,0,95,112,97,116,104,95, + 115,112,108,105,116,117,8,0,0,0,95,95,112,97,116,104, + 95,95,40,4,0,0,0,117,4,0,0,0,115,101,108,102, + 117,8,0,0,0,102,117,108,108,110,97,109,101,117,9,0, + 0,0,105,115,95,114,101,108,111,97,100,117,6,0,0,0, + 109,111,100,117,108,101,40,0,0,0,0,40,0,0,0,0, + 117,29,0,0,0,60,102,114,111,122,101,110,32,105,109,112, + 111,114,116,108,105,98,46,95,98,111,111,116,115,116,114,97, + 112,62,117,11,0,0,0,108,111,97,100,95,109,111,100,117, + 108,101,98,4,0,0,115,24,0,0,0,0,5,15,1,3, + 1,9,1,15,1,16,1,31,1,28,1,8,1,3,1,22, + 1,13,1,117,31,0,0,0,69,120,116,101,110,115,105,111, + 110,70,105,108,101,76,111,97,100,101,114,46,108,111,97,100, + 95,109,111,100,117,108,101,99,2,0,0,0,0,0,0,0, + 2,0,0,0,4,0,0,0,3,0,0,0,115,48,0,0, + 0,116,0,0,124,0,0,106,1,0,131,1,0,100,1,0, + 25,137,0,0,116,2,0,135,0,0,102,1,0,100,2,0, + 100,3,0,134,0,0,116,3,0,68,131,1,0,131,1,0, + 83,40,4,0,0,0,117,49,0,0,0,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,105,1,0,0, + 0,99,1,0,0,0,0,0,0,0,2,0,0,0,4,0, + 0,0,51,0,0,0,115,31,0,0,0,124,0,0,93,21, + 0,125,1,0,136,0,0,100,0,0,124,1,0,23,107,2, + 0,86,1,113,3,0,100,1,0,83,40,2,0,0,0,117, + 8,0,0,0,95,95,105,110,105,116,95,95,78,40,0,0, + 0,0,40,2,0,0,0,117,2,0,0,0,46,48,117,6, + 0,0,0,115,117,102,102,105,120,40,1,0,0,0,117,9, + 0,0,0,102,105,108,101,95,110,97,109,101,40,0,0,0, 0,117,29,0,0,0,60,102,114,111,122,101,110,32,105,109, 112,111,114,116,108,105,98,46,95,98,111,111,116,115,116,114, - 97,112,62,117,11,0,0,0,102,105,110,100,95,108,111,97, - 100,101,114,66,5,0,0,115,62,0,0,0,0,3,6,1, - 19,1,3,1,25,1,13,1,11,1,15,1,10,1,12,2, - 9,1,9,1,15,2,9,1,6,2,12,1,18,1,12,1, - 22,1,10,1,15,1,12,1,26,4,12,2,22,1,16,1, - 22,1,12,1,26,1,6,1,13,1,117,22,0,0,0,70, - 105,108,101,70,105,110,100,101,114,46,102,105,110,100,95,108, - 111,97,100,101,114,99,1,0,0,0,0,0,0,0,9,0, - 0,0,12,0,0,0,67,0,0,0,115,255,0,0,0,124, - 0,0,106,0,0,125,1,0,121,19,0,116,1,0,106,2, - 0,124,1,0,131,1,0,125,2,0,87,110,24,0,4,116, - 3,0,107,10,0,114,54,0,1,1,1,103,0,0,125,2, - 0,89,110,1,0,88,116,4,0,106,5,0,106,6,0,100, - 1,0,131,1,0,115,91,0,116,7,0,124,2,0,131,1, - 0,124,0,0,95,8,0,110,111,0,116,7,0,131,0,0, - 125,3,0,120,90,0,124,2,0,68,93,82,0,125,4,0, - 124,4,0,106,9,0,100,2,0,131,1,0,92,3,0,125, - 5,0,125,6,0,125,7,0,124,6,0,114,170,0,100,3, - 0,106,10,0,124,5,0,124,7,0,106,11,0,131,0,0, - 131,2,0,125,8,0,110,6,0,124,5,0,125,8,0,124, - 3,0,106,12,0,124,8,0,131,1,0,1,113,107,0,87, - 124,3,0,124,0,0,95,8,0,116,4,0,106,5,0,106, - 6,0,116,13,0,131,1,0,114,251,0,116,7,0,100,4, - 0,100,5,0,132,0,0,124,2,0,68,131,1,0,131,1, - 0,124,0,0,95,14,0,110,0,0,100,6,0,83,40,7, - 0,0,0,117,68,0,0,0,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,117,3,0,0, - 0,119,105,110,117,1,0,0,0,46,117,5,0,0,0,123, - 125,46,123,125,99,1,0,0,0,0,0,0,0,2,0,0, - 0,2,0,0,0,115,0,0,0,115,27,0,0,0,124,0, - 0,93,17,0,125,1,0,124,1,0,106,0,0,131,0,0, - 86,1,113,3,0,100,0,0,83,40,1,0,0,0,78,40, - 1,0,0,0,117,5,0,0,0,108,111,119,101,114,40,2, - 0,0,0,117,2,0,0,0,46,48,117,2,0,0,0,102, - 110,40,0,0,0,0,40,0,0,0,0,117,29,0,0,0, - 60,102,114,111,122,101,110,32,105,109,112,111,114,116,108,105, - 98,46,95,98,111,111,116,115,116,114,97,112,62,117,9,0, - 0,0,60,103,101,110,101,120,112,114,62,136,5,0,0,115, - 2,0,0,0,6,0,117,41,0,0,0,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,103,101,110,101, - 120,112,114,62,78,40,15,0,0,0,117,4,0,0,0,112, - 97,116,104,117,3,0,0,0,95,111,115,117,7,0,0,0, - 108,105,115,116,100,105,114,117,17,0,0,0,70,105,108,101, - 78,111,116,70,111,117,110,100,69,114,114,111,114,117,3,0, - 0,0,115,121,115,117,8,0,0,0,112,108,97,116,102,111, - 114,109,117,10,0,0,0,115,116,97,114,116,115,119,105,116, - 104,117,3,0,0,0,115,101,116,117,11,0,0,0,95,112, - 97,116,104,95,99,97,99,104,101,117,9,0,0,0,112,97, - 114,116,105,116,105,111,110,117,6,0,0,0,102,111,114,109, - 97,116,117,5,0,0,0,108,111,119,101,114,117,3,0,0, - 0,97,100,100,117,27,0,0,0,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,117,19,0,0,0,95,114,101,108,97,120,101, - 100,95,112,97,116,104,95,99,97,99,104,101,40,9,0,0, - 0,117,4,0,0,0,115,101,108,102,117,4,0,0,0,112, - 97,116,104,117,8,0,0,0,99,111,110,116,101,110,116,115, - 117,21,0,0,0,108,111,119,101,114,95,115,117,102,102,105, - 120,95,99,111,110,116,101,110,116,115,117,4,0,0,0,105, - 116,101,109,117,4,0,0,0,110,97,109,101,117,3,0,0, - 0,100,111,116,117,6,0,0,0,115,117,102,102,105,120,117, - 8,0,0,0,110,101,119,95,110,97,109,101,40,0,0,0, - 0,40,0,0,0,0,117,29,0,0,0,60,102,114,111,122, - 101,110,32,105,109,112,111,114,116,108,105,98,46,95,98,111, - 111,116,115,116,114,97,112,62,117,11,0,0,0,95,102,105, - 108,108,95,99,97,99,104,101,108,5,0,0,115,34,0,0, - 0,0,2,9,1,3,1,19,1,13,2,11,3,18,1,18, - 7,9,1,13,1,24,1,6,1,27,2,6,1,17,1,9, - 1,18,1,117,22,0,0,0,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,3,0,0,0,3,0,0,0,7, - 0,0,0,115,25,0,0,0,135,0,0,135,1,0,102,2, - 0,100,1,0,100,2,0,134,0,0,125,2,0,124,2,0, - 83,40,3,0,0,0,117,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,1,0,0,0,4,0,0,0, - 19,0,0,0,115,46,0,0,0,116,0,0,124,0,0,131, - 1,0,115,33,0,116,1,0,100,1,0,100,2,0,124,0, - 0,131,1,1,130,1,0,110,0,0,136,0,0,124,0,0, - 136,1,0,140,1,0,83,40,3,0,0,0,117,45,0,0, - 0,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,117,30, - 0,0,0,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,117,4,0,0,0,112,97,116,104,40,2,0,0,0,117, - 11,0,0,0,95,112,97,116,104,95,105,115,100,105,114,117, - 11,0,0,0,73,109,112,111,114,116,69,114,114,111,114,40, - 1,0,0,0,117,4,0,0,0,112,97,116,104,40,2,0, - 0,0,117,3,0,0,0,99,108,115,117,14,0,0,0,108, - 111,97,100,101,114,95,100,101,116,97,105,108,115,40,0,0, - 0,0,117,29,0,0,0,60,102,114,111,122,101,110,32,105, + 97,112,62,117,9,0,0,0,60,103,101,110,101,120,112,114, + 62,119,4,0,0,115,2,0,0,0,6,1,117,49,0,0, + 0,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,40,4,0,0,0,117,11,0,0,0,95,112,97,116, + 104,95,115,112,108,105,116,117,4,0,0,0,112,97,116,104, + 117,3,0,0,0,97,110,121,117,18,0,0,0,69,88,84, + 69,78,83,73,79,78,95,83,85,70,70,73,88,69,83,40, + 2,0,0,0,117,4,0,0,0,115,101,108,102,117,8,0, + 0,0,102,117,108,108,110,97,109,101,40,0,0,0,0,40, + 1,0,0,0,117,9,0,0,0,102,105,108,101,95,110,97, + 109,101,117,29,0,0,0,60,102,114,111,122,101,110,32,105, 109,112,111,114,116,108,105,98,46,95,98,111,111,116,115,116, - 114,97,112,62,117,24,0,0,0,112,97,116,104,95,104,111, - 111,107,95,102,111,114,95,70,105,108,101,70,105,110,100,101, - 114,148,5,0,0,115,6,0,0,0,0,2,12,1,21,1, - 117,54,0,0,0,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,40,0,0,0,0, - 40,3,0,0,0,117,3,0,0,0,99,108,115,117,14,0, - 0,0,108,111,97,100,101,114,95,100,101,116,97,105,108,115, - 117,24,0,0,0,112,97,116,104,95,104,111,111,107,95,102, - 111,114,95,70,105,108,101,70,105,110,100,101,114,40,0,0, - 0,0,40,2,0,0,0,117,3,0,0,0,99,108,115,117, - 14,0,0,0,108,111,97,100,101,114,95,100,101,116,97,105, - 108,115,117,29,0,0,0,60,102,114,111,122,101,110,32,105, - 109,112,111,114,116,108,105,98,46,95,98,111,111,116,115,116, - 114,97,112,62,117,9,0,0,0,112,97,116,104,95,104,111, - 111,107,138,5,0,0,115,4,0,0,0,0,10,21,6,117, - 20,0,0,0,70,105,108,101,70,105,110,100,101,114,46,112, - 97,116,104,95,104,111,111,107,99,1,0,0,0,0,0,0, - 0,1,0,0,0,2,0,0,0,67,0,0,0,115,14,0, - 0,0,100,1,0,124,0,0,106,0,0,102,1,0,22,83, - 40,2,0,0,0,78,117,14,0,0,0,70,105,108,101,70, - 105,110,100,101,114,40,37,114,41,40,1,0,0,0,117,4, - 0,0,0,112,97,116,104,40,1,0,0,0,117,4,0,0, - 0,115,101,108,102,40,0,0,0,0,40,0,0,0,0,117, + 114,97,112,62,117,10,0,0,0,105,115,95,112,97,99,107, + 97,103,101,116,4,0,0,115,6,0,0,0,0,2,19,1, + 18,1,117,30,0,0,0,69,120,116,101,110,115,105,111,110, + 70,105,108,101,76,111,97,100,101,114,46,105,115,95,112,97, + 99,107,97,103,101,99,2,0,0,0,0,0,0,0,2,0, + 0,0,1,0,0,0,67,0,0,0,115,4,0,0,0,100, + 1,0,83,40,2,0,0,0,117,63,0,0,0,82,101,116, + 117,114,110,32,78,111,110,101,32,97,115,32,97,110,32,101, + 120,116,101,110,115,105,111,110,32,109,111,100,117,108,101,32, + 99,97,110,110,111,116,32,99,114,101,97,116,101,32,97,32, + 99,111,100,101,32,111,98,106,101,99,116,46,78,40,1,0, + 0,0,117,4,0,0,0,78,111,110,101,40,2,0,0,0, + 117,4,0,0,0,115,101,108,102,117,8,0,0,0,102,117, + 108,108,110,97,109,101,40,0,0,0,0,40,0,0,0,0, + 117,29,0,0,0,60,102,114,111,122,101,110,32,105,109,112, + 111,114,116,108,105,98,46,95,98,111,111,116,115,116,114,97, + 112,62,117,8,0,0,0,103,101,116,95,99,111,100,101,122, + 4,0,0,115,2,0,0,0,0,2,117,28,0,0,0,69, + 120,116,101,110,115,105,111,110,70,105,108,101,76,111,97,100, + 101,114,46,103,101,116,95,99,111,100,101,99,2,0,0,0, + 0,0,0,0,2,0,0,0,1,0,0,0,67,0,0,0, + 115,4,0,0,0,100,1,0,83,40,2,0,0,0,117,53, + 0,0,0,82,101,116,117,114,110,32,78,111,110,101,32,97, + 115,32,101,120,116,101,110,115,105,111,110,32,109,111,100,117, + 108,101,115,32,104,97,118,101,32,110,111,32,115,111,117,114, + 99,101,32,99,111,100,101,46,78,40,1,0,0,0,117,4, + 0,0,0,78,111,110,101,40,2,0,0,0,117,4,0,0, + 0,115,101,108,102,117,8,0,0,0,102,117,108,108,110,97, + 109,101,40,0,0,0,0,40,0,0,0,0,117,29,0,0, + 0,60,102,114,111,122,101,110,32,105,109,112,111,114,116,108, + 105,98,46,95,98,111,111,116,115,116,114,97,112,62,117,10, + 0,0,0,103,101,116,95,115,111,117,114,99,101,126,4,0, + 0,115,2,0,0,0,0,2,117,30,0,0,0,69,120,116, + 101,110,115,105,111,110,70,105,108,101,76,111,97,100,101,114, + 46,103,101,116,95,115,111,117,114,99,101,78,40,12,0,0, + 0,117,8,0,0,0,95,95,110,97,109,101,95,95,117,10, + 0,0,0,95,95,109,111,100,117,108,101,95,95,117,12,0, + 0,0,95,95,113,117,97,108,110,97,109,101,95,95,117,7, + 0,0,0,95,95,100,111,99,95,95,117,8,0,0,0,95, + 95,105,110,105,116,95,95,117,11,0,0,0,95,99,104,101, + 99,107,95,110,97,109,101,117,11,0,0,0,115,101,116,95, + 112,97,99,107,97,103,101,117,10,0,0,0,115,101,116,95, + 108,111,97,100,101,114,117,11,0,0,0,108,111,97,100,95, + 109,111,100,117,108,101,117,10,0,0,0,105,115,95,112,97, + 99,107,97,103,101,117,8,0,0,0,103,101,116,95,99,111, + 100,101,117,10,0,0,0,103,101,116,95,115,111,117,114,99, + 101,40,1,0,0,0,117,10,0,0,0,95,95,108,111,99, + 97,108,115,95,95,40,0,0,0,0,40,0,0,0,0,117, 29,0,0,0,60,102,114,111,122,101,110,32,105,109,112,111, 114,116,108,105,98,46,95,98,111,111,116,115,116,114,97,112, - 62,117,8,0,0,0,95,95,114,101,112,114,95,95,156,5, - 0,0,115,2,0,0,0,0,1,117,19,0,0,0,70,105, - 108,101,70,105,110,100,101,114,46,95,95,114,101,112,114,95, - 95,78,40,13,0,0,0,117,8,0,0,0,95,95,110,97, - 109,101,95,95,117,10,0,0,0,95,95,109,111,100,117,108, - 101,95,95,117,12,0,0,0,95,95,113,117,97,108,110,97, - 109,101,95,95,117,7,0,0,0,95,95,100,111,99,95,95, - 117,8,0,0,0,95,95,105,110,105,116,95,95,117,17,0, - 0,0,105,110,118,97,108,105,100,97,116,101,95,99,97,99, - 104,101,115,117,17,0,0,0,95,102,105,110,100,95,109,111, - 100,117,108,101,95,115,104,105,109,117,11,0,0,0,102,105, - 110,100,95,109,111,100,117,108,101,117,11,0,0,0,102,105, - 110,100,95,108,111,97,100,101,114,117,11,0,0,0,95,102, - 105,108,108,95,99,97,99,104,101,117,11,0,0,0,99,108, - 97,115,115,109,101,116,104,111,100,117,9,0,0,0,112,97, - 116,104,95,104,111,111,107,117,8,0,0,0,95,95,114,101, - 112,114,95,95,40,1,0,0,0,117,10,0,0,0,95,95, - 108,111,99,97,108,115,95,95,40,0,0,0,0,40,0,0, - 0,0,117,29,0,0,0,60,102,114,111,122,101,110,32,105, - 109,112,111,114,116,108,105,98,46,95,98,111,111,116,115,116, - 114,97,112,62,117,10,0,0,0,70,105,108,101,70,105,110, - 100,101,114,37,5,0,0,115,16,0,0,0,16,7,6,2, - 12,14,12,4,6,2,12,42,12,30,18,18,117,10,0,0, - 0,70,105,108,101,70,105,110,100,101,114,99,1,0,0,0, - 0,0,0,0,1,0,0,0,2,0,0,0,66,0,0,0, - 115,50,0,0,0,124,0,0,69,101,0,0,90,1,0,100, - 0,0,90,2,0,100,1,0,90,3,0,100,2,0,100,3, - 0,132,0,0,90,4,0,100,4,0,100,5,0,132,0,0, - 90,5,0,100,6,0,83,40,7,0,0,0,117,18,0,0, - 0,95,73,109,112,111,114,116,76,111,99,107,67,111,110,116, - 101,120,116,117,36,0,0,0,67,111,110,116,101,120,116,32, - 109,97,110,97,103,101,114,32,102,111,114,32,116,104,101,32, - 105,109,112,111,114,116,32,108,111,99,107,46,99,1,0,0, - 0,0,0,0,0,1,0,0,0,1,0,0,0,67,0,0, - 0,115,14,0,0,0,116,0,0,106,1,0,131,0,0,1, - 100,1,0,83,40,2,0,0,0,117,24,0,0,0,65,99, - 113,117,105,114,101,32,116,104,101,32,105,109,112,111,114,116, - 32,108,111,99,107,46,78,40,2,0,0,0,117,4,0,0, - 0,95,105,109,112,117,12,0,0,0,97,99,113,117,105,114, - 101,95,108,111,99,107,40,1,0,0,0,117,4,0,0,0, - 115,101,108,102,40,0,0,0,0,40,0,0,0,0,117,29, + 62,117,19,0,0,0,69,120,116,101,110,115,105,111,110,70, + 105,108,101,76,111,97,100,101,114,86,4,0,0,115,16,0, + 0,0,16,6,6,2,12,4,3,1,3,1,24,16,12,6, + 12,4,117,19,0,0,0,69,120,116,101,110,115,105,111,110, + 70,105,108,101,76,111,97,100,101,114,99,1,0,0,0,0, + 0,0,0,1,0,0,0,2,0,0,0,66,0,0,0,115, + 134,0,0,0,124,0,0,69,101,0,0,90,1,0,100,0, + 0,90,2,0,100,1,0,90,3,0,100,2,0,100,3,0, + 132,0,0,90,4,0,100,4,0,100,5,0,132,0,0,90, + 5,0,100,6,0,100,7,0,132,0,0,90,6,0,100,8, + 0,100,9,0,132,0,0,90,7,0,100,10,0,100,11,0, + 132,0,0,90,8,0,100,12,0,100,13,0,132,0,0,90, + 9,0,100,14,0,100,15,0,132,0,0,90,10,0,100,16, + 0,100,17,0,132,0,0,90,11,0,100,18,0,100,19,0, + 132,0,0,90,12,0,100,20,0,83,40,21,0,0,0,117, + 14,0,0,0,95,78,97,109,101,115,112,97,99,101,80,97, + 116,104,117,37,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,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,4,0,0,0,2,0,0,0,67,0,0, + 0,115,52,0,0,0,124,1,0,124,0,0,95,0,0,124, + 2,0,124,0,0,95,1,0,116,2,0,124,0,0,106,3, + 0,131,0,0,131,1,0,124,0,0,95,4,0,124,3,0, + 124,0,0,95,5,0,100,0,0,83,40,1,0,0,0,78, + 40,6,0,0,0,117,5,0,0,0,95,110,97,109,101,117, + 5,0,0,0,95,112,97,116,104,117,5,0,0,0,116,117, + 112,108,101,117,16,0,0,0,95,103,101,116,95,112,97,114, + 101,110,116,95,112,97,116,104,117,17,0,0,0,95,108,97, + 115,116,95,112,97,114,101,110,116,95,112,97,116,104,117,12, + 0,0,0,95,112,97,116,104,95,102,105,110,100,101,114,40, + 4,0,0,0,117,4,0,0,0,115,101,108,102,117,4,0, + 0,0,110,97,109,101,117,4,0,0,0,112,97,116,104,117, + 11,0,0,0,112,97,116,104,95,102,105,110,100,101,114,40, + 0,0,0,0,40,0,0,0,0,117,29,0,0,0,60,102, + 114,111,122,101,110,32,105,109,112,111,114,116,108,105,98,46, + 95,98,111,111,116,115,116,114,97,112,62,117,8,0,0,0, + 95,95,105,110,105,116,95,95,138,4,0,0,115,8,0,0, + 0,0,1,9,1,9,1,21,1,117,23,0,0,0,95,78, + 97,109,101,115,112,97,99,101,80,97,116,104,46,95,95,105, + 110,105,116,95,95,99,1,0,0,0,0,0,0,0,4,0, + 0,0,3,0,0,0,67,0,0,0,115,53,0,0,0,124, + 0,0,106,0,0,106,1,0,100,1,0,131,1,0,92,3, + 0,125,1,0,125,2,0,125,3,0,124,2,0,100,2,0, + 107,2,0,114,43,0,100,6,0,83,124,1,0,100,5,0, + 102,2,0,83,40,7,0,0,0,117,62,0,0,0,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,117,1,0,0, + 0,46,117,0,0,0,0,117,3,0,0,0,115,121,115,117, + 4,0,0,0,112,97,116,104,117,8,0,0,0,95,95,112, + 97,116,104,95,95,40,2,0,0,0,117,3,0,0,0,115, + 121,115,117,4,0,0,0,112,97,116,104,40,2,0,0,0, + 117,5,0,0,0,95,110,97,109,101,117,10,0,0,0,114, + 112,97,114,116,105,116,105,111,110,40,4,0,0,0,117,4, + 0,0,0,115,101,108,102,117,6,0,0,0,112,97,114,101, + 110,116,117,3,0,0,0,100,111,116,117,2,0,0,0,109, + 101,40,0,0,0,0,40,0,0,0,0,117,29,0,0,0, + 60,102,114,111,122,101,110,32,105,109,112,111,114,116,108,105, + 98,46,95,98,111,111,116,115,116,114,97,112,62,117,23,0, + 0,0,95,102,105,110,100,95,112,97,114,101,110,116,95,112, + 97,116,104,95,110,97,109,101,115,144,4,0,0,115,8,0, + 0,0,0,2,27,1,12,2,4,3,117,38,0,0,0,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,3,0, + 0,0,3,0,0,0,67,0,0,0,115,38,0,0,0,124, + 0,0,106,0,0,131,0,0,92,2,0,125,1,0,125,2, + 0,116,1,0,116,2,0,106,3,0,124,1,0,25,124,2, + 0,131,2,0,83,40,1,0,0,0,78,40,4,0,0,0, + 117,23,0,0,0,95,102,105,110,100,95,112,97,114,101,110, + 116,95,112,97,116,104,95,110,97,109,101,115,117,7,0,0, + 0,103,101,116,97,116,116,114,117,3,0,0,0,115,121,115, + 117,7,0,0,0,109,111,100,117,108,101,115,40,3,0,0, + 0,117,4,0,0,0,115,101,108,102,117,18,0,0,0,112, + 97,114,101,110,116,95,109,111,100,117,108,101,95,110,97,109, + 101,117,14,0,0,0,112,97,116,104,95,97,116,116,114,95, + 110,97,109,101,40,0,0,0,0,40,0,0,0,0,117,29, 0,0,0,60,102,114,111,122,101,110,32,105,109,112,111,114, 116,108,105,98,46,95,98,111,111,116,115,116,114,97,112,62, - 117,9,0,0,0,95,95,101,110,116,101,114,95,95,166,5, - 0,0,115,2,0,0,0,0,2,117,28,0,0,0,95,73, - 109,112,111,114,116,76,111,99,107,67,111,110,116,101,120,116, - 46,95,95,101,110,116,101,114,95,95,99,4,0,0,0,0, - 0,0,0,4,0,0,0,1,0,0,0,67,0,0,0,115, - 14,0,0,0,116,0,0,106,1,0,131,0,0,1,100,1, - 0,83,40,2,0,0,0,117,60,0,0,0,82,101,108,101, - 97,115,101,32,116,104,101,32,105,109,112,111,114,116,32,108, - 111,99,107,32,114,101,103,97,114,100,108,101,115,115,32,111, - 102,32,97,110,121,32,114,97,105,115,101,100,32,101,120,99, - 101,112,116,105,111,110,115,46,78,40,2,0,0,0,117,4, - 0,0,0,95,105,109,112,117,12,0,0,0,114,101,108,101, - 97,115,101,95,108,111,99,107,40,4,0,0,0,117,4,0, - 0,0,115,101,108,102,117,8,0,0,0,101,120,99,95,116, - 121,112,101,117,9,0,0,0,101,120,99,95,118,97,108,117, - 101,117,13,0,0,0,101,120,99,95,116,114,97,99,101,98, - 97,99,107,40,0,0,0,0,40,0,0,0,0,117,29,0, + 117,16,0,0,0,95,103,101,116,95,112,97,114,101,110,116, + 95,112,97,116,104,154,4,0,0,115,4,0,0,0,0,1, + 18,1,117,31,0,0,0,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,4, + 0,0,0,3,0,0,0,67,0,0,0,115,103,0,0,0, + 116,0,0,124,0,0,106,1,0,131,0,0,131,1,0,125, + 1,0,124,1,0,124,0,0,106,2,0,107,3,0,114,96, + 0,124,0,0,106,3,0,124,0,0,106,4,0,124,1,0, + 131,2,0,92,2,0,125,2,0,125,3,0,124,2,0,100, + 0,0,107,8,0,114,84,0,124,3,0,124,0,0,95,6, + 0,110,0,0,124,1,0,124,0,0,95,2,0,110,0,0, + 124,0,0,106,6,0,83,40,1,0,0,0,78,40,7,0, + 0,0,117,5,0,0,0,116,117,112,108,101,117,16,0,0, + 0,95,103,101,116,95,112,97,114,101,110,116,95,112,97,116, + 104,117,17,0,0,0,95,108,97,115,116,95,112,97,114,101, + 110,116,95,112,97,116,104,117,12,0,0,0,95,112,97,116, + 104,95,102,105,110,100,101,114,117,5,0,0,0,95,110,97, + 109,101,117,4,0,0,0,78,111,110,101,117,5,0,0,0, + 95,112,97,116,104,40,4,0,0,0,117,4,0,0,0,115, + 101,108,102,117,11,0,0,0,112,97,114,101,110,116,95,112, + 97,116,104,117,6,0,0,0,108,111,97,100,101,114,117,8, + 0,0,0,110,101,119,95,112,97,116,104,40,0,0,0,0, + 40,0,0,0,0,117,29,0,0,0,60,102,114,111,122,101, + 110,32,105,109,112,111,114,116,108,105,98,46,95,98,111,111, + 116,115,116,114,97,112,62,117,12,0,0,0,95,114,101,99, + 97,108,99,117,108,97,116,101,158,4,0,0,115,14,0,0, + 0,0,2,18,1,15,1,27,3,12,1,12,1,12,1,117, + 27,0,0,0,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,1,0,0,0,2,0,0,0, + 67,0,0,0,115,16,0,0,0,116,0,0,124,0,0,106, + 1,0,131,0,0,131,1,0,83,40,1,0,0,0,78,40, + 2,0,0,0,117,4,0,0,0,105,116,101,114,117,12,0, + 0,0,95,114,101,99,97,108,99,117,108,97,116,101,40,1, + 0,0,0,117,4,0,0,0,115,101,108,102,40,0,0,0, + 0,40,0,0,0,0,117,29,0,0,0,60,102,114,111,122, + 101,110,32,105,109,112,111,114,116,108,105,98,46,95,98,111, + 111,116,115,116,114,97,112,62,117,8,0,0,0,95,95,105, + 116,101,114,95,95,170,4,0,0,115,2,0,0,0,0,1, + 117,23,0,0,0,95,78,97,109,101,115,112,97,99,101,80, + 97,116,104,46,95,95,105,116,101,114,95,95,99,1,0,0, + 0,0,0,0,0,1,0,0,0,2,0,0,0,67,0,0, + 0,115,16,0,0,0,116,0,0,124,0,0,106,1,0,131, + 0,0,131,1,0,83,40,1,0,0,0,78,40,2,0,0, + 0,117,3,0,0,0,108,101,110,117,12,0,0,0,95,114, + 101,99,97,108,99,117,108,97,116,101,40,1,0,0,0,117, + 4,0,0,0,115,101,108,102,40,0,0,0,0,40,0,0, + 0,0,117,29,0,0,0,60,102,114,111,122,101,110,32,105, + 109,112,111,114,116,108,105,98,46,95,98,111,111,116,115,116, + 114,97,112,62,117,7,0,0,0,95,95,108,101,110,95,95, + 173,4,0,0,115,2,0,0,0,0,1,117,22,0,0,0, + 95,78,97,109,101,115,112,97,99,101,80,97,116,104,46,95, + 95,108,101,110,95,95,99,1,0,0,0,0,0,0,0,1, + 0,0,0,2,0,0,0,67,0,0,0,115,16,0,0,0, + 100,1,0,106,0,0,124,0,0,106,1,0,131,1,0,83, + 40,2,0,0,0,78,117,20,0,0,0,95,78,97,109,101, + 115,112,97,99,101,80,97,116,104,40,123,33,114,125,41,40, + 2,0,0,0,117,6,0,0,0,102,111,114,109,97,116,117, + 5,0,0,0,95,112,97,116,104,40,1,0,0,0,117,4, + 0,0,0,115,101,108,102,40,0,0,0,0,40,0,0,0, + 0,117,29,0,0,0,60,102,114,111,122,101,110,32,105,109, + 112,111,114,116,108,105,98,46,95,98,111,111,116,115,116,114, + 97,112,62,117,8,0,0,0,95,95,114,101,112,114,95,95, + 176,4,0,0,115,2,0,0,0,0,1,117,23,0,0,0, + 95,78,97,109,101,115,112,97,99,101,80,97,116,104,46,95, + 95,114,101,112,114,95,95,99,2,0,0,0,0,0,0,0, + 2,0,0,0,2,0,0,0,67,0,0,0,115,16,0,0, + 0,124,1,0,124,0,0,106,0,0,131,0,0,107,6,0, + 83,40,1,0,0,0,78,40,1,0,0,0,117,12,0,0, + 0,95,114,101,99,97,108,99,117,108,97,116,101,40,2,0, + 0,0,117,4,0,0,0,115,101,108,102,117,4,0,0,0, + 105,116,101,109,40,0,0,0,0,40,0,0,0,0,117,29, + 0,0,0,60,102,114,111,122,101,110,32,105,109,112,111,114, + 116,108,105,98,46,95,98,111,111,116,115,116,114,97,112,62, + 117,12,0,0,0,95,95,99,111,110,116,97,105,110,115,95, + 95,179,4,0,0,115,2,0,0,0,0,1,117,27,0,0, + 0,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,2,0,0,0,2,0,0,0,67,0,0, + 0,115,20,0,0,0,124,0,0,106,0,0,106,1,0,124, + 1,0,131,1,0,1,100,0,0,83,40,1,0,0,0,78, + 40,2,0,0,0,117,5,0,0,0,95,112,97,116,104,117, + 6,0,0,0,97,112,112,101,110,100,40,2,0,0,0,117, + 4,0,0,0,115,101,108,102,117,4,0,0,0,105,116,101, + 109,40,0,0,0,0,40,0,0,0,0,117,29,0,0,0, + 60,102,114,111,122,101,110,32,105,109,112,111,114,116,108,105, + 98,46,95,98,111,111,116,115,116,114,97,112,62,117,6,0, + 0,0,97,112,112,101,110,100,182,4,0,0,115,2,0,0, + 0,0,1,117,21,0,0,0,95,78,97,109,101,115,112,97, + 99,101,80,97,116,104,46,97,112,112,101,110,100,78,40,13, + 0,0,0,117,8,0,0,0,95,95,110,97,109,101,95,95, + 117,10,0,0,0,95,95,109,111,100,117,108,101,95,95,117, + 12,0,0,0,95,95,113,117,97,108,110,97,109,101,95,95, + 117,7,0,0,0,95,95,100,111,99,95,95,117,8,0,0, + 0,95,95,105,110,105,116,95,95,117,23,0,0,0,95,102, + 105,110,100,95,112,97,114,101,110,116,95,112,97,116,104,95, + 110,97,109,101,115,117,16,0,0,0,95,103,101,116,95,112, + 97,114,101,110,116,95,112,97,116,104,117,12,0,0,0,95, + 114,101,99,97,108,99,117,108,97,116,101,117,8,0,0,0, + 95,95,105,116,101,114,95,95,117,7,0,0,0,95,95,108, + 101,110,95,95,117,8,0,0,0,95,95,114,101,112,114,95, + 95,117,12,0,0,0,95,95,99,111,110,116,97,105,110,115, + 95,95,117,6,0,0,0,97,112,112,101,110,100,40,1,0, + 0,0,117,10,0,0,0,95,95,108,111,99,97,108,115,95, + 95,40,0,0,0,0,40,0,0,0,0,117,29,0,0,0, + 60,102,114,111,122,101,110,32,105,109,112,111,114,116,108,105, + 98,46,95,98,111,111,116,115,116,114,97,112,62,117,14,0, + 0,0,95,78,97,109,101,115,112,97,99,101,80,97,116,104, + 131,4,0,0,115,20,0,0,0,16,5,6,2,12,6,12, + 10,12,4,12,12,12,3,12,3,12,3,12,3,117,14,0, + 0,0,95,78,97,109,101,115,112,97,99,101,80,97,116,104, + 99,1,0,0,0,0,0,0,0,1,0,0,0,3,0,0, + 0,66,0,0,0,115,68,0,0,0,124,0,0,69,101,0, + 0,90,1,0,100,0,0,90,2,0,100,1,0,100,2,0, + 132,0,0,90,3,0,101,4,0,100,3,0,100,4,0,132, + 0,0,131,1,0,90,5,0,101,6,0,100,5,0,100,6, + 0,132,0,0,131,1,0,90,7,0,100,7,0,83,40,8, + 0,0,0,117,15,0,0,0,78,97,109,101,115,112,97,99, + 101,76,111,97,100,101,114,99,4,0,0,0,0,0,0,0, + 4,0,0,0,4,0,0,0,67,0,0,0,115,25,0,0, + 0,116,0,0,124,1,0,124,2,0,124,3,0,131,3,0, + 124,0,0,95,1,0,100,0,0,83,40,1,0,0,0,78, + 40,2,0,0,0,117,14,0,0,0,95,78,97,109,101,115, + 112,97,99,101,80,97,116,104,117,5,0,0,0,95,112,97, + 116,104,40,4,0,0,0,117,4,0,0,0,115,101,108,102, + 117,4,0,0,0,110,97,109,101,117,4,0,0,0,112,97, + 116,104,117,11,0,0,0,112,97,116,104,95,102,105,110,100, + 101,114,40,0,0,0,0,40,0,0,0,0,117,29,0,0, + 0,60,102,114,111,122,101,110,32,105,109,112,111,114,116,108, + 105,98,46,95,98,111,111,116,115,116,114,97,112,62,117,8, + 0,0,0,95,95,105,110,105,116,95,95,187,4,0,0,115, + 2,0,0,0,0,1,117,24,0,0,0,78,97,109,101,115, + 112,97,99,101,76,111,97,100,101,114,46,95,95,105,110,105, + 116,95,95,99,2,0,0,0,0,0,0,0,2,0,0,0, + 2,0,0,0,67,0,0,0,115,16,0,0,0,100,1,0, + 106,0,0,124,1,0,106,1,0,131,1,0,83,40,2,0, + 0,0,78,117,25,0,0,0,60,109,111,100,117,108,101,32, + 39,123,125,39,32,40,110,97,109,101,115,112,97,99,101,41, + 62,40,2,0,0,0,117,6,0,0,0,102,111,114,109,97, + 116,117,8,0,0,0,95,95,110,97,109,101,95,95,40,2, + 0,0,0,117,3,0,0,0,99,108,115,117,6,0,0,0, + 109,111,100,117,108,101,40,0,0,0,0,40,0,0,0,0, + 117,29,0,0,0,60,102,114,111,122,101,110,32,105,109,112, + 111,114,116,108,105,98,46,95,98,111,111,116,115,116,114,97, + 112,62,117,11,0,0,0,109,111,100,117,108,101,95,114,101, + 112,114,190,4,0,0,115,2,0,0,0,0,2,117,27,0, + 0,0,78,97,109,101,115,112,97,99,101,76,111,97,100,101, + 114,46,109,111,100,117,108,101,95,114,101,112,114,99,2,0, + 0,0,0,0,0,0,2,0,0,0,3,0,0,0,67,0, + 0,0,115,32,0,0,0,116,0,0,100,1,0,124,0,0, + 106,1,0,131,2,0,1,124,0,0,106,1,0,124,1,0, + 95,2,0,124,1,0,83,40,2,0,0,0,117,24,0,0, + 0,76,111,97,100,32,97,32,110,97,109,101,115,112,97,99, + 101,32,109,111,100,117,108,101,46,117,38,0,0,0,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,40,3,0,0,0,117,16,0,0,0,95,118, + 101,114,98,111,115,101,95,109,101,115,115,97,103,101,117,5, + 0,0,0,95,112,97,116,104,117,8,0,0,0,95,95,112, + 97,116,104,95,95,40,2,0,0,0,117,4,0,0,0,115, + 101,108,102,117,6,0,0,0,109,111,100,117,108,101,40,0, + 0,0,0,40,0,0,0,0,117,29,0,0,0,60,102,114, + 111,122,101,110,32,105,109,112,111,114,116,108,105,98,46,95, + 98,111,111,116,115,116,114,97,112,62,117,11,0,0,0,108, + 111,97,100,95,109,111,100,117,108,101,194,4,0,0,115,6, + 0,0,0,0,3,16,1,12,1,117,27,0,0,0,78,97, + 109,101,115,112,97,99,101,76,111,97,100,101,114,46,108,111, + 97,100,95,109,111,100,117,108,101,78,40,8,0,0,0,117, + 8,0,0,0,95,95,110,97,109,101,95,95,117,10,0,0, + 0,95,95,109,111,100,117,108,101,95,95,117,12,0,0,0, + 95,95,113,117,97,108,110,97,109,101,95,95,117,8,0,0, + 0,95,95,105,110,105,116,95,95,117,11,0,0,0,99,108, + 97,115,115,109,101,116,104,111,100,117,11,0,0,0,109,111, + 100,117,108,101,95,114,101,112,114,117,17,0,0,0,109,111, + 100,117,108,101,95,102,111,114,95,108,111,97,100,101,114,117, + 11,0,0,0,108,111,97,100,95,109,111,100,117,108,101,40, + 1,0,0,0,117,10,0,0,0,95,95,108,111,99,97,108, + 115,95,95,40,0,0,0,0,40,0,0,0,0,117,29,0, 0,0,60,102,114,111,122,101,110,32,105,109,112,111,114,116, 108,105,98,46,95,98,111,111,116,115,116,114,97,112,62,117, - 8,0,0,0,95,95,101,120,105,116,95,95,170,5,0,0, - 115,2,0,0,0,0,2,117,27,0,0,0,95,73,109,112, - 111,114,116,76,111,99,107,67,111,110,116,101,120,116,46,95, - 95,101,120,105,116,95,95,78,40,6,0,0,0,117,8,0, - 0,0,95,95,110,97,109,101,95,95,117,10,0,0,0,95, - 95,109,111,100,117,108,101,95,95,117,12,0,0,0,95,95, - 113,117,97,108,110,97,109,101,95,95,117,7,0,0,0,95, - 95,100,111,99,95,95,117,9,0,0,0,95,95,101,110,116, - 101,114,95,95,117,8,0,0,0,95,95,101,120,105,116,95, + 15,0,0,0,78,97,109,101,115,112,97,99,101,76,111,97, + 100,101,114,186,4,0,0,115,6,0,0,0,16,1,12,3, + 18,4,117,15,0,0,0,78,97,109,101,115,112,97,99,101, + 76,111,97,100,101,114,99,1,0,0,0,0,0,0,0,1, + 0,0,0,4,0,0,0,66,0,0,0,115,119,0,0,0, + 124,0,0,69,101,0,0,90,1,0,100,0,0,90,2,0, + 100,1,0,90,3,0,101,4,0,100,2,0,100,3,0,132, + 0,0,131,1,0,90,5,0,101,4,0,100,4,0,100,5, + 0,132,0,0,131,1,0,90,6,0,101,4,0,100,6,0, + 100,7,0,132,0,0,131,1,0,90,7,0,101,4,0,100, + 8,0,100,9,0,132,0,0,131,1,0,90,8,0,101,4, + 0,100,12,0,100,10,0,100,11,0,132,1,0,131,1,0, + 90,10,0,100,12,0,83,40,13,0,0,0,117,10,0,0, + 0,80,97,116,104,70,105,110,100,101,114,117,62,0,0,0, + 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,1, + 0,0,0,0,0,0,0,2,0,0,0,4,0,0,0,67, + 0,0,0,115,58,0,0,0,120,51,0,116,0,0,106,1, + 0,106,2,0,131,0,0,68,93,34,0,125,1,0,116,3, + 0,124,1,0,100,1,0,131,2,0,114,16,0,124,1,0, + 106,4,0,131,0,0,1,113,16,0,113,16,0,87,100,2, + 0,83,40,3,0,0,0,117,125,0,0,0,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,117,17,0,0,0,105,110, + 118,97,108,105,100,97,116,101,95,99,97,99,104,101,115,78, + 40,5,0,0,0,117,3,0,0,0,115,121,115,117,19,0, + 0,0,112,97,116,104,95,105,109,112,111,114,116,101,114,95, + 99,97,99,104,101,117,6,0,0,0,118,97,108,117,101,115, + 117,7,0,0,0,104,97,115,97,116,116,114,117,17,0,0, + 0,105,110,118,97,108,105,100,97,116,101,95,99,97,99,104, + 101,115,40,2,0,0,0,117,3,0,0,0,99,108,115,117, + 6,0,0,0,102,105,110,100,101,114,40,0,0,0,0,40, + 0,0,0,0,117,29,0,0,0,60,102,114,111,122,101,110, + 32,105,109,112,111,114,116,108,105,98,46,95,98,111,111,116, + 115,116,114,97,112,62,117,17,0,0,0,105,110,118,97,108, + 105,100,97,116,101,95,99,97,99,104,101,115,208,4,0,0, + 115,6,0,0,0,0,4,22,1,15,1,117,28,0,0,0, + 80,97,116,104,70,105,110,100,101,114,46,105,110,118,97,108, + 105,100,97,116,101,95,99,97,99,104,101,115,99,2,0,0, + 0,0,0,0,0,3,0,0,0,12,0,0,0,67,0,0, + 0,115,94,0,0,0,116,0,0,106,1,0,115,28,0,116, + 2,0,106,3,0,100,1,0,116,4,0,131,2,0,1,110, + 0,0,120,59,0,116,0,0,106,1,0,68,93,44,0,125, + 2,0,121,14,0,124,2,0,124,1,0,131,1,0,83,87, + 113,38,0,4,116,5,0,107,10,0,114,81,0,1,1,1, + 119,38,0,89,113,38,0,88,113,38,0,87,100,2,0,83, + 100,2,0,83,40,3,0,0,0,117,113,0,0,0,83,101, + 97,114,99,104,32,115,101,113,117,101,110,99,101,32,111,102, + 32,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,10, + 10,32,32,32,32,32,32,32,32,73,102,32,39,104,111,111, + 107,115,39,32,105,115,32,102,97,108,115,101,32,116,104,101, + 110,32,117,115,101,32,115,121,115,46,112,97,116,104,95,104, + 111,111,107,115,46,10,10,32,32,32,32,32,32,32,32,117, + 23,0,0,0,115,121,115,46,112,97,116,104,95,104,111,111, + 107,115,32,105,115,32,101,109,112,116,121,78,40,7,0,0, + 0,117,3,0,0,0,115,121,115,117,10,0,0,0,112,97, + 116,104,95,104,111,111,107,115,117,9,0,0,0,95,119,97, + 114,110,105,110,103,115,117,4,0,0,0,119,97,114,110,117, + 13,0,0,0,73,109,112,111,114,116,87,97,114,110,105,110, + 103,117,11,0,0,0,73,109,112,111,114,116,69,114,114,111, + 114,117,4,0,0,0,78,111,110,101,40,3,0,0,0,117, + 3,0,0,0,99,108,115,117,4,0,0,0,112,97,116,104, + 117,4,0,0,0,104,111,111,107,40,0,0,0,0,40,0, + 0,0,0,117,29,0,0,0,60,102,114,111,122,101,110,32, + 105,109,112,111,114,116,108,105,98,46,95,98,111,111,116,115, + 116,114,97,112,62,117,11,0,0,0,95,112,97,116,104,95, + 104,111,111,107,115,216,4,0,0,115,16,0,0,0,0,7, + 9,1,19,1,16,1,3,1,14,1,13,1,12,2,117,22, + 0,0,0,80,97,116,104,70,105,110,100,101,114,46,95,112, + 97,116,104,95,104,111,111,107,115,99,2,0,0,0,0,0, + 0,0,3,0,0,0,11,0,0,0,67,0,0,0,115,91, + 0,0,0,124,1,0,100,1,0,107,2,0,114,21,0,100, + 2,0,125,1,0,110,0,0,121,17,0,116,0,0,106,1, + 0,124,1,0,25,125,2,0,87,110,46,0,4,116,2,0, + 107,10,0,114,86,0,1,1,1,124,0,0,106,3,0,124, + 1,0,131,1,0,125,2,0,124,2,0,116,0,0,106,1, + 0,124,1,0,60,89,110,1,0,88,124,2,0,83,40,3, + 0,0,0,117,210,0,0,0,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,117,0,0,0,0,117, + 1,0,0,0,46,40,4,0,0,0,117,3,0,0,0,115, + 121,115,117,19,0,0,0,112,97,116,104,95,105,109,112,111, + 114,116,101,114,95,99,97,99,104,101,117,8,0,0,0,75, + 101,121,69,114,114,111,114,117,11,0,0,0,95,112,97,116, + 104,95,104,111,111,107,115,40,3,0,0,0,117,3,0,0, + 0,99,108,115,117,4,0,0,0,112,97,116,104,117,6,0, + 0,0,102,105,110,100,101,114,40,0,0,0,0,40,0,0, + 0,0,117,29,0,0,0,60,102,114,111,122,101,110,32,105, + 109,112,111,114,116,108,105,98,46,95,98,111,111,116,115,116, + 114,97,112,62,117,20,0,0,0,95,112,97,116,104,95,105, + 109,112,111,114,116,101,114,95,99,97,99,104,101,233,4,0, + 0,115,16,0,0,0,0,8,12,1,9,1,3,1,17,1, + 13,1,15,1,18,1,117,31,0,0,0,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,8,0,0,0,4,0,0,0,67,0,0,0,115, + 162,0,0,0,103,0,0,125,3,0,120,149,0,124,2,0, + 68,93,131,0,125,4,0,124,0,0,106,0,0,124,4,0, + 131,1,0,125,5,0,124,5,0,100,2,0,107,9,0,114, + 13,0,116,2,0,124,5,0,100,1,0,131,2,0,114,85, + 0,124,5,0,106,3,0,124,1,0,131,1,0,92,2,0, + 125,6,0,125,7,0,110,21,0,124,5,0,106,4,0,124, + 1,0,131,1,0,125,6,0,103,0,0,125,7,0,124,6, + 0,100,2,0,107,9,0,114,128,0,124,6,0,124,3,0, + 102,2,0,83,124,3,0,106,5,0,124,7,0,131,1,0, + 1,113,13,0,113,13,0,87,100,2,0,124,3,0,102,2, + 0,83,100,2,0,83,40,3,0,0,0,117,63,0,0,0, + 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,117, + 11,0,0,0,102,105,110,100,95,108,111,97,100,101,114,78, + 40,6,0,0,0,117,20,0,0,0,95,112,97,116,104,95, + 105,109,112,111,114,116,101,114,95,99,97,99,104,101,117,4, + 0,0,0,78,111,110,101,117,7,0,0,0,104,97,115,97, + 116,116,114,117,11,0,0,0,102,105,110,100,95,108,111,97, + 100,101,114,117,11,0,0,0,102,105,110,100,95,109,111,100, + 117,108,101,117,6,0,0,0,101,120,116,101,110,100,40,8, + 0,0,0,117,3,0,0,0,99,108,115,117,8,0,0,0, + 102,117,108,108,110,97,109,101,117,4,0,0,0,112,97,116, + 104,117,14,0,0,0,110,97,109,101,115,112,97,99,101,95, + 112,97,116,104,117,5,0,0,0,101,110,116,114,121,117,6, + 0,0,0,102,105,110,100,101,114,117,6,0,0,0,108,111, + 97,100,101,114,117,8,0,0,0,112,111,114,116,105,111,110, + 115,40,0,0,0,0,40,0,0,0,0,117,29,0,0,0, + 60,102,114,111,122,101,110,32,105,109,112,111,114,116,108,105, + 98,46,95,98,111,111,116,115,116,114,97,112,62,117,11,0, + 0,0,95,103,101,116,95,108,111,97,100,101,114,250,4,0, + 0,115,24,0,0,0,0,5,6,1,13,1,15,1,12,1, + 15,1,24,2,15,1,6,1,12,2,10,5,20,2,117,22, + 0,0,0,80,97,116,104,70,105,110,100,101,114,46,95,103, + 101,116,95,108,111,97,100,101,114,99,3,0,0,0,0,0, + 0,0,5,0,0,0,4,0,0,0,67,0,0,0,115,97, + 0,0,0,124,2,0,100,1,0,107,8,0,114,24,0,116, + 1,0,106,2,0,125,2,0,110,0,0,124,0,0,106,3, + 0,124,1,0,124,2,0,131,2,0,92,2,0,125,3,0, + 125,4,0,124,3,0,100,1,0,107,9,0,114,64,0,124, + 3,0,83,124,4,0,114,89,0,116,4,0,124,1,0,124, + 4,0,124,0,0,106,3,0,131,3,0,83,100,1,0,83, + 100,1,0,83,40,2,0,0,0,117,98,0,0,0,70,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, + 78,40,5,0,0,0,117,4,0,0,0,78,111,110,101,117, + 3,0,0,0,115,121,115,117,4,0,0,0,112,97,116,104, + 117,11,0,0,0,95,103,101,116,95,108,111,97,100,101,114, + 117,15,0,0,0,78,97,109,101,115,112,97,99,101,76,111, + 97,100,101,114,40,5,0,0,0,117,3,0,0,0,99,108, + 115,117,8,0,0,0,102,117,108,108,110,97,109,101,117,4, + 0,0,0,112,97,116,104,117,6,0,0,0,108,111,97,100, + 101,114,117,14,0,0,0,110,97,109,101,115,112,97,99,101, + 95,112,97,116,104,40,0,0,0,0,40,0,0,0,0,117, + 29,0,0,0,60,102,114,111,122,101,110,32,105,109,112,111, + 114,116,108,105,98,46,95,98,111,111,116,115,116,114,97,112, + 62,117,11,0,0,0,102,105,110,100,95,109,111,100,117,108, + 101,19,5,0,0,115,16,0,0,0,0,4,12,1,12,1, + 24,1,12,1,4,2,6,3,19,2,117,22,0,0,0,80, + 97,116,104,70,105,110,100,101,114,46,102,105,110,100,95,109, + 111,100,117,108,101,78,40,11,0,0,0,117,8,0,0,0, + 95,95,110,97,109,101,95,95,117,10,0,0,0,95,95,109, + 111,100,117,108,101,95,95,117,12,0,0,0,95,95,113,117, + 97,108,110,97,109,101,95,95,117,7,0,0,0,95,95,100, + 111,99,95,95,117,11,0,0,0,99,108,97,115,115,109,101, + 116,104,111,100,117,17,0,0,0,105,110,118,97,108,105,100, + 97,116,101,95,99,97,99,104,101,115,117,11,0,0,0,95, + 112,97,116,104,95,104,111,111,107,115,117,20,0,0,0,95, + 112,97,116,104,95,105,109,112,111,114,116,101,114,95,99,97, + 99,104,101,117,11,0,0,0,95,103,101,116,95,108,111,97, + 100,101,114,117,4,0,0,0,78,111,110,101,117,11,0,0, + 0,102,105,110,100,95,109,111,100,117,108,101,40,1,0,0, + 0,117,10,0,0,0,95,95,108,111,99,97,108,115,95,95, + 40,0,0,0,0,40,0,0,0,0,117,29,0,0,0,60, + 102,114,111,122,101,110,32,105,109,112,111,114,116,108,105,98, + 46,95,98,111,111,116,115,116,114,97,112,62,117,10,0,0, + 0,80,97,116,104,70,105,110,100,101,114,204,4,0,0,115, + 14,0,0,0,16,2,6,2,18,8,18,17,18,17,18,25, + 3,1,117,10,0,0,0,80,97,116,104,70,105,110,100,101, + 114,99,1,0,0,0,0,0,0,0,1,0,0,0,3,0, + 0,0,66,0,0,0,115,110,0,0,0,124,0,0,69,101, + 0,0,90,1,0,100,0,0,90,2,0,100,1,0,90,3, + 0,100,2,0,100,3,0,132,0,0,90,4,0,100,4,0, + 100,5,0,132,0,0,90,5,0,101,6,0,90,7,0,100, + 6,0,100,7,0,132,0,0,90,8,0,100,8,0,100,9, + 0,132,0,0,90,9,0,101,10,0,100,10,0,100,11,0, + 132,0,0,131,1,0,90,11,0,100,12,0,100,13,0,132, + 0,0,90,12,0,100,14,0,83,40,15,0,0,0,117,10, + 0,0,0,70,105,108,101,70,105,110,100,101,114,117,172,0, + 0,0,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,5,0,0,0,5,0,0,0,7, + 0,0,0,115,122,0,0,0,103,0,0,125,3,0,120,52, + 0,124,2,0,68,93,44,0,92,2,0,137,0,0,125,4, + 0,124,3,0,106,0,0,135,0,0,102,1,0,100,1,0, + 100,2,0,134,0,0,124,4,0,68,131,1,0,131,1,0, + 1,113,13,0,87,124,3,0,124,0,0,95,1,0,124,1, + 0,112,79,0,100,3,0,124,0,0,95,2,0,100,6,0, + 124,0,0,95,3,0,116,4,0,131,0,0,124,0,0,95, + 5,0,116,4,0,131,0,0,124,0,0,95,6,0,100,5, + 0,83,40,7,0,0,0,117,201,0,0,0,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,51,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,44,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,32,114,101,99,111, + 103,110,105,122,101,115,44,10,32,32,32,32,32,32,32,32, + 97,110,100,32,97,32,98,111,111,108,101,97,110,32,111,102, + 32,119,104,101,116,104,101,114,32,116,104,101,32,108,111,97, + 100,101,114,32,104,97,110,100,108,101,115,32,112,97,99,107, + 97,103,101,115,46,99,1,0,0,0,0,0,0,0,2,0, + 0,0,3,0,0,0,51,0,0,0,115,27,0,0,0,124, + 0,0,93,17,0,125,1,0,124,1,0,136,0,0,102,2, + 0,86,1,113,3,0,100,0,0,83,40,1,0,0,0,78, + 40,0,0,0,0,40,2,0,0,0,117,2,0,0,0,46, + 48,117,6,0,0,0,115,117,102,102,105,120,40,1,0,0, + 0,117,6,0,0,0,108,111,97,100,101,114,40,0,0,0, + 0,117,29,0,0,0,60,102,114,111,122,101,110,32,105,109, + 112,111,114,116,108,105,98,46,95,98,111,111,116,115,116,114, + 97,112,62,117,9,0,0,0,60,103,101,110,101,120,112,114, + 62,52,5,0,0,115,2,0,0,0,6,0,117,38,0,0, + 0,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,117,1,0,0,0,46,105,1,0, + 0,0,78,105,255,255,255,255,40,7,0,0,0,117,6,0, + 0,0,101,120,116,101,110,100,117,8,0,0,0,95,108,111, + 97,100,101,114,115,117,4,0,0,0,112,97,116,104,117,11, + 0,0,0,95,112,97,116,104,95,109,116,105,109,101,117,3, + 0,0,0,115,101,116,117,11,0,0,0,95,112,97,116,104, + 95,99,97,99,104,101,117,19,0,0,0,95,114,101,108,97, + 120,101,100,95,112,97,116,104,95,99,97,99,104,101,40,5, + 0,0,0,117,4,0,0,0,115,101,108,102,117,4,0,0, + 0,112,97,116,104,117,7,0,0,0,100,101,116,97,105,108, + 115,117,7,0,0,0,108,111,97,100,101,114,115,117,8,0, + 0,0,115,117,102,102,105,120,101,115,40,0,0,0,0,40, + 1,0,0,0,117,6,0,0,0,108,111,97,100,101,114,117, + 29,0,0,0,60,102,114,111,122,101,110,32,105,109,112,111, + 114,116,108,105,98,46,95,98,111,111,116,115,116,114,97,112, + 62,117,8,0,0,0,95,95,105,110,105,116,95,95,46,5, + 0,0,115,16,0,0,0,0,4,6,1,19,1,36,1,9, + 2,15,1,9,1,12,1,117,19,0,0,0,70,105,108,101, + 70,105,110,100,101,114,46,95,95,105,110,105,116,95,95,99, + 1,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0, + 67,0,0,0,115,13,0,0,0,100,3,0,124,0,0,95, + 0,0,100,2,0,83,40,4,0,0,0,117,31,0,0,0, + 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,105, + 1,0,0,0,78,105,255,255,255,255,40,1,0,0,0,117, + 11,0,0,0,95,112,97,116,104,95,109,116,105,109,101,40, + 1,0,0,0,117,4,0,0,0,115,101,108,102,40,0,0, + 0,0,40,0,0,0,0,117,29,0,0,0,60,102,114,111, + 122,101,110,32,105,109,112,111,114,116,108,105,98,46,95,98, + 111,111,116,115,116,114,97,112,62,117,17,0,0,0,105,110, + 118,97,108,105,100,97,116,101,95,99,97,99,104,101,115,60, + 5,0,0,115,2,0,0,0,0,2,117,28,0,0,0,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,12,0,0,0,13,0,0,0,67,0,0,0, + 115,172,1,0,0,100,5,0,125,2,0,124,1,0,106,1, + 0,100,1,0,131,1,0,100,2,0,25,125,3,0,121,25, + 0,116,2,0,106,3,0,124,0,0,106,4,0,131,1,0, + 106,5,0,125,4,0,87,110,24,0,4,116,6,0,107,10, + 0,114,76,0,1,1,1,100,6,0,125,4,0,89,110,1, + 0,88,124,4,0,124,0,0,106,7,0,107,3,0,114,114, + 0,124,0,0,106,8,0,131,0,0,1,124,4,0,124,0, + 0,95,7,0,110,0,0,116,9,0,131,0,0,114,147,0, + 124,0,0,106,10,0,125,5,0,124,3,0,106,11,0,131, + 0,0,125,6,0,110,15,0,124,0,0,106,12,0,125,5, + 0,124,3,0,125,6,0,124,6,0,124,5,0,107,6,0, + 114,45,1,116,13,0,124,0,0,106,4,0,124,3,0,131, + 2,0,125,7,0,116,14,0,124,7,0,131,1,0,114,45, + 1,120,91,0,124,0,0,106,15,0,68,93,71,0,92,2, + 0,125,8,0,125,9,0,100,4,0,124,8,0,23,125,10, + 0,116,13,0,124,7,0,124,10,0,131,2,0,125,11,0, + 116,16,0,124,11,0,131,1,0,114,214,0,124,9,0,124, + 1,0,124,11,0,131,2,0,124,7,0,103,1,0,102,2, + 0,83,113,214,0,87,100,7,0,125,2,0,113,45,1,110, + 0,0,120,95,0,124,0,0,106,15,0,68,93,84,0,92, + 2,0,125,8,0,125,9,0,124,6,0,124,8,0,23,124, + 5,0,107,6,0,114,55,1,116,13,0,124,0,0,106,4, + 0,124,3,0,124,8,0,23,131,2,0,125,11,0,116,16, + 0,124,11,0,131,1,0,114,139,1,124,9,0,124,1,0, + 124,11,0,131,2,0,103,0,0,102,2,0,83,113,55,1, + 113,55,1,87,124,2,0,114,162,1,100,8,0,124,7,0, + 103,1,0,102,2,0,83,100,8,0,103,0,0,102,2,0, + 83,40,9,0,0,0,117,125,0,0,0,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,117,1,0,0,0,46,105,2, + 0,0,0,105,1,0,0,0,117,8,0,0,0,95,95,105, + 110,105,116,95,95,70,105,255,255,255,255,84,78,40,19,0, + 0,0,117,5,0,0,0,70,97,108,115,101,117,10,0,0, + 0,114,112,97,114,116,105,116,105,111,110,117,3,0,0,0, + 95,111,115,117,4,0,0,0,115,116,97,116,117,4,0,0, + 0,112,97,116,104,117,8,0,0,0,115,116,95,109,116,105, + 109,101,117,7,0,0,0,79,83,69,114,114,111,114,117,11, + 0,0,0,95,112,97,116,104,95,109,116,105,109,101,117,11, + 0,0,0,95,102,105,108,108,95,99,97,99,104,101,117,11, + 0,0,0,95,114,101,108,97,120,95,99,97,115,101,117,19, + 0,0,0,95,114,101,108,97,120,101,100,95,112,97,116,104, + 95,99,97,99,104,101,117,5,0,0,0,108,111,119,101,114, + 117,11,0,0,0,95,112,97,116,104,95,99,97,99,104,101, + 117,10,0,0,0,95,112,97,116,104,95,106,111,105,110,117, + 11,0,0,0,95,112,97,116,104,95,105,115,100,105,114,117, + 8,0,0,0,95,108,111,97,100,101,114,115,117,12,0,0, + 0,95,112,97,116,104,95,105,115,102,105,108,101,117,4,0, + 0,0,84,114,117,101,117,4,0,0,0,78,111,110,101,40, + 12,0,0,0,117,4,0,0,0,115,101,108,102,117,8,0, + 0,0,102,117,108,108,110,97,109,101,117,12,0,0,0,105, + 115,95,110,97,109,101,115,112,97,99,101,117,11,0,0,0, + 116,97,105,108,95,109,111,100,117,108,101,117,5,0,0,0, + 109,116,105,109,101,117,5,0,0,0,99,97,99,104,101,117, + 12,0,0,0,99,97,99,104,101,95,109,111,100,117,108,101, + 117,9,0,0,0,98,97,115,101,95,112,97,116,104,117,6, + 0,0,0,115,117,102,102,105,120,117,6,0,0,0,108,111, + 97,100,101,114,117,13,0,0,0,105,110,105,116,95,102,105, + 108,101,110,97,109,101,117,9,0,0,0,102,117,108,108,95, + 112,97,116,104,40,0,0,0,0,40,0,0,0,0,117,29, + 0,0,0,60,102,114,111,122,101,110,32,105,109,112,111,114, + 116,108,105,98,46,95,98,111,111,116,115,116,114,97,112,62, + 117,11,0,0,0,102,105,110,100,95,108,111,97,100,101,114, + 66,5,0,0,115,62,0,0,0,0,3,6,1,19,1,3, + 1,25,1,13,1,11,1,15,1,10,1,12,2,9,1,9, + 1,15,2,9,1,6,2,12,1,18,1,12,1,22,1,10, + 1,15,1,12,1,26,4,12,2,22,1,16,1,22,1,12, + 1,26,1,6,1,13,1,117,22,0,0,0,70,105,108,101, + 70,105,110,100,101,114,46,102,105,110,100,95,108,111,97,100, + 101,114,99,1,0,0,0,0,0,0,0,9,0,0,0,12, + 0,0,0,67,0,0,0,115,255,0,0,0,124,0,0,106, + 0,0,125,1,0,121,19,0,116,1,0,106,2,0,124,1, + 0,131,1,0,125,2,0,87,110,24,0,4,116,3,0,107, + 10,0,114,54,0,1,1,1,103,0,0,125,2,0,89,110, + 1,0,88,116,4,0,106,5,0,106,6,0,100,1,0,131, + 1,0,115,91,0,116,7,0,124,2,0,131,1,0,124,0, + 0,95,8,0,110,111,0,116,7,0,131,0,0,125,3,0, + 120,90,0,124,2,0,68,93,82,0,125,4,0,124,4,0, + 106,9,0,100,2,0,131,1,0,92,3,0,125,5,0,125, + 6,0,125,7,0,124,6,0,114,170,0,100,3,0,106,10, + 0,124,5,0,124,7,0,106,11,0,131,0,0,131,2,0, + 125,8,0,110,6,0,124,5,0,125,8,0,124,3,0,106, + 12,0,124,8,0,131,1,0,1,113,107,0,87,124,3,0, + 124,0,0,95,8,0,116,4,0,106,5,0,106,6,0,116, + 13,0,131,1,0,114,251,0,116,7,0,100,4,0,100,5, + 0,132,0,0,124,2,0,68,131,1,0,131,1,0,124,0, + 0,95,14,0,110,0,0,100,6,0,83,40,7,0,0,0, + 117,68,0,0,0,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,117,3,0,0,0,119,105, + 110,117,1,0,0,0,46,117,5,0,0,0,123,125,46,123, + 125,99,1,0,0,0,0,0,0,0,2,0,0,0,2,0, + 0,0,115,0,0,0,115,27,0,0,0,124,0,0,93,17, + 0,125,1,0,124,1,0,106,0,0,131,0,0,86,1,113, + 3,0,100,0,0,83,40,1,0,0,0,78,40,1,0,0, + 0,117,5,0,0,0,108,111,119,101,114,40,2,0,0,0, + 117,2,0,0,0,46,48,117,2,0,0,0,102,110,40,0, + 0,0,0,40,0,0,0,0,117,29,0,0,0,60,102,114, + 111,122,101,110,32,105,109,112,111,114,116,108,105,98,46,95, + 98,111,111,116,115,116,114,97,112,62,117,9,0,0,0,60, + 103,101,110,101,120,112,114,62,136,5,0,0,115,2,0,0, + 0,6,0,117,41,0,0,0,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,103,101,110,101,120,112,114, + 62,78,40,15,0,0,0,117,4,0,0,0,112,97,116,104, + 117,3,0,0,0,95,111,115,117,7,0,0,0,108,105,115, + 116,100,105,114,117,17,0,0,0,70,105,108,101,78,111,116, + 70,111,117,110,100,69,114,114,111,114,117,3,0,0,0,115, + 121,115,117,8,0,0,0,112,108,97,116,102,111,114,109,117, + 10,0,0,0,115,116,97,114,116,115,119,105,116,104,117,3, + 0,0,0,115,101,116,117,11,0,0,0,95,112,97,116,104, + 95,99,97,99,104,101,117,9,0,0,0,112,97,114,116,105, + 116,105,111,110,117,6,0,0,0,102,111,114,109,97,116,117, + 5,0,0,0,108,111,119,101,114,117,3,0,0,0,97,100, + 100,117,27,0,0,0,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,117,19,0,0,0,95,114,101,108,97,120,101,100,95,112, + 97,116,104,95,99,97,99,104,101,40,9,0,0,0,117,4, + 0,0,0,115,101,108,102,117,4,0,0,0,112,97,116,104, + 117,8,0,0,0,99,111,110,116,101,110,116,115,117,21,0, + 0,0,108,111,119,101,114,95,115,117,102,102,105,120,95,99, + 111,110,116,101,110,116,115,117,4,0,0,0,105,116,101,109, + 117,4,0,0,0,110,97,109,101,117,3,0,0,0,100,111, + 116,117,6,0,0,0,115,117,102,102,105,120,117,8,0,0, + 0,110,101,119,95,110,97,109,101,40,0,0,0,0,40,0, + 0,0,0,117,29,0,0,0,60,102,114,111,122,101,110,32, + 105,109,112,111,114,116,108,105,98,46,95,98,111,111,116,115, + 116,114,97,112,62,117,11,0,0,0,95,102,105,108,108,95, + 99,97,99,104,101,108,5,0,0,115,34,0,0,0,0,2, + 9,1,3,1,19,1,13,2,11,3,18,1,18,7,9,1, + 13,1,24,1,6,1,27,2,6,1,17,1,9,1,18,1, + 117,22,0,0,0,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,3,0,0,0,3,0,0,0,7,0,0,0, + 115,25,0,0,0,135,0,0,135,1,0,102,2,0,100,1, + 0,100,2,0,134,0,0,125,2,0,124,2,0,83,40,3, + 0,0,0,117,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,1,0,0,0,4,0,0,0,19,0,0, + 0,115,46,0,0,0,116,0,0,124,0,0,131,1,0,115, + 33,0,116,1,0,100,1,0,100,2,0,124,0,0,131,1, + 1,130,1,0,110,0,0,136,0,0,124,0,0,136,1,0, + 140,1,0,83,40,3,0,0,0,117,45,0,0,0,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,117,30,0,0,0, + 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,117,4, + 0,0,0,112,97,116,104,40,2,0,0,0,117,11,0,0, + 0,95,112,97,116,104,95,105,115,100,105,114,117,11,0,0, + 0,73,109,112,111,114,116,69,114,114,111,114,40,1,0,0, + 0,117,4,0,0,0,112,97,116,104,40,2,0,0,0,117, + 3,0,0,0,99,108,115,117,14,0,0,0,108,111,97,100, + 101,114,95,100,101,116,97,105,108,115,40,0,0,0,0,117, + 29,0,0,0,60,102,114,111,122,101,110,32,105,109,112,111, + 114,116,108,105,98,46,95,98,111,111,116,115,116,114,97,112, + 62,117,24,0,0,0,112,97,116,104,95,104,111,111,107,95, + 102,111,114,95,70,105,108,101,70,105,110,100,101,114,148,5, + 0,0,115,6,0,0,0,0,2,12,1,21,1,117,54,0, + 0,0,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,40,0,0,0,0,40,3,0, + 0,0,117,3,0,0,0,99,108,115,117,14,0,0,0,108, + 111,97,100,101,114,95,100,101,116,97,105,108,115,117,24,0, + 0,0,112,97,116,104,95,104,111,111,107,95,102,111,114,95, + 70,105,108,101,70,105,110,100,101,114,40,0,0,0,0,40, + 2,0,0,0,117,3,0,0,0,99,108,115,117,14,0,0, + 0,108,111,97,100,101,114,95,100,101,116,97,105,108,115,117, + 29,0,0,0,60,102,114,111,122,101,110,32,105,109,112,111, + 114,116,108,105,98,46,95,98,111,111,116,115,116,114,97,112, + 62,117,9,0,0,0,112,97,116,104,95,104,111,111,107,138, + 5,0,0,115,4,0,0,0,0,10,21,6,117,20,0,0, + 0,70,105,108,101,70,105,110,100,101,114,46,112,97,116,104, + 95,104,111,111,107,99,1,0,0,0,0,0,0,0,1,0, + 0,0,2,0,0,0,67,0,0,0,115,14,0,0,0,100, + 1,0,124,0,0,106,0,0,102,1,0,22,83,40,2,0, + 0,0,78,117,14,0,0,0,70,105,108,101,70,105,110,100, + 101,114,40,37,114,41,40,1,0,0,0,117,4,0,0,0, + 112,97,116,104,40,1,0,0,0,117,4,0,0,0,115,101, + 108,102,40,0,0,0,0,40,0,0,0,0,117,29,0,0, + 0,60,102,114,111,122,101,110,32,105,109,112,111,114,116,108, + 105,98,46,95,98,111,111,116,115,116,114,97,112,62,117,8, + 0,0,0,95,95,114,101,112,114,95,95,156,5,0,0,115, + 2,0,0,0,0,1,117,19,0,0,0,70,105,108,101,70, + 105,110,100,101,114,46,95,95,114,101,112,114,95,95,78,40, + 13,0,0,0,117,8,0,0,0,95,95,110,97,109,101,95, + 95,117,10,0,0,0,95,95,109,111,100,117,108,101,95,95, + 117,12,0,0,0,95,95,113,117,97,108,110,97,109,101,95, + 95,117,7,0,0,0,95,95,100,111,99,95,95,117,8,0, + 0,0,95,95,105,110,105,116,95,95,117,17,0,0,0,105, + 110,118,97,108,105,100,97,116,101,95,99,97,99,104,101,115, + 117,17,0,0,0,95,102,105,110,100,95,109,111,100,117,108, + 101,95,115,104,105,109,117,11,0,0,0,102,105,110,100,95, + 109,111,100,117,108,101,117,11,0,0,0,102,105,110,100,95, + 108,111,97,100,101,114,117,11,0,0,0,95,102,105,108,108, + 95,99,97,99,104,101,117,11,0,0,0,99,108,97,115,115, + 109,101,116,104,111,100,117,9,0,0,0,112,97,116,104,95, + 104,111,111,107,117,8,0,0,0,95,95,114,101,112,114,95, 95,40,1,0,0,0,117,10,0,0,0,95,95,108,111,99, 97,108,115,95,95,40,0,0,0,0,40,0,0,0,0,117, 29,0,0,0,60,102,114,111,122,101,110,32,105,109,112,111, 114,116,108,105,98,46,95,98,111,111,116,115,116,114,97,112, - 62,117,18,0,0,0,95,73,109,112,111,114,116,76,111,99, - 107,67,111,110,116,101,120,116,162,5,0,0,115,6,0,0, - 0,16,2,6,2,12,4,117,18,0,0,0,95,73,109,112, - 111,114,116,76,111,99,107,67,111,110,116,101,120,116,99,3, - 0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,67, - 0,0,0,115,91,0,0,0,124,1,0,106,0,0,100,1, - 0,124,2,0,100,2,0,24,131,2,0,125,3,0,116,1, - 0,124,3,0,131,1,0,124,2,0,107,0,0,114,55,0, - 116,2,0,100,3,0,131,1,0,130,1,0,110,0,0,124, - 3,0,100,4,0,25,125,4,0,124,0,0,114,87,0,100, - 5,0,106,3,0,124,4,0,124,0,0,131,2,0,83,124, - 4,0,83,40,6,0,0,0,117,50,0,0,0,82,101,115, - 111,108,118,101,32,97,32,114,101,108,97,116,105,118,101,32, - 109,111,100,117,108,101,32,110,97,109,101,32,116,111,32,97, - 110,32,97,98,115,111,108,117,116,101,32,111,110,101,46,117, - 1,0,0,0,46,105,1,0,0,0,117,50,0,0,0,97, - 116,116,101,109,112,116,101,100,32,114,101,108,97,116,105,118, - 101,32,105,109,112,111,114,116,32,98,101,121,111,110,100,32, - 116,111,112,45,108,101,118,101,108,32,112,97,99,107,97,103, - 101,105,0,0,0,0,117,5,0,0,0,123,125,46,123,125, - 40,4,0,0,0,117,6,0,0,0,114,115,112,108,105,116, - 117,3,0,0,0,108,101,110,117,10,0,0,0,86,97,108, - 117,101,69,114,114,111,114,117,6,0,0,0,102,111,114,109, - 97,116,40,5,0,0,0,117,4,0,0,0,110,97,109,101, - 117,7,0,0,0,112,97,99,107,97,103,101,117,5,0,0, - 0,108,101,118,101,108,117,4,0,0,0,98,105,116,115,117, - 4,0,0,0,98,97,115,101,40,0,0,0,0,40,0,0, - 0,0,117,29,0,0,0,60,102,114,111,122,101,110,32,105, - 109,112,111,114,116,108,105,98,46,95,98,111,111,116,115,116, - 114,97,112,62,117,13,0,0,0,95,114,101,115,111,108,118, - 101,95,110,97,109,101,175,5,0,0,115,10,0,0,0,0, - 2,22,1,18,1,15,1,10,1,117,13,0,0,0,95,114, - 101,115,111,108,118,101,95,110,97,109,101,99,2,0,0,0, - 0,0,0,0,4,0,0,0,11,0,0,0,67,0,0,0, - 115,138,0,0,0,116,0,0,106,1,0,115,28,0,116,2, - 0,106,3,0,100,1,0,116,4,0,131,2,0,1,110,0, - 0,120,103,0,116,0,0,106,1,0,68,93,88,0,125,2, - 0,116,5,0,131,0,0,143,23,0,1,124,2,0,106,6, - 0,124,0,0,124,1,0,131,2,0,125,3,0,87,100,2, - 0,81,88,124,3,0,100,2,0,107,9,0,114,38,0,124, - 0,0,116,0,0,106,8,0,107,7,0,114,109,0,124,3, - 0,83,116,0,0,106,8,0,124,0,0,25,106,9,0,83, - 113,38,0,113,38,0,87,100,2,0,83,100,2,0,83,40, - 3,0,0,0,117,23,0,0,0,70,105,110,100,32,97,32, - 109,111,100,117,108,101,39,115,32,108,111,97,100,101,114,46, - 117,22,0,0,0,115,121,115,46,109,101,116,97,95,112,97, - 116,104,32,105,115,32,101,109,112,116,121,78,40,10,0,0, - 0,117,3,0,0,0,115,121,115,117,9,0,0,0,109,101, - 116,97,95,112,97,116,104,117,9,0,0,0,95,119,97,114, - 110,105,110,103,115,117,4,0,0,0,119,97,114,110,117,13, - 0,0,0,73,109,112,111,114,116,87,97,114,110,105,110,103, - 117,18,0,0,0,95,73,109,112,111,114,116,76,111,99,107, - 67,111,110,116,101,120,116,117,11,0,0,0,102,105,110,100, - 95,109,111,100,117,108,101,117,4,0,0,0,78,111,110,101, - 117,7,0,0,0,109,111,100,117,108,101,115,117,10,0,0, - 0,95,95,108,111,97,100,101,114,95,95,40,4,0,0,0, - 117,4,0,0,0,110,97,109,101,117,4,0,0,0,112,97, - 116,104,117,6,0,0,0,102,105,110,100,101,114,117,6,0, - 0,0,108,111,97,100,101,114,40,0,0,0,0,40,0,0, - 0,0,117,29,0,0,0,60,102,114,111,122,101,110,32,105, - 109,112,111,114,116,108,105,98,46,95,98,111,111,116,115,116, - 114,97,112,62,117,12,0,0,0,95,102,105,110,100,95,109, - 111,100,117,108,101,184,5,0,0,115,20,0,0,0,0,2, - 9,1,19,1,16,1,10,1,24,1,12,2,15,1,4,2, - 21,2,117,12,0,0,0,95,102,105,110,100,95,109,111,100, - 117,108,101,99,3,0,0,0,0,0,0,0,4,0,0,0, - 4,0,0,0,67,0,0,0,115,194,0,0,0,116,0,0, - 124,0,0,116,1,0,131,2,0,115,45,0,116,2,0,100, - 1,0,106,3,0,116,4,0,124,0,0,131,1,0,131,1, - 0,131,1,0,130,1,0,110,0,0,124,2,0,100,2,0, - 107,0,0,114,72,0,116,5,0,100,3,0,131,1,0,130, - 1,0,110,0,0,124,1,0,114,156,0,116,0,0,124,1, - 0,116,1,0,131,2,0,115,108,0,116,2,0,100,4,0, - 131,1,0,130,1,0,113,156,0,124,1,0,116,6,0,106, - 7,0,107,7,0,114,156,0,100,5,0,125,3,0,116,8, - 0,124,3,0,106,3,0,124,1,0,131,1,0,131,1,0, - 130,1,0,113,156,0,110,0,0,124,0,0,12,114,190,0, - 124,2,0,100,2,0,107,2,0,114,190,0,116,5,0,100, - 6,0,131,1,0,130,1,0,110,0,0,100,7,0,83,40, - 8,0,0,0,117,28,0,0,0,86,101,114,105,102,121,32, - 97,114,103,117,109,101,110,116,115,32,97,114,101,32,34,115, - 97,110,101,34,46,117,31,0,0,0,109,111,100,117,108,101, - 32,110,97,109,101,32,109,117,115,116,32,98,101,32,115,116, - 114,44,32,110,111,116,32,123,125,105,0,0,0,0,117,18, - 0,0,0,108,101,118,101,108,32,109,117,115,116,32,98,101, - 32,62,61,32,48,117,31,0,0,0,95,95,112,97,99,107, - 97,103,101,95,95,32,110,111,116,32,115,101,116,32,116,111, - 32,97,32,115,116,114,105,110,103,117,61,0,0,0,80,97, - 114,101,110,116,32,109,111,100,117,108,101,32,123,33,114,125, - 32,110,111,116,32,108,111,97,100,101,100,44,32,99,97,110, - 110,111,116,32,112,101,114,102,111,114,109,32,114,101,108,97, - 116,105,118,101,32,105,109,112,111,114,116,117,17,0,0,0, - 69,109,112,116,121,32,109,111,100,117,108,101,32,110,97,109, - 101,78,40,9,0,0,0,117,10,0,0,0,105,115,105,110, - 115,116,97,110,99,101,117,3,0,0,0,115,116,114,117,9, - 0,0,0,84,121,112,101,69,114,114,111,114,117,6,0,0, - 0,102,111,114,109,97,116,117,4,0,0,0,116,121,112,101, - 117,10,0,0,0,86,97,108,117,101,69,114,114,111,114,117, - 3,0,0,0,115,121,115,117,7,0,0,0,109,111,100,117, - 108,101,115,117,11,0,0,0,83,121,115,116,101,109,69,114, - 114,111,114,40,4,0,0,0,117,4,0,0,0,110,97,109, - 101,117,7,0,0,0,112,97,99,107,97,103,101,117,5,0, - 0,0,108,101,118,101,108,117,3,0,0,0,109,115,103,40, - 0,0,0,0,40,0,0,0,0,117,29,0,0,0,60,102, - 114,111,122,101,110,32,105,109,112,111,114,116,108,105,98,46, - 95,98,111,111,116,115,116,114,97,112,62,117,13,0,0,0, - 95,115,97,110,105,116,121,95,99,104,101,99,107,201,5,0, - 0,115,24,0,0,0,0,2,15,1,30,1,12,1,15,1, - 6,1,15,1,15,1,15,1,6,2,27,1,19,1,117,13, - 0,0,0,95,115,97,110,105,116,121,95,99,104,101,99,107, - 117,20,0,0,0,78,111,32,109,111,100,117,108,101,32,110, - 97,109,101,100,32,123,33,114,125,99,2,0,0,0,0,0, - 0,0,9,0,0,0,27,0,0,0,67,0,0,0,115,12, - 2,0,0,100,0,0,125,2,0,124,0,0,106,1,0,100, - 1,0,131,1,0,100,2,0,25,125,3,0,124,3,0,114, - 178,0,124,3,0,116,2,0,106,3,0,107,7,0,114,62, - 0,116,4,0,124,1,0,124,3,0,131,2,0,1,110,0, - 0,124,0,0,116,2,0,106,3,0,107,6,0,114,88,0, - 116,2,0,106,3,0,124,0,0,25,83,116,2,0,106,3, - 0,124,3,0,25,125,4,0,121,13,0,124,4,0,106,5, - 0,125,2,0,87,113,178,0,4,116,6,0,107,10,0,114, - 174,0,1,1,1,116,7,0,100,3,0,23,106,8,0,124, - 0,0,124,3,0,131,2,0,125,5,0,116,9,0,124,5, - 0,100,4,0,124,0,0,131,1,1,130,1,0,89,113,178, - 0,88,110,0,0,116,10,0,124,0,0,124,2,0,131,2, - 0,125,6,0,124,6,0,100,0,0,107,8,0,114,250,0, - 116,9,0,116,7,0,106,8,0,124,0,0,131,1,0,100, - 4,0,124,0,0,131,1,1,125,7,0,100,10,0,124,7, - 0,95,12,0,124,7,0,130,1,0,110,47,0,124,0,0, - 116,2,0,106,3,0,107,7,0,114,41,1,124,6,0,106, - 13,0,124,0,0,131,1,0,1,116,14,0,100,5,0,124, - 0,0,124,6,0,131,3,0,1,110,0,0,116,2,0,106, - 3,0,124,0,0,25,125,8,0,124,3,0,114,105,1,116, - 2,0,106,3,0,124,3,0,25,125,4,0,116,15,0,124, - 4,0,124,0,0,106,1,0,100,1,0,131,1,0,100,6, - 0,25,124,8,0,131,3,0,1,110,0,0,116,16,0,124, - 8,0,100,7,0,100,0,0,131,3,0,100,0,0,107,8, - 0,114,212,1,121,59,0,124,8,0,106,17,0,124,8,0, - 95,18,0,116,19,0,124,8,0,100,8,0,131,2,0,115, - 187,1,124,8,0,106,18,0,106,1,0,100,1,0,131,1, - 0,100,2,0,25,124,8,0,95,18,0,110,0,0,87,113, - 212,1,4,116,6,0,107,10,0,114,208,1,1,1,1,89, - 113,212,1,88,110,0,0,116,19,0,124,8,0,100,9,0, - 131,2,0,115,8,2,121,13,0,124,6,0,124,8,0,95, - 20,0,87,113,8,2,4,116,6,0,107,10,0,114,4,2, - 1,1,1,89,113,8,2,88,110,0,0,124,8,0,83,40, - 11,0,0,0,78,117,1,0,0,0,46,105,0,0,0,0, - 117,21,0,0,0,59,32,123,125,32,105,115,32,110,111,116, - 32,97,32,112,97,99,107,97,103,101,117,4,0,0,0,110, - 97,109,101,117,18,0,0,0,105,109,112,111,114,116,32,123, - 33,114,125,32,35,32,123,33,114,125,105,2,0,0,0,117, - 11,0,0,0,95,95,112,97,99,107,97,103,101,95,95,117, - 8,0,0,0,95,95,112,97,116,104,95,95,117,10,0,0, - 0,95,95,108,111,97,100,101,114,95,95,84,40,21,0,0, - 0,117,4,0,0,0,78,111,110,101,117,10,0,0,0,114, - 112,97,114,116,105,116,105,111,110,117,3,0,0,0,115,121, - 115,117,7,0,0,0,109,111,100,117,108,101,115,117,25,0, - 0,0,95,99,97,108,108,95,119,105,116,104,95,102,114,97, - 109,101,115,95,114,101,109,111,118,101,100,117,8,0,0,0, - 95,95,112,97,116,104,95,95,117,14,0,0,0,65,116,116, - 114,105,98,117,116,101,69,114,114,111,114,117,8,0,0,0, - 95,69,82,82,95,77,83,71,117,6,0,0,0,102,111,114, - 109,97,116,117,11,0,0,0,73,109,112,111,114,116,69,114, - 114,111,114,117,12,0,0,0,95,102,105,110,100,95,109,111, - 100,117,108,101,117,4,0,0,0,84,114,117,101,117,10,0, - 0,0,95,110,111,116,95,102,111,117,110,100,117,11,0,0, - 0,108,111,97,100,95,109,111,100,117,108,101,117,16,0,0, - 0,95,118,101,114,98,111,115,101,95,109,101,115,115,97,103, - 101,117,7,0,0,0,115,101,116,97,116,116,114,117,7,0, - 0,0,103,101,116,97,116,116,114,117,8,0,0,0,95,95, - 110,97,109,101,95,95,117,11,0,0,0,95,95,112,97,99, - 107,97,103,101,95,95,117,7,0,0,0,104,97,115,97,116, - 116,114,117,10,0,0,0,95,95,108,111,97,100,101,114,95, - 95,40,9,0,0,0,117,4,0,0,0,110,97,109,101,117, - 7,0,0,0,105,109,112,111,114,116,95,117,4,0,0,0, - 112,97,116,104,117,6,0,0,0,112,97,114,101,110,116,117, - 13,0,0,0,112,97,114,101,110,116,95,109,111,100,117,108, - 101,117,3,0,0,0,109,115,103,117,6,0,0,0,108,111, - 97,100,101,114,117,3,0,0,0,101,120,99,117,6,0,0, - 0,109,111,100,117,108,101,40,0,0,0,0,40,0,0,0, - 0,117,29,0,0,0,60,102,114,111,122,101,110,32,105,109, - 112,111,114,116,108,105,98,46,95,98,111,111,116,115,116,114, - 97,112,62,117,23,0,0,0,95,102,105,110,100,95,97,110, - 100,95,108,111,97,100,95,117,110,108,111,99,107,101,100,220, - 5,0,0,115,76,0,0,0,0,1,6,1,19,1,6,1, - 15,1,16,2,15,1,11,2,13,1,3,1,13,1,13,1, - 22,1,26,1,15,1,12,1,27,3,9,1,9,1,15,2, - 13,1,19,2,13,1,6,2,13,1,32,2,24,1,3,1, - 12,1,15,1,32,1,13,1,8,2,15,1,3,1,13,1, - 13,1,8,1,117,23,0,0,0,95,102,105,110,100,95,97, - 110,100,95,108,111,97,100,95,117,110,108,111,99,107,101,100, - 99,2,0,0,0,0,0,0,0,3,0,0,0,18,0,0, - 0,67,0,0,0,115,75,0,0,0,122,16,0,116,0,0, - 124,0,0,131,1,0,125,2,0,87,100,1,0,116,1,0, - 106,2,0,131,0,0,1,88,124,2,0,106,3,0,131,0, - 0,1,122,17,0,116,4,0,124,0,0,124,1,0,131,2, - 0,83,87,100,1,0,124,2,0,106,5,0,131,0,0,1, - 88,100,1,0,83,40,2,0,0,0,117,54,0,0,0,70, - 105,110,100,32,97,110,100,32,108,111,97,100,32,116,104,101, - 32,109,111,100,117,108,101,44,32,97,110,100,32,114,101,108, - 101,97,115,101,32,116,104,101,32,105,109,112,111,114,116,32, - 108,111,99,107,46,78,40,6,0,0,0,117,16,0,0,0, - 95,103,101,116,95,109,111,100,117,108,101,95,108,111,99,107, - 117,4,0,0,0,95,105,109,112,117,12,0,0,0,114,101, - 108,101,97,115,101,95,108,111,99,107,117,7,0,0,0,97, - 99,113,117,105,114,101,117,23,0,0,0,95,102,105,110,100, - 95,97,110,100,95,108,111,97,100,95,117,110,108,111,99,107, - 101,100,117,7,0,0,0,114,101,108,101,97,115,101,40,3, - 0,0,0,117,4,0,0,0,110,97,109,101,117,7,0,0, - 0,105,109,112,111,114,116,95,117,4,0,0,0,108,111,99, - 107,40,0,0,0,0,40,0,0,0,0,117,29,0,0,0, - 60,102,114,111,122,101,110,32,105,109,112,111,114,116,108,105, - 98,46,95,98,111,111,116,115,116,114,97,112,62,117,14,0, - 0,0,95,102,105,110,100,95,97,110,100,95,108,111,97,100, - 14,6,0,0,115,14,0,0,0,0,2,3,1,16,2,11, - 1,10,1,3,1,17,2,117,14,0,0,0,95,102,105,110, - 100,95,97,110,100,95,108,111,97,100,99,3,0,0,0,0, - 0,0,0,5,0,0,0,4,0,0,0,67,0,0,0,115, - 172,0,0,0,116,0,0,124,0,0,124,1,0,124,2,0, - 131,3,0,1,124,2,0,100,1,0,107,4,0,114,49,0, - 116,1,0,124,0,0,124,1,0,124,2,0,131,3,0,125, - 0,0,110,0,0,116,2,0,106,3,0,131,0,0,1,124, - 0,0,116,4,0,106,5,0,107,7,0,114,87,0,116,6, - 0,124,0,0,116,7,0,131,2,0,83,116,4,0,106,5, - 0,124,0,0,25,125,3,0,124,3,0,100,4,0,107,8, - 0,114,158,0,116,2,0,106,9,0,131,0,0,1,100,2, - 0,106,10,0,124,0,0,131,1,0,125,4,0,116,11,0, - 124,4,0,100,3,0,124,0,0,131,1,1,130,1,0,110, - 0,0,116,12,0,124,0,0,131,1,0,1,124,3,0,83, - 40,5,0,0,0,117,50,1,0,0,73,109,112,111,114,116, - 32,97,110,100,32,114,101,116,117,114,110,32,116,104,101,32, - 109,111,100,117,108,101,32,98,97,115,101,100,32,111,110,32, - 105,116,115,32,110,97,109,101,44,32,116,104,101,32,112,97, - 99,107,97,103,101,32,116,104,101,32,99,97,108,108,32,105, - 115,10,32,32,32,32,98,101,105,110,103,32,109,97,100,101, - 32,102,114,111,109,44,32,97,110,100,32,116,104,101,32,108, - 101,118,101,108,32,97,100,106,117,115,116,109,101,110,116,46, - 10,10,32,32,32,32,84,104,105,115,32,102,117,110,99,116, - 105,111,110,32,114,101,112,114,101,115,101,110,116,115,32,116, - 104,101,32,103,114,101,97,116,101,115,116,32,99,111,109,109, - 111,110,32,100,101,110,111,109,105,110,97,116,111,114,32,111, - 102,32,102,117,110,99,116,105,111,110,97,108,105,116,121,10, - 32,32,32,32,98,101,116,119,101,101,110,32,105,109,112,111, - 114,116,95,109,111,100,117,108,101,32,97,110,100,32,95,95, - 105,109,112,111,114,116,95,95,46,32,84,104,105,115,32,105, - 110,99,108,117,100,101,115,32,115,101,116,116,105,110,103,32, - 95,95,112,97,99,107,97,103,101,95,95,32,105,102,10,32, - 32,32,32,116,104,101,32,108,111,97,100,101,114,32,100,105, - 100,32,110,111,116,46,10,10,32,32,32,32,105,0,0,0, - 0,117,40,0,0,0,105,109,112,111,114,116,32,111,102,32, - 123,125,32,104,97,108,116,101,100,59,32,78,111,110,101,32, - 105,110,32,115,121,115,46,109,111,100,117,108,101,115,117,4, - 0,0,0,110,97,109,101,78,40,13,0,0,0,117,13,0, - 0,0,95,115,97,110,105,116,121,95,99,104,101,99,107,117, - 13,0,0,0,95,114,101,115,111,108,118,101,95,110,97,109, - 101,117,4,0,0,0,95,105,109,112,117,12,0,0,0,97, - 99,113,117,105,114,101,95,108,111,99,107,117,3,0,0,0, - 115,121,115,117,7,0,0,0,109,111,100,117,108,101,115,117, - 14,0,0,0,95,102,105,110,100,95,97,110,100,95,108,111, - 97,100,117,11,0,0,0,95,103,99,100,95,105,109,112,111, - 114,116,117,4,0,0,0,78,111,110,101,117,12,0,0,0, - 114,101,108,101,97,115,101,95,108,111,99,107,117,6,0,0, - 0,102,111,114,109,97,116,117,11,0,0,0,73,109,112,111, - 114,116,69,114,114,111,114,117,19,0,0,0,95,108,111,99, - 107,95,117,110,108,111,99,107,95,109,111,100,117,108,101,40, - 5,0,0,0,117,4,0,0,0,110,97,109,101,117,7,0, - 0,0,112,97,99,107,97,103,101,117,5,0,0,0,108,101, - 118,101,108,117,6,0,0,0,109,111,100,117,108,101,117,7, - 0,0,0,109,101,115,115,97,103,101,40,0,0,0,0,40, - 0,0,0,0,117,29,0,0,0,60,102,114,111,122,101,110, - 32,105,109,112,111,114,116,108,105,98,46,95,98,111,111,116, - 115,116,114,97,112,62,117,11,0,0,0,95,103,99,100,95, - 105,109,112,111,114,116,27,6,0,0,115,28,0,0,0,0, - 9,16,1,12,1,21,1,10,1,15,1,13,1,13,1,12, - 1,10,1,6,1,9,1,21,1,10,1,117,11,0,0,0, - 95,103,99,100,95,105,109,112,111,114,116,99,3,0,0,0, - 0,0,0,0,5,0,0,0,17,0,0,0,67,0,0,0, - 115,233,0,0,0,116,0,0,124,0,0,100,1,0,131,2, - 0,114,229,0,100,2,0,124,1,0,107,6,0,114,89,0, - 116,1,0,124,1,0,131,1,0,125,1,0,124,1,0,106, - 2,0,100,2,0,131,1,0,1,116,0,0,124,0,0,100, - 3,0,131,2,0,114,89,0,124,1,0,106,3,0,124,0, - 0,106,4,0,131,1,0,1,113,89,0,110,0,0,120,137, - 0,124,1,0,68,93,126,0,125,3,0,116,0,0,124,0, - 0,124,3,0,131,2,0,115,96,0,121,32,0,116,5,0, - 124,2,0,100,4,0,106,6,0,124,0,0,106,7,0,124, - 3,0,131,2,0,131,2,0,1,87,113,222,0,4,116,8, - 0,107,10,0,114,218,0,1,125,4,0,1,122,35,0,116, - 0,0,124,4,0,100,5,0,131,2,0,114,197,0,124,4, - 0,106,9,0,114,197,0,110,3,0,130,0,0,87,89,100, - 6,0,100,6,0,125,4,0,126,4,0,88,113,222,0,88, - 113,96,0,113,96,0,87,110,0,0,124,0,0,83,40,7, - 0,0,0,117,238,0,0,0,70,105,103,117,114,101,32,111, - 117,116,32,119,104,97,116,32,95,95,105,109,112,111,114,116, - 95,95,32,115,104,111,117,108,100,32,114,101,116,117,114,110, - 46,10,10,32,32,32,32,84,104,101,32,105,109,112,111,114, - 116,95,32,112,97,114,97,109,101,116,101,114,32,105,115,32, - 97,32,99,97,108,108,97,98,108,101,32,119,104,105,99,104, - 32,116,97,107,101,115,32,116,104,101,32,110,97,109,101,32, - 111,102,32,109,111,100,117,108,101,32,116,111,10,32,32,32, - 32,105,109,112,111,114,116,46,32,73,116,32,105,115,32,114, - 101,113,117,105,114,101,100,32,116,111,32,100,101,99,111,117, - 112,108,101,32,116,104,101,32,102,117,110,99,116,105,111,110, - 32,102,114,111,109,32,97,115,115,117,109,105,110,103,32,105, - 109,112,111,114,116,108,105,98,39,115,10,32,32,32,32,105, - 109,112,111,114,116,32,105,109,112,108,101,109,101,110,116,97, - 116,105,111,110,32,105,115,32,100,101,115,105,114,101,100,46, - 10,10,32,32,32,32,117,8,0,0,0,95,95,112,97,116, - 104,95,95,117,1,0,0,0,42,117,7,0,0,0,95,95, - 97,108,108,95,95,117,5,0,0,0,123,125,46,123,125,117, - 10,0,0,0,95,110,111,116,95,102,111,117,110,100,78,40, - 10,0,0,0,117,7,0,0,0,104,97,115,97,116,116,114, - 117,4,0,0,0,108,105,115,116,117,6,0,0,0,114,101, - 109,111,118,101,117,6,0,0,0,101,120,116,101,110,100,117, - 7,0,0,0,95,95,97,108,108,95,95,117,25,0,0,0, - 95,99,97,108,108,95,119,105,116,104,95,102,114,97,109,101, - 115,95,114,101,109,111,118,101,100,117,6,0,0,0,102,111, - 114,109,97,116,117,8,0,0,0,95,95,110,97,109,101,95, - 95,117,11,0,0,0,73,109,112,111,114,116,69,114,114,111, - 114,117,10,0,0,0,95,110,111,116,95,102,111,117,110,100, - 40,5,0,0,0,117,6,0,0,0,109,111,100,117,108,101, - 117,8,0,0,0,102,114,111,109,108,105,115,116,117,7,0, - 0,0,105,109,112,111,114,116,95,117,1,0,0,0,120,117, - 3,0,0,0,101,120,99,40,0,0,0,0,40,0,0,0, - 0,117,29,0,0,0,60,102,114,111,122,101,110,32,105,109, - 112,111,114,116,108,105,98,46,95,98,111,111,116,115,116,114, - 97,112,62,117,16,0,0,0,95,104,97,110,100,108,101,95, - 102,114,111,109,108,105,115,116,51,6,0,0,115,32,0,0, - 0,0,10,15,1,12,1,12,1,13,1,15,1,22,1,13, - 1,15,1,3,1,6,1,26,1,18,6,24,1,3,2,32, - 1,117,16,0,0,0,95,104,97,110,100,108,101,95,102,114, - 111,109,108,105,115,116,99,1,0,0,0,0,0,0,0,2, - 0,0,0,2,0,0,0,67,0,0,0,115,78,0,0,0, - 124,0,0,106,0,0,100,1,0,131,1,0,125,1,0,124, - 1,0,100,6,0,107,8,0,114,74,0,124,0,0,100,2, - 0,25,125,1,0,100,3,0,124,0,0,107,7,0,114,74, - 0,124,1,0,106,2,0,100,4,0,131,1,0,100,5,0, - 25,125,1,0,113,74,0,110,0,0,124,1,0,83,40,7, - 0,0,0,117,167,0,0,0,67,97,108,99,117,108,97,116, - 101,32,119,104,97,116,32,95,95,112,97,99,107,97,103,101, - 95,95,32,115,104,111,117,108,100,32,98,101,46,10,10,32, - 32,32,32,95,95,112,97,99,107,97,103,101,95,95,32,105, - 115,32,110,111,116,32,103,117,97,114,97,110,116,101,101,100, - 32,116,111,32,98,101,32,100,101,102,105,110,101,100,32,111, - 114,32,99,111,117,108,100,32,98,101,32,115,101,116,32,116, - 111,32,78,111,110,101,10,32,32,32,32,116,111,32,114,101, - 112,114,101,115,101,110,116,32,116,104,97,116,32,105,116,115, - 32,112,114,111,112,101,114,32,118,97,108,117,101,32,105,115, - 32,117,110,107,110,111,119,110,46,10,10,32,32,32,32,117, - 11,0,0,0,95,95,112,97,99,107,97,103,101,95,95,117, - 8,0,0,0,95,95,110,97,109,101,95,95,117,8,0,0, - 0,95,95,112,97,116,104,95,95,117,1,0,0,0,46,105, - 0,0,0,0,78,40,3,0,0,0,117,3,0,0,0,103, - 101,116,117,4,0,0,0,78,111,110,101,117,10,0,0,0, - 114,112,97,114,116,105,116,105,111,110,40,2,0,0,0,117, - 7,0,0,0,103,108,111,98,97,108,115,117,7,0,0,0, - 112,97,99,107,97,103,101,40,0,0,0,0,40,0,0,0, - 0,117,29,0,0,0,60,102,114,111,122,101,110,32,105,109, - 112,111,114,116,108,105,98,46,95,98,111,111,116,115,116,114, - 97,112,62,117,17,0,0,0,95,99,97,108,99,95,95,95, - 112,97,99,107,97,103,101,95,95,85,6,0,0,115,12,0, - 0,0,0,7,15,1,12,1,10,1,12,1,25,1,117,17, - 0,0,0,95,99,97,108,99,95,95,95,112,97,99,107,97, - 103,101,95,95,99,0,0,0,0,0,0,0,0,3,0,0, - 0,3,0,0,0,67,0,0,0,115,55,0,0,0,116,0, - 0,116,1,0,106,2,0,131,0,0,102,2,0,125,0,0, - 116,3,0,116,4,0,102,2,0,125,1,0,116,5,0,116, - 6,0,102,2,0,125,2,0,124,0,0,124,1,0,124,2, - 0,103,3,0,83,40,1,0,0,0,117,111,0,0,0,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,44,32,97,108,108,111,119,95,112, - 97,99,107,97,103,101,115,41,46,10,32,32,32,32,40,7, - 0,0,0,117,19,0,0,0,69,120,116,101,110,115,105,111, - 110,70,105,108,101,76,111,97,100,101,114,117,4,0,0,0, - 95,105,109,112,117,18,0,0,0,101,120,116,101,110,115,105, - 111,110,95,115,117,102,102,105,120,101,115,117,16,0,0,0, - 83,111,117,114,99,101,70,105,108,101,76,111,97,100,101,114, - 117,15,0,0,0,83,79,85,82,67,69,95,83,85,70,70, - 73,88,69,83,117,20,0,0,0,83,111,117,114,99,101,108, - 101,115,115,70,105,108,101,76,111,97,100,101,114,117,17,0, - 0,0,66,89,84,69,67,79,68,69,95,83,85,70,70,73, - 88,69,83,40,3,0,0,0,117,10,0,0,0,101,120,116, - 101,110,115,105,111,110,115,117,6,0,0,0,115,111,117,114, - 99,101,117,8,0,0,0,98,121,116,101,99,111,100,101,40, - 0,0,0,0,40,0,0,0,0,117,29,0,0,0,60,102, - 114,111,122,101,110,32,105,109,112,111,114,116,108,105,98,46, - 95,98,111,111,116,115,116,114,97,112,62,117,27,0,0,0, - 95,103,101,116,95,115,117,112,112,111,114,116,101,100,95,102, - 105,108,101,95,108,111,97,100,101,114,115,100,6,0,0,115, - 8,0,0,0,0,5,18,1,12,1,12,1,117,27,0,0, - 0,95,103,101,116,95,115,117,112,112,111,114,116,101,100,95, - 102,105,108,101,95,108,111,97,100,101,114,115,99,5,0,0, - 0,0,0,0,0,9,0,0,0,5,0,0,0,67,0,0, - 0,115,227,0,0,0,124,4,0,100,1,0,107,2,0,114, - 27,0,116,0,0,124,0,0,131,1,0,125,5,0,110,54, - 0,124,1,0,100,3,0,107,9,0,114,45,0,124,1,0, - 110,3,0,105,0,0,125,6,0,116,2,0,124,6,0,131, - 1,0,125,7,0,116,0,0,124,0,0,124,7,0,124,4, - 0,131,3,0,125,5,0,124,3,0,115,207,0,124,4,0, - 100,1,0,107,2,0,114,122,0,116,0,0,124,0,0,106, - 3,0,100,2,0,131,1,0,100,1,0,25,131,1,0,83, - 124,0,0,115,132,0,124,5,0,83,116,4,0,124,0,0, - 131,1,0,116,4,0,124,0,0,106,3,0,100,2,0,131, - 1,0,100,1,0,25,131,1,0,24,125,8,0,116,5,0, - 106,6,0,124,5,0,106,7,0,100,3,0,116,4,0,124, - 5,0,106,7,0,131,1,0,124,8,0,24,133,2,0,25, - 25,83,110,16,0,116,8,0,124,5,0,124,3,0,116,0, - 0,131,3,0,83,100,3,0,83,40,4,0,0,0,117,214, - 1,0,0,73,109,112,111,114,116,32,97,32,109,111,100,117, - 108,101,46,10,10,32,32,32,32,84,104,101,32,39,103,108, - 111,98,97,108,115,39,32,97,114,103,117,109,101,110,116,32, - 105,115,32,117,115,101,100,32,116,111,32,105,110,102,101,114, - 32,119,104,101,114,101,32,116,104,101,32,105,109,112,111,114, - 116,32,105,115,32,111,99,99,117,114,105,110,103,32,102,114, - 111,109,10,32,32,32,32,116,111,32,104,97,110,100,108,101, - 32,114,101,108,97,116,105,118,101,32,105,109,112,111,114,116, - 115,46,32,84,104,101,32,39,108,111,99,97,108,115,39,32, - 97,114,103,117,109,101,110,116,32,105,115,32,105,103,110,111, - 114,101,100,46,32,84,104,101,10,32,32,32,32,39,102,114, - 111,109,108,105,115,116,39,32,97,114,103,117,109,101,110,116, - 32,115,112,101,99,105,102,105,101,115,32,119,104,97,116,32, - 115,104,111,117,108,100,32,101,120,105,115,116,32,97,115,32, - 97,116,116,114,105,98,117,116,101,115,32,111,110,32,116,104, - 101,32,109,111,100,117,108,101,10,32,32,32,32,98,101,105, - 110,103,32,105,109,112,111,114,116,101,100,32,40,101,46,103, - 46,32,96,96,102,114,111,109,32,109,111,100,117,108,101,32, - 105,109,112,111,114,116,32,60,102,114,111,109,108,105,115,116, - 62,96,96,41,46,32,32,84,104,101,32,39,108,101,118,101, - 108,39,10,32,32,32,32,97,114,103,117,109,101,110,116,32, - 114,101,112,114,101,115,101,110,116,115,32,116,104,101,32,112, - 97,99,107,97,103,101,32,108,111,99,97,116,105,111,110,32, - 116,111,32,105,109,112,111,114,116,32,102,114,111,109,32,105, - 110,32,97,32,114,101,108,97,116,105,118,101,10,32,32,32, - 32,105,109,112,111,114,116,32,40,101,46,103,46,32,96,96, - 102,114,111,109,32,46,46,112,107,103,32,105,109,112,111,114, - 116,32,109,111,100,96,96,32,119,111,117,108,100,32,104,97, - 118,101,32,97,32,39,108,101,118,101,108,39,32,111,102,32, - 50,41,46,10,10,32,32,32,32,105,0,0,0,0,117,1, - 0,0,0,46,78,40,9,0,0,0,117,11,0,0,0,95, - 103,99,100,95,105,109,112,111,114,116,117,4,0,0,0,78, - 111,110,101,117,17,0,0,0,95,99,97,108,99,95,95,95, - 112,97,99,107,97,103,101,95,95,117,9,0,0,0,112,97, - 114,116,105,116,105,111,110,117,3,0,0,0,108,101,110,117, - 3,0,0,0,115,121,115,117,7,0,0,0,109,111,100,117, - 108,101,115,117,8,0,0,0,95,95,110,97,109,101,95,95, - 117,16,0,0,0,95,104,97,110,100,108,101,95,102,114,111, - 109,108,105,115,116,40,9,0,0,0,117,4,0,0,0,110, - 97,109,101,117,7,0,0,0,103,108,111,98,97,108,115,117, - 6,0,0,0,108,111,99,97,108,115,117,8,0,0,0,102, - 114,111,109,108,105,115,116,117,5,0,0,0,108,101,118,101, - 108,117,6,0,0,0,109,111,100,117,108,101,117,8,0,0, - 0,103,108,111,98,97,108,115,95,117,7,0,0,0,112,97, - 99,107,97,103,101,117,7,0,0,0,99,117,116,95,111,102, + 62,117,10,0,0,0,70,105,108,101,70,105,110,100,101,114, + 37,5,0,0,115,16,0,0,0,16,7,6,2,12,14,12, + 4,6,2,12,42,12,30,18,18,117,10,0,0,0,70,105, + 108,101,70,105,110,100,101,114,99,1,0,0,0,0,0,0, + 0,1,0,0,0,2,0,0,0,66,0,0,0,115,50,0, + 0,0,124,0,0,69,101,0,0,90,1,0,100,0,0,90, + 2,0,100,1,0,90,3,0,100,2,0,100,3,0,132,0, + 0,90,4,0,100,4,0,100,5,0,132,0,0,90,5,0, + 100,6,0,83,40,7,0,0,0,117,18,0,0,0,95,73, + 109,112,111,114,116,76,111,99,107,67,111,110,116,101,120,116, + 117,36,0,0,0,67,111,110,116,101,120,116,32,109,97,110, + 97,103,101,114,32,102,111,114,32,116,104,101,32,105,109,112, + 111,114,116,32,108,111,99,107,46,99,1,0,0,0,0,0, + 0,0,1,0,0,0,1,0,0,0,67,0,0,0,115,14, + 0,0,0,116,0,0,106,1,0,131,0,0,1,100,1,0, + 83,40,2,0,0,0,117,24,0,0,0,65,99,113,117,105, + 114,101,32,116,104,101,32,105,109,112,111,114,116,32,108,111, + 99,107,46,78,40,2,0,0,0,117,4,0,0,0,95,105, + 109,112,117,12,0,0,0,97,99,113,117,105,114,101,95,108, + 111,99,107,40,1,0,0,0,117,4,0,0,0,115,101,108, 102,40,0,0,0,0,40,0,0,0,0,117,29,0,0,0, 60,102,114,111,122,101,110,32,105,109,112,111,114,116,108,105, - 98,46,95,98,111,111,116,115,116,114,97,112,62,117,10,0, - 0,0,95,95,105,109,112,111,114,116,95,95,111,6,0,0, - 115,26,0,0,0,0,11,12,1,15,2,24,1,12,1,18, - 1,6,3,12,1,23,1,6,1,4,2,35,1,40,2,117, - 10,0,0,0,95,95,105,109,112,111,114,116,95,95,99,2, - 0,0,0,0,0,0,0,14,0,0,0,13,0,0,0,67, - 0,0,0,115,196,2,0,0,124,1,0,97,0,0,124,0, - 0,97,1,0,116,1,0,106,2,0,106,3,0,114,33,0, - 116,4,0,97,5,0,110,6,0,116,6,0,97,5,0,120, - 47,0,116,0,0,116,1,0,102,2,0,68,93,33,0,125, - 2,0,116,7,0,124,2,0,100,1,0,131,2,0,115,52, - 0,116,8,0,124,2,0,95,9,0,113,52,0,113,52,0, - 87,116,1,0,106,10,0,116,11,0,25,125,3,0,120,76, - 0,100,28,0,68,93,68,0,125,4,0,124,4,0,116,1, - 0,106,10,0,107,7,0,114,148,0,116,8,0,106,12,0, - 124,4,0,131,1,0,125,5,0,110,13,0,116,1,0,106, - 10,0,124,4,0,25,125,5,0,116,13,0,124,3,0,124, - 4,0,124,5,0,131,3,0,1,113,109,0,87,100,6,0, - 100,7,0,103,1,0,102,2,0,100,8,0,100,9,0,100, - 7,0,103,2,0,102,2,0,100,10,0,100,9,0,100,7, - 0,103,2,0,102,2,0,102,3,0,125,6,0,120,189,0, - 124,6,0,68,93,169,0,92,2,0,125,7,0,125,8,0, - 116,14,0,100,11,0,100,12,0,132,0,0,124,8,0,68, - 131,1,0,131,1,0,115,23,1,116,15,0,130,1,0,124, - 8,0,100,13,0,25,125,9,0,124,7,0,116,1,0,106, - 10,0,107,6,0,114,65,1,116,1,0,106,10,0,124,7, - 0,25,125,10,0,80,113,236,0,121,60,0,116,8,0,106, - 12,0,124,7,0,131,1,0,125,10,0,124,7,0,100,10, - 0,107,2,0,114,123,1,100,14,0,116,1,0,106,16,0, - 107,6,0,114,123,1,124,8,0,100,15,0,25,125,9,0, - 110,0,0,80,87,113,236,0,4,116,17,0,107,10,0,114, - 148,1,1,1,1,119,236,0,89,113,236,0,88,113,236,0, - 87,116,17,0,100,16,0,131,1,0,130,1,0,121,19,0, - 116,8,0,106,12,0,100,17,0,131,1,0,125,11,0,87, - 110,24,0,4,116,17,0,107,10,0,114,210,1,1,1,1, - 100,27,0,125,11,0,89,110,1,0,88,116,8,0,106,12, - 0,100,18,0,131,1,0,125,12,0,124,7,0,100,8,0, - 107,2,0,114,16,2,116,8,0,106,12,0,100,19,0,131, - 1,0,125,13,0,116,13,0,124,3,0,100,20,0,124,13, - 0,131,3,0,1,110,0,0,116,13,0,124,3,0,100,21, - 0,124,10,0,131,3,0,1,116,13,0,124,3,0,100,17, - 0,124,11,0,131,3,0,1,116,13,0,124,3,0,100,18, - 0,124,12,0,131,3,0,1,116,13,0,124,3,0,100,22, - 0,124,9,0,131,3,0,1,116,13,0,124,3,0,100,23, - 0,116,19,0,124,8,0,131,1,0,131,3,0,1,116,13, - 0,124,3,0,100,24,0,116,20,0,131,0,0,131,3,0, - 1,116,21,0,106,22,0,116,0,0,106,23,0,131,0,0, - 131,1,0,1,124,7,0,100,8,0,107,2,0,114,192,2, - 116,24,0,106,25,0,100,25,0,131,1,0,1,100,26,0, - 116,21,0,107,6,0,114,192,2,100,29,0,116,27,0,95, - 28,0,113,192,2,110,0,0,100,27,0,83,40,30,0,0, - 0,117,250,0,0,0,83,101,116,117,112,32,105,109,112,111, - 114,116,108,105,98,32,98,121,32,105,109,112,111,114,116,105, - 110,103,32,110,101,101,100,101,100,32,98,117,105,108,116,45, - 105,110,32,109,111,100,117,108,101,115,32,97,110,100,32,105, - 110,106,101,99,116,105,110,103,32,116,104,101,109,10,32,32, - 32,32,105,110,116,111,32,116,104,101,32,103,108,111,98,97, - 108,32,110,97,109,101,115,112,97,99,101,46,10,10,32,32, - 32,32,65,115,32,115,121,115,32,105,115,32,110,101,101,100, - 101,100,32,102,111,114,32,115,121,115,46,109,111,100,117,108, - 101,115,32,97,99,99,101,115,115,32,97,110,100,32,95,105, - 109,112,32,105,115,32,110,101,101,100,101,100,32,116,111,32, - 108,111,97,100,32,98,117,105,108,116,45,105,110,10,32,32, - 32,32,109,111,100,117,108,101,115,44,32,116,104,111,115,101, - 32,116,119,111,32,109,111,100,117,108,101,115,32,109,117,115, - 116,32,98,101,32,101,120,112,108,105,99,105,116,108,121,32, - 112,97,115,115,101,100,32,105,110,46,10,10,32,32,32,32, - 117,10,0,0,0,95,95,108,111,97,100,101,114,95,95,117, - 3,0,0,0,95,105,111,117,9,0,0,0,95,119,97,114, - 110,105,110,103,115,117,8,0,0,0,98,117,105,108,116,105, - 110,115,117,7,0,0,0,109,97,114,115,104,97,108,117,5, - 0,0,0,112,111,115,105,120,117,1,0,0,0,47,117,2, - 0,0,0,110,116,117,1,0,0,0,92,117,3,0,0,0, - 111,115,50,99,1,0,0,0,0,0,0,0,2,0,0,0, - 3,0,0,0,115,0,0,0,115,33,0,0,0,124,0,0, - 93,23,0,125,1,0,116,0,0,124,1,0,131,1,0,100, - 0,0,107,2,0,86,1,113,3,0,100,1,0,83,40,2, - 0,0,0,105,1,0,0,0,78,40,1,0,0,0,117,3, - 0,0,0,108,101,110,40,2,0,0,0,117,2,0,0,0, - 46,48,117,3,0,0,0,115,101,112,40,0,0,0,0,40, - 0,0,0,0,117,29,0,0,0,60,102,114,111,122,101,110, - 32,105,109,112,111,114,116,108,105,98,46,95,98,111,111,116, - 115,116,114,97,112,62,117,9,0,0,0,60,103,101,110,101, - 120,112,114,62,175,6,0,0,115,2,0,0,0,6,0,117, - 25,0,0,0,95,115,101,116,117,112,46,60,108,111,99,97, - 108,115,62,46,60,103,101,110,101,120,112,114,62,105,0,0, - 0,0,117,7,0,0,0,69,77,88,32,71,67,67,105,1, - 0,0,0,117,30,0,0,0,105,109,112,111,114,116,108,105, - 98,32,114,101,113,117,105,114,101,115,32,112,111,115,105,120, - 32,111,114,32,110,116,117,7,0,0,0,95,116,104,114,101, - 97,100,117,8,0,0,0,95,119,101,97,107,114,101,102,117, - 6,0,0,0,119,105,110,114,101,103,117,7,0,0,0,95, - 119,105,110,114,101,103,117,3,0,0,0,95,111,115,117,8, - 0,0,0,112,97,116,104,95,115,101,112,117,15,0,0,0, - 112,97,116,104,95,115,101,112,97,114,97,116,111,114,115,117, - 11,0,0,0,95,114,101,108,97,120,95,99,97,115,101,117, - 4,0,0,0,46,112,121,119,117,6,0,0,0,95,100,46, - 112,121,100,78,40,4,0,0,0,117,3,0,0,0,95,105, - 111,117,9,0,0,0,95,119,97,114,110,105,110,103,115,117, - 8,0,0,0,98,117,105,108,116,105,110,115,117,7,0,0, - 0,109,97,114,115,104,97,108,84,40,29,0,0,0,117,4, - 0,0,0,95,105,109,112,117,3,0,0,0,115,121,115,117, - 5,0,0,0,102,108,97,103,115,117,8,0,0,0,111,112, - 116,105,109,105,122,101,117,27,0,0,0,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,117,17,0,0,0,66,89,84,69,67, - 79,68,69,95,83,85,70,70,73,88,69,83,117,23,0,0, - 0,68,69,66,85,71,95,66,89,84,69,67,79,68,69,95, - 83,85,70,70,73,88,69,83,117,7,0,0,0,104,97,115, - 97,116,116,114,117,15,0,0,0,66,117,105,108,116,105,110, - 73,109,112,111,114,116,101,114,117,10,0,0,0,95,95,108, - 111,97,100,101,114,95,95,117,7,0,0,0,109,111,100,117, - 108,101,115,117,8,0,0,0,95,95,110,97,109,101,95,95, - 117,11,0,0,0,108,111,97,100,95,109,111,100,117,108,101, - 117,7,0,0,0,115,101,116,97,116,116,114,117,3,0,0, - 0,97,108,108,117,14,0,0,0,65,115,115,101,114,116,105, - 111,110,69,114,114,111,114,117,7,0,0,0,118,101,114,115, - 105,111,110,117,11,0,0,0,73,109,112,111,114,116,69,114, - 114,111,114,117,4,0,0,0,78,111,110,101,117,3,0,0, - 0,115,101,116,117,16,0,0,0,95,109,97,107,101,95,114, - 101,108,97,120,95,99,97,115,101,117,18,0,0,0,69,88, - 84,69,78,83,73,79,78,95,83,85,70,70,73,88,69,83, - 117,6,0,0,0,101,120,116,101,110,100,117,18,0,0,0, - 101,120,116,101,110,115,105,111,110,95,115,117,102,102,105,120, - 101,115,117,15,0,0,0,83,79,85,82,67,69,95,83,85, - 70,70,73,88,69,83,117,6,0,0,0,97,112,112,101,110, - 100,117,4,0,0,0,84,114,117,101,117,21,0,0,0,87, - 105,110,100,111,119,115,82,101,103,105,115,116,114,121,70,105, - 110,100,101,114,117,11,0,0,0,68,69,66,85,71,95,66, - 85,73,76,68,40,14,0,0,0,117,10,0,0,0,115,121, - 115,95,109,111,100,117,108,101,117,11,0,0,0,95,105,109, - 112,95,109,111,100,117,108,101,117,6,0,0,0,109,111,100, - 117,108,101,117,11,0,0,0,115,101,108,102,95,109,111,100, - 117,108,101,117,12,0,0,0,98,117,105,108,116,105,110,95, - 110,97,109,101,117,14,0,0,0,98,117,105,108,116,105,110, - 95,109,111,100,117,108,101,117,10,0,0,0,111,115,95,100, - 101,116,97,105,108,115,117,10,0,0,0,98,117,105,108,116, - 105,110,95,111,115,117,15,0,0,0,112,97,116,104,95,115, - 101,112,97,114,97,116,111,114,115,117,8,0,0,0,112,97, - 116,104,95,115,101,112,117,9,0,0,0,111,115,95,109,111, - 100,117,108,101,117,13,0,0,0,116,104,114,101,97,100,95, - 109,111,100,117,108,101,117,14,0,0,0,119,101,97,107,114, - 101,102,95,109,111,100,117,108,101,117,13,0,0,0,119,105, - 110,114,101,103,95,109,111,100,117,108,101,40,0,0,0,0, - 40,0,0,0,0,117,29,0,0,0,60,102,114,111,122,101, - 110,32,105,109,112,111,114,116,108,105,98,46,95,98,111,111, - 116,115,116,114,97,112,62,117,6,0,0,0,95,115,101,116, - 117,112,143,6,0,0,115,96,0,0,0,0,9,6,1,6, - 2,12,1,9,2,6,2,19,1,15,1,16,2,13,1,13, - 1,15,1,18,2,13,1,20,2,48,1,19,2,31,1,10, - 1,15,1,13,1,4,2,3,1,15,2,27,1,13,1,5, - 1,13,1,12,2,12,2,3,1,19,1,13,2,11,1,15, - 2,12,1,15,1,19,2,16,1,16,1,16,1,16,1,22, - 2,19,1,19,1,12,1,13,1,12,1,117,6,0,0,0, - 95,115,101,116,117,112,99,2,0,0,0,0,0,0,0,3, - 0,0,0,3,0,0,0,67,0,0,0,115,136,0,0,0, - 116,0,0,124,0,0,124,1,0,131,2,0,1,116,1,0, - 131,0,0,125,2,0,116,2,0,106,3,0,106,4,0,116, - 5,0,106,6,0,124,2,0,140,0,0,103,1,0,131,1, - 0,1,116,2,0,106,7,0,106,8,0,116,9,0,131,1, - 0,1,116,2,0,106,7,0,106,8,0,116,10,0,131,1, - 0,1,116,11,0,106,12,0,100,1,0,107,2,0,114,116, - 0,116,2,0,106,7,0,106,8,0,116,13,0,131,1,0, - 1,110,0,0,116,2,0,106,7,0,106,8,0,116,14,0, - 131,1,0,1,100,2,0,83,40,3,0,0,0,117,50,0, - 0,0,73,110,115,116,97,108,108,32,105,109,112,111,114,116, - 108,105,98,32,97,115,32,116,104,101,32,105,109,112,108,101, - 109,101,110,116,97,116,105,111,110,32,111,102,32,105,109,112, - 111,114,116,46,117,2,0,0,0,110,116,78,40,15,0,0, - 0,117,6,0,0,0,95,115,101,116,117,112,117,27,0,0, - 0,95,103,101,116,95,115,117,112,112,111,114,116,101,100,95, - 102,105,108,101,95,108,111,97,100,101,114,115,117,3,0,0, - 0,115,121,115,117,10,0,0,0,112,97,116,104,95,104,111, - 111,107,115,117,6,0,0,0,101,120,116,101,110,100,117,10, - 0,0,0,70,105,108,101,70,105,110,100,101,114,117,9,0, - 0,0,112,97,116,104,95,104,111,111,107,117,9,0,0,0, - 109,101,116,97,95,112,97,116,104,117,6,0,0,0,97,112, - 112,101,110,100,117,15,0,0,0,66,117,105,108,116,105,110, - 73,109,112,111,114,116,101,114,117,14,0,0,0,70,114,111, - 122,101,110,73,109,112,111,114,116,101,114,117,3,0,0,0, - 95,111,115,117,8,0,0,0,95,95,110,97,109,101,95,95, - 117,21,0,0,0,87,105,110,100,111,119,115,82,101,103,105, - 115,116,114,121,70,105,110,100,101,114,117,10,0,0,0,80, - 97,116,104,70,105,110,100,101,114,40,3,0,0,0,117,10, - 0,0,0,115,121,115,95,109,111,100,117,108,101,117,11,0, - 0,0,95,105,109,112,95,109,111,100,117,108,101,117,17,0, - 0,0,115,117,112,112,111,114,116,101,100,95,108,111,97,100, - 101,114,115,40,0,0,0,0,40,0,0,0,0,117,29,0, - 0,0,60,102,114,111,122,101,110,32,105,109,112,111,114,116, - 108,105,98,46,95,98,111,111,116,115,116,114,97,112,62,117, - 8,0,0,0,95,105,110,115,116,97,108,108,217,6,0,0, - 115,16,0,0,0,0,2,13,1,9,1,28,1,16,1,16, - 1,15,1,19,1,117,8,0,0,0,95,105,110,115,116,97, - 108,108,78,40,3,0,0,0,117,3,0,0,0,119,105,110, - 117,6,0,0,0,99,121,103,119,105,110,117,6,0,0,0, - 100,97,114,119,105,110,40,74,0,0,0,117,7,0,0,0, - 95,95,100,111,99,95,95,117,27,0,0,0,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,117,16,0,0,0,95,109,97,107, - 101,95,114,101,108,97,120,95,99,97,115,101,117,7,0,0, - 0,95,119,95,108,111,110,103,117,7,0,0,0,95,114,95, - 108,111,110,103,117,10,0,0,0,95,112,97,116,104,95,106, - 111,105,110,117,11,0,0,0,95,112,97,116,104,95,115,112, - 108,105,116,117,18,0,0,0,95,112,97,116,104,95,105,115, - 95,109,111,100,101,95,116,121,112,101,117,12,0,0,0,95, - 112,97,116,104,95,105,115,102,105,108,101,117,11,0,0,0, - 95,112,97,116,104,95,105,115,100,105,114,117,13,0,0,0, - 95,119,114,105,116,101,95,97,116,111,109,105,99,117,5,0, - 0,0,95,119,114,97,112,117,4,0,0,0,116,121,112,101, - 117,8,0,0,0,95,95,99,111,100,101,95,95,117,10,0, - 0,0,95,99,111,100,101,95,116,121,112,101,117,10,0,0, - 0,110,101,119,95,109,111,100,117,108,101,117,13,0,0,0, - 95,109,111,100,117,108,101,95,108,111,99,107,115,117,12,0, - 0,0,95,98,108,111,99,107,105,110,103,95,111,110,117,12, - 0,0,0,82,117,110,116,105,109,101,69,114,114,111,114,117, - 14,0,0,0,95,68,101,97,100,108,111,99,107,69,114,114, - 111,114,117,11,0,0,0,95,77,111,100,117,108,101,76,111, - 99,107,117,16,0,0,0,95,68,117,109,109,121,77,111,100, - 117,108,101,76,111,99,107,117,16,0,0,0,95,103,101,116, - 95,109,111,100,117,108,101,95,108,111,99,107,117,19,0,0, - 0,95,108,111,99,107,95,117,110,108,111,99,107,95,109,111, - 100,117,108,101,117,25,0,0,0,95,99,97,108,108,95,119, - 105,116,104,95,102,114,97,109,101,115,95,114,101,109,111,118, - 101,100,117,3,0,0,0,111,114,100,117,17,0,0,0,95, - 82,65,87,95,77,65,71,73,67,95,78,85,77,66,69,82, - 117,5,0,0,0,98,121,116,101,115,117,5,0,0,0,114, - 97,110,103,101,117,12,0,0,0,95,77,65,71,73,67,95, - 66,89,84,69,83,117,8,0,0,0,95,80,89,67,65,67, - 72,69,117,15,0,0,0,83,79,85,82,67,69,95,83,85, - 70,70,73,88,69,83,117,23,0,0,0,68,69,66,85,71, - 95,66,89,84,69,67,79,68,69,95,83,85,70,70,73,88, - 69,83,117,27,0,0,0,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,117,4,0,0,0,78,111,110,101,117,17,0,0,0, - 99,97,99,104,101,95,102,114,111,109,95,115,111,117,114,99, - 101,117,17,0,0,0,115,111,117,114,99,101,95,102,114,111, - 109,95,99,97,99,104,101,117,15,0,0,0,95,103,101,116, - 95,115,111,117,114,99,101,102,105,108,101,117,16,0,0,0, - 95,118,101,114,98,111,115,101,95,109,101,115,115,97,103,101, - 117,11,0,0,0,115,101,116,95,112,97,99,107,97,103,101, - 117,10,0,0,0,115,101,116,95,108,111,97,100,101,114,117, - 17,0,0,0,109,111,100,117,108,101,95,102,111,114,95,108, - 111,97,100,101,114,117,11,0,0,0,95,99,104,101,99,107, - 95,110,97,109,101,117,17,0,0,0,95,114,101,113,117,105, - 114,101,115,95,98,117,105,108,116,105,110,117,16,0,0,0, - 95,114,101,113,117,105,114,101,115,95,102,114,111,122,101,110, - 117,17,0,0,0,95,102,105,110,100,95,109,111,100,117,108, - 101,95,115,104,105,109,117,15,0,0,0,66,117,105,108,116, - 105,110,73,109,112,111,114,116,101,114,117,14,0,0,0,70, - 114,111,122,101,110,73,109,112,111,114,116,101,114,117,21,0, + 98,46,95,98,111,111,116,115,116,114,97,112,62,117,9,0, + 0,0,95,95,101,110,116,101,114,95,95,166,5,0,0,115, + 2,0,0,0,0,2,117,28,0,0,0,95,73,109,112,111, + 114,116,76,111,99,107,67,111,110,116,101,120,116,46,95,95, + 101,110,116,101,114,95,95,99,4,0,0,0,0,0,0,0, + 4,0,0,0,1,0,0,0,67,0,0,0,115,14,0,0, + 0,116,0,0,106,1,0,131,0,0,1,100,1,0,83,40, + 2,0,0,0,117,60,0,0,0,82,101,108,101,97,115,101, + 32,116,104,101,32,105,109,112,111,114,116,32,108,111,99,107, + 32,114,101,103,97,114,100,108,101,115,115,32,111,102,32,97, + 110,121,32,114,97,105,115,101,100,32,101,120,99,101,112,116, + 105,111,110,115,46,78,40,2,0,0,0,117,4,0,0,0, + 95,105,109,112,117,12,0,0,0,114,101,108,101,97,115,101, + 95,108,111,99,107,40,4,0,0,0,117,4,0,0,0,115, + 101,108,102,117,8,0,0,0,101,120,99,95,116,121,112,101, + 117,9,0,0,0,101,120,99,95,118,97,108,117,101,117,13, + 0,0,0,101,120,99,95,116,114,97,99,101,98,97,99,107, + 40,0,0,0,0,40,0,0,0,0,117,29,0,0,0,60, + 102,114,111,122,101,110,32,105,109,112,111,114,116,108,105,98, + 46,95,98,111,111,116,115,116,114,97,112,62,117,8,0,0, + 0,95,95,101,120,105,116,95,95,170,5,0,0,115,2,0, + 0,0,0,2,117,27,0,0,0,95,73,109,112,111,114,116, + 76,111,99,107,67,111,110,116,101,120,116,46,95,95,101,120, + 105,116,95,95,78,40,6,0,0,0,117,8,0,0,0,95, + 95,110,97,109,101,95,95,117,10,0,0,0,95,95,109,111, + 100,117,108,101,95,95,117,12,0,0,0,95,95,113,117,97, + 108,110,97,109,101,95,95,117,7,0,0,0,95,95,100,111, + 99,95,95,117,9,0,0,0,95,95,101,110,116,101,114,95, + 95,117,8,0,0,0,95,95,101,120,105,116,95,95,40,1, + 0,0,0,117,10,0,0,0,95,95,108,111,99,97,108,115, + 95,95,40,0,0,0,0,40,0,0,0,0,117,29,0,0, + 0,60,102,114,111,122,101,110,32,105,109,112,111,114,116,108, + 105,98,46,95,98,111,111,116,115,116,114,97,112,62,117,18, + 0,0,0,95,73,109,112,111,114,116,76,111,99,107,67,111, + 110,116,101,120,116,162,5,0,0,115,6,0,0,0,16,2, + 6,2,12,4,117,18,0,0,0,95,73,109,112,111,114,116, + 76,111,99,107,67,111,110,116,101,120,116,99,3,0,0,0, + 0,0,0,0,5,0,0,0,4,0,0,0,67,0,0,0, + 115,91,0,0,0,124,1,0,106,0,0,100,1,0,124,2, + 0,100,2,0,24,131,2,0,125,3,0,116,1,0,124,3, + 0,131,1,0,124,2,0,107,0,0,114,55,0,116,2,0, + 100,3,0,131,1,0,130,1,0,110,0,0,124,3,0,100, + 4,0,25,125,4,0,124,0,0,114,87,0,100,5,0,106, + 3,0,124,4,0,124,0,0,131,2,0,83,124,4,0,83, + 40,6,0,0,0,117,50,0,0,0,82,101,115,111,108,118, + 101,32,97,32,114,101,108,97,116,105,118,101,32,109,111,100, + 117,108,101,32,110,97,109,101,32,116,111,32,97,110,32,97, + 98,115,111,108,117,116,101,32,111,110,101,46,117,1,0,0, + 0,46,105,1,0,0,0,117,50,0,0,0,97,116,116,101, + 109,112,116,101,100,32,114,101,108,97,116,105,118,101,32,105, + 109,112,111,114,116,32,98,101,121,111,110,100,32,116,111,112, + 45,108,101,118,101,108,32,112,97,99,107,97,103,101,105,0, + 0,0,0,117,5,0,0,0,123,125,46,123,125,40,4,0, + 0,0,117,6,0,0,0,114,115,112,108,105,116,117,3,0, + 0,0,108,101,110,117,10,0,0,0,86,97,108,117,101,69, + 114,114,111,114,117,6,0,0,0,102,111,114,109,97,116,40, + 5,0,0,0,117,4,0,0,0,110,97,109,101,117,7,0, + 0,0,112,97,99,107,97,103,101,117,5,0,0,0,108,101, + 118,101,108,117,4,0,0,0,98,105,116,115,117,4,0,0, + 0,98,97,115,101,40,0,0,0,0,40,0,0,0,0,117, + 29,0,0,0,60,102,114,111,122,101,110,32,105,109,112,111, + 114,116,108,105,98,46,95,98,111,111,116,115,116,114,97,112, + 62,117,13,0,0,0,95,114,101,115,111,108,118,101,95,110, + 97,109,101,175,5,0,0,115,10,0,0,0,0,2,22,1, + 18,1,15,1,10,1,117,13,0,0,0,95,114,101,115,111, + 108,118,101,95,110,97,109,101,99,2,0,0,0,0,0,0, + 0,4,0,0,0,11,0,0,0,67,0,0,0,115,138,0, + 0,0,116,0,0,106,1,0,115,28,0,116,2,0,106,3, + 0,100,1,0,116,4,0,131,2,0,1,110,0,0,120,103, + 0,116,0,0,106,1,0,68,93,88,0,125,2,0,116,5, + 0,131,0,0,143,23,0,1,124,2,0,106,6,0,124,0, + 0,124,1,0,131,2,0,125,3,0,87,100,2,0,81,88, + 124,3,0,100,2,0,107,9,0,114,38,0,124,0,0,116, + 0,0,106,8,0,107,7,0,114,109,0,124,3,0,83,116, + 0,0,106,8,0,124,0,0,25,106,9,0,83,113,38,0, + 113,38,0,87,100,2,0,83,100,2,0,83,40,3,0,0, + 0,117,23,0,0,0,70,105,110,100,32,97,32,109,111,100, + 117,108,101,39,115,32,108,111,97,100,101,114,46,117,22,0, + 0,0,115,121,115,46,109,101,116,97,95,112,97,116,104,32, + 105,115,32,101,109,112,116,121,78,40,10,0,0,0,117,3, + 0,0,0,115,121,115,117,9,0,0,0,109,101,116,97,95, + 112,97,116,104,117,9,0,0,0,95,119,97,114,110,105,110, + 103,115,117,4,0,0,0,119,97,114,110,117,13,0,0,0, + 73,109,112,111,114,116,87,97,114,110,105,110,103,117,18,0, + 0,0,95,73,109,112,111,114,116,76,111,99,107,67,111,110, + 116,101,120,116,117,11,0,0,0,102,105,110,100,95,109,111, + 100,117,108,101,117,4,0,0,0,78,111,110,101,117,7,0, + 0,0,109,111,100,117,108,101,115,117,10,0,0,0,95,95, + 108,111,97,100,101,114,95,95,40,4,0,0,0,117,4,0, + 0,0,110,97,109,101,117,4,0,0,0,112,97,116,104,117, + 6,0,0,0,102,105,110,100,101,114,117,6,0,0,0,108, + 111,97,100,101,114,40,0,0,0,0,40,0,0,0,0,117, + 29,0,0,0,60,102,114,111,122,101,110,32,105,109,112,111, + 114,116,108,105,98,46,95,98,111,111,116,115,116,114,97,112, + 62,117,12,0,0,0,95,102,105,110,100,95,109,111,100,117, + 108,101,184,5,0,0,115,20,0,0,0,0,2,9,1,19, + 1,16,1,10,1,24,1,12,2,15,1,4,2,21,2,117, + 12,0,0,0,95,102,105,110,100,95,109,111,100,117,108,101, + 99,3,0,0,0,0,0,0,0,4,0,0,0,4,0,0, + 0,67,0,0,0,115,194,0,0,0,116,0,0,124,0,0, + 116,1,0,131,2,0,115,45,0,116,2,0,100,1,0,106, + 3,0,116,4,0,124,0,0,131,1,0,131,1,0,131,1, + 0,130,1,0,110,0,0,124,2,0,100,2,0,107,0,0, + 114,72,0,116,5,0,100,3,0,131,1,0,130,1,0,110, + 0,0,124,1,0,114,156,0,116,0,0,124,1,0,116,1, + 0,131,2,0,115,108,0,116,2,0,100,4,0,131,1,0, + 130,1,0,113,156,0,124,1,0,116,6,0,106,7,0,107, + 7,0,114,156,0,100,5,0,125,3,0,116,8,0,124,3, + 0,106,3,0,124,1,0,131,1,0,131,1,0,130,1,0, + 113,156,0,110,0,0,124,0,0,12,114,190,0,124,2,0, + 100,2,0,107,2,0,114,190,0,116,5,0,100,6,0,131, + 1,0,130,1,0,110,0,0,100,7,0,83,40,8,0,0, + 0,117,28,0,0,0,86,101,114,105,102,121,32,97,114,103, + 117,109,101,110,116,115,32,97,114,101,32,34,115,97,110,101, + 34,46,117,31,0,0,0,109,111,100,117,108,101,32,110,97, + 109,101,32,109,117,115,116,32,98,101,32,115,116,114,44,32, + 110,111,116,32,123,125,105,0,0,0,0,117,18,0,0,0, + 108,101,118,101,108,32,109,117,115,116,32,98,101,32,62,61, + 32,48,117,31,0,0,0,95,95,112,97,99,107,97,103,101, + 95,95,32,110,111,116,32,115,101,116,32,116,111,32,97,32, + 115,116,114,105,110,103,117,61,0,0,0,80,97,114,101,110, + 116,32,109,111,100,117,108,101,32,123,33,114,125,32,110,111, + 116,32,108,111,97,100,101,100,44,32,99,97,110,110,111,116, + 32,112,101,114,102,111,114,109,32,114,101,108,97,116,105,118, + 101,32,105,109,112,111,114,116,117,17,0,0,0,69,109,112, + 116,121,32,109,111,100,117,108,101,32,110,97,109,101,78,40, + 9,0,0,0,117,10,0,0,0,105,115,105,110,115,116,97, + 110,99,101,117,3,0,0,0,115,116,114,117,9,0,0,0, + 84,121,112,101,69,114,114,111,114,117,6,0,0,0,102,111, + 114,109,97,116,117,4,0,0,0,116,121,112,101,117,10,0, + 0,0,86,97,108,117,101,69,114,114,111,114,117,3,0,0, + 0,115,121,115,117,7,0,0,0,109,111,100,117,108,101,115, + 117,11,0,0,0,83,121,115,116,101,109,69,114,114,111,114, + 40,4,0,0,0,117,4,0,0,0,110,97,109,101,117,7, + 0,0,0,112,97,99,107,97,103,101,117,5,0,0,0,108, + 101,118,101,108,117,3,0,0,0,109,115,103,40,0,0,0, + 0,40,0,0,0,0,117,29,0,0,0,60,102,114,111,122, + 101,110,32,105,109,112,111,114,116,108,105,98,46,95,98,111, + 111,116,115,116,114,97,112,62,117,13,0,0,0,95,115,97, + 110,105,116,121,95,99,104,101,99,107,201,5,0,0,115,24, + 0,0,0,0,2,15,1,30,1,12,1,15,1,6,1,15, + 1,15,1,15,1,6,2,27,1,19,1,117,13,0,0,0, + 95,115,97,110,105,116,121,95,99,104,101,99,107,117,20,0, + 0,0,78,111,32,109,111,100,117,108,101,32,110,97,109,101, + 100,32,123,33,114,125,99,2,0,0,0,0,0,0,0,9, + 0,0,0,27,0,0,0,67,0,0,0,115,12,2,0,0, + 100,0,0,125,2,0,124,0,0,106,1,0,100,1,0,131, + 1,0,100,2,0,25,125,3,0,124,3,0,114,178,0,124, + 3,0,116,2,0,106,3,0,107,7,0,114,62,0,116,4, + 0,124,1,0,124,3,0,131,2,0,1,110,0,0,124,0, + 0,116,2,0,106,3,0,107,6,0,114,88,0,116,2,0, + 106,3,0,124,0,0,25,83,116,2,0,106,3,0,124,3, + 0,25,125,4,0,121,13,0,124,4,0,106,5,0,125,2, + 0,87,113,178,0,4,116,6,0,107,10,0,114,174,0,1, + 1,1,116,7,0,100,3,0,23,106,8,0,124,0,0,124, + 3,0,131,2,0,125,5,0,116,9,0,124,5,0,100,4, + 0,124,0,0,131,1,1,130,1,0,89,113,178,0,88,110, + 0,0,116,10,0,124,0,0,124,2,0,131,2,0,125,6, + 0,124,6,0,100,0,0,107,8,0,114,250,0,116,9,0, + 116,7,0,106,8,0,124,0,0,131,1,0,100,4,0,124, + 0,0,131,1,1,125,7,0,100,10,0,124,7,0,95,12, + 0,124,7,0,130,1,0,110,47,0,124,0,0,116,2,0, + 106,3,0,107,7,0,114,41,1,124,6,0,106,13,0,124, + 0,0,131,1,0,1,116,14,0,100,5,0,124,0,0,124, + 6,0,131,3,0,1,110,0,0,116,2,0,106,3,0,124, + 0,0,25,125,8,0,124,3,0,114,105,1,116,2,0,106, + 3,0,124,3,0,25,125,4,0,116,15,0,124,4,0,124, + 0,0,106,1,0,100,1,0,131,1,0,100,6,0,25,124, + 8,0,131,3,0,1,110,0,0,116,16,0,124,8,0,100, + 7,0,100,0,0,131,3,0,100,0,0,107,8,0,114,212, + 1,121,59,0,124,8,0,106,17,0,124,8,0,95,18,0, + 116,19,0,124,8,0,100,8,0,131,2,0,115,187,1,124, + 8,0,106,18,0,106,1,0,100,1,0,131,1,0,100,2, + 0,25,124,8,0,95,18,0,110,0,0,87,113,212,1,4, + 116,6,0,107,10,0,114,208,1,1,1,1,89,113,212,1, + 88,110,0,0,116,19,0,124,8,0,100,9,0,131,2,0, + 115,8,2,121,13,0,124,6,0,124,8,0,95,20,0,87, + 113,8,2,4,116,6,0,107,10,0,114,4,2,1,1,1, + 89,113,8,2,88,110,0,0,124,8,0,83,40,11,0,0, + 0,78,117,1,0,0,0,46,105,0,0,0,0,117,21,0, + 0,0,59,32,123,125,32,105,115,32,110,111,116,32,97,32, + 112,97,99,107,97,103,101,117,4,0,0,0,110,97,109,101, + 117,18,0,0,0,105,109,112,111,114,116,32,123,33,114,125, + 32,35,32,123,33,114,125,105,2,0,0,0,117,11,0,0, + 0,95,95,112,97,99,107,97,103,101,95,95,117,8,0,0, + 0,95,95,112,97,116,104,95,95,117,10,0,0,0,95,95, + 108,111,97,100,101,114,95,95,84,40,21,0,0,0,117,4, + 0,0,0,78,111,110,101,117,10,0,0,0,114,112,97,114, + 116,105,116,105,111,110,117,3,0,0,0,115,121,115,117,7, + 0,0,0,109,111,100,117,108,101,115,117,25,0,0,0,95, + 99,97,108,108,95,119,105,116,104,95,102,114,97,109,101,115, + 95,114,101,109,111,118,101,100,117,8,0,0,0,95,95,112, + 97,116,104,95,95,117,14,0,0,0,65,116,116,114,105,98, + 117,116,101,69,114,114,111,114,117,8,0,0,0,95,69,82, + 82,95,77,83,71,117,6,0,0,0,102,111,114,109,97,116, + 117,11,0,0,0,73,109,112,111,114,116,69,114,114,111,114, + 117,12,0,0,0,95,102,105,110,100,95,109,111,100,117,108, + 101,117,4,0,0,0,84,114,117,101,117,10,0,0,0,95, + 110,111,116,95,102,111,117,110,100,117,11,0,0,0,108,111, + 97,100,95,109,111,100,117,108,101,117,16,0,0,0,95,118, + 101,114,98,111,115,101,95,109,101,115,115,97,103,101,117,7, + 0,0,0,115,101,116,97,116,116,114,117,7,0,0,0,103, + 101,116,97,116,116,114,117,8,0,0,0,95,95,110,97,109, + 101,95,95,117,11,0,0,0,95,95,112,97,99,107,97,103, + 101,95,95,117,7,0,0,0,104,97,115,97,116,116,114,117, + 10,0,0,0,95,95,108,111,97,100,101,114,95,95,40,9, + 0,0,0,117,4,0,0,0,110,97,109,101,117,7,0,0, + 0,105,109,112,111,114,116,95,117,4,0,0,0,112,97,116, + 104,117,6,0,0,0,112,97,114,101,110,116,117,13,0,0, + 0,112,97,114,101,110,116,95,109,111,100,117,108,101,117,3, + 0,0,0,109,115,103,117,6,0,0,0,108,111,97,100,101, + 114,117,3,0,0,0,101,120,99,117,6,0,0,0,109,111, + 100,117,108,101,40,0,0,0,0,40,0,0,0,0,117,29, + 0,0,0,60,102,114,111,122,101,110,32,105,109,112,111,114, + 116,108,105,98,46,95,98,111,111,116,115,116,114,97,112,62, + 117,23,0,0,0,95,102,105,110,100,95,97,110,100,95,108, + 111,97,100,95,117,110,108,111,99,107,101,100,220,5,0,0, + 115,76,0,0,0,0,1,6,1,19,1,6,1,15,1,16, + 2,15,1,11,2,13,1,3,1,13,1,13,1,22,1,26, + 1,15,1,12,1,27,3,9,1,9,1,15,2,13,1,19, + 2,13,1,6,2,13,1,32,2,24,1,3,1,12,1,15, + 1,32,1,13,1,8,2,15,1,3,1,13,1,13,1,8, + 1,117,23,0,0,0,95,102,105,110,100,95,97,110,100,95, + 108,111,97,100,95,117,110,108,111,99,107,101,100,99,2,0, + 0,0,0,0,0,0,3,0,0,0,18,0,0,0,67,0, + 0,0,115,75,0,0,0,122,16,0,116,0,0,124,0,0, + 131,1,0,125,2,0,87,100,1,0,116,1,0,106,2,0, + 131,0,0,1,88,124,2,0,106,3,0,131,0,0,1,122, + 17,0,116,4,0,124,0,0,124,1,0,131,2,0,83,87, + 100,1,0,124,2,0,106,5,0,131,0,0,1,88,100,1, + 0,83,40,2,0,0,0,117,54,0,0,0,70,105,110,100, + 32,97,110,100,32,108,111,97,100,32,116,104,101,32,109,111, + 100,117,108,101,44,32,97,110,100,32,114,101,108,101,97,115, + 101,32,116,104,101,32,105,109,112,111,114,116,32,108,111,99, + 107,46,78,40,6,0,0,0,117,16,0,0,0,95,103,101, + 116,95,109,111,100,117,108,101,95,108,111,99,107,117,4,0, + 0,0,95,105,109,112,117,12,0,0,0,114,101,108,101,97, + 115,101,95,108,111,99,107,117,7,0,0,0,97,99,113,117, + 105,114,101,117,23,0,0,0,95,102,105,110,100,95,97,110, + 100,95,108,111,97,100,95,117,110,108,111,99,107,101,100,117, + 7,0,0,0,114,101,108,101,97,115,101,40,3,0,0,0, + 117,4,0,0,0,110,97,109,101,117,7,0,0,0,105,109, + 112,111,114,116,95,117,4,0,0,0,108,111,99,107,40,0, + 0,0,0,40,0,0,0,0,117,29,0,0,0,60,102,114, + 111,122,101,110,32,105,109,112,111,114,116,108,105,98,46,95, + 98,111,111,116,115,116,114,97,112,62,117,14,0,0,0,95, + 102,105,110,100,95,97,110,100,95,108,111,97,100,14,6,0, + 0,115,14,0,0,0,0,2,3,1,16,2,11,1,10,1, + 3,1,17,2,117,14,0,0,0,95,102,105,110,100,95,97, + 110,100,95,108,111,97,100,99,3,0,0,0,0,0,0,0, + 5,0,0,0,4,0,0,0,67,0,0,0,115,172,0,0, + 0,116,0,0,124,0,0,124,1,0,124,2,0,131,3,0, + 1,124,2,0,100,1,0,107,4,0,114,49,0,116,1,0, + 124,0,0,124,1,0,124,2,0,131,3,0,125,0,0,110, + 0,0,116,2,0,106,3,0,131,0,0,1,124,0,0,116, + 4,0,106,5,0,107,7,0,114,87,0,116,6,0,124,0, + 0,116,7,0,131,2,0,83,116,4,0,106,5,0,124,0, + 0,25,125,3,0,124,3,0,100,4,0,107,8,0,114,158, + 0,116,2,0,106,9,0,131,0,0,1,100,2,0,106,10, + 0,124,0,0,131,1,0,125,4,0,116,11,0,124,4,0, + 100,3,0,124,0,0,131,1,1,130,1,0,110,0,0,116, + 12,0,124,0,0,131,1,0,1,124,3,0,83,40,5,0, + 0,0,117,50,1,0,0,73,109,112,111,114,116,32,97,110, + 100,32,114,101,116,117,114,110,32,116,104,101,32,109,111,100, + 117,108,101,32,98,97,115,101,100,32,111,110,32,105,116,115, + 32,110,97,109,101,44,32,116,104,101,32,112,97,99,107,97, + 103,101,32,116,104,101,32,99,97,108,108,32,105,115,10,32, + 32,32,32,98,101,105,110,103,32,109,97,100,101,32,102,114, + 111,109,44,32,97,110,100,32,116,104,101,32,108,101,118,101, + 108,32,97,100,106,117,115,116,109,101,110,116,46,10,10,32, + 32,32,32,84,104,105,115,32,102,117,110,99,116,105,111,110, + 32,114,101,112,114,101,115,101,110,116,115,32,116,104,101,32, + 103,114,101,97,116,101,115,116,32,99,111,109,109,111,110,32, + 100,101,110,111,109,105,110,97,116,111,114,32,111,102,32,102, + 117,110,99,116,105,111,110,97,108,105,116,121,10,32,32,32, + 32,98,101,116,119,101,101,110,32,105,109,112,111,114,116,95, + 109,111,100,117,108,101,32,97,110,100,32,95,95,105,109,112, + 111,114,116,95,95,46,32,84,104,105,115,32,105,110,99,108, + 117,100,101,115,32,115,101,116,116,105,110,103,32,95,95,112, + 97,99,107,97,103,101,95,95,32,105,102,10,32,32,32,32, + 116,104,101,32,108,111,97,100,101,114,32,100,105,100,32,110, + 111,116,46,10,10,32,32,32,32,105,0,0,0,0,117,40, + 0,0,0,105,109,112,111,114,116,32,111,102,32,123,125,32, + 104,97,108,116,101,100,59,32,78,111,110,101,32,105,110,32, + 115,121,115,46,109,111,100,117,108,101,115,117,4,0,0,0, + 110,97,109,101,78,40,13,0,0,0,117,13,0,0,0,95, + 115,97,110,105,116,121,95,99,104,101,99,107,117,13,0,0, + 0,95,114,101,115,111,108,118,101,95,110,97,109,101,117,4, + 0,0,0,95,105,109,112,117,12,0,0,0,97,99,113,117, + 105,114,101,95,108,111,99,107,117,3,0,0,0,115,121,115, + 117,7,0,0,0,109,111,100,117,108,101,115,117,14,0,0, + 0,95,102,105,110,100,95,97,110,100,95,108,111,97,100,117, + 11,0,0,0,95,103,99,100,95,105,109,112,111,114,116,117, + 4,0,0,0,78,111,110,101,117,12,0,0,0,114,101,108, + 101,97,115,101,95,108,111,99,107,117,6,0,0,0,102,111, + 114,109,97,116,117,11,0,0,0,73,109,112,111,114,116,69, + 114,114,111,114,117,19,0,0,0,95,108,111,99,107,95,117, + 110,108,111,99,107,95,109,111,100,117,108,101,40,5,0,0, + 0,117,4,0,0,0,110,97,109,101,117,7,0,0,0,112, + 97,99,107,97,103,101,117,5,0,0,0,108,101,118,101,108, + 117,6,0,0,0,109,111,100,117,108,101,117,7,0,0,0, + 109,101,115,115,97,103,101,40,0,0,0,0,40,0,0,0, + 0,117,29,0,0,0,60,102,114,111,122,101,110,32,105,109, + 112,111,114,116,108,105,98,46,95,98,111,111,116,115,116,114, + 97,112,62,117,11,0,0,0,95,103,99,100,95,105,109,112, + 111,114,116,27,6,0,0,115,28,0,0,0,0,9,16,1, + 12,1,21,1,10,1,15,1,13,1,13,1,12,1,10,1, + 6,1,9,1,21,1,10,1,117,11,0,0,0,95,103,99, + 100,95,105,109,112,111,114,116,99,3,0,0,0,0,0,0, + 0,5,0,0,0,17,0,0,0,67,0,0,0,115,233,0, + 0,0,116,0,0,124,0,0,100,1,0,131,2,0,114,229, + 0,100,2,0,124,1,0,107,6,0,114,89,0,116,1,0, + 124,1,0,131,1,0,125,1,0,124,1,0,106,2,0,100, + 2,0,131,1,0,1,116,0,0,124,0,0,100,3,0,131, + 2,0,114,89,0,124,1,0,106,3,0,124,0,0,106,4, + 0,131,1,0,1,113,89,0,110,0,0,120,137,0,124,1, + 0,68,93,126,0,125,3,0,116,0,0,124,0,0,124,3, + 0,131,2,0,115,96,0,121,32,0,116,5,0,124,2,0, + 100,4,0,106,6,0,124,0,0,106,7,0,124,3,0,131, + 2,0,131,2,0,1,87,113,222,0,4,116,8,0,107,10, + 0,114,218,0,1,125,4,0,1,122,35,0,116,0,0,124, + 4,0,100,5,0,131,2,0,114,197,0,124,4,0,106,9, + 0,114,197,0,110,3,0,130,0,0,87,89,100,6,0,100, + 6,0,125,4,0,126,4,0,88,113,222,0,88,113,96,0, + 113,96,0,87,110,0,0,124,0,0,83,40,7,0,0,0, + 117,238,0,0,0,70,105,103,117,114,101,32,111,117,116,32, + 119,104,97,116,32,95,95,105,109,112,111,114,116,95,95,32, + 115,104,111,117,108,100,32,114,101,116,117,114,110,46,10,10, + 32,32,32,32,84,104,101,32,105,109,112,111,114,116,95,32, + 112,97,114,97,109,101,116,101,114,32,105,115,32,97,32,99, + 97,108,108,97,98,108,101,32,119,104,105,99,104,32,116,97, + 107,101,115,32,116,104,101,32,110,97,109,101,32,111,102,32, + 109,111,100,117,108,101,32,116,111,10,32,32,32,32,105,109, + 112,111,114,116,46,32,73,116,32,105,115,32,114,101,113,117, + 105,114,101,100,32,116,111,32,100,101,99,111,117,112,108,101, + 32,116,104,101,32,102,117,110,99,116,105,111,110,32,102,114, + 111,109,32,97,115,115,117,109,105,110,103,32,105,109,112,111, + 114,116,108,105,98,39,115,10,32,32,32,32,105,109,112,111, + 114,116,32,105,109,112,108,101,109,101,110,116,97,116,105,111, + 110,32,105,115,32,100,101,115,105,114,101,100,46,10,10,32, + 32,32,32,117,8,0,0,0,95,95,112,97,116,104,95,95, + 117,1,0,0,0,42,117,7,0,0,0,95,95,97,108,108, + 95,95,117,5,0,0,0,123,125,46,123,125,117,10,0,0, + 0,95,110,111,116,95,102,111,117,110,100,78,40,10,0,0, + 0,117,7,0,0,0,104,97,115,97,116,116,114,117,4,0, + 0,0,108,105,115,116,117,6,0,0,0,114,101,109,111,118, + 101,117,6,0,0,0,101,120,116,101,110,100,117,7,0,0, + 0,95,95,97,108,108,95,95,117,25,0,0,0,95,99,97, + 108,108,95,119,105,116,104,95,102,114,97,109,101,115,95,114, + 101,109,111,118,101,100,117,6,0,0,0,102,111,114,109,97, + 116,117,8,0,0,0,95,95,110,97,109,101,95,95,117,11, + 0,0,0,73,109,112,111,114,116,69,114,114,111,114,117,10, + 0,0,0,95,110,111,116,95,102,111,117,110,100,40,5,0, + 0,0,117,6,0,0,0,109,111,100,117,108,101,117,8,0, + 0,0,102,114,111,109,108,105,115,116,117,7,0,0,0,105, + 109,112,111,114,116,95,117,1,0,0,0,120,117,3,0,0, + 0,101,120,99,40,0,0,0,0,40,0,0,0,0,117,29, + 0,0,0,60,102,114,111,122,101,110,32,105,109,112,111,114, + 116,108,105,98,46,95,98,111,111,116,115,116,114,97,112,62, + 117,16,0,0,0,95,104,97,110,100,108,101,95,102,114,111, + 109,108,105,115,116,51,6,0,0,115,32,0,0,0,0,10, + 15,1,12,1,12,1,13,1,15,1,22,1,13,1,15,1, + 3,1,6,1,26,1,18,6,24,1,3,2,32,1,117,16, + 0,0,0,95,104,97,110,100,108,101,95,102,114,111,109,108, + 105,115,116,99,1,0,0,0,0,0,0,0,2,0,0,0, + 2,0,0,0,67,0,0,0,115,78,0,0,0,124,0,0, + 106,0,0,100,1,0,131,1,0,125,1,0,124,1,0,100, + 6,0,107,8,0,114,74,0,124,0,0,100,2,0,25,125, + 1,0,100,3,0,124,0,0,107,7,0,114,74,0,124,1, + 0,106,2,0,100,4,0,131,1,0,100,5,0,25,125,1, + 0,113,74,0,110,0,0,124,1,0,83,40,7,0,0,0, + 117,167,0,0,0,67,97,108,99,117,108,97,116,101,32,119, + 104,97,116,32,95,95,112,97,99,107,97,103,101,95,95,32, + 115,104,111,117,108,100,32,98,101,46,10,10,32,32,32,32, + 95,95,112,97,99,107,97,103,101,95,95,32,105,115,32,110, + 111,116,32,103,117,97,114,97,110,116,101,101,100,32,116,111, + 32,98,101,32,100,101,102,105,110,101,100,32,111,114,32,99, + 111,117,108,100,32,98,101,32,115,101,116,32,116,111,32,78, + 111,110,101,10,32,32,32,32,116,111,32,114,101,112,114,101, + 115,101,110,116,32,116,104,97,116,32,105,116,115,32,112,114, + 111,112,101,114,32,118,97,108,117,101,32,105,115,32,117,110, + 107,110,111,119,110,46,10,10,32,32,32,32,117,11,0,0, + 0,95,95,112,97,99,107,97,103,101,95,95,117,8,0,0, + 0,95,95,110,97,109,101,95,95,117,8,0,0,0,95,95, + 112,97,116,104,95,95,117,1,0,0,0,46,105,0,0,0, + 0,78,40,3,0,0,0,117,3,0,0,0,103,101,116,117, + 4,0,0,0,78,111,110,101,117,10,0,0,0,114,112,97, + 114,116,105,116,105,111,110,40,2,0,0,0,117,7,0,0, + 0,103,108,111,98,97,108,115,117,7,0,0,0,112,97,99, + 107,97,103,101,40,0,0,0,0,40,0,0,0,0,117,29, + 0,0,0,60,102,114,111,122,101,110,32,105,109,112,111,114, + 116,108,105,98,46,95,98,111,111,116,115,116,114,97,112,62, + 117,17,0,0,0,95,99,97,108,99,95,95,95,112,97,99, + 107,97,103,101,95,95,85,6,0,0,115,12,0,0,0,0, + 7,15,1,12,1,10,1,12,1,25,1,117,17,0,0,0, + 95,99,97,108,99,95,95,95,112,97,99,107,97,103,101,95, + 95,99,0,0,0,0,0,0,0,0,3,0,0,0,3,0, + 0,0,67,0,0,0,115,55,0,0,0,116,0,0,116,1, + 0,106,2,0,131,0,0,102,2,0,125,0,0,116,3,0, + 116,4,0,102,2,0,125,1,0,116,5,0,116,6,0,102, + 2,0,125,2,0,124,0,0,124,1,0,124,2,0,103,3, + 0,83,40,1,0,0,0,117,111,0,0,0,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,44,32,97,108,108,111,119,95,112,97,99,107, + 97,103,101,115,41,46,10,32,32,32,32,40,7,0,0,0, + 117,19,0,0,0,69,120,116,101,110,115,105,111,110,70,105, + 108,101,76,111,97,100,101,114,117,4,0,0,0,95,105,109, + 112,117,18,0,0,0,101,120,116,101,110,115,105,111,110,95, + 115,117,102,102,105,120,101,115,117,16,0,0,0,83,111,117, + 114,99,101,70,105,108,101,76,111,97,100,101,114,117,15,0, + 0,0,83,79,85,82,67,69,95,83,85,70,70,73,88,69, + 83,117,20,0,0,0,83,111,117,114,99,101,108,101,115,115, + 70,105,108,101,76,111,97,100,101,114,117,17,0,0,0,66, + 89,84,69,67,79,68,69,95,83,85,70,70,73,88,69,83, + 40,3,0,0,0,117,10,0,0,0,101,120,116,101,110,115, + 105,111,110,115,117,6,0,0,0,115,111,117,114,99,101,117, + 8,0,0,0,98,121,116,101,99,111,100,101,40,0,0,0, + 0,40,0,0,0,0,117,29,0,0,0,60,102,114,111,122, + 101,110,32,105,109,112,111,114,116,108,105,98,46,95,98,111, + 111,116,115,116,114,97,112,62,117,27,0,0,0,95,103,101, + 116,95,115,117,112,112,111,114,116,101,100,95,102,105,108,101, + 95,108,111,97,100,101,114,115,100,6,0,0,115,8,0,0, + 0,0,5,18,1,12,1,12,1,117,27,0,0,0,95,103, + 101,116,95,115,117,112,112,111,114,116,101,100,95,102,105,108, + 101,95,108,111,97,100,101,114,115,99,5,0,0,0,0,0, + 0,0,9,0,0,0,5,0,0,0,67,0,0,0,115,227, + 0,0,0,124,4,0,100,1,0,107,2,0,114,27,0,116, + 0,0,124,0,0,131,1,0,125,5,0,110,54,0,124,1, + 0,100,3,0,107,9,0,114,45,0,124,1,0,110,3,0, + 105,0,0,125,6,0,116,2,0,124,6,0,131,1,0,125, + 7,0,116,0,0,124,0,0,124,7,0,124,4,0,131,3, + 0,125,5,0,124,3,0,115,207,0,124,4,0,100,1,0, + 107,2,0,114,122,0,116,0,0,124,0,0,106,3,0,100, + 2,0,131,1,0,100,1,0,25,131,1,0,83,124,0,0, + 115,132,0,124,5,0,83,116,4,0,124,0,0,131,1,0, + 116,4,0,124,0,0,106,3,0,100,2,0,131,1,0,100, + 1,0,25,131,1,0,24,125,8,0,116,5,0,106,6,0, + 124,5,0,106,7,0,100,3,0,116,4,0,124,5,0,106, + 7,0,131,1,0,124,8,0,24,133,2,0,25,25,83,110, + 16,0,116,8,0,124,5,0,124,3,0,116,0,0,131,3, + 0,83,100,3,0,83,40,4,0,0,0,117,214,1,0,0, + 73,109,112,111,114,116,32,97,32,109,111,100,117,108,101,46, + 10,10,32,32,32,32,84,104,101,32,39,103,108,111,98,97, + 108,115,39,32,97,114,103,117,109,101,110,116,32,105,115,32, + 117,115,101,100,32,116,111,32,105,110,102,101,114,32,119,104, + 101,114,101,32,116,104,101,32,105,109,112,111,114,116,32,105, + 115,32,111,99,99,117,114,105,110,103,32,102,114,111,109,10, + 32,32,32,32,116,111,32,104,97,110,100,108,101,32,114,101, + 108,97,116,105,118,101,32,105,109,112,111,114,116,115,46,32, + 84,104,101,32,39,108,111,99,97,108,115,39,32,97,114,103, + 117,109,101,110,116,32,105,115,32,105,103,110,111,114,101,100, + 46,32,84,104,101,10,32,32,32,32,39,102,114,111,109,108, + 105,115,116,39,32,97,114,103,117,109,101,110,116,32,115,112, + 101,99,105,102,105,101,115,32,119,104,97,116,32,115,104,111, + 117,108,100,32,101,120,105,115,116,32,97,115,32,97,116,116, + 114,105,98,117,116,101,115,32,111,110,32,116,104,101,32,109, + 111,100,117,108,101,10,32,32,32,32,98,101,105,110,103,32, + 105,109,112,111,114,116,101,100,32,40,101,46,103,46,32,96, + 96,102,114,111,109,32,109,111,100,117,108,101,32,105,109,112, + 111,114,116,32,60,102,114,111,109,108,105,115,116,62,96,96, + 41,46,32,32,84,104,101,32,39,108,101,118,101,108,39,10, + 32,32,32,32,97,114,103,117,109,101,110,116,32,114,101,112, + 114,101,115,101,110,116,115,32,116,104,101,32,112,97,99,107, + 97,103,101,32,108,111,99,97,116,105,111,110,32,116,111,32, + 105,109,112,111,114,116,32,102,114,111,109,32,105,110,32,97, + 32,114,101,108,97,116,105,118,101,10,32,32,32,32,105,109, + 112,111,114,116,32,40,101,46,103,46,32,96,96,102,114,111, + 109,32,46,46,112,107,103,32,105,109,112,111,114,116,32,109, + 111,100,96,96,32,119,111,117,108,100,32,104,97,118,101,32, + 97,32,39,108,101,118,101,108,39,32,111,102,32,50,41,46, + 10,10,32,32,32,32,105,0,0,0,0,117,1,0,0,0, + 46,78,40,9,0,0,0,117,11,0,0,0,95,103,99,100, + 95,105,109,112,111,114,116,117,4,0,0,0,78,111,110,101, + 117,17,0,0,0,95,99,97,108,99,95,95,95,112,97,99, + 107,97,103,101,95,95,117,9,0,0,0,112,97,114,116,105, + 116,105,111,110,117,3,0,0,0,108,101,110,117,3,0,0, + 0,115,121,115,117,7,0,0,0,109,111,100,117,108,101,115, + 117,8,0,0,0,95,95,110,97,109,101,95,95,117,16,0, + 0,0,95,104,97,110,100,108,101,95,102,114,111,109,108,105, + 115,116,40,9,0,0,0,117,4,0,0,0,110,97,109,101, + 117,7,0,0,0,103,108,111,98,97,108,115,117,6,0,0, + 0,108,111,99,97,108,115,117,8,0,0,0,102,114,111,109, + 108,105,115,116,117,5,0,0,0,108,101,118,101,108,117,6, + 0,0,0,109,111,100,117,108,101,117,8,0,0,0,103,108, + 111,98,97,108,115,95,117,7,0,0,0,112,97,99,107,97, + 103,101,117,7,0,0,0,99,117,116,95,111,102,102,40,0, + 0,0,0,40,0,0,0,0,117,29,0,0,0,60,102,114, + 111,122,101,110,32,105,109,112,111,114,116,108,105,98,46,95, + 98,111,111,116,115,116,114,97,112,62,117,10,0,0,0,95, + 95,105,109,112,111,114,116,95,95,111,6,0,0,115,26,0, + 0,0,0,11,12,1,15,2,24,1,12,1,18,1,6,3, + 12,1,23,1,6,1,4,4,35,3,40,2,117,10,0,0, + 0,95,95,105,109,112,111,114,116,95,95,99,2,0,0,0, + 0,0,0,0,14,0,0,0,13,0,0,0,67,0,0,0, + 115,196,2,0,0,124,1,0,97,0,0,124,0,0,97,1, + 0,116,1,0,106,2,0,106,3,0,114,33,0,116,4,0, + 97,5,0,110,6,0,116,6,0,97,5,0,120,47,0,116, + 0,0,116,1,0,102,2,0,68,93,33,0,125,2,0,116, + 7,0,124,2,0,100,1,0,131,2,0,115,52,0,116,8, + 0,124,2,0,95,9,0,113,52,0,113,52,0,87,116,1, + 0,106,10,0,116,11,0,25,125,3,0,120,76,0,100,28, + 0,68,93,68,0,125,4,0,124,4,0,116,1,0,106,10, + 0,107,7,0,114,148,0,116,8,0,106,12,0,124,4,0, + 131,1,0,125,5,0,110,13,0,116,1,0,106,10,0,124, + 4,0,25,125,5,0,116,13,0,124,3,0,124,4,0,124, + 5,0,131,3,0,1,113,109,0,87,100,6,0,100,7,0, + 103,1,0,102,2,0,100,8,0,100,9,0,100,7,0,103, + 2,0,102,2,0,100,10,0,100,9,0,100,7,0,103,2, + 0,102,2,0,102,3,0,125,6,0,120,189,0,124,6,0, + 68,93,169,0,92,2,0,125,7,0,125,8,0,116,14,0, + 100,11,0,100,12,0,132,0,0,124,8,0,68,131,1,0, + 131,1,0,115,23,1,116,15,0,130,1,0,124,8,0,100, + 13,0,25,125,9,0,124,7,0,116,1,0,106,10,0,107, + 6,0,114,65,1,116,1,0,106,10,0,124,7,0,25,125, + 10,0,80,113,236,0,121,60,0,116,8,0,106,12,0,124, + 7,0,131,1,0,125,10,0,124,7,0,100,10,0,107,2, + 0,114,123,1,100,14,0,116,1,0,106,16,0,107,6,0, + 114,123,1,124,8,0,100,15,0,25,125,9,0,110,0,0, + 80,87,113,236,0,4,116,17,0,107,10,0,114,148,1,1, + 1,1,119,236,0,89,113,236,0,88,113,236,0,87,116,17, + 0,100,16,0,131,1,0,130,1,0,121,19,0,116,8,0, + 106,12,0,100,17,0,131,1,0,125,11,0,87,110,24,0, + 4,116,17,0,107,10,0,114,210,1,1,1,1,100,27,0, + 125,11,0,89,110,1,0,88,116,8,0,106,12,0,100,18, + 0,131,1,0,125,12,0,124,7,0,100,8,0,107,2,0, + 114,16,2,116,8,0,106,12,0,100,19,0,131,1,0,125, + 13,0,116,13,0,124,3,0,100,20,0,124,13,0,131,3, + 0,1,110,0,0,116,13,0,124,3,0,100,21,0,124,10, + 0,131,3,0,1,116,13,0,124,3,0,100,17,0,124,11, + 0,131,3,0,1,116,13,0,124,3,0,100,18,0,124,12, + 0,131,3,0,1,116,13,0,124,3,0,100,22,0,124,9, + 0,131,3,0,1,116,13,0,124,3,0,100,23,0,116,19, + 0,124,8,0,131,1,0,131,3,0,1,116,13,0,124,3, + 0,100,24,0,116,20,0,131,0,0,131,3,0,1,116,21, + 0,106,22,0,116,0,0,106,23,0,131,0,0,131,1,0, + 1,124,7,0,100,8,0,107,2,0,114,192,2,116,24,0, + 106,25,0,100,25,0,131,1,0,1,100,26,0,116,21,0, + 107,6,0,114,192,2,100,29,0,116,27,0,95,28,0,113, + 192,2,110,0,0,100,27,0,83,40,30,0,0,0,117,250, + 0,0,0,83,101,116,117,112,32,105,109,112,111,114,116,108, + 105,98,32,98,121,32,105,109,112,111,114,116,105,110,103,32, + 110,101,101,100,101,100,32,98,117,105,108,116,45,105,110,32, + 109,111,100,117,108,101,115,32,97,110,100,32,105,110,106,101, + 99,116,105,110,103,32,116,104,101,109,10,32,32,32,32,105, + 110,116,111,32,116,104,101,32,103,108,111,98,97,108,32,110, + 97,109,101,115,112,97,99,101,46,10,10,32,32,32,32,65, + 115,32,115,121,115,32,105,115,32,110,101,101,100,101,100,32, + 102,111,114,32,115,121,115,46,109,111,100,117,108,101,115,32, + 97,99,99,101,115,115,32,97,110,100,32,95,105,109,112,32, + 105,115,32,110,101,101,100,101,100,32,116,111,32,108,111,97, + 100,32,98,117,105,108,116,45,105,110,10,32,32,32,32,109, + 111,100,117,108,101,115,44,32,116,104,111,115,101,32,116,119, + 111,32,109,111,100,117,108,101,115,32,109,117,115,116,32,98, + 101,32,101,120,112,108,105,99,105,116,108,121,32,112,97,115, + 115,101,100,32,105,110,46,10,10,32,32,32,32,117,10,0, + 0,0,95,95,108,111,97,100,101,114,95,95,117,3,0,0, + 0,95,105,111,117,9,0,0,0,95,119,97,114,110,105,110, + 103,115,117,8,0,0,0,98,117,105,108,116,105,110,115,117, + 7,0,0,0,109,97,114,115,104,97,108,117,5,0,0,0, + 112,111,115,105,120,117,1,0,0,0,47,117,2,0,0,0, + 110,116,117,1,0,0,0,92,117,3,0,0,0,111,115,50, + 99,1,0,0,0,0,0,0,0,2,0,0,0,3,0,0, + 0,115,0,0,0,115,33,0,0,0,124,0,0,93,23,0, + 125,1,0,116,0,0,124,1,0,131,1,0,100,0,0,107, + 2,0,86,1,113,3,0,100,1,0,83,40,2,0,0,0, + 105,1,0,0,0,78,40,1,0,0,0,117,3,0,0,0, + 108,101,110,40,2,0,0,0,117,2,0,0,0,46,48,117, + 3,0,0,0,115,101,112,40,0,0,0,0,40,0,0,0, + 0,117,29,0,0,0,60,102,114,111,122,101,110,32,105,109, + 112,111,114,116,108,105,98,46,95,98,111,111,116,115,116,114, + 97,112,62,117,9,0,0,0,60,103,101,110,101,120,112,114, + 62,179,6,0,0,115,2,0,0,0,6,0,117,25,0,0, + 0,95,115,101,116,117,112,46,60,108,111,99,97,108,115,62, + 46,60,103,101,110,101,120,112,114,62,105,0,0,0,0,117, + 7,0,0,0,69,77,88,32,71,67,67,105,1,0,0,0, + 117,30,0,0,0,105,109,112,111,114,116,108,105,98,32,114, + 101,113,117,105,114,101,115,32,112,111,115,105,120,32,111,114, + 32,110,116,117,7,0,0,0,95,116,104,114,101,97,100,117, + 8,0,0,0,95,119,101,97,107,114,101,102,117,6,0,0, + 0,119,105,110,114,101,103,117,7,0,0,0,95,119,105,110, + 114,101,103,117,3,0,0,0,95,111,115,117,8,0,0,0, + 112,97,116,104,95,115,101,112,117,15,0,0,0,112,97,116, + 104,95,115,101,112,97,114,97,116,111,114,115,117,11,0,0, + 0,95,114,101,108,97,120,95,99,97,115,101,117,4,0,0, + 0,46,112,121,119,117,6,0,0,0,95,100,46,112,121,100, + 78,40,4,0,0,0,117,3,0,0,0,95,105,111,117,9, + 0,0,0,95,119,97,114,110,105,110,103,115,117,8,0,0, + 0,98,117,105,108,116,105,110,115,117,7,0,0,0,109,97, + 114,115,104,97,108,84,40,29,0,0,0,117,4,0,0,0, + 95,105,109,112,117,3,0,0,0,115,121,115,117,5,0,0, + 0,102,108,97,103,115,117,8,0,0,0,111,112,116,105,109, + 105,122,101,117,27,0,0,0,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,117,17,0,0,0,66,89,84,69,67,79,68,69, + 95,83,85,70,70,73,88,69,83,117,23,0,0,0,68,69, + 66,85,71,95,66,89,84,69,67,79,68,69,95,83,85,70, + 70,73,88,69,83,117,7,0,0,0,104,97,115,97,116,116, + 114,117,15,0,0,0,66,117,105,108,116,105,110,73,109,112, + 111,114,116,101,114,117,10,0,0,0,95,95,108,111,97,100, + 101,114,95,95,117,7,0,0,0,109,111,100,117,108,101,115, + 117,8,0,0,0,95,95,110,97,109,101,95,95,117,11,0, + 0,0,108,111,97,100,95,109,111,100,117,108,101,117,7,0, + 0,0,115,101,116,97,116,116,114,117,3,0,0,0,97,108, + 108,117,14,0,0,0,65,115,115,101,114,116,105,111,110,69, + 114,114,111,114,117,7,0,0,0,118,101,114,115,105,111,110, + 117,11,0,0,0,73,109,112,111,114,116,69,114,114,111,114, + 117,4,0,0,0,78,111,110,101,117,3,0,0,0,115,101, + 116,117,16,0,0,0,95,109,97,107,101,95,114,101,108,97, + 120,95,99,97,115,101,117,18,0,0,0,69,88,84,69,78, + 83,73,79,78,95,83,85,70,70,73,88,69,83,117,6,0, + 0,0,101,120,116,101,110,100,117,18,0,0,0,101,120,116, + 101,110,115,105,111,110,95,115,117,102,102,105,120,101,115,117, + 15,0,0,0,83,79,85,82,67,69,95,83,85,70,70,73, + 88,69,83,117,6,0,0,0,97,112,112,101,110,100,117,4, + 0,0,0,84,114,117,101,117,21,0,0,0,87,105,110,100, + 111,119,115,82,101,103,105,115,116,114,121,70,105,110,100,101, + 114,117,11,0,0,0,68,69,66,85,71,95,66,85,73,76, + 68,40,14,0,0,0,117,10,0,0,0,115,121,115,95,109, + 111,100,117,108,101,117,11,0,0,0,95,105,109,112,95,109, + 111,100,117,108,101,117,6,0,0,0,109,111,100,117,108,101, + 117,11,0,0,0,115,101,108,102,95,109,111,100,117,108,101, + 117,12,0,0,0,98,117,105,108,116,105,110,95,110,97,109, + 101,117,14,0,0,0,98,117,105,108,116,105,110,95,109,111, + 100,117,108,101,117,10,0,0,0,111,115,95,100,101,116,97, + 105,108,115,117,10,0,0,0,98,117,105,108,116,105,110,95, + 111,115,117,15,0,0,0,112,97,116,104,95,115,101,112,97, + 114,97,116,111,114,115,117,8,0,0,0,112,97,116,104,95, + 115,101,112,117,9,0,0,0,111,115,95,109,111,100,117,108, + 101,117,13,0,0,0,116,104,114,101,97,100,95,109,111,100, + 117,108,101,117,14,0,0,0,119,101,97,107,114,101,102,95, + 109,111,100,117,108,101,117,13,0,0,0,119,105,110,114,101, + 103,95,109,111,100,117,108,101,40,0,0,0,0,40,0,0, + 0,0,117,29,0,0,0,60,102,114,111,122,101,110,32,105, + 109,112,111,114,116,108,105,98,46,95,98,111,111,116,115,116, + 114,97,112,62,117,6,0,0,0,95,115,101,116,117,112,147, + 6,0,0,115,96,0,0,0,0,9,6,1,6,2,12,1, + 9,2,6,2,19,1,15,1,16,2,13,1,13,1,15,1, + 18,2,13,1,20,2,48,1,19,2,31,1,10,1,15,1, + 13,1,4,2,3,1,15,2,27,1,13,1,5,1,13,1, + 12,2,12,2,3,1,19,1,13,2,11,1,15,2,12,1, + 15,1,19,2,16,1,16,1,16,1,16,1,22,2,19,1, + 19,1,12,1,13,1,12,1,117,6,0,0,0,95,115,101, + 116,117,112,99,2,0,0,0,0,0,0,0,3,0,0,0, + 3,0,0,0,67,0,0,0,115,136,0,0,0,116,0,0, + 124,0,0,124,1,0,131,2,0,1,116,1,0,131,0,0, + 125,2,0,116,2,0,106,3,0,106,4,0,116,5,0,106, + 6,0,124,2,0,140,0,0,103,1,0,131,1,0,1,116, + 2,0,106,7,0,106,8,0,116,9,0,131,1,0,1,116, + 2,0,106,7,0,106,8,0,116,10,0,131,1,0,1,116, + 11,0,106,12,0,100,1,0,107,2,0,114,116,0,116,2, + 0,106,7,0,106,8,0,116,13,0,131,1,0,1,110,0, + 0,116,2,0,106,7,0,106,8,0,116,14,0,131,1,0, + 1,100,2,0,83,40,3,0,0,0,117,50,0,0,0,73, + 110,115,116,97,108,108,32,105,109,112,111,114,116,108,105,98, + 32,97,115,32,116,104,101,32,105,109,112,108,101,109,101,110, + 116,97,116,105,111,110,32,111,102,32,105,109,112,111,114,116, + 46,117,2,0,0,0,110,116,78,40,15,0,0,0,117,6, + 0,0,0,95,115,101,116,117,112,117,27,0,0,0,95,103, + 101,116,95,115,117,112,112,111,114,116,101,100,95,102,105,108, + 101,95,108,111,97,100,101,114,115,117,3,0,0,0,115,121, + 115,117,10,0,0,0,112,97,116,104,95,104,111,111,107,115, + 117,6,0,0,0,101,120,116,101,110,100,117,10,0,0,0, + 70,105,108,101,70,105,110,100,101,114,117,9,0,0,0,112, + 97,116,104,95,104,111,111,107,117,9,0,0,0,109,101,116, + 97,95,112,97,116,104,117,6,0,0,0,97,112,112,101,110, + 100,117,15,0,0,0,66,117,105,108,116,105,110,73,109,112, + 111,114,116,101,114,117,14,0,0,0,70,114,111,122,101,110, + 73,109,112,111,114,116,101,114,117,3,0,0,0,95,111,115, + 117,8,0,0,0,95,95,110,97,109,101,95,95,117,21,0, 0,0,87,105,110,100,111,119,115,82,101,103,105,115,116,114, - 121,70,105,110,100,101,114,117,13,0,0,0,95,76,111,97, - 100,101,114,66,97,115,105,99,115,117,12,0,0,0,83,111, - 117,114,99,101,76,111,97,100,101,114,117,10,0,0,0,70, - 105,108,101,76,111,97,100,101,114,117,16,0,0,0,83,111, - 117,114,99,101,70,105,108,101,76,111,97,100,101,114,117,20, - 0,0,0,83,111,117,114,99,101,108,101,115,115,70,105,108, - 101,76,111,97,100,101,114,117,18,0,0,0,69,88,84,69, - 78,83,73,79,78,95,83,85,70,70,73,88,69,83,117,19, - 0,0,0,69,120,116,101,110,115,105,111,110,70,105,108,101, - 76,111,97,100,101,114,117,14,0,0,0,95,78,97,109,101, - 115,112,97,99,101,80,97,116,104,117,15,0,0,0,78,97, - 109,101,115,112,97,99,101,76,111,97,100,101,114,117,10,0, - 0,0,80,97,116,104,70,105,110,100,101,114,117,10,0,0, - 0,70,105,108,101,70,105,110,100,101,114,117,18,0,0,0, - 95,73,109,112,111,114,116,76,111,99,107,67,111,110,116,101, - 120,116,117,13,0,0,0,95,114,101,115,111,108,118,101,95, - 110,97,109,101,117,12,0,0,0,95,102,105,110,100,95,109, - 111,100,117,108,101,117,13,0,0,0,95,115,97,110,105,116, - 121,95,99,104,101,99,107,117,8,0,0,0,95,69,82,82, - 95,77,83,71,117,23,0,0,0,95,102,105,110,100,95,97, - 110,100,95,108,111,97,100,95,117,110,108,111,99,107,101,100, - 117,14,0,0,0,95,102,105,110,100,95,97,110,100,95,108, - 111,97,100,117,11,0,0,0,95,103,99,100,95,105,109,112, - 111,114,116,117,16,0,0,0,95,104,97,110,100,108,101,95, - 102,114,111,109,108,105,115,116,117,17,0,0,0,95,99,97, - 108,99,95,95,95,112,97,99,107,97,103,101,95,95,117,27, - 0,0,0,95,103,101,116,95,115,117,112,112,111,114,116,101, - 100,95,102,105,108,101,95,108,111,97,100,101,114,115,117,10, - 0,0,0,95,95,105,109,112,111,114,116,95,95,117,6,0, - 0,0,95,115,101,116,117,112,117,8,0,0,0,95,105,110, - 115,116,97,108,108,40,0,0,0,0,40,0,0,0,0,40, - 0,0,0,0,117,29,0,0,0,60,102,114,111,122,101,110, - 32,105,109,112,111,114,116,108,105,98,46,95,98,111,111,116, - 115,116,114,97,112,62,117,8,0,0,0,60,109,111,100,117, - 108,101,62,8,0,0,0,115,132,0,0,0,6,21,6,3, - 12,13,12,16,12,13,12,12,12,12,12,10,12,6,12,7, - 15,22,12,8,15,3,12,12,6,2,6,3,22,4,19,68, - 19,23,12,19,12,20,12,100,34,1,37,2,6,2,9,2, - 9,1,9,2,15,27,12,23,12,21,12,8,12,13,12,11, - 12,55,12,18,12,11,12,11,12,17,19,57,19,54,19,50, - 19,82,22,134,19,29,25,46,25,25,6,3,19,45,19,55, - 19,18,19,89,19,125,19,13,12,9,12,17,12,17,6,2, - 12,50,12,13,18,24,12,34,12,15,12,11,24,32,12,74, + 121,70,105,110,100,101,114,117,10,0,0,0,80,97,116,104, + 70,105,110,100,101,114,40,3,0,0,0,117,10,0,0,0, + 115,121,115,95,109,111,100,117,108,101,117,11,0,0,0,95, + 105,109,112,95,109,111,100,117,108,101,117,17,0,0,0,115, + 117,112,112,111,114,116,101,100,95,108,111,97,100,101,114,115, + 40,0,0,0,0,40,0,0,0,0,117,29,0,0,0,60, + 102,114,111,122,101,110,32,105,109,112,111,114,116,108,105,98, + 46,95,98,111,111,116,115,116,114,97,112,62,117,8,0,0, + 0,95,105,110,115,116,97,108,108,221,6,0,0,115,16,0, + 0,0,0,2,13,1,9,1,28,1,16,1,16,1,15,1, + 19,1,117,8,0,0,0,95,105,110,115,116,97,108,108,78, + 40,3,0,0,0,117,3,0,0,0,119,105,110,117,6,0, + 0,0,99,121,103,119,105,110,117,6,0,0,0,100,97,114, + 119,105,110,40,74,0,0,0,117,7,0,0,0,95,95,100, + 111,99,95,95,117,27,0,0,0,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,117,16,0,0,0,95,109,97,107,101,95,114, + 101,108,97,120,95,99,97,115,101,117,7,0,0,0,95,119, + 95,108,111,110,103,117,7,0,0,0,95,114,95,108,111,110, + 103,117,10,0,0,0,95,112,97,116,104,95,106,111,105,110, + 117,11,0,0,0,95,112,97,116,104,95,115,112,108,105,116, + 117,18,0,0,0,95,112,97,116,104,95,105,115,95,109,111, + 100,101,95,116,121,112,101,117,12,0,0,0,95,112,97,116, + 104,95,105,115,102,105,108,101,117,11,0,0,0,95,112,97, + 116,104,95,105,115,100,105,114,117,13,0,0,0,95,119,114, + 105,116,101,95,97,116,111,109,105,99,117,5,0,0,0,95, + 119,114,97,112,117,4,0,0,0,116,121,112,101,117,8,0, + 0,0,95,95,99,111,100,101,95,95,117,10,0,0,0,95, + 99,111,100,101,95,116,121,112,101,117,10,0,0,0,110,101, + 119,95,109,111,100,117,108,101,117,13,0,0,0,95,109,111, + 100,117,108,101,95,108,111,99,107,115,117,12,0,0,0,95, + 98,108,111,99,107,105,110,103,95,111,110,117,12,0,0,0, + 82,117,110,116,105,109,101,69,114,114,111,114,117,14,0,0, + 0,95,68,101,97,100,108,111,99,107,69,114,114,111,114,117, + 11,0,0,0,95,77,111,100,117,108,101,76,111,99,107,117, + 16,0,0,0,95,68,117,109,109,121,77,111,100,117,108,101, + 76,111,99,107,117,16,0,0,0,95,103,101,116,95,109,111, + 100,117,108,101,95,108,111,99,107,117,19,0,0,0,95,108, + 111,99,107,95,117,110,108,111,99,107,95,109,111,100,117,108, + 101,117,25,0,0,0,95,99,97,108,108,95,119,105,116,104, + 95,102,114,97,109,101,115,95,114,101,109,111,118,101,100,117, + 3,0,0,0,111,114,100,117,17,0,0,0,95,82,65,87, + 95,77,65,71,73,67,95,78,85,77,66,69,82,117,5,0, + 0,0,98,121,116,101,115,117,5,0,0,0,114,97,110,103, + 101,117,12,0,0,0,95,77,65,71,73,67,95,66,89,84, + 69,83,117,8,0,0,0,95,80,89,67,65,67,72,69,117, + 15,0,0,0,83,79,85,82,67,69,95,83,85,70,70,73, + 88,69,83,117,23,0,0,0,68,69,66,85,71,95,66,89, + 84,69,67,79,68,69,95,83,85,70,70,73,88,69,83,117, + 27,0,0,0,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,117, + 4,0,0,0,78,111,110,101,117,17,0,0,0,99,97,99, + 104,101,95,102,114,111,109,95,115,111,117,114,99,101,117,17, + 0,0,0,115,111,117,114,99,101,95,102,114,111,109,95,99, + 97,99,104,101,117,15,0,0,0,95,103,101,116,95,115,111, + 117,114,99,101,102,105,108,101,117,16,0,0,0,95,118,101, + 114,98,111,115,101,95,109,101,115,115,97,103,101,117,11,0, + 0,0,115,101,116,95,112,97,99,107,97,103,101,117,10,0, + 0,0,115,101,116,95,108,111,97,100,101,114,117,17,0,0, + 0,109,111,100,117,108,101,95,102,111,114,95,108,111,97,100, + 101,114,117,11,0,0,0,95,99,104,101,99,107,95,110,97, + 109,101,117,17,0,0,0,95,114,101,113,117,105,114,101,115, + 95,98,117,105,108,116,105,110,117,16,0,0,0,95,114,101, + 113,117,105,114,101,115,95,102,114,111,122,101,110,117,17,0, + 0,0,95,102,105,110,100,95,109,111,100,117,108,101,95,115, + 104,105,109,117,15,0,0,0,66,117,105,108,116,105,110,73, + 109,112,111,114,116,101,114,117,14,0,0,0,70,114,111,122, + 101,110,73,109,112,111,114,116,101,114,117,21,0,0,0,87, + 105,110,100,111,119,115,82,101,103,105,115,116,114,121,70,105, + 110,100,101,114,117,13,0,0,0,95,76,111,97,100,101,114, + 66,97,115,105,99,115,117,12,0,0,0,83,111,117,114,99, + 101,76,111,97,100,101,114,117,10,0,0,0,70,105,108,101, + 76,111,97,100,101,114,117,16,0,0,0,83,111,117,114,99, + 101,70,105,108,101,76,111,97,100,101,114,117,20,0,0,0, + 83,111,117,114,99,101,108,101,115,115,70,105,108,101,76,111, + 97,100,101,114,117,18,0,0,0,69,88,84,69,78,83,73, + 79,78,95,83,85,70,70,73,88,69,83,117,19,0,0,0, + 69,120,116,101,110,115,105,111,110,70,105,108,101,76,111,97, + 100,101,114,117,14,0,0,0,95,78,97,109,101,115,112,97, + 99,101,80,97,116,104,117,15,0,0,0,78,97,109,101,115, + 112,97,99,101,76,111,97,100,101,114,117,10,0,0,0,80, + 97,116,104,70,105,110,100,101,114,117,10,0,0,0,70,105, + 108,101,70,105,110,100,101,114,117,18,0,0,0,95,73,109, + 112,111,114,116,76,111,99,107,67,111,110,116,101,120,116,117, + 13,0,0,0,95,114,101,115,111,108,118,101,95,110,97,109, + 101,117,12,0,0,0,95,102,105,110,100,95,109,111,100,117, + 108,101,117,13,0,0,0,95,115,97,110,105,116,121,95,99, + 104,101,99,107,117,8,0,0,0,95,69,82,82,95,77,83, + 71,117,23,0,0,0,95,102,105,110,100,95,97,110,100,95, + 108,111,97,100,95,117,110,108,111,99,107,101,100,117,14,0, + 0,0,95,102,105,110,100,95,97,110,100,95,108,111,97,100, + 117,11,0,0,0,95,103,99,100,95,105,109,112,111,114,116, + 117,16,0,0,0,95,104,97,110,100,108,101,95,102,114,111, + 109,108,105,115,116,117,17,0,0,0,95,99,97,108,99,95, + 95,95,112,97,99,107,97,103,101,95,95,117,27,0,0,0, + 95,103,101,116,95,115,117,112,112,111,114,116,101,100,95,102, + 105,108,101,95,108,111,97,100,101,114,115,117,10,0,0,0, + 95,95,105,109,112,111,114,116,95,95,117,6,0,0,0,95, + 115,101,116,117,112,117,8,0,0,0,95,105,110,115,116,97, + 108,108,40,0,0,0,0,40,0,0,0,0,40,0,0,0, + 0,117,29,0,0,0,60,102,114,111,122,101,110,32,105,109, + 112,111,114,116,108,105,98,46,95,98,111,111,116,115,116,114, + 97,112,62,117,8,0,0,0,60,109,111,100,117,108,101,62, + 8,0,0,0,115,132,0,0,0,6,21,6,3,12,13,12, + 16,12,13,12,12,12,12,12,10,12,6,12,7,15,22,12, + 8,15,3,12,12,6,2,6,3,22,4,19,68,19,23,12, + 19,12,20,12,100,34,1,37,2,6,2,9,2,9,1,9, + 2,15,27,12,23,12,21,12,8,12,13,12,11,12,55,12, + 18,12,11,12,11,12,17,19,57,19,54,19,50,19,82,22, + 134,19,29,25,46,25,25,6,3,19,45,19,55,19,18,19, + 89,19,125,19,13,12,9,12,17,12,17,6,2,12,50,12, + 13,18,24,12,34,12,15,12,11,24,36,12,74, };