summaryrefslogtreecommitdiff
path: root/Python
diff options
context:
space:
mode:
Diffstat (limited to 'Python')
-rw-r--r--Python/Python-ast.c167
-rw-r--r--Python/_warnings.c2
-rw-r--r--Python/ast.c1055
-rw-r--r--Python/bltinmodule.c13
-rw-r--r--Python/ceval.c76
-rw-r--r--Python/compile.c89
-rw-r--r--Python/dtoa.c6
-rw-r--r--Python/dynload_win.c8
-rw-r--r--Python/formatter_unicode.c2
-rw-r--r--Python/frozenmain.c4
-rw-r--r--Python/getargs.c58
-rw-r--r--Python/graminit.c106
-rw-r--r--Python/import.c6
-rw-r--r--Python/importdl.c4
-rw-r--r--Python/importlib_external.h4979
-rw-r--r--Python/marshal.c34
-rw-r--r--Python/modsupport.c4
-rw-r--r--Python/mystrtoul.c6
-rw-r--r--Python/opcode_targets.h2
-rw-r--r--Python/pylifecycle.c59
-rw-r--r--Python/pystate.c2
-rw-r--r--Python/pystrtod.c9
-rw-r--r--Python/pythonrun.c22
-rw-r--r--Python/pytime.c274
-rw-r--r--Python/random.c2
-rw-r--r--Python/symtable.c12
-rw-r--r--Python/sysmodule.c14
27 files changed, 4175 insertions, 2840 deletions
diff --git a/Python/Python-ast.c b/Python/Python-ast.c
index edfcbad134..07d9b3e8f7 100644
--- a/Python/Python-ast.c
+++ b/Python/Python-ast.c
@@ -285,6 +285,18 @@ _Py_IDENTIFIER(s);
static char *Str_fields[]={
"s",
};
+static PyTypeObject *FormattedValue_type;
+_Py_IDENTIFIER(conversion);
+_Py_IDENTIFIER(format_spec);
+static char *FormattedValue_fields[]={
+ "value",
+ "conversion",
+ "format_spec",
+};
+static PyTypeObject *JoinedStr_type;
+static char *JoinedStr_fields[]={
+ "values",
+};
static PyTypeObject *Bytes_type;
static char *Bytes_fields[]={
"s",
@@ -769,7 +781,7 @@ static int obj2ast_int(PyObject* obj, int* out, PyArena* arena)
return 1;
}
- i = (int)PyLong_AsLong(obj);
+ i = _PyLong_AsInt(obj);
if (i == -1 && PyErr_Occurred())
return 1;
*out = i;
@@ -917,6 +929,11 @@ static int init_types(void)
if (!Num_type) return 0;
Str_type = make_type("Str", expr_type, Str_fields, 1);
if (!Str_type) return 0;
+ FormattedValue_type = make_type("FormattedValue", expr_type,
+ FormattedValue_fields, 3);
+ if (!FormattedValue_type) return 0;
+ JoinedStr_type = make_type("JoinedStr", expr_type, JoinedStr_fields, 1);
+ if (!JoinedStr_type) return 0;
Bytes_type = make_type("Bytes", expr_type, Bytes_fields, 1);
if (!Bytes_type) return 0;
NameConstant_type = make_type("NameConstant", expr_type,
@@ -2063,6 +2080,42 @@ Str(string s, int lineno, int col_offset, PyArena *arena)
}
expr_ty
+FormattedValue(expr_ty value, int conversion, expr_ty format_spec, int lineno,
+ int col_offset, PyArena *arena)
+{
+ expr_ty p;
+ if (!value) {
+ PyErr_SetString(PyExc_ValueError,
+ "field value is required for FormattedValue");
+ return NULL;
+ }
+ p = (expr_ty)PyArena_Malloc(arena, sizeof(*p));
+ if (!p)
+ return NULL;
+ p->kind = FormattedValue_kind;
+ p->v.FormattedValue.value = value;
+ p->v.FormattedValue.conversion = conversion;
+ p->v.FormattedValue.format_spec = format_spec;
+ p->lineno = lineno;
+ p->col_offset = col_offset;
+ return p;
+}
+
+expr_ty
+JoinedStr(asdl_seq * values, int lineno, int col_offset, PyArena *arena)
+{
+ expr_ty p;
+ p = (expr_ty)PyArena_Malloc(arena, sizeof(*p));
+ if (!p)
+ return NULL;
+ p->kind = JoinedStr_kind;
+ p->v.JoinedStr.values = values;
+ p->lineno = lineno;
+ p->col_offset = col_offset;
+ return p;
+}
+
+expr_ty
Bytes(bytes s, int lineno, int col_offset, PyArena *arena)
{
expr_ty p;
@@ -3164,6 +3217,34 @@ ast2obj_expr(void* _o)
goto failed;
Py_DECREF(value);
break;
+ case FormattedValue_kind:
+ result = PyType_GenericNew(FormattedValue_type, NULL, NULL);
+ if (!result) goto failed;
+ value = ast2obj_expr(o->v.FormattedValue.value);
+ if (!value) goto failed;
+ if (_PyObject_SetAttrId(result, &PyId_value, value) == -1)
+ goto failed;
+ Py_DECREF(value);
+ value = ast2obj_int(o->v.FormattedValue.conversion);
+ if (!value) goto failed;
+ if (_PyObject_SetAttrId(result, &PyId_conversion, value) == -1)
+ goto failed;
+ Py_DECREF(value);
+ value = ast2obj_expr(o->v.FormattedValue.format_spec);
+ if (!value) goto failed;
+ if (_PyObject_SetAttrId(result, &PyId_format_spec, value) == -1)
+ goto failed;
+ Py_DECREF(value);
+ break;
+ case JoinedStr_kind:
+ result = PyType_GenericNew(JoinedStr_type, NULL, NULL);
+ if (!result) goto failed;
+ value = ast2obj_list(o->v.JoinedStr.values, ast2obj_expr);
+ if (!value) goto failed;
+ if (_PyObject_SetAttrId(result, &PyId_values, value) == -1)
+ goto failed;
+ Py_DECREF(value);
+ break;
case Bytes_kind:
result = PyType_GenericNew(Bytes_type, NULL, NULL);
if (!result) goto failed;
@@ -6025,6 +6106,86 @@ obj2ast_expr(PyObject* obj, expr_ty* out, PyArena* arena)
if (*out == NULL) goto failed;
return 0;
}
+ isinstance = PyObject_IsInstance(obj, (PyObject*)FormattedValue_type);
+ if (isinstance == -1) {
+ return 1;
+ }
+ if (isinstance) {
+ expr_ty value;
+ int conversion;
+ expr_ty format_spec;
+
+ 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 FormattedValue");
+ return 1;
+ }
+ if (exists_not_none(obj, &PyId_conversion)) {
+ int res;
+ tmp = _PyObject_GetAttrId(obj, &PyId_conversion);
+ if (tmp == NULL) goto failed;
+ res = obj2ast_int(tmp, &conversion, arena);
+ if (res != 0) goto failed;
+ Py_CLEAR(tmp);
+ } else {
+ conversion = 0;
+ }
+ if (exists_not_none(obj, &PyId_format_spec)) {
+ int res;
+ tmp = _PyObject_GetAttrId(obj, &PyId_format_spec);
+ if (tmp == NULL) goto failed;
+ res = obj2ast_expr(tmp, &format_spec, arena);
+ if (res != 0) goto failed;
+ Py_CLEAR(tmp);
+ } else {
+ format_spec = NULL;
+ }
+ *out = FormattedValue(value, conversion, format_spec, lineno,
+ col_offset, arena);
+ if (*out == NULL) goto failed;
+ return 0;
+ }
+ isinstance = PyObject_IsInstance(obj, (PyObject*)JoinedStr_type);
+ if (isinstance == -1) {
+ return 1;
+ }
+ if (isinstance) {
+ asdl_seq* values;
+
+ if (_PyObject_HasAttrId(obj, &PyId_values)) {
+ int res;
+ Py_ssize_t len;
+ Py_ssize_t i;
+ tmp = _PyObject_GetAttrId(obj, &PyId_values);
+ if (tmp == NULL) goto failed;
+ if (!PyList_Check(tmp)) {
+ PyErr_Format(PyExc_TypeError, "JoinedStr field \"values\" must be a list, not a %.200s", tmp->ob_type->tp_name);
+ goto failed;
+ }
+ len = PyList_GET_SIZE(tmp);
+ values = _Py_asdl_seq_new(len, arena);
+ if (values == 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(values, i, value);
+ }
+ Py_CLEAR(tmp);
+ } else {
+ PyErr_SetString(PyExc_TypeError, "required field \"values\" missing from JoinedStr");
+ return 1;
+ }
+ *out = JoinedStr(values, lineno, col_offset, arena);
+ if (*out == NULL) goto failed;
+ return 0;
+ }
isinstance = PyObject_IsInstance(obj, (PyObject*)Bytes_type);
if (isinstance == -1) {
return 1;
@@ -7346,6 +7507,10 @@ PyInit__ast(void)
if (PyDict_SetItemString(d, "Call", (PyObject*)Call_type) < 0) return NULL;
if (PyDict_SetItemString(d, "Num", (PyObject*)Num_type) < 0) return NULL;
if (PyDict_SetItemString(d, "Str", (PyObject*)Str_type) < 0) return NULL;
+ if (PyDict_SetItemString(d, "FormattedValue",
+ (PyObject*)FormattedValue_type) < 0) return NULL;
+ if (PyDict_SetItemString(d, "JoinedStr", (PyObject*)JoinedStr_type) < 0)
+ return NULL;
if (PyDict_SetItemString(d, "Bytes", (PyObject*)Bytes_type) < 0) return
NULL;
if (PyDict_SetItemString(d, "NameConstant", (PyObject*)NameConstant_type) <
diff --git a/Python/_warnings.c b/Python/_warnings.c
index 978bad135c..daa13551ec 100644
--- a/Python/_warnings.c
+++ b/Python/_warnings.c
@@ -921,7 +921,7 @@ PyErr_WarnEx(PyObject *category, const char *text, Py_ssize_t stack_level)
#undef PyErr_Warn
PyAPI_FUNC(int)
-PyErr_Warn(PyObject *category, char *text)
+PyErr_Warn(PyObject *category, const char *text)
{
return PyErr_WarnEx(category, text, 1);
}
diff --git a/Python/ast.c b/Python/ast.c
index 7743c31c1f..33f2597fc0 100644
--- a/Python/ast.c
+++ b/Python/ast.c
@@ -257,6 +257,14 @@ validate_expr(expr_ty exp, expr_context_ty ctx)
}
return 1;
}
+ case JoinedStr_kind:
+ return validate_exprs(exp->v.JoinedStr.values, Load, 0);
+ case FormattedValue_kind:
+ if (validate_expr(exp->v.FormattedValue.value, Load) == 0)
+ return 0;
+ if (exp->v.FormattedValue.format_spec)
+ return validate_expr(exp->v.FormattedValue.format_spec, Load);
+ return 1;
case Bytes_kind: {
PyObject *b = exp->v.Bytes.s;
if (!PyBytes_CheckExact(b)) {
@@ -513,7 +521,7 @@ PyAST_Validate(mod_ty mod)
/* Data structure used internally */
struct compiling {
char *c_encoding; /* source encoding */
- PyArena *c_arena; /* arena for allocating memeory */
+ PyArena *c_arena; /* Arena for allocating memory. */
PyObject *c_filename; /* filename */
PyObject *c_normalize; /* Normalization function from unicodedata. */
PyObject *c_normalize_args; /* Normalization argument tuple. */
@@ -535,9 +543,7 @@ static stmt_ty ast_for_for_stmt(struct compiling *, const node *, int);
static expr_ty ast_for_call(struct compiling *, const node *, expr_ty);
static PyObject *parsenumber(struct compiling *, const char *);
-static PyObject *parsestr(struct compiling *, const node *n, int *bytesmode);
-static PyObject *parsestrplus(struct compiling *, const node *n,
- int *bytesmode);
+static expr_ty parsestrplus(struct compiling *, const node *n);
#define COMP_GENEXP 0
#define COMP_LISTCOMP 1
@@ -864,7 +870,7 @@ get_operator(const node *n)
}
}
-static const char* FORBIDDEN[] = {
+static const char * const FORBIDDEN[] = {
"None",
"True",
"False",
@@ -881,7 +887,7 @@ forbidden_name(struct compiling *c, identifier name, const node *n,
return 1;
}
if (full_checks) {
- const char **p;
+ const char * const *p;
for (p = FORBIDDEN; *p; p++) {
if (PyUnicode_CompareWithASCIIString(name, *p) == 0) {
ast_error(c, n, "assignment to keyword");
@@ -986,6 +992,8 @@ set_context(struct compiling *c, expr_ty e, expr_context_ty ctx, const node *n)
case Num_kind:
case Str_kind:
case Bytes_kind:
+ case JoinedStr_kind:
+ case FormattedValue_kind:
expr_name = "literal";
break;
case NameConstant_kind:
@@ -1259,16 +1267,20 @@ ast_for_arguments(struct compiling *c, const node *n)
and varargslist (lambda definition).
parameters: '(' [typedargslist] ')'
- typedargslist: ((tfpdef ['=' test] ',')*
- ('*' [tfpdef] (',' tfpdef ['=' test])* [',' '**' tfpdef]
- | '**' tfpdef)
- | tfpdef ['=' test] (',' tfpdef ['=' test])* [','])
+ typedargslist: (tfpdef ['=' test] (',' tfpdef ['=' test])* [',' [
+ '*' [tfpdef] (',' tfpdef ['=' test])* [',' ['**' tfpdef [',']]]
+ | '**' tfpdef [',']]]
+ | '*' [tfpdef] (',' tfpdef ['=' test])* [',' ['**' tfpdef [',']]]
+ | '**' tfpdef [','])
tfpdef: NAME [':' test]
- varargslist: ((vfpdef ['=' test] ',')*
- ('*' [vfpdef] (',' vfpdef ['=' test])* [',' '**' vfpdef]
- | '**' vfpdef)
- | vfpdef ['=' test] (',' vfpdef ['=' test])* [','])
+ varargslist: (vfpdef ['=' test] (',' vfpdef ['=' test])* [',' [
+ '*' [vfpdef] (',' vfpdef ['=' test])* [',' ['**' vfpdef [',']]]
+ | '**' vfpdef [',']]]
+ | '*' [vfpdef] (',' vfpdef ['=' test])* [',' ['**' vfpdef [',']]]
+ | '**' vfpdef [',']
+ )
vfpdef: NAME
+
*/
int i, j, k, nposargs = 0, nkwonlyargs = 0;
int nposdefaults = 0, found_default = 0;
@@ -1370,7 +1382,8 @@ ast_for_arguments(struct compiling *c, const node *n)
i += 2; /* the name and the comma */
break;
case STAR:
- if (i+1 >= NCH(n)) {
+ if (i+1 >= NCH(n) ||
+ (i+2 == NCH(n) && TYPE(CHILD(n, i+1)) == COMMA)) {
ast_error(c, CHILD(n, i),
"named arguments must follow bare *");
return NULL;
@@ -1993,7 +2006,6 @@ ast_for_atom(struct compiling *c, const node *n)
| '...' | 'None' | 'True' | 'False'
*/
node *ch = CHILD(n, 0);
- int bytesmode = 0;
switch (TYPE(ch)) {
case NAME: {
@@ -2015,7 +2027,7 @@ ast_for_atom(struct compiling *c, const node *n)
return Name(name, Load, LINENO(n), n->n_col_offset, c->c_arena);
}
case STRING: {
- PyObject *str = parsestrplus(c, n, &bytesmode);
+ expr_ty str = parsestrplus(c, n);
if (!str) {
const char *errtype = NULL;
if (PyErr_ExceptionMatches(PyExc_UnicodeError))
@@ -2032,6 +2044,7 @@ ast_for_atom(struct compiling *c, const node *n)
PyOS_snprintf(buf, sizeof(buf), "(%s) %s", errtype, s);
Py_DECREF(errstr);
} else {
+ PyErr_Clear();
PyOS_snprintf(buf, sizeof(buf), "(%s) unknown error", errtype);
}
ast_error(c, n, buf);
@@ -2041,14 +2054,7 @@ ast_for_atom(struct compiling *c, const node *n)
}
return NULL;
}
- if (PyArena_AddPyObject(c->c_arena, str) < 0) {
- Py_DECREF(str);
- return NULL;
- }
- if (bytesmode)
- return Bytes(str, LINENO(n), n->n_col_offset, c->c_arena);
- else
- return Str(str, LINENO(n), n->n_col_offset, c->c_arena);
+ return str;
}
case NUMBER: {
PyObject *pynum = parsenumber(c, STR(ch));
@@ -3935,7 +3941,7 @@ decode_utf8(struct compiling *c, const char **sPtr, const char *end)
}
static PyObject *
-decode_unicode(struct compiling *c, const char *s, size_t len, int rawmode, const char *encoding)
+decode_unicode(struct compiling *c, const char *s, size_t len, const char *encoding)
{
PyObject *v, *u;
char *buf;
@@ -3991,20 +3997,874 @@ decode_unicode(struct compiling *c, const char *s, size_t len, int rawmode, cons
len = p - buf;
s = buf;
}
- if (rawmode)
- v = PyUnicode_DecodeRawUnicodeEscape(s, len, NULL);
- else
- v = PyUnicode_DecodeUnicodeEscape(s, len, NULL);
+ v = PyUnicode_DecodeUnicodeEscape(s, len, NULL);
Py_XDECREF(u);
return v;
}
-/* s is a Python string literal, including the bracketing quote characters,
- * and r &/or b prefixes (if any), and embedded escape sequences (if any).
- * parsestr parses it, and returns the decoded Python string object.
- */
+/* Compile this expression in to an expr_ty. We know that we can
+ temporarily modify the character before the start of this string
+ (it's '{'), and we know we can temporarily modify the character
+ after this string (it is a '}'). Leverage this to create a
+ sub-string with enough room for us to add parens around the
+ expression. This is to allow strings with embedded newlines, for
+ example. */
+static expr_ty
+fstring_compile_expr(PyObject *str, Py_ssize_t expr_start,
+ Py_ssize_t expr_end, struct compiling *c, const node *n)
+
+{
+ PyCompilerFlags cf;
+ mod_ty mod;
+ char *utf_expr;
+ Py_ssize_t i;
+ Py_UCS4 end_ch = -1;
+ int all_whitespace;
+ PyObject *sub = NULL;
+
+ /* We only decref sub if we allocated it with a PyUnicode_Substring.
+ decref_sub records that. */
+ int decref_sub = 0;
+
+ assert(str);
+
+ assert(expr_start >= 0 && expr_start < PyUnicode_GET_LENGTH(str));
+ assert(expr_end >= 0 && expr_end < PyUnicode_GET_LENGTH(str));
+ assert(expr_end >= expr_start);
+
+ /* There has to be at least one character on each side of the
+ expression inside this str. This will have been caught before
+ we're called. */
+ assert(expr_start >= 1);
+ assert(expr_end <= PyUnicode_GET_LENGTH(str)-1);
+
+ /* If the substring is all whitespace, it's an error. We need to
+ catch this here, and not when we call PyParser_ASTFromString,
+ because turning the expression '' in to '()' would go from
+ being invalid to valid. */
+ /* Note that this code says an empty string is all
+ whitespace. That's important. There's a test for it: f'{}'. */
+ all_whitespace = 1;
+ for (i = expr_start; i < expr_end; i++) {
+ if (!Py_UNICODE_ISSPACE(PyUnicode_READ_CHAR(str, i))) {
+ all_whitespace = 0;
+ break;
+ }
+ }
+ if (all_whitespace) {
+ ast_error(c, n, "f-string: empty expression not allowed");
+ goto error;
+ }
+
+ /* If the substring will be the entire source string, we can't use
+ PyUnicode_Substring, since it will return another reference to
+ our original string. Because we're modifying the string in
+ place, that's a no-no. So, detect that case and just use our
+ string directly. */
+
+ if (expr_start-1 == 0 && expr_end+1 == PyUnicode_GET_LENGTH(str)) {
+ /* If str is well formed, then the first and last chars must
+ be '{' and '}', respectively. But, if there's a syntax
+ error, for example f'{3!', then the last char won't be a
+ closing brace. So, remember the last character we read in
+ order for us to restore it. */
+ end_ch = PyUnicode_ReadChar(str, expr_end-expr_start+1);
+ assert(end_ch != (Py_UCS4)-1);
+
+ /* In all cases, however, start_ch must be '{'. */
+ assert(PyUnicode_ReadChar(str, 0) == '{');
+
+ sub = str;
+ } else {
+ /* Create a substring object. It must be a new object, with
+ refcount==1, so that we can modify it. */
+ sub = PyUnicode_Substring(str, expr_start-1, expr_end+1);
+ if (!sub)
+ goto error;
+ assert(sub != str); /* Make sure it's a new string. */
+ decref_sub = 1; /* Remember to deallocate it on error. */
+ }
+
+ /* Put () around the expression. */
+ if (PyUnicode_WriteChar(sub, 0, '(') < 0 ||
+ PyUnicode_WriteChar(sub, expr_end-expr_start+1, ')') < 0)
+ goto error;
+
+ /* No need to free the memory returned here: it's managed by the
+ string. */
+ utf_expr = PyUnicode_AsUTF8(sub);
+ if (!utf_expr)
+ goto error;
+
+ cf.cf_flags = PyCF_ONLY_AST;
+ mod = PyParser_ASTFromString(utf_expr, "<fstring>",
+ Py_eval_input, &cf, c->c_arena);
+ if (!mod)
+ goto error;
+
+ if (sub != str)
+ /* Clear instead of decref in case we ever modify this code to change
+ the error handling: this is safest because the XDECREF won't try
+ and decref it when it's NULL. */
+ /* No need to restore the chars in sub, since we know it's getting
+ ready to get deleted (refcount must be 1, since we got a new string
+ in PyUnicode_Substring). */
+ Py_CLEAR(sub);
+ else {
+ assert(!decref_sub);
+ assert(end_ch != (Py_UCS4)-1);
+ /* Restore str, which we earlier modified directly. */
+ if (PyUnicode_WriteChar(str, 0, '{') < 0 ||
+ PyUnicode_WriteChar(str, expr_end-expr_start+1, end_ch) < 0)
+ goto error;
+ }
+ return mod->v.Expression.body;
+
+error:
+ /* Only decref sub if it was the result of a call to SubString. */
+ if (decref_sub)
+ Py_XDECREF(sub);
+
+ if (end_ch != (Py_UCS4)-1) {
+ /* We only get here if we modified str. Make sure that's the
+ case: str will be equal to sub. */
+ if (str == sub) {
+ /* Don't check the error, because we've already set the
+ error state (that's why we're in 'error', after
+ all). */
+ PyUnicode_WriteChar(str, 0, '{');
+ PyUnicode_WriteChar(str, expr_end-expr_start+1, end_ch);
+ }
+ }
+ return NULL;
+}
+
+/* Return -1 on error.
+
+ Return 0 if we reached the end of the literal.
+
+ Return 1 if we haven't reached the end of the literal, but we want
+ the caller to process the literal up to this point. Used for
+ doubled braces.
+*/
+static int
+fstring_find_literal(PyObject *str, Py_ssize_t *ofs, PyObject **literal,
+ int recurse_lvl, struct compiling *c, const node *n)
+{
+ /* Get any literal string. It ends when we hit an un-doubled brace, or the
+ end of the string. */
+
+ Py_ssize_t literal_start, literal_end;
+ int result = 0;
+
+ enum PyUnicode_Kind kind = PyUnicode_KIND(str);
+ void *data = PyUnicode_DATA(str);
+
+ assert(*literal == NULL);
+
+ literal_start = *ofs;
+ for (; *ofs < PyUnicode_GET_LENGTH(str); *ofs += 1) {
+ Py_UCS4 ch = PyUnicode_READ(kind, data, *ofs);
+ if (ch == '{' || ch == '}') {
+ /* Check for doubled braces, but only at the top level. If
+ we checked at every level, then f'{0:{3}}' would fail
+ with the two closing braces. */
+ if (recurse_lvl == 0) {
+ if (*ofs + 1 < PyUnicode_GET_LENGTH(str) &&
+ PyUnicode_READ(kind, data, *ofs + 1) == ch) {
+ /* We're going to tell the caller that the literal ends
+ here, but that they should continue scanning. But also
+ skip over the second brace when we resume scanning. */
+ literal_end = *ofs + 1;
+ *ofs += 2;
+ result = 1;
+ goto done;
+ }
+
+ /* Where a single '{' is the start of a new expression, a
+ single '}' is not allowed. */
+ if (ch == '}') {
+ ast_error(c, n, "f-string: single '}' is not allowed");
+ return -1;
+ }
+ }
+
+ /* We're either at a '{', which means we're starting another
+ expression; or a '}', which means we're at the end of this
+ f-string (for a nested format_spec). */
+ break;
+ }
+ }
+ literal_end = *ofs;
+
+ assert(*ofs == PyUnicode_GET_LENGTH(str) ||
+ PyUnicode_READ(kind, data, *ofs) == '{' ||
+ PyUnicode_READ(kind, data, *ofs) == '}');
+done:
+ if (literal_start != literal_end) {
+ *literal = PyUnicode_Substring(str, literal_start, literal_end);
+ if (!*literal)
+ return -1;
+ }
+
+ return result;
+}
+
+/* Forward declaration because parsing is recursive. */
+static expr_ty
+fstring_parse(PyObject *str, Py_ssize_t *ofs, int recurse_lvl,
+ struct compiling *c, const node *n);
+
+/* Parse the f-string str, starting at ofs. We know *ofs starts an
+ expression (so it must be a '{'). Returns the FormattedValue node,
+ which includes the expression, conversion character, and
+ format_spec expression.
+
+ Note that I don't do a perfect job here: I don't make sure that a
+ closing brace doesn't match an opening paren, for example. It
+ doesn't need to error on all invalid expressions, just correctly
+ find the end of all valid ones. Any errors inside the expression
+ will be caught when we parse it later. */
+static int
+fstring_find_expr(PyObject *str, Py_ssize_t *ofs, int recurse_lvl,
+ expr_ty *expression, struct compiling *c, const node *n)
+{
+ /* Return -1 on error, else 0. */
+
+ Py_ssize_t expr_start;
+ Py_ssize_t expr_end;
+ expr_ty simple_expression;
+ expr_ty format_spec = NULL; /* Optional format specifier. */
+ Py_UCS4 conversion = -1; /* The conversion char. -1 if not specified. */
+
+ enum PyUnicode_Kind kind = PyUnicode_KIND(str);
+ void *data = PyUnicode_DATA(str);
+
+ /* 0 if we're not in a string, else the quote char we're trying to
+ match (single or double quote). */
+ Py_UCS4 quote_char = 0;
+
+ /* If we're inside a string, 1=normal, 3=triple-quoted. */
+ int string_type = 0;
+
+ /* Keep track of nesting level for braces/parens/brackets in
+ expressions. */
+ Py_ssize_t nested_depth = 0;
+
+ /* Can only nest one level deep. */
+ if (recurse_lvl >= 2) {
+ ast_error(c, n, "f-string: expressions nested too deeply");
+ return -1;
+ }
+
+ /* The first char must be a left brace, or we wouldn't have gotten
+ here. Skip over it. */
+ assert(PyUnicode_READ(kind, data, *ofs) == '{');
+ *ofs += 1;
+
+ expr_start = *ofs;
+ for (; *ofs < PyUnicode_GET_LENGTH(str); *ofs += 1) {
+ Py_UCS4 ch;
+
+ /* Loop invariants. */
+ assert(nested_depth >= 0);
+ assert(*ofs >= expr_start);
+ if (quote_char)
+ assert(string_type == 1 || string_type == 3);
+ else
+ assert(string_type == 0);
+
+ ch = PyUnicode_READ(kind, data, *ofs);
+ if (quote_char) {
+ /* We're inside a string. See if we're at the end. */
+ /* This code needs to implement the same non-error logic
+ as tok_get from tokenizer.c, at the letter_quote
+ label. To actually share that code would be a
+ nightmare. But, it's unlikely to change and is small,
+ so duplicate it here. Note we don't need to catch all
+ of the errors, since they'll be caught when parsing the
+ expression. We just need to match the non-error
+ cases. Thus we can ignore \n in single-quoted strings,
+ for example. Or non-terminated strings. */
+ if (ch == quote_char) {
+ /* Does this match the string_type (single or triple
+ quoted)? */
+ if (string_type == 3) {
+ if (*ofs+2 < PyUnicode_GET_LENGTH(str) &&
+ PyUnicode_READ(kind, data, *ofs+1) == ch &&
+ PyUnicode_READ(kind, data, *ofs+2) == ch) {
+ /* We're at the end of a triple quoted string. */
+ *ofs += 2;
+ string_type = 0;
+ quote_char = 0;
+ continue;
+ }
+ } else {
+ /* We're at the end of a normal string. */
+ quote_char = 0;
+ string_type = 0;
+ continue;
+ }
+ }
+ /* We're inside a string, and not finished with the
+ string. If this is a backslash, skip the next char (it
+ might be an end quote that needs skipping). Otherwise,
+ just consume this character normally. */
+ if (ch == '\\' && *ofs+1 < PyUnicode_GET_LENGTH(str)) {
+ /* Just skip the next char, whatever it is. */
+ *ofs += 1;
+ }
+ } else if (ch == '\'' || ch == '"') {
+ /* Is this a triple quoted string? */
+ if (*ofs+2 < PyUnicode_GET_LENGTH(str) &&
+ PyUnicode_READ(kind, data, *ofs+1) == ch &&
+ PyUnicode_READ(kind, data, *ofs+2) == ch) {
+ string_type = 3;
+ *ofs += 2;
+ } else {
+ /* Start of a normal string. */
+ string_type = 1;
+ }
+ /* Start looking for the end of the string. */
+ quote_char = ch;
+ } else if (ch == '[' || ch == '{' || ch == '(') {
+ nested_depth++;
+ } else if (nested_depth != 0 &&
+ (ch == ']' || ch == '}' || ch == ')')) {
+ nested_depth--;
+ } else if (ch == '#') {
+ /* Error: can't include a comment character, inside parens
+ or not. */
+ ast_error(c, n, "f-string cannot include '#'");
+ return -1;
+ } else if (nested_depth == 0 &&
+ (ch == '!' || ch == ':' || ch == '}')) {
+ /* First, test for the special case of "!=". Since '=' is
+ not an allowed conversion character, nothing is lost in
+ this test. */
+ if (ch == '!' && *ofs+1 < PyUnicode_GET_LENGTH(str) &&
+ PyUnicode_READ(kind, data, *ofs+1) == '=')
+ /* This isn't a conversion character, just continue. */
+ continue;
+
+ /* Normal way out of this loop. */
+ break;
+ } else {
+ /* Just consume this char and loop around. */
+ }
+ }
+ expr_end = *ofs;
+ /* If we leave this loop in a string or with mismatched parens, we
+ don't care. We'll get a syntax error when compiling the
+ expression. But, we can produce a better error message, so
+ let's just do that.*/
+ if (quote_char) {
+ ast_error(c, n, "f-string: unterminated string");
+ return -1;
+ }
+ if (nested_depth) {
+ ast_error(c, n, "f-string: mismatched '(', '{', or '['");
+ return -1;
+ }
+
+ if (*ofs >= PyUnicode_GET_LENGTH(str))
+ goto unexpected_end_of_string;
+
+ /* Compile the expression as soon as possible, so we show errors
+ related to the expression before errors related to the
+ conversion or format_spec. */
+ simple_expression = fstring_compile_expr(str, expr_start, expr_end, c, n);
+ if (!simple_expression)
+ return -1;
+
+ /* Check for a conversion char, if present. */
+ if (PyUnicode_READ(kind, data, *ofs) == '!') {
+ *ofs += 1;
+ if (*ofs >= PyUnicode_GET_LENGTH(str))
+ goto unexpected_end_of_string;
+
+ conversion = PyUnicode_READ(kind, data, *ofs);
+ *ofs += 1;
+
+ /* Validate the conversion. */
+ if (!(conversion == 's' || conversion == 'r'
+ || conversion == 'a')) {
+ ast_error(c, n, "f-string: invalid conversion character: "
+ "expected 's', 'r', or 'a'");
+ return -1;
+ }
+ }
+
+ /* Check for the format spec, if present. */
+ if (*ofs >= PyUnicode_GET_LENGTH(str))
+ goto unexpected_end_of_string;
+ if (PyUnicode_READ(kind, data, *ofs) == ':') {
+ *ofs += 1;
+ if (*ofs >= PyUnicode_GET_LENGTH(str))
+ goto unexpected_end_of_string;
+
+ /* Parse the format spec. */
+ format_spec = fstring_parse(str, ofs, recurse_lvl+1, c, n);
+ if (!format_spec)
+ return -1;
+ }
+
+ if (*ofs >= PyUnicode_GET_LENGTH(str) ||
+ PyUnicode_READ(kind, data, *ofs) != '}')
+ goto unexpected_end_of_string;
+
+ /* We're at a right brace. Consume it. */
+ assert(*ofs < PyUnicode_GET_LENGTH(str));
+ assert(PyUnicode_READ(kind, data, *ofs) == '}');
+ *ofs += 1;
+
+ /* And now create the FormattedValue node that represents this entire
+ expression with the conversion and format spec. */
+ *expression = FormattedValue(simple_expression, (int)conversion,
+ format_spec, LINENO(n), n->n_col_offset,
+ c->c_arena);
+ if (!*expression)
+ return -1;
+
+ return 0;
+
+unexpected_end_of_string:
+ ast_error(c, n, "f-string: expecting '}'");
+ return -1;
+}
+
+/* Return -1 on error.
+
+ Return 0 if we have a literal (possible zero length) and an
+ expression (zero length if at the end of the string.
+
+ Return 1 if we have a literal, but no expression, and we want the
+ caller to call us again. This is used to deal with doubled
+ braces.
+
+ When called multiple times on the string 'a{{b{0}c', this function
+ will return:
+
+ 1. the literal 'a{' with no expression, and a return value
+ of 1. Despite the fact that there's no expression, the return
+ value of 1 means we're not finished yet.
+
+ 2. the literal 'b' and the expression '0', with a return value of
+ 0. The fact that there's an expression means we're not finished.
+
+ 3. literal 'c' with no expression and a return value of 0. The
+ combination of the return value of 0 with no expression means
+ we're finished.
+*/
+static int
+fstring_find_literal_and_expr(PyObject *str, Py_ssize_t *ofs, int recurse_lvl,
+ PyObject **literal, expr_ty *expression,
+ struct compiling *c, const node *n)
+{
+ int result;
+
+ assert(*literal == NULL && *expression == NULL);
+
+ /* Get any literal string. */
+ result = fstring_find_literal(str, ofs, literal, recurse_lvl, c, n);
+ if (result < 0)
+ goto error;
+
+ assert(result == 0 || result == 1);
+
+ if (result == 1)
+ /* We have a literal, but don't look at the expression. */
+ return 1;
+
+ assert(*ofs <= PyUnicode_GET_LENGTH(str));
+
+ if (*ofs >= PyUnicode_GET_LENGTH(str) ||
+ PyUnicode_READ_CHAR(str, *ofs) == '}')
+ /* We're at the end of the string or the end of a nested
+ f-string: no expression. The top-level error case where we
+ expect to be at the end of the string but we're at a '}' is
+ handled later. */
+ return 0;
+
+ /* We must now be the start of an expression, on a '{'. */
+ assert(*ofs < PyUnicode_GET_LENGTH(str) &&
+ PyUnicode_READ_CHAR(str, *ofs) == '{');
+
+ if (fstring_find_expr(str, ofs, recurse_lvl, expression, c, n) < 0)
+ goto error;
+
+ return 0;
+
+error:
+ Py_CLEAR(*literal);
+ return -1;
+}
+
+#define EXPRLIST_N_CACHED 64
+
+typedef struct {
+ /* Incrementally build an array of expr_ty, so be used in an
+ asdl_seq. Cache some small but reasonably sized number of
+ expr_ty's, and then after that start dynamically allocating,
+ doubling the number allocated each time. Note that the f-string
+ f'{0}a{1}' contains 3 expr_ty's: 2 FormattedValue's, and one
+ Str for the literal 'a'. So you add expr_ty's about twice as
+ fast as you add exressions in an f-string. */
+
+ Py_ssize_t allocated; /* Number we've allocated. */
+ Py_ssize_t size; /* Number we've used. */
+ expr_ty *p; /* Pointer to the memory we're actually
+ using. Will point to 'data' until we
+ start dynamically allocating. */
+ expr_ty data[EXPRLIST_N_CACHED];
+} ExprList;
+
+#ifdef NDEBUG
+#define ExprList_check_invariants(l)
+#else
+static void
+ExprList_check_invariants(ExprList *l)
+{
+ /* Check our invariants. Make sure this object is "live", and
+ hasn't been deallocated. */
+ assert(l->size >= 0);
+ assert(l->p != NULL);
+ if (l->size <= EXPRLIST_N_CACHED)
+ assert(l->data == l->p);
+}
+#endif
+
+static void
+ExprList_Init(ExprList *l)
+{
+ l->allocated = EXPRLIST_N_CACHED;
+ l->size = 0;
+
+ /* Until we start allocating dynamically, p points to data. */
+ l->p = l->data;
+
+ ExprList_check_invariants(l);
+}
+
+static int
+ExprList_Append(ExprList *l, expr_ty exp)
+{
+ ExprList_check_invariants(l);
+ if (l->size >= l->allocated) {
+ /* We need to alloc (or realloc) the memory. */
+ Py_ssize_t new_size = l->allocated * 2;
+
+ /* See if we've ever allocated anything dynamically. */
+ if (l->p == l->data) {
+ Py_ssize_t i;
+ /* We're still using the cached data. Switch to
+ alloc-ing. */
+ l->p = PyMem_RawMalloc(sizeof(expr_ty) * new_size);
+ if (!l->p)
+ return -1;
+ /* Copy the cached data into the new buffer. */
+ for (i = 0; i < l->size; i++)
+ l->p[i] = l->data[i];
+ } else {
+ /* Just realloc. */
+ expr_ty *tmp = PyMem_RawRealloc(l->p, sizeof(expr_ty) * new_size);
+ if (!tmp) {
+ PyMem_RawFree(l->p);
+ l->p = NULL;
+ return -1;
+ }
+ l->p = tmp;
+ }
+
+ l->allocated = new_size;
+ assert(l->allocated == 2 * l->size);
+ }
+
+ l->p[l->size++] = exp;
+
+ ExprList_check_invariants(l);
+ return 0;
+}
+
+static void
+ExprList_Dealloc(ExprList *l)
+{
+ ExprList_check_invariants(l);
+
+ /* If there's been an error, or we've never dynamically allocated,
+ do nothing. */
+ if (!l->p || l->p == l->data) {
+ /* Do nothing. */
+ } else {
+ /* We have dynamically allocated. Free the memory. */
+ PyMem_RawFree(l->p);
+ }
+ l->p = NULL;
+ l->size = -1;
+}
+
+static asdl_seq *
+ExprList_Finish(ExprList *l, PyArena *arena)
+{
+ asdl_seq *seq;
+
+ ExprList_check_invariants(l);
+
+ /* Allocate the asdl_seq and copy the expressions in to it. */
+ seq = _Py_asdl_seq_new(l->size, arena);
+ if (seq) {
+ Py_ssize_t i;
+ for (i = 0; i < l->size; i++)
+ asdl_seq_SET(seq, i, l->p[i]);
+ }
+ ExprList_Dealloc(l);
+ return seq;
+}
+
+/* The FstringParser is designed to add a mix of strings and
+ f-strings, and concat them together as needed. Ultimately, it
+ generates an expr_ty. */
+typedef struct {
+ PyObject *last_str;
+ ExprList expr_list;
+} FstringParser;
+
+#ifdef NDEBUG
+#define FstringParser_check_invariants(state)
+#else
+static void
+FstringParser_check_invariants(FstringParser *state)
+{
+ if (state->last_str)
+ assert(PyUnicode_CheckExact(state->last_str));
+ ExprList_check_invariants(&state->expr_list);
+}
+#endif
+
+static void
+FstringParser_Init(FstringParser *state)
+{
+ state->last_str = NULL;
+ ExprList_Init(&state->expr_list);
+ FstringParser_check_invariants(state);
+}
+
+static void
+FstringParser_Dealloc(FstringParser *state)
+{
+ FstringParser_check_invariants(state);
+
+ Py_XDECREF(state->last_str);
+ ExprList_Dealloc(&state->expr_list);
+}
+
+/* Make a Str node, but decref the PyUnicode object being added. */
+static expr_ty
+make_str_node_and_del(PyObject **str, struct compiling *c, const node* n)
+{
+ PyObject *s = *str;
+ *str = NULL;
+ assert(PyUnicode_CheckExact(s));
+ if (PyArena_AddPyObject(c->c_arena, s) < 0) {
+ Py_DECREF(s);
+ return NULL;
+ }
+ return Str(s, LINENO(n), n->n_col_offset, c->c_arena);
+}
+
+/* Add a non-f-string (that is, a regular literal string). str is
+ decref'd. */
+static int
+FstringParser_ConcatAndDel(FstringParser *state, PyObject *str)
+{
+ FstringParser_check_invariants(state);
+
+ assert(PyUnicode_CheckExact(str));
+
+ if (PyUnicode_GET_LENGTH(str) == 0) {
+ Py_DECREF(str);
+ return 0;
+ }
+
+ if (!state->last_str) {
+ /* We didn't have a string before, so just remember this one. */
+ state->last_str = str;
+ } else {
+ /* Concatenate this with the previous string. */
+ PyUnicode_AppendAndDel(&state->last_str, str);
+ if (!state->last_str)
+ return -1;
+ }
+ FstringParser_check_invariants(state);
+ return 0;
+}
+
+/* Parse an f-string. The f-string is in str, starting at ofs, with no 'f'
+ or quotes. str is not decref'd, since we don't know if it's used elsewhere.
+ And if we're only looking at a part of a string, then decref'ing is
+ definitely not the right thing to do! */
+static int
+FstringParser_ConcatFstring(FstringParser *state, PyObject *str,
+ Py_ssize_t *ofs, int recurse_lvl,
+ struct compiling *c, const node *n)
+{
+ FstringParser_check_invariants(state);
+
+ /* Parse the f-string. */
+ while (1) {
+ PyObject *literal = NULL;
+ expr_ty expression = NULL;
+
+ /* If there's a zero length literal in front of the
+ expression, literal will be NULL. If we're at the end of
+ the f-string, expression will be NULL (unless result == 1,
+ see below). */
+ int result = fstring_find_literal_and_expr(str, ofs, recurse_lvl,
+ &literal, &expression,
+ c, n);
+ if (result < 0)
+ return -1;
+
+ /* Add the literal, if any. */
+ if (!literal) {
+ /* Do nothing. Just leave last_str alone (and possibly
+ NULL). */
+ } else if (!state->last_str) {
+ state->last_str = literal;
+ literal = NULL;
+ } else {
+ /* We have a literal, concatenate it. */
+ assert(PyUnicode_GET_LENGTH(literal) != 0);
+ if (FstringParser_ConcatAndDel(state, literal) < 0)
+ return -1;
+ literal = NULL;
+ }
+ assert(!state->last_str ||
+ PyUnicode_GET_LENGTH(state->last_str) != 0);
+
+ /* We've dealt with the literal now. It can't be leaked on further
+ errors. */
+ assert(literal == NULL);
+
+ /* See if we should just loop around to get the next literal
+ and expression, while ignoring the expression this
+ time. This is used for un-doubling braces, as an
+ optimization. */
+ if (result == 1)
+ continue;
+
+ if (!expression)
+ /* We're done with this f-string. */
+ break;
+
+ /* We know we have an expression. Convert any existing string
+ to a Str node. */
+ if (!state->last_str) {
+ /* Do nothing. No previous literal. */
+ } else {
+ /* Convert the existing last_str literal to a Str node. */
+ expr_ty str = make_str_node_and_del(&state->last_str, c, n);
+ if (!str || ExprList_Append(&state->expr_list, str) < 0)
+ return -1;
+ }
+
+ if (ExprList_Append(&state->expr_list, expression) < 0)
+ return -1;
+ }
+
+ assert(*ofs <= PyUnicode_GET_LENGTH(str));
+
+ /* If recurse_lvl is zero, then we must be at the end of the
+ string. Otherwise, we must be at a right brace. */
+
+ if (recurse_lvl == 0 && *ofs < PyUnicode_GET_LENGTH(str)) {
+ ast_error(c, n, "f-string: unexpected end of string");
+ return -1;
+ }
+ if (recurse_lvl != 0 && PyUnicode_READ_CHAR(str, *ofs) != '}') {
+ ast_error(c, n, "f-string: expecting '}'");
+ return -1;
+ }
+
+ FstringParser_check_invariants(state);
+ return 0;
+}
+
+/* Convert the partial state reflected in last_str and expr_list to an
+ expr_ty. The expr_ty can be a Str, or a JoinedStr. */
+static expr_ty
+FstringParser_Finish(FstringParser *state, struct compiling *c,
+ const node *n)
+{
+ asdl_seq *seq;
+
+ FstringParser_check_invariants(state);
+
+ /* If we're just a constant string with no expressions, return
+ that. */
+ if(state->expr_list.size == 0) {
+ if (!state->last_str) {
+ /* Create a zero length string. */
+ state->last_str = PyUnicode_FromStringAndSize(NULL, 0);
+ if (!state->last_str)
+ goto error;
+ }
+ return make_str_node_and_del(&state->last_str, c, n);
+ }
+
+ /* Create a Str node out of last_str, if needed. It will be the
+ last node in our expression list. */
+ if (state->last_str) {
+ expr_ty str = make_str_node_and_del(&state->last_str, c, n);
+ if (!str || ExprList_Append(&state->expr_list, str) < 0)
+ goto error;
+ }
+ /* This has already been freed. */
+ assert(state->last_str == NULL);
+
+ seq = ExprList_Finish(&state->expr_list, c->c_arena);
+ if (!seq)
+ goto error;
+
+ /* If there's only one expression, return it. Otherwise, we need
+ to join them together. */
+ if (seq->size == 1)
+ return seq->elements[0];
+
+ return JoinedStr(seq, LINENO(n), n->n_col_offset, c->c_arena);
+
+error:
+ FstringParser_Dealloc(state);
+ return NULL;
+}
+
+/* Given an f-string (with no 'f' or quotes) that's in str starting at
+ ofs, parse it into an expr_ty. Return NULL on error. Does not
+ decref str. */
+static expr_ty
+fstring_parse(PyObject *str, Py_ssize_t *ofs, int recurse_lvl,
+ struct compiling *c, const node *n)
+{
+ FstringParser state;
+
+ FstringParser_Init(&state);
+ if (FstringParser_ConcatFstring(&state, str, ofs, recurse_lvl,
+ c, n) < 0) {
+ FstringParser_Dealloc(&state);
+ return NULL;
+ }
+
+ return FstringParser_Finish(&state, c, n);
+}
+
+/* n is a Python string literal, including the bracketing quote
+ characters, and r, b, u, &/or f prefixes (if any), and embedded
+ escape sequences (if any). parsestr parses it, and returns the
+ decoded Python string object. If the string is an f-string, set
+ *fmode and return the unparsed string object.
+*/
static PyObject *
-parsestr(struct compiling *c, const node *n, int *bytesmode)
+parsestr(struct compiling *c, const node *n, int *bytesmode, int *fmode)
{
size_t len;
const char *s = STR(n);
@@ -4024,15 +4884,24 @@ parsestr(struct compiling *c, const node *n, int *bytesmode)
quote = *++s;
rawmode = 1;
}
+ else if (quote == 'f' || quote == 'F') {
+ quote = *++s;
+ *fmode = 1;
+ }
else {
break;
}
}
}
+ if (*fmode && *bytesmode) {
+ PyErr_BadInternalCall();
+ return NULL;
+ }
if (quote != '\'' && quote != '\"') {
PyErr_BadInternalCall();
return NULL;
}
+ /* Skip the leading quote char. */
s++;
len = strlen(s);
if (len > INT_MAX) {
@@ -4041,19 +4910,24 @@ parsestr(struct compiling *c, const node *n, int *bytesmode)
return NULL;
}
if (s[--len] != quote) {
+ /* Last quote char must match the first. */
PyErr_BadInternalCall();
return NULL;
}
if (len >= 4 && s[0] == quote && s[1] == quote) {
+ /* A triple quoted string. We've already skipped one quote at
+ the start and one at the end of the string. Now skip the
+ two at the start. */
s += 2;
len -= 2;
+ /* And check that the last two match. */
if (s[--len] != quote || s[--len] != quote) {
PyErr_BadInternalCall();
return NULL;
}
}
if (!*bytesmode && !rawmode) {
- return decode_unicode(c, s, len, rawmode, c->c_encoding);
+ return decode_unicode(c, s, len, c->c_encoding);
}
if (*bytesmode) {
/* Disallow non-ascii characters (but not escapes) */
@@ -4085,51 +4959,84 @@ parsestr(struct compiling *c, const node *n, int *bytesmode)
}
}
return PyBytes_DecodeEscape(s, len, NULL, 1,
- need_encoding ? c->c_encoding : NULL);
+ need_encoding ? c->c_encoding : NULL);
}
-/* Build a Python string object out of a STRING+ atom. This takes care of
- * compile-time literal catenation, calling parsestr() on each piece, and
- * pasting the intermediate results together.
- */
-static PyObject *
-parsestrplus(struct compiling *c, const node *n, int *bytesmode)
+/* Accepts a STRING+ atom, and produces an expr_ty node. Run through
+ each STRING atom, and process it as needed. For bytes, just
+ concatenate them together, and the result will be a Bytes node. For
+ normal strings and f-strings, concatenate them together. The result
+ will be a Str node if there were no f-strings; a FormattedValue
+ node if there's just an f-string (with no leading or trailing
+ literals), or a JoinedStr node if there are multiple f-strings or
+ any literals involved. */
+static expr_ty
+parsestrplus(struct compiling *c, const node *n)
{
- PyObject *v;
+ int bytesmode = 0;
+ PyObject *bytes_str = NULL;
int i;
- REQ(CHILD(n, 0), STRING);
- v = parsestr(c, CHILD(n, 0), bytesmode);
- if (v != NULL) {
- /* String literal concatenation */
- for (i = 1; i < NCH(n); i++) {
- PyObject *s;
- int subbm = 0;
- s = parsestr(c, CHILD(n, i), &subbm);
- if (s == NULL)
- goto onError;
- if (*bytesmode != subbm) {
- ast_error(c, n, "cannot mix bytes and nonbytes literals");
- Py_DECREF(s);
- goto onError;
- }
- if (PyBytes_Check(v) && PyBytes_Check(s)) {
- PyBytes_ConcatAndDel(&v, s);
- if (v == NULL)
- goto onError;
- }
- else {
- PyObject *temp = PyUnicode_Concat(v, s);
- Py_DECREF(s);
- Py_DECREF(v);
- v = temp;
- if (v == NULL)
- goto onError;
+
+ FstringParser state;
+ FstringParser_Init(&state);
+
+ for (i = 0; i < NCH(n); i++) {
+ int this_bytesmode = 0;
+ int this_fmode = 0;
+ PyObject *s;
+
+ REQ(CHILD(n, i), STRING);
+ s = parsestr(c, CHILD(n, i), &this_bytesmode, &this_fmode);
+ if (!s)
+ goto error;
+
+ /* Check that we're not mixing bytes with unicode. */
+ if (i != 0 && bytesmode != this_bytesmode) {
+ ast_error(c, n, "cannot mix bytes and nonbytes literals");
+ Py_DECREF(s);
+ goto error;
+ }
+ bytesmode = this_bytesmode;
+
+ assert(bytesmode ? PyBytes_CheckExact(s) : PyUnicode_CheckExact(s));
+
+ if (bytesmode) {
+ /* For bytes, concat as we go. */
+ if (i == 0) {
+ /* First time, just remember this value. */
+ bytes_str = s;
+ } else {
+ PyBytes_ConcatAndDel(&bytes_str, s);
+ if (!bytes_str)
+ goto error;
}
+ } else if (this_fmode) {
+ /* This is an f-string. Concatenate and decref it. */
+ Py_ssize_t ofs = 0;
+ int result = FstringParser_ConcatFstring(&state, s, &ofs, 0, c, n);
+ Py_DECREF(s);
+ if (result < 0)
+ goto error;
+ } else {
+ /* This is a regular string. Concatenate it. */
+ if (FstringParser_ConcatAndDel(&state, s) < 0)
+ goto error;
}
}
- return v;
+ if (bytesmode) {
+ /* Just return the bytes object and we're done. */
+ if (PyArena_AddPyObject(c->c_arena, bytes_str) < 0)
+ goto error;
+ return Bytes(bytes_str, LINENO(n), n->n_col_offset, c->c_arena);
+ }
+
+ /* We're not a bytes string, bytes_str should never have been set. */
+ assert(bytes_str == NULL);
+
+ return FstringParser_Finish(&state, c, n);
- onError:
- Py_XDECREF(v);
+error:
+ Py_XDECREF(bytes_str);
+ FstringParser_Dealloc(&state);
return NULL;
}
diff --git a/Python/bltinmodule.c b/Python/bltinmodule.c
index a06ef610c6..31d9e0e4d1 100644
--- a/Python/bltinmodule.c
+++ b/Python/bltinmodule.c
@@ -331,7 +331,7 @@ builtin_any(PyModuleDef *module, PyObject *iterable)
Py_DECREF(it);
return NULL;
}
- if (cmp == 1) {
+ if (cmp > 0) {
Py_DECREF(it);
Py_RETURN_TRUE;
}
@@ -469,6 +469,7 @@ filter_next(filterobject *lz)
PyObject *it = lz->it;
long ok;
PyObject *(*iternext)(PyObject *);
+ int checktrue = lz->func == Py_None || lz->func == (PyObject *)&PyBool_Type;
iternext = *Py_TYPE(it)->tp_iternext;
for (;;) {
@@ -476,12 +477,11 @@ filter_next(filterobject *lz)
if (item == NULL)
return NULL;
- if (lz->func == Py_None || lz->func == (PyObject *)&PyBool_Type) {
+ if (checktrue) {
ok = PyObject_IsTrue(item);
} else {
PyObject *good;
- good = PyObject_CallFunctionObjArgs(lz->func,
- item, NULL);
+ good = PyObject_CallFunctionObjArgs(lz->func, item, NULL);
if (good == NULL) {
Py_DECREF(item);
return NULL;
@@ -1174,13 +1174,14 @@ map_next(mapobject *lz)
PyObject *result;
Py_ssize_t numargs, i;
- numargs = PyTuple_Size(lz->iters);
+ numargs = PyTuple_GET_SIZE(lz->iters);
argtuple = PyTuple_New(numargs);
if (argtuple == NULL)
return NULL;
for (i=0 ; i<numargs ; i++) {
- val = PyIter_Next(PyTuple_GET_ITEM(lz->iters, i));
+ PyObject *it = PyTuple_GET_ITEM(lz->iters, i);
+ val = Py_TYPE(it)->tp_iternext(it);
if (val == NULL) {
Py_DECREF(argtuple);
return NULL;
diff --git a/Python/ceval.c b/Python/ceval.c
index 786adbf7e1..3835cbb956 100644
--- a/Python/ceval.c
+++ b/Python/ceval.c
@@ -125,7 +125,7 @@ static PyObject * load_args(PyObject ***, int);
#ifdef LLTRACE
static int lltrace;
-static int prtrace(PyObject *, char *);
+static int prtrace(PyObject *, const char *);
#endif
static int call_trace(Py_tracefunc, PyObject *,
PyThreadState *, PyFrameObject *,
@@ -2307,7 +2307,7 @@ PyEval_EvalFrameEx(PyFrameObject *f, int throwflag)
}
else {
v = PyObject_GetItem(locals, name);
- if (v == NULL && _PyErr_OCCURRED()) {
+ if (v == NULL) {
if (!PyErr_ExceptionMatches(PyExc_KeyError))
goto error;
PyErr_Clear();
@@ -2347,26 +2347,33 @@ PyEval_EvalFrameEx(PyFrameObject *f, int throwflag)
PyObject *name = GETITEM(names, oparg);
PyObject *v;
if (PyDict_CheckExact(f->f_globals)
- && PyDict_CheckExact(f->f_builtins)) {
+ && PyDict_CheckExact(f->f_builtins))
+ {
v = _PyDict_LoadGlobal((PyDictObject *)f->f_globals,
(PyDictObject *)f->f_builtins,
name);
if (v == NULL) {
- if (!_PyErr_OCCURRED())
+ if (!_PyErr_OCCURRED()) {
+ /* _PyDict_LoadGlobal() returns NULL without raising
+ * an exception if the key doesn't exist */
format_exc_check_arg(PyExc_NameError,
NAME_ERROR_MSG, name);
+ }
goto error;
}
Py_INCREF(v);
}
else {
/* Slow-path if globals or builtins is not a dict */
+
+ /* namespace 1: globals */
v = PyObject_GetItem(f->f_globals, name);
if (v == NULL) {
if (!PyErr_ExceptionMatches(PyExc_KeyError))
goto error;
PyErr_Clear();
+ /* namespace 2: builtins */
v = PyObject_GetItem(f->f_builtins, name);
if (v == NULL) {
if (PyErr_ExceptionMatches(PyExc_KeyError))
@@ -2426,7 +2433,7 @@ PyEval_EvalFrameEx(PyFrameObject *f, int throwflag)
}
else {
value = PyObject_GetItem(locals, name);
- if (value == NULL && PyErr_Occurred()) {
+ if (value == NULL) {
if (!PyErr_ExceptionMatches(PyExc_KeyError))
goto error;
PyErr_Clear();
@@ -3366,6 +3373,63 @@ PyEval_EvalFrameEx(PyFrameObject *f, int throwflag)
DISPATCH();
}
+ TARGET(FORMAT_VALUE) {
+ /* Handles f-string value formatting. */
+ PyObject *result;
+ PyObject *fmt_spec;
+ PyObject *value;
+ PyObject *(*conv_fn)(PyObject *);
+ int which_conversion = oparg & FVC_MASK;
+ int have_fmt_spec = (oparg & FVS_MASK) == FVS_HAVE_SPEC;
+
+ fmt_spec = have_fmt_spec ? POP() : NULL;
+ value = TOP();
+
+ /* See if any conversion is specified. */
+ switch (which_conversion) {
+ case FVC_STR: conv_fn = PyObject_Str; break;
+ case FVC_REPR: conv_fn = PyObject_Repr; break;
+ case FVC_ASCII: conv_fn = PyObject_ASCII; break;
+
+ /* Must be 0 (meaning no conversion), since only four
+ values are allowed by (oparg & FVC_MASK). */
+ default: conv_fn = NULL; break;
+ }
+
+ /* If there's a conversion function, call it and replace
+ value with that result. Otherwise, just use value,
+ without conversion. */
+ if (conv_fn) {
+ result = conv_fn(value);
+ Py_DECREF(value);
+ if (!result) {
+ Py_XDECREF(fmt_spec);
+ goto error;
+ }
+ value = result;
+ }
+
+ /* If value is a unicode object, and there's no fmt_spec,
+ then we know the result of format(value) is value
+ itself. In that case, skip calling format(). I plan to
+ move this optimization in to PyObject_Format()
+ itself. */
+ if (PyUnicode_CheckExact(value) && fmt_spec == NULL) {
+ /* Do nothing, just transfer ownership to result. */
+ result = value;
+ } else {
+ /* Actually call format(). */
+ result = PyObject_Format(value, fmt_spec);
+ Py_DECREF(value);
+ Py_XDECREF(fmt_spec);
+ if (!result)
+ goto error;
+ }
+
+ SET_TOP(result);
+ DISPATCH();
+ }
+
TARGET(EXTENDED_ARG) {
opcode = NEXTOP();
oparg = oparg<<16 | NEXTARG();
@@ -4244,7 +4308,7 @@ Error:
#ifdef LLTRACE
static int
-prtrace(PyObject *v, char *str)
+prtrace(PyObject *v, const char *str)
{
printf("%s ", str);
if (PyObject_Print(v, stdout, 0) != 0)
diff --git a/Python/compile.c b/Python/compile.c
index 7631f4e55a..0f619c4535 100644
--- a/Python/compile.c
+++ b/Python/compile.c
@@ -731,6 +731,7 @@ compiler_set_qualname(struct compiler *c)
return 1;
}
+
/* Allocate a new block and return a pointer to it.
Returns NULL on error.
*/
@@ -1066,6 +1067,10 @@ PyCompile_OpcodeStackEffect(int opcode, int oparg)
return 1;
case GET_YIELD_FROM_ITER:
return 0;
+ case FORMAT_VALUE:
+ /* If there's a fmt_spec on the stack, we go from 2->1,
+ else 1->1. */
+ return (oparg & FVS_MASK) == FVS_HAVE_SPEC ? -1 : 0;
default:
return PY_INVALID_STACK_EFFECT;
}
@@ -3208,6 +3213,81 @@ compiler_call(struct compiler *c, expr_ty e)
e->v.Call.keywords);
}
+static int
+compiler_joined_str(struct compiler *c, expr_ty e)
+{
+ /* Concatenate parts of a string using ''.join(parts). There are
+ probably better ways of doing this.
+
+ This is used for constructs like "'x=' f'{42}'", which have to
+ be evaluated at compile time. */
+
+ static PyObject *empty_string;
+ static PyObject *join_string;
+
+ if (!empty_string) {
+ empty_string = PyUnicode_FromString("");
+ if (!empty_string)
+ return 0;
+ }
+ if (!join_string) {
+ join_string = PyUnicode_FromString("join");
+ if (!join_string)
+ return 0;
+ }
+
+ ADDOP_O(c, LOAD_CONST, empty_string, consts);
+ ADDOP_NAME(c, LOAD_ATTR, join_string, names);
+ VISIT_SEQ(c, expr, e->v.JoinedStr.values);
+ ADDOP_I(c, BUILD_LIST, asdl_seq_LEN(e->v.JoinedStr.values));
+ ADDOP_I(c, CALL_FUNCTION, 1);
+ return 1;
+}
+
+/* Used to implement f-strings. Format a single value. */
+static int
+compiler_formatted_value(struct compiler *c, expr_ty e)
+{
+ /* Our oparg encodes 2 pieces of information: the conversion
+ character, and whether or not a format_spec was provided.
+
+ Convert the conversion char to 2 bits:
+ None: 000 0x0 FVC_NONE
+ !s : 001 0x1 FVC_STR
+ !r : 010 0x2 FVC_REPR
+ !a : 011 0x3 FVC_ASCII
+
+ next bit is whether or not we have a format spec:
+ yes : 100 0x4
+ no : 000 0x0
+ */
+
+ int oparg;
+
+ /* Evaluate the expression to be formatted. */
+ VISIT(c, expr, e->v.FormattedValue.value);
+
+ switch (e->v.FormattedValue.conversion) {
+ case 's': oparg = FVC_STR; break;
+ case 'r': oparg = FVC_REPR; break;
+ case 'a': oparg = FVC_ASCII; break;
+ case -1: oparg = FVC_NONE; break;
+ default:
+ PyErr_SetString(PyExc_SystemError,
+ "Unrecognized conversion character");
+ return 0;
+ }
+ if (e->v.FormattedValue.format_spec) {
+ /* Evaluate the format spec, and update our opcode arg. */
+ VISIT(c, expr, e->v.FormattedValue.format_spec);
+ oparg |= FVS_HAVE_SPEC;
+ }
+
+ /* And push our opcode and oparg */
+ ADDOP_I(c, FORMAT_VALUE, oparg);
+ return 1;
+}
+
/* shared code between compiler_call and compiler_class */
static int
compiler_call_helper(struct compiler *c,
@@ -3627,9 +3707,9 @@ expr_constant(struct compiler *c, expr_ty e)
BLOCK
finally:
if an exception was raised:
- exc = copy of (exception, instance, traceback)
+ exc = copy of (exception, instance, traceback)
else:
- exc = (None, None, None)
+ exc = (None, None, None)
if not (await exit(*exc)):
raise
*/
@@ -3877,6 +3957,10 @@ compiler_visit_expr(struct compiler *c, expr_ty e)
case Str_kind:
ADDOP_O(c, LOAD_CONST, e->v.Str.s, consts);
break;
+ case JoinedStr_kind:
+ return compiler_joined_str(c, e);
+ case FormattedValue_kind:
+ return compiler_formatted_value(c, e);
case Bytes_kind:
ADDOP_O(c, LOAD_CONST, e->v.Bytes.s, consts);
break;
@@ -4783,4 +4867,3 @@ PyAST_Compile(mod_ty mod, const char *filename, PyCompilerFlags *flags,
{
return PyAST_CompileEx(mod, filename, flags, -1, arena);
}
-
diff --git a/Python/dtoa.c b/Python/dtoa.c
index 3da546ed07..e0665b667e 100644
--- a/Python/dtoa.c
+++ b/Python/dtoa.c
@@ -747,7 +747,7 @@ pow5mult(Bigint *b, int k)
{
Bigint *b1, *p5, *p51;
int i;
- static int p05[3] = { 5, 25, 125 };
+ static const int p05[3] = { 5, 25, 125 };
if ((i = k & 3)) {
b = multadd(b, p05[i-1], 0);
@@ -803,7 +803,7 @@ pow5mult(Bigint *b, int k)
{
Bigint *b1, *p5, *p51;
int i;
- static int p05[3] = { 5, 25, 125 };
+ static const int p05[3] = { 5, 25, 125 };
if ((i = k & 3)) {
b = multadd(b, p05[i-1], 0);
@@ -2315,7 +2315,7 @@ rv_alloc(int i)
}
static char *
-nrv_alloc(char *s, char **rve, int n)
+nrv_alloc(const char *s, char **rve, int n)
{
char *rv, *t;
diff --git a/Python/dynload_win.c b/Python/dynload_win.c
index f2c796e94d..05050cf41d 100644
--- a/Python/dynload_win.c
+++ b/Python/dynload_win.c
@@ -24,12 +24,10 @@ void _Py_DeactivateActCtx(ULONG_PTR cookie);
#define PYD_DEBUG_SUFFIX ""
#endif
-#define STRINGIZE2(x) #x
-#define STRINGIZE(x) STRINGIZE2(x)
#ifdef PYD_PLATFORM_TAG
-#define PYD_TAGGED_SUFFIX PYD_DEBUG_SUFFIX ".cp" STRINGIZE(PY_MAJOR_VERSION) STRINGIZE(PY_MINOR_VERSION) "-" PYD_PLATFORM_TAG ".pyd"
+#define PYD_TAGGED_SUFFIX PYD_DEBUG_SUFFIX ".cp" Py_STRINGIFY(PY_MAJOR_VERSION) Py_STRINGIFY(PY_MINOR_VERSION) "-" PYD_PLATFORM_TAG ".pyd"
#else
-#define PYD_TAGGED_SUFFIX PYD_DEBUG_SUFFIX ".cp" STRINGIZE(PY_MAJOR_VERSION) STRINGIZE(PY_MINOR_VERSION) ".pyd"
+#define PYD_TAGGED_SUFFIX PYD_DEBUG_SUFFIX ".cp" Py_STRINGIFY(PY_MAJOR_VERSION) Py_STRINGIFY(PY_MINOR_VERSION) ".pyd"
#endif
#define PYD_UNTAGGED_SUFFIX PYD_DEBUG_SUFFIX ".pyd"
@@ -43,7 +41,7 @@ const char *_PyImport_DynLoadFiletab[] = {
/* Case insensitive string compare, to avoid any dependencies on particular
C RTL implementations */
-static int strcasecmp (char *string1, char *string2)
+static int strcasecmp (const char *string1, const char *string2)
{
int first, second;
diff --git a/Python/formatter_unicode.c b/Python/formatter_unicode.c
index 056bb76902..a428fbec80 100644
--- a/Python/formatter_unicode.c
+++ b/Python/formatter_unicode.c
@@ -656,7 +656,7 @@ fill_number(_PyUnicodeWriter *writer, const NumberFieldWidths *spec,
return 0;
}
-static char no_grouping[1] = {CHAR_MAX};
+static const char no_grouping[1] = {CHAR_MAX};
/* Find the decimal point character(s?), thousands_separator(s?), and
grouping description, either for the current locale if type is
diff --git a/Python/frozenmain.c b/Python/frozenmain.c
index de8bd35453..769b33d0ee 100644
--- a/Python/frozenmain.c
+++ b/Python/frozenmain.c
@@ -99,7 +99,9 @@ Py_FrozenMain(int argc, char **argv)
#ifdef MS_WINDOWS
PyWinFreeze_ExeTerm();
#endif
- Py_Finalize();
+ if (Py_FinalizeEx() < 0) {
+ sts = 120;
+ }
error:
PyMem_RawFree(argv_copy);
diff --git a/Python/getargs.c b/Python/getargs.c
index c365fc25a3..7d45785b38 100644
--- a/Python/getargs.c
+++ b/Python/getargs.c
@@ -20,12 +20,12 @@ int PyArg_VaParseTupleAndKeywords(PyObject *, PyObject *,
#ifdef HAVE_DECLSPEC_DLL
/* Export functions */
-PyAPI_FUNC(int) _PyArg_Parse_SizeT(PyObject *, char *, ...);
-PyAPI_FUNC(int) _PyArg_ParseTuple_SizeT(PyObject *, char *, ...);
+PyAPI_FUNC(int) _PyArg_Parse_SizeT(PyObject *, const char *, ...);
+PyAPI_FUNC(int) _PyArg_ParseTuple_SizeT(PyObject *, const char *, ...);
PyAPI_FUNC(int) _PyArg_ParseTupleAndKeywords_SizeT(PyObject *, PyObject *,
const char *, char **, ...);
PyAPI_FUNC(PyObject *) _Py_BuildValue_SizeT(const char *, ...);
-PyAPI_FUNC(int) _PyArg_VaParse_SizeT(PyObject *, char *, va_list);
+PyAPI_FUNC(int) _PyArg_VaParse_SizeT(PyObject *, const char *, va_list);
PyAPI_FUNC(int) _PyArg_VaParseTupleAndKeywords_SizeT(PyObject *, PyObject *,
const char *, char **, va_list);
#endif
@@ -56,18 +56,18 @@ typedef struct {
/* Forward */
static int vgetargs1(PyObject *, const char *, va_list *, int);
static void seterror(Py_ssize_t, const char *, int *, const char *, const char *);
-static char *convertitem(PyObject *, const char **, va_list *, int, int *,
- char *, size_t, freelist_t *);
-static char *converttuple(PyObject *, const char **, va_list *, int,
- int *, char *, size_t, int, freelist_t *);
-static char *convertsimple(PyObject *, const char **, va_list *, int, char *,
- size_t, freelist_t *);
-static Py_ssize_t convertbuffer(PyObject *, void **p, char **);
-static int getbuffer(PyObject *, Py_buffer *, char**);
+static const char *convertitem(PyObject *, const char **, va_list *, int, int *,
+ char *, size_t, freelist_t *);
+static const char *converttuple(PyObject *, const char **, va_list *, int,
+ int *, char *, size_t, int, freelist_t *);
+static const char *convertsimple(PyObject *, const char **, va_list *, int,
+ char *, size_t, freelist_t *);
+static Py_ssize_t convertbuffer(PyObject *, void **p, const char **);
+static int getbuffer(PyObject *, Py_buffer *, const char**);
static int vgetargskeywords(PyObject *, PyObject *,
const char *, char **, va_list *, int);
-static char *skipitem(const char **, va_list *, int);
+static const char *skipitem(const char **, va_list *, int);
int
PyArg_Parse(PyObject *args, const char *format, ...)
@@ -82,7 +82,7 @@ PyArg_Parse(PyObject *args, const char *format, ...)
}
int
-_PyArg_Parse_SizeT(PyObject *args, char *format, ...)
+_PyArg_Parse_SizeT(PyObject *args, const char *format, ...)
{
int retval;
va_list va;
@@ -107,7 +107,7 @@ PyArg_ParseTuple(PyObject *args, const char *format, ...)
}
int
-_PyArg_ParseTuple_SizeT(PyObject *args, char *format, ...)
+_PyArg_ParseTuple_SizeT(PyObject *args, const char *format, ...)
{
int retval;
va_list va;
@@ -130,7 +130,7 @@ PyArg_VaParse(PyObject *args, const char *format, va_list va)
}
int
-_PyArg_VaParse_SizeT(PyObject *args, char *format, va_list va)
+_PyArg_VaParse_SizeT(PyObject *args, const char *format, va_list va)
{
va_list lva;
@@ -208,7 +208,7 @@ vgetargs1(PyObject *args, const char *format, va_list *p_va, int flags)
int endfmt = 0;
const char *formatsave = format;
Py_ssize_t i, len;
- char *msg;
+ const char *msg;
int compat = flags & FLAG_COMPAT;
freelistentry_t static_entries[STATIC_FREELIST_ENTRIES];
freelist_t freelist;
@@ -416,7 +416,7 @@ seterror(Py_ssize_t iarg, const char *msg, int *levels, const char *fname,
and msgbuf is returned.
*/
-static char *
+static const char *
converttuple(PyObject *arg, const char **p_format, va_list *p_va, int flags,
int *levels, char *msgbuf, size_t bufsize, int toplevel,
freelist_t *freelist)
@@ -474,7 +474,7 @@ converttuple(PyObject *arg, const char **p_format, va_list *p_va, int flags,
format = *p_format;
for (i = 0; i < n; i++) {
- char *msg;
+ const char *msg;
PyObject *item;
item = PySequence_GetItem(arg, i);
if (item == NULL) {
@@ -501,11 +501,11 @@ converttuple(PyObject *arg, const char **p_format, va_list *p_va, int flags,
/* Convert a single item. */
-static char *
+static const char *
convertitem(PyObject *arg, const char **p_format, va_list *p_va, int flags,
int *levels, char *msgbuf, size_t bufsize, freelist_t *freelist)
{
- char *msg;
+ const char *msg;
const char *format = *p_format;
if (*format == '(' /* ')' */) {
@@ -530,7 +530,7 @@ convertitem(PyObject *arg, const char **p_format, va_list *p_va, int flags,
/* Format an error message generated by convertsimple(). */
-static char *
+static const char *
converterr(const char *expected, PyObject *arg, char *msgbuf, size_t bufsize)
{
assert(expected != NULL);
@@ -566,7 +566,7 @@ float_argument_error(PyObject *arg)
When you add new format codes, please don't forget poor skipitem() below.
*/
-static char *
+static const char *
convertsimple(PyObject *arg, const char **p_format, va_list *p_va, int flags,
char *msgbuf, size_t bufsize, freelist_t *freelist)
{
@@ -851,7 +851,7 @@ convertsimple(PyObject *arg, const char **p_format, va_list *p_va, int flags,
case 'y': {/* any bytes-like object */
void **p = (void **)va_arg(*p_va, char **);
- char *buf;
+ const char *buf;
Py_ssize_t count;
if (*format == '*') {
if (getbuffer(arg, (Py_buffer*)p, &buf) < 0)
@@ -898,7 +898,7 @@ convertsimple(PyObject *arg, const char **p_format, va_list *p_va, int flags,
PyBuffer_FillInfo(p, arg, sarg, len, 1, 0);
}
else { /* any bytes-like object */
- char *buf;
+ const char *buf;
if (getbuffer(arg, p, &buf) < 0)
return converterr(buf, arg, msgbuf, bufsize);
}
@@ -928,7 +928,7 @@ convertsimple(PyObject *arg, const char **p_format, va_list *p_va, int flags,
}
else { /* read-only bytes-like object */
/* XXX Really? */
- char *buf;
+ const char *buf;
Py_ssize_t count = convertbuffer(arg, p, &buf);
if (count < 0)
return converterr(buf, arg, msgbuf, bufsize);
@@ -1275,7 +1275,7 @@ convertsimple(PyObject *arg, const char **p_format, va_list *p_va, int flags,
}
static Py_ssize_t
-convertbuffer(PyObject *arg, void **p, char **errmsg)
+convertbuffer(PyObject *arg, void **p, const char **errmsg)
{
PyBufferProcs *pb = Py_TYPE(arg)->tp_as_buffer;
Py_ssize_t count;
@@ -1297,7 +1297,7 @@ convertbuffer(PyObject *arg, void **p, char **errmsg)
}
static int
-getbuffer(PyObject *arg, Py_buffer *view, char **errmsg)
+getbuffer(PyObject *arg, Py_buffer *view, const char **errmsg)
{
if (PyObject_GetBuffer(arg, view, PyBUF_SIMPLE) != 0) {
*errmsg = "bytes-like object";
@@ -1629,7 +1629,7 @@ vgetargskeywords(PyObject *args, PyObject *keywords, const char *format,
}
-static char *
+static const char *
skipitem(const char **p_format, va_list *p_va, int flags)
{
const char *format = *p_format;
@@ -1722,7 +1722,7 @@ skipitem(const char **p_format, va_list *p_va, int flags)
case '(': /* bypass tuple, not handled at all previously */
{
- char *msg;
+ const char *msg;
for (;;) {
if (*format==')')
break;
diff --git a/Python/graminit.c b/Python/graminit.c
index 8212b2a584..354dc121b0 100644
--- a/Python/graminit.c
+++ b/Python/graminit.c
@@ -204,11 +204,13 @@ static arc arcs_9_6[2] = {
{32, 7},
{0, 6},
};
-static arc arcs_9_7[2] = {
+static arc arcs_9_7[3] = {
{30, 12},
{34, 3},
+ {0, 7},
};
-static arc arcs_9_8[1] = {
+static arc arcs_9_8[2] = {
+ {32, 13},
{0, 8},
};
static arc arcs_9_9[2] = {
@@ -221,35 +223,39 @@ static arc arcs_9_10[3] = {
{0, 10},
};
static arc arcs_9_11[3] = {
- {30, 13},
- {32, 14},
+ {30, 14},
+ {32, 15},
{0, 11},
};
static arc arcs_9_12[3] = {
{32, 7},
- {31, 15},
+ {31, 16},
{0, 12},
};
-static arc arcs_9_13[2] = {
- {32, 14},
+static arc arcs_9_13[1] = {
{0, 13},
};
static arc arcs_9_14[2] = {
- {30, 16},
+ {32, 15},
+ {0, 14},
+};
+static arc arcs_9_15[3] = {
+ {30, 17},
{34, 3},
+ {0, 15},
};
-static arc arcs_9_15[1] = {
+static arc arcs_9_16[1] = {
{26, 6},
};
-static arc arcs_9_16[3] = {
- {32, 14},
- {31, 17},
- {0, 16},
+static arc arcs_9_17[3] = {
+ {32, 15},
+ {31, 18},
+ {0, 17},
};
-static arc arcs_9_17[1] = {
- {26, 13},
+static arc arcs_9_18[1] = {
+ {26, 14},
};
-static state states_9[18] = {
+static state states_9[19] = {
{3, arcs_9_0},
{3, arcs_9_1},
{3, arcs_9_2},
@@ -257,17 +263,18 @@ static state states_9[18] = {
{1, arcs_9_4},
{4, arcs_9_5},
{2, arcs_9_6},
- {2, arcs_9_7},
- {1, arcs_9_8},
+ {3, arcs_9_7},
+ {2, arcs_9_8},
{2, arcs_9_9},
{3, arcs_9_10},
{3, arcs_9_11},
{3, arcs_9_12},
- {2, arcs_9_13},
+ {1, arcs_9_13},
{2, arcs_9_14},
- {1, arcs_9_15},
- {3, arcs_9_16},
- {1, arcs_9_17},
+ {3, arcs_9_15},
+ {1, arcs_9_16},
+ {3, arcs_9_17},
+ {1, arcs_9_18},
};
static arc arcs_10_0[1] = {
{23, 1},
@@ -319,11 +326,13 @@ static arc arcs_11_6[2] = {
{32, 7},
{0, 6},
};
-static arc arcs_11_7[2] = {
+static arc arcs_11_7[3] = {
{36, 12},
{34, 3},
+ {0, 7},
};
-static arc arcs_11_8[1] = {
+static arc arcs_11_8[2] = {
+ {32, 13},
{0, 8},
};
static arc arcs_11_9[2] = {
@@ -336,35 +345,39 @@ static arc arcs_11_10[3] = {
{0, 10},
};
static arc arcs_11_11[3] = {
- {36, 13},
- {32, 14},
+ {36, 14},
+ {32, 15},
{0, 11},
};
static arc arcs_11_12[3] = {
{32, 7},
- {31, 15},
+ {31, 16},
{0, 12},
};
-static arc arcs_11_13[2] = {
- {32, 14},
+static arc arcs_11_13[1] = {
{0, 13},
};
static arc arcs_11_14[2] = {
- {36, 16},
+ {32, 15},
+ {0, 14},
+};
+static arc arcs_11_15[3] = {
+ {36, 17},
{34, 3},
+ {0, 15},
};
-static arc arcs_11_15[1] = {
+static arc arcs_11_16[1] = {
{26, 6},
};
-static arc arcs_11_16[3] = {
- {32, 14},
- {31, 17},
- {0, 16},
+static arc arcs_11_17[3] = {
+ {32, 15},
+ {31, 18},
+ {0, 17},
};
-static arc arcs_11_17[1] = {
- {26, 13},
+static arc arcs_11_18[1] = {
+ {26, 14},
};
-static state states_11[18] = {
+static state states_11[19] = {
{3, arcs_11_0},
{3, arcs_11_1},
{3, arcs_11_2},
@@ -372,17 +385,18 @@ static state states_11[18] = {
{1, arcs_11_4},
{4, arcs_11_5},
{2, arcs_11_6},
- {2, arcs_11_7},
- {1, arcs_11_8},
+ {3, arcs_11_7},
+ {2, arcs_11_8},
{2, arcs_11_9},
{3, arcs_11_10},
{3, arcs_11_11},
{3, arcs_11_12},
- {2, arcs_11_13},
+ {1, arcs_11_13},
{2, arcs_11_14},
- {1, arcs_11_15},
- {3, arcs_11_16},
- {1, arcs_11_17},
+ {3, arcs_11_15},
+ {1, arcs_11_16},
+ {3, arcs_11_17},
+ {1, arcs_11_18},
};
static arc arcs_12_0[1] = {
{23, 1},
@@ -1879,11 +1893,11 @@ static dfa dfas[85] = {
"\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,
+ {265, "typedargslist", 0, 19, 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,
+ {267, "varargslist", 0, 19, 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"},
diff --git a/Python/import.c b/Python/import.c
index edf030d87a..8d7bfe906f 100644
--- a/Python/import.c
+++ b/Python/import.c
@@ -320,7 +320,7 @@ PyImport_GetModuleDict(void)
/* List of names to clear in sys */
-static char* sys_deletes[] = {
+static const char * const sys_deletes[] = {
"path", "argv", "ps1", "ps2",
"last_type", "last_value", "last_traceback",
"path_hooks", "path_importer_cache", "meta_path",
@@ -330,7 +330,7 @@ static char* sys_deletes[] = {
NULL
};
-static char* sys_files[] = {
+static const char * const sys_files[] = {
"stdin", "__stdin__",
"stdout", "__stdout__",
"stderr", "__stderr__",
@@ -347,7 +347,7 @@ PyImport_Cleanup(void)
PyInterpreterState *interp = PyThreadState_GET()->interp;
PyObject *modules = interp->modules;
PyObject *weaklist = NULL;
- char **p;
+ const char * const *p;
if (modules == NULL)
return; /* Already done */
diff --git a/Python/importdl.c b/Python/importdl.c
index 1aa585d5e8..ac03289c4d 100644
--- a/Python/importdl.c
+++ b/Python/importdl.c
@@ -23,8 +23,8 @@ extern dl_funcptr _PyImport_FindSharedFuncptr(const char *prefix,
const char *pathname, FILE *fp);
#endif
-static const char *ascii_only_prefix = "PyInit";
-static const char *nonascii_prefix = "PyInitU";
+static const char * const ascii_only_prefix = "PyInit";
+static const char * const nonascii_prefix = "PyInitU";
/* Get the variable part of a module's export symbol name.
* Returns a bytes instance. For non-ASCII-named modules, the name is
diff --git a/Python/importlib_external.h b/Python/importlib_external.h
index b20ce1756d..dd322a903a 100644
--- a/Python/importlib_external.h
+++ b/Python/importlib_external.h
@@ -1,8 +1,8 @@
/* Auto-generated by Programs/_freeze_importlib.c */
const unsigned char _Py_M__importlib_external[] = {
99,0,0,0,0,0,0,0,0,0,0,0,0,7,0,0,
- 0,64,0,0,0,115,228,2,0,0,100,0,0,90,0,0,
- 100,96,0,90,1,0,100,4,0,100,5,0,132,0,0,90,
+ 0,64,0,0,0,115,210,2,0,0,100,0,0,90,0,0,
+ 100,92,0,90,1,0,100,4,0,100,5,0,132,0,0,90,
2,0,100,6,0,100,7,0,132,0,0,90,3,0,100,8,
0,100,9,0,132,0,0,90,4,0,100,10,0,100,11,0,
132,0,0,90,5,0,100,12,0,100,13,0,132,0,0,90,
@@ -20,563 +20,541 @@ const unsigned char _Py_M__importlib_external[] = {
1,1,90,26,0,100,37,0,100,38,0,132,0,0,90,27,
0,100,39,0,100,40,0,132,0,0,90,28,0,100,41,0,
100,42,0,132,0,0,90,29,0,100,43,0,100,44,0,132,
- 0,0,90,30,0,100,45,0,100,46,0,100,47,0,100,48,
- 0,132,0,1,90,31,0,100,49,0,100,50,0,132,0,0,
- 90,32,0,100,51,0,100,52,0,132,0,0,90,33,0,100,
- 33,0,100,33,0,100,33,0,100,53,0,100,54,0,132,3,
- 0,90,34,0,100,33,0,100,33,0,100,33,0,100,55,0,
- 100,56,0,132,3,0,90,35,0,100,57,0,100,57,0,100,
- 58,0,100,59,0,132,2,0,90,36,0,100,60,0,100,61,
- 0,132,0,0,90,37,0,101,38,0,131,0,0,90,39,0,
- 100,33,0,100,62,0,100,33,0,100,63,0,101,39,0,100,
- 64,0,100,65,0,132,1,2,90,40,0,71,100,66,0,100,
- 67,0,132,0,0,100,67,0,131,2,0,90,41,0,71,100,
- 68,0,100,69,0,132,0,0,100,69,0,131,2,0,90,42,
- 0,71,100,70,0,100,71,0,132,0,0,100,71,0,101,42,
- 0,131,3,0,90,43,0,71,100,72,0,100,73,0,132,0,
- 0,100,73,0,131,2,0,90,44,0,71,100,74,0,100,75,
- 0,132,0,0,100,75,0,101,44,0,101,43,0,131,4,0,
- 90,45,0,71,100,76,0,100,77,0,132,0,0,100,77,0,
- 101,44,0,101,42,0,131,4,0,90,46,0,103,0,0,90,
- 47,0,71,100,78,0,100,79,0,132,0,0,100,79,0,101,
- 44,0,101,42,0,131,4,0,90,48,0,71,100,80,0,100,
- 81,0,132,0,0,100,81,0,131,2,0,90,49,0,71,100,
- 82,0,100,83,0,132,0,0,100,83,0,131,2,0,90,50,
- 0,71,100,84,0,100,85,0,132,0,0,100,85,0,131,2,
- 0,90,51,0,71,100,86,0,100,87,0,132,0,0,100,87,
- 0,131,2,0,90,52,0,100,33,0,100,88,0,100,89,0,
- 132,1,0,90,53,0,100,90,0,100,91,0,132,0,0,90,
- 54,0,100,92,0,100,93,0,132,0,0,90,55,0,100,94,
- 0,100,95,0,132,0,0,90,56,0,100,33,0,83,41,97,
- 97,94,1,0,0,67,111,114,101,32,105,109,112,108,101,109,
- 101,110,116,97,116,105,111,110,32,111,102,32,112,97,116,104,
- 45,98,97,115,101,100,32,105,109,112,111,114,116,46,10,10,
- 84,104,105,115,32,109,111,100,117,108,101,32,105,115,32,78,
- 79,84,32,109,101,97,110,116,32,116,111,32,98,101,32,100,
- 105,114,101,99,116,108,121,32,105,109,112,111,114,116,101,100,
- 33,32,73,116,32,104,97,115,32,98,101,101,110,32,100,101,
- 115,105,103,110,101,100,32,115,117,99,104,10,116,104,97,116,
- 32,105,116,32,99,97,110,32,98,101,32,98,111,111,116,115,
- 116,114,97,112,112,101,100,32,105,110,116,111,32,80,121,116,
- 104,111,110,32,97,115,32,116,104,101,32,105,109,112,108,101,
- 109,101,110,116,97,116,105,111,110,32,111,102,32,105,109,112,
- 111,114,116,46,32,65,115,10,115,117,99,104,32,105,116,32,
- 114,101,113,117,105,114,101,115,32,116,104,101,32,105,110,106,
- 101,99,116,105,111,110,32,111,102,32,115,112,101,99,105,102,
- 105,99,32,109,111,100,117,108,101,115,32,97,110,100,32,97,
- 116,116,114,105,98,117,116,101,115,32,105,110,32,111,114,100,
- 101,114,32,116,111,10,119,111,114,107,46,32,79,110,101,32,
- 115,104,111,117,108,100,32,117,115,101,32,105,109,112,111,114,
- 116,108,105,98,32,97,115,32,116,104,101,32,112,117,98,108,
- 105,99,45,102,97,99,105,110,103,32,118,101,114,115,105,111,
- 110,32,111,102,32,116,104,105,115,32,109,111,100,117,108,101,
- 46,10,10,218,3,119,105,110,218,6,99,121,103,119,105,110,
- 218,6,100,97,114,119,105,110,99,0,0,0,0,0,0,0,
- 0,1,0,0,0,2,0,0,0,67,0,0,0,115,49,0,
- 0,0,116,0,0,106,1,0,106,2,0,116,3,0,131,1,
- 0,114,33,0,100,1,0,100,2,0,132,0,0,125,0,0,
- 110,12,0,100,3,0,100,2,0,132,0,0,125,0,0,124,
- 0,0,83,41,4,78,99,0,0,0,0,0,0,0,0,0,
- 0,0,0,2,0,0,0,83,0,0,0,115,13,0,0,0,
- 100,1,0,116,0,0,106,1,0,107,6,0,83,41,2,122,
- 53,84,114,117,101,32,105,102,32,102,105,108,101,110,97,109,
- 101,115,32,109,117,115,116,32,98,101,32,99,104,101,99,107,
- 101,100,32,99,97,115,101,45,105,110,115,101,110,115,105,116,
- 105,118,101,108,121,46,115,12,0,0,0,80,89,84,72,79,
- 78,67,65,83,69,79,75,41,2,218,3,95,111,115,90,7,
- 101,110,118,105,114,111,110,169,0,114,4,0,0,0,114,4,
- 0,0,0,250,38,60,102,114,111,122,101,110,32,105,109,112,
- 111,114,116,108,105,98,46,95,98,111,111,116,115,116,114,97,
- 112,95,101,120,116,101,114,110,97,108,62,218,11,95,114,101,
- 108,97,120,95,99,97,115,101,30,0,0,0,115,2,0,0,
- 0,0,2,122,37,95,109,97,107,101,95,114,101,108,97,120,
- 95,99,97,115,101,46,60,108,111,99,97,108,115,62,46,95,
- 114,101,108,97,120,95,99,97,115,101,99,0,0,0,0,0,
- 0,0,0,0,0,0,0,1,0,0,0,83,0,0,0,115,
- 4,0,0,0,100,1,0,83,41,2,122,53,84,114,117,101,
- 32,105,102,32,102,105,108,101,110,97,109,101,115,32,109,117,
- 115,116,32,98,101,32,99,104,101,99,107,101,100,32,99,97,
- 115,101,45,105,110,115,101,110,115,105,116,105,118,101,108,121,
- 46,70,114,4,0,0,0,114,4,0,0,0,114,4,0,0,
- 0,114,4,0,0,0,114,5,0,0,0,114,6,0,0,0,
- 34,0,0,0,115,2,0,0,0,0,2,41,4,218,3,115,
- 121,115,218,8,112,108,97,116,102,111,114,109,218,10,115,116,
- 97,114,116,115,119,105,116,104,218,27,95,67,65,83,69,95,
- 73,78,83,69,78,83,73,84,73,86,69,95,80,76,65,84,
- 70,79,82,77,83,41,1,114,6,0,0,0,114,4,0,0,
- 0,114,4,0,0,0,114,5,0,0,0,218,16,95,109,97,
- 107,101,95,114,101,108,97,120,95,99,97,115,101,28,0,0,
- 0,115,8,0,0,0,0,1,18,1,15,4,12,3,114,11,
+ 0,0,90,30,0,100,45,0,100,46,0,132,0,0,90,31,
+ 0,100,47,0,100,48,0,132,0,0,90,32,0,100,33,0,
+ 100,33,0,100,33,0,100,49,0,100,50,0,132,3,0,90,
+ 33,0,100,33,0,100,33,0,100,33,0,100,51,0,100,52,
+ 0,132,3,0,90,34,0,100,53,0,100,53,0,100,54,0,
+ 100,55,0,132,2,0,90,35,0,100,56,0,100,57,0,132,
+ 0,0,90,36,0,101,37,0,131,0,0,90,38,0,100,33,
+ 0,100,58,0,100,33,0,100,59,0,101,38,0,100,60,0,
+ 100,61,0,132,1,2,90,39,0,71,100,62,0,100,63,0,
+ 132,0,0,100,63,0,131,2,0,90,40,0,71,100,64,0,
+ 100,65,0,132,0,0,100,65,0,131,2,0,90,41,0,71,
+ 100,66,0,100,67,0,132,0,0,100,67,0,101,41,0,131,
+ 3,0,90,42,0,71,100,68,0,100,69,0,132,0,0,100,
+ 69,0,131,2,0,90,43,0,71,100,70,0,100,71,0,132,
+ 0,0,100,71,0,101,43,0,101,42,0,131,4,0,90,44,
+ 0,71,100,72,0,100,73,0,132,0,0,100,73,0,101,43,
+ 0,101,41,0,131,4,0,90,45,0,103,0,0,90,46,0,
+ 71,100,74,0,100,75,0,132,0,0,100,75,0,101,43,0,
+ 101,41,0,131,4,0,90,47,0,71,100,76,0,100,77,0,
+ 132,0,0,100,77,0,131,2,0,90,48,0,71,100,78,0,
+ 100,79,0,132,0,0,100,79,0,131,2,0,90,49,0,71,
+ 100,80,0,100,81,0,132,0,0,100,81,0,131,2,0,90,
+ 50,0,71,100,82,0,100,83,0,132,0,0,100,83,0,131,
+ 2,0,90,51,0,100,33,0,100,84,0,100,85,0,132,1,
+ 0,90,52,0,100,86,0,100,87,0,132,0,0,90,53,0,
+ 100,88,0,100,89,0,132,0,0,90,54,0,100,90,0,100,
+ 91,0,132,0,0,90,55,0,100,33,0,83,41,93,97,94,
+ 1,0,0,67,111,114,101,32,105,109,112,108,101,109,101,110,
+ 116,97,116,105,111,110,32,111,102,32,112,97,116,104,45,98,
+ 97,115,101,100,32,105,109,112,111,114,116,46,10,10,84,104,
+ 105,115,32,109,111,100,117,108,101,32,105,115,32,78,79,84,
+ 32,109,101,97,110,116,32,116,111,32,98,101,32,100,105,114,
+ 101,99,116,108,121,32,105,109,112,111,114,116,101,100,33,32,
+ 73,116,32,104,97,115,32,98,101,101,110,32,100,101,115,105,
+ 103,110,101,100,32,115,117,99,104,10,116,104,97,116,32,105,
+ 116,32,99,97,110,32,98,101,32,98,111,111,116,115,116,114,
+ 97,112,112,101,100,32,105,110,116,111,32,80,121,116,104,111,
+ 110,32,97,115,32,116,104,101,32,105,109,112,108,101,109,101,
+ 110,116,97,116,105,111,110,32,111,102,32,105,109,112,111,114,
+ 116,46,32,65,115,10,115,117,99,104,32,105,116,32,114,101,
+ 113,117,105,114,101,115,32,116,104,101,32,105,110,106,101,99,
+ 116,105,111,110,32,111,102,32,115,112,101,99,105,102,105,99,
+ 32,109,111,100,117,108,101,115,32,97,110,100,32,97,116,116,
+ 114,105,98,117,116,101,115,32,105,110,32,111,114,100,101,114,
+ 32,116,111,10,119,111,114,107,46,32,79,110,101,32,115,104,
+ 111,117,108,100,32,117,115,101,32,105,109,112,111,114,116,108,
+ 105,98,32,97,115,32,116,104,101,32,112,117,98,108,105,99,
+ 45,102,97,99,105,110,103,32,118,101,114,115,105,111,110,32,
+ 111,102,32,116,104,105,115,32,109,111,100,117,108,101,46,10,
+ 10,218,3,119,105,110,218,6,99,121,103,119,105,110,218,6,
+ 100,97,114,119,105,110,99,0,0,0,0,0,0,0,0,1,
+ 0,0,0,2,0,0,0,67,0,0,0,115,49,0,0,0,
+ 116,0,0,106,1,0,106,2,0,116,3,0,131,1,0,114,
+ 33,0,100,1,0,100,2,0,132,0,0,125,0,0,110,12,
+ 0,100,3,0,100,2,0,132,0,0,125,0,0,124,0,0,
+ 83,41,4,78,99,0,0,0,0,0,0,0,0,0,0,0,
+ 0,2,0,0,0,83,0,0,0,115,13,0,0,0,100,1,
+ 0,116,0,0,106,1,0,107,6,0,83,41,2,122,53,84,
+ 114,117,101,32,105,102,32,102,105,108,101,110,97,109,101,115,
+ 32,109,117,115,116,32,98,101,32,99,104,101,99,107,101,100,
+ 32,99,97,115,101,45,105,110,115,101,110,115,105,116,105,118,
+ 101,108,121,46,115,12,0,0,0,80,89,84,72,79,78,67,
+ 65,83,69,79,75,41,2,218,3,95,111,115,90,7,101,110,
+ 118,105,114,111,110,169,0,114,4,0,0,0,114,4,0,0,
+ 0,250,38,60,102,114,111,122,101,110,32,105,109,112,111,114,
+ 116,108,105,98,46,95,98,111,111,116,115,116,114,97,112,95,
+ 101,120,116,101,114,110,97,108,62,218,11,95,114,101,108,97,
+ 120,95,99,97,115,101,30,0,0,0,115,2,0,0,0,0,
+ 2,122,37,95,109,97,107,101,95,114,101,108,97,120,95,99,
+ 97,115,101,46,60,108,111,99,97,108,115,62,46,95,114,101,
+ 108,97,120,95,99,97,115,101,99,0,0,0,0,0,0,0,
+ 0,0,0,0,0,1,0,0,0,83,0,0,0,115,4,0,
+ 0,0,100,1,0,83,41,2,122,53,84,114,117,101,32,105,
+ 102,32,102,105,108,101,110,97,109,101,115,32,109,117,115,116,
+ 32,98,101,32,99,104,101,99,107,101,100,32,99,97,115,101,
+ 45,105,110,115,101,110,115,105,116,105,118,101,108,121,46,70,
+ 114,4,0,0,0,114,4,0,0,0,114,4,0,0,0,114,
+ 4,0,0,0,114,5,0,0,0,114,6,0,0,0,34,0,
+ 0,0,115,2,0,0,0,0,2,41,4,218,3,115,121,115,
+ 218,8,112,108,97,116,102,111,114,109,218,10,115,116,97,114,
+ 116,115,119,105,116,104,218,27,95,67,65,83,69,95,73,78,
+ 83,69,78,83,73,84,73,86,69,95,80,76,65,84,70,79,
+ 82,77,83,41,1,114,6,0,0,0,114,4,0,0,0,114,
+ 4,0,0,0,114,5,0,0,0,218,16,95,109,97,107,101,
+ 95,114,101,108,97,120,95,99,97,115,101,28,0,0,0,115,
+ 8,0,0,0,0,1,18,1,15,4,12,3,114,11,0,0,
+ 0,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,131,1,0,100,1,0,64,106,1,0,100,2,0,100,3,
+ 0,131,2,0,83,41,4,122,42,67,111,110,118,101,114,116,
+ 32,97,32,51,50,45,98,105,116,32,105,110,116,101,103,101,
+ 114,32,116,111,32,108,105,116,116,108,101,45,101,110,100,105,
+ 97,110,46,108,3,0,0,0,255,127,255,127,3,0,233,4,
+ 0,0,0,218,6,108,105,116,116,108,101,41,2,218,3,105,
+ 110,116,218,8,116,111,95,98,121,116,101,115,41,1,218,1,
+ 120,114,4,0,0,0,114,4,0,0,0,114,5,0,0,0,
+ 218,7,95,119,95,108,111,110,103,40,0,0,0,115,2,0,
+ 0,0,0,2,114,17,0,0,0,99,1,0,0,0,0,0,
+ 0,0,1,0,0,0,3,0,0,0,67,0,0,0,115,16,
+ 0,0,0,116,0,0,106,1,0,124,0,0,100,1,0,131,
+ 2,0,83,41,2,122,47,67,111,110,118,101,114,116,32,52,
+ 32,98,121,116,101,115,32,105,110,32,108,105,116,116,108,101,
+ 45,101,110,100,105,97,110,32,116,111,32,97,110,32,105,110,
+ 116,101,103,101,114,46,114,13,0,0,0,41,2,114,14,0,
+ 0,0,218,10,102,114,111,109,95,98,121,116,101,115,41,1,
+ 90,9,105,110,116,95,98,121,116,101,115,114,4,0,0,0,
+ 114,4,0,0,0,114,5,0,0,0,218,7,95,114,95,108,
+ 111,110,103,45,0,0,0,115,2,0,0,0,0,2,114,19,
+ 0,0,0,99,0,0,0,0,0,0,0,0,1,0,0,0,
+ 3,0,0,0,71,0,0,0,115,26,0,0,0,116,0,0,
+ 106,1,0,100,1,0,100,2,0,132,0,0,124,0,0,68,
+ 131,1,0,131,1,0,83,41,3,122,31,82,101,112,108,97,
+ 99,101,109,101,110,116,32,102,111,114,32,111,115,46,112,97,
+ 116,104,46,106,111,105,110,40,41,46,99,1,0,0,0,0,
+ 0,0,0,2,0,0,0,4,0,0,0,83,0,0,0,115,
+ 37,0,0,0,103,0,0,124,0,0,93,27,0,125,1,0,
+ 124,1,0,114,6,0,124,1,0,106,0,0,116,1,0,131,
+ 1,0,145,2,0,113,6,0,83,114,4,0,0,0,41,2,
+ 218,6,114,115,116,114,105,112,218,15,112,97,116,104,95,115,
+ 101,112,97,114,97,116,111,114,115,41,2,218,2,46,48,218,
+ 4,112,97,114,116,114,4,0,0,0,114,4,0,0,0,114,
+ 5,0,0,0,250,10,60,108,105,115,116,99,111,109,112,62,
+ 52,0,0,0,115,2,0,0,0,9,1,122,30,95,112,97,
+ 116,104,95,106,111,105,110,46,60,108,111,99,97,108,115,62,
+ 46,60,108,105,115,116,99,111,109,112,62,41,2,218,8,112,
+ 97,116,104,95,115,101,112,218,4,106,111,105,110,41,1,218,
+ 10,112,97,116,104,95,112,97,114,116,115,114,4,0,0,0,
+ 114,4,0,0,0,114,5,0,0,0,218,10,95,112,97,116,
+ 104,95,106,111,105,110,50,0,0,0,115,4,0,0,0,0,
+ 2,15,1,114,28,0,0,0,99,1,0,0,0,0,0,0,
+ 0,5,0,0,0,5,0,0,0,67,0,0,0,115,134,0,
+ 0,0,116,0,0,116,1,0,131,1,0,100,1,0,107,2,
+ 0,114,52,0,124,0,0,106,2,0,116,3,0,131,1,0,
+ 92,3,0,125,1,0,125,2,0,125,3,0,124,1,0,124,
+ 3,0,102,2,0,83,120,69,0,116,4,0,124,0,0,131,
+ 1,0,68,93,55,0,125,4,0,124,4,0,116,1,0,107,
+ 6,0,114,65,0,124,0,0,106,5,0,124,4,0,100,2,
+ 0,100,1,0,131,1,1,92,2,0,125,1,0,125,3,0,
+ 124,1,0,124,3,0,102,2,0,83,113,65,0,87,100,3,
+ 0,124,0,0,102,2,0,83,41,4,122,32,82,101,112,108,
+ 97,99,101,109,101,110,116,32,102,111,114,32,111,115,46,112,
+ 97,116,104,46,115,112,108,105,116,40,41,46,233,1,0,0,
+ 0,90,8,109,97,120,115,112,108,105,116,218,0,41,6,218,
+ 3,108,101,110,114,21,0,0,0,218,10,114,112,97,114,116,
+ 105,116,105,111,110,114,25,0,0,0,218,8,114,101,118,101,
+ 114,115,101,100,218,6,114,115,112,108,105,116,41,5,218,4,
+ 112,97,116,104,90,5,102,114,111,110,116,218,1,95,218,4,
+ 116,97,105,108,114,16,0,0,0,114,4,0,0,0,114,4,
+ 0,0,0,114,5,0,0,0,218,11,95,112,97,116,104,95,
+ 115,112,108,105,116,56,0,0,0,115,16,0,0,0,0,2,
+ 18,1,24,1,10,1,19,1,12,1,27,1,14,1,114,38,
0,0,0,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,131,1,0,100,1,0,64,106,1,0,100,2,0,
- 100,3,0,131,2,0,83,41,4,122,42,67,111,110,118,101,
- 114,116,32,97,32,51,50,45,98,105,116,32,105,110,116,101,
- 103,101,114,32,116,111,32,108,105,116,116,108,101,45,101,110,
- 100,105,97,110,46,108,3,0,0,0,255,127,255,127,3,0,
- 233,4,0,0,0,218,6,108,105,116,116,108,101,41,2,218,
- 3,105,110,116,218,8,116,111,95,98,121,116,101,115,41,1,
- 218,1,120,114,4,0,0,0,114,4,0,0,0,114,5,0,
- 0,0,218,7,95,119,95,108,111,110,103,40,0,0,0,115,
- 2,0,0,0,0,2,114,17,0,0,0,99,1,0,0,0,
- 0,0,0,0,1,0,0,0,3,0,0,0,67,0,0,0,
- 115,16,0,0,0,116,0,0,106,1,0,124,0,0,100,1,
- 0,131,2,0,83,41,2,122,47,67,111,110,118,101,114,116,
- 32,52,32,98,121,116,101,115,32,105,110,32,108,105,116,116,
- 108,101,45,101,110,100,105,97,110,32,116,111,32,97,110,32,
- 105,110,116,101,103,101,114,46,114,13,0,0,0,41,2,114,
- 14,0,0,0,218,10,102,114,111,109,95,98,121,116,101,115,
- 41,1,90,9,105,110,116,95,98,121,116,101,115,114,4,0,
- 0,0,114,4,0,0,0,114,5,0,0,0,218,7,95,114,
- 95,108,111,110,103,45,0,0,0,115,2,0,0,0,0,2,
- 114,19,0,0,0,99,0,0,0,0,0,0,0,0,1,0,
- 0,0,3,0,0,0,71,0,0,0,115,26,0,0,0,116,
- 0,0,106,1,0,100,1,0,100,2,0,132,0,0,124,0,
- 0,68,131,1,0,131,1,0,83,41,3,122,31,82,101,112,
+ 2,0,0,0,67,0,0,0,115,13,0,0,0,116,0,0,
+ 106,1,0,124,0,0,131,1,0,83,41,1,122,126,83,116,
+ 97,116,32,116,104,101,32,112,97,116,104,46,10,10,32,32,
+ 32,32,77,97,100,101,32,97,32,115,101,112,97,114,97,116,
+ 101,32,102,117,110,99,116,105,111,110,32,116,111,32,109,97,
+ 107,101,32,105,116,32,101,97,115,105,101,114,32,116,111,32,
+ 111,118,101,114,114,105,100,101,32,105,110,32,101,120,112,101,
+ 114,105,109,101,110,116,115,10,32,32,32,32,40,101,46,103,
+ 46,32,99,97,99,104,101,32,115,116,97,116,32,114,101,115,
+ 117,108,116,115,41,46,10,10,32,32,32,32,41,2,114,3,
+ 0,0,0,90,4,115,116,97,116,41,1,114,35,0,0,0,
+ 114,4,0,0,0,114,4,0,0,0,114,5,0,0,0,218,
+ 10,95,112,97,116,104,95,115,116,97,116,68,0,0,0,115,
+ 2,0,0,0,0,7,114,39,0,0,0,99,2,0,0,0,
+ 0,0,0,0,3,0,0,0,11,0,0,0,67,0,0,0,
+ 115,58,0,0,0,121,16,0,116,0,0,124,0,0,131,1,
+ 0,125,2,0,87,110,22,0,4,116,1,0,107,10,0,114,
+ 40,0,1,1,1,100,1,0,83,89,110,1,0,88,124,2,
+ 0,106,2,0,100,2,0,64,124,1,0,107,2,0,83,41,
+ 3,122,49,84,101,115,116,32,119,104,101,116,104,101,114,32,
+ 116,104,101,32,112,97,116,104,32,105,115,32,116,104,101,32,
+ 115,112,101,99,105,102,105,101,100,32,109,111,100,101,32,116,
+ 121,112,101,46,70,105,0,240,0,0,41,3,114,39,0,0,
+ 0,218,7,79,83,69,114,114,111,114,218,7,115,116,95,109,
+ 111,100,101,41,3,114,35,0,0,0,218,4,109,111,100,101,
+ 90,9,115,116,97,116,95,105,110,102,111,114,4,0,0,0,
+ 114,4,0,0,0,114,5,0,0,0,218,18,95,112,97,116,
+ 104,95,105,115,95,109,111,100,101,95,116,121,112,101,78,0,
+ 0,0,115,10,0,0,0,0,2,3,1,16,1,13,1,9,
+ 1,114,43,0,0,0,99,1,0,0,0,0,0,0,0,1,
+ 0,0,0,3,0,0,0,67,0,0,0,115,13,0,0,0,
+ 116,0,0,124,0,0,100,1,0,131,2,0,83,41,2,122,
+ 31,82,101,112,108,97,99,101,109,101,110,116,32,102,111,114,
+ 32,111,115,46,112,97,116,104,46,105,115,102,105,108,101,46,
+ 105,0,128,0,0,41,1,114,43,0,0,0,41,1,114,35,
+ 0,0,0,114,4,0,0,0,114,4,0,0,0,114,5,0,
+ 0,0,218,12,95,112,97,116,104,95,105,115,102,105,108,101,
+ 87,0,0,0,115,2,0,0,0,0,2,114,44,0,0,0,
+ 99,1,0,0,0,0,0,0,0,1,0,0,0,3,0,0,
+ 0,67,0,0,0,115,31,0,0,0,124,0,0,115,18,0,
+ 116,0,0,106,1,0,131,0,0,125,0,0,116,2,0,124,
+ 0,0,100,1,0,131,2,0,83,41,2,122,30,82,101,112,
108,97,99,101,109,101,110,116,32,102,111,114,32,111,115,46,
- 112,97,116,104,46,106,111,105,110,40,41,46,99,1,0,0,
- 0,0,0,0,0,2,0,0,0,4,0,0,0,83,0,0,
- 0,115,37,0,0,0,103,0,0,124,0,0,93,27,0,125,
- 1,0,124,1,0,114,6,0,124,1,0,106,0,0,116,1,
- 0,131,1,0,145,2,0,113,6,0,83,114,4,0,0,0,
- 41,2,218,6,114,115,116,114,105,112,218,15,112,97,116,104,
- 95,115,101,112,97,114,97,116,111,114,115,41,2,218,2,46,
- 48,218,4,112,97,114,116,114,4,0,0,0,114,4,0,0,
- 0,114,5,0,0,0,250,10,60,108,105,115,116,99,111,109,
- 112,62,52,0,0,0,115,2,0,0,0,9,1,122,30,95,
- 112,97,116,104,95,106,111,105,110,46,60,108,111,99,97,108,
- 115,62,46,60,108,105,115,116,99,111,109,112,62,41,2,218,
- 8,112,97,116,104,95,115,101,112,218,4,106,111,105,110,41,
- 1,218,10,112,97,116,104,95,112,97,114,116,115,114,4,0,
- 0,0,114,4,0,0,0,114,5,0,0,0,218,10,95,112,
- 97,116,104,95,106,111,105,110,50,0,0,0,115,4,0,0,
- 0,0,2,15,1,114,28,0,0,0,99,1,0,0,0,0,
- 0,0,0,5,0,0,0,5,0,0,0,67,0,0,0,115,
- 134,0,0,0,116,0,0,116,1,0,131,1,0,100,1,0,
- 107,2,0,114,52,0,124,0,0,106,2,0,116,3,0,131,
- 1,0,92,3,0,125,1,0,125,2,0,125,3,0,124,1,
- 0,124,3,0,102,2,0,83,120,69,0,116,4,0,124,0,
- 0,131,1,0,68,93,55,0,125,4,0,124,4,0,116,1,
- 0,107,6,0,114,65,0,124,0,0,106,5,0,124,4,0,
- 100,2,0,100,1,0,131,1,1,92,2,0,125,1,0,125,
- 3,0,124,1,0,124,3,0,102,2,0,83,113,65,0,87,
- 100,3,0,124,0,0,102,2,0,83,41,4,122,32,82,101,
- 112,108,97,99,101,109,101,110,116,32,102,111,114,32,111,115,
- 46,112,97,116,104,46,115,112,108,105,116,40,41,46,233,1,
- 0,0,0,90,8,109,97,120,115,112,108,105,116,218,0,41,
- 6,218,3,108,101,110,114,21,0,0,0,218,10,114,112,97,
- 114,116,105,116,105,111,110,114,25,0,0,0,218,8,114,101,
- 118,101,114,115,101,100,218,6,114,115,112,108,105,116,41,5,
- 218,4,112,97,116,104,90,5,102,114,111,110,116,218,1,95,
- 218,4,116,97,105,108,114,16,0,0,0,114,4,0,0,0,
+ 112,97,116,104,46,105,115,100,105,114,46,105,0,64,0,0,
+ 41,3,114,3,0,0,0,218,6,103,101,116,99,119,100,114,
+ 43,0,0,0,41,1,114,35,0,0,0,114,4,0,0,0,
114,4,0,0,0,114,5,0,0,0,218,11,95,112,97,116,
- 104,95,115,112,108,105,116,56,0,0,0,115,16,0,0,0,
- 0,2,18,1,24,1,10,1,19,1,12,1,27,1,14,1,
- 114,38,0,0,0,99,1,0,0,0,0,0,0,0,1,0,
- 0,0,2,0,0,0,67,0,0,0,115,13,0,0,0,116,
- 0,0,106,1,0,124,0,0,131,1,0,83,41,1,122,126,
- 83,116,97,116,32,116,104,101,32,112,97,116,104,46,10,10,
- 32,32,32,32,77,97,100,101,32,97,32,115,101,112,97,114,
- 97,116,101,32,102,117,110,99,116,105,111,110,32,116,111,32,
- 109,97,107,101,32,105,116,32,101,97,115,105,101,114,32,116,
- 111,32,111,118,101,114,114,105,100,101,32,105,110,32,101,120,
- 112,101,114,105,109,101,110,116,115,10,32,32,32,32,40,101,
- 46,103,46,32,99,97,99,104,101,32,115,116,97,116,32,114,
- 101,115,117,108,116,115,41,46,10,10,32,32,32,32,41,2,
- 114,3,0,0,0,90,4,115,116,97,116,41,1,114,35,0,
- 0,0,114,4,0,0,0,114,4,0,0,0,114,5,0,0,
- 0,218,10,95,112,97,116,104,95,115,116,97,116,68,0,0,
- 0,115,2,0,0,0,0,7,114,39,0,0,0,99,2,0,
- 0,0,0,0,0,0,3,0,0,0,11,0,0,0,67,0,
- 0,0,115,58,0,0,0,121,16,0,116,0,0,124,0,0,
- 131,1,0,125,2,0,87,110,22,0,4,116,1,0,107,10,
- 0,114,40,0,1,1,1,100,1,0,83,89,110,1,0,88,
- 124,2,0,106,2,0,100,2,0,64,124,1,0,107,2,0,
- 83,41,3,122,49,84,101,115,116,32,119,104,101,116,104,101,
- 114,32,116,104,101,32,112,97,116,104,32,105,115,32,116,104,
- 101,32,115,112,101,99,105,102,105,101,100,32,109,111,100,101,
- 32,116,121,112,101,46,70,105,0,240,0,0,41,3,114,39,
- 0,0,0,218,7,79,83,69,114,114,111,114,218,7,115,116,
- 95,109,111,100,101,41,3,114,35,0,0,0,218,4,109,111,
- 100,101,90,9,115,116,97,116,95,105,110,102,111,114,4,0,
- 0,0,114,4,0,0,0,114,5,0,0,0,218,18,95,112,
- 97,116,104,95,105,115,95,109,111,100,101,95,116,121,112,101,
- 78,0,0,0,115,10,0,0,0,0,2,3,1,16,1,13,
- 1,9,1,114,43,0,0,0,99,1,0,0,0,0,0,0,
- 0,1,0,0,0,3,0,0,0,67,0,0,0,115,13,0,
- 0,0,116,0,0,124,0,0,100,1,0,131,2,0,83,41,
- 2,122,31,82,101,112,108,97,99,101,109,101,110,116,32,102,
- 111,114,32,111,115,46,112,97,116,104,46,105,115,102,105,108,
- 101,46,105,0,128,0,0,41,1,114,43,0,0,0,41,1,
- 114,35,0,0,0,114,4,0,0,0,114,4,0,0,0,114,
- 5,0,0,0,218,12,95,112,97,116,104,95,105,115,102,105,
- 108,101,87,0,0,0,115,2,0,0,0,0,2,114,44,0,
- 0,0,99,1,0,0,0,0,0,0,0,1,0,0,0,3,
- 0,0,0,67,0,0,0,115,31,0,0,0,124,0,0,115,
- 18,0,116,0,0,106,1,0,131,0,0,125,0,0,116,2,
- 0,124,0,0,100,1,0,131,2,0,83,41,2,122,30,82,
- 101,112,108,97,99,101,109,101,110,116,32,102,111,114,32,111,
- 115,46,112,97,116,104,46,105,115,100,105,114,46,105,0,64,
- 0,0,41,3,114,3,0,0,0,218,6,103,101,116,99,119,
- 100,114,43,0,0,0,41,1,114,35,0,0,0,114,4,0,
- 0,0,114,4,0,0,0,114,5,0,0,0,218,11,95,112,
- 97,116,104,95,105,115,100,105,114,92,0,0,0,115,6,0,
- 0,0,0,2,6,1,12,1,114,46,0,0,0,105,182,1,
- 0,0,99,3,0,0,0,0,0,0,0,6,0,0,0,17,
- 0,0,0,67,0,0,0,115,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,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,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,22,
- 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,243,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,
+ 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,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,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,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,32,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,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,31,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,64,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,83,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,95,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,107,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,89,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,
- 46,0,124,0,0,106,0,0,124,1,0,107,3,0,114,70,
- 0,116,1,0,100,1,0,124,0,0,106,0,0,124,1,0,
- 102,2,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,30,108,111,97,100,101,114,32,102,
- 111,114,32,37,115,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,
+ 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,244,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,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,32,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,65,
+ 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,84,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,96,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,
+ 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,89,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,46,
+ 0,124,0,0,106,0,0,124,1,0,107,3,0,114,70,0,
+ 116,1,0,100,1,0,124,0,0,106,0,0,124,1,0,102,
+ 2,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,30,108,111,97,100,101,114,32,102,111,
+ 114,32,37,115,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,98,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,98,0,0,0,218,4,97,114,
+ 103,115,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,123,1,0,0,115,12,0,0,0,0,1,12,1,
+ 112,101,114,116,1,0,0,115,12,0,0,0,0,1,12,1,
12,1,15,1,6,1,25,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,
@@ -595,17 +573,17 @@ const unsigned char _Py_M__importlib_external[] = {
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,134,1,
+ 0,0,114,5,0,0,0,218,5,95,119,114,97,112,127,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,115,1,0,0,115,14,0,0,
+ 98,111,111,116,115,116,114,97,112,114,113,0,0,0,218,9,
+ 78,97,109,101,69,114,114,111,114,41,3,114,102,0,0,0,
+ 114,103,0,0,0,114,113,0,0,0,114,4,0,0,0,41,
+ 1,114,102,0,0,0,114,5,0,0,0,218,11,95,99,104,
+ 101,99,107,95,110,97,109,101,108,1,0,0,115,14,0,0,
0,0,8,21,7,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,
+ 116,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,
@@ -628,14 +606,14 @@ const unsigned char _Py_M__importlib_external[] = {
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,
+ 87,97,114,110,105,110,103,41,5,114,100,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,143,1,0,0,115,10,0,0,0,0,10,21,1,24,1,
- 6,1,29,1,114,130,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,240,
+ 109,136,1,0,0,115,10,0,0,0,0,10,21,1,24,1,
+ 6,1,29,1,114,123,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,252,
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,
@@ -643,1955 +621,1960 @@ const unsigned char _Py_M__importlib_external[] = {
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,168,0,100,8,0,106,1,0,
- 124,2,0,124,5,0,131,2,0,125,8,0,116,2,0,100,
- 9,0,124,8,0,131,2,0,1,116,3,0,124,8,0,124,
- 4,0,141,1,0,130,1,0,110,119,0,116,4,0,124,6,
- 0,131,1,0,100,5,0,107,3,0,114,229,0,100,10,0,
- 106,1,0,124,2,0,131,1,0,125,8,0,116,2,0,100,
- 9,0,124,8,0,131,2,0,1,116,5,0,124,8,0,131,
- 1,0,130,1,0,110,58,0,116,4,0,124,7,0,131,1,
- 0,100,5,0,107,3,0,114,31,1,100,11,0,106,1,0,
- 124,2,0,131,1,0,125,8,0,116,2,0,100,9,0,124,
- 8,0,131,2,0,1,116,5,0,124,8,0,131,1,0,130,
- 1,0,124,1,0,100,1,0,107,9,0,114,226,1,121,20,
- 0,116,6,0,124,1,0,100,12,0,25,131,1,0,125,9,
- 0,87,110,18,0,4,116,7,0,107,10,0,114,83,1,1,
- 1,1,89,110,62,0,88,116,8,0,124,6,0,131,1,0,
- 124,9,0,107,3,0,114,145,1,100,13,0,106,1,0,124,
- 2,0,131,1,0,125,8,0,116,2,0,100,9,0,124,8,
- 0,131,2,0,1,116,3,0,124,8,0,124,4,0,141,1,
- 0,130,1,0,121,18,0,124,1,0,100,14,0,25,100,15,
- 0,64,125,10,0,87,110,18,0,4,116,7,0,107,10,0,
- 114,183,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,226,1,116,3,0,
- 100,13,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,16,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,2,123,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,160,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,13,1,18,1,18,1,
- 15,1,13,1,15,1,18,1,15,1,13,1,12,1,12,1,
- 3,1,20,1,13,1,5,2,18,1,15,1,13,1,15,1,
- 3,1,18,1,13,1,5,2,18,1,15,1,9,1,114,141,
- 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,215,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,147,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,135,0,0,0,218,6,101,120,116,101,110,100,114,17,
- 0,0,0,114,142,0,0,0,90,5,100,117,109,112,115,41,
- 4,114,146,0,0,0,114,133,0,0,0,114,140,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,227,1,0,0,115,10,0,0,0,
- 0,3,12,1,19,1,19,1,22,1,114,150,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,151,
- 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,237,1,0,0,115,10,0,0,0,0,5,12,1,
- 18,1,15,1,18,1,114,155,0,0,0,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,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,218,
- 12,103,101,116,95,102,105,108,101,110,97,109,101,218,6,111,
- 114,105,103,105,110,84,218,10,105,115,95,112,97,99,107,97,
- 103,101,114,59,0,0,0,41,15,114,115,0,0,0,114,157,
- 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,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,
- 159,0,0,0,114,156,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,156,0,0,
- 0,218,4,115,112,101,99,218,12,108,111,97,100,101,114,95,
- 99,108,97,115,115,218,8,115,117,102,102,105,120,101,115,114,
- 159,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,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,254,1,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,167,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,76,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,172,0,0,0,114,
- 169,0,0,0,90,10,81,117,101,114,121,86,97,108,117,101,
- 114,40,0,0,0,41,6,114,170,0,0,0,114,126,0,0,
- 0,90,12,114,101,103,105,115,116,114,121,95,107,101,121,114,
- 171,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,83,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,158,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,81,0,
- 116,3,0,131,0,0,68,93,70,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,106,7,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,158,0,0,0,41,8,114,
- 178,0,0,0,114,39,0,0,0,114,40,0,0,0,114,161,
- 0,0,0,114,92,0,0,0,114,93,0,0,0,114,121,0,
- 0,0,218,16,115,112,101,99,95,102,114,111,109,95,108,111,
- 97,100,101,114,41,8,114,170,0,0,0,114,126,0,0,0,
- 114,35,0,0,0,218,6,116,97,114,103,101,116,114,177,0,
- 0,0,114,127,0,0,0,114,166,0,0,0,114,164,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,98,2,0,0,115,
- 26,0,0,0,0,2,15,1,12,1,4,1,3,1,14,1,
- 13,1,9,1,22,1,21,1,9,1,15,1,9,1,122,31,
+ 0,116,0,0,107,3,0,114,171,0,100,8,0,106,1,0,
+ 124,2,0,124,5,0,131,2,0,125,8,0,116,2,0,106,
+ 3,0,100,9,0,124,8,0,131,2,0,1,116,4,0,124,
+ 8,0,124,4,0,141,1,0,130,1,0,110,125,0,116,5,
+ 0,124,6,0,131,1,0,100,5,0,107,3,0,114,235,0,
+ 100,10,0,106,1,0,124,2,0,131,1,0,125,8,0,116,
+ 2,0,106,3,0,100,9,0,124,8,0,131,2,0,1,116,
+ 6,0,124,8,0,131,1,0,130,1,0,110,61,0,116,5,
+ 0,124,7,0,131,1,0,100,5,0,107,3,0,114,40,1,
+ 100,11,0,106,1,0,124,2,0,131,1,0,125,8,0,116,
+ 2,0,106,3,0,100,9,0,124,8,0,131,2,0,1,116,
+ 6,0,124,8,0,131,1,0,130,1,0,124,1,0,100,1,
+ 0,107,9,0,114,238,1,121,20,0,116,7,0,124,1,0,
+ 100,12,0,25,131,1,0,125,9,0,87,110,18,0,4,116,
+ 8,0,107,10,0,114,92,1,1,1,1,89,110,65,0,88,
+ 116,9,0,124,6,0,131,1,0,124,9,0,107,3,0,114,
+ 157,1,100,13,0,106,1,0,124,2,0,131,1,0,125,8,
+ 0,116,2,0,106,3,0,100,9,0,124,8,0,131,2,0,
+ 1,116,4,0,124,8,0,124,4,0,141,1,0,130,1,0,
+ 121,18,0,124,1,0,100,14,0,25,100,15,0,64,125,10,
+ 0,87,110,18,0,4,116,8,0,107,10,0,114,195,1,1,
+ 1,1,89,110,43,0,88,116,9,0,124,7,0,131,1,0,
+ 124,10,0,107,3,0,114,238,1,116,4,0,100,13,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,
+ 16,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,98,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,2,123,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,10,218,
+ 12,77,65,71,73,67,95,78,85,77,66,69,82,114,47,0,
+ 0,0,114,114,0,0,0,218,16,95,118,101,114,98,111,115,
+ 101,95,109,101,115,115,97,103,101,114,99,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,98,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,153,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,16,1,18,1,18,1,15,1,
+ 16,1,15,1,18,1,15,1,16,1,12,1,12,1,3,1,
+ 20,1,13,1,5,2,18,1,15,1,16,1,15,1,3,1,
+ 18,1,13,1,5,2,18,1,15,1,9,1,114,135,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,115,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,78,0,116,4,0,106,5,0,100,
+ 1,0,124,2,0,131,2,0,1,124,3,0,100,2,0,107,
+ 9,0,114,74,0,116,6,0,106,7,0,124,4,0,124,3,
+ 0,131,2,0,1,124,4,0,83,116,8,0,100,3,0,106,
+ 9,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,
+ 98,0,0,0,114,35,0,0,0,41,10,218,7,109,97,114,
+ 115,104,97,108,90,5,108,111,97,100,115,218,10,105,115,105,
+ 110,115,116,97,110,99,101,218,10,95,99,111,100,101,95,116,
+ 121,112,101,114,114,0,0,0,114,129,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,99,0,0,0,114,47,0,0,0,41,
+ 5,114,53,0,0,0,114,98,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,208,1,0,
+ 0,115,16,0,0,0,0,2,15,1,15,1,16,1,12,1,
+ 16,1,4,2,18,1,114,141,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,128,0,0,0,218,6,101,120,
+ 116,101,110,100,114,17,0,0,0,114,136,0,0,0,90,5,
+ 100,117,109,112,115,41,4,114,140,0,0,0,114,126,0,0,
+ 0,114,134,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,220,1,0,
+ 0,115,10,0,0,0,0,3,12,1,19,1,19,1,22,1,
+ 114,144,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,145,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,230,1,0,0,115,10,0,
+ 0,0,0,5,12,1,18,1,15,1,18,1,114,149,0,0,
+ 0,114,120,0,0,0,218,26,115,117,98,109,111,100,117,108,
+ 101,95,115,101,97,114,99,104,95,108,111,99,97,116,105,111,
+ 110,115,99,2,0,0,0,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,218,12,103,101,116,95,102,105,108,101,110,
+ 97,109,101,218,6,111,114,105,103,105,110,84,218,10,105,115,
+ 95,112,97,99,107,97,103,101,114,59,0,0,0,41,15,114,
+ 108,0,0,0,114,151,0,0,0,114,99,0,0,0,114,114,
+ 0,0,0,218,10,77,111,100,117,108,101,83,112,101,99,90,
+ 13,95,115,101,116,95,102,105,108,101,97,116,116,114,218,27,
+ 95,103,101,116,95,115,117,112,112,111,114,116,101,100,95,102,
+ 105,108,101,95,108,111,97,100,101,114,115,114,92,0,0,0,
+ 114,93,0,0,0,114,120,0,0,0,218,9,95,80,79,80,
+ 85,76,65,84,69,114,153,0,0,0,114,150,0,0,0,114,
+ 38,0,0,0,218,6,97,112,112,101,110,100,41,9,114,98,
+ 0,0,0,90,8,108,111,99,97,116,105,111,110,114,120,0,
+ 0,0,114,150,0,0,0,218,4,115,112,101,99,218,12,108,
+ 111,97,100,101,114,95,99,108,97,115,115,218,8,115,117,102,
+ 102,105,120,101,115,114,153,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,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,247,1,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,161,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,69,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,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,181,0,0,0,114,127,
- 0,0,0,41,4,114,170,0,0,0,114,126,0,0,0,114,
- 35,0,0,0,114,164,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,114,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,
- 175,0,0,0,114,174,0,0,0,114,173,0,0,0,218,11,
- 99,108,97,115,115,109,101,116,104,111,100,114,172,0,0,0,
- 114,178,0,0,0,114,181,0,0,0,114,182,0,0,0,114,
- 4,0,0,0,114,4,0,0,0,114,4,0,0,0,114,5,
- 0,0,0,114,168,0,0,0,64,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,15,3,1,114,168,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,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,157,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,159,0,0,0,133,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,164,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,141,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,218,6,109,111,100,117,108,101,
- 114,146,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,144,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,99,
- 2,0,0,0,0,0,0,0,2,0,0,0,3,0,0,0,
- 67,0,0,0,115,16,0,0,0,116,0,0,106,1,0,124,
- 0,0,124,1,0,131,2,0,83,41,1,78,41,2,114,121,
- 0,0,0,218,17,95,108,111,97,100,95,109,111,100,117,108,
- 101,95,115,104,105,109,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,218,11,108,111,97,100,95,109,111,100,117,108,101,152,2,
- 0,0,115,2,0,0,0,0,1,122,25,95,76,111,97,100,
- 101,114,66,97,115,105,99,115,46,108,111,97,100,95,109,111,
- 100,117,108,101,78,41,8,114,112,0,0,0,114,111,0,0,
- 0,114,113,0,0,0,114,114,0,0,0,114,159,0,0,0,
- 114,186,0,0,0,114,191,0,0,0,114,193,0,0,0,114,
- 4,0,0,0,114,4,0,0,0,114,4,0,0,0,114,5,
- 0,0,0,114,184,0,0,0,128,2,0,0,115,10,0,0,
- 0,12,3,6,2,12,8,12,3,12,8,114,184,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,158,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,100,
- 1,0,124,0,0,106,0,0,124,1,0,131,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,133,0,0,0,41,1,114,196,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,166,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,179,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,198,0,0,
- 0,189,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,157,0,
- 0,0,218,8,103,101,116,95,100,97,116,97,114,40,0,0,
- 0,114,107,0,0,0,114,155,0,0,0,41,5,114,108,0,
- 0,0,114,126,0,0,0,114,35,0,0,0,114,153,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,196,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,189,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,188,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,203,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,206,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,
+ 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,119,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,166,0,0,0,114,163,0,0,0,90,10,81,117,101,114,
+ 121,86,97,108,117,101,114,40,0,0,0,41,6,114,164,0,
+ 0,0,114,119,0,0,0,90,12,114,101,103,105,115,116,114,
+ 121,95,107,101,121,114,165,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,76,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,158,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,81,0,116,3,0,131,0,0,68,93,70,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,106,7,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,152,
+ 0,0,0,41,8,114,172,0,0,0,114,39,0,0,0,114,
+ 40,0,0,0,114,155,0,0,0,114,92,0,0,0,114,93,
+ 0,0,0,114,114,0,0,0,218,16,115,112,101,99,95,102,
+ 114,111,109,95,108,111,97,100,101,114,41,8,114,164,0,0,
+ 0,114,119,0,0,0,114,35,0,0,0,218,6,116,97,114,
+ 103,101,116,114,171,0,0,0,114,120,0,0,0,114,160,0,
+ 0,0,114,158,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,91,2,0,0,115,26,0,0,0,0,2,15,1,12,1,
+ 4,1,3,1,14,1,13,1,9,1,22,1,21,1,9,1,
+ 15,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,
+ 175,0,0,0,114,120,0,0,0,41,4,114,164,0,0,0,
+ 114,119,0,0,0,114,35,0,0,0,114,158,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,107,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,105,0,0,0,114,104,0,0,0,114,106,0,0,0,
+ 114,107,0,0,0,114,169,0,0,0,114,168,0,0,0,114,
+ 167,0,0,0,218,11,99,108,97,115,115,109,101,116,104,111,
+ 100,114,166,0,0,0,114,172,0,0,0,114,175,0,0,0,
+ 114,176,0,0,0,114,4,0,0,0,114,4,0,0,0,114,
+ 4,0,0,0,114,5,0,0,0,114,162,0,0,0,57,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,15,3,1,114,162,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,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,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,133,0,0,0,
- 114,138,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,157,0,0,0,
- 114,79,0,0,0,114,66,0,0,0,114,197,0,0,0,114,
- 195,0,0,0,114,14,0,0,0,114,200,0,0,0,114,40,
- 0,0,0,114,141,0,0,0,114,107,0,0,0,114,136,0,
- 0,0,114,105,0,0,0,114,147,0,0,0,114,206,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,150,0,0,0,
- 114,31,0,0,0,114,199,0,0,0,41,10,114,108,0,0,
- 0,114,126,0,0,0,114,90,0,0,0,114,139,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,153,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,187,0,0,0,
- 214,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,196,0,0,0,114,197,0,0,0,114,
- 199,0,0,0,114,198,0,0,0,114,202,0,0,0,114,206,
- 0,0,0,114,187,0,0,0,114,4,0,0,0,114,4,0,
- 0,0,114,4,0,0,0,114,5,0,0,0,114,194,0,0,
- 0,156,2,0,0,115,14,0,0,0,12,2,12,8,12,13,
- 12,10,12,7,12,10,18,8,114,194,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,185,0,0,0,15,
- 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,21,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,
- 25,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,210,0,0,0,114,193,0,0,0,41,2,114,108,0,
- 0,0,114,126,0,0,0,41,1,114,211,0,0,0,114,4,
- 0,0,0,114,5,0,0,0,114,193,0,0,0,28,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,157,0,0,0,40,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,
- 200,0,0,0,45,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,185,0,0,
- 0,114,213,0,0,0,114,215,0,0,0,114,123,0,0,0,
- 114,193,0,0,0,114,157,0,0,0,114,200,0,0,0,114,
- 4,0,0,0,114,4,0,0,0,41,1,114,211,0,0,0,
- 114,5,0,0,0,114,210,0,0,0,10,3,0,0,115,14,
- 0,0,0,12,3,6,2,12,6,12,4,12,3,24,12,18,
- 5,114,210,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,4,0,0,0,67,0,0,0,115,34,0,0,0,116,0,
- 0,124,1,0,131,1,0,125,2,0,100,1,0,124,2,0,
- 106,1,0,100,2,0,124,2,0,106,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,133,0,0,0,114,134,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,208,0,0,0,114,4,0,0,0,114,
- 4,0,0,0,114,5,0,0,0,114,197,0,0,0,55,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,198,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,199,0,0,0,60,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,220,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,163,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,220,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,201,0,0,0,114,4,0,0,0,114,4,0,0,0,114,
- 5,0,0,0,114,198,0,0,0,65,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,197,0,0,0,114,
- 199,0,0,0,114,198,0,0,0,114,4,0,0,0,114,4,
- 0,0,0,114,4,0,0,0,114,5,0,0,0,114,218,0,
- 0,0,51,3,0,0,115,8,0,0,0,12,2,6,2,12,
- 5,12,5,114,218,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,157,0,0,0,114,200,0,0,0,114,141,0,0,0,
- 114,147,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,209,0,0,0,
- 114,4,0,0,0,114,4,0,0,0,114,5,0,0,0,114,
- 187,0,0,0,98,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,
+ 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,151,
+ 0,0,0,114,34,0,0,0,114,32,0,0,0,41,5,114,
+ 100,0,0,0,114,119,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,153,0,0,0,126,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,100,0,0,0,
+ 114,158,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,134,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,105,0,
+ 0,0,114,99,0,0,0,114,47,0,0,0,114,114,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,111,0,0,0,41,3,114,100,0,0,0,218,6,
+ 109,111,100,117,108,101,114,140,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,137,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,99,2,0,0,0,0,0,0,0,2,0,
+ 0,0,3,0,0,0,67,0,0,0,115,16,0,0,0,116,
+ 0,0,106,1,0,124,0,0,124,1,0,131,2,0,83,41,
+ 1,78,41,2,114,114,0,0,0,218,17,95,108,111,97,100,
+ 95,109,111,100,117,108,101,95,115,104,105,109,41,2,114,100,
+ 0,0,0,114,119,0,0,0,114,4,0,0,0,114,4,0,
+ 0,0,114,5,0,0,0,218,11,108,111,97,100,95,109,111,
+ 100,117,108,101,145,2,0,0,115,2,0,0,0,0,1,122,
+ 25,95,76,111,97,100,101,114,66,97,115,105,99,115,46,108,
+ 111,97,100,95,109,111,100,117,108,101,78,41,8,114,105,0,
+ 0,0,114,104,0,0,0,114,106,0,0,0,114,107,0,0,
+ 0,114,153,0,0,0,114,180,0,0,0,114,185,0,0,0,
+ 114,187,0,0,0,114,4,0,0,0,114,4,0,0,0,114,
+ 4,0,0,0,114,5,0,0,0,114,178,0,0,0,121,2,
+ 0,0,115,10,0,0,0,12,3,6,2,12,8,12,3,12,
+ 8,114,178,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,100,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,151,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,100,1,0,124,0,0,106,0,0,124,1,
+ 0,131,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,126,0,0,0,41,1,
+ 114,190,0,0,0,41,2,114,100,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,159,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,100,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,172,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,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,202,
- 0,0,0,104,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,187,0,0,0,114,202,0,0,0,
- 114,4,0,0,0,114,4,0,0,0,114,4,0,0,0,114,
- 5,0,0,0,114,223,0,0,0,94,3,0,0,115,6,0,
- 0,0,12,2,6,2,12,6,114,223,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,136,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,101,12,0,100,18,0,100,
- 19,0,132,0,0,131,1,0,90,13,0,100,20,0,83,41,
- 21,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,185,0,0,0,121,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,211,0,0,0,114,118,0,0,0,41,
- 2,114,108,0,0,0,114,212,0,0,0,114,4,0,0,0,
- 114,4,0,0,0,114,5,0,0,0,114,213,0,0,0,125,
- 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,214,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,215,0,0,0,129,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,3,0,0,
- 0,4,0,0,0,67,0,0,0,115,47,0,0,0,116,0,
- 0,106,1,0,116,2,0,106,3,0,124,1,0,131,2,0,
- 125,2,0,116,4,0,100,1,0,124,1,0,106,5,0,124,
- 0,0,106,6,0,131,3,0,1,124,2,0,83,41,2,122,
- 38,67,114,101,97,116,101,32,97,110,32,117,110,105,116,105,
- 97,108,105,122,101,100,32,101,120,116,101,110,115,105,111,110,
- 32,109,111,100,117,108,101,122,38,101,120,116,101,110,115,105,
- 111,110,32,109,111,100,117,108,101,32,123,33,114,125,32,108,
- 111,97,100,101,100,32,102,114,111,109,32,123,33,114,125,41,
- 7,114,121,0,0,0,114,188,0,0,0,114,145,0,0,0,
- 90,14,99,114,101,97,116,101,95,100,121,110,97,109,105,99,
- 114,105,0,0,0,114,106,0,0,0,114,35,0,0,0,41,
- 3,114,108,0,0,0,114,164,0,0,0,114,190,0,0,0,
+ 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,100,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,192,0,0,0,182,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,98,0,0,0,
+ 78,41,5,114,151,0,0,0,218,8,103,101,116,95,100,97,
+ 116,97,114,40,0,0,0,114,99,0,0,0,114,149,0,0,
+ 0,41,5,114,100,0,0,0,114,119,0,0,0,114,35,0,
+ 0,0,114,147,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,189,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,183,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,114,0,0,0,114,182,0,0,0,218,7,
+ 99,111,109,112,105,108,101,41,4,114,100,0,0,0,114,53,
+ 0,0,0,114,35,0,0,0,114,197,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,199,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,183,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,205,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,165,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,109,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,48,0,88,116,11,0,
+ 106,12,0,100,6,0,124,4,0,124,2,0,131,3,0,1,
+ 116,13,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,14,
+ 0,124,8,0,124,2,0,131,2,0,125,9,0,116,11,0,
+ 106,12,0,100,9,0,124,2,0,131,2,0,1,116,15,0,
+ 106,16,0,12,114,179,1,124,4,0,100,1,0,107,9,0,
+ 114,179,1,124,3,0,100,1,0,107,9,0,114,179,1,116,
+ 17,0,124,9,0,124,3,0,116,18,0,124,8,0,131,1,
+ 0,131,3,0,125,6,0,121,39,0,124,0,0,106,19,0,
+ 124,2,0,124,4,0,124,6,0,131,3,0,1,116,11,0,
+ 106,12,0,100,10,0,124,4,0,131,2,0,1,87,110,18,
+ 0,4,116,2,0,107,10,0,114,178,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,126,0,0,0,114,
+ 132,0,0,0,114,98,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,20,114,151,0,0,0,114,
+ 79,0,0,0,114,66,0,0,0,114,191,0,0,0,114,189,
+ 0,0,0,114,14,0,0,0,114,194,0,0,0,114,40,0,
+ 0,0,114,135,0,0,0,114,99,0,0,0,114,130,0,0,
+ 0,114,114,0,0,0,114,129,0,0,0,114,141,0,0,0,
+ 114,200,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,
+ 144,0,0,0,114,31,0,0,0,114,193,0,0,0,41,10,
+ 114,100,0,0,0,114,119,0,0,0,114,90,0,0,0,114,
+ 133,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,147,
+ 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,
- 186,0,0,0,132,3,0,0,115,10,0,0,0,0,2,6,
- 1,15,1,6,1,16,1,122,33,69,120,116,101,110,115,105,
- 111,110,70,105,108,101,76,111,97,100,101,114,46,99,114,101,
- 97,116,101,95,109,111,100,117,108,101,99,2,0,0,0,0,
- 0,0,0,2,0,0,0,4,0,0,0,67,0,0,0,115,
- 45,0,0,0,116,0,0,106,1,0,116,2,0,106,3,0,
- 124,1,0,131,2,0,1,116,4,0,100,1,0,124,0,0,
- 106,5,0,124,0,0,106,6,0,131,3,0,1,100,2,0,
- 83,41,3,122,30,73,110,105,116,105,97,108,105,122,101,32,
- 97,110,32,101,120,116,101,110,115,105,111,110,32,109,111,100,
- 117,108,101,122,40,101,120,116,101,110,115,105,111,110,32,109,
- 111,100,117,108,101,32,123,33,114,125,32,101,120,101,99,117,
- 116,101,100,32,102,114,111,109,32,123,33,114,125,78,41,7,
- 114,121,0,0,0,114,188,0,0,0,114,145,0,0,0,90,
- 12,101,120,101,99,95,100,121,110,97,109,105,99,114,105,0,
- 0,0,114,106,0,0,0,114,35,0,0,0,41,2,114,108,
- 0,0,0,114,190,0,0,0,114,4,0,0,0,114,4,0,
- 0,0,114,5,0,0,0,114,191,0,0,0,140,3,0,0,
- 115,6,0,0,0,0,2,19,1,6,1,122,31,69,120,116,
- 101,110,115,105,111,110,70,105,108,101,76,111,97,100,101,114,
- 46,101,120,101,99,95,109,111,100,117,108,101,99,2,0,0,
- 0,0,0,0,0,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,185,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,149,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,226,0,
- 0,0,114,5,0,0,0,114,159,0,0,0,146,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,187,0,
- 0,0,152,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,202,0,0,0,156,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,157,0,0,0,160,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,14,114,112,0,0,0,114,111,
- 0,0,0,114,113,0,0,0,114,114,0,0,0,114,185,0,
- 0,0,114,213,0,0,0,114,215,0,0,0,114,186,0,0,
- 0,114,191,0,0,0,114,159,0,0,0,114,187,0,0,0,
- 114,202,0,0,0,114,123,0,0,0,114,157,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,113,3,0,0,115,20,0,0,
- 0,12,6,6,2,12,4,12,4,12,3,12,8,12,6,12,
- 6,12,4,12,4,114,224,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,
+ 181,0,0,0,207,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,12,1,7,1,15,1,6,
+ 1,7,1,15,1,18,1,16,1,22,1,12,1,9,1,15,
+ 1,3,1,19,1,20,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,105,0,0,0,114,
+ 104,0,0,0,114,106,0,0,0,114,190,0,0,0,114,191,
+ 0,0,0,114,193,0,0,0,114,192,0,0,0,114,196,0,
+ 0,0,114,200,0,0,0,114,181,0,0,0,114,4,0,0,
+ 0,114,4,0,0,0,114,4,0,0,0,114,5,0,0,0,
+ 114,188,0,0,0,149,2,0,0,115,14,0,0,0,12,2,
+ 12,8,12,13,12,10,12,7,12,10,18,8,114,188,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,98,0,0,0,114,35,0,0,0,41,3,
+ 114,100,0,0,0,114,119,0,0,0,114,35,0,0,0,114,
+ 4,0,0,0,114,4,0,0,0,114,5,0,0,0,114,179,
+ 0,0,0,8,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,111,0,0,0,41,2,114,100,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,14,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,98,0,0,0,114,
+ 35,0,0,0,41,1,114,100,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,18,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,204,0,0,0,114,187,0,0,0,41,
+ 2,114,100,0,0,0,114,119,0,0,0,41,1,114,205,0,
+ 0,0,114,4,0,0,0,114,5,0,0,0,114,187,0,0,
+ 0,21,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,100,0,0,
+ 0,114,119,0,0,0,114,4,0,0,0,114,4,0,0,0,
+ 114,5,0,0,0,114,151,0,0,0,33,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,100,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,194,0,0,0,38,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,105,0,0,
+ 0,114,104,0,0,0,114,106,0,0,0,114,107,0,0,0,
+ 114,179,0,0,0,114,207,0,0,0,114,209,0,0,0,114,
+ 116,0,0,0,114,187,0,0,0,114,151,0,0,0,114,194,
+ 0,0,0,114,4,0,0,0,114,4,0,0,0,41,1,114,
+ 205,0,0,0,114,5,0,0,0,114,204,0,0,0,3,3,
+ 0,0,115,14,0,0,0,12,3,6,2,12,6,12,4,12,
+ 3,24,12,18,5,114,204,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,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,185,0,0,0,173,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,90,8,95,
- 95,112,97,116,104,95,95,41,2,122,3,115,121,115,122,4,
- 112,97,116,104,41,2,114,231,0,0,0,114,32,0,0,0,
- 41,4,114,108,0,0,0,114,222,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,179,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,238,0,0,0,
- 114,117,0,0,0,114,7,0,0,0,218,7,109,111,100,117,
- 108,101,115,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,233,0,
- 0,0,189,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,233,0,0,0,114,
- 234,0,0,0,114,235,0,0,0,114,231,0,0,0,114,127,
- 0,0,0,114,156,0,0,0,114,232,0,0,0,41,3,114,
- 108,0,0,0,90,11,112,97,114,101,110,116,95,112,97,116,
- 104,114,164,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,193,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,240,
- 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,206,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,240,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,209,
- 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,232,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,212,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,240,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,215,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,232,
- 0,0,0,114,163,0,0,0,41,2,114,108,0,0,0,114,
- 245,0,0,0,114,4,0,0,0,114,4,0,0,0,114,5,
- 0,0,0,114,163,0,0,0,218,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,185,0,0,0,114,238,0,0,0,114,233,0,0,0,
- 114,240,0,0,0,114,242,0,0,0,114,243,0,0,0,114,
- 244,0,0,0,114,246,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,230,0,0,0,166,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,230,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,230,0,0,0,114,232,0,0,0,41,
- 4,114,108,0,0,0,114,106,0,0,0,114,35,0,0,0,
- 114,236,0,0,0,114,4,0,0,0,114,4,0,0,0,114,
- 5,0,0,0,114,185,0,0,0,224,3,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,170,0,0,0,114,190,
- 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,227,
- 3,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,159,0,0,0,236,
- 3,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,
+ 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,4,0,0,0,67,0,0,0,115,34,0,
+ 0,0,116,0,0,124,1,0,131,1,0,125,2,0,100,1,
+ 0,124,2,0,106,1,0,100,2,0,124,2,0,106,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,126,0,0,0,114,127,
+ 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,
+ 100,0,0,0,114,35,0,0,0,114,202,0,0,0,114,4,
+ 0,0,0,114,4,0,0,0,114,5,0,0,0,114,191,0,
+ 0,0,48,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,192,0,0,0,41,5,
+ 114,100,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,193,0,0,0,53,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,214,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,62,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,135,0,116,3,0,124,6,0,131,1,0,68,93,121,
+ 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,214,0,1,125,8,0,1,122,28,0,116,9,0,
+ 106,10,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,36,0,116,11,
+ 0,124,1,0,124,2,0,124,3,0,131,3,0,1,116,9,
+ 0,106,10,0,100,3,0,124,1,0,131,2,0,1,87,110,
+ 56,0,4,116,8,0,107,10,0,114,57,1,1,125,8,0,
+ 1,122,24,0,116,9,0,106,10,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,12,114,38,0,0,0,
+ 114,46,0,0,0,114,157,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,114,0,0,0,114,129,0,0,0,
+ 114,55,0,0,0,41,9,114,100,0,0,0,114,35,0,0,
+ 0,114,53,0,0,0,114,214,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,195,0,0,0,114,4,0,0,0,114,4,0,0,
+ 0,114,5,0,0,0,114,192,0,0,0,58,3,0,0,115,
+ 42,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,9,1,
+ 10,1,27,1,3,1,16,1,20,1,18,2,12,1,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,105,0,0,
+ 0,114,104,0,0,0,114,106,0,0,0,114,107,0,0,0,
+ 114,191,0,0,0,114,193,0,0,0,114,192,0,0,0,114,
+ 4,0,0,0,114,4,0,0,0,114,4,0,0,0,114,5,
+ 0,0,0,114,212,0,0,0,44,3,0,0,115,8,0,0,
+ 0,12,2,6,2,12,5,12,5,114,212,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,98,0,0,0,114,35,0,0,0,
+ 114,89,0,0,0,41,4,114,151,0,0,0,114,194,0,0,
+ 0,114,135,0,0,0,114,141,0,0,0,41,5,114,100,0,
+ 0,0,114,119,0,0,0,114,35,0,0,0,114,53,0,0,
+ 0,114,203,0,0,0,114,4,0,0,0,114,4,0,0,0,
+ 114,5,0,0,0,114,181,0,0,0,93,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,100,0,0,0,
+ 114,119,0,0,0,114,4,0,0,0,114,4,0,0,0,114,
+ 5,0,0,0,114,196,0,0,0,99,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,105,0,0,0,114,104,0,
+ 0,0,114,106,0,0,0,114,107,0,0,0,114,181,0,0,
+ 0,114,196,0,0,0,114,4,0,0,0,114,4,0,0,0,
+ 114,4,0,0,0,114,5,0,0,0,114,217,0,0,0,89,
+ 3,0,0,115,6,0,0,0,12,2,6,2,12,6,114,217,
+ 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,136,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,101,
+ 12,0,100,18,0,100,19,0,132,0,0,131,1,0,90,13,
+ 0,100,20,0,83,41,21,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,98,0,0,0,114,35,0,0,0,41,3,114,100,0,0,
+ 0,114,98,0,0,0,114,35,0,0,0,114,4,0,0,0,
+ 114,4,0,0,0,114,5,0,0,0,114,179,0,0,0,116,
+ 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,205,0,0,0,
+ 114,111,0,0,0,41,2,114,100,0,0,0,114,206,0,0,
+ 0,114,4,0,0,0,114,4,0,0,0,114,5,0,0,0,
+ 114,207,0,0,0,120,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,208,0,0,0,114,98,0,0,
+ 0,114,35,0,0,0,41,1,114,100,0,0,0,114,4,0,
+ 0,0,114,4,0,0,0,114,5,0,0,0,114,209,0,0,
+ 0,124,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,3,0,0,0,4,0,0,0,67,0,0,0,115,
+ 50,0,0,0,116,0,0,106,1,0,116,2,0,106,3,0,
+ 124,1,0,131,2,0,125,2,0,116,0,0,106,4,0,100,
+ 1,0,124,1,0,106,5,0,124,0,0,106,6,0,131,3,
+ 0,1,124,2,0,83,41,2,122,38,67,114,101,97,116,101,
+ 32,97,110,32,117,110,105,116,105,97,108,105,122,101,100,32,
+ 101,120,116,101,110,115,105,111,110,32,109,111,100,117,108,101,
+ 122,38,101,120,116,101,110,115,105,111,110,32,109,111,100,117,
+ 108,101,32,123,33,114,125,32,108,111,97,100,101,100,32,102,
+ 114,111,109,32,123,33,114,125,41,7,114,114,0,0,0,114,
+ 182,0,0,0,114,139,0,0,0,90,14,99,114,101,97,116,
+ 101,95,100,121,110,97,109,105,99,114,129,0,0,0,114,98,
+ 0,0,0,114,35,0,0,0,41,3,114,100,0,0,0,114,
+ 158,0,0,0,114,184,0,0,0,114,4,0,0,0,114,4,
+ 0,0,0,114,5,0,0,0,114,180,0,0,0,127,3,0,
+ 0,115,10,0,0,0,0,2,6,1,15,1,9,1,16,1,
+ 122,33,69,120,116,101,110,115,105,111,110,70,105,108,101,76,
+ 111,97,100,101,114,46,99,114,101,97,116,101,95,109,111,100,
+ 117,108,101,99,2,0,0,0,0,0,0,0,2,0,0,0,
+ 4,0,0,0,67,0,0,0,115,48,0,0,0,116,0,0,
+ 106,1,0,116,2,0,106,3,0,124,1,0,131,2,0,1,
+ 116,0,0,106,4,0,100,1,0,124,0,0,106,5,0,124,
+ 0,0,106,6,0,131,3,0,1,100,2,0,83,41,3,122,
+ 30,73,110,105,116,105,97,108,105,122,101,32,97,110,32,101,
+ 120,116,101,110,115,105,111,110,32,109,111,100,117,108,101,122,
+ 40,101,120,116,101,110,115,105,111,110,32,109,111,100,117,108,
+ 101,32,123,33,114,125,32,101,120,101,99,117,116,101,100,32,
+ 102,114,111,109,32,123,33,114,125,78,41,7,114,114,0,0,
+ 0,114,182,0,0,0,114,139,0,0,0,90,12,101,120,101,
+ 99,95,100,121,110,97,109,105,99,114,129,0,0,0,114,98,
+ 0,0,0,114,35,0,0,0,41,2,114,100,0,0,0,114,
+ 184,0,0,0,114,4,0,0,0,114,4,0,0,0,114,5,
+ 0,0,0,114,185,0,0,0,135,3,0,0,115,6,0,0,
+ 0,0,2,19,1,9,1,122,31,69,120,116,101,110,115,105,
+ 111,110,70,105,108,101,76,111,97,100,101,114,46,101,120,101,
+ 99,95,109,111,100,117,108,101,99,2,0,0,0,0,0,0,
+ 0,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,179,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,144,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,100,0,0,0,114,119,0,
+ 0,0,114,4,0,0,0,41,1,114,220,0,0,0,114,5,
+ 0,0,0,114,153,0,0,0,141,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,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,202,0,
- 0,0,239,3,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,189,0,0,
- 0,114,204,0,0,0,84,41,1,114,205,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,187,0,0,0,242,3,
- 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,164,0,
- 0,0,114,4,0,0,0,114,4,0,0,0,114,5,0,0,
- 0,114,186,0,0,0,245,3,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,
+ 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,100,0,0,0,114,119,0,0,0,114,4,0,0,0,114,
+ 4,0,0,0,114,5,0,0,0,114,181,0,0,0,147,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,100,0,0,0,114,119,0,0,0,
+ 114,4,0,0,0,114,4,0,0,0,114,5,0,0,0,114,
+ 196,0,0,0,151,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,4,0,0,0,100,0,0,83,41,1,78,
- 114,4,0,0,0,41,2,114,108,0,0,0,114,190,0,0,
- 0,114,4,0,0,0,114,4,0,0,0,114,5,0,0,0,
- 114,191,0,0,0,248,3,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,32,0,0,0,116,0,0,100,1,0,124,0,
- 0,106,1,0,131,2,0,1,116,2,0,106,3,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,4,114,105,0,0,0,114,232,0,
- 0,0,114,121,0,0,0,114,192,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,193,0,0,0,251,3,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,185,0,0,0,114,183,
- 0,0,0,114,248,0,0,0,114,159,0,0,0,114,202,0,
- 0,0,114,187,0,0,0,114,186,0,0,0,114,191,0,0,
- 0,114,193,0,0,0,114,4,0,0,0,114,4,0,0,0,
- 114,4,0,0,0,114,5,0,0,0,114,247,0,0,0,223,
- 3,0,0,115,16,0,0,0,12,1,12,3,18,9,12,3,
- 12,3,12,3,12,3,12,3,114,247,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,250,0,0,0,41,2,114,170,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,250,0,0,0,12,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,170,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,20,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,251,0,0,0,114,137,0,
- 0,0,114,255,0,0,0,41,3,114,170,0,0,0,114,35,
- 0,0,0,114,253,0,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,37,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,119,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,88,0,116,
- 3,0,106,4,0,124,1,0,124,3,0,131,2,0,83,116,
- 3,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,182,0,0,0,114,121,0,0,0,114,179,0,0,
- 0,114,160,0,0,0,114,156,0,0,0,41,6,114,170,0,
- 0,0,114,126,0,0,0,114,253,0,0,0,114,127,0,0,
- 0,114,128,0,0,0,114,164,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,59,4,0,0,
- 115,18,0,0,0,0,4,15,1,24,2,15,1,6,1,12,
- 1,16,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,181,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,143,0,0,0,114,69,0,0,0,218,5,98,121,
- 116,101,115,114,1,1,0,0,114,115,0,0,0,114,181,0,
- 0,0,114,2,1,0,0,114,127,0,0,0,114,156,0,0,
- 0,114,107,0,0,0,114,149,0,0,0,114,121,0,0,0,
- 114,160,0,0,0,41,9,114,170,0,0,0,114,126,0,0,
- 0,114,35,0,0,0,114,180,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,253,0,0,0,114,164,0,0,0,114,128,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,100,0,0,0,114,119,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,74,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,5,1,0,0,114,127,0,0,0,
- 114,156,0,0,0,114,158,0,0,0,114,230,0,0,0,41,
- 6,114,170,0,0,0,114,126,0,0,0,114,35,0,0,0,
- 114,180,0,0,0,114,164,0,0,0,114,4,1,0,0,114,
- 4,0,0,0,114,4,0,0,0,114,5,0,0,0,114,181,
- 0,0,0,106,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,181,0,0,0,114,127,0,0,0,41,4,114,170,0,0,
- 0,114,126,0,0,0,114,35,0,0,0,114,164,0,0,0,
+ 114,151,0,0,0,155,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,14,114,105,0,0,0,114,104,0,0,0,114,
+ 106,0,0,0,114,107,0,0,0,114,179,0,0,0,114,207,
+ 0,0,0,114,209,0,0,0,114,180,0,0,0,114,185,0,
+ 0,0,114,153,0,0,0,114,181,0,0,0,114,196,0,0,
+ 0,114,116,0,0,0,114,151,0,0,0,114,4,0,0,0,
114,4,0,0,0,114,4,0,0,0,114,5,0,0,0,114,
- 182,0,0,0,128,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,183,0,0,0,114,250,0,0,0,114,255,0,
- 0,0,114,1,1,0,0,114,2,1,0,0,114,5,1,0,
- 0,114,181,0,0,0,114,182,0,0,0,114,4,0,0,0,
+ 218,0,0,0,108,3,0,0,115,20,0,0,0,12,6,6,
+ 2,12,4,12,4,12,3,12,8,12,6,12,6,12,4,12,
+ 4,114,218,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,100,0,0,0,114,
+ 98,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,179,0,0,0,168,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,90,8,95,95,112,97,116,
+ 104,95,95,41,2,122,3,115,121,115,122,4,112,97,116,104,
+ 41,2,114,225,0,0,0,114,32,0,0,0,41,4,114,100,
+ 0,0,0,114,216,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,174,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,232,0,0,0,114,110,0,0,
+ 0,114,7,0,0,0,218,7,109,111,100,117,108,101,115,41,
+ 3,114,100,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,227,0,0,0,184,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,227,0,0,0,114,228,0,0,0,
+ 114,229,0,0,0,114,225,0,0,0,114,120,0,0,0,114,
+ 150,0,0,0,114,226,0,0,0,41,3,114,100,0,0,0,
+ 90,11,112,97,114,101,110,116,95,112,97,116,104,114,158,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,188,
+ 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,234,0,0,0,41,
+ 1,114,100,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,201,
+ 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,234,0,0,0,41,1,114,100,
+ 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,204,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,226,0,0,0,41,1,114,
+ 100,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,207,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,234,0,0,0,41,2,114,100,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,210,
+ 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,226,0,0,0,114,
+ 157,0,0,0,41,2,114,100,0,0,0,114,239,0,0,0,
114,4,0,0,0,114,4,0,0,0,114,5,0,0,0,114,
- 249,0,0,0,8,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,249,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,225,0,0,0,41,1,
- 114,127,0,0,0,114,4,0,0,0,114,5,0,0,0,114,
- 227,0,0,0,157,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,149,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,166,0,0,0,114,4,0,0,0,
- 41,1,114,127,0,0,0,114,5,0,0,0,114,185,0,0,
- 0,151,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,8,1,0,0,41,1,114,108,0,
+ 157,0,0,0,213,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,105,0,0,0,114,104,
+ 0,0,0,114,106,0,0,0,114,107,0,0,0,114,179,0,
+ 0,0,114,232,0,0,0,114,227,0,0,0,114,234,0,0,
+ 0,114,236,0,0,0,114,237,0,0,0,114,238,0,0,0,
+ 114,240,0,0,0,114,157,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,161,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,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,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,224,0,0,0,114,226,0,0,0,41,4,114,100,0,
+ 0,0,114,98,0,0,0,114,35,0,0,0,114,230,0,0,
+ 0,114,4,0,0,0,114,4,0,0,0,114,5,0,0,0,
+ 114,179,0,0,0,219,3,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,105,
+ 0,0,0,41,2,114,164,0,0,0,114,184,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,222,3,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,100,0,
+ 0,0,114,119,0,0,0,114,4,0,0,0,114,4,0,0,
+ 0,114,5,0,0,0,114,153,0,0,0,231,3,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,100,0,0,0,114,119,0,0,0,114,4,0,0,0,114,
+ 4,0,0,0,114,5,0,0,0,114,196,0,0,0,234,3,
+ 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,183,0,0,0,114,198,0,
+ 0,0,84,41,1,114,199,0,0,0,41,2,114,100,0,0,
+ 0,114,119,0,0,0,114,4,0,0,0,114,4,0,0,0,
+ 114,5,0,0,0,114,181,0,0,0,237,3,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,100,0,0,0,114,158,0,0,0,114,4,
+ 0,0,0,114,4,0,0,0,114,5,0,0,0,114,180,0,
+ 0,0,240,3,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,100,0,0,0,114,184,0,0,0,114,4,0,
+ 0,0,114,4,0,0,0,114,5,0,0,0,114,185,0,0,
+ 0,243,3,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,
+ 35,0,0,0,116,0,0,106,1,0,100,1,0,124,0,0,
+ 106,2,0,131,2,0,1,116,0,0,106,3,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,4,114,114,0,0,0,114,129,0,0,
+ 0,114,226,0,0,0,114,186,0,0,0,41,2,114,100,0,
+ 0,0,114,119,0,0,0,114,4,0,0,0,114,4,0,0,
+ 0,114,5,0,0,0,114,187,0,0,0,246,3,0,0,115,
+ 6,0,0,0,0,7,9,1,10,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,105,0,0,0,
+ 114,104,0,0,0,114,106,0,0,0,114,179,0,0,0,114,
+ 177,0,0,0,114,242,0,0,0,114,153,0,0,0,114,196,
+ 0,0,0,114,181,0,0,0,114,180,0,0,0,114,185,0,
+ 0,0,114,187,0,0,0,114,4,0,0,0,114,4,0,0,
+ 0,114,4,0,0,0,114,5,0,0,0,114,241,0,0,0,
+ 218,3,0,0,115,16,0,0,0,12,1,12,3,18,9,12,
+ 3,12,3,12,3,12,3,12,3,114,241,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,108,0,0,0,114,244,0,0,0,41,2,114,164,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,244,0,0,0,8,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,118,0,0,0,
+ 114,99,0,0,0,41,3,114,164,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,16,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,245,0,0,0,114,131,
+ 0,0,0,114,249,0,0,0,41,3,114,164,0,0,0,114,
+ 35,0,0,0,114,247,0,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,33,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,119,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,88,0,
+ 116,3,0,106,4,0,124,1,0,124,3,0,131,2,0,83,
+ 116,3,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,117,0,0,0,41,7,114,108,0,0,0,114,117,
+ 0,0,0,114,176,0,0,0,114,114,0,0,0,114,173,0,
+ 0,0,114,154,0,0,0,114,150,0,0,0,41,6,114,164,
+ 0,0,0,114,119,0,0,0,114,247,0,0,0,114,120,0,
+ 0,0,114,121,0,0,0,114,158,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,55,4,0,
+ 0,115,18,0,0,0,0,4,15,1,24,2,15,1,6,1,
+ 12,1,16,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,175,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,137,0,0,0,114,69,0,0,0,218,5,98,
+ 121,116,101,115,114,251,0,0,0,114,108,0,0,0,114,175,
+ 0,0,0,114,252,0,0,0,114,120,0,0,0,114,150,0,
+ 0,0,114,99,0,0,0,114,143,0,0,0,114,114,0,0,
+ 0,114,154,0,0,0,41,9,114,164,0,0,0,114,119,0,
+ 0,0,114,35,0,0,0,114,174,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,247,0,0,0,114,158,0,0,0,114,121,0,
0,0,114,4,0,0,0,114,4,0,0,0,114,5,0,0,
- 0,114,250,0,0,0,165,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,181,0,0,0,114,127,0,0,0,114,156,0,0,0,41,
- 3,114,108,0,0,0,114,126,0,0,0,114,164,0,0,0,
+ 0,218,9,95,103,101,116,95,115,112,101,99,70,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,255,0,0,0,114,120,0,0,
+ 0,114,150,0,0,0,114,152,0,0,0,114,224,0,0,0,
+ 41,6,114,164,0,0,0,114,119,0,0,0,114,35,0,0,
+ 0,114,174,0,0,0,114,158,0,0,0,114,254,0,0,0,
114,4,0,0,0,114,4,0,0,0,114,5,0,0,0,114,
- 124,0,0,0,171,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,156,0,0,0,41,1,114,167,
- 0,0,0,41,7,114,108,0,0,0,114,165,0,0,0,114,
- 126,0,0,0,114,35,0,0,0,90,4,115,109,115,108,114,
- 180,0,0,0,114,127,0,0,0,114,4,0,0,0,114,4,
- 0,0,0,114,5,0,0,0,114,5,1,0,0,183,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,185,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,219,0,0,0,114,40,
- 0,0,0,114,8,1,0,0,218,11,95,102,105,108,108,95,
- 99,97,99,104,101,114,6,0,0,0,114,11,1,0,0,114,
- 88,0,0,0,114,10,1,0,0,114,28,0,0,0,114,7,
- 1,0,0,114,44,0,0,0,114,5,1,0,0,114,46,0,
- 0,0,114,105,0,0,0,114,47,0,0,0,114,121,0,0,
- 0,114,160,0,0,0,114,156,0,0,0,41,14,114,108,0,
- 0,0,114,126,0,0,0,114,180,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,133,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,225,0,0,
- 0,114,165,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,164,0,0,0,114,4,0,0,0,114,4,0,0,0,114,
- 5,0,0,0,114,181,0,0,0,188,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,6,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,0,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,9,1,0,0,
- 114,10,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,11,
- 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,245,0,0,0,114,106,0,0,0,114,237,0,0,0,114,
- 225,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,13,1,
- 0,0,233,4,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,170,0,0,0,114,12,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,18,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,
- 170,0,0,0,114,12,1,0,0,114,18,1,0,0,114,4,
- 0,0,0,41,2,114,170,0,0,0,114,12,1,0,0,114,
- 5,0,0,0,218,9,112,97,116,104,95,104,111,111,107,8,
- 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,244,0,0,0,26,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,185,
- 0,0,0,114,250,0,0,0,114,130,0,0,0,114,182,0,
- 0,0,114,124,0,0,0,114,5,1,0,0,114,181,0,0,
- 0,114,13,1,0,0,114,183,0,0,0,114,19,1,0,0,
- 114,244,0,0,0,114,4,0,0,0,114,4,0,0,0,114,
- 4,0,0,0,114,5,0,0,0,114,6,1,0,0,142,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,6,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,
- 218,10,95,95,108,111,97,100,101,114,95,95,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,223,0,
- 0,0,114,218,0,0,0,114,167,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,164,0,0,
+ 175,0,0,0,102,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,175,0,0,0,114,120,0,0,0,41,4,114,164,0,
+ 0,0,114,119,0,0,0,114,35,0,0,0,114,158,0,0,
+ 0,114,4,0,0,0,114,4,0,0,0,114,5,0,0,0,
+ 114,176,0,0,0,124,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,105,0,0,0,114,104,0,0,0,114,106,0,0,0,114,
+ 107,0,0,0,114,177,0,0,0,114,244,0,0,0,114,249,
+ 0,0,0,114,251,0,0,0,114,252,0,0,0,114,255,0,
+ 0,0,114,175,0,0,0,114,176,0,0,0,114,4,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,
- 32,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,24,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,224,0,0,0,114,145,0,0,0,
- 218,18,101,120,116,101,110,115,105,111,110,95,115,117,102,102,
- 105,120,101,115,114,218,0,0,0,114,84,0,0,0,114,223,
- 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,161,0,0,0,55,5,0,0,
- 115,8,0,0,0,0,5,18,1,12,1,12,1,114,161,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,142,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,
+ 114,243,0,0,0,4,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,243,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,219,0,0,0,41,
+ 1,114,120,0,0,0,114,4,0,0,0,114,5,0,0,0,
+ 114,221,0,0,0,153,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,143,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,100,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,160,0,0,0,114,4,0,0,
+ 0,41,1,114,120,0,0,0,114,5,0,0,0,114,179,0,
+ 0,0,147,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,2,1,0,0,41,1,114,100,
0,0,0,114,4,0,0,0,114,4,0,0,0,114,5,0,
- 0,0,114,227,0,0,0,91,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,169,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,145,0,0,
- 0,114,239,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,229,0,0,0,114,149,0,
- 0,0,114,25,1,0,0,114,84,0,0,0,114,163,0,0,
- 0,114,168,0,0,0,114,173,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,66,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,33,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,28,1,0,0,78,41,14,
- 114,33,1,0,0,114,161,0,0,0,114,7,0,0,0,114,
- 254,0,0,0,114,149,0,0,0,114,6,1,0,0,114,19,
- 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,163,0,0,0,114,168,0,
- 0,0,114,249,0,0,0,114,218,0,0,0,41,2,114,32,
- 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,134,
- 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,35,1,0,0,41,3,122,
- 3,119,105,110,114,1,0,0,0,114,2,0,0,0,41,57,
- 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,144,0,0,
- 0,114,15,0,0,0,114,135,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,141,0,0,0,114,
- 147,0,0,0,114,150,0,0,0,114,155,0,0,0,218,6,
- 111,98,106,101,99,116,114,162,0,0,0,114,167,0,0,0,
- 114,168,0,0,0,114,184,0,0,0,114,194,0,0,0,114,
- 210,0,0,0,114,218,0,0,0,114,223,0,0,0,114,229,
- 0,0,0,114,224,0,0,0,114,230,0,0,0,114,247,0,
- 0,0,114,249,0,0,0,114,6,1,0,0,114,24,1,0,
- 0,114,161,0,0,0,114,33,1,0,0,114,35,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,100,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,
- 110,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,28,12,17,21,
- 55,21,12,18,10,12,14,9,3,12,1,15,65,19,64,19,
- 28,22,110,19,41,25,43,25,16,6,3,25,53,19,57,19,
- 41,19,134,19,146,15,23,12,11,12,68,
+ 0,0,114,244,0,0,0,161,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,175,0,0,0,114,120,0,0,0,114,150,0,0,0,
+ 41,3,114,100,0,0,0,114,119,0,0,0,114,158,0,0,
+ 0,114,4,0,0,0,114,4,0,0,0,114,5,0,0,0,
+ 114,117,0,0,0,167,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,120,0,0,0,114,150,0,0,0,41,1,114,
+ 161,0,0,0,41,7,114,100,0,0,0,114,159,0,0,0,
+ 114,119,0,0,0,114,35,0,0,0,90,4,115,109,115,108,
+ 114,174,0,0,0,114,120,0,0,0,114,4,0,0,0,114,
+ 4,0,0,0,114,5,0,0,0,114,255,0,0,0,179,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,228,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,120,0,124,0,
+ 0,106,14,0,68,93,109,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,106,19,0,100,6,0,
+ 124,12,0,100,7,0,100,3,0,131,2,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,224,1,116,18,0,106,
+ 19,0,100,9,0,124,8,0,131,2,0,1,116,18,0,106,
+ 20,0,124,1,0,100,8,0,131,2,0,125,13,0,124,8,
+ 0,103,1,0,124,13,0,95,21,0,124,13,0,83,100,8,
+ 0,83,41,11,122,125,84,114,121,32,116,111,32,102,105,110,
+ 100,32,97,32,108,111,97,100,101,114,32,102,111,114,32,116,
+ 104,101,32,115,112,101,99,105,102,105,101,100,32,109,111,100,
+ 117,108,101,44,32,111,114,32,116,104,101,32,110,97,109,101,
+ 115,112,97,99,101,10,32,32,32,32,32,32,32,32,112,97,
+ 99,107,97,103,101,32,112,111,114,116,105,111,110,115,46,32,
+ 82,101,116,117,114,110,115,32,40,108,111,97,100,101,114,44,
+ 32,108,105,115,116,45,111,102,45,112,111,114,116,105,111,110,
+ 115,41,46,70,114,58,0,0,0,114,56,0,0,0,114,29,
+ 0,0,0,114,179,0,0,0,122,9,116,114,121,105,110,103,
+ 32,123,125,90,9,118,101,114,98,111,115,105,116,121,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,
+ 22,114,32,0,0,0,114,39,0,0,0,114,35,0,0,0,
+ 114,3,0,0,0,114,45,0,0,0,114,213,0,0,0,114,
+ 40,0,0,0,114,2,1,0,0,218,11,95,102,105,108,108,
+ 95,99,97,99,104,101,114,6,0,0,0,114,5,1,0,0,
+ 114,88,0,0,0,114,4,1,0,0,114,28,0,0,0,114,
+ 1,1,0,0,114,44,0,0,0,114,255,0,0,0,114,46,
+ 0,0,0,114,114,0,0,0,114,129,0,0,0,114,154,0,
+ 0,0,114,150,0,0,0,41,14,114,100,0,0,0,114,119,
+ 0,0,0,114,174,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,126,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,219,0,0,0,114,159,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,158,0,0,
+ 0,114,4,0,0,0,114,4,0,0,0,114,5,0,0,0,
+ 114,175,0,0,0,184,4,0,0,115,70,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,
+ 22,1,16,1,12,1,15,1,14,1,6,1,16,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,3,
+ 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,250,0,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,3,1,0,0,114,4,
+ 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,5,1,0,
+ 0,41,9,114,100,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,239,
+ 0,0,0,114,98,0,0,0,114,231,0,0,0,114,219,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,7,1,0,0,
+ 230,4,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,99,0,0,0,41,1,114,35,0,0,0,41,
+ 2,114,164,0,0,0,114,6,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,15,
+ 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,164,0,
+ 0,0,114,6,1,0,0,114,12,1,0,0,114,4,0,0,
+ 0,41,2,114,164,0,0,0,114,6,1,0,0,114,5,0,
+ 0,0,218,9,112,97,116,104,95,104,111,111,107,5,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,100,0,
+ 0,0,114,4,0,0,0,114,4,0,0,0,114,5,0,0,
+ 0,114,238,0,0,0,23,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,105,0,0,0,114,104,0,
+ 0,0,114,106,0,0,0,114,107,0,0,0,114,179,0,0,
+ 0,114,244,0,0,0,114,123,0,0,0,114,176,0,0,0,
+ 114,117,0,0,0,114,255,0,0,0,114,175,0,0,0,114,
+ 7,1,0,0,114,177,0,0,0,114,13,1,0,0,114,238,
+ 0,0,0,114,4,0,0,0,114,4,0,0,0,114,4,0,
+ 0,0,114,5,0,0,0,114,0,1,0,0,138,4,0,0,
+ 115,20,0,0,0,12,7,6,2,12,14,12,4,6,2,12,
+ 12,12,5,15,46,12,31,18,18,114,0,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,218,10,
+ 95,95,108,111,97,100,101,114,95,95,218,8,95,95,115,112,
+ 101,99,95,95,114,120,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,120,0,0,0,114,217,0,0,0,
+ 114,212,0,0,0,114,161,0,0,0,218,9,69,120,99,101,
+ 112,116,105,111,110,41,6,90,2,110,115,114,98,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,120,0,0,0,114,158,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,29,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,18,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,218,0,0,0,114,139,0,0,0,218,18,
+ 101,120,116,101,110,115,105,111,110,95,115,117,102,102,105,120,
+ 101,115,114,212,0,0,0,114,84,0,0,0,114,217,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,155,0,0,0,52,5,0,0,115,8,
+ 0,0,0,0,5,18,1,12,1,12,1,114,155,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,136,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,221,0,0,0,88,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,163,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,114,0,0,0,114,7,0,0,0,114,139,0,0,0,114,
+ 233,0,0,0,114,105,0,0,0,90,18,95,98,117,105,108,
+ 116,105,110,95,102,114,111,109,95,110,97,109,101,114,109,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,99,0,0,0,114,26,0,0,
+ 0,114,11,0,0,0,114,223,0,0,0,114,143,0,0,0,
+ 114,19,1,0,0,114,84,0,0,0,114,157,0,0,0,114,
+ 162,0,0,0,114,167,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,63,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,27,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,22,1,0,0,78,41,14,114,27,
+ 1,0,0,114,155,0,0,0,114,7,0,0,0,114,248,0,
+ 0,0,114,143,0,0,0,114,0,1,0,0,114,13,1,0,
+ 0,114,3,0,0,0,114,105,0,0,0,218,9,109,101,116,
+ 97,95,112,97,116,104,114,157,0,0,0,114,162,0,0,0,
+ 114,243,0,0,0,114,212,0,0,0,41,2,114,26,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,131,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,29,1,0,0,41,3,122,3,119,
+ 105,110,114,1,0,0,0,114,2,0,0,0,41,56,114,107,
+ 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,138,0,0,0,114,
+ 15,0,0,0,114,128,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,116,0,0,0,114,123,
+ 0,0,0,114,135,0,0,0,114,141,0,0,0,114,144,0,
+ 0,0,114,149,0,0,0,218,6,111,98,106,101,99,116,114,
+ 156,0,0,0,114,161,0,0,0,114,162,0,0,0,114,178,
+ 0,0,0,114,188,0,0,0,114,204,0,0,0,114,212,0,
+ 0,0,114,217,0,0,0,114,223,0,0,0,114,218,0,0,
+ 0,114,224,0,0,0,114,241,0,0,0,114,243,0,0,0,
+ 114,0,1,0,0,114,18,1,0,0,114,155,0,0,0,114,
+ 27,1,0,0,114,29,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,98,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,111,22,1,18,2,6,1,
+ 6,2,9,2,9,2,10,2,21,44,12,33,12,19,12,12,
+ 12,12,12,28,12,17,21,55,21,12,18,10,12,14,9,3,
+ 12,1,15,65,19,64,19,28,22,110,19,41,25,45,25,16,
+ 6,3,25,53,19,57,19,42,19,134,19,147,15,23,12,11,
+ 12,68,
};
diff --git a/Python/marshal.c b/Python/marshal.c
index 5b8de99192..589eb8065f 100644
--- a/Python/marshal.c
+++ b/Python/marshal.c
@@ -643,7 +643,7 @@ typedef struct {
PyObject *refs; /* a list */
} RFILE;
-static char *
+static const char *
r_string(Py_ssize_t n, RFILE *p)
{
Py_ssize_t read = -1;
@@ -729,7 +729,7 @@ r_byte(RFILE *p)
c = getc(p->fp);
}
else {
- char *ptr = r_string(1, p);
+ const char *ptr = r_string(1, p);
if (ptr != NULL)
c = *(unsigned char *) ptr;
}
@@ -740,9 +740,9 @@ static int
r_short(RFILE *p)
{
short x = -1;
- unsigned char *buffer;
+ const unsigned char *buffer;
- buffer = (unsigned char *) r_string(2, p);
+ buffer = (const unsigned char *) r_string(2, p);
if (buffer != NULL) {
x = buffer[0];
x |= buffer[1] << 8;
@@ -756,9 +756,9 @@ static long
r_long(RFILE *p)
{
long x = -1;
- unsigned char *buffer;
+ const unsigned char *buffer;
- buffer = (unsigned char *) r_string(4, p);
+ buffer = (const unsigned char *) r_string(4, p);
if (buffer != NULL) {
x = buffer[0];
x |= (long)buffer[1] << 8;
@@ -978,7 +978,8 @@ r_object(RFILE *p)
case TYPE_FLOAT:
{
- char buf[256], *ptr;
+ char buf[256];
+ const char *ptr;
double dx;
n = r_byte(p);
if (n == EOF) {
@@ -1001,9 +1002,9 @@ r_object(RFILE *p)
case TYPE_BINARY_FLOAT:
{
- unsigned char *buf;
+ const unsigned char *buf;
double x;
- buf = (unsigned char *) r_string(8, p);
+ buf = (const unsigned char *) r_string(8, p);
if (buf == NULL)
break;
x = _PyFloat_Unpack8(buf, 1);
@@ -1016,7 +1017,8 @@ r_object(RFILE *p)
case TYPE_COMPLEX:
{
- char buf[256], *ptr;
+ char buf[256];
+ const char *ptr;
Py_complex c;
n = r_byte(p);
if (n == EOF) {
@@ -1053,15 +1055,15 @@ r_object(RFILE *p)
case TYPE_BINARY_COMPLEX:
{
- unsigned char *buf;
+ const unsigned char *buf;
Py_complex c;
- buf = (unsigned char *) r_string(8, p);
+ buf = (const unsigned char *) r_string(8, p);
if (buf == NULL)
break;
c.real = _PyFloat_Unpack8(buf, 1);
if (c.real == -1.0 && PyErr_Occurred())
break;
- buf = (unsigned char *) r_string(8, p);
+ buf = (const unsigned char *) r_string(8, p);
if (buf == NULL)
break;
c.imag = _PyFloat_Unpack8(buf, 1);
@@ -1074,7 +1076,7 @@ r_object(RFILE *p)
case TYPE_STRING:
{
- char *ptr;
+ const char *ptr;
n = r_long(p);
if (PyErr_Occurred())
break;
@@ -1119,7 +1121,7 @@ r_object(RFILE *p)
}
_read_ascii:
{
- char *ptr;
+ const char *ptr;
ptr = r_string(n, p);
if (ptr == NULL)
break;
@@ -1137,7 +1139,7 @@ r_object(RFILE *p)
is_interned = 1;
case TYPE_UNICODE:
{
- char *buffer;
+ const char *buffer;
n = r_long(p);
if (PyErr_Occurred())
diff --git a/Python/modsupport.c b/Python/modsupport.c
index 6c938ddd79..7e6a65b531 100644
--- a/Python/modsupport.c
+++ b/Python/modsupport.c
@@ -301,7 +301,7 @@ do_mkvalue(const char **p_format, va_list *p_va, int flags)
case 'U': /* XXX deprecated alias */
{
PyObject *v;
- char *str = va_arg(*p_va, char *);
+ const char *str = va_arg(*p_va, const char *);
Py_ssize_t n;
if (**p_format == '#') {
++*p_format;
@@ -334,7 +334,7 @@ do_mkvalue(const char **p_format, va_list *p_va, int flags)
case 'y':
{
PyObject *v;
- char *str = va_arg(*p_va, char *);
+ const char *str = va_arg(*p_va, const char *);
Py_ssize_t n;
if (**p_format == '#') {
++*p_format;
diff --git a/Python/mystrtoul.c b/Python/mystrtoul.c
index 98429d4b42..a85790e1bf 100644
--- a/Python/mystrtoul.c
+++ b/Python/mystrtoul.c
@@ -17,7 +17,7 @@
* smallmax[base] is the largest unsigned long i such that
* i * base doesn't overflow unsigned long.
*/
-static unsigned long smallmax[] = {
+static const unsigned long smallmax[] = {
0, /* bases 0 and 1 are invalid */
0,
ULONG_MAX / 2,
@@ -62,14 +62,14 @@ static unsigned long smallmax[] = {
* Note that this is pessimistic if sizeof(long) > 4.
*/
#if SIZEOF_LONG == 4
-static int digitlimit[] = {
+static const int digitlimit[] = {
0, 0, 32, 20, 16, 13, 12, 11, 10, 10, /* 0 - 9 */
9, 9, 8, 8, 8, 8, 8, 7, 7, 7, /* 10 - 19 */
7, 7, 7, 7, 6, 6, 6, 6, 6, 6, /* 20 - 29 */
6, 6, 6, 6, 6, 6, 6}; /* 30 - 36 */
#elif SIZEOF_LONG == 8
/* [int(math.floor(math.log(2**64, i))) for i in range(2, 37)] */
-static int digitlimit[] = {
+static const int digitlimit[] = {
0, 0, 64, 40, 32, 27, 24, 22, 21, 20, /* 0 - 9 */
19, 18, 17, 17, 16, 16, 16, 15, 15, 15, /* 10 - 19 */
14, 14, 14, 14, 13, 13, 13, 13, 13, 13, /* 20 - 29 */
diff --git a/Python/opcode_targets.h b/Python/opcode_targets.h
index 19259e1a71..387225641c 100644
--- a/Python/opcode_targets.h
+++ b/Python/opcode_targets.h
@@ -154,7 +154,7 @@ static void *opcode_targets[256] = {
&&TARGET_BUILD_TUPLE_UNPACK,
&&TARGET_BUILD_SET_UNPACK,
&&TARGET_SETUP_ASYNC_WITH,
- &&_unknown_opcode,
+ &&TARGET_FORMAT_VALUE,
&&_unknown_opcode,
&&_unknown_opcode,
&&_unknown_opcode,
diff --git a/Python/pylifecycle.c b/Python/pylifecycle.c
index 4f5efc963c..c84c46a449 100644
--- a/Python/pylifecycle.c
+++ b/Python/pylifecycle.c
@@ -154,8 +154,8 @@ Py_SetStandardStreamEncoding(const char *encoding, const char *errors)
return 0;
}
-/* Global initializations. Can be undone by Py_Finalize(). Don't
- call this twice without an intervening Py_Finalize() call. When
+/* Global initializations. Can be undone by Py_FinalizeEx(). Don't
+ call this twice without an intervening Py_FinalizeEx() call. When
initializations fail, a fatal error is issued and the function does
not return. On return, the first thread and interpreter state have
been created.
@@ -327,11 +327,11 @@ _Py_InitializeEx_Private(int install_sigs, int install_importlib)
(void) PyThreadState_Swap(tstate);
#ifdef WITH_THREAD
- /* We can't call _PyEval_FiniThreads() in Py_Finalize because
+ /* We can't call _PyEval_FiniThreads() in Py_FinalizeEx because
destroying the GIL might fail when it is being referenced from
another running thread (see issue #9901).
Instead we destroy the previously created GIL here, which ensures
- that we can call Py_Initialize / Py_Finalize multiple times. */
+ that we can call Py_Initialize / Py_FinalizeEx multiple times. */
_PyEval_FiniThreads();
/* Auto-thread-state API */
@@ -477,28 +477,35 @@ file_is_closed(PyObject *fobj)
return r > 0;
}
-static void
+static int
flush_std_files(void)
{
PyObject *fout = _PySys_GetObjectId(&PyId_stdout);
PyObject *ferr = _PySys_GetObjectId(&PyId_stderr);
PyObject *tmp;
+ int status = 0;
if (fout != NULL && fout != Py_None && !file_is_closed(fout)) {
tmp = _PyObject_CallMethodId(fout, &PyId_flush, "");
- if (tmp == NULL)
+ if (tmp == NULL) {
PyErr_WriteUnraisable(fout);
+ status = -1;
+ }
else
Py_DECREF(tmp);
}
if (ferr != NULL && ferr != Py_None && !file_is_closed(ferr)) {
tmp = _PyObject_CallMethodId(ferr, &PyId_flush, "");
- if (tmp == NULL)
+ if (tmp == NULL) {
PyErr_Clear();
+ status = -1;
+ }
else
Py_DECREF(tmp);
}
+
+ return status;
}
/* Undo the effect of Py_Initialize().
@@ -515,14 +522,15 @@ flush_std_files(void)
*/
-void
-Py_Finalize(void)
+int
+Py_FinalizeEx(void)
{
PyInterpreterState *interp;
PyThreadState *tstate;
+ int status = 0;
if (!initialized)
- return;
+ return status;
wait_for_thread_shutdown();
@@ -547,7 +555,9 @@ Py_Finalize(void)
initialized = 0;
/* Flush sys.stdout and sys.stderr */
- flush_std_files();
+ if (flush_std_files() < 0) {
+ status = -1;
+ }
/* Disable signal handling */
PyOS_FiniInterrupts();
@@ -576,7 +586,9 @@ Py_Finalize(void)
PyImport_Cleanup();
/* Flush sys.stdout and sys.stderr (again, in case more was printed) */
- flush_std_files();
+ if (flush_std_files() < 0) {
+ status = -1;
+ }
/* Collect final garbage. This disposes of cycles created by
* class definitions, for example.
@@ -696,6 +708,13 @@ Py_Finalize(void)
#endif
call_ll_exitfuncs();
+ return status;
+}
+
+void
+Py_Finalize(void)
+{
+ Py_FinalizeEx();
}
/* Create and initialize a new interpreter and thread, and return the
@@ -803,7 +822,7 @@ handle_error:
frames, and that it is its interpreter's only remaining thread.
It is a fatal error to violate these constraints.
- (Py_Finalize() doesn't have these constraints -- it zaps
+ (Py_FinalizeEx() doesn't have these constraints -- it zaps
everything, regardless.)
Locking: as above.
@@ -972,6 +991,9 @@ is_valid_fd(int fd)
if (fd < 0 || !_PyVerify_fd(fd))
return 0;
_Py_BEGIN_SUPPRESS_IPH
+ /* Prefer dup() over fstat(). fstat() can require input/output whereas
+ dup() doesn't, there is a low risk of EMFILE/ENFILE at Python
+ startup. */
fd2 = dup(fd);
if (fd2 >= 0)
close(fd2);
@@ -982,8 +1004,8 @@ is_valid_fd(int fd)
/* returns Py_None if the fd is not valid */
static PyObject*
create_stdio(PyObject* io,
- int fd, int write_mode, char* name,
- char* encoding, char* errors)
+ int fd, int write_mode, const char* name,
+ const char* encoding, const char* errors)
{
PyObject *buf = NULL, *stream = NULL, *text = NULL, *raw = NULL, *res;
const char* mode;
@@ -1013,7 +1035,8 @@ create_stdio(PyObject* io,
mode = "rb";
buf = _PyObject_CallMethodId(io, &PyId_open, "isiOOOi",
fd, mode, buffering,
- Py_None, Py_None, Py_None, 0);
+ Py_None, Py_None, /* encoding, errors */
+ Py_None, 0); /* newline, closefd */
if (buf == NULL)
goto error;
@@ -1447,7 +1470,9 @@ call_ll_exitfuncs(void)
void
Py_Exit(int sts)
{
- Py_Finalize();
+ if (Py_FinalizeEx() < 0) {
+ sts = 120;
+ }
exit(sts);
}
diff --git a/Python/pystate.c b/Python/pystate.c
index 7e0267ae1d..50edfbb474 100644
--- a/Python/pystate.c
+++ b/Python/pystate.c
@@ -686,7 +686,7 @@ PyThreadState_IsCurrent(PyThreadState *tstate)
}
/* Internal initialization/finalization functions called by
- Py_Initialize/Py_Finalize
+ Py_Initialize/Py_FinalizeEx
*/
void
_PyGILState_Init(PyInterpreterState *i, PyThreadState *t)
diff --git a/Python/pystrtod.c b/Python/pystrtod.c
index 209c9086c8..5f3af92dca 100644
--- a/Python/pystrtod.c
+++ b/Python/pystrtod.c
@@ -881,12 +881,12 @@ PyAPI_FUNC(char *) PyOS_double_to_string(double val,
#define OFS_E 2
/* The lengths of these are known to the code below, so don't change them */
-static char *lc_float_strings[] = {
+static const char * const lc_float_strings[] = {
"inf",
"nan",
"e",
};
-static char *uc_float_strings[] = {
+static const char * const uc_float_strings[] = {
"INF",
"NAN",
"E",
@@ -925,7 +925,8 @@ static char *
format_float_short(double d, char format_code,
int mode, int precision,
int always_add_sign, int add_dot_0_if_integer,
- int use_alt_formatting, char **float_strings, int *type)
+ int use_alt_formatting, const char * const *float_strings,
+ int *type)
{
char *buf = NULL;
char *p = NULL;
@@ -1176,7 +1177,7 @@ PyAPI_FUNC(char *) PyOS_double_to_string(double val,
int flags,
int *type)
{
- char **float_strings = lc_float_strings;
+ const char * const *float_strings = lc_float_strings;
int mode;
/* Validate format_code, and map upper and lower case. Compute the
diff --git a/Python/pythonrun.c b/Python/pythonrun.c
index ebedd123f3..8829699f60 100644
--- a/Python/pythonrun.c
+++ b/Python/pythonrun.c
@@ -431,7 +431,7 @@ static int
parse_syntax_error(PyObject *err, PyObject **message, PyObject **filename,
int *lineno, int *offset, PyObject **text)
{
- long hold;
+ int hold;
PyObject *v;
_Py_IDENTIFIER(msg);
_Py_IDENTIFIER(filename);
@@ -464,11 +464,11 @@ parse_syntax_error(PyObject *err, PyObject **message, PyObject **filename,
v = _PyObject_GetAttrId(err, &PyId_lineno);
if (!v)
goto finally;
- hold = PyLong_AsLong(v);
+ hold = _PyLong_AsInt(v);
Py_DECREF(v);
if (hold < 0 && PyErr_Occurred())
goto finally;
- *lineno = (int)hold;
+ *lineno = hold;
v = _PyObject_GetAttrId(err, &PyId_offset);
if (!v)
@@ -477,11 +477,11 @@ parse_syntax_error(PyObject *err, PyObject **message, PyObject **filename,
*offset = -1;
Py_DECREF(v);
} else {
- hold = PyLong_AsLong(v);
+ hold = _PyLong_AsInt(v);
Py_DECREF(v);
if (hold < 0 && PyErr_Occurred())
goto finally;
- *offset = (int)hold;
+ *offset = hold;
}
v = _PyObject_GetAttrId(err, &PyId_text);
@@ -785,11 +785,11 @@ print_exception(PyObject *f, PyObject *value)
PyErr_Clear();
}
-static const char *cause_message =
+static const char cause_message[] =
"\nThe above exception was the direct cause "
"of the following exception:\n\n";
-static const char *context_message =
+static const char context_message[] =
"\nDuring handling of the above exception, "
"another exception occurred:\n\n";
@@ -1138,8 +1138,8 @@ PyParser_ASTFromString(const char *s, const char *filename_str, int start,
mod_ty
PyParser_ASTFromFileObject(FILE *fp, PyObject *filename, const char* enc,
- int start, char *ps1,
- char *ps2, PyCompilerFlags *flags, int *errcode,
+ int start, const char *ps1,
+ const char *ps2, PyCompilerFlags *flags, int *errcode,
PyArena *arena)
{
mod_ty mod;
@@ -1171,8 +1171,8 @@ PyParser_ASTFromFileObject(FILE *fp, PyObject *filename, const char* enc,
mod_ty
PyParser_ASTFromFile(FILE *fp, const char *filename_str, const char* enc,
- int start, char *ps1,
- char *ps2, PyCompilerFlags *flags, int *errcode,
+ int start, const char *ps1,
+ const char *ps2, PyCompilerFlags *flags, int *errcode,
PyArena *arena)
{
mod_ty mod;
diff --git a/Python/pytime.c b/Python/pytime.c
index 7f65824b47..81682caa96 100644
--- a/Python/pytime.c
+++ b/Python/pytime.c
@@ -7,6 +7,11 @@
#include <mach/mach_time.h> /* mach_absolute_time(), mach_timebase_info() */
#endif
+#define _PyTime_check_mul_overflow(a, b) \
+ (assert(b > 0), \
+ (_PyTime_t)(a) < _PyTime_MIN / (_PyTime_t)(b) \
+ || _PyTime_MAX / (_PyTime_t)(b) < (_PyTime_t)(a))
+
/* To millisecond (10^-3) */
#define SEC_TO_MS 1000
@@ -38,7 +43,7 @@ _PyLong_AsTime_t(PyObject *obj)
val = PyLong_AsLongLong(obj);
#else
long val;
- assert(sizeof(time_t) <= sizeof(long));
+ Py_BUILD_ASSERT(sizeof(time_t) <= sizeof(long));
val = PyLong_AsLong(obj);
#endif
if (val == -1 && PyErr_Occurred()) {
@@ -55,55 +60,88 @@ _PyLong_FromTime_t(time_t t)
#if defined(HAVE_LONG_LONG) && SIZEOF_TIME_T == SIZEOF_LONG_LONG
return PyLong_FromLongLong((PY_LONG_LONG)t);
#else
- assert(sizeof(time_t) <= sizeof(long));
+ Py_BUILD_ASSERT(sizeof(time_t) <= sizeof(long));
return PyLong_FromLong((long)t);
#endif
}
+/* Round to nearest with ties going to nearest even integer
+ (_PyTime_ROUND_HALF_EVEN) */
+static double
+_PyTime_RoundHalfEven(double x)
+{
+ double rounded = round(x);
+ if (fabs(x-rounded) == 0.5)
+ /* halfway case: round to even */
+ rounded = 2.0*round(x/2.0);
+ return rounded;
+}
+
+static double
+_PyTime_Round(double x, _PyTime_round_t round)
+{
+ /* volatile avoids optimization changing how numbers are rounded */
+ volatile double d;
+
+ d = x;
+ if (round == _PyTime_ROUND_HALF_EVEN)
+ d = _PyTime_RoundHalfEven(d);
+ else if (round == _PyTime_ROUND_CEILING)
+ d = ceil(d);
+ else
+ d = floor(d);
+ return d;
+}
+
static int
-_PyTime_ObjectToDenominator(PyObject *obj, time_t *sec, long *numerator,
+_PyTime_DoubleToDenominator(double d, time_t *sec, long *numerator,
double denominator, _PyTime_round_t round)
{
- assert(denominator <= LONG_MAX);
- if (PyFloat_Check(obj)) {
- double d, intpart, err;
- /* volatile avoids unsafe optimization on float enabled by gcc -O3 */
- volatile double floatpart;
+ double intpart, err;
+ /* volatile avoids optimization changing how numbers are rounded */
+ volatile double floatpart;
- d = PyFloat_AsDouble(obj);
- floatpart = modf(d, &intpart);
- if (floatpart < 0) {
- floatpart = 1.0 + floatpart;
- intpart -= 1.0;
- }
+ floatpart = modf(d, &intpart);
- floatpart *= denominator;
- if (round == _PyTime_ROUND_CEILING) {
- floatpart = ceil(floatpart);
- if (floatpart >= denominator) {
- floatpart = 0.0;
- intpart += 1.0;
- }
- }
- else {
- floatpart = floor(floatpart);
- }
+ floatpart *= denominator;
+ floatpart = _PyTime_Round(floatpart, round);
+ if (floatpart >= denominator) {
+ floatpart -= denominator;
+ intpart += 1.0;
+ }
+ else if (floatpart < 0) {
+ floatpart += denominator;
+ intpart -= 1.0;
+ }
+ assert(0.0 <= floatpart && floatpart < denominator);
- *sec = (time_t)intpart;
- err = intpart - (double)*sec;
- if (err <= -1.0 || err >= 1.0) {
- error_time_t_overflow();
- return -1;
- }
+ *sec = (time_t)intpart;
+ *numerator = (long)floatpart;
- *numerator = (long)floatpart;
- return 0;
+ err = intpart - (double)*sec;
+ if (err <= -1.0 || err >= 1.0) {
+ error_time_t_overflow();
+ return -1;
+ }
+ return 0;
+}
+
+static int
+_PyTime_ObjectToDenominator(PyObject *obj, time_t *sec, long *numerator,
+ double denominator, _PyTime_round_t round)
+{
+ assert(denominator <= (double)LONG_MAX);
+
+ if (PyFloat_Check(obj)) {
+ double d = PyFloat_AsDouble(obj);
+ return _PyTime_DoubleToDenominator(d, sec, numerator,
+ denominator, round);
}
else {
*sec = _PyLong_AsTime_t(obj);
+ *numerator = 0;
if (*sec == (time_t)-1 && PyErr_Occurred())
return -1;
- *numerator = 0;
return 0;
}
}
@@ -112,13 +150,12 @@ int
_PyTime_ObjectToTime_t(PyObject *obj, time_t *sec, _PyTime_round_t round)
{
if (PyFloat_Check(obj)) {
- double d, intpart, err;
+ double intpart, err;
+ /* volatile avoids optimization changing how numbers are rounded */
+ volatile double d;
d = PyFloat_AsDouble(obj);
- if (round == _PyTime_ROUND_CEILING)
- d = ceil(d);
- else
- d = floor(d);
+ d = _PyTime_Round(d, round);
(void)modf(d, &intpart);
*sec = (time_t)intpart;
@@ -141,14 +178,20 @@ int
_PyTime_ObjectToTimespec(PyObject *obj, time_t *sec, long *nsec,
_PyTime_round_t round)
{
- return _PyTime_ObjectToDenominator(obj, sec, nsec, 1e9, round);
+ int res;
+ res = _PyTime_ObjectToDenominator(obj, sec, nsec, 1e9, round);
+ assert(0 <= *nsec && *nsec < SEC_TO_NS);
+ return res;
}
int
_PyTime_ObjectToTimeval(PyObject *obj, time_t *sec, long *usec,
_PyTime_round_t round)
{
- return _PyTime_ObjectToDenominator(obj, sec, usec, 1e6, round);
+ int res;
+ res = _PyTime_ObjectToDenominator(obj, sec, usec, 1e6, round);
+ assert(0 <= *usec && *usec < SEC_TO_US);
+ return res;
}
static void
@@ -162,12 +205,15 @@ _PyTime_t
_PyTime_FromSeconds(int seconds)
{
_PyTime_t t;
+ t = (_PyTime_t)seconds;
/* ensure that integer overflow cannot happen, int type should have 32
bits, whereas _PyTime_t type has at least 64 bits (SEC_TO_MS takes 30
bits). */
- assert((seconds >= 0 && seconds <= _PyTime_MAX / SEC_TO_NS)
- || (seconds < 0 && seconds >= _PyTime_MIN / SEC_TO_NS));
- t = (_PyTime_t)seconds * SEC_TO_NS;
+ Py_BUILD_ASSERT(INT_MAX <= _PyTime_MAX / SEC_TO_NS);
+ Py_BUILD_ASSERT(INT_MIN >= _PyTime_MIN / SEC_TO_NS);
+ assert((t >= 0 && t <= _PyTime_MAX / SEC_TO_NS)
+ || (t < 0 && t >= _PyTime_MIN / SEC_TO_NS));
+ t *= SEC_TO_NS;
return t;
}
@@ -175,7 +221,7 @@ _PyTime_t
_PyTime_FromNanoseconds(PY_LONG_LONG ns)
{
_PyTime_t t;
- assert(sizeof(PY_LONG_LONG) <= sizeof(_PyTime_t));
+ Py_BUILD_ASSERT(sizeof(PY_LONG_LONG) <= sizeof(_PyTime_t));
t = Py_SAFE_DOWNCAST(ns, PY_LONG_LONG, _PyTime_t);
return t;
}
@@ -187,12 +233,15 @@ _PyTime_FromTimespec(_PyTime_t *tp, struct timespec *ts, int raise)
_PyTime_t t;
int res = 0;
- t = (_PyTime_t)ts->tv_sec * SEC_TO_NS;
- if (t / SEC_TO_NS != ts->tv_sec) {
+ Py_BUILD_ASSERT(sizeof(ts->tv_sec) <= sizeof(_PyTime_t));
+ t = (_PyTime_t)ts->tv_sec;
+
+ if (_PyTime_check_mul_overflow(t, SEC_TO_NS)) {
if (raise)
_PyTime_overflow();
res = -1;
}
+ t = t * SEC_TO_NS;
t += ts->tv_nsec;
@@ -206,12 +255,15 @@ _PyTime_FromTimeval(_PyTime_t *tp, struct timeval *tv, int raise)
_PyTime_t t;
int res = 0;
- t = (_PyTime_t)tv->tv_sec * SEC_TO_NS;
- if (t / SEC_TO_NS != tv->tv_sec) {
+ Py_BUILD_ASSERT(sizeof(tv->tv_sec) <= sizeof(_PyTime_t));
+ t = (_PyTime_t)tv->tv_sec;
+
+ if (_PyTime_check_mul_overflow(t, SEC_TO_NS)) {
if (raise)
_PyTime_overflow();
res = -1;
}
+ t = t * SEC_TO_NS;
t += (_PyTime_t)tv->tv_usec * US_TO_NS;
@@ -221,50 +273,59 @@ _PyTime_FromTimeval(_PyTime_t *tp, struct timeval *tv, int raise)
#endif
static int
-_PyTime_FromObject(_PyTime_t *t, PyObject *obj, _PyTime_round_t round,
- long to_nanoseconds)
+_PyTime_FromFloatObject(_PyTime_t *t, double value, _PyTime_round_t round,
+ long unit_to_ns)
{
- if (PyFloat_Check(obj)) {
- /* volatile avoids unsafe optimization on float enabled by gcc -O3 */
- volatile double d, err;
+ double err;
+ /* volatile avoids optimization changing how numbers are rounded */
+ volatile double d;
- /* convert to a number of nanoseconds */
- d = PyFloat_AsDouble(obj);
- d *= to_nanoseconds;
+ /* convert to a number of nanoseconds */
+ d = value;
+ d *= (double)unit_to_ns;
+ d = _PyTime_Round(d, round);
- if (round == _PyTime_ROUND_CEILING)
- d = ceil(d);
- else
- d = floor(d);
+ *t = (_PyTime_t)d;
+ err = d - (double)*t;
+ if (fabs(err) >= 1.0) {
+ _PyTime_overflow();
+ return -1;
+ }
+ return 0;
+}
- *t = (_PyTime_t)d;
- err = d - (double)*t;
- if (fabs(err) >= 1.0) {
- _PyTime_overflow();
- return -1;
- }
- return 0;
+static int
+_PyTime_FromObject(_PyTime_t *t, PyObject *obj, _PyTime_round_t round,
+ long unit_to_ns)
+{
+ if (PyFloat_Check(obj)) {
+ double d;
+ d = PyFloat_AsDouble(obj);
+ return _PyTime_FromFloatObject(t, d, round, unit_to_ns);
}
else {
#ifdef HAVE_LONG_LONG
PY_LONG_LONG sec;
+ Py_BUILD_ASSERT(sizeof(PY_LONG_LONG) <= sizeof(_PyTime_t));
+
sec = PyLong_AsLongLong(obj);
- assert(sizeof(PY_LONG_LONG) <= sizeof(_PyTime_t));
#else
long sec;
+ Py_BUILD_ASSERT(sizeof(PY_LONG_LONG) <= sizeof(_PyTime_t));
+
sec = PyLong_AsLong(obj);
- assert(sizeof(PY_LONG_LONG) <= sizeof(_PyTime_t));
#endif
if (sec == -1 && PyErr_Occurred()) {
if (PyErr_ExceptionMatches(PyExc_OverflowError))
_PyTime_overflow();
return -1;
}
- *t = sec * to_nanoseconds;
- if (*t / to_nanoseconds != sec) {
+
+ if (_PyTime_check_mul_overflow(sec, unit_to_ns)) {
_PyTime_overflow();
return -1;
}
+ *t = sec * unit_to_ns;
return 0;
}
}
@@ -284,22 +345,31 @@ _PyTime_FromMillisecondsObject(_PyTime_t *t, PyObject *obj, _PyTime_round_t roun
double
_PyTime_AsSecondsDouble(_PyTime_t t)
{
- _PyTime_t sec, ns;
- /* Divide using integers to avoid rounding issues on the integer part.
- 1e-9 cannot be stored exactly in IEEE 64-bit. */
- sec = t / SEC_TO_NS;
- ns = t % SEC_TO_NS;
- return (double)sec + (double)ns * 1e-9;
+ /* volatile avoids optimization changing how numbers are rounded */
+ volatile double d;
+
+ if (t % SEC_TO_NS == 0) {
+ _PyTime_t secs;
+ /* Divide using integers to avoid rounding issues on the integer part.
+ 1e-9 cannot be stored exactly in IEEE 64-bit. */
+ secs = t / SEC_TO_NS;
+ d = (double)secs;
+ }
+ else {
+ d = (double)t;
+ d /= 1e9;
+ }
+ return d;
}
PyObject *
_PyTime_AsNanosecondsObject(_PyTime_t t)
{
#ifdef HAVE_LONG_LONG
- assert(sizeof(PY_LONG_LONG) >= sizeof(_PyTime_t));
+ Py_BUILD_ASSERT(sizeof(PY_LONG_LONG) >= sizeof(_PyTime_t));
return PyLong_FromLongLong((PY_LONG_LONG)t);
#else
- assert(sizeof(long) >= sizeof(_PyTime_t));
+ Py_BUILD_ASSERT(sizeof(long) >= sizeof(_PyTime_t));
return PyLong_FromLong((long)t);
#endif
}
@@ -309,7 +379,20 @@ _PyTime_Divide(const _PyTime_t t, const _PyTime_t k,
const _PyTime_round_t round)
{
assert(k > 1);
- if (round == _PyTime_ROUND_CEILING) {
+ if (round == _PyTime_ROUND_HALF_EVEN) {
+ _PyTime_t x, r, abs_r;
+ x = t / k;
+ r = t % k;
+ abs_r = Py_ABS(r);
+ if (abs_r > k / 2 || (abs_r == k / 2 && (Py_ABS(x) & 1))) {
+ if (t >= 0)
+ x++;
+ else
+ x--;
+ }
+ return x;
+ }
+ else if (round == _PyTime_ROUND_CEILING) {
if (t >= 0)
return (t + k - 1) / k;
else
@@ -373,7 +456,7 @@ static int
_PyTime_AsTimevalStruct_impl(_PyTime_t t, struct timeval *tv,
_PyTime_round_t round, int raise)
{
- _PyTime_t secs;
+ _PyTime_t secs, secs2;
int us;
int res;
@@ -386,7 +469,8 @@ _PyTime_AsTimevalStruct_impl(_PyTime_t t, struct timeval *tv,
#endif
tv->tv_usec = us;
- if (res < 0 || (_PyTime_t)tv->tv_sec != secs) {
+ secs2 = (_PyTime_t)tv->tv_sec;
+ if (res < 0 || secs2 != secs) {
if (raise)
error_time_t_overflow();
return -1;
@@ -424,6 +508,7 @@ _PyTime_AsTimevalTime_t(_PyTime_t t, time_t *p_secs, int *us,
return 0;
}
+
#if defined(HAVE_CLOCK_GETTIME) || defined(HAVE_KQUEUE)
int
_PyTime_AsTimespec(_PyTime_t t, struct timespec *ts)
@@ -437,13 +522,13 @@ _PyTime_AsTimespec(_PyTime_t t, struct timespec *ts)
secs -= 1;
}
ts->tv_sec = (time_t)secs;
+ assert(0 <= nsec && nsec < SEC_TO_NS);
+ ts->tv_nsec = nsec;
+
if ((_PyTime_t)ts->tv_sec != secs) {
- _PyTime_overflow();
+ error_time_t_overflow();
return -1;
}
- ts->tv_nsec = nsec;
-
- assert(0 <= ts->tv_nsec && ts->tv_nsec <= 999999999);
return 0;
}
#endif
@@ -557,19 +642,20 @@ _PyTime_GetSystemClockWithInfo(_PyTime_t *t, _Py_clock_info_t *info)
return pygettimeofday(t, info, 1);
}
-
static int
pymonotonic(_PyTime_t *tp, _Py_clock_info_t *info, int raise)
{
#if defined(MS_WINDOWS)
- ULONGLONG result;
+ ULONGLONG ticks;
+ _PyTime_t t;
assert(info == NULL || raise);
- result = GetTickCount64();
+ ticks = GetTickCount64();
+ Py_BUILD_ASSERT(sizeof(ticks) <= sizeof(_PyTime_t));
+ t = (_PyTime_t)ticks;
- *tp = result * MS_TO_NS;
- if (*tp / MS_TO_NS != result) {
+ if (_PyTime_check_mul_overflow(t, MS_TO_NS)) {
if (raise) {
_PyTime_overflow();
return -1;
@@ -577,6 +663,7 @@ pymonotonic(_PyTime_t *tp, _Py_clock_info_t *info, int raise)
/* Hello, time traveler! */
assert(0);
}
+ *tp = t * MS_TO_NS;
if (info) {
DWORD timeAdjustment, timeIncrement;
@@ -689,8 +776,5 @@ _PyTime_Init(void)
if (_PyTime_GetMonotonicClockWithInfo(&t, NULL) < 0)
return -1;
- /* check that _PyTime_FromSeconds() cannot overflow */
- assert(INT_MAX <= _PyTime_MAX / SEC_TO_NS);
- assert(INT_MIN >= _PyTime_MIN / SEC_TO_NS);
return 0;
}
diff --git a/Python/random.c b/Python/random.c
index 772bfef0e8..9b42d5498c 100644
--- a/Python/random.c
+++ b/Python/random.c
@@ -379,7 +379,7 @@ _PyRandom_Init(void)
char *env;
unsigned char *secret = (unsigned char *)&_Py_HashSecret.uc;
Py_ssize_t secret_size = sizeof(_Py_HashSecret_t);
- assert(secret_size == sizeof(_Py_HashSecret.uc));
+ Py_BUILD_ASSERT(sizeof(_Py_HashSecret_t) == sizeof(_Py_HashSecret.uc));
if (_Py_HashSecret_Initialized)
return;
diff --git a/Python/symtable.c b/Python/symtable.c
index 64910d8a55..806364ad07 100644
--- a/Python/symtable.c
+++ b/Python/symtable.c
@@ -160,7 +160,7 @@ PyTypeObject PySTEntry_Type = {
};
static int symtable_analyze(struct symtable *st);
-static int symtable_warn(struct symtable *st, char *msg, int lineno);
+static int symtable_warn(struct symtable *st, const char *msg, int lineno);
static int symtable_enter_block(struct symtable *st, identifier name,
_Py_block_ty block, void *ast, int lineno,
int col_offset);
@@ -903,7 +903,7 @@ symtable_analyze(struct symtable *st)
static int
-symtable_warn(struct symtable *st, char *msg, int lineno)
+symtable_warn(struct symtable *st, const char *msg, int lineno)
{
PyObject *message = PyUnicode_FromString(msg);
if (message == NULL)
@@ -1439,6 +1439,14 @@ symtable_visit_expr(struct symtable *st, expr_ty e)
VISIT_SEQ(st, expr, e->v.Call.args);
VISIT_SEQ_WITH_NULL(st, keyword, e->v.Call.keywords);
break;
+ case FormattedValue_kind:
+ VISIT(st, expr, e->v.FormattedValue.value);
+ if (e->v.FormattedValue.format_spec)
+ VISIT(st, expr, e->v.FormattedValue.format_spec);
+ break;
+ case JoinedStr_kind:
+ VISIT_SEQ(st, expr, e->v.JoinedStr.values);
+ break;
case Num_kind:
case Str_kind:
case Bytes_kind:
diff --git a/Python/sysmodule.c b/Python/sysmodule.c
index 334f5d0c8e..f784f756d5 100644
--- a/Python/sysmodule.c
+++ b/Python/sysmodule.c
@@ -346,8 +346,10 @@ static PyObject *whatstrings[7] = {NULL, NULL, NULL, NULL, NULL, NULL, NULL};
static int
trace_init(void)
{
- static char *whatnames[7] = {"call", "exception", "line", "return",
- "c_call", "c_exception", "c_return"};
+ static const char * const whatnames[7] = {
+ "call", "exception", "line", "return",
+ "c_call", "c_exception", "c_return"
+ };
PyObject *name;
int i;
for (i = 0; i < 7; ++i) {
@@ -1643,15 +1645,11 @@ make_version_info(void)
/* sys.implementation values */
#define NAME "cpython"
const char *_PySys_ImplName = NAME;
-#define QUOTE(arg) #arg
-#define STRIFY(name) QUOTE(name)
-#define MAJOR STRIFY(PY_MAJOR_VERSION)
-#define MINOR STRIFY(PY_MINOR_VERSION)
+#define MAJOR Py_STRINGIFY(PY_MAJOR_VERSION)
+#define MINOR Py_STRINGIFY(PY_MINOR_VERSION)
#define TAG NAME "-" MAJOR MINOR
const char *_PySys_ImplCacheTag = TAG;
#undef NAME
-#undef QUOTE
-#undef STRIFY
#undef MAJOR
#undef MINOR
#undef TAG