diff -r ccac513ee610 Grammar/Grammar --- a/Grammar/Grammar Mon Apr 20 21:05:23 2015 +0200 +++ b/Grammar/Grammar Mon Apr 20 15:54:06 2015 -0400 @@ -21,8 +21,11 @@ decorator: '@' dotted_name [ '(' [arglist] ')' ] NEWLINE decorators: decorator+ -decorated: decorators (classdef | funcdef) -funcdef: 'def' NAME parameters ['->' test] ':' suite +decorated: decorators (classdef | funcdef | async_funcdef) + +async_funcdef: ASYNC funcdef +funcdef: ('def' NAME parameters ['->' test] ':' suite) + parameters: '(' [typedargslist] ')' typedargslist: (tfpdef ['=' test] (',' tfpdef ['=' test])* [',' ['*' [tfpdef] (',' tfpdef ['=' test])* [',' '**' tfpdef] | '**' tfpdef]] @@ -37,18 +40,19 @@ simple_stmt: small_stmt (';' small_stmt)* [';'] NEWLINE small_stmt: (expr_stmt | del_stmt | pass_stmt | flow_stmt | import_stmt | global_stmt | nonlocal_stmt | assert_stmt) -expr_stmt: testlist_star_expr (augassign (yield_expr|testlist) | - ('=' (yield_expr|testlist_star_expr))*) +expr_stmt: testlist_star_expr (augassign (yield_expr|await_expr|testlist) | + ('=' (yield_expr|await_expr|testlist_star_expr))*) testlist_star_expr: (test|star_expr) (',' (test|star_expr))* [','] augassign: ('+=' | '-=' | '*=' | '@=' | '/=' | '%=' | '&=' | '|=' | '^=' | '<<=' | '>>=' | '**=' | '//=') # For normal assignments, additional restrictions enforced by the interpreter del_stmt: 'del' exprlist pass_stmt: 'pass' -flow_stmt: break_stmt | continue_stmt | return_stmt | raise_stmt | yield_stmt +flow_stmt: break_stmt | continue_stmt | return_stmt | raise_stmt | yield_stmt | await_stmt break_stmt: 'break' continue_stmt: 'continue' return_stmt: 'return' [testlist] +await_stmt: await_expr yield_stmt: yield_expr raise_stmt: 'raise' [test ['from' test]] import_stmt: import_name | import_from @@ -65,7 +69,9 @@ nonlocal_stmt: 'nonlocal' NAME (',' NAME)* assert_stmt: 'assert' test [',' test] -compound_stmt: if_stmt | while_stmt | for_stmt | try_stmt | with_stmt | funcdef | classdef | decorated +compound_stmt: (if_stmt | while_stmt | for_stmt | try_stmt | with_stmt + | funcdef | classdef | decorated | async_stmt) +async_stmt: ASYNC (funcdef | with_stmt | for_stmt) if_stmt: 'if' test ':' suite ('elif' test ':' suite)* ['else' ':' suite] while_stmt: 'while' test ':' suite ['else' ':' suite] for_stmt: 'for' exprlist 'in' testlist ':' suite ['else' ':' suite] @@ -100,7 +106,7 @@ term: factor (('*'|'@'|'/'|'%'|'//') factor)* factor: ('+'|'-'|'~') factor | power power: atom trailer* ['**' factor] -atom: ('(' [yield_expr|testlist_comp] ')' | +atom: ('(' [yield_expr|await_expr|testlist_comp] ')' | '[' [testlist_comp] ']' | '{' [dictorsetmaker] '}' | NAME | NUMBER | STRING+ | '...' | 'None' | 'True' | 'False') @@ -129,5 +135,7 @@ # not used in grammar, but may appear in "node" passed from Parser to Compiler encoding_decl: NAME +await_expr: AWAIT test + yield_expr: 'yield' [yield_arg] yield_arg: 'from' test | testlist diff -r ccac513ee610 Include/Python-ast.h --- a/Include/Python-ast.h Mon Apr 20 21:05:23 2015 +0200 +++ b/Include/Python-ast.h Mon Apr 20 15:54:06 2015 -0400 @@ -63,12 +63,13 @@ } v; }; -enum _stmt_kind {FunctionDef_kind=1, ClassDef_kind=2, Return_kind=3, - Delete_kind=4, Assign_kind=5, AugAssign_kind=6, For_kind=7, - While_kind=8, If_kind=9, With_kind=10, Raise_kind=11, - Try_kind=12, Assert_kind=13, Import_kind=14, - ImportFrom_kind=15, Global_kind=16, Nonlocal_kind=17, - Expr_kind=18, Pass_kind=19, Break_kind=20, Continue_kind=21}; +enum _stmt_kind {FunctionDef_kind=1, AsyncFunctionDef_kind=2, ClassDef_kind=3, + Return_kind=4, Delete_kind=5, Assign_kind=6, + AugAssign_kind=7, For_kind=8, AsyncFor_kind=9, While_kind=10, + If_kind=11, With_kind=12, AsyncWith_kind=13, Raise_kind=14, + Try_kind=15, Assert_kind=16, Import_kind=17, + ImportFrom_kind=18, Global_kind=19, Nonlocal_kind=20, + Expr_kind=21, Pass_kind=22, Break_kind=23, Continue_kind=24}; struct _stmt { enum _stmt_kind kind; union { @@ -82,6 +83,14 @@ struct { identifier name; + arguments_ty args; + asdl_seq *body; + asdl_seq *decorator_list; + expr_ty returns; + } AsyncFunctionDef; + + struct { + identifier name; asdl_seq *bases; asdl_seq *keywords; expr_ty starargs; @@ -117,6 +126,13 @@ } For; struct { + expr_ty target; + expr_ty iter; + asdl_seq *body; + asdl_seq *orelse; + } AsyncFor; + + struct { expr_ty test; asdl_seq *body; asdl_seq *orelse; @@ -134,6 +150,11 @@ } With; struct { + asdl_seq *items; + asdl_seq *body; + } AsyncWith; + + struct { expr_ty exc; expr_ty cause; } Raise; @@ -180,11 +201,11 @@ enum _expr_kind {BoolOp_kind=1, BinOp_kind=2, UnaryOp_kind=3, Lambda_kind=4, IfExp_kind=5, Dict_kind=6, Set_kind=7, ListComp_kind=8, SetComp_kind=9, DictComp_kind=10, GeneratorExp_kind=11, - Yield_kind=12, YieldFrom_kind=13, Compare_kind=14, - Call_kind=15, Num_kind=16, Str_kind=17, Bytes_kind=18, - NameConstant_kind=19, Ellipsis_kind=20, Attribute_kind=21, - Subscript_kind=22, Starred_kind=23, Name_kind=24, - List_kind=25, Tuple_kind=26}; + Await_kind=12, Yield_kind=13, YieldFrom_kind=14, + Compare_kind=15, Call_kind=16, Num_kind=17, Str_kind=18, + Bytes_kind=19, NameConstant_kind=20, Ellipsis_kind=21, + Attribute_kind=22, Subscript_kind=23, Starred_kind=24, + Name_kind=25, List_kind=26, Tuple_kind=27}; struct _expr { enum _expr_kind kind; union { @@ -247,6 +268,10 @@ struct { expr_ty value; + } Await; + + struct { + expr_ty value; } Yield; struct { @@ -406,6 +431,10 @@ stmt_ty _Py_FunctionDef(identifier name, arguments_ty args, asdl_seq * body, asdl_seq * decorator_list, expr_ty returns, int lineno, int col_offset, PyArena *arena); +#define AsyncFunctionDef(a0, a1, a2, a3, a4, a5, a6, a7) _Py_AsyncFunctionDef(a0, a1, a2, a3, a4, a5, a6, a7) +stmt_ty _Py_AsyncFunctionDef(identifier name, arguments_ty args, asdl_seq * + body, asdl_seq * decorator_list, expr_ty returns, + int lineno, int col_offset, PyArena *arena); #define ClassDef(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9) _Py_ClassDef(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9) stmt_ty _Py_ClassDef(identifier name, asdl_seq * bases, asdl_seq * keywords, expr_ty starargs, expr_ty kwargs, asdl_seq * body, @@ -425,6 +454,9 @@ #define For(a0, a1, a2, a3, a4, a5, a6) _Py_For(a0, a1, a2, a3, a4, a5, a6) stmt_ty _Py_For(expr_ty target, expr_ty iter, asdl_seq * body, asdl_seq * orelse, int lineno, int col_offset, PyArena *arena); +#define AsyncFor(a0, a1, a2, a3, a4, a5, a6) _Py_AsyncFor(a0, a1, a2, a3, a4, a5, a6) +stmt_ty _Py_AsyncFor(expr_ty target, expr_ty iter, asdl_seq * body, asdl_seq * + orelse, int lineno, int col_offset, PyArena *arena); #define While(a0, a1, a2, a3, a4, a5) _Py_While(a0, a1, a2, a3, a4, a5) stmt_ty _Py_While(expr_ty test, asdl_seq * body, asdl_seq * orelse, int lineno, int col_offset, PyArena *arena); @@ -434,6 +466,9 @@ #define With(a0, a1, a2, a3, a4) _Py_With(a0, a1, a2, a3, a4) stmt_ty _Py_With(asdl_seq * items, asdl_seq * body, int lineno, int col_offset, PyArena *arena); +#define AsyncWith(a0, a1, a2, a3, a4) _Py_AsyncWith(a0, a1, a2, a3, a4) +stmt_ty _Py_AsyncWith(asdl_seq * items, asdl_seq * body, int lineno, int + col_offset, PyArena *arena); #define Raise(a0, a1, a2, a3, a4) _Py_Raise(a0, a1, a2, a3, a4) stmt_ty _Py_Raise(expr_ty exc, expr_ty cause, int lineno, int col_offset, PyArena *arena); @@ -496,6 +531,8 @@ #define GeneratorExp(a0, a1, a2, a3, a4) _Py_GeneratorExp(a0, a1, a2, a3, a4) expr_ty _Py_GeneratorExp(expr_ty elt, asdl_seq * generators, int lineno, int col_offset, PyArena *arena); +#define Await(a0, a1, a2, a3) _Py_Await(a0, a1, a2, a3) +expr_ty _Py_Await(expr_ty value, int lineno, int col_offset, PyArena *arena); #define Yield(a0, a1, a2, a3) _Py_Yield(a0, a1, a2, a3) expr_ty _Py_Yield(expr_ty value, int lineno, int col_offset, PyArena *arena); #define YieldFrom(a0, a1, a2, a3) _Py_YieldFrom(a0, a1, a2, a3) diff -r ccac513ee610 Include/ceval.h --- a/Include/ceval.h Mon Apr 20 21:05:23 2015 +0200 +++ b/Include/ceval.h Mon Apr 20 15:54:06 2015 -0400 @@ -23,6 +23,7 @@ #ifndef Py_LIMITED_API PyAPI_FUNC(void) PyEval_SetProfile(Py_tracefunc, PyObject *); PyAPI_FUNC(void) PyEval_SetTrace(Py_tracefunc, PyObject *); +PyAPI_FUNC(void) PyEval_SetAsyncWrapper(PyObject *wrapper); #endif struct _frame; /* Avoid including frameobject.h */ diff -r ccac513ee610 Include/code.h --- a/Include/code.h Mon Apr 20 21:05:23 2015 +0200 +++ b/Include/code.h Mon Apr 20 15:54:06 2015 -0400 @@ -51,6 +51,9 @@ */ #define CO_NOFREE 0x0040 +/* The CO_ASYNC flag is set for 'async def' functions */ +#define CO_ASYNC 0x0080 + /* These are no longer used. */ #if 0 #define CO_GENERATOR_ALLOWED 0x1000 diff -r ccac513ee610 Include/genobject.h --- a/Include/genobject.h Mon Apr 20 21:05:23 2015 +0200 +++ b/Include/genobject.h Mon Apr 20 15:54:06 2015 -0400 @@ -38,6 +38,11 @@ #define PyGen_Check(op) PyObject_TypeCheck(op, &PyGen_Type) #define PyGen_CheckExact(op) (Py_TYPE(op) == &PyGen_Type) +#define PyGen_CheckAsyncExact(op) (PyGen_CheckExact(op) && \ + (((PyCodeObject*) \ + ((PyGenObject*)op)->gi_code) \ + ->co_flags & CO_ASYNC)) + PyAPI_FUNC(PyObject *) PyGen_New(struct _frame *); PyAPI_FUNC(PyObject *) PyGen_NewWithQualName(struct _frame *, PyObject *name, PyObject *qualname); @@ -46,6 +51,7 @@ PyObject *_PyGen_Send(PyGenObject *, PyObject *); PyAPI_FUNC(void) _PyGen_Finalize(PyObject *self); +PyObject *_PyGen_GetAsyncIter(PyObject *); #ifdef __cplusplus } diff -r ccac513ee610 Include/graminit.h --- a/Include/graminit.h Mon Apr 20 21:05:23 2015 +0200 +++ b/Include/graminit.h Mon Apr 20 15:54:06 2015 -0400 @@ -6,79 +6,83 @@ #define decorator 259 #define decorators 260 #define decorated 261 -#define funcdef 262 -#define parameters 263 -#define typedargslist 264 -#define tfpdef 265 -#define varargslist 266 -#define vfpdef 267 -#define stmt 268 -#define simple_stmt 269 -#define small_stmt 270 -#define expr_stmt 271 -#define testlist_star_expr 272 -#define augassign 273 -#define del_stmt 274 -#define pass_stmt 275 -#define flow_stmt 276 -#define break_stmt 277 -#define continue_stmt 278 -#define return_stmt 279 -#define yield_stmt 280 -#define raise_stmt 281 -#define import_stmt 282 -#define import_name 283 -#define import_from 284 -#define import_as_name 285 -#define dotted_as_name 286 -#define import_as_names 287 -#define dotted_as_names 288 -#define dotted_name 289 -#define global_stmt 290 -#define nonlocal_stmt 291 -#define assert_stmt 292 -#define compound_stmt 293 -#define if_stmt 294 -#define while_stmt 295 -#define for_stmt 296 -#define try_stmt 297 -#define with_stmt 298 -#define with_item 299 -#define except_clause 300 -#define suite 301 -#define test 302 -#define test_nocond 303 -#define lambdef 304 -#define lambdef_nocond 305 -#define or_test 306 -#define and_test 307 -#define not_test 308 -#define comparison 309 -#define comp_op 310 -#define star_expr 311 -#define expr 312 -#define xor_expr 313 -#define and_expr 314 -#define shift_expr 315 -#define arith_expr 316 -#define term 317 -#define factor 318 -#define power 319 -#define atom 320 -#define testlist_comp 321 -#define trailer 322 -#define subscriptlist 323 -#define subscript 324 -#define sliceop 325 -#define exprlist 326 -#define testlist 327 -#define dictorsetmaker 328 -#define classdef 329 -#define arglist 330 -#define argument 331 -#define comp_iter 332 -#define comp_for 333 -#define comp_if 334 -#define encoding_decl 335 -#define yield_expr 336 -#define yield_arg 337 +#define async_funcdef 262 +#define funcdef 263 +#define parameters 264 +#define typedargslist 265 +#define tfpdef 266 +#define varargslist 267 +#define vfpdef 268 +#define stmt 269 +#define simple_stmt 270 +#define small_stmt 271 +#define expr_stmt 272 +#define testlist_star_expr 273 +#define augassign 274 +#define del_stmt 275 +#define pass_stmt 276 +#define flow_stmt 277 +#define break_stmt 278 +#define continue_stmt 279 +#define return_stmt 280 +#define await_stmt 281 +#define yield_stmt 282 +#define raise_stmt 283 +#define import_stmt 284 +#define import_name 285 +#define import_from 286 +#define import_as_name 287 +#define dotted_as_name 288 +#define import_as_names 289 +#define dotted_as_names 290 +#define dotted_name 291 +#define global_stmt 292 +#define nonlocal_stmt 293 +#define assert_stmt 294 +#define compound_stmt 295 +#define async_stmt 296 +#define if_stmt 297 +#define while_stmt 298 +#define for_stmt 299 +#define try_stmt 300 +#define with_stmt 301 +#define with_item 302 +#define except_clause 303 +#define suite 304 +#define test 305 +#define test_nocond 306 +#define lambdef 307 +#define lambdef_nocond 308 +#define or_test 309 +#define and_test 310 +#define not_test 311 +#define comparison 312 +#define comp_op 313 +#define star_expr 314 +#define expr 315 +#define xor_expr 316 +#define and_expr 317 +#define shift_expr 318 +#define arith_expr 319 +#define term 320 +#define factor 321 +#define power 322 +#define atom 323 +#define testlist_comp 324 +#define trailer 325 +#define subscriptlist 326 +#define subscript 327 +#define sliceop 328 +#define exprlist 329 +#define testlist 330 +#define dictorsetmaker 331 +#define classdef 332 +#define arglist 333 +#define argument 334 +#define comp_iter 335 +#define comp_for 336 +#define comp_if 337 +#define encoding_decl 338 +#define await_expr 339 +#define yield_expr 340 +#define yield_arg 341 diff -r ccac513ee610 Include/opcode.h --- a/Include/opcode.h Mon Apr 20 21:05:23 2015 +0200 +++ b/Include/opcode.h Mon Apr 20 15:54:06 2015 -0400 @@ -29,6 +29,9 @@ #define BINARY_TRUE_DIVIDE 27 #define INPLACE_FLOOR_DIVIDE 28 #define INPLACE_TRUE_DIVIDE 29 +#define ASYNC_AITER 50 +#define ASYNC_ANEXT 51 +#define BEFORE_ASYNC_WITH 52 #define STORE_MAP 54 #define INPLACE_ADD 55 #define INPLACE_SUBTRACT 56 @@ -46,13 +49,15 @@ #define PRINT_EXPR 70 #define LOAD_BUILD_CLASS 71 #define YIELD_FROM 72 +#define GET_ASYNC 73 #define INPLACE_LSHIFT 75 #define INPLACE_RSHIFT 76 #define INPLACE_AND 77 #define INPLACE_XOR 78 #define INPLACE_OR 79 #define BREAK_LOOP 80 -#define WITH_CLEANUP 81 +#define WITH_CLEANUP_ENTER 81 +#define WITH_CLEANUP_EXIT 82 #define RETURN_VALUE 83 #define IMPORT_STAR 84 #define YIELD_VALUE 86 @@ -111,6 +116,7 @@ #define SET_ADD 146 #define MAP_ADD 147 #define LOAD_CLASSDEREF 148 +#define SETUP_ASYNC_WITH 149 /* EXCEPT_HANDLER is a special, implicit block type which is created when entering an except handler. It is not an opcode but we define it here diff -r ccac513ee610 Include/pyerrors.h --- a/Include/pyerrors.h Mon Apr 20 21:05:23 2015 +0200 +++ b/Include/pyerrors.h Mon Apr 20 15:54:06 2015 -0400 @@ -147,6 +147,7 @@ PyAPI_DATA(PyObject *) PyExc_BaseException; PyAPI_DATA(PyObject *) PyExc_Exception; +PyAPI_DATA(PyObject *) PyExc_StopAsyncIteration; PyAPI_DATA(PyObject *) PyExc_StopIteration; PyAPI_DATA(PyObject *) PyExc_GeneratorExit; PyAPI_DATA(PyObject *) PyExc_ArithmeticError; diff -r ccac513ee610 Include/token.h --- a/Include/token.h Mon Apr 20 21:05:23 2015 +0200 +++ b/Include/token.h Mon Apr 20 15:54:06 2015 -0400 @@ -64,8 +64,10 @@ #define ELLIPSIS 52 /* Don't forget to update the table _PyParser_TokenNames in tokenizer.c! */ #define OP 53 -#define ERRORTOKEN 54 -#define N_TOKENS 55 +#define AWAIT 54 +#define ASYNC 55 +#define ERRORTOKEN 56 +#define N_TOKENS 57 /* Special definitions for cooperation with parser */ diff -r ccac513ee610 Lib/asyncio/base_events.py --- a/Lib/asyncio/base_events.py Mon Apr 20 21:05:23 2015 +0200 +++ b/Lib/asyncio/base_events.py Mon Apr 20 15:54:06 2015 -0400 @@ -32,7 +32,7 @@ from . import events from . import futures from . import tasks -from .coroutines import coroutine +from .coroutines import coroutine, CoroWrapper from .log import logger @@ -191,8 +191,8 @@ self._thread_id = None self._clock_resolution = time.get_clock_info('monotonic').resolution self._exception_handler = None - self._debug = (not sys.flags.ignore_environment - and bool(os.environ.get('PYTHONASYNCIODEBUG'))) + self.set_debug((not sys.flags.ignore_environment + and bool(os.environ.get('PYTHONASYNCIODEBUG')))) # In debug mode, if the execution of a callback or a step of a task # exceed this duration in seconds, the slow callback/task is logged. self.slow_callback_duration = 0.1 @@ -338,13 +338,16 @@ return if self._debug: logger.debug("Close %r", self) - self._closed = True - self._ready.clear() - self._scheduled.clear() - executor = self._default_executor - if executor is not None: - self._default_executor = None - executor.shutdown(wait=False) + try: + self._closed = True + self._ready.clear() + self._scheduled.clear() + executor = self._default_executor + if executor is not None: + self._default_executor = None + executor.shutdown(wait=False) + finally: + self.set_debug(False) def is_closed(self): """Returns True if the event loop was closed.""" @@ -1177,3 +1180,9 @@ def set_debug(self, enabled): self._debug = enabled + + if hasattr(sys, 'set_async_wrapper'): + if enabled: + sys.set_async_wrapper(lambda gen: CoroWrapper(gen, None)) + else: + sys.set_async_wrapper(None) diff -r ccac513ee610 Lib/asyncio/coroutines.py --- a/Lib/asyncio/coroutines.py Mon Apr 20 21:05:23 2015 +0200 +++ b/Lib/asyncio/coroutines.py Mon Apr 20 15:54:06 2015 -0400 @@ -30,6 +30,14 @@ and bool(os.environ.get('PYTHONASYNCIODEBUG'))) +try: + async_def = types.async_def +except AttributeError: + native_async = False +else: + native_async = True + + # Check for CPython issue #21209 def has_yield_from_bug(): class MyGen: @@ -62,6 +70,11 @@ self.gen = gen self.func = func self._source_traceback = traceback.extract_stack(sys._getframe(1)) + + if '__name__' not in self.__dict__: + self.__name__ = gen.__name__ + self.__qualname__ = gen.__qualname__ + self.__doc__ = gen.__doc__ # __name__, __qualname__, __doc__ attributes are set by the coroutine() # decorator @@ -75,6 +88,8 @@ def __iter__(self): return self + __await__ = __iter__ # Python 3.5 compatibility + def __next__(self): return next(self.gen) @@ -143,19 +158,22 @@ res = yield from res return res - if not _DEBUG: - wrapper = coro + if native_async: + wrapper = types.async_def(coro) else: - @functools.wraps(func) - def wrapper(*args, **kwds): - w = CoroWrapper(coro(*args, **kwds), func) - if w._source_traceback: - del w._source_traceback[-1] - w.__name__ = func.__name__ - if hasattr(func, '__qualname__'): - w.__qualname__ = func.__qualname__ - w.__doc__ = func.__doc__ - return w + if not _DEBUG: + wrapper = coro + else: + @functools.wraps(func) + def wrapper(*args, **kwds): + w = CoroWrapper(coro(*args, **kwds), func) + if w._source_traceback: + del w._source_traceback[-1] + w.__name__ = func.__name__ + if hasattr(func, '__qualname__'): + w.__qualname__ = func.__qualname__ + w.__doc__ = func.__doc__ + return w wrapper._is_coroutine = True # For iscoroutinefunction(). return wrapper @@ -179,7 +197,8 @@ filename = coro.gi_code.co_filename if (isinstance(coro, CoroWrapper) - and not inspect.isgeneratorfunction(coro.func)): + and not inspect.isgeneratorfunction(coro.func) + and coro.func is not None): filename, lineno = events._get_function_source(coro.func) if coro.gi_frame is None: coro_repr = ('%s() done, defined at %s:%s' diff -r ccac513ee610 Lib/asyncio/futures.py --- a/Lib/asyncio/futures.py Mon Apr 20 21:05:23 2015 +0200 +++ b/Lib/asyncio/futures.py Mon Apr 20 15:54:06 2015 -0400 @@ -387,6 +387,8 @@ assert self.done(), "yield from wasn't used with future" return self.result() # May raise too. + __await__ = __iter__ # for async/await in Python 3.5 + def wrap_future(fut, *, loop=None): """Wrap concurrent.futures.Future object.""" diff -r ccac513ee610 Lib/dis.py --- a/Lib/dis.py Mon Apr 20 21:05:23 2015 +0200 +++ b/Lib/dis.py Mon Apr 20 15:54:06 2015 -0400 @@ -84,6 +84,7 @@ 16: "NESTED", 32: "GENERATOR", 64: "NOFREE", + 128: "ASYNC", } def pretty_flags(flags): diff -r ccac513ee610 Lib/importlib/_bootstrap.py --- a/Lib/importlib/_bootstrap.py Mon Apr 20 21:05:23 2015 +0200 +++ b/Lib/importlib/_bootstrap.py Mon Apr 20 15:54:06 2015 -0400 @@ -420,12 +420,13 @@ # Python 3.4a4 3300 (more changes to __qualname__ computation) # Python 3.4rc2 3310 (alter __qualname__ computation) # Python 3.5a0 3320 (matrix multiplication operator) +# Python 3.5a3 3331 (async/await extentions) # # MAGIC must change whenever the bytecode emitted by the compiler may no # longer be understood by older implementations of the eval loop (usually # due to the addition of new opcodes). -MAGIC_NUMBER = (3320).to_bytes(2, 'little') + b'\r\n' +MAGIC_NUMBER = (3331).to_bytes(2, 'little') + b'\r\n' _RAW_MAGIC_NUMBER = int.from_bytes(MAGIC_NUMBER, 'little') # For import.c _PYCACHE = '__pycache__' diff -r ccac513ee610 Lib/opcode.py --- a/Lib/opcode.py Mon Apr 20 21:05:23 2015 +0200 +++ b/Lib/opcode.py Mon Apr 20 15:54:06 2015 -0400 @@ -85,6 +85,24 @@ def_op('INPLACE_FLOOR_DIVIDE', 28) def_op('INPLACE_TRUE_DIVIDE', 29) +def_op('ASYNC_AITER', 50) # 1) Resolve __aiter__ from the object on + # top of the stack, + # 2) call _PyGen_GetAsyncIter on it, + # 3) replace top object on stack with result + # (result will be handled to YIELD_FROM + # eventually) + +def_op('ASYNC_ANEXT', 51) # 1) Resolve __anext__ from the object + # on top of the stack and call it, + # 2) push result to the stack (for YIELD_FROM + # eventually) + +def_op('BEFORE_ASYNC_WITH', 52) # 1) Resolve __aenter__ and __aexit__ from + # the object on top of the stack, + # 2) call __aenter__, + # 3) push result to stack so that YIELD_FROM + # can chew on it + def_op('STORE_MAP', 54) def_op('INPLACE_ADD', 55) def_op('INPLACE_SUBTRACT', 56) @@ -105,13 +123,17 @@ def_op('LOAD_BUILD_CLASS', 71) def_op('YIELD_FROM', 72) +def_op('GET_ASYNC', 73) # 1) Call _PyGen_GetAsyncIter on the top object, + # 2) and replace it with the result. + def_op('INPLACE_LSHIFT', 75) def_op('INPLACE_RSHIFT', 76) def_op('INPLACE_AND', 77) def_op('INPLACE_XOR', 78) def_op('INPLACE_OR', 79) def_op('BREAK_LOOP', 80) -def_op('WITH_CLEANUP', 81) +def_op('WITH_CLEANUP_ENTER', 81) +def_op('WITH_CLEANUP_EXIT', 82) def_op('RETURN_VALUE', 83) def_op('IMPORT_STAR', 84) @@ -197,6 +219,8 @@ def_op('LOAD_CLASSDEREF', 148) hasfree.append(148) +jrel_op('SETUP_ASYNC_WITH', 149) + def_op('EXTENDED_ARG', 144) EXTENDED_ARG = 144 diff -r ccac513ee610 Lib/test/exception_hierarchy.txt --- a/Lib/test/exception_hierarchy.txt Mon Apr 20 21:05:23 2015 +0200 +++ b/Lib/test/exception_hierarchy.txt Mon Apr 20 15:54:06 2015 -0400 @@ -4,6 +4,7 @@ +-- GeneratorExit +-- Exception +-- StopIteration + +-- StopAsyncIteration +-- ArithmeticError | +-- FloatingPointError | +-- OverflowError diff -r ccac513ee610 Lib/test/test_ast.py --- a/Lib/test/test_ast.py Mon Apr 20 21:05:23 2015 +0200 +++ b/Lib/test/test_ast.py Mon Apr 20 15:54:06 2015 -0400 @@ -28,6 +28,8 @@ "None", # FunctionDef "def f(): pass", + # AsyncFunctionDef + "async def f():\n await something()", # FunctionDef with arg "def f(a): pass", # FunctionDef with arg and default value @@ -952,6 +954,7 @@ exec_results = [ ('Module', [('Expr', (1, 0), ('NameConstant', (1, 0), None))]), ('Module', [('FunctionDef', (1, 0), 'f', ('arguments', [], None, [], [], None, []), [('Pass', (1, 9))], [], None)]), +('Module', [('AsyncFunctionDef', (1, 6), 'f', ('arguments', [], None, [], [], None, []), [('Expr', (2, 1), ('Await', (2, 1), ('Call', (2, 7), ('Name', (2, 7), 'something', ('Load',)), [], [], None, None)))], [], None)]), ('Module', [('FunctionDef', (1, 0), 'f', ('arguments', [('arg', (1, 6), 'a', None)], None, [], [], None, []), [('Pass', (1, 10))], [], None)]), ('Module', [('FunctionDef', (1, 0), 'f', ('arguments', [('arg', (1, 6), 'a', None)], None, [], [], None, [('Num', (1, 8), 0)]), [('Pass', (1, 12))], [], None)]), ('Module', [('FunctionDef', (1, 0), 'f', ('arguments', [], ('arg', (1, 7), 'args', None), [], [], None, []), [('Pass', (1, 14))], [], None)]), diff -r ccac513ee610 Lib/test/test_asyncio/test_tasks.py --- a/Lib/test/test_asyncio/test_tasks.py Mon Apr 20 21:05:23 2015 +0200 +++ b/Lib/test/test_asyncio/test_tasks.py Mon Apr 20 15:54:06 2015 -0400 @@ -1663,14 +1663,22 @@ @mock.patch('asyncio.coroutines.logger') def test_coroutine_never_yielded(self, m_log): - debug = asyncio.coroutines._DEBUG - try: - asyncio.coroutines._DEBUG = True + if PY35: + self.loop.set_debug(True) + @asyncio.coroutine def coro_noop(): pass - finally: - asyncio.coroutines._DEBUG = debug + + else: + debug = asyncio.coroutines._DEBUG + try: + asyncio.coroutines._DEBUG = True + @asyncio.coroutine + def coro_noop(): + pass + finally: + asyncio.coroutines._DEBUG = debug tb_filename = __file__ tb_lineno = sys._getframe().f_lineno + 2 @@ -1680,18 +1688,22 @@ self.assertTrue(m_log.error.called) message = m_log.error.call_args[0][0] - func_filename, func_lineno = test_utils.get_function_source(coro_noop) - regex = (r'^ ' - r'was never yielded from\n' - r'Coroutine object created at \(most recent call last\):\n' - r'.*\n' - r' File "%s", line %s, in test_coroutine_never_yielded\n' - r' coro_noop\(\)$' - % (re.escape(coro_noop.__qualname__), - re.escape(func_filename), func_lineno, - re.escape(tb_filename), tb_lineno)) - self.assertRegex(message, re.compile(regex, re.DOTALL)) + func_filename, func_lineno = test_utils.get_function_source( + coro_noop) + + if not PY35: # TODO + regex = (r'^ ' + r'was never yielded from\n' + r'Coroutine object created at \(most recent call last\):\n' + r'.*\n' + r' File "%s", line %s, in test_coroutine_never_yielded\n' + r' coro_noop\(\)$' + % (re.escape(coro_noop.__qualname__), + re.escape(func_filename), func_lineno, + re.escape(tb_filename), tb_lineno)) + + self.assertRegex(message, re.compile(regex, re.DOTALL)) def test_task_source_traceback(self): self.loop.set_debug(True) diff -r ccac513ee610 Lib/test/test_dis.py --- a/Lib/test/test_dis.py Mon Apr 20 21:05:23 2015 +0200 +++ b/Lib/test/test_dis.py Mon Apr 20 15:54:06 2015 -0400 @@ -480,6 +480,22 @@ Names: 0: x""" + +async def async_def(): + await 1 + +code_info_async_def = """\ +Name: async_def +Filename: (.*) +Argument count: 0 +Kw-only arguments: 0 +Number of locals: 0 +Stack size: 2 +Flags: OPTIMIZED, NEWLOCALS, GENERATOR, NOFREE, ASYNC +Constants: + 0: None + 1: 1""" + class CodeInfoTests(unittest.TestCase): test_pairs = [ (dis.code_info, code_info_code_info), @@ -488,6 +504,7 @@ (expr_str, code_info_expr_str), (simple_stmt_str, code_info_simple_stmt_str), (compound_stmt_str, code_info_compound_stmt_str), + (async_def, code_info_async_def) ] def test_code_info(self): @@ -697,7 +714,7 @@ Instruction(opname='LOAD_CONST', opcode=100, arg=6, argval='Who let lolcatz into this test suite?', argrepr="'Who let lolcatz into this test suite?'", offset=135, starts_line=None, is_jump_target=False), Instruction(opname='CALL_FUNCTION', opcode=131, arg=1, argval=1, argrepr='1 positional, 0 keyword pair', offset=138, starts_line=None, is_jump_target=False), Instruction(opname='POP_TOP', opcode=1, arg=None, argval=None, argrepr='', offset=141, starts_line=None, is_jump_target=False), - Instruction(opname='SETUP_FINALLY', opcode=122, arg=72, argval=217, argrepr='to 217', offset=142, starts_line=20, is_jump_target=True), + Instruction(opname='SETUP_FINALLY', opcode=122, arg=73, argval=218, argrepr='to 218', offset=142, starts_line=20, is_jump_target=True), Instruction(opname='SETUP_EXCEPT', opcode=121, arg=12, argval=160, argrepr='to 160', offset=145, starts_line=None, is_jump_target=False), Instruction(opname='LOAD_CONST', opcode=100, arg=5, argval=1, argrepr='1', offset=148, starts_line=21, is_jump_target=False), Instruction(opname='LOAD_CONST', opcode=100, arg=7, argval=0, argrepr='0', offset=151, starts_line=None, is_jump_target=False), @@ -717,7 +734,7 @@ Instruction(opname='CALL_FUNCTION', opcode=131, arg=1, argval=1, argrepr='1 positional, 0 keyword pair', offset=179, starts_line=None, is_jump_target=False), Instruction(opname='POP_TOP', opcode=1, arg=None, argval=None, argrepr='', offset=182, starts_line=None, is_jump_target=False), Instruction(opname='POP_EXCEPT', opcode=89, arg=None, argval=None, argrepr='', offset=183, starts_line=None, is_jump_target=False), - Instruction(opname='JUMP_FORWARD', opcode=110, arg=26, argval=213, argrepr='to 213', offset=184, starts_line=None, is_jump_target=False), + Instruction(opname='JUMP_FORWARD', opcode=110, arg=27, argval=214, argrepr='to 214', offset=184, starts_line=None, is_jump_target=False), Instruction(opname='END_FINALLY', opcode=88, arg=None, argval=None, argrepr='', offset=187, starts_line=None, is_jump_target=True), Instruction(opname='LOAD_FAST', opcode=124, arg=0, argval='i', argrepr='i', offset=188, starts_line=25, is_jump_target=True), Instruction(opname='SETUP_WITH', opcode=143, arg=17, argval=211, argrepr='to 211', offset=191, starts_line=None, is_jump_target=False), @@ -728,17 +745,18 @@ Instruction(opname='POP_TOP', opcode=1, arg=None, argval=None, argrepr='', offset=206, starts_line=None, is_jump_target=False), Instruction(opname='POP_BLOCK', opcode=87, arg=None, argval=None, argrepr='', offset=207, starts_line=None, is_jump_target=False), Instruction(opname='LOAD_CONST', opcode=100, arg=0, argval=None, argrepr='None', offset=208, starts_line=None, is_jump_target=False), - Instruction(opname='WITH_CLEANUP', opcode=81, arg=None, argval=None, argrepr='', offset=211, starts_line=None, is_jump_target=True), - Instruction(opname='END_FINALLY', opcode=88, arg=None, argval=None, argrepr='', offset=212, starts_line=None, is_jump_target=False), - Instruction(opname='POP_BLOCK', opcode=87, arg=None, argval=None, argrepr='', offset=213, starts_line=None, is_jump_target=True), - Instruction(opname='LOAD_CONST', opcode=100, arg=0, argval=None, argrepr='None', offset=214, starts_line=None, is_jump_target=False), - Instruction(opname='LOAD_GLOBAL', opcode=116, arg=1, argval='print', argrepr='print', offset=217, starts_line=28, is_jump_target=True), - Instruction(opname='LOAD_CONST', opcode=100, arg=10, argval="OK, now we're done", argrepr='"OK, now we\'re done"', offset=220, starts_line=None, is_jump_target=False), - Instruction(opname='CALL_FUNCTION', opcode=131, arg=1, argval=1, argrepr='1 positional, 0 keyword pair', offset=223, starts_line=None, is_jump_target=False), - Instruction(opname='POP_TOP', opcode=1, arg=None, argval=None, argrepr='', offset=226, starts_line=None, is_jump_target=False), - Instruction(opname='END_FINALLY', opcode=88, arg=None, argval=None, argrepr='', offset=227, starts_line=None, is_jump_target=False), - Instruction(opname='LOAD_CONST', opcode=100, arg=0, argval=None, argrepr='None', offset=228, starts_line=None, is_jump_target=False), - Instruction(opname='RETURN_VALUE', opcode=83, arg=None, argval=None, argrepr='', offset=231, starts_line=None, is_jump_target=False), + Instruction(opname='WITH_CLEANUP_ENTER', opcode=81, arg=None, argval=None, argrepr='', offset=211, starts_line=None, is_jump_target=True), + Instruction(opname='WITH_CLEANUP_EXIT', opcode=82, arg=None, argval=None, argrepr='', offset=212, starts_line=None, is_jump_target=False), + Instruction(opname='END_FINALLY', opcode=88, arg=None, argval=None, argrepr='', offset=213, starts_line=None, is_jump_target=False), + Instruction(opname='POP_BLOCK', opcode=87, arg=None, argval=None, argrepr='', offset=214, starts_line=None, is_jump_target=True), + Instruction(opname='LOAD_CONST', opcode=100, arg=0, argval=None, argrepr='None', offset=215, starts_line=None, is_jump_target=False), + Instruction(opname='LOAD_GLOBAL', opcode=116, arg=1, argval='print', argrepr='print', offset=218, starts_line=28, is_jump_target=True), + Instruction(opname='LOAD_CONST', opcode=100, arg=10, argval="OK, now we're done", argrepr='"OK, now we\'re done"', offset=221, starts_line=None, is_jump_target=False), + Instruction(opname='CALL_FUNCTION', opcode=131, arg=1, argval=1, argrepr='1 positional, 0 keyword pair', offset=224, starts_line=None, is_jump_target=False), + Instruction(opname='POP_TOP', opcode=1, arg=None, argval=None, argrepr='', offset=227, starts_line=None, is_jump_target=False), + Instruction(opname='END_FINALLY', opcode=88, arg=None, argval=None, argrepr='', offset=228, starts_line=None, is_jump_target=False), + Instruction(opname='LOAD_CONST', opcode=100, arg=0, argval=None, argrepr='None', offset=229, starts_line=None, is_jump_target=False), + Instruction(opname='RETURN_VALUE', opcode=83, arg=None, argval=None, argrepr='', offset=232, starts_line=None, is_jump_target=False), ] # One last piece of inspect fodder to check the default line number handling diff -r ccac513ee610 Lib/test/test_grammar.py --- a/Lib/test/test_grammar.py Mon Apr 20 21:05:23 2015 +0200 +++ b/Lib/test/test_grammar.py Mon Apr 20 15:54:06 2015 -0400 @@ -1030,6 +1030,42 @@ m @= 42 self.assertEqual(m.other, 42) + def test_async_await(self): + async = 1 + await = 2 + self.assertEqual(async, 1) + + def async(): + nonlocal await + await = 10 + async() + self.assertEqual(await, 10) + + self.assertFalse(bool(async.__code__.co_flags & 0x80)) + + async def test(): + def sum(): + async = 1 + await = 41 + return async + await + + if 1: + await someobj() + + self.assertEqual(test.__name__, 'test') + self.assertTrue(bool(test.__code__.co_flags & 0x80)) + + def decorator(func): + setattr(func, '_marked', True) + return func + + @decorator + async def test2(): + return 22 + self.assertTrue(test2._marked) + self.assertEqual(test2.__name__, 'test2') + self.assertTrue(bool(test2.__code__.co_flags & 0x80)) + if __name__ == '__main__': unittest.main() diff -r ccac513ee610 Lib/test/test_parser.py --- a/Lib/test/test_parser.py Mon Apr 20 21:05:23 2015 +0200 +++ b/Lib/test/test_parser.py Mon Apr 20 15:54:06 2015 -0400 @@ -63,6 +63,22 @@ " if (yield):\n" " yield x\n") + def test_await_statement(self): + self.check_suite("async def f():\n await smth()") + self.check_suite("async def f():\n foo = await smth()") + self.check_suite("async def f():\n foo, bar = await smth()") + self.check_suite("async def f():\n (await smth())") + self.check_suite("async def f():\n foo((await smth()))") + self.check_suite("async def f():\n await foo(); return 42") + + def test_async_with_statement(self): + self.check_suite("async def f():\n async with 1: pass") + self.check_suite("async def f():\n async with a as b, c as d: pass") + + def test_async_for_statement(self): + self.check_suite("async def f():\n async for i in (): pass") + self.check_suite("async def f():\n async for i, b in (): pass") + def test_nonlocal_statement(self): self.check_suite("def f():\n" " x = 0\n" diff -r ccac513ee610 Lib/test/test_pickle.py --- a/Lib/test/test_pickle.py Mon Apr 20 21:05:23 2015 +0200 +++ b/Lib/test/test_pickle.py Mon Apr 20 15:54:06 2015 -0400 @@ -351,7 +351,9 @@ for name, exc in get_exceptions(builtins): with self.subTest(name): - if exc in (BlockingIOError, ResourceWarning): + if exc in (BlockingIOError, + ResourceWarning, + StopAsyncIteration): continue if exc is not OSError and issubclass(exc, OSError): self.assertEqual(reverse_mapping('builtins', name), diff -r ccac513ee610 Lib/test/test_tokenize.py --- a/Lib/test/test_tokenize.py Mon Apr 20 21:05:23 2015 +0200 +++ b/Lib/test/test_tokenize.py Mon Apr 20 15:54:06 2015 -0400 @@ -641,6 +641,107 @@ NAME 'grĂ¼n' (2, 0) (2, 4) OP '=' (2, 5) (2, 6) STRING "U'green'" (2, 7) (2, 15) + +Async/await extension: + + >>> dump_tokens("async = 1") + ENCODING 'utf-8' (0, 0) (0, 0) + NAME 'async' (1, 0) (1, 5) + OP '=' (1, 6) (1, 7) + NUMBER '1' (1, 8) (1, 9) + + >>> dump_tokens("await = 1") + ENCODING 'utf-8' (0, 0) (0, 0) + NAME 'await' (1, 0) (1, 5) + OP '=' (1, 6) (1, 7) + NUMBER '1' (1, 8) (1, 9) + + >>> dump_tokens("foo.async") + ENCODING 'utf-8' (0, 0) (0, 0) + NAME 'foo' (1, 0) (1, 3) + OP '.' (1, 3) (1, 4) + NAME 'async' (1, 4) (1, 9) + + >>> dump_tokens("foo.async + 1") + ENCODING 'utf-8' (0, 0) (0, 0) + NAME 'foo' (1, 0) (1, 3) + OP '.' (1, 3) (1, 4) + NAME 'async' (1, 4) (1, 9) + OP '+' (1, 10) (1, 11) + NUMBER '1' (1, 12) (1, 13) + + >>> dump_tokens("async def foo(): pass") + ENCODING 'utf-8' (0, 0) (0, 0) + ASYNC 'async' (1, 0) (1, 5) + NAME 'def' (1, 6) (1, 9) + NAME 'foo' (1, 10) (1, 13) + OP '(' (1, 13) (1, 14) + OP ')' (1, 14) (1, 15) + OP ':' (1, 15) (1, 16) + NAME 'pass' (1, 17) (1, 21) + + >>> dump_tokens('''async def foo(): + ... def foo(await): + ... await = 1 + ... if 1: + ... await + ... async += 1 + ... ''') + ENCODING 'utf-8' (0, 0) (0, 0) + ASYNC 'async' (1, 0) (1, 5) + NAME 'def' (1, 6) (1, 9) + NAME 'foo' (1, 10) (1, 13) + OP '(' (1, 13) (1, 14) + OP ')' (1, 14) (1, 15) + OP ':' (1, 15) (1, 16) + NEWLINE '\\n' (1, 16) (1, 17) + INDENT ' ' (2, 0) (2, 2) + NAME 'def' (2, 2) (2, 5) + NAME 'foo' (2, 6) (2, 9) + OP '(' (2, 9) (2, 10) + NAME 'await' (2, 10) (2, 15) + OP ')' (2, 15) (2, 16) + OP ':' (2, 16) (2, 17) + NEWLINE '\\n' (2, 17) (2, 18) + INDENT ' ' (3, 0) (3, 4) + NAME 'await' (3, 4) (3, 9) + OP '=' (3, 10) (3, 11) + NUMBER '1' (3, 12) (3, 13) + NEWLINE '\\n' (3, 13) (3, 14) + DEDENT '' (4, 2) (4, 2) + NAME 'if' (4, 2) (4, 4) + NUMBER '1' (4, 5) (4, 6) + OP ':' (4, 6) (4, 7) + NEWLINE '\\n' (4, 7) (4, 8) + INDENT ' ' (5, 0) (5, 4) + AWAIT 'await' (5, 4) (5, 9) + NEWLINE '\\n' (5, 9) (5, 10) + DEDENT '' (6, 0) (6, 0) + DEDENT '' (6, 0) (6, 0) + NAME 'async' (6, 0) (6, 5) + OP '+=' (6, 6) (6, 8) + NUMBER '1' (6, 9) (6, 10) + NEWLINE '\\n' (6, 10) (6, 11) + + >>> dump_tokens('''async def foo(): + ... async for i in 1: pass''') + ENCODING 'utf-8' (0, 0) (0, 0) + ASYNC 'async' (1, 0) (1, 5) + NAME 'def' (1, 6) (1, 9) + NAME 'foo' (1, 10) (1, 13) + OP '(' (1, 13) (1, 14) + OP ')' (1, 14) (1, 15) + OP ':' (1, 15) (1, 16) + NEWLINE '\\n' (1, 16) (1, 17) + INDENT ' ' (2, 0) (2, 2) + ASYNC 'async' (2, 2) (2, 7) + NAME 'for' (2, 8) (2, 11) + NAME 'i' (2, 12) (2, 13) + NAME 'in' (2, 14) (2, 16) + NUMBER '1' (2, 17) (2, 18) + OP ':' (2, 18) (2, 19) + NAME 'pass' (2, 20) (2, 24) + DEDENT '' (3, 0) (3, 0) """ from test import support diff -r ccac513ee610 Lib/token.py --- a/Lib/token.py Mon Apr 20 21:05:23 2015 +0200 +++ b/Lib/token.py Mon Apr 20 15:54:06 2015 -0400 @@ -64,8 +64,10 @@ RARROW = 51 ELLIPSIS = 52 OP = 53 -ERRORTOKEN = 54 -N_TOKENS = 55 +AWAIT = 54 +ASYNC = 55 +ERRORTOKEN = 56 +N_TOKENS = 57 NT_OFFSET = 256 #--end constants-- diff -r ccac513ee610 Lib/tokenize.py --- a/Lib/tokenize.py Mon Apr 20 21:05:23 2015 +0200 +++ b/Lib/tokenize.py Mon Apr 20 15:54:06 2015 -0400 @@ -274,7 +274,7 @@ self.encoding = tokval continue - if toknum in (NAME, NUMBER): + if toknum in (NAME, NUMBER, ASYNC, AWAIT): tokval += ' ' # Insert a space between two consecutive strings @@ -476,6 +476,9 @@ contstr, needcont = '', 0 contline = None indents = [0] + stashed = None + + ctx = [('sync', 0)] if encoding is not None: if encoding == "utf-8-sig": @@ -499,11 +502,17 @@ endmatch = endprog.match(line) if endmatch: pos = end = endmatch.end(0) + if stashed: + yield stashed + stashed = None yield TokenInfo(STRING, contstr + line[:end], strstart, (lnum, end), contline + line) contstr, needcont = '', 0 contline = None elif needcont and line[-2:] != '\\\n' and line[-3:] != '\\\r\n': + if stashed: + yield stashed + stashed = None yield TokenInfo(ERRORTOKEN, contstr + line, strstart, (lnum, len(line)), contline) contstr = '' @@ -530,6 +539,10 @@ if pos == max: break + if stashed: + yield stashed + stashed = None + if line[pos] in '#\r\n': # skip comments or blank lines if line[pos] == '#': comment_token = line[pos:].rstrip('\r\n') @@ -552,6 +565,11 @@ "unindent does not match any outer indentation level", ("", lnum, pos, line)) indents = indents[:-1] + + cur_indent = indents[-1] + while len(ctx) > 1 and ctx[-1][1] >= cur_indent: + ctx.pop() + yield TokenInfo(DEDENT, '', (lnum, pos), (lnum, pos), line) else: # continued statement @@ -570,12 +588,21 @@ if (initial in numchars or # ordinary number (initial == '.' and token != '.' and token != '...')): + if stashed: + yield stashed + stashed = None yield TokenInfo(NUMBER, token, spos, epos, line) elif initial in '\r\n': + if stashed: + yield stashed + stashed = None yield TokenInfo(NL if parenlev > 0 else NEWLINE, token, spos, epos, line) elif initial == '#': assert not token.endswith("\n") + if stashed: + yield stashed + stashed = None yield TokenInfo(COMMENT, token, spos, epos, line) elif token in triple_quoted: endprog = _compile(endpats[token]) @@ -601,9 +628,38 @@ contline = line break else: # ordinary string + if stashed: + yield stashed + stashed = None yield TokenInfo(STRING, token, spos, epos, line) elif initial.isidentifier(): # ordinary name - yield TokenInfo(NAME, token, spos, epos, line) + if token in ('async', 'await'): + if ctx[-1][0] == 'async' and ctx[-1][1] < indents[-1]: + yield TokenInfo( + ASYNC if token == 'async' else AWAIT, + token, spos, epos, line) + continue + + tok = TokenInfo(NAME, token, spos, epos, line) + if token == 'async' and not stashed: + stashed = tok + continue + + if token == 'def': + if (stashed + and stashed.type == NAME + and stashed.string == 'async'): + + ctx.append(('async', indents[-1])) + + yield TokenInfo(ASYNC, stashed.string, + stashed.start, stashed.end, + stashed.line) + stashed = None + else: + ctx.append(('sync', indents[-1])) + + yield tok elif initial == '\\': # continued stmt continued = 1 else: @@ -611,12 +667,22 @@ parenlev += 1 elif initial in ')]}': parenlev -= 1 + if stashed: + yield stashed + stashed = None yield TokenInfo(OP, token, spos, epos, line) else: + if stashed: + yield stashed + stashed = None yield TokenInfo(ERRORTOKEN, line[pos], (lnum, pos), (lnum, pos+1), line) pos += 1 + if stashed: + yield stashed + stashed = None + for indent in indents[1:]: # pop remaining indent levels yield TokenInfo(DEDENT, '', (lnum, 0), (lnum, 0), '') yield TokenInfo(ENDMARKER, '', (lnum, 0), (lnum, 0), '') diff -r ccac513ee610 Lib/types.py --- a/Lib/types.py Mon Apr 20 21:05:23 2015 +0200 +++ b/Lib/types.py Mon Apr 20 15:54:06 2015 -0400 @@ -43,6 +43,26 @@ del sys, _f, _g, _C, # Not for export +def async_def(func): + """Convert regular generator function to async function.""" + + # TODO: Implement this in C. + + if (not isinstance(func, (FunctionType, MethodType)) and + not (object.__code__.co_flags & 0x20)): + raise TypeError('async_def() expects a generator function') + + co = func.__code__ + func.__code__ = CodeType( + co.co_argcount, co.co_kwonlyargcount, co.co_nlocals, + co.co_stacksize, co.co_flags | 0x80, co.co_code, + co.co_consts, co.co_names, co.co_varnames, co.co_filename, + co.co_name, co.co_firstlineno, co.co_lnotab, + co.co_freevars, co.co_cellvars) + + return func + + # Provide a PEP 3115 compliant mechanism for class creation def new_class(name, bases=(), kwds=None, exec_body=None): """Create a class object dynamically using the appropriate metaclass.""" diff -r ccac513ee610 Modules/parsermodule.c --- a/Modules/parsermodule.c Mon Apr 20 21:05:23 2015 +0200 +++ b/Modules/parsermodule.c Mon Apr 20 15:54:06 2015 -0400 @@ -1036,6 +1036,8 @@ VALIDATER(or_test); VALIDATER(test_nocond); VALIDATER(lambdef_nocond); VALIDATER(yield_arg); +VALIDATER(await_stmt); VALIDATER(await_expr); +VALIDATER(async_funcdef); VALIDATER(async_stmt); #undef VALIDATER @@ -1577,6 +1579,7 @@ || (ntype == try_stmt) || (ntype == with_stmt) || (ntype == funcdef) + || (ntype == async_stmt) || (ntype == classdef) || (ntype == decorated)) res = validate_node(tree); @@ -1588,12 +1591,44 @@ return (res); } + +/* await_expr: AWAIT test + */ static int -validate_yield_or_testlist(node *tree, int tse) +validate_await_expr(node *tree) +{ + int nch = NCH(tree); + if (nch != 2) + return 0; + if (!validate_ntype(tree, await_expr)) + return 0; + if (!validate_ntype(CHILD(tree, 0), AWAIT)) + return 0; + if (!validate_test(CHILD(tree, 1))) + return 0; + return 1; +} + +/* await_stmt: await_expr + */ +static int +validate_await_stmt(node *tree) +{ + return (validate_ntype(tree, await_stmt) + && validate_numnodes(tree, 1, "await_stmt") + && validate_await_expr(CHILD(tree, 0))); +} + + +static int +validate_yield_or_await_or_testlist(node *tree, int tse) { if (TYPE(tree) == yield_expr) { return validate_yield_expr(tree); } + else if (TYPE(tree) == await_expr) { + return validate_await_expr(tree); + } else { if (tse) return validate_testlist_star_expr(tree); @@ -1614,7 +1649,7 @@ if (res && nch == 3 && TYPE(CHILD(tree, 1)) == augassign) { res = validate_numnodes(CHILD(tree, 1), 1, "augassign") - && validate_yield_or_testlist(CHILD(tree, 2), 0); + && validate_yield_or_await_or_testlist(CHILD(tree, 2), 0); if (res) { char *s = STR(CHILD(CHILD(tree, 1), 0)); @@ -1638,7 +1673,7 @@ else { for (j = 1; res && (j < nch); j += 2) res = validate_equal(CHILD(tree, j)) - && validate_yield_or_testlist(CHILD(tree, j + 1), 1); + && validate_yield_or_await_or_testlist(CHILD(tree, j + 1), 1); } return (res); } @@ -2450,10 +2485,17 @@ && (validate_rparen(CHILD(tree, nch - 1)))); if (res && (nch == 3)) { - if (TYPE(CHILD(tree, 1))==yield_expr) + switch (TYPE(CHILD(tree, 1))) { + case yield_expr: res = validate_yield_expr(CHILD(tree, 1)); - else + break; + case await_expr: + res = validate_await_expr(CHILD(tree, 1)); + break; + default: res = validate_testlist_comp(CHILD(tree, 1)); + break; + } } break; case LSQB: @@ -2638,6 +2680,55 @@ return res; } +/* async_funcdef: ASYNC funcdef */ + +static int +validate_async_funcdef(node *tree) +{ + int nch = NCH(tree); + int res = validate_ntype(tree, async_funcdef); + if (res) { + if (nch == 2) { + res = (validate_ntype(CHILD(tree, 0), ASYNC) + && validate_funcdef(CHILD(tree, 1))); + } + else { + res = 0; + err_string("illegal number of children for async_funcdef"); + } + } + return res; +} + + +/* async_stmt: ASYNC (funcdef | with_stmt | for_stmt) */ + +static int +validate_async_stmt(node *tree) +{ + int nch = NCH(tree); + int res = (validate_ntype(tree, async_stmt) + && validate_ntype(CHILD(tree, 0), ASYNC)); + + if (nch != 2) { + res = 0; + err_string("illegal number of children for async_stmt"); + } else { + if (TYPE(CHILD(tree, 1)) == funcdef) { + res = validate_funcdef(CHILD(tree, 1)); + } + else if (TYPE(CHILD(tree, 1)) == with_stmt) { + res = validate_with_stmt(CHILD(tree, 1)); + } + else if (TYPE(CHILD(tree, 1)) == for_stmt) { + res = validate_for(CHILD(tree, 1)); + } + } + + return res; +} + + /* decorated * decorators (classdef | funcdef) @@ -3068,6 +3159,12 @@ /* * Definition nodes. */ + case async_funcdef: + res = validate_async_funcdef(tree); + break; + case async_stmt: + res = validate_async_stmt(tree); + break; case funcdef: res = validate_funcdef(tree); break; @@ -3099,6 +3196,7 @@ && ((TYPE(CHILD(tree, 0)) == break_stmt) || (TYPE(CHILD(tree, 0)) == continue_stmt) || (TYPE(CHILD(tree, 0)) == yield_stmt) + || (TYPE(CHILD(tree, 0)) == await_stmt) || (TYPE(CHILD(tree, 0)) == return_stmt) || (TYPE(CHILD(tree, 0)) == raise_stmt))); if (res) @@ -3106,6 +3204,9 @@ else if (nch == 1) err_string("illegal flow_stmt type"); break; + case await_stmt: + res = validate_await_stmt(tree); + break; case yield_stmt: res = validate_yield_stmt(tree); break; @@ -3187,6 +3288,9 @@ case yield_expr: res = validate_yield_expr(tree); break; + case await_expr: + res = validate_await_expr(tree); + break; case test: res = validate_test(tree); break; diff -r ccac513ee610 Objects/exceptions.c --- a/Objects/exceptions.c Mon Apr 20 21:05:23 2015 +0200 +++ b/Objects/exceptions.c Mon Apr 20 15:54:06 2015 -0400 @@ -473,6 +473,13 @@ /* + * StopAsyncIteration extends Exception + */ +SimpleExtendsException(PyExc_Exception, StopAsyncIteration, + "Signal the end from iterator.__anext__()."); + + +/* * StopIteration extends Exception */ @@ -2468,6 +2475,7 @@ PRE_INIT(BaseException) PRE_INIT(Exception) PRE_INIT(TypeError) + PRE_INIT(StopAsyncIteration) PRE_INIT(StopIteration) PRE_INIT(GeneratorExit) PRE_INIT(SystemExit) @@ -2538,6 +2546,7 @@ POST_INIT(BaseException) POST_INIT(Exception) POST_INIT(TypeError) + POST_INIT(StopAsyncIteration) POST_INIT(StopIteration) POST_INIT(GeneratorExit) POST_INIT(SystemExit) diff -r ccac513ee610 Objects/frameobject.c --- a/Objects/frameobject.c Mon Apr 20 21:05:23 2015 +0200 +++ b/Objects/frameobject.c Mon Apr 20 15:54:06 2015 -0400 @@ -195,6 +195,7 @@ case SETUP_LOOP: case SETUP_EXCEPT: case SETUP_FINALLY: + case SETUP_ASYNC_WITH: case SETUP_WITH: blockstack[blockstack_top++] = addr; in_finally[blockstack_top-1] = 0; @@ -203,7 +204,8 @@ case POP_BLOCK: assert(blockstack_top > 0); setup_op = code[blockstack[blockstack_top-1]]; - if (setup_op == SETUP_FINALLY || setup_op == SETUP_WITH) { + if (setup_op == SETUP_FINALLY || setup_op == SETUP_WITH + || setup_op == SETUP_ASYNC_WITH) { in_finally[blockstack_top-1] = 1; } else { @@ -218,7 +220,8 @@ * be seeing such an END_FINALLY.) */ if (blockstack_top > 0) { setup_op = code[blockstack[blockstack_top-1]]; - if (setup_op == SETUP_FINALLY || setup_op == SETUP_WITH) { + if (setup_op == SETUP_FINALLY || setup_op == SETUP_WITH + || setup_op == SETUP_ASYNC_WITH) { blockstack_top--; } } @@ -280,6 +283,7 @@ case SETUP_LOOP: case SETUP_EXCEPT: case SETUP_FINALLY: + case SETUP_ASYNC_WITH: case SETUP_WITH: delta_iblock++; break; diff -r ccac513ee610 Objects/genobject.c --- a/Objects/genobject.c Mon Apr 20 21:05:23 2015 +0200 +++ b/Objects/genobject.c Mon Apr 20 15:54:06 2015 -0400 @@ -130,6 +130,28 @@ } Py_CLEAR(result); } + else if (!result) { + if (PyErr_ExceptionMatches(PyExc_StopIteration) + /* Check if this is a coroutine (async def) conditionally turn a leaking + StopIteration into RuntimeError (with its cause set appropriately). */ + && (((PyCodeObject *)gen->gi_code)->co_flags & CO_ASYNC)) { + + PyObject *exc, *val, *val2, *tb; + PyErr_Fetch(&exc, &val, &tb); + PyErr_NormalizeException(&exc, &val, &tb); + if (tb != NULL) { + PyException_SetTraceback(val, tb); + } + Py_DECREF(exc); + Py_XDECREF(tb); + PyErr_SetString(PyExc_RuntimeError, + "generator raised StopIteration"); + PyErr_Fetch(&exc, &val2, &tb); + PyErr_NormalizeException(&exc, &val2, &tb); + PyException_SetCause(val2, val); + PyErr_Restore(exc, val2, tb); + } + } if (!result || f->f_stacktop == NULL) { /* generator can't be rerun, so release the frame */ @@ -165,6 +187,7 @@ PyDoc_STRVAR(close_doc, "close() -> raise GeneratorExit inside generator."); + /* * This helper function is used by gen_close and gen_throw to * close a subiterator being delegated to by yield-from. @@ -417,8 +440,13 @@ static PyObject * gen_repr(PyGenObject *gen) { - return PyUnicode_FromFormat("", - gen->gi_qualname, gen); + if (PyGen_CheckAsyncExact(gen)) { + return PyUnicode_FromFormat("", + gen->gi_qualname, gen); + } else { + return PyUnicode_FromFormat("", + gen->gi_qualname, gen); + } } static PyObject * @@ -600,3 +628,71 @@ /* No blocks except loops, it's safe to skip finalization. */ return 0; } + + +/* + * This helper function returns an iterator for 'o' if + * it's an 'async def' function, or if 'o' has an '__await__' + * method that returns an iterator. + * + * Raises a RuntimeError if it's not possible to return + * an iterator and returns NULL. + */ +PyObject * +_PyGen_GetAsyncIter(PyObject *o) +{ + _Py_IDENTIFIER(__await__); + + PyObject *await_meth = NULL; + PyObject *await_obj = NULL; + PyObject *oiter = NULL; + + if (PyGen_CheckAsyncExact(o)) { + // Fast path. It's a central function for 'await'. + return o->ob_type->tp_iter(o); + } + + oiter = PyObject_GetIter(o); + if (oiter == NULL) { + if (PyErr_Occurred()) + PyErr_Clear(); + } else { + if (PyGen_CheckAsyncExact(oiter)) { + // It's an async def method, or a function patched + // with 'types.async_def()'. + return oiter; + } + + Py_CLEAR(oiter); + } + + await_meth = _PyObject_GetAttrId(o, &PyId___await__); + if (await_meth == NULL) { + goto error; + } + + await_obj = PyObject_CallFunction(await_meth, NULL); + Py_DECREF(await_meth); + + if (await_obj == NULL) { + goto error; + } + + if (!PyIter_Check(await_obj)) { + PyErr_Format(PyExc_RuntimeError, + "__await__ returned non-iterator '%.100R'", + await_obj); + + Py_DECREF(await_obj); + return NULL; + } + + return await_obj; + +error: + PyErr_Format(PyExc_RuntimeError, + "object %.200R can't be used in 'await' expression", + o); + + return NULL; +} diff -r ccac513ee610 Parser/Python.asdl --- a/Parser/Python.asdl Mon Apr 20 21:05:23 2015 +0200 +++ b/Parser/Python.asdl Mon Apr 20 15:54:06 2015 -0400 @@ -10,7 +10,10 @@ | Suite(stmt* body) stmt = FunctionDef(identifier name, arguments args, - stmt* body, expr* decorator_list, expr? returns) + stmt* body, expr* decorator_list, expr? returns) + | AsyncFunctionDef(identifier name, arguments args, + stmt* body, expr* decorator_list, expr? returns) + | ClassDef(identifier name, expr* bases, keyword* keywords, @@ -26,9 +29,11 @@ -- use 'orelse' because else is a keyword in target languages | For(expr target, expr iter, stmt* body, stmt* orelse) + | AsyncFor(expr target, expr iter, stmt* body, stmt* orelse) | While(expr test, stmt* body, stmt* orelse) | If(expr test, stmt* body, stmt* orelse) | With(withitem* items, stmt* body) + | AsyncWith(withitem* items, stmt* body) | Raise(expr? exc, expr? cause) | Try(stmt* body, excepthandler* handlers, stmt* orelse, stmt* finalbody) @@ -59,6 +64,7 @@ | DictComp(expr key, expr value, comprehension* generators) | GeneratorExp(expr elt, comprehension* generators) -- the grammar constrains where yield expressions can occur + | Await(expr value) | Yield(expr? value) | YieldFrom(expr value) -- need sequences for compare to distinguish between diff -r ccac513ee610 Parser/parsetok.c --- a/Parser/parsetok.c Mon Apr 20 21:05:23 2015 +0200 +++ b/Parser/parsetok.c Mon Apr 20 15:54:06 2015 -0400 @@ -225,6 +225,7 @@ } else started = 1; + len = b - a; /* XXX this may compute NULL - NULL */ str = (char *) PyObject_MALLOC(len + 1); if (str == NULL) { diff -r ccac513ee610 Parser/tokenizer.c --- a/Parser/tokenizer.c Mon Apr 20 21:05:23 2015 +0200 +++ b/Parser/tokenizer.c Mon Apr 20 15:54:06 2015 -0400 @@ -103,6 +103,8 @@ "ELLIPSIS", /* This table must match the #defines in token.h! */ "OP", + "AWAIT", + "ASYNC", "", "" }; @@ -124,6 +126,11 @@ tok->tabsize = TABSIZE; tok->indent = 0; tok->indstack[0] = 0; + + tok->def = 0; + tok->defstack[0] = 0; + tok->deftypestack[0] = 0; + tok->atbol = 1; tok->pendin = 0; tok->prompt = tok->nextprompt = NULL; @@ -1333,6 +1340,11 @@ int c; int blankline, nonascii; + int tok_len; + struct tok_state ahead_tok; + char *ahead_tok_start = NULL, *ahead_top_end = NULL; + int ahead_tok_kind; + *p_start = *p_end = NULL; nextline: tok->start = NULL; @@ -1420,6 +1432,11 @@ if (tok->pendin != 0) { if (tok->pendin < 0) { tok->pendin++; + + while (tok->def && tok->defstack[tok->def] >= tok->indent) { + tok->def--; + } + return DEDENT; } else { @@ -1482,6 +1499,56 @@ } *p_start = tok->start; *p_end = tok->cur; + + tok_len = tok->cur - tok->start; + if (tok_len == 3 && memcmp(tok->start, "def", 3) == 0) { + + if (tok->def + 1 >= MAXINDENT) { + tok->done = E_TOODEEP; + tok->cur = tok->inp; + return ERRORTOKEN; + } + + if (tok->def && tok->deftypestack[tok->def] == 3) { + tok->deftypestack[tok->def] = 2; + } else { + tok->def++; + tok->defstack[tok->def] = tok->indent; + tok->deftypestack[tok->def] = 1; + } + } + else if (tok_len == 5) { + if (memcmp(tok->start, "async", 5) == 0) { + memcpy(&ahead_tok, tok, sizeof(struct tok_state)); + + ahead_tok_kind = tok_get(&ahead_tok, &ahead_tok_start, + &ahead_top_end); + + if (ahead_tok_kind == NAME && + ahead_tok.cur - ahead_tok.start == 3 && + memcmp(ahead_tok.start, "def", 3) == 0) { + + tok->def++; + tok->defstack[tok->def] = tok->indent; + tok->deftypestack[tok->def] = 3; + + return ASYNC; + } + else if (tok->def && tok->deftypestack[tok->def] == 2 + && tok->defstack[tok->def] < tok->indent) { + + return ASYNC; + } + + } + else if (memcmp(tok->start, "await", 5) == 0 + && tok->def && tok->deftypestack[tok->def] == 2 + && tok->defstack[tok->def] < tok->indent) { + + return AWAIT; + } + } + return NAME; } diff -r ccac513ee610 Parser/tokenizer.h --- a/Parser/tokenizer.h Mon Apr 20 21:05:23 2015 +0200 +++ b/Parser/tokenizer.h Mon Apr 20 15:54:06 2015 -0400 @@ -65,6 +65,10 @@ const char* enc; /* Encoding for the current str. */ const char* str; const char* input; /* Tokenizer's newline translated copy of the string. */ + + int defstack[MAXINDENT]; // stack if funcs & indents where they were defined + int deftypestack[MAXINDENT]; // stack of func types (0 not func; 1: reg; 2: async) + int def; }; extern struct tok_state *PyTokenizer_FromString(const char *, int); diff -r ccac513ee610 Python/Python-ast.c --- a/Python/Python-ast.c Mon Apr 20 21:05:23 2015 +0200 +++ b/Python/Python-ast.c Mon Apr 20 15:54:06 2015 -0400 @@ -45,6 +45,14 @@ "decorator_list", "returns", }; +static PyTypeObject *AsyncFunctionDef_type; +static char *AsyncFunctionDef_fields[]={ + "name", + "args", + "body", + "decorator_list", + "returns", +}; static PyTypeObject *ClassDef_type; _Py_IDENTIFIER(bases); _Py_IDENTIFIER(keywords); @@ -91,6 +99,13 @@ "body", "orelse", }; +static PyTypeObject *AsyncFor_type; +static char *AsyncFor_fields[]={ + "target", + "iter", + "body", + "orelse", +}; static PyTypeObject *While_type; _Py_IDENTIFIER(test); static char *While_fields[]={ @@ -110,6 +125,11 @@ "items", "body", }; +static PyTypeObject *AsyncWith_type; +static char *AsyncWith_fields[]={ + "items", + "body", +}; static PyTypeObject *Raise_type; _Py_IDENTIFIER(exc); _Py_IDENTIFIER(cause); @@ -232,6 +252,10 @@ "elt", "generators", }; +static PyTypeObject *Await_type; +static char *Await_fields[]={ + "value", +}; static PyTypeObject *Yield_type; static char *Yield_fields[]={ "value", @@ -812,6 +836,9 @@ FunctionDef_type = make_type("FunctionDef", stmt_type, FunctionDef_fields, 5); if (!FunctionDef_type) return 0; + AsyncFunctionDef_type = make_type("AsyncFunctionDef", stmt_type, + AsyncFunctionDef_fields, 5); + if (!AsyncFunctionDef_type) return 0; ClassDef_type = make_type("ClassDef", stmt_type, ClassDef_fields, 7); if (!ClassDef_type) return 0; Return_type = make_type("Return", stmt_type, Return_fields, 1); @@ -824,12 +851,16 @@ if (!AugAssign_type) return 0; For_type = make_type("For", stmt_type, For_fields, 4); if (!For_type) return 0; + AsyncFor_type = make_type("AsyncFor", stmt_type, AsyncFor_fields, 4); + if (!AsyncFor_type) return 0; While_type = make_type("While", stmt_type, While_fields, 3); if (!While_type) return 0; If_type = make_type("If", stmt_type, If_fields, 3); if (!If_type) return 0; With_type = make_type("With", stmt_type, With_fields, 2); if (!With_type) return 0; + AsyncWith_type = make_type("AsyncWith", stmt_type, AsyncWith_fields, 2); + if (!AsyncWith_type) return 0; Raise_type = make_type("Raise", stmt_type, Raise_fields, 2); if (!Raise_type) return 0; Try_type = make_type("Try", stmt_type, Try_fields, 4); @@ -878,6 +909,8 @@ GeneratorExp_type = make_type("GeneratorExp", expr_type, GeneratorExp_fields, 2); if (!GeneratorExp_type) return 0; + Await_type = make_type("Await", expr_type, Await_fields, 1); + if (!Await_type) return 0; Yield_type = make_type("Yield", expr_type, Yield_fields, 1); if (!Yield_type) return 0; YieldFrom_type = make_type("YieldFrom", expr_type, YieldFrom_fields, 1); @@ -1207,6 +1240,36 @@ } stmt_ty +AsyncFunctionDef(identifier name, arguments_ty args, asdl_seq * body, asdl_seq + * decorator_list, expr_ty returns, int lineno, int col_offset, + PyArena *arena) +{ + stmt_ty p; + if (!name) { + PyErr_SetString(PyExc_ValueError, + "field name is required for AsyncFunctionDef"); + return NULL; + } + if (!args) { + PyErr_SetString(PyExc_ValueError, + "field args is required for AsyncFunctionDef"); + return NULL; + } + p = (stmt_ty)PyArena_Malloc(arena, sizeof(*p)); + if (!p) + return NULL; + p->kind = AsyncFunctionDef_kind; + p->v.AsyncFunctionDef.name = name; + p->v.AsyncFunctionDef.args = args; + p->v.AsyncFunctionDef.body = body; + p->v.AsyncFunctionDef.decorator_list = decorator_list; + p->v.AsyncFunctionDef.returns = returns; + p->lineno = lineno; + p->col_offset = col_offset; + return p; +} + +stmt_ty ClassDef(identifier name, asdl_seq * bases, asdl_seq * keywords, expr_ty starargs, expr_ty kwargs, asdl_seq * body, asdl_seq * decorator_list, int lineno, int col_offset, PyArena *arena) @@ -1343,6 +1406,34 @@ } stmt_ty +AsyncFor(expr_ty target, expr_ty iter, asdl_seq * body, asdl_seq * orelse, int + lineno, int col_offset, PyArena *arena) +{ + stmt_ty p; + if (!target) { + PyErr_SetString(PyExc_ValueError, + "field target is required for AsyncFor"); + return NULL; + } + if (!iter) { + PyErr_SetString(PyExc_ValueError, + "field iter is required for AsyncFor"); + return NULL; + } + p = (stmt_ty)PyArena_Malloc(arena, sizeof(*p)); + if (!p) + return NULL; + p->kind = AsyncFor_kind; + p->v.AsyncFor.target = target; + p->v.AsyncFor.iter = iter; + p->v.AsyncFor.body = body; + p->v.AsyncFor.orelse = orelse; + p->lineno = lineno; + p->col_offset = col_offset; + return p; +} + +stmt_ty While(expr_ty test, asdl_seq * body, asdl_seq * orelse, int lineno, int col_offset, PyArena *arena) { @@ -1403,6 +1494,22 @@ } stmt_ty +AsyncWith(asdl_seq * items, asdl_seq * body, int lineno, int col_offset, + PyArena *arena) +{ + stmt_ty p; + p = (stmt_ty)PyArena_Malloc(arena, sizeof(*p)); + if (!p) + return NULL; + p->kind = AsyncWith_kind; + p->v.AsyncWith.items = items; + p->v.AsyncWith.body = body; + p->lineno = lineno; + p->col_offset = col_offset; + return p; +} + +stmt_ty Raise(expr_ty exc, expr_ty cause, int lineno, int col_offset, PyArena *arena) { stmt_ty p; @@ -1830,6 +1937,25 @@ } expr_ty +Await(expr_ty value, int lineno, int col_offset, PyArena *arena) +{ + expr_ty p; + if (!value) { + PyErr_SetString(PyExc_ValueError, + "field value is required for Await"); + return NULL; + } + p = (expr_ty)PyArena_Malloc(arena, sizeof(*p)); + if (!p) + return NULL; + p->kind = Await_kind; + p->v.Await.value = value; + p->lineno = lineno; + p->col_offset = col_offset; + return p; +} + +expr_ty Yield(expr_ty value, int lineno, int col_offset, PyArena *arena) { expr_ty p; @@ -2424,6 +2550,36 @@ goto failed; Py_DECREF(value); break; + case AsyncFunctionDef_kind: + result = PyType_GenericNew(AsyncFunctionDef_type, NULL, NULL); + if (!result) goto failed; + value = ast2obj_identifier(o->v.AsyncFunctionDef.name); + if (!value) goto failed; + if (_PyObject_SetAttrId(result, &PyId_name, value) == -1) + goto failed; + Py_DECREF(value); + value = ast2obj_arguments(o->v.AsyncFunctionDef.args); + if (!value) goto failed; + if (_PyObject_SetAttrId(result, &PyId_args, value) == -1) + goto failed; + Py_DECREF(value); + value = ast2obj_list(o->v.AsyncFunctionDef.body, ast2obj_stmt); + if (!value) goto failed; + if (_PyObject_SetAttrId(result, &PyId_body, value) == -1) + goto failed; + Py_DECREF(value); + value = ast2obj_list(o->v.AsyncFunctionDef.decorator_list, + ast2obj_expr); + if (!value) goto failed; + if (_PyObject_SetAttrId(result, &PyId_decorator_list, value) == -1) + goto failed; + Py_DECREF(value); + value = ast2obj_expr(o->v.AsyncFunctionDef.returns); + if (!value) goto failed; + if (_PyObject_SetAttrId(result, &PyId_returns, value) == -1) + goto failed; + Py_DECREF(value); + break; case ClassDef_kind: result = PyType_GenericNew(ClassDef_type, NULL, NULL); if (!result) goto failed; @@ -2538,6 +2694,30 @@ goto failed; Py_DECREF(value); break; + case AsyncFor_kind: + result = PyType_GenericNew(AsyncFor_type, NULL, NULL); + if (!result) goto failed; + value = ast2obj_expr(o->v.AsyncFor.target); + if (!value) goto failed; + if (_PyObject_SetAttrId(result, &PyId_target, value) == -1) + goto failed; + Py_DECREF(value); + value = ast2obj_expr(o->v.AsyncFor.iter); + if (!value) goto failed; + if (_PyObject_SetAttrId(result, &PyId_iter, value) == -1) + goto failed; + Py_DECREF(value); + value = ast2obj_list(o->v.AsyncFor.body, ast2obj_stmt); + if (!value) goto failed; + if (_PyObject_SetAttrId(result, &PyId_body, value) == -1) + goto failed; + Py_DECREF(value); + value = ast2obj_list(o->v.AsyncFor.orelse, ast2obj_stmt); + if (!value) goto failed; + if (_PyObject_SetAttrId(result, &PyId_orelse, value) == -1) + goto failed; + Py_DECREF(value); + break; case While_kind: result = PyType_GenericNew(While_type, NULL, NULL); if (!result) goto failed; @@ -2590,6 +2770,20 @@ goto failed; Py_DECREF(value); break; + case AsyncWith_kind: + result = PyType_GenericNew(AsyncWith_type, NULL, NULL); + if (!result) goto failed; + value = ast2obj_list(o->v.AsyncWith.items, ast2obj_withitem); + if (!value) goto failed; + if (_PyObject_SetAttrId(result, &PyId_items, value) == -1) + goto failed; + Py_DECREF(value); + value = ast2obj_list(o->v.AsyncWith.body, ast2obj_stmt); + if (!value) goto failed; + if (_PyObject_SetAttrId(result, &PyId_body, value) == -1) + goto failed; + Py_DECREF(value); + break; case Raise_kind: result = PyType_GenericNew(Raise_type, NULL, NULL); if (!result) goto failed; @@ -2903,6 +3097,15 @@ goto failed; Py_DECREF(value); break; + case Await_kind: + result = PyType_GenericNew(Await_type, NULL, NULL); + if (!result) goto failed; + value = ast2obj_expr(o->v.Await.value); + if (!value) goto failed; + if (_PyObject_SetAttrId(result, &PyId_value, value) == -1) + goto failed; + Py_DECREF(value); + break; case Yield_kind: result = PyType_GenericNew(Yield_type, NULL, NULL); if (!result) goto failed; @@ -3867,6 +4070,102 @@ if (*out == NULL) goto failed; return 0; } + isinstance = PyObject_IsInstance(obj, (PyObject*)AsyncFunctionDef_type); + if (isinstance == -1) { + return 1; + } + if (isinstance) { + identifier name; + arguments_ty args; + asdl_seq* body; + asdl_seq* decorator_list; + expr_ty returns; + + if (_PyObject_HasAttrId(obj, &PyId_name)) { + int res; + tmp = _PyObject_GetAttrId(obj, &PyId_name); + if (tmp == NULL) goto failed; + res = obj2ast_identifier(tmp, &name, arena); + if (res != 0) goto failed; + Py_CLEAR(tmp); + } else { + PyErr_SetString(PyExc_TypeError, "required field \"name\" missing from AsyncFunctionDef"); + return 1; + } + if (_PyObject_HasAttrId(obj, &PyId_args)) { + int res; + tmp = _PyObject_GetAttrId(obj, &PyId_args); + if (tmp == NULL) goto failed; + res = obj2ast_arguments(tmp, &args, arena); + if (res != 0) goto failed; + Py_CLEAR(tmp); + } else { + PyErr_SetString(PyExc_TypeError, "required field \"args\" missing from AsyncFunctionDef"); + return 1; + } + if (_PyObject_HasAttrId(obj, &PyId_body)) { + int res; + Py_ssize_t len; + Py_ssize_t i; + tmp = _PyObject_GetAttrId(obj, &PyId_body); + if (tmp == NULL) goto failed; + if (!PyList_Check(tmp)) { + PyErr_Format(PyExc_TypeError, "AsyncFunctionDef field \"body\" must be a list, not a %.200s", tmp->ob_type->tp_name); + goto failed; + } + len = PyList_GET_SIZE(tmp); + body = _Py_asdl_seq_new(len, arena); + if (body == NULL) goto failed; + for (i = 0; i < len; i++) { + stmt_ty value; + res = obj2ast_stmt(PyList_GET_ITEM(tmp, i), &value, arena); + if (res != 0) goto failed; + asdl_seq_SET(body, i, value); + } + Py_CLEAR(tmp); + } else { + PyErr_SetString(PyExc_TypeError, "required field \"body\" missing from AsyncFunctionDef"); + return 1; + } + if (_PyObject_HasAttrId(obj, &PyId_decorator_list)) { + int res; + Py_ssize_t len; + Py_ssize_t i; + tmp = _PyObject_GetAttrId(obj, &PyId_decorator_list); + if (tmp == NULL) goto failed; + if (!PyList_Check(tmp)) { + PyErr_Format(PyExc_TypeError, "AsyncFunctionDef field \"decorator_list\" must be a list, not a %.200s", tmp->ob_type->tp_name); + goto failed; + } + len = PyList_GET_SIZE(tmp); + decorator_list = _Py_asdl_seq_new(len, arena); + if (decorator_list == NULL) goto failed; + for (i = 0; i < len; i++) { + expr_ty value; + res = obj2ast_expr(PyList_GET_ITEM(tmp, i), &value, arena); + if (res != 0) goto failed; + asdl_seq_SET(decorator_list, i, value); + } + Py_CLEAR(tmp); + } else { + PyErr_SetString(PyExc_TypeError, "required field \"decorator_list\" missing from AsyncFunctionDef"); + return 1; + } + if (exists_not_none(obj, &PyId_returns)) { + int res; + tmp = _PyObject_GetAttrId(obj, &PyId_returns); + if (tmp == NULL) goto failed; + res = obj2ast_expr(tmp, &returns, arena); + if (res != 0) goto failed; + Py_CLEAR(tmp); + } else { + returns = NULL; + } + *out = AsyncFunctionDef(name, args, body, decorator_list, returns, + lineno, col_offset, arena); + if (*out == NULL) goto failed; + return 0; + } isinstance = PyObject_IsInstance(obj, (PyObject*)ClassDef_type); if (isinstance == -1) { return 1; @@ -4245,6 +4544,90 @@ if (*out == NULL) goto failed; return 0; } + isinstance = PyObject_IsInstance(obj, (PyObject*)AsyncFor_type); + if (isinstance == -1) { + return 1; + } + if (isinstance) { + expr_ty target; + expr_ty iter; + asdl_seq* body; + asdl_seq* orelse; + + if (_PyObject_HasAttrId(obj, &PyId_target)) { + int res; + tmp = _PyObject_GetAttrId(obj, &PyId_target); + if (tmp == NULL) goto failed; + res = obj2ast_expr(tmp, &target, arena); + if (res != 0) goto failed; + Py_CLEAR(tmp); + } else { + PyErr_SetString(PyExc_TypeError, "required field \"target\" missing from AsyncFor"); + return 1; + } + if (_PyObject_HasAttrId(obj, &PyId_iter)) { + int res; + tmp = _PyObject_GetAttrId(obj, &PyId_iter); + if (tmp == NULL) goto failed; + res = obj2ast_expr(tmp, &iter, arena); + if (res != 0) goto failed; + Py_CLEAR(tmp); + } else { + PyErr_SetString(PyExc_TypeError, "required field \"iter\" missing from AsyncFor"); + return 1; + } + if (_PyObject_HasAttrId(obj, &PyId_body)) { + int res; + Py_ssize_t len; + Py_ssize_t i; + tmp = _PyObject_GetAttrId(obj, &PyId_body); + if (tmp == NULL) goto failed; + if (!PyList_Check(tmp)) { + PyErr_Format(PyExc_TypeError, "AsyncFor field \"body\" must be a list, not a %.200s", tmp->ob_type->tp_name); + goto failed; + } + len = PyList_GET_SIZE(tmp); + body = _Py_asdl_seq_new(len, arena); + if (body == NULL) goto failed; + for (i = 0; i < len; i++) { + stmt_ty value; + res = obj2ast_stmt(PyList_GET_ITEM(tmp, i), &value, arena); + if (res != 0) goto failed; + asdl_seq_SET(body, i, value); + } + Py_CLEAR(tmp); + } else { + PyErr_SetString(PyExc_TypeError, "required field \"body\" missing from AsyncFor"); + return 1; + } + if (_PyObject_HasAttrId(obj, &PyId_orelse)) { + int res; + Py_ssize_t len; + Py_ssize_t i; + tmp = _PyObject_GetAttrId(obj, &PyId_orelse); + if (tmp == NULL) goto failed; + if (!PyList_Check(tmp)) { + PyErr_Format(PyExc_TypeError, "AsyncFor field \"orelse\" must be a list, not a %.200s", tmp->ob_type->tp_name); + goto failed; + } + len = PyList_GET_SIZE(tmp); + orelse = _Py_asdl_seq_new(len, arena); + if (orelse == NULL) goto failed; + for (i = 0; i < len; i++) { + stmt_ty value; + res = obj2ast_stmt(PyList_GET_ITEM(tmp, i), &value, arena); + if (res != 0) goto failed; + asdl_seq_SET(orelse, i, value); + } + Py_CLEAR(tmp); + } else { + PyErr_SetString(PyExc_TypeError, "required field \"orelse\" missing from AsyncFor"); + return 1; + } + *out = AsyncFor(target, iter, body, orelse, lineno, col_offset, arena); + if (*out == NULL) goto failed; + return 0; + } isinstance = PyObject_IsInstance(obj, (PyObject*)While_type); if (isinstance == -1) { return 1; @@ -4449,6 +4832,66 @@ if (*out == NULL) goto failed; return 0; } + isinstance = PyObject_IsInstance(obj, (PyObject*)AsyncWith_type); + if (isinstance == -1) { + return 1; + } + if (isinstance) { + asdl_seq* items; + asdl_seq* body; + + if (_PyObject_HasAttrId(obj, &PyId_items)) { + int res; + Py_ssize_t len; + Py_ssize_t i; + tmp = _PyObject_GetAttrId(obj, &PyId_items); + if (tmp == NULL) goto failed; + if (!PyList_Check(tmp)) { + PyErr_Format(PyExc_TypeError, "AsyncWith field \"items\" must be a list, not a %.200s", tmp->ob_type->tp_name); + goto failed; + } + len = PyList_GET_SIZE(tmp); + items = _Py_asdl_seq_new(len, arena); + if (items == NULL) goto failed; + for (i = 0; i < len; i++) { + withitem_ty value; + res = obj2ast_withitem(PyList_GET_ITEM(tmp, i), &value, arena); + if (res != 0) goto failed; + asdl_seq_SET(items, i, value); + } + Py_CLEAR(tmp); + } else { + PyErr_SetString(PyExc_TypeError, "required field \"items\" missing from AsyncWith"); + return 1; + } + if (_PyObject_HasAttrId(obj, &PyId_body)) { + int res; + Py_ssize_t len; + Py_ssize_t i; + tmp = _PyObject_GetAttrId(obj, &PyId_body); + if (tmp == NULL) goto failed; + if (!PyList_Check(tmp)) { + PyErr_Format(PyExc_TypeError, "AsyncWith field \"body\" must be a list, not a %.200s", tmp->ob_type->tp_name); + goto failed; + } + len = PyList_GET_SIZE(tmp); + body = _Py_asdl_seq_new(len, arena); + if (body == NULL) goto failed; + for (i = 0; i < len; i++) { + stmt_ty value; + res = obj2ast_stmt(PyList_GET_ITEM(tmp, i), &value, arena); + if (res != 0) goto failed; + asdl_seq_SET(body, i, value); + } + Py_CLEAR(tmp); + } else { + PyErr_SetString(PyExc_TypeError, "required field \"body\" missing from AsyncWith"); + return 1; + } + *out = AsyncWith(items, body, lineno, col_offset, arena); + if (*out == NULL) goto failed; + return 0; + } isinstance = PyObject_IsInstance(obj, (PyObject*)Raise_type); if (isinstance == -1) { return 1; @@ -5383,6 +5826,28 @@ if (*out == NULL) goto failed; return 0; } + isinstance = PyObject_IsInstance(obj, (PyObject*)Await_type); + if (isinstance == -1) { + return 1; + } + if (isinstance) { + expr_ty value; + + if (_PyObject_HasAttrId(obj, &PyId_value)) { + int res; + tmp = _PyObject_GetAttrId(obj, &PyId_value); + if (tmp == NULL) goto failed; + res = obj2ast_expr(tmp, &value, arena); + if (res != 0) goto failed; + Py_CLEAR(tmp); + } else { + PyErr_SetString(PyExc_TypeError, "required field \"value\" missing from Await"); + return 1; + } + *out = Await(value, lineno, col_offset, arena); + if (*out == NULL) goto failed; + return 0; + } isinstance = PyObject_IsInstance(obj, (PyObject*)Yield_type); if (isinstance == -1) { return 1; @@ -6863,6 +7328,8 @@ if (PyDict_SetItemString(d, "stmt", (PyObject*)stmt_type) < 0) return NULL; if (PyDict_SetItemString(d, "FunctionDef", (PyObject*)FunctionDef_type) < 0) return NULL; + if (PyDict_SetItemString(d, "AsyncFunctionDef", + (PyObject*)AsyncFunctionDef_type) < 0) return NULL; if (PyDict_SetItemString(d, "ClassDef", (PyObject*)ClassDef_type) < 0) return NULL; if (PyDict_SetItemString(d, "Return", (PyObject*)Return_type) < 0) return @@ -6874,10 +7341,14 @@ if (PyDict_SetItemString(d, "AugAssign", (PyObject*)AugAssign_type) < 0) return NULL; if (PyDict_SetItemString(d, "For", (PyObject*)For_type) < 0) return NULL; + if (PyDict_SetItemString(d, "AsyncFor", (PyObject*)AsyncFor_type) < 0) + return NULL; if (PyDict_SetItemString(d, "While", (PyObject*)While_type) < 0) return NULL; if (PyDict_SetItemString(d, "If", (PyObject*)If_type) < 0) return NULL; if (PyDict_SetItemString(d, "With", (PyObject*)With_type) < 0) return NULL; + if (PyDict_SetItemString(d, "AsyncWith", (PyObject*)AsyncWith_type) < 0) + return NULL; if (PyDict_SetItemString(d, "Raise", (PyObject*)Raise_type) < 0) return NULL; if (PyDict_SetItemString(d, "Try", (PyObject*)Try_type) < 0) return NULL; @@ -6918,6 +7389,8 @@ return NULL; if (PyDict_SetItemString(d, "GeneratorExp", (PyObject*)GeneratorExp_type) < 0) return NULL; + if (PyDict_SetItemString(d, "Await", (PyObject*)Await_type) < 0) return + NULL; if (PyDict_SetItemString(d, "Yield", (PyObject*)Yield_type) < 0) return NULL; if (PyDict_SetItemString(d, "YieldFrom", (PyObject*)YieldFrom_type) < 0) diff -r ccac513ee610 Python/ast.c --- a/Python/ast.c Mon Apr 20 21:05:23 2015 +0200 +++ b/Python/ast.c Mon Apr 20 15:54:06 2015 -0400 @@ -219,6 +219,8 @@ return !exp->v.Yield.value || validate_expr(exp->v.Yield.value, Load); case YieldFrom_kind: return validate_expr(exp->v.YieldFrom.value, Load); + case Await_kind: + return validate_expr(exp->v.YieldFrom.value, Load); case Compare_kind: if (!asdl_seq_LEN(exp->v.Compare.comparators)) { PyErr_SetString(PyExc_ValueError, "Compare with no comparators"); @@ -340,6 +342,11 @@ validate_expr(stmt->v.For.iter, Load) && validate_body(stmt->v.For.body, "For") && validate_stmts(stmt->v.For.orelse); + case AsyncFor_kind: + return validate_expr(stmt->v.AsyncFor.target, Store) && + validate_expr(stmt->v.AsyncFor.iter, Load) && + validate_body(stmt->v.AsyncFor.body, "AsyncFor") && + validate_stmts(stmt->v.AsyncFor.orelse); case While_kind: return validate_expr(stmt->v.While.test, Load) && validate_body(stmt->v.While.body, "While") && @@ -358,6 +365,16 @@ return 0; } return validate_body(stmt->v.With.body, "With"); + case AsyncWith_kind: + if (!validate_nonempty_seq(stmt->v.AsyncWith.items, "items", "AsyncWith")) + return 0; + for (i = 0; i < asdl_seq_LEN(stmt->v.AsyncWith.items); i++) { + withitem_ty item = asdl_seq_GET(stmt->v.AsyncWith.items, i); + if (!validate_expr(item->context_expr, Load) || + (item->optional_vars && !validate_expr(item->optional_vars, Store))) + return 0; + } + return validate_body(stmt->v.AsyncWith.body, "AsyncWith"); case Raise_kind: if (stmt->v.Raise.exc) { return validate_expr(stmt->v.Raise.exc, Load) && @@ -409,6 +426,12 @@ return validate_nonempty_seq(stmt->v.Nonlocal.names, "names", "Nonlocal"); case Expr_kind: return validate_expr(stmt->v.Expr.value, Load); + case AsyncFunctionDef_kind: + return validate_body(stmt->v.AsyncFunctionDef.body, "AsyncFunctionDef") && + validate_arguments(stmt->v.AsyncFunctionDef.args) && + validate_exprs(stmt->v.AsyncFunctionDef.decorator_list, Load, 0) && + (!stmt->v.AsyncFunctionDef.returns || + validate_expr(stmt->v.AsyncFunctionDef.returns, Load)); case Pass_kind: case Break_kind: case Continue_kind: @@ -507,6 +530,9 @@ static expr_ty ast_for_testlist(struct compiling *, const node *); static stmt_ty ast_for_classdef(struct compiling *, const node *, asdl_seq *); +static stmt_ty ast_for_with_stmt(struct compiling *, const node *, int); +static stmt_ty ast_for_for_stmt(struct compiling *, const node *, int); + /* Note different signature for ast_for_call */ static expr_ty ast_for_call(struct compiling *, const node *, expr_ty); @@ -944,6 +970,9 @@ case YieldFrom_kind: expr_name = "yield expression"; break; + case Await_kind: + expr_name = "await expression"; + break; case ListComp_kind: expr_name = "list comprehension"; break; @@ -1483,9 +1512,10 @@ } static stmt_ty -ast_for_funcdef(struct compiling *c, const node *n, asdl_seq *decorator_seq) +_ast_for_funcdef(struct compiling *c, const node *n, asdl_seq *decorator_seq, int is_async) { /* funcdef: 'def' NAME parameters ['->' test] ':' suite */ + identifier name; arguments_ty args; asdl_seq *body; @@ -1512,14 +1542,71 @@ if (!body) return NULL; - return FunctionDef(name, args, body, decorator_seq, returns, LINENO(n), - n->n_col_offset, c->c_arena); + if (is_async) { + return AsyncFunctionDef(name, args, body, decorator_seq, returns, + LINENO(n), + n->n_col_offset, c->c_arena); + } else { + return FunctionDef(name, args, body, decorator_seq, returns, + LINENO(n), + n->n_col_offset, c->c_arena); + } +} + +static stmt_ty +ast_for_async_funcdef(struct compiling *c, const node *n, asdl_seq *decorator_seq) +{ + /* async_funcdef: ASYNC funcdef */ + + REQ(n, async_funcdef); + REQ(CHILD(n, 0), ASYNC); + REQ(CHILD(n, 1), funcdef); + + return _ast_for_funcdef(c, CHILD(n, 1), decorator_seq, + 1 /* is_async */); +} + +static stmt_ty +ast_for_funcdef(struct compiling *c, const node *n, asdl_seq *decorator_seq) +{ + /* funcdef: 'def' NAME parameters ['->' test] ':' suite */ + return _ast_for_funcdef(c, n, decorator_seq, + 0 /* is_async */); +} + + +static stmt_ty +ast_for_async_stmt(struct compiling *c, const node *n) +{ + /* async_stmt: ASYNC (funcdef | with_stmt | for_stmt) */ + + REQ(n, async_stmt); + REQ(CHILD(n, 0), ASYNC); + + switch (TYPE(CHILD(n, 1))) { + case funcdef: + return _ast_for_funcdef(c, CHILD(n, 1), NULL, + 1 /* is_async */); + case with_stmt: + return ast_for_with_stmt(c, CHILD(n, 1), + 1 /* is_async */); + + case for_stmt: + return ast_for_for_stmt(c, CHILD(n, 1), + 1 /* is_async */); + + default: + PyErr_Format(PyExc_SystemError, + "invalid async stament: %s", + STR(CHILD(n, 1))); + return NULL; + } } static stmt_ty ast_for_decorated(struct compiling *c, const node *n) { - /* decorated: decorators (classdef | funcdef) */ + /* decorated: decorators (classdef | funcdef | async_funcdef) */ stmt_ty thing = NULL; asdl_seq *decorator_seq = NULL; @@ -1530,12 +1617,15 @@ return NULL; assert(TYPE(CHILD(n, 1)) == funcdef || + TYPE(CHILD(n, 1)) == async_funcdef || TYPE(CHILD(n, 1)) == classdef); if (TYPE(CHILD(n, 1)) == funcdef) { thing = ast_for_funcdef(c, CHILD(n, 1), decorator_seq); } else if (TYPE(CHILD(n, 1)) == classdef) { thing = ast_for_classdef(c, CHILD(n, 1), decorator_seq); + } else if (TYPE(CHILD(n, 1)) == async_funcdef) { + thing = ast_for_async_funcdef(c, CHILD(n, 1), decorator_seq); } /* we count the decorators in when talking about the class' or * function's line number */ @@ -1893,6 +1983,9 @@ if (TYPE(ch) == yield_expr) return ast_for_expr(c, ch); + if (TYPE(ch) == await_expr) + return ast_for_expr(c, ch); + /* testlist_comp: test ( comp_for | (',' test)* [','] ) */ if ((NCH(ch) > 1) && (TYPE(CHILD(ch, 1)) == comp_for)) return ast_for_genexp(c, ch); @@ -2266,6 +2359,8 @@ term: factor (('*'|'@'|'/'|'%'|'//') factor)* factor: ('+'|'-'|'~') factor | power power: atom trailer* ('**' factor)* + yield_expr: 'yield' [yield_arg] + await_expr: AWAIT test */ asdl_seq *seq; @@ -2395,6 +2490,11 @@ return YieldFrom(exp, LINENO(n), n->n_col_offset, c->c_arena); return Yield(exp, LINENO(n), n->n_col_offset, c->c_arena); } + case await_expr: { + expr_ty exp = NULL; + exp = ast_for_expr(c, CHILD(n, 1)); + return Await(exp, LINENO(n), n->n_col_offset, c->c_arena); + } case factor: if (NCH(n) == 1) { n = CHILD(n, 0); @@ -2642,6 +2742,10 @@ ast_error(c, ch, "assignment to yield expression not possible"); return NULL; } + if (TYPE(ch) == await_expr) { + ast_error(c, ch, "assignment to await expression not possible"); + return NULL; + } e = ast_for_testlist(c, ch); if (!e) return NULL; @@ -2706,7 +2810,7 @@ { /* flow_stmt: break_stmt | continue_stmt | return_stmt | raise_stmt - | yield_stmt + | yield_stmt | await_stmt break_stmt: 'break' continue_stmt: 'continue' return_stmt: 'return' [testlist] @@ -2723,6 +2827,7 @@ return Break(LINENO(n), n->n_col_offset, c->c_arena); case continue_stmt: return Continue(LINENO(n), n->n_col_offset, c->c_arena); + case await_stmt: /* will reduce to await_expr */ case yield_stmt: { /* will reduce to yield_expr */ expr_ty exp = ast_for_expr(c, CHILD(ch, 0)); if (!exp) @@ -3294,7 +3399,7 @@ } static stmt_ty -ast_for_for_stmt(struct compiling *c, const node *n) +ast_for_for_stmt(struct compiling *c, const node *n, int is_async) { asdl_seq *_target, *seq = NULL, *suite_seq; expr_ty expression; @@ -3328,8 +3433,16 @@ if (!suite_seq) return NULL; - return For(target, expression, suite_seq, seq, LINENO(n), n->n_col_offset, - c->c_arena); + if (is_async) { + return AsyncFor(target, expression, suite_seq, seq, + LINENO(n), n->n_col_offset, + c->c_arena); + } + else { + return For(target, expression, suite_seq, seq, + LINENO(n), n->n_col_offset, + c->c_arena); + } } static excepthandler_ty @@ -3476,7 +3589,7 @@ /* with_stmt: 'with' with_item (',' with_item)* ':' suite */ static stmt_ty -ast_for_with_stmt(struct compiling *c, const node *n) +ast_for_with_stmt(struct compiling *c, const node *n, int is_async) { int i, n_items; asdl_seq *items, *body; @@ -3498,7 +3611,13 @@ if (!body) return NULL; - return With(items, body, LINENO(n), n->n_col_offset, c->c_arena); + if (is_async) { + return AsyncWith(items, body, LINENO(n), n->n_col_offset, c->c_arena); + } + else { + return With(items, body, LINENO(n), n->n_col_offset, c->c_arena); + } + } static stmt_ty @@ -3606,7 +3725,7 @@ } else { /* compound_stmt: if_stmt | while_stmt | for_stmt | try_stmt - | funcdef | classdef | decorated + | funcdef | classdef | decorated | async_stmt */ node *ch = CHILD(n, 0); REQ(n, compound_stmt); @@ -3616,17 +3735,19 @@ case while_stmt: return ast_for_while_stmt(c, ch); case for_stmt: - return ast_for_for_stmt(c, ch); + return ast_for_for_stmt(c, ch, 0); case try_stmt: return ast_for_try_stmt(c, ch); case with_stmt: - return ast_for_with_stmt(c, ch); + return ast_for_with_stmt(c, ch, 0); case funcdef: return ast_for_funcdef(c, ch, NULL); case classdef: return ast_for_classdef(c, ch, NULL); case decorated: return ast_for_decorated(c, ch); + case async_stmt: + return ast_for_async_stmt(c, ch); default: PyErr_Format(PyExc_SystemError, "unhandled small_stmt: TYPE=%d NCH=%d\n", diff -r ccac513ee610 Python/ceval.c --- a/Python/ceval.c Mon Apr 20 21:05:23 2015 +0200 +++ b/Python/ceval.c Mon Apr 20 15:54:06 2015 -0400 @@ -153,6 +153,8 @@ "free variable '%.200s' referenced before assignment" \ " in enclosing scope" +static PyObject *generator_wrapper = NULL; + /* Dynamic execution profile */ #ifdef DYNAMIC_EXECUTION_PROFILE #ifdef DXPAIRS @@ -1924,6 +1926,107 @@ goto fast_block_end; } + TARGET(ASYNC_AITER) { + _Py_IDENTIFIER(__aiter__); + + PyObject *iter = NULL; + PyObject *async_aiter = NULL; + PyObject *obj = TOP(); + + PyObject *aiter_meth = special_lookup(obj, &PyId___aiter__); + Py_DECREF(obj); + + if (aiter_meth == NULL) { + SET_TOP(NULL); + + PyErr_SetString( + PyExc_RuntimeError, + "'async for' requires an object with " + "async __aiter__ method"); + + goto error; + } + + iter = PyObject_CallFunction(aiter_meth, NULL); + Py_DECREF(aiter_meth); + + if (iter == NULL) { + SET_TOP(NULL); + goto error; + } + + async_aiter = _PyGen_GetAsyncIter(iter); + Py_DECREF(iter); + + if (async_aiter == NULL) { + SET_TOP(NULL); + PyErr_SetString( + PyExc_RuntimeError, + "'async for' received an invalid object from __aiter__"); + + goto error; + } + + SET_TOP(async_aiter); + DISPATCH(); + } + + TARGET(ASYNC_ANEXT) { + _Py_IDENTIFIER(__anext__); + + PyObject *next_iter = NULL; + PyObject *async_iter = NULL; + PyObject *aiter = TOP(); + PyObject *next_meth = special_lookup(aiter, &PyId___anext__); + + if (next_meth == NULL) { + PyErr_Format( + PyExc_RuntimeError, + "'async for' requires an iterator with " + "async __anext__ method %R", aiter); + + goto error; + } + + next_iter = PyObject_CallFunctionObjArgs(next_meth, NULL); + Py_DECREF(next_meth); + + if (next_iter == NULL) { + goto error; + } + + async_iter = _PyGen_GetAsyncIter(next_iter); + Py_DECREF(next_iter); + + if (async_iter == NULL) { + PyErr_SetString( + PyExc_RuntimeError, + "'async for' received an invalid object from __anext__"); + + goto error; + } + + PUSH(async_iter); + DISPATCH(); + } + + TARGET(GET_ASYNC) { + PyObject *iterable = TOP(); + PyObject *iter = _PyGen_GetAsyncIter(iterable); + + Py_DECREF(iterable); + + SET_TOP(iter); // Even if it's NULL + + if (iter == NULL) { + goto error; + } + + PREDICT(YIELD_FROM); + DISPATCH(); + } + + PREDICTED_WITH_ARG(YIELD_FROM); TARGET(YIELD_FROM) { PyObject *v = POP(); PyObject *reciever = TOP(); @@ -2731,6 +2834,39 @@ DISPATCH(); } + TARGET(BEFORE_ASYNC_WITH) { + _Py_IDENTIFIER(__aexit__); + _Py_IDENTIFIER(__aenter__); + + PyObject *mgr = TOP(); + PyObject *exit = special_lookup(mgr, &PyId___aexit__), + *enter; + PyObject *res; + if (exit == NULL) + goto error; + SET_TOP(exit); + enter = special_lookup(mgr, &PyId___aenter__); + Py_DECREF(mgr); + if (enter == NULL) + goto error; + res = PyObject_CallFunctionObjArgs(enter, NULL); + Py_DECREF(enter); + if (res == NULL) + goto error; + PUSH(res); + DISPATCH(); + } + + TARGET(SETUP_ASYNC_WITH) { + PyObject *res = POP(); + /* Setup the finally block before pushing the result + of __aenter__ on the stack. */ + PyFrame_BlockSetup(f, SETUP_FINALLY, INSTR_OFFSET() + oparg, + STACK_LEVEL()); + PUSH(res); + DISPATCH(); + } + TARGET(SETUP_WITH) { _Py_IDENTIFIER(__exit__); _Py_IDENTIFIER(__enter__); @@ -2757,7 +2893,7 @@ DISPATCH(); } - TARGET(WITH_CLEANUP) { + TARGET(WITH_CLEANUP_ENTER) { /* At the top of the stack are 1-6 values indicating how/why we entered the finally clause: - TOP = None @@ -2785,7 +2921,6 @@ PyObject *exit_func; PyObject *exc = TOP(), *val = Py_None, *tb = Py_None, *res; - int err; if (exc == Py_None) { (void)POP(); exit_func = TOP(); @@ -2835,10 +2970,21 @@ if (res == NULL) goto error; + PUSH(exc); + PUSH(res); + DISPATCH(); + } + + TARGET(WITH_CLEANUP_EXIT) { + PyObject *res = POP(); + PyObject *exc = POP(); + int err; + if (exc != Py_None) err = PyObject_IsTrue(res); else err = 0; + Py_DECREF(res); if (err < 0) @@ -3598,6 +3744,8 @@ } if (co->co_flags & CO_GENERATOR) { + PyObject *gen; + /* Don't need to keep the reference to f_back, it will be set * when the generator is resumed. */ Py_CLEAR(f->f_back); @@ -3606,7 +3754,18 @@ /* Create a new generator that owns the ready to run frame * and return that as the value. */ - return PyGen_NewWithQualName(f, name, qualname); + gen = PyGen_NewWithQualName(f, name, qualname); + if (gen == NULL) + return NULL; + + if (generator_wrapper != NULL && co->co_flags & CO_ASYNC) { + PyObject *wrapped_gen = + PyObject_CallFunction(generator_wrapper, "O", gen); + + Py_DECREF(gen); + gen = wrapped_gen; + } + return gen; } retval = PyEval_EvalFrameEx(f,0); @@ -4052,6 +4211,15 @@ || (tstate->c_profilefunc != NULL)); } +void +PyEval_SetAsyncWrapper(PyObject *wrapper) +{ + Py_CLEAR(generator_wrapper); + + Py_XINCREF(wrapper); + generator_wrapper = wrapper; +} + PyObject * PyEval_GetBuiltins(void) { diff -r ccac513ee610 Python/compile.c --- a/Python/compile.c Mon Apr 20 21:05:23 2015 +0200 +++ b/Python/compile.c Mon Apr 20 15:54:06 2015 -0400 @@ -92,6 +92,7 @@ COMPILER_SCOPE_MODULE, COMPILER_SCOPE_CLASS, COMPILER_SCOPE_FUNCTION, + COMPILER_SCOPE_ASYNC_FUNCTION, COMPILER_SCOPE_LAMBDA, COMPILER_SCOPE_COMPREHENSION, }; @@ -193,6 +194,8 @@ static int expr_constant(struct compiler *, expr_ty); static int compiler_with(struct compiler *, stmt_ty, int); +static int compiler_async_with(struct compiler *, stmt_ty, int); +static int compiler_async_for(struct compiler *, stmt_ty); static int compiler_call_helper(struct compiler *c, Py_ssize_t n, asdl_seq *args, asdl_seq *keywords, @@ -675,7 +678,9 @@ parent = (struct compiler_unit *)PyCapsule_GetPointer(capsule, COMPILER_CAPSULE_NAME_COMPILER_UNIT); assert(parent); - if (u->u_scope_type == COMPILER_SCOPE_FUNCTION || u->u_scope_type == COMPILER_SCOPE_CLASS) { + if (u->u_scope_type == COMPILER_SCOPE_FUNCTION + || u->u_scope_type == COMPILER_SCOPE_ASYNC_FUNCTION + || u->u_scope_type == COMPILER_SCOPE_CLASS) { assert(u->u_name); mangled = _Py_Mangle(parent->u_private, u->u_name); if (!mangled) @@ -689,6 +694,7 @@ if (!force_global) { if (parent->u_scope_type == COMPILER_SCOPE_FUNCTION + || parent->u_scope_type == COMPILER_SCOPE_ASYNC_FUNCTION || parent->u_scope_type == COMPILER_SCOPE_LAMBDA) { dot_locals_str = _PyUnicode_FromId(&dot_locals); if (dot_locals_str == NULL) @@ -927,9 +933,13 @@ return -1; case BREAK_LOOP: return 0; + case SETUP_ASYNC_WITH: + return 6; case SETUP_WITH: return 7; - case WITH_CLEANUP: + case WITH_CLEANUP_ENTER: + return 1; + case WITH_CLEANUP_EXIT: return -1; /* XXX Sometimes more */ case RETURN_VALUE: return -1; @@ -1043,6 +1053,14 @@ return -1; case DELETE_DEREF: return 0; + case GET_ASYNC: + return 0; + case BEFORE_ASYNC_WITH: + return 1; + case ASYNC_AITER: + return 0; + case ASYNC_ANEXT: + return 1; default: return PY_INVALID_STACK_EFFECT; } @@ -1637,19 +1655,43 @@ } static int -compiler_function(struct compiler *c, stmt_ty s) +compiler_function(struct compiler *c, stmt_ty s, int is_async) { PyCodeObject *co; PyObject *qualname, *first_const = Py_None; - arguments_ty args = s->v.FunctionDef.args; - expr_ty returns = s->v.FunctionDef.returns; - asdl_seq* decos = s->v.FunctionDef.decorator_list; + arguments_ty args; + expr_ty returns; + identifier name; + asdl_seq* decos; + asdl_seq *body; stmt_ty st; Py_ssize_t i, n, arglength; int docstring, kw_default_count = 0; int num_annotations; - - assert(s->kind == FunctionDef_kind); + int scope_type; + + + if (is_async) { + assert(s->kind == AsyncFunctionDef_kind); + + args = s->v.AsyncFunctionDef.args; + returns = s->v.AsyncFunctionDef.returns; + decos = s->v.AsyncFunctionDef.decorator_list; + name = s->v.AsyncFunctionDef.name; + body = s->v.AsyncFunctionDef.body; + + scope_type = COMPILER_SCOPE_ASYNC_FUNCTION; + } else { + assert(s->kind == FunctionDef_kind); + + args = s->v.FunctionDef.args; + returns = s->v.FunctionDef.returns; + decos = s->v.FunctionDef.decorator_list; + name = s->v.FunctionDef.name; + body = s->v.FunctionDef.body; + + scope_type = COMPILER_SCOPE_FUNCTION; + } if (!compiler_decorators(c, decos)) return 0; @@ -1667,12 +1709,12 @@ return 0; assert((num_annotations & 0xFFFF) == num_annotations); - if (!compiler_enter_scope(c, s->v.FunctionDef.name, - COMPILER_SCOPE_FUNCTION, (void *)s, + if (!compiler_enter_scope(c, name, + scope_type, (void *)s, s->lineno)) return 0; - st = (stmt_ty)asdl_seq_GET(s->v.FunctionDef.body, 0); + st = (stmt_ty)asdl_seq_GET(body, 0); docstring = compiler_isdocstring(st); if (docstring && c->c_optimize < 2) first_const = st->v.Expr.value->v.Str.s; @@ -1683,10 +1725,10 @@ c->u->u_argcount = asdl_seq_LEN(args->args); c->u->u_kwonlyargcount = asdl_seq_LEN(args->kwonlyargs); - n = asdl_seq_LEN(s->v.FunctionDef.body); + n = asdl_seq_LEN(body); /* if there was a docstring, we need to skip the first statement */ for (i = docstring; i < n; i++) { - st = (stmt_ty)asdl_seq_GET(s->v.FunctionDef.body, i); + st = (stmt_ty)asdl_seq_GET(body, i); VISIT_IN_SCOPE(c, stmt, st); } co = assemble(c, 1); @@ -1706,12 +1748,20 @@ Py_DECREF(qualname); Py_DECREF(co); + if (is_async) { + co->co_flags |= CO_ASYNC; + + // An async function is always a generator, even + // if there is no 'yield' expressions in it. + co->co_flags |= CO_GENERATOR; + } + /* decorators */ for (i = 0; i < asdl_seq_LEN(decos); i++) { ADDOP_I(c, CALL_FUNCTION, 1); } - return compiler_nameop(c, s->v.FunctionDef.name, Store); + return compiler_nameop(c, name, Store); } static int @@ -1986,6 +2036,91 @@ return 1; } + +static int +compiler_async_for(struct compiler *c, stmt_ty s) +{ + static PyObject *stopiter_error = NULL; + basicblock *try, *except, *end, *after_try, *try_cleanup, + *after_loop, *after_loop_else; + + if (stopiter_error == NULL) { + stopiter_error = PyUnicode_InternFromString("StopAsyncIteration"); + if (stopiter_error == NULL) + return 0; + } + + try = compiler_new_block(c); + except = compiler_new_block(c); + end = compiler_new_block(c); + after_try = compiler_new_block(c); + try_cleanup = compiler_new_block(c); + after_loop = compiler_new_block(c); + after_loop_else = compiler_new_block(c); + + if (try == NULL || except == NULL || end == NULL + || after_try == NULL || try_cleanup == NULL) + return 0; + + ADDOP_JREL(c, SETUP_LOOP, after_loop); + if (!compiler_push_fblock(c, LOOP, try)) + return 0; + + VISIT(c, expr, s->v.AsyncFor.iter); + ADDOP(c, ASYNC_AITER); + ADDOP_O(c, LOAD_CONST, Py_None, consts); + ADDOP(c, YIELD_FROM); + + compiler_use_next_block(c, try); + + + ADDOP_JREL(c, SETUP_EXCEPT, except); + if (!compiler_push_fblock(c, EXCEPT, try)) + return 0; + + ADDOP(c, ASYNC_ANEXT); + ADDOP_O(c, LOAD_CONST, Py_None, consts); + ADDOP(c, YIELD_FROM); + VISIT(c, expr, s->v.AsyncFor.target); + ADDOP(c, POP_BLOCK); + compiler_pop_fblock(c, EXCEPT, try); + ADDOP_JREL(c, JUMP_FORWARD, after_try); + + + compiler_use_next_block(c, except); + ADDOP(c, DUP_TOP); + ADDOP_O(c, LOAD_GLOBAL, stopiter_error, names); + ADDOP_I(c, COMPARE_OP, PyCmp_EXC_MATCH); + ADDOP_JABS(c, POP_JUMP_IF_FALSE, try_cleanup); + + ADDOP(c, POP_TOP); + ADDOP(c, POP_TOP); + ADDOP(c, POP_TOP); + ADDOP(c, POP_EXCEPT); + ADDOP_JABS(c, JUMP_ABSOLUTE, after_loop_else); + + + compiler_use_next_block(c, try_cleanup); + ADDOP(c, END_FINALLY); + + compiler_use_next_block(c, after_try); + VISIT_SEQ(c, stmt, s->v.AsyncFor.body); + ADDOP_JABS(c, JUMP_ABSOLUTE, try); + + ADDOP(c, POP_BLOCK); + compiler_pop_fblock(c, LOOP, try); + + compiler_use_next_block(c, after_loop); + ADDOP_JABS(c, JUMP_ABSOLUTE, end); + + compiler_use_next_block(c, after_loop_else); + VISIT_SEQ(c, stmt, s->v.For.orelse); + + compiler_use_next_block(c, end); + + return 1; +} + static int compiler_while(struct compiler *c, stmt_ty s) { @@ -2512,7 +2647,7 @@ switch (s->kind) { case FunctionDef_kind: - return compiler_function(c, s); + return compiler_function(c, s, 0); case ClassDef_kind: return compiler_class(c, s); case Return_kind: @@ -2591,7 +2726,14 @@ return compiler_continue(c); case With_kind: return compiler_with(c, s, 0); + case AsyncFunctionDef_kind: + return compiler_function(c, s, 1); + case AsyncWith_kind: + return compiler_async_with(c, s, 0); + case AsyncFor_kind: + return compiler_async_for(c, s); } + return 1; } @@ -3316,6 +3458,102 @@ } } + +/* + Implements the async with statement. + + The semantics outlined in that PEP are as follows: + + async with EXPR as VAR: + BLOCK + + It is implemented roughly as: + + context = EXPR + exit = context.__aexit__ # not calling it + value = await context.__aenter__() + try: + VAR = value # if VAR present in the syntax + BLOCK + finally: + if an exception was raised: + exc = copy of (exception, instance, traceback) + else: + exc = (None, None, None) + if not (await exit(*exc)): + raise + */ +static int +compiler_async_with(struct compiler *c, stmt_ty s, int pos) +{ + basicblock *block, *finally; + withitem_ty item = asdl_seq_GET(s->v.AsyncWith.items, pos); + + assert(s->kind == AsyncWith_kind); + + block = compiler_new_block(c); + finally = compiler_new_block(c); + if (!block || !finally) + return 0; + + /* Evaluate EXPR */ + VISIT(c, expr, item->context_expr); + + ADDOP(c, BEFORE_ASYNC_WITH); + ADDOP(c, GET_ASYNC); + ADDOP_O(c, LOAD_CONST, Py_None, consts); + ADDOP(c, YIELD_FROM); + + ADDOP_JREL(c, SETUP_ASYNC_WITH, finally); + + /* SETUP_ASYNC_WITH pushes a finally block. */ + compiler_use_next_block(c, block); + if (!compiler_push_fblock(c, FINALLY_TRY, block)) { + return 0; + } + + if (item->optional_vars) { + VISIT(c, expr, item->optional_vars); + } + else { + /* Discard result from context.__aenter__() */ + ADDOP(c, POP_TOP); + } + + pos++; + if (pos == asdl_seq_LEN(s->v.AsyncWith.items)) + /* BLOCK code */ + VISIT_SEQ(c, stmt, s->v.AsyncWith.body) + else if (!compiler_async_with(c, s, pos)) + return 0; + + /* End of try block; start the finally block */ + ADDOP(c, POP_BLOCK); + compiler_pop_fblock(c, FINALLY_TRY, block); + + ADDOP_O(c, LOAD_CONST, Py_None, consts); + compiler_use_next_block(c, finally); + if (!compiler_push_fblock(c, FINALLY_END, finally)) + return 0; + + /* Finally block starts; context.__exit__ is on the stack under + the exception or return information. Just issue our magic + opcode. */ + ADDOP(c, WITH_CLEANUP_ENTER); + + ADDOP(c, GET_ASYNC); + ADDOP_O(c, LOAD_CONST, Py_None, consts); + ADDOP(c, YIELD_FROM); + + ADDOP(c, WITH_CLEANUP_EXIT); + + /* Finally block ends. */ + ADDOP(c, END_FINALLY); + compiler_pop_fblock(c, FINALLY_END, finally); + return 1; +} + + /* Implements the with statement from PEP 343. @@ -3389,7 +3627,8 @@ /* Finally block starts; context.__exit__ is on the stack under the exception or return information. Just issue our magic opcode. */ - ADDOP(c, WITH_CLEANUP); + ADDOP(c, WITH_CLEANUP_ENTER); + ADDOP(c, WITH_CLEANUP_EXIT); /* Finally block ends. */ ADDOP(c, END_FINALLY); @@ -3456,6 +3695,8 @@ case Yield_kind: if (c->u->u_ste->ste_type != FunctionBlock) return compiler_error(c, "'yield' outside function"); + if (c->u->u_scope_type == COMPILER_SCOPE_ASYNC_FUNCTION) + return compiler_error(c, "'yield' inside async function"); if (e->v.Yield.value) { VISIT(c, expr, e->v.Yield.value); } @@ -3467,11 +3708,28 @@ case YieldFrom_kind: if (c->u->u_ste->ste_type != FunctionBlock) return compiler_error(c, "'yield' outside function"); + + if (c->u->u_scope_type == COMPILER_SCOPE_ASYNC_FUNCTION) + return compiler_error(c, "'yield from' inside async function"); + VISIT(c, expr, e->v.YieldFrom.value); ADDOP(c, GET_ITER); ADDOP_O(c, LOAD_CONST, Py_None, consts); ADDOP(c, YIELD_FROM); break; + case Await_kind: + if (c->u->u_ste->ste_type != FunctionBlock) + return compiler_error(c, "'await' outside function"); + + // this check won't be triggered while we have AWAIT token + if (c->u->u_scope_type != COMPILER_SCOPE_ASYNC_FUNCTION) + return compiler_error(c, "'await' outside async function"); + + VISIT(c, expr, e->v.Await.value); + ADDOP(c, GET_ASYNC); + ADDOP_O(c, LOAD_CONST, Py_None, consts); + ADDOP(c, YIELD_FROM); + break; case Compare_kind: return compiler_compare(c, e); case Call_kind: diff -r ccac513ee610 Python/graminit.c --- a/Python/graminit.c Mon Apr 20 21:05:23 2015 +0200 +++ b/Python/graminit.c Mon Apr 20 15:54:06 2015 -0400 @@ -92,394 +92,408 @@ static arc arcs_5_0[1] = { {16, 1}, }; -static arc arcs_5_1[2] = { +static arc arcs_5_1[3] = { {18, 2}, {19, 2}, + {20, 2}, }; static arc arcs_5_2[1] = { {0, 2}, }; static state states_5[3] = { {1, arcs_5_0}, - {2, arcs_5_1}, + {3, arcs_5_1}, {1, arcs_5_2}, }; static arc arcs_6_0[1] = { - {20, 1}, + {21, 1}, }; static arc arcs_6_1[1] = { - {21, 2}, + {19, 2}, }; static arc arcs_6_2[1] = { - {22, 3}, -}; -static arc arcs_6_3[2] = { - {23, 4}, - {25, 5}, -}; -static arc arcs_6_4[1] = { - {24, 6}, -}; -static arc arcs_6_5[1] = { - {26, 7}, -}; -static arc arcs_6_6[1] = { - {25, 5}, -}; -static arc arcs_6_7[1] = { - {0, 7}, -}; -static state states_6[8] = { + {0, 2}, +}; +static state states_6[3] = { {1, arcs_6_0}, {1, arcs_6_1}, {1, arcs_6_2}, - {2, arcs_6_3}, - {1, arcs_6_4}, - {1, arcs_6_5}, - {1, arcs_6_6}, - {1, arcs_6_7}, }; static arc arcs_7_0[1] = { + {22, 1}, +}; +static arc arcs_7_1[1] = { + {23, 2}, +}; +static arc arcs_7_2[1] = { + {24, 3}, +}; +static arc arcs_7_3[2] = { + {25, 4}, + {27, 5}, +}; +static arc arcs_7_4[1] = { + {26, 6}, +}; +static arc arcs_7_5[1] = { + {28, 7}, +}; +static arc arcs_7_6[1] = { + {27, 5}, +}; +static arc arcs_7_7[1] = { + {0, 7}, +}; +static state states_7[8] = { + {1, arcs_7_0}, + {1, arcs_7_1}, + {1, arcs_7_2}, + {2, arcs_7_3}, + {1, arcs_7_4}, + {1, arcs_7_5}, + {1, arcs_7_6}, + {1, arcs_7_7}, +}; +static arc arcs_8_0[1] = { {13, 1}, }; -static arc arcs_7_1[2] = { +static arc arcs_8_1[2] = { + {29, 2}, + {15, 3}, +}; +static arc arcs_8_2[1] = { + {15, 3}, +}; +static arc arcs_8_3[1] = { + {0, 3}, +}; +static state states_8[4] = { + {1, arcs_8_0}, + {2, arcs_8_1}, + {1, arcs_8_2}, + {1, arcs_8_3}, +}; +static arc arcs_9_0[3] = { + {30, 1}, + {33, 2}, + {34, 3}, +}; +static arc arcs_9_1[3] = { + {31, 4}, + {32, 5}, + {0, 1}, +}; +static arc arcs_9_2[3] = { + {30, 6}, + {32, 7}, + {0, 2}, +}; +static arc arcs_9_3[1] = { + {30, 8}, +}; +static arc arcs_9_4[1] = { + {26, 9}, +}; +static arc arcs_9_5[4] = { + {30, 10}, + {33, 11}, + {34, 3}, + {0, 5}, +}; +static arc arcs_9_6[2] = { + {32, 7}, + {0, 6}, +}; +static arc arcs_9_7[2] = { + {30, 12}, + {34, 3}, +}; +static arc arcs_9_8[1] = { + {0, 8}, +}; +static arc arcs_9_9[2] = { + {32, 5}, + {0, 9}, +}; +static arc arcs_9_10[3] = { + {32, 5}, + {31, 4}, + {0, 10}, +}; +static arc arcs_9_11[3] = { + {30, 13}, + {32, 14}, + {0, 11}, +}; +static arc arcs_9_12[3] = { + {32, 7}, + {31, 15}, + {0, 12}, +}; +static arc arcs_9_13[2] = { + {32, 14}, + {0, 13}, +}; +static arc arcs_9_14[2] = { + {30, 16}, + {34, 3}, +}; +static arc arcs_9_15[1] = { + {26, 6}, +}; +static arc arcs_9_16[3] = { + {32, 14}, + {31, 17}, + {0, 16}, +}; +static arc arcs_9_17[1] = { + {26, 13}, +}; +static state states_9[18] = { + {3, arcs_9_0}, + {3, arcs_9_1}, + {3, arcs_9_2}, + {1, arcs_9_3}, + {1, arcs_9_4}, + {4, arcs_9_5}, + {2, arcs_9_6}, + {2, arcs_9_7}, + {1, arcs_9_8}, + {2, arcs_9_9}, + {3, arcs_9_10}, + {3, arcs_9_11}, + {3, arcs_9_12}, + {2, arcs_9_13}, + {2, arcs_9_14}, + {1, arcs_9_15}, + {3, arcs_9_16}, + {1, arcs_9_17}, +}; +static arc arcs_10_0[1] = { + {23, 1}, +}; +static arc arcs_10_1[2] = { {27, 2}, - {15, 3}, -}; -static arc arcs_7_2[1] = { - {15, 3}, -}; -static arc arcs_7_3[1] = { + {0, 1}, +}; +static arc arcs_10_2[1] = { + {26, 3}, +}; +static arc arcs_10_3[1] = { {0, 3}, }; -static state states_7[4] = { - {1, arcs_7_0}, - {2, arcs_7_1}, - {1, arcs_7_2}, - {1, arcs_7_3}, -}; -static arc arcs_8_0[3] = { - {28, 1}, - {31, 2}, - {32, 3}, -}; -static arc arcs_8_1[3] = { - {29, 4}, - {30, 5}, +static state states_10[4] = { + {1, arcs_10_0}, + {2, arcs_10_1}, + {1, arcs_10_2}, + {1, arcs_10_3}, +}; +static arc arcs_11_0[3] = { + {36, 1}, + {33, 2}, + {34, 3}, +}; +static arc arcs_11_1[3] = { + {31, 4}, + {32, 5}, {0, 1}, }; -static arc arcs_8_2[3] = { - {28, 6}, - {30, 7}, +static arc arcs_11_2[3] = { + {36, 6}, + {32, 7}, {0, 2}, }; -static arc arcs_8_3[1] = { - {28, 8}, -}; -static arc arcs_8_4[1] = { - {24, 9}, -}; -static arc arcs_8_5[4] = { - {28, 10}, - {31, 11}, - {32, 3}, +static arc arcs_11_3[1] = { + {36, 8}, +}; +static arc arcs_11_4[1] = { + {26, 9}, +}; +static arc arcs_11_5[4] = { + {36, 10}, + {33, 11}, + {34, 3}, {0, 5}, }; -static arc arcs_8_6[2] = { - {30, 7}, +static arc arcs_11_6[2] = { + {32, 7}, {0, 6}, }; -static arc arcs_8_7[2] = { - {28, 12}, - {32, 3}, -}; -static arc arcs_8_8[1] = { +static arc arcs_11_7[2] = { + {36, 12}, + {34, 3}, +}; +static arc arcs_11_8[1] = { {0, 8}, }; -static arc arcs_8_9[2] = { - {30, 5}, +static arc arcs_11_9[2] = { + {32, 5}, {0, 9}, }; -static arc arcs_8_10[3] = { - {30, 5}, - {29, 4}, +static arc arcs_11_10[3] = { + {32, 5}, + {31, 4}, {0, 10}, }; -static arc arcs_8_11[3] = { - {28, 13}, - {30, 14}, +static arc arcs_11_11[3] = { + {36, 13}, + {32, 14}, {0, 11}, }; -static arc arcs_8_12[3] = { - {30, 7}, - {29, 15}, +static arc arcs_11_12[3] = { + {32, 7}, + {31, 15}, {0, 12}, }; -static arc arcs_8_13[2] = { - {30, 14}, +static arc arcs_11_13[2] = { + {32, 14}, {0, 13}, }; -static arc arcs_8_14[2] = { - {28, 16}, - {32, 3}, -}; -static arc arcs_8_15[1] = { - {24, 6}, -}; -static arc arcs_8_16[3] = { - {30, 14}, - {29, 17}, +static arc arcs_11_14[2] = { + {36, 16}, + {34, 3}, +}; +static arc arcs_11_15[1] = { + {26, 6}, +}; +static arc arcs_11_16[3] = { + {32, 14}, + {31, 17}, {0, 16}, }; -static arc arcs_8_17[1] = { - {24, 13}, -}; -static state states_8[18] = { - {3, arcs_8_0}, - {3, arcs_8_1}, - {3, arcs_8_2}, - {1, arcs_8_3}, - {1, arcs_8_4}, - {4, arcs_8_5}, - {2, arcs_8_6}, - {2, arcs_8_7}, - {1, arcs_8_8}, - {2, arcs_8_9}, - {3, arcs_8_10}, - {3, arcs_8_11}, - {3, arcs_8_12}, - {2, arcs_8_13}, - {2, arcs_8_14}, - {1, arcs_8_15}, - {3, arcs_8_16}, - {1, arcs_8_17}, -}; -static arc arcs_9_0[1] = { - {21, 1}, -}; -static arc arcs_9_1[2] = { - {25, 2}, +static arc arcs_11_17[1] = { + {26, 13}, +}; +static state states_11[18] = { + {3, arcs_11_0}, + {3, arcs_11_1}, + {3, arcs_11_2}, + {1, arcs_11_3}, + {1, arcs_11_4}, + {4, arcs_11_5}, + {2, arcs_11_6}, + {2, arcs_11_7}, + {1, arcs_11_8}, + {2, arcs_11_9}, + {3, arcs_11_10}, + {3, arcs_11_11}, + {3, arcs_11_12}, + {2, arcs_11_13}, + {2, arcs_11_14}, + {1, arcs_11_15}, + {3, arcs_11_16}, + {1, arcs_11_17}, +}; +static arc arcs_12_0[1] = { + {23, 1}, +}; +static arc arcs_12_1[1] = { {0, 1}, }; -static arc arcs_9_2[1] = { - {24, 3}, -}; -static arc arcs_9_3[1] = { - {0, 3}, -}; -static state states_9[4] = { - {1, arcs_9_0}, - {2, arcs_9_1}, - {1, arcs_9_2}, - {1, arcs_9_3}, -}; -static arc arcs_10_0[3] = { - {34, 1}, - {31, 2}, - {32, 3}, -}; -static arc arcs_10_1[3] = { - {29, 4}, - {30, 5}, - {0, 1}, -}; -static arc arcs_10_2[3] = { - {34, 6}, - {30, 7}, - {0, 2}, -}; -static arc arcs_10_3[1] = { - {34, 8}, -}; -static arc arcs_10_4[1] = { - {24, 9}, -}; -static arc arcs_10_5[4] = { - {34, 10}, - {31, 11}, - {32, 3}, - {0, 5}, -}; -static arc arcs_10_6[2] = { - {30, 7}, - {0, 6}, -}; -static arc arcs_10_7[2] = { - {34, 12}, - {32, 3}, -}; -static arc arcs_10_8[1] = { - {0, 8}, -}; -static arc arcs_10_9[2] = { - {30, 5}, - {0, 9}, -}; -static arc arcs_10_10[3] = { - {30, 5}, - {29, 4}, - {0, 10}, -}; -static arc arcs_10_11[3] = { - {34, 13}, - {30, 14}, - {0, 11}, -}; -static arc arcs_10_12[3] = { - {30, 7}, - {29, 15}, - {0, 12}, -}; -static arc arcs_10_13[2] = { - {30, 14}, - {0, 13}, -}; -static arc arcs_10_14[2] = { - {34, 16}, - {32, 3}, -}; -static arc arcs_10_15[1] = { - {24, 6}, -}; -static arc arcs_10_16[3] = { - {30, 14}, - {29, 17}, - {0, 16}, -}; -static arc arcs_10_17[1] = { - {24, 13}, -}; -static state states_10[18] = { - {3, arcs_10_0}, - {3, arcs_10_1}, - {3, arcs_10_2}, - {1, arcs_10_3}, - {1, arcs_10_4}, - {4, arcs_10_5}, - {2, arcs_10_6}, - {2, arcs_10_7}, - {1, arcs_10_8}, - {2, arcs_10_9}, - {3, arcs_10_10}, - {3, arcs_10_11}, - {3, arcs_10_12}, - {2, arcs_10_13}, - {2, arcs_10_14}, - {1, arcs_10_15}, - {3, arcs_10_16}, - {1, arcs_10_17}, -}; -static arc arcs_11_0[1] = { - {21, 1}, -}; -static arc arcs_11_1[1] = { - {0, 1}, -}; -static state states_11[2] = { - {1, arcs_11_0}, - {1, arcs_11_1}, -}; -static arc arcs_12_0[2] = { +static state states_12[2] = { + {1, arcs_12_0}, + {1, arcs_12_1}, +}; +static arc arcs_13_0[2] = { {3, 1}, {4, 1}, }; -static arc arcs_12_1[1] = { +static arc arcs_13_1[1] = { {0, 1}, }; -static state states_12[2] = { - {2, arcs_12_0}, - {1, arcs_12_1}, -}; -static arc arcs_13_0[1] = { - {35, 1}, -}; -static arc arcs_13_1[2] = { - {36, 2}, +static state states_13[2] = { + {2, arcs_13_0}, + {1, arcs_13_1}, +}; +static arc arcs_14_0[1] = { + {37, 1}, +}; +static arc arcs_14_1[2] = { + {38, 2}, {2, 3}, }; -static arc arcs_13_2[2] = { - {35, 1}, +static arc arcs_14_2[2] = { + {37, 1}, {2, 3}, }; -static arc arcs_13_3[1] = { +static arc arcs_14_3[1] = { {0, 3}, }; -static state states_13[4] = { - {1, arcs_13_0}, - {2, arcs_13_1}, - {2, arcs_13_2}, - {1, arcs_13_3}, -}; -static arc arcs_14_0[8] = { - {37, 1}, - {38, 1}, +static state states_14[4] = { + {1, arcs_14_0}, + {2, arcs_14_1}, + {2, arcs_14_2}, + {1, arcs_14_3}, +}; +static arc arcs_15_0[8] = { {39, 1}, {40, 1}, {41, 1}, {42, 1}, {43, 1}, {44, 1}, -}; -static arc arcs_14_1[1] = { + {45, 1}, + {46, 1}, +}; +static arc arcs_15_1[1] = { {0, 1}, }; -static state states_14[2] = { - {8, arcs_14_0}, - {1, arcs_14_1}, -}; -static arc arcs_15_0[1] = { - {45, 1}, -}; -static arc arcs_15_1[3] = { - {46, 2}, - {29, 3}, +static state states_15[2] = { + {8, arcs_15_0}, + {1, arcs_15_1}, +}; +static arc arcs_16_0[1] = { + {47, 1}, +}; +static arc arcs_16_1[3] = { + {48, 2}, + {31, 3}, {0, 1}, }; -static arc arcs_15_2[2] = { - {47, 4}, +static arc arcs_16_2[3] = { + {49, 4}, + {50, 4}, {9, 4}, }; -static arc arcs_15_3[2] = { +static arc arcs_16_3[3] = { + {49, 5}, + {50, 5}, {47, 5}, - {45, 5}, -}; -static arc arcs_15_4[1] = { +}; +static arc arcs_16_4[1] = { {0, 4}, }; -static arc arcs_15_5[2] = { - {29, 3}, +static arc arcs_16_5[2] = { + {31, 3}, {0, 5}, }; -static state states_15[6] = { - {1, arcs_15_0}, - {3, arcs_15_1}, - {2, arcs_15_2}, - {2, arcs_15_3}, - {1, arcs_15_4}, - {2, arcs_15_5}, -}; -static arc arcs_16_0[2] = { - {24, 1}, - {48, 1}, -}; -static arc arcs_16_1[2] = { - {30, 2}, +static state states_16[6] = { + {1, arcs_16_0}, + {3, arcs_16_1}, + {3, arcs_16_2}, + {3, arcs_16_3}, + {1, arcs_16_4}, + {2, arcs_16_5}, +}; +static arc arcs_17_0[2] = { + {26, 1}, + {51, 1}, +}; +static arc arcs_17_1[2] = { + {32, 2}, {0, 1}, }; -static arc arcs_16_2[3] = { - {24, 1}, - {48, 1}, +static arc arcs_17_2[3] = { + {26, 1}, + {51, 1}, {0, 2}, }; -static state states_16[3] = { - {2, arcs_16_0}, - {2, arcs_16_1}, - {3, arcs_16_2}, -}; -static arc arcs_17_0[13] = { - {49, 1}, - {50, 1}, - {51, 1}, +static state states_17[3] = { + {2, arcs_17_0}, + {2, arcs_17_1}, + {3, arcs_17_2}, +}; +static arc arcs_18_0[13] = { {52, 1}, {53, 1}, {54, 1}, @@ -490,64 +504,58 @@ {59, 1}, {60, 1}, {61, 1}, -}; -static arc arcs_17_1[1] = { + {62, 1}, + {63, 1}, + {64, 1}, +}; +static arc arcs_18_1[1] = { {0, 1}, }; -static state states_17[2] = { - {13, arcs_17_0}, - {1, arcs_17_1}, -}; -static arc arcs_18_0[1] = { - {62, 1}, -}; -static arc arcs_18_1[1] = { - {63, 2}, -}; -static arc arcs_18_2[1] = { +static state states_18[2] = { + {13, arcs_18_0}, + {1, arcs_18_1}, +}; +static arc arcs_19_0[1] = { + {65, 1}, +}; +static arc arcs_19_1[1] = { + {66, 2}, +}; +static arc arcs_19_2[1] = { {0, 2}, }; -static state states_18[3] = { - {1, arcs_18_0}, - {1, arcs_18_1}, - {1, arcs_18_2}, -}; -static arc arcs_19_0[1] = { - {64, 1}, -}; -static arc arcs_19_1[1] = { - {0, 1}, -}; -static state states_19[2] = { +static state states_19[3] = { {1, arcs_19_0}, {1, arcs_19_1}, -}; -static arc arcs_20_0[5] = { - {65, 1}, - {66, 1}, + {1, arcs_19_2}, +}; +static arc arcs_20_0[1] = { {67, 1}, +}; +static arc arcs_20_1[1] = { + {0, 1}, +}; +static state states_20[2] = { + {1, arcs_20_0}, + {1, arcs_20_1}, +}; +static arc arcs_21_0[6] = { {68, 1}, {69, 1}, -}; -static arc arcs_20_1[1] = { - {0, 1}, -}; -static state states_20[2] = { - {5, arcs_20_0}, - {1, arcs_20_1}, -}; -static arc arcs_21_0[1] = { {70, 1}, + {71, 1}, + {72, 1}, + {73, 1}, }; static arc arcs_21_1[1] = { {0, 1}, }; static state states_21[2] = { - {1, arcs_21_0}, + {6, arcs_21_0}, {1, arcs_21_1}, }; static arc arcs_22_0[1] = { - {71, 1}, + {74, 1}, }; static arc arcs_22_1[1] = { {0, 1}, @@ -557,653 +565,653 @@ {1, arcs_22_1}, }; static arc arcs_23_0[1] = { - {72, 1}, -}; -static arc arcs_23_1[2] = { + {75, 1}, +}; +static arc arcs_23_1[1] = { + {0, 1}, +}; +static state states_23[2] = { + {1, arcs_23_0}, + {1, arcs_23_1}, +}; +static arc arcs_24_0[1] = { + {76, 1}, +}; +static arc arcs_24_1[2] = { {9, 2}, {0, 1}, }; -static arc arcs_23_2[1] = { +static arc arcs_24_2[1] = { {0, 2}, }; -static state states_23[3] = { - {1, arcs_23_0}, - {2, arcs_23_1}, - {1, arcs_23_2}, -}; -static arc arcs_24_0[1] = { - {47, 1}, -}; -static arc arcs_24_1[1] = { +static state states_24[3] = { + {1, arcs_24_0}, + {2, arcs_24_1}, + {1, arcs_24_2}, +}; +static arc arcs_25_0[1] = { + {50, 1}, +}; +static arc arcs_25_1[1] = { {0, 1}, }; -static state states_24[2] = { - {1, arcs_24_0}, - {1, arcs_24_1}, -}; -static arc arcs_25_0[1] = { - {73, 1}, -}; -static arc arcs_25_1[2] = { - {24, 2}, - {0, 1}, -}; -static arc arcs_25_2[2] = { - {74, 3}, - {0, 2}, -}; -static arc arcs_25_3[1] = { - {24, 4}, -}; -static arc arcs_25_4[1] = { - {0, 4}, -}; -static state states_25[5] = { +static state states_25[2] = { {1, arcs_25_0}, - {2, arcs_25_1}, - {2, arcs_25_2}, - {1, arcs_25_3}, - {1, arcs_25_4}, -}; -static arc arcs_26_0[2] = { - {75, 1}, - {76, 1}, + {1, arcs_25_1}, +}; +static arc arcs_26_0[1] = { + {49, 1}, }; static arc arcs_26_1[1] = { {0, 1}, }; static state states_26[2] = { - {2, arcs_26_0}, + {1, arcs_26_0}, {1, arcs_26_1}, }; static arc arcs_27_0[1] = { {77, 1}, }; -static arc arcs_27_1[1] = { - {78, 2}, -}; -static arc arcs_27_2[1] = { +static arc arcs_27_1[2] = { + {26, 2}, + {0, 1}, +}; +static arc arcs_27_2[2] = { + {78, 3}, {0, 2}, }; -static state states_27[3] = { +static arc arcs_27_3[1] = { + {26, 4}, +}; +static arc arcs_27_4[1] = { + {0, 4}, +}; +static state states_27[5] = { {1, arcs_27_0}, - {1, arcs_27_1}, - {1, arcs_27_2}, -}; -static arc arcs_28_0[1] = { - {74, 1}, -}; -static arc arcs_28_1[3] = { - {79, 2}, - {80, 2}, + {2, arcs_27_1}, + {2, arcs_27_2}, + {1, arcs_27_3}, + {1, arcs_27_4}, +}; +static arc arcs_28_0[2] = { + {79, 1}, + {80, 1}, +}; +static arc arcs_28_1[1] = { + {0, 1}, +}; +static state states_28[2] = { + {2, arcs_28_0}, + {1, arcs_28_1}, +}; +static arc arcs_29_0[1] = { + {81, 1}, +}; +static arc arcs_29_1[1] = { + {82, 2}, +}; +static arc arcs_29_2[1] = { + {0, 2}, +}; +static state states_29[3] = { + {1, arcs_29_0}, + {1, arcs_29_1}, + {1, arcs_29_2}, +}; +static arc arcs_30_0[1] = { + {78, 1}, +}; +static arc arcs_30_1[3] = { + {83, 2}, + {84, 2}, {12, 3}, }; -static arc arcs_28_2[4] = { - {79, 2}, - {80, 2}, +static arc arcs_30_2[4] = { + {83, 2}, + {84, 2}, {12, 3}, - {77, 4}, -}; -static arc arcs_28_3[1] = { - {77, 4}, -}; -static arc arcs_28_4[3] = { - {31, 5}, + {81, 4}, +}; +static arc arcs_30_3[1] = { + {81, 4}, +}; +static arc arcs_30_4[3] = { + {33, 5}, {13, 6}, - {81, 5}, -}; -static arc arcs_28_5[1] = { + {85, 5}, +}; +static arc arcs_30_5[1] = { {0, 5}, }; -static arc arcs_28_6[1] = { - {81, 7}, -}; -static arc arcs_28_7[1] = { +static arc arcs_30_6[1] = { + {85, 7}, +}; +static arc arcs_30_7[1] = { {15, 5}, }; -static state states_28[8] = { - {1, arcs_28_0}, - {3, arcs_28_1}, - {4, arcs_28_2}, - {1, arcs_28_3}, - {3, arcs_28_4}, - {1, arcs_28_5}, - {1, arcs_28_6}, - {1, arcs_28_7}, -}; -static arc arcs_29_0[1] = { - {21, 1}, -}; -static arc arcs_29_1[2] = { - {83, 2}, +static state states_30[8] = { + {1, arcs_30_0}, + {3, arcs_30_1}, + {4, arcs_30_2}, + {1, arcs_30_3}, + {3, arcs_30_4}, + {1, arcs_30_5}, + {1, arcs_30_6}, + {1, arcs_30_7}, +}; +static arc arcs_31_0[1] = { + {23, 1}, +}; +static arc arcs_31_1[2] = { + {87, 2}, {0, 1}, }; -static arc arcs_29_2[1] = { - {21, 3}, -}; -static arc arcs_29_3[1] = { +static arc arcs_31_2[1] = { + {23, 3}, +}; +static arc arcs_31_3[1] = { {0, 3}, }; -static state states_29[4] = { - {1, arcs_29_0}, - {2, arcs_29_1}, - {1, arcs_29_2}, - {1, arcs_29_3}, -}; -static arc arcs_30_0[1] = { - {12, 1}, -}; -static arc arcs_30_1[2] = { - {83, 2}, - {0, 1}, -}; -static arc arcs_30_2[1] = { - {21, 3}, -}; -static arc arcs_30_3[1] = { - {0, 3}, -}; -static state states_30[4] = { - {1, arcs_30_0}, - {2, arcs_30_1}, - {1, arcs_30_2}, - {1, arcs_30_3}, -}; -static arc arcs_31_0[1] = { - {82, 1}, -}; -static arc arcs_31_1[2] = { - {30, 2}, - {0, 1}, -}; -static arc arcs_31_2[2] = { - {82, 1}, - {0, 2}, -}; -static state states_31[3] = { +static state states_31[4] = { {1, arcs_31_0}, {2, arcs_31_1}, - {2, arcs_31_2}, + {1, arcs_31_2}, + {1, arcs_31_3}, }; static arc arcs_32_0[1] = { - {84, 1}, + {12, 1}, }; static arc arcs_32_1[2] = { - {30, 0}, + {87, 2}, {0, 1}, }; -static state states_32[2] = { +static arc arcs_32_2[1] = { + {23, 3}, +}; +static arc arcs_32_3[1] = { + {0, 3}, +}; +static state states_32[4] = { {1, arcs_32_0}, {2, arcs_32_1}, + {1, arcs_32_2}, + {1, arcs_32_3}, }; static arc arcs_33_0[1] = { - {21, 1}, + {86, 1}, }; static arc arcs_33_1[2] = { - {79, 0}, + {32, 2}, {0, 1}, }; -static state states_33[2] = { +static arc arcs_33_2[2] = { + {86, 1}, + {0, 2}, +}; +static state states_33[3] = { {1, arcs_33_0}, {2, arcs_33_1}, + {2, arcs_33_2}, }; static arc arcs_34_0[1] = { - {85, 1}, -}; -static arc arcs_34_1[1] = { - {21, 2}, -}; -static arc arcs_34_2[2] = { - {30, 1}, + {88, 1}, +}; +static arc arcs_34_1[2] = { + {32, 0}, + {0, 1}, +}; +static state states_34[2] = { + {1, arcs_34_0}, + {2, arcs_34_1}, +}; +static arc arcs_35_0[1] = { + {23, 1}, +}; +static arc arcs_35_1[2] = { + {83, 0}, + {0, 1}, +}; +static state states_35[2] = { + {1, arcs_35_0}, + {2, arcs_35_1}, +}; +static arc arcs_36_0[1] = { + {89, 1}, +}; +static arc arcs_36_1[1] = { + {23, 2}, +}; +static arc arcs_36_2[2] = { + {32, 1}, {0, 2}, }; -static state states_34[3] = { - {1, arcs_34_0}, - {1, arcs_34_1}, - {2, arcs_34_2}, -}; -static arc arcs_35_0[1] = { - {86, 1}, -}; -static arc arcs_35_1[1] = { - {21, 2}, -}; -static arc arcs_35_2[2] = { - {30, 1}, - {0, 2}, -}; -static state states_35[3] = { - {1, arcs_35_0}, - {1, arcs_35_1}, - {2, arcs_35_2}, -}; -static arc arcs_36_0[1] = { - {87, 1}, -}; -static arc arcs_36_1[1] = { - {24, 2}, -}; -static arc arcs_36_2[2] = { - {30, 3}, - {0, 2}, -}; -static arc arcs_36_3[1] = { - {24, 4}, -}; -static arc arcs_36_4[1] = { - {0, 4}, -}; -static state states_36[5] = { +static state states_36[3] = { {1, arcs_36_0}, {1, arcs_36_1}, {2, arcs_36_2}, - {1, arcs_36_3}, - {1, arcs_36_4}, -}; -static arc arcs_37_0[8] = { - {88, 1}, - {89, 1}, +}; +static arc arcs_37_0[1] = { {90, 1}, +}; +static arc arcs_37_1[1] = { + {23, 2}, +}; +static arc arcs_37_2[2] = { + {32, 1}, + {0, 2}, +}; +static state states_37[3] = { + {1, arcs_37_0}, + {1, arcs_37_1}, + {2, arcs_37_2}, +}; +static arc arcs_38_0[1] = { {91, 1}, +}; +static arc arcs_38_1[1] = { + {26, 2}, +}; +static arc arcs_38_2[2] = { + {32, 3}, + {0, 2}, +}; +static arc arcs_38_3[1] = { + {26, 4}, +}; +static arc arcs_38_4[1] = { + {0, 4}, +}; +static state states_38[5] = { + {1, arcs_38_0}, + {1, arcs_38_1}, + {2, arcs_38_2}, + {1, arcs_38_3}, + {1, arcs_38_4}, +}; +static arc arcs_39_0[9] = { {92, 1}, + {93, 1}, + {94, 1}, + {95, 1}, + {96, 1}, {19, 1}, {18, 1}, {17, 1}, -}; -static arc arcs_37_1[1] = { + {97, 1}, +}; +static arc arcs_39_1[1] = { {0, 1}, }; -static state states_37[2] = { - {8, arcs_37_0}, - {1, arcs_37_1}, -}; -static arc arcs_38_0[1] = { - {93, 1}, -}; -static arc arcs_38_1[1] = { - {24, 2}, -}; -static arc arcs_38_2[1] = { - {25, 3}, -}; -static arc arcs_38_3[1] = { - {26, 4}, -}; -static arc arcs_38_4[3] = { - {94, 1}, - {95, 5}, +static state states_39[2] = { + {9, arcs_39_0}, + {1, arcs_39_1}, +}; +static arc arcs_40_0[1] = { + {21, 1}, +}; +static arc arcs_40_1[3] = { + {19, 2}, + {96, 2}, + {94, 2}, +}; +static arc arcs_40_2[1] = { + {0, 2}, +}; +static state states_40[3] = { + {1, arcs_40_0}, + {3, arcs_40_1}, + {1, arcs_40_2}, +}; +static arc arcs_41_0[1] = { + {98, 1}, +}; +static arc arcs_41_1[1] = { + {26, 2}, +}; +static arc arcs_41_2[1] = { + {27, 3}, +}; +static arc arcs_41_3[1] = { + {28, 4}, +}; +static arc arcs_41_4[3] = { + {99, 1}, + {100, 5}, {0, 4}, }; -static arc arcs_38_5[1] = { - {25, 6}, -}; -static arc arcs_38_6[1] = { - {26, 7}, -}; -static arc arcs_38_7[1] = { +static arc arcs_41_5[1] = { + {27, 6}, +}; +static arc arcs_41_6[1] = { + {28, 7}, +}; +static arc arcs_41_7[1] = { {0, 7}, }; -static state states_38[8] = { - {1, arcs_38_0}, - {1, arcs_38_1}, - {1, arcs_38_2}, - {1, arcs_38_3}, - {3, arcs_38_4}, - {1, arcs_38_5}, - {1, arcs_38_6}, - {1, arcs_38_7}, -}; -static arc arcs_39_0[1] = { - {96, 1}, -}; -static arc arcs_39_1[1] = { - {24, 2}, -}; -static arc arcs_39_2[1] = { - {25, 3}, -}; -static arc arcs_39_3[1] = { - {26, 4}, -}; -static arc arcs_39_4[2] = { - {95, 5}, - {0, 4}, -}; -static arc arcs_39_5[1] = { - {25, 6}, -}; -static arc arcs_39_6[1] = { - {26, 7}, -}; -static arc arcs_39_7[1] = { - {0, 7}, -}; -static state states_39[8] = { - {1, arcs_39_0}, - {1, arcs_39_1}, - {1, arcs_39_2}, - {1, arcs_39_3}, - {2, arcs_39_4}, - {1, arcs_39_5}, - {1, arcs_39_6}, - {1, arcs_39_7}, -}; -static arc arcs_40_0[1] = { - {97, 1}, -}; -static arc arcs_40_1[1] = { - {63, 2}, -}; -static arc arcs_40_2[1] = { - {98, 3}, -}; -static arc arcs_40_3[1] = { - {9, 4}, -}; -static arc arcs_40_4[1] = { - {25, 5}, -}; -static arc arcs_40_5[1] = { - {26, 6}, -}; -static arc arcs_40_6[2] = { - {95, 7}, - {0, 6}, -}; -static arc arcs_40_7[1] = { - {25, 8}, -}; -static arc arcs_40_8[1] = { - {26, 9}, -}; -static arc arcs_40_9[1] = { - {0, 9}, -}; -static state states_40[10] = { - {1, arcs_40_0}, - {1, arcs_40_1}, - {1, arcs_40_2}, - {1, arcs_40_3}, - {1, arcs_40_4}, - {1, arcs_40_5}, - {2, arcs_40_6}, - {1, arcs_40_7}, - {1, arcs_40_8}, - {1, arcs_40_9}, -}; -static arc arcs_41_0[1] = { - {99, 1}, -}; -static arc arcs_41_1[1] = { - {25, 2}, -}; -static arc arcs_41_2[1] = { - {26, 3}, -}; -static arc arcs_41_3[2] = { - {100, 4}, - {101, 5}, -}; -static arc arcs_41_4[1] = { - {25, 6}, -}; -static arc arcs_41_5[1] = { - {25, 7}, -}; -static arc arcs_41_6[1] = { - {26, 8}, -}; -static arc arcs_41_7[1] = { - {26, 9}, -}; -static arc arcs_41_8[4] = { - {100, 4}, - {95, 10}, - {101, 5}, - {0, 8}, -}; -static arc arcs_41_9[1] = { - {0, 9}, -}; -static arc arcs_41_10[1] = { - {25, 11}, -}; -static arc arcs_41_11[1] = { - {26, 12}, -}; -static arc arcs_41_12[2] = { - {101, 5}, - {0, 12}, -}; -static state states_41[13] = { +static state states_41[8] = { {1, arcs_41_0}, {1, arcs_41_1}, {1, arcs_41_2}, - {2, arcs_41_3}, - {1, arcs_41_4}, + {1, arcs_41_3}, + {3, arcs_41_4}, {1, arcs_41_5}, {1, arcs_41_6}, {1, arcs_41_7}, - {4, arcs_41_8}, - {1, arcs_41_9}, - {1, arcs_41_10}, - {1, arcs_41_11}, - {2, arcs_41_12}, }; static arc arcs_42_0[1] = { - {102, 1}, + {101, 1}, }; static arc arcs_42_1[1] = { - {103, 2}, -}; -static arc arcs_42_2[2] = { - {30, 1}, - {25, 3}, + {26, 2}, +}; +static arc arcs_42_2[1] = { + {27, 3}, }; static arc arcs_42_3[1] = { - {26, 4}, -}; -static arc arcs_42_4[1] = { + {28, 4}, +}; +static arc arcs_42_4[2] = { + {100, 5}, {0, 4}, }; -static state states_42[5] = { +static arc arcs_42_5[1] = { + {27, 6}, +}; +static arc arcs_42_6[1] = { + {28, 7}, +}; +static arc arcs_42_7[1] = { + {0, 7}, +}; +static state states_42[8] = { {1, arcs_42_0}, {1, arcs_42_1}, - {2, arcs_42_2}, + {1, arcs_42_2}, {1, arcs_42_3}, - {1, arcs_42_4}, + {2, arcs_42_4}, + {1, arcs_42_5}, + {1, arcs_42_6}, + {1, arcs_42_7}, }; static arc arcs_43_0[1] = { - {24, 1}, -}; -static arc arcs_43_1[2] = { - {83, 2}, - {0, 1}, + {102, 1}, +}; +static arc arcs_43_1[1] = { + {66, 2}, }; static arc arcs_43_2[1] = { - {104, 3}, + {103, 3}, }; static arc arcs_43_3[1] = { - {0, 3}, -}; -static state states_43[4] = { + {9, 4}, +}; +static arc arcs_43_4[1] = { + {27, 5}, +}; +static arc arcs_43_5[1] = { + {28, 6}, +}; +static arc arcs_43_6[2] = { + {100, 7}, + {0, 6}, +}; +static arc arcs_43_7[1] = { + {27, 8}, +}; +static arc arcs_43_8[1] = { + {28, 9}, +}; +static arc arcs_43_9[1] = { + {0, 9}, +}; +static state states_43[10] = { {1, arcs_43_0}, - {2, arcs_43_1}, + {1, arcs_43_1}, {1, arcs_43_2}, {1, arcs_43_3}, + {1, arcs_43_4}, + {1, arcs_43_5}, + {2, arcs_43_6}, + {1, arcs_43_7}, + {1, arcs_43_8}, + {1, arcs_43_9}, }; static arc arcs_44_0[1] = { - {105, 1}, -}; -static arc arcs_44_1[2] = { - {24, 2}, + {104, 1}, +}; +static arc arcs_44_1[1] = { + {27, 2}, +}; +static arc arcs_44_2[1] = { + {28, 3}, +}; +static arc arcs_44_3[2] = { + {105, 4}, + {106, 5}, +}; +static arc arcs_44_4[1] = { + {27, 6}, +}; +static arc arcs_44_5[1] = { + {27, 7}, +}; +static arc arcs_44_6[1] = { + {28, 8}, +}; +static arc arcs_44_7[1] = { + {28, 9}, +}; +static arc arcs_44_8[4] = { + {105, 4}, + {100, 10}, + {106, 5}, + {0, 8}, +}; +static arc arcs_44_9[1] = { + {0, 9}, +}; +static arc arcs_44_10[1] = { + {27, 11}, +}; +static arc arcs_44_11[1] = { + {28, 12}, +}; +static arc arcs_44_12[2] = { + {106, 5}, + {0, 12}, +}; +static state states_44[13] = { + {1, arcs_44_0}, + {1, arcs_44_1}, + {1, arcs_44_2}, + {2, arcs_44_3}, + {1, arcs_44_4}, + {1, arcs_44_5}, + {1, arcs_44_6}, + {1, arcs_44_7}, + {4, arcs_44_8}, + {1, arcs_44_9}, + {1, arcs_44_10}, + {1, arcs_44_11}, + {2, arcs_44_12}, +}; +static arc arcs_45_0[1] = { + {107, 1}, +}; +static arc arcs_45_1[1] = { + {108, 2}, +}; +static arc arcs_45_2[2] = { + {32, 1}, + {27, 3}, +}; +static arc arcs_45_3[1] = { + {28, 4}, +}; +static arc arcs_45_4[1] = { + {0, 4}, +}; +static state states_45[5] = { + {1, arcs_45_0}, + {1, arcs_45_1}, + {2, arcs_45_2}, + {1, arcs_45_3}, + {1, arcs_45_4}, +}; +static arc arcs_46_0[1] = { + {26, 1}, +}; +static arc arcs_46_1[2] = { + {87, 2}, {0, 1}, }; -static arc arcs_44_2[2] = { - {83, 3}, - {0, 2}, -}; -static arc arcs_44_3[1] = { - {21, 4}, -}; -static arc arcs_44_4[1] = { - {0, 4}, -}; -static state states_44[5] = { - {1, arcs_44_0}, - {2, arcs_44_1}, - {2, arcs_44_2}, - {1, arcs_44_3}, - {1, arcs_44_4}, -}; -static arc arcs_45_0[2] = { - {3, 1}, - {2, 2}, -}; -static arc arcs_45_1[1] = { - {0, 1}, -}; -static arc arcs_45_2[1] = { - {106, 3}, -}; -static arc arcs_45_3[1] = { - {6, 4}, -}; -static arc arcs_45_4[2] = { - {6, 4}, - {107, 1}, -}; -static state states_45[5] = { - {2, arcs_45_0}, - {1, arcs_45_1}, - {1, arcs_45_2}, - {1, arcs_45_3}, - {2, arcs_45_4}, -}; -static arc arcs_46_0[2] = { - {108, 1}, - {109, 2}, -}; -static arc arcs_46_1[2] = { - {93, 3}, - {0, 1}, -}; static arc arcs_46_2[1] = { - {0, 2}, + {109, 3}, }; static arc arcs_46_3[1] = { - {108, 4}, -}; -static arc arcs_46_4[1] = { - {95, 5}, -}; -static arc arcs_46_5[1] = { - {24, 2}, -}; -static state states_46[6] = { - {2, arcs_46_0}, + {0, 3}, +}; +static state states_46[4] = { + {1, arcs_46_0}, {2, arcs_46_1}, {1, arcs_46_2}, {1, arcs_46_3}, - {1, arcs_46_4}, - {1, arcs_46_5}, -}; -static arc arcs_47_0[2] = { - {108, 1}, - {111, 1}, -}; -static arc arcs_47_1[1] = { +}; +static arc arcs_47_0[1] = { + {110, 1}, +}; +static arc arcs_47_1[2] = { + {26, 2}, {0, 1}, }; -static state states_47[2] = { - {2, arcs_47_0}, - {1, arcs_47_1}, -}; -static arc arcs_48_0[1] = { +static arc arcs_47_2[2] = { + {87, 3}, + {0, 2}, +}; +static arc arcs_47_3[1] = { + {23, 4}, +}; +static arc arcs_47_4[1] = { + {0, 4}, +}; +static state states_47[5] = { + {1, arcs_47_0}, + {2, arcs_47_1}, + {2, arcs_47_2}, + {1, arcs_47_3}, + {1, arcs_47_4}, +}; +static arc arcs_48_0[2] = { + {3, 1}, + {2, 2}, +}; +static arc arcs_48_1[1] = { + {0, 1}, +}; +static arc arcs_48_2[1] = { + {111, 3}, +}; +static arc arcs_48_3[1] = { + {6, 4}, +}; +static arc arcs_48_4[2] = { + {6, 4}, {112, 1}, }; -static arc arcs_48_1[2] = { - {33, 2}, - {25, 3}, -}; -static arc arcs_48_2[1] = { - {25, 3}, -}; -static arc arcs_48_3[1] = { - {24, 4}, -}; -static arc arcs_48_4[1] = { - {0, 4}, -}; static state states_48[5] = { - {1, arcs_48_0}, - {2, arcs_48_1}, + {2, arcs_48_0}, + {1, arcs_48_1}, {1, arcs_48_2}, {1, arcs_48_3}, - {1, arcs_48_4}, -}; -static arc arcs_49_0[1] = { - {112, 1}, + {2, arcs_48_4}, +}; +static arc arcs_49_0[2] = { + {113, 1}, + {114, 2}, }; static arc arcs_49_1[2] = { - {33, 2}, - {25, 3}, + {98, 3}, + {0, 1}, }; static arc arcs_49_2[1] = { - {25, 3}, + {0, 2}, }; static arc arcs_49_3[1] = { - {110, 4}, + {113, 4}, }; static arc arcs_49_4[1] = { - {0, 4}, -}; -static state states_49[5] = { - {1, arcs_49_0}, + {100, 5}, +}; +static arc arcs_49_5[1] = { + {26, 2}, +}; +static state states_49[6] = { + {2, arcs_49_0}, {2, arcs_49_1}, {1, arcs_49_2}, {1, arcs_49_3}, {1, arcs_49_4}, -}; -static arc arcs_50_0[1] = { + {1, arcs_49_5}, +}; +static arc arcs_50_0[2] = { {113, 1}, -}; -static arc arcs_50_1[2] = { - {114, 0}, + {116, 1}, +}; +static arc arcs_50_1[1] = { {0, 1}, }; static state states_50[2] = { - {1, arcs_50_0}, - {2, arcs_50_1}, + {2, arcs_50_0}, + {1, arcs_50_1}, }; static arc arcs_51_0[1] = { - {115, 1}, + {117, 1}, }; static arc arcs_51_1[2] = { - {116, 0}, - {0, 1}, -}; -static state states_51[2] = { + {35, 2}, + {27, 3}, +}; +static arc arcs_51_2[1] = { + {27, 3}, +}; +static arc arcs_51_3[1] = { + {26, 4}, +}; +static arc arcs_51_4[1] = { + {0, 4}, +}; +static state states_51[5] = { {1, arcs_51_0}, {2, arcs_51_1}, -}; -static arc arcs_52_0[2] = { + {1, arcs_51_2}, + {1, arcs_51_3}, + {1, arcs_51_4}, +}; +static arc arcs_52_0[1] = { {117, 1}, - {118, 2}, -}; -static arc arcs_52_1[1] = { - {115, 2}, +}; +static arc arcs_52_1[2] = { + {35, 2}, + {27, 3}, }; static arc arcs_52_2[1] = { - {0, 2}, -}; -static state states_52[3] = { - {2, arcs_52_0}, - {1, arcs_52_1}, + {27, 3}, +}; +static arc arcs_52_3[1] = { + {115, 4}, +}; +static arc arcs_52_4[1] = { + {0, 4}, +}; +static state states_52[5] = { + {1, arcs_52_0}, + {2, arcs_52_1}, {1, arcs_52_2}, + {1, arcs_52_3}, + {1, arcs_52_4}, }; static arc arcs_53_0[1] = { - {104, 1}, + {118, 1}, }; static arc arcs_53_1[2] = { {119, 0}, @@ -1213,828 +1221,891 @@ {1, arcs_53_0}, {2, arcs_53_1}, }; -static arc arcs_54_0[10] = { +static arc arcs_54_0[1] = { {120, 1}, - {121, 1}, +}; +static arc arcs_54_1[2] = { + {121, 0}, + {0, 1}, +}; +static state states_54[2] = { + {1, arcs_54_0}, + {2, arcs_54_1}, +}; +static arc arcs_55_0[2] = { {122, 1}, - {123, 1}, - {124, 1}, - {125, 1}, - {126, 1}, - {98, 1}, - {117, 2}, - {127, 3}, -}; -static arc arcs_54_1[1] = { - {0, 1}, -}; -static arc arcs_54_2[1] = { - {98, 1}, -}; -static arc arcs_54_3[2] = { - {117, 1}, - {0, 3}, -}; -static state states_54[4] = { - {10, arcs_54_0}, - {1, arcs_54_1}, - {1, arcs_54_2}, - {2, arcs_54_3}, -}; -static arc arcs_55_0[1] = { - {31, 1}, + {123, 2}, }; static arc arcs_55_1[1] = { - {104, 2}, + {120, 2}, }; static arc arcs_55_2[1] = { {0, 2}, }; static state states_55[3] = { - {1, arcs_55_0}, + {2, arcs_55_0}, {1, arcs_55_1}, {1, arcs_55_2}, }; static arc arcs_56_0[1] = { - {128, 1}, + {109, 1}, }; static arc arcs_56_1[2] = { - {129, 0}, + {124, 0}, {0, 1}, }; static state states_56[2] = { {1, arcs_56_0}, {2, arcs_56_1}, }; -static arc arcs_57_0[1] = { +static arc arcs_57_0[10] = { + {125, 1}, + {126, 1}, + {127, 1}, + {128, 1}, + {129, 1}, {130, 1}, -}; -static arc arcs_57_1[2] = { - {131, 0}, + {131, 1}, + {103, 1}, + {122, 2}, + {132, 3}, +}; +static arc arcs_57_1[1] = { {0, 1}, }; -static state states_57[2] = { - {1, arcs_57_0}, - {2, arcs_57_1}, +static arc arcs_57_2[1] = { + {103, 1}, +}; +static arc arcs_57_3[2] = { + {122, 1}, + {0, 3}, +}; +static state states_57[4] = { + {10, arcs_57_0}, + {1, arcs_57_1}, + {1, arcs_57_2}, + {2, arcs_57_3}, }; static arc arcs_58_0[1] = { - {132, 1}, -}; -static arc arcs_58_1[2] = { - {133, 0}, + {33, 1}, +}; +static arc arcs_58_1[1] = { + {109, 2}, +}; +static arc arcs_58_2[1] = { + {0, 2}, +}; +static state states_58[3] = { + {1, arcs_58_0}, + {1, arcs_58_1}, + {1, arcs_58_2}, +}; +static arc arcs_59_0[1] = { + {133, 1}, +}; +static arc arcs_59_1[2] = { + {134, 0}, {0, 1}, }; -static state states_58[2] = { - {1, arcs_58_0}, - {2, arcs_58_1}, -}; -static arc arcs_59_0[1] = { - {134, 1}, -}; -static arc arcs_59_1[3] = { - {135, 0}, +static state states_59[2] = { + {1, arcs_59_0}, + {2, arcs_59_1}, +}; +static arc arcs_60_0[1] = { + {135, 1}, +}; +static arc arcs_60_1[2] = { {136, 0}, {0, 1}, }; -static state states_59[2] = { - {1, arcs_59_0}, - {3, arcs_59_1}, -}; -static arc arcs_60_0[1] = { - {137, 1}, -}; -static arc arcs_60_1[3] = { - {138, 0}, - {139, 0}, - {0, 1}, -}; static state states_60[2] = { {1, arcs_60_0}, - {3, arcs_60_1}, + {2, arcs_60_1}, }; static arc arcs_61_0[1] = { - {140, 1}, -}; -static arc arcs_61_1[6] = { - {31, 0}, - {11, 0}, - {141, 0}, - {142, 0}, - {143, 0}, + {137, 1}, +}; +static arc arcs_61_1[2] = { + {138, 0}, {0, 1}, }; static state states_61[2] = { {1, arcs_61_0}, - {6, arcs_61_1}, -}; -static arc arcs_62_0[4] = { - {138, 1}, + {2, arcs_61_1}, +}; +static arc arcs_62_0[1] = { {139, 1}, +}; +static arc arcs_62_1[3] = { + {140, 0}, + {141, 0}, + {0, 1}, +}; +static state states_62[2] = { + {1, arcs_62_0}, + {3, arcs_62_1}, +}; +static arc arcs_63_0[1] = { + {142, 1}, +}; +static arc arcs_63_1[3] = { + {143, 0}, + {144, 0}, + {0, 1}, +}; +static state states_63[2] = { + {1, arcs_63_0}, + {3, arcs_63_1}, +}; +static arc arcs_64_0[1] = { + {145, 1}, +}; +static arc arcs_64_1[6] = { + {33, 0}, + {11, 0}, + {146, 0}, + {147, 0}, + {148, 0}, + {0, 1}, +}; +static state states_64[2] = { + {1, arcs_64_0}, + {6, arcs_64_1}, +}; +static arc arcs_65_0[4] = { + {143, 1}, {144, 1}, + {149, 1}, + {150, 2}, +}; +static arc arcs_65_1[1] = { {145, 2}, }; -static arc arcs_62_1[1] = { - {140, 2}, -}; -static arc arcs_62_2[1] = { +static arc arcs_65_2[1] = { {0, 2}, }; -static state states_62[3] = { - {4, arcs_62_0}, - {1, arcs_62_1}, - {1, arcs_62_2}, -}; -static arc arcs_63_0[1] = { - {146, 1}, -}; -static arc arcs_63_1[3] = { - {147, 1}, +static state states_65[3] = { + {4, arcs_65_0}, + {1, arcs_65_1}, + {1, arcs_65_2}, +}; +static arc arcs_66_0[1] = { + {151, 1}, +}; +static arc arcs_66_1[3] = { + {152, 1}, + {34, 2}, + {0, 1}, +}; +static arc arcs_66_2[1] = { + {145, 3}, +}; +static arc arcs_66_3[1] = { + {0, 3}, +}; +static state states_66[4] = { + {1, arcs_66_0}, + {3, arcs_66_1}, + {1, arcs_66_2}, + {1, arcs_66_3}, +}; +static arc arcs_67_0[10] = { + {13, 1}, + {154, 2}, + {156, 3}, + {23, 4}, + {159, 4}, + {160, 5}, + {84, 4}, + {161, 4}, + {162, 4}, + {163, 4}, +}; +static arc arcs_67_1[4] = { + {49, 6}, + {50, 6}, + {153, 6}, + {15, 4}, +}; +static arc arcs_67_2[2] = { + {153, 7}, + {155, 4}, +}; +static arc arcs_67_3[2] = { + {157, 8}, + {158, 4}, +}; +static arc arcs_67_4[1] = { + {0, 4}, +}; +static arc arcs_67_5[2] = { + {160, 5}, + {0, 5}, +}; +static arc arcs_67_6[1] = { + {15, 4}, +}; +static arc arcs_67_7[1] = { + {155, 4}, +}; +static arc arcs_67_8[1] = { + {158, 4}, +}; +static state states_67[9] = { + {10, arcs_67_0}, + {4, arcs_67_1}, + {2, arcs_67_2}, + {2, arcs_67_3}, + {1, arcs_67_4}, + {2, arcs_67_5}, + {1, arcs_67_6}, + {1, arcs_67_7}, + {1, arcs_67_8}, +}; +static arc arcs_68_0[2] = { + {26, 1}, + {51, 1}, +}; +static arc arcs_68_1[3] = { + {164, 2}, + {32, 3}, + {0, 1}, +}; +static arc arcs_68_2[1] = { + {0, 2}, +}; +static arc arcs_68_3[3] = { + {26, 4}, + {51, 4}, + {0, 3}, +}; +static arc arcs_68_4[2] = { + {32, 3}, + {0, 4}, +}; +static state states_68[5] = { + {2, arcs_68_0}, + {3, arcs_68_1}, + {1, arcs_68_2}, + {3, arcs_68_3}, + {2, arcs_68_4}, +}; +static arc arcs_69_0[3] = { + {13, 1}, + {154, 2}, + {83, 3}, +}; +static arc arcs_69_1[2] = { + {14, 4}, + {15, 5}, +}; +static arc arcs_69_2[1] = { + {165, 6}, +}; +static arc arcs_69_3[1] = { + {23, 5}, +}; +static arc arcs_69_4[1] = { + {15, 5}, +}; +static arc arcs_69_5[1] = { + {0, 5}, +}; +static arc arcs_69_6[1] = { + {155, 5}, +}; +static state states_69[7] = { + {3, arcs_69_0}, + {2, arcs_69_1}, + {1, arcs_69_2}, + {1, arcs_69_3}, + {1, arcs_69_4}, + {1, arcs_69_5}, + {1, arcs_69_6}, +}; +static arc arcs_70_0[1] = { + {166, 1}, +}; +static arc arcs_70_1[2] = { {32, 2}, {0, 1}, }; -static arc arcs_63_2[1] = { - {140, 3}, -}; -static arc arcs_63_3[1] = { +static arc arcs_70_2[2] = { + {166, 1}, + {0, 2}, +}; +static state states_70[3] = { + {1, arcs_70_0}, + {2, arcs_70_1}, + {2, arcs_70_2}, +}; +static arc arcs_71_0[2] = { + {26, 1}, + {27, 2}, +}; +static arc arcs_71_1[2] = { + {27, 2}, + {0, 1}, +}; +static arc arcs_71_2[3] = { + {26, 3}, + {167, 4}, + {0, 2}, +}; +static arc arcs_71_3[2] = { + {167, 4}, {0, 3}, }; -static state states_63[4] = { - {1, arcs_63_0}, - {3, arcs_63_1}, - {1, arcs_63_2}, - {1, arcs_63_3}, -}; -static arc arcs_64_0[10] = { - {13, 1}, - {149, 2}, - {151, 3}, - {21, 4}, - {154, 4}, - {155, 5}, - {80, 4}, - {156, 4}, - {157, 4}, - {158, 4}, -}; -static arc arcs_64_1[3] = { - {47, 6}, - {148, 6}, - {15, 4}, -}; -static arc arcs_64_2[2] = { - {148, 7}, - {150, 4}, -}; -static arc arcs_64_3[2] = { - {152, 8}, - {153, 4}, -}; -static arc arcs_64_4[1] = { +static arc arcs_71_4[1] = { {0, 4}, }; -static arc arcs_64_5[2] = { - {155, 5}, +static state states_71[5] = { + {2, arcs_71_0}, + {2, arcs_71_1}, + {3, arcs_71_2}, + {2, arcs_71_3}, + {1, arcs_71_4}, +}; +static arc arcs_72_0[1] = { + {27, 1}, +}; +static arc arcs_72_1[2] = { + {26, 2}, + {0, 1}, +}; +static arc arcs_72_2[1] = { + {0, 2}, +}; +static state states_72[3] = { + {1, arcs_72_0}, + {2, arcs_72_1}, + {1, arcs_72_2}, +}; +static arc arcs_73_0[2] = { + {109, 1}, + {51, 1}, +}; +static arc arcs_73_1[2] = { + {32, 2}, + {0, 1}, +}; +static arc arcs_73_2[3] = { + {109, 1}, + {51, 1}, + {0, 2}, +}; +static state states_73[3] = { + {2, arcs_73_0}, + {2, arcs_73_1}, + {3, arcs_73_2}, +}; +static arc arcs_74_0[1] = { + {26, 1}, +}; +static arc arcs_74_1[2] = { + {32, 2}, + {0, 1}, +}; +static arc arcs_74_2[2] = { + {26, 1}, + {0, 2}, +}; +static state states_74[3] = { + {1, arcs_74_0}, + {2, arcs_74_1}, + {2, arcs_74_2}, +}; +static arc arcs_75_0[1] = { + {26, 1}, +}; +static arc arcs_75_1[4] = { + {27, 2}, + {164, 3}, + {32, 4}, + {0, 1}, +}; +static arc arcs_75_2[1] = { + {26, 5}, +}; +static arc arcs_75_3[1] = { + {0, 3}, +}; +static arc arcs_75_4[2] = { + {26, 6}, + {0, 4}, +}; +static arc arcs_75_5[3] = { + {164, 3}, + {32, 7}, {0, 5}, }; -static arc arcs_64_6[1] = { - {15, 4}, -}; -static arc arcs_64_7[1] = { - {150, 4}, -}; -static arc arcs_64_8[1] = { - {153, 4}, -}; -static state states_64[9] = { - {10, arcs_64_0}, - {3, arcs_64_1}, - {2, arcs_64_2}, - {2, arcs_64_3}, - {1, arcs_64_4}, - {2, arcs_64_5}, - {1, arcs_64_6}, - {1, arcs_64_7}, - {1, arcs_64_8}, -}; -static arc arcs_65_0[2] = { - {24, 1}, - {48, 1}, -}; -static arc arcs_65_1[3] = { - {159, 2}, - {30, 3}, - {0, 1}, -}; -static arc arcs_65_2[1] = { - {0, 2}, -}; -static arc arcs_65_3[3] = { - {24, 4}, - {48, 4}, - {0, 3}, -}; -static arc arcs_65_4[2] = { - {30, 3}, - {0, 4}, -}; -static state states_65[5] = { - {2, arcs_65_0}, - {3, arcs_65_1}, - {1, arcs_65_2}, - {3, arcs_65_3}, - {2, arcs_65_4}, -}; -static arc arcs_66_0[3] = { - {13, 1}, - {149, 2}, - {79, 3}, -}; -static arc arcs_66_1[2] = { - {14, 4}, - {15, 5}, -}; -static arc arcs_66_2[1] = { - {160, 6}, -}; -static arc arcs_66_3[1] = { - {21, 5}, -}; -static arc arcs_66_4[1] = { - {15, 5}, -}; -static arc arcs_66_5[1] = { - {0, 5}, -}; -static arc arcs_66_6[1] = { - {150, 5}, -}; -static state states_66[7] = { - {3, arcs_66_0}, - {2, arcs_66_1}, - {1, arcs_66_2}, - {1, arcs_66_3}, - {1, arcs_66_4}, - {1, arcs_66_5}, - {1, arcs_66_6}, -}; -static arc arcs_67_0[1] = { - {161, 1}, -}; -static arc arcs_67_1[2] = { - {30, 2}, - {0, 1}, -}; -static arc arcs_67_2[2] = { - {161, 1}, - {0, 2}, -}; -static state states_67[3] = { - {1, arcs_67_0}, - {2, arcs_67_1}, - {2, arcs_67_2}, -}; -static arc arcs_68_0[2] = { - {24, 1}, - {25, 2}, -}; -static arc arcs_68_1[2] = { - {25, 2}, - {0, 1}, -}; -static arc arcs_68_2[3] = { - {24, 3}, - {162, 4}, - {0, 2}, -}; -static arc arcs_68_3[2] = { - {162, 4}, - {0, 3}, -}; -static arc arcs_68_4[1] = { - {0, 4}, -}; -static state states_68[5] = { - {2, arcs_68_0}, - {2, arcs_68_1}, - {3, arcs_68_2}, - {2, arcs_68_3}, - {1, arcs_68_4}, -}; -static arc arcs_69_0[1] = { - {25, 1}, -}; -static arc arcs_69_1[2] = { - {24, 2}, - {0, 1}, -}; -static arc arcs_69_2[1] = { - {0, 2}, -}; -static state states_69[3] = { - {1, arcs_69_0}, - {2, arcs_69_1}, - {1, arcs_69_2}, -}; -static arc arcs_70_0[2] = { - {104, 1}, - {48, 1}, -}; -static arc arcs_70_1[2] = { - {30, 2}, - {0, 1}, -}; -static arc arcs_70_2[3] = { - {104, 1}, - {48, 1}, - {0, 2}, -}; -static state states_70[3] = { - {2, arcs_70_0}, - {2, arcs_70_1}, - {3, arcs_70_2}, -}; -static arc arcs_71_0[1] = { - {24, 1}, -}; -static arc arcs_71_1[2] = { - {30, 2}, - {0, 1}, -}; -static arc arcs_71_2[2] = { - {24, 1}, - {0, 2}, -}; -static state states_71[3] = { - {1, arcs_71_0}, - {2, arcs_71_1}, - {2, arcs_71_2}, -}; -static arc arcs_72_0[1] = { - {24, 1}, -}; -static arc arcs_72_1[4] = { - {25, 2}, - {159, 3}, - {30, 4}, - {0, 1}, -}; -static arc arcs_72_2[1] = { - {24, 5}, -}; -static arc arcs_72_3[1] = { - {0, 3}, -}; -static arc arcs_72_4[2] = { - {24, 6}, - {0, 4}, -}; -static arc arcs_72_5[3] = { - {159, 3}, - {30, 7}, - {0, 5}, -}; -static arc arcs_72_6[2] = { - {30, 4}, +static arc arcs_75_6[2] = { + {32, 4}, {0, 6}, }; -static arc arcs_72_7[2] = { - {24, 8}, +static arc arcs_75_7[2] = { + {26, 8}, {0, 7}, }; -static arc arcs_72_8[1] = { - {25, 9}, -}; -static arc arcs_72_9[1] = { - {24, 10}, -}; -static arc arcs_72_10[2] = { - {30, 7}, +static arc arcs_75_8[1] = { + {27, 9}, +}; +static arc arcs_75_9[1] = { + {26, 10}, +}; +static arc arcs_75_10[2] = { + {32, 7}, {0, 10}, }; -static state states_72[11] = { - {1, arcs_72_0}, - {4, arcs_72_1}, - {1, arcs_72_2}, - {1, arcs_72_3}, - {2, arcs_72_4}, - {3, arcs_72_5}, - {2, arcs_72_6}, - {2, arcs_72_7}, - {1, arcs_72_8}, - {1, arcs_72_9}, - {2, arcs_72_10}, -}; -static arc arcs_73_0[1] = { - {163, 1}, -}; -static arc arcs_73_1[1] = { - {21, 2}, -}; -static arc arcs_73_2[2] = { +static state states_75[11] = { + {1, arcs_75_0}, + {4, arcs_75_1}, + {1, arcs_75_2}, + {1, arcs_75_3}, + {2, arcs_75_4}, + {3, arcs_75_5}, + {2, arcs_75_6}, + {2, arcs_75_7}, + {1, arcs_75_8}, + {1, arcs_75_9}, + {2, arcs_75_10}, +}; +static arc arcs_76_0[1] = { + {168, 1}, +}; +static arc arcs_76_1[1] = { + {23, 2}, +}; +static arc arcs_76_2[2] = { {13, 3}, - {25, 4}, -}; -static arc arcs_73_3[2] = { + {27, 4}, +}; +static arc arcs_76_3[2] = { {14, 5}, {15, 6}, }; -static arc arcs_73_4[1] = { - {26, 7}, -}; -static arc arcs_73_5[1] = { +static arc arcs_76_4[1] = { + {28, 7}, +}; +static arc arcs_76_5[1] = { {15, 6}, }; -static arc arcs_73_6[1] = { - {25, 4}, -}; -static arc arcs_73_7[1] = { +static arc arcs_76_6[1] = { + {27, 4}, +}; +static arc arcs_76_7[1] = { {0, 7}, }; -static state states_73[8] = { - {1, arcs_73_0}, - {1, arcs_73_1}, - {2, arcs_73_2}, - {2, arcs_73_3}, - {1, arcs_73_4}, - {1, arcs_73_5}, - {1, arcs_73_6}, - {1, arcs_73_7}, -}; -static arc arcs_74_0[3] = { - {164, 1}, - {31, 2}, - {32, 3}, -}; -static arc arcs_74_1[2] = { - {30, 4}, +static state states_76[8] = { + {1, arcs_76_0}, + {1, arcs_76_1}, + {2, arcs_76_2}, + {2, arcs_76_3}, + {1, arcs_76_4}, + {1, arcs_76_5}, + {1, arcs_76_6}, + {1, arcs_76_7}, +}; +static arc arcs_77_0[3] = { + {169, 1}, + {33, 2}, + {34, 3}, +}; +static arc arcs_77_1[2] = { + {32, 4}, {0, 1}, }; -static arc arcs_74_2[1] = { - {24, 5}, -}; -static arc arcs_74_3[1] = { - {24, 6}, -}; -static arc arcs_74_4[4] = { - {164, 1}, - {31, 2}, - {32, 3}, +static arc arcs_77_2[1] = { + {26, 5}, +}; +static arc arcs_77_3[1] = { + {26, 6}, +}; +static arc arcs_77_4[4] = { + {169, 1}, + {33, 2}, + {34, 3}, {0, 4}, }; -static arc arcs_74_5[2] = { - {30, 7}, +static arc arcs_77_5[2] = { + {32, 7}, {0, 5}, }; -static arc arcs_74_6[1] = { +static arc arcs_77_6[1] = { {0, 6}, }; -static arc arcs_74_7[2] = { - {164, 5}, - {32, 3}, -}; -static state states_74[8] = { - {3, arcs_74_0}, - {2, arcs_74_1}, - {1, arcs_74_2}, - {1, arcs_74_3}, - {4, arcs_74_4}, - {2, arcs_74_5}, - {1, arcs_74_6}, - {2, arcs_74_7}, -}; -static arc arcs_75_0[1] = { - {24, 1}, -}; -static arc arcs_75_1[3] = { - {159, 2}, - {29, 3}, - {0, 1}, -}; -static arc arcs_75_2[1] = { - {0, 2}, -}; -static arc arcs_75_3[1] = { - {24, 2}, -}; -static state states_75[4] = { - {1, arcs_75_0}, - {3, arcs_75_1}, - {1, arcs_75_2}, - {1, arcs_75_3}, -}; -static arc arcs_76_0[2] = { - {159, 1}, - {166, 1}, -}; -static arc arcs_76_1[1] = { - {0, 1}, -}; -static state states_76[2] = { - {2, arcs_76_0}, - {1, arcs_76_1}, -}; -static arc arcs_77_0[1] = { - {97, 1}, -}; -static arc arcs_77_1[1] = { - {63, 2}, -}; -static arc arcs_77_2[1] = { - {98, 3}, -}; -static arc arcs_77_3[1] = { - {108, 4}, -}; -static arc arcs_77_4[2] = { - {165, 5}, - {0, 4}, -}; -static arc arcs_77_5[1] = { - {0, 5}, -}; -static state states_77[6] = { - {1, arcs_77_0}, - {1, arcs_77_1}, +static arc arcs_77_7[2] = { + {169, 5}, + {34, 3}, +}; +static state states_77[8] = { + {3, arcs_77_0}, + {2, arcs_77_1}, {1, arcs_77_2}, {1, arcs_77_3}, - {2, arcs_77_4}, - {1, arcs_77_5}, + {4, arcs_77_4}, + {2, arcs_77_5}, + {1, arcs_77_6}, + {2, arcs_77_7}, }; static arc arcs_78_0[1] = { - {93, 1}, -}; -static arc arcs_78_1[1] = { - {110, 2}, -}; -static arc arcs_78_2[2] = { - {165, 3}, + {26, 1}, +}; +static arc arcs_78_1[3] = { + {164, 2}, + {31, 3}, + {0, 1}, +}; +static arc arcs_78_2[1] = { {0, 2}, }; static arc arcs_78_3[1] = { - {0, 3}, + {26, 2}, }; static state states_78[4] = { {1, arcs_78_0}, - {1, arcs_78_1}, - {2, arcs_78_2}, + {3, arcs_78_1}, + {1, arcs_78_2}, {1, arcs_78_3}, }; -static arc arcs_79_0[1] = { - {21, 1}, +static arc arcs_79_0[2] = { + {164, 1}, + {171, 1}, }; static arc arcs_79_1[1] = { {0, 1}, }; static state states_79[2] = { - {1, arcs_79_0}, + {2, arcs_79_0}, {1, arcs_79_1}, }; static arc arcs_80_0[1] = { - {168, 1}, -}; -static arc arcs_80_1[2] = { - {169, 2}, + {102, 1}, +}; +static arc arcs_80_1[1] = { + {66, 2}, +}; +static arc arcs_80_2[1] = { + {103, 3}, +}; +static arc arcs_80_3[1] = { + {113, 4}, +}; +static arc arcs_80_4[2] = { + {170, 5}, + {0, 4}, +}; +static arc arcs_80_5[1] = { + {0, 5}, +}; +static state states_80[6] = { + {1, arcs_80_0}, + {1, arcs_80_1}, + {1, arcs_80_2}, + {1, arcs_80_3}, + {2, arcs_80_4}, + {1, arcs_80_5}, +}; +static arc arcs_81_0[1] = { + {98, 1}, +}; +static arc arcs_81_1[1] = { + {115, 2}, +}; +static arc arcs_81_2[2] = { + {170, 3}, + {0, 2}, +}; +static arc arcs_81_3[1] = { + {0, 3}, +}; +static state states_81[4] = { + {1, arcs_81_0}, + {1, arcs_81_1}, + {2, arcs_81_2}, + {1, arcs_81_3}, +}; +static arc arcs_82_0[1] = { + {23, 1}, +}; +static arc arcs_82_1[1] = { {0, 1}, }; -static arc arcs_80_2[1] = { +static state states_82[2] = { + {1, arcs_82_0}, + {1, arcs_82_1}, +}; +static arc arcs_83_0[1] = { + {173, 1}, +}; +static arc arcs_83_1[1] = { + {26, 2}, +}; +static arc arcs_83_2[1] = { {0, 2}, }; -static state states_80[3] = { - {1, arcs_80_0}, - {2, arcs_80_1}, - {1, arcs_80_2}, -}; -static arc arcs_81_0[2] = { - {74, 1}, +static state states_83[3] = { + {1, arcs_83_0}, + {1, arcs_83_1}, + {1, arcs_83_2}, +}; +static arc arcs_84_0[1] = { + {174, 1}, +}; +static arc arcs_84_1[2] = { + {175, 2}, + {0, 1}, +}; +static arc arcs_84_2[1] = { + {0, 2}, +}; +static state states_84[3] = { + {1, arcs_84_0}, + {2, arcs_84_1}, + {1, arcs_84_2}, +}; +static arc arcs_85_0[2] = { + {78, 1}, {9, 2}, }; -static arc arcs_81_1[1] = { - {24, 2}, -}; -static arc arcs_81_2[1] = { +static arc arcs_85_1[1] = { + {26, 2}, +}; +static arc arcs_85_2[1] = { {0, 2}, }; -static state states_81[3] = { - {2, arcs_81_0}, - {1, arcs_81_1}, - {1, arcs_81_2}, -}; -static dfa dfas[82] = { +static state states_85[3] = { + {2, arcs_85_0}, + {1, arcs_85_1}, + {1, arcs_85_2}, +}; +static dfa dfas[86] = { {256, "single_input", 0, 3, states_0, - "\004\050\060\200\000\000\000\100\301\047\341\040\113\000\041\000\000\014\241\174\010\001"}, + "\004\050\340\000\002\000\000\000\012\174\022\016\144\011\040\004\000\200\041\224\017\141"}, {257, "file_input", 0, 2, states_1, - "\204\050\060\200\000\000\000\100\301\047\341\040\113\000\041\000\000\014\241\174\010\001"}, + "\204\050\340\000\002\000\000\000\012\174\022\016\144\011\040\004\000\200\041\224\017\141"}, {258, "eval_input", 0, 3, states_2, - "\000\040\040\000\000\000\000\000\000\000\001\000\000\000\041\000\000\014\241\174\000\000"}, + "\000\040\200\000\000\000\000\000\000\000\020\000\000\000\040\004\000\200\041\224\017\000"}, {259, "decorator", 0, 7, states_3, "\000\010\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"}, {260, "decorators", 0, 2, states_4, "\000\010\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"}, {261, "decorated", 0, 3, states_5, "\000\010\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"}, - {262, "funcdef", 0, 8, states_6, - "\000\000\020\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"}, - {263, "parameters", 0, 4, states_7, + {262, "async_funcdef", 0, 3, states_6, + "\000\000\040\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"}, + {263, "funcdef", 0, 8, states_7, + "\000\000\100\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"}, + {264, "parameters", 0, 4, states_8, "\000\040\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"}, - {264, "typedargslist", 0, 18, states_8, - "\000\000\040\200\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"}, - {265, "tfpdef", 0, 4, states_9, + {265, "typedargslist", 0, 18, states_9, + "\000\000\200\000\006\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"}, + {266, "tfpdef", 0, 4, states_10, + "\000\000\200\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"}, + {267, "varargslist", 0, 18, states_11, + "\000\000\200\000\006\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"}, + {268, "vfpdef", 0, 2, states_12, + "\000\000\200\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"}, + {269, "stmt", 0, 2, states_13, + "\000\050\340\000\002\000\000\000\012\174\022\016\144\011\040\004\000\200\041\224\017\141"}, + {270, "simple_stmt", 0, 4, states_14, + "\000\040\200\000\002\000\000\000\012\174\022\016\000\000\040\004\000\200\041\224\017\140"}, + {271, "small_stmt", 0, 2, states_15, + "\000\040\200\000\002\000\000\000\012\174\022\016\000\000\040\004\000\200\041\224\017\140"}, + {272, "expr_stmt", 0, 6, states_16, + "\000\040\200\000\002\000\000\000\000\000\020\000\000\000\040\004\000\200\041\224\017\000"}, + {273, "testlist_star_expr", 0, 3, states_17, + "\000\040\200\000\002\000\000\000\000\000\020\000\000\000\040\004\000\200\041\224\017\000"}, + {274, "augassign", 0, 2, states_18, + "\000\000\000\000\000\000\360\377\001\000\000\000\000\000\000\000\000\000\000\000\000\000"}, + {275, "del_stmt", 0, 3, states_19, + "\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000"}, + {276, "pass_stmt", 0, 2, states_20, + "\000\000\000\000\000\000\000\000\010\000\000\000\000\000\000\000\000\000\000\000\000\000"}, + {277, "flow_stmt", 0, 2, states_21, + "\000\000\000\000\000\000\000\000\000\074\000\000\000\000\000\000\000\000\000\000\000\140"}, + {278, "break_stmt", 0, 2, states_22, + "\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000"}, + {279, "continue_stmt", 0, 2, states_23, + "\000\000\000\000\000\000\000\000\000\010\000\000\000\000\000\000\000\000\000\000\000\000"}, + {280, "return_stmt", 0, 3, states_24, + "\000\000\000\000\000\000\000\000\000\020\000\000\000\000\000\000\000\000\000\000\000\000"}, + {281, "await_stmt", 0, 2, states_25, + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\040"}, + {282, "yield_stmt", 0, 2, states_26, + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\100"}, + {283, "raise_stmt", 0, 5, states_27, + "\000\000\000\000\000\000\000\000\000\040\000\000\000\000\000\000\000\000\000\000\000\000"}, + {284, "import_stmt", 0, 2, states_28, + "\000\000\000\000\000\000\000\000\000\100\002\000\000\000\000\000\000\000\000\000\000\000"}, + {285, "import_name", 0, 3, states_29, + "\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000"}, + {286, "import_from", 0, 8, states_30, + "\000\000\000\000\000\000\000\000\000\100\000\000\000\000\000\000\000\000\000\000\000\000"}, + {287, "import_as_name", 0, 4, states_31, + "\000\000\200\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"}, + {288, "dotted_as_name", 0, 4, states_32, + "\000\000\200\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"}, + {289, "import_as_names", 0, 3, states_33, + "\000\000\200\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"}, + {290, "dotted_as_names", 0, 2, states_34, + "\000\000\200\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"}, + {291, "dotted_name", 0, 2, states_35, + "\000\000\200\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"}, + {292, "global_stmt", 0, 3, states_36, + "\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000"}, + {293, "nonlocal_stmt", 0, 3, states_37, + "\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000"}, + {294, "assert_stmt", 0, 5, states_38, + "\000\000\000\000\000\000\000\000\000\000\000\010\000\000\000\000\000\000\000\000\000\000"}, + {295, "compound_stmt", 0, 2, states_39, + "\000\010\140\000\000\000\000\000\000\000\000\000\144\011\000\000\000\000\000\000\000\001"}, + {296, "async_stmt", 0, 3, states_40, "\000\000\040\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"}, - {266, "varargslist", 0, 18, states_10, - "\000\000\040\200\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"}, - {267, "vfpdef", 0, 2, states_11, - "\000\000\040\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"}, - {268, "stmt", 0, 2, states_12, - "\000\050\060\200\000\000\000\100\301\047\341\040\113\000\041\000\000\014\241\174\010\001"}, - {269, "simple_stmt", 0, 4, states_13, - "\000\040\040\200\000\000\000\100\301\047\341\000\000\000\041\000\000\014\241\174\000\001"}, - {270, "small_stmt", 0, 2, states_14, - "\000\040\040\200\000\000\000\100\301\047\341\000\000\000\041\000\000\014\241\174\000\001"}, - {271, "expr_stmt", 0, 6, states_15, - "\000\040\040\200\000\000\000\000\000\000\001\000\000\000\041\000\000\014\241\174\000\000"}, - {272, "testlist_star_expr", 0, 3, states_16, - "\000\040\040\200\000\000\000\000\000\000\001\000\000\000\041\000\000\014\241\174\000\000"}, - {273, "augassign", 0, 2, states_17, - "\000\000\000\000\000\000\376\077\000\000\000\000\000\000\000\000\000\000\000\000\000\000"}, - {274, "del_stmt", 0, 3, states_18, - "\000\000\000\000\000\000\000\100\000\000\000\000\000\000\000\000\000\000\000\000\000\000"}, - {275, "pass_stmt", 0, 2, states_19, - "\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000"}, - {276, "flow_stmt", 0, 2, states_20, - "\000\000\000\000\000\000\000\000\300\003\000\000\000\000\000\000\000\000\000\000\000\001"}, - {277, "break_stmt", 0, 2, states_21, - "\000\000\000\000\000\000\000\000\100\000\000\000\000\000\000\000\000\000\000\000\000\000"}, - {278, "continue_stmt", 0, 2, states_22, - "\000\000\000\000\000\000\000\000\200\000\000\000\000\000\000\000\000\000\000\000\000\000"}, - {279, "return_stmt", 0, 3, states_23, - "\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000"}, - {280, "yield_stmt", 0, 2, states_24, + {297, "if_stmt", 0, 8, states_41, + "\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000"}, + {298, "while_stmt", 0, 8, states_42, + "\000\000\000\000\000\000\000\000\000\000\000\000\040\000\000\000\000\000\000\000\000\000"}, + {299, "for_stmt", 0, 10, states_43, + "\000\000\000\000\000\000\000\000\000\000\000\000\100\000\000\000\000\000\000\000\000\000"}, + {300, "try_stmt", 0, 13, states_44, + "\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000"}, + {301, "with_stmt", 0, 5, states_45, + "\000\000\000\000\000\000\000\000\000\000\000\000\000\010\000\000\000\000\000\000\000\000"}, + {302, "with_item", 0, 4, states_46, + "\000\040\200\000\000\000\000\000\000\000\020\000\000\000\040\004\000\200\041\224\017\000"}, + {303, "except_clause", 0, 5, states_47, + "\000\000\000\000\000\000\000\000\000\000\000\000\000\100\000\000\000\000\000\000\000\000"}, + {304, "suite", 0, 5, states_48, + "\004\040\200\000\002\000\000\000\012\174\022\016\000\000\040\004\000\200\041\224\017\140"}, + {305, "test", 0, 6, states_49, + "\000\040\200\000\000\000\000\000\000\000\020\000\000\000\040\004\000\200\041\224\017\000"}, + {306, "test_nocond", 0, 2, states_50, + "\000\040\200\000\000\000\000\000\000\000\020\000\000\000\040\004\000\200\041\224\017\000"}, + {307, "lambdef", 0, 5, states_51, + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\040\000\000\000\000\000\000\000"}, + {308, "lambdef_nocond", 0, 5, states_52, + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\040\000\000\000\000\000\000\000"}, + {309, "or_test", 0, 2, states_53, + "\000\040\200\000\000\000\000\000\000\000\020\000\000\000\000\004\000\200\041\224\017\000"}, + {310, "and_test", 0, 2, states_54, + "\000\040\200\000\000\000\000\000\000\000\020\000\000\000\000\004\000\200\041\224\017\000"}, + {311, "not_test", 0, 3, states_55, + "\000\040\200\000\000\000\000\000\000\000\020\000\000\000\000\004\000\200\041\224\017\000"}, + {312, "comparison", 0, 2, states_56, + "\000\040\200\000\000\000\000\000\000\000\020\000\000\000\000\000\000\200\041\224\017\000"}, + {313, "comp_op", 0, 4, states_57, + "\000\000\000\000\000\000\000\000\000\000\000\000\200\000\000\344\037\000\000\000\000\000"}, + {314, "star_expr", 0, 3, states_58, + "\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"}, + {315, "expr", 0, 2, states_59, + "\000\040\200\000\000\000\000\000\000\000\020\000\000\000\000\000\000\200\041\224\017\000"}, + {316, "xor_expr", 0, 2, states_60, + "\000\040\200\000\000\000\000\000\000\000\020\000\000\000\000\000\000\200\041\224\017\000"}, + {317, "and_expr", 0, 2, states_61, + "\000\040\200\000\000\000\000\000\000\000\020\000\000\000\000\000\000\200\041\224\017\000"}, + {318, "shift_expr", 0, 2, states_62, + "\000\040\200\000\000\000\000\000\000\000\020\000\000\000\000\000\000\200\041\224\017\000"}, + {319, "arith_expr", 0, 2, states_63, + "\000\040\200\000\000\000\000\000\000\000\020\000\000\000\000\000\000\200\041\224\017\000"}, + {320, "term", 0, 2, states_64, + "\000\040\200\000\000\000\000\000\000\000\020\000\000\000\000\000\000\200\041\224\017\000"}, + {321, "factor", 0, 3, states_65, + "\000\040\200\000\000\000\000\000\000\000\020\000\000\000\000\000\000\200\041\224\017\000"}, + {322, "power", 0, 4, states_66, + "\000\040\200\000\000\000\000\000\000\000\020\000\000\000\000\000\000\000\000\224\017\000"}, + {323, "atom", 0, 9, states_67, + "\000\040\200\000\000\000\000\000\000\000\020\000\000\000\000\000\000\000\000\224\017\000"}, + {324, "testlist_comp", 0, 5, states_68, + "\000\040\200\000\002\000\000\000\000\000\020\000\000\000\040\004\000\200\041\224\017\000"}, + {325, "trailer", 0, 7, states_69, + "\000\040\000\000\000\000\000\000\000\000\010\000\000\000\000\000\000\000\000\004\000\000"}, + {326, "subscriptlist", 0, 3, states_70, + "\000\040\200\010\000\000\000\000\000\000\020\000\000\000\040\004\000\200\041\224\017\000"}, + {327, "subscript", 0, 5, states_71, + "\000\040\200\010\000\000\000\000\000\000\020\000\000\000\040\004\000\200\041\224\017\000"}, + {328, "sliceop", 0, 3, states_72, + "\000\000\000\010\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"}, + {329, "exprlist", 0, 3, states_73, + "\000\040\200\000\002\000\000\000\000\000\020\000\000\000\000\000\000\200\041\224\017\000"}, + {330, "testlist", 0, 3, states_74, + "\000\040\200\000\000\000\000\000\000\000\020\000\000\000\040\004\000\200\041\224\017\000"}, + {331, "dictorsetmaker", 0, 11, states_75, + "\000\040\200\000\000\000\000\000\000\000\020\000\000\000\040\004\000\200\041\224\017\000"}, + {332, "classdef", 0, 8, states_76, "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001"}, - {281, "raise_stmt", 0, 5, states_25, - "\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000"}, - {282, "import_stmt", 0, 2, states_26, - "\000\000\000\000\000\000\000\000\000\044\000\000\000\000\000\000\000\000\000\000\000\000"}, - {283, "import_name", 0, 3, states_27, - "\000\000\000\000\000\000\000\000\000\040\000\000\000\000\000\000\000\000\000\000\000\000"}, - {284, "import_from", 0, 8, states_28, - "\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000"}, - {285, "import_as_name", 0, 4, states_29, - "\000\000\040\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"}, - {286, "dotted_as_name", 0, 4, states_30, - "\000\000\040\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"}, - {287, "import_as_names", 0, 3, states_31, - "\000\000\040\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"}, - {288, "dotted_as_names", 0, 2, states_32, - "\000\000\040\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"}, - {289, "dotted_name", 0, 2, states_33, - "\000\000\040\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"}, - {290, "global_stmt", 0, 3, states_34, - "\000\000\000\000\000\000\000\000\000\000\040\000\000\000\000\000\000\000\000\000\000\000"}, - {291, "nonlocal_stmt", 0, 3, states_35, - "\000\000\000\000\000\000\000\000\000\000\100\000\000\000\000\000\000\000\000\000\000\000"}, - {292, "assert_stmt", 0, 5, states_36, - "\000\000\000\000\000\000\000\000\000\000\200\000\000\000\000\000\000\000\000\000\000\000"}, - {293, "compound_stmt", 0, 2, states_37, - "\000\010\020\000\000\000\000\000\000\000\000\040\113\000\000\000\000\000\000\000\010\000"}, - {294, "if_stmt", 0, 8, states_38, - "\000\000\000\000\000\000\000\000\000\000\000\040\000\000\000\000\000\000\000\000\000\000"}, - {295, "while_stmt", 0, 8, states_39, - "\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000"}, - {296, "for_stmt", 0, 10, states_40, - "\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000"}, - {297, "try_stmt", 0, 13, states_41, - "\000\000\000\000\000\000\000\000\000\000\000\000\010\000\000\000\000\000\000\000\000\000"}, - {298, "with_stmt", 0, 5, states_42, + {333, "arglist", 0, 8, states_77, + "\000\040\200\000\006\000\000\000\000\000\020\000\000\000\040\004\000\200\041\224\017\000"}, + {334, "argument", 0, 4, states_78, + "\000\040\200\000\000\000\000\000\000\000\020\000\000\000\040\004\000\200\041\224\017\000"}, + {335, "comp_iter", 0, 2, states_79, + "\000\000\000\000\000\000\000\000\000\000\000\000\104\000\000\000\000\000\000\000\000\000"}, + {336, "comp_for", 0, 6, states_80, "\000\000\000\000\000\000\000\000\000\000\000\000\100\000\000\000\000\000\000\000\000\000"}, - {299, "with_item", 0, 4, states_43, - "\000\040\040\000\000\000\000\000\000\000\001\000\000\000\041\000\000\014\241\174\000\000"}, - {300, "except_clause", 0, 5, states_44, - "\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000"}, - {301, "suite", 0, 5, states_45, - "\004\040\040\200\000\000\000\100\301\047\341\000\000\000\041\000\000\014\241\174\000\001"}, - {302, "test", 0, 6, states_46, - "\000\040\040\000\000\000\000\000\000\000\001\000\000\000\041\000\000\014\241\174\000\000"}, - {303, "test_nocond", 0, 2, states_47, - "\000\040\040\000\000\000\000\000\000\000\001\000\000\000\041\000\000\014\241\174\000\000"}, - {304, "lambdef", 0, 5, states_48, - "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000"}, - {305, "lambdef_nocond", 0, 5, states_49, - "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000"}, - {306, "or_test", 0, 2, states_50, - "\000\040\040\000\000\000\000\000\000\000\001\000\000\000\040\000\000\014\241\174\000\000"}, - {307, "and_test", 0, 2, states_51, - "\000\040\040\000\000\000\000\000\000\000\001\000\000\000\040\000\000\014\241\174\000\000"}, - {308, "not_test", 0, 3, states_52, - "\000\040\040\000\000\000\000\000\000\000\001\000\000\000\040\000\000\014\241\174\000\000"}, - {309, "comparison", 0, 2, states_53, - "\000\040\040\000\000\000\000\000\000\000\001\000\000\000\000\000\000\014\241\174\000\000"}, - {310, "comp_op", 0, 4, states_54, - "\000\000\000\000\000\000\000\000\000\000\000\000\004\000\040\377\000\000\000\000\000\000"}, - {311, "star_expr", 0, 3, states_55, - "\000\000\000\200\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"}, - {312, "expr", 0, 2, states_56, - "\000\040\040\000\000\000\000\000\000\000\001\000\000\000\000\000\000\014\241\174\000\000"}, - {313, "xor_expr", 0, 2, states_57, - "\000\040\040\000\000\000\000\000\000\000\001\000\000\000\000\000\000\014\241\174\000\000"}, - {314, "and_expr", 0, 2, states_58, - "\000\040\040\000\000\000\000\000\000\000\001\000\000\000\000\000\000\014\241\174\000\000"}, - {315, "shift_expr", 0, 2, states_59, - "\000\040\040\000\000\000\000\000\000\000\001\000\000\000\000\000\000\014\241\174\000\000"}, - {316, "arith_expr", 0, 2, states_60, - "\000\040\040\000\000\000\000\000\000\000\001\000\000\000\000\000\000\014\241\174\000\000"}, - {317, "term", 0, 2, states_61, - "\000\040\040\000\000\000\000\000\000\000\001\000\000\000\000\000\000\014\241\174\000\000"}, - {318, "factor", 0, 3, states_62, - "\000\040\040\000\000\000\000\000\000\000\001\000\000\000\000\000\000\014\241\174\000\000"}, - {319, "power", 0, 4, states_63, - "\000\040\040\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\240\174\000\000"}, - {320, "atom", 0, 9, states_64, - "\000\040\040\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\240\174\000\000"}, - {321, "testlist_comp", 0, 5, states_65, - "\000\040\040\200\000\000\000\000\000\000\001\000\000\000\041\000\000\014\241\174\000\000"}, - {322, "trailer", 0, 7, states_66, - "\000\040\000\000\000\000\000\000\000\200\000\000\000\000\000\000\000\000\040\000\000\000"}, - {323, "subscriptlist", 0, 3, states_67, - "\000\040\040\002\000\000\000\000\000\000\001\000\000\000\041\000\000\014\241\174\000\000"}, - {324, "subscript", 0, 5, states_68, - "\000\040\040\002\000\000\000\000\000\000\001\000\000\000\041\000\000\014\241\174\000\000"}, - {325, "sliceop", 0, 3, states_69, - "\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"}, - {326, "exprlist", 0, 3, states_70, - "\000\040\040\200\000\000\000\000\000\000\001\000\000\000\000\000\000\014\241\174\000\000"}, - {327, "testlist", 0, 3, states_71, - "\000\040\040\000\000\000\000\000\000\000\001\000\000\000\041\000\000\014\241\174\000\000"}, - {328, "dictorsetmaker", 0, 11, states_72, - "\000\040\040\000\000\000\000\000\000\000\001\000\000\000\041\000\000\014\241\174\000\000"}, - {329, "classdef", 0, 8, states_73, - "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\010\000"}, - {330, "arglist", 0, 8, states_74, - "\000\040\040\200\001\000\000\000\000\000\001\000\000\000\041\000\000\014\241\174\000\000"}, - {331, "argument", 0, 4, states_75, - "\000\040\040\000\000\000\000\000\000\000\001\000\000\000\041\000\000\014\241\174\000\000"}, - {332, "comp_iter", 0, 2, states_76, - "\000\000\000\000\000\000\000\000\000\000\000\040\002\000\000\000\000\000\000\000\000\000"}, - {333, "comp_for", 0, 6, states_77, - "\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000"}, - {334, "comp_if", 0, 4, states_78, - "\000\000\000\000\000\000\000\000\000\000\000\040\000\000\000\000\000\000\000\000\000\000"}, - {335, "encoding_decl", 0, 2, states_79, - "\000\000\040\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"}, - {336, "yield_expr", 0, 3, states_80, - "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001"}, - {337, "yield_arg", 0, 3, states_81, - "\000\040\040\000\000\000\000\000\000\004\001\000\000\000\041\000\000\014\241\174\000\000"}, -}; -static label labels[170] = { + {337, "comp_if", 0, 4, states_81, + "\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000"}, + {338, "encoding_decl", 0, 2, states_82, + "\000\000\200\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"}, + {339, "await_expr", 0, 3, states_83, + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\040"}, + {340, "yield_expr", 0, 3, states_84, + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\100"}, + {341, "yield_arg", 0, 3, states_85, + "\000\040\200\000\000\000\000\000\000\100\020\000\000\000\040\004\000\200\041\224\017\000"}, +}; +static label labels[176] = { {0, "EMPTY"}, {256, 0}, {4, 0}, + {270, 0}, + {295, 0}, + {257, 0}, {269, 0}, - {293, 0}, - {257, 0}, - {268, 0}, {0, 0}, {258, 0}, - {327, 0}, + {330, 0}, {259, 0}, {49, 0}, - {289, 0}, + {291, 0}, {7, 0}, - {330, 0}, + {333, 0}, {8, 0}, {260, 0}, {261, 0}, - {329, 0}, + {332, 0}, + {263, 0}, {262, 0}, + {55, 0}, {1, "def"}, {1, 0}, - {263, 0}, + {264, 0}, {51, 0}, - {302, 0}, + {305, 0}, {11, 0}, - {301, 0}, - {264, 0}, + {304, 0}, {265, 0}, + {266, 0}, {22, 0}, {12, 0}, {16, 0}, {35, 0}, - {266, 0}, {267, 0}, - {270, 0}, + {268, 0}, + {271, 0}, {13, 0}, - {271, 0}, - {274, 0}, + {272, 0}, {275, 0}, {276, 0}, - {282, 0}, - {290, 0}, - {291, 0}, + {277, 0}, + {284, 0}, {292, 0}, - {272, 0}, + {293, 0}, + {294, 0}, {273, 0}, - {336, 0}, - {311, 0}, + {274, 0}, + {340, 0}, + {339, 0}, + {314, 0}, {36, 0}, {37, 0}, {38, 0}, @@ -2049,36 +2120,38 @@ {46, 0}, {48, 0}, {1, "del"}, - {326, 0}, + {329, 0}, {1, "pass"}, - {277, 0}, {278, 0}, {279, 0}, + {280, 0}, + {283, 0}, + {282, 0}, {281, 0}, - {280, 0}, {1, "break"}, {1, "continue"}, {1, "return"}, {1, "raise"}, {1, "from"}, - {283, 0}, - {284, 0}, + {285, 0}, + {286, 0}, {1, "import"}, - {288, 0}, + {290, 0}, {23, 0}, {52, 0}, + {289, 0}, {287, 0}, - {285, 0}, {1, "as"}, - {286, 0}, + {288, 0}, {1, "global"}, {1, "nonlocal"}, {1, "assert"}, - {294, 0}, - {295, 0}, - {296, 0}, {297, 0}, {298, 0}, + {299, 0}, + {300, 0}, + {301, 0}, + {296, 0}, {1, "if"}, {1, "elif"}, {1, "else"}, @@ -2086,26 +2159,26 @@ {1, "for"}, {1, "in"}, {1, "try"}, - {300, 0}, + {303, 0}, {1, "finally"}, {1, "with"}, - {299, 0}, - {312, 0}, + {302, 0}, + {315, 0}, {1, "except"}, {5, 0}, {6, 0}, + {309, 0}, + {307, 0}, {306, 0}, - {304, 0}, - {303, 0}, - {305, 0}, + {308, 0}, {1, "lambda"}, - {307, 0}, + {310, 0}, {1, "or"}, - {308, 0}, + {311, 0}, {1, "and"}, {1, "not"}, - {309, 0}, - {310, 0}, + {312, 0}, + {313, 0}, {20, 0}, {21, 0}, {27, 0}, @@ -2114,52 +2187,53 @@ {28, 0}, {28, 0}, {1, "is"}, - {313, 0}, + {316, 0}, {18, 0}, - {314, 0}, + {317, 0}, {32, 0}, - {315, 0}, + {318, 0}, {19, 0}, - {316, 0}, + {319, 0}, {33, 0}, {34, 0}, - {317, 0}, + {320, 0}, {14, 0}, {15, 0}, - {318, 0}, + {321, 0}, {17, 0}, {24, 0}, {47, 0}, {31, 0}, - {319, 0}, - {320, 0}, {322, 0}, - {321, 0}, + {323, 0}, + {325, 0}, + {324, 0}, {9, 0}, {10, 0}, {25, 0}, - {328, 0}, + {331, 0}, {26, 0}, {2, 0}, {3, 0}, {1, "None"}, {1, "True"}, {1, "False"}, - {333, 0}, - {323, 0}, - {324, 0}, - {325, 0}, + {336, 0}, + {326, 0}, + {327, 0}, + {328, 0}, {1, "class"}, - {331, 0}, - {332, 0}, {334, 0}, {335, 0}, + {337, 0}, + {338, 0}, + {54, 0}, {1, "yield"}, - {337, 0}, + {341, 0}, }; grammar _PyParser_Grammar = { - 82, + 86, dfas, - {170, labels}, + {176, labels}, 256 }; diff -r ccac513ee610 Python/importlib.h --- a/Python/importlib.h Mon Apr 20 21:05:23 2015 +0200 +++ b/Python/importlib.h Mon Apr 20 15:54:06 2015 -0400 @@ -259,2277 +259,2301 @@ 97,116,104,95,105,115,100,105,114,92,0,0,0,115,6,0, 0,0,0,2,6,1,12,1,114,46,0,0,0,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,0,67,0,0,0,115,193,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, + 66,124,2,0,100,2,0,64,131,3,0,125,4,0,121,61, 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,41,5,122,162, - 66,101,115,116,45,101,102,102,111,114,116,32,102,117,110,99, - 116,105,111,110,32,116,111,32,119,114,105,116,101,32,100,97, - 116,97,32,116,111,32,97,32,112,97,116,104,32,97,116,111, - 109,105,99,97,108,108,121,46,10,32,32,32,32,66,101,32, - 112,114,101,112,97,114,101,100,32,116,111,32,104,97,110,100, - 108,101,32,97,32,70,105,108,101,69,120,105,115,116,115,69, - 114,114,111,114,32,105,102,32,99,111,110,99,117,114,114,101, - 110,116,32,119,114,105,116,105,110,103,32,111,102,32,116,104, - 101,10,32,32,32,32,116,101,109,112,111,114,97,114,121,32, - 102,105,108,101,32,105,115,32,97,116,116,101,109,112,116,101, - 100,46,122,5,123,125,46,123,125,105,182,1,0,0,90,2, - 119,98,78,41,13,218,6,102,111,114,109,97,116,218,2,105, - 100,114,3,0,0,0,90,4,111,112,101,110,90,6,79,95, - 69,88,67,76,90,7,79,95,67,82,69,65,84,90,8,79, - 95,87,82,79,78,76,89,218,3,95,105,111,218,6,70,105, - 108,101,73,79,218,5,119,114,105,116,101,218,7,114,101,112, - 108,97,99,101,114,40,0,0,0,90,6,117,110,108,105,110, - 107,41,6,114,35,0,0,0,218,4,100,97,116,97,114,42, - 0,0,0,90,8,112,97,116,104,95,116,109,112,90,2,102, - 100,218,4,102,105,108,101,114,4,0,0,0,114,4,0,0, - 0,114,5,0,0,0,218,13,95,119,114,105,116,101,95,97, - 116,111,109,105,99,99,0,0,0,115,26,0,0,0,0,5, - 24,1,9,1,33,1,3,3,21,1,19,1,20,1,13,1, - 3,1,17,1,13,1,5,1,114,55,0,0,0,99,2,0, - 0,0,0,0,0,0,3,0,0,0,7,0,0,0,67,0, - 0,0,115,92,0,0,0,120,66,0,100,1,0,100,2,0, - 100,3,0,100,4,0,103,4,0,68,93,46,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,87,124,0,0,106, - 3,0,106,4,0,124,1,0,106,3,0,131,1,0,1,100, - 5,0,83,41,6,122,47,83,105,109,112,108,101,32,115,117, - 98,115,116,105,116,117,116,101,32,102,111,114,32,102,117,110, - 99,116,111,111,108,115,46,117,112,100,97,116,101,95,119,114, - 97,112,112,101,114,46,218,10,95,95,109,111,100,117,108,101, - 95,95,218,8,95,95,110,97,109,101,95,95,218,12,95,95, - 113,117,97,108,110,97,109,101,95,95,218,7,95,95,100,111, - 99,95,95,78,41,5,218,7,104,97,115,97,116,116,114,218, - 7,115,101,116,97,116,116,114,218,7,103,101,116,97,116,116, - 114,218,8,95,95,100,105,99,116,95,95,218,6,117,112,100, - 97,116,101,41,3,90,3,110,101,119,90,3,111,108,100,114, - 52,0,0,0,114,4,0,0,0,114,4,0,0,0,114,5, - 0,0,0,218,5,95,119,114,97,112,121,0,0,0,115,8, - 0,0,0,0,2,25,1,15,1,29,1,114,65,0,0,0, - 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,41,1,78,41,2,218, - 4,116,121,112,101,114,7,0,0,0,41,1,218,4,110,97, - 109,101,114,4,0,0,0,114,4,0,0,0,114,5,0,0, - 0,218,11,95,110,101,119,95,109,111,100,117,108,101,129,0, - 0,0,115,2,0,0,0,0,1,114,68,0,0,0,99,0, + 1,0,1,87,100,4,0,81,82,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,188,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,180,0,1,1,1,89,110,1,0, + 88,130,0,0,89,110,1,0,88,100,4,0,83,41,5,122, + 162,66,101,115,116,45,101,102,102,111,114,116,32,102,117,110, + 99,116,105,111,110,32,116,111,32,119,114,105,116,101,32,100, + 97,116,97,32,116,111,32,97,32,112,97,116,104,32,97,116, + 111,109,105,99,97,108,108,121,46,10,32,32,32,32,66,101, + 32,112,114,101,112,97,114,101,100,32,116,111,32,104,97,110, + 100,108,101,32,97,32,70,105,108,101,69,120,105,115,116,115, + 69,114,114,111,114,32,105,102,32,99,111,110,99,117,114,114, + 101,110,116,32,119,114,105,116,105,110,103,32,111,102,32,116, + 104,101,10,32,32,32,32,116,101,109,112,111,114,97,114,121, + 32,102,105,108,101,32,105,115,32,97,116,116,101,109,112,116, + 101,100,46,122,5,123,125,46,123,125,105,182,1,0,0,90, + 2,119,98,78,41,13,218,6,102,111,114,109,97,116,218,2, + 105,100,114,3,0,0,0,90,4,111,112,101,110,90,6,79, + 95,69,88,67,76,90,7,79,95,67,82,69,65,84,90,8, + 79,95,87,82,79,78,76,89,218,3,95,105,111,218,6,70, + 105,108,101,73,79,218,5,119,114,105,116,101,218,7,114,101, + 112,108,97,99,101,114,40,0,0,0,90,6,117,110,108,105, + 110,107,41,6,114,35,0,0,0,218,4,100,97,116,97,114, + 42,0,0,0,90,8,112,97,116,104,95,116,109,112,90,2, + 102,100,218,4,102,105,108,101,114,4,0,0,0,114,4,0, + 0,0,114,5,0,0,0,218,13,95,119,114,105,116,101,95, + 97,116,111,109,105,99,99,0,0,0,115,26,0,0,0,0, + 5,24,1,9,1,33,1,3,3,21,1,20,1,20,1,13, + 1,3,1,17,1,13,1,5,1,114,55,0,0,0,99,2, + 0,0,0,0,0,0,0,3,0,0,0,7,0,0,0,67, + 0,0,0,115,92,0,0,0,120,66,0,100,1,0,100,2, + 0,100,3,0,100,4,0,103,4,0,68,93,46,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,87,124,0,0, + 106,3,0,106,4,0,124,1,0,106,3,0,131,1,0,1, + 100,5,0,83,41,6,122,47,83,105,109,112,108,101,32,115, + 117,98,115,116,105,116,117,116,101,32,102,111,114,32,102,117, + 110,99,116,111,111,108,115,46,117,112,100,97,116,101,95,119, + 114,97,112,112,101,114,46,218,10,95,95,109,111,100,117,108, + 101,95,95,218,8,95,95,110,97,109,101,95,95,218,12,95, + 95,113,117,97,108,110,97,109,101,95,95,218,7,95,95,100, + 111,99,95,95,78,41,5,218,7,104,97,115,97,116,116,114, + 218,7,115,101,116,97,116,116,114,218,7,103,101,116,97,116, + 116,114,218,8,95,95,100,105,99,116,95,95,218,6,117,112, + 100,97,116,101,41,3,90,3,110,101,119,90,3,111,108,100, + 114,52,0,0,0,114,4,0,0,0,114,4,0,0,0,114, + 5,0,0,0,218,5,95,119,114,97,112,121,0,0,0,115, + 8,0,0,0,0,2,25,1,15,1,29,1,114,65,0,0, + 0,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,41,1,78,41,2, + 218,4,116,121,112,101,114,7,0,0,0,41,1,218,4,110, + 97,109,101,114,4,0,0,0,114,4,0,0,0,114,5,0, + 0,0,218,11,95,110,101,119,95,109,111,100,117,108,101,129, + 0,0,0,115,2,0,0,0,0,1,114,68,0,0,0,99, + 0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0, + 64,0,0,0,115,58,0,0,0,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,41,9,218,13,95,77,97,110,97,103,101,82,101, + 108,111,97,100,122,63,77,97,110,97,103,101,115,32,116,104, + 101,32,112,111,115,115,105,98,108,101,32,99,108,101,97,110, + 45,117,112,32,111,102,32,115,121,115,46,109,111,100,117,108, + 101,115,32,102,111,114,32,108,111,97,100,95,109,111,100,117, + 108,101,40,41,46,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, + 1,0,124,0,0,95,0,0,100,0,0,83,41,1,78,41, + 1,218,5,95,110,97,109,101,41,2,218,4,115,101,108,102, + 114,67,0,0,0,114,4,0,0,0,114,4,0,0,0,114, + 5,0,0,0,218,8,95,95,105,110,105,116,95,95,141,0, + 0,0,115,2,0,0,0,0,1,122,22,95,77,97,110,97, + 103,101,82,101,108,111,97,100,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,25,0,0,0,124,0,0,106,0, + 0,116,1,0,106,2,0,107,6,0,124,0,0,95,3,0, + 100,0,0,83,41,1,78,41,4,114,70,0,0,0,114,7, + 0,0,0,218,7,109,111,100,117,108,101,115,218,10,95,105, + 115,95,114,101,108,111,97,100,41,1,114,71,0,0,0,114, + 4,0,0,0,114,4,0,0,0,114,5,0,0,0,218,9, + 95,95,101,110,116,101,114,95,95,144,0,0,0,115,2,0, + 0,0,0,1,122,23,95,77,97,110,97,103,101,82,101,108, + 111,97,100,46,95,95,101,110,116,101,114,95,95,99,1,0, + 0,0,0,0,0,0,2,0,0,0,11,0,0,0,71,0, + 0,0,115,77,0,0,0,116,0,0,100,1,0,100,2,0, + 132,0,0,124,1,0,68,131,1,0,131,1,0,114,73,0, + 124,0,0,106,1,0,12,114,73,0,121,17,0,116,2,0, + 106,3,0,124,0,0,106,4,0,61,87,110,18,0,4,116, + 5,0,107,10,0,114,72,0,1,1,1,89,110,1,0,88, + 100,0,0,83,41,3,78,99,1,0,0,0,0,0,0,0, + 2,0,0,0,3,0,0,0,115,0,0,0,115,27,0,0, + 0,124,0,0,93,17,0,125,1,0,124,1,0,100,0,0, + 107,9,0,86,1,113,3,0,100,0,0,83,41,1,78,114, + 4,0,0,0,41,2,114,22,0,0,0,218,3,97,114,103, + 114,4,0,0,0,114,4,0,0,0,114,5,0,0,0,250, + 9,60,103,101,110,101,120,112,114,62,148,0,0,0,115,2, + 0,0,0,6,0,122,41,95,77,97,110,97,103,101,82,101, + 108,111,97,100,46,95,95,101,120,105,116,95,95,46,60,108, + 111,99,97,108,115,62,46,60,103,101,110,101,120,112,114,62, + 41,6,218,3,97,110,121,114,74,0,0,0,114,7,0,0, + 0,114,73,0,0,0,114,70,0,0,0,218,8,75,101,121, + 69,114,114,111,114,41,2,114,71,0,0,0,218,4,97,114, + 103,115,114,4,0,0,0,114,4,0,0,0,114,5,0,0, + 0,218,8,95,95,101,120,105,116,95,95,147,0,0,0,115, + 10,0,0,0,0,1,35,1,3,1,17,1,13,1,122,22, + 95,77,97,110,97,103,101,82,101,108,111,97,100,46,95,95, + 101,120,105,116,95,95,78,41,7,114,57,0,0,0,114,56, + 0,0,0,114,58,0,0,0,114,59,0,0,0,114,72,0, + 0,0,114,75,0,0,0,114,81,0,0,0,114,4,0,0, + 0,114,4,0,0,0,114,4,0,0,0,114,5,0,0,0, + 114,69,0,0,0,137,0,0,0,115,8,0,0,0,12,2, + 6,2,12,3,12,3,114,69,0,0,0,99,0,0,0,0, + 0,0,0,0,0,0,0,0,1,0,0,0,64,0,0,0, + 115,16,0,0,0,101,0,0,90,1,0,100,0,0,90,2, + 0,100,1,0,83,41,2,218,14,95,68,101,97,100,108,111, + 99,107,69,114,114,111,114,78,41,3,114,57,0,0,0,114, + 56,0,0,0,114,58,0,0,0,114,4,0,0,0,114,4, + 0,0,0,114,4,0,0,0,114,5,0,0,0,114,82,0, + 0,0,162,0,0,0,115,2,0,0,0,12,1,114,82,0, + 0,0,99,0,0,0,0,0,0,0,0,0,0,0,0,2, + 0,0,0,64,0,0,0,115,82,0,0,0,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,41,13, + 218,11,95,77,111,100,117,108,101,76,111,99,107,122,169,65, + 32,114,101,99,117,114,115,105,118,101,32,108,111,99,107,32, + 105,109,112,108,101,109,101,110,116,97,116,105,111,110,32,119, + 104,105,99,104,32,105,115,32,97,98,108,101,32,116,111,32, + 100,101,116,101,99,116,32,100,101,97,100,108,111,99,107,115, + 10,32,32,32,32,40,101,46,103,46,32,116,104,114,101,97, + 100,32,49,32,116,114,121,105,110,103,32,116,111,32,116,97, + 107,101,32,108,111,99,107,115,32,65,32,116,104,101,110,32, + 66,44,32,97,110,100,32,116,104,114,101,97,100,32,50,32, + 116,114,121,105,110,103,32,116,111,10,32,32,32,32,116,97, + 107,101,32,108,111,99,107,115,32,66,32,116,104,101,110,32, + 65,41,46,10,32,32,32,32,99,2,0,0,0,0,0,0, + 0,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, + 5,0,100,1,0,124,0,0,95,6,0,100,1,0,124,0, + 0,95,7,0,100,0,0,83,41,2,78,233,0,0,0,0, + 41,8,218,7,95,116,104,114,101,97,100,90,13,97,108,108, + 111,99,97,116,101,95,108,111,99,107,218,4,108,111,99,107, + 218,6,119,97,107,101,117,112,114,67,0,0,0,218,5,111, + 119,110,101,114,218,5,99,111,117,110,116,218,7,119,97,105, + 116,101,114,115,41,2,114,71,0,0,0,114,67,0,0,0, + 114,4,0,0,0,114,4,0,0,0,114,5,0,0,0,114, + 72,0,0,0,172,0,0,0,115,12,0,0,0,0,1,15, + 1,15,1,9,1,9,1,9,1,122,20,95,77,111,100,117, + 108,101,76,111,99,107,46,95,95,105,110,105,116,95,95,99, + 1,0,0,0,0,0,0,0,4,0,0,0,2,0,0,0, + 67,0,0,0,115,88,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,60, + 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,87,100,0,0, + 83,41,3,78,70,84,41,5,114,85,0,0,0,218,9,103, + 101,116,95,105,100,101,110,116,114,88,0,0,0,218,12,95, + 98,108,111,99,107,105,110,103,95,111,110,218,3,103,101,116, + 41,4,114,71,0,0,0,218,2,109,101,218,3,116,105,100, + 114,86,0,0,0,114,4,0,0,0,114,4,0,0,0,114, + 5,0,0,0,218,12,104,97,115,95,100,101,97,100,108,111, + 99,107,180,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,122,24,95, + 77,111,100,117,108,101,76,111,99,107,46,104,97,115,95,100, + 101,97,100,108,111,99,107,99,1,0,0,0,0,0,0,0, + 2,0,0,0,16,0,0,0,67,0,0,0,115,210,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,173,0,120,166,0,124,0,0, + 106,3,0,143,124,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,3,0, + 83,124,0,0,106,6,0,131,0,0,114,124,0,116,7,0, + 100,4,0,124,0,0,22,131,1,0,130,1,0,124,0,0, + 106,8,0,106,9,0,100,5,0,131,1,0,114,157,0,124, + 0,0,4,106,10,0,100,2,0,55,2,95,10,0,87,100, + 6,0,81,82,88,124,0,0,106,8,0,106,9,0,131,0, + 0,1,124,0,0,106,8,0,106,11,0,131,0,0,1,113, + 28,0,87,87,100,6,0,116,2,0,124,1,0,61,88,100, + 6,0,83,41,7,122,185,10,32,32,32,32,32,32,32,32, + 65,99,113,117,105,114,101,32,116,104,101,32,109,111,100,117, + 108,101,32,108,111,99,107,46,32,32,73,102,32,97,32,112, + 111,116,101,110,116,105,97,108,32,100,101,97,100,108,111,99, + 107,32,105,115,32,100,101,116,101,99,116,101,100,44,10,32, + 32,32,32,32,32,32,32,97,32,95,68,101,97,100,108,111, + 99,107,69,114,114,111,114,32,105,115,32,114,97,105,115,101, + 100,46,10,32,32,32,32,32,32,32,32,79,116,104,101,114, + 119,105,115,101,44,32,116,104,101,32,108,111,99,107,32,105, + 115,32,97,108,119,97,121,115,32,97,99,113,117,105,114,101, + 100,32,97,110,100,32,84,114,117,101,32,105,115,32,114,101, + 116,117,114,110,101,100,46,10,32,32,32,32,32,32,32,32, + 114,84,0,0,0,114,29,0,0,0,84,122,23,100,101,97, + 100,108,111,99,107,32,100,101,116,101,99,116,101,100,32,98, + 121,32,37,114,70,78,41,12,114,85,0,0,0,114,91,0, + 0,0,114,92,0,0,0,114,86,0,0,0,114,89,0,0, + 0,114,88,0,0,0,114,96,0,0,0,114,82,0,0,0, + 114,87,0,0,0,218,7,97,99,113,117,105,114,101,114,90, + 0,0,0,218,7,114,101,108,101,97,115,101,41,2,114,71, + 0,0,0,114,95,0,0,0,114,4,0,0,0,114,4,0, + 0,0,114,5,0,0,0,114,97,0,0,0,192,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,16,1,18,1,22, + 2,13,1,21,2,122,19,95,77,111,100,117,108,101,76,111, + 99,107,46,97,99,113,117,105,114,101,99,1,0,0,0,0, + 0,0,0,2,0,0,0,10,0,0,0,67,0,0,0,115, + 157,0,0,0,116,0,0,106,1,0,131,0,0,125,1,0, + 124,0,0,106,2,0,143,129,0,1,124,0,0,106,3,0, + 124,1,0,107,3,0,114,49,0,116,4,0,100,1,0,131, + 1,0,130,1,0,124,0,0,106,5,0,100,2,0,107,4, + 0,115,70,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,146,0,100,0,0,124,0,0,95,3, + 0,124,0,0,106,7,0,114,146,0,124,0,0,4,106,7, + 0,100,3,0,56,2,95,7,0,124,0,0,106,8,0,106, + 9,0,131,0,0,1,87,100,0,0,81,82,88,100,0,0, + 83,41,4,78,122,31,99,97,110,110,111,116,32,114,101,108, + 101,97,115,101,32,117,110,45,97,99,113,117,105,114,101,100, + 32,108,111,99,107,114,84,0,0,0,114,29,0,0,0,41, + 10,114,85,0,0,0,114,91,0,0,0,114,86,0,0,0, + 114,88,0,0,0,218,12,82,117,110,116,105,109,101,69,114, + 114,111,114,114,89,0,0,0,218,14,65,115,115,101,114,116, + 105,111,110,69,114,114,111,114,114,90,0,0,0,114,87,0, + 0,0,114,98,0,0,0,41,2,114,71,0,0,0,114,95, + 0,0,0,114,4,0,0,0,114,4,0,0,0,114,5,0, + 0,0,114,98,0,0,0,217,0,0,0,115,22,0,0,0, + 0,1,12,1,10,1,15,1,12,1,21,1,15,1,15,1, + 9,1,9,1,15,1,122,19,95,77,111,100,117,108,101,76, + 111,99,107,46,114,101,108,101,97,115,101,99,1,0,0,0, + 0,0,0,0,1,0,0,0,4,0,0,0,67,0,0,0, + 115,25,0,0,0,100,1,0,106,0,0,124,0,0,106,1, + 0,116,2,0,124,0,0,131,1,0,131,2,0,83,41,2, + 78,122,23,95,77,111,100,117,108,101,76,111,99,107,40,123, + 33,114,125,41,32,97,116,32,123,125,41,3,114,47,0,0, + 0,114,67,0,0,0,114,48,0,0,0,41,1,114,71,0, + 0,0,114,4,0,0,0,114,4,0,0,0,114,5,0,0, + 0,218,8,95,95,114,101,112,114,95,95,230,0,0,0,115, + 2,0,0,0,0,1,122,20,95,77,111,100,117,108,101,76, + 111,99,107,46,95,95,114,101,112,114,95,95,78,41,9,114, + 57,0,0,0,114,56,0,0,0,114,58,0,0,0,114,59, + 0,0,0,114,72,0,0,0,114,96,0,0,0,114,97,0, + 0,0,114,98,0,0,0,114,101,0,0,0,114,4,0,0, + 0,114,4,0,0,0,114,4,0,0,0,114,5,0,0,0, + 114,83,0,0,0,166,0,0,0,115,12,0,0,0,12,4, + 6,2,12,8,12,12,12,25,12,13,114,83,0,0,0,99, + 0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0, + 64,0,0,0,115,70,0,0,0,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,41, + 11,218,16,95,68,117,109,109,121,77,111,100,117,108,101,76, + 111,99,107,122,86,65,32,115,105,109,112,108,101,32,95,77, + 111,100,117,108,101,76,111,99,107,32,101,113,117,105,118,97, + 108,101,110,116,32,102,111,114,32,80,121,116,104,111,110,32, + 98,117,105,108,100,115,32,119,105,116,104,111,117,116,10,32, + 32,32,32,109,117,108,116,105,45,116,104,114,101,97,100,105, + 110,103,32,115,117,112,112,111,114,116,46,99,2,0,0,0, + 0,0,0,0,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,41,2,78,114,84, + 0,0,0,41,2,114,67,0,0,0,114,89,0,0,0,41, + 2,114,71,0,0,0,114,67,0,0,0,114,4,0,0,0, + 114,4,0,0,0,114,5,0,0,0,114,72,0,0,0,238, + 0,0,0,115,4,0,0,0,0,1,9,1,122,25,95,68, + 117,109,109,121,77,111,100,117,108,101,76,111,99,107,46,95, + 95,105,110,105,116,95,95,99,1,0,0,0,0,0,0,0, + 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,41,3,78,114,29,0,0,0,84,41,1,114, + 89,0,0,0,41,1,114,71,0,0,0,114,4,0,0,0, + 114,4,0,0,0,114,5,0,0,0,114,97,0,0,0,242, + 0,0,0,115,4,0,0,0,0,1,15,1,122,24,95,68, + 117,109,109,121,77,111,100,117,108,101,76,111,99,107,46,97, + 99,113,117,105,114,101,99,1,0,0,0,0,0,0,0,1, + 0,0,0,3,0,0,0,67,0,0,0,115,46,0,0,0, + 124,0,0,106,0,0,100,1,0,107,2,0,114,27,0,116, + 1,0,100,2,0,131,1,0,130,1,0,124,0,0,4,106, + 0,0,100,3,0,56,2,95,0,0,100,0,0,83,41,4, + 78,114,84,0,0,0,122,31,99,97,110,110,111,116,32,114, + 101,108,101,97,115,101,32,117,110,45,97,99,113,117,105,114, + 101,100,32,108,111,99,107,114,29,0,0,0,41,2,114,89, + 0,0,0,114,99,0,0,0,41,1,114,71,0,0,0,114, + 4,0,0,0,114,4,0,0,0,114,5,0,0,0,114,98, + 0,0,0,246,0,0,0,115,6,0,0,0,0,1,15,1, + 12,1,122,24,95,68,117,109,109,121,77,111,100,117,108,101, + 76,111,99,107,46,114,101,108,101,97,115,101,99,1,0,0, + 0,0,0,0,0,1,0,0,0,4,0,0,0,67,0,0, + 0,115,25,0,0,0,100,1,0,106,0,0,124,0,0,106, + 1,0,116,2,0,124,0,0,131,1,0,131,2,0,83,41, + 2,78,122,28,95,68,117,109,109,121,77,111,100,117,108,101, + 76,111,99,107,40,123,33,114,125,41,32,97,116,32,123,125, + 41,3,114,47,0,0,0,114,67,0,0,0,114,48,0,0, + 0,41,1,114,71,0,0,0,114,4,0,0,0,114,4,0, + 0,0,114,5,0,0,0,114,101,0,0,0,251,0,0,0, + 115,2,0,0,0,0,1,122,25,95,68,117,109,109,121,77, + 111,100,117,108,101,76,111,99,107,46,95,95,114,101,112,114, + 95,95,78,41,8,114,57,0,0,0,114,56,0,0,0,114, + 58,0,0,0,114,59,0,0,0,114,72,0,0,0,114,97, + 0,0,0,114,98,0,0,0,114,101,0,0,0,114,4,0, + 0,0,114,4,0,0,0,114,4,0,0,0,114,5,0,0, + 0,114,102,0,0,0,234,0,0,0,115,10,0,0,0,12, + 2,6,2,12,4,12,4,12,5,114,102,0,0,0,99,0, 0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,64, - 0,0,0,115,58,0,0,0,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,41,9,218,13,95,77,97,110,97,103,101,82,101,108, - 111,97,100,122,63,77,97,110,97,103,101,115,32,116,104,101, - 32,112,111,115,115,105,98,108,101,32,99,108,101,97,110,45, - 117,112,32,111,102,32,115,121,115,46,109,111,100,117,108,101, - 115,32,102,111,114,32,108,111,97,100,95,109,111,100,117,108, - 101,40,41,46,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,1, - 0,124,0,0,95,0,0,100,0,0,83,41,1,78,41,1, - 218,5,95,110,97,109,101,41,2,218,4,115,101,108,102,114, - 67,0,0,0,114,4,0,0,0,114,4,0,0,0,114,5, - 0,0,0,218,8,95,95,105,110,105,116,95,95,141,0,0, - 0,115,2,0,0,0,0,1,122,22,95,77,97,110,97,103, - 101,82,101,108,111,97,100,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,25,0,0,0,124,0,0,106,0,0, - 116,1,0,106,2,0,107,6,0,124,0,0,95,3,0,100, - 0,0,83,41,1,78,41,4,114,70,0,0,0,114,7,0, - 0,0,218,7,109,111,100,117,108,101,115,218,10,95,105,115, - 95,114,101,108,111,97,100,41,1,114,71,0,0,0,114,4, - 0,0,0,114,4,0,0,0,114,5,0,0,0,218,9,95, - 95,101,110,116,101,114,95,95,144,0,0,0,115,2,0,0, - 0,0,1,122,23,95,77,97,110,97,103,101,82,101,108,111, - 97,100,46,95,95,101,110,116,101,114,95,95,99,1,0,0, - 0,0,0,0,0,2,0,0,0,11,0,0,0,71,0,0, - 0,115,77,0,0,0,116,0,0,100,1,0,100,2,0,132, - 0,0,124,1,0,68,131,1,0,131,1,0,114,73,0,124, - 0,0,106,1,0,12,114,73,0,121,17,0,116,2,0,106, - 3,0,124,0,0,106,4,0,61,87,110,18,0,4,116,5, - 0,107,10,0,114,72,0,1,1,1,89,110,1,0,88,100, - 0,0,83,41,3,78,99,1,0,0,0,0,0,0,0,2, - 0,0,0,3,0,0,0,115,0,0,0,115,27,0,0,0, - 124,0,0,93,17,0,125,1,0,124,1,0,100,0,0,107, - 9,0,86,1,113,3,0,100,0,0,83,41,1,78,114,4, - 0,0,0,41,2,114,22,0,0,0,218,3,97,114,103,114, - 4,0,0,0,114,4,0,0,0,114,5,0,0,0,250,9, - 60,103,101,110,101,120,112,114,62,148,0,0,0,115,2,0, - 0,0,6,0,122,41,95,77,97,110,97,103,101,82,101,108, - 111,97,100,46,95,95,101,120,105,116,95,95,46,60,108,111, - 99,97,108,115,62,46,60,103,101,110,101,120,112,114,62,41, - 6,218,3,97,110,121,114,74,0,0,0,114,7,0,0,0, - 114,73,0,0,0,114,70,0,0,0,218,8,75,101,121,69, - 114,114,111,114,41,2,114,71,0,0,0,218,4,97,114,103, - 115,114,4,0,0,0,114,4,0,0,0,114,5,0,0,0, - 218,8,95,95,101,120,105,116,95,95,147,0,0,0,115,10, - 0,0,0,0,1,35,1,3,1,17,1,13,1,122,22,95, - 77,97,110,97,103,101,82,101,108,111,97,100,46,95,95,101, - 120,105,116,95,95,78,41,7,114,57,0,0,0,114,56,0, - 0,0,114,58,0,0,0,114,59,0,0,0,114,72,0,0, + 0,0,0,115,52,0,0,0,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,83,41,8,218,18, + 95,77,111,100,117,108,101,76,111,99,107,77,97,110,97,103, + 101,114,99,2,0,0,0,0,0,0,0,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,0,0,124,0,0,95,1,0,100,0, + 0,83,41,1,78,41,2,114,70,0,0,0,218,5,95,108, + 111,99,107,41,2,114,71,0,0,0,114,67,0,0,0,114, + 4,0,0,0,114,4,0,0,0,114,5,0,0,0,114,72, + 0,0,0,1,1,0,0,115,4,0,0,0,0,1,9,1, + 122,27,95,77,111,100,117,108,101,76,111,99,107,77,97,110, + 97,103,101,114,46,95,95,105,110,105,116,95,95,99,1,0, + 0,0,0,0,0,0,1,0,0,0,10,0,0,0,67,0, + 0,0,115,53,0,0,0,122,22,0,116,0,0,124,0,0, + 106,1,0,131,1,0,124,0,0,95,2,0,87,100,0,0, + 116,3,0,106,4,0,131,0,0,1,88,124,0,0,106,2, + 0,106,5,0,131,0,0,1,100,0,0,83,41,1,78,41, + 6,218,16,95,103,101,116,95,109,111,100,117,108,101,95,108, + 111,99,107,114,70,0,0,0,114,104,0,0,0,218,4,95, + 105,109,112,218,12,114,101,108,101,97,115,101,95,108,111,99, + 107,114,97,0,0,0,41,1,114,71,0,0,0,114,4,0, + 0,0,114,4,0,0,0,114,5,0,0,0,114,75,0,0, + 0,5,1,0,0,115,8,0,0,0,0,1,3,1,22,2, + 11,1,122,28,95,77,111,100,117,108,101,76,111,99,107,77, + 97,110,97,103,101,114,46,95,95,101,110,116,101,114,95,95, + 99,1,0,0,0,0,0,0,0,3,0,0,0,1,0,0, + 0,79,0,0,0,115,17,0,0,0,124,0,0,106,0,0, + 106,1,0,131,0,0,1,100,0,0,83,41,1,78,41,2, + 114,104,0,0,0,114,98,0,0,0,41,3,114,71,0,0, + 0,114,80,0,0,0,218,6,107,119,97,114,103,115,114,4, + 0,0,0,114,4,0,0,0,114,5,0,0,0,114,81,0, + 0,0,12,1,0,0,115,2,0,0,0,0,1,122,27,95, + 77,111,100,117,108,101,76,111,99,107,77,97,110,97,103,101, + 114,46,95,95,101,120,105,116,95,95,78,41,6,114,57,0, + 0,0,114,56,0,0,0,114,58,0,0,0,114,72,0,0, 0,114,75,0,0,0,114,81,0,0,0,114,4,0,0,0, 114,4,0,0,0,114,4,0,0,0,114,5,0,0,0,114, - 69,0,0,0,137,0,0,0,115,8,0,0,0,12,2,6, - 2,12,3,12,3,114,69,0,0,0,99,0,0,0,0,0, - 0,0,0,0,0,0,0,1,0,0,0,64,0,0,0,115, - 16,0,0,0,101,0,0,90,1,0,100,0,0,90,2,0, - 100,1,0,83,41,2,218,14,95,68,101,97,100,108,111,99, - 107,69,114,114,111,114,78,41,3,114,57,0,0,0,114,56, - 0,0,0,114,58,0,0,0,114,4,0,0,0,114,4,0, - 0,0,114,4,0,0,0,114,5,0,0,0,114,82,0,0, - 0,162,0,0,0,115,2,0,0,0,12,1,114,82,0,0, - 0,99,0,0,0,0,0,0,0,0,0,0,0,0,2,0, - 0,0,64,0,0,0,115,82,0,0,0,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,41,13,218, - 11,95,77,111,100,117,108,101,76,111,99,107,122,169,65,32, - 114,101,99,117,114,115,105,118,101,32,108,111,99,107,32,105, - 109,112,108,101,109,101,110,116,97,116,105,111,110,32,119,104, - 105,99,104,32,105,115,32,97,98,108,101,32,116,111,32,100, - 101,116,101,99,116,32,100,101,97,100,108,111,99,107,115,10, - 32,32,32,32,40,101,46,103,46,32,116,104,114,101,97,100, - 32,49,32,116,114,121,105,110,103,32,116,111,32,116,97,107, - 101,32,108,111,99,107,115,32,65,32,116,104,101,110,32,66, - 44,32,97,110,100,32,116,104,114,101,97,100,32,50,32,116, - 114,121,105,110,103,32,116,111,10,32,32,32,32,116,97,107, - 101,32,108,111,99,107,115,32,66,32,116,104,101,110,32,65, - 41,46,10,32,32,32,32,99,2,0,0,0,0,0,0,0, - 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,5, - 0,100,1,0,124,0,0,95,6,0,100,1,0,124,0,0, - 95,7,0,100,0,0,83,41,2,78,233,0,0,0,0,41, - 8,218,7,95,116,104,114,101,97,100,90,13,97,108,108,111, - 99,97,116,101,95,108,111,99,107,218,4,108,111,99,107,218, - 6,119,97,107,101,117,112,114,67,0,0,0,218,5,111,119, - 110,101,114,218,5,99,111,117,110,116,218,7,119,97,105,116, - 101,114,115,41,2,114,71,0,0,0,114,67,0,0,0,114, - 4,0,0,0,114,4,0,0,0,114,5,0,0,0,114,72, - 0,0,0,172,0,0,0,115,12,0,0,0,0,1,15,1, - 15,1,9,1,9,1,9,1,122,20,95,77,111,100,117,108, - 101,76,111,99,107,46,95,95,105,110,105,116,95,95,99,1, - 0,0,0,0,0,0,0,4,0,0,0,2,0,0,0,67, - 0,0,0,115,88,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,60,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,87,100,0,0,83, - 41,3,78,70,84,41,5,114,85,0,0,0,218,9,103,101, - 116,95,105,100,101,110,116,114,88,0,0,0,218,12,95,98, - 108,111,99,107,105,110,103,95,111,110,218,3,103,101,116,41, - 4,114,71,0,0,0,218,2,109,101,218,3,116,105,100,114, - 86,0,0,0,114,4,0,0,0,114,4,0,0,0,114,5, - 0,0,0,218,12,104,97,115,95,100,101,97,100,108,111,99, - 107,180,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,122,24,95,77, - 111,100,117,108,101,76,111,99,107,46,104,97,115,95,100,101, - 97,100,108,111,99,107,99,1,0,0,0,0,0,0,0,2, - 0,0,0,16,0,0,0,67,0,0,0,115,209,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,172,0,120,165,0,124,0,0,106, - 3,0,143,124,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,3,0,83, - 124,0,0,106,6,0,131,0,0,114,124,0,116,7,0,100, - 4,0,124,0,0,22,131,1,0,130,1,0,124,0,0,106, - 8,0,106,9,0,100,5,0,131,1,0,114,157,0,124,0, - 0,4,106,10,0,100,2,0,55,2,95,10,0,87,100,6, - 0,81,88,124,0,0,106,8,0,106,9,0,131,0,0,1, - 124,0,0,106,8,0,106,11,0,131,0,0,1,113,28,0, - 87,87,100,6,0,116,2,0,124,1,0,61,88,100,6,0, - 83,41,7,122,185,10,32,32,32,32,32,32,32,32,65,99, - 113,117,105,114,101,32,116,104,101,32,109,111,100,117,108,101, - 32,108,111,99,107,46,32,32,73,102,32,97,32,112,111,116, - 101,110,116,105,97,108,32,100,101,97,100,108,111,99,107,32, - 105,115,32,100,101,116,101,99,116,101,100,44,10,32,32,32, - 32,32,32,32,32,97,32,95,68,101,97,100,108,111,99,107, - 69,114,114,111,114,32,105,115,32,114,97,105,115,101,100,46, - 10,32,32,32,32,32,32,32,32,79,116,104,101,114,119,105, - 115,101,44,32,116,104,101,32,108,111,99,107,32,105,115,32, - 97,108,119,97,121,115,32,97,99,113,117,105,114,101,100,32, - 97,110,100,32,84,114,117,101,32,105,115,32,114,101,116,117, - 114,110,101,100,46,10,32,32,32,32,32,32,32,32,114,84, - 0,0,0,114,29,0,0,0,84,122,23,100,101,97,100,108, - 111,99,107,32,100,101,116,101,99,116,101,100,32,98,121,32, - 37,114,70,78,41,12,114,85,0,0,0,114,91,0,0,0, - 114,92,0,0,0,114,86,0,0,0,114,89,0,0,0,114, - 88,0,0,0,114,96,0,0,0,114,82,0,0,0,114,87, - 0,0,0,218,7,97,99,113,117,105,114,101,114,90,0,0, - 0,218,7,114,101,108,101,97,115,101,41,2,114,71,0,0, - 0,114,95,0,0,0,114,4,0,0,0,114,4,0,0,0, - 114,5,0,0,0,114,97,0,0,0,192,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,16,1,18,1,21,2,13, - 1,21,2,122,19,95,77,111,100,117,108,101,76,111,99,107, - 46,97,99,113,117,105,114,101,99,1,0,0,0,0,0,0, - 0,2,0,0,0,10,0,0,0,67,0,0,0,115,156,0, - 0,0,116,0,0,106,1,0,131,0,0,125,1,0,124,0, - 0,106,2,0,143,129,0,1,124,0,0,106,3,0,124,1, - 0,107,3,0,114,49,0,116,4,0,100,1,0,131,1,0, - 130,1,0,124,0,0,106,5,0,100,2,0,107,4,0,115, - 70,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,146,0,100,0,0,124,0,0,95,3,0,124, - 0,0,106,7,0,114,146,0,124,0,0,4,106,7,0,100, - 3,0,56,2,95,7,0,124,0,0,106,8,0,106,9,0, - 131,0,0,1,87,100,0,0,81,88,100,0,0,83,41,4, - 78,122,31,99,97,110,110,111,116,32,114,101,108,101,97,115, - 101,32,117,110,45,97,99,113,117,105,114,101,100,32,108,111, - 99,107,114,84,0,0,0,114,29,0,0,0,41,10,114,85, - 0,0,0,114,91,0,0,0,114,86,0,0,0,114,88,0, - 0,0,218,12,82,117,110,116,105,109,101,69,114,114,111,114, - 114,89,0,0,0,218,14,65,115,115,101,114,116,105,111,110, - 69,114,114,111,114,114,90,0,0,0,114,87,0,0,0,114, - 98,0,0,0,41,2,114,71,0,0,0,114,95,0,0,0, - 114,4,0,0,0,114,4,0,0,0,114,5,0,0,0,114, - 98,0,0,0,217,0,0,0,115,22,0,0,0,0,1,12, - 1,10,1,15,1,12,1,21,1,15,1,15,1,9,1,9, - 1,15,1,122,19,95,77,111,100,117,108,101,76,111,99,107, - 46,114,101,108,101,97,115,101,99,1,0,0,0,0,0,0, - 0,1,0,0,0,4,0,0,0,67,0,0,0,115,25,0, - 0,0,100,1,0,106,0,0,124,0,0,106,1,0,116,2, - 0,124,0,0,131,1,0,131,2,0,83,41,2,78,122,23, - 95,77,111,100,117,108,101,76,111,99,107,40,123,33,114,125, - 41,32,97,116,32,123,125,41,3,114,47,0,0,0,114,67, - 0,0,0,114,48,0,0,0,41,1,114,71,0,0,0,114, - 4,0,0,0,114,4,0,0,0,114,5,0,0,0,218,8, - 95,95,114,101,112,114,95,95,230,0,0,0,115,2,0,0, - 0,0,1,122,20,95,77,111,100,117,108,101,76,111,99,107, - 46,95,95,114,101,112,114,95,95,78,41,9,114,57,0,0, - 0,114,56,0,0,0,114,58,0,0,0,114,59,0,0,0, - 114,72,0,0,0,114,96,0,0,0,114,97,0,0,0,114, - 98,0,0,0,114,101,0,0,0,114,4,0,0,0,114,4, - 0,0,0,114,4,0,0,0,114,5,0,0,0,114,83,0, - 0,0,166,0,0,0,115,12,0,0,0,12,4,6,2,12, - 8,12,12,12,25,12,13,114,83,0,0,0,99,0,0,0, - 0,0,0,0,0,0,0,0,0,2,0,0,0,64,0,0, - 0,115,70,0,0,0,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,41,11,218,16, - 95,68,117,109,109,121,77,111,100,117,108,101,76,111,99,107, - 122,86,65,32,115,105,109,112,108,101,32,95,77,111,100,117, - 108,101,76,111,99,107,32,101,113,117,105,118,97,108,101,110, - 116,32,102,111,114,32,80,121,116,104,111,110,32,98,117,105, - 108,100,115,32,119,105,116,104,111,117,116,10,32,32,32,32, - 109,117,108,116,105,45,116,104,114,101,97,100,105,110,103,32, - 115,117,112,112,111,114,116,46,99,2,0,0,0,0,0,0, - 0,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,41,2,78,114,84,0,0,0, - 41,2,114,67,0,0,0,114,89,0,0,0,41,2,114,71, - 0,0,0,114,67,0,0,0,114,4,0,0,0,114,4,0, - 0,0,114,5,0,0,0,114,72,0,0,0,238,0,0,0, - 115,4,0,0,0,0,1,9,1,122,25,95,68,117,109,109, - 121,77,111,100,117,108,101,76,111,99,107,46,95,95,105,110, - 105,116,95,95,99,1,0,0,0,0,0,0,0,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,41,3,78,114,29,0,0,0,84,41,1,114,89,0,0, - 0,41,1,114,71,0,0,0,114,4,0,0,0,114,4,0, - 0,0,114,5,0,0,0,114,97,0,0,0,242,0,0,0, - 115,4,0,0,0,0,1,15,1,122,24,95,68,117,109,109, - 121,77,111,100,117,108,101,76,111,99,107,46,97,99,113,117, - 105,114,101,99,1,0,0,0,0,0,0,0,1,0,0,0, - 3,0,0,0,67,0,0,0,115,46,0,0,0,124,0,0, - 106,0,0,100,1,0,107,2,0,114,27,0,116,1,0,100, - 2,0,131,1,0,130,1,0,124,0,0,4,106,0,0,100, - 3,0,56,2,95,0,0,100,0,0,83,41,4,78,114,84, - 0,0,0,122,31,99,97,110,110,111,116,32,114,101,108,101, - 97,115,101,32,117,110,45,97,99,113,117,105,114,101,100,32, - 108,111,99,107,114,29,0,0,0,41,2,114,89,0,0,0, - 114,99,0,0,0,41,1,114,71,0,0,0,114,4,0,0, - 0,114,4,0,0,0,114,5,0,0,0,114,98,0,0,0, - 246,0,0,0,115,6,0,0,0,0,1,15,1,12,1,122, - 24,95,68,117,109,109,121,77,111,100,117,108,101,76,111,99, - 107,46,114,101,108,101,97,115,101,99,1,0,0,0,0,0, - 0,0,1,0,0,0,4,0,0,0,67,0,0,0,115,25, - 0,0,0,100,1,0,106,0,0,124,0,0,106,1,0,116, - 2,0,124,0,0,131,1,0,131,2,0,83,41,2,78,122, - 28,95,68,117,109,109,121,77,111,100,117,108,101,76,111,99, - 107,40,123,33,114,125,41,32,97,116,32,123,125,41,3,114, - 47,0,0,0,114,67,0,0,0,114,48,0,0,0,41,1, - 114,71,0,0,0,114,4,0,0,0,114,4,0,0,0,114, - 5,0,0,0,114,101,0,0,0,251,0,0,0,115,2,0, - 0,0,0,1,122,25,95,68,117,109,109,121,77,111,100,117, - 108,101,76,111,99,107,46,95,95,114,101,112,114,95,95,78, - 41,8,114,57,0,0,0,114,56,0,0,0,114,58,0,0, - 0,114,59,0,0,0,114,72,0,0,0,114,97,0,0,0, - 114,98,0,0,0,114,101,0,0,0,114,4,0,0,0,114, - 4,0,0,0,114,4,0,0,0,114,5,0,0,0,114,102, - 0,0,0,234,0,0,0,115,10,0,0,0,12,2,6,2, - 12,4,12,4,12,5,114,102,0,0,0,99,0,0,0,0, - 0,0,0,0,0,0,0,0,2,0,0,0,64,0,0,0, - 115,52,0,0,0,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,83,41,8,218,18,95,77,111, - 100,117,108,101,76,111,99,107,77,97,110,97,103,101,114,99, - 2,0,0,0,0,0,0,0,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,0,0,124,0,0,95,1,0,100,0,0,83,41, - 1,78,41,2,114,70,0,0,0,218,5,95,108,111,99,107, - 41,2,114,71,0,0,0,114,67,0,0,0,114,4,0,0, - 0,114,4,0,0,0,114,5,0,0,0,114,72,0,0,0, - 1,1,0,0,115,4,0,0,0,0,1,9,1,122,27,95, - 77,111,100,117,108,101,76,111,99,107,77,97,110,97,103,101, - 114,46,95,95,105,110,105,116,95,95,99,1,0,0,0,0, - 0,0,0,1,0,0,0,10,0,0,0,67,0,0,0,115, - 53,0,0,0,122,22,0,116,0,0,124,0,0,106,1,0, - 131,1,0,124,0,0,95,2,0,87,100,0,0,116,3,0, - 106,4,0,131,0,0,1,88,124,0,0,106,2,0,106,5, - 0,131,0,0,1,100,0,0,83,41,1,78,41,6,218,16, - 95,103,101,116,95,109,111,100,117,108,101,95,108,111,99,107, - 114,70,0,0,0,114,104,0,0,0,218,4,95,105,109,112, - 218,12,114,101,108,101,97,115,101,95,108,111,99,107,114,97, - 0,0,0,41,1,114,71,0,0,0,114,4,0,0,0,114, - 4,0,0,0,114,5,0,0,0,114,75,0,0,0,5,1, - 0,0,115,8,0,0,0,0,1,3,1,22,2,11,1,122, - 28,95,77,111,100,117,108,101,76,111,99,107,77,97,110,97, - 103,101,114,46,95,95,101,110,116,101,114,95,95,99,1,0, - 0,0,0,0,0,0,3,0,0,0,1,0,0,0,79,0, - 0,0,115,17,0,0,0,124,0,0,106,0,0,106,1,0, - 131,0,0,1,100,0,0,83,41,1,78,41,2,114,104,0, - 0,0,114,98,0,0,0,41,3,114,71,0,0,0,114,80, - 0,0,0,218,6,107,119,97,114,103,115,114,4,0,0,0, - 114,4,0,0,0,114,5,0,0,0,114,81,0,0,0,12, - 1,0,0,115,2,0,0,0,0,1,122,27,95,77,111,100, - 117,108,101,76,111,99,107,77,97,110,97,103,101,114,46,95, - 95,101,120,105,116,95,95,78,41,6,114,57,0,0,0,114, - 56,0,0,0,114,58,0,0,0,114,72,0,0,0,114,75, - 0,0,0,114,81,0,0,0,114,4,0,0,0,114,4,0, - 0,0,114,4,0,0,0,114,5,0,0,0,114,103,0,0, - 0,255,0,0,0,115,6,0,0,0,12,2,12,4,12,7, - 114,103,0,0,0,99,1,0,0,0,0,0,0,0,3,0, - 0,0,11,0,0,0,3,0,0,0,115,139,0,0,0,100, - 1,0,125,1,0,121,17,0,116,0,0,136,0,0,25,131, - 0,0,125,1,0,87,110,18,0,4,116,1,0,107,10,0, - 114,43,0,1,1,1,89,110,1,0,88,124,1,0,100,1, - 0,107,8,0,114,135,0,116,2,0,100,1,0,107,8,0, - 114,83,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,2,0,100,3,0,134,0,0,125,2,0, - 116,5,0,106,6,0,124,1,0,124,2,0,131,2,0,116, - 0,0,136,0,0,60,124,1,0,83,41,4,122,109,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,78,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,41,1,78,41,1,218,13,95,109,111,100,117,108,101,95, - 108,111,99,107,115,41,1,114,36,0,0,0,41,1,114,67, - 0,0,0,114,4,0,0,0,114,5,0,0,0,218,2,99, - 98,32,1,0,0,115,2,0,0,0,0,1,122,28,95,103, - 101,116,95,109,111,100,117,108,101,95,108,111,99,107,46,60, - 108,111,99,97,108,115,62,46,99,98,41,7,114,109,0,0, - 0,114,79,0,0,0,114,85,0,0,0,114,102,0,0,0, - 114,83,0,0,0,218,8,95,119,101,97,107,114,101,102,90, - 3,114,101,102,41,3,114,67,0,0,0,114,86,0,0,0, - 114,110,0,0,0,114,4,0,0,0,41,1,114,67,0,0, - 0,114,5,0,0,0,114,105,0,0,0,18,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,22,1,114,105,0,0, - 0,99,1,0,0,0,0,0,0,0,2,0,0,0,11,0, - 0,0,67,0,0,0,115,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,41,2,97,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, + 103,0,0,0,255,0,0,0,115,6,0,0,0,12,2,12, + 4,12,7,114,103,0,0,0,99,1,0,0,0,0,0,0, + 0,3,0,0,0,11,0,0,0,3,0,0,0,115,139,0, + 0,0,100,1,0,125,1,0,121,17,0,116,0,0,136,0, + 0,25,131,0,0,125,1,0,87,110,18,0,4,116,1,0, + 107,10,0,114,43,0,1,1,1,89,110,1,0,88,124,1, + 0,100,1,0,107,8,0,114,135,0,116,2,0,100,1,0, + 107,8,0,114,83,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,2,0,100,3,0,134,0,0, + 125,2,0,116,5,0,106,6,0,124,1,0,124,2,0,131, + 2,0,116,0,0,136,0,0,60,124,1,0,83,41,4,122, + 109,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,78,41, - 6,114,105,0,0,0,114,106,0,0,0,114,107,0,0,0, - 114,97,0,0,0,114,82,0,0,0,114,98,0,0,0,41, - 2,114,67,0,0,0,114,86,0,0,0,114,4,0,0,0, - 114,4,0,0,0,114,5,0,0,0,218,19,95,108,111,99, - 107,95,117,110,108,111,99,107,95,109,111,100,117,108,101,37, - 1,0,0,115,14,0,0,0,0,7,12,1,10,1,3,1, - 14,1,13,3,5,2,114,112,0,0,0,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,41,1,97,46,1,0,0,114,101,109,111,118,101,95, - 105,109,112,111,114,116,108,105,98,95,102,114,97,109,101,115, - 32,105,110,32,105,109,112,111,114,116,46,99,32,119,105,108, - 108,32,97,108,119,97,121,115,32,114,101,109,111,118,101,32, - 115,101,113,117,101,110,99,101,115,10,32,32,32,32,111,102, - 32,105,109,112,111,114,116,108,105,98,32,102,114,97,109,101, - 115,32,116,104,97,116,32,101,110,100,32,119,105,116,104,32, - 97,32,99,97,108,108,32,116,111,32,116,104,105,115,32,102, - 117,110,99,116,105,111,110,10,10,32,32,32,32,85,115,101, - 32,105,116,32,105,110,115,116,101,97,100,32,111,102,32,97, - 32,110,111,114,109,97,108,32,99,97,108,108,32,105,110,32, - 112,108,97,99,101,115,32,119,104,101,114,101,32,105,110,99, - 108,117,100,105,110,103,32,116,104,101,32,105,109,112,111,114, - 116,108,105,98,10,32,32,32,32,102,114,97,109,101,115,32, - 105,110,116,114,111,100,117,99,101,115,32,117,110,119,97,110, - 116,101,100,32,110,111,105,115,101,32,105,110,116,111,32,116, - 104,101,32,116,114,97,99,101,98,97,99,107,32,40,101,46, - 103,46,32,119,104,101,110,32,101,120,101,99,117,116,105,110, - 103,10,32,32,32,32,109,111,100,117,108,101,32,99,111,100, - 101,41,10,32,32,32,32,114,4,0,0,0,41,3,218,1, - 102,114,80,0,0,0,90,4,107,119,100,115,114,4,0,0, - 0,114,4,0,0,0,114,5,0,0,0,218,25,95,99,97, - 108,108,95,119,105,116,104,95,102,114,97,109,101,115,95,114, - 101,109,111,118,101,100,57,1,0,0,115,2,0,0,0,0, - 8,114,114,0,0,0,105,248,12,0,0,233,2,0,0,0, - 114,13,0,0,0,115,2,0,0,0,13,10,90,11,95,95, - 112,121,99,97,99,104,101,95,95,122,4,111,112,116,45,122, - 3,46,112,121,122,4,46,112,121,99,78,218,12,111,112,116, - 105,109,105,122,97,116,105,111,110,99,2,0,0,0,1,0, - 0,0,11,0,0,0,6,0,0,0,67,0,0,0,115,87, - 1,0,0,124,1,0,100,1,0,107,9,0,114,76,0,116, - 0,0,106,1,0,100,2,0,116,2,0,131,2,0,1,124, - 2,0,100,1,0,107,9,0,114,58,0,100,3,0,125,3, - 0,116,3,0,124,3,0,131,1,0,130,1,0,124,1,0, - 114,70,0,100,4,0,110,3,0,100,5,0,125,2,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,6,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,1,0,107,8,0,114,154, - 0,116,9,0,100,7,0,131,1,0,130,1,0,100,4,0, - 106,10,0,124,6,0,114,172,0,124,6,0,110,3,0,124, - 8,0,124,7,0,124,9,0,103,3,0,131,1,0,125,10, - 0,124,2,0,100,1,0,107,8,0,114,241,0,116,6,0, - 106,11,0,106,12,0,100,8,0,107,2,0,114,229,0,100, - 4,0,125,2,0,110,12,0,116,6,0,106,11,0,106,12, - 0,125,2,0,116,13,0,124,2,0,131,1,0,125,2,0, - 124,2,0,100,4,0,107,3,0,114,63,1,124,2,0,106, - 14,0,131,0,0,115,42,1,116,15,0,100,9,0,106,16, - 0,124,2,0,131,1,0,131,1,0,130,1,0,100,10,0, - 106,16,0,124,10,0,116,17,0,124,2,0,131,3,0,125, - 10,0,116,18,0,124,4,0,116,19,0,124,10,0,116,20, - 0,100,8,0,25,23,131,3,0,83,41,11,97,254,2,0, - 0,71,105,118,101,110,32,116,104,101,32,112,97,116,104,32, - 116,111,32,97,32,46,112,121,32,102,105,108,101,44,32,114, - 101,116,117,114,110,32,116,104,101,32,112,97,116,104,32,116, - 111,32,105,116,115,32,46,112,121,99,32,102,105,108,101,46, - 10,10,32,32,32,32,84,104,101,32,46,112,121,32,102,105, - 108,101,32,100,111,101,115,32,110,111,116,32,110,101,101,100, - 32,116,111,32,101,120,105,115,116,59,32,116,104,105,115,32, - 115,105,109,112,108,121,32,114,101,116,117,114,110,115,32,116, - 104,101,32,112,97,116,104,32,116,111,32,116,104,101,10,32, - 32,32,32,46,112,121,99,32,102,105,108,101,32,99,97,108, - 99,117,108,97,116,101,100,32,97,115,32,105,102,32,116,104, - 101,32,46,112,121,32,102,105,108,101,32,119,101,114,101,32, - 105,109,112,111,114,116,101,100,46,10,10,32,32,32,32,84, - 104,101,32,39,111,112,116,105,109,105,122,97,116,105,111,110, - 39,32,112,97,114,97,109,101,116,101,114,32,99,111,110,116, - 114,111,108,115,32,116,104,101,32,112,114,101,115,117,109,101, - 100,32,111,112,116,105,109,105,122,97,116,105,111,110,32,108, - 101,118,101,108,32,111,102,10,32,32,32,32,116,104,101,32, - 98,121,116,101,99,111,100,101,32,102,105,108,101,46,32,73, - 102,32,39,111,112,116,105,109,105,122,97,116,105,111,110,39, - 32,105,115,32,110,111,116,32,78,111,110,101,44,32,116,104, - 101,32,115,116,114,105,110,103,32,114,101,112,114,101,115,101, - 110,116,97,116,105,111,110,10,32,32,32,32,111,102,32,116, - 104,101,32,97,114,103,117,109,101,110,116,32,105,115,32,116, - 97,107,101,110,32,97,110,100,32,118,101,114,105,102,105,101, - 100,32,116,111,32,98,101,32,97,108,112,104,97,110,117,109, - 101,114,105,99,32,40,101,108,115,101,32,86,97,108,117,101, - 69,114,114,111,114,10,32,32,32,32,105,115,32,114,97,105, - 115,101,100,41,46,10,10,32,32,32,32,84,104,101,32,100, - 101,98,117,103,95,111,118,101,114,114,105,100,101,32,112,97, - 114,97,109,101,116,101,114,32,105,115,32,100,101,112,114,101, - 99,97,116,101,100,46,32,73,102,32,100,101,98,117,103,95, - 111,118,101,114,114,105,100,101,32,105,115,32,110,111,116,32, - 78,111,110,101,44,10,32,32,32,32,97,32,84,114,117,101, - 32,118,97,108,117,101,32,105,115,32,116,104,101,32,115,97, - 109,101,32,97,115,32,115,101,116,116,105,110,103,32,39,111, - 112,116,105,109,105,122,97,116,105,111,110,39,32,116,111,32, - 116,104,101,32,101,109,112,116,121,32,115,116,114,105,110,103, - 10,32,32,32,32,119,104,105,108,101,32,97,32,70,97,108, - 115,101,32,118,97,108,117,101,32,105,115,32,101,113,117,105, - 118,97,108,101,110,116,32,116,111,32,115,101,116,116,105,110, - 103,32,39,111,112,116,105,109,105,122,97,116,105,111,110,39, - 32,116,111,32,39,49,39,46,10,10,32,32,32,32,73,102, - 32,115,121,115,46,105,109,112,108,101,109,101,110,116,97,116, - 105,111,110,46,99,97,99,104,101,95,116,97,103,32,105,115, - 32,78,111,110,101,32,116,104,101,110,32,78,111,116,73,109, - 112,108,101,109,101,110,116,101,100,69,114,114,111,114,32,105, - 115,32,114,97,105,115,101,100,46,10,10,32,32,32,32,78, - 122,70,116,104,101,32,100,101,98,117,103,95,111,118,101,114, - 114,105,100,101,32,112,97,114,97,109,101,116,101,114,32,105, - 115,32,100,101,112,114,101,99,97,116,101,100,59,32,117,115, - 101,32,39,111,112,116,105,109,105,122,97,116,105,111,110,39, - 32,105,110,115,116,101,97,100,122,50,100,101,98,117,103,95, - 111,118,101,114,114,105,100,101,32,111,114,32,111,112,116,105, - 109,105,122,97,116,105,111,110,32,109,117,115,116,32,98,101, - 32,115,101,116,32,116,111,32,78,111,110,101,114,30,0,0, - 0,114,29,0,0,0,218,1,46,122,36,115,121,115,46,105, - 109,112,108,101,109,101,110,116,97,116,105,111,110,46,99,97, - 99,104,101,95,116,97,103,32,105,115,32,78,111,110,101,114, - 84,0,0,0,122,24,123,33,114,125,32,105,115,32,110,111, - 116,32,97,108,112,104,97,110,117,109,101,114,105,99,122,7, - 123,125,46,123,125,123,125,41,21,218,9,95,119,97,114,110, - 105,110,103,115,218,4,119,97,114,110,218,18,68,101,112,114, - 101,99,97,116,105,111,110,87,97,114,110,105,110,103,218,9, - 84,121,112,101,69,114,114,111,114,114,38,0,0,0,114,32, - 0,0,0,114,7,0,0,0,218,14,105,109,112,108,101,109, - 101,110,116,97,116,105,111,110,218,9,99,97,99,104,101,95, - 116,97,103,218,19,78,111,116,73,109,112,108,101,109,101,110, - 116,101,100,69,114,114,111,114,114,26,0,0,0,218,5,102, - 108,97,103,115,218,8,111,112,116,105,109,105,122,101,218,3, - 115,116,114,218,7,105,115,97,108,110,117,109,218,10,86,97, - 108,117,101,69,114,114,111,114,114,47,0,0,0,218,4,95, - 79,80,84,114,28,0,0,0,218,8,95,80,89,67,65,67, - 72,69,218,17,66,89,84,69,67,79,68,69,95,83,85,70, - 70,73,88,69,83,41,11,114,35,0,0,0,90,14,100,101, - 98,117,103,95,111,118,101,114,114,105,100,101,114,116,0,0, - 0,218,7,109,101,115,115,97,103,101,218,4,104,101,97,100, - 114,37,0,0,0,218,4,98,97,115,101,218,3,115,101,112, - 218,4,114,101,115,116,90,3,116,97,103,90,15,97,108,109, - 111,115,116,95,102,105,108,101,110,97,109,101,114,4,0,0, - 0,114,4,0,0,0,114,5,0,0,0,218,17,99,97,99, - 104,101,95,102,114,111,109,95,115,111,117,114,99,101,184,1, - 0,0,115,46,0,0,0,0,18,12,1,9,1,7,1,12, - 1,6,1,12,1,18,1,18,1,24,1,12,1,12,1,12, - 1,36,1,12,1,18,1,9,2,12,1,12,1,12,1,12, - 1,21,1,21,1,114,138,0,0,0,99,1,0,0,0,0, - 0,0,0,8,0,0,0,5,0,0,0,67,0,0,0,115, - 62,1,0,0,116,0,0,106,1,0,106,2,0,100,1,0, - 107,8,0,114,30,0,116,3,0,100,2,0,131,1,0,130, - 1,0,116,4,0,124,0,0,131,1,0,92,2,0,125,1, - 0,125,2,0,116,4,0,124,1,0,131,1,0,92,2,0, - 125,1,0,125,3,0,124,3,0,116,5,0,107,3,0,114, - 102,0,116,6,0,100,3,0,106,7,0,116,5,0,124,0, - 0,131,2,0,131,1,0,130,1,0,124,2,0,106,8,0, - 100,4,0,131,1,0,125,4,0,124,4,0,100,11,0,107, - 7,0,114,153,0,116,6,0,100,7,0,106,7,0,124,2, - 0,131,1,0,131,1,0,130,1,0,110,125,0,124,4,0, - 100,6,0,107,2,0,114,22,1,124,2,0,106,9,0,100, - 4,0,100,5,0,131,2,0,100,12,0,25,125,5,0,124, - 5,0,106,10,0,116,11,0,131,1,0,115,223,0,116,6, - 0,100,8,0,106,7,0,116,11,0,131,1,0,131,1,0, - 130,1,0,124,5,0,116,12,0,116,11,0,131,1,0,100, - 1,0,133,2,0,25,125,6,0,124,6,0,106,13,0,131, - 0,0,115,22,1,116,6,0,100,9,0,106,7,0,124,5, - 0,131,1,0,131,1,0,130,1,0,124,2,0,106,14,0, - 100,4,0,131,1,0,100,10,0,25,125,7,0,116,15,0, - 124,1,0,124,7,0,116,16,0,100,10,0,25,23,131,2, - 0,83,41,13,97,110,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,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,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,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,47,52,56,56,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,78,122,36,115,121,115,46,105,109, - 112,108,101,109,101,110,116,97,116,105,111,110,46,99,97,99, - 104,101,95,116,97,103,32,105,115,32,78,111,110,101,122,37, - 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,114,117,0,0,0,114,115,0,0,0,233, - 3,0,0,0,122,33,101,120,112,101,99,116,101,100,32,111, - 110,108,121,32,50,32,111,114,32,51,32,100,111,116,115,32, - 105,110,32,123,33,114,125,122,57,111,112,116,105,109,105,122, - 97,116,105,111,110,32,112,111,114,116,105,111,110,32,111,102, - 32,102,105,108,101,110,97,109,101,32,100,111,101,115,32,110, - 111,116,32,115,116,97,114,116,32,119,105,116,104,32,123,33, - 114,125,122,52,111,112,116,105,109,105,122,97,116,105,111,110, - 32,108,101,118,101,108,32,123,33,114,125,32,105,115,32,110, - 111,116,32,97,110,32,97,108,112,104,97,110,117,109,101,114, - 105,99,32,118,97,108,117,101,114,84,0,0,0,62,2,0, - 0,0,114,115,0,0,0,114,139,0,0,0,233,254,255,255, - 255,41,17,114,7,0,0,0,114,122,0,0,0,114,123,0, - 0,0,114,124,0,0,0,114,38,0,0,0,114,131,0,0, - 0,114,129,0,0,0,114,47,0,0,0,114,89,0,0,0, - 114,34,0,0,0,114,9,0,0,0,114,130,0,0,0,114, - 31,0,0,0,114,128,0,0,0,218,9,112,97,114,116,105, - 116,105,111,110,114,28,0,0,0,218,15,83,79,85,82,67, - 69,95,83,85,70,70,73,88,69,83,41,8,114,35,0,0, - 0,114,134,0,0,0,90,16,112,121,99,97,99,104,101,95, - 102,105,108,101,110,97,109,101,90,7,112,121,99,97,99,104, - 101,90,9,100,111,116,95,99,111,117,110,116,114,116,0,0, - 0,90,9,111,112,116,95,108,101,118,101,108,90,13,98,97, - 115,101,95,102,105,108,101,110,97,109,101,114,4,0,0,0, - 114,4,0,0,0,114,5,0,0,0,218,17,115,111,117,114, - 99,101,95,102,114,111,109,95,99,97,99,104,101,228,1,0, - 0,115,44,0,0,0,0,9,18,1,12,1,18,1,18,1, - 12,1,9,1,15,1,15,1,12,1,9,1,15,1,12,1, - 22,1,15,1,9,1,12,1,22,1,12,1,9,1,12,1, - 19,1,114,143,0,0,0,99,1,0,0,0,0,0,0,0, - 5,0,0,0,12,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,2,0,83,124,0,0,106,1,0,100,3,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,2,0,131,0,0,100, - 7,0,100,8,0,133,2,0,25,100,6,0,107,3,0,114, - 85,0,124,0,0,83,121,16,0,116,3,0,124,0,0,131, - 1,0,125,4,0,87,110,40,0,4,116,4,0,116,5,0, - 102,2,0,107,10,0,114,143,0,1,1,1,124,0,0,100, - 2,0,100,9,0,133,2,0,25,125,4,0,89,110,1,0, - 88,116,6,0,124,4,0,131,1,0,114,160,0,124,4,0, - 83,124,0,0,83,41,10,122,188,67,111,110,118,101,114,116, - 32,97,32,98,121,116,101,99,111,100,101,32,102,105,108,101, - 32,112,97,116,104,32,116,111,32,97,32,115,111,117,114,99, - 101,32,112,97,116,104,32,40,105,102,32,112,111,115,115,105, - 98,108,101,41,46,10,10,32,32,32,32,84,104,105,115,32, - 102,117,110,99,116,105,111,110,32,101,120,105,115,116,115,32, - 112,117,114,101,108,121,32,102,111,114,32,98,97,99,107,119, - 97,114,100,115,45,99,111,109,112,97,116,105,98,105,108,105, - 116,121,32,102,111,114,10,32,32,32,32,80,121,73,109,112, - 111,114,116,95,69,120,101,99,67,111,100,101,77,111,100,117, - 108,101,87,105,116,104,70,105,108,101,110,97,109,101,115,40, - 41,32,105,110,32,116,104,101,32,67,32,65,80,73,46,10, - 10,32,32,32,32,114,84,0,0,0,78,114,117,0,0,0, - 114,139,0,0,0,114,29,0,0,0,90,2,112,121,233,253, - 255,255,255,233,255,255,255,255,114,145,0,0,0,41,7,114, - 31,0,0,0,114,32,0,0,0,218,5,108,111,119,101,114, - 114,143,0,0,0,114,124,0,0,0,114,129,0,0,0,114, - 44,0,0,0,41,5,218,13,98,121,116,101,99,111,100,101, - 95,112,97,116,104,114,137,0,0,0,114,36,0,0,0,90, - 9,101,120,116,101,110,115,105,111,110,218,11,115,111,117,114, - 99,101,95,112,97,116,104,114,4,0,0,0,114,4,0,0, - 0,114,5,0,0,0,218,15,95,103,101,116,95,115,111,117, - 114,99,101,102,105,108,101,5,2,0,0,115,20,0,0,0, - 0,7,18,1,4,1,24,1,35,1,4,1,3,1,16,1, - 19,1,21,1,114,149,0,0,0,99,1,0,0,0,0,0, - 0,0,2,0,0,0,11,0,0,0,67,0,0,0,115,60, - 0,0,0,121,19,0,116,0,0,124,0,0,131,1,0,106, - 1,0,125,1,0,87,110,24,0,4,116,2,0,107,10,0, - 114,45,0,1,1,1,100,1,0,125,1,0,89,110,1,0, - 88,124,1,0,100,2,0,79,125,1,0,124,1,0,83,41, - 3,122,51,67,97,108,99,117,108,97,116,101,32,116,104,101, - 32,109,111,100,101,32,112,101,114,109,105,115,115,105,111,110, - 115,32,102,111,114,32,97,32,98,121,116,101,99,111,100,101, - 32,102,105,108,101,46,105,182,1,0,0,233,128,0,0,0, - 41,3,114,39,0,0,0,114,41,0,0,0,114,40,0,0, - 0,41,2,114,35,0,0,0,114,42,0,0,0,114,4,0, - 0,0,114,4,0,0,0,114,5,0,0,0,218,10,95,99, - 97,108,99,95,109,111,100,101,24,2,0,0,115,12,0,0, - 0,0,2,3,1,19,1,13,1,11,3,10,1,114,151,0, - 0,0,218,9,118,101,114,98,111,115,105,116,121,114,29,0, - 0,0,99,1,0,0,0,1,0,0,0,3,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,124,1,0,107,5,0,114,71,0,124,0, - 0,106,3,0,100,6,0,131,1,0,115,43,0,100,3,0, - 124,0,0,23,125,0,0,116,4,0,124,0,0,106,5,0, - 124,2,0,140,0,0,100,4,0,116,0,0,106,6,0,131, - 1,1,1,100,5,0,83,41,7,122,61,80,114,105,110,116, - 32,116,104,101,32,109,101,115,115,97,103,101,32,116,111,32, - 115,116,100,101,114,114,32,105,102,32,45,118,47,80,89,84, - 72,79,78,86,69,82,66,79,83,69,32,105,115,32,116,117, - 114,110,101,100,32,111,110,46,250,1,35,250,7,105,109,112, - 111,114,116,32,122,2,35,32,114,54,0,0,0,78,41,2, - 114,153,0,0,0,114,154,0,0,0,41,7,114,7,0,0, - 0,114,125,0,0,0,218,7,118,101,114,98,111,115,101,114, - 9,0,0,0,218,5,112,114,105,110,116,114,47,0,0,0, - 218,6,115,116,100,101,114,114,41,3,114,133,0,0,0,114, - 152,0,0,0,114,80,0,0,0,114,4,0,0,0,114,4, - 0,0,0,114,5,0,0,0,218,16,95,118,101,114,98,111, - 115,101,95,109,101,115,115,97,103,101,36,2,0,0,115,8, - 0,0,0,0,2,18,1,15,1,10,1,114,158,0,0,0, - 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,1,0,135,0,0, - 102,1,0,100,2,0,100,3,0,134,1,0,125,1,0,116, - 0,0,124,1,0,136,0,0,131,2,0,1,124,1,0,83, - 41,4,122,252,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, - 78,99,2,0,0,0,0,0,0,0,4,0,0,0,5,0, - 0,0,31,0,0,0,115,80,0,0,0,124,1,0,100,0, - 0,107,8,0,114,24,0,124,0,0,106,0,0,125,1,0, - 110,37,0,124,0,0,106,0,0,124,1,0,107,3,0,114, - 61,0,116,1,0,100,1,0,124,1,0,22,100,2,0,124, + 114,116,32,108,111,99,107,32,116,97,107,101,110,46,78,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,41,1,78,41,1,218,13,95,109,111,100,117, + 108,101,95,108,111,99,107,115,41,1,114,36,0,0,0,41, + 1,114,67,0,0,0,114,4,0,0,0,114,5,0,0,0, + 218,2,99,98,32,1,0,0,115,2,0,0,0,0,1,122, + 28,95,103,101,116,95,109,111,100,117,108,101,95,108,111,99, + 107,46,60,108,111,99,97,108,115,62,46,99,98,41,7,114, + 109,0,0,0,114,79,0,0,0,114,85,0,0,0,114,102, + 0,0,0,114,83,0,0,0,218,8,95,119,101,97,107,114, + 101,102,90,3,114,101,102,41,3,114,67,0,0,0,114,86, + 0,0,0,114,110,0,0,0,114,4,0,0,0,41,1,114, + 67,0,0,0,114,5,0,0,0,114,105,0,0,0,18,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,22,1,114, + 105,0,0,0,99,1,0,0,0,0,0,0,0,2,0,0, + 0,11,0,0,0,67,0,0,0,115,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,41,2,97,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,41,6,114,105,0,0,0,114,106,0,0,0,114,107, + 0,0,0,114,97,0,0,0,114,82,0,0,0,114,98,0, + 0,0,41,2,114,67,0,0,0,114,86,0,0,0,114,4, + 0,0,0,114,4,0,0,0,114,5,0,0,0,218,19,95, + 108,111,99,107,95,117,110,108,111,99,107,95,109,111,100,117, + 108,101,37,1,0,0,115,14,0,0,0,0,7,12,1,10, + 1,3,1,14,1,13,3,5,2,114,112,0,0,0,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,41,1,97,46,1,0,0,114,101,109,111, + 118,101,95,105,109,112,111,114,116,108,105,98,95,102,114,97, + 109,101,115,32,105,110,32,105,109,112,111,114,116,46,99,32, + 119,105,108,108,32,97,108,119,97,121,115,32,114,101,109,111, + 118,101,32,115,101,113,117,101,110,99,101,115,10,32,32,32, + 32,111,102,32,105,109,112,111,114,116,108,105,98,32,102,114, + 97,109,101,115,32,116,104,97,116,32,101,110,100,32,119,105, + 116,104,32,97,32,99,97,108,108,32,116,111,32,116,104,105, + 115,32,102,117,110,99,116,105,111,110,10,10,32,32,32,32, + 85,115,101,32,105,116,32,105,110,115,116,101,97,100,32,111, + 102,32,97,32,110,111,114,109,97,108,32,99,97,108,108,32, + 105,110,32,112,108,97,99,101,115,32,119,104,101,114,101,32, + 105,110,99,108,117,100,105,110,103,32,116,104,101,32,105,109, + 112,111,114,116,108,105,98,10,32,32,32,32,102,114,97,109, + 101,115,32,105,110,116,114,111,100,117,99,101,115,32,117,110, + 119,97,110,116,101,100,32,110,111,105,115,101,32,105,110,116, + 111,32,116,104,101,32,116,114,97,99,101,98,97,99,107,32, + 40,101,46,103,46,32,119,104,101,110,32,101,120,101,99,117, + 116,105,110,103,10,32,32,32,32,109,111,100,117,108,101,32, + 99,111,100,101,41,10,32,32,32,32,114,4,0,0,0,41, + 3,218,1,102,114,80,0,0,0,90,4,107,119,100,115,114, + 4,0,0,0,114,4,0,0,0,114,5,0,0,0,218,25, + 95,99,97,108,108,95,119,105,116,104,95,102,114,97,109,101, + 115,95,114,101,109,111,118,101,100,57,1,0,0,115,2,0, + 0,0,0,8,114,114,0,0,0,105,3,13,0,0,233,2, + 0,0,0,114,13,0,0,0,115,2,0,0,0,13,10,90, + 11,95,95,112,121,99,97,99,104,101,95,95,122,4,111,112, + 116,45,122,3,46,112,121,122,4,46,112,121,99,78,218,12, + 111,112,116,105,109,105,122,97,116,105,111,110,99,2,0,0, + 0,1,0,0,0,11,0,0,0,6,0,0,0,67,0,0, + 0,115,87,1,0,0,124,1,0,100,1,0,107,9,0,114, + 76,0,116,0,0,106,1,0,100,2,0,116,2,0,131,2, + 0,1,124,2,0,100,1,0,107,9,0,114,58,0,100,3, + 0,125,3,0,116,3,0,124,3,0,131,1,0,130,1,0, + 124,1,0,114,70,0,100,4,0,110,3,0,100,5,0,125, + 2,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,6,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,1,0,107,8, + 0,114,154,0,116,9,0,100,7,0,131,1,0,130,1,0, + 100,4,0,106,10,0,124,6,0,114,172,0,124,6,0,110, + 3,0,124,8,0,124,7,0,124,9,0,103,3,0,131,1, + 0,125,10,0,124,2,0,100,1,0,107,8,0,114,241,0, + 116,6,0,106,11,0,106,12,0,100,8,0,107,2,0,114, + 229,0,100,4,0,125,2,0,110,12,0,116,6,0,106,11, + 0,106,12,0,125,2,0,116,13,0,124,2,0,131,1,0, + 125,2,0,124,2,0,100,4,0,107,3,0,114,63,1,124, + 2,0,106,14,0,131,0,0,115,42,1,116,15,0,100,9, + 0,106,16,0,124,2,0,131,1,0,131,1,0,130,1,0, + 100,10,0,106,16,0,124,10,0,116,17,0,124,2,0,131, + 3,0,125,10,0,116,18,0,124,4,0,116,19,0,124,10, + 0,116,20,0,100,8,0,25,23,131,3,0,83,41,11,97, + 254,2,0,0,71,105,118,101,110,32,116,104,101,32,112,97, + 116,104,32,116,111,32,97,32,46,112,121,32,102,105,108,101, + 44,32,114,101,116,117,114,110,32,116,104,101,32,112,97,116, + 104,32,116,111,32,105,116,115,32,46,112,121,99,32,102,105, + 108,101,46,10,10,32,32,32,32,84,104,101,32,46,112,121, + 32,102,105,108,101,32,100,111,101,115,32,110,111,116,32,110, + 101,101,100,32,116,111,32,101,120,105,115,116,59,32,116,104, + 105,115,32,115,105,109,112,108,121,32,114,101,116,117,114,110, + 115,32,116,104,101,32,112,97,116,104,32,116,111,32,116,104, + 101,10,32,32,32,32,46,112,121,99,32,102,105,108,101,32, + 99,97,108,99,117,108,97,116,101,100,32,97,115,32,105,102, + 32,116,104,101,32,46,112,121,32,102,105,108,101,32,119,101, + 114,101,32,105,109,112,111,114,116,101,100,46,10,10,32,32, + 32,32,84,104,101,32,39,111,112,116,105,109,105,122,97,116, + 105,111,110,39,32,112,97,114,97,109,101,116,101,114,32,99, + 111,110,116,114,111,108,115,32,116,104,101,32,112,114,101,115, + 117,109,101,100,32,111,112,116,105,109,105,122,97,116,105,111, + 110,32,108,101,118,101,108,32,111,102,10,32,32,32,32,116, + 104,101,32,98,121,116,101,99,111,100,101,32,102,105,108,101, + 46,32,73,102,32,39,111,112,116,105,109,105,122,97,116,105, + 111,110,39,32,105,115,32,110,111,116,32,78,111,110,101,44, + 32,116,104,101,32,115,116,114,105,110,103,32,114,101,112,114, + 101,115,101,110,116,97,116,105,111,110,10,32,32,32,32,111, + 102,32,116,104,101,32,97,114,103,117,109,101,110,116,32,105, + 115,32,116,97,107,101,110,32,97,110,100,32,118,101,114,105, + 102,105,101,100,32,116,111,32,98,101,32,97,108,112,104,97, + 110,117,109,101,114,105,99,32,40,101,108,115,101,32,86,97, + 108,117,101,69,114,114,111,114,10,32,32,32,32,105,115,32, + 114,97,105,115,101,100,41,46,10,10,32,32,32,32,84,104, + 101,32,100,101,98,117,103,95,111,118,101,114,114,105,100,101, + 32,112,97,114,97,109,101,116,101,114,32,105,115,32,100,101, + 112,114,101,99,97,116,101,100,46,32,73,102,32,100,101,98, + 117,103,95,111,118,101,114,114,105,100,101,32,105,115,32,110, + 111,116,32,78,111,110,101,44,10,32,32,32,32,97,32,84, + 114,117,101,32,118,97,108,117,101,32,105,115,32,116,104,101, + 32,115,97,109,101,32,97,115,32,115,101,116,116,105,110,103, + 32,39,111,112,116,105,109,105,122,97,116,105,111,110,39,32, + 116,111,32,116,104,101,32,101,109,112,116,121,32,115,116,114, + 105,110,103,10,32,32,32,32,119,104,105,108,101,32,97,32, + 70,97,108,115,101,32,118,97,108,117,101,32,105,115,32,101, + 113,117,105,118,97,108,101,110,116,32,116,111,32,115,101,116, + 116,105,110,103,32,39,111,112,116,105,109,105,122,97,116,105, + 111,110,39,32,116,111,32,39,49,39,46,10,10,32,32,32, + 32,73,102,32,115,121,115,46,105,109,112,108,101,109,101,110, + 116,97,116,105,111,110,46,99,97,99,104,101,95,116,97,103, + 32,105,115,32,78,111,110,101,32,116,104,101,110,32,78,111, + 116,73,109,112,108,101,109,101,110,116,101,100,69,114,114,111, + 114,32,105,115,32,114,97,105,115,101,100,46,10,10,32,32, + 32,32,78,122,70,116,104,101,32,100,101,98,117,103,95,111, + 118,101,114,114,105,100,101,32,112,97,114,97,109,101,116,101, + 114,32,105,115,32,100,101,112,114,101,99,97,116,101,100,59, + 32,117,115,101,32,39,111,112,116,105,109,105,122,97,116,105, + 111,110,39,32,105,110,115,116,101,97,100,122,50,100,101,98, + 117,103,95,111,118,101,114,114,105,100,101,32,111,114,32,111, + 112,116,105,109,105,122,97,116,105,111,110,32,109,117,115,116, + 32,98,101,32,115,101,116,32,116,111,32,78,111,110,101,114, + 30,0,0,0,114,29,0,0,0,218,1,46,122,36,115,121, + 115,46,105,109,112,108,101,109,101,110,116,97,116,105,111,110, + 46,99,97,99,104,101,95,116,97,103,32,105,115,32,78,111, + 110,101,114,84,0,0,0,122,24,123,33,114,125,32,105,115, + 32,110,111,116,32,97,108,112,104,97,110,117,109,101,114,105, + 99,122,7,123,125,46,123,125,123,125,41,21,218,9,95,119, + 97,114,110,105,110,103,115,218,4,119,97,114,110,218,18,68, + 101,112,114,101,99,97,116,105,111,110,87,97,114,110,105,110, + 103,218,9,84,121,112,101,69,114,114,111,114,114,38,0,0, + 0,114,32,0,0,0,114,7,0,0,0,218,14,105,109,112, + 108,101,109,101,110,116,97,116,105,111,110,218,9,99,97,99, + 104,101,95,116,97,103,218,19,78,111,116,73,109,112,108,101, + 109,101,110,116,101,100,69,114,114,111,114,114,26,0,0,0, + 218,5,102,108,97,103,115,218,8,111,112,116,105,109,105,122, + 101,218,3,115,116,114,218,7,105,115,97,108,110,117,109,218, + 10,86,97,108,117,101,69,114,114,111,114,114,47,0,0,0, + 218,4,95,79,80,84,114,28,0,0,0,218,8,95,80,89, + 67,65,67,72,69,218,17,66,89,84,69,67,79,68,69,95, + 83,85,70,70,73,88,69,83,41,11,114,35,0,0,0,90, + 14,100,101,98,117,103,95,111,118,101,114,114,105,100,101,114, + 116,0,0,0,218,7,109,101,115,115,97,103,101,218,4,104, + 101,97,100,114,37,0,0,0,218,4,98,97,115,101,218,3, + 115,101,112,218,4,114,101,115,116,90,3,116,97,103,90,15, + 97,108,109,111,115,116,95,102,105,108,101,110,97,109,101,114, + 4,0,0,0,114,4,0,0,0,114,5,0,0,0,218,17, + 99,97,99,104,101,95,102,114,111,109,95,115,111,117,114,99, + 101,185,1,0,0,115,46,0,0,0,0,18,12,1,9,1, + 7,1,12,1,6,1,12,1,18,1,18,1,24,1,12,1, + 12,1,12,1,36,1,12,1,18,1,9,2,12,1,12,1, + 12,1,12,1,21,1,21,1,114,138,0,0,0,99,1,0, + 0,0,0,0,0,0,8,0,0,0,5,0,0,0,67,0, + 0,0,115,62,1,0,0,116,0,0,106,1,0,106,2,0, + 100,1,0,107,8,0,114,30,0,116,3,0,100,2,0,131, + 1,0,130,1,0,116,4,0,124,0,0,131,1,0,92,2, + 0,125,1,0,125,2,0,116,4,0,124,1,0,131,1,0, + 92,2,0,125,1,0,125,3,0,124,3,0,116,5,0,107, + 3,0,114,102,0,116,6,0,100,3,0,106,7,0,116,5, + 0,124,0,0,131,2,0,131,1,0,130,1,0,124,2,0, + 106,8,0,100,4,0,131,1,0,125,4,0,124,4,0,100, + 11,0,107,7,0,114,153,0,116,6,0,100,7,0,106,7, + 0,124,2,0,131,1,0,131,1,0,130,1,0,110,125,0, + 124,4,0,100,6,0,107,2,0,114,22,1,124,2,0,106, + 9,0,100,4,0,100,5,0,131,2,0,100,12,0,25,125, + 5,0,124,5,0,106,10,0,116,11,0,131,1,0,115,223, + 0,116,6,0,100,8,0,106,7,0,116,11,0,131,1,0, + 131,1,0,130,1,0,124,5,0,116,12,0,116,11,0,131, + 1,0,100,1,0,133,2,0,25,125,6,0,124,6,0,106, + 13,0,131,0,0,115,22,1,116,6,0,100,9,0,106,7, + 0,124,5,0,131,1,0,131,1,0,130,1,0,124,2,0, + 106,14,0,100,4,0,131,1,0,100,10,0,25,125,7,0, + 116,15,0,124,1,0,124,7,0,116,16,0,100,10,0,25, + 23,131,2,0,83,41,13,97,110,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,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,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,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,47,52,56, + 56,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,78,122,36,115,121,115, + 46,105,109,112,108,101,109,101,110,116,97,116,105,111,110,46, + 99,97,99,104,101,95,116,97,103,32,105,115,32,78,111,110, + 101,122,37,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,114,117,0,0,0,114,115,0, + 0,0,233,3,0,0,0,122,33,101,120,112,101,99,116,101, + 100,32,111,110,108,121,32,50,32,111,114,32,51,32,100,111, + 116,115,32,105,110,32,123,33,114,125,122,57,111,112,116,105, + 109,105,122,97,116,105,111,110,32,112,111,114,116,105,111,110, + 32,111,102,32,102,105,108,101,110,97,109,101,32,100,111,101, + 115,32,110,111,116,32,115,116,97,114,116,32,119,105,116,104, + 32,123,33,114,125,122,52,111,112,116,105,109,105,122,97,116, + 105,111,110,32,108,101,118,101,108,32,123,33,114,125,32,105, + 115,32,110,111,116,32,97,110,32,97,108,112,104,97,110,117, + 109,101,114,105,99,32,118,97,108,117,101,114,84,0,0,0, + 62,2,0,0,0,114,115,0,0,0,114,139,0,0,0,233, + 254,255,255,255,41,17,114,7,0,0,0,114,122,0,0,0, + 114,123,0,0,0,114,124,0,0,0,114,38,0,0,0,114, + 131,0,0,0,114,129,0,0,0,114,47,0,0,0,114,89, + 0,0,0,114,34,0,0,0,114,9,0,0,0,114,130,0, + 0,0,114,31,0,0,0,114,128,0,0,0,218,9,112,97, + 114,116,105,116,105,111,110,114,28,0,0,0,218,15,83,79, + 85,82,67,69,95,83,85,70,70,73,88,69,83,41,8,114, + 35,0,0,0,114,134,0,0,0,90,16,112,121,99,97,99, + 104,101,95,102,105,108,101,110,97,109,101,90,7,112,121,99, + 97,99,104,101,90,9,100,111,116,95,99,111,117,110,116,114, + 116,0,0,0,90,9,111,112,116,95,108,101,118,101,108,90, + 13,98,97,115,101,95,102,105,108,101,110,97,109,101,114,4, + 0,0,0,114,4,0,0,0,114,5,0,0,0,218,17,115, + 111,117,114,99,101,95,102,114,111,109,95,99,97,99,104,101, + 229,1,0,0,115,44,0,0,0,0,9,18,1,12,1,18, + 1,18,1,12,1,9,1,15,1,15,1,12,1,9,1,15, + 1,12,1,22,1,15,1,9,1,12,1,22,1,12,1,9, + 1,12,1,19,1,114,143,0,0,0,99,1,0,0,0,0, + 0,0,0,5,0,0,0,12,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,2,0,83,124,0,0,106,1,0, + 100,3,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,2,0,131, + 0,0,100,7,0,100,8,0,133,2,0,25,100,6,0,107, + 3,0,114,85,0,124,0,0,83,121,16,0,116,3,0,124, + 0,0,131,1,0,125,4,0,87,110,40,0,4,116,4,0, + 116,5,0,102,2,0,107,10,0,114,143,0,1,1,1,124, + 0,0,100,2,0,100,9,0,133,2,0,25,125,4,0,89, + 110,1,0,88,116,6,0,124,4,0,131,1,0,114,160,0, + 124,4,0,83,124,0,0,83,41,10,122,188,67,111,110,118, + 101,114,116,32,97,32,98,121,116,101,99,111,100,101,32,102, + 105,108,101,32,112,97,116,104,32,116,111,32,97,32,115,111, + 117,114,99,101,32,112,97,116,104,32,40,105,102,32,112,111, + 115,115,105,98,108,101,41,46,10,10,32,32,32,32,84,104, + 105,115,32,102,117,110,99,116,105,111,110,32,101,120,105,115, + 116,115,32,112,117,114,101,108,121,32,102,111,114,32,98,97, + 99,107,119,97,114,100,115,45,99,111,109,112,97,116,105,98, + 105,108,105,116,121,32,102,111,114,10,32,32,32,32,80,121, + 73,109,112,111,114,116,95,69,120,101,99,67,111,100,101,77, + 111,100,117,108,101,87,105,116,104,70,105,108,101,110,97,109, + 101,115,40,41,32,105,110,32,116,104,101,32,67,32,65,80, + 73,46,10,10,32,32,32,32,114,84,0,0,0,78,114,117, + 0,0,0,114,139,0,0,0,114,29,0,0,0,90,2,112, + 121,233,253,255,255,255,233,255,255,255,255,114,145,0,0,0, + 41,7,114,31,0,0,0,114,32,0,0,0,218,5,108,111, + 119,101,114,114,143,0,0,0,114,124,0,0,0,114,129,0, + 0,0,114,44,0,0,0,41,5,218,13,98,121,116,101,99, + 111,100,101,95,112,97,116,104,114,137,0,0,0,114,36,0, + 0,0,90,9,101,120,116,101,110,115,105,111,110,218,11,115, + 111,117,114,99,101,95,112,97,116,104,114,4,0,0,0,114, + 4,0,0,0,114,5,0,0,0,218,15,95,103,101,116,95, + 115,111,117,114,99,101,102,105,108,101,6,2,0,0,115,20, + 0,0,0,0,7,18,1,4,1,24,1,35,1,4,1,3, + 1,16,1,19,1,21,1,114,149,0,0,0,99,1,0,0, + 0,0,0,0,0,2,0,0,0,11,0,0,0,67,0,0, + 0,115,60,0,0,0,121,19,0,116,0,0,124,0,0,131, + 1,0,106,1,0,125,1,0,87,110,24,0,4,116,2,0, + 107,10,0,114,45,0,1,1,1,100,1,0,125,1,0,89, + 110,1,0,88,124,1,0,100,2,0,79,125,1,0,124,1, + 0,83,41,3,122,51,67,97,108,99,117,108,97,116,101,32, + 116,104,101,32,109,111,100,101,32,112,101,114,109,105,115,115, + 105,111,110,115,32,102,111,114,32,97,32,98,121,116,101,99, + 111,100,101,32,102,105,108,101,46,105,182,1,0,0,233,128, + 0,0,0,41,3,114,39,0,0,0,114,41,0,0,0,114, + 40,0,0,0,41,2,114,35,0,0,0,114,42,0,0,0, + 114,4,0,0,0,114,4,0,0,0,114,5,0,0,0,218, + 10,95,99,97,108,99,95,109,111,100,101,25,2,0,0,115, + 12,0,0,0,0,2,3,1,19,1,13,1,11,3,10,1, + 114,151,0,0,0,218,9,118,101,114,98,111,115,105,116,121, + 114,29,0,0,0,99,1,0,0,0,1,0,0,0,3,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,124,1,0,107,5,0,114,71, + 0,124,0,0,106,3,0,100,6,0,131,1,0,115,43,0, + 100,3,0,124,0,0,23,125,0,0,116,4,0,124,0,0, + 106,5,0,124,2,0,140,0,0,100,4,0,116,0,0,106, + 6,0,131,1,1,1,100,5,0,83,41,7,122,61,80,114, + 105,110,116,32,116,104,101,32,109,101,115,115,97,103,101,32, + 116,111,32,115,116,100,101,114,114,32,105,102,32,45,118,47, + 80,89,84,72,79,78,86,69,82,66,79,83,69,32,105,115, + 32,116,117,114,110,101,100,32,111,110,46,250,1,35,250,7, + 105,109,112,111,114,116,32,122,2,35,32,114,54,0,0,0, + 78,41,2,114,153,0,0,0,114,154,0,0,0,41,7,114, + 7,0,0,0,114,125,0,0,0,218,7,118,101,114,98,111, + 115,101,114,9,0,0,0,218,5,112,114,105,110,116,114,47, + 0,0,0,218,6,115,116,100,101,114,114,41,3,114,133,0, + 0,0,114,152,0,0,0,114,80,0,0,0,114,4,0,0, + 0,114,4,0,0,0,114,5,0,0,0,218,16,95,118,101, + 114,98,111,115,101,95,109,101,115,115,97,103,101,37,2,0, + 0,115,8,0,0,0,0,2,18,1,15,1,10,1,114,158, + 0,0,0,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,1,0, + 135,0,0,102,1,0,100,2,0,100,3,0,134,1,0,125, + 1,0,116,0,0,124,1,0,136,0,0,131,2,0,1,124, + 1,0,83,41,4,122,252,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,78,99,2,0,0,0,0,0,0,0,4,0,0, + 0,5,0,0,0,31,0,0,0,115,80,0,0,0,124,1, + 0,100,0,0,107,8,0,114,24,0,124,0,0,106,0,0, + 125,1,0,110,37,0,124,0,0,106,0,0,124,1,0,107, + 3,0,114,61,0,116,1,0,100,1,0,124,1,0,22,100, + 2,0,124,1,0,131,1,1,130,1,0,136,0,0,124,0, + 0,124,1,0,124,2,0,124,3,0,142,2,0,83,41,3, + 78,122,23,108,111,97,100,101,114,32,99,97,110,110,111,116, + 32,104,97,110,100,108,101,32,37,115,114,67,0,0,0,41, + 2,114,67,0,0,0,218,11,73,109,112,111,114,116,69,114, + 114,111,114,41,4,114,71,0,0,0,114,67,0,0,0,114, + 80,0,0,0,114,108,0,0,0,41,1,218,6,109,101,116, + 104,111,100,114,4,0,0,0,114,5,0,0,0,218,19,95, + 99,104,101,99,107,95,110,97,109,101,95,119,114,97,112,112, + 101,114,53,2,0,0,115,10,0,0,0,0,1,12,1,12, + 1,15,1,22,1,122,40,95,99,104,101,99,107,95,110,97, + 109,101,46,60,108,111,99,97,108,115,62,46,95,99,104,101, + 99,107,95,110,97,109,101,95,119,114,97,112,112,101,114,41, + 1,114,65,0,0,0,41,2,114,160,0,0,0,114,161,0, + 0,0,114,4,0,0,0,41,1,114,160,0,0,0,114,5, + 0,0,0,218,11,95,99,104,101,99,107,95,110,97,109,101, + 45,2,0,0,115,6,0,0,0,0,8,21,6,13,1,114, + 162,0,0,0,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,41,3,122,49,68,101,99,111,114,97,116,111,114,32,116, + 111,32,118,101,114,105,102,121,32,116,104,101,32,110,97,109, + 101,100,32,109,111,100,117,108,101,32,105,115,32,98,117,105, + 108,116,45,105,110,46,99,2,0,0,0,0,0,0,0,2, + 0,0,0,4,0,0,0,19,0,0,0,115,55,0,0,0, + 124,1,0,116,0,0,106,1,0,107,7,0,114,42,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,136,0,0,124,0,0, + 124,1,0,131,2,0,83,41,3,78,122,29,123,33,114,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,114,67,0,0,0,41,4, + 114,7,0,0,0,218,20,98,117,105,108,116,105,110,95,109, + 111,100,117,108,101,95,110,97,109,101,115,114,159,0,0,0, + 114,47,0,0,0,41,2,114,71,0,0,0,218,8,102,117, + 108,108,110,97,109,101,41,1,218,3,102,120,110,114,4,0, + 0,0,114,5,0,0,0,218,25,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,65,2,0,0,115,8,0,0,0,0,1,15,1,18, + 1,9,1,122,52,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,41,1,114,65,0,0,0, + 41,2,114,165,0,0,0,114,166,0,0,0,114,4,0,0, + 0,41,1,114,165,0,0,0,114,5,0,0,0,218,17,95, + 114,101,113,117,105,114,101,115,95,98,117,105,108,116,105,110, + 63,2,0,0,115,6,0,0,0,0,2,18,5,13,1,114, + 167,0,0,0,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,41,3,122,47,68,101,99,111,114,97,116,111,114,32,116, + 111,32,118,101,114,105,102,121,32,116,104,101,32,110,97,109, + 101,100,32,109,111,100,117,108,101,32,105,115,32,102,114,111, + 122,101,110,46,99,2,0,0,0,0,0,0,0,2,0,0, + 0,4,0,0,0,19,0,0,0,115,55,0,0,0,116,0, + 0,106,1,0,124,1,0,131,1,0,115,42,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,136,0,0,124,0,0,124,1, - 0,124,2,0,124,3,0,142,2,0,83,41,3,78,122,23, - 108,111,97,100,101,114,32,99,97,110,110,111,116,32,104,97, - 110,100,108,101,32,37,115,114,67,0,0,0,41,2,114,67, - 0,0,0,218,11,73,109,112,111,114,116,69,114,114,111,114, - 41,4,114,71,0,0,0,114,67,0,0,0,114,80,0,0, - 0,114,108,0,0,0,41,1,218,6,109,101,116,104,111,100, - 114,4,0,0,0,114,5,0,0,0,218,19,95,99,104,101, - 99,107,95,110,97,109,101,95,119,114,97,112,112,101,114,52, - 2,0,0,115,10,0,0,0,0,1,12,1,12,1,15,1, - 22,1,122,40,95,99,104,101,99,107,95,110,97,109,101,46, - 60,108,111,99,97,108,115,62,46,95,99,104,101,99,107,95, - 110,97,109,101,95,119,114,97,112,112,101,114,41,1,114,65, - 0,0,0,41,2,114,160,0,0,0,114,161,0,0,0,114, - 4,0,0,0,41,1,114,160,0,0,0,114,5,0,0,0, - 218,11,95,99,104,101,99,107,95,110,97,109,101,44,2,0, - 0,115,6,0,0,0,0,8,21,6,13,1,114,162,0,0, - 0,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,41,3, - 122,49,68,101,99,111,114,97,116,111,114,32,116,111,32,118, - 101,114,105,102,121,32,116,104,101,32,110,97,109,101,100,32, - 109,111,100,117,108,101,32,105,115,32,98,117,105,108,116,45, - 105,110,46,99,2,0,0,0,0,0,0,0,2,0,0,0, - 4,0,0,0,19,0,0,0,115,55,0,0,0,124,1,0, - 116,0,0,106,1,0,107,7,0,114,42,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,136,0,0,124,0,0,124,1,0, - 131,2,0,83,41,3,78,122,29,123,33,114,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,114,67,0,0,0,41,4,114,7,0, - 0,0,218,20,98,117,105,108,116,105,110,95,109,111,100,117, - 108,101,95,110,97,109,101,115,114,159,0,0,0,114,47,0, - 0,0,41,2,114,71,0,0,0,218,8,102,117,108,108,110, - 97,109,101,41,1,218,3,102,120,110,114,4,0,0,0,114, - 5,0,0,0,218,25,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,64, - 2,0,0,115,8,0,0,0,0,1,15,1,18,1,9,1, - 122,52,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,41,1,114,65,0,0,0,41,2,114, - 165,0,0,0,114,166,0,0,0,114,4,0,0,0,41,1, - 114,165,0,0,0,114,5,0,0,0,218,17,95,114,101,113, - 117,105,114,101,115,95,98,117,105,108,116,105,110,62,2,0, - 0,115,6,0,0,0,0,2,18,5,13,1,114,167,0,0, - 0,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,41,3, - 122,47,68,101,99,111,114,97,116,111,114,32,116,111,32,118, - 101,114,105,102,121,32,116,104,101,32,110,97,109,101,100,32, - 109,111,100,117,108,101,32,105,115,32,102,114,111,122,101,110, - 46,99,2,0,0,0,0,0,0,0,2,0,0,0,4,0, - 0,0,19,0,0,0,115,55,0,0,0,116,0,0,106,1, - 0,124,1,0,131,1,0,115,42,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,136,0,0,124,0,0,124,1,0,131,2, - 0,83,41,3,78,122,27,123,33,114,125,32,105,115,32,110, - 111,116,32,97,32,102,114,111,122,101,110,32,109,111,100,117, - 108,101,114,67,0,0,0,41,4,114,106,0,0,0,218,9, - 105,115,95,102,114,111,122,101,110,114,159,0,0,0,114,47, - 0,0,0,41,2,114,71,0,0,0,114,164,0,0,0,41, - 1,114,165,0,0,0,114,4,0,0,0,114,5,0,0,0, - 218,24,95,114,101,113,117,105,114,101,115,95,102,114,111,122, - 101,110,95,119,114,97,112,112,101,114,75,2,0,0,115,8, - 0,0,0,0,1,15,1,18,1,9,1,122,50,95,114,101, - 113,117,105,114,101,115,95,102,114,111,122,101,110,46,60,108, - 111,99,97,108,115,62,46,95,114,101,113,117,105,114,101,115, - 95,102,114,111,122,101,110,95,119,114,97,112,112,101,114,41, - 1,114,65,0,0,0,41,2,114,165,0,0,0,114,169,0, - 0,0,114,4,0,0,0,41,1,114,165,0,0,0,114,5, - 0,0,0,218,16,95,114,101,113,117,105,114,101,115,95,102, - 114,111,122,101,110,73,2,0,0,115,6,0,0,0,0,2, - 18,5,13,1,114,170,0,0,0,99,2,0,0,0,0,0, - 0,0,5,0,0,0,4,0,0,0,67,0,0,0,115,84, - 0,0,0,124,0,0,106,0,0,124,1,0,131,1,0,92, - 2,0,125,2,0,125,3,0,124,2,0,100,1,0,107,8, - 0,114,80,0,116,1,0,124,3,0,131,1,0,114,80,0, - 100,2,0,125,4,0,116,2,0,106,3,0,124,4,0,106, - 4,0,124,3,0,100,3,0,25,131,1,0,116,5,0,131, - 2,0,1,124,2,0,83,41,4,122,155,84,114,121,32,116, - 111,32,102,105,110,100,32,97,32,108,111,97,100,101,114,32, - 102,111,114,32,116,104,101,32,115,112,101,99,105,102,105,101, - 100,32,109,111,100,117,108,101,32,98,121,32,100,101,108,101, - 103,97,116,105,110,103,32,116,111,10,32,32,32,32,115,101, - 108,102,46,102,105,110,100,95,108,111,97,100,101,114,40,41, - 46,10,10,32,32,32,32,84,104,105,115,32,109,101,116,104, - 111,100,32,105,115,32,100,101,112,114,101,99,97,116,101,100, - 32,105,110,32,102,97,118,111,114,32,111,102,32,102,105,110, - 100,101,114,46,102,105,110,100,95,115,112,101,99,40,41,46, - 10,10,32,32,32,32,78,122,44,78,111,116,32,105,109,112, - 111,114,116,105,110,103,32,100,105,114,101,99,116,111,114,121, - 32,123,125,58,32,109,105,115,115,105,110,103,32,95,95,105, - 110,105,116,95,95,114,84,0,0,0,41,6,218,11,102,105, - 110,100,95,108,111,97,100,101,114,114,31,0,0,0,114,118, - 0,0,0,114,119,0,0,0,114,47,0,0,0,218,13,73, - 109,112,111,114,116,87,97,114,110,105,110,103,41,5,114,71, - 0,0,0,114,164,0,0,0,218,6,108,111,97,100,101,114, - 218,8,112,111,114,116,105,111,110,115,218,3,109,115,103,114, - 4,0,0,0,114,4,0,0,0,114,5,0,0,0,218,17, - 95,102,105,110,100,95,109,111,100,117,108,101,95,115,104,105, - 109,84,2,0,0,115,10,0,0,0,0,10,21,1,24,1, - 6,1,29,1,114,176,0,0,0,99,2,0,0,0,0,0, - 0,0,4,0,0,0,3,0,0,0,67,0,0,0,115,81, - 0,0,0,116,0,0,124,1,0,124,0,0,131,2,0,125, - 2,0,124,1,0,116,1,0,106,2,0,107,6,0,114,67, - 0,116,1,0,106,2,0,124,1,0,25,125,3,0,116,3, - 0,124,2,0,124,3,0,131,2,0,1,116,1,0,106,2, - 0,124,1,0,25,83,116,4,0,124,2,0,131,1,0,83, - 100,1,0,83,41,2,122,128,76,111,97,100,32,116,104,101, - 32,115,112,101,99,105,102,105,101,100,32,109,111,100,117,108, - 101,32,105,110,116,111,32,115,121,115,46,109,111,100,117,108, - 101,115,32,97,110,100,32,114,101,116,117,114,110,32,105,116, - 46,10,10,32,32,32,32,84,104,105,115,32,109,101,116,104, - 111,100,32,105,115,32,100,101,112,114,101,99,97,116,101,100, - 46,32,32,85,115,101,32,108,111,97,100,101,114,46,101,120, - 101,99,95,109,111,100,117,108,101,32,105,110,115,116,101,97, - 100,46,10,10,32,32,32,32,78,41,5,218,16,115,112,101, - 99,95,102,114,111,109,95,108,111,97,100,101,114,114,7,0, - 0,0,114,73,0,0,0,218,5,95,101,120,101,99,218,5, - 95,108,111,97,100,41,4,114,71,0,0,0,114,164,0,0, - 0,218,4,115,112,101,99,218,6,109,111,100,117,108,101,114, - 4,0,0,0,114,4,0,0,0,114,5,0,0,0,218,17, - 95,108,111,97,100,95,109,111,100,117,108,101,95,115,104,105, - 109,102,2,0,0,115,12,0,0,0,0,6,15,1,15,1, - 13,1,13,1,11,2,114,182,0,0,0,99,4,0,0,0, - 0,0,0,0,11,0,0,0,19,0,0,0,67,0,0,0, - 115,228,1,0,0,105,0,0,125,4,0,124,2,0,100,1, - 0,107,9,0,114,31,0,124,2,0,124,4,0,100,2,0, - 60,110,6,0,100,3,0,125,2,0,124,3,0,100,1,0, - 107,9,0,114,59,0,124,3,0,124,4,0,100,4,0,60, - 124,0,0,100,1,0,100,5,0,133,2,0,25,125,5,0, - 124,0,0,100,5,0,100,6,0,133,2,0,25,125,6,0, - 124,0,0,100,6,0,100,7,0,133,2,0,25,125,7,0, - 124,5,0,116,0,0,107,3,0,114,165,0,100,8,0,106, - 1,0,124,2,0,124,5,0,131,2,0,125,8,0,116,2, - 0,124,8,0,131,1,0,1,116,3,0,124,8,0,124,4, - 0,141,1,0,130,1,0,110,113,0,116,4,0,124,6,0, - 131,1,0,100,5,0,107,3,0,114,223,0,100,9,0,106, - 1,0,124,2,0,131,1,0,125,8,0,116,2,0,124,8, - 0,131,1,0,1,116,5,0,124,8,0,131,1,0,130,1, - 0,110,55,0,116,4,0,124,7,0,131,1,0,100,5,0, - 107,3,0,114,22,1,100,10,0,106,1,0,124,2,0,131, - 1,0,125,8,0,116,2,0,124,8,0,131,1,0,1,116, - 5,0,124,8,0,131,1,0,130,1,0,124,1,0,100,1, - 0,107,9,0,114,214,1,121,20,0,116,6,0,124,1,0, - 100,11,0,25,131,1,0,125,9,0,87,110,18,0,4,116, - 7,0,107,10,0,114,74,1,1,1,1,89,110,59,0,88, - 116,8,0,124,6,0,131,1,0,124,9,0,107,3,0,114, - 133,1,100,12,0,106,1,0,124,2,0,131,1,0,125,8, + 0,131,2,0,83,41,3,78,122,27,123,33,114,125,32,105, + 115,32,110,111,116,32,97,32,102,114,111,122,101,110,32,109, + 111,100,117,108,101,114,67,0,0,0,41,4,114,106,0,0, + 0,218,9,105,115,95,102,114,111,122,101,110,114,159,0,0, + 0,114,47,0,0,0,41,2,114,71,0,0,0,114,164,0, + 0,0,41,1,114,165,0,0,0,114,4,0,0,0,114,5, + 0,0,0,218,24,95,114,101,113,117,105,114,101,115,95,102, + 114,111,122,101,110,95,119,114,97,112,112,101,114,76,2,0, + 0,115,8,0,0,0,0,1,15,1,18,1,9,1,122,50, + 95,114,101,113,117,105,114,101,115,95,102,114,111,122,101,110, + 46,60,108,111,99,97,108,115,62,46,95,114,101,113,117,105, + 114,101,115,95,102,114,111,122,101,110,95,119,114,97,112,112, + 101,114,41,1,114,65,0,0,0,41,2,114,165,0,0,0, + 114,169,0,0,0,114,4,0,0,0,41,1,114,165,0,0, + 0,114,5,0,0,0,218,16,95,114,101,113,117,105,114,101, + 115,95,102,114,111,122,101,110,74,2,0,0,115,6,0,0, + 0,0,2,18,5,13,1,114,170,0,0,0,99,2,0,0, + 0,0,0,0,0,5,0,0,0,4,0,0,0,67,0,0, + 0,115,84,0,0,0,124,0,0,106,0,0,124,1,0,131, + 1,0,92,2,0,125,2,0,125,3,0,124,2,0,100,1, + 0,107,8,0,114,80,0,116,1,0,124,3,0,131,1,0, + 114,80,0,100,2,0,125,4,0,116,2,0,106,3,0,124, + 4,0,106,4,0,124,3,0,100,3,0,25,131,1,0,116, + 5,0,131,2,0,1,124,2,0,83,41,4,122,155,84,114, + 121,32,116,111,32,102,105,110,100,32,97,32,108,111,97,100, + 101,114,32,102,111,114,32,116,104,101,32,115,112,101,99,105, + 102,105,101,100,32,109,111,100,117,108,101,32,98,121,32,100, + 101,108,101,103,97,116,105,110,103,32,116,111,10,32,32,32, + 32,115,101,108,102,46,102,105,110,100,95,108,111,97,100,101, + 114,40,41,46,10,10,32,32,32,32,84,104,105,115,32,109, + 101,116,104,111,100,32,105,115,32,100,101,112,114,101,99,97, + 116,101,100,32,105,110,32,102,97,118,111,114,32,111,102,32, + 102,105,110,100,101,114,46,102,105,110,100,95,115,112,101,99, + 40,41,46,10,10,32,32,32,32,78,122,44,78,111,116,32, + 105,109,112,111,114,116,105,110,103,32,100,105,114,101,99,116, + 111,114,121,32,123,125,58,32,109,105,115,115,105,110,103,32, + 95,95,105,110,105,116,95,95,114,84,0,0,0,41,6,218, + 11,102,105,110,100,95,108,111,97,100,101,114,114,31,0,0, + 0,114,118,0,0,0,114,119,0,0,0,114,47,0,0,0, + 218,13,73,109,112,111,114,116,87,97,114,110,105,110,103,41, + 5,114,71,0,0,0,114,164,0,0,0,218,6,108,111,97, + 100,101,114,218,8,112,111,114,116,105,111,110,115,218,3,109, + 115,103,114,4,0,0,0,114,4,0,0,0,114,5,0,0, + 0,218,17,95,102,105,110,100,95,109,111,100,117,108,101,95, + 115,104,105,109,85,2,0,0,115,10,0,0,0,0,10,21, + 1,24,1,6,1,29,1,114,176,0,0,0,99,2,0,0, + 0,0,0,0,0,4,0,0,0,3,0,0,0,67,0,0, + 0,115,81,0,0,0,116,0,0,124,1,0,124,0,0,131, + 2,0,125,2,0,124,1,0,116,1,0,106,2,0,107,6, + 0,114,67,0,116,1,0,106,2,0,124,1,0,25,125,3, + 0,116,3,0,124,2,0,124,3,0,131,2,0,1,116,1, + 0,106,2,0,124,1,0,25,83,116,4,0,124,2,0,131, + 1,0,83,100,1,0,83,41,2,122,128,76,111,97,100,32, + 116,104,101,32,115,112,101,99,105,102,105,101,100,32,109,111, + 100,117,108,101,32,105,110,116,111,32,115,121,115,46,109,111, + 100,117,108,101,115,32,97,110,100,32,114,101,116,117,114,110, + 32,105,116,46,10,10,32,32,32,32,84,104,105,115,32,109, + 101,116,104,111,100,32,105,115,32,100,101,112,114,101,99,97, + 116,101,100,46,32,32,85,115,101,32,108,111,97,100,101,114, + 46,101,120,101,99,95,109,111,100,117,108,101,32,105,110,115, + 116,101,97,100,46,10,10,32,32,32,32,78,41,5,218,16, + 115,112,101,99,95,102,114,111,109,95,108,111,97,100,101,114, + 114,7,0,0,0,114,73,0,0,0,218,5,95,101,120,101, + 99,218,5,95,108,111,97,100,41,4,114,71,0,0,0,114, + 164,0,0,0,218,4,115,112,101,99,218,6,109,111,100,117, + 108,101,114,4,0,0,0,114,4,0,0,0,114,5,0,0, + 0,218,17,95,108,111,97,100,95,109,111,100,117,108,101,95, + 115,104,105,109,103,2,0,0,115,12,0,0,0,0,6,15, + 1,15,1,13,1,13,1,11,2,114,182,0,0,0,99,4, + 0,0,0,0,0,0,0,11,0,0,0,19,0,0,0,67, + 0,0,0,115,228,1,0,0,105,0,0,125,4,0,124,2, + 0,100,1,0,107,9,0,114,31,0,124,2,0,124,4,0, + 100,2,0,60,110,6,0,100,3,0,125,2,0,124,3,0, + 100,1,0,107,9,0,114,59,0,124,3,0,124,4,0,100, + 4,0,60,124,0,0,100,1,0,100,5,0,133,2,0,25, + 125,5,0,124,0,0,100,5,0,100,6,0,133,2,0,25, + 125,6,0,124,0,0,100,6,0,100,7,0,133,2,0,25, + 125,7,0,124,5,0,116,0,0,107,3,0,114,165,0,100, + 8,0,106,1,0,124,2,0,124,5,0,131,2,0,125,8, 0,116,2,0,124,8,0,131,1,0,1,116,3,0,124,8, - 0,124,4,0,141,1,0,130,1,0,121,18,0,124,1,0, - 100,13,0,25,100,14,0,64,125,10,0,87,110,18,0,4, - 116,7,0,107,10,0,114,171,1,1,1,1,89,110,43,0, - 88,116,8,0,124,7,0,131,1,0,124,10,0,107,3,0, - 114,214,1,116,3,0,100,12,0,106,1,0,124,2,0,131, - 1,0,124,4,0,141,1,0,130,1,0,124,0,0,100,7, - 0,100,1,0,133,2,0,25,83,41,15,97,122,1,0,0, - 86,97,108,105,100,97,116,101,32,116,104,101,32,104,101,97, - 100,101,114,32,111,102,32,116,104,101,32,112,97,115,115,101, - 100,45,105,110,32,98,121,116,101,99,111,100,101,32,97,103, - 97,105,110,115,116,32,115,111,117,114,99,101,95,115,116,97, - 116,115,32,40,105,102,10,32,32,32,32,103,105,118,101,110, - 41,32,97,110,100,32,114,101,116,117,114,110,105,110,103,32, - 116,104,101,32,98,121,116,101,99,111,100,101,32,116,104,97, - 116,32,99,97,110,32,98,101,32,99,111,109,112,105,108,101, - 100,32,98,121,32,99,111,109,112,105,108,101,40,41,46,10, - 10,32,32,32,32,65,108,108,32,111,116,104,101,114,32,97, - 114,103,117,109,101,110,116,115,32,97,114,101,32,117,115,101, - 100,32,116,111,32,101,110,104,97,110,99,101,32,101,114,114, - 111,114,32,114,101,112,111,114,116,105,110,103,46,10,10,32, - 32,32,32,73,109,112,111,114,116,69,114,114,111,114,32,105, - 115,32,114,97,105,115,101,100,32,119,104,101,110,32,116,104, - 101,32,109,97,103,105,99,32,110,117,109,98,101,114,32,105, - 115,32,105,110,99,111,114,114,101,99,116,32,111,114,32,116, - 104,101,32,98,121,116,101,99,111,100,101,32,105,115,10,32, - 32,32,32,102,111,117,110,100,32,116,111,32,98,101,32,115, - 116,97,108,101,46,32,69,79,70,69,114,114,111,114,32,105, - 115,32,114,97,105,115,101,100,32,119,104,101,110,32,116,104, - 101,32,100,97,116,97,32,105,115,32,102,111,117,110,100,32, - 116,111,32,98,101,10,32,32,32,32,116,114,117,110,99,97, - 116,101,100,46,10,10,32,32,32,32,78,114,67,0,0,0, - 122,10,60,98,121,116,101,99,111,100,101,62,114,35,0,0, - 0,114,12,0,0,0,233,8,0,0,0,233,12,0,0,0, - 122,30,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, - 122,43,114,101,97,99,104,101,100,32,69,79,70,32,119,104, - 105,108,101,32,114,101,97,100,105,110,103,32,116,105,109,101, - 115,116,97,109,112,32,105,110,32,123,33,114,125,122,48,114, - 101,97,99,104,101,100,32,69,79,70,32,119,104,105,108,101, - 32,114,101,97,100,105,110,103,32,115,105,122,101,32,111,102, - 32,115,111,117,114,99,101,32,105,110,32,123,33,114,125,218, - 5,109,116,105,109,101,122,26,98,121,116,101,99,111,100,101, - 32,105,115,32,115,116,97,108,101,32,102,111,114,32,123,33, - 114,125,218,4,115,105,122,101,108,3,0,0,0,255,127,255, - 127,3,0,41,9,218,12,77,65,71,73,67,95,78,85,77, - 66,69,82,114,47,0,0,0,114,158,0,0,0,114,159,0, - 0,0,114,31,0,0,0,218,8,69,79,70,69,114,114,111, - 114,114,14,0,0,0,114,79,0,0,0,114,19,0,0,0, - 41,11,114,53,0,0,0,218,12,115,111,117,114,99,101,95, - 115,116,97,116,115,114,67,0,0,0,114,35,0,0,0,90, - 11,101,120,99,95,100,101,116,97,105,108,115,90,5,109,97, - 103,105,99,90,13,114,97,119,95,116,105,109,101,115,116,97, - 109,112,90,8,114,97,119,95,115,105,122,101,114,133,0,0, - 0,218,12,115,111,117,114,99,101,95,109,116,105,109,101,218, - 11,115,111,117,114,99,101,95,115,105,122,101,114,4,0,0, - 0,114,4,0,0,0,114,5,0,0,0,218,25,95,118,97, - 108,105,100,97,116,101,95,98,121,116,101,99,111,100,101,95, - 104,101,97,100,101,114,117,2,0,0,115,76,0,0,0,0, - 11,6,1,12,1,13,3,6,1,12,1,10,1,16,1,16, - 1,16,1,12,1,18,1,10,1,18,1,18,1,15,1,10, - 1,15,1,18,1,15,1,10,1,12,1,12,1,3,1,20, - 1,13,1,5,2,18,1,15,1,10,1,15,1,3,1,18, - 1,13,1,5,2,18,1,15,1,9,1,114,192,0,0,0, - 99,4,0,0,0,0,0,0,0,5,0,0,0,6,0,0, - 0,67,0,0,0,115,112,0,0,0,116,0,0,106,1,0, - 124,0,0,131,1,0,125,4,0,116,2,0,124,4,0,116, - 3,0,131,2,0,114,75,0,116,4,0,100,1,0,124,2, - 0,131,2,0,1,124,3,0,100,2,0,107,9,0,114,71, - 0,116,5,0,106,6,0,124,4,0,124,3,0,131,2,0, - 1,124,4,0,83,116,7,0,100,3,0,106,8,0,124,2, - 0,131,1,0,100,4,0,124,1,0,100,5,0,124,2,0, - 131,1,2,130,1,0,100,2,0,83,41,6,122,60,67,111, - 109,112,105,108,101,32,98,121,116,101,99,111,100,101,32,97, - 115,32,114,101,116,117,114,110,101,100,32,98,121,32,95,118, - 97,108,105,100,97,116,101,95,98,121,116,101,99,111,100,101, - 95,104,101,97,100,101,114,40,41,46,122,21,99,111,100,101, - 32,111,98,106,101,99,116,32,102,114,111,109,32,123,33,114, - 125,78,122,23,78,111,110,45,99,111,100,101,32,111,98,106, - 101,99,116,32,105,110,32,123,33,114,125,114,67,0,0,0, - 114,35,0,0,0,41,9,218,7,109,97,114,115,104,97,108, - 90,5,108,111,97,100,115,218,10,105,115,105,110,115,116,97, - 110,99,101,218,10,95,99,111,100,101,95,116,121,112,101,114, - 158,0,0,0,114,106,0,0,0,90,16,95,102,105,120,95, - 99,111,95,102,105,108,101,110,97,109,101,114,159,0,0,0, - 114,47,0,0,0,41,5,114,53,0,0,0,114,67,0,0, - 0,114,147,0,0,0,114,148,0,0,0,218,4,99,111,100, - 101,114,4,0,0,0,114,4,0,0,0,114,5,0,0,0, - 218,17,95,99,111,109,112,105,108,101,95,98,121,116,101,99, - 111,100,101,172,2,0,0,115,16,0,0,0,0,2,15,1, - 15,1,13,1,12,1,16,1,4,2,18,1,114,197,0,0, - 0,114,84,0,0,0,99,3,0,0,0,0,0,0,0,4, - 0,0,0,3,0,0,0,67,0,0,0,115,76,0,0,0, - 116,0,0,116,1,0,131,1,0,125,3,0,124,3,0,106, - 2,0,116,3,0,124,1,0,131,1,0,131,1,0,1,124, - 3,0,106,2,0,116,3,0,124,2,0,131,1,0,131,1, - 0,1,124,3,0,106,2,0,116,4,0,106,5,0,124,0, - 0,131,1,0,131,1,0,1,124,3,0,83,41,1,122,80, - 67,111,109,112,105,108,101,32,97,32,99,111,100,101,32,111, - 98,106,101,99,116,32,105,110,116,111,32,98,121,116,101,99, - 111,100,101,32,102,111,114,32,119,114,105,116,105,110,103,32, - 111,117,116,32,116,111,32,97,32,98,121,116,101,45,99,111, - 109,112,105,108,101,100,10,32,32,32,32,102,105,108,101,46, - 41,6,218,9,98,121,116,101,97,114,114,97,121,114,187,0, - 0,0,218,6,101,120,116,101,110,100,114,17,0,0,0,114, - 193,0,0,0,90,5,100,117,109,112,115,41,4,114,196,0, - 0,0,114,185,0,0,0,114,191,0,0,0,114,53,0,0, + 0,124,4,0,141,1,0,130,1,0,110,113,0,116,4,0, + 124,6,0,131,1,0,100,5,0,107,3,0,114,223,0,100, + 9,0,106,1,0,124,2,0,131,1,0,125,8,0,116,2, + 0,124,8,0,131,1,0,1,116,5,0,124,8,0,131,1, + 0,130,1,0,110,55,0,116,4,0,124,7,0,131,1,0, + 100,5,0,107,3,0,114,22,1,100,10,0,106,1,0,124, + 2,0,131,1,0,125,8,0,116,2,0,124,8,0,131,1, + 0,1,116,5,0,124,8,0,131,1,0,130,1,0,124,1, + 0,100,1,0,107,9,0,114,214,1,121,20,0,116,6,0, + 124,1,0,100,11,0,25,131,1,0,125,9,0,87,110,18, + 0,4,116,7,0,107,10,0,114,74,1,1,1,1,89,110, + 59,0,88,116,8,0,124,6,0,131,1,0,124,9,0,107, + 3,0,114,133,1,100,12,0,106,1,0,124,2,0,131,1, + 0,125,8,0,116,2,0,124,8,0,131,1,0,1,116,3, + 0,124,8,0,124,4,0,141,1,0,130,1,0,121,18,0, + 124,1,0,100,13,0,25,100,14,0,64,125,10,0,87,110, + 18,0,4,116,7,0,107,10,0,114,171,1,1,1,1,89, + 110,43,0,88,116,8,0,124,7,0,131,1,0,124,10,0, + 107,3,0,114,214,1,116,3,0,100,12,0,106,1,0,124, + 2,0,131,1,0,124,4,0,141,1,0,130,1,0,124,0, + 0,100,7,0,100,1,0,133,2,0,25,83,41,15,97,122, + 1,0,0,86,97,108,105,100,97,116,101,32,116,104,101,32, + 104,101,97,100,101,114,32,111,102,32,116,104,101,32,112,97, + 115,115,101,100,45,105,110,32,98,121,116,101,99,111,100,101, + 32,97,103,97,105,110,115,116,32,115,111,117,114,99,101,95, + 115,116,97,116,115,32,40,105,102,10,32,32,32,32,103,105, + 118,101,110,41,32,97,110,100,32,114,101,116,117,114,110,105, + 110,103,32,116,104,101,32,98,121,116,101,99,111,100,101,32, + 116,104,97,116,32,99,97,110,32,98,101,32,99,111,109,112, + 105,108,101,100,32,98,121,32,99,111,109,112,105,108,101,40, + 41,46,10,10,32,32,32,32,65,108,108,32,111,116,104,101, + 114,32,97,114,103,117,109,101,110,116,115,32,97,114,101,32, + 117,115,101,100,32,116,111,32,101,110,104,97,110,99,101,32, + 101,114,114,111,114,32,114,101,112,111,114,116,105,110,103,46, + 10,10,32,32,32,32,73,109,112,111,114,116,69,114,114,111, + 114,32,105,115,32,114,97,105,115,101,100,32,119,104,101,110, + 32,116,104,101,32,109,97,103,105,99,32,110,117,109,98,101, + 114,32,105,115,32,105,110,99,111,114,114,101,99,116,32,111, + 114,32,116,104,101,32,98,121,116,101,99,111,100,101,32,105, + 115,10,32,32,32,32,102,111,117,110,100,32,116,111,32,98, + 101,32,115,116,97,108,101,46,32,69,79,70,69,114,114,111, + 114,32,105,115,32,114,97,105,115,101,100,32,119,104,101,110, + 32,116,104,101,32,100,97,116,97,32,105,115,32,102,111,117, + 110,100,32,116,111,32,98,101,10,32,32,32,32,116,114,117, + 110,99,97,116,101,100,46,10,10,32,32,32,32,78,114,67, + 0,0,0,122,10,60,98,121,116,101,99,111,100,101,62,114, + 35,0,0,0,114,12,0,0,0,233,8,0,0,0,233,12, + 0,0,0,122,30,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,122,43,114,101,97,99,104,101,100,32,69,79,70, + 32,119,104,105,108,101,32,114,101,97,100,105,110,103,32,116, + 105,109,101,115,116,97,109,112,32,105,110,32,123,33,114,125, + 122,48,114,101,97,99,104,101,100,32,69,79,70,32,119,104, + 105,108,101,32,114,101,97,100,105,110,103,32,115,105,122,101, + 32,111,102,32,115,111,117,114,99,101,32,105,110,32,123,33, + 114,125,218,5,109,116,105,109,101,122,26,98,121,116,101,99, + 111,100,101,32,105,115,32,115,116,97,108,101,32,102,111,114, + 32,123,33,114,125,218,4,115,105,122,101,108,3,0,0,0, + 255,127,255,127,3,0,41,9,218,12,77,65,71,73,67,95, + 78,85,77,66,69,82,114,47,0,0,0,114,158,0,0,0, + 114,159,0,0,0,114,31,0,0,0,218,8,69,79,70,69, + 114,114,111,114,114,14,0,0,0,114,79,0,0,0,114,19, + 0,0,0,41,11,114,53,0,0,0,218,12,115,111,117,114, + 99,101,95,115,116,97,116,115,114,67,0,0,0,114,35,0, + 0,0,90,11,101,120,99,95,100,101,116,97,105,108,115,90, + 5,109,97,103,105,99,90,13,114,97,119,95,116,105,109,101, + 115,116,97,109,112,90,8,114,97,119,95,115,105,122,101,114, + 133,0,0,0,218,12,115,111,117,114,99,101,95,109,116,105, + 109,101,218,11,115,111,117,114,99,101,95,115,105,122,101,114, + 4,0,0,0,114,4,0,0,0,114,5,0,0,0,218,25, + 95,118,97,108,105,100,97,116,101,95,98,121,116,101,99,111, + 100,101,95,104,101,97,100,101,114,118,2,0,0,115,76,0, + 0,0,0,11,6,1,12,1,13,3,6,1,12,1,10,1, + 16,1,16,1,16,1,12,1,18,1,10,1,18,1,18,1, + 15,1,10,1,15,1,18,1,15,1,10,1,12,1,12,1, + 3,1,20,1,13,1,5,2,18,1,15,1,10,1,15,1, + 3,1,18,1,13,1,5,2,18,1,15,1,9,1,114,192, + 0,0,0,99,4,0,0,0,0,0,0,0,5,0,0,0, + 6,0,0,0,67,0,0,0,115,112,0,0,0,116,0,0, + 106,1,0,124,0,0,131,1,0,125,4,0,116,2,0,124, + 4,0,116,3,0,131,2,0,114,75,0,116,4,0,100,1, + 0,124,2,0,131,2,0,1,124,3,0,100,2,0,107,9, + 0,114,71,0,116,5,0,106,6,0,124,4,0,124,3,0, + 131,2,0,1,124,4,0,83,116,7,0,100,3,0,106,8, + 0,124,2,0,131,1,0,100,4,0,124,1,0,100,5,0, + 124,2,0,131,1,2,130,1,0,100,2,0,83,41,6,122, + 60,67,111,109,112,105,108,101,32,98,121,116,101,99,111,100, + 101,32,97,115,32,114,101,116,117,114,110,101,100,32,98,121, + 32,95,118,97,108,105,100,97,116,101,95,98,121,116,101,99, + 111,100,101,95,104,101,97,100,101,114,40,41,46,122,21,99, + 111,100,101,32,111,98,106,101,99,116,32,102,114,111,109,32, + 123,33,114,125,78,122,23,78,111,110,45,99,111,100,101,32, + 111,98,106,101,99,116,32,105,110,32,123,33,114,125,114,67, + 0,0,0,114,35,0,0,0,41,9,218,7,109,97,114,115, + 104,97,108,90,5,108,111,97,100,115,218,10,105,115,105,110, + 115,116,97,110,99,101,218,10,95,99,111,100,101,95,116,121, + 112,101,114,158,0,0,0,114,106,0,0,0,90,16,95,102, + 105,120,95,99,111,95,102,105,108,101,110,97,109,101,114,159, + 0,0,0,114,47,0,0,0,41,5,114,53,0,0,0,114, + 67,0,0,0,114,147,0,0,0,114,148,0,0,0,218,4, + 99,111,100,101,114,4,0,0,0,114,4,0,0,0,114,5, + 0,0,0,218,17,95,99,111,109,112,105,108,101,95,98,121, + 116,101,99,111,100,101,173,2,0,0,115,16,0,0,0,0, + 2,15,1,15,1,13,1,12,1,16,1,4,2,18,1,114, + 197,0,0,0,114,84,0,0,0,99,3,0,0,0,0,0, + 0,0,4,0,0,0,3,0,0,0,67,0,0,0,115,76, + 0,0,0,116,0,0,116,1,0,131,1,0,125,3,0,124, + 3,0,106,2,0,116,3,0,124,1,0,131,1,0,131,1, + 0,1,124,3,0,106,2,0,116,3,0,124,2,0,131,1, + 0,131,1,0,1,124,3,0,106,2,0,116,4,0,106,5, + 0,124,0,0,131,1,0,131,1,0,1,124,3,0,83,41, + 1,122,80,67,111,109,112,105,108,101,32,97,32,99,111,100, + 101,32,111,98,106,101,99,116,32,105,110,116,111,32,98,121, + 116,101,99,111,100,101,32,102,111,114,32,119,114,105,116,105, + 110,103,32,111,117,116,32,116,111,32,97,32,98,121,116,101, + 45,99,111,109,112,105,108,101,100,10,32,32,32,32,102,105, + 108,101,46,41,6,218,9,98,121,116,101,97,114,114,97,121, + 114,187,0,0,0,218,6,101,120,116,101,110,100,114,17,0, + 0,0,114,193,0,0,0,90,5,100,117,109,112,115,41,4, + 114,196,0,0,0,114,185,0,0,0,114,191,0,0,0,114, + 53,0,0,0,114,4,0,0,0,114,4,0,0,0,114,5, + 0,0,0,218,17,95,99,111,100,101,95,116,111,95,98,121, + 116,101,99,111,100,101,185,2,0,0,115,10,0,0,0,0, + 3,12,1,19,1,19,1,22,1,114,200,0,0,0,99,1, + 0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,67, + 0,0,0,115,89,0,0,0,100,1,0,100,2,0,108,0, + 0,125,1,0,116,1,0,106,2,0,124,0,0,131,1,0, + 106,3,0,125,2,0,124,1,0,106,4,0,124,2,0,131, + 1,0,125,3,0,116,1,0,106,5,0,100,2,0,100,3, + 0,131,2,0,125,4,0,124,4,0,106,6,0,124,0,0, + 106,6,0,124,3,0,100,1,0,25,131,1,0,131,1,0, + 83,41,4,122,121,68,101,99,111,100,101,32,98,121,116,101, + 115,32,114,101,112,114,101,115,101,110,116,105,110,103,32,115, + 111,117,114,99,101,32,99,111,100,101,32,97,110,100,32,114, + 101,116,117,114,110,32,116,104,101,32,115,116,114,105,110,103, + 46,10,10,32,32,32,32,85,110,105,118,101,114,115,97,108, + 32,110,101,119,108,105,110,101,32,115,117,112,112,111,114,116, + 32,105,115,32,117,115,101,100,32,105,110,32,116,104,101,32, + 100,101,99,111,100,105,110,103,46,10,32,32,32,32,114,84, + 0,0,0,78,84,41,7,218,8,116,111,107,101,110,105,122, + 101,114,49,0,0,0,90,7,66,121,116,101,115,73,79,90, + 8,114,101,97,100,108,105,110,101,90,15,100,101,116,101,99, + 116,95,101,110,99,111,100,105,110,103,90,25,73,110,99,114, + 101,109,101,110,116,97,108,78,101,119,108,105,110,101,68,101, + 99,111,100,101,114,218,6,100,101,99,111,100,101,41,5,218, + 12,115,111,117,114,99,101,95,98,121,116,101,115,114,201,0, + 0,0,90,21,115,111,117,114,99,101,95,98,121,116,101,115, + 95,114,101,97,100,108,105,110,101,218,8,101,110,99,111,100, + 105,110,103,90,15,110,101,119,108,105,110,101,95,100,101,99, + 111,100,101,114,114,4,0,0,0,114,4,0,0,0,114,5, + 0,0,0,218,13,100,101,99,111,100,101,95,115,111,117,114, + 99,101,195,2,0,0,115,10,0,0,0,0,5,12,1,18, + 1,15,1,18,1,114,205,0,0,0,99,1,0,0,0,0, + 0,0,0,5,0,0,0,35,0,0,0,67,0,0,0,115, + 6,1,0,0,116,0,0,124,0,0,100,1,0,100,0,0, + 131,3,0,125,1,0,116,1,0,124,1,0,100,2,0,131, + 2,0,114,71,0,121,17,0,124,1,0,106,2,0,124,0, + 0,131,1,0,83,87,110,18,0,4,116,3,0,107,10,0, + 114,70,0,1,1,1,89,110,1,0,88,121,13,0,124,0, + 0,106,4,0,125,2,0,87,110,18,0,4,116,5,0,107, + 10,0,114,104,0,1,1,1,89,110,23,0,88,124,2,0, + 100,0,0,107,9,0,114,127,0,116,6,0,124,2,0,131, + 1,0,83,121,13,0,124,0,0,106,7,0,125,3,0,87, + 110,24,0,4,116,5,0,107,10,0,114,166,0,1,1,1, + 100,3,0,125,3,0,89,110,1,0,88,121,13,0,124,0, + 0,106,8,0,125,4,0,87,110,59,0,4,116,5,0,107, + 10,0,114,241,0,1,1,1,124,1,0,100,0,0,107,8, + 0,114,221,0,100,4,0,106,9,0,124,3,0,131,1,0, + 83,100,5,0,106,9,0,124,3,0,124,1,0,131,2,0, + 83,89,110,17,0,88,100,6,0,106,9,0,124,3,0,124, + 4,0,131,2,0,83,100,0,0,83,41,7,78,218,10,95, + 95,108,111,97,100,101,114,95,95,218,11,109,111,100,117,108, + 101,95,114,101,112,114,250,1,63,122,13,60,109,111,100,117, + 108,101,32,123,33,114,125,62,122,20,60,109,111,100,117,108, + 101,32,123,33,114,125,32,40,123,33,114,125,41,62,122,23, + 60,109,111,100,117,108,101,32,123,33,114,125,32,102,114,111, + 109,32,123,33,114,125,62,41,10,114,62,0,0,0,114,60, + 0,0,0,114,207,0,0,0,218,9,69,120,99,101,112,116, + 105,111,110,218,8,95,95,115,112,101,99,95,95,218,14,65, + 116,116,114,105,98,117,116,101,69,114,114,111,114,218,22,95, + 109,111,100,117,108,101,95,114,101,112,114,95,102,114,111,109, + 95,115,112,101,99,114,57,0,0,0,218,8,95,95,102,105, + 108,101,95,95,114,47,0,0,0,41,5,114,181,0,0,0, + 114,173,0,0,0,114,180,0,0,0,114,67,0,0,0,218, + 8,102,105,108,101,110,97,109,101,114,4,0,0,0,114,4, + 0,0,0,114,5,0,0,0,218,12,95,109,111,100,117,108, + 101,95,114,101,112,114,209,2,0,0,115,46,0,0,0,0, + 2,18,1,15,4,3,1,17,1,13,1,5,1,3,1,13, + 1,13,1,5,2,12,1,10,4,3,1,13,1,13,1,11, + 1,3,1,13,1,13,1,12,1,13,2,21,2,114,215,0, + 0,0,99,0,0,0,0,0,0,0,0,0,0,0,0,2, + 0,0,0,64,0,0,0,115,52,0,0,0,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,83, + 41,8,218,17,95,105,110,115,116,97,108,108,101,100,95,115, + 97,102,101,108,121,99,2,0,0,0,0,0,0,0,2,0, + 0,0,2,0,0,0,67,0,0,0,115,25,0,0,0,124, + 1,0,124,0,0,95,0,0,124,1,0,106,1,0,124,0, + 0,95,2,0,100,0,0,83,41,1,78,41,3,218,7,95, + 109,111,100,117,108,101,114,210,0,0,0,218,5,95,115,112, + 101,99,41,2,114,71,0,0,0,114,181,0,0,0,114,4, + 0,0,0,114,4,0,0,0,114,5,0,0,0,114,72,0, + 0,0,247,2,0,0,115,4,0,0,0,0,1,9,1,122, + 26,95,105,110,115,116,97,108,108,101,100,95,115,97,102,101, + 108,121,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,38,0,0,0,100,1,0,124,0,0,106,0,0,95,1, + 0,124,0,0,106,2,0,116,3,0,106,4,0,124,0,0, + 106,0,0,106,5,0,60,100,0,0,83,41,2,78,84,41, + 6,114,218,0,0,0,218,13,95,105,110,105,116,105,97,108, + 105,122,105,110,103,114,217,0,0,0,114,7,0,0,0,114, + 73,0,0,0,114,67,0,0,0,41,1,114,71,0,0,0, + 114,4,0,0,0,114,4,0,0,0,114,5,0,0,0,114, + 75,0,0,0,251,2,0,0,115,4,0,0,0,0,4,12, + 1,122,27,95,105,110,115,116,97,108,108,101,100,95,115,97, + 102,101,108,121,46,95,95,101,110,116,101,114,95,95,99,1, + 0,0,0,0,0,0,0,3,0,0,0,17,0,0,0,71, + 0,0,0,115,121,0,0,0,122,101,0,124,0,0,106,0, + 0,125,2,0,116,1,0,100,1,0,100,2,0,132,0,0, + 124,1,0,68,131,1,0,131,1,0,114,78,0,121,17,0, + 116,2,0,106,3,0,124,2,0,106,4,0,61,87,113,100, + 0,4,116,5,0,107,10,0,114,74,0,1,1,1,89,113, + 100,0,88,110,22,0,116,6,0,100,3,0,124,2,0,106, + 4,0,124,2,0,106,7,0,131,3,0,1,87,100,0,0, + 100,4,0,124,0,0,106,0,0,95,8,0,88,100,0,0, + 83,41,5,78,99,1,0,0,0,0,0,0,0,2,0,0, + 0,3,0,0,0,115,0,0,0,115,27,0,0,0,124,0, + 0,93,17,0,125,1,0,124,1,0,100,0,0,107,9,0, + 86,1,113,3,0,100,0,0,83,41,1,78,114,4,0,0, + 0,41,2,114,22,0,0,0,114,76,0,0,0,114,4,0, + 0,0,114,4,0,0,0,114,5,0,0,0,114,77,0,0, + 0,5,3,0,0,115,2,0,0,0,6,0,122,45,95,105, + 110,115,116,97,108,108,101,100,95,115,97,102,101,108,121,46, + 95,95,101,120,105,116,95,95,46,60,108,111,99,97,108,115, + 62,46,60,103,101,110,101,120,112,114,62,122,18,105,109,112, + 111,114,116,32,123,33,114,125,32,35,32,123,33,114,125,70, + 41,9,114,218,0,0,0,114,78,0,0,0,114,7,0,0, + 0,114,73,0,0,0,114,67,0,0,0,114,79,0,0,0, + 114,158,0,0,0,114,173,0,0,0,114,219,0,0,0,41, + 3,114,71,0,0,0,114,80,0,0,0,114,180,0,0,0, + 114,4,0,0,0,114,4,0,0,0,114,5,0,0,0,114, + 81,0,0,0,2,3,0,0,115,18,0,0,0,0,1,3, + 1,9,1,25,1,3,1,17,1,13,1,8,2,26,2,122, + 26,95,105,110,115,116,97,108,108,101,100,95,115,97,102,101, + 108,121,46,95,95,101,120,105,116,95,95,78,41,6,114,57, + 0,0,0,114,56,0,0,0,114,58,0,0,0,114,72,0, + 0,0,114,75,0,0,0,114,81,0,0,0,114,4,0,0, 0,114,4,0,0,0,114,4,0,0,0,114,5,0,0,0, - 218,17,95,99,111,100,101,95,116,111,95,98,121,116,101,99, - 111,100,101,184,2,0,0,115,10,0,0,0,0,3,12,1, - 19,1,19,1,22,1,114,200,0,0,0,99,1,0,0,0, - 0,0,0,0,5,0,0,0,4,0,0,0,67,0,0,0, - 115,89,0,0,0,100,1,0,100,2,0,108,0,0,125,1, - 0,116,1,0,106,2,0,124,0,0,131,1,0,106,3,0, - 125,2,0,124,1,0,106,4,0,124,2,0,131,1,0,125, - 3,0,116,1,0,106,5,0,100,2,0,100,3,0,131,2, - 0,125,4,0,124,4,0,106,6,0,124,0,0,106,6,0, - 124,3,0,100,1,0,25,131,1,0,131,1,0,83,41,4, - 122,121,68,101,99,111,100,101,32,98,121,116,101,115,32,114, - 101,112,114,101,115,101,110,116,105,110,103,32,115,111,117,114, - 99,101,32,99,111,100,101,32,97,110,100,32,114,101,116,117, - 114,110,32,116,104,101,32,115,116,114,105,110,103,46,10,10, - 32,32,32,32,85,110,105,118,101,114,115,97,108,32,110,101, - 119,108,105,110,101,32,115,117,112,112,111,114,116,32,105,115, - 32,117,115,101,100,32,105,110,32,116,104,101,32,100,101,99, - 111,100,105,110,103,46,10,32,32,32,32,114,84,0,0,0, - 78,84,41,7,218,8,116,111,107,101,110,105,122,101,114,49, - 0,0,0,90,7,66,121,116,101,115,73,79,90,8,114,101, - 97,100,108,105,110,101,90,15,100,101,116,101,99,116,95,101, - 110,99,111,100,105,110,103,90,25,73,110,99,114,101,109,101, - 110,116,97,108,78,101,119,108,105,110,101,68,101,99,111,100, - 101,114,218,6,100,101,99,111,100,101,41,5,218,12,115,111, - 117,114,99,101,95,98,121,116,101,115,114,201,0,0,0,90, - 21,115,111,117,114,99,101,95,98,121,116,101,115,95,114,101, - 97,100,108,105,110,101,218,8,101,110,99,111,100,105,110,103, - 90,15,110,101,119,108,105,110,101,95,100,101,99,111,100,101, - 114,114,4,0,0,0,114,4,0,0,0,114,5,0,0,0, - 218,13,100,101,99,111,100,101,95,115,111,117,114,99,101,194, - 2,0,0,115,10,0,0,0,0,5,12,1,18,1,15,1, - 18,1,114,205,0,0,0,99,1,0,0,0,0,0,0,0, - 5,0,0,0,35,0,0,0,67,0,0,0,115,6,1,0, - 0,116,0,0,124,0,0,100,1,0,100,0,0,131,3,0, - 125,1,0,116,1,0,124,1,0,100,2,0,131,2,0,114, - 71,0,121,17,0,124,1,0,106,2,0,124,0,0,131,1, - 0,83,87,110,18,0,4,116,3,0,107,10,0,114,70,0, - 1,1,1,89,110,1,0,88,121,13,0,124,0,0,106,4, - 0,125,2,0,87,110,18,0,4,116,5,0,107,10,0,114, - 104,0,1,1,1,89,110,23,0,88,124,2,0,100,0,0, - 107,9,0,114,127,0,116,6,0,124,2,0,131,1,0,83, - 121,13,0,124,0,0,106,7,0,125,3,0,87,110,24,0, - 4,116,5,0,107,10,0,114,166,0,1,1,1,100,3,0, - 125,3,0,89,110,1,0,88,121,13,0,124,0,0,106,8, - 0,125,4,0,87,110,59,0,4,116,5,0,107,10,0,114, - 241,0,1,1,1,124,1,0,100,0,0,107,8,0,114,221, - 0,100,4,0,106,9,0,124,3,0,131,1,0,83,100,5, - 0,106,9,0,124,3,0,124,1,0,131,2,0,83,89,110, - 17,0,88,100,6,0,106,9,0,124,3,0,124,4,0,131, - 2,0,83,100,0,0,83,41,7,78,218,10,95,95,108,111, - 97,100,101,114,95,95,218,11,109,111,100,117,108,101,95,114, - 101,112,114,250,1,63,122,13,60,109,111,100,117,108,101,32, - 123,33,114,125,62,122,20,60,109,111,100,117,108,101,32,123, - 33,114,125,32,40,123,33,114,125,41,62,122,23,60,109,111, - 100,117,108,101,32,123,33,114,125,32,102,114,111,109,32,123, - 33,114,125,62,41,10,114,62,0,0,0,114,60,0,0,0, - 114,207,0,0,0,218,9,69,120,99,101,112,116,105,111,110, - 218,8,95,95,115,112,101,99,95,95,218,14,65,116,116,114, - 105,98,117,116,101,69,114,114,111,114,218,22,95,109,111,100, - 117,108,101,95,114,101,112,114,95,102,114,111,109,95,115,112, - 101,99,114,57,0,0,0,218,8,95,95,102,105,108,101,95, - 95,114,47,0,0,0,41,5,114,181,0,0,0,114,173,0, - 0,0,114,180,0,0,0,114,67,0,0,0,218,8,102,105, - 108,101,110,97,109,101,114,4,0,0,0,114,4,0,0,0, - 114,5,0,0,0,218,12,95,109,111,100,117,108,101,95,114, - 101,112,114,208,2,0,0,115,46,0,0,0,0,2,18,1, - 15,4,3,1,17,1,13,1,5,1,3,1,13,1,13,1, - 5,2,12,1,10,4,3,1,13,1,13,1,11,1,3,1, - 13,1,13,1,12,1,13,2,21,2,114,215,0,0,0,99, - 0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0, - 64,0,0,0,115,52,0,0,0,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,83,41,8,218, - 17,95,105,110,115,116,97,108,108,101,100,95,115,97,102,101, - 108,121,99,2,0,0,0,0,0,0,0,2,0,0,0,2, - 0,0,0,67,0,0,0,115,25,0,0,0,124,1,0,124, - 0,0,95,0,0,124,1,0,106,1,0,124,0,0,95,2, - 0,100,0,0,83,41,1,78,41,3,218,7,95,109,111,100, - 117,108,101,114,210,0,0,0,218,5,95,115,112,101,99,41, - 2,114,71,0,0,0,114,181,0,0,0,114,4,0,0,0, - 114,4,0,0,0,114,5,0,0,0,114,72,0,0,0,246, - 2,0,0,115,4,0,0,0,0,1,9,1,122,26,95,105, - 110,115,116,97,108,108,101,100,95,115,97,102,101,108,121,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,38,0, - 0,0,100,1,0,124,0,0,106,0,0,95,1,0,124,0, - 0,106,2,0,116,3,0,106,4,0,124,0,0,106,0,0, - 106,5,0,60,100,0,0,83,41,2,78,84,41,6,114,218, - 0,0,0,218,13,95,105,110,105,116,105,97,108,105,122,105, - 110,103,114,217,0,0,0,114,7,0,0,0,114,73,0,0, - 0,114,67,0,0,0,41,1,114,71,0,0,0,114,4,0, - 0,0,114,4,0,0,0,114,5,0,0,0,114,75,0,0, - 0,250,2,0,0,115,4,0,0,0,0,4,12,1,122,27, - 95,105,110,115,116,97,108,108,101,100,95,115,97,102,101,108, - 121,46,95,95,101,110,116,101,114,95,95,99,1,0,0,0, - 0,0,0,0,3,0,0,0,17,0,0,0,71,0,0,0, - 115,121,0,0,0,122,101,0,124,0,0,106,0,0,125,2, - 0,116,1,0,100,1,0,100,2,0,132,0,0,124,1,0, - 68,131,1,0,131,1,0,114,78,0,121,17,0,116,2,0, - 106,3,0,124,2,0,106,4,0,61,87,113,100,0,4,116, - 5,0,107,10,0,114,74,0,1,1,1,89,113,100,0,88, - 110,22,0,116,6,0,100,3,0,124,2,0,106,4,0,124, - 2,0,106,7,0,131,3,0,1,87,100,0,0,100,4,0, - 124,0,0,106,0,0,95,8,0,88,100,0,0,83,41,5, - 78,99,1,0,0,0,0,0,0,0,2,0,0,0,3,0, - 0,0,115,0,0,0,115,27,0,0,0,124,0,0,93,17, - 0,125,1,0,124,1,0,100,0,0,107,9,0,86,1,113, - 3,0,100,0,0,83,41,1,78,114,4,0,0,0,41,2, - 114,22,0,0,0,114,76,0,0,0,114,4,0,0,0,114, - 4,0,0,0,114,5,0,0,0,114,77,0,0,0,4,3, - 0,0,115,2,0,0,0,6,0,122,45,95,105,110,115,116, - 97,108,108,101,100,95,115,97,102,101,108,121,46,95,95,101, - 120,105,116,95,95,46,60,108,111,99,97,108,115,62,46,60, - 103,101,110,101,120,112,114,62,122,18,105,109,112,111,114,116, - 32,123,33,114,125,32,35,32,123,33,114,125,70,41,9,114, - 218,0,0,0,114,78,0,0,0,114,7,0,0,0,114,73, - 0,0,0,114,67,0,0,0,114,79,0,0,0,114,158,0, - 0,0,114,173,0,0,0,114,219,0,0,0,41,3,114,71, - 0,0,0,114,80,0,0,0,114,180,0,0,0,114,4,0, - 0,0,114,4,0,0,0,114,5,0,0,0,114,81,0,0, - 0,1,3,0,0,115,18,0,0,0,0,1,3,1,9,1, - 25,1,3,1,17,1,13,1,8,2,26,2,122,26,95,105, - 110,115,116,97,108,108,101,100,95,115,97,102,101,108,121,46, - 95,95,101,120,105,116,95,95,78,41,6,114,57,0,0,0, - 114,56,0,0,0,114,58,0,0,0,114,72,0,0,0,114, - 75,0,0,0,114,81,0,0,0,114,4,0,0,0,114,4, - 0,0,0,114,4,0,0,0,114,5,0,0,0,114,216,0, - 0,0,244,2,0,0,115,6,0,0,0,12,2,12,4,12, - 7,114,216,0,0,0,99,0,0,0,0,0,0,0,0,0, - 0,0,0,8,0,0,0,64,0,0,0,115,172,0,0,0, - 101,0,0,90,1,0,100,0,0,90,2,0,100,1,0,90, - 3,0,100,2,0,100,3,0,100,4,0,100,3,0,100,5, - 0,100,3,0,100,6,0,100,7,0,132,0,3,90,4,0, - 100,8,0,100,9,0,132,0,0,90,5,0,100,10,0,100, - 11,0,132,0,0,90,6,0,101,7,0,100,12,0,100,13, - 0,132,0,0,131,1,0,90,8,0,101,8,0,106,9,0, - 100,14,0,100,13,0,132,0,0,131,1,0,90,8,0,101, - 7,0,100,15,0,100,16,0,132,0,0,131,1,0,90,10, - 0,101,7,0,100,17,0,100,18,0,132,0,0,131,1,0, - 90,11,0,101,11,0,106,9,0,100,19,0,100,18,0,132, - 0,0,131,1,0,90,11,0,100,3,0,83,41,20,218,10, - 77,111,100,117,108,101,83,112,101,99,97,208,5,0,0,84, - 104,101,32,115,112,101,99,105,102,105,99,97,116,105,111,110, - 32,102,111,114,32,97,32,109,111,100,117,108,101,44,32,117, - 115,101,100,32,102,111,114,32,108,111,97,100,105,110,103,46, - 10,10,32,32,32,32,65,32,109,111,100,117,108,101,39,115, - 32,115,112,101,99,32,105,115,32,116,104,101,32,115,111,117, - 114,99,101,32,102,111,114,32,105,110,102,111,114,109,97,116, - 105,111,110,32,97,98,111,117,116,32,116,104,101,32,109,111, - 100,117,108,101,46,32,32,70,111,114,10,32,32,32,32,100, - 97,116,97,32,97,115,115,111,99,105,97,116,101,100,32,119, - 105,116,104,32,116,104,101,32,109,111,100,117,108,101,44,32, - 105,110,99,108,117,100,105,110,103,32,115,111,117,114,99,101, - 44,32,117,115,101,32,116,104,101,32,115,112,101,99,39,115, - 10,32,32,32,32,108,111,97,100,101,114,46,10,10,32,32, - 32,32,96,110,97,109,101,96,32,105,115,32,116,104,101,32, - 97,98,115,111,108,117,116,101,32,110,97,109,101,32,111,102, - 32,116,104,101,32,109,111,100,117,108,101,46,32,32,96,108, - 111,97,100,101,114,96,32,105,115,32,116,104,101,32,108,111, - 97,100,101,114,10,32,32,32,32,116,111,32,117,115,101,32, - 119,104,101,110,32,108,111,97,100,105,110,103,32,116,104,101, - 32,109,111,100,117,108,101,46,32,32,96,112,97,114,101,110, - 116,96,32,105,115,32,116,104,101,32,110,97,109,101,32,111, - 102,32,116,104,101,10,32,32,32,32,112,97,99,107,97,103, - 101,32,116,104,101,32,109,111,100,117,108,101,32,105,115,32, - 105,110,46,32,32,84,104,101,32,112,97,114,101,110,116,32, - 105,115,32,100,101,114,105,118,101,100,32,102,114,111,109,32, - 116,104,101,32,110,97,109,101,46,10,10,32,32,32,32,96, - 105,115,95,112,97,99,107,97,103,101,96,32,100,101,116,101, - 114,109,105,110,101,115,32,105,102,32,116,104,101,32,109,111, - 100,117,108,101,32,105,115,32,99,111,110,115,105,100,101,114, - 101,100,32,97,32,112,97,99,107,97,103,101,32,111,114,10, - 32,32,32,32,110,111,116,46,32,32,79,110,32,109,111,100, - 117,108,101,115,32,116,104,105,115,32,105,115,32,114,101,102, - 108,101,99,116,101,100,32,98,121,32,116,104,101,32,96,95, - 95,112,97,116,104,95,95,96,32,97,116,116,114,105,98,117, - 116,101,46,10,10,32,32,32,32,96,111,114,105,103,105,110, - 96,32,105,115,32,116,104,101,32,115,112,101,99,105,102,105, - 99,32,108,111,99,97,116,105,111,110,32,117,115,101,100,32, - 98,121,32,116,104,101,32,108,111,97,100,101,114,32,102,114, - 111,109,32,119,104,105,99,104,32,116,111,10,32,32,32,32, - 108,111,97,100,32,116,104,101,32,109,111,100,117,108,101,44, - 32,105,102,32,116,104,97,116,32,105,110,102,111,114,109,97, - 116,105,111,110,32,105,115,32,97,118,97,105,108,97,98,108, - 101,46,32,32,87,104,101,110,32,102,105,108,101,110,97,109, - 101,32,105,115,10,32,32,32,32,115,101,116,44,32,111,114, - 105,103,105,110,32,119,105,108,108,32,109,97,116,99,104,46, - 10,10,32,32,32,32,96,104,97,115,95,108,111,99,97,116, - 105,111,110,96,32,105,110,100,105,99,97,116,101,115,32,116, - 104,97,116,32,97,32,115,112,101,99,39,115,32,34,111,114, - 105,103,105,110,34,32,114,101,102,108,101,99,116,115,32,97, - 32,108,111,99,97,116,105,111,110,46,10,32,32,32,32,87, - 104,101,110,32,116,104,105,115,32,105,115,32,84,114,117,101, - 44,32,96,95,95,102,105,108,101,95,95,96,32,97,116,116, - 114,105,98,117,116,101,32,111,102,32,116,104,101,32,109,111, - 100,117,108,101,32,105,115,32,115,101,116,46,10,10,32,32, - 32,32,96,99,97,99,104,101,100,96,32,105,115,32,116,104, - 101,32,108,111,99,97,116,105,111,110,32,111,102,32,116,104, - 101,32,99,97,99,104,101,100,32,98,121,116,101,99,111,100, - 101,32,102,105,108,101,44,32,105,102,32,97,110,121,46,32, - 32,73,116,10,32,32,32,32,99,111,114,114,101,115,112,111, - 110,100,115,32,116,111,32,116,104,101,32,96,95,95,99,97, - 99,104,101,100,95,95,96,32,97,116,116,114,105,98,117,116, - 101,46,10,10,32,32,32,32,96,115,117,98,109,111,100,117, - 108,101,95,115,101,97,114,99,104,95,108,111,99,97,116,105, - 111,110,115,96,32,105,115,32,116,104,101,32,115,101,113,117, - 101,110,99,101,32,111,102,32,112,97,116,104,32,101,110,116, - 114,105,101,115,32,116,111,10,32,32,32,32,115,101,97,114, - 99,104,32,119,104,101,110,32,105,109,112,111,114,116,105,110, - 103,32,115,117,98,109,111,100,117,108,101,115,46,32,32,73, - 102,32,115,101,116,44,32,105,115,95,112,97,99,107,97,103, - 101,32,115,104,111,117,108,100,32,98,101,10,32,32,32,32, - 84,114,117,101,45,45,97,110,100,32,70,97,108,115,101,32, - 111,116,104,101,114,119,105,115,101,46,10,10,32,32,32,32, - 80,97,99,107,97,103,101,115,32,97,114,101,32,115,105,109, - 112,108,121,32,109,111,100,117,108,101,115,32,116,104,97,116, - 32,40,109,97,121,41,32,104,97,118,101,32,115,117,98,109, - 111,100,117,108,101,115,46,32,32,73,102,32,97,32,115,112, - 101,99,10,32,32,32,32,104,97,115,32,97,32,110,111,110, - 45,78,111,110,101,32,118,97,108,117,101,32,105,110,32,96, - 115,117,98,109,111,100,117,108,101,95,115,101,97,114,99,104, - 95,108,111,99,97,116,105,111,110,115,96,44,32,116,104,101, - 32,105,109,112,111,114,116,10,32,32,32,32,115,121,115,116, - 101,109,32,119,105,108,108,32,99,111,110,115,105,100,101,114, - 32,109,111,100,117,108,101,115,32,108,111,97,100,101,100,32, - 102,114,111,109,32,116,104,101,32,115,112,101,99,32,97,115, - 32,112,97,99,107,97,103,101,115,46,10,10,32,32,32,32, - 79,110,108,121,32,102,105,110,100,101,114,115,32,40,115,101, - 101,32,105,109,112,111,114,116,108,105,98,46,97,98,99,46, - 77,101,116,97,80,97,116,104,70,105,110,100,101,114,32,97, - 110,100,10,32,32,32,32,105,109,112,111,114,116,108,105,98, - 46,97,98,99,46,80,97,116,104,69,110,116,114,121,70,105, - 110,100,101,114,41,32,115,104,111,117,108,100,32,109,111,100, - 105,102,121,32,77,111,100,117,108,101,83,112,101,99,32,105, - 110,115,116,97,110,99,101,115,46,10,10,32,32,32,32,218, - 6,111,114,105,103,105,110,78,218,12,108,111,97,100,101,114, - 95,115,116,97,116,101,218,10,105,115,95,112,97,99,107,97, - 103,101,99,3,0,0,0,3,0,0,0,6,0,0,0,2, - 0,0,0,67,0,0,0,115,79,0,0,0,124,1,0,124, - 0,0,95,0,0,124,2,0,124,0,0,95,1,0,124,3, - 0,124,0,0,95,2,0,124,4,0,124,0,0,95,3,0, - 124,5,0,114,48,0,103,0,0,110,3,0,100,0,0,124, - 0,0,95,4,0,100,1,0,124,0,0,95,5,0,100,0, - 0,124,0,0,95,6,0,100,0,0,83,41,2,78,70,41, - 7,114,67,0,0,0,114,173,0,0,0,114,221,0,0,0, - 114,222,0,0,0,218,26,115,117,98,109,111,100,117,108,101, - 95,115,101,97,114,99,104,95,108,111,99,97,116,105,111,110, - 115,218,13,95,115,101,116,95,102,105,108,101,97,116,116,114, - 218,7,95,99,97,99,104,101,100,41,6,114,71,0,0,0, + 114,216,0,0,0,245,2,0,0,115,6,0,0,0,12,2, + 12,4,12,7,114,216,0,0,0,99,0,0,0,0,0,0, + 0,0,0,0,0,0,8,0,0,0,64,0,0,0,115,172, + 0,0,0,101,0,0,90,1,0,100,0,0,90,2,0,100, + 1,0,90,3,0,100,2,0,100,3,0,100,4,0,100,3, + 0,100,5,0,100,3,0,100,6,0,100,7,0,132,0,3, + 90,4,0,100,8,0,100,9,0,132,0,0,90,5,0,100, + 10,0,100,11,0,132,0,0,90,6,0,101,7,0,100,12, + 0,100,13,0,132,0,0,131,1,0,90,8,0,101,8,0, + 106,9,0,100,14,0,100,13,0,132,0,0,131,1,0,90, + 8,0,101,7,0,100,15,0,100,16,0,132,0,0,131,1, + 0,90,10,0,101,7,0,100,17,0,100,18,0,132,0,0, + 131,1,0,90,11,0,101,11,0,106,9,0,100,19,0,100, + 18,0,132,0,0,131,1,0,90,11,0,100,3,0,83,41, + 20,218,10,77,111,100,117,108,101,83,112,101,99,97,208,5, + 0,0,84,104,101,32,115,112,101,99,105,102,105,99,97,116, + 105,111,110,32,102,111,114,32,97,32,109,111,100,117,108,101, + 44,32,117,115,101,100,32,102,111,114,32,108,111,97,100,105, + 110,103,46,10,10,32,32,32,32,65,32,109,111,100,117,108, + 101,39,115,32,115,112,101,99,32,105,115,32,116,104,101,32, + 115,111,117,114,99,101,32,102,111,114,32,105,110,102,111,114, + 109,97,116,105,111,110,32,97,98,111,117,116,32,116,104,101, + 32,109,111,100,117,108,101,46,32,32,70,111,114,10,32,32, + 32,32,100,97,116,97,32,97,115,115,111,99,105,97,116,101, + 100,32,119,105,116,104,32,116,104,101,32,109,111,100,117,108, + 101,44,32,105,110,99,108,117,100,105,110,103,32,115,111,117, + 114,99,101,44,32,117,115,101,32,116,104,101,32,115,112,101, + 99,39,115,10,32,32,32,32,108,111,97,100,101,114,46,10, + 10,32,32,32,32,96,110,97,109,101,96,32,105,115,32,116, + 104,101,32,97,98,115,111,108,117,116,101,32,110,97,109,101, + 32,111,102,32,116,104,101,32,109,111,100,117,108,101,46,32, + 32,96,108,111,97,100,101,114,96,32,105,115,32,116,104,101, + 32,108,111,97,100,101,114,10,32,32,32,32,116,111,32,117, + 115,101,32,119,104,101,110,32,108,111,97,100,105,110,103,32, + 116,104,101,32,109,111,100,117,108,101,46,32,32,96,112,97, + 114,101,110,116,96,32,105,115,32,116,104,101,32,110,97,109, + 101,32,111,102,32,116,104,101,10,32,32,32,32,112,97,99, + 107,97,103,101,32,116,104,101,32,109,111,100,117,108,101,32, + 105,115,32,105,110,46,32,32,84,104,101,32,112,97,114,101, + 110,116,32,105,115,32,100,101,114,105,118,101,100,32,102,114, + 111,109,32,116,104,101,32,110,97,109,101,46,10,10,32,32, + 32,32,96,105,115,95,112,97,99,107,97,103,101,96,32,100, + 101,116,101,114,109,105,110,101,115,32,105,102,32,116,104,101, + 32,109,111,100,117,108,101,32,105,115,32,99,111,110,115,105, + 100,101,114,101,100,32,97,32,112,97,99,107,97,103,101,32, + 111,114,10,32,32,32,32,110,111,116,46,32,32,79,110,32, + 109,111,100,117,108,101,115,32,116,104,105,115,32,105,115,32, + 114,101,102,108,101,99,116,101,100,32,98,121,32,116,104,101, + 32,96,95,95,112,97,116,104,95,95,96,32,97,116,116,114, + 105,98,117,116,101,46,10,10,32,32,32,32,96,111,114,105, + 103,105,110,96,32,105,115,32,116,104,101,32,115,112,101,99, + 105,102,105,99,32,108,111,99,97,116,105,111,110,32,117,115, + 101,100,32,98,121,32,116,104,101,32,108,111,97,100,101,114, + 32,102,114,111,109,32,119,104,105,99,104,32,116,111,10,32, + 32,32,32,108,111,97,100,32,116,104,101,32,109,111,100,117, + 108,101,44,32,105,102,32,116,104,97,116,32,105,110,102,111, + 114,109,97,116,105,111,110,32,105,115,32,97,118,97,105,108, + 97,98,108,101,46,32,32,87,104,101,110,32,102,105,108,101, + 110,97,109,101,32,105,115,10,32,32,32,32,115,101,116,44, + 32,111,114,105,103,105,110,32,119,105,108,108,32,109,97,116, + 99,104,46,10,10,32,32,32,32,96,104,97,115,95,108,111, + 99,97,116,105,111,110,96,32,105,110,100,105,99,97,116,101, + 115,32,116,104,97,116,32,97,32,115,112,101,99,39,115,32, + 34,111,114,105,103,105,110,34,32,114,101,102,108,101,99,116, + 115,32,97,32,108,111,99,97,116,105,111,110,46,10,32,32, + 32,32,87,104,101,110,32,116,104,105,115,32,105,115,32,84, + 114,117,101,44,32,96,95,95,102,105,108,101,95,95,96,32, + 97,116,116,114,105,98,117,116,101,32,111,102,32,116,104,101, + 32,109,111,100,117,108,101,32,105,115,32,115,101,116,46,10, + 10,32,32,32,32,96,99,97,99,104,101,100,96,32,105,115, + 32,116,104,101,32,108,111,99,97,116,105,111,110,32,111,102, + 32,116,104,101,32,99,97,99,104,101,100,32,98,121,116,101, + 99,111,100,101,32,102,105,108,101,44,32,105,102,32,97,110, + 121,46,32,32,73,116,10,32,32,32,32,99,111,114,114,101, + 115,112,111,110,100,115,32,116,111,32,116,104,101,32,96,95, + 95,99,97,99,104,101,100,95,95,96,32,97,116,116,114,105, + 98,117,116,101,46,10,10,32,32,32,32,96,115,117,98,109, + 111,100,117,108,101,95,115,101,97,114,99,104,95,108,111,99, + 97,116,105,111,110,115,96,32,105,115,32,116,104,101,32,115, + 101,113,117,101,110,99,101,32,111,102,32,112,97,116,104,32, + 101,110,116,114,105,101,115,32,116,111,10,32,32,32,32,115, + 101,97,114,99,104,32,119,104,101,110,32,105,109,112,111,114, + 116,105,110,103,32,115,117,98,109,111,100,117,108,101,115,46, + 32,32,73,102,32,115,101,116,44,32,105,115,95,112,97,99, + 107,97,103,101,32,115,104,111,117,108,100,32,98,101,10,32, + 32,32,32,84,114,117,101,45,45,97,110,100,32,70,97,108, + 115,101,32,111,116,104,101,114,119,105,115,101,46,10,10,32, + 32,32,32,80,97,99,107,97,103,101,115,32,97,114,101,32, + 115,105,109,112,108,121,32,109,111,100,117,108,101,115,32,116, + 104,97,116,32,40,109,97,121,41,32,104,97,118,101,32,115, + 117,98,109,111,100,117,108,101,115,46,32,32,73,102,32,97, + 32,115,112,101,99,10,32,32,32,32,104,97,115,32,97,32, + 110,111,110,45,78,111,110,101,32,118,97,108,117,101,32,105, + 110,32,96,115,117,98,109,111,100,117,108,101,95,115,101,97, + 114,99,104,95,108,111,99,97,116,105,111,110,115,96,44,32, + 116,104,101,32,105,109,112,111,114,116,10,32,32,32,32,115, + 121,115,116,101,109,32,119,105,108,108,32,99,111,110,115,105, + 100,101,114,32,109,111,100,117,108,101,115,32,108,111,97,100, + 101,100,32,102,114,111,109,32,116,104,101,32,115,112,101,99, + 32,97,115,32,112,97,99,107,97,103,101,115,46,10,10,32, + 32,32,32,79,110,108,121,32,102,105,110,100,101,114,115,32, + 40,115,101,101,32,105,109,112,111,114,116,108,105,98,46,97, + 98,99,46,77,101,116,97,80,97,116,104,70,105,110,100,101, + 114,32,97,110,100,10,32,32,32,32,105,109,112,111,114,116, + 108,105,98,46,97,98,99,46,80,97,116,104,69,110,116,114, + 121,70,105,110,100,101,114,41,32,115,104,111,117,108,100,32, + 109,111,100,105,102,121,32,77,111,100,117,108,101,83,112,101, + 99,32,105,110,115,116,97,110,99,101,115,46,10,10,32,32, + 32,32,218,6,111,114,105,103,105,110,78,218,12,108,111,97, + 100,101,114,95,115,116,97,116,101,218,10,105,115,95,112,97, + 99,107,97,103,101,99,3,0,0,0,3,0,0,0,6,0, + 0,0,2,0,0,0,67,0,0,0,115,79,0,0,0,124, + 1,0,124,0,0,95,0,0,124,2,0,124,0,0,95,1, + 0,124,3,0,124,0,0,95,2,0,124,4,0,124,0,0, + 95,3,0,124,5,0,114,48,0,103,0,0,110,3,0,100, + 0,0,124,0,0,95,4,0,100,1,0,124,0,0,95,5, + 0,100,0,0,124,0,0,95,6,0,100,0,0,83,41,2, + 78,70,41,7,114,67,0,0,0,114,173,0,0,0,114,221, + 0,0,0,114,222,0,0,0,218,26,115,117,98,109,111,100, + 117,108,101,95,115,101,97,114,99,104,95,108,111,99,97,116, + 105,111,110,115,218,13,95,115,101,116,95,102,105,108,101,97, + 116,116,114,218,7,95,99,97,99,104,101,100,41,6,114,71, + 0,0,0,114,67,0,0,0,114,173,0,0,0,114,221,0, + 0,0,114,222,0,0,0,114,223,0,0,0,114,4,0,0, + 0,114,4,0,0,0,114,5,0,0,0,114,72,0,0,0, + 53,3,0,0,115,14,0,0,0,0,2,9,1,9,1,9, + 1,9,1,21,3,9,1,122,19,77,111,100,117,108,101,83, + 112,101,99,46,95,95,105,110,105,116,95,95,99,1,0,0, + 0,0,0,0,0,2,0,0,0,4,0,0,0,67,0,0, + 0,115,147,0,0,0,100,1,0,106,0,0,124,0,0,106, + 1,0,131,1,0,100,2,0,106,0,0,124,0,0,106,2, + 0,131,1,0,103,2,0,125,1,0,124,0,0,106,3,0, + 100,0,0,107,9,0,114,76,0,124,1,0,106,4,0,100, + 3,0,106,0,0,124,0,0,106,3,0,131,1,0,131,1, + 0,1,124,0,0,106,5,0,100,0,0,107,9,0,114,116, + 0,124,1,0,106,4,0,100,4,0,106,0,0,124,0,0, + 106,5,0,131,1,0,131,1,0,1,100,5,0,106,0,0, + 124,0,0,106,6,0,106,7,0,100,6,0,106,8,0,124, + 1,0,131,1,0,131,2,0,83,41,7,78,122,9,110,97, + 109,101,61,123,33,114,125,122,11,108,111,97,100,101,114,61, + 123,33,114,125,122,11,111,114,105,103,105,110,61,123,33,114, + 125,122,29,115,117,98,109,111,100,117,108,101,95,115,101,97, + 114,99,104,95,108,111,99,97,116,105,111,110,115,61,123,125, + 122,6,123,125,40,123,125,41,122,2,44,32,41,9,114,47, + 0,0,0,114,67,0,0,0,114,173,0,0,0,114,221,0, + 0,0,218,6,97,112,112,101,110,100,114,224,0,0,0,218, + 9,95,95,99,108,97,115,115,95,95,114,57,0,0,0,114, + 26,0,0,0,41,2,114,71,0,0,0,114,80,0,0,0, + 114,4,0,0,0,114,4,0,0,0,114,5,0,0,0,114, + 101,0,0,0,65,3,0,0,115,16,0,0,0,0,1,15, + 1,21,1,15,1,25,1,15,1,12,1,13,1,122,19,77, + 111,100,117,108,101,83,112,101,99,46,95,95,114,101,112,114, + 95,95,99,2,0,0,0,0,0,0,0,3,0,0,0,11, + 0,0,0,67,0,0,0,115,145,0,0,0,124,0,0,106, + 0,0,125,2,0,121,107,0,124,0,0,106,1,0,124,1, + 0,106,1,0,107,2,0,111,114,0,124,0,0,106,2,0, + 124,1,0,106,2,0,107,2,0,111,114,0,124,0,0,106, + 3,0,124,1,0,106,3,0,107,2,0,111,114,0,124,2, + 0,124,1,0,106,0,0,107,2,0,111,114,0,124,0,0, + 106,4,0,124,1,0,106,4,0,107,2,0,111,114,0,124, + 0,0,106,5,0,124,1,0,106,5,0,107,2,0,83,87, + 110,22,0,4,116,6,0,107,10,0,114,140,0,1,1,1, + 100,1,0,83,89,110,1,0,88,100,0,0,83,41,2,78, + 70,41,7,114,224,0,0,0,114,67,0,0,0,114,173,0, + 0,0,114,221,0,0,0,218,6,99,97,99,104,101,100,218, + 12,104,97,115,95,108,111,99,97,116,105,111,110,114,211,0, + 0,0,41,3,114,71,0,0,0,218,5,111,116,104,101,114, + 218,4,115,109,115,108,114,4,0,0,0,114,4,0,0,0, + 114,5,0,0,0,218,6,95,95,101,113,95,95,75,3,0, + 0,115,20,0,0,0,0,1,9,1,3,1,18,1,18,1, + 18,1,15,1,18,1,20,1,13,1,122,17,77,111,100,117, + 108,101,83,112,101,99,46,95,95,101,113,95,95,99,1,0, + 0,0,0,0,0,0,2,0,0,0,11,0,0,0,67,0, + 0,0,115,149,0,0,0,124,0,0,106,0,0,100,0,0, + 107,8,0,114,142,0,124,0,0,106,1,0,100,0,0,107, + 9,0,114,142,0,124,0,0,106,2,0,114,142,0,124,0, + 0,106,1,0,125,1,0,124,1,0,106,3,0,116,4,0, + 116,5,0,131,1,0,131,1,0,114,112,0,121,19,0,116, + 6,0,124,1,0,131,1,0,124,0,0,95,0,0,87,113, + 142,0,4,116,7,0,107,10,0,114,108,0,1,1,1,89, + 113,142,0,88,110,30,0,124,1,0,106,3,0,116,4,0, + 116,8,0,131,1,0,131,1,0,114,142,0,124,1,0,124, + 0,0,95,0,0,124,0,0,106,0,0,83,41,1,78,41, + 9,114,226,0,0,0,114,221,0,0,0,114,225,0,0,0, + 218,8,101,110,100,115,119,105,116,104,218,5,116,117,112,108, + 101,114,142,0,0,0,114,138,0,0,0,114,124,0,0,0, + 114,132,0,0,0,41,2,114,71,0,0,0,114,214,0,0, + 0,114,4,0,0,0,114,4,0,0,0,114,5,0,0,0, + 114,229,0,0,0,87,3,0,0,115,22,0,0,0,0,2, + 15,1,24,1,9,1,21,1,3,1,19,1,13,1,8,1, + 21,1,9,1,122,17,77,111,100,117,108,101,83,112,101,99, + 46,99,97,99,104,101,100,99,2,0,0,0,0,0,0,0, + 2,0,0,0,2,0,0,0,67,0,0,0,115,13,0,0, + 0,124,1,0,124,0,0,95,0,0,100,0,0,83,41,1, + 78,41,1,114,226,0,0,0,41,2,114,71,0,0,0,114, + 229,0,0,0,114,4,0,0,0,114,4,0,0,0,114,5, + 0,0,0,114,229,0,0,0,101,3,0,0,115,2,0,0, + 0,0,2,99,1,0,0,0,0,0,0,0,1,0,0,0, + 2,0,0,0,67,0,0,0,115,46,0,0,0,124,0,0, + 106,0,0,100,1,0,107,8,0,114,35,0,124,0,0,106, + 1,0,106,2,0,100,2,0,131,1,0,100,3,0,25,83, + 124,0,0,106,1,0,83,100,1,0,83,41,4,122,32,84, + 104,101,32,110,97,109,101,32,111,102,32,116,104,101,32,109, + 111,100,117,108,101,39,115,32,112,97,114,101,110,116,46,78, + 114,117,0,0,0,114,84,0,0,0,41,3,114,224,0,0, + 0,114,67,0,0,0,114,32,0,0,0,41,1,114,71,0, + 0,0,114,4,0,0,0,114,4,0,0,0,114,5,0,0, + 0,218,6,112,97,114,101,110,116,105,3,0,0,115,6,0, + 0,0,0,3,15,1,20,2,122,17,77,111,100,117,108,101, + 83,112,101,99,46,112,97,114,101,110,116,99,1,0,0,0, + 0,0,0,0,1,0,0,0,1,0,0,0,67,0,0,0, + 115,7,0,0,0,124,0,0,106,0,0,83,41,1,78,41, + 1,114,225,0,0,0,41,1,114,71,0,0,0,114,4,0, + 0,0,114,4,0,0,0,114,5,0,0,0,114,230,0,0, + 0,113,3,0,0,115,2,0,0,0,0,2,122,23,77,111, + 100,117,108,101,83,112,101,99,46,104,97,115,95,108,111,99, + 97,116,105,111,110,99,2,0,0,0,0,0,0,0,2,0, + 0,0,2,0,0,0,67,0,0,0,115,19,0,0,0,116, + 0,0,124,1,0,131,1,0,124,0,0,95,1,0,100,0, + 0,83,41,1,78,41,2,218,4,98,111,111,108,114,225,0, + 0,0,41,2,114,71,0,0,0,218,5,118,97,108,117,101, + 114,4,0,0,0,114,4,0,0,0,114,5,0,0,0,114, + 230,0,0,0,117,3,0,0,115,2,0,0,0,0,2,41, + 12,114,57,0,0,0,114,56,0,0,0,114,58,0,0,0, + 114,59,0,0,0,114,72,0,0,0,114,101,0,0,0,114, + 233,0,0,0,218,8,112,114,111,112,101,114,116,121,114,229, + 0,0,0,218,6,115,101,116,116,101,114,114,236,0,0,0, + 114,230,0,0,0,114,4,0,0,0,114,4,0,0,0,114, + 4,0,0,0,114,5,0,0,0,114,220,0,0,0,16,3, + 0,0,115,20,0,0,0,12,35,6,2,15,1,15,11,12, + 10,12,12,18,14,21,4,18,8,18,4,114,220,0,0,0, + 114,221,0,0,0,114,223,0,0,0,99,2,0,0,0,2, + 0,0,0,5,0,0,0,15,0,0,0,67,0,0,0,115, + 190,0,0,0,116,0,0,124,1,0,100,1,0,131,2,0, + 114,83,0,124,3,0,100,2,0,107,8,0,114,43,0,116, + 1,0,124,0,0,100,3,0,124,1,0,131,1,1,83,124, + 3,0,114,55,0,103,0,0,110,3,0,100,2,0,125,4, + 0,116,1,0,124,0,0,100,3,0,124,1,0,100,4,0, + 124,4,0,131,1,2,83,124,3,0,100,2,0,107,8,0, + 114,165,0,116,0,0,124,1,0,100,5,0,131,2,0,114, + 159,0,121,19,0,124,1,0,106,2,0,124,0,0,131,1, + 0,125,3,0,87,113,165,0,4,116,3,0,107,10,0,114, + 155,0,1,1,1,100,2,0,125,3,0,89,113,165,0,88, + 110,6,0,100,6,0,125,3,0,116,4,0,124,0,0,124, + 1,0,100,7,0,124,2,0,100,5,0,124,3,0,131,2, + 2,83,41,8,122,53,82,101,116,117,114,110,32,97,32,109, + 111,100,117,108,101,32,115,112,101,99,32,98,97,115,101,100, + 32,111,110,32,118,97,114,105,111,117,115,32,108,111,97,100, + 101,114,32,109,101,116,104,111,100,115,46,218,12,103,101,116, + 95,102,105,108,101,110,97,109,101,78,114,173,0,0,0,114, + 224,0,0,0,114,223,0,0,0,70,114,221,0,0,0,41, + 5,114,60,0,0,0,218,23,115,112,101,99,95,102,114,111, + 109,95,102,105,108,101,95,108,111,99,97,116,105,111,110,114, + 223,0,0,0,114,159,0,0,0,114,220,0,0,0,41,5, 114,67,0,0,0,114,173,0,0,0,114,221,0,0,0,114, - 222,0,0,0,114,223,0,0,0,114,4,0,0,0,114,4, - 0,0,0,114,5,0,0,0,114,72,0,0,0,52,3,0, - 0,115,14,0,0,0,0,2,9,1,9,1,9,1,9,1, - 21,3,9,1,122,19,77,111,100,117,108,101,83,112,101,99, - 46,95,95,105,110,105,116,95,95,99,1,0,0,0,0,0, - 0,0,2,0,0,0,4,0,0,0,67,0,0,0,115,147, - 0,0,0,100,1,0,106,0,0,124,0,0,106,1,0,131, - 1,0,100,2,0,106,0,0,124,0,0,106,2,0,131,1, - 0,103,2,0,125,1,0,124,0,0,106,3,0,100,0,0, - 107,9,0,114,76,0,124,1,0,106,4,0,100,3,0,106, - 0,0,124,0,0,106,3,0,131,1,0,131,1,0,1,124, - 0,0,106,5,0,100,0,0,107,9,0,114,116,0,124,1, - 0,106,4,0,100,4,0,106,0,0,124,0,0,106,5,0, - 131,1,0,131,1,0,1,100,5,0,106,0,0,124,0,0, - 106,6,0,106,7,0,100,6,0,106,8,0,124,1,0,131, - 1,0,131,2,0,83,41,7,78,122,9,110,97,109,101,61, - 123,33,114,125,122,11,108,111,97,100,101,114,61,123,33,114, - 125,122,11,111,114,105,103,105,110,61,123,33,114,125,122,29, - 115,117,98,109,111,100,117,108,101,95,115,101,97,114,99,104, - 95,108,111,99,97,116,105,111,110,115,61,123,125,122,6,123, - 125,40,123,125,41,122,2,44,32,41,9,114,47,0,0,0, - 114,67,0,0,0,114,173,0,0,0,114,221,0,0,0,218, - 6,97,112,112,101,110,100,114,224,0,0,0,218,9,95,95, - 99,108,97,115,115,95,95,114,57,0,0,0,114,26,0,0, - 0,41,2,114,71,0,0,0,114,80,0,0,0,114,4,0, - 0,0,114,4,0,0,0,114,5,0,0,0,114,101,0,0, - 0,64,3,0,0,115,16,0,0,0,0,1,15,1,21,1, - 15,1,25,1,15,1,12,1,13,1,122,19,77,111,100,117, - 108,101,83,112,101,99,46,95,95,114,101,112,114,95,95,99, - 2,0,0,0,0,0,0,0,3,0,0,0,11,0,0,0, - 67,0,0,0,115,145,0,0,0,124,0,0,106,0,0,125, - 2,0,121,107,0,124,0,0,106,1,0,124,1,0,106,1, - 0,107,2,0,111,114,0,124,0,0,106,2,0,124,1,0, - 106,2,0,107,2,0,111,114,0,124,0,0,106,3,0,124, - 1,0,106,3,0,107,2,0,111,114,0,124,2,0,124,1, - 0,106,0,0,107,2,0,111,114,0,124,0,0,106,4,0, - 124,1,0,106,4,0,107,2,0,111,114,0,124,0,0,106, - 5,0,124,1,0,106,5,0,107,2,0,83,87,110,22,0, - 4,116,6,0,107,10,0,114,140,0,1,1,1,100,1,0, - 83,89,110,1,0,88,100,0,0,83,41,2,78,70,41,7, - 114,224,0,0,0,114,67,0,0,0,114,173,0,0,0,114, - 221,0,0,0,218,6,99,97,99,104,101,100,218,12,104,97, - 115,95,108,111,99,97,116,105,111,110,114,211,0,0,0,41, - 3,114,71,0,0,0,218,5,111,116,104,101,114,218,4,115, - 109,115,108,114,4,0,0,0,114,4,0,0,0,114,5,0, - 0,0,218,6,95,95,101,113,95,95,74,3,0,0,115,20, - 0,0,0,0,1,9,1,3,1,18,1,18,1,18,1,15, - 1,18,1,20,1,13,1,122,17,77,111,100,117,108,101,83, - 112,101,99,46,95,95,101,113,95,95,99,1,0,0,0,0, - 0,0,0,2,0,0,0,11,0,0,0,67,0,0,0,115, - 149,0,0,0,124,0,0,106,0,0,100,0,0,107,8,0, - 114,142,0,124,0,0,106,1,0,100,0,0,107,9,0,114, - 142,0,124,0,0,106,2,0,114,142,0,124,0,0,106,1, - 0,125,1,0,124,1,0,106,3,0,116,4,0,116,5,0, - 131,1,0,131,1,0,114,112,0,121,19,0,116,6,0,124, - 1,0,131,1,0,124,0,0,95,0,0,87,113,142,0,4, - 116,7,0,107,10,0,114,108,0,1,1,1,89,113,142,0, - 88,110,30,0,124,1,0,106,3,0,116,4,0,116,8,0, - 131,1,0,131,1,0,114,142,0,124,1,0,124,0,0,95, - 0,0,124,0,0,106,0,0,83,41,1,78,41,9,114,226, - 0,0,0,114,221,0,0,0,114,225,0,0,0,218,8,101, - 110,100,115,119,105,116,104,218,5,116,117,112,108,101,114,142, - 0,0,0,114,138,0,0,0,114,124,0,0,0,114,132,0, - 0,0,41,2,114,71,0,0,0,114,214,0,0,0,114,4, - 0,0,0,114,4,0,0,0,114,5,0,0,0,114,229,0, - 0,0,86,3,0,0,115,22,0,0,0,0,2,15,1,24, - 1,9,1,21,1,3,1,19,1,13,1,8,1,21,1,9, - 1,122,17,77,111,100,117,108,101,83,112,101,99,46,99,97, - 99,104,101,100,99,2,0,0,0,0,0,0,0,2,0,0, - 0,2,0,0,0,67,0,0,0,115,13,0,0,0,124,1, - 0,124,0,0,95,0,0,100,0,0,83,41,1,78,41,1, - 114,226,0,0,0,41,2,114,71,0,0,0,114,229,0,0, - 0,114,4,0,0,0,114,4,0,0,0,114,5,0,0,0, - 114,229,0,0,0,100,3,0,0,115,2,0,0,0,0,2, - 99,1,0,0,0,0,0,0,0,1,0,0,0,2,0,0, - 0,67,0,0,0,115,46,0,0,0,124,0,0,106,0,0, - 100,1,0,107,8,0,114,35,0,124,0,0,106,1,0,106, - 2,0,100,2,0,131,1,0,100,3,0,25,83,124,0,0, - 106,1,0,83,100,1,0,83,41,4,122,32,84,104,101,32, - 110,97,109,101,32,111,102,32,116,104,101,32,109,111,100,117, - 108,101,39,115,32,112,97,114,101,110,116,46,78,114,117,0, - 0,0,114,84,0,0,0,41,3,114,224,0,0,0,114,67, - 0,0,0,114,32,0,0,0,41,1,114,71,0,0,0,114, - 4,0,0,0,114,4,0,0,0,114,5,0,0,0,218,6, - 112,97,114,101,110,116,104,3,0,0,115,6,0,0,0,0, - 3,15,1,20,2,122,17,77,111,100,117,108,101,83,112,101, - 99,46,112,97,114,101,110,116,99,1,0,0,0,0,0,0, - 0,1,0,0,0,1,0,0,0,67,0,0,0,115,7,0, - 0,0,124,0,0,106,0,0,83,41,1,78,41,1,114,225, - 0,0,0,41,1,114,71,0,0,0,114,4,0,0,0,114, - 4,0,0,0,114,5,0,0,0,114,230,0,0,0,112,3, - 0,0,115,2,0,0,0,0,2,122,23,77,111,100,117,108, - 101,83,112,101,99,46,104,97,115,95,108,111,99,97,116,105, - 111,110,99,2,0,0,0,0,0,0,0,2,0,0,0,2, - 0,0,0,67,0,0,0,115,19,0,0,0,116,0,0,124, - 1,0,131,1,0,124,0,0,95,1,0,100,0,0,83,41, - 1,78,41,2,218,4,98,111,111,108,114,225,0,0,0,41, - 2,114,71,0,0,0,218,5,118,97,108,117,101,114,4,0, - 0,0,114,4,0,0,0,114,5,0,0,0,114,230,0,0, - 0,116,3,0,0,115,2,0,0,0,0,2,41,12,114,57, - 0,0,0,114,56,0,0,0,114,58,0,0,0,114,59,0, - 0,0,114,72,0,0,0,114,101,0,0,0,114,233,0,0, - 0,218,8,112,114,111,112,101,114,116,121,114,229,0,0,0, - 218,6,115,101,116,116,101,114,114,236,0,0,0,114,230,0, + 223,0,0,0,90,6,115,101,97,114,99,104,114,4,0,0, + 0,114,4,0,0,0,114,5,0,0,0,114,177,0,0,0, + 122,3,0,0,115,28,0,0,0,0,2,15,1,12,1,16, + 1,18,1,15,1,7,2,12,1,15,1,3,1,19,1,13, + 1,14,3,6,2,114,177,0,0,0,114,173,0,0,0,114, + 224,0,0,0,99,2,0,0,0,2,0,0,0,9,0,0, + 0,19,0,0,0,67,0,0,0,115,86,1,0,0,124,1, + 0,100,1,0,107,8,0,114,73,0,100,2,0,125,1,0, + 116,0,0,124,2,0,100,3,0,131,2,0,114,73,0,121, + 19,0,124,2,0,106,1,0,124,0,0,131,1,0,125,1, + 0,87,110,18,0,4,116,2,0,107,10,0,114,72,0,1, + 1,1,89,110,1,0,88,116,3,0,124,0,0,124,2,0, + 100,4,0,124,1,0,131,2,1,125,4,0,100,5,0,124, + 4,0,95,4,0,124,2,0,100,1,0,107,8,0,114,191, + 0,120,73,0,116,5,0,131,0,0,68,93,58,0,92,2, + 0,125,5,0,125,6,0,124,1,0,106,6,0,116,7,0, + 124,6,0,131,1,0,131,1,0,114,125,0,124,5,0,124, + 0,0,124,1,0,131,2,0,125,2,0,124,2,0,124,4, + 0,95,8,0,80,113,125,0,87,100,1,0,83,124,3,0, + 116,9,0,107,8,0,114,20,1,116,0,0,124,2,0,100, + 6,0,131,2,0,114,29,1,121,19,0,124,2,0,106,10, + 0,124,0,0,131,1,0,125,7,0,87,110,18,0,4,116, + 2,0,107,10,0,114,1,1,1,1,1,89,113,29,1,88, + 124,7,0,114,29,1,103,0,0,124,4,0,95,11,0,110, + 9,0,124,3,0,124,4,0,95,11,0,124,4,0,106,11, + 0,103,0,0,107,2,0,114,82,1,124,1,0,114,82,1, + 116,12,0,124,1,0,131,1,0,100,7,0,25,125,8,0, + 124,4,0,106,11,0,106,13,0,124,8,0,131,1,0,1, + 124,4,0,83,41,8,97,61,1,0,0,82,101,116,117,114, + 110,32,97,32,109,111,100,117,108,101,32,115,112,101,99,32, + 98,97,115,101,100,32,111,110,32,97,32,102,105,108,101,32, + 108,111,99,97,116,105,111,110,46,10,10,32,32,32,32,84, + 111,32,105,110,100,105,99,97,116,101,32,116,104,97,116,32, + 116,104,101,32,109,111,100,117,108,101,32,105,115,32,97,32, + 112,97,99,107,97,103,101,44,32,115,101,116,10,32,32,32, + 32,115,117,98,109,111,100,117,108,101,95,115,101,97,114,99, + 104,95,108,111,99,97,116,105,111,110,115,32,116,111,32,97, + 32,108,105,115,116,32,111,102,32,100,105,114,101,99,116,111, + 114,121,32,112,97,116,104,115,46,32,32,65,110,10,32,32, + 32,32,101,109,112,116,121,32,108,105,115,116,32,105,115,32, + 115,117,102,102,105,99,105,101,110,116,44,32,116,104,111,117, + 103,104,32,105,116,115,32,110,111,116,32,111,116,104,101,114, + 119,105,115,101,32,117,115,101,102,117,108,32,116,111,32,116, + 104,101,10,32,32,32,32,105,109,112,111,114,116,32,115,121, + 115,116,101,109,46,10,10,32,32,32,32,84,104,101,32,108, + 111,97,100,101,114,32,109,117,115,116,32,116,97,107,101,32, + 97,32,115,112,101,99,32,97,115,32,105,116,115,32,111,110, + 108,121,32,95,95,105,110,105,116,95,95,40,41,32,97,114, + 103,46,10,10,32,32,32,32,78,122,9,60,117,110,107,110, + 111,119,110,62,114,241,0,0,0,114,221,0,0,0,84,114, + 223,0,0,0,114,84,0,0,0,41,14,114,60,0,0,0, + 114,241,0,0,0,114,159,0,0,0,114,220,0,0,0,114, + 225,0,0,0,218,27,95,103,101,116,95,115,117,112,112,111, + 114,116,101,100,95,102,105,108,101,95,108,111,97,100,101,114, + 115,114,234,0,0,0,114,235,0,0,0,114,173,0,0,0, + 218,9,95,80,79,80,85,76,65,84,69,114,223,0,0,0, + 114,224,0,0,0,114,38,0,0,0,114,227,0,0,0,41, + 9,114,67,0,0,0,218,8,108,111,99,97,116,105,111,110, + 114,173,0,0,0,114,224,0,0,0,114,180,0,0,0,218, + 12,108,111,97,100,101,114,95,99,108,97,115,115,218,8,115, + 117,102,102,105,120,101,115,114,223,0,0,0,90,7,100,105, + 114,110,97,109,101,114,4,0,0,0,114,4,0,0,0,114, + 5,0,0,0,114,242,0,0,0,147,3,0,0,115,60,0, + 0,0,0,12,12,4,6,1,15,2,3,1,19,1,13,1, + 5,8,21,1,9,3,12,1,22,1,21,1,15,1,9,1, + 5,2,4,3,12,2,15,1,3,1,19,1,13,1,5,2, + 6,1,12,2,9,1,15,1,6,1,16,1,16,2,114,242, + 0,0,0,99,3,0,0,0,0,0,0,0,8,0,0,0, + 53,0,0,0,67,0,0,0,115,118,1,0,0,121,13,0, + 124,0,0,106,0,0,125,3,0,87,110,18,0,4,116,1, + 0,107,10,0,114,33,0,1,1,1,89,110,17,0,88,124, + 3,0,100,0,0,107,9,0,114,50,0,124,3,0,83,124, + 0,0,106,2,0,125,4,0,124,1,0,100,0,0,107,8, + 0,114,105,0,121,13,0,124,0,0,106,3,0,125,1,0, + 87,110,18,0,4,116,1,0,107,10,0,114,104,0,1,1, + 1,89,110,1,0,88,121,13,0,124,0,0,106,4,0,125, + 5,0,87,110,24,0,4,116,1,0,107,10,0,114,144,0, + 1,1,1,100,0,0,125,5,0,89,110,1,0,88,124,2, + 0,100,0,0,107,8,0,114,218,0,124,5,0,100,0,0, + 107,8,0,114,212,0,121,13,0,124,1,0,106,5,0,125, + 2,0,87,113,218,0,4,116,1,0,107,10,0,114,208,0, + 1,1,1,100,0,0,125,2,0,89,113,218,0,88,110,6, + 0,124,5,0,125,2,0,121,13,0,124,0,0,106,6,0, + 125,6,0,87,110,24,0,4,116,1,0,107,10,0,114,1, + 1,1,1,1,100,0,0,125,6,0,89,110,1,0,88,121, + 19,0,116,7,0,124,0,0,106,8,0,131,1,0,125,7, + 0,87,110,24,0,4,116,1,0,107,10,0,114,47,1,1, + 1,1,100,0,0,125,7,0,89,110,1,0,88,116,9,0, + 124,4,0,124,1,0,100,1,0,124,2,0,131,2,1,125, + 3,0,124,5,0,100,0,0,107,8,0,114,87,1,100,2, + 0,110,3,0,100,3,0,124,3,0,95,10,0,124,6,0, + 124,3,0,95,11,0,124,7,0,124,3,0,95,12,0,124, + 3,0,83,41,4,78,114,221,0,0,0,70,84,41,13,114, + 210,0,0,0,114,211,0,0,0,114,57,0,0,0,114,206, + 0,0,0,114,213,0,0,0,90,7,95,79,82,73,71,73, + 78,218,10,95,95,99,97,99,104,101,100,95,95,218,4,108, + 105,115,116,218,8,95,95,112,97,116,104,95,95,114,220,0, + 0,0,114,225,0,0,0,114,229,0,0,0,114,224,0,0, + 0,41,8,114,181,0,0,0,114,173,0,0,0,114,221,0, + 0,0,114,180,0,0,0,114,67,0,0,0,114,245,0,0, + 0,114,229,0,0,0,114,224,0,0,0,114,4,0,0,0, + 114,4,0,0,0,114,5,0,0,0,218,17,95,115,112,101, + 99,95,102,114,111,109,95,109,111,100,117,108,101,211,3,0, + 0,115,72,0,0,0,0,2,3,1,13,1,13,1,5,2, + 12,1,4,2,9,1,12,1,3,1,13,1,13,2,5,1, + 3,1,13,1,13,1,11,1,12,1,12,1,3,1,13,1, + 13,1,14,2,6,1,3,1,13,1,13,1,11,1,3,1, + 19,1,13,1,11,2,21,1,27,1,9,1,9,1,114,251, + 0,0,0,218,8,111,118,101,114,114,105,100,101,70,99,2, + 0,0,0,1,0,0,0,4,0,0,0,59,0,0,0,67, + 0,0,0,115,27,2,0,0,124,2,0,115,30,0,116,0, + 0,124,1,0,100,1,0,100,0,0,131,3,0,100,0,0, + 107,8,0,114,67,0,121,16,0,124,0,0,106,1,0,124, + 1,0,95,2,0,87,110,18,0,4,116,3,0,107,10,0, + 114,66,0,1,1,1,89,110,1,0,88,124,2,0,115,97, + 0,116,0,0,124,1,0,100,2,0,100,0,0,131,3,0, + 100,0,0,107,8,0,114,194,0,124,0,0,106,4,0,125, + 3,0,124,3,0,100,0,0,107,8,0,114,160,0,124,0, + 0,106,5,0,100,0,0,107,9,0,114,160,0,116,6,0, + 106,7,0,116,6,0,131,1,0,125,3,0,124,0,0,106, + 5,0,124,3,0,95,8,0,121,13,0,124,3,0,124,1, + 0,95,9,0,87,110,18,0,4,116,3,0,107,10,0,114, + 193,0,1,1,1,89,110,1,0,88,124,2,0,115,224,0, + 116,0,0,124,1,0,100,3,0,100,0,0,131,3,0,100, + 0,0,107,8,0,114,5,1,121,16,0,124,0,0,106,10, + 0,124,1,0,95,11,0,87,110,18,0,4,116,3,0,107, + 10,0,114,4,1,1,1,1,89,110,1,0,88,121,13,0, + 124,0,0,124,1,0,95,12,0,87,110,18,0,4,116,3, + 0,107,10,0,114,38,1,1,1,1,89,110,1,0,88,124, + 2,0,115,69,1,116,0,0,124,1,0,100,4,0,100,0, + 0,131,3,0,100,0,0,107,8,0,114,121,1,124,0,0, + 106,5,0,100,0,0,107,9,0,114,121,1,121,16,0,124, + 0,0,106,5,0,124,1,0,95,13,0,87,110,18,0,4, + 116,3,0,107,10,0,114,120,1,1,1,1,89,110,1,0, + 88,124,0,0,106,14,0,114,23,2,124,2,0,115,160,1, + 116,0,0,124,1,0,100,5,0,100,0,0,131,3,0,100, + 0,0,107,8,0,114,197,1,121,16,0,124,0,0,106,15, + 0,124,1,0,95,16,0,87,110,18,0,4,116,3,0,107, + 10,0,114,196,1,1,1,1,89,110,1,0,88,124,2,0, + 115,227,1,116,0,0,124,1,0,100,6,0,100,0,0,131, + 3,0,100,0,0,107,8,0,114,23,2,124,0,0,106,17, + 0,100,0,0,107,9,0,114,23,2,121,16,0,124,0,0, + 106,17,0,124,1,0,95,18,0,87,110,18,0,4,116,3, + 0,107,10,0,114,22,2,1,1,1,89,110,1,0,88,124, + 1,0,83,41,7,78,114,57,0,0,0,114,206,0,0,0, + 218,11,95,95,112,97,99,107,97,103,101,95,95,114,250,0, + 0,0,114,213,0,0,0,114,248,0,0,0,41,19,114,62, + 0,0,0,114,67,0,0,0,114,57,0,0,0,114,211,0, + 0,0,114,173,0,0,0,114,224,0,0,0,218,16,95,78, + 97,109,101,115,112,97,99,101,76,111,97,100,101,114,218,7, + 95,95,110,101,119,95,95,218,5,95,112,97,116,104,114,206, + 0,0,0,114,236,0,0,0,114,253,0,0,0,114,210,0, + 0,0,114,250,0,0,0,114,230,0,0,0,114,221,0,0, + 0,114,213,0,0,0,114,229,0,0,0,114,248,0,0,0, + 41,4,114,180,0,0,0,114,181,0,0,0,114,252,0,0, + 0,114,173,0,0,0,114,4,0,0,0,114,4,0,0,0, + 114,5,0,0,0,218,18,95,105,110,105,116,95,109,111,100, + 117,108,101,95,97,116,116,114,115,0,4,0,0,115,86,0, + 0,0,0,4,30,1,3,1,16,1,13,1,5,2,30,1, + 9,1,12,2,15,1,15,1,12,1,3,1,13,1,13,1, + 5,2,30,1,3,1,16,1,13,1,5,2,3,1,13,1, + 13,1,5,2,30,1,15,1,3,1,16,1,13,1,5,2, + 9,1,30,1,3,1,16,1,13,1,5,2,30,1,15,1, + 3,1,16,1,13,1,5,1,114,1,1,0,0,99,1,0, + 0,0,0,0,0,0,2,0,0,0,5,0,0,0,67,0, + 0,0,115,129,0,0,0,100,1,0,125,1,0,116,0,0, + 124,0,0,106,1,0,100,2,0,131,2,0,114,45,0,124, + 0,0,106,1,0,106,2,0,124,0,0,131,1,0,125,1, + 0,110,40,0,116,0,0,124,0,0,106,1,0,100,3,0, + 131,2,0,114,85,0,116,3,0,106,4,0,100,4,0,116, + 5,0,100,5,0,100,6,0,131,2,1,1,124,1,0,100, + 1,0,107,8,0,114,112,0,116,6,0,124,0,0,106,7, + 0,131,1,0,125,1,0,116,8,0,124,0,0,124,1,0, + 131,2,0,1,124,1,0,83,41,7,122,43,67,114,101,97, + 116,101,32,97,32,109,111,100,117,108,101,32,98,97,115,101, + 100,32,111,110,32,116,104,101,32,112,114,111,118,105,100,101, + 100,32,115,112,101,99,46,78,218,13,99,114,101,97,116,101, + 95,109,111,100,117,108,101,218,11,101,120,101,99,95,109,111, + 100,117,108,101,122,87,115,116,97,114,116,105,110,103,32,105, + 110,32,80,121,116,104,111,110,32,51,46,54,44,32,108,111, + 97,100,101,114,115,32,100,101,102,105,110,105,110,103,32,101, + 120,101,99,95,109,111,100,117,108,101,40,41,32,109,117,115, + 116,32,97,108,115,111,32,100,101,102,105,110,101,32,99,114, + 101,97,116,101,95,109,111,100,117,108,101,40,41,90,10,115, + 116,97,99,107,108,101,118,101,108,114,115,0,0,0,41,9, + 114,60,0,0,0,114,173,0,0,0,114,2,1,0,0,114, + 118,0,0,0,114,119,0,0,0,114,120,0,0,0,114,68, + 0,0,0,114,67,0,0,0,114,1,1,0,0,41,2,114, + 180,0,0,0,114,181,0,0,0,114,4,0,0,0,114,4, + 0,0,0,114,5,0,0,0,218,16,109,111,100,117,108,101, + 95,102,114,111,109,95,115,112,101,99,56,4,0,0,115,20, + 0,0,0,0,3,6,1,18,3,21,1,18,1,9,2,13, + 1,12,1,15,1,13,1,114,4,1,0,0,99,1,0,0, + 0,0,0,0,0,2,0,0,0,3,0,0,0,67,0,0, + 0,115,149,0,0,0,124,0,0,106,0,0,100,1,0,107, + 8,0,114,21,0,100,2,0,110,6,0,124,0,0,106,0, + 0,125,1,0,124,0,0,106,1,0,100,1,0,107,8,0, + 114,95,0,124,0,0,106,2,0,100,1,0,107,8,0,114, + 73,0,100,3,0,106,3,0,124,1,0,131,1,0,83,100, + 4,0,106,3,0,124,1,0,124,0,0,106,2,0,131,2, + 0,83,110,50,0,124,0,0,106,4,0,114,123,0,100,5, + 0,106,3,0,124,1,0,124,0,0,106,1,0,131,2,0, + 83,100,6,0,106,3,0,124,0,0,106,0,0,124,0,0, + 106,1,0,131,2,0,83,100,1,0,83,41,7,122,38,82, + 101,116,117,114,110,32,116,104,101,32,114,101,112,114,32,116, + 111,32,117,115,101,32,102,111,114,32,116,104,101,32,109,111, + 100,117,108,101,46,78,114,208,0,0,0,122,13,60,109,111, + 100,117,108,101,32,123,33,114,125,62,122,20,60,109,111,100, + 117,108,101,32,123,33,114,125,32,40,123,33,114,125,41,62, + 122,23,60,109,111,100,117,108,101,32,123,33,114,125,32,102, + 114,111,109,32,123,33,114,125,62,122,18,60,109,111,100,117, + 108,101,32,123,33,114,125,32,40,123,125,41,62,41,5,114, + 67,0,0,0,114,221,0,0,0,114,173,0,0,0,114,47, + 0,0,0,114,230,0,0,0,41,2,114,180,0,0,0,114, + 67,0,0,0,114,4,0,0,0,114,4,0,0,0,114,5, + 0,0,0,114,212,0,0,0,74,4,0,0,115,16,0,0, + 0,0,3,30,1,15,1,15,1,13,2,22,2,9,1,19, + 2,114,212,0,0,0,99,2,0,0,0,0,0,0,0,4, + 0,0,0,12,0,0,0,67,0,0,0,115,253,0,0,0, + 124,0,0,106,0,0,125,2,0,116,1,0,106,2,0,131, + 0,0,1,116,3,0,124,2,0,131,1,0,143,208,0,1, + 116,4,0,106,5,0,106,6,0,124,2,0,131,1,0,124, + 1,0,107,9,0,114,89,0,100,1,0,106,7,0,124,2, + 0,131,1,0,125,3,0,116,8,0,124,3,0,100,2,0, + 124,2,0,131,1,1,130,1,0,124,0,0,106,9,0,100, + 3,0,107,8,0,114,163,0,124,0,0,106,10,0,100,3, + 0,107,8,0,114,140,0,116,8,0,100,4,0,100,2,0, + 124,0,0,106,0,0,131,1,1,130,1,0,116,11,0,124, + 0,0,124,1,0,100,5,0,100,6,0,131,2,1,1,124, + 1,0,83,116,11,0,124,0,0,124,1,0,100,5,0,100, + 6,0,131,2,1,1,116,12,0,124,0,0,106,9,0,100, + 7,0,131,2,0,115,219,0,124,0,0,106,9,0,106,13, + 0,124,2,0,131,1,0,1,110,16,0,124,0,0,106,9, + 0,106,14,0,124,1,0,131,1,0,1,87,100,3,0,81, + 82,88,116,4,0,106,5,0,124,2,0,25,83,41,8,122, + 51,69,120,101,99,117,116,101,32,116,104,101,32,115,112,101, + 99,32,105,110,32,97,110,32,101,120,105,115,116,105,110,103, + 32,109,111,100,117,108,101,39,115,32,110,97,109,101,115,112, + 97,99,101,46,122,30,109,111,100,117,108,101,32,123,33,114, + 125,32,110,111,116,32,105,110,32,115,121,115,46,109,111,100, + 117,108,101,115,114,67,0,0,0,78,122,14,109,105,115,115, + 105,110,103,32,108,111,97,100,101,114,114,252,0,0,0,84, + 114,3,1,0,0,41,15,114,67,0,0,0,114,106,0,0, + 0,218,12,97,99,113,117,105,114,101,95,108,111,99,107,114, + 103,0,0,0,114,7,0,0,0,114,73,0,0,0,114,93, + 0,0,0,114,47,0,0,0,114,159,0,0,0,114,173,0, + 0,0,114,224,0,0,0,114,1,1,0,0,114,60,0,0, + 0,218,11,108,111,97,100,95,109,111,100,117,108,101,114,3, + 1,0,0,41,4,114,180,0,0,0,114,181,0,0,0,114, + 67,0,0,0,114,175,0,0,0,114,4,0,0,0,114,4, + 0,0,0,114,5,0,0,0,114,178,0,0,0,91,4,0, + 0,115,32,0,0,0,0,2,9,1,10,1,13,1,24,1, + 15,1,18,1,15,1,15,1,21,2,19,1,4,1,19,1, + 18,4,19,2,23,1,114,178,0,0,0,99,1,0,0,0, + 0,0,0,0,2,0,0,0,27,0,0,0,67,0,0,0, + 115,3,1,0,0,124,0,0,106,0,0,106,1,0,124,0, + 0,106,2,0,131,1,0,1,116,3,0,106,4,0,124,0, + 0,106,2,0,25,125,1,0,116,5,0,124,1,0,100,1, + 0,100,0,0,131,3,0,100,0,0,107,8,0,114,96,0, + 121,16,0,124,0,0,106,0,0,124,1,0,95,6,0,87, + 110,18,0,4,116,7,0,107,10,0,114,95,0,1,1,1, + 89,110,1,0,88,116,5,0,124,1,0,100,2,0,100,0, + 0,131,3,0,100,0,0,107,8,0,114,197,0,121,56,0, + 124,1,0,106,8,0,124,1,0,95,9,0,116,10,0,124, + 1,0,100,3,0,131,2,0,115,175,0,124,0,0,106,2, + 0,106,11,0,100,4,0,131,1,0,100,5,0,25,124,1, + 0,95,9,0,87,110,18,0,4,116,7,0,107,10,0,114, + 196,0,1,1,1,89,110,1,0,88,116,5,0,124,1,0, + 100,6,0,100,0,0,131,3,0,100,0,0,107,8,0,114, + 255,0,121,13,0,124,0,0,124,1,0,95,12,0,87,110, + 18,0,4,116,7,0,107,10,0,114,254,0,1,1,1,89, + 110,1,0,88,124,1,0,83,41,7,78,114,206,0,0,0, + 114,253,0,0,0,114,250,0,0,0,114,117,0,0,0,114, + 84,0,0,0,114,210,0,0,0,41,13,114,173,0,0,0, + 114,6,1,0,0,114,67,0,0,0,114,7,0,0,0,114, + 73,0,0,0,114,62,0,0,0,114,206,0,0,0,114,211, + 0,0,0,114,57,0,0,0,114,253,0,0,0,114,60,0, + 0,0,114,32,0,0,0,114,210,0,0,0,41,2,114,180, + 0,0,0,114,181,0,0,0,114,4,0,0,0,114,4,0, + 0,0,114,5,0,0,0,218,25,95,108,111,97,100,95,98, + 97,99,107,119,97,114,100,95,99,111,109,112,97,116,105,98, + 108,101,116,4,0,0,115,40,0,0,0,0,4,19,2,16, + 1,24,1,3,1,16,1,13,1,5,1,24,1,3,4,12, + 1,15,1,29,1,13,1,5,1,24,1,3,1,13,1,13, + 1,5,1,114,7,1,0,0,99,1,0,0,0,0,0,0, + 0,2,0,0,0,11,0,0,0,67,0,0,0,115,159,0, + 0,0,124,0,0,106,0,0,100,0,0,107,9,0,114,43, + 0,116,1,0,124,0,0,106,0,0,100,1,0,131,2,0, + 115,43,0,116,2,0,124,0,0,131,1,0,83,116,3,0, + 124,0,0,131,1,0,125,1,0,116,4,0,124,1,0,131, + 1,0,143,75,0,1,124,0,0,106,0,0,100,0,0,107, + 8,0,114,122,0,124,0,0,106,5,0,100,0,0,107,8, + 0,114,138,0,116,6,0,100,2,0,100,3,0,124,0,0, + 106,7,0,131,1,1,130,1,0,110,16,0,124,0,0,106, + 0,0,106,8,0,124,1,0,131,1,0,1,87,100,0,0, + 81,82,88,116,9,0,106,10,0,124,0,0,106,7,0,25, + 83,41,4,78,114,3,1,0,0,122,14,109,105,115,115,105, + 110,103,32,108,111,97,100,101,114,114,67,0,0,0,41,11, + 114,173,0,0,0,114,60,0,0,0,114,7,1,0,0,114, + 4,1,0,0,114,216,0,0,0,114,224,0,0,0,114,159, + 0,0,0,114,67,0,0,0,114,3,1,0,0,114,7,0, + 0,0,114,73,0,0,0,41,2,114,180,0,0,0,114,181, + 0,0,0,114,4,0,0,0,114,4,0,0,0,114,5,0, + 0,0,218,14,95,108,111,97,100,95,117,110,108,111,99,107, + 101,100,145,4,0,0,115,20,0,0,0,0,2,15,2,18, + 1,10,2,12,1,13,1,15,1,15,1,24,3,23,5,114, + 8,1,0,0,99,1,0,0,0,0,0,0,0,1,0,0, + 0,9,0,0,0,67,0,0,0,115,47,0,0,0,116,0, + 0,106,1,0,131,0,0,1,116,2,0,124,0,0,106,3, + 0,131,1,0,143,15,0,1,116,4,0,124,0,0,131,1, + 0,83,87,100,1,0,81,82,88,100,1,0,83,41,2,122, + 191,82,101,116,117,114,110,32,97,32,110,101,119,32,109,111, + 100,117,108,101,32,111,98,106,101,99,116,44,32,108,111,97, + 100,101,100,32,98,121,32,116,104,101,32,115,112,101,99,39, + 115,32,108,111,97,100,101,114,46,10,10,32,32,32,32,84, + 104,101,32,109,111,100,117,108,101,32,105,115,32,110,111,116, + 32,97,100,100,101,100,32,116,111,32,105,116,115,32,112,97, + 114,101,110,116,46,10,10,32,32,32,32,73,102,32,97,32, + 109,111,100,117,108,101,32,105,115,32,97,108,114,101,97,100, + 121,32,105,110,32,115,121,115,46,109,111,100,117,108,101,115, + 44,32,116,104,97,116,32,101,120,105,115,116,105,110,103,32, + 109,111,100,117,108,101,32,103,101,116,115,10,32,32,32,32, + 99,108,111,98,98,101,114,101,100,46,10,10,32,32,32,32, + 78,41,5,114,106,0,0,0,114,5,1,0,0,114,103,0, + 0,0,114,67,0,0,0,114,8,1,0,0,41,1,114,180, + 0,0,0,114,4,0,0,0,114,4,0,0,0,114,5,0, + 0,0,114,179,0,0,0,168,4,0,0,115,6,0,0,0, + 0,9,10,1,16,1,114,179,0,0,0,99,4,0,0,0, + 0,0,0,0,6,0,0,0,11,0,0,0,67,0,0,0, + 115,195,0,0,0,124,0,0,106,0,0,100,1,0,131,1, + 0,125,4,0,124,0,0,106,0,0,100,2,0,131,1,0, + 125,5,0,124,4,0,115,99,0,124,5,0,114,54,0,124, + 5,0,106,1,0,125,4,0,110,45,0,124,2,0,124,3, + 0,107,2,0,114,84,0,116,2,0,124,1,0,124,2,0, + 131,2,0,125,4,0,110,15,0,116,3,0,124,1,0,124, + 2,0,131,2,0,125,4,0,124,5,0,115,126,0,116,4, + 0,124,1,0,124,2,0,100,3,0,124,4,0,131,2,1, + 125,5,0,121,44,0,124,5,0,124,0,0,100,2,0,60, + 124,4,0,124,0,0,100,1,0,60,124,2,0,124,0,0, + 100,4,0,60,124,3,0,124,0,0,100,5,0,60,87,110, + 18,0,4,116,5,0,107,10,0,114,190,0,1,1,1,89, + 110,1,0,88,100,0,0,83,41,6,78,114,206,0,0,0, + 114,210,0,0,0,114,173,0,0,0,114,213,0,0,0,114, + 248,0,0,0,41,6,114,93,0,0,0,114,173,0,0,0, + 218,20,83,111,117,114,99,101,108,101,115,115,70,105,108,101, + 76,111,97,100,101,114,218,16,83,111,117,114,99,101,70,105, + 108,101,76,111,97,100,101,114,114,242,0,0,0,114,209,0, + 0,0,41,6,90,2,110,115,114,67,0,0,0,90,8,112, + 97,116,104,110,97,109,101,90,9,99,112,97,116,104,110,97, + 109,101,114,173,0,0,0,114,180,0,0,0,114,4,0,0, + 0,114,4,0,0,0,114,5,0,0,0,218,14,95,102,105, + 120,95,117,112,95,109,111,100,117,108,101,182,4,0,0,115, + 34,0,0,0,0,2,15,1,15,1,6,1,6,1,12,1, + 12,1,18,2,15,1,6,1,21,1,3,1,10,1,10,1, + 10,1,14,1,13,2,114,11,1,0,0,99,0,0,0,0, + 0,0,0,0,0,0,0,0,5,0,0,0,64,0,0,0, + 115,181,0,0,0,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,6,0,100,4,0,100, + 4,0,100,5,0,100,6,0,132,2,0,131,1,0,90,7, + 0,101,6,0,100,4,0,100,7,0,100,8,0,132,1,0, + 131,1,0,90,8,0,101,6,0,101,9,0,100,9,0,100, + 10,0,132,0,0,131,1,0,131,1,0,90,10,0,101,6, + 0,101,9,0,100,11,0,100,12,0,132,0,0,131,1,0, + 131,1,0,90,11,0,101,6,0,101,9,0,100,13,0,100, + 14,0,132,0,0,131,1,0,131,1,0,90,12,0,101,6, + 0,101,9,0,100,15,0,100,16,0,132,0,0,131,1,0, + 131,1,0,90,13,0,100,4,0,83,41,17,218,15,66,117, + 105,108,116,105,110,73,109,112,111,114,116,101,114,122,144,77, + 101,116,97,32,112,97,116,104,32,105,109,112,111,114,116,32, + 102,111,114,32,98,117,105,108,116,45,105,110,32,109,111,100, + 117,108,101,115,46,10,10,32,32,32,32,65,108,108,32,109, + 101,116,104,111,100,115,32,97,114,101,32,101,105,116,104,101, + 114,32,99,108,97,115,115,32,111,114,32,115,116,97,116,105, + 99,32,109,101,116,104,111,100,115,32,116,111,32,97,118,111, + 105,100,32,116,104,101,32,110,101,101,100,32,116,111,10,32, + 32,32,32,105,110,115,116,97,110,116,105,97,116,101,32,116, + 104,101,32,99,108,97,115,115,46,10,10,32,32,32,32,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,41,2,122,115,82,101,116, + 117,114,110,32,114,101,112,114,32,102,111,114,32,116,104,101, + 32,109,111,100,117,108,101,46,10,10,32,32,32,32,32,32, + 32,32,84,104,101,32,109,101,116,104,111,100,32,105,115,32, + 100,101,112,114,101,99,97,116,101,100,46,32,32,84,104,101, + 32,105,109,112,111,114,116,32,109,97,99,104,105,110,101,114, + 121,32,100,111,101,115,32,116,104,101,32,106,111,98,32,105, + 116,115,101,108,102,46,10,10,32,32,32,32,32,32,32,32, + 122,24,60,109,111,100,117,108,101,32,123,33,114,125,32,40, + 98,117,105,108,116,45,105,110,41,62,41,2,114,47,0,0, + 0,114,57,0,0,0,41,1,114,181,0,0,0,114,4,0, + 0,0,114,4,0,0,0,114,5,0,0,0,114,207,0,0, + 0,216,4,0,0,115,2,0,0,0,0,7,122,27,66,117, + 105,108,116,105,110,73,109,112,111,114,116,101,114,46,109,111, + 100,117,108,101,95,114,101,112,114,78,99,4,0,0,0,0, + 0,0,0,4,0,0,0,5,0,0,0,67,0,0,0,115, + 58,0,0,0,124,2,0,100,0,0,107,9,0,114,16,0, + 100,0,0,83,116,0,0,106,1,0,124,1,0,131,1,0, + 114,50,0,116,2,0,124,1,0,124,0,0,100,1,0,100, + 2,0,131,2,1,83,100,0,0,83,100,0,0,83,41,3, + 78,114,221,0,0,0,122,8,98,117,105,108,116,45,105,110, + 41,3,114,106,0,0,0,90,10,105,115,95,98,117,105,108, + 116,105,110,114,177,0,0,0,41,4,218,3,99,108,115,114, + 164,0,0,0,114,35,0,0,0,218,6,116,97,114,103,101, + 116,114,4,0,0,0,114,4,0,0,0,114,5,0,0,0, + 218,9,102,105,110,100,95,115,112,101,99,225,4,0,0,115, + 10,0,0,0,0,2,12,1,4,1,15,1,19,2,122,25, + 66,117,105,108,116,105,110,73,109,112,111,114,116,101,114,46, + 102,105,110,100,95,115,112,101,99,99,3,0,0,0,0,0, + 0,0,4,0,0,0,3,0,0,0,67,0,0,0,115,41, + 0,0,0,124,0,0,106,0,0,124,1,0,124,2,0,131, + 2,0,125,3,0,124,3,0,100,1,0,107,9,0,114,37, + 0,124,3,0,106,1,0,83,100,1,0,83,41,2,122,175, + 70,105,110,100,32,116,104,101,32,98,117,105,108,116,45,105, + 110,32,109,111,100,117,108,101,46,10,10,32,32,32,32,32, + 32,32,32,73,102,32,39,112,97,116,104,39,32,105,115,32, + 101,118,101,114,32,115,112,101,99,105,102,105,101,100,32,116, + 104,101,110,32,116,104,101,32,115,101,97,114,99,104,32,105, + 115,32,99,111,110,115,105,100,101,114,101,100,32,97,32,102, + 97,105,108,117,114,101,46,10,10,32,32,32,32,32,32,32, + 32,84,104,105,115,32,109,101,116,104,111,100,32,105,115,32, + 100,101,112,114,101,99,97,116,101,100,46,32,32,85,115,101, + 32,102,105,110,100,95,115,112,101,99,40,41,32,105,110,115, + 116,101,97,100,46,10,10,32,32,32,32,32,32,32,32,78, + 41,2,114,15,1,0,0,114,173,0,0,0,41,4,114,13, + 1,0,0,114,164,0,0,0,114,35,0,0,0,114,180,0, + 0,0,114,4,0,0,0,114,4,0,0,0,114,5,0,0, + 0,218,11,102,105,110,100,95,109,111,100,117,108,101,234,4, + 0,0,115,4,0,0,0,0,9,18,1,122,27,66,117,105, + 108,116,105,110,73,109,112,111,114,116,101,114,46,102,105,110, + 100,95,109,111,100,117,108,101,99,2,0,0,0,0,0,0, + 0,3,0,0,0,10,0,0,0,67,0,0,0,115,60,0, + 0,0,116,0,0,124,1,0,131,1,0,143,23,0,1,116, + 1,0,116,2,0,106,3,0,124,1,0,131,2,0,125,2, + 0,87,100,1,0,81,82,88,124,0,0,124,2,0,95,4, + 0,100,2,0,124,2,0,95,5,0,124,2,0,83,41,3, + 122,23,76,111,97,100,32,97,32,98,117,105,108,116,45,105, + 110,32,109,111,100,117,108,101,46,78,114,30,0,0,0,41, + 6,114,69,0,0,0,114,114,0,0,0,114,106,0,0,0, + 90,12,105,110,105,116,95,98,117,105,108,116,105,110,114,206, + 0,0,0,114,253,0,0,0,41,3,114,13,1,0,0,114, + 164,0,0,0,114,181,0,0,0,114,4,0,0,0,114,4, + 0,0,0,114,5,0,0,0,114,6,1,0,0,246,4,0, + 0,115,10,0,0,0,0,6,13,1,25,1,9,1,9,1, + 122,27,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,41,2,122,57,82, + 101,116,117,114,110,32,78,111,110,101,32,97,115,32,98,117, + 105,108,116,45,105,110,32,109,111,100,117,108,101,115,32,100, + 111,32,110,111,116,32,104,97,118,101,32,99,111,100,101,32, + 111,98,106,101,99,116,115,46,78,114,4,0,0,0,41,2, + 114,13,1,0,0,114,164,0,0,0,114,4,0,0,0,114, + 4,0,0,0,114,5,0,0,0,218,8,103,101,116,95,99, + 111,100,101,2,5,0,0,115,2,0,0,0,0,4,122,24, + 66,117,105,108,116,105,110,73,109,112,111,114,116,101,114,46, + 103,101,116,95,99,111,100,101,99,2,0,0,0,0,0,0, + 0,2,0,0,0,1,0,0,0,67,0,0,0,115,4,0, + 0,0,100,1,0,83,41,2,122,56,82,101,116,117,114,110, + 32,78,111,110,101,32,97,115,32,98,117,105,108,116,45,105, + 110,32,109,111,100,117,108,101,115,32,100,111,32,110,111,116, + 32,104,97,118,101,32,115,111,117,114,99,101,32,99,111,100, + 101,46,78,114,4,0,0,0,41,2,114,13,1,0,0,114, + 164,0,0,0,114,4,0,0,0,114,4,0,0,0,114,5, + 0,0,0,218,10,103,101,116,95,115,111,117,114,99,101,8, + 5,0,0,115,2,0,0,0,0,4,122,26,66,117,105,108, + 116,105,110,73,109,112,111,114,116,101,114,46,103,101,116,95, + 115,111,117,114,99,101,99,2,0,0,0,0,0,0,0,2, + 0,0,0,1,0,0,0,67,0,0,0,115,4,0,0,0, + 100,1,0,83,41,2,122,52,82,101,116,117,114,110,32,70, + 97,108,115,101,32,97,115,32,98,117,105,108,116,45,105,110, + 32,109,111,100,117,108,101,115,32,97,114,101,32,110,101,118, + 101,114,32,112,97,99,107,97,103,101,115,46,70,114,4,0, + 0,0,41,2,114,13,1,0,0,114,164,0,0,0,114,4, + 0,0,0,114,4,0,0,0,114,5,0,0,0,114,223,0, + 0,0,14,5,0,0,115,2,0,0,0,0,4,122,26,66, + 117,105,108,116,105,110,73,109,112,111,114,116,101,114,46,105, + 115,95,112,97,99,107,97,103,101,41,14,114,57,0,0,0, + 114,56,0,0,0,114,58,0,0,0,114,59,0,0,0,218, + 12,115,116,97,116,105,99,109,101,116,104,111,100,114,207,0, + 0,0,218,11,99,108,97,115,115,109,101,116,104,111,100,114, + 15,1,0,0,114,16,1,0,0,114,167,0,0,0,114,6, + 1,0,0,114,17,1,0,0,114,18,1,0,0,114,223,0, 0,0,114,4,0,0,0,114,4,0,0,0,114,4,0,0, - 0,114,5,0,0,0,114,220,0,0,0,15,3,0,0,115, - 20,0,0,0,12,35,6,2,15,1,15,11,12,10,12,12, - 18,14,21,4,18,8,18,4,114,220,0,0,0,114,221,0, - 0,0,114,223,0,0,0,99,2,0,0,0,2,0,0,0, - 5,0,0,0,15,0,0,0,67,0,0,0,115,190,0,0, - 0,116,0,0,124,1,0,100,1,0,131,2,0,114,83,0, - 124,3,0,100,2,0,107,8,0,114,43,0,116,1,0,124, - 0,0,100,3,0,124,1,0,131,1,1,83,124,3,0,114, - 55,0,103,0,0,110,3,0,100,2,0,125,4,0,116,1, - 0,124,0,0,100,3,0,124,1,0,100,4,0,124,4,0, - 131,1,2,83,124,3,0,100,2,0,107,8,0,114,165,0, - 116,0,0,124,1,0,100,5,0,131,2,0,114,159,0,121, - 19,0,124,1,0,106,2,0,124,0,0,131,1,0,125,3, - 0,87,113,165,0,4,116,3,0,107,10,0,114,155,0,1, - 1,1,100,2,0,125,3,0,89,113,165,0,88,110,6,0, - 100,6,0,125,3,0,116,4,0,124,0,0,124,1,0,100, - 7,0,124,2,0,100,5,0,124,3,0,131,2,2,83,41, - 8,122,53,82,101,116,117,114,110,32,97,32,109,111,100,117, - 108,101,32,115,112,101,99,32,98,97,115,101,100,32,111,110, - 32,118,97,114,105,111,117,115,32,108,111,97,100,101,114,32, - 109,101,116,104,111,100,115,46,218,12,103,101,116,95,102,105, - 108,101,110,97,109,101,78,114,173,0,0,0,114,224,0,0, - 0,114,223,0,0,0,70,114,221,0,0,0,41,5,114,60, - 0,0,0,218,23,115,112,101,99,95,102,114,111,109,95,102, - 105,108,101,95,108,111,99,97,116,105,111,110,114,223,0,0, - 0,114,159,0,0,0,114,220,0,0,0,41,5,114,67,0, - 0,0,114,173,0,0,0,114,221,0,0,0,114,223,0,0, - 0,90,6,115,101,97,114,99,104,114,4,0,0,0,114,4, - 0,0,0,114,5,0,0,0,114,177,0,0,0,121,3,0, - 0,115,28,0,0,0,0,2,15,1,12,1,16,1,18,1, - 15,1,7,2,12,1,15,1,3,1,19,1,13,1,14,3, - 6,2,114,177,0,0,0,114,173,0,0,0,114,224,0,0, - 0,99,2,0,0,0,2,0,0,0,9,0,0,0,19,0, - 0,0,67,0,0,0,115,86,1,0,0,124,1,0,100,1, - 0,107,8,0,114,73,0,100,2,0,125,1,0,116,0,0, - 124,2,0,100,3,0,131,2,0,114,73,0,121,19,0,124, - 2,0,106,1,0,124,0,0,131,1,0,125,1,0,87,110, - 18,0,4,116,2,0,107,10,0,114,72,0,1,1,1,89, - 110,1,0,88,116,3,0,124,0,0,124,2,0,100,4,0, - 124,1,0,131,2,1,125,4,0,100,5,0,124,4,0,95, - 4,0,124,2,0,100,1,0,107,8,0,114,191,0,120,73, - 0,116,5,0,131,0,0,68,93,58,0,92,2,0,125,5, - 0,125,6,0,124,1,0,106,6,0,116,7,0,124,6,0, - 131,1,0,131,1,0,114,125,0,124,5,0,124,0,0,124, - 1,0,131,2,0,125,2,0,124,2,0,124,4,0,95,8, - 0,80,113,125,0,87,100,1,0,83,124,3,0,116,9,0, - 107,8,0,114,20,1,116,0,0,124,2,0,100,6,0,131, - 2,0,114,29,1,121,19,0,124,2,0,106,10,0,124,0, - 0,131,1,0,125,7,0,87,110,18,0,4,116,2,0,107, - 10,0,114,1,1,1,1,1,89,113,29,1,88,124,7,0, - 114,29,1,103,0,0,124,4,0,95,11,0,110,9,0,124, - 3,0,124,4,0,95,11,0,124,4,0,106,11,0,103,0, - 0,107,2,0,114,82,1,124,1,0,114,82,1,116,12,0, - 124,1,0,131,1,0,100,7,0,25,125,8,0,124,4,0, - 106,11,0,106,13,0,124,8,0,131,1,0,1,124,4,0, - 83,41,8,97,61,1,0,0,82,101,116,117,114,110,32,97, - 32,109,111,100,117,108,101,32,115,112,101,99,32,98,97,115, - 101,100,32,111,110,32,97,32,102,105,108,101,32,108,111,99, - 97,116,105,111,110,46,10,10,32,32,32,32,84,111,32,105, - 110,100,105,99,97,116,101,32,116,104,97,116,32,116,104,101, - 32,109,111,100,117,108,101,32,105,115,32,97,32,112,97,99, - 107,97,103,101,44,32,115,101,116,10,32,32,32,32,115,117, - 98,109,111,100,117,108,101,95,115,101,97,114,99,104,95,108, - 111,99,97,116,105,111,110,115,32,116,111,32,97,32,108,105, - 115,116,32,111,102,32,100,105,114,101,99,116,111,114,121,32, - 112,97,116,104,115,46,32,32,65,110,10,32,32,32,32,101, - 109,112,116,121,32,108,105,115,116,32,105,115,32,115,117,102, - 102,105,99,105,101,110,116,44,32,116,104,111,117,103,104,32, - 105,116,115,32,110,111,116,32,111,116,104,101,114,119,105,115, - 101,32,117,115,101,102,117,108,32,116,111,32,116,104,101,10, - 32,32,32,32,105,109,112,111,114,116,32,115,121,115,116,101, - 109,46,10,10,32,32,32,32,84,104,101,32,108,111,97,100, - 101,114,32,109,117,115,116,32,116,97,107,101,32,97,32,115, - 112,101,99,32,97,115,32,105,116,115,32,111,110,108,121,32, - 95,95,105,110,105,116,95,95,40,41,32,97,114,103,46,10, - 10,32,32,32,32,78,122,9,60,117,110,107,110,111,119,110, - 62,114,241,0,0,0,114,221,0,0,0,84,114,223,0,0, - 0,114,84,0,0,0,41,14,114,60,0,0,0,114,241,0, - 0,0,114,159,0,0,0,114,220,0,0,0,114,225,0,0, - 0,218,27,95,103,101,116,95,115,117,112,112,111,114,116,101, - 100,95,102,105,108,101,95,108,111,97,100,101,114,115,114,234, - 0,0,0,114,235,0,0,0,114,173,0,0,0,218,9,95, - 80,79,80,85,76,65,84,69,114,223,0,0,0,114,224,0, - 0,0,114,38,0,0,0,114,227,0,0,0,41,9,114,67, - 0,0,0,218,8,108,111,99,97,116,105,111,110,114,173,0, - 0,0,114,224,0,0,0,114,180,0,0,0,218,12,108,111, - 97,100,101,114,95,99,108,97,115,115,218,8,115,117,102,102, - 105,120,101,115,114,223,0,0,0,90,7,100,105,114,110,97, - 109,101,114,4,0,0,0,114,4,0,0,0,114,5,0,0, - 0,114,242,0,0,0,146,3,0,0,115,60,0,0,0,0, - 12,12,4,6,1,15,2,3,1,19,1,13,1,5,8,21, - 1,9,3,12,1,22,1,21,1,15,1,9,1,5,2,4, - 3,12,2,15,1,3,1,19,1,13,1,5,2,6,1,12, - 2,9,1,15,1,6,1,16,1,16,2,114,242,0,0,0, - 99,3,0,0,0,0,0,0,0,8,0,0,0,53,0,0, - 0,67,0,0,0,115,118,1,0,0,121,13,0,124,0,0, - 106,0,0,125,3,0,87,110,18,0,4,116,1,0,107,10, - 0,114,33,0,1,1,1,89,110,17,0,88,124,3,0,100, - 0,0,107,9,0,114,50,0,124,3,0,83,124,0,0,106, - 2,0,125,4,0,124,1,0,100,0,0,107,8,0,114,105, - 0,121,13,0,124,0,0,106,3,0,125,1,0,87,110,18, - 0,4,116,1,0,107,10,0,114,104,0,1,1,1,89,110, - 1,0,88,121,13,0,124,0,0,106,4,0,125,5,0,87, - 110,24,0,4,116,1,0,107,10,0,114,144,0,1,1,1, - 100,0,0,125,5,0,89,110,1,0,88,124,2,0,100,0, - 0,107,8,0,114,218,0,124,5,0,100,0,0,107,8,0, - 114,212,0,121,13,0,124,1,0,106,5,0,125,2,0,87, - 113,218,0,4,116,1,0,107,10,0,114,208,0,1,1,1, - 100,0,0,125,2,0,89,113,218,0,88,110,6,0,124,5, - 0,125,2,0,121,13,0,124,0,0,106,6,0,125,6,0, - 87,110,24,0,4,116,1,0,107,10,0,114,1,1,1,1, - 1,100,0,0,125,6,0,89,110,1,0,88,121,19,0,116, - 7,0,124,0,0,106,8,0,131,1,0,125,7,0,87,110, - 24,0,4,116,1,0,107,10,0,114,47,1,1,1,1,100, - 0,0,125,7,0,89,110,1,0,88,116,9,0,124,4,0, - 124,1,0,100,1,0,124,2,0,131,2,1,125,3,0,124, - 5,0,100,0,0,107,8,0,114,87,1,100,2,0,110,3, - 0,100,3,0,124,3,0,95,10,0,124,6,0,124,3,0, - 95,11,0,124,7,0,124,3,0,95,12,0,124,3,0,83, - 41,4,78,114,221,0,0,0,70,84,41,13,114,210,0,0, - 0,114,211,0,0,0,114,57,0,0,0,114,206,0,0,0, - 114,213,0,0,0,90,7,95,79,82,73,71,73,78,218,10, - 95,95,99,97,99,104,101,100,95,95,218,4,108,105,115,116, - 218,8,95,95,112,97,116,104,95,95,114,220,0,0,0,114, - 225,0,0,0,114,229,0,0,0,114,224,0,0,0,41,8, - 114,181,0,0,0,114,173,0,0,0,114,221,0,0,0,114, - 180,0,0,0,114,67,0,0,0,114,245,0,0,0,114,229, - 0,0,0,114,224,0,0,0,114,4,0,0,0,114,4,0, - 0,0,114,5,0,0,0,218,17,95,115,112,101,99,95,102, - 114,111,109,95,109,111,100,117,108,101,210,3,0,0,115,72, - 0,0,0,0,2,3,1,13,1,13,1,5,2,12,1,4, - 2,9,1,12,1,3,1,13,1,13,2,5,1,3,1,13, - 1,13,1,11,1,12,1,12,1,3,1,13,1,13,1,14, - 2,6,1,3,1,13,1,13,1,11,1,3,1,19,1,13, - 1,11,2,21,1,27,1,9,1,9,1,114,251,0,0,0, - 218,8,111,118,101,114,114,105,100,101,70,99,2,0,0,0, - 1,0,0,0,4,0,0,0,59,0,0,0,67,0,0,0, - 115,27,2,0,0,124,2,0,115,30,0,116,0,0,124,1, - 0,100,1,0,100,0,0,131,3,0,100,0,0,107,8,0, - 114,67,0,121,16,0,124,0,0,106,1,0,124,1,0,95, - 2,0,87,110,18,0,4,116,3,0,107,10,0,114,66,0, - 1,1,1,89,110,1,0,88,124,2,0,115,97,0,116,0, - 0,124,1,0,100,2,0,100,0,0,131,3,0,100,0,0, - 107,8,0,114,194,0,124,0,0,106,4,0,125,3,0,124, - 3,0,100,0,0,107,8,0,114,160,0,124,0,0,106,5, - 0,100,0,0,107,9,0,114,160,0,116,6,0,106,7,0, - 116,6,0,131,1,0,125,3,0,124,0,0,106,5,0,124, - 3,0,95,8,0,121,13,0,124,3,0,124,1,0,95,9, - 0,87,110,18,0,4,116,3,0,107,10,0,114,193,0,1, - 1,1,89,110,1,0,88,124,2,0,115,224,0,116,0,0, - 124,1,0,100,3,0,100,0,0,131,3,0,100,0,0,107, - 8,0,114,5,1,121,16,0,124,0,0,106,10,0,124,1, - 0,95,11,0,87,110,18,0,4,116,3,0,107,10,0,114, - 4,1,1,1,1,89,110,1,0,88,121,13,0,124,0,0, - 124,1,0,95,12,0,87,110,18,0,4,116,3,0,107,10, - 0,114,38,1,1,1,1,89,110,1,0,88,124,2,0,115, - 69,1,116,0,0,124,1,0,100,4,0,100,0,0,131,3, - 0,100,0,0,107,8,0,114,121,1,124,0,0,106,5,0, - 100,0,0,107,9,0,114,121,1,121,16,0,124,0,0,106, - 5,0,124,1,0,95,13,0,87,110,18,0,4,116,3,0, - 107,10,0,114,120,1,1,1,1,89,110,1,0,88,124,0, - 0,106,14,0,114,23,2,124,2,0,115,160,1,116,0,0, - 124,1,0,100,5,0,100,0,0,131,3,0,100,0,0,107, - 8,0,114,197,1,121,16,0,124,0,0,106,15,0,124,1, - 0,95,16,0,87,110,18,0,4,116,3,0,107,10,0,114, - 196,1,1,1,1,89,110,1,0,88,124,2,0,115,227,1, - 116,0,0,124,1,0,100,6,0,100,0,0,131,3,0,100, - 0,0,107,8,0,114,23,2,124,0,0,106,17,0,100,0, - 0,107,9,0,114,23,2,121,16,0,124,0,0,106,17,0, - 124,1,0,95,18,0,87,110,18,0,4,116,3,0,107,10, - 0,114,22,2,1,1,1,89,110,1,0,88,124,1,0,83, - 41,7,78,114,57,0,0,0,114,206,0,0,0,218,11,95, - 95,112,97,99,107,97,103,101,95,95,114,250,0,0,0,114, - 213,0,0,0,114,248,0,0,0,41,19,114,62,0,0,0, - 114,67,0,0,0,114,57,0,0,0,114,211,0,0,0,114, - 173,0,0,0,114,224,0,0,0,218,16,95,78,97,109,101, - 115,112,97,99,101,76,111,97,100,101,114,218,7,95,95,110, - 101,119,95,95,218,5,95,112,97,116,104,114,206,0,0,0, - 114,236,0,0,0,114,253,0,0,0,114,210,0,0,0,114, - 250,0,0,0,114,230,0,0,0,114,221,0,0,0,114,213, - 0,0,0,114,229,0,0,0,114,248,0,0,0,41,4,114, - 180,0,0,0,114,181,0,0,0,114,252,0,0,0,114,173, - 0,0,0,114,4,0,0,0,114,4,0,0,0,114,5,0, - 0,0,218,18,95,105,110,105,116,95,109,111,100,117,108,101, - 95,97,116,116,114,115,255,3,0,0,115,86,0,0,0,0, - 4,30,1,3,1,16,1,13,1,5,2,30,1,9,1,12, - 2,15,1,15,1,12,1,3,1,13,1,13,1,5,2,30, - 1,3,1,16,1,13,1,5,2,3,1,13,1,13,1,5, - 2,30,1,15,1,3,1,16,1,13,1,5,2,9,1,30, - 1,3,1,16,1,13,1,5,2,30,1,15,1,3,1,16, - 1,13,1,5,1,114,1,1,0,0,99,1,0,0,0,0, - 0,0,0,2,0,0,0,5,0,0,0,67,0,0,0,115, - 129,0,0,0,100,1,0,125,1,0,116,0,0,124,0,0, - 106,1,0,100,2,0,131,2,0,114,45,0,124,0,0,106, - 1,0,106,2,0,124,0,0,131,1,0,125,1,0,110,40, - 0,116,0,0,124,0,0,106,1,0,100,3,0,131,2,0, - 114,85,0,116,3,0,106,4,0,100,4,0,116,5,0,100, - 5,0,100,6,0,131,2,1,1,124,1,0,100,1,0,107, - 8,0,114,112,0,116,6,0,124,0,0,106,7,0,131,1, - 0,125,1,0,116,8,0,124,0,0,124,1,0,131,2,0, - 1,124,1,0,83,41,7,122,43,67,114,101,97,116,101,32, - 97,32,109,111,100,117,108,101,32,98,97,115,101,100,32,111, - 110,32,116,104,101,32,112,114,111,118,105,100,101,100,32,115, - 112,101,99,46,78,218,13,99,114,101,97,116,101,95,109,111, - 100,117,108,101,218,11,101,120,101,99,95,109,111,100,117,108, - 101,122,87,115,116,97,114,116,105,110,103,32,105,110,32,80, - 121,116,104,111,110,32,51,46,54,44,32,108,111,97,100,101, - 114,115,32,100,101,102,105,110,105,110,103,32,101,120,101,99, - 95,109,111,100,117,108,101,40,41,32,109,117,115,116,32,97, - 108,115,111,32,100,101,102,105,110,101,32,99,114,101,97,116, - 101,95,109,111,100,117,108,101,40,41,90,10,115,116,97,99, - 107,108,101,118,101,108,114,115,0,0,0,41,9,114,60,0, - 0,0,114,173,0,0,0,114,2,1,0,0,114,118,0,0, - 0,114,119,0,0,0,114,120,0,0,0,114,68,0,0,0, - 114,67,0,0,0,114,1,1,0,0,41,2,114,180,0,0, - 0,114,181,0,0,0,114,4,0,0,0,114,4,0,0,0, - 114,5,0,0,0,218,16,109,111,100,117,108,101,95,102,114, - 111,109,95,115,112,101,99,55,4,0,0,115,20,0,0,0, - 0,3,6,1,18,3,21,1,18,1,9,2,13,1,12,1, - 15,1,13,1,114,4,1,0,0,99,1,0,0,0,0,0, - 0,0,2,0,0,0,3,0,0,0,67,0,0,0,115,149, - 0,0,0,124,0,0,106,0,0,100,1,0,107,8,0,114, - 21,0,100,2,0,110,6,0,124,0,0,106,0,0,125,1, - 0,124,0,0,106,1,0,100,1,0,107,8,0,114,95,0, - 124,0,0,106,2,0,100,1,0,107,8,0,114,73,0,100, - 3,0,106,3,0,124,1,0,131,1,0,83,100,4,0,106, - 3,0,124,1,0,124,0,0,106,2,0,131,2,0,83,110, - 50,0,124,0,0,106,4,0,114,123,0,100,5,0,106,3, - 0,124,1,0,124,0,0,106,1,0,131,2,0,83,100,6, - 0,106,3,0,124,0,0,106,0,0,124,0,0,106,1,0, - 131,2,0,83,100,1,0,83,41,7,122,38,82,101,116,117, - 114,110,32,116,104,101,32,114,101,112,114,32,116,111,32,117, - 115,101,32,102,111,114,32,116,104,101,32,109,111,100,117,108, - 101,46,78,114,208,0,0,0,122,13,60,109,111,100,117,108, - 101,32,123,33,114,125,62,122,20,60,109,111,100,117,108,101, - 32,123,33,114,125,32,40,123,33,114,125,41,62,122,23,60, - 109,111,100,117,108,101,32,123,33,114,125,32,102,114,111,109, - 32,123,33,114,125,62,122,18,60,109,111,100,117,108,101,32, - 123,33,114,125,32,40,123,125,41,62,41,5,114,67,0,0, - 0,114,221,0,0,0,114,173,0,0,0,114,47,0,0,0, - 114,230,0,0,0,41,2,114,180,0,0,0,114,67,0,0, - 0,114,4,0,0,0,114,4,0,0,0,114,5,0,0,0, - 114,212,0,0,0,73,4,0,0,115,16,0,0,0,0,3, - 30,1,15,1,15,1,13,2,22,2,9,1,19,2,114,212, - 0,0,0,99,2,0,0,0,0,0,0,0,4,0,0,0, - 12,0,0,0,67,0,0,0,115,252,0,0,0,124,0,0, - 106,0,0,125,2,0,116,1,0,106,2,0,131,0,0,1, - 116,3,0,124,2,0,131,1,0,143,208,0,1,116,4,0, - 106,5,0,106,6,0,124,2,0,131,1,0,124,1,0,107, - 9,0,114,89,0,100,1,0,106,7,0,124,2,0,131,1, - 0,125,3,0,116,8,0,124,3,0,100,2,0,124,2,0, - 131,1,1,130,1,0,124,0,0,106,9,0,100,3,0,107, - 8,0,114,163,0,124,0,0,106,10,0,100,3,0,107,8, - 0,114,140,0,116,8,0,100,4,0,100,2,0,124,0,0, - 106,0,0,131,1,1,130,1,0,116,11,0,124,0,0,124, - 1,0,100,5,0,100,6,0,131,2,1,1,124,1,0,83, - 116,11,0,124,0,0,124,1,0,100,5,0,100,6,0,131, - 2,1,1,116,12,0,124,0,0,106,9,0,100,7,0,131, - 2,0,115,219,0,124,0,0,106,9,0,106,13,0,124,2, - 0,131,1,0,1,110,16,0,124,0,0,106,9,0,106,14, - 0,124,1,0,131,1,0,1,87,100,3,0,81,88,116,4, - 0,106,5,0,124,2,0,25,83,41,8,122,51,69,120,101, - 99,117,116,101,32,116,104,101,32,115,112,101,99,32,105,110, - 32,97,110,32,101,120,105,115,116,105,110,103,32,109,111,100, - 117,108,101,39,115,32,110,97,109,101,115,112,97,99,101,46, - 122,30,109,111,100,117,108,101,32,123,33,114,125,32,110,111, - 116,32,105,110,32,115,121,115,46,109,111,100,117,108,101,115, - 114,67,0,0,0,78,122,14,109,105,115,115,105,110,103,32, - 108,111,97,100,101,114,114,252,0,0,0,84,114,3,1,0, - 0,41,15,114,67,0,0,0,114,106,0,0,0,218,12,97, - 99,113,117,105,114,101,95,108,111,99,107,114,103,0,0,0, - 114,7,0,0,0,114,73,0,0,0,114,93,0,0,0,114, - 47,0,0,0,114,159,0,0,0,114,173,0,0,0,114,224, - 0,0,0,114,1,1,0,0,114,60,0,0,0,218,11,108, - 111,97,100,95,109,111,100,117,108,101,114,3,1,0,0,41, - 4,114,180,0,0,0,114,181,0,0,0,114,67,0,0,0, - 114,175,0,0,0,114,4,0,0,0,114,4,0,0,0,114, - 5,0,0,0,114,178,0,0,0,90,4,0,0,115,32,0, - 0,0,0,2,9,1,10,1,13,1,24,1,15,1,18,1, - 15,1,15,1,21,2,19,1,4,1,19,1,18,4,19,2, - 22,1,114,178,0,0,0,99,1,0,0,0,0,0,0,0, - 2,0,0,0,27,0,0,0,67,0,0,0,115,3,1,0, - 0,124,0,0,106,0,0,106,1,0,124,0,0,106,2,0, - 131,1,0,1,116,3,0,106,4,0,124,0,0,106,2,0, - 25,125,1,0,116,5,0,124,1,0,100,1,0,100,0,0, - 131,3,0,100,0,0,107,8,0,114,96,0,121,16,0,124, - 0,0,106,0,0,124,1,0,95,6,0,87,110,18,0,4, - 116,7,0,107,10,0,114,95,0,1,1,1,89,110,1,0, - 88,116,5,0,124,1,0,100,2,0,100,0,0,131,3,0, - 100,0,0,107,8,0,114,197,0,121,56,0,124,1,0,106, - 8,0,124,1,0,95,9,0,116,10,0,124,1,0,100,3, - 0,131,2,0,115,175,0,124,0,0,106,2,0,106,11,0, - 100,4,0,131,1,0,100,5,0,25,124,1,0,95,9,0, - 87,110,18,0,4,116,7,0,107,10,0,114,196,0,1,1, - 1,89,110,1,0,88,116,5,0,124,1,0,100,6,0,100, - 0,0,131,3,0,100,0,0,107,8,0,114,255,0,121,13, - 0,124,0,0,124,1,0,95,12,0,87,110,18,0,4,116, - 7,0,107,10,0,114,254,0,1,1,1,89,110,1,0,88, - 124,1,0,83,41,7,78,114,206,0,0,0,114,253,0,0, - 0,114,250,0,0,0,114,117,0,0,0,114,84,0,0,0, - 114,210,0,0,0,41,13,114,173,0,0,0,114,6,1,0, - 0,114,67,0,0,0,114,7,0,0,0,114,73,0,0,0, - 114,62,0,0,0,114,206,0,0,0,114,211,0,0,0,114, - 57,0,0,0,114,253,0,0,0,114,60,0,0,0,114,32, - 0,0,0,114,210,0,0,0,41,2,114,180,0,0,0,114, - 181,0,0,0,114,4,0,0,0,114,4,0,0,0,114,5, - 0,0,0,218,25,95,108,111,97,100,95,98,97,99,107,119, - 97,114,100,95,99,111,109,112,97,116,105,98,108,101,115,4, - 0,0,115,40,0,0,0,0,4,19,2,16,1,24,1,3, - 1,16,1,13,1,5,1,24,1,3,4,12,1,15,1,29, - 1,13,1,5,1,24,1,3,1,13,1,13,1,5,1,114, - 7,1,0,0,99,1,0,0,0,0,0,0,0,2,0,0, - 0,11,0,0,0,67,0,0,0,115,158,0,0,0,124,0, - 0,106,0,0,100,0,0,107,9,0,114,43,0,116,1,0, - 124,0,0,106,0,0,100,1,0,131,2,0,115,43,0,116, - 2,0,124,0,0,131,1,0,83,116,3,0,124,0,0,131, - 1,0,125,1,0,116,4,0,124,1,0,131,1,0,143,75, - 0,1,124,0,0,106,0,0,100,0,0,107,8,0,114,122, - 0,124,0,0,106,5,0,100,0,0,107,8,0,114,138,0, - 116,6,0,100,2,0,100,3,0,124,0,0,106,7,0,131, - 1,1,130,1,0,110,16,0,124,0,0,106,0,0,106,8, - 0,124,1,0,131,1,0,1,87,100,0,0,81,88,116,9, - 0,106,10,0,124,0,0,106,7,0,25,83,41,4,78,114, - 3,1,0,0,122,14,109,105,115,115,105,110,103,32,108,111, - 97,100,101,114,114,67,0,0,0,41,11,114,173,0,0,0, - 114,60,0,0,0,114,7,1,0,0,114,4,1,0,0,114, - 216,0,0,0,114,224,0,0,0,114,159,0,0,0,114,67, - 0,0,0,114,3,1,0,0,114,7,0,0,0,114,73,0, - 0,0,41,2,114,180,0,0,0,114,181,0,0,0,114,4, - 0,0,0,114,4,0,0,0,114,5,0,0,0,218,14,95, - 108,111,97,100,95,117,110,108,111,99,107,101,100,144,4,0, - 0,115,20,0,0,0,0,2,15,2,18,1,10,2,12,1, - 13,1,15,1,15,1,24,3,22,5,114,8,1,0,0,99, - 1,0,0,0,0,0,0,0,1,0,0,0,9,0,0,0, - 67,0,0,0,115,46,0,0,0,116,0,0,106,1,0,131, - 0,0,1,116,2,0,124,0,0,106,3,0,131,1,0,143, - 15,0,1,116,4,0,124,0,0,131,1,0,83,87,100,1, - 0,81,88,100,1,0,83,41,2,122,191,82,101,116,117,114, - 110,32,97,32,110,101,119,32,109,111,100,117,108,101,32,111, - 98,106,101,99,116,44,32,108,111,97,100,101,100,32,98,121, - 32,116,104,101,32,115,112,101,99,39,115,32,108,111,97,100, - 101,114,46,10,10,32,32,32,32,84,104,101,32,109,111,100, - 117,108,101,32,105,115,32,110,111,116,32,97,100,100,101,100, - 32,116,111,32,105,116,115,32,112,97,114,101,110,116,46,10, - 10,32,32,32,32,73,102,32,97,32,109,111,100,117,108,101, - 32,105,115,32,97,108,114,101,97,100,121,32,105,110,32,115, - 121,115,46,109,111,100,117,108,101,115,44,32,116,104,97,116, - 32,101,120,105,115,116,105,110,103,32,109,111,100,117,108,101, - 32,103,101,116,115,10,32,32,32,32,99,108,111,98,98,101, - 114,101,100,46,10,10,32,32,32,32,78,41,5,114,106,0, - 0,0,114,5,1,0,0,114,103,0,0,0,114,67,0,0, - 0,114,8,1,0,0,41,1,114,180,0,0,0,114,4,0, - 0,0,114,4,0,0,0,114,5,0,0,0,114,179,0,0, - 0,167,4,0,0,115,6,0,0,0,0,9,10,1,16,1, - 114,179,0,0,0,99,4,0,0,0,0,0,0,0,6,0, - 0,0,11,0,0,0,67,0,0,0,115,195,0,0,0,124, - 0,0,106,0,0,100,1,0,131,1,0,125,4,0,124,0, - 0,106,0,0,100,2,0,131,1,0,125,5,0,124,4,0, - 115,99,0,124,5,0,114,54,0,124,5,0,106,1,0,125, - 4,0,110,45,0,124,2,0,124,3,0,107,2,0,114,84, - 0,116,2,0,124,1,0,124,2,0,131,2,0,125,4,0, - 110,15,0,116,3,0,124,1,0,124,2,0,131,2,0,125, - 4,0,124,5,0,115,126,0,116,4,0,124,1,0,124,2, - 0,100,3,0,124,4,0,131,2,1,125,5,0,121,44,0, - 124,5,0,124,0,0,100,2,0,60,124,4,0,124,0,0, - 100,1,0,60,124,2,0,124,0,0,100,4,0,60,124,3, - 0,124,0,0,100,5,0,60,87,110,18,0,4,116,5,0, - 107,10,0,114,190,0,1,1,1,89,110,1,0,88,100,0, - 0,83,41,6,78,114,206,0,0,0,114,210,0,0,0,114, - 173,0,0,0,114,213,0,0,0,114,248,0,0,0,41,6, - 114,93,0,0,0,114,173,0,0,0,218,20,83,111,117,114, - 99,101,108,101,115,115,70,105,108,101,76,111,97,100,101,114, - 218,16,83,111,117,114,99,101,70,105,108,101,76,111,97,100, - 101,114,114,242,0,0,0,114,209,0,0,0,41,6,90,2, - 110,115,114,67,0,0,0,90,8,112,97,116,104,110,97,109, - 101,90,9,99,112,97,116,104,110,97,109,101,114,173,0,0, - 0,114,180,0,0,0,114,4,0,0,0,114,4,0,0,0, - 114,5,0,0,0,218,14,95,102,105,120,95,117,112,95,109, - 111,100,117,108,101,181,4,0,0,115,34,0,0,0,0,2, - 15,1,15,1,6,1,6,1,12,1,12,1,18,2,15,1, - 6,1,21,1,3,1,10,1,10,1,10,1,14,1,13,2, - 114,11,1,0,0,99,0,0,0,0,0,0,0,0,0,0, - 0,0,5,0,0,0,64,0,0,0,115,181,0,0,0,101, + 0,114,5,0,0,0,114,12,1,0,0,207,4,0,0,115, + 28,0,0,0,12,7,6,2,18,9,3,1,21,8,3,1, + 18,11,3,1,21,11,3,1,21,5,3,1,21,5,3,1, + 114,12,1,0,0,99,0,0,0,0,0,0,0,0,0,0, + 0,0,5,0,0,0,64,0,0,0,115,211,0,0,0,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,6,0,100,4,0,100,4,0,100,5,0,100, 6,0,132,2,0,131,1,0,90,7,0,101,6,0,100,4, 0,100,7,0,100,8,0,132,1,0,131,1,0,90,8,0, - 101,6,0,101,9,0,100,9,0,100,10,0,132,0,0,131, - 1,0,131,1,0,90,10,0,101,6,0,101,9,0,100,11, - 0,100,12,0,132,0,0,131,1,0,131,1,0,90,11,0, - 101,6,0,101,9,0,100,13,0,100,14,0,132,0,0,131, - 1,0,131,1,0,90,12,0,101,6,0,101,9,0,100,15, - 0,100,16,0,132,0,0,131,1,0,131,1,0,90,13,0, - 100,4,0,83,41,17,218,15,66,117,105,108,116,105,110,73, - 109,112,111,114,116,101,114,122,144,77,101,116,97,32,112,97, - 116,104,32,105,109,112,111,114,116,32,102,111,114,32,98,117, - 105,108,116,45,105,110,32,109,111,100,117,108,101,115,46,10, - 10,32,32,32,32,65,108,108,32,109,101,116,104,111,100,115, - 32,97,114,101,32,101,105,116,104,101,114,32,99,108,97,115, - 115,32,111,114,32,115,116,97,116,105,99,32,109,101,116,104, - 111,100,115,32,116,111,32,97,118,111,105,100,32,116,104,101, - 32,110,101,101,100,32,116,111,10,32,32,32,32,105,110,115, - 116,97,110,116,105,97,116,101,32,116,104,101,32,99,108,97, - 115,115,46,10,10,32,32,32,32,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,41,2,122,115,82,101,116,117,114,110,32,114,101, - 112,114,32,102,111,114,32,116,104,101,32,109,111,100,117,108, - 101,46,10,10,32,32,32,32,32,32,32,32,84,104,101,32, - 109,101,116,104,111,100,32,105,115,32,100,101,112,114,101,99, - 97,116,101,100,46,32,32,84,104,101,32,105,109,112,111,114, - 116,32,109,97,99,104,105,110,101,114,121,32,100,111,101,115, - 32,116,104,101,32,106,111,98,32,105,116,115,101,108,102,46, - 10,10,32,32,32,32,32,32,32,32,122,24,60,109,111,100, - 117,108,101,32,123,33,114,125,32,40,98,117,105,108,116,45, - 105,110,41,62,41,2,114,47,0,0,0,114,57,0,0,0, - 41,1,114,181,0,0,0,114,4,0,0,0,114,4,0,0, - 0,114,5,0,0,0,114,207,0,0,0,215,4,0,0,115, - 2,0,0,0,0,7,122,27,66,117,105,108,116,105,110,73, - 109,112,111,114,116,101,114,46,109,111,100,117,108,101,95,114, - 101,112,114,78,99,4,0,0,0,0,0,0,0,4,0,0, - 0,5,0,0,0,67,0,0,0,115,58,0,0,0,124,2, - 0,100,0,0,107,9,0,114,16,0,100,0,0,83,116,0, - 0,106,1,0,124,1,0,131,1,0,114,50,0,116,2,0, - 124,1,0,124,0,0,100,1,0,100,2,0,131,2,1,83, - 100,0,0,83,100,0,0,83,41,3,78,114,221,0,0,0, - 122,8,98,117,105,108,116,45,105,110,41,3,114,106,0,0, - 0,90,10,105,115,95,98,117,105,108,116,105,110,114,177,0, - 0,0,41,4,218,3,99,108,115,114,164,0,0,0,114,35, - 0,0,0,218,6,116,97,114,103,101,116,114,4,0,0,0, - 114,4,0,0,0,114,5,0,0,0,218,9,102,105,110,100, - 95,115,112,101,99,224,4,0,0,115,10,0,0,0,0,2, - 12,1,4,1,15,1,19,2,122,25,66,117,105,108,116,105, - 110,73,109,112,111,114,116,101,114,46,102,105,110,100,95,115, - 112,101,99,99,3,0,0,0,0,0,0,0,4,0,0,0, - 3,0,0,0,67,0,0,0,115,41,0,0,0,124,0,0, - 106,0,0,124,1,0,124,2,0,131,2,0,125,3,0,124, - 3,0,100,1,0,107,9,0,114,37,0,124,3,0,106,1, - 0,83,100,1,0,83,41,2,122,175,70,105,110,100,32,116, - 104,101,32,98,117,105,108,116,45,105,110,32,109,111,100,117, - 108,101,46,10,10,32,32,32,32,32,32,32,32,73,102,32, - 39,112,97,116,104,39,32,105,115,32,101,118,101,114,32,115, - 112,101,99,105,102,105,101,100,32,116,104,101,110,32,116,104, - 101,32,115,101,97,114,99,104,32,105,115,32,99,111,110,115, - 105,100,101,114,101,100,32,97,32,102,97,105,108,117,114,101, - 46,10,10,32,32,32,32,32,32,32,32,84,104,105,115,32, - 109,101,116,104,111,100,32,105,115,32,100,101,112,114,101,99, - 97,116,101,100,46,32,32,85,115,101,32,102,105,110,100,95, - 115,112,101,99,40,41,32,105,110,115,116,101,97,100,46,10, - 10,32,32,32,32,32,32,32,32,78,41,2,114,15,1,0, - 0,114,173,0,0,0,41,4,114,13,1,0,0,114,164,0, - 0,0,114,35,0,0,0,114,180,0,0,0,114,4,0,0, - 0,114,4,0,0,0,114,5,0,0,0,218,11,102,105,110, - 100,95,109,111,100,117,108,101,233,4,0,0,115,4,0,0, - 0,0,9,18,1,122,27,66,117,105,108,116,105,110,73,109, - 112,111,114,116,101,114,46,102,105,110,100,95,109,111,100,117, - 108,101,99,2,0,0,0,0,0,0,0,3,0,0,0,10, - 0,0,0,67,0,0,0,115,59,0,0,0,116,0,0,124, - 1,0,131,1,0,143,23,0,1,116,1,0,116,2,0,106, - 3,0,124,1,0,131,2,0,125,2,0,87,100,1,0,81, - 88,124,0,0,124,2,0,95,4,0,100,2,0,124,2,0, - 95,5,0,124,2,0,83,41,3,122,23,76,111,97,100,32, - 97,32,98,117,105,108,116,45,105,110,32,109,111,100,117,108, - 101,46,78,114,30,0,0,0,41,6,114,69,0,0,0,114, - 114,0,0,0,114,106,0,0,0,90,12,105,110,105,116,95, - 98,117,105,108,116,105,110,114,206,0,0,0,114,253,0,0, - 0,41,3,114,13,1,0,0,114,164,0,0,0,114,181,0, + 101,6,0,100,9,0,100,10,0,132,0,0,131,1,0,90, + 9,0,101,4,0,100,11,0,100,12,0,132,0,0,131,1, + 0,90,10,0,101,6,0,100,13,0,100,14,0,132,0,0, + 131,1,0,90,11,0,101,6,0,101,12,0,100,15,0,100, + 16,0,132,0,0,131,1,0,131,1,0,90,13,0,101,6, + 0,101,12,0,100,17,0,100,18,0,132,0,0,131,1,0, + 131,1,0,90,14,0,101,6,0,101,12,0,100,19,0,100, + 20,0,132,0,0,131,1,0,131,1,0,90,15,0,100,4, + 0,83,41,21,218,14,70,114,111,122,101,110,73,109,112,111, + 114,116,101,114,122,142,77,101,116,97,32,112,97,116,104,32, + 105,109,112,111,114,116,32,102,111,114,32,102,114,111,122,101, + 110,32,109,111,100,117,108,101,115,46,10,10,32,32,32,32, + 65,108,108,32,109,101,116,104,111,100,115,32,97,114,101,32, + 101,105,116,104,101,114,32,99,108,97,115,115,32,111,114,32, + 115,116,97,116,105,99,32,109,101,116,104,111,100,115,32,116, + 111,32,97,118,111,105,100,32,116,104,101,32,110,101,101,100, + 32,116,111,10,32,32,32,32,105,110,115,116,97,110,116,105, + 97,116,101,32,116,104,101,32,99,108,97,115,115,46,10,10, + 32,32,32,32,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,41,2, + 122,115,82,101,116,117,114,110,32,114,101,112,114,32,102,111, + 114,32,116,104,101,32,109,111,100,117,108,101,46,10,10,32, + 32,32,32,32,32,32,32,84,104,101,32,109,101,116,104,111, + 100,32,105,115,32,100,101,112,114,101,99,97,116,101,100,46, + 32,32,84,104,101,32,105,109,112,111,114,116,32,109,97,99, + 104,105,110,101,114,121,32,100,111,101,115,32,116,104,101,32, + 106,111,98,32,105,116,115,101,108,102,46,10,10,32,32,32, + 32,32,32,32,32,122,22,60,109,111,100,117,108,101,32,123, + 33,114,125,32,40,102,114,111,122,101,110,41,62,41,2,114, + 47,0,0,0,114,57,0,0,0,41,1,218,1,109,114,4, + 0,0,0,114,4,0,0,0,114,5,0,0,0,114,207,0, + 0,0,30,5,0,0,115,2,0,0,0,0,7,122,26,70, + 114,111,122,101,110,73,109,112,111,114,116,101,114,46,109,111, + 100,117,108,101,95,114,101,112,114,78,99,4,0,0,0,0, + 0,0,0,4,0,0,0,5,0,0,0,67,0,0,0,115, + 42,0,0,0,116,0,0,106,1,0,124,1,0,131,1,0, + 114,34,0,116,2,0,124,1,0,124,0,0,100,1,0,100, + 2,0,131,2,1,83,100,0,0,83,100,0,0,83,41,3, + 78,114,221,0,0,0,90,6,102,114,111,122,101,110,41,3, + 114,106,0,0,0,114,168,0,0,0,114,177,0,0,0,41, + 4,114,13,1,0,0,114,164,0,0,0,114,35,0,0,0, + 114,14,1,0,0,114,4,0,0,0,114,4,0,0,0,114, + 5,0,0,0,114,15,1,0,0,39,5,0,0,115,6,0, + 0,0,0,2,15,1,19,2,122,24,70,114,111,122,101,110, + 73,109,112,111,114,116,101,114,46,102,105,110,100,95,115,112, + 101,99,99,3,0,0,0,0,0,0,0,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,41,2,122,93,70,105,110,100,32,97,32,102,114, + 111,122,101,110,32,109,111,100,117,108,101,46,10,10,32,32, + 32,32,32,32,32,32,84,104,105,115,32,109,101,116,104,111, + 100,32,105,115,32,100,101,112,114,101,99,97,116,101,100,46, + 32,32,85,115,101,32,102,105,110,100,95,115,112,101,99,40, + 41,32,105,110,115,116,101,97,100,46,10,10,32,32,32,32, + 32,32,32,32,78,41,2,114,106,0,0,0,114,168,0,0, + 0,41,3,114,13,1,0,0,114,164,0,0,0,114,35,0, 0,0,114,4,0,0,0,114,4,0,0,0,114,5,0,0, - 0,114,6,1,0,0,245,4,0,0,115,10,0,0,0,0, - 6,13,1,24,1,9,1,9,1,122,27,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,41,2,122,57,82,101,116,117,114,110,32,78, - 111,110,101,32,97,115,32,98,117,105,108,116,45,105,110,32, - 109,111,100,117,108,101,115,32,100,111,32,110,111,116,32,104, - 97,118,101,32,99,111,100,101,32,111,98,106,101,99,116,115, - 46,78,114,4,0,0,0,41,2,114,13,1,0,0,114,164, - 0,0,0,114,4,0,0,0,114,4,0,0,0,114,5,0, - 0,0,218,8,103,101,116,95,99,111,100,101,1,5,0,0, - 115,2,0,0,0,0,4,122,24,66,117,105,108,116,105,110, - 73,109,112,111,114,116,101,114,46,103,101,116,95,99,111,100, - 101,99,2,0,0,0,0,0,0,0,2,0,0,0,1,0, - 0,0,67,0,0,0,115,4,0,0,0,100,1,0,83,41, - 2,122,56,82,101,116,117,114,110,32,78,111,110,101,32,97, - 115,32,98,117,105,108,116,45,105,110,32,109,111,100,117,108, - 101,115,32,100,111,32,110,111,116,32,104,97,118,101,32,115, - 111,117,114,99,101,32,99,111,100,101,46,78,114,4,0,0, - 0,41,2,114,13,1,0,0,114,164,0,0,0,114,4,0, - 0,0,114,4,0,0,0,114,5,0,0,0,218,10,103,101, - 116,95,115,111,117,114,99,101,7,5,0,0,115,2,0,0, - 0,0,4,122,26,66,117,105,108,116,105,110,73,109,112,111, - 114,116,101,114,46,103,101,116,95,115,111,117,114,99,101,99, - 2,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0, - 67,0,0,0,115,4,0,0,0,100,1,0,83,41,2,122, - 52,82,101,116,117,114,110,32,70,97,108,115,101,32,97,115, - 32,98,117,105,108,116,45,105,110,32,109,111,100,117,108,101, - 115,32,97,114,101,32,110,101,118,101,114,32,112,97,99,107, - 97,103,101,115,46,70,114,4,0,0,0,41,2,114,13,1, - 0,0,114,164,0,0,0,114,4,0,0,0,114,4,0,0, - 0,114,5,0,0,0,114,223,0,0,0,13,5,0,0,115, - 2,0,0,0,0,4,122,26,66,117,105,108,116,105,110,73, - 109,112,111,114,116,101,114,46,105,115,95,112,97,99,107,97, - 103,101,41,14,114,57,0,0,0,114,56,0,0,0,114,58, - 0,0,0,114,59,0,0,0,218,12,115,116,97,116,105,99, - 109,101,116,104,111,100,114,207,0,0,0,218,11,99,108,97, - 115,115,109,101,116,104,111,100,114,15,1,0,0,114,16,1, - 0,0,114,167,0,0,0,114,6,1,0,0,114,17,1,0, - 0,114,18,1,0,0,114,223,0,0,0,114,4,0,0,0, - 114,4,0,0,0,114,4,0,0,0,114,5,0,0,0,114, - 12,1,0,0,206,4,0,0,115,28,0,0,0,12,7,6, - 2,18,9,3,1,21,8,3,1,18,11,3,1,21,11,3, - 1,21,5,3,1,21,5,3,1,114,12,1,0,0,99,0, - 0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,64, - 0,0,0,115,211,0,0,0,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,6,0,100, - 4,0,100,4,0,100,5,0,100,6,0,132,2,0,131,1, - 0,90,7,0,101,6,0,100,4,0,100,7,0,100,8,0, - 132,1,0,131,1,0,90,8,0,101,6,0,100,9,0,100, - 10,0,132,0,0,131,1,0,90,9,0,101,4,0,100,11, - 0,100,12,0,132,0,0,131,1,0,90,10,0,101,6,0, - 100,13,0,100,14,0,132,0,0,131,1,0,90,11,0,101, - 6,0,101,12,0,100,15,0,100,16,0,132,0,0,131,1, - 0,131,1,0,90,13,0,101,6,0,101,12,0,100,17,0, - 100,18,0,132,0,0,131,1,0,131,1,0,90,14,0,101, - 6,0,101,12,0,100,19,0,100,20,0,132,0,0,131,1, - 0,131,1,0,90,15,0,100,4,0,83,41,21,218,14,70, - 114,111,122,101,110,73,109,112,111,114,116,101,114,122,142,77, - 101,116,97,32,112,97,116,104,32,105,109,112,111,114,116,32, - 102,111,114,32,102,114,111,122,101,110,32,109,111,100,117,108, - 101,115,46,10,10,32,32,32,32,65,108,108,32,109,101,116, - 104,111,100,115,32,97,114,101,32,101,105,116,104,101,114,32, - 99,108,97,115,115,32,111,114,32,115,116,97,116,105,99,32, - 109,101,116,104,111,100,115,32,116,111,32,97,118,111,105,100, - 32,116,104,101,32,110,101,101,100,32,116,111,10,32,32,32, - 32,105,110,115,116,97,110,116,105,97,116,101,32,116,104,101, - 32,99,108,97,115,115,46,10,10,32,32,32,32,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,41,2,122,115,82,101,116,117,114, - 110,32,114,101,112,114,32,102,111,114,32,116,104,101,32,109, - 111,100,117,108,101,46,10,10,32,32,32,32,32,32,32,32, - 84,104,101,32,109,101,116,104,111,100,32,105,115,32,100,101, - 112,114,101,99,97,116,101,100,46,32,32,84,104,101,32,105, - 109,112,111,114,116,32,109,97,99,104,105,110,101,114,121,32, - 100,111,101,115,32,116,104,101,32,106,111,98,32,105,116,115, - 101,108,102,46,10,10,32,32,32,32,32,32,32,32,122,22, - 60,109,111,100,117,108,101,32,123,33,114,125,32,40,102,114, - 111,122,101,110,41,62,41,2,114,47,0,0,0,114,57,0, - 0,0,41,1,218,1,109,114,4,0,0,0,114,4,0,0, - 0,114,5,0,0,0,114,207,0,0,0,29,5,0,0,115, - 2,0,0,0,0,7,122,26,70,114,111,122,101,110,73,109, - 112,111,114,116,101,114,46,109,111,100,117,108,101,95,114,101, - 112,114,78,99,4,0,0,0,0,0,0,0,4,0,0,0, - 5,0,0,0,67,0,0,0,115,42,0,0,0,116,0,0, - 106,1,0,124,1,0,131,1,0,114,34,0,116,2,0,124, - 1,0,124,0,0,100,1,0,100,2,0,131,2,1,83,100, - 0,0,83,100,0,0,83,41,3,78,114,221,0,0,0,90, - 6,102,114,111,122,101,110,41,3,114,106,0,0,0,114,168, - 0,0,0,114,177,0,0,0,41,4,114,13,1,0,0,114, - 164,0,0,0,114,35,0,0,0,114,14,1,0,0,114,4, - 0,0,0,114,4,0,0,0,114,5,0,0,0,114,15,1, - 0,0,38,5,0,0,115,6,0,0,0,0,2,15,1,19, - 2,122,24,70,114,111,122,101,110,73,109,112,111,114,116,101, - 114,46,102,105,110,100,95,115,112,101,99,99,3,0,0,0, - 0,0,0,0,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,41,2,122,93, - 70,105,110,100,32,97,32,102,114,111,122,101,110,32,109,111, - 100,117,108,101,46,10,10,32,32,32,32,32,32,32,32,84, - 104,105,115,32,109,101,116,104,111,100,32,105,115,32,100,101, - 112,114,101,99,97,116,101,100,46,32,32,85,115,101,32,102, - 105,110,100,95,115,112,101,99,40,41,32,105,110,115,116,101, - 97,100,46,10,10,32,32,32,32,32,32,32,32,78,41,2, - 114,106,0,0,0,114,168,0,0,0,41,3,114,13,1,0, - 0,114,164,0,0,0,114,35,0,0,0,114,4,0,0,0, - 114,4,0,0,0,114,5,0,0,0,114,16,1,0,0,45, - 5,0,0,115,2,0,0,0,0,7,122,26,70,114,111,122, - 101,110,73,109,112,111,114,116,101,114,46,102,105,110,100,95, - 109,111,100,117,108,101,99,2,0,0,0,0,0,0,0,2, - 0,0,0,1,0,0,0,67,0,0,0,115,4,0,0,0, - 100,1,0,83,41,2,122,42,85,115,101,32,100,101,102,97, - 117,108,116,32,115,101,109,97,110,116,105,99,115,32,102,111, - 114,32,109,111,100,117,108,101,32,99,114,101,97,116,105,111, - 110,46,78,114,4,0,0,0,41,2,114,13,1,0,0,114, - 180,0,0,0,114,4,0,0,0,114,4,0,0,0,114,5, - 0,0,0,114,2,1,0,0,54,5,0,0,115,0,0,0, - 0,122,28,70,114,111,122,101,110,73,109,112,111,114,116,101, - 114,46,99,114,101,97,116,101,95,109,111,100,117,108,101,99, - 1,0,0,0,0,0,0,0,3,0,0,0,4,0,0,0, - 67,0,0,0,115,92,0,0,0,124,0,0,106,0,0,106, - 1,0,125,1,0,116,2,0,106,3,0,124,1,0,131,1, - 0,115,54,0,116,4,0,100,1,0,106,5,0,124,1,0, - 131,1,0,100,2,0,124,1,0,131,1,1,130,1,0,116, - 6,0,116,2,0,106,7,0,124,1,0,131,2,0,125,2, - 0,116,8,0,124,2,0,124,0,0,106,9,0,131,2,0, - 1,100,0,0,83,41,3,78,122,27,123,33,114,125,32,105, - 115,32,110,111,116,32,97,32,102,114,111,122,101,110,32,109, - 111,100,117,108,101,114,67,0,0,0,41,10,114,210,0,0, - 0,114,67,0,0,0,114,106,0,0,0,114,168,0,0,0, - 114,159,0,0,0,114,47,0,0,0,114,114,0,0,0,218, - 17,103,101,116,95,102,114,111,122,101,110,95,111,98,106,101, - 99,116,218,4,101,120,101,99,114,63,0,0,0,41,3,114, - 181,0,0,0,114,67,0,0,0,114,196,0,0,0,114,4, - 0,0,0,114,4,0,0,0,114,5,0,0,0,114,3,1, - 0,0,58,5,0,0,115,12,0,0,0,0,2,12,1,15, - 1,18,1,9,1,18,1,122,26,70,114,111,122,101,110,73, - 109,112,111,114,116,101,114,46,101,120,101,99,95,109,111,100, - 117,108,101,99,2,0,0,0,0,0,0,0,2,0,0,0, - 3,0,0,0,67,0,0,0,115,13,0,0,0,116,0,0, - 124,0,0,124,1,0,131,2,0,83,41,1,122,95,76,111, - 97,100,32,97,32,102,114,111,122,101,110,32,109,111,100,117, - 108,101,46,10,10,32,32,32,32,32,32,32,32,84,104,105, - 115,32,109,101,116,104,111,100,32,105,115,32,100,101,112,114, - 101,99,97,116,101,100,46,32,32,85,115,101,32,101,120,101, - 99,95,109,111,100,117,108,101,40,41,32,105,110,115,116,101, - 97,100,46,10,10,32,32,32,32,32,32,32,32,41,1,114, - 182,0,0,0,41,2,114,13,1,0,0,114,164,0,0,0, - 114,4,0,0,0,114,4,0,0,0,114,5,0,0,0,114, - 6,1,0,0,67,5,0,0,115,2,0,0,0,0,7,122, - 26,70,114,111,122,101,110,73,109,112,111,114,116,101,114,46, - 108,111,97,100,95,109,111,100,117,108,101,99,2,0,0,0, - 0,0,0,0,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,41,1,122,45,82,101,116,117,114,110,32,116,104,101, - 32,99,111,100,101,32,111,98,106,101,99,116,32,102,111,114, - 32,116,104,101,32,102,114,111,122,101,110,32,109,111,100,117, - 108,101,46,41,2,114,106,0,0,0,114,23,1,0,0,41, - 2,114,13,1,0,0,114,164,0,0,0,114,4,0,0,0, - 114,4,0,0,0,114,5,0,0,0,114,17,1,0,0,76, - 5,0,0,115,2,0,0,0,0,4,122,23,70,114,111,122, - 101,110,73,109,112,111,114,116,101,114,46,103,101,116,95,99, - 111,100,101,99,2,0,0,0,0,0,0,0,2,0,0,0, - 1,0,0,0,67,0,0,0,115,4,0,0,0,100,1,0, - 83,41,2,122,54,82,101,116,117,114,110,32,78,111,110,101, - 32,97,115,32,102,114,111,122,101,110,32,109,111,100,117,108, - 101,115,32,100,111,32,110,111,116,32,104,97,118,101,32,115, - 111,117,114,99,101,32,99,111,100,101,46,78,114,4,0,0, - 0,41,2,114,13,1,0,0,114,164,0,0,0,114,4,0, - 0,0,114,4,0,0,0,114,5,0,0,0,114,18,1,0, - 0,82,5,0,0,115,2,0,0,0,0,4,122,25,70,114, - 111,122,101,110,73,109,112,111,114,116,101,114,46,103,101,116, - 95,115,111,117,114,99,101,99,2,0,0,0,0,0,0,0, - 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,41,1, - 122,46,82,101,116,117,114,110,32,84,114,117,101,32,105,102, - 32,116,104,101,32,102,114,111,122,101,110,32,109,111,100,117, - 108,101,32,105,115,32,97,32,112,97,99,107,97,103,101,46, - 41,2,114,106,0,0,0,90,17,105,115,95,102,114,111,122, - 101,110,95,112,97,99,107,97,103,101,41,2,114,13,1,0, - 0,114,164,0,0,0,114,4,0,0,0,114,4,0,0,0, - 114,5,0,0,0,114,223,0,0,0,88,5,0,0,115,2, - 0,0,0,0,4,122,25,70,114,111,122,101,110,73,109,112, - 111,114,116,101,114,46,105,115,95,112,97,99,107,97,103,101, - 41,16,114,57,0,0,0,114,56,0,0,0,114,58,0,0, - 0,114,59,0,0,0,114,19,1,0,0,114,207,0,0,0, - 114,20,1,0,0,114,15,1,0,0,114,16,1,0,0,114, - 2,1,0,0,114,3,1,0,0,114,6,1,0,0,114,170, - 0,0,0,114,17,1,0,0,114,18,1,0,0,114,223,0, - 0,0,114,4,0,0,0,114,4,0,0,0,114,4,0,0, - 0,114,5,0,0,0,114,21,1,0,0,20,5,0,0,115, - 30,0,0,0,12,7,6,2,18,9,3,1,21,6,3,1, - 18,8,18,4,18,9,18,9,3,1,21,5,3,1,21,5, - 3,1,114,21,1,0,0,99,0,0,0,0,0,0,0,0, - 0,0,0,0,5,0,0,0,64,0,0,0,115,121,0,0, - 0,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, - 4,0,90,6,0,101,7,0,100,5,0,100,6,0,132,0, - 0,131,1,0,90,8,0,101,7,0,100,7,0,100,8,0, - 132,0,0,131,1,0,90,9,0,101,7,0,100,9,0,100, - 9,0,100,10,0,100,11,0,132,2,0,131,1,0,90,10, - 0,101,7,0,100,9,0,100,12,0,100,13,0,132,1,0, - 131,1,0,90,11,0,100,9,0,83,41,14,218,21,87,105, - 110,100,111,119,115,82,101,103,105,115,116,114,121,70,105,110, - 100,101,114,122,62,77,101,116,97,32,112,97,116,104,32,102, - 105,110,100,101,114,32,102,111,114,32,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,122,59,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, - 122,65,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,70,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,41,1,78,41,5,218,7,95,119,105,110,114,101,103,90, - 7,79,112,101,110,75,101,121,90,17,72,75,69,89,95,67, - 85,82,82,69,78,84,95,85,83,69,82,114,40,0,0,0, - 90,18,72,75,69,89,95,76,79,67,65,76,95,77,65,67, - 72,73,78,69,41,2,114,13,1,0,0,218,3,107,101,121, - 114,4,0,0,0,114,4,0,0,0,114,5,0,0,0,218, - 14,95,111,112,101,110,95,114,101,103,105,115,116,114,121,107, - 5,0,0,115,8,0,0,0,0,2,3,1,23,1,13,1, - 122,36,87,105,110,100,111,119,115,82,101,103,105,115,116,114, - 121,70,105,110,100,101,114,46,95,111,112,101,110,95,114,101, - 103,105,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,41,5, - 78,114,164,0,0,0,90,11,115,121,115,95,118,101,114,115, - 105,111,110,114,139,0,0,0,114,30,0,0,0,41,10,218, - 11,68,69,66,85,71,95,66,85,73,76,68,218,18,82,69, - 71,73,83,84,82,89,95,75,69,89,95,68,69,66,85,71, - 218,12,82,69,71,73,83,84,82,89,95,75,69,89,114,47, - 0,0,0,114,7,0,0,0,218,7,118,101,114,115,105,111, - 110,114,28,1,0,0,114,26,1,0,0,90,10,81,117,101, - 114,121,86,97,108,117,101,114,40,0,0,0,41,6,114,13, - 1,0,0,114,164,0,0,0,90,12,114,101,103,105,115,116, - 114,121,95,107,101,121,114,27,1,0,0,90,4,104,107,101, - 121,218,8,102,105,108,101,112,97,116,104,114,4,0,0,0, - 114,4,0,0,0,114,5,0,0,0,218,16,95,115,101,97, - 114,99,104,95,114,101,103,105,115,116,114,121,114,5,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,122,38,87,105,110, - 100,111,119,115,82,101,103,105,115,116,114,121,70,105,110,100, - 101,114,46,95,115,101,97,114,99,104,95,114,101,103,105,115, - 116,114,121,78,99,4,0,0,0,0,0,0,0,8,0,0, - 0,14,0,0,0,67,0,0,0,115,155,0,0,0,124,0, - 0,106,0,0,124,1,0,131,1,0,125,4,0,124,4,0, - 100,0,0,107,8,0,114,31,0,100,0,0,83,121,14,0, - 116,1,0,124,4,0,131,1,0,1,87,110,22,0,4,116, - 2,0,107,10,0,114,69,0,1,1,1,100,0,0,83,89, - 110,1,0,88,120,78,0,116,3,0,131,0,0,68,93,67, - 0,92,2,0,125,5,0,125,6,0,124,4,0,106,4,0, - 116,5,0,124,6,0,131,1,0,131,1,0,114,80,0,116, - 6,0,124,1,0,124,5,0,124,1,0,124,4,0,131,2, - 0,100,1,0,124,4,0,131,2,1,125,7,0,124,7,0, - 83,113,80,0,87,100,0,0,83,41,2,78,114,221,0,0, - 0,41,7,114,34,1,0,0,114,39,0,0,0,114,40,0, - 0,0,114,243,0,0,0,114,234,0,0,0,114,235,0,0, - 0,114,177,0,0,0,41,8,114,13,1,0,0,114,164,0, - 0,0,114,35,0,0,0,114,14,1,0,0,114,33,1,0, - 0,114,173,0,0,0,114,247,0,0,0,114,180,0,0,0, - 114,4,0,0,0,114,4,0,0,0,114,5,0,0,0,114, - 15,1,0,0,129,5,0,0,115,24,0,0,0,0,2,15, - 1,12,1,4,1,3,1,14,1,13,1,9,1,22,1,21, - 1,21,1,9,1,122,31,87,105,110,100,111,119,115,82,101, - 103,105,115,116,114,121,70,105,110,100,101,114,46,102,105,110, - 100,95,115,112,101,99,99,3,0,0,0,0,0,0,0,4, - 0,0,0,3,0,0,0,67,0,0,0,115,45,0,0,0, - 124,0,0,106,0,0,124,1,0,124,2,0,131,2,0,125, - 3,0,124,3,0,100,1,0,107,9,0,114,37,0,124,3, - 0,106,1,0,83,100,1,0,83,100,1,0,83,41,2,122, - 108,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,10,10,32,32,32,32,32,32,32,32,84,104,105, - 115,32,109,101,116,104,111,100,32,105,115,32,100,101,112,114, - 101,99,97,116,101,100,46,32,32,85,115,101,32,101,120,101, - 99,95,109,111,100,117,108,101,40,41,32,105,110,115,116,101, - 97,100,46,10,10,32,32,32,32,32,32,32,32,78,41,2, - 114,15,1,0,0,114,173,0,0,0,41,4,114,13,1,0, - 0,114,164,0,0,0,114,35,0,0,0,114,180,0,0,0, - 114,4,0,0,0,114,4,0,0,0,114,5,0,0,0,114, - 16,1,0,0,144,5,0,0,115,8,0,0,0,0,7,18, - 1,12,1,7,2,122,33,87,105,110,100,111,119,115,82,101, - 103,105,115,116,114,121,70,105,110,100,101,114,46,102,105,110, - 100,95,109,111,100,117,108,101,41,12,114,57,0,0,0,114, - 56,0,0,0,114,58,0,0,0,114,59,0,0,0,114,31, - 1,0,0,114,30,1,0,0,114,29,1,0,0,114,20,1, - 0,0,114,28,1,0,0,114,34,1,0,0,114,15,1,0, - 0,114,16,1,0,0,114,4,0,0,0,114,4,0,0,0, - 114,4,0,0,0,114,5,0,0,0,114,25,1,0,0,95, - 5,0,0,115,20,0,0,0,12,2,6,3,6,3,6,2, - 6,2,18,7,18,15,3,1,21,14,3,1,114,25,1,0, - 0,99,0,0,0,0,0,0,0,0,0,0,0,0,2,0, - 0,0,64,0,0,0,115,64,0,0,0,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,101,7,0,90,8,0,100,8,0,83,41,9,218,13,95, - 76,111,97,100,101,114,66,97,115,105,99,115,122,83,66,97, - 115,101,32,99,108,97,115,115,32,111,102,32,99,111,109,109, - 111,110,32,99,111,100,101,32,110,101,101,100,101,100,32,98, - 121,32,98,111,116,104,32,83,111,117,114,99,101,76,111,97, - 100,101,114,32,97,110,100,10,32,32,32,32,83,111,117,114, - 99,101,108,101,115,115,70,105,108,101,76,111,97,100,101,114, - 46,99,2,0,0,0,0,0,0,0,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,41,6,122,141,67,111,110,99,114,101,116,101,32, - 105,109,112,108,101,109,101,110,116,97,116,105,111,110,32,111, - 102,32,73,110,115,112,101,99,116,76,111,97,100,101,114,46, - 105,115,95,112,97,99,107,97,103,101,32,98,121,32,99,104, - 101,99,107,105,110,103,32,105,102,10,32,32,32,32,32,32, - 32,32,116,104,101,32,112,97,116,104,32,114,101,116,117,114, - 110,101,100,32,98,121,32,103,101,116,95,102,105,108,101,110, - 97,109,101,32,104,97,115,32,97,32,102,105,108,101,110,97, - 109,101,32,111,102,32,39,95,95,105,110,105,116,95,95,46, - 112,121,39,46,114,29,0,0,0,114,117,0,0,0,114,84, - 0,0,0,114,115,0,0,0,114,72,0,0,0,41,4,114, - 38,0,0,0,114,241,0,0,0,114,34,0,0,0,114,32, - 0,0,0,41,5,114,71,0,0,0,114,164,0,0,0,114, - 214,0,0,0,90,13,102,105,108,101,110,97,109,101,95,98, - 97,115,101,90,9,116,97,105,108,95,110,97,109,101,114,4, - 0,0,0,114,4,0,0,0,114,5,0,0,0,114,223,0, - 0,0,163,5,0,0,115,8,0,0,0,0,3,25,1,22, - 1,19,1,122,24,95,76,111,97,100,101,114,66,97,115,105, - 99,115,46,105,115,95,112,97,99,107,97,103,101,99,2,0, + 0,114,16,1,0,0,46,5,0,0,115,2,0,0,0,0, + 7,122,26,70,114,111,122,101,110,73,109,112,111,114,116,101, + 114,46,102,105,110,100,95,109,111,100,117,108,101,99,2,0, 0,0,0,0,0,0,2,0,0,0,1,0,0,0,67,0, 0,0,115,4,0,0,0,100,1,0,83,41,2,122,42,85, 115,101,32,100,101,102,97,117,108,116,32,115,101,109,97,110, 116,105,99,115,32,102,111,114,32,109,111,100,117,108,101,32, 99,114,101,97,116,105,111,110,46,78,114,4,0,0,0,41, - 2,114,71,0,0,0,114,180,0,0,0,114,4,0,0,0, - 114,4,0,0,0,114,5,0,0,0,114,2,1,0,0,171, - 5,0,0,115,0,0,0,0,122,27,95,76,111,97,100,101, - 114,66,97,115,105,99,115,46,99,114,101,97,116,101,95,109, - 111,100,117,108,101,99,2,0,0,0,0,0,0,0,3,0, - 0,0,4,0,0,0,67,0,0,0,115,77,0,0,0,124, - 0,0,106,0,0,124,1,0,106,1,0,131,1,0,125,2, - 0,124,2,0,100,1,0,107,8,0,114,54,0,116,2,0, - 100,2,0,106,3,0,124,1,0,106,1,0,131,1,0,131, - 1,0,130,1,0,116,4,0,116,5,0,124,2,0,124,1, - 0,106,6,0,131,3,0,1,100,1,0,83,41,3,122,19, - 69,120,101,99,117,116,101,32,116,104,101,32,109,111,100,117, - 108,101,46,78,122,52,99,97,110,110,111,116,32,108,111,97, - 100,32,109,111,100,117,108,101,32,123,33,114,125,32,119,104, - 101,110,32,103,101,116,95,99,111,100,101,40,41,32,114,101, - 116,117,114,110,115,32,78,111,110,101,41,7,114,17,1,0, - 0,114,57,0,0,0,114,159,0,0,0,114,47,0,0,0, - 114,114,0,0,0,114,24,1,0,0,114,63,0,0,0,41, - 3,114,71,0,0,0,114,181,0,0,0,114,196,0,0,0, - 114,4,0,0,0,114,4,0,0,0,114,5,0,0,0,114, - 3,1,0,0,174,5,0,0,115,10,0,0,0,0,2,18, - 1,12,1,9,1,15,1,122,25,95,76,111,97,100,101,114, - 66,97,115,105,99,115,46,101,120,101,99,95,109,111,100,117, - 108,101,78,41,9,114,57,0,0,0,114,56,0,0,0,114, - 58,0,0,0,114,59,0,0,0,114,223,0,0,0,114,2, - 1,0,0,114,3,1,0,0,114,182,0,0,0,114,6,1, - 0,0,114,4,0,0,0,114,4,0,0,0,114,4,0,0, - 0,114,5,0,0,0,114,35,1,0,0,158,5,0,0,115, - 10,0,0,0,12,3,6,2,12,8,12,3,12,8,114,35, - 1,0,0,99,0,0,0,0,0,0,0,0,0,0,0,0, - 4,0,0,0,64,0,0,0,115,106,0,0,0,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,18,0,100,13,0,100,14, - 0,132,0,1,90,8,0,100,15,0,100,16,0,132,0,0, - 90,9,0,100,17,0,83,41,19,218,12,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,41,2,122,178,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, - 10,32,32,32,32,32,32,32,32,82,97,105,115,101,115,32, - 73,79,69,114,114,111,114,32,119,104,101,110,32,116,104,101, - 32,112,97,116,104,32,99,97,110,110,111,116,32,98,101,32, - 104,97,110,100,108,101,100,46,10,32,32,32,32,32,32,32, - 32,78,41,1,218,7,73,79,69,114,114,111,114,41,2,114, - 71,0,0,0,114,35,0,0,0,114,4,0,0,0,114,4, - 0,0,0,114,5,0,0,0,218,10,112,97,116,104,95,109, - 116,105,109,101,187,5,0,0,115,2,0,0,0,0,6,122, - 23,83,111,117,114,99,101,76,111,97,100,101,114,46,112,97, - 116,104,95,109,116,105,109,101,99,2,0,0,0,0,0,0, - 0,2,0,0,0,3,0,0,0,67,0,0,0,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,41,2,97,170,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,82, - 97,105,115,101,115,32,73,79,69,114,114,111,114,32,119,104, - 101,110,32,116,104,101,32,112,97,116,104,32,99,97,110,110, - 111,116,32,98,101,32,104,97,110,100,108,101,100,46,10,32, - 32,32,32,32,32,32,32,114,185,0,0,0,41,1,114,38, - 1,0,0,41,2,114,71,0,0,0,114,35,0,0,0,114, - 4,0,0,0,114,4,0,0,0,114,5,0,0,0,218,10, - 112,97,116,104,95,115,116,97,116,115,195,5,0,0,115,2, - 0,0,0,0,11,122,23,83,111,117,114,99,101,76,111,97, - 100,101,114,46,112,97,116,104,95,115,116,97,116,115,99,4, + 2,114,13,1,0,0,114,180,0,0,0,114,4,0,0,0, + 114,4,0,0,0,114,5,0,0,0,114,2,1,0,0,55, + 5,0,0,115,0,0,0,0,122,28,70,114,111,122,101,110, + 73,109,112,111,114,116,101,114,46,99,114,101,97,116,101,95, + 109,111,100,117,108,101,99,1,0,0,0,0,0,0,0,3, + 0,0,0,4,0,0,0,67,0,0,0,115,92,0,0,0, + 124,0,0,106,0,0,106,1,0,125,1,0,116,2,0,106, + 3,0,124,1,0,131,1,0,115,54,0,116,4,0,100,1, + 0,106,5,0,124,1,0,131,1,0,100,2,0,124,1,0, + 131,1,1,130,1,0,116,6,0,116,2,0,106,7,0,124, + 1,0,131,2,0,125,2,0,116,8,0,124,2,0,124,0, + 0,106,9,0,131,2,0,1,100,0,0,83,41,3,78,122, + 27,123,33,114,125,32,105,115,32,110,111,116,32,97,32,102, + 114,111,122,101,110,32,109,111,100,117,108,101,114,67,0,0, + 0,41,10,114,210,0,0,0,114,67,0,0,0,114,106,0, + 0,0,114,168,0,0,0,114,159,0,0,0,114,47,0,0, + 0,114,114,0,0,0,218,17,103,101,116,95,102,114,111,122, + 101,110,95,111,98,106,101,99,116,218,4,101,120,101,99,114, + 63,0,0,0,41,3,114,181,0,0,0,114,67,0,0,0, + 114,196,0,0,0,114,4,0,0,0,114,4,0,0,0,114, + 5,0,0,0,114,3,1,0,0,59,5,0,0,115,12,0, + 0,0,0,2,12,1,15,1,18,1,9,1,18,1,122,26, + 70,114,111,122,101,110,73,109,112,111,114,116,101,114,46,101, + 120,101,99,95,109,111,100,117,108,101,99,2,0,0,0,0, + 0,0,0,2,0,0,0,3,0,0,0,67,0,0,0,115, + 13,0,0,0,116,0,0,124,0,0,124,1,0,131,2,0, + 83,41,1,122,95,76,111,97,100,32,97,32,102,114,111,122, + 101,110,32,109,111,100,117,108,101,46,10,10,32,32,32,32, + 32,32,32,32,84,104,105,115,32,109,101,116,104,111,100,32, + 105,115,32,100,101,112,114,101,99,97,116,101,100,46,32,32, + 85,115,101,32,101,120,101,99,95,109,111,100,117,108,101,40, + 41,32,105,110,115,116,101,97,100,46,10,10,32,32,32,32, + 32,32,32,32,41,1,114,182,0,0,0,41,2,114,13,1, + 0,0,114,164,0,0,0,114,4,0,0,0,114,4,0,0, + 0,114,5,0,0,0,114,6,1,0,0,68,5,0,0,115, + 2,0,0,0,0,7,122,26,70,114,111,122,101,110,73,109, + 112,111,114,116,101,114,46,108,111,97,100,95,109,111,100,117, + 108,101,99,2,0,0,0,0,0,0,0,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,41,1,122,45,82,101,116, + 117,114,110,32,116,104,101,32,99,111,100,101,32,111,98,106, + 101,99,116,32,102,111,114,32,116,104,101,32,102,114,111,122, + 101,110,32,109,111,100,117,108,101,46,41,2,114,106,0,0, + 0,114,23,1,0,0,41,2,114,13,1,0,0,114,164,0, + 0,0,114,4,0,0,0,114,4,0,0,0,114,5,0,0, + 0,114,17,1,0,0,77,5,0,0,115,2,0,0,0,0, + 4,122,23,70,114,111,122,101,110,73,109,112,111,114,116,101, + 114,46,103,101,116,95,99,111,100,101,99,2,0,0,0,0, + 0,0,0,2,0,0,0,1,0,0,0,67,0,0,0,115, + 4,0,0,0,100,1,0,83,41,2,122,54,82,101,116,117, + 114,110,32,78,111,110,101,32,97,115,32,102,114,111,122,101, + 110,32,109,111,100,117,108,101,115,32,100,111,32,110,111,116, + 32,104,97,118,101,32,115,111,117,114,99,101,32,99,111,100, + 101,46,78,114,4,0,0,0,41,2,114,13,1,0,0,114, + 164,0,0,0,114,4,0,0,0,114,4,0,0,0,114,5, + 0,0,0,114,18,1,0,0,83,5,0,0,115,2,0,0, + 0,0,4,122,25,70,114,111,122,101,110,73,109,112,111,114, + 116,101,114,46,103,101,116,95,115,111,117,114,99,101,99,2, + 0,0,0,0,0,0,0,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,41,1,122,46,82,101,116,117,114,110,32, + 84,114,117,101,32,105,102,32,116,104,101,32,102,114,111,122, + 101,110,32,109,111,100,117,108,101,32,105,115,32,97,32,112, + 97,99,107,97,103,101,46,41,2,114,106,0,0,0,90,17, + 105,115,95,102,114,111,122,101,110,95,112,97,99,107,97,103, + 101,41,2,114,13,1,0,0,114,164,0,0,0,114,4,0, + 0,0,114,4,0,0,0,114,5,0,0,0,114,223,0,0, + 0,89,5,0,0,115,2,0,0,0,0,4,122,25,70,114, + 111,122,101,110,73,109,112,111,114,116,101,114,46,105,115,95, + 112,97,99,107,97,103,101,41,16,114,57,0,0,0,114,56, + 0,0,0,114,58,0,0,0,114,59,0,0,0,114,19,1, + 0,0,114,207,0,0,0,114,20,1,0,0,114,15,1,0, + 0,114,16,1,0,0,114,2,1,0,0,114,3,1,0,0, + 114,6,1,0,0,114,170,0,0,0,114,17,1,0,0,114, + 18,1,0,0,114,223,0,0,0,114,4,0,0,0,114,4, + 0,0,0,114,4,0,0,0,114,5,0,0,0,114,21,1, + 0,0,21,5,0,0,115,30,0,0,0,12,7,6,2,18, + 9,3,1,21,6,3,1,18,8,18,4,18,9,18,9,3, + 1,21,5,3,1,21,5,3,1,114,21,1,0,0,99,0, + 0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,64, + 0,0,0,115,121,0,0,0,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,4,0,90,6,0,101,7,0,100, + 5,0,100,6,0,132,0,0,131,1,0,90,8,0,101,7, + 0,100,7,0,100,8,0,132,0,0,131,1,0,90,9,0, + 101,7,0,100,9,0,100,9,0,100,10,0,100,11,0,132, + 2,0,131,1,0,90,10,0,101,7,0,100,9,0,100,12, + 0,100,13,0,132,1,0,131,1,0,90,11,0,100,9,0, + 83,41,14,218,21,87,105,110,100,111,119,115,82,101,103,105, + 115,116,114,121,70,105,110,100,101,114,122,62,77,101,116,97, + 32,112,97,116,104,32,102,105,110,100,101,114,32,102,111,114, + 32,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,122,59,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,122,65,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,70,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,41,1,78,41,5,218,7,95, + 119,105,110,114,101,103,90,7,79,112,101,110,75,101,121,90, + 17,72,75,69,89,95,67,85,82,82,69,78,84,95,85,83, + 69,82,114,40,0,0,0,90,18,72,75,69,89,95,76,79, + 67,65,76,95,77,65,67,72,73,78,69,41,2,114,13,1, + 0,0,218,3,107,101,121,114,4,0,0,0,114,4,0,0, + 0,114,5,0,0,0,218,14,95,111,112,101,110,95,114,101, + 103,105,115,116,114,121,108,5,0,0,115,8,0,0,0,0, + 2,3,1,23,1,13,1,122,36,87,105,110,100,111,119,115, + 82,101,103,105,115,116,114,121,70,105,110,100,101,114,46,95, + 111,112,101,110,95,114,101,103,105,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,143,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,47,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,82,88,87,110,22,0,4,116,9,0, + 107,10,0,114,138,0,1,1,1,100,0,0,83,89,110,1, + 0,88,124,5,0,83,41,5,78,114,164,0,0,0,90,11, + 115,121,115,95,118,101,114,115,105,111,110,114,139,0,0,0, + 114,30,0,0,0,41,10,218,11,68,69,66,85,71,95,66, + 85,73,76,68,218,18,82,69,71,73,83,84,82,89,95,75, + 69,89,95,68,69,66,85,71,218,12,82,69,71,73,83,84, + 82,89,95,75,69,89,114,47,0,0,0,114,7,0,0,0, + 218,7,118,101,114,115,105,111,110,114,28,1,0,0,114,26, + 1,0,0,90,10,81,117,101,114,121,86,97,108,117,101,114, + 40,0,0,0,41,6,114,13,1,0,0,114,164,0,0,0, + 90,12,114,101,103,105,115,116,114,121,95,107,101,121,114,27, + 1,0,0,90,4,104,107,101,121,218,8,102,105,108,101,112, + 97,116,104,114,4,0,0,0,114,4,0,0,0,114,5,0, + 0,0,218,16,95,115,101,97,114,99,104,95,114,101,103,105, + 115,116,114,121,115,5,0,0,115,22,0,0,0,0,2,9, + 1,12,2,9,1,15,1,22,1,3,1,18,1,29,1,13, + 1,9,1,122,38,87,105,110,100,111,119,115,82,101,103,105, + 115,116,114,121,70,105,110,100,101,114,46,95,115,101,97,114, + 99,104,95,114,101,103,105,115,116,114,121,78,99,4,0,0, + 0,0,0,0,0,8,0,0,0,14,0,0,0,67,0,0, + 0,115,155,0,0,0,124,0,0,106,0,0,124,1,0,131, + 1,0,125,4,0,124,4,0,100,0,0,107,8,0,114,31, + 0,100,0,0,83,121,14,0,116,1,0,124,4,0,131,1, + 0,1,87,110,22,0,4,116,2,0,107,10,0,114,69,0, + 1,1,1,100,0,0,83,89,110,1,0,88,120,78,0,116, + 3,0,131,0,0,68,93,67,0,92,2,0,125,5,0,125, + 6,0,124,4,0,106,4,0,116,5,0,124,6,0,131,1, + 0,131,1,0,114,80,0,116,6,0,124,1,0,124,5,0, + 124,1,0,124,4,0,131,2,0,100,1,0,124,4,0,131, + 2,1,125,7,0,124,7,0,83,113,80,0,87,100,0,0, + 83,41,2,78,114,221,0,0,0,41,7,114,34,1,0,0, + 114,39,0,0,0,114,40,0,0,0,114,243,0,0,0,114, + 234,0,0,0,114,235,0,0,0,114,177,0,0,0,41,8, + 114,13,1,0,0,114,164,0,0,0,114,35,0,0,0,114, + 14,1,0,0,114,33,1,0,0,114,173,0,0,0,114,247, + 0,0,0,114,180,0,0,0,114,4,0,0,0,114,4,0, + 0,0,114,5,0,0,0,114,15,1,0,0,130,5,0,0, + 115,24,0,0,0,0,2,15,1,12,1,4,1,3,1,14, + 1,13,1,9,1,22,1,21,1,21,1,9,1,122,31,87, + 105,110,100,111,119,115,82,101,103,105,115,116,114,121,70,105, + 110,100,101,114,46,102,105,110,100,95,115,112,101,99,99,3, 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,41,1,122,228,79,112,116,105, + 0,0,0,115,45,0,0,0,124,0,0,106,0,0,124,1, + 0,124,2,0,131,2,0,125,3,0,124,3,0,100,1,0, + 107,9,0,114,37,0,124,3,0,106,1,0,83,100,1,0, + 83,100,1,0,83,41,2,122,108,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,10,10,32,32,32, + 32,32,32,32,32,84,104,105,115,32,109,101,116,104,111,100, + 32,105,115,32,100,101,112,114,101,99,97,116,101,100,46,32, + 32,85,115,101,32,101,120,101,99,95,109,111,100,117,108,101, + 40,41,32,105,110,115,116,101,97,100,46,10,10,32,32,32, + 32,32,32,32,32,78,41,2,114,15,1,0,0,114,173,0, + 0,0,41,4,114,13,1,0,0,114,164,0,0,0,114,35, + 0,0,0,114,180,0,0,0,114,4,0,0,0,114,4,0, + 0,0,114,5,0,0,0,114,16,1,0,0,145,5,0,0, + 115,8,0,0,0,0,7,18,1,12,1,7,2,122,33,87, + 105,110,100,111,119,115,82,101,103,105,115,116,114,121,70,105, + 110,100,101,114,46,102,105,110,100,95,109,111,100,117,108,101, + 41,12,114,57,0,0,0,114,56,0,0,0,114,58,0,0, + 0,114,59,0,0,0,114,31,1,0,0,114,30,1,0,0, + 114,29,1,0,0,114,20,1,0,0,114,28,1,0,0,114, + 34,1,0,0,114,15,1,0,0,114,16,1,0,0,114,4, + 0,0,0,114,4,0,0,0,114,4,0,0,0,114,5,0, + 0,0,114,25,1,0,0,96,5,0,0,115,20,0,0,0, + 12,2,6,3,6,3,6,2,6,2,18,7,18,15,3,1, + 21,14,3,1,114,25,1,0,0,99,0,0,0,0,0,0, + 0,0,0,0,0,0,2,0,0,0,64,0,0,0,115,64, + 0,0,0,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,101,7,0,90,8,0,100, + 8,0,83,41,9,218,13,95,76,111,97,100,101,114,66,97, + 115,105,99,115,122,83,66,97,115,101,32,99,108,97,115,115, + 32,111,102,32,99,111,109,109,111,110,32,99,111,100,101,32, + 110,101,101,100,101,100,32,98,121,32,98,111,116,104,32,83, + 111,117,114,99,101,76,111,97,100,101,114,32,97,110,100,10, + 32,32,32,32,83,111,117,114,99,101,108,101,115,115,70,105, + 108,101,76,111,97,100,101,114,46,99,2,0,0,0,0,0, + 0,0,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,41,6,122,141,67, + 111,110,99,114,101,116,101,32,105,109,112,108,101,109,101,110, + 116,97,116,105,111,110,32,111,102,32,73,110,115,112,101,99, + 116,76,111,97,100,101,114,46,105,115,95,112,97,99,107,97, + 103,101,32,98,121,32,99,104,101,99,107,105,110,103,32,105, + 102,10,32,32,32,32,32,32,32,32,116,104,101,32,112,97, + 116,104,32,114,101,116,117,114,110,101,100,32,98,121,32,103, + 101,116,95,102,105,108,101,110,97,109,101,32,104,97,115,32, + 97,32,102,105,108,101,110,97,109,101,32,111,102,32,39,95, + 95,105,110,105,116,95,95,46,112,121,39,46,114,29,0,0, + 0,114,117,0,0,0,114,84,0,0,0,114,115,0,0,0, + 114,72,0,0,0,41,4,114,38,0,0,0,114,241,0,0, + 0,114,34,0,0,0,114,32,0,0,0,41,5,114,71,0, + 0,0,114,164,0,0,0,114,214,0,0,0,90,13,102,105, + 108,101,110,97,109,101,95,98,97,115,101,90,9,116,97,105, + 108,95,110,97,109,101,114,4,0,0,0,114,4,0,0,0, + 114,5,0,0,0,114,223,0,0,0,164,5,0,0,115,8, + 0,0,0,0,3,25,1,22,1,19,1,122,24,95,76,111, + 97,100,101,114,66,97,115,105,99,115,46,105,115,95,112,97, + 99,107,97,103,101,99,2,0,0,0,0,0,0,0,2,0, + 0,0,1,0,0,0,67,0,0,0,115,4,0,0,0,100, + 1,0,83,41,2,122,42,85,115,101,32,100,101,102,97,117, + 108,116,32,115,101,109,97,110,116,105,99,115,32,102,111,114, + 32,109,111,100,117,108,101,32,99,114,101,97,116,105,111,110, + 46,78,114,4,0,0,0,41,2,114,71,0,0,0,114,180, + 0,0,0,114,4,0,0,0,114,4,0,0,0,114,5,0, + 0,0,114,2,1,0,0,172,5,0,0,115,0,0,0,0, + 122,27,95,76,111,97,100,101,114,66,97,115,105,99,115,46, + 99,114,101,97,116,101,95,109,111,100,117,108,101,99,2,0, + 0,0,0,0,0,0,3,0,0,0,4,0,0,0,67,0, + 0,0,115,77,0,0,0,124,0,0,106,0,0,124,1,0, + 106,1,0,131,1,0,125,2,0,124,2,0,100,1,0,107, + 8,0,114,54,0,116,2,0,100,2,0,106,3,0,124,1, + 0,106,1,0,131,1,0,131,1,0,130,1,0,116,4,0, + 116,5,0,124,2,0,124,1,0,106,6,0,131,3,0,1, + 100,1,0,83,41,3,122,19,69,120,101,99,117,116,101,32, + 116,104,101,32,109,111,100,117,108,101,46,78,122,52,99,97, + 110,110,111,116,32,108,111,97,100,32,109,111,100,117,108,101, + 32,123,33,114,125,32,119,104,101,110,32,103,101,116,95,99, + 111,100,101,40,41,32,114,101,116,117,114,110,115,32,78,111, + 110,101,41,7,114,17,1,0,0,114,57,0,0,0,114,159, + 0,0,0,114,47,0,0,0,114,114,0,0,0,114,24,1, + 0,0,114,63,0,0,0,41,3,114,71,0,0,0,114,181, + 0,0,0,114,196,0,0,0,114,4,0,0,0,114,4,0, + 0,0,114,5,0,0,0,114,3,1,0,0,175,5,0,0, + 115,10,0,0,0,0,2,18,1,12,1,9,1,15,1,122, + 25,95,76,111,97,100,101,114,66,97,115,105,99,115,46,101, + 120,101,99,95,109,111,100,117,108,101,78,41,9,114,57,0, + 0,0,114,56,0,0,0,114,58,0,0,0,114,59,0,0, + 0,114,223,0,0,0,114,2,1,0,0,114,3,1,0,0, + 114,182,0,0,0,114,6,1,0,0,114,4,0,0,0,114, + 4,0,0,0,114,4,0,0,0,114,5,0,0,0,114,35, + 1,0,0,159,5,0,0,115,10,0,0,0,12,3,6,2, + 12,8,12,3,12,8,114,35,1,0,0,99,0,0,0,0, + 0,0,0,0,0,0,0,0,4,0,0,0,64,0,0,0, + 115,106,0,0,0,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,18,0,100,13,0,100,14,0,132,0,1,90,8,0,100, + 15,0,100,16,0,132,0,0,90,9,0,100,17,0,83,41, + 19,218,12,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,41,2,122,178,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,10,32,32,32,32,32,32,32, + 32,82,97,105,115,101,115,32,73,79,69,114,114,111,114,32, + 119,104,101,110,32,116,104,101,32,112,97,116,104,32,99,97, + 110,110,111,116,32,98,101,32,104,97,110,100,108,101,100,46, + 10,32,32,32,32,32,32,32,32,78,41,1,218,7,73,79, + 69,114,114,111,114,41,2,114,71,0,0,0,114,35,0,0, + 0,114,4,0,0,0,114,4,0,0,0,114,5,0,0,0, + 218,10,112,97,116,104,95,109,116,105,109,101,188,5,0,0, + 115,2,0,0,0,0,6,122,23,83,111,117,114,99,101,76, + 111,97,100,101,114,46,112,97,116,104,95,109,116,105,109,101, + 99,2,0,0,0,0,0,0,0,2,0,0,0,3,0,0, + 0,67,0,0,0,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,41,2, + 97,170,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,82,97,105,115,101,115,32,73,79, + 69,114,114,111,114,32,119,104,101,110,32,116,104,101,32,112, + 97,116,104,32,99,97,110,110,111,116,32,98,101,32,104,97, + 110,100,108,101,100,46,10,32,32,32,32,32,32,32,32,114, + 185,0,0,0,41,1,114,38,1,0,0,41,2,114,71,0, + 0,0,114,35,0,0,0,114,4,0,0,0,114,4,0,0, + 0,114,5,0,0,0,218,10,112,97,116,104,95,115,116,97, + 116,115,196,5,0,0,115,2,0,0,0,0,11,122,23,83, + 111,117,114,99,101,76,111,97,100,101,114,46,112,97,116,104, + 95,115,116,97,116,115,99,4,0,0,0,0,0,0,0,4, + 0,0,0,3,0,0,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, + 41,1,122,228,79,112,116,105,111,110,97,108,32,109,101,116, + 104,111,100,32,119,104,105,99,104,32,119,114,105,116,101,115, + 32,100,97,116,97,32,40,98,121,116,101,115,41,32,116,111, + 32,97,32,102,105,108,101,32,112,97,116,104,32,40,97,32, + 115,116,114,41,46,10,10,32,32,32,32,32,32,32,32,73, + 109,112,108,101,109,101,110,116,105,110,103,32,116,104,105,115, + 32,109,101,116,104,111,100,32,97,108,108,111,119,115,32,102, + 111,114,32,116,104,101,32,119,114,105,116,105,110,103,32,111, + 102,32,98,121,116,101,99,111,100,101,32,102,105,108,101,115, + 46,10,10,32,32,32,32,32,32,32,32,84,104,101,32,115, + 111,117,114,99,101,32,112,97,116,104,32,105,115,32,110,101, + 101,100,101,100,32,105,110,32,111,114,100,101,114,32,116,111, + 32,99,111,114,114,101,99,116,108,121,32,116,114,97,110,115, + 102,101,114,32,112,101,114,109,105,115,115,105,111,110,115,10, + 32,32,32,32,32,32,32,32,41,1,218,8,115,101,116,95, + 100,97,116,97,41,4,114,71,0,0,0,114,148,0,0,0, + 90,10,99,97,99,104,101,95,112,97,116,104,114,53,0,0, + 0,114,4,0,0,0,114,4,0,0,0,114,5,0,0,0, + 218,15,95,99,97,99,104,101,95,98,121,116,101,99,111,100, + 101,209,5,0,0,115,2,0,0,0,0,8,122,28,83,111, + 117,114,99,101,76,111,97,100,101,114,46,95,99,97,99,104, + 101,95,98,121,116,101,99,111,100,101,99,3,0,0,0,0, + 0,0,0,3,0,0,0,1,0,0,0,67,0,0,0,115, + 4,0,0,0,100,1,0,83,41,2,122,150,79,112,116,105, 111,110,97,108,32,109,101,116,104,111,100,32,119,104,105,99, 104,32,119,114,105,116,101,115,32,100,97,116,97,32,40,98, 121,116,101,115,41,32,116,111,32,97,32,102,105,108,101,32, @@ -2538,1818 +2562,1795 @@ 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, - 41,1,218,8,115,101,116,95,100,97,116,97,41,4,114,71, - 0,0,0,114,148,0,0,0,90,10,99,97,99,104,101,95, - 112,97,116,104,114,53,0,0,0,114,4,0,0,0,114,4, - 0,0,0,114,5,0,0,0,218,15,95,99,97,99,104,101, - 95,98,121,116,101,99,111,100,101,208,5,0,0,115,2,0, - 0,0,0,8,122,28,83,111,117,114,99,101,76,111,97,100, - 101,114,46,95,99,97,99,104,101,95,98,121,116,101,99,111, - 100,101,99,3,0,0,0,0,0,0,0,3,0,0,0,1, - 0,0,0,67,0,0,0,115,4,0,0,0,100,1,0,83, - 41,2,122,150,79,112,116,105,111,110,97,108,32,109,101,116, - 104,111,100,32,119,104,105,99,104,32,119,114,105,116,101,115, - 32,100,97,116,97,32,40,98,121,116,101,115,41,32,116,111, - 32,97,32,102,105,108,101,32,112,97,116,104,32,40,97,32, - 115,116,114,41,46,10,10,32,32,32,32,32,32,32,32,73, - 109,112,108,101,109,101,110,116,105,110,103,32,116,104,105,115, - 32,109,101,116,104,111,100,32,97,108,108,111,119,115,32,102, - 111,114,32,116,104,101,32,119,114,105,116,105,110,103,32,111, - 102,32,98,121,116,101,99,111,100,101,32,102,105,108,101,115, - 46,10,32,32,32,32,32,32,32,32,78,114,4,0,0,0, - 41,3,114,71,0,0,0,114,35,0,0,0,114,53,0,0, + 100,101,32,102,105,108,101,115,46,10,32,32,32,32,32,32, + 32,32,78,114,4,0,0,0,41,3,114,71,0,0,0,114, + 35,0,0,0,114,53,0,0,0,114,4,0,0,0,114,4, + 0,0,0,114,5,0,0,0,114,40,1,0,0,219,5,0, + 0,115,0,0,0,0,122,21,83,111,117,114,99,101,76,111, + 97,100,101,114,46,115,101,116,95,100,97,116,97,99,2,0, + 0,0,0,0,0,0,5,0,0,0,16,0,0,0,67,0, + 0,0,115,105,0,0,0,124,0,0,106,0,0,124,1,0, + 131,1,0,125,2,0,121,19,0,124,0,0,106,1,0,124, + 2,0,131,1,0,125,3,0,87,110,58,0,4,116,2,0, + 107,10,0,114,94,0,1,125,4,0,1,122,26,0,116,3, + 0,100,1,0,100,2,0,124,1,0,131,1,1,124,4,0, + 130,2,0,87,89,100,3,0,100,3,0,125,4,0,126,4, + 0,88,110,1,0,88,116,4,0,124,3,0,131,1,0,83, + 41,4,122,52,67,111,110,99,114,101,116,101,32,105,109,112, + 108,101,109,101,110,116,97,116,105,111,110,32,111,102,32,73, + 110,115,112,101,99,116,76,111,97,100,101,114,46,103,101,116, + 95,115,111,117,114,99,101,46,122,39,115,111,117,114,99,101, + 32,110,111,116,32,97,118,97,105,108,97,98,108,101,32,116, + 104,114,111,117,103,104,32,103,101,116,95,100,97,116,97,40, + 41,114,67,0,0,0,78,41,5,114,241,0,0,0,218,8, + 103,101,116,95,100,97,116,97,114,40,0,0,0,114,159,0, + 0,0,114,205,0,0,0,41,5,114,71,0,0,0,114,164, + 0,0,0,114,35,0,0,0,114,203,0,0,0,218,3,101, + 120,99,114,4,0,0,0,114,4,0,0,0,114,5,0,0, + 0,114,18,1,0,0,226,5,0,0,115,14,0,0,0,0, + 2,15,1,3,1,19,1,18,1,9,1,31,1,122,23,83, + 111,117,114,99,101,76,111,97,100,101,114,46,103,101,116,95, + 115,111,117,114,99,101,218,9,95,111,112,116,105,109,105,122, + 101,114,29,0,0,0,99,3,0,0,0,1,0,0,0,4, + 0,0,0,9,0,0,0,67,0,0,0,115,31,0,0,0, + 116,0,0,116,1,0,124,1,0,124,2,0,100,1,0,100, + 2,0,100,3,0,100,4,0,124,3,0,131,4,2,83,41, + 5,122,130,82,101,116,117,114,110,32,116,104,101,32,99,111, + 100,101,32,111,98,106,101,99,116,32,99,111,109,112,105,108, + 101,100,32,102,114,111,109,32,115,111,117,114,99,101,46,10, + 10,32,32,32,32,32,32,32,32,84,104,101,32,39,100,97, + 116,97,39,32,97,114,103,117,109,101,110,116,32,99,97,110, + 32,98,101,32,97,110,121,32,111,98,106,101,99,116,32,116, + 121,112,101,32,116,104,97,116,32,99,111,109,112,105,108,101, + 40,41,32,115,117,112,112,111,114,116,115,46,10,32,32,32, + 32,32,32,32,32,114,24,1,0,0,218,12,100,111,110,116, + 95,105,110,104,101,114,105,116,84,114,126,0,0,0,41,2, + 114,114,0,0,0,218,7,99,111,109,112,105,108,101,41,4, + 114,71,0,0,0,114,53,0,0,0,114,35,0,0,0,114, + 44,1,0,0,114,4,0,0,0,114,4,0,0,0,114,5, + 0,0,0,218,14,115,111,117,114,99,101,95,116,111,95,99, + 111,100,101,236,5,0,0,115,4,0,0,0,0,5,18,1, + 122,27,83,111,117,114,99,101,76,111,97,100,101,114,46,115, + 111,117,114,99,101,95,116,111,95,99,111,100,101,99,2,0, + 0,0,0,0,0,0,10,0,0,0,43,0,0,0,67,0, + 0,0,115,174,1,0,0,124,0,0,106,0,0,124,1,0, + 131,1,0,125,2,0,100,1,0,125,3,0,121,16,0,116, + 1,0,124,2,0,131,1,0,125,4,0,87,110,24,0,4, + 116,2,0,107,10,0,114,63,0,1,1,1,100,1,0,125, + 4,0,89,110,202,0,88,121,19,0,124,0,0,106,3,0, + 124,2,0,131,1,0,125,5,0,87,110,18,0,4,116,4, + 0,107,10,0,114,103,0,1,1,1,89,110,162,0,88,116, + 5,0,124,5,0,100,2,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,106,0,88,121,34,0,116,8,0,124,6,0, + 100,3,0,124,5,0,100,4,0,124,1,0,100,5,0,124, + 4,0,131,1,3,125,7,0,87,110,24,0,4,116,9,0, + 116,10,0,102,2,0,107,10,0,114,220,0,1,1,1,89, + 110,45,0,88,116,11,0,100,6,0,124,4,0,124,2,0, + 131,3,0,1,116,12,0,124,7,0,100,4,0,124,1,0, + 100,7,0,124,4,0,100,8,0,124,2,0,131,1,3,83, + 124,0,0,106,6,0,124,2,0,131,1,0,125,8,0,124, + 0,0,106,13,0,124,8,0,124,2,0,131,2,0,125,9, + 0,116,11,0,100,9,0,124,2,0,131,2,0,1,116,14, + 0,106,15,0,12,114,170,1,124,4,0,100,1,0,107,9, + 0,114,170,1,124,3,0,100,1,0,107,9,0,114,170,1, + 116,16,0,124,9,0,124,3,0,116,17,0,124,8,0,131, + 1,0,131,3,0,125,6,0,121,36,0,124,0,0,106,18, + 0,124,2,0,124,4,0,124,6,0,131,3,0,1,116,11, + 0,100,10,0,124,4,0,131,2,0,1,87,110,18,0,4, + 116,2,0,107,10,0,114,169,1,1,1,1,89,110,1,0, + 88,124,9,0,83,41,11,122,190,67,111,110,99,114,101,116, + 101,32,105,109,112,108,101,109,101,110,116,97,116,105,111,110, + 32,111,102,32,73,110,115,112,101,99,116,76,111,97,100,101, + 114,46,103,101,116,95,99,111,100,101,46,10,10,32,32,32, + 32,32,32,32,32,82,101,97,100,105,110,103,32,111,102,32, + 98,121,116,101,99,111,100,101,32,114,101,113,117,105,114,101, + 115,32,112,97,116,104,95,115,116,97,116,115,32,116,111,32, + 98,101,32,105,109,112,108,101,109,101,110,116,101,100,46,32, + 84,111,32,119,114,105,116,101,10,32,32,32,32,32,32,32, + 32,98,121,116,101,99,111,100,101,44,32,115,101,116,95,100, + 97,116,97,32,109,117,115,116,32,97,108,115,111,32,98,101, + 32,105,109,112,108,101,109,101,110,116,101,100,46,10,10,32, + 32,32,32,32,32,32,32,78,114,185,0,0,0,114,189,0, + 0,0,114,67,0,0,0,114,35,0,0,0,122,13,123,125, + 32,109,97,116,99,104,101,115,32,123,125,114,147,0,0,0, + 114,148,0,0,0,122,19,99,111,100,101,32,111,98,106,101, + 99,116,32,102,114,111,109,32,123,125,122,10,119,114,111,116, + 101,32,123,33,114,125,41,19,114,241,0,0,0,114,138,0, + 0,0,114,124,0,0,0,114,39,1,0,0,114,37,1,0, + 0,114,14,0,0,0,114,42,1,0,0,114,40,0,0,0, + 114,192,0,0,0,114,159,0,0,0,114,188,0,0,0,114, + 158,0,0,0,114,197,0,0,0,114,47,1,0,0,114,7, + 0,0,0,218,19,100,111,110,116,95,119,114,105,116,101,95, + 98,121,116,101,99,111,100,101,114,200,0,0,0,114,31,0, + 0,0,114,41,1,0,0,41,10,114,71,0,0,0,114,164, + 0,0,0,114,148,0,0,0,114,190,0,0,0,114,147,0, + 0,0,218,2,115,116,114,53,0,0,0,218,10,98,121,116, + 101,115,95,100,97,116,97,114,203,0,0,0,90,11,99,111, + 100,101,95,111,98,106,101,99,116,114,4,0,0,0,114,4, + 0,0,0,114,5,0,0,0,114,17,1,0,0,244,5,0, + 0,115,78,0,0,0,0,7,15,1,6,1,3,1,16,1, + 13,1,11,2,3,1,19,1,13,1,5,2,16,1,3,1, + 19,1,13,1,5,2,3,1,9,1,12,1,13,1,19,1, + 5,2,9,1,7,1,15,1,6,1,7,1,15,1,18,1, + 13,1,22,1,12,1,9,1,15,1,3,1,19,1,17,1, + 13,1,5,1,122,21,83,111,117,114,99,101,76,111,97,100, + 101,114,46,103,101,116,95,99,111,100,101,78,114,145,0,0, + 0,41,10,114,57,0,0,0,114,56,0,0,0,114,58,0, + 0,0,114,38,1,0,0,114,39,1,0,0,114,41,1,0, + 0,114,40,1,0,0,114,18,1,0,0,114,47,1,0,0, + 114,17,1,0,0,114,4,0,0,0,114,4,0,0,0,114, + 4,0,0,0,114,5,0,0,0,114,36,1,0,0,186,5, + 0,0,115,14,0,0,0,12,2,12,8,12,13,12,10,12, + 7,12,10,18,8,114,36,1,0,0,99,0,0,0,0,0, + 0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,115, + 112,0,0,0,101,0,0,90,1,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,101,7,0,135,0,0, + 102,1,0,100,8,0,100,9,0,134,0,0,131,1,0,90, + 8,0,101,7,0,100,10,0,100,11,0,132,0,0,131,1, + 0,90,9,0,100,12,0,100,13,0,132,0,0,90,10,0, + 135,0,0,83,41,14,218,10,70,105,108,101,76,111,97,100, + 101,114,122,103,66,97,115,101,32,102,105,108,101,32,108,111, + 97,100,101,114,32,99,108,97,115,115,32,119,104,105,99,104, + 32,105,109,112,108,101,109,101,110,116,115,32,116,104,101,32, + 108,111,97,100,101,114,32,112,114,111,116,111,99,111,108,32, + 109,101,116,104,111,100,115,32,116,104,97,116,10,32,32,32, + 32,114,101,113,117,105,114,101,32,102,105,108,101,32,115,121, + 115,116,101,109,32,117,115,97,103,101,46,99,3,0,0,0, + 0,0,0,0,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,41,2,122,75,67, + 97,99,104,101,32,116,104,101,32,109,111,100,117,108,101,32, + 110,97,109,101,32,97,110,100,32,116,104,101,32,112,97,116, + 104,32,116,111,32,116,104,101,32,102,105,108,101,32,102,111, + 117,110,100,32,98,121,32,116,104,101,10,32,32,32,32,32, + 32,32,32,102,105,110,100,101,114,46,78,41,2,114,67,0, + 0,0,114,35,0,0,0,41,3,114,71,0,0,0,114,164, + 0,0,0,114,35,0,0,0,114,4,0,0,0,114,4,0, + 0,0,114,5,0,0,0,114,72,0,0,0,45,6,0,0, + 115,4,0,0,0,0,3,9,1,122,19,70,105,108,101,76, + 111,97,100,101,114,46,95,95,105,110,105,116,95,95,99,2, + 0,0,0,0,0,0,0,2,0,0,0,2,0,0,0,67, + 0,0,0,115,34,0,0,0,124,0,0,106,0,0,124,1, + 0,106,0,0,107,2,0,111,33,0,124,0,0,106,1,0, + 124,1,0,106,1,0,107,2,0,83,41,1,78,41,2,114, + 228,0,0,0,114,63,0,0,0,41,2,114,71,0,0,0, + 114,231,0,0,0,114,4,0,0,0,114,4,0,0,0,114, + 5,0,0,0,114,233,0,0,0,51,6,0,0,115,4,0, + 0,0,0,1,18,1,122,17,70,105,108,101,76,111,97,100, + 101,114,46,95,95,101,113,95,95,99,1,0,0,0,0,0, + 0,0,1,0,0,0,3,0,0,0,67,0,0,0,115,26, + 0,0,0,116,0,0,124,0,0,106,1,0,131,1,0,116, + 0,0,124,0,0,106,2,0,131,1,0,65,83,41,1,78, + 41,3,218,4,104,97,115,104,114,67,0,0,0,114,35,0, + 0,0,41,1,114,71,0,0,0,114,4,0,0,0,114,4, + 0,0,0,114,5,0,0,0,218,8,95,95,104,97,115,104, + 95,95,55,6,0,0,115,2,0,0,0,0,1,122,19,70, + 105,108,101,76,111,97,100,101,114,46,95,95,104,97,115,104, + 95,95,99,2,0,0,0,0,0,0,0,2,0,0,0,3, + 0,0,0,3,0,0,0,115,22,0,0,0,116,0,0,116, + 1,0,124,0,0,131,2,0,106,2,0,124,1,0,131,1, + 0,83,41,1,122,100,76,111,97,100,32,97,32,109,111,100, + 117,108,101,32,102,114,111,109,32,97,32,102,105,108,101,46, + 10,10,32,32,32,32,32,32,32,32,84,104,105,115,32,109, + 101,116,104,111,100,32,105,115,32,100,101,112,114,101,99,97, + 116,101,100,46,32,32,85,115,101,32,101,120,101,99,95,109, + 111,100,117,108,101,40,41,32,105,110,115,116,101,97,100,46, + 10,10,32,32,32,32,32,32,32,32,41,3,218,5,115,117, + 112,101,114,114,51,1,0,0,114,6,1,0,0,41,2,114, + 71,0,0,0,114,164,0,0,0,41,1,114,228,0,0,0, + 114,4,0,0,0,114,5,0,0,0,114,6,1,0,0,58, + 6,0,0,115,2,0,0,0,0,10,122,22,70,105,108,101, + 76,111,97,100,101,114,46,108,111,97,100,95,109,111,100,117, + 108,101,99,2,0,0,0,0,0,0,0,2,0,0,0,1, + 0,0,0,67,0,0,0,115,7,0,0,0,124,0,0,106, + 0,0,83,41,1,122,58,82,101,116,117,114,110,32,116,104, + 101,32,112,97,116,104,32,116,111,32,116,104,101,32,115,111, + 117,114,99,101,32,102,105,108,101,32,97,115,32,102,111,117, + 110,100,32,98,121,32,116,104,101,32,102,105,110,100,101,114, + 46,41,1,114,35,0,0,0,41,2,114,71,0,0,0,114, + 164,0,0,0,114,4,0,0,0,114,4,0,0,0,114,5, + 0,0,0,114,241,0,0,0,70,6,0,0,115,2,0,0, + 0,0,3,122,23,70,105,108,101,76,111,97,100,101,114,46, + 103,101,116,95,102,105,108,101,110,97,109,101,99,2,0,0, + 0,0,0,0,0,3,0,0,0,9,0,0,0,67,0,0, + 0,115,42,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,82,88,100,2,0,83, + 41,3,122,39,82,101,116,117,114,110,32,116,104,101,32,100, + 97,116,97,32,102,114,111,109,32,112,97,116,104,32,97,115, + 32,114,97,119,32,98,121,116,101,115,46,218,1,114,78,41, + 3,114,49,0,0,0,114,50,0,0,0,90,4,114,101,97, + 100,41,3,114,71,0,0,0,114,35,0,0,0,114,54,0, + 0,0,114,4,0,0,0,114,4,0,0,0,114,5,0,0, + 0,114,42,1,0,0,75,6,0,0,115,4,0,0,0,0, + 2,21,1,122,19,70,105,108,101,76,111,97,100,101,114,46, + 103,101,116,95,100,97,116,97,41,11,114,57,0,0,0,114, + 56,0,0,0,114,58,0,0,0,114,59,0,0,0,114,72, + 0,0,0,114,233,0,0,0,114,53,1,0,0,114,162,0, + 0,0,114,6,1,0,0,114,241,0,0,0,114,42,1,0, + 0,114,4,0,0,0,114,4,0,0,0,41,1,114,228,0, + 0,0,114,5,0,0,0,114,51,1,0,0,40,6,0,0, + 115,14,0,0,0,12,3,6,2,12,6,12,4,12,3,24, + 12,18,5,114,51,1,0,0,99,0,0,0,0,0,0,0, + 0,0,0,0,0,4,0,0,0,64,0,0,0,115,64,0, + 0,0,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,41,11,114,10,1,0,0,122,62,67,111,110,99,114, + 101,116,101,32,105,109,112,108,101,109,101,110,116,97,116,105, + 111,110,32,111,102,32,83,111,117,114,99,101,76,111,97,100, + 101,114,32,117,115,105,110,103,32,116,104,101,32,102,105,108, + 101,32,115,121,115,116,101,109,46,99,2,0,0,0,0,0, + 0,0,3,0,0,0,3,0,0,0,67,0,0,0,115,36, + 0,0,0,116,0,0,124,1,0,131,1,0,125,2,0,105, + 2,0,124,2,0,106,1,0,100,1,0,54,124,2,0,106, + 2,0,100,2,0,54,83,41,3,122,33,82,101,116,117,114, + 110,32,116,104,101,32,109,101,116,97,100,97,116,97,32,102, + 111,114,32,116,104,101,32,112,97,116,104,46,114,185,0,0, + 0,114,186,0,0,0,41,3,114,39,0,0,0,218,8,115, + 116,95,109,116,105,109,101,90,7,115,116,95,115,105,122,101, + 41,3,114,71,0,0,0,114,35,0,0,0,114,49,1,0, 0,114,4,0,0,0,114,4,0,0,0,114,5,0,0,0, - 114,40,1,0,0,218,5,0,0,115,0,0,0,0,122,21, - 83,111,117,114,99,101,76,111,97,100,101,114,46,115,101,116, - 95,100,97,116,97,99,2,0,0,0,0,0,0,0,5,0, - 0,0,16,0,0,0,67,0,0,0,115,105,0,0,0,124, - 0,0,106,0,0,124,1,0,131,1,0,125,2,0,121,19, - 0,124,0,0,106,1,0,124,2,0,131,1,0,125,3,0, - 87,110,58,0,4,116,2,0,107,10,0,114,94,0,1,125, - 4,0,1,122,26,0,116,3,0,100,1,0,100,2,0,124, - 1,0,131,1,1,124,4,0,130,2,0,87,89,100,3,0, - 100,3,0,125,4,0,126,4,0,88,110,1,0,88,116,4, - 0,124,3,0,131,1,0,83,41,4,122,52,67,111,110,99, - 114,101,116,101,32,105,109,112,108,101,109,101,110,116,97,116, - 105,111,110,32,111,102,32,73,110,115,112,101,99,116,76,111, - 97,100,101,114,46,103,101,116,95,115,111,117,114,99,101,46, - 122,39,115,111,117,114,99,101,32,110,111,116,32,97,118,97, - 105,108,97,98,108,101,32,116,104,114,111,117,103,104,32,103, - 101,116,95,100,97,116,97,40,41,114,67,0,0,0,78,41, - 5,114,241,0,0,0,218,8,103,101,116,95,100,97,116,97, - 114,40,0,0,0,114,159,0,0,0,114,205,0,0,0,41, - 5,114,71,0,0,0,114,164,0,0,0,114,35,0,0,0, - 114,203,0,0,0,218,3,101,120,99,114,4,0,0,0,114, - 4,0,0,0,114,5,0,0,0,114,18,1,0,0,225,5, - 0,0,115,14,0,0,0,0,2,15,1,3,1,19,1,18, - 1,9,1,31,1,122,23,83,111,117,114,99,101,76,111,97, - 100,101,114,46,103,101,116,95,115,111,117,114,99,101,218,9, - 95,111,112,116,105,109,105,122,101,114,29,0,0,0,99,3, - 0,0,0,1,0,0,0,4,0,0,0,9,0,0,0,67, - 0,0,0,115,31,0,0,0,116,0,0,116,1,0,124,1, - 0,124,2,0,100,1,0,100,2,0,100,3,0,100,4,0, - 124,3,0,131,4,2,83,41,5,122,130,82,101,116,117,114, - 110,32,116,104,101,32,99,111,100,101,32,111,98,106,101,99, - 116,32,99,111,109,112,105,108,101,100,32,102,114,111,109,32, - 115,111,117,114,99,101,46,10,10,32,32,32,32,32,32,32, - 32,84,104,101,32,39,100,97,116,97,39,32,97,114,103,117, - 109,101,110,116,32,99,97,110,32,98,101,32,97,110,121,32, - 111,98,106,101,99,116,32,116,121,112,101,32,116,104,97,116, - 32,99,111,109,112,105,108,101,40,41,32,115,117,112,112,111, - 114,116,115,46,10,32,32,32,32,32,32,32,32,114,24,1, - 0,0,218,12,100,111,110,116,95,105,110,104,101,114,105,116, - 84,114,126,0,0,0,41,2,114,114,0,0,0,218,7,99, - 111,109,112,105,108,101,41,4,114,71,0,0,0,114,53,0, - 0,0,114,35,0,0,0,114,44,1,0,0,114,4,0,0, - 0,114,4,0,0,0,114,5,0,0,0,218,14,115,111,117, - 114,99,101,95,116,111,95,99,111,100,101,235,5,0,0,115, - 4,0,0,0,0,5,18,1,122,27,83,111,117,114,99,101, - 76,111,97,100,101,114,46,115,111,117,114,99,101,95,116,111, - 95,99,111,100,101,99,2,0,0,0,0,0,0,0,10,0, - 0,0,43,0,0,0,67,0,0,0,115,174,1,0,0,124, - 0,0,106,0,0,124,1,0,131,1,0,125,2,0,100,1, - 0,125,3,0,121,16,0,116,1,0,124,2,0,131,1,0, - 125,4,0,87,110,24,0,4,116,2,0,107,10,0,114,63, - 0,1,1,1,100,1,0,125,4,0,89,110,202,0,88,121, - 19,0,124,0,0,106,3,0,124,2,0,131,1,0,125,5, - 0,87,110,18,0,4,116,4,0,107,10,0,114,103,0,1, - 1,1,89,110,162,0,88,116,5,0,124,5,0,100,2,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,106,0,88,121, - 34,0,116,8,0,124,6,0,100,3,0,124,5,0,100,4, - 0,124,1,0,100,5,0,124,4,0,131,1,3,125,7,0, - 87,110,24,0,4,116,9,0,116,10,0,102,2,0,107,10, - 0,114,220,0,1,1,1,89,110,45,0,88,116,11,0,100, - 6,0,124,4,0,124,2,0,131,3,0,1,116,12,0,124, - 7,0,100,4,0,124,1,0,100,7,0,124,4,0,100,8, - 0,124,2,0,131,1,3,83,124,0,0,106,6,0,124,2, - 0,131,1,0,125,8,0,124,0,0,106,13,0,124,8,0, - 124,2,0,131,2,0,125,9,0,116,11,0,100,9,0,124, - 2,0,131,2,0,1,116,14,0,106,15,0,12,114,170,1, - 124,4,0,100,1,0,107,9,0,114,170,1,124,3,0,100, - 1,0,107,9,0,114,170,1,116,16,0,124,9,0,124,3, - 0,116,17,0,124,8,0,131,1,0,131,3,0,125,6,0, - 121,36,0,124,0,0,106,18,0,124,2,0,124,4,0,124, - 6,0,131,3,0,1,116,11,0,100,10,0,124,4,0,131, - 2,0,1,87,110,18,0,4,116,2,0,107,10,0,114,169, - 1,1,1,1,89,110,1,0,88,124,9,0,83,41,11,122, - 190,67,111,110,99,114,101,116,101,32,105,109,112,108,101,109, - 101,110,116,97,116,105,111,110,32,111,102,32,73,110,115,112, - 101,99,116,76,111,97,100,101,114,46,103,101,116,95,99,111, - 100,101,46,10,10,32,32,32,32,32,32,32,32,82,101,97, - 100,105,110,103,32,111,102,32,98,121,116,101,99,111,100,101, - 32,114,101,113,117,105,114,101,115,32,112,97,116,104,95,115, - 116,97,116,115,32,116,111,32,98,101,32,105,109,112,108,101, - 109,101,110,116,101,100,46,32,84,111,32,119,114,105,116,101, - 10,32,32,32,32,32,32,32,32,98,121,116,101,99,111,100, - 101,44,32,115,101,116,95,100,97,116,97,32,109,117,115,116, - 32,97,108,115,111,32,98,101,32,105,109,112,108,101,109,101, - 110,116,101,100,46,10,10,32,32,32,32,32,32,32,32,78, - 114,185,0,0,0,114,189,0,0,0,114,67,0,0,0,114, - 35,0,0,0,122,13,123,125,32,109,97,116,99,104,101,115, - 32,123,125,114,147,0,0,0,114,148,0,0,0,122,19,99, - 111,100,101,32,111,98,106,101,99,116,32,102,114,111,109,32, - 123,125,122,10,119,114,111,116,101,32,123,33,114,125,41,19, - 114,241,0,0,0,114,138,0,0,0,114,124,0,0,0,114, - 39,1,0,0,114,37,1,0,0,114,14,0,0,0,114,42, - 1,0,0,114,40,0,0,0,114,192,0,0,0,114,159,0, - 0,0,114,188,0,0,0,114,158,0,0,0,114,197,0,0, - 0,114,47,1,0,0,114,7,0,0,0,218,19,100,111,110, - 116,95,119,114,105,116,101,95,98,121,116,101,99,111,100,101, - 114,200,0,0,0,114,31,0,0,0,114,41,1,0,0,41, - 10,114,71,0,0,0,114,164,0,0,0,114,148,0,0,0, - 114,190,0,0,0,114,147,0,0,0,218,2,115,116,114,53, - 0,0,0,218,10,98,121,116,101,115,95,100,97,116,97,114, - 203,0,0,0,90,11,99,111,100,101,95,111,98,106,101,99, - 116,114,4,0,0,0,114,4,0,0,0,114,5,0,0,0, - 114,17,1,0,0,243,5,0,0,115,78,0,0,0,0,7, - 15,1,6,1,3,1,16,1,13,1,11,2,3,1,19,1, - 13,1,5,2,16,1,3,1,19,1,13,1,5,2,3,1, - 9,1,12,1,13,1,19,1,5,2,9,1,7,1,15,1, - 6,1,7,1,15,1,18,1,13,1,22,1,12,1,9,1, - 15,1,3,1,19,1,17,1,13,1,5,1,122,21,83,111, - 117,114,99,101,76,111,97,100,101,114,46,103,101,116,95,99, - 111,100,101,78,114,145,0,0,0,41,10,114,57,0,0,0, - 114,56,0,0,0,114,58,0,0,0,114,38,1,0,0,114, - 39,1,0,0,114,41,1,0,0,114,40,1,0,0,114,18, - 1,0,0,114,47,1,0,0,114,17,1,0,0,114,4,0, + 114,39,1,0,0,85,6,0,0,115,4,0,0,0,0,2, + 12,1,122,27,83,111,117,114,99,101,70,105,108,101,76,111, + 97,100,101,114,46,112,97,116,104,95,115,116,97,116,115,99, + 4,0,0,0,0,0,0,0,5,0,0,0,5,0,0,0, + 67,0,0,0,115,34,0,0,0,116,0,0,124,1,0,131, + 1,0,125,4,0,124,0,0,106,1,0,124,2,0,124,3, + 0,100,1,0,124,4,0,131,2,1,83,41,2,78,218,5, + 95,109,111,100,101,41,2,114,151,0,0,0,114,40,1,0, + 0,41,5,114,71,0,0,0,114,148,0,0,0,114,147,0, + 0,0,114,53,0,0,0,114,42,0,0,0,114,4,0,0, + 0,114,4,0,0,0,114,5,0,0,0,114,41,1,0,0, + 90,6,0,0,115,4,0,0,0,0,2,12,1,122,32,83, + 111,117,114,99,101,70,105,108,101,76,111,97,100,101,114,46, + 95,99,97,99,104,101,95,98,121,116,101,99,111,100,101,114, + 57,1,0,0,105,182,1,0,0,99,3,0,0,0,1,0, + 0,0,9,0,0,0,17,0,0,0,67,0,0,0,115,53, + 1,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,132,0,116,3,0,124,6,0,131,1,0, + 68,93,118,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,211,0,1,125,8,0,1,122,25,0, + 116,9,0,100,1,0,124,4,0,124,8,0,131,3,0,1, + 100,2,0,83,87,89,100,2,0,100,2,0,125,8,0,126, + 8,0,88,113,94,0,88,113,94,0,87,121,33,0,116,10, + 0,124,1,0,124,2,0,124,3,0,131,3,0,1,116,9, + 0,100,3,0,124,1,0,131,2,0,1,87,110,53,0,4, + 116,8,0,107,10,0,114,48,1,1,125,8,0,1,122,21, + 0,116,9,0,100,1,0,124,1,0,124,8,0,131,3,0, + 1,87,89,100,2,0,100,2,0,125,8,0,126,8,0,88, + 110,1,0,88,100,2,0,83,41,4,122,27,87,114,105,116, + 101,32,98,121,116,101,115,32,100,97,116,97,32,116,111,32, + 97,32,102,105,108,101,46,122,27,99,111,117,108,100,32,110, + 111,116,32,99,114,101,97,116,101,32,123,33,114,125,58,32, + 123,33,114,125,78,122,12,99,114,101,97,116,101,100,32,123, + 33,114,125,41,11,114,38,0,0,0,114,46,0,0,0,114, + 227,0,0,0,114,33,0,0,0,114,28,0,0,0,114,3, + 0,0,0,90,5,109,107,100,105,114,218,15,70,105,108,101, + 69,120,105,115,116,115,69,114,114,111,114,114,40,0,0,0, + 114,158,0,0,0,114,55,0,0,0,41,9,114,71,0,0, + 0,114,35,0,0,0,114,53,0,0,0,114,57,1,0,0, + 114,236,0,0,0,114,214,0,0,0,114,27,0,0,0,114, + 23,0,0,0,114,43,1,0,0,114,4,0,0,0,114,4, + 0,0,0,114,5,0,0,0,114,40,1,0,0,95,6,0, + 0,115,38,0,0,0,0,2,18,1,6,2,22,1,18,1, + 17,2,19,1,15,1,3,1,17,1,13,2,7,1,18,3, + 16,1,27,1,3,1,16,1,17,1,18,2,122,25,83,111, + 117,114,99,101,70,105,108,101,76,111,97,100,101,114,46,115, + 101,116,95,100,97,116,97,78,41,7,114,57,0,0,0,114, + 56,0,0,0,114,58,0,0,0,114,59,0,0,0,114,39, + 1,0,0,114,41,1,0,0,114,40,1,0,0,114,4,0, 0,0,114,4,0,0,0,114,4,0,0,0,114,5,0,0, - 0,114,36,1,0,0,185,5,0,0,115,14,0,0,0,12, - 2,12,8,12,13,12,10,12,7,12,10,18,8,114,36,1, - 0,0,99,0,0,0,0,0,0,0,0,0,0,0,0,4, - 0,0,0,0,0,0,0,115,112,0,0,0,101,0,0,90, - 1,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,101,7,0,135,0,0,102,1,0,100,8,0,100,9, - 0,134,0,0,131,1,0,90,8,0,101,7,0,100,10,0, - 100,11,0,132,0,0,131,1,0,90,9,0,100,12,0,100, - 13,0,132,0,0,90,10,0,135,0,0,83,41,14,218,10, - 70,105,108,101,76,111,97,100,101,114,122,103,66,97,115,101, - 32,102,105,108,101,32,108,111,97,100,101,114,32,99,108,97, - 115,115,32,119,104,105,99,104,32,105,109,112,108,101,109,101, - 110,116,115,32,116,104,101,32,108,111,97,100,101,114,32,112, - 114,111,116,111,99,111,108,32,109,101,116,104,111,100,115,32, - 116,104,97,116,10,32,32,32,32,114,101,113,117,105,114,101, - 32,102,105,108,101,32,115,121,115,116,101,109,32,117,115,97, - 103,101,46,99,3,0,0,0,0,0,0,0,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,41,2,122,75,67,97,99,104,101,32,116,104,101, - 32,109,111,100,117,108,101,32,110,97,109,101,32,97,110,100, - 32,116,104,101,32,112,97,116,104,32,116,111,32,116,104,101, - 32,102,105,108,101,32,102,111,117,110,100,32,98,121,32,116, - 104,101,10,32,32,32,32,32,32,32,32,102,105,110,100,101, - 114,46,78,41,2,114,67,0,0,0,114,35,0,0,0,41, - 3,114,71,0,0,0,114,164,0,0,0,114,35,0,0,0, - 114,4,0,0,0,114,4,0,0,0,114,5,0,0,0,114, - 72,0,0,0,44,6,0,0,115,4,0,0,0,0,3,9, - 1,122,19,70,105,108,101,76,111,97,100,101,114,46,95,95, - 105,110,105,116,95,95,99,2,0,0,0,0,0,0,0,2, - 0,0,0,2,0,0,0,67,0,0,0,115,34,0,0,0, - 124,0,0,106,0,0,124,1,0,106,0,0,107,2,0,111, - 33,0,124,0,0,106,1,0,124,1,0,106,1,0,107,2, - 0,83,41,1,78,41,2,114,228,0,0,0,114,63,0,0, - 0,41,2,114,71,0,0,0,114,231,0,0,0,114,4,0, - 0,0,114,4,0,0,0,114,5,0,0,0,114,233,0,0, - 0,50,6,0,0,115,4,0,0,0,0,1,18,1,122,17, - 70,105,108,101,76,111,97,100,101,114,46,95,95,101,113,95, - 95,99,1,0,0,0,0,0,0,0,1,0,0,0,3,0, - 0,0,67,0,0,0,115,26,0,0,0,116,0,0,124,0, - 0,106,1,0,131,1,0,116,0,0,124,0,0,106,2,0, - 131,1,0,65,83,41,1,78,41,3,218,4,104,97,115,104, - 114,67,0,0,0,114,35,0,0,0,41,1,114,71,0,0, - 0,114,4,0,0,0,114,4,0,0,0,114,5,0,0,0, - 218,8,95,95,104,97,115,104,95,95,54,6,0,0,115,2, - 0,0,0,0,1,122,19,70,105,108,101,76,111,97,100,101, - 114,46,95,95,104,97,115,104,95,95,99,2,0,0,0,0, - 0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,115, - 22,0,0,0,116,0,0,116,1,0,124,0,0,131,2,0, - 106,2,0,124,1,0,131,1,0,83,41,1,122,100,76,111, - 97,100,32,97,32,109,111,100,117,108,101,32,102,114,111,109, - 32,97,32,102,105,108,101,46,10,10,32,32,32,32,32,32, - 32,32,84,104,105,115,32,109,101,116,104,111,100,32,105,115, - 32,100,101,112,114,101,99,97,116,101,100,46,32,32,85,115, - 101,32,101,120,101,99,95,109,111,100,117,108,101,40,41,32, - 105,110,115,116,101,97,100,46,10,10,32,32,32,32,32,32, - 32,32,41,3,218,5,115,117,112,101,114,114,51,1,0,0, - 114,6,1,0,0,41,2,114,71,0,0,0,114,164,0,0, - 0,41,1,114,228,0,0,0,114,4,0,0,0,114,5,0, - 0,0,114,6,1,0,0,57,6,0,0,115,2,0,0,0, - 0,10,122,22,70,105,108,101,76,111,97,100,101,114,46,108, - 111,97,100,95,109,111,100,117,108,101,99,2,0,0,0,0, - 0,0,0,2,0,0,0,1,0,0,0,67,0,0,0,115, - 7,0,0,0,124,0,0,106,0,0,83,41,1,122,58,82, - 101,116,117,114,110,32,116,104,101,32,112,97,116,104,32,116, - 111,32,116,104,101,32,115,111,117,114,99,101,32,102,105,108, - 101,32,97,115,32,102,111,117,110,100,32,98,121,32,116,104, - 101,32,102,105,110,100,101,114,46,41,1,114,35,0,0,0, - 41,2,114,71,0,0,0,114,164,0,0,0,114,4,0,0, - 0,114,4,0,0,0,114,5,0,0,0,114,241,0,0,0, - 69,6,0,0,115,2,0,0,0,0,3,122,23,70,105,108, - 101,76,111,97,100,101,114,46,103,101,116,95,102,105,108,101, - 110,97,109,101,99,2,0,0,0,0,0,0,0,3,0,0, - 0,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,41,3,122,39,82,101,116,117,114, - 110,32,116,104,101,32,100,97,116,97,32,102,114,111,109,32, - 112,97,116,104,32,97,115,32,114,97,119,32,98,121,116,101, - 115,46,218,1,114,78,41,3,114,49,0,0,0,114,50,0, - 0,0,90,4,114,101,97,100,41,3,114,71,0,0,0,114, - 35,0,0,0,114,54,0,0,0,114,4,0,0,0,114,4, - 0,0,0,114,5,0,0,0,114,42,1,0,0,74,6,0, - 0,115,4,0,0,0,0,2,21,1,122,19,70,105,108,101, - 76,111,97,100,101,114,46,103,101,116,95,100,97,116,97,41, - 11,114,57,0,0,0,114,56,0,0,0,114,58,0,0,0, - 114,59,0,0,0,114,72,0,0,0,114,233,0,0,0,114, - 53,1,0,0,114,162,0,0,0,114,6,1,0,0,114,241, - 0,0,0,114,42,1,0,0,114,4,0,0,0,114,4,0, - 0,0,41,1,114,228,0,0,0,114,5,0,0,0,114,51, - 1,0,0,39,6,0,0,115,14,0,0,0,12,3,6,2, - 12,6,12,4,12,3,24,12,18,5,114,51,1,0,0,99, - 0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0, - 64,0,0,0,115,64,0,0,0,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,41,11,114,10,1,0,0, - 122,62,67,111,110,99,114,101,116,101,32,105,109,112,108,101, - 109,101,110,116,97,116,105,111,110,32,111,102,32,83,111,117, - 114,99,101,76,111,97,100,101,114,32,117,115,105,110,103,32, - 116,104,101,32,102,105,108,101,32,115,121,115,116,101,109,46, - 99,2,0,0,0,0,0,0,0,3,0,0,0,3,0,0, - 0,67,0,0,0,115,36,0,0,0,116,0,0,124,1,0, - 131,1,0,125,2,0,105,2,0,124,2,0,106,1,0,100, - 1,0,54,124,2,0,106,2,0,100,2,0,54,83,41,3, - 122,33,82,101,116,117,114,110,32,116,104,101,32,109,101,116, - 97,100,97,116,97,32,102,111,114,32,116,104,101,32,112,97, - 116,104,46,114,185,0,0,0,114,186,0,0,0,41,3,114, - 39,0,0,0,218,8,115,116,95,109,116,105,109,101,90,7, - 115,116,95,115,105,122,101,41,3,114,71,0,0,0,114,35, - 0,0,0,114,49,1,0,0,114,4,0,0,0,114,4,0, - 0,0,114,5,0,0,0,114,39,1,0,0,84,6,0,0, - 115,4,0,0,0,0,2,12,1,122,27,83,111,117,114,99, - 101,70,105,108,101,76,111,97,100,101,114,46,112,97,116,104, - 95,115,116,97,116,115,99,4,0,0,0,0,0,0,0,5, - 0,0,0,5,0,0,0,67,0,0,0,115,34,0,0,0, - 116,0,0,124,1,0,131,1,0,125,4,0,124,0,0,106, - 1,0,124,2,0,124,3,0,100,1,0,124,4,0,131,2, - 1,83,41,2,78,218,5,95,109,111,100,101,41,2,114,151, - 0,0,0,114,40,1,0,0,41,5,114,71,0,0,0,114, - 148,0,0,0,114,147,0,0,0,114,53,0,0,0,114,42, - 0,0,0,114,4,0,0,0,114,4,0,0,0,114,5,0, - 0,0,114,41,1,0,0,89,6,0,0,115,4,0,0,0, - 0,2,12,1,122,32,83,111,117,114,99,101,70,105,108,101, - 76,111,97,100,101,114,46,95,99,97,99,104,101,95,98,121, - 116,101,99,111,100,101,114,57,1,0,0,105,182,1,0,0, - 99,3,0,0,0,1,0,0,0,9,0,0,0,17,0,0, - 0,67,0,0,0,115,53,1,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,132,0,116,3, - 0,124,6,0,131,1,0,68,93,118,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,211,0,1, - 125,8,0,1,122,25,0,116,9,0,100,1,0,124,4,0, - 124,8,0,131,3,0,1,100,2,0,83,87,89,100,2,0, - 100,2,0,125,8,0,126,8,0,88,113,94,0,88,113,94, - 0,87,121,33,0,116,10,0,124,1,0,124,2,0,124,3, - 0,131,3,0,1,116,9,0,100,3,0,124,1,0,131,2, - 0,1,87,110,53,0,4,116,8,0,107,10,0,114,48,1, - 1,125,8,0,1,122,21,0,116,9,0,100,1,0,124,1, - 0,124,8,0,131,3,0,1,87,89,100,2,0,100,2,0, - 125,8,0,126,8,0,88,110,1,0,88,100,2,0,83,41, - 4,122,27,87,114,105,116,101,32,98,121,116,101,115,32,100, - 97,116,97,32,116,111,32,97,32,102,105,108,101,46,122,27, - 99,111,117,108,100,32,110,111,116,32,99,114,101,97,116,101, - 32,123,33,114,125,58,32,123,33,114,125,78,122,12,99,114, - 101,97,116,101,100,32,123,33,114,125,41,11,114,38,0,0, - 0,114,46,0,0,0,114,227,0,0,0,114,33,0,0,0, - 114,28,0,0,0,114,3,0,0,0,90,5,109,107,100,105, - 114,218,15,70,105,108,101,69,120,105,115,116,115,69,114,114, - 111,114,114,40,0,0,0,114,158,0,0,0,114,55,0,0, - 0,41,9,114,71,0,0,0,114,35,0,0,0,114,53,0, - 0,0,114,57,1,0,0,114,236,0,0,0,114,214,0,0, - 0,114,27,0,0,0,114,23,0,0,0,114,43,1,0,0, - 114,4,0,0,0,114,4,0,0,0,114,5,0,0,0,114, - 40,1,0,0,94,6,0,0,115,38,0,0,0,0,2,18, - 1,6,2,22,1,18,1,17,2,19,1,15,1,3,1,17, - 1,13,2,7,1,18,3,16,1,27,1,3,1,16,1,17, - 1,18,2,122,25,83,111,117,114,99,101,70,105,108,101,76, - 111,97,100,101,114,46,115,101,116,95,100,97,116,97,78,41, - 7,114,57,0,0,0,114,56,0,0,0,114,58,0,0,0, - 114,59,0,0,0,114,39,1,0,0,114,41,1,0,0,114, - 40,1,0,0,114,4,0,0,0,114,4,0,0,0,114,4, - 0,0,0,114,5,0,0,0,114,10,1,0,0,80,6,0, - 0,115,8,0,0,0,12,2,6,2,12,5,12,5,114,10, - 1,0,0,99,0,0,0,0,0,0,0,0,0,0,0,0, - 2,0,0,0,64,0,0,0,115,46,0,0,0,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,41,7,114,9,1, - 0,0,122,45,76,111,97,100,101,114,32,119,104,105,99,104, - 32,104,97,110,100,108,101,115,32,115,111,117,114,99,101,108, - 101,115,115,32,102,105,108,101,32,105,109,112,111,114,116,115, - 46,99,2,0,0,0,0,0,0,0,5,0,0,0,6,0, - 0,0,67,0,0,0,115,76,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,116,2,0,124,3,0,100, - 1,0,124,1,0,100,2,0,124,2,0,131,1,2,125,4, - 0,116,3,0,124,4,0,100,1,0,124,1,0,100,3,0, - 124,2,0,131,1,2,83,41,4,78,114,67,0,0,0,114, - 35,0,0,0,114,147,0,0,0,41,4,114,241,0,0,0, - 114,42,1,0,0,114,192,0,0,0,114,197,0,0,0,41, - 5,114,71,0,0,0,114,164,0,0,0,114,35,0,0,0, - 114,53,0,0,0,114,50,1,0,0,114,4,0,0,0,114, - 4,0,0,0,114,5,0,0,0,114,17,1,0,0,127,6, - 0,0,115,8,0,0,0,0,1,15,1,15,1,24,1,122, - 29,83,111,117,114,99,101,108,101,115,115,70,105,108,101,76, - 111,97,100,101,114,46,103,101,116,95,99,111,100,101,99,2, - 0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,67, - 0,0,0,115,4,0,0,0,100,1,0,83,41,2,122,39, - 82,101,116,117,114,110,32,78,111,110,101,32,97,115,32,116, - 104,101,114,101,32,105,115,32,110,111,32,115,111,117,114,99, - 101,32,99,111,100,101,46,78,114,4,0,0,0,41,2,114, - 71,0,0,0,114,164,0,0,0,114,4,0,0,0,114,4, - 0,0,0,114,5,0,0,0,114,18,1,0,0,133,6,0, - 0,115,2,0,0,0,0,2,122,31,83,111,117,114,99,101, + 0,114,10,1,0,0,81,6,0,0,115,8,0,0,0,12, + 2,6,2,12,5,12,5,114,10,1,0,0,99,0,0,0, + 0,0,0,0,0,0,0,0,0,2,0,0,0,64,0,0, + 0,115,46,0,0,0,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,41,7,114,9,1,0,0,122,45,76,111,97, + 100,101,114,32,119,104,105,99,104,32,104,97,110,100,108,101, + 115,32,115,111,117,114,99,101,108,101,115,115,32,102,105,108, + 101,32,105,109,112,111,114,116,115,46,99,2,0,0,0,0, + 0,0,0,5,0,0,0,6,0,0,0,67,0,0,0,115, + 76,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,116,2,0,124,3,0,100,1,0,124,1,0,100,2, + 0,124,2,0,131,1,2,125,4,0,116,3,0,124,4,0, + 100,1,0,124,1,0,100,3,0,124,2,0,131,1,2,83, + 41,4,78,114,67,0,0,0,114,35,0,0,0,114,147,0, + 0,0,41,4,114,241,0,0,0,114,42,1,0,0,114,192, + 0,0,0,114,197,0,0,0,41,5,114,71,0,0,0,114, + 164,0,0,0,114,35,0,0,0,114,53,0,0,0,114,50, + 1,0,0,114,4,0,0,0,114,4,0,0,0,114,5,0, + 0,0,114,17,1,0,0,128,6,0,0,115,8,0,0,0, + 0,1,15,1,15,1,24,1,122,29,83,111,117,114,99,101, 108,101,115,115,70,105,108,101,76,111,97,100,101,114,46,103, - 101,116,95,115,111,117,114,99,101,78,41,6,114,57,0,0, - 0,114,56,0,0,0,114,58,0,0,0,114,59,0,0,0, - 114,17,1,0,0,114,18,1,0,0,114,4,0,0,0,114, - 4,0,0,0,114,4,0,0,0,114,5,0,0,0,114,9, - 1,0,0,123,6,0,0,115,6,0,0,0,12,2,6,2, - 12,6,114,9,1,0,0,99,0,0,0,0,0,0,0,0, - 0,0,0,0,3,0,0,0,64,0,0,0,115,130,0,0, - 0,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,101,7,0,100,8,0,100,9,0, - 132,0,0,131,1,0,90,8,0,100,10,0,100,11,0,132, - 0,0,90,9,0,100,12,0,100,13,0,132,0,0,90,10, - 0,100,14,0,100,15,0,132,0,0,90,11,0,101,7,0, - 100,16,0,100,17,0,132,0,0,131,1,0,90,12,0,100, - 18,0,83,41,19,218,19,69,120,116,101,110,115,105,111,110, - 70,105,108,101,76,111,97,100,101,114,122,93,76,111,97,100, - 101,114,32,102,111,114,32,101,120,116,101,110,115,105,111,110, - 32,109,111,100,117,108,101,115,46,10,10,32,32,32,32,84, - 104,101,32,99,111,110,115,116,114,117,99,116,111,114,32,105, - 115,32,100,101,115,105,103,110,101,100,32,116,111,32,119,111, - 114,107,32,119,105,116,104,32,70,105,108,101,70,105,110,100, - 101,114,46,10,10,32,32,32,32,99,3,0,0,0,0,0, - 0,0,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,41,1,78,41,2,114,67, - 0,0,0,114,35,0,0,0,41,3,114,71,0,0,0,114, - 67,0,0,0,114,35,0,0,0,114,4,0,0,0,114,4, - 0,0,0,114,5,0,0,0,114,72,0,0,0,150,6,0, - 0,115,4,0,0,0,0,1,9,1,122,28,69,120,116,101, - 110,115,105,111,110,70,105,108,101,76,111,97,100,101,114,46, - 95,95,105,110,105,116,95,95,99,2,0,0,0,0,0,0, - 0,2,0,0,0,2,0,0,0,67,0,0,0,115,34,0, - 0,0,124,0,0,106,0,0,124,1,0,106,0,0,107,2, - 0,111,33,0,124,0,0,106,1,0,124,1,0,106,1,0, - 107,2,0,83,41,1,78,41,2,114,228,0,0,0,114,63, - 0,0,0,41,2,114,71,0,0,0,114,231,0,0,0,114, - 4,0,0,0,114,4,0,0,0,114,5,0,0,0,114,233, - 0,0,0,154,6,0,0,115,4,0,0,0,0,1,18,1, - 122,26,69,120,116,101,110,115,105,111,110,70,105,108,101,76, - 111,97,100,101,114,46,95,95,101,113,95,95,99,1,0,0, - 0,0,0,0,0,1,0,0,0,3,0,0,0,67,0,0, - 0,115,26,0,0,0,116,0,0,124,0,0,106,1,0,131, - 1,0,116,0,0,124,0,0,106,2,0,131,1,0,65,83, - 41,1,78,41,3,114,52,1,0,0,114,67,0,0,0,114, - 35,0,0,0,41,1,114,71,0,0,0,114,4,0,0,0, - 114,4,0,0,0,114,5,0,0,0,114,53,1,0,0,158, - 6,0,0,115,2,0,0,0,0,1,122,28,69,120,116,101, - 110,115,105,111,110,70,105,108,101,76,111,97,100,101,114,46, - 95,95,104,97,115,104,95,95,99,2,0,0,0,0,0,0, - 0,4,0,0,0,11,0,0,0,67,0,0,0,115,177,0, - 0,0,116,0,0,124,1,0,131,1,0,143,29,0,1,116, - 1,0,116,2,0,106,3,0,124,1,0,124,0,0,106,4, - 0,131,3,0,125,2,0,87,100,1,0,81,88,116,5,0, - 100,2,0,124,0,0,106,4,0,131,2,0,1,124,0,0, - 106,6,0,124,1,0,131,1,0,125,3,0,124,3,0,114, - 121,0,116,7,0,124,2,0,100,3,0,131,2,0,12,114, - 121,0,116,8,0,124,0,0,106,4,0,131,1,0,100,4, - 0,25,103,1,0,124,2,0,95,9,0,124,0,0,124,2, - 0,95,10,0,124,2,0,106,11,0,124,2,0,95,12,0, - 124,3,0,115,173,0,124,2,0,106,12,0,106,13,0,100, - 5,0,131,1,0,100,4,0,25,124,2,0,95,12,0,124, - 2,0,83,41,6,122,25,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, - 78,122,33,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,114,250,0,0,0,114,84,0,0,0,114,117, - 0,0,0,41,14,114,69,0,0,0,114,114,0,0,0,114, - 106,0,0,0,90,12,108,111,97,100,95,100,121,110,97,109, - 105,99,114,35,0,0,0,114,158,0,0,0,114,223,0,0, - 0,114,60,0,0,0,114,38,0,0,0,114,250,0,0,0, - 114,206,0,0,0,114,57,0,0,0,114,253,0,0,0,114, - 32,0,0,0,41,4,114,71,0,0,0,114,164,0,0,0, - 114,181,0,0,0,114,223,0,0,0,114,4,0,0,0,114, - 4,0,0,0,114,5,0,0,0,114,6,1,0,0,161,6, - 0,0,115,24,0,0,0,0,5,13,1,9,1,21,1,16, - 1,15,1,22,1,25,1,9,1,12,1,6,1,25,1,122, - 31,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,41,4,122,49,82,101, - 116,117,114,110,32,84,114,117,101,32,105,102,32,116,104,101, - 32,101,120,116,101,110,115,105,111,110,32,109,111,100,117,108, - 101,32,105,115,32,97,32,112,97,99,107,97,103,101,46,114, - 29,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,41,2,114, - 72,0,0,0,78,114,4,0,0,0,41,2,114,22,0,0, - 0,218,6,115,117,102,102,105,120,41,1,218,9,102,105,108, - 101,95,110,97,109,101,114,4,0,0,0,114,5,0,0,0, - 114,77,0,0,0,182,6,0,0,115,2,0,0,0,6,1, - 122,49,69,120,116,101,110,115,105,111,110,70,105,108,101,76, - 111,97,100,101,114,46,105,115,95,112,97,99,107,97,103,101, - 46,60,108,111,99,97,108,115,62,46,60,103,101,110,101,120, - 112,114,62,41,4,114,38,0,0,0,114,35,0,0,0,114, - 78,0,0,0,218,18,69,88,84,69,78,83,73,79,78,95, - 83,85,70,70,73,88,69,83,41,2,114,71,0,0,0,114, - 164,0,0,0,114,4,0,0,0,41,1,114,61,1,0,0, - 114,5,0,0,0,114,223,0,0,0,179,6,0,0,115,6, - 0,0,0,0,2,19,1,18,1,122,30,69,120,116,101,110, - 115,105,111,110,70,105,108,101,76,111,97,100,101,114,46,105, - 115,95,112,97,99,107,97,103,101,99,2,0,0,0,0,0, - 0,0,2,0,0,0,1,0,0,0,67,0,0,0,115,4, - 0,0,0,100,1,0,83,41,2,122,63,82,101,116,117,114, - 110,32,78,111,110,101,32,97,115,32,97,110,32,101,120,116, - 101,110,115,105,111,110,32,109,111,100,117,108,101,32,99,97, - 110,110,111,116,32,99,114,101,97,116,101,32,97,32,99,111, - 100,101,32,111,98,106,101,99,116,46,78,114,4,0,0,0, - 41,2,114,71,0,0,0,114,164,0,0,0,114,4,0,0, - 0,114,4,0,0,0,114,5,0,0,0,114,17,1,0,0, - 185,6,0,0,115,2,0,0,0,0,2,122,28,69,120,116, - 101,110,115,105,111,110,70,105,108,101,76,111,97,100,101,114, - 46,103,101,116,95,99,111,100,101,99,2,0,0,0,0,0, - 0,0,2,0,0,0,1,0,0,0,67,0,0,0,115,4, - 0,0,0,100,1,0,83,41,2,122,53,82,101,116,117,114, - 110,32,78,111,110,101,32,97,115,32,101,120,116,101,110,115, - 105,111,110,32,109,111,100,117,108,101,115,32,104,97,118,101, + 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,41,2,122,39,82,101,116,117,114,110,32, + 78,111,110,101,32,97,115,32,116,104,101,114,101,32,105,115, 32,110,111,32,115,111,117,114,99,101,32,99,111,100,101,46, 78,114,4,0,0,0,41,2,114,71,0,0,0,114,164,0, 0,0,114,4,0,0,0,114,4,0,0,0,114,5,0,0, - 0,114,18,1,0,0,189,6,0,0,115,2,0,0,0,0, - 2,122,30,69,120,116,101,110,115,105,111,110,70,105,108,101, - 76,111,97,100,101,114,46,103,101,116,95,115,111,117,114,99, - 101,99,2,0,0,0,0,0,0,0,2,0,0,0,1,0, - 0,0,67,0,0,0,115,7,0,0,0,124,0,0,106,0, - 0,83,41,1,122,58,82,101,116,117,114,110,32,116,104,101, - 32,112,97,116,104,32,116,111,32,116,104,101,32,115,111,117, - 114,99,101,32,102,105,108,101,32,97,115,32,102,111,117,110, - 100,32,98,121,32,116,104,101,32,102,105,110,100,101,114,46, - 41,1,114,35,0,0,0,41,2,114,71,0,0,0,114,164, + 0,114,18,1,0,0,134,6,0,0,115,2,0,0,0,0, + 2,122,31,83,111,117,114,99,101,108,101,115,115,70,105,108, + 101,76,111,97,100,101,114,46,103,101,116,95,115,111,117,114, + 99,101,78,41,6,114,57,0,0,0,114,56,0,0,0,114, + 58,0,0,0,114,59,0,0,0,114,17,1,0,0,114,18, + 1,0,0,114,4,0,0,0,114,4,0,0,0,114,4,0, + 0,0,114,5,0,0,0,114,9,1,0,0,124,6,0,0, + 115,6,0,0,0,12,2,6,2,12,6,114,9,1,0,0, + 99,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0, + 0,64,0,0,0,115,130,0,0,0,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, + 101,7,0,100,8,0,100,9,0,132,0,0,131,1,0,90, + 8,0,100,10,0,100,11,0,132,0,0,90,9,0,100,12, + 0,100,13,0,132,0,0,90,10,0,100,14,0,100,15,0, + 132,0,0,90,11,0,101,7,0,100,16,0,100,17,0,132, + 0,0,131,1,0,90,12,0,100,18,0,83,41,19,218,19, + 69,120,116,101,110,115,105,111,110,70,105,108,101,76,111,97, + 100,101,114,122,93,76,111,97,100,101,114,32,102,111,114,32, + 101,120,116,101,110,115,105,111,110,32,109,111,100,117,108,101, + 115,46,10,10,32,32,32,32,84,104,101,32,99,111,110,115, + 116,114,117,99,116,111,114,32,105,115,32,100,101,115,105,103, + 110,101,100,32,116,111,32,119,111,114,107,32,119,105,116,104, + 32,70,105,108,101,70,105,110,100,101,114,46,10,10,32,32, + 32,32,99,3,0,0,0,0,0,0,0,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,41,1,78,41,2,114,67,0,0,0,114,35,0,0, + 0,41,3,114,71,0,0,0,114,67,0,0,0,114,35,0, + 0,0,114,4,0,0,0,114,4,0,0,0,114,5,0,0, + 0,114,72,0,0,0,151,6,0,0,115,4,0,0,0,0, + 1,9,1,122,28,69,120,116,101,110,115,105,111,110,70,105, + 108,101,76,111,97,100,101,114,46,95,95,105,110,105,116,95, + 95,99,2,0,0,0,0,0,0,0,2,0,0,0,2,0, + 0,0,67,0,0,0,115,34,0,0,0,124,0,0,106,0, + 0,124,1,0,106,0,0,107,2,0,111,33,0,124,0,0, + 106,1,0,124,1,0,106,1,0,107,2,0,83,41,1,78, + 41,2,114,228,0,0,0,114,63,0,0,0,41,2,114,71, + 0,0,0,114,231,0,0,0,114,4,0,0,0,114,4,0, + 0,0,114,5,0,0,0,114,233,0,0,0,155,6,0,0, + 115,4,0,0,0,0,1,18,1,122,26,69,120,116,101,110, + 115,105,111,110,70,105,108,101,76,111,97,100,101,114,46,95, + 95,101,113,95,95,99,1,0,0,0,0,0,0,0,1,0, + 0,0,3,0,0,0,67,0,0,0,115,26,0,0,0,116, + 0,0,124,0,0,106,1,0,131,1,0,116,0,0,124,0, + 0,106,2,0,131,1,0,65,83,41,1,78,41,3,114,52, + 1,0,0,114,67,0,0,0,114,35,0,0,0,41,1,114, + 71,0,0,0,114,4,0,0,0,114,4,0,0,0,114,5, + 0,0,0,114,53,1,0,0,159,6,0,0,115,2,0,0, + 0,0,1,122,28,69,120,116,101,110,115,105,111,110,70,105, + 108,101,76,111,97,100,101,114,46,95,95,104,97,115,104,95, + 95,99,2,0,0,0,0,0,0,0,4,0,0,0,11,0, + 0,0,67,0,0,0,115,178,0,0,0,116,0,0,124,1, + 0,131,1,0,143,29,0,1,116,1,0,116,2,0,106,3, + 0,124,1,0,124,0,0,106,4,0,131,3,0,125,2,0, + 87,100,1,0,81,82,88,116,5,0,100,2,0,124,0,0, + 106,4,0,131,2,0,1,124,0,0,106,6,0,124,1,0, + 131,1,0,125,3,0,124,3,0,114,122,0,116,7,0,124, + 2,0,100,3,0,131,2,0,12,114,122,0,116,8,0,124, + 0,0,106,4,0,131,1,0,100,4,0,25,103,1,0,124, + 2,0,95,9,0,124,0,0,124,2,0,95,10,0,124,2, + 0,106,11,0,124,2,0,95,12,0,124,3,0,115,174,0, + 124,2,0,106,12,0,106,13,0,100,5,0,131,1,0,100, + 4,0,25,124,2,0,95,12,0,124,2,0,83,41,6,122, + 25,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,78,122,33,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,114,250, + 0,0,0,114,84,0,0,0,114,117,0,0,0,41,14,114, + 69,0,0,0,114,114,0,0,0,114,106,0,0,0,90,12, + 108,111,97,100,95,100,121,110,97,109,105,99,114,35,0,0, + 0,114,158,0,0,0,114,223,0,0,0,114,60,0,0,0, + 114,38,0,0,0,114,250,0,0,0,114,206,0,0,0,114, + 57,0,0,0,114,253,0,0,0,114,32,0,0,0,41,4, + 114,71,0,0,0,114,164,0,0,0,114,181,0,0,0,114, + 223,0,0,0,114,4,0,0,0,114,4,0,0,0,114,5, + 0,0,0,114,6,1,0,0,162,6,0,0,115,24,0,0, + 0,0,5,13,1,9,1,22,1,16,1,15,1,22,1,25, + 1,9,1,12,1,6,1,25,1,122,31,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,41,4,122,49,82,101,116,117,114,110,32,84, + 114,117,101,32,105,102,32,116,104,101,32,101,120,116,101,110, + 115,105,111,110,32,109,111,100,117,108,101,32,105,115,32,97, + 32,112,97,99,107,97,103,101,46,114,29,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,41,2,114,72,0,0,0,78,114, + 4,0,0,0,41,2,114,22,0,0,0,218,6,115,117,102, + 102,105,120,41,1,218,9,102,105,108,101,95,110,97,109,101, + 114,4,0,0,0,114,5,0,0,0,114,77,0,0,0,183, + 6,0,0,115,2,0,0,0,6,1,122,49,69,120,116,101, + 110,115,105,111,110,70,105,108,101,76,111,97,100,101,114,46, + 105,115,95,112,97,99,107,97,103,101,46,60,108,111,99,97, + 108,115,62,46,60,103,101,110,101,120,112,114,62,41,4,114, + 38,0,0,0,114,35,0,0,0,114,78,0,0,0,218,18, + 69,88,84,69,78,83,73,79,78,95,83,85,70,70,73,88, + 69,83,41,2,114,71,0,0,0,114,164,0,0,0,114,4, + 0,0,0,41,1,114,61,1,0,0,114,5,0,0,0,114, + 223,0,0,0,180,6,0,0,115,6,0,0,0,0,2,19, + 1,18,1,122,30,69,120,116,101,110,115,105,111,110,70,105, + 108,101,76,111,97,100,101,114,46,105,115,95,112,97,99,107, + 97,103,101,99,2,0,0,0,0,0,0,0,2,0,0,0, + 1,0,0,0,67,0,0,0,115,4,0,0,0,100,1,0, + 83,41,2,122,63,82,101,116,117,114,110,32,78,111,110,101, + 32,97,115,32,97,110,32,101,120,116,101,110,115,105,111,110, + 32,109,111,100,117,108,101,32,99,97,110,110,111,116,32,99, + 114,101,97,116,101,32,97,32,99,111,100,101,32,111,98,106, + 101,99,116,46,78,114,4,0,0,0,41,2,114,71,0,0, + 0,114,164,0,0,0,114,4,0,0,0,114,4,0,0,0, + 114,5,0,0,0,114,17,1,0,0,186,6,0,0,115,2, + 0,0,0,0,2,122,28,69,120,116,101,110,115,105,111,110, + 70,105,108,101,76,111,97,100,101,114,46,103,101,116,95,99, + 111,100,101,99,2,0,0,0,0,0,0,0,2,0,0,0, + 1,0,0,0,67,0,0,0,115,4,0,0,0,100,1,0, + 83,41,2,122,53,82,101,116,117,114,110,32,78,111,110,101, + 32,97,115,32,101,120,116,101,110,115,105,111,110,32,109,111, + 100,117,108,101,115,32,104,97,118,101,32,110,111,32,115,111, + 117,114,99,101,32,99,111,100,101,46,78,114,4,0,0,0, + 41,2,114,71,0,0,0,114,164,0,0,0,114,4,0,0, + 0,114,4,0,0,0,114,5,0,0,0,114,18,1,0,0, + 190,6,0,0,115,2,0,0,0,0,2,122,30,69,120,116, + 101,110,115,105,111,110,70,105,108,101,76,111,97,100,101,114, + 46,103,101,116,95,115,111,117,114,99,101,99,2,0,0,0, + 0,0,0,0,2,0,0,0,1,0,0,0,67,0,0,0, + 115,7,0,0,0,124,0,0,106,0,0,83,41,1,122,58, + 82,101,116,117,114,110,32,116,104,101,32,112,97,116,104,32, + 116,111,32,116,104,101,32,115,111,117,114,99,101,32,102,105, + 108,101,32,97,115,32,102,111,117,110,100,32,98,121,32,116, + 104,101,32,102,105,110,100,101,114,46,41,1,114,35,0,0, + 0,41,2,114,71,0,0,0,114,164,0,0,0,114,4,0, + 0,0,114,4,0,0,0,114,5,0,0,0,114,241,0,0, + 0,194,6,0,0,115,2,0,0,0,0,3,122,32,69,120, + 116,101,110,115,105,111,110,70,105,108,101,76,111,97,100,101, + 114,46,103,101,116,95,102,105,108,101,110,97,109,101,78,41, + 13,114,57,0,0,0,114,56,0,0,0,114,58,0,0,0, + 114,59,0,0,0,114,72,0,0,0,114,233,0,0,0,114, + 53,1,0,0,114,162,0,0,0,114,6,1,0,0,114,223, + 0,0,0,114,17,1,0,0,114,18,1,0,0,114,241,0, + 0,0,114,4,0,0,0,114,4,0,0,0,114,4,0,0, + 0,114,5,0,0,0,114,59,1,0,0,143,6,0,0,115, + 18,0,0,0,12,6,6,2,12,4,12,4,12,3,18,18, + 12,6,12,4,12,4,114,59,1,0,0,99,0,0,0,0, + 0,0,0,0,0,0,0,0,2,0,0,0,64,0,0,0, + 115,130,0,0,0,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,41,21,218,14,95,78,97,109,101, + 115,112,97,99,101,80,97,116,104,97,38,1,0,0,82,101, + 112,114,101,115,101,110,116,115,32,97,32,110,97,109,101,115, + 112,97,99,101,32,112,97,99,107,97,103,101,39,115,32,112, + 97,116,104,46,32,32,73,116,32,117,115,101,115,32,116,104, + 101,32,109,111,100,117,108,101,32,110,97,109,101,10,32,32, + 32,32,116,111,32,102,105,110,100,32,105,116,115,32,112,97, + 114,101,110,116,32,109,111,100,117,108,101,44,32,97,110,100, + 32,102,114,111,109,32,116,104,101,114,101,32,105,116,32,108, + 111,111,107,115,32,117,112,32,116,104,101,32,112,97,114,101, + 110,116,39,115,10,32,32,32,32,95,95,112,97,116,104,95, + 95,46,32,32,87,104,101,110,32,116,104,105,115,32,99,104, + 97,110,103,101,115,44,32,116,104,101,32,109,111,100,117,108, + 101,39,115,32,111,119,110,32,112,97,116,104,32,105,115,32, + 114,101,99,111,109,112,117,116,101,100,44,10,32,32,32,32, + 117,115,105,110,103,32,112,97,116,104,95,102,105,110,100,101, + 114,46,32,32,70,111,114,32,116,111,112,45,108,101,118,101, + 108,32,109,111,100,117,108,101,115,44,32,116,104,101,32,112, + 97,114,101,110,116,32,109,111,100,117,108,101,39,115,32,112, + 97,116,104,10,32,32,32,32,105,115,32,115,121,115,46,112, + 97,116,104,46,99,4,0,0,0,0,0,0,0,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,41,1,78,41,6,114,70,0,0,0,114,0,1,0, + 0,114,235,0,0,0,218,16,95,103,101,116,95,112,97,114, + 101,110,116,95,112,97,116,104,218,17,95,108,97,115,116,95, + 112,97,114,101,110,116,95,112,97,116,104,218,12,95,112,97, + 116,104,95,102,105,110,100,101,114,41,4,114,71,0,0,0, + 114,67,0,0,0,114,35,0,0,0,218,11,112,97,116,104, + 95,102,105,110,100,101,114,114,4,0,0,0,114,4,0,0, + 0,114,5,0,0,0,114,72,0,0,0,207,6,0,0,115, + 8,0,0,0,0,1,9,1,9,1,21,1,122,23,95,78, + 97,109,101,115,112,97,99,101,80,97,116,104,46,95,95,105, + 110,105,116,95,95,99,1,0,0,0,0,0,0,0,4,0, + 0,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,41,7,122,62,82,101,116,117,114,110,115,32, + 97,32,116,117,112,108,101,32,111,102,32,40,112,97,114,101, + 110,116,45,109,111,100,117,108,101,45,110,97,109,101,44,32, + 112,97,114,101,110,116,45,112,97,116,104,45,97,116,116,114, + 45,110,97,109,101,41,114,117,0,0,0,114,30,0,0,0, + 114,7,0,0,0,114,35,0,0,0,114,250,0,0,0,41, + 2,122,3,115,121,115,122,4,112,97,116,104,41,2,114,70, + 0,0,0,114,32,0,0,0,41,4,114,71,0,0,0,114, + 236,0,0,0,218,3,100,111,116,114,94,0,0,0,114,4, + 0,0,0,114,4,0,0,0,114,5,0,0,0,218,23,95, + 102,105,110,100,95,112,97,114,101,110,116,95,112,97,116,104, + 95,110,97,109,101,115,213,6,0,0,115,8,0,0,0,0, + 2,27,1,12,2,4,3,122,38,95,78,97,109,101,115,112, + 97,99,101,80,97,116,104,46,95,102,105,110,100,95,112,97, + 114,101,110,116,95,112,97,116,104,95,110,97,109,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,41, + 1,78,41,4,114,69,1,0,0,114,62,0,0,0,114,7, + 0,0,0,114,73,0,0,0,41,3,114,71,0,0,0,90, + 18,112,97,114,101,110,116,95,109,111,100,117,108,101,95,110, + 97,109,101,90,14,112,97,116,104,95,97,116,116,114,95,110, + 97,109,101,114,4,0,0,0,114,4,0,0,0,114,5,0, + 0,0,114,64,1,0,0,223,6,0,0,115,4,0,0,0, + 0,1,18,1,122,31,95,78,97,109,101,115,112,97,99,101, + 80,97,116,104,46,95,103,101,116,95,112,97,114,101,110,116, + 95,112,97,116,104,99,1,0,0,0,0,0,0,0,3,0, + 0,0,3,0,0,0,67,0,0,0,115,118,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,111,0, + 124,0,0,106,3,0,124,0,0,106,4,0,124,1,0,131, + 2,0,125,2,0,124,2,0,100,0,0,107,9,0,114,102, + 0,124,2,0,106,5,0,100,0,0,107,8,0,114,102,0, + 124,2,0,106,6,0,114,102,0,124,2,0,106,6,0,124, + 0,0,95,7,0,124,1,0,124,0,0,95,2,0,124,0, + 0,106,7,0,83,41,1,78,41,8,114,235,0,0,0,114, + 64,1,0,0,114,65,1,0,0,114,66,1,0,0,114,70, + 0,0,0,114,173,0,0,0,114,224,0,0,0,114,0,1, + 0,0,41,3,114,71,0,0,0,90,11,112,97,114,101,110, + 116,95,112,97,116,104,114,180,0,0,0,114,4,0,0,0, + 114,4,0,0,0,114,5,0,0,0,218,12,95,114,101,99, + 97,108,99,117,108,97,116,101,227,6,0,0,115,16,0,0, + 0,0,2,18,1,15,1,21,3,27,1,9,1,12,1,9, + 1,122,27,95,78,97,109,101,115,112,97,99,101,80,97,116, + 104,46,95,114,101,99,97,108,99,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,41,1,78,41,2,218,4,105, + 116,101,114,114,70,1,0,0,41,1,114,71,0,0,0,114, + 4,0,0,0,114,4,0,0,0,114,5,0,0,0,218,8, + 95,95,105,116,101,114,95,95,240,6,0,0,115,2,0,0, + 0,0,1,122,23,95,78,97,109,101,115,112,97,99,101,80, + 97,116,104,46,95,95,105,116,101,114,95,95,99,1,0,0, + 0,0,0,0,0,1,0,0,0,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,41,1,78,41,2,114,31,0,0,0, + 114,70,1,0,0,41,1,114,71,0,0,0,114,4,0,0, + 0,114,4,0,0,0,114,5,0,0,0,218,7,95,95,108, + 101,110,95,95,243,6,0,0,115,2,0,0,0,0,1,122, + 22,95,78,97,109,101,115,112,97,99,101,80,97,116,104,46, + 95,95,108,101,110,95,95,99,1,0,0,0,0,0,0,0, + 1,0,0,0,2,0,0,0,67,0,0,0,115,16,0,0, + 0,100,1,0,106,0,0,124,0,0,106,1,0,131,1,0, + 83,41,2,78,122,20,95,78,97,109,101,115,112,97,99,101, + 80,97,116,104,40,123,33,114,125,41,41,2,114,47,0,0, + 0,114,0,1,0,0,41,1,114,71,0,0,0,114,4,0, + 0,0,114,4,0,0,0,114,5,0,0,0,114,101,0,0, + 0,246,6,0,0,115,2,0,0,0,0,1,122,23,95,78, + 97,109,101,115,112,97,99,101,80,97,116,104,46,95,95,114, + 101,112,114,95,95,99,2,0,0,0,0,0,0,0,2,0, + 0,0,2,0,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,41, + 1,78,41,1,114,70,1,0,0,41,2,114,71,0,0,0, + 218,4,105,116,101,109,114,4,0,0,0,114,4,0,0,0, + 114,5,0,0,0,218,12,95,95,99,111,110,116,97,105,110, + 115,95,95,249,6,0,0,115,2,0,0,0,0,1,122,27, + 95,78,97,109,101,115,112,97,99,101,80,97,116,104,46,95, + 95,99,111,110,116,97,105,110,115,95,95,99,2,0,0,0, + 0,0,0,0,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,41,1,78,41,2,114,0, + 1,0,0,114,227,0,0,0,41,2,114,71,0,0,0,114, + 74,1,0,0,114,4,0,0,0,114,4,0,0,0,114,5, + 0,0,0,114,227,0,0,0,252,6,0,0,115,2,0,0, + 0,0,1,122,21,95,78,97,109,101,115,112,97,99,101,80, + 97,116,104,46,97,112,112,101,110,100,78,41,13,114,57,0, + 0,0,114,56,0,0,0,114,58,0,0,0,114,59,0,0, + 0,114,72,0,0,0,114,69,1,0,0,114,64,1,0,0, + 114,70,1,0,0,114,72,1,0,0,114,73,1,0,0,114, + 101,0,0,0,114,75,1,0,0,114,227,0,0,0,114,4, 0,0,0,114,4,0,0,0,114,4,0,0,0,114,5,0, - 0,0,114,241,0,0,0,193,6,0,0,115,2,0,0,0, - 0,3,122,32,69,120,116,101,110,115,105,111,110,70,105,108, - 101,76,111,97,100,101,114,46,103,101,116,95,102,105,108,101, - 110,97,109,101,78,41,13,114,57,0,0,0,114,56,0,0, - 0,114,58,0,0,0,114,59,0,0,0,114,72,0,0,0, - 114,233,0,0,0,114,53,1,0,0,114,162,0,0,0,114, - 6,1,0,0,114,223,0,0,0,114,17,1,0,0,114,18, - 1,0,0,114,241,0,0,0,114,4,0,0,0,114,4,0, - 0,0,114,4,0,0,0,114,5,0,0,0,114,59,1,0, - 0,142,6,0,0,115,18,0,0,0,12,6,6,2,12,4, - 12,4,12,3,18,18,12,6,12,4,12,4,114,59,1,0, - 0,99,0,0,0,0,0,0,0,0,0,0,0,0,2,0, - 0,0,64,0,0,0,115,130,0,0,0,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,41,21,218, - 14,95,78,97,109,101,115,112,97,99,101,80,97,116,104,97, - 38,1,0,0,82,101,112,114,101,115,101,110,116,115,32,97, - 32,110,97,109,101,115,112,97,99,101,32,112,97,99,107,97, - 103,101,39,115,32,112,97,116,104,46,32,32,73,116,32,117, - 115,101,115,32,116,104,101,32,109,111,100,117,108,101,32,110, - 97,109,101,10,32,32,32,32,116,111,32,102,105,110,100,32, - 105,116,115,32,112,97,114,101,110,116,32,109,111,100,117,108, - 101,44,32,97,110,100,32,102,114,111,109,32,116,104,101,114, - 101,32,105,116,32,108,111,111,107,115,32,117,112,32,116,104, - 101,32,112,97,114,101,110,116,39,115,10,32,32,32,32,95, - 95,112,97,116,104,95,95,46,32,32,87,104,101,110,32,116, - 104,105,115,32,99,104,97,110,103,101,115,44,32,116,104,101, - 32,109,111,100,117,108,101,39,115,32,111,119,110,32,112,97, - 116,104,32,105,115,32,114,101,99,111,109,112,117,116,101,100, - 44,10,32,32,32,32,117,115,105,110,103,32,112,97,116,104, - 95,102,105,110,100,101,114,46,32,32,70,111,114,32,116,111, - 112,45,108,101,118,101,108,32,109,111,100,117,108,101,115,44, - 32,116,104,101,32,112,97,114,101,110,116,32,109,111,100,117, - 108,101,39,115,32,112,97,116,104,10,32,32,32,32,105,115, - 32,115,121,115,46,112,97,116,104,46,99,4,0,0,0,0, - 0,0,0,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,41,1,78,41,6,114,70,0, - 0,0,114,0,1,0,0,114,235,0,0,0,218,16,95,103, - 101,116,95,112,97,114,101,110,116,95,112,97,116,104,218,17, - 95,108,97,115,116,95,112,97,114,101,110,116,95,112,97,116, - 104,218,12,95,112,97,116,104,95,102,105,110,100,101,114,41, - 4,114,71,0,0,0,114,67,0,0,0,114,35,0,0,0, - 218,11,112,97,116,104,95,102,105,110,100,101,114,114,4,0, - 0,0,114,4,0,0,0,114,5,0,0,0,114,72,0,0, - 0,206,6,0,0,115,8,0,0,0,0,1,9,1,9,1, - 21,1,122,23,95,78,97,109,101,115,112,97,99,101,80,97, - 116,104,46,95,95,105,110,105,116,95,95,99,1,0,0,0, - 0,0,0,0,4,0,0,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,41,7,122,62,82,101, - 116,117,114,110,115,32,97,32,116,117,112,108,101,32,111,102, - 32,40,112,97,114,101,110,116,45,109,111,100,117,108,101,45, - 110,97,109,101,44,32,112,97,114,101,110,116,45,112,97,116, - 104,45,97,116,116,114,45,110,97,109,101,41,114,117,0,0, - 0,114,30,0,0,0,114,7,0,0,0,114,35,0,0,0, - 114,250,0,0,0,41,2,122,3,115,121,115,122,4,112,97, - 116,104,41,2,114,70,0,0,0,114,32,0,0,0,41,4, - 114,71,0,0,0,114,236,0,0,0,218,3,100,111,116,114, - 94,0,0,0,114,4,0,0,0,114,4,0,0,0,114,5, - 0,0,0,218,23,95,102,105,110,100,95,112,97,114,101,110, - 116,95,112,97,116,104,95,110,97,109,101,115,212,6,0,0, - 115,8,0,0,0,0,2,27,1,12,2,4,3,122,38,95, - 78,97,109,101,115,112,97,99,101,80,97,116,104,46,95,102, - 105,110,100,95,112,97,114,101,110,116,95,112,97,116,104,95, - 110,97,109,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,41,1,78,41,4,114,69,1,0,0,114, - 62,0,0,0,114,7,0,0,0,114,73,0,0,0,41,3, - 114,71,0,0,0,90,18,112,97,114,101,110,116,95,109,111, - 100,117,108,101,95,110,97,109,101,90,14,112,97,116,104,95, - 97,116,116,114,95,110,97,109,101,114,4,0,0,0,114,4, - 0,0,0,114,5,0,0,0,114,64,1,0,0,222,6,0, - 0,115,4,0,0,0,0,1,18,1,122,31,95,78,97,109, - 101,115,112,97,99,101,80,97,116,104,46,95,103,101,116,95, - 112,97,114,101,110,116,95,112,97,116,104,99,1,0,0,0, - 0,0,0,0,3,0,0,0,3,0,0,0,67,0,0,0, - 115,118,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,111,0,124,0,0,106,3,0,124,0,0,106, - 4,0,124,1,0,131,2,0,125,2,0,124,2,0,100,0, - 0,107,9,0,114,102,0,124,2,0,106,5,0,100,0,0, - 107,8,0,114,102,0,124,2,0,106,6,0,114,102,0,124, - 2,0,106,6,0,124,0,0,95,7,0,124,1,0,124,0, - 0,95,2,0,124,0,0,106,7,0,83,41,1,78,41,8, - 114,235,0,0,0,114,64,1,0,0,114,65,1,0,0,114, - 66,1,0,0,114,70,0,0,0,114,173,0,0,0,114,224, - 0,0,0,114,0,1,0,0,41,3,114,71,0,0,0,90, - 11,112,97,114,101,110,116,95,112,97,116,104,114,180,0,0, + 0,0,114,63,1,0,0,200,6,0,0,115,20,0,0,0, + 12,5,6,2,12,6,12,10,12,4,12,13,12,3,12,3, + 12,3,12,3,114,63,1,0,0,99,0,0,0,0,0,0, + 0,0,0,0,0,0,3,0,0,0,64,0,0,0,115,118, + 0,0,0,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,100,5,0, + 100,6,0,132,0,0,90,6,0,100,7,0,100,8,0,132, + 0,0,90,7,0,100,9,0,100,10,0,132,0,0,90,8, + 0,100,11,0,100,12,0,132,0,0,90,9,0,100,13,0, + 100,14,0,132,0,0,90,10,0,100,15,0,100,16,0,132, + 0,0,90,11,0,100,17,0,83,41,18,114,254,0,0,0, + 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,41,1,78,41,2,114,63,1,0,0,114,0,1, + 0,0,41,4,114,71,0,0,0,114,67,0,0,0,114,35, + 0,0,0,114,67,1,0,0,114,4,0,0,0,114,4,0, + 0,0,114,5,0,0,0,114,72,0,0,0,2,7,0,0, + 115,2,0,0,0,0,1,122,25,95,78,97,109,101,115,112, + 97,99,101,76,111,97,100,101,114,46,95,95,105,110,105,116, + 95,95,99,2,0,0,0,0,0,0,0,2,0,0,0,2, + 0,0,0,67,0,0,0,115,16,0,0,0,100,1,0,106, + 0,0,124,1,0,106,1,0,131,1,0,83,41,2,122,115, + 82,101,116,117,114,110,32,114,101,112,114,32,102,111,114,32, + 116,104,101,32,109,111,100,117,108,101,46,10,10,32,32,32, + 32,32,32,32,32,84,104,101,32,109,101,116,104,111,100,32, + 105,115,32,100,101,112,114,101,99,97,116,101,100,46,32,32, + 84,104,101,32,105,109,112,111,114,116,32,109,97,99,104,105, + 110,101,114,121,32,100,111,101,115,32,116,104,101,32,106,111, + 98,32,105,116,115,101,108,102,46,10,10,32,32,32,32,32, + 32,32,32,122,25,60,109,111,100,117,108,101,32,123,33,114, + 125,32,40,110,97,109,101,115,112,97,99,101,41,62,41,2, + 114,47,0,0,0,114,57,0,0,0,41,2,114,13,1,0, + 0,114,181,0,0,0,114,4,0,0,0,114,4,0,0,0, + 114,5,0,0,0,114,207,0,0,0,5,7,0,0,115,2, + 0,0,0,0,7,122,28,95,78,97,109,101,115,112,97,99, + 101,76,111,97,100,101,114,46,109,111,100,117,108,101,95,114, + 101,112,114,99,2,0,0,0,0,0,0,0,2,0,0,0, + 1,0,0,0,67,0,0,0,115,4,0,0,0,100,1,0, + 83,41,2,78,84,114,4,0,0,0,41,2,114,71,0,0, + 0,114,164,0,0,0,114,4,0,0,0,114,4,0,0,0, + 114,5,0,0,0,114,223,0,0,0,14,7,0,0,115,2, + 0,0,0,0,1,122,27,95,78,97,109,101,115,112,97,99, + 101,76,111,97,100,101,114,46,105,115,95,112,97,99,107,97, + 103,101,99,2,0,0,0,0,0,0,0,2,0,0,0,1, + 0,0,0,67,0,0,0,115,4,0,0,0,100,1,0,83, + 41,2,78,114,30,0,0,0,114,4,0,0,0,41,2,114, + 71,0,0,0,114,164,0,0,0,114,4,0,0,0,114,4, + 0,0,0,114,5,0,0,0,114,18,1,0,0,17,7,0, + 0,115,2,0,0,0,0,1,122,27,95,78,97,109,101,115, + 112,97,99,101,76,111,97,100,101,114,46,103,101,116,95,115, + 111,117,114,99,101,99,2,0,0,0,0,0,0,0,2,0, + 0,0,6,0,0,0,67,0,0,0,115,22,0,0,0,116, + 0,0,100,1,0,100,2,0,100,3,0,100,4,0,100,5, + 0,131,3,1,83,41,6,78,114,30,0,0,0,122,8,60, + 115,116,114,105,110,103,62,114,24,1,0,0,114,45,1,0, + 0,84,41,1,114,46,1,0,0,41,2,114,71,0,0,0, + 114,164,0,0,0,114,4,0,0,0,114,4,0,0,0,114, + 5,0,0,0,114,17,1,0,0,20,7,0,0,115,2,0, + 0,0,0,1,122,25,95,78,97,109,101,115,112,97,99,101, + 76,111,97,100,101,114,46,103,101,116,95,99,111,100,101,99, + 2,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0, + 67,0,0,0,115,4,0,0,0,100,1,0,83,41,2,122, + 42,85,115,101,32,100,101,102,97,117,108,116,32,115,101,109, + 97,110,116,105,99,115,32,102,111,114,32,109,111,100,117,108, + 101,32,99,114,101,97,116,105,111,110,46,78,114,4,0,0, + 0,41,2,114,71,0,0,0,114,180,0,0,0,114,4,0, + 0,0,114,4,0,0,0,114,5,0,0,0,114,2,1,0, + 0,23,7,0,0,115,0,0,0,0,122,30,95,78,97,109, + 101,115,112,97,99,101,76,111,97,100,101,114,46,99,114,101, + 97,116,101,95,109,111,100,117,108,101,99,2,0,0,0,0, + 0,0,0,2,0,0,0,1,0,0,0,67,0,0,0,115, + 4,0,0,0,100,0,0,83,41,1,78,114,4,0,0,0, + 41,2,114,71,0,0,0,114,181,0,0,0,114,4,0,0, + 0,114,4,0,0,0,114,5,0,0,0,114,3,1,0,0, + 26,7,0,0,115,2,0,0,0,0,1,122,28,95,78,97, + 109,101,115,112,97,99,101,76,111,97,100,101,114,46,101,120, + 101,99,95,109,111,100,117,108,101,99,2,0,0,0,0,0, + 0,0,2,0,0,0,3,0,0,0,67,0,0,0,115,29, + 0,0,0,116,0,0,100,1,0,124,0,0,106,1,0,131, + 2,0,1,116,2,0,124,0,0,124,1,0,131,2,0,83, + 41,2,122,98,76,111,97,100,32,97,32,110,97,109,101,115, + 112,97,99,101,32,109,111,100,117,108,101,46,10,10,32,32, + 32,32,32,32,32,32,84,104,105,115,32,109,101,116,104,111, + 100,32,105,115,32,100,101,112,114,101,99,97,116,101,100,46, + 32,32,85,115,101,32,101,120,101,99,95,109,111,100,117,108, + 101,40,41,32,105,110,115,116,101,97,100,46,10,10,32,32, + 32,32,32,32,32,32,122,38,110,97,109,101,115,112,97,99, + 101,32,109,111,100,117,108,101,32,108,111,97,100,101,100,32, + 119,105,116,104,32,112,97,116,104,32,123,33,114,125,41,3, + 114,158,0,0,0,114,0,1,0,0,114,182,0,0,0,41, + 2,114,71,0,0,0,114,164,0,0,0,114,4,0,0,0, + 114,4,0,0,0,114,5,0,0,0,114,6,1,0,0,29, + 7,0,0,115,4,0,0,0,0,7,16,1,122,28,95,78, + 97,109,101,115,112,97,99,101,76,111,97,100,101,114,46,108, + 111,97,100,95,109,111,100,117,108,101,78,41,12,114,57,0, + 0,0,114,56,0,0,0,114,58,0,0,0,114,72,0,0, + 0,114,20,1,0,0,114,207,0,0,0,114,223,0,0,0, + 114,18,1,0,0,114,17,1,0,0,114,2,1,0,0,114, + 3,1,0,0,114,6,1,0,0,114,4,0,0,0,114,4, + 0,0,0,114,4,0,0,0,114,5,0,0,0,114,254,0, + 0,0,1,7,0,0,115,16,0,0,0,12,1,12,3,18, + 9,12,3,12,3,12,3,12,3,12,3,114,254,0,0,0, + 99,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0, + 0,64,0,0,0,115,160,0,0,0,101,0,0,90,1,0, + 100,0,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,10,0,100,11,0,100,12,0, + 132,1,0,131,1,0,90,9,0,101,4,0,100,10,0,100, + 10,0,100,13,0,100,14,0,132,2,0,131,1,0,90,10, + 0,101,4,0,100,10,0,100,15,0,100,16,0,132,1,0, + 131,1,0,90,11,0,100,10,0,83,41,17,218,10,80,97, + 116,104,70,105,110,100,101,114,122,62,77,101,116,97,32,112, + 97,116,104,32,102,105,110,100,101,114,32,102,111,114,32,115, + 121,115,46,112,97,116,104,32,97,110,100,32,112,97,99,107, + 97,103,101,32,95,95,112,97,116,104,95,95,32,97,116,116, + 114,105,98,117,116,101,115,46,99,1,0,0,0,0,0,0, + 0,2,0,0,0,4,0,0,0,67,0,0,0,115,55,0, + 0,0,120,48,0,116,0,0,106,1,0,106,2,0,131,0, + 0,68,93,31,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,87,100,2,0,83,41,3,122,125,67,97,108, + 108,32,116,104,101,32,105,110,118,97,108,105,100,97,116,101, + 95,99,97,99,104,101,115,40,41,32,109,101,116,104,111,100, + 32,111,110,32,97,108,108,32,112,97,116,104,32,101,110,116, + 114,121,32,102,105,110,100,101,114,115,10,32,32,32,32,32, + 32,32,32,115,116,111,114,101,100,32,105,110,32,115,121,115, + 46,112,97,116,104,95,105,109,112,111,114,116,101,114,95,99, + 97,99,104,101,115,32,40,119,104,101,114,101,32,105,109,112, + 108,101,109,101,110,116,101,100,41,46,218,17,105,110,118,97, + 108,105,100,97,116,101,95,99,97,99,104,101,115,78,41,5, + 114,7,0,0,0,218,19,112,97,116,104,95,105,109,112,111, + 114,116,101,114,95,99,97,99,104,101,218,6,118,97,108,117, + 101,115,114,60,0,0,0,114,77,1,0,0,41,2,114,13, + 1,0,0,218,6,102,105,110,100,101,114,114,4,0,0,0, + 114,4,0,0,0,114,5,0,0,0,114,77,1,0,0,46, + 7,0,0,115,6,0,0,0,0,4,22,1,15,1,122,28, + 80,97,116,104,70,105,110,100,101,114,46,105,110,118,97,108, + 105,100,97,116,101,95,99,97,99,104,101,115,99,2,0,0, + 0,0,0,0,0,3,0,0,0,12,0,0,0,67,0,0, + 0,115,107,0,0,0,116,0,0,106,1,0,100,1,0,107, + 9,0,114,41,0,116,0,0,106,1,0,12,114,41,0,116, + 2,0,106,3,0,100,2,0,116,4,0,131,2,0,1,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,51,0, + 4,116,5,0,107,10,0,114,94,0,1,1,1,119,51,0, + 89,113,51,0,88,113,51,0,87,100,1,0,83,100,1,0, + 83,41,3,122,113,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,78,122,23,115,121,115,46,112,97,116, + 104,95,104,111,111,107,115,32,105,115,32,101,109,112,116,121, + 41,6,114,7,0,0,0,218,10,112,97,116,104,95,104,111, + 111,107,115,114,118,0,0,0,114,119,0,0,0,114,172,0, + 0,0,114,159,0,0,0,41,3,114,13,1,0,0,114,35, + 0,0,0,90,4,104,111,111,107,114,4,0,0,0,114,4, + 0,0,0,114,5,0,0,0,218,11,95,112,97,116,104,95, + 104,111,111,107,115,54,7,0,0,115,16,0,0,0,0,7, + 25,1,16,1,16,1,3,1,14,1,13,1,12,2,122,22, + 80,97,116,104,70,105,110,100,101,114,46,95,112,97,116,104, + 95,104,111,111,107,115,99,2,0,0,0,0,0,0,0,3, + 0,0,0,19,0,0,0,67,0,0,0,115,123,0,0,0, + 124,1,0,100,1,0,107,2,0,114,53,0,121,16,0,116, + 0,0,106,1,0,131,0,0,125,1,0,87,110,22,0,4, + 116,2,0,107,10,0,114,52,0,1,1,1,100,2,0,83, + 89,110,1,0,88,121,17,0,116,3,0,106,4,0,124,1, + 0,25,125,2,0,87,110,46,0,4,116,5,0,107,10,0, + 114,118,0,1,1,1,124,0,0,106,6,0,124,1,0,131, + 1,0,125,2,0,124,2,0,116,3,0,106,4,0,124,1, + 0,60,89,110,1,0,88,124,2,0,83,41,3,122,210,71, + 101,116,32,116,104,101,32,102,105,110,100,101,114,32,102,111, + 114,32,116,104,101,32,112,97,116,104,32,101,110,116,114,121, + 32,102,114,111,109,32,115,121,115,46,112,97,116,104,95,105, + 109,112,111,114,116,101,114,95,99,97,99,104,101,46,10,10, + 32,32,32,32,32,32,32,32,73,102,32,116,104,101,32,112, + 97,116,104,32,101,110,116,114,121,32,105,115,32,110,111,116, + 32,105,110,32,116,104,101,32,99,97,99,104,101,44,32,102, + 105,110,100,32,116,104,101,32,97,112,112,114,111,112,114,105, + 97,116,101,32,102,105,110,100,101,114,10,32,32,32,32,32, + 32,32,32,97,110,100,32,99,97,99,104,101,32,105,116,46, + 32,73,102,32,110,111,32,102,105,110,100,101,114,32,105,115, + 32,97,118,97,105,108,97,98,108,101,44,32,115,116,111,114, + 101,32,78,111,110,101,46,10,10,32,32,32,32,32,32,32, + 32,114,30,0,0,0,78,41,7,114,3,0,0,0,114,45, + 0,0,0,218,17,70,105,108,101,78,111,116,70,111,117,110, + 100,69,114,114,111,114,114,7,0,0,0,114,78,1,0,0, + 114,79,0,0,0,114,82,1,0,0,41,3,114,13,1,0, + 0,114,35,0,0,0,114,80,1,0,0,114,4,0,0,0, + 114,4,0,0,0,114,5,0,0,0,218,20,95,112,97,116, + 104,95,105,109,112,111,114,116,101,114,95,99,97,99,104,101, + 71,7,0,0,115,22,0,0,0,0,8,12,1,3,1,16, + 1,13,3,9,1,3,1,17,1,13,1,15,1,18,1,122, + 31,80,97,116,104,70,105,110,100,101,114,46,95,112,97,116, + 104,95,105,109,112,111,114,116,101,114,95,99,97,99,104,101, + 99,3,0,0,0,0,0,0,0,6,0,0,0,3,0,0, + 0,67,0,0,0,115,113,0,0,0,116,0,0,124,2,0, + 100,1,0,131,2,0,114,39,0,124,2,0,106,1,0,124, + 1,0,131,1,0,92,2,0,125,3,0,125,4,0,110,21, + 0,124,2,0,106,2,0,124,1,0,131,1,0,125,3,0, + 103,0,0,125,4,0,124,3,0,100,0,0,107,9,0,114, + 85,0,116,3,0,124,1,0,124,3,0,131,2,0,83,116, + 4,0,124,1,0,100,0,0,131,2,0,125,5,0,124,4, + 0,124,5,0,95,5,0,124,5,0,83,41,2,78,114,171, + 0,0,0,41,6,114,60,0,0,0,114,171,0,0,0,114, + 16,1,0,0,114,177,0,0,0,114,220,0,0,0,114,224, + 0,0,0,41,6,114,13,1,0,0,114,164,0,0,0,114, + 80,1,0,0,114,173,0,0,0,114,174,0,0,0,114,180, + 0,0,0,114,4,0,0,0,114,4,0,0,0,114,5,0, + 0,0,218,16,95,108,101,103,97,99,121,95,103,101,116,95, + 115,112,101,99,93,7,0,0,115,18,0,0,0,0,4,15, + 1,24,2,15,1,6,1,12,1,13,1,15,1,9,1,122, + 27,80,97,116,104,70,105,110,100,101,114,46,95,108,101,103, + 97,99,121,95,103,101,116,95,115,112,101,99,78,99,4,0, + 0,0,0,0,0,0,9,0,0,0,5,0,0,0,67,0, + 0,0,115,240,0,0,0,103,0,0,125,4,0,120,227,0, + 124,2,0,68,93,191,0,125,5,0,116,0,0,124,5,0, + 116,1,0,116,2,0,102,2,0,131,2,0,115,43,0,113, + 13,0,124,0,0,106,3,0,124,5,0,131,1,0,125,6, + 0,124,6,0,100,1,0,107,9,0,114,13,0,116,4,0, + 124,6,0,100,2,0,131,2,0,114,106,0,124,6,0,106, + 5,0,124,1,0,124,3,0,131,2,0,125,7,0,110,18, + 0,124,0,0,106,6,0,124,1,0,124,6,0,131,2,0, + 125,7,0,124,7,0,100,1,0,107,8,0,114,139,0,113, + 13,0,124,7,0,106,7,0,100,1,0,107,9,0,114,158, + 0,124,7,0,83,124,7,0,106,8,0,125,8,0,124,8, + 0,100,1,0,107,8,0,114,191,0,116,9,0,100,3,0, + 131,1,0,130,1,0,124,4,0,106,10,0,124,8,0,131, + 1,0,1,113,13,0,87,116,11,0,124,1,0,100,1,0, + 131,2,0,125,7,0,124,4,0,124,7,0,95,8,0,124, + 7,0,83,100,1,0,83,41,4,122,63,70,105,110,100,32, + 116,104,101,32,108,111,97,100,101,114,32,111,114,32,110,97, + 109,101,115,112,97,99,101,95,112,97,116,104,32,102,111,114, + 32,116,104,105,115,32,109,111,100,117,108,101,47,112,97,99, + 107,97,103,101,32,110,97,109,101,46,78,114,15,1,0,0, + 122,19,115,112,101,99,32,109,105,115,115,105,110,103,32,108, + 111,97,100,101,114,41,12,114,194,0,0,0,114,127,0,0, + 0,218,5,98,121,116,101,115,114,84,1,0,0,114,60,0, + 0,0,114,15,1,0,0,114,85,1,0,0,114,173,0,0, + 0,114,224,0,0,0,114,159,0,0,0,114,199,0,0,0, + 114,220,0,0,0,41,9,114,13,1,0,0,114,164,0,0, + 0,114,35,0,0,0,114,14,1,0,0,218,14,110,97,109, + 101,115,112,97,99,101,95,112,97,116,104,90,5,101,110,116, + 114,121,114,80,1,0,0,114,180,0,0,0,114,174,0,0, 0,114,4,0,0,0,114,4,0,0,0,114,5,0,0,0, - 218,12,95,114,101,99,97,108,99,117,108,97,116,101,226,6, - 0,0,115,16,0,0,0,0,2,18,1,15,1,21,3,27, - 1,9,1,12,1,9,1,122,27,95,78,97,109,101,115,112, - 97,99,101,80,97,116,104,46,95,114,101,99,97,108,99,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,41,1, - 78,41,2,218,4,105,116,101,114,114,70,1,0,0,41,1, - 114,71,0,0,0,114,4,0,0,0,114,4,0,0,0,114, - 5,0,0,0,218,8,95,95,105,116,101,114,95,95,239,6, - 0,0,115,2,0,0,0,0,1,122,23,95,78,97,109,101, - 115,112,97,99,101,80,97,116,104,46,95,95,105,116,101,114, - 95,95,99,1,0,0,0,0,0,0,0,1,0,0,0,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,41,1,78,41, - 2,114,31,0,0,0,114,70,1,0,0,41,1,114,71,0, + 218,9,95,103,101,116,95,115,112,101,99,108,7,0,0,115, + 40,0,0,0,0,5,6,1,13,1,21,1,3,1,15,1, + 12,1,15,1,21,2,18,1,12,1,3,1,15,1,4,1, + 9,1,12,1,12,5,17,2,15,1,9,1,122,20,80,97, + 116,104,70,105,110,100,101,114,46,95,103,101,116,95,115,112, + 101,99,99,4,0,0,0,0,0,0,0,6,0,0,0,4, + 0,0,0,67,0,0,0,115,140,0,0,0,124,2,0,100, + 1,0,107,8,0,114,21,0,116,0,0,106,1,0,125,2, + 0,124,0,0,106,2,0,124,1,0,124,2,0,124,3,0, + 131,3,0,125,4,0,124,4,0,100,1,0,107,8,0,114, + 58,0,100,1,0,83,124,4,0,106,3,0,100,1,0,107, + 8,0,114,132,0,124,4,0,106,4,0,125,5,0,124,5, + 0,114,125,0,100,2,0,124,4,0,95,5,0,116,6,0, + 124,1,0,124,5,0,124,0,0,106,2,0,131,3,0,124, + 4,0,95,4,0,124,4,0,83,100,1,0,83,110,4,0, + 124,4,0,83,100,1,0,83,41,3,122,98,102,105,110,100, + 32,116,104,101,32,109,111,100,117,108,101,32,111,110,32,115, + 121,115,46,112,97,116,104,32,111,114,32,39,112,97,116,104, + 39,32,98,97,115,101,100,32,111,110,32,115,121,115,46,112, + 97,116,104,95,104,111,111,107,115,32,97,110,100,10,32,32, + 32,32,32,32,32,32,115,121,115,46,112,97,116,104,95,105, + 109,112,111,114,116,101,114,95,99,97,99,104,101,46,78,90, + 9,110,97,109,101,115,112,97,99,101,41,7,114,7,0,0, + 0,114,35,0,0,0,114,88,1,0,0,114,173,0,0,0, + 114,224,0,0,0,114,221,0,0,0,114,63,1,0,0,41, + 6,114,13,1,0,0,114,164,0,0,0,114,35,0,0,0, + 114,14,1,0,0,114,180,0,0,0,114,87,1,0,0,114, + 4,0,0,0,114,4,0,0,0,114,5,0,0,0,114,15, + 1,0,0,140,7,0,0,115,26,0,0,0,0,4,12,1, + 9,1,21,1,12,1,4,1,15,1,9,1,6,3,9,1, + 24,1,4,2,7,2,122,20,80,97,116,104,70,105,110,100, + 101,114,46,102,105,110,100,95,115,112,101,99,99,3,0,0, + 0,0,0,0,0,4,0,0,0,3,0,0,0,67,0,0, + 0,115,41,0,0,0,124,0,0,106,0,0,124,1,0,124, + 2,0,131,2,0,125,3,0,124,3,0,100,1,0,107,8, + 0,114,34,0,100,1,0,83,124,3,0,106,1,0,83,41, + 2,122,170,102,105,110,100,32,116,104,101,32,109,111,100,117, + 108,101,32,111,110,32,115,121,115,46,112,97,116,104,32,111, + 114,32,39,112,97,116,104,39,32,98,97,115,101,100,32,111, + 110,32,115,121,115,46,112,97,116,104,95,104,111,111,107,115, + 32,97,110,100,10,32,32,32,32,32,32,32,32,115,121,115, + 46,112,97,116,104,95,105,109,112,111,114,116,101,114,95,99, + 97,99,104,101,46,10,10,32,32,32,32,32,32,32,32,84, + 104,105,115,32,109,101,116,104,111,100,32,105,115,32,100,101, + 112,114,101,99,97,116,101,100,46,32,32,85,115,101,32,102, + 105,110,100,95,115,112,101,99,40,41,32,105,110,115,116,101, + 97,100,46,10,10,32,32,32,32,32,32,32,32,78,41,2, + 114,15,1,0,0,114,173,0,0,0,41,4,114,13,1,0, + 0,114,164,0,0,0,114,35,0,0,0,114,180,0,0,0, + 114,4,0,0,0,114,4,0,0,0,114,5,0,0,0,114, + 16,1,0,0,162,7,0,0,115,8,0,0,0,0,8,18, + 1,12,1,4,1,122,22,80,97,116,104,70,105,110,100,101, + 114,46,102,105,110,100,95,109,111,100,117,108,101,41,12,114, + 57,0,0,0,114,56,0,0,0,114,58,0,0,0,114,59, + 0,0,0,114,20,1,0,0,114,77,1,0,0,114,82,1, + 0,0,114,84,1,0,0,114,85,1,0,0,114,88,1,0, + 0,114,15,1,0,0,114,16,1,0,0,114,4,0,0,0, + 114,4,0,0,0,114,4,0,0,0,114,5,0,0,0,114, + 76,1,0,0,42,7,0,0,115,22,0,0,0,12,2,6, + 2,18,8,18,17,18,22,18,15,3,1,18,31,3,1,21, + 21,3,1,114,76,1,0,0,99,0,0,0,0,0,0,0, + 0,0,0,0,0,3,0,0,0,64,0,0,0,115,133,0, + 0,0,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,100,10,0,100,11,0, + 100,12,0,132,1,0,90,10,0,100,13,0,100,14,0,132, + 0,0,90,11,0,101,12,0,100,15,0,100,16,0,132,0, + 0,131,1,0,90,13,0,100,17,0,100,18,0,132,0,0, + 90,14,0,100,10,0,83,41,19,218,10,70,105,108,101,70, + 105,110,100,101,114,122,172,70,105,108,101,45,98,97,115,101, + 100,32,102,105,110,100,101,114,46,10,10,32,32,32,32,73, + 110,116,101,114,97,99,116,105,111,110,115,32,119,105,116,104, + 32,116,104,101,32,102,105,108,101,32,115,121,115,116,101,109, + 32,97,114,101,32,99,97,99,104,101,100,32,102,111,114,32, + 112,101,114,102,111,114,109,97,110,99,101,44,32,98,101,105, + 110,103,10,32,32,32,32,114,101,102,114,101,115,104,101,100, + 32,119,104,101,110,32,116,104,101,32,100,105,114,101,99,116, + 111,114,121,32,116,104,101,32,102,105,110,100,101,114,32,105, + 115,32,104,97,110,100,108,105,110,103,32,104,97,115,32,98, + 101,101,110,32,109,111,100,105,102,105,101,100,46,10,10,32, + 32,32,32,99,2,0,0,0,0,0,0,0,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,41,7,122,154,73,110,105,116,105, + 97,108,105,122,101,32,119,105,116,104,32,116,104,101,32,112, + 97,116,104,32,116,111,32,115,101,97,114,99,104,32,111,110, + 32,97,110,100,32,97,32,118,97,114,105,97,98,108,101,32, + 110,117,109,98,101,114,32,111,102,10,32,32,32,32,32,32, + 32,32,50,45,116,117,112,108,101,115,32,99,111,110,116,97, + 105,110,105,110,103,32,116,104,101,32,108,111,97,100,101,114, + 32,97,110,100,32,116,104,101,32,102,105,108,101,32,115,117, + 102,102,105,120,101,115,32,116,104,101,32,108,111,97,100,101, + 114,10,32,32,32,32,32,32,32,32,114,101,99,111,103,110, + 105,122,101,115,46,99,1,0,0,0,0,0,0,0,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,41,1,78,114,4,0, + 0,0,41,2,114,22,0,0,0,114,60,1,0,0,41,1, + 114,173,0,0,0,114,4,0,0,0,114,5,0,0,0,114, + 77,0,0,0,191,7,0,0,115,2,0,0,0,6,0,122, + 38,70,105,108,101,70,105,110,100,101,114,46,95,95,105,110, + 105,116,95,95,46,60,108,111,99,97,108,115,62,46,60,103, + 101,110,101,120,112,114,62,114,117,0,0,0,114,29,0,0, + 0,78,114,145,0,0,0,41,7,114,199,0,0,0,218,8, + 95,108,111,97,100,101,114,115,114,35,0,0,0,218,11,95, + 112,97,116,104,95,109,116,105,109,101,218,3,115,101,116,218, + 11,95,112,97,116,104,95,99,97,99,104,101,218,19,95,114, + 101,108,97,120,101,100,95,112,97,116,104,95,99,97,99,104, + 101,41,5,114,71,0,0,0,114,35,0,0,0,218,14,108, + 111,97,100,101,114,95,100,101,116,97,105,108,115,90,7,108, + 111,97,100,101,114,115,114,247,0,0,0,114,4,0,0,0, + 41,1,114,173,0,0,0,114,5,0,0,0,114,72,0,0, + 0,185,7,0,0,115,16,0,0,0,0,4,6,1,19,1, + 36,1,9,2,15,1,9,1,12,1,122,19,70,105,108,101, + 70,105,110,100,101,114,46,95,95,105,110,105,116,95,95,99, + 1,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0, + 67,0,0,0,115,13,0,0,0,100,3,0,124,0,0,95, + 0,0,100,2,0,83,41,4,122,31,73,110,118,97,108,105, + 100,97,116,101,32,116,104,101,32,100,105,114,101,99,116,111, + 114,121,32,109,116,105,109,101,46,114,29,0,0,0,78,114, + 145,0,0,0,41,1,114,91,1,0,0,41,1,114,71,0, 0,0,114,4,0,0,0,114,4,0,0,0,114,5,0,0, - 0,218,7,95,95,108,101,110,95,95,242,6,0,0,115,2, - 0,0,0,0,1,122,22,95,78,97,109,101,115,112,97,99, - 101,80,97,116,104,46,95,95,108,101,110,95,95,99,1,0, - 0,0,0,0,0,0,1,0,0,0,2,0,0,0,67,0, - 0,0,115,16,0,0,0,100,1,0,106,0,0,124,0,0, - 106,1,0,131,1,0,83,41,2,78,122,20,95,78,97,109, - 101,115,112,97,99,101,80,97,116,104,40,123,33,114,125,41, - 41,2,114,47,0,0,0,114,0,1,0,0,41,1,114,71, + 0,114,77,1,0,0,199,7,0,0,115,2,0,0,0,0, + 2,122,28,70,105,108,101,70,105,110,100,101,114,46,105,110, + 118,97,108,105,100,97,116,101,95,99,97,99,104,101,115,99, + 2,0,0,0,0,0,0,0,3,0,0,0,2,0,0,0, + 67,0,0,0,115,59,0,0,0,124,0,0,106,0,0,124, + 1,0,131,1,0,125,2,0,124,2,0,100,1,0,107,8, + 0,114,37,0,100,1,0,103,0,0,102,2,0,83,124,2, + 0,106,1,0,124,2,0,106,2,0,112,55,0,103,0,0, + 102,2,0,83,41,2,122,197,84,114,121,32,116,111,32,102, + 105,110,100,32,97,32,108,111,97,100,101,114,32,102,111,114, + 32,116,104,101,32,115,112,101,99,105,102,105,101,100,32,109, + 111,100,117,108,101,44,32,111,114,32,116,104,101,32,110,97, + 109,101,115,112,97,99,101,10,32,32,32,32,32,32,32,32, + 112,97,99,107,97,103,101,32,112,111,114,116,105,111,110,115, + 46,32,82,101,116,117,114,110,115,32,40,108,111,97,100,101, + 114,44,32,108,105,115,116,45,111,102,45,112,111,114,116,105, + 111,110,115,41,46,10,10,32,32,32,32,32,32,32,32,84, + 104,105,115,32,109,101,116,104,111,100,32,105,115,32,100,101, + 112,114,101,99,97,116,101,100,46,32,32,85,115,101,32,102, + 105,110,100,95,115,112,101,99,40,41,32,105,110,115,116,101, + 97,100,46,10,10,32,32,32,32,32,32,32,32,78,41,3, + 114,15,1,0,0,114,173,0,0,0,114,224,0,0,0,41, + 3,114,71,0,0,0,114,164,0,0,0,114,180,0,0,0, + 114,4,0,0,0,114,4,0,0,0,114,5,0,0,0,114, + 171,0,0,0,205,7,0,0,115,8,0,0,0,0,7,15, + 1,12,1,10,1,122,22,70,105,108,101,70,105,110,100,101, + 114,46,102,105,110,100,95,108,111,97,100,101,114,99,6,0, + 0,0,0,0,0,0,7,0,0,0,7,0,0,0,67,0, + 0,0,115,40,0,0,0,124,1,0,124,2,0,124,3,0, + 131,2,0,125,6,0,116,0,0,124,2,0,124,3,0,100, + 1,0,124,6,0,100,2,0,124,4,0,131,2,2,83,41, + 3,78,114,173,0,0,0,114,224,0,0,0,41,1,114,242, + 0,0,0,41,7,114,71,0,0,0,114,246,0,0,0,114, + 164,0,0,0,114,35,0,0,0,114,232,0,0,0,114,14, + 1,0,0,114,173,0,0,0,114,4,0,0,0,114,4,0, + 0,0,114,5,0,0,0,114,88,1,0,0,217,7,0,0, + 115,6,0,0,0,0,1,15,1,18,1,122,20,70,105,108, + 101,70,105,110,100,101,114,46,95,103,101,116,95,115,112,101, + 99,78,99,3,0,0,0,0,0,0,0,14,0,0,0,15, + 0,0,0,67,0,0,0,115,231,1,0,0,100,1,0,125, + 3,0,124,1,0,106,0,0,100,2,0,131,1,0,100,3, + 0,25,125,4,0,121,34,0,116,1,0,124,0,0,106,2, + 0,112,49,0,116,3,0,106,4,0,131,0,0,131,1,0, + 106,5,0,125,5,0,87,110,24,0,4,116,6,0,107,10, + 0,114,85,0,1,1,1,100,10,0,125,5,0,89,110,1, + 0,88,124,5,0,124,0,0,106,7,0,107,3,0,114,120, + 0,124,0,0,106,8,0,131,0,0,1,124,5,0,124,0, + 0,95,7,0,116,9,0,131,0,0,114,153,0,124,0,0, + 106,10,0,125,6,0,124,4,0,106,11,0,131,0,0,125, + 7,0,110,15,0,124,0,0,106,12,0,125,6,0,124,4, + 0,125,7,0,124,7,0,124,6,0,107,6,0,114,45,1, + 116,13,0,124,0,0,106,2,0,124,4,0,131,2,0,125, + 8,0,120,100,0,124,0,0,106,14,0,68,93,77,0,92, + 2,0,125,9,0,125,10,0,100,5,0,124,9,0,23,125, + 11,0,116,13,0,124,8,0,124,11,0,131,2,0,125,12, + 0,116,15,0,124,12,0,131,1,0,114,208,0,124,0,0, + 106,16,0,124,10,0,124,1,0,124,12,0,124,8,0,103, + 1,0,124,2,0,131,5,0,83,113,208,0,87,116,17,0, + 124,8,0,131,1,0,125,3,0,120,123,0,124,0,0,106, + 14,0,68,93,112,0,92,2,0,125,9,0,125,10,0,116, + 13,0,124,0,0,106,2,0,124,4,0,124,9,0,23,131, + 2,0,125,12,0,116,18,0,100,6,0,106,19,0,124,12, + 0,131,1,0,100,7,0,100,3,0,131,1,1,1,124,7, + 0,124,9,0,23,124,6,0,107,6,0,114,55,1,116,15, + 0,124,12,0,131,1,0,114,55,1,124,0,0,106,16,0, + 124,10,0,124,1,0,124,12,0,100,8,0,124,2,0,131, + 5,0,83,113,55,1,87,124,3,0,114,227,1,116,18,0, + 100,9,0,106,19,0,124,8,0,131,1,0,131,1,0,1, + 116,20,0,124,1,0,100,8,0,131,2,0,125,13,0,124, + 8,0,103,1,0,124,13,0,95,21,0,124,13,0,83,100, + 8,0,83,41,11,122,125,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,70,114,117,0,0,0,114,115,0,0,0,114, + 29,0,0,0,114,72,0,0,0,122,9,116,114,121,105,110, + 103,32,123,125,114,152,0,0,0,78,122,25,112,111,115,115, + 105,98,108,101,32,110,97,109,101,115,112,97,99,101,32,102, + 111,114,32,123,125,114,145,0,0,0,41,22,114,32,0,0, + 0,114,39,0,0,0,114,35,0,0,0,114,3,0,0,0, + 114,45,0,0,0,114,56,1,0,0,114,40,0,0,0,114, + 91,1,0,0,218,11,95,102,105,108,108,95,99,97,99,104, + 101,114,6,0,0,0,114,94,1,0,0,114,146,0,0,0, + 114,93,1,0,0,114,28,0,0,0,114,90,1,0,0,114, + 44,0,0,0,114,88,1,0,0,114,46,0,0,0,114,158, + 0,0,0,114,47,0,0,0,114,220,0,0,0,114,224,0, + 0,0,41,14,114,71,0,0,0,114,164,0,0,0,114,14, + 1,0,0,90,12,105,115,95,110,97,109,101,115,112,97,99, + 101,90,11,116,97,105,108,95,109,111,100,117,108,101,114,185, + 0,0,0,90,5,99,97,99,104,101,90,12,99,97,99,104, + 101,95,109,111,100,117,108,101,90,9,98,97,115,101,95,112, + 97,116,104,114,60,1,0,0,114,246,0,0,0,90,13,105, + 110,105,116,95,102,105,108,101,110,97,109,101,90,9,102,117, + 108,108,95,112,97,116,104,114,180,0,0,0,114,4,0,0, + 0,114,4,0,0,0,114,5,0,0,0,114,15,1,0,0, + 222,7,0,0,115,68,0,0,0,0,3,6,1,19,1,3, + 1,34,1,13,1,11,1,15,1,10,1,9,2,9,1,9, + 1,15,2,9,1,6,2,12,1,18,1,22,1,10,1,15, + 1,12,1,32,4,12,2,22,1,22,1,25,1,16,1,12, + 1,29,1,6,1,19,1,15,1,12,1,4,1,122,20,70, + 105,108,101,70,105,110,100,101,114,46,102,105,110,100,95,115, + 112,101,99,99,1,0,0,0,0,0,0,0,9,0,0,0, + 13,0,0,0,67,0,0,0,115,11,1,0,0,124,0,0, + 106,0,0,125,1,0,121,31,0,116,1,0,106,2,0,124, + 1,0,112,33,0,116,1,0,106,3,0,131,0,0,131,1, + 0,125,2,0,87,110,33,0,4,116,4,0,116,5,0,116, + 6,0,102,3,0,107,10,0,114,75,0,1,1,1,103,0, + 0,125,2,0,89,110,1,0,88,116,7,0,106,8,0,106, + 9,0,100,1,0,131,1,0,115,112,0,116,10,0,124,2, + 0,131,1,0,124,0,0,95,11,0,110,111,0,116,10,0, + 131,0,0,125,3,0,120,90,0,124,2,0,68,93,82,0, + 125,4,0,124,4,0,106,12,0,100,2,0,131,1,0,92, + 3,0,125,5,0,125,6,0,125,7,0,124,6,0,114,191, + 0,100,3,0,106,13,0,124,5,0,124,7,0,106,14,0, + 131,0,0,131,2,0,125,8,0,110,6,0,124,5,0,125, + 8,0,124,3,0,106,15,0,124,8,0,131,1,0,1,113, + 128,0,87,124,3,0,124,0,0,95,11,0,116,7,0,106, + 8,0,106,9,0,116,16,0,131,1,0,114,7,1,100,4, + 0,100,5,0,132,0,0,124,2,0,68,131,1,0,124,0, + 0,95,17,0,100,6,0,83,41,7,122,68,70,105,108,108, + 32,116,104,101,32,99,97,99,104,101,32,111,102,32,112,111, + 116,101,110,116,105,97,108,32,109,111,100,117,108,101,115,32, + 97,110,100,32,112,97,99,107,97,103,101,115,32,102,111,114, + 32,116,104,105,115,32,100,105,114,101,99,116,111,114,121,46, + 114,0,0,0,0,114,117,0,0,0,122,5,123,125,46,123, + 125,99,1,0,0,0,0,0,0,0,2,0,0,0,3,0, + 0,0,83,0,0,0,115,28,0,0,0,104,0,0,124,0, + 0,93,18,0,125,1,0,124,1,0,106,0,0,131,0,0, + 146,2,0,113,6,0,83,114,4,0,0,0,41,1,114,146, + 0,0,0,41,2,114,22,0,0,0,90,2,102,110,114,4, + 0,0,0,114,4,0,0,0,114,5,0,0,0,250,9,60, + 115,101,116,99,111,109,112,62,40,8,0,0,115,2,0,0, + 0,9,0,122,41,70,105,108,101,70,105,110,100,101,114,46, + 95,102,105,108,108,95,99,97,99,104,101,46,60,108,111,99, + 97,108,115,62,46,60,115,101,116,99,111,109,112,62,78,41, + 18,114,35,0,0,0,114,3,0,0,0,90,7,108,105,115, + 116,100,105,114,114,45,0,0,0,114,83,1,0,0,218,15, + 80,101,114,109,105,115,115,105,111,110,69,114,114,111,114,218, + 18,78,111,116,65,68,105,114,101,99,116,111,114,121,69,114, + 114,111,114,114,7,0,0,0,114,8,0,0,0,114,9,0, + 0,0,114,92,1,0,0,114,93,1,0,0,114,141,0,0, + 0,114,47,0,0,0,114,146,0,0,0,218,3,97,100,100, + 114,10,0,0,0,114,94,1,0,0,41,9,114,71,0,0, + 0,114,35,0,0,0,90,8,99,111,110,116,101,110,116,115, + 90,21,108,111,119,101,114,95,115,117,102,102,105,120,95,99, + 111,110,116,101,110,116,115,114,74,1,0,0,114,67,0,0, + 0,114,68,1,0,0,114,60,1,0,0,90,8,110,101,119, + 95,110,97,109,101,114,4,0,0,0,114,4,0,0,0,114, + 5,0,0,0,114,96,1,0,0,11,8,0,0,115,34,0, + 0,0,0,2,9,1,3,1,31,1,22,3,11,3,18,1, + 18,7,9,1,13,1,24,1,6,1,27,2,6,1,17,1, + 9,1,18,1,122,22,70,105,108,101,70,105,110,100,101,114, + 46,95,102,105,108,108,95,99,97,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,41, + 3,97,20,1,0,0,65,32,99,108,97,115,115,32,109,101, + 116,104,111,100,32,119,104,105,99,104,32,114,101,116,117,114, + 110,115,32,97,32,99,108,111,115,117,114,101,32,116,111,32, + 117,115,101,32,111,110,32,115,121,115,46,112,97,116,104,95, + 104,111,111,107,10,32,32,32,32,32,32,32,32,119,104,105, + 99,104,32,119,105,108,108,32,114,101,116,117,114,110,32,97, + 110,32,105,110,115,116,97,110,99,101,32,117,115,105,110,103, + 32,116,104,101,32,115,112,101,99,105,102,105,101,100,32,108, + 111,97,100,101,114,115,32,97,110,100,32,116,104,101,32,112, + 97,116,104,10,32,32,32,32,32,32,32,32,99,97,108,108, + 101,100,32,111,110,32,116,104,101,32,99,108,111,115,117,114, + 101,46,10,10,32,32,32,32,32,32,32,32,73,102,32,116, + 104,101,32,112,97,116,104,32,99,97,108,108,101,100,32,111, + 110,32,116,104,101,32,99,108,111,115,117,114,101,32,105,115, + 32,110,111,116,32,97,32,100,105,114,101,99,116,111,114,121, + 44,32,73,109,112,111,114,116,69,114,114,111,114,32,105,115, + 10,32,32,32,32,32,32,32,32,114,97,105,115,101,100,46, + 10,10,32,32,32,32,32,32,32,32,99,1,0,0,0,0, + 0,0,0,1,0,0,0,4,0,0,0,19,0,0,0,115, + 43,0,0,0,116,0,0,124,0,0,131,1,0,115,30,0, + 116,1,0,100,1,0,100,2,0,124,0,0,131,1,1,130, + 1,0,136,0,0,124,0,0,136,1,0,140,1,0,83,41, + 3,122,45,80,97,116,104,32,104,111,111,107,32,102,111,114, + 32,105,109,112,111,114,116,108,105,98,46,109,97,99,104,105, + 110,101,114,121,46,70,105,108,101,70,105,110,100,101,114,46, + 122,30,111,110,108,121,32,100,105,114,101,99,116,111,114,105, + 101,115,32,97,114,101,32,115,117,112,112,111,114,116,101,100, + 114,35,0,0,0,41,2,114,46,0,0,0,114,159,0,0, + 0,41,1,114,35,0,0,0,41,2,114,13,1,0,0,114, + 95,1,0,0,114,4,0,0,0,114,5,0,0,0,218,24, + 112,97,116,104,95,104,111,111,107,95,102,111,114,95,70,105, + 108,101,70,105,110,100,101,114,52,8,0,0,115,6,0,0, + 0,0,2,12,1,18,1,122,54,70,105,108,101,70,105,110, + 100,101,114,46,112,97,116,104,95,104,111,111,107,46,60,108, + 111,99,97,108,115,62,46,112,97,116,104,95,104,111,111,107, + 95,102,111,114,95,70,105,108,101,70,105,110,100,101,114,114, + 4,0,0,0,41,3,114,13,1,0,0,114,95,1,0,0, + 114,101,1,0,0,114,4,0,0,0,41,2,114,13,1,0, + 0,114,95,1,0,0,114,5,0,0,0,218,9,112,97,116, + 104,95,104,111,111,107,42,8,0,0,115,4,0,0,0,0, + 10,21,6,122,20,70,105,108,101,70,105,110,100,101,114,46, + 112,97,116,104,95,104,111,111,107,99,1,0,0,0,0,0, + 0,0,1,0,0,0,2,0,0,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,41,2,78,122,16,70,105,108,101,70,105,110,100, + 101,114,40,123,33,114,125,41,41,2,114,47,0,0,0,114, + 35,0,0,0,41,1,114,71,0,0,0,114,4,0,0,0, + 114,4,0,0,0,114,5,0,0,0,114,101,0,0,0,60, + 8,0,0,115,2,0,0,0,0,1,122,19,70,105,108,101, + 70,105,110,100,101,114,46,95,95,114,101,112,114,95,95,41, + 15,114,57,0,0,0,114,56,0,0,0,114,58,0,0,0, + 114,59,0,0,0,114,72,0,0,0,114,77,1,0,0,114, + 176,0,0,0,114,16,1,0,0,114,171,0,0,0,114,88, + 1,0,0,114,15,1,0,0,114,96,1,0,0,114,20,1, + 0,0,114,102,1,0,0,114,101,0,0,0,114,4,0,0, + 0,114,4,0,0,0,114,4,0,0,0,114,5,0,0,0, + 114,89,1,0,0,176,7,0,0,115,20,0,0,0,12,7, + 6,2,12,14,12,4,6,2,12,12,12,5,15,45,12,31, + 18,18,114,89,1,0,0,99,0,0,0,0,0,0,0,0, + 0,0,0,0,2,0,0,0,64,0,0,0,115,46,0,0, + 0,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,41, + 7,218,18,95,73,109,112,111,114,116,76,111,99,107,67,111, + 110,116,101,120,116,122,36,67,111,110,116,101,120,116,32,109, + 97,110,97,103,101,114,32,102,111,114,32,116,104,101,32,105, + 109,112,111,114,116,32,108,111,99,107,46,99,1,0,0,0, + 0,0,0,0,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,41,2,122,24,65,99,113,117,105,114,101,32,116, + 104,101,32,105,109,112,111,114,116,32,108,111,99,107,46,78, + 41,2,114,106,0,0,0,114,5,1,0,0,41,1,114,71, 0,0,0,114,4,0,0,0,114,4,0,0,0,114,5,0, - 0,0,114,101,0,0,0,245,6,0,0,115,2,0,0,0, - 0,1,122,23,95,78,97,109,101,115,112,97,99,101,80,97, - 116,104,46,95,95,114,101,112,114,95,95,99,2,0,0,0, - 0,0,0,0,2,0,0,0,2,0,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,41,1,78,41,1,114,70,1,0,0,41, - 2,114,71,0,0,0,218,4,105,116,101,109,114,4,0,0, - 0,114,4,0,0,0,114,5,0,0,0,218,12,95,95,99, - 111,110,116,97,105,110,115,95,95,248,6,0,0,115,2,0, - 0,0,0,1,122,27,95,78,97,109,101,115,112,97,99,101, - 80,97,116,104,46,95,95,99,111,110,116,97,105,110,115,95, - 95,99,2,0,0,0,0,0,0,0,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,41, - 1,78,41,2,114,0,1,0,0,114,227,0,0,0,41,2, - 114,71,0,0,0,114,74,1,0,0,114,4,0,0,0,114, - 4,0,0,0,114,5,0,0,0,114,227,0,0,0,251,6, - 0,0,115,2,0,0,0,0,1,122,21,95,78,97,109,101, - 115,112,97,99,101,80,97,116,104,46,97,112,112,101,110,100, - 78,41,13,114,57,0,0,0,114,56,0,0,0,114,58,0, - 0,0,114,59,0,0,0,114,72,0,0,0,114,69,1,0, - 0,114,64,1,0,0,114,70,1,0,0,114,72,1,0,0, - 114,73,1,0,0,114,101,0,0,0,114,75,1,0,0,114, - 227,0,0,0,114,4,0,0,0,114,4,0,0,0,114,4, - 0,0,0,114,5,0,0,0,114,63,1,0,0,199,6,0, - 0,115,20,0,0,0,12,5,6,2,12,6,12,10,12,4, - 12,13,12,3,12,3,12,3,12,3,114,63,1,0,0,99, - 0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0, - 64,0,0,0,115,118,0,0,0,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,100,5,0,100,6,0,132,0,0,90,6,0,100, - 7,0,100,8,0,132,0,0,90,7,0,100,9,0,100,10, - 0,132,0,0,90,8,0,100,11,0,100,12,0,132,0,0, - 90,9,0,100,13,0,100,14,0,132,0,0,90,10,0,100, - 15,0,100,16,0,132,0,0,90,11,0,100,17,0,83,41, - 18,114,254,0,0,0,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,41,1,78,41,2,114,63, - 1,0,0,114,0,1,0,0,41,4,114,71,0,0,0,114, - 67,0,0,0,114,35,0,0,0,114,67,1,0,0,114,4, - 0,0,0,114,4,0,0,0,114,5,0,0,0,114,72,0, - 0,0,1,7,0,0,115,2,0,0,0,0,1,122,25,95, - 78,97,109,101,115,112,97,99,101,76,111,97,100,101,114,46, - 95,95,105,110,105,116,95,95,99,2,0,0,0,0,0,0, - 0,2,0,0,0,2,0,0,0,67,0,0,0,115,16,0, - 0,0,100,1,0,106,0,0,124,1,0,106,1,0,131,1, - 0,83,41,2,122,115,82,101,116,117,114,110,32,114,101,112, - 114,32,102,111,114,32,116,104,101,32,109,111,100,117,108,101, - 46,10,10,32,32,32,32,32,32,32,32,84,104,101,32,109, - 101,116,104,111,100,32,105,115,32,100,101,112,114,101,99,97, - 116,101,100,46,32,32,84,104,101,32,105,109,112,111,114,116, - 32,109,97,99,104,105,110,101,114,121,32,100,111,101,115,32, - 116,104,101,32,106,111,98,32,105,116,115,101,108,102,46,10, - 10,32,32,32,32,32,32,32,32,122,25,60,109,111,100,117, - 108,101,32,123,33,114,125,32,40,110,97,109,101,115,112,97, - 99,101,41,62,41,2,114,47,0,0,0,114,57,0,0,0, - 41,2,114,13,1,0,0,114,181,0,0,0,114,4,0,0, - 0,114,4,0,0,0,114,5,0,0,0,114,207,0,0,0, - 4,7,0,0,115,2,0,0,0,0,7,122,28,95,78,97, - 109,101,115,112,97,99,101,76,111,97,100,101,114,46,109,111, - 100,117,108,101,95,114,101,112,114,99,2,0,0,0,0,0, - 0,0,2,0,0,0,1,0,0,0,67,0,0,0,115,4, - 0,0,0,100,1,0,83,41,2,78,84,114,4,0,0,0, - 41,2,114,71,0,0,0,114,164,0,0,0,114,4,0,0, - 0,114,4,0,0,0,114,5,0,0,0,114,223,0,0,0, - 13,7,0,0,115,2,0,0,0,0,1,122,27,95,78,97, - 109,101,115,112,97,99,101,76,111,97,100,101,114,46,105,115, - 95,112,97,99,107,97,103,101,99,2,0,0,0,0,0,0, - 0,2,0,0,0,1,0,0,0,67,0,0,0,115,4,0, - 0,0,100,1,0,83,41,2,78,114,30,0,0,0,114,4, - 0,0,0,41,2,114,71,0,0,0,114,164,0,0,0,114, - 4,0,0,0,114,4,0,0,0,114,5,0,0,0,114,18, - 1,0,0,16,7,0,0,115,2,0,0,0,0,1,122,27, - 95,78,97,109,101,115,112,97,99,101,76,111,97,100,101,114, - 46,103,101,116,95,115,111,117,114,99,101,99,2,0,0,0, - 0,0,0,0,2,0,0,0,6,0,0,0,67,0,0,0, - 115,22,0,0,0,116,0,0,100,1,0,100,2,0,100,3, - 0,100,4,0,100,5,0,131,3,1,83,41,6,78,114,30, - 0,0,0,122,8,60,115,116,114,105,110,103,62,114,24,1, - 0,0,114,45,1,0,0,84,41,1,114,46,1,0,0,41, - 2,114,71,0,0,0,114,164,0,0,0,114,4,0,0,0, - 114,4,0,0,0,114,5,0,0,0,114,17,1,0,0,19, - 7,0,0,115,2,0,0,0,0,1,122,25,95,78,97,109, - 101,115,112,97,99,101,76,111,97,100,101,114,46,103,101,116, - 95,99,111,100,101,99,2,0,0,0,0,0,0,0,2,0, - 0,0,1,0,0,0,67,0,0,0,115,4,0,0,0,100, - 1,0,83,41,2,122,42,85,115,101,32,100,101,102,97,117, - 108,116,32,115,101,109,97,110,116,105,99,115,32,102,111,114, - 32,109,111,100,117,108,101,32,99,114,101,97,116,105,111,110, - 46,78,114,4,0,0,0,41,2,114,71,0,0,0,114,180, - 0,0,0,114,4,0,0,0,114,4,0,0,0,114,5,0, - 0,0,114,2,1,0,0,22,7,0,0,115,0,0,0,0, - 122,30,95,78,97,109,101,115,112,97,99,101,76,111,97,100, - 101,114,46,99,114,101,97,116,101,95,109,111,100,117,108,101, - 99,2,0,0,0,0,0,0,0,2,0,0,0,1,0,0, - 0,67,0,0,0,115,4,0,0,0,100,0,0,83,41,1, - 78,114,4,0,0,0,41,2,114,71,0,0,0,114,181,0, + 0,0,114,75,0,0,0,70,8,0,0,115,2,0,0,0, + 0,2,122,28,95,73,109,112,111,114,116,76,111,99,107,67, + 111,110,116,101,120,116,46,95,95,101,110,116,101,114,95,95, + 99,4,0,0,0,0,0,0,0,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,41,2,122,60,82,101,108,101, + 97,115,101,32,116,104,101,32,105,109,112,111,114,116,32,108, + 111,99,107,32,114,101,103,97,114,100,108,101,115,115,32,111, + 102,32,97,110,121,32,114,97,105,115,101,100,32,101,120,99, + 101,112,116,105,111,110,115,46,78,41,2,114,106,0,0,0, + 114,107,0,0,0,41,4,114,71,0,0,0,90,8,101,120, + 99,95,116,121,112,101,90,9,101,120,99,95,118,97,108,117, + 101,90,13,101,120,99,95,116,114,97,99,101,98,97,99,107, + 114,4,0,0,0,114,4,0,0,0,114,5,0,0,0,114, + 81,0,0,0,74,8,0,0,115,2,0,0,0,0,2,122, + 27,95,73,109,112,111,114,116,76,111,99,107,67,111,110,116, + 101,120,116,46,95,95,101,120,105,116,95,95,78,41,6,114, + 57,0,0,0,114,56,0,0,0,114,58,0,0,0,114,59, + 0,0,0,114,75,0,0,0,114,81,0,0,0,114,4,0, 0,0,114,4,0,0,0,114,4,0,0,0,114,5,0,0, - 0,114,3,1,0,0,25,7,0,0,115,2,0,0,0,0, - 1,122,28,95,78,97,109,101,115,112,97,99,101,76,111,97, - 100,101,114,46,101,120,101,99,95,109,111,100,117,108,101,99, - 2,0,0,0,0,0,0,0,2,0,0,0,3,0,0,0, - 67,0,0,0,115,29,0,0,0,116,0,0,100,1,0,124, - 0,0,106,1,0,131,2,0,1,116,2,0,124,0,0,124, - 1,0,131,2,0,83,41,2,122,98,76,111,97,100,32,97, - 32,110,97,109,101,115,112,97,99,101,32,109,111,100,117,108, - 101,46,10,10,32,32,32,32,32,32,32,32,84,104,105,115, - 32,109,101,116,104,111,100,32,105,115,32,100,101,112,114,101, - 99,97,116,101,100,46,32,32,85,115,101,32,101,120,101,99, - 95,109,111,100,117,108,101,40,41,32,105,110,115,116,101,97, - 100,46,10,10,32,32,32,32,32,32,32,32,122,38,110,97, - 109,101,115,112,97,99,101,32,109,111,100,117,108,101,32,108, - 111,97,100,101,100,32,119,105,116,104,32,112,97,116,104,32, - 123,33,114,125,41,3,114,158,0,0,0,114,0,1,0,0, - 114,182,0,0,0,41,2,114,71,0,0,0,114,164,0,0, + 0,114,103,1,0,0,66,8,0,0,115,6,0,0,0,12, + 2,6,2,12,4,114,103,1,0,0,99,3,0,0,0,0, + 0,0,0,5,0,0,0,4,0,0,0,67,0,0,0,115, + 88,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,52,0,116,2,0,100, + 3,0,131,1,0,130,1,0,124,3,0,100,4,0,25,125, + 4,0,124,0,0,114,84,0,100,5,0,106,3,0,124,4, + 0,124,0,0,131,2,0,83,124,4,0,83,41,6,122,50, + 82,101,115,111,108,118,101,32,97,32,114,101,108,97,116,105, + 118,101,32,109,111,100,117,108,101,32,110,97,109,101,32,116, + 111,32,97,110,32,97,98,115,111,108,117,116,101,32,111,110, + 101,46,114,117,0,0,0,114,29,0,0,0,122,50,97,116, + 116,101,109,112,116,101,100,32,114,101,108,97,116,105,118,101, + 32,105,109,112,111,114,116,32,98,101,121,111,110,100,32,116, + 111,112,45,108,101,118,101,108,32,112,97,99,107,97,103,101, + 114,84,0,0,0,122,5,123,125,46,123,125,41,4,114,34, + 0,0,0,114,31,0,0,0,114,129,0,0,0,114,47,0, + 0,0,41,5,114,67,0,0,0,218,7,112,97,99,107,97, + 103,101,218,5,108,101,118,101,108,90,4,98,105,116,115,114, + 135,0,0,0,114,4,0,0,0,114,4,0,0,0,114,5, + 0,0,0,218,13,95,114,101,115,111,108,118,101,95,110,97, + 109,101,79,8,0,0,115,10,0,0,0,0,2,22,1,18, + 1,12,1,10,1,114,106,1,0,0,99,3,0,0,0,0, + 0,0,0,4,0,0,0,3,0,0,0,67,0,0,0,115, + 47,0,0,0,124,0,0,106,0,0,124,1,0,124,2,0, + 131,2,0,125,3,0,124,3,0,100,0,0,107,8,0,114, + 34,0,100,0,0,83,116,1,0,124,1,0,124,3,0,131, + 2,0,83,41,1,78,41,2,114,16,1,0,0,114,177,0, + 0,0,41,4,114,80,1,0,0,114,67,0,0,0,114,35, + 0,0,0,114,173,0,0,0,114,4,0,0,0,114,4,0, + 0,0,114,5,0,0,0,218,17,95,102,105,110,100,95,115, + 112,101,99,95,108,101,103,97,99,121,88,8,0,0,115,8, + 0,0,0,0,3,18,1,12,1,4,1,114,107,1,0,0, + 99,3,0,0,0,0,0,0,0,9,0,0,0,27,0,0, + 0,67,0,0,0,115,42,1,0,0,116,0,0,106,1,0, + 100,1,0,107,9,0,114,41,0,116,0,0,106,1,0,12, + 114,41,0,116,2,0,106,3,0,100,2,0,116,4,0,131, + 2,0,1,124,0,0,116,0,0,106,5,0,107,6,0,125, + 3,0,120,235,0,116,0,0,106,1,0,68,93,220,0,125, + 4,0,116,6,0,131,0,0,143,90,0,1,121,13,0,124, + 4,0,106,7,0,125,5,0,87,110,51,0,4,116,8,0, + 107,10,0,114,148,0,1,1,1,116,9,0,124,4,0,124, + 0,0,124,1,0,131,3,0,125,6,0,124,6,0,100,1, + 0,107,8,0,114,144,0,119,66,0,89,110,19,0,88,124, + 5,0,124,0,0,124,1,0,124,2,0,131,3,0,125,6, + 0,87,100,1,0,81,82,88,124,6,0,100,1,0,107,9, + 0,114,66,0,124,3,0,12,114,26,1,124,0,0,116,0, + 0,106,5,0,107,6,0,114,26,1,116,0,0,106,5,0, + 124,0,0,25,125,7,0,121,13,0,124,7,0,106,10,0, + 125,8,0,87,110,22,0,4,116,8,0,107,10,0,114,2, + 1,1,1,1,124,6,0,83,89,113,30,1,88,124,8,0, + 100,1,0,107,8,0,114,19,1,124,6,0,83,124,8,0, + 83,113,66,0,124,6,0,83,113,66,0,87,100,1,0,83, + 100,1,0,83,41,3,122,23,70,105,110,100,32,97,32,109, + 111,100,117,108,101,39,115,32,108,111,97,100,101,114,46,78, + 122,22,115,121,115,46,109,101,116,97,95,112,97,116,104,32, + 105,115,32,101,109,112,116,121,41,11,114,7,0,0,0,218, + 9,109,101,116,97,95,112,97,116,104,114,118,0,0,0,114, + 119,0,0,0,114,172,0,0,0,114,73,0,0,0,114,103, + 1,0,0,114,15,1,0,0,114,211,0,0,0,114,107,1, + 0,0,114,210,0,0,0,41,9,114,67,0,0,0,114,35, + 0,0,0,114,14,1,0,0,90,9,105,115,95,114,101,108, + 111,97,100,114,80,1,0,0,114,15,1,0,0,114,180,0, + 0,0,114,181,0,0,0,114,210,0,0,0,114,4,0,0, + 0,114,4,0,0,0,114,5,0,0,0,218,10,95,102,105, + 110,100,95,115,112,101,99,97,8,0,0,115,48,0,0,0, + 0,2,25,1,16,4,15,1,16,1,10,1,3,1,13,1, + 13,1,18,1,12,1,8,2,25,1,12,2,22,1,13,1, + 3,1,13,1,13,4,9,2,12,1,4,2,7,2,8,2, + 114,109,1,0,0,99,3,0,0,0,0,0,0,0,4,0, + 0,0,4,0,0,0,67,0,0,0,115,179,0,0,0,116, + 0,0,124,0,0,116,1,0,131,2,0,115,42,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,124,2,0,100,2,0,107, + 0,0,114,66,0,116,5,0,100,3,0,131,1,0,130,1, + 0,124,1,0,114,144,0,116,0,0,124,1,0,116,1,0, + 131,2,0,115,102,0,116,2,0,100,4,0,131,1,0,130, + 1,0,110,42,0,124,1,0,116,6,0,106,7,0,107,7, + 0,114,144,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,124, + 0,0,12,114,175,0,124,2,0,100,2,0,107,2,0,114, + 175,0,116,5,0,100,6,0,131,1,0,130,1,0,100,7, + 0,83,41,8,122,28,86,101,114,105,102,121,32,97,114,103, + 117,109,101,110,116,115,32,97,114,101,32,34,115,97,110,101, + 34,46,122,31,109,111,100,117,108,101,32,110,97,109,101,32, + 109,117,115,116,32,98,101,32,115,116,114,44,32,110,111,116, + 32,123,125,114,84,0,0,0,122,18,108,101,118,101,108,32, + 109,117,115,116,32,98,101,32,62,61,32,48,122,31,95,95, + 112,97,99,107,97,103,101,95,95,32,110,111,116,32,115,101, + 116,32,116,111,32,97,32,115,116,114,105,110,103,122,61,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,122,17,69,109, + 112,116,121,32,109,111,100,117,108,101,32,110,97,109,101,78, + 41,9,114,194,0,0,0,114,127,0,0,0,114,121,0,0, + 0,114,47,0,0,0,114,66,0,0,0,114,129,0,0,0, + 114,7,0,0,0,114,73,0,0,0,218,11,83,121,115,116, + 101,109,69,114,114,111,114,41,4,114,67,0,0,0,114,104, + 1,0,0,114,105,1,0,0,114,175,0,0,0,114,4,0, + 0,0,114,4,0,0,0,114,5,0,0,0,218,13,95,115, + 97,110,105,116,121,95,99,104,101,99,107,137,8,0,0,115, + 24,0,0,0,0,2,15,1,27,1,12,1,12,1,6,1, + 15,1,15,1,15,1,6,2,21,1,19,1,114,111,1,0, + 0,122,16,78,111,32,109,111,100,117,108,101,32,110,97,109, + 101,100,32,122,4,123,33,114,125,99,2,0,0,0,0,0, + 0,0,8,0,0,0,12,0,0,0,67,0,0,0,115,40, + 1,0,0,100,0,0,125,2,0,124,0,0,106,0,0,100, + 1,0,131,1,0,100,2,0,25,125,3,0,124,3,0,114, + 175,0,124,3,0,116,1,0,106,2,0,107,7,0,114,59, + 0,116,3,0,124,1,0,124,3,0,131,2,0,1,124,0, + 0,116,1,0,106,2,0,107,6,0,114,85,0,116,1,0, + 106,2,0,124,0,0,25,83,116,1,0,106,2,0,124,3, + 0,25,125,4,0,121,13,0,124,4,0,106,4,0,125,2, + 0,87,110,61,0,4,116,5,0,107,10,0,114,174,0,1, + 1,1,116,6,0,100,3,0,23,106,7,0,124,0,0,124, + 3,0,131,2,0,125,5,0,116,8,0,124,5,0,100,4, + 0,124,0,0,131,1,1,100,0,0,130,2,0,89,110,1, + 0,88,116,9,0,124,0,0,124,2,0,131,2,0,125,6, + 0,124,6,0,100,0,0,107,8,0,114,232,0,116,8,0, + 116,6,0,106,7,0,124,0,0,131,1,0,100,4,0,124, + 0,0,131,1,1,130,1,0,110,12,0,116,10,0,124,6, + 0,131,1,0,125,7,0,124,3,0,114,36,1,116,1,0, + 106,2,0,124,3,0,25,125,4,0,116,11,0,124,4,0, + 124,0,0,106,0,0,100,1,0,131,1,0,100,5,0,25, + 124,7,0,131,3,0,1,124,7,0,83,41,6,78,114,117, + 0,0,0,114,84,0,0,0,122,23,59,32,123,33,114,125, + 32,105,115,32,110,111,116,32,97,32,112,97,99,107,97,103, + 101,114,67,0,0,0,114,115,0,0,0,41,12,114,32,0, + 0,0,114,7,0,0,0,114,73,0,0,0,114,114,0,0, + 0,114,250,0,0,0,114,211,0,0,0,218,8,95,69,82, + 82,95,77,83,71,114,47,0,0,0,114,159,0,0,0,114, + 109,1,0,0,114,8,1,0,0,114,61,0,0,0,41,8, + 114,67,0,0,0,218,7,105,109,112,111,114,116,95,114,35, + 0,0,0,114,236,0,0,0,90,13,112,97,114,101,110,116, + 95,109,111,100,117,108,101,114,175,0,0,0,114,180,0,0, + 0,114,181,0,0,0,114,4,0,0,0,114,4,0,0,0, + 114,5,0,0,0,218,23,95,102,105,110,100,95,97,110,100, + 95,108,111,97,100,95,117,110,108,111,99,107,101,100,157,8, + 0,0,115,42,0,0,0,0,1,6,1,19,1,6,1,15, + 1,13,2,15,1,11,1,13,1,3,1,13,1,13,1,22, + 1,26,1,15,1,12,1,30,2,12,1,6,2,13,1,29, + 1,114,114,1,0,0,99,2,0,0,0,0,0,0,0,2, + 0,0,0,10,0,0,0,67,0,0,0,115,37,0,0,0, + 116,0,0,124,0,0,131,1,0,143,18,0,1,116,1,0, + 124,0,0,124,1,0,131,2,0,83,87,100,1,0,81,82, + 88,100,1,0,83,41,2,122,54,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, + 41,2,114,103,0,0,0,114,114,1,0,0,41,2,114,67, + 0,0,0,114,113,1,0,0,114,4,0,0,0,114,4,0, + 0,0,114,5,0,0,0,218,14,95,102,105,110,100,95,97, + 110,100,95,108,111,97,100,184,8,0,0,115,4,0,0,0, + 0,2,13,1,114,115,1,0,0,99,3,0,0,0,0,0, + 0,0,5,0,0,0,4,0,0,0,67,0,0,0,115,166, + 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,46,0,116, + 1,0,124,0,0,124,1,0,124,2,0,131,3,0,125,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,84,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,2,0,107,8,0,114,152,0, + 116,2,0,106,8,0,131,0,0,1,100,3,0,106,9,0, + 124,0,0,131,1,0,125,4,0,116,10,0,124,4,0,100, + 4,0,124,0,0,131,1,1,130,1,0,116,11,0,124,0, + 0,131,1,0,1,124,3,0,83,41,5,97,50,1,0,0, + 73,109,112,111,114,116,32,97,110,100,32,114,101,116,117,114, + 110,32,116,104,101,32,109,111,100,117,108,101,32,98,97,115, + 101,100,32,111,110,32,105,116,115,32,110,97,109,101,44,32, + 116,104,101,32,112,97,99,107,97,103,101,32,116,104,101,32, + 99,97,108,108,32,105,115,10,32,32,32,32,98,101,105,110, + 103,32,109,97,100,101,32,102,114,111,109,44,32,97,110,100, + 32,116,104,101,32,108,101,118,101,108,32,97,100,106,117,115, + 116,109,101,110,116,46,10,10,32,32,32,32,84,104,105,115, + 32,102,117,110,99,116,105,111,110,32,114,101,112,114,101,115, + 101,110,116,115,32,116,104,101,32,103,114,101,97,116,101,115, + 116,32,99,111,109,109,111,110,32,100,101,110,111,109,105,110, + 97,116,111,114,32,111,102,32,102,117,110,99,116,105,111,110, + 97,108,105,116,121,10,32,32,32,32,98,101,116,119,101,101, + 110,32,105,109,112,111,114,116,95,109,111,100,117,108,101,32, + 97,110,100,32,95,95,105,109,112,111,114,116,95,95,46,32, + 84,104,105,115,32,105,110,99,108,117,100,101,115,32,115,101, + 116,116,105,110,103,32,95,95,112,97,99,107,97,103,101,95, + 95,32,105,102,10,32,32,32,32,116,104,101,32,108,111,97, + 100,101,114,32,100,105,100,32,110,111,116,46,10,10,32,32, + 32,32,114,84,0,0,0,78,122,40,105,109,112,111,114,116, + 32,111,102,32,123,125,32,104,97,108,116,101,100,59,32,78, + 111,110,101,32,105,110,32,115,121,115,46,109,111,100,117,108, + 101,115,114,67,0,0,0,41,12,114,111,1,0,0,114,106, + 1,0,0,114,106,0,0,0,114,5,1,0,0,114,7,0, + 0,0,114,73,0,0,0,114,115,1,0,0,218,11,95,103, + 99,100,95,105,109,112,111,114,116,114,107,0,0,0,114,47, + 0,0,0,114,159,0,0,0,114,112,0,0,0,41,5,114, + 67,0,0,0,114,104,1,0,0,114,105,1,0,0,114,181, + 0,0,0,114,133,0,0,0,114,4,0,0,0,114,4,0, + 0,0,114,5,0,0,0,114,116,1,0,0,190,8,0,0, + 115,28,0,0,0,0,9,16,1,12,1,18,1,10,1,15, + 1,13,1,13,1,12,1,10,1,6,1,9,1,18,1,10, + 1,114,116,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,239,0,0,0, + 116,0,0,124,0,0,100,1,0,131,2,0,114,235,0,100, + 2,0,124,1,0,107,6,0,114,83,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,83,0,124,1,0,106,3,0,124,0,0,106,4,0,131, + 1,0,1,120,149,0,124,1,0,68,93,141,0,125,3,0, + 116,0,0,124,0,0,124,3,0,131,2,0,115,90,0,100, + 4,0,106,5,0,124,0,0,106,6,0,124,3,0,131,2, + 0,125,4,0,121,17,0,116,7,0,124,2,0,124,4,0, + 131,2,0,1,87,113,90,0,4,116,8,0,107,10,0,114, + 230,0,1,125,5,0,1,122,47,0,116,9,0,124,5,0, + 131,1,0,106,10,0,116,11,0,131,1,0,114,209,0,124, + 5,0,106,12,0,124,4,0,107,2,0,114,209,0,119,90, + 0,130,0,0,87,89,100,5,0,100,5,0,125,5,0,126, + 5,0,88,113,90,0,88,113,90,0,87,124,0,0,83,41, + 6,122,238,70,105,103,117,114,101,32,111,117,116,32,119,104, + 97,116,32,95,95,105,109,112,111,114,116,95,95,32,115,104, + 111,117,108,100,32,114,101,116,117,114,110,46,10,10,32,32, + 32,32,84,104,101,32,105,109,112,111,114,116,95,32,112,97, + 114,97,109,101,116,101,114,32,105,115,32,97,32,99,97,108, + 108,97,98,108,101,32,119,104,105,99,104,32,116,97,107,101, + 115,32,116,104,101,32,110,97,109,101,32,111,102,32,109,111, + 100,117,108,101,32,116,111,10,32,32,32,32,105,109,112,111, + 114,116,46,32,73,116,32,105,115,32,114,101,113,117,105,114, + 101,100,32,116,111,32,100,101,99,111,117,112,108,101,32,116, + 104,101,32,102,117,110,99,116,105,111,110,32,102,114,111,109, + 32,97,115,115,117,109,105,110,103,32,105,109,112,111,114,116, + 108,105,98,39,115,10,32,32,32,32,105,109,112,111,114,116, + 32,105,109,112,108,101,109,101,110,116,97,116,105,111,110,32, + 105,115,32,100,101,115,105,114,101,100,46,10,10,32,32,32, + 32,114,250,0,0,0,250,1,42,218,7,95,95,97,108,108, + 95,95,122,5,123,125,46,123,125,78,41,13,114,60,0,0, + 0,114,249,0,0,0,218,6,114,101,109,111,118,101,114,199, + 0,0,0,114,118,1,0,0,114,47,0,0,0,114,57,0, + 0,0,114,114,0,0,0,114,159,0,0,0,114,127,0,0, + 0,114,9,0,0,0,218,15,95,69,82,82,95,77,83,71, + 95,80,82,69,70,73,88,114,67,0,0,0,41,6,114,181, + 0,0,0,218,8,102,114,111,109,108,105,115,116,114,113,1, + 0,0,114,16,0,0,0,90,9,102,114,111,109,95,110,97, + 109,101,114,43,1,0,0,114,4,0,0,0,114,4,0,0, + 0,114,5,0,0,0,218,16,95,104,97,110,100,108,101,95, + 102,114,111,109,108,105,115,116,214,8,0,0,115,34,0,0, + 0,0,10,15,1,12,1,12,1,13,1,15,1,16,1,13, + 1,15,1,21,1,3,1,17,1,18,4,21,1,15,1,3, + 1,26,1,114,122,1,0,0,99,1,0,0,0,0,0,0, + 0,2,0,0,0,2,0,0,0,67,0,0,0,115,72,0, + 0,0,124,0,0,106,0,0,100,1,0,131,1,0,125,1, + 0,124,1,0,100,2,0,107,8,0,114,68,0,124,0,0, + 100,3,0,25,125,1,0,100,4,0,124,0,0,107,7,0, + 114,68,0,124,1,0,106,1,0,100,5,0,131,1,0,100, + 6,0,25,125,1,0,124,1,0,83,41,7,122,167,67,97, + 108,99,117,108,97,116,101,32,119,104,97,116,32,95,95,112, + 97,99,107,97,103,101,95,95,32,115,104,111,117,108,100,32, + 98,101,46,10,10,32,32,32,32,95,95,112,97,99,107,97, + 103,101,95,95,32,105,115,32,110,111,116,32,103,117,97,114, + 97,110,116,101,101,100,32,116,111,32,98,101,32,100,101,102, + 105,110,101,100,32,111,114,32,99,111,117,108,100,32,98,101, + 32,115,101,116,32,116,111,32,78,111,110,101,10,32,32,32, + 32,116,111,32,114,101,112,114,101,115,101,110,116,32,116,104, + 97,116,32,105,116,115,32,112,114,111,112,101,114,32,118,97, + 108,117,101,32,105,115,32,117,110,107,110,111,119,110,46,10, + 10,32,32,32,32,114,253,0,0,0,78,114,57,0,0,0, + 114,250,0,0,0,114,117,0,0,0,114,84,0,0,0,41, + 2,114,93,0,0,0,114,32,0,0,0,41,2,218,7,103, + 108,111,98,97,108,115,114,104,1,0,0,114,4,0,0,0, + 114,4,0,0,0,114,5,0,0,0,218,17,95,99,97,108, + 99,95,95,95,112,97,99,107,97,103,101,95,95,246,8,0, + 0,115,12,0,0,0,0,7,15,1,12,1,10,1,12,1, + 19,1,114,124,1,0,0,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,41,1,122,95,82,101,116,117, + 114,110,115,32,97,32,108,105,115,116,32,111,102,32,102,105, + 108,101,45,98,97,115,101,100,32,109,111,100,117,108,101,32, + 108,111,97,100,101,114,115,46,10,10,32,32,32,32,69,97, + 99,104,32,105,116,101,109,32,105,115,32,97,32,116,117,112, + 108,101,32,40,108,111,97,100,101,114,44,32,115,117,102,102, + 105,120,101,115,41,46,10,32,32,32,32,41,7,114,59,1, + 0,0,114,106,0,0,0,218,18,101,120,116,101,110,115,105, + 111,110,95,115,117,102,102,105,120,101,115,114,10,1,0,0, + 114,142,0,0,0,114,9,1,0,0,114,132,0,0,0,41, + 3,90,10,101,120,116,101,110,115,105,111,110,115,90,6,115, + 111,117,114,99,101,90,8,98,121,116,101,99,111,100,101,114, + 4,0,0,0,114,4,0,0,0,114,5,0,0,0,114,243, + 0,0,0,5,9,0,0,115,8,0,0,0,0,5,18,1, + 12,1,12,1,114,243,0,0,0,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,2,0,107,9,0,114,45,0,124,1,0,110,3,0, + 105,0,0,125,6,0,116,1,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,2,0,100, + 3,0,131,1,0,100,1,0,25,131,1,0,83,124,0,0, + 115,132,0,124,5,0,83,116,3,0,124,0,0,131,1,0, + 116,3,0,124,0,0,106,2,0,100,3,0,131,1,0,100, + 1,0,25,131,1,0,24,125,8,0,116,4,0,106,5,0, + 124,5,0,106,6,0,100,2,0,116,3,0,124,5,0,106, + 6,0,131,1,0,124,8,0,24,133,2,0,25,25,83,110, + 16,0,116,7,0,124,5,0,124,3,0,116,0,0,131,3, + 0,83,100,2,0,83,41,4,97,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,114,84,0,0,0,78,114,117,0,0,0,41,8, + 114,116,1,0,0,114,124,1,0,0,114,141,0,0,0,114, + 31,0,0,0,114,7,0,0,0,114,73,0,0,0,114,57, + 0,0,0,114,122,1,0,0,41,9,114,67,0,0,0,114, + 123,1,0,0,218,6,108,111,99,97,108,115,114,121,1,0, + 0,114,105,1,0,0,114,181,0,0,0,90,8,103,108,111, + 98,97,108,115,95,114,104,1,0,0,90,7,99,117,116,95, + 111,102,102,114,4,0,0,0,114,4,0,0,0,114,5,0, + 0,0,218,10,95,95,105,109,112,111,114,116,95,95,16,9, + 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,114,127,1,0,0,99,1,0,0,0,0,0,0,0,2, + 0,0,0,3,0,0,0,67,0,0,0,115,53,0,0,0, + 116,0,0,106,1,0,124,0,0,131,1,0,125,1,0,124, + 1,0,100,0,0,107,8,0,114,43,0,116,2,0,100,1, + 0,124,0,0,23,131,1,0,130,1,0,116,3,0,124,1, + 0,131,1,0,83,41,2,78,122,25,110,111,32,98,117,105, + 108,116,45,105,110,32,109,111,100,117,108,101,32,110,97,109, + 101,100,32,41,4,114,12,1,0,0,114,15,1,0,0,114, + 159,0,0,0,114,8,1,0,0,41,2,114,67,0,0,0, + 114,180,0,0,0,114,4,0,0,0,114,4,0,0,0,114, + 5,0,0,0,218,18,95,98,117,105,108,116,105,110,95,102, + 114,111,109,95,110,97,109,101,51,9,0,0,115,8,0,0, + 0,0,1,15,1,12,1,16,1,114,128,1,0,0,99,2, + 0,0,0,0,0,0,0,18,0,0,0,12,0,0,0,67, + 0,0,0,115,181,2,0,0,124,1,0,97,0,0,124,0, + 0,97,1,0,116,2,0,116,1,0,131,1,0,125,2,0, + 120,123,0,116,1,0,106,3,0,106,4,0,131,0,0,68, + 93,106,0,92,2,0,125,3,0,125,4,0,116,5,0,124, + 4,0,124,2,0,131,2,0,114,40,0,124,3,0,116,1, + 0,106,6,0,107,6,0,114,91,0,116,7,0,125,5,0, + 110,27,0,116,0,0,106,8,0,124,3,0,131,1,0,114, + 40,0,116,9,0,125,5,0,110,3,0,113,40,0,116,10, + 0,124,4,0,124,5,0,131,2,0,125,6,0,116,11,0, + 124,6,0,124,4,0,131,2,0,1,113,40,0,87,116,1, + 0,106,3,0,116,12,0,25,125,7,0,120,73,0,100,26, + 0,68,93,65,0,125,8,0,124,8,0,116,1,0,106,3, + 0,107,7,0,114,206,0,116,13,0,124,8,0,131,1,0, + 125,9,0,110,13,0,116,1,0,106,3,0,124,8,0,25, + 125,9,0,116,14,0,124,7,0,124,8,0,124,9,0,131, + 3,0,1,113,170,0,87,100,5,0,100,6,0,103,1,0, + 102,2,0,100,7,0,100,8,0,100,6,0,103,2,0,102, + 2,0,102,2,0,125,10,0,120,146,0,124,10,0,68,93, + 126,0,92,2,0,125,11,0,125,12,0,116,15,0,100,9, + 0,100,10,0,132,0,0,124,12,0,68,131,1,0,131,1, + 0,115,66,1,116,16,0,130,1,0,124,12,0,100,11,0, + 25,125,13,0,124,11,0,116,1,0,106,3,0,107,6,0, + 114,108,1,116,1,0,106,3,0,124,11,0,25,125,14,0, + 80,113,23,1,121,17,0,116,13,0,124,11,0,131,1,0, + 125,14,0,80,87,113,23,1,4,116,17,0,107,10,0,114, + 148,1,1,1,1,119,23,1,89,113,23,1,88,113,23,1, + 87,116,17,0,100,12,0,131,1,0,130,1,0,116,14,0, + 124,7,0,100,13,0,124,14,0,131,3,0,1,116,14,0, + 124,7,0,100,14,0,124,13,0,131,3,0,1,116,14,0, + 124,7,0,100,15,0,100,16,0,106,18,0,124,12,0,131, + 1,0,131,3,0,1,121,16,0,116,13,0,100,17,0,131, + 1,0,125,15,0,87,110,24,0,4,116,17,0,107,10,0, + 114,8,2,1,1,1,100,18,0,125,15,0,89,110,1,0, + 88,116,14,0,124,7,0,100,17,0,124,15,0,131,3,0, + 1,116,13,0,100,19,0,131,1,0,125,16,0,116,14,0, + 124,7,0,100,19,0,124,16,0,131,3,0,1,124,11,0, + 100,7,0,107,2,0,114,93,2,116,13,0,100,20,0,131, + 1,0,125,17,0,116,14,0,124,7,0,100,21,0,124,17, + 0,131,3,0,1,116,14,0,124,7,0,100,22,0,116,19, + 0,131,0,0,131,3,0,1,116,20,0,106,21,0,116,0, + 0,106,22,0,131,0,0,131,1,0,1,124,11,0,100,7, + 0,107,2,0,114,177,2,116,23,0,106,24,0,100,23,0, + 131,1,0,1,100,24,0,116,20,0,107,6,0,114,177,2, + 100,25,0,116,25,0,95,26,0,100,18,0,83,41,27,122, + 250,83,101,116,117,112,32,105,109,112,111,114,116,108,105,98, + 32,98,121,32,105,109,112,111,114,116,105,110,103,32,110,101, + 101,100,101,100,32,98,117,105,108,116,45,105,110,32,109,111, + 100,117,108,101,115,32,97,110,100,32,105,110,106,101,99,116, + 105,110,103,32,116,104,101,109,10,32,32,32,32,105,110,116, + 111,32,116,104,101,32,103,108,111,98,97,108,32,110,97,109, + 101,115,112,97,99,101,46,10,10,32,32,32,32,65,115,32, + 115,121,115,32,105,115,32,110,101,101,100,101,100,32,102,111, + 114,32,115,121,115,46,109,111,100,117,108,101,115,32,97,99, + 99,101,115,115,32,97,110,100,32,95,105,109,112,32,105,115, + 32,110,101,101,100,101,100,32,116,111,32,108,111,97,100,32, + 98,117,105,108,116,45,105,110,10,32,32,32,32,109,111,100, + 117,108,101,115,44,32,116,104,111,115,101,32,116,119,111,32, + 109,111,100,117,108,101,115,32,109,117,115,116,32,98,101,32, + 101,120,112,108,105,99,105,116,108,121,32,112,97,115,115,101, + 100,32,105,110,46,10,10,32,32,32,32,114,49,0,0,0, + 114,118,0,0,0,218,8,98,117,105,108,116,105,110,115,114, + 193,0,0,0,90,5,112,111,115,105,120,250,1,47,218,2, + 110,116,250,1,92,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, + 41,2,114,29,0,0,0,78,41,1,114,31,0,0,0,41, + 2,114,22,0,0,0,114,136,0,0,0,114,4,0,0,0, + 114,4,0,0,0,114,5,0,0,0,114,77,0,0,0,96, + 9,0,0,115,2,0,0,0,6,0,122,25,95,115,101,116, + 117,112,46,60,108,111,99,97,108,115,62,46,60,103,101,110, + 101,120,112,114,62,114,84,0,0,0,122,30,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,114,3,0,0,0,114, + 25,0,0,0,114,21,0,0,0,114,30,0,0,0,114,85, + 0,0,0,78,114,111,0,0,0,90,6,119,105,110,114,101, + 103,114,26,1,0,0,114,6,0,0,0,122,4,46,112,121, + 119,122,6,95,100,46,112,121,100,84,41,4,122,3,95,105, + 111,122,9,95,119,97,114,110,105,110,103,115,122,8,98,117, + 105,108,116,105,110,115,122,7,109,97,114,115,104,97,108,41, + 27,114,106,0,0,0,114,7,0,0,0,114,66,0,0,0, + 114,73,0,0,0,218,5,105,116,101,109,115,114,194,0,0, + 0,114,163,0,0,0,114,12,1,0,0,114,168,0,0,0, + 114,21,1,0,0,114,251,0,0,0,114,1,1,0,0,114, + 57,0,0,0,114,128,1,0,0,114,61,0,0,0,218,3, + 97,108,108,114,100,0,0,0,114,159,0,0,0,114,26,0, + 0,0,114,11,0,0,0,114,62,1,0,0,114,199,0,0, + 0,114,125,1,0,0,114,142,0,0,0,114,227,0,0,0, + 114,25,1,0,0,114,29,1,0,0,41,18,218,10,115,121, + 115,95,109,111,100,117,108,101,218,11,95,105,109,112,95,109, + 111,100,117,108,101,90,11,109,111,100,117,108,101,95,116,121, + 112,101,114,67,0,0,0,114,181,0,0,0,114,173,0,0, + 0,114,180,0,0,0,90,11,115,101,108,102,95,109,111,100, + 117,108,101,90,12,98,117,105,108,116,105,110,95,110,97,109, + 101,90,14,98,117,105,108,116,105,110,95,109,111,100,117,108, + 101,90,10,111,115,95,100,101,116,97,105,108,115,90,10,98, + 117,105,108,116,105,110,95,111,115,114,21,0,0,0,114,25, + 0,0,0,90,9,111,115,95,109,111,100,117,108,101,90,13, + 116,104,114,101,97,100,95,109,111,100,117,108,101,90,14,119, + 101,97,107,114,101,102,95,109,111,100,117,108,101,90,13,119, + 105,110,114,101,103,95,109,111,100,117,108,101,114,4,0,0, + 0,114,4,0,0,0,114,5,0,0,0,218,6,95,115,101, + 116,117,112,58,9,0,0,115,100,0,0,0,0,9,6,1, + 6,3,12,1,28,1,15,1,15,1,9,1,15,1,9,2, + 3,1,15,1,17,3,13,1,13,1,15,1,15,2,13,1, + 20,3,33,1,19,2,31,1,10,1,15,1,13,1,4,2, + 3,1,12,1,5,1,13,1,12,2,12,1,16,1,16,1, + 25,3,3,1,16,1,13,2,11,1,16,3,12,1,16,3, + 12,1,12,1,16,3,19,1,19,1,12,1,13,1,12,1, + 114,137,1,0,0,99,2,0,0,0,0,0,0,0,3,0, + 0,0,3,0,0,0,67,0,0,0,115,133,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,113,0, + 116,2,0,106,7,0,106,8,0,116,13,0,131,1,0,1, + 116,2,0,106,7,0,106,8,0,116,14,0,131,1,0,1, + 100,2,0,83,41,3,122,50,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,114,131,1,0,0,78, + 41,15,114,137,1,0,0,114,243,0,0,0,114,7,0,0, + 0,114,81,1,0,0,114,199,0,0,0,114,89,1,0,0, + 114,102,1,0,0,114,108,1,0,0,114,227,0,0,0,114, + 12,1,0,0,114,21,1,0,0,114,3,0,0,0,114,57, + 0,0,0,114,25,1,0,0,114,76,1,0,0,41,3,114, + 135,1,0,0,114,136,1,0,0,90,17,115,117,112,112,111, + 114,116,101,100,95,108,111,97,100,101,114,115,114,4,0,0, + 0,114,4,0,0,0,114,5,0,0,0,218,8,95,105,110, + 115,116,97,108,108,139,9,0,0,115,16,0,0,0,0,2, + 13,1,9,1,28,1,16,1,16,1,15,1,16,1,114,138, + 1,0,0,41,3,122,3,119,105,110,114,1,0,0,0,114, + 2,0,0,0,41,100,114,59,0,0,0,114,10,0,0,0, + 114,11,0,0,0,114,17,0,0,0,114,19,0,0,0,114, + 28,0,0,0,114,38,0,0,0,114,39,0,0,0,114,43, + 0,0,0,114,44,0,0,0,114,46,0,0,0,114,55,0, + 0,0,114,65,0,0,0,114,68,0,0,0,114,66,0,0, + 0,218,8,95,95,99,111,100,101,95,95,114,195,0,0,0, + 114,69,0,0,0,114,109,0,0,0,114,92,0,0,0,114, + 99,0,0,0,114,82,0,0,0,114,83,0,0,0,114,102, + 0,0,0,114,103,0,0,0,114,105,0,0,0,114,112,0, + 0,0,114,114,0,0,0,114,15,0,0,0,114,187,0,0, + 0,114,14,0,0,0,114,18,0,0,0,90,17,95,82,65, + 87,95,77,65,71,73,67,95,78,85,77,66,69,82,114,131, + 0,0,0,114,130,0,0,0,114,142,0,0,0,114,132,0, + 0,0,90,23,68,69,66,85,71,95,66,89,84,69,67,79, + 68,69,95,83,85,70,70,73,88,69,83,90,27,79,80,84, + 73,77,73,90,69,68,95,66,89,84,69,67,79,68,69,95, + 83,85,70,70,73,88,69,83,114,138,0,0,0,114,143,0, + 0,0,114,149,0,0,0,114,151,0,0,0,114,158,0,0, + 0,114,162,0,0,0,114,167,0,0,0,114,170,0,0,0, + 114,176,0,0,0,114,182,0,0,0,114,192,0,0,0,114, + 197,0,0,0,114,200,0,0,0,114,205,0,0,0,114,215, + 0,0,0,114,216,0,0,0,114,220,0,0,0,114,177,0, + 0,0,218,6,111,98,106,101,99,116,114,244,0,0,0,114, + 242,0,0,0,114,251,0,0,0,114,1,1,0,0,114,4, + 1,0,0,114,212,0,0,0,114,178,0,0,0,114,7,1, + 0,0,114,8,1,0,0,114,179,0,0,0,114,11,1,0, + 0,114,12,1,0,0,114,21,1,0,0,114,25,1,0,0, + 114,35,1,0,0,114,36,1,0,0,114,51,1,0,0,114, + 10,1,0,0,114,9,1,0,0,114,62,1,0,0,114,59, + 1,0,0,114,63,1,0,0,114,254,0,0,0,114,76,1, + 0,0,114,89,1,0,0,114,103,1,0,0,114,106,1,0, + 0,114,107,1,0,0,114,109,1,0,0,114,111,1,0,0, + 114,120,1,0,0,114,112,1,0,0,114,114,1,0,0,114, + 115,1,0,0,114,116,1,0,0,114,122,1,0,0,114,124, + 1,0,0,114,243,0,0,0,114,127,1,0,0,114,128,1, + 0,0,114,137,1,0,0,114,138,1,0,0,114,4,0,0, 0,114,4,0,0,0,114,4,0,0,0,114,5,0,0,0, - 114,6,1,0,0,28,7,0,0,115,4,0,0,0,0,7, - 16,1,122,28,95,78,97,109,101,115,112,97,99,101,76,111, - 97,100,101,114,46,108,111,97,100,95,109,111,100,117,108,101, - 78,41,12,114,57,0,0,0,114,56,0,0,0,114,58,0, - 0,0,114,72,0,0,0,114,20,1,0,0,114,207,0,0, - 0,114,223,0,0,0,114,18,1,0,0,114,17,1,0,0, - 114,2,1,0,0,114,3,1,0,0,114,6,1,0,0,114, - 4,0,0,0,114,4,0,0,0,114,4,0,0,0,114,5, - 0,0,0,114,254,0,0,0,0,7,0,0,115,16,0,0, - 0,12,1,12,3,18,9,12,3,12,3,12,3,12,3,12, - 3,114,254,0,0,0,99,0,0,0,0,0,0,0,0,0, - 0,0,0,5,0,0,0,64,0,0,0,115,160,0,0,0, - 101,0,0,90,1,0,100,0,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,10,0, - 100,11,0,100,12,0,132,1,0,131,1,0,90,9,0,101, - 4,0,100,10,0,100,10,0,100,13,0,100,14,0,132,2, - 0,131,1,0,90,10,0,101,4,0,100,10,0,100,15,0, - 100,16,0,132,1,0,131,1,0,90,11,0,100,10,0,83, - 41,17,218,10,80,97,116,104,70,105,110,100,101,114,122,62, - 77,101,116,97,32,112,97,116,104,32,102,105,110,100,101,114, - 32,102,111,114,32,115,121,115,46,112,97,116,104,32,97,110, - 100,32,112,97,99,107,97,103,101,32,95,95,112,97,116,104, - 95,95,32,97,116,116,114,105,98,117,116,101,115,46,99,1, - 0,0,0,0,0,0,0,2,0,0,0,4,0,0,0,67, - 0,0,0,115,55,0,0,0,120,48,0,116,0,0,106,1, - 0,106,2,0,131,0,0,68,93,31,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,87,100,2,0,83,41, - 3,122,125,67,97,108,108,32,116,104,101,32,105,110,118,97, - 108,105,100,97,116,101,95,99,97,99,104,101,115,40,41,32, - 109,101,116,104,111,100,32,111,110,32,97,108,108,32,112,97, - 116,104,32,101,110,116,114,121,32,102,105,110,100,101,114,115, - 10,32,32,32,32,32,32,32,32,115,116,111,114,101,100,32, - 105,110,32,115,121,115,46,112,97,116,104,95,105,109,112,111, - 114,116,101,114,95,99,97,99,104,101,115,32,40,119,104,101, - 114,101,32,105,109,112,108,101,109,101,110,116,101,100,41,46, - 218,17,105,110,118,97,108,105,100,97,116,101,95,99,97,99, - 104,101,115,78,41,5,114,7,0,0,0,218,19,112,97,116, - 104,95,105,109,112,111,114,116,101,114,95,99,97,99,104,101, - 218,6,118,97,108,117,101,115,114,60,0,0,0,114,77,1, - 0,0,41,2,114,13,1,0,0,218,6,102,105,110,100,101, - 114,114,4,0,0,0,114,4,0,0,0,114,5,0,0,0, - 114,77,1,0,0,45,7,0,0,115,6,0,0,0,0,4, - 22,1,15,1,122,28,80,97,116,104,70,105,110,100,101,114, - 46,105,110,118,97,108,105,100,97,116,101,95,99,97,99,104, - 101,115,99,2,0,0,0,0,0,0,0,3,0,0,0,12, - 0,0,0,67,0,0,0,115,107,0,0,0,116,0,0,106, - 1,0,100,1,0,107,9,0,114,41,0,116,0,0,106,1, - 0,12,114,41,0,116,2,0,106,3,0,100,2,0,116,4, - 0,131,2,0,1,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,51,0,4,116,5,0,107,10,0,114,94,0, - 1,1,1,119,51,0,89,113,51,0,88,113,51,0,87,100, - 1,0,83,100,1,0,83,41,3,122,113,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,78,122,23,115, - 121,115,46,112,97,116,104,95,104,111,111,107,115,32,105,115, - 32,101,109,112,116,121,41,6,114,7,0,0,0,218,10,112, - 97,116,104,95,104,111,111,107,115,114,118,0,0,0,114,119, - 0,0,0,114,172,0,0,0,114,159,0,0,0,41,3,114, - 13,1,0,0,114,35,0,0,0,90,4,104,111,111,107,114, - 4,0,0,0,114,4,0,0,0,114,5,0,0,0,218,11, - 95,112,97,116,104,95,104,111,111,107,115,53,7,0,0,115, - 16,0,0,0,0,7,25,1,16,1,16,1,3,1,14,1, - 13,1,12,2,122,22,80,97,116,104,70,105,110,100,101,114, - 46,95,112,97,116,104,95,104,111,111,107,115,99,2,0,0, - 0,0,0,0,0,3,0,0,0,19,0,0,0,67,0,0, - 0,115,123,0,0,0,124,1,0,100,1,0,107,2,0,114, - 53,0,121,16,0,116,0,0,106,1,0,131,0,0,125,1, - 0,87,110,22,0,4,116,2,0,107,10,0,114,52,0,1, - 1,1,100,2,0,83,89,110,1,0,88,121,17,0,116,3, - 0,106,4,0,124,1,0,25,125,2,0,87,110,46,0,4, - 116,5,0,107,10,0,114,118,0,1,1,1,124,0,0,106, - 6,0,124,1,0,131,1,0,125,2,0,124,2,0,116,3, - 0,106,4,0,124,1,0,60,89,110,1,0,88,124,2,0, - 83,41,3,122,210,71,101,116,32,116,104,101,32,102,105,110, - 100,101,114,32,102,111,114,32,116,104,101,32,112,97,116,104, - 32,101,110,116,114,121,32,102,114,111,109,32,115,121,115,46, - 112,97,116,104,95,105,109,112,111,114,116,101,114,95,99,97, - 99,104,101,46,10,10,32,32,32,32,32,32,32,32,73,102, - 32,116,104,101,32,112,97,116,104,32,101,110,116,114,121,32, - 105,115,32,110,111,116,32,105,110,32,116,104,101,32,99,97, - 99,104,101,44,32,102,105,110,100,32,116,104,101,32,97,112, - 112,114,111,112,114,105,97,116,101,32,102,105,110,100,101,114, - 10,32,32,32,32,32,32,32,32,97,110,100,32,99,97,99, - 104,101,32,105,116,46,32,73,102,32,110,111,32,102,105,110, - 100,101,114,32,105,115,32,97,118,97,105,108,97,98,108,101, - 44,32,115,116,111,114,101,32,78,111,110,101,46,10,10,32, - 32,32,32,32,32,32,32,114,30,0,0,0,78,41,7,114, - 3,0,0,0,114,45,0,0,0,218,17,70,105,108,101,78, - 111,116,70,111,117,110,100,69,114,114,111,114,114,7,0,0, - 0,114,78,1,0,0,114,79,0,0,0,114,82,1,0,0, - 41,3,114,13,1,0,0,114,35,0,0,0,114,80,1,0, - 0,114,4,0,0,0,114,4,0,0,0,114,5,0,0,0, - 218,20,95,112,97,116,104,95,105,109,112,111,114,116,101,114, - 95,99,97,99,104,101,70,7,0,0,115,22,0,0,0,0, - 8,12,1,3,1,16,1,13,3,9,1,3,1,17,1,13, - 1,15,1,18,1,122,31,80,97,116,104,70,105,110,100,101, - 114,46,95,112,97,116,104,95,105,109,112,111,114,116,101,114, - 95,99,97,99,104,101,99,3,0,0,0,0,0,0,0,6, - 0,0,0,3,0,0,0,67,0,0,0,115,113,0,0,0, - 116,0,0,124,2,0,100,1,0,131,2,0,114,39,0,124, - 2,0,106,1,0,124,1,0,131,1,0,92,2,0,125,3, - 0,125,4,0,110,21,0,124,2,0,106,2,0,124,1,0, - 131,1,0,125,3,0,103,0,0,125,4,0,124,3,0,100, - 0,0,107,9,0,114,85,0,116,3,0,124,1,0,124,3, - 0,131,2,0,83,116,4,0,124,1,0,100,0,0,131,2, - 0,125,5,0,124,4,0,124,5,0,95,5,0,124,5,0, - 83,41,2,78,114,171,0,0,0,41,6,114,60,0,0,0, - 114,171,0,0,0,114,16,1,0,0,114,177,0,0,0,114, - 220,0,0,0,114,224,0,0,0,41,6,114,13,1,0,0, - 114,164,0,0,0,114,80,1,0,0,114,173,0,0,0,114, - 174,0,0,0,114,180,0,0,0,114,4,0,0,0,114,4, - 0,0,0,114,5,0,0,0,218,16,95,108,101,103,97,99, - 121,95,103,101,116,95,115,112,101,99,92,7,0,0,115,18, - 0,0,0,0,4,15,1,24,2,15,1,6,1,12,1,13, - 1,15,1,9,1,122,27,80,97,116,104,70,105,110,100,101, - 114,46,95,108,101,103,97,99,121,95,103,101,116,95,115,112, - 101,99,78,99,4,0,0,0,0,0,0,0,9,0,0,0, - 5,0,0,0,67,0,0,0,115,240,0,0,0,103,0,0, - 125,4,0,120,227,0,124,2,0,68,93,191,0,125,5,0, - 116,0,0,124,5,0,116,1,0,116,2,0,102,2,0,131, - 2,0,115,43,0,113,13,0,124,0,0,106,3,0,124,5, - 0,131,1,0,125,6,0,124,6,0,100,1,0,107,9,0, - 114,13,0,116,4,0,124,6,0,100,2,0,131,2,0,114, - 106,0,124,6,0,106,5,0,124,1,0,124,3,0,131,2, - 0,125,7,0,110,18,0,124,0,0,106,6,0,124,1,0, - 124,6,0,131,2,0,125,7,0,124,7,0,100,1,0,107, - 8,0,114,139,0,113,13,0,124,7,0,106,7,0,100,1, - 0,107,9,0,114,158,0,124,7,0,83,124,7,0,106,8, - 0,125,8,0,124,8,0,100,1,0,107,8,0,114,191,0, - 116,9,0,100,3,0,131,1,0,130,1,0,124,4,0,106, - 10,0,124,8,0,131,1,0,1,113,13,0,87,116,11,0, - 124,1,0,100,1,0,131,2,0,125,7,0,124,4,0,124, - 7,0,95,8,0,124,7,0,83,100,1,0,83,41,4,122, - 63,70,105,110,100,32,116,104,101,32,108,111,97,100,101,114, - 32,111,114,32,110,97,109,101,115,112,97,99,101,95,112,97, - 116,104,32,102,111,114,32,116,104,105,115,32,109,111,100,117, - 108,101,47,112,97,99,107,97,103,101,32,110,97,109,101,46, - 78,114,15,1,0,0,122,19,115,112,101,99,32,109,105,115, - 115,105,110,103,32,108,111,97,100,101,114,41,12,114,194,0, - 0,0,114,127,0,0,0,218,5,98,121,116,101,115,114,84, - 1,0,0,114,60,0,0,0,114,15,1,0,0,114,85,1, - 0,0,114,173,0,0,0,114,224,0,0,0,114,159,0,0, - 0,114,199,0,0,0,114,220,0,0,0,41,9,114,13,1, - 0,0,114,164,0,0,0,114,35,0,0,0,114,14,1,0, - 0,218,14,110,97,109,101,115,112,97,99,101,95,112,97,116, - 104,90,5,101,110,116,114,121,114,80,1,0,0,114,180,0, - 0,0,114,174,0,0,0,114,4,0,0,0,114,4,0,0, - 0,114,5,0,0,0,218,9,95,103,101,116,95,115,112,101, - 99,107,7,0,0,115,40,0,0,0,0,5,6,1,13,1, - 21,1,3,1,15,1,12,1,15,1,21,2,18,1,12,1, - 3,1,15,1,4,1,9,1,12,1,12,5,17,2,15,1, - 9,1,122,20,80,97,116,104,70,105,110,100,101,114,46,95, - 103,101,116,95,115,112,101,99,99,4,0,0,0,0,0,0, - 0,6,0,0,0,4,0,0,0,67,0,0,0,115,140,0, - 0,0,124,2,0,100,1,0,107,8,0,114,21,0,116,0, - 0,106,1,0,125,2,0,124,0,0,106,2,0,124,1,0, - 124,2,0,124,3,0,131,3,0,125,4,0,124,4,0,100, - 1,0,107,8,0,114,58,0,100,1,0,83,124,4,0,106, - 3,0,100,1,0,107,8,0,114,132,0,124,4,0,106,4, - 0,125,5,0,124,5,0,114,125,0,100,2,0,124,4,0, - 95,5,0,116,6,0,124,1,0,124,5,0,124,0,0,106, - 2,0,131,3,0,124,4,0,95,4,0,124,4,0,83,100, - 1,0,83,110,4,0,124,4,0,83,100,1,0,83,41,3, - 122,98,102,105,110,100,32,116,104,101,32,109,111,100,117,108, - 101,32,111,110,32,115,121,115,46,112,97,116,104,32,111,114, - 32,39,112,97,116,104,39,32,98,97,115,101,100,32,111,110, - 32,115,121,115,46,112,97,116,104,95,104,111,111,107,115,32, - 97,110,100,10,32,32,32,32,32,32,32,32,115,121,115,46, - 112,97,116,104,95,105,109,112,111,114,116,101,114,95,99,97, - 99,104,101,46,78,90,9,110,97,109,101,115,112,97,99,101, - 41,7,114,7,0,0,0,114,35,0,0,0,114,88,1,0, - 0,114,173,0,0,0,114,224,0,0,0,114,221,0,0,0, - 114,63,1,0,0,41,6,114,13,1,0,0,114,164,0,0, - 0,114,35,0,0,0,114,14,1,0,0,114,180,0,0,0, - 114,87,1,0,0,114,4,0,0,0,114,4,0,0,0,114, - 5,0,0,0,114,15,1,0,0,139,7,0,0,115,26,0, - 0,0,0,4,12,1,9,1,21,1,12,1,4,1,15,1, - 9,1,6,3,9,1,24,1,4,2,7,2,122,20,80,97, - 116,104,70,105,110,100,101,114,46,102,105,110,100,95,115,112, - 101,99,99,3,0,0,0,0,0,0,0,4,0,0,0,3, - 0,0,0,67,0,0,0,115,41,0,0,0,124,0,0,106, - 0,0,124,1,0,124,2,0,131,2,0,125,3,0,124,3, - 0,100,1,0,107,8,0,114,34,0,100,1,0,83,124,3, - 0,106,1,0,83,41,2,122,170,102,105,110,100,32,116,104, - 101,32,109,111,100,117,108,101,32,111,110,32,115,121,115,46, - 112,97,116,104,32,111,114,32,39,112,97,116,104,39,32,98, - 97,115,101,100,32,111,110,32,115,121,115,46,112,97,116,104, - 95,104,111,111,107,115,32,97,110,100,10,32,32,32,32,32, - 32,32,32,115,121,115,46,112,97,116,104,95,105,109,112,111, - 114,116,101,114,95,99,97,99,104,101,46,10,10,32,32,32, - 32,32,32,32,32,84,104,105,115,32,109,101,116,104,111,100, - 32,105,115,32,100,101,112,114,101,99,97,116,101,100,46,32, - 32,85,115,101,32,102,105,110,100,95,115,112,101,99,40,41, - 32,105,110,115,116,101,97,100,46,10,10,32,32,32,32,32, - 32,32,32,78,41,2,114,15,1,0,0,114,173,0,0,0, - 41,4,114,13,1,0,0,114,164,0,0,0,114,35,0,0, - 0,114,180,0,0,0,114,4,0,0,0,114,4,0,0,0, - 114,5,0,0,0,114,16,1,0,0,161,7,0,0,115,8, - 0,0,0,0,8,18,1,12,1,4,1,122,22,80,97,116, - 104,70,105,110,100,101,114,46,102,105,110,100,95,109,111,100, - 117,108,101,41,12,114,57,0,0,0,114,56,0,0,0,114, - 58,0,0,0,114,59,0,0,0,114,20,1,0,0,114,77, - 1,0,0,114,82,1,0,0,114,84,1,0,0,114,85,1, - 0,0,114,88,1,0,0,114,15,1,0,0,114,16,1,0, - 0,114,4,0,0,0,114,4,0,0,0,114,4,0,0,0, - 114,5,0,0,0,114,76,1,0,0,41,7,0,0,115,22, - 0,0,0,12,2,6,2,18,8,18,17,18,22,18,15,3, - 1,18,31,3,1,21,21,3,1,114,76,1,0,0,99,0, - 0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,64, - 0,0,0,115,133,0,0,0,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, - 100,10,0,100,11,0,100,12,0,132,1,0,90,10,0,100, - 13,0,100,14,0,132,0,0,90,11,0,101,12,0,100,15, - 0,100,16,0,132,0,0,131,1,0,90,13,0,100,17,0, - 100,18,0,132,0,0,90,14,0,100,10,0,83,41,19,218, - 10,70,105,108,101,70,105,110,100,101,114,122,172,70,105,108, - 101,45,98,97,115,101,100,32,102,105,110,100,101,114,46,10, - 10,32,32,32,32,73,110,116,101,114,97,99,116,105,111,110, - 115,32,119,105,116,104,32,116,104,101,32,102,105,108,101,32, - 115,121,115,116,101,109,32,97,114,101,32,99,97,99,104,101, - 100,32,102,111,114,32,112,101,114,102,111,114,109,97,110,99, - 101,44,32,98,101,105,110,103,10,32,32,32,32,114,101,102, - 114,101,115,104,101,100,32,119,104,101,110,32,116,104,101,32, - 100,105,114,101,99,116,111,114,121,32,116,104,101,32,102,105, - 110,100,101,114,32,105,115,32,104,97,110,100,108,105,110,103, - 32,104,97,115,32,98,101,101,110,32,109,111,100,105,102,105, - 101,100,46,10,10,32,32,32,32,99,2,0,0,0,0,0, - 0,0,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,41,7,122, - 154,73,110,105,116,105,97,108,105,122,101,32,119,105,116,104, - 32,116,104,101,32,112,97,116,104,32,116,111,32,115,101,97, - 114,99,104,32,111,110,32,97,110,100,32,97,32,118,97,114, - 105,97,98,108,101,32,110,117,109,98,101,114,32,111,102,10, - 32,32,32,32,32,32,32,32,50,45,116,117,112,108,101,115, - 32,99,111,110,116,97,105,110,105,110,103,32,116,104,101,32, - 108,111,97,100,101,114,32,97,110,100,32,116,104,101,32,102, - 105,108,101,32,115,117,102,102,105,120,101,115,32,116,104,101, - 32,108,111,97,100,101,114,10,32,32,32,32,32,32,32,32, - 114,101,99,111,103,110,105,122,101,115,46,99,1,0,0,0, - 0,0,0,0,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, - 41,1,78,114,4,0,0,0,41,2,114,22,0,0,0,114, - 60,1,0,0,41,1,114,173,0,0,0,114,4,0,0,0, - 114,5,0,0,0,114,77,0,0,0,190,7,0,0,115,2, - 0,0,0,6,0,122,38,70,105,108,101,70,105,110,100,101, - 114,46,95,95,105,110,105,116,95,95,46,60,108,111,99,97, - 108,115,62,46,60,103,101,110,101,120,112,114,62,114,117,0, - 0,0,114,29,0,0,0,78,114,145,0,0,0,41,7,114, - 199,0,0,0,218,8,95,108,111,97,100,101,114,115,114,35, - 0,0,0,218,11,95,112,97,116,104,95,109,116,105,109,101, - 218,3,115,101,116,218,11,95,112,97,116,104,95,99,97,99, - 104,101,218,19,95,114,101,108,97,120,101,100,95,112,97,116, - 104,95,99,97,99,104,101,41,5,114,71,0,0,0,114,35, - 0,0,0,218,14,108,111,97,100,101,114,95,100,101,116,97, - 105,108,115,90,7,108,111,97,100,101,114,115,114,247,0,0, - 0,114,4,0,0,0,41,1,114,173,0,0,0,114,5,0, - 0,0,114,72,0,0,0,184,7,0,0,115,16,0,0,0, - 0,4,6,1,19,1,36,1,9,2,15,1,9,1,12,1, - 122,19,70,105,108,101,70,105,110,100,101,114,46,95,95,105, - 110,105,116,95,95,99,1,0,0,0,0,0,0,0,1,0, - 0,0,2,0,0,0,67,0,0,0,115,13,0,0,0,100, - 3,0,124,0,0,95,0,0,100,2,0,83,41,4,122,31, - 73,110,118,97,108,105,100,97,116,101,32,116,104,101,32,100, - 105,114,101,99,116,111,114,121,32,109,116,105,109,101,46,114, - 29,0,0,0,78,114,145,0,0,0,41,1,114,91,1,0, - 0,41,1,114,71,0,0,0,114,4,0,0,0,114,4,0, - 0,0,114,5,0,0,0,114,77,1,0,0,198,7,0,0, - 115,2,0,0,0,0,2,122,28,70,105,108,101,70,105,110, - 100,101,114,46,105,110,118,97,108,105,100,97,116,101,95,99, - 97,99,104,101,115,99,2,0,0,0,0,0,0,0,3,0, - 0,0,2,0,0,0,67,0,0,0,115,59,0,0,0,124, - 0,0,106,0,0,124,1,0,131,1,0,125,2,0,124,2, - 0,100,1,0,107,8,0,114,37,0,100,1,0,103,0,0, - 102,2,0,83,124,2,0,106,1,0,124,2,0,106,2,0, - 112,55,0,103,0,0,102,2,0,83,41,2,122,197,84,114, - 121,32,116,111,32,102,105,110,100,32,97,32,108,111,97,100, - 101,114,32,102,111,114,32,116,104,101,32,115,112,101,99,105, - 102,105,101,100,32,109,111,100,117,108,101,44,32,111,114,32, - 116,104,101,32,110,97,109,101,115,112,97,99,101,10,32,32, - 32,32,32,32,32,32,112,97,99,107,97,103,101,32,112,111, - 114,116,105,111,110,115,46,32,82,101,116,117,114,110,115,32, - 40,108,111,97,100,101,114,44,32,108,105,115,116,45,111,102, - 45,112,111,114,116,105,111,110,115,41,46,10,10,32,32,32, - 32,32,32,32,32,84,104,105,115,32,109,101,116,104,111,100, - 32,105,115,32,100,101,112,114,101,99,97,116,101,100,46,32, - 32,85,115,101,32,102,105,110,100,95,115,112,101,99,40,41, - 32,105,110,115,116,101,97,100,46,10,10,32,32,32,32,32, - 32,32,32,78,41,3,114,15,1,0,0,114,173,0,0,0, - 114,224,0,0,0,41,3,114,71,0,0,0,114,164,0,0, - 0,114,180,0,0,0,114,4,0,0,0,114,4,0,0,0, - 114,5,0,0,0,114,171,0,0,0,204,7,0,0,115,8, - 0,0,0,0,7,15,1,12,1,10,1,122,22,70,105,108, - 101,70,105,110,100,101,114,46,102,105,110,100,95,108,111,97, - 100,101,114,99,6,0,0,0,0,0,0,0,7,0,0,0, - 7,0,0,0,67,0,0,0,115,40,0,0,0,124,1,0, - 124,2,0,124,3,0,131,2,0,125,6,0,116,0,0,124, - 2,0,124,3,0,100,1,0,124,6,0,100,2,0,124,4, - 0,131,2,2,83,41,3,78,114,173,0,0,0,114,224,0, - 0,0,41,1,114,242,0,0,0,41,7,114,71,0,0,0, - 114,246,0,0,0,114,164,0,0,0,114,35,0,0,0,114, - 232,0,0,0,114,14,1,0,0,114,173,0,0,0,114,4, - 0,0,0,114,4,0,0,0,114,5,0,0,0,114,88,1, - 0,0,216,7,0,0,115,6,0,0,0,0,1,15,1,18, - 1,122,20,70,105,108,101,70,105,110,100,101,114,46,95,103, - 101,116,95,115,112,101,99,78,99,3,0,0,0,0,0,0, - 0,14,0,0,0,15,0,0,0,67,0,0,0,115,231,1, - 0,0,100,1,0,125,3,0,124,1,0,106,0,0,100,2, - 0,131,1,0,100,3,0,25,125,4,0,121,34,0,116,1, - 0,124,0,0,106,2,0,112,49,0,116,3,0,106,4,0, - 131,0,0,131,1,0,106,5,0,125,5,0,87,110,24,0, - 4,116,6,0,107,10,0,114,85,0,1,1,1,100,10,0, - 125,5,0,89,110,1,0,88,124,5,0,124,0,0,106,7, - 0,107,3,0,114,120,0,124,0,0,106,8,0,131,0,0, - 1,124,5,0,124,0,0,95,7,0,116,9,0,131,0,0, - 114,153,0,124,0,0,106,10,0,125,6,0,124,4,0,106, - 11,0,131,0,0,125,7,0,110,15,0,124,0,0,106,12, - 0,125,6,0,124,4,0,125,7,0,124,7,0,124,6,0, - 107,6,0,114,45,1,116,13,0,124,0,0,106,2,0,124, - 4,0,131,2,0,125,8,0,120,100,0,124,0,0,106,14, - 0,68,93,77,0,92,2,0,125,9,0,125,10,0,100,5, - 0,124,9,0,23,125,11,0,116,13,0,124,8,0,124,11, - 0,131,2,0,125,12,0,116,15,0,124,12,0,131,1,0, - 114,208,0,124,0,0,106,16,0,124,10,0,124,1,0,124, - 12,0,124,8,0,103,1,0,124,2,0,131,5,0,83,113, - 208,0,87,116,17,0,124,8,0,131,1,0,125,3,0,120, - 123,0,124,0,0,106,14,0,68,93,112,0,92,2,0,125, - 9,0,125,10,0,116,13,0,124,0,0,106,2,0,124,4, - 0,124,9,0,23,131,2,0,125,12,0,116,18,0,100,6, - 0,106,19,0,124,12,0,131,1,0,100,7,0,100,3,0, - 131,1,1,1,124,7,0,124,9,0,23,124,6,0,107,6, - 0,114,55,1,116,15,0,124,12,0,131,1,0,114,55,1, - 124,0,0,106,16,0,124,10,0,124,1,0,124,12,0,100, - 8,0,124,2,0,131,5,0,83,113,55,1,87,124,3,0, - 114,227,1,116,18,0,100,9,0,106,19,0,124,8,0,131, - 1,0,131,1,0,1,116,20,0,124,1,0,100,8,0,131, - 2,0,125,13,0,124,8,0,103,1,0,124,13,0,95,21, - 0,124,13,0,83,100,8,0,83,41,11,122,125,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,70,114,117,0,0,0, - 114,115,0,0,0,114,29,0,0,0,114,72,0,0,0,122, - 9,116,114,121,105,110,103,32,123,125,114,152,0,0,0,78, - 122,25,112,111,115,115,105,98,108,101,32,110,97,109,101,115, - 112,97,99,101,32,102,111,114,32,123,125,114,145,0,0,0, - 41,22,114,32,0,0,0,114,39,0,0,0,114,35,0,0, - 0,114,3,0,0,0,114,45,0,0,0,114,56,1,0,0, - 114,40,0,0,0,114,91,1,0,0,218,11,95,102,105,108, - 108,95,99,97,99,104,101,114,6,0,0,0,114,94,1,0, - 0,114,146,0,0,0,114,93,1,0,0,114,28,0,0,0, - 114,90,1,0,0,114,44,0,0,0,114,88,1,0,0,114, - 46,0,0,0,114,158,0,0,0,114,47,0,0,0,114,220, - 0,0,0,114,224,0,0,0,41,14,114,71,0,0,0,114, - 164,0,0,0,114,14,1,0,0,90,12,105,115,95,110,97, - 109,101,115,112,97,99,101,90,11,116,97,105,108,95,109,111, - 100,117,108,101,114,185,0,0,0,90,5,99,97,99,104,101, - 90,12,99,97,99,104,101,95,109,111,100,117,108,101,90,9, - 98,97,115,101,95,112,97,116,104,114,60,1,0,0,114,246, - 0,0,0,90,13,105,110,105,116,95,102,105,108,101,110,97, - 109,101,90,9,102,117,108,108,95,112,97,116,104,114,180,0, - 0,0,114,4,0,0,0,114,4,0,0,0,114,5,0,0, - 0,114,15,1,0,0,221,7,0,0,115,68,0,0,0,0, - 3,6,1,19,1,3,1,34,1,13,1,11,1,15,1,10, - 1,9,2,9,1,9,1,15,2,9,1,6,2,12,1,18, - 1,22,1,10,1,15,1,12,1,32,4,12,2,22,1,22, - 1,25,1,16,1,12,1,29,1,6,1,19,1,15,1,12, - 1,4,1,122,20,70,105,108,101,70,105,110,100,101,114,46, - 102,105,110,100,95,115,112,101,99,99,1,0,0,0,0,0, - 0,0,9,0,0,0,13,0,0,0,67,0,0,0,115,11, - 1,0,0,124,0,0,106,0,0,125,1,0,121,31,0,116, - 1,0,106,2,0,124,1,0,112,33,0,116,1,0,106,3, - 0,131,0,0,131,1,0,125,2,0,87,110,33,0,4,116, - 4,0,116,5,0,116,6,0,102,3,0,107,10,0,114,75, - 0,1,1,1,103,0,0,125,2,0,89,110,1,0,88,116, - 7,0,106,8,0,106,9,0,100,1,0,131,1,0,115,112, - 0,116,10,0,124,2,0,131,1,0,124,0,0,95,11,0, - 110,111,0,116,10,0,131,0,0,125,3,0,120,90,0,124, - 2,0,68,93,82,0,125,4,0,124,4,0,106,12,0,100, - 2,0,131,1,0,92,3,0,125,5,0,125,6,0,125,7, - 0,124,6,0,114,191,0,100,3,0,106,13,0,124,5,0, - 124,7,0,106,14,0,131,0,0,131,2,0,125,8,0,110, - 6,0,124,5,0,125,8,0,124,3,0,106,15,0,124,8, - 0,131,1,0,1,113,128,0,87,124,3,0,124,0,0,95, - 11,0,116,7,0,106,8,0,106,9,0,116,16,0,131,1, - 0,114,7,1,100,4,0,100,5,0,132,0,0,124,2,0, - 68,131,1,0,124,0,0,95,17,0,100,6,0,83,41,7, - 122,68,70,105,108,108,32,116,104,101,32,99,97,99,104,101, - 32,111,102,32,112,111,116,101,110,116,105,97,108,32,109,111, - 100,117,108,101,115,32,97,110,100,32,112,97,99,107,97,103, - 101,115,32,102,111,114,32,116,104,105,115,32,100,105,114,101, - 99,116,111,114,121,46,114,0,0,0,0,114,117,0,0,0, - 122,5,123,125,46,123,125,99,1,0,0,0,0,0,0,0, - 2,0,0,0,3,0,0,0,83,0,0,0,115,28,0,0, - 0,104,0,0,124,0,0,93,18,0,125,1,0,124,1,0, - 106,0,0,131,0,0,146,2,0,113,6,0,83,114,4,0, - 0,0,41,1,114,146,0,0,0,41,2,114,22,0,0,0, - 90,2,102,110,114,4,0,0,0,114,4,0,0,0,114,5, - 0,0,0,250,9,60,115,101,116,99,111,109,112,62,39,8, - 0,0,115,2,0,0,0,9,0,122,41,70,105,108,101,70, - 105,110,100,101,114,46,95,102,105,108,108,95,99,97,99,104, - 101,46,60,108,111,99,97,108,115,62,46,60,115,101,116,99, - 111,109,112,62,78,41,18,114,35,0,0,0,114,3,0,0, - 0,90,7,108,105,115,116,100,105,114,114,45,0,0,0,114, - 83,1,0,0,218,15,80,101,114,109,105,115,115,105,111,110, - 69,114,114,111,114,218,18,78,111,116,65,68,105,114,101,99, - 116,111,114,121,69,114,114,111,114,114,7,0,0,0,114,8, - 0,0,0,114,9,0,0,0,114,92,1,0,0,114,93,1, - 0,0,114,141,0,0,0,114,47,0,0,0,114,146,0,0, - 0,218,3,97,100,100,114,10,0,0,0,114,94,1,0,0, - 41,9,114,71,0,0,0,114,35,0,0,0,90,8,99,111, - 110,116,101,110,116,115,90,21,108,111,119,101,114,95,115,117, - 102,102,105,120,95,99,111,110,116,101,110,116,115,114,74,1, - 0,0,114,67,0,0,0,114,68,1,0,0,114,60,1,0, - 0,90,8,110,101,119,95,110,97,109,101,114,4,0,0,0, - 114,4,0,0,0,114,5,0,0,0,114,96,1,0,0,10, - 8,0,0,115,34,0,0,0,0,2,9,1,3,1,31,1, - 22,3,11,3,18,1,18,7,9,1,13,1,24,1,6,1, - 27,2,6,1,17,1,9,1,18,1,122,22,70,105,108,101, - 70,105,110,100,101,114,46,95,102,105,108,108,95,99,97,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,41,3,97,20,1,0,0,65,32,99,108, - 97,115,115,32,109,101,116,104,111,100,32,119,104,105,99,104, - 32,114,101,116,117,114,110,115,32,97,32,99,108,111,115,117, - 114,101,32,116,111,32,117,115,101,32,111,110,32,115,121,115, - 46,112,97,116,104,95,104,111,111,107,10,32,32,32,32,32, - 32,32,32,119,104,105,99,104,32,119,105,108,108,32,114,101, - 116,117,114,110,32,97,110,32,105,110,115,116,97,110,99,101, - 32,117,115,105,110,103,32,116,104,101,32,115,112,101,99,105, - 102,105,101,100,32,108,111,97,100,101,114,115,32,97,110,100, - 32,116,104,101,32,112,97,116,104,10,32,32,32,32,32,32, - 32,32,99,97,108,108,101,100,32,111,110,32,116,104,101,32, - 99,108,111,115,117,114,101,46,10,10,32,32,32,32,32,32, - 32,32,73,102,32,116,104,101,32,112,97,116,104,32,99,97, - 108,108,101,100,32,111,110,32,116,104,101,32,99,108,111,115, - 117,114,101,32,105,115,32,110,111,116,32,97,32,100,105,114, - 101,99,116,111,114,121,44,32,73,109,112,111,114,116,69,114, - 114,111,114,32,105,115,10,32,32,32,32,32,32,32,32,114, - 97,105,115,101,100,46,10,10,32,32,32,32,32,32,32,32, - 99,1,0,0,0,0,0,0,0,1,0,0,0,4,0,0, - 0,19,0,0,0,115,43,0,0,0,116,0,0,124,0,0, - 131,1,0,115,30,0,116,1,0,100,1,0,100,2,0,124, - 0,0,131,1,1,130,1,0,136,0,0,124,0,0,136,1, - 0,140,1,0,83,41,3,122,45,80,97,116,104,32,104,111, - 111,107,32,102,111,114,32,105,109,112,111,114,116,108,105,98, - 46,109,97,99,104,105,110,101,114,121,46,70,105,108,101,70, - 105,110,100,101,114,46,122,30,111,110,108,121,32,100,105,114, - 101,99,116,111,114,105,101,115,32,97,114,101,32,115,117,112, - 112,111,114,116,101,100,114,35,0,0,0,41,2,114,46,0, - 0,0,114,159,0,0,0,41,1,114,35,0,0,0,41,2, - 114,13,1,0,0,114,95,1,0,0,114,4,0,0,0,114, - 5,0,0,0,218,24,112,97,116,104,95,104,111,111,107,95, - 102,111,114,95,70,105,108,101,70,105,110,100,101,114,51,8, - 0,0,115,6,0,0,0,0,2,12,1,18,1,122,54,70, - 105,108,101,70,105,110,100,101,114,46,112,97,116,104,95,104, - 111,111,107,46,60,108,111,99,97,108,115,62,46,112,97,116, - 104,95,104,111,111,107,95,102,111,114,95,70,105,108,101,70, - 105,110,100,101,114,114,4,0,0,0,41,3,114,13,1,0, - 0,114,95,1,0,0,114,101,1,0,0,114,4,0,0,0, - 41,2,114,13,1,0,0,114,95,1,0,0,114,5,0,0, - 0,218,9,112,97,116,104,95,104,111,111,107,41,8,0,0, - 115,4,0,0,0,0,10,21,6,122,20,70,105,108,101,70, - 105,110,100,101,114,46,112,97,116,104,95,104,111,111,107,99, - 1,0,0,0,0,0,0,0,1,0,0,0,2,0,0,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,41,2,78,122,16,70,105, - 108,101,70,105,110,100,101,114,40,123,33,114,125,41,41,2, - 114,47,0,0,0,114,35,0,0,0,41,1,114,71,0,0, - 0,114,4,0,0,0,114,4,0,0,0,114,5,0,0,0, - 114,101,0,0,0,59,8,0,0,115,2,0,0,0,0,1, - 122,19,70,105,108,101,70,105,110,100,101,114,46,95,95,114, - 101,112,114,95,95,41,15,114,57,0,0,0,114,56,0,0, - 0,114,58,0,0,0,114,59,0,0,0,114,72,0,0,0, - 114,77,1,0,0,114,176,0,0,0,114,16,1,0,0,114, - 171,0,0,0,114,88,1,0,0,114,15,1,0,0,114,96, - 1,0,0,114,20,1,0,0,114,102,1,0,0,114,101,0, - 0,0,114,4,0,0,0,114,4,0,0,0,114,4,0,0, - 0,114,5,0,0,0,114,89,1,0,0,175,7,0,0,115, - 20,0,0,0,12,7,6,2,12,14,12,4,6,2,12,12, - 12,5,15,45,12,31,18,18,114,89,1,0,0,99,0,0, - 0,0,0,0,0,0,0,0,0,0,2,0,0,0,64,0, - 0,0,115,46,0,0,0,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,41,7,218,18,95,73,109,112,111,114,116, - 76,111,99,107,67,111,110,116,101,120,116,122,36,67,111,110, - 116,101,120,116,32,109,97,110,97,103,101,114,32,102,111,114, - 32,116,104,101,32,105,109,112,111,114,116,32,108,111,99,107, - 46,99,1,0,0,0,0,0,0,0,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,41,2,122,24,65,99,113, - 117,105,114,101,32,116,104,101,32,105,109,112,111,114,116,32, - 108,111,99,107,46,78,41,2,114,106,0,0,0,114,5,1, - 0,0,41,1,114,71,0,0,0,114,4,0,0,0,114,4, - 0,0,0,114,5,0,0,0,114,75,0,0,0,69,8,0, - 0,115,2,0,0,0,0,2,122,28,95,73,109,112,111,114, - 116,76,111,99,107,67,111,110,116,101,120,116,46,95,95,101, - 110,116,101,114,95,95,99,4,0,0,0,0,0,0,0,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,41,2, - 122,60,82,101,108,101,97,115,101,32,116,104,101,32,105,109, - 112,111,114,116,32,108,111,99,107,32,114,101,103,97,114,100, - 108,101,115,115,32,111,102,32,97,110,121,32,114,97,105,115, - 101,100,32,101,120,99,101,112,116,105,111,110,115,46,78,41, - 2,114,106,0,0,0,114,107,0,0,0,41,4,114,71,0, - 0,0,90,8,101,120,99,95,116,121,112,101,90,9,101,120, - 99,95,118,97,108,117,101,90,13,101,120,99,95,116,114,97, - 99,101,98,97,99,107,114,4,0,0,0,114,4,0,0,0, - 114,5,0,0,0,114,81,0,0,0,73,8,0,0,115,2, - 0,0,0,0,2,122,27,95,73,109,112,111,114,116,76,111, - 99,107,67,111,110,116,101,120,116,46,95,95,101,120,105,116, - 95,95,78,41,6,114,57,0,0,0,114,56,0,0,0,114, - 58,0,0,0,114,59,0,0,0,114,75,0,0,0,114,81, - 0,0,0,114,4,0,0,0,114,4,0,0,0,114,4,0, - 0,0,114,5,0,0,0,114,103,1,0,0,65,8,0,0, - 115,6,0,0,0,12,2,6,2,12,4,114,103,1,0,0, - 99,3,0,0,0,0,0,0,0,5,0,0,0,4,0,0, - 0,67,0,0,0,115,88,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, - 52,0,116,2,0,100,3,0,131,1,0,130,1,0,124,3, - 0,100,4,0,25,125,4,0,124,0,0,114,84,0,100,5, - 0,106,3,0,124,4,0,124,0,0,131,2,0,83,124,4, - 0,83,41,6,122,50,82,101,115,111,108,118,101,32,97,32, - 114,101,108,97,116,105,118,101,32,109,111,100,117,108,101,32, - 110,97,109,101,32,116,111,32,97,110,32,97,98,115,111,108, - 117,116,101,32,111,110,101,46,114,117,0,0,0,114,29,0, - 0,0,122,50,97,116,116,101,109,112,116,101,100,32,114,101, - 108,97,116,105,118,101,32,105,109,112,111,114,116,32,98,101, - 121,111,110,100,32,116,111,112,45,108,101,118,101,108,32,112, - 97,99,107,97,103,101,114,84,0,0,0,122,5,123,125,46, - 123,125,41,4,114,34,0,0,0,114,31,0,0,0,114,129, - 0,0,0,114,47,0,0,0,41,5,114,67,0,0,0,218, - 7,112,97,99,107,97,103,101,218,5,108,101,118,101,108,90, - 4,98,105,116,115,114,135,0,0,0,114,4,0,0,0,114, - 4,0,0,0,114,5,0,0,0,218,13,95,114,101,115,111, - 108,118,101,95,110,97,109,101,78,8,0,0,115,10,0,0, - 0,0,2,22,1,18,1,12,1,10,1,114,106,1,0,0, - 99,3,0,0,0,0,0,0,0,4,0,0,0,3,0,0, - 0,67,0,0,0,115,47,0,0,0,124,0,0,106,0,0, - 124,1,0,124,2,0,131,2,0,125,3,0,124,3,0,100, - 0,0,107,8,0,114,34,0,100,0,0,83,116,1,0,124, - 1,0,124,3,0,131,2,0,83,41,1,78,41,2,114,16, - 1,0,0,114,177,0,0,0,41,4,114,80,1,0,0,114, - 67,0,0,0,114,35,0,0,0,114,173,0,0,0,114,4, - 0,0,0,114,4,0,0,0,114,5,0,0,0,218,17,95, - 102,105,110,100,95,115,112,101,99,95,108,101,103,97,99,121, - 87,8,0,0,115,8,0,0,0,0,3,18,1,12,1,4, - 1,114,107,1,0,0,99,3,0,0,0,0,0,0,0,9, - 0,0,0,26,0,0,0,67,0,0,0,115,41,1,0,0, - 116,0,0,106,1,0,100,1,0,107,9,0,114,41,0,116, - 0,0,106,1,0,12,114,41,0,116,2,0,106,3,0,100, - 2,0,116,4,0,131,2,0,1,124,0,0,116,0,0,106, - 5,0,107,6,0,125,3,0,120,234,0,116,0,0,106,1, - 0,68,93,219,0,125,4,0,116,6,0,131,0,0,143,90, - 0,1,121,13,0,124,4,0,106,7,0,125,5,0,87,110, - 51,0,4,116,8,0,107,10,0,114,148,0,1,1,1,116, - 9,0,124,4,0,124,0,0,124,1,0,131,3,0,125,6, - 0,124,6,0,100,1,0,107,8,0,114,144,0,119,66,0, - 89,110,19,0,88,124,5,0,124,0,0,124,1,0,124,2, - 0,131,3,0,125,6,0,87,100,1,0,81,88,124,6,0, - 100,1,0,107,9,0,114,66,0,124,3,0,12,114,25,1, - 124,0,0,116,0,0,106,5,0,107,6,0,114,25,1,116, - 0,0,106,5,0,124,0,0,25,125,7,0,121,13,0,124, - 7,0,106,10,0,125,8,0,87,110,22,0,4,116,8,0, - 107,10,0,114,1,1,1,1,1,124,6,0,83,89,113,29, - 1,88,124,8,0,100,1,0,107,8,0,114,18,1,124,6, - 0,83,124,8,0,83,113,66,0,124,6,0,83,113,66,0, - 87,100,1,0,83,100,1,0,83,41,3,122,23,70,105,110, - 100,32,97,32,109,111,100,117,108,101,39,115,32,108,111,97, - 100,101,114,46,78,122,22,115,121,115,46,109,101,116,97,95, - 112,97,116,104,32,105,115,32,101,109,112,116,121,41,11,114, - 7,0,0,0,218,9,109,101,116,97,95,112,97,116,104,114, - 118,0,0,0,114,119,0,0,0,114,172,0,0,0,114,73, - 0,0,0,114,103,1,0,0,114,15,1,0,0,114,211,0, - 0,0,114,107,1,0,0,114,210,0,0,0,41,9,114,67, - 0,0,0,114,35,0,0,0,114,14,1,0,0,90,9,105, - 115,95,114,101,108,111,97,100,114,80,1,0,0,114,15,1, - 0,0,114,180,0,0,0,114,181,0,0,0,114,210,0,0, - 0,114,4,0,0,0,114,4,0,0,0,114,5,0,0,0, - 218,10,95,102,105,110,100,95,115,112,101,99,96,8,0,0, - 115,48,0,0,0,0,2,25,1,16,4,15,1,16,1,10, - 1,3,1,13,1,13,1,18,1,12,1,8,2,24,1,12, - 2,22,1,13,1,3,1,13,1,13,4,9,2,12,1,4, - 2,7,2,8,2,114,109,1,0,0,99,3,0,0,0,0, - 0,0,0,4,0,0,0,4,0,0,0,67,0,0,0,115, - 179,0,0,0,116,0,0,124,0,0,116,1,0,131,2,0, - 115,42,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,124,2, - 0,100,2,0,107,0,0,114,66,0,116,5,0,100,3,0, - 131,1,0,130,1,0,124,1,0,114,144,0,116,0,0,124, - 1,0,116,1,0,131,2,0,115,102,0,116,2,0,100,4, - 0,131,1,0,130,1,0,110,42,0,124,1,0,116,6,0, - 106,7,0,107,7,0,114,144,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,124,0,0,12,114,175,0,124,2,0,100,2, - 0,107,2,0,114,175,0,116,5,0,100,6,0,131,1,0, - 130,1,0,100,7,0,83,41,8,122,28,86,101,114,105,102, - 121,32,97,114,103,117,109,101,110,116,115,32,97,114,101,32, - 34,115,97,110,101,34,46,122,31,109,111,100,117,108,101,32, - 110,97,109,101,32,109,117,115,116,32,98,101,32,115,116,114, - 44,32,110,111,116,32,123,125,114,84,0,0,0,122,18,108, - 101,118,101,108,32,109,117,115,116,32,98,101,32,62,61,32, - 48,122,31,95,95,112,97,99,107,97,103,101,95,95,32,110, - 111,116,32,115,101,116,32,116,111,32,97,32,115,116,114,105, - 110,103,122,61,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,122,17,69,109,112,116,121,32,109,111,100,117,108,101,32, - 110,97,109,101,78,41,9,114,194,0,0,0,114,127,0,0, - 0,114,121,0,0,0,114,47,0,0,0,114,66,0,0,0, - 114,129,0,0,0,114,7,0,0,0,114,73,0,0,0,218, - 11,83,121,115,116,101,109,69,114,114,111,114,41,4,114,67, - 0,0,0,114,104,1,0,0,114,105,1,0,0,114,175,0, - 0,0,114,4,0,0,0,114,4,0,0,0,114,5,0,0, - 0,218,13,95,115,97,110,105,116,121,95,99,104,101,99,107, - 136,8,0,0,115,24,0,0,0,0,2,15,1,27,1,12, - 1,12,1,6,1,15,1,15,1,15,1,6,2,21,1,19, - 1,114,111,1,0,0,122,16,78,111,32,109,111,100,117,108, - 101,32,110,97,109,101,100,32,122,4,123,33,114,125,99,2, - 0,0,0,0,0,0,0,8,0,0,0,12,0,0,0,67, - 0,0,0,115,40,1,0,0,100,0,0,125,2,0,124,0, - 0,106,0,0,100,1,0,131,1,0,100,2,0,25,125,3, - 0,124,3,0,114,175,0,124,3,0,116,1,0,106,2,0, - 107,7,0,114,59,0,116,3,0,124,1,0,124,3,0,131, - 2,0,1,124,0,0,116,1,0,106,2,0,107,6,0,114, - 85,0,116,1,0,106,2,0,124,0,0,25,83,116,1,0, - 106,2,0,124,3,0,25,125,4,0,121,13,0,124,4,0, - 106,4,0,125,2,0,87,110,61,0,4,116,5,0,107,10, - 0,114,174,0,1,1,1,116,6,0,100,3,0,23,106,7, - 0,124,0,0,124,3,0,131,2,0,125,5,0,116,8,0, - 124,5,0,100,4,0,124,0,0,131,1,1,100,0,0,130, - 2,0,89,110,1,0,88,116,9,0,124,0,0,124,2,0, - 131,2,0,125,6,0,124,6,0,100,0,0,107,8,0,114, - 232,0,116,8,0,116,6,0,106,7,0,124,0,0,131,1, - 0,100,4,0,124,0,0,131,1,1,130,1,0,110,12,0, - 116,10,0,124,6,0,131,1,0,125,7,0,124,3,0,114, - 36,1,116,1,0,106,2,0,124,3,0,25,125,4,0,116, - 11,0,124,4,0,124,0,0,106,0,0,100,1,0,131,1, - 0,100,5,0,25,124,7,0,131,3,0,1,124,7,0,83, - 41,6,78,114,117,0,0,0,114,84,0,0,0,122,23,59, - 32,123,33,114,125,32,105,115,32,110,111,116,32,97,32,112, - 97,99,107,97,103,101,114,67,0,0,0,114,115,0,0,0, - 41,12,114,32,0,0,0,114,7,0,0,0,114,73,0,0, - 0,114,114,0,0,0,114,250,0,0,0,114,211,0,0,0, - 218,8,95,69,82,82,95,77,83,71,114,47,0,0,0,114, - 159,0,0,0,114,109,1,0,0,114,8,1,0,0,114,61, - 0,0,0,41,8,114,67,0,0,0,218,7,105,109,112,111, - 114,116,95,114,35,0,0,0,114,236,0,0,0,90,13,112, - 97,114,101,110,116,95,109,111,100,117,108,101,114,175,0,0, - 0,114,180,0,0,0,114,181,0,0,0,114,4,0,0,0, - 114,4,0,0,0,114,5,0,0,0,218,23,95,102,105,110, - 100,95,97,110,100,95,108,111,97,100,95,117,110,108,111,99, - 107,101,100,156,8,0,0,115,42,0,0,0,0,1,6,1, - 19,1,6,1,15,1,13,2,15,1,11,1,13,1,3,1, - 13,1,13,1,22,1,26,1,15,1,12,1,30,2,12,1, - 6,2,13,1,29,1,114,114,1,0,0,99,2,0,0,0, - 0,0,0,0,2,0,0,0,10,0,0,0,67,0,0,0, - 115,36,0,0,0,116,0,0,124,0,0,131,1,0,143,18, - 0,1,116,1,0,124,0,0,124,1,0,131,2,0,83,87, - 100,1,0,81,88,100,1,0,83,41,2,122,54,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,41,2,114,103,0,0,0,114,114,1,0,0, - 41,2,114,67,0,0,0,114,113,1,0,0,114,4,0,0, - 0,114,4,0,0,0,114,5,0,0,0,218,14,95,102,105, - 110,100,95,97,110,100,95,108,111,97,100,183,8,0,0,115, - 4,0,0,0,0,2,13,1,114,115,1,0,0,99,3,0, - 0,0,0,0,0,0,5,0,0,0,4,0,0,0,67,0, - 0,0,115,166,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,46,0,116,1,0,124,0,0,124,1,0,124,2,0,131, - 3,0,125,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,84,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,2,0,107,8, - 0,114,152,0,116,2,0,106,8,0,131,0,0,1,100,3, - 0,106,9,0,124,0,0,131,1,0,125,4,0,116,10,0, - 124,4,0,100,4,0,124,0,0,131,1,1,130,1,0,116, - 11,0,124,0,0,131,1,0,1,124,3,0,83,41,5,97, - 50,1,0,0,73,109,112,111,114,116,32,97,110,100,32,114, - 101,116,117,114,110,32,116,104,101,32,109,111,100,117,108,101, - 32,98,97,115,101,100,32,111,110,32,105,116,115,32,110,97, - 109,101,44,32,116,104,101,32,112,97,99,107,97,103,101,32, - 116,104,101,32,99,97,108,108,32,105,115,10,32,32,32,32, - 98,101,105,110,103,32,109,97,100,101,32,102,114,111,109,44, - 32,97,110,100,32,116,104,101,32,108,101,118,101,108,32,97, - 100,106,117,115,116,109,101,110,116,46,10,10,32,32,32,32, - 84,104,105,115,32,102,117,110,99,116,105,111,110,32,114,101, - 112,114,101,115,101,110,116,115,32,116,104,101,32,103,114,101, - 97,116,101,115,116,32,99,111,109,109,111,110,32,100,101,110, - 111,109,105,110,97,116,111,114,32,111,102,32,102,117,110,99, - 116,105,111,110,97,108,105,116,121,10,32,32,32,32,98,101, - 116,119,101,101,110,32,105,109,112,111,114,116,95,109,111,100, - 117,108,101,32,97,110,100,32,95,95,105,109,112,111,114,116, - 95,95,46,32,84,104,105,115,32,105,110,99,108,117,100,101, - 115,32,115,101,116,116,105,110,103,32,95,95,112,97,99,107, - 97,103,101,95,95,32,105,102,10,32,32,32,32,116,104,101, - 32,108,111,97,100,101,114,32,100,105,100,32,110,111,116,46, - 10,10,32,32,32,32,114,84,0,0,0,78,122,40,105,109, - 112,111,114,116,32,111,102,32,123,125,32,104,97,108,116,101, - 100,59,32,78,111,110,101,32,105,110,32,115,121,115,46,109, - 111,100,117,108,101,115,114,67,0,0,0,41,12,114,111,1, - 0,0,114,106,1,0,0,114,106,0,0,0,114,5,1,0, - 0,114,7,0,0,0,114,73,0,0,0,114,115,1,0,0, - 218,11,95,103,99,100,95,105,109,112,111,114,116,114,107,0, - 0,0,114,47,0,0,0,114,159,0,0,0,114,112,0,0, - 0,41,5,114,67,0,0,0,114,104,1,0,0,114,105,1, - 0,0,114,181,0,0,0,114,133,0,0,0,114,4,0,0, - 0,114,4,0,0,0,114,5,0,0,0,114,116,1,0,0, - 189,8,0,0,115,28,0,0,0,0,9,16,1,12,1,18, - 1,10,1,15,1,13,1,13,1,12,1,10,1,6,1,9, - 1,18,1,10,1,114,116,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, - 239,0,0,0,116,0,0,124,0,0,100,1,0,131,2,0, - 114,235,0,100,2,0,124,1,0,107,6,0,114,83,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,83,0,124,1,0,106,3,0,124,0,0, - 106,4,0,131,1,0,1,120,149,0,124,1,0,68,93,141, - 0,125,3,0,116,0,0,124,0,0,124,3,0,131,2,0, - 115,90,0,100,4,0,106,5,0,124,0,0,106,6,0,124, - 3,0,131,2,0,125,4,0,121,17,0,116,7,0,124,2, - 0,124,4,0,131,2,0,1,87,113,90,0,4,116,8,0, - 107,10,0,114,230,0,1,125,5,0,1,122,47,0,116,9, - 0,124,5,0,131,1,0,106,10,0,116,11,0,131,1,0, - 114,209,0,124,5,0,106,12,0,124,4,0,107,2,0,114, - 209,0,119,90,0,130,0,0,87,89,100,5,0,100,5,0, - 125,5,0,126,5,0,88,113,90,0,88,113,90,0,87,124, - 0,0,83,41,6,122,238,70,105,103,117,114,101,32,111,117, - 116,32,119,104,97,116,32,95,95,105,109,112,111,114,116,95, - 95,32,115,104,111,117,108,100,32,114,101,116,117,114,110,46, - 10,10,32,32,32,32,84,104,101,32,105,109,112,111,114,116, - 95,32,112,97,114,97,109,101,116,101,114,32,105,115,32,97, - 32,99,97,108,108,97,98,108,101,32,119,104,105,99,104,32, - 116,97,107,101,115,32,116,104,101,32,110,97,109,101,32,111, - 102,32,109,111,100,117,108,101,32,116,111,10,32,32,32,32, - 105,109,112,111,114,116,46,32,73,116,32,105,115,32,114,101, - 113,117,105,114,101,100,32,116,111,32,100,101,99,111,117,112, - 108,101,32,116,104,101,32,102,117,110,99,116,105,111,110,32, - 102,114,111,109,32,97,115,115,117,109,105,110,103,32,105,109, - 112,111,114,116,108,105,98,39,115,10,32,32,32,32,105,109, - 112,111,114,116,32,105,109,112,108,101,109,101,110,116,97,116, - 105,111,110,32,105,115,32,100,101,115,105,114,101,100,46,10, - 10,32,32,32,32,114,250,0,0,0,250,1,42,218,7,95, - 95,97,108,108,95,95,122,5,123,125,46,123,125,78,41,13, - 114,60,0,0,0,114,249,0,0,0,218,6,114,101,109,111, - 118,101,114,199,0,0,0,114,118,1,0,0,114,47,0,0, - 0,114,57,0,0,0,114,114,0,0,0,114,159,0,0,0, - 114,127,0,0,0,114,9,0,0,0,218,15,95,69,82,82, - 95,77,83,71,95,80,82,69,70,73,88,114,67,0,0,0, - 41,6,114,181,0,0,0,218,8,102,114,111,109,108,105,115, - 116,114,113,1,0,0,114,16,0,0,0,90,9,102,114,111, - 109,95,110,97,109,101,114,43,1,0,0,114,4,0,0,0, - 114,4,0,0,0,114,5,0,0,0,218,16,95,104,97,110, - 100,108,101,95,102,114,111,109,108,105,115,116,213,8,0,0, - 115,34,0,0,0,0,10,15,1,12,1,12,1,13,1,15, - 1,16,1,13,1,15,1,21,1,3,1,17,1,18,4,21, - 1,15,1,3,1,26,1,114,122,1,0,0,99,1,0,0, - 0,0,0,0,0,2,0,0,0,2,0,0,0,67,0,0, - 0,115,72,0,0,0,124,0,0,106,0,0,100,1,0,131, - 1,0,125,1,0,124,1,0,100,2,0,107,8,0,114,68, - 0,124,0,0,100,3,0,25,125,1,0,100,4,0,124,0, - 0,107,7,0,114,68,0,124,1,0,106,1,0,100,5,0, - 131,1,0,100,6,0,25,125,1,0,124,1,0,83,41,7, - 122,167,67,97,108,99,117,108,97,116,101,32,119,104,97,116, - 32,95,95,112,97,99,107,97,103,101,95,95,32,115,104,111, - 117,108,100,32,98,101,46,10,10,32,32,32,32,95,95,112, - 97,99,107,97,103,101,95,95,32,105,115,32,110,111,116,32, - 103,117,97,114,97,110,116,101,101,100,32,116,111,32,98,101, - 32,100,101,102,105,110,101,100,32,111,114,32,99,111,117,108, - 100,32,98,101,32,115,101,116,32,116,111,32,78,111,110,101, - 10,32,32,32,32,116,111,32,114,101,112,114,101,115,101,110, - 116,32,116,104,97,116,32,105,116,115,32,112,114,111,112,101, - 114,32,118,97,108,117,101,32,105,115,32,117,110,107,110,111, - 119,110,46,10,10,32,32,32,32,114,253,0,0,0,78,114, - 57,0,0,0,114,250,0,0,0,114,117,0,0,0,114,84, - 0,0,0,41,2,114,93,0,0,0,114,32,0,0,0,41, - 2,218,7,103,108,111,98,97,108,115,114,104,1,0,0,114, - 4,0,0,0,114,4,0,0,0,114,5,0,0,0,218,17, - 95,99,97,108,99,95,95,95,112,97,99,107,97,103,101,95, - 95,245,8,0,0,115,12,0,0,0,0,7,15,1,12,1, - 10,1,12,1,19,1,114,124,1,0,0,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,41,1,122,95, - 82,101,116,117,114,110,115,32,97,32,108,105,115,116,32,111, - 102,32,102,105,108,101,45,98,97,115,101,100,32,109,111,100, - 117,108,101,32,108,111,97,100,101,114,115,46,10,10,32,32, - 32,32,69,97,99,104,32,105,116,101,109,32,105,115,32,97, - 32,116,117,112,108,101,32,40,108,111,97,100,101,114,44,32, - 115,117,102,102,105,120,101,115,41,46,10,32,32,32,32,41, - 7,114,59,1,0,0,114,106,0,0,0,218,18,101,120,116, - 101,110,115,105,111,110,95,115,117,102,102,105,120,101,115,114, - 10,1,0,0,114,142,0,0,0,114,9,1,0,0,114,132, - 0,0,0,41,3,90,10,101,120,116,101,110,115,105,111,110, - 115,90,6,115,111,117,114,99,101,90,8,98,121,116,101,99, - 111,100,101,114,4,0,0,0,114,4,0,0,0,114,5,0, - 0,0,114,243,0,0,0,4,9,0,0,115,8,0,0,0, - 0,5,18,1,12,1,12,1,114,243,0,0,0,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,2,0,107,9,0,114,45,0,124,1, - 0,110,3,0,105,0,0,125,6,0,116,1,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,2,0,100,3,0,131,1,0,100,1,0,25,131,1,0, - 83,124,0,0,115,132,0,124,5,0,83,116,3,0,124,0, - 0,131,1,0,116,3,0,124,0,0,106,2,0,100,3,0, - 131,1,0,100,1,0,25,131,1,0,24,125,8,0,116,4, - 0,106,5,0,124,5,0,106,6,0,100,2,0,116,3,0, - 124,5,0,106,6,0,131,1,0,124,8,0,24,133,2,0, - 25,25,83,110,16,0,116,7,0,124,5,0,124,3,0,116, - 0,0,131,3,0,83,100,2,0,83,41,4,97,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,114,84,0,0,0,78,114,117,0, - 0,0,41,8,114,116,1,0,0,114,124,1,0,0,114,141, - 0,0,0,114,31,0,0,0,114,7,0,0,0,114,73,0, - 0,0,114,57,0,0,0,114,122,1,0,0,41,9,114,67, - 0,0,0,114,123,1,0,0,218,6,108,111,99,97,108,115, - 114,121,1,0,0,114,105,1,0,0,114,181,0,0,0,90, - 8,103,108,111,98,97,108,115,95,114,104,1,0,0,90,7, - 99,117,116,95,111,102,102,114,4,0,0,0,114,4,0,0, - 0,114,5,0,0,0,218,10,95,95,105,109,112,111,114,116, - 95,95,15,9,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,114,127,1,0,0,99,1,0,0,0,0, - 0,0,0,2,0,0,0,3,0,0,0,67,0,0,0,115, - 53,0,0,0,116,0,0,106,1,0,124,0,0,131,1,0, - 125,1,0,124,1,0,100,0,0,107,8,0,114,43,0,116, - 2,0,100,1,0,124,0,0,23,131,1,0,130,1,0,116, - 3,0,124,1,0,131,1,0,83,41,2,78,122,25,110,111, - 32,98,117,105,108,116,45,105,110,32,109,111,100,117,108,101, - 32,110,97,109,101,100,32,41,4,114,12,1,0,0,114,15, - 1,0,0,114,159,0,0,0,114,8,1,0,0,41,2,114, - 67,0,0,0,114,180,0,0,0,114,4,0,0,0,114,4, - 0,0,0,114,5,0,0,0,218,18,95,98,117,105,108,116, - 105,110,95,102,114,111,109,95,110,97,109,101,50,9,0,0, - 115,8,0,0,0,0,1,15,1,12,1,16,1,114,128,1, - 0,0,99,2,0,0,0,0,0,0,0,18,0,0,0,12, - 0,0,0,67,0,0,0,115,181,2,0,0,124,1,0,97, - 0,0,124,0,0,97,1,0,116,2,0,116,1,0,131,1, - 0,125,2,0,120,123,0,116,1,0,106,3,0,106,4,0, - 131,0,0,68,93,106,0,92,2,0,125,3,0,125,4,0, - 116,5,0,124,4,0,124,2,0,131,2,0,114,40,0,124, - 3,0,116,1,0,106,6,0,107,6,0,114,91,0,116,7, - 0,125,5,0,110,27,0,116,0,0,106,8,0,124,3,0, - 131,1,0,114,40,0,116,9,0,125,5,0,110,3,0,113, - 40,0,116,10,0,124,4,0,124,5,0,131,2,0,125,6, - 0,116,11,0,124,6,0,124,4,0,131,2,0,1,113,40, - 0,87,116,1,0,106,3,0,116,12,0,25,125,7,0,120, - 73,0,100,26,0,68,93,65,0,125,8,0,124,8,0,116, - 1,0,106,3,0,107,7,0,114,206,0,116,13,0,124,8, - 0,131,1,0,125,9,0,110,13,0,116,1,0,106,3,0, - 124,8,0,25,125,9,0,116,14,0,124,7,0,124,8,0, - 124,9,0,131,3,0,1,113,170,0,87,100,5,0,100,6, - 0,103,1,0,102,2,0,100,7,0,100,8,0,100,6,0, - 103,2,0,102,2,0,102,2,0,125,10,0,120,146,0,124, - 10,0,68,93,126,0,92,2,0,125,11,0,125,12,0,116, - 15,0,100,9,0,100,10,0,132,0,0,124,12,0,68,131, - 1,0,131,1,0,115,66,1,116,16,0,130,1,0,124,12, - 0,100,11,0,25,125,13,0,124,11,0,116,1,0,106,3, - 0,107,6,0,114,108,1,116,1,0,106,3,0,124,11,0, - 25,125,14,0,80,113,23,1,121,17,0,116,13,0,124,11, - 0,131,1,0,125,14,0,80,87,113,23,1,4,116,17,0, - 107,10,0,114,148,1,1,1,1,119,23,1,89,113,23,1, - 88,113,23,1,87,116,17,0,100,12,0,131,1,0,130,1, - 0,116,14,0,124,7,0,100,13,0,124,14,0,131,3,0, - 1,116,14,0,124,7,0,100,14,0,124,13,0,131,3,0, - 1,116,14,0,124,7,0,100,15,0,100,16,0,106,18,0, - 124,12,0,131,1,0,131,3,0,1,121,16,0,116,13,0, - 100,17,0,131,1,0,125,15,0,87,110,24,0,4,116,17, - 0,107,10,0,114,8,2,1,1,1,100,18,0,125,15,0, - 89,110,1,0,88,116,14,0,124,7,0,100,17,0,124,15, - 0,131,3,0,1,116,13,0,100,19,0,131,1,0,125,16, - 0,116,14,0,124,7,0,100,19,0,124,16,0,131,3,0, - 1,124,11,0,100,7,0,107,2,0,114,93,2,116,13,0, - 100,20,0,131,1,0,125,17,0,116,14,0,124,7,0,100, - 21,0,124,17,0,131,3,0,1,116,14,0,124,7,0,100, - 22,0,116,19,0,131,0,0,131,3,0,1,116,20,0,106, - 21,0,116,0,0,106,22,0,131,0,0,131,1,0,1,124, - 11,0,100,7,0,107,2,0,114,177,2,116,23,0,106,24, - 0,100,23,0,131,1,0,1,100,24,0,116,20,0,107,6, - 0,114,177,2,100,25,0,116,25,0,95,26,0,100,18,0, - 83,41,27,122,250,83,101,116,117,112,32,105,109,112,111,114, - 116,108,105,98,32,98,121,32,105,109,112,111,114,116,105,110, - 103,32,110,101,101,100,101,100,32,98,117,105,108,116,45,105, - 110,32,109,111,100,117,108,101,115,32,97,110,100,32,105,110, - 106,101,99,116,105,110,103,32,116,104,101,109,10,32,32,32, - 32,105,110,116,111,32,116,104,101,32,103,108,111,98,97,108, - 32,110,97,109,101,115,112,97,99,101,46,10,10,32,32,32, - 32,65,115,32,115,121,115,32,105,115,32,110,101,101,100,101, - 100,32,102,111,114,32,115,121,115,46,109,111,100,117,108,101, - 115,32,97,99,99,101,115,115,32,97,110,100,32,95,105,109, - 112,32,105,115,32,110,101,101,100,101,100,32,116,111,32,108, - 111,97,100,32,98,117,105,108,116,45,105,110,10,32,32,32, - 32,109,111,100,117,108,101,115,44,32,116,104,111,115,101,32, - 116,119,111,32,109,111,100,117,108,101,115,32,109,117,115,116, - 32,98,101,32,101,120,112,108,105,99,105,116,108,121,32,112, - 97,115,115,101,100,32,105,110,46,10,10,32,32,32,32,114, - 49,0,0,0,114,118,0,0,0,218,8,98,117,105,108,116, - 105,110,115,114,193,0,0,0,90,5,112,111,115,105,120,250, - 1,47,218,2,110,116,250,1,92,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,41,2,114,29,0,0,0,78,41,1,114,31, - 0,0,0,41,2,114,22,0,0,0,114,136,0,0,0,114, - 4,0,0,0,114,4,0,0,0,114,5,0,0,0,114,77, - 0,0,0,95,9,0,0,115,2,0,0,0,6,0,122,25, - 95,115,101,116,117,112,46,60,108,111,99,97,108,115,62,46, - 60,103,101,110,101,120,112,114,62,114,84,0,0,0,122,30, - 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,114,3, - 0,0,0,114,25,0,0,0,114,21,0,0,0,114,30,0, - 0,0,114,85,0,0,0,78,114,111,0,0,0,90,6,119, - 105,110,114,101,103,114,26,1,0,0,114,6,0,0,0,122, - 4,46,112,121,119,122,6,95,100,46,112,121,100,84,41,4, - 122,3,95,105,111,122,9,95,119,97,114,110,105,110,103,115, - 122,8,98,117,105,108,116,105,110,115,122,7,109,97,114,115, - 104,97,108,41,27,114,106,0,0,0,114,7,0,0,0,114, - 66,0,0,0,114,73,0,0,0,218,5,105,116,101,109,115, - 114,194,0,0,0,114,163,0,0,0,114,12,1,0,0,114, - 168,0,0,0,114,21,1,0,0,114,251,0,0,0,114,1, - 1,0,0,114,57,0,0,0,114,128,1,0,0,114,61,0, - 0,0,218,3,97,108,108,114,100,0,0,0,114,159,0,0, - 0,114,26,0,0,0,114,11,0,0,0,114,62,1,0,0, - 114,199,0,0,0,114,125,1,0,0,114,142,0,0,0,114, - 227,0,0,0,114,25,1,0,0,114,29,1,0,0,41,18, - 218,10,115,121,115,95,109,111,100,117,108,101,218,11,95,105, - 109,112,95,109,111,100,117,108,101,90,11,109,111,100,117,108, - 101,95,116,121,112,101,114,67,0,0,0,114,181,0,0,0, - 114,173,0,0,0,114,180,0,0,0,90,11,115,101,108,102, - 95,109,111,100,117,108,101,90,12,98,117,105,108,116,105,110, - 95,110,97,109,101,90,14,98,117,105,108,116,105,110,95,109, - 111,100,117,108,101,90,10,111,115,95,100,101,116,97,105,108, - 115,90,10,98,117,105,108,116,105,110,95,111,115,114,21,0, - 0,0,114,25,0,0,0,90,9,111,115,95,109,111,100,117, - 108,101,90,13,116,104,114,101,97,100,95,109,111,100,117,108, - 101,90,14,119,101,97,107,114,101,102,95,109,111,100,117,108, - 101,90,13,119,105,110,114,101,103,95,109,111,100,117,108,101, - 114,4,0,0,0,114,4,0,0,0,114,5,0,0,0,218, - 6,95,115,101,116,117,112,57,9,0,0,115,100,0,0,0, - 0,9,6,1,6,3,12,1,28,1,15,1,15,1,9,1, - 15,1,9,2,3,1,15,1,17,3,13,1,13,1,15,1, - 15,2,13,1,20,3,33,1,19,2,31,1,10,1,15,1, - 13,1,4,2,3,1,12,1,5,1,13,1,12,2,12,1, - 16,1,16,1,25,3,3,1,16,1,13,2,11,1,16,3, - 12,1,16,3,12,1,12,1,16,3,19,1,19,1,12,1, - 13,1,12,1,114,137,1,0,0,99,2,0,0,0,0,0, - 0,0,3,0,0,0,3,0,0,0,67,0,0,0,115,133, - 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,113,0,116,2,0,106,7,0,106,8,0,116,13,0, - 131,1,0,1,116,2,0,106,7,0,106,8,0,116,14,0, - 131,1,0,1,100,2,0,83,41,3,122,50,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,114,131, - 1,0,0,78,41,15,114,137,1,0,0,114,243,0,0,0, - 114,7,0,0,0,114,81,1,0,0,114,199,0,0,0,114, - 89,1,0,0,114,102,1,0,0,114,108,1,0,0,114,227, - 0,0,0,114,12,1,0,0,114,21,1,0,0,114,3,0, - 0,0,114,57,0,0,0,114,25,1,0,0,114,76,1,0, - 0,41,3,114,135,1,0,0,114,136,1,0,0,90,17,115, - 117,112,112,111,114,116,101,100,95,108,111,97,100,101,114,115, - 114,4,0,0,0,114,4,0,0,0,114,5,0,0,0,218, - 8,95,105,110,115,116,97,108,108,138,9,0,0,115,16,0, - 0,0,0,2,13,1,9,1,28,1,16,1,16,1,15,1, - 16,1,114,138,1,0,0,41,3,122,3,119,105,110,114,1, - 0,0,0,114,2,0,0,0,41,100,114,59,0,0,0,114, - 10,0,0,0,114,11,0,0,0,114,17,0,0,0,114,19, - 0,0,0,114,28,0,0,0,114,38,0,0,0,114,39,0, - 0,0,114,43,0,0,0,114,44,0,0,0,114,46,0,0, - 0,114,55,0,0,0,114,65,0,0,0,114,68,0,0,0, - 114,66,0,0,0,218,8,95,95,99,111,100,101,95,95,114, - 195,0,0,0,114,69,0,0,0,114,109,0,0,0,114,92, - 0,0,0,114,99,0,0,0,114,82,0,0,0,114,83,0, - 0,0,114,102,0,0,0,114,103,0,0,0,114,105,0,0, - 0,114,112,0,0,0,114,114,0,0,0,114,15,0,0,0, - 114,187,0,0,0,114,14,0,0,0,114,18,0,0,0,90, - 17,95,82,65,87,95,77,65,71,73,67,95,78,85,77,66, - 69,82,114,131,0,0,0,114,130,0,0,0,114,142,0,0, - 0,114,132,0,0,0,90,23,68,69,66,85,71,95,66,89, - 84,69,67,79,68,69,95,83,85,70,70,73,88,69,83,90, - 27,79,80,84,73,77,73,90,69,68,95,66,89,84,69,67, - 79,68,69,95,83,85,70,70,73,88,69,83,114,138,0,0, - 0,114,143,0,0,0,114,149,0,0,0,114,151,0,0,0, - 114,158,0,0,0,114,162,0,0,0,114,167,0,0,0,114, - 170,0,0,0,114,176,0,0,0,114,182,0,0,0,114,192, - 0,0,0,114,197,0,0,0,114,200,0,0,0,114,205,0, - 0,0,114,215,0,0,0,114,216,0,0,0,114,220,0,0, - 0,114,177,0,0,0,218,6,111,98,106,101,99,116,114,244, - 0,0,0,114,242,0,0,0,114,251,0,0,0,114,1,1, - 0,0,114,4,1,0,0,114,212,0,0,0,114,178,0,0, - 0,114,7,1,0,0,114,8,1,0,0,114,179,0,0,0, - 114,11,1,0,0,114,12,1,0,0,114,21,1,0,0,114, - 25,1,0,0,114,35,1,0,0,114,36,1,0,0,114,51, - 1,0,0,114,10,1,0,0,114,9,1,0,0,114,62,1, - 0,0,114,59,1,0,0,114,63,1,0,0,114,254,0,0, - 0,114,76,1,0,0,114,89,1,0,0,114,103,1,0,0, - 114,106,1,0,0,114,107,1,0,0,114,109,1,0,0,114, - 111,1,0,0,114,120,1,0,0,114,112,1,0,0,114,114, - 1,0,0,114,115,1,0,0,114,116,1,0,0,114,122,1, - 0,0,114,124,1,0,0,114,243,0,0,0,114,127,1,0, - 0,114,128,1,0,0,114,137,1,0,0,114,138,1,0,0, - 114,4,0,0,0,114,4,0,0,0,114,4,0,0,0,114, - 5,0,0,0,218,8,60,109,111,100,117,108,101,62,8,0, - 0,0,115,184,0,0,0,6,17,6,3,12,12,12,5,12, - 5,12,6,12,12,12,10,12,9,12,5,12,7,15,22,12, - 8,12,4,15,4,19,20,6,2,6,3,22,4,19,68,19, - 21,19,19,12,19,12,20,12,115,22,1,18,2,6,1,6, - 2,9,2,9,2,10,2,21,44,12,33,12,19,12,12,18, - 8,12,18,12,11,12,11,12,18,12,15,21,55,21,12,18, - 10,12,14,12,36,19,27,19,106,24,22,9,3,12,1,15, - 63,18,45,18,56,12,18,12,17,12,25,12,29,12,23,12, - 14,15,25,19,70,19,75,19,63,19,27,22,110,19,41,25, - 43,25,16,6,3,19,57,19,57,19,41,19,134,19,146,19, - 13,12,9,12,9,15,40,12,17,6,1,10,2,12,27,12, - 6,18,24,12,32,12,15,12,11,24,35,12,7,12,81, + 218,8,60,109,111,100,117,108,101,62,8,0,0,0,115,184, + 0,0,0,6,17,6,3,12,12,12,5,12,5,12,6,12, + 12,12,10,12,9,12,5,12,7,15,22,12,8,12,4,15, + 4,19,20,6,2,6,3,22,4,19,68,19,21,19,19,12, + 19,12,20,12,116,22,1,18,2,6,1,6,2,9,2,9, + 2,10,2,21,44,12,33,12,19,12,12,18,8,12,18,12, + 11,12,11,12,18,12,15,21,55,21,12,18,10,12,14,12, + 36,19,27,19,106,24,22,9,3,12,1,15,63,18,45,18, + 56,12,18,12,17,12,25,12,29,12,23,12,14,15,25,19, + 70,19,75,19,63,19,27,22,110,19,41,25,43,25,16,6, + 3,19,57,19,57,19,41,19,134,19,146,19,13,12,9,12, + 9,15,40,12,17,6,1,10,2,12,27,12,6,18,24,12, + 32,12,15,12,11,24,35,12,7,12,81, }; diff -r ccac513ee610 Python/opcode_targets.h --- a/Python/opcode_targets.h Mon Apr 20 21:05:23 2015 +0200 +++ b/Python/opcode_targets.h Mon Apr 20 15:54:06 2015 -0400 @@ -49,9 +49,9 @@ &&_unknown_opcode, &&_unknown_opcode, &&_unknown_opcode, - &&_unknown_opcode, - &&_unknown_opcode, - &&_unknown_opcode, + &&TARGET_ASYNC_AITER, + &&TARGET_ASYNC_ANEXT, + &&TARGET_BEFORE_ASYNC_WITH, &&_unknown_opcode, &&TARGET_STORE_MAP, &&TARGET_INPLACE_ADD, @@ -72,7 +72,7 @@ &&TARGET_PRINT_EXPR, &&TARGET_LOAD_BUILD_CLASS, &&TARGET_YIELD_FROM, - &&_unknown_opcode, + &&TARGET_GET_ASYNC, &&_unknown_opcode, &&TARGET_INPLACE_LSHIFT, &&TARGET_INPLACE_RSHIFT, @@ -80,8 +80,8 @@ &&TARGET_INPLACE_XOR, &&TARGET_INPLACE_OR, &&TARGET_BREAK_LOOP, - &&TARGET_WITH_CLEANUP, - &&_unknown_opcode, + &&TARGET_WITH_CLEANUP_ENTER, + &&TARGET_WITH_CLEANUP_EXIT, &&TARGET_RETURN_VALUE, &&TARGET_IMPORT_STAR, &&_unknown_opcode, @@ -148,7 +148,7 @@ &&TARGET_SET_ADD, &&TARGET_MAP_ADD, &&TARGET_LOAD_CLASSDEREF, - &&_unknown_opcode, + &&TARGET_SETUP_ASYNC_WITH, &&_unknown_opcode, &&_unknown_opcode, &&_unknown_opcode, diff -r ccac513ee610 Python/peephole.c --- a/Python/peephole.c Mon Apr 20 21:05:23 2015 +0200 +++ b/Python/peephole.c Mon Apr 20 15:54:06 2015 -0400 @@ -318,6 +318,7 @@ case SETUP_LOOP: case SETUP_EXCEPT: case SETUP_FINALLY: + case SETUP_ASYNC_WITH: case SETUP_WITH: j = GETJUMPTGT(code, i); blocks[j] = 1; @@ -619,6 +620,7 @@ case SETUP_LOOP: case SETUP_EXCEPT: case SETUP_FINALLY: + case SETUP_ASYNC_WITH: case SETUP_WITH: tgt = GETJUMPTGT(codestr, i); /* Replace JUMP_* to a RETURN into just a RETURN */ @@ -703,6 +705,7 @@ case SETUP_LOOP: case SETUP_EXCEPT: case SETUP_FINALLY: + case SETUP_ASYNC_WITH: case SETUP_WITH: j = addrmap[GETARG(codestr, i) + i + 3] - addrmap[i] - 3; SETARG(codestr, i, j); diff -r ccac513ee610 Python/symtable.c --- a/Python/symtable.c Mon Apr 20 21:05:23 2015 +0200 +++ b/Python/symtable.c Mon Apr 20 15:54:06 2015 -0400 @@ -182,7 +182,7 @@ static int symtable_visit_params(struct symtable *st, asdl_seq *args); static int symtable_visit_argannotations(struct symtable *st, asdl_seq *args); static int symtable_implicit_arg(struct symtable *st, int pos); -static int symtable_visit_annotations(struct symtable *st, stmt_ty s); +static int symtable_visit_annotations(struct symtable *st, stmt_ty s, arguments_ty, expr_ty); static int symtable_visit_withitem(struct symtable *st, withitem_ty item); @@ -1182,7 +1182,8 @@ if (s->v.FunctionDef.args->kw_defaults) VISIT_KWONLYDEFAULTS(st, s->v.FunctionDef.args->kw_defaults); - if (!symtable_visit_annotations(st, s)) + if (!symtable_visit_annotations(st, s, s->v.FunctionDef.args, + s->v.FunctionDef.returns)) VISIT_QUIT(st, 0); if (s->v.FunctionDef.decorator_list) VISIT_SEQ(st, expr, s->v.FunctionDef.decorator_list); @@ -1366,6 +1367,39 @@ VISIT_SEQ(st, withitem, s->v.With.items); VISIT_SEQ(st, stmt, s->v.With.body); break; + case AsyncFunctionDef_kind: + if (!symtable_add_def(st, s->v.AsyncFunctionDef.name, DEF_LOCAL)) + VISIT_QUIT(st, 0); + if (s->v.AsyncFunctionDef.args->defaults) + VISIT_SEQ(st, expr, s->v.AsyncFunctionDef.args->defaults); + if (s->v.AsyncFunctionDef.args->kw_defaults) + VISIT_KWONLYDEFAULTS(st, + s->v.AsyncFunctionDef.args->kw_defaults); + if (!symtable_visit_annotations(st, s, s->v.AsyncFunctionDef.args, + s->v.AsyncFunctionDef.returns)) + VISIT_QUIT(st, 0); + if (s->v.AsyncFunctionDef.decorator_list) + VISIT_SEQ(st, expr, s->v.AsyncFunctionDef.decorator_list); + if (!symtable_enter_block(st, s->v.AsyncFunctionDef.name, + FunctionBlock, (void *)s, s->lineno, + s->col_offset)) + VISIT_QUIT(st, 0); + VISIT(st, arguments, s->v.AsyncFunctionDef.args); + VISIT_SEQ(st, stmt, s->v.AsyncFunctionDef.body); + if (!symtable_exit_block(st, s)) + VISIT_QUIT(st, 0); + break; + case AsyncWith_kind: + VISIT_SEQ(st, withitem, s->v.AsyncWith.items); + VISIT_SEQ(st, stmt, s->v.AsyncWith.body); + break; + case AsyncFor_kind: + VISIT(st, expr, s->v.AsyncFor.target); + VISIT(st, expr, s->v.AsyncFor.iter); + VISIT_SEQ(st, stmt, s->v.AsyncFor.body); + if (s->v.AsyncFor.orelse) + VISIT_SEQ(st, stmt, s->v.AsyncFor.orelse); + break; } VISIT_QUIT(st, 1); } @@ -1444,6 +1478,10 @@ VISIT(st, expr, e->v.YieldFrom.value); st->st_cur->ste_generator = 1; break; + case Await_kind: + VISIT(st, expr, e->v.Await.value); + st->st_cur->ste_generator = 1; + break; case Compare_kind: VISIT(st, expr, e->v.Compare.left); VISIT_SEQ(st, expr, e->v.Compare.comparators); @@ -1548,10 +1586,9 @@ } static int -symtable_visit_annotations(struct symtable *st, stmt_ty s) +symtable_visit_annotations(struct symtable *st, stmt_ty s, + arguments_ty a, expr_ty returns) { - arguments_ty a = s->v.FunctionDef.args; - if (a->args && !symtable_visit_argannotations(st, a->args)) return 0; if (a->vararg && a->vararg->annotation) @@ -1560,7 +1597,7 @@ VISIT(st, expr, a->kwarg->annotation); if (a->kwonlyargs && !symtable_visit_argannotations(st, a->kwonlyargs)) return 0; - if (s->v.FunctionDef.returns) + if (returns) VISIT(st, expr, s->v.FunctionDef.returns); return 1; } diff -r ccac513ee610 Python/sysmodule.c --- a/Python/sysmodule.c Mon Apr 20 21:05:23 2015 +0200 +++ b/Python/sysmodule.c Mon Apr 20 15:54:06 2015 -0400 @@ -645,6 +645,31 @@ return Py_None; } +static PyObject * +sys_set_async_wrapper(PyObject *self, PyObject *wrapper) +{ + if (wrapper != Py_None) { + if (!PyCallable_Check(wrapper)) { + PyErr_Format(PyExc_TypeError, + "callback expected, got %s", + Py_TYPE(wrapper)->tp_name); + return NULL; + } + + PyEval_SetAsyncWrapper(wrapper); + } + else + PyEval_SetAsyncWrapper(NULL); + Py_INCREF(Py_None); + return Py_None; +} + +PyDoc_STRVAR(set_async_wrapper_doc, +"set_async_wrapper(wrapper)\n\ +\n\ +Call wrapper when creating an async function." +); + static PyTypeObject Hash_InfoType; PyDoc_STRVAR(hash_info_doc, @@ -1215,6 +1240,7 @@ {"call_tracing", sys_call_tracing, METH_VARARGS, call_tracing_doc}, {"_debugmallocstats", sys_debugmallocstats, METH_NOARGS, debugmallocstats_doc}, + {"set_async_wrapper", sys_set_async_wrapper, METH_O, set_async_wrapper_doc}, {NULL, NULL} /* sentinel */ }; diff -r ccac513ee610 Tools/parser/unparse.py --- a/Tools/parser/unparse.py Mon Apr 20 21:05:23 2015 +0200 +++ b/Tools/parser/unparse.py Mon Apr 20 15:54:06 2015 -0400 @@ -138,6 +138,14 @@ self.fill("nonlocal ") interleave(lambda: self.write(", "), self.write, t.names) + def _Await(self, t): + self.write("(") + self.write("await") + if t.value: + self.write(" ") + self.dispatch(t.value) + self.write(")") + def _Yield(self, t): self.write("(") self.write("yield") @@ -228,11 +236,18 @@ self.leave() def _FunctionDef(self, t): + self.__FunctionDef_helper(t, "def") + + def _AsyncFunctionDef(self, t): + self.__FunctionDef_helper(t, "async def") + + def __FunctionDef_helper(self, t, fill_suffix): self.write("\n") for deco in t.decorator_list: self.fill("@") self.dispatch(deco) - self.fill("def "+t.name + "(") + def_str = fill_suffix+" "+t.name + "(" + self.fill(def_str) self.dispatch(t.args) self.write(")") if t.returns: @@ -243,7 +258,13 @@ self.leave() def _For(self, t): - self.fill("for ") + self.__For_helper("for ", t) + + def _AsyncFor(self, t): + self.__For_helper("async for ", t) + + def __For_helper(self, fill, t): + self.fill(fill) self.dispatch(t.target) self.write(" in ") self.dispatch(t.iter) @@ -297,6 +318,13 @@ self.dispatch(t.body) self.leave() + def _AsyncWith(self, t): + self.fill("async with ") + interleave(lambda: self.write(", "), self.dispatch, t.items) + self.enter() + self.dispatch(t.body) + self.leave() + # expr def _Bytes(self, t): self.write(repr(t.s))