summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorYury Selivanov <yselivanov@sprymix.com>2015-05-12 02:57:16 (GMT)
committerYury Selivanov <yselivanov@sprymix.com>2015-05-12 02:57:16 (GMT)
commit7544508f0245173bff5866aa1598c8f6cce1fc5f (patch)
treebf80850d9cd46fc811f04b8c2484fb50775c697d
parent4e6bf4b3da03b132b0698f30ee931a350585b117 (diff)
downloadcpython-7544508f0245173bff5866aa1598c8f6cce1fc5f.zip
cpython-7544508f0245173bff5866aa1598c8f6cce1fc5f.tar.gz
cpython-7544508f0245173bff5866aa1598c8f6cce1fc5f.tar.bz2
PEP 0492 -- Coroutines with async and await syntax. Issue #24017.
-rw-r--r--Doc/includes/typestruct.h2
-rw-r--r--Doc/library/dis.rst42
-rw-r--r--Grammar/Grammar11
-rw-r--r--Include/Python-ast.h59
-rw-r--r--Include/ceval.h2
-rw-r--r--Include/code.h5
-rw-r--r--Include/genobject.h7
-rw-r--r--Include/graminit.h155
-rw-r--r--Include/object.h11
-rw-r--r--Include/opcode.h130
-rw-r--r--Include/pyerrors.h1
-rw-r--r--Include/pystate.h2
-rw-r--r--Include/token.h6
-rw-r--r--Include/typeslots.h3
-rw-r--r--Lib/_collections_abc.py76
-rw-r--r--Lib/dis.py2
-rw-r--r--Lib/inspect.py26
-rw-r--r--Lib/lib2to3/Grammar.txt8
-rwxr-xr-xLib/lib2to3/pgen2/token.py6
-rw-r--r--Lib/lib2to3/pgen2/tokenize.py63
-rw-r--r--Lib/lib2to3/tests/test_parser.py32
-rw-r--r--Lib/opcode.py10
-rw-r--r--Lib/test/badsyntax_async1.py3
-rw-r--r--Lib/test/badsyntax_async2.py3
-rw-r--r--Lib/test/badsyntax_async3.py2
-rw-r--r--Lib/test/badsyntax_async4.py2
-rw-r--r--Lib/test/badsyntax_async5.py2
-rw-r--r--Lib/test/badsyntax_async6.py2
-rw-r--r--Lib/test/badsyntax_async7.py2
-rw-r--r--Lib/test/badsyntax_async8.py2
-rw-r--r--Lib/test/badsyntax_async9.py2
-rw-r--r--Lib/test/exception_hierarchy.txt1
-rw-r--r--Lib/test/test_ast.py9
-rw-r--r--Lib/test/test_collections.py80
-rw-r--r--Lib/test/test_coroutines.py862
-rw-r--r--Lib/test/test_dis.py46
-rw-r--r--Lib/test/test_grammar.py87
-rw-r--r--Lib/test/test_inspect.py72
-rw-r--r--Lib/test/test_minidom.py15
-rw-r--r--Lib/test/test_parser.py16
-rw-r--r--Lib/test/test_pickle.py4
-rw-r--r--Lib/test/test_sys.py4
-rw-r--r--Lib/test/test_tokenize.py186
-rw-r--r--Lib/test/test_types.py35
-rw-r--r--Lib/token.py6
-rw-r--r--Lib/tokenize.py56
-rw-r--r--Lib/types.py24
-rw-r--r--Lib/xml/dom/xmlbuilder.py26
-rw-r--r--Modules/_testcapimodule.c97
-rw-r--r--Modules/parsermodule.c115
-rw-r--r--Objects/exceptions.c9
-rw-r--r--Objects/frameobject.c8
-rw-r--r--Objects/genobject.c102
-rw-r--r--Objects/typeobject.c91
-rw-r--r--Objects/typeslots.inc3
-rwxr-xr-xObjects/typeslots.py2
-rw-r--r--Parser/Python.asdl8
-rw-r--r--Parser/tokenizer.c68
-rw-r--r--Parser/tokenizer.h7
-rw-r--r--Python/Python-ast.c473
-rw-r--r--Python/ast.c174
-rw-r--r--Python/ceval.c231
-rw-r--r--Python/compile.c288
-rw-r--r--Python/graminit.c2496
-rw-r--r--Python/importlib.h3466
-rw-r--r--Python/importlib_external.h4761
-rw-r--r--Python/opcode_targets.h14
-rw-r--r--Python/peephole.c3
-rw-r--r--Python/pystate.c4
-rw-r--r--Python/symtable.c49
-rw-r--r--Python/sysmodule.c47
-rw-r--r--Tools/parser/unparse.py32
72 files changed, 9139 insertions, 5617 deletions
diff --git a/Doc/includes/typestruct.h b/Doc/includes/typestruct.h
index fcb846a..5c9f8f5 100644
--- a/Doc/includes/typestruct.h
+++ b/Doc/includes/typestruct.h
@@ -9,7 +9,7 @@ typedef struct _typeobject {
printfunc tp_print;
getattrfunc tp_getattr;
setattrfunc tp_setattr;
- void *tp_reserved;
+ PyAsyncMethods *tp_as_async;
reprfunc tp_repr;
/* Method suites for standard classes */
diff --git a/Doc/library/dis.rst b/Doc/library/dis.rst
index b00d619..5ef5e8d 100644
--- a/Doc/library/dis.rst
+++ b/Doc/library/dis.rst
@@ -508,6 +508,38 @@ the original TOS1.
Implements ``del TOS1[TOS]``.
+**Coroutines opcodes**
+
+.. opcode:: GET_AWAITABLE
+
+ Implements ``TOS = get_awaitable(TOS)``; where ``get_awaitable(o)``
+ returns ``o`` if ``o`` is a coroutine object; or resolved ``o.__await__``.
+
+
+.. opcode:: GET_AITER
+
+ Implements ``TOS = get_awaitable(TOS.__aiter__())``. See ``GET_AWAITABLE``
+ for details about ``get_awaitable``
+
+
+.. opcode:: GET_ANEXT
+
+ Implements ``PUSH(get_awaitable(TOS.__anext__()))``. See ``GET_AWAITABLE``
+ for details about ``get_awaitable``
+
+
+.. opcode:: BEFORE_ASYNC_WITH
+
+ Resolves ``__aenter__`` and ``__aexit__`` from the object on top of the
+ stack. Pushes ``__aexit__`` and result of ``__aenter__()`` to the stack.
+
+
+.. opcode:: SETUP_ASYNC_WITH
+
+ Creates a new frame object.
+
+
+
**Miscellaneous opcodes**
.. opcode:: PRINT_EXPR
@@ -612,7 +644,7 @@ iterations of the loop.
:opcode:`UNPACK_SEQUENCE`).
-.. opcode:: WITH_CLEANUP
+.. opcode:: WITH_CLEANUP_START
Cleans up the stack when a :keyword:`with` statement block exits. TOS is the
context manager's :meth:`__exit__` bound method. Below TOS are 1--3 values
@@ -624,7 +656,13 @@ iterations of the loop.
* (SECOND, THIRD, FOURTH) = exc_info()
In the last case, ``TOS(SECOND, THIRD, FOURTH)`` is called, otherwise
- ``TOS(None, None, None)``. In addition, TOS is removed from the stack.
+ ``TOS(None, None, None)``. Pushes SECOND and result of the call
+ to the stack.
+
+
+.. opcode:: WITH_CLEANUP_FINISH
+
+ Pops exception type and result of 'exit' function call from the stack.
If the stack represents an exception, *and* the function call returns a
'true' value, this information is "zapped" and replaced with a single
diff --git a/Grammar/Grammar b/Grammar/Grammar
index 6915f5f..4b193b9 100644
--- a/Grammar/Grammar
+++ b/Grammar/Grammar
@@ -21,8 +21,11 @@ eval_input: testlist NEWLINE* ENDMARKER
decorator: '@' dotted_name [ '(' [arglist] ')' ] NEWLINE
decorators: decorator+
-decorated: decorators (classdef | funcdef)
+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]]
@@ -65,7 +68,8 @@ global_stmt: 'global' NAME (',' NAME)*
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]
@@ -99,7 +103,8 @@ shift_expr: arith_expr (('<<'|'>>') arith_expr)*
arith_expr: term (('+'|'-') term)*
term: factor (('*'|'@'|'/'|'%'|'//') factor)*
factor: ('+'|'-'|'~') factor | power
-power: atom trailer* ['**' factor]
+power: atom_expr ['**' factor]
+atom_expr: [AWAIT] atom trailer*
atom: ('(' [yield_expr|testlist_comp] ')' |
'[' [testlist_comp] ']' |
'{' [dictorsetmaker] '}' |
diff --git a/Include/Python-ast.h b/Include/Python-ast.h
index a938aad..3bc015f 100644
--- a/Include/Python-ast.h
+++ b/Include/Python-ast.h
@@ -63,12 +63,13 @@ struct _mod {
} 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 _stmt {
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;
asdl_seq *body;
@@ -115,6 +124,13 @@ struct _stmt {
} 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;
@@ -132,6 +148,11 @@ struct _stmt {
} With;
struct {
+ asdl_seq *items;
+ asdl_seq *body;
+ } AsyncWith;
+
+ struct {
expr_ty exc;
expr_ty cause;
} Raise;
@@ -178,11 +199,11 @@ struct _stmt {
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 {
@@ -245,6 +266,10 @@ struct _expr {
struct {
expr_ty value;
+ } Await;
+
+ struct {
+ expr_ty value;
} Yield;
struct {
@@ -402,6 +427,10 @@ mod_ty _Py_Suite(asdl_seq * body, PyArena *arena);
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) _Py_ClassDef(a0, a1, a2, a3, a4, a5, a6, a7)
stmt_ty _Py_ClassDef(identifier name, asdl_seq * bases, asdl_seq * keywords,
asdl_seq * body, asdl_seq * decorator_list, int lineno,
@@ -420,6 +449,9 @@ stmt_ty _Py_AugAssign(expr_ty target, operator_ty op, expr_ty value, int
#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);
@@ -429,6 +461,9 @@ stmt_ty _Py_If(expr_ty test, asdl_seq * body, asdl_seq * orelse, int lineno,
#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);
@@ -491,6 +526,8 @@ expr_ty _Py_DictComp(expr_ty key, expr_ty value, asdl_seq * generators, int
#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 --git a/Include/ceval.h b/Include/ceval.h
index 6811367..d3292b8 100644
--- a/Include/ceval.h
+++ b/Include/ceval.h
@@ -23,6 +23,8 @@ PyAPI_FUNC(PyObject *) PyEval_CallMethod(PyObject *obj,
#ifndef Py_LIMITED_API
PyAPI_FUNC(void) PyEval_SetProfile(Py_tracefunc, PyObject *);
PyAPI_FUNC(void) PyEval_SetTrace(Py_tracefunc, PyObject *);
+PyAPI_FUNC(void) PyEval_SetCoroutineWrapper(PyObject *wrapper);
+PyAPI_FUNC(PyObject *) PyEval_GetCoroutineWrapper();
#endif
struct _frame; /* Avoid including frameobject.h */
diff --git a/Include/code.h b/Include/code.h
index 131de50..56e6ec1 100644
--- a/Include/code.h
+++ b/Include/code.h
@@ -51,6 +51,11 @@ typedef struct {
*/
#define CO_NOFREE 0x0040
+/* The CO_COROUTINE flag is set for coroutine functions (defined with
+ ``async def`` keywords) */
+#define CO_COROUTINE 0x0080
+#define CO_ITERABLE_COROUTINE 0x0100
+
/* These are no longer used. */
#if 0
#define CO_GENERATOR_ALLOWED 0x1000
diff --git a/Include/genobject.h b/Include/genobject.h
index 23571e6..ee0b130 100644
--- a/Include/genobject.h
+++ b/Include/genobject.h
@@ -38,6 +38,12 @@ PyAPI_DATA(PyTypeObject) PyGen_Type;
#define PyGen_Check(op) PyObject_TypeCheck(op, &PyGen_Type)
#define PyGen_CheckExact(op) (Py_TYPE(op) == &PyGen_Type)
+#define PyGen_CheckCoroutineExact(op) (PyGen_CheckExact(op) && \
+ (((PyCodeObject*) \
+ ((PyGenObject*)op)->gi_code) \
+ ->co_flags & (CO_ITERABLE_COROUTINE | \
+ CO_COROUTINE)))
+
PyAPI_FUNC(PyObject *) PyGen_New(struct _frame *);
PyAPI_FUNC(PyObject *) PyGen_NewWithQualName(struct _frame *,
PyObject *name, PyObject *qualname);
@@ -46,6 +52,7 @@ PyAPI_FUNC(int) _PyGen_FetchStopIterationValue(PyObject **);
PyObject *_PyGen_Send(PyGenObject *, PyObject *);
PyAPI_FUNC(void) _PyGen_Finalize(PyObject *self);
+PyObject *_PyGen_GetAwaitableIter(PyObject *o);
#ifdef __cplusplus
}
diff --git a/Include/graminit.h b/Include/graminit.h
index 3ec949a..d030bc3 100644
--- a/Include/graminit.h
+++ b/Include/graminit.h
@@ -6,79 +6,82 @@
#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 yield_stmt 281
+#define raise_stmt 282
+#define import_stmt 283
+#define import_name 284
+#define import_from 285
+#define import_as_name 286
+#define dotted_as_name 287
+#define import_as_names 288
+#define dotted_as_names 289
+#define dotted_name 290
+#define global_stmt 291
+#define nonlocal_stmt 292
+#define assert_stmt 293
+#define compound_stmt 294
+#define async_stmt 295
+#define if_stmt 296
+#define while_stmt 297
+#define for_stmt 298
+#define try_stmt 299
+#define with_stmt 300
+#define with_item 301
+#define except_clause 302
+#define suite 303
+#define test 304
+#define test_nocond 305
+#define lambdef 306
+#define lambdef_nocond 307
+#define or_test 308
+#define and_test 309
+#define not_test 310
+#define comparison 311
+#define comp_op 312
+#define star_expr 313
+#define expr 314
+#define xor_expr 315
+#define and_expr 316
+#define shift_expr 317
+#define arith_expr 318
+#define term 319
+#define factor 320
+#define power 321
+#define atom_expr 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 yield_expr 339
+#define yield_arg 340
diff --git a/Include/object.h b/Include/object.h
index 5716f66..e173438 100644
--- a/Include/object.h
+++ b/Include/object.h
@@ -173,6 +173,9 @@ typedef PyObject *(*ssizessizeargfunc)(PyObject *, Py_ssize_t, Py_ssize_t);
typedef int(*ssizeobjargproc)(PyObject *, Py_ssize_t, PyObject *);
typedef int(*ssizessizeobjargproc)(PyObject *, Py_ssize_t, Py_ssize_t, PyObject *);
typedef int(*objobjargproc)(PyObject *, PyObject *, PyObject *);
+typedef PyObject *(*getawaitablefunc) (PyObject *);
+typedef PyObject *(*getaiterfunc) (PyObject *);
+typedef PyObject *(*aiternextfunc) (PyObject *);
#ifndef Py_LIMITED_API
/* buffer interface */
@@ -301,6 +304,11 @@ typedef struct {
objobjargproc mp_ass_subscript;
} PyMappingMethods;
+typedef struct {
+ getawaitablefunc am_await;
+ getaiterfunc am_aiter;
+ aiternextfunc am_anext;
+} PyAsyncMethods;
typedef struct {
getbufferproc bf_getbuffer;
@@ -346,7 +354,7 @@ typedef struct _typeobject {
printfunc tp_print;
getattrfunc tp_getattr;
setattrfunc tp_setattr;
- void *tp_reserved; /* formerly known as tp_compare */
+ PyAsyncMethods *tp_as_async; /* formerly known as tp_compare or tp_reserved */
reprfunc tp_repr;
/* Method suites for standard classes */
@@ -453,6 +461,7 @@ typedef struct _heaptypeobject {
/* Note: there's a dependency on the order of these members
in slotptr() in typeobject.c . */
PyTypeObject ht_type;
+ PyAsyncMethods as_async;
PyNumberMethods as_number;
PyMappingMethods as_mapping;
PySequenceMethods as_sequence; /* as_sequence comes after as_mapping,
diff --git a/Include/opcode.h b/Include/opcode.h
index 510dfe8..e2a3ba9 100644
--- a/Include/opcode.h
+++ b/Include/opcode.h
@@ -7,68 +7,73 @@ extern "C" {
/* Instruction opcodes for compiled code */
-#define POP_TOP 1
-#define ROT_TWO 2
-#define ROT_THREE 3
-#define DUP_TOP 4
-#define DUP_TOP_TWO 5
-#define NOP 9
-#define UNARY_POSITIVE 10
-#define UNARY_NEGATIVE 11
-#define UNARY_NOT 12
-#define UNARY_INVERT 15
-#define BINARY_MATRIX_MULTIPLY 16
-#define INPLACE_MATRIX_MULTIPLY 17
-#define BINARY_POWER 19
-#define BINARY_MULTIPLY 20
-#define BINARY_MODULO 22
-#define BINARY_ADD 23
-#define BINARY_SUBTRACT 24
-#define BINARY_SUBSCR 25
-#define BINARY_FLOOR_DIVIDE 26
-#define BINARY_TRUE_DIVIDE 27
-#define INPLACE_FLOOR_DIVIDE 28
-#define INPLACE_TRUE_DIVIDE 29
-#define STORE_MAP 54
-#define INPLACE_ADD 55
-#define INPLACE_SUBTRACT 56
-#define INPLACE_MULTIPLY 57
-#define INPLACE_MODULO 59
-#define STORE_SUBSCR 60
-#define DELETE_SUBSCR 61
-#define BINARY_LSHIFT 62
-#define BINARY_RSHIFT 63
-#define BINARY_AND 64
-#define BINARY_XOR 65
-#define BINARY_OR 66
-#define INPLACE_POWER 67
-#define GET_ITER 68
-#define PRINT_EXPR 70
-#define LOAD_BUILD_CLASS 71
-#define YIELD_FROM 72
-#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 RETURN_VALUE 83
-#define IMPORT_STAR 84
-#define YIELD_VALUE 86
-#define POP_BLOCK 87
-#define END_FINALLY 88
-#define POP_EXCEPT 89
-#define HAVE_ARGUMENT 90
-#define STORE_NAME 90
-#define DELETE_NAME 91
-#define UNPACK_SEQUENCE 92
-#define FOR_ITER 93
-#define UNPACK_EX 94
-#define STORE_ATTR 95
-#define DELETE_ATTR 96
-#define STORE_GLOBAL 97
-#define DELETE_GLOBAL 98
+#define POP_TOP 1
+#define ROT_TWO 2
+#define ROT_THREE 3
+#define DUP_TOP 4
+#define DUP_TOP_TWO 5
+#define NOP 9
+#define UNARY_POSITIVE 10
+#define UNARY_NEGATIVE 11
+#define UNARY_NOT 12
+#define UNARY_INVERT 15
+#define BINARY_MATRIX_MULTIPLY 16
+#define INPLACE_MATRIX_MULTIPLY 17
+#define BINARY_POWER 19
+#define BINARY_MULTIPLY 20
+#define BINARY_MODULO 22
+#define BINARY_ADD 23
+#define BINARY_SUBTRACT 24
+#define BINARY_SUBSCR 25
+#define BINARY_FLOOR_DIVIDE 26
+#define BINARY_TRUE_DIVIDE 27
+#define INPLACE_FLOOR_DIVIDE 28
+#define INPLACE_TRUE_DIVIDE 29
+#define GET_AITER 50
+#define GET_ANEXT 51
+#define BEFORE_ASYNC_WITH 52
+#define STORE_MAP 54
+#define INPLACE_ADD 55
+#define INPLACE_SUBTRACT 56
+#define INPLACE_MULTIPLY 57
+#define INPLACE_MODULO 59
+#define STORE_SUBSCR 60
+#define DELETE_SUBSCR 61
+#define BINARY_LSHIFT 62
+#define BINARY_RSHIFT 63
+#define BINARY_AND 64
+#define BINARY_XOR 65
+#define BINARY_OR 66
+#define INPLACE_POWER 67
+#define GET_ITER 68
+#define PRINT_EXPR 70
+#define LOAD_BUILD_CLASS 71
+#define YIELD_FROM 72
+#define GET_AWAITABLE 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_START 81
+#define WITH_CLEANUP_FINISH 82
+#define RETURN_VALUE 83
+#define IMPORT_STAR 84
+#define YIELD_VALUE 86
+#define POP_BLOCK 87
+#define END_FINALLY 88
+#define POP_EXCEPT 89
+#define HAVE_ARGUMENT 90
+#define STORE_NAME 90
+#define DELETE_NAME 91
+#define UNPACK_SEQUENCE 92
+#define FOR_ITER 93
+#define UNPACK_EX 94
+#define STORE_ATTR 95
+#define DELETE_ATTR 96
+#define STORE_GLOBAL 97
+#define DELETE_GLOBAL 98
#define LOAD_CONST 100
#define LOAD_NAME 101
#define BUILD_TUPLE 102
@@ -116,6 +121,7 @@ extern "C" {
#define BUILD_MAP_UNPACK_WITH_CALL 151
#define BUILD_TUPLE_UNPACK 152
#define BUILD_SET_UNPACK 153
+#define SETUP_ASYNC_WITH 154
/* EXCEPT_HANDLER is a special, implicit block type which is created when
entering an except handler. It is not an opcode but we define it here
diff --git a/Include/pyerrors.h b/Include/pyerrors.h
index 8a7e4f4..a019865 100644
--- a/Include/pyerrors.h
+++ b/Include/pyerrors.h
@@ -147,6 +147,7 @@ PyAPI_FUNC(void) _PyErr_ChainExceptions(PyObject *, PyObject *, PyObject *);
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 --git a/Include/pystate.h b/Include/pystate.h
index 8539b65..2ee81df 100644
--- a/Include/pystate.h
+++ b/Include/pystate.h
@@ -134,6 +134,8 @@ typedef struct _ts {
void (*on_delete)(void *);
void *on_delete_data;
+ PyObject *coroutine_wrapper;
+
/* XXX signal handlers should also be here */
} PyThreadState;
diff --git a/Include/token.h b/Include/token.h
index 2b213ee..595afa0 100644
--- a/Include/token.h
+++ b/Include/token.h
@@ -64,8 +64,10 @@ extern "C" {
#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 --git a/Include/typeslots.h b/Include/typeslots.h
index da2e87c..f56749d 100644
--- a/Include/typeslots.h
+++ b/Include/typeslots.h
@@ -76,3 +76,6 @@
#define Py_tp_free 74
#define Py_nb_matrix_multiply 75
#define Py_nb_inplace_matrix_multiply 76
+#define Py_am_await 77
+#define Py_am_aiter 78
+#define Py_am_anext 79
diff --git a/Lib/_collections_abc.py b/Lib/_collections_abc.py
index cb87e6b..ea80403 100644
--- a/Lib/_collections_abc.py
+++ b/Lib/_collections_abc.py
@@ -9,7 +9,8 @@ Unit tests are in test_collections.
from abc import ABCMeta, abstractmethod
import sys
-__all__ = ["Hashable", "Iterable", "Iterator", "Generator",
+__all__ = ["Awaitable", "Coroutine",
+ "Hashable", "Iterable", "Iterator", "Generator",
"Sized", "Container", "Callable",
"Set", "MutableSet",
"Mapping", "MutableMapping",
@@ -74,6 +75,79 @@ class Hashable(metaclass=ABCMeta):
return NotImplemented
+class _CoroutineMeta(ABCMeta):
+
+ def __instancecheck__(cls, instance):
+ # 0x80 = CO_COROUTINE
+ # 0x100 = CO_ITERABLE_COROUTINE
+ # We don't want to import 'inspect' module, as
+ # a dependency for 'collections.abc'.
+ CO_COROUTINES = 0x80 | 0x100
+
+ if (isinstance(instance, generator) and
+ instance.gi_code.co_flags & CO_COROUTINES):
+
+ return True
+
+ return super().__instancecheck__(instance)
+
+
+class Coroutine(metaclass=_CoroutineMeta):
+
+ __slots__ = ()
+
+ @abstractmethod
+ def send(self, value):
+ """Send a value into the coroutine.
+ Return next yielded value or raise StopIteration.
+ """
+ raise StopIteration
+
+ @abstractmethod
+ def throw(self, typ, val=None, tb=None):
+ """Raise an exception in the coroutine.
+ Return next yielded value or raise StopIteration.
+ """
+ if val is None:
+ if tb is None:
+ raise typ
+ val = typ()
+ if tb is not None:
+ val = val.with_traceback(tb)
+ raise val
+
+ def close(self):
+ """Raise GeneratorExit inside coroutine.
+ """
+ try:
+ self.throw(GeneratorExit)
+ except (GeneratorExit, StopIteration):
+ pass
+ else:
+ raise RuntimeError("coroutine ignored GeneratorExit")
+
+
+class Awaitable(metaclass=_CoroutineMeta):
+
+ __slots__ = ()
+
+ @abstractmethod
+ def __await__(self):
+ yield
+
+ @classmethod
+ def __subclasshook__(cls, C):
+ if cls is Awaitable:
+ for B in C.__mro__:
+ if "__await__" in B.__dict__:
+ if B.__dict__["__await__"]:
+ return True
+ break
+ return NotImplemented
+
+Awaitable.register(Coroutine)
+
+
class Iterable(metaclass=ABCMeta):
__slots__ = ()
diff --git a/Lib/dis.py b/Lib/dis.py
index d215bc5..af37cdf 100644
--- a/Lib/dis.py
+++ b/Lib/dis.py
@@ -84,6 +84,8 @@ COMPILER_FLAG_NAMES = {
16: "NESTED",
32: "GENERATOR",
64: "NOFREE",
+ 128: "COROUTINE",
+ 256: "ITERABLE_COROUTINE",
}
def pretty_flags(flags):
diff --git a/Lib/inspect.py b/Lib/inspect.py
index 60890f2..e52d86e 100644
--- a/Lib/inspect.py
+++ b/Lib/inspect.py
@@ -33,6 +33,7 @@ __author__ = ('Ka-Ping Yee <ping@lfw.org>',
import ast
import dis
+import collections.abc
import enum
import importlib.machinery
import itertools
@@ -174,7 +175,22 @@ def isgeneratorfunction(object):
See help(isfunction) for attributes listing."""
return bool((isfunction(object) or ismethod(object)) and
- object.__code__.co_flags & CO_GENERATOR)
+ object.__code__.co_flags & CO_GENERATOR and
+ not object.__code__.co_flags & CO_COROUTINE)
+
+def iscoroutinefunction(object):
+ """Return true if the object is a coroutine function.
+
+ Coroutine functions are defined with "async def" syntax,
+ or generators decorated with "types.coroutine".
+ """
+ return bool((isfunction(object) or ismethod(object)) and
+ object.__code__.co_flags & (CO_ITERABLE_COROUTINE |
+ CO_COROUTINE))
+
+def isawaitable(object):
+ """Return true if the object can be used in "await" expression."""
+ return isinstance(object, collections.abc.Awaitable)
def isgenerator(object):
"""Return true if the object is a generator.
@@ -191,7 +207,13 @@ def isgenerator(object):
send resumes the generator and "sends" a value that becomes
the result of the current yield-expression
throw used to raise an exception inside the generator"""
- return isinstance(object, types.GeneratorType)
+ return (isinstance(object, types.GeneratorType) and
+ not object.gi_code.co_flags & CO_COROUTINE)
+
+def iscoroutine(object):
+ """Return true if the object is a coroutine."""
+ return (isinstance(object, types.GeneratorType) and
+ object.gi_code.co_flags & (CO_COROUTINE | CO_ITERABLE_COROUTINE))
def istraceback(object):
"""Return true if the object is a traceback.
diff --git a/Lib/lib2to3/Grammar.txt b/Lib/lib2to3/Grammar.txt
index ce95d26..c954669 100644
--- a/Lib/lib2to3/Grammar.txt
+++ b/Lib/lib2to3/Grammar.txt
@@ -33,7 +33,8 @@ eval_input: testlist NEWLINE* ENDMARKER
decorator: '@' dotted_name [ '(' [arglist] ')' ] NEWLINE
decorators: decorator+
-decorated: decorators (classdef | funcdef)
+decorated: decorators (classdef | funcdef | async_funcdef)
+async_funcdef: ASYNC funcdef
funcdef: 'def' NAME parameters ['->' test] ':' suite
parameters: '(' [typedargslist] ')'
typedargslist: ((tfpdef ['=' test] ',')*
@@ -82,7 +83,8 @@ global_stmt: ('global' | 'nonlocal') NAME (',' NAME)*
exec_stmt: 'exec' expr ['in' test [',' test]]
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]
@@ -121,7 +123,7 @@ shift_expr: arith_expr (('<<'|'>>') arith_expr)*
arith_expr: term (('+'|'-') term)*
term: factor (('*'|'@'|'/'|'%'|'//') factor)*
factor: ('+'|'-'|'~') factor | power
-power: atom trailer* ['**' factor]
+power: [AWAIT] atom trailer* ['**' factor]
atom: ('(' [yield_expr|testlist_gexp] ')' |
'[' [listmaker] ']' |
'{' [dictsetmaker] '}' |
diff --git a/Lib/lib2to3/pgen2/token.py b/Lib/lib2to3/pgen2/token.py
index 7599396..1a67955 100755
--- a/Lib/lib2to3/pgen2/token.py
+++ b/Lib/lib2to3/pgen2/token.py
@@ -62,8 +62,10 @@ OP = 52
COMMENT = 53
NL = 54
RARROW = 55
-ERRORTOKEN = 56
-N_TOKENS = 57
+AWAIT = 56
+ASYNC = 57
+ERRORTOKEN = 58
+N_TOKENS = 59
NT_OFFSET = 256
#--end constants--
diff --git a/Lib/lib2to3/pgen2/tokenize.py b/Lib/lib2to3/pgen2/tokenize.py
index 3dd1ee9..690fec4 100644
--- a/Lib/lib2to3/pgen2/tokenize.py
+++ b/Lib/lib2to3/pgen2/tokenize.py
@@ -220,7 +220,7 @@ class Untokenizer:
for tok in iterable:
toknum, tokval = tok[:2]
- if toknum in (NAME, NUMBER):
+ if toknum in (NAME, NUMBER, ASYNC, AWAIT):
tokval += ' '
if toknum == INDENT:
@@ -366,6 +366,10 @@ def generate_tokens(readline):
contline = None
indents = [0]
+ # 'stashed' and 'ctx' are used for async/await parsing
+ stashed = None
+ ctx = [('sync', 0)]
+
while 1: # loop over lines in stream
try:
line = readline()
@@ -406,6 +410,10 @@ def generate_tokens(readline):
pos = pos + 1
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')
@@ -449,9 +457,15 @@ def generate_tokens(readline):
newline = NEWLINE
if parenlev > 0:
newline = NL
+ if stashed:
+ yield stashed
+ stashed = None
yield (newline, token, spos, epos, line)
elif initial == '#':
assert not token.endswith("\n")
+ if stashed:
+ yield stashed
+ stashed = None
yield (COMMENT, token, spos, epos, line)
elif token in triple_quoted:
endprog = endprogs[token]
@@ -459,6 +473,9 @@ def generate_tokens(readline):
if endmatch: # all on one line
pos = endmatch.end(0)
token = line[start:pos]
+ if stashed:
+ yield stashed
+ stashed = None
yield (STRING, token, spos, (lnum, pos), line)
else:
strstart = (lnum, start) # multiple lines
@@ -476,22 +493,64 @@ def generate_tokens(readline):
contline = line
break
else: # ordinary string
+ if stashed:
+ yield stashed
+ stashed = None
yield (STRING, token, spos, epos, line)
elif initial in namechars: # ordinary name
- yield (NAME, token, spos, epos, line)
+ if token in ('async', 'await'):
+ if ctx[-1][0] == 'async' and ctx[-1][1] < indents[-1]:
+ yield (ASYNC if token == 'async' else AWAIT,
+ token, spos, epos, line)
+ continue
+
+ tok = (NAME, token, spos, epos, line)
+ if token == 'async' and not stashed:
+ stashed = tok
+ continue
+
+ if token == 'def':
+ if (stashed
+ and stashed[0] == NAME
+ and stashed[1] == 'async'):
+
+ ctx.append(('async', indents[-1]))
+
+ yield (ASYNC, stashed[1],
+ stashed[2], stashed[3],
+ stashed[4])
+ stashed = None
+ else:
+ ctx.append(('sync', indents[-1]))
+
+ if stashed:
+ yield stashed
+ stashed = None
+
+ yield tok
elif initial == '\\': # continued stmt
# This yield is new; needed for better idempotency:
+ if stashed:
+ yield stashed
+ stashed = None
yield (NL, token, spos, (lnum, pos), line)
continued = 1
else:
if initial in '([{': parenlev = parenlev + 1
elif initial in ')]}': parenlev = parenlev - 1
+ if stashed:
+ yield stashed
+ stashed = None
yield (OP, token, spos, epos, line)
else:
yield (ERRORTOKEN, line[pos],
(lnum, pos), (lnum, pos+1), line)
pos = pos + 1
+ if stashed:
+ yield stashed
+ stashed = None
+
for indent in indents[1:]: # pop remaining indent levels
yield (DEDENT, '', (lnum, 0), (lnum, 0), '')
yield (ENDMARKER, '', (lnum, 0), (lnum, 0), '')
diff --git a/Lib/lib2to3/tests/test_parser.py b/Lib/lib2to3/tests/test_parser.py
index 5bb9d2b..107b5ab 100644
--- a/Lib/lib2to3/tests/test_parser.py
+++ b/Lib/lib2to3/tests/test_parser.py
@@ -55,12 +55,42 @@ class TestMatrixMultiplication(GrammarTest):
class TestYieldFrom(GrammarTest):
- def test_matrix_multiplication_operator(self):
+ def test_yield_from(self):
self.validate("yield from x")
self.validate("(yield from x) + y")
self.invalid_syntax("yield from")
+class TestAsyncAwait(GrammarTest):
+ def test_await_expr(self):
+ self.validate("""async def foo():
+ await x
+ """)
+
+ self.invalid_syntax("await x")
+ self.invalid_syntax("""def foo():
+ await x""")
+
+ def test_async_var(self):
+ self.validate("""async = 1""")
+ self.validate("""await = 1""")
+ self.validate("""def async(): pass""")
+
+ def test_async_with(self):
+ self.validate("""async def foo():
+ async for a in b: pass""")
+
+ self.invalid_syntax("""def foo():
+ async for a in b: pass""")
+
+ def test_async_for(self):
+ self.validate("""async def foo():
+ async with a: pass""")
+
+ self.invalid_syntax("""def foo():
+ async with a: pass""")
+
+
class TestRaiseChanges(GrammarTest):
def test_2x_style_1(self):
self.validate("raise")
diff --git a/Lib/opcode.py b/Lib/opcode.py
index c25afd4..24e6c3f 100644
--- a/Lib/opcode.py
+++ b/Lib/opcode.py
@@ -85,6 +85,10 @@ def_op('BINARY_TRUE_DIVIDE', 27)
def_op('INPLACE_FLOOR_DIVIDE', 28)
def_op('INPLACE_TRUE_DIVIDE', 29)
+def_op('GET_AITER', 50)
+def_op('GET_ANEXT', 51)
+def_op('BEFORE_ASYNC_WITH', 52)
+
def_op('STORE_MAP', 54)
def_op('INPLACE_ADD', 55)
def_op('INPLACE_SUBTRACT', 56)
@@ -104,6 +108,7 @@ def_op('GET_ITER', 68)
def_op('PRINT_EXPR', 70)
def_op('LOAD_BUILD_CLASS', 71)
def_op('YIELD_FROM', 72)
+def_op('GET_AWAITABLE', 73)
def_op('INPLACE_LSHIFT', 75)
def_op('INPLACE_RSHIFT', 76)
@@ -111,7 +116,8 @@ 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_START', 81)
+def_op('WITH_CLEANUP_FINISH', 82)
def_op('RETURN_VALUE', 83)
def_op('IMPORT_STAR', 84)
@@ -197,6 +203,8 @@ def_op('MAP_ADD', 147)
def_op('LOAD_CLASSDEREF', 148)
hasfree.append(148)
+jrel_op('SETUP_ASYNC_WITH', 154)
+
def_op('EXTENDED_ARG', 144)
EXTENDED_ARG = 144
diff --git a/Lib/test/badsyntax_async1.py b/Lib/test/badsyntax_async1.py
new file mode 100644
index 0000000..970445d
--- /dev/null
+++ b/Lib/test/badsyntax_async1.py
@@ -0,0 +1,3 @@
+async def foo():
+ def foo(a=await something()):
+ pass
diff --git a/Lib/test/badsyntax_async2.py b/Lib/test/badsyntax_async2.py
new file mode 100644
index 0000000..1e62a3e
--- /dev/null
+++ b/Lib/test/badsyntax_async2.py
@@ -0,0 +1,3 @@
+async def foo():
+ def foo(a:await something()):
+ pass
diff --git a/Lib/test/badsyntax_async3.py b/Lib/test/badsyntax_async3.py
new file mode 100644
index 0000000..dde1bc5
--- /dev/null
+++ b/Lib/test/badsyntax_async3.py
@@ -0,0 +1,2 @@
+async def foo():
+ [i async for i in els]
diff --git a/Lib/test/badsyntax_async4.py b/Lib/test/badsyntax_async4.py
new file mode 100644
index 0000000..4afda40
--- /dev/null
+++ b/Lib/test/badsyntax_async4.py
@@ -0,0 +1,2 @@
+async def foo():
+ async def foo(): await something()
diff --git a/Lib/test/badsyntax_async5.py b/Lib/test/badsyntax_async5.py
new file mode 100644
index 0000000..9d19af6
--- /dev/null
+++ b/Lib/test/badsyntax_async5.py
@@ -0,0 +1,2 @@
+def foo():
+ await something()
diff --git a/Lib/test/badsyntax_async6.py b/Lib/test/badsyntax_async6.py
new file mode 100644
index 0000000..cb0a23d
--- /dev/null
+++ b/Lib/test/badsyntax_async6.py
@@ -0,0 +1,2 @@
+async def foo():
+ yield
diff --git a/Lib/test/badsyntax_async7.py b/Lib/test/badsyntax_async7.py
new file mode 100644
index 0000000..51e4bf9
--- /dev/null
+++ b/Lib/test/badsyntax_async7.py
@@ -0,0 +1,2 @@
+async def foo():
+ yield from []
diff --git a/Lib/test/badsyntax_async8.py b/Lib/test/badsyntax_async8.py
new file mode 100644
index 0000000..3c636f9
--- /dev/null
+++ b/Lib/test/badsyntax_async8.py
@@ -0,0 +1,2 @@
+async def foo():
+ await await fut
diff --git a/Lib/test/badsyntax_async9.py b/Lib/test/badsyntax_async9.py
new file mode 100644
index 0000000..d033b28
--- /dev/null
+++ b/Lib/test/badsyntax_async9.py
@@ -0,0 +1,2 @@
+async def foo():
+ await
diff --git a/Lib/test/exception_hierarchy.txt b/Lib/test/exception_hierarchy.txt
index 1c1f69f..6632826 100644
--- a/Lib/test/exception_hierarchy.txt
+++ b/Lib/test/exception_hierarchy.txt
@@ -4,6 +4,7 @@ BaseException
+-- GeneratorExit
+-- Exception
+-- StopIteration
+ +-- StopAsyncIteration
+-- ArithmeticError
| +-- FloatingPointError
| +-- OverflowError
diff --git a/Lib/test/test_ast.py b/Lib/test/test_ast.py
index 1d9de2c..c220a3c 100644
--- a/Lib/test/test_ast.py
+++ b/Lib/test/test_ast.py
@@ -106,6 +106,12 @@ exec_tests = [
"{r for l in x if g}",
# setcomp with naked tuple
"{r for l,m in x}",
+ # AsyncFunctionDef
+ "async def f():\n await something()",
+ # AsyncFor
+ "async def f():\n async for e in i: 1\n else: 2",
+ # AsyncWith
+ "async def f():\n async with a as b: 1",
]
# These are compiled through "single"
@@ -974,6 +980,9 @@ exec_results = [
('Module', [('Expr', (1, 0), ('DictComp', (1, 1), ('Name', (1, 1), 'a', ('Load',)), ('Name', (1, 5), 'b', ('Load',)), [('comprehension', ('Tuple', (1, 11), [('Name', (1, 11), 'v', ('Store',)), ('Name', (1, 13), 'w', ('Store',))], ('Store',)), ('Name', (1, 18), 'x', ('Load',)), [])]))]),
('Module', [('Expr', (1, 0), ('SetComp', (1, 1), ('Name', (1, 1), 'r', ('Load',)), [('comprehension', ('Name', (1, 7), 'l', ('Store',)), ('Name', (1, 12), 'x', ('Load',)), [('Name', (1, 17), 'g', ('Load',))])]))]),
('Module', [('Expr', (1, 0), ('SetComp', (1, 1), ('Name', (1, 1), 'r', ('Load',)), [('comprehension', ('Tuple', (1, 7), [('Name', (1, 7), 'l', ('Store',)), ('Name', (1, 9), 'm', ('Store',))], ('Store',)), ('Name', (1, 14), 'x', ('Load',)), [])]))]),
+('Module', [('AsyncFunctionDef', (1, 6), 'f', ('arguments', [], None, [], [], None, []), [('Expr', (2, 1), ('Await', (2, 1), ('Call', (2, 7), ('Name', (2, 7), 'something', ('Load',)), [], [])))], [], None)]),
+('Module', [('AsyncFunctionDef', (1, 6), 'f', ('arguments', [], None, [], [], None, []), [('AsyncFor', (2, 7), ('Name', (2, 11), 'e', ('Store',)), ('Name', (2, 16), 'i', ('Load',)), [('Expr', (2, 19), ('Num', (2, 19), 1))], [('Expr', (3, 7), ('Num', (3, 7), 2))])], [], None)]),
+('Module', [('AsyncFunctionDef', (1, 6), 'f', ('arguments', [], None, [], [], None, []), [('AsyncWith', (2, 7), [('withitem', ('Name', (2, 12), 'a', ('Load',)), ('Name', (2, 17), 'b', ('Store',)))], [('Expr', (2, 20), ('Num', (2, 20), 1))])], [], None)]),
]
single_results = [
('Interactive', [('Expr', (1, 0), ('BinOp', (1, 0), ('Num', (1, 0), 1), ('Add',), ('Num', (1, 2), 2)))]),
diff --git a/Lib/test/test_collections.py b/Lib/test/test_collections.py
index 5b2e81f..ad94fdd 100644
--- a/Lib/test/test_collections.py
+++ b/Lib/test/test_collections.py
@@ -11,9 +11,11 @@ from random import randrange, shuffle
import keyword
import re
import sys
+import types
from collections import UserDict
from collections import ChainMap
from collections import deque
+from collections.abc import Awaitable, Coroutine
from collections.abc import Hashable, Iterable, Iterator, Generator
from collections.abc import Sized, Container, Callable
from collections.abc import Set, MutableSet
@@ -446,6 +448,84 @@ class ABCTestCase(unittest.TestCase):
class TestOneTrickPonyABCs(ABCTestCase):
+ def test_Awaitable(self):
+ def gen():
+ yield
+
+ @types.coroutine
+ def coro():
+ yield
+
+ async def new_coro():
+ pass
+
+ class Bar:
+ def __await__(self):
+ yield
+
+ class MinimalCoro(Coroutine):
+ def send(self, value):
+ return value
+ def throw(self, typ, val=None, tb=None):
+ super().throw(typ, val, tb)
+
+ non_samples = [None, int(), gen(), object()]
+ for x in non_samples:
+ self.assertNotIsInstance(x, Awaitable)
+ self.assertFalse(issubclass(type(x), Awaitable), repr(type(x)))
+
+ samples = [Bar(), MinimalCoro()]
+ for x in samples:
+ self.assertIsInstance(x, Awaitable)
+ self.assertTrue(issubclass(type(x), Awaitable))
+
+ c = coro()
+ self.assertIsInstance(c, Awaitable)
+ c.close() # awoid RuntimeWarning that coro() was not awaited
+
+ c = new_coro()
+ self.assertIsInstance(c, Awaitable)
+ c.close() # awoid RuntimeWarning that coro() was not awaited
+
+ def test_Coroutine(self):
+ def gen():
+ yield
+
+ @types.coroutine
+ def coro():
+ yield
+
+ async def new_coro():
+ pass
+
+ class Bar:
+ def __await__(self):
+ yield
+
+ class MinimalCoro(Coroutine):
+ def send(self, value):
+ return value
+ def throw(self, typ, val=None, tb=None):
+ super().throw(typ, val, tb)
+
+ non_samples = [None, int(), gen(), object(), Bar()]
+ for x in non_samples:
+ self.assertNotIsInstance(x, Coroutine)
+ self.assertFalse(issubclass(type(x), Coroutine), repr(type(x)))
+
+ samples = [MinimalCoro()]
+ for x in samples:
+ self.assertIsInstance(x, Awaitable)
+ self.assertTrue(issubclass(type(x), Awaitable))
+
+ c = coro()
+ self.assertIsInstance(c, Coroutine)
+ c.close() # awoid RuntimeWarning that coro() was not awaited
+
+ c = new_coro()
+ self.assertIsInstance(c, Coroutine)
+ c.close() # awoid RuntimeWarning that coro() was not awaited
+
def test_Hashable(self):
# Check some non-hashables
non_samples = [bytearray(), list(), set(), dict()]
diff --git a/Lib/test/test_coroutines.py b/Lib/test/test_coroutines.py
new file mode 100644
index 0000000..2a45225
--- /dev/null
+++ b/Lib/test/test_coroutines.py
@@ -0,0 +1,862 @@
+import contextlib
+import gc
+import sys
+import types
+import unittest
+import warnings
+from test import support
+
+
+class AsyncYieldFrom:
+ def __init__(self, obj):
+ self.obj = obj
+
+ def __await__(self):
+ yield from self.obj
+
+
+class AsyncYield:
+ def __init__(self, value):
+ self.value = value
+
+ def __await__(self):
+ yield self.value
+
+
+def run_async(coro):
+ assert coro.__class__ is types.GeneratorType
+
+ buffer = []
+ result = None
+ while True:
+ try:
+ buffer.append(coro.send(None))
+ except StopIteration as ex:
+ result = ex.args[0] if ex.args else None
+ break
+ return buffer, result
+
+
+@contextlib.contextmanager
+def silence_coro_gc():
+ with warnings.catch_warnings():
+ warnings.simplefilter("ignore")
+ yield
+ support.gc_collect()
+
+
+class AsyncBadSyntaxTest(unittest.TestCase):
+
+ def test_badsyntax_1(self):
+ with self.assertRaisesRegex(SyntaxError, 'invalid syntax'):
+ import test.badsyntax_async1
+
+ def test_badsyntax_2(self):
+ with self.assertRaisesRegex(SyntaxError, 'invalid syntax'):
+ import test.badsyntax_async2
+
+ def test_badsyntax_3(self):
+ with self.assertRaisesRegex(SyntaxError, 'invalid syntax'):
+ import test.badsyntax_async3
+
+ def test_badsyntax_4(self):
+ with self.assertRaisesRegex(SyntaxError, 'invalid syntax'):
+ import test.badsyntax_async4
+
+ def test_badsyntax_5(self):
+ with self.assertRaisesRegex(SyntaxError, 'invalid syntax'):
+ import test.badsyntax_async5
+
+ def test_badsyntax_6(self):
+ with self.assertRaisesRegex(
+ SyntaxError, "'yield' inside async function"):
+
+ import test.badsyntax_async6
+
+ def test_badsyntax_7(self):
+ with self.assertRaisesRegex(
+ SyntaxError, "'yield from' inside async function"):
+
+ import test.badsyntax_async7
+
+ def test_badsyntax_8(self):
+ with self.assertRaisesRegex(SyntaxError, 'invalid syntax'):
+ import test.badsyntax_async8
+
+ def test_badsyntax_9(self):
+ with self.assertRaisesRegex(SyntaxError, 'invalid syntax'):
+ import test.badsyntax_async9
+
+
+class CoroutineTest(unittest.TestCase):
+
+ def test_gen_1(self):
+ def gen(): yield
+ self.assertFalse(hasattr(gen, '__await__'))
+
+ def test_func_1(self):
+ async def foo():
+ return 10
+
+ f = foo()
+ self.assertIsInstance(f, types.GeneratorType)
+ self.assertTrue(bool(foo.__code__.co_flags & 0x80))
+ self.assertTrue(bool(foo.__code__.co_flags & 0x20))
+ self.assertTrue(bool(f.gi_code.co_flags & 0x80))
+ self.assertTrue(bool(f.gi_code.co_flags & 0x20))
+ self.assertEqual(run_async(f), ([], 10))
+
+ def bar(): pass
+ self.assertFalse(bool(bar.__code__.co_flags & 0x80))
+
+ def test_func_2(self):
+ async def foo():
+ raise StopIteration
+
+ with self.assertRaisesRegex(
+ RuntimeError, "generator raised StopIteration"):
+
+ run_async(foo())
+
+ def test_func_3(self):
+ async def foo():
+ raise StopIteration
+
+ with silence_coro_gc():
+ self.assertRegex(repr(foo()), '^<coroutine object.* at 0x.*>$')
+
+ def test_func_4(self):
+ async def foo():
+ raise StopIteration
+
+ check = lambda: self.assertRaisesRegex(
+ TypeError, "coroutine-objects do not support iteration")
+
+ with check():
+ list(foo())
+
+ with check():
+ tuple(foo())
+
+ with check():
+ sum(foo())
+
+ with check():
+ iter(foo())
+
+ with check():
+ next(foo())
+
+ with silence_coro_gc(), check():
+ for i in foo():
+ pass
+
+ with silence_coro_gc(), check():
+ [i for i in foo()]
+
+ def test_func_5(self):
+ @types.coroutine
+ def bar():
+ yield 1
+
+ async def foo():
+ await bar()
+
+ check = lambda: self.assertRaisesRegex(
+ TypeError, "coroutine-objects do not support iteration")
+
+ with check():
+ for el in foo(): pass
+
+ # the following should pass without an error
+ for el in bar():
+ self.assertEqual(el, 1)
+ self.assertEqual([el for el in bar()], [1])
+ self.assertEqual(tuple(bar()), (1,))
+ self.assertEqual(next(iter(bar())), 1)
+
+ def test_func_6(self):
+ @types.coroutine
+ def bar():
+ yield 1
+ yield 2
+
+ async def foo():
+ await bar()
+
+ f = foo()
+ self.assertEquals(f.send(None), 1)
+ self.assertEquals(f.send(None), 2)
+ with self.assertRaises(StopIteration):
+ f.send(None)
+
+ def test_func_7(self):
+ async def bar():
+ return 10
+
+ def foo():
+ yield from bar()
+
+ with silence_coro_gc(), self.assertRaisesRegex(
+ TypeError,
+ "cannot 'yield from' a coroutine object from a generator"):
+
+ list(foo())
+
+ def test_func_8(self):
+ @types.coroutine
+ def bar():
+ return (yield from foo())
+
+ async def foo():
+ return 'spam'
+
+ self.assertEqual(run_async(bar()), ([], 'spam') )
+
+ def test_func_9(self):
+ async def foo(): pass
+
+ with self.assertWarnsRegex(
+ RuntimeWarning, "coroutine '.*test_func_9.*foo' was never awaited"):
+
+ foo()
+ support.gc_collect()
+
+ def test_await_1(self):
+
+ async def foo():
+ await 1
+ with self.assertRaisesRegex(TypeError, "object int can.t.*await"):
+ run_async(foo())
+
+ def test_await_2(self):
+ async def foo():
+ await []
+ with self.assertRaisesRegex(TypeError, "object list can.t.*await"):
+ run_async(foo())
+
+ def test_await_3(self):
+ async def foo():
+ await AsyncYieldFrom([1, 2, 3])
+
+ self.assertEqual(run_async(foo()), ([1, 2, 3], None))
+
+ def test_await_4(self):
+ async def bar():
+ return 42
+
+ async def foo():
+ return await bar()
+
+ self.assertEqual(run_async(foo()), ([], 42))
+
+ def test_await_5(self):
+ class Awaitable:
+ def __await__(self):
+ return
+
+ async def foo():
+ return (await Awaitable())
+
+ with self.assertRaisesRegex(
+ TypeError, "__await__.*returned non-iterator of type"):
+
+ run_async(foo())
+
+ def test_await_6(self):
+ class Awaitable:
+ def __await__(self):
+ return iter([52])
+
+ async def foo():
+ return (await Awaitable())
+
+ self.assertEqual(run_async(foo()), ([52], None))
+
+ def test_await_7(self):
+ class Awaitable:
+ def __await__(self):
+ yield 42
+ return 100
+
+ async def foo():
+ return (await Awaitable())
+
+ self.assertEqual(run_async(foo()), ([42], 100))
+
+ def test_await_8(self):
+ class Awaitable:
+ pass
+
+ async def foo():
+ return (await Awaitable())
+
+ with self.assertRaisesRegex(
+ TypeError, "object Awaitable can't be used in 'await' expression"):
+
+ run_async(foo())
+
+ def test_await_9(self):
+ def wrap():
+ return bar
+
+ async def bar():
+ return 42
+
+ async def foo():
+ b = bar()
+
+ db = {'b': lambda: wrap}
+
+ class DB:
+ b = wrap
+
+ return (await bar() + await wrap()() + await db['b']()()() +
+ await bar() * 1000 + await DB.b()())
+
+ async def foo2():
+ return -await bar()
+
+ self.assertEqual(run_async(foo()), ([], 42168))
+ self.assertEqual(run_async(foo2()), ([], -42))
+
+ def test_await_10(self):
+ async def baz():
+ return 42
+
+ async def bar():
+ return baz()
+
+ async def foo():
+ return await (await bar())
+
+ self.assertEqual(run_async(foo()), ([], 42))
+
+ def test_await_11(self):
+ def ident(val):
+ return val
+
+ async def bar():
+ return 'spam'
+
+ async def foo():
+ return ident(val=await bar())
+
+ async def foo2():
+ return await bar(), 'ham'
+
+ self.assertEqual(run_async(foo2()), ([], ('spam', 'ham')))
+
+ def test_await_12(self):
+ async def coro():
+ return 'spam'
+
+ class Awaitable:
+ def __await__(self):
+ return coro()
+
+ async def foo():
+ return await Awaitable()
+
+ with self.assertRaisesRegex(
+ TypeError, "__await__\(\) returned a coroutine"):
+
+ run_async(foo())
+
+ def test_await_13(self):
+ class Awaitable:
+ def __await__(self):
+ return self
+
+ async def foo():
+ return await Awaitable()
+
+ with self.assertRaisesRegex(
+ TypeError, "__await__.*returned non-iterator of type"):
+
+ run_async(foo())
+
+ def test_with_1(self):
+ class Manager:
+ def __init__(self, name):
+ self.name = name
+
+ async def __aenter__(self):
+ await AsyncYieldFrom(['enter-1-' + self.name,
+ 'enter-2-' + self.name])
+ return self
+
+ async def __aexit__(self, *args):
+ await AsyncYieldFrom(['exit-1-' + self.name,
+ 'exit-2-' + self.name])
+
+ if self.name == 'B':
+ return True
+
+
+ async def foo():
+ async with Manager("A") as a, Manager("B") as b:
+ await AsyncYieldFrom([('managers', a.name, b.name)])
+ 1/0
+
+ f = foo()
+ result, _ = run_async(f)
+
+ self.assertEqual(
+ result, ['enter-1-A', 'enter-2-A', 'enter-1-B', 'enter-2-B',
+ ('managers', 'A', 'B'),
+ 'exit-1-B', 'exit-2-B', 'exit-1-A', 'exit-2-A']
+ )
+
+ async def foo():
+ async with Manager("A") as a, Manager("C") as c:
+ await AsyncYieldFrom([('managers', a.name, c.name)])
+ 1/0
+
+ with self.assertRaises(ZeroDivisionError):
+ run_async(foo())
+
+ def test_with_2(self):
+ class CM:
+ def __aenter__(self):
+ pass
+
+ async def foo():
+ async with CM():
+ pass
+
+ with self.assertRaisesRegex(AttributeError, '__aexit__'):
+ run_async(foo())
+
+ def test_with_3(self):
+ class CM:
+ def __aexit__(self):
+ pass
+
+ async def foo():
+ async with CM():
+ pass
+
+ with self.assertRaisesRegex(AttributeError, '__aenter__'):
+ run_async(foo())
+
+ def test_with_4(self):
+ class CM:
+ def __enter__(self):
+ pass
+
+ def __exit__(self):
+ pass
+
+ async def foo():
+ async with CM():
+ pass
+
+ with self.assertRaisesRegex(AttributeError, '__aexit__'):
+ run_async(foo())
+
+ def test_with_5(self):
+ # While this test doesn't make a lot of sense,
+ # it's a regression test for an early bug with opcodes
+ # generation
+
+ class CM:
+ async def __aenter__(self):
+ return self
+
+ async def __aexit__(self, *exc):
+ pass
+
+ async def func():
+ async with CM():
+ assert (1, ) == 1
+
+ with self.assertRaises(AssertionError):
+ run_async(func())
+
+ def test_with_6(self):
+ class CM:
+ def __aenter__(self):
+ return 123
+
+ def __aexit__(self, *e):
+ return 456
+
+ async def foo():
+ async with CM():
+ pass
+
+ with self.assertRaisesRegex(
+ TypeError, "object int can't be used in 'await' expression"):
+ # it's important that __aexit__ wasn't called
+ run_async(foo())
+
+ def test_with_7(self):
+ class CM:
+ async def __aenter__(self):
+ return self
+
+ def __aexit__(self, *e):
+ return 456
+
+ async def foo():
+ async with CM():
+ pass
+
+ with self.assertRaisesRegex(
+ TypeError, "object int can't be used in 'await' expression"):
+
+ run_async(foo())
+
+ def test_for_1(self):
+ aiter_calls = 0
+
+ class AsyncIter:
+ def __init__(self):
+ self.i = 0
+
+ async def __aiter__(self):
+ nonlocal aiter_calls
+ aiter_calls += 1
+ return self
+
+ async def __anext__(self):
+ self.i += 1
+
+ if not (self.i % 10):
+ await AsyncYield(self.i * 10)
+
+ if self.i > 100:
+ raise StopAsyncIteration
+
+ return self.i, self.i
+
+
+ buffer = []
+ async def test1():
+ async for i1, i2 in AsyncIter():
+ buffer.append(i1 + i2)
+
+ yielded, _ = run_async(test1())
+ # Make sure that __aiter__ was called only once
+ self.assertEqual(aiter_calls, 1)
+ self.assertEqual(yielded, [i * 100 for i in range(1, 11)])
+ self.assertEqual(buffer, [i*2 for i in range(1, 101)])
+
+
+ buffer = []
+ async def test2():
+ nonlocal buffer
+ async for i in AsyncIter():
+ buffer.append(i[0])
+ if i[0] == 20:
+ break
+ else:
+ buffer.append('what?')
+ buffer.append('end')
+
+ yielded, _ = run_async(test2())
+ # Make sure that __aiter__ was called only once
+ self.assertEqual(aiter_calls, 2)
+ self.assertEqual(yielded, [100, 200])
+ self.assertEqual(buffer, [i for i in range(1, 21)] + ['end'])
+
+
+ buffer = []
+ async def test3():
+ nonlocal buffer
+ async for i in AsyncIter():
+ if i[0] > 20:
+ continue
+ buffer.append(i[0])
+ else:
+ buffer.append('what?')
+ buffer.append('end')
+
+ yielded, _ = run_async(test3())
+ # Make sure that __aiter__ was called only once
+ self.assertEqual(aiter_calls, 3)
+ self.assertEqual(yielded, [i * 100 for i in range(1, 11)])
+ self.assertEqual(buffer, [i for i in range(1, 21)] +
+ ['what?', 'end'])
+
+ def test_for_2(self):
+ tup = (1, 2, 3)
+ refs_before = sys.getrefcount(tup)
+
+ async def foo():
+ async for i in tup:
+ print('never going to happen')
+
+ with self.assertRaisesRegex(
+ TypeError, "async for' requires an object.*__aiter__.*tuple"):
+
+ run_async(foo())
+
+ self.assertEqual(sys.getrefcount(tup), refs_before)
+
+ def test_for_3(self):
+ class I:
+ def __aiter__(self):
+ return self
+
+ aiter = I()
+ refs_before = sys.getrefcount(aiter)
+
+ async def foo():
+ async for i in aiter:
+ print('never going to happen')
+
+ with self.assertRaisesRegex(
+ TypeError,
+ "async for' received an invalid object.*__aiter.*\: I"):
+
+ run_async(foo())
+
+ self.assertEqual(sys.getrefcount(aiter), refs_before)
+
+ def test_for_4(self):
+ class I:
+ async def __aiter__(self):
+ return self
+
+ def __anext__(self):
+ return ()
+
+ aiter = I()
+ refs_before = sys.getrefcount(aiter)
+
+ async def foo():
+ async for i in aiter:
+ print('never going to happen')
+
+ with self.assertRaisesRegex(
+ TypeError,
+ "async for' received an invalid object.*__anext__.*tuple"):
+
+ run_async(foo())
+
+ self.assertEqual(sys.getrefcount(aiter), refs_before)
+
+ def test_for_5(self):
+ class I:
+ async def __aiter__(self):
+ return self
+
+ def __anext__(self):
+ return 123
+
+ async def foo():
+ async for i in I():
+ print('never going to happen')
+
+ with self.assertRaisesRegex(
+ TypeError,
+ "async for' received an invalid object.*__anext.*int"):
+
+ run_async(foo())
+
+ def test_for_6(self):
+ I = 0
+
+ class Manager:
+ async def __aenter__(self):
+ nonlocal I
+ I += 10000
+
+ async def __aexit__(self, *args):
+ nonlocal I
+ I += 100000
+
+ class Iterable:
+ def __init__(self):
+ self.i = 0
+
+ async def __aiter__(self):
+ return self
+
+ async def __anext__(self):
+ if self.i > 10:
+ raise StopAsyncIteration
+ self.i += 1
+ return self.i
+
+ ##############
+
+ manager = Manager()
+ iterable = Iterable()
+ mrefs_before = sys.getrefcount(manager)
+ irefs_before = sys.getrefcount(iterable)
+
+ async def main():
+ nonlocal I
+
+ async with manager:
+ async for i in iterable:
+ I += 1
+ I += 1000
+
+ run_async(main())
+ self.assertEqual(I, 111011)
+
+ self.assertEqual(sys.getrefcount(manager), mrefs_before)
+ self.assertEqual(sys.getrefcount(iterable), irefs_before)
+
+ ##############
+
+ async def main():
+ nonlocal I
+
+ async with Manager():
+ async for i in Iterable():
+ I += 1
+ I += 1000
+
+ async with Manager():
+ async for i in Iterable():
+ I += 1
+ I += 1000
+
+ run_async(main())
+ self.assertEqual(I, 333033)
+
+ ##############
+
+ async def main():
+ nonlocal I
+
+ async with Manager():
+ I += 100
+ async for i in Iterable():
+ I += 1
+ else:
+ I += 10000000
+ I += 1000
+
+ async with Manager():
+ I += 100
+ async for i in Iterable():
+ I += 1
+ else:
+ I += 10000000
+ I += 1000
+
+ run_async(main())
+ self.assertEqual(I, 20555255)
+
+
+class CoroAsyncIOCompatTest(unittest.TestCase):
+
+ def test_asyncio_1(self):
+ import asyncio
+
+ class MyException(Exception):
+ pass
+
+ buffer = []
+
+ class CM:
+ async def __aenter__(self):
+ buffer.append(1)
+ await asyncio.sleep(0.01)
+ buffer.append(2)
+ return self
+
+ async def __aexit__(self, exc_type, exc_val, exc_tb):
+ await asyncio.sleep(0.01)
+ buffer.append(exc_type.__name__)
+
+ async def f():
+ async with CM() as c:
+ await asyncio.sleep(0.01)
+ raise MyException
+ buffer.append('unreachable')
+
+ loop = asyncio.get_event_loop()
+ try:
+ loop.run_until_complete(f())
+ except MyException:
+ pass
+ finally:
+ loop.close()
+
+ self.assertEqual(buffer, [1, 2, 'MyException'])
+
+
+class SysSetCoroWrapperTest(unittest.TestCase):
+
+ def test_set_wrapper_1(self):
+ async def foo():
+ return 'spam'
+
+ wrapped = None
+ def wrap(gen):
+ nonlocal wrapped
+ wrapped = gen
+ return gen
+
+ self.assertIsNone(sys.get_coroutine_wrapper())
+
+ sys.set_coroutine_wrapper(wrap)
+ self.assertIs(sys.get_coroutine_wrapper(), wrap)
+ try:
+ f = foo()
+ self.assertTrue(wrapped)
+
+ self.assertEqual(run_async(f), ([], 'spam'))
+ finally:
+ sys.set_coroutine_wrapper(None)
+
+ self.assertIsNone(sys.get_coroutine_wrapper())
+
+ wrapped = None
+ with silence_coro_gc():
+ foo()
+ self.assertFalse(wrapped)
+
+ def test_set_wrapper_2(self):
+ self.assertIsNone(sys.get_coroutine_wrapper())
+ with self.assertRaisesRegex(TypeError, "callable expected, got int"):
+ sys.set_coroutine_wrapper(1)
+ self.assertIsNone(sys.get_coroutine_wrapper())
+
+
+class CAPITest(unittest.TestCase):
+
+ def test_tp_await_1(self):
+ from _testcapi import awaitType as at
+
+ async def foo():
+ future = at(iter([1]))
+ return (await future)
+
+ self.assertEqual(foo().send(None), 1)
+
+ def test_tp_await_2(self):
+ # Test tp_await to __await__ mapping
+ from _testcapi import awaitType as at
+ future = at(iter([1]))
+ self.assertEqual(next(future.__await__()), 1)
+
+ def test_tp_await_3(self):
+ from _testcapi import awaitType as at
+
+ async def foo():
+ future = at(1)
+ return (await future)
+
+ with self.assertRaisesRegex(
+ TypeError, "__await__.*returned non-iterator of type 'int'"):
+ self.assertEqual(foo().send(None), 1)
+
+
+def test_main():
+ support.run_unittest(AsyncBadSyntaxTest,
+ CoroutineTest,
+ CoroAsyncIOCompatTest,
+ SysSetCoroWrapperTest,
+ CAPITest)
+
+
+if __name__=="__main__":
+ test_main()
diff --git a/Lib/test/test_dis.py b/Lib/test/test_dis.py
index 7890b1f..421bbad 100644
--- a/Lib/test/test_dis.py
+++ b/Lib/test/test_dis.py
@@ -480,6 +480,24 @@ Constants:
Names:
0: x"""
+
+async def async_def():
+ await 1
+ async for a in b: pass
+ async with c as d: pass
+
+code_info_async_def = """\
+Name: async_def
+Filename: (.*)
+Argument count: 0
+Kw-only arguments: 0
+Number of locals: 2
+Stack size: 17
+Flags: OPTIMIZED, NEWLOCALS, GENERATOR, NOFREE, COROUTINE
+Constants:
+ 0: None
+ 1: 1"""
+
class CodeInfoTests(unittest.TestCase):
test_pairs = [
(dis.code_info, code_info_code_info),
@@ -488,6 +506,7 @@ class CodeInfoTests(unittest.TestCase):
(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 +716,7 @@ expected_opinfo_jumpy = [
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 +736,7 @@ expected_opinfo_jumpy = [
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 +747,18 @@ expected_opinfo_jumpy = [
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_START', opcode=81, arg=None, argval=None, argrepr='', offset=211, starts_line=None, is_jump_target=True),
+ Instruction(opname='WITH_CLEANUP_FINISH', 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 --git a/Lib/test/test_grammar.py b/Lib/test/test_grammar.py
index 28b1f04..e46a232 100644
--- a/Lib/test/test_grammar.py
+++ b/Lib/test/test_grammar.py
@@ -2,6 +2,7 @@
# This just tests whether the parser accepts them all.
from test.support import check_syntax_error
+import inspect
import unittest
import sys
# testing import *
@@ -1034,6 +1035,92 @@ class GrammarTests(unittest.TestCase):
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 & inspect.CO_COROUTINE))
+
+ 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 & inspect.CO_COROUTINE))
+
+ 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 & inspect.CO_COROUTINE))
+
+ def test_async_for(self):
+ class Done(Exception): pass
+
+ class AIter:
+ async def __aiter__(self):
+ return self
+ async def __anext__(self):
+ raise StopAsyncIteration
+
+ async def foo():
+ async for i in AIter():
+ pass
+ async for i, j in AIter():
+ pass
+ async for i in AIter():
+ pass
+ else:
+ pass
+ raise Done
+
+ with self.assertRaises(Done):
+ foo().send(None)
+
+ def test_async_with(self):
+ class Done(Exception): pass
+
+ class manager:
+ async def __aenter__(self):
+ return (1, 2)
+ async def __aexit__(self, *exc):
+ return False
+
+ async def foo():
+ async with manager():
+ pass
+ async with manager() as x:
+ pass
+ async with manager() as (x, y):
+ pass
+ async with manager(), manager():
+ pass
+ async with manager() as x, manager() as y:
+ pass
+ async with manager() as x, manager():
+ pass
+ raise Done
+
+ with self.assertRaises(Done):
+ foo().send(None)
+
if __name__ == '__main__':
unittest.main()
diff --git a/Lib/test/test_inspect.py b/Lib/test/test_inspect.py
index 43ef755..20df755 100644
--- a/Lib/test/test_inspect.py
+++ b/Lib/test/test_inspect.py
@@ -18,6 +18,7 @@ import textwrap
import unicodedata
import unittest
import unittest.mock
+import warnings
try:
from concurrent.futures import ThreadPoolExecutor
@@ -62,14 +63,16 @@ class IsTestBase(unittest.TestCase):
predicates = set([inspect.isbuiltin, inspect.isclass, inspect.iscode,
inspect.isframe, inspect.isfunction, inspect.ismethod,
inspect.ismodule, inspect.istraceback,
- inspect.isgenerator, inspect.isgeneratorfunction])
+ inspect.isgenerator, inspect.isgeneratorfunction,
+ inspect.iscoroutine, inspect.iscoroutinefunction])
def istest(self, predicate, exp):
obj = eval(exp)
self.assertTrue(predicate(obj), '%s(%s)' % (predicate.__name__, exp))
for other in self.predicates - set([predicate]):
- if predicate == inspect.isgeneratorfunction and\
+ if (predicate == inspect.isgeneratorfunction or \
+ predicate == inspect.iscoroutinefunction) and \
other == inspect.isfunction:
continue
self.assertFalse(other(obj), 'not %s(%s)' % (other.__name__, exp))
@@ -78,13 +81,21 @@ def generator_function_example(self):
for i in range(2):
yield i
+async def coroutine_function_example(self):
+ return 'spam'
+
+@types.coroutine
+def gen_coroutine_function_example(self):
+ yield
+ return 'spam'
+
class TestPredicates(IsTestBase):
- def test_sixteen(self):
+ def test_eightteen(self):
count = len([x for x in dir(inspect) if x.startswith('is')])
# This test is here for remember you to update Doc/library/inspect.rst
# which claims there are 16 such functions
- expected = 16
+ expected = 19
err_msg = "There are %d (not %d) is* functions" % (count, expected)
self.assertEqual(count, expected, err_msg)
@@ -115,11 +126,64 @@ class TestPredicates(IsTestBase):
self.istest(inspect.isdatadescriptor, 'collections.defaultdict.default_factory')
self.istest(inspect.isgenerator, '(x for x in range(2))')
self.istest(inspect.isgeneratorfunction, 'generator_function_example')
+
+ with warnings.catch_warnings():
+ warnings.simplefilter("ignore")
+ self.istest(inspect.iscoroutine, 'coroutine_function_example(1)')
+ self.istest(inspect.iscoroutinefunction, 'coroutine_function_example')
+
if hasattr(types, 'MemberDescriptorType'):
self.istest(inspect.ismemberdescriptor, 'datetime.timedelta.days')
else:
self.assertFalse(inspect.ismemberdescriptor(datetime.timedelta.days))
+ def test_iscoroutine(self):
+ gen_coro = gen_coroutine_function_example(1)
+ coro = coroutine_function_example(1)
+
+ self.assertTrue(
+ inspect.iscoroutinefunction(gen_coroutine_function_example))
+ self.assertTrue(inspect.iscoroutine(gen_coro))
+
+ self.assertTrue(
+ inspect.isgeneratorfunction(gen_coroutine_function_example))
+ self.assertTrue(inspect.isgenerator(gen_coro))
+
+ self.assertTrue(
+ inspect.iscoroutinefunction(coroutine_function_example))
+ self.assertTrue(inspect.iscoroutine(coro))
+
+ self.assertFalse(
+ inspect.isgeneratorfunction(coroutine_function_example))
+ self.assertFalse(inspect.isgenerator(coro))
+
+ coro.close(); gen_coro.close() # silence warnings
+
+ def test_isawaitable(self):
+ def gen(): yield
+ self.assertFalse(inspect.isawaitable(gen()))
+
+ coro = coroutine_function_example(1)
+ gen_coro = gen_coroutine_function_example(1)
+
+ self.assertTrue(
+ inspect.isawaitable(coro))
+ self.assertTrue(
+ inspect.isawaitable(gen_coro))
+
+ class Future:
+ def __await__():
+ pass
+ self.assertTrue(inspect.isawaitable(Future()))
+ self.assertFalse(inspect.isawaitable(Future))
+
+ class NotFuture: pass
+ not_fut = NotFuture()
+ not_fut.__await__ = lambda: None
+ self.assertFalse(inspect.isawaitable(not_fut))
+
+ coro.close(); gen_coro.close() # silence warnings
+
def test_isroutine(self):
self.assertTrue(inspect.isroutine(mod.spam))
self.assertTrue(inspect.isroutine([].count))
diff --git a/Lib/test/test_minidom.py b/Lib/test/test_minidom.py
index 686638c..e8ca497 100644
--- a/Lib/test/test_minidom.py
+++ b/Lib/test/test_minidom.py
@@ -49,6 +49,21 @@ class MinidomTest(unittest.TestCase):
t = node.wholeText
self.confirm(t == s, "looking for %r, found %r" % (s, t))
+ def testDocumentAsyncAttr(self):
+ doc = Document()
+ self.assertFalse(doc.async_)
+ with self.assertWarns(DeprecationWarning):
+ self.assertFalse(getattr(doc, 'async', True))
+ with self.assertWarns(DeprecationWarning):
+ setattr(doc, 'async', True)
+ with self.assertWarns(DeprecationWarning):
+ self.assertTrue(getattr(doc, 'async', False))
+ self.assertTrue(doc.async_)
+
+ self.assertFalse(Document.async_)
+ with self.assertWarns(DeprecationWarning):
+ self.assertFalse(getattr(Document, 'async', True))
+
def testParseFromBinaryFile(self):
with open(tstfile, 'rb') as file:
dom = parse(file)
diff --git a/Lib/test/test_parser.py b/Lib/test/test_parser.py
index 56b5d95..7082273 100644
--- a/Lib/test/test_parser.py
+++ b/Lib/test/test_parser.py
@@ -63,6 +63,22 @@ class RoundtripLegalSyntaxTestCase(unittest.TestCase):
" 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 --git a/Lib/test/test_pickle.py b/Lib/test/test_pickle.py
index f5add27..a9853c1 100644
--- a/Lib/test/test_pickle.py
+++ b/Lib/test/test_pickle.py
@@ -351,7 +351,9 @@ class CompatPickleTests(unittest.TestCase):
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 --git a/Lib/test/test_sys.py b/Lib/test/test_sys.py
index 6d2763b..494a53b 100644
--- a/Lib/test/test_sys.py
+++ b/Lib/test/test_sys.py
@@ -1025,9 +1025,9 @@ class SizeofTest(unittest.TestCase):
# static type: PyTypeObject
s = vsize('P2n15Pl4Pn9Pn11PIP')
check(int, s)
- # (PyTypeObject + PyNumberMethods + PyMappingMethods +
+ # (PyTypeObject + PyAsyncMethods + PyNumberMethods + PyMappingMethods +
# PySequenceMethods + PyBufferProcs + 4P)
- s = vsize('P2n17Pl4Pn9Pn11PIP') + struct.calcsize('34P 3P 10P 2P 4P')
+ s = vsize('P2n17Pl4Pn9Pn11PIP') + struct.calcsize('34P 3P 3P 10P 2P 4P')
# Separate block for PyDictKeysObject with 4 entries
s += struct.calcsize("2nPn") + 4*struct.calcsize("n2P")
# class
diff --git a/Lib/test/test_tokenize.py b/Lib/test/test_tokenize.py
index 03f6148..ed75171 100644
--- a/Lib/test/test_tokenize.py
+++ b/Lib/test/test_tokenize.py
@@ -641,6 +641,192 @@ Legacy unicode literals:
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("a = (async = 1)")
+ ENCODING 'utf-8' (0, 0) (0, 0)
+ NAME 'a' (1, 0) (1, 1)
+ OP '=' (1, 2) (1, 3)
+ OP '(' (1, 4) (1, 5)
+ NAME 'async' (1, 5) (1, 10)
+ OP '=' (1, 11) (1, 12)
+ NUMBER '1' (1, 13) (1, 14)
+ OP ')' (1, 14) (1, 15)
+
+ >>> dump_tokens("async()")
+ ENCODING 'utf-8' (0, 0) (0, 0)
+ NAME 'async' (1, 0) (1, 5)
+ OP '(' (1, 5) (1, 6)
+ OP ')' (1, 6) (1, 7)
+
+ >>> dump_tokens("class async(Bar):pass")
+ ENCODING 'utf-8' (0, 0) (0, 0)
+ NAME 'class' (1, 0) (1, 5)
+ NAME 'async' (1, 6) (1, 11)
+ OP '(' (1, 11) (1, 12)
+ NAME 'Bar' (1, 12) (1, 15)
+ OP ')' (1, 15) (1, 16)
+ OP ':' (1, 16) (1, 17)
+ NAME 'pass' (1, 17) (1, 21)
+
+ >>> dump_tokens("class async:pass")
+ ENCODING 'utf-8' (0, 0) (0, 0)
+ NAME 'class' (1, 0) (1, 5)
+ NAME 'async' (1, 6) (1, 11)
+ OP ':' (1, 11) (1, 12)
+ NAME 'pass' (1, 12) (1, 16)
+
+ >>> 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("async for a in b: pass")
+ ENCODING 'utf-8' (0, 0) (0, 0)
+ NAME 'async' (1, 0) (1, 5)
+ NAME 'for' (1, 6) (1, 9)
+ NAME 'a' (1, 10) (1, 11)
+ NAME 'in' (1, 12) (1, 14)
+ NAME 'b' (1, 15) (1, 16)
+ OP ':' (1, 16) (1, 17)
+ NAME 'pass' (1, 18) (1, 22)
+
+ >>> dump_tokens("async with a as b: pass")
+ ENCODING 'utf-8' (0, 0) (0, 0)
+ NAME 'async' (1, 0) (1, 5)
+ NAME 'with' (1, 6) (1, 10)
+ NAME 'a' (1, 11) (1, 12)
+ NAME 'as' (1, 13) (1, 15)
+ NAME 'b' (1, 16) (1, 17)
+ OP ':' (1, 17) (1, 18)
+ NAME 'pass' (1, 19) (1, 23)
+
+ >>> dump_tokens("async.foo")
+ ENCODING 'utf-8' (0, 0) (0, 0)
+ NAME 'async' (1, 0) (1, 5)
+ OP '.' (1, 5) (1, 6)
+ NAME 'foo' (1, 6) (1, 9)
+
+ >>> dump_tokens("async")
+ ENCODING 'utf-8' (0, 0) (0, 0)
+ NAME 'async' (1, 0) (1, 5)
+
+ >>> dump_tokens("async\\n#comment\\nawait")
+ ENCODING 'utf-8' (0, 0) (0, 0)
+ NAME 'async' (1, 0) (1, 5)
+ NEWLINE '\\n' (1, 5) (1, 6)
+ COMMENT '#comment' (2, 0) (2, 8)
+ NL '\\n' (2, 8) (2, 9)
+ NAME 'await' (3, 0) (3, 5)
+
+ >>> dump_tokens("async\\n...\\nawait")
+ ENCODING 'utf-8' (0, 0) (0, 0)
+ NAME 'async' (1, 0) (1, 5)
+ NEWLINE '\\n' (1, 5) (1, 6)
+ OP '...' (2, 0) (2, 3)
+ NEWLINE '\\n' (2, 3) (2, 4)
+ NAME 'await' (3, 0) (3, 5)
+
+ >>> dump_tokens("async\\nawait")
+ ENCODING 'utf-8' (0, 0) (0, 0)
+ NAME 'async' (1, 0) (1, 5)
+ NEWLINE '\\n' (1, 5) (1, 6)
+ NAME 'await' (2, 0) (2, 5)
+
+ >>> 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 --git a/Lib/test/test_types.py b/Lib/test/test_types.py
index 8cdecb0..c5a35f9 100644
--- a/Lib/test/test_types.py
+++ b/Lib/test/test_types.py
@@ -1,7 +1,8 @@
# Python test set -- part 6, built-in types
from test.support import run_with_locale
-import collections
+import collections.abc
+import inspect
import pickle
import locale
import sys
@@ -1172,5 +1173,37 @@ class SimpleNamespaceTests(unittest.TestCase):
self.assertEqual(ns, ns_roundtrip, pname)
+class CoroutineTests(unittest.TestCase):
+ def test_wrong_args(self):
+ class Foo:
+ def __call__(self):
+ pass
+ def bar(): pass
+
+ samples = [Foo, Foo(), bar, None, int, 1]
+ for sample in samples:
+ with self.assertRaisesRegex(TypeError, 'expects a generator'):
+ types.coroutine(sample)
+
+ def test_genfunc(self):
+ def gen():
+ yield
+
+ self.assertFalse(isinstance(gen(), collections.abc.Coroutine))
+ self.assertFalse(isinstance(gen(), collections.abc.Awaitable))
+
+ self.assertIs(types.coroutine(gen), gen)
+
+ self.assertTrue(gen.__code__.co_flags & inspect.CO_ITERABLE_COROUTINE)
+ self.assertFalse(gen.__code__.co_flags & inspect.CO_COROUTINE)
+
+ g = gen()
+ self.assertTrue(g.gi_code.co_flags & inspect.CO_ITERABLE_COROUTINE)
+ self.assertFalse(g.gi_code.co_flags & inspect.CO_COROUTINE)
+ self.assertTrue(isinstance(g, collections.abc.Coroutine))
+ self.assertTrue(isinstance(g, collections.abc.Awaitable))
+ g.close() # silence warning
+
+
if __name__ == '__main__':
unittest.main()
diff --git a/Lib/token.py b/Lib/token.py
index a95d9b7..5fdb222 100644
--- a/Lib/token.py
+++ b/Lib/token.py
@@ -64,8 +64,10 @@ ATEQUAL = 50
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 --git a/Lib/tokenize.py b/Lib/tokenize.py
index 8bc83fd..d65325e 100644
--- a/Lib/tokenize.py
+++ b/Lib/tokenize.py
@@ -274,7 +274,7 @@ class Untokenizer:
self.encoding = tokval
continue
- if toknum in (NAME, NUMBER):
+ if toknum in (NAME, NUMBER, ASYNC, AWAIT):
tokval += ' '
# Insert a space between two consecutive strings
@@ -477,6 +477,10 @@ def _tokenize(readline, encoding):
contline = None
indents = [0]
+ # 'stashed' and 'ctx' are used for async/await parsing
+ stashed = None
+ ctx = [('sync', 0)]
+
if encoding is not None:
if encoding == "utf-8-sig":
# BOM will already have been stripped.
@@ -552,6 +556,11 @@ def _tokenize(readline, encoding):
"unindent does not match any outer indentation level",
("<tokenize>", 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
@@ -572,10 +581,16 @@ def _tokenize(readline, encoding):
(initial == '.' and token != '.' and token != '...')):
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])
@@ -603,7 +618,37 @@ def _tokenize(readline, encoding):
else: # ordinary string
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]))
+
+ if stashed:
+ yield stashed
+ stashed = None
+
+ yield tok
elif initial == '\\': # continued stmt
continued = 1
else:
@@ -611,12 +656,19 @@ def _tokenize(readline, encoding):
parenlev += 1
elif initial in ')]}':
parenlev -= 1
+ if stashed:
+ yield stashed
+ stashed = None
yield TokenInfo(OP, token, spos, epos, line)
else:
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 --git a/Lib/types.py b/Lib/types.py
index 4fb2def..49e4d04 100644
--- a/Lib/types.py
+++ b/Lib/types.py
@@ -43,6 +43,30 @@ MemberDescriptorType = type(FunctionType.__globals__)
del sys, _f, _g, _C, # Not for export
+_CO_GENERATOR = 0x20
+_CO_ITERABLE_COROUTINE = 0x100
+
+def coroutine(func):
+ """Convert regular generator function to a coroutine."""
+
+ # TODO: Implement this in C.
+
+ if (not isinstance(func, (FunctionType, MethodType)) or
+ not isinstance(getattr(func, '__code__', None), CodeType) or
+ not (func.__code__.co_flags & _CO_GENERATOR)):
+ raise TypeError('coroutine() 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 | _CO_ITERABLE_COROUTINE,
+ 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 --git a/Lib/xml/dom/xmlbuilder.py b/Lib/xml/dom/xmlbuilder.py
index d798624..444f0b2 100644
--- a/Lib/xml/dom/xmlbuilder.py
+++ b/Lib/xml/dom/xmlbuilder.py
@@ -1,6 +1,7 @@
"""Implementation of the DOM Level 3 'LS-Load' feature."""
import copy
+import warnings
import xml.dom
from xml.dom.NodeFilter import NodeFilter
@@ -331,13 +332,33 @@ class DOMBuilderFilter:
del NodeFilter
+class _AsyncDeprecatedProperty:
+ def warn(self, cls):
+ clsname = cls.__name__
+ warnings.warn(
+ "{cls}.async is deprecated; use {cls}.async_".format(cls=clsname),
+ DeprecationWarning)
+
+ def __get__(self, instance, cls):
+ self.warn(cls)
+ if instance is not None:
+ return instance.async_
+ return False
+
+ def __set__(self, instance, value):
+ self.warn(type(instance))
+ setattr(instance, 'async_', value)
+
+
class DocumentLS:
"""Mixin to create documents that conform to the load/save spec."""
- async = False
+ async = _AsyncDeprecatedProperty()
+ async_ = False
def _get_async(self):
return False
+
def _set_async(self, async):
if async:
raise xml.dom.NotSupportedErr(
@@ -363,6 +384,9 @@ class DocumentLS:
return snode.toxml()
+del _AsyncDeprecatedProperty
+
+
class DOMImplementationLS:
MODE_SYNCHRONOUS = 1
MODE_ASYNCHRONOUS = 2
diff --git a/Modules/_testcapimodule.c b/Modules/_testcapimodule.c
index d77d1db..77167b2 100644
--- a/Modules/_testcapimodule.c
+++ b/Modules/_testcapimodule.c
@@ -3944,6 +3944,98 @@ static PyTypeObject matmulType = {
};
+typedef struct {
+ PyObject_HEAD
+ PyObject *ao_iterator;
+} awaitObject;
+
+
+static PyObject *
+awaitObject_new(PyTypeObject *type, PyObject *args, PyObject *kwds)
+{
+ PyObject *v;
+ awaitObject *ao;
+
+ if (!PyArg_UnpackTuple(args, "awaitObject", 1, 1, &v))
+ return NULL;
+
+ ao = (awaitObject *)type->tp_alloc(type, 0);
+ if (ao == NULL) {
+ return NULL;
+ }
+
+ Py_INCREF(v);
+ ao->ao_iterator = v;
+
+ return (PyObject *)ao;
+}
+
+
+static void
+awaitObject_dealloc(awaitObject *ao)
+{
+ Py_CLEAR(ao->ao_iterator);
+ Py_TYPE(ao)->tp_free(ao);
+}
+
+
+static PyObject *
+awaitObject_await(awaitObject *ao)
+{
+ Py_INCREF(ao->ao_iterator);
+ return ao->ao_iterator;
+}
+
+static PyAsyncMethods awaitType_as_async = {
+ (getawaitablefunc)awaitObject_await, /* am_await */
+ 0, /* am_aiter */
+ 0 /* am_anext */
+};
+
+
+static PyTypeObject awaitType = {
+ PyVarObject_HEAD_INIT(NULL, 0)
+ "awaitType",
+ sizeof(awaitObject), /* tp_basicsize */
+ 0, /* tp_itemsize */
+ (destructor)awaitObject_dealloc, /* destructor tp_dealloc */
+ 0, /* tp_print */
+ 0, /* tp_getattr */
+ 0, /* tp_setattr */
+ &awaitType_as_async, /* tp_as_async */
+ 0, /* tp_repr */
+ 0, /* tp_as_number */
+ 0, /* tp_as_sequence */
+ 0, /* tp_as_mapping */
+ 0, /* tp_hash */
+ 0, /* tp_call */
+ 0, /* tp_str */
+ PyObject_GenericGetAttr, /* tp_getattro */
+ PyObject_GenericSetAttr, /* tp_setattro */
+ 0, /* tp_as_buffer */
+ 0, /* tp_flags */
+ "C level type with tp_as_async",
+ 0, /* traverseproc tp_traverse */
+ 0, /* tp_clear */
+ 0, /* tp_richcompare */
+ 0, /* tp_weaklistoffset */
+ 0, /* tp_iter */
+ 0, /* tp_iternext */
+ 0, /* tp_methods */
+ 0, /* tp_members */
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ awaitObject_new, /* tp_new */
+ PyObject_Del, /* tp_free */
+};
+
+
static struct PyModuleDef _testcapimodule = {
PyModuleDef_HEAD_INIT,
"_testcapi",
@@ -3977,6 +4069,11 @@ PyInit__testcapi(void)
Py_INCREF(&matmulType);
PyModule_AddObject(m, "matmulType", (PyObject *)&matmulType);
+ if (PyType_Ready(&awaitType) < 0)
+ return NULL;
+ Py_INCREF(&awaitType);
+ PyModule_AddObject(m, "awaitType", (PyObject *)&awaitType);
+
PyModule_AddObject(m, "CHAR_MAX", PyLong_FromLong(CHAR_MAX));
PyModule_AddObject(m, "CHAR_MIN", PyLong_FromLong(CHAR_MIN));
PyModule_AddObject(m, "UCHAR_MAX", PyLong_FromLong(UCHAR_MAX));
diff --git a/Modules/parsermodule.c b/Modules/parsermodule.c
index 828f46b..876e57d 100644
--- a/Modules/parsermodule.c
+++ b/Modules/parsermodule.c
@@ -1041,6 +1041,8 @@ VALIDATER(testlist_comp); VALIDATER(yield_expr);
VALIDATER(or_test);
VALIDATER(test_nocond); VALIDATER(lambdef_nocond);
VALIDATER(yield_arg);
+VALIDATER(async_funcdef); VALIDATER(async_stmt);
+VALIDATER(atom_expr);
#undef VALIDATER
@@ -1608,6 +1610,7 @@ validate_compound_stmt(node *tree)
|| (ntype == try_stmt)
|| (ntype == with_stmt)
|| (ntype == funcdef)
+ || (ntype == async_stmt)
|| (ntype == classdef)
|| (ntype == decorated))
res = validate_node(tree);
@@ -2440,27 +2443,60 @@ validate_factor(node *tree)
/* power:
*
- * power: atom trailer* ('**' factor)*
+ * power: atom_expr trailer* ['**' factor]
*/
static int
validate_power(node *tree)
{
- int pos = 1;
int nch = NCH(tree);
int res = (validate_ntype(tree, power) && (nch >= 1)
- && validate_atom(CHILD(tree, 0)));
+ && validate_atom_expr(CHILD(tree, 0)));
- while (res && (pos < nch) && (TYPE(CHILD(tree, pos)) == trailer))
- res = validate_trailer(CHILD(tree, pos++));
- if (res && (pos < nch)) {
- if (!is_even(nch - pos)) {
+ if (nch > 1) {
+ if (nch != 3) {
err_string("illegal number of nodes for 'power'");
return (0);
}
- for ( ; res && (pos < (nch - 1)); pos += 2)
- res = (validate_doublestar(CHILD(tree, pos))
- && validate_factor(CHILD(tree, pos + 1)));
+ res = (validate_doublestar(CHILD(tree, 1))
+ && validate_factor(CHILD(tree, 2)));
}
+
+ return (res);
+}
+
+
+/* atom_expr:
+ *
+ * atom_expr: [AWAIT] atom trailer*
+ */
+static int
+validate_atom_expr(node *tree)
+{
+ int start = 0;
+ int nch = NCH(tree);
+ int res;
+ int pos;
+
+ res = validate_ntype(tree, atom_expr) && (nch >= 1);
+ if (!res) {
+ return (res);
+ }
+
+ if (TYPE(CHILD(tree, 0)) == AWAIT) {
+ start = 1;
+ if (nch < 2) {
+ err_string("illegal number of nodes for 'atom_expr'");
+ return (0);
+ }
+ }
+
+ res = validate_atom(CHILD(tree, start));
+ if (res) {
+ pos = start + 1;
+ while (res && (pos < nch) && (TYPE(CHILD(tree, pos)) == trailer))
+ res = validate_trailer(CHILD(tree, pos++));
+ }
+
return (res);
}
@@ -2482,9 +2518,9 @@ validate_atom(node *tree)
if (res && (nch == 3)) {
if (TYPE(CHILD(tree, 1))==yield_expr)
- res = validate_yield_expr(CHILD(tree, 1));
+ res = validate_yield_expr(CHILD(tree, 1));
else
- res = validate_testlist_comp(CHILD(tree, 1));
+ res = validate_testlist_comp(CHILD(tree, 1));
}
break;
case LSQB:
@@ -2658,6 +2694,55 @@ validate_funcdef(node *tree)
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)
@@ -3085,6 +3170,12 @@ validate_node(node *tree)
/*
* 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;
diff --git a/Objects/exceptions.c b/Objects/exceptions.c
index e09d384..d494995 100644
--- a/Objects/exceptions.c
+++ b/Objects/exceptions.c
@@ -473,6 +473,13 @@ SimpleExtendsException(PyExc_Exception, TypeError,
/*
+ * StopAsyncIteration extends Exception
+ */
+SimpleExtendsException(PyExc_Exception, StopAsyncIteration,
+ "Signal the end from iterator.__anext__().");
+
+
+/*
* StopIteration extends Exception
*/
@@ -2468,6 +2475,7 @@ _PyExc_Init(PyObject *bltinmod)
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 @@ _PyExc_Init(PyObject *bltinmod)
POST_INIT(BaseException)
POST_INIT(Exception)
POST_INIT(TypeError)
+ POST_INIT(StopAsyncIteration)
POST_INIT(StopIteration)
POST_INIT(GeneratorExit)
POST_INIT(SystemExit)
diff --git a/Objects/frameobject.c b/Objects/frameobject.c
index 55ee563..172f2cb 100644
--- a/Objects/frameobject.c
+++ b/Objects/frameobject.c
@@ -196,6 +196,7 @@ frame_setlineno(PyFrameObject *f, PyObject* p_new_lineno)
case SETUP_EXCEPT:
case SETUP_FINALLY:
case SETUP_WITH:
+ case SETUP_ASYNC_WITH:
blockstack[blockstack_top++] = addr;
in_finally[blockstack_top-1] = 0;
break;
@@ -203,7 +204,8 @@ frame_setlineno(PyFrameObject *f, PyObject* p_new_lineno)
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 @@ frame_setlineno(PyFrameObject *f, PyObject* p_new_lineno)
* 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--;
}
}
@@ -281,6 +284,7 @@ frame_setlineno(PyFrameObject *f, PyObject* p_new_lineno)
case SETUP_EXCEPT:
case SETUP_FINALLY:
case SETUP_WITH:
+ case SETUP_ASYNC_WITH:
delta_iblock++;
break;
diff --git a/Objects/genobject.c b/Objects/genobject.c
index 82b629c..2a5a0d9 100644
--- a/Objects/genobject.c
+++ b/Objects/genobject.c
@@ -24,6 +24,19 @@ _PyGen_Finalize(PyObject *self)
PyObject *res;
PyObject *error_type, *error_value, *error_traceback;
+ /* If `gen` is a coroutine, and if it was never awaited on,
+ issue a RuntimeWarning. */
+ if (gen->gi_code != NULL
+ && ((PyCodeObject *)gen->gi_code)->co_flags & (CO_COROUTINE
+ | CO_ITERABLE_COROUTINE)
+ && gen->gi_frame != NULL
+ && gen->gi_frame->f_lasti == -1
+ && !PyErr_Occurred()
+ && PyErr_WarnFormat(PyExc_RuntimeWarning, 1,
+ "coroutine '%.50S' was never awaited",
+ gen->gi_qualname))
+ return;
+
if (gen->gi_frame == NULL || gen->gi_frame->f_stacktop == NULL)
/* Generator isn't paused, so no need to close */
return;
@@ -135,7 +148,7 @@ gen_send_ex(PyGenObject *gen, PyObject *arg, int exc)
* a leaking StopIteration into RuntimeError (with its cause
* set appropriately). */
if ((((PyCodeObject *)gen->gi_code)->co_flags &
- CO_FUTURE_GENERATOR_STOP)
+ (CO_FUTURE_GENERATOR_STOP | CO_COROUTINE | CO_ITERABLE_COROUTINE))
&& PyErr_ExceptionMatches(PyExc_StopIteration))
{
PyObject *exc, *val, *val2, *tb;
@@ -402,6 +415,12 @@ failed_throw:
static PyObject *
gen_iternext(PyGenObject *gen)
{
+ if (((PyCodeObject*)gen->gi_code)->co_flags & CO_COROUTINE) {
+ PyErr_SetString(PyExc_TypeError,
+ "coroutine-objects do not support iteration");
+ return NULL;
+ }
+
return gen_send_ex(gen, NULL, 0);
}
@@ -459,8 +478,14 @@ _PyGen_FetchStopIterationValue(PyObject **pvalue) {
static PyObject *
gen_repr(PyGenObject *gen)
{
- return PyUnicode_FromFormat("<generator object %S at %p>",
- gen->gi_qualname, gen);
+ if (PyGen_CheckCoroutineExact(gen)) {
+ return PyUnicode_FromFormat("<coroutine object %S at %p>",
+ gen->gi_qualname, gen);
+ }
+ else {
+ return PyUnicode_FromFormat("<generator object %S at %p>",
+ gen->gi_qualname, gen);
+ }
}
static PyObject *
@@ -496,6 +521,19 @@ gen_get_qualname(PyGenObject *op)
return op->gi_qualname;
}
+static PyObject *
+gen_get_iter(PyGenObject *gen)
+{
+ if (((PyCodeObject*)gen->gi_code)->co_flags & CO_COROUTINE) {
+ PyErr_SetString(PyExc_TypeError,
+ "coroutine-objects do not support iteration");
+ return NULL;
+ }
+
+ Py_INCREF(gen);
+ return gen;
+}
+
static int
gen_set_qualname(PyGenObject *op, PyObject *value)
{
@@ -547,7 +585,7 @@ PyTypeObject PyGen_Type = {
0, /* tp_print */
0, /* tp_getattr */
0, /* tp_setattr */
- 0, /* tp_reserved */
+ 0, /* tp_as_async */
(reprfunc)gen_repr, /* tp_repr */
0, /* tp_as_number */
0, /* tp_as_sequence */
@@ -565,7 +603,7 @@ PyTypeObject PyGen_Type = {
0, /* tp_clear */
0, /* tp_richcompare */
offsetof(PyGenObject, gi_weakreflist), /* tp_weaklistoffset */
- PyObject_SelfIter, /* tp_iter */
+ (getiterfunc)gen_get_iter, /* tp_iter */
(iternextfunc)gen_iternext, /* tp_iternext */
gen_methods, /* tp_methods */
gen_memberlist, /* tp_members */
@@ -642,3 +680,57 @@ PyGen_NeedsFinalizing(PyGenObject *gen)
/* No blocks except loops, it's safe to skip finalization. */
return 0;
}
+
+/*
+ * This helper function returns an awaitable for `o`:
+ * - `o` if `o` is a coroutine-object;
+ * - `type(o)->tp_as_async->am_await(o)`
+ *
+ * Raises a TypeError if it's not possible to return
+ * an awaitable and returns NULL.
+ */
+PyObject *
+_PyGen_GetAwaitableIter(PyObject *o)
+{
+ getawaitablefunc getter = NULL;
+ PyTypeObject *ot;
+
+ if (PyGen_CheckCoroutineExact(o)) {
+ /* Fast path. It's a central function for 'await'. */
+ Py_INCREF(o);
+ return o;
+ }
+
+ ot = Py_TYPE(o);
+ if (ot->tp_as_async != NULL) {
+ getter = ot->tp_as_async->am_await;
+ }
+ if (getter != NULL) {
+ PyObject *res = (*getter)(o);
+ if (res != NULL) {
+ if (!PyIter_Check(res)) {
+ PyErr_Format(PyExc_TypeError,
+ "__await__() returned non-iterator "
+ "of type '%.100s'",
+ Py_TYPE(res)->tp_name);
+ Py_CLEAR(res);
+ }
+ else {
+ if (PyGen_CheckCoroutineExact(res)) {
+ /* __await__ must return an *iterator*, not
+ a coroutine or another awaitable (see PEP 492) */
+ PyErr_SetString(PyExc_TypeError,
+ "__await__() returned a coroutine");
+ Py_CLEAR(res);
+ }
+ }
+ }
+ return res;
+ }
+
+ PyErr_Format(PyExc_TypeError,
+ "object %.100s can't be used in 'await' expression",
+ ot->tp_name);
+
+ return NULL;
+}
diff --git a/Objects/typeobject.c b/Objects/typeobject.c
index 4b99287..9522ac5 100644
--- a/Objects/typeobject.c
+++ b/Objects/typeobject.c
@@ -2506,6 +2506,7 @@ type_new(PyTypeObject *metatype, PyObject *args, PyObject *kwds)
type->tp_flags |= Py_TPFLAGS_HAVE_GC;
/* Initialize essential fields */
+ type->tp_as_async = &et->as_async;
type->tp_as_number = &et->as_number;
type->tp_as_sequence = &et->as_sequence;
type->tp_as_mapping = &et->as_mapping;
@@ -2751,6 +2752,7 @@ PyType_FromSpecWithBases(PyType_Spec *spec, PyObject *bases)
}
/* Initialize essential fields */
+ type->tp_as_async = &res->as_async;
type->tp_as_number = &res->as_number;
type->tp_as_sequence = &res->as_sequence;
type->tp_as_mapping = &res->as_mapping;
@@ -4566,6 +4568,7 @@ inherit_slots(PyTypeObject *type, PyTypeObject *base)
#define COPYSLOT(SLOT) \
if (!type->SLOT && SLOTDEFINED(SLOT)) type->SLOT = base->SLOT
+#define COPYASYNC(SLOT) COPYSLOT(tp_as_async->SLOT)
#define COPYNUM(SLOT) COPYSLOT(tp_as_number->SLOT)
#define COPYSEQ(SLOT) COPYSLOT(tp_as_sequence->SLOT)
#define COPYMAP(SLOT) COPYSLOT(tp_as_mapping->SLOT)
@@ -4615,6 +4618,15 @@ inherit_slots(PyTypeObject *type, PyTypeObject *base)
COPYNUM(nb_inplace_matrix_multiply);
}
+ if (type->tp_as_async != NULL && base->tp_as_async != NULL) {
+ basebase = base->tp_base;
+ if (basebase->tp_as_async == NULL)
+ basebase = NULL;
+ COPYASYNC(am_await);
+ COPYASYNC(am_aiter);
+ COPYASYNC(am_anext);
+ }
+
if (type->tp_as_sequence != NULL && base->tp_as_sequence != NULL) {
basebase = base->tp_base;
if (basebase->tp_as_sequence == NULL)
@@ -4884,6 +4896,8 @@ PyType_Ready(PyTypeObject *type)
/* Some more special stuff */
base = type->tp_base;
if (base != NULL) {
+ if (type->tp_as_async == NULL)
+ type->tp_as_async = base->tp_as_async;
if (type->tp_as_number == NULL)
type->tp_as_number = base->tp_as_number;
if (type->tp_as_sequence == NULL)
@@ -4904,16 +4918,6 @@ PyType_Ready(PyTypeObject *type)
goto error;
}
- /* Warn for a type that implements tp_compare (now known as
- tp_reserved) but not tp_richcompare. */
- if (type->tp_reserved && !type->tp_richcompare) {
- PyErr_Format(PyExc_TypeError,
- "Type %.100s defines tp_reserved (formerly tp_compare) "
- "but not tp_richcompare. Comparisons may not behave as intended.",
- type->tp_name);
- goto error;
- }
-
/* All done -- set the ready flag */
assert(type->tp_dict != NULL);
type->tp_flags =
@@ -6265,6 +6269,59 @@ slot_tp_finalize(PyObject *self)
PyErr_Restore(error_type, error_value, error_traceback);
}
+static PyObject *
+slot_am_await(PyObject *self)
+{
+ PyObject *func, *res;
+ _Py_IDENTIFIER(__await__);
+
+ func = lookup_method(self, &PyId___await__);
+ if (func != NULL) {
+ res = PyEval_CallObject(func, NULL);
+ Py_DECREF(func);
+ return res;
+ }
+ PyErr_Format(PyExc_AttributeError,
+ "object %.50s does not have __await__ method",
+ Py_TYPE(self)->tp_name);
+ return NULL;
+}
+
+static PyObject *
+slot_am_aiter(PyObject *self)
+{
+ PyObject *func, *res;
+ _Py_IDENTIFIER(__aiter__);
+
+ func = lookup_method(self, &PyId___aiter__);
+ if (func != NULL) {
+ res = PyEval_CallObject(func, NULL);
+ Py_DECREF(func);
+ return res;
+ }
+ PyErr_Format(PyExc_AttributeError,
+ "object %.50s does not have __aiter__ method",
+ Py_TYPE(self)->tp_name);
+ return NULL;
+}
+
+static PyObject *
+slot_am_anext(PyObject *self)
+{
+ PyObject *func, *res;
+ _Py_IDENTIFIER(__anext__);
+
+ func = lookup_method(self, &PyId___anext__);
+ if (func != NULL) {
+ res = PyEval_CallObject(func, NULL);
+ Py_DECREF(func);
+ return res;
+ }
+ PyErr_Format(PyExc_AttributeError,
+ "object %.50s does not have __anext__ method",
+ Py_TYPE(self)->tp_name);
+ return NULL;
+}
/*
Table mapping __foo__ names to tp_foo offsets and slot_tp_foo wrapper functions.
@@ -6281,6 +6338,7 @@ typedef struct wrapperbase slotdef;
#undef TPSLOT
#undef FLSLOT
+#undef AMSLOT
#undef ETSLOT
#undef SQSLOT
#undef MPSLOT
@@ -6299,6 +6357,8 @@ typedef struct wrapperbase slotdef;
#define ETSLOT(NAME, SLOT, FUNCTION, WRAPPER, DOC) \
{NAME, offsetof(PyHeapTypeObject, SLOT), (void *)(FUNCTION), WRAPPER, \
PyDoc_STR(DOC)}
+#define AMSLOT(NAME, SLOT, FUNCTION, WRAPPER, DOC) \
+ ETSLOT(NAME, as_async.SLOT, FUNCTION, WRAPPER, DOC)
#define SQSLOT(NAME, SLOT, FUNCTION, WRAPPER, DOC) \
ETSLOT(NAME, as_sequence.SLOT, FUNCTION, WRAPPER, DOC)
#define MPSLOT(NAME, SLOT, FUNCTION, WRAPPER, DOC) \
@@ -6378,6 +6438,13 @@ static slotdef slotdefs[] = {
"Create and return new object. See help(type) for accurate signature."),
TPSLOT("__del__", tp_finalize, slot_tp_finalize, (wrapperfunc)wrap_del, ""),
+ AMSLOT("__await__", am_await, slot_am_await, wrap_unaryfunc,
+ "__await__($self, /)\n--\n\nReturn an iterator to be used in await expression."),
+ AMSLOT("__aiter__", am_aiter, slot_am_aiter, wrap_unaryfunc,
+ "__aiter__($self, /)\n--\n\nReturn an awaitable, that resolves in asynchronous iterator."),
+ AMSLOT("__anext__", am_anext, slot_am_anext, wrap_unaryfunc,
+ "__anext__($self, /)\n--\n\nReturn a value or raise StopAsyncIteration."),
+
BINSLOT("__add__", nb_add, slot_nb_add,
"+"),
RBINSLOT("__radd__", nb_add, slot_nb_add,
@@ -6530,6 +6597,10 @@ slotptr(PyTypeObject *type, int ioffset)
ptr = (char *)type->tp_as_number;
offset -= offsetof(PyHeapTypeObject, as_number);
}
+ else if ((size_t)offset >= offsetof(PyHeapTypeObject, as_async)) {
+ ptr = (char *)type->tp_as_async;
+ offset -= offsetof(PyHeapTypeObject, as_async);
+ }
else {
ptr = (char *)type;
}
diff --git a/Objects/typeslots.inc b/Objects/typeslots.inc
index 2ed99d8..bcbe0af 100644
--- a/Objects/typeslots.inc
+++ b/Objects/typeslots.inc
@@ -75,3 +75,6 @@ offsetof(PyHeapTypeObject, ht_type.tp_getset),
offsetof(PyHeapTypeObject, ht_type.tp_free),
offsetof(PyHeapTypeObject, as_number.nb_matrix_multiply),
offsetof(PyHeapTypeObject, as_number.nb_inplace_matrix_multiply),
+offsetof(PyHeapTypeObject, as_async.am_await),
+offsetof(PyHeapTypeObject, as_async.am_aiter),
+offsetof(PyHeapTypeObject, as_async.am_anext),
diff --git a/Objects/typeslots.py b/Objects/typeslots.py
index b24c7f4..ba37c40 100755
--- a/Objects/typeslots.py
+++ b/Objects/typeslots.py
@@ -12,6 +12,8 @@ for line in sys.stdin:
member = m.group(1)
if member.startswith("tp_"):
member = "ht_type."+member
+ elif member.startswith("am_"):
+ member = "as_async."+member
elif member.startswith("nb_"):
member = "as_number."+member
elif member.startswith("mp_"):
diff --git a/Parser/Python.asdl b/Parser/Python.asdl
index 5476c53..cd0832d 100644
--- a/Parser/Python.asdl
+++ b/Parser/Python.asdl
@@ -10,7 +10,10 @@ module Python
| 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,
@@ -24,9 +27,11 @@ module Python
-- 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)
@@ -57,6 +62,7 @@ module Python
| 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 --git a/Parser/tokenizer.c b/Parser/tokenizer.c
index ac413a8..798758d 100644
--- a/Parser/tokenizer.c
+++ b/Parser/tokenizer.c
@@ -103,6 +103,8 @@ const char *_PyParser_TokenNames[] = {
"ELLIPSIS",
/* This table must match the #defines in token.h! */
"OP",
+ "AWAIT",
+ "ASYNC",
"<ERRORTOKEN>",
"<N_TOKENS>"
};
@@ -124,6 +126,11 @@ tok_new(void)
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;
@@ -1335,6 +1342,11 @@ tok_get(struct tok_state *tok, char **p_start, char **p_end)
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;
@@ -1422,6 +1434,11 @@ tok_get(struct tok_state *tok, char **p_start, char **p_end)
if (tok->pendin != 0) {
if (tok->pendin < 0) {
tok->pendin++;
+
+ while (tok->def && tok->defstack[tok->def] >= tok->indent) {
+ tok->def--;
+ }
+
return DEDENT;
}
else {
@@ -1481,6 +1498,57 @@ tok_get(struct tok_state *tok, char **p_start, char **p_end)
return ERRORTOKEN;
*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(ahead_tok));
+
+ 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 --git a/Parser/tokenizer.h b/Parser/tokenizer.h
index 1ce6eeb..3bcdad6 100644
--- a/Parser/tokenizer.h
+++ b/Parser/tokenizer.h
@@ -65,6 +65,13 @@ struct tok_state {
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: "def name";
+ 2: "async def name") */
+ int def; /* Length of stack of func types */
};
extern struct tok_state *PyTokenizer_FromString(const char *, int);
diff --git a/Python/Python-ast.c b/Python/Python-ast.c
index 6dd175f..8a2dc7c 100644
--- a/Python/Python-ast.c
+++ b/Python/Python-ast.c
@@ -45,6 +45,14 @@ static char *FunctionDef_fields[]={
"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);
@@ -87,6 +95,13 @@ static char *For_fields[]={
"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[]={
@@ -106,6 +121,11 @@ static char *With_fields[]={
"items",
"body",
};
+static PyTypeObject *AsyncWith_type;
+static char *AsyncWith_fields[]={
+ "items",
+ "body",
+};
static PyTypeObject *Raise_type;
_Py_IDENTIFIER(exc);
_Py_IDENTIFIER(cause);
@@ -228,6 +248,10 @@ static char *GeneratorExp_fields[]={
"elt",
"generators",
};
+static PyTypeObject *Await_type;
+static char *Await_fields[]={
+ "value",
+};
static PyTypeObject *Yield_type;
static char *Yield_fields[]={
"value",
@@ -806,6 +830,9 @@ static int init_types(void)
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, 5);
if (!ClassDef_type) return 0;
Return_type = make_type("Return", stmt_type, Return_fields, 1);
@@ -818,12 +845,16 @@ static int init_types(void)
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);
@@ -872,6 +903,8 @@ static int init_types(void)
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);
@@ -1201,6 +1234,36 @@ FunctionDef(identifier name, arguments_ty args, asdl_seq * body, asdl_seq *
}
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, asdl_seq *
body, asdl_seq * decorator_list, int lineno, int col_offset, PyArena
*arena)
@@ -1335,6 +1398,34 @@ For(expr_ty target, expr_ty iter, asdl_seq * body, asdl_seq * orelse, int
}
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)
{
@@ -1395,6 +1486,22 @@ With(asdl_seq * items, asdl_seq * body, int lineno, int col_offset, PyArena
}
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;
@@ -1822,6 +1929,25 @@ GeneratorExp(expr_ty elt, asdl_seq * generators, int lineno, int col_offset,
}
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;
@@ -2409,6 +2535,36 @@ ast2obj_stmt(void* _o)
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;
@@ -2513,6 +2669,30 @@ ast2obj_stmt(void* _o)
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;
@@ -2565,6 +2745,20 @@ ast2obj_stmt(void* _o)
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;
@@ -2878,6 +3072,15 @@ ast2obj_expr(void* _o)
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;
@@ -3832,6 +4035,102 @@ obj2ast_stmt(PyObject* obj, stmt_ty* out, PyArena* arena)
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;
@@ -4188,6 +4487,90 @@ obj2ast_stmt(PyObject* obj, stmt_ty* out, PyArena* arena)
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;
@@ -4392,6 +4775,66 @@ obj2ast_stmt(PyObject* obj, stmt_ty* out, PyArena* arena)
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;
@@ -5326,6 +5769,28 @@ obj2ast_expr(PyObject* obj, expr_ty* out, PyArena* arena)
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;
@@ -6782,6 +7247,8 @@ PyInit__ast(void)
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
@@ -6793,10 +7260,14 @@ PyInit__ast(void)
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;
@@ -6837,6 +7308,8 @@ PyInit__ast(void)
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 --git a/Python/ast.c b/Python/ast.c
index 69454fe..bb28437 100644
--- a/Python/ast.c
+++ b/Python/ast.c
@@ -219,6 +219,8 @@ validate_expr(expr_ty exp, expr_context_ty ctx)
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.Await.value, Load);
case Compare_kind:
if (!asdl_seq_LEN(exp->v.Compare.comparators)) {
PyErr_SetString(PyExc_ValueError, "Compare with no comparators");
@@ -336,6 +338,11 @@ validate_stmt(stmt_ty stmt)
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") &&
@@ -354,6 +361,16 @@ validate_stmt(stmt_ty stmt)
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) &&
@@ -405,6 +422,12 @@ validate_stmt(stmt_ty stmt)
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:
@@ -503,6 +526,9 @@ static asdl_seq *ast_for_exprlist(struct compiling *, const node *,
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);
@@ -941,6 +967,9 @@ set_context(struct compiling *c, expr_ty e, expr_context_ty ctx, const node *n)
case YieldFrom_kind:
expr_name = "yield expression";
break;
+ case Await_kind:
+ expr_name = "await expression";
+ break;
case ListComp_kind:
expr_name = "list comprehension";
break;
@@ -1480,7 +1509,8 @@ ast_for_decorators(struct compiling *c, const node *n)
}
static stmt_ty
-ast_for_funcdef(struct compiling *c, const node *n, asdl_seq *decorator_seq)
+ast_for_funcdef_impl(struct compiling *c, const node *n,
+ asdl_seq *decorator_seq, int is_async)
{
/* funcdef: 'def' NAME parameters ['->' test] ':' suite */
identifier name;
@@ -1509,14 +1539,68 @@ ast_for_funcdef(struct compiling *c, const node *n, asdl_seq *decorator_seq)
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_impl(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_impl(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_impl(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;
@@ -1527,12 +1611,15 @@ ast_for_decorated(struct compiling *c, const node *n)
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 */
@@ -2271,19 +2358,29 @@ ast_for_factor(struct compiling *c, const node *n)
}
static expr_ty
-ast_for_power(struct compiling *c, const node *n)
+ast_for_atom_expr(struct compiling *c, const node *n)
{
- /* power: atom trailer* ('**' factor)*
- */
- int i;
+ int i, nch, start = 0;
expr_ty e, tmp;
- REQ(n, power);
- e = ast_for_atom(c, CHILD(n, 0));
+
+ REQ(n, atom_expr);
+ nch = NCH(n);
+
+ if (TYPE(CHILD(n, 0)) == AWAIT) {
+ start = 1;
+ assert(nch > 1);
+ }
+
+ e = ast_for_atom(c, CHILD(n, start));
if (!e)
return NULL;
- if (NCH(n) == 1)
+ if (nch == 1)
return e;
- for (i = 1; i < NCH(n); i++) {
+ if (start && nch == 2) {
+ return Await(e, LINENO(n), n->n_col_offset, c->c_arena);
+ }
+
+ for (i = start + 1; i < nch; i++) {
node *ch = CHILD(n, i);
if (TYPE(ch) != trailer)
break;
@@ -2294,6 +2391,28 @@ ast_for_power(struct compiling *c, const node *n)
tmp->col_offset = e->col_offset;
e = tmp;
}
+
+ if (start) {
+ /* there was an AWAIT */
+ return Await(e, LINENO(n), n->n_col_offset, c->c_arena);
+ }
+ else {
+ return e;
+ }
+}
+
+static expr_ty
+ast_for_power(struct compiling *c, const node *n)
+{
+ /* power: atom trailer* ('**' factor)*
+ */
+ expr_ty e;
+ REQ(n, power);
+ e = ast_for_atom_expr(c, CHILD(n, 0));
+ if (!e)
+ return NULL;
+ if (NCH(n) == 1)
+ return e;
if (TYPE(CHILD(n, NCH(n) - 1)) == factor) {
expr_ty f = ast_for_expr(c, CHILD(n, NCH(n) - 1));
if (!f)
@@ -2338,7 +2457,9 @@ ast_for_expr(struct compiling *c, const node *n)
arith_expr: term (('+'|'-') term)*
term: factor (('*'|'@'|'/'|'%'|'//') factor)*
factor: ('+'|'-'|'~') factor | power
- power: atom trailer* ('**' factor)*
+ power: atom_expr ['**' factor]
+ atom_expr: [AWAIT] atom trailer*
+ yield_expr: 'yield' [yield_arg]
*/
asdl_seq *seq;
@@ -3403,7 +3524,7 @@ ast_for_while_stmt(struct compiling *c, const node *n)
}
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;
@@ -3437,8 +3558,14 @@ ast_for_for_stmt(struct compiling *c, const node *n)
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
@@ -3585,7 +3712,7 @@ ast_for_with_item(struct compiling *c, const node *n)
/* 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;
@@ -3607,7 +3734,10 @@ ast_for_with_stmt(struct compiling *c, const node *n)
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
@@ -3714,7 +3844,7 @@ ast_for_stmt(struct compiling *c, const node *n)
}
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);
@@ -3724,17 +3854,19 @@ ast_for_stmt(struct compiling *c, const node *n)
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 --git a/Python/ceval.c b/Python/ceval.c
index 5ee9077..8acd082 100644
--- a/Python/ceval.c
+++ b/Python/ceval.c
@@ -1926,11 +1926,133 @@ PyEval_EvalFrameEx(PyFrameObject *f, int throwflag)
goto fast_block_end;
}
+ TARGET(GET_AITER) {
+ getaiterfunc getter = NULL;
+ PyObject *iter = NULL;
+ PyObject *awaitable = NULL;
+ PyObject *obj = TOP();
+ PyTypeObject *type = Py_TYPE(obj);
+
+ if (type->tp_as_async != NULL)
+ getter = type->tp_as_async->am_aiter;
+
+ if (getter != NULL) {
+ iter = (*getter)(obj);
+ Py_DECREF(obj);
+ if (iter == NULL) {
+ SET_TOP(NULL);
+ goto error;
+ }
+ }
+ else {
+ SET_TOP(NULL);
+ PyErr_Format(
+ PyExc_TypeError,
+ "'async for' requires an object with "
+ "__aiter__ method, got %.100s",
+ type->tp_name);
+ Py_DECREF(obj);
+ goto error;
+ }
+
+ awaitable = _PyGen_GetAwaitableIter(iter);
+ if (awaitable == NULL) {
+ SET_TOP(NULL);
+ PyErr_Format(
+ PyExc_TypeError,
+ "'async for' received an invalid object "
+ "from __aiter__: %.100s",
+ Py_TYPE(iter)->tp_name);
+
+ Py_DECREF(iter);
+ goto error;
+ } else
+ Py_DECREF(iter);
+
+ SET_TOP(awaitable);
+ DISPATCH();
+ }
+
+ TARGET(GET_ANEXT) {
+ aiternextfunc getter = NULL;
+ PyObject *next_iter = NULL;
+ PyObject *awaitable = NULL;
+ PyObject *aiter = TOP();
+ PyTypeObject *type = Py_TYPE(aiter);
+
+ if (type->tp_as_async != NULL)
+ getter = type->tp_as_async->am_anext;
+
+ if (getter != NULL) {
+ next_iter = (*getter)(aiter);
+ if (next_iter == NULL) {
+ goto error;
+ }
+ }
+ else {
+ PyErr_Format(
+ PyExc_TypeError,
+ "'async for' requires an iterator with "
+ "__anext__ method, got %.100s",
+ type->tp_name);
+ goto error;
+ }
+
+ awaitable = _PyGen_GetAwaitableIter(next_iter);
+ if (awaitable == NULL) {
+ PyErr_Format(
+ PyExc_TypeError,
+ "'async for' received an invalid object "
+ "from __anext__: %.100s",
+ Py_TYPE(next_iter)->tp_name);
+
+ Py_DECREF(next_iter);
+ goto error;
+ } else
+ Py_DECREF(next_iter);
+
+ PUSH(awaitable);
+ DISPATCH();
+ }
+
+ TARGET(GET_AWAITABLE) {
+ PyObject *iterable = TOP();
+ PyObject *iter = _PyGen_GetAwaitableIter(iterable);
+
+ Py_DECREF(iterable);
+
+ SET_TOP(iter); /* Even if it's NULL */
+
+ if (iter == NULL) {
+ goto error;
+ }
+
+ DISPATCH();
+ }
+
TARGET(YIELD_FROM) {
PyObject *v = POP();
PyObject *reciever = TOP();
int err;
if (PyGen_CheckExact(reciever)) {
+ if (
+ (((PyCodeObject*) \
+ ((PyGenObject*)reciever)->gi_code)->co_flags &
+ CO_COROUTINE)
+ && !(co->co_flags & (CO_COROUTINE | CO_ITERABLE_COROUTINE)))
+ {
+ /* If we're yielding-from a coroutine object from a regular
+ generator object - raise an error. */
+
+ Py_CLEAR(v);
+ Py_CLEAR(reciever);
+ SET_TOP(NULL);
+
+ PyErr_SetString(PyExc_TypeError,
+ "cannot 'yield from' a coroutine object "
+ "from a generator");
+ goto error;
+ }
retval = _PyGen_Send((PyGenObject *)reciever, v);
} else {
_Py_IDENTIFIER(send);
@@ -2822,11 +2944,26 @@ PyEval_EvalFrameEx(PyFrameObject *f, int throwflag)
TARGET(GET_ITER) {
/* before: [obj]; after [getiter(obj)] */
PyObject *iterable = TOP();
- PyObject *iter = PyObject_GetIter(iterable);
- Py_DECREF(iterable);
- SET_TOP(iter);
- if (iter == NULL)
- goto error;
+ PyObject *iter;
+ /* If we have a generator object on top -- keep it there,
+ it's already an iterator.
+
+ This is needed to allow use of 'async def' coroutines
+ in 'yield from' expression from generator-based coroutines
+ (decorated with types.coroutine()).
+
+ 'yield from' is compiled to GET_ITER..YIELD_FROM combination,
+ but since coroutines raise TypeError in their 'tp_iter' we
+ need a way for them to "pass through" the GET_ITER.
+ */
+ if (!PyGen_CheckExact(iterable)) {
+ /* `iterable` is not a generator. */
+ iter = PyObject_GetIter(iterable);
+ Py_DECREF(iterable);
+ SET_TOP(iter);
+ if (iter == NULL)
+ goto error;
+ }
PREDICT(FOR_ITER);
DISPATCH();
}
@@ -2883,6 +3020,39 @@ PyEval_EvalFrameEx(PyFrameObject *f, int throwflag)
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__);
@@ -2909,7 +3079,7 @@ PyEval_EvalFrameEx(PyFrameObject *f, int throwflag)
DISPATCH();
}
- TARGET(WITH_CLEANUP) {
+ TARGET(WITH_CLEANUP_START) {
/* At the top of the stack are 1-6 values indicating
how/why we entered the finally clause:
- TOP = None
@@ -2937,7 +3107,6 @@ PyEval_EvalFrameEx(PyFrameObject *f, int throwflag)
PyObject *exit_func;
PyObject *exc = TOP(), *val = Py_None, *tb = Py_None, *res;
- int err;
if (exc == Py_None) {
(void)POP();
exit_func = TOP();
@@ -2987,10 +3156,23 @@ PyEval_EvalFrameEx(PyFrameObject *f, int throwflag)
if (res == NULL)
goto error;
+ PUSH(exc);
+ PUSH(res);
+ PREDICT(WITH_CLEANUP_FINISH);
+ DISPATCH();
+ }
+
+ PREDICTED(WITH_CLEANUP_FINISH);
+ TARGET(WITH_CLEANUP_FINISH) {
+ 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)
@@ -3751,6 +3933,9 @@ _PyEval_EvalCodeWithName(PyObject *_co, PyObject *globals, PyObject *locals,
}
if (co->co_flags & CO_GENERATOR) {
+ PyObject *gen;
+ PyObject *coroutine_wrapper;
+
/* Don't need to keep the reference to f_back, it will be set
* when the generator is resumed. */
Py_CLEAR(f->f_back);
@@ -3759,7 +3944,19 @@ _PyEval_EvalCodeWithName(PyObject *_co, PyObject *globals, PyObject *locals,
/* 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 (co->co_flags & (CO_COROUTINE | CO_ITERABLE_COROUTINE)) {
+ coroutine_wrapper = PyEval_GetCoroutineWrapper();
+ if (coroutine_wrapper != NULL) {
+ PyObject *wrapped =
+ PyObject_CallFunction(coroutine_wrapper, "N", gen);
+ gen = wrapped;
+ }
+ }
+ return gen;
}
retval = PyEval_EvalFrameEx(f,0);
@@ -4205,6 +4402,24 @@ PyEval_SetTrace(Py_tracefunc func, PyObject *arg)
|| (tstate->c_profilefunc != NULL));
}
+void
+PyEval_SetCoroutineWrapper(PyObject *wrapper)
+{
+ PyThreadState *tstate = PyThreadState_GET();
+
+ Py_CLEAR(tstate->coroutine_wrapper);
+
+ Py_XINCREF(wrapper);
+ tstate->coroutine_wrapper = wrapper;
+}
+
+PyObject *
+PyEval_GetCoroutineWrapper()
+{
+ PyThreadState *tstate = PyThreadState_GET();
+ return tstate->coroutine_wrapper;
+}
+
PyObject *
PyEval_GetBuiltins(void)
{
diff --git a/Python/compile.c b/Python/compile.c
index efd4807..7820f39 100644
--- a/Python/compile.c
+++ b/Python/compile.c
@@ -92,6 +92,7 @@ enum {
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 inplace_binop(struct compiler *, operator_ty);
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);
@@ -673,7 +676,9 @@ compiler_set_qualname(struct compiler *c)
parent = (struct compiler_unit *)PyCapsule_GetPointer(capsule, CAPSULE_NAME);
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)
@@ -687,6 +692,7 @@ compiler_set_qualname(struct compiler *c)
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,7 +933,9 @@ PyCompile_OpcodeStackEffect(int opcode, int oparg)
return 0;
case SETUP_WITH:
return 7;
- case WITH_CLEANUP:
+ case WITH_CLEANUP_START:
+ return 1;
+ case WITH_CLEANUP_FINISH:
return -1; /* XXX Sometimes more */
case RETURN_VALUE:
return -1;
@@ -1048,6 +1056,16 @@ PyCompile_OpcodeStackEffect(int opcode, int oparg)
return -1;
case DELETE_DEREF:
return 0;
+ case GET_AWAITABLE:
+ return 0;
+ case SETUP_ASYNC_WITH:
+ return 6;
+ case BEFORE_ASYNC_WITH:
+ return 1;
+ case GET_AITER:
+ return 0;
+ case GET_ANEXT:
+ return 1;
default:
return PY_INVALID_STACK_EFFECT;
}
@@ -1642,19 +1660,43 @@ error:
}
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;
+ 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;
- assert(s->kind == FunctionDef_kind);
+ scope_type = COMPILER_SCOPE_FUNCTION;
+ }
if (!compiler_decorators(c, decos))
return 0;
@@ -1672,12 +1714,12 @@ compiler_function(struct compiler *c, stmt_ty s)
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;
@@ -1688,10 +1730,10 @@ compiler_function(struct compiler *c, stmt_ty s)
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);
@@ -1711,12 +1753,19 @@ compiler_function(struct compiler *c, stmt_ty s)
Py_DECREF(qualname);
Py_DECREF(co);
+ if (is_async) {
+ co->co_flags |= CO_COROUTINE;
+ /* 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
@@ -1989,6 +2038,92 @@ compiler_for(struct compiler *c, stmt_ty s)
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, GET_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, GET_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); /* for SETUP_EXCEPT */
+ ADDOP(c, POP_BLOCK); /* for SETUP_LOOP */
+ 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); /* for SETUP_LOOP */
+ 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)
{
@@ -2515,7 +2650,7 @@ compiler_visit_stmt(struct compiler *c, stmt_ty s)
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:
@@ -2594,7 +2729,14 @@ compiler_visit_stmt(struct compiler *c, stmt_ty s)
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;
}
@@ -3471,6 +3613,102 @@ expr_constant(struct compiler *c, expr_ty e)
}
}
+
+/*
+ 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_AWAITABLE);
+ 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_START);
+
+ ADDOP(c, GET_AWAITABLE);
+ ADDOP_O(c, LOAD_CONST, Py_None, consts);
+ ADDOP(c, YIELD_FROM);
+
+ ADDOP(c, WITH_CLEANUP_FINISH);
+
+ /* Finally block ends. */
+ ADDOP(c, END_FINALLY);
+ compiler_pop_fblock(c, FINALLY_END, finally);
+ return 1;
+}
+
+
/*
Implements the with statement from PEP 343.
@@ -3544,7 +3782,8 @@ compiler_with(struct compiler *c, stmt_ty s, int pos)
/* 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_START);
+ ADDOP(c, WITH_CLEANUP_FINISH);
/* Finally block ends. */
ADDOP(c, END_FINALLY);
@@ -3595,6 +3834,8 @@ compiler_visit_expr(struct compiler *c, expr_ty e)
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);
}
@@ -3606,11 +3847,28 @@ compiler_visit_expr(struct compiler *c, expr_ty e)
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_AWAITABLE);
+ 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 --git a/Python/graminit.c b/Python/graminit.c
index 1028ffa..8b236a4 100644
--- a/Python/graminit.c
+++ b/Python/graminit.c
@@ -92,393 +92,406 @@ static state states_4[2] = {
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},
+ {0, 2},
};
-static arc arcs_6_3[2] = {
- {23, 4},
- {25, 5},
+static state states_6[3] = {
+ {1, arcs_6_0},
+ {1, arcs_6_1},
+ {1, arcs_6_2},
};
-static arc arcs_6_4[1] = {
- {24, 6},
+static arc arcs_7_0[1] = {
+ {22, 1},
};
-static arc arcs_6_5[1] = {
- {26, 7},
+static arc arcs_7_1[1] = {
+ {23, 2},
};
-static arc arcs_6_6[1] = {
- {25, 5},
+static arc arcs_7_2[1] = {
+ {24, 3},
};
-static arc arcs_6_7[1] = {
+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_6[8] = {
- {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 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_7_0[1] = {
+static arc arcs_8_0[1] = {
{13, 1},
};
-static arc arcs_7_1[2] = {
- {27, 2},
+static arc arcs_8_1[2] = {
+ {29, 2},
{15, 3},
};
-static arc arcs_7_2[1] = {
+static arc arcs_8_2[1] = {
{15, 3},
};
-static arc arcs_7_3[1] = {
+static arc arcs_8_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 state states_8[4] = {
+ {1, arcs_8_0},
+ {2, arcs_8_1},
+ {1, arcs_8_2},
+ {1, arcs_8_3},
};
-static arc arcs_8_0[3] = {
- {28, 1},
- {31, 2},
- {32, 3},
+static arc arcs_9_0[3] = {
+ {30, 1},
+ {33, 2},
+ {34, 3},
};
-static arc arcs_8_1[3] = {
- {29, 4},
- {30, 5},
+static arc arcs_9_1[3] = {
+ {31, 4},
+ {32, 5},
{0, 1},
};
-static arc arcs_8_2[3] = {
- {28, 6},
- {30, 7},
+static arc arcs_9_2[3] = {
+ {30, 6},
+ {32, 7},
{0, 2},
};
-static arc arcs_8_3[1] = {
- {28, 8},
+static arc arcs_9_3[1] = {
+ {30, 8},
};
-static arc arcs_8_4[1] = {
- {24, 9},
+static arc arcs_9_4[1] = {
+ {26, 9},
};
-static arc arcs_8_5[4] = {
- {28, 10},
- {31, 11},
- {32, 3},
+static arc arcs_9_5[4] = {
+ {30, 10},
+ {33, 11},
+ {34, 3},
{0, 5},
};
-static arc arcs_8_6[2] = {
- {30, 7},
+static arc arcs_9_6[2] = {
+ {32, 7},
{0, 6},
};
-static arc arcs_8_7[2] = {
- {28, 12},
- {32, 3},
+static arc arcs_9_7[2] = {
+ {30, 12},
+ {34, 3},
};
-static arc arcs_8_8[1] = {
+static arc arcs_9_8[1] = {
{0, 8},
};
-static arc arcs_8_9[2] = {
- {30, 5},
+static arc arcs_9_9[2] = {
+ {32, 5},
{0, 9},
};
-static arc arcs_8_10[3] = {
- {30, 5},
- {29, 4},
+static arc arcs_9_10[3] = {
+ {32, 5},
+ {31, 4},
{0, 10},
};
-static arc arcs_8_11[3] = {
- {28, 13},
- {30, 14},
+static arc arcs_9_11[3] = {
+ {30, 13},
+ {32, 14},
{0, 11},
};
-static arc arcs_8_12[3] = {
- {30, 7},
- {29, 15},
+static arc arcs_9_12[3] = {
+ {32, 7},
+ {31, 15},
{0, 12},
};
-static arc arcs_8_13[2] = {
- {30, 14},
+static arc arcs_9_13[2] = {
+ {32, 14},
{0, 13},
};
-static arc arcs_8_14[2] = {
- {28, 16},
- {32, 3},
+static arc arcs_9_14[2] = {
+ {30, 16},
+ {34, 3},
};
-static arc arcs_8_15[1] = {
- {24, 6},
+static arc arcs_9_15[1] = {
+ {26, 6},
};
-static arc arcs_8_16[3] = {
- {30, 14},
- {29, 17},
+static arc arcs_9_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_17[1] = {
+ {26, 13},
};
-static arc arcs_9_1[2] = {
- {25, 2},
+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},
{0, 1},
};
-static arc arcs_9_2[1] = {
- {24, 3},
+static arc arcs_10_2[1] = {
+ {26, 3},
};
-static arc arcs_9_3[1] = {
+static arc arcs_10_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 state states_10[4] = {
+ {1, arcs_10_0},
+ {2, arcs_10_1},
+ {1, arcs_10_2},
+ {1, arcs_10_3},
};
-static arc arcs_10_0[3] = {
- {34, 1},
- {31, 2},
- {32, 3},
+static arc arcs_11_0[3] = {
+ {36, 1},
+ {33, 2},
+ {34, 3},
};
-static arc arcs_10_1[3] = {
- {29, 4},
- {30, 5},
+static arc arcs_11_1[3] = {
+ {31, 4},
+ {32, 5},
{0, 1},
};
-static arc arcs_10_2[3] = {
- {34, 6},
- {30, 7},
+static arc arcs_11_2[3] = {
+ {36, 6},
+ {32, 7},
{0, 2},
};
-static arc arcs_10_3[1] = {
- {34, 8},
+static arc arcs_11_3[1] = {
+ {36, 8},
};
-static arc arcs_10_4[1] = {
- {24, 9},
+static arc arcs_11_4[1] = {
+ {26, 9},
};
-static arc arcs_10_5[4] = {
- {34, 10},
- {31, 11},
- {32, 3},
+static arc arcs_11_5[4] = {
+ {36, 10},
+ {33, 11},
+ {34, 3},
{0, 5},
};
-static arc arcs_10_6[2] = {
- {30, 7},
+static arc arcs_11_6[2] = {
+ {32, 7},
{0, 6},
};
-static arc arcs_10_7[2] = {
- {34, 12},
- {32, 3},
+static arc arcs_11_7[2] = {
+ {36, 12},
+ {34, 3},
};
-static arc arcs_10_8[1] = {
+static arc arcs_11_8[1] = {
{0, 8},
};
-static arc arcs_10_9[2] = {
- {30, 5},
+static arc arcs_11_9[2] = {
+ {32, 5},
{0, 9},
};
-static arc arcs_10_10[3] = {
- {30, 5},
- {29, 4},
+static arc arcs_11_10[3] = {
+ {32, 5},
+ {31, 4},
{0, 10},
};
-static arc arcs_10_11[3] = {
- {34, 13},
- {30, 14},
+static arc arcs_11_11[3] = {
+ {36, 13},
+ {32, 14},
{0, 11},
};
-static arc arcs_10_12[3] = {
- {30, 7},
- {29, 15},
+static arc arcs_11_12[3] = {
+ {32, 7},
+ {31, 15},
{0, 12},
};
-static arc arcs_10_13[2] = {
- {30, 14},
+static arc arcs_11_13[2] = {
+ {32, 14},
{0, 13},
};
-static arc arcs_10_14[2] = {
- {34, 16},
- {32, 3},
+static arc arcs_11_14[2] = {
+ {36, 16},
+ {34, 3},
};
-static arc arcs_10_15[1] = {
- {24, 6},
+static arc arcs_11_15[1] = {
+ {26, 6},
};
-static arc arcs_10_16[3] = {
- {30, 14},
- {29, 17},
+static arc arcs_11_16[3] = {
+ {32, 14},
+ {31, 17},
{0, 16},
};
-static arc arcs_10_17[1] = {
- {24, 13},
+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 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] = {
+static arc arcs_12_1[1] = {
{0, 1},
};
-static state states_11[2] = {
- {1, arcs_11_0},
- {1, arcs_11_1},
+static state states_12[2] = {
+ {1, arcs_12_0},
+ {1, arcs_12_1},
};
-static arc arcs_12_0[2] = {
+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 state states_13[2] = {
+ {2, arcs_13_0},
+ {1, arcs_13_1},
};
-static arc arcs_13_0[1] = {
- {35, 1},
+static arc arcs_14_0[1] = {
+ {37, 1},
};
-static arc arcs_13_1[2] = {
- {36, 2},
+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 state states_14[4] = {
+ {1, arcs_14_0},
+ {2, arcs_14_1},
+ {2, arcs_14_2},
+ {1, arcs_14_3},
};
-static arc arcs_14_0[8] = {
- {37, 1},
- {38, 1},
+static arc arcs_15_0[8] = {
{39, 1},
{40, 1},
{41, 1},
{42, 1},
{43, 1},
{44, 1},
+ {45, 1},
+ {46, 1},
};
-static arc arcs_14_1[1] = {
+static arc arcs_15_1[1] = {
{0, 1},
};
-static state states_14[2] = {
- {8, arcs_14_0},
- {1, arcs_14_1},
+static state states_15[2] = {
+ {8, arcs_15_0},
+ {1, arcs_15_1},
};
-static arc arcs_15_0[1] = {
- {45, 1},
+static arc arcs_16_0[1] = {
+ {47, 1},
};
-static arc arcs_15_1[3] = {
- {46, 2},
- {29, 3},
+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[2] = {
+ {49, 4},
{9, 4},
};
-static arc arcs_15_3[2] = {
+static arc arcs_16_3[2] = {
+ {49, 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 state states_16[6] = {
+ {1, arcs_16_0},
+ {3, arcs_16_1},
+ {2, arcs_16_2},
+ {2, arcs_16_3},
+ {1, arcs_16_4},
+ {2, arcs_16_5},
};
-static arc arcs_16_0[2] = {
- {24, 1},
- {48, 1},
+static arc arcs_17_0[2] = {
+ {26, 1},
+ {50, 1},
};
-static arc arcs_16_1[2] = {
- {30, 2},
+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},
+ {50, 1},
{0, 2},
};
-static state states_16[3] = {
- {2, arcs_16_0},
- {2, arcs_16_1},
- {3, arcs_16_2},
+static state states_17[3] = {
+ {2, arcs_17_0},
+ {2, arcs_17_1},
+ {3, arcs_17_2},
};
-static arc arcs_17_0[13] = {
- {49, 1},
- {50, 1},
+static arc arcs_18_0[13] = {
{51, 1},
{52, 1},
{53, 1},
@@ -490,64 +503,56 @@ static arc arcs_17_0[13] = {
{59, 1},
{60, 1},
{61, 1},
-};
-static arc arcs_17_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},
+ {63, 1},
};
static arc arcs_18_1[1] = {
- {63, 2},
-};
-static arc arcs_18_2[1] = {
- {0, 2},
+ {0, 1},
};
-static state states_18[3] = {
- {1, arcs_18_0},
+static state states_18[2] = {
+ {13, 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},
+ {65, 2},
+};
+static arc arcs_19_2[1] = {
+ {0, 2},
};
-static state states_19[2] = {
+static state states_19[3] = {
{1, arcs_19_0},
{1, arcs_19_1},
+ {1, arcs_19_2},
};
-static arc arcs_20_0[5] = {
- {65, 1},
+static arc arcs_20_0[1] = {
{66, 1},
- {67, 1},
- {68, 1},
- {69, 1},
};
static arc arcs_20_1[1] = {
{0, 1},
};
static state states_20[2] = {
- {5, arcs_20_0},
+ {1, arcs_20_0},
{1, arcs_20_1},
};
-static arc arcs_21_0[1] = {
+static arc arcs_21_0[5] = {
+ {67, 1},
+ {68, 1},
+ {69, 1},
{70, 1},
+ {71, 1},
};
static arc arcs_21_1[1] = {
{0, 1},
};
static state states_21[2] = {
- {1, arcs_21_0},
+ {5, arcs_21_0},
{1, arcs_21_1},
};
static arc arcs_22_0[1] = {
- {71, 1},
+ {72, 1},
};
static arc arcs_22_1[1] = {
{0, 1},
@@ -557,148 +562,139 @@ static state states_22[2] = {
{1, arcs_22_1},
};
static arc arcs_23_0[1] = {
- {72, 1},
+ {73, 1},
};
-static arc arcs_23_1[2] = {
- {9, 2},
+static arc arcs_23_1[1] = {
{0, 1},
};
-static arc arcs_23_2[1] = {
- {0, 2},
-};
-static state states_23[3] = {
+static state states_23[2] = {
{1, arcs_23_0},
- {2, arcs_23_1},
- {1, arcs_23_2},
+ {1, arcs_23_1},
};
static arc arcs_24_0[1] = {
- {47, 1},
+ {74, 1},
};
-static arc arcs_24_1[1] = {
+static arc arcs_24_1[2] = {
+ {9, 2},
{0, 1},
};
-static state states_24[2] = {
+static arc arcs_24_2[1] = {
+ {0, 2},
+};
+static state states_24[3] = {
{1, arcs_24_0},
- {1, arcs_24_1},
+ {2, arcs_24_1},
+ {1, arcs_24_2},
};
static arc arcs_25_0[1] = {
- {73, 1},
+ {49, 1},
};
-static arc arcs_25_1[2] = {
- {24, 2},
+static arc arcs_25_1[1] = {
{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},
+ {1, arcs_25_1},
};
-static arc arcs_26_0[2] = {
+static arc arcs_26_0[1] = {
{75, 1},
- {76, 1},
};
-static arc arcs_26_1[1] = {
+static arc arcs_26_1[2] = {
+ {26, 2},
{0, 1},
};
-static state states_26[2] = {
- {2, arcs_26_0},
- {1, arcs_26_1},
+static arc arcs_26_2[2] = {
+ {76, 3},
+ {0, 2},
+};
+static arc arcs_26_3[1] = {
+ {26, 4},
+};
+static arc arcs_26_4[1] = {
+ {0, 4},
+};
+static state states_26[5] = {
+ {1, arcs_26_0},
+ {2, arcs_26_1},
+ {2, arcs_26_2},
+ {1, arcs_26_3},
+ {1, arcs_26_4},
};
-static arc arcs_27_0[1] = {
+static arc arcs_27_0[2] = {
{77, 1},
+ {78, 1},
};
static arc arcs_27_1[1] = {
- {78, 2},
-};
-static arc arcs_27_2[1] = {
- {0, 2},
+ {0, 1},
};
-static state states_27[3] = {
- {1, arcs_27_0},
+static state states_27[2] = {
+ {2, arcs_27_0},
{1, arcs_27_1},
- {1, arcs_27_2},
};
static arc arcs_28_0[1] = {
- {74, 1},
+ {79, 1},
};
-static arc arcs_28_1[3] = {
- {79, 2},
+static arc arcs_28_1[1] = {
{80, 2},
+};
+static arc arcs_28_2[1] = {
+ {0, 2},
+};
+static state states_28[3] = {
+ {1, arcs_28_0},
+ {1, arcs_28_1},
+ {1, arcs_28_2},
+};
+static arc arcs_29_0[1] = {
+ {76, 1},
+};
+static arc arcs_29_1[3] = {
+ {81, 2},
+ {82, 2},
{12, 3},
};
-static arc arcs_28_2[4] = {
- {79, 2},
- {80, 2},
+static arc arcs_29_2[4] = {
+ {81, 2},
+ {82, 2},
{12, 3},
- {77, 4},
+ {79, 4},
};
-static arc arcs_28_3[1] = {
- {77, 4},
+static arc arcs_29_3[1] = {
+ {79, 4},
};
-static arc arcs_28_4[3] = {
- {31, 5},
+static arc arcs_29_4[3] = {
+ {33, 5},
{13, 6},
- {81, 5},
+ {83, 5},
};
-static arc arcs_28_5[1] = {
+static arc arcs_29_5[1] = {
{0, 5},
};
-static arc arcs_28_6[1] = {
- {81, 7},
+static arc arcs_29_6[1] = {
+ {83, 7},
};
-static arc arcs_28_7[1] = {
+static arc arcs_29_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},
- {0, 1},
-};
-static arc arcs_29_2[1] = {
- {21, 3},
-};
-static arc arcs_29_3[1] = {
- {0, 3},
-};
-static state states_29[4] = {
+static state states_29[8] = {
{1, arcs_29_0},
- {2, arcs_29_1},
- {1, arcs_29_2},
+ {3, arcs_29_1},
+ {4, arcs_29_2},
{1, arcs_29_3},
+ {3, arcs_29_4},
+ {1, arcs_29_5},
+ {1, arcs_29_6},
+ {1, arcs_29_7},
};
static arc arcs_30_0[1] = {
- {12, 1},
+ {23, 1},
};
static arc arcs_30_1[2] = {
- {83, 2},
+ {85, 2},
{0, 1},
};
static arc arcs_30_2[1] = {
- {21, 3},
+ {23, 3},
};
static arc arcs_30_3[1] = {
{0, 3},
@@ -710,37 +706,45 @@ static state states_30[4] = {
{1, arcs_30_3},
};
static arc arcs_31_0[1] = {
- {82, 1},
+ {12, 1},
};
static arc arcs_31_1[2] = {
- {30, 2},
+ {85, 2},
{0, 1},
};
-static arc arcs_31_2[2] = {
- {82, 1},
- {0, 2},
+static arc arcs_31_2[1] = {
+ {23, 3},
+};
+static arc arcs_31_3[1] = {
+ {0, 3},
};
-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},
};
static arc arcs_32_1[2] = {
- {30, 0},
+ {32, 2},
{0, 1},
};
-static state states_32[2] = {
+static arc arcs_32_2[2] = {
+ {84, 1},
+ {0, 2},
+};
+static state states_32[3] = {
{1, arcs_32_0},
{2, arcs_32_1},
+ {2, arcs_32_2},
};
static arc arcs_33_0[1] = {
- {21, 1},
+ {86, 1},
};
static arc arcs_33_1[2] = {
- {79, 0},
+ {32, 0},
{0, 1},
};
static state states_33[2] = {
@@ -748,28 +752,24 @@ static state states_33[2] = {
{2, arcs_33_1},
};
static arc arcs_34_0[1] = {
- {85, 1},
+ {23, 1},
};
-static arc arcs_34_1[1] = {
- {21, 2},
-};
-static arc arcs_34_2[2] = {
- {30, 1},
- {0, 2},
+static arc arcs_34_1[2] = {
+ {81, 0},
+ {0, 1},
};
-static state states_34[3] = {
+static state states_34[2] = {
{1, arcs_34_0},
- {1, arcs_34_1},
- {2, arcs_34_2},
+ {2, arcs_34_1},
};
static arc arcs_35_0[1] = {
- {86, 1},
+ {87, 1},
};
static arc arcs_35_1[1] = {
- {21, 2},
+ {23, 2},
};
static arc arcs_35_2[2] = {
- {30, 1},
+ {32, 1},
{0, 2},
};
static state states_35[3] = {
@@ -778,432 +778,438 @@ static state states_35[3] = {
{2, arcs_35_2},
};
static arc arcs_36_0[1] = {
- {87, 1},
+ {88, 1},
};
static arc arcs_36_1[1] = {
- {24, 2},
+ {23, 2},
};
static arc arcs_36_2[2] = {
- {30, 3},
+ {32, 1},
{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},
+static arc arcs_37_0[1] = {
{89, 1},
- {90, 1},
- {91, 1},
- {92, 1},
- {19, 1},
- {18, 1},
- {17, 1},
};
static arc arcs_37_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},
+ {26, 2},
};
-static arc arcs_38_2[1] = {
- {25, 3},
+static arc arcs_37_2[2] = {
+ {32, 3},
+ {0, 2},
};
-static arc arcs_38_3[1] = {
+static arc arcs_37_3[1] = {
{26, 4},
};
-static arc arcs_38_4[3] = {
- {94, 1},
- {95, 5},
+static arc arcs_37_4[1] = {
{0, 4},
};
-static arc arcs_38_5[1] = {
- {25, 6},
+static state states_37[5] = {
+ {1, arcs_37_0},
+ {1, arcs_37_1},
+ {2, arcs_37_2},
+ {1, arcs_37_3},
+ {1, arcs_37_4},
};
-static arc arcs_38_6[1] = {
- {26, 7},
+static arc arcs_38_0[9] = {
+ {90, 1},
+ {91, 1},
+ {92, 1},
+ {93, 1},
+ {94, 1},
+ {19, 1},
+ {18, 1},
+ {17, 1},
+ {95, 1},
};
-static arc arcs_38_7[1] = {
- {0, 7},
+static arc arcs_38_1[1] = {
+ {0, 1},
};
-static state states_38[8] = {
- {1, arcs_38_0},
+static state states_38[2] = {
+ {9, 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},
+ {21, 1},
};
-static arc arcs_39_1[1] = {
- {24, 2},
+static arc arcs_39_1[3] = {
+ {19, 2},
+ {94, 2},
+ {92, 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},
+ {0, 2},
};
-static state states_39[8] = {
+static state states_39[3] = {
{1, arcs_39_0},
- {1, arcs_39_1},
+ {3, 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},
+ {96, 1},
};
static arc arcs_40_1[1] = {
- {63, 2},
+ {26, 2},
};
static arc arcs_40_2[1] = {
- {98, 3},
+ {27, 3},
};
static arc arcs_40_3[1] = {
- {9, 4},
+ {28, 4},
};
-static arc arcs_40_4[1] = {
- {25, 5},
+static arc arcs_40_4[3] = {
+ {97, 1},
+ {98, 5},
+ {0, 4},
};
static arc arcs_40_5[1] = {
- {26, 6},
+ {27, 6},
};
-static arc arcs_40_6[2] = {
- {95, 7},
- {0, 6},
+static arc arcs_40_6[1] = {
+ {28, 7},
};
static arc arcs_40_7[1] = {
- {25, 8},
-};
-static arc arcs_40_8[1] = {
- {26, 9},
-};
-static arc arcs_40_9[1] = {
- {0, 9},
+ {0, 7},
};
-static state states_40[10] = {
+static state states_40[8] = {
{1, arcs_40_0},
{1, arcs_40_1},
{1, arcs_40_2},
{1, arcs_40_3},
- {1, arcs_40_4},
+ {3, arcs_40_4},
{1, arcs_40_5},
- {2, arcs_40_6},
+ {1, 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},
+ {26, 2},
};
static arc arcs_41_2[1] = {
- {26, 3},
+ {27, 3},
};
-static arc arcs_41_3[2] = {
- {100, 4},
- {101, 5},
+static arc arcs_41_3[1] = {
+ {28, 4},
};
-static arc arcs_41_4[1] = {
- {25, 6},
+static arc arcs_41_4[2] = {
+ {98, 5},
+ {0, 4},
};
static arc arcs_41_5[1] = {
- {25, 7},
+ {27, 6},
};
static arc arcs_41_6[1] = {
- {26, 8},
+ {28, 7},
};
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},
+ {0, 7},
};
-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},
+ {2, 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},
+ {100, 1},
};
static arc arcs_42_1[1] = {
- {103, 2},
+ {65, 2},
};
-static arc arcs_42_2[2] = {
- {30, 1},
- {25, 3},
+static arc arcs_42_2[1] = {
+ {101, 3},
};
static arc arcs_42_3[1] = {
- {26, 4},
+ {9, 4},
};
static arc arcs_42_4[1] = {
- {0, 4},
+ {27, 5},
};
-static state states_42[5] = {
+static arc arcs_42_5[1] = {
+ {28, 6},
+};
+static arc arcs_42_6[2] = {
+ {98, 7},
+ {0, 6},
+};
+static arc arcs_42_7[1] = {
+ {27, 8},
+};
+static arc arcs_42_8[1] = {
+ {28, 9},
+};
+static arc arcs_42_9[1] = {
+ {0, 9},
+};
+static state states_42[10] = {
{1, arcs_42_0},
{1, arcs_42_1},
- {2, arcs_42_2},
+ {1, arcs_42_2},
{1, arcs_42_3},
{1, arcs_42_4},
+ {1, arcs_42_5},
+ {2, arcs_42_6},
+ {1, arcs_42_7},
+ {1, arcs_42_8},
+ {1, arcs_42_9},
};
static arc arcs_43_0[1] = {
- {24, 1},
+ {102, 1},
};
-static arc arcs_43_1[2] = {
- {83, 2},
- {0, 1},
+static arc arcs_43_1[1] = {
+ {27, 2},
};
static arc arcs_43_2[1] = {
- {104, 3},
+ {28, 3},
};
-static arc arcs_43_3[1] = {
- {0, 3},
+static arc arcs_43_3[2] = {
+ {103, 4},
+ {104, 5},
+};
+static arc arcs_43_4[1] = {
+ {27, 6},
+};
+static arc arcs_43_5[1] = {
+ {27, 7},
+};
+static arc arcs_43_6[1] = {
+ {28, 8},
+};
+static arc arcs_43_7[1] = {
+ {28, 9},
+};
+static arc arcs_43_8[4] = {
+ {103, 4},
+ {98, 10},
+ {104, 5},
+ {0, 8},
+};
+static arc arcs_43_9[1] = {
+ {0, 9},
};
-static state states_43[4] = {
+static arc arcs_43_10[1] = {
+ {27, 11},
+};
+static arc arcs_43_11[1] = {
+ {28, 12},
+};
+static arc arcs_43_12[2] = {
+ {104, 5},
+ {0, 12},
+};
+static state states_43[13] = {
{1, arcs_43_0},
- {2, arcs_43_1},
+ {1, arcs_43_1},
{1, arcs_43_2},
- {1, arcs_43_3},
+ {2, arcs_43_3},
+ {1, arcs_43_4},
+ {1, arcs_43_5},
+ {1, arcs_43_6},
+ {1, arcs_43_7},
+ {4, arcs_43_8},
+ {1, arcs_43_9},
+ {1, arcs_43_10},
+ {1, arcs_43_11},
+ {2, arcs_43_12},
};
static arc arcs_44_0[1] = {
{105, 1},
};
-static arc arcs_44_1[2] = {
- {24, 2},
- {0, 1},
+static arc arcs_44_1[1] = {
+ {106, 2},
};
static arc arcs_44_2[2] = {
- {83, 3},
- {0, 2},
+ {32, 1},
+ {27, 3},
};
static arc arcs_44_3[1] = {
- {21, 4},
+ {28, 4},
};
static arc arcs_44_4[1] = {
{0, 4},
};
static state states_44[5] = {
{1, arcs_44_0},
- {2, arcs_44_1},
+ {1, 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_0[1] = {
+ {26, 1},
};
-static arc arcs_45_1[1] = {
+static arc arcs_45_1[2] = {
+ {85, 2},
{0, 1},
};
static arc arcs_45_2[1] = {
- {106, 3},
+ {107, 3},
};
static arc arcs_45_3[1] = {
- {6, 4},
-};
-static arc arcs_45_4[2] = {
- {6, 4},
- {107, 1},
+ {0, 3},
};
-static state states_45[5] = {
- {2, arcs_45_0},
- {1, arcs_45_1},
+static state states_45[4] = {
+ {1, arcs_45_0},
+ {2, arcs_45_1},
{1, arcs_45_2},
{1, arcs_45_3},
- {2, arcs_45_4},
};
-static arc arcs_46_0[2] = {
+static arc arcs_46_0[1] = {
{108, 1},
- {109, 2},
};
static arc arcs_46_1[2] = {
- {93, 3},
+ {26, 2},
{0, 1},
};
-static arc arcs_46_2[1] = {
+static arc arcs_46_2[2] = {
+ {85, 3},
{0, 2},
};
static arc arcs_46_3[1] = {
- {108, 4},
+ {23, 4},
};
static arc arcs_46_4[1] = {
- {95, 5},
-};
-static arc arcs_46_5[1] = {
- {24, 2},
+ {0, 4},
};
-static state states_46[6] = {
- {2, arcs_46_0},
+static state states_46[5] = {
+ {1, arcs_46_0},
{2, arcs_46_1},
- {1, arcs_46_2},
+ {2, 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},
+ {3, 1},
+ {2, 2},
};
static arc arcs_47_1[1] = {
{0, 1},
};
-static state states_47[2] = {
+static arc arcs_47_2[1] = {
+ {109, 3},
+};
+static arc arcs_47_3[1] = {
+ {6, 4},
+};
+static arc arcs_47_4[2] = {
+ {6, 4},
+ {110, 1},
+};
+static state states_47[5] = {
{2, arcs_47_0},
{1, arcs_47_1},
+ {1, arcs_47_2},
+ {1, arcs_47_3},
+ {2, arcs_47_4},
};
-static arc arcs_48_0[1] = {
- {112, 1},
+static arc arcs_48_0[2] = {
+ {111, 1},
+ {112, 2},
};
static arc arcs_48_1[2] = {
- {33, 2},
- {25, 3},
+ {96, 3},
+ {0, 1},
};
static arc arcs_48_2[1] = {
- {25, 3},
+ {0, 2},
};
static arc arcs_48_3[1] = {
- {24, 4},
+ {111, 4},
};
static arc arcs_48_4[1] = {
- {0, 4},
+ {98, 5},
};
-static state states_48[5] = {
- {1, arcs_48_0},
+static arc arcs_48_5[1] = {
+ {26, 2},
+};
+static state states_48[6] = {
+ {2, arcs_48_0},
{2, arcs_48_1},
{1, arcs_48_2},
{1, arcs_48_3},
{1, arcs_48_4},
+ {1, arcs_48_5},
};
-static arc arcs_49_0[1] = {
- {112, 1},
+static arc arcs_49_0[2] = {
+ {111, 1},
+ {114, 1},
};
-static arc arcs_49_1[2] = {
- {33, 2},
- {25, 3},
+static arc arcs_49_1[1] = {
+ {0, 1},
};
-static arc arcs_49_2[1] = {
- {25, 3},
+static state states_49[2] = {
+ {2, arcs_49_0},
+ {1, arcs_49_1},
};
-static arc arcs_49_3[1] = {
- {110, 4},
+static arc arcs_50_0[1] = {
+ {115, 1},
};
-static arc arcs_49_4[1] = {
- {0, 4},
+static arc arcs_50_1[2] = {
+ {35, 2},
+ {27, 3},
};
-static state states_49[5] = {
- {1, arcs_49_0},
- {2, arcs_49_1},
- {1, arcs_49_2},
- {1, arcs_49_3},
- {1, arcs_49_4},
+static arc arcs_50_2[1] = {
+ {27, 3},
};
-static arc arcs_50_0[1] = {
- {113, 1},
+static arc arcs_50_3[1] = {
+ {26, 4},
};
-static arc arcs_50_1[2] = {
- {114, 0},
- {0, 1},
+static arc arcs_50_4[1] = {
+ {0, 4},
};
-static state states_50[2] = {
+static state states_50[5] = {
{1, arcs_50_0},
{2, arcs_50_1},
+ {1, arcs_50_2},
+ {1, arcs_50_3},
+ {1, arcs_50_4},
};
static arc arcs_51_0[1] = {
{115, 1},
};
static arc arcs_51_1[2] = {
- {116, 0},
- {0, 1},
+ {35, 2},
+ {27, 3},
+};
+static arc arcs_51_2[1] = {
+ {27, 3},
};
-static state states_51[2] = {
+static arc arcs_51_3[1] = {
+ {113, 4},
+};
+static arc arcs_51_4[1] = {
+ {0, 4},
+};
+static state states_51[5] = {
{1, arcs_51_0},
{2, arcs_51_1},
+ {1, arcs_51_2},
+ {1, arcs_51_3},
+ {1, arcs_51_4},
};
-static arc arcs_52_0[2] = {
- {117, 1},
- {118, 2},
-};
-static arc arcs_52_1[1] = {
- {115, 2},
+static arc arcs_52_0[1] = {
+ {116, 1},
};
-static arc arcs_52_2[1] = {
- {0, 2},
+static arc arcs_52_1[2] = {
+ {117, 0},
+ {0, 1},
};
-static state states_52[3] = {
- {2, arcs_52_0},
- {1, arcs_52_1},
- {1, arcs_52_2},
+static state states_52[2] = {
+ {1, arcs_52_0},
+ {2, arcs_52_1},
};
static arc arcs_53_0[1] = {
- {104, 1},
+ {118, 1},
};
static arc arcs_53_1[2] = {
{119, 0},
@@ -1213,75 +1219,79 @@ static state states_53[2] = {
{1, arcs_53_0},
{2, arcs_53_1},
};
-static arc arcs_54_0[10] = {
+static arc arcs_54_0[2] = {
{120, 1},
- {121, 1},
- {122, 1},
- {123, 1},
- {124, 1},
- {125, 1},
- {126, 1},
- {98, 1},
- {117, 2},
- {127, 3},
+ {121, 2},
};
static arc arcs_54_1[1] = {
- {0, 1},
+ {118, 2},
};
static arc arcs_54_2[1] = {
- {98, 1},
-};
-static arc arcs_54_3[2] = {
- {117, 1},
- {0, 3},
+ {0, 2},
};
-static state states_54[4] = {
- {10, arcs_54_0},
+static state states_54[3] = {
+ {2, arcs_54_0},
{1, arcs_54_1},
{1, arcs_54_2},
- {2, arcs_54_3},
};
static arc arcs_55_0[1] = {
- {31, 1},
-};
-static arc arcs_55_1[1] = {
- {104, 2},
+ {107, 1},
};
-static arc arcs_55_2[1] = {
- {0, 2},
+static arc arcs_55_1[2] = {
+ {122, 0},
+ {0, 1},
};
-static state states_55[3] = {
+static state states_55[2] = {
{1, arcs_55_0},
- {1, arcs_55_1},
- {1, arcs_55_2},
+ {2, arcs_55_1},
};
-static arc arcs_56_0[1] = {
+static arc arcs_56_0[10] = {
+ {123, 1},
+ {124, 1},
+ {125, 1},
+ {126, 1},
+ {127, 1},
{128, 1},
+ {129, 1},
+ {101, 1},
+ {120, 2},
+ {130, 3},
};
-static arc arcs_56_1[2] = {
- {129, 0},
+static arc arcs_56_1[1] = {
{0, 1},
};
-static state states_56[2] = {
- {1, arcs_56_0},
- {2, arcs_56_1},
+static arc arcs_56_2[1] = {
+ {101, 1},
+};
+static arc arcs_56_3[2] = {
+ {120, 1},
+ {0, 3},
+};
+static state states_56[4] = {
+ {10, arcs_56_0},
+ {1, arcs_56_1},
+ {1, arcs_56_2},
+ {2, arcs_56_3},
};
static arc arcs_57_0[1] = {
- {130, 1},
+ {33, 1},
};
-static arc arcs_57_1[2] = {
- {131, 0},
- {0, 1},
+static arc arcs_57_1[1] = {
+ {107, 2},
+};
+static arc arcs_57_2[1] = {
+ {0, 2},
};
-static state states_57[2] = {
+static state states_57[3] = {
{1, arcs_57_0},
- {2, arcs_57_1},
+ {1, arcs_57_1},
+ {1, arcs_57_2},
};
static arc arcs_58_0[1] = {
- {132, 1},
+ {131, 1},
};
static arc arcs_58_1[2] = {
- {133, 0},
+ {132, 0},
{0, 1},
};
static state states_58[2] = {
@@ -1289,750 +1299,795 @@ static state states_58[2] = {
{2, arcs_58_1},
};
static arc arcs_59_0[1] = {
- {134, 1},
+ {133, 1},
};
-static arc arcs_59_1[3] = {
- {135, 0},
- {136, 0},
+static arc arcs_59_1[2] = {
+ {134, 0},
{0, 1},
};
static state states_59[2] = {
{1, arcs_59_0},
- {3, arcs_59_1},
+ {2, arcs_59_1},
};
static arc arcs_60_0[1] = {
- {137, 1},
+ {135, 1},
};
-static arc arcs_60_1[3] = {
- {138, 0},
- {139, 0},
+static arc arcs_60_1[2] = {
+ {136, 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] = {
+ {137, 1},
+};
+static arc arcs_61_1[3] = {
+ {138, 0},
+ {139, 0},
+ {0, 1},
+};
+static state states_61[2] = {
+ {1, arcs_61_0},
+ {3, arcs_61_1},
+};
+static arc arcs_62_0[1] = {
{140, 1},
};
-static arc arcs_61_1[6] = {
- {31, 0},
- {11, 0},
+static arc arcs_62_1[3] = {
{141, 0},
{142, 0},
- {143, 0},
{0, 1},
};
-static state states_61[2] = {
- {1, arcs_61_0},
- {6, arcs_61_1},
+static state states_62[2] = {
+ {1, arcs_62_0},
+ {3, arcs_62_1},
+};
+static arc arcs_63_0[1] = {
+ {143, 1},
+};
+static arc arcs_63_1[6] = {
+ {33, 0},
+ {11, 0},
+ {144, 0},
+ {145, 0},
+ {146, 0},
+ {0, 1},
};
-static arc arcs_62_0[4] = {
- {138, 1},
- {139, 1},
- {144, 1},
- {145, 2},
+static state states_63[2] = {
+ {1, arcs_63_0},
+ {6, arcs_63_1},
};
-static arc arcs_62_1[1] = {
- {140, 2},
+static arc arcs_64_0[4] = {
+ {141, 1},
+ {142, 1},
+ {147, 1},
+ {148, 2},
};
-static arc arcs_62_2[1] = {
+static arc arcs_64_1[1] = {
+ {143, 2},
+};
+static arc arcs_64_2[1] = {
{0, 2},
};
-static state states_62[3] = {
- {4, arcs_62_0},
- {1, arcs_62_1},
- {1, arcs_62_2},
+static state states_64[3] = {
+ {4, arcs_64_0},
+ {1, arcs_64_1},
+ {1, arcs_64_2},
};
-static arc arcs_63_0[1] = {
- {146, 1},
+static arc arcs_65_0[1] = {
+ {149, 1},
};
-static arc arcs_63_1[3] = {
- {147, 1},
- {32, 2},
+static arc arcs_65_1[2] = {
+ {34, 2},
{0, 1},
};
-static arc arcs_63_2[1] = {
- {140, 3},
+static arc arcs_65_2[1] = {
+ {143, 3},
};
-static arc arcs_63_3[1] = {
+static arc arcs_65_3[1] = {
{0, 3},
};
-static state states_63[4] = {
- {1, arcs_63_0},
- {3, arcs_63_1},
- {1, arcs_63_2},
- {1, arcs_63_3},
+static state states_65[4] = {
+ {1, arcs_65_0},
+ {2, arcs_65_1},
+ {1, arcs_65_2},
+ {1, arcs_65_3},
+};
+static arc arcs_66_0[2] = {
+ {150, 1},
+ {151, 2},
+};
+static arc arcs_66_1[1] = {
+ {151, 2},
+};
+static arc arcs_66_2[2] = {
+ {152, 2},
+ {0, 2},
};
-static arc arcs_64_0[10] = {
+static state states_66[3] = {
+ {2, arcs_66_0},
+ {1, arcs_66_1},
+ {2, arcs_66_2},
+};
+static arc arcs_67_0[10] = {
{13, 1},
- {149, 2},
- {151, 3},
- {21, 4},
- {154, 4},
- {155, 5},
- {80, 4},
- {156, 4},
- {157, 4},
- {158, 4},
+ {154, 2},
+ {156, 3},
+ {23, 4},
+ {159, 4},
+ {160, 5},
+ {82, 4},
+ {161, 4},
+ {162, 4},
+ {163, 4},
};
-static arc arcs_64_1[3] = {
- {47, 6},
- {148, 6},
+static arc arcs_67_1[3] = {
+ {49, 6},
+ {153, 6},
{15, 4},
};
-static arc arcs_64_2[2] = {
- {148, 7},
- {150, 4},
+static arc arcs_67_2[2] = {
+ {153, 7},
+ {155, 4},
};
-static arc arcs_64_3[2] = {
- {152, 8},
- {153, 4},
+static arc arcs_67_3[2] = {
+ {157, 8},
+ {158, 4},
};
-static arc arcs_64_4[1] = {
+static arc arcs_67_4[1] = {
{0, 4},
};
-static arc arcs_64_5[2] = {
- {155, 5},
+static arc arcs_67_5[2] = {
+ {160, 5},
{0, 5},
};
-static arc arcs_64_6[1] = {
+static arc arcs_67_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},
+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},
+ {3, 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},
+ {50, 1},
+};
+static arc arcs_68_1[3] = {
+ {164, 2},
+ {32, 3},
{0, 1},
};
-static arc arcs_65_2[1] = {
+static arc arcs_68_2[1] = {
{0, 2},
};
-static arc arcs_65_3[3] = {
- {24, 4},
- {48, 4},
+static arc arcs_68_3[3] = {
+ {26, 4},
+ {50, 4},
{0, 3},
};
-static arc arcs_65_4[2] = {
- {30, 3},
+static arc arcs_68_4[2] = {
+ {32, 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 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_66_0[3] = {
+static arc arcs_69_0[3] = {
{13, 1},
- {149, 2},
- {79, 3},
+ {154, 2},
+ {81, 3},
};
-static arc arcs_66_1[2] = {
+static arc arcs_69_1[2] = {
{14, 4},
{15, 5},
};
-static arc arcs_66_2[1] = {
- {160, 6},
+static arc arcs_69_2[1] = {
+ {165, 6},
};
-static arc arcs_66_3[1] = {
- {21, 5},
+static arc arcs_69_3[1] = {
+ {23, 5},
};
-static arc arcs_66_4[1] = {
+static arc arcs_69_4[1] = {
{15, 5},
};
-static arc arcs_66_5[1] = {
+static arc arcs_69_5[1] = {
{0, 5},
};
-static arc arcs_66_6[1] = {
- {150, 5},
+static arc arcs_69_6[1] = {
+ {155, 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 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_67_0[1] = {
- {161, 1},
+static arc arcs_70_0[1] = {
+ {166, 1},
};
-static arc arcs_67_1[2] = {
- {30, 2},
+static arc arcs_70_1[2] = {
+ {32, 2},
{0, 1},
};
-static arc arcs_67_2[2] = {
- {161, 1},
+static arc arcs_70_2[2] = {
+ {166, 1},
{0, 2},
};
-static state states_67[3] = {
- {1, arcs_67_0},
- {2, arcs_67_1},
- {2, arcs_67_2},
+static state states_70[3] = {
+ {1, arcs_70_0},
+ {2, arcs_70_1},
+ {2, arcs_70_2},
};
-static arc arcs_68_0[2] = {
- {24, 1},
- {25, 2},
+static arc arcs_71_0[2] = {
+ {26, 1},
+ {27, 2},
};
-static arc arcs_68_1[2] = {
- {25, 2},
+static arc arcs_71_1[2] = {
+ {27, 2},
{0, 1},
};
-static arc arcs_68_2[3] = {
- {24, 3},
- {162, 4},
+static arc arcs_71_2[3] = {
+ {26, 3},
+ {167, 4},
{0, 2},
};
-static arc arcs_68_3[2] = {
- {162, 4},
+static arc arcs_71_3[2] = {
+ {167, 4},
{0, 3},
};
-static arc arcs_68_4[1] = {
+static arc arcs_71_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 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_69_0[1] = {
- {25, 1},
+static arc arcs_72_0[1] = {
+ {27, 1},
};
-static arc arcs_69_1[2] = {
- {24, 2},
+static arc arcs_72_1[2] = {
+ {26, 2},
{0, 1},
};
-static arc arcs_69_2[1] = {
+static arc arcs_72_2[1] = {
{0, 2},
};
-static state states_69[3] = {
- {1, arcs_69_0},
- {2, arcs_69_1},
- {1, arcs_69_2},
+static state states_72[3] = {
+ {1, arcs_72_0},
+ {2, arcs_72_1},
+ {1, arcs_72_2},
};
-static arc arcs_70_0[2] = {
- {104, 1},
- {48, 1},
+static arc arcs_73_0[2] = {
+ {107, 1},
+ {50, 1},
};
-static arc arcs_70_1[2] = {
- {30, 2},
+static arc arcs_73_1[2] = {
+ {32, 2},
{0, 1},
};
-static arc arcs_70_2[3] = {
- {104, 1},
- {48, 1},
+static arc arcs_73_2[3] = {
+ {107, 1},
+ {50, 1},
{0, 2},
};
-static state states_70[3] = {
- {2, arcs_70_0},
- {2, arcs_70_1},
- {3, arcs_70_2},
+static state states_73[3] = {
+ {2, arcs_73_0},
+ {2, arcs_73_1},
+ {3, arcs_73_2},
};
-static arc arcs_71_0[1] = {
- {24, 1},
+static arc arcs_74_0[1] = {
+ {26, 1},
};
-static arc arcs_71_1[2] = {
- {30, 2},
+static arc arcs_74_1[2] = {
+ {32, 2},
{0, 1},
};
-static arc arcs_71_2[2] = {
- {24, 1},
+static arc arcs_74_2[2] = {
+ {26, 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[3] = {
- {24, 1},
- {32, 2},
- {48, 3},
+static state states_74[3] = {
+ {1, arcs_74_0},
+ {2, arcs_74_1},
+ {2, arcs_74_2},
};
-static arc arcs_72_1[4] = {
- {25, 4},
- {159, 5},
- {30, 6},
+static arc arcs_75_0[3] = {
+ {26, 1},
+ {34, 2},
+ {50, 3},
+};
+static arc arcs_75_1[4] = {
+ {27, 4},
+ {164, 5},
+ {32, 6},
{0, 1},
};
-static arc arcs_72_2[1] = {
- {104, 7},
+static arc arcs_75_2[1] = {
+ {107, 7},
};
-static arc arcs_72_3[3] = {
- {159, 5},
- {30, 6},
+static arc arcs_75_3[3] = {
+ {164, 5},
+ {32, 6},
{0, 3},
};
-static arc arcs_72_4[1] = {
- {24, 7},
+static arc arcs_75_4[1] = {
+ {26, 7},
};
-static arc arcs_72_5[1] = {
+static arc arcs_75_5[1] = {
{0, 5},
};
-static arc arcs_72_6[3] = {
- {24, 8},
- {48, 8},
+static arc arcs_75_6[3] = {
+ {26, 8},
+ {50, 8},
{0, 6},
};
-static arc arcs_72_7[3] = {
- {159, 5},
- {30, 9},
+static arc arcs_75_7[3] = {
+ {164, 5},
+ {32, 9},
{0, 7},
};
-static arc arcs_72_8[2] = {
- {30, 6},
+static arc arcs_75_8[2] = {
+ {32, 6},
{0, 8},
};
-static arc arcs_72_9[3] = {
- {24, 10},
- {32, 11},
+static arc arcs_75_9[3] = {
+ {26, 10},
+ {34, 11},
{0, 9},
};
-static arc arcs_72_10[1] = {
- {25, 12},
+static arc arcs_75_10[1] = {
+ {27, 12},
};
-static arc arcs_72_11[1] = {
- {104, 13},
+static arc arcs_75_11[1] = {
+ {107, 13},
};
-static arc arcs_72_12[1] = {
- {24, 13},
+static arc arcs_75_12[1] = {
+ {26, 13},
};
-static arc arcs_72_13[2] = {
- {30, 9},
+static arc arcs_75_13[2] = {
+ {32, 9},
{0, 13},
};
-static state states_72[14] = {
- {3, arcs_72_0},
- {4, arcs_72_1},
- {1, arcs_72_2},
- {3, arcs_72_3},
- {1, arcs_72_4},
- {1, arcs_72_5},
- {3, arcs_72_6},
- {3, arcs_72_7},
- {2, arcs_72_8},
- {3, arcs_72_9},
- {1, arcs_72_10},
- {1, arcs_72_11},
- {1, arcs_72_12},
- {2, arcs_72_13},
-};
-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[14] = {
+ {3, arcs_75_0},
+ {4, arcs_75_1},
+ {1, arcs_75_2},
+ {3, arcs_75_3},
+ {1, arcs_75_4},
+ {1, arcs_75_5},
+ {3, arcs_75_6},
+ {3, arcs_75_7},
+ {2, arcs_75_8},
+ {3, arcs_75_9},
+ {1, arcs_75_10},
+ {1, arcs_75_11},
+ {1, arcs_75_12},
+ {2, arcs_75_13},
+};
+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},
+ {27, 4},
};
-static arc arcs_73_3[2] = {
+static arc arcs_76_3[2] = {
{14, 5},
{15, 6},
};
-static arc arcs_73_4[1] = {
- {26, 7},
+static arc arcs_76_4[1] = {
+ {28, 7},
};
-static arc arcs_73_5[1] = {
+static arc arcs_76_5[1] = {
{15, 6},
};
-static arc arcs_73_6[1] = {
- {25, 4},
+static arc arcs_76_6[1] = {
+ {27, 4},
};
-static arc arcs_73_7[1] = {
+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 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_74_0[1] = {
- {164, 1},
+static arc arcs_77_0[1] = {
+ {169, 1},
};
-static arc arcs_74_1[2] = {
- {30, 2},
+static arc arcs_77_1[2] = {
+ {32, 2},
{0, 1},
};
-static arc arcs_74_2[2] = {
- {164, 1},
+static arc arcs_77_2[2] = {
+ {169, 1},
{0, 2},
};
-static state states_74[3] = {
- {1, arcs_74_0},
- {2, arcs_74_1},
- {2, arcs_74_2},
+static state states_77[3] = {
+ {1, arcs_77_0},
+ {2, arcs_77_1},
+ {2, arcs_77_2},
};
-static arc arcs_75_0[3] = {
- {24, 1},
- {32, 2},
- {48, 3},
+static arc arcs_78_0[3] = {
+ {26, 1},
+ {34, 2},
+ {50, 3},
};
-static arc arcs_75_1[3] = {
- {159, 3},
- {29, 4},
+static arc arcs_78_1[3] = {
+ {164, 3},
+ {31, 4},
{0, 1},
};
-static arc arcs_75_2[1] = {
- {104, 3},
+static arc arcs_78_2[1] = {
+ {107, 3},
};
-static arc arcs_75_3[1] = {
+static arc arcs_78_3[1] = {
{0, 3},
};
-static arc arcs_75_4[1] = {
- {24, 3},
+static arc arcs_78_4[1] = {
+ {26, 3},
};
-static state states_75[5] = {
- {3, arcs_75_0},
- {3, arcs_75_1},
- {1, arcs_75_2},
- {1, arcs_75_3},
- {1, arcs_75_4},
+static state states_78[5] = {
+ {3, arcs_78_0},
+ {3, arcs_78_1},
+ {1, arcs_78_2},
+ {1, arcs_78_3},
+ {1, arcs_78_4},
};
-static arc arcs_76_0[2] = {
- {159, 1},
- {166, 1},
+static arc arcs_79_0[2] = {
+ {164, 1},
+ {171, 1},
};
-static arc arcs_76_1[1] = {
+static arc arcs_79_1[1] = {
{0, 1},
};
-static state states_76[2] = {
- {2, arcs_76_0},
- {1, arcs_76_1},
+static state states_79[2] = {
+ {2, arcs_79_0},
+ {1, arcs_79_1},
};
-static arc arcs_77_0[1] = {
- {97, 1},
+static arc arcs_80_0[1] = {
+ {100, 1},
};
-static arc arcs_77_1[1] = {
- {63, 2},
+static arc arcs_80_1[1] = {
+ {65, 2},
};
-static arc arcs_77_2[1] = {
- {98, 3},
+static arc arcs_80_2[1] = {
+ {101, 3},
};
-static arc arcs_77_3[1] = {
- {108, 4},
+static arc arcs_80_3[1] = {
+ {111, 4},
};
-static arc arcs_77_4[2] = {
- {165, 5},
+static arc arcs_80_4[2] = {
+ {170, 5},
{0, 4},
};
-static arc arcs_77_5[1] = {
+static arc arcs_80_5[1] = {
{0, 5},
};
-static state states_77[6] = {
- {1, arcs_77_0},
- {1, arcs_77_1},
- {1, arcs_77_2},
- {1, arcs_77_3},
- {2, arcs_77_4},
- {1, arcs_77_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_78_0[1] = {
- {93, 1},
+static arc arcs_81_0[1] = {
+ {96, 1},
};
-static arc arcs_78_1[1] = {
- {110, 2},
+static arc arcs_81_1[1] = {
+ {113, 2},
};
-static arc arcs_78_2[2] = {
- {165, 3},
+static arc arcs_81_2[2] = {
+ {170, 3},
{0, 2},
};
-static arc arcs_78_3[1] = {
+static arc arcs_81_3[1] = {
{0, 3},
};
-static state states_78[4] = {
- {1, arcs_78_0},
- {1, arcs_78_1},
- {2, arcs_78_2},
- {1, arcs_78_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_79_0[1] = {
- {21, 1},
+static arc arcs_82_0[1] = {
+ {23, 1},
};
-static arc arcs_79_1[1] = {
+static arc arcs_82_1[1] = {
{0, 1},
};
-static state states_79[2] = {
- {1, arcs_79_0},
- {1, arcs_79_1},
+static state states_82[2] = {
+ {1, arcs_82_0},
+ {1, arcs_82_1},
};
-static arc arcs_80_0[1] = {
- {168, 1},
+static arc arcs_83_0[1] = {
+ {173, 1},
};
-static arc arcs_80_1[2] = {
- {169, 2},
+static arc arcs_83_1[2] = {
+ {174, 2},
{0, 1},
};
-static arc arcs_80_2[1] = {
+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 state states_83[3] = {
+ {1, arcs_83_0},
+ {2, arcs_83_1},
+ {1, arcs_83_2},
};
-static arc arcs_81_0[2] = {
- {74, 1},
+static arc arcs_84_0[2] = {
+ {76, 1},
{9, 2},
};
-static arc arcs_81_1[1] = {
- {24, 2},
+static arc arcs_84_1[1] = {
+ {26, 2},
};
-static arc arcs_81_2[1] = {
+static arc arcs_84_2[1] = {
{0, 2},
};
-static state states_81[3] = {
- {2, arcs_81_0},
- {1, arcs_81_1},
- {1, arcs_81_2},
+static state states_84[3] = {
+ {2, arcs_84_0},
+ {1, arcs_84_1},
+ {1, arcs_84_2},
};
-static dfa dfas[82] = {
+static dfa dfas[85] = {
{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\005\237\204\003\131\002\010\001\000\140\110\224\017\041"},
{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\005\237\204\003\131\002\010\001\000\140\110\224\017\041"},
{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\004\000\000\000\010\001\000\140\110\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,
- "\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,
- "\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,
+ {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"},
- {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,
+ {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"},
+ {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\005\237\204\003\131\002\010\001\000\140\110\224\017\041"},
+ {270, "simple_stmt", 0, 4, states_14,
+ "\000\040\200\000\002\000\000\000\005\237\204\003\000\000\010\001\000\140\110\224\017\040"},
+ {271, "small_stmt", 0, 2, states_15,
+ "\000\040\200\000\002\000\000\000\005\237\204\003\000\000\010\001\000\140\110\224\017\040"},
+ {272, "expr_stmt", 0, 6, states_16,
+ "\000\040\200\000\002\000\000\000\000\000\004\000\000\000\010\001\000\140\110\224\017\000"},
+ {273, "testlist_star_expr", 0, 3, states_17,
+ "\000\040\200\000\002\000\000\000\000\000\004\000\000\000\010\001\000\140\110\224\017\000"},
+ {274, "augassign", 0, 2, states_18,
+ "\000\000\000\000\000\000\370\377\000\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\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,
+ {276, "pass_stmt", 0, 2, states_20,
+ "\000\000\000\000\000\000\000\000\004\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\017\000\000\000\000\000\000\000\000\000\000\000\040"},
+ {278, "break_stmt", 0, 2, states_22,
"\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,
- "\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,
+ {279, "continue_stmt", 0, 2, states_23,
"\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,
+ {280, "return_stmt", 0, 3, states_24,
"\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,
+ {281, "yield_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, "raise_stmt", 0, 5, states_26,
+ "\000\000\000\000\000\000\000\000\000\010\000\000\000\000\000\000\000\000\000\000\000\000"},
+ {283, "import_stmt", 0, 2, states_27,
+ "\000\000\000\000\000\000\000\000\000\220\000\000\000\000\000\000\000\000\000\000\000\000"},
+ {284, "import_name", 0, 3, states_28,
+ "\000\000\000\000\000\000\000\000\000\200\000\000\000\000\000\000\000\000\000\000\000\000"},
+ {285, "import_from", 0, 8, states_29,
+ "\000\000\000\000\000\000\000\000\000\020\000\000\000\000\000\000\000\000\000\000\000\000"},
+ {286, "import_as_name", 0, 4, states_30,
+ "\000\000\200\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"},
+ {287, "dotted_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, "import_as_names", 0, 3, 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, "dotted_as_names", 0, 2, 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_name", 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, "global_stmt", 0, 3, states_35,
"\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,
+ {292, "nonlocal_stmt", 0, 3, states_36,
+ "\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000"},
+ {293, "assert_stmt", 0, 5, states_37,
+ "\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000"},
+ {294, "compound_stmt", 0, 2, states_38,
+ "\000\010\140\000\000\000\000\000\000\000\000\000\131\002\000\000\000\000\000\000\000\001"},
+ {295, "async_stmt", 0, 3, states_39,
+ "\000\000\040\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"},
+ {296, "if_stmt", 0, 8, states_40,
"\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,
+ {297, "while_stmt", 0, 8, 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,
+ {298, "for_stmt", 0, 10, states_42,
+ "\000\000\000\000\000\000\000\000\000\000\000\000\020\000\000\000\000\000\000\000\000\000"},
+ {299, "try_stmt", 0, 13, states_43,
"\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,
+ {300, "with_stmt", 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, 14, states_72,
- "\000\040\040\200\001\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, 3, 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, 5, states_75,
- "\000\040\040\200\001\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,
+ {301, "with_item", 0, 4, states_45,
+ "\000\040\200\000\000\000\000\000\000\000\004\000\000\000\010\001\000\140\110\224\017\000"},
+ {302, "except_clause", 0, 5, states_46,
+ "\000\000\000\000\000\000\000\000\000\000\000\000\000\020\000\000\000\000\000\000\000\000"},
+ {303, "suite", 0, 5, states_47,
+ "\004\040\200\000\002\000\000\000\005\237\204\003\000\000\010\001\000\140\110\224\017\040"},
+ {304, "test", 0, 6, states_48,
+ "\000\040\200\000\000\000\000\000\000\000\004\000\000\000\010\001\000\140\110\224\017\000"},
+ {305, "test_nocond", 0, 2, states_49,
+ "\000\040\200\000\000\000\000\000\000\000\004\000\000\000\010\001\000\140\110\224\017\000"},
+ {306, "lambdef", 0, 5, states_50,
+ "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\010\000\000\000\000\000\000\000"},
+ {307, "lambdef_nocond", 0, 5, states_51,
+ "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\010\000\000\000\000\000\000\000"},
+ {308, "or_test", 0, 2, states_52,
+ "\000\040\200\000\000\000\000\000\000\000\004\000\000\000\000\001\000\140\110\224\017\000"},
+ {309, "and_test", 0, 2, states_53,
+ "\000\040\200\000\000\000\000\000\000\000\004\000\000\000\000\001\000\140\110\224\017\000"},
+ {310, "not_test", 0, 3, states_54,
+ "\000\040\200\000\000\000\000\000\000\000\004\000\000\000\000\001\000\140\110\224\017\000"},
+ {311, "comparison", 0, 2, states_55,
+ "\000\040\200\000\000\000\000\000\000\000\004\000\000\000\000\000\000\140\110\224\017\000"},
+ {312, "comp_op", 0, 4, states_56,
+ "\000\000\000\000\000\000\000\000\000\000\000\000\040\000\000\371\007\000\000\000\000\000"},
+ {313, "star_expr", 0, 3, states_57,
+ "\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"},
+ {314, "expr", 0, 2, states_58,
+ "\000\040\200\000\000\000\000\000\000\000\004\000\000\000\000\000\000\140\110\224\017\000"},
+ {315, "xor_expr", 0, 2, states_59,
+ "\000\040\200\000\000\000\000\000\000\000\004\000\000\000\000\000\000\140\110\224\017\000"},
+ {316, "and_expr", 0, 2, states_60,
+ "\000\040\200\000\000\000\000\000\000\000\004\000\000\000\000\000\000\140\110\224\017\000"},
+ {317, "shift_expr", 0, 2, states_61,
+ "\000\040\200\000\000\000\000\000\000\000\004\000\000\000\000\000\000\140\110\224\017\000"},
+ {318, "arith_expr", 0, 2, states_62,
+ "\000\040\200\000\000\000\000\000\000\000\004\000\000\000\000\000\000\140\110\224\017\000"},
+ {319, "term", 0, 2, states_63,
+ "\000\040\200\000\000\000\000\000\000\000\004\000\000\000\000\000\000\140\110\224\017\000"},
+ {320, "factor", 0, 3, states_64,
+ "\000\040\200\000\000\000\000\000\000\000\004\000\000\000\000\000\000\140\110\224\017\000"},
+ {321, "power", 0, 4, states_65,
+ "\000\040\200\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\100\224\017\000"},
+ {322, "atom_expr", 0, 3, states_66,
+ "\000\040\200\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\100\224\017\000"},
+ {323, "atom", 0, 9, states_67,
+ "\000\040\200\000\000\000\000\000\000\000\004\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\004\000\000\000\010\001\000\140\110\224\017\000"},
+ {325, "trailer", 0, 7, states_69,
+ "\000\040\000\000\000\000\000\000\000\000\002\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\004\000\000\000\010\001\000\140\110\224\017\000"},
+ {327, "subscript", 0, 5, states_71,
+ "\000\040\200\010\000\000\000\000\000\000\004\000\000\000\010\001\000\140\110\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\004\000\000\000\000\000\000\140\110\224\017\000"},
+ {330, "testlist", 0, 3, states_74,
+ "\000\040\200\000\000\000\000\000\000\000\004\000\000\000\010\001\000\140\110\224\017\000"},
+ {331, "dictorsetmaker", 0, 14, states_75,
+ "\000\040\200\000\006\000\000\000\000\000\004\000\000\000\010\001\000\140\110\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"},
- {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] = {
+ {333, "arglist", 0, 3, states_77,
+ "\000\040\200\000\006\000\000\000\000\000\004\000\000\000\010\001\000\140\110\224\017\000"},
+ {334, "argument", 0, 5, states_78,
+ "\000\040\200\000\006\000\000\000\000\000\004\000\000\000\010\001\000\140\110\224\017\000"},
+ {335, "comp_iter", 0, 2, states_79,
+ "\000\000\000\000\000\000\000\000\000\000\000\000\021\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\020\000\000\000\000\000\000\000\000\000"},
+ {337, "comp_if", 0, 4, states_81,
+ "\000\000\000\000\000\000\000\000\000\000\000\000\001\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, "yield_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_arg", 0, 3, states_84,
+ "\000\040\200\000\000\000\000\000\000\020\004\000\000\000\010\001\000\140\110\224\017\000"},
+};
+static label labels[175] = {
{0, "EMPTY"},
{256, 0},
{4, 0},
- {269, 0},
- {293, 0},
+ {270, 0},
+ {294, 0},
{257, 0},
- {268, 0},
+ {269, 0},
{0, 0},
{258, 0},
- {327, 0},
+ {330, 0},
{259, 0},
{49, 0},
- {289, 0},
+ {290, 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},
+ {304, 0},
{11, 0},
- {301, 0},
- {264, 0},
+ {303, 0},
{265, 0},
+ {266, 0},
{22, 0},
{12, 0},
{16, 0},
{35, 0},
- {266, 0},
{267, 0},
- {270, 0},
- {13, 0},
+ {268, 0},
{271, 0},
- {274, 0},
+ {13, 0},
+ {272, 0},
{275, 0},
{276, 0},
- {282, 0},
- {290, 0},
+ {277, 0},
+ {283, 0},
{291, 0},
{292, 0},
- {272, 0},
+ {293, 0},
{273, 0},
- {336, 0},
- {311, 0},
+ {274, 0},
+ {339, 0},
+ {313, 0},
{36, 0},
{37, 0},
{38, 0},
@@ -2047,36 +2102,37 @@ static label labels[170] = {
{46, 0},
{48, 0},
{1, "del"},
- {326, 0},
+ {329, 0},
{1, "pass"},
- {277, 0},
{278, 0},
{279, 0},
- {281, 0},
{280, 0},
+ {282, 0},
+ {281, 0},
{1, "break"},
{1, "continue"},
{1, "return"},
{1, "raise"},
{1, "from"},
- {283, 0},
{284, 0},
+ {285, 0},
{1, "import"},
- {288, 0},
+ {289, 0},
{23, 0},
{52, 0},
- {287, 0},
- {285, 0},
- {1, "as"},
+ {288, 0},
{286, 0},
+ {1, "as"},
+ {287, 0},
{1, "global"},
{1, "nonlocal"},
{1, "assert"},
- {294, 0},
- {295, 0},
{296, 0},
{297, 0},
{298, 0},
+ {299, 0},
+ {300, 0},
+ {295, 0},
{1, "if"},
{1, "elif"},
{1, "else"},
@@ -2084,26 +2140,26 @@ static label labels[170] = {
{1, "for"},
{1, "in"},
{1, "try"},
- {300, 0},
+ {302, 0},
{1, "finally"},
{1, "with"},
- {299, 0},
- {312, 0},
+ {301, 0},
+ {314, 0},
{1, "except"},
{5, 0},
{6, 0},
+ {308, 0},
{306, 0},
- {304, 0},
- {303, 0},
{305, 0},
- {1, "lambda"},
{307, 0},
+ {1, "lambda"},
+ {309, 0},
{1, "or"},
- {308, 0},
+ {310, 0},
{1, "and"},
{1, "not"},
- {309, 0},
- {310, 0},
+ {311, 0},
+ {312, 0},
{20, 0},
{21, 0},
{27, 0},
@@ -2112,52 +2168,54 @@ static label labels[170] = {
{28, 0},
{28, 0},
{1, "is"},
- {313, 0},
+ {315, 0},
{18, 0},
- {314, 0},
+ {316, 0},
{32, 0},
- {315, 0},
+ {317, 0},
{19, 0},
- {316, 0},
+ {318, 0},
{33, 0},
{34, 0},
- {317, 0},
+ {319, 0},
{14, 0},
{15, 0},
- {318, 0},
+ {320, 0},
{17, 0},
{24, 0},
{47, 0},
{31, 0},
- {319, 0},
- {320, 0},
- {322, 0},
{321, 0},
+ {322, 0},
+ {54, 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},
- {1, "yield"},
{337, 0},
+ {338, 0},
+ {1, "yield"},
+ {340, 0},
};
grammar _PyParser_Grammar = {
- 82,
+ 85,
dfas,
- {170, labels},
+ {175, labels},
256
};
diff --git a/Python/importlib.h b/Python/importlib.h
index de975f8..9c62a95 100644
--- a/Python/importlib.h
+++ b/Python/importlib.h
@@ -210,8 +210,8 @@ const unsigned char _Py_M__importlib[] = {
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,
+ 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,
@@ -220,1753 +220,1753 @@ const unsigned char _Py_M__importlib[] = {
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,33,0,0,0,233,1,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,34,0,0,0,114,
- 40,0,0,0,114,41,0,0,0,114,35,0,0,0,114,38,
- 0,0,0,114,37,0,0,0,114,44,0,0,0,114,31,0,
- 0,0,114,36,0,0,0,218,7,97,99,113,117,105,114,101,
- 114,39,0,0,0,218,7,114,101,108,101,97,115,101,41,2,
- 114,19,0,0,0,114,43,0,0,0,114,10,0,0,0,114,
- 10,0,0,0,114,11,0,0,0,114,46,0,0,0,92,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,33,0,0,0,114,45,0,0,0,
- 41,10,114,34,0,0,0,114,40,0,0,0,114,35,0,0,
- 0,114,37,0,0,0,218,12,82,117,110,116,105,109,101,69,
- 114,114,111,114,114,38,0,0,0,218,14,65,115,115,101,114,
- 116,105,111,110,69,114,114,111,114,114,39,0,0,0,114,36,
- 0,0,0,114,47,0,0,0,41,2,114,19,0,0,0,114,
- 43,0,0,0,114,10,0,0,0,114,10,0,0,0,114,11,
- 0,0,0,114,47,0,0,0,117,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,218,6,102,
- 111,114,109,97,116,114,15,0,0,0,218,2,105,100,41,1,
- 114,19,0,0,0,114,10,0,0,0,114,10,0,0,0,114,
- 11,0,0,0,218,8,95,95,114,101,112,114,95,95,130,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,1,0,0,0,114,0,0,0,0,114,2,0,0,
- 0,114,3,0,0,0,114,20,0,0,0,114,44,0,0,0,
- 114,46,0,0,0,114,47,0,0,0,114,52,0,0,0,114,
- 10,0,0,0,114,10,0,0,0,114,10,0,0,0,114,11,
- 0,0,0,114,32,0,0,0,66,0,0,0,115,12,0,0,
- 0,12,4,6,2,12,8,12,12,12,25,12,13,114,32,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,33,0,0,0,41,2,114,15,0,0,0,114,38,0,
- 0,0,41,2,114,19,0,0,0,114,15,0,0,0,114,10,
- 0,0,0,114,10,0,0,0,114,11,0,0,0,114,20,0,
- 0,0,138,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,45,0,0,0,84,
- 41,1,114,38,0,0,0,41,1,114,19,0,0,0,114,10,
- 0,0,0,114,10,0,0,0,114,11,0,0,0,114,46,0,
- 0,0,142,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,33,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,45,0,0,0,41,
- 2,114,38,0,0,0,114,48,0,0,0,41,1,114,19,0,
- 0,0,114,10,0,0,0,114,10,0,0,0,114,11,0,0,
- 0,114,47,0,0,0,146,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,50,0,0,0,114,15,0,0,0,114,
- 51,0,0,0,41,1,114,19,0,0,0,114,10,0,0,0,
- 114,10,0,0,0,114,11,0,0,0,114,52,0,0,0,151,
- 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,1,0,0,0,114,0,0,
- 0,0,114,2,0,0,0,114,3,0,0,0,114,20,0,0,
- 0,114,46,0,0,0,114,47,0,0,0,114,52,0,0,0,
- 114,10,0,0,0,114,10,0,0,0,114,10,0,0,0,114,
- 11,0,0,0,114,53,0,0,0,134,0,0,0,115,10,0,
- 0,0,12,2,6,2,12,4,12,4,12,5,114,53,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,18,0,0,0,218,
- 5,95,108,111,99,107,41,2,114,19,0,0,0,114,15,0,
- 0,0,114,10,0,0,0,114,10,0,0,0,114,11,0,0,
- 0,114,20,0,0,0,157,0,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,18,0,0,0,114,55,0,0,0,
- 218,4,95,105,109,112,218,12,114,101,108,101,97,115,101,95,
- 108,111,99,107,114,46,0,0,0,41,1,114,19,0,0,0,
+ 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,33,0,0,0,233,1,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,34,0,0,0,
+ 114,40,0,0,0,114,41,0,0,0,114,35,0,0,0,114,
+ 38,0,0,0,114,37,0,0,0,114,44,0,0,0,114,31,
+ 0,0,0,114,36,0,0,0,218,7,97,99,113,117,105,114,
+ 101,114,39,0,0,0,218,7,114,101,108,101,97,115,101,41,
+ 2,114,19,0,0,0,114,43,0,0,0,114,10,0,0,0,
+ 114,10,0,0,0,114,11,0,0,0,114,46,0,0,0,92,
+ 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,33,0,0,0,114,45,0,
+ 0,0,41,10,114,34,0,0,0,114,40,0,0,0,114,35,
+ 0,0,0,114,37,0,0,0,218,12,82,117,110,116,105,109,
+ 101,69,114,114,111,114,114,38,0,0,0,218,14,65,115,115,
+ 101,114,116,105,111,110,69,114,114,111,114,114,39,0,0,0,
+ 114,36,0,0,0,114,47,0,0,0,41,2,114,19,0,0,
+ 0,114,43,0,0,0,114,10,0,0,0,114,10,0,0,0,
+ 114,11,0,0,0,114,47,0,0,0,117,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,218,
+ 6,102,111,114,109,97,116,114,15,0,0,0,218,2,105,100,
+ 41,1,114,19,0,0,0,114,10,0,0,0,114,10,0,0,
+ 0,114,11,0,0,0,218,8,95,95,114,101,112,114,95,95,
+ 130,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,1,0,0,0,114,0,0,0,0,114,2,
+ 0,0,0,114,3,0,0,0,114,20,0,0,0,114,44,0,
+ 0,0,114,46,0,0,0,114,47,0,0,0,114,52,0,0,
+ 0,114,10,0,0,0,114,10,0,0,0,114,10,0,0,0,
+ 114,11,0,0,0,114,32,0,0,0,66,0,0,0,115,12,
+ 0,0,0,12,4,6,2,12,8,12,12,12,25,12,13,114,
+ 32,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,33,0,0,0,41,2,114,15,0,0,0,114,
+ 38,0,0,0,41,2,114,19,0,0,0,114,15,0,0,0,
114,10,0,0,0,114,10,0,0,0,114,11,0,0,0,114,
- 23,0,0,0,161,0,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,55,0,0,0,114,47,0,0,0,41,3,114,
- 19,0,0,0,114,29,0,0,0,90,6,107,119,97,114,103,
- 115,114,10,0,0,0,114,10,0,0,0,114,11,0,0,0,
- 114,30,0,0,0,168,0,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,1,0,0,0,114,0,0,0,0,114,2,0,0,0,114,
- 20,0,0,0,114,23,0,0,0,114,30,0,0,0,114,10,
- 0,0,0,114,10,0,0,0,114,10,0,0,0,114,11,0,
- 0,0,114,54,0,0,0,155,0,0,0,115,6,0,0,0,
- 12,2,12,4,12,7,114,54,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,218,1,95,
- 41,1,114,15,0,0,0,114,10,0,0,0,114,11,0,0,
- 0,218,2,99,98,188,0,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,59,0,0,0,114,28,0,0,0,114,34,0,0,0,114,
- 53,0,0,0,114,32,0,0,0,218,8,95,119,101,97,107,
- 114,101,102,90,3,114,101,102,41,3,114,15,0,0,0,114,
- 35,0,0,0,114,61,0,0,0,114,10,0,0,0,41,1,
- 114,15,0,0,0,114,11,0,0,0,114,56,0,0,0,174,
- 0,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,56,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,56,0,0,0,114,57,0,0,0,114,
- 58,0,0,0,114,46,0,0,0,114,31,0,0,0,114,47,
- 0,0,0,41,2,114,15,0,0,0,114,35,0,0,0,114,
- 10,0,0,0,114,10,0,0,0,114,11,0,0,0,218,19,
- 95,108,111,99,107,95,117,110,108,111,99,107,95,109,111,100,
- 117,108,101,193,0,0,0,115,14,0,0,0,0,7,12,1,
- 10,1,3,1,14,1,13,3,5,2,114,63,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,10,0,0,0,
- 41,3,218,1,102,114,29,0,0,0,90,4,107,119,100,115,
- 114,10,0,0,0,114,10,0,0,0,114,11,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,212,0,0,0,115,2,
- 0,0,0,0,8,114,65,0,0,0,218,9,118,101,114,98,
- 111,115,105,116,121,114,45,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,
- 90,4,102,105,108,101,78,41,2,114,67,0,0,0,114,68,
- 0,0,0,41,7,114,14,0,0,0,218,5,102,108,97,103,
- 115,218,7,118,101,114,98,111,115,101,218,10,115,116,97,114,
- 116,115,119,105,116,104,218,5,112,114,105,110,116,114,50,0,
- 0,0,218,6,115,116,100,101,114,114,41,3,218,7,109,101,
- 115,115,97,103,101,114,66,0,0,0,114,29,0,0,0,114,
- 10,0,0,0,114,10,0,0,0,114,11,0,0,0,218,16,
- 95,118,101,114,98,111,115,101,95,109,101,115,115,97,103,101,
- 223,0,0,0,115,8,0,0,0,0,2,18,1,15,1,10,
- 1,114,75,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,15,0,0,0,
- 41,4,114,14,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,218,11,73,
- 109,112,111,114,116,69,114,114,111,114,114,50,0,0,0,41,
- 2,114,19,0,0,0,218,8,102,117,108,108,110,97,109,101,
- 41,1,218,3,102,120,110,114,10,0,0,0,114,11,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,233,0,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,12,0,0,0,41,2,114,79,0,0,
- 0,114,80,0,0,0,114,10,0,0,0,41,1,114,79,0,
- 0,0,114,11,0,0,0,218,17,95,114,101,113,117,105,114,
- 101,115,95,98,117,105,108,116,105,110,231,0,0,0,115,6,
- 0,0,0,0,2,18,5,13,1,114,81,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,
- 15,0,0,0,41,4,114,57,0,0,0,218,9,105,115,95,
- 102,114,111,122,101,110,114,77,0,0,0,114,50,0,0,0,
- 41,2,114,19,0,0,0,114,78,0,0,0,41,1,114,79,
- 0,0,0,114,10,0,0,0,114,11,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,244,0,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,12,
- 0,0,0,41,2,114,79,0,0,0,114,83,0,0,0,114,
- 10,0,0,0,41,1,114,79,0,0,0,114,11,0,0,0,
- 218,16,95,114,101,113,117,105,114,101,115,95,102,114,111,122,
- 101,110,242,0,0,0,115,6,0,0,0,0,2,18,5,13,
- 1,114,84,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,14,0,0,0,114,
- 21,0,0,0,218,5,95,101,120,101,99,218,5,95,108,111,
- 97,100,41,4,114,19,0,0,0,114,78,0,0,0,218,4,
- 115,112,101,99,218,6,109,111,100,117,108,101,114,10,0,0,
- 0,114,10,0,0,0,114,11,0,0,0,218,17,95,108,111,
- 97,100,95,109,111,100,117,108,101,95,115,104,105,109,254,0,
- 0,0,115,12,0,0,0,0,6,15,1,15,1,13,1,13,
- 1,11,2,114,90,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,6,0,0,0,114,4,0,0,
- 0,114,92,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,1,0,0,0,218,8,95,95,102,105,108,101,
- 95,95,114,50,0,0,0,41,5,114,89,0,0,0,218,6,
- 108,111,97,100,101,114,114,88,0,0,0,114,15,0,0,0,
- 218,8,102,105,108,101,110,97,109,101,114,10,0,0,0,114,
- 10,0,0,0,114,11,0,0,0,218,12,95,109,111,100,117,
- 108,101,95,114,101,112,114,14,1,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,101,
+ 20,0,0,0,138,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,45,0,0,
+ 0,84,41,1,114,38,0,0,0,41,1,114,19,0,0,0,
+ 114,10,0,0,0,114,10,0,0,0,114,11,0,0,0,114,
+ 46,0,0,0,142,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,33,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,45,0,0,
+ 0,41,2,114,38,0,0,0,114,48,0,0,0,41,1,114,
+ 19,0,0,0,114,10,0,0,0,114,10,0,0,0,114,11,
+ 0,0,0,114,47,0,0,0,146,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,50,0,0,0,114,15,0,0,
+ 0,114,51,0,0,0,41,1,114,19,0,0,0,114,10,0,
+ 0,0,114,10,0,0,0,114,11,0,0,0,114,52,0,0,
+ 0,151,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,1,0,0,0,114,
+ 0,0,0,0,114,2,0,0,0,114,3,0,0,0,114,20,
+ 0,0,0,114,46,0,0,0,114,47,0,0,0,114,52,0,
+ 0,0,114,10,0,0,0,114,10,0,0,0,114,10,0,0,
+ 0,114,11,0,0,0,114,53,0,0,0,134,0,0,0,115,
+ 10,0,0,0,12,2,6,2,12,4,12,4,12,5,114,53,
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,95,0,0,0,218,5,95,115,
- 112,101,99,41,2,114,19,0,0,0,114,89,0,0,0,114,
- 10,0,0,0,114,10,0,0,0,114,11,0,0,0,114,20,
- 0,0,0,52,1,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,104,0,0,0,218,13,95,105,110,105,116,105,97,
- 108,105,122,105,110,103,114,103,0,0,0,114,14,0,0,0,
- 114,21,0,0,0,114,15,0,0,0,41,1,114,19,0,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,18,0,0,
+ 0,218,5,95,108,111,99,107,41,2,114,19,0,0,0,114,
+ 15,0,0,0,114,10,0,0,0,114,10,0,0,0,114,11,
+ 0,0,0,114,20,0,0,0,157,0,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,18,0,0,0,114,55,0,
+ 0,0,218,4,95,105,109,112,218,12,114,101,108,101,97,115,
+ 101,95,108,111,99,107,114,46,0,0,0,41,1,114,19,0,
+ 0,0,114,10,0,0,0,114,10,0,0,0,114,11,0,0,
+ 0,114,23,0,0,0,161,0,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,55,0,0,0,114,47,0,0,0,41,
+ 3,114,19,0,0,0,114,29,0,0,0,90,6,107,119,97,
+ 114,103,115,114,10,0,0,0,114,10,0,0,0,114,11,0,
+ 0,0,114,30,0,0,0,168,0,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,1,0,0,0,114,0,0,0,0,114,2,0,0,
+ 0,114,20,0,0,0,114,23,0,0,0,114,30,0,0,0,
+ 114,10,0,0,0,114,10,0,0,0,114,10,0,0,0,114,
+ 11,0,0,0,114,54,0,0,0,155,0,0,0,115,6,0,
+ 0,0,12,2,12,4,12,7,114,54,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,218,
+ 1,95,41,1,114,15,0,0,0,114,10,0,0,0,114,11,
+ 0,0,0,218,2,99,98,188,0,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,59,0,0,0,114,28,0,0,0,114,34,0,0,
+ 0,114,53,0,0,0,114,32,0,0,0,218,8,95,119,101,
+ 97,107,114,101,102,90,3,114,101,102,41,3,114,15,0,0,
+ 0,114,35,0,0,0,114,61,0,0,0,114,10,0,0,0,
+ 41,1,114,15,0,0,0,114,11,0,0,0,114,56,0,0,
+ 0,174,0,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,56,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,56,0,0,0,114,57,0,0,
+ 0,114,58,0,0,0,114,46,0,0,0,114,31,0,0,0,
+ 114,47,0,0,0,41,2,114,15,0,0,0,114,35,0,0,
0,114,10,0,0,0,114,10,0,0,0,114,11,0,0,0,
- 114,23,0,0,0,56,1,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,10,0,
- 0,0,41,2,114,24,0,0,0,114,25,0,0,0,114,10,
- 0,0,0,114,10,0,0,0,114,11,0,0,0,114,26,0,
- 0,0,66,1,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,104,0,0,0,114,27,0,0,0,114,14,0,
- 0,0,114,21,0,0,0,114,15,0,0,0,114,28,0,0,
- 0,114,75,0,0,0,114,99,0,0,0,114,105,0,0,0,
- 41,3,114,19,0,0,0,114,29,0,0,0,114,88,0,0,
+ 218,19,95,108,111,99,107,95,117,110,108,111,99,107,95,109,
+ 111,100,117,108,101,193,0,0,0,115,14,0,0,0,0,7,
+ 12,1,10,1,3,1,14,1,13,3,5,2,114,63,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,10,0,
+ 0,0,41,3,218,1,102,114,29,0,0,0,90,4,107,119,
+ 100,115,114,10,0,0,0,114,10,0,0,0,114,11,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,212,0,0,0,
+ 115,2,0,0,0,0,8,114,65,0,0,0,218,9,118,101,
+ 114,98,111,115,105,116,121,114,45,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,90,4,102,105,108,101,78,41,2,114,67,0,0,0,
+ 114,68,0,0,0,41,7,114,14,0,0,0,218,5,102,108,
+ 97,103,115,218,7,118,101,114,98,111,115,101,218,10,115,116,
+ 97,114,116,115,119,105,116,104,218,5,112,114,105,110,116,114,
+ 50,0,0,0,218,6,115,116,100,101,114,114,41,3,218,7,
+ 109,101,115,115,97,103,101,114,66,0,0,0,114,29,0,0,
0,114,10,0,0,0,114,10,0,0,0,114,11,0,0,0,
- 114,30,0,0,0,63,1,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,
- 1,0,0,0,114,0,0,0,0,114,2,0,0,0,114,20,
- 0,0,0,114,23,0,0,0,114,30,0,0,0,114,10,0,
- 0,0,114,10,0,0,0,114,10,0,0,0,114,11,0,0,
- 0,114,102,0,0,0,50,1,0,0,115,6,0,0,0,12,
- 2,12,4,12,7,114,102,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,
+ 218,16,95,118,101,114,98,111,115,101,95,109,101,115,115,97,
+ 103,101,223,0,0,0,115,8,0,0,0,0,2,18,1,15,
+ 1,10,1,114,75,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,15,0,
+ 0,0,41,4,114,14,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,218,
+ 11,73,109,112,111,114,116,69,114,114,111,114,114,50,0,0,
+ 0,41,2,114,19,0,0,0,218,8,102,117,108,108,110,97,
+ 109,101,41,1,218,3,102,120,110,114,10,0,0,0,114,11,
+ 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,233,0,
+ 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,12,0,0,0,41,2,114,79,
+ 0,0,0,114,80,0,0,0,114,10,0,0,0,41,1,114,
+ 79,0,0,0,114,11,0,0,0,218,17,95,114,101,113,117,
+ 105,114,101,115,95,98,117,105,108,116,105,110,231,0,0,0,
+ 115,6,0,0,0,0,2,18,5,13,1,114,81,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,15,0,0,0,41,4,114,57,0,0,0,218,9,105,
+ 115,95,102,114,111,122,101,110,114,77,0,0,0,114,50,0,
+ 0,0,41,2,114,19,0,0,0,114,78,0,0,0,41,1,
+ 114,79,0,0,0,114,10,0,0,0,114,11,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,244,0,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,12,0,0,0,41,2,114,79,0,0,0,114,83,0,0,
+ 0,114,10,0,0,0,41,1,114,79,0,0,0,114,11,0,
+ 0,0,218,16,95,114,101,113,117,105,114,101,115,95,102,114,
+ 111,122,101,110,242,0,0,0,115,6,0,0,0,0,2,18,
+ 5,13,1,114,84,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,14,0,0,
+ 0,114,21,0,0,0,218,5,95,101,120,101,99,218,5,95,
+ 108,111,97,100,41,4,114,19,0,0,0,114,78,0,0,0,
+ 218,4,115,112,101,99,218,6,109,111,100,117,108,101,114,10,
+ 0,0,0,114,10,0,0,0,114,11,0,0,0,218,17,95,
+ 108,111,97,100,95,109,111,100,117,108,101,95,115,104,105,109,
+ 254,0,0,0,115,12,0,0,0,0,6,15,1,15,1,13,
+ 1,13,1,11,2,114,90,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,6,0,0,0,114,4,
+ 0,0,0,114,92,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,1,0,0,0,218,8,95,95,102,105,
+ 108,101,95,95,114,50,0,0,0,41,5,114,89,0,0,0,
+ 218,6,108,111,97,100,101,114,114,88,0,0,0,114,15,0,
+ 0,0,218,8,102,105,108,101,110,97,109,101,114,10,0,0,
+ 0,114,10,0,0,0,114,11,0,0,0,218,12,95,109,111,
+ 100,117,108,101,95,114,101,112,114,14,1,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,101,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,95,0,0,0,218,5,
+ 95,115,112,101,99,41,2,114,19,0,0,0,114,89,0,0,
+ 0,114,10,0,0,0,114,10,0,0,0,114,11,0,0,0,
+ 114,20,0,0,0,52,1,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,104,0,0,0,218,13,95,105,110,105,116,
+ 105,97,108,105,122,105,110,103,114,103,0,0,0,114,14,0,
+ 0,0,114,21,0,0,0,114,15,0,0,0,41,1,114,19,
+ 0,0,0,114,10,0,0,0,114,10,0,0,0,114,11,0,
+ 0,0,114,23,0,0,0,56,1,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,
+ 10,0,0,0,41,2,114,24,0,0,0,114,25,0,0,0,
+ 114,10,0,0,0,114,10,0,0,0,114,11,0,0,0,114,
+ 26,0,0,0,66,1,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,104,0,0,0,114,27,0,0,0,114,
+ 14,0,0,0,114,21,0,0,0,114,15,0,0,0,114,28,
+ 0,0,0,114,75,0,0,0,114,99,0,0,0,114,105,0,
+ 0,0,41,3,114,19,0,0,0,114,29,0,0,0,114,88,
+ 0,0,0,114,10,0,0,0,114,10,0,0,0,114,11,0,
+ 0,0,114,30,0,0,0,63,1,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,1,0,0,0,114,0,0,0,0,114,2,0,0,0,
+ 114,20,0,0,0,114,23,0,0,0,114,30,0,0,0,114,
+ 10,0,0,0,114,10,0,0,0,114,10,0,0,0,114,11,
+ 0,0,0,114,102,0,0,0,50,1,0,0,115,6,0,0,
+ 0,12,2,12,4,12,7,114,102,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,15,0,0,0,114,99,0,0,
+ 0,114,107,0,0,0,114,108,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,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,15,0,0,0,114,99,0,0,0,114,
- 107,0,0,0,114,108,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,
- 19,0,0,0,114,15,0,0,0,114,99,0,0,0,114,107,
- 0,0,0,114,108,0,0,0,114,109,0,0,0,114,10,0,
- 0,0,114,10,0,0,0,114,11,0,0,0,114,20,0,0,
- 0,114,1,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,
- 50,0,0,0,114,15,0,0,0,114,99,0,0,0,114,107,
- 0,0,0,218,6,97,112,112,101,110,100,114,110,0,0,0,
- 218,9,95,95,99,108,97,115,115,95,95,114,1,0,0,0,
- 218,4,106,111,105,110,41,2,114,19,0,0,0,114,29,0,
+ 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,19,0,0,0,114,15,0,0,0,114,99,0,0,0,
+ 114,107,0,0,0,114,108,0,0,0,114,109,0,0,0,114,
+ 10,0,0,0,114,10,0,0,0,114,11,0,0,0,114,20,
+ 0,0,0,114,1,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,50,0,0,0,114,15,0,0,0,114,99,0,0,0,
+ 114,107,0,0,0,218,6,97,112,112,101,110,100,114,110,0,
+ 0,0,218,9,95,95,99,108,97,115,115,95,95,114,1,0,
+ 0,0,218,4,106,111,105,110,41,2,114,19,0,0,0,114,
+ 29,0,0,0,114,10,0,0,0,114,10,0,0,0,114,11,
+ 0,0,0,114,52,0,0,0,126,1,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,110,0,0,0,114,15,0,0,
+ 0,114,99,0,0,0,114,107,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,96,0,0,0,41,3,114,19,0,0,0,90,5,111,
+ 116,104,101,114,90,4,115,109,115,108,114,10,0,0,0,114,
+ 10,0,0,0,114,11,0,0,0,218,6,95,95,101,113,95,
+ 95,136,1,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,2,0,
+ 0,0,67,0,0,0,115,79,0,0,0,124,0,0,106,0,
+ 0,100,0,0,107,8,0,114,72,0,124,0,0,106,1,0,
+ 100,0,0,107,9,0,114,72,0,124,0,0,106,2,0,114,
+ 72,0,100,1,0,100,0,0,108,3,0,125,1,0,124,1,
+ 0,106,4,0,124,0,0,106,1,0,131,1,0,124,0,0,
+ 95,0,0,124,0,0,106,0,0,83,41,2,78,114,33,0,
+ 0,0,41,5,114,112,0,0,0,114,107,0,0,0,114,111,
+ 0,0,0,218,26,95,102,114,111,122,101,110,95,105,109,112,
+ 111,114,116,108,105,98,95,101,120,116,101,114,110,97,108,90,
+ 11,95,103,101,116,95,99,97,99,104,101,100,41,2,114,19,
+ 0,0,0,218,19,95,98,111,111,116,115,116,114,97,112,95,
+ 101,120,116,101,114,110,97,108,114,10,0,0,0,114,10,0,
+ 0,0,114,11,0,0,0,114,116,0,0,0,148,1,0,0,
+ 115,10,0,0,0,0,2,15,1,24,1,12,1,21,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,112,
+ 0,0,0,41,2,114,19,0,0,0,114,116,0,0,0,114,
+ 10,0,0,0,114,10,0,0,0,114,11,0,0,0,114,116,
+ 0,0,0,156,1,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,218,1,46,114,33,
+ 0,0,0,41,3,114,110,0,0,0,114,15,0,0,0,218,
+ 10,114,112,97,114,116,105,116,105,111,110,41,1,114,19,0,
0,0,114,10,0,0,0,114,10,0,0,0,114,11,0,0,
- 0,114,52,0,0,0,126,1,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,110,0,0,0,114,15,0,0,0,114,
- 99,0,0,0,114,107,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,
- 96,0,0,0,41,3,114,19,0,0,0,90,5,111,116,104,
- 101,114,90,4,115,109,115,108,114,10,0,0,0,114,10,0,
- 0,0,114,11,0,0,0,218,6,95,95,101,113,95,95,136,
- 1,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,2,0,0,0,
- 67,0,0,0,115,79,0,0,0,124,0,0,106,0,0,100,
- 0,0,107,8,0,114,72,0,124,0,0,106,1,0,100,0,
- 0,107,9,0,114,72,0,124,0,0,106,2,0,114,72,0,
- 100,1,0,100,0,0,108,3,0,125,1,0,124,1,0,106,
- 4,0,124,0,0,106,1,0,131,1,0,124,0,0,95,0,
- 0,124,0,0,106,0,0,83,41,2,78,114,33,0,0,0,
- 41,5,114,112,0,0,0,114,107,0,0,0,114,111,0,0,
- 0,218,26,95,102,114,111,122,101,110,95,105,109,112,111,114,
- 116,108,105,98,95,101,120,116,101,114,110,97,108,90,11,95,
- 103,101,116,95,99,97,99,104,101,100,41,2,114,19,0,0,
- 0,218,19,95,98,111,111,116,115,116,114,97,112,95,101,120,
- 116,101,114,110,97,108,114,10,0,0,0,114,10,0,0,0,
- 114,11,0,0,0,114,116,0,0,0,148,1,0,0,115,10,
- 0,0,0,0,2,15,1,24,1,12,1,21,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,112,0,0,
- 0,41,2,114,19,0,0,0,114,116,0,0,0,114,10,0,
- 0,0,114,10,0,0,0,114,11,0,0,0,114,116,0,0,
- 0,156,1,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,218,1,46,114,33,0,0,
- 0,41,3,114,110,0,0,0,114,15,0,0,0,218,10,114,
- 112,97,114,116,105,116,105,111,110,41,1,114,19,0,0,0,
+ 0,218,6,112,97,114,101,110,116,160,1,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,111,0,0,0,41,1,114,19,0,0,0,114,10,0,
+ 0,0,114,10,0,0,0,114,11,0,0,0,114,117,0,0,
+ 0,168,1,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,111,0,
+ 0,0,41,2,114,19,0,0,0,218,5,118,97,108,117,101,
+ 114,10,0,0,0,114,10,0,0,0,114,11,0,0,0,114,
+ 117,0,0,0,172,1,0,0,115,2,0,0,0,0,2,41,
+ 12,114,1,0,0,0,114,0,0,0,0,114,2,0,0,0,
+ 114,3,0,0,0,114,20,0,0,0,114,52,0,0,0,114,
+ 118,0,0,0,218,8,112,114,111,112,101,114,116,121,114,116,
+ 0,0,0,218,6,115,101,116,116,101,114,114,123,0,0,0,
+ 114,117,0,0,0,114,10,0,0,0,114,10,0,0,0,114,
+ 10,0,0,0,114,11,0,0,0,114,106,0,0,0,77,1,
+ 0,0,115,20,0,0,0,12,35,6,2,15,1,15,11,12,
+ 10,12,12,18,8,21,4,18,8,18,4,114,106,0,0,0,
+ 114,107,0,0,0,78,114,109,0,0,0,99,2,0,0,0,
+ 2,0,0,0,6,0,0,0,15,0,0,0,67,0,0,0,
+ 115,206,0,0,0,116,0,0,124,1,0,100,1,0,131,2,
+ 0,114,99,0,100,2,0,100,3,0,108,1,0,109,2,0,
+ 125,4,0,1,124,3,0,100,4,0,107,8,0,114,59,0,
+ 124,4,0,124,0,0,100,5,0,124,1,0,131,1,1,83,
+ 124,3,0,114,71,0,103,0,0,110,3,0,100,4,0,125,
+ 5,0,124,4,0,124,0,0,100,5,0,124,1,0,100,6,
+ 0,124,5,0,131,1,2,83,124,3,0,100,4,0,107,8,
+ 0,114,181,0,116,0,0,124,1,0,100,7,0,131,2,0,
+ 114,175,0,121,19,0,124,1,0,106,3,0,124,0,0,131,
+ 1,0,125,3,0,87,113,181,0,4,116,4,0,107,10,0,
+ 114,171,0,1,1,1,100,4,0,125,3,0,89,113,181,0,
+ 88,110,6,0,100,8,0,125,3,0,116,5,0,124,0,0,
+ 124,1,0,100,9,0,124,2,0,100,7,0,124,3,0,131,
+ 2,2,83,41,10,122,53,82,101,116,117,114,110,32,97,32,
+ 109,111,100,117,108,101,32,115,112,101,99,32,98,97,115,101,
+ 100,32,111,110,32,118,97,114,105,111,117,115,32,108,111,97,
+ 100,101,114,32,109,101,116,104,111,100,115,46,90,12,103,101,
+ 116,95,102,105,108,101,110,97,109,101,114,45,0,0,0,41,
+ 1,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,78,114,99,0,0,0,
+ 114,110,0,0,0,114,109,0,0,0,70,114,107,0,0,0,
+ 41,6,114,4,0,0,0,114,120,0,0,0,114,128,0,0,
+ 0,114,109,0,0,0,114,77,0,0,0,114,106,0,0,0,
+ 41,6,114,15,0,0,0,114,99,0,0,0,114,107,0,0,
+ 0,114,109,0,0,0,114,128,0,0,0,90,6,115,101,97,
+ 114,99,104,114,10,0,0,0,114,10,0,0,0,114,11,0,
+ 0,0,114,85,0,0,0,177,1,0,0,115,30,0,0,0,
+ 0,2,15,1,16,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,85,
+ 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,107,0,0,0,70,84,41,13,114,
+ 95,0,0,0,114,96,0,0,0,114,1,0,0,0,114,91,
+ 0,0,0,114,98,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,106,0,
+ 0,0,114,111,0,0,0,114,116,0,0,0,114,110,0,0,
+ 0,41,8,114,89,0,0,0,114,99,0,0,0,114,107,0,
+ 0,0,114,88,0,0,0,114,15,0,0,0,90,8,108,111,
+ 99,97,116,105,111,110,114,116,0,0,0,114,110,0,0,0,
114,10,0,0,0,114,10,0,0,0,114,11,0,0,0,218,
- 6,112,97,114,101,110,116,160,1,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,
- 111,0,0,0,41,1,114,19,0,0,0,114,10,0,0,0,
- 114,10,0,0,0,114,11,0,0,0,114,117,0,0,0,168,
- 1,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,111,0,0,0,
- 41,2,114,19,0,0,0,218,5,118,97,108,117,101,114,10,
- 0,0,0,114,10,0,0,0,114,11,0,0,0,114,117,0,
- 0,0,172,1,0,0,115,2,0,0,0,0,2,41,12,114,
- 1,0,0,0,114,0,0,0,0,114,2,0,0,0,114,3,
- 0,0,0,114,20,0,0,0,114,52,0,0,0,114,118,0,
- 0,0,218,8,112,114,111,112,101,114,116,121,114,116,0,0,
- 0,218,6,115,101,116,116,101,114,114,123,0,0,0,114,117,
- 0,0,0,114,10,0,0,0,114,10,0,0,0,114,10,0,
- 0,0,114,11,0,0,0,114,106,0,0,0,77,1,0,0,
- 115,20,0,0,0,12,35,6,2,15,1,15,11,12,10,12,
- 12,18,8,21,4,18,8,18,4,114,106,0,0,0,114,107,
- 0,0,0,78,114,109,0,0,0,99,2,0,0,0,2,0,
- 0,0,6,0,0,0,15,0,0,0,67,0,0,0,115,206,
- 0,0,0,116,0,0,124,1,0,100,1,0,131,2,0,114,
- 99,0,100,2,0,100,3,0,108,1,0,109,2,0,125,4,
- 0,1,124,3,0,100,4,0,107,8,0,114,59,0,124,4,
- 0,124,0,0,100,5,0,124,1,0,131,1,1,83,124,3,
- 0,114,71,0,103,0,0,110,3,0,100,4,0,125,5,0,
- 124,4,0,124,0,0,100,5,0,124,1,0,100,6,0,124,
- 5,0,131,1,2,83,124,3,0,100,4,0,107,8,0,114,
- 181,0,116,0,0,124,1,0,100,7,0,131,2,0,114,175,
- 0,121,19,0,124,1,0,106,3,0,124,0,0,131,1,0,
- 125,3,0,87,113,181,0,4,116,4,0,107,10,0,114,171,
- 0,1,1,1,100,4,0,125,3,0,89,113,181,0,88,110,
- 6,0,100,8,0,125,3,0,116,5,0,124,0,0,124,1,
- 0,100,9,0,124,2,0,100,7,0,124,3,0,131,2,2,
- 83,41,10,122,53,82,101,116,117,114,110,32,97,32,109,111,
- 100,117,108,101,32,115,112,101,99,32,98,97,115,101,100,32,
- 111,110,32,118,97,114,105,111,117,115,32,108,111,97,100,101,
- 114,32,109,101,116,104,111,100,115,46,90,12,103,101,116,95,
- 102,105,108,101,110,97,109,101,114,45,0,0,0,41,1,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,78,114,99,0,0,0,114,110,
- 0,0,0,114,109,0,0,0,70,114,107,0,0,0,41,6,
- 114,4,0,0,0,114,120,0,0,0,114,128,0,0,0,114,
- 109,0,0,0,114,77,0,0,0,114,106,0,0,0,41,6,
- 114,15,0,0,0,114,99,0,0,0,114,107,0,0,0,114,
- 109,0,0,0,114,128,0,0,0,90,6,115,101,97,114,99,
- 104,114,10,0,0,0,114,10,0,0,0,114,11,0,0,0,
- 114,85,0,0,0,177,1,0,0,115,30,0,0,0,0,2,
- 15,1,16,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,85,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,107,0,0,0,70,84,41,13,114,95,0,
- 0,0,114,96,0,0,0,114,1,0,0,0,114,91,0,0,
- 0,114,98,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,106,0,0,0,
- 114,111,0,0,0,114,116,0,0,0,114,110,0,0,0,41,
- 8,114,89,0,0,0,114,99,0,0,0,114,107,0,0,0,
- 114,88,0,0,0,114,15,0,0,0,90,8,108,111,99,97,
- 116,105,111,110,114,116,0,0,0,114,110,0,0,0,114,10,
- 0,0,0,114,10,0,0,0,114,11,0,0,0,218,17,95,
- 115,112,101,99,95,102,114,111,109,95,109,111,100,117,108,101,
- 203,1,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,132,0,0,0,218,8,111,118,101,114,114,105,100,101,
- 70,99,2,0,0,0,1,0,0,0,5,0,0,0,59,0,
- 0,0,67,0,0,0,115,43,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,210,0,124,0,0,106,
- 4,0,125,3,0,124,3,0,100,0,0,107,8,0,114,176,
- 0,124,0,0,106,5,0,100,0,0,107,9,0,114,176,0,
- 100,3,0,100,4,0,108,6,0,109,7,0,125,4,0,1,
- 124,4,0,106,8,0,124,4,0,131,1,0,125,3,0,124,
- 0,0,106,5,0,124,3,0,95,9,0,121,13,0,124,3,
- 0,124,1,0,95,10,0,87,110,18,0,4,116,3,0,107,
- 10,0,114,209,0,1,1,1,89,110,1,0,88,124,2,0,
- 115,240,0,116,0,0,124,1,0,100,5,0,100,0,0,131,
- 3,0,100,0,0,107,8,0,114,21,1,121,16,0,124,0,
- 0,106,11,0,124,1,0,95,12,0,87,110,18,0,4,116,
- 3,0,107,10,0,114,20,1,1,1,1,89,110,1,0,88,
- 121,13,0,124,0,0,124,1,0,95,13,0,87,110,18,0,
- 4,116,3,0,107,10,0,114,54,1,1,1,1,89,110,1,
- 0,88,124,2,0,115,85,1,116,0,0,124,1,0,100,6,
- 0,100,0,0,131,3,0,100,0,0,107,8,0,114,137,1,
- 124,0,0,106,5,0,100,0,0,107,9,0,114,137,1,121,
- 16,0,124,0,0,106,5,0,124,1,0,95,14,0,87,110,
- 18,0,4,116,3,0,107,10,0,114,136,1,1,1,1,89,
- 110,1,0,88,124,0,0,106,15,0,114,39,2,124,2,0,
- 115,176,1,116,0,0,124,1,0,100,7,0,100,0,0,131,
- 3,0,100,0,0,107,8,0,114,213,1,121,16,0,124,0,
- 0,106,16,0,124,1,0,95,17,0,87,110,18,0,4,116,
- 3,0,107,10,0,114,212,1,1,1,1,89,110,1,0,88,
- 124,2,0,115,243,1,116,0,0,124,1,0,100,8,0,100,
- 0,0,131,3,0,100,0,0,107,8,0,114,39,2,124,0,
- 0,106,18,0,100,0,0,107,9,0,114,39,2,121,16,0,
- 124,0,0,106,18,0,124,1,0,95,19,0,87,110,18,0,
- 4,116,3,0,107,10,0,114,38,2,1,1,1,89,110,1,
- 0,88,124,1,0,83,41,9,78,114,1,0,0,0,114,91,
- 0,0,0,114,45,0,0,0,41,1,218,16,95,78,97,109,
- 101,115,112,97,99,101,76,111,97,100,101,114,218,11,95,95,
- 112,97,99,107,97,103,101,95,95,114,131,0,0,0,114,98,
- 0,0,0,114,129,0,0,0,41,20,114,6,0,0,0,114,
- 15,0,0,0,114,1,0,0,0,114,96,0,0,0,114,99,
- 0,0,0,114,110,0,0,0,114,120,0,0,0,114,134,0,
- 0,0,218,7,95,95,110,101,119,95,95,90,5,95,112,97,
- 116,104,114,91,0,0,0,114,123,0,0,0,114,135,0,0,
- 0,114,95,0,0,0,114,131,0,0,0,114,117,0,0,0,
- 114,107,0,0,0,114,98,0,0,0,114,116,0,0,0,114,
- 129,0,0,0,41,5,114,88,0,0,0,114,89,0,0,0,
- 114,133,0,0,0,114,99,0,0,0,114,134,0,0,0,114,
- 10,0,0,0,114,10,0,0,0,114,11,0,0,0,218,18,
- 95,105,110,105,116,95,109,111,100,117,108,101,95,97,116,116,
- 114,115,248,1,0,0,115,88,0,0,0,0,4,30,1,3,
- 1,16,1,13,1,5,2,30,1,9,1,12,2,15,1,16,
- 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,137,0,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,233,2,0,0,0,41,9,114,4,0,0,0,
- 114,99,0,0,0,114,138,0,0,0,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,114,
- 16,0,0,0,114,15,0,0,0,114,137,0,0,0,41,2,
- 114,88,0,0,0,114,89,0,0,0,114,10,0,0,0,114,
- 10,0,0,0,114,11,0,0,0,218,16,109,111,100,117,108,
- 101,95,102,114,111,109,95,115,112,101,99,49,2,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,144,0,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,93,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,15,0,0,0,114,107,0,0,0,114,99,0,0,0,114,
- 50,0,0,0,114,117,0,0,0,41,2,114,88,0,0,0,
- 114,15,0,0,0,114,10,0,0,0,114,10,0,0,0,114,
- 11,0,0,0,114,97,0,0,0,67,2,0,0,115,16,0,
- 0,0,0,3,30,1,15,1,15,1,13,2,22,2,9,1,
- 19,2,114,97,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,15,0,0,0,78,122,14,109,105,115,115,
- 105,110,103,32,108,111,97,100,101,114,114,133,0,0,0,84,
- 114,139,0,0,0,41,15,114,15,0,0,0,114,57,0,0,
- 0,218,12,97,99,113,117,105,114,101,95,108,111,99,107,114,
- 54,0,0,0,114,14,0,0,0,114,21,0,0,0,114,42,
- 0,0,0,114,50,0,0,0,114,77,0,0,0,114,99,0,
- 0,0,114,110,0,0,0,114,137,0,0,0,114,4,0,0,
- 0,218,11,108,111,97,100,95,109,111,100,117,108,101,114,139,
- 0,0,0,41,4,114,88,0,0,0,114,89,0,0,0,114,
- 15,0,0,0,218,3,109,115,103,114,10,0,0,0,114,10,
- 0,0,0,114,11,0,0,0,114,86,0,0,0,84,2,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,86,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,
+ 17,95,115,112,101,99,95,102,114,111,109,95,109,111,100,117,
+ 108,101,203,1,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,132,0,0,0,218,8,111,118,101,114,114,105,
+ 100,101,70,99,2,0,0,0,1,0,0,0,5,0,0,0,
+ 59,0,0,0,67,0,0,0,115,43,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,210,0,124,0,
+ 0,106,4,0,125,3,0,124,3,0,100,0,0,107,8,0,
+ 114,176,0,124,0,0,106,5,0,100,0,0,107,9,0,114,
+ 176,0,100,3,0,100,4,0,108,6,0,109,7,0,125,4,
+ 0,1,124,4,0,106,8,0,124,4,0,131,1,0,125,3,
+ 0,124,0,0,106,5,0,124,3,0,95,9,0,121,13,0,
+ 124,3,0,124,1,0,95,10,0,87,110,18,0,4,116,3,
+ 0,107,10,0,114,209,0,1,1,1,89,110,1,0,88,124,
+ 2,0,115,240,0,116,0,0,124,1,0,100,5,0,100,0,
+ 0,131,3,0,100,0,0,107,8,0,114,21,1,121,16,0,
+ 124,0,0,106,11,0,124,1,0,95,12,0,87,110,18,0,
+ 4,116,3,0,107,10,0,114,20,1,1,1,1,89,110,1,
+ 0,88,121,13,0,124,0,0,124,1,0,95,13,0,87,110,
+ 18,0,4,116,3,0,107,10,0,114,54,1,1,1,1,89,
+ 110,1,0,88,124,2,0,115,85,1,116,0,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,91,0,0,0,
- 114,135,0,0,0,114,131,0,0,0,114,121,0,0,0,114,
- 33,0,0,0,114,95,0,0,0,41,13,114,99,0,0,0,
- 114,146,0,0,0,114,15,0,0,0,114,14,0,0,0,114,
- 21,0,0,0,114,6,0,0,0,114,91,0,0,0,114,96,
- 0,0,0,114,1,0,0,0,114,135,0,0,0,114,4,0,
- 0,0,114,122,0,0,0,114,95,0,0,0,41,2,114,88,
- 0,0,0,114,89,0,0,0,114,10,0,0,0,114,10,0,
- 0,0,114,11,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,109,2,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,148,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,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,139,0,0,0,122,14,109,105,115,115,105,110,
- 103,32,108,111,97,100,101,114,114,15,0,0,0,41,11,114,
- 99,0,0,0,114,4,0,0,0,114,148,0,0,0,114,144,
- 0,0,0,114,102,0,0,0,114,110,0,0,0,114,77,0,
- 0,0,114,15,0,0,0,114,139,0,0,0,114,14,0,0,
- 0,114,21,0,0,0,41,2,114,88,0,0,0,114,89,0,
- 0,0,114,10,0,0,0,114,10,0,0,0,114,11,0,0,
- 0,218,14,95,108,111,97,100,95,117,110,108,111,99,107,101,
- 100,138,2,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,149,
- 0,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,57,0,0,0,114,145,0,0,0,114,54,0,0,0,
- 114,15,0,0,0,114,149,0,0,0,41,1,114,88,0,0,
+ 137,1,124,0,0,106,5,0,100,0,0,107,9,0,114,137,
+ 1,121,16,0,124,0,0,106,5,0,124,1,0,95,14,0,
+ 87,110,18,0,4,116,3,0,107,10,0,114,136,1,1,1,
+ 1,89,110,1,0,88,124,0,0,106,15,0,114,39,2,124,
+ 2,0,115,176,1,116,0,0,124,1,0,100,7,0,100,0,
+ 0,131,3,0,100,0,0,107,8,0,114,213,1,121,16,0,
+ 124,0,0,106,16,0,124,1,0,95,17,0,87,110,18,0,
+ 4,116,3,0,107,10,0,114,212,1,1,1,1,89,110,1,
+ 0,88,124,2,0,115,243,1,116,0,0,124,1,0,100,8,
+ 0,100,0,0,131,3,0,100,0,0,107,8,0,114,39,2,
+ 124,0,0,106,18,0,100,0,0,107,9,0,114,39,2,121,
+ 16,0,124,0,0,106,18,0,124,1,0,95,19,0,87,110,
+ 18,0,4,116,3,0,107,10,0,114,38,2,1,1,1,89,
+ 110,1,0,88,124,1,0,83,41,9,78,114,1,0,0,0,
+ 114,91,0,0,0,114,45,0,0,0,41,1,218,16,95,78,
+ 97,109,101,115,112,97,99,101,76,111,97,100,101,114,218,11,
+ 95,95,112,97,99,107,97,103,101,95,95,114,131,0,0,0,
+ 114,98,0,0,0,114,129,0,0,0,41,20,114,6,0,0,
+ 0,114,15,0,0,0,114,1,0,0,0,114,96,0,0,0,
+ 114,99,0,0,0,114,110,0,0,0,114,120,0,0,0,114,
+ 134,0,0,0,218,7,95,95,110,101,119,95,95,90,5,95,
+ 112,97,116,104,114,91,0,0,0,114,123,0,0,0,114,135,
+ 0,0,0,114,95,0,0,0,114,131,0,0,0,114,117,0,
+ 0,0,114,107,0,0,0,114,98,0,0,0,114,116,0,0,
+ 0,114,129,0,0,0,41,5,114,88,0,0,0,114,89,0,
+ 0,0,114,133,0,0,0,114,99,0,0,0,114,134,0,0,
0,114,10,0,0,0,114,10,0,0,0,114,11,0,0,0,
- 114,87,0,0,0,161,2,0,0,115,6,0,0,0,0,9,
- 10,1,16,1,114,87,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,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,50,0,0,0,114,
- 1,0,0,0,41,1,114,89,0,0,0,114,10,0,0,0,
- 114,10,0,0,0,114,11,0,0,0,114,92,0,0,0,186,
- 2,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,
- 107,0,0,0,122,8,98,117,105,108,116,45,105,110,41,3,
- 114,57,0,0,0,90,10,105,115,95,98,117,105,108,116,105,
- 110,114,85,0,0,0,41,4,218,3,99,108,115,114,78,0,
- 0,0,218,4,112,97,116,104,218,6,116,97,114,103,101,116,
- 114,10,0,0,0,114,10,0,0,0,114,11,0,0,0,218,
- 9,102,105,110,100,95,115,112,101,99,195,2,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,154,0,0,0,114,99,0,0,0,41,4,114,151,0,
- 0,0,114,78,0,0,0,114,152,0,0,0,114,88,0,0,
- 0,114,10,0,0,0,114,10,0,0,0,114,11,0,0,0,
- 218,11,102,105,110,100,95,109,111,100,117,108,101,204,2,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,218,0,41,6,114,17,0,0,
- 0,114,65,0,0,0,114,57,0,0,0,90,12,105,110,105,
- 116,95,98,117,105,108,116,105,110,114,91,0,0,0,114,135,
- 0,0,0,41,3,114,151,0,0,0,114,78,0,0,0,114,
- 89,0,0,0,114,10,0,0,0,114,10,0,0,0,114,11,
- 0,0,0,114,146,0,0,0,216,2,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,10,0,0,0,41,2,114,151,0,0,0,
- 114,78,0,0,0,114,10,0,0,0,114,10,0,0,0,114,
- 11,0,0,0,218,8,103,101,116,95,99,111,100,101,228,2,
- 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,10,
- 0,0,0,41,2,114,151,0,0,0,114,78,0,0,0,114,
- 10,0,0,0,114,10,0,0,0,114,11,0,0,0,218,10,
- 103,101,116,95,115,111,117,114,99,101,234,2,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,10,0,0,0,41,2,114,
- 151,0,0,0,114,78,0,0,0,114,10,0,0,0,114,10,
- 0,0,0,114,11,0,0,0,114,109,0,0,0,240,2,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,1,0,0,0,114,0,0,0,0,
- 114,2,0,0,0,114,3,0,0,0,218,12,115,116,97,116,
- 105,99,109,101,116,104,111,100,114,92,0,0,0,218,11,99,
- 108,97,115,115,109,101,116,104,111,100,114,154,0,0,0,114,
- 155,0,0,0,114,81,0,0,0,114,146,0,0,0,114,157,
- 0,0,0,114,158,0,0,0,114,109,0,0,0,114,10,0,
- 0,0,114,10,0,0,0,114,10,0,0,0,114,11,0,0,
- 0,114,150,0,0,0,177,2,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,150,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,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,50,0,0,0,114,
- 1,0,0,0,41,1,218,1,109,114,10,0,0,0,114,10,
- 0,0,0,114,11,0,0,0,114,92,0,0,0,0,3,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,107,0,0,
- 0,90,6,102,114,111,122,101,110,41,3,114,57,0,0,0,
- 114,82,0,0,0,114,85,0,0,0,41,4,114,151,0,0,
- 0,114,78,0,0,0,114,152,0,0,0,114,153,0,0,0,
+ 218,18,95,105,110,105,116,95,109,111,100,117,108,101,95,97,
+ 116,116,114,115,248,1,0,0,115,88,0,0,0,0,4,30,
+ 1,3,1,16,1,13,1,5,2,30,1,9,1,12,2,15,
+ 1,16,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,137,0,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,233,2,0,0,0,41,9,114,4,0,
+ 0,0,114,99,0,0,0,114,138,0,0,0,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,114,16,0,0,0,114,15,0,0,0,114,137,0,0,0,
+ 41,2,114,88,0,0,0,114,89,0,0,0,114,10,0,0,
+ 0,114,10,0,0,0,114,11,0,0,0,218,16,109,111,100,
+ 117,108,101,95,102,114,111,109,95,115,112,101,99,49,2,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,144,0,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,93,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,15,0,0,0,114,107,0,0,0,114,99,0,0,
+ 0,114,50,0,0,0,114,117,0,0,0,41,2,114,88,0,
+ 0,0,114,15,0,0,0,114,10,0,0,0,114,10,0,0,
+ 0,114,11,0,0,0,114,97,0,0,0,67,2,0,0,115,
+ 16,0,0,0,0,3,30,1,15,1,15,1,13,2,22,2,
+ 9,1,19,2,114,97,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,15,0,0,0,78,122,14,109,
+ 105,115,115,105,110,103,32,108,111,97,100,101,114,114,133,0,
+ 0,0,84,114,139,0,0,0,41,15,114,15,0,0,0,114,
+ 57,0,0,0,218,12,97,99,113,117,105,114,101,95,108,111,
+ 99,107,114,54,0,0,0,114,14,0,0,0,114,21,0,0,
+ 0,114,42,0,0,0,114,50,0,0,0,114,77,0,0,0,
+ 114,99,0,0,0,114,110,0,0,0,114,137,0,0,0,114,
+ 4,0,0,0,218,11,108,111,97,100,95,109,111,100,117,108,
+ 101,114,139,0,0,0,41,4,114,88,0,0,0,114,89,0,
+ 0,0,114,15,0,0,0,218,3,109,115,103,114,10,0,0,
+ 0,114,10,0,0,0,114,11,0,0,0,114,86,0,0,0,
+ 84,2,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,86,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,91,
+ 0,0,0,114,135,0,0,0,114,131,0,0,0,114,121,0,
+ 0,0,114,33,0,0,0,114,95,0,0,0,41,13,114,99,
+ 0,0,0,114,146,0,0,0,114,15,0,0,0,114,14,0,
+ 0,0,114,21,0,0,0,114,6,0,0,0,114,91,0,0,
+ 0,114,96,0,0,0,114,1,0,0,0,114,135,0,0,0,
+ 114,4,0,0,0,114,122,0,0,0,114,95,0,0,0,41,
+ 2,114,88,0,0,0,114,89,0,0,0,114,10,0,0,0,
+ 114,10,0,0,0,114,11,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,109,2,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,148,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,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,139,0,0,0,122,14,109,105,
+ 115,115,105,110,103,32,108,111,97,100,101,114,114,15,0,0,
+ 0,41,11,114,99,0,0,0,114,4,0,0,0,114,148,0,
+ 0,0,114,144,0,0,0,114,102,0,0,0,114,110,0,0,
+ 0,114,77,0,0,0,114,15,0,0,0,114,139,0,0,0,
+ 114,14,0,0,0,114,21,0,0,0,41,2,114,88,0,0,
+ 0,114,89,0,0,0,114,10,0,0,0,114,10,0,0,0,
+ 114,11,0,0,0,218,14,95,108,111,97,100,95,117,110,108,
+ 111,99,107,101,100,138,2,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,149,0,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,57,0,0,0,114,145,0,0,0,
+ 114,54,0,0,0,114,15,0,0,0,114,149,0,0,0,41,
+ 1,114,88,0,0,0,114,10,0,0,0,114,10,0,0,0,
+ 114,11,0,0,0,114,87,0,0,0,161,2,0,0,115,6,
+ 0,0,0,0,9,10,1,16,1,114,87,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,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,
+ 50,0,0,0,114,1,0,0,0,41,1,114,89,0,0,0,
114,10,0,0,0,114,10,0,0,0,114,11,0,0,0,114,
- 154,0,0,0,9,3,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,
+ 92,0,0,0,186,2,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,107,0,0,0,122,8,98,117,105,108,116,
+ 45,105,110,41,3,114,57,0,0,0,90,10,105,115,95,98,
+ 117,105,108,116,105,110,114,85,0,0,0,41,4,218,3,99,
+ 108,115,114,78,0,0,0,218,4,112,97,116,104,218,6,116,
+ 97,114,103,101,116,114,10,0,0,0,114,10,0,0,0,114,
+ 11,0,0,0,218,9,102,105,110,100,95,115,112,101,99,195,
+ 2,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,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,57,0,0,0,114,82,0,0,0,41,3,114,151,
- 0,0,0,114,78,0,0,0,114,152,0,0,0,114,10,0,
- 0,0,114,10,0,0,0,114,11,0,0,0,114,155,0,0,
- 0,16,3,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,10,0,0,0,41,2,114,151,0,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,154,0,0,0,114,99,0,0,0,
+ 41,4,114,151,0,0,0,114,78,0,0,0,114,152,0,0,
0,114,88,0,0,0,114,10,0,0,0,114,10,0,0,0,
- 114,11,0,0,0,114,138,0,0,0,25,3,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,15,0,0,0,41,10,114,95,
- 0,0,0,114,15,0,0,0,114,57,0,0,0,114,82,0,
- 0,0,114,77,0,0,0,114,50,0,0,0,114,65,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,7,0,0,0,41,
- 3,114,89,0,0,0,114,15,0,0,0,218,4,99,111,100,
- 101,114,10,0,0,0,114,10,0,0,0,114,11,0,0,0,
- 114,139,0,0,0,29,3,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,3,
- 0,0,0,3,0,0,0,67,0,0,0,115,29,0,0,0,
- 100,1,0,100,2,0,108,0,0,109,1,0,125,2,0,1,
- 124,2,0,124,0,0,124,1,0,131,2,0,83,41,3,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,
- 114,45,0,0,0,41,1,114,90,0,0,0,41,2,114,120,
- 0,0,0,114,90,0,0,0,41,3,114,151,0,0,0,114,
- 78,0,0,0,114,90,0,0,0,114,10,0,0,0,114,10,
- 0,0,0,114,11,0,0,0,114,146,0,0,0,38,3,0,
- 0,115,4,0,0,0,0,7,16,1,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,57,0,0,0,114,163,0,0,0,41,2,114,151,0,0,
- 0,114,78,0,0,0,114,10,0,0,0,114,10,0,0,0,
- 114,11,0,0,0,114,157,0,0,0,48,3,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,
+ 114,11,0,0,0,218,11,102,105,110,100,95,109,111,100,117,
+ 108,101,204,2,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,218,0,
+ 41,6,114,17,0,0,0,114,65,0,0,0,114,57,0,0,
+ 0,90,12,105,110,105,116,95,98,117,105,108,116,105,110,114,
+ 91,0,0,0,114,135,0,0,0,41,3,114,151,0,0,0,
+ 114,78,0,0,0,114,89,0,0,0,114,10,0,0,0,114,
+ 10,0,0,0,114,11,0,0,0,114,146,0,0,0,216,2,
+ 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,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,10,0,0,0,41,2,114,151,
- 0,0,0,114,78,0,0,0,114,10,0,0,0,114,10,0,
- 0,0,114,11,0,0,0,114,158,0,0,0,54,3,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,57,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,151,0,0,0,114,78,0,0,
- 0,114,10,0,0,0,114,10,0,0,0,114,11,0,0,0,
- 114,109,0,0,0,60,3,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,1,0,
- 0,0,114,0,0,0,0,114,2,0,0,0,114,3,0,0,
- 0,114,159,0,0,0,114,92,0,0,0,114,160,0,0,0,
- 114,154,0,0,0,114,155,0,0,0,114,138,0,0,0,114,
- 139,0,0,0,114,146,0,0,0,114,84,0,0,0,114,157,
- 0,0,0,114,158,0,0,0,114,109,0,0,0,114,10,0,
- 0,0,114,10,0,0,0,114,10,0,0,0,114,11,0,0,
- 0,114,161,0,0,0,247,2,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,10,3,1,21,5,3,1,21,5,3,1,114,161,0,
- 0,0,99,0,0,0,0,0,0,0,0,0,0,0,0,2,
- 0,0,0,64,0,0,0,115,46,0,0,0,101,0,0,90,
- 1,0,100,0,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,57,0,
- 0,0,114,145,0,0,0,41,1,114,19,0,0,0,114,10,
- 0,0,0,114,10,0,0,0,114,11,0,0,0,114,23,0,
- 0,0,73,3,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,57,0,0,0,114,58,0,0,0,
- 41,4,114,19,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,10,0,0,0,
- 114,10,0,0,0,114,11,0,0,0,114,30,0,0,0,77,
- 3,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,1,0,0,0,114,
- 0,0,0,0,114,2,0,0,0,114,3,0,0,0,114,23,
- 0,0,0,114,30,0,0,0,114,10,0,0,0,114,10,0,
- 0,0,114,10,0,0,0,114,11,0,0,0,114,166,0,0,
- 0,69,3,0,0,115,6,0,0,0,12,2,6,2,12,4,
- 114,166,0,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,121,0,
- 0,0,114,45,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,33,0,0,0,
- 122,5,123,125,46,123,125,41,4,218,6,114,115,112,108,105,
- 116,218,3,108,101,110,218,10,86,97,108,117,101,69,114,114,
- 111,114,114,50,0,0,0,41,5,114,15,0,0,0,218,7,
- 112,97,99,107,97,103,101,218,5,108,101,118,101,108,90,4,
- 98,105,116,115,90,4,98,97,115,101,114,10,0,0,0,114,
- 10,0,0,0,114,11,0,0,0,218,13,95,114,101,115,111,
- 108,118,101,95,110,97,109,101,82,3,0,0,115,10,0,0,
- 0,0,2,22,1,18,1,12,1,10,1,114,172,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,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,155,
- 0,0,0,114,85,0,0,0,41,4,218,6,102,105,110,100,
- 101,114,114,15,0,0,0,114,152,0,0,0,114,99,0,0,
- 0,114,10,0,0,0,114,10,0,0,0,114,11,0,0,0,
- 218,17,95,102,105,110,100,95,115,112,101,99,95,108,101,103,
- 97,99,121,91,3,0,0,115,8,0,0,0,0,3,18,1,
- 12,1,4,1,114,174,0,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,14,0,0,0,218,9,109,101,116,97,95,112,97,
- 116,104,114,141,0,0,0,114,142,0,0,0,218,13,73,109,
- 112,111,114,116,87,97,114,110,105,110,103,114,21,0,0,0,
- 114,166,0,0,0,114,154,0,0,0,114,96,0,0,0,114,
- 174,0,0,0,114,95,0,0,0,41,9,114,15,0,0,0,
- 114,152,0,0,0,114,153,0,0,0,90,9,105,115,95,114,
- 101,108,111,97,100,114,173,0,0,0,114,154,0,0,0,114,
- 88,0,0,0,114,89,0,0,0,114,95,0,0,0,114,10,
- 0,0,0,114,10,0,0,0,114,11,0,0,0,218,10,95,
- 102,105,110,100,95,115,112,101,99,100,3,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,177,0,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,33,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,218,10,105,115,105,110,115,116,97,110,99,101,
- 218,3,115,116,114,218,9,84,121,112,101,69,114,114,111,114,
- 114,50,0,0,0,114,13,0,0,0,114,169,0,0,0,114,
- 14,0,0,0,114,21,0,0,0,218,11,83,121,115,116,101,
- 109,69,114,114,111,114,41,4,114,15,0,0,0,114,170,0,
- 0,0,114,171,0,0,0,114,147,0,0,0,114,10,0,0,
- 0,114,10,0,0,0,114,11,0,0,0,218,13,95,115,97,
- 110,105,116,121,95,99,104,101,99,107,140,3,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,182,0,0,0,
- 122,16,78,111,32,109,111,100,117,108,101,32,110,97,109,101,
- 100,32,122,4,123,33,114,125,99,2,0,0,0,0,0,0,
- 0,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,121,0,
- 0,0,114,33,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,15,0,0,0,114,140,0,0,0,41,12,114,122,0,0,
- 0,114,14,0,0,0,114,21,0,0,0,114,65,0,0,0,
- 114,131,0,0,0,114,96,0,0,0,218,8,95,69,82,82,
- 95,77,83,71,114,50,0,0,0,114,77,0,0,0,114,177,
- 0,0,0,114,149,0,0,0,114,5,0,0,0,41,8,114,
- 15,0,0,0,218,7,105,109,112,111,114,116,95,114,152,0,
- 0,0,114,123,0,0,0,90,13,112,97,114,101,110,116,95,
- 109,111,100,117,108,101,114,147,0,0,0,114,88,0,0,0,
- 114,89,0,0,0,114,10,0,0,0,114,10,0,0,0,114,
- 11,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,160,3,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,185,0,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,54,0,0,0,114,185,0,0,0,41,2,114,15,0,0,
- 0,114,184,0,0,0,114,10,0,0,0,114,10,0,0,0,
- 114,11,0,0,0,218,14,95,102,105,110,100,95,97,110,100,
- 95,108,111,97,100,187,3,0,0,115,4,0,0,0,0,2,
- 13,1,114,186,0,0,0,114,33,0,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,33,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,15,0,0,0,41,12,114,182,0,0,
- 0,114,172,0,0,0,114,57,0,0,0,114,145,0,0,0,
- 114,14,0,0,0,114,21,0,0,0,114,186,0,0,0,218,
- 11,95,103,99,100,95,105,109,112,111,114,116,114,58,0,0,
- 0,114,50,0,0,0,114,77,0,0,0,114,63,0,0,0,
- 41,5,114,15,0,0,0,114,170,0,0,0,114,171,0,0,
- 0,114,89,0,0,0,114,74,0,0,0,114,10,0,0,0,
- 114,10,0,0,0,114,11,0,0,0,114,187,0,0,0,193,
- 3,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,187,0,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,131,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,
- 4,0,0,0,114,130,0,0,0,218,6,114,101,109,111,118,
- 101,218,6,101,120,116,101,110,100,114,189,0,0,0,114,50,
- 0,0,0,114,1,0,0,0,114,65,0,0,0,114,77,0,
- 0,0,114,179,0,0,0,114,71,0,0,0,218,15,95,69,
- 82,82,95,77,83,71,95,80,82,69,70,73,88,114,15,0,
- 0,0,41,6,114,89,0,0,0,218,8,102,114,111,109,108,
- 105,115,116,114,184,0,0,0,218,1,120,90,9,102,114,111,
- 109,95,110,97,109,101,90,3,101,120,99,114,10,0,0,0,
- 114,10,0,0,0,114,11,0,0,0,218,16,95,104,97,110,
- 100,108,101,95,102,114,111,109,108,105,115,116,217,3,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,195,0,0,0,99,1,0,0,
+ 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,10,0,0,0,41,
+ 2,114,151,0,0,0,114,78,0,0,0,114,10,0,0,0,
+ 114,10,0,0,0,114,11,0,0,0,218,8,103,101,116,95,
+ 99,111,100,101,228,2,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,10,0,0,0,41,2,114,151,0,0,0,
+ 114,78,0,0,0,114,10,0,0,0,114,10,0,0,0,114,
+ 11,0,0,0,218,10,103,101,116,95,115,111,117,114,99,101,
+ 234,2,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,10,
+ 0,0,0,41,2,114,151,0,0,0,114,78,0,0,0,114,
+ 10,0,0,0,114,10,0,0,0,114,11,0,0,0,114,109,
+ 0,0,0,240,2,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,1,0,0,
+ 0,114,0,0,0,0,114,2,0,0,0,114,3,0,0,0,
+ 218,12,115,116,97,116,105,99,109,101,116,104,111,100,114,92,
+ 0,0,0,218,11,99,108,97,115,115,109,101,116,104,111,100,
+ 114,154,0,0,0,114,155,0,0,0,114,81,0,0,0,114,
+ 146,0,0,0,114,157,0,0,0,114,158,0,0,0,114,109,
+ 0,0,0,114,10,0,0,0,114,10,0,0,0,114,10,0,
+ 0,0,114,11,0,0,0,114,150,0,0,0,177,2,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,150,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,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,50,0,0,0,114,1,0,0,0,41,1,218,1,109,114,
+ 10,0,0,0,114,10,0,0,0,114,11,0,0,0,114,92,
+ 0,0,0,0,3,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,107,0,0,0,90,6,102,114,111,122,101,110,41,
+ 3,114,57,0,0,0,114,82,0,0,0,114,85,0,0,0,
+ 41,4,114,151,0,0,0,114,78,0,0,0,114,152,0,0,
+ 0,114,153,0,0,0,114,10,0,0,0,114,10,0,0,0,
+ 114,11,0,0,0,114,154,0,0,0,9,3,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,57,0,0,0,114,82,0,
+ 0,0,41,3,114,151,0,0,0,114,78,0,0,0,114,152,
+ 0,0,0,114,10,0,0,0,114,10,0,0,0,114,11,0,
+ 0,0,114,155,0,0,0,16,3,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,10,0,0,0,
+ 41,2,114,151,0,0,0,114,88,0,0,0,114,10,0,0,
+ 0,114,10,0,0,0,114,11,0,0,0,114,138,0,0,0,
+ 25,3,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,15,0,
+ 0,0,41,10,114,95,0,0,0,114,15,0,0,0,114,57,
+ 0,0,0,114,82,0,0,0,114,77,0,0,0,114,50,0,
+ 0,0,114,65,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,7,0,0,0,41,3,114,89,0,0,0,114,15,0,0,
+ 0,218,4,99,111,100,101,114,10,0,0,0,114,10,0,0,
+ 0,114,11,0,0,0,114,139,0,0,0,29,3,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,3,0,0,0,3,0,0,0,67,0,0,
+ 0,115,29,0,0,0,100,1,0,100,2,0,108,0,0,109,
+ 1,0,125,2,0,1,124,2,0,124,0,0,124,1,0,131,
+ 2,0,83,41,3,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,114,45,0,0,0,41,1,114,90,0,
+ 0,0,41,2,114,120,0,0,0,114,90,0,0,0,41,3,
+ 114,151,0,0,0,114,78,0,0,0,114,90,0,0,0,114,
+ 10,0,0,0,114,10,0,0,0,114,11,0,0,0,114,146,
+ 0,0,0,38,3,0,0,115,4,0,0,0,0,7,16,1,
+ 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,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,135,0,0,0,78,114,
- 1,0,0,0,114,131,0,0,0,114,121,0,0,0,114,33,
- 0,0,0,41,2,114,42,0,0,0,114,122,0,0,0,41,
- 2,218,7,103,108,111,98,97,108,115,114,170,0,0,0,114,
- 10,0,0,0,114,10,0,0,0,114,11,0,0,0,218,17,
- 95,99,97,108,99,95,95,95,112,97,99,107,97,103,101,95,
- 95,249,3,0,0,115,12,0,0,0,0,7,15,1,12,1,
- 10,1,12,1,19,1,114,197,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,33,0,0,0,78,114,121,0,0,0,
- 41,8,114,187,0,0,0,114,197,0,0,0,218,9,112,97,
- 114,116,105,116,105,111,110,114,168,0,0,0,114,14,0,0,
- 0,114,21,0,0,0,114,1,0,0,0,114,195,0,0,0,
- 41,9,114,15,0,0,0,114,196,0,0,0,218,6,108,111,
- 99,97,108,115,114,193,0,0,0,114,171,0,0,0,114,89,
- 0,0,0,90,8,103,108,111,98,97,108,115,95,114,170,0,
- 0,0,90,7,99,117,116,95,111,102,102,114,10,0,0,0,
- 114,10,0,0,0,114,11,0,0,0,218,10,95,95,105,109,
- 112,111,114,116,95,95,8,4,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,200,0,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,150,0,
- 0,0,114,154,0,0,0,114,77,0,0,0,114,149,0,0,
- 0,41,2,114,15,0,0,0,114,88,0,0,0,114,10,0,
- 0,0,114,10,0,0,0,114,11,0,0,0,218,18,95,98,
- 117,105,108,116,105,110,95,102,114,111,109,95,110,97,109,101,
- 43,4,0,0,115,8,0,0,0,0,1,15,1,12,1,16,
- 1,114,201,0,0,0,99,2,0,0,0,0,0,0,0,12,
- 0,0,0,12,0,0,0,67,0,0,0,115,74,1,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,5,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,121,
- 16,0,116,13,0,100,2,0,131,1,0,125,10,0,87,110,
- 24,0,4,116,15,0,107,10,0,114,25,1,1,1,1,100,
- 3,0,125,10,0,89,110,1,0,88,116,14,0,124,7,0,
- 100,2,0,124,10,0,131,3,0,1,116,13,0,100,4,0,
- 131,1,0,125,11,0,116,14,0,124,7,0,100,4,0,124,
- 11,0,131,3,0,1,100,3,0,83,41,6,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,141,0,0,0,114,34,0,
- 0,0,78,114,62,0,0,0,41,1,122,9,95,119,97,114,
- 110,105,110,103,115,41,16,114,57,0,0,0,114,14,0,0,
- 0,114,13,0,0,0,114,21,0,0,0,218,5,105,116,101,
- 109,115,114,178,0,0,0,114,76,0,0,0,114,150,0,0,
- 0,114,82,0,0,0,114,161,0,0,0,114,132,0,0,0,
- 114,137,0,0,0,114,1,0,0,0,114,201,0,0,0,114,
- 5,0,0,0,114,77,0,0,0,41,12,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,15,0,0,0,114,89,0,0,0,114,99,0,0,0,
- 114,88,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,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,114,
- 10,0,0,0,114,10,0,0,0,114,11,0,0,0,218,6,
- 95,115,101,116,117,112,50,4,0,0,115,50,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,3,1,16,1,13,2,11,1,16,3,12,
- 1,114,205,0,0,0,99,2,0,0,0,0,0,0,0,3,
- 0,0,0,3,0,0,0,67,0,0,0,115,97,0,0,0,
- 116,0,0,124,0,0,124,1,0,131,2,0,1,116,1,0,
- 106,2,0,106,3,0,116,4,0,131,1,0,1,116,1,0,
- 106,2,0,106,3,0,116,5,0,131,1,0,1,100,1,0,
- 100,2,0,108,6,0,125,2,0,124,2,0,106,7,0,116,
- 1,0,106,8,0,116,9,0,25,131,1,0,1,124,2,0,
- 116,1,0,106,8,0,116,9,0,25,95,10,0,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,33,0,0,0,78,41,11,114,
- 205,0,0,0,114,14,0,0,0,114,175,0,0,0,114,113,
- 0,0,0,114,150,0,0,0,114,161,0,0,0,114,119,0,
- 0,0,218,8,95,105,110,115,116,97,108,108,114,21,0,0,
- 0,114,1,0,0,0,114,120,0,0,0,41,3,114,203,0,
- 0,0,114,204,0,0,0,114,119,0,0,0,114,10,0,0,
- 0,114,10,0,0,0,114,11,0,0,0,114,206,0,0,0,
- 97,4,0,0,115,12,0,0,0,0,2,13,2,16,1,16,
- 2,12,1,20,1,114,206,0,0,0,41,50,114,3,0,0,
- 0,114,12,0,0,0,114,16,0,0,0,114,17,0,0,0,
- 114,59,0,0,0,114,41,0,0,0,114,48,0,0,0,114,
- 31,0,0,0,114,32,0,0,0,114,53,0,0,0,114,54,
- 0,0,0,114,56,0,0,0,114,63,0,0,0,114,65,0,
- 0,0,114,75,0,0,0,114,81,0,0,0,114,84,0,0,
- 0,114,90,0,0,0,114,101,0,0,0,114,102,0,0,0,
- 114,106,0,0,0,114,85,0,0,0,218,6,111,98,106,101,
- 99,116,90,9,95,80,79,80,85,76,65,84,69,114,132,0,
- 0,0,114,137,0,0,0,114,144,0,0,0,114,97,0,0,
- 0,114,86,0,0,0,114,148,0,0,0,114,149,0,0,0,
- 114,87,0,0,0,114,150,0,0,0,114,161,0,0,0,114,
- 166,0,0,0,114,172,0,0,0,114,174,0,0,0,114,177,
- 0,0,0,114,182,0,0,0,114,192,0,0,0,114,183,0,
- 0,0,114,185,0,0,0,114,186,0,0,0,114,187,0,0,
- 0,114,195,0,0,0,114,197,0,0,0,114,200,0,0,0,
- 114,201,0,0,0,114,205,0,0,0,114,206,0,0,0,114,
- 10,0,0,0,114,10,0,0,0,114,10,0,0,0,114,11,
- 0,0,0,218,8,60,109,111,100,117,108,101,62,8,0,0,
- 0,115,94,0,0,0,6,17,12,8,12,4,19,20,6,2,
- 6,3,22,4,19,68,19,21,19,19,12,19,12,19,12,11,
- 18,8,12,11,12,12,12,16,12,36,19,27,19,100,24,23,
- 9,3,18,45,18,57,12,18,12,17,12,25,12,29,12,23,
- 12,16,19,70,19,78,19,13,12,9,12,9,15,40,12,17,
- 6,1,10,2,12,27,12,6,18,24,12,32,12,15,24,35,
- 12,7,12,47,
+ 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,57,0,0,0,114,163,0,0,0,
+ 41,2,114,151,0,0,0,114,78,0,0,0,114,10,0,0,
+ 0,114,10,0,0,0,114,11,0,0,0,114,157,0,0,0,
+ 48,3,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,10,0,
+ 0,0,41,2,114,151,0,0,0,114,78,0,0,0,114,10,
+ 0,0,0,114,10,0,0,0,114,11,0,0,0,114,158,0,
+ 0,0,54,3,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,57,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,151,0,
+ 0,0,114,78,0,0,0,114,10,0,0,0,114,10,0,0,
+ 0,114,11,0,0,0,114,109,0,0,0,60,3,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,1,0,0,0,114,0,0,0,0,114,2,0,
+ 0,0,114,3,0,0,0,114,159,0,0,0,114,92,0,0,
+ 0,114,160,0,0,0,114,154,0,0,0,114,155,0,0,0,
+ 114,138,0,0,0,114,139,0,0,0,114,146,0,0,0,114,
+ 84,0,0,0,114,157,0,0,0,114,158,0,0,0,114,109,
+ 0,0,0,114,10,0,0,0,114,10,0,0,0,114,10,0,
+ 0,0,114,11,0,0,0,114,161,0,0,0,247,2,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,10,3,1,21,5,3,1,21,
+ 5,3,1,114,161,0,0,0,99,0,0,0,0,0,0,0,
+ 0,0,0,0,0,2,0,0,0,64,0,0,0,115,46,0,
+ 0,0,101,0,0,90,1,0,100,0,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,57,0,0,0,114,145,0,0,0,41,1,114,
+ 19,0,0,0,114,10,0,0,0,114,10,0,0,0,114,11,
+ 0,0,0,114,23,0,0,0,73,3,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,57,0,0,
+ 0,114,58,0,0,0,41,4,114,19,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,10,0,0,0,114,10,0,0,0,114,11,0,0,0,
+ 114,30,0,0,0,77,3,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,1,0,0,0,114,0,0,0,0,114,2,0,0,0,114,
+ 3,0,0,0,114,23,0,0,0,114,30,0,0,0,114,10,
+ 0,0,0,114,10,0,0,0,114,10,0,0,0,114,11,0,
+ 0,0,114,166,0,0,0,69,3,0,0,115,6,0,0,0,
+ 12,2,6,2,12,4,114,166,0,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,121,0,0,0,114,45,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,33,0,0,0,122,5,123,125,46,123,125,41,4,218,
+ 6,114,115,112,108,105,116,218,3,108,101,110,218,10,86,97,
+ 108,117,101,69,114,114,111,114,114,50,0,0,0,41,5,114,
+ 15,0,0,0,218,7,112,97,99,107,97,103,101,218,5,108,
+ 101,118,101,108,90,4,98,105,116,115,90,4,98,97,115,101,
+ 114,10,0,0,0,114,10,0,0,0,114,11,0,0,0,218,
+ 13,95,114,101,115,111,108,118,101,95,110,97,109,101,82,3,
+ 0,0,115,10,0,0,0,0,2,22,1,18,1,12,1,10,
+ 1,114,172,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,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,155,0,0,0,114,85,0,0,0,41,4,
+ 218,6,102,105,110,100,101,114,114,15,0,0,0,114,152,0,
+ 0,0,114,99,0,0,0,114,10,0,0,0,114,10,0,0,
+ 0,114,11,0,0,0,218,17,95,102,105,110,100,95,115,112,
+ 101,99,95,108,101,103,97,99,121,91,3,0,0,115,8,0,
+ 0,0,0,3,18,1,12,1,4,1,114,174,0,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,14,0,0,0,218,9,
+ 109,101,116,97,95,112,97,116,104,114,141,0,0,0,114,142,
+ 0,0,0,218,13,73,109,112,111,114,116,87,97,114,110,105,
+ 110,103,114,21,0,0,0,114,166,0,0,0,114,154,0,0,
+ 0,114,96,0,0,0,114,174,0,0,0,114,95,0,0,0,
+ 41,9,114,15,0,0,0,114,152,0,0,0,114,153,0,0,
+ 0,90,9,105,115,95,114,101,108,111,97,100,114,173,0,0,
+ 0,114,154,0,0,0,114,88,0,0,0,114,89,0,0,0,
+ 114,95,0,0,0,114,10,0,0,0,114,10,0,0,0,114,
+ 11,0,0,0,218,10,95,102,105,110,100,95,115,112,101,99,
+ 100,3,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,177,0,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,33,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,218,10,105,115,105,
+ 110,115,116,97,110,99,101,218,3,115,116,114,218,9,84,121,
+ 112,101,69,114,114,111,114,114,50,0,0,0,114,13,0,0,
+ 0,114,169,0,0,0,114,14,0,0,0,114,21,0,0,0,
+ 218,11,83,121,115,116,101,109,69,114,114,111,114,41,4,114,
+ 15,0,0,0,114,170,0,0,0,114,171,0,0,0,114,147,
+ 0,0,0,114,10,0,0,0,114,10,0,0,0,114,11,0,
+ 0,0,218,13,95,115,97,110,105,116,121,95,99,104,101,99,
+ 107,140,3,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,182,0,0,0,122,16,78,111,32,109,111,100,117,
+ 108,101,32,110,97,109,101,100,32,122,4,123,33,114,125,99,
+ 2,0,0,0,0,0,0,0,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,121,0,0,0,114,33,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,15,0,0,0,114,140,0,0,
+ 0,41,12,114,122,0,0,0,114,14,0,0,0,114,21,0,
+ 0,0,114,65,0,0,0,114,131,0,0,0,114,96,0,0,
+ 0,218,8,95,69,82,82,95,77,83,71,114,50,0,0,0,
+ 114,77,0,0,0,114,177,0,0,0,114,149,0,0,0,114,
+ 5,0,0,0,41,8,114,15,0,0,0,218,7,105,109,112,
+ 111,114,116,95,114,152,0,0,0,114,123,0,0,0,90,13,
+ 112,97,114,101,110,116,95,109,111,100,117,108,101,114,147,0,
+ 0,0,114,88,0,0,0,114,89,0,0,0,114,10,0,0,
+ 0,114,10,0,0,0,114,11,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,160,3,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,185,0,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,54,0,0,0,114,185,0,
+ 0,0,41,2,114,15,0,0,0,114,184,0,0,0,114,10,
+ 0,0,0,114,10,0,0,0,114,11,0,0,0,218,14,95,
+ 102,105,110,100,95,97,110,100,95,108,111,97,100,187,3,0,
+ 0,115,4,0,0,0,0,2,13,1,114,186,0,0,0,114,
+ 33,0,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,33,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,15,0,
+ 0,0,41,12,114,182,0,0,0,114,172,0,0,0,114,57,
+ 0,0,0,114,145,0,0,0,114,14,0,0,0,114,21,0,
+ 0,0,114,186,0,0,0,218,11,95,103,99,100,95,105,109,
+ 112,111,114,116,114,58,0,0,0,114,50,0,0,0,114,77,
+ 0,0,0,114,63,0,0,0,41,5,114,15,0,0,0,114,
+ 170,0,0,0,114,171,0,0,0,114,89,0,0,0,114,74,
+ 0,0,0,114,10,0,0,0,114,10,0,0,0,114,11,0,
+ 0,0,114,187,0,0,0,193,3,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,187,0,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,131,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,4,0,0,0,114,130,0,0,
+ 0,218,6,114,101,109,111,118,101,218,6,101,120,116,101,110,
+ 100,114,189,0,0,0,114,50,0,0,0,114,1,0,0,0,
+ 114,65,0,0,0,114,77,0,0,0,114,179,0,0,0,114,
+ 71,0,0,0,218,15,95,69,82,82,95,77,83,71,95,80,
+ 82,69,70,73,88,114,15,0,0,0,41,6,114,89,0,0,
+ 0,218,8,102,114,111,109,108,105,115,116,114,184,0,0,0,
+ 218,1,120,90,9,102,114,111,109,95,110,97,109,101,90,3,
+ 101,120,99,114,10,0,0,0,114,10,0,0,0,114,11,0,
+ 0,0,218,16,95,104,97,110,100,108,101,95,102,114,111,109,
+ 108,105,115,116,217,3,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,
+ 195,0,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,135,0,0,0,78,114,1,0,0,0,114,131,0,0,
+ 0,114,121,0,0,0,114,33,0,0,0,41,2,114,42,0,
+ 0,0,114,122,0,0,0,41,2,218,7,103,108,111,98,97,
+ 108,115,114,170,0,0,0,114,10,0,0,0,114,10,0,0,
+ 0,114,11,0,0,0,218,17,95,99,97,108,99,95,95,95,
+ 112,97,99,107,97,103,101,95,95,249,3,0,0,115,12,0,
+ 0,0,0,7,15,1,12,1,10,1,12,1,19,1,114,197,
+ 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,33,0,
+ 0,0,78,114,121,0,0,0,41,8,114,187,0,0,0,114,
+ 197,0,0,0,218,9,112,97,114,116,105,116,105,111,110,114,
+ 168,0,0,0,114,14,0,0,0,114,21,0,0,0,114,1,
+ 0,0,0,114,195,0,0,0,41,9,114,15,0,0,0,114,
+ 196,0,0,0,218,6,108,111,99,97,108,115,114,193,0,0,
+ 0,114,171,0,0,0,114,89,0,0,0,90,8,103,108,111,
+ 98,97,108,115,95,114,170,0,0,0,90,7,99,117,116,95,
+ 111,102,102,114,10,0,0,0,114,10,0,0,0,114,11,0,
+ 0,0,218,10,95,95,105,109,112,111,114,116,95,95,8,4,
+ 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,200,0,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,150,0,0,0,114,154,0,0,0,114,
+ 77,0,0,0,114,149,0,0,0,41,2,114,15,0,0,0,
+ 114,88,0,0,0,114,10,0,0,0,114,10,0,0,0,114,
+ 11,0,0,0,218,18,95,98,117,105,108,116,105,110,95,102,
+ 114,111,109,95,110,97,109,101,43,4,0,0,115,8,0,0,
+ 0,0,1,15,1,12,1,16,1,114,201,0,0,0,99,2,
+ 0,0,0,0,0,0,0,12,0,0,0,12,0,0,0,67,
+ 0,0,0,115,74,1,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,5,
+ 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,121,16,0,116,13,0,100,2,0,
+ 131,1,0,125,10,0,87,110,24,0,4,116,15,0,107,10,
+ 0,114,25,1,1,1,1,100,3,0,125,10,0,89,110,1,
+ 0,88,116,14,0,124,7,0,100,2,0,124,10,0,131,3,
+ 0,1,116,13,0,100,4,0,131,1,0,125,11,0,116,14,
+ 0,124,7,0,100,4,0,124,11,0,131,3,0,1,100,3,
+ 0,83,41,6,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,141,0,0,0,114,34,0,0,0,78,114,62,0,0,0,
+ 41,1,122,9,95,119,97,114,110,105,110,103,115,41,16,114,
+ 57,0,0,0,114,14,0,0,0,114,13,0,0,0,114,21,
+ 0,0,0,218,5,105,116,101,109,115,114,178,0,0,0,114,
+ 76,0,0,0,114,150,0,0,0,114,82,0,0,0,114,161,
+ 0,0,0,114,132,0,0,0,114,137,0,0,0,114,1,0,
+ 0,0,114,201,0,0,0,114,5,0,0,0,114,77,0,0,
+ 0,41,12,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,15,0,0,0,114,89,
+ 0,0,0,114,99,0,0,0,114,88,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,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,114,10,0,0,0,114,10,0,0,
+ 0,114,11,0,0,0,218,6,95,115,101,116,117,112,50,4,
+ 0,0,115,50,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,3,1,16,
+ 1,13,2,11,1,16,3,12,1,114,205,0,0,0,99,2,
+ 0,0,0,0,0,0,0,3,0,0,0,3,0,0,0,67,
+ 0,0,0,115,97,0,0,0,116,0,0,124,0,0,124,1,
+ 0,131,2,0,1,116,1,0,106,2,0,106,3,0,116,4,
+ 0,131,1,0,1,116,1,0,106,2,0,106,3,0,116,5,
+ 0,131,1,0,1,100,1,0,100,2,0,108,6,0,125,2,
+ 0,124,2,0,106,7,0,116,1,0,106,8,0,116,9,0,
+ 25,131,1,0,1,124,2,0,116,1,0,106,8,0,116,9,
+ 0,25,95,10,0,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,
+ 33,0,0,0,78,41,11,114,205,0,0,0,114,14,0,0,
+ 0,114,175,0,0,0,114,113,0,0,0,114,150,0,0,0,
+ 114,161,0,0,0,114,119,0,0,0,218,8,95,105,110,115,
+ 116,97,108,108,114,21,0,0,0,114,1,0,0,0,114,120,
+ 0,0,0,41,3,114,203,0,0,0,114,204,0,0,0,114,
+ 119,0,0,0,114,10,0,0,0,114,10,0,0,0,114,11,
+ 0,0,0,114,206,0,0,0,97,4,0,0,115,12,0,0,
+ 0,0,2,13,2,16,1,16,2,12,1,20,1,114,206,0,
+ 0,0,41,50,114,3,0,0,0,114,12,0,0,0,114,16,
+ 0,0,0,114,17,0,0,0,114,59,0,0,0,114,41,0,
+ 0,0,114,48,0,0,0,114,31,0,0,0,114,32,0,0,
+ 0,114,53,0,0,0,114,54,0,0,0,114,56,0,0,0,
+ 114,63,0,0,0,114,65,0,0,0,114,75,0,0,0,114,
+ 81,0,0,0,114,84,0,0,0,114,90,0,0,0,114,101,
+ 0,0,0,114,102,0,0,0,114,106,0,0,0,114,85,0,
+ 0,0,218,6,111,98,106,101,99,116,90,9,95,80,79,80,
+ 85,76,65,84,69,114,132,0,0,0,114,137,0,0,0,114,
+ 144,0,0,0,114,97,0,0,0,114,86,0,0,0,114,148,
+ 0,0,0,114,149,0,0,0,114,87,0,0,0,114,150,0,
+ 0,0,114,161,0,0,0,114,166,0,0,0,114,172,0,0,
+ 0,114,174,0,0,0,114,177,0,0,0,114,182,0,0,0,
+ 114,192,0,0,0,114,183,0,0,0,114,185,0,0,0,114,
+ 186,0,0,0,114,187,0,0,0,114,195,0,0,0,114,197,
+ 0,0,0,114,200,0,0,0,114,201,0,0,0,114,205,0,
+ 0,0,114,206,0,0,0,114,10,0,0,0,114,10,0,0,
+ 0,114,10,0,0,0,114,11,0,0,0,218,8,60,109,111,
+ 100,117,108,101,62,8,0,0,0,115,94,0,0,0,6,17,
+ 12,8,12,4,19,20,6,2,6,3,22,4,19,68,19,21,
+ 19,19,12,19,12,19,12,11,18,8,12,11,12,12,12,16,
+ 12,36,19,27,19,100,24,23,9,3,18,45,18,57,12,18,
+ 12,17,12,25,12,29,12,23,12,16,19,70,19,78,19,13,
+ 12,9,12,9,15,40,12,17,6,1,10,2,12,27,12,6,
+ 18,24,12,32,12,15,24,35,12,7,12,47,
};
diff --git a/Python/importlib_external.h b/Python/importlib_external.h
index c853f04..6119e24 100644
--- a/Python/importlib_external.h
+++ b/Python/importlib_external.h
@@ -225,2408 +225,2409 @@ const unsigned char _Py_M__importlib_external[] = {
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,0,116,
+ 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,105,2,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,233,0,0,0,0,122,24,123,33,114,125,32,
- 105,115,32,110,111,116,32,97,108,112,104,97,110,117,109,101,
- 114,105,99,122,7,123,125,46,123,125,123,125,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,57,0,0,0,218,7,109,101,115,115,97,103,101,218,
- 4,104,101,97,100,114,37,0,0,0,90,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,241,0,0,0,115,46,0,0,0,0,18,12,1,
- 9,1,7,1,12,1,6,1,12,1,18,1,18,1,24,1,
- 12,1,12,1,12,1,36,1,12,1,18,1,9,2,12,1,
- 12,1,12,1,12,1,21,1,21,1,114,79,0,0,0,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,
+ 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,105,2,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,233,0,0,0,0,122,24,123,33,114,125,
+ 32,105,115,32,110,111,116,32,97,108,112,104,97,110,117,109,
+ 101,114,105,99,122,7,123,125,46,123,125,123,125,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,57,0,0,0,218,7,109,101,115,115,97,103,101,
+ 218,4,104,101,97,100,114,37,0,0,0,90,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,241,0,0,0,115,46,0,0,0,0,18,12,
+ 1,9,1,7,1,12,1,6,1,12,1,18,1,18,1,24,
+ 1,12,1,12,1,12,1,36,1,12,1,18,1,9,2,12,
+ 1,12,1,12,1,12,1,21,1,21,1,114,79,0,0,0,
+ 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,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,58,0,0,0,114,
- 56,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,59,0,
- 0,0,62,2,0,0,0,114,56,0,0,0,114,80,0,0,
- 0,233,254,255,255,255,41,17,114,7,0,0,0,114,64,0,
- 0,0,114,65,0,0,0,114,66,0,0,0,114,38,0,0,
- 0,114,73,0,0,0,114,71,0,0,0,114,47,0,0,0,
- 218,5,99,111,117,110,116,114,34,0,0,0,114,9,0,0,
- 0,114,72,0,0,0,114,31,0,0,0,114,70,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,76,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,57,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,29,1,0,0,115,44,0,0,0,0,9,18,
- 1,12,1,18,1,18,1,12,1,9,1,15,1,15,1,12,
- 1,9,1,15,1,12,1,22,1,15,1,9,1,12,1,22,
- 1,12,1,9,1,12,1,19,1,114,85,0,0,0,99,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,59,0,0,
- 0,78,114,58,0,0,0,114,80,0,0,0,114,29,0,0,
- 0,90,2,112,121,233,253,255,255,255,233,255,255,255,255,114,
- 87,0,0,0,41,7,114,31,0,0,0,114,32,0,0,0,
- 218,5,108,111,119,101,114,114,85,0,0,0,114,66,0,0,
- 0,114,71,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,78,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,62,1,
- 0,0,115,20,0,0,0,0,7,18,1,4,1,24,1,35,
- 1,4,1,3,1,16,1,19,1,21,1,114,91,0,0,0,
- 99,1,0,0,0,0,0,0,0,1,0,0,0,11,0,0,
- 0,67,0,0,0,115,92,0,0,0,124,0,0,106,0,0,
- 116,1,0,116,2,0,131,1,0,131,1,0,114,59,0,121,
- 14,0,116,3,0,124,0,0,131,1,0,83,87,113,88,0,
- 4,116,4,0,107,10,0,114,55,0,1,1,1,89,113,88,
- 0,88,110,29,0,124,0,0,106,0,0,116,1,0,116,5,
- 0,131,1,0,131,1,0,114,84,0,124,0,0,83,100,0,
- 0,83,100,0,0,83,41,1,78,41,6,218,8,101,110,100,
- 115,119,105,116,104,218,5,116,117,112,108,101,114,84,0,0,
- 0,114,79,0,0,0,114,66,0,0,0,114,74,0,0,0,
- 41,1,218,8,102,105,108,101,110,97,109,101,114,4,0,0,
- 0,114,4,0,0,0,114,5,0,0,0,218,11,95,103,101,
- 116,95,99,97,99,104,101,100,81,1,0,0,115,16,0,0,
- 0,0,1,21,1,3,1,14,1,13,1,8,1,21,1,4,
- 2,114,95,0,0,0,99,1,0,0,0,0,0,0,0,2,
- 0,0,0,11,0,0,0,67,0,0,0,115,60,0,0,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,93,1,0,0,115,12,0,0,0,0,2,
- 3,1,19,1,13,1,11,3,10,1,114,97,0,0,0,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,99,0,
- 0,0,114,100,0,0,0,41,7,114,7,0,0,0,114,67,
- 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,75,0,0,0,114,98,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,16,95,118,101,114,98,111,115,101,
- 95,109,101,115,115,97,103,101,105,1,0,0,115,8,0,0,
- 0,0,2,18,1,15,1,10,1,114,105,0,0,0,99,1,
- 0,0,0,0,0,0,0,3,0,0,0,11,0,0,0,3,
- 0,0,0,115,84,0,0,0,100,1,0,135,0,0,102,1,
- 0,100,2,0,100,3,0,134,1,0,125,1,0,121,13,0,
- 116,0,0,106,1,0,125,2,0,87,110,30,0,4,116,2,
- 0,107,10,0,114,66,0,1,1,1,100,4,0,100,5,0,
- 132,0,0,125,2,0,89,110,1,0,88,124,2,0,124,1,
- 0,136,0,0,131,2,0,1,124,1,0,83,41,6,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,218,4,110,97,109,101,41,2,114,106,0,0,0,
- 218,11,73,109,112,111,114,116,69,114,114,111,114,41,4,218,
- 4,115,101,108,102,114,106,0,0,0,114,104,0,0,0,90,
- 6,107,119,97,114,103,115,41,1,218,6,109,101,116,104,111,
- 100,114,4,0,0,0,114,5,0,0,0,218,19,95,99,104,
- 101,99,107,95,110,97,109,101,95,119,114,97,112,112,101,114,
- 121,1,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,99,2,0,
- 0,0,0,0,0,0,3,0,0,0,7,0,0,0,83,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,
- 0,0,83,41,5,78,218,10,95,95,109,111,100,117,108,101,
- 95,95,218,8,95,95,110,97,109,101,95,95,218,12,95,95,
- 113,117,97,108,110,97,109,101,95,95,218,7,95,95,100,111,
- 99,95,95,41,5,218,7,104,97,115,97,116,116,114,218,7,
- 115,101,116,97,116,116,114,218,7,103,101,116,97,116,116,114,
- 218,8,95,95,100,105,99,116,95,95,218,6,117,112,100,97,
- 116,101,41,3,90,3,110,101,119,90,3,111,108,100,114,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,131,1,0,0,115,8,0,
- 0,0,0,1,25,1,15,1,29,1,122,26,95,99,104,101,
- 99,107,95,110,97,109,101,46,60,108,111,99,97,108,115,62,
- 46,95,119,114,97,112,41,3,218,10,95,98,111,111,116,115,
- 116,114,97,112,114,120,0,0,0,218,9,78,97,109,101,69,
- 114,114,111,114,41,3,114,109,0,0,0,114,110,0,0,0,
- 114,120,0,0,0,114,4,0,0,0,41,1,114,109,0,0,
- 0,114,5,0,0,0,218,11,95,99,104,101,99,107,95,110,
- 97,109,101,113,1,0,0,115,14,0,0,0,0,8,21,6,
- 3,1,13,1,13,2,17,5,13,1,114,123,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,59,0,0,0,
- 41,6,218,11,102,105,110,100,95,108,111,97,100,101,114,114,
- 31,0,0,0,114,60,0,0,0,114,61,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,108,0,0,0,218,8,102,117,108,108,110,
- 97,109,101,218,6,108,111,97,100,101,114,218,8,112,111,114,
- 116,105,111,110,115,218,3,109,115,103,114,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,140,1,0,0,
- 115,10,0,0,0,0,10,21,1,24,1,6,1,29,1,114,
- 130,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,87,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,70,0,116,1,0,106,
- 2,0,124,1,0,25,125,3,0,116,3,0,106,4,0,124,
- 2,0,124,3,0,131,2,0,1,116,1,0,106,2,0,124,
- 1,0,25,83,116,3,0,106,5,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,6,218,16,115,112,
- 101,99,95,102,114,111,109,95,108,111,97,100,101,114,114,7,
- 0,0,0,218,7,109,111,100,117,108,101,115,114,121,0,0,
- 0,90,5,95,101,120,101,99,90,5,95,108,111,97,100,41,
- 4,114,108,0,0,0,114,126,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,158,1,0,0,115,
- 12,0,0,0,0,6,15,1,15,1,13,1,16,1,11,2,
- 114,135,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,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,106,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,105,0,0,0,114,107,0,0,0,114,31,0,0,
- 0,218,8,69,79,70,69,114,114,111,114,114,14,0,0,0,
- 218,8,75,101,121,69,114,114,111,114,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,106,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,75,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,173,1,0,0,115,76,0,0,0,0,11,
- 6,1,12,1,13,3,6,1,12,1,10,1,16,1,16,1,
- 16,1,12,1,18,1,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,146,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,106,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,105,
- 0,0,0,218,4,95,105,109,112,90,16,95,102,105,120,95,
- 99,111,95,102,105,108,101,110,97,109,101,114,107,0,0,0,
- 114,47,0,0,0,41,5,114,53,0,0,0,114,106,0,0,
- 0,114,89,0,0,0,114,90,0,0,0,218,4,99,111,100,
- 101,114,4,0,0,0,114,4,0,0,0,114,5,0,0,0,
- 218,17,95,99,111,109,112,105,108,101,95,98,121,116,101,99,
- 111,100,101,228,1,0,0,115,16,0,0,0,0,2,15,1,
- 15,1,13,1,12,1,16,1,4,2,18,1,114,152,0,0,
- 0,114,59,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,140,0,
- 0,0,218,6,101,120,116,101,110,100,114,17,0,0,0,114,
- 147,0,0,0,90,5,100,117,109,112,115,41,4,114,151,0,
- 0,0,114,138,0,0,0,114,145,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,240,1,0,0,115,10,0,0,0,0,3,12,1,
- 19,1,19,1,22,1,114,155,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,59,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,156,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,250,
- 1,0,0,115,10,0,0,0,0,5,12,1,18,1,15,1,
- 18,1,114,160,0,0,0,218,6,111,114,105,103,105,110,218,
- 10,105,115,95,112,97,99,107,97,103,101,99,2,0,0,0,
- 2,0,0,0,5,0,0,0,15,0,0,0,67,0,0,0,
- 115,193,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,106,5,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,127,
- 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,114,
- 162,0,0,0,70,114,161,0,0,0,41,6,114,115,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,162,0,0,0,114,
- 107,0,0,0,114,121,0,0,0,218,10,77,111,100,117,108,
- 101,83,112,101,99,41,5,114,106,0,0,0,114,127,0,0,
- 0,114,161,0,0,0,114,162,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,131,0,0,0,8,2,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,131,0,0,
- 0,114,127,0,0,0,114,164,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,89,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,106,4,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,5,0,124,
- 2,0,100,1,0,107,8,0,114,194,0,120,73,0,116,6,
- 0,131,0,0,68,93,58,0,92,2,0,125,5,0,125,6,
- 0,124,1,0,106,7,0,116,8,0,124,6,0,131,1,0,
- 131,1,0,114,128,0,124,5,0,124,0,0,124,1,0,131,
- 2,0,125,2,0,124,2,0,124,4,0,95,9,0,80,113,
- 128,0,87,100,1,0,83,124,3,0,116,10,0,107,8,0,
- 114,23,1,116,0,0,124,2,0,100,6,0,131,2,0,114,
- 32,1,121,19,0,124,2,0,106,11,0,124,0,0,131,1,
- 0,125,7,0,87,110,18,0,4,116,2,0,107,10,0,114,
- 4,1,1,1,1,89,113,32,1,88,124,7,0,114,32,1,
- 103,0,0,124,4,0,95,12,0,110,9,0,124,3,0,124,
- 4,0,95,12,0,124,4,0,106,12,0,103,0,0,107,2,
- 0,114,85,1,124,1,0,114,85,1,116,13,0,124,1,0,
- 131,1,0,100,7,0,25,125,8,0,124,4,0,106,12,0,
- 106,14,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,163,
- 0,0,0,114,161,0,0,0,84,114,162,0,0,0,114,59,
- 0,0,0,41,15,114,115,0,0,0,114,163,0,0,0,114,
- 107,0,0,0,114,121,0,0,0,114,166,0,0,0,90,13,
- 95,115,101,116,95,102,105,108,101,97,116,116,114,218,27,95,
- 103,101,116,95,115,117,112,112,111,114,116,101,100,95,102,105,
- 108,101,95,108,111,97,100,101,114,115,114,92,0,0,0,114,
- 93,0,0,0,114,127,0,0,0,218,9,95,80,79,80,85,
- 76,65,84,69,114,162,0,0,0,114,164,0,0,0,114,38,
- 0,0,0,218,6,97,112,112,101,110,100,41,9,114,106,0,
- 0,0,90,8,108,111,99,97,116,105,111,110,114,127,0,0,
- 0,114,164,0,0,0,114,133,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,162,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,165,0,0,0,33,2,0,0,115,60,0,0,0,0,12,
- 12,4,6,1,15,2,3,1,19,1,13,1,5,8,24,1,
- 9,3,12,1,22,1,21,1,15,1,9,1,5,2,4,3,
- 12,2,15,1,3,1,19,1,13,1,5,2,6,1,12,2,
- 9,1,15,1,6,1,16,1,16,2,114,165,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,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,218,3,
- 99,108,115,218,3,107,101,121,114,4,0,0,0,114,4,0,
- 0,0,114,5,0,0,0,218,14,95,111,112,101,110,95,114,
- 101,103,105,115,116,114,121,111,2,0,0,115,8,0,0,0,
- 0,2,3,1,23,1,13,1,122,36,87,105,110,100,111,119,
- 115,82,101,103,105,115,116,114,121,70,105,110,100,101,114,46,
- 95,111,112,101,110,95,114,101,103,105,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,126,0,0,0,90,11,
- 115,121,115,95,118,101,114,115,105,111,110,114,80,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,176,0,0,0,114,173,
- 0,0,0,90,10,81,117,101,114,121,86,97,108,117,101,114,
- 40,0,0,0,41,6,114,174,0,0,0,114,126,0,0,0,
- 90,12,114,101,103,105,115,116,114,121,95,107,101,121,114,175,
- 0,0,0,90,4,104,107,101,121,218,8,102,105,108,101,112,
- 97,116,104,114,4,0,0,0,114,4,0,0,0,114,5,0,
- 0,0,218,16,95,115,101,97,114,99,104,95,114,101,103,105,
- 115,116,114,121,118,2,0,0,115,22,0,0,0,0,2,9,
- 1,12,2,9,1,15,1,22,1,3,1,18,1,28,1,13,
- 1,9,1,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,161,0,0,0,41,7,114,182,0,0,0,
- 114,39,0,0,0,114,40,0,0,0,114,167,0,0,0,114,
- 92,0,0,0,114,93,0,0,0,114,131,0,0,0,41,8,
- 114,174,0,0,0,114,126,0,0,0,114,35,0,0,0,218,
- 6,116,97,114,103,101,116,114,181,0,0,0,114,127,0,0,
- 0,114,171,0,0,0,114,133,0,0,0,114,4,0,0,0,
- 114,4,0,0,0,114,5,0,0,0,218,9,102,105,110,100,
- 95,115,112,101,99,133,2,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,
+ 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,58,0,0,0,
+ 114,56,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,59,
+ 0,0,0,62,2,0,0,0,114,56,0,0,0,114,80,0,
+ 0,0,233,254,255,255,255,41,17,114,7,0,0,0,114,64,
+ 0,0,0,114,65,0,0,0,114,66,0,0,0,114,38,0,
+ 0,0,114,73,0,0,0,114,71,0,0,0,114,47,0,0,
+ 0,218,5,99,111,117,110,116,114,34,0,0,0,114,9,0,
+ 0,0,114,72,0,0,0,114,31,0,0,0,114,70,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,76,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,57,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,29,1,0,0,115,44,0,0,0,0,9,
+ 18,1,12,1,18,1,18,1,12,1,9,1,15,1,15,1,
+ 12,1,9,1,15,1,12,1,22,1,15,1,9,1,12,1,
+ 22,1,12,1,9,1,12,1,19,1,114,85,0,0,0,99,
+ 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,59,0,
+ 0,0,78,114,58,0,0,0,114,80,0,0,0,114,29,0,
+ 0,0,90,2,112,121,233,253,255,255,255,233,255,255,255,255,
+ 114,87,0,0,0,41,7,114,31,0,0,0,114,32,0,0,
+ 0,218,5,108,111,119,101,114,114,85,0,0,0,114,66,0,
+ 0,0,114,71,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,78,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,62,
+ 1,0,0,115,20,0,0,0,0,7,18,1,4,1,24,1,
+ 35,1,4,1,3,1,16,1,19,1,21,1,114,91,0,0,
+ 0,99,1,0,0,0,0,0,0,0,1,0,0,0,11,0,
+ 0,0,67,0,0,0,115,92,0,0,0,124,0,0,106,0,
+ 0,116,1,0,116,2,0,131,1,0,131,1,0,114,59,0,
+ 121,14,0,116,3,0,124,0,0,131,1,0,83,87,113,88,
+ 0,4,116,4,0,107,10,0,114,55,0,1,1,1,89,113,
+ 88,0,88,110,29,0,124,0,0,106,0,0,116,1,0,116,
+ 5,0,131,1,0,131,1,0,114,84,0,124,0,0,83,100,
+ 0,0,83,100,0,0,83,41,1,78,41,6,218,8,101,110,
+ 100,115,119,105,116,104,218,5,116,117,112,108,101,114,84,0,
+ 0,0,114,79,0,0,0,114,66,0,0,0,114,74,0,0,
+ 0,41,1,218,8,102,105,108,101,110,97,109,101,114,4,0,
+ 0,0,114,4,0,0,0,114,5,0,0,0,218,11,95,103,
+ 101,116,95,99,97,99,104,101,100,81,1,0,0,115,16,0,
+ 0,0,0,1,21,1,3,1,14,1,13,1,8,1,21,1,
+ 4,2,114,95,0,0,0,99,1,0,0,0,0,0,0,0,
+ 2,0,0,0,11,0,0,0,67,0,0,0,115,60,0,0,
+ 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,93,1,0,0,115,12,0,0,0,0,
+ 2,3,1,19,1,13,1,11,3,10,1,114,97,0,0,0,
+ 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,99,
+ 0,0,0,114,100,0,0,0,41,7,114,7,0,0,0,114,
+ 67,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,75,0,0,0,114,98,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,16,95,118,101,114,98,111,115,
+ 101,95,109,101,115,115,97,103,101,105,1,0,0,115,8,0,
+ 0,0,0,2,18,1,15,1,10,1,114,105,0,0,0,99,
+ 1,0,0,0,0,0,0,0,3,0,0,0,11,0,0,0,
+ 3,0,0,0,115,84,0,0,0,100,1,0,135,0,0,102,
+ 1,0,100,2,0,100,3,0,134,1,0,125,1,0,121,13,
+ 0,116,0,0,106,1,0,125,2,0,87,110,30,0,4,116,
+ 2,0,107,10,0,114,66,0,1,1,1,100,4,0,100,5,
+ 0,132,0,0,125,2,0,89,110,1,0,88,124,2,0,124,
+ 1,0,136,0,0,131,2,0,1,124,1,0,83,41,6,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,218,4,110,97,109,101,41,2,114,106,0,0,
+ 0,218,11,73,109,112,111,114,116,69,114,114,111,114,41,4,
+ 218,4,115,101,108,102,114,106,0,0,0,114,104,0,0,0,
+ 90,6,107,119,97,114,103,115,41,1,218,6,109,101,116,104,
+ 111,100,114,4,0,0,0,114,5,0,0,0,218,19,95,99,
+ 104,101,99,107,95,110,97,109,101,95,119,114,97,112,112,101,
+ 114,121,1,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,99,2,
+ 0,0,0,0,0,0,0,3,0,0,0,7,0,0,0,83,
+ 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,0,0,83,41,5,78,218,10,95,95,109,111,100,117,108,
+ 101,95,95,218,8,95,95,110,97,109,101,95,95,218,12,95,
+ 95,113,117,97,108,110,97,109,101,95,95,218,7,95,95,100,
+ 111,99,95,95,41,5,218,7,104,97,115,97,116,116,114,218,
+ 7,115,101,116,97,116,116,114,218,7,103,101,116,97,116,116,
+ 114,218,8,95,95,100,105,99,116,95,95,218,6,117,112,100,
+ 97,116,101,41,3,90,3,110,101,119,90,3,111,108,100,114,
+ 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,131,1,0,0,115,8,
+ 0,0,0,0,1,25,1,15,1,29,1,122,26,95,99,104,
+ 101,99,107,95,110,97,109,101,46,60,108,111,99,97,108,115,
+ 62,46,95,119,114,97,112,41,3,218,10,95,98,111,111,116,
+ 115,116,114,97,112,114,120,0,0,0,218,9,78,97,109,101,
+ 69,114,114,111,114,41,3,114,109,0,0,0,114,110,0,0,
+ 0,114,120,0,0,0,114,4,0,0,0,41,1,114,109,0,
+ 0,0,114,5,0,0,0,218,11,95,99,104,101,99,107,95,
+ 110,97,109,101,113,1,0,0,115,14,0,0,0,0,8,21,
+ 6,3,1,13,1,13,2,17,5,13,1,114,123,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,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,184,0,0,0,114,127,0,0,0,41,4,114,174,0,
- 0,0,114,126,0,0,0,114,35,0,0,0,114,133,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,148,2,0,
- 0,115,8,0,0,0,0,7,18,1,12,1,7,2,122,33,
- 87,105,110,100,111,119,115,82,101,103,105,115,116,114,121,70,
- 105,110,100,101,114,46,102,105,110,100,95,109,111,100,117,108,
- 101,41,12,114,112,0,0,0,114,111,0,0,0,114,113,0,
- 0,0,114,114,0,0,0,114,179,0,0,0,114,178,0,0,
- 0,114,177,0,0,0,218,11,99,108,97,115,115,109,101,116,
- 104,111,100,114,176,0,0,0,114,182,0,0,0,114,184,0,
- 0,0,114,185,0,0,0,114,4,0,0,0,114,4,0,0,
- 0,114,4,0,0,0,114,5,0,0,0,114,172,0,0,0,
- 99,2,0,0,115,20,0,0,0,12,2,6,3,6,3,6,
- 2,6,2,18,7,18,15,3,1,21,14,3,1,114,172,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,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,58,0,0,0,114,
- 59,0,0,0,114,56,0,0,0,218,8,95,95,105,110,105,
- 116,95,95,41,4,114,38,0,0,0,114,163,0,0,0,114,
- 34,0,0,0,114,32,0,0,0,41,5,114,108,0,0,0,
- 114,126,0,0,0,114,94,0,0,0,90,13,102,105,108,101,
- 110,97,109,101,95,98,97,115,101,90,9,116,97,105,108,95,
- 110,97,109,101,114,4,0,0,0,114,4,0,0,0,114,5,
- 0,0,0,114,162,0,0,0,167,2,0,0,115,8,0,0,
- 0,0,3,25,1,22,1,19,1,122,24,95,76,111,97,100,
- 101,114,66,97,115,105,99,115,46,105,115,95,112,97,99,107,
- 97,103,101,99,2,0,0,0,0,0,0,0,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,108,0,0,0,114,133,0,0,
- 0,114,4,0,0,0,114,4,0,0,0,114,5,0,0,0,
- 218,13,99,114,101,97,116,101,95,109,111,100,117,108,101,175,
- 2,0,0,115,0,0,0,0,122,27,95,76,111,97,100,101,
- 114,66,97,115,105,99,115,46,99,114,101,97,116,101,95,109,
- 111,100,117,108,101,99,2,0,0,0,0,0,0,0,3,0,
- 0,0,4,0,0,0,67,0,0,0,115,80,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,106,5,0,116,6,0,124,2,
- 0,124,1,0,106,7,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,8,218,
- 8,103,101,116,95,99,111,100,101,114,112,0,0,0,114,107,
- 0,0,0,114,47,0,0,0,114,121,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,218,4,101,120,101,99,114,118,
- 0,0,0,41,3,114,108,0,0,0,114,134,0,0,0,114,
- 151,0,0,0,114,4,0,0,0,114,4,0,0,0,114,5,
- 0,0,0,218,11,101,120,101,99,95,109,111,100,117,108,101,
- 178,2,0,0,115,10,0,0,0,0,2,18,1,12,1,9,
- 1,15,1,122,25,95,76,111,97,100,101,114,66,97,115,105,
- 99,115,46,101,120,101,99,95,109,111,100,117,108,101,78,41,
- 9,114,112,0,0,0,114,111,0,0,0,114,113,0,0,0,
- 114,114,0,0,0,114,162,0,0,0,114,189,0,0,0,114,
- 193,0,0,0,114,135,0,0,0,218,11,108,111,97,100,95,
- 109,111,100,117,108,101,114,4,0,0,0,114,4,0,0,0,
- 114,4,0,0,0,114,5,0,0,0,114,187,0,0,0,162,
- 2,0,0,115,10,0,0,0,12,3,6,2,12,8,12,3,
- 12,8,114,187,0,0,0,99,0,0,0,0,0,0,0,0,
- 0,0,0,0,4,0,0,0,64,0,0,0,115,106,0,0,
- 0,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,108,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,191,2,0,0,115,2,0,0,
- 0,0,6,122,23,83,111,117,114,99,101,76,111,97,100,101,
- 114,46,112,97,116,104,95,109,116,105,109,101,99,2,0,0,
- 0,0,0,0,0,2,0,0,0,3,0,0,0,67,0,0,
- 0,115,19,0,0,0,124,0,0,106,0,0,124,1,0,131,
- 1,0,100,1,0,105,1,0,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,138,0,0,0,41,
- 1,114,197,0,0,0,41,2,114,108,0,0,0,114,35,0,
+ 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,59,0,0,
+ 0,41,6,218,11,102,105,110,100,95,108,111,97,100,101,114,
+ 114,31,0,0,0,114,60,0,0,0,114,61,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,108,0,0,0,218,8,102,117,108,108,
+ 110,97,109,101,218,6,108,111,97,100,101,114,218,8,112,111,
+ 114,116,105,111,110,115,218,3,109,115,103,114,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,140,1,0,
+ 0,115,10,0,0,0,0,10,21,1,24,1,6,1,29,1,
+ 114,130,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,87,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,70,0,116,1,0,
+ 106,2,0,124,1,0,25,125,3,0,116,3,0,106,4,0,
+ 124,2,0,124,3,0,131,2,0,1,116,1,0,106,2,0,
+ 124,1,0,25,83,116,3,0,106,5,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,6,218,16,115,
+ 112,101,99,95,102,114,111,109,95,108,111,97,100,101,114,114,
+ 7,0,0,0,218,7,109,111,100,117,108,101,115,114,121,0,
+ 0,0,90,5,95,101,120,101,99,90,5,95,108,111,97,100,
+ 41,4,114,108,0,0,0,114,126,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,158,1,0,0,
+ 115,12,0,0,0,0,6,15,1,15,1,13,1,16,1,11,
+ 2,114,135,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,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,106,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,105,0,0,0,114,107,0,0,0,114,31,0,
+ 0,0,218,8,69,79,70,69,114,114,111,114,114,14,0,0,
+ 0,218,8,75,101,121,69,114,114,111,114,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,106,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,75,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,173,1,0,0,115,76,0,0,0,0,
+ 11,6,1,12,1,13,3,6,1,12,1,10,1,16,1,16,
+ 1,16,1,12,1,18,1,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,146,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,106,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,
+ 105,0,0,0,218,4,95,105,109,112,90,16,95,102,105,120,
+ 95,99,111,95,102,105,108,101,110,97,109,101,114,107,0,0,
+ 0,114,47,0,0,0,41,5,114,53,0,0,0,114,106,0,
+ 0,0,114,89,0,0,0,114,90,0,0,0,218,4,99,111,
+ 100,101,114,4,0,0,0,114,4,0,0,0,114,5,0,0,
+ 0,218,17,95,99,111,109,112,105,108,101,95,98,121,116,101,
+ 99,111,100,101,228,1,0,0,115,16,0,0,0,0,2,15,
+ 1,15,1,13,1,12,1,16,1,4,2,18,1,114,152,0,
+ 0,0,114,59,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,140,
+ 0,0,0,218,6,101,120,116,101,110,100,114,17,0,0,0,
+ 114,147,0,0,0,90,5,100,117,109,112,115,41,4,114,151,
+ 0,0,0,114,138,0,0,0,114,145,0,0,0,114,53,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,199,2,0,
- 0,115,2,0,0,0,0,11,122,23,83,111,117,114,99,101,
- 76,111,97,100,101,114,46,112,97,116,104,95,115,116,97,116,
- 115,99,4,0,0,0,0,0,0,0,4,0,0,0,3,0,
- 0,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,108,0,0,0,114,90,0,0,0,90,10,99,97,99,
- 104,101,95,112,97,116,104,114,53,0,0,0,114,4,0,0,
- 0,114,4,0,0,0,114,5,0,0,0,218,15,95,99,97,
- 99,104,101,95,98,121,116,101,99,111,100,101,212,2,0,0,
- 115,2,0,0,0,0,8,122,28,83,111,117,114,99,101,76,
- 111,97,100,101,114,46,95,99,97,99,104,101,95,98,121,116,
- 101,99,111,100,101,99,3,0,0,0,0,0,0,0,3,0,
- 0,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,108,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,199,0,0,0,222,2,0,0,115,0,0,0,
- 0,122,21,83,111,117,114,99,101,76,111,97,100,101,114,46,
- 115,101,116,95,100,97,116,97,99,2,0,0,0,0,0,0,
- 0,5,0,0,0,16,0,0,0,67,0,0,0,115,105,0,
- 0,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,106,0,0,
- 0,78,41,5,114,163,0,0,0,218,8,103,101,116,95,100,
- 97,116,97,114,40,0,0,0,114,107,0,0,0,114,160,0,
- 0,0,41,5,114,108,0,0,0,114,126,0,0,0,114,35,
- 0,0,0,114,158,0,0,0,218,3,101,120,99,114,4,0,
- 0,0,114,4,0,0,0,114,5,0,0,0,218,10,103,101,
- 116,95,115,111,117,114,99,101,229,2,0,0,115,14,0,0,
- 0,0,2,15,1,3,1,19,1,18,1,9,1,31,1,122,
- 23,83,111,117,114,99,101,76,111,97,100,101,114,46,103,101,
- 116,95,115,111,117,114,99,101,218,9,95,111,112,116,105,109,
- 105,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,34,0,
- 0,0,116,0,0,106,1,0,116,2,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,192,0,0,0,218,
- 12,100,111,110,116,95,105,110,104,101,114,105,116,84,114,68,
- 0,0,0,41,3,114,121,0,0,0,114,191,0,0,0,218,
- 7,99,111,109,112,105,108,101,41,4,114,108,0,0,0,114,
- 53,0,0,0,114,35,0,0,0,114,204,0,0,0,114,4,
- 0,0,0,114,4,0,0,0,114,5,0,0,0,218,14,115,
- 111,117,114,99,101,95,116,111,95,99,111,100,101,239,2,0,
- 0,115,4,0,0,0,0,5,21,1,122,27,83,111,117,114,
- 99,101,76,111,97,100,101,114,46,115,111,117,114,99,101,95,
- 116,111,95,99,111,100,101,99,2,0,0,0,0,0,0,0,
- 10,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,138,0,0,0,114,143,0,0,0,114,106,0,0,
- 0,114,35,0,0,0,122,13,123,125,32,109,97,116,99,104,
- 101,115,32,123,125,114,89,0,0,0,114,90,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,163,0,0,0,114,79,0,0,0,114,66,0,0,
- 0,114,198,0,0,0,114,196,0,0,0,114,14,0,0,0,
- 114,201,0,0,0,114,40,0,0,0,114,146,0,0,0,114,
- 107,0,0,0,114,141,0,0,0,114,105,0,0,0,114,152,
- 0,0,0,114,207,0,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,155,0,0,0,114,31,0,0,0,114,200,0,0,
- 0,41,10,114,108,0,0,0,114,126,0,0,0,114,90,0,
- 0,0,114,144,0,0,0,114,89,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,158,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,190,0,0,0,247,2,0,0,115,78,0,0,0,
- 0,7,15,1,6,1,3,1,16,1,13,1,11,2,3,1,
- 19,1,13,1,5,2,16,1,3,1,19,1,13,1,5,2,
- 3,1,9,1,12,1,13,1,19,1,5,2,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,87,0,0,0,41,10,114,112,0,
- 0,0,114,111,0,0,0,114,113,0,0,0,114,197,0,0,
- 0,114,198,0,0,0,114,200,0,0,0,114,199,0,0,0,
- 114,203,0,0,0,114,207,0,0,0,114,190,0,0,0,114,
- 4,0,0,0,114,4,0,0,0,114,4,0,0,0,114,5,
- 0,0,0,114,195,0,0,0,189,2,0,0,115,14,0,0,
- 0,12,2,12,8,12,13,12,10,12,7,12,10,18,8,114,
- 195,0,0,0,99,0,0,0,0,0,0,0,0,0,0,0,
- 0,4,0,0,0,0,0,0,0,115,112,0,0,0,101,0,
+ 0,218,17,95,99,111,100,101,95,116,111,95,98,121,116,101,
+ 99,111,100,101,240,1,0,0,115,10,0,0,0,0,3,12,
+ 1,19,1,19,1,22,1,114,155,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,59,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,156,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,
+ 250,1,0,0,115,10,0,0,0,0,5,12,1,18,1,15,
+ 1,18,1,114,160,0,0,0,218,6,111,114,105,103,105,110,
+ 218,10,105,115,95,112,97,99,107,97,103,101,99,2,0,0,
+ 0,2,0,0,0,5,0,0,0,15,0,0,0,67,0,0,
+ 0,115,193,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,106,5,
+ 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,
+ 127,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,
+ 114,162,0,0,0,70,114,161,0,0,0,41,6,114,115,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,162,0,0,0,
+ 114,107,0,0,0,114,121,0,0,0,218,10,77,111,100,117,
+ 108,101,83,112,101,99,41,5,114,106,0,0,0,114,127,0,
+ 0,0,114,161,0,0,0,114,162,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,131,0,0,0,8,2,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,131,0,
+ 0,0,114,127,0,0,0,114,164,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,89,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,106,4,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,5,0,
+ 124,2,0,100,1,0,107,8,0,114,194,0,120,73,0,116,
+ 6,0,131,0,0,68,93,58,0,92,2,0,125,5,0,125,
+ 6,0,124,1,0,106,7,0,116,8,0,124,6,0,131,1,
+ 0,131,1,0,114,128,0,124,5,0,124,0,0,124,1,0,
+ 131,2,0,125,2,0,124,2,0,124,4,0,95,9,0,80,
+ 113,128,0,87,100,1,0,83,124,3,0,116,10,0,107,8,
+ 0,114,23,1,116,0,0,124,2,0,100,6,0,131,2,0,
+ 114,32,1,121,19,0,124,2,0,106,11,0,124,0,0,131,
+ 1,0,125,7,0,87,110,18,0,4,116,2,0,107,10,0,
+ 114,4,1,1,1,1,89,113,32,1,88,124,7,0,114,32,
+ 1,103,0,0,124,4,0,95,12,0,110,9,0,124,3,0,
+ 124,4,0,95,12,0,124,4,0,106,12,0,103,0,0,107,
+ 2,0,114,85,1,124,1,0,114,85,1,116,13,0,124,1,
+ 0,131,1,0,100,7,0,25,125,8,0,124,4,0,106,12,
+ 0,106,14,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,
+ 163,0,0,0,114,161,0,0,0,84,114,162,0,0,0,114,
+ 59,0,0,0,41,15,114,115,0,0,0,114,163,0,0,0,
+ 114,107,0,0,0,114,121,0,0,0,114,166,0,0,0,90,
+ 13,95,115,101,116,95,102,105,108,101,97,116,116,114,218,27,
+ 95,103,101,116,95,115,117,112,112,111,114,116,101,100,95,102,
+ 105,108,101,95,108,111,97,100,101,114,115,114,92,0,0,0,
+ 114,93,0,0,0,114,127,0,0,0,218,9,95,80,79,80,
+ 85,76,65,84,69,114,162,0,0,0,114,164,0,0,0,114,
+ 38,0,0,0,218,6,97,112,112,101,110,100,41,9,114,106,
+ 0,0,0,90,8,108,111,99,97,116,105,111,110,114,127,0,
+ 0,0,114,164,0,0,0,114,133,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,162,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,165,0,0,0,33,2,0,0,115,60,0,0,0,0,
+ 12,12,4,6,1,15,2,3,1,19,1,13,1,5,8,24,
+ 1,9,3,12,1,22,1,21,1,15,1,9,1,5,2,4,
+ 3,12,2,15,1,3,1,19,1,13,1,5,2,6,1,12,
+ 2,9,1,15,1,6,1,16,1,16,2,114,165,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,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,218,
+ 3,99,108,115,218,3,107,101,121,114,4,0,0,0,114,4,
+ 0,0,0,114,5,0,0,0,218,14,95,111,112,101,110,95,
+ 114,101,103,105,115,116,114,121,111,2,0,0,115,8,0,0,
+ 0,0,2,3,1,23,1,13,1,122,36,87,105,110,100,111,
+ 119,115,82,101,103,105,115,116,114,121,70,105,110,100,101,114,
+ 46,95,111,112,101,110,95,114,101,103,105,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,126,0,0,0,
+ 90,11,115,121,115,95,118,101,114,115,105,111,110,114,80,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,176,0,0,0,
+ 114,173,0,0,0,90,10,81,117,101,114,121,86,97,108,117,
+ 101,114,40,0,0,0,41,6,114,174,0,0,0,114,126,0,
+ 0,0,90,12,114,101,103,105,115,116,114,121,95,107,101,121,
+ 114,175,0,0,0,90,4,104,107,101,121,218,8,102,105,108,
+ 101,112,97,116,104,114,4,0,0,0,114,4,0,0,0,114,
+ 5,0,0,0,218,16,95,115,101,97,114,99,104,95,114,101,
+ 103,105,115,116,114,121,118,2,0,0,115,22,0,0,0,0,
+ 2,9,1,12,2,9,1,15,1,22,1,3,1,18,1,29,
+ 1,13,1,9,1,122,38,87,105,110,100,111,119,115,82,101,
+ 103,105,115,116,114,121,70,105,110,100,101,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,161,0,0,0,41,7,114,182,0,
+ 0,0,114,39,0,0,0,114,40,0,0,0,114,167,0,0,
+ 0,114,92,0,0,0,114,93,0,0,0,114,131,0,0,0,
+ 41,8,114,174,0,0,0,114,126,0,0,0,114,35,0,0,
+ 0,218,6,116,97,114,103,101,116,114,181,0,0,0,114,127,
+ 0,0,0,114,171,0,0,0,114,133,0,0,0,114,4,0,
+ 0,0,114,4,0,0,0,114,5,0,0,0,218,9,102,105,
+ 110,100,95,115,112,101,99,133,2,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,184,0,0,0,114,127,0,0,0,41,4,114,
+ 174,0,0,0,114,126,0,0,0,114,35,0,0,0,114,133,
+ 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,148,
+ 2,0,0,115,8,0,0,0,0,7,18,1,12,1,7,2,
+ 122,33,87,105,110,100,111,119,115,82,101,103,105,115,116,114,
+ 121,70,105,110,100,101,114,46,102,105,110,100,95,109,111,100,
+ 117,108,101,41,12,114,112,0,0,0,114,111,0,0,0,114,
+ 113,0,0,0,114,114,0,0,0,114,179,0,0,0,114,178,
+ 0,0,0,114,177,0,0,0,218,11,99,108,97,115,115,109,
+ 101,116,104,111,100,114,176,0,0,0,114,182,0,0,0,114,
+ 184,0,0,0,114,185,0,0,0,114,4,0,0,0,114,4,
+ 0,0,0,114,4,0,0,0,114,5,0,0,0,114,172,0,
+ 0,0,99,2,0,0,115,20,0,0,0,12,2,6,3,6,
+ 3,6,2,6,2,18,7,18,15,3,1,21,14,3,1,114,
+ 172,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,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,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,106,0,0,0,114,35,0,0,
- 0,41,3,114,108,0,0,0,114,126,0,0,0,114,35,0,
- 0,0,114,4,0,0,0,114,4,0,0,0,114,5,0,0,
- 0,114,188,0,0,0,48,3,0,0,115,4,0,0,0,0,
- 3,9,1,122,19,70,105,108,101,76,111,97,100,101,114,46,
- 95,95,105,110,105,116,95,95,99,2,0,0,0,0,0,0,
- 0,2,0,0,0,2,0,0,0,67,0,0,0,115,34,0,
- 0,0,124,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,218,9,95,95,99,108,97,
- 115,115,95,95,114,118,0,0,0,41,2,114,108,0,0,0,
- 218,5,111,116,104,101,114,114,4,0,0,0,114,4,0,0,
- 0,114,5,0,0,0,218,6,95,95,101,113,95,95,54,3,
- 0,0,115,4,0,0,0,0,1,18,1,122,17,70,105,108,
- 101,76,111,97,100,101,114,46,95,95,101,113,95,95,99,1,
- 0,0,0,0,0,0,0,1,0,0,0,3,0,0,0,67,
- 0,0,0,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,106,0,
- 0,0,114,35,0,0,0,41,1,114,108,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,58,3,0,0,115,2,0,0,0,
- 0,1,122,19,70,105,108,101,76,111,97,100,101,114,46,95,
- 95,104,97,115,104,95,95,99,2,0,0,0,0,0,0,0,
- 2,0,0,0,3,0,0,0,3,0,0,0,115,22,0,0,
- 0,116,0,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,211,0,0,0,114,194,0,
- 0,0,41,2,114,108,0,0,0,114,126,0,0,0,41,1,
- 114,212,0,0,0,114,4,0,0,0,114,5,0,0,0,114,
- 194,0,0,0,61,3,0,0,115,2,0,0,0,0,10,122,
- 22,70,105,108,101,76,111,97,100,101,114,46,108,111,97,100,
+ 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,58,0,0,
+ 0,114,59,0,0,0,114,56,0,0,0,218,8,95,95,105,
+ 110,105,116,95,95,41,4,114,38,0,0,0,114,163,0,0,
+ 0,114,34,0,0,0,114,32,0,0,0,41,5,114,108,0,
+ 0,0,114,126,0,0,0,114,94,0,0,0,90,13,102,105,
+ 108,101,110,97,109,101,95,98,97,115,101,90,9,116,97,105,
+ 108,95,110,97,109,101,114,4,0,0,0,114,4,0,0,0,
+ 114,5,0,0,0,114,162,0,0,0,167,2,0,0,115,8,
+ 0,0,0,0,3,25,1,22,1,19,1,122,24,95,76,111,
+ 97,100,101,114,66,97,115,105,99,115,46,105,115,95,112,97,
+ 99,107,97,103,101,99,2,0,0,0,0,0,0,0,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,108,0,0,0,114,133,
+ 0,0,0,114,4,0,0,0,114,4,0,0,0,114,5,0,
+ 0,0,218,13,99,114,101,97,116,101,95,109,111,100,117,108,
+ 101,175,2,0,0,115,0,0,0,0,122,27,95,76,111,97,
+ 100,101,114,66,97,115,105,99,115,46,99,114,101,97,116,101,
95,109,111,100,117,108,101,99,2,0,0,0,0,0,0,0,
- 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,
- 108,0,0,0,114,126,0,0,0,114,4,0,0,0,114,4,
- 0,0,0,114,5,0,0,0,114,163,0,0,0,73,3,0,
- 0,115,2,0,0,0,0,3,122,23,70,105,108,101,76,111,
- 97,100,101,114,46,103,101,116,95,102,105,108,101,110,97,109,
- 101,99,2,0,0,0,0,0,0,0,3,0,0,0,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,108,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,201,0,0,0,78,3,0,0,115,4,
- 0,0,0,0,2,21,1,122,19,70,105,108,101,76,111,97,
- 100,101,114,46,103,101,116,95,100,97,116,97,41,11,114,112,
- 0,0,0,114,111,0,0,0,114,113,0,0,0,114,114,0,
- 0,0,114,188,0,0,0,114,214,0,0,0,114,216,0,0,
- 0,114,123,0,0,0,114,194,0,0,0,114,163,0,0,0,
- 114,201,0,0,0,114,4,0,0,0,114,4,0,0,0,41,
- 1,114,212,0,0,0,114,5,0,0,0,114,211,0,0,0,
- 43,3,0,0,115,14,0,0,0,12,3,6,2,12,6,12,
- 4,12,3,24,12,18,5,114,211,0,0,0,99,0,0,0,
- 0,0,0,0,0,0,0,0,0,4,0,0,0,64,0,0,
- 0,115,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,218,16,83,111,117,114,99,101,
- 70,105,108,101,76,111,97,100,101,114,122,62,67,111,110,99,
- 114,101,116,101,32,105,109,112,108,101,109,101,110,116,97,116,
- 105,111,110,32,111,102,32,83,111,117,114,99,101,76,111,97,
- 100,101,114,32,117,115,105,110,103,32,116,104,101,32,102,105,
- 108,101,32,115,121,115,116,101,109,46,99,2,0,0,0,0,
- 0,0,0,3,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,2,0,
- 124,2,0,106,1,0,100,1,0,124,2,0,106,2,0,100,
- 2,0,105,2,0,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,138,0,0,0,
- 114,139,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,108,0,0,0,114,35,0,0,0,114,209,0,0,0,
- 114,4,0,0,0,114,4,0,0,0,114,5,0,0,0,114,
- 198,0,0,0,88,3,0,0,115,4,0,0,0,0,2,12,
- 1,122,27,83,111,117,114,99,101,70,105,108,101,76,111,97,
- 100,101,114,46,112,97,116,104,95,115,116,97,116,115,99,4,
- 0,0,0,0,0,0,0,5,0,0,0,5,0,0,0,67,
- 0,0,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,97,0,0,0,114,199,0,0,0,
- 41,5,114,108,0,0,0,114,90,0,0,0,114,89,0,0,
- 0,114,53,0,0,0,114,42,0,0,0,114,4,0,0,0,
- 114,4,0,0,0,114,5,0,0,0,114,200,0,0,0,93,
- 3,0,0,115,4,0,0,0,0,2,12,1,122,32,83,111,
- 117,114,99,101,70,105,108,101,76,111,97,100,101,114,46,95,
- 99,97,99,104,101,95,98,121,116,101,99,111,100,101,114,221,
- 0,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,169,
- 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,
- 105,0,0,0,114,55,0,0,0,41,9,114,108,0,0,0,
- 114,35,0,0,0,114,53,0,0,0,114,221,0,0,0,218,
- 6,112,97,114,101,110,116,114,94,0,0,0,114,27,0,0,
- 0,114,23,0,0,0,114,202,0,0,0,114,4,0,0,0,
- 114,4,0,0,0,114,5,0,0,0,114,199,0,0,0,98,
- 3,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,112,0,0,
- 0,114,111,0,0,0,114,113,0,0,0,114,114,0,0,0,
- 114,198,0,0,0,114,200,0,0,0,114,199,0,0,0,114,
- 4,0,0,0,114,4,0,0,0,114,4,0,0,0,114,5,
- 0,0,0,114,219,0,0,0,84,3,0,0,115,8,0,0,
- 0,12,2,6,2,12,5,12,5,114,219,0,0,0,99,0,
- 0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,64,
- 0,0,0,115,46,0,0,0,101,0,0,90,1,0,100,0,
- 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,20,83,111,117,114,99,101,
- 108,101,115,115,70,105,108,101,76,111,97,100,101,114,122,45,
- 76,111,97,100,101,114,32,119,104,105,99,104,32,104,97,110,
- 100,108,101,115,32,115,111,117,114,99,101,108,101,115,115,32,
- 102,105,108,101,32,105,109,112,111,114,116,115,46,99,2,0,
- 0,0,0,0,0,0,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,106,0,0,0,114,35,0,0,0,
- 114,89,0,0,0,41,4,114,163,0,0,0,114,201,0,0,
- 0,114,146,0,0,0,114,152,0,0,0,41,5,114,108,0,
- 0,0,114,126,0,0,0,114,35,0,0,0,114,53,0,0,
- 0,114,210,0,0,0,114,4,0,0,0,114,4,0,0,0,
- 114,5,0,0,0,114,190,0,0,0,131,3,0,0,115,8,
- 0,0,0,0,1,15,1,15,1,24,1,122,29,83,111,117,
+ 3,0,0,0,4,0,0,0,67,0,0,0,115,80,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,106,5,0,116,6,0,
+ 124,2,0,124,1,0,106,7,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,
+ 8,218,8,103,101,116,95,99,111,100,101,114,112,0,0,0,
+ 114,107,0,0,0,114,47,0,0,0,114,121,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,218,4,101,120,101,99,
+ 114,118,0,0,0,41,3,114,108,0,0,0,114,134,0,0,
+ 0,114,151,0,0,0,114,4,0,0,0,114,4,0,0,0,
+ 114,5,0,0,0,218,11,101,120,101,99,95,109,111,100,117,
+ 108,101,178,2,0,0,115,10,0,0,0,0,2,18,1,12,
+ 1,9,1,15,1,122,25,95,76,111,97,100,101,114,66,97,
+ 115,105,99,115,46,101,120,101,99,95,109,111,100,117,108,101,
+ 78,41,9,114,112,0,0,0,114,111,0,0,0,114,113,0,
+ 0,0,114,114,0,0,0,114,162,0,0,0,114,189,0,0,
+ 0,114,193,0,0,0,114,135,0,0,0,218,11,108,111,97,
+ 100,95,109,111,100,117,108,101,114,4,0,0,0,114,4,0,
+ 0,0,114,4,0,0,0,114,5,0,0,0,114,187,0,0,
+ 0,162,2,0,0,115,10,0,0,0,12,3,6,2,12,8,
+ 12,3,12,8,114,187,0,0,0,99,0,0,0,0,0,0,
+ 0,0,0,0,0,0,4,0,0,0,64,0,0,0,115,106,
+ 0,0,0,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,108,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,191,2,0,0,115,2,
+ 0,0,0,0,6,122,23,83,111,117,114,99,101,76,111,97,
+ 100,101,114,46,112,97,116,104,95,109,116,105,109,101,99,2,
+ 0,0,0,0,0,0,0,2,0,0,0,3,0,0,0,67,
+ 0,0,0,115,19,0,0,0,124,0,0,106,0,0,124,1,
+ 0,131,1,0,100,1,0,105,1,0,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,138,0,0,
+ 0,41,1,114,197,0,0,0,41,2,114,108,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,199,
+ 2,0,0,115,2,0,0,0,0,11,122,23,83,111,117,114,
+ 99,101,76,111,97,100,101,114,46,112,97,116,104,95,115,116,
+ 97,116,115,99,4,0,0,0,0,0,0,0,4,0,0,0,
+ 3,0,0,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,108,0,0,0,114,90,0,0,0,90,10,99,
+ 97,99,104,101,95,112,97,116,104,114,53,0,0,0,114,4,
+ 0,0,0,114,4,0,0,0,114,5,0,0,0,218,15,95,
+ 99,97,99,104,101,95,98,121,116,101,99,111,100,101,212,2,
+ 0,0,115,2,0,0,0,0,8,122,28,83,111,117,114,99,
+ 101,76,111,97,100,101,114,46,95,99,97,99,104,101,95,98,
+ 121,116,101,99,111,100,101,99,3,0,0,0,0,0,0,0,
+ 3,0,0,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,108,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,199,0,0,0,222,2,0,0,115,0,
+ 0,0,0,122,21,83,111,117,114,99,101,76,111,97,100,101,
+ 114,46,115,101,116,95,100,97,116,97,99,2,0,0,0,0,
+ 0,0,0,5,0,0,0,16,0,0,0,67,0,0,0,115,
+ 105,0,0,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,106,
+ 0,0,0,78,41,5,114,163,0,0,0,218,8,103,101,116,
+ 95,100,97,116,97,114,40,0,0,0,114,107,0,0,0,114,
+ 160,0,0,0,41,5,114,108,0,0,0,114,126,0,0,0,
+ 114,35,0,0,0,114,158,0,0,0,218,3,101,120,99,114,
+ 4,0,0,0,114,4,0,0,0,114,5,0,0,0,218,10,
+ 103,101,116,95,115,111,117,114,99,101,229,2,0,0,115,14,
+ 0,0,0,0,2,15,1,3,1,19,1,18,1,9,1,31,
+ 1,122,23,83,111,117,114,99,101,76,111,97,100,101,114,46,
+ 103,101,116,95,115,111,117,114,99,101,218,9,95,111,112,116,
+ 105,109,105,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,
+ 34,0,0,0,116,0,0,106,1,0,116,2,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,192,0,0,
+ 0,218,12,100,111,110,116,95,105,110,104,101,114,105,116,84,
+ 114,68,0,0,0,41,3,114,121,0,0,0,114,191,0,0,
+ 0,218,7,99,111,109,112,105,108,101,41,4,114,108,0,0,
+ 0,114,53,0,0,0,114,35,0,0,0,114,204,0,0,0,
+ 114,4,0,0,0,114,4,0,0,0,114,5,0,0,0,218,
+ 14,115,111,117,114,99,101,95,116,111,95,99,111,100,101,239,
+ 2,0,0,115,4,0,0,0,0,5,21,1,122,27,83,111,
+ 117,114,99,101,76,111,97,100,101,114,46,115,111,117,114,99,
+ 101,95,116,111,95,99,111,100,101,99,2,0,0,0,0,0,
+ 0,0,10,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,138,0,0,0,114,143,0,0,0,114,106,
+ 0,0,0,114,35,0,0,0,122,13,123,125,32,109,97,116,
+ 99,104,101,115,32,123,125,114,89,0,0,0,114,90,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,163,0,0,0,114,79,0,0,0,114,66,
+ 0,0,0,114,198,0,0,0,114,196,0,0,0,114,14,0,
+ 0,0,114,201,0,0,0,114,40,0,0,0,114,146,0,0,
+ 0,114,107,0,0,0,114,141,0,0,0,114,105,0,0,0,
+ 114,152,0,0,0,114,207,0,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,155,0,0,0,114,31,0,0,0,114,200,
+ 0,0,0,41,10,114,108,0,0,0,114,126,0,0,0,114,
+ 90,0,0,0,114,144,0,0,0,114,89,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,158,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,190,0,0,0,247,2,0,0,115,78,0,
+ 0,0,0,7,15,1,6,1,3,1,16,1,13,1,11,2,
+ 3,1,19,1,13,1,5,2,16,1,3,1,19,1,13,1,
+ 5,2,3,1,9,1,12,1,13,1,19,1,5,2,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,87,0,0,0,41,10,114,
+ 112,0,0,0,114,111,0,0,0,114,113,0,0,0,114,197,
+ 0,0,0,114,198,0,0,0,114,200,0,0,0,114,199,0,
+ 0,0,114,203,0,0,0,114,207,0,0,0,114,190,0,0,
+ 0,114,4,0,0,0,114,4,0,0,0,114,4,0,0,0,
+ 114,5,0,0,0,114,195,0,0,0,189,2,0,0,115,14,
+ 0,0,0,12,2,12,8,12,13,12,10,12,7,12,10,18,
+ 8,114,195,0,0,0,99,0,0,0,0,0,0,0,0,0,
+ 0,0,0,4,0,0,0,0,0,0,0,115,112,0,0,0,
+ 101,0,0,90,1,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,106,0,0,0,114,35,
+ 0,0,0,41,3,114,108,0,0,0,114,126,0,0,0,114,
+ 35,0,0,0,114,4,0,0,0,114,4,0,0,0,114,5,
+ 0,0,0,114,188,0,0,0,48,3,0,0,115,4,0,0,
+ 0,0,3,9,1,122,19,70,105,108,101,76,111,97,100,101,
+ 114,46,95,95,105,110,105,116,95,95,99,2,0,0,0,0,
+ 0,0,0,2,0,0,0,2,0,0,0,67,0,0,0,115,
+ 34,0,0,0,124,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,218,9,95,95,99,
+ 108,97,115,115,95,95,114,118,0,0,0,41,2,114,108,0,
+ 0,0,218,5,111,116,104,101,114,114,4,0,0,0,114,4,
+ 0,0,0,114,5,0,0,0,218,6,95,95,101,113,95,95,
+ 54,3,0,0,115,4,0,0,0,0,1,18,1,122,17,70,
+ 105,108,101,76,111,97,100,101,114,46,95,95,101,113,95,95,
+ 99,1,0,0,0,0,0,0,0,1,0,0,0,3,0,0,
+ 0,67,0,0,0,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,
+ 106,0,0,0,114,35,0,0,0,41,1,114,108,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,58,3,0,0,115,2,0,
+ 0,0,0,1,122,19,70,105,108,101,76,111,97,100,101,114,
+ 46,95,95,104,97,115,104,95,95,99,2,0,0,0,0,0,
+ 0,0,2,0,0,0,3,0,0,0,3,0,0,0,115,22,
+ 0,0,0,116,0,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,211,0,0,0,114,
+ 194,0,0,0,41,2,114,108,0,0,0,114,126,0,0,0,
+ 41,1,114,212,0,0,0,114,4,0,0,0,114,5,0,0,
+ 0,114,194,0,0,0,61,3,0,0,115,2,0,0,0,0,
+ 10,122,22,70,105,108,101,76,111,97,100,101,114,46,108,111,
+ 97,100,95,109,111,100,117,108,101,99,2,0,0,0,0,0,
+ 0,0,2,0,0,0,1,0,0,0,67,0,0,0,115,7,
+ 0,0,0,124,0,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,108,0,0,0,114,126,0,0,0,114,4,0,0,0,
+ 114,4,0,0,0,114,5,0,0,0,114,163,0,0,0,73,
+ 3,0,0,115,2,0,0,0,0,3,122,23,70,105,108,101,
+ 76,111,97,100,101,114,46,103,101,116,95,102,105,108,101,110,
+ 97,109,101,99,2,0,0,0,0,0,0,0,3,0,0,0,
+ 9,0,0,0,67,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,108,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,201,0,0,0,78,3,0,
+ 0,115,4,0,0,0,0,2,21,1,122,19,70,105,108,101,
+ 76,111,97,100,101,114,46,103,101,116,95,100,97,116,97,41,
+ 11,114,112,0,0,0,114,111,0,0,0,114,113,0,0,0,
+ 114,114,0,0,0,114,188,0,0,0,114,214,0,0,0,114,
+ 216,0,0,0,114,123,0,0,0,114,194,0,0,0,114,163,
+ 0,0,0,114,201,0,0,0,114,4,0,0,0,114,4,0,
+ 0,0,41,1,114,212,0,0,0,114,5,0,0,0,114,211,
+ 0,0,0,43,3,0,0,115,14,0,0,0,12,3,6,2,
+ 12,6,12,4,12,3,24,12,18,5,114,211,0,0,0,99,
+ 0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,
+ 64,0,0,0,115,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,218,16,83,111,117,
+ 114,99,101,70,105,108,101,76,111,97,100,101,114,122,62,67,
+ 111,110,99,114,101,116,101,32,105,109,112,108,101,109,101,110,
+ 116,97,116,105,111,110,32,111,102,32,83,111,117,114,99,101,
+ 76,111,97,100,101,114,32,117,115,105,110,103,32,116,104,101,
+ 32,102,105,108,101,32,115,121,115,116,101,109,46,99,2,0,
+ 0,0,0,0,0,0,3,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,2,0,124,2,0,106,1,0,100,1,0,124,2,0,106,
+ 2,0,100,2,0,105,2,0,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,138,
+ 0,0,0,114,139,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,108,0,0,0,114,35,0,0,0,114,209,
+ 0,0,0,114,4,0,0,0,114,4,0,0,0,114,5,0,
+ 0,0,114,198,0,0,0,88,3,0,0,115,4,0,0,0,
+ 0,2,12,1,122,27,83,111,117,114,99,101,70,105,108,101,
+ 76,111,97,100,101,114,46,112,97,116,104,95,115,116,97,116,
+ 115,99,4,0,0,0,0,0,0,0,5,0,0,0,5,0,
+ 0,0,67,0,0,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,97,0,0,0,114,199,
+ 0,0,0,41,5,114,108,0,0,0,114,90,0,0,0,114,
+ 89,0,0,0,114,53,0,0,0,114,42,0,0,0,114,4,
+ 0,0,0,114,4,0,0,0,114,5,0,0,0,114,200,0,
+ 0,0,93,3,0,0,115,4,0,0,0,0,2,12,1,122,
+ 32,83,111,117,114,99,101,70,105,108,101,76,111,97,100,101,
+ 114,46,95,99,97,99,104,101,95,98,121,116,101,99,111,100,
+ 101,114,221,0,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,169,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,105,0,0,0,114,55,0,0,0,41,9,114,108,
+ 0,0,0,114,35,0,0,0,114,53,0,0,0,114,221,0,
+ 0,0,218,6,112,97,114,101,110,116,114,94,0,0,0,114,
+ 27,0,0,0,114,23,0,0,0,114,202,0,0,0,114,4,
+ 0,0,0,114,4,0,0,0,114,5,0,0,0,114,199,0,
+ 0,0,98,3,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,
+ 112,0,0,0,114,111,0,0,0,114,113,0,0,0,114,114,
+ 0,0,0,114,198,0,0,0,114,200,0,0,0,114,199,0,
+ 0,0,114,4,0,0,0,114,4,0,0,0,114,4,0,0,
+ 0,114,5,0,0,0,114,219,0,0,0,84,3,0,0,115,
+ 8,0,0,0,12,2,6,2,12,5,12,5,114,219,0,0,
+ 0,99,0,0,0,0,0,0,0,0,0,0,0,0,2,0,
+ 0,0,64,0,0,0,115,46,0,0,0,101,0,0,90,1,
+ 0,100,0,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,20,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,108,0,0,0,
- 114,126,0,0,0,114,4,0,0,0,114,4,0,0,0,114,
- 5,0,0,0,114,203,0,0,0,137,3,0,0,115,2,0,
- 0,0,0,2,122,31,83,111,117,114,99,101,108,101,115,115,
- 70,105,108,101,76,111,97,100,101,114,46,103,101,116,95,115,
- 111,117,114,99,101,78,41,6,114,112,0,0,0,114,111,0,
- 0,0,114,113,0,0,0,114,114,0,0,0,114,190,0,0,
- 0,114,203,0,0,0,114,4,0,0,0,114,4,0,0,0,
- 114,4,0,0,0,114,5,0,0,0,114,224,0,0,0,127,
- 3,0,0,115,6,0,0,0,12,2,6,2,12,6,114,224,
- 0,0,0,99,0,0,0,0,0,0,0,0,0,0,0,0,
- 3,0,0,0,64,0,0,0,115,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,106,0,0,0,114,
- 35,0,0,0,41,3,114,108,0,0,0,114,106,0,0,0,
- 114,35,0,0,0,114,4,0,0,0,114,4,0,0,0,114,
- 5,0,0,0,114,188,0,0,0,154,3,0,0,115,4,0,
- 0,0,0,1,9,1,122,28,69,120,116,101,110,115,105,111,
- 110,70,105,108,101,76,111,97,100,101,114,46,95,95,105,110,
- 105,116,95,95,99,2,0,0,0,0,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,212,0,0,0,114,118,0,0,0,41,
- 2,114,108,0,0,0,114,213,0,0,0,114,4,0,0,0,
- 114,4,0,0,0,114,5,0,0,0,114,214,0,0,0,158,
- 3,0,0,115,4,0,0,0,0,1,18,1,122,26,69,120,
- 116,101,110,115,105,111,110,70,105,108,101,76,111,97,100,101,
- 114,46,95,95,101,113,95,95,99,1,0,0,0,0,0,0,
- 0,1,0,0,0,3,0,0,0,67,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,215,0,0,0,114,106,0,0,0,114,35,0,0,0,
+ 114,122,45,76,111,97,100,101,114,32,119,104,105,99,104,32,
+ 104,97,110,100,108,101,115,32,115,111,117,114,99,101,108,101,
+ 115,115,32,102,105,108,101,32,105,109,112,111,114,116,115,46,
+ 99,2,0,0,0,0,0,0,0,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,106,0,0,0,114,35,
+ 0,0,0,114,89,0,0,0,41,4,114,163,0,0,0,114,
+ 201,0,0,0,114,146,0,0,0,114,152,0,0,0,41,5,
+ 114,108,0,0,0,114,126,0,0,0,114,35,0,0,0,114,
+ 53,0,0,0,114,210,0,0,0,114,4,0,0,0,114,4,
+ 0,0,0,114,5,0,0,0,114,190,0,0,0,131,3,0,
+ 0,115,8,0,0,0,0,1,15,1,15,1,24,1,122,29,
+ 83,111,117,114,99,101,108,101,115,115,70,105,108,101,76,111,
+ 97,100,101,114,46,103,101,116,95,99,111,100,101,99,2,0,
+ 0,0,0,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,108,
+ 0,0,0,114,126,0,0,0,114,4,0,0,0,114,4,0,
+ 0,0,114,5,0,0,0,114,203,0,0,0,137,3,0,0,
+ 115,2,0,0,0,0,2,122,31,83,111,117,114,99,101,108,
+ 101,115,115,70,105,108,101,76,111,97,100,101,114,46,103,101,
+ 116,95,115,111,117,114,99,101,78,41,6,114,112,0,0,0,
+ 114,111,0,0,0,114,113,0,0,0,114,114,0,0,0,114,
+ 190,0,0,0,114,203,0,0,0,114,4,0,0,0,114,4,
+ 0,0,0,114,4,0,0,0,114,5,0,0,0,114,224,0,
+ 0,0,127,3,0,0,115,6,0,0,0,12,2,6,2,12,
+ 6,114,224,0,0,0,99,0,0,0,0,0,0,0,0,0,
+ 0,0,0,3,0,0,0,64,0,0,0,115,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,106,0,
+ 0,0,114,35,0,0,0,41,3,114,108,0,0,0,114,106,
+ 0,0,0,114,35,0,0,0,114,4,0,0,0,114,4,0,
+ 0,0,114,5,0,0,0,114,188,0,0,0,154,3,0,0,
+ 115,4,0,0,0,0,1,9,1,122,28,69,120,116,101,110,
+ 115,105,111,110,70,105,108,101,76,111,97,100,101,114,46,95,
+ 95,105,110,105,116,95,95,99,2,0,0,0,0,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,212,0,0,0,114,118,0,
+ 0,0,41,2,114,108,0,0,0,114,213,0,0,0,114,4,
+ 0,0,0,114,4,0,0,0,114,5,0,0,0,114,214,0,
+ 0,0,158,3,0,0,115,4,0,0,0,0,1,18,1,122,
+ 26,69,120,116,101,110,115,105,111,110,70,105,108,101,76,111,
+ 97,100,101,114,46,95,95,101,113,95,95,99,1,0,0,0,
+ 0,0,0,0,1,0,0,0,3,0,0,0,67,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,215,0,0,0,114,106,0,0,0,114,35,
+ 0,0,0,41,1,114,108,0,0,0,114,4,0,0,0,114,
+ 4,0,0,0,114,5,0,0,0,114,216,0,0,0,162,3,
+ 0,0,115,2,0,0,0,0,1,122,28,69,120,116,101,110,
+ 115,105,111,110,70,105,108,101,76,111,97,100,101,114,46,95,
+ 95,104,97,115,104,95,95,99,2,0,0,0,0,0,0,0,
+ 4,0,0,0,11,0,0,0,67,0,0,0,115,184,0,0,
+ 0,116,0,0,106,1,0,124,1,0,131,1,0,143,32,0,
+ 1,116,0,0,106,2,0,116,3,0,106,4,0,124,1,0,
+ 124,0,0,106,5,0,131,3,0,125,2,0,87,100,1,0,
+ 81,82,88,116,6,0,100,2,0,124,0,0,106,5,0,131,
+ 2,0,1,124,0,0,106,7,0,124,1,0,131,1,0,125,
+ 3,0,124,3,0,114,128,0,116,8,0,124,2,0,100,3,
+ 0,131,2,0,12,114,128,0,116,9,0,124,0,0,106,5,
+ 0,131,1,0,100,4,0,25,103,1,0,124,2,0,95,10,
+ 0,124,0,0,124,2,0,95,11,0,124,2,0,106,12,0,
+ 124,2,0,95,13,0,124,3,0,115,180,0,124,2,0,106,
+ 13,0,106,14,0,100,5,0,131,1,0,100,4,0,25,124,
+ 2,0,95,13,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,218,8,95,95,112,97,
+ 116,104,95,95,114,59,0,0,0,114,58,0,0,0,41,15,
+ 114,121,0,0,0,90,13,95,77,97,110,97,103,101,82,101,
+ 108,111,97,100,114,191,0,0,0,114,150,0,0,0,90,12,
+ 108,111,97,100,95,100,121,110,97,109,105,99,114,35,0,0,
+ 0,114,105,0,0,0,114,162,0,0,0,114,115,0,0,0,
+ 114,38,0,0,0,114,226,0,0,0,218,10,95,95,108,111,
+ 97,100,101,114,95,95,114,112,0,0,0,218,11,95,95,112,
+ 97,99,107,97,103,101,95,95,114,32,0,0,0,41,4,114,
+ 108,0,0,0,114,126,0,0,0,114,134,0,0,0,114,162,
+ 0,0,0,114,4,0,0,0,114,4,0,0,0,114,5,0,
+ 0,0,114,194,0,0,0,165,3,0,0,115,24,0,0,0,
+ 0,5,16,1,12,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,188,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,250,9,60,103,101,110,101,
+ 120,112,114,62,186,3,0,0,115,2,0,0,0,6,1,122,
+ 49,69,120,116,101,110,115,105,111,110,70,105,108,101,76,111,
+ 97,100,101,114,46,105,115,95,112,97,99,107,97,103,101,46,
+ 60,108,111,99,97,108,115,62,46,60,103,101,110,101,120,112,
+ 114,62,41,4,114,38,0,0,0,114,35,0,0,0,218,3,
+ 97,110,121,218,18,69,88,84,69,78,83,73,79,78,95,83,
+ 85,70,70,73,88,69,83,41,2,114,108,0,0,0,114,126,
+ 0,0,0,114,4,0,0,0,41,1,114,230,0,0,0,114,
+ 5,0,0,0,114,162,0,0,0,183,3,0,0,115,6,0,
+ 0,0,0,2,19,1,18,1,122,30,69,120,116,101,110,115,
+ 105,111,110,70,105,108,101,76,111,97,100,101,114,46,105,115,
+ 95,112,97,99,107,97,103,101,99,2,0,0,0,0,0,0,
+ 0,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,108,0,0,0,114,126,0,0,0,114,4,0,0,0,
+ 114,4,0,0,0,114,5,0,0,0,114,190,0,0,0,189,
+ 3,0,0,115,2,0,0,0,0,2,122,28,69,120,116,101,
+ 110,115,105,111,110,70,105,108,101,76,111,97,100,101,114,46,
+ 103,101,116,95,99,111,100,101,99,2,0,0,0,0,0,0,
+ 0,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,108,0,0,0,114,126,0,0,
+ 0,114,4,0,0,0,114,4,0,0,0,114,5,0,0,0,
+ 114,203,0,0,0,193,3,0,0,115,2,0,0,0,0,2,
+ 122,30,69,120,116,101,110,115,105,111,110,70,105,108,101,76,
+ 111,97,100,101,114,46,103,101,116,95,115,111,117,114,99,101,
+ 99,2,0,0,0,0,0,0,0,2,0,0,0,1,0,0,
+ 0,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,108,0,0,0,114,126,0,
+ 0,0,114,4,0,0,0,114,4,0,0,0,114,5,0,0,
+ 0,114,163,0,0,0,197,3,0,0,115,2,0,0,0,0,
+ 3,122,32,69,120,116,101,110,115,105,111,110,70,105,108,101,
+ 76,111,97,100,101,114,46,103,101,116,95,102,105,108,101,110,
+ 97,109,101,78,41,13,114,112,0,0,0,114,111,0,0,0,
+ 114,113,0,0,0,114,114,0,0,0,114,188,0,0,0,114,
+ 214,0,0,0,114,216,0,0,0,114,123,0,0,0,114,194,
+ 0,0,0,114,162,0,0,0,114,190,0,0,0,114,203,0,
+ 0,0,114,163,0,0,0,114,4,0,0,0,114,4,0,0,
+ 0,114,4,0,0,0,114,5,0,0,0,114,225,0,0,0,
+ 146,3,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,225,0,0,0,
+ 99,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,
+ 0,64,0,0,0,115,130,0,0,0,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,218,5,95,110,
+ 97,109,101,218,5,95,112,97,116,104,114,93,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,108,0,0,0,114,106,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,
+ 188,0,0,0,210,3,0,0,115,8,0,0,0,0,1,9,
+ 1,9,1,21,1,122,23,95,78,97,109,101,115,112,97,99,
+ 101,80,97,116,104,46,95,95,105,110,105,116,95,95,99,1,
+ 0,0,0,0,0,0,0,4,0,0,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,
+ 58,0,0,0,114,30,0,0,0,114,7,0,0,0,114,35,
+ 0,0,0,114,226,0,0,0,41,2,122,3,115,121,115,122,
+ 4,112,97,116,104,41,2,114,235,0,0,0,114,32,0,0,
+ 0,41,4,114,108,0,0,0,114,223,0,0,0,218,3,100,
+ 111,116,90,2,109,101,114,4,0,0,0,114,4,0,0,0,
+ 114,5,0,0,0,218,23,95,102,105,110,100,95,112,97,114,
+ 101,110,116,95,112,97,116,104,95,110,97,109,101,115,216,3,
+ 0,0,115,8,0,0,0,0,2,27,1,12,2,4,3,122,
+ 38,95,78,97,109,101,115,112,97,99,101,80,97,116,104,46,
+ 95,102,105,110,100,95,112,97,114,101,110,116,95,112,97,116,
+ 104,95,110,97,109,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,242,0,0,
+ 0,114,117,0,0,0,114,7,0,0,0,114,132,0,0,0,
+ 41,3,114,108,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,237,0,0,0,226,
+ 3,0,0,115,4,0,0,0,0,1,18,1,122,31,95,78,
+ 97,109,101,115,112,97,99,101,80,97,116,104,46,95,103,101,
+ 116,95,112,97,114,101,110,116,95,112,97,116,104,99,1,0,
+ 0,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,93,0,0,0,114,237,0,0,0,114,238,0,0,
+ 0,114,239,0,0,0,114,235,0,0,0,114,127,0,0,0,
+ 114,164,0,0,0,114,236,0,0,0,41,3,114,108,0,0,
+ 0,90,11,112,97,114,101,110,116,95,112,97,116,104,114,133,
+ 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,
+ 230,3,0,0,115,16,0,0,0,0,2,18,1,15,1,21,
+ 3,27,1,9,1,12,1,9,1,122,27,95,78,97,109,101,
+ 115,112,97,99,101,80,97,116,104,46,95,114,101,99,97,108,
+ 99,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,243,0,0,0,
41,1,114,108,0,0,0,114,4,0,0,0,114,4,0,0,
- 0,114,5,0,0,0,114,216,0,0,0,162,3,0,0,115,
- 2,0,0,0,0,1,122,28,69,120,116,101,110,115,105,111,
- 110,70,105,108,101,76,111,97,100,101,114,46,95,95,104,97,
- 115,104,95,95,99,2,0,0,0,0,0,0,0,4,0,0,
- 0,11,0,0,0,67,0,0,0,115,183,0,0,0,116,0,
- 0,106,1,0,124,1,0,131,1,0,143,32,0,1,116,0,
- 0,106,2,0,116,3,0,106,4,0,124,1,0,124,0,0,
- 106,5,0,131,3,0,125,2,0,87,100,1,0,81,88,116,
- 6,0,100,2,0,124,0,0,106,5,0,131,2,0,1,124,
- 0,0,106,7,0,124,1,0,131,1,0,125,3,0,124,3,
- 0,114,127,0,116,8,0,124,2,0,100,3,0,131,2,0,
- 12,114,127,0,116,9,0,124,0,0,106,5,0,131,1,0,
- 100,4,0,25,103,1,0,124,2,0,95,10,0,124,0,0,
- 124,2,0,95,11,0,124,2,0,106,12,0,124,2,0,95,
- 13,0,124,3,0,115,179,0,124,2,0,106,13,0,106,14,
- 0,100,5,0,131,1,0,100,4,0,25,124,2,0,95,13,
- 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,218,8,95,95,112,97,116,104,95,95,
- 114,59,0,0,0,114,58,0,0,0,41,15,114,121,0,0,
- 0,90,13,95,77,97,110,97,103,101,82,101,108,111,97,100,
- 114,191,0,0,0,114,150,0,0,0,90,12,108,111,97,100,
- 95,100,121,110,97,109,105,99,114,35,0,0,0,114,105,0,
- 0,0,114,162,0,0,0,114,115,0,0,0,114,38,0,0,
- 0,114,226,0,0,0,218,10,95,95,108,111,97,100,101,114,
- 95,95,114,112,0,0,0,218,11,95,95,112,97,99,107,97,
- 103,101,95,95,114,32,0,0,0,41,4,114,108,0,0,0,
- 114,126,0,0,0,114,134,0,0,0,114,162,0,0,0,114,
- 4,0,0,0,114,4,0,0,0,114,5,0,0,0,114,194,
- 0,0,0,165,3,0,0,115,24,0,0,0,0,5,16,1,
- 12,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,188,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,250,9,60,103,101,110,101,120,112,114,62,
- 186,3,0,0,115,2,0,0,0,6,1,122,49,69,120,116,
- 101,110,115,105,111,110,70,105,108,101,76,111,97,100,101,114,
- 46,105,115,95,112,97,99,107,97,103,101,46,60,108,111,99,
- 97,108,115,62,46,60,103,101,110,101,120,112,114,62,41,4,
- 114,38,0,0,0,114,35,0,0,0,218,3,97,110,121,218,
- 18,69,88,84,69,78,83,73,79,78,95,83,85,70,70,73,
- 88,69,83,41,2,114,108,0,0,0,114,126,0,0,0,114,
- 4,0,0,0,41,1,114,230,0,0,0,114,5,0,0,0,
- 114,162,0,0,0,183,3,0,0,115,6,0,0,0,0,2,
- 19,1,18,1,122,30,69,120,116,101,110,115,105,111,110,70,
- 105,108,101,76,111,97,100,101,114,46,105,115,95,112,97,99,
+ 0,114,5,0,0,0,218,8,95,95,105,116,101,114,95,95,
+ 243,3,0,0,115,2,0,0,0,0,1,122,23,95,78,97,
+ 109,101,115,112,97,99,101,80,97,116,104,46,95,95,105,116,
+ 101,114,95,95,99,1,0,0,0,0,0,0,0,1,0,0,
+ 0,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,243,0,0,0,41,1,114,
+ 108,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,246,3,0,0,
+ 115,2,0,0,0,0,1,122,22,95,78,97,109,101,115,112,
+ 97,99,101,80,97,116,104,46,95,95,108,101,110,95,95,99,
+ 1,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,
+ 67,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,236,0,0,0,41,1,
+ 114,108,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,249,3,
+ 0,0,115,2,0,0,0,0,1,122,23,95,78,97,109,101,
+ 115,112,97,99,101,80,97,116,104,46,95,95,114,101,112,114,
+ 95,95,99,2,0,0,0,0,0,0,0,2,0,0,0,2,
+ 0,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,243,0,0,0,41,2,114,108,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,
+ 252,3,0,0,115,2,0,0,0,0,1,122,27,95,78,97,
+ 109,101,115,112,97,99,101,80,97,116,104,46,95,95,99,111,
+ 110,116,97,105,110,115,95,95,99,2,0,0,0,0,0,0,
+ 0,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,236,0,0,0,
+ 114,169,0,0,0,41,2,114,108,0,0,0,114,248,0,0,
+ 0,114,4,0,0,0,114,4,0,0,0,114,5,0,0,0,
+ 114,169,0,0,0,255,3,0,0,115,2,0,0,0,0,1,
+ 122,21,95,78,97,109,101,115,112,97,99,101,80,97,116,104,
+ 46,97,112,112,101,110,100,78,41,13,114,112,0,0,0,114,
+ 111,0,0,0,114,113,0,0,0,114,114,0,0,0,114,188,
+ 0,0,0,114,242,0,0,0,114,237,0,0,0,114,243,0,
+ 0,0,114,245,0,0,0,114,246,0,0,0,114,247,0,0,
+ 0,114,249,0,0,0,114,169,0,0,0,114,4,0,0,0,
+ 114,4,0,0,0,114,4,0,0,0,114,5,0,0,0,114,
+ 234,0,0,0,203,3,0,0,115,20,0,0,0,12,5,6,
+ 2,12,6,12,10,12,4,12,13,12,3,12,3,12,3,12,
+ 3,114,234,0,0,0,99,0,0,0,0,0,0,0,0,0,
+ 0,0,0,3,0,0,0,64,0,0,0,115,118,0,0,0,
+ 101,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,218,16,95,78,97,109,101,115,
+ 112,97,99,101,76,111,97,100,101,114,99,4,0,0,0,0,
+ 0,0,0,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,234,0,0,0,114,236,0,0,0,41,4,114,108,
+ 0,0,0,114,106,0,0,0,114,35,0,0,0,114,240,0,
+ 0,0,114,4,0,0,0,114,4,0,0,0,114,5,0,0,
+ 0,114,188,0,0,0,5,4,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,
+ 112,0,0,0,41,2,114,174,0,0,0,114,134,0,0,0,
+ 114,4,0,0,0,114,4,0,0,0,114,5,0,0,0,218,
+ 11,109,111,100,117,108,101,95,114,101,112,114,8,4,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,108,
+ 0,0,0,114,126,0,0,0,114,4,0,0,0,114,4,0,
+ 0,0,114,5,0,0,0,114,162,0,0,0,17,4,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,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,108,0,
+ 0,83,41,2,78,114,30,0,0,0,114,4,0,0,0,41,
+ 2,114,108,0,0,0,114,126,0,0,0,114,4,0,0,0,
+ 114,4,0,0,0,114,5,0,0,0,114,203,0,0,0,20,
+ 4,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,192,0,0,0,114,205,
+ 0,0,0,84,41,1,114,206,0,0,0,41,2,114,108,0,
0,0,114,126,0,0,0,114,4,0,0,0,114,4,0,0,
- 0,114,5,0,0,0,114,190,0,0,0,189,3,0,0,115,
- 2,0,0,0,0,2,122,28,69,120,116,101,110,115,105,111,
- 110,70,105,108,101,76,111,97,100,101,114,46,103,101,116,95,
- 99,111,100,101,99,2,0,0,0,0,0,0,0,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,108,0,0,0,114,126,0,0,0,114,4,0,
- 0,0,114,4,0,0,0,114,5,0,0,0,114,203,0,0,
- 0,193,3,0,0,115,2,0,0,0,0,2,122,30,69,120,
- 116,101,110,115,105,111,110,70,105,108,101,76,111,97,100,101,
- 114,46,103,101,116,95,115,111,117,114,99,101,99,2,0,0,
+ 0,114,5,0,0,0,114,190,0,0,0,23,4,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,108,0,0,0,114,133,0,0,0,114,
+ 4,0,0,0,114,4,0,0,0,114,5,0,0,0,114,189,
+ 0,0,0,26,4,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,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,108,0,0,0,114,126,0,0,0,114,4,
- 0,0,0,114,4,0,0,0,114,5,0,0,0,114,163,0,
- 0,0,197,3,0,0,115,2,0,0,0,0,3,122,32,69,
- 120,116,101,110,115,105,111,110,70,105,108,101,76,111,97,100,
- 101,114,46,103,101,116,95,102,105,108,101,110,97,109,101,78,
- 41,13,114,112,0,0,0,114,111,0,0,0,114,113,0,0,
- 0,114,114,0,0,0,114,188,0,0,0,114,214,0,0,0,
- 114,216,0,0,0,114,123,0,0,0,114,194,0,0,0,114,
- 162,0,0,0,114,190,0,0,0,114,203,0,0,0,114,163,
- 0,0,0,114,4,0,0,0,114,4,0,0,0,114,4,0,
- 0,0,114,5,0,0,0,114,225,0,0,0,146,3,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,225,0,0,0,99,0,0,0,
- 0,0,0,0,0,0,0,0,0,2,0,0,0,64,0,0,
- 0,115,130,0,0,0,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,218,5,95,110,97,109,101,218,
- 5,95,112,97,116,104,114,93,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,108,0,0,0,114,106,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,188,0,0,0,
- 210,3,0,0,115,8,0,0,0,0,1,9,1,9,1,21,
- 1,122,23,95,78,97,109,101,115,112,97,99,101,80,97,116,
- 104,46,95,95,105,110,105,116,95,95,99,1,0,0,0,0,
- 0,0,0,4,0,0,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,58,0,0,0,
- 114,30,0,0,0,114,7,0,0,0,114,35,0,0,0,114,
- 226,0,0,0,41,2,122,3,115,121,115,122,4,112,97,116,
- 104,41,2,114,235,0,0,0,114,32,0,0,0,41,4,114,
- 108,0,0,0,114,223,0,0,0,218,3,100,111,116,90,2,
- 109,101,114,4,0,0,0,114,4,0,0,0,114,5,0,0,
- 0,218,23,95,102,105,110,100,95,112,97,114,101,110,116,95,
- 112,97,116,104,95,110,97,109,101,115,216,3,0,0,115,8,
- 0,0,0,0,2,27,1,12,2,4,3,122,38,95,78,97,
- 109,101,115,112,97,99,101,80,97,116,104,46,95,102,105,110,
- 100,95,112,97,114,101,110,116,95,112,97,116,104,95,110,97,
- 109,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,242,0,0,0,114,117,0,
- 0,0,114,7,0,0,0,114,132,0,0,0,41,3,114,108,
- 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,237,0,0,0,226,3,0,0,115,
- 4,0,0,0,0,1,18,1,122,31,95,78,97,109,101,115,
- 112,97,99,101,80,97,116,104,46,95,103,101,116,95,112,97,
- 114,101,110,116,95,112,97,116,104,99,1,0,0,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,93,
- 0,0,0,114,237,0,0,0,114,238,0,0,0,114,239,0,
- 0,0,114,235,0,0,0,114,127,0,0,0,114,164,0,0,
- 0,114,236,0,0,0,41,3,114,108,0,0,0,90,11,112,
- 97,114,101,110,116,95,112,97,116,104,114,133,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,230,3,0,0,
- 115,16,0,0,0,0,2,18,1,15,1,21,3,27,1,9,
- 1,12,1,9,1,122,27,95,78,97,109,101,115,112,97,99,
- 101,80,97,116,104,46,95,114,101,99,97,108,99,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,243,0,0,0,41,1,114,108,
- 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,243,3,0,0,
- 115,2,0,0,0,0,1,122,23,95,78,97,109,101,115,112,
- 97,99,101,80,97,116,104,46,95,95,105,116,101,114,95,95,
- 99,1,0,0,0,0,0,0,0,1,0,0,0,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,243,0,0,0,41,1,114,108,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,246,3,0,0,115,2,0,0,
- 0,0,1,122,22,95,78,97,109,101,115,112,97,99,101,80,
- 97,116,104,46,95,95,108,101,110,95,95,99,1,0,0,0,
- 0,0,0,0,1,0,0,0,2,0,0,0,67,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,236,0,0,0,41,1,114,108,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,249,3,0,0,115,2,
- 0,0,0,0,1,122,23,95,78,97,109,101,115,112,97,99,
- 101,80,97,116,104,46,95,95,114,101,112,114,95,95,99,2,
- 0,0,0,0,0,0,0,2,0,0,0,2,0,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,243,0,
- 0,0,41,2,114,108,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,252,3,0,0,
- 115,2,0,0,0,0,1,122,27,95,78,97,109,101,115,112,
- 97,99,101,80,97,116,104,46,95,95,99,111,110,116,97,105,
- 110,115,95,95,99,2,0,0,0,0,0,0,0,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,236,0,0,0,114,169,0,0,
- 0,41,2,114,108,0,0,0,114,248,0,0,0,114,4,0,
- 0,0,114,4,0,0,0,114,5,0,0,0,114,169,0,0,
- 0,255,3,0,0,115,2,0,0,0,0,1,122,21,95,78,
- 97,109,101,115,112,97,99,101,80,97,116,104,46,97,112,112,
- 101,110,100,78,41,13,114,112,0,0,0,114,111,0,0,0,
- 114,113,0,0,0,114,114,0,0,0,114,188,0,0,0,114,
- 242,0,0,0,114,237,0,0,0,114,243,0,0,0,114,245,
- 0,0,0,114,246,0,0,0,114,247,0,0,0,114,249,0,
- 0,0,114,169,0,0,0,114,4,0,0,0,114,4,0,0,
- 0,114,4,0,0,0,114,5,0,0,0,114,234,0,0,0,
- 203,3,0,0,115,20,0,0,0,12,5,6,2,12,6,12,
- 10,12,4,12,13,12,3,12,3,12,3,12,3,114,234,0,
- 0,0,99,0,0,0,0,0,0,0,0,0,0,0,0,3,
- 0,0,0,64,0,0,0,115,118,0,0,0,101,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,218,16,95,78,97,109,101,115,112,97,99,101,
- 76,111,97,100,101,114,99,4,0,0,0,0,0,0,0,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,234,
- 0,0,0,114,236,0,0,0,41,4,114,108,0,0,0,114,
- 106,0,0,0,114,35,0,0,0,114,240,0,0,0,114,4,
- 0,0,0,114,4,0,0,0,114,5,0,0,0,114,188,0,
- 0,0,5,4,0,0,115,2,0,0,0,0,1,122,25,95,
+ 0,115,4,0,0,0,100,0,0,83,41,1,78,114,4,0,
+ 0,0,41,2,114,108,0,0,0,114,134,0,0,0,114,4,
+ 0,0,0,114,4,0,0,0,114,5,0,0,0,114,193,0,
+ 0,0,29,4,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,
- 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,112,0,0,0,
- 41,2,114,174,0,0,0,114,134,0,0,0,114,4,0,0,
- 0,114,4,0,0,0,114,5,0,0,0,218,11,109,111,100,
- 117,108,101,95,114,101,112,114,8,4,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,108,0,0,0,114,
- 126,0,0,0,114,4,0,0,0,114,4,0,0,0,114,5,
- 0,0,0,114,162,0,0,0,17,4,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,108,0,
- 0,0,114,126,0,0,0,114,4,0,0,0,114,4,0,0,
- 0,114,5,0,0,0,114,203,0,0,0,20,4,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,192,0,0,0,114,205,0,0,0,84,
- 41,1,114,206,0,0,0,41,2,114,108,0,0,0,114,126,
- 0,0,0,114,4,0,0,0,114,4,0,0,0,114,5,0,
- 0,0,114,190,0,0,0,23,4,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,108,0,0,0,114,133,0,0,0,114,4,0,0,0,
- 114,4,0,0,0,114,5,0,0,0,114,189,0,0,0,26,
- 4,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,108,0,0,0,114,134,0,0,0,114,4,0,0,0,114,
- 4,0,0,0,114,5,0,0,0,114,193,0,0,0,29,4,
- 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,105,
- 0,0,0,114,236,0,0,0,114,135,0,0,0,41,2,114,
- 108,0,0,0,114,126,0,0,0,114,4,0,0,0,114,4,
- 0,0,0,114,5,0,0,0,114,194,0,0,0,32,4,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,112,0,0,0,
- 114,111,0,0,0,114,113,0,0,0,114,188,0,0,0,114,
- 186,0,0,0,114,251,0,0,0,114,162,0,0,0,114,203,
- 0,0,0,114,190,0,0,0,114,189,0,0,0,114,193,0,
- 0,0,114,194,0,0,0,114,4,0,0,0,114,4,0,0,
- 0,114,4,0,0,0,114,5,0,0,0,114,250,0,0,0,
- 4,4,0,0,115,16,0,0,0,12,1,12,3,18,9,12,
- 3,12,3,12,3,12,3,12,3,114,250,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,
+ 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,105,0,0,0,114,236,0,0,0,114,135,0,0,
+ 0,41,2,114,108,0,0,0,114,126,0,0,0,114,4,0,
+ 0,0,114,4,0,0,0,114,5,0,0,0,114,194,0,0,
+ 0,32,4,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,
+ 112,0,0,0,114,111,0,0,0,114,113,0,0,0,114,188,
+ 0,0,0,114,186,0,0,0,114,251,0,0,0,114,162,0,
+ 0,0,114,203,0,0,0,114,190,0,0,0,114,189,0,0,
+ 0,114,193,0,0,0,114,194,0,0,0,114,4,0,0,0,
+ 114,4,0,0,0,114,4,0,0,0,114,5,0,0,0,114,
+ 250,0,0,0,4,4,0,0,115,16,0,0,0,12,1,12,
+ 3,18,9,12,3,12,3,12,3,12,3,12,3,114,250,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,115,0,0,0,114,253,0,0,0,41,2,
+ 114,174,0,0,0,218,6,102,105,110,100,101,114,114,4,0,
+ 0,0,114,4,0,0,0,114,5,0,0,0,114,253,0,0,
+ 0,49,4,0,0,115,6,0,0,0,0,4,22,1,15,1,
+ 122,28,80,97,116,104,70,105,110,100,101,114,46,105,110,118,
+ 97,108,105,100,97,116,101,95,99,97,99,104,101,115,99,2,
+ 0,0,0,0,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,60,0,0,0,114,61,0,0,0,114,
+ 125,0,0,0,114,107,0,0,0,41,3,114,174,0,0,0,
+ 114,35,0,0,0,90,4,104,111,111,107,114,4,0,0,0,
+ 114,4,0,0,0,114,5,0,0,0,218,11,95,112,97,116,
+ 104,95,104,111,111,107,115,57,4,0,0,115,16,0,0,0,
+ 0,7,25,1,16,1,16,1,3,1,14,1,13,1,12,2,
+ 122,22,80,97,116,104,70,105,110,100,101,114,46,95,112,97,
+ 116,104,95,104,111,111,107,115,99,2,0,0,0,0,0,0,
+ 0,3,0,0,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,254,0,
+ 0,0,114,142,0,0,0,114,2,1,0,0,41,3,114,174,
+ 0,0,0,114,35,0,0,0,114,0,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,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,115,0,0,0,114,253,0,0,0,41,2,114,174,0,0,
- 0,218,6,102,105,110,100,101,114,114,4,0,0,0,114,4,
- 0,0,0,114,5,0,0,0,114,253,0,0,0,49,4,0,
- 0,115,6,0,0,0,0,4,22,1,15,1,122,28,80,97,
- 116,104,70,105,110,100,101,114,46,105,110,118,97,108,105,100,
- 97,116,101,95,99,97,99,104,101,115,99,2,0,0,0,0,
- 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,60,0,0,0,114,61,0,0,0,114,125,0,0,0,
- 114,107,0,0,0,41,3,114,174,0,0,0,114,35,0,0,
- 0,90,4,104,111,111,107,114,4,0,0,0,114,4,0,0,
- 0,114,5,0,0,0,218,11,95,112,97,116,104,95,104,111,
- 111,107,115,57,4,0,0,115,16,0,0,0,0,7,25,1,
- 16,1,16,1,3,1,14,1,13,1,12,2,122,22,80,97,
- 116,104,70,105,110,100,101,114,46,95,112,97,116,104,95,104,
- 111,111,107,115,99,2,0,0,0,0,0,0,0,3,0,0,
- 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,254,0,0,0,114,142,
- 0,0,0,114,2,1,0,0,41,3,114,174,0,0,0,114,
- 35,0,0,0,114,0,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,74,4,
- 0,0,115,22,0,0,0,0,8,12,1,3,1,16,1,13,
- 3,9,1,3,1,17,1,13,1,15,1,18,1,122,31,80,
- 97,116,104,70,105,110,100,101,114,46,95,112,97,116,104,95,
- 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,116,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,
- 106,5,0,124,1,0,100,0,0,131,2,0,125,5,0,124,
- 4,0,124,5,0,95,6,0,124,5,0,83,41,2,78,114,
- 124,0,0,0,41,7,114,115,0,0,0,114,124,0,0,0,
- 114,185,0,0,0,114,131,0,0,0,114,121,0,0,0,114,
- 166,0,0,0,114,164,0,0,0,41,6,114,174,0,0,0,
- 114,126,0,0,0,114,0,1,0,0,114,127,0,0,0,114,
- 128,0,0,0,114,133,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,96,4,0,0,115,18,
- 0,0,0,0,4,15,1,24,2,15,1,6,1,12,1,13,
- 1,18,1,9,1,122,27,80,97,116,104,70,105,110,100,101,
- 114,46,95,108,101,103,97,99,121,95,103,101,116,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,243,0,0,0,103,0,0,
- 125,4,0,120,230,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,
- 106,12,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,184,0,0,0,122,19,115,112,101,99,32,
- 109,105,115,115,105,110,103,32,108,111,97,100,101,114,41,13,
- 114,148,0,0,0,114,69,0,0,0,218,5,98,121,116,101,
- 115,114,4,1,0,0,114,115,0,0,0,114,184,0,0,0,
- 114,5,1,0,0,114,127,0,0,0,114,164,0,0,0,114,
- 107,0,0,0,114,154,0,0,0,114,121,0,0,0,114,166,
- 0,0,0,41,9,114,174,0,0,0,114,126,0,0,0,114,
- 35,0,0,0,114,183,0,0,0,218,14,110,97,109,101,115,
- 112,97,99,101,95,112,97,116,104,90,5,101,110,116,114,121,
- 114,0,1,0,0,114,133,0,0,0,114,128,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,111,4,0,0,115,40,0,
- 0,0,0,5,6,1,13,1,21,1,3,1,15,1,12,1,
- 15,1,21,2,18,1,12,1,3,1,15,1,4,1,9,1,
- 12,1,12,5,17,2,18,1,9,1,122,20,80,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,8,1,0,0,114,127,0,0,0,114,164,
- 0,0,0,114,161,0,0,0,114,234,0,0,0,41,6,114,
- 174,0,0,0,114,126,0,0,0,114,35,0,0,0,114,183,
- 0,0,0,114,133,0,0,0,114,7,1,0,0,114,4,0,
- 0,0,114,4,0,0,0,114,5,0,0,0,114,184,0,0,
- 0,143,4,0,0,115,26,0,0,0,0,4,12,1,9,1,
- 21,1,12,1,4,1,15,1,9,1,6,3,9,1,24,1,
- 4,2,7,2,122,20,80,97,116,104,70,105,110,100,101,114,
- 46,102,105,110,100,95,115,112,101,99,99,3,0,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,
+ 104,101,74,4,0,0,115,22,0,0,0,0,8,12,1,3,
+ 1,16,1,13,3,9,1,3,1,17,1,13,1,15,1,18,
+ 1,122,31,80,97,116,104,70,105,110,100,101,114,46,95,112,
97,116,104,95,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,184,
- 0,0,0,114,127,0,0,0,41,4,114,174,0,0,0,114,
- 126,0,0,0,114,35,0,0,0,114,133,0,0,0,114,4,
- 0,0,0,114,4,0,0,0,114,5,0,0,0,114,185,0,
- 0,0,165,4,0,0,115,8,0,0,0,0,8,18,1,12,
- 1,4,1,122,22,80,97,116,104,70,105,110,100,101,114,46,
- 102,105,110,100,95,109,111,100,117,108,101,41,12,114,112,0,
- 0,0,114,111,0,0,0,114,113,0,0,0,114,114,0,0,
- 0,114,186,0,0,0,114,253,0,0,0,114,2,1,0,0,
- 114,4,1,0,0,114,5,1,0,0,114,8,1,0,0,114,
- 184,0,0,0,114,185,0,0,0,114,4,0,0,0,114,4,
- 0,0,0,114,4,0,0,0,114,5,0,0,0,114,252,0,
- 0,0,45,4,0,0,115,22,0,0,0,12,2,6,2,18,
- 8,18,17,18,22,18,15,3,1,18,31,3,1,21,21,3,
- 1,114,252,0,0,0,99,0,0,0,0,0,0,0,0,0,
- 0,0,0,3,0,0,0,64,0,0,0,115,133,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,229,0,0,0,41,1,114,127,
- 0,0,0,114,4,0,0,0,114,5,0,0,0,114,231,0,
- 0,0,194,4,0,0,115,2,0,0,0,6,0,122,38,70,
- 105,108,101,70,105,110,100,101,114,46,95,95,105,110,105,116,
- 95,95,46,60,108,111,99,97,108,115,62,46,60,103,101,110,
- 101,120,112,114,62,114,58,0,0,0,114,29,0,0,0,78,
- 114,87,0,0,0,41,7,114,154,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,108,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,171,0,0,0,114,4,0,0,0,41,1,
- 114,127,0,0,0,114,5,0,0,0,114,188,0,0,0,188,
- 4,0,0,115,16,0,0,0,0,4,6,1,19,1,36,1,
- 9,2,15,1,9,1,12,1,122,19,70,105,108,101,70,105,
- 110,100,101,114,46,95,95,105,110,105,116,95,95,99,1,0,
- 0,0,0,0,0,0,1,0,0,0,2,0,0,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,87,0,
- 0,0,41,1,114,11,1,0,0,41,1,114,108,0,0,0,
- 114,4,0,0,0,114,4,0,0,0,114,5,0,0,0,114,
- 253,0,0,0,202,4,0,0,115,2,0,0,0,0,2,122,
- 28,70,105,108,101,70,105,110,100,101,114,46,105,110,118,97,
- 108,105,100,97,116,101,95,99,97,99,104,101,115,99,2,0,
- 0,0,0,0,0,0,3,0,0,0,2,0,0,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,184,
- 0,0,0,114,127,0,0,0,114,164,0,0,0,41,3,114,
- 108,0,0,0,114,126,0,0,0,114,133,0,0,0,114,4,
- 0,0,0,114,4,0,0,0,114,5,0,0,0,114,124,0,
- 0,0,208,4,0,0,115,8,0,0,0,0,7,15,1,12,
- 1,10,1,122,22,70,105,108,101,70,105,110,100,101,114,46,
- 102,105,110,100,95,108,111,97,100,101,114,99,6,0,0,0,
- 0,0,0,0,7,0,0,0,7,0,0,0,67,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,127,0,0,0,114,164,0,0,0,41,1,114,165,0,0,
- 0,41,7,114,108,0,0,0,114,170,0,0,0,114,126,0,
- 0,0,114,35,0,0,0,90,4,115,109,115,108,114,183,0,
- 0,0,114,127,0,0,0,114,4,0,0,0,114,4,0,0,
- 0,114,5,0,0,0,114,8,1,0,0,220,4,0,0,115,
- 6,0,0,0,0,1,15,1,18,1,122,20,70,105,108,101,
- 70,105,110,100,101,114,46,95,103,101,116,95,115,112,101,99,
- 78,99,3,0,0,0,0,0,0,0,14,0,0,0,15,0,
- 0,0,67,0,0,0,115,234,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,230,1,116,18,0,100,
- 9,0,106,19,0,124,8,0,131,1,0,131,1,0,1,116,
- 20,0,106,21,0,124,1,0,100,8,0,131,2,0,125,13,
- 0,124,8,0,103,1,0,124,13,0,95,22,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,58,0,0,0,114,56,0,0,
- 0,114,29,0,0,0,114,188,0,0,0,122,9,116,114,121,
- 105,110,103,32,123,125,114,98,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,87,0,0,0,41,23,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,220,0,0,0,114,40,0,0,
- 0,114,11,1,0,0,218,11,95,102,105,108,108,95,99,97,
- 99,104,101,114,6,0,0,0,114,14,1,0,0,114,88,0,
- 0,0,114,13,1,0,0,114,28,0,0,0,114,10,1,0,
- 0,114,44,0,0,0,114,8,1,0,0,114,46,0,0,0,
- 114,105,0,0,0,114,47,0,0,0,114,121,0,0,0,114,
- 166,0,0,0,114,164,0,0,0,41,14,114,108,0,0,0,
- 114,126,0,0,0,114,183,0,0,0,90,12,105,115,95,110,
- 97,109,101,115,112,97,99,101,90,11,116,97,105,108,95,109,
- 111,100,117,108,101,114,138,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,229,0,0,0,114,
- 170,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,133,
+ 104,101,99,3,0,0,0,0,0,0,0,6,0,0,0,3,
+ 0,0,0,67,0,0,0,115,116,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,106,5,0,124,1,0,100,0,0,131,2,0,
+ 125,5,0,124,4,0,124,5,0,95,6,0,124,5,0,83,
+ 41,2,78,114,124,0,0,0,41,7,114,115,0,0,0,114,
+ 124,0,0,0,114,185,0,0,0,114,131,0,0,0,114,121,
+ 0,0,0,114,166,0,0,0,114,164,0,0,0,41,6,114,
+ 174,0,0,0,114,126,0,0,0,114,0,1,0,0,114,127,
+ 0,0,0,114,128,0,0,0,114,133,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,96,4,
+ 0,0,115,18,0,0,0,0,4,15,1,24,2,15,1,6,
+ 1,12,1,13,1,18,1,9,1,122,27,80,97,116,104,70,
+ 105,110,100,101,114,46,95,108,101,103,97,99,121,95,103,101,
+ 116,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,243,0,0,
+ 0,103,0,0,125,4,0,120,230,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,106,12,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,184,0,0,0,122,19,115,
+ 112,101,99,32,109,105,115,115,105,110,103,32,108,111,97,100,
+ 101,114,41,13,114,148,0,0,0,114,69,0,0,0,218,5,
+ 98,121,116,101,115,114,4,1,0,0,114,115,0,0,0,114,
+ 184,0,0,0,114,5,1,0,0,114,127,0,0,0,114,164,
+ 0,0,0,114,107,0,0,0,114,154,0,0,0,114,121,0,
+ 0,0,114,166,0,0,0,41,9,114,174,0,0,0,114,126,
+ 0,0,0,114,35,0,0,0,114,183,0,0,0,218,14,110,
+ 97,109,101,115,112,97,99,101,95,112,97,116,104,90,5,101,
+ 110,116,114,121,114,0,1,0,0,114,133,0,0,0,114,128,
0,0,0,114,4,0,0,0,114,4,0,0,0,114,5,0,
- 0,0,114,184,0,0,0,225,4,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,18,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,58,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,88,0,0,0,41,2,114,22,0,0,
- 0,90,2,102,110,114,4,0,0,0,114,4,0,0,0,114,
- 5,0,0,0,250,9,60,115,101,116,99,111,109,112,62,43,
- 5,0,0,115,2,0,0,0,9,0,122,41,70,105,108,101,
- 70,105,110,100,101,114,46,95,102,105,108,108,95,99,97,99,
- 104,101,46,60,108,111,99,97,108,115,62,46,60,115,101,116,
- 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,3,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,12,1,0,0,114,13,
- 1,0,0,114,83,0,0,0,114,47,0,0,0,114,88,0,
- 0,0,218,3,97,100,100,114,10,0,0,0,114,14,1,0,
- 0,41,9,114,108,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,248,
- 0,0,0,114,106,0,0,0,114,241,0,0,0,114,229,0,
- 0,0,90,8,110,101,119,95,110,97,109,101,114,4,0,0,
- 0,114,4,0,0,0,114,5,0,0,0,114,16,1,0,0,
- 14,5,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,107,0,0,0,41,1,114,35,0,0,0,41,
- 2,114,174,0,0,0,114,15,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,55,
- 5,0,0,115,6,0,0,0,0,2,12,1,18,1,122,54,
- 70,105,108,101,70,105,110,100,101,114,46,112,97,116,104,95,
- 104,111,111,107,46,60,108,111,99,97,108,115,62,46,112,97,
- 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,174,0,
- 0,0,114,15,1,0,0,114,21,1,0,0,114,4,0,0,
- 0,41,2,114,174,0,0,0,114,15,1,0,0,114,5,0,
- 0,0,218,9,112,97,116,104,95,104,111,111,107,45,5,0,
- 0,115,4,0,0,0,0,10,21,6,122,20,70,105,108,101,
- 70,105,110,100,101,114,46,112,97,116,104,95,104,111,111,107,
- 99,1,0,0,0,0,0,0,0,1,0,0,0,2,0,0,
- 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,108,0,
+ 0,0,218,9,95,103,101,116,95,115,112,101,99,111,4,0,
+ 0,115,40,0,0,0,0,5,6,1,13,1,21,1,3,1,
+ 15,1,12,1,15,1,21,2,18,1,12,1,3,1,15,1,
+ 4,1,9,1,12,1,12,5,17,2,18,1,9,1,122,20,
+ 80,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,8,1,0,0,114,127,0,
+ 0,0,114,164,0,0,0,114,161,0,0,0,114,234,0,0,
+ 0,41,6,114,174,0,0,0,114,126,0,0,0,114,35,0,
+ 0,0,114,183,0,0,0,114,133,0,0,0,114,7,1,0,
+ 0,114,4,0,0,0,114,4,0,0,0,114,5,0,0,0,
+ 114,184,0,0,0,143,4,0,0,115,26,0,0,0,0,4,
+ 12,1,9,1,21,1,12,1,4,1,15,1,9,1,6,3,
+ 9,1,24,1,4,2,7,2,122,20,80,97,116,104,70,105,
+ 110,100,101,114,46,102,105,110,100,95,115,112,101,99,99,3,
+ 0,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,184,0,0,0,114,127,0,0,0,41,4,114,174,
+ 0,0,0,114,126,0,0,0,114,35,0,0,0,114,133,0,
0,0,114,4,0,0,0,114,4,0,0,0,114,5,0,0,
- 0,114,247,0,0,0,63,5,0,0,115,2,0,0,0,0,
- 1,122,19,70,105,108,101,70,105,110,100,101,114,46,95,95,
- 114,101,112,114,95,95,41,15,114,112,0,0,0,114,111,0,
- 0,0,114,113,0,0,0,114,114,0,0,0,114,188,0,0,
- 0,114,253,0,0,0,114,130,0,0,0,114,185,0,0,0,
- 114,124,0,0,0,114,8,1,0,0,114,184,0,0,0,114,
- 16,1,0,0,114,186,0,0,0,114,22,1,0,0,114,247,
- 0,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,179,4,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,9,1,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,227,
- 0,0,0,218,8,95,95,115,112,101,99,95,95,114,127,0,
- 0,0,90,8,95,95,102,105,108,101,95,95,90,10,95,95,
- 99,97,99,104,101,100,95,95,41,6,218,3,103,101,116,114,
- 127,0,0,0,114,224,0,0,0,114,219,0,0,0,114,165,
- 0,0,0,218,9,69,120,99,101,112,116,105,111,110,41,6,
- 90,2,110,115,114,106,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,127,
- 0,0,0,114,133,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,69,5,0,0,115,34,0,0,0,
- 0,2,15,1,15,1,6,1,6,1,12,1,12,1,18,2,
- 15,1,6,1,21,1,3,1,10,1,10,1,10,1,14,1,
- 13,2,114,26,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,225,0,
- 0,0,114,150,0,0,0,218,18,101,120,116,101,110,115,105,
- 111,110,95,115,117,102,102,105,120,101,115,114,219,0,0,0,
- 114,84,0,0,0,114,224,0,0,0,114,74,0,0,0,41,
- 3,90,10,101,120,116,101,110,115,105,111,110,115,90,6,115,
- 111,117,114,99,101,90,8,98,121,116,101,99,111,100,101,114,
- 4,0,0,0,114,4,0,0,0,114,5,0,0,0,114,167,
- 0,0,0,92,5,0,0,115,8,0,0,0,0,5,18,1,
- 12,1,12,1,114,167,0,0,0,99,1,0,0,0,0,0,
- 0,0,12,0,0,0,12,0,0,0,67,0,0,0,115,70,
- 2,0,0,124,0,0,97,0,0,116,0,0,106,1,0,97,
- 1,0,116,0,0,106,2,0,97,2,0,116,1,0,106,3,
- 0,116,4,0,25,125,1,0,120,76,0,100,26,0,68,93,
- 68,0,125,2,0,124,2,0,116,1,0,106,3,0,107,7,
- 0,114,83,0,116,0,0,106,5,0,124,2,0,131,1,0,
- 125,3,0,110,13,0,116,1,0,106,3,0,124,2,0,25,
- 125,3,0,116,6,0,124,1,0,124,2,0,124,3,0,131,
- 3,0,1,113,44,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,4,0,120,149,0,124,4,0,68,93,
- 129,0,92,2,0,125,5,0,125,6,0,116,7,0,100,9,
- 0,100,10,0,132,0,0,124,6,0,68,131,1,0,131,1,
- 0,115,199,0,116,8,0,130,1,0,124,6,0,100,11,0,
- 25,125,7,0,124,5,0,116,1,0,106,3,0,107,6,0,
- 114,241,0,116,1,0,106,3,0,124,5,0,25,125,8,0,
- 80,113,156,0,121,20,0,116,0,0,106,5,0,124,5,0,
- 131,1,0,125,8,0,80,87,113,156,0,4,116,9,0,107,
- 10,0,114,28,1,1,1,1,119,156,0,89,113,156,0,88,
- 113,156,0,87,116,9,0,100,12,0,131,1,0,130,1,0,
- 116,6,0,124,1,0,100,13,0,124,8,0,131,3,0,1,
- 116,6,0,124,1,0,100,14,0,124,7,0,131,3,0,1,
- 116,6,0,124,1,0,100,15,0,100,16,0,106,10,0,124,
- 6,0,131,1,0,131,3,0,1,121,19,0,116,0,0,106,
- 5,0,100,17,0,131,1,0,125,9,0,87,110,24,0,4,
- 116,9,0,107,10,0,114,147,1,1,1,1,100,18,0,125,
- 9,0,89,110,1,0,88,116,6,0,124,1,0,100,17,0,
- 124,9,0,131,3,0,1,116,0,0,106,5,0,100,19,0,
- 131,1,0,125,10,0,116,6,0,124,1,0,100,19,0,124,
- 10,0,131,3,0,1,124,5,0,100,7,0,107,2,0,114,
- 238,1,116,0,0,106,5,0,100,20,0,131,1,0,125,11,
- 0,116,6,0,124,1,0,100,21,0,124,11,0,131,3,0,
- 1,116,6,0,124,1,0,100,22,0,116,11,0,131,0,0,
- 131,3,0,1,116,12,0,106,13,0,116,2,0,106,14,0,
- 131,0,0,131,1,0,1,124,5,0,100,7,0,107,2,0,
- 114,66,2,116,15,0,106,16,0,100,23,0,131,1,0,1,
- 100,24,0,116,12,0,107,6,0,114,66,2,100,25,0,116,
- 17,0,95,18,0,100,18,0,83,41,27,122,205,83,101,116,
- 117,112,32,116,104,101,32,112,97,116,104,45,98,97,115,101,
- 100,32,105,109,112,111,114,116,101,114,115,32,102,111,114,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,10,32,32,
- 32,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,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,79,116,104,101,114,32,99,111,109,112,
- 111,110,101,110,116,115,32,97,114,101,32,101,120,116,114,97,
- 99,116,101,100,32,102,114,111,109,32,116,104,101,32,99,111,
- 114,101,32,98,111,111,116,115,116,114,97,112,32,109,111,100,
- 117,108,101,46,10,10,32,32,32,32,114,49,0,0,0,114,
- 60,0,0,0,218,8,98,117,105,108,116,105,110,115,114,147,
- 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,77,0,0,0,114,4,0,0,0,114,
- 4,0,0,0,114,5,0,0,0,114,231,0,0,0,128,5,
- 0,0,115,2,0,0,0,6,0,122,25,95,115,101,116,117,
- 112,46,60,108,111,99,97,108,115,62,46,60,103,101,110,101,
- 120,112,114,62,114,59,0,0,0,122,30,105,109,112,111,114,
- 116,108,105,98,32,114,101,113,117,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,90,7,95,
- 116,104,114,101,97,100,78,90,8,95,119,101,97,107,114,101,
- 102,90,6,119,105,110,114,101,103,114,173,0,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,19,114,121,0,0,0,114,7,
- 0,0,0,114,150,0,0,0,114,132,0,0,0,114,112,0,
- 0,0,90,18,95,98,117,105,108,116,105,110,95,102,114,111,
- 109,95,110,97,109,101,114,116,0,0,0,218,3,97,108,108,
- 218,14,65,115,115,101,114,116,105,111,110,69,114,114,111,114,
- 114,107,0,0,0,114,26,0,0,0,114,11,0,0,0,114,
- 233,0,0,0,114,154,0,0,0,114,27,1,0,0,114,84,
- 0,0,0,114,169,0,0,0,114,172,0,0,0,114,177,0,
- 0,0,41,12,218,17,95,98,111,111,116,115,116,114,97,112,
- 95,109,111,100,117,108,101,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,103,5,0,0,115,82,0,0,0,0,8,6,
- 1,9,1,9,3,13,1,13,1,15,1,18,2,13,1,20,
- 3,33,1,19,2,31,1,10,1,15,1,13,1,4,2,3,
- 1,15,1,5,1,13,1,12,2,12,1,16,1,16,1,25,
- 3,3,1,19,1,13,2,11,1,16,3,15,1,16,3,12,
- 1,15,1,16,3,19,1,19,1,12,1,13,1,12,1,114,
- 35,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,116,0,0,0,116,0,
- 0,124,0,0,131,1,0,1,116,1,0,131,0,0,125,1,
- 0,116,2,0,106,3,0,106,4,0,116,5,0,106,6,0,
- 124,1,0,140,0,0,103,1,0,131,1,0,1,116,7,0,
- 106,8,0,100,1,0,107,2,0,114,78,0,116,2,0,106,
- 9,0,106,10,0,116,11,0,131,1,0,1,116,2,0,106,
- 9,0,106,10,0,116,12,0,131,1,0,1,116,5,0,124,
- 0,0,95,5,0,116,13,0,124,0,0,95,13,0,100,2,
- 0,83,41,3,122,41,73,110,115,116,97,108,108,32,116,104,
- 101,32,112,97,116,104,45,98,97,115,101,100,32,105,109,112,
- 111,114,116,32,99,111,109,112,111,110,101,110,116,115,46,114,
- 30,1,0,0,78,41,14,114,35,1,0,0,114,167,0,0,
- 0,114,7,0,0,0,114,1,1,0,0,114,154,0,0,0,
- 114,9,1,0,0,114,22,1,0,0,114,3,0,0,0,114,
- 112,0,0,0,218,9,109,101,116,97,95,112,97,116,104,114,
- 169,0,0,0,114,172,0,0,0,114,252,0,0,0,114,219,
- 0,0,0,41,2,114,34,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,171,5,0,0,115,16,0,0,0,0,
- 2,10,1,9,1,28,1,15,1,16,1,16,4,9,1,114,
- 37,1,0,0,41,3,122,3,119,105,110,114,1,0,0,0,
- 114,2,0,0,0,41,59,114,114,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,218,4,116,121,112,101,218,8,95,95,99,111,100,
- 101,95,95,114,149,0,0,0,114,15,0,0,0,114,140,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,
- 73,0,0,0,114,72,0,0,0,114,84,0,0,0,114,74,
- 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,79,0,0,0,114,85,
- 0,0,0,114,91,0,0,0,114,95,0,0,0,114,97,0,
- 0,0,114,105,0,0,0,114,123,0,0,0,114,130,0,0,
- 0,114,135,0,0,0,114,146,0,0,0,114,152,0,0,0,
- 114,155,0,0,0,114,160,0,0,0,114,131,0,0,0,218,
- 6,111,98,106,101,99,116,114,168,0,0,0,114,165,0,0,
- 0,114,172,0,0,0,114,187,0,0,0,114,195,0,0,0,
- 114,211,0,0,0,114,219,0,0,0,114,224,0,0,0,114,
- 233,0,0,0,114,225,0,0,0,114,234,0,0,0,114,250,
- 0,0,0,114,252,0,0,0,114,9,1,0,0,114,26,1,
- 0,0,114,167,0,0,0,114,35,1,0,0,114,37,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,104,0,0,0,6,17,6,3,12,12,12,5,
- 12,5,12,6,12,12,12,10,12,9,12,5,12,7,15,22,
- 15,108,22,1,18,2,6,1,6,2,9,2,9,2,10,2,
- 21,44,12,33,12,19,12,12,12,12,18,8,12,27,12,18,
- 12,15,21,55,21,12,18,10,12,14,24,22,9,3,12,1,
- 15,65,19,63,19,27,22,110,19,41,25,43,25,16,6,3,
- 19,57,19,57,19,41,19,134,19,146,15,23,12,11,12,68,
+ 0,114,185,0,0,0,165,4,0,0,115,8,0,0,0,0,
+ 8,18,1,12,1,4,1,122,22,80,97,116,104,70,105,110,
+ 100,101,114,46,102,105,110,100,95,109,111,100,117,108,101,41,
+ 12,114,112,0,0,0,114,111,0,0,0,114,113,0,0,0,
+ 114,114,0,0,0,114,186,0,0,0,114,253,0,0,0,114,
+ 2,1,0,0,114,4,1,0,0,114,5,1,0,0,114,8,
+ 1,0,0,114,184,0,0,0,114,185,0,0,0,114,4,0,
+ 0,0,114,4,0,0,0,114,4,0,0,0,114,5,0,0,
+ 0,114,252,0,0,0,45,4,0,0,115,22,0,0,0,12,
+ 2,6,2,18,8,18,17,18,22,18,15,3,1,18,31,3,
+ 1,21,21,3,1,114,252,0,0,0,99,0,0,0,0,0,
+ 0,0,0,0,0,0,0,3,0,0,0,64,0,0,0,115,
+ 133,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,229,0,0,0,
+ 41,1,114,127,0,0,0,114,4,0,0,0,114,5,0,0,
+ 0,114,231,0,0,0,194,4,0,0,115,2,0,0,0,6,
+ 0,122,38,70,105,108,101,70,105,110,100,101,114,46,95,95,
+ 105,110,105,116,95,95,46,60,108,111,99,97,108,115,62,46,
+ 60,103,101,110,101,120,112,114,62,114,58,0,0,0,114,29,
+ 0,0,0,78,114,87,0,0,0,41,7,114,154,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,108,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,171,0,0,0,114,4,0,
+ 0,0,41,1,114,127,0,0,0,114,5,0,0,0,114,188,
+ 0,0,0,188,4,0,0,115,16,0,0,0,0,4,6,1,
+ 19,1,36,1,9,2,15,1,9,1,12,1,122,19,70,105,
+ 108,101,70,105,110,100,101,114,46,95,95,105,110,105,116,95,
+ 95,99,1,0,0,0,0,0,0,0,1,0,0,0,2,0,
+ 0,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,87,0,0,0,41,1,114,11,1,0,0,41,1,114,
+ 108,0,0,0,114,4,0,0,0,114,4,0,0,0,114,5,
+ 0,0,0,114,253,0,0,0,202,4,0,0,115,2,0,0,
+ 0,0,2,122,28,70,105,108,101,70,105,110,100,101,114,46,
+ 105,110,118,97,108,105,100,97,116,101,95,99,97,99,104,101,
+ 115,99,2,0,0,0,0,0,0,0,3,0,0,0,2,0,
+ 0,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,184,0,0,0,114,127,0,0,0,114,164,0,0,
+ 0,41,3,114,108,0,0,0,114,126,0,0,0,114,133,0,
+ 0,0,114,4,0,0,0,114,4,0,0,0,114,5,0,0,
+ 0,114,124,0,0,0,208,4,0,0,115,8,0,0,0,0,
+ 7,15,1,12,1,10,1,122,22,70,105,108,101,70,105,110,
+ 100,101,114,46,102,105,110,100,95,108,111,97,100,101,114,99,
+ 6,0,0,0,0,0,0,0,7,0,0,0,7,0,0,0,
+ 67,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,127,0,0,0,114,164,0,0,0,41,1,
+ 114,165,0,0,0,41,7,114,108,0,0,0,114,170,0,0,
+ 0,114,126,0,0,0,114,35,0,0,0,90,4,115,109,115,
+ 108,114,183,0,0,0,114,127,0,0,0,114,4,0,0,0,
+ 114,4,0,0,0,114,5,0,0,0,114,8,1,0,0,220,
+ 4,0,0,115,6,0,0,0,0,1,15,1,18,1,122,20,
+ 70,105,108,101,70,105,110,100,101,114,46,95,103,101,116,95,
+ 115,112,101,99,78,99,3,0,0,0,0,0,0,0,14,0,
+ 0,0,15,0,0,0,67,0,0,0,115,234,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,230,1,
+ 116,18,0,100,9,0,106,19,0,124,8,0,131,1,0,131,
+ 1,0,1,116,20,0,106,21,0,124,1,0,100,8,0,131,
+ 2,0,125,13,0,124,8,0,103,1,0,124,13,0,95,22,
+ 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,58,0,0,0,
+ 114,56,0,0,0,114,29,0,0,0,114,188,0,0,0,122,
+ 9,116,114,121,105,110,103,32,123,125,114,98,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,87,0,0,0,
+ 41,23,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,220,0,0,0,
+ 114,40,0,0,0,114,11,1,0,0,218,11,95,102,105,108,
+ 108,95,99,97,99,104,101,114,6,0,0,0,114,14,1,0,
+ 0,114,88,0,0,0,114,13,1,0,0,114,28,0,0,0,
+ 114,10,1,0,0,114,44,0,0,0,114,8,1,0,0,114,
+ 46,0,0,0,114,105,0,0,0,114,47,0,0,0,114,121,
+ 0,0,0,114,166,0,0,0,114,164,0,0,0,41,14,114,
+ 108,0,0,0,114,126,0,0,0,114,183,0,0,0,90,12,
+ 105,115,95,110,97,109,101,115,112,97,99,101,90,11,116,97,
+ 105,108,95,109,111,100,117,108,101,114,138,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,229,
+ 0,0,0,114,170,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,133,0,0,0,114,4,0,0,0,114,4,0,0,
+ 0,114,5,0,0,0,114,184,0,0,0,225,4,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,18,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,58,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,88,0,0,0,41,2,
+ 114,22,0,0,0,90,2,102,110,114,4,0,0,0,114,4,
+ 0,0,0,114,5,0,0,0,250,9,60,115,101,116,99,111,
+ 109,112,62,43,5,0,0,115,2,0,0,0,9,0,122,41,
+ 70,105,108,101,70,105,110,100,101,114,46,95,102,105,108,108,
+ 95,99,97,99,104,101,46,60,108,111,99,97,108,115,62,46,
+ 60,115,101,116,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,3,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,12,1,
+ 0,0,114,13,1,0,0,114,83,0,0,0,114,47,0,0,
+ 0,114,88,0,0,0,218,3,97,100,100,114,10,0,0,0,
+ 114,14,1,0,0,41,9,114,108,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,248,0,0,0,114,106,0,0,0,114,241,0,0,
+ 0,114,229,0,0,0,90,8,110,101,119,95,110,97,109,101,
+ 114,4,0,0,0,114,4,0,0,0,114,5,0,0,0,114,
+ 16,1,0,0,14,5,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,107,0,0,0,41,1,114,35,
+ 0,0,0,41,2,114,174,0,0,0,114,15,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,55,5,0,0,115,6,0,0,0,0,2,12,1,
+ 18,1,122,54,70,105,108,101,70,105,110,100,101,114,46,112,
+ 97,116,104,95,104,111,111,107,46,60,108,111,99,97,108,115,
+ 62,46,112,97,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,174,0,0,0,114,15,1,0,0,114,21,1,0,0,
+ 114,4,0,0,0,41,2,114,174,0,0,0,114,15,1,0,
+ 0,114,5,0,0,0,218,9,112,97,116,104,95,104,111,111,
+ 107,45,5,0,0,115,4,0,0,0,0,10,21,6,122,20,
+ 70,105,108,101,70,105,110,100,101,114,46,112,97,116,104,95,
+ 104,111,111,107,99,1,0,0,0,0,0,0,0,1,0,0,
+ 0,2,0,0,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,108,0,0,0,114,4,0,0,0,114,4,0,0,0,
+ 114,5,0,0,0,114,247,0,0,0,63,5,0,0,115,2,
+ 0,0,0,0,1,122,19,70,105,108,101,70,105,110,100,101,
+ 114,46,95,95,114,101,112,114,95,95,41,15,114,112,0,0,
+ 0,114,111,0,0,0,114,113,0,0,0,114,114,0,0,0,
+ 114,188,0,0,0,114,253,0,0,0,114,130,0,0,0,114,
+ 185,0,0,0,114,124,0,0,0,114,8,1,0,0,114,184,
+ 0,0,0,114,16,1,0,0,114,186,0,0,0,114,22,1,
+ 0,0,114,247,0,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,
+ 179,4,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,9,1,
+ 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,227,0,0,0,218,8,95,95,115,112,101,99,95,
+ 95,114,127,0,0,0,90,8,95,95,102,105,108,101,95,95,
+ 90,10,95,95,99,97,99,104,101,100,95,95,41,6,218,3,
+ 103,101,116,114,127,0,0,0,114,224,0,0,0,114,219,0,
+ 0,0,114,165,0,0,0,218,9,69,120,99,101,112,116,105,
+ 111,110,41,6,90,2,110,115,114,106,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,127,0,0,0,114,133,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,69,5,0,0,115,
+ 34,0,0,0,0,2,15,1,15,1,6,1,6,1,12,1,
+ 12,1,18,2,15,1,6,1,21,1,3,1,10,1,10,1,
+ 10,1,14,1,13,2,114,26,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,225,0,0,0,114,150,0,0,0,218,18,101,120,116,
+ 101,110,115,105,111,110,95,115,117,102,102,105,120,101,115,114,
+ 219,0,0,0,114,84,0,0,0,114,224,0,0,0,114,74,
+ 0,0,0,41,3,90,10,101,120,116,101,110,115,105,111,110,
+ 115,90,6,115,111,117,114,99,101,90,8,98,121,116,101,99,
+ 111,100,101,114,4,0,0,0,114,4,0,0,0,114,5,0,
+ 0,0,114,167,0,0,0,92,5,0,0,115,8,0,0,0,
+ 0,5,18,1,12,1,12,1,114,167,0,0,0,99,1,0,
+ 0,0,0,0,0,0,12,0,0,0,12,0,0,0,67,0,
+ 0,0,115,70,2,0,0,124,0,0,97,0,0,116,0,0,
+ 106,1,0,97,1,0,116,0,0,106,2,0,97,2,0,116,
+ 1,0,106,3,0,116,4,0,25,125,1,0,120,76,0,100,
+ 26,0,68,93,68,0,125,2,0,124,2,0,116,1,0,106,
+ 3,0,107,7,0,114,83,0,116,0,0,106,5,0,124,2,
+ 0,131,1,0,125,3,0,110,13,0,116,1,0,106,3,0,
+ 124,2,0,25,125,3,0,116,6,0,124,1,0,124,2,0,
+ 124,3,0,131,3,0,1,113,44,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,4,0,120,149,0,124,
+ 4,0,68,93,129,0,92,2,0,125,5,0,125,6,0,116,
+ 7,0,100,9,0,100,10,0,132,0,0,124,6,0,68,131,
+ 1,0,131,1,0,115,199,0,116,8,0,130,1,0,124,6,
+ 0,100,11,0,25,125,7,0,124,5,0,116,1,0,106,3,
+ 0,107,6,0,114,241,0,116,1,0,106,3,0,124,5,0,
+ 25,125,8,0,80,113,156,0,121,20,0,116,0,0,106,5,
+ 0,124,5,0,131,1,0,125,8,0,80,87,113,156,0,4,
+ 116,9,0,107,10,0,114,28,1,1,1,1,119,156,0,89,
+ 113,156,0,88,113,156,0,87,116,9,0,100,12,0,131,1,
+ 0,130,1,0,116,6,0,124,1,0,100,13,0,124,8,0,
+ 131,3,0,1,116,6,0,124,1,0,100,14,0,124,7,0,
+ 131,3,0,1,116,6,0,124,1,0,100,15,0,100,16,0,
+ 106,10,0,124,6,0,131,1,0,131,3,0,1,121,19,0,
+ 116,0,0,106,5,0,100,17,0,131,1,0,125,9,0,87,
+ 110,24,0,4,116,9,0,107,10,0,114,147,1,1,1,1,
+ 100,18,0,125,9,0,89,110,1,0,88,116,6,0,124,1,
+ 0,100,17,0,124,9,0,131,3,0,1,116,0,0,106,5,
+ 0,100,19,0,131,1,0,125,10,0,116,6,0,124,1,0,
+ 100,19,0,124,10,0,131,3,0,1,124,5,0,100,7,0,
+ 107,2,0,114,238,1,116,0,0,106,5,0,100,20,0,131,
+ 1,0,125,11,0,116,6,0,124,1,0,100,21,0,124,11,
+ 0,131,3,0,1,116,6,0,124,1,0,100,22,0,116,11,
+ 0,131,0,0,131,3,0,1,116,12,0,106,13,0,116,2,
+ 0,106,14,0,131,0,0,131,1,0,1,124,5,0,100,7,
+ 0,107,2,0,114,66,2,116,15,0,106,16,0,100,23,0,
+ 131,1,0,1,100,24,0,116,12,0,107,6,0,114,66,2,
+ 100,25,0,116,17,0,95,18,0,100,18,0,83,41,27,122,
+ 205,83,101,116,117,112,32,116,104,101,32,112,97,116,104,45,
+ 98,97,115,101,100,32,105,109,112,111,114,116,101,114,115,32,
+ 102,111,114,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,10,32,32,32,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,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,79,116,104,101,114,32,
+ 99,111,109,112,111,110,101,110,116,115,32,97,114,101,32,101,
+ 120,116,114,97,99,116,101,100,32,102,114,111,109,32,116,104,
+ 101,32,99,111,114,101,32,98,111,111,116,115,116,114,97,112,
+ 32,109,111,100,117,108,101,46,10,10,32,32,32,32,114,49,
+ 0,0,0,114,60,0,0,0,218,8,98,117,105,108,116,105,
+ 110,115,114,147,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,77,0,0,0,114,4,
+ 0,0,0,114,4,0,0,0,114,5,0,0,0,114,231,0,
+ 0,0,128,5,0,0,115,2,0,0,0,6,0,122,25,95,
+ 115,101,116,117,112,46,60,108,111,99,97,108,115,62,46,60,
+ 103,101,110,101,120,112,114,62,114,59,0,0,0,122,30,105,
+ 109,112,111,114,116,108,105,98,32,114,101,113,117,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,90,7,95,116,104,114,101,97,100,78,90,8,95,119,101,
+ 97,107,114,101,102,90,6,119,105,110,114,101,103,114,173,0,
+ 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,19,114,121,0,
+ 0,0,114,7,0,0,0,114,150,0,0,0,114,132,0,0,
+ 0,114,112,0,0,0,90,18,95,98,117,105,108,116,105,110,
+ 95,102,114,111,109,95,110,97,109,101,114,116,0,0,0,218,
+ 3,97,108,108,218,14,65,115,115,101,114,116,105,111,110,69,
+ 114,114,111,114,114,107,0,0,0,114,26,0,0,0,114,11,
+ 0,0,0,114,233,0,0,0,114,154,0,0,0,114,27,1,
+ 0,0,114,84,0,0,0,114,169,0,0,0,114,172,0,0,
+ 0,114,177,0,0,0,41,12,218,17,95,98,111,111,116,115,
+ 116,114,97,112,95,109,111,100,117,108,101,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,103,5,0,0,115,82,0,0,
+ 0,0,8,6,1,9,1,9,3,13,1,13,1,15,1,18,
+ 2,13,1,20,3,33,1,19,2,31,1,10,1,15,1,13,
+ 1,4,2,3,1,15,1,5,1,13,1,12,2,12,1,16,
+ 1,16,1,25,3,3,1,19,1,13,2,11,1,16,3,15,
+ 1,16,3,12,1,15,1,16,3,19,1,19,1,12,1,13,
+ 1,12,1,114,35,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,116,0,
+ 0,0,116,0,0,124,0,0,131,1,0,1,116,1,0,131,
+ 0,0,125,1,0,116,2,0,106,3,0,106,4,0,116,5,
+ 0,106,6,0,124,1,0,140,0,0,103,1,0,131,1,0,
+ 1,116,7,0,106,8,0,100,1,0,107,2,0,114,78,0,
+ 116,2,0,106,9,0,106,10,0,116,11,0,131,1,0,1,
+ 116,2,0,106,9,0,106,10,0,116,12,0,131,1,0,1,
+ 116,5,0,124,0,0,95,5,0,116,13,0,124,0,0,95,
+ 13,0,100,2,0,83,41,3,122,41,73,110,115,116,97,108,
+ 108,32,116,104,101,32,112,97,116,104,45,98,97,115,101,100,
+ 32,105,109,112,111,114,116,32,99,111,109,112,111,110,101,110,
+ 116,115,46,114,30,1,0,0,78,41,14,114,35,1,0,0,
+ 114,167,0,0,0,114,7,0,0,0,114,1,1,0,0,114,
+ 154,0,0,0,114,9,1,0,0,114,22,1,0,0,114,3,
+ 0,0,0,114,112,0,0,0,218,9,109,101,116,97,95,112,
+ 97,116,104,114,169,0,0,0,114,172,0,0,0,114,252,0,
+ 0,0,114,219,0,0,0,41,2,114,34,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,171,5,0,0,115,16,
+ 0,0,0,0,2,10,1,9,1,28,1,15,1,16,1,16,
+ 4,9,1,114,37,1,0,0,41,3,122,3,119,105,110,114,
+ 1,0,0,0,114,2,0,0,0,41,59,114,114,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,218,4,116,121,112,101,218,8,95,
+ 95,99,111,100,101,95,95,114,149,0,0,0,114,15,0,0,
+ 0,114,140,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,73,0,0,0,114,72,0,0,0,114,84,0,
+ 0,0,114,74,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,79,0,
+ 0,0,114,85,0,0,0,114,91,0,0,0,114,95,0,0,
+ 0,114,97,0,0,0,114,105,0,0,0,114,123,0,0,0,
+ 114,130,0,0,0,114,135,0,0,0,114,146,0,0,0,114,
+ 152,0,0,0,114,155,0,0,0,114,160,0,0,0,114,131,
+ 0,0,0,218,6,111,98,106,101,99,116,114,168,0,0,0,
+ 114,165,0,0,0,114,172,0,0,0,114,187,0,0,0,114,
+ 195,0,0,0,114,211,0,0,0,114,219,0,0,0,114,224,
+ 0,0,0,114,233,0,0,0,114,225,0,0,0,114,234,0,
+ 0,0,114,250,0,0,0,114,252,0,0,0,114,9,1,0,
+ 0,114,26,1,0,0,114,167,0,0,0,114,35,1,0,0,
+ 114,37,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,104,0,0,0,6,17,6,3,
+ 12,12,12,5,12,5,12,6,12,12,12,10,12,9,12,5,
+ 12,7,15,22,15,108,22,1,18,2,6,1,6,2,9,2,
+ 9,2,10,2,21,44,12,33,12,19,12,12,12,12,18,8,
+ 12,27,12,18,12,15,21,55,21,12,18,10,12,14,24,22,
+ 9,3,12,1,15,65,19,63,19,27,22,110,19,41,25,43,
+ 25,16,6,3,19,57,19,57,19,41,19,134,19,146,15,23,
+ 12,11,12,68,
};
diff --git a/Python/opcode_targets.h b/Python/opcode_targets.h
index 45843c3..569e7590 100644
--- a/Python/opcode_targets.h
+++ b/Python/opcode_targets.h
@@ -49,9 +49,9 @@ static void *opcode_targets[256] = {
&&_unknown_opcode,
&&_unknown_opcode,
&&_unknown_opcode,
- &&_unknown_opcode,
- &&_unknown_opcode,
- &&_unknown_opcode,
+ &&TARGET_GET_AITER,
+ &&TARGET_GET_ANEXT,
+ &&TARGET_BEFORE_ASYNC_WITH,
&&_unknown_opcode,
&&TARGET_STORE_MAP,
&&TARGET_INPLACE_ADD,
@@ -72,7 +72,7 @@ static void *opcode_targets[256] = {
&&TARGET_PRINT_EXPR,
&&TARGET_LOAD_BUILD_CLASS,
&&TARGET_YIELD_FROM,
- &&_unknown_opcode,
+ &&TARGET_GET_AWAITABLE,
&&_unknown_opcode,
&&TARGET_INPLACE_LSHIFT,
&&TARGET_INPLACE_RSHIFT,
@@ -80,8 +80,8 @@ static void *opcode_targets[256] = {
&&TARGET_INPLACE_XOR,
&&TARGET_INPLACE_OR,
&&TARGET_BREAK_LOOP,
- &&TARGET_WITH_CLEANUP,
- &&_unknown_opcode,
+ &&TARGET_WITH_CLEANUP_START,
+ &&TARGET_WITH_CLEANUP_FINISH,
&&TARGET_RETURN_VALUE,
&&TARGET_IMPORT_STAR,
&&_unknown_opcode,
@@ -153,7 +153,7 @@ static void *opcode_targets[256] = {
&&TARGET_BUILD_MAP_UNPACK_WITH_CALL,
&&TARGET_BUILD_TUPLE_UNPACK,
&&TARGET_BUILD_SET_UNPACK,
- &&_unknown_opcode,
+ &&TARGET_SETUP_ASYNC_WITH,
&&_unknown_opcode,
&&_unknown_opcode,
&&_unknown_opcode,
diff --git a/Python/peephole.c b/Python/peephole.c
index 2f8f0e5..59ad3b7 100644
--- a/Python/peephole.c
+++ b/Python/peephole.c
@@ -319,6 +319,7 @@ markblocks(unsigned char *code, Py_ssize_t len)
case SETUP_EXCEPT:
case SETUP_FINALLY:
case SETUP_WITH:
+ case SETUP_ASYNC_WITH:
j = GETJUMPTGT(code, i);
blocks[j] = 1;
break;
@@ -620,6 +621,7 @@ PyCode_Optimize(PyObject *code, PyObject* consts, PyObject *names,
case SETUP_EXCEPT:
case SETUP_FINALLY:
case SETUP_WITH:
+ case SETUP_ASYNC_WITH:
tgt = GETJUMPTGT(codestr, i);
/* Replace JUMP_* to a RETURN into just a RETURN */
if (UNCONDITIONAL_JUMP(opcode) &&
@@ -704,6 +706,7 @@ PyCode_Optimize(PyObject *code, PyObject* consts, PyObject *names,
case SETUP_EXCEPT:
case SETUP_FINALLY:
case SETUP_WITH:
+ case SETUP_ASYNC_WITH:
j = addrmap[GETARG(codestr, i) + i + 3] - addrmap[i] - 3;
SETARG(codestr, i, j);
break;
diff --git a/Python/pystate.c b/Python/pystate.c
index 32a635c..e214f50 100644
--- a/Python/pystate.c
+++ b/Python/pystate.c
@@ -212,6 +212,8 @@ new_threadstate(PyInterpreterState *interp, int init)
tstate->on_delete = NULL;
tstate->on_delete_data = NULL;
+ tstate->coroutine_wrapper = NULL;
+
if (init)
_PyThreadState_Init(tstate);
@@ -372,6 +374,8 @@ PyThreadState_Clear(PyThreadState *tstate)
tstate->c_tracefunc = NULL;
Py_CLEAR(tstate->c_profileobj);
Py_CLEAR(tstate->c_traceobj);
+
+ Py_CLEAR(tstate->coroutine_wrapper);
}
diff --git a/Python/symtable.c b/Python/symtable.c
index 812c052..3677e59 100644
--- a/Python/symtable.c
+++ b/Python/symtable.c
@@ -180,7 +180,7 @@ static int symtable_visit_slice(struct symtable *st, slice_ty);
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);
@@ -1147,7 +1147,8 @@ symtable_visit_stmt(struct symtable *st, stmt_ty s)
VISIT_SEQ(st, expr, s->v.FunctionDef.args->defaults);
if (s->v.FunctionDef.args->kw_defaults)
VISIT_SEQ_WITH_NULL(st, expr, 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);
@@ -1315,6 +1316,39 @@ symtable_visit_stmt(struct symtable *st, stmt_ty s)
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_SEQ_WITH_NULL(st, expr,
+ 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);
}
@@ -1392,6 +1426,10 @@ symtable_visit_expr(struct symtable *st, expr_ty e)
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);
@@ -1492,10 +1530,9 @@ symtable_visit_argannotations(struct symtable *st, asdl_seq *args)
}
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)
@@ -1504,7 +1541,7 @@ symtable_visit_annotations(struct symtable *st, stmt_ty s)
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 --git a/Python/sysmodule.c b/Python/sysmodule.c
index 9ec2521..bf9a96f 100644
--- a/Python/sysmodule.c
+++ b/Python/sysmodule.c
@@ -645,6 +645,49 @@ sys_setrecursionlimit(PyObject *self, PyObject *args)
return Py_None;
}
+static PyObject *
+sys_set_coroutine_wrapper(PyObject *self, PyObject *wrapper)
+{
+ if (wrapper != Py_None) {
+ if (!PyCallable_Check(wrapper)) {
+ PyErr_Format(PyExc_TypeError,
+ "callable expected, got %.50s",
+ Py_TYPE(wrapper)->tp_name);
+ return NULL;
+ }
+
+ PyEval_SetCoroutineWrapper(wrapper);
+ }
+ else
+ PyEval_SetCoroutineWrapper(NULL);
+ Py_INCREF(Py_None);
+ Py_RETURN_NONE;
+}
+
+PyDoc_STRVAR(set_coroutine_wrapper_doc,
+"set_coroutine_wrapper(wrapper)\n\
+\n\
+Set a wrapper for coroutine objects."
+);
+
+static PyObject *
+sys_get_coroutine_wrapper(PyObject *self, PyObject *args)
+{
+ PyObject *wrapper = PyEval_GetCoroutineWrapper();
+ if (wrapper == NULL) {
+ wrapper = Py_None;
+ }
+ Py_INCREF(wrapper);
+ return wrapper;
+}
+
+PyDoc_STRVAR(get_coroutine_wrapper_doc,
+"get_coroutine_wrapper()\n\
+\n\
+Return the wrapper for coroutine objects set by sys.set_coroutine_wrapper."
+);
+
+
static PyTypeObject Hash_InfoType;
PyDoc_STRVAR(hash_info_doc,
@@ -1215,6 +1258,10 @@ static PyMethodDef sys_methods[] = {
{"call_tracing", sys_call_tracing, METH_VARARGS, call_tracing_doc},
{"_debugmallocstats", sys_debugmallocstats, METH_NOARGS,
debugmallocstats_doc},
+ {"set_coroutine_wrapper", sys_set_coroutine_wrapper, METH_O,
+ set_coroutine_wrapper_doc},
+ {"get_coroutine_wrapper", sys_get_coroutine_wrapper, METH_NOARGS,
+ get_coroutine_wrapper_doc},
{NULL, NULL} /* sentinel */
};
diff --git a/Tools/parser/unparse.py b/Tools/parser/unparse.py
index 0c1cc5f..c828577 100644
--- a/Tools/parser/unparse.py
+++ b/Tools/parser/unparse.py
@@ -138,6 +138,14 @@ class Unparser:
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")
@@ -218,11 +226,18 @@ class Unparser:
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:
@@ -233,7 +248,13 @@ class Unparser:
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)
@@ -287,6 +308,13 @@ class Unparser:
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))