diff --git a/docs/models/extensions/2_admin.rst b/docs/models/extensions/2_admin.rst index faf5385..a7ad723 100755 --- a/docs/models/extensions/2_admin.rst +++ b/docs/models/extensions/2_admin.rst @@ -158,7 +158,7 @@ Some useful configuration options:: @admin( inline: lala( type: stacked - extension: 300 + extra: 300 fields: *, ^c ) ) @@ -170,7 +170,7 @@ Some useful configuration options:: d Type: stacked (form under another), tabular (as a table), polymorphic (see later) -Extension: amount of empty lines +extra: amount of empty lines Fields: fields to show (:ref:`FieldList` syntax) Polymorphic inline @@ -412,7 +412,7 @@ Inlines also can be used in tabs:: @admin( inline: lala( type: stacked - extension: 300 + extra: 300 fields: *, ^c ) tabs: main(*), other(lala) diff --git a/tests/unit/model/test_populate_admin.py b/tests/unit/model/test_populate_admin.py index ccdb28c..fad600a 100644 --- a/tests/unit/model/test_populate_admin.py +++ b/tests/unit/model/test_populate_admin.py @@ -472,7 +472,7 @@ def test_admin_inline_simple(): inline = foo[AdminModelExtension].inlines[0] assert isinstance(inline, AdminInlineConfig) - assert inline.extension_count == 0 + assert inline.extra_count == 0 assert inline.model == foo assert inline.target_model == bar assert inline.inline_type == 'tabular' @@ -575,7 +575,7 @@ def test_admin_inline_details(): @admin( inline: lala( type: stacked - extension: 300 + extra: 300 fields: *, ^c ) ) @@ -595,7 +595,7 @@ def test_admin_inline_details(): inline = foo[AdminModelExtension].inlines[0] assert isinstance(inline, AdminInlineConfig) - assert inline.extension_count == 300 + assert inline.extra_count == 300 assert inline.inline_type == 'stacked' assert inline.field_names == ['d'] @@ -612,7 +612,7 @@ def test_admin_inline_tab(): @admin( inline: lala( type: stacked - extension: 300 + extra: 300 fields: *, ^c ) tabs: main(*), other(lala) diff --git a/zmei_generator/contrib/admin/extensions/model/admin.py b/zmei_generator/contrib/admin/extensions/model/admin.py index 0e91472..2a051ae 100644 --- a/zmei_generator/contrib/admin/extensions/model/admin.py +++ b/zmei_generator/contrib/admin/extensions/model/admin.py @@ -177,7 +177,7 @@ def __init__(self, admin, name): self.model = admin.model self.inline_name = name self.fields_expr = ['*'] - self.extension_count = 0 + self.extra_count = 0 self.inline_type = 'tabular' self.field = None @@ -207,8 +207,8 @@ def post_process(self): self.field_set = [f for f in field.target_model.filter_fields(self.fields_expr) if f.name != self.source_field_name] - if self.extension_count: - if self.extension_count > 0 and self.inline_type == 'polymorphic': + if self.extra_count: + if self.extra_count > 0 and self.inline_type == 'polymorphic': raise ValidationException('{}->{}: When using inline type "polymorphic" extension must be 0'.format( self.model.name, self.inline_name diff --git a/zmei_generator/contrib/admin/grammar/ModelExtensionAdmin.g4 b/zmei_generator/contrib/admin/grammar/ModelExtensionAdmin.g4 index bbe7069..8ee9fb2 100644 --- a/zmei_generator/contrib/admin/grammar/ModelExtensionAdmin.g4 +++ b/zmei_generator/contrib/admin/grammar/ModelExtensionAdmin.g4 @@ -38,7 +38,7 @@ an_admin_inline: (BRACE_OPEN ( inline_type - |inline_extension + |inline_extra |inline_fields |NL |COMA @@ -49,7 +49,7 @@ inline_name: id_or_kw; inline_type: KW_TYPE COLON inline_type_name; inline_type_name : (KW_INLINE_TYPE_TABULAR | KW_INLINE_TYPE_STACKED | KW_INLINE_TYPE_POLYMORPHIC) ; -inline_extension: KW_EXTENSION COLON DIGIT; +inline_extra: KW_EXTRA COLON DIGIT; inline_fields: KW_FIELDS COLON field_list_expr; an_admin_tabs: KW_TABS COLON an_admin_tab (COMA an_admin_tab)*; diff --git a/zmei_generator/contrib/admin/parsers/admin.py b/zmei_generator/contrib/admin/parsers/admin.py index 31ee94e..90f93e6 100644 --- a/zmei_generator/contrib/admin/parsers/admin.py +++ b/zmei_generator/contrib/admin/parsers/admin.py @@ -65,8 +65,8 @@ def enterInline_type(self, ctx: ZmeiLangParser.Inline_typeContext): def enterInline_fields(self, ctx: ZmeiLangParser.Inline_fieldsContext): self.inline.fields_expr = self._get_fields(ctx) - def enterInline_extension(self, ctx: ZmeiLangParser.Inline_extensionContext): - self.inline.extension_count = int(ctx.DIGIT().getText()) + def enterInline_extra(self, ctx: ZmeiLangParser.Inline_extraContext): + self.inline.extra_count = int(ctx.DIGIT().getText()) def enterAn_admin_css_file_name(self, ctx: ZmeiLangParser.An_admin_css_file_nameContext): self.model[AdminModelExtension].css.append(ctx.getText().strip('"\'')) diff --git a/zmei_generator/contrib/admin/templates/admin.py.tpl b/zmei_generator/contrib/admin/templates/admin.py.tpl index f673919..e401e16 100644 --- a/zmei_generator/contrib/admin/templates/admin.py.tpl +++ b/zmei_generator/contrib/admin/templates/admin.py.tpl @@ -17,7 +17,7 @@ class {{ inline.class_name }}({{ inline.parent_classes|join(', ') }}): {% endif %}{% if inline.target_model.sortable %} sortable = {{ inline.target_model.sortable_field.0|repr }} {% endif %}{% if not inline.inline_type == 'polymorphic' %} - extension = {{ inline.extension_count }} + extra = {{ inline.extra_count }} fk_name = '{{ inline.source_field_name }}' fields = [{{ inline.field_set|field_names() }}] {% else %}{% for model in inline.target_model.child_models %} diff --git a/zmei_generator/contrib/web/grammar/tokens.py b/zmei_generator/contrib/web/grammar/tokens.py index 28e1386..90b6265 100644 --- a/zmei_generator/contrib/web/grammar/tokens.py +++ b/zmei_generator/contrib/web/grammar/tokens.py @@ -95,7 +95,7 @@ KW_AUTH='auth', KW_COUNT='count', KW_I18N='i18n', - KW_EXTENSION='extension', + KW_EXTRA='extra', KW_TABS='tabs', KW_LIST='list', KW_READ_ONLY='read_only', diff --git a/zmei_generator/parser/gen/ZmeiLangParser.interp b/zmei_generator/parser/gen/ZmeiLangParser.interp index 200af5c..a2c5a46 100644 --- a/zmei_generator/parser/gen/ZmeiLangParser.interp +++ b/zmei_generator/parser/gen/ZmeiLangParser.interp @@ -105,7 +105,7 @@ null 'auth' 'count' 'i18n' -'extension' +'extra' 'tabs' 'list' 'read_only' @@ -267,7 +267,7 @@ KW_QUERY KW_AUTH KW_COUNT KW_I18N -KW_EXTENSION +KW_EXTRA KW_TABS KW_LIST KW_READ_ONLY @@ -448,7 +448,7 @@ an_admin_inline inline_name inline_type inline_type_name -inline_extension +inline_extra inline_fields an_admin_tabs an_admin_tab diff --git a/zmei_generator/parser/gen/ZmeiLangParser.py b/zmei_generator/parser/gen/ZmeiLangParser.py index e7fb7a4..180a61c 100644 --- a/zmei_generator/parser/gen/ZmeiLangParser.py +++ b/zmei_generator/parser/gen/ZmeiLangParser.py @@ -1,4 +1,4 @@ -# Generated from /Users/aleksandrrudakov/dev/zmei/generator/zmei_generator/parser/gen/grammar/ZmeiLangParser.g4 by ANTLR 4.7.2 +# Generated from /Users/alexanderbudanov/Sites/negative/generator/zmei_generator/parser/gen/grammar/ZmeiLangParser.g4 by ANTLR 4.7.2 # encoding: utf-8 from antlr4 import * from io import StringIO @@ -1409,7 +1409,7 @@ class ZmeiLangParser ( Parser ): "'css'", "'js'", "'tabular'", "'stacked'", "'polymorphic'", "'inline'", "'type'", "'user_field'", "'annotate'", "'on_create'", "'query'", "'auth'", "'count'", "'i18n'", - "'extension'", "'tabs'", "'list'", "'read_only'", "'list_editable'", + "'extra'", "'tabs'", "'list'", "'read_only'", "'list_editable'", "'list_filter'", "'list_search'", "'fields'", "'import'", "'as'", "", "", "", "", "", "", "'<'", "'>'", "':'", "'^'", @@ -1448,19 +1448,19 @@ class ZmeiLangParser ( Parser ): "KW_CSS", "KW_JS", "KW_INLINE_TYPE_TABULAR", "KW_INLINE_TYPE_STACKED", "KW_INLINE_TYPE_POLYMORPHIC", "KW_INLINE", "KW_TYPE", "KW_USER_FIELD", "KW_ANNOTATE", "KW_ON_CREATE", "KW_QUERY", - "KW_AUTH", "KW_COUNT", "KW_I18N", "KW_EXTENSION", - "KW_TABS", "KW_LIST", "KW_READ_ONLY", "KW_LIST_EDITABLE", - "KW_LIST_FILTER", "KW_LIST_SEARCH", "KW_FIELDS", "KW_IMPORT", - "KW_AS", "WRITE_MODE", "BOOL", "NL", "ID", "DIGIT", - "SIZE2D", "LT", "GT", "COLON", "EXCLUDE", "BRACE_OPEN", - "BRACE_CLOSE", "SQ_BRACE_OPEN", "SQ_BRACE_CLOSE", - "QUESTION_MARK", "UNDERSCORE", "DASH", "COMA", "DOT", - "HASH", "SLASH", "EQUALS", "DOLLAR", "AMP", "EXCLAM", - "STAR", "APPROX", "PIPE", "STRING_DQ", "STRING_SQ", - "COMMENT_LINE", "COMMENT_BLOCK", "UNICODE", "WS", - "COL_FIELD_CALCULATED", "ASSIGN", "ASSIGN_STATIC", - "CODE_BLOCK", "ERRCHAR", "PYTHON_CODE", "PYTHON_LINE_ERRCHAR", - "PYTHON_LINE_END", "PYTHON_EXPR_ERRCHAR", "PYTHON_LINE_NL" ] + "KW_AUTH", "KW_COUNT", "KW_I18N", "KW_EXTRA", "KW_TABS", + "KW_LIST", "KW_READ_ONLY", "KW_LIST_EDITABLE", "KW_LIST_FILTER", + "KW_LIST_SEARCH", "KW_FIELDS", "KW_IMPORT", "KW_AS", + "WRITE_MODE", "BOOL", "NL", "ID", "DIGIT", "SIZE2D", + "LT", "GT", "COLON", "EXCLUDE", "BRACE_OPEN", "BRACE_CLOSE", + "SQ_BRACE_OPEN", "SQ_BRACE_CLOSE", "QUESTION_MARK", + "UNDERSCORE", "DASH", "COMA", "DOT", "HASH", "SLASH", + "EQUALS", "DOLLAR", "AMP", "EXCLAM", "STAR", "APPROX", + "PIPE", "STRING_DQ", "STRING_SQ", "COMMENT_LINE", + "COMMENT_BLOCK", "UNICODE", "WS", "COL_FIELD_CALCULATED", + "ASSIGN", "ASSIGN_STATIC", "CODE_BLOCK", "ERRCHAR", + "PYTHON_CODE", "PYTHON_LINE_ERRCHAR", "PYTHON_LINE_END", + "PYTHON_EXPR_ERRCHAR", "PYTHON_LINE_NL" ] RULE_col_file = 0 RULE_page_imports = 1 @@ -1587,7 +1587,7 @@ class ZmeiLangParser ( Parser ): RULE_inline_name = 122 RULE_inline_type = 123 RULE_inline_type_name = 124 - RULE_inline_extension = 125 + RULE_inline_extra = 125 RULE_inline_fields = 126 RULE_an_admin_tabs = 127 RULE_an_admin_tab = 128 @@ -1781,7 +1781,7 @@ class ZmeiLangParser ( Parser ): "field_relation_related_name", "model_annotation", "an_admin", "an_admin_js", "an_admin_css", "an_admin_css_file_name", "an_admin_js_file_name", "an_admin_inlines", "an_admin_inline", - "inline_name", "inline_type", "inline_type_name", "inline_extension", + "inline_name", "inline_type", "inline_type_name", "inline_extra", "inline_fields", "an_admin_tabs", "an_admin_tab", "tab_name", "tab_verbose_name", "an_admin_list", "an_admin_read_only", "an_admin_list_editable", "an_admin_list_filter", "an_admin_list_search", @@ -1935,7 +1935,7 @@ class ZmeiLangParser ( Parser ): KW_AUTH=103 KW_COUNT=104 KW_I18N=105 - KW_EXTENSION=106 + KW_EXTRA=106 KW_TABS=107 KW_LIST=108 KW_READ_ONLY=109 @@ -2615,7 +2615,7 @@ def import_item(self): self.state = 654 self._errHandler.sync(self) token = self._input.LA(1) - if token in [ZmeiLangParser.KW_AUTH_TYPE_BASIC, ZmeiLangParser.KW_AUTH_TYPE_SESSION, ZmeiLangParser.KW_AUTH_TYPE_TOKEN, ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT, ZmeiLangParser.COL_FIELD_TYPE_HTML, ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA, ZmeiLangParser.COL_FIELD_TYPE_FLOAT, ZmeiLangParser.COL_FIELD_TYPE_DECIMAL, ZmeiLangParser.COL_FIELD_TYPE_DATE, ZmeiLangParser.COL_FIELD_TYPE_DATETIME, ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_TEXT, ZmeiLangParser.COL_FIELD_TYPE_INT, ZmeiLangParser.COL_FIELD_TYPE_SLUG, ZmeiLangParser.COL_FIELD_TYPE_BOOL, ZmeiLangParser.COL_FIELD_TYPE_ONE, ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE, ZmeiLangParser.COL_FIELD_TYPE_MANY, ZmeiLangParser.COL_FIELD_CHOICES, ZmeiLangParser.KW_THEME, ZmeiLangParser.KW_INSTALL, ZmeiLangParser.KW_HEADER, ZmeiLangParser.KW_SERVICES, ZmeiLangParser.KW_SELENIUM_PYTEST, ZmeiLangParser.KW_CHILD, ZmeiLangParser.KW_FILTER_OUT, ZmeiLangParser.KW_FILTER_IN, ZmeiLangParser.KW_PAGE, ZmeiLangParser.KW_LINK_SUFFIX, ZmeiLangParser.KW_URL_PREFIX, ZmeiLangParser.KW_CAN_EDIT, ZmeiLangParser.KW_OBJECT_EXPR, ZmeiLangParser.KW_BLOCK, ZmeiLangParser.KW_ITEM_NAME, ZmeiLangParser.KW_PK_PARAM, ZmeiLangParser.KW_LIST_FIELDS, ZmeiLangParser.KW_DELETE, ZmeiLangParser.KW_EDIT, ZmeiLangParser.KW_CREATE, ZmeiLangParser.KW_DETAIL, ZmeiLangParser.KW_SKIP, ZmeiLangParser.KW_FROM, ZmeiLangParser.KW_POLY_LIST, ZmeiLangParser.KW_CSS, ZmeiLangParser.KW_JS, ZmeiLangParser.KW_INLINE_TYPE_TABULAR, ZmeiLangParser.KW_INLINE_TYPE_STACKED, ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC, ZmeiLangParser.KW_INLINE, ZmeiLangParser.KW_TYPE, ZmeiLangParser.KW_USER_FIELD, ZmeiLangParser.KW_ANNOTATE, ZmeiLangParser.KW_ON_CREATE, ZmeiLangParser.KW_QUERY, ZmeiLangParser.KW_AUTH, ZmeiLangParser.KW_COUNT, ZmeiLangParser.KW_I18N, ZmeiLangParser.KW_EXTENSION, ZmeiLangParser.KW_TABS, ZmeiLangParser.KW_LIST, ZmeiLangParser.KW_READ_ONLY, ZmeiLangParser.KW_LIST_EDITABLE, ZmeiLangParser.KW_LIST_FILTER, ZmeiLangParser.KW_LIST_SEARCH, ZmeiLangParser.KW_FIELDS, ZmeiLangParser.KW_IMPORT, ZmeiLangParser.KW_AS, ZmeiLangParser.WRITE_MODE, ZmeiLangParser.BOOL, ZmeiLangParser.ID]: + if token in [ZmeiLangParser.KW_AUTH_TYPE_BASIC, ZmeiLangParser.KW_AUTH_TYPE_SESSION, ZmeiLangParser.KW_AUTH_TYPE_TOKEN, ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT, ZmeiLangParser.COL_FIELD_TYPE_HTML, ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA, ZmeiLangParser.COL_FIELD_TYPE_FLOAT, ZmeiLangParser.COL_FIELD_TYPE_DECIMAL, ZmeiLangParser.COL_FIELD_TYPE_DATE, ZmeiLangParser.COL_FIELD_TYPE_DATETIME, ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_TEXT, ZmeiLangParser.COL_FIELD_TYPE_INT, ZmeiLangParser.COL_FIELD_TYPE_SLUG, ZmeiLangParser.COL_FIELD_TYPE_BOOL, ZmeiLangParser.COL_FIELD_TYPE_ONE, ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE, ZmeiLangParser.COL_FIELD_TYPE_MANY, ZmeiLangParser.COL_FIELD_CHOICES, ZmeiLangParser.KW_THEME, ZmeiLangParser.KW_INSTALL, ZmeiLangParser.KW_HEADER, ZmeiLangParser.KW_SERVICES, ZmeiLangParser.KW_SELENIUM_PYTEST, ZmeiLangParser.KW_CHILD, ZmeiLangParser.KW_FILTER_OUT, ZmeiLangParser.KW_FILTER_IN, ZmeiLangParser.KW_PAGE, ZmeiLangParser.KW_LINK_SUFFIX, ZmeiLangParser.KW_URL_PREFIX, ZmeiLangParser.KW_CAN_EDIT, ZmeiLangParser.KW_OBJECT_EXPR, ZmeiLangParser.KW_BLOCK, ZmeiLangParser.KW_ITEM_NAME, ZmeiLangParser.KW_PK_PARAM, ZmeiLangParser.KW_LIST_FIELDS, ZmeiLangParser.KW_DELETE, ZmeiLangParser.KW_EDIT, ZmeiLangParser.KW_CREATE, ZmeiLangParser.KW_DETAIL, ZmeiLangParser.KW_SKIP, ZmeiLangParser.KW_FROM, ZmeiLangParser.KW_POLY_LIST, ZmeiLangParser.KW_CSS, ZmeiLangParser.KW_JS, ZmeiLangParser.KW_INLINE_TYPE_TABULAR, ZmeiLangParser.KW_INLINE_TYPE_STACKED, ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC, ZmeiLangParser.KW_INLINE, ZmeiLangParser.KW_TYPE, ZmeiLangParser.KW_USER_FIELD, ZmeiLangParser.KW_ANNOTATE, ZmeiLangParser.KW_ON_CREATE, ZmeiLangParser.KW_QUERY, ZmeiLangParser.KW_AUTH, ZmeiLangParser.KW_COUNT, ZmeiLangParser.KW_I18N, ZmeiLangParser.KW_EXTRA, ZmeiLangParser.KW_TABS, ZmeiLangParser.KW_LIST, ZmeiLangParser.KW_READ_ONLY, ZmeiLangParser.KW_LIST_EDITABLE, ZmeiLangParser.KW_LIST_FILTER, ZmeiLangParser.KW_LIST_SEARCH, ZmeiLangParser.KW_FIELDS, ZmeiLangParser.KW_IMPORT, ZmeiLangParser.KW_AS, ZmeiLangParser.WRITE_MODE, ZmeiLangParser.BOOL, ZmeiLangParser.ID]: self.enterOuterAlt(localctx, 1) self.state = 648 self.import_item_name() @@ -2976,8 +2976,8 @@ def KW_COUNT(self): def KW_I18N(self): return self.getToken(ZmeiLangParser.KW_I18N, 0) - def KW_EXTENSION(self): - return self.getToken(ZmeiLangParser.KW_EXTENSION, 0) + def KW_EXTRA(self): + return self.getToken(ZmeiLangParser.KW_EXTRA, 0) def KW_TABS(self): return self.getToken(ZmeiLangParser.KW_TABS, 0) @@ -3029,7 +3029,7 @@ def id_or_kw(self): self.enterOuterAlt(localctx, 1) self.state = 662 _la = self._input.LA(1) - if not((((_la) & ~0x3f) == 0 and ((1 << _la) & ((1 << ZmeiLangParser.KW_AUTH_TYPE_BASIC) | (1 << ZmeiLangParser.KW_AUTH_TYPE_SESSION) | (1 << ZmeiLangParser.KW_AUTH_TYPE_TOKEN) | (1 << ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT) | (1 << ZmeiLangParser.COL_FIELD_TYPE_HTML) | (1 << ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA) | (1 << ZmeiLangParser.COL_FIELD_TYPE_FLOAT) | (1 << ZmeiLangParser.COL_FIELD_TYPE_DECIMAL) | (1 << ZmeiLangParser.COL_FIELD_TYPE_DATE) | (1 << ZmeiLangParser.COL_FIELD_TYPE_DATETIME) | (1 << ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME) | (1 << ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME) | (1 << ZmeiLangParser.COL_FIELD_TYPE_IMAGE) | (1 << ZmeiLangParser.COL_FIELD_TYPE_FILE) | (1 << ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE) | (1 << ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE) | (1 << ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER) | (1 << ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER) | (1 << ZmeiLangParser.COL_FIELD_TYPE_TEXT) | (1 << ZmeiLangParser.COL_FIELD_TYPE_INT) | (1 << ZmeiLangParser.COL_FIELD_TYPE_SLUG) | (1 << ZmeiLangParser.COL_FIELD_TYPE_BOOL))) != 0) or ((((_la - 64)) & ~0x3f) == 0 and ((1 << (_la - 64)) & ((1 << (ZmeiLangParser.COL_FIELD_TYPE_ONE - 64)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE - 64)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_MANY - 64)) | (1 << (ZmeiLangParser.COL_FIELD_CHOICES - 64)) | (1 << (ZmeiLangParser.KW_THEME - 64)) | (1 << (ZmeiLangParser.KW_INSTALL - 64)) | (1 << (ZmeiLangParser.KW_HEADER - 64)) | (1 << (ZmeiLangParser.KW_SERVICES - 64)) | (1 << (ZmeiLangParser.KW_SELENIUM_PYTEST - 64)) | (1 << (ZmeiLangParser.KW_CHILD - 64)) | (1 << (ZmeiLangParser.KW_FILTER_OUT - 64)) | (1 << (ZmeiLangParser.KW_FILTER_IN - 64)) | (1 << (ZmeiLangParser.KW_PAGE - 64)) | (1 << (ZmeiLangParser.KW_LINK_SUFFIX - 64)) | (1 << (ZmeiLangParser.KW_URL_PREFIX - 64)) | (1 << (ZmeiLangParser.KW_CAN_EDIT - 64)) | (1 << (ZmeiLangParser.KW_OBJECT_EXPR - 64)) | (1 << (ZmeiLangParser.KW_BLOCK - 64)) | (1 << (ZmeiLangParser.KW_ITEM_NAME - 64)) | (1 << (ZmeiLangParser.KW_PK_PARAM - 64)) | (1 << (ZmeiLangParser.KW_LIST_FIELDS - 64)) | (1 << (ZmeiLangParser.KW_DELETE - 64)) | (1 << (ZmeiLangParser.KW_EDIT - 64)) | (1 << (ZmeiLangParser.KW_CREATE - 64)) | (1 << (ZmeiLangParser.KW_DETAIL - 64)) | (1 << (ZmeiLangParser.KW_SKIP - 64)) | (1 << (ZmeiLangParser.KW_FROM - 64)) | (1 << (ZmeiLangParser.KW_POLY_LIST - 64)) | (1 << (ZmeiLangParser.KW_CSS - 64)) | (1 << (ZmeiLangParser.KW_JS - 64)) | (1 << (ZmeiLangParser.KW_INLINE_TYPE_TABULAR - 64)) | (1 << (ZmeiLangParser.KW_INLINE_TYPE_STACKED - 64)) | (1 << (ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC - 64)) | (1 << (ZmeiLangParser.KW_INLINE - 64)) | (1 << (ZmeiLangParser.KW_TYPE - 64)) | (1 << (ZmeiLangParser.KW_USER_FIELD - 64)) | (1 << (ZmeiLangParser.KW_ANNOTATE - 64)) | (1 << (ZmeiLangParser.KW_ON_CREATE - 64)) | (1 << (ZmeiLangParser.KW_QUERY - 64)) | (1 << (ZmeiLangParser.KW_AUTH - 64)) | (1 << (ZmeiLangParser.KW_COUNT - 64)) | (1 << (ZmeiLangParser.KW_I18N - 64)) | (1 << (ZmeiLangParser.KW_EXTENSION - 64)) | (1 << (ZmeiLangParser.KW_TABS - 64)) | (1 << (ZmeiLangParser.KW_LIST - 64)) | (1 << (ZmeiLangParser.KW_READ_ONLY - 64)) | (1 << (ZmeiLangParser.KW_LIST_EDITABLE - 64)) | (1 << (ZmeiLangParser.KW_LIST_FILTER - 64)) | (1 << (ZmeiLangParser.KW_LIST_SEARCH - 64)) | (1 << (ZmeiLangParser.KW_FIELDS - 64)) | (1 << (ZmeiLangParser.KW_IMPORT - 64)) | (1 << (ZmeiLangParser.KW_AS - 64)) | (1 << (ZmeiLangParser.WRITE_MODE - 64)) | (1 << (ZmeiLangParser.BOOL - 64)) | (1 << (ZmeiLangParser.ID - 64)))) != 0)): + if not((((_la) & ~0x3f) == 0 and ((1 << _la) & ((1 << ZmeiLangParser.KW_AUTH_TYPE_BASIC) | (1 << ZmeiLangParser.KW_AUTH_TYPE_SESSION) | (1 << ZmeiLangParser.KW_AUTH_TYPE_TOKEN) | (1 << ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT) | (1 << ZmeiLangParser.COL_FIELD_TYPE_HTML) | (1 << ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA) | (1 << ZmeiLangParser.COL_FIELD_TYPE_FLOAT) | (1 << ZmeiLangParser.COL_FIELD_TYPE_DECIMAL) | (1 << ZmeiLangParser.COL_FIELD_TYPE_DATE) | (1 << ZmeiLangParser.COL_FIELD_TYPE_DATETIME) | (1 << ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME) | (1 << ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME) | (1 << ZmeiLangParser.COL_FIELD_TYPE_IMAGE) | (1 << ZmeiLangParser.COL_FIELD_TYPE_FILE) | (1 << ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE) | (1 << ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE) | (1 << ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER) | (1 << ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER) | (1 << ZmeiLangParser.COL_FIELD_TYPE_TEXT) | (1 << ZmeiLangParser.COL_FIELD_TYPE_INT) | (1 << ZmeiLangParser.COL_FIELD_TYPE_SLUG) | (1 << ZmeiLangParser.COL_FIELD_TYPE_BOOL))) != 0) or ((((_la - 64)) & ~0x3f) == 0 and ((1 << (_la - 64)) & ((1 << (ZmeiLangParser.COL_FIELD_TYPE_ONE - 64)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE - 64)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_MANY - 64)) | (1 << (ZmeiLangParser.COL_FIELD_CHOICES - 64)) | (1 << (ZmeiLangParser.KW_THEME - 64)) | (1 << (ZmeiLangParser.KW_INSTALL - 64)) | (1 << (ZmeiLangParser.KW_HEADER - 64)) | (1 << (ZmeiLangParser.KW_SERVICES - 64)) | (1 << (ZmeiLangParser.KW_SELENIUM_PYTEST - 64)) | (1 << (ZmeiLangParser.KW_CHILD - 64)) | (1 << (ZmeiLangParser.KW_FILTER_OUT - 64)) | (1 << (ZmeiLangParser.KW_FILTER_IN - 64)) | (1 << (ZmeiLangParser.KW_PAGE - 64)) | (1 << (ZmeiLangParser.KW_LINK_SUFFIX - 64)) | (1 << (ZmeiLangParser.KW_URL_PREFIX - 64)) | (1 << (ZmeiLangParser.KW_CAN_EDIT - 64)) | (1 << (ZmeiLangParser.KW_OBJECT_EXPR - 64)) | (1 << (ZmeiLangParser.KW_BLOCK - 64)) | (1 << (ZmeiLangParser.KW_ITEM_NAME - 64)) | (1 << (ZmeiLangParser.KW_PK_PARAM - 64)) | (1 << (ZmeiLangParser.KW_LIST_FIELDS - 64)) | (1 << (ZmeiLangParser.KW_DELETE - 64)) | (1 << (ZmeiLangParser.KW_EDIT - 64)) | (1 << (ZmeiLangParser.KW_CREATE - 64)) | (1 << (ZmeiLangParser.KW_DETAIL - 64)) | (1 << (ZmeiLangParser.KW_SKIP - 64)) | (1 << (ZmeiLangParser.KW_FROM - 64)) | (1 << (ZmeiLangParser.KW_POLY_LIST - 64)) | (1 << (ZmeiLangParser.KW_CSS - 64)) | (1 << (ZmeiLangParser.KW_JS - 64)) | (1 << (ZmeiLangParser.KW_INLINE_TYPE_TABULAR - 64)) | (1 << (ZmeiLangParser.KW_INLINE_TYPE_STACKED - 64)) | (1 << (ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC - 64)) | (1 << (ZmeiLangParser.KW_INLINE - 64)) | (1 << (ZmeiLangParser.KW_TYPE - 64)) | (1 << (ZmeiLangParser.KW_USER_FIELD - 64)) | (1 << (ZmeiLangParser.KW_ANNOTATE - 64)) | (1 << (ZmeiLangParser.KW_ON_CREATE - 64)) | (1 << (ZmeiLangParser.KW_QUERY - 64)) | (1 << (ZmeiLangParser.KW_AUTH - 64)) | (1 << (ZmeiLangParser.KW_COUNT - 64)) | (1 << (ZmeiLangParser.KW_I18N - 64)) | (1 << (ZmeiLangParser.KW_EXTRA - 64)) | (1 << (ZmeiLangParser.KW_TABS - 64)) | (1 << (ZmeiLangParser.KW_LIST - 64)) | (1 << (ZmeiLangParser.KW_READ_ONLY - 64)) | (1 << (ZmeiLangParser.KW_LIST_EDITABLE - 64)) | (1 << (ZmeiLangParser.KW_LIST_FILTER - 64)) | (1 << (ZmeiLangParser.KW_LIST_SEARCH - 64)) | (1 << (ZmeiLangParser.KW_FIELDS - 64)) | (1 << (ZmeiLangParser.KW_IMPORT - 64)) | (1 << (ZmeiLangParser.KW_AS - 64)) | (1 << (ZmeiLangParser.WRITE_MODE - 64)) | (1 << (ZmeiLangParser.BOOL - 64)) | (1 << (ZmeiLangParser.ID - 64)))) != 0)): self._errHandler.recoverInline(self) else: self._errHandler.reportMatch(self) @@ -3254,7 +3254,7 @@ def field_list_expr(self): _alt = self._interp.adaptivePredict(self._input,22,self._ctx) pass - elif token in [ZmeiLangParser.KW_AUTH_TYPE_BASIC, ZmeiLangParser.KW_AUTH_TYPE_SESSION, ZmeiLangParser.KW_AUTH_TYPE_TOKEN, ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT, ZmeiLangParser.COL_FIELD_TYPE_HTML, ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA, ZmeiLangParser.COL_FIELD_TYPE_FLOAT, ZmeiLangParser.COL_FIELD_TYPE_DECIMAL, ZmeiLangParser.COL_FIELD_TYPE_DATE, ZmeiLangParser.COL_FIELD_TYPE_DATETIME, ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_TEXT, ZmeiLangParser.COL_FIELD_TYPE_INT, ZmeiLangParser.COL_FIELD_TYPE_SLUG, ZmeiLangParser.COL_FIELD_TYPE_BOOL, ZmeiLangParser.COL_FIELD_TYPE_ONE, ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE, ZmeiLangParser.COL_FIELD_TYPE_MANY, ZmeiLangParser.COL_FIELD_CHOICES, ZmeiLangParser.KW_THEME, ZmeiLangParser.KW_INSTALL, ZmeiLangParser.KW_HEADER, ZmeiLangParser.KW_SERVICES, ZmeiLangParser.KW_SELENIUM_PYTEST, ZmeiLangParser.KW_CHILD, ZmeiLangParser.KW_FILTER_OUT, ZmeiLangParser.KW_FILTER_IN, ZmeiLangParser.KW_PAGE, ZmeiLangParser.KW_LINK_SUFFIX, ZmeiLangParser.KW_URL_PREFIX, ZmeiLangParser.KW_CAN_EDIT, ZmeiLangParser.KW_OBJECT_EXPR, ZmeiLangParser.KW_BLOCK, ZmeiLangParser.KW_ITEM_NAME, ZmeiLangParser.KW_PK_PARAM, ZmeiLangParser.KW_LIST_FIELDS, ZmeiLangParser.KW_DELETE, ZmeiLangParser.KW_EDIT, ZmeiLangParser.KW_CREATE, ZmeiLangParser.KW_DETAIL, ZmeiLangParser.KW_SKIP, ZmeiLangParser.KW_FROM, ZmeiLangParser.KW_POLY_LIST, ZmeiLangParser.KW_CSS, ZmeiLangParser.KW_JS, ZmeiLangParser.KW_INLINE_TYPE_TABULAR, ZmeiLangParser.KW_INLINE_TYPE_STACKED, ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC, ZmeiLangParser.KW_INLINE, ZmeiLangParser.KW_TYPE, ZmeiLangParser.KW_USER_FIELD, ZmeiLangParser.KW_ANNOTATE, ZmeiLangParser.KW_ON_CREATE, ZmeiLangParser.KW_QUERY, ZmeiLangParser.KW_AUTH, ZmeiLangParser.KW_COUNT, ZmeiLangParser.KW_I18N, ZmeiLangParser.KW_EXTENSION, ZmeiLangParser.KW_TABS, ZmeiLangParser.KW_LIST, ZmeiLangParser.KW_READ_ONLY, ZmeiLangParser.KW_LIST_EDITABLE, ZmeiLangParser.KW_LIST_FILTER, ZmeiLangParser.KW_LIST_SEARCH, ZmeiLangParser.KW_FIELDS, ZmeiLangParser.KW_IMPORT, ZmeiLangParser.KW_AS, ZmeiLangParser.WRITE_MODE, ZmeiLangParser.BOOL, ZmeiLangParser.ID]: + elif token in [ZmeiLangParser.KW_AUTH_TYPE_BASIC, ZmeiLangParser.KW_AUTH_TYPE_SESSION, ZmeiLangParser.KW_AUTH_TYPE_TOKEN, ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT, ZmeiLangParser.COL_FIELD_TYPE_HTML, ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA, ZmeiLangParser.COL_FIELD_TYPE_FLOAT, ZmeiLangParser.COL_FIELD_TYPE_DECIMAL, ZmeiLangParser.COL_FIELD_TYPE_DATE, ZmeiLangParser.COL_FIELD_TYPE_DATETIME, ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_TEXT, ZmeiLangParser.COL_FIELD_TYPE_INT, ZmeiLangParser.COL_FIELD_TYPE_SLUG, ZmeiLangParser.COL_FIELD_TYPE_BOOL, ZmeiLangParser.COL_FIELD_TYPE_ONE, ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE, ZmeiLangParser.COL_FIELD_TYPE_MANY, ZmeiLangParser.COL_FIELD_CHOICES, ZmeiLangParser.KW_THEME, ZmeiLangParser.KW_INSTALL, ZmeiLangParser.KW_HEADER, ZmeiLangParser.KW_SERVICES, ZmeiLangParser.KW_SELENIUM_PYTEST, ZmeiLangParser.KW_CHILD, ZmeiLangParser.KW_FILTER_OUT, ZmeiLangParser.KW_FILTER_IN, ZmeiLangParser.KW_PAGE, ZmeiLangParser.KW_LINK_SUFFIX, ZmeiLangParser.KW_URL_PREFIX, ZmeiLangParser.KW_CAN_EDIT, ZmeiLangParser.KW_OBJECT_EXPR, ZmeiLangParser.KW_BLOCK, ZmeiLangParser.KW_ITEM_NAME, ZmeiLangParser.KW_PK_PARAM, ZmeiLangParser.KW_LIST_FIELDS, ZmeiLangParser.KW_DELETE, ZmeiLangParser.KW_EDIT, ZmeiLangParser.KW_CREATE, ZmeiLangParser.KW_DETAIL, ZmeiLangParser.KW_SKIP, ZmeiLangParser.KW_FROM, ZmeiLangParser.KW_POLY_LIST, ZmeiLangParser.KW_CSS, ZmeiLangParser.KW_JS, ZmeiLangParser.KW_INLINE_TYPE_TABULAR, ZmeiLangParser.KW_INLINE_TYPE_STACKED, ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC, ZmeiLangParser.KW_INLINE, ZmeiLangParser.KW_TYPE, ZmeiLangParser.KW_USER_FIELD, ZmeiLangParser.KW_ANNOTATE, ZmeiLangParser.KW_ON_CREATE, ZmeiLangParser.KW_QUERY, ZmeiLangParser.KW_AUTH, ZmeiLangParser.KW_COUNT, ZmeiLangParser.KW_I18N, ZmeiLangParser.KW_EXTRA, ZmeiLangParser.KW_TABS, ZmeiLangParser.KW_LIST, ZmeiLangParser.KW_READ_ONLY, ZmeiLangParser.KW_LIST_EDITABLE, ZmeiLangParser.KW_LIST_FILTER, ZmeiLangParser.KW_LIST_SEARCH, ZmeiLangParser.KW_FIELDS, ZmeiLangParser.KW_IMPORT, ZmeiLangParser.KW_AS, ZmeiLangParser.WRITE_MODE, ZmeiLangParser.BOOL, ZmeiLangParser.ID]: self.enterOuterAlt(localctx, 2) self.state = 692 self.id_or_kw() @@ -4118,7 +4118,7 @@ def an_gitlab(self): self.state = 787 self._errHandler.sync(self) _la = self._input.LA(1) - if not (((((_la - 42)) & ~0x3f) == 0 and ((1 << (_la - 42)) & ((1 << (ZmeiLangParser.KW_AUTH_TYPE_BASIC - 42)) | (1 << (ZmeiLangParser.KW_AUTH_TYPE_SESSION - 42)) | (1 << (ZmeiLangParser.KW_AUTH_TYPE_TOKEN - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_HTML - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FLOAT - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_DECIMAL - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_DATE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_DATETIME - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_IMAGE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_TEXT - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_INT - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_SLUG - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_BOOL - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_ONE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_MANY - 42)) | (1 << (ZmeiLangParser.COL_FIELD_CHOICES - 42)) | (1 << (ZmeiLangParser.KW_THEME - 42)) | (1 << (ZmeiLangParser.KW_INSTALL - 42)) | (1 << (ZmeiLangParser.KW_HEADER - 42)) | (1 << (ZmeiLangParser.KW_SERVICES - 42)) | (1 << (ZmeiLangParser.KW_SELENIUM_PYTEST - 42)) | (1 << (ZmeiLangParser.KW_CHILD - 42)) | (1 << (ZmeiLangParser.KW_FILTER_OUT - 42)) | (1 << (ZmeiLangParser.KW_FILTER_IN - 42)) | (1 << (ZmeiLangParser.KW_PAGE - 42)) | (1 << (ZmeiLangParser.KW_LINK_SUFFIX - 42)) | (1 << (ZmeiLangParser.KW_URL_PREFIX - 42)) | (1 << (ZmeiLangParser.KW_CAN_EDIT - 42)) | (1 << (ZmeiLangParser.KW_OBJECT_EXPR - 42)) | (1 << (ZmeiLangParser.KW_BLOCK - 42)) | (1 << (ZmeiLangParser.KW_ITEM_NAME - 42)) | (1 << (ZmeiLangParser.KW_PK_PARAM - 42)) | (1 << (ZmeiLangParser.KW_LIST_FIELDS - 42)) | (1 << (ZmeiLangParser.KW_DELETE - 42)) | (1 << (ZmeiLangParser.KW_EDIT - 42)) | (1 << (ZmeiLangParser.KW_CREATE - 42)) | (1 << (ZmeiLangParser.KW_DETAIL - 42)) | (1 << (ZmeiLangParser.KW_SKIP - 42)) | (1 << (ZmeiLangParser.KW_FROM - 42)) | (1 << (ZmeiLangParser.KW_POLY_LIST - 42)) | (1 << (ZmeiLangParser.KW_CSS - 42)) | (1 << (ZmeiLangParser.KW_JS - 42)) | (1 << (ZmeiLangParser.KW_INLINE_TYPE_TABULAR - 42)) | (1 << (ZmeiLangParser.KW_INLINE_TYPE_STACKED - 42)) | (1 << (ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC - 42)) | (1 << (ZmeiLangParser.KW_INLINE - 42)) | (1 << (ZmeiLangParser.KW_TYPE - 42)) | (1 << (ZmeiLangParser.KW_USER_FIELD - 42)) | (1 << (ZmeiLangParser.KW_ANNOTATE - 42)) | (1 << (ZmeiLangParser.KW_ON_CREATE - 42)) | (1 << (ZmeiLangParser.KW_QUERY - 42)) | (1 << (ZmeiLangParser.KW_AUTH - 42)) | (1 << (ZmeiLangParser.KW_COUNT - 42)) | (1 << (ZmeiLangParser.KW_I18N - 42)))) != 0) or ((((_la - 106)) & ~0x3f) == 0 and ((1 << (_la - 106)) & ((1 << (ZmeiLangParser.KW_EXTENSION - 106)) | (1 << (ZmeiLangParser.KW_TABS - 106)) | (1 << (ZmeiLangParser.KW_LIST - 106)) | (1 << (ZmeiLangParser.KW_READ_ONLY - 106)) | (1 << (ZmeiLangParser.KW_LIST_EDITABLE - 106)) | (1 << (ZmeiLangParser.KW_LIST_FILTER - 106)) | (1 << (ZmeiLangParser.KW_LIST_SEARCH - 106)) | (1 << (ZmeiLangParser.KW_FIELDS - 106)) | (1 << (ZmeiLangParser.KW_IMPORT - 106)) | (1 << (ZmeiLangParser.KW_AS - 106)) | (1 << (ZmeiLangParser.WRITE_MODE - 106)) | (1 << (ZmeiLangParser.BOOL - 106)) | (1 << (ZmeiLangParser.ID - 106)) | (1 << (ZmeiLangParser.DASH - 106)) | (1 << (ZmeiLangParser.SLASH - 106)) | (1 << (ZmeiLangParser.STAR - 106)))) != 0)): + if not (((((_la - 42)) & ~0x3f) == 0 and ((1 << (_la - 42)) & ((1 << (ZmeiLangParser.KW_AUTH_TYPE_BASIC - 42)) | (1 << (ZmeiLangParser.KW_AUTH_TYPE_SESSION - 42)) | (1 << (ZmeiLangParser.KW_AUTH_TYPE_TOKEN - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_HTML - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FLOAT - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_DECIMAL - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_DATE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_DATETIME - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_IMAGE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_TEXT - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_INT - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_SLUG - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_BOOL - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_ONE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_MANY - 42)) | (1 << (ZmeiLangParser.COL_FIELD_CHOICES - 42)) | (1 << (ZmeiLangParser.KW_THEME - 42)) | (1 << (ZmeiLangParser.KW_INSTALL - 42)) | (1 << (ZmeiLangParser.KW_HEADER - 42)) | (1 << (ZmeiLangParser.KW_SERVICES - 42)) | (1 << (ZmeiLangParser.KW_SELENIUM_PYTEST - 42)) | (1 << (ZmeiLangParser.KW_CHILD - 42)) | (1 << (ZmeiLangParser.KW_FILTER_OUT - 42)) | (1 << (ZmeiLangParser.KW_FILTER_IN - 42)) | (1 << (ZmeiLangParser.KW_PAGE - 42)) | (1 << (ZmeiLangParser.KW_LINK_SUFFIX - 42)) | (1 << (ZmeiLangParser.KW_URL_PREFIX - 42)) | (1 << (ZmeiLangParser.KW_CAN_EDIT - 42)) | (1 << (ZmeiLangParser.KW_OBJECT_EXPR - 42)) | (1 << (ZmeiLangParser.KW_BLOCK - 42)) | (1 << (ZmeiLangParser.KW_ITEM_NAME - 42)) | (1 << (ZmeiLangParser.KW_PK_PARAM - 42)) | (1 << (ZmeiLangParser.KW_LIST_FIELDS - 42)) | (1 << (ZmeiLangParser.KW_DELETE - 42)) | (1 << (ZmeiLangParser.KW_EDIT - 42)) | (1 << (ZmeiLangParser.KW_CREATE - 42)) | (1 << (ZmeiLangParser.KW_DETAIL - 42)) | (1 << (ZmeiLangParser.KW_SKIP - 42)) | (1 << (ZmeiLangParser.KW_FROM - 42)) | (1 << (ZmeiLangParser.KW_POLY_LIST - 42)) | (1 << (ZmeiLangParser.KW_CSS - 42)) | (1 << (ZmeiLangParser.KW_JS - 42)) | (1 << (ZmeiLangParser.KW_INLINE_TYPE_TABULAR - 42)) | (1 << (ZmeiLangParser.KW_INLINE_TYPE_STACKED - 42)) | (1 << (ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC - 42)) | (1 << (ZmeiLangParser.KW_INLINE - 42)) | (1 << (ZmeiLangParser.KW_TYPE - 42)) | (1 << (ZmeiLangParser.KW_USER_FIELD - 42)) | (1 << (ZmeiLangParser.KW_ANNOTATE - 42)) | (1 << (ZmeiLangParser.KW_ON_CREATE - 42)) | (1 << (ZmeiLangParser.KW_QUERY - 42)) | (1 << (ZmeiLangParser.KW_AUTH - 42)) | (1 << (ZmeiLangParser.KW_COUNT - 42)) | (1 << (ZmeiLangParser.KW_I18N - 42)))) != 0) or ((((_la - 106)) & ~0x3f) == 0 and ((1 << (_la - 106)) & ((1 << (ZmeiLangParser.KW_EXTRA - 106)) | (1 << (ZmeiLangParser.KW_TABS - 106)) | (1 << (ZmeiLangParser.KW_LIST - 106)) | (1 << (ZmeiLangParser.KW_READ_ONLY - 106)) | (1 << (ZmeiLangParser.KW_LIST_EDITABLE - 106)) | (1 << (ZmeiLangParser.KW_LIST_FILTER - 106)) | (1 << (ZmeiLangParser.KW_LIST_SEARCH - 106)) | (1 << (ZmeiLangParser.KW_FIELDS - 106)) | (1 << (ZmeiLangParser.KW_IMPORT - 106)) | (1 << (ZmeiLangParser.KW_AS - 106)) | (1 << (ZmeiLangParser.WRITE_MODE - 106)) | (1 << (ZmeiLangParser.BOOL - 106)) | (1 << (ZmeiLangParser.ID - 106)) | (1 << (ZmeiLangParser.DASH - 106)) | (1 << (ZmeiLangParser.SLASH - 106)) | (1 << (ZmeiLangParser.STAR - 106)))) != 0)): break self.state = 792 @@ -4889,7 +4889,7 @@ def an_gitlab_branch_name(self): self.state = 954 self._errHandler.sync(self) token = self._input.LA(1) - if token in [ZmeiLangParser.KW_AUTH_TYPE_BASIC, ZmeiLangParser.KW_AUTH_TYPE_SESSION, ZmeiLangParser.KW_AUTH_TYPE_TOKEN, ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT, ZmeiLangParser.COL_FIELD_TYPE_HTML, ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA, ZmeiLangParser.COL_FIELD_TYPE_FLOAT, ZmeiLangParser.COL_FIELD_TYPE_DECIMAL, ZmeiLangParser.COL_FIELD_TYPE_DATE, ZmeiLangParser.COL_FIELD_TYPE_DATETIME, ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_TEXT, ZmeiLangParser.COL_FIELD_TYPE_INT, ZmeiLangParser.COL_FIELD_TYPE_SLUG, ZmeiLangParser.COL_FIELD_TYPE_BOOL, ZmeiLangParser.COL_FIELD_TYPE_ONE, ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE, ZmeiLangParser.COL_FIELD_TYPE_MANY, ZmeiLangParser.COL_FIELD_CHOICES, ZmeiLangParser.KW_THEME, ZmeiLangParser.KW_INSTALL, ZmeiLangParser.KW_HEADER, ZmeiLangParser.KW_SERVICES, ZmeiLangParser.KW_SELENIUM_PYTEST, ZmeiLangParser.KW_CHILD, ZmeiLangParser.KW_FILTER_OUT, ZmeiLangParser.KW_FILTER_IN, ZmeiLangParser.KW_PAGE, ZmeiLangParser.KW_LINK_SUFFIX, ZmeiLangParser.KW_URL_PREFIX, ZmeiLangParser.KW_CAN_EDIT, ZmeiLangParser.KW_OBJECT_EXPR, ZmeiLangParser.KW_BLOCK, ZmeiLangParser.KW_ITEM_NAME, ZmeiLangParser.KW_PK_PARAM, ZmeiLangParser.KW_LIST_FIELDS, ZmeiLangParser.KW_DELETE, ZmeiLangParser.KW_EDIT, ZmeiLangParser.KW_CREATE, ZmeiLangParser.KW_DETAIL, ZmeiLangParser.KW_SKIP, ZmeiLangParser.KW_FROM, ZmeiLangParser.KW_POLY_LIST, ZmeiLangParser.KW_CSS, ZmeiLangParser.KW_JS, ZmeiLangParser.KW_INLINE_TYPE_TABULAR, ZmeiLangParser.KW_INLINE_TYPE_STACKED, ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC, ZmeiLangParser.KW_INLINE, ZmeiLangParser.KW_TYPE, ZmeiLangParser.KW_USER_FIELD, ZmeiLangParser.KW_ANNOTATE, ZmeiLangParser.KW_ON_CREATE, ZmeiLangParser.KW_QUERY, ZmeiLangParser.KW_AUTH, ZmeiLangParser.KW_COUNT, ZmeiLangParser.KW_I18N, ZmeiLangParser.KW_EXTENSION, ZmeiLangParser.KW_TABS, ZmeiLangParser.KW_LIST, ZmeiLangParser.KW_READ_ONLY, ZmeiLangParser.KW_LIST_EDITABLE, ZmeiLangParser.KW_LIST_FILTER, ZmeiLangParser.KW_LIST_SEARCH, ZmeiLangParser.KW_FIELDS, ZmeiLangParser.KW_IMPORT, ZmeiLangParser.KW_AS, ZmeiLangParser.WRITE_MODE, ZmeiLangParser.BOOL, ZmeiLangParser.ID]: + if token in [ZmeiLangParser.KW_AUTH_TYPE_BASIC, ZmeiLangParser.KW_AUTH_TYPE_SESSION, ZmeiLangParser.KW_AUTH_TYPE_TOKEN, ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT, ZmeiLangParser.COL_FIELD_TYPE_HTML, ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA, ZmeiLangParser.COL_FIELD_TYPE_FLOAT, ZmeiLangParser.COL_FIELD_TYPE_DECIMAL, ZmeiLangParser.COL_FIELD_TYPE_DATE, ZmeiLangParser.COL_FIELD_TYPE_DATETIME, ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_TEXT, ZmeiLangParser.COL_FIELD_TYPE_INT, ZmeiLangParser.COL_FIELD_TYPE_SLUG, ZmeiLangParser.COL_FIELD_TYPE_BOOL, ZmeiLangParser.COL_FIELD_TYPE_ONE, ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE, ZmeiLangParser.COL_FIELD_TYPE_MANY, ZmeiLangParser.COL_FIELD_CHOICES, ZmeiLangParser.KW_THEME, ZmeiLangParser.KW_INSTALL, ZmeiLangParser.KW_HEADER, ZmeiLangParser.KW_SERVICES, ZmeiLangParser.KW_SELENIUM_PYTEST, ZmeiLangParser.KW_CHILD, ZmeiLangParser.KW_FILTER_OUT, ZmeiLangParser.KW_FILTER_IN, ZmeiLangParser.KW_PAGE, ZmeiLangParser.KW_LINK_SUFFIX, ZmeiLangParser.KW_URL_PREFIX, ZmeiLangParser.KW_CAN_EDIT, ZmeiLangParser.KW_OBJECT_EXPR, ZmeiLangParser.KW_BLOCK, ZmeiLangParser.KW_ITEM_NAME, ZmeiLangParser.KW_PK_PARAM, ZmeiLangParser.KW_LIST_FIELDS, ZmeiLangParser.KW_DELETE, ZmeiLangParser.KW_EDIT, ZmeiLangParser.KW_CREATE, ZmeiLangParser.KW_DETAIL, ZmeiLangParser.KW_SKIP, ZmeiLangParser.KW_FROM, ZmeiLangParser.KW_POLY_LIST, ZmeiLangParser.KW_CSS, ZmeiLangParser.KW_JS, ZmeiLangParser.KW_INLINE_TYPE_TABULAR, ZmeiLangParser.KW_INLINE_TYPE_STACKED, ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC, ZmeiLangParser.KW_INLINE, ZmeiLangParser.KW_TYPE, ZmeiLangParser.KW_USER_FIELD, ZmeiLangParser.KW_ANNOTATE, ZmeiLangParser.KW_ON_CREATE, ZmeiLangParser.KW_QUERY, ZmeiLangParser.KW_AUTH, ZmeiLangParser.KW_COUNT, ZmeiLangParser.KW_I18N, ZmeiLangParser.KW_EXTRA, ZmeiLangParser.KW_TABS, ZmeiLangParser.KW_LIST, ZmeiLangParser.KW_READ_ONLY, ZmeiLangParser.KW_LIST_EDITABLE, ZmeiLangParser.KW_LIST_FILTER, ZmeiLangParser.KW_LIST_SEARCH, ZmeiLangParser.KW_FIELDS, ZmeiLangParser.KW_IMPORT, ZmeiLangParser.KW_AS, ZmeiLangParser.WRITE_MODE, ZmeiLangParser.BOOL, ZmeiLangParser.ID]: self.state = 950 self.id_or_kw() pass @@ -4911,7 +4911,7 @@ def an_gitlab_branch_name(self): self.state = 956 self._errHandler.sync(self) _la = self._input.LA(1) - if not (((((_la - 42)) & ~0x3f) == 0 and ((1 << (_la - 42)) & ((1 << (ZmeiLangParser.KW_AUTH_TYPE_BASIC - 42)) | (1 << (ZmeiLangParser.KW_AUTH_TYPE_SESSION - 42)) | (1 << (ZmeiLangParser.KW_AUTH_TYPE_TOKEN - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_HTML - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FLOAT - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_DECIMAL - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_DATE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_DATETIME - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_IMAGE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_TEXT - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_INT - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_SLUG - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_BOOL - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_ONE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_MANY - 42)) | (1 << (ZmeiLangParser.COL_FIELD_CHOICES - 42)) | (1 << (ZmeiLangParser.KW_THEME - 42)) | (1 << (ZmeiLangParser.KW_INSTALL - 42)) | (1 << (ZmeiLangParser.KW_HEADER - 42)) | (1 << (ZmeiLangParser.KW_SERVICES - 42)) | (1 << (ZmeiLangParser.KW_SELENIUM_PYTEST - 42)) | (1 << (ZmeiLangParser.KW_CHILD - 42)) | (1 << (ZmeiLangParser.KW_FILTER_OUT - 42)) | (1 << (ZmeiLangParser.KW_FILTER_IN - 42)) | (1 << (ZmeiLangParser.KW_PAGE - 42)) | (1 << (ZmeiLangParser.KW_LINK_SUFFIX - 42)) | (1 << (ZmeiLangParser.KW_URL_PREFIX - 42)) | (1 << (ZmeiLangParser.KW_CAN_EDIT - 42)) | (1 << (ZmeiLangParser.KW_OBJECT_EXPR - 42)) | (1 << (ZmeiLangParser.KW_BLOCK - 42)) | (1 << (ZmeiLangParser.KW_ITEM_NAME - 42)) | (1 << (ZmeiLangParser.KW_PK_PARAM - 42)) | (1 << (ZmeiLangParser.KW_LIST_FIELDS - 42)) | (1 << (ZmeiLangParser.KW_DELETE - 42)) | (1 << (ZmeiLangParser.KW_EDIT - 42)) | (1 << (ZmeiLangParser.KW_CREATE - 42)) | (1 << (ZmeiLangParser.KW_DETAIL - 42)) | (1 << (ZmeiLangParser.KW_SKIP - 42)) | (1 << (ZmeiLangParser.KW_FROM - 42)) | (1 << (ZmeiLangParser.KW_POLY_LIST - 42)) | (1 << (ZmeiLangParser.KW_CSS - 42)) | (1 << (ZmeiLangParser.KW_JS - 42)) | (1 << (ZmeiLangParser.KW_INLINE_TYPE_TABULAR - 42)) | (1 << (ZmeiLangParser.KW_INLINE_TYPE_STACKED - 42)) | (1 << (ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC - 42)) | (1 << (ZmeiLangParser.KW_INLINE - 42)) | (1 << (ZmeiLangParser.KW_TYPE - 42)) | (1 << (ZmeiLangParser.KW_USER_FIELD - 42)) | (1 << (ZmeiLangParser.KW_ANNOTATE - 42)) | (1 << (ZmeiLangParser.KW_ON_CREATE - 42)) | (1 << (ZmeiLangParser.KW_QUERY - 42)) | (1 << (ZmeiLangParser.KW_AUTH - 42)) | (1 << (ZmeiLangParser.KW_COUNT - 42)) | (1 << (ZmeiLangParser.KW_I18N - 42)))) != 0) or ((((_la - 106)) & ~0x3f) == 0 and ((1 << (_la - 106)) & ((1 << (ZmeiLangParser.KW_EXTENSION - 106)) | (1 << (ZmeiLangParser.KW_TABS - 106)) | (1 << (ZmeiLangParser.KW_LIST - 106)) | (1 << (ZmeiLangParser.KW_READ_ONLY - 106)) | (1 << (ZmeiLangParser.KW_LIST_EDITABLE - 106)) | (1 << (ZmeiLangParser.KW_LIST_FILTER - 106)) | (1 << (ZmeiLangParser.KW_LIST_SEARCH - 106)) | (1 << (ZmeiLangParser.KW_FIELDS - 106)) | (1 << (ZmeiLangParser.KW_IMPORT - 106)) | (1 << (ZmeiLangParser.KW_AS - 106)) | (1 << (ZmeiLangParser.WRITE_MODE - 106)) | (1 << (ZmeiLangParser.BOOL - 106)) | (1 << (ZmeiLangParser.ID - 106)) | (1 << (ZmeiLangParser.DASH - 106)) | (1 << (ZmeiLangParser.SLASH - 106)) | (1 << (ZmeiLangParser.STAR - 106)))) != 0)): + if not (((((_la - 42)) & ~0x3f) == 0 and ((1 << (_la - 42)) & ((1 << (ZmeiLangParser.KW_AUTH_TYPE_BASIC - 42)) | (1 << (ZmeiLangParser.KW_AUTH_TYPE_SESSION - 42)) | (1 << (ZmeiLangParser.KW_AUTH_TYPE_TOKEN - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_HTML - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FLOAT - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_DECIMAL - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_DATE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_DATETIME - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_IMAGE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_TEXT - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_INT - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_SLUG - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_BOOL - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_ONE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_MANY - 42)) | (1 << (ZmeiLangParser.COL_FIELD_CHOICES - 42)) | (1 << (ZmeiLangParser.KW_THEME - 42)) | (1 << (ZmeiLangParser.KW_INSTALL - 42)) | (1 << (ZmeiLangParser.KW_HEADER - 42)) | (1 << (ZmeiLangParser.KW_SERVICES - 42)) | (1 << (ZmeiLangParser.KW_SELENIUM_PYTEST - 42)) | (1 << (ZmeiLangParser.KW_CHILD - 42)) | (1 << (ZmeiLangParser.KW_FILTER_OUT - 42)) | (1 << (ZmeiLangParser.KW_FILTER_IN - 42)) | (1 << (ZmeiLangParser.KW_PAGE - 42)) | (1 << (ZmeiLangParser.KW_LINK_SUFFIX - 42)) | (1 << (ZmeiLangParser.KW_URL_PREFIX - 42)) | (1 << (ZmeiLangParser.KW_CAN_EDIT - 42)) | (1 << (ZmeiLangParser.KW_OBJECT_EXPR - 42)) | (1 << (ZmeiLangParser.KW_BLOCK - 42)) | (1 << (ZmeiLangParser.KW_ITEM_NAME - 42)) | (1 << (ZmeiLangParser.KW_PK_PARAM - 42)) | (1 << (ZmeiLangParser.KW_LIST_FIELDS - 42)) | (1 << (ZmeiLangParser.KW_DELETE - 42)) | (1 << (ZmeiLangParser.KW_EDIT - 42)) | (1 << (ZmeiLangParser.KW_CREATE - 42)) | (1 << (ZmeiLangParser.KW_DETAIL - 42)) | (1 << (ZmeiLangParser.KW_SKIP - 42)) | (1 << (ZmeiLangParser.KW_FROM - 42)) | (1 << (ZmeiLangParser.KW_POLY_LIST - 42)) | (1 << (ZmeiLangParser.KW_CSS - 42)) | (1 << (ZmeiLangParser.KW_JS - 42)) | (1 << (ZmeiLangParser.KW_INLINE_TYPE_TABULAR - 42)) | (1 << (ZmeiLangParser.KW_INLINE_TYPE_STACKED - 42)) | (1 << (ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC - 42)) | (1 << (ZmeiLangParser.KW_INLINE - 42)) | (1 << (ZmeiLangParser.KW_TYPE - 42)) | (1 << (ZmeiLangParser.KW_USER_FIELD - 42)) | (1 << (ZmeiLangParser.KW_ANNOTATE - 42)) | (1 << (ZmeiLangParser.KW_ON_CREATE - 42)) | (1 << (ZmeiLangParser.KW_QUERY - 42)) | (1 << (ZmeiLangParser.KW_AUTH - 42)) | (1 << (ZmeiLangParser.KW_COUNT - 42)) | (1 << (ZmeiLangParser.KW_I18N - 42)))) != 0) or ((((_la - 106)) & ~0x3f) == 0 and ((1 << (_la - 106)) & ((1 << (ZmeiLangParser.KW_EXTRA - 106)) | (1 << (ZmeiLangParser.KW_TABS - 106)) | (1 << (ZmeiLangParser.KW_LIST - 106)) | (1 << (ZmeiLangParser.KW_READ_ONLY - 106)) | (1 << (ZmeiLangParser.KW_LIST_EDITABLE - 106)) | (1 << (ZmeiLangParser.KW_LIST_FILTER - 106)) | (1 << (ZmeiLangParser.KW_LIST_SEARCH - 106)) | (1 << (ZmeiLangParser.KW_FIELDS - 106)) | (1 << (ZmeiLangParser.KW_IMPORT - 106)) | (1 << (ZmeiLangParser.KW_AS - 106)) | (1 << (ZmeiLangParser.WRITE_MODE - 106)) | (1 << (ZmeiLangParser.BOOL - 106)) | (1 << (ZmeiLangParser.ID - 106)) | (1 << (ZmeiLangParser.DASH - 106)) | (1 << (ZmeiLangParser.SLASH - 106)) | (1 << (ZmeiLangParser.STAR - 106)))) != 0)): break except RecognitionException as re: @@ -4982,7 +4982,7 @@ def an_gitlab_deployment_name(self): self.state = 962 self._errHandler.sync(self) token = self._input.LA(1) - if token in [ZmeiLangParser.KW_AUTH_TYPE_BASIC, ZmeiLangParser.KW_AUTH_TYPE_SESSION, ZmeiLangParser.KW_AUTH_TYPE_TOKEN, ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT, ZmeiLangParser.COL_FIELD_TYPE_HTML, ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA, ZmeiLangParser.COL_FIELD_TYPE_FLOAT, ZmeiLangParser.COL_FIELD_TYPE_DECIMAL, ZmeiLangParser.COL_FIELD_TYPE_DATE, ZmeiLangParser.COL_FIELD_TYPE_DATETIME, ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_TEXT, ZmeiLangParser.COL_FIELD_TYPE_INT, ZmeiLangParser.COL_FIELD_TYPE_SLUG, ZmeiLangParser.COL_FIELD_TYPE_BOOL, ZmeiLangParser.COL_FIELD_TYPE_ONE, ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE, ZmeiLangParser.COL_FIELD_TYPE_MANY, ZmeiLangParser.COL_FIELD_CHOICES, ZmeiLangParser.KW_THEME, ZmeiLangParser.KW_INSTALL, ZmeiLangParser.KW_HEADER, ZmeiLangParser.KW_SERVICES, ZmeiLangParser.KW_SELENIUM_PYTEST, ZmeiLangParser.KW_CHILD, ZmeiLangParser.KW_FILTER_OUT, ZmeiLangParser.KW_FILTER_IN, ZmeiLangParser.KW_PAGE, ZmeiLangParser.KW_LINK_SUFFIX, ZmeiLangParser.KW_URL_PREFIX, ZmeiLangParser.KW_CAN_EDIT, ZmeiLangParser.KW_OBJECT_EXPR, ZmeiLangParser.KW_BLOCK, ZmeiLangParser.KW_ITEM_NAME, ZmeiLangParser.KW_PK_PARAM, ZmeiLangParser.KW_LIST_FIELDS, ZmeiLangParser.KW_DELETE, ZmeiLangParser.KW_EDIT, ZmeiLangParser.KW_CREATE, ZmeiLangParser.KW_DETAIL, ZmeiLangParser.KW_SKIP, ZmeiLangParser.KW_FROM, ZmeiLangParser.KW_POLY_LIST, ZmeiLangParser.KW_CSS, ZmeiLangParser.KW_JS, ZmeiLangParser.KW_INLINE_TYPE_TABULAR, ZmeiLangParser.KW_INLINE_TYPE_STACKED, ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC, ZmeiLangParser.KW_INLINE, ZmeiLangParser.KW_TYPE, ZmeiLangParser.KW_USER_FIELD, ZmeiLangParser.KW_ANNOTATE, ZmeiLangParser.KW_ON_CREATE, ZmeiLangParser.KW_QUERY, ZmeiLangParser.KW_AUTH, ZmeiLangParser.KW_COUNT, ZmeiLangParser.KW_I18N, ZmeiLangParser.KW_EXTENSION, ZmeiLangParser.KW_TABS, ZmeiLangParser.KW_LIST, ZmeiLangParser.KW_READ_ONLY, ZmeiLangParser.KW_LIST_EDITABLE, ZmeiLangParser.KW_LIST_FILTER, ZmeiLangParser.KW_LIST_SEARCH, ZmeiLangParser.KW_FIELDS, ZmeiLangParser.KW_IMPORT, ZmeiLangParser.KW_AS, ZmeiLangParser.WRITE_MODE, ZmeiLangParser.BOOL, ZmeiLangParser.ID]: + if token in [ZmeiLangParser.KW_AUTH_TYPE_BASIC, ZmeiLangParser.KW_AUTH_TYPE_SESSION, ZmeiLangParser.KW_AUTH_TYPE_TOKEN, ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT, ZmeiLangParser.COL_FIELD_TYPE_HTML, ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA, ZmeiLangParser.COL_FIELD_TYPE_FLOAT, ZmeiLangParser.COL_FIELD_TYPE_DECIMAL, ZmeiLangParser.COL_FIELD_TYPE_DATE, ZmeiLangParser.COL_FIELD_TYPE_DATETIME, ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_TEXT, ZmeiLangParser.COL_FIELD_TYPE_INT, ZmeiLangParser.COL_FIELD_TYPE_SLUG, ZmeiLangParser.COL_FIELD_TYPE_BOOL, ZmeiLangParser.COL_FIELD_TYPE_ONE, ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE, ZmeiLangParser.COL_FIELD_TYPE_MANY, ZmeiLangParser.COL_FIELD_CHOICES, ZmeiLangParser.KW_THEME, ZmeiLangParser.KW_INSTALL, ZmeiLangParser.KW_HEADER, ZmeiLangParser.KW_SERVICES, ZmeiLangParser.KW_SELENIUM_PYTEST, ZmeiLangParser.KW_CHILD, ZmeiLangParser.KW_FILTER_OUT, ZmeiLangParser.KW_FILTER_IN, ZmeiLangParser.KW_PAGE, ZmeiLangParser.KW_LINK_SUFFIX, ZmeiLangParser.KW_URL_PREFIX, ZmeiLangParser.KW_CAN_EDIT, ZmeiLangParser.KW_OBJECT_EXPR, ZmeiLangParser.KW_BLOCK, ZmeiLangParser.KW_ITEM_NAME, ZmeiLangParser.KW_PK_PARAM, ZmeiLangParser.KW_LIST_FIELDS, ZmeiLangParser.KW_DELETE, ZmeiLangParser.KW_EDIT, ZmeiLangParser.KW_CREATE, ZmeiLangParser.KW_DETAIL, ZmeiLangParser.KW_SKIP, ZmeiLangParser.KW_FROM, ZmeiLangParser.KW_POLY_LIST, ZmeiLangParser.KW_CSS, ZmeiLangParser.KW_JS, ZmeiLangParser.KW_INLINE_TYPE_TABULAR, ZmeiLangParser.KW_INLINE_TYPE_STACKED, ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC, ZmeiLangParser.KW_INLINE, ZmeiLangParser.KW_TYPE, ZmeiLangParser.KW_USER_FIELD, ZmeiLangParser.KW_ANNOTATE, ZmeiLangParser.KW_ON_CREATE, ZmeiLangParser.KW_QUERY, ZmeiLangParser.KW_AUTH, ZmeiLangParser.KW_COUNT, ZmeiLangParser.KW_I18N, ZmeiLangParser.KW_EXTRA, ZmeiLangParser.KW_TABS, ZmeiLangParser.KW_LIST, ZmeiLangParser.KW_READ_ONLY, ZmeiLangParser.KW_LIST_EDITABLE, ZmeiLangParser.KW_LIST_FILTER, ZmeiLangParser.KW_LIST_SEARCH, ZmeiLangParser.KW_FIELDS, ZmeiLangParser.KW_IMPORT, ZmeiLangParser.KW_AS, ZmeiLangParser.WRITE_MODE, ZmeiLangParser.BOOL, ZmeiLangParser.ID]: self.state = 958 self.id_or_kw() pass @@ -5004,7 +5004,7 @@ def an_gitlab_deployment_name(self): self.state = 964 self._errHandler.sync(self) _la = self._input.LA(1) - if not (((((_la - 42)) & ~0x3f) == 0 and ((1 << (_la - 42)) & ((1 << (ZmeiLangParser.KW_AUTH_TYPE_BASIC - 42)) | (1 << (ZmeiLangParser.KW_AUTH_TYPE_SESSION - 42)) | (1 << (ZmeiLangParser.KW_AUTH_TYPE_TOKEN - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_HTML - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FLOAT - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_DECIMAL - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_DATE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_DATETIME - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_IMAGE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_TEXT - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_INT - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_SLUG - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_BOOL - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_ONE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_MANY - 42)) | (1 << (ZmeiLangParser.COL_FIELD_CHOICES - 42)) | (1 << (ZmeiLangParser.KW_THEME - 42)) | (1 << (ZmeiLangParser.KW_INSTALL - 42)) | (1 << (ZmeiLangParser.KW_HEADER - 42)) | (1 << (ZmeiLangParser.KW_SERVICES - 42)) | (1 << (ZmeiLangParser.KW_SELENIUM_PYTEST - 42)) | (1 << (ZmeiLangParser.KW_CHILD - 42)) | (1 << (ZmeiLangParser.KW_FILTER_OUT - 42)) | (1 << (ZmeiLangParser.KW_FILTER_IN - 42)) | (1 << (ZmeiLangParser.KW_PAGE - 42)) | (1 << (ZmeiLangParser.KW_LINK_SUFFIX - 42)) | (1 << (ZmeiLangParser.KW_URL_PREFIX - 42)) | (1 << (ZmeiLangParser.KW_CAN_EDIT - 42)) | (1 << (ZmeiLangParser.KW_OBJECT_EXPR - 42)) | (1 << (ZmeiLangParser.KW_BLOCK - 42)) | (1 << (ZmeiLangParser.KW_ITEM_NAME - 42)) | (1 << (ZmeiLangParser.KW_PK_PARAM - 42)) | (1 << (ZmeiLangParser.KW_LIST_FIELDS - 42)) | (1 << (ZmeiLangParser.KW_DELETE - 42)) | (1 << (ZmeiLangParser.KW_EDIT - 42)) | (1 << (ZmeiLangParser.KW_CREATE - 42)) | (1 << (ZmeiLangParser.KW_DETAIL - 42)) | (1 << (ZmeiLangParser.KW_SKIP - 42)) | (1 << (ZmeiLangParser.KW_FROM - 42)) | (1 << (ZmeiLangParser.KW_POLY_LIST - 42)) | (1 << (ZmeiLangParser.KW_CSS - 42)) | (1 << (ZmeiLangParser.KW_JS - 42)) | (1 << (ZmeiLangParser.KW_INLINE_TYPE_TABULAR - 42)) | (1 << (ZmeiLangParser.KW_INLINE_TYPE_STACKED - 42)) | (1 << (ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC - 42)) | (1 << (ZmeiLangParser.KW_INLINE - 42)) | (1 << (ZmeiLangParser.KW_TYPE - 42)) | (1 << (ZmeiLangParser.KW_USER_FIELD - 42)) | (1 << (ZmeiLangParser.KW_ANNOTATE - 42)) | (1 << (ZmeiLangParser.KW_ON_CREATE - 42)) | (1 << (ZmeiLangParser.KW_QUERY - 42)) | (1 << (ZmeiLangParser.KW_AUTH - 42)) | (1 << (ZmeiLangParser.KW_COUNT - 42)) | (1 << (ZmeiLangParser.KW_I18N - 42)))) != 0) or ((((_la - 106)) & ~0x3f) == 0 and ((1 << (_la - 106)) & ((1 << (ZmeiLangParser.KW_EXTENSION - 106)) | (1 << (ZmeiLangParser.KW_TABS - 106)) | (1 << (ZmeiLangParser.KW_LIST - 106)) | (1 << (ZmeiLangParser.KW_READ_ONLY - 106)) | (1 << (ZmeiLangParser.KW_LIST_EDITABLE - 106)) | (1 << (ZmeiLangParser.KW_LIST_FILTER - 106)) | (1 << (ZmeiLangParser.KW_LIST_SEARCH - 106)) | (1 << (ZmeiLangParser.KW_FIELDS - 106)) | (1 << (ZmeiLangParser.KW_IMPORT - 106)) | (1 << (ZmeiLangParser.KW_AS - 106)) | (1 << (ZmeiLangParser.WRITE_MODE - 106)) | (1 << (ZmeiLangParser.BOOL - 106)) | (1 << (ZmeiLangParser.ID - 106)) | (1 << (ZmeiLangParser.DASH - 106)) | (1 << (ZmeiLangParser.SLASH - 106)) | (1 << (ZmeiLangParser.STAR - 106)))) != 0)): + if not (((((_la - 42)) & ~0x3f) == 0 and ((1 << (_la - 42)) & ((1 << (ZmeiLangParser.KW_AUTH_TYPE_BASIC - 42)) | (1 << (ZmeiLangParser.KW_AUTH_TYPE_SESSION - 42)) | (1 << (ZmeiLangParser.KW_AUTH_TYPE_TOKEN - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_HTML - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FLOAT - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_DECIMAL - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_DATE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_DATETIME - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_IMAGE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_TEXT - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_INT - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_SLUG - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_BOOL - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_ONE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_MANY - 42)) | (1 << (ZmeiLangParser.COL_FIELD_CHOICES - 42)) | (1 << (ZmeiLangParser.KW_THEME - 42)) | (1 << (ZmeiLangParser.KW_INSTALL - 42)) | (1 << (ZmeiLangParser.KW_HEADER - 42)) | (1 << (ZmeiLangParser.KW_SERVICES - 42)) | (1 << (ZmeiLangParser.KW_SELENIUM_PYTEST - 42)) | (1 << (ZmeiLangParser.KW_CHILD - 42)) | (1 << (ZmeiLangParser.KW_FILTER_OUT - 42)) | (1 << (ZmeiLangParser.KW_FILTER_IN - 42)) | (1 << (ZmeiLangParser.KW_PAGE - 42)) | (1 << (ZmeiLangParser.KW_LINK_SUFFIX - 42)) | (1 << (ZmeiLangParser.KW_URL_PREFIX - 42)) | (1 << (ZmeiLangParser.KW_CAN_EDIT - 42)) | (1 << (ZmeiLangParser.KW_OBJECT_EXPR - 42)) | (1 << (ZmeiLangParser.KW_BLOCK - 42)) | (1 << (ZmeiLangParser.KW_ITEM_NAME - 42)) | (1 << (ZmeiLangParser.KW_PK_PARAM - 42)) | (1 << (ZmeiLangParser.KW_LIST_FIELDS - 42)) | (1 << (ZmeiLangParser.KW_DELETE - 42)) | (1 << (ZmeiLangParser.KW_EDIT - 42)) | (1 << (ZmeiLangParser.KW_CREATE - 42)) | (1 << (ZmeiLangParser.KW_DETAIL - 42)) | (1 << (ZmeiLangParser.KW_SKIP - 42)) | (1 << (ZmeiLangParser.KW_FROM - 42)) | (1 << (ZmeiLangParser.KW_POLY_LIST - 42)) | (1 << (ZmeiLangParser.KW_CSS - 42)) | (1 << (ZmeiLangParser.KW_JS - 42)) | (1 << (ZmeiLangParser.KW_INLINE_TYPE_TABULAR - 42)) | (1 << (ZmeiLangParser.KW_INLINE_TYPE_STACKED - 42)) | (1 << (ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC - 42)) | (1 << (ZmeiLangParser.KW_INLINE - 42)) | (1 << (ZmeiLangParser.KW_TYPE - 42)) | (1 << (ZmeiLangParser.KW_USER_FIELD - 42)) | (1 << (ZmeiLangParser.KW_ANNOTATE - 42)) | (1 << (ZmeiLangParser.KW_ON_CREATE - 42)) | (1 << (ZmeiLangParser.KW_QUERY - 42)) | (1 << (ZmeiLangParser.KW_AUTH - 42)) | (1 << (ZmeiLangParser.KW_COUNT - 42)) | (1 << (ZmeiLangParser.KW_I18N - 42)))) != 0) or ((((_la - 106)) & ~0x3f) == 0 and ((1 << (_la - 106)) & ((1 << (ZmeiLangParser.KW_EXTRA - 106)) | (1 << (ZmeiLangParser.KW_TABS - 106)) | (1 << (ZmeiLangParser.KW_LIST - 106)) | (1 << (ZmeiLangParser.KW_READ_ONLY - 106)) | (1 << (ZmeiLangParser.KW_LIST_EDITABLE - 106)) | (1 << (ZmeiLangParser.KW_LIST_FILTER - 106)) | (1 << (ZmeiLangParser.KW_LIST_SEARCH - 106)) | (1 << (ZmeiLangParser.KW_FIELDS - 106)) | (1 << (ZmeiLangParser.KW_IMPORT - 106)) | (1 << (ZmeiLangParser.KW_AS - 106)) | (1 << (ZmeiLangParser.WRITE_MODE - 106)) | (1 << (ZmeiLangParser.BOOL - 106)) | (1 << (ZmeiLangParser.ID - 106)) | (1 << (ZmeiLangParser.DASH - 106)) | (1 << (ZmeiLangParser.SLASH - 106)) | (1 << (ZmeiLangParser.STAR - 106)))) != 0)): break except RecognitionException as re: @@ -5075,7 +5075,7 @@ def an_gitlab_deployment_host(self): self.state = 970 self._errHandler.sync(self) token = self._input.LA(1) - if token in [ZmeiLangParser.KW_AUTH_TYPE_BASIC, ZmeiLangParser.KW_AUTH_TYPE_SESSION, ZmeiLangParser.KW_AUTH_TYPE_TOKEN, ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT, ZmeiLangParser.COL_FIELD_TYPE_HTML, ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA, ZmeiLangParser.COL_FIELD_TYPE_FLOAT, ZmeiLangParser.COL_FIELD_TYPE_DECIMAL, ZmeiLangParser.COL_FIELD_TYPE_DATE, ZmeiLangParser.COL_FIELD_TYPE_DATETIME, ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_TEXT, ZmeiLangParser.COL_FIELD_TYPE_INT, ZmeiLangParser.COL_FIELD_TYPE_SLUG, ZmeiLangParser.COL_FIELD_TYPE_BOOL, ZmeiLangParser.COL_FIELD_TYPE_ONE, ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE, ZmeiLangParser.COL_FIELD_TYPE_MANY, ZmeiLangParser.COL_FIELD_CHOICES, ZmeiLangParser.KW_THEME, ZmeiLangParser.KW_INSTALL, ZmeiLangParser.KW_HEADER, ZmeiLangParser.KW_SERVICES, ZmeiLangParser.KW_SELENIUM_PYTEST, ZmeiLangParser.KW_CHILD, ZmeiLangParser.KW_FILTER_OUT, ZmeiLangParser.KW_FILTER_IN, ZmeiLangParser.KW_PAGE, ZmeiLangParser.KW_LINK_SUFFIX, ZmeiLangParser.KW_URL_PREFIX, ZmeiLangParser.KW_CAN_EDIT, ZmeiLangParser.KW_OBJECT_EXPR, ZmeiLangParser.KW_BLOCK, ZmeiLangParser.KW_ITEM_NAME, ZmeiLangParser.KW_PK_PARAM, ZmeiLangParser.KW_LIST_FIELDS, ZmeiLangParser.KW_DELETE, ZmeiLangParser.KW_EDIT, ZmeiLangParser.KW_CREATE, ZmeiLangParser.KW_DETAIL, ZmeiLangParser.KW_SKIP, ZmeiLangParser.KW_FROM, ZmeiLangParser.KW_POLY_LIST, ZmeiLangParser.KW_CSS, ZmeiLangParser.KW_JS, ZmeiLangParser.KW_INLINE_TYPE_TABULAR, ZmeiLangParser.KW_INLINE_TYPE_STACKED, ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC, ZmeiLangParser.KW_INLINE, ZmeiLangParser.KW_TYPE, ZmeiLangParser.KW_USER_FIELD, ZmeiLangParser.KW_ANNOTATE, ZmeiLangParser.KW_ON_CREATE, ZmeiLangParser.KW_QUERY, ZmeiLangParser.KW_AUTH, ZmeiLangParser.KW_COUNT, ZmeiLangParser.KW_I18N, ZmeiLangParser.KW_EXTENSION, ZmeiLangParser.KW_TABS, ZmeiLangParser.KW_LIST, ZmeiLangParser.KW_READ_ONLY, ZmeiLangParser.KW_LIST_EDITABLE, ZmeiLangParser.KW_LIST_FILTER, ZmeiLangParser.KW_LIST_SEARCH, ZmeiLangParser.KW_FIELDS, ZmeiLangParser.KW_IMPORT, ZmeiLangParser.KW_AS, ZmeiLangParser.WRITE_MODE, ZmeiLangParser.BOOL, ZmeiLangParser.ID]: + if token in [ZmeiLangParser.KW_AUTH_TYPE_BASIC, ZmeiLangParser.KW_AUTH_TYPE_SESSION, ZmeiLangParser.KW_AUTH_TYPE_TOKEN, ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT, ZmeiLangParser.COL_FIELD_TYPE_HTML, ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA, ZmeiLangParser.COL_FIELD_TYPE_FLOAT, ZmeiLangParser.COL_FIELD_TYPE_DECIMAL, ZmeiLangParser.COL_FIELD_TYPE_DATE, ZmeiLangParser.COL_FIELD_TYPE_DATETIME, ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_TEXT, ZmeiLangParser.COL_FIELD_TYPE_INT, ZmeiLangParser.COL_FIELD_TYPE_SLUG, ZmeiLangParser.COL_FIELD_TYPE_BOOL, ZmeiLangParser.COL_FIELD_TYPE_ONE, ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE, ZmeiLangParser.COL_FIELD_TYPE_MANY, ZmeiLangParser.COL_FIELD_CHOICES, ZmeiLangParser.KW_THEME, ZmeiLangParser.KW_INSTALL, ZmeiLangParser.KW_HEADER, ZmeiLangParser.KW_SERVICES, ZmeiLangParser.KW_SELENIUM_PYTEST, ZmeiLangParser.KW_CHILD, ZmeiLangParser.KW_FILTER_OUT, ZmeiLangParser.KW_FILTER_IN, ZmeiLangParser.KW_PAGE, ZmeiLangParser.KW_LINK_SUFFIX, ZmeiLangParser.KW_URL_PREFIX, ZmeiLangParser.KW_CAN_EDIT, ZmeiLangParser.KW_OBJECT_EXPR, ZmeiLangParser.KW_BLOCK, ZmeiLangParser.KW_ITEM_NAME, ZmeiLangParser.KW_PK_PARAM, ZmeiLangParser.KW_LIST_FIELDS, ZmeiLangParser.KW_DELETE, ZmeiLangParser.KW_EDIT, ZmeiLangParser.KW_CREATE, ZmeiLangParser.KW_DETAIL, ZmeiLangParser.KW_SKIP, ZmeiLangParser.KW_FROM, ZmeiLangParser.KW_POLY_LIST, ZmeiLangParser.KW_CSS, ZmeiLangParser.KW_JS, ZmeiLangParser.KW_INLINE_TYPE_TABULAR, ZmeiLangParser.KW_INLINE_TYPE_STACKED, ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC, ZmeiLangParser.KW_INLINE, ZmeiLangParser.KW_TYPE, ZmeiLangParser.KW_USER_FIELD, ZmeiLangParser.KW_ANNOTATE, ZmeiLangParser.KW_ON_CREATE, ZmeiLangParser.KW_QUERY, ZmeiLangParser.KW_AUTH, ZmeiLangParser.KW_COUNT, ZmeiLangParser.KW_I18N, ZmeiLangParser.KW_EXTRA, ZmeiLangParser.KW_TABS, ZmeiLangParser.KW_LIST, ZmeiLangParser.KW_READ_ONLY, ZmeiLangParser.KW_LIST_EDITABLE, ZmeiLangParser.KW_LIST_FILTER, ZmeiLangParser.KW_LIST_SEARCH, ZmeiLangParser.KW_FIELDS, ZmeiLangParser.KW_IMPORT, ZmeiLangParser.KW_AS, ZmeiLangParser.WRITE_MODE, ZmeiLangParser.BOOL, ZmeiLangParser.ID]: self.state = 966 self.id_or_kw() pass @@ -5097,7 +5097,7 @@ def an_gitlab_deployment_host(self): self.state = 972 self._errHandler.sync(self) _la = self._input.LA(1) - if not (((((_la - 42)) & ~0x3f) == 0 and ((1 << (_la - 42)) & ((1 << (ZmeiLangParser.KW_AUTH_TYPE_BASIC - 42)) | (1 << (ZmeiLangParser.KW_AUTH_TYPE_SESSION - 42)) | (1 << (ZmeiLangParser.KW_AUTH_TYPE_TOKEN - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_HTML - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FLOAT - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_DECIMAL - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_DATE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_DATETIME - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_IMAGE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_TEXT - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_INT - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_SLUG - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_BOOL - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_ONE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_MANY - 42)) | (1 << (ZmeiLangParser.COL_FIELD_CHOICES - 42)) | (1 << (ZmeiLangParser.KW_THEME - 42)) | (1 << (ZmeiLangParser.KW_INSTALL - 42)) | (1 << (ZmeiLangParser.KW_HEADER - 42)) | (1 << (ZmeiLangParser.KW_SERVICES - 42)) | (1 << (ZmeiLangParser.KW_SELENIUM_PYTEST - 42)) | (1 << (ZmeiLangParser.KW_CHILD - 42)) | (1 << (ZmeiLangParser.KW_FILTER_OUT - 42)) | (1 << (ZmeiLangParser.KW_FILTER_IN - 42)) | (1 << (ZmeiLangParser.KW_PAGE - 42)) | (1 << (ZmeiLangParser.KW_LINK_SUFFIX - 42)) | (1 << (ZmeiLangParser.KW_URL_PREFIX - 42)) | (1 << (ZmeiLangParser.KW_CAN_EDIT - 42)) | (1 << (ZmeiLangParser.KW_OBJECT_EXPR - 42)) | (1 << (ZmeiLangParser.KW_BLOCK - 42)) | (1 << (ZmeiLangParser.KW_ITEM_NAME - 42)) | (1 << (ZmeiLangParser.KW_PK_PARAM - 42)) | (1 << (ZmeiLangParser.KW_LIST_FIELDS - 42)) | (1 << (ZmeiLangParser.KW_DELETE - 42)) | (1 << (ZmeiLangParser.KW_EDIT - 42)) | (1 << (ZmeiLangParser.KW_CREATE - 42)) | (1 << (ZmeiLangParser.KW_DETAIL - 42)) | (1 << (ZmeiLangParser.KW_SKIP - 42)) | (1 << (ZmeiLangParser.KW_FROM - 42)) | (1 << (ZmeiLangParser.KW_POLY_LIST - 42)) | (1 << (ZmeiLangParser.KW_CSS - 42)) | (1 << (ZmeiLangParser.KW_JS - 42)) | (1 << (ZmeiLangParser.KW_INLINE_TYPE_TABULAR - 42)) | (1 << (ZmeiLangParser.KW_INLINE_TYPE_STACKED - 42)) | (1 << (ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC - 42)) | (1 << (ZmeiLangParser.KW_INLINE - 42)) | (1 << (ZmeiLangParser.KW_TYPE - 42)) | (1 << (ZmeiLangParser.KW_USER_FIELD - 42)) | (1 << (ZmeiLangParser.KW_ANNOTATE - 42)) | (1 << (ZmeiLangParser.KW_ON_CREATE - 42)) | (1 << (ZmeiLangParser.KW_QUERY - 42)) | (1 << (ZmeiLangParser.KW_AUTH - 42)) | (1 << (ZmeiLangParser.KW_COUNT - 42)) | (1 << (ZmeiLangParser.KW_I18N - 42)))) != 0) or ((((_la - 106)) & ~0x3f) == 0 and ((1 << (_la - 106)) & ((1 << (ZmeiLangParser.KW_EXTENSION - 106)) | (1 << (ZmeiLangParser.KW_TABS - 106)) | (1 << (ZmeiLangParser.KW_LIST - 106)) | (1 << (ZmeiLangParser.KW_READ_ONLY - 106)) | (1 << (ZmeiLangParser.KW_LIST_EDITABLE - 106)) | (1 << (ZmeiLangParser.KW_LIST_FILTER - 106)) | (1 << (ZmeiLangParser.KW_LIST_SEARCH - 106)) | (1 << (ZmeiLangParser.KW_FIELDS - 106)) | (1 << (ZmeiLangParser.KW_IMPORT - 106)) | (1 << (ZmeiLangParser.KW_AS - 106)) | (1 << (ZmeiLangParser.WRITE_MODE - 106)) | (1 << (ZmeiLangParser.BOOL - 106)) | (1 << (ZmeiLangParser.ID - 106)) | (1 << (ZmeiLangParser.DASH - 106)) | (1 << (ZmeiLangParser.DOT - 106)) | (1 << (ZmeiLangParser.STAR - 106)))) != 0)): + if not (((((_la - 42)) & ~0x3f) == 0 and ((1 << (_la - 42)) & ((1 << (ZmeiLangParser.KW_AUTH_TYPE_BASIC - 42)) | (1 << (ZmeiLangParser.KW_AUTH_TYPE_SESSION - 42)) | (1 << (ZmeiLangParser.KW_AUTH_TYPE_TOKEN - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_HTML - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FLOAT - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_DECIMAL - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_DATE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_DATETIME - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_IMAGE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_TEXT - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_INT - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_SLUG - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_BOOL - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_ONE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_MANY - 42)) | (1 << (ZmeiLangParser.COL_FIELD_CHOICES - 42)) | (1 << (ZmeiLangParser.KW_THEME - 42)) | (1 << (ZmeiLangParser.KW_INSTALL - 42)) | (1 << (ZmeiLangParser.KW_HEADER - 42)) | (1 << (ZmeiLangParser.KW_SERVICES - 42)) | (1 << (ZmeiLangParser.KW_SELENIUM_PYTEST - 42)) | (1 << (ZmeiLangParser.KW_CHILD - 42)) | (1 << (ZmeiLangParser.KW_FILTER_OUT - 42)) | (1 << (ZmeiLangParser.KW_FILTER_IN - 42)) | (1 << (ZmeiLangParser.KW_PAGE - 42)) | (1 << (ZmeiLangParser.KW_LINK_SUFFIX - 42)) | (1 << (ZmeiLangParser.KW_URL_PREFIX - 42)) | (1 << (ZmeiLangParser.KW_CAN_EDIT - 42)) | (1 << (ZmeiLangParser.KW_OBJECT_EXPR - 42)) | (1 << (ZmeiLangParser.KW_BLOCK - 42)) | (1 << (ZmeiLangParser.KW_ITEM_NAME - 42)) | (1 << (ZmeiLangParser.KW_PK_PARAM - 42)) | (1 << (ZmeiLangParser.KW_LIST_FIELDS - 42)) | (1 << (ZmeiLangParser.KW_DELETE - 42)) | (1 << (ZmeiLangParser.KW_EDIT - 42)) | (1 << (ZmeiLangParser.KW_CREATE - 42)) | (1 << (ZmeiLangParser.KW_DETAIL - 42)) | (1 << (ZmeiLangParser.KW_SKIP - 42)) | (1 << (ZmeiLangParser.KW_FROM - 42)) | (1 << (ZmeiLangParser.KW_POLY_LIST - 42)) | (1 << (ZmeiLangParser.KW_CSS - 42)) | (1 << (ZmeiLangParser.KW_JS - 42)) | (1 << (ZmeiLangParser.KW_INLINE_TYPE_TABULAR - 42)) | (1 << (ZmeiLangParser.KW_INLINE_TYPE_STACKED - 42)) | (1 << (ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC - 42)) | (1 << (ZmeiLangParser.KW_INLINE - 42)) | (1 << (ZmeiLangParser.KW_TYPE - 42)) | (1 << (ZmeiLangParser.KW_USER_FIELD - 42)) | (1 << (ZmeiLangParser.KW_ANNOTATE - 42)) | (1 << (ZmeiLangParser.KW_ON_CREATE - 42)) | (1 << (ZmeiLangParser.KW_QUERY - 42)) | (1 << (ZmeiLangParser.KW_AUTH - 42)) | (1 << (ZmeiLangParser.KW_COUNT - 42)) | (1 << (ZmeiLangParser.KW_I18N - 42)))) != 0) or ((((_la - 106)) & ~0x3f) == 0 and ((1 << (_la - 106)) & ((1 << (ZmeiLangParser.KW_EXTRA - 106)) | (1 << (ZmeiLangParser.KW_TABS - 106)) | (1 << (ZmeiLangParser.KW_LIST - 106)) | (1 << (ZmeiLangParser.KW_READ_ONLY - 106)) | (1 << (ZmeiLangParser.KW_LIST_EDITABLE - 106)) | (1 << (ZmeiLangParser.KW_LIST_FILTER - 106)) | (1 << (ZmeiLangParser.KW_LIST_SEARCH - 106)) | (1 << (ZmeiLangParser.KW_FIELDS - 106)) | (1 << (ZmeiLangParser.KW_IMPORT - 106)) | (1 << (ZmeiLangParser.KW_AS - 106)) | (1 << (ZmeiLangParser.WRITE_MODE - 106)) | (1 << (ZmeiLangParser.BOOL - 106)) | (1 << (ZmeiLangParser.ID - 106)) | (1 << (ZmeiLangParser.DASH - 106)) | (1 << (ZmeiLangParser.DOT - 106)) | (1 << (ZmeiLangParser.STAR - 106)))) != 0)): break except RecognitionException as re: @@ -5275,7 +5275,7 @@ def an_gitlab_deployment_variable_value(self): self.state = 988 self.match(ZmeiLangParser.DIGIT) pass - elif token in [ZmeiLangParser.KW_AUTH_TYPE_BASIC, ZmeiLangParser.KW_AUTH_TYPE_SESSION, ZmeiLangParser.KW_AUTH_TYPE_TOKEN, ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT, ZmeiLangParser.COL_FIELD_TYPE_HTML, ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA, ZmeiLangParser.COL_FIELD_TYPE_FLOAT, ZmeiLangParser.COL_FIELD_TYPE_DECIMAL, ZmeiLangParser.COL_FIELD_TYPE_DATE, ZmeiLangParser.COL_FIELD_TYPE_DATETIME, ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_TEXT, ZmeiLangParser.COL_FIELD_TYPE_INT, ZmeiLangParser.COL_FIELD_TYPE_SLUG, ZmeiLangParser.COL_FIELD_TYPE_BOOL, ZmeiLangParser.COL_FIELD_TYPE_ONE, ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE, ZmeiLangParser.COL_FIELD_TYPE_MANY, ZmeiLangParser.COL_FIELD_CHOICES, ZmeiLangParser.KW_THEME, ZmeiLangParser.KW_INSTALL, ZmeiLangParser.KW_HEADER, ZmeiLangParser.KW_SERVICES, ZmeiLangParser.KW_SELENIUM_PYTEST, ZmeiLangParser.KW_CHILD, ZmeiLangParser.KW_FILTER_OUT, ZmeiLangParser.KW_FILTER_IN, ZmeiLangParser.KW_PAGE, ZmeiLangParser.KW_LINK_SUFFIX, ZmeiLangParser.KW_URL_PREFIX, ZmeiLangParser.KW_CAN_EDIT, ZmeiLangParser.KW_OBJECT_EXPR, ZmeiLangParser.KW_BLOCK, ZmeiLangParser.KW_ITEM_NAME, ZmeiLangParser.KW_PK_PARAM, ZmeiLangParser.KW_LIST_FIELDS, ZmeiLangParser.KW_DELETE, ZmeiLangParser.KW_EDIT, ZmeiLangParser.KW_CREATE, ZmeiLangParser.KW_DETAIL, ZmeiLangParser.KW_SKIP, ZmeiLangParser.KW_FROM, ZmeiLangParser.KW_POLY_LIST, ZmeiLangParser.KW_CSS, ZmeiLangParser.KW_JS, ZmeiLangParser.KW_INLINE_TYPE_TABULAR, ZmeiLangParser.KW_INLINE_TYPE_STACKED, ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC, ZmeiLangParser.KW_INLINE, ZmeiLangParser.KW_TYPE, ZmeiLangParser.KW_USER_FIELD, ZmeiLangParser.KW_ANNOTATE, ZmeiLangParser.KW_ON_CREATE, ZmeiLangParser.KW_QUERY, ZmeiLangParser.KW_AUTH, ZmeiLangParser.KW_COUNT, ZmeiLangParser.KW_I18N, ZmeiLangParser.KW_EXTENSION, ZmeiLangParser.KW_TABS, ZmeiLangParser.KW_LIST, ZmeiLangParser.KW_READ_ONLY, ZmeiLangParser.KW_LIST_EDITABLE, ZmeiLangParser.KW_LIST_FILTER, ZmeiLangParser.KW_LIST_SEARCH, ZmeiLangParser.KW_FIELDS, ZmeiLangParser.KW_IMPORT, ZmeiLangParser.KW_AS, ZmeiLangParser.WRITE_MODE, ZmeiLangParser.BOOL, ZmeiLangParser.ID]: + elif token in [ZmeiLangParser.KW_AUTH_TYPE_BASIC, ZmeiLangParser.KW_AUTH_TYPE_SESSION, ZmeiLangParser.KW_AUTH_TYPE_TOKEN, ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT, ZmeiLangParser.COL_FIELD_TYPE_HTML, ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA, ZmeiLangParser.COL_FIELD_TYPE_FLOAT, ZmeiLangParser.COL_FIELD_TYPE_DECIMAL, ZmeiLangParser.COL_FIELD_TYPE_DATE, ZmeiLangParser.COL_FIELD_TYPE_DATETIME, ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_TEXT, ZmeiLangParser.COL_FIELD_TYPE_INT, ZmeiLangParser.COL_FIELD_TYPE_SLUG, ZmeiLangParser.COL_FIELD_TYPE_BOOL, ZmeiLangParser.COL_FIELD_TYPE_ONE, ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE, ZmeiLangParser.COL_FIELD_TYPE_MANY, ZmeiLangParser.COL_FIELD_CHOICES, ZmeiLangParser.KW_THEME, ZmeiLangParser.KW_INSTALL, ZmeiLangParser.KW_HEADER, ZmeiLangParser.KW_SERVICES, ZmeiLangParser.KW_SELENIUM_PYTEST, ZmeiLangParser.KW_CHILD, ZmeiLangParser.KW_FILTER_OUT, ZmeiLangParser.KW_FILTER_IN, ZmeiLangParser.KW_PAGE, ZmeiLangParser.KW_LINK_SUFFIX, ZmeiLangParser.KW_URL_PREFIX, ZmeiLangParser.KW_CAN_EDIT, ZmeiLangParser.KW_OBJECT_EXPR, ZmeiLangParser.KW_BLOCK, ZmeiLangParser.KW_ITEM_NAME, ZmeiLangParser.KW_PK_PARAM, ZmeiLangParser.KW_LIST_FIELDS, ZmeiLangParser.KW_DELETE, ZmeiLangParser.KW_EDIT, ZmeiLangParser.KW_CREATE, ZmeiLangParser.KW_DETAIL, ZmeiLangParser.KW_SKIP, ZmeiLangParser.KW_FROM, ZmeiLangParser.KW_POLY_LIST, ZmeiLangParser.KW_CSS, ZmeiLangParser.KW_JS, ZmeiLangParser.KW_INLINE_TYPE_TABULAR, ZmeiLangParser.KW_INLINE_TYPE_STACKED, ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC, ZmeiLangParser.KW_INLINE, ZmeiLangParser.KW_TYPE, ZmeiLangParser.KW_USER_FIELD, ZmeiLangParser.KW_ANNOTATE, ZmeiLangParser.KW_ON_CREATE, ZmeiLangParser.KW_QUERY, ZmeiLangParser.KW_AUTH, ZmeiLangParser.KW_COUNT, ZmeiLangParser.KW_I18N, ZmeiLangParser.KW_EXTRA, ZmeiLangParser.KW_TABS, ZmeiLangParser.KW_LIST, ZmeiLangParser.KW_READ_ONLY, ZmeiLangParser.KW_LIST_EDITABLE, ZmeiLangParser.KW_LIST_FILTER, ZmeiLangParser.KW_LIST_SEARCH, ZmeiLangParser.KW_FIELDS, ZmeiLangParser.KW_IMPORT, ZmeiLangParser.KW_AS, ZmeiLangParser.WRITE_MODE, ZmeiLangParser.BOOL, ZmeiLangParser.ID]: self.enterOuterAlt(localctx, 4) self.state = 989 self.id_or_kw() @@ -5552,7 +5552,7 @@ def an_theme_name(self): self.state = 1014 self._errHandler.sync(self) token = self._input.LA(1) - if token in [ZmeiLangParser.KW_AUTH_TYPE_BASIC, ZmeiLangParser.KW_AUTH_TYPE_SESSION, ZmeiLangParser.KW_AUTH_TYPE_TOKEN, ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT, ZmeiLangParser.COL_FIELD_TYPE_HTML, ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA, ZmeiLangParser.COL_FIELD_TYPE_FLOAT, ZmeiLangParser.COL_FIELD_TYPE_DECIMAL, ZmeiLangParser.COL_FIELD_TYPE_DATE, ZmeiLangParser.COL_FIELD_TYPE_DATETIME, ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_TEXT, ZmeiLangParser.COL_FIELD_TYPE_INT, ZmeiLangParser.COL_FIELD_TYPE_SLUG, ZmeiLangParser.COL_FIELD_TYPE_BOOL, ZmeiLangParser.COL_FIELD_TYPE_ONE, ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE, ZmeiLangParser.COL_FIELD_TYPE_MANY, ZmeiLangParser.COL_FIELD_CHOICES, ZmeiLangParser.KW_THEME, ZmeiLangParser.KW_INSTALL, ZmeiLangParser.KW_HEADER, ZmeiLangParser.KW_SERVICES, ZmeiLangParser.KW_SELENIUM_PYTEST, ZmeiLangParser.KW_CHILD, ZmeiLangParser.KW_FILTER_OUT, ZmeiLangParser.KW_FILTER_IN, ZmeiLangParser.KW_PAGE, ZmeiLangParser.KW_LINK_SUFFIX, ZmeiLangParser.KW_URL_PREFIX, ZmeiLangParser.KW_CAN_EDIT, ZmeiLangParser.KW_OBJECT_EXPR, ZmeiLangParser.KW_BLOCK, ZmeiLangParser.KW_ITEM_NAME, ZmeiLangParser.KW_PK_PARAM, ZmeiLangParser.KW_LIST_FIELDS, ZmeiLangParser.KW_DELETE, ZmeiLangParser.KW_EDIT, ZmeiLangParser.KW_CREATE, ZmeiLangParser.KW_DETAIL, ZmeiLangParser.KW_SKIP, ZmeiLangParser.KW_FROM, ZmeiLangParser.KW_POLY_LIST, ZmeiLangParser.KW_CSS, ZmeiLangParser.KW_JS, ZmeiLangParser.KW_INLINE_TYPE_TABULAR, ZmeiLangParser.KW_INLINE_TYPE_STACKED, ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC, ZmeiLangParser.KW_INLINE, ZmeiLangParser.KW_TYPE, ZmeiLangParser.KW_USER_FIELD, ZmeiLangParser.KW_ANNOTATE, ZmeiLangParser.KW_ON_CREATE, ZmeiLangParser.KW_QUERY, ZmeiLangParser.KW_AUTH, ZmeiLangParser.KW_COUNT, ZmeiLangParser.KW_I18N, ZmeiLangParser.KW_EXTENSION, ZmeiLangParser.KW_TABS, ZmeiLangParser.KW_LIST, ZmeiLangParser.KW_READ_ONLY, ZmeiLangParser.KW_LIST_EDITABLE, ZmeiLangParser.KW_LIST_FILTER, ZmeiLangParser.KW_LIST_SEARCH, ZmeiLangParser.KW_FIELDS, ZmeiLangParser.KW_IMPORT, ZmeiLangParser.KW_AS, ZmeiLangParser.WRITE_MODE, ZmeiLangParser.BOOL, ZmeiLangParser.ID]: + if token in [ZmeiLangParser.KW_AUTH_TYPE_BASIC, ZmeiLangParser.KW_AUTH_TYPE_SESSION, ZmeiLangParser.KW_AUTH_TYPE_TOKEN, ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT, ZmeiLangParser.COL_FIELD_TYPE_HTML, ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA, ZmeiLangParser.COL_FIELD_TYPE_FLOAT, ZmeiLangParser.COL_FIELD_TYPE_DECIMAL, ZmeiLangParser.COL_FIELD_TYPE_DATE, ZmeiLangParser.COL_FIELD_TYPE_DATETIME, ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_TEXT, ZmeiLangParser.COL_FIELD_TYPE_INT, ZmeiLangParser.COL_FIELD_TYPE_SLUG, ZmeiLangParser.COL_FIELD_TYPE_BOOL, ZmeiLangParser.COL_FIELD_TYPE_ONE, ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE, ZmeiLangParser.COL_FIELD_TYPE_MANY, ZmeiLangParser.COL_FIELD_CHOICES, ZmeiLangParser.KW_THEME, ZmeiLangParser.KW_INSTALL, ZmeiLangParser.KW_HEADER, ZmeiLangParser.KW_SERVICES, ZmeiLangParser.KW_SELENIUM_PYTEST, ZmeiLangParser.KW_CHILD, ZmeiLangParser.KW_FILTER_OUT, ZmeiLangParser.KW_FILTER_IN, ZmeiLangParser.KW_PAGE, ZmeiLangParser.KW_LINK_SUFFIX, ZmeiLangParser.KW_URL_PREFIX, ZmeiLangParser.KW_CAN_EDIT, ZmeiLangParser.KW_OBJECT_EXPR, ZmeiLangParser.KW_BLOCK, ZmeiLangParser.KW_ITEM_NAME, ZmeiLangParser.KW_PK_PARAM, ZmeiLangParser.KW_LIST_FIELDS, ZmeiLangParser.KW_DELETE, ZmeiLangParser.KW_EDIT, ZmeiLangParser.KW_CREATE, ZmeiLangParser.KW_DETAIL, ZmeiLangParser.KW_SKIP, ZmeiLangParser.KW_FROM, ZmeiLangParser.KW_POLY_LIST, ZmeiLangParser.KW_CSS, ZmeiLangParser.KW_JS, ZmeiLangParser.KW_INLINE_TYPE_TABULAR, ZmeiLangParser.KW_INLINE_TYPE_STACKED, ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC, ZmeiLangParser.KW_INLINE, ZmeiLangParser.KW_TYPE, ZmeiLangParser.KW_USER_FIELD, ZmeiLangParser.KW_ANNOTATE, ZmeiLangParser.KW_ON_CREATE, ZmeiLangParser.KW_QUERY, ZmeiLangParser.KW_AUTH, ZmeiLangParser.KW_COUNT, ZmeiLangParser.KW_I18N, ZmeiLangParser.KW_EXTRA, ZmeiLangParser.KW_TABS, ZmeiLangParser.KW_LIST, ZmeiLangParser.KW_READ_ONLY, ZmeiLangParser.KW_LIST_EDITABLE, ZmeiLangParser.KW_LIST_FILTER, ZmeiLangParser.KW_LIST_SEARCH, ZmeiLangParser.KW_FIELDS, ZmeiLangParser.KW_IMPORT, ZmeiLangParser.KW_AS, ZmeiLangParser.WRITE_MODE, ZmeiLangParser.BOOL, ZmeiLangParser.ID]: self.enterOuterAlt(localctx, 1) self.state = 1011 self.id_or_kw() @@ -5776,7 +5776,7 @@ def col(self): self.state = 1042 self._errHandler.sync(self) _la = self._input.LA(1) - while ((((_la - 42)) & ~0x3f) == 0 and ((1 << (_la - 42)) & ((1 << (ZmeiLangParser.KW_AUTH_TYPE_BASIC - 42)) | (1 << (ZmeiLangParser.KW_AUTH_TYPE_SESSION - 42)) | (1 << (ZmeiLangParser.KW_AUTH_TYPE_TOKEN - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_HTML - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FLOAT - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_DECIMAL - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_DATE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_DATETIME - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_IMAGE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_TEXT - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_INT - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_SLUG - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_BOOL - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_ONE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_MANY - 42)) | (1 << (ZmeiLangParser.COL_FIELD_CHOICES - 42)) | (1 << (ZmeiLangParser.KW_THEME - 42)) | (1 << (ZmeiLangParser.KW_INSTALL - 42)) | (1 << (ZmeiLangParser.KW_HEADER - 42)) | (1 << (ZmeiLangParser.KW_SERVICES - 42)) | (1 << (ZmeiLangParser.KW_SELENIUM_PYTEST - 42)) | (1 << (ZmeiLangParser.KW_CHILD - 42)) | (1 << (ZmeiLangParser.KW_FILTER_OUT - 42)) | (1 << (ZmeiLangParser.KW_FILTER_IN - 42)) | (1 << (ZmeiLangParser.KW_PAGE - 42)) | (1 << (ZmeiLangParser.KW_LINK_SUFFIX - 42)) | (1 << (ZmeiLangParser.KW_URL_PREFIX - 42)) | (1 << (ZmeiLangParser.KW_CAN_EDIT - 42)) | (1 << (ZmeiLangParser.KW_OBJECT_EXPR - 42)) | (1 << (ZmeiLangParser.KW_BLOCK - 42)) | (1 << (ZmeiLangParser.KW_ITEM_NAME - 42)) | (1 << (ZmeiLangParser.KW_PK_PARAM - 42)) | (1 << (ZmeiLangParser.KW_LIST_FIELDS - 42)) | (1 << (ZmeiLangParser.KW_DELETE - 42)) | (1 << (ZmeiLangParser.KW_EDIT - 42)) | (1 << (ZmeiLangParser.KW_CREATE - 42)) | (1 << (ZmeiLangParser.KW_DETAIL - 42)) | (1 << (ZmeiLangParser.KW_SKIP - 42)) | (1 << (ZmeiLangParser.KW_FROM - 42)) | (1 << (ZmeiLangParser.KW_POLY_LIST - 42)) | (1 << (ZmeiLangParser.KW_CSS - 42)) | (1 << (ZmeiLangParser.KW_JS - 42)) | (1 << (ZmeiLangParser.KW_INLINE_TYPE_TABULAR - 42)) | (1 << (ZmeiLangParser.KW_INLINE_TYPE_STACKED - 42)) | (1 << (ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC - 42)) | (1 << (ZmeiLangParser.KW_INLINE - 42)) | (1 << (ZmeiLangParser.KW_TYPE - 42)) | (1 << (ZmeiLangParser.KW_USER_FIELD - 42)) | (1 << (ZmeiLangParser.KW_ANNOTATE - 42)) | (1 << (ZmeiLangParser.KW_ON_CREATE - 42)) | (1 << (ZmeiLangParser.KW_QUERY - 42)) | (1 << (ZmeiLangParser.KW_AUTH - 42)) | (1 << (ZmeiLangParser.KW_COUNT - 42)) | (1 << (ZmeiLangParser.KW_I18N - 42)))) != 0) or ((((_la - 106)) & ~0x3f) == 0 and ((1 << (_la - 106)) & ((1 << (ZmeiLangParser.KW_EXTENSION - 106)) | (1 << (ZmeiLangParser.KW_TABS - 106)) | (1 << (ZmeiLangParser.KW_LIST - 106)) | (1 << (ZmeiLangParser.KW_READ_ONLY - 106)) | (1 << (ZmeiLangParser.KW_LIST_EDITABLE - 106)) | (1 << (ZmeiLangParser.KW_LIST_FILTER - 106)) | (1 << (ZmeiLangParser.KW_LIST_SEARCH - 106)) | (1 << (ZmeiLangParser.KW_FIELDS - 106)) | (1 << (ZmeiLangParser.KW_IMPORT - 106)) | (1 << (ZmeiLangParser.KW_AS - 106)) | (1 << (ZmeiLangParser.WRITE_MODE - 106)) | (1 << (ZmeiLangParser.BOOL - 106)) | (1 << (ZmeiLangParser.ID - 106)) | (1 << (ZmeiLangParser.EQUALS - 106)) | (1 << (ZmeiLangParser.DOLLAR - 106)) | (1 << (ZmeiLangParser.AMP - 106)) | (1 << (ZmeiLangParser.EXCLAM - 106)) | (1 << (ZmeiLangParser.STAR - 106)) | (1 << (ZmeiLangParser.APPROX - 106)))) != 0): + while ((((_la - 42)) & ~0x3f) == 0 and ((1 << (_la - 42)) & ((1 << (ZmeiLangParser.KW_AUTH_TYPE_BASIC - 42)) | (1 << (ZmeiLangParser.KW_AUTH_TYPE_SESSION - 42)) | (1 << (ZmeiLangParser.KW_AUTH_TYPE_TOKEN - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_HTML - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FLOAT - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_DECIMAL - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_DATE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_DATETIME - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_IMAGE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_TEXT - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_INT - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_SLUG - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_BOOL - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_ONE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_MANY - 42)) | (1 << (ZmeiLangParser.COL_FIELD_CHOICES - 42)) | (1 << (ZmeiLangParser.KW_THEME - 42)) | (1 << (ZmeiLangParser.KW_INSTALL - 42)) | (1 << (ZmeiLangParser.KW_HEADER - 42)) | (1 << (ZmeiLangParser.KW_SERVICES - 42)) | (1 << (ZmeiLangParser.KW_SELENIUM_PYTEST - 42)) | (1 << (ZmeiLangParser.KW_CHILD - 42)) | (1 << (ZmeiLangParser.KW_FILTER_OUT - 42)) | (1 << (ZmeiLangParser.KW_FILTER_IN - 42)) | (1 << (ZmeiLangParser.KW_PAGE - 42)) | (1 << (ZmeiLangParser.KW_LINK_SUFFIX - 42)) | (1 << (ZmeiLangParser.KW_URL_PREFIX - 42)) | (1 << (ZmeiLangParser.KW_CAN_EDIT - 42)) | (1 << (ZmeiLangParser.KW_OBJECT_EXPR - 42)) | (1 << (ZmeiLangParser.KW_BLOCK - 42)) | (1 << (ZmeiLangParser.KW_ITEM_NAME - 42)) | (1 << (ZmeiLangParser.KW_PK_PARAM - 42)) | (1 << (ZmeiLangParser.KW_LIST_FIELDS - 42)) | (1 << (ZmeiLangParser.KW_DELETE - 42)) | (1 << (ZmeiLangParser.KW_EDIT - 42)) | (1 << (ZmeiLangParser.KW_CREATE - 42)) | (1 << (ZmeiLangParser.KW_DETAIL - 42)) | (1 << (ZmeiLangParser.KW_SKIP - 42)) | (1 << (ZmeiLangParser.KW_FROM - 42)) | (1 << (ZmeiLangParser.KW_POLY_LIST - 42)) | (1 << (ZmeiLangParser.KW_CSS - 42)) | (1 << (ZmeiLangParser.KW_JS - 42)) | (1 << (ZmeiLangParser.KW_INLINE_TYPE_TABULAR - 42)) | (1 << (ZmeiLangParser.KW_INLINE_TYPE_STACKED - 42)) | (1 << (ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC - 42)) | (1 << (ZmeiLangParser.KW_INLINE - 42)) | (1 << (ZmeiLangParser.KW_TYPE - 42)) | (1 << (ZmeiLangParser.KW_USER_FIELD - 42)) | (1 << (ZmeiLangParser.KW_ANNOTATE - 42)) | (1 << (ZmeiLangParser.KW_ON_CREATE - 42)) | (1 << (ZmeiLangParser.KW_QUERY - 42)) | (1 << (ZmeiLangParser.KW_AUTH - 42)) | (1 << (ZmeiLangParser.KW_COUNT - 42)) | (1 << (ZmeiLangParser.KW_I18N - 42)))) != 0) or ((((_la - 106)) & ~0x3f) == 0 and ((1 << (_la - 106)) & ((1 << (ZmeiLangParser.KW_EXTRA - 106)) | (1 << (ZmeiLangParser.KW_TABS - 106)) | (1 << (ZmeiLangParser.KW_LIST - 106)) | (1 << (ZmeiLangParser.KW_READ_ONLY - 106)) | (1 << (ZmeiLangParser.KW_LIST_EDITABLE - 106)) | (1 << (ZmeiLangParser.KW_LIST_FILTER - 106)) | (1 << (ZmeiLangParser.KW_LIST_SEARCH - 106)) | (1 << (ZmeiLangParser.KW_FIELDS - 106)) | (1 << (ZmeiLangParser.KW_IMPORT - 106)) | (1 << (ZmeiLangParser.KW_AS - 106)) | (1 << (ZmeiLangParser.WRITE_MODE - 106)) | (1 << (ZmeiLangParser.BOOL - 106)) | (1 << (ZmeiLangParser.ID - 106)) | (1 << (ZmeiLangParser.EQUALS - 106)) | (1 << (ZmeiLangParser.DOLLAR - 106)) | (1 << (ZmeiLangParser.AMP - 106)) | (1 << (ZmeiLangParser.EXCLAM - 106)) | (1 << (ZmeiLangParser.STAR - 106)) | (1 << (ZmeiLangParser.APPROX - 106)))) != 0): self.state = 1039 self.col_field() self.state = 1044 @@ -6161,7 +6161,7 @@ def verbose_name_part(self): self.state = 1101 self._errHandler.sync(self) token = self._input.LA(1) - if token in [ZmeiLangParser.KW_AUTH_TYPE_BASIC, ZmeiLangParser.KW_AUTH_TYPE_SESSION, ZmeiLangParser.KW_AUTH_TYPE_TOKEN, ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT, ZmeiLangParser.COL_FIELD_TYPE_HTML, ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA, ZmeiLangParser.COL_FIELD_TYPE_FLOAT, ZmeiLangParser.COL_FIELD_TYPE_DECIMAL, ZmeiLangParser.COL_FIELD_TYPE_DATE, ZmeiLangParser.COL_FIELD_TYPE_DATETIME, ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_TEXT, ZmeiLangParser.COL_FIELD_TYPE_INT, ZmeiLangParser.COL_FIELD_TYPE_SLUG, ZmeiLangParser.COL_FIELD_TYPE_BOOL, ZmeiLangParser.COL_FIELD_TYPE_ONE, ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE, ZmeiLangParser.COL_FIELD_TYPE_MANY, ZmeiLangParser.COL_FIELD_CHOICES, ZmeiLangParser.KW_THEME, ZmeiLangParser.KW_INSTALL, ZmeiLangParser.KW_HEADER, ZmeiLangParser.KW_SERVICES, ZmeiLangParser.KW_SELENIUM_PYTEST, ZmeiLangParser.KW_CHILD, ZmeiLangParser.KW_FILTER_OUT, ZmeiLangParser.KW_FILTER_IN, ZmeiLangParser.KW_PAGE, ZmeiLangParser.KW_LINK_SUFFIX, ZmeiLangParser.KW_URL_PREFIX, ZmeiLangParser.KW_CAN_EDIT, ZmeiLangParser.KW_OBJECT_EXPR, ZmeiLangParser.KW_BLOCK, ZmeiLangParser.KW_ITEM_NAME, ZmeiLangParser.KW_PK_PARAM, ZmeiLangParser.KW_LIST_FIELDS, ZmeiLangParser.KW_DELETE, ZmeiLangParser.KW_EDIT, ZmeiLangParser.KW_CREATE, ZmeiLangParser.KW_DETAIL, ZmeiLangParser.KW_SKIP, ZmeiLangParser.KW_FROM, ZmeiLangParser.KW_POLY_LIST, ZmeiLangParser.KW_CSS, ZmeiLangParser.KW_JS, ZmeiLangParser.KW_INLINE_TYPE_TABULAR, ZmeiLangParser.KW_INLINE_TYPE_STACKED, ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC, ZmeiLangParser.KW_INLINE, ZmeiLangParser.KW_TYPE, ZmeiLangParser.KW_USER_FIELD, ZmeiLangParser.KW_ANNOTATE, ZmeiLangParser.KW_ON_CREATE, ZmeiLangParser.KW_QUERY, ZmeiLangParser.KW_AUTH, ZmeiLangParser.KW_COUNT, ZmeiLangParser.KW_I18N, ZmeiLangParser.KW_EXTENSION, ZmeiLangParser.KW_TABS, ZmeiLangParser.KW_LIST, ZmeiLangParser.KW_READ_ONLY, ZmeiLangParser.KW_LIST_EDITABLE, ZmeiLangParser.KW_LIST_FILTER, ZmeiLangParser.KW_LIST_SEARCH, ZmeiLangParser.KW_FIELDS, ZmeiLangParser.KW_IMPORT, ZmeiLangParser.KW_AS, ZmeiLangParser.WRITE_MODE, ZmeiLangParser.BOOL, ZmeiLangParser.ID]: + if token in [ZmeiLangParser.KW_AUTH_TYPE_BASIC, ZmeiLangParser.KW_AUTH_TYPE_SESSION, ZmeiLangParser.KW_AUTH_TYPE_TOKEN, ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT, ZmeiLangParser.COL_FIELD_TYPE_HTML, ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA, ZmeiLangParser.COL_FIELD_TYPE_FLOAT, ZmeiLangParser.COL_FIELD_TYPE_DECIMAL, ZmeiLangParser.COL_FIELD_TYPE_DATE, ZmeiLangParser.COL_FIELD_TYPE_DATETIME, ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_TEXT, ZmeiLangParser.COL_FIELD_TYPE_INT, ZmeiLangParser.COL_FIELD_TYPE_SLUG, ZmeiLangParser.COL_FIELD_TYPE_BOOL, ZmeiLangParser.COL_FIELD_TYPE_ONE, ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE, ZmeiLangParser.COL_FIELD_TYPE_MANY, ZmeiLangParser.COL_FIELD_CHOICES, ZmeiLangParser.KW_THEME, ZmeiLangParser.KW_INSTALL, ZmeiLangParser.KW_HEADER, ZmeiLangParser.KW_SERVICES, ZmeiLangParser.KW_SELENIUM_PYTEST, ZmeiLangParser.KW_CHILD, ZmeiLangParser.KW_FILTER_OUT, ZmeiLangParser.KW_FILTER_IN, ZmeiLangParser.KW_PAGE, ZmeiLangParser.KW_LINK_SUFFIX, ZmeiLangParser.KW_URL_PREFIX, ZmeiLangParser.KW_CAN_EDIT, ZmeiLangParser.KW_OBJECT_EXPR, ZmeiLangParser.KW_BLOCK, ZmeiLangParser.KW_ITEM_NAME, ZmeiLangParser.KW_PK_PARAM, ZmeiLangParser.KW_LIST_FIELDS, ZmeiLangParser.KW_DELETE, ZmeiLangParser.KW_EDIT, ZmeiLangParser.KW_CREATE, ZmeiLangParser.KW_DETAIL, ZmeiLangParser.KW_SKIP, ZmeiLangParser.KW_FROM, ZmeiLangParser.KW_POLY_LIST, ZmeiLangParser.KW_CSS, ZmeiLangParser.KW_JS, ZmeiLangParser.KW_INLINE_TYPE_TABULAR, ZmeiLangParser.KW_INLINE_TYPE_STACKED, ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC, ZmeiLangParser.KW_INLINE, ZmeiLangParser.KW_TYPE, ZmeiLangParser.KW_USER_FIELD, ZmeiLangParser.KW_ANNOTATE, ZmeiLangParser.KW_ON_CREATE, ZmeiLangParser.KW_QUERY, ZmeiLangParser.KW_AUTH, ZmeiLangParser.KW_COUNT, ZmeiLangParser.KW_I18N, ZmeiLangParser.KW_EXTRA, ZmeiLangParser.KW_TABS, ZmeiLangParser.KW_LIST, ZmeiLangParser.KW_READ_ONLY, ZmeiLangParser.KW_LIST_EDITABLE, ZmeiLangParser.KW_LIST_FILTER, ZmeiLangParser.KW_LIST_SEARCH, ZmeiLangParser.KW_FIELDS, ZmeiLangParser.KW_IMPORT, ZmeiLangParser.KW_AS, ZmeiLangParser.WRITE_MODE, ZmeiLangParser.BOOL, ZmeiLangParser.ID]: self.state = 1098 self.id_or_kw() pass @@ -6887,7 +6887,7 @@ def string_or_quoted(self): self.state = 1176 self._errHandler.sync(self) token = self._input.LA(1) - if token in [ZmeiLangParser.KW_AUTH_TYPE_BASIC, ZmeiLangParser.KW_AUTH_TYPE_SESSION, ZmeiLangParser.KW_AUTH_TYPE_TOKEN, ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT, ZmeiLangParser.COL_FIELD_TYPE_HTML, ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA, ZmeiLangParser.COL_FIELD_TYPE_FLOAT, ZmeiLangParser.COL_FIELD_TYPE_DECIMAL, ZmeiLangParser.COL_FIELD_TYPE_DATE, ZmeiLangParser.COL_FIELD_TYPE_DATETIME, ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_TEXT, ZmeiLangParser.COL_FIELD_TYPE_INT, ZmeiLangParser.COL_FIELD_TYPE_SLUG, ZmeiLangParser.COL_FIELD_TYPE_BOOL, ZmeiLangParser.COL_FIELD_TYPE_ONE, ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE, ZmeiLangParser.COL_FIELD_TYPE_MANY, ZmeiLangParser.COL_FIELD_CHOICES, ZmeiLangParser.KW_THEME, ZmeiLangParser.KW_INSTALL, ZmeiLangParser.KW_HEADER, ZmeiLangParser.KW_SERVICES, ZmeiLangParser.KW_SELENIUM_PYTEST, ZmeiLangParser.KW_CHILD, ZmeiLangParser.KW_FILTER_OUT, ZmeiLangParser.KW_FILTER_IN, ZmeiLangParser.KW_PAGE, ZmeiLangParser.KW_LINK_SUFFIX, ZmeiLangParser.KW_URL_PREFIX, ZmeiLangParser.KW_CAN_EDIT, ZmeiLangParser.KW_OBJECT_EXPR, ZmeiLangParser.KW_BLOCK, ZmeiLangParser.KW_ITEM_NAME, ZmeiLangParser.KW_PK_PARAM, ZmeiLangParser.KW_LIST_FIELDS, ZmeiLangParser.KW_DELETE, ZmeiLangParser.KW_EDIT, ZmeiLangParser.KW_CREATE, ZmeiLangParser.KW_DETAIL, ZmeiLangParser.KW_SKIP, ZmeiLangParser.KW_FROM, ZmeiLangParser.KW_POLY_LIST, ZmeiLangParser.KW_CSS, ZmeiLangParser.KW_JS, ZmeiLangParser.KW_INLINE_TYPE_TABULAR, ZmeiLangParser.KW_INLINE_TYPE_STACKED, ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC, ZmeiLangParser.KW_INLINE, ZmeiLangParser.KW_TYPE, ZmeiLangParser.KW_USER_FIELD, ZmeiLangParser.KW_ANNOTATE, ZmeiLangParser.KW_ON_CREATE, ZmeiLangParser.KW_QUERY, ZmeiLangParser.KW_AUTH, ZmeiLangParser.KW_COUNT, ZmeiLangParser.KW_I18N, ZmeiLangParser.KW_EXTENSION, ZmeiLangParser.KW_TABS, ZmeiLangParser.KW_LIST, ZmeiLangParser.KW_READ_ONLY, ZmeiLangParser.KW_LIST_EDITABLE, ZmeiLangParser.KW_LIST_FILTER, ZmeiLangParser.KW_LIST_SEARCH, ZmeiLangParser.KW_FIELDS, ZmeiLangParser.KW_IMPORT, ZmeiLangParser.KW_AS, ZmeiLangParser.WRITE_MODE, ZmeiLangParser.BOOL, ZmeiLangParser.ID]: + if token in [ZmeiLangParser.KW_AUTH_TYPE_BASIC, ZmeiLangParser.KW_AUTH_TYPE_SESSION, ZmeiLangParser.KW_AUTH_TYPE_TOKEN, ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT, ZmeiLangParser.COL_FIELD_TYPE_HTML, ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA, ZmeiLangParser.COL_FIELD_TYPE_FLOAT, ZmeiLangParser.COL_FIELD_TYPE_DECIMAL, ZmeiLangParser.COL_FIELD_TYPE_DATE, ZmeiLangParser.COL_FIELD_TYPE_DATETIME, ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_TEXT, ZmeiLangParser.COL_FIELD_TYPE_INT, ZmeiLangParser.COL_FIELD_TYPE_SLUG, ZmeiLangParser.COL_FIELD_TYPE_BOOL, ZmeiLangParser.COL_FIELD_TYPE_ONE, ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE, ZmeiLangParser.COL_FIELD_TYPE_MANY, ZmeiLangParser.COL_FIELD_CHOICES, ZmeiLangParser.KW_THEME, ZmeiLangParser.KW_INSTALL, ZmeiLangParser.KW_HEADER, ZmeiLangParser.KW_SERVICES, ZmeiLangParser.KW_SELENIUM_PYTEST, ZmeiLangParser.KW_CHILD, ZmeiLangParser.KW_FILTER_OUT, ZmeiLangParser.KW_FILTER_IN, ZmeiLangParser.KW_PAGE, ZmeiLangParser.KW_LINK_SUFFIX, ZmeiLangParser.KW_URL_PREFIX, ZmeiLangParser.KW_CAN_EDIT, ZmeiLangParser.KW_OBJECT_EXPR, ZmeiLangParser.KW_BLOCK, ZmeiLangParser.KW_ITEM_NAME, ZmeiLangParser.KW_PK_PARAM, ZmeiLangParser.KW_LIST_FIELDS, ZmeiLangParser.KW_DELETE, ZmeiLangParser.KW_EDIT, ZmeiLangParser.KW_CREATE, ZmeiLangParser.KW_DETAIL, ZmeiLangParser.KW_SKIP, ZmeiLangParser.KW_FROM, ZmeiLangParser.KW_POLY_LIST, ZmeiLangParser.KW_CSS, ZmeiLangParser.KW_JS, ZmeiLangParser.KW_INLINE_TYPE_TABULAR, ZmeiLangParser.KW_INLINE_TYPE_STACKED, ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC, ZmeiLangParser.KW_INLINE, ZmeiLangParser.KW_TYPE, ZmeiLangParser.KW_USER_FIELD, ZmeiLangParser.KW_ANNOTATE, ZmeiLangParser.KW_ON_CREATE, ZmeiLangParser.KW_QUERY, ZmeiLangParser.KW_AUTH, ZmeiLangParser.KW_COUNT, ZmeiLangParser.KW_I18N, ZmeiLangParser.KW_EXTRA, ZmeiLangParser.KW_TABS, ZmeiLangParser.KW_LIST, ZmeiLangParser.KW_READ_ONLY, ZmeiLangParser.KW_LIST_EDITABLE, ZmeiLangParser.KW_LIST_FILTER, ZmeiLangParser.KW_LIST_SEARCH, ZmeiLangParser.KW_FIELDS, ZmeiLangParser.KW_IMPORT, ZmeiLangParser.KW_AS, ZmeiLangParser.WRITE_MODE, ZmeiLangParser.BOOL, ZmeiLangParser.ID]: self.state = 1170 self._errHandler.sync(self) _la = self._input.LA(1) @@ -6897,7 +6897,7 @@ def string_or_quoted(self): self.state = 1172 self._errHandler.sync(self) _la = self._input.LA(1) - if not ((((_la) & ~0x3f) == 0 and ((1 << _la) & ((1 << ZmeiLangParser.KW_AUTH_TYPE_BASIC) | (1 << ZmeiLangParser.KW_AUTH_TYPE_SESSION) | (1 << ZmeiLangParser.KW_AUTH_TYPE_TOKEN) | (1 << ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT) | (1 << ZmeiLangParser.COL_FIELD_TYPE_HTML) | (1 << ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA) | (1 << ZmeiLangParser.COL_FIELD_TYPE_FLOAT) | (1 << ZmeiLangParser.COL_FIELD_TYPE_DECIMAL) | (1 << ZmeiLangParser.COL_FIELD_TYPE_DATE) | (1 << ZmeiLangParser.COL_FIELD_TYPE_DATETIME) | (1 << ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME) | (1 << ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME) | (1 << ZmeiLangParser.COL_FIELD_TYPE_IMAGE) | (1 << ZmeiLangParser.COL_FIELD_TYPE_FILE) | (1 << ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE) | (1 << ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE) | (1 << ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER) | (1 << ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER) | (1 << ZmeiLangParser.COL_FIELD_TYPE_TEXT) | (1 << ZmeiLangParser.COL_FIELD_TYPE_INT) | (1 << ZmeiLangParser.COL_FIELD_TYPE_SLUG) | (1 << ZmeiLangParser.COL_FIELD_TYPE_BOOL))) != 0) or ((((_la - 64)) & ~0x3f) == 0 and ((1 << (_la - 64)) & ((1 << (ZmeiLangParser.COL_FIELD_TYPE_ONE - 64)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE - 64)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_MANY - 64)) | (1 << (ZmeiLangParser.COL_FIELD_CHOICES - 64)) | (1 << (ZmeiLangParser.KW_THEME - 64)) | (1 << (ZmeiLangParser.KW_INSTALL - 64)) | (1 << (ZmeiLangParser.KW_HEADER - 64)) | (1 << (ZmeiLangParser.KW_SERVICES - 64)) | (1 << (ZmeiLangParser.KW_SELENIUM_PYTEST - 64)) | (1 << (ZmeiLangParser.KW_CHILD - 64)) | (1 << (ZmeiLangParser.KW_FILTER_OUT - 64)) | (1 << (ZmeiLangParser.KW_FILTER_IN - 64)) | (1 << (ZmeiLangParser.KW_PAGE - 64)) | (1 << (ZmeiLangParser.KW_LINK_SUFFIX - 64)) | (1 << (ZmeiLangParser.KW_URL_PREFIX - 64)) | (1 << (ZmeiLangParser.KW_CAN_EDIT - 64)) | (1 << (ZmeiLangParser.KW_OBJECT_EXPR - 64)) | (1 << (ZmeiLangParser.KW_BLOCK - 64)) | (1 << (ZmeiLangParser.KW_ITEM_NAME - 64)) | (1 << (ZmeiLangParser.KW_PK_PARAM - 64)) | (1 << (ZmeiLangParser.KW_LIST_FIELDS - 64)) | (1 << (ZmeiLangParser.KW_DELETE - 64)) | (1 << (ZmeiLangParser.KW_EDIT - 64)) | (1 << (ZmeiLangParser.KW_CREATE - 64)) | (1 << (ZmeiLangParser.KW_DETAIL - 64)) | (1 << (ZmeiLangParser.KW_SKIP - 64)) | (1 << (ZmeiLangParser.KW_FROM - 64)) | (1 << (ZmeiLangParser.KW_POLY_LIST - 64)) | (1 << (ZmeiLangParser.KW_CSS - 64)) | (1 << (ZmeiLangParser.KW_JS - 64)) | (1 << (ZmeiLangParser.KW_INLINE_TYPE_TABULAR - 64)) | (1 << (ZmeiLangParser.KW_INLINE_TYPE_STACKED - 64)) | (1 << (ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC - 64)) | (1 << (ZmeiLangParser.KW_INLINE - 64)) | (1 << (ZmeiLangParser.KW_TYPE - 64)) | (1 << (ZmeiLangParser.KW_USER_FIELD - 64)) | (1 << (ZmeiLangParser.KW_ANNOTATE - 64)) | (1 << (ZmeiLangParser.KW_ON_CREATE - 64)) | (1 << (ZmeiLangParser.KW_QUERY - 64)) | (1 << (ZmeiLangParser.KW_AUTH - 64)) | (1 << (ZmeiLangParser.KW_COUNT - 64)) | (1 << (ZmeiLangParser.KW_I18N - 64)) | (1 << (ZmeiLangParser.KW_EXTENSION - 64)) | (1 << (ZmeiLangParser.KW_TABS - 64)) | (1 << (ZmeiLangParser.KW_LIST - 64)) | (1 << (ZmeiLangParser.KW_READ_ONLY - 64)) | (1 << (ZmeiLangParser.KW_LIST_EDITABLE - 64)) | (1 << (ZmeiLangParser.KW_LIST_FILTER - 64)) | (1 << (ZmeiLangParser.KW_LIST_SEARCH - 64)) | (1 << (ZmeiLangParser.KW_FIELDS - 64)) | (1 << (ZmeiLangParser.KW_IMPORT - 64)) | (1 << (ZmeiLangParser.KW_AS - 64)) | (1 << (ZmeiLangParser.WRITE_MODE - 64)) | (1 << (ZmeiLangParser.BOOL - 64)) | (1 << (ZmeiLangParser.ID - 64)))) != 0)): + if not ((((_la) & ~0x3f) == 0 and ((1 << _la) & ((1 << ZmeiLangParser.KW_AUTH_TYPE_BASIC) | (1 << ZmeiLangParser.KW_AUTH_TYPE_SESSION) | (1 << ZmeiLangParser.KW_AUTH_TYPE_TOKEN) | (1 << ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT) | (1 << ZmeiLangParser.COL_FIELD_TYPE_HTML) | (1 << ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA) | (1 << ZmeiLangParser.COL_FIELD_TYPE_FLOAT) | (1 << ZmeiLangParser.COL_FIELD_TYPE_DECIMAL) | (1 << ZmeiLangParser.COL_FIELD_TYPE_DATE) | (1 << ZmeiLangParser.COL_FIELD_TYPE_DATETIME) | (1 << ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME) | (1 << ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME) | (1 << ZmeiLangParser.COL_FIELD_TYPE_IMAGE) | (1 << ZmeiLangParser.COL_FIELD_TYPE_FILE) | (1 << ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE) | (1 << ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE) | (1 << ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER) | (1 << ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER) | (1 << ZmeiLangParser.COL_FIELD_TYPE_TEXT) | (1 << ZmeiLangParser.COL_FIELD_TYPE_INT) | (1 << ZmeiLangParser.COL_FIELD_TYPE_SLUG) | (1 << ZmeiLangParser.COL_FIELD_TYPE_BOOL))) != 0) or ((((_la - 64)) & ~0x3f) == 0 and ((1 << (_la - 64)) & ((1 << (ZmeiLangParser.COL_FIELD_TYPE_ONE - 64)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE - 64)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_MANY - 64)) | (1 << (ZmeiLangParser.COL_FIELD_CHOICES - 64)) | (1 << (ZmeiLangParser.KW_THEME - 64)) | (1 << (ZmeiLangParser.KW_INSTALL - 64)) | (1 << (ZmeiLangParser.KW_HEADER - 64)) | (1 << (ZmeiLangParser.KW_SERVICES - 64)) | (1 << (ZmeiLangParser.KW_SELENIUM_PYTEST - 64)) | (1 << (ZmeiLangParser.KW_CHILD - 64)) | (1 << (ZmeiLangParser.KW_FILTER_OUT - 64)) | (1 << (ZmeiLangParser.KW_FILTER_IN - 64)) | (1 << (ZmeiLangParser.KW_PAGE - 64)) | (1 << (ZmeiLangParser.KW_LINK_SUFFIX - 64)) | (1 << (ZmeiLangParser.KW_URL_PREFIX - 64)) | (1 << (ZmeiLangParser.KW_CAN_EDIT - 64)) | (1 << (ZmeiLangParser.KW_OBJECT_EXPR - 64)) | (1 << (ZmeiLangParser.KW_BLOCK - 64)) | (1 << (ZmeiLangParser.KW_ITEM_NAME - 64)) | (1 << (ZmeiLangParser.KW_PK_PARAM - 64)) | (1 << (ZmeiLangParser.KW_LIST_FIELDS - 64)) | (1 << (ZmeiLangParser.KW_DELETE - 64)) | (1 << (ZmeiLangParser.KW_EDIT - 64)) | (1 << (ZmeiLangParser.KW_CREATE - 64)) | (1 << (ZmeiLangParser.KW_DETAIL - 64)) | (1 << (ZmeiLangParser.KW_SKIP - 64)) | (1 << (ZmeiLangParser.KW_FROM - 64)) | (1 << (ZmeiLangParser.KW_POLY_LIST - 64)) | (1 << (ZmeiLangParser.KW_CSS - 64)) | (1 << (ZmeiLangParser.KW_JS - 64)) | (1 << (ZmeiLangParser.KW_INLINE_TYPE_TABULAR - 64)) | (1 << (ZmeiLangParser.KW_INLINE_TYPE_STACKED - 64)) | (1 << (ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC - 64)) | (1 << (ZmeiLangParser.KW_INLINE - 64)) | (1 << (ZmeiLangParser.KW_TYPE - 64)) | (1 << (ZmeiLangParser.KW_USER_FIELD - 64)) | (1 << (ZmeiLangParser.KW_ANNOTATE - 64)) | (1 << (ZmeiLangParser.KW_ON_CREATE - 64)) | (1 << (ZmeiLangParser.KW_QUERY - 64)) | (1 << (ZmeiLangParser.KW_AUTH - 64)) | (1 << (ZmeiLangParser.KW_COUNT - 64)) | (1 << (ZmeiLangParser.KW_I18N - 64)) | (1 << (ZmeiLangParser.KW_EXTRA - 64)) | (1 << (ZmeiLangParser.KW_TABS - 64)) | (1 << (ZmeiLangParser.KW_LIST - 64)) | (1 << (ZmeiLangParser.KW_READ_ONLY - 64)) | (1 << (ZmeiLangParser.KW_LIST_EDITABLE - 64)) | (1 << (ZmeiLangParser.KW_LIST_FILTER - 64)) | (1 << (ZmeiLangParser.KW_LIST_SEARCH - 64)) | (1 << (ZmeiLangParser.KW_FIELDS - 64)) | (1 << (ZmeiLangParser.KW_IMPORT - 64)) | (1 << (ZmeiLangParser.KW_AS - 64)) | (1 << (ZmeiLangParser.WRITE_MODE - 64)) | (1 << (ZmeiLangParser.BOOL - 64)) | (1 << (ZmeiLangParser.ID - 64)))) != 0)): break pass @@ -8091,7 +8091,7 @@ def field_text_choice_val(self): self.state = 1263 self._errHandler.sync(self) token = self._input.LA(1) - if token in [ZmeiLangParser.KW_AUTH_TYPE_BASIC, ZmeiLangParser.KW_AUTH_TYPE_SESSION, ZmeiLangParser.KW_AUTH_TYPE_TOKEN, ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT, ZmeiLangParser.COL_FIELD_TYPE_HTML, ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA, ZmeiLangParser.COL_FIELD_TYPE_FLOAT, ZmeiLangParser.COL_FIELD_TYPE_DECIMAL, ZmeiLangParser.COL_FIELD_TYPE_DATE, ZmeiLangParser.COL_FIELD_TYPE_DATETIME, ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_TEXT, ZmeiLangParser.COL_FIELD_TYPE_INT, ZmeiLangParser.COL_FIELD_TYPE_SLUG, ZmeiLangParser.COL_FIELD_TYPE_BOOL, ZmeiLangParser.COL_FIELD_TYPE_ONE, ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE, ZmeiLangParser.COL_FIELD_TYPE_MANY, ZmeiLangParser.COL_FIELD_CHOICES, ZmeiLangParser.KW_THEME, ZmeiLangParser.KW_INSTALL, ZmeiLangParser.KW_HEADER, ZmeiLangParser.KW_SERVICES, ZmeiLangParser.KW_SELENIUM_PYTEST, ZmeiLangParser.KW_CHILD, ZmeiLangParser.KW_FILTER_OUT, ZmeiLangParser.KW_FILTER_IN, ZmeiLangParser.KW_PAGE, ZmeiLangParser.KW_LINK_SUFFIX, ZmeiLangParser.KW_URL_PREFIX, ZmeiLangParser.KW_CAN_EDIT, ZmeiLangParser.KW_OBJECT_EXPR, ZmeiLangParser.KW_BLOCK, ZmeiLangParser.KW_ITEM_NAME, ZmeiLangParser.KW_PK_PARAM, ZmeiLangParser.KW_LIST_FIELDS, ZmeiLangParser.KW_DELETE, ZmeiLangParser.KW_EDIT, ZmeiLangParser.KW_CREATE, ZmeiLangParser.KW_DETAIL, ZmeiLangParser.KW_SKIP, ZmeiLangParser.KW_FROM, ZmeiLangParser.KW_POLY_LIST, ZmeiLangParser.KW_CSS, ZmeiLangParser.KW_JS, ZmeiLangParser.KW_INLINE_TYPE_TABULAR, ZmeiLangParser.KW_INLINE_TYPE_STACKED, ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC, ZmeiLangParser.KW_INLINE, ZmeiLangParser.KW_TYPE, ZmeiLangParser.KW_USER_FIELD, ZmeiLangParser.KW_ANNOTATE, ZmeiLangParser.KW_ON_CREATE, ZmeiLangParser.KW_QUERY, ZmeiLangParser.KW_AUTH, ZmeiLangParser.KW_COUNT, ZmeiLangParser.KW_I18N, ZmeiLangParser.KW_EXTENSION, ZmeiLangParser.KW_TABS, ZmeiLangParser.KW_LIST, ZmeiLangParser.KW_READ_ONLY, ZmeiLangParser.KW_LIST_EDITABLE, ZmeiLangParser.KW_LIST_FILTER, ZmeiLangParser.KW_LIST_SEARCH, ZmeiLangParser.KW_FIELDS, ZmeiLangParser.KW_IMPORT, ZmeiLangParser.KW_AS, ZmeiLangParser.WRITE_MODE, ZmeiLangParser.BOOL, ZmeiLangParser.ID]: + if token in [ZmeiLangParser.KW_AUTH_TYPE_BASIC, ZmeiLangParser.KW_AUTH_TYPE_SESSION, ZmeiLangParser.KW_AUTH_TYPE_TOKEN, ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT, ZmeiLangParser.COL_FIELD_TYPE_HTML, ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA, ZmeiLangParser.COL_FIELD_TYPE_FLOAT, ZmeiLangParser.COL_FIELD_TYPE_DECIMAL, ZmeiLangParser.COL_FIELD_TYPE_DATE, ZmeiLangParser.COL_FIELD_TYPE_DATETIME, ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_TEXT, ZmeiLangParser.COL_FIELD_TYPE_INT, ZmeiLangParser.COL_FIELD_TYPE_SLUG, ZmeiLangParser.COL_FIELD_TYPE_BOOL, ZmeiLangParser.COL_FIELD_TYPE_ONE, ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE, ZmeiLangParser.COL_FIELD_TYPE_MANY, ZmeiLangParser.COL_FIELD_CHOICES, ZmeiLangParser.KW_THEME, ZmeiLangParser.KW_INSTALL, ZmeiLangParser.KW_HEADER, ZmeiLangParser.KW_SERVICES, ZmeiLangParser.KW_SELENIUM_PYTEST, ZmeiLangParser.KW_CHILD, ZmeiLangParser.KW_FILTER_OUT, ZmeiLangParser.KW_FILTER_IN, ZmeiLangParser.KW_PAGE, ZmeiLangParser.KW_LINK_SUFFIX, ZmeiLangParser.KW_URL_PREFIX, ZmeiLangParser.KW_CAN_EDIT, ZmeiLangParser.KW_OBJECT_EXPR, ZmeiLangParser.KW_BLOCK, ZmeiLangParser.KW_ITEM_NAME, ZmeiLangParser.KW_PK_PARAM, ZmeiLangParser.KW_LIST_FIELDS, ZmeiLangParser.KW_DELETE, ZmeiLangParser.KW_EDIT, ZmeiLangParser.KW_CREATE, ZmeiLangParser.KW_DETAIL, ZmeiLangParser.KW_SKIP, ZmeiLangParser.KW_FROM, ZmeiLangParser.KW_POLY_LIST, ZmeiLangParser.KW_CSS, ZmeiLangParser.KW_JS, ZmeiLangParser.KW_INLINE_TYPE_TABULAR, ZmeiLangParser.KW_INLINE_TYPE_STACKED, ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC, ZmeiLangParser.KW_INLINE, ZmeiLangParser.KW_TYPE, ZmeiLangParser.KW_USER_FIELD, ZmeiLangParser.KW_ANNOTATE, ZmeiLangParser.KW_ON_CREATE, ZmeiLangParser.KW_QUERY, ZmeiLangParser.KW_AUTH, ZmeiLangParser.KW_COUNT, ZmeiLangParser.KW_I18N, ZmeiLangParser.KW_EXTRA, ZmeiLangParser.KW_TABS, ZmeiLangParser.KW_LIST, ZmeiLangParser.KW_READ_ONLY, ZmeiLangParser.KW_LIST_EDITABLE, ZmeiLangParser.KW_LIST_FILTER, ZmeiLangParser.KW_LIST_SEARCH, ZmeiLangParser.KW_FIELDS, ZmeiLangParser.KW_IMPORT, ZmeiLangParser.KW_AS, ZmeiLangParser.WRITE_MODE, ZmeiLangParser.BOOL, ZmeiLangParser.ID]: self.state = 1260 self.id_or_kw() pass @@ -8390,7 +8390,7 @@ def field_int_choice_val(self): self.state = 1293 self._errHandler.sync(self) token = self._input.LA(1) - if token in [ZmeiLangParser.KW_AUTH_TYPE_BASIC, ZmeiLangParser.KW_AUTH_TYPE_SESSION, ZmeiLangParser.KW_AUTH_TYPE_TOKEN, ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT, ZmeiLangParser.COL_FIELD_TYPE_HTML, ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA, ZmeiLangParser.COL_FIELD_TYPE_FLOAT, ZmeiLangParser.COL_FIELD_TYPE_DECIMAL, ZmeiLangParser.COL_FIELD_TYPE_DATE, ZmeiLangParser.COL_FIELD_TYPE_DATETIME, ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_TEXT, ZmeiLangParser.COL_FIELD_TYPE_INT, ZmeiLangParser.COL_FIELD_TYPE_SLUG, ZmeiLangParser.COL_FIELD_TYPE_BOOL, ZmeiLangParser.COL_FIELD_TYPE_ONE, ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE, ZmeiLangParser.COL_FIELD_TYPE_MANY, ZmeiLangParser.COL_FIELD_CHOICES, ZmeiLangParser.KW_THEME, ZmeiLangParser.KW_INSTALL, ZmeiLangParser.KW_HEADER, ZmeiLangParser.KW_SERVICES, ZmeiLangParser.KW_SELENIUM_PYTEST, ZmeiLangParser.KW_CHILD, ZmeiLangParser.KW_FILTER_OUT, ZmeiLangParser.KW_FILTER_IN, ZmeiLangParser.KW_PAGE, ZmeiLangParser.KW_LINK_SUFFIX, ZmeiLangParser.KW_URL_PREFIX, ZmeiLangParser.KW_CAN_EDIT, ZmeiLangParser.KW_OBJECT_EXPR, ZmeiLangParser.KW_BLOCK, ZmeiLangParser.KW_ITEM_NAME, ZmeiLangParser.KW_PK_PARAM, ZmeiLangParser.KW_LIST_FIELDS, ZmeiLangParser.KW_DELETE, ZmeiLangParser.KW_EDIT, ZmeiLangParser.KW_CREATE, ZmeiLangParser.KW_DETAIL, ZmeiLangParser.KW_SKIP, ZmeiLangParser.KW_FROM, ZmeiLangParser.KW_POLY_LIST, ZmeiLangParser.KW_CSS, ZmeiLangParser.KW_JS, ZmeiLangParser.KW_INLINE_TYPE_TABULAR, ZmeiLangParser.KW_INLINE_TYPE_STACKED, ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC, ZmeiLangParser.KW_INLINE, ZmeiLangParser.KW_TYPE, ZmeiLangParser.KW_USER_FIELD, ZmeiLangParser.KW_ANNOTATE, ZmeiLangParser.KW_ON_CREATE, ZmeiLangParser.KW_QUERY, ZmeiLangParser.KW_AUTH, ZmeiLangParser.KW_COUNT, ZmeiLangParser.KW_I18N, ZmeiLangParser.KW_EXTENSION, ZmeiLangParser.KW_TABS, ZmeiLangParser.KW_LIST, ZmeiLangParser.KW_READ_ONLY, ZmeiLangParser.KW_LIST_EDITABLE, ZmeiLangParser.KW_LIST_FILTER, ZmeiLangParser.KW_LIST_SEARCH, ZmeiLangParser.KW_FIELDS, ZmeiLangParser.KW_IMPORT, ZmeiLangParser.KW_AS, ZmeiLangParser.WRITE_MODE, ZmeiLangParser.BOOL, ZmeiLangParser.ID]: + if token in [ZmeiLangParser.KW_AUTH_TYPE_BASIC, ZmeiLangParser.KW_AUTH_TYPE_SESSION, ZmeiLangParser.KW_AUTH_TYPE_TOKEN, ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT, ZmeiLangParser.COL_FIELD_TYPE_HTML, ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA, ZmeiLangParser.COL_FIELD_TYPE_FLOAT, ZmeiLangParser.COL_FIELD_TYPE_DECIMAL, ZmeiLangParser.COL_FIELD_TYPE_DATE, ZmeiLangParser.COL_FIELD_TYPE_DATETIME, ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_TEXT, ZmeiLangParser.COL_FIELD_TYPE_INT, ZmeiLangParser.COL_FIELD_TYPE_SLUG, ZmeiLangParser.COL_FIELD_TYPE_BOOL, ZmeiLangParser.COL_FIELD_TYPE_ONE, ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE, ZmeiLangParser.COL_FIELD_TYPE_MANY, ZmeiLangParser.COL_FIELD_CHOICES, ZmeiLangParser.KW_THEME, ZmeiLangParser.KW_INSTALL, ZmeiLangParser.KW_HEADER, ZmeiLangParser.KW_SERVICES, ZmeiLangParser.KW_SELENIUM_PYTEST, ZmeiLangParser.KW_CHILD, ZmeiLangParser.KW_FILTER_OUT, ZmeiLangParser.KW_FILTER_IN, ZmeiLangParser.KW_PAGE, ZmeiLangParser.KW_LINK_SUFFIX, ZmeiLangParser.KW_URL_PREFIX, ZmeiLangParser.KW_CAN_EDIT, ZmeiLangParser.KW_OBJECT_EXPR, ZmeiLangParser.KW_BLOCK, ZmeiLangParser.KW_ITEM_NAME, ZmeiLangParser.KW_PK_PARAM, ZmeiLangParser.KW_LIST_FIELDS, ZmeiLangParser.KW_DELETE, ZmeiLangParser.KW_EDIT, ZmeiLangParser.KW_CREATE, ZmeiLangParser.KW_DETAIL, ZmeiLangParser.KW_SKIP, ZmeiLangParser.KW_FROM, ZmeiLangParser.KW_POLY_LIST, ZmeiLangParser.KW_CSS, ZmeiLangParser.KW_JS, ZmeiLangParser.KW_INLINE_TYPE_TABULAR, ZmeiLangParser.KW_INLINE_TYPE_STACKED, ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC, ZmeiLangParser.KW_INLINE, ZmeiLangParser.KW_TYPE, ZmeiLangParser.KW_USER_FIELD, ZmeiLangParser.KW_ANNOTATE, ZmeiLangParser.KW_ON_CREATE, ZmeiLangParser.KW_QUERY, ZmeiLangParser.KW_AUTH, ZmeiLangParser.KW_COUNT, ZmeiLangParser.KW_I18N, ZmeiLangParser.KW_EXTRA, ZmeiLangParser.KW_TABS, ZmeiLangParser.KW_LIST, ZmeiLangParser.KW_READ_ONLY, ZmeiLangParser.KW_LIST_EDITABLE, ZmeiLangParser.KW_LIST_FILTER, ZmeiLangParser.KW_LIST_SEARCH, ZmeiLangParser.KW_FIELDS, ZmeiLangParser.KW_IMPORT, ZmeiLangParser.KW_AS, ZmeiLangParser.WRITE_MODE, ZmeiLangParser.BOOL, ZmeiLangParser.ID]: self.state = 1290 self.id_or_kw() pass @@ -9211,7 +9211,7 @@ def field_relation(self): self.state = 1362 self.field_relation_target_ref() pass - elif token in [ZmeiLangParser.KW_AUTH_TYPE_BASIC, ZmeiLangParser.KW_AUTH_TYPE_SESSION, ZmeiLangParser.KW_AUTH_TYPE_TOKEN, ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT, ZmeiLangParser.COL_FIELD_TYPE_HTML, ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA, ZmeiLangParser.COL_FIELD_TYPE_FLOAT, ZmeiLangParser.COL_FIELD_TYPE_DECIMAL, ZmeiLangParser.COL_FIELD_TYPE_DATE, ZmeiLangParser.COL_FIELD_TYPE_DATETIME, ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_TEXT, ZmeiLangParser.COL_FIELD_TYPE_INT, ZmeiLangParser.COL_FIELD_TYPE_SLUG, ZmeiLangParser.COL_FIELD_TYPE_BOOL, ZmeiLangParser.COL_FIELD_TYPE_ONE, ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE, ZmeiLangParser.COL_FIELD_TYPE_MANY, ZmeiLangParser.COL_FIELD_CHOICES, ZmeiLangParser.KW_THEME, ZmeiLangParser.KW_INSTALL, ZmeiLangParser.KW_HEADER, ZmeiLangParser.KW_SERVICES, ZmeiLangParser.KW_SELENIUM_PYTEST, ZmeiLangParser.KW_CHILD, ZmeiLangParser.KW_FILTER_OUT, ZmeiLangParser.KW_FILTER_IN, ZmeiLangParser.KW_PAGE, ZmeiLangParser.KW_LINK_SUFFIX, ZmeiLangParser.KW_URL_PREFIX, ZmeiLangParser.KW_CAN_EDIT, ZmeiLangParser.KW_OBJECT_EXPR, ZmeiLangParser.KW_BLOCK, ZmeiLangParser.KW_ITEM_NAME, ZmeiLangParser.KW_PK_PARAM, ZmeiLangParser.KW_LIST_FIELDS, ZmeiLangParser.KW_DELETE, ZmeiLangParser.KW_EDIT, ZmeiLangParser.KW_CREATE, ZmeiLangParser.KW_DETAIL, ZmeiLangParser.KW_SKIP, ZmeiLangParser.KW_FROM, ZmeiLangParser.KW_POLY_LIST, ZmeiLangParser.KW_CSS, ZmeiLangParser.KW_JS, ZmeiLangParser.KW_INLINE_TYPE_TABULAR, ZmeiLangParser.KW_INLINE_TYPE_STACKED, ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC, ZmeiLangParser.KW_INLINE, ZmeiLangParser.KW_TYPE, ZmeiLangParser.KW_USER_FIELD, ZmeiLangParser.KW_ANNOTATE, ZmeiLangParser.KW_ON_CREATE, ZmeiLangParser.KW_QUERY, ZmeiLangParser.KW_AUTH, ZmeiLangParser.KW_COUNT, ZmeiLangParser.KW_I18N, ZmeiLangParser.KW_EXTENSION, ZmeiLangParser.KW_TABS, ZmeiLangParser.KW_LIST, ZmeiLangParser.KW_READ_ONLY, ZmeiLangParser.KW_LIST_EDITABLE, ZmeiLangParser.KW_LIST_FILTER, ZmeiLangParser.KW_LIST_SEARCH, ZmeiLangParser.KW_FIELDS, ZmeiLangParser.KW_IMPORT, ZmeiLangParser.KW_AS, ZmeiLangParser.WRITE_MODE, ZmeiLangParser.BOOL, ZmeiLangParser.ID]: + elif token in [ZmeiLangParser.KW_AUTH_TYPE_BASIC, ZmeiLangParser.KW_AUTH_TYPE_SESSION, ZmeiLangParser.KW_AUTH_TYPE_TOKEN, ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT, ZmeiLangParser.COL_FIELD_TYPE_HTML, ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA, ZmeiLangParser.COL_FIELD_TYPE_FLOAT, ZmeiLangParser.COL_FIELD_TYPE_DECIMAL, ZmeiLangParser.COL_FIELD_TYPE_DATE, ZmeiLangParser.COL_FIELD_TYPE_DATETIME, ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_TEXT, ZmeiLangParser.COL_FIELD_TYPE_INT, ZmeiLangParser.COL_FIELD_TYPE_SLUG, ZmeiLangParser.COL_FIELD_TYPE_BOOL, ZmeiLangParser.COL_FIELD_TYPE_ONE, ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE, ZmeiLangParser.COL_FIELD_TYPE_MANY, ZmeiLangParser.COL_FIELD_CHOICES, ZmeiLangParser.KW_THEME, ZmeiLangParser.KW_INSTALL, ZmeiLangParser.KW_HEADER, ZmeiLangParser.KW_SERVICES, ZmeiLangParser.KW_SELENIUM_PYTEST, ZmeiLangParser.KW_CHILD, ZmeiLangParser.KW_FILTER_OUT, ZmeiLangParser.KW_FILTER_IN, ZmeiLangParser.KW_PAGE, ZmeiLangParser.KW_LINK_SUFFIX, ZmeiLangParser.KW_URL_PREFIX, ZmeiLangParser.KW_CAN_EDIT, ZmeiLangParser.KW_OBJECT_EXPR, ZmeiLangParser.KW_BLOCK, ZmeiLangParser.KW_ITEM_NAME, ZmeiLangParser.KW_PK_PARAM, ZmeiLangParser.KW_LIST_FIELDS, ZmeiLangParser.KW_DELETE, ZmeiLangParser.KW_EDIT, ZmeiLangParser.KW_CREATE, ZmeiLangParser.KW_DETAIL, ZmeiLangParser.KW_SKIP, ZmeiLangParser.KW_FROM, ZmeiLangParser.KW_POLY_LIST, ZmeiLangParser.KW_CSS, ZmeiLangParser.KW_JS, ZmeiLangParser.KW_INLINE_TYPE_TABULAR, ZmeiLangParser.KW_INLINE_TYPE_STACKED, ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC, ZmeiLangParser.KW_INLINE, ZmeiLangParser.KW_TYPE, ZmeiLangParser.KW_USER_FIELD, ZmeiLangParser.KW_ANNOTATE, ZmeiLangParser.KW_ON_CREATE, ZmeiLangParser.KW_QUERY, ZmeiLangParser.KW_AUTH, ZmeiLangParser.KW_COUNT, ZmeiLangParser.KW_I18N, ZmeiLangParser.KW_EXTRA, ZmeiLangParser.KW_TABS, ZmeiLangParser.KW_LIST, ZmeiLangParser.KW_READ_ONLY, ZmeiLangParser.KW_LIST_EDITABLE, ZmeiLangParser.KW_LIST_FILTER, ZmeiLangParser.KW_LIST_SEARCH, ZmeiLangParser.KW_FIELDS, ZmeiLangParser.KW_IMPORT, ZmeiLangParser.KW_AS, ZmeiLangParser.WRITE_MODE, ZmeiLangParser.BOOL, ZmeiLangParser.ID]: self.state = 1363 self.field_relation_target_class() pass @@ -10235,11 +10235,11 @@ def inline_type(self, i:int=None): return self.getTypedRuleContext(ZmeiLangParser.Inline_typeContext,i) - def inline_extension(self, i:int=None): + def inline_extra(self, i:int=None): if i is None: - return self.getTypedRuleContexts(ZmeiLangParser.Inline_extensionContext) + return self.getTypedRuleContexts(ZmeiLangParser.Inline_extraContext) else: - return self.getTypedRuleContext(ZmeiLangParser.Inline_extensionContext,i) + return self.getTypedRuleContext(ZmeiLangParser.Inline_extraContext,i) def inline_fields(self, i:int=None): @@ -10293,7 +10293,7 @@ def an_admin_inline(self): self.state = 1489 self._errHandler.sync(self) _la = self._input.LA(1) - while ((((_la - 98)) & ~0x3f) == 0 and ((1 << (_la - 98)) & ((1 << (ZmeiLangParser.KW_TYPE - 98)) | (1 << (ZmeiLangParser.KW_EXTENSION - 98)) | (1 << (ZmeiLangParser.KW_FIELDS - 98)) | (1 << (ZmeiLangParser.NL - 98)) | (1 << (ZmeiLangParser.COMA - 98)))) != 0): + while ((((_la - 98)) & ~0x3f) == 0 and ((1 << (_la - 98)) & ((1 << (ZmeiLangParser.KW_TYPE - 98)) | (1 << (ZmeiLangParser.KW_EXTRA - 98)) | (1 << (ZmeiLangParser.KW_FIELDS - 98)) | (1 << (ZmeiLangParser.NL - 98)) | (1 << (ZmeiLangParser.COMA - 98)))) != 0): self.state = 1487 self._errHandler.sync(self) token = self._input.LA(1) @@ -10301,9 +10301,9 @@ def an_admin_inline(self): self.state = 1482 self.inline_type() pass - elif token in [ZmeiLangParser.KW_EXTENSION]: + elif token in [ZmeiLangParser.KW_EXTRA]: self.state = 1483 - self.inline_extension() + self.inline_extra() pass elif token in [ZmeiLangParser.KW_FIELDS]: self.state = 1484 @@ -10481,14 +10481,14 @@ def inline_type_name(self): return localctx - class Inline_extensionContext(ParserRuleContext): + class Inline_extraContext(ParserRuleContext): def __init__(self, parser, parent:ParserRuleContext=None, invokingState:int=-1): super().__init__(parent, invokingState) self.parser = parser - def KW_EXTENSION(self): - return self.getToken(ZmeiLangParser.KW_EXTENSION, 0) + def KW_EXTRA(self): + return self.getToken(ZmeiLangParser.KW_EXTRA, 0) def COLON(self): return self.getToken(ZmeiLangParser.COLON, 0) @@ -10497,27 +10497,27 @@ def DIGIT(self): return self.getToken(ZmeiLangParser.DIGIT, 0) def getRuleIndex(self): - return ZmeiLangParser.RULE_inline_extension + return ZmeiLangParser.RULE_inline_extra def enterRule(self, listener:ParseTreeListener): - if hasattr( listener, "enterInline_extension" ): - listener.enterInline_extension(self) + if hasattr( listener, "enterInline_extra" ): + listener.enterInline_extra(self) def exitRule(self, listener:ParseTreeListener): - if hasattr( listener, "exitInline_extension" ): - listener.exitInline_extension(self) + if hasattr( listener, "exitInline_extra" ): + listener.exitInline_extra(self) - def inline_extension(self): + def inline_extra(self): - localctx = ZmeiLangParser.Inline_extensionContext(self, self._ctx, self.state) - self.enterRule(localctx, 250, self.RULE_inline_extension) + localctx = ZmeiLangParser.Inline_extraContext(self, self._ctx, self.state) + self.enterRule(localctx, 250, self.RULE_inline_extra) try: self.enterOuterAlt(localctx, 1) self.state = 1503 - self.match(ZmeiLangParser.KW_EXTENSION) + self.match(ZmeiLangParser.KW_EXTRA) self.state = 1504 self.match(ZmeiLangParser.COLON) self.state = 1505 @@ -11291,7 +11291,7 @@ def an_api(self): self.state = 1589 self.an_api_all() pass - elif token in [ZmeiLangParser.KW_AUTH_TYPE_BASIC, ZmeiLangParser.KW_AUTH_TYPE_SESSION, ZmeiLangParser.KW_AUTH_TYPE_TOKEN, ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT, ZmeiLangParser.COL_FIELD_TYPE_HTML, ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA, ZmeiLangParser.COL_FIELD_TYPE_FLOAT, ZmeiLangParser.COL_FIELD_TYPE_DECIMAL, ZmeiLangParser.COL_FIELD_TYPE_DATE, ZmeiLangParser.COL_FIELD_TYPE_DATETIME, ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_TEXT, ZmeiLangParser.COL_FIELD_TYPE_INT, ZmeiLangParser.COL_FIELD_TYPE_SLUG, ZmeiLangParser.COL_FIELD_TYPE_BOOL, ZmeiLangParser.COL_FIELD_TYPE_ONE, ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE, ZmeiLangParser.COL_FIELD_TYPE_MANY, ZmeiLangParser.COL_FIELD_CHOICES, ZmeiLangParser.KW_THEME, ZmeiLangParser.KW_INSTALL, ZmeiLangParser.KW_HEADER, ZmeiLangParser.KW_SERVICES, ZmeiLangParser.KW_SELENIUM_PYTEST, ZmeiLangParser.KW_CHILD, ZmeiLangParser.KW_FILTER_OUT, ZmeiLangParser.KW_FILTER_IN, ZmeiLangParser.KW_PAGE, ZmeiLangParser.KW_LINK_SUFFIX, ZmeiLangParser.KW_URL_PREFIX, ZmeiLangParser.KW_CAN_EDIT, ZmeiLangParser.KW_OBJECT_EXPR, ZmeiLangParser.KW_BLOCK, ZmeiLangParser.KW_ITEM_NAME, ZmeiLangParser.KW_PK_PARAM, ZmeiLangParser.KW_LIST_FIELDS, ZmeiLangParser.KW_DELETE, ZmeiLangParser.KW_EDIT, ZmeiLangParser.KW_CREATE, ZmeiLangParser.KW_DETAIL, ZmeiLangParser.KW_SKIP, ZmeiLangParser.KW_FROM, ZmeiLangParser.KW_POLY_LIST, ZmeiLangParser.KW_CSS, ZmeiLangParser.KW_JS, ZmeiLangParser.KW_INLINE_TYPE_TABULAR, ZmeiLangParser.KW_INLINE_TYPE_STACKED, ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC, ZmeiLangParser.KW_INLINE, ZmeiLangParser.KW_TYPE, ZmeiLangParser.KW_USER_FIELD, ZmeiLangParser.KW_ANNOTATE, ZmeiLangParser.KW_ON_CREATE, ZmeiLangParser.KW_QUERY, ZmeiLangParser.KW_AUTH, ZmeiLangParser.KW_COUNT, ZmeiLangParser.KW_I18N, ZmeiLangParser.KW_EXTENSION, ZmeiLangParser.KW_TABS, ZmeiLangParser.KW_LIST, ZmeiLangParser.KW_READ_ONLY, ZmeiLangParser.KW_LIST_EDITABLE, ZmeiLangParser.KW_LIST_FILTER, ZmeiLangParser.KW_LIST_SEARCH, ZmeiLangParser.KW_FIELDS, ZmeiLangParser.KW_IMPORT, ZmeiLangParser.KW_AS, ZmeiLangParser.WRITE_MODE, ZmeiLangParser.BOOL, ZmeiLangParser.ID]: + elif token in [ZmeiLangParser.KW_AUTH_TYPE_BASIC, ZmeiLangParser.KW_AUTH_TYPE_SESSION, ZmeiLangParser.KW_AUTH_TYPE_TOKEN, ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT, ZmeiLangParser.COL_FIELD_TYPE_HTML, ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA, ZmeiLangParser.COL_FIELD_TYPE_FLOAT, ZmeiLangParser.COL_FIELD_TYPE_DECIMAL, ZmeiLangParser.COL_FIELD_TYPE_DATE, ZmeiLangParser.COL_FIELD_TYPE_DATETIME, ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_TEXT, ZmeiLangParser.COL_FIELD_TYPE_INT, ZmeiLangParser.COL_FIELD_TYPE_SLUG, ZmeiLangParser.COL_FIELD_TYPE_BOOL, ZmeiLangParser.COL_FIELD_TYPE_ONE, ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE, ZmeiLangParser.COL_FIELD_TYPE_MANY, ZmeiLangParser.COL_FIELD_CHOICES, ZmeiLangParser.KW_THEME, ZmeiLangParser.KW_INSTALL, ZmeiLangParser.KW_HEADER, ZmeiLangParser.KW_SERVICES, ZmeiLangParser.KW_SELENIUM_PYTEST, ZmeiLangParser.KW_CHILD, ZmeiLangParser.KW_FILTER_OUT, ZmeiLangParser.KW_FILTER_IN, ZmeiLangParser.KW_PAGE, ZmeiLangParser.KW_LINK_SUFFIX, ZmeiLangParser.KW_URL_PREFIX, ZmeiLangParser.KW_CAN_EDIT, ZmeiLangParser.KW_OBJECT_EXPR, ZmeiLangParser.KW_BLOCK, ZmeiLangParser.KW_ITEM_NAME, ZmeiLangParser.KW_PK_PARAM, ZmeiLangParser.KW_LIST_FIELDS, ZmeiLangParser.KW_DELETE, ZmeiLangParser.KW_EDIT, ZmeiLangParser.KW_CREATE, ZmeiLangParser.KW_DETAIL, ZmeiLangParser.KW_SKIP, ZmeiLangParser.KW_FROM, ZmeiLangParser.KW_POLY_LIST, ZmeiLangParser.KW_CSS, ZmeiLangParser.KW_JS, ZmeiLangParser.KW_INLINE_TYPE_TABULAR, ZmeiLangParser.KW_INLINE_TYPE_STACKED, ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC, ZmeiLangParser.KW_INLINE, ZmeiLangParser.KW_TYPE, ZmeiLangParser.KW_USER_FIELD, ZmeiLangParser.KW_ANNOTATE, ZmeiLangParser.KW_ON_CREATE, ZmeiLangParser.KW_QUERY, ZmeiLangParser.KW_AUTH, ZmeiLangParser.KW_COUNT, ZmeiLangParser.KW_I18N, ZmeiLangParser.KW_EXTRA, ZmeiLangParser.KW_TABS, ZmeiLangParser.KW_LIST, ZmeiLangParser.KW_READ_ONLY, ZmeiLangParser.KW_LIST_EDITABLE, ZmeiLangParser.KW_LIST_FILTER, ZmeiLangParser.KW_LIST_SEARCH, ZmeiLangParser.KW_FIELDS, ZmeiLangParser.KW_IMPORT, ZmeiLangParser.KW_AS, ZmeiLangParser.WRITE_MODE, ZmeiLangParser.BOOL, ZmeiLangParser.ID]: self.state = 1590 self.an_api_name() self.state = 1595 @@ -12613,7 +12613,7 @@ def an_rest_auth_type(self): self.state = 1753 self.an_rest_auth_token_model() pass - elif token in [ZmeiLangParser.KW_AUTH_TYPE_BASIC, ZmeiLangParser.KW_AUTH_TYPE_SESSION, ZmeiLangParser.KW_AUTH_TYPE_TOKEN, ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT, ZmeiLangParser.COL_FIELD_TYPE_HTML, ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA, ZmeiLangParser.COL_FIELD_TYPE_FLOAT, ZmeiLangParser.COL_FIELD_TYPE_DECIMAL, ZmeiLangParser.COL_FIELD_TYPE_DATE, ZmeiLangParser.COL_FIELD_TYPE_DATETIME, ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_TEXT, ZmeiLangParser.COL_FIELD_TYPE_INT, ZmeiLangParser.COL_FIELD_TYPE_SLUG, ZmeiLangParser.COL_FIELD_TYPE_BOOL, ZmeiLangParser.COL_FIELD_TYPE_ONE, ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE, ZmeiLangParser.COL_FIELD_TYPE_MANY, ZmeiLangParser.COL_FIELD_CHOICES, ZmeiLangParser.KW_THEME, ZmeiLangParser.KW_INSTALL, ZmeiLangParser.KW_HEADER, ZmeiLangParser.KW_SERVICES, ZmeiLangParser.KW_SELENIUM_PYTEST, ZmeiLangParser.KW_CHILD, ZmeiLangParser.KW_FILTER_OUT, ZmeiLangParser.KW_FILTER_IN, ZmeiLangParser.KW_PAGE, ZmeiLangParser.KW_LINK_SUFFIX, ZmeiLangParser.KW_URL_PREFIX, ZmeiLangParser.KW_CAN_EDIT, ZmeiLangParser.KW_OBJECT_EXPR, ZmeiLangParser.KW_BLOCK, ZmeiLangParser.KW_ITEM_NAME, ZmeiLangParser.KW_PK_PARAM, ZmeiLangParser.KW_LIST_FIELDS, ZmeiLangParser.KW_DELETE, ZmeiLangParser.KW_EDIT, ZmeiLangParser.KW_CREATE, ZmeiLangParser.KW_DETAIL, ZmeiLangParser.KW_SKIP, ZmeiLangParser.KW_FROM, ZmeiLangParser.KW_POLY_LIST, ZmeiLangParser.KW_CSS, ZmeiLangParser.KW_JS, ZmeiLangParser.KW_INLINE_TYPE_TABULAR, ZmeiLangParser.KW_INLINE_TYPE_STACKED, ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC, ZmeiLangParser.KW_INLINE, ZmeiLangParser.KW_TYPE, ZmeiLangParser.KW_USER_FIELD, ZmeiLangParser.KW_ANNOTATE, ZmeiLangParser.KW_ON_CREATE, ZmeiLangParser.KW_QUERY, ZmeiLangParser.KW_AUTH, ZmeiLangParser.KW_COUNT, ZmeiLangParser.KW_I18N, ZmeiLangParser.KW_EXTENSION, ZmeiLangParser.KW_TABS, ZmeiLangParser.KW_LIST, ZmeiLangParser.KW_READ_ONLY, ZmeiLangParser.KW_LIST_EDITABLE, ZmeiLangParser.KW_LIST_FILTER, ZmeiLangParser.KW_LIST_SEARCH, ZmeiLangParser.KW_FIELDS, ZmeiLangParser.KW_IMPORT, ZmeiLangParser.KW_AS, ZmeiLangParser.WRITE_MODE, ZmeiLangParser.BOOL, ZmeiLangParser.ID]: + elif token in [ZmeiLangParser.KW_AUTH_TYPE_BASIC, ZmeiLangParser.KW_AUTH_TYPE_SESSION, ZmeiLangParser.KW_AUTH_TYPE_TOKEN, ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT, ZmeiLangParser.COL_FIELD_TYPE_HTML, ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA, ZmeiLangParser.COL_FIELD_TYPE_FLOAT, ZmeiLangParser.COL_FIELD_TYPE_DECIMAL, ZmeiLangParser.COL_FIELD_TYPE_DATE, ZmeiLangParser.COL_FIELD_TYPE_DATETIME, ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_TEXT, ZmeiLangParser.COL_FIELD_TYPE_INT, ZmeiLangParser.COL_FIELD_TYPE_SLUG, ZmeiLangParser.COL_FIELD_TYPE_BOOL, ZmeiLangParser.COL_FIELD_TYPE_ONE, ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE, ZmeiLangParser.COL_FIELD_TYPE_MANY, ZmeiLangParser.COL_FIELD_CHOICES, ZmeiLangParser.KW_THEME, ZmeiLangParser.KW_INSTALL, ZmeiLangParser.KW_HEADER, ZmeiLangParser.KW_SERVICES, ZmeiLangParser.KW_SELENIUM_PYTEST, ZmeiLangParser.KW_CHILD, ZmeiLangParser.KW_FILTER_OUT, ZmeiLangParser.KW_FILTER_IN, ZmeiLangParser.KW_PAGE, ZmeiLangParser.KW_LINK_SUFFIX, ZmeiLangParser.KW_URL_PREFIX, ZmeiLangParser.KW_CAN_EDIT, ZmeiLangParser.KW_OBJECT_EXPR, ZmeiLangParser.KW_BLOCK, ZmeiLangParser.KW_ITEM_NAME, ZmeiLangParser.KW_PK_PARAM, ZmeiLangParser.KW_LIST_FIELDS, ZmeiLangParser.KW_DELETE, ZmeiLangParser.KW_EDIT, ZmeiLangParser.KW_CREATE, ZmeiLangParser.KW_DETAIL, ZmeiLangParser.KW_SKIP, ZmeiLangParser.KW_FROM, ZmeiLangParser.KW_POLY_LIST, ZmeiLangParser.KW_CSS, ZmeiLangParser.KW_JS, ZmeiLangParser.KW_INLINE_TYPE_TABULAR, ZmeiLangParser.KW_INLINE_TYPE_STACKED, ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC, ZmeiLangParser.KW_INLINE, ZmeiLangParser.KW_TYPE, ZmeiLangParser.KW_USER_FIELD, ZmeiLangParser.KW_ANNOTATE, ZmeiLangParser.KW_ON_CREATE, ZmeiLangParser.KW_QUERY, ZmeiLangParser.KW_AUTH, ZmeiLangParser.KW_COUNT, ZmeiLangParser.KW_I18N, ZmeiLangParser.KW_EXTRA, ZmeiLangParser.KW_TABS, ZmeiLangParser.KW_LIST, ZmeiLangParser.KW_READ_ONLY, ZmeiLangParser.KW_LIST_EDITABLE, ZmeiLangParser.KW_LIST_FILTER, ZmeiLangParser.KW_LIST_SEARCH, ZmeiLangParser.KW_FIELDS, ZmeiLangParser.KW_IMPORT, ZmeiLangParser.KW_AS, ZmeiLangParser.WRITE_MODE, ZmeiLangParser.BOOL, ZmeiLangParser.ID]: self.state = 1754 self.an_rest_auth_token_class() pass @@ -13041,7 +13041,7 @@ def an_rest_inline(self): self.state = 1787 self._errHandler.sync(self) token = self._input.LA(1) - if token in [ZmeiLangParser.KW_AUTH_TYPE_BASIC, ZmeiLangParser.KW_AUTH_TYPE_SESSION, ZmeiLangParser.KW_AUTH_TYPE_TOKEN, ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT, ZmeiLangParser.COL_FIELD_TYPE_HTML, ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA, ZmeiLangParser.COL_FIELD_TYPE_FLOAT, ZmeiLangParser.COL_FIELD_TYPE_DECIMAL, ZmeiLangParser.COL_FIELD_TYPE_DATE, ZmeiLangParser.COL_FIELD_TYPE_DATETIME, ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_TEXT, ZmeiLangParser.COL_FIELD_TYPE_INT, ZmeiLangParser.COL_FIELD_TYPE_SLUG, ZmeiLangParser.COL_FIELD_TYPE_BOOL, ZmeiLangParser.COL_FIELD_TYPE_ONE, ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE, ZmeiLangParser.COL_FIELD_TYPE_MANY, ZmeiLangParser.COL_FIELD_CHOICES, ZmeiLangParser.KW_THEME, ZmeiLangParser.KW_INSTALL, ZmeiLangParser.KW_HEADER, ZmeiLangParser.KW_SERVICES, ZmeiLangParser.KW_SELENIUM_PYTEST, ZmeiLangParser.KW_CHILD, ZmeiLangParser.KW_FILTER_OUT, ZmeiLangParser.KW_FILTER_IN, ZmeiLangParser.KW_PAGE, ZmeiLangParser.KW_LINK_SUFFIX, ZmeiLangParser.KW_URL_PREFIX, ZmeiLangParser.KW_CAN_EDIT, ZmeiLangParser.KW_OBJECT_EXPR, ZmeiLangParser.KW_BLOCK, ZmeiLangParser.KW_ITEM_NAME, ZmeiLangParser.KW_PK_PARAM, ZmeiLangParser.KW_LIST_FIELDS, ZmeiLangParser.KW_DELETE, ZmeiLangParser.KW_EDIT, ZmeiLangParser.KW_CREATE, ZmeiLangParser.KW_DETAIL, ZmeiLangParser.KW_SKIP, ZmeiLangParser.KW_FROM, ZmeiLangParser.KW_POLY_LIST, ZmeiLangParser.KW_CSS, ZmeiLangParser.KW_JS, ZmeiLangParser.KW_INLINE_TYPE_TABULAR, ZmeiLangParser.KW_INLINE_TYPE_STACKED, ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC, ZmeiLangParser.KW_INLINE, ZmeiLangParser.KW_TYPE, ZmeiLangParser.KW_USER_FIELD, ZmeiLangParser.KW_ANNOTATE, ZmeiLangParser.KW_ON_CREATE, ZmeiLangParser.KW_QUERY, ZmeiLangParser.KW_AUTH, ZmeiLangParser.KW_COUNT, ZmeiLangParser.KW_I18N, ZmeiLangParser.KW_EXTENSION, ZmeiLangParser.KW_TABS, ZmeiLangParser.KW_LIST, ZmeiLangParser.KW_READ_ONLY, ZmeiLangParser.KW_LIST_EDITABLE, ZmeiLangParser.KW_LIST_FILTER, ZmeiLangParser.KW_LIST_SEARCH, ZmeiLangParser.KW_FIELDS, ZmeiLangParser.KW_IMPORT, ZmeiLangParser.KW_AS, ZmeiLangParser.WRITE_MODE, ZmeiLangParser.BOOL, ZmeiLangParser.ID]: + if token in [ZmeiLangParser.KW_AUTH_TYPE_BASIC, ZmeiLangParser.KW_AUTH_TYPE_SESSION, ZmeiLangParser.KW_AUTH_TYPE_TOKEN, ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT, ZmeiLangParser.COL_FIELD_TYPE_HTML, ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA, ZmeiLangParser.COL_FIELD_TYPE_FLOAT, ZmeiLangParser.COL_FIELD_TYPE_DECIMAL, ZmeiLangParser.COL_FIELD_TYPE_DATE, ZmeiLangParser.COL_FIELD_TYPE_DATETIME, ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_TEXT, ZmeiLangParser.COL_FIELD_TYPE_INT, ZmeiLangParser.COL_FIELD_TYPE_SLUG, ZmeiLangParser.COL_FIELD_TYPE_BOOL, ZmeiLangParser.COL_FIELD_TYPE_ONE, ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE, ZmeiLangParser.COL_FIELD_TYPE_MANY, ZmeiLangParser.COL_FIELD_CHOICES, ZmeiLangParser.KW_THEME, ZmeiLangParser.KW_INSTALL, ZmeiLangParser.KW_HEADER, ZmeiLangParser.KW_SERVICES, ZmeiLangParser.KW_SELENIUM_PYTEST, ZmeiLangParser.KW_CHILD, ZmeiLangParser.KW_FILTER_OUT, ZmeiLangParser.KW_FILTER_IN, ZmeiLangParser.KW_PAGE, ZmeiLangParser.KW_LINK_SUFFIX, ZmeiLangParser.KW_URL_PREFIX, ZmeiLangParser.KW_CAN_EDIT, ZmeiLangParser.KW_OBJECT_EXPR, ZmeiLangParser.KW_BLOCK, ZmeiLangParser.KW_ITEM_NAME, ZmeiLangParser.KW_PK_PARAM, ZmeiLangParser.KW_LIST_FIELDS, ZmeiLangParser.KW_DELETE, ZmeiLangParser.KW_EDIT, ZmeiLangParser.KW_CREATE, ZmeiLangParser.KW_DETAIL, ZmeiLangParser.KW_SKIP, ZmeiLangParser.KW_FROM, ZmeiLangParser.KW_POLY_LIST, ZmeiLangParser.KW_CSS, ZmeiLangParser.KW_JS, ZmeiLangParser.KW_INLINE_TYPE_TABULAR, ZmeiLangParser.KW_INLINE_TYPE_STACKED, ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC, ZmeiLangParser.KW_INLINE, ZmeiLangParser.KW_TYPE, ZmeiLangParser.KW_USER_FIELD, ZmeiLangParser.KW_ANNOTATE, ZmeiLangParser.KW_ON_CREATE, ZmeiLangParser.KW_QUERY, ZmeiLangParser.KW_AUTH, ZmeiLangParser.KW_COUNT, ZmeiLangParser.KW_I18N, ZmeiLangParser.KW_EXTRA, ZmeiLangParser.KW_TABS, ZmeiLangParser.KW_LIST, ZmeiLangParser.KW_READ_ONLY, ZmeiLangParser.KW_LIST_EDITABLE, ZmeiLangParser.KW_LIST_FILTER, ZmeiLangParser.KW_LIST_SEARCH, ZmeiLangParser.KW_FIELDS, ZmeiLangParser.KW_IMPORT, ZmeiLangParser.KW_AS, ZmeiLangParser.WRITE_MODE, ZmeiLangParser.BOOL, ZmeiLangParser.ID]: self.state = 1784 self.an_rest_inline_decl() pass @@ -14321,7 +14321,7 @@ def page_template(self): self.state = 1909 self._errHandler.sync(self) token = self._input.LA(1) - if token in [ZmeiLangParser.KW_AUTH_TYPE_BASIC, ZmeiLangParser.KW_AUTH_TYPE_SESSION, ZmeiLangParser.KW_AUTH_TYPE_TOKEN, ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT, ZmeiLangParser.COL_FIELD_TYPE_HTML, ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA, ZmeiLangParser.COL_FIELD_TYPE_FLOAT, ZmeiLangParser.COL_FIELD_TYPE_DECIMAL, ZmeiLangParser.COL_FIELD_TYPE_DATE, ZmeiLangParser.COL_FIELD_TYPE_DATETIME, ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_TEXT, ZmeiLangParser.COL_FIELD_TYPE_INT, ZmeiLangParser.COL_FIELD_TYPE_SLUG, ZmeiLangParser.COL_FIELD_TYPE_BOOL, ZmeiLangParser.COL_FIELD_TYPE_ONE, ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE, ZmeiLangParser.COL_FIELD_TYPE_MANY, ZmeiLangParser.COL_FIELD_CHOICES, ZmeiLangParser.KW_THEME, ZmeiLangParser.KW_INSTALL, ZmeiLangParser.KW_HEADER, ZmeiLangParser.KW_SERVICES, ZmeiLangParser.KW_SELENIUM_PYTEST, ZmeiLangParser.KW_CHILD, ZmeiLangParser.KW_FILTER_OUT, ZmeiLangParser.KW_FILTER_IN, ZmeiLangParser.KW_PAGE, ZmeiLangParser.KW_LINK_SUFFIX, ZmeiLangParser.KW_URL_PREFIX, ZmeiLangParser.KW_CAN_EDIT, ZmeiLangParser.KW_OBJECT_EXPR, ZmeiLangParser.KW_BLOCK, ZmeiLangParser.KW_ITEM_NAME, ZmeiLangParser.KW_PK_PARAM, ZmeiLangParser.KW_LIST_FIELDS, ZmeiLangParser.KW_DELETE, ZmeiLangParser.KW_EDIT, ZmeiLangParser.KW_CREATE, ZmeiLangParser.KW_DETAIL, ZmeiLangParser.KW_SKIP, ZmeiLangParser.KW_FROM, ZmeiLangParser.KW_POLY_LIST, ZmeiLangParser.KW_CSS, ZmeiLangParser.KW_JS, ZmeiLangParser.KW_INLINE_TYPE_TABULAR, ZmeiLangParser.KW_INLINE_TYPE_STACKED, ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC, ZmeiLangParser.KW_INLINE, ZmeiLangParser.KW_TYPE, ZmeiLangParser.KW_USER_FIELD, ZmeiLangParser.KW_ANNOTATE, ZmeiLangParser.KW_ON_CREATE, ZmeiLangParser.KW_QUERY, ZmeiLangParser.KW_AUTH, ZmeiLangParser.KW_COUNT, ZmeiLangParser.KW_I18N, ZmeiLangParser.KW_EXTENSION, ZmeiLangParser.KW_TABS, ZmeiLangParser.KW_LIST, ZmeiLangParser.KW_READ_ONLY, ZmeiLangParser.KW_LIST_EDITABLE, ZmeiLangParser.KW_LIST_FILTER, ZmeiLangParser.KW_LIST_SEARCH, ZmeiLangParser.KW_FIELDS, ZmeiLangParser.KW_IMPORT, ZmeiLangParser.KW_AS, ZmeiLangParser.WRITE_MODE, ZmeiLangParser.BOOL, ZmeiLangParser.ID, ZmeiLangParser.DIGIT, ZmeiLangParser.UNDERSCORE, ZmeiLangParser.DASH, ZmeiLangParser.DOT]: + if token in [ZmeiLangParser.KW_AUTH_TYPE_BASIC, ZmeiLangParser.KW_AUTH_TYPE_SESSION, ZmeiLangParser.KW_AUTH_TYPE_TOKEN, ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT, ZmeiLangParser.COL_FIELD_TYPE_HTML, ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA, ZmeiLangParser.COL_FIELD_TYPE_FLOAT, ZmeiLangParser.COL_FIELD_TYPE_DECIMAL, ZmeiLangParser.COL_FIELD_TYPE_DATE, ZmeiLangParser.COL_FIELD_TYPE_DATETIME, ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_TEXT, ZmeiLangParser.COL_FIELD_TYPE_INT, ZmeiLangParser.COL_FIELD_TYPE_SLUG, ZmeiLangParser.COL_FIELD_TYPE_BOOL, ZmeiLangParser.COL_FIELD_TYPE_ONE, ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE, ZmeiLangParser.COL_FIELD_TYPE_MANY, ZmeiLangParser.COL_FIELD_CHOICES, ZmeiLangParser.KW_THEME, ZmeiLangParser.KW_INSTALL, ZmeiLangParser.KW_HEADER, ZmeiLangParser.KW_SERVICES, ZmeiLangParser.KW_SELENIUM_PYTEST, ZmeiLangParser.KW_CHILD, ZmeiLangParser.KW_FILTER_OUT, ZmeiLangParser.KW_FILTER_IN, ZmeiLangParser.KW_PAGE, ZmeiLangParser.KW_LINK_SUFFIX, ZmeiLangParser.KW_URL_PREFIX, ZmeiLangParser.KW_CAN_EDIT, ZmeiLangParser.KW_OBJECT_EXPR, ZmeiLangParser.KW_BLOCK, ZmeiLangParser.KW_ITEM_NAME, ZmeiLangParser.KW_PK_PARAM, ZmeiLangParser.KW_LIST_FIELDS, ZmeiLangParser.KW_DELETE, ZmeiLangParser.KW_EDIT, ZmeiLangParser.KW_CREATE, ZmeiLangParser.KW_DETAIL, ZmeiLangParser.KW_SKIP, ZmeiLangParser.KW_FROM, ZmeiLangParser.KW_POLY_LIST, ZmeiLangParser.KW_CSS, ZmeiLangParser.KW_JS, ZmeiLangParser.KW_INLINE_TYPE_TABULAR, ZmeiLangParser.KW_INLINE_TYPE_STACKED, ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC, ZmeiLangParser.KW_INLINE, ZmeiLangParser.KW_TYPE, ZmeiLangParser.KW_USER_FIELD, ZmeiLangParser.KW_ANNOTATE, ZmeiLangParser.KW_ON_CREATE, ZmeiLangParser.KW_QUERY, ZmeiLangParser.KW_AUTH, ZmeiLangParser.KW_COUNT, ZmeiLangParser.KW_I18N, ZmeiLangParser.KW_EXTRA, ZmeiLangParser.KW_TABS, ZmeiLangParser.KW_LIST, ZmeiLangParser.KW_READ_ONLY, ZmeiLangParser.KW_LIST_EDITABLE, ZmeiLangParser.KW_LIST_FILTER, ZmeiLangParser.KW_LIST_SEARCH, ZmeiLangParser.KW_FIELDS, ZmeiLangParser.KW_IMPORT, ZmeiLangParser.KW_AS, ZmeiLangParser.WRITE_MODE, ZmeiLangParser.BOOL, ZmeiLangParser.ID, ZmeiLangParser.DIGIT, ZmeiLangParser.UNDERSCORE, ZmeiLangParser.DASH, ZmeiLangParser.DOT]: self.enterOuterAlt(localctx, 1) self.state = 1907 self.template_name() @@ -14471,7 +14471,7 @@ def file_name_part(self): self.state = 1924 self._errHandler.sync(self) token = self._input.LA(1) - if token in [ZmeiLangParser.KW_AUTH_TYPE_BASIC, ZmeiLangParser.KW_AUTH_TYPE_SESSION, ZmeiLangParser.KW_AUTH_TYPE_TOKEN, ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT, ZmeiLangParser.COL_FIELD_TYPE_HTML, ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA, ZmeiLangParser.COL_FIELD_TYPE_FLOAT, ZmeiLangParser.COL_FIELD_TYPE_DECIMAL, ZmeiLangParser.COL_FIELD_TYPE_DATE, ZmeiLangParser.COL_FIELD_TYPE_DATETIME, ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_TEXT, ZmeiLangParser.COL_FIELD_TYPE_INT, ZmeiLangParser.COL_FIELD_TYPE_SLUG, ZmeiLangParser.COL_FIELD_TYPE_BOOL, ZmeiLangParser.COL_FIELD_TYPE_ONE, ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE, ZmeiLangParser.COL_FIELD_TYPE_MANY, ZmeiLangParser.COL_FIELD_CHOICES, ZmeiLangParser.KW_THEME, ZmeiLangParser.KW_INSTALL, ZmeiLangParser.KW_HEADER, ZmeiLangParser.KW_SERVICES, ZmeiLangParser.KW_SELENIUM_PYTEST, ZmeiLangParser.KW_CHILD, ZmeiLangParser.KW_FILTER_OUT, ZmeiLangParser.KW_FILTER_IN, ZmeiLangParser.KW_PAGE, ZmeiLangParser.KW_LINK_SUFFIX, ZmeiLangParser.KW_URL_PREFIX, ZmeiLangParser.KW_CAN_EDIT, ZmeiLangParser.KW_OBJECT_EXPR, ZmeiLangParser.KW_BLOCK, ZmeiLangParser.KW_ITEM_NAME, ZmeiLangParser.KW_PK_PARAM, ZmeiLangParser.KW_LIST_FIELDS, ZmeiLangParser.KW_DELETE, ZmeiLangParser.KW_EDIT, ZmeiLangParser.KW_CREATE, ZmeiLangParser.KW_DETAIL, ZmeiLangParser.KW_SKIP, ZmeiLangParser.KW_FROM, ZmeiLangParser.KW_POLY_LIST, ZmeiLangParser.KW_CSS, ZmeiLangParser.KW_JS, ZmeiLangParser.KW_INLINE_TYPE_TABULAR, ZmeiLangParser.KW_INLINE_TYPE_STACKED, ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC, ZmeiLangParser.KW_INLINE, ZmeiLangParser.KW_TYPE, ZmeiLangParser.KW_USER_FIELD, ZmeiLangParser.KW_ANNOTATE, ZmeiLangParser.KW_ON_CREATE, ZmeiLangParser.KW_QUERY, ZmeiLangParser.KW_AUTH, ZmeiLangParser.KW_COUNT, ZmeiLangParser.KW_I18N, ZmeiLangParser.KW_EXTENSION, ZmeiLangParser.KW_TABS, ZmeiLangParser.KW_LIST, ZmeiLangParser.KW_READ_ONLY, ZmeiLangParser.KW_LIST_EDITABLE, ZmeiLangParser.KW_LIST_FILTER, ZmeiLangParser.KW_LIST_SEARCH, ZmeiLangParser.KW_FIELDS, ZmeiLangParser.KW_IMPORT, ZmeiLangParser.KW_AS, ZmeiLangParser.WRITE_MODE, ZmeiLangParser.BOOL, ZmeiLangParser.ID]: + if token in [ZmeiLangParser.KW_AUTH_TYPE_BASIC, ZmeiLangParser.KW_AUTH_TYPE_SESSION, ZmeiLangParser.KW_AUTH_TYPE_TOKEN, ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT, ZmeiLangParser.COL_FIELD_TYPE_HTML, ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA, ZmeiLangParser.COL_FIELD_TYPE_FLOAT, ZmeiLangParser.COL_FIELD_TYPE_DECIMAL, ZmeiLangParser.COL_FIELD_TYPE_DATE, ZmeiLangParser.COL_FIELD_TYPE_DATETIME, ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_TEXT, ZmeiLangParser.COL_FIELD_TYPE_INT, ZmeiLangParser.COL_FIELD_TYPE_SLUG, ZmeiLangParser.COL_FIELD_TYPE_BOOL, ZmeiLangParser.COL_FIELD_TYPE_ONE, ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE, ZmeiLangParser.COL_FIELD_TYPE_MANY, ZmeiLangParser.COL_FIELD_CHOICES, ZmeiLangParser.KW_THEME, ZmeiLangParser.KW_INSTALL, ZmeiLangParser.KW_HEADER, ZmeiLangParser.KW_SERVICES, ZmeiLangParser.KW_SELENIUM_PYTEST, ZmeiLangParser.KW_CHILD, ZmeiLangParser.KW_FILTER_OUT, ZmeiLangParser.KW_FILTER_IN, ZmeiLangParser.KW_PAGE, ZmeiLangParser.KW_LINK_SUFFIX, ZmeiLangParser.KW_URL_PREFIX, ZmeiLangParser.KW_CAN_EDIT, ZmeiLangParser.KW_OBJECT_EXPR, ZmeiLangParser.KW_BLOCK, ZmeiLangParser.KW_ITEM_NAME, ZmeiLangParser.KW_PK_PARAM, ZmeiLangParser.KW_LIST_FIELDS, ZmeiLangParser.KW_DELETE, ZmeiLangParser.KW_EDIT, ZmeiLangParser.KW_CREATE, ZmeiLangParser.KW_DETAIL, ZmeiLangParser.KW_SKIP, ZmeiLangParser.KW_FROM, ZmeiLangParser.KW_POLY_LIST, ZmeiLangParser.KW_CSS, ZmeiLangParser.KW_JS, ZmeiLangParser.KW_INLINE_TYPE_TABULAR, ZmeiLangParser.KW_INLINE_TYPE_STACKED, ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC, ZmeiLangParser.KW_INLINE, ZmeiLangParser.KW_TYPE, ZmeiLangParser.KW_USER_FIELD, ZmeiLangParser.KW_ANNOTATE, ZmeiLangParser.KW_ON_CREATE, ZmeiLangParser.KW_QUERY, ZmeiLangParser.KW_AUTH, ZmeiLangParser.KW_COUNT, ZmeiLangParser.KW_I18N, ZmeiLangParser.KW_EXTRA, ZmeiLangParser.KW_TABS, ZmeiLangParser.KW_LIST, ZmeiLangParser.KW_READ_ONLY, ZmeiLangParser.KW_LIST_EDITABLE, ZmeiLangParser.KW_LIST_FILTER, ZmeiLangParser.KW_LIST_SEARCH, ZmeiLangParser.KW_FIELDS, ZmeiLangParser.KW_IMPORT, ZmeiLangParser.KW_AS, ZmeiLangParser.WRITE_MODE, ZmeiLangParser.BOOL, ZmeiLangParser.ID]: self.state = 1919 self.id_or_kw() pass @@ -14497,7 +14497,7 @@ def file_name_part(self): self.state = 1926 self._errHandler.sync(self) _la = self._input.LA(1) - if not (((((_la - 42)) & ~0x3f) == 0 and ((1 << (_la - 42)) & ((1 << (ZmeiLangParser.KW_AUTH_TYPE_BASIC - 42)) | (1 << (ZmeiLangParser.KW_AUTH_TYPE_SESSION - 42)) | (1 << (ZmeiLangParser.KW_AUTH_TYPE_TOKEN - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_HTML - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FLOAT - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_DECIMAL - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_DATE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_DATETIME - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_IMAGE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_TEXT - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_INT - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_SLUG - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_BOOL - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_ONE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_MANY - 42)) | (1 << (ZmeiLangParser.COL_FIELD_CHOICES - 42)) | (1 << (ZmeiLangParser.KW_THEME - 42)) | (1 << (ZmeiLangParser.KW_INSTALL - 42)) | (1 << (ZmeiLangParser.KW_HEADER - 42)) | (1 << (ZmeiLangParser.KW_SERVICES - 42)) | (1 << (ZmeiLangParser.KW_SELENIUM_PYTEST - 42)) | (1 << (ZmeiLangParser.KW_CHILD - 42)) | (1 << (ZmeiLangParser.KW_FILTER_OUT - 42)) | (1 << (ZmeiLangParser.KW_FILTER_IN - 42)) | (1 << (ZmeiLangParser.KW_PAGE - 42)) | (1 << (ZmeiLangParser.KW_LINK_SUFFIX - 42)) | (1 << (ZmeiLangParser.KW_URL_PREFIX - 42)) | (1 << (ZmeiLangParser.KW_CAN_EDIT - 42)) | (1 << (ZmeiLangParser.KW_OBJECT_EXPR - 42)) | (1 << (ZmeiLangParser.KW_BLOCK - 42)) | (1 << (ZmeiLangParser.KW_ITEM_NAME - 42)) | (1 << (ZmeiLangParser.KW_PK_PARAM - 42)) | (1 << (ZmeiLangParser.KW_LIST_FIELDS - 42)) | (1 << (ZmeiLangParser.KW_DELETE - 42)) | (1 << (ZmeiLangParser.KW_EDIT - 42)) | (1 << (ZmeiLangParser.KW_CREATE - 42)) | (1 << (ZmeiLangParser.KW_DETAIL - 42)) | (1 << (ZmeiLangParser.KW_SKIP - 42)) | (1 << (ZmeiLangParser.KW_FROM - 42)) | (1 << (ZmeiLangParser.KW_POLY_LIST - 42)) | (1 << (ZmeiLangParser.KW_CSS - 42)) | (1 << (ZmeiLangParser.KW_JS - 42)) | (1 << (ZmeiLangParser.KW_INLINE_TYPE_TABULAR - 42)) | (1 << (ZmeiLangParser.KW_INLINE_TYPE_STACKED - 42)) | (1 << (ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC - 42)) | (1 << (ZmeiLangParser.KW_INLINE - 42)) | (1 << (ZmeiLangParser.KW_TYPE - 42)) | (1 << (ZmeiLangParser.KW_USER_FIELD - 42)) | (1 << (ZmeiLangParser.KW_ANNOTATE - 42)) | (1 << (ZmeiLangParser.KW_ON_CREATE - 42)) | (1 << (ZmeiLangParser.KW_QUERY - 42)) | (1 << (ZmeiLangParser.KW_AUTH - 42)) | (1 << (ZmeiLangParser.KW_COUNT - 42)) | (1 << (ZmeiLangParser.KW_I18N - 42)))) != 0) or ((((_la - 106)) & ~0x3f) == 0 and ((1 << (_la - 106)) & ((1 << (ZmeiLangParser.KW_EXTENSION - 106)) | (1 << (ZmeiLangParser.KW_TABS - 106)) | (1 << (ZmeiLangParser.KW_LIST - 106)) | (1 << (ZmeiLangParser.KW_READ_ONLY - 106)) | (1 << (ZmeiLangParser.KW_LIST_EDITABLE - 106)) | (1 << (ZmeiLangParser.KW_LIST_FILTER - 106)) | (1 << (ZmeiLangParser.KW_LIST_SEARCH - 106)) | (1 << (ZmeiLangParser.KW_FIELDS - 106)) | (1 << (ZmeiLangParser.KW_IMPORT - 106)) | (1 << (ZmeiLangParser.KW_AS - 106)) | (1 << (ZmeiLangParser.WRITE_MODE - 106)) | (1 << (ZmeiLangParser.BOOL - 106)) | (1 << (ZmeiLangParser.ID - 106)) | (1 << (ZmeiLangParser.DIGIT - 106)) | (1 << (ZmeiLangParser.UNDERSCORE - 106)) | (1 << (ZmeiLangParser.DASH - 106)) | (1 << (ZmeiLangParser.DOT - 106)))) != 0)): + if not (((((_la - 42)) & ~0x3f) == 0 and ((1 << (_la - 42)) & ((1 << (ZmeiLangParser.KW_AUTH_TYPE_BASIC - 42)) | (1 << (ZmeiLangParser.KW_AUTH_TYPE_SESSION - 42)) | (1 << (ZmeiLangParser.KW_AUTH_TYPE_TOKEN - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_HTML - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FLOAT - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_DECIMAL - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_DATE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_DATETIME - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_IMAGE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_TEXT - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_INT - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_SLUG - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_BOOL - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_ONE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_MANY - 42)) | (1 << (ZmeiLangParser.COL_FIELD_CHOICES - 42)) | (1 << (ZmeiLangParser.KW_THEME - 42)) | (1 << (ZmeiLangParser.KW_INSTALL - 42)) | (1 << (ZmeiLangParser.KW_HEADER - 42)) | (1 << (ZmeiLangParser.KW_SERVICES - 42)) | (1 << (ZmeiLangParser.KW_SELENIUM_PYTEST - 42)) | (1 << (ZmeiLangParser.KW_CHILD - 42)) | (1 << (ZmeiLangParser.KW_FILTER_OUT - 42)) | (1 << (ZmeiLangParser.KW_FILTER_IN - 42)) | (1 << (ZmeiLangParser.KW_PAGE - 42)) | (1 << (ZmeiLangParser.KW_LINK_SUFFIX - 42)) | (1 << (ZmeiLangParser.KW_URL_PREFIX - 42)) | (1 << (ZmeiLangParser.KW_CAN_EDIT - 42)) | (1 << (ZmeiLangParser.KW_OBJECT_EXPR - 42)) | (1 << (ZmeiLangParser.KW_BLOCK - 42)) | (1 << (ZmeiLangParser.KW_ITEM_NAME - 42)) | (1 << (ZmeiLangParser.KW_PK_PARAM - 42)) | (1 << (ZmeiLangParser.KW_LIST_FIELDS - 42)) | (1 << (ZmeiLangParser.KW_DELETE - 42)) | (1 << (ZmeiLangParser.KW_EDIT - 42)) | (1 << (ZmeiLangParser.KW_CREATE - 42)) | (1 << (ZmeiLangParser.KW_DETAIL - 42)) | (1 << (ZmeiLangParser.KW_SKIP - 42)) | (1 << (ZmeiLangParser.KW_FROM - 42)) | (1 << (ZmeiLangParser.KW_POLY_LIST - 42)) | (1 << (ZmeiLangParser.KW_CSS - 42)) | (1 << (ZmeiLangParser.KW_JS - 42)) | (1 << (ZmeiLangParser.KW_INLINE_TYPE_TABULAR - 42)) | (1 << (ZmeiLangParser.KW_INLINE_TYPE_STACKED - 42)) | (1 << (ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC - 42)) | (1 << (ZmeiLangParser.KW_INLINE - 42)) | (1 << (ZmeiLangParser.KW_TYPE - 42)) | (1 << (ZmeiLangParser.KW_USER_FIELD - 42)) | (1 << (ZmeiLangParser.KW_ANNOTATE - 42)) | (1 << (ZmeiLangParser.KW_ON_CREATE - 42)) | (1 << (ZmeiLangParser.KW_QUERY - 42)) | (1 << (ZmeiLangParser.KW_AUTH - 42)) | (1 << (ZmeiLangParser.KW_COUNT - 42)) | (1 << (ZmeiLangParser.KW_I18N - 42)))) != 0) or ((((_la - 106)) & ~0x3f) == 0 and ((1 << (_la - 106)) & ((1 << (ZmeiLangParser.KW_EXTRA - 106)) | (1 << (ZmeiLangParser.KW_TABS - 106)) | (1 << (ZmeiLangParser.KW_LIST - 106)) | (1 << (ZmeiLangParser.KW_READ_ONLY - 106)) | (1 << (ZmeiLangParser.KW_LIST_EDITABLE - 106)) | (1 << (ZmeiLangParser.KW_LIST_FILTER - 106)) | (1 << (ZmeiLangParser.KW_LIST_SEARCH - 106)) | (1 << (ZmeiLangParser.KW_FIELDS - 106)) | (1 << (ZmeiLangParser.KW_IMPORT - 106)) | (1 << (ZmeiLangParser.KW_AS - 106)) | (1 << (ZmeiLangParser.WRITE_MODE - 106)) | (1 << (ZmeiLangParser.BOOL - 106)) | (1 << (ZmeiLangParser.ID - 106)) | (1 << (ZmeiLangParser.DIGIT - 106)) | (1 << (ZmeiLangParser.UNDERSCORE - 106)) | (1 << (ZmeiLangParser.DASH - 106)) | (1 << (ZmeiLangParser.DOT - 106)))) != 0)): break except RecognitionException as re: @@ -14623,7 +14623,7 @@ def url_part(self): self.state = 1936 self._errHandler.sync(self) token = self._input.LA(1) - if token in [ZmeiLangParser.KW_AUTH_TYPE_BASIC, ZmeiLangParser.KW_AUTH_TYPE_SESSION, ZmeiLangParser.KW_AUTH_TYPE_TOKEN, ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT, ZmeiLangParser.COL_FIELD_TYPE_HTML, ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA, ZmeiLangParser.COL_FIELD_TYPE_FLOAT, ZmeiLangParser.COL_FIELD_TYPE_DECIMAL, ZmeiLangParser.COL_FIELD_TYPE_DATE, ZmeiLangParser.COL_FIELD_TYPE_DATETIME, ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_TEXT, ZmeiLangParser.COL_FIELD_TYPE_INT, ZmeiLangParser.COL_FIELD_TYPE_SLUG, ZmeiLangParser.COL_FIELD_TYPE_BOOL, ZmeiLangParser.COL_FIELD_TYPE_ONE, ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE, ZmeiLangParser.COL_FIELD_TYPE_MANY, ZmeiLangParser.COL_FIELD_CHOICES, ZmeiLangParser.KW_THEME, ZmeiLangParser.KW_INSTALL, ZmeiLangParser.KW_HEADER, ZmeiLangParser.KW_SERVICES, ZmeiLangParser.KW_SELENIUM_PYTEST, ZmeiLangParser.KW_CHILD, ZmeiLangParser.KW_FILTER_OUT, ZmeiLangParser.KW_FILTER_IN, ZmeiLangParser.KW_PAGE, ZmeiLangParser.KW_LINK_SUFFIX, ZmeiLangParser.KW_URL_PREFIX, ZmeiLangParser.KW_CAN_EDIT, ZmeiLangParser.KW_OBJECT_EXPR, ZmeiLangParser.KW_BLOCK, ZmeiLangParser.KW_ITEM_NAME, ZmeiLangParser.KW_PK_PARAM, ZmeiLangParser.KW_LIST_FIELDS, ZmeiLangParser.KW_DELETE, ZmeiLangParser.KW_EDIT, ZmeiLangParser.KW_CREATE, ZmeiLangParser.KW_DETAIL, ZmeiLangParser.KW_SKIP, ZmeiLangParser.KW_FROM, ZmeiLangParser.KW_POLY_LIST, ZmeiLangParser.KW_CSS, ZmeiLangParser.KW_JS, ZmeiLangParser.KW_INLINE_TYPE_TABULAR, ZmeiLangParser.KW_INLINE_TYPE_STACKED, ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC, ZmeiLangParser.KW_INLINE, ZmeiLangParser.KW_TYPE, ZmeiLangParser.KW_USER_FIELD, ZmeiLangParser.KW_ANNOTATE, ZmeiLangParser.KW_ON_CREATE, ZmeiLangParser.KW_QUERY, ZmeiLangParser.KW_AUTH, ZmeiLangParser.KW_COUNT, ZmeiLangParser.KW_I18N, ZmeiLangParser.KW_EXTENSION, ZmeiLangParser.KW_TABS, ZmeiLangParser.KW_LIST, ZmeiLangParser.KW_READ_ONLY, ZmeiLangParser.KW_LIST_EDITABLE, ZmeiLangParser.KW_LIST_FILTER, ZmeiLangParser.KW_LIST_SEARCH, ZmeiLangParser.KW_FIELDS, ZmeiLangParser.KW_IMPORT, ZmeiLangParser.KW_AS, ZmeiLangParser.WRITE_MODE, ZmeiLangParser.BOOL, ZmeiLangParser.ID]: + if token in [ZmeiLangParser.KW_AUTH_TYPE_BASIC, ZmeiLangParser.KW_AUTH_TYPE_SESSION, ZmeiLangParser.KW_AUTH_TYPE_TOKEN, ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT, ZmeiLangParser.COL_FIELD_TYPE_HTML, ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA, ZmeiLangParser.COL_FIELD_TYPE_FLOAT, ZmeiLangParser.COL_FIELD_TYPE_DECIMAL, ZmeiLangParser.COL_FIELD_TYPE_DATE, ZmeiLangParser.COL_FIELD_TYPE_DATETIME, ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_TEXT, ZmeiLangParser.COL_FIELD_TYPE_INT, ZmeiLangParser.COL_FIELD_TYPE_SLUG, ZmeiLangParser.COL_FIELD_TYPE_BOOL, ZmeiLangParser.COL_FIELD_TYPE_ONE, ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE, ZmeiLangParser.COL_FIELD_TYPE_MANY, ZmeiLangParser.COL_FIELD_CHOICES, ZmeiLangParser.KW_THEME, ZmeiLangParser.KW_INSTALL, ZmeiLangParser.KW_HEADER, ZmeiLangParser.KW_SERVICES, ZmeiLangParser.KW_SELENIUM_PYTEST, ZmeiLangParser.KW_CHILD, ZmeiLangParser.KW_FILTER_OUT, ZmeiLangParser.KW_FILTER_IN, ZmeiLangParser.KW_PAGE, ZmeiLangParser.KW_LINK_SUFFIX, ZmeiLangParser.KW_URL_PREFIX, ZmeiLangParser.KW_CAN_EDIT, ZmeiLangParser.KW_OBJECT_EXPR, ZmeiLangParser.KW_BLOCK, ZmeiLangParser.KW_ITEM_NAME, ZmeiLangParser.KW_PK_PARAM, ZmeiLangParser.KW_LIST_FIELDS, ZmeiLangParser.KW_DELETE, ZmeiLangParser.KW_EDIT, ZmeiLangParser.KW_CREATE, ZmeiLangParser.KW_DETAIL, ZmeiLangParser.KW_SKIP, ZmeiLangParser.KW_FROM, ZmeiLangParser.KW_POLY_LIST, ZmeiLangParser.KW_CSS, ZmeiLangParser.KW_JS, ZmeiLangParser.KW_INLINE_TYPE_TABULAR, ZmeiLangParser.KW_INLINE_TYPE_STACKED, ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC, ZmeiLangParser.KW_INLINE, ZmeiLangParser.KW_TYPE, ZmeiLangParser.KW_USER_FIELD, ZmeiLangParser.KW_ANNOTATE, ZmeiLangParser.KW_ON_CREATE, ZmeiLangParser.KW_QUERY, ZmeiLangParser.KW_AUTH, ZmeiLangParser.KW_COUNT, ZmeiLangParser.KW_I18N, ZmeiLangParser.KW_EXTRA, ZmeiLangParser.KW_TABS, ZmeiLangParser.KW_LIST, ZmeiLangParser.KW_READ_ONLY, ZmeiLangParser.KW_LIST_EDITABLE, ZmeiLangParser.KW_LIST_FILTER, ZmeiLangParser.KW_LIST_SEARCH, ZmeiLangParser.KW_FIELDS, ZmeiLangParser.KW_IMPORT, ZmeiLangParser.KW_AS, ZmeiLangParser.WRITE_MODE, ZmeiLangParser.BOOL, ZmeiLangParser.ID]: self.state = 1933 self.id_or_kw() pass @@ -14641,7 +14641,7 @@ def url_part(self): self.state = 1938 self._errHandler.sync(self) _la = self._input.LA(1) - if not (((((_la - 42)) & ~0x3f) == 0 and ((1 << (_la - 42)) & ((1 << (ZmeiLangParser.KW_AUTH_TYPE_BASIC - 42)) | (1 << (ZmeiLangParser.KW_AUTH_TYPE_SESSION - 42)) | (1 << (ZmeiLangParser.KW_AUTH_TYPE_TOKEN - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_HTML - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FLOAT - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_DECIMAL - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_DATE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_DATETIME - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_IMAGE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_TEXT - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_INT - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_SLUG - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_BOOL - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_ONE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_MANY - 42)) | (1 << (ZmeiLangParser.COL_FIELD_CHOICES - 42)) | (1 << (ZmeiLangParser.KW_THEME - 42)) | (1 << (ZmeiLangParser.KW_INSTALL - 42)) | (1 << (ZmeiLangParser.KW_HEADER - 42)) | (1 << (ZmeiLangParser.KW_SERVICES - 42)) | (1 << (ZmeiLangParser.KW_SELENIUM_PYTEST - 42)) | (1 << (ZmeiLangParser.KW_CHILD - 42)) | (1 << (ZmeiLangParser.KW_FILTER_OUT - 42)) | (1 << (ZmeiLangParser.KW_FILTER_IN - 42)) | (1 << (ZmeiLangParser.KW_PAGE - 42)) | (1 << (ZmeiLangParser.KW_LINK_SUFFIX - 42)) | (1 << (ZmeiLangParser.KW_URL_PREFIX - 42)) | (1 << (ZmeiLangParser.KW_CAN_EDIT - 42)) | (1 << (ZmeiLangParser.KW_OBJECT_EXPR - 42)) | (1 << (ZmeiLangParser.KW_BLOCK - 42)) | (1 << (ZmeiLangParser.KW_ITEM_NAME - 42)) | (1 << (ZmeiLangParser.KW_PK_PARAM - 42)) | (1 << (ZmeiLangParser.KW_LIST_FIELDS - 42)) | (1 << (ZmeiLangParser.KW_DELETE - 42)) | (1 << (ZmeiLangParser.KW_EDIT - 42)) | (1 << (ZmeiLangParser.KW_CREATE - 42)) | (1 << (ZmeiLangParser.KW_DETAIL - 42)) | (1 << (ZmeiLangParser.KW_SKIP - 42)) | (1 << (ZmeiLangParser.KW_FROM - 42)) | (1 << (ZmeiLangParser.KW_POLY_LIST - 42)) | (1 << (ZmeiLangParser.KW_CSS - 42)) | (1 << (ZmeiLangParser.KW_JS - 42)) | (1 << (ZmeiLangParser.KW_INLINE_TYPE_TABULAR - 42)) | (1 << (ZmeiLangParser.KW_INLINE_TYPE_STACKED - 42)) | (1 << (ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC - 42)) | (1 << (ZmeiLangParser.KW_INLINE - 42)) | (1 << (ZmeiLangParser.KW_TYPE - 42)) | (1 << (ZmeiLangParser.KW_USER_FIELD - 42)) | (1 << (ZmeiLangParser.KW_ANNOTATE - 42)) | (1 << (ZmeiLangParser.KW_ON_CREATE - 42)) | (1 << (ZmeiLangParser.KW_QUERY - 42)) | (1 << (ZmeiLangParser.KW_AUTH - 42)) | (1 << (ZmeiLangParser.KW_COUNT - 42)) | (1 << (ZmeiLangParser.KW_I18N - 42)))) != 0) or ((((_la - 106)) & ~0x3f) == 0 and ((1 << (_la - 106)) & ((1 << (ZmeiLangParser.KW_EXTENSION - 106)) | (1 << (ZmeiLangParser.KW_TABS - 106)) | (1 << (ZmeiLangParser.KW_LIST - 106)) | (1 << (ZmeiLangParser.KW_READ_ONLY - 106)) | (1 << (ZmeiLangParser.KW_LIST_EDITABLE - 106)) | (1 << (ZmeiLangParser.KW_LIST_FILTER - 106)) | (1 << (ZmeiLangParser.KW_LIST_SEARCH - 106)) | (1 << (ZmeiLangParser.KW_FIELDS - 106)) | (1 << (ZmeiLangParser.KW_IMPORT - 106)) | (1 << (ZmeiLangParser.KW_AS - 106)) | (1 << (ZmeiLangParser.WRITE_MODE - 106)) | (1 << (ZmeiLangParser.BOOL - 106)) | (1 << (ZmeiLangParser.ID - 106)) | (1 << (ZmeiLangParser.DIGIT - 106)) | (1 << (ZmeiLangParser.DASH - 106)))) != 0)): + if not (((((_la - 42)) & ~0x3f) == 0 and ((1 << (_la - 42)) & ((1 << (ZmeiLangParser.KW_AUTH_TYPE_BASIC - 42)) | (1 << (ZmeiLangParser.KW_AUTH_TYPE_SESSION - 42)) | (1 << (ZmeiLangParser.KW_AUTH_TYPE_TOKEN - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_HTML - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FLOAT - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_DECIMAL - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_DATE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_DATETIME - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_IMAGE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_TEXT - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_INT - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_SLUG - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_BOOL - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_ONE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_MANY - 42)) | (1 << (ZmeiLangParser.COL_FIELD_CHOICES - 42)) | (1 << (ZmeiLangParser.KW_THEME - 42)) | (1 << (ZmeiLangParser.KW_INSTALL - 42)) | (1 << (ZmeiLangParser.KW_HEADER - 42)) | (1 << (ZmeiLangParser.KW_SERVICES - 42)) | (1 << (ZmeiLangParser.KW_SELENIUM_PYTEST - 42)) | (1 << (ZmeiLangParser.KW_CHILD - 42)) | (1 << (ZmeiLangParser.KW_FILTER_OUT - 42)) | (1 << (ZmeiLangParser.KW_FILTER_IN - 42)) | (1 << (ZmeiLangParser.KW_PAGE - 42)) | (1 << (ZmeiLangParser.KW_LINK_SUFFIX - 42)) | (1 << (ZmeiLangParser.KW_URL_PREFIX - 42)) | (1 << (ZmeiLangParser.KW_CAN_EDIT - 42)) | (1 << (ZmeiLangParser.KW_OBJECT_EXPR - 42)) | (1 << (ZmeiLangParser.KW_BLOCK - 42)) | (1 << (ZmeiLangParser.KW_ITEM_NAME - 42)) | (1 << (ZmeiLangParser.KW_PK_PARAM - 42)) | (1 << (ZmeiLangParser.KW_LIST_FIELDS - 42)) | (1 << (ZmeiLangParser.KW_DELETE - 42)) | (1 << (ZmeiLangParser.KW_EDIT - 42)) | (1 << (ZmeiLangParser.KW_CREATE - 42)) | (1 << (ZmeiLangParser.KW_DETAIL - 42)) | (1 << (ZmeiLangParser.KW_SKIP - 42)) | (1 << (ZmeiLangParser.KW_FROM - 42)) | (1 << (ZmeiLangParser.KW_POLY_LIST - 42)) | (1 << (ZmeiLangParser.KW_CSS - 42)) | (1 << (ZmeiLangParser.KW_JS - 42)) | (1 << (ZmeiLangParser.KW_INLINE_TYPE_TABULAR - 42)) | (1 << (ZmeiLangParser.KW_INLINE_TYPE_STACKED - 42)) | (1 << (ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC - 42)) | (1 << (ZmeiLangParser.KW_INLINE - 42)) | (1 << (ZmeiLangParser.KW_TYPE - 42)) | (1 << (ZmeiLangParser.KW_USER_FIELD - 42)) | (1 << (ZmeiLangParser.KW_ANNOTATE - 42)) | (1 << (ZmeiLangParser.KW_ON_CREATE - 42)) | (1 << (ZmeiLangParser.KW_QUERY - 42)) | (1 << (ZmeiLangParser.KW_AUTH - 42)) | (1 << (ZmeiLangParser.KW_COUNT - 42)) | (1 << (ZmeiLangParser.KW_I18N - 42)))) != 0) or ((((_la - 106)) & ~0x3f) == 0 and ((1 << (_la - 106)) & ((1 << (ZmeiLangParser.KW_EXTRA - 106)) | (1 << (ZmeiLangParser.KW_TABS - 106)) | (1 << (ZmeiLangParser.KW_LIST - 106)) | (1 << (ZmeiLangParser.KW_READ_ONLY - 106)) | (1 << (ZmeiLangParser.KW_LIST_EDITABLE - 106)) | (1 << (ZmeiLangParser.KW_LIST_FILTER - 106)) | (1 << (ZmeiLangParser.KW_LIST_SEARCH - 106)) | (1 << (ZmeiLangParser.KW_FIELDS - 106)) | (1 << (ZmeiLangParser.KW_IMPORT - 106)) | (1 << (ZmeiLangParser.KW_AS - 106)) | (1 << (ZmeiLangParser.WRITE_MODE - 106)) | (1 << (ZmeiLangParser.BOOL - 106)) | (1 << (ZmeiLangParser.ID - 106)) | (1 << (ZmeiLangParser.DIGIT - 106)) | (1 << (ZmeiLangParser.DASH - 106)))) != 0)): break except RecognitionException as re: @@ -14741,7 +14741,7 @@ def url_segment(self): self.state = 1946 self._errHandler.sync(self) token = self._input.LA(1) - if token in [ZmeiLangParser.KW_AUTH_TYPE_BASIC, ZmeiLangParser.KW_AUTH_TYPE_SESSION, ZmeiLangParser.KW_AUTH_TYPE_TOKEN, ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT, ZmeiLangParser.COL_FIELD_TYPE_HTML, ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA, ZmeiLangParser.COL_FIELD_TYPE_FLOAT, ZmeiLangParser.COL_FIELD_TYPE_DECIMAL, ZmeiLangParser.COL_FIELD_TYPE_DATE, ZmeiLangParser.COL_FIELD_TYPE_DATETIME, ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_TEXT, ZmeiLangParser.COL_FIELD_TYPE_INT, ZmeiLangParser.COL_FIELD_TYPE_SLUG, ZmeiLangParser.COL_FIELD_TYPE_BOOL, ZmeiLangParser.COL_FIELD_TYPE_ONE, ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE, ZmeiLangParser.COL_FIELD_TYPE_MANY, ZmeiLangParser.COL_FIELD_CHOICES, ZmeiLangParser.KW_THEME, ZmeiLangParser.KW_INSTALL, ZmeiLangParser.KW_HEADER, ZmeiLangParser.KW_SERVICES, ZmeiLangParser.KW_SELENIUM_PYTEST, ZmeiLangParser.KW_CHILD, ZmeiLangParser.KW_FILTER_OUT, ZmeiLangParser.KW_FILTER_IN, ZmeiLangParser.KW_PAGE, ZmeiLangParser.KW_LINK_SUFFIX, ZmeiLangParser.KW_URL_PREFIX, ZmeiLangParser.KW_CAN_EDIT, ZmeiLangParser.KW_OBJECT_EXPR, ZmeiLangParser.KW_BLOCK, ZmeiLangParser.KW_ITEM_NAME, ZmeiLangParser.KW_PK_PARAM, ZmeiLangParser.KW_LIST_FIELDS, ZmeiLangParser.KW_DELETE, ZmeiLangParser.KW_EDIT, ZmeiLangParser.KW_CREATE, ZmeiLangParser.KW_DETAIL, ZmeiLangParser.KW_SKIP, ZmeiLangParser.KW_FROM, ZmeiLangParser.KW_POLY_LIST, ZmeiLangParser.KW_CSS, ZmeiLangParser.KW_JS, ZmeiLangParser.KW_INLINE_TYPE_TABULAR, ZmeiLangParser.KW_INLINE_TYPE_STACKED, ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC, ZmeiLangParser.KW_INLINE, ZmeiLangParser.KW_TYPE, ZmeiLangParser.KW_USER_FIELD, ZmeiLangParser.KW_ANNOTATE, ZmeiLangParser.KW_ON_CREATE, ZmeiLangParser.KW_QUERY, ZmeiLangParser.KW_AUTH, ZmeiLangParser.KW_COUNT, ZmeiLangParser.KW_I18N, ZmeiLangParser.KW_EXTENSION, ZmeiLangParser.KW_TABS, ZmeiLangParser.KW_LIST, ZmeiLangParser.KW_READ_ONLY, ZmeiLangParser.KW_LIST_EDITABLE, ZmeiLangParser.KW_LIST_FILTER, ZmeiLangParser.KW_LIST_SEARCH, ZmeiLangParser.KW_FIELDS, ZmeiLangParser.KW_IMPORT, ZmeiLangParser.KW_AS, ZmeiLangParser.WRITE_MODE, ZmeiLangParser.BOOL, ZmeiLangParser.ID, ZmeiLangParser.DIGIT, ZmeiLangParser.DASH]: + if token in [ZmeiLangParser.KW_AUTH_TYPE_BASIC, ZmeiLangParser.KW_AUTH_TYPE_SESSION, ZmeiLangParser.KW_AUTH_TYPE_TOKEN, ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT, ZmeiLangParser.COL_FIELD_TYPE_HTML, ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA, ZmeiLangParser.COL_FIELD_TYPE_FLOAT, ZmeiLangParser.COL_FIELD_TYPE_DECIMAL, ZmeiLangParser.COL_FIELD_TYPE_DATE, ZmeiLangParser.COL_FIELD_TYPE_DATETIME, ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_TEXT, ZmeiLangParser.COL_FIELD_TYPE_INT, ZmeiLangParser.COL_FIELD_TYPE_SLUG, ZmeiLangParser.COL_FIELD_TYPE_BOOL, ZmeiLangParser.COL_FIELD_TYPE_ONE, ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE, ZmeiLangParser.COL_FIELD_TYPE_MANY, ZmeiLangParser.COL_FIELD_CHOICES, ZmeiLangParser.KW_THEME, ZmeiLangParser.KW_INSTALL, ZmeiLangParser.KW_HEADER, ZmeiLangParser.KW_SERVICES, ZmeiLangParser.KW_SELENIUM_PYTEST, ZmeiLangParser.KW_CHILD, ZmeiLangParser.KW_FILTER_OUT, ZmeiLangParser.KW_FILTER_IN, ZmeiLangParser.KW_PAGE, ZmeiLangParser.KW_LINK_SUFFIX, ZmeiLangParser.KW_URL_PREFIX, ZmeiLangParser.KW_CAN_EDIT, ZmeiLangParser.KW_OBJECT_EXPR, ZmeiLangParser.KW_BLOCK, ZmeiLangParser.KW_ITEM_NAME, ZmeiLangParser.KW_PK_PARAM, ZmeiLangParser.KW_LIST_FIELDS, ZmeiLangParser.KW_DELETE, ZmeiLangParser.KW_EDIT, ZmeiLangParser.KW_CREATE, ZmeiLangParser.KW_DETAIL, ZmeiLangParser.KW_SKIP, ZmeiLangParser.KW_FROM, ZmeiLangParser.KW_POLY_LIST, ZmeiLangParser.KW_CSS, ZmeiLangParser.KW_JS, ZmeiLangParser.KW_INLINE_TYPE_TABULAR, ZmeiLangParser.KW_INLINE_TYPE_STACKED, ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC, ZmeiLangParser.KW_INLINE, ZmeiLangParser.KW_TYPE, ZmeiLangParser.KW_USER_FIELD, ZmeiLangParser.KW_ANNOTATE, ZmeiLangParser.KW_ON_CREATE, ZmeiLangParser.KW_QUERY, ZmeiLangParser.KW_AUTH, ZmeiLangParser.KW_COUNT, ZmeiLangParser.KW_I18N, ZmeiLangParser.KW_EXTRA, ZmeiLangParser.KW_TABS, ZmeiLangParser.KW_LIST, ZmeiLangParser.KW_READ_ONLY, ZmeiLangParser.KW_LIST_EDITABLE, ZmeiLangParser.KW_LIST_FILTER, ZmeiLangParser.KW_LIST_SEARCH, ZmeiLangParser.KW_FIELDS, ZmeiLangParser.KW_IMPORT, ZmeiLangParser.KW_AS, ZmeiLangParser.WRITE_MODE, ZmeiLangParser.BOOL, ZmeiLangParser.ID, ZmeiLangParser.DIGIT, ZmeiLangParser.DASH]: self.state = 1944 self.url_part() pass @@ -15277,7 +15277,7 @@ def page_function(self): self.state = 2009 self._errHandler.sync(self) _la = self._input.LA(1) - if ((((_la - 42)) & ~0x3f) == 0 and ((1 << (_la - 42)) & ((1 << (ZmeiLangParser.KW_AUTH_TYPE_BASIC - 42)) | (1 << (ZmeiLangParser.KW_AUTH_TYPE_SESSION - 42)) | (1 << (ZmeiLangParser.KW_AUTH_TYPE_TOKEN - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_HTML - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FLOAT - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_DECIMAL - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_DATE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_DATETIME - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_IMAGE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_TEXT - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_INT - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_SLUG - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_BOOL - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_ONE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_MANY - 42)) | (1 << (ZmeiLangParser.COL_FIELD_CHOICES - 42)) | (1 << (ZmeiLangParser.KW_THEME - 42)) | (1 << (ZmeiLangParser.KW_INSTALL - 42)) | (1 << (ZmeiLangParser.KW_HEADER - 42)) | (1 << (ZmeiLangParser.KW_SERVICES - 42)) | (1 << (ZmeiLangParser.KW_SELENIUM_PYTEST - 42)) | (1 << (ZmeiLangParser.KW_CHILD - 42)) | (1 << (ZmeiLangParser.KW_FILTER_OUT - 42)) | (1 << (ZmeiLangParser.KW_FILTER_IN - 42)) | (1 << (ZmeiLangParser.KW_PAGE - 42)) | (1 << (ZmeiLangParser.KW_LINK_SUFFIX - 42)) | (1 << (ZmeiLangParser.KW_URL_PREFIX - 42)) | (1 << (ZmeiLangParser.KW_CAN_EDIT - 42)) | (1 << (ZmeiLangParser.KW_OBJECT_EXPR - 42)) | (1 << (ZmeiLangParser.KW_BLOCK - 42)) | (1 << (ZmeiLangParser.KW_ITEM_NAME - 42)) | (1 << (ZmeiLangParser.KW_PK_PARAM - 42)) | (1 << (ZmeiLangParser.KW_LIST_FIELDS - 42)) | (1 << (ZmeiLangParser.KW_DELETE - 42)) | (1 << (ZmeiLangParser.KW_EDIT - 42)) | (1 << (ZmeiLangParser.KW_CREATE - 42)) | (1 << (ZmeiLangParser.KW_DETAIL - 42)) | (1 << (ZmeiLangParser.KW_SKIP - 42)) | (1 << (ZmeiLangParser.KW_FROM - 42)) | (1 << (ZmeiLangParser.KW_POLY_LIST - 42)) | (1 << (ZmeiLangParser.KW_CSS - 42)) | (1 << (ZmeiLangParser.KW_JS - 42)) | (1 << (ZmeiLangParser.KW_INLINE_TYPE_TABULAR - 42)) | (1 << (ZmeiLangParser.KW_INLINE_TYPE_STACKED - 42)) | (1 << (ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC - 42)) | (1 << (ZmeiLangParser.KW_INLINE - 42)) | (1 << (ZmeiLangParser.KW_TYPE - 42)) | (1 << (ZmeiLangParser.KW_USER_FIELD - 42)) | (1 << (ZmeiLangParser.KW_ANNOTATE - 42)) | (1 << (ZmeiLangParser.KW_ON_CREATE - 42)) | (1 << (ZmeiLangParser.KW_QUERY - 42)) | (1 << (ZmeiLangParser.KW_AUTH - 42)) | (1 << (ZmeiLangParser.KW_COUNT - 42)) | (1 << (ZmeiLangParser.KW_I18N - 42)))) != 0) or ((((_la - 106)) & ~0x3f) == 0 and ((1 << (_la - 106)) & ((1 << (ZmeiLangParser.KW_EXTENSION - 106)) | (1 << (ZmeiLangParser.KW_TABS - 106)) | (1 << (ZmeiLangParser.KW_LIST - 106)) | (1 << (ZmeiLangParser.KW_READ_ONLY - 106)) | (1 << (ZmeiLangParser.KW_LIST_EDITABLE - 106)) | (1 << (ZmeiLangParser.KW_LIST_FILTER - 106)) | (1 << (ZmeiLangParser.KW_LIST_SEARCH - 106)) | (1 << (ZmeiLangParser.KW_FIELDS - 106)) | (1 << (ZmeiLangParser.KW_IMPORT - 106)) | (1 << (ZmeiLangParser.KW_AS - 106)) | (1 << (ZmeiLangParser.WRITE_MODE - 106)) | (1 << (ZmeiLangParser.BOOL - 106)) | (1 << (ZmeiLangParser.ID - 106)) | (1 << (ZmeiLangParser.DOT - 106)))) != 0): + if ((((_la - 42)) & ~0x3f) == 0 and ((1 << (_la - 42)) & ((1 << (ZmeiLangParser.KW_AUTH_TYPE_BASIC - 42)) | (1 << (ZmeiLangParser.KW_AUTH_TYPE_SESSION - 42)) | (1 << (ZmeiLangParser.KW_AUTH_TYPE_TOKEN - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_HTML - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FLOAT - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_DECIMAL - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_DATE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_DATETIME - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_IMAGE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_TEXT - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_INT - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_SLUG - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_BOOL - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_ONE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_MANY - 42)) | (1 << (ZmeiLangParser.COL_FIELD_CHOICES - 42)) | (1 << (ZmeiLangParser.KW_THEME - 42)) | (1 << (ZmeiLangParser.KW_INSTALL - 42)) | (1 << (ZmeiLangParser.KW_HEADER - 42)) | (1 << (ZmeiLangParser.KW_SERVICES - 42)) | (1 << (ZmeiLangParser.KW_SELENIUM_PYTEST - 42)) | (1 << (ZmeiLangParser.KW_CHILD - 42)) | (1 << (ZmeiLangParser.KW_FILTER_OUT - 42)) | (1 << (ZmeiLangParser.KW_FILTER_IN - 42)) | (1 << (ZmeiLangParser.KW_PAGE - 42)) | (1 << (ZmeiLangParser.KW_LINK_SUFFIX - 42)) | (1 << (ZmeiLangParser.KW_URL_PREFIX - 42)) | (1 << (ZmeiLangParser.KW_CAN_EDIT - 42)) | (1 << (ZmeiLangParser.KW_OBJECT_EXPR - 42)) | (1 << (ZmeiLangParser.KW_BLOCK - 42)) | (1 << (ZmeiLangParser.KW_ITEM_NAME - 42)) | (1 << (ZmeiLangParser.KW_PK_PARAM - 42)) | (1 << (ZmeiLangParser.KW_LIST_FIELDS - 42)) | (1 << (ZmeiLangParser.KW_DELETE - 42)) | (1 << (ZmeiLangParser.KW_EDIT - 42)) | (1 << (ZmeiLangParser.KW_CREATE - 42)) | (1 << (ZmeiLangParser.KW_DETAIL - 42)) | (1 << (ZmeiLangParser.KW_SKIP - 42)) | (1 << (ZmeiLangParser.KW_FROM - 42)) | (1 << (ZmeiLangParser.KW_POLY_LIST - 42)) | (1 << (ZmeiLangParser.KW_CSS - 42)) | (1 << (ZmeiLangParser.KW_JS - 42)) | (1 << (ZmeiLangParser.KW_INLINE_TYPE_TABULAR - 42)) | (1 << (ZmeiLangParser.KW_INLINE_TYPE_STACKED - 42)) | (1 << (ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC - 42)) | (1 << (ZmeiLangParser.KW_INLINE - 42)) | (1 << (ZmeiLangParser.KW_TYPE - 42)) | (1 << (ZmeiLangParser.KW_USER_FIELD - 42)) | (1 << (ZmeiLangParser.KW_ANNOTATE - 42)) | (1 << (ZmeiLangParser.KW_ON_CREATE - 42)) | (1 << (ZmeiLangParser.KW_QUERY - 42)) | (1 << (ZmeiLangParser.KW_AUTH - 42)) | (1 << (ZmeiLangParser.KW_COUNT - 42)) | (1 << (ZmeiLangParser.KW_I18N - 42)))) != 0) or ((((_la - 106)) & ~0x3f) == 0 and ((1 << (_la - 106)) & ((1 << (ZmeiLangParser.KW_EXTRA - 106)) | (1 << (ZmeiLangParser.KW_TABS - 106)) | (1 << (ZmeiLangParser.KW_LIST - 106)) | (1 << (ZmeiLangParser.KW_READ_ONLY - 106)) | (1 << (ZmeiLangParser.KW_LIST_EDITABLE - 106)) | (1 << (ZmeiLangParser.KW_LIST_FILTER - 106)) | (1 << (ZmeiLangParser.KW_LIST_SEARCH - 106)) | (1 << (ZmeiLangParser.KW_FIELDS - 106)) | (1 << (ZmeiLangParser.KW_IMPORT - 106)) | (1 << (ZmeiLangParser.KW_AS - 106)) | (1 << (ZmeiLangParser.WRITE_MODE - 106)) | (1 << (ZmeiLangParser.BOOL - 106)) | (1 << (ZmeiLangParser.ID - 106)) | (1 << (ZmeiLangParser.DOT - 106)))) != 0): self.state = 2008 self.page_function_args() @@ -15737,7 +15737,7 @@ def an_stream(self): self.state = 2061 self._errHandler.sync(self) token = self._input.LA(1) - if token in [ZmeiLangParser.KW_AUTH_TYPE_BASIC, ZmeiLangParser.KW_AUTH_TYPE_SESSION, ZmeiLangParser.KW_AUTH_TYPE_TOKEN, ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT, ZmeiLangParser.COL_FIELD_TYPE_HTML, ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA, ZmeiLangParser.COL_FIELD_TYPE_FLOAT, ZmeiLangParser.COL_FIELD_TYPE_DECIMAL, ZmeiLangParser.COL_FIELD_TYPE_DATE, ZmeiLangParser.COL_FIELD_TYPE_DATETIME, ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_TEXT, ZmeiLangParser.COL_FIELD_TYPE_INT, ZmeiLangParser.COL_FIELD_TYPE_SLUG, ZmeiLangParser.COL_FIELD_TYPE_BOOL, ZmeiLangParser.COL_FIELD_TYPE_ONE, ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE, ZmeiLangParser.COL_FIELD_TYPE_MANY, ZmeiLangParser.COL_FIELD_CHOICES, ZmeiLangParser.KW_THEME, ZmeiLangParser.KW_INSTALL, ZmeiLangParser.KW_HEADER, ZmeiLangParser.KW_SERVICES, ZmeiLangParser.KW_SELENIUM_PYTEST, ZmeiLangParser.KW_CHILD, ZmeiLangParser.KW_FILTER_OUT, ZmeiLangParser.KW_FILTER_IN, ZmeiLangParser.KW_PAGE, ZmeiLangParser.KW_LINK_SUFFIX, ZmeiLangParser.KW_URL_PREFIX, ZmeiLangParser.KW_CAN_EDIT, ZmeiLangParser.KW_OBJECT_EXPR, ZmeiLangParser.KW_BLOCK, ZmeiLangParser.KW_ITEM_NAME, ZmeiLangParser.KW_PK_PARAM, ZmeiLangParser.KW_LIST_FIELDS, ZmeiLangParser.KW_DELETE, ZmeiLangParser.KW_EDIT, ZmeiLangParser.KW_CREATE, ZmeiLangParser.KW_DETAIL, ZmeiLangParser.KW_SKIP, ZmeiLangParser.KW_FROM, ZmeiLangParser.KW_POLY_LIST, ZmeiLangParser.KW_CSS, ZmeiLangParser.KW_JS, ZmeiLangParser.KW_INLINE_TYPE_TABULAR, ZmeiLangParser.KW_INLINE_TYPE_STACKED, ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC, ZmeiLangParser.KW_INLINE, ZmeiLangParser.KW_TYPE, ZmeiLangParser.KW_USER_FIELD, ZmeiLangParser.KW_ANNOTATE, ZmeiLangParser.KW_ON_CREATE, ZmeiLangParser.KW_QUERY, ZmeiLangParser.KW_AUTH, ZmeiLangParser.KW_COUNT, ZmeiLangParser.KW_I18N, ZmeiLangParser.KW_EXTENSION, ZmeiLangParser.KW_TABS, ZmeiLangParser.KW_LIST, ZmeiLangParser.KW_READ_ONLY, ZmeiLangParser.KW_LIST_EDITABLE, ZmeiLangParser.KW_LIST_FILTER, ZmeiLangParser.KW_LIST_SEARCH, ZmeiLangParser.KW_FIELDS, ZmeiLangParser.KW_IMPORT, ZmeiLangParser.KW_AS, ZmeiLangParser.WRITE_MODE, ZmeiLangParser.BOOL, ZmeiLangParser.ID, ZmeiLangParser.HASH]: + if token in [ZmeiLangParser.KW_AUTH_TYPE_BASIC, ZmeiLangParser.KW_AUTH_TYPE_SESSION, ZmeiLangParser.KW_AUTH_TYPE_TOKEN, ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT, ZmeiLangParser.COL_FIELD_TYPE_HTML, ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA, ZmeiLangParser.COL_FIELD_TYPE_FLOAT, ZmeiLangParser.COL_FIELD_TYPE_DECIMAL, ZmeiLangParser.COL_FIELD_TYPE_DATE, ZmeiLangParser.COL_FIELD_TYPE_DATETIME, ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_TEXT, ZmeiLangParser.COL_FIELD_TYPE_INT, ZmeiLangParser.COL_FIELD_TYPE_SLUG, ZmeiLangParser.COL_FIELD_TYPE_BOOL, ZmeiLangParser.COL_FIELD_TYPE_ONE, ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE, ZmeiLangParser.COL_FIELD_TYPE_MANY, ZmeiLangParser.COL_FIELD_CHOICES, ZmeiLangParser.KW_THEME, ZmeiLangParser.KW_INSTALL, ZmeiLangParser.KW_HEADER, ZmeiLangParser.KW_SERVICES, ZmeiLangParser.KW_SELENIUM_PYTEST, ZmeiLangParser.KW_CHILD, ZmeiLangParser.KW_FILTER_OUT, ZmeiLangParser.KW_FILTER_IN, ZmeiLangParser.KW_PAGE, ZmeiLangParser.KW_LINK_SUFFIX, ZmeiLangParser.KW_URL_PREFIX, ZmeiLangParser.KW_CAN_EDIT, ZmeiLangParser.KW_OBJECT_EXPR, ZmeiLangParser.KW_BLOCK, ZmeiLangParser.KW_ITEM_NAME, ZmeiLangParser.KW_PK_PARAM, ZmeiLangParser.KW_LIST_FIELDS, ZmeiLangParser.KW_DELETE, ZmeiLangParser.KW_EDIT, ZmeiLangParser.KW_CREATE, ZmeiLangParser.KW_DETAIL, ZmeiLangParser.KW_SKIP, ZmeiLangParser.KW_FROM, ZmeiLangParser.KW_POLY_LIST, ZmeiLangParser.KW_CSS, ZmeiLangParser.KW_JS, ZmeiLangParser.KW_INLINE_TYPE_TABULAR, ZmeiLangParser.KW_INLINE_TYPE_STACKED, ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC, ZmeiLangParser.KW_INLINE, ZmeiLangParser.KW_TYPE, ZmeiLangParser.KW_USER_FIELD, ZmeiLangParser.KW_ANNOTATE, ZmeiLangParser.KW_ON_CREATE, ZmeiLangParser.KW_QUERY, ZmeiLangParser.KW_AUTH, ZmeiLangParser.KW_COUNT, ZmeiLangParser.KW_I18N, ZmeiLangParser.KW_EXTRA, ZmeiLangParser.KW_TABS, ZmeiLangParser.KW_LIST, ZmeiLangParser.KW_READ_ONLY, ZmeiLangParser.KW_LIST_EDITABLE, ZmeiLangParser.KW_LIST_FILTER, ZmeiLangParser.KW_LIST_SEARCH, ZmeiLangParser.KW_FIELDS, ZmeiLangParser.KW_IMPORT, ZmeiLangParser.KW_AS, ZmeiLangParser.WRITE_MODE, ZmeiLangParser.BOOL, ZmeiLangParser.ID, ZmeiLangParser.HASH]: self.state = 2059 self.an_stream_model() pass @@ -15751,7 +15751,7 @@ def an_stream(self): self.state = 2063 self._errHandler.sync(self) _la = self._input.LA(1) - if not (((((_la - 42)) & ~0x3f) == 0 and ((1 << (_la - 42)) & ((1 << (ZmeiLangParser.KW_AUTH_TYPE_BASIC - 42)) | (1 << (ZmeiLangParser.KW_AUTH_TYPE_SESSION - 42)) | (1 << (ZmeiLangParser.KW_AUTH_TYPE_TOKEN - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_HTML - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FLOAT - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_DECIMAL - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_DATE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_DATETIME - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_IMAGE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_TEXT - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_INT - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_SLUG - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_BOOL - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_ONE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_MANY - 42)) | (1 << (ZmeiLangParser.COL_FIELD_CHOICES - 42)) | (1 << (ZmeiLangParser.KW_THEME - 42)) | (1 << (ZmeiLangParser.KW_INSTALL - 42)) | (1 << (ZmeiLangParser.KW_HEADER - 42)) | (1 << (ZmeiLangParser.KW_SERVICES - 42)) | (1 << (ZmeiLangParser.KW_SELENIUM_PYTEST - 42)) | (1 << (ZmeiLangParser.KW_CHILD - 42)) | (1 << (ZmeiLangParser.KW_FILTER_OUT - 42)) | (1 << (ZmeiLangParser.KW_FILTER_IN - 42)) | (1 << (ZmeiLangParser.KW_PAGE - 42)) | (1 << (ZmeiLangParser.KW_LINK_SUFFIX - 42)) | (1 << (ZmeiLangParser.KW_URL_PREFIX - 42)) | (1 << (ZmeiLangParser.KW_CAN_EDIT - 42)) | (1 << (ZmeiLangParser.KW_OBJECT_EXPR - 42)) | (1 << (ZmeiLangParser.KW_BLOCK - 42)) | (1 << (ZmeiLangParser.KW_ITEM_NAME - 42)) | (1 << (ZmeiLangParser.KW_PK_PARAM - 42)) | (1 << (ZmeiLangParser.KW_LIST_FIELDS - 42)) | (1 << (ZmeiLangParser.KW_DELETE - 42)) | (1 << (ZmeiLangParser.KW_EDIT - 42)) | (1 << (ZmeiLangParser.KW_CREATE - 42)) | (1 << (ZmeiLangParser.KW_DETAIL - 42)) | (1 << (ZmeiLangParser.KW_SKIP - 42)) | (1 << (ZmeiLangParser.KW_FROM - 42)) | (1 << (ZmeiLangParser.KW_POLY_LIST - 42)) | (1 << (ZmeiLangParser.KW_CSS - 42)) | (1 << (ZmeiLangParser.KW_JS - 42)) | (1 << (ZmeiLangParser.KW_INLINE_TYPE_TABULAR - 42)) | (1 << (ZmeiLangParser.KW_INLINE_TYPE_STACKED - 42)) | (1 << (ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC - 42)) | (1 << (ZmeiLangParser.KW_INLINE - 42)) | (1 << (ZmeiLangParser.KW_TYPE - 42)) | (1 << (ZmeiLangParser.KW_USER_FIELD - 42)) | (1 << (ZmeiLangParser.KW_ANNOTATE - 42)) | (1 << (ZmeiLangParser.KW_ON_CREATE - 42)) | (1 << (ZmeiLangParser.KW_QUERY - 42)) | (1 << (ZmeiLangParser.KW_AUTH - 42)) | (1 << (ZmeiLangParser.KW_COUNT - 42)) | (1 << (ZmeiLangParser.KW_I18N - 42)))) != 0) or ((((_la - 106)) & ~0x3f) == 0 and ((1 << (_la - 106)) & ((1 << (ZmeiLangParser.KW_EXTENSION - 106)) | (1 << (ZmeiLangParser.KW_TABS - 106)) | (1 << (ZmeiLangParser.KW_LIST - 106)) | (1 << (ZmeiLangParser.KW_READ_ONLY - 106)) | (1 << (ZmeiLangParser.KW_LIST_EDITABLE - 106)) | (1 << (ZmeiLangParser.KW_LIST_FILTER - 106)) | (1 << (ZmeiLangParser.KW_LIST_SEARCH - 106)) | (1 << (ZmeiLangParser.KW_FIELDS - 106)) | (1 << (ZmeiLangParser.KW_IMPORT - 106)) | (1 << (ZmeiLangParser.KW_AS - 106)) | (1 << (ZmeiLangParser.WRITE_MODE - 106)) | (1 << (ZmeiLangParser.BOOL - 106)) | (1 << (ZmeiLangParser.NL - 106)) | (1 << (ZmeiLangParser.ID - 106)) | (1 << (ZmeiLangParser.HASH - 106)))) != 0)): + if not (((((_la - 42)) & ~0x3f) == 0 and ((1 << (_la - 42)) & ((1 << (ZmeiLangParser.KW_AUTH_TYPE_BASIC - 42)) | (1 << (ZmeiLangParser.KW_AUTH_TYPE_SESSION - 42)) | (1 << (ZmeiLangParser.KW_AUTH_TYPE_TOKEN - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_HTML - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FLOAT - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_DECIMAL - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_DATE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_DATETIME - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_IMAGE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_TEXT - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_INT - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_SLUG - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_BOOL - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_ONE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE - 42)) | (1 << (ZmeiLangParser.COL_FIELD_TYPE_MANY - 42)) | (1 << (ZmeiLangParser.COL_FIELD_CHOICES - 42)) | (1 << (ZmeiLangParser.KW_THEME - 42)) | (1 << (ZmeiLangParser.KW_INSTALL - 42)) | (1 << (ZmeiLangParser.KW_HEADER - 42)) | (1 << (ZmeiLangParser.KW_SERVICES - 42)) | (1 << (ZmeiLangParser.KW_SELENIUM_PYTEST - 42)) | (1 << (ZmeiLangParser.KW_CHILD - 42)) | (1 << (ZmeiLangParser.KW_FILTER_OUT - 42)) | (1 << (ZmeiLangParser.KW_FILTER_IN - 42)) | (1 << (ZmeiLangParser.KW_PAGE - 42)) | (1 << (ZmeiLangParser.KW_LINK_SUFFIX - 42)) | (1 << (ZmeiLangParser.KW_URL_PREFIX - 42)) | (1 << (ZmeiLangParser.KW_CAN_EDIT - 42)) | (1 << (ZmeiLangParser.KW_OBJECT_EXPR - 42)) | (1 << (ZmeiLangParser.KW_BLOCK - 42)) | (1 << (ZmeiLangParser.KW_ITEM_NAME - 42)) | (1 << (ZmeiLangParser.KW_PK_PARAM - 42)) | (1 << (ZmeiLangParser.KW_LIST_FIELDS - 42)) | (1 << (ZmeiLangParser.KW_DELETE - 42)) | (1 << (ZmeiLangParser.KW_EDIT - 42)) | (1 << (ZmeiLangParser.KW_CREATE - 42)) | (1 << (ZmeiLangParser.KW_DETAIL - 42)) | (1 << (ZmeiLangParser.KW_SKIP - 42)) | (1 << (ZmeiLangParser.KW_FROM - 42)) | (1 << (ZmeiLangParser.KW_POLY_LIST - 42)) | (1 << (ZmeiLangParser.KW_CSS - 42)) | (1 << (ZmeiLangParser.KW_JS - 42)) | (1 << (ZmeiLangParser.KW_INLINE_TYPE_TABULAR - 42)) | (1 << (ZmeiLangParser.KW_INLINE_TYPE_STACKED - 42)) | (1 << (ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC - 42)) | (1 << (ZmeiLangParser.KW_INLINE - 42)) | (1 << (ZmeiLangParser.KW_TYPE - 42)) | (1 << (ZmeiLangParser.KW_USER_FIELD - 42)) | (1 << (ZmeiLangParser.KW_ANNOTATE - 42)) | (1 << (ZmeiLangParser.KW_ON_CREATE - 42)) | (1 << (ZmeiLangParser.KW_QUERY - 42)) | (1 << (ZmeiLangParser.KW_AUTH - 42)) | (1 << (ZmeiLangParser.KW_COUNT - 42)) | (1 << (ZmeiLangParser.KW_I18N - 42)))) != 0) or ((((_la - 106)) & ~0x3f) == 0 and ((1 << (_la - 106)) & ((1 << (ZmeiLangParser.KW_EXTRA - 106)) | (1 << (ZmeiLangParser.KW_TABS - 106)) | (1 << (ZmeiLangParser.KW_LIST - 106)) | (1 << (ZmeiLangParser.KW_READ_ONLY - 106)) | (1 << (ZmeiLangParser.KW_LIST_EDITABLE - 106)) | (1 << (ZmeiLangParser.KW_LIST_FILTER - 106)) | (1 << (ZmeiLangParser.KW_LIST_SEARCH - 106)) | (1 << (ZmeiLangParser.KW_FIELDS - 106)) | (1 << (ZmeiLangParser.KW_IMPORT - 106)) | (1 << (ZmeiLangParser.KW_AS - 106)) | (1 << (ZmeiLangParser.WRITE_MODE - 106)) | (1 << (ZmeiLangParser.BOOL - 106)) | (1 << (ZmeiLangParser.NL - 106)) | (1 << (ZmeiLangParser.ID - 106)) | (1 << (ZmeiLangParser.HASH - 106)))) != 0)): break self.state = 2065 @@ -15894,7 +15894,7 @@ def an_stream_target_model(self): self.state = 2080 self.model_ref() pass - elif token in [ZmeiLangParser.KW_AUTH_TYPE_BASIC, ZmeiLangParser.KW_AUTH_TYPE_SESSION, ZmeiLangParser.KW_AUTH_TYPE_TOKEN, ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT, ZmeiLangParser.COL_FIELD_TYPE_HTML, ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA, ZmeiLangParser.COL_FIELD_TYPE_FLOAT, ZmeiLangParser.COL_FIELD_TYPE_DECIMAL, ZmeiLangParser.COL_FIELD_TYPE_DATE, ZmeiLangParser.COL_FIELD_TYPE_DATETIME, ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_TEXT, ZmeiLangParser.COL_FIELD_TYPE_INT, ZmeiLangParser.COL_FIELD_TYPE_SLUG, ZmeiLangParser.COL_FIELD_TYPE_BOOL, ZmeiLangParser.COL_FIELD_TYPE_ONE, ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE, ZmeiLangParser.COL_FIELD_TYPE_MANY, ZmeiLangParser.COL_FIELD_CHOICES, ZmeiLangParser.KW_THEME, ZmeiLangParser.KW_INSTALL, ZmeiLangParser.KW_HEADER, ZmeiLangParser.KW_SERVICES, ZmeiLangParser.KW_SELENIUM_PYTEST, ZmeiLangParser.KW_CHILD, ZmeiLangParser.KW_FILTER_OUT, ZmeiLangParser.KW_FILTER_IN, ZmeiLangParser.KW_PAGE, ZmeiLangParser.KW_LINK_SUFFIX, ZmeiLangParser.KW_URL_PREFIX, ZmeiLangParser.KW_CAN_EDIT, ZmeiLangParser.KW_OBJECT_EXPR, ZmeiLangParser.KW_BLOCK, ZmeiLangParser.KW_ITEM_NAME, ZmeiLangParser.KW_PK_PARAM, ZmeiLangParser.KW_LIST_FIELDS, ZmeiLangParser.KW_DELETE, ZmeiLangParser.KW_EDIT, ZmeiLangParser.KW_CREATE, ZmeiLangParser.KW_DETAIL, ZmeiLangParser.KW_SKIP, ZmeiLangParser.KW_FROM, ZmeiLangParser.KW_POLY_LIST, ZmeiLangParser.KW_CSS, ZmeiLangParser.KW_JS, ZmeiLangParser.KW_INLINE_TYPE_TABULAR, ZmeiLangParser.KW_INLINE_TYPE_STACKED, ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC, ZmeiLangParser.KW_INLINE, ZmeiLangParser.KW_TYPE, ZmeiLangParser.KW_USER_FIELD, ZmeiLangParser.KW_ANNOTATE, ZmeiLangParser.KW_ON_CREATE, ZmeiLangParser.KW_QUERY, ZmeiLangParser.KW_AUTH, ZmeiLangParser.KW_COUNT, ZmeiLangParser.KW_I18N, ZmeiLangParser.KW_EXTENSION, ZmeiLangParser.KW_TABS, ZmeiLangParser.KW_LIST, ZmeiLangParser.KW_READ_ONLY, ZmeiLangParser.KW_LIST_EDITABLE, ZmeiLangParser.KW_LIST_FILTER, ZmeiLangParser.KW_LIST_SEARCH, ZmeiLangParser.KW_FIELDS, ZmeiLangParser.KW_IMPORT, ZmeiLangParser.KW_AS, ZmeiLangParser.WRITE_MODE, ZmeiLangParser.BOOL, ZmeiLangParser.ID]: + elif token in [ZmeiLangParser.KW_AUTH_TYPE_BASIC, ZmeiLangParser.KW_AUTH_TYPE_SESSION, ZmeiLangParser.KW_AUTH_TYPE_TOKEN, ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT, ZmeiLangParser.COL_FIELD_TYPE_HTML, ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA, ZmeiLangParser.COL_FIELD_TYPE_FLOAT, ZmeiLangParser.COL_FIELD_TYPE_DECIMAL, ZmeiLangParser.COL_FIELD_TYPE_DATE, ZmeiLangParser.COL_FIELD_TYPE_DATETIME, ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_TEXT, ZmeiLangParser.COL_FIELD_TYPE_INT, ZmeiLangParser.COL_FIELD_TYPE_SLUG, ZmeiLangParser.COL_FIELD_TYPE_BOOL, ZmeiLangParser.COL_FIELD_TYPE_ONE, ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE, ZmeiLangParser.COL_FIELD_TYPE_MANY, ZmeiLangParser.COL_FIELD_CHOICES, ZmeiLangParser.KW_THEME, ZmeiLangParser.KW_INSTALL, ZmeiLangParser.KW_HEADER, ZmeiLangParser.KW_SERVICES, ZmeiLangParser.KW_SELENIUM_PYTEST, ZmeiLangParser.KW_CHILD, ZmeiLangParser.KW_FILTER_OUT, ZmeiLangParser.KW_FILTER_IN, ZmeiLangParser.KW_PAGE, ZmeiLangParser.KW_LINK_SUFFIX, ZmeiLangParser.KW_URL_PREFIX, ZmeiLangParser.KW_CAN_EDIT, ZmeiLangParser.KW_OBJECT_EXPR, ZmeiLangParser.KW_BLOCK, ZmeiLangParser.KW_ITEM_NAME, ZmeiLangParser.KW_PK_PARAM, ZmeiLangParser.KW_LIST_FIELDS, ZmeiLangParser.KW_DELETE, ZmeiLangParser.KW_EDIT, ZmeiLangParser.KW_CREATE, ZmeiLangParser.KW_DETAIL, ZmeiLangParser.KW_SKIP, ZmeiLangParser.KW_FROM, ZmeiLangParser.KW_POLY_LIST, ZmeiLangParser.KW_CSS, ZmeiLangParser.KW_JS, ZmeiLangParser.KW_INLINE_TYPE_TABULAR, ZmeiLangParser.KW_INLINE_TYPE_STACKED, ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC, ZmeiLangParser.KW_INLINE, ZmeiLangParser.KW_TYPE, ZmeiLangParser.KW_USER_FIELD, ZmeiLangParser.KW_ANNOTATE, ZmeiLangParser.KW_ON_CREATE, ZmeiLangParser.KW_QUERY, ZmeiLangParser.KW_AUTH, ZmeiLangParser.KW_COUNT, ZmeiLangParser.KW_I18N, ZmeiLangParser.KW_EXTRA, ZmeiLangParser.KW_TABS, ZmeiLangParser.KW_LIST, ZmeiLangParser.KW_READ_ONLY, ZmeiLangParser.KW_LIST_EDITABLE, ZmeiLangParser.KW_LIST_FILTER, ZmeiLangParser.KW_LIST_SEARCH, ZmeiLangParser.KW_FIELDS, ZmeiLangParser.KW_IMPORT, ZmeiLangParser.KW_AS, ZmeiLangParser.WRITE_MODE, ZmeiLangParser.BOOL, ZmeiLangParser.ID]: self.enterOuterAlt(localctx, 2) self.state = 2081 self.classname() @@ -16011,7 +16011,7 @@ def an_stream_field_list(self): self.state = 2088 self.match(ZmeiLangParser.STAR) pass - elif token in [ZmeiLangParser.KW_AUTH_TYPE_BASIC, ZmeiLangParser.KW_AUTH_TYPE_SESSION, ZmeiLangParser.KW_AUTH_TYPE_TOKEN, ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT, ZmeiLangParser.COL_FIELD_TYPE_HTML, ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA, ZmeiLangParser.COL_FIELD_TYPE_FLOAT, ZmeiLangParser.COL_FIELD_TYPE_DECIMAL, ZmeiLangParser.COL_FIELD_TYPE_DATE, ZmeiLangParser.COL_FIELD_TYPE_DATETIME, ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_TEXT, ZmeiLangParser.COL_FIELD_TYPE_INT, ZmeiLangParser.COL_FIELD_TYPE_SLUG, ZmeiLangParser.COL_FIELD_TYPE_BOOL, ZmeiLangParser.COL_FIELD_TYPE_ONE, ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE, ZmeiLangParser.COL_FIELD_TYPE_MANY, ZmeiLangParser.COL_FIELD_CHOICES, ZmeiLangParser.KW_THEME, ZmeiLangParser.KW_INSTALL, ZmeiLangParser.KW_HEADER, ZmeiLangParser.KW_SERVICES, ZmeiLangParser.KW_SELENIUM_PYTEST, ZmeiLangParser.KW_CHILD, ZmeiLangParser.KW_FILTER_OUT, ZmeiLangParser.KW_FILTER_IN, ZmeiLangParser.KW_PAGE, ZmeiLangParser.KW_LINK_SUFFIX, ZmeiLangParser.KW_URL_PREFIX, ZmeiLangParser.KW_CAN_EDIT, ZmeiLangParser.KW_OBJECT_EXPR, ZmeiLangParser.KW_BLOCK, ZmeiLangParser.KW_ITEM_NAME, ZmeiLangParser.KW_PK_PARAM, ZmeiLangParser.KW_LIST_FIELDS, ZmeiLangParser.KW_DELETE, ZmeiLangParser.KW_EDIT, ZmeiLangParser.KW_CREATE, ZmeiLangParser.KW_DETAIL, ZmeiLangParser.KW_SKIP, ZmeiLangParser.KW_FROM, ZmeiLangParser.KW_POLY_LIST, ZmeiLangParser.KW_CSS, ZmeiLangParser.KW_JS, ZmeiLangParser.KW_INLINE_TYPE_TABULAR, ZmeiLangParser.KW_INLINE_TYPE_STACKED, ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC, ZmeiLangParser.KW_INLINE, ZmeiLangParser.KW_TYPE, ZmeiLangParser.KW_USER_FIELD, ZmeiLangParser.KW_ANNOTATE, ZmeiLangParser.KW_ON_CREATE, ZmeiLangParser.KW_QUERY, ZmeiLangParser.KW_AUTH, ZmeiLangParser.KW_COUNT, ZmeiLangParser.KW_I18N, ZmeiLangParser.KW_EXTENSION, ZmeiLangParser.KW_TABS, ZmeiLangParser.KW_LIST, ZmeiLangParser.KW_READ_ONLY, ZmeiLangParser.KW_LIST_EDITABLE, ZmeiLangParser.KW_LIST_FILTER, ZmeiLangParser.KW_LIST_SEARCH, ZmeiLangParser.KW_FIELDS, ZmeiLangParser.KW_IMPORT, ZmeiLangParser.KW_AS, ZmeiLangParser.WRITE_MODE, ZmeiLangParser.BOOL, ZmeiLangParser.ID]: + elif token in [ZmeiLangParser.KW_AUTH_TYPE_BASIC, ZmeiLangParser.KW_AUTH_TYPE_SESSION, ZmeiLangParser.KW_AUTH_TYPE_TOKEN, ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT, ZmeiLangParser.COL_FIELD_TYPE_HTML, ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA, ZmeiLangParser.COL_FIELD_TYPE_FLOAT, ZmeiLangParser.COL_FIELD_TYPE_DECIMAL, ZmeiLangParser.COL_FIELD_TYPE_DATE, ZmeiLangParser.COL_FIELD_TYPE_DATETIME, ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_TEXT, ZmeiLangParser.COL_FIELD_TYPE_INT, ZmeiLangParser.COL_FIELD_TYPE_SLUG, ZmeiLangParser.COL_FIELD_TYPE_BOOL, ZmeiLangParser.COL_FIELD_TYPE_ONE, ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE, ZmeiLangParser.COL_FIELD_TYPE_MANY, ZmeiLangParser.COL_FIELD_CHOICES, ZmeiLangParser.KW_THEME, ZmeiLangParser.KW_INSTALL, ZmeiLangParser.KW_HEADER, ZmeiLangParser.KW_SERVICES, ZmeiLangParser.KW_SELENIUM_PYTEST, ZmeiLangParser.KW_CHILD, ZmeiLangParser.KW_FILTER_OUT, ZmeiLangParser.KW_FILTER_IN, ZmeiLangParser.KW_PAGE, ZmeiLangParser.KW_LINK_SUFFIX, ZmeiLangParser.KW_URL_PREFIX, ZmeiLangParser.KW_CAN_EDIT, ZmeiLangParser.KW_OBJECT_EXPR, ZmeiLangParser.KW_BLOCK, ZmeiLangParser.KW_ITEM_NAME, ZmeiLangParser.KW_PK_PARAM, ZmeiLangParser.KW_LIST_FIELDS, ZmeiLangParser.KW_DELETE, ZmeiLangParser.KW_EDIT, ZmeiLangParser.KW_CREATE, ZmeiLangParser.KW_DETAIL, ZmeiLangParser.KW_SKIP, ZmeiLangParser.KW_FROM, ZmeiLangParser.KW_POLY_LIST, ZmeiLangParser.KW_CSS, ZmeiLangParser.KW_JS, ZmeiLangParser.KW_INLINE_TYPE_TABULAR, ZmeiLangParser.KW_INLINE_TYPE_STACKED, ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC, ZmeiLangParser.KW_INLINE, ZmeiLangParser.KW_TYPE, ZmeiLangParser.KW_USER_FIELD, ZmeiLangParser.KW_ANNOTATE, ZmeiLangParser.KW_ON_CREATE, ZmeiLangParser.KW_QUERY, ZmeiLangParser.KW_AUTH, ZmeiLangParser.KW_COUNT, ZmeiLangParser.KW_I18N, ZmeiLangParser.KW_EXTRA, ZmeiLangParser.KW_TABS, ZmeiLangParser.KW_LIST, ZmeiLangParser.KW_READ_ONLY, ZmeiLangParser.KW_LIST_EDITABLE, ZmeiLangParser.KW_LIST_FILTER, ZmeiLangParser.KW_LIST_SEARCH, ZmeiLangParser.KW_FIELDS, ZmeiLangParser.KW_IMPORT, ZmeiLangParser.KW_AS, ZmeiLangParser.WRITE_MODE, ZmeiLangParser.BOOL, ZmeiLangParser.ID]: self.state = 2089 self.an_stream_field_name() self.state = 2094 @@ -17388,7 +17388,7 @@ def an_crud_target_model(self): self.state = 2264 self.model_ref() pass - elif token in [ZmeiLangParser.KW_AUTH_TYPE_BASIC, ZmeiLangParser.KW_AUTH_TYPE_SESSION, ZmeiLangParser.KW_AUTH_TYPE_TOKEN, ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT, ZmeiLangParser.COL_FIELD_TYPE_HTML, ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA, ZmeiLangParser.COL_FIELD_TYPE_FLOAT, ZmeiLangParser.COL_FIELD_TYPE_DECIMAL, ZmeiLangParser.COL_FIELD_TYPE_DATE, ZmeiLangParser.COL_FIELD_TYPE_DATETIME, ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_TEXT, ZmeiLangParser.COL_FIELD_TYPE_INT, ZmeiLangParser.COL_FIELD_TYPE_SLUG, ZmeiLangParser.COL_FIELD_TYPE_BOOL, ZmeiLangParser.COL_FIELD_TYPE_ONE, ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE, ZmeiLangParser.COL_FIELD_TYPE_MANY, ZmeiLangParser.COL_FIELD_CHOICES, ZmeiLangParser.KW_THEME, ZmeiLangParser.KW_INSTALL, ZmeiLangParser.KW_HEADER, ZmeiLangParser.KW_SERVICES, ZmeiLangParser.KW_SELENIUM_PYTEST, ZmeiLangParser.KW_CHILD, ZmeiLangParser.KW_FILTER_OUT, ZmeiLangParser.KW_FILTER_IN, ZmeiLangParser.KW_PAGE, ZmeiLangParser.KW_LINK_SUFFIX, ZmeiLangParser.KW_URL_PREFIX, ZmeiLangParser.KW_CAN_EDIT, ZmeiLangParser.KW_OBJECT_EXPR, ZmeiLangParser.KW_BLOCK, ZmeiLangParser.KW_ITEM_NAME, ZmeiLangParser.KW_PK_PARAM, ZmeiLangParser.KW_LIST_FIELDS, ZmeiLangParser.KW_DELETE, ZmeiLangParser.KW_EDIT, ZmeiLangParser.KW_CREATE, ZmeiLangParser.KW_DETAIL, ZmeiLangParser.KW_SKIP, ZmeiLangParser.KW_FROM, ZmeiLangParser.KW_POLY_LIST, ZmeiLangParser.KW_CSS, ZmeiLangParser.KW_JS, ZmeiLangParser.KW_INLINE_TYPE_TABULAR, ZmeiLangParser.KW_INLINE_TYPE_STACKED, ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC, ZmeiLangParser.KW_INLINE, ZmeiLangParser.KW_TYPE, ZmeiLangParser.KW_USER_FIELD, ZmeiLangParser.KW_ANNOTATE, ZmeiLangParser.KW_ON_CREATE, ZmeiLangParser.KW_QUERY, ZmeiLangParser.KW_AUTH, ZmeiLangParser.KW_COUNT, ZmeiLangParser.KW_I18N, ZmeiLangParser.KW_EXTENSION, ZmeiLangParser.KW_TABS, ZmeiLangParser.KW_LIST, ZmeiLangParser.KW_READ_ONLY, ZmeiLangParser.KW_LIST_EDITABLE, ZmeiLangParser.KW_LIST_FILTER, ZmeiLangParser.KW_LIST_SEARCH, ZmeiLangParser.KW_FIELDS, ZmeiLangParser.KW_IMPORT, ZmeiLangParser.KW_AS, ZmeiLangParser.WRITE_MODE, ZmeiLangParser.BOOL, ZmeiLangParser.ID]: + elif token in [ZmeiLangParser.KW_AUTH_TYPE_BASIC, ZmeiLangParser.KW_AUTH_TYPE_SESSION, ZmeiLangParser.KW_AUTH_TYPE_TOKEN, ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT, ZmeiLangParser.COL_FIELD_TYPE_HTML, ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA, ZmeiLangParser.COL_FIELD_TYPE_FLOAT, ZmeiLangParser.COL_FIELD_TYPE_DECIMAL, ZmeiLangParser.COL_FIELD_TYPE_DATE, ZmeiLangParser.COL_FIELD_TYPE_DATETIME, ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_TEXT, ZmeiLangParser.COL_FIELD_TYPE_INT, ZmeiLangParser.COL_FIELD_TYPE_SLUG, ZmeiLangParser.COL_FIELD_TYPE_BOOL, ZmeiLangParser.COL_FIELD_TYPE_ONE, ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE, ZmeiLangParser.COL_FIELD_TYPE_MANY, ZmeiLangParser.COL_FIELD_CHOICES, ZmeiLangParser.KW_THEME, ZmeiLangParser.KW_INSTALL, ZmeiLangParser.KW_HEADER, ZmeiLangParser.KW_SERVICES, ZmeiLangParser.KW_SELENIUM_PYTEST, ZmeiLangParser.KW_CHILD, ZmeiLangParser.KW_FILTER_OUT, ZmeiLangParser.KW_FILTER_IN, ZmeiLangParser.KW_PAGE, ZmeiLangParser.KW_LINK_SUFFIX, ZmeiLangParser.KW_URL_PREFIX, ZmeiLangParser.KW_CAN_EDIT, ZmeiLangParser.KW_OBJECT_EXPR, ZmeiLangParser.KW_BLOCK, ZmeiLangParser.KW_ITEM_NAME, ZmeiLangParser.KW_PK_PARAM, ZmeiLangParser.KW_LIST_FIELDS, ZmeiLangParser.KW_DELETE, ZmeiLangParser.KW_EDIT, ZmeiLangParser.KW_CREATE, ZmeiLangParser.KW_DETAIL, ZmeiLangParser.KW_SKIP, ZmeiLangParser.KW_FROM, ZmeiLangParser.KW_POLY_LIST, ZmeiLangParser.KW_CSS, ZmeiLangParser.KW_JS, ZmeiLangParser.KW_INLINE_TYPE_TABULAR, ZmeiLangParser.KW_INLINE_TYPE_STACKED, ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC, ZmeiLangParser.KW_INLINE, ZmeiLangParser.KW_TYPE, ZmeiLangParser.KW_USER_FIELD, ZmeiLangParser.KW_ANNOTATE, ZmeiLangParser.KW_ON_CREATE, ZmeiLangParser.KW_QUERY, ZmeiLangParser.KW_AUTH, ZmeiLangParser.KW_COUNT, ZmeiLangParser.KW_I18N, ZmeiLangParser.KW_EXTRA, ZmeiLangParser.KW_TABS, ZmeiLangParser.KW_LIST, ZmeiLangParser.KW_READ_ONLY, ZmeiLangParser.KW_LIST_EDITABLE, ZmeiLangParser.KW_LIST_FILTER, ZmeiLangParser.KW_LIST_SEARCH, ZmeiLangParser.KW_FIELDS, ZmeiLangParser.KW_IMPORT, ZmeiLangParser.KW_AS, ZmeiLangParser.WRITE_MODE, ZmeiLangParser.BOOL, ZmeiLangParser.ID]: self.enterOuterAlt(localctx, 2) self.state = 2265 self.classname() @@ -18562,7 +18562,7 @@ def an_crud_field_spec(self): self.state = 2352 self.match(ZmeiLangParser.STAR) pass - elif token in [ZmeiLangParser.KW_AUTH_TYPE_BASIC, ZmeiLangParser.KW_AUTH_TYPE_SESSION, ZmeiLangParser.KW_AUTH_TYPE_TOKEN, ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT, ZmeiLangParser.COL_FIELD_TYPE_HTML, ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA, ZmeiLangParser.COL_FIELD_TYPE_FLOAT, ZmeiLangParser.COL_FIELD_TYPE_DECIMAL, ZmeiLangParser.COL_FIELD_TYPE_DATE, ZmeiLangParser.COL_FIELD_TYPE_DATETIME, ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_TEXT, ZmeiLangParser.COL_FIELD_TYPE_INT, ZmeiLangParser.COL_FIELD_TYPE_SLUG, ZmeiLangParser.COL_FIELD_TYPE_BOOL, ZmeiLangParser.COL_FIELD_TYPE_ONE, ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE, ZmeiLangParser.COL_FIELD_TYPE_MANY, ZmeiLangParser.COL_FIELD_CHOICES, ZmeiLangParser.KW_THEME, ZmeiLangParser.KW_INSTALL, ZmeiLangParser.KW_HEADER, ZmeiLangParser.KW_SERVICES, ZmeiLangParser.KW_SELENIUM_PYTEST, ZmeiLangParser.KW_CHILD, ZmeiLangParser.KW_FILTER_OUT, ZmeiLangParser.KW_FILTER_IN, ZmeiLangParser.KW_PAGE, ZmeiLangParser.KW_LINK_SUFFIX, ZmeiLangParser.KW_URL_PREFIX, ZmeiLangParser.KW_CAN_EDIT, ZmeiLangParser.KW_OBJECT_EXPR, ZmeiLangParser.KW_BLOCK, ZmeiLangParser.KW_ITEM_NAME, ZmeiLangParser.KW_PK_PARAM, ZmeiLangParser.KW_LIST_FIELDS, ZmeiLangParser.KW_DELETE, ZmeiLangParser.KW_EDIT, ZmeiLangParser.KW_CREATE, ZmeiLangParser.KW_DETAIL, ZmeiLangParser.KW_SKIP, ZmeiLangParser.KW_FROM, ZmeiLangParser.KW_POLY_LIST, ZmeiLangParser.KW_CSS, ZmeiLangParser.KW_JS, ZmeiLangParser.KW_INLINE_TYPE_TABULAR, ZmeiLangParser.KW_INLINE_TYPE_STACKED, ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC, ZmeiLangParser.KW_INLINE, ZmeiLangParser.KW_TYPE, ZmeiLangParser.KW_USER_FIELD, ZmeiLangParser.KW_ANNOTATE, ZmeiLangParser.KW_ON_CREATE, ZmeiLangParser.KW_QUERY, ZmeiLangParser.KW_AUTH, ZmeiLangParser.KW_COUNT, ZmeiLangParser.KW_I18N, ZmeiLangParser.KW_EXTENSION, ZmeiLangParser.KW_TABS, ZmeiLangParser.KW_LIST, ZmeiLangParser.KW_READ_ONLY, ZmeiLangParser.KW_LIST_EDITABLE, ZmeiLangParser.KW_LIST_FILTER, ZmeiLangParser.KW_LIST_SEARCH, ZmeiLangParser.KW_FIELDS, ZmeiLangParser.KW_IMPORT, ZmeiLangParser.KW_AS, ZmeiLangParser.WRITE_MODE, ZmeiLangParser.BOOL, ZmeiLangParser.ID, ZmeiLangParser.EXCLUDE]: + elif token in [ZmeiLangParser.KW_AUTH_TYPE_BASIC, ZmeiLangParser.KW_AUTH_TYPE_SESSION, ZmeiLangParser.KW_AUTH_TYPE_TOKEN, ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT, ZmeiLangParser.COL_FIELD_TYPE_HTML, ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA, ZmeiLangParser.COL_FIELD_TYPE_FLOAT, ZmeiLangParser.COL_FIELD_TYPE_DECIMAL, ZmeiLangParser.COL_FIELD_TYPE_DATE, ZmeiLangParser.COL_FIELD_TYPE_DATETIME, ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_TEXT, ZmeiLangParser.COL_FIELD_TYPE_INT, ZmeiLangParser.COL_FIELD_TYPE_SLUG, ZmeiLangParser.COL_FIELD_TYPE_BOOL, ZmeiLangParser.COL_FIELD_TYPE_ONE, ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE, ZmeiLangParser.COL_FIELD_TYPE_MANY, ZmeiLangParser.COL_FIELD_CHOICES, ZmeiLangParser.KW_THEME, ZmeiLangParser.KW_INSTALL, ZmeiLangParser.KW_HEADER, ZmeiLangParser.KW_SERVICES, ZmeiLangParser.KW_SELENIUM_PYTEST, ZmeiLangParser.KW_CHILD, ZmeiLangParser.KW_FILTER_OUT, ZmeiLangParser.KW_FILTER_IN, ZmeiLangParser.KW_PAGE, ZmeiLangParser.KW_LINK_SUFFIX, ZmeiLangParser.KW_URL_PREFIX, ZmeiLangParser.KW_CAN_EDIT, ZmeiLangParser.KW_OBJECT_EXPR, ZmeiLangParser.KW_BLOCK, ZmeiLangParser.KW_ITEM_NAME, ZmeiLangParser.KW_PK_PARAM, ZmeiLangParser.KW_LIST_FIELDS, ZmeiLangParser.KW_DELETE, ZmeiLangParser.KW_EDIT, ZmeiLangParser.KW_CREATE, ZmeiLangParser.KW_DETAIL, ZmeiLangParser.KW_SKIP, ZmeiLangParser.KW_FROM, ZmeiLangParser.KW_POLY_LIST, ZmeiLangParser.KW_CSS, ZmeiLangParser.KW_JS, ZmeiLangParser.KW_INLINE_TYPE_TABULAR, ZmeiLangParser.KW_INLINE_TYPE_STACKED, ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC, ZmeiLangParser.KW_INLINE, ZmeiLangParser.KW_TYPE, ZmeiLangParser.KW_USER_FIELD, ZmeiLangParser.KW_ANNOTATE, ZmeiLangParser.KW_ON_CREATE, ZmeiLangParser.KW_QUERY, ZmeiLangParser.KW_AUTH, ZmeiLangParser.KW_COUNT, ZmeiLangParser.KW_I18N, ZmeiLangParser.KW_EXTRA, ZmeiLangParser.KW_TABS, ZmeiLangParser.KW_LIST, ZmeiLangParser.KW_READ_ONLY, ZmeiLangParser.KW_LIST_EDITABLE, ZmeiLangParser.KW_LIST_FILTER, ZmeiLangParser.KW_LIST_SEARCH, ZmeiLangParser.KW_FIELDS, ZmeiLangParser.KW_IMPORT, ZmeiLangParser.KW_AS, ZmeiLangParser.WRITE_MODE, ZmeiLangParser.BOOL, ZmeiLangParser.ID, ZmeiLangParser.EXCLUDE]: self.enterOuterAlt(localctx, 2) self.state = 2354 self._errHandler.sync(self) @@ -18827,7 +18827,7 @@ def an_crud_list_field_spec(self): self.state = 2375 self.match(ZmeiLangParser.STAR) pass - elif token in [ZmeiLangParser.KW_AUTH_TYPE_BASIC, ZmeiLangParser.KW_AUTH_TYPE_SESSION, ZmeiLangParser.KW_AUTH_TYPE_TOKEN, ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT, ZmeiLangParser.COL_FIELD_TYPE_HTML, ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA, ZmeiLangParser.COL_FIELD_TYPE_FLOAT, ZmeiLangParser.COL_FIELD_TYPE_DECIMAL, ZmeiLangParser.COL_FIELD_TYPE_DATE, ZmeiLangParser.COL_FIELD_TYPE_DATETIME, ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_TEXT, ZmeiLangParser.COL_FIELD_TYPE_INT, ZmeiLangParser.COL_FIELD_TYPE_SLUG, ZmeiLangParser.COL_FIELD_TYPE_BOOL, ZmeiLangParser.COL_FIELD_TYPE_ONE, ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE, ZmeiLangParser.COL_FIELD_TYPE_MANY, ZmeiLangParser.COL_FIELD_CHOICES, ZmeiLangParser.KW_THEME, ZmeiLangParser.KW_INSTALL, ZmeiLangParser.KW_HEADER, ZmeiLangParser.KW_SERVICES, ZmeiLangParser.KW_SELENIUM_PYTEST, ZmeiLangParser.KW_CHILD, ZmeiLangParser.KW_FILTER_OUT, ZmeiLangParser.KW_FILTER_IN, ZmeiLangParser.KW_PAGE, ZmeiLangParser.KW_LINK_SUFFIX, ZmeiLangParser.KW_URL_PREFIX, ZmeiLangParser.KW_CAN_EDIT, ZmeiLangParser.KW_OBJECT_EXPR, ZmeiLangParser.KW_BLOCK, ZmeiLangParser.KW_ITEM_NAME, ZmeiLangParser.KW_PK_PARAM, ZmeiLangParser.KW_LIST_FIELDS, ZmeiLangParser.KW_DELETE, ZmeiLangParser.KW_EDIT, ZmeiLangParser.KW_CREATE, ZmeiLangParser.KW_DETAIL, ZmeiLangParser.KW_SKIP, ZmeiLangParser.KW_FROM, ZmeiLangParser.KW_POLY_LIST, ZmeiLangParser.KW_CSS, ZmeiLangParser.KW_JS, ZmeiLangParser.KW_INLINE_TYPE_TABULAR, ZmeiLangParser.KW_INLINE_TYPE_STACKED, ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC, ZmeiLangParser.KW_INLINE, ZmeiLangParser.KW_TYPE, ZmeiLangParser.KW_USER_FIELD, ZmeiLangParser.KW_ANNOTATE, ZmeiLangParser.KW_ON_CREATE, ZmeiLangParser.KW_QUERY, ZmeiLangParser.KW_AUTH, ZmeiLangParser.KW_COUNT, ZmeiLangParser.KW_I18N, ZmeiLangParser.KW_EXTENSION, ZmeiLangParser.KW_TABS, ZmeiLangParser.KW_LIST, ZmeiLangParser.KW_READ_ONLY, ZmeiLangParser.KW_LIST_EDITABLE, ZmeiLangParser.KW_LIST_FILTER, ZmeiLangParser.KW_LIST_SEARCH, ZmeiLangParser.KW_FIELDS, ZmeiLangParser.KW_IMPORT, ZmeiLangParser.KW_AS, ZmeiLangParser.WRITE_MODE, ZmeiLangParser.BOOL, ZmeiLangParser.ID, ZmeiLangParser.EXCLUDE]: + elif token in [ZmeiLangParser.KW_AUTH_TYPE_BASIC, ZmeiLangParser.KW_AUTH_TYPE_SESSION, ZmeiLangParser.KW_AUTH_TYPE_TOKEN, ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT, ZmeiLangParser.COL_FIELD_TYPE_HTML, ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA, ZmeiLangParser.COL_FIELD_TYPE_FLOAT, ZmeiLangParser.COL_FIELD_TYPE_DECIMAL, ZmeiLangParser.COL_FIELD_TYPE_DATE, ZmeiLangParser.COL_FIELD_TYPE_DATETIME, ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_TEXT, ZmeiLangParser.COL_FIELD_TYPE_INT, ZmeiLangParser.COL_FIELD_TYPE_SLUG, ZmeiLangParser.COL_FIELD_TYPE_BOOL, ZmeiLangParser.COL_FIELD_TYPE_ONE, ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE, ZmeiLangParser.COL_FIELD_TYPE_MANY, ZmeiLangParser.COL_FIELD_CHOICES, ZmeiLangParser.KW_THEME, ZmeiLangParser.KW_INSTALL, ZmeiLangParser.KW_HEADER, ZmeiLangParser.KW_SERVICES, ZmeiLangParser.KW_SELENIUM_PYTEST, ZmeiLangParser.KW_CHILD, ZmeiLangParser.KW_FILTER_OUT, ZmeiLangParser.KW_FILTER_IN, ZmeiLangParser.KW_PAGE, ZmeiLangParser.KW_LINK_SUFFIX, ZmeiLangParser.KW_URL_PREFIX, ZmeiLangParser.KW_CAN_EDIT, ZmeiLangParser.KW_OBJECT_EXPR, ZmeiLangParser.KW_BLOCK, ZmeiLangParser.KW_ITEM_NAME, ZmeiLangParser.KW_PK_PARAM, ZmeiLangParser.KW_LIST_FIELDS, ZmeiLangParser.KW_DELETE, ZmeiLangParser.KW_EDIT, ZmeiLangParser.KW_CREATE, ZmeiLangParser.KW_DETAIL, ZmeiLangParser.KW_SKIP, ZmeiLangParser.KW_FROM, ZmeiLangParser.KW_POLY_LIST, ZmeiLangParser.KW_CSS, ZmeiLangParser.KW_JS, ZmeiLangParser.KW_INLINE_TYPE_TABULAR, ZmeiLangParser.KW_INLINE_TYPE_STACKED, ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC, ZmeiLangParser.KW_INLINE, ZmeiLangParser.KW_TYPE, ZmeiLangParser.KW_USER_FIELD, ZmeiLangParser.KW_ANNOTATE, ZmeiLangParser.KW_ON_CREATE, ZmeiLangParser.KW_QUERY, ZmeiLangParser.KW_AUTH, ZmeiLangParser.KW_COUNT, ZmeiLangParser.KW_I18N, ZmeiLangParser.KW_EXTRA, ZmeiLangParser.KW_TABS, ZmeiLangParser.KW_LIST, ZmeiLangParser.KW_READ_ONLY, ZmeiLangParser.KW_LIST_EDITABLE, ZmeiLangParser.KW_LIST_FILTER, ZmeiLangParser.KW_LIST_SEARCH, ZmeiLangParser.KW_FIELDS, ZmeiLangParser.KW_IMPORT, ZmeiLangParser.KW_AS, ZmeiLangParser.WRITE_MODE, ZmeiLangParser.BOOL, ZmeiLangParser.ID, ZmeiLangParser.EXCLUDE]: self.enterOuterAlt(localctx, 2) self.state = 2377 self._errHandler.sync(self) @@ -19678,7 +19678,7 @@ def an_menu_item_arg_val(self): self.state = 2472 self.match(ZmeiLangParser.STRING_SQ) pass - elif token in [ZmeiLangParser.KW_AUTH_TYPE_BASIC, ZmeiLangParser.KW_AUTH_TYPE_SESSION, ZmeiLangParser.KW_AUTH_TYPE_TOKEN, ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT, ZmeiLangParser.COL_FIELD_TYPE_HTML, ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA, ZmeiLangParser.COL_FIELD_TYPE_FLOAT, ZmeiLangParser.COL_FIELD_TYPE_DECIMAL, ZmeiLangParser.COL_FIELD_TYPE_DATE, ZmeiLangParser.COL_FIELD_TYPE_DATETIME, ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_TEXT, ZmeiLangParser.COL_FIELD_TYPE_INT, ZmeiLangParser.COL_FIELD_TYPE_SLUG, ZmeiLangParser.COL_FIELD_TYPE_BOOL, ZmeiLangParser.COL_FIELD_TYPE_ONE, ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE, ZmeiLangParser.COL_FIELD_TYPE_MANY, ZmeiLangParser.COL_FIELD_CHOICES, ZmeiLangParser.KW_THEME, ZmeiLangParser.KW_INSTALL, ZmeiLangParser.KW_HEADER, ZmeiLangParser.KW_SERVICES, ZmeiLangParser.KW_SELENIUM_PYTEST, ZmeiLangParser.KW_CHILD, ZmeiLangParser.KW_FILTER_OUT, ZmeiLangParser.KW_FILTER_IN, ZmeiLangParser.KW_PAGE, ZmeiLangParser.KW_LINK_SUFFIX, ZmeiLangParser.KW_URL_PREFIX, ZmeiLangParser.KW_CAN_EDIT, ZmeiLangParser.KW_OBJECT_EXPR, ZmeiLangParser.KW_BLOCK, ZmeiLangParser.KW_ITEM_NAME, ZmeiLangParser.KW_PK_PARAM, ZmeiLangParser.KW_LIST_FIELDS, ZmeiLangParser.KW_DELETE, ZmeiLangParser.KW_EDIT, ZmeiLangParser.KW_CREATE, ZmeiLangParser.KW_DETAIL, ZmeiLangParser.KW_SKIP, ZmeiLangParser.KW_FROM, ZmeiLangParser.KW_POLY_LIST, ZmeiLangParser.KW_CSS, ZmeiLangParser.KW_JS, ZmeiLangParser.KW_INLINE_TYPE_TABULAR, ZmeiLangParser.KW_INLINE_TYPE_STACKED, ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC, ZmeiLangParser.KW_INLINE, ZmeiLangParser.KW_TYPE, ZmeiLangParser.KW_USER_FIELD, ZmeiLangParser.KW_ANNOTATE, ZmeiLangParser.KW_ON_CREATE, ZmeiLangParser.KW_QUERY, ZmeiLangParser.KW_AUTH, ZmeiLangParser.KW_COUNT, ZmeiLangParser.KW_I18N, ZmeiLangParser.KW_EXTENSION, ZmeiLangParser.KW_TABS, ZmeiLangParser.KW_LIST, ZmeiLangParser.KW_READ_ONLY, ZmeiLangParser.KW_LIST_EDITABLE, ZmeiLangParser.KW_LIST_FILTER, ZmeiLangParser.KW_LIST_SEARCH, ZmeiLangParser.KW_FIELDS, ZmeiLangParser.KW_IMPORT, ZmeiLangParser.KW_AS, ZmeiLangParser.WRITE_MODE, ZmeiLangParser.BOOL, ZmeiLangParser.ID]: + elif token in [ZmeiLangParser.KW_AUTH_TYPE_BASIC, ZmeiLangParser.KW_AUTH_TYPE_SESSION, ZmeiLangParser.KW_AUTH_TYPE_TOKEN, ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT, ZmeiLangParser.COL_FIELD_TYPE_HTML, ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA, ZmeiLangParser.COL_FIELD_TYPE_FLOAT, ZmeiLangParser.COL_FIELD_TYPE_DECIMAL, ZmeiLangParser.COL_FIELD_TYPE_DATE, ZmeiLangParser.COL_FIELD_TYPE_DATETIME, ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_TEXT, ZmeiLangParser.COL_FIELD_TYPE_INT, ZmeiLangParser.COL_FIELD_TYPE_SLUG, ZmeiLangParser.COL_FIELD_TYPE_BOOL, ZmeiLangParser.COL_FIELD_TYPE_ONE, ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE, ZmeiLangParser.COL_FIELD_TYPE_MANY, ZmeiLangParser.COL_FIELD_CHOICES, ZmeiLangParser.KW_THEME, ZmeiLangParser.KW_INSTALL, ZmeiLangParser.KW_HEADER, ZmeiLangParser.KW_SERVICES, ZmeiLangParser.KW_SELENIUM_PYTEST, ZmeiLangParser.KW_CHILD, ZmeiLangParser.KW_FILTER_OUT, ZmeiLangParser.KW_FILTER_IN, ZmeiLangParser.KW_PAGE, ZmeiLangParser.KW_LINK_SUFFIX, ZmeiLangParser.KW_URL_PREFIX, ZmeiLangParser.KW_CAN_EDIT, ZmeiLangParser.KW_OBJECT_EXPR, ZmeiLangParser.KW_BLOCK, ZmeiLangParser.KW_ITEM_NAME, ZmeiLangParser.KW_PK_PARAM, ZmeiLangParser.KW_LIST_FIELDS, ZmeiLangParser.KW_DELETE, ZmeiLangParser.KW_EDIT, ZmeiLangParser.KW_CREATE, ZmeiLangParser.KW_DETAIL, ZmeiLangParser.KW_SKIP, ZmeiLangParser.KW_FROM, ZmeiLangParser.KW_POLY_LIST, ZmeiLangParser.KW_CSS, ZmeiLangParser.KW_JS, ZmeiLangParser.KW_INLINE_TYPE_TABULAR, ZmeiLangParser.KW_INLINE_TYPE_STACKED, ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC, ZmeiLangParser.KW_INLINE, ZmeiLangParser.KW_TYPE, ZmeiLangParser.KW_USER_FIELD, ZmeiLangParser.KW_ANNOTATE, ZmeiLangParser.KW_ON_CREATE, ZmeiLangParser.KW_QUERY, ZmeiLangParser.KW_AUTH, ZmeiLangParser.KW_COUNT, ZmeiLangParser.KW_I18N, ZmeiLangParser.KW_EXTRA, ZmeiLangParser.KW_TABS, ZmeiLangParser.KW_LIST, ZmeiLangParser.KW_READ_ONLY, ZmeiLangParser.KW_LIST_EDITABLE, ZmeiLangParser.KW_LIST_FILTER, ZmeiLangParser.KW_LIST_SEARCH, ZmeiLangParser.KW_FIELDS, ZmeiLangParser.KW_IMPORT, ZmeiLangParser.KW_AS, ZmeiLangParser.WRITE_MODE, ZmeiLangParser.BOOL, ZmeiLangParser.ID]: self.enterOuterAlt(localctx, 3) self.state = 2473 self.id_or_kw() @@ -19905,7 +19905,7 @@ def an_menu_label(self): self.state = 2491 self.match(ZmeiLangParser.STRING_SQ) pass - elif token in [ZmeiLangParser.KW_AUTH_TYPE_BASIC, ZmeiLangParser.KW_AUTH_TYPE_SESSION, ZmeiLangParser.KW_AUTH_TYPE_TOKEN, ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT, ZmeiLangParser.COL_FIELD_TYPE_HTML, ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA, ZmeiLangParser.COL_FIELD_TYPE_FLOAT, ZmeiLangParser.COL_FIELD_TYPE_DECIMAL, ZmeiLangParser.COL_FIELD_TYPE_DATE, ZmeiLangParser.COL_FIELD_TYPE_DATETIME, ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_TEXT, ZmeiLangParser.COL_FIELD_TYPE_INT, ZmeiLangParser.COL_FIELD_TYPE_SLUG, ZmeiLangParser.COL_FIELD_TYPE_BOOL, ZmeiLangParser.COL_FIELD_TYPE_ONE, ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE, ZmeiLangParser.COL_FIELD_TYPE_MANY, ZmeiLangParser.COL_FIELD_CHOICES, ZmeiLangParser.KW_THEME, ZmeiLangParser.KW_INSTALL, ZmeiLangParser.KW_HEADER, ZmeiLangParser.KW_SERVICES, ZmeiLangParser.KW_SELENIUM_PYTEST, ZmeiLangParser.KW_CHILD, ZmeiLangParser.KW_FILTER_OUT, ZmeiLangParser.KW_FILTER_IN, ZmeiLangParser.KW_PAGE, ZmeiLangParser.KW_LINK_SUFFIX, ZmeiLangParser.KW_URL_PREFIX, ZmeiLangParser.KW_CAN_EDIT, ZmeiLangParser.KW_OBJECT_EXPR, ZmeiLangParser.KW_BLOCK, ZmeiLangParser.KW_ITEM_NAME, ZmeiLangParser.KW_PK_PARAM, ZmeiLangParser.KW_LIST_FIELDS, ZmeiLangParser.KW_DELETE, ZmeiLangParser.KW_EDIT, ZmeiLangParser.KW_CREATE, ZmeiLangParser.KW_DETAIL, ZmeiLangParser.KW_SKIP, ZmeiLangParser.KW_FROM, ZmeiLangParser.KW_POLY_LIST, ZmeiLangParser.KW_CSS, ZmeiLangParser.KW_JS, ZmeiLangParser.KW_INLINE_TYPE_TABULAR, ZmeiLangParser.KW_INLINE_TYPE_STACKED, ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC, ZmeiLangParser.KW_INLINE, ZmeiLangParser.KW_TYPE, ZmeiLangParser.KW_USER_FIELD, ZmeiLangParser.KW_ANNOTATE, ZmeiLangParser.KW_ON_CREATE, ZmeiLangParser.KW_QUERY, ZmeiLangParser.KW_AUTH, ZmeiLangParser.KW_COUNT, ZmeiLangParser.KW_I18N, ZmeiLangParser.KW_EXTENSION, ZmeiLangParser.KW_TABS, ZmeiLangParser.KW_LIST, ZmeiLangParser.KW_READ_ONLY, ZmeiLangParser.KW_LIST_EDITABLE, ZmeiLangParser.KW_LIST_FILTER, ZmeiLangParser.KW_LIST_SEARCH, ZmeiLangParser.KW_FIELDS, ZmeiLangParser.KW_IMPORT, ZmeiLangParser.KW_AS, ZmeiLangParser.WRITE_MODE, ZmeiLangParser.BOOL, ZmeiLangParser.ID]: + elif token in [ZmeiLangParser.KW_AUTH_TYPE_BASIC, ZmeiLangParser.KW_AUTH_TYPE_SESSION, ZmeiLangParser.KW_AUTH_TYPE_TOKEN, ZmeiLangParser.COL_FIELD_TYPE_LONGTEXT, ZmeiLangParser.COL_FIELD_TYPE_HTML, ZmeiLangParser.COL_FIELD_TYPE_HTML_MEDIA, ZmeiLangParser.COL_FIELD_TYPE_FLOAT, ZmeiLangParser.COL_FIELD_TYPE_DECIMAL, ZmeiLangParser.COL_FIELD_TYPE_DATE, ZmeiLangParser.COL_FIELD_TYPE_DATETIME, ZmeiLangParser.COL_FIELD_TYPE_CREATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_UPDATE_TIME, ZmeiLangParser.COL_FIELD_TYPE_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FILE, ZmeiLangParser.COL_FIELD_TYPE_FILER_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_FILER_IMAGE_FOLDER, ZmeiLangParser.COL_FIELD_TYPE_TEXT, ZmeiLangParser.COL_FIELD_TYPE_INT, ZmeiLangParser.COL_FIELD_TYPE_SLUG, ZmeiLangParser.COL_FIELD_TYPE_BOOL, ZmeiLangParser.COL_FIELD_TYPE_ONE, ZmeiLangParser.COL_FIELD_TYPE_ONE2ONE, ZmeiLangParser.COL_FIELD_TYPE_MANY, ZmeiLangParser.COL_FIELD_CHOICES, ZmeiLangParser.KW_THEME, ZmeiLangParser.KW_INSTALL, ZmeiLangParser.KW_HEADER, ZmeiLangParser.KW_SERVICES, ZmeiLangParser.KW_SELENIUM_PYTEST, ZmeiLangParser.KW_CHILD, ZmeiLangParser.KW_FILTER_OUT, ZmeiLangParser.KW_FILTER_IN, ZmeiLangParser.KW_PAGE, ZmeiLangParser.KW_LINK_SUFFIX, ZmeiLangParser.KW_URL_PREFIX, ZmeiLangParser.KW_CAN_EDIT, ZmeiLangParser.KW_OBJECT_EXPR, ZmeiLangParser.KW_BLOCK, ZmeiLangParser.KW_ITEM_NAME, ZmeiLangParser.KW_PK_PARAM, ZmeiLangParser.KW_LIST_FIELDS, ZmeiLangParser.KW_DELETE, ZmeiLangParser.KW_EDIT, ZmeiLangParser.KW_CREATE, ZmeiLangParser.KW_DETAIL, ZmeiLangParser.KW_SKIP, ZmeiLangParser.KW_FROM, ZmeiLangParser.KW_POLY_LIST, ZmeiLangParser.KW_CSS, ZmeiLangParser.KW_JS, ZmeiLangParser.KW_INLINE_TYPE_TABULAR, ZmeiLangParser.KW_INLINE_TYPE_STACKED, ZmeiLangParser.KW_INLINE_TYPE_POLYMORPHIC, ZmeiLangParser.KW_INLINE, ZmeiLangParser.KW_TYPE, ZmeiLangParser.KW_USER_FIELD, ZmeiLangParser.KW_ANNOTATE, ZmeiLangParser.KW_ON_CREATE, ZmeiLangParser.KW_QUERY, ZmeiLangParser.KW_AUTH, ZmeiLangParser.KW_COUNT, ZmeiLangParser.KW_I18N, ZmeiLangParser.KW_EXTRA, ZmeiLangParser.KW_TABS, ZmeiLangParser.KW_LIST, ZmeiLangParser.KW_READ_ONLY, ZmeiLangParser.KW_LIST_EDITABLE, ZmeiLangParser.KW_LIST_FILTER, ZmeiLangParser.KW_LIST_SEARCH, ZmeiLangParser.KW_FIELDS, ZmeiLangParser.KW_IMPORT, ZmeiLangParser.KW_AS, ZmeiLangParser.WRITE_MODE, ZmeiLangParser.BOOL, ZmeiLangParser.ID]: self.enterOuterAlt(localctx, 3) self.state = 2492 self.id_or_kw() diff --git a/zmei_generator/parser/gen/ZmeiLangParser.tokens b/zmei_generator/parser/gen/ZmeiLangParser.tokens index 5f8e327..2aa9580 100644 --- a/zmei_generator/parser/gen/ZmeiLangParser.tokens +++ b/zmei_generator/parser/gen/ZmeiLangParser.tokens @@ -103,7 +103,7 @@ KW_QUERY=102 KW_AUTH=103 KW_COUNT=104 KW_I18N=105 -KW_EXTENSION=106 +KW_EXTRA=106 KW_TABS=107 KW_LIST=108 KW_READ_ONLY=109 @@ -262,7 +262,7 @@ PYTHON_LINE_NL=159 'auth'=103 'count'=104 'i18n'=105 -'extension'=106 +'extra'=106 'tabs'=107 'list'=108 'read_only'=109 diff --git a/zmei_generator/parser/gen/ZmeiLangParserListener.py b/zmei_generator/parser/gen/ZmeiLangParserListener.py index 5128a00..5c50675 100644 --- a/zmei_generator/parser/gen/ZmeiLangParserListener.py +++ b/zmei_generator/parser/gen/ZmeiLangParserListener.py @@ -1,4 +1,4 @@ -# Generated from /Users/aleksandrrudakov/dev/zmei/generator/zmei_generator/parser/gen/grammar/ZmeiLangParser.g4 by ANTLR 4.7.2 +# Generated from /Users/alexanderbudanov/Sites/negative/generator/zmei_generator/parser/gen/grammar/ZmeiLangParser.g4 by ANTLR 4.7.2 from antlr4 import * if __name__ is not None and "." in __name__: from .ZmeiLangParser import ZmeiLangParser @@ -1133,12 +1133,12 @@ def exitInline_type_name(self, ctx:ZmeiLangParser.Inline_type_nameContext): pass - # Enter a parse tree produced by ZmeiLangParser#inline_extension. - def enterInline_extension(self, ctx:ZmeiLangParser.Inline_extensionContext): + # Enter a parse tree produced by ZmeiLangParser#inline_extra. + def enterInline_extra(self, ctx:ZmeiLangParser.Inline_extraContext): pass - # Exit a parse tree produced by ZmeiLangParser#inline_extension. - def exitInline_extension(self, ctx:ZmeiLangParser.Inline_extensionContext): + # Exit a parse tree produced by ZmeiLangParser#inline_extra. + def exitInline_extra(self, ctx:ZmeiLangParser.Inline_extraContext): pass diff --git a/zmei_generator/parser/gen/ZmeiLangSimpleLexer.interp b/zmei_generator/parser/gen/ZmeiLangSimpleLexer.interp index c12699a..0a7cf63 100644 --- a/zmei_generator/parser/gen/ZmeiLangSimpleLexer.interp +++ b/zmei_generator/parser/gen/ZmeiLangSimpleLexer.interp @@ -105,7 +105,7 @@ null 'auth' 'count' 'i18n' -'extension' +'extra' 'tabs' 'list' 'read_only' @@ -267,7 +267,7 @@ KW_QUERY KW_AUTH KW_COUNT KW_I18N -KW_EXTENSION +KW_EXTRA KW_TABS KW_LIST KW_READ_ONLY @@ -428,7 +428,7 @@ KW_QUERY KW_AUTH KW_COUNT KW_I18N -KW_EXTENSION +KW_EXTRA KW_TABS KW_LIST KW_READ_ONLY @@ -496,4 +496,4 @@ PYTHON_LINE PYTHON_EXPR atn: -[3, 24715, 42794, 33075, 47597, 16764, 15335, 30598, 22884, 2, 161, 1499, 8, 1, 8, 1, 8, 1, 4, 2, 9, 2, 4, 3, 9, 3, 4, 4, 9, 4, 4, 5, 9, 5, 4, 6, 9, 6, 4, 7, 9, 7, 4, 8, 9, 8, 4, 9, 9, 9, 4, 10, 9, 10, 4, 11, 9, 11, 4, 12, 9, 12, 4, 13, 9, 13, 4, 14, 9, 14, 4, 15, 9, 15, 4, 16, 9, 16, 4, 17, 9, 17, 4, 18, 9, 18, 4, 19, 9, 19, 4, 20, 9, 20, 4, 21, 9, 21, 4, 22, 9, 22, 4, 23, 9, 23, 4, 24, 9, 24, 4, 25, 9, 25, 4, 26, 9, 26, 4, 27, 9, 27, 4, 28, 9, 28, 4, 29, 9, 29, 4, 30, 9, 30, 4, 31, 9, 31, 4, 32, 9, 32, 4, 33, 9, 33, 4, 34, 9, 34, 4, 35, 9, 35, 4, 36, 9, 36, 4, 37, 9, 37, 4, 38, 9, 38, 4, 39, 9, 39, 4, 40, 9, 40, 4, 41, 9, 41, 4, 42, 9, 42, 4, 43, 9, 43, 4, 44, 9, 44, 4, 45, 9, 45, 4, 46, 9, 46, 4, 47, 9, 47, 4, 48, 9, 48, 4, 49, 9, 49, 4, 50, 9, 50, 4, 51, 9, 51, 4, 52, 9, 52, 4, 53, 9, 53, 4, 54, 9, 54, 4, 55, 9, 55, 4, 56, 9, 56, 4, 57, 9, 57, 4, 58, 9, 58, 4, 59, 9, 59, 4, 60, 9, 60, 4, 61, 9, 61, 4, 62, 9, 62, 4, 63, 9, 63, 4, 64, 9, 64, 4, 65, 9, 65, 4, 66, 9, 66, 4, 67, 9, 67, 4, 68, 9, 68, 4, 69, 9, 69, 4, 70, 9, 70, 4, 71, 9, 71, 4, 72, 9, 72, 4, 73, 9, 73, 4, 74, 9, 74, 4, 75, 9, 75, 4, 76, 9, 76, 4, 77, 9, 77, 4, 78, 9, 78, 4, 79, 9, 79, 4, 80, 9, 80, 4, 81, 9, 81, 4, 82, 9, 82, 4, 83, 9, 83, 4, 84, 9, 84, 4, 85, 9, 85, 4, 86, 9, 86, 4, 87, 9, 87, 4, 88, 9, 88, 4, 89, 9, 89, 4, 90, 9, 90, 4, 91, 9, 91, 4, 92, 9, 92, 4, 93, 9, 93, 4, 94, 9, 94, 4, 95, 9, 95, 4, 96, 9, 96, 4, 97, 9, 97, 4, 98, 9, 98, 4, 99, 9, 99, 4, 100, 9, 100, 4, 101, 9, 101, 4, 102, 9, 102, 4, 103, 9, 103, 4, 104, 9, 104, 4, 105, 9, 105, 4, 106, 9, 106, 4, 107, 9, 107, 4, 108, 9, 108, 4, 109, 9, 109, 4, 110, 9, 110, 4, 111, 9, 111, 4, 112, 9, 112, 4, 113, 9, 113, 4, 114, 9, 114, 4, 115, 9, 115, 4, 116, 9, 116, 4, 117, 9, 117, 4, 118, 9, 118, 4, 119, 9, 119, 4, 120, 9, 120, 4, 121, 9, 121, 4, 122, 9, 122, 4, 123, 9, 123, 4, 124, 9, 124, 4, 125, 9, 125, 4, 126, 9, 126, 4, 127, 9, 127, 4, 128, 9, 128, 4, 129, 9, 129, 4, 130, 9, 130, 4, 131, 9, 131, 4, 132, 9, 132, 4, 133, 9, 133, 4, 134, 9, 134, 4, 135, 9, 135, 4, 136, 9, 136, 4, 137, 9, 137, 4, 138, 9, 138, 4, 139, 9, 139, 4, 140, 9, 140, 4, 141, 9, 141, 4, 142, 9, 142, 4, 143, 9, 143, 4, 144, 9, 144, 4, 145, 9, 145, 4, 146, 9, 146, 4, 147, 9, 147, 4, 148, 9, 148, 4, 149, 9, 149, 4, 150, 9, 150, 4, 151, 9, 151, 4, 152, 9, 152, 4, 153, 9, 153, 4, 154, 9, 154, 4, 155, 9, 155, 4, 156, 9, 156, 4, 157, 9, 157, 4, 158, 9, 158, 4, 159, 9, 159, 4, 160, 9, 160, 4, 161, 9, 161, 4, 162, 9, 162, 4, 163, 9, 163, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 5, 3, 5, 3, 5, 3, 5, 3, 5, 3, 5, 3, 5, 3, 5, 3, 6, 3, 6, 3, 6, 3, 6, 3, 6, 3, 6, 3, 6, 3, 6, 3, 6, 3, 6, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 9, 3, 9, 3, 9, 3, 9, 3, 9, 3, 9, 3, 10, 3, 10, 3, 10, 3, 10, 3, 10, 3, 10, 3, 10, 3, 11, 3, 11, 3, 11, 3, 11, 3, 11, 3, 11, 3, 11, 3, 11, 3, 12, 3, 12, 3, 12, 3, 12, 3, 12, 3, 12, 3, 12, 3, 13, 3, 13, 3, 13, 3, 13, 3, 13, 3, 13, 3, 13, 3, 13, 3, 13, 3, 13, 3, 13, 3, 13, 3, 13, 3, 13, 3, 14, 3, 14, 3, 14, 3, 14, 3, 14, 3, 14, 3, 14, 3, 14, 3, 14, 3, 14, 3, 14, 3, 14, 3, 14, 3, 14, 3, 15, 3, 15, 3, 15, 3, 15, 3, 15, 3, 15, 3, 15, 3, 16, 3, 16, 3, 16, 3, 17, 3, 17, 3, 17, 3, 17, 3, 17, 3, 17, 3, 18, 3, 18, 3, 18, 3, 18, 3, 18, 3, 19, 3, 19, 3, 19, 3, 19, 3, 19, 3, 19, 3, 20, 3, 20, 3, 20, 3, 20, 3, 20, 3, 20, 3, 21, 3, 21, 3, 21, 3, 21, 3, 21, 3, 21, 3, 21, 3, 21, 3, 21, 3, 21, 3, 21, 3, 21, 3, 21, 3, 22, 3, 22, 3, 22, 3, 22, 3, 22, 3, 22, 3, 22, 3, 22, 3, 22, 3, 22, 3, 22, 3, 23, 3, 23, 3, 23, 3, 23, 3, 23, 3, 23, 3, 23, 3, 23, 3, 23, 3, 23, 3, 23, 3, 23, 3, 23, 3, 24, 3, 24, 3, 24, 3, 24, 3, 24, 3, 24, 3, 24, 3, 24, 3, 24, 3, 24, 3, 24, 3, 25, 3, 25, 3, 25, 3, 25, 3, 25, 3, 25, 3, 25, 3, 25, 3, 25, 3, 25, 3, 25, 3, 25, 3, 25, 3, 26, 3, 26, 3, 26, 3, 26, 3, 26, 3, 26, 3, 27, 3, 27, 3, 27, 3, 27, 3, 27, 3, 27, 3, 27, 3, 28, 3, 28, 3, 28, 3, 28, 3, 28, 3, 28, 3, 29, 3, 29, 3, 29, 3, 29, 3, 29, 3, 29, 3, 29, 3, 29, 3, 29, 3, 29, 3, 30, 3, 30, 3, 30, 3, 30, 3, 30, 3, 30, 3, 31, 3, 31, 3, 31, 3, 31, 3, 31, 3, 31, 3, 32, 3, 32, 3, 32, 3, 32, 3, 32, 3, 32, 3, 32, 3, 32, 3, 32, 3, 32, 3, 32, 3, 33, 3, 33, 3, 33, 3, 33, 3, 33, 3, 33, 3, 33, 3, 34, 3, 34, 3, 34, 3, 34, 3, 34, 3, 34, 3, 34, 3, 34, 3, 34, 3, 34, 3, 34, 3, 34, 3, 34, 3, 35, 3, 35, 3, 35, 3, 35, 3, 35, 3, 35, 3, 35, 3, 35, 3, 35, 3, 35, 3, 35, 3, 35, 3, 35, 3, 36, 3, 36, 3, 36, 3, 36, 3, 36, 3, 36, 3, 36, 3, 36, 3, 36, 3, 36, 3, 36, 3, 36, 3, 37, 3, 37, 3, 37, 3, 37, 3, 37, 3, 37, 3, 37, 3, 37, 3, 37, 3, 37, 3, 37, 3, 38, 3, 38, 3, 38, 3, 38, 3, 38, 3, 38, 3, 38, 3, 38, 3, 38, 3, 38, 3, 39, 3, 39, 3, 39, 3, 39, 3, 39, 3, 39, 3, 39, 3, 40, 3, 40, 3, 40, 3, 40, 3, 40, 3, 40, 3, 40, 3, 41, 3, 41, 3, 41, 3, 41, 3, 41, 3, 41, 3, 41, 3, 41, 3, 41, 3, 41, 3, 42, 3, 42, 3, 42, 3, 42, 3, 42, 3, 42, 3, 42, 3, 43, 3, 43, 3, 43, 3, 43, 3, 43, 3, 43, 3, 44, 3, 44, 3, 44, 3, 44, 3, 44, 3, 44, 3, 44, 3, 44, 3, 45, 3, 45, 3, 45, 3, 45, 3, 45, 3, 45, 3, 46, 3, 46, 3, 46, 3, 46, 3, 46, 3, 47, 3, 47, 3, 47, 3, 47, 3, 47, 3, 48, 3, 48, 3, 48, 3, 48, 3, 48, 3, 48, 3, 48, 3, 48, 3, 48, 3, 48, 3, 48, 3, 49, 3, 49, 3, 49, 3, 49, 3, 49, 3, 49, 3, 50, 3, 50, 3, 50, 3, 50, 3, 50, 3, 50, 3, 50, 3, 50, 3, 51, 3, 51, 3, 51, 3, 51, 3, 51, 3, 52, 3, 52, 3, 52, 3, 52, 3, 52, 3, 52, 3, 52, 3, 52, 3, 52, 3, 53, 3, 53, 3, 53, 3, 53, 3, 53, 3, 53, 3, 53, 3, 53, 3, 53, 3, 53, 3, 53, 3, 53, 3, 54, 3, 54, 3, 54, 3, 54, 3, 54, 3, 54, 3, 54, 3, 54, 3, 54, 3, 54, 3, 54, 3, 54, 3, 55, 3, 55, 3, 55, 3, 55, 3, 55, 3, 55, 3, 56, 3, 56, 3, 56, 3, 56, 3, 56, 3, 57, 3, 57, 3, 57, 3, 57, 3, 57, 3, 57, 3, 57, 3, 57, 3, 57, 3, 57, 3, 57, 3, 57, 3, 58, 3, 58, 3, 58, 3, 58, 3, 58, 3, 58, 3, 58, 3, 58, 3, 58, 3, 58, 3, 58, 3, 59, 3, 59, 3, 59, 3, 59, 3, 59, 3, 59, 3, 59, 3, 59, 3, 59, 3, 59, 3, 59, 3, 59, 3, 59, 3, 60, 3, 60, 3, 60, 3, 60, 3, 60, 3, 60, 3, 60, 3, 60, 3, 60, 3, 60, 3, 60, 3, 60, 3, 60, 3, 60, 3, 60, 3, 60, 3, 60, 3, 60, 3, 60, 3, 61, 3, 61, 3, 61, 3, 61, 3, 62, 3, 62, 3, 62, 3, 62, 3, 63, 3, 63, 3, 63, 3, 63, 3, 63, 3, 64, 3, 64, 3, 64, 3, 64, 3, 64, 3, 65, 3, 65, 3, 65, 3, 65, 3, 66, 3, 66, 3, 66, 3, 66, 3, 66, 3, 66, 3, 66, 3, 66, 3, 67, 3, 67, 3, 67, 3, 67, 3, 67, 3, 68, 3, 68, 3, 68, 3, 68, 3, 68, 3, 68, 3, 68, 3, 68, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 70, 3, 70, 3, 70, 3, 70, 3, 70, 3, 70, 3, 70, 3, 70, 3, 71, 3, 71, 3, 71, 3, 71, 3, 71, 3, 71, 3, 71, 3, 72, 3, 72, 3, 72, 3, 72, 3, 72, 3, 72, 3, 72, 3, 72, 3, 72, 3, 73, 3, 73, 3, 73, 3, 73, 3, 73, 3, 73, 3, 73, 3, 73, 3, 73, 3, 73, 3, 73, 3, 73, 3, 73, 3, 73, 3, 73, 3, 73, 3, 74, 3, 74, 3, 74, 3, 74, 3, 74, 3, 74, 3, 75, 3, 75, 3, 75, 3, 75, 3, 75, 3, 75, 3, 75, 3, 75, 3, 75, 3, 75, 3, 75, 3, 76, 3, 76, 3, 76, 3, 76, 3, 76, 3, 76, 3, 76, 3, 76, 3, 76, 3, 76, 3, 77, 3, 77, 3, 77, 3, 77, 3, 77, 3, 78, 3, 78, 3, 78, 3, 78, 3, 78, 3, 78, 3, 78, 3, 78, 3, 78, 3, 78, 3, 78, 3, 78, 3, 79, 3, 79, 3, 79, 3, 79, 3, 79, 3, 79, 3, 79, 3, 79, 3, 79, 3, 79, 3, 79, 3, 80, 3, 80, 3, 80, 3, 80, 3, 80, 3, 80, 3, 80, 3, 80, 3, 80, 3, 81, 3, 81, 3, 81, 3, 81, 3, 81, 3, 81, 3, 81, 3, 81, 3, 81, 3, 81, 3, 81, 3, 81, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 83, 3, 83, 3, 83, 3, 83, 3, 83, 3, 83, 3, 83, 3, 83, 3, 83, 3, 83, 3, 84, 3, 84, 3, 84, 3, 84, 3, 84, 3, 84, 3, 84, 3, 84, 3, 84, 3, 85, 3, 85, 3, 85, 3, 85, 3, 85, 3, 85, 3, 85, 3, 85, 3, 85, 3, 85, 3, 85, 3, 85, 3, 86, 3, 86, 3, 86, 3, 86, 3, 86, 3, 86, 3, 86, 3, 87, 3, 87, 3, 87, 3, 87, 3, 87, 3, 88, 3, 88, 3, 88, 3, 88, 3, 88, 3, 88, 3, 88, 3, 89, 3, 89, 3, 89, 3, 89, 3, 89, 3, 89, 3, 89, 3, 90, 3, 90, 3, 90, 3, 90, 3, 90, 3, 91, 3, 91, 3, 91, 3, 91, 3, 91, 3, 92, 3, 92, 3, 92, 3, 92, 3, 92, 3, 92, 3, 92, 3, 92, 3, 92, 3, 92, 3, 92, 3, 92, 3, 92, 3, 92, 3, 92, 3, 92, 3, 92, 3, 92, 3, 93, 3, 93, 3, 93, 3, 93, 3, 94, 3, 94, 3, 94, 3, 95, 3, 95, 3, 95, 3, 95, 3, 95, 3, 95, 3, 95, 3, 95, 3, 96, 3, 96, 3, 96, 3, 96, 3, 96, 3, 96, 3, 96, 3, 96, 3, 97, 3, 97, 3, 97, 3, 97, 3, 97, 3, 97, 3, 97, 3, 97, 3, 97, 3, 97, 3, 97, 3, 97, 3, 98, 3, 98, 3, 98, 3, 98, 3, 98, 3, 98, 3, 98, 3, 99, 3, 99, 3, 99, 3, 99, 3, 99, 3, 100, 3, 100, 3, 100, 3, 100, 3, 100, 3, 100, 3, 100, 3, 100, 3, 100, 3, 100, 3, 100, 3, 101, 3, 101, 3, 101, 3, 101, 3, 101, 3, 101, 3, 101, 3, 101, 3, 101, 3, 102, 3, 102, 3, 102, 3, 102, 3, 102, 3, 102, 3, 102, 3, 102, 3, 102, 3, 102, 3, 103, 3, 103, 3, 103, 3, 103, 3, 103, 3, 103, 3, 104, 3, 104, 3, 104, 3, 104, 3, 104, 3, 105, 3, 105, 3, 105, 3, 105, 3, 105, 3, 105, 3, 106, 3, 106, 3, 106, 3, 106, 3, 106, 3, 107, 3, 107, 3, 107, 3, 107, 3, 107, 3, 107, 3, 107, 3, 107, 3, 107, 3, 107, 3, 108, 3, 108, 3, 108, 3, 108, 3, 108, 3, 109, 3, 109, 3, 109, 3, 109, 3, 109, 3, 110, 3, 110, 3, 110, 3, 110, 3, 110, 3, 110, 3, 110, 3, 110, 3, 110, 3, 110, 3, 111, 3, 111, 3, 111, 3, 111, 3, 111, 3, 111, 3, 111, 3, 111, 3, 111, 3, 111, 3, 111, 3, 111, 3, 111, 3, 111, 3, 112, 3, 112, 3, 112, 3, 112, 3, 112, 3, 112, 3, 112, 3, 112, 3, 112, 3, 112, 3, 112, 3, 112, 3, 113, 3, 113, 3, 113, 3, 113, 3, 113, 3, 113, 3, 113, 3, 113, 3, 113, 3, 113, 3, 113, 3, 113, 3, 114, 3, 114, 3, 114, 3, 114, 3, 114, 3, 114, 3, 114, 3, 115, 3, 115, 3, 115, 3, 115, 3, 115, 3, 115, 3, 115, 3, 116, 3, 116, 3, 116, 3, 117, 3, 117, 3, 117, 3, 117, 5, 117, 1284, 10, 117, 3, 118, 3, 118, 3, 118, 3, 118, 3, 118, 3, 118, 3, 118, 3, 118, 3, 118, 5, 118, 1295, 10, 118, 3, 119, 3, 119, 3, 120, 5, 120, 1300, 10, 120, 3, 120, 3, 120, 5, 120, 1304, 10, 120, 3, 121, 3, 121, 7, 121, 1308, 10, 121, 12, 121, 14, 121, 1311, 11, 121, 3, 122, 3, 122, 7, 122, 1315, 10, 122, 12, 122, 14, 122, 1318, 11, 122, 3, 123, 3, 123, 3, 123, 3, 123, 3, 124, 3, 124, 3, 125, 3, 125, 3, 126, 3, 126, 3, 127, 3, 127, 3, 128, 3, 128, 3, 129, 3, 129, 3, 130, 3, 130, 3, 131, 3, 131, 3, 132, 3, 132, 3, 133, 3, 133, 3, 134, 3, 134, 3, 135, 3, 135, 3, 136, 3, 136, 3, 137, 3, 137, 3, 138, 3, 138, 3, 139, 3, 139, 3, 140, 3, 140, 3, 141, 3, 141, 3, 142, 3, 142, 3, 143, 3, 143, 3, 144, 3, 144, 3, 145, 3, 145, 3, 146, 3, 146, 3, 146, 3, 146, 3, 146, 3, 146, 7, 146, 1374, 10, 146, 12, 146, 14, 146, 1377, 11, 146, 3, 146, 3, 146, 3, 147, 3, 147, 3, 147, 3, 147, 3, 147, 3, 147, 7, 147, 1387, 10, 147, 12, 147, 14, 147, 1390, 11, 147, 3, 147, 3, 147, 3, 148, 3, 148, 3, 148, 3, 148, 3, 148, 3, 148, 3, 148, 3, 149, 7, 149, 1402, 10, 149, 12, 149, 14, 149, 1405, 11, 149, 3, 149, 3, 149, 5, 149, 1409, 10, 149, 3, 150, 3, 150, 3, 150, 3, 150, 7, 150, 1415, 10, 150, 12, 150, 14, 150, 1418, 11, 150, 3, 150, 3, 150, 3, 150, 3, 150, 3, 150, 3, 151, 3, 151, 3, 152, 3, 152, 3, 152, 3, 152, 3, 153, 3, 153, 3, 153, 3, 153, 5, 153, 1435, 10, 153, 3, 153, 3, 153, 3, 154, 3, 154, 3, 154, 3, 154, 7, 154, 1443, 10, 154, 12, 154, 14, 154, 1446, 11, 154, 3, 154, 3, 154, 3, 155, 3, 155, 3, 155, 3, 155, 7, 155, 1454, 10, 155, 12, 155, 14, 155, 1457, 11, 155, 3, 155, 3, 155, 3, 156, 3, 156, 3, 156, 7, 156, 1464, 10, 156, 12, 156, 14, 156, 1467, 11, 156, 3, 156, 3, 156, 3, 157, 3, 157, 3, 158, 3, 158, 3, 158, 3, 158, 3, 158, 3, 159, 6, 159, 1479, 10, 159, 13, 159, 14, 159, 1480, 3, 159, 3, 159, 3, 160, 3, 160, 3, 161, 3, 161, 3, 161, 3, 161, 3, 162, 6, 162, 1492, 10, 162, 13, 162, 14, 162, 1493, 3, 162, 3, 162, 3, 163, 3, 163, 4, 1403, 1416, 2, 164, 5, 3, 7, 4, 9, 5, 11, 6, 13, 7, 15, 8, 17, 9, 19, 10, 21, 11, 23, 12, 25, 13, 27, 14, 29, 15, 31, 16, 33, 17, 35, 18, 37, 19, 39, 20, 41, 21, 43, 22, 45, 23, 47, 24, 49, 25, 51, 26, 53, 27, 55, 28, 57, 29, 59, 30, 61, 31, 63, 32, 65, 33, 67, 34, 69, 35, 71, 36, 73, 37, 75, 38, 77, 39, 79, 40, 81, 41, 83, 42, 85, 43, 87, 44, 89, 45, 91, 46, 93, 47, 95, 48, 97, 49, 99, 50, 101, 51, 103, 52, 105, 53, 107, 54, 109, 55, 111, 56, 113, 57, 115, 58, 117, 59, 119, 60, 121, 61, 123, 62, 125, 63, 127, 64, 129, 65, 131, 66, 133, 67, 135, 68, 137, 69, 139, 70, 141, 71, 143, 72, 145, 73, 147, 74, 149, 75, 151, 76, 153, 77, 155, 78, 157, 79, 159, 80, 161, 81, 163, 82, 165, 83, 167, 84, 169, 85, 171, 86, 173, 87, 175, 88, 177, 89, 179, 90, 181, 91, 183, 92, 185, 93, 187, 94, 189, 95, 191, 96, 193, 97, 195, 98, 197, 99, 199, 100, 201, 101, 203, 102, 205, 103, 207, 104, 209, 105, 211, 106, 213, 107, 215, 108, 217, 109, 219, 110, 221, 111, 223, 112, 225, 113, 227, 114, 229, 115, 231, 116, 233, 117, 235, 118, 237, 119, 239, 2, 241, 120, 243, 121, 245, 122, 247, 123, 249, 124, 251, 125, 253, 126, 255, 127, 257, 128, 259, 129, 261, 130, 263, 131, 265, 132, 267, 133, 269, 134, 271, 135, 273, 136, 275, 137, 277, 138, 279, 139, 281, 140, 283, 141, 285, 142, 287, 143, 289, 144, 291, 145, 293, 146, 295, 147, 297, 148, 299, 2, 301, 149, 303, 150, 305, 151, 307, 152, 309, 153, 311, 154, 313, 155, 315, 156, 317, 161, 319, 157, 321, 158, 323, 159, 325, 2, 327, 160, 5, 2, 3, 4, 12, 5, 2, 67, 92, 97, 97, 99, 124, 6, 2, 50, 59, 67, 92, 97, 97, 99, 124, 3, 2, 51, 59, 3, 2, 50, 59, 5, 2, 12, 12, 15, 15, 36, 36, 5, 2, 12, 12, 15, 15, 41, 41, 10, 2, 185, 185, 770, 881, 8257, 8258, 8306, 8593, 11266, 12273, 12291, 55297, 63746, 64977, 65010, 65535, 4, 2, 125, 125, 127, 127, 3, 2, 12, 12, 4, 2, 12, 12, 61, 61, 2, 1517, 2, 5, 3, 2, 2, 2, 2, 7, 3, 2, 2, 2, 2, 9, 3, 2, 2, 2, 2, 11, 3, 2, 2, 2, 2, 13, 3, 2, 2, 2, 2, 15, 3, 2, 2, 2, 2, 17, 3, 2, 2, 2, 2, 19, 3, 2, 2, 2, 2, 21, 3, 2, 2, 2, 2, 23, 3, 2, 2, 2, 2, 25, 3, 2, 2, 2, 2, 27, 3, 2, 2, 2, 2, 29, 3, 2, 2, 2, 2, 31, 3, 2, 2, 2, 2, 33, 3, 2, 2, 2, 2, 35, 3, 2, 2, 2, 2, 37, 3, 2, 2, 2, 2, 39, 3, 2, 2, 2, 2, 41, 3, 2, 2, 2, 2, 43, 3, 2, 2, 2, 2, 45, 3, 2, 2, 2, 2, 47, 3, 2, 2, 2, 2, 49, 3, 2, 2, 2, 2, 51, 3, 2, 2, 2, 2, 53, 3, 2, 2, 2, 2, 55, 3, 2, 2, 2, 2, 57, 3, 2, 2, 2, 2, 59, 3, 2, 2, 2, 2, 61, 3, 2, 2, 2, 2, 63, 3, 2, 2, 2, 2, 65, 3, 2, 2, 2, 2, 67, 3, 2, 2, 2, 2, 69, 3, 2, 2, 2, 2, 71, 3, 2, 2, 2, 2, 73, 3, 2, 2, 2, 2, 75, 3, 2, 2, 2, 2, 77, 3, 2, 2, 2, 2, 79, 3, 2, 2, 2, 2, 81, 3, 2, 2, 2, 2, 83, 3, 2, 2, 2, 2, 85, 3, 2, 2, 2, 2, 87, 3, 2, 2, 2, 2, 89, 3, 2, 2, 2, 2, 91, 3, 2, 2, 2, 2, 93, 3, 2, 2, 2, 2, 95, 3, 2, 2, 2, 2, 97, 3, 2, 2, 2, 2, 99, 3, 2, 2, 2, 2, 101, 3, 2, 2, 2, 2, 103, 3, 2, 2, 2, 2, 105, 3, 2, 2, 2, 2, 107, 3, 2, 2, 2, 2, 109, 3, 2, 2, 2, 2, 111, 3, 2, 2, 2, 2, 113, 3, 2, 2, 2, 2, 115, 3, 2, 2, 2, 2, 117, 3, 2, 2, 2, 2, 119, 3, 2, 2, 2, 2, 121, 3, 2, 2, 2, 2, 123, 3, 2, 2, 2, 2, 125, 3, 2, 2, 2, 2, 127, 3, 2, 2, 2, 2, 129, 3, 2, 2, 2, 2, 131, 3, 2, 2, 2, 2, 133, 3, 2, 2, 2, 2, 135, 3, 2, 2, 2, 2, 137, 3, 2, 2, 2, 2, 139, 3, 2, 2, 2, 2, 141, 3, 2, 2, 2, 2, 143, 3, 2, 2, 2, 2, 145, 3, 2, 2, 2, 2, 147, 3, 2, 2, 2, 2, 149, 3, 2, 2, 2, 2, 151, 3, 2, 2, 2, 2, 153, 3, 2, 2, 2, 2, 155, 3, 2, 2, 2, 2, 157, 3, 2, 2, 2, 2, 159, 3, 2, 2, 2, 2, 161, 3, 2, 2, 2, 2, 163, 3, 2, 2, 2, 2, 165, 3, 2, 2, 2, 2, 167, 3, 2, 2, 2, 2, 169, 3, 2, 2, 2, 2, 171, 3, 2, 2, 2, 2, 173, 3, 2, 2, 2, 2, 175, 3, 2, 2, 2, 2, 177, 3, 2, 2, 2, 2, 179, 3, 2, 2, 2, 2, 181, 3, 2, 2, 2, 2, 183, 3, 2, 2, 2, 2, 185, 3, 2, 2, 2, 2, 187, 3, 2, 2, 2, 2, 189, 3, 2, 2, 2, 2, 191, 3, 2, 2, 2, 2, 193, 3, 2, 2, 2, 2, 195, 3, 2, 2, 2, 2, 197, 3, 2, 2, 2, 2, 199, 3, 2, 2, 2, 2, 201, 3, 2, 2, 2, 2, 203, 3, 2, 2, 2, 2, 205, 3, 2, 2, 2, 2, 207, 3, 2, 2, 2, 2, 209, 3, 2, 2, 2, 2, 211, 3, 2, 2, 2, 2, 213, 3, 2, 2, 2, 2, 215, 3, 2, 2, 2, 2, 217, 3, 2, 2, 2, 2, 219, 3, 2, 2, 2, 2, 221, 3, 2, 2, 2, 2, 223, 3, 2, 2, 2, 2, 225, 3, 2, 2, 2, 2, 227, 3, 2, 2, 2, 2, 229, 3, 2, 2, 2, 2, 231, 3, 2, 2, 2, 2, 233, 3, 2, 2, 2, 2, 235, 3, 2, 2, 2, 2, 237, 3, 2, 2, 2, 2, 241, 3, 2, 2, 2, 2, 243, 3, 2, 2, 2, 2, 245, 3, 2, 2, 2, 2, 247, 3, 2, 2, 2, 2, 249, 3, 2, 2, 2, 2, 251, 3, 2, 2, 2, 2, 253, 3, 2, 2, 2, 2, 255, 3, 2, 2, 2, 2, 257, 3, 2, 2, 2, 2, 259, 3, 2, 2, 2, 2, 261, 3, 2, 2, 2, 2, 263, 3, 2, 2, 2, 2, 265, 3, 2, 2, 2, 2, 267, 3, 2, 2, 2, 2, 269, 3, 2, 2, 2, 2, 271, 3, 2, 2, 2, 2, 273, 3, 2, 2, 2, 2, 275, 3, 2, 2, 2, 2, 277, 3, 2, 2, 2, 2, 279, 3, 2, 2, 2, 2, 281, 3, 2, 2, 2, 2, 283, 3, 2, 2, 2, 2, 285, 3, 2, 2, 2, 2, 287, 3, 2, 2, 2, 2, 289, 3, 2, 2, 2, 2, 291, 3, 2, 2, 2, 2, 293, 3, 2, 2, 2, 2, 295, 3, 2, 2, 2, 2, 297, 3, 2, 2, 2, 2, 301, 3, 2, 2, 2, 2, 303, 3, 2, 2, 2, 2, 305, 3, 2, 2, 2, 2, 307, 3, 2, 2, 2, 2, 309, 3, 2, 2, 2, 2, 311, 3, 2, 2, 2, 2, 313, 3, 2, 2, 2, 2, 315, 3, 2, 2, 2, 3, 317, 3, 2, 2, 2, 3, 319, 3, 2, 2, 2, 3, 321, 3, 2, 2, 2, 4, 323, 3, 2, 2, 2, 4, 325, 3, 2, 2, 2, 4, 327, 3, 2, 2, 2, 5, 329, 3, 2, 2, 2, 7, 336, 3, 2, 2, 2, 9, 342, 3, 2, 2, 2, 11, 350, 3, 2, 2, 2, 13, 358, 3, 2, 2, 2, 15, 368, 3, 2, 2, 2, 17, 376, 3, 2, 2, 2, 19, 381, 3, 2, 2, 2, 21, 387, 3, 2, 2, 2, 23, 394, 3, 2, 2, 2, 25, 402, 3, 2, 2, 2, 27, 409, 3, 2, 2, 2, 29, 423, 3, 2, 2, 2, 31, 437, 3, 2, 2, 2, 33, 444, 3, 2, 2, 2, 35, 447, 3, 2, 2, 2, 37, 453, 3, 2, 2, 2, 39, 458, 3, 2, 2, 2, 41, 464, 3, 2, 2, 2, 43, 470, 3, 2, 2, 2, 45, 483, 3, 2, 2, 2, 47, 494, 3, 2, 2, 2, 49, 507, 3, 2, 2, 2, 51, 518, 3, 2, 2, 2, 53, 531, 3, 2, 2, 2, 55, 537, 3, 2, 2, 2, 57, 544, 3, 2, 2, 2, 59, 550, 3, 2, 2, 2, 61, 560, 3, 2, 2, 2, 63, 566, 3, 2, 2, 2, 65, 572, 3, 2, 2, 2, 67, 583, 3, 2, 2, 2, 69, 590, 3, 2, 2, 2, 71, 603, 3, 2, 2, 2, 73, 616, 3, 2, 2, 2, 75, 628, 3, 2, 2, 2, 77, 639, 3, 2, 2, 2, 79, 649, 3, 2, 2, 2, 81, 656, 3, 2, 2, 2, 83, 663, 3, 2, 2, 2, 85, 673, 3, 2, 2, 2, 87, 680, 3, 2, 2, 2, 89, 686, 3, 2, 2, 2, 91, 694, 3, 2, 2, 2, 93, 700, 3, 2, 2, 2, 95, 705, 3, 2, 2, 2, 97, 710, 3, 2, 2, 2, 99, 721, 3, 2, 2, 2, 101, 727, 3, 2, 2, 2, 103, 735, 3, 2, 2, 2, 105, 740, 3, 2, 2, 2, 107, 749, 3, 2, 2, 2, 109, 761, 3, 2, 2, 2, 111, 773, 3, 2, 2, 2, 113, 779, 3, 2, 2, 2, 115, 784, 3, 2, 2, 2, 117, 796, 3, 2, 2, 2, 119, 807, 3, 2, 2, 2, 121, 820, 3, 2, 2, 2, 123, 839, 3, 2, 2, 2, 125, 843, 3, 2, 2, 2, 127, 847, 3, 2, 2, 2, 129, 852, 3, 2, 2, 2, 131, 857, 3, 2, 2, 2, 133, 861, 3, 2, 2, 2, 135, 869, 3, 2, 2, 2, 137, 874, 3, 2, 2, 2, 139, 882, 3, 2, 2, 2, 141, 888, 3, 2, 2, 2, 143, 896, 3, 2, 2, 2, 145, 903, 3, 2, 2, 2, 147, 912, 3, 2, 2, 2, 149, 928, 3, 2, 2, 2, 151, 934, 3, 2, 2, 2, 153, 945, 3, 2, 2, 2, 155, 955, 3, 2, 2, 2, 157, 960, 3, 2, 2, 2, 159, 972, 3, 2, 2, 2, 161, 983, 3, 2, 2, 2, 163, 992, 3, 2, 2, 2, 165, 1004, 3, 2, 2, 2, 167, 1010, 3, 2, 2, 2, 169, 1020, 3, 2, 2, 2, 171, 1029, 3, 2, 2, 2, 173, 1041, 3, 2, 2, 2, 175, 1048, 3, 2, 2, 2, 177, 1053, 3, 2, 2, 2, 179, 1060, 3, 2, 2, 2, 181, 1067, 3, 2, 2, 2, 183, 1072, 3, 2, 2, 2, 185, 1077, 3, 2, 2, 2, 187, 1095, 3, 2, 2, 2, 189, 1099, 3, 2, 2, 2, 191, 1102, 3, 2, 2, 2, 193, 1110, 3, 2, 2, 2, 195, 1118, 3, 2, 2, 2, 197, 1130, 3, 2, 2, 2, 199, 1137, 3, 2, 2, 2, 201, 1142, 3, 2, 2, 2, 203, 1153, 3, 2, 2, 2, 205, 1162, 3, 2, 2, 2, 207, 1172, 3, 2, 2, 2, 209, 1178, 3, 2, 2, 2, 211, 1183, 3, 2, 2, 2, 213, 1189, 3, 2, 2, 2, 215, 1194, 3, 2, 2, 2, 217, 1204, 3, 2, 2, 2, 219, 1209, 3, 2, 2, 2, 221, 1214, 3, 2, 2, 2, 223, 1224, 3, 2, 2, 2, 225, 1238, 3, 2, 2, 2, 227, 1250, 3, 2, 2, 2, 229, 1262, 3, 2, 2, 2, 231, 1269, 3, 2, 2, 2, 233, 1276, 3, 2, 2, 2, 235, 1283, 3, 2, 2, 2, 237, 1294, 3, 2, 2, 2, 239, 1296, 3, 2, 2, 2, 241, 1303, 3, 2, 2, 2, 243, 1305, 3, 2, 2, 2, 245, 1312, 3, 2, 2, 2, 247, 1319, 3, 2, 2, 2, 249, 1323, 3, 2, 2, 2, 251, 1325, 3, 2, 2, 2, 253, 1327, 3, 2, 2, 2, 255, 1329, 3, 2, 2, 2, 257, 1331, 3, 2, 2, 2, 259, 1333, 3, 2, 2, 2, 261, 1335, 3, 2, 2, 2, 263, 1337, 3, 2, 2, 2, 265, 1339, 3, 2, 2, 2, 267, 1341, 3, 2, 2, 2, 269, 1343, 3, 2, 2, 2, 271, 1345, 3, 2, 2, 2, 273, 1347, 3, 2, 2, 2, 275, 1349, 3, 2, 2, 2, 277, 1351, 3, 2, 2, 2, 279, 1353, 3, 2, 2, 2, 281, 1355, 3, 2, 2, 2, 283, 1357, 3, 2, 2, 2, 285, 1359, 3, 2, 2, 2, 287, 1361, 3, 2, 2, 2, 289, 1363, 3, 2, 2, 2, 291, 1365, 3, 2, 2, 2, 293, 1367, 3, 2, 2, 2, 295, 1380, 3, 2, 2, 2, 297, 1393, 3, 2, 2, 2, 299, 1403, 3, 2, 2, 2, 301, 1410, 3, 2, 2, 2, 303, 1424, 3, 2, 2, 2, 305, 1426, 3, 2, 2, 2, 307, 1434, 3, 2, 2, 2, 309, 1438, 3, 2, 2, 2, 311, 1449, 3, 2, 2, 2, 313, 1460, 3, 2, 2, 2, 315, 1470, 3, 2, 2, 2, 317, 1472, 3, 2, 2, 2, 319, 1478, 3, 2, 2, 2, 321, 1484, 3, 2, 2, 2, 323, 1486, 3, 2, 2, 2, 325, 1491, 3, 2, 2, 2, 327, 1497, 3, 2, 2, 2, 329, 330, 7, 66, 2, 2, 330, 331, 7, 99, 2, 2, 331, 332, 7, 102, 2, 2, 332, 333, 7, 111, 2, 2, 333, 334, 7, 107, 2, 2, 334, 335, 7, 112, 2, 2, 335, 6, 3, 2, 2, 2, 336, 337, 7, 66, 2, 2, 337, 338, 7, 117, 2, 2, 338, 339, 7, 119, 2, 2, 339, 340, 7, 107, 2, 2, 340, 341, 7, 118, 2, 2, 341, 8, 3, 2, 2, 2, 342, 343, 7, 66, 2, 2, 343, 344, 7, 101, 2, 2, 344, 345, 7, 103, 2, 2, 345, 346, 7, 110, 2, 2, 346, 347, 7, 103, 2, 2, 347, 348, 7, 116, 2, 2, 348, 349, 7, 123, 2, 2, 349, 10, 3, 2, 2, 2, 350, 351, 7, 66, 2, 2, 351, 352, 7, 117, 2, 2, 352, 353, 7, 118, 2, 2, 353, 354, 7, 116, 2, 2, 354, 355, 7, 103, 2, 2, 355, 356, 7, 99, 2, 2, 356, 357, 7, 111, 2, 2, 357, 12, 3, 2, 2, 2, 358, 359, 7, 66, 2, 2, 359, 360, 7, 101, 2, 2, 360, 361, 7, 106, 2, 2, 361, 362, 7, 99, 2, 2, 362, 363, 7, 112, 2, 2, 363, 364, 7, 112, 2, 2, 364, 365, 7, 103, 2, 2, 365, 366, 7, 110, 2, 2, 366, 367, 7, 117, 2, 2, 367, 14, 3, 2, 2, 2, 368, 369, 7, 66, 2, 2, 369, 370, 7, 102, 2, 2, 370, 371, 7, 113, 2, 2, 371, 372, 7, 101, 2, 2, 372, 373, 7, 109, 2, 2, 373, 374, 7, 103, 2, 2, 374, 375, 7, 116, 2, 2, 375, 16, 3, 2, 2, 2, 376, 377, 7, 66, 2, 2, 377, 378, 7, 99, 2, 2, 378, 379, 7, 114, 2, 2, 379, 380, 7, 107, 2, 2, 380, 18, 3, 2, 2, 2, 381, 382, 7, 66, 2, 2, 382, 383, 7, 116, 2, 2, 383, 384, 7, 103, 2, 2, 384, 385, 7, 117, 2, 2, 385, 386, 7, 118, 2, 2, 386, 20, 3, 2, 2, 2, 387, 388, 7, 66, 2, 2, 388, 389, 7, 104, 2, 2, 389, 390, 7, 107, 2, 2, 390, 391, 7, 110, 2, 2, 391, 392, 7, 103, 2, 2, 392, 393, 7, 116, 2, 2, 393, 22, 3, 2, 2, 2, 394, 395, 7, 66, 2, 2, 395, 396, 7, 105, 2, 2, 396, 397, 7, 107, 2, 2, 397, 398, 7, 118, 2, 2, 398, 399, 7, 110, 2, 2, 399, 400, 7, 99, 2, 2, 400, 401, 7, 100, 2, 2, 401, 24, 3, 2, 2, 2, 402, 403, 7, 66, 2, 2, 403, 404, 7, 116, 2, 2, 404, 405, 7, 103, 2, 2, 405, 406, 7, 99, 2, 2, 406, 407, 7, 101, 2, 2, 407, 408, 7, 118, 2, 2, 408, 26, 3, 2, 2, 2, 409, 410, 7, 66, 2, 2, 410, 411, 7, 116, 2, 2, 411, 412, 7, 103, 2, 2, 412, 413, 7, 99, 2, 2, 413, 414, 7, 101, 2, 2, 414, 415, 7, 118, 2, 2, 415, 416, 7, 97, 2, 2, 416, 417, 7, 101, 2, 2, 417, 418, 7, 110, 2, 2, 418, 419, 7, 107, 2, 2, 419, 420, 7, 103, 2, 2, 420, 421, 7, 112, 2, 2, 421, 422, 7, 118, 2, 2, 422, 28, 3, 2, 2, 2, 423, 424, 7, 66, 2, 2, 424, 425, 7, 116, 2, 2, 425, 426, 7, 103, 2, 2, 426, 427, 7, 99, 2, 2, 427, 428, 7, 101, 2, 2, 428, 429, 7, 118, 2, 2, 429, 430, 7, 97, 2, 2, 430, 431, 7, 117, 2, 2, 431, 432, 7, 103, 2, 2, 432, 433, 7, 116, 2, 2, 433, 434, 7, 120, 2, 2, 434, 435, 7, 103, 2, 2, 435, 436, 7, 116, 2, 2, 436, 30, 3, 2, 2, 2, 437, 438, 7, 66, 2, 2, 438, 439, 7, 118, 2, 2, 439, 440, 7, 106, 2, 2, 440, 441, 7, 103, 2, 2, 441, 442, 7, 111, 2, 2, 442, 443, 7, 103, 2, 2, 443, 32, 3, 2, 2, 2, 444, 445, 7, 66, 2, 2, 445, 446, 7, 66, 2, 2, 446, 34, 3, 2, 2, 2, 447, 448, 7, 66, 2, 2, 448, 449, 7, 104, 2, 2, 449, 450, 7, 107, 2, 2, 450, 451, 7, 110, 2, 2, 451, 452, 7, 103, 2, 2, 452, 36, 3, 2, 2, 2, 453, 454, 7, 66, 2, 2, 454, 455, 7, 105, 2, 2, 455, 456, 7, 103, 2, 2, 456, 457, 7, 118, 2, 2, 457, 38, 3, 2, 2, 2, 458, 459, 7, 66, 2, 2, 459, 460, 7, 111, 2, 2, 460, 461, 7, 103, 2, 2, 461, 462, 7, 112, 2, 2, 462, 463, 7, 119, 2, 2, 463, 40, 3, 2, 2, 2, 464, 465, 7, 66, 2, 2, 465, 466, 7, 101, 2, 2, 466, 467, 7, 116, 2, 2, 467, 468, 7, 119, 2, 2, 468, 469, 7, 102, 2, 2, 469, 42, 3, 2, 2, 2, 470, 471, 7, 66, 2, 2, 471, 472, 7, 101, 2, 2, 472, 473, 7, 116, 2, 2, 473, 474, 7, 119, 2, 2, 474, 475, 7, 102, 2, 2, 475, 476, 7, 97, 2, 2, 476, 477, 7, 102, 2, 2, 477, 478, 7, 103, 2, 2, 478, 479, 7, 118, 2, 2, 479, 480, 7, 99, 2, 2, 480, 481, 7, 107, 2, 2, 481, 482, 7, 110, 2, 2, 482, 44, 3, 2, 2, 2, 483, 484, 7, 66, 2, 2, 484, 485, 7, 101, 2, 2, 485, 486, 7, 116, 2, 2, 486, 487, 7, 119, 2, 2, 487, 488, 7, 102, 2, 2, 488, 489, 7, 97, 2, 2, 489, 490, 7, 110, 2, 2, 490, 491, 7, 107, 2, 2, 491, 492, 7, 117, 2, 2, 492, 493, 7, 118, 2, 2, 493, 46, 3, 2, 2, 2, 494, 495, 7, 66, 2, 2, 495, 496, 7, 101, 2, 2, 496, 497, 7, 116, 2, 2, 497, 498, 7, 119, 2, 2, 498, 499, 7, 102, 2, 2, 499, 500, 7, 97, 2, 2, 500, 501, 7, 102, 2, 2, 501, 502, 7, 103, 2, 2, 502, 503, 7, 110, 2, 2, 503, 504, 7, 103, 2, 2, 504, 505, 7, 118, 2, 2, 505, 506, 7, 103, 2, 2, 506, 48, 3, 2, 2, 2, 507, 508, 7, 66, 2, 2, 508, 509, 7, 101, 2, 2, 509, 510, 7, 116, 2, 2, 510, 511, 7, 119, 2, 2, 511, 512, 7, 102, 2, 2, 512, 513, 7, 97, 2, 2, 513, 514, 7, 103, 2, 2, 514, 515, 7, 102, 2, 2, 515, 516, 7, 107, 2, 2, 516, 517, 7, 118, 2, 2, 517, 50, 3, 2, 2, 2, 518, 519, 7, 66, 2, 2, 519, 520, 7, 101, 2, 2, 520, 521, 7, 116, 2, 2, 521, 522, 7, 119, 2, 2, 522, 523, 7, 102, 2, 2, 523, 524, 7, 97, 2, 2, 524, 525, 7, 101, 2, 2, 525, 526, 7, 116, 2, 2, 526, 527, 7, 103, 2, 2, 527, 528, 7, 99, 2, 2, 528, 529, 7, 118, 2, 2, 529, 530, 7, 103, 2, 2, 530, 52, 3, 2, 2, 2, 531, 532, 7, 66, 2, 2, 532, 533, 7, 114, 2, 2, 533, 534, 7, 113, 2, 2, 534, 535, 7, 117, 2, 2, 535, 536, 7, 118, 2, 2, 536, 54, 3, 2, 2, 2, 537, 538, 7, 66, 2, 2, 538, 539, 7, 103, 2, 2, 539, 540, 7, 116, 2, 2, 540, 541, 7, 116, 2, 2, 541, 542, 7, 113, 2, 2, 542, 543, 7, 116, 2, 2, 543, 56, 3, 2, 2, 2, 544, 545, 7, 66, 2, 2, 545, 546, 7, 99, 2, 2, 546, 547, 7, 119, 2, 2, 547, 548, 7, 118, 2, 2, 548, 549, 7, 106, 2, 2, 549, 58, 3, 2, 2, 2, 550, 551, 7, 66, 2, 2, 551, 552, 7, 111, 2, 2, 552, 553, 7, 99, 2, 2, 553, 554, 7, 116, 2, 2, 554, 555, 7, 109, 2, 2, 555, 556, 7, 102, 2, 2, 556, 557, 7, 113, 2, 2, 557, 558, 7, 121, 2, 2, 558, 559, 7, 112, 2, 2, 559, 60, 3, 2, 2, 2, 560, 561, 7, 66, 2, 2, 561, 562, 7, 106, 2, 2, 562, 563, 7, 118, 2, 2, 563, 564, 7, 111, 2, 2, 564, 565, 7, 110, 2, 2, 565, 62, 3, 2, 2, 2, 566, 567, 7, 66, 2, 2, 567, 568, 7, 118, 2, 2, 568, 569, 7, 116, 2, 2, 569, 570, 7, 103, 2, 2, 570, 571, 7, 103, 2, 2, 571, 64, 3, 2, 2, 2, 572, 573, 7, 66, 2, 2, 573, 574, 7, 102, 2, 2, 574, 575, 7, 99, 2, 2, 575, 576, 7, 118, 2, 2, 576, 577, 7, 103, 2, 2, 577, 578, 7, 97, 2, 2, 578, 579, 7, 118, 2, 2, 579, 580, 7, 116, 2, 2, 580, 581, 7, 103, 2, 2, 581, 582, 7, 103, 2, 2, 582, 66, 3, 2, 2, 2, 583, 584, 7, 66, 2, 2, 584, 585, 7, 111, 2, 2, 585, 586, 7, 107, 2, 2, 586, 587, 7, 122, 2, 2, 587, 588, 7, 107, 2, 2, 588, 589, 7, 112, 2, 2, 589, 68, 3, 2, 2, 2, 590, 591, 7, 66, 2, 2, 591, 592, 7, 111, 2, 2, 592, 593, 7, 52, 2, 2, 593, 594, 7, 111, 2, 2, 594, 595, 7, 97, 2, 2, 595, 596, 7, 101, 2, 2, 596, 597, 7, 106, 2, 2, 597, 598, 7, 99, 2, 2, 598, 599, 7, 112, 2, 2, 599, 600, 7, 105, 2, 2, 600, 601, 7, 103, 2, 2, 601, 602, 7, 102, 2, 2, 602, 70, 3, 2, 2, 2, 603, 604, 7, 66, 2, 2, 604, 605, 7, 114, 2, 2, 605, 606, 7, 113, 2, 2, 606, 607, 7, 117, 2, 2, 607, 608, 7, 118, 2, 2, 608, 609, 7, 97, 2, 2, 609, 610, 7, 102, 2, 2, 610, 611, 7, 103, 2, 2, 611, 612, 7, 110, 2, 2, 612, 613, 7, 103, 2, 2, 613, 614, 7, 118, 2, 2, 614, 615, 7, 103, 2, 2, 615, 72, 3, 2, 2, 2, 616, 617, 7, 66, 2, 2, 617, 618, 7, 114, 2, 2, 618, 619, 7, 116, 2, 2, 619, 620, 7, 103, 2, 2, 620, 621, 7, 97, 2, 2, 621, 622, 7, 102, 2, 2, 622, 623, 7, 103, 2, 2, 623, 624, 7, 110, 2, 2, 624, 625, 7, 103, 2, 2, 625, 626, 7, 118, 2, 2, 626, 627, 7, 103, 2, 2, 627, 74, 3, 2, 2, 2, 628, 629, 7, 66, 2, 2, 629, 630, 7, 114, 2, 2, 630, 631, 7, 113, 2, 2, 631, 632, 7, 117, 2, 2, 632, 633, 7, 118, 2, 2, 633, 634, 7, 97, 2, 2, 634, 635, 7, 117, 2, 2, 635, 636, 7, 99, 2, 2, 636, 637, 7, 120, 2, 2, 637, 638, 7, 103, 2, 2, 638, 76, 3, 2, 2, 2, 639, 640, 7, 66, 2, 2, 640, 641, 7, 114, 2, 2, 641, 642, 7, 116, 2, 2, 642, 643, 7, 103, 2, 2, 643, 644, 7, 97, 2, 2, 644, 645, 7, 117, 2, 2, 645, 646, 7, 99, 2, 2, 646, 647, 7, 120, 2, 2, 647, 648, 7, 103, 2, 2, 648, 78, 3, 2, 2, 2, 649, 650, 7, 66, 2, 2, 650, 651, 7, 101, 2, 2, 651, 652, 7, 110, 2, 2, 652, 653, 7, 103, 2, 2, 653, 654, 7, 99, 2, 2, 654, 655, 7, 112, 2, 2, 655, 80, 3, 2, 2, 2, 656, 657, 7, 66, 2, 2, 657, 658, 7, 113, 2, 2, 658, 659, 7, 116, 2, 2, 659, 660, 7, 102, 2, 2, 660, 661, 7, 103, 2, 2, 661, 662, 7, 116, 2, 2, 662, 82, 3, 2, 2, 2, 663, 664, 7, 66, 2, 2, 664, 665, 7, 117, 2, 2, 665, 666, 7, 113, 2, 2, 666, 667, 7, 116, 2, 2, 667, 668, 7, 118, 2, 2, 668, 669, 7, 99, 2, 2, 669, 670, 7, 100, 2, 2, 670, 671, 7, 110, 2, 2, 671, 672, 7, 103, 2, 2, 672, 84, 3, 2, 2, 2, 673, 674, 7, 66, 2, 2, 674, 675, 7, 110, 2, 2, 675, 676, 7, 99, 2, 2, 676, 677, 7, 112, 2, 2, 677, 678, 7, 105, 2, 2, 678, 679, 7, 117, 2, 2, 679, 86, 3, 2, 2, 2, 680, 681, 7, 100, 2, 2, 681, 682, 7, 99, 2, 2, 682, 683, 7, 117, 2, 2, 683, 684, 7, 107, 2, 2, 684, 685, 7, 101, 2, 2, 685, 88, 3, 2, 2, 2, 686, 687, 7, 117, 2, 2, 687, 688, 7, 103, 2, 2, 688, 689, 7, 117, 2, 2, 689, 690, 7, 117, 2, 2, 690, 691, 7, 107, 2, 2, 691, 692, 7, 113, 2, 2, 692, 693, 7, 112, 2, 2, 693, 90, 3, 2, 2, 2, 694, 695, 7, 118, 2, 2, 695, 696, 7, 113, 2, 2, 696, 697, 7, 109, 2, 2, 697, 698, 7, 103, 2, 2, 698, 699, 7, 112, 2, 2, 699, 92, 3, 2, 2, 2, 700, 701, 7, 118, 2, 2, 701, 702, 7, 103, 2, 2, 702, 703, 7, 122, 2, 2, 703, 704, 7, 118, 2, 2, 704, 94, 3, 2, 2, 2, 705, 706, 7, 106, 2, 2, 706, 707, 7, 118, 2, 2, 707, 708, 7, 111, 2, 2, 708, 709, 7, 110, 2, 2, 709, 96, 3, 2, 2, 2, 710, 711, 7, 106, 2, 2, 711, 712, 7, 118, 2, 2, 712, 713, 7, 111, 2, 2, 713, 714, 7, 110, 2, 2, 714, 715, 7, 97, 2, 2, 715, 716, 7, 111, 2, 2, 716, 717, 7, 103, 2, 2, 717, 718, 7, 102, 2, 2, 718, 719, 7, 107, 2, 2, 719, 720, 7, 99, 2, 2, 720, 98, 3, 2, 2, 2, 721, 722, 7, 104, 2, 2, 722, 723, 7, 110, 2, 2, 723, 724, 7, 113, 2, 2, 724, 725, 7, 99, 2, 2, 725, 726, 7, 118, 2, 2, 726, 100, 3, 2, 2, 2, 727, 728, 7, 102, 2, 2, 728, 729, 7, 103, 2, 2, 729, 730, 7, 101, 2, 2, 730, 731, 7, 107, 2, 2, 731, 732, 7, 111, 2, 2, 732, 733, 7, 99, 2, 2, 733, 734, 7, 110, 2, 2, 734, 102, 3, 2, 2, 2, 735, 736, 7, 102, 2, 2, 736, 737, 7, 99, 2, 2, 737, 738, 7, 118, 2, 2, 738, 739, 7, 103, 2, 2, 739, 104, 3, 2, 2, 2, 740, 741, 7, 102, 2, 2, 741, 742, 7, 99, 2, 2, 742, 743, 7, 118, 2, 2, 743, 744, 7, 103, 2, 2, 744, 745, 7, 118, 2, 2, 745, 746, 7, 107, 2, 2, 746, 747, 7, 111, 2, 2, 747, 748, 7, 103, 2, 2, 748, 106, 3, 2, 2, 2, 749, 750, 7, 101, 2, 2, 750, 751, 7, 116, 2, 2, 751, 752, 7, 103, 2, 2, 752, 753, 7, 99, 2, 2, 753, 754, 7, 118, 2, 2, 754, 755, 7, 103, 2, 2, 755, 756, 7, 97, 2, 2, 756, 757, 7, 118, 2, 2, 757, 758, 7, 107, 2, 2, 758, 759, 7, 111, 2, 2, 759, 760, 7, 103, 2, 2, 760, 108, 3, 2, 2, 2, 761, 762, 7, 119, 2, 2, 762, 763, 7, 114, 2, 2, 763, 764, 7, 102, 2, 2, 764, 765, 7, 99, 2, 2, 765, 766, 7, 118, 2, 2, 766, 767, 7, 103, 2, 2, 767, 768, 7, 97, 2, 2, 768, 769, 7, 118, 2, 2, 769, 770, 7, 107, 2, 2, 770, 771, 7, 111, 2, 2, 771, 772, 7, 103, 2, 2, 772, 110, 3, 2, 2, 2, 773, 774, 7, 107, 2, 2, 774, 775, 7, 111, 2, 2, 775, 776, 7, 99, 2, 2, 776, 777, 7, 105, 2, 2, 777, 778, 7, 103, 2, 2, 778, 112, 3, 2, 2, 2, 779, 780, 7, 104, 2, 2, 780, 781, 7, 107, 2, 2, 781, 782, 7, 110, 2, 2, 782, 783, 7, 103, 2, 2, 783, 114, 3, 2, 2, 2, 784, 785, 7, 104, 2, 2, 785, 786, 7, 107, 2, 2, 786, 787, 7, 110, 2, 2, 787, 788, 7, 103, 2, 2, 788, 789, 7, 116, 2, 2, 789, 790, 7, 97, 2, 2, 790, 791, 7, 107, 2, 2, 791, 792, 7, 111, 2, 2, 792, 793, 7, 99, 2, 2, 793, 794, 7, 105, 2, 2, 794, 795, 7, 103, 2, 2, 795, 116, 3, 2, 2, 2, 796, 797, 7, 104, 2, 2, 797, 798, 7, 107, 2, 2, 798, 799, 7, 110, 2, 2, 799, 800, 7, 103, 2, 2, 800, 801, 7, 116, 2, 2, 801, 802, 7, 97, 2, 2, 802, 803, 7, 104, 2, 2, 803, 804, 7, 107, 2, 2, 804, 805, 7, 110, 2, 2, 805, 806, 7, 103, 2, 2, 806, 118, 3, 2, 2, 2, 807, 808, 7, 104, 2, 2, 808, 809, 7, 107, 2, 2, 809, 810, 7, 110, 2, 2, 810, 811, 7, 103, 2, 2, 811, 812, 7, 116, 2, 2, 812, 813, 7, 97, 2, 2, 813, 814, 7, 104, 2, 2, 814, 815, 7, 113, 2, 2, 815, 816, 7, 110, 2, 2, 816, 817, 7, 102, 2, 2, 817, 818, 7, 103, 2, 2, 818, 819, 7, 116, 2, 2, 819, 120, 3, 2, 2, 2, 820, 821, 7, 104, 2, 2, 821, 822, 7, 107, 2, 2, 822, 823, 7, 110, 2, 2, 823, 824, 7, 103, 2, 2, 824, 825, 7, 116, 2, 2, 825, 826, 7, 97, 2, 2, 826, 827, 7, 107, 2, 2, 827, 828, 7, 111, 2, 2, 828, 829, 7, 99, 2, 2, 829, 830, 7, 105, 2, 2, 830, 831, 7, 103, 2, 2, 831, 832, 7, 97, 2, 2, 832, 833, 7, 104, 2, 2, 833, 834, 7, 113, 2, 2, 834, 835, 7, 110, 2, 2, 835, 836, 7, 102, 2, 2, 836, 837, 7, 103, 2, 2, 837, 838, 7, 116, 2, 2, 838, 122, 3, 2, 2, 2, 839, 840, 7, 117, 2, 2, 840, 841, 7, 118, 2, 2, 841, 842, 7, 116, 2, 2, 842, 124, 3, 2, 2, 2, 843, 844, 7, 107, 2, 2, 844, 845, 7, 112, 2, 2, 845, 846, 7, 118, 2, 2, 846, 126, 3, 2, 2, 2, 847, 848, 7, 117, 2, 2, 848, 849, 7, 110, 2, 2, 849, 850, 7, 119, 2, 2, 850, 851, 7, 105, 2, 2, 851, 128, 3, 2, 2, 2, 852, 853, 7, 100, 2, 2, 853, 854, 7, 113, 2, 2, 854, 855, 7, 113, 2, 2, 855, 856, 7, 110, 2, 2, 856, 130, 3, 2, 2, 2, 857, 858, 7, 113, 2, 2, 858, 859, 7, 112, 2, 2, 859, 860, 7, 103, 2, 2, 860, 132, 3, 2, 2, 2, 861, 862, 7, 113, 2, 2, 862, 863, 7, 112, 2, 2, 863, 864, 7, 103, 2, 2, 864, 865, 7, 52, 2, 2, 865, 866, 7, 113, 2, 2, 866, 867, 7, 112, 2, 2, 867, 868, 7, 103, 2, 2, 868, 134, 3, 2, 2, 2, 869, 870, 7, 111, 2, 2, 870, 871, 7, 99, 2, 2, 871, 872, 7, 112, 2, 2, 872, 873, 7, 123, 2, 2, 873, 136, 3, 2, 2, 2, 874, 875, 7, 101, 2, 2, 875, 876, 7, 106, 2, 2, 876, 877, 7, 113, 2, 2, 877, 878, 7, 107, 2, 2, 878, 879, 7, 101, 2, 2, 879, 880, 7, 103, 2, 2, 880, 881, 7, 117, 2, 2, 881, 138, 3, 2, 2, 2, 882, 883, 7, 118, 2, 2, 883, 884, 7, 106, 2, 2, 884, 885, 7, 103, 2, 2, 885, 886, 7, 111, 2, 2, 886, 887, 7, 103, 2, 2, 887, 140, 3, 2, 2, 2, 888, 889, 7, 107, 2, 2, 889, 890, 7, 112, 2, 2, 890, 891, 7, 117, 2, 2, 891, 892, 7, 118, 2, 2, 892, 893, 7, 99, 2, 2, 893, 894, 7, 110, 2, 2, 894, 895, 7, 110, 2, 2, 895, 142, 3, 2, 2, 2, 896, 897, 7, 106, 2, 2, 897, 898, 7, 103, 2, 2, 898, 899, 7, 99, 2, 2, 899, 900, 7, 102, 2, 2, 900, 901, 7, 103, 2, 2, 901, 902, 7, 116, 2, 2, 902, 144, 3, 2, 2, 2, 903, 904, 7, 117, 2, 2, 904, 905, 7, 103, 2, 2, 905, 906, 7, 116, 2, 2, 906, 907, 7, 120, 2, 2, 907, 908, 7, 107, 2, 2, 908, 909, 7, 101, 2, 2, 909, 910, 7, 103, 2, 2, 910, 911, 7, 117, 2, 2, 911, 146, 3, 2, 2, 2, 912, 913, 7, 117, 2, 2, 913, 914, 7, 103, 2, 2, 914, 915, 7, 110, 2, 2, 915, 916, 7, 103, 2, 2, 916, 917, 7, 112, 2, 2, 917, 918, 7, 107, 2, 2, 918, 919, 7, 119, 2, 2, 919, 920, 7, 111, 2, 2, 920, 921, 7, 97, 2, 2, 921, 922, 7, 114, 2, 2, 922, 923, 7, 123, 2, 2, 923, 924, 7, 118, 2, 2, 924, 925, 7, 103, 2, 2, 925, 926, 7, 117, 2, 2, 926, 927, 7, 118, 2, 2, 927, 148, 3, 2, 2, 2, 928, 929, 7, 101, 2, 2, 929, 930, 7, 106, 2, 2, 930, 931, 7, 107, 2, 2, 931, 932, 7, 110, 2, 2, 932, 933, 7, 102, 2, 2, 933, 150, 3, 2, 2, 2, 934, 935, 7, 104, 2, 2, 935, 936, 7, 107, 2, 2, 936, 937, 7, 110, 2, 2, 937, 938, 7, 118, 2, 2, 938, 939, 7, 103, 2, 2, 939, 940, 7, 116, 2, 2, 940, 941, 7, 97, 2, 2, 941, 942, 7, 113, 2, 2, 942, 943, 7, 119, 2, 2, 943, 944, 7, 118, 2, 2, 944, 152, 3, 2, 2, 2, 945, 946, 7, 104, 2, 2, 946, 947, 7, 107, 2, 2, 947, 948, 7, 110, 2, 2, 948, 949, 7, 118, 2, 2, 949, 950, 7, 103, 2, 2, 950, 951, 7, 116, 2, 2, 951, 952, 7, 97, 2, 2, 952, 953, 7, 107, 2, 2, 953, 954, 7, 112, 2, 2, 954, 154, 3, 2, 2, 2, 955, 956, 7, 114, 2, 2, 956, 957, 7, 99, 2, 2, 957, 958, 7, 105, 2, 2, 958, 959, 7, 103, 2, 2, 959, 156, 3, 2, 2, 2, 960, 961, 7, 110, 2, 2, 961, 962, 7, 107, 2, 2, 962, 963, 7, 112, 2, 2, 963, 964, 7, 109, 2, 2, 964, 965, 7, 97, 2, 2, 965, 966, 7, 117, 2, 2, 966, 967, 7, 119, 2, 2, 967, 968, 7, 104, 2, 2, 968, 969, 7, 104, 2, 2, 969, 970, 7, 107, 2, 2, 970, 971, 7, 122, 2, 2, 971, 158, 3, 2, 2, 2, 972, 973, 7, 119, 2, 2, 973, 974, 7, 116, 2, 2, 974, 975, 7, 110, 2, 2, 975, 976, 7, 97, 2, 2, 976, 977, 7, 114, 2, 2, 977, 978, 7, 116, 2, 2, 978, 979, 7, 103, 2, 2, 979, 980, 7, 104, 2, 2, 980, 981, 7, 107, 2, 2, 981, 982, 7, 122, 2, 2, 982, 160, 3, 2, 2, 2, 983, 984, 7, 101, 2, 2, 984, 985, 7, 99, 2, 2, 985, 986, 7, 112, 2, 2, 986, 987, 7, 97, 2, 2, 987, 988, 7, 103, 2, 2, 988, 989, 7, 102, 2, 2, 989, 990, 7, 107, 2, 2, 990, 991, 7, 118, 2, 2, 991, 162, 3, 2, 2, 2, 992, 993, 7, 113, 2, 2, 993, 994, 7, 100, 2, 2, 994, 995, 7, 108, 2, 2, 995, 996, 7, 103, 2, 2, 996, 997, 7, 101, 2, 2, 997, 998, 7, 118, 2, 2, 998, 999, 7, 97, 2, 2, 999, 1000, 7, 103, 2, 2, 1000, 1001, 7, 122, 2, 2, 1001, 1002, 7, 114, 2, 2, 1002, 1003, 7, 116, 2, 2, 1003, 164, 3, 2, 2, 2, 1004, 1005, 7, 100, 2, 2, 1005, 1006, 7, 110, 2, 2, 1006, 1007, 7, 113, 2, 2, 1007, 1008, 7, 101, 2, 2, 1008, 1009, 7, 109, 2, 2, 1009, 166, 3, 2, 2, 2, 1010, 1011, 7, 107, 2, 2, 1011, 1012, 7, 118, 2, 2, 1012, 1013, 7, 103, 2, 2, 1013, 1014, 7, 111, 2, 2, 1014, 1015, 7, 97, 2, 2, 1015, 1016, 7, 112, 2, 2, 1016, 1017, 7, 99, 2, 2, 1017, 1018, 7, 111, 2, 2, 1018, 1019, 7, 103, 2, 2, 1019, 168, 3, 2, 2, 2, 1020, 1021, 7, 114, 2, 2, 1021, 1022, 7, 109, 2, 2, 1022, 1023, 7, 97, 2, 2, 1023, 1024, 7, 114, 2, 2, 1024, 1025, 7, 99, 2, 2, 1025, 1026, 7, 116, 2, 2, 1026, 1027, 7, 99, 2, 2, 1027, 1028, 7, 111, 2, 2, 1028, 170, 3, 2, 2, 2, 1029, 1030, 7, 110, 2, 2, 1030, 1031, 7, 107, 2, 2, 1031, 1032, 7, 117, 2, 2, 1032, 1033, 7, 118, 2, 2, 1033, 1034, 7, 97, 2, 2, 1034, 1035, 7, 104, 2, 2, 1035, 1036, 7, 107, 2, 2, 1036, 1037, 7, 103, 2, 2, 1037, 1038, 7, 110, 2, 2, 1038, 1039, 7, 102, 2, 2, 1039, 1040, 7, 117, 2, 2, 1040, 172, 3, 2, 2, 2, 1041, 1042, 7, 102, 2, 2, 1042, 1043, 7, 103, 2, 2, 1043, 1044, 7, 110, 2, 2, 1044, 1045, 7, 103, 2, 2, 1045, 1046, 7, 118, 2, 2, 1046, 1047, 7, 103, 2, 2, 1047, 174, 3, 2, 2, 2, 1048, 1049, 7, 103, 2, 2, 1049, 1050, 7, 102, 2, 2, 1050, 1051, 7, 107, 2, 2, 1051, 1052, 7, 118, 2, 2, 1052, 176, 3, 2, 2, 2, 1053, 1054, 7, 101, 2, 2, 1054, 1055, 7, 116, 2, 2, 1055, 1056, 7, 103, 2, 2, 1056, 1057, 7, 99, 2, 2, 1057, 1058, 7, 118, 2, 2, 1058, 1059, 7, 103, 2, 2, 1059, 178, 3, 2, 2, 2, 1060, 1061, 7, 102, 2, 2, 1061, 1062, 7, 103, 2, 2, 1062, 1063, 7, 118, 2, 2, 1063, 1064, 7, 99, 2, 2, 1064, 1065, 7, 107, 2, 2, 1065, 1066, 7, 110, 2, 2, 1066, 180, 3, 2, 2, 2, 1067, 1068, 7, 117, 2, 2, 1068, 1069, 7, 109, 2, 2, 1069, 1070, 7, 107, 2, 2, 1070, 1071, 7, 114, 2, 2, 1071, 182, 3, 2, 2, 2, 1072, 1073, 7, 104, 2, 2, 1073, 1074, 7, 116, 2, 2, 1074, 1075, 7, 113, 2, 2, 1075, 1076, 7, 111, 2, 2, 1076, 184, 3, 2, 2, 2, 1077, 1078, 7, 45, 2, 2, 1078, 1079, 7, 114, 2, 2, 1079, 1080, 7, 113, 2, 2, 1080, 1081, 7, 110, 2, 2, 1081, 1082, 7, 123, 2, 2, 1082, 1083, 7, 111, 2, 2, 1083, 1084, 7, 113, 2, 2, 1084, 1085, 7, 116, 2, 2, 1085, 1086, 7, 114, 2, 2, 1086, 1087, 7, 106, 2, 2, 1087, 1088, 7, 107, 2, 2, 1088, 1089, 7, 101, 2, 2, 1089, 1090, 7, 97, 2, 2, 1090, 1091, 7, 110, 2, 2, 1091, 1092, 7, 107, 2, 2, 1092, 1093, 7, 117, 2, 2, 1093, 1094, 7, 118, 2, 2, 1094, 186, 3, 2, 2, 2, 1095, 1096, 7, 101, 2, 2, 1096, 1097, 7, 117, 2, 2, 1097, 1098, 7, 117, 2, 2, 1098, 188, 3, 2, 2, 2, 1099, 1100, 7, 108, 2, 2, 1100, 1101, 7, 117, 2, 2, 1101, 190, 3, 2, 2, 2, 1102, 1103, 7, 118, 2, 2, 1103, 1104, 7, 99, 2, 2, 1104, 1105, 7, 100, 2, 2, 1105, 1106, 7, 119, 2, 2, 1106, 1107, 7, 110, 2, 2, 1107, 1108, 7, 99, 2, 2, 1108, 1109, 7, 116, 2, 2, 1109, 192, 3, 2, 2, 2, 1110, 1111, 7, 117, 2, 2, 1111, 1112, 7, 118, 2, 2, 1112, 1113, 7, 99, 2, 2, 1113, 1114, 7, 101, 2, 2, 1114, 1115, 7, 109, 2, 2, 1115, 1116, 7, 103, 2, 2, 1116, 1117, 7, 102, 2, 2, 1117, 194, 3, 2, 2, 2, 1118, 1119, 7, 114, 2, 2, 1119, 1120, 7, 113, 2, 2, 1120, 1121, 7, 110, 2, 2, 1121, 1122, 7, 123, 2, 2, 1122, 1123, 7, 111, 2, 2, 1123, 1124, 7, 113, 2, 2, 1124, 1125, 7, 116, 2, 2, 1125, 1126, 7, 114, 2, 2, 1126, 1127, 7, 106, 2, 2, 1127, 1128, 7, 107, 2, 2, 1128, 1129, 7, 101, 2, 2, 1129, 196, 3, 2, 2, 2, 1130, 1131, 7, 107, 2, 2, 1131, 1132, 7, 112, 2, 2, 1132, 1133, 7, 110, 2, 2, 1133, 1134, 7, 107, 2, 2, 1134, 1135, 7, 112, 2, 2, 1135, 1136, 7, 103, 2, 2, 1136, 198, 3, 2, 2, 2, 1137, 1138, 7, 118, 2, 2, 1138, 1139, 7, 123, 2, 2, 1139, 1140, 7, 114, 2, 2, 1140, 1141, 7, 103, 2, 2, 1141, 200, 3, 2, 2, 2, 1142, 1143, 7, 119, 2, 2, 1143, 1144, 7, 117, 2, 2, 1144, 1145, 7, 103, 2, 2, 1145, 1146, 7, 116, 2, 2, 1146, 1147, 7, 97, 2, 2, 1147, 1148, 7, 104, 2, 2, 1148, 1149, 7, 107, 2, 2, 1149, 1150, 7, 103, 2, 2, 1150, 1151, 7, 110, 2, 2, 1151, 1152, 7, 102, 2, 2, 1152, 202, 3, 2, 2, 2, 1153, 1154, 7, 99, 2, 2, 1154, 1155, 7, 112, 2, 2, 1155, 1156, 7, 112, 2, 2, 1156, 1157, 7, 113, 2, 2, 1157, 1158, 7, 118, 2, 2, 1158, 1159, 7, 99, 2, 2, 1159, 1160, 7, 118, 2, 2, 1160, 1161, 7, 103, 2, 2, 1161, 204, 3, 2, 2, 2, 1162, 1163, 7, 113, 2, 2, 1163, 1164, 7, 112, 2, 2, 1164, 1165, 7, 97, 2, 2, 1165, 1166, 7, 101, 2, 2, 1166, 1167, 7, 116, 2, 2, 1167, 1168, 7, 103, 2, 2, 1168, 1169, 7, 99, 2, 2, 1169, 1170, 7, 118, 2, 2, 1170, 1171, 7, 103, 2, 2, 1171, 206, 3, 2, 2, 2, 1172, 1173, 7, 115, 2, 2, 1173, 1174, 7, 119, 2, 2, 1174, 1175, 7, 103, 2, 2, 1175, 1176, 7, 116, 2, 2, 1176, 1177, 7, 123, 2, 2, 1177, 208, 3, 2, 2, 2, 1178, 1179, 7, 99, 2, 2, 1179, 1180, 7, 119, 2, 2, 1180, 1181, 7, 118, 2, 2, 1181, 1182, 7, 106, 2, 2, 1182, 210, 3, 2, 2, 2, 1183, 1184, 7, 101, 2, 2, 1184, 1185, 7, 113, 2, 2, 1185, 1186, 7, 119, 2, 2, 1186, 1187, 7, 112, 2, 2, 1187, 1188, 7, 118, 2, 2, 1188, 212, 3, 2, 2, 2, 1189, 1190, 7, 107, 2, 2, 1190, 1191, 7, 51, 2, 2, 1191, 1192, 7, 58, 2, 2, 1192, 1193, 7, 112, 2, 2, 1193, 214, 3, 2, 2, 2, 1194, 1195, 7, 103, 2, 2, 1195, 1196, 7, 122, 2, 2, 1196, 1197, 7, 118, 2, 2, 1197, 1198, 7, 103, 2, 2, 1198, 1199, 7, 112, 2, 2, 1199, 1200, 7, 117, 2, 2, 1200, 1201, 7, 107, 2, 2, 1201, 1202, 7, 113, 2, 2, 1202, 1203, 7, 112, 2, 2, 1203, 216, 3, 2, 2, 2, 1204, 1205, 7, 118, 2, 2, 1205, 1206, 7, 99, 2, 2, 1206, 1207, 7, 100, 2, 2, 1207, 1208, 7, 117, 2, 2, 1208, 218, 3, 2, 2, 2, 1209, 1210, 7, 110, 2, 2, 1210, 1211, 7, 107, 2, 2, 1211, 1212, 7, 117, 2, 2, 1212, 1213, 7, 118, 2, 2, 1213, 220, 3, 2, 2, 2, 1214, 1215, 7, 116, 2, 2, 1215, 1216, 7, 103, 2, 2, 1216, 1217, 7, 99, 2, 2, 1217, 1218, 7, 102, 2, 2, 1218, 1219, 7, 97, 2, 2, 1219, 1220, 7, 113, 2, 2, 1220, 1221, 7, 112, 2, 2, 1221, 1222, 7, 110, 2, 2, 1222, 1223, 7, 123, 2, 2, 1223, 222, 3, 2, 2, 2, 1224, 1225, 7, 110, 2, 2, 1225, 1226, 7, 107, 2, 2, 1226, 1227, 7, 117, 2, 2, 1227, 1228, 7, 118, 2, 2, 1228, 1229, 7, 97, 2, 2, 1229, 1230, 7, 103, 2, 2, 1230, 1231, 7, 102, 2, 2, 1231, 1232, 7, 107, 2, 2, 1232, 1233, 7, 118, 2, 2, 1233, 1234, 7, 99, 2, 2, 1234, 1235, 7, 100, 2, 2, 1235, 1236, 7, 110, 2, 2, 1236, 1237, 7, 103, 2, 2, 1237, 224, 3, 2, 2, 2, 1238, 1239, 7, 110, 2, 2, 1239, 1240, 7, 107, 2, 2, 1240, 1241, 7, 117, 2, 2, 1241, 1242, 7, 118, 2, 2, 1242, 1243, 7, 97, 2, 2, 1243, 1244, 7, 104, 2, 2, 1244, 1245, 7, 107, 2, 2, 1245, 1246, 7, 110, 2, 2, 1246, 1247, 7, 118, 2, 2, 1247, 1248, 7, 103, 2, 2, 1248, 1249, 7, 116, 2, 2, 1249, 226, 3, 2, 2, 2, 1250, 1251, 7, 110, 2, 2, 1251, 1252, 7, 107, 2, 2, 1252, 1253, 7, 117, 2, 2, 1253, 1254, 7, 118, 2, 2, 1254, 1255, 7, 97, 2, 2, 1255, 1256, 7, 117, 2, 2, 1256, 1257, 7, 103, 2, 2, 1257, 1258, 7, 99, 2, 2, 1258, 1259, 7, 116, 2, 2, 1259, 1260, 7, 101, 2, 2, 1260, 1261, 7, 106, 2, 2, 1261, 228, 3, 2, 2, 2, 1262, 1263, 7, 104, 2, 2, 1263, 1264, 7, 107, 2, 2, 1264, 1265, 7, 103, 2, 2, 1265, 1266, 7, 110, 2, 2, 1266, 1267, 7, 102, 2, 2, 1267, 1268, 7, 117, 2, 2, 1268, 230, 3, 2, 2, 2, 1269, 1270, 7, 107, 2, 2, 1270, 1271, 7, 111, 2, 2, 1271, 1272, 7, 114, 2, 2, 1272, 1273, 7, 113, 2, 2, 1273, 1274, 7, 116, 2, 2, 1274, 1275, 7, 118, 2, 2, 1275, 232, 3, 2, 2, 2, 1276, 1277, 7, 99, 2, 2, 1277, 1278, 7, 117, 2, 2, 1278, 234, 3, 2, 2, 2, 1279, 1284, 7, 116, 2, 2, 1280, 1281, 7, 116, 2, 2, 1281, 1284, 7, 121, 2, 2, 1282, 1284, 7, 121, 2, 2, 1283, 1279, 3, 2, 2, 2, 1283, 1280, 3, 2, 2, 2, 1283, 1282, 3, 2, 2, 2, 1284, 236, 3, 2, 2, 2, 1285, 1286, 7, 118, 2, 2, 1286, 1287, 7, 116, 2, 2, 1287, 1288, 7, 119, 2, 2, 1288, 1295, 7, 103, 2, 2, 1289, 1290, 7, 104, 2, 2, 1290, 1291, 7, 99, 2, 2, 1291, 1292, 7, 110, 2, 2, 1292, 1293, 7, 117, 2, 2, 1293, 1295, 7, 103, 2, 2, 1294, 1285, 3, 2, 2, 2, 1294, 1289, 3, 2, 2, 2, 1295, 238, 3, 2, 2, 2, 1296, 1297, 11, 2, 2, 2, 1297, 240, 3, 2, 2, 2, 1298, 1300, 7, 15, 2, 2, 1299, 1298, 3, 2, 2, 2, 1299, 1300, 3, 2, 2, 2, 1300, 1301, 3, 2, 2, 2, 1301, 1304, 7, 12, 2, 2, 1302, 1304, 7, 15, 2, 2, 1303, 1299, 3, 2, 2, 2, 1303, 1302, 3, 2, 2, 2, 1304, 242, 3, 2, 2, 2, 1305, 1309, 9, 2, 2, 2, 1306, 1308, 9, 3, 2, 2, 1307, 1306, 3, 2, 2, 2, 1308, 1311, 3, 2, 2, 2, 1309, 1307, 3, 2, 2, 2, 1309, 1310, 3, 2, 2, 2, 1310, 244, 3, 2, 2, 2, 1311, 1309, 3, 2, 2, 2, 1312, 1316, 9, 4, 2, 2, 1313, 1315, 9, 5, 2, 2, 1314, 1313, 3, 2, 2, 2, 1315, 1318, 3, 2, 2, 2, 1316, 1314, 3, 2, 2, 2, 1316, 1317, 3, 2, 2, 2, 1317, 246, 3, 2, 2, 2, 1318, 1316, 3, 2, 2, 2, 1319, 1320, 5, 245, 122, 2, 1320, 1321, 7, 122, 2, 2, 1321, 1322, 5, 245, 122, 2, 1322, 248, 3, 2, 2, 2, 1323, 1324, 7, 62, 2, 2, 1324, 250, 3, 2, 2, 2, 1325, 1326, 7, 64, 2, 2, 1326, 252, 3, 2, 2, 2, 1327, 1328, 7, 60, 2, 2, 1328, 254, 3, 2, 2, 2, 1329, 1330, 7, 96, 2, 2, 1330, 256, 3, 2, 2, 2, 1331, 1332, 7, 42, 2, 2, 1332, 258, 3, 2, 2, 2, 1333, 1334, 7, 43, 2, 2, 1334, 260, 3, 2, 2, 2, 1335, 1336, 7, 93, 2, 2, 1336, 262, 3, 2, 2, 2, 1337, 1338, 7, 95, 2, 2, 1338, 264, 3, 2, 2, 2, 1339, 1340, 7, 65, 2, 2, 1340, 266, 3, 2, 2, 2, 1341, 1342, 7, 97, 2, 2, 1342, 268, 3, 2, 2, 2, 1343, 1344, 7, 47, 2, 2, 1344, 270, 3, 2, 2, 2, 1345, 1346, 7, 46, 2, 2, 1346, 272, 3, 2, 2, 2, 1347, 1348, 7, 48, 2, 2, 1348, 274, 3, 2, 2, 2, 1349, 1350, 7, 37, 2, 2, 1350, 276, 3, 2, 2, 2, 1351, 1352, 7, 49, 2, 2, 1352, 278, 3, 2, 2, 2, 1353, 1354, 7, 63, 2, 2, 1354, 280, 3, 2, 2, 2, 1355, 1356, 7, 38, 2, 2, 1356, 282, 3, 2, 2, 2, 1357, 1358, 7, 40, 2, 2, 1358, 284, 3, 2, 2, 2, 1359, 1360, 7, 35, 2, 2, 1360, 286, 3, 2, 2, 2, 1361, 1362, 7, 44, 2, 2, 1362, 288, 3, 2, 2, 2, 1363, 1364, 7, 128, 2, 2, 1364, 290, 3, 2, 2, 2, 1365, 1366, 7, 126, 2, 2, 1366, 292, 3, 2, 2, 2, 1367, 1375, 7, 36, 2, 2, 1368, 1374, 10, 6, 2, 2, 1369, 1370, 7, 94, 2, 2, 1370, 1374, 7, 94, 2, 2, 1371, 1372, 7, 94, 2, 2, 1372, 1374, 7, 36, 2, 2, 1373, 1368, 3, 2, 2, 2, 1373, 1369, 3, 2, 2, 2, 1373, 1371, 3, 2, 2, 2, 1374, 1377, 3, 2, 2, 2, 1375, 1373, 3, 2, 2, 2, 1375, 1376, 3, 2, 2, 2, 1376, 1378, 3, 2, 2, 2, 1377, 1375, 3, 2, 2, 2, 1378, 1379, 7, 36, 2, 2, 1379, 294, 3, 2, 2, 2, 1380, 1388, 7, 41, 2, 2, 1381, 1387, 10, 7, 2, 2, 1382, 1383, 7, 94, 2, 2, 1383, 1387, 7, 94, 2, 2, 1384, 1385, 7, 94, 2, 2, 1385, 1387, 7, 41, 2, 2, 1386, 1381, 3, 2, 2, 2, 1386, 1382, 3, 2, 2, 2, 1386, 1384, 3, 2, 2, 2, 1387, 1390, 3, 2, 2, 2, 1388, 1386, 3, 2, 2, 2, 1388, 1389, 3, 2, 2, 2, 1389, 1391, 3, 2, 2, 2, 1390, 1388, 3, 2, 2, 2, 1391, 1392, 7, 41, 2, 2, 1392, 296, 3, 2, 2, 2, 1393, 1394, 7, 49, 2, 2, 1394, 1395, 7, 49, 2, 2, 1395, 1396, 3, 2, 2, 2, 1396, 1397, 5, 299, 149, 2, 1397, 1398, 3, 2, 2, 2, 1398, 1399, 8, 148, 2, 2, 1399, 298, 3, 2, 2, 2, 1400, 1402, 11, 2, 2, 2, 1401, 1400, 3, 2, 2, 2, 1402, 1405, 3, 2, 2, 2, 1403, 1404, 3, 2, 2, 2, 1403, 1401, 3, 2, 2, 2, 1404, 1408, 3, 2, 2, 2, 1405, 1403, 3, 2, 2, 2, 1406, 1409, 5, 241, 120, 2, 1407, 1409, 7, 2, 2, 3, 1408, 1406, 3, 2, 2, 2, 1408, 1407, 3, 2, 2, 2, 1409, 300, 3, 2, 2, 2, 1410, 1411, 7, 49, 2, 2, 1411, 1412, 7, 44, 2, 2, 1412, 1416, 3, 2, 2, 2, 1413, 1415, 11, 2, 2, 2, 1414, 1413, 3, 2, 2, 2, 1415, 1418, 3, 2, 2, 2, 1416, 1417, 3, 2, 2, 2, 1416, 1414, 3, 2, 2, 2, 1417, 1419, 3, 2, 2, 2, 1418, 1416, 3, 2, 2, 2, 1419, 1420, 7, 44, 2, 2, 1420, 1421, 7, 49, 2, 2, 1421, 1422, 3, 2, 2, 2, 1422, 1423, 8, 150, 2, 2, 1423, 302, 3, 2, 2, 2, 1424, 1425, 9, 8, 2, 2, 1425, 304, 3, 2, 2, 2, 1426, 1427, 7, 34, 2, 2, 1427, 1428, 3, 2, 2, 2, 1428, 1429, 8, 152, 2, 2, 1429, 306, 3, 2, 2, 2, 1430, 1431, 7, 62, 2, 2, 1431, 1435, 7, 62, 2, 2, 1432, 1433, 7, 62, 2, 2, 1433, 1435, 7, 66, 2, 2, 1434, 1430, 3, 2, 2, 2, 1434, 1432, 3, 2, 2, 2, 1435, 1436, 3, 2, 2, 2, 1436, 1437, 8, 153, 3, 2, 1437, 308, 3, 2, 2, 2, 1438, 1439, 7, 60, 2, 2, 1439, 1440, 7, 63, 2, 2, 1440, 1444, 3, 2, 2, 2, 1441, 1443, 5, 305, 152, 2, 1442, 1441, 3, 2, 2, 2, 1443, 1446, 3, 2, 2, 2, 1444, 1442, 3, 2, 2, 2, 1444, 1445, 3, 2, 2, 2, 1445, 1447, 3, 2, 2, 2, 1446, 1444, 3, 2, 2, 2, 1447, 1448, 8, 154, 4, 2, 1448, 310, 3, 2, 2, 2, 1449, 1450, 7, 66, 2, 2, 1450, 1451, 7, 63, 2, 2, 1451, 1455, 3, 2, 2, 2, 1452, 1454, 5, 305, 152, 2, 1453, 1452, 3, 2, 2, 2, 1454, 1457, 3, 2, 2, 2, 1455, 1453, 3, 2, 2, 2, 1455, 1456, 3, 2, 2, 2, 1456, 1458, 3, 2, 2, 2, 1457, 1455, 3, 2, 2, 2, 1458, 1459, 8, 155, 4, 2, 1459, 312, 3, 2, 2, 2, 1460, 1465, 7, 125, 2, 2, 1461, 1464, 5, 313, 156, 2, 1462, 1464, 10, 9, 2, 2, 1463, 1461, 3, 2, 2, 2, 1463, 1462, 3, 2, 2, 2, 1464, 1467, 3, 2, 2, 2, 1465, 1463, 3, 2, 2, 2, 1465, 1466, 3, 2, 2, 2, 1466, 1468, 3, 2, 2, 2, 1467, 1465, 3, 2, 2, 2, 1468, 1469, 7, 127, 2, 2, 1469, 314, 3, 2, 2, 2, 1470, 1471, 5, 239, 119, 2, 1471, 316, 3, 2, 2, 2, 1472, 1473, 7, 12, 2, 2, 1473, 1474, 3, 2, 2, 2, 1474, 1475, 8, 158, 5, 2, 1475, 1476, 8, 158, 6, 2, 1476, 318, 3, 2, 2, 2, 1477, 1479, 10, 10, 2, 2, 1478, 1477, 3, 2, 2, 2, 1479, 1480, 3, 2, 2, 2, 1480, 1478, 3, 2, 2, 2, 1480, 1481, 3, 2, 2, 2, 1481, 1482, 3, 2, 2, 2, 1482, 1483, 8, 159, 6, 2, 1483, 320, 3, 2, 2, 2, 1484, 1485, 5, 239, 119, 2, 1485, 322, 3, 2, 2, 2, 1486, 1487, 7, 61, 2, 2, 1487, 1488, 3, 2, 2, 2, 1488, 1489, 8, 161, 6, 2, 1489, 324, 3, 2, 2, 2, 1490, 1492, 10, 11, 2, 2, 1491, 1490, 3, 2, 2, 2, 1492, 1493, 3, 2, 2, 2, 1493, 1491, 3, 2, 2, 2, 1493, 1494, 3, 2, 2, 2, 1494, 1495, 3, 2, 2, 2, 1495, 1496, 8, 162, 7, 2, 1496, 326, 3, 2, 2, 2, 1497, 1498, 5, 239, 119, 2, 1498, 328, 3, 2, 2, 2, 25, 2, 3, 4, 1283, 1294, 1299, 1303, 1309, 1316, 1373, 1375, 1386, 1388, 1403, 1408, 1416, 1434, 1444, 1455, 1463, 1465, 1480, 1493, 8, 2, 3, 2, 7, 4, 2, 7, 3, 2, 9, 120, 2, 6, 2, 2, 9, 157, 2] \ No newline at end of file +[3, 24715, 42794, 33075, 47597, 16764, 15335, 30598, 22884, 2, 161, 1495, 8, 1, 8, 1, 8, 1, 4, 2, 9, 2, 4, 3, 9, 3, 4, 4, 9, 4, 4, 5, 9, 5, 4, 6, 9, 6, 4, 7, 9, 7, 4, 8, 9, 8, 4, 9, 9, 9, 4, 10, 9, 10, 4, 11, 9, 11, 4, 12, 9, 12, 4, 13, 9, 13, 4, 14, 9, 14, 4, 15, 9, 15, 4, 16, 9, 16, 4, 17, 9, 17, 4, 18, 9, 18, 4, 19, 9, 19, 4, 20, 9, 20, 4, 21, 9, 21, 4, 22, 9, 22, 4, 23, 9, 23, 4, 24, 9, 24, 4, 25, 9, 25, 4, 26, 9, 26, 4, 27, 9, 27, 4, 28, 9, 28, 4, 29, 9, 29, 4, 30, 9, 30, 4, 31, 9, 31, 4, 32, 9, 32, 4, 33, 9, 33, 4, 34, 9, 34, 4, 35, 9, 35, 4, 36, 9, 36, 4, 37, 9, 37, 4, 38, 9, 38, 4, 39, 9, 39, 4, 40, 9, 40, 4, 41, 9, 41, 4, 42, 9, 42, 4, 43, 9, 43, 4, 44, 9, 44, 4, 45, 9, 45, 4, 46, 9, 46, 4, 47, 9, 47, 4, 48, 9, 48, 4, 49, 9, 49, 4, 50, 9, 50, 4, 51, 9, 51, 4, 52, 9, 52, 4, 53, 9, 53, 4, 54, 9, 54, 4, 55, 9, 55, 4, 56, 9, 56, 4, 57, 9, 57, 4, 58, 9, 58, 4, 59, 9, 59, 4, 60, 9, 60, 4, 61, 9, 61, 4, 62, 9, 62, 4, 63, 9, 63, 4, 64, 9, 64, 4, 65, 9, 65, 4, 66, 9, 66, 4, 67, 9, 67, 4, 68, 9, 68, 4, 69, 9, 69, 4, 70, 9, 70, 4, 71, 9, 71, 4, 72, 9, 72, 4, 73, 9, 73, 4, 74, 9, 74, 4, 75, 9, 75, 4, 76, 9, 76, 4, 77, 9, 77, 4, 78, 9, 78, 4, 79, 9, 79, 4, 80, 9, 80, 4, 81, 9, 81, 4, 82, 9, 82, 4, 83, 9, 83, 4, 84, 9, 84, 4, 85, 9, 85, 4, 86, 9, 86, 4, 87, 9, 87, 4, 88, 9, 88, 4, 89, 9, 89, 4, 90, 9, 90, 4, 91, 9, 91, 4, 92, 9, 92, 4, 93, 9, 93, 4, 94, 9, 94, 4, 95, 9, 95, 4, 96, 9, 96, 4, 97, 9, 97, 4, 98, 9, 98, 4, 99, 9, 99, 4, 100, 9, 100, 4, 101, 9, 101, 4, 102, 9, 102, 4, 103, 9, 103, 4, 104, 9, 104, 4, 105, 9, 105, 4, 106, 9, 106, 4, 107, 9, 107, 4, 108, 9, 108, 4, 109, 9, 109, 4, 110, 9, 110, 4, 111, 9, 111, 4, 112, 9, 112, 4, 113, 9, 113, 4, 114, 9, 114, 4, 115, 9, 115, 4, 116, 9, 116, 4, 117, 9, 117, 4, 118, 9, 118, 4, 119, 9, 119, 4, 120, 9, 120, 4, 121, 9, 121, 4, 122, 9, 122, 4, 123, 9, 123, 4, 124, 9, 124, 4, 125, 9, 125, 4, 126, 9, 126, 4, 127, 9, 127, 4, 128, 9, 128, 4, 129, 9, 129, 4, 130, 9, 130, 4, 131, 9, 131, 4, 132, 9, 132, 4, 133, 9, 133, 4, 134, 9, 134, 4, 135, 9, 135, 4, 136, 9, 136, 4, 137, 9, 137, 4, 138, 9, 138, 4, 139, 9, 139, 4, 140, 9, 140, 4, 141, 9, 141, 4, 142, 9, 142, 4, 143, 9, 143, 4, 144, 9, 144, 4, 145, 9, 145, 4, 146, 9, 146, 4, 147, 9, 147, 4, 148, 9, 148, 4, 149, 9, 149, 4, 150, 9, 150, 4, 151, 9, 151, 4, 152, 9, 152, 4, 153, 9, 153, 4, 154, 9, 154, 4, 155, 9, 155, 4, 156, 9, 156, 4, 157, 9, 157, 4, 158, 9, 158, 4, 159, 9, 159, 4, 160, 9, 160, 4, 161, 9, 161, 4, 162, 9, 162, 4, 163, 9, 163, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 5, 3, 5, 3, 5, 3, 5, 3, 5, 3, 5, 3, 5, 3, 5, 3, 6, 3, 6, 3, 6, 3, 6, 3, 6, 3, 6, 3, 6, 3, 6, 3, 6, 3, 6, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 9, 3, 9, 3, 9, 3, 9, 3, 9, 3, 9, 3, 10, 3, 10, 3, 10, 3, 10, 3, 10, 3, 10, 3, 10, 3, 11, 3, 11, 3, 11, 3, 11, 3, 11, 3, 11, 3, 11, 3, 11, 3, 12, 3, 12, 3, 12, 3, 12, 3, 12, 3, 12, 3, 12, 3, 13, 3, 13, 3, 13, 3, 13, 3, 13, 3, 13, 3, 13, 3, 13, 3, 13, 3, 13, 3, 13, 3, 13, 3, 13, 3, 13, 3, 14, 3, 14, 3, 14, 3, 14, 3, 14, 3, 14, 3, 14, 3, 14, 3, 14, 3, 14, 3, 14, 3, 14, 3, 14, 3, 14, 3, 15, 3, 15, 3, 15, 3, 15, 3, 15, 3, 15, 3, 15, 3, 16, 3, 16, 3, 16, 3, 17, 3, 17, 3, 17, 3, 17, 3, 17, 3, 17, 3, 18, 3, 18, 3, 18, 3, 18, 3, 18, 3, 19, 3, 19, 3, 19, 3, 19, 3, 19, 3, 19, 3, 20, 3, 20, 3, 20, 3, 20, 3, 20, 3, 20, 3, 21, 3, 21, 3, 21, 3, 21, 3, 21, 3, 21, 3, 21, 3, 21, 3, 21, 3, 21, 3, 21, 3, 21, 3, 21, 3, 22, 3, 22, 3, 22, 3, 22, 3, 22, 3, 22, 3, 22, 3, 22, 3, 22, 3, 22, 3, 22, 3, 23, 3, 23, 3, 23, 3, 23, 3, 23, 3, 23, 3, 23, 3, 23, 3, 23, 3, 23, 3, 23, 3, 23, 3, 23, 3, 24, 3, 24, 3, 24, 3, 24, 3, 24, 3, 24, 3, 24, 3, 24, 3, 24, 3, 24, 3, 24, 3, 25, 3, 25, 3, 25, 3, 25, 3, 25, 3, 25, 3, 25, 3, 25, 3, 25, 3, 25, 3, 25, 3, 25, 3, 25, 3, 26, 3, 26, 3, 26, 3, 26, 3, 26, 3, 26, 3, 27, 3, 27, 3, 27, 3, 27, 3, 27, 3, 27, 3, 27, 3, 28, 3, 28, 3, 28, 3, 28, 3, 28, 3, 28, 3, 29, 3, 29, 3, 29, 3, 29, 3, 29, 3, 29, 3, 29, 3, 29, 3, 29, 3, 29, 3, 30, 3, 30, 3, 30, 3, 30, 3, 30, 3, 30, 3, 31, 3, 31, 3, 31, 3, 31, 3, 31, 3, 31, 3, 32, 3, 32, 3, 32, 3, 32, 3, 32, 3, 32, 3, 32, 3, 32, 3, 32, 3, 32, 3, 32, 3, 33, 3, 33, 3, 33, 3, 33, 3, 33, 3, 33, 3, 33, 3, 34, 3, 34, 3, 34, 3, 34, 3, 34, 3, 34, 3, 34, 3, 34, 3, 34, 3, 34, 3, 34, 3, 34, 3, 34, 3, 35, 3, 35, 3, 35, 3, 35, 3, 35, 3, 35, 3, 35, 3, 35, 3, 35, 3, 35, 3, 35, 3, 35, 3, 35, 3, 36, 3, 36, 3, 36, 3, 36, 3, 36, 3, 36, 3, 36, 3, 36, 3, 36, 3, 36, 3, 36, 3, 36, 3, 37, 3, 37, 3, 37, 3, 37, 3, 37, 3, 37, 3, 37, 3, 37, 3, 37, 3, 37, 3, 37, 3, 38, 3, 38, 3, 38, 3, 38, 3, 38, 3, 38, 3, 38, 3, 38, 3, 38, 3, 38, 3, 39, 3, 39, 3, 39, 3, 39, 3, 39, 3, 39, 3, 39, 3, 40, 3, 40, 3, 40, 3, 40, 3, 40, 3, 40, 3, 40, 3, 41, 3, 41, 3, 41, 3, 41, 3, 41, 3, 41, 3, 41, 3, 41, 3, 41, 3, 41, 3, 42, 3, 42, 3, 42, 3, 42, 3, 42, 3, 42, 3, 42, 3, 43, 3, 43, 3, 43, 3, 43, 3, 43, 3, 43, 3, 44, 3, 44, 3, 44, 3, 44, 3, 44, 3, 44, 3, 44, 3, 44, 3, 45, 3, 45, 3, 45, 3, 45, 3, 45, 3, 45, 3, 46, 3, 46, 3, 46, 3, 46, 3, 46, 3, 47, 3, 47, 3, 47, 3, 47, 3, 47, 3, 48, 3, 48, 3, 48, 3, 48, 3, 48, 3, 48, 3, 48, 3, 48, 3, 48, 3, 48, 3, 48, 3, 49, 3, 49, 3, 49, 3, 49, 3, 49, 3, 49, 3, 50, 3, 50, 3, 50, 3, 50, 3, 50, 3, 50, 3, 50, 3, 50, 3, 51, 3, 51, 3, 51, 3, 51, 3, 51, 3, 52, 3, 52, 3, 52, 3, 52, 3, 52, 3, 52, 3, 52, 3, 52, 3, 52, 3, 53, 3, 53, 3, 53, 3, 53, 3, 53, 3, 53, 3, 53, 3, 53, 3, 53, 3, 53, 3, 53, 3, 53, 3, 54, 3, 54, 3, 54, 3, 54, 3, 54, 3, 54, 3, 54, 3, 54, 3, 54, 3, 54, 3, 54, 3, 54, 3, 55, 3, 55, 3, 55, 3, 55, 3, 55, 3, 55, 3, 56, 3, 56, 3, 56, 3, 56, 3, 56, 3, 57, 3, 57, 3, 57, 3, 57, 3, 57, 3, 57, 3, 57, 3, 57, 3, 57, 3, 57, 3, 57, 3, 57, 3, 58, 3, 58, 3, 58, 3, 58, 3, 58, 3, 58, 3, 58, 3, 58, 3, 58, 3, 58, 3, 58, 3, 59, 3, 59, 3, 59, 3, 59, 3, 59, 3, 59, 3, 59, 3, 59, 3, 59, 3, 59, 3, 59, 3, 59, 3, 59, 3, 60, 3, 60, 3, 60, 3, 60, 3, 60, 3, 60, 3, 60, 3, 60, 3, 60, 3, 60, 3, 60, 3, 60, 3, 60, 3, 60, 3, 60, 3, 60, 3, 60, 3, 60, 3, 60, 3, 61, 3, 61, 3, 61, 3, 61, 3, 62, 3, 62, 3, 62, 3, 62, 3, 63, 3, 63, 3, 63, 3, 63, 3, 63, 3, 64, 3, 64, 3, 64, 3, 64, 3, 64, 3, 65, 3, 65, 3, 65, 3, 65, 3, 66, 3, 66, 3, 66, 3, 66, 3, 66, 3, 66, 3, 66, 3, 66, 3, 67, 3, 67, 3, 67, 3, 67, 3, 67, 3, 68, 3, 68, 3, 68, 3, 68, 3, 68, 3, 68, 3, 68, 3, 68, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 70, 3, 70, 3, 70, 3, 70, 3, 70, 3, 70, 3, 70, 3, 70, 3, 71, 3, 71, 3, 71, 3, 71, 3, 71, 3, 71, 3, 71, 3, 72, 3, 72, 3, 72, 3, 72, 3, 72, 3, 72, 3, 72, 3, 72, 3, 72, 3, 73, 3, 73, 3, 73, 3, 73, 3, 73, 3, 73, 3, 73, 3, 73, 3, 73, 3, 73, 3, 73, 3, 73, 3, 73, 3, 73, 3, 73, 3, 73, 3, 74, 3, 74, 3, 74, 3, 74, 3, 74, 3, 74, 3, 75, 3, 75, 3, 75, 3, 75, 3, 75, 3, 75, 3, 75, 3, 75, 3, 75, 3, 75, 3, 75, 3, 76, 3, 76, 3, 76, 3, 76, 3, 76, 3, 76, 3, 76, 3, 76, 3, 76, 3, 76, 3, 77, 3, 77, 3, 77, 3, 77, 3, 77, 3, 78, 3, 78, 3, 78, 3, 78, 3, 78, 3, 78, 3, 78, 3, 78, 3, 78, 3, 78, 3, 78, 3, 78, 3, 79, 3, 79, 3, 79, 3, 79, 3, 79, 3, 79, 3, 79, 3, 79, 3, 79, 3, 79, 3, 79, 3, 80, 3, 80, 3, 80, 3, 80, 3, 80, 3, 80, 3, 80, 3, 80, 3, 80, 3, 81, 3, 81, 3, 81, 3, 81, 3, 81, 3, 81, 3, 81, 3, 81, 3, 81, 3, 81, 3, 81, 3, 81, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 83, 3, 83, 3, 83, 3, 83, 3, 83, 3, 83, 3, 83, 3, 83, 3, 83, 3, 83, 3, 84, 3, 84, 3, 84, 3, 84, 3, 84, 3, 84, 3, 84, 3, 84, 3, 84, 3, 85, 3, 85, 3, 85, 3, 85, 3, 85, 3, 85, 3, 85, 3, 85, 3, 85, 3, 85, 3, 85, 3, 85, 3, 86, 3, 86, 3, 86, 3, 86, 3, 86, 3, 86, 3, 86, 3, 87, 3, 87, 3, 87, 3, 87, 3, 87, 3, 88, 3, 88, 3, 88, 3, 88, 3, 88, 3, 88, 3, 88, 3, 89, 3, 89, 3, 89, 3, 89, 3, 89, 3, 89, 3, 89, 3, 90, 3, 90, 3, 90, 3, 90, 3, 90, 3, 91, 3, 91, 3, 91, 3, 91, 3, 91, 3, 92, 3, 92, 3, 92, 3, 92, 3, 92, 3, 92, 3, 92, 3, 92, 3, 92, 3, 92, 3, 92, 3, 92, 3, 92, 3, 92, 3, 92, 3, 92, 3, 92, 3, 92, 3, 93, 3, 93, 3, 93, 3, 93, 3, 94, 3, 94, 3, 94, 3, 95, 3, 95, 3, 95, 3, 95, 3, 95, 3, 95, 3, 95, 3, 95, 3, 96, 3, 96, 3, 96, 3, 96, 3, 96, 3, 96, 3, 96, 3, 96, 3, 97, 3, 97, 3, 97, 3, 97, 3, 97, 3, 97, 3, 97, 3, 97, 3, 97, 3, 97, 3, 97, 3, 97, 3, 98, 3, 98, 3, 98, 3, 98, 3, 98, 3, 98, 3, 98, 3, 99, 3, 99, 3, 99, 3, 99, 3, 99, 3, 100, 3, 100, 3, 100, 3, 100, 3, 100, 3, 100, 3, 100, 3, 100, 3, 100, 3, 100, 3, 100, 3, 101, 3, 101, 3, 101, 3, 101, 3, 101, 3, 101, 3, 101, 3, 101, 3, 101, 3, 102, 3, 102, 3, 102, 3, 102, 3, 102, 3, 102, 3, 102, 3, 102, 3, 102, 3, 102, 3, 103, 3, 103, 3, 103, 3, 103, 3, 103, 3, 103, 3, 104, 3, 104, 3, 104, 3, 104, 3, 104, 3, 105, 3, 105, 3, 105, 3, 105, 3, 105, 3, 105, 3, 106, 3, 106, 3, 106, 3, 106, 3, 106, 3, 107, 3, 107, 3, 107, 3, 107, 3, 107, 3, 107, 3, 108, 3, 108, 3, 108, 3, 108, 3, 108, 3, 109, 3, 109, 3, 109, 3, 109, 3, 109, 3, 110, 3, 110, 3, 110, 3, 110, 3, 110, 3, 110, 3, 110, 3, 110, 3, 110, 3, 110, 3, 111, 3, 111, 3, 111, 3, 111, 3, 111, 3, 111, 3, 111, 3, 111, 3, 111, 3, 111, 3, 111, 3, 111, 3, 111, 3, 111, 3, 112, 3, 112, 3, 112, 3, 112, 3, 112, 3, 112, 3, 112, 3, 112, 3, 112, 3, 112, 3, 112, 3, 112, 3, 113, 3, 113, 3, 113, 3, 113, 3, 113, 3, 113, 3, 113, 3, 113, 3, 113, 3, 113, 3, 113, 3, 113, 3, 114, 3, 114, 3, 114, 3, 114, 3, 114, 3, 114, 3, 114, 3, 115, 3, 115, 3, 115, 3, 115, 3, 115, 3, 115, 3, 115, 3, 116, 3, 116, 3, 116, 3, 117, 3, 117, 3, 117, 3, 117, 5, 117, 1280, 10, 117, 3, 118, 3, 118, 3, 118, 3, 118, 3, 118, 3, 118, 3, 118, 3, 118, 3, 118, 5, 118, 1291, 10, 118, 3, 119, 3, 119, 3, 120, 5, 120, 1296, 10, 120, 3, 120, 3, 120, 5, 120, 1300, 10, 120, 3, 121, 3, 121, 7, 121, 1304, 10, 121, 12, 121, 14, 121, 1307, 11, 121, 3, 122, 3, 122, 7, 122, 1311, 10, 122, 12, 122, 14, 122, 1314, 11, 122, 3, 123, 3, 123, 3, 123, 3, 123, 3, 124, 3, 124, 3, 125, 3, 125, 3, 126, 3, 126, 3, 127, 3, 127, 3, 128, 3, 128, 3, 129, 3, 129, 3, 130, 3, 130, 3, 131, 3, 131, 3, 132, 3, 132, 3, 133, 3, 133, 3, 134, 3, 134, 3, 135, 3, 135, 3, 136, 3, 136, 3, 137, 3, 137, 3, 138, 3, 138, 3, 139, 3, 139, 3, 140, 3, 140, 3, 141, 3, 141, 3, 142, 3, 142, 3, 143, 3, 143, 3, 144, 3, 144, 3, 145, 3, 145, 3, 146, 3, 146, 3, 146, 3, 146, 3, 146, 3, 146, 7, 146, 1370, 10, 146, 12, 146, 14, 146, 1373, 11, 146, 3, 146, 3, 146, 3, 147, 3, 147, 3, 147, 3, 147, 3, 147, 3, 147, 7, 147, 1383, 10, 147, 12, 147, 14, 147, 1386, 11, 147, 3, 147, 3, 147, 3, 148, 3, 148, 3, 148, 3, 148, 3, 148, 3, 148, 3, 148, 3, 149, 7, 149, 1398, 10, 149, 12, 149, 14, 149, 1401, 11, 149, 3, 149, 3, 149, 5, 149, 1405, 10, 149, 3, 150, 3, 150, 3, 150, 3, 150, 7, 150, 1411, 10, 150, 12, 150, 14, 150, 1414, 11, 150, 3, 150, 3, 150, 3, 150, 3, 150, 3, 150, 3, 151, 3, 151, 3, 152, 3, 152, 3, 152, 3, 152, 3, 153, 3, 153, 3, 153, 3, 153, 5, 153, 1431, 10, 153, 3, 153, 3, 153, 3, 154, 3, 154, 3, 154, 3, 154, 7, 154, 1439, 10, 154, 12, 154, 14, 154, 1442, 11, 154, 3, 154, 3, 154, 3, 155, 3, 155, 3, 155, 3, 155, 7, 155, 1450, 10, 155, 12, 155, 14, 155, 1453, 11, 155, 3, 155, 3, 155, 3, 156, 3, 156, 3, 156, 7, 156, 1460, 10, 156, 12, 156, 14, 156, 1463, 11, 156, 3, 156, 3, 156, 3, 157, 3, 157, 3, 158, 3, 158, 3, 158, 3, 158, 3, 158, 3, 159, 6, 159, 1475, 10, 159, 13, 159, 14, 159, 1476, 3, 159, 3, 159, 3, 160, 3, 160, 3, 161, 3, 161, 3, 161, 3, 161, 3, 162, 6, 162, 1488, 10, 162, 13, 162, 14, 162, 1489, 3, 162, 3, 162, 3, 163, 3, 163, 4, 1399, 1412, 2, 164, 5, 3, 7, 4, 9, 5, 11, 6, 13, 7, 15, 8, 17, 9, 19, 10, 21, 11, 23, 12, 25, 13, 27, 14, 29, 15, 31, 16, 33, 17, 35, 18, 37, 19, 39, 20, 41, 21, 43, 22, 45, 23, 47, 24, 49, 25, 51, 26, 53, 27, 55, 28, 57, 29, 59, 30, 61, 31, 63, 32, 65, 33, 67, 34, 69, 35, 71, 36, 73, 37, 75, 38, 77, 39, 79, 40, 81, 41, 83, 42, 85, 43, 87, 44, 89, 45, 91, 46, 93, 47, 95, 48, 97, 49, 99, 50, 101, 51, 103, 52, 105, 53, 107, 54, 109, 55, 111, 56, 113, 57, 115, 58, 117, 59, 119, 60, 121, 61, 123, 62, 125, 63, 127, 64, 129, 65, 131, 66, 133, 67, 135, 68, 137, 69, 139, 70, 141, 71, 143, 72, 145, 73, 147, 74, 149, 75, 151, 76, 153, 77, 155, 78, 157, 79, 159, 80, 161, 81, 163, 82, 165, 83, 167, 84, 169, 85, 171, 86, 173, 87, 175, 88, 177, 89, 179, 90, 181, 91, 183, 92, 185, 93, 187, 94, 189, 95, 191, 96, 193, 97, 195, 98, 197, 99, 199, 100, 201, 101, 203, 102, 205, 103, 207, 104, 209, 105, 211, 106, 213, 107, 215, 108, 217, 109, 219, 110, 221, 111, 223, 112, 225, 113, 227, 114, 229, 115, 231, 116, 233, 117, 235, 118, 237, 119, 239, 2, 241, 120, 243, 121, 245, 122, 247, 123, 249, 124, 251, 125, 253, 126, 255, 127, 257, 128, 259, 129, 261, 130, 263, 131, 265, 132, 267, 133, 269, 134, 271, 135, 273, 136, 275, 137, 277, 138, 279, 139, 281, 140, 283, 141, 285, 142, 287, 143, 289, 144, 291, 145, 293, 146, 295, 147, 297, 148, 299, 2, 301, 149, 303, 150, 305, 151, 307, 152, 309, 153, 311, 154, 313, 155, 315, 156, 317, 161, 319, 157, 321, 158, 323, 159, 325, 2, 327, 160, 5, 2, 3, 4, 12, 5, 2, 67, 92, 97, 97, 99, 124, 6, 2, 50, 59, 67, 92, 97, 97, 99, 124, 3, 2, 51, 59, 3, 2, 50, 59, 5, 2, 12, 12, 15, 15, 36, 36, 5, 2, 12, 12, 15, 15, 41, 41, 10, 2, 185, 185, 770, 881, 8257, 8258, 8306, 8593, 11266, 12273, 12291, 55297, 63746, 64977, 65010, 65535, 4, 2, 125, 125, 127, 127, 3, 2, 12, 12, 4, 2, 12, 12, 61, 61, 2, 1513, 2, 5, 3, 2, 2, 2, 2, 7, 3, 2, 2, 2, 2, 9, 3, 2, 2, 2, 2, 11, 3, 2, 2, 2, 2, 13, 3, 2, 2, 2, 2, 15, 3, 2, 2, 2, 2, 17, 3, 2, 2, 2, 2, 19, 3, 2, 2, 2, 2, 21, 3, 2, 2, 2, 2, 23, 3, 2, 2, 2, 2, 25, 3, 2, 2, 2, 2, 27, 3, 2, 2, 2, 2, 29, 3, 2, 2, 2, 2, 31, 3, 2, 2, 2, 2, 33, 3, 2, 2, 2, 2, 35, 3, 2, 2, 2, 2, 37, 3, 2, 2, 2, 2, 39, 3, 2, 2, 2, 2, 41, 3, 2, 2, 2, 2, 43, 3, 2, 2, 2, 2, 45, 3, 2, 2, 2, 2, 47, 3, 2, 2, 2, 2, 49, 3, 2, 2, 2, 2, 51, 3, 2, 2, 2, 2, 53, 3, 2, 2, 2, 2, 55, 3, 2, 2, 2, 2, 57, 3, 2, 2, 2, 2, 59, 3, 2, 2, 2, 2, 61, 3, 2, 2, 2, 2, 63, 3, 2, 2, 2, 2, 65, 3, 2, 2, 2, 2, 67, 3, 2, 2, 2, 2, 69, 3, 2, 2, 2, 2, 71, 3, 2, 2, 2, 2, 73, 3, 2, 2, 2, 2, 75, 3, 2, 2, 2, 2, 77, 3, 2, 2, 2, 2, 79, 3, 2, 2, 2, 2, 81, 3, 2, 2, 2, 2, 83, 3, 2, 2, 2, 2, 85, 3, 2, 2, 2, 2, 87, 3, 2, 2, 2, 2, 89, 3, 2, 2, 2, 2, 91, 3, 2, 2, 2, 2, 93, 3, 2, 2, 2, 2, 95, 3, 2, 2, 2, 2, 97, 3, 2, 2, 2, 2, 99, 3, 2, 2, 2, 2, 101, 3, 2, 2, 2, 2, 103, 3, 2, 2, 2, 2, 105, 3, 2, 2, 2, 2, 107, 3, 2, 2, 2, 2, 109, 3, 2, 2, 2, 2, 111, 3, 2, 2, 2, 2, 113, 3, 2, 2, 2, 2, 115, 3, 2, 2, 2, 2, 117, 3, 2, 2, 2, 2, 119, 3, 2, 2, 2, 2, 121, 3, 2, 2, 2, 2, 123, 3, 2, 2, 2, 2, 125, 3, 2, 2, 2, 2, 127, 3, 2, 2, 2, 2, 129, 3, 2, 2, 2, 2, 131, 3, 2, 2, 2, 2, 133, 3, 2, 2, 2, 2, 135, 3, 2, 2, 2, 2, 137, 3, 2, 2, 2, 2, 139, 3, 2, 2, 2, 2, 141, 3, 2, 2, 2, 2, 143, 3, 2, 2, 2, 2, 145, 3, 2, 2, 2, 2, 147, 3, 2, 2, 2, 2, 149, 3, 2, 2, 2, 2, 151, 3, 2, 2, 2, 2, 153, 3, 2, 2, 2, 2, 155, 3, 2, 2, 2, 2, 157, 3, 2, 2, 2, 2, 159, 3, 2, 2, 2, 2, 161, 3, 2, 2, 2, 2, 163, 3, 2, 2, 2, 2, 165, 3, 2, 2, 2, 2, 167, 3, 2, 2, 2, 2, 169, 3, 2, 2, 2, 2, 171, 3, 2, 2, 2, 2, 173, 3, 2, 2, 2, 2, 175, 3, 2, 2, 2, 2, 177, 3, 2, 2, 2, 2, 179, 3, 2, 2, 2, 2, 181, 3, 2, 2, 2, 2, 183, 3, 2, 2, 2, 2, 185, 3, 2, 2, 2, 2, 187, 3, 2, 2, 2, 2, 189, 3, 2, 2, 2, 2, 191, 3, 2, 2, 2, 2, 193, 3, 2, 2, 2, 2, 195, 3, 2, 2, 2, 2, 197, 3, 2, 2, 2, 2, 199, 3, 2, 2, 2, 2, 201, 3, 2, 2, 2, 2, 203, 3, 2, 2, 2, 2, 205, 3, 2, 2, 2, 2, 207, 3, 2, 2, 2, 2, 209, 3, 2, 2, 2, 2, 211, 3, 2, 2, 2, 2, 213, 3, 2, 2, 2, 2, 215, 3, 2, 2, 2, 2, 217, 3, 2, 2, 2, 2, 219, 3, 2, 2, 2, 2, 221, 3, 2, 2, 2, 2, 223, 3, 2, 2, 2, 2, 225, 3, 2, 2, 2, 2, 227, 3, 2, 2, 2, 2, 229, 3, 2, 2, 2, 2, 231, 3, 2, 2, 2, 2, 233, 3, 2, 2, 2, 2, 235, 3, 2, 2, 2, 2, 237, 3, 2, 2, 2, 2, 241, 3, 2, 2, 2, 2, 243, 3, 2, 2, 2, 2, 245, 3, 2, 2, 2, 2, 247, 3, 2, 2, 2, 2, 249, 3, 2, 2, 2, 2, 251, 3, 2, 2, 2, 2, 253, 3, 2, 2, 2, 2, 255, 3, 2, 2, 2, 2, 257, 3, 2, 2, 2, 2, 259, 3, 2, 2, 2, 2, 261, 3, 2, 2, 2, 2, 263, 3, 2, 2, 2, 2, 265, 3, 2, 2, 2, 2, 267, 3, 2, 2, 2, 2, 269, 3, 2, 2, 2, 2, 271, 3, 2, 2, 2, 2, 273, 3, 2, 2, 2, 2, 275, 3, 2, 2, 2, 2, 277, 3, 2, 2, 2, 2, 279, 3, 2, 2, 2, 2, 281, 3, 2, 2, 2, 2, 283, 3, 2, 2, 2, 2, 285, 3, 2, 2, 2, 2, 287, 3, 2, 2, 2, 2, 289, 3, 2, 2, 2, 2, 291, 3, 2, 2, 2, 2, 293, 3, 2, 2, 2, 2, 295, 3, 2, 2, 2, 2, 297, 3, 2, 2, 2, 2, 301, 3, 2, 2, 2, 2, 303, 3, 2, 2, 2, 2, 305, 3, 2, 2, 2, 2, 307, 3, 2, 2, 2, 2, 309, 3, 2, 2, 2, 2, 311, 3, 2, 2, 2, 2, 313, 3, 2, 2, 2, 2, 315, 3, 2, 2, 2, 3, 317, 3, 2, 2, 2, 3, 319, 3, 2, 2, 2, 3, 321, 3, 2, 2, 2, 4, 323, 3, 2, 2, 2, 4, 325, 3, 2, 2, 2, 4, 327, 3, 2, 2, 2, 5, 329, 3, 2, 2, 2, 7, 336, 3, 2, 2, 2, 9, 342, 3, 2, 2, 2, 11, 350, 3, 2, 2, 2, 13, 358, 3, 2, 2, 2, 15, 368, 3, 2, 2, 2, 17, 376, 3, 2, 2, 2, 19, 381, 3, 2, 2, 2, 21, 387, 3, 2, 2, 2, 23, 394, 3, 2, 2, 2, 25, 402, 3, 2, 2, 2, 27, 409, 3, 2, 2, 2, 29, 423, 3, 2, 2, 2, 31, 437, 3, 2, 2, 2, 33, 444, 3, 2, 2, 2, 35, 447, 3, 2, 2, 2, 37, 453, 3, 2, 2, 2, 39, 458, 3, 2, 2, 2, 41, 464, 3, 2, 2, 2, 43, 470, 3, 2, 2, 2, 45, 483, 3, 2, 2, 2, 47, 494, 3, 2, 2, 2, 49, 507, 3, 2, 2, 2, 51, 518, 3, 2, 2, 2, 53, 531, 3, 2, 2, 2, 55, 537, 3, 2, 2, 2, 57, 544, 3, 2, 2, 2, 59, 550, 3, 2, 2, 2, 61, 560, 3, 2, 2, 2, 63, 566, 3, 2, 2, 2, 65, 572, 3, 2, 2, 2, 67, 583, 3, 2, 2, 2, 69, 590, 3, 2, 2, 2, 71, 603, 3, 2, 2, 2, 73, 616, 3, 2, 2, 2, 75, 628, 3, 2, 2, 2, 77, 639, 3, 2, 2, 2, 79, 649, 3, 2, 2, 2, 81, 656, 3, 2, 2, 2, 83, 663, 3, 2, 2, 2, 85, 673, 3, 2, 2, 2, 87, 680, 3, 2, 2, 2, 89, 686, 3, 2, 2, 2, 91, 694, 3, 2, 2, 2, 93, 700, 3, 2, 2, 2, 95, 705, 3, 2, 2, 2, 97, 710, 3, 2, 2, 2, 99, 721, 3, 2, 2, 2, 101, 727, 3, 2, 2, 2, 103, 735, 3, 2, 2, 2, 105, 740, 3, 2, 2, 2, 107, 749, 3, 2, 2, 2, 109, 761, 3, 2, 2, 2, 111, 773, 3, 2, 2, 2, 113, 779, 3, 2, 2, 2, 115, 784, 3, 2, 2, 2, 117, 796, 3, 2, 2, 2, 119, 807, 3, 2, 2, 2, 121, 820, 3, 2, 2, 2, 123, 839, 3, 2, 2, 2, 125, 843, 3, 2, 2, 2, 127, 847, 3, 2, 2, 2, 129, 852, 3, 2, 2, 2, 131, 857, 3, 2, 2, 2, 133, 861, 3, 2, 2, 2, 135, 869, 3, 2, 2, 2, 137, 874, 3, 2, 2, 2, 139, 882, 3, 2, 2, 2, 141, 888, 3, 2, 2, 2, 143, 896, 3, 2, 2, 2, 145, 903, 3, 2, 2, 2, 147, 912, 3, 2, 2, 2, 149, 928, 3, 2, 2, 2, 151, 934, 3, 2, 2, 2, 153, 945, 3, 2, 2, 2, 155, 955, 3, 2, 2, 2, 157, 960, 3, 2, 2, 2, 159, 972, 3, 2, 2, 2, 161, 983, 3, 2, 2, 2, 163, 992, 3, 2, 2, 2, 165, 1004, 3, 2, 2, 2, 167, 1010, 3, 2, 2, 2, 169, 1020, 3, 2, 2, 2, 171, 1029, 3, 2, 2, 2, 173, 1041, 3, 2, 2, 2, 175, 1048, 3, 2, 2, 2, 177, 1053, 3, 2, 2, 2, 179, 1060, 3, 2, 2, 2, 181, 1067, 3, 2, 2, 2, 183, 1072, 3, 2, 2, 2, 185, 1077, 3, 2, 2, 2, 187, 1095, 3, 2, 2, 2, 189, 1099, 3, 2, 2, 2, 191, 1102, 3, 2, 2, 2, 193, 1110, 3, 2, 2, 2, 195, 1118, 3, 2, 2, 2, 197, 1130, 3, 2, 2, 2, 199, 1137, 3, 2, 2, 2, 201, 1142, 3, 2, 2, 2, 203, 1153, 3, 2, 2, 2, 205, 1162, 3, 2, 2, 2, 207, 1172, 3, 2, 2, 2, 209, 1178, 3, 2, 2, 2, 211, 1183, 3, 2, 2, 2, 213, 1189, 3, 2, 2, 2, 215, 1194, 3, 2, 2, 2, 217, 1200, 3, 2, 2, 2, 219, 1205, 3, 2, 2, 2, 221, 1210, 3, 2, 2, 2, 223, 1220, 3, 2, 2, 2, 225, 1234, 3, 2, 2, 2, 227, 1246, 3, 2, 2, 2, 229, 1258, 3, 2, 2, 2, 231, 1265, 3, 2, 2, 2, 233, 1272, 3, 2, 2, 2, 235, 1279, 3, 2, 2, 2, 237, 1290, 3, 2, 2, 2, 239, 1292, 3, 2, 2, 2, 241, 1299, 3, 2, 2, 2, 243, 1301, 3, 2, 2, 2, 245, 1308, 3, 2, 2, 2, 247, 1315, 3, 2, 2, 2, 249, 1319, 3, 2, 2, 2, 251, 1321, 3, 2, 2, 2, 253, 1323, 3, 2, 2, 2, 255, 1325, 3, 2, 2, 2, 257, 1327, 3, 2, 2, 2, 259, 1329, 3, 2, 2, 2, 261, 1331, 3, 2, 2, 2, 263, 1333, 3, 2, 2, 2, 265, 1335, 3, 2, 2, 2, 267, 1337, 3, 2, 2, 2, 269, 1339, 3, 2, 2, 2, 271, 1341, 3, 2, 2, 2, 273, 1343, 3, 2, 2, 2, 275, 1345, 3, 2, 2, 2, 277, 1347, 3, 2, 2, 2, 279, 1349, 3, 2, 2, 2, 281, 1351, 3, 2, 2, 2, 283, 1353, 3, 2, 2, 2, 285, 1355, 3, 2, 2, 2, 287, 1357, 3, 2, 2, 2, 289, 1359, 3, 2, 2, 2, 291, 1361, 3, 2, 2, 2, 293, 1363, 3, 2, 2, 2, 295, 1376, 3, 2, 2, 2, 297, 1389, 3, 2, 2, 2, 299, 1399, 3, 2, 2, 2, 301, 1406, 3, 2, 2, 2, 303, 1420, 3, 2, 2, 2, 305, 1422, 3, 2, 2, 2, 307, 1430, 3, 2, 2, 2, 309, 1434, 3, 2, 2, 2, 311, 1445, 3, 2, 2, 2, 313, 1456, 3, 2, 2, 2, 315, 1466, 3, 2, 2, 2, 317, 1468, 3, 2, 2, 2, 319, 1474, 3, 2, 2, 2, 321, 1480, 3, 2, 2, 2, 323, 1482, 3, 2, 2, 2, 325, 1487, 3, 2, 2, 2, 327, 1493, 3, 2, 2, 2, 329, 330, 7, 66, 2, 2, 330, 331, 7, 99, 2, 2, 331, 332, 7, 102, 2, 2, 332, 333, 7, 111, 2, 2, 333, 334, 7, 107, 2, 2, 334, 335, 7, 112, 2, 2, 335, 6, 3, 2, 2, 2, 336, 337, 7, 66, 2, 2, 337, 338, 7, 117, 2, 2, 338, 339, 7, 119, 2, 2, 339, 340, 7, 107, 2, 2, 340, 341, 7, 118, 2, 2, 341, 8, 3, 2, 2, 2, 342, 343, 7, 66, 2, 2, 343, 344, 7, 101, 2, 2, 344, 345, 7, 103, 2, 2, 345, 346, 7, 110, 2, 2, 346, 347, 7, 103, 2, 2, 347, 348, 7, 116, 2, 2, 348, 349, 7, 123, 2, 2, 349, 10, 3, 2, 2, 2, 350, 351, 7, 66, 2, 2, 351, 352, 7, 117, 2, 2, 352, 353, 7, 118, 2, 2, 353, 354, 7, 116, 2, 2, 354, 355, 7, 103, 2, 2, 355, 356, 7, 99, 2, 2, 356, 357, 7, 111, 2, 2, 357, 12, 3, 2, 2, 2, 358, 359, 7, 66, 2, 2, 359, 360, 7, 101, 2, 2, 360, 361, 7, 106, 2, 2, 361, 362, 7, 99, 2, 2, 362, 363, 7, 112, 2, 2, 363, 364, 7, 112, 2, 2, 364, 365, 7, 103, 2, 2, 365, 366, 7, 110, 2, 2, 366, 367, 7, 117, 2, 2, 367, 14, 3, 2, 2, 2, 368, 369, 7, 66, 2, 2, 369, 370, 7, 102, 2, 2, 370, 371, 7, 113, 2, 2, 371, 372, 7, 101, 2, 2, 372, 373, 7, 109, 2, 2, 373, 374, 7, 103, 2, 2, 374, 375, 7, 116, 2, 2, 375, 16, 3, 2, 2, 2, 376, 377, 7, 66, 2, 2, 377, 378, 7, 99, 2, 2, 378, 379, 7, 114, 2, 2, 379, 380, 7, 107, 2, 2, 380, 18, 3, 2, 2, 2, 381, 382, 7, 66, 2, 2, 382, 383, 7, 116, 2, 2, 383, 384, 7, 103, 2, 2, 384, 385, 7, 117, 2, 2, 385, 386, 7, 118, 2, 2, 386, 20, 3, 2, 2, 2, 387, 388, 7, 66, 2, 2, 388, 389, 7, 104, 2, 2, 389, 390, 7, 107, 2, 2, 390, 391, 7, 110, 2, 2, 391, 392, 7, 103, 2, 2, 392, 393, 7, 116, 2, 2, 393, 22, 3, 2, 2, 2, 394, 395, 7, 66, 2, 2, 395, 396, 7, 105, 2, 2, 396, 397, 7, 107, 2, 2, 397, 398, 7, 118, 2, 2, 398, 399, 7, 110, 2, 2, 399, 400, 7, 99, 2, 2, 400, 401, 7, 100, 2, 2, 401, 24, 3, 2, 2, 2, 402, 403, 7, 66, 2, 2, 403, 404, 7, 116, 2, 2, 404, 405, 7, 103, 2, 2, 405, 406, 7, 99, 2, 2, 406, 407, 7, 101, 2, 2, 407, 408, 7, 118, 2, 2, 408, 26, 3, 2, 2, 2, 409, 410, 7, 66, 2, 2, 410, 411, 7, 116, 2, 2, 411, 412, 7, 103, 2, 2, 412, 413, 7, 99, 2, 2, 413, 414, 7, 101, 2, 2, 414, 415, 7, 118, 2, 2, 415, 416, 7, 97, 2, 2, 416, 417, 7, 101, 2, 2, 417, 418, 7, 110, 2, 2, 418, 419, 7, 107, 2, 2, 419, 420, 7, 103, 2, 2, 420, 421, 7, 112, 2, 2, 421, 422, 7, 118, 2, 2, 422, 28, 3, 2, 2, 2, 423, 424, 7, 66, 2, 2, 424, 425, 7, 116, 2, 2, 425, 426, 7, 103, 2, 2, 426, 427, 7, 99, 2, 2, 427, 428, 7, 101, 2, 2, 428, 429, 7, 118, 2, 2, 429, 430, 7, 97, 2, 2, 430, 431, 7, 117, 2, 2, 431, 432, 7, 103, 2, 2, 432, 433, 7, 116, 2, 2, 433, 434, 7, 120, 2, 2, 434, 435, 7, 103, 2, 2, 435, 436, 7, 116, 2, 2, 436, 30, 3, 2, 2, 2, 437, 438, 7, 66, 2, 2, 438, 439, 7, 118, 2, 2, 439, 440, 7, 106, 2, 2, 440, 441, 7, 103, 2, 2, 441, 442, 7, 111, 2, 2, 442, 443, 7, 103, 2, 2, 443, 32, 3, 2, 2, 2, 444, 445, 7, 66, 2, 2, 445, 446, 7, 66, 2, 2, 446, 34, 3, 2, 2, 2, 447, 448, 7, 66, 2, 2, 448, 449, 7, 104, 2, 2, 449, 450, 7, 107, 2, 2, 450, 451, 7, 110, 2, 2, 451, 452, 7, 103, 2, 2, 452, 36, 3, 2, 2, 2, 453, 454, 7, 66, 2, 2, 454, 455, 7, 105, 2, 2, 455, 456, 7, 103, 2, 2, 456, 457, 7, 118, 2, 2, 457, 38, 3, 2, 2, 2, 458, 459, 7, 66, 2, 2, 459, 460, 7, 111, 2, 2, 460, 461, 7, 103, 2, 2, 461, 462, 7, 112, 2, 2, 462, 463, 7, 119, 2, 2, 463, 40, 3, 2, 2, 2, 464, 465, 7, 66, 2, 2, 465, 466, 7, 101, 2, 2, 466, 467, 7, 116, 2, 2, 467, 468, 7, 119, 2, 2, 468, 469, 7, 102, 2, 2, 469, 42, 3, 2, 2, 2, 470, 471, 7, 66, 2, 2, 471, 472, 7, 101, 2, 2, 472, 473, 7, 116, 2, 2, 473, 474, 7, 119, 2, 2, 474, 475, 7, 102, 2, 2, 475, 476, 7, 97, 2, 2, 476, 477, 7, 102, 2, 2, 477, 478, 7, 103, 2, 2, 478, 479, 7, 118, 2, 2, 479, 480, 7, 99, 2, 2, 480, 481, 7, 107, 2, 2, 481, 482, 7, 110, 2, 2, 482, 44, 3, 2, 2, 2, 483, 484, 7, 66, 2, 2, 484, 485, 7, 101, 2, 2, 485, 486, 7, 116, 2, 2, 486, 487, 7, 119, 2, 2, 487, 488, 7, 102, 2, 2, 488, 489, 7, 97, 2, 2, 489, 490, 7, 110, 2, 2, 490, 491, 7, 107, 2, 2, 491, 492, 7, 117, 2, 2, 492, 493, 7, 118, 2, 2, 493, 46, 3, 2, 2, 2, 494, 495, 7, 66, 2, 2, 495, 496, 7, 101, 2, 2, 496, 497, 7, 116, 2, 2, 497, 498, 7, 119, 2, 2, 498, 499, 7, 102, 2, 2, 499, 500, 7, 97, 2, 2, 500, 501, 7, 102, 2, 2, 501, 502, 7, 103, 2, 2, 502, 503, 7, 110, 2, 2, 503, 504, 7, 103, 2, 2, 504, 505, 7, 118, 2, 2, 505, 506, 7, 103, 2, 2, 506, 48, 3, 2, 2, 2, 507, 508, 7, 66, 2, 2, 508, 509, 7, 101, 2, 2, 509, 510, 7, 116, 2, 2, 510, 511, 7, 119, 2, 2, 511, 512, 7, 102, 2, 2, 512, 513, 7, 97, 2, 2, 513, 514, 7, 103, 2, 2, 514, 515, 7, 102, 2, 2, 515, 516, 7, 107, 2, 2, 516, 517, 7, 118, 2, 2, 517, 50, 3, 2, 2, 2, 518, 519, 7, 66, 2, 2, 519, 520, 7, 101, 2, 2, 520, 521, 7, 116, 2, 2, 521, 522, 7, 119, 2, 2, 522, 523, 7, 102, 2, 2, 523, 524, 7, 97, 2, 2, 524, 525, 7, 101, 2, 2, 525, 526, 7, 116, 2, 2, 526, 527, 7, 103, 2, 2, 527, 528, 7, 99, 2, 2, 528, 529, 7, 118, 2, 2, 529, 530, 7, 103, 2, 2, 530, 52, 3, 2, 2, 2, 531, 532, 7, 66, 2, 2, 532, 533, 7, 114, 2, 2, 533, 534, 7, 113, 2, 2, 534, 535, 7, 117, 2, 2, 535, 536, 7, 118, 2, 2, 536, 54, 3, 2, 2, 2, 537, 538, 7, 66, 2, 2, 538, 539, 7, 103, 2, 2, 539, 540, 7, 116, 2, 2, 540, 541, 7, 116, 2, 2, 541, 542, 7, 113, 2, 2, 542, 543, 7, 116, 2, 2, 543, 56, 3, 2, 2, 2, 544, 545, 7, 66, 2, 2, 545, 546, 7, 99, 2, 2, 546, 547, 7, 119, 2, 2, 547, 548, 7, 118, 2, 2, 548, 549, 7, 106, 2, 2, 549, 58, 3, 2, 2, 2, 550, 551, 7, 66, 2, 2, 551, 552, 7, 111, 2, 2, 552, 553, 7, 99, 2, 2, 553, 554, 7, 116, 2, 2, 554, 555, 7, 109, 2, 2, 555, 556, 7, 102, 2, 2, 556, 557, 7, 113, 2, 2, 557, 558, 7, 121, 2, 2, 558, 559, 7, 112, 2, 2, 559, 60, 3, 2, 2, 2, 560, 561, 7, 66, 2, 2, 561, 562, 7, 106, 2, 2, 562, 563, 7, 118, 2, 2, 563, 564, 7, 111, 2, 2, 564, 565, 7, 110, 2, 2, 565, 62, 3, 2, 2, 2, 566, 567, 7, 66, 2, 2, 567, 568, 7, 118, 2, 2, 568, 569, 7, 116, 2, 2, 569, 570, 7, 103, 2, 2, 570, 571, 7, 103, 2, 2, 571, 64, 3, 2, 2, 2, 572, 573, 7, 66, 2, 2, 573, 574, 7, 102, 2, 2, 574, 575, 7, 99, 2, 2, 575, 576, 7, 118, 2, 2, 576, 577, 7, 103, 2, 2, 577, 578, 7, 97, 2, 2, 578, 579, 7, 118, 2, 2, 579, 580, 7, 116, 2, 2, 580, 581, 7, 103, 2, 2, 581, 582, 7, 103, 2, 2, 582, 66, 3, 2, 2, 2, 583, 584, 7, 66, 2, 2, 584, 585, 7, 111, 2, 2, 585, 586, 7, 107, 2, 2, 586, 587, 7, 122, 2, 2, 587, 588, 7, 107, 2, 2, 588, 589, 7, 112, 2, 2, 589, 68, 3, 2, 2, 2, 590, 591, 7, 66, 2, 2, 591, 592, 7, 111, 2, 2, 592, 593, 7, 52, 2, 2, 593, 594, 7, 111, 2, 2, 594, 595, 7, 97, 2, 2, 595, 596, 7, 101, 2, 2, 596, 597, 7, 106, 2, 2, 597, 598, 7, 99, 2, 2, 598, 599, 7, 112, 2, 2, 599, 600, 7, 105, 2, 2, 600, 601, 7, 103, 2, 2, 601, 602, 7, 102, 2, 2, 602, 70, 3, 2, 2, 2, 603, 604, 7, 66, 2, 2, 604, 605, 7, 114, 2, 2, 605, 606, 7, 113, 2, 2, 606, 607, 7, 117, 2, 2, 607, 608, 7, 118, 2, 2, 608, 609, 7, 97, 2, 2, 609, 610, 7, 102, 2, 2, 610, 611, 7, 103, 2, 2, 611, 612, 7, 110, 2, 2, 612, 613, 7, 103, 2, 2, 613, 614, 7, 118, 2, 2, 614, 615, 7, 103, 2, 2, 615, 72, 3, 2, 2, 2, 616, 617, 7, 66, 2, 2, 617, 618, 7, 114, 2, 2, 618, 619, 7, 116, 2, 2, 619, 620, 7, 103, 2, 2, 620, 621, 7, 97, 2, 2, 621, 622, 7, 102, 2, 2, 622, 623, 7, 103, 2, 2, 623, 624, 7, 110, 2, 2, 624, 625, 7, 103, 2, 2, 625, 626, 7, 118, 2, 2, 626, 627, 7, 103, 2, 2, 627, 74, 3, 2, 2, 2, 628, 629, 7, 66, 2, 2, 629, 630, 7, 114, 2, 2, 630, 631, 7, 113, 2, 2, 631, 632, 7, 117, 2, 2, 632, 633, 7, 118, 2, 2, 633, 634, 7, 97, 2, 2, 634, 635, 7, 117, 2, 2, 635, 636, 7, 99, 2, 2, 636, 637, 7, 120, 2, 2, 637, 638, 7, 103, 2, 2, 638, 76, 3, 2, 2, 2, 639, 640, 7, 66, 2, 2, 640, 641, 7, 114, 2, 2, 641, 642, 7, 116, 2, 2, 642, 643, 7, 103, 2, 2, 643, 644, 7, 97, 2, 2, 644, 645, 7, 117, 2, 2, 645, 646, 7, 99, 2, 2, 646, 647, 7, 120, 2, 2, 647, 648, 7, 103, 2, 2, 648, 78, 3, 2, 2, 2, 649, 650, 7, 66, 2, 2, 650, 651, 7, 101, 2, 2, 651, 652, 7, 110, 2, 2, 652, 653, 7, 103, 2, 2, 653, 654, 7, 99, 2, 2, 654, 655, 7, 112, 2, 2, 655, 80, 3, 2, 2, 2, 656, 657, 7, 66, 2, 2, 657, 658, 7, 113, 2, 2, 658, 659, 7, 116, 2, 2, 659, 660, 7, 102, 2, 2, 660, 661, 7, 103, 2, 2, 661, 662, 7, 116, 2, 2, 662, 82, 3, 2, 2, 2, 663, 664, 7, 66, 2, 2, 664, 665, 7, 117, 2, 2, 665, 666, 7, 113, 2, 2, 666, 667, 7, 116, 2, 2, 667, 668, 7, 118, 2, 2, 668, 669, 7, 99, 2, 2, 669, 670, 7, 100, 2, 2, 670, 671, 7, 110, 2, 2, 671, 672, 7, 103, 2, 2, 672, 84, 3, 2, 2, 2, 673, 674, 7, 66, 2, 2, 674, 675, 7, 110, 2, 2, 675, 676, 7, 99, 2, 2, 676, 677, 7, 112, 2, 2, 677, 678, 7, 105, 2, 2, 678, 679, 7, 117, 2, 2, 679, 86, 3, 2, 2, 2, 680, 681, 7, 100, 2, 2, 681, 682, 7, 99, 2, 2, 682, 683, 7, 117, 2, 2, 683, 684, 7, 107, 2, 2, 684, 685, 7, 101, 2, 2, 685, 88, 3, 2, 2, 2, 686, 687, 7, 117, 2, 2, 687, 688, 7, 103, 2, 2, 688, 689, 7, 117, 2, 2, 689, 690, 7, 117, 2, 2, 690, 691, 7, 107, 2, 2, 691, 692, 7, 113, 2, 2, 692, 693, 7, 112, 2, 2, 693, 90, 3, 2, 2, 2, 694, 695, 7, 118, 2, 2, 695, 696, 7, 113, 2, 2, 696, 697, 7, 109, 2, 2, 697, 698, 7, 103, 2, 2, 698, 699, 7, 112, 2, 2, 699, 92, 3, 2, 2, 2, 700, 701, 7, 118, 2, 2, 701, 702, 7, 103, 2, 2, 702, 703, 7, 122, 2, 2, 703, 704, 7, 118, 2, 2, 704, 94, 3, 2, 2, 2, 705, 706, 7, 106, 2, 2, 706, 707, 7, 118, 2, 2, 707, 708, 7, 111, 2, 2, 708, 709, 7, 110, 2, 2, 709, 96, 3, 2, 2, 2, 710, 711, 7, 106, 2, 2, 711, 712, 7, 118, 2, 2, 712, 713, 7, 111, 2, 2, 713, 714, 7, 110, 2, 2, 714, 715, 7, 97, 2, 2, 715, 716, 7, 111, 2, 2, 716, 717, 7, 103, 2, 2, 717, 718, 7, 102, 2, 2, 718, 719, 7, 107, 2, 2, 719, 720, 7, 99, 2, 2, 720, 98, 3, 2, 2, 2, 721, 722, 7, 104, 2, 2, 722, 723, 7, 110, 2, 2, 723, 724, 7, 113, 2, 2, 724, 725, 7, 99, 2, 2, 725, 726, 7, 118, 2, 2, 726, 100, 3, 2, 2, 2, 727, 728, 7, 102, 2, 2, 728, 729, 7, 103, 2, 2, 729, 730, 7, 101, 2, 2, 730, 731, 7, 107, 2, 2, 731, 732, 7, 111, 2, 2, 732, 733, 7, 99, 2, 2, 733, 734, 7, 110, 2, 2, 734, 102, 3, 2, 2, 2, 735, 736, 7, 102, 2, 2, 736, 737, 7, 99, 2, 2, 737, 738, 7, 118, 2, 2, 738, 739, 7, 103, 2, 2, 739, 104, 3, 2, 2, 2, 740, 741, 7, 102, 2, 2, 741, 742, 7, 99, 2, 2, 742, 743, 7, 118, 2, 2, 743, 744, 7, 103, 2, 2, 744, 745, 7, 118, 2, 2, 745, 746, 7, 107, 2, 2, 746, 747, 7, 111, 2, 2, 747, 748, 7, 103, 2, 2, 748, 106, 3, 2, 2, 2, 749, 750, 7, 101, 2, 2, 750, 751, 7, 116, 2, 2, 751, 752, 7, 103, 2, 2, 752, 753, 7, 99, 2, 2, 753, 754, 7, 118, 2, 2, 754, 755, 7, 103, 2, 2, 755, 756, 7, 97, 2, 2, 756, 757, 7, 118, 2, 2, 757, 758, 7, 107, 2, 2, 758, 759, 7, 111, 2, 2, 759, 760, 7, 103, 2, 2, 760, 108, 3, 2, 2, 2, 761, 762, 7, 119, 2, 2, 762, 763, 7, 114, 2, 2, 763, 764, 7, 102, 2, 2, 764, 765, 7, 99, 2, 2, 765, 766, 7, 118, 2, 2, 766, 767, 7, 103, 2, 2, 767, 768, 7, 97, 2, 2, 768, 769, 7, 118, 2, 2, 769, 770, 7, 107, 2, 2, 770, 771, 7, 111, 2, 2, 771, 772, 7, 103, 2, 2, 772, 110, 3, 2, 2, 2, 773, 774, 7, 107, 2, 2, 774, 775, 7, 111, 2, 2, 775, 776, 7, 99, 2, 2, 776, 777, 7, 105, 2, 2, 777, 778, 7, 103, 2, 2, 778, 112, 3, 2, 2, 2, 779, 780, 7, 104, 2, 2, 780, 781, 7, 107, 2, 2, 781, 782, 7, 110, 2, 2, 782, 783, 7, 103, 2, 2, 783, 114, 3, 2, 2, 2, 784, 785, 7, 104, 2, 2, 785, 786, 7, 107, 2, 2, 786, 787, 7, 110, 2, 2, 787, 788, 7, 103, 2, 2, 788, 789, 7, 116, 2, 2, 789, 790, 7, 97, 2, 2, 790, 791, 7, 107, 2, 2, 791, 792, 7, 111, 2, 2, 792, 793, 7, 99, 2, 2, 793, 794, 7, 105, 2, 2, 794, 795, 7, 103, 2, 2, 795, 116, 3, 2, 2, 2, 796, 797, 7, 104, 2, 2, 797, 798, 7, 107, 2, 2, 798, 799, 7, 110, 2, 2, 799, 800, 7, 103, 2, 2, 800, 801, 7, 116, 2, 2, 801, 802, 7, 97, 2, 2, 802, 803, 7, 104, 2, 2, 803, 804, 7, 107, 2, 2, 804, 805, 7, 110, 2, 2, 805, 806, 7, 103, 2, 2, 806, 118, 3, 2, 2, 2, 807, 808, 7, 104, 2, 2, 808, 809, 7, 107, 2, 2, 809, 810, 7, 110, 2, 2, 810, 811, 7, 103, 2, 2, 811, 812, 7, 116, 2, 2, 812, 813, 7, 97, 2, 2, 813, 814, 7, 104, 2, 2, 814, 815, 7, 113, 2, 2, 815, 816, 7, 110, 2, 2, 816, 817, 7, 102, 2, 2, 817, 818, 7, 103, 2, 2, 818, 819, 7, 116, 2, 2, 819, 120, 3, 2, 2, 2, 820, 821, 7, 104, 2, 2, 821, 822, 7, 107, 2, 2, 822, 823, 7, 110, 2, 2, 823, 824, 7, 103, 2, 2, 824, 825, 7, 116, 2, 2, 825, 826, 7, 97, 2, 2, 826, 827, 7, 107, 2, 2, 827, 828, 7, 111, 2, 2, 828, 829, 7, 99, 2, 2, 829, 830, 7, 105, 2, 2, 830, 831, 7, 103, 2, 2, 831, 832, 7, 97, 2, 2, 832, 833, 7, 104, 2, 2, 833, 834, 7, 113, 2, 2, 834, 835, 7, 110, 2, 2, 835, 836, 7, 102, 2, 2, 836, 837, 7, 103, 2, 2, 837, 838, 7, 116, 2, 2, 838, 122, 3, 2, 2, 2, 839, 840, 7, 117, 2, 2, 840, 841, 7, 118, 2, 2, 841, 842, 7, 116, 2, 2, 842, 124, 3, 2, 2, 2, 843, 844, 7, 107, 2, 2, 844, 845, 7, 112, 2, 2, 845, 846, 7, 118, 2, 2, 846, 126, 3, 2, 2, 2, 847, 848, 7, 117, 2, 2, 848, 849, 7, 110, 2, 2, 849, 850, 7, 119, 2, 2, 850, 851, 7, 105, 2, 2, 851, 128, 3, 2, 2, 2, 852, 853, 7, 100, 2, 2, 853, 854, 7, 113, 2, 2, 854, 855, 7, 113, 2, 2, 855, 856, 7, 110, 2, 2, 856, 130, 3, 2, 2, 2, 857, 858, 7, 113, 2, 2, 858, 859, 7, 112, 2, 2, 859, 860, 7, 103, 2, 2, 860, 132, 3, 2, 2, 2, 861, 862, 7, 113, 2, 2, 862, 863, 7, 112, 2, 2, 863, 864, 7, 103, 2, 2, 864, 865, 7, 52, 2, 2, 865, 866, 7, 113, 2, 2, 866, 867, 7, 112, 2, 2, 867, 868, 7, 103, 2, 2, 868, 134, 3, 2, 2, 2, 869, 870, 7, 111, 2, 2, 870, 871, 7, 99, 2, 2, 871, 872, 7, 112, 2, 2, 872, 873, 7, 123, 2, 2, 873, 136, 3, 2, 2, 2, 874, 875, 7, 101, 2, 2, 875, 876, 7, 106, 2, 2, 876, 877, 7, 113, 2, 2, 877, 878, 7, 107, 2, 2, 878, 879, 7, 101, 2, 2, 879, 880, 7, 103, 2, 2, 880, 881, 7, 117, 2, 2, 881, 138, 3, 2, 2, 2, 882, 883, 7, 118, 2, 2, 883, 884, 7, 106, 2, 2, 884, 885, 7, 103, 2, 2, 885, 886, 7, 111, 2, 2, 886, 887, 7, 103, 2, 2, 887, 140, 3, 2, 2, 2, 888, 889, 7, 107, 2, 2, 889, 890, 7, 112, 2, 2, 890, 891, 7, 117, 2, 2, 891, 892, 7, 118, 2, 2, 892, 893, 7, 99, 2, 2, 893, 894, 7, 110, 2, 2, 894, 895, 7, 110, 2, 2, 895, 142, 3, 2, 2, 2, 896, 897, 7, 106, 2, 2, 897, 898, 7, 103, 2, 2, 898, 899, 7, 99, 2, 2, 899, 900, 7, 102, 2, 2, 900, 901, 7, 103, 2, 2, 901, 902, 7, 116, 2, 2, 902, 144, 3, 2, 2, 2, 903, 904, 7, 117, 2, 2, 904, 905, 7, 103, 2, 2, 905, 906, 7, 116, 2, 2, 906, 907, 7, 120, 2, 2, 907, 908, 7, 107, 2, 2, 908, 909, 7, 101, 2, 2, 909, 910, 7, 103, 2, 2, 910, 911, 7, 117, 2, 2, 911, 146, 3, 2, 2, 2, 912, 913, 7, 117, 2, 2, 913, 914, 7, 103, 2, 2, 914, 915, 7, 110, 2, 2, 915, 916, 7, 103, 2, 2, 916, 917, 7, 112, 2, 2, 917, 918, 7, 107, 2, 2, 918, 919, 7, 119, 2, 2, 919, 920, 7, 111, 2, 2, 920, 921, 7, 97, 2, 2, 921, 922, 7, 114, 2, 2, 922, 923, 7, 123, 2, 2, 923, 924, 7, 118, 2, 2, 924, 925, 7, 103, 2, 2, 925, 926, 7, 117, 2, 2, 926, 927, 7, 118, 2, 2, 927, 148, 3, 2, 2, 2, 928, 929, 7, 101, 2, 2, 929, 930, 7, 106, 2, 2, 930, 931, 7, 107, 2, 2, 931, 932, 7, 110, 2, 2, 932, 933, 7, 102, 2, 2, 933, 150, 3, 2, 2, 2, 934, 935, 7, 104, 2, 2, 935, 936, 7, 107, 2, 2, 936, 937, 7, 110, 2, 2, 937, 938, 7, 118, 2, 2, 938, 939, 7, 103, 2, 2, 939, 940, 7, 116, 2, 2, 940, 941, 7, 97, 2, 2, 941, 942, 7, 113, 2, 2, 942, 943, 7, 119, 2, 2, 943, 944, 7, 118, 2, 2, 944, 152, 3, 2, 2, 2, 945, 946, 7, 104, 2, 2, 946, 947, 7, 107, 2, 2, 947, 948, 7, 110, 2, 2, 948, 949, 7, 118, 2, 2, 949, 950, 7, 103, 2, 2, 950, 951, 7, 116, 2, 2, 951, 952, 7, 97, 2, 2, 952, 953, 7, 107, 2, 2, 953, 954, 7, 112, 2, 2, 954, 154, 3, 2, 2, 2, 955, 956, 7, 114, 2, 2, 956, 957, 7, 99, 2, 2, 957, 958, 7, 105, 2, 2, 958, 959, 7, 103, 2, 2, 959, 156, 3, 2, 2, 2, 960, 961, 7, 110, 2, 2, 961, 962, 7, 107, 2, 2, 962, 963, 7, 112, 2, 2, 963, 964, 7, 109, 2, 2, 964, 965, 7, 97, 2, 2, 965, 966, 7, 117, 2, 2, 966, 967, 7, 119, 2, 2, 967, 968, 7, 104, 2, 2, 968, 969, 7, 104, 2, 2, 969, 970, 7, 107, 2, 2, 970, 971, 7, 122, 2, 2, 971, 158, 3, 2, 2, 2, 972, 973, 7, 119, 2, 2, 973, 974, 7, 116, 2, 2, 974, 975, 7, 110, 2, 2, 975, 976, 7, 97, 2, 2, 976, 977, 7, 114, 2, 2, 977, 978, 7, 116, 2, 2, 978, 979, 7, 103, 2, 2, 979, 980, 7, 104, 2, 2, 980, 981, 7, 107, 2, 2, 981, 982, 7, 122, 2, 2, 982, 160, 3, 2, 2, 2, 983, 984, 7, 101, 2, 2, 984, 985, 7, 99, 2, 2, 985, 986, 7, 112, 2, 2, 986, 987, 7, 97, 2, 2, 987, 988, 7, 103, 2, 2, 988, 989, 7, 102, 2, 2, 989, 990, 7, 107, 2, 2, 990, 991, 7, 118, 2, 2, 991, 162, 3, 2, 2, 2, 992, 993, 7, 113, 2, 2, 993, 994, 7, 100, 2, 2, 994, 995, 7, 108, 2, 2, 995, 996, 7, 103, 2, 2, 996, 997, 7, 101, 2, 2, 997, 998, 7, 118, 2, 2, 998, 999, 7, 97, 2, 2, 999, 1000, 7, 103, 2, 2, 1000, 1001, 7, 122, 2, 2, 1001, 1002, 7, 114, 2, 2, 1002, 1003, 7, 116, 2, 2, 1003, 164, 3, 2, 2, 2, 1004, 1005, 7, 100, 2, 2, 1005, 1006, 7, 110, 2, 2, 1006, 1007, 7, 113, 2, 2, 1007, 1008, 7, 101, 2, 2, 1008, 1009, 7, 109, 2, 2, 1009, 166, 3, 2, 2, 2, 1010, 1011, 7, 107, 2, 2, 1011, 1012, 7, 118, 2, 2, 1012, 1013, 7, 103, 2, 2, 1013, 1014, 7, 111, 2, 2, 1014, 1015, 7, 97, 2, 2, 1015, 1016, 7, 112, 2, 2, 1016, 1017, 7, 99, 2, 2, 1017, 1018, 7, 111, 2, 2, 1018, 1019, 7, 103, 2, 2, 1019, 168, 3, 2, 2, 2, 1020, 1021, 7, 114, 2, 2, 1021, 1022, 7, 109, 2, 2, 1022, 1023, 7, 97, 2, 2, 1023, 1024, 7, 114, 2, 2, 1024, 1025, 7, 99, 2, 2, 1025, 1026, 7, 116, 2, 2, 1026, 1027, 7, 99, 2, 2, 1027, 1028, 7, 111, 2, 2, 1028, 170, 3, 2, 2, 2, 1029, 1030, 7, 110, 2, 2, 1030, 1031, 7, 107, 2, 2, 1031, 1032, 7, 117, 2, 2, 1032, 1033, 7, 118, 2, 2, 1033, 1034, 7, 97, 2, 2, 1034, 1035, 7, 104, 2, 2, 1035, 1036, 7, 107, 2, 2, 1036, 1037, 7, 103, 2, 2, 1037, 1038, 7, 110, 2, 2, 1038, 1039, 7, 102, 2, 2, 1039, 1040, 7, 117, 2, 2, 1040, 172, 3, 2, 2, 2, 1041, 1042, 7, 102, 2, 2, 1042, 1043, 7, 103, 2, 2, 1043, 1044, 7, 110, 2, 2, 1044, 1045, 7, 103, 2, 2, 1045, 1046, 7, 118, 2, 2, 1046, 1047, 7, 103, 2, 2, 1047, 174, 3, 2, 2, 2, 1048, 1049, 7, 103, 2, 2, 1049, 1050, 7, 102, 2, 2, 1050, 1051, 7, 107, 2, 2, 1051, 1052, 7, 118, 2, 2, 1052, 176, 3, 2, 2, 2, 1053, 1054, 7, 101, 2, 2, 1054, 1055, 7, 116, 2, 2, 1055, 1056, 7, 103, 2, 2, 1056, 1057, 7, 99, 2, 2, 1057, 1058, 7, 118, 2, 2, 1058, 1059, 7, 103, 2, 2, 1059, 178, 3, 2, 2, 2, 1060, 1061, 7, 102, 2, 2, 1061, 1062, 7, 103, 2, 2, 1062, 1063, 7, 118, 2, 2, 1063, 1064, 7, 99, 2, 2, 1064, 1065, 7, 107, 2, 2, 1065, 1066, 7, 110, 2, 2, 1066, 180, 3, 2, 2, 2, 1067, 1068, 7, 117, 2, 2, 1068, 1069, 7, 109, 2, 2, 1069, 1070, 7, 107, 2, 2, 1070, 1071, 7, 114, 2, 2, 1071, 182, 3, 2, 2, 2, 1072, 1073, 7, 104, 2, 2, 1073, 1074, 7, 116, 2, 2, 1074, 1075, 7, 113, 2, 2, 1075, 1076, 7, 111, 2, 2, 1076, 184, 3, 2, 2, 2, 1077, 1078, 7, 45, 2, 2, 1078, 1079, 7, 114, 2, 2, 1079, 1080, 7, 113, 2, 2, 1080, 1081, 7, 110, 2, 2, 1081, 1082, 7, 123, 2, 2, 1082, 1083, 7, 111, 2, 2, 1083, 1084, 7, 113, 2, 2, 1084, 1085, 7, 116, 2, 2, 1085, 1086, 7, 114, 2, 2, 1086, 1087, 7, 106, 2, 2, 1087, 1088, 7, 107, 2, 2, 1088, 1089, 7, 101, 2, 2, 1089, 1090, 7, 97, 2, 2, 1090, 1091, 7, 110, 2, 2, 1091, 1092, 7, 107, 2, 2, 1092, 1093, 7, 117, 2, 2, 1093, 1094, 7, 118, 2, 2, 1094, 186, 3, 2, 2, 2, 1095, 1096, 7, 101, 2, 2, 1096, 1097, 7, 117, 2, 2, 1097, 1098, 7, 117, 2, 2, 1098, 188, 3, 2, 2, 2, 1099, 1100, 7, 108, 2, 2, 1100, 1101, 7, 117, 2, 2, 1101, 190, 3, 2, 2, 2, 1102, 1103, 7, 118, 2, 2, 1103, 1104, 7, 99, 2, 2, 1104, 1105, 7, 100, 2, 2, 1105, 1106, 7, 119, 2, 2, 1106, 1107, 7, 110, 2, 2, 1107, 1108, 7, 99, 2, 2, 1108, 1109, 7, 116, 2, 2, 1109, 192, 3, 2, 2, 2, 1110, 1111, 7, 117, 2, 2, 1111, 1112, 7, 118, 2, 2, 1112, 1113, 7, 99, 2, 2, 1113, 1114, 7, 101, 2, 2, 1114, 1115, 7, 109, 2, 2, 1115, 1116, 7, 103, 2, 2, 1116, 1117, 7, 102, 2, 2, 1117, 194, 3, 2, 2, 2, 1118, 1119, 7, 114, 2, 2, 1119, 1120, 7, 113, 2, 2, 1120, 1121, 7, 110, 2, 2, 1121, 1122, 7, 123, 2, 2, 1122, 1123, 7, 111, 2, 2, 1123, 1124, 7, 113, 2, 2, 1124, 1125, 7, 116, 2, 2, 1125, 1126, 7, 114, 2, 2, 1126, 1127, 7, 106, 2, 2, 1127, 1128, 7, 107, 2, 2, 1128, 1129, 7, 101, 2, 2, 1129, 196, 3, 2, 2, 2, 1130, 1131, 7, 107, 2, 2, 1131, 1132, 7, 112, 2, 2, 1132, 1133, 7, 110, 2, 2, 1133, 1134, 7, 107, 2, 2, 1134, 1135, 7, 112, 2, 2, 1135, 1136, 7, 103, 2, 2, 1136, 198, 3, 2, 2, 2, 1137, 1138, 7, 118, 2, 2, 1138, 1139, 7, 123, 2, 2, 1139, 1140, 7, 114, 2, 2, 1140, 1141, 7, 103, 2, 2, 1141, 200, 3, 2, 2, 2, 1142, 1143, 7, 119, 2, 2, 1143, 1144, 7, 117, 2, 2, 1144, 1145, 7, 103, 2, 2, 1145, 1146, 7, 116, 2, 2, 1146, 1147, 7, 97, 2, 2, 1147, 1148, 7, 104, 2, 2, 1148, 1149, 7, 107, 2, 2, 1149, 1150, 7, 103, 2, 2, 1150, 1151, 7, 110, 2, 2, 1151, 1152, 7, 102, 2, 2, 1152, 202, 3, 2, 2, 2, 1153, 1154, 7, 99, 2, 2, 1154, 1155, 7, 112, 2, 2, 1155, 1156, 7, 112, 2, 2, 1156, 1157, 7, 113, 2, 2, 1157, 1158, 7, 118, 2, 2, 1158, 1159, 7, 99, 2, 2, 1159, 1160, 7, 118, 2, 2, 1160, 1161, 7, 103, 2, 2, 1161, 204, 3, 2, 2, 2, 1162, 1163, 7, 113, 2, 2, 1163, 1164, 7, 112, 2, 2, 1164, 1165, 7, 97, 2, 2, 1165, 1166, 7, 101, 2, 2, 1166, 1167, 7, 116, 2, 2, 1167, 1168, 7, 103, 2, 2, 1168, 1169, 7, 99, 2, 2, 1169, 1170, 7, 118, 2, 2, 1170, 1171, 7, 103, 2, 2, 1171, 206, 3, 2, 2, 2, 1172, 1173, 7, 115, 2, 2, 1173, 1174, 7, 119, 2, 2, 1174, 1175, 7, 103, 2, 2, 1175, 1176, 7, 116, 2, 2, 1176, 1177, 7, 123, 2, 2, 1177, 208, 3, 2, 2, 2, 1178, 1179, 7, 99, 2, 2, 1179, 1180, 7, 119, 2, 2, 1180, 1181, 7, 118, 2, 2, 1181, 1182, 7, 106, 2, 2, 1182, 210, 3, 2, 2, 2, 1183, 1184, 7, 101, 2, 2, 1184, 1185, 7, 113, 2, 2, 1185, 1186, 7, 119, 2, 2, 1186, 1187, 7, 112, 2, 2, 1187, 1188, 7, 118, 2, 2, 1188, 212, 3, 2, 2, 2, 1189, 1190, 7, 107, 2, 2, 1190, 1191, 7, 51, 2, 2, 1191, 1192, 7, 58, 2, 2, 1192, 1193, 7, 112, 2, 2, 1193, 214, 3, 2, 2, 2, 1194, 1195, 7, 103, 2, 2, 1195, 1196, 7, 122, 2, 2, 1196, 1197, 7, 118, 2, 2, 1197, 1198, 7, 116, 2, 2, 1198, 1199, 7, 99, 2, 2, 1199, 216, 3, 2, 2, 2, 1200, 1201, 7, 118, 2, 2, 1201, 1202, 7, 99, 2, 2, 1202, 1203, 7, 100, 2, 2, 1203, 1204, 7, 117, 2, 2, 1204, 218, 3, 2, 2, 2, 1205, 1206, 7, 110, 2, 2, 1206, 1207, 7, 107, 2, 2, 1207, 1208, 7, 117, 2, 2, 1208, 1209, 7, 118, 2, 2, 1209, 220, 3, 2, 2, 2, 1210, 1211, 7, 116, 2, 2, 1211, 1212, 7, 103, 2, 2, 1212, 1213, 7, 99, 2, 2, 1213, 1214, 7, 102, 2, 2, 1214, 1215, 7, 97, 2, 2, 1215, 1216, 7, 113, 2, 2, 1216, 1217, 7, 112, 2, 2, 1217, 1218, 7, 110, 2, 2, 1218, 1219, 7, 123, 2, 2, 1219, 222, 3, 2, 2, 2, 1220, 1221, 7, 110, 2, 2, 1221, 1222, 7, 107, 2, 2, 1222, 1223, 7, 117, 2, 2, 1223, 1224, 7, 118, 2, 2, 1224, 1225, 7, 97, 2, 2, 1225, 1226, 7, 103, 2, 2, 1226, 1227, 7, 102, 2, 2, 1227, 1228, 7, 107, 2, 2, 1228, 1229, 7, 118, 2, 2, 1229, 1230, 7, 99, 2, 2, 1230, 1231, 7, 100, 2, 2, 1231, 1232, 7, 110, 2, 2, 1232, 1233, 7, 103, 2, 2, 1233, 224, 3, 2, 2, 2, 1234, 1235, 7, 110, 2, 2, 1235, 1236, 7, 107, 2, 2, 1236, 1237, 7, 117, 2, 2, 1237, 1238, 7, 118, 2, 2, 1238, 1239, 7, 97, 2, 2, 1239, 1240, 7, 104, 2, 2, 1240, 1241, 7, 107, 2, 2, 1241, 1242, 7, 110, 2, 2, 1242, 1243, 7, 118, 2, 2, 1243, 1244, 7, 103, 2, 2, 1244, 1245, 7, 116, 2, 2, 1245, 226, 3, 2, 2, 2, 1246, 1247, 7, 110, 2, 2, 1247, 1248, 7, 107, 2, 2, 1248, 1249, 7, 117, 2, 2, 1249, 1250, 7, 118, 2, 2, 1250, 1251, 7, 97, 2, 2, 1251, 1252, 7, 117, 2, 2, 1252, 1253, 7, 103, 2, 2, 1253, 1254, 7, 99, 2, 2, 1254, 1255, 7, 116, 2, 2, 1255, 1256, 7, 101, 2, 2, 1256, 1257, 7, 106, 2, 2, 1257, 228, 3, 2, 2, 2, 1258, 1259, 7, 104, 2, 2, 1259, 1260, 7, 107, 2, 2, 1260, 1261, 7, 103, 2, 2, 1261, 1262, 7, 110, 2, 2, 1262, 1263, 7, 102, 2, 2, 1263, 1264, 7, 117, 2, 2, 1264, 230, 3, 2, 2, 2, 1265, 1266, 7, 107, 2, 2, 1266, 1267, 7, 111, 2, 2, 1267, 1268, 7, 114, 2, 2, 1268, 1269, 7, 113, 2, 2, 1269, 1270, 7, 116, 2, 2, 1270, 1271, 7, 118, 2, 2, 1271, 232, 3, 2, 2, 2, 1272, 1273, 7, 99, 2, 2, 1273, 1274, 7, 117, 2, 2, 1274, 234, 3, 2, 2, 2, 1275, 1280, 7, 116, 2, 2, 1276, 1277, 7, 116, 2, 2, 1277, 1280, 7, 121, 2, 2, 1278, 1280, 7, 121, 2, 2, 1279, 1275, 3, 2, 2, 2, 1279, 1276, 3, 2, 2, 2, 1279, 1278, 3, 2, 2, 2, 1280, 236, 3, 2, 2, 2, 1281, 1282, 7, 118, 2, 2, 1282, 1283, 7, 116, 2, 2, 1283, 1284, 7, 119, 2, 2, 1284, 1291, 7, 103, 2, 2, 1285, 1286, 7, 104, 2, 2, 1286, 1287, 7, 99, 2, 2, 1287, 1288, 7, 110, 2, 2, 1288, 1289, 7, 117, 2, 2, 1289, 1291, 7, 103, 2, 2, 1290, 1281, 3, 2, 2, 2, 1290, 1285, 3, 2, 2, 2, 1291, 238, 3, 2, 2, 2, 1292, 1293, 11, 2, 2, 2, 1293, 240, 3, 2, 2, 2, 1294, 1296, 7, 15, 2, 2, 1295, 1294, 3, 2, 2, 2, 1295, 1296, 3, 2, 2, 2, 1296, 1297, 3, 2, 2, 2, 1297, 1300, 7, 12, 2, 2, 1298, 1300, 7, 15, 2, 2, 1299, 1295, 3, 2, 2, 2, 1299, 1298, 3, 2, 2, 2, 1300, 242, 3, 2, 2, 2, 1301, 1305, 9, 2, 2, 2, 1302, 1304, 9, 3, 2, 2, 1303, 1302, 3, 2, 2, 2, 1304, 1307, 3, 2, 2, 2, 1305, 1303, 3, 2, 2, 2, 1305, 1306, 3, 2, 2, 2, 1306, 244, 3, 2, 2, 2, 1307, 1305, 3, 2, 2, 2, 1308, 1312, 9, 4, 2, 2, 1309, 1311, 9, 5, 2, 2, 1310, 1309, 3, 2, 2, 2, 1311, 1314, 3, 2, 2, 2, 1312, 1310, 3, 2, 2, 2, 1312, 1313, 3, 2, 2, 2, 1313, 246, 3, 2, 2, 2, 1314, 1312, 3, 2, 2, 2, 1315, 1316, 5, 245, 122, 2, 1316, 1317, 7, 122, 2, 2, 1317, 1318, 5, 245, 122, 2, 1318, 248, 3, 2, 2, 2, 1319, 1320, 7, 62, 2, 2, 1320, 250, 3, 2, 2, 2, 1321, 1322, 7, 64, 2, 2, 1322, 252, 3, 2, 2, 2, 1323, 1324, 7, 60, 2, 2, 1324, 254, 3, 2, 2, 2, 1325, 1326, 7, 96, 2, 2, 1326, 256, 3, 2, 2, 2, 1327, 1328, 7, 42, 2, 2, 1328, 258, 3, 2, 2, 2, 1329, 1330, 7, 43, 2, 2, 1330, 260, 3, 2, 2, 2, 1331, 1332, 7, 93, 2, 2, 1332, 262, 3, 2, 2, 2, 1333, 1334, 7, 95, 2, 2, 1334, 264, 3, 2, 2, 2, 1335, 1336, 7, 65, 2, 2, 1336, 266, 3, 2, 2, 2, 1337, 1338, 7, 97, 2, 2, 1338, 268, 3, 2, 2, 2, 1339, 1340, 7, 47, 2, 2, 1340, 270, 3, 2, 2, 2, 1341, 1342, 7, 46, 2, 2, 1342, 272, 3, 2, 2, 2, 1343, 1344, 7, 48, 2, 2, 1344, 274, 3, 2, 2, 2, 1345, 1346, 7, 37, 2, 2, 1346, 276, 3, 2, 2, 2, 1347, 1348, 7, 49, 2, 2, 1348, 278, 3, 2, 2, 2, 1349, 1350, 7, 63, 2, 2, 1350, 280, 3, 2, 2, 2, 1351, 1352, 7, 38, 2, 2, 1352, 282, 3, 2, 2, 2, 1353, 1354, 7, 40, 2, 2, 1354, 284, 3, 2, 2, 2, 1355, 1356, 7, 35, 2, 2, 1356, 286, 3, 2, 2, 2, 1357, 1358, 7, 44, 2, 2, 1358, 288, 3, 2, 2, 2, 1359, 1360, 7, 128, 2, 2, 1360, 290, 3, 2, 2, 2, 1361, 1362, 7, 126, 2, 2, 1362, 292, 3, 2, 2, 2, 1363, 1371, 7, 36, 2, 2, 1364, 1370, 10, 6, 2, 2, 1365, 1366, 7, 94, 2, 2, 1366, 1370, 7, 94, 2, 2, 1367, 1368, 7, 94, 2, 2, 1368, 1370, 7, 36, 2, 2, 1369, 1364, 3, 2, 2, 2, 1369, 1365, 3, 2, 2, 2, 1369, 1367, 3, 2, 2, 2, 1370, 1373, 3, 2, 2, 2, 1371, 1369, 3, 2, 2, 2, 1371, 1372, 3, 2, 2, 2, 1372, 1374, 3, 2, 2, 2, 1373, 1371, 3, 2, 2, 2, 1374, 1375, 7, 36, 2, 2, 1375, 294, 3, 2, 2, 2, 1376, 1384, 7, 41, 2, 2, 1377, 1383, 10, 7, 2, 2, 1378, 1379, 7, 94, 2, 2, 1379, 1383, 7, 94, 2, 2, 1380, 1381, 7, 94, 2, 2, 1381, 1383, 7, 41, 2, 2, 1382, 1377, 3, 2, 2, 2, 1382, 1378, 3, 2, 2, 2, 1382, 1380, 3, 2, 2, 2, 1383, 1386, 3, 2, 2, 2, 1384, 1382, 3, 2, 2, 2, 1384, 1385, 3, 2, 2, 2, 1385, 1387, 3, 2, 2, 2, 1386, 1384, 3, 2, 2, 2, 1387, 1388, 7, 41, 2, 2, 1388, 296, 3, 2, 2, 2, 1389, 1390, 7, 49, 2, 2, 1390, 1391, 7, 49, 2, 2, 1391, 1392, 3, 2, 2, 2, 1392, 1393, 5, 299, 149, 2, 1393, 1394, 3, 2, 2, 2, 1394, 1395, 8, 148, 2, 2, 1395, 298, 3, 2, 2, 2, 1396, 1398, 11, 2, 2, 2, 1397, 1396, 3, 2, 2, 2, 1398, 1401, 3, 2, 2, 2, 1399, 1400, 3, 2, 2, 2, 1399, 1397, 3, 2, 2, 2, 1400, 1404, 3, 2, 2, 2, 1401, 1399, 3, 2, 2, 2, 1402, 1405, 5, 241, 120, 2, 1403, 1405, 7, 2, 2, 3, 1404, 1402, 3, 2, 2, 2, 1404, 1403, 3, 2, 2, 2, 1405, 300, 3, 2, 2, 2, 1406, 1407, 7, 49, 2, 2, 1407, 1408, 7, 44, 2, 2, 1408, 1412, 3, 2, 2, 2, 1409, 1411, 11, 2, 2, 2, 1410, 1409, 3, 2, 2, 2, 1411, 1414, 3, 2, 2, 2, 1412, 1413, 3, 2, 2, 2, 1412, 1410, 3, 2, 2, 2, 1413, 1415, 3, 2, 2, 2, 1414, 1412, 3, 2, 2, 2, 1415, 1416, 7, 44, 2, 2, 1416, 1417, 7, 49, 2, 2, 1417, 1418, 3, 2, 2, 2, 1418, 1419, 8, 150, 2, 2, 1419, 302, 3, 2, 2, 2, 1420, 1421, 9, 8, 2, 2, 1421, 304, 3, 2, 2, 2, 1422, 1423, 7, 34, 2, 2, 1423, 1424, 3, 2, 2, 2, 1424, 1425, 8, 152, 2, 2, 1425, 306, 3, 2, 2, 2, 1426, 1427, 7, 62, 2, 2, 1427, 1431, 7, 62, 2, 2, 1428, 1429, 7, 62, 2, 2, 1429, 1431, 7, 66, 2, 2, 1430, 1426, 3, 2, 2, 2, 1430, 1428, 3, 2, 2, 2, 1431, 1432, 3, 2, 2, 2, 1432, 1433, 8, 153, 3, 2, 1433, 308, 3, 2, 2, 2, 1434, 1435, 7, 60, 2, 2, 1435, 1436, 7, 63, 2, 2, 1436, 1440, 3, 2, 2, 2, 1437, 1439, 5, 305, 152, 2, 1438, 1437, 3, 2, 2, 2, 1439, 1442, 3, 2, 2, 2, 1440, 1438, 3, 2, 2, 2, 1440, 1441, 3, 2, 2, 2, 1441, 1443, 3, 2, 2, 2, 1442, 1440, 3, 2, 2, 2, 1443, 1444, 8, 154, 4, 2, 1444, 310, 3, 2, 2, 2, 1445, 1446, 7, 66, 2, 2, 1446, 1447, 7, 63, 2, 2, 1447, 1451, 3, 2, 2, 2, 1448, 1450, 5, 305, 152, 2, 1449, 1448, 3, 2, 2, 2, 1450, 1453, 3, 2, 2, 2, 1451, 1449, 3, 2, 2, 2, 1451, 1452, 3, 2, 2, 2, 1452, 1454, 3, 2, 2, 2, 1453, 1451, 3, 2, 2, 2, 1454, 1455, 8, 155, 4, 2, 1455, 312, 3, 2, 2, 2, 1456, 1461, 7, 125, 2, 2, 1457, 1460, 5, 313, 156, 2, 1458, 1460, 10, 9, 2, 2, 1459, 1457, 3, 2, 2, 2, 1459, 1458, 3, 2, 2, 2, 1460, 1463, 3, 2, 2, 2, 1461, 1459, 3, 2, 2, 2, 1461, 1462, 3, 2, 2, 2, 1462, 1464, 3, 2, 2, 2, 1463, 1461, 3, 2, 2, 2, 1464, 1465, 7, 127, 2, 2, 1465, 314, 3, 2, 2, 2, 1466, 1467, 5, 239, 119, 2, 1467, 316, 3, 2, 2, 2, 1468, 1469, 7, 12, 2, 2, 1469, 1470, 3, 2, 2, 2, 1470, 1471, 8, 158, 5, 2, 1471, 1472, 8, 158, 6, 2, 1472, 318, 3, 2, 2, 2, 1473, 1475, 10, 10, 2, 2, 1474, 1473, 3, 2, 2, 2, 1475, 1476, 3, 2, 2, 2, 1476, 1474, 3, 2, 2, 2, 1476, 1477, 3, 2, 2, 2, 1477, 1478, 3, 2, 2, 2, 1478, 1479, 8, 159, 6, 2, 1479, 320, 3, 2, 2, 2, 1480, 1481, 5, 239, 119, 2, 1481, 322, 3, 2, 2, 2, 1482, 1483, 7, 61, 2, 2, 1483, 1484, 3, 2, 2, 2, 1484, 1485, 8, 161, 6, 2, 1485, 324, 3, 2, 2, 2, 1486, 1488, 10, 11, 2, 2, 1487, 1486, 3, 2, 2, 2, 1488, 1489, 3, 2, 2, 2, 1489, 1487, 3, 2, 2, 2, 1489, 1490, 3, 2, 2, 2, 1490, 1491, 3, 2, 2, 2, 1491, 1492, 8, 162, 7, 2, 1492, 326, 3, 2, 2, 2, 1493, 1494, 5, 239, 119, 2, 1494, 328, 3, 2, 2, 2, 25, 2, 3, 4, 1279, 1290, 1295, 1299, 1305, 1312, 1369, 1371, 1382, 1384, 1399, 1404, 1412, 1430, 1440, 1451, 1459, 1461, 1476, 1489, 8, 2, 3, 2, 7, 4, 2, 7, 3, 2, 9, 120, 2, 6, 2, 2, 9, 157, 2] \ No newline at end of file diff --git a/zmei_generator/parser/gen/ZmeiLangSimpleLexer.py b/zmei_generator/parser/gen/ZmeiLangSimpleLexer.py index 56ae4b5..30ae5c6 100644 --- a/zmei_generator/parser/gen/ZmeiLangSimpleLexer.py +++ b/zmei_generator/parser/gen/ZmeiLangSimpleLexer.py @@ -1,4 +1,4 @@ -# Generated from /Users/aleksandrrudakov/dev/zmei/generator/zmei_generator/parser/gen/grammar/ZmeiLangSimpleLexer.g4 by ANTLR 4.7.2 +# Generated from /Users/alexanderbudanov/Sites/negative/generator/zmei_generator/parser/gen/grammar/ZmeiLangSimpleLexer.g4 by ANTLR 4.7.2 from antlr4 import * from io import StringIO from typing.io import TextIO @@ -9,7 +9,7 @@ def serializedATN(): with StringIO() as buf: buf.write("\3\u608b\ua72a\u8133\ub9ed\u417c\u3be7\u7786\u5964\2\u00a1") - buf.write("\u05db\b\1\b\1\b\1\4\2\t\2\4\3\t\3\4\4\t\4\4\5\t\5\4\6") + buf.write("\u05d7\b\1\b\1\b\1\4\2\t\2\4\3\t\3\4\4\t\4\4\5\t\5\4\6") buf.write("\t\6\4\7\t\7\4\b\t\b\4\t\t\t\4\n\t\n\4\13\t\13\4\f\t\f") buf.write("\4\r\t\r\4\16\t\16\4\17\t\17\4\20\t\20\4\21\t\21\4\22") buf.write("\t\22\4\23\t\23\4\24\t\24\4\25\t\25\4\26\t\26\4\27\t\27") @@ -95,81 +95,81 @@ def serializedATN(): buf.write("c\3d\3d\3d\3d\3d\3d\3d\3d\3d\3d\3d\3e\3e\3e\3e\3e\3e\3") buf.write("e\3e\3e\3f\3f\3f\3f\3f\3f\3f\3f\3f\3f\3g\3g\3g\3g\3g\3") buf.write("g\3h\3h\3h\3h\3h\3i\3i\3i\3i\3i\3i\3j\3j\3j\3j\3j\3k\3") - buf.write("k\3k\3k\3k\3k\3k\3k\3k\3k\3l\3l\3l\3l\3l\3m\3m\3m\3m\3") - buf.write("m\3n\3n\3n\3n\3n\3n\3n\3n\3n\3n\3o\3o\3o\3o\3o\3o\3o\3") - buf.write("o\3o\3o\3o\3o\3o\3o\3p\3p\3p\3p\3p\3p\3p\3p\3p\3p\3p\3") - buf.write("p\3q\3q\3q\3q\3q\3q\3q\3q\3q\3q\3q\3q\3r\3r\3r\3r\3r\3") - buf.write("r\3r\3s\3s\3s\3s\3s\3s\3s\3t\3t\3t\3u\3u\3u\3u\5u\u0504") - buf.write("\nu\3v\3v\3v\3v\3v\3v\3v\3v\3v\5v\u050f\nv\3w\3w\3x\5") - buf.write("x\u0514\nx\3x\3x\5x\u0518\nx\3y\3y\7y\u051c\ny\fy\16y") - buf.write("\u051f\13y\3z\3z\7z\u0523\nz\fz\16z\u0526\13z\3{\3{\3") - buf.write("{\3{\3|\3|\3}\3}\3~\3~\3\177\3\177\3\u0080\3\u0080\3\u0081") - buf.write("\3\u0081\3\u0082\3\u0082\3\u0083\3\u0083\3\u0084\3\u0084") - buf.write("\3\u0085\3\u0085\3\u0086\3\u0086\3\u0087\3\u0087\3\u0088") - buf.write("\3\u0088\3\u0089\3\u0089\3\u008a\3\u008a\3\u008b\3\u008b") - buf.write("\3\u008c\3\u008c\3\u008d\3\u008d\3\u008e\3\u008e\3\u008f") - buf.write("\3\u008f\3\u0090\3\u0090\3\u0091\3\u0091\3\u0092\3\u0092") - buf.write("\3\u0092\3\u0092\3\u0092\3\u0092\7\u0092\u055e\n\u0092") - buf.write("\f\u0092\16\u0092\u0561\13\u0092\3\u0092\3\u0092\3\u0093") - buf.write("\3\u0093\3\u0093\3\u0093\3\u0093\3\u0093\7\u0093\u056b") - buf.write("\n\u0093\f\u0093\16\u0093\u056e\13\u0093\3\u0093\3\u0093") - buf.write("\3\u0094\3\u0094\3\u0094\3\u0094\3\u0094\3\u0094\3\u0094") - buf.write("\3\u0095\7\u0095\u057a\n\u0095\f\u0095\16\u0095\u057d") - buf.write("\13\u0095\3\u0095\3\u0095\5\u0095\u0581\n\u0095\3\u0096") - buf.write("\3\u0096\3\u0096\3\u0096\7\u0096\u0587\n\u0096\f\u0096") - buf.write("\16\u0096\u058a\13\u0096\3\u0096\3\u0096\3\u0096\3\u0096") - buf.write("\3\u0096\3\u0097\3\u0097\3\u0098\3\u0098\3\u0098\3\u0098") - buf.write("\3\u0099\3\u0099\3\u0099\3\u0099\5\u0099\u059b\n\u0099") - buf.write("\3\u0099\3\u0099\3\u009a\3\u009a\3\u009a\3\u009a\7\u009a") - buf.write("\u05a3\n\u009a\f\u009a\16\u009a\u05a6\13\u009a\3\u009a") - buf.write("\3\u009a\3\u009b\3\u009b\3\u009b\3\u009b\7\u009b\u05ae") - buf.write("\n\u009b\f\u009b\16\u009b\u05b1\13\u009b\3\u009b\3\u009b") - buf.write("\3\u009c\3\u009c\3\u009c\7\u009c\u05b8\n\u009c\f\u009c") - buf.write("\16\u009c\u05bb\13\u009c\3\u009c\3\u009c\3\u009d\3\u009d") - buf.write("\3\u009e\3\u009e\3\u009e\3\u009e\3\u009e\3\u009f\6\u009f") - buf.write("\u05c7\n\u009f\r\u009f\16\u009f\u05c8\3\u009f\3\u009f") - buf.write("\3\u00a0\3\u00a0\3\u00a1\3\u00a1\3\u00a1\3\u00a1\3\u00a2") - buf.write("\6\u00a2\u05d4\n\u00a2\r\u00a2\16\u00a2\u05d5\3\u00a2") - buf.write("\3\u00a2\3\u00a3\3\u00a3\4\u057b\u0588\2\u00a4\5\3\7\4") - buf.write("\t\5\13\6\r\7\17\b\21\t\23\n\25\13\27\f\31\r\33\16\35") - buf.write("\17\37\20!\21#\22%\23\'\24)\25+\26-\27/\30\61\31\63\32") - buf.write("\65\33\67\349\35;\36=\37? A!C\"E#G$I%K&M\'O(Q)S*U+W,Y") - buf.write("-[.]/_\60a\61c\62e\63g\64i\65k\66m\67o8q9s:u;w}?") - buf.write("\177@\u0081A\u0083B\u0085C\u0087D\u0089E\u008bF\u008d") - buf.write("G\u008fH\u0091I\u0093J\u0095K\u0097L\u0099M\u009bN\u009d") - buf.write("O\u009fP\u00a1Q\u00a3R\u00a5S\u00a7T\u00a9U\u00abV\u00ad") - buf.write("W\u00afX\u00b1Y\u00b3Z\u00b5[\u00b7\\\u00b9]\u00bb^\u00bd") - buf.write("_\u00bf`\u00c1a\u00c3b\u00c5c\u00c7d\u00c9e\u00cbf\u00cd") - buf.write("g\u00cfh\u00d1i\u00d3j\u00d5k\u00d7l\u00d9m\u00dbn\u00dd") - buf.write("o\u00dfp\u00e1q\u00e3r\u00e5s\u00e7t\u00e9u\u00ebv\u00ed") - buf.write("w\u00ef\2\u00f1x\u00f3y\u00f5z\u00f7{\u00f9|\u00fb}\u00fd") - buf.write("~\u00ff\177\u0101\u0080\u0103\u0081\u0105\u0082\u0107") - buf.write("\u0083\u0109\u0084\u010b\u0085\u010d\u0086\u010f\u0087") - buf.write("\u0111\u0088\u0113\u0089\u0115\u008a\u0117\u008b\u0119") - buf.write("\u008c\u011b\u008d\u011d\u008e\u011f\u008f\u0121\u0090") - buf.write("\u0123\u0091\u0125\u0092\u0127\u0093\u0129\u0094\u012b") - buf.write("\2\u012d\u0095\u012f\u0096\u0131\u0097\u0133\u0098\u0135") - buf.write("\u0099\u0137\u009a\u0139\u009b\u013b\u009c\u013d\u00a1") - buf.write("\u013f\u009d\u0141\u009e\u0143\u009f\u0145\2\u0147\u00a0") - buf.write("\5\2\3\4\f\5\2C\\aac|\6\2\62;C\\aac|\3\2\63;\3\2\62;\5") - buf.write("\2\f\f\17\17$$\5\2\f\f\17\17))\n\2\u00b9\u00b9\u0302\u0371") - buf.write("\u2041\u2042\u2072\u2191\u2c02\u2ff1\u3003\ud801\uf902") - buf.write("\ufdd1\ufdf2\uffff\4\2}}\177\177\3\2\f\f\4\2\f\f==\2\u05ed") - buf.write("\2\5\3\2\2\2\2\7\3\2\2\2\2\t\3\2\2\2\2\13\3\2\2\2\2\r") - buf.write("\3\2\2\2\2\17\3\2\2\2\2\21\3\2\2\2\2\23\3\2\2\2\2\25\3") - buf.write("\2\2\2\2\27\3\2\2\2\2\31\3\2\2\2\2\33\3\2\2\2\2\35\3\2") - buf.write("\2\2\2\37\3\2\2\2\2!\3\2\2\2\2#\3\2\2\2\2%\3\2\2\2\2\'") - buf.write("\3\2\2\2\2)\3\2\2\2\2+\3\2\2\2\2-\3\2\2\2\2/\3\2\2\2\2") - buf.write("\61\3\2\2\2\2\63\3\2\2\2\2\65\3\2\2\2\2\67\3\2\2\2\29") - buf.write("\3\2\2\2\2;\3\2\2\2\2=\3\2\2\2\2?\3\2\2\2\2A\3\2\2\2\2") - buf.write("C\3\2\2\2\2E\3\2\2\2\2G\3\2\2\2\2I\3\2\2\2\2K\3\2\2\2") - buf.write("\2M\3\2\2\2\2O\3\2\2\2\2Q\3\2\2\2\2S\3\2\2\2\2U\3\2\2") - buf.write("\2\2W\3\2\2\2\2Y\3\2\2\2\2[\3\2\2\2\2]\3\2\2\2\2_\3\2") - buf.write("\2\2\2a\3\2\2\2\2c\3\2\2\2\2e\3\2\2\2\2g\3\2\2\2\2i\3") - buf.write("\2\2\2\2k\3\2\2\2\2m\3\2\2\2\2o\3\2\2\2\2q\3\2\2\2\2s") - buf.write("\3\2\2\2\2u\3\2\2\2\2w\3\2\2\2\2y\3\2\2\2\2{\3\2\2\2\2") - buf.write("}\3\2\2\2\2\177\3\2\2\2\2\u0081\3\2\2\2\2\u0083\3\2\2") - buf.write("\2\2\u0085\3\2\2\2\2\u0087\3\2\2\2\2\u0089\3\2\2\2\2\u008b") + buf.write("k\3k\3k\3k\3k\3l\3l\3l\3l\3l\3m\3m\3m\3m\3m\3n\3n\3n\3") + buf.write("n\3n\3n\3n\3n\3n\3n\3o\3o\3o\3o\3o\3o\3o\3o\3o\3o\3o\3") + buf.write("o\3o\3o\3p\3p\3p\3p\3p\3p\3p\3p\3p\3p\3p\3p\3q\3q\3q\3") + buf.write("q\3q\3q\3q\3q\3q\3q\3q\3q\3r\3r\3r\3r\3r\3r\3r\3s\3s\3") + buf.write("s\3s\3s\3s\3s\3t\3t\3t\3u\3u\3u\3u\5u\u0500\nu\3v\3v\3") + buf.write("v\3v\3v\3v\3v\3v\3v\5v\u050b\nv\3w\3w\3x\5x\u0510\nx\3") + buf.write("x\3x\5x\u0514\nx\3y\3y\7y\u0518\ny\fy\16y\u051b\13y\3") + buf.write("z\3z\7z\u051f\nz\fz\16z\u0522\13z\3{\3{\3{\3{\3|\3|\3") + buf.write("}\3}\3~\3~\3\177\3\177\3\u0080\3\u0080\3\u0081\3\u0081") + buf.write("\3\u0082\3\u0082\3\u0083\3\u0083\3\u0084\3\u0084\3\u0085") + buf.write("\3\u0085\3\u0086\3\u0086\3\u0087\3\u0087\3\u0088\3\u0088") + buf.write("\3\u0089\3\u0089\3\u008a\3\u008a\3\u008b\3\u008b\3\u008c") + buf.write("\3\u008c\3\u008d\3\u008d\3\u008e\3\u008e\3\u008f\3\u008f") + buf.write("\3\u0090\3\u0090\3\u0091\3\u0091\3\u0092\3\u0092\3\u0092") + buf.write("\3\u0092\3\u0092\3\u0092\7\u0092\u055a\n\u0092\f\u0092") + buf.write("\16\u0092\u055d\13\u0092\3\u0092\3\u0092\3\u0093\3\u0093") + buf.write("\3\u0093\3\u0093\3\u0093\3\u0093\7\u0093\u0567\n\u0093") + buf.write("\f\u0093\16\u0093\u056a\13\u0093\3\u0093\3\u0093\3\u0094") + buf.write("\3\u0094\3\u0094\3\u0094\3\u0094\3\u0094\3\u0094\3\u0095") + buf.write("\7\u0095\u0576\n\u0095\f\u0095\16\u0095\u0579\13\u0095") + buf.write("\3\u0095\3\u0095\5\u0095\u057d\n\u0095\3\u0096\3\u0096") + buf.write("\3\u0096\3\u0096\7\u0096\u0583\n\u0096\f\u0096\16\u0096") + buf.write("\u0586\13\u0096\3\u0096\3\u0096\3\u0096\3\u0096\3\u0096") + buf.write("\3\u0097\3\u0097\3\u0098\3\u0098\3\u0098\3\u0098\3\u0099") + buf.write("\3\u0099\3\u0099\3\u0099\5\u0099\u0597\n\u0099\3\u0099") + buf.write("\3\u0099\3\u009a\3\u009a\3\u009a\3\u009a\7\u009a\u059f") + buf.write("\n\u009a\f\u009a\16\u009a\u05a2\13\u009a\3\u009a\3\u009a") + buf.write("\3\u009b\3\u009b\3\u009b\3\u009b\7\u009b\u05aa\n\u009b") + buf.write("\f\u009b\16\u009b\u05ad\13\u009b\3\u009b\3\u009b\3\u009c") + buf.write("\3\u009c\3\u009c\7\u009c\u05b4\n\u009c\f\u009c\16\u009c") + buf.write("\u05b7\13\u009c\3\u009c\3\u009c\3\u009d\3\u009d\3\u009e") + buf.write("\3\u009e\3\u009e\3\u009e\3\u009e\3\u009f\6\u009f\u05c3") + buf.write("\n\u009f\r\u009f\16\u009f\u05c4\3\u009f\3\u009f\3\u00a0") + buf.write("\3\u00a0\3\u00a1\3\u00a1\3\u00a1\3\u00a1\3\u00a2\6\u00a2") + buf.write("\u05d0\n\u00a2\r\u00a2\16\u00a2\u05d1\3\u00a2\3\u00a2") + buf.write("\3\u00a3\3\u00a3\4\u0577\u0584\2\u00a4\5\3\7\4\t\5\13") + buf.write("\6\r\7\17\b\21\t\23\n\25\13\27\f\31\r\33\16\35\17\37\20") + buf.write("!\21#\22%\23\'\24)\25+\26-\27/\30\61\31\63\32\65\33\67") + buf.write("\349\35;\36=\37? A!C\"E#G$I%K&M\'O(Q)S*U+W,Y-[.]/_\60") + buf.write("a\61c\62e\63g\64i\65k\66m\67o8q9s:u;w}?\177@\u0081") + buf.write("A\u0083B\u0085C\u0087D\u0089E\u008bF\u008dG\u008fH\u0091") + buf.write("I\u0093J\u0095K\u0097L\u0099M\u009bN\u009dO\u009fP\u00a1") + buf.write("Q\u00a3R\u00a5S\u00a7T\u00a9U\u00abV\u00adW\u00afX\u00b1") + buf.write("Y\u00b3Z\u00b5[\u00b7\\\u00b9]\u00bb^\u00bd_\u00bf`\u00c1") + buf.write("a\u00c3b\u00c5c\u00c7d\u00c9e\u00cbf\u00cdg\u00cfh\u00d1") + buf.write("i\u00d3j\u00d5k\u00d7l\u00d9m\u00dbn\u00ddo\u00dfp\u00e1") + buf.write("q\u00e3r\u00e5s\u00e7t\u00e9u\u00ebv\u00edw\u00ef\2\u00f1") + buf.write("x\u00f3y\u00f5z\u00f7{\u00f9|\u00fb}\u00fd~\u00ff\177") + buf.write("\u0101\u0080\u0103\u0081\u0105\u0082\u0107\u0083\u0109") + buf.write("\u0084\u010b\u0085\u010d\u0086\u010f\u0087\u0111\u0088") + buf.write("\u0113\u0089\u0115\u008a\u0117\u008b\u0119\u008c\u011b") + buf.write("\u008d\u011d\u008e\u011f\u008f\u0121\u0090\u0123\u0091") + buf.write("\u0125\u0092\u0127\u0093\u0129\u0094\u012b\2\u012d\u0095") + buf.write("\u012f\u0096\u0131\u0097\u0133\u0098\u0135\u0099\u0137") + buf.write("\u009a\u0139\u009b\u013b\u009c\u013d\u00a1\u013f\u009d") + buf.write("\u0141\u009e\u0143\u009f\u0145\2\u0147\u00a0\5\2\3\4\f") + buf.write("\5\2C\\aac|\6\2\62;C\\aac|\3\2\63;\3\2\62;\5\2\f\f\17") + buf.write("\17$$\5\2\f\f\17\17))\n\2\u00b9\u00b9\u0302\u0371\u2041") + buf.write("\u2042\u2072\u2191\u2c02\u2ff1\u3003\ud801\uf902\ufdd1") + buf.write("\ufdf2\uffff\4\2}}\177\177\3\2\f\f\4\2\f\f==\2\u05e9\2") + buf.write("\5\3\2\2\2\2\7\3\2\2\2\2\t\3\2\2\2\2\13\3\2\2\2\2\r\3") + buf.write("\2\2\2\2\17\3\2\2\2\2\21\3\2\2\2\2\23\3\2\2\2\2\25\3\2") + buf.write("\2\2\2\27\3\2\2\2\2\31\3\2\2\2\2\33\3\2\2\2\2\35\3\2\2") + buf.write("\2\2\37\3\2\2\2\2!\3\2\2\2\2#\3\2\2\2\2%\3\2\2\2\2\'\3") + buf.write("\2\2\2\2)\3\2\2\2\2+\3\2\2\2\2-\3\2\2\2\2/\3\2\2\2\2\61") + buf.write("\3\2\2\2\2\63\3\2\2\2\2\65\3\2\2\2\2\67\3\2\2\2\29\3\2") + buf.write("\2\2\2;\3\2\2\2\2=\3\2\2\2\2?\3\2\2\2\2A\3\2\2\2\2C\3") + buf.write("\2\2\2\2E\3\2\2\2\2G\3\2\2\2\2I\3\2\2\2\2K\3\2\2\2\2M") + buf.write("\3\2\2\2\2O\3\2\2\2\2Q\3\2\2\2\2S\3\2\2\2\2U\3\2\2\2\2") + buf.write("W\3\2\2\2\2Y\3\2\2\2\2[\3\2\2\2\2]\3\2\2\2\2_\3\2\2\2") + buf.write("\2a\3\2\2\2\2c\3\2\2\2\2e\3\2\2\2\2g\3\2\2\2\2i\3\2\2") + buf.write("\2\2k\3\2\2\2\2m\3\2\2\2\2o\3\2\2\2\2q\3\2\2\2\2s\3\2") + buf.write("\2\2\2u\3\2\2\2\2w\3\2\2\2\2y\3\2\2\2\2{\3\2\2\2\2}\3") + buf.write("\2\2\2\2\177\3\2\2\2\2\u0081\3\2\2\2\2\u0083\3\2\2\2\2") + buf.write("\u0085\3\2\2\2\2\u0087\3\2\2\2\2\u0089\3\2\2\2\2\u008b") buf.write("\3\2\2\2\2\u008d\3\2\2\2\2\u008f\3\2\2\2\2\u0091\3\2\2") buf.write("\2\2\u0093\3\2\2\2\2\u0095\3\2\2\2\2\u0097\3\2\2\2\2\u0099") buf.write("\3\2\2\2\2\u009b\3\2\2\2\2\u009d\3\2\2\2\2\u009f\3\2\2") @@ -230,27 +230,27 @@ def serializedATN(): buf.write("\u0471\3\2\2\2\u00c9\u0476\3\2\2\2\u00cb\u0481\3\2\2\2") buf.write("\u00cd\u048a\3\2\2\2\u00cf\u0494\3\2\2\2\u00d1\u049a\3") buf.write("\2\2\2\u00d3\u049f\3\2\2\2\u00d5\u04a5\3\2\2\2\u00d7\u04aa") - buf.write("\3\2\2\2\u00d9\u04b4\3\2\2\2\u00db\u04b9\3\2\2\2\u00dd") - buf.write("\u04be\3\2\2\2\u00df\u04c8\3\2\2\2\u00e1\u04d6\3\2\2\2") - buf.write("\u00e3\u04e2\3\2\2\2\u00e5\u04ee\3\2\2\2\u00e7\u04f5\3") - buf.write("\2\2\2\u00e9\u04fc\3\2\2\2\u00eb\u0503\3\2\2\2\u00ed\u050e") - buf.write("\3\2\2\2\u00ef\u0510\3\2\2\2\u00f1\u0517\3\2\2\2\u00f3") - buf.write("\u0519\3\2\2\2\u00f5\u0520\3\2\2\2\u00f7\u0527\3\2\2\2") - buf.write("\u00f9\u052b\3\2\2\2\u00fb\u052d\3\2\2\2\u00fd\u052f\3") - buf.write("\2\2\2\u00ff\u0531\3\2\2\2\u0101\u0533\3\2\2\2\u0103\u0535") - buf.write("\3\2\2\2\u0105\u0537\3\2\2\2\u0107\u0539\3\2\2\2\u0109") - buf.write("\u053b\3\2\2\2\u010b\u053d\3\2\2\2\u010d\u053f\3\2\2\2") - buf.write("\u010f\u0541\3\2\2\2\u0111\u0543\3\2\2\2\u0113\u0545\3") - buf.write("\2\2\2\u0115\u0547\3\2\2\2\u0117\u0549\3\2\2\2\u0119\u054b") - buf.write("\3\2\2\2\u011b\u054d\3\2\2\2\u011d\u054f\3\2\2\2\u011f") - buf.write("\u0551\3\2\2\2\u0121\u0553\3\2\2\2\u0123\u0555\3\2\2\2") - buf.write("\u0125\u0557\3\2\2\2\u0127\u0564\3\2\2\2\u0129\u0571\3") - buf.write("\2\2\2\u012b\u057b\3\2\2\2\u012d\u0582\3\2\2\2\u012f\u0590") - buf.write("\3\2\2\2\u0131\u0592\3\2\2\2\u0133\u059a\3\2\2\2\u0135") - buf.write("\u059e\3\2\2\2\u0137\u05a9\3\2\2\2\u0139\u05b4\3\2\2\2") - buf.write("\u013b\u05be\3\2\2\2\u013d\u05c0\3\2\2\2\u013f\u05c6\3") - buf.write("\2\2\2\u0141\u05cc\3\2\2\2\u0143\u05ce\3\2\2\2\u0145\u05d3") - buf.write("\3\2\2\2\u0147\u05d9\3\2\2\2\u0149\u014a\7B\2\2\u014a") + buf.write("\3\2\2\2\u00d9\u04b0\3\2\2\2\u00db\u04b5\3\2\2\2\u00dd") + buf.write("\u04ba\3\2\2\2\u00df\u04c4\3\2\2\2\u00e1\u04d2\3\2\2\2") + buf.write("\u00e3\u04de\3\2\2\2\u00e5\u04ea\3\2\2\2\u00e7\u04f1\3") + buf.write("\2\2\2\u00e9\u04f8\3\2\2\2\u00eb\u04ff\3\2\2\2\u00ed\u050a") + buf.write("\3\2\2\2\u00ef\u050c\3\2\2\2\u00f1\u0513\3\2\2\2\u00f3") + buf.write("\u0515\3\2\2\2\u00f5\u051c\3\2\2\2\u00f7\u0523\3\2\2\2") + buf.write("\u00f9\u0527\3\2\2\2\u00fb\u0529\3\2\2\2\u00fd\u052b\3") + buf.write("\2\2\2\u00ff\u052d\3\2\2\2\u0101\u052f\3\2\2\2\u0103\u0531") + buf.write("\3\2\2\2\u0105\u0533\3\2\2\2\u0107\u0535\3\2\2\2\u0109") + buf.write("\u0537\3\2\2\2\u010b\u0539\3\2\2\2\u010d\u053b\3\2\2\2") + buf.write("\u010f\u053d\3\2\2\2\u0111\u053f\3\2\2\2\u0113\u0541\3") + buf.write("\2\2\2\u0115\u0543\3\2\2\2\u0117\u0545\3\2\2\2\u0119\u0547") + buf.write("\3\2\2\2\u011b\u0549\3\2\2\2\u011d\u054b\3\2\2\2\u011f") + buf.write("\u054d\3\2\2\2\u0121\u054f\3\2\2\2\u0123\u0551\3\2\2\2") + buf.write("\u0125\u0553\3\2\2\2\u0127\u0560\3\2\2\2\u0129\u056d\3") + buf.write("\2\2\2\u012b\u0577\3\2\2\2\u012d\u057e\3\2\2\2\u012f\u058c") + buf.write("\3\2\2\2\u0131\u058e\3\2\2\2\u0133\u0596\3\2\2\2\u0135") + buf.write("\u059a\3\2\2\2\u0137\u05a5\3\2\2\2\u0139\u05b0\3\2\2\2") + buf.write("\u013b\u05ba\3\2\2\2\u013d\u05bc\3\2\2\2\u013f\u05c2\3") + buf.write("\2\2\2\u0141\u05c8\3\2\2\2\u0143\u05ca\3\2\2\2\u0145\u05cf") + buf.write("\3\2\2\2\u0147\u05d5\3\2\2\2\u0149\u014a\7B\2\2\u014a") buf.write("\u014b\7c\2\2\u014b\u014c\7f\2\2\u014c\u014d\7o\2\2\u014d") buf.write("\u014e\7k\2\2\u014e\u014f\7p\2\2\u014f\6\3\2\2\2\u0150") buf.write("\u0151\7B\2\2\u0151\u0152\7u\2\2\u0152\u0153\7w\2\2\u0153") @@ -540,126 +540,124 @@ def serializedATN(): buf.write("\u04a4\7v\2\2\u04a4\u00d4\3\2\2\2\u04a5\u04a6\7k\2\2\u04a6") buf.write("\u04a7\7\63\2\2\u04a7\u04a8\7:\2\2\u04a8\u04a9\7p\2\2") buf.write("\u04a9\u00d6\3\2\2\2\u04aa\u04ab\7g\2\2\u04ab\u04ac\7") - buf.write("z\2\2\u04ac\u04ad\7v\2\2\u04ad\u04ae\7g\2\2\u04ae\u04af") - buf.write("\7p\2\2\u04af\u04b0\7u\2\2\u04b0\u04b1\7k\2\2\u04b1\u04b2") - buf.write("\7q\2\2\u04b2\u04b3\7p\2\2\u04b3\u00d8\3\2\2\2\u04b4\u04b5") - buf.write("\7v\2\2\u04b5\u04b6\7c\2\2\u04b6\u04b7\7d\2\2\u04b7\u04b8") - buf.write("\7u\2\2\u04b8\u00da\3\2\2\2\u04b9\u04ba\7n\2\2\u04ba\u04bb") - buf.write("\7k\2\2\u04bb\u04bc\7u\2\2\u04bc\u04bd\7v\2\2\u04bd\u00dc") - buf.write("\3\2\2\2\u04be\u04bf\7t\2\2\u04bf\u04c0\7g\2\2\u04c0\u04c1") - buf.write("\7c\2\2\u04c1\u04c2\7f\2\2\u04c2\u04c3\7a\2\2\u04c3\u04c4") - buf.write("\7q\2\2\u04c4\u04c5\7p\2\2\u04c5\u04c6\7n\2\2\u04c6\u04c7") - buf.write("\7{\2\2\u04c7\u00de\3\2\2\2\u04c8\u04c9\7n\2\2\u04c9\u04ca") - buf.write("\7k\2\2\u04ca\u04cb\7u\2\2\u04cb\u04cc\7v\2\2\u04cc\u04cd") - buf.write("\7a\2\2\u04cd\u04ce\7g\2\2\u04ce\u04cf\7f\2\2\u04cf\u04d0") - buf.write("\7k\2\2\u04d0\u04d1\7v\2\2\u04d1\u04d2\7c\2\2\u04d2\u04d3") - buf.write("\7d\2\2\u04d3\u04d4\7n\2\2\u04d4\u04d5\7g\2\2\u04d5\u00e0") - buf.write("\3\2\2\2\u04d6\u04d7\7n\2\2\u04d7\u04d8\7k\2\2\u04d8\u04d9") - buf.write("\7u\2\2\u04d9\u04da\7v\2\2\u04da\u04db\7a\2\2\u04db\u04dc") - buf.write("\7h\2\2\u04dc\u04dd\7k\2\2\u04dd\u04de\7n\2\2\u04de\u04df") - buf.write("\7v\2\2\u04df\u04e0\7g\2\2\u04e0\u04e1\7t\2\2\u04e1\u00e2") - buf.write("\3\2\2\2\u04e2\u04e3\7n\2\2\u04e3\u04e4\7k\2\2\u04e4\u04e5") - buf.write("\7u\2\2\u04e5\u04e6\7v\2\2\u04e6\u04e7\7a\2\2\u04e7\u04e8") - buf.write("\7u\2\2\u04e8\u04e9\7g\2\2\u04e9\u04ea\7c\2\2\u04ea\u04eb") - buf.write("\7t\2\2\u04eb\u04ec\7e\2\2\u04ec\u04ed\7j\2\2\u04ed\u00e4") - buf.write("\3\2\2\2\u04ee\u04ef\7h\2\2\u04ef\u04f0\7k\2\2\u04f0\u04f1") - buf.write("\7g\2\2\u04f1\u04f2\7n\2\2\u04f2\u04f3\7f\2\2\u04f3\u04f4") - buf.write("\7u\2\2\u04f4\u00e6\3\2\2\2\u04f5\u04f6\7k\2\2\u04f6\u04f7") - buf.write("\7o\2\2\u04f7\u04f8\7r\2\2\u04f8\u04f9\7q\2\2\u04f9\u04fa") - buf.write("\7t\2\2\u04fa\u04fb\7v\2\2\u04fb\u00e8\3\2\2\2\u04fc\u04fd") - buf.write("\7c\2\2\u04fd\u04fe\7u\2\2\u04fe\u00ea\3\2\2\2\u04ff\u0504") - buf.write("\7t\2\2\u0500\u0501\7t\2\2\u0501\u0504\7y\2\2\u0502\u0504") - buf.write("\7y\2\2\u0503\u04ff\3\2\2\2\u0503\u0500\3\2\2\2\u0503") - buf.write("\u0502\3\2\2\2\u0504\u00ec\3\2\2\2\u0505\u0506\7v\2\2") - buf.write("\u0506\u0507\7t\2\2\u0507\u0508\7w\2\2\u0508\u050f\7g") - buf.write("\2\2\u0509\u050a\7h\2\2\u050a\u050b\7c\2\2\u050b\u050c") - buf.write("\7n\2\2\u050c\u050d\7u\2\2\u050d\u050f\7g\2\2\u050e\u0505") - buf.write("\3\2\2\2\u050e\u0509\3\2\2\2\u050f\u00ee\3\2\2\2\u0510") - buf.write("\u0511\13\2\2\2\u0511\u00f0\3\2\2\2\u0512\u0514\7\17\2") - buf.write("\2\u0513\u0512\3\2\2\2\u0513\u0514\3\2\2\2\u0514\u0515") - buf.write("\3\2\2\2\u0515\u0518\7\f\2\2\u0516\u0518\7\17\2\2\u0517") - buf.write("\u0513\3\2\2\2\u0517\u0516\3\2\2\2\u0518\u00f2\3\2\2\2") - buf.write("\u0519\u051d\t\2\2\2\u051a\u051c\t\3\2\2\u051b\u051a\3") - buf.write("\2\2\2\u051c\u051f\3\2\2\2\u051d\u051b\3\2\2\2\u051d\u051e") - buf.write("\3\2\2\2\u051e\u00f4\3\2\2\2\u051f\u051d\3\2\2\2\u0520") - buf.write("\u0524\t\4\2\2\u0521\u0523\t\5\2\2\u0522\u0521\3\2\2\2") - buf.write("\u0523\u0526\3\2\2\2\u0524\u0522\3\2\2\2\u0524\u0525\3") - buf.write("\2\2\2\u0525\u00f6\3\2\2\2\u0526\u0524\3\2\2\2\u0527\u0528") - buf.write("\5\u00f5z\2\u0528\u0529\7z\2\2\u0529\u052a\5\u00f5z\2") - buf.write("\u052a\u00f8\3\2\2\2\u052b\u052c\7>\2\2\u052c\u00fa\3") - buf.write("\2\2\2\u052d\u052e\7@\2\2\u052e\u00fc\3\2\2\2\u052f\u0530") - buf.write("\7<\2\2\u0530\u00fe\3\2\2\2\u0531\u0532\7`\2\2\u0532\u0100") - buf.write("\3\2\2\2\u0533\u0534\7*\2\2\u0534\u0102\3\2\2\2\u0535") - buf.write("\u0536\7+\2\2\u0536\u0104\3\2\2\2\u0537\u0538\7]\2\2\u0538") - buf.write("\u0106\3\2\2\2\u0539\u053a\7_\2\2\u053a\u0108\3\2\2\2") - buf.write("\u053b\u053c\7A\2\2\u053c\u010a\3\2\2\2\u053d\u053e\7") - buf.write("a\2\2\u053e\u010c\3\2\2\2\u053f\u0540\7/\2\2\u0540\u010e") - buf.write("\3\2\2\2\u0541\u0542\7.\2\2\u0542\u0110\3\2\2\2\u0543") - buf.write("\u0544\7\60\2\2\u0544\u0112\3\2\2\2\u0545\u0546\7%\2\2") - buf.write("\u0546\u0114\3\2\2\2\u0547\u0548\7\61\2\2\u0548\u0116") - buf.write("\3\2\2\2\u0549\u054a\7?\2\2\u054a\u0118\3\2\2\2\u054b") - buf.write("\u054c\7&\2\2\u054c\u011a\3\2\2\2\u054d\u054e\7(\2\2\u054e") - buf.write("\u011c\3\2\2\2\u054f\u0550\7#\2\2\u0550\u011e\3\2\2\2") - buf.write("\u0551\u0552\7,\2\2\u0552\u0120\3\2\2\2\u0553\u0554\7") - buf.write("\u0080\2\2\u0554\u0122\3\2\2\2\u0555\u0556\7~\2\2\u0556") - buf.write("\u0124\3\2\2\2\u0557\u055f\7$\2\2\u0558\u055e\n\6\2\2") - buf.write("\u0559\u055a\7^\2\2\u055a\u055e\7^\2\2\u055b\u055c\7^") - buf.write("\2\2\u055c\u055e\7$\2\2\u055d\u0558\3\2\2\2\u055d\u0559") - buf.write("\3\2\2\2\u055d\u055b\3\2\2\2\u055e\u0561\3\2\2\2\u055f") - buf.write("\u055d\3\2\2\2\u055f\u0560\3\2\2\2\u0560\u0562\3\2\2\2") - buf.write("\u0561\u055f\3\2\2\2\u0562\u0563\7$\2\2\u0563\u0126\3") - buf.write("\2\2\2\u0564\u056c\7)\2\2\u0565\u056b\n\7\2\2\u0566\u0567") - buf.write("\7^\2\2\u0567\u056b\7^\2\2\u0568\u0569\7^\2\2\u0569\u056b") - buf.write("\7)\2\2\u056a\u0565\3\2\2\2\u056a\u0566\3\2\2\2\u056a") - buf.write("\u0568\3\2\2\2\u056b\u056e\3\2\2\2\u056c\u056a\3\2\2\2") - buf.write("\u056c\u056d\3\2\2\2\u056d\u056f\3\2\2\2\u056e\u056c\3") - buf.write("\2\2\2\u056f\u0570\7)\2\2\u0570\u0128\3\2\2\2\u0571\u0572") - buf.write("\7\61\2\2\u0572\u0573\7\61\2\2\u0573\u0574\3\2\2\2\u0574") - buf.write("\u0575\5\u012b\u0095\2\u0575\u0576\3\2\2\2\u0576\u0577") - buf.write("\b\u0094\2\2\u0577\u012a\3\2\2\2\u0578\u057a\13\2\2\2") - buf.write("\u0579\u0578\3\2\2\2\u057a\u057d\3\2\2\2\u057b\u057c\3") - buf.write("\2\2\2\u057b\u0579\3\2\2\2\u057c\u0580\3\2\2\2\u057d\u057b") - buf.write("\3\2\2\2\u057e\u0581\5\u00f1x\2\u057f\u0581\7\2\2\3\u0580") - buf.write("\u057e\3\2\2\2\u0580\u057f\3\2\2\2\u0581\u012c\3\2\2\2") - buf.write("\u0582\u0583\7\61\2\2\u0583\u0584\7,\2\2\u0584\u0588\3") - buf.write("\2\2\2\u0585\u0587\13\2\2\2\u0586\u0585\3\2\2\2\u0587") - buf.write("\u058a\3\2\2\2\u0588\u0589\3\2\2\2\u0588\u0586\3\2\2\2") - buf.write("\u0589\u058b\3\2\2\2\u058a\u0588\3\2\2\2\u058b\u058c\7") - buf.write(",\2\2\u058c\u058d\7\61\2\2\u058d\u058e\3\2\2\2\u058e\u058f") - buf.write("\b\u0096\2\2\u058f\u012e\3\2\2\2\u0590\u0591\t\b\2\2\u0591") - buf.write("\u0130\3\2\2\2\u0592\u0593\7\"\2\2\u0593\u0594\3\2\2\2") - buf.write("\u0594\u0595\b\u0098\2\2\u0595\u0132\3\2\2\2\u0596\u0597") - buf.write("\7>\2\2\u0597\u059b\7>\2\2\u0598\u0599\7>\2\2\u0599\u059b") - buf.write("\7B\2\2\u059a\u0596\3\2\2\2\u059a\u0598\3\2\2\2\u059b") - buf.write("\u059c\3\2\2\2\u059c\u059d\b\u0099\3\2\u059d\u0134\3\2") - buf.write("\2\2\u059e\u059f\7<\2\2\u059f\u05a0\7?\2\2\u05a0\u05a4") - buf.write("\3\2\2\2\u05a1\u05a3\5\u0131\u0098\2\u05a2\u05a1\3\2\2") - buf.write("\2\u05a3\u05a6\3\2\2\2\u05a4\u05a2\3\2\2\2\u05a4\u05a5") - buf.write("\3\2\2\2\u05a5\u05a7\3\2\2\2\u05a6\u05a4\3\2\2\2\u05a7") - buf.write("\u05a8\b\u009a\4\2\u05a8\u0136\3\2\2\2\u05a9\u05aa\7B") - buf.write("\2\2\u05aa\u05ab\7?\2\2\u05ab\u05af\3\2\2\2\u05ac\u05ae") - buf.write("\5\u0131\u0098\2\u05ad\u05ac\3\2\2\2\u05ae\u05b1\3\2\2") - buf.write("\2\u05af\u05ad\3\2\2\2\u05af\u05b0\3\2\2\2\u05b0\u05b2") - buf.write("\3\2\2\2\u05b1\u05af\3\2\2\2\u05b2\u05b3\b\u009b\4\2\u05b3") - buf.write("\u0138\3\2\2\2\u05b4\u05b9\7}\2\2\u05b5\u05b8\5\u0139") - buf.write("\u009c\2\u05b6\u05b8\n\t\2\2\u05b7\u05b5\3\2\2\2\u05b7") - buf.write("\u05b6\3\2\2\2\u05b8\u05bb\3\2\2\2\u05b9\u05b7\3\2\2\2") - buf.write("\u05b9\u05ba\3\2\2\2\u05ba\u05bc\3\2\2\2\u05bb\u05b9\3") - buf.write("\2\2\2\u05bc\u05bd\7\177\2\2\u05bd\u013a\3\2\2\2\u05be") - buf.write("\u05bf\5\u00efw\2\u05bf\u013c\3\2\2\2\u05c0\u05c1\7\f") - buf.write("\2\2\u05c1\u05c2\3\2\2\2\u05c2\u05c3\b\u009e\5\2\u05c3") - buf.write("\u05c4\b\u009e\6\2\u05c4\u013e\3\2\2\2\u05c5\u05c7\n\n") - buf.write("\2\2\u05c6\u05c5\3\2\2\2\u05c7\u05c8\3\2\2\2\u05c8\u05c6") - buf.write("\3\2\2\2\u05c8\u05c9\3\2\2\2\u05c9\u05ca\3\2\2\2\u05ca") - buf.write("\u05cb\b\u009f\6\2\u05cb\u0140\3\2\2\2\u05cc\u05cd\5\u00ef") - buf.write("w\2\u05cd\u0142\3\2\2\2\u05ce\u05cf\7=\2\2\u05cf\u05d0") - buf.write("\3\2\2\2\u05d0\u05d1\b\u00a1\6\2\u05d1\u0144\3\2\2\2\u05d2") - buf.write("\u05d4\n\13\2\2\u05d3\u05d2\3\2\2\2\u05d4\u05d5\3\2\2") - buf.write("\2\u05d5\u05d3\3\2\2\2\u05d5\u05d6\3\2\2\2\u05d6\u05d7") - buf.write("\3\2\2\2\u05d7\u05d8\b\u00a2\7\2\u05d8\u0146\3\2\2\2\u05d9") - buf.write("\u05da\5\u00efw\2\u05da\u0148\3\2\2\2\31\2\3\4\u0503\u050e") - buf.write("\u0513\u0517\u051d\u0524\u055d\u055f\u056a\u056c\u057b") - buf.write("\u0580\u0588\u059a\u05a4\u05af\u05b7\u05b9\u05c8\u05d5") + buf.write("z\2\2\u04ac\u04ad\7v\2\2\u04ad\u04ae\7t\2\2\u04ae\u04af") + buf.write("\7c\2\2\u04af\u00d8\3\2\2\2\u04b0\u04b1\7v\2\2\u04b1\u04b2") + buf.write("\7c\2\2\u04b2\u04b3\7d\2\2\u04b3\u04b4\7u\2\2\u04b4\u00da") + buf.write("\3\2\2\2\u04b5\u04b6\7n\2\2\u04b6\u04b7\7k\2\2\u04b7\u04b8") + buf.write("\7u\2\2\u04b8\u04b9\7v\2\2\u04b9\u00dc\3\2\2\2\u04ba\u04bb") + buf.write("\7t\2\2\u04bb\u04bc\7g\2\2\u04bc\u04bd\7c\2\2\u04bd\u04be") + buf.write("\7f\2\2\u04be\u04bf\7a\2\2\u04bf\u04c0\7q\2\2\u04c0\u04c1") + buf.write("\7p\2\2\u04c1\u04c2\7n\2\2\u04c2\u04c3\7{\2\2\u04c3\u00de") + buf.write("\3\2\2\2\u04c4\u04c5\7n\2\2\u04c5\u04c6\7k\2\2\u04c6\u04c7") + buf.write("\7u\2\2\u04c7\u04c8\7v\2\2\u04c8\u04c9\7a\2\2\u04c9\u04ca") + buf.write("\7g\2\2\u04ca\u04cb\7f\2\2\u04cb\u04cc\7k\2\2\u04cc\u04cd") + buf.write("\7v\2\2\u04cd\u04ce\7c\2\2\u04ce\u04cf\7d\2\2\u04cf\u04d0") + buf.write("\7n\2\2\u04d0\u04d1\7g\2\2\u04d1\u00e0\3\2\2\2\u04d2\u04d3") + buf.write("\7n\2\2\u04d3\u04d4\7k\2\2\u04d4\u04d5\7u\2\2\u04d5\u04d6") + buf.write("\7v\2\2\u04d6\u04d7\7a\2\2\u04d7\u04d8\7h\2\2\u04d8\u04d9") + buf.write("\7k\2\2\u04d9\u04da\7n\2\2\u04da\u04db\7v\2\2\u04db\u04dc") + buf.write("\7g\2\2\u04dc\u04dd\7t\2\2\u04dd\u00e2\3\2\2\2\u04de\u04df") + buf.write("\7n\2\2\u04df\u04e0\7k\2\2\u04e0\u04e1\7u\2\2\u04e1\u04e2") + buf.write("\7v\2\2\u04e2\u04e3\7a\2\2\u04e3\u04e4\7u\2\2\u04e4\u04e5") + buf.write("\7g\2\2\u04e5\u04e6\7c\2\2\u04e6\u04e7\7t\2\2\u04e7\u04e8") + buf.write("\7e\2\2\u04e8\u04e9\7j\2\2\u04e9\u00e4\3\2\2\2\u04ea\u04eb") + buf.write("\7h\2\2\u04eb\u04ec\7k\2\2\u04ec\u04ed\7g\2\2\u04ed\u04ee") + buf.write("\7n\2\2\u04ee\u04ef\7f\2\2\u04ef\u04f0\7u\2\2\u04f0\u00e6") + buf.write("\3\2\2\2\u04f1\u04f2\7k\2\2\u04f2\u04f3\7o\2\2\u04f3\u04f4") + buf.write("\7r\2\2\u04f4\u04f5\7q\2\2\u04f5\u04f6\7t\2\2\u04f6\u04f7") + buf.write("\7v\2\2\u04f7\u00e8\3\2\2\2\u04f8\u04f9\7c\2\2\u04f9\u04fa") + buf.write("\7u\2\2\u04fa\u00ea\3\2\2\2\u04fb\u0500\7t\2\2\u04fc\u04fd") + buf.write("\7t\2\2\u04fd\u0500\7y\2\2\u04fe\u0500\7y\2\2\u04ff\u04fb") + buf.write("\3\2\2\2\u04ff\u04fc\3\2\2\2\u04ff\u04fe\3\2\2\2\u0500") + buf.write("\u00ec\3\2\2\2\u0501\u0502\7v\2\2\u0502\u0503\7t\2\2\u0503") + buf.write("\u0504\7w\2\2\u0504\u050b\7g\2\2\u0505\u0506\7h\2\2\u0506") + buf.write("\u0507\7c\2\2\u0507\u0508\7n\2\2\u0508\u0509\7u\2\2\u0509") + buf.write("\u050b\7g\2\2\u050a\u0501\3\2\2\2\u050a\u0505\3\2\2\2") + buf.write("\u050b\u00ee\3\2\2\2\u050c\u050d\13\2\2\2\u050d\u00f0") + buf.write("\3\2\2\2\u050e\u0510\7\17\2\2\u050f\u050e\3\2\2\2\u050f") + buf.write("\u0510\3\2\2\2\u0510\u0511\3\2\2\2\u0511\u0514\7\f\2\2") + buf.write("\u0512\u0514\7\17\2\2\u0513\u050f\3\2\2\2\u0513\u0512") + buf.write("\3\2\2\2\u0514\u00f2\3\2\2\2\u0515\u0519\t\2\2\2\u0516") + buf.write("\u0518\t\3\2\2\u0517\u0516\3\2\2\2\u0518\u051b\3\2\2\2") + buf.write("\u0519\u0517\3\2\2\2\u0519\u051a\3\2\2\2\u051a\u00f4\3") + buf.write("\2\2\2\u051b\u0519\3\2\2\2\u051c\u0520\t\4\2\2\u051d\u051f") + buf.write("\t\5\2\2\u051e\u051d\3\2\2\2\u051f\u0522\3\2\2\2\u0520") + buf.write("\u051e\3\2\2\2\u0520\u0521\3\2\2\2\u0521\u00f6\3\2\2\2") + buf.write("\u0522\u0520\3\2\2\2\u0523\u0524\5\u00f5z\2\u0524\u0525") + buf.write("\7z\2\2\u0525\u0526\5\u00f5z\2\u0526\u00f8\3\2\2\2\u0527") + buf.write("\u0528\7>\2\2\u0528\u00fa\3\2\2\2\u0529\u052a\7@\2\2\u052a") + buf.write("\u00fc\3\2\2\2\u052b\u052c\7<\2\2\u052c\u00fe\3\2\2\2") + buf.write("\u052d\u052e\7`\2\2\u052e\u0100\3\2\2\2\u052f\u0530\7") + buf.write("*\2\2\u0530\u0102\3\2\2\2\u0531\u0532\7+\2\2\u0532\u0104") + buf.write("\3\2\2\2\u0533\u0534\7]\2\2\u0534\u0106\3\2\2\2\u0535") + buf.write("\u0536\7_\2\2\u0536\u0108\3\2\2\2\u0537\u0538\7A\2\2\u0538") + buf.write("\u010a\3\2\2\2\u0539\u053a\7a\2\2\u053a\u010c\3\2\2\2") + buf.write("\u053b\u053c\7/\2\2\u053c\u010e\3\2\2\2\u053d\u053e\7") + buf.write(".\2\2\u053e\u0110\3\2\2\2\u053f\u0540\7\60\2\2\u0540\u0112") + buf.write("\3\2\2\2\u0541\u0542\7%\2\2\u0542\u0114\3\2\2\2\u0543") + buf.write("\u0544\7\61\2\2\u0544\u0116\3\2\2\2\u0545\u0546\7?\2\2") + buf.write("\u0546\u0118\3\2\2\2\u0547\u0548\7&\2\2\u0548\u011a\3") + buf.write("\2\2\2\u0549\u054a\7(\2\2\u054a\u011c\3\2\2\2\u054b\u054c") + buf.write("\7#\2\2\u054c\u011e\3\2\2\2\u054d\u054e\7,\2\2\u054e\u0120") + buf.write("\3\2\2\2\u054f\u0550\7\u0080\2\2\u0550\u0122\3\2\2\2\u0551") + buf.write("\u0552\7~\2\2\u0552\u0124\3\2\2\2\u0553\u055b\7$\2\2\u0554") + buf.write("\u055a\n\6\2\2\u0555\u0556\7^\2\2\u0556\u055a\7^\2\2\u0557") + buf.write("\u0558\7^\2\2\u0558\u055a\7$\2\2\u0559\u0554\3\2\2\2\u0559") + buf.write("\u0555\3\2\2\2\u0559\u0557\3\2\2\2\u055a\u055d\3\2\2\2") + buf.write("\u055b\u0559\3\2\2\2\u055b\u055c\3\2\2\2\u055c\u055e\3") + buf.write("\2\2\2\u055d\u055b\3\2\2\2\u055e\u055f\7$\2\2\u055f\u0126") + buf.write("\3\2\2\2\u0560\u0568\7)\2\2\u0561\u0567\n\7\2\2\u0562") + buf.write("\u0563\7^\2\2\u0563\u0567\7^\2\2\u0564\u0565\7^\2\2\u0565") + buf.write("\u0567\7)\2\2\u0566\u0561\3\2\2\2\u0566\u0562\3\2\2\2") + buf.write("\u0566\u0564\3\2\2\2\u0567\u056a\3\2\2\2\u0568\u0566\3") + buf.write("\2\2\2\u0568\u0569\3\2\2\2\u0569\u056b\3\2\2\2\u056a\u0568") + buf.write("\3\2\2\2\u056b\u056c\7)\2\2\u056c\u0128\3\2\2\2\u056d") + buf.write("\u056e\7\61\2\2\u056e\u056f\7\61\2\2\u056f\u0570\3\2\2") + buf.write("\2\u0570\u0571\5\u012b\u0095\2\u0571\u0572\3\2\2\2\u0572") + buf.write("\u0573\b\u0094\2\2\u0573\u012a\3\2\2\2\u0574\u0576\13") + buf.write("\2\2\2\u0575\u0574\3\2\2\2\u0576\u0579\3\2\2\2\u0577\u0578") + buf.write("\3\2\2\2\u0577\u0575\3\2\2\2\u0578\u057c\3\2\2\2\u0579") + buf.write("\u0577\3\2\2\2\u057a\u057d\5\u00f1x\2\u057b\u057d\7\2") + buf.write("\2\3\u057c\u057a\3\2\2\2\u057c\u057b\3\2\2\2\u057d\u012c") + buf.write("\3\2\2\2\u057e\u057f\7\61\2\2\u057f\u0580\7,\2\2\u0580") + buf.write("\u0584\3\2\2\2\u0581\u0583\13\2\2\2\u0582\u0581\3\2\2") + buf.write("\2\u0583\u0586\3\2\2\2\u0584\u0585\3\2\2\2\u0584\u0582") + buf.write("\3\2\2\2\u0585\u0587\3\2\2\2\u0586\u0584\3\2\2\2\u0587") + buf.write("\u0588\7,\2\2\u0588\u0589\7\61\2\2\u0589\u058a\3\2\2\2") + buf.write("\u058a\u058b\b\u0096\2\2\u058b\u012e\3\2\2\2\u058c\u058d") + buf.write("\t\b\2\2\u058d\u0130\3\2\2\2\u058e\u058f\7\"\2\2\u058f") + buf.write("\u0590\3\2\2\2\u0590\u0591\b\u0098\2\2\u0591\u0132\3\2") + buf.write("\2\2\u0592\u0593\7>\2\2\u0593\u0597\7>\2\2\u0594\u0595") + buf.write("\7>\2\2\u0595\u0597\7B\2\2\u0596\u0592\3\2\2\2\u0596\u0594") + buf.write("\3\2\2\2\u0597\u0598\3\2\2\2\u0598\u0599\b\u0099\3\2\u0599") + buf.write("\u0134\3\2\2\2\u059a\u059b\7<\2\2\u059b\u059c\7?\2\2\u059c") + buf.write("\u05a0\3\2\2\2\u059d\u059f\5\u0131\u0098\2\u059e\u059d") + buf.write("\3\2\2\2\u059f\u05a2\3\2\2\2\u05a0\u059e\3\2\2\2\u05a0") + buf.write("\u05a1\3\2\2\2\u05a1\u05a3\3\2\2\2\u05a2\u05a0\3\2\2\2") + buf.write("\u05a3\u05a4\b\u009a\4\2\u05a4\u0136\3\2\2\2\u05a5\u05a6") + buf.write("\7B\2\2\u05a6\u05a7\7?\2\2\u05a7\u05ab\3\2\2\2\u05a8\u05aa") + buf.write("\5\u0131\u0098\2\u05a9\u05a8\3\2\2\2\u05aa\u05ad\3\2\2") + buf.write("\2\u05ab\u05a9\3\2\2\2\u05ab\u05ac\3\2\2\2\u05ac\u05ae") + buf.write("\3\2\2\2\u05ad\u05ab\3\2\2\2\u05ae\u05af\b\u009b\4\2\u05af") + buf.write("\u0138\3\2\2\2\u05b0\u05b5\7}\2\2\u05b1\u05b4\5\u0139") + buf.write("\u009c\2\u05b2\u05b4\n\t\2\2\u05b3\u05b1\3\2\2\2\u05b3") + buf.write("\u05b2\3\2\2\2\u05b4\u05b7\3\2\2\2\u05b5\u05b3\3\2\2\2") + buf.write("\u05b5\u05b6\3\2\2\2\u05b6\u05b8\3\2\2\2\u05b7\u05b5\3") + buf.write("\2\2\2\u05b8\u05b9\7\177\2\2\u05b9\u013a\3\2\2\2\u05ba") + buf.write("\u05bb\5\u00efw\2\u05bb\u013c\3\2\2\2\u05bc\u05bd\7\f") + buf.write("\2\2\u05bd\u05be\3\2\2\2\u05be\u05bf\b\u009e\5\2\u05bf") + buf.write("\u05c0\b\u009e\6\2\u05c0\u013e\3\2\2\2\u05c1\u05c3\n\n") + buf.write("\2\2\u05c2\u05c1\3\2\2\2\u05c3\u05c4\3\2\2\2\u05c4\u05c2") + buf.write("\3\2\2\2\u05c4\u05c5\3\2\2\2\u05c5\u05c6\3\2\2\2\u05c6") + buf.write("\u05c7\b\u009f\6\2\u05c7\u0140\3\2\2\2\u05c8\u05c9\5\u00ef") + buf.write("w\2\u05c9\u0142\3\2\2\2\u05ca\u05cb\7=\2\2\u05cb\u05cc") + buf.write("\3\2\2\2\u05cc\u05cd\b\u00a1\6\2\u05cd\u0144\3\2\2\2\u05ce") + buf.write("\u05d0\n\13\2\2\u05cf\u05ce\3\2\2\2\u05d0\u05d1\3\2\2") + buf.write("\2\u05d1\u05cf\3\2\2\2\u05d1\u05d2\3\2\2\2\u05d2\u05d3") + buf.write("\3\2\2\2\u05d3\u05d4\b\u00a2\7\2\u05d4\u0146\3\2\2\2\u05d5") + buf.write("\u05d6\5\u00efw\2\u05d6\u0148\3\2\2\2\31\2\3\4\u04ff\u050a") + buf.write("\u050f\u0513\u0519\u0520\u0559\u055b\u0566\u0568\u0577") + buf.write("\u057c\u0584\u0596\u05a0\u05ab\u05b3\u05b5\u05c4\u05d1") buf.write("\b\2\3\2\7\4\2\7\3\2\tx\2\6\2\2\t\u009d\2") return buf.getvalue() @@ -778,7 +776,7 @@ class ZmeiLangSimpleLexer(Lexer): KW_AUTH = 103 KW_COUNT = 104 KW_I18N = 105 - KW_EXTENSION = 106 + KW_EXTRA = 106 KW_TABS = 107 KW_LIST = 108 KW_READ_ONLY = 109 @@ -858,7 +856,7 @@ class ZmeiLangSimpleLexer(Lexer): "'delete'", "'edit'", "'create'", "'detail'", "'skip'", "'from'", "'+polymorphic_list'", "'css'", "'js'", "'tabular'", "'stacked'", "'polymorphic'", "'inline'", "'type'", "'user_field'", "'annotate'", - "'on_create'", "'query'", "'auth'", "'count'", "'i18n'", "'extension'", + "'on_create'", "'query'", "'auth'", "'count'", "'i18n'", "'extra'", "'tabs'", "'list'", "'read_only'", "'list_editable'", "'list_filter'", "'list_search'", "'fields'", "'import'", "'as'", "'<'", "'>'", "':'", "'^'", "'('", "')'", "'['", "']'", "'?'", "'_'", "'-'", @@ -893,7 +891,7 @@ class ZmeiLangSimpleLexer(Lexer): "KW_JS", "KW_INLINE_TYPE_TABULAR", "KW_INLINE_TYPE_STACKED", "KW_INLINE_TYPE_POLYMORPHIC", "KW_INLINE", "KW_TYPE", "KW_USER_FIELD", "KW_ANNOTATE", "KW_ON_CREATE", "KW_QUERY", "KW_AUTH", "KW_COUNT", - "KW_I18N", "KW_EXTENSION", "KW_TABS", "KW_LIST", "KW_READ_ONLY", + "KW_I18N", "KW_EXTRA", "KW_TABS", "KW_LIST", "KW_READ_ONLY", "KW_LIST_EDITABLE", "KW_LIST_FILTER", "KW_LIST_SEARCH", "KW_FIELDS", "KW_IMPORT", "KW_AS", "WRITE_MODE", "BOOL", "NL", "ID", "DIGIT", "SIZE2D", "LT", "GT", "COLON", "EXCLUDE", "BRACE_OPEN", "BRACE_CLOSE", @@ -932,7 +930,7 @@ class ZmeiLangSimpleLexer(Lexer): "KW_CSS", "KW_JS", "KW_INLINE_TYPE_TABULAR", "KW_INLINE_TYPE_STACKED", "KW_INLINE_TYPE_POLYMORPHIC", "KW_INLINE", "KW_TYPE", "KW_USER_FIELD", "KW_ANNOTATE", "KW_ON_CREATE", "KW_QUERY", - "KW_AUTH", "KW_COUNT", "KW_I18N", "KW_EXTENSION", "KW_TABS", + "KW_AUTH", "KW_COUNT", "KW_I18N", "KW_EXTRA", "KW_TABS", "KW_LIST", "KW_READ_ONLY", "KW_LIST_EDITABLE", "KW_LIST_FILTER", "KW_LIST_SEARCH", "KW_FIELDS", "KW_IMPORT", "KW_AS", "WRITE_MODE", "BOOL", "ERR", "NL", "ID", "DIGIT", "SIZE2D", "LT", "GT", diff --git a/zmei_generator/parser/gen/ZmeiLangSimpleLexer.tokens b/zmei_generator/parser/gen/ZmeiLangSimpleLexer.tokens index 5f8e327..2aa9580 100644 --- a/zmei_generator/parser/gen/ZmeiLangSimpleLexer.tokens +++ b/zmei_generator/parser/gen/ZmeiLangSimpleLexer.tokens @@ -103,7 +103,7 @@ KW_QUERY=102 KW_AUTH=103 KW_COUNT=104 KW_I18N=105 -KW_EXTENSION=106 +KW_EXTRA=106 KW_TABS=107 KW_LIST=108 KW_READ_ONLY=109 @@ -262,7 +262,7 @@ PYTHON_LINE_NL=159 'auth'=103 'count'=104 'i18n'=105 -'extension'=106 +'extra'=106 'tabs'=107 'list'=108 'read_only'=109 diff --git a/zmei_generator/parser/gen/grammar/Base.g4 b/zmei_generator/parser/gen/grammar/Base.g4 index 8116e29..1b5621c 100644 --- a/zmei_generator/parser/gen/grammar/Base.g4 +++ b/zmei_generator/parser/gen/grammar/Base.g4 @@ -72,7 +72,7 @@ id_or_kw: ID |KW_AUTH |KW_COUNT |KW_I18N - |KW_EXTENSION + |KW_EXTRA |KW_TABS |KW_LIST |KW_READ_ONLY diff --git a/zmei_generator/parser/gen/grammar/ModelExtensionAdmin.g4 b/zmei_generator/parser/gen/grammar/ModelExtensionAdmin.g4 index bbe7069..8ee9fb2 100644 --- a/zmei_generator/parser/gen/grammar/ModelExtensionAdmin.g4 +++ b/zmei_generator/parser/gen/grammar/ModelExtensionAdmin.g4 @@ -38,7 +38,7 @@ an_admin_inline: (BRACE_OPEN ( inline_type - |inline_extension + |inline_extra |inline_fields |NL |COMA @@ -49,7 +49,7 @@ inline_name: id_or_kw; inline_type: KW_TYPE COLON inline_type_name; inline_type_name : (KW_INLINE_TYPE_TABULAR | KW_INLINE_TYPE_STACKED | KW_INLINE_TYPE_POLYMORPHIC) ; -inline_extension: KW_EXTENSION COLON DIGIT; +inline_extra: KW_EXTRA COLON DIGIT; inline_fields: KW_FIELDS COLON field_list_expr; an_admin_tabs: KW_TABS COLON an_admin_tab (COMA an_admin_tab)*; diff --git a/zmei_generator/parser/gen/grammar/ZmeiLangSimpleLexer.g4 b/zmei_generator/parser/gen/grammar/ZmeiLangSimpleLexer.g4 index 34eca39..eeba387 100644 --- a/zmei_generator/parser/gen/grammar/ZmeiLangSimpleLexer.g4 +++ b/zmei_generator/parser/gen/grammar/ZmeiLangSimpleLexer.g4 @@ -105,7 +105,7 @@ KW_QUERY: 'query'; KW_AUTH: 'auth'; KW_COUNT: 'count'; KW_I18N: 'i18n'; -KW_EXTENSION: 'extension'; +KW_EXTRA: 'extra'; KW_TABS: 'tabs'; KW_LIST: 'list'; KW_READ_ONLY: 'read_only'; diff --git a/zmei_generator/parser/gen/grammar/ZmeiLangSimpleLexer.tokens b/zmei_generator/parser/gen/grammar/ZmeiLangSimpleLexer.tokens index 5f8e327..a04cf35 100644 --- a/zmei_generator/parser/gen/grammar/ZmeiLangSimpleLexer.tokens +++ b/zmei_generator/parser/gen/grammar/ZmeiLangSimpleLexer.tokens @@ -1,299 +1,69 @@ -AN_ADMIN=1 -AN_SUIT=2 -AN_CELERY=3 -AN_STREAM=4 -AN_CHANNELS=5 -AN_DOCKER=6 -AN_API=7 -AN_REST=8 -AN_FILER=9 -AN_GITLAB=10 -AN_REACT=11 -AN_REACT_CLIENT=12 -AN_REACT_SERVER=13 -AN_THEME=14 -AN_PRIORITY=15 -AN_FILE=16 -AN_GET=17 -AN_MENU=18 -AN_CRUD=19 -AN_CRUD_DETAIL=20 -AN_CRUD_LIST=21 -AN_CRUD_DELETE=22 -AN_CRUD_EDIT=23 -AN_CRUD_CREATE=24 -AN_POST=25 -AN_ERROR=26 -AN_AUTH=27 -AN_MARKDOWN=28 -AN_HTML=29 -AN_TREE=30 -AN_DATE_TREE=31 -AN_MIXIN=32 -AN_M2M_CHANGED=33 -AN_POST_DELETE=34 -AN_PRE_DELETE=35 -AN_POST_SAVE=36 -AN_PRE_SAVE=37 -AN_CLEAN=38 -AN_ORDER=39 -AN_SORTABLE=40 -AN_LANGS=41 -KW_AUTH_TYPE_BASIC=42 -KW_AUTH_TYPE_SESSION=43 -KW_AUTH_TYPE_TOKEN=44 -COL_FIELD_TYPE_LONGTEXT=45 -COL_FIELD_TYPE_HTML=46 -COL_FIELD_TYPE_HTML_MEDIA=47 -COL_FIELD_TYPE_FLOAT=48 -COL_FIELD_TYPE_DECIMAL=49 -COL_FIELD_TYPE_DATE=50 -COL_FIELD_TYPE_DATETIME=51 -COL_FIELD_TYPE_CREATE_TIME=52 -COL_FIELD_TYPE_UPDATE_TIME=53 -COL_FIELD_TYPE_IMAGE=54 -COL_FIELD_TYPE_FILE=55 -COL_FIELD_TYPE_FILER_IMAGE=56 -COL_FIELD_TYPE_FILER_FILE=57 -COL_FIELD_TYPE_FILER_FOLDER=58 -COL_FIELD_TYPE_FILER_IMAGE_FOLDER=59 -COL_FIELD_TYPE_TEXT=60 -COL_FIELD_TYPE_INT=61 -COL_FIELD_TYPE_SLUG=62 -COL_FIELD_TYPE_BOOL=63 -COL_FIELD_TYPE_ONE=64 -COL_FIELD_TYPE_ONE2ONE=65 -COL_FIELD_TYPE_MANY=66 -COL_FIELD_CHOICES=67 -KW_THEME=68 -KW_INSTALL=69 -KW_HEADER=70 -KW_SERVICES=71 -KW_SELENIUM_PYTEST=72 -KW_CHILD=73 -KW_FILTER_OUT=74 -KW_FILTER_IN=75 -KW_PAGE=76 -KW_LINK_SUFFIX=77 -KW_URL_PREFIX=78 -KW_CAN_EDIT=79 -KW_OBJECT_EXPR=80 -KW_BLOCK=81 -KW_ITEM_NAME=82 -KW_PK_PARAM=83 -KW_LIST_FIELDS=84 -KW_DELETE=85 -KW_EDIT=86 -KW_CREATE=87 -KW_DETAIL=88 -KW_SKIP=89 -KW_FROM=90 -KW_POLY_LIST=91 -KW_CSS=92 -KW_JS=93 -KW_INLINE_TYPE_TABULAR=94 -KW_INLINE_TYPE_STACKED=95 -KW_INLINE_TYPE_POLYMORPHIC=96 -KW_INLINE=97 -KW_TYPE=98 -KW_USER_FIELD=99 -KW_ANNOTATE=100 -KW_ON_CREATE=101 -KW_QUERY=102 -KW_AUTH=103 -KW_COUNT=104 -KW_I18N=105 -KW_EXTENSION=106 -KW_TABS=107 -KW_LIST=108 -KW_READ_ONLY=109 -KW_LIST_EDITABLE=110 -KW_LIST_FILTER=111 -KW_LIST_SEARCH=112 -KW_FIELDS=113 -KW_IMPORT=114 -KW_AS=115 -WRITE_MODE=116 -BOOL=117 -NL=118 -ID=119 -DIGIT=120 -SIZE2D=121 -LT=122 -GT=123 -COLON=124 -EXCLUDE=125 -BRACE_OPEN=126 -BRACE_CLOSE=127 -SQ_BRACE_OPEN=128 -SQ_BRACE_CLOSE=129 -QUESTION_MARK=130 -UNDERSCORE=131 -DASH=132 -COMA=133 -DOT=134 -HASH=135 -SLASH=136 -EQUALS=137 -DOLLAR=138 -AMP=139 -EXCLAM=140 -STAR=141 -APPROX=142 -PIPE=143 -STRING_DQ=144 -STRING_SQ=145 -COMMENT_LINE=146 -COMMENT_BLOCK=147 -UNICODE=148 -WS=149 -COL_FIELD_CALCULATED=150 -ASSIGN=151 -ASSIGN_STATIC=152 -CODE_BLOCK=153 -ERRCHAR=154 -PYTHON_CODE=155 -PYTHON_LINE_ERRCHAR=156 -PYTHON_LINE_END=157 -PYTHON_EXPR_ERRCHAR=158 -PYTHON_LINE_NL=159 -'@admin'=1 -'@suit'=2 -'@celery'=3 -'@stream'=4 -'@channels'=5 -'@docker'=6 -'@api'=7 -'@rest'=8 -'@filer'=9 -'@gitlab'=10 -'@react'=11 -'@react_client'=12 -'@react_server'=13 -'@theme'=14 -'@@'=15 -'@file'=16 -'@get'=17 -'@menu'=18 -'@crud'=19 -'@crud_detail'=20 -'@crud_list'=21 -'@crud_delete'=22 -'@crud_edit'=23 -'@crud_create'=24 -'@post'=25 -'@error'=26 -'@auth'=27 -'@markdown'=28 -'@html'=29 -'@tree'=30 -'@date_tree'=31 -'@mixin'=32 -'@m2m_changed'=33 -'@post_delete'=34 -'@pre_delete'=35 -'@post_save'=36 -'@pre_save'=37 -'@clean'=38 -'@order'=39 -'@sortable'=40 -'@langs'=41 -'basic'=42 -'session'=43 -'token'=44 -'text'=45 -'html'=46 -'html_media'=47 -'float'=48 -'decimal'=49 -'date'=50 -'datetime'=51 -'create_time'=52 -'update_time'=53 -'image'=54 -'file'=55 -'filer_image'=56 -'filer_file'=57 -'filer_folder'=58 -'filer_image_folder'=59 -'str'=60 -'int'=61 -'slug'=62 -'bool'=63 -'one'=64 -'one2one'=65 -'many'=66 -'choices'=67 -'theme'=68 -'install'=69 -'header'=70 -'services'=71 -'selenium_pytest'=72 -'child'=73 -'filter_out'=74 -'filter_in'=75 -'page'=76 -'link_suffix'=77 -'url_prefix'=78 -'can_edit'=79 -'object_expr'=80 -'block'=81 -'item_name'=82 -'pk_param'=83 -'list_fields'=84 -'delete'=85 -'edit'=86 -'create'=87 -'detail'=88 -'skip'=89 -'from'=90 -'+polymorphic_list'=91 -'css'=92 -'js'=93 -'tabular'=94 -'stacked'=95 -'polymorphic'=96 -'inline'=97 -'type'=98 -'user_field'=99 -'annotate'=100 -'on_create'=101 -'query'=102 -'auth'=103 -'count'=104 -'i18n'=105 -'extension'=106 -'tabs'=107 -'list'=108 -'read_only'=109 -'list_editable'=110 -'list_filter'=111 -'list_search'=112 -'fields'=113 -'import'=114 -'as'=115 -'<'=122 -'>'=123 -':'=124 -'^'=125 -'('=126 -')'=127 -'['=128 -']'=129 -'?'=130 -'_'=131 -'-'=132 -','=133 -'.'=134 -'#'=135 -'/'=136 -'='=137 -'$'=138 -'&'=139 -'!'=140 -'*'=141 -'~'=142 -'|'=143 -' '=149 -'\n'=159 -';'=157 +WRITE_MODE=1 +BOOL=2 +NL=3 +ID=4 +DIGIT=5 +SIZE2D=6 +LT=7 +GT=8 +COLON=9 +EXCLUDE=10 +BRACE_OPEN=11 +BRACE_CLOSE=12 +SQ_BRACE_OPEN=13 +SQ_BRACE_CLOSE=14 +QUESTION_MARK=15 +UNDERSCORE=16 +DASH=17 +COMA=18 +DOT=19 +HASH=20 +SLASH=21 +EQUALS=22 +DOLLAR=23 +AMP=24 +EXCLAM=25 +STAR=26 +APPROX=27 +PIPE=28 +STRING_DQ=29 +STRING_SQ=30 +COMMENT_LINE=31 +COMMENT_BLOCK=32 +UNICODE=33 +WS=34 +COL_FIELD_CALCULATED=35 +ASSIGN=36 +ASSIGN_STATIC=37 +CODE_BLOCK=38 +ERRCHAR=39 +PYTHON_CODE=40 +PYTHON_LINE_ERRCHAR=41 +PYTHON_LINE_END=42 +PYTHON_EXPR_ERRCHAR=43 +PYTHON_LINE_NL=44 +'<'=7 +'>'=8 +':'=9 +'^'=10 +'('=11 +')'=12 +'['=13 +']'=14 +'?'=15 +'_'=16 +'-'=17 +','=18 +'.'=19 +'#'=20 +'/'=21 +'='=22 +'$'=23 +'&'=24 +'!'=25 +'*'=26 +'~'=27 +'|'=28 +' '=34 +'\n'=44 +';'=42