Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMike Kucera2008-02-22 20:14:33 +0000
committerMike Kucera2008-02-22 20:14:33 +0000
commitd6e82db1f97eb9c7e13c030f5b31ca56d28ccf3e (patch)
tree4e5fe489ae9c17251f13420ad6f249cc73bce645 /lrparser
parentd96259e1bc0f3244076f8d21ca3641d96a453722 (diff)
downloadorg.eclipse.cdt-d6e82db1f97eb9c7e13c030f5b31ca56d28ccf3e.tar.gz
org.eclipse.cdt-d6e82db1f97eb9c7e13c030f5b31ca56d28ccf3e.tar.xz
org.eclipse.cdt-d6e82db1f97eb9c7e13c030f5b31ca56d28ccf3e.zip
content assist kinda works for C++
Diffstat (limited to 'lrparser')
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/grammar/cpp/CPPGrammar.g34
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/BaseExtensibleLanguage.java26
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/LPGTokenAdapter.java2
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/BuildASTParserAction.java6
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/cpp/CPPBuildASTParserAction.java3
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/util/ASTPrinter.java18
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPExpressionStatementParser.java1023
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPExpressionStatementParserprs.java4025
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPExpressionStatementParsersym.java258
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPNoCastExpressionParser.java1019
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPNoCastExpressionParserprs.java4082
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPNoCastExpressionParsersym.java258
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPParser.java1020
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPParserprs.java4201
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPParsersym.java254
15 files changed, 8275 insertions, 7954 deletions
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/grammar/cpp/CPPGrammar.g b/lrparser/org.eclipse.cdt.core.lrparser/grammar/cpp/CPPGrammar.g
index 39d44fbb1cf..12d835f714a 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/grammar/cpp/CPPGrammar.g
+++ b/lrparser/org.eclipse.cdt.core.lrparser/grammar/cpp/CPPGrammar.g
@@ -320,16 +320,16 @@ $Rules
']' ::=? 'RightBracket'
- --| 'EndOfCompletion'
+ | 'EndOfCompletion'
')' ::=? 'RightParen'
- --| 'EndOfCompletion'
+ | 'EndOfCompletion'
'}' ::=? 'RightBrace'
- --| 'EndOfCompletion'
+ | 'EndOfCompletion'
';' ::=? 'SemiColon'
- --| 'EndOfCompletion'
+ | 'EndOfCompletion'
@@ -363,6 +363,11 @@ external_declaration
-- Expressions
------------------------------------------------------------------------------------------
+identifier_token
+ ::= 'identifier'
+ | 'Completion'
+
+
literal
::= 'integer'
/. $Build consumeExpressionLiteral(ICPPASTLiteralExpression.lk_integer_constant); $EndBuild ./
@@ -411,7 +416,7 @@ unqualified_id_name
-- wrap an identifier in a name node
identifier_name
- ::= 'identifier'
+ ::= identifier_token
/. $Build consumeIdentifierName(); $EndBuild ./
@@ -885,7 +890,7 @@ jump_statement
/. $Build consumeStatementReturn(true); $EndBuild ./
| 'return' ';'
/. $Build consumeStatementReturn(false); $EndBuild ./
- | 'goto' 'identifier' ';'
+ | 'goto' identifier_token ';'
/. $Build consumeStatementGoto(); $EndBuild ./
@@ -1034,7 +1039,7 @@ function_specifier
typedef_name
- ::= 'identifier'
+ ::= identifier_token
--type_specifier
@@ -1103,13 +1108,13 @@ elaborated_type_specifier
enum_name
- ::= 'identifier'
+ ::= identifier_token
enum_specifier
::= 'enum' '{' <openscope-ast> enumerator_list_opt '}'
/. $Build consumeTypeSpecifierEnumeration(false); $EndBuild ./
- | 'enum' 'identifier' '{' <openscope-ast> enumerator_list_opt '}'
+ | 'enum' identifier_token '{' <openscope-ast> enumerator_list_opt '}'
/. $Build consumeTypeSpecifierEnumeration(true); $EndBuild ./
@@ -1131,7 +1136,7 @@ enumerator_definition
enumerator
- ::= 'identifier'
+ ::= identifier_token
namespace_name
@@ -1169,11 +1174,11 @@ unnamed_namespace_definition
namespace_alias
- ::= 'identifier'
+ ::= identifier_token
namespace_alias_definition
- ::= 'namespace' 'identifier' '=' dcolon_opt nested_name_specifier_opt namespace_name ';'
+ ::= 'namespace' identifier_token '=' dcolon_opt nested_name_specifier_opt namespace_name ';'
/. $Build consumeNamespaceAliasDefinition(); $EndBuild ./
@@ -1478,11 +1483,6 @@ class_head -- done
/. $Build consumeClassHead(true); $EndBuild ./
-identifier_opt
- ::= 'identifier'
- | $empty
-
-
identifier_name_opt
::= identifier_name
| $empty
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/BaseExtensibleLanguage.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/BaseExtensibleLanguage.java
index bbbe10e5f62..cac0d152c5c 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/BaseExtensibleLanguage.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/BaseExtensibleLanguage.java
@@ -45,8 +45,8 @@ import org.eclipse.core.runtime.CoreException;
public abstract class BaseExtensibleLanguage extends AbstractLanguage implements ILanguage, ICLanguageKeywords {
- private static final boolean DEBUG_PRINT_GCC_AST = false;
- private static final boolean DEBUG_PRINT_AST = false;
+ private static final boolean DEBUG_PRINT_GCC_AST = true;
+ private static final boolean DEBUG_PRINT_AST = true;
/**
* Retrieve the parser (runs after the preprocessor runs).
@@ -148,7 +148,19 @@ public abstract class BaseExtensibleLanguage extends AbstractLanguage implements
public IASTCompletionNode getCompletionNode(CodeReader reader,
IScannerInfo scanInfo, ICodeReaderFactory fileCreator,
- IIndex index, IParserLogService log, int offset) {
+ IIndex index, IParserLogService log, int offset) throws CoreException {
+
+
+ if(DEBUG_PRINT_GCC_AST) {
+ ILanguage gppLanguage = GPPLanguage.getDefault();
+ IASTCompletionNode cn = gppLanguage.getCompletionNode(reader, scanInfo, fileCreator, index, log, offset);
+
+ System.out.println();
+ System.out.println("********************************************************");
+ System.out.println("GPP AST:");
+ DebugUtil.printAST(cn.getTranslationUnit());
+ System.out.println();
+ }
// TODO temporary
IScannerExtensionConfiguration config = new GCCScannerExtensionConfiguration();
@@ -164,6 +176,14 @@ public abstract class BaseExtensibleLanguage extends AbstractLanguage implements
// the parser will fill in the rest of the AST
IASTCompletionNode completionNode = parser.parse(tu);
+
+ if(DEBUG_PRINT_AST) {
+ System.out.println("Base Extensible Language AST:");
+ DebugUtil.printAST(tu);
+ System.out.println();
+ System.out.println("Completion Node: " + completionNode);
+ }
+
return completionNode;
}
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/LPGTokenAdapter.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/LPGTokenAdapter.java
index 1cb84efc6a6..762a9e981be 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/LPGTokenAdapter.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/LPGTokenAdapter.java
@@ -117,7 +117,7 @@ public class LPGTokenAdapter implements lpg.lpgjavaruntime.IToken {
this.tokenIndex = tokenIndex;
}
- @Override
+ @Override
public String toString() {
return token.toString();
}
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/BuildASTParserAction.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/BuildASTParserAction.java
index 2f2734a45ff..62fe966e147 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/BuildASTParserAction.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/BuildASTParserAction.java
@@ -68,7 +68,9 @@ import org.eclipse.cdt.core.dom.ast.cpp.ICPPASTCastExpression;
import org.eclipse.cdt.core.dom.ast.cpp.ICPPASTLiteralExpression;
import org.eclipse.cdt.core.dom.lrparser.IParser;
import org.eclipse.cdt.core.dom.lrparser.IParserActionTokenProvider;
+import static org.eclipse.cdt.core.dom.lrparser.util.CollectionUtils.matchTokens;
import org.eclipse.cdt.core.dom.lrparser.util.DebugUtil;
+import org.eclipse.cdt.internal.core.dom.lrparser.cpp.CPPParsersym;
import org.eclipse.cdt.internal.core.dom.parser.ASTNode;
@@ -992,6 +994,10 @@ public abstract class BuildASTParserAction {
List<Object> declarators = (hasDeclaratorList) ? astStack.closeScope() : Collections.emptyList();
IASTDeclSpecifier declSpecifier = (IASTDeclSpecifier) astStack.pop(); // may be null
+ // do not generate nodes for extra EOC tokens
+ if(matchTokens(parser.getRuleTokens(), CPPParsersym.TK_EndOfCompletion))
+ return;
+
if(declSpecifier == null) { // can happen if implicit int is used
declSpecifier = nodeFactory.newSimpleDeclSpecifier();
setOffsetAndLength(declSpecifier, parser.getLeftIToken().getStartOffset(), 0);
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/cpp/CPPBuildASTParserAction.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/cpp/CPPBuildASTParserAction.java
index badc0c00680..3e0c5243b58 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/cpp/CPPBuildASTParserAction.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/cpp/CPPBuildASTParserAction.java
@@ -122,8 +122,7 @@ public class CPPBuildASTParserAction extends BuildASTParserAction {
@Override
protected boolean isCompletionToken(IToken token) {
- // TODO Auto-generated method stub
- return false;
+ return token.getKind() == CPPParsersym.TK_Completion;
}
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/util/ASTPrinter.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/util/ASTPrinter.java
index 78ea7c70835..d6191baf98c 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/util/ASTPrinter.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/util/ASTPrinter.java
@@ -56,6 +56,8 @@ import org.eclipse.cdt.internal.core.dom.parser.ITypeContainer;
class ASTPrinter {
+ private static boolean PRINT_PARENT_PROPERTIES = false;
+ private static boolean RESOLVE_BINDINGS = false;
/**
* Prints the AST to the given PrintStream.
@@ -144,7 +146,8 @@ class ASTPrinter {
if(node.getParent() == null && !(node instanceof IASTTranslationUnit)) {
out.print("PARENT IS NULL ");
}
- out.print(node.getPropertyInParent());
+ if(PRINT_PARENT_PROPERTIES)
+ out.print(node.getPropertyInParent());
}
if(n instanceof ICArrayType) {
@@ -379,13 +382,14 @@ class ASTPrinter {
@Override
public int visit(IASTName name) {
print(name);
- try {
- IBinding binding = name.resolveBinding();
- print(binding);
- } catch(Exception e) {
- System.out.println("Exception while resolving binding: " + name);
+ if(RESOLVE_BINDINGS) {
+ try {
+ IBinding binding = name.resolveBinding();
+ print(binding);
+ } catch(Exception e) {
+ System.out.println("Exception while resolving binding: " + name);
+ }
}
-
indentLevel++;
return super.visit(name);
}
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPExpressionStatementParser.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPExpressionStatementParser.java
index 437a479ee14..4027dc0a21a 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPExpressionStatementParser.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPExpressionStatementParser.java
@@ -272,1787 +272,1780 @@ public CPPExpressionStatementParser(String[] mapFrom) { // constructor
}
//
- // Rule 4: <placeholder> ::= $Empty
+ // Rule 2: <empty> ::= $Empty
//
- case 4: { action.builder.
- consumePlaceHolder(); break;
- }
-
- //
- // Rule 5: <empty> ::= $Empty
- //
- case 5: { action.builder.
+ case 2: { action.builder.
consumeEmpty(); break;
}
//
- // Rule 10: translation_unit ::= external_declaration_list
+ // Rule 11: translation_unit ::= external_declaration_list
//
- case 10: { action.builder.
+ case 11: { action.builder.
consumeTranslationUnit(); break;
}
//
- // Rule 11: translation_unit ::= $Empty
+ // Rule 12: translation_unit ::= $Empty
//
- case 11: { action.builder.
+ case 12: { action.builder.
consumeTranslationUnit(); break;
}
//
- // Rule 15: external_declaration ::= ERROR_TOKEN
+ // Rule 16: external_declaration ::= ERROR_TOKEN
//
- case 15: { action.builder.
+ case 16: { action.builder.
consumeDeclarationProblem(); break;
}
//
- // Rule 16: literal ::= integer
+ // Rule 19: literal ::= integer
//
- case 16: { action.builder.
+ case 19: { action.builder.
consumeExpressionLiteral(ICPPASTLiteralExpression.lk_integer_constant); break;
}
//
- // Rule 17: literal ::= 0
+ // Rule 20: literal ::= 0
//
- case 17: { action.builder.
+ case 20: { action.builder.
consumeExpressionLiteral(ICPPASTLiteralExpression.lk_integer_constant); break;
}
//
- // Rule 18: literal ::= floating
+ // Rule 21: literal ::= floating
//
- case 18: { action.builder.
+ case 21: { action.builder.
consumeExpressionLiteral(ICPPASTLiteralExpression.lk_float_constant); break;
}
//
- // Rule 19: literal ::= charconst
+ // Rule 22: literal ::= charconst
//
- case 19: { action.builder.
+ case 22: { action.builder.
consumeExpressionLiteral(ICPPASTLiteralExpression.lk_char_constant); break;
}
//
- // Rule 20: literal ::= stringlit
+ // Rule 23: literal ::= stringlit
//
- case 20: { action.builder.
+ case 23: { action.builder.
consumeExpressionLiteral(ICPPASTLiteralExpression.lk_string_literal); break;
}
//
- // Rule 21: literal ::= true
+ // Rule 24: literal ::= true
//
- case 21: { action.builder.
+ case 24: { action.builder.
consumeExpressionLiteral(ICPPASTLiteralExpression.lk_true); break;
}
//
- // Rule 22: literal ::= false
+ // Rule 25: literal ::= false
//
- case 22: { action.builder.
+ case 25: { action.builder.
consumeExpressionLiteral(ICPPASTLiteralExpression.lk_false); break;
}
//
- // Rule 23: literal ::= this
+ // Rule 26: literal ::= this
//
- case 23: { action.builder.
+ case 26: { action.builder.
consumeExpressionLiteral(ICPPASTLiteralExpression.lk_this); break;
}
//
- // Rule 25: primary_expression ::= ( expression )
+ // Rule 28: primary_expression ::= ( expression )
//
- case 25: { action.builder.
+ case 28: { action.builder.
consumeExpressionBracketed(); break;
}
//
- // Rule 27: id_expression ::= qualified_or_unqualified_name
+ // Rule 30: id_expression ::= qualified_or_unqualified_name
//
- case 27: { action.builder.
+ case 30: { action.builder.
consumeExpressionName(); break;
}
//
- // Rule 34: unqualified_id_name ::= ~ class_name
+ // Rule 37: unqualified_id_name ::= ~ class_name
//
- case 34: { action.builder.
+ case 37: { action.builder.
consumeDestructorName(); break;
}
//
- // Rule 35: identifier_name ::= identifier
+ // Rule 38: identifier_name ::= identifier_token
//
- case 35: { action.builder.
+ case 38: { action.builder.
consumeIdentifierName(); break;
}
//
- // Rule 36: template_opt ::= template
+ // Rule 39: template_opt ::= template
//
- case 36: { action.builder.
+ case 39: { action.builder.
consumePlaceHolder(); break;
}
//
- // Rule 37: template_opt ::= $Empty
+ // Rule 40: template_opt ::= $Empty
//
- case 37: { action.builder.
+ case 40: { action.builder.
consumeEmpty(); break;
}
//
- // Rule 38: dcolon_opt ::= ::
+ // Rule 41: dcolon_opt ::= ::
//
- case 38: { action.builder.
+ case 41: { action.builder.
consumePlaceHolder(); break;
}
//
- // Rule 39: dcolon_opt ::= $Empty
+ // Rule 42: dcolon_opt ::= $Empty
//
- case 39: { action.builder.
+ case 42: { action.builder.
consumeEmpty(); break;
}
//
- // Rule 40: qualified_id_name ::= dcolon_opt nested_name_specifier template_opt unqualified_id_name
+ // Rule 43: qualified_id_name ::= dcolon_opt nested_name_specifier template_opt unqualified_id_name
//
- case 40: { action.builder.
+ case 43: { action.builder.
consumeQualifiedId(true); break;
}
//
- // Rule 41: qualified_id_name ::= :: identifier_name
+ // Rule 44: qualified_id_name ::= :: identifier_name
//
- case 41: { action.builder.
+ case 44: { action.builder.
consumeGlobalQualifiedId(); break;
}
//
- // Rule 42: qualified_id_name ::= :: operator_function_id_name
+ // Rule 45: qualified_id_name ::= :: operator_function_id_name
//
- case 42: { action.builder.
+ case 45: { action.builder.
consumeGlobalQualifiedId(); break;
}
//
- // Rule 43: qualified_id_name ::= :: template_id_name
+ // Rule 46: qualified_id_name ::= :: template_id_name
//
- case 43: { action.builder.
+ case 46: { action.builder.
consumeGlobalQualifiedId(); break;
}
//
- // Rule 44: nested_name_specifier ::= class_or_namespace_name :: nested_name_specifier_with_template
+ // Rule 47: nested_name_specifier ::= class_or_namespace_name :: nested_name_specifier_with_template
//
- case 44: { action.builder.
+ case 47: { action.builder.
consumeNestedNameSpecifier(true); break;
}
//
- // Rule 45: nested_name_specifier ::= class_or_namespace_name ::
+ // Rule 48: nested_name_specifier ::= class_or_namespace_name ::
//
- case 45: { action.builder.
+ case 48: { action.builder.
consumeNestedNameSpecifier(false); break;
}
//
- // Rule 46: nested_name_specifier_with_template ::= class_or_namespace_name_with_template :: nested_name_specifier_with_template
+ // Rule 49: nested_name_specifier_with_template ::= class_or_namespace_name_with_template :: nested_name_specifier_with_template
//
- case 46: { action.builder.
+ case 49: { action.builder.
consumeNestedNameSpecifier(true); break;
}
//
- // Rule 47: nested_name_specifier_with_template ::= class_or_namespace_name_with_template ::
+ // Rule 50: nested_name_specifier_with_template ::= class_or_namespace_name_with_template ::
//
- case 47: { action.builder.
+ case 50: { action.builder.
consumeNestedNameSpecifier(false); break;
}
//
- // Rule 48: class_or_namespace_name_with_template ::= template_opt class_or_namespace_name
+ // Rule 51: class_or_namespace_name_with_template ::= template_opt class_or_namespace_name
//
- case 48: { action.builder.
+ case 51: { action.builder.
consumeNameWithTemplateKeyword(); break;
}
//
- // Rule 50: nested_name_specifier_opt ::= $Empty
+ // Rule 53: nested_name_specifier_opt ::= $Empty
//
- case 50: { action.builder.
+ case 53: { action.builder.
consumeNestedNameSpecifierEmpty(); break;
}
//
- // Rule 54: postfix_expression ::= postfix_expression [ expression ]
+ // Rule 57: postfix_expression ::= postfix_expression [ expression ]
//
- case 54: { action.builder.
+ case 57: { action.builder.
consumeExpressionArraySubscript(); break;
}
//
- // Rule 55: postfix_expression ::= postfix_expression ( expression_list_opt )
+ // Rule 58: postfix_expression ::= postfix_expression ( expression_list_opt )
//
- case 55: { action.builder.
+ case 58: { action.builder.
consumeExpressionFunctionCall(); break;
}
//
- // Rule 56: postfix_expression ::= simple_type_specifier ( expression_list_opt )
+ // Rule 59: postfix_expression ::= simple_type_specifier ( expression_list_opt )
//
- case 56: { action.builder.
+ case 59: { action.builder.
consumeExpressionSimpleTypeConstructor(); break;
}
//
- // Rule 57: postfix_expression ::= typename dcolon_opt nested_name_specifier <empty> identifier_name ( expression_list_opt )
+ // Rule 60: postfix_expression ::= typename dcolon_opt nested_name_specifier <empty> identifier_name ( expression_list_opt )
//
- case 57: { action.builder.
+ case 60: { action.builder.
consumeExpressionTypeName(); break;
}
//
- // Rule 58: postfix_expression ::= typename dcolon_opt nested_name_specifier template_opt template_id_name ( expression_list_opt )
+ // Rule 61: postfix_expression ::= typename dcolon_opt nested_name_specifier template_opt template_id_name ( expression_list_opt )
//
- case 58: { action.builder.
+ case 61: { action.builder.
consumeExpressionTypeName(); break;
}
//
- // Rule 59: postfix_expression ::= postfix_expression . qualified_or_unqualified_name
+ // Rule 62: postfix_expression ::= postfix_expression . qualified_or_unqualified_name
//
- case 59: { action.builder.
+ case 62: { action.builder.
consumeExpressionFieldReference(false, false); break;
}
//
- // Rule 60: postfix_expression ::= postfix_expression -> qualified_or_unqualified_name
+ // Rule 63: postfix_expression ::= postfix_expression -> qualified_or_unqualified_name
//
- case 60: { action.builder.
+ case 63: { action.builder.
consumeExpressionFieldReference(true, false); break;
}
//
- // Rule 61: postfix_expression ::= postfix_expression . template qualified_or_unqualified_name
+ // Rule 64: postfix_expression ::= postfix_expression . template qualified_or_unqualified_name
//
- case 61: { action.builder.
+ case 64: { action.builder.
consumeExpressionFieldReference(false, true); break;
}
//
- // Rule 62: postfix_expression ::= postfix_expression -> template qualified_or_unqualified_name
+ // Rule 65: postfix_expression ::= postfix_expression -> template qualified_or_unqualified_name
//
- case 62: { action.builder.
+ case 65: { action.builder.
consumeExpressionFieldReference(true, true); break;
}
//
- // Rule 63: postfix_expression ::= postfix_expression . pseudo_destructor_name
+ // Rule 66: postfix_expression ::= postfix_expression . pseudo_destructor_name
//
- case 63: { action.builder.
+ case 66: { action.builder.
consumeExpressionFieldReference(false, false); break;
}
//
- // Rule 64: postfix_expression ::= postfix_expression -> pseudo_destructor_name
+ // Rule 67: postfix_expression ::= postfix_expression -> pseudo_destructor_name
//
- case 64: { action.builder.
+ case 67: { action.builder.
consumeExpressionFieldReference(true, false); break;
}
//
- // Rule 65: postfix_expression ::= postfix_expression ++
+ // Rule 68: postfix_expression ::= postfix_expression ++
//
- case 65: { action.builder.
+ case 68: { action.builder.
consumeExpressionUnaryOperator(IASTUnaryExpression.op_postFixIncr); break;
}
//
- // Rule 66: postfix_expression ::= postfix_expression --
+ // Rule 69: postfix_expression ::= postfix_expression --
//
- case 66: { action.builder.
+ case 69: { action.builder.
consumeExpressionUnaryOperator(IASTUnaryExpression.op_postFixDecr); break;
}
//
- // Rule 67: postfix_expression ::= dynamic_cast < type_id > ( expression )
+ // Rule 70: postfix_expression ::= dynamic_cast < type_id > ( expression )
//
- case 67: { action.builder.
+ case 70: { action.builder.
consumeExpressionCast(ICPPASTCastExpression.op_dynamic_cast); break;
}
//
- // Rule 68: postfix_expression ::= static_cast < type_id > ( expression )
+ // Rule 71: postfix_expression ::= static_cast < type_id > ( expression )
//
- case 68: { action.builder.
+ case 71: { action.builder.
consumeExpressionCast(ICPPASTCastExpression.op_static_cast); break;
}
//
- // Rule 69: postfix_expression ::= reinterpret_cast < type_id > ( expression )
+ // Rule 72: postfix_expression ::= reinterpret_cast < type_id > ( expression )
//
- case 69: { action.builder.
+ case 72: { action.builder.
consumeExpressionCast(ICPPASTCastExpression.op_reinterpret_cast); break;
}
//
- // Rule 70: postfix_expression ::= const_cast < type_id > ( expression )
+ // Rule 73: postfix_expression ::= const_cast < type_id > ( expression )
//
- case 70: { action.builder.
+ case 73: { action.builder.
consumeExpressionCast(ICPPASTCastExpression.op_const_cast); break;
}
//
- // Rule 71: postfix_expression ::= typeid ( expression )
+ // Rule 74: postfix_expression ::= typeid ( expression )
//
- case 71: { action.builder.
+ case 74: { action.builder.
consumeExpressionUnaryOperator(ICPPASTUnaryExpression.op_typeid); break;
}
//
- // Rule 72: postfix_expression ::= typeid ( type_id )
+ // Rule 75: postfix_expression ::= typeid ( type_id )
//
- case 72: { action.builder.
+ case 75: { action.builder.
consumeExpressionTypeId(ICPPASTTypeIdExpression.op_typeid); break;
}
//
- // Rule 73: pseudo_destructor_name ::= dcolon_opt nested_name_specifier_opt type_name :: ~ type_name
+ // Rule 76: pseudo_destructor_name ::= dcolon_opt nested_name_specifier_opt type_name :: ~ type_name
//
- case 73: { action.builder.
+ case 76: { action.builder.
consumePsudoDestructorName(true); break;
}
//
- // Rule 74: pseudo_destructor_name ::= dcolon_opt nested_name_specifier template template_id_name :: ~ type_name
+ // Rule 77: pseudo_destructor_name ::= dcolon_opt nested_name_specifier template template_id_name :: ~ type_name
//
- case 74: { action.builder.
+ case 77: { action.builder.
consumePsudoDestructorName(true); break;
}
//
- // Rule 75: pseudo_destructor_name ::= dcolon_opt nested_name_specifier_opt ~ type_name
+ // Rule 78: pseudo_destructor_name ::= dcolon_opt nested_name_specifier_opt ~ type_name
//
- case 75: { action.builder.
+ case 78: { action.builder.
consumePsudoDestructorName(false); break;
}
//
- // Rule 79: unary_expression ::= ++ cast_expression
+ // Rule 82: unary_expression ::= ++ cast_expression
//
- case 79: { action.builder.
+ case 82: { action.builder.
consumeExpressionUnaryOperator(IASTUnaryExpression.op_prefixIncr); break;
}
//
- // Rule 80: unary_expression ::= -- cast_expression
+ // Rule 83: unary_expression ::= -- cast_expression
//
- case 80: { action.builder.
+ case 83: { action.builder.
consumeExpressionUnaryOperator(IASTUnaryExpression.op_prefixDecr); break;
}
//
- // Rule 81: unary_expression ::= & cast_expression
+ // Rule 84: unary_expression ::= & cast_expression
//
- case 81: { action.builder.
+ case 84: { action.builder.
consumeExpressionUnaryOperator(IASTUnaryExpression.op_amper); break;
}
//
- // Rule 82: unary_expression ::= * cast_expression
+ // Rule 85: unary_expression ::= * cast_expression
//
- case 82: { action.builder.
+ case 85: { action.builder.
consumeExpressionUnaryOperator(IASTUnaryExpression.op_star); break;
}
//
- // Rule 83: unary_expression ::= + cast_expression
+ // Rule 86: unary_expression ::= + cast_expression
//
- case 83: { action.builder.
+ case 86: { action.builder.
consumeExpressionUnaryOperator(IASTUnaryExpression.op_plus); break;
}
//
- // Rule 84: unary_expression ::= - cast_expression
+ // Rule 87: unary_expression ::= - cast_expression
//
- case 84: { action.builder.
+ case 87: { action.builder.
consumeExpressionUnaryOperator(IASTUnaryExpression.op_minus); break;
}
//
- // Rule 85: unary_expression ::= ~ cast_expression
+ // Rule 88: unary_expression ::= ~ cast_expression
//
- case 85: { action.builder.
+ case 88: { action.builder.
consumeExpressionUnaryOperator(IASTUnaryExpression.op_tilde); break;
}
//
- // Rule 86: unary_expression ::= ! cast_expression
+ // Rule 89: unary_expression ::= ! cast_expression
//
- case 86: { action.builder.
+ case 89: { action.builder.
consumeExpressionUnaryOperator(IASTUnaryExpression.op_not); break;
}
//
- // Rule 87: unary_expression ::= sizeof unary_expression
+ // Rule 90: unary_expression ::= sizeof unary_expression
//
- case 87: { action.builder.
+ case 90: { action.builder.
consumeExpressionUnaryOperator(IASTUnaryExpression.op_sizeof); break;
}
//
- // Rule 88: unary_expression ::= sizeof ( type_id )
+ // Rule 91: unary_expression ::= sizeof ( type_id )
//
- case 88: { action.builder.
+ case 91: { action.builder.
consumeExpressionTypeId(ICPPASTTypeIdExpression.op_sizeof); break;
}
//
- // Rule 89: new_expression ::= dcolon_opt new new_placement_opt new_type_id <openscope-ast> new_array_expressions_opt new_initializer_opt
+ // Rule 92: new_expression ::= dcolon_opt new new_placement_opt new_type_id <openscope-ast> new_array_expressions_opt new_initializer_opt
//
- case 89: { action.builder.
+ case 92: { action.builder.
consumeExpressionNew(true); break;
}
//
- // Rule 90: new_expression ::= dcolon_opt new new_placement_opt ( type_id ) new_initializer_opt
+ // Rule 93: new_expression ::= dcolon_opt new new_placement_opt ( type_id ) new_initializer_opt
//
- case 90: { action.builder.
+ case 93: { action.builder.
consumeExpressionNew(false); break;
}
//
- // Rule 93: new_placement_opt ::= $Empty
+ // Rule 96: new_placement_opt ::= $Empty
//
- case 93: { action.builder.
+ case 96: { action.builder.
consumeEmpty(); break;
}
//
- // Rule 94: new_type_id ::= type_specifier_seq
+ // Rule 97: new_type_id ::= type_specifier_seq
//
- case 94: { action.builder.
+ case 97: { action.builder.
consumeTypeId(false); break;
}
//
- // Rule 95: new_type_id ::= type_specifier_seq new_declarator
+ // Rule 98: new_type_id ::= type_specifier_seq new_declarator
//
- case 95: { action.builder.
+ case 98: { action.builder.
consumeTypeId(true); break;
}
//
- // Rule 96: new_declarator ::= <openscope-ast> new_pointer_operators
+ // Rule 99: new_declarator ::= <openscope-ast> new_pointer_operators
//
- case 96: { action.builder.
+ case 99: { action.builder.
consumeNewDeclarator(); break;
}
//
- // Rule 105: new_initializer_opt ::= $Empty
+ // Rule 108: new_initializer_opt ::= $Empty
//
- case 105: { action.builder.
+ case 108: { action.builder.
consumeEmpty(); break;
}
//
- // Rule 106: delete_expression ::= dcolon_opt delete cast_expression
+ // Rule 109: delete_expression ::= dcolon_opt delete cast_expression
//
- case 106: { action.builder.
+ case 109: { action.builder.
consumeExpressionDelete(false); break;
}
//
- // Rule 107: delete_expression ::= dcolon_opt delete [ ] cast_expression
+ // Rule 110: delete_expression ::= dcolon_opt delete [ ] cast_expression
//
- case 107: { action.builder.
+ case 110: { action.builder.
consumeExpressionDelete(true); break;
}
//
- // Rule 109: cast_expression ::= ( type_id ) cast_expression
+ // Rule 112: cast_expression ::= ( type_id ) cast_expression
//
- case 109: { action.builder.
+ case 112: { action.builder.
consumeExpressionCast(ICPPASTCastExpression.op_cast); break;
}
//
- // Rule 111: pm_expression ::= pm_expression .* cast_expression
+ // Rule 114: pm_expression ::= pm_expression .* cast_expression
//
- case 111: { action.builder.
+ case 114: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_pmdot); break;
}
//
- // Rule 112: pm_expression ::= pm_expression ->* cast_expression
+ // Rule 115: pm_expression ::= pm_expression ->* cast_expression
//
- case 112: { action.builder.
+ case 115: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_pmarrow); break;
}
//
- // Rule 114: multiplicative_expression ::= multiplicative_expression * pm_expression
+ // Rule 117: multiplicative_expression ::= multiplicative_expression * pm_expression
//
- case 114: { action.builder.
+ case 117: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_multiply); break;
}
//
- // Rule 115: multiplicative_expression ::= multiplicative_expression / pm_expression
+ // Rule 118: multiplicative_expression ::= multiplicative_expression / pm_expression
//
- case 115: { action.builder.
+ case 118: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_divide); break;
}
//
- // Rule 116: multiplicative_expression ::= multiplicative_expression % pm_expression
+ // Rule 119: multiplicative_expression ::= multiplicative_expression % pm_expression
//
- case 116: { action.builder.
+ case 119: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_modulo); break;
}
//
- // Rule 118: additive_expression ::= additive_expression + multiplicative_expression
+ // Rule 121: additive_expression ::= additive_expression + multiplicative_expression
//
- case 118: { action.builder.
+ case 121: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_plus); break;
}
//
- // Rule 119: additive_expression ::= additive_expression - multiplicative_expression
+ // Rule 122: additive_expression ::= additive_expression - multiplicative_expression
//
- case 119: { action.builder.
+ case 122: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_minus); break;
}
//
- // Rule 121: shift_expression ::= shift_expression << additive_expression
+ // Rule 124: shift_expression ::= shift_expression << additive_expression
//
- case 121: { action.builder.
+ case 124: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_shiftLeft); break;
}
//
- // Rule 122: shift_expression ::= shift_expression >> additive_expression
+ // Rule 125: shift_expression ::= shift_expression >> additive_expression
//
- case 122: { action.builder.
+ case 125: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_shiftRight); break;
}
//
- // Rule 124: relational_expression ::= relational_expression < shift_expression
+ // Rule 127: relational_expression ::= relational_expression < shift_expression
//
- case 124: { action.builder.
+ case 127: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_lessThan); break;
}
//
- // Rule 125: relational_expression ::= relational_expression > shift_expression
+ // Rule 128: relational_expression ::= relational_expression > shift_expression
//
- case 125: { action.builder.
+ case 128: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_greaterThan); break;
}
//
- // Rule 126: relational_expression ::= relational_expression <= shift_expression
+ // Rule 129: relational_expression ::= relational_expression <= shift_expression
//
- case 126: { action.builder.
+ case 129: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_lessEqual); break;
}
//
- // Rule 127: relational_expression ::= relational_expression >= shift_expression
+ // Rule 130: relational_expression ::= relational_expression >= shift_expression
//
- case 127: { action.builder.
+ case 130: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_greaterEqual); break;
}
//
- // Rule 129: equality_expression ::= equality_expression == relational_expression
+ // Rule 132: equality_expression ::= equality_expression == relational_expression
//
- case 129: { action.builder.
+ case 132: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_equals); break;
}
//
- // Rule 130: equality_expression ::= equality_expression != relational_expression
+ // Rule 133: equality_expression ::= equality_expression != relational_expression
//
- case 130: { action.builder.
+ case 133: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_notequals); break;
}
//
- // Rule 132: and_expression ::= and_expression & equality_expression
+ // Rule 135: and_expression ::= and_expression & equality_expression
//
- case 132: { action.builder.
+ case 135: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_binaryAnd); break;
}
//
- // Rule 134: exclusive_or_expression ::= exclusive_or_expression ^ and_expression
+ // Rule 137: exclusive_or_expression ::= exclusive_or_expression ^ and_expression
//
- case 134: { action.builder.
+ case 137: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_binaryXor); break;
}
//
- // Rule 136: inclusive_or_expression ::= inclusive_or_expression | exclusive_or_expression
+ // Rule 139: inclusive_or_expression ::= inclusive_or_expression | exclusive_or_expression
//
- case 136: { action.builder.
+ case 139: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_binaryOr); break;
}
//
- // Rule 138: logical_and_expression ::= logical_and_expression && inclusive_or_expression
+ // Rule 141: logical_and_expression ::= logical_and_expression && inclusive_or_expression
//
- case 138: { action.builder.
+ case 141: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_logicalAnd); break;
}
//
- // Rule 140: logical_or_expression ::= logical_or_expression || logical_and_expression
+ // Rule 143: logical_or_expression ::= logical_or_expression || logical_and_expression
//
- case 140: { action.builder.
+ case 143: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_logicalOr); break;
}
//
- // Rule 142: conditional_expression ::= logical_or_expression ? expression : assignment_expression
+ // Rule 145: conditional_expression ::= logical_or_expression ? expression : assignment_expression
//
- case 142: { action.builder.
+ case 145: { action.builder.
consumeExpressionConditional(); break;
}
//
- // Rule 143: throw_expression ::= throw
+ // Rule 146: throw_expression ::= throw
//
- case 143: { action.builder.
+ case 146: { action.builder.
consumeExpressionThrow(false); break;
}
//
- // Rule 144: throw_expression ::= throw assignment_expression
+ // Rule 147: throw_expression ::= throw assignment_expression
//
- case 144: { action.builder.
+ case 147: { action.builder.
consumeExpressionThrow(true); break;
}
//
- // Rule 147: assignment_expression ::= logical_or_expression = assignment_expression
+ // Rule 150: assignment_expression ::= logical_or_expression = assignment_expression
//
- case 147: { action.builder.
+ case 150: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_assign); break;
}
//
- // Rule 148: assignment_expression ::= logical_or_expression *= assignment_expression
+ // Rule 151: assignment_expression ::= logical_or_expression *= assignment_expression
//
- case 148: { action.builder.
+ case 151: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_multiplyAssign); break;
}
//
- // Rule 149: assignment_expression ::= logical_or_expression /= assignment_expression
+ // Rule 152: assignment_expression ::= logical_or_expression /= assignment_expression
//
- case 149: { action.builder.
+ case 152: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_divideAssign); break;
}
//
- // Rule 150: assignment_expression ::= logical_or_expression %= assignment_expression
+ // Rule 153: assignment_expression ::= logical_or_expression %= assignment_expression
//
- case 150: { action.builder.
+ case 153: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_moduloAssign); break;
}
//
- // Rule 151: assignment_expression ::= logical_or_expression += assignment_expression
+ // Rule 154: assignment_expression ::= logical_or_expression += assignment_expression
//
- case 151: { action.builder.
+ case 154: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_plusAssign); break;
}
//
- // Rule 152: assignment_expression ::= logical_or_expression -= assignment_expression
+ // Rule 155: assignment_expression ::= logical_or_expression -= assignment_expression
//
- case 152: { action.builder.
+ case 155: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_minusAssign); break;
}
//
- // Rule 153: assignment_expression ::= logical_or_expression >>= assignment_expression
+ // Rule 156: assignment_expression ::= logical_or_expression >>= assignment_expression
//
- case 153: { action.builder.
+ case 156: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_shiftRightAssign); break;
}
//
- // Rule 154: assignment_expression ::= logical_or_expression <<= assignment_expression
+ // Rule 157: assignment_expression ::= logical_or_expression <<= assignment_expression
//
- case 154: { action.builder.
+ case 157: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_shiftLeftAssign); break;
}
//
- // Rule 155: assignment_expression ::= logical_or_expression &= assignment_expression
+ // Rule 158: assignment_expression ::= logical_or_expression &= assignment_expression
//
- case 155: { action.builder.
+ case 158: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_binaryAndAssign); break;
}
//
- // Rule 156: assignment_expression ::= logical_or_expression ^= assignment_expression
+ // Rule 159: assignment_expression ::= logical_or_expression ^= assignment_expression
//
- case 156: { action.builder.
+ case 159: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_binaryXorAssign); break;
}
//
- // Rule 157: assignment_expression ::= logical_or_expression |= assignment_expression
+ // Rule 160: assignment_expression ::= logical_or_expression |= assignment_expression
//
- case 157: { action.builder.
+ case 160: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_binaryOrAssign); break;
}
//
- // Rule 159: expression ::= ERROR_TOKEN
+ // Rule 162: expression ::= ERROR_TOKEN
//
- case 159: { action.builder.
+ case 162: { action.builder.
consumeExpressionProblem(); break;
}
//
- // Rule 160: expression_list ::= <openscope-ast> expression_list_actual
+ // Rule 163: expression_list ::= <openscope-ast> expression_list_actual
//
- case 160: { action.builder.
+ case 163: { action.builder.
consumeExpressionList(); break;
}
//
- // Rule 164: expression_list_opt ::= $Empty
+ // Rule 167: expression_list_opt ::= $Empty
//
- case 164: { action.builder.
+ case 167: { action.builder.
consumeEmpty(); break;
}
//
- // Rule 166: expression_opt ::= $Empty
+ // Rule 169: expression_opt ::= $Empty
//
- case 166: { action.builder.
+ case 169: { action.builder.
consumeEmpty(); break;
}
//
- // Rule 169: constant_expression_opt ::= $Empty
+ // Rule 172: constant_expression_opt ::= $Empty
//
- case 169: { action.builder.
+ case 172: { action.builder.
consumeEmpty(); break;
}
//
- // Rule 178: statement ::= ERROR_TOKEN
+ // Rule 181: statement ::= ERROR_TOKEN
//
- case 178: { action.builder.
+ case 181: { action.builder.
consumeStatementProblem(); break;
}
//
- // Rule 179: labeled_statement ::= identifier : statement
+ // Rule 182: labeled_statement ::= identifier : statement
//
- case 179: { action.builder.
+ case 182: { action.builder.
consumeStatementLabeled(); break;
}
//
- // Rule 180: labeled_statement ::= case constant_expression :
+ // Rule 183: labeled_statement ::= case constant_expression :
//
- case 180: { action.builder.
+ case 183: { action.builder.
consumeStatementCase(); break;
}
//
- // Rule 181: labeled_statement ::= default :
+ // Rule 184: labeled_statement ::= default :
//
- case 181: { action.builder.
+ case 184: { action.builder.
consumeStatementDefault(); break;
}
//
- // Rule 182: expression_statement ::= expression ;
+ // Rule 185: expression_statement ::= expression ;
//
- case 182: { action.builder.
+ case 185: { action.builder.
consumeStatementExpression(); break;
}
//
- // Rule 183: expression_statement ::= ;
+ // Rule 186: expression_statement ::= ;
//
- case 183: { action.builder.
+ case 186: { action.builder.
consumeStatementNull(); break;
}
//
- // Rule 184: compound_statement ::= { <openscope-ast> statement_seq }
+ // Rule 187: compound_statement ::= { <openscope-ast> statement_seq }
//
- case 184: { action.builder.
+ case 187: { action.builder.
consumeStatementCompoundStatement(true); break;
}
//
- // Rule 185: compound_statement ::= { }
+ // Rule 188: compound_statement ::= { }
//
- case 185: { action.builder.
+ case 188: { action.builder.
consumeStatementCompoundStatement(false); break;
}
//
- // Rule 188: selection_statement ::= if ( condition ) statement
+ // Rule 191: selection_statement ::= if ( condition ) statement
//
- case 188: { action.builder.
+ case 191: { action.builder.
consumeStatementIf(false); break;
}
//
- // Rule 189: selection_statement ::= if ( condition ) statement else statement
+ // Rule 192: selection_statement ::= if ( condition ) statement else statement
//
- case 189: { action.builder.
+ case 192: { action.builder.
consumeStatementIf(true); break;
}
//
- // Rule 190: selection_statement ::= switch ( condition ) statement
+ // Rule 193: selection_statement ::= switch ( condition ) statement
//
- case 190: { action.builder.
+ case 193: { action.builder.
consumeStatementSwitch(); break;
}
//
- // Rule 192: condition ::= type_specifier_seq declarator = assignment_expression
+ // Rule 195: condition ::= type_specifier_seq declarator = assignment_expression
//
- case 192: { action.builder.
+ case 195: { action.builder.
consumeConditionDeclaration(); break;
}
//
- // Rule 193: iteration_statement ::= while ( condition ) statement
+ // Rule 196: iteration_statement ::= while ( condition ) statement
//
- case 193: { action.builder.
+ case 196: { action.builder.
consumeStatementWhileLoop(); break;
}
//
- // Rule 194: iteration_statement ::= do statement while ( expression ) ;
+ // Rule 197: iteration_statement ::= do statement while ( expression ) ;
//
- case 194: { action.builder.
+ case 197: { action.builder.
consumeStatementDoLoop(); break;
}
//
- // Rule 195: iteration_statement ::= for ( expression_opt ; expression_opt ; expression_opt ) statement
+ // Rule 198: iteration_statement ::= for ( expression_opt ; expression_opt ; expression_opt ) statement
//
- case 195: { action.builder.
+ case 198: { action.builder.
consumeStatementForLoop(); break;
}
//
- // Rule 196: iteration_statement ::= for ( simple_declaration expression_opt ; expression_opt ) statement
+ // Rule 199: iteration_statement ::= for ( simple_declaration expression_opt ; expression_opt ) statement
//
- case 196: { action.builder.
+ case 199: { action.builder.
consumeStatementForLoop(); break;
}
//
- // Rule 197: jump_statement ::= break ;
+ // Rule 200: jump_statement ::= break ;
//
- case 197: { action.builder.
+ case 200: { action.builder.
consumeStatementBreak(); break;
}
//
- // Rule 198: jump_statement ::= continue ;
+ // Rule 201: jump_statement ::= continue ;
//
- case 198: { action.builder.
+ case 201: { action.builder.
consumeStatementContinue(); break;
}
//
- // Rule 199: jump_statement ::= return expression ;
+ // Rule 202: jump_statement ::= return expression ;
//
- case 199: { action.builder.
+ case 202: { action.builder.
consumeStatementReturn(true); break;
}
//
- // Rule 200: jump_statement ::= return ;
+ // Rule 203: jump_statement ::= return ;
//
- case 200: { action.builder.
+ case 203: { action.builder.
consumeStatementReturn(false); break;
}
//
- // Rule 201: jump_statement ::= goto identifier ;
+ // Rule 204: jump_statement ::= goto identifier_token ;
//
- case 201: { action.builder.
+ case 204: { action.builder.
consumeStatementGoto(); break;
}
//
- // Rule 202: declaration_statement ::= block_declaration
+ // Rule 205: declaration_statement ::= block_declaration
//
- case 202: { action.builder.
+ case 205: { action.builder.
consumeStatementDeclaration(); break;
}
//
- // Rule 219: simple_declaration ::= declaration_specifiers_opt <openscope-ast> init_declarator_list_opt ;
+ // Rule 222: simple_declaration ::= declaration_specifiers_opt <openscope-ast> init_declarator_list_opt ;
//
- case 219: { action.builder.
+ case 222: { action.builder.
consumeDeclarationSimple(true); break;
}
//
- // Rule 220: declaration_specifiers ::= <openscope-ast> simple_declaration_specifiers
+ // Rule 223: declaration_specifiers ::= <openscope-ast> simple_declaration_specifiers
//
- case 220: { action.builder.
+ case 223: { action.builder.
consumeDeclarationSpecifiersSimple(); break;
}
//
- // Rule 221: declaration_specifiers ::= <openscope-ast> class_declaration_specifiers
+ // Rule 224: declaration_specifiers ::= <openscope-ast> class_declaration_specifiers
//
- case 221: { action.builder.
+ case 224: { action.builder.
consumeDeclarationSpecifiersComposite(); break;
}
//
- // Rule 222: declaration_specifiers ::= <openscope-ast> elaborated_declaration_specifiers
+ // Rule 225: declaration_specifiers ::= <openscope-ast> elaborated_declaration_specifiers
//
- case 222: { action.builder.
+ case 225: { action.builder.
consumeDeclarationSpecifiersComposite(); break;
}
//
- // Rule 223: declaration_specifiers ::= <openscope-ast> enum_declaration_specifiers
+ // Rule 226: declaration_specifiers ::= <openscope-ast> enum_declaration_specifiers
//
- case 223: { action.builder.
+ case 226: { action.builder.
consumeDeclarationSpecifiersComposite(); break;
}
//
- // Rule 224: declaration_specifiers ::= <openscope-ast> type_name_declaration_specifiers
+ // Rule 227: declaration_specifiers ::= <openscope-ast> type_name_declaration_specifiers
//
- case 224: { action.builder.
+ case 227: { action.builder.
consumeDeclarationSpecifiersTypeName(); break;
}
//
- // Rule 226: declaration_specifiers_opt ::= $Empty
+ // Rule 229: declaration_specifiers_opt ::= $Empty
//
- case 226: { action.builder.
+ case 229: { action.builder.
consumeEmpty(); break;
}
//
- // Rule 230: no_type_declaration_specifier ::= friend
+ // Rule 233: no_type_declaration_specifier ::= friend
//
- case 230: { action.builder.
+ case 233: { action.builder.
consumeDeclSpecToken(); break;
}
//
- // Rule 231: no_type_declaration_specifier ::= typedef
+ // Rule 234: no_type_declaration_specifier ::= typedef
//
- case 231: { action.builder.
+ case 234: { action.builder.
consumeDeclSpecToken(); break;
}
//
- // Rule 260: simple_type_specifier ::= simple_type_specifier_token
+ // Rule 263: simple_type_specifier ::= simple_type_specifier_token
//
- case 260: { action.builder.
+ case 263: { action.builder.
consumeDeclSpecToken(); break;
}
//
- // Rule 276: type_name_specifier ::= dcolon_opt nested_name_specifier_opt type_name
+ // Rule 279: type_name_specifier ::= dcolon_opt nested_name_specifier_opt type_name
//
- case 276: { action.builder.
+ case 279: { action.builder.
consumeQualifiedId(false); break;
}
//
- // Rule 277: type_name_specifier ::= dcolon_opt nested_name_specifier template template_id_name
+ // Rule 280: type_name_specifier ::= dcolon_opt nested_name_specifier template template_id_name
//
- case 277: { action.builder.
+ case 280: { action.builder.
consumeQualifiedId(false); break;
}
//
- // Rule 278: type_name_specifier ::= typename dcolon_opt nested_name_specifier identifier_name
+ // Rule 281: type_name_specifier ::= typename dcolon_opt nested_name_specifier identifier_name
//
- case 278: { action.builder.
+ case 281: { action.builder.
consumeQualifiedId(false); break;
}
//
- // Rule 279: type_name_specifier ::= typename dcolon_opt nested_name_specifier template_opt template_id_name
+ // Rule 282: type_name_specifier ::= typename dcolon_opt nested_name_specifier template_opt template_id_name
//
- case 279: { action.builder.
+ case 282: { action.builder.
consumeQualifiedId(true); break;
}
//
- // Rule 280: elaborated_type_specifier ::= class_keyword dcolon_opt nested_name_specifier_opt identifier_name
+ // Rule 283: elaborated_type_specifier ::= class_keyword dcolon_opt nested_name_specifier_opt identifier_name
//
- case 280: { action.builder.
+ case 283: { action.builder.
consumeTypeSpecifierElaborated(false); break;
}
//
- // Rule 281: elaborated_type_specifier ::= class_keyword dcolon_opt nested_name_specifier_opt template_opt template_id_name
+ // Rule 284: elaborated_type_specifier ::= class_keyword dcolon_opt nested_name_specifier_opt template_opt template_id_name
//
- case 281: { action.builder.
+ case 284: { action.builder.
consumeTypeSpecifierElaborated(true); break;
}
//
- // Rule 282: elaborated_type_specifier ::= enum dcolon_opt nested_name_specifier_opt identifier_name
+ // Rule 285: elaborated_type_specifier ::= enum dcolon_opt nested_name_specifier_opt identifier_name
//
- case 282: { action.builder.
+ case 285: { action.builder.
consumeTypeSpecifierElaborated(false); break;
}
//
- // Rule 284: enum_specifier ::= enum { <openscope-ast> enumerator_list_opt }
+ // Rule 287: enum_specifier ::= enum { <openscope-ast> enumerator_list_opt }
//
- case 284: { action.builder.
+ case 287: { action.builder.
consumeTypeSpecifierEnumeration(false); break;
}
//
- // Rule 285: enum_specifier ::= enum identifier { <openscope-ast> enumerator_list_opt }
+ // Rule 288: enum_specifier ::= enum identifier_token { <openscope-ast> enumerator_list_opt }
//
- case 285: { action.builder.
+ case 288: { action.builder.
consumeTypeSpecifierEnumeration(true); break;
}
//
- // Rule 290: enumerator_definition ::= enumerator
+ // Rule 293: enumerator_definition ::= enumerator
//
- case 290: { action.builder.
+ case 293: { action.builder.
consumeEnumerator(false); break;
}
//
- // Rule 291: enumerator_definition ::= enumerator = constant_expression
+ // Rule 294: enumerator_definition ::= enumerator = constant_expression
//
- case 291: { action.builder.
+ case 294: { action.builder.
consumeEnumerator(true); break;
}
//
- // Rule 300: original_namespace_definition ::= namespace identifier_name { <openscope-ast> declaration_seq_opt }
+ // Rule 303: original_namespace_definition ::= namespace identifier_name { <openscope-ast> declaration_seq_opt }
//
- case 300: { action.builder.
+ case 303: { action.builder.
consumeNamespaceDefinition(true); break;
}
//
- // Rule 301: extension_namespace_definition ::= namespace original_namespace_name { <openscope-ast> declaration_seq_opt }
+ // Rule 304: extension_namespace_definition ::= namespace original_namespace_name { <openscope-ast> declaration_seq_opt }
//
- case 301: { action.builder.
+ case 304: { action.builder.
consumeNamespaceDefinition(true); break;
}
//
- // Rule 302: unnamed_namespace_definition ::= namespace { <openscope-ast> declaration_seq_opt }
+ // Rule 305: unnamed_namespace_definition ::= namespace { <openscope-ast> declaration_seq_opt }
//
- case 302: { action.builder.
+ case 305: { action.builder.
consumeNamespaceDefinition(false); break;
}
//
- // Rule 304: namespace_alias_definition ::= namespace identifier = dcolon_opt nested_name_specifier_opt namespace_name ;
+ // Rule 307: namespace_alias_definition ::= namespace identifier_token = dcolon_opt nested_name_specifier_opt namespace_name ;
//
- case 304: { action.builder.
+ case 307: { action.builder.
consumeNamespaceAliasDefinition(); break;
}
//
- // Rule 305: using_declaration ::= using typename_opt dcolon_opt nested_name_specifier_opt unqualified_id_name ;
+ // Rule 308: using_declaration ::= using typename_opt dcolon_opt nested_name_specifier_opt unqualified_id_name ;
//
- case 305: { action.builder.
+ case 308: { action.builder.
consumeUsingDeclaration(); break;
}
//
- // Rule 306: typename_opt ::= typename
+ // Rule 309: typename_opt ::= typename
//
- case 306: { action.builder.
+ case 309: { action.builder.
consumePlaceHolder(); break;
}
//
- // Rule 307: typename_opt ::= $Empty
+ // Rule 310: typename_opt ::= $Empty
//
- case 307: { action.builder.
+ case 310: { action.builder.
consumeEmpty(); break;
}
//
- // Rule 308: using_directive ::= using namespace dcolon_opt nested_name_specifier_opt namespace_name ;
+ // Rule 311: using_directive ::= using namespace dcolon_opt nested_name_specifier_opt namespace_name ;
//
- case 308: { action.builder.
+ case 311: { action.builder.
consumeUsingDirective(); break;
}
//
- // Rule 309: asm_definition ::= asm ( stringlit ) ;
+ // Rule 312: asm_definition ::= asm ( stringlit ) ;
//
- case 309: { action.builder.
+ case 312: { action.builder.
consumeDeclarationASM(); break;
}
//
- // Rule 310: linkage_specification ::= extern stringlit { <openscope-ast> declaration_seq_opt }
+ // Rule 313: linkage_specification ::= extern stringlit { <openscope-ast> declaration_seq_opt }
//
- case 310: { action.builder.
+ case 313: { action.builder.
consumeLinkageSpecification(); break;
}
//
- // Rule 311: linkage_specification ::= extern stringlit <openscope-ast> declaration
+ // Rule 314: linkage_specification ::= extern stringlit <openscope-ast> declaration
//
- case 311: { action.builder.
+ case 314: { action.builder.
consumeLinkageSpecification(); break;
}
//
- // Rule 317: init_declarator ::= declarator initializer
+ // Rule 320: init_declarator ::= declarator initializer
//
- case 317: { action.builder.
+ case 320: { action.builder.
consumeDeclaratorWithInitializer(true); break;
}
//
- // Rule 319: declarator ::= <openscope-ast> ptr_operator_seq direct_declarator
+ // Rule 322: declarator ::= <openscope-ast> ptr_operator_seq direct_declarator
//
- case 319: { action.builder.
+ case 322: { action.builder.
consumeDeclaratorWithPointer(true); break;
}
//
- // Rule 321: function_declarator ::= <openscope-ast> ptr_operator_seq direct_declarator
+ // Rule 324: function_declarator ::= <openscope-ast> ptr_operator_seq direct_declarator
//
- case 321: { action.builder.
+ case 324: { action.builder.
consumeDeclaratorWithPointer(true); break;
}
//
- // Rule 325: basic_direct_declarator ::= declarator_id_name
+ // Rule 328: basic_direct_declarator ::= declarator_id_name
//
- case 325: { action.builder.
+ case 328: { action.builder.
consumeDirectDeclaratorIdentifier(); break;
}
//
- // Rule 326: basic_direct_declarator ::= ( declarator )
+ // Rule 329: basic_direct_declarator ::= ( declarator )
//
- case 326: { action.builder.
+ case 329: { action.builder.
consumeDirectDeclaratorBracketed(); break;
}
//
- // Rule 327: function_direct_declarator ::= basic_direct_declarator ( <openscope-ast> parameter_declaration_clause ) <openscope-ast> cv_qualifier_seq_opt <openscope-ast> exception_specification_opt
+ // Rule 330: function_direct_declarator ::= basic_direct_declarator ( <openscope-ast> parameter_declaration_clause ) <openscope-ast> cv_qualifier_seq_opt <openscope-ast> exception_specification_opt
//
- case 327: { action.builder.
+ case 330: { action.builder.
consumeDirectDeclaratorFunctionDeclarator(true); break;
}
//
- // Rule 328: array_direct_declarator ::= array_direct_declarator array_modifier
+ // Rule 331: array_direct_declarator ::= array_direct_declarator array_modifier
//
- case 328: { action.builder.
+ case 331: { action.builder.
consumeDirectDeclaratorArrayDeclarator(true); break;
}
//
- // Rule 329: array_direct_declarator ::= basic_direct_declarator array_modifier
+ // Rule 332: array_direct_declarator ::= basic_direct_declarator array_modifier
//
- case 329: { action.builder.
+ case 332: { action.builder.
consumeDirectDeclaratorArrayDeclarator(true); break;
}
//
- // Rule 330: array_modifier ::= [ constant_expression ]
+ // Rule 333: array_modifier ::= [ constant_expression ]
//
- case 330: { action.builder.
+ case 333: { action.builder.
consumeDirectDeclaratorArrayModifier(true); break;
}
//
- // Rule 331: array_modifier ::= [ ]
+ // Rule 334: array_modifier ::= [ ]
//
- case 331: { action.builder.
+ case 334: { action.builder.
consumeDirectDeclaratorArrayModifier(false); break;
}
//
- // Rule 332: ptr_operator ::= * <openscope-ast> cv_qualifier_seq_opt
+ // Rule 335: ptr_operator ::= * <openscope-ast> cv_qualifier_seq_opt
//
- case 332: { action.builder.
+ case 335: { action.builder.
consumePointer(); break;
}
//
- // Rule 333: ptr_operator ::= &
+ // Rule 336: ptr_operator ::= &
//
- case 333: { action.builder.
+ case 336: { action.builder.
consumeReferenceOperator(); break;
}
//
- // Rule 334: ptr_operator ::= dcolon_opt nested_name_specifier * <openscope-ast> cv_qualifier_seq_opt
+ // Rule 337: ptr_operator ::= dcolon_opt nested_name_specifier * <openscope-ast> cv_qualifier_seq_opt
//
- case 334: { action.builder.
+ case 337: { action.builder.
consumePointerToMember(); break;
}
//
- // Rule 340: cv_qualifier ::= const
+ // Rule 343: cv_qualifier ::= const
//
- case 340: { action.builder.
+ case 343: { action.builder.
consumeDeclSpecToken(); break;
}
//
- // Rule 341: cv_qualifier ::= volatile
+ // Rule 344: cv_qualifier ::= volatile
//
- case 341: { action.builder.
+ case 344: { action.builder.
consumeDeclSpecToken(); break;
}
//
- // Rule 343: declarator_id_name ::= dcolon_opt nested_name_specifier_opt type_name
+ // Rule 346: declarator_id_name ::= dcolon_opt nested_name_specifier_opt type_name
//
- case 343: { action.builder.
+ case 346: { action.builder.
consumeQualifiedId(false); break;
}
//
- // Rule 344: type_id ::= type_specifier_seq
+ // Rule 347: type_id ::= type_specifier_seq
//
- case 344: { action.builder.
+ case 347: { action.builder.
consumeTypeId(false); break;
}
//
- // Rule 345: type_id ::= type_specifier_seq abstract_declarator
+ // Rule 348: type_id ::= type_specifier_seq abstract_declarator
//
- case 345: { action.builder.
+ case 348: { action.builder.
consumeTypeId(true); break;
}
//
- // Rule 348: abstract_declarator ::= <openscope-ast> ptr_operator_seq
+ // Rule 351: abstract_declarator ::= <openscope-ast> ptr_operator_seq
//
- case 348: { action.builder.
+ case 351: { action.builder.
consumeDeclaratorWithPointer(false); break;
}
//
- // Rule 349: abstract_declarator ::= <openscope-ast> ptr_operator_seq direct_abstract_declarator
+ // Rule 352: abstract_declarator ::= <openscope-ast> ptr_operator_seq direct_abstract_declarator
//
- case 349: { action.builder.
+ case 352: { action.builder.
consumeDeclaratorWithPointer(true); break;
}
//
- // Rule 353: basic_direct_abstract_declarator ::= ( abstract_declarator )
+ // Rule 356: basic_direct_abstract_declarator ::= ( abstract_declarator )
//
- case 353: { action.builder.
+ case 356: { action.builder.
consumeDirectDeclaratorBracketed(); break;
}
//
- // Rule 354: array_direct_abstract_declarator ::= array_modifier
+ // Rule 357: array_direct_abstract_declarator ::= array_modifier
//
- case 354: { action.builder.
+ case 357: { action.builder.
consumeDirectDeclaratorArrayDeclarator(false); break;
}
//
- // Rule 355: array_direct_abstract_declarator ::= array_direct_abstract_declarator array_modifier
+ // Rule 358: array_direct_abstract_declarator ::= array_direct_abstract_declarator array_modifier
//
- case 355: { action.builder.
+ case 358: { action.builder.
consumeDirectDeclaratorArrayDeclarator(true); break;
}
//
- // Rule 356: array_direct_abstract_declarator ::= basic_direct_abstract_declarator array_modifier
+ // Rule 359: array_direct_abstract_declarator ::= basic_direct_abstract_declarator array_modifier
//
- case 356: { action.builder.
+ case 359: { action.builder.
consumeDirectDeclaratorArrayDeclarator(true); break;
}
//
- // Rule 357: function_direct_abstract_declarator ::= basic_direct_abstract_declarator ( <openscope-ast> parameter_declaration_clause ) <openscope-ast> cv_qualifier_seq_opt <openscope-ast> exception_specification_opt
+ // Rule 360: function_direct_abstract_declarator ::= basic_direct_abstract_declarator ( <openscope-ast> parameter_declaration_clause ) <openscope-ast> cv_qualifier_seq_opt <openscope-ast> exception_specification_opt
//
- case 357: { action.builder.
+ case 360: { action.builder.
consumeDirectDeclaratorFunctionDeclarator(true); break;
}
//
- // Rule 358: function_direct_abstract_declarator ::= ( <openscope-ast> parameter_declaration_clause ) <openscope-ast> cv_qualifier_seq_opt <openscope-ast> exception_specification_opt
+ // Rule 361: function_direct_abstract_declarator ::= ( <openscope-ast> parameter_declaration_clause ) <openscope-ast> cv_qualifier_seq_opt <openscope-ast> exception_specification_opt
//
- case 358: { action.builder.
+ case 361: { action.builder.
consumeDirectDeclaratorFunctionDeclarator(false); break;
}
//
- // Rule 359: parameter_declaration_clause ::= parameter_declaration_list_opt ...
+ // Rule 362: parameter_declaration_clause ::= parameter_declaration_list_opt ...
//
- case 359: { action.builder.
+ case 362: { action.builder.
consumePlaceHolder(); break;
}
//
- // Rule 360: parameter_declaration_clause ::= parameter_declaration_list_opt
+ // Rule 363: parameter_declaration_clause ::= parameter_declaration_list_opt
//
- case 360: { action.builder.
+ case 363: { action.builder.
consumeEmpty(); break;
}
//
- // Rule 361: parameter_declaration_clause ::= parameter_declaration_list , ...
+ // Rule 364: parameter_declaration_clause ::= parameter_declaration_list , ...
//
- case 361: { action.builder.
+ case 364: { action.builder.
consumePlaceHolder(); break;
}
//
- // Rule 367: abstract_declarator_opt ::= $Empty
+ // Rule 370: abstract_declarator_opt ::= $Empty
//
- case 367: { action.builder.
+ case 370: { action.builder.
consumeEmpty(); break;
}
//
- // Rule 368: parameter_declaration ::= declaration_specifiers parameter_init_declarator
+ // Rule 371: parameter_declaration ::= declaration_specifiers parameter_init_declarator
//
- case 368: { action.builder.
+ case 371: { action.builder.
consumeParameterDeclaration(); break;
}
//
- // Rule 369: parameter_declaration ::= declaration_specifiers
+ // Rule 372: parameter_declaration ::= declaration_specifiers
//
- case 369: { action.builder.
+ case 372: { action.builder.
consumeParameterDeclarationWithoutDeclarator(); break;
}
//
- // Rule 371: parameter_init_declarator ::= declarator = parameter_initializer
+ // Rule 374: parameter_init_declarator ::= declarator = parameter_initializer
//
- case 371: { action.builder.
+ case 374: { action.builder.
consumeDeclaratorWithInitializer(true); break;
}
//
- // Rule 373: parameter_init_declarator ::= abstract_declarator = parameter_initializer
+ // Rule 376: parameter_init_declarator ::= abstract_declarator = parameter_initializer
//
- case 373: { action.builder.
+ case 376: { action.builder.
consumeDeclaratorWithInitializer(true); break;
}
//
- // Rule 374: parameter_init_declarator ::= = parameter_initializer
+ // Rule 377: parameter_init_declarator ::= = parameter_initializer
//
- case 374: { action.builder.
+ case 377: { action.builder.
consumeDeclaratorWithInitializer(false); break;
}
//
- // Rule 375: parameter_initializer ::= assignment_expression
+ // Rule 378: parameter_initializer ::= assignment_expression
//
- case 375: { action.builder.
+ case 378: { action.builder.
consumeInitializer(); break;
}
//
- // Rule 376: function_definition ::= declaration_specifiers_opt function_declarator <openscope-ast> ctor_initializer_list_opt function_body
+ // Rule 379: function_definition ::= declaration_specifiers_opt function_declarator <openscope-ast> ctor_initializer_list_opt function_body
//
- case 376: { action.builder.
+ case 379: { action.builder.
consumeFunctionDefinition(false); break;
}
//
- // Rule 377: function_definition ::= declaration_specifiers_opt function_declarator try <openscope-ast> ctor_initializer_list_opt function_body <openscope-ast> handler_seq
+ // Rule 380: function_definition ::= declaration_specifiers_opt function_declarator try <openscope-ast> ctor_initializer_list_opt function_body <openscope-ast> handler_seq
//
- case 377: { action.builder.
+ case 380: { action.builder.
consumeFunctionDefinition(true); break;
}
//
- // Rule 380: initializer ::= ( expression_list )
+ // Rule 383: initializer ::= ( expression_list )
//
- case 380: { action.builder.
+ case 383: { action.builder.
consumeInitializerConstructor(); break;
}
//
- // Rule 381: initializer_clause ::= assignment_expression
+ // Rule 384: initializer_clause ::= assignment_expression
//
- case 381: { action.builder.
+ case 384: { action.builder.
consumeInitializer(); break;
}
//
- // Rule 382: initializer_clause ::= { <openscope-ast> initializer_list , }
+ // Rule 385: initializer_clause ::= { <openscope-ast> initializer_list , }
//
- case 382: { action.builder.
+ case 385: { action.builder.
consumeInitializerList(); break;
}
//
- // Rule 383: initializer_clause ::= { <openscope-ast> initializer_list }
+ // Rule 386: initializer_clause ::= { <openscope-ast> initializer_list }
//
- case 383: { action.builder.
+ case 386: { action.builder.
consumeInitializerList(); break;
}
//
- // Rule 384: initializer_clause ::= { <openscope-ast> }
+ // Rule 387: initializer_clause ::= { <openscope-ast> }
//
- case 384: { action.builder.
+ case 387: { action.builder.
consumeInitializerList(); break;
}
//
- // Rule 389: class_specifier ::= class_head { <openscope-ast> member_declaration_list_opt }
+ // Rule 392: class_specifier ::= class_head { <openscope-ast> member_declaration_list_opt }
//
- case 389: { action.builder.
+ case 392: { action.builder.
consumeClassSpecifier(); break;
}
//
- // Rule 390: class_head ::= class_keyword identifier_name_opt <openscope-ast> base_clause_opt
+ // Rule 393: class_head ::= class_keyword identifier_name_opt <openscope-ast> base_clause_opt
//
- case 390: { action.builder.
+ case 393: { action.builder.
consumeClassHead(false); break;
}
//
- // Rule 391: class_head ::= class_keyword template_id_name <openscope-ast> base_clause_opt
+ // Rule 394: class_head ::= class_keyword template_id_name <openscope-ast> base_clause_opt
//
- case 391: { action.builder.
+ case 394: { action.builder.
consumeClassHead(false); break;
}
//
- // Rule 392: class_head ::= class_keyword nested_name_specifier identifier_name <openscope-ast> base_clause_opt
+ // Rule 395: class_head ::= class_keyword nested_name_specifier identifier_name <openscope-ast> base_clause_opt
//
- case 392: { action.builder.
+ case 395: { action.builder.
consumeClassHead(true); break;
}
//
- // Rule 393: class_head ::= class_keyword nested_name_specifier template_id_name <openscope-ast> base_clause_opt
+ // Rule 396: class_head ::= class_keyword nested_name_specifier template_id_name <openscope-ast> base_clause_opt
//
- case 393: { action.builder.
+ case 396: { action.builder.
consumeClassHead(true); break;
}
//
- // Rule 397: identifier_name_opt ::= $Empty
+ // Rule 398: identifier_name_opt ::= $Empty
//
- case 397: { action.builder.
+ case 398: { action.builder.
consumeEmpty(); break;
}
//
- // Rule 401: visibility_label ::= access_specifier_keyword :
+ // Rule 402: visibility_label ::= access_specifier_keyword :
//
- case 401: { action.builder.
+ case 402: { action.builder.
consumeVisibilityLabel(); break;
}
//
- // Rule 402: member_declaration ::= declaration_specifiers_opt <openscope-ast> member_declarator_list ;
+ // Rule 403: member_declaration ::= declaration_specifiers_opt <openscope-ast> member_declarator_list ;
//
- case 402: { action.builder.
+ case 403: { action.builder.
consumeDeclarationSimple(true); break;
}
//
- // Rule 403: member_declaration ::= declaration_specifiers_opt ;
+ // Rule 404: member_declaration ::= declaration_specifiers_opt ;
//
- case 403: { action.builder.
+ case 404: { action.builder.
consumeDeclarationSimple(false); break;
}
//
- // Rule 406: member_declaration ::= dcolon_opt nested_name_specifier template_opt unqualified_id_name ;
+ // Rule 407: member_declaration ::= dcolon_opt nested_name_specifier template_opt unqualified_id_name ;
//
- case 406: { action.builder.
+ case 407: { action.builder.
consumeMemberDeclarationQualifiedId(); break;
}
//
- // Rule 410: member_declaration ::= ERROR_TOKEN
+ // Rule 411: member_declaration ::= ERROR_TOKEN
//
- case 410: { action.builder.
+ case 411: { action.builder.
consumeDeclarationProblem(); break;
}
//
- // Rule 418: member_declarator ::= declarator constant_initializer
+ // Rule 419: member_declarator ::= declarator constant_initializer
//
- case 418: { action.builder.
+ case 419: { action.builder.
consumeMemberDeclaratorWithInitializer(); break;
}
//
- // Rule 419: member_declarator ::= bit_field_declarator : constant_expression
+ // Rule 420: member_declarator ::= bit_field_declarator : constant_expression
//
- case 419: { action.builder.
+ case 420: { action.builder.
consumeBitField(true); break;
}
//
- // Rule 420: member_declarator ::= : constant_expression
+ // Rule 421: member_declarator ::= : constant_expression
//
- case 420: { action.builder.
+ case 421: { action.builder.
consumeBitField(false); break;
}
//
- // Rule 421: bit_field_declarator ::= identifier_name
+ // Rule 422: bit_field_declarator ::= identifier_name
//
- case 421: { action.builder.
+ case 422: { action.builder.
consumeDirectDeclaratorIdentifier(); break;
}
//
- // Rule 428: base_specifier ::= dcolon_opt nested_name_specifier_opt class_name
+ // Rule 429: base_specifier ::= dcolon_opt nested_name_specifier_opt class_name
//
- case 428: { action.builder.
+ case 429: { action.builder.
consumeBaseSpecifier(false); break;
}
//
- // Rule 429: base_specifier ::= virtual_opt access_specifier_keyword virtual_opt dcolon_opt nested_name_specifier_opt class_name
+ // Rule 430: base_specifier ::= virtual_opt access_specifier_keyword virtual_opt dcolon_opt nested_name_specifier_opt class_name
//
- case 429: { action.builder.
+ case 430: { action.builder.
consumeBaseSpecifier(true); break;
}
//
- // Rule 430: virtual_opt ::= virtual
+ // Rule 431: virtual_opt ::= virtual
//
- case 430: { action.builder.
+ case 431: { action.builder.
consumePlaceHolder(); break;
}
//
- // Rule 431: virtual_opt ::= $Empty
+ // Rule 432: virtual_opt ::= $Empty
//
- case 431: { action.builder.
+ case 432: { action.builder.
consumeEmpty(); break;
}
//
- // Rule 437: conversion_function_id_name ::= operator conversion_type_id
+ // Rule 438: conversion_function_id_name ::= operator conversion_type_id
//
- case 437: { action.builder.
+ case 438: { action.builder.
consumeConversionName(); break;
}
//
- // Rule 438: conversion_type_id ::= type_specifier_seq conversion_declarator
+ // Rule 439: conversion_type_id ::= type_specifier_seq conversion_declarator
//
- case 438: { action.builder.
+ case 439: { action.builder.
consumeTypeId(true); break;
}
//
- // Rule 439: conversion_type_id ::= type_specifier_seq
+ // Rule 440: conversion_type_id ::= type_specifier_seq
//
- case 439: { action.builder.
+ case 440: { action.builder.
consumeTypeId(false); break;
}
//
- // Rule 440: conversion_declarator ::= <openscope-ast> ptr_operator_seq
+ // Rule 441: conversion_declarator ::= <openscope-ast> ptr_operator_seq
//
- case 440: { action.builder.
+ case 441: { action.builder.
consumeDeclaratorWithPointer(false); break;
}
//
- // Rule 446: mem_initializer ::= mem_initializer_name ( expression_list_opt )
+ // Rule 447: mem_initializer ::= mem_initializer_name ( expression_list_opt )
//
- case 446: { action.builder.
+ case 447: { action.builder.
consumeConstructorChainInitializer(); break;
}
//
- // Rule 447: mem_initializer_name ::= dcolon_opt nested_name_specifier_opt class_name
+ // Rule 448: mem_initializer_name ::= dcolon_opt nested_name_specifier_opt class_name
//
- case 447: { action.builder.
+ case 448: { action.builder.
consumeQualifiedId(false); break;
}
//
- // Rule 450: operator_function_id_name ::= operator_id_name < <openscope-ast> template_argument_list_opt >
+ // Rule 451: operator_function_id_name ::= operator_id_name < <openscope-ast> template_argument_list_opt >
//
- case 450: { action.builder.
+ case 451: { action.builder.
consumeTemplateId(); break;
}
//
- // Rule 451: operator_id_name ::= operator overloadable_operator
+ // Rule 452: operator_id_name ::= operator overloadable_operator
//
- case 451: { action.builder.
+ case 452: { action.builder.
consumeOperatorName(); break;
}
//
- // Rule 494: template_declaration ::= export_opt template < <openscope-ast> template_parameter_list > declaration
+ // Rule 495: template_declaration ::= export_opt template < <openscope-ast> template_parameter_list > declaration
//
- case 494: { action.builder.
+ case 495: { action.builder.
consumeTemplateDeclaration(); break;
}
//
- // Rule 495: export_opt ::= export
+ // Rule 496: export_opt ::= export
//
- case 495: { action.builder.
+ case 496: { action.builder.
consumePlaceHolder(); break;
}
//
- // Rule 496: export_opt ::= $Empty
+ // Rule 497: export_opt ::= $Empty
//
- case 496: { action.builder.
+ case 497: { action.builder.
consumeEmpty(); break;
}
//
- // Rule 501: type_parameter ::= class identifier_name_opt
+ // Rule 502: type_parameter ::= class identifier_name_opt
//
- case 501: { action.builder.
+ case 502: { action.builder.
consumeSimpleTypeTemplateParameter(false); break;
}
//
- // Rule 502: type_parameter ::= class identifier_name_opt = type_id
+ // Rule 503: type_parameter ::= class identifier_name_opt = type_id
//
- case 502: { action.builder.
+ case 503: { action.builder.
consumeSimpleTypeTemplateParameter(true); break;
}
//
- // Rule 503: type_parameter ::= typename identifier_name_opt
+ // Rule 504: type_parameter ::= typename identifier_name_opt
//
- case 503: { action.builder.
+ case 504: { action.builder.
consumeSimpleTypeTemplateParameter(false); break;
}
//
- // Rule 504: type_parameter ::= typename identifier_name_opt = type_id
+ // Rule 505: type_parameter ::= typename identifier_name_opt = type_id
//
- case 504: { action.builder.
+ case 505: { action.builder.
consumeSimpleTypeTemplateParameter(true); break;
}
//
- // Rule 505: type_parameter ::= template < <openscope-ast> template_parameter_list > class identifier_name_opt
+ // Rule 506: type_parameter ::= template < <openscope-ast> template_parameter_list > class identifier_name_opt
//
- case 505: { action.builder.
+ case 506: { action.builder.
consumeTemplatedTypeTemplateParameter(false); break;
}
//
- // Rule 506: type_parameter ::= template < <openscope-ast> template_parameter_list > class identifier_name_opt = id_expression
+ // Rule 507: type_parameter ::= template < <openscope-ast> template_parameter_list > class identifier_name_opt = id_expression
//
- case 506: { action.builder.
+ case 507: { action.builder.
consumeTemplatedTypeTemplateParameter(true); break;
}
//
- // Rule 507: template_id_name ::= template_identifier < <openscope-ast> template_argument_list_opt >
+ // Rule 508: template_id_name ::= template_identifier < <openscope-ast> template_argument_list_opt >
//
- case 507: { action.builder.
+ case 508: { action.builder.
consumeTemplateId(); break;
}
//
- // Rule 516: explicit_instantiation ::= template declaration
+ // Rule 517: explicit_instantiation ::= template declaration
//
- case 516: { action.builder.
+ case 517: { action.builder.
consumeTemplateExplicitInstantiation(); break;
}
//
- // Rule 517: explicit_specialization ::= template < > declaration
+ // Rule 518: explicit_specialization ::= template < > declaration
//
- case 517: { action.builder.
+ case 518: { action.builder.
consumeTemplateExplicitSpecialization(); break;
}
//
- // Rule 518: try_block ::= try compound_statement <openscope-ast> handler_seq
+ // Rule 519: try_block ::= try compound_statement <openscope-ast> handler_seq
//
- case 518: { action.builder.
+ case 519: { action.builder.
consumeStatementTryBlock(); break;
}
//
- // Rule 521: handler ::= catch ( exception_declaration ) compound_statement
+ // Rule 522: handler ::= catch ( exception_declaration ) compound_statement
//
- case 521: { action.builder.
+ case 522: { action.builder.
consumeStatementCatchHandler(false); break;
}
//
- // Rule 522: handler ::= catch ( ... ) compound_statement
+ // Rule 523: handler ::= catch ( ... ) compound_statement
//
- case 522: { action.builder.
+ case 523: { action.builder.
consumeStatementCatchHandler(true); break;
}
//
- // Rule 523: exception_declaration ::= type_specifier_seq <openscope-ast> declarator
+ // Rule 524: exception_declaration ::= type_specifier_seq <openscope-ast> declarator
//
- case 523: { action.builder.
+ case 524: { action.builder.
consumeDeclarationSimple(true); break;
}
//
- // Rule 524: exception_declaration ::= type_specifier_seq <openscope-ast> abstract_declarator
+ // Rule 525: exception_declaration ::= type_specifier_seq <openscope-ast> abstract_declarator
//
- case 524: { action.builder.
+ case 525: { action.builder.
consumeDeclarationSimple(true); break;
}
//
- // Rule 525: exception_declaration ::= type_specifier_seq
+ // Rule 526: exception_declaration ::= type_specifier_seq
//
- case 525: { action.builder.
+ case 526: { action.builder.
consumeDeclarationSimple(false); break;
}
//
- // Rule 533: expression_parser_start ::= ERROR_TOKEN
+ // Rule 534: expression_parser_start ::= ERROR_TOKEN
//
- case 533: { action.builder.
+ case 534: { action.builder.
consumeExpressionProblem(); break;
}
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPExpressionStatementParserprs.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPExpressionStatementParserprs.java
index 98e4d836370..1fdddddda87 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPExpressionStatementParserprs.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPExpressionStatementParserprs.java
@@ -37,507 +37,517 @@ public class CPPExpressionStatementParserprs implements lpg.lpgjavaruntime.Parse
public interface BaseCheck {
public final static short baseCheck[] = {0,
- 0,0,0,0,0,1,1,1,1,1,
- 0,1,2,1,1,1,1,1,1,1,
- 1,1,1,1,3,1,1,1,1,1,
- 1,1,1,2,1,1,0,1,0,4,
- 2,2,2,3,2,3,2,2,1,0,
- 1,1,1,4,4,4,8,8,3,3,
- 4,4,3,3,2,2,7,7,7,7,
- 4,4,6,7,4,1,1,1,2,2,
- 2,2,2,2,2,2,2,4,7,7,
- 3,1,0,1,2,2,1,2,3,4,
- 1,0,3,1,0,3,5,1,4,1,
- 3,3,1,3,3,3,1,3,3,1,
- 3,3,1,3,3,3,3,1,3,3,
- 1,3,1,3,1,3,1,3,1,3,
- 1,5,1,2,1,1,3,3,3,3,
- 3,3,3,3,3,3,3,1,1,2,
- 1,3,1,0,1,0,1,1,0,1,
- 1,1,1,1,1,1,1,1,3,3,
- 2,2,1,4,2,1,2,5,7,5,
- 1,4,5,7,9,8,2,2,3,2,
- 3,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,2,1,0,4,2,
- 2,2,2,2,1,0,1,1,1,1,
- 1,1,2,1,2,2,2,1,1,2,
- 2,1,2,2,1,2,2,1,2,2,
+ 0,0,1,1,1,1,1,1,1,1,
+ 1,0,1,2,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,3,1,1,
+ 1,1,1,1,1,1,2,1,1,0,
+ 1,0,4,2,2,2,3,2,3,2,
+ 2,1,0,1,1,1,4,4,4,8,
+ 8,3,3,4,4,3,3,2,2,7,
+ 7,7,7,4,4,6,7,4,1,1,
+ 1,2,2,2,2,2,2,2,2,2,
+ 4,7,7,3,1,0,1,2,2,1,
+ 2,3,4,1,0,3,1,0,3,5,
+ 1,4,1,3,3,1,3,3,3,1,
+ 3,3,1,3,3,1,3,3,3,3,
+ 1,3,3,1,3,1,3,1,3,1,
+ 3,1,3,1,5,1,2,1,1,3,
+ 3,3,3,3,3,3,3,3,3,3,
+ 1,1,2,1,3,1,0,1,0,1,
+ 1,0,1,1,1,1,1,1,1,1,
+ 1,3,3,2,2,1,4,2,1,2,
+ 5,7,5,1,4,5,7,9,8,2,
+ 2,3,2,3,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,2,1,
+ 0,4,2,2,2,2,2,1,0,1,
+ 1,1,1,1,1,2,1,2,2,2,
+ 1,1,2,2,1,2,2,1,2,2,
+ 1,2,2,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,3,4,
+ 4,5,4,5,4,1,5,6,1,3,
+ 1,0,1,3,1,1,1,1,1,1,
+ 1,1,6,6,5,1,7,6,1,0,
+ 6,5,6,4,1,3,1,0,1,2,
+ 1,3,1,3,1,1,1,1,3,9,
+ 2,2,3,2,3,1,5,1,2,2,
+ 1,0,1,1,1,3,1,2,1,1,
+ 2,3,1,1,1,3,1,2,2,9,
+ 8,2,1,3,1,3,1,0,1,0,
+ 2,1,1,3,1,3,2,1,5,8,
+ 1,2,3,1,5,4,3,1,3,1,
+ 1,5,4,4,5,5,1,0,1,1,
+ 1,2,4,2,2,1,5,1,1,1,
+ 1,1,2,1,0,1,3,1,2,3,
+ 2,1,2,2,1,0,1,3,3,6,
+ 1,0,1,1,1,1,0,2,2,1,
+ 2,2,1,0,1,3,4,3,1,1,
+ 5,2,1,1,3,3,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,3,4,4,5,4,
- 5,4,1,5,6,1,3,1,0,1,
- 3,1,1,1,1,1,1,1,1,6,
- 6,5,1,7,6,1,0,6,5,6,
- 4,1,3,1,0,1,2,1,3,1,
- 3,1,1,1,1,3,9,2,2,3,
- 2,3,1,5,1,2,2,1,0,1,
- 1,1,3,1,2,1,1,2,3,1,
- 1,1,3,1,2,2,9,8,2,1,
- 3,1,3,1,0,1,0,2,1,1,
- 3,1,3,2,1,5,8,1,2,3,
- 1,5,4,3,1,3,1,1,5,4,
- 4,5,5,1,0,1,0,1,1,1,
- 2,4,2,2,1,5,1,1,1,1,
- 1,2,1,0,1,3,1,2,3,2,
- 1,2,2,1,0,1,3,3,6,1,
- 0,1,1,1,1,0,2,2,1,2,
- 2,1,0,1,3,4,3,1,1,5,
- 2,1,1,3,3,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,2,2,7,1,0,1,3,1,1,
- 2,4,2,4,7,9,5,1,1,3,
- 1,0,1,1,1,2,4,4,1,2,
- 5,5,3,3,1,4,3,1,0,1,
- 3,2,1,-64,0,0,0,-342,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-12,0,0,0,
- 0,0,0,0,0,0,-2,0,0,0,
- 0,-398,0,0,0,-126,-74,0,0,0,
- 0,0,0,0,0,0,0,0,-181,0,
- -80,0,0,0,0,0,0,0,0,0,
+ 1,1,2,2,7,1,0,1,3,1,
+ 1,2,4,2,4,7,9,5,1,1,
+ 3,1,0,1,1,1,2,4,4,1,
+ 2,5,5,3,3,1,4,3,1,0,
+ 1,3,2,1,-64,0,0,0,0,-55,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-148,0,0,0,
- 0,0,0,0,0,0,0,0,0,-23,
- 0,0,0,-5,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-2,0,
+ 0,0,0,-212,0,0,0,0,0,0,
+ 0,0,0,0,-5,0,0,-12,-74,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-357,0,-369,0,
- 0,0,0,-514,0,0,0,-267,0,0,
- 0,0,0,0,0,-6,0,0,0,0,
- 0,0,0,0,-118,0,0,0,0,0,
+ 0,-80,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-185,0,0,-119,-126,
+ 0,0,0,0,0,0,-334,-6,0,0,
+ 0,-21,0,0,0,0,-3,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-185,0,0,0,0,0,0,0,
- 0,0,-373,0,0,0,0,-330,0,0,
- 0,-291,0,0,0,0,0,-237,0,0,
- -135,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-344,-515,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-67,0,0,0,-7,0,-8,
+ 0,0,0,0,0,0,-118,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-309,0,0,0,0,-51,-7,
- 0,0,0,-18,0,0,0,0,0,0,
- 0,-85,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-131,0,0,0,0,0,
- 0,0,0,0,-226,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ -373,0,0,0,0,0,-9,0,0,-148,
+ 0,0,0,0,-10,0,0,0,0,0,
+ 0,0,0,-135,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-119,0,0,
- 0,0,0,-8,0,0,-180,0,0,0,
- -66,0,0,0,0,-189,0,0,0,0,
- -512,0,0,0,-67,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,-51,0,0,-11,0,0,0,0,
+ 0,0,-13,0,0,0,0,-357,0,0,
+ 0,0,0,0,-89,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-9,-10,
- 0,0,-95,0,0,0,-149,0,0,0,
+ 0,0,0,0,0,0,0,0,-140,0,
+ 0,0,-398,0,0,-59,-226,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-522,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-143,0,0,
- 0,0,0,0,0,-140,0,-334,0,0,
- 0,0,0,-344,0,0,-151,0,0,0,
- -141,0,0,0,0,0,0,0,0,-58,
- -468,-233,0,0,0,-4,0,0,0,0,
+ -131,0,0,0,0,0,0,0,0,-18,
+ 0,0,0,0,-249,0,0,0,0,-435,
+ 0,-14,0,-513,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-54,0,0,
+ 0,0,0,0,0,0,0,-58,0,0,
+ 0,0,0,-116,0,0,-22,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-292,0,0,0,-239,0,0,
- 0,-248,0,0,0,-75,0,0,0,0,
- 0,0,0,0,0,0,0,0,-280,0,
+ -15,-228,-291,0,0,0,-523,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-303,0,0,0,0,0,0,0,-3,
- 0,-11,0,0,0,0,0,-13,0,0,
- -315,0,0,0,0,0,0,0,0,0,
+ -52,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-151,
+ 0,0,0,0,-17,0,0,0,0,0,
+ 0,0,0,0,-30,-61,0,-4,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-14,0,0,0,0,0,-355,
- 0,0,-316,0,0,0,-54,0,0,0,
+ 0,-31,0,0,0,0,-403,0,0,0,
+ 0,-32,0,0,0,0,0,0,0,0,
+ 0,-280,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-137,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -15,-363,0,0,0,0,0,-313,-475,0,
- 0,0,-208,0,0,0,0,0,0,0,
+ -33,0,0,0,0,0,0,0,0,0,
+ -414,0,0,0,-315,0,0,0,0,-62,
0,0,0,0,0,0,0,0,0,0,
- 0,-420,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-34,0,
+ 0,0,0,-50,0,0,-232,0,0,0,
+ 0,0,0,0,-35,0,0,-75,0,0,
+ 0,0,-66,0,0,0,0,0,0,0,
+ -110,0,0,0,-36,-316,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -41,0,0,0,-133,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-17,0,0,0,0,0,0,
- 0,0,0,-59,0,0,0,0,0,0,
- 0,0,-43,0,0,0,-403,0,0,0,
+ 0,0,0,0,0,0,0,-37,0,-38,
+ 0,0,0,0,-133,0,0,0,-476,0,
+ 0,0,0,-111,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -433,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-55,0,-97,0,0,
- 0,-218,0,0,0,0,0,0,0,0,
+ -134,0,-39,0,0,0,0,0,-117,0,
+ 0,0,0,-41,0,0,0,0,-355,0,
0,0,0,0,0,0,0,0,0,0,
- -262,0,0,0,0,-343,0,0,0,0,
- 0,0,0,0,0,-472,-30,0,0,-98,
- 0,0,0,-399,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-267,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-275,0,0,0,0,0,0,0,
- -264,0,0,0,0,0,0,-283,-31,0,
- 0,-99,0,0,0,0,0,0,0,0,
+ 0,0,-40,0,0,0,-42,-43,0,0,
+ 0,0,-141,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-32,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-33,
- -34,0,0,-100,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,-145,0,0,0,0,-156,0,0,0,
+ -97,0,0,0,0,-150,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-35,0,0,0,0,0,
- 0,-284,-36,0,0,-101,0,0,0,-301,
+ 0,0,0,0,-187,0,0,0,0,0,
+ 0,0,0,0,-143,0,0,0,0,0,
+ 0,0,0,-98,0,0,0,0,-155,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-208,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-435,0,
- 0,0,0,-37,-38,0,0,-102,0,0,
- 0,-319,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-99,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-504,0,
- -460,0,0,0,0,0,-39,0,0,-103,
- 0,0,0,-40,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-311,0,0,0,0,0,0,0,
- -336,0,-42,0,0,0,0,-56,-57,0,
- 0,-104,0,0,0,0,0,0,0,0,
+ -188,0,0,0,0,0,0,0,-56,0,
+ -190,0,0,0,0,0,-283,0,0,-100,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-352,0,-495,0,0,0,0,-60,
- -68,0,0,-105,0,0,0,0,0,0,
+ 0,0,0,-192,0,0,0,0,0,0,
+ 0,-309,0,-195,0,0,0,0,0,-57,
+ 0,0,-101,0,0,0,0,-204,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-505,0,0,0,
- 0,0,0,0,-371,0,-69,0,0,0,
- 0,-70,-72,0,0,-106,0,0,0,-73,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-478,0,
- 0,0,0,0,0,0,-112,0,-113,0,
- 0,0,0,0,-114,0,0,-107,0,0,
- 0,-232,0,0,0,0,0,0,0,0,
+ 0,-202,0,0,-60,0,-303,0,0,0,
+ 0,0,0,0,0,-102,0,0,0,0,
+ -218,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-206,
+ 0,0,0,0,0,0,0,-68,0,-211,
+ 0,0,0,0,0,-69,0,0,-103,0,
+ 0,0,0,-213,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-249,0,0,-134,0,
- 0,0,0,0,0,-115,-122,0,0,-138,
0,0,0,0,0,0,0,0,0,0,
+ -70,0,0,0,0,0,0,0,-72,0,
+ 0,-104,0,0,0,0,-284,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-129,0,0,0,0,-61,0,0,
- -130,0,-142,0,0,0,0,-219,0,0,
+ 0,0,0,0,0,-230,0,0,0,0,
+ 0,0,0,-73,0,-231,0,0,0,0,
+ 0,-112,0,0,-105,0,0,0,0,-240,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-235,0,
+ 0,0,0,0,0,0,0,0,-363,0,
+ 0,0,0,0,0,0,0,-106,0,0,
+ 0,0,-247,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-295,0,0,0,0,
+ 0,-260,0,0,0,0,0,0,0,-264,
+ 0,-433,0,0,0,0,0,0,0,0,
+ -107,0,0,0,0,-254,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -154,0,0,0,-157,0,0,0,0,0,
- 0,0,-360,-507,0,0,0,0,0,0,
+ 0,0,0,0,-113,0,0,0,0,0,
+ 0,0,-114,0,-461,0,0,0,0,0,
+ 0,0,0,-138,0,0,0,0,-255,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-158,0,0,0,
- 0,0,0,0,-145,0,0,0,0,0,
- 0,-159,-160,0,0,-312,0,0,0,-161,
+ 0,0,0,0,0,0,0,-279,0,0,
+ 0,0,0,0,0,-115,0,-122,0,0,
+ 0,0,0,-129,-219,0,0,0,0,-256,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-420,0,
+ 0,0,0,-356,0,0,-130,0,-142,0,
+ 0,0,0,0,0,0,0,-248,-157,-152,
+ 0,0,0,0,-181,0,0,-508,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-62,0,0,-162,0,-163,0,
- 0,0,0,-326,0,0,0,-408,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-158,
+ 0,0,0,0,0,0,-419,0,0,0,
+ -312,0,0,0,0,-262,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-228,0,0,0,0,0,0,0,0,
- 0,-354,0,0,0,-164,0,0,0,0,
- 0,-152,0,0,0,-246,0,0,0,-340,
+ 0,0,0,0,-304,0,0,0,0,0,
+ 0,0,-159,0,-160,0,0,0,0,-326,
+ 0,0,0,0,-161,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-76,0,0,0,0,0,0,
+ 0,0,0,-162,0,0,0,0,-154,0,
+ 0,0,0,-163,0,0,0,0,0,0,
+ 0,0,0,-164,-340,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-110,0,0,
- -165,0,0,0,0,0,0,-361,0,0,
+ 0,0,0,0,0,0,0,0,-292,0,
+ 0,0,0,0,0,0,0,0,-165,0,
+ 0,0,0,-361,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-166,0,0,
+ 0,0,-372,0,0,-167,0,0,0,0,
+ 0,0,-330,0,0,0,0,-168,-257,0,
+ 0,0,0,-180,0,0,0,0,-362,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-261,0,0,-166,0,
- -234,0,0,0,0,0,0,-253,0,0,
- 0,-273,0,0,0,-345,0,0,0,-278,
- 0,0,0,-362,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-289,0,0,
+ 0,0,-298,0,0,0,0,-406,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-111,0,0,-455,0,0,0,0,0,
- 0,-406,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-167,
- 0,0,-364,0,-168,0,0,0,0,0,
- 0,-290,0,0,0,-169,-416,-170,-171,-389,
- 0,0,0,-380,0,0,-270,-109,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-354,0,0,0,
+ 0,-336,-299,0,0,0,0,-189,0,0,
+ 0,0,-109,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-496,0,
- -77,0,0,-117,0,-96,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-301,0,-234,0,0,-319,
+ 0,-96,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-172,0,0,0,0,0,0,
- -94,0,0,0,-271,0,0,0,0,0,
+ 0,0,0,0,0,-317,0,0,0,0,
+ 0,0,0,-327,0,-399,0,-94,0,0,
+ 0,0,-275,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-270,
+ 0,-95,0,0,0,0,-320,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-356,0,-53,0,0,0,0,0,-212,
- 0,0,-450,0,0,0,0,-238,0,0,
- -370,0,-391,0,0,0,-484,0,0,-173,
+ 0,0,0,0,0,-244,0,0,0,0,
+ 0,0,0,-53,0,0,0,0,0,0,
+ 0,0,0,-63,0,-343,0,0,0,0,
+ -169,0,-198,0,0,0,0,-369,0,0,
-91,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-147,
+ 0,-475,-311,-45,0,0,0,-170,0,-360,
+ -335,0,0,0,0,-349,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-484,0,0,0,0,0,
+ -20,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-171,-172,0,
+ -352,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ -173,0,-479,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-92,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-93,0,0,0,0,-174,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-85,0,0,0,0,-175,0,
0,0,0,0,0,0,0,0,0,0,
- -81,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-483,0,0,0,
- 0,0,-500,0,-150,-174,0,0,0,-22,
- 0,0,0,-175,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-176,0,0,0,
- 0,-177,0,0,0,0,0,-52,0,0,
- -499,0,-187,-178,-155,-179,0,0,0,0,
- 0,0,0,0,-92,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,-93,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- -86,0,0,0,-236,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-182,0,0,0,-87,0,0,
- 0,-183,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- -184,0,0,0,-88,0,0,0,-300,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-250,0,0,
- 0,-242,0,0,0,0,0,0,0,0,
- 0,0,0,-89,0,0,0,-417,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- -193,-108,-188,-194,-272,0,0,0,0,0,
- -198,0,0,0,-190,-199,0,-200,0,0,
- 0,0,-203,0,0,0,-156,-63,-192,0,
- 0,0,0,-381,-288,0,0,0,0,0,
- 0,0,0,0,-286,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-245,0,
- 0,0,0,0,-90,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-458,0,0,
- -214,0,0,-224,0,0,0,0,0,-204,
- -225,-195,0,0,0,0,0,0,0,-501,
- 0,-139,-202,0,-227,0,-124,0,0,0,
- -327,0,-519,0,0,-241,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-314,-206,
- -243,0,-473,0,0,0,0,0,0,0,
- 0,0,-121,0,-213,0,0,0,0,-444,
- 0,0,0,0,0,0,0,0,0,0,
- 0,-252,-240,-132,0,0,0,0,-388,0,
- -265,0,0,0,0,0,0,0,0,-247,
- 0,0,0,0,0,0,0,-372,0,0,
- 0,0,0,0,0,0,-266,-480,0,0,
- 0,0,0,0,-276,0,0,0,0,0,
- 0,-277,0,0,-281,0,0,0,0,-254,
- 0,0,0,0,0,0,-282,-293,-144,0,
- 0,0,0,0,-211,0,0,0,0,-296,
- 0,0,-297,0,0,-302,0,0,0,0,
- 0,0,0,-20,0,0,0,-230,-350,0,
- -274,0,-482,-307,0,0,0,0,-255,-256,
- 0,0,0,0,-308,0,-257,-289,0,-120,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-324,-287,0,0,0,0,0,
- 0,0,0,-1,-329,0,0,0,0,0,
- 0,0,0,0,0,0,0,-506,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-298,-337,0,-339,
- 0,0,0,0,0,0,0,0,0,-341,
- 0,0,0,0,0,-268,0,0,0,0,
- 0,0,0,0,0,0,0,-348,-367,0,
- 0,0,0,0,0,0,0,0,-231,-368,
- 0,0,0,0,0,-235,0,-260,-279,0,
- 0,0,0,0,0,-445,0,-305,0,0,
- 0,0,0,0,0,0,0,0,0,-374,
- -454,0,0,0,0,0,0,0,0,0,
- -49,0,0,0,0,-299,-123,-376,0,-469,
- -125,-387,-304,0,0,0,0,-306,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- -378,0,-384,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-320,0,0,0,
- 0,0,0,-477,-317,0,0,0,0,-116,
- 0,0,0,0,0,0,-385,0,0,-349,
- -404,0,-394,0,0,0,0,0,-397,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,-244,0,0,-405,0,0,-407,0,0,
- 0,0,0,0,0,0,-147,-347,0,0,
- 0,0,-409,-323,0,-410,0,0,-411,0,
- 0,0,0,0,0,0,-413,0,-331,-333,
- 0,-414,0,0,0,0,-127,-419,0,0,
- -421,0,0,0,0,0,0,0,0,-427,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,-82,0,0,0,-365,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-346,-426,-491,0,0,
- 0,-186,0,0,0,0,-474,0,-502,0,
- 0,0,0,0,0,0,-366,0,0,0,
- 0,-379,0,0,-428,0,-146,0,0,0,
- 0,-383,0,-386,0,0,0,0,0,0,
- 0,0,-430,0,0,0,0,0,0,0,
- -431,-83,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-176,0,0,
+ 0,-86,0,0,0,0,-177,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-178,0,0,0,-87,
+ 0,0,0,0,-179,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-418,-432,-434,-436,0,
- -84,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-182,0,0,0,-88,0,0,
+ 0,0,-183,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-437,-217,0,0,0,-322,
+ 0,-342,0,0,0,-242,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-90,0,
+ 0,0,0,-184,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-442,-422,-424,-447,-50,-464,0,-439,0,
- 0,-382,0,-456,-463,0,0,-396,0,0,
+ 0,0,-193,0,0,-345,0,0,0,0,
+ -286,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-323,0,0,0,-331,0,0,
+ 0,-333,0,-236,0,0,0,0,-313,0,
+ -23,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -510,0,-470,0,0,0,0,-393,-489,-503,
- -197,0,0,0,-508,0,0,0,0,0,
- 0,-425,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-423,0,-513,0,
- -395,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-274,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-245,0,0,-473,
+ 0,-456,-194,-388,0,0,-233,0,0,0,
+ 0,-507,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-239,0,0,0,0,-371,
+ 0,0,0,0,-370,0,0,-350,0,-81,
+ 0,0,0,0,-199,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-200,-203,0,0,0,
+ 0,0,0,0,-364,0,0,0,0,-346,
+ -149,0,0,0,0,-217,0,0,0,0,
+ -214,0,-305,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-365,
+ -16,0,0,0,0,0,0,0,0,0,
+ -427,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-77,-224,-366,
+ -459,-120,0,0,0,0,-408,0,0,0,
+ -225,0,0,0,0,0,0,0,0,0,
+ -379,-501,0,0,0,0,0,-271,0,0,
+ 0,0,0,0,0,-227,0,0,-347,0,
+ 0,0,0,0,0,0,0,0,-241,0,
+ 0,0,0,0,0,0,-237,0,0,-121,
+ 0,0,0,0,0,0,0,-137,0,0,
+ 0,0,-243,0,-422,-383,-474,0,0,0,
+ 0,0,0,-19,0,0,0,0,0,-288,
+ 0,0,0,0,0,0,0,0,-416,-252,
+ 0,-251,0,0,0,0,0,0,0,0,
+ 0,-265,0,0,0,0,-318,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-429,-415,0,0,0,
- 0,-492,0,-448,-452,0,0,0,0,0,
- 0,0,0,0,0,0,0,-229,0,-412,
- -457,0,0,0,0,0,0,0,0,0,
- 0,0,0,-205,0,0,-518,0,0,0,
- 0,0,0,0,0,0,0,0,-465,0,
- 0,0,0,0,0,-459,0,0,0,0,
- -438,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-153,0,0,
- 0,0,-467,0,0,0,0,0,0,0,
+ 0,0,0,0,-250,0,0,0,0,0,
+ 0,-481,0,0,0,0,0,0,0,0,
+ 0,0,-386,0,0,0,-266,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -451,-461,0,0,0,0,0,0,0,0,
+ -124,0,0,0,0,-276,0,-246,0,0,
+ 0,0,-277,-281,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-282,-418,0,
+ -293,0,0,0,0,0,-483,-296,-123,0,
+ 0,0,0,0,0,0,0,-125,0,-146,
+ -238,0,0,0,0,0,0,0,0,-496,
+ 0,0,0,0,0,-297,-302,-132,0,0,
+ 0,0,-307,0,-389,0,0,0,0,-417,
+ 0,0,-423,0,-308,-445,0,0,0,0,
+ 0,0,-49,0,0,0,0,-458,0,0,
+ 0,-324,0,0,0,0,0,0,-329,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-471,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -485,-486,-497,0,0,0,0,0,0,0,
- 0,0,0,0,0,-453,-321,0,0,0,
- 0,0,-487,-511,-516,-441,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-424,
+ 0,0,0,0,0,0,0,-82,0,0,
+ 0,0,-339,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -521,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-498,0,0,0,0,0,
+ 0,-83,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -479,0,0,0,0,0,0,0,0,0,
- -220,0,0,0,0,0,-16,-19,-45,0,
+ 0,0,0,0,0,-84,0,0,0,0,
+ -341,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-322,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,-391,0,0,0,0,-477,0,0,
0,0,0,0,0,0,0,0,0,0,
+ -425,-367,-1,-387,-139,0,-108,0,0,0,
+ -368,0,-374,-376,0,-253,0,0,0,0,
+ -273,0,0,0,0,-466,0,0,0,0,
+ 0,0,0,0,0,0,-378,-384,-385,0,
+ -394,0,0,0,-404,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ -446,0,-278,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-488,
+ 0,0,0,0,0,-290,0,0,0,0,
+ -397,0,-405,-407,0,0,0,0,0,0,
+ 0,-409,0,-429,0,0,0,0,0,-449,
+ 0,-410,0,0,0,-505,0,0,0,0,
+ 0,0,0,0,-24,0,0,0,0,-411,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-207,0,0,0,0,
+ 0,0,0,0,0,0,0,-25,0,0,
+ 0,0,-413,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ -421,-453,-460,0,-426,0,0,0,-26,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,-27,0,0,0,0,-428,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-28,0,0,0,0,-380,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-29,0,0,
+ 0,0,-430,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ -65,0,0,0,0,-431,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -490,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-78,0,0,0,0,-497,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-79,0,0,0,
+ 0,-451,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-128,
+ 0,0,0,0,-432,0,-434,-436,-437,-485,
+ 0,0,0,0,-455,-500,0,-328,0,0,
+ 0,0,-438,-443,0,0,-136,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -76,-494,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-215,0,
+ -415,-448,-457,-464,0,0,-209,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-515,0,0,0,0,0,0,0,
+ -382,0,0,-471,-470,0,-220,0,0,0,
+ 0,0,-395,0,0,0,-462,0,-490,-504,
+ 0,0,-468,-472,0,0,0,-127,0,-186,
+ 0,0,0,0,-509,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-478,0,
+ 0,0,0,0,0,0,0,0,-261,0,
+ -502,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-300,0,-492,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-412,0,0,0,0,
+ 0,-221,0,0,0,0,0,0,-506,0,
+ -486,-197,0,0,0,0,0,-487,0,0,
+ 0,0,0,0,0,-272,0,-520,-46,0,
+ 0,0,-258,0,0,0,-439,0,0,-503,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-498,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-520,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-511,0,
+ -488,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-447,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-452,0,0,-512,
+ 0,0,-268,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-381,-499,0,
+ 0,0,0,0,0,0,-517,-144,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-514,0,0,0,0,0,
+ 0,0,0,-454,-519,0,0,-522,0,0,
+ 0,0,0,0,0,0,-314,0,-295,0,
+ 0,0,0,0,0,0,0,0,0,-287,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-523,0,0,0,0,0,
+ 0,0,-205,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-480,
+ 0,0,0,0,0,0,0,0,-442,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-216,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-489,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-207,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-24,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-259,0,0,-491,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-25,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-26,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-27,
0,0,0,0,0,0,0,0,0,0,
+ -495,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-28,0,0,0,0,0,0,0,0,
+ -440,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-29,0,0,0,0,0,0,
+ 0,-516,0,-348,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-65,0,0,0,0,
+ 0,-441,-393,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-78,0,0,
+ 0,0,-521,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-79,
+ 0,0,-465,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-524,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-128,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-258,0,0,0,0,0,-136,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-509,-517,0,0,0,0,-209,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,-358,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-251,0,0,0,0,0,
- 0,0,0,0,0,0,0,-446,0,0,
+ 0,0,0,0,-306,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-467,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,-337,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-359,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-21,0,0,0,
+ 0,-469,0,0,0,0,0,-222,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-259,
- -325,0,0,0,0,0,0,0,0,0,
- 0,0,-318,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-358,
+ -229,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-476,0,0,0,
- 0,0,0,0,0,0,0,0,-466,0,
0,0,0,0,0,0,0,0,0,0,
- -390,0,0,0,0,-335,0,0,0,0,
+ 0,0,0,0,-396,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-153,0,0,0,0,0,-191,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-269,0,0,
+ 0,0,0,0,-215,0,0,0,0,0,
+ -196,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-221,0,0,0,0,0,
- 0,0,-440,0,0,0,0,0,0,0,
- -359,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-222,0,0,0,0,0,
- 0,0,0,-191,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-269,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-196,0,0,0,-201,0,
0,0,0,0,0,0,0,0,0,0,
+ -325,0,0,0,0,0,0,-285,0,0,
+ 0,0,-201,0,0,0,-390,0,0,-223,
0,0,0,0,0,0,0,0,0,0,
- 0,-285,0,0,0,0,0,-310,0,0,
+ 0,0,-310,0,0,0,0,0,0,0,
+ -332,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-332,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-338,
+ 0,0,0,0,0,0,0,-375,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-338,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-375,0,0,0,0,
- 0,-377,0,0,0,0,0,0,0,0,
+ 0,0,-377,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-462,0,0,0,0,0,-481,0,
+ 0,0,0,0,0,0,-463,0,0,0,
+ 0,0,0,0,0,-482,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-321,
+ 0,0,-353,0,0,0,0,0,0,-216,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-263,
- 0,0,0,0,0,0,0,0,-353,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-328,0,0,0,
- 0,0,0,0,0,-351,0,0,0,0,
- 0,0,0,0,0,-44,0,-71,-392,0,
- 0,0,0,0,-400,0,-443,0,0,0,
- 0,0,0,-46,0,0,0,0,0,0,
- 0,0,0,0,0,0,-47,0,-48,0,
- 0,0,0,0,0,0,0,-210,0,0,
+ 0,0,0,0,-263,0,0,0,0,0,
+ 0,0,-351,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-44,
+ -71,0,-400,0,0,0,0,0,-392,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-401,-402,0,0,0,
- 0,-449,0,0,0,0,0,0,-223,0,
- -294,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-493,0,0,0,
+ -444,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-47,0,0,0,0,0,0,
+ 0,-48,-210,-401,0,0,0,0,0,0,
+ 0,0,0,-402,0,0,0,0,0,0,
+ 0,0,0,-450,0,0,0,0,0,0,
+ 0,-493,0,0,-510,0,0,0,-518,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-294,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-494,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0
+ 0,0,0,0,0,0,0
};
};
public final static short baseCheck[] = BaseCheck.baseCheck;
@@ -547,538 +557,553 @@ public class CPPExpressionStatementParserprs implements lpg.lpgjavaruntime.Parse
public interface BaseAction {
public final static char baseAction[] = {
- 172,4,193,194,195,136,80,33,65,39,
- 196,196,197,197,198,198,15,15,15,15,
- 15,15,15,15,16,16,16,14,10,10,
- 8,8,8,8,8,1,66,66,5,5,
- 11,11,11,11,47,47,137,137,138,62,
- 62,45,45,17,17,17,17,17,17,17,
- 17,17,17,17,17,17,17,17,17,17,
- 17,17,17,139,139,139,18,18,18,18,
- 18,18,18,18,18,18,18,18,18,19,
- 19,176,173,173,174,174,177,141,141,178,
- 178,175,175,142,140,140,20,20,21,21,
- 22,22,22,24,24,24,24,25,25,25,
- 26,26,26,27,27,27,27,27,29,29,
- 29,30,30,32,32,34,34,35,35,36,
- 36,37,37,41,41,40,40,40,40,40,
- 40,40,40,40,40,40,40,40,38,38,
- 28,143,143,103,103,106,106,98,199,199,
- 71,71,71,71,71,71,71,71,71,72,
- 72,72,73,73,57,57,179,179,74,74,
- 74,117,117,75,75,75,75,76,76,76,
- 76,76,77,81,81,81,81,81,81,81,
- 51,51,51,51,51,108,108,109,109,50,
- 23,23,23,23,23,46,46,93,93,93,
- 93,93,150,150,145,145,145,145,145,146,
+ 173,5,137,81,81,34,34,66,66,40,
+ 40,194,194,195,195,196,196,1,1,16,
+ 16,16,16,16,16,16,16,17,17,17,
+ 15,11,11,9,9,9,9,9,2,67,
+ 67,6,6,12,12,12,12,48,48,138,
+ 138,139,63,63,46,46,18,18,18,18,
+ 18,18,18,18,18,18,18,18,18,18,
+ 18,18,18,18,18,18,140,140,140,19,
+ 19,19,19,19,19,19,19,19,19,19,
+ 19,19,20,20,177,174,174,175,175,178,
+ 142,142,179,179,176,176,143,141,141,21,
+ 21,22,22,23,23,23,25,25,25,25,
+ 26,26,26,27,27,27,28,28,28,28,
+ 28,30,30,30,31,31,33,33,35,35,
+ 36,36,37,37,38,38,42,42,41,41,
+ 41,41,41,41,41,41,41,41,41,41,
+ 41,39,39,29,144,144,104,104,107,107,
+ 99,197,197,72,72,72,72,72,72,72,
+ 72,72,73,73,73,74,74,58,58,180,
+ 180,75,75,75,118,118,76,76,76,76,
+ 77,77,77,77,77,78,82,82,82,82,
+ 82,82,82,52,52,52,52,52,109,109,
+ 110,110,51,24,24,24,24,24,47,47,
+ 94,94,94,94,94,151,151,146,146,146,
146,146,147,147,147,148,148,148,149,149,
- 149,94,94,94,94,94,95,95,95,87,
- 12,13,13,13,13,13,13,13,13,13,
- 13,13,82,82,82,121,121,121,121,121,
- 119,119,119,88,120,120,152,152,151,151,
- 123,123,124,43,43,42,86,86,89,89,
- 91,92,90,44,53,49,153,153,54,52,
- 85,85,154,154,144,144,125,125,79,79,
- 155,155,63,63,63,59,59,58,64,64,
- 69,69,56,56,56,96,96,105,104,104,
- 61,61,60,60,55,55,48,107,107,107,
- 99,99,99,100,101,101,101,102,102,110,
- 110,110,112,112,111,111,200,200,97,97,
- 181,181,181,181,181,127,67,67,157,180,
- 180,128,128,128,128,182,182,31,31,118,
- 129,129,129,129,201,201,113,113,122,122,
- 122,159,160,160,160,160,160,160,160,160,
- 160,185,185,183,183,184,184,161,161,161,
- 161,162,186,115,114,114,187,187,163,163,
- 131,131,130,130,130,202,202,9,188,188,
- 189,164,156,156,165,165,166,167,167,6,
- 6,7,169,169,169,169,169,169,169,169,
- 169,169,169,169,169,169,169,169,169,169,
- 169,169,169,169,169,169,169,169,169,169,
- 169,169,169,169,169,169,169,169,169,169,
- 169,169,169,169,68,70,70,170,170,132,
- 132,133,133,133,133,133,133,2,3,171,
- 171,168,168,134,134,134,83,84,78,158,
- 158,116,116,190,190,190,135,135,126,126,
- 191,191,172,172,1410,1720,1713,1201,3529,2899,
- 31,1274,28,32,27,29,1833,260,26,24,
- 53,1377,108,77,78,110,1419,56,1460,1445,
- 1495,1461,3091,1544,1503,272,1587,1609,1545,1594,
- 1623,145,2889,3357,161,146,1450,2125,1154,33,
- 1201,4595,3588,31,1274,28,32,60,29,1774,
- 2751,3309,1154,33,1201,229,2924,31,1274,28,
- 32,27,29,1118,260,26,24,53,1377,108,
- 77,78,110,1419,3323,1885,275,69,1154,33,
- 1201,274,273,31,1274,40,32,232,227,228,
- 3309,1720,1713,1201,1943,2924,31,1274,28,32,
- 27,29,1118,260,26,24,53,1377,108,77,
- 78,85,239,242,245,248,2767,2109,448,2606,
- 396,34,4706,1797,499,1154,33,1201,63,4002,
- 31,1274,28,32,27,29,837,676,506,2950,
- 2813,3097,3101,3227,4262,2272,1154,33,1201,2324,
- 2924,31,1274,28,32,2562,29,1118,260,26,
- 24,53,1377,108,77,78,110,1419,346,1460,
- 1445,1495,1461,1605,1544,1503,64,1587,3282,1545,
- 1594,1623,145,3532,418,513,146,3102,69,1154,
- 33,1201,2990,2678,31,1274,1663,32,1774,282,
- 514,2272,1154,33,1201,2324,2924,31,1274,28,
- 32,2562,29,1118,260,26,24,53,1377,108,
- 77,78,110,1419,346,1460,1445,1495,1461,336,
- 1544,1503,3123,1587,1553,1545,1594,1623,145,67,
- 587,513,146,685,585,1670,43,1201,185,2678,
- 42,1274,3309,1154,33,1201,514,2924,31,1274,
- 28,32,27,29,1118,260,26,24,53,1377,
- 108,77,78,110,1419,56,1460,1445,1967,509,
- 3441,1102,441,3080,3098,2651,1154,33,1201,2324,
- 2924,31,1274,28,32,2562,29,1118,260,26,
- 24,53,1377,108,77,78,110,1419,346,1460,
- 1445,1495,1461,2554,1544,1503,2581,1587,1473,1545,
- 1594,1623,145,3282,843,513,146,1774,508,2744,
- 1201,2034,90,2678,104,509,1774,3049,2928,1201,
- 514,2693,1154,33,1201,2876,2924,31,1274,28,
- 32,27,29,1118,260,26,24,53,1377,108,
- 77,78,110,1419,994,1460,1445,1495,1461,2668,
- 1544,1503,2581,1587,335,1545,1594,1623,145,1689,
- 2823,381,146,3309,1154,33,1201,2060,2924,31,
- 1274,28,32,27,29,1118,260,26,24,53,
- 1377,108,77,78,110,1419,384,1460,1445,1495,
- 1461,617,1544,2284,713,2765,1154,33,1201,510,
- 2924,31,1274,28,32,27,29,1118,260,26,
- 24,53,1377,108,77,78,110,1419,56,1460,
- 1445,1495,1461,3796,1544,1503,1093,1587,3493,1545,
- 1594,1623,145,3879,2225,381,146,413,1154,33,
- 1201,2886,4002,31,1274,28,32,62,29,385,
- 67,1901,3077,280,741,1016,1812,1154,33,1201,
- 382,2924,31,1274,28,32,27,29,1118,260,
- 26,24,53,1377,108,77,78,110,1419,158,
- 1460,1445,1495,1461,3307,1544,1503,92,1587,165,
- 1545,1594,1623,145,2990,355,161,146,1774,508,
- 277,1201,1205,2773,44,2741,2327,1154,33,1201,
- 356,3588,31,1274,28,32,59,29,2112,1812,
- 1154,33,1201,386,2924,31,1274,28,32,27,
- 29,1118,260,26,24,53,1377,108,77,78,
- 110,1419,56,1460,1445,1495,1461,4649,1544,1503,
- 847,1587,2937,1545,1594,1623,145,3278,761,375,
- 146,1812,1154,33,1201,1202,2924,31,1274,28,
- 32,27,29,1118,260,26,24,53,1377,108,
- 77,78,110,1419,2322,1460,1445,1495,1461,532,
- 1544,1503,442,1587,3087,1545,1594,1623,145,676,
- 3493,375,146,1812,1154,33,1201,918,2924,31,
- 1274,28,32,27,29,1118,260,26,24,53,
- 1377,108,77,78,110,1419,1473,1460,1445,1495,
- 1461,3282,1544,1503,89,1587,104,1545,1594,1623,
- 145,3088,56,375,146,63,374,4712,2561,3029,
- 1154,33,1201,2879,2924,31,1274,28,32,27,
- 29,1118,260,26,24,53,1377,108,77,78,
- 110,1419,3531,1460,1445,1495,1461,1054,1544,1503,
- 2898,1587,335,1545,1594,1623,145,493,373,381,
- 146,2609,1154,33,1201,918,2924,31,1274,28,
- 32,27,29,1118,260,26,24,53,1377,108,
- 77,78,110,1419,3090,1460,1445,1495,1461,617,
- 1544,1503,4599,1587,2917,1545,1594,1623,145,3514,
- 371,144,146,1812,1154,33,1201,3139,2924,31,
- 1274,28,32,27,29,1118,260,26,24,53,
- 1377,108,77,78,110,1419,2858,1460,1445,1495,
- 1461,56,1544,1503,442,1587,4733,1545,1594,1623,
- 145,287,2875,162,146,455,1519,379,1812,1154,
- 33,1201,2843,2924,31,1274,28,32,27,29,
- 1118,260,26,24,53,1377,108,77,78,110,
- 1419,3413,1460,1445,1495,1461,2837,1544,1503,492,
- 1587,4628,1545,1594,1623,145,3139,2822,157,146,
- 1812,1154,33,1201,2946,2924,31,1274,28,32,
- 27,29,1118,260,26,24,53,1377,108,77,
- 78,110,1419,3413,1460,1445,1495,1461,617,1544,
- 1503,3399,1587,519,1545,1594,1623,145,1403,2033,
- 156,146,1812,1154,33,1201,389,2924,31,1274,
- 28,32,27,29,1118,260,26,24,53,1377,
- 108,77,78,110,1419,916,1460,1445,1495,1461,
- 404,1544,1503,451,1587,1539,1545,1594,1623,145,
- 583,2872,155,146,1812,1154,33,1201,284,2924,
- 31,1274,28,32,27,29,1118,260,26,24,
- 53,1377,108,77,78,110,1419,328,1460,1445,
- 1495,1461,519,1544,1503,2733,1587,774,1545,1594,
- 1623,145,3071,142,154,146,1812,1154,33,1201,
- 2876,2924,31,1274,28,32,27,29,1118,260,
- 26,24,53,1377,108,77,78,110,1419,427,
- 1460,1445,1495,1461,1665,1544,1503,1102,1587,3147,
- 1545,1594,1623,145,849,317,153,146,1812,1154,
- 33,1201,3083,2924,31,1274,28,32,27,29,
- 1118,260,26,24,53,1377,108,77,78,110,
- 1419,329,1460,1445,1495,1461,728,1544,1503,3531,
- 1587,56,1545,1594,1623,145,4739,228,152,146,
- 1812,1154,33,1201,572,2924,31,1274,28,32,
- 27,29,1118,260,26,24,53,1377,108,77,
- 78,110,1419,3413,1460,1445,1495,1461,617,1544,
- 1503,3411,1587,1518,1545,1594,1623,145,1034,1081,
- 151,146,1812,1154,33,1201,522,2924,31,1274,
- 28,32,27,29,1118,260,26,24,53,1377,
- 108,77,78,110,1419,520,1460,1445,1495,1461,
- 402,1544,1503,847,1587,3445,1545,1594,1623,145,
- 3091,400,150,146,1812,1154,33,1201,285,2924,
- 31,1274,28,32,27,29,1118,260,26,24,
- 53,1377,108,77,78,110,1419,3531,1460,1445,
- 1495,1461,406,1544,1503,847,1587,1546,1545,1594,
- 1623,145,486,1472,149,146,1812,1154,33,1201,
- 1545,2924,31,1274,28,32,27,29,1118,260,
- 26,24,53,1377,108,77,78,110,1419,3413,
- 1460,1445,1495,1461,305,1544,1503,2899,1587,3010,
- 1545,1594,1623,145,521,3075,148,146,1812,1154,
- 33,1201,3417,2924,31,1274,28,32,27,29,
- 1118,260,26,24,53,1377,108,77,78,110,
- 1419,520,1460,1445,1495,1461,1473,1544,1503,918,
- 1587,3282,1545,1594,1623,145,3085,3392,147,146,
- 3156,1154,33,1201,302,2924,31,1274,28,32,
- 27,29,1118,260,26,24,53,1377,108,77,
- 78,110,1419,861,1460,1445,1495,1461,1519,1544,
- 1503,3393,1587,2332,1545,1594,2673,167,1812,1154,
- 33,1201,1866,2924,31,1274,28,32,27,29,
- 1118,260,26,24,53,1377,108,77,78,110,
- 1419,4289,1460,1445,1495,1461,1799,1544,1503,454,
- 1587,3282,1545,1594,1623,145,390,424,142,146,
- 331,413,1154,33,1201,669,4002,31,1274,28,
- 32,61,29,2944,3195,1154,33,1201,2763,2924,
- 31,1274,28,32,27,29,1118,260,26,24,
- 53,1377,108,77,78,110,1419,755,1460,1445,
- 1495,1461,1866,1544,1503,918,1587,96,1545,1594,
- 1623,145,2738,2747,192,146,3309,1154,33,1201,
- 2883,2924,31,1274,28,32,27,29,1118,260,
- 26,24,53,1377,108,77,78,110,1419,617,
- 1460,1445,1495,1461,1519,1544,1503,2763,1587,2864,
- 1545,1594,2673,167,3309,1154,33,1201,847,2924,
- 31,1274,28,32,27,29,1118,260,26,24,
- 53,1377,108,77,78,110,1419,25,1460,1445,
- 1495,1461,830,1544,1503,4319,1587,98,1545,1594,
- 2673,167,69,1154,33,1201,2869,182,31,1274,
- 1705,32,1774,1831,388,1201,2516,508,277,1201,
- 3309,1154,33,1201,291,2924,31,1274,28,32,
- 27,29,1118,260,26,24,53,1377,108,77,
- 78,110,1419,34,1460,1445,1495,1461,1519,1544,
- 1503,2887,1587,2096,1545,1594,2673,167,3309,1154,
- 33,1201,2929,2924,31,1274,28,32,27,29,
- 1118,260,26,24,53,1377,108,77,78,110,
- 1419,72,1460,1445,1495,1461,830,1544,1503,1726,
- 1587,3417,1545,1594,2673,167,332,338,2516,508,
- 2913,1201,1774,508,281,1201,1774,1831,388,1201,
- 1774,508,279,1201,3309,1154,33,1201,420,2924,
- 31,1274,28,32,27,29,1118,260,26,24,
- 53,1377,108,77,78,110,1419,428,1460,1445,
- 1495,1461,1519,1544,1503,675,1587,2096,1545,1594,
- 2673,167,3348,1154,33,1201,419,2924,31,1274,
- 28,32,27,29,1118,260,26,24,53,1377,
- 108,77,78,110,1419,71,1460,1445,1495,1461,
- 2123,1544,1503,3389,1587,1391,1545,1594,2673,167,
- 337,338,1774,508,2964,1201,2875,847,2877,314,
- 1774,1831,388,1201,3389,391,424,3417,3309,1154,
- 33,1201,422,2924,31,1274,28,32,27,29,
- 1118,260,26,24,53,1377,108,77,78,110,
- 1419,447,1460,1445,1495,1461,198,1544,1503,3413,
- 1587,2182,1545,2424,1519,1016,3309,1154,33,1201,
- 3385,2924,31,1274,28,32,27,29,1118,260,
- 26,24,53,1377,108,77,78,110,1419,158,
- 1460,1445,1495,1461,658,1544,1503,56,1587,2677,
- 2350,3309,1154,33,1201,3417,2924,31,1274,28,
- 32,27,29,1118,260,26,24,53,1377,108,
- 77,78,110,1419,310,1460,1445,1495,1461,358,
- 1544,1503,3531,2209,3387,1831,388,1201,528,2834,
- 1722,393,424,3389,1786,317,234,260,3077,278,
- 357,2606,396,1774,1831,388,1201,2606,396,528,
- 2329,3309,1154,33,1201,272,2924,31,1274,28,
- 32,27,29,1118,260,26,24,53,1377,108,
- 77,78,110,1419,429,1460,1445,1495,1461,378,
- 2195,3309,1154,33,1201,229,2924,31,1274,28,
- 32,27,29,1118,260,26,24,53,1377,108,
- 77,78,110,1419,2120,1917,275,920,295,392,
- 424,274,273,920,295,1519,3000,232,227,228,
- 3309,1154,33,1201,1619,2924,31,1274,28,32,
- 27,29,1118,260,26,24,53,1377,108,77,
- 78,86,239,242,245,248,2767,2748,88,293,
- 3289,294,2752,1797,3157,293,3469,294,1532,327,
- 3440,3413,858,67,2760,1519,2970,2002,528,2950,
- 2813,3097,3101,3227,4262,3309,1154,33,1201,376,
- 2924,31,1274,28,32,27,29,1118,260,26,
- 24,53,1377,108,77,78,110,1419,55,1460,
- 1445,1495,2206,3309,1154,33,1201,95,2924,31,
- 1274,28,32,27,29,1118,260,26,24,53,
- 1377,108,77,78,110,1419,301,1460,1445,1495,
- 2208,3309,1154,33,1201,2471,2924,31,1274,28,
- 32,27,29,1118,260,26,24,53,1377,108,
- 77,78,110,1419,3412,1460,1445,1969,3309,1154,
- 33,1201,2269,2924,31,1274,28,32,27,29,
- 1118,260,26,24,53,1377,108,77,78,110,
- 1419,1468,1460,1445,2016,3309,1154,33,1201,830,
- 2924,31,1274,28,32,27,29,1118,260,26,
- 24,53,1377,108,77,78,110,1419,3081,1460,
- 1445,2061,2044,1154,33,1201,2965,4622,31,1274,
- 28,32,342,29,3309,1154,33,1201,847,2924,
- 31,1274,28,32,27,29,1118,260,26,24,
- 53,1377,108,77,78,110,1419,438,1460,2099,
- 2096,2755,2227,67,3396,2837,1016,3528,286,2875,
- 4628,2316,1831,388,1201,67,3398,197,3414,1762,
- 323,1502,325,2224,3879,318,1418,918,2759,1217,
- 158,354,1186,2101,2932,3142,1403,2882,2324,2324,
- 2416,2897,272,334,338,1684,1154,33,1201,3667,
- 4622,31,1274,28,32,342,29,2612,2612,3079,
- 278,347,1001,986,352,3309,1154,33,1201,2885,
- 2924,31,1274,28,32,27,29,1118,260,26,
- 24,53,1377,108,77,78,110,1419,3511,1460,
- 2190,1279,2324,276,2978,46,2741,354,274,273,
- 1519,2982,67,323,1502,325,2535,54,318,1418,
- 3413,225,2749,918,354,2111,3544,2865,2651,2679,
- 1201,918,4574,3072,3137,2202,2981,347,1001,986,
- 352,500,363,353,3418,345,774,213,210,203,
- 211,212,214,368,347,1001,986,352,51,830,
- 67,2885,2750,3519,3182,204,205,2324,2867,293,
- 52,294,1671,833,876,1519,498,499,426,215,
- 847,206,207,208,209,300,225,296,297,298,
- 299,354,1341,1519,1700,1712,388,1201,383,2959,
- 448,3458,2945,330,4706,589,3721,1739,91,3418,
- 1519,99,213,210,203,211,212,214,3531,201,
- 2096,347,1001,986,352,51,3059,3426,3545,2750,
- 204,205,2324,2867,229,3486,293,52,294,1671,
- 2665,2666,3488,732,215,3489,206,207,208,209,
- 1519,225,296,297,298,299,2661,3490,1454,1769,
- 1712,388,1201,3276,338,67,241,227,228,1062,
- 231,3721,2249,2998,3418,378,3475,213,210,203,
- 211,212,214,70,1732,1712,388,1201,67,918,
- 51,2471,2217,3620,3150,204,205,2324,2867,1519,
- 1519,293,52,294,1671,3527,1213,1519,1519,215,
- 1475,206,207,208,209,51,225,296,297,298,
- 299,2661,236,260,3236,1473,293,52,294,1671,
- 3282,885,69,68,2137,493,3721,2461,1016,3418,
- 67,3204,213,210,203,211,212,214,2319,1154,
- 33,1201,2965,4622,31,1274,28,32,342,29,
- 204,205,158,2867,445,3080,3098,1519,1473,100,
- 2918,229,1110,3282,215,3314,206,207,208,209,
- 3507,335,296,297,298,299,1508,1154,33,1201,
- 3068,4622,31,1274,28,32,342,29,830,2925,
- 58,3721,2760,237,227,228,323,1502,325,3416,
- 3477,318,1418,2295,286,2875,67,354,67,67,
- 2931,3390,2589,2799,335,403,847,523,1691,3010,
- 33,1201,3008,4685,31,1274,28,32,342,29,
- 3568,847,1613,2882,320,2934,325,347,1001,986,
- 352,920,1712,388,1201,524,1519,846,3237,2096,
- 847,1548,87,3431,4551,199,534,988,155,1154,
- 33,1201,3008,4622,31,1274,28,32,342,29,
- 219,3240,51,3530,335,225,323,1502,325,57,
- 158,318,1418,293,52,294,1671,1519,3150,3512,
- 1978,183,3297,338,847,67,567,538,3356,3198,
- 1748,213,210,202,211,212,214,3536,229,172,
- 1519,1,229,3241,4486,534,323,1502,325,3243,
- 326,318,1418,186,170,171,173,174,175,176,
- 177,3103,2746,309,225,3567,2324,3137,3569,158,
- 244,227,228,103,247,227,228,67,2746,1978,
- 183,1016,2324,3244,67,2612,3247,3356,3038,3248,
- 213,210,202,211,212,214,867,3251,172,67,
- 67,2612,2734,4769,1160,2815,184,2806,2744,415,
- 3020,3564,187,170,171,173,174,175,176,177,
- 1499,1154,33,1201,3008,4685,31,1274,28,32,
- 342,29,1621,3309,1154,33,1201,1519,2924,31,
- 1274,28,32,27,29,1118,260,26,24,53,
- 1377,108,77,78,110,1932,67,3572,847,362,
- 2193,3161,920,1712,388,1201,589,67,229,847,
- 3302,1016,2948,2776,2801,362,335,67,323,1502,
- 325,2214,67,318,1418,3391,3438,2740,3257,2776,
- 2801,2324,67,51,67,3653,4815,4313,1297,2155,
- 250,227,228,3613,293,52,294,1671,308,2765,
- 346,3571,3309,1154,33,1201,4486,2924,31,1274,
- 28,32,27,29,1118,260,26,24,53,1377,
- 108,77,78,110,1933,2330,67,3614,3069,3255,
- 4358,3309,1154,33,1201,312,2924,31,1274,28,
- 32,27,29,1118,260,26,24,53,1377,108,
- 77,78,110,1940,3081,3573,2314,1831,388,1201,
- 2052,1154,33,1201,3414,4685,31,1274,28,32,
- 342,29,3570,1519,67,3596,874,3589,2333,1224,
- 1016,2324,3628,534,3618,1795,2324,272,241,1154,
- 33,1201,3240,4622,31,1274,28,32,342,29,
- 346,847,346,3256,163,225,446,158,830,3664,
- 3666,920,1712,388,1201,3617,336,191,323,1502,
- 325,5311,3581,319,1418,3673,3611,4469,3418,354,
- 5311,213,210,203,211,212,214,1699,2832,847,
- 4314,3418,51,274,273,2324,320,2934,325,204,
- 205,2905,2867,293,52,294,1671,5311,2338,349,
- 1001,986,352,494,225,206,207,208,209,2096,
- 526,296,297,298,299,5311,67,1856,304,2254,
- 2738,1016,1946,5311,67,67,1016,3418,1376,2803,
- 213,210,203,211,212,214,3559,5311,1660,5311,
- 173,1519,2324,4760,534,158,5311,5311,204,205,
- 158,2867,3404,338,2736,3066,200,847,2324,3282,
- 165,225,516,225,206,207,208,209,158,1519,
- 296,297,298,299,3144,5311,67,2612,1978,183,
- 2868,259,5311,3103,3026,534,3356,407,5311,213,
- 210,202,211,212,214,5311,194,172,2134,1712,
- 388,1201,3780,1519,225,1411,408,3652,2867,158,
- 335,3402,170,171,173,174,175,176,177,1978,
- 183,3646,67,5311,5311,2324,2933,3356,3431,51,
- 213,210,202,211,212,214,3821,5311,172,5311,
- 293,52,294,1671,225,1342,1519,5311,5311,5311,
- 4599,362,179,170,171,173,174,175,176,177,
- 3386,1519,1519,1519,2833,2776,2801,3418,2841,5311,
- 213,210,203,211,212,214,3654,2736,5311,3862,
- 2324,2324,3282,3597,1519,1519,976,2988,204,205,
- 534,2867,5311,5311,1579,1697,380,409,411,225,
- 2612,1519,311,5311,206,207,208,209,5311,225,
- 296,297,298,299,158,67,5311,3547,3944,881,
- 5311,1361,3418,4518,165,213,210,203,211,212,
- 214,3537,3356,335,3985,2324,1011,5311,5311,5311,
- 5311,2339,5311,204,205,1016,2867,2805,1038,67,
- 5311,2324,534,2324,225,5311,5311,517,5311,206,
- 207,208,209,5311,5311,296,297,298,299,158,
- 346,346,346,3390,362,5311,158,3418,5311,2890,
- 213,210,203,211,212,214,1964,2833,2776,2801,
- 345,5311,3100,5311,534,2458,2678,2678,204,205,
- 5311,2867,5311,1828,1747,5311,920,1712,388,1201,
- 5311,5311,216,225,206,207,208,209,158,5311,
- 296,297,298,299,5311,5311,5311,5311,1978,183,
- 5311,431,5311,5311,5311,534,3356,51,5311,213,
- 210,202,211,212,214,5311,5311,172,293,52,
- 294,1671,5311,2709,225,5311,5311,5311,5311,158,
- 5311,190,170,171,173,174,175,176,177,1978,
- 183,874,517,5311,5311,1016,534,3356,5311,5311,
- 213,210,202,211,212,214,5311,5311,172,920,
- 1712,388,1201,5311,5311,225,5311,5311,5311,163,
- 158,5311,3445,170,171,173,174,175,176,177,
- 1978,183,5311,603,5311,5311,451,534,3356,5311,
- 51,213,210,202,211,212,214,5311,5311,172,
- 5311,293,52,294,48,437,225,5311,5311,5311,
- 5311,158,5311,193,170,171,173,174,175,176,
- 177,1978,183,5311,689,5311,5311,5311,534,3356,
- 5311,5311,213,210,202,211,212,214,5311,5311,
- 172,5311,5311,5311,2465,5311,5311,225,5311,5311,
- 5311,5311,158,5311,189,170,171,173,174,175,
- 176,177,1978,183,5311,775,5311,5311,5311,534,
- 3356,5311,5311,213,210,202,211,212,214,5311,
- 5311,172,920,1712,388,1201,5311,5311,225,5311,
- 5311,5311,5311,158,5311,196,170,171,173,174,
- 175,176,177,1978,183,5311,5311,5311,5311,5311,
- 5311,3356,5311,51,213,210,202,211,212,214,
- 5311,5311,172,5311,293,52,294,1671,5311,885,
- 5311,5311,5311,5311,5311,5311,195,170,171,173,
- 174,175,176,177,3309,1154,33,1201,5311,2924,
- 31,1274,28,32,27,29,1118,260,26,24,
- 53,1377,108,77,78,84,3309,1154,33,1201,
- 5311,2924,31,1274,28,32,27,29,1118,260,
- 26,24,53,1377,108,77,78,83,3309,1154,
- 33,1201,5311,2924,31,1274,28,32,27,29,
- 1118,260,26,24,53,1377,108,77,78,82,
- 3309,1154,33,1201,5311,2924,31,1274,28,32,
- 27,29,1118,260,26,24,53,1377,108,77,
- 78,81,3309,1154,33,1201,5311,2924,31,1274,
- 28,32,27,29,1118,260,26,24,53,1377,
- 108,77,78,80,3309,1154,33,1201,5311,2924,
- 31,1274,28,32,27,29,1118,260,26,24,
- 53,1377,108,77,78,79,3093,1154,33,1201,
- 5311,2924,31,1274,28,32,27,29,1118,260,
- 26,24,53,1377,108,77,78,106,3309,1154,
- 33,1201,5311,2924,31,1274,28,32,27,29,
- 1118,260,26,24,53,1377,108,77,78,112,
- 3309,1154,33,1201,5311,2924,31,1274,28,32,
- 27,29,1118,260,26,24,53,1377,108,77,
- 78,111,3449,1831,388,1201,5311,2834,5311,5311,
- 5311,5311,5311,5311,235,260,5311,5311,5311,5311,
- 5311,5311,5311,874,5311,5311,5311,1016,5311,3309,
- 1154,33,1201,272,2924,31,1274,28,32,27,
- 29,1118,260,26,24,53,1377,108,77,78,
- 109,163,5311,1991,2064,5311,5311,1016,1016,3309,
- 1154,33,1201,229,2924,31,1274,28,32,27,
- 29,1118,260,26,24,53,1377,108,77,78,
- 107,158,158,5311,275,2316,1831,388,1201,274,
- 273,165,165,5311,5311,233,227,228,1762,1154,
- 33,1201,3008,4622,31,1274,28,32,342,29,
- 5311,5311,5311,5311,5311,5311,272,5311,5311,5311,
- 240,243,246,249,2767,5311,3007,3270,1154,33,
- 1201,1797,2924,31,1274,28,32,27,29,1118,
- 260,26,24,53,1377,87,77,78,5311,5311,
- 874,874,5311,5311,1016,1016,323,1502,325,3675,
- 3691,318,1418,2316,1831,388,1201,75,5311,5311,
- 5311,5311,274,273,5311,5311,5311,2155,163,163,
- 2037,3010,33,1201,3008,4622,31,1274,28,32,
- 342,29,5311,5311,272,5311,5311,327,1154,33,
- 1201,3008,4622,31,1274,28,32,342,29,155,
- 1154,33,1201,3008,4622,31,1274,28,32,342,
- 29,874,5311,312,5311,1016,935,1154,33,1201,
- 5311,4685,31,1274,28,32,342,29,323,1502,
- 325,5311,3081,318,1418,343,5311,5311,5311,163,
- 274,273,3414,3096,3160,323,1502,325,1737,538,
- 318,1418,2324,4760,5311,5311,5311,323,1502,325,
- 5311,5311,318,1418,5311,2384,2155,5311,5311,1016,
- 5311,225,336,1286,323,1502,325,534,3439,321,
- 1418,935,1154,33,1201,5311,4685,31,1274,28,
- 32,342,29,158,3026,2429,346,407,5311,1016,
- 5311,158,5311,2939,2134,1712,388,1201,5311,5311,
- 5311,191,313,5311,3403,1411,408,5311,2867,5311,
- 5311,4469,5311,158,5311,1700,1712,388,1201,2117,
- 5311,416,3020,2940,3282,51,5311,336,5311,323,
- 1502,325,5311,5311,319,1418,293,52,294,1671,
- 5311,49,1700,1712,388,1201,51,5311,1700,1712,
- 388,1201,5311,5311,5311,5311,1012,293,52,294,
- 1671,5311,49,5311,5311,5311,5311,5311,2841,2134,
- 1712,388,1201,51,5311,336,5311,738,5311,51,
- 3593,5311,5311,5311,293,52,294,1671,354,1552,
- 293,52,294,1671,5311,49,5311,409,412,5311,
- 51,5311,5311,5311,4423,1700,1712,388,1201,5311,
- 2116,293,52,294,1671,5311,49,5311,349,1001,
- 986,352,5311,5311,5311,5311,1700,1712,388,1201,
- 5311,2012,1700,1712,388,1201,51,5311,5311,5311,
- 5311,5311,5311,5311,5311,5311,5311,293,52,294,
- 1671,5311,1893,3153,1712,388,1201,51,5311,3259,
- 1712,388,1201,51,5311,5311,5311,4423,293,52,
- 294,1671,5311,49,293,52,294,1671,5311,49,
- 920,1712,388,1201,51,5311,5311,5311,2210,2932,
- 51,5311,5311,2324,2343,293,52,294,1671,5311,
- 49,293,52,294,1671,5311,49,2316,1831,388,
- 1201,51,2612,5311,5311,2407,2316,1831,388,1201,
- 5311,2413,293,52,294,1671,1100,1510,1162,3534,
- 534,5311,534,2324,5311,2939,5311,1348,272,2324,
- 5311,534,5311,5311,67,5311,5311,272,2324,346,
- 5311,346,346,5311,158,5311,158,67,2612,67,
- 346,2324,527,2324,2152,158,1964,346,67,5311,
- 5311,5311,2324,5311,2678,191,2678,2678,5311,5311,
- 346,2058,346,2415,530,4469,500,5311,5311,73,
- 5311,346,2678,5311,274,273,67,67,74,1749,
- 2324,2324,67,274,273,2678,2324,2678,5311,2474,
- 5311,2519,1755,1016,1796,1016,2678,5311,5311,346,
- 346,497,499,2850,5311,346,5311,2564,5311,5311,
- 5311,1016,500,5311,5311,5311,5311,158,5311,158,
- 5311,5311,5311,5311,2678,2678,5311,2947,5311,2771,
- 2678,504,502,5311,3636,158,5311,531,5311,3039,
- 5311,5311,5311,5311,5311,3674,5311,497,499,5311,
- 5311,5311,5311,5311,5311,5311,5311,5311,5311,5311,
- 5311,5311,5311,5311,5311,5311,5311,5311,5311,5311,
- 5311,5311,5311,5311,5311,5311,5311,5311,5311,5311,
- 5311,5311,5311,5311,5311,3358,5311,5311,5311,5311,
- 5311,5311,5311,5311,5311,5311,5311,5311,5311,5311,
- 3467,5311,0,5346,39,0,508,30,0,449,
- 1010,0,5346,38,0,2558,128,0,1,439,
- 0,1823,39,0,453,1255,0,452,1789,0,
- 508,41,0,3197,93,0,35,303,0,387,
- 295,0,33,388,0,30,387,0,508,30,
- 387,0,2022,39,0,1,557,0,1,5582,
- 0,1,5581,0,1,5580,0,1,5579,0,
- 1,5578,0,1,5577,0,1,5576,0,1,
- 5575,0,1,5574,0,1,5573,0,1,5572,
- 0,1,5346,39,0,1,784,0,1707,39,
- 0,39,2654,0,5542,238,0,5541,238,0,
- 5652,238,0,5651,238,0,5569,238,0,5568,
- 238,0,5567,238,0,5566,238,0,5565,238,
- 0,5564,238,0,5563,238,0,5562,238,0,
- 5582,238,0,5581,238,0,5580,238,0,5579,
- 238,0,5578,238,0,5577,238,0,5576,238,
- 0,5575,238,0,5574,238,0,5573,238,0,
- 5572,238,0,1823,39,238,0,5349,238,0,
- 35,283,259,0,508,387,0,1707,50,0,
- 3406,234,0,45,5347,0,45,37,0,2558,
- 130,0,2558,129,0,27,515,0,5644,440,
- 0,2463,440,0,1,5349,0,1,39,0,
- 49,37,0,1,94,0,1,5349,226,0,
- 1,39,226,0,5346,37,0,5346,5,37,
- 0,5346,36,0,5347,47,0,37,47,0,
- 5320,405,0,1,3108,0,1,3737,0,1,
- 2022,0,3145,322,0,5644,97,0,2463,97,
- 0,1,5644,0,1,2463,0,4283,279,0,
- 1,659,0,1,2341,0,496,3471,0,1,
- 226,0,1,226,3188,0,5320,226,0,159,
- 178,0,295,3612,0,226,166,0,188,3903,
- 0
+ 149,150,150,150,95,95,95,95,95,96,
+ 96,96,88,13,14,14,14,14,14,14,
+ 14,14,14,14,14,83,83,83,122,122,
+ 122,122,122,120,120,120,89,121,121,153,
+ 153,152,152,124,124,125,44,44,43,87,
+ 87,90,90,92,93,91,45,54,50,154,
+ 154,55,53,86,86,155,155,145,145,126,
+ 126,80,80,156,156,64,64,64,60,60,
+ 59,65,65,70,70,57,57,57,97,97,
+ 106,105,105,62,62,61,61,56,56,49,
+ 108,108,108,100,100,100,101,102,102,102,
+ 103,103,111,111,111,113,113,112,112,198,
+ 198,98,98,182,182,182,182,182,128,68,
+ 68,158,181,181,129,129,129,129,183,183,
+ 32,32,119,130,130,130,130,114,114,123,
+ 123,123,160,161,161,161,161,161,161,161,
+ 161,161,186,186,184,184,185,185,162,162,
+ 162,162,163,187,116,115,115,188,188,164,
+ 164,132,132,131,131,131,199,199,10,189,
+ 189,190,165,157,157,166,166,167,168,168,
+ 7,7,8,170,170,170,170,170,170,170,
+ 170,170,170,170,170,170,170,170,170,170,
+ 170,170,170,170,170,170,170,170,170,170,
+ 170,170,170,170,170,170,170,170,170,170,
+ 170,170,170,170,170,69,71,71,171,171,
+ 133,133,134,134,134,134,134,134,3,4,
+ 172,172,169,169,135,135,135,84,85,79,
+ 159,159,117,117,191,191,191,136,136,127,
+ 127,192,192,173,173,1534,1854,1674,1639,951,
+ 2794,4038,34,1005,31,35,30,32,1889,263,
+ 29,27,56,1015,111,80,81,113,1042,1962,
+ 1091,1052,1145,1129,3188,1198,1165,275,1243,875,
+ 1200,1293,1297,148,493,2954,164,149,510,1899,
+ 38,882,36,951,3213,4594,34,1005,31,35,
+ 63,32,3509,38,882,36,951,232,2471,34,
+ 1005,31,35,30,32,783,263,29,27,56,
+ 1015,111,80,81,113,1042,3177,1899,278,2887,
+ 1755,2813,3820,277,276,3820,4621,3743,1608,235,
+ 230,231,3468,38,882,36,951,3164,2471,34,
+ 1005,31,35,30,32,783,263,29,27,56,
+ 1015,90,80,81,242,245,248,251,3121,1530,
+ 3216,38,882,36,951,1848,4850,34,1005,31,
+ 35,30,32,339,953,507,338,533,159,628,
+ 1765,2952,3010,3159,3168,3818,3710,2413,38,882,
+ 36,951,2374,2471,34,1005,31,35,2673,32,
+ 783,263,29,27,56,1015,111,80,81,113,
+ 1042,349,1091,1052,1145,1129,616,1198,1165,67,
+ 1243,3649,1200,1293,1297,148,3374,2197,514,149,
+ 1953,38,882,36,951,2469,2384,34,1005,43,
+ 35,730,98,515,2413,38,882,36,951,2374,
+ 2471,34,1005,31,35,2673,32,783,263,29,
+ 27,56,1015,111,80,81,113,1042,349,1091,
+ 1052,1145,1129,67,1198,1165,3146,1243,687,1200,
+ 1293,1297,148,601,1884,514,149,188,70,38,
+ 449,1719,443,2384,4768,3509,38,882,36,951,
+ 515,2471,34,1005,31,35,30,32,783,263,
+ 29,27,56,1015,111,80,81,113,1042,1144,
+ 1091,2108,510,2267,3646,3715,3258,2942,38,882,
+ 36,951,2374,2471,34,1005,31,35,2673,32,
+ 783,263,29,27,56,1015,111,80,81,113,
+ 1042,349,1091,1052,1145,1129,2664,1198,1165,2714,
+ 1243,510,1200,1293,1297,148,3623,3902,514,149,
+ 1030,38,1545,46,951,2887,2384,45,1005,510,
+ 3799,3820,3148,515,2752,38,882,36,951,358,
+ 2471,34,1005,31,35,30,32,783,263,29,
+ 27,56,1015,111,80,81,113,1042,863,1091,
+ 1052,1145,1129,2876,1198,1165,2714,1243,67,1200,
+ 1293,1297,148,744,1748,384,149,3509,38,882,
+ 36,951,4079,2471,34,1005,31,35,30,32,
+ 783,263,29,27,56,1015,111,80,81,89,
+ 387,3151,1592,3601,442,3383,3384,2825,38,882,
+ 36,951,511,2471,34,1005,31,35,30,32,
+ 783,263,29,27,56,1015,111,80,81,113,
+ 1042,3159,1091,1052,1145,1129,619,1198,1165,494,
+ 1243,2134,1200,1293,1297,148,452,521,384,149,
+ 3168,38,882,36,951,3660,4850,34,1005,31,
+ 35,65,32,388,3849,3079,2794,99,3102,38,
+ 882,36,951,385,2471,34,1005,31,35,30,
+ 32,783,263,29,27,56,1015,111,80,81,
+ 113,1042,59,1091,1052,1145,1129,3775,1198,1165,
+ 3737,1243,237,1200,1293,1297,148,335,341,164,
+ 149,1905,3102,38,882,36,951,3918,2471,34,
+ 1005,31,35,30,32,783,263,29,27,56,
+ 1015,111,80,81,113,1042,389,1091,1052,1145,
+ 1129,158,1198,1165,93,1243,107,1200,1293,1297,
+ 148,688,3206,378,149,3102,38,882,36,951,
+ 2794,2471,34,1005,31,35,30,32,783,263,
+ 29,27,56,1015,111,80,81,113,1042,3219,
+ 1091,1052,1145,1129,2195,1198,1165,963,1243,1018,
+ 1200,1293,1297,148,28,335,378,149,2259,38,
+ 882,36,951,859,4594,34,1005,31,35,62,
+ 32,2794,628,166,520,587,3102,38,882,36,
+ 951,439,2471,34,1005,31,35,30,32,783,
+ 263,29,27,56,1015,111,80,81,113,1042,
+ 377,1091,1052,1145,1129,75,1198,1165,589,1243,
+ 677,1200,1293,1297,148,863,880,378,149,3027,
+ 38,882,36,951,2794,2471,34,1005,31,35,
+ 30,32,783,263,29,27,56,1015,111,80,
+ 81,113,1042,376,1091,1052,1145,1129,1249,1198,
+ 1165,863,1243,61,1200,1293,1297,148,74,2794,
+ 384,149,393,425,2898,38,882,36,951,3743,
+ 2471,34,1005,31,35,30,32,783,263,29,
+ 27,56,1015,111,80,81,113,1042,771,1091,
+ 1052,1145,1129,59,1198,1165,456,1243,66,1200,
+ 1293,1297,148,422,374,147,149,1805,3102,38,
+ 882,36,951,1721,2471,34,1005,31,35,30,
+ 32,783,263,29,27,56,1015,111,80,81,
+ 113,1042,455,1091,1052,1145,1129,3170,1198,1165,
+ 95,1243,863,1200,1293,1297,148,863,382,165,
+ 149,3102,38,882,36,951,2794,2471,34,1005,
+ 31,35,30,32,783,263,29,27,56,1015,
+ 111,80,81,113,1042,67,1091,1052,1145,1129,
+ 952,1198,1165,359,1243,510,1200,1293,1297,148,
+ 91,4195,160,149,3102,38,882,36,951,2794,
+ 2471,34,1005,31,35,30,32,783,263,29,
+ 27,56,1015,111,80,81,113,1042,3095,1091,
+ 1052,1145,1129,3767,1198,1165,2113,1243,57,1200,
+ 1293,1297,148,58,443,159,149,3102,38,882,
+ 36,951,1547,2471,34,1005,31,35,30,32,
+ 783,263,29,27,56,1015,111,80,81,113,
+ 1042,67,1091,1052,1145,1129,4541,1198,1165,699,
+ 1243,67,1200,1293,1297,148,1137,1272,158,149,
+ 3102,38,882,36,951,730,2471,34,1005,31,
+ 35,30,32,783,263,29,27,56,1015,111,
+ 80,81,113,1042,2884,1091,1052,1145,1129,2267,
+ 1198,1165,1820,1243,67,1200,1293,1297,148,2764,
+ 787,157,149,3102,38,882,36,951,2794,2471,
+ 34,1005,31,35,30,32,783,263,29,27,
+ 56,1015,111,80,81,113,1042,331,1091,1052,
+ 1145,1129,863,1198,1165,3719,1243,510,1200,1293,
+ 1297,148,356,4711,156,149,3102,38,882,36,
+ 951,1664,2471,34,1005,31,35,30,32,783,
+ 263,29,27,56,1015,111,80,81,113,1042,
+ 67,1091,1052,1145,1129,2366,1198,1165,1658,1243,
+ 67,1200,1293,1297,148,1898,3162,155,149,3102,
+ 38,882,36,951,2794,2471,34,1005,31,35,
+ 30,32,783,263,29,27,56,1015,111,80,
+ 81,113,1042,333,1091,1052,1145,1129,730,1198,
+ 1165,1798,1243,659,1200,1293,1297,148,94,1758,
+ 154,149,3102,38,882,36,951,3259,2471,34,
+ 1005,31,35,30,32,783,263,29,27,56,
+ 1015,111,80,81,113,1042,67,1091,1052,1145,
+ 1129,2340,1198,1165,1875,1243,3724,1200,1293,1297,
+ 148,2978,1880,153,149,3102,38,882,36,951,
+ 2794,2471,34,1005,31,35,30,32,783,263,
+ 29,27,56,1015,111,80,81,113,1042,67,
+ 1091,1052,1145,1129,2794,1198,1165,332,1243,510,
+ 1200,1293,1297,148,1838,4793,152,149,3102,38,
+ 882,36,951,2794,2471,34,1005,31,35,30,
+ 32,783,263,29,27,56,1015,111,80,81,
+ 113,1042,67,1091,1052,1145,1129,3867,1198,1165,
+ 3294,1243,510,1200,1293,1297,148,953,4817,151,
+ 149,3102,38,882,36,951,2794,2471,34,1005,
+ 31,35,30,32,783,263,29,27,56,1015,
+ 111,80,81,113,1042,2189,1091,1052,1145,1129,
+ 405,1198,1165,2798,1243,510,1200,1293,1297,148,
+ 73,4826,150,149,2986,38,882,36,951,2794,
+ 2471,34,1005,31,35,30,32,783,263,29,
+ 27,56,1015,111,80,81,113,1042,67,1091,
+ 1052,1145,1129,4077,1198,1165,2804,1243,83,1200,
+ 1293,2877,170,72,969,3102,38,882,36,951,
+ 2794,2471,34,1005,31,35,30,32,783,263,
+ 29,27,56,1015,111,80,81,113,1042,1259,
+ 1091,1052,1145,1129,1259,1198,1165,3722,1243,984,
+ 1200,1293,1297,148,71,334,145,149,1208,246,
+ 688,38,1887,391,951,688,38,2961,3426,38,
+ 882,36,951,1542,2471,34,1005,31,35,30,
+ 32,783,263,29,27,56,1015,111,80,81,
+ 113,1042,37,1091,1052,1145,1129,3480,1198,1165,
+ 334,1243,381,1200,1293,1297,148,688,3762,195,
+ 149,3509,38,882,36,951,3622,2471,34,1005,
+ 31,35,30,32,783,263,29,27,56,1015,
+ 111,80,81,113,1042,3624,1091,1052,1145,1129,
+ 627,1198,1165,235,1243,323,1200,1293,2877,170,
+ 3509,38,882,36,951,411,2471,34,1005,31,
+ 35,30,32,783,263,29,27,56,1015,111,
+ 80,81,113,1042,2195,1091,1052,1145,1129,1018,
+ 1198,1165,392,1243,939,1200,1293,2877,170,3168,
+ 38,882,36,951,1579,4850,34,1005,31,35,
+ 64,32,379,166,1834,3509,38,882,36,951,
+ 294,2471,34,1005,31,35,30,32,783,263,
+ 29,27,56,1015,111,80,81,113,1042,3601,
+ 1091,1052,1145,1129,2069,1198,1165,3151,1243,2378,
+ 1200,1293,2877,170,3509,38,882,36,951,2848,
+ 2471,34,1005,31,35,30,32,783,263,29,
+ 27,56,1015,111,80,81,113,1042,999,1091,
+ 1052,1145,1129,1259,1198,1165,1741,1243,1389,1200,
+ 1293,2877,170,1953,38,882,36,951,1528,2794,
+ 34,1005,2491,35,688,38,509,2949,951,3509,
+ 38,882,36,951,421,2471,34,1005,31,35,
+ 30,32,783,263,29,27,56,1015,111,80,
+ 81,113,1042,70,1091,1052,1145,1129,2794,1198,
+ 1165,381,1243,2794,1200,1293,2877,170,3550,38,
+ 882,36,951,420,2471,34,1005,31,35,30,
+ 32,783,263,29,27,56,1015,111,80,81,
+ 113,1042,2754,1091,1052,1145,1129,61,1198,1165,
+ 92,1243,107,1200,1293,2877,170,1953,38,882,
+ 36,951,3620,2794,34,1005,2840,35,688,38,
+ 1676,1666,951,3509,38,882,36,951,423,2471,
+ 34,1005,31,35,30,32,783,263,29,27,
+ 56,1015,111,80,81,113,1042,60,1091,1052,
+ 1145,1129,403,1198,1165,953,1243,963,1200,2589,
+ 3422,3103,3509,38,882,36,951,3733,2471,34,
+ 1005,31,35,30,32,783,263,29,27,56,
+ 1015,111,80,81,113,1042,67,1091,1052,1145,
+ 1129,2989,1198,1165,863,1243,3193,2511,3509,38,
+ 882,36,951,3622,2471,34,1005,31,35,30,
+ 32,783,263,29,27,56,1015,111,80,81,
+ 113,1042,2123,1091,1052,1145,1129,730,1198,1165,
+ 963,2488,3509,38,882,36,951,2794,2471,34,
+ 1005,31,35,30,32,783,263,29,27,56,
+ 1015,111,80,81,113,1042,3212,1091,1052,1145,
+ 1129,2374,1198,2489,3591,1854,1887,391,951,287,
+ 3188,329,394,425,2802,102,3289,237,263,3018,
+ 2696,3226,4703,688,1854,1887,391,951,3303,38,
+ 397,3509,38,882,36,951,275,2471,34,1005,
+ 31,35,30,32,783,263,29,27,56,1015,
+ 111,80,81,113,1042,275,1091,1052,1145,1129,
+ 67,2128,67,3622,67,1018,232,1018,3239,2374,
+ 2817,1046,38,882,36,951,2794,4760,34,1005,
+ 31,35,345,32,357,396,425,278,349,1604,
+ 1547,3949,277,276,365,688,1596,298,235,230,
+ 231,3273,1596,1631,391,951,279,2168,2999,3023,
+ 106,277,276,2384,350,1303,819,355,336,675,
+ 1682,3164,348,242,245,248,251,3121,339,288,
+ 326,1647,328,54,1848,324,1467,730,296,3930,
+ 297,1936,3408,3622,296,55,297,1588,1502,674,
+ 2952,3010,3159,3168,3818,3710,3509,38,882,36,
+ 951,407,2471,34,1005,31,35,30,32,783,
+ 263,29,27,56,1015,111,80,81,113,1042,
+ 428,1091,1052,1145,2391,3509,38,882,36,951,
+ 778,2471,34,1005,31,35,30,32,783,263,
+ 29,27,56,1015,111,80,81,113,1042,305,
+ 1091,1052,1145,2438,3509,38,882,36,951,1594,
+ 2471,34,1005,31,35,30,32,783,263,29,
+ 27,56,1015,111,80,81,113,1042,1902,1091,
+ 1052,2024,3509,38,882,36,951,2465,2471,34,
+ 1005,31,35,30,32,783,263,29,27,56,
+ 1015,111,80,81,113,1042,3077,1091,1052,2034,
+ 3509,38,882,36,951,3222,2471,34,1005,31,
+ 35,30,32,783,263,29,27,56,1015,111,
+ 80,81,113,1042,3284,1091,1052,2044,3509,38,
+ 882,36,951,986,2471,34,1005,31,35,30,
+ 32,783,263,29,27,56,1015,111,80,81,
+ 113,1042,3768,1091,1052,2079,1890,38,882,36,
+ 951,4090,4678,34,1005,31,35,345,32,3509,
+ 38,882,36,951,3265,2471,34,1005,31,35,
+ 30,32,783,263,29,27,56,1015,111,80,
+ 81,113,1042,3180,1091,2116,688,38,1887,391,
+ 951,2199,38,882,36,951,4840,4678,34,1005,
+ 31,35,345,32,67,326,1647,328,67,4304,
+ 321,1467,67,4843,2820,295,357,1259,429,688,
+ 295,3509,38,1674,1639,951,3148,2471,34,1005,
+ 31,35,30,32,783,263,29,27,56,1015,
+ 111,80,81,88,2820,295,350,1303,819,355,
+ 326,1647,328,37,3134,321,1467,3276,38,281,
+ 3775,357,1691,1162,598,38,449,3098,38,283,
+ 4768,2347,2808,38,882,36,951,4090,4678,34,
+ 1005,31,35,345,32,688,38,509,280,951,
+ 3164,350,1303,819,355,3303,38,397,863,1518,
+ 3509,38,882,36,951,1826,2471,34,1005,31,
+ 35,30,32,783,263,29,27,56,1015,111,
+ 80,81,113,1042,3456,1940,3562,3200,371,419,
+ 308,326,1647,328,3391,3737,321,1467,289,3126,
+ 67,1821,357,290,3126,2885,511,1854,1887,391,
+ 951,2892,524,2180,38,3273,36,951,4492,4760,
+ 34,1005,31,35,345,32,2313,3133,289,3126,
+ 2794,3144,350,1303,819,355,2374,520,275,103,
+ 525,1789,38,882,36,951,4492,4760,34,1005,
+ 31,35,345,32,1905,349,2433,3133,2319,3337,
+ 67,3728,1760,1018,2971,3600,2374,3164,4615,3409,
+ 338,3594,326,1647,328,239,263,321,1467,3180,
+ 981,67,688,1596,298,228,4323,161,963,3050,
+ 446,3383,3384,2692,277,276,1937,1337,338,3212,
+ 326,1647,328,320,2374,321,1467,185,4575,76,
+ 2441,216,213,206,214,215,217,688,38,285,
+ 941,2812,361,2696,232,296,4055,297,2887,207,
+ 208,529,3107,3596,3820,2794,67,3753,2441,47,
+ 2901,4903,2374,218,1150,209,210,211,212,535,
+ 1195,299,300,301,302,2374,240,230,231,3164,
+ 3421,228,688,1854,1887,391,951,315,349,447,
+ 4120,2513,3627,161,2696,416,3321,688,1854,1887,
+ 391,951,232,1110,4575,338,3725,216,213,206,
+ 214,215,217,2384,275,3296,3763,365,2222,201,
+ 1016,452,3826,395,425,207,208,2374,3107,275,
+ 2920,2999,3023,67,244,230,231,3713,1047,218,
+ 438,209,210,211,212,4683,228,299,300,301,
+ 302,950,1596,2733,1494,951,428,4600,3227,38,
+ 509,280,951,3599,692,78,4120,3669,366,4575,
+ 277,276,216,213,206,214,215,217,3267,67,
+ 346,1336,4615,54,3986,277,276,3874,3089,1580,
+ 207,208,2374,3107,296,55,297,1588,1788,2228,
+ 1609,3098,38,281,218,2374,209,210,211,212,
+ 3823,228,299,300,301,302,3619,3752,774,1596,
+ 1631,391,951,3742,349,688,38,1887,391,951,
+ 3164,4120,3726,3621,4575,3668,3164,216,213,206,
+ 214,215,217,688,1596,1631,391,951,2794,564,
+ 54,232,3744,49,2901,207,208,448,3107,3326,
+ 232,296,55,297,1588,1461,2855,527,3433,218,
+ 200,209,210,211,212,54,204,299,300,301,
+ 302,2393,3839,247,230,231,296,55,297,1588,
+ 67,924,250,230,231,3692,4120,3851,3509,38,
+ 882,36,951,3270,2471,34,1005,31,35,30,
+ 32,783,263,29,27,56,1015,111,80,81,
+ 113,1983,3509,38,882,36,951,521,2471,34,
+ 1005,31,35,30,32,783,263,29,27,56,
+ 1015,111,80,81,113,1985,3509,38,882,36,
+ 951,3764,2471,34,1005,31,35,30,32,783,
+ 263,29,27,56,1015,111,80,81,113,1995,
+ 1707,38,882,36,951,1590,4760,34,1005,31,
+ 35,345,32,688,38,1887,391,951,3083,38,
+ 882,36,951,4492,4678,34,1005,31,35,345,
+ 32,1354,1882,2272,177,1720,4007,2366,1018,535,
+ 4103,3762,1018,3766,3767,430,3227,38,509,3186,
+ 951,688,38,509,284,951,2794,339,228,326,
+ 1647,328,161,161,322,1467,161,3774,3769,3776,
+ 357,3788,637,2957,186,1,2560,326,1647,328,
+ 535,3149,321,1467,216,213,205,214,215,217,
+ 4179,3164,175,688,38,509,282,951,2812,228,
+ 352,1303,819,355,161,357,189,173,174,176,
+ 177,178,179,180,2957,186,688,38,509,3222,
+ 951,3780,3149,3781,3785,216,213,205,214,215,
+ 217,202,3789,175,67,350,1303,819,355,2951,
+ 67,187,3791,1518,316,2810,1259,190,173,174,
+ 176,177,178,179,180,3509,38,882,36,951,
+ 3841,2471,34,1005,31,35,30,32,783,263,
+ 29,27,56,1015,111,80,81,87,3509,38,
+ 882,36,951,3848,2471,34,1005,31,35,30,
+ 32,783,263,29,27,56,1015,111,80,81,
+ 86,3617,67,67,523,3787,559,3027,3092,3509,
+ 38,882,36,951,3415,2471,34,1005,31,35,
+ 30,32,783,263,29,27,56,1015,111,80,
+ 81,85,3509,38,882,36,951,3817,2471,34,
+ 1005,31,35,30,32,783,263,29,27,56,
+ 1015,111,80,81,84,3509,38,882,36,951,
+ 3737,2471,34,1005,31,35,30,32,783,263,
+ 29,27,56,1015,111,80,81,83,3509,38,
+ 882,36,951,1387,2471,34,1005,31,35,30,
+ 32,783,263,29,27,56,1015,111,80,81,
+ 82,3372,38,882,36,951,3819,2471,34,1005,
+ 31,35,30,32,783,263,29,27,56,1015,
+ 111,80,81,109,3509,38,882,36,951,3622,
+ 2471,34,1005,31,35,30,32,783,263,29,
+ 27,56,1015,111,80,81,115,3509,38,882,
+ 36,951,3737,2471,34,1005,31,35,30,32,
+ 783,263,29,27,56,1015,111,80,81,114,
+ 3655,1854,1887,391,951,1400,3188,3344,3849,89,
+ 3303,38,397,238,263,3164,3622,360,688,1854,
+ 1887,391,951,3815,2178,313,529,3509,38,882,
+ 36,951,275,2471,34,1005,31,35,30,32,
+ 783,263,29,27,56,1015,111,80,81,112,
+ 275,1992,3824,3842,947,222,1018,3509,38,882,
+ 36,951,232,2471,34,1005,31,35,30,32,
+ 783,263,29,27,56,1015,111,80,81,110,
+ 161,3899,304,278,3850,3164,2374,2470,277,276,
+ 3431,203,1018,3681,236,230,231,67,2374,3855,
+ 3857,76,3157,2794,2794,228,277,276,1877,330,
+ 688,1596,1631,391,951,3860,161,228,529,243,
+ 246,249,252,3121,3810,4992,1776,5462,4575,3164,
+ 1848,216,213,206,214,215,217,4220,4261,1592,
+ 4575,3622,54,216,213,206,214,215,217,207,
+ 208,5462,3107,296,55,297,1588,1592,2986,3164,
+ 5462,207,208,495,3107,209,210,211,212,312,
+ 232,299,300,301,302,517,265,209,210,211,
+ 212,535,2517,299,300,301,302,1018,5462,1259,
+ 5462,2794,688,1596,1631,391,951,5462,2794,4995,
+ 228,3849,253,230,231,161,3289,303,3625,67,
+ 5462,161,4703,2195,2374,2957,186,353,1018,3849,
+ 3164,1819,535,3149,54,3486,216,213,205,214,
+ 215,217,3899,349,175,296,55,297,1588,2794,
+ 3171,228,166,5462,340,341,161,522,3734,173,
+ 174,176,177,178,179,180,2957,186,2384,3164,
+ 311,3715,337,341,3149,1795,2822,216,213,205,
+ 214,215,217,383,386,175,3069,38,882,36,
+ 951,4492,4678,34,1005,31,35,345,32,182,
+ 173,174,176,177,178,179,180,3947,5462,4999,
+ 2794,5462,2374,1000,38,882,36,951,2903,4678,
+ 34,1005,31,35,345,32,5462,2173,3283,67,
+ 5462,228,5462,2374,884,5462,5462,2794,3280,1596,
+ 1631,391,951,5462,4065,326,1647,328,1502,5462,
+ 321,1467,2696,404,4575,3164,5462,216,213,206,
+ 214,215,217,5462,3972,3164,2812,5462,2794,2374,
+ 54,4343,323,3193,328,207,208,1592,3107,3197,
+ 427,296,55,297,1588,3820,1408,5462,228,314,
+ 2887,209,210,211,212,307,3820,299,300,301,
+ 302,2393,4384,2795,3205,197,5462,5462,2374,3820,
+ 5462,4575,315,5462,216,213,206,214,215,217,
+ 3801,5462,5462,5462,5462,2374,501,2696,5462,1086,
+ 5462,3725,207,208,535,3107,4079,5462,5462,3849,
+ 5462,3763,5462,5462,228,5462,518,338,209,210,
+ 211,212,5462,228,299,300,301,302,161,5462,
+ 338,499,500,5462,5462,5462,5462,4575,168,1975,
+ 216,213,206,214,215,217,3149,5462,5462,441,
+ 4522,5462,2890,341,535,5462,5462,3340,207,208,
+ 5462,3107,5462,5462,5462,688,1596,1631,391,951,
+ 4683,365,219,228,209,210,211,212,161,5462,
+ 299,300,301,302,1690,2999,3023,2195,2957,186,
+ 529,101,1018,5462,5462,535,3149,54,5462,216,
+ 213,205,214,215,217,5462,3795,175,296,55,
+ 297,1588,5462,2807,228,5462,166,5462,5462,161,
+ 5462,193,173,174,176,177,178,179,180,2957,
+ 186,617,5462,5462,5462,5462,535,3149,5462,5462,
+ 216,213,205,214,215,217,5462,5462,175,5462,
+ 5462,1342,5462,5462,5462,228,535,5462,5462,5462,
+ 161,5462,3825,173,174,176,177,178,179,180,
+ 2957,186,705,5462,1592,349,5462,535,3149,5462,
+ 161,216,213,205,214,215,217,5462,5462,175,
+ 194,2223,1406,1592,5462,5462,228,535,5462,5462,
+ 4478,161,5462,196,173,174,176,177,178,179,
+ 180,2957,186,793,5462,5462,349,5462,535,3149,
+ 5462,161,216,213,205,214,215,217,5462,5462,
+ 175,194,5462,2316,5462,5462,3849,228,2374,5462,
+ 5462,4478,161,5462,192,173,174,176,177,178,
+ 179,180,2957,186,881,3849,5462,349,5462,535,
+ 3149,5462,5462,216,213,205,214,215,217,3396,
+ 5462,175,5462,5462,5462,5462,5462,5462,228,2950,
+ 341,5462,3971,161,5462,199,173,174,176,177,
+ 178,179,180,2957,186,5462,5462,5462,3260,341,
+ 5462,3149,5462,5462,216,213,205,214,215,217,
+ 3813,5462,175,1672,38,3273,36,951,4492,4678,
+ 34,1005,31,35,345,32,198,173,174,176,
+ 177,178,179,180,5462,2457,38,882,36,951,
+ 4492,4678,34,1005,31,35,345,32,2457,38,
+ 882,36,951,4492,4678,34,1005,31,35,345,
+ 32,5462,2887,5462,5462,5462,5462,5462,3820,5462,
+ 5462,5462,326,1647,328,5462,5462,321,1467,1046,
+ 38,882,36,951,5462,4760,34,1005,31,35,
+ 345,32,2039,2692,326,1647,328,1018,2564,321,
+ 1467,5462,5462,1018,5462,5462,5462,326,1647,328,
+ 5462,1598,321,1467,5462,2347,2374,4875,5462,338,
+ 5462,161,5462,5462,3908,5462,5462,161,3809,5462,
+ 5462,168,5462,5462,5462,228,339,1860,326,1647,
+ 328,5462,5462,322,1467,2878,38,882,36,951,
+ 2931,4678,34,1005,31,35,345,32,4013,4509,
+ 5462,408,5462,5462,864,1596,1631,391,951,5462,
+ 864,1596,1631,391,951,417,3321,5462,5462,1760,
+ 409,5462,3107,5462,5462,688,1596,1631,391,951,
+ 5462,774,1596,1631,391,951,54,5462,5462,3869,
+ 5462,5462,54,5462,323,3193,328,296,55,297,
+ 1588,5462,1561,296,55,297,1588,54,52,1681,
+ 5462,5462,5462,54,2374,4875,5462,2896,296,55,
+ 297,51,5462,2817,296,55,297,1588,5462,52,
+ 5462,2195,3062,228,5462,5462,1018,5462,774,1596,
+ 1631,391,951,2190,3007,5462,5462,2195,5462,3820,
+ 2611,5462,1018,5462,5462,1018,4013,5462,5462,408,
+ 166,410,412,774,1596,1631,391,951,5462,5462,
+ 54,864,1596,1631,391,951,166,1760,409,161,
+ 3107,296,55,297,1588,1956,2270,4649,5462,2129,
+ 5462,1975,5462,5462,5462,54,5462,5462,5462,5462,
+ 339,3067,5462,54,5462,5462,296,55,297,1588,
+ 5462,52,5462,357,296,55,297,1588,5462,52,
+ 774,1596,1631,391,951,5462,2736,5462,774,1596,
+ 1631,391,951,5462,2217,2446,5462,5462,5462,5462,
+ 3062,5462,5462,352,1303,819,355,5462,5462,5462,
+ 5462,3025,54,774,1596,1631,391,951,5462,5462,
+ 54,5462,5462,296,55,297,1588,5462,2440,410,
+ 413,296,55,297,1588,5462,52,3415,1596,1631,
+ 391,951,5462,3067,5462,54,3418,1596,1631,391,
+ 951,3195,5462,5462,5462,5462,296,55,297,1588,
+ 2795,52,5462,3283,5462,2374,3820,5462,2374,54,
+ 688,1596,1631,391,951,5462,3353,5462,54,5462,
+ 296,55,297,1588,2696,52,5462,2696,5462,296,
+ 55,297,1588,5462,52,688,1596,1631,391,951,
+ 2465,5462,54,688,1854,1887,391,951,5462,2972,
+ 5462,5462,5462,296,55,297,1588,338,674,5462,
+ 1214,1278,5462,3692,5462,535,535,54,2374,3309,
+ 5462,5462,5462,5462,2374,275,5462,5462,296,55,
+ 297,1588,5462,2265,349,349,5462,2696,5462,161,
+ 161,1470,5462,349,5462,5462,535,3340,365,1214,
+ 1110,501,5462,528,5462,5462,5462,5462,5462,2384,
+ 2384,1690,2999,3023,67,349,1161,1346,2384,2374,
+ 161,5462,67,67,67,531,77,2374,2374,2374,
+ 194,277,276,5462,67,5462,498,500,349,2374,
+ 4478,5462,5462,5462,67,5462,349,349,349,2374,
+ 5462,5462,2086,5462,5462,2133,5462,1018,349,2209,
+ 1018,501,5462,2384,1018,5462,5462,5462,349,5462,
+ 1803,2384,2384,2384,3372,5462,5462,2658,1846,1733,
+ 505,161,1018,2384,161,5462,5462,5462,161,5462,
+ 503,168,5462,2384,168,5462,498,500,168,2705,
+ 532,5462,5462,5462,1018,5462,161,5462,5462,3814,
+ 5462,5462,5462,5462,5462,5462,2304,5462,5462,5462,
+ 5462,5462,5462,5462,5462,5462,5462,5462,161,5462,
+ 5462,5462,5462,5462,3717,5462,5462,5462,4010,5462,
+ 5462,5462,5462,5462,5462,5462,5462,5462,5462,5462,
+ 5462,5462,5462,5462,5462,5462,5462,5462,5462,3969,
+ 5462,3203,4037,5462,5462,5462,4068,5462,0,5480,
+ 42,0,5479,42,0,509,33,0,450,918,
+ 0,5480,41,0,5479,41,0,2640,131,0,
+ 1,440,0,454,1205,0,453,1241,0,509,
+ 44,0,2430,96,0,38,306,0,390,298,
+ 0,36,391,0,33,390,0,509,33,390,
+ 0,1900,42,0,1,578,0,1,5736,0,
+ 1,5735,0,1,5734,0,1,5733,0,1,
+ 5732,0,1,5731,0,1,5730,0,1,5729,
+ 0,1,5728,0,1,5727,0,1,5726,0,
+ 1,5480,42,0,1,5479,42,0,1,870,
+ 0,5696,241,0,5695,241,0,5806,241,0,
+ 5805,241,0,5723,241,0,5722,241,0,5721,
+ 241,0,5720,241,0,5719,241,0,5718,241,
+ 0,5717,241,0,5716,241,0,5736,241,0,
+ 5735,241,0,5734,241,0,5733,241,0,5732,
+ 241,0,5731,241,0,5730,241,0,5729,241,
+ 0,5728,241,0,5727,241,0,5726,241,0,
+ 5480,42,241,0,5479,42,241,0,5503,241,
+ 0,38,286,262,0,509,390,0,5480,53,
+ 0,5479,53,0,1134,237,0,48,5501,0,
+ 48,40,0,2640,133,0,2640,132,0,30,
+ 516,0,5798,441,0,1365,441,0,1,5503,
+ 0,1,42,0,52,40,0,1,97,0,
+ 1,5503,229,0,1,42,229,0,229,415,
+ 0,5480,40,0,5479,40,0,5480,2,40,
+ 0,5479,2,40,0,5480,39,0,5479,39,
+ 0,5501,50,0,40,50,0,5472,406,0,
+ 5471,406,0,1,4465,0,1,2921,0,1,
+ 1900,0,229,414,0,2296,325,0,5798,100,
+ 0,1365,100,0,1,5798,0,1,1365,0,
+ 3923,282,0,1,2398,0,1,2845,0,5470,
+ 1,0,497,3803,0,1,229,0,1,229,
+ 3464,0,5472,229,0,5471,229,0,3719,229,
+ 0,162,181,0,298,3807,0,8,10,0,
+ 229,169,0,229,221,0,229,220,0,191,
+ 4302,0
};
};
public final static char baseAction[] = BaseAction.baseAction;
@@ -1093,381 +1118,411 @@ public class CPPExpressionStatementParserprs implements lpg.lpgjavaruntime.Parse
20,21,22,23,24,25,26,27,28,29,
30,31,32,33,34,35,36,37,38,39,
40,41,42,43,44,45,46,47,48,49,
- 50,51,52,53,54,0,56,57,3,59,
- 60,61,0,63,64,65,0,67,0,1,
- 8,71,4,73,6,75,76,77,78,79,
- 80,81,82,83,84,85,0,1,2,3,
- 4,5,6,7,8,9,10,11,12,13,
- 14,15,16,17,18,19,20,21,22,23,
- 24,25,26,27,28,29,30,31,32,33,
- 34,35,36,37,38,39,40,41,42,43,
- 44,45,46,47,48,49,50,51,52,53,
- 54,0,56,57,0,59,60,61,7,63,
- 64,65,0,67,0,1,2,3,4,73,
- 6,75,76,77,78,79,80,81,82,83,
- 84,85,0,1,2,3,4,5,6,7,
- 8,9,10,11,12,13,14,15,16,17,
- 18,19,20,21,22,23,24,25,26,27,
- 28,29,30,31,32,33,34,35,36,37,
- 38,39,40,41,42,43,44,45,46,47,
- 48,49,50,51,52,53,54,0,56,57,
- 0,59,60,61,4,63,64,65,0,67,
- 0,1,2,3,4,73,6,75,76,77,
- 78,79,80,81,82,83,84,85,0,1,
+ 50,51,52,53,54,55,56,57,0,59,
+ 0,61,62,63,64,65,0,67,68,0,
+ 1,2,72,4,74,0,76,77,78,79,
+ 80,81,0,83,84,85,86,87,0,1,
2,3,4,5,6,7,8,9,10,11,
12,13,14,15,16,17,18,19,20,21,
22,23,24,25,26,27,28,29,30,31,
32,33,34,35,36,37,38,39,40,41,
42,43,44,45,46,47,48,49,50,51,
- 52,53,54,0,56,57,0,59,60,61,
- 0,63,64,65,97,67,0,1,2,3,
- 4,73,6,75,76,77,78,79,80,81,
- 82,83,84,85,0,1,2,3,4,5,
- 6,7,8,9,10,11,12,13,14,15,
- 16,17,18,19,20,21,22,23,24,25,
- 26,27,28,29,30,31,32,33,34,35,
- 36,37,38,39,40,41,42,43,44,45,
- 46,47,48,49,50,51,52,53,54,0,
- 56,57,3,59,60,61,0,63,64,65,
- 97,67,0,1,98,3,4,73,6,75,
- 76,77,78,79,80,81,82,83,84,85,
- 0,1,2,3,4,5,6,7,8,9,
- 10,11,12,13,14,15,16,17,18,19,
- 20,21,22,23,24,25,26,27,28,29,
- 30,31,32,33,34,35,36,37,38,39,
- 40,41,42,43,44,45,46,47,48,49,
- 50,51,52,53,54,0,56,57,3,59,
- 60,61,0,63,64,65,4,67,0,1,
- 0,3,4,73,6,75,76,77,78,79,
- 80,81,82,83,84,85,0,1,2,3,
+ 52,53,54,55,56,57,64,59,90,61,
+ 62,63,64,65,96,67,68,0,0,99,
+ 72,3,74,6,76,77,78,79,80,81,
+ 95,83,84,85,86,87,0,1,2,3,
4,5,6,7,8,9,10,11,12,13,
14,15,16,17,18,19,20,21,22,23,
24,25,26,27,28,29,30,31,32,33,
34,35,36,37,38,39,40,41,42,43,
44,45,46,47,48,49,50,51,52,53,
- 54,0,56,57,0,59,60,61,0,63,
- 64,65,0,67,0,1,0,5,2,73,
- 6,75,76,77,78,79,80,81,82,83,
- 84,85,0,1,2,3,4,5,6,7,
+ 54,55,56,57,0,59,0,61,62,63,
+ 64,65,0,67,68,0,10,11,91,92,
+ 74,6,76,77,78,79,80,81,0,83,
+ 84,85,86,87,0,1,2,3,4,5,
+ 6,7,8,9,10,11,12,13,14,15,
+ 16,17,18,19,20,21,22,23,24,25,
+ 26,27,28,29,30,31,32,33,34,35,
+ 36,37,38,39,40,41,42,43,44,45,
+ 46,47,48,49,50,51,52,53,54,55,
+ 56,57,0,59,90,61,62,63,64,65,
+ 96,67,68,0,0,0,91,92,74,6,
+ 76,77,78,79,80,81,0,83,84,85,
+ 86,87,0,1,2,3,4,5,6,7,
8,9,10,11,12,13,14,15,16,17,
18,19,20,21,22,23,24,25,26,27,
28,29,30,31,32,33,34,35,36,37,
38,39,40,41,42,43,44,45,46,47,
- 48,49,50,51,52,53,54,0,56,57,
- 0,59,60,61,7,63,64,65,0,67,
- 99,89,90,5,0,73,2,75,76,77,
- 78,79,80,81,82,83,84,85,0,1,
+ 48,49,50,51,52,53,54,55,56,57,
+ 0,59,90,61,62,63,64,65,96,67,
+ 68,0,88,89,91,92,74,0,76,77,
+ 78,79,80,81,99,83,84,85,86,87,
+ 0,1,2,3,4,5,6,7,8,9,
+ 10,11,12,13,14,15,16,17,18,19,
+ 20,21,22,23,24,25,26,27,28,29,
+ 30,31,32,33,34,35,36,37,38,39,
+ 40,41,42,43,44,45,46,47,48,49,
+ 50,51,52,53,54,55,56,57,71,59,
+ 90,61,62,63,64,65,96,67,68,0,
+ 0,1,2,4,74,5,76,77,78,79,
+ 80,81,101,83,84,85,86,87,0,1,
2,3,4,5,6,7,8,9,10,11,
12,13,14,15,16,17,18,19,20,21,
22,23,24,25,26,27,28,29,30,31,
32,33,34,35,36,37,38,39,40,41,
42,43,44,45,46,47,48,49,50,51,
- 52,53,54,69,56,57,0,59,60,61,
- 0,63,64,65,0,67,0,89,90,5,
- 0,73,2,75,76,77,78,79,80,81,
- 82,83,84,85,0,1,2,3,4,5,
+ 52,53,54,55,56,57,0,59,0,61,
+ 62,63,64,65,8,67,68,0,1,2,
+ 0,4,74,3,76,77,78,79,80,81,
+ 0,83,84,85,86,87,0,1,2,3,
+ 4,5,6,7,8,9,10,11,12,13,
+ 14,15,16,17,18,19,20,21,22,23,
+ 24,25,26,27,28,29,30,31,32,33,
+ 34,35,36,37,38,39,40,41,42,43,
+ 44,45,46,47,48,49,50,51,52,53,
+ 54,55,56,57,0,59,0,61,62,63,
+ 64,65,8,67,68,97,98,0,1,2,
+ 74,0,76,77,78,79,80,81,0,83,
+ 84,85,86,87,0,1,2,3,4,5,
6,7,8,9,10,11,12,13,14,15,
16,17,18,19,20,21,22,23,24,25,
26,27,28,29,30,31,32,33,34,35,
36,37,38,39,40,41,42,43,44,45,
- 46,47,48,49,50,51,52,53,54,0,
- 56,57,0,59,60,61,0,63,64,65,
- 0,67,0,89,90,0,0,73,0,75,
- 76,77,78,79,80,81,82,83,84,85,
- 0,1,2,3,4,5,6,7,0,9,
- 10,11,12,0,42,46,47,45,46,47,
- 48,49,50,51,52,53,54,42,56,43,
- 45,46,47,48,49,50,51,52,53,54,
- 58,56,42,43,68,45,46,47,48,49,
- 50,51,52,53,54,0,56,0,58,0,
- 1,0,62,63,9,10,66,0,68,69,
- 70,71,72,73,0,1,2,3,4,5,
- 6,7,0,95,96,72,86,87,88,89,
- 90,91,92,93,94,95,96,97,98,99,
- 100,101,102,103,104,105,106,107,108,109,
- 110,111,112,113,114,0,1,2,3,4,
+ 46,47,48,49,50,51,52,53,54,55,
+ 56,57,71,59,66,61,62,63,64,65,
+ 0,67,68,0,1,2,100,0,74,9,
+ 76,77,78,79,80,81,0,83,84,85,
+ 86,87,0,1,2,3,4,5,6,7,
+ 8,9,10,11,12,13,14,15,16,17,
+ 18,19,20,21,22,23,24,25,26,27,
+ 28,29,30,31,32,33,34,35,36,37,
+ 38,39,40,41,42,43,44,45,46,47,
+ 48,49,50,51,52,53,54,55,56,57,
+ 73,59,66,61,62,63,64,65,0,67,
+ 68,3,0,0,1,2,74,0,76,77,
+ 78,79,80,81,12,83,84,85,86,87,
+ 0,1,2,3,4,5,6,7,8,9,
+ 10,11,12,13,14,15,16,17,18,19,
+ 20,21,22,23,24,25,26,27,28,29,
+ 30,31,32,33,34,35,36,37,38,39,
+ 40,41,42,43,44,45,46,47,48,49,
+ 50,51,52,53,54,55,56,57,0,59,
+ 0,61,62,63,64,65,0,67,68,0,
+ 1,2,0,4,74,0,76,77,78,79,
+ 80,81,0,83,84,85,86,87,0,1,
+ 2,3,4,5,6,7,8,115,10,11,
+ 12,13,14,0,44,0,3,47,48,49,
+ 50,51,52,53,54,55,56,57,0,0,
+ 1,2,3,4,5,59,7,58,10,11,
+ 58,12,44,45,0,47,48,49,50,51,
+ 52,53,54,55,56,57,88,89,60,0,
+ 1,2,64,0,66,73,7,69,70,71,
+ 72,73,74,75,45,0,1,2,3,4,
+ 5,6,7,8,69,70,88,89,90,91,
+ 92,93,94,95,96,97,98,99,100,101,
+ 102,103,104,105,106,107,108,109,110,111,
+ 112,113,114,115,116,0,1,2,3,4,
5,6,7,8,9,10,11,12,13,14,
15,16,17,18,19,20,21,22,23,24,
25,26,27,28,29,30,31,32,33,34,
35,36,37,38,39,40,41,42,43,44,
45,46,47,48,49,50,51,52,53,54,
- 113,56,57,0,59,60,61,0,1,2,
- 3,4,5,6,7,8,9,10,11,12,
- 13,14,15,16,17,18,19,20,21,22,
- 23,24,25,26,27,28,29,30,31,32,
- 33,34,35,36,37,38,39,40,41,42,
- 0,44,45,46,47,48,49,50,51,52,
- 53,54,0,56,57,62,59,60,61,0,
+ 55,56,57,0,59,0,61,62,63,0,
1,2,3,4,5,6,7,8,9,10,
- 11,12,13,14,15,16,17,18,19,20,
+ 11,0,13,14,15,16,17,18,19,20,
21,22,23,24,25,26,27,28,29,30,
31,32,33,34,35,36,37,38,39,40,
- 41,42,62,44,45,46,47,48,49,50,
- 51,52,53,54,62,56,57,0,59,60,
- 61,0,1,2,3,4,5,6,7,8,
- 9,10,11,12,13,14,15,16,17,18,
- 19,20,21,22,23,24,25,26,27,28,
- 29,30,31,32,33,34,35,36,37,38,
- 39,40,41,42,0,44,45,46,47,48,
- 49,50,51,52,53,54,0,56,57,3,
- 59,60,61,0,1,2,3,4,5,6,
- 7,8,9,10,11,12,13,14,15,16,
+ 41,42,43,44,0,46,47,48,49,50,
+ 51,52,53,54,55,56,57,0,59,66,
+ 61,62,63,0,1,2,3,4,5,6,
+ 7,8,9,10,11,64,13,14,15,16,
17,18,19,20,21,22,23,24,25,26,
27,28,29,30,31,32,33,34,35,36,
- 37,38,39,40,41,42,62,44,45,46,
- 47,48,49,50,51,52,53,54,0,56,
- 57,3,59,60,61,0,1,2,3,4,
- 5,6,7,8,9,10,11,12,13,14,
- 15,16,17,18,19,20,21,22,23,24,
- 25,26,27,28,29,30,31,32,33,34,
- 35,36,37,38,39,40,41,42,0,44,
- 45,46,47,48,49,50,51,52,53,54,
- 0,56,57,3,59,60,61,0,1,2,
- 3,4,5,6,7,8,9,10,11,12,
+ 37,38,39,40,41,42,43,44,0,46,
+ 47,48,49,50,51,52,53,54,55,56,
+ 57,0,59,66,61,62,63,0,1,2,
+ 3,4,5,6,7,8,9,10,11,95,
13,14,15,16,17,18,19,20,21,22,
23,24,25,26,27,28,29,30,31,32,
33,34,35,36,37,38,39,40,41,42,
- 0,44,45,46,47,48,49,50,51,52,
- 53,54,0,56,57,0,59,60,61,0,
- 1,2,3,4,5,6,7,8,9,10,
- 11,12,13,14,15,16,17,18,19,20,
- 21,22,23,24,25,26,27,28,29,30,
- 31,32,33,34,35,36,37,38,39,0,
- 1,42,3,0,45,46,47,48,49,50,
- 51,52,53,54,62,56,57,0,59,60,
- 61,0,0,2,0,3,5,5,7,7,
- 9,10,11,12,0,95,96,13,14,15,
- 16,17,18,19,20,21,22,23,0,1,
- 2,3,4,5,6,7,0,0,1,2,
- 3,4,63,6,43,62,42,0,0,45,
- 46,47,48,49,50,51,52,53,54,58,
- 56,0,1,62,3,68,5,66,7,68,
- 69,70,71,72,0,0,2,0,3,5,
- 43,7,0,9,10,11,12,86,87,88,
- 89,90,91,92,93,94,95,96,97,98,
- 99,100,101,102,103,104,105,106,107,108,
- 109,110,111,112,113,114,69,43,43,42,
- 72,0,45,46,47,48,49,50,51,52,
- 53,54,58,56,0,1,62,3,0,5,
- 66,7,68,69,70,71,72,100,0,102,
- 103,104,105,106,107,108,109,110,111,112,
- 86,87,88,89,90,91,92,93,94,95,
- 96,97,98,99,100,101,102,103,104,105,
- 106,107,108,109,110,111,112,113,114,0,
- 1,2,3,4,5,6,7,8,116,117,
- 118,0,13,14,15,16,17,18,19,20,
- 21,22,23,0,1,2,3,4,0,6,
- 0,1,2,3,4,5,6,7,0,0,
- 1,42,43,44,45,46,47,48,49,50,
- 51,52,53,54,55,56,57,99,59,60,
- 61,0,1,64,3,0,5,119,7,70,
- 71,0,1,74,9,10,0,1,2,3,
- 4,5,6,7,8,62,58,0,1,13,
- 14,15,16,17,18,19,20,21,22,23,
- 70,0,1,2,3,4,68,6,0,1,
- 72,40,41,0,1,116,117,118,42,43,
- 44,45,46,47,48,49,50,51,52,53,
- 54,55,56,57,0,59,60,61,0,1,
- 64,3,55,5,43,7,70,71,40,41,
- 74,0,1,2,3,4,5,6,7,8,
- 9,10,11,12,13,14,15,16,17,18,
+ 43,44,64,46,47,48,49,50,51,52,
+ 53,54,55,56,57,0,59,66,61,62,
+ 63,0,1,2,3,4,5,6,7,8,
+ 9,10,11,0,13,14,15,16,17,18,
19,20,21,22,23,24,25,26,27,28,
29,30,31,32,33,34,35,36,37,38,
- 39,57,116,117,118,0,1,2,3,4,
- 5,6,7,8,9,10,11,12,13,14,
+ 39,40,41,42,43,44,0,46,47,48,
+ 49,50,51,52,53,54,55,56,57,0,
+ 59,66,61,62,63,0,1,2,3,4,
+ 5,6,7,8,9,10,11,64,13,14,
15,16,17,18,19,20,21,22,23,24,
25,26,27,28,29,30,31,32,33,34,
- 35,36,37,38,39,40,41,0,43,44,
- 0,1,2,3,4,5,6,7,8,9,
- 10,11,12,13,14,15,16,17,18,19,
- 20,21,22,23,24,25,26,27,28,29,
- 30,31,32,33,34,35,36,37,38,39,
- 40,41,0,43,44,0,1,2,3,4,
- 5,6,7,8,9,10,11,12,13,14,
- 15,16,17,18,19,20,21,22,23,24,
- 25,26,27,28,29,30,31,32,33,34,
- 35,36,37,38,39,40,41,0,43,44,
- 0,1,2,3,4,5,6,7,8,9,
- 10,11,12,13,14,15,16,17,18,19,
- 20,21,22,23,24,25,26,27,28,29,
- 30,31,32,33,34,35,36,37,38,39,
- 40,41,0,0,44,2,0,1,2,3,
- 4,0,6,0,1,2,3,4,5,6,
- 7,0,1,2,3,4,5,6,7,0,
- 1,119,72,0,1,2,3,4,5,6,
- 7,8,9,10,11,12,13,14,15,16,
+ 35,36,37,38,39,40,41,42,43,44,
+ 64,46,47,48,49,50,51,52,53,54,
+ 55,56,57,64,59,0,61,62,63,0,
+ 1,2,3,4,5,6,7,8,9,10,
+ 11,0,13,14,15,16,17,18,19,20,
+ 21,22,23,24,25,26,27,28,29,30,
+ 31,32,33,34,35,36,37,38,39,40,
+ 41,42,43,44,0,46,47,48,49,50,
+ 51,52,53,54,55,56,57,0,59,0,
+ 61,62,63,0,1,2,3,4,5,6,
+ 7,8,9,10,11,0,13,14,15,16,
17,18,19,20,21,22,23,24,25,26,
27,28,29,30,31,32,33,34,35,36,
- 37,38,39,40,41,62,70,44,0,1,
- 0,3,69,62,55,5,0,1,2,3,
- 88,5,0,7,0,1,94,3,4,0,
- 6,9,10,0,1,72,0,1,2,3,
- 4,5,6,7,8,9,10,11,12,13,
- 14,15,16,17,18,19,20,21,22,23,
- 24,25,26,27,28,29,30,31,32,33,
- 34,35,36,37,38,39,40,41,62,55,
- 44,0,1,2,3,4,5,6,7,8,
- 9,10,11,12,13,14,15,16,17,18,
- 19,20,21,22,23,24,25,26,27,28,
- 29,30,31,32,33,34,35,36,37,38,
- 39,40,41,0,0,44,0,1,2,3,
- 4,5,6,7,8,9,10,11,12,13,
- 14,15,16,17,18,19,20,21,22,23,
- 24,25,26,27,28,29,30,31,32,33,
- 34,35,36,37,38,39,40,41,0,45,
- 44,0,1,2,3,4,5,6,7,8,
+ 37,38,39,40,41,0,47,44,0,0,
+ 47,48,49,50,51,52,53,54,55,56,
+ 57,0,59,0,61,62,63,0,1,2,
+ 3,4,5,6,7,8,9,0,0,12,
+ 0,3,15,16,17,18,19,20,21,22,
+ 23,24,25,44,97,98,47,48,49,50,
+ 51,52,53,54,55,56,57,0,0,48,
+ 49,44,45,46,47,48,49,50,51,52,
+ 53,54,55,56,57,58,59,0,61,62,
+ 63,4,65,0,1,2,88,89,5,72,
+ 73,0,1,2,3,4,5,70,7,82,
+ 0,1,2,3,4,5,6,7,8,9,
+ 0,0,12,3,101,15,16,17,18,19,
+ 20,21,22,23,24,25,0,1,2,3,
+ 4,5,6,7,8,118,119,120,0,0,
+ 0,58,3,3,44,45,46,47,48,49,
+ 50,51,52,53,54,55,56,57,58,59,
+ 0,61,62,63,73,65,0,0,1,2,
+ 10,11,72,73,0,1,2,0,4,0,
+ 3,71,82,6,0,8,0,10,11,12,
+ 13,14,66,0,15,16,17,18,19,20,
+ 21,22,23,24,25,66,66,0,0,1,
+ 2,3,4,5,6,7,8,0,118,119,
+ 120,4,45,44,0,58,47,48,49,50,
+ 51,52,53,54,55,56,57,60,64,0,
+ 0,1,2,66,60,0,69,70,71,72,
+ 73,44,75,0,47,48,49,50,51,52,
+ 53,54,55,56,57,88,89,90,91,92,
+ 93,94,95,96,97,98,99,100,101,102,
+ 103,104,105,106,107,108,109,110,111,112,
+ 113,114,115,116,0,71,0,3,58,0,
+ 6,0,8,58,10,11,12,13,14,0,
+ 1,2,3,4,5,6,7,8,0,1,
+ 2,0,4,5,3,7,102,0,104,105,
+ 106,107,108,109,110,111,112,113,114,45,
+ 44,88,89,47,48,49,50,51,52,53,
+ 54,55,56,57,60,0,0,118,119,120,
+ 66,0,6,69,70,71,72,73,69,75,
+ 69,70,0,1,2,66,58,5,0,7,
+ 71,0,88,89,90,91,92,93,94,95,
+ 96,97,98,99,100,101,102,103,104,105,
+ 106,107,108,109,110,111,112,113,114,115,
+ 116,0,1,2,3,4,5,6,7,8,
9,10,11,12,13,14,15,16,17,18,
19,20,21,22,23,24,25,26,27,28,
29,30,31,32,33,34,35,36,37,38,
- 39,40,41,0,1,0,1,4,0,1,
- 2,3,4,100,6,0,0,1,0,3,
- 4,0,6,2,66,112,68,66,0,1,
+ 39,40,41,42,43,100,45,46,0,1,
2,3,4,5,6,7,8,9,10,11,
12,13,14,15,16,17,18,19,20,21,
22,23,24,25,26,27,28,29,30,31,
32,33,34,35,36,37,38,39,40,41,
- 62,55,44,0,1,2,3,4,5,6,
- 7,8,9,10,11,12,13,14,15,16,
- 17,18,19,20,21,22,23,24,25,26,
- 27,28,29,30,31,32,33,34,35,36,
- 37,38,39,40,41,0,98,44,0,1,
+ 42,43,121,45,46,0,1,2,3,4,
+ 5,6,7,8,9,10,11,12,13,14,
+ 15,16,17,18,19,20,21,22,23,24,
+ 25,26,27,28,29,30,31,32,33,34,
+ 35,36,37,38,39,40,41,42,43,0,
+ 45,46,0,1,2,3,4,5,6,7,
+ 8,9,10,11,12,13,14,15,16,17,
+ 18,19,20,21,22,23,24,25,26,27,
+ 28,29,30,31,32,33,34,35,36,37,
+ 38,39,40,41,42,43,0,0,46,0,
+ 1,2,3,4,5,6,7,8,0,0,
+ 1,2,3,4,0,6,0,8,0,1,
+ 2,3,4,5,0,7,12,75,0,1,
2,3,4,5,6,7,8,9,10,11,
12,13,14,15,16,17,18,19,20,21,
22,23,24,25,26,27,28,29,30,31,
32,33,34,35,36,37,38,39,40,41,
- 0,1,44,0,1,2,3,4,5,6,
- 7,8,9,10,11,12,13,14,15,16,
- 17,18,19,20,21,22,23,24,25,26,
- 27,28,29,30,31,32,33,34,35,36,
- 37,38,39,40,41,0,1,44,0,1,
+ 42,43,73,76,46,66,60,69,0,1,
+ 2,0,4,5,66,7,0,1,2,75,
+ 0,0,1,2,3,4,5,6,7,8,
+ 9,10,11,75,13,14,15,16,17,18,
+ 19,20,21,22,23,24,25,26,27,28,
+ 29,30,31,32,33,34,35,36,37,38,
+ 39,40,41,42,43,0,58,46,0,1,
2,3,4,5,6,7,8,9,10,11,
- 12,13,14,15,16,17,18,19,20,21,
+ 64,13,14,15,16,17,18,19,20,21,
22,23,24,25,26,27,28,29,30,31,
32,33,34,35,36,37,38,39,40,41,
- 0,1,44,0,1,2,3,4,5,6,
- 7,8,9,10,11,12,13,14,15,16,
+ 42,43,0,0,46,0,1,2,3,4,
+ 5,6,7,8,9,10,11,0,13,14,
+ 15,16,17,18,19,20,21,22,23,24,
+ 25,26,27,28,29,30,31,32,33,34,
+ 35,36,37,38,39,40,41,42,43,0,
+ 95,46,0,1,2,3,4,5,6,7,
+ 8,9,10,11,0,13,14,15,16,17,
+ 18,19,20,21,22,23,24,25,26,27,
+ 28,29,30,31,32,33,34,35,36,37,
+ 38,39,40,41,42,43,0,1,2,3,
+ 4,5,0,7,0,88,89,3,0,0,
+ 1,2,3,4,5,6,7,8,9,10,
+ 11,69,13,14,15,16,17,18,19,20,
+ 21,22,23,24,25,26,27,28,29,30,
+ 31,32,33,34,35,36,37,38,39,40,
+ 41,42,43,0,0,46,0,1,2,3,
+ 4,5,6,7,8,9,10,11,60,13,
+ 14,15,16,17,18,19,20,21,22,23,
+ 24,25,26,27,28,29,30,31,32,33,
+ 34,35,36,37,38,39,40,41,42,43,
+ 0,0,46,0,1,2,3,4,5,6,
+ 7,8,9,10,11,0,13,14,15,16,
17,18,19,20,21,22,23,24,25,26,
27,28,29,30,31,32,33,34,35,36,
- 37,38,39,40,41,0,1,44,0,1,
- 2,3,4,5,6,7,8,9,10,11,
- 12,13,14,15,16,17,18,19,20,21,
- 22,23,24,25,26,27,28,29,30,31,
- 32,33,34,35,36,37,38,39,40,41,
+ 37,38,39,40,41,42,43,0,0,46,
0,1,2,3,4,5,6,7,8,9,
- 10,11,12,13,14,15,16,17,18,19,
+ 10,11,0,13,14,15,16,17,18,19,
20,21,22,23,24,25,26,27,28,29,
30,31,32,33,34,35,36,37,38,39,
- 40,41,0,1,2,3,4,5,6,7,
- 8,9,10,11,12,13,14,15,16,17,
- 18,19,20,21,22,23,24,25,26,27,
- 28,29,30,31,32,33,34,35,36,37,
- 38,39,0,0,1,0,1,0,3,0,
- 5,2,7,0,1,0,0,0,0,2,
- 2,0,0,2,0,63,0,3,0,0,
- 2,2,0,71,0,1,2,3,4,5,
- 6,7,8,9,10,11,12,13,14,15,
+ 40,41,42,43,0,0,46,0,1,2,
+ 3,4,5,6,7,8,9,10,11,0,
+ 13,14,15,16,17,18,19,20,21,22,
+ 23,24,25,26,27,28,29,30,31,32,
+ 33,34,35,36,37,38,39,40,41,42,
+ 43,0,0,46,0,1,2,3,4,5,
+ 6,7,8,9,10,11,0,13,14,15,
16,17,18,19,20,21,22,23,24,25,
26,27,28,29,30,31,32,33,34,35,
- 36,37,38,39,0,0,2,72,4,5,
- 62,7,58,9,10,11,12,72,86,87,
- 62,0,0,2,66,88,68,63,93,25,
- 72,94,11,12,88,71,0,1,93,3,
- 94,0,0,1,40,41,4,42,86,87,
- 45,46,47,48,49,50,51,52,53,54,
- 0,56,58,0,0,1,62,3,0,0,
- 66,0,68,69,0,0,0,0,0,1,
- 58,45,0,62,0,0,0,2,0,1,
- 86,87,88,89,90,91,92,55,0,95,
- 96,97,98,99,100,101,102,103,104,105,
- 106,107,108,109,110,111,0,0,2,55,
- 4,5,101,7,0,9,10,11,12,58,
- 55,0,58,55,58,114,0,66,0,8,
- 66,25,66,0,1,0,8,62,5,86,
- 87,63,68,8,86,87,40,41,0,1,
- 0,3,91,92,66,91,92,91,92,0,
- 88,2,86,87,58,58,94,0,62,2,
- 0,0,66,2,68,69,55,70,57,0,
- 66,2,68,55,58,57,0,0,55,0,
- 3,0,86,87,88,89,90,91,92,0,
- 65,95,96,97,98,99,100,101,102,103,
- 104,105,106,107,108,109,110,111,0,1,
- 2,3,4,5,6,7,8,9,10,11,
- 12,13,14,15,16,17,18,19,20,21,
- 22,23,24,25,26,27,28,29,30,31,
- 32,33,34,35,36,37,38,39,0,70,
- 0,0,2,93,0,66,0,1,0,1,
- 0,1,0,1,0,0,0,0,3,0,
- 0,63,0,1,2,3,4,5,6,7,
- 8,9,10,11,12,13,14,15,16,17,
- 18,19,20,21,22,23,24,25,26,27,
- 28,29,30,31,32,33,34,35,36,37,
- 38,55,62,55,66,55,68,55,0,68,
- 66,0,71,58,58,58,0,58,58,0,
- 66,2,0,1,62,0,1,2,3,4,
- 5,6,7,8,9,10,11,12,13,14,
- 15,16,17,18,19,20,21,22,23,24,
- 25,26,27,28,29,30,31,32,33,34,
- 35,36,37,38,0,1,2,3,4,5,
+ 36,37,38,39,40,41,42,43,0,0,
+ 46,0,1,2,3,4,5,6,7,8,
+ 9,10,11,12,13,14,15,16,17,18,
+ 19,20,21,22,23,24,25,26,27,28,
+ 29,30,31,32,33,34,35,36,37,38,
+ 39,40,41,0,0,1,2,0,4,0,
+ 6,0,8,0,3,12,12,0,1,2,
+ 3,4,5,12,7,64,0,1,2,0,
+ 1,2,6,72,0,1,2,3,4,5,
6,7,8,9,10,11,12,13,14,15,
16,17,18,19,20,21,22,23,24,25,
26,27,28,29,30,31,32,33,34,35,
- 36,37,38,39,93,0,0,2,2,0,
- 0,2,0,0,2,2,0,0,2,2,
- 0,0,2,115,0,0,2,2,0,1,
- 0,115,0,0,24,0,0,0,113,0,
- 1,2,3,4,5,6,7,8,9,10,
- 11,12,13,14,15,16,17,18,19,20,
- 21,22,23,24,25,26,27,28,29,30,
- 31,32,33,34,35,36,37,38,0,1,
- 2,3,4,5,6,7,8,9,10,11,
- 12,13,14,15,16,17,18,19,20,21,
- 22,23,24,25,26,27,28,29,30,31,
- 32,33,34,35,36,37,38,0,1,2,
- 3,4,5,6,7,8,9,10,11,12,
+ 36,37,38,39,40,41,69,66,75,75,
+ 69,70,69,66,58,0,75,0,1,2,
+ 3,4,5,0,7,0,0,4,64,95,
+ 4,0,6,0,8,4,72,0,1,2,
+ 3,4,5,6,7,8,9,10,11,0,
13,14,15,16,17,18,19,20,21,22,
23,24,25,26,27,28,29,30,31,32,
- 33,34,35,36,37,38,0,1,0,3,
- 0,0,0,0,8,0,0,0,0,13,
+ 33,34,35,36,37,38,39,40,41,42,
+ 43,0,1,2,3,4,5,6,7,8,
+ 9,10,11,0,13,14,15,16,17,18,
+ 19,20,21,22,23,24,25,26,27,28,
+ 29,30,31,32,33,34,35,36,37,38,
+ 39,40,41,42,43,0,1,2,3,4,
+ 5,6,7,8,9,10,11,12,13,14,
+ 15,16,17,18,19,20,21,22,23,24,
+ 25,26,27,28,29,30,31,32,33,34,
+ 35,36,37,38,39,40,0,1,2,3,
+ 4,5,6,7,8,9,10,11,0,13,
14,15,16,17,18,19,20,21,22,23,
- 0,0,0,0,24,0,0,0,1,2,
- 3,4,5,6,7,0,0,39,42,0,
- 0,45,46,47,48,49,50,51,52,53,
- 54,43,56,57,0,59,60,61,0,1,
- 58,3,55,43,63,0,8,0,63,42,
- 43,13,14,15,16,17,18,19,20,21,
- 22,23,55,58,0,58,0,66,68,66,
- 55,64,65,71,67,0,70,0,0,0,
- 42,74,0,45,46,47,48,49,50,51,
- 52,53,54,73,56,57,0,59,60,61,
- 0,1,2,3,4,5,6,7,0,1,
- 2,3,4,5,6,7,0,70,0,0,
- 0,0,58,0,58,0,0,1,2,3,
- 4,5,6,7,0,1,2,3,4,5,
- 6,7,42,43,69,68,0,69,69,115,
- 42,43,70,0,0,55,0,0,0,0,
- 0,0,0,55,64,65,70,67,42,43,
- 0,71,64,65,74,67,42,43,0,71,
- 0,55,74,63,68,0,0,69,69,55,
- 64,65,71,67,69,72,43,71,64,65,
- 74,67,0,0,58,71,0,0,74,0,
- 1,2,3,4,5,6,7,0,1,2,
- 3,4,5,6,7,68,70,66,70,69,
- 0,0,70,63,75,0,1,2,3,4,
- 5,6,7,0,1,2,3,4,5,6,
- 7,42,43,0,69,0,0,0,72,42,
- 43,0,0,0,55,63,63,0,0,0,
- 0,93,55,64,65,68,67,42,43,0,
- 71,64,65,74,67,42,43,24,0,0,
- 55,74,0,0,0,0,0,0,55,64,
- 65,0,67,0,0,0,0,64,65,74,
- 67,0,0,0,0,0,0,74,0,0,
- 0,0,69,0,69,0,120,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0
+ 24,25,26,27,28,29,30,31,32,33,
+ 34,35,36,37,38,39,40,41,0,1,
+ 2,3,4,5,121,7,0,0,0,3,
+ 12,3,0,1,2,3,4,5,0,7,
+ 64,13,14,5,0,1,2,0,1,2,
+ 115,0,1,2,3,4,5,6,7,8,
+ 9,10,11,45,13,14,15,16,17,18,
+ 19,20,21,22,23,24,25,26,27,28,
+ 29,30,31,32,33,34,35,36,37,38,
+ 39,40,41,0,66,0,3,0,5,6,
+ 0,8,58,10,11,58,13,14,0,1,
+ 2,0,4,0,6,4,8,0,1,2,
+ 27,4,5,12,7,12,0,1,2,0,
+ 4,103,6,4,8,42,43,0,1,2,
+ 0,4,0,6,116,8,0,1,2,0,
+ 4,9,6,60,8,60,45,60,45,66,
+ 60,0,69,70,71,0,1,2,0,4,
+ 5,0,7,12,3,0,0,1,2,0,
+ 0,88,89,90,91,92,93,94,0,60,
+ 97,98,99,100,101,102,103,104,105,106,
+ 107,108,109,110,111,112,113,0,0,67,
+ 3,3,5,6,0,8,0,10,11,0,
+ 13,14,0,1,2,0,1,2,60,0,
+ 1,2,0,0,27,60,75,69,0,1,
+ 2,9,4,0,69,0,1,2,60,42,
+ 43,102,0,1,2,12,95,69,0,0,
+ 0,93,94,114,42,43,0,60,93,94,
+ 12,42,43,66,66,0,69,70,71,60,
+ 5,93,94,58,70,47,0,71,45,3,
+ 58,59,73,0,0,88,89,90,91,92,
+ 93,94,69,58,97,98,99,100,101,102,
+ 103,104,105,106,107,108,109,110,111,112,
+ 113,0,1,2,3,4,5,6,7,8,
+ 9,10,11,75,13,14,15,16,17,18,
+ 19,20,21,22,23,24,25,26,27,28,
+ 29,30,31,32,33,34,35,36,37,38,
+ 39,40,69,70,0,1,2,0,1,2,
+ 0,0,1,2,4,0,1,2,3,4,
+ 5,6,7,8,9,10,11,66,13,14,
+ 15,16,17,18,19,20,21,22,23,24,
+ 25,26,27,28,29,30,31,32,33,34,
+ 35,36,37,38,39,40,41,0,1,2,
+ 3,4,5,6,7,8,9,10,11,58,
+ 13,14,15,16,17,18,19,20,21,22,
+ 23,24,25,26,27,28,29,30,31,32,
+ 33,34,35,36,37,38,39,40,0,1,
+ 2,3,4,5,6,7,8,9,10,11,
+ 0,13,14,15,16,17,18,19,20,21,
+ 22,23,24,25,26,27,28,29,30,31,
+ 32,33,34,35,36,37,38,39,40,0,
+ 1,2,3,4,5,6,7,8,9,10,
+ 11,0,13,14,15,16,17,18,19,20,
+ 21,22,23,24,25,26,27,28,29,30,
+ 31,32,33,34,35,36,37,38,39,40,
+ 0,1,2,0,4,0,3,0,0,9,
+ 0,4,0,3,0,15,16,17,18,19,
+ 20,21,22,23,24,25,0,0,0,0,
+ 0,0,4,0,0,0,0,0,12,0,
+ 69,12,12,12,44,0,12,47,48,49,
+ 50,51,52,53,54,55,56,57,0,59,
+ 0,61,62,63,0,1,2,60,4,0,
+ 12,45,0,9,45,70,4,0,70,15,
+ 16,17,18,19,20,21,22,23,24,25,
+ 0,1,2,3,4,5,6,7,8,70,
+ 70,0,12,72,70,75,72,74,44,73,
+ 9,47,48,49,50,51,52,53,54,55,
+ 56,57,0,59,0,61,62,63,0,60,
+ 72,0,60,0,44,45,12,0,1,2,
+ 3,4,5,6,7,8,0,70,58,12,
+ 60,0,0,0,3,65,3,67,68,58,
+ 59,0,0,1,2,3,4,5,6,7,
+ 8,0,82,0,12,0,0,0,0,3,
+ 58,44,45,0,0,0,3,41,60,0,
+ 0,60,3,60,0,58,0,0,0,75,
+ 0,3,65,3,67,68,44,45,0,72,
+ 0,1,2,3,4,5,6,7,8,82,
+ 58,60,12,26,0,73,0,65,0,67,
+ 68,60,0,0,72,0,1,2,3,4,
+ 5,6,7,8,82,70,73,12,71,71,
+ 0,0,26,3,44,45,71,0,0,0,
+ 3,3,3,73,0,69,0,73,58,0,
+ 0,0,0,0,0,65,0,67,68,44,
+ 45,0,72,0,1,2,3,4,5,6,
+ 7,8,82,58,0,12,0,73,26,71,
+ 65,117,67,68,71,0,0,72,0,1,
+ 2,3,4,5,6,7,8,82,0,0,
+ 12,70,0,0,0,117,0,44,45,0,
+ 60,0,0,0,0,71,0,71,0,0,
+ 0,58,0,0,0,0,0,0,65,117,
+ 67,68,44,45,0,72,0,1,2,3,
+ 4,5,6,7,8,82,58,0,12,0,
+ 0,0,0,65,0,67,68,0,0,0,
+ 0,0,1,2,3,4,5,6,7,8,
+ 82,122,0,12,0,0,0,0,0,0,
+ 44,45,0,0,0,0,0,0,0,0,
+ 0,0,0,0,58,0,0,0,0,0,
+ 0,65,0,67,68,44,45,0,0,0,
+ 0,0,0,0,0,0,0,0,82,58,
+ 0,0,0,0,0,0,65,0,67,68,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,82,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0
};
};
public final static byte termCheck[] = TermCheck.termCheck;
@@ -1475,380 +1530,412 @@ public class CPPExpressionStatementParserprs implements lpg.lpgjavaruntime.Parse
public interface TermAction {
public final static char termAction[] = {0,
- 5311,5292,5289,5289,5289,5289,5289,5289,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,5296,3231,1,1,1,1,1,
- 1,1,1,1,1,39,1,1,5349,1,
- 1,1,307,723,1384,3228,1,3169,5311,5346,
- 5617,5319,2022,1232,3737,3217,2628,2162,2207,3185,
- 3530,3209,3222,3206,3507,3203,5311,5292,5289,5289,
- 5289,5289,5289,5289,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,5296,
- 3231,1,1,1,1,1,1,1,1,1,
- 1,133,1,1,5311,1,1,1,2351,723,
- 1384,3228,5311,3169,1,5091,3108,5095,2022,1232,
- 3737,3217,2628,2162,2207,3185,3530,3209,3222,3206,
- 3507,3203,5311,5292,5289,5289,5289,5289,5289,5289,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,5296,3231,1,1,1,
- 1,1,1,1,1,1,1,135,1,1,
- 5311,1,1,1,4787,723,1384,3228,5311,3169,
- 1,5091,5253,5095,5259,1232,5256,3217,2628,2162,
- 2207,3185,3530,3209,3222,3206,3507,3203,5311,5292,
- 5289,5289,5289,5289,5289,5289,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,5296,3231,1,1,1,1,1,1,1,
- 1,1,1,136,1,1,137,1,1,1,
- 5311,723,1384,3228,923,3169,1,5091,3108,5095,
- 2022,1232,3737,3217,2628,2162,2207,3185,3530,3209,
- 3222,3206,3507,3203,5311,5292,5289,5289,5289,5289,
- 5289,5289,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,5296,3231,1,
- 1,1,1,1,1,1,1,1,1,5311,
- 1,1,927,1,1,1,5311,723,1384,3228,
- 923,3169,5311,5003,2291,784,2022,1232,3737,3217,
- 2628,2162,2207,3185,3530,3209,3222,3206,3507,3203,
- 5311,5292,5289,5289,5289,5289,5289,5289,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,5296,3231,1,1,1,1,1,
- 1,1,1,1,1,508,1,1,5039,1,
- 1,1,5311,723,1384,3228,4796,3169,5311,5003,
- 5311,784,2022,1232,3737,3217,2628,2162,2207,3185,
- 3530,3209,3222,3206,3507,3203,5311,5292,5289,5289,
- 5289,5289,5289,5289,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,5296,
- 3231,1,1,1,1,1,1,1,1,1,
- 1,139,1,1,5311,1,1,1,5311,723,
- 1384,3228,117,3169,38,5012,5311,3361,4806,1232,
- 1284,3217,2628,2162,2207,3185,3530,3209,3222,3206,
- 3507,3203,5311,5292,5289,5289,5289,5289,5289,5289,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,5296,3231,1,1,1,
- 1,1,1,1,1,1,1,134,1,1,
- 5311,1,1,1,2351,723,1384,3228,119,3169,
- 2256,3332,3253,3361,316,1232,3287,3217,2628,2162,
- 2207,3185,3530,3209,3222,3206,3507,3203,5311,5292,
- 5289,5289,5289,5289,5289,5289,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,5296,3231,1,1,1,1,1,1,1,
- 1,1,1,1209,1,1,5311,1,1,1,
- 5311,723,1384,3228,118,3169,5311,3332,3253,3361,
- 5311,1232,3406,3217,2628,2162,2207,3185,3530,3209,
- 3222,3206,3507,3203,5311,3188,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,5320,3231,1,
- 1,1,1,1,1,1,1,1,1,339,
- 1,1,221,1,1,1,160,723,1384,3228,
- 5311,3169,5311,3332,3253,222,5311,1232,131,3217,
- 2628,2162,2207,3185,3530,3209,3222,3206,3507,3203,
- 5311,5180,5180,5180,5180,5180,5180,5180,5311,5180,
- 5180,5180,5180,1,5565,5651,5652,5568,5651,5652,
- 5562,5569,5541,5567,5566,5563,5564,5565,5542,5320,
- 5568,5651,5652,5562,5569,5541,5567,5566,5563,5564,
- 3739,5542,5180,5180,1293,5180,5180,5180,5180,5180,
- 5180,5180,5180,5180,5180,120,5180,5311,5180,5311,
- 1707,5311,5180,5180,2381,591,5180,5311,5180,5180,
- 5180,5180,5180,5180,5311,5003,3108,784,2022,2463,
- 3737,5644,5311,2503,2475,164,5180,5180,5180,5180,
- 5180,5180,5180,5180,5180,5180,5180,5180,5180,5180,
- 5180,5180,5180,5180,5180,5180,5180,5180,5180,5180,
- 5180,5180,5180,5180,5180,5311,5289,5289,5289,5289,
- 5289,5289,5289,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,5305,5470,
- 1,1,1,1,1,1,1,1,1,1,
- 5317,1,1,453,1,1,1,5311,1,1,
- 1,1,1,1,1,1,1,1,1,1,
+ 5462,5428,5425,5425,5425,5425,5425,5425,5425,1,
+ 1,1,5438,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,5435,3541,1,1,1,
+ 1,1,1,1,1,1,1,1,116,1,
+ 138,1,1,1,721,2306,1,1947,3461,5462,
+ 5112,5109,5469,5503,1879,363,3523,3200,2178,3049,
+ 3463,3886,5462,3500,1101,3482,3761,3472,8,5447,
+ 5447,5447,5447,5447,5447,5447,5447,5447,5447,5447,
+ 5447,5447,5447,5447,5447,5447,5447,5447,5447,5447,
+ 5447,5447,5447,5447,5447,5447,5447,5447,5447,5447,
+ 5447,5447,5447,5447,5447,5447,5447,5447,5447,5447,
+ 5447,5447,5447,5447,5447,5447,5447,5447,5447,5447,
+ 5447,5447,5447,5447,5447,5447,1451,5447,3664,5447,
+ 5447,5447,5447,5447,3687,5447,5447,120,5462,2342,
+ 5447,4900,5447,3316,5447,5447,5447,5447,5447,5447,
+ 5824,5447,5447,5447,5447,5447,5462,5428,5425,5425,
+ 5425,5425,5425,5425,5425,1,1,1,5432,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 452,5470,1,1,1,1,1,1,1,1,
- 1,1,351,1,1,5024,1,1,1,5311,
+ 1,5435,3541,1,1,1,1,1,1,1,
+ 1,1,1,1,119,1,123,1,1,1,
+ 721,2306,5462,1947,3461,122,2850,592,3292,3268,
+ 1879,3316,3523,3200,2178,3049,3463,3886,5462,3500,
+ 1101,3482,3761,3472,5462,5428,5425,5425,5425,5425,
+ 5425,5425,5425,1,1,1,5432,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,5435,
+ 3541,1,1,1,1,1,1,1,1,1,
+ 1,1,118,1,3664,1,1,1,721,2306,
+ 3687,1947,3461,121,126,139,3292,3268,1879,3316,
+ 3523,3200,2178,3049,3463,3886,5462,3500,1101,3482,
+ 3761,3472,5462,5428,5425,5425,5425,5425,5425,5425,
+ 5425,1,1,1,5432,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,5027,5470,1,1,1,1,1,1,
- 1,1,1,1,1800,1,1,5311,1,1,
- 1,5311,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,5435,3541,1,
1,1,1,1,1,1,1,1,1,1,
+ 117,1,3664,1,1,1,721,2306,3687,1947,
+ 3461,142,795,2709,3292,3268,1879,293,3523,3200,
+ 2178,3049,3463,3886,2342,3500,1101,3482,3761,3472,
+ 5462,5428,5425,5425,5425,5425,5425,5425,5425,1,
+ 1,1,5432,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,102,5470,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,388,
- 1,1,1,5311,1,1,1,1,1,1,
+ 1,1,1,1,1,5435,3541,1,1,1,
+ 1,1,1,1,1,1,1,1,1951,1,
+ 3664,1,1,1,721,2306,3687,1947,3461,42,
+ 5462,5479,5480,5503,1879,3052,3523,3200,2178,3049,
+ 3463,3886,2272,3500,1101,3482,3761,3472,5462,5428,
+ 5425,5425,5425,5425,5425,5425,5425,1,1,1,
+ 5432,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,5435,3541,1,1,1,1,1,
+ 1,1,1,1,1,1,136,1,134,1,
+ 1,1,721,2306,2401,1947,3461,5462,5112,5109,
+ 5462,5503,1879,1134,3523,3200,2178,3049,3463,3886,
+ 5462,3500,1101,3482,3761,3472,5462,5428,5425,5425,
+ 5425,5425,5425,5425,5425,1,1,1,5432,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,4891,5470,1,1,
- 1,1,1,1,1,1,1,1,5311,1,
- 1,2608,1,1,1,5311,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
+ 1,5435,3541,1,1,1,1,1,1,1,
+ 1,1,1,1,137,1,140,1,1,1,
+ 721,2306,2401,1947,3461,2555,2526,5462,5479,5480,
+ 1879,375,3523,3200,2178,3049,3463,3886,454,3500,
+ 1101,3482,3761,3472,5462,5428,5425,5425,5425,5425,
+ 5425,5425,5425,1,1,1,5432,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,5311,5470,
1,1,1,1,1,1,1,1,1,1,
- 5311,1,1,2910,1,1,1,5311,1,1,
+ 1,1,1,1,1,1,1,1,1,5435,
+ 3541,1,1,1,1,1,1,1,1,1,
+ 1,1,1105,1,5133,1,1,1,721,2306,
+ 310,1947,3461,5462,5301,5298,2308,5462,1879,5771,
+ 3523,3200,2178,3049,3463,3886,453,3500,1101,3482,
+ 3761,3472,5462,5428,5425,5425,5425,5425,5425,5425,
+ 5425,1,1,1,5432,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,5435,3541,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1855,1,5136,1,1,1,721,2306,96,1947,
+ 3461,5142,5462,53,5301,5298,1879,5462,3523,3200,
+ 2178,3049,3463,3886,5466,3500,1101,3482,3761,3472,
+ 5462,3464,1,1,1,1,1,1,1,1,
+ 1,1,5472,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,5471,3541,1,1,1,
+ 1,1,1,1,1,1,1,1,130,1,
+ 224,1,1,1,721,2306,5462,1947,3461,398,
+ 5112,5109,40,5503,1879,5462,3523,3200,2178,3049,
+ 3463,3886,426,3500,1101,3482,3761,3472,5462,5291,
+ 5291,5291,5291,5291,5291,5291,5291,5465,5291,5291,
+ 5291,5291,5291,237,5719,30,5304,5722,5805,5806,
+ 5716,5723,5695,5721,5720,5717,5718,5696,125,1,
+ 5204,5200,5383,5208,5389,3720,5386,42,2850,592,
+ 5501,5472,5291,5291,5462,5291,5291,5291,5291,5291,
+ 5291,5291,5291,5291,5291,5291,795,2709,5291,41,
+ 5124,5121,5291,5462,5291,3916,826,5291,5291,5291,
+ 5291,5291,5291,5291,5471,5462,5112,5109,4465,870,
+ 1900,1365,2921,5798,5319,5319,5291,5291,5291,5291,
+ 5291,5291,5291,5291,5291,5291,5291,5291,5291,5291,
+ 5291,5291,5291,5291,5291,5291,5291,5291,5291,5291,
+ 5291,5291,5291,5291,5291,5462,5425,5425,5425,5425,
+ 5425,5425,5425,5425,1,1,1,5450,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 132,5470,1,1,1,1,1,1,1,1,
- 1,1,324,1,1,5311,1,1,1,39,
- 5021,3738,784,630,4108,3737,4130,978,4086,4064,
- 4174,4152,5574,5572,5581,5580,5576,5577,5575,5578,
- 5579,5582,5573,5331,2420,864,1112,5333,919,4387,
- 920,5334,5332,780,5327,5329,5330,5328,1251,5311,
- 5101,5565,5349,101,5568,5651,5652,5562,5569,5541,
- 5567,5566,5563,5564,1800,5542,5709,511,576,5710,
- 5711,388,39,5042,220,5349,5042,2463,5042,5644,
- 5042,5042,5042,5042,5311,2503,2475,5574,5572,5581,
- 5580,5576,5577,5575,5578,5579,5582,5573,315,5091,
- 3108,5095,2022,5274,3737,5271,5311,1,5091,5253,
- 5095,5259,2752,5256,5042,1974,5565,141,5311,5568,
- 5651,5652,5562,5569,5541,5567,5566,5563,5564,5042,
- 5542,439,1,5042,1,825,5018,5042,5018,5042,
- 5042,5042,5042,5042,387,35,5045,223,5036,5045,
- 5320,5045,5311,5045,5045,5045,5045,5042,5042,5042,
- 5042,5042,5042,5042,5042,5042,5042,5042,5042,5042,
- 5042,5042,5042,5042,5042,5042,5042,5042,5042,5042,
- 5042,5042,5042,5042,5042,5042,1758,5045,5036,5565,
- 5318,5311,5568,5651,5652,5562,5569,5541,5567,5566,
- 5563,5564,5048,5542,440,39,5045,5349,5311,5211,
- 5045,5208,5045,5045,5045,5045,5045,2218,140,1716,
- 1674,1632,1590,1548,1506,1464,1422,1380,1338,2652,
- 5045,5045,5045,5045,5045,5045,5045,5045,5045,5045,
- 5045,5045,5045,5045,5045,5045,5045,5045,5045,5045,
- 5045,5045,5045,5045,5045,5045,5045,5045,5045,5311,
- 5230,226,5226,226,226,226,226,1,5743,5744,
- 5745,5311,1,1,1,1,1,1,1,1,
- 1,1,1,1,5091,2695,5095,2022,5311,3737,
- 5311,5091,3108,5095,2022,5274,3737,5271,5311,5311,
- 5187,1,226,5721,1,1,1,1,1,1,
- 1,1,1,1,496,1,1,2256,1,1,
- 1,94,1,668,1,122,5223,5002,5223,226,
- 414,5311,1707,5806,2381,591,5311,5230,226,5226,
- 226,226,226,226,1,1800,4824,5311,9401,1,
+ 5450,5624,1,1,1,1,1,1,1,1,
+ 1,1,1,354,1,5462,1,1,1,5462,
1,1,1,1,1,1,1,1,1,1,
- 2030,1,5091,3108,5095,2022,4882,3737,5311,5187,
- 5318,4196,871,5311,5346,5743,5744,5745,1,226,
- 5721,1,1,1,1,1,1,1,1,1,
- 1,496,1,1,5311,1,1,1,97,39,
- 668,5349,5347,5268,315,5265,226,413,4196,871,
- 5806,39,5003,3738,784,630,4108,3737,4130,557,
- 4086,4064,4174,4152,5574,5572,5581,5580,5576,5577,
- 5575,5578,5579,5582,5573,5331,2420,864,1112,5333,
- 919,4387,920,5334,5332,780,5327,5329,5330,5328,
- 1251,2347,5743,5744,5745,5311,1,1,1,1,
+ 1,5462,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,5624,1,1,1,1,
+ 1,1,1,1,1,1,1,105,1,1814,
+ 1,1,1,5462,1,1,1,1,1,1,
+ 1,1,1,1,1,1709,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,5311,5320,5470,
- 5311,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,5462,5624,
1,1,1,1,1,1,1,1,1,1,
+ 1,327,1,5017,1,1,1,5462,1,1,
+ 1,1,1,1,1,1,1,1,1,5826,
1,1,1,1,1,1,1,1,1,1,
- 1,1,159,166,5470,5311,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
+ 1,1,721,5624,1,1,1,1,1,1,
+ 1,1,1,1,1,104,1,1814,1,1,
+ 1,5462,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,5311,166,5470,
- 5311,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,5462,5624,1,1,
+ 1,1,1,1,1,1,1,1,1,5462,
+ 1,1990,1,1,1,5462,1,1,1,1,
+ 1,1,1,1,1,1,1,3542,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,113,93,5470,5033,1,5091,3108,5095,
- 2022,5311,3737,369,5091,2695,5095,2022,1,3737,
- 1,348,5003,2695,784,2022,2463,3737,5644,45,
- 5196,533,166,5311,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
+ 3543,5624,1,1,1,1,1,1,1,1,
+ 1,1,1,5444,1,5462,1,1,1,5462,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1800,2030,5470,5311,5003,
- 5311,5349,1079,1800,5193,3058,348,39,2762,5349,
- 4218,2463,121,5644,5311,5003,4240,784,5052,5311,
- 3737,2381,591,50,5187,166,5311,1,1,1,
+ 1,5462,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,5462,5624,1,1,1,1,
+ 1,1,1,1,1,1,1,135,1,432,
+ 1,1,1,42,5112,5109,3034,870,2771,3549,
+ 2921,3572,1375,3518,3495,5462,3618,3595,5728,5726,
+ 5735,5734,5730,5731,5729,5732,5733,5736,5727,5485,
+ 927,680,776,5487,727,632,735,5488,5486,678,
+ 5481,5483,5484,5482,1254,5462,5893,5719,129,225,
+ 5722,5805,5806,5716,5723,5695,5721,5720,5717,5718,
+ 5696,342,5861,143,620,5862,5863,5462,5344,5344,
+ 229,5340,229,229,229,229,1,163,1,5348,
+ 5462,4963,1,1,1,1,1,1,1,1,
+ 1,1,1,5719,2555,2526,5722,5805,5806,5716,
+ 5723,5695,5721,5720,5717,5718,5696,5462,5462,5805,
+ 5806,1,229,5873,1,1,1,1,1,1,
+ 1,1,1,1,1,497,1,5462,1,1,
+ 1,2891,1278,40,5334,5334,795,2709,5334,415,
+ 229,1,5204,5200,4465,5208,1900,1298,2921,5958,
+ 5462,5344,5344,229,5340,229,229,229,229,1,
+ 319,5462,5392,2432,2272,1,1,1,1,1,
+ 1,1,1,1,1,1,351,5112,5109,2741,
+ 870,1900,1365,2921,5798,5895,5896,5897,5462,1,
+ 353,3386,3375,1580,1,229,5873,1,1,1,
+ 1,1,1,1,1,1,1,1,497,1,
+ 124,1,1,1,2045,1278,5462,5462,9857,9857,
+ 2850,592,414,229,5462,5112,5109,391,5503,223,
+ 5151,1209,5958,5151,5462,5151,5462,5151,5151,5151,
+ 5151,5151,1814,5462,5728,5726,5735,5734,5730,5731,
+ 5729,5732,5733,5736,5727,1814,1814,226,318,5204,
+ 5200,4465,5208,1900,5407,2921,5404,509,5895,5896,
+ 5897,5148,5151,5719,144,5501,5722,5805,5806,5716,
+ 5723,5695,5721,5720,5717,5718,5696,5151,1504,5462,
+ 48,5310,5310,5151,2434,52,5151,5151,5151,5151,
+ 5151,5719,5151,128,5722,5805,5806,5716,5723,5695,
+ 5721,5720,5717,5718,5696,5151,5151,5151,5151,5151,
+ 5151,5151,5151,5151,5151,5151,5151,5151,5151,5151,
+ 5151,5151,5151,5151,5151,5151,5151,5151,5151,5151,
+ 5151,5151,5151,5151,390,1771,227,5154,5307,5462,
+ 5154,5462,5154,2835,5154,5154,5154,5154,5154,372,
+ 5204,5200,2741,5208,1900,1,2921,1,5462,5112,
+ 5109,5462,870,5161,3797,2921,2233,5462,1728,1685,
+ 1642,1599,1556,1513,1470,1427,1384,1341,3377,5154,
+ 5719,795,2709,5722,5805,5806,5716,5723,5695,5721,
+ 5720,5717,5718,5696,5157,141,5462,5895,5896,5897,
+ 5154,5462,1752,5154,5154,5154,5154,5154,2608,5154,
+ 3791,4028,5462,5479,5480,1814,1000,1900,5462,2921,
+ 1062,5462,5154,5154,5154,5154,5154,5154,5154,5154,
+ 5154,5154,5154,5154,5154,5154,5154,5154,5154,5154,
+ 5154,5154,5154,5154,5154,5154,5154,5154,5154,5154,
+ 5154,5462,1,1,1,1,1,1,1,1,
+ 1,1,1,5472,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1800,997,
- 634,5311,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,2308,5471,5624,5462,1,
1,1,1,1,1,1,1,1,1,1,
+ 169,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,141,431,5470,5311,1,1,1,
1,1,1,1,1,1,1,1,1,1,
+ 1,1,5108,169,5624,5462,1,1,1,1,
+ 1,1,1,1,1,1,1,169,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,27,5741,
- 5470,1,5091,3738,5095,630,4108,3737,4130,5055,
- 4086,4064,4174,4152,5082,5088,5061,5064,5076,5073,
- 5079,5070,5067,5058,5085,5331,2420,864,1112,5333,
- 919,4387,920,5334,5332,780,5327,5329,5330,5328,
- 1251,39,39,5311,1823,5311,1823,4345,1,5091,
- 2695,5095,2022,2218,3737,5311,5311,5003,138,784,
- 5052,234,3737,5190,5205,2652,5205,512,5311,1,
+ 1,1,1,1,1,1,1,1,1,5462,
+ 169,5624,5462,1,1,1,1,1,1,1,
+ 1,1,1,1,169,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1800,1881,5470,5311,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,5311,2291,5470,5311,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 289,5603,5470,5311,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,36,5241,5470,5311,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 5311,5603,5470,5311,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,397,5346,5470,143,5003,
- 3738,784,630,4108,3737,4130,557,4086,4064,4174,
- 4152,5574,5572,5581,5580,5576,5577,5575,5578,5579,
- 5582,5573,5331,2420,864,1112,5333,919,4387,920,
- 5334,5332,780,5327,5329,5330,5328,1251,39,39,
- 1,5091,3738,5095,630,4108,3737,4130,5055,4086,
- 4064,4174,4152,5082,5088,5061,5064,5076,5073,5079,
- 5070,5067,5058,5085,5331,2420,864,1112,5333,919,
- 4387,920,5334,5332,780,5327,5329,5330,5328,1251,
- 39,39,39,5003,3738,784,630,4108,3737,4130,
- 557,4086,4064,4174,4152,5574,5572,5581,5580,5576,
- 5577,5575,5578,5579,5582,5573,5331,2420,864,1112,
- 5333,919,4387,920,5334,5332,780,5327,5329,5330,
- 5328,1251,123,5311,2820,1,5217,116,5214,1,
- 2463,4848,5644,5311,3405,1,115,5311,1,3731,
- 2762,5311,5311,4535,396,3705,5311,5039,1,5311,
- 2762,4565,127,5319,39,5003,3738,784,630,4108,
- 3737,4130,557,4086,4064,4174,4152,5574,5572,5581,
- 5580,5576,5577,5575,5578,5579,5582,5573,5331,2420,
- 864,1112,5333,919,4387,920,5334,5332,780,5327,
- 5329,5330,5328,1251,1,224,1336,365,5775,5769,
- 1800,5773,508,5767,5768,5798,5799,365,2624,2715,
- 1800,76,5311,3861,344,4218,344,3705,365,5776,
- 344,4240,5376,5377,4218,5319,431,39,365,5349,
- 4240,5311,37,5220,1628,1629,5220,5565,2624,2715,
- 5568,5651,5652,5562,5569,5541,5567,5566,5563,5564,
- 5311,5542,5778,126,397,5098,1167,5349,125,5311,
- 5779,128,5800,5777,130,37,129,5311,37,5220,
- 4837,5741,114,2251,364,350,124,2800,5311,3331,
- 5789,5788,5801,5770,5771,5794,5795,2108,5311,5792,
- 5793,5772,5774,5796,5797,5802,5782,5783,5784,5780,
- 5781,5790,5791,5786,5785,5787,5311,30,1336,39,
- 5775,5769,577,5773,5311,5767,5768,5798,5799,2585,
- 5347,1,2585,2026,2585,1066,5311,5015,1,5280,
- 5199,5776,5202,37,5220,307,5280,1800,3058,2624,
- 2715,3506,2685,5617,2624,2715,1628,1629,5311,5003,
- 5311,5349,2531,792,2447,2531,792,2531,792,5311,
- 4218,4889,2624,2715,5778,508,4240,5311,1167,4283,
- 360,5311,5779,4410,5800,5777,3050,421,5283,105,
- 3412,4411,2684,3050,4839,5283,5311,5311,5347,5311,
- 2975,5311,5789,5788,5801,5770,5771,5794,5795,5311,
- 1321,5792,5793,5772,5774,5796,5797,5802,5782,5783,
- 5784,5780,5781,5790,5791,5786,5785,5787,39,5003,
- 3738,784,630,4108,3737,4130,557,4086,4064,4174,
- 4152,5574,5572,5581,5580,5576,5577,5575,5578,5579,
- 5582,5573,5331,2420,864,1112,5333,919,4387,920,
- 5334,5332,780,5327,5329,5330,5328,1251,5311,1838,
- 322,5311,5262,5670,5311,2452,5311,5234,5311,5237,
- 47,5247,37,5220,5311,50,30,5311,1707,449,
- 41,3705,39,5003,3738,784,630,4108,3737,4130,
- 557,4086,4064,4174,4152,5574,5572,5581,5580,5576,
- 5577,5575,5578,5579,5582,5573,5331,2420,864,1112,
- 5333,919,4387,920,5334,5332,780,5327,5329,5330,
- 5328,5347,1800,5347,3415,5244,2684,5347,5311,955,
- 2464,1,5319,1707,5006,779,377,5009,5030,5311,
- 2466,3145,5311,8930,1925,39,5003,3738,784,630,
- 4108,3737,4130,557,4086,4064,4174,4152,5574,5572,
- 5581,5580,5576,5577,5575,5578,5579,5582,5573,5331,
- 2420,864,1112,5333,919,4387,920,5334,5332,780,
- 5327,5329,5330,5328,39,5003,3738,784,630,4108,
- 3737,4130,557,4086,4064,4174,4152,5574,5572,5581,
- 5580,5576,5577,5575,5578,5579,5582,5573,5331,2420,
- 864,1112,5333,919,4387,920,5334,5332,780,5327,
- 5329,5330,5328,1251,5672,279,5311,5277,4481,5311,
- 5311,4809,5311,5311,3305,3409,5311,5311,4543,3676,
- 5311,5311,4817,3359,5311,5311,3407,4907,5311,8930,
- 5311,3359,5311,5311,3452,5311,5311,5311,5317,39,
- 5003,4808,784,630,4108,3737,4130,557,4086,4064,
- 4174,4152,5574,5572,5581,5580,5576,5577,5575,5578,
- 5579,5582,5573,5331,2420,864,1112,5333,919,4387,
- 920,5334,5332,780,5327,5329,5330,5328,39,5003,
- 3738,784,630,4108,3737,4130,557,4086,4064,4174,
- 4152,5574,5572,5581,5580,5576,5577,5575,5578,5579,
- 5582,5573,5331,2420,864,1112,5333,919,4387,920,
- 5334,5332,780,5327,5329,5330,5328,39,5003,3738,
- 784,630,4108,3737,4130,557,4086,4064,4174,4152,
- 5574,5572,5581,5580,5576,5577,5575,5578,5579,5582,
- 5573,5331,2420,864,1112,5333,919,4387,920,5334,
- 5332,780,5327,5329,5330,5328,5311,5021,529,5349,
- 5311,5311,387,5311,815,5311,5311,49,405,5574,
- 5572,5581,5580,5576,5577,5575,5578,5579,5582,5573,
- 5311,5311,5311,5311,3531,1,425,1,5289,226,
- 5289,226,226,226,226,5311,5311,3121,5565,5311,
- 1,5568,5651,5652,5562,5569,5541,5567,5566,5563,
- 5564,5250,5542,5709,518,576,5710,5711,238,5173,
- 5184,5177,1058,5320,2653,5311,815,5311,3056,9518,
- 226,5164,5170,5143,5146,5158,5155,5161,5152,5149,
- 5140,5167,5286,508,5311,3277,5311,5818,4440,5761,
- 2916,1384,572,5319,3169,290,2655,288,372,370,
- 5128,5806,443,5119,5113,5110,5137,5116,5107,5122,
- 5125,5134,5131,3220,5104,5709,5311,576,5710,5711,
- 1,5289,226,5289,226,226,226,226,1,5289,
- 226,5289,226,226,226,226,423,5712,417,503,
- 5311,1,3219,1,3312,501,1,5289,226,5289,
- 226,226,226,226,1,5289,226,5289,226,226,
- 226,226,9518,226,1936,1208,5,1121,1163,3359,
- 9518,226,657,178,5311,5286,5311,444,5311,5311,
- 35,5311,5311,5286,1384,572,2068,3169,9518,226,
- 1,218,1384,572,5806,3169,9518,226,1,218,
- 5311,5286,5806,723,1366,5311,1,2124,4876,5286,
- 1384,572,5319,3169,4877,5318,5299,217,1384,572,
- 5806,3169,5311,5311,37,218,188,314,5806,1,
- 5289,226,5289,226,226,226,226,1,5289,226,
- 5289,226,226,226,226,2839,5492,3666,3571,1581,
- 5311,5311,5491,3515,3433,1,5289,226,5289,226,
- 226,226,226,1,5289,226,5289,226,226,226,
- 226,9518,226,5311,1581,505,5311,5311,525,9518,
- 226,5311,5311,1,5286,3566,5302,5311,5311,5311,
- 5311,3651,5286,1384,572,4457,3169,9518,226,5311,
- 218,1384,572,5806,3169,9518,226,3163,5311,5311,
- 5286,5806,5311,5311,5311,5311,5311,5311,5286,1384,
- 572,5311,3169,5311,5311,5311,5311,1384,572,5806,
- 3169,5311,5311,5311,5311,5311,5311,5806,5311,5311,
- 5311,5311,1894,5311,664,5311,5308
+ 1,1,1,1,1,1,5462,5462,5624,5462,
+ 5204,5200,4465,5208,1900,5407,2921,5404,5462,351,
+ 42,42,3375,5503,1,1365,5462,5798,1,5204,
+ 5200,2741,5208,1900,5462,2921,167,169,5462,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 169,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,2045,3794,5624,1814,3919,2617,5462,5112,
+ 5109,5462,870,5161,1814,2921,5462,5479,5480,167,
+ 5462,5462,1,1,1,1,1,1,1,1,
+ 1,1,1,169,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,2029,575,5462,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 3474,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,5462,5462,5624,5462,1,1,1,1,
+ 1,1,1,1,1,1,1,127,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,5462,
+ 3901,5624,1,5204,5200,3034,5208,2771,3549,2921,
+ 3572,5164,3518,3495,5462,3618,3595,5191,5197,5170,
+ 5173,5185,5182,5188,5179,5176,5167,5194,5485,927,
+ 680,776,5487,727,632,735,5488,5486,678,5481,
+ 5483,5484,5482,1254,42,42,1,5204,5200,4465,
+ 5208,1900,5462,2921,5462,795,2709,3892,5462,5462,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,513,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,5462,5462,5624,5462,1,1,1,
+ 1,1,1,1,1,1,1,1,4954,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 5462,5462,5624,5462,1,1,1,1,1,1,
+ 1,1,1,1,1,5462,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,5462,5462,5624,
+ 5462,1,1,1,1,1,1,1,1,1,
+ 1,1,5462,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,5462,5462,5624,5462,1,1,
+ 1,1,1,1,1,1,1,1,1,5462,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,5462,5462,5624,5462,1,1,1,1,1,
+ 1,1,1,1,1,1,5462,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,5462,5462,
+ 5624,42,5112,5109,3034,870,2771,3549,2921,3572,
+ 578,3518,3495,5470,3618,3595,5728,5726,5735,5734,
+ 5730,5731,5729,5732,5733,5736,5727,5485,927,680,
+ 776,5487,727,632,735,5488,5486,678,5481,5483,
+ 5484,5482,1254,5462,1,5331,5331,5462,5328,5462,
+ 1365,1,5798,5462,3375,5468,368,1,5204,5200,
+ 2741,5208,1900,347,2921,4029,40,5334,5334,292,
+ 5479,5480,1752,5469,42,5112,5109,3034,870,2771,
+ 3549,2921,3572,578,3518,3495,5470,3618,3595,5728,
+ 5726,5735,5734,5730,5731,5729,5732,5733,5736,5727,
+ 5485,927,680,776,5487,727,632,735,5488,5486,
+ 678,5481,5483,5484,5482,1254,2636,1814,5467,368,
+ 347,347,2645,1814,5501,5462,347,1,5204,5200,
+ 5383,5208,5389,1,5386,5462,42,391,4029,368,
+ 5503,5462,1365,5462,5798,3085,5469,146,5112,5109,
+ 3034,870,2771,3549,2921,3572,578,3518,3495,5462,
+ 3618,3595,5728,5726,5735,5734,5730,5731,5729,5732,
+ 5733,5736,5727,5485,927,680,776,5487,727,632,
+ 735,5488,5486,678,5481,5483,5484,5482,1254,42,
+ 42,1,5204,5200,3034,5208,2771,3549,2921,3572,
+ 5164,3518,3495,162,3618,3595,5191,5197,5170,5173,
+ 5185,5182,5188,5179,5176,5167,5194,5485,927,680,
+ 776,5487,727,632,735,5488,5486,678,5481,5483,
+ 5484,5482,1254,42,42,42,5112,5109,3034,870,
+ 2771,3549,2921,3572,578,3518,3495,5466,3618,3595,
+ 5728,5726,5735,5734,5730,5731,5729,5732,5733,5736,
+ 5727,5485,927,680,776,5487,727,632,735,5488,
+ 5486,678,5481,5483,5484,5482,42,5112,5109,3034,
+ 870,2771,3549,2921,3572,578,3518,3495,5462,3618,
+ 3595,5728,5726,5735,5734,5730,5731,5729,5732,5733,
+ 5736,5727,5485,927,680,776,5487,727,632,735,
+ 5488,5486,678,5481,5483,5484,5482,1254,1,5204,
+ 5200,4465,5208,1900,534,2921,5462,5462,79,4528,
+ 318,2014,1,5204,5200,4465,5208,1900,5462,2921,
+ 4029,5530,5531,3728,40,5334,5334,5462,5354,5351,
+ 5465,42,5112,5109,3034,870,2771,3549,2921,3572,
+ 578,3518,3495,318,3618,3595,5728,5726,5735,5734,
+ 5730,5731,5729,5732,5733,5736,5727,5485,927,680,
+ 776,5487,727,632,735,5488,5486,678,5481,5483,
+ 5484,5482,1254,1,2948,5462,540,33,5927,5921,
+ 5462,5925,3128,5919,5920,5501,5950,5951,440,1,
+ 1,38,1,5462,5130,5145,5130,5462,5112,5109,
+ 5928,870,1900,5145,2921,5472,441,42,42,397,
+ 5503,579,5325,5148,5322,1459,1510,97,1,1,
+ 5462,1,310,5337,1148,5337,100,42,42,144,
+ 5503,5771,5401,5930,5398,4962,5145,5115,5471,908,
+ 773,1,5931,5952,5929,5462,5112,5109,131,870,
+ 1900,5462,2921,368,4690,133,39,5368,5365,5462,
+ 5462,5941,5940,5953,5922,5923,5946,5947,132,509,
+ 5944,5945,5924,5926,5948,5949,5954,5934,5935,5936,
+ 5932,5933,5942,5943,5938,5937,5939,5462,325,1762,
+ 540,5395,5927,5921,512,5925,373,5919,5920,33,
+ 5950,5951,5462,5479,5480,5462,5361,5357,2668,5462,
+ 5301,5298,1,5462,5928,2668,368,5127,432,42,
+ 42,5413,5503,406,5313,50,5374,5374,2668,1459,
+ 1510,2233,398,5479,5480,5377,368,5316,1,5462,
+ 5462,2612,2584,3377,3641,1153,5462,5930,2612,2584,
+ 5468,3641,1153,908,1814,5462,5931,5952,5929,509,
+ 4883,2612,2584,5501,827,5893,5462,1166,5380,3923,
+ 3381,5416,422,5462,5462,5941,5940,5953,5922,5923,
+ 5946,5947,5970,5371,5944,5945,5924,5926,5948,5949,
+ 5954,5934,5935,5936,5932,5933,5942,5943,5938,5937,
+ 5939,42,5112,5109,3034,870,2771,3549,2921,3572,
+ 578,3518,3495,5467,3618,3595,5728,5726,5735,5734,
+ 5730,5731,5729,5732,5733,5736,5727,5485,927,680,
+ 776,5487,727,632,735,5488,5486,678,5481,5483,
+ 5484,5482,3764,4028,5462,9659,9594,5462,9659,9594,
+ 5462,40,5334,5334,3158,42,5112,5109,3034,870,
+ 2771,3549,2921,3572,578,3518,3495,1332,3618,3595,
+ 5728,5726,5735,5734,5730,5731,5729,5732,5733,5736,
+ 5727,5485,927,680,776,5487,727,632,735,5488,
+ 5486,678,5481,5483,5484,5482,1254,42,5112,5109,
+ 4901,870,2771,3549,2921,3572,578,3518,3495,5501,
+ 3618,3595,5728,5726,5735,5734,5730,5731,5729,5732,
+ 5733,5736,5727,5485,927,680,776,5487,727,632,
+ 735,5488,5486,678,5481,5483,5484,5482,42,5112,
+ 5109,3034,870,2771,3549,2921,3572,578,3518,3495,
+ 5462,3618,3595,5728,5726,5735,5734,5730,5731,5729,
+ 5732,5733,5736,5727,5485,927,680,776,5487,727,
+ 632,735,5488,5486,678,5481,5483,5484,5482,42,
+ 5112,5109,3034,870,2771,3549,2921,3572,578,3518,
+ 3495,5462,3618,3595,5728,5726,5735,5734,5730,5731,
+ 5729,5732,5733,5736,5727,5485,927,680,776,5487,
+ 727,632,735,5488,5486,678,5481,5483,5484,5482,
+ 5462,5112,5109,5462,5503,367,4217,53,291,861,
+ 108,5480,5462,4671,5462,5728,5726,5735,5734,5730,
+ 5731,5729,5732,5733,5736,5727,181,5462,5462,5462,
+ 5462,5462,3229,1,5462,5462,5462,5462,5441,5462,
+ 5913,5472,5468,5470,5719,5462,5470,5722,5805,5806,
+ 5716,5723,5695,5721,5720,5717,5718,5696,1,5861,
+ 5462,620,5862,5863,241,5284,5280,5480,5288,450,
+ 5419,5441,53,861,5471,3040,5479,424,2769,5271,
+ 5277,5250,5253,5265,5262,5268,5259,5256,5247,5274,
+ 1,5425,5425,229,5425,229,229,229,229,4443,
+ 4984,1,229,5469,957,5467,5469,2762,5235,5864,
+ 5413,5226,5220,5217,5244,5223,5214,5229,5232,5241,
+ 5238,5211,5462,5861,1,620,5862,5863,44,5118,
+ 5469,390,5479,1,9859,229,526,1,5425,5425,
+ 229,5425,229,229,229,229,530,2386,5422,5453,
+ 3545,5462,444,282,2296,2306,5410,823,3461,3381,
+ 5416,5462,1,5425,5425,229,5425,229,229,229,
+ 229,5462,5958,5462,5453,445,5462,418,504,4687,
+ 3187,9859,229,5462,5462,502,4909,3407,5139,5462,
+ 5462,5295,3577,509,5462,5422,5462,5462,5462,526,
+ 5462,4281,2306,4322,823,3461,9859,229,380,221,
+ 1,5425,5425,229,5425,229,229,229,229,5958,
+ 5422,2758,5456,3371,5462,788,5462,2306,38,823,
+ 3461,3026,519,5462,221,1,5425,5425,229,5425,
+ 229,229,229,229,5958,2814,2084,5453,2139,4964,
+ 5462,317,3218,4129,9859,229,4974,5462,5462,5462,
+ 4931,4363,5039,5646,5462,4064,506,3927,5422,191,
+ 2,5462,1,5462,5462,2306,5462,823,3461,9859,
+ 229,5462,220,1,5425,5425,229,5425,229,229,
+ 229,229,5958,5422,5462,5453,5462,5645,3411,1805,
+ 2306,3718,823,3461,1805,5462,5462,221,1,5425,
+ 5425,229,5425,229,229,229,229,5958,5462,5462,
+ 229,3358,5462,5462,5462,3718,5462,9859,229,5462,
+ 40,5462,5462,5462,5462,1908,5462,660,5462,5462,
+ 5462,5422,5462,5462,5462,5462,5462,5462,2306,3718,
+ 823,3461,9859,229,5462,221,1,5425,5425,229,
+ 5425,229,229,229,229,5958,5422,5462,229,5462,
+ 5462,5462,5462,2306,5462,823,3461,5462,5462,5462,
+ 5462,1,5425,5425,229,5425,229,229,229,229,
+ 5958,5459,5462,229,5462,5462,5462,5462,5462,5462,
+ 9859,229,5462,5462,5462,5462,5462,5462,5462,5462,
+ 5462,5462,5462,5462,5422,5462,5462,5462,5462,5462,
+ 5462,2306,5462,823,3461,9859,229,5462,5462,5462,
+ 5462,5462,5462,5462,5462,5462,5462,5462,5958,5422,
+ 5462,5462,5462,5462,5462,5462,2306,5462,823,3461,
+ 5462,5462,5462,5462,5462,5462,5462,5462,5462,5462,
+ 5462,5462,5462,5958
};
};
public final static char termAction[] = TermAction.termAction;
@@ -1856,59 +1943,59 @@ public class CPPExpressionStatementParserprs implements lpg.lpgjavaruntime.Parse
public interface Asb {
public final static char asb[] = {0,
- 1023,6,1020,226,5,13,783,566,566,566,
- 566,75,783,360,566,829,360,1060,209,1062,
- 227,227,227,227,227,227,227,227,227,976,
- 982,987,984,991,989,996,994,998,997,999,
- 78,1000,226,209,47,47,47,47,126,85,
- 19,358,47,17,450,360,360,19,859,360,
- 450,450,442,210,900,46,650,76,268,274,
- 209,960,960,692,692,85,1023,227,227,227,
- 227,227,227,227,227,227,227,227,227,227,
- 227,227,227,227,227,227,226,226,226,226,
- 226,226,226,226,226,226,226,1023,227,450,
- 450,898,898,898,898,186,450,19,824,947,
- 958,551,958,547,958,1,958,942,958,958,
- 75,126,17,17,19,227,824,277,507,459,
- 458,319,75,1062,17,46,226,264,649,450,
- 263,126,265,263,450,17,984,984,982,982,
- 982,989,989,989,989,987,987,994,991,991,
- 997,996,998,576,999,783,783,783,783,126,
- 126,898,368,897,358,126,354,143,126,550,
- 186,549,269,551,544,126,126,126,186,898,
- 442,17,1014,450,509,511,126,650,227,47,
- 980,408,450,76,126,126,265,650,226,1023,
- 1023,1023,1023,783,783,210,827,354,143,550,
- 270,550,186,550,544,544,126,186,126,450,
- 602,452,601,511,186,264,450,980,824,649,
- 126,76,264,450,450,450,450,85,85,354,
- 353,555,126,143,576,187,122,568,143,550,
- 550,466,126,544,555,553,554,126,578,226,
- 599,599,128,128,126,505,824,473,450,126,
- 981,981,980,1023,408,266,76,450,450,354,
- 650,566,263,587,569,260,783,557,469,126,
- 555,227,126,578,226,226,511,126,650,450,
- 509,452,578,330,85,227,17,126,266,264,
- 157,264,550,550,260,1019,824,126,560,227,
- 576,136,466,74,126,598,511,578,450,17,
- 126,1020,157,264,550,551,75,569,260,649,
- 227,227,75,598,450,598,897,566,8,8,
- 1020,551,191,557,126,783,126,783,591,598,
- 157,699,157,896,896,605,192,75,126,85,
- 126,512,591,317,655,776,783,2,734,157,
- 47,47,605,191,576,227,576,1020,783,783,
- 783,192,783,126,741,1020,1020,776,126,551,
- 190,450,449,593,612,898,776,317,698,551,
- 607,551,75,897,140,783,576,192,209,209,
- 208,610,209,1020,1020,776,406,605,47,593,
- 699,698,699,1020,135,1019,450,698,698,75,
- 698,126,542,473,450,260,450,741,1020,783,
- 450,605,698,226,786,260,1020,555,698,698,
- 126,698,126,8,450,450,343,192,406,192,
- 1020,741,1023,192,189,555,450,785,555,126,
- 555,1020,896,551,551,933,226,190,1022,1020,
- 450,785,1020,263,192,450,1022,1020,554,192,
- 450,785,192
+ 1081,49,773,820,47,51,909,554,554,554,
+ 554,114,909,964,554,410,964,1118,803,1120,
+ 821,821,821,821,821,821,821,821,821,729,
+ 735,740,737,744,742,749,747,751,750,752,
+ 169,753,820,803,86,86,86,86,860,176,
+ 58,961,86,294,44,964,964,58,441,964,
+ 44,44,35,804,648,85,595,116,243,250,
+ 803,712,712,949,949,176,1081,821,821,821,
+ 821,821,821,821,821,821,821,821,821,821,
+ 821,821,821,821,821,821,820,820,820,820,
+ 820,820,820,820,820,820,820,1081,821,44,
+ 44,480,480,480,480,165,44,58,1073,699,
+ 710,537,710,532,710,534,710,694,710,710,
+ 114,860,294,294,58,821,1073,253,371,361,
+ 360,307,114,1120,294,85,820,858,594,44,
+ 857,860,859,857,44,294,737,737,735,735,
+ 735,742,742,742,742,740,740,747,744,744,
+ 750,749,751,1031,752,909,909,909,909,860,
+ 860,480,973,479,961,860,957,121,860,247,
+ 165,234,245,537,238,860,860,860,165,480,
+ 35,294,767,44,373,375,860,595,821,86,
+ 733,1,44,116,860,860,859,595,820,1081,
+ 1081,1081,1081,909,909,804,1077,957,121,247,
+ 246,247,165,247,238,238,860,165,860,44,
+ 365,353,364,375,165,858,44,733,1073,594,
+ 860,116,858,44,44,44,44,176,176,957,
+ 956,541,860,121,1031,167,214,1021,121,247,
+ 247,1013,860,238,541,539,540,860,297,820,
+ 362,362,221,221,860,369,1073,497,44,860,
+ 734,734,733,1081,1,219,116,44,44,957,
+ 595,554,857,343,1023,854,909,544,1017,860,
+ 541,821,860,297,820,820,375,860,595,44,
+ 373,353,297,318,176,821,294,860,219,858,
+ 136,858,247,247,854,772,1073,860,547,821,
+ 1031,229,1013,113,860,489,375,297,44,294,
+ 860,773,136,858,247,537,114,1023,854,594,
+ 821,821,114,489,44,489,479,554,347,347,
+ 773,537,784,544,860,909,860,909,482,489,
+ 136,604,136,478,478,530,785,114,860,176,
+ 860,376,482,601,911,900,909,535,640,136,
+ 86,86,530,784,1031,821,1031,773,909,909,
+ 909,785,909,860,865,773,773,900,860,537,
+ 783,44,43,484,556,480,900,601,603,537,
+ 691,537,114,479,118,909,776,1031,785,803,
+ 803,801,863,803,773,773,900,1011,530,86,
+ 484,604,603,604,773,228,772,44,603,603,
+ 114,603,860,408,497,44,854,44,865,773,
+ 909,44,530,603,820,1035,854,773,541,603,
+ 603,860,603,860,347,44,44,331,785,1011,
+ 785,773,865,1081,785,782,541,44,1033,541,
+ 860,541,773,478,537,537,681,820,783,1079,
+ 773,44,1033,773,857,785,44,1079,773,540,
+ 785,44,1033,785
};
};
public final static char asb[] = Asb.asb;
@@ -1916,113 +2003,119 @@ public class CPPExpressionStatementParserprs implements lpg.lpgjavaruntime.Parse
public interface Asr {
public final static byte asr[] = {0,
- 3,1,63,0,43,119,0,66,69,68,
- 1,0,70,72,43,68,113,0,26,40,
- 27,28,41,6,29,30,31,32,39,33,
- 34,35,36,37,24,11,12,7,5,9,
- 10,4,25,66,38,2,48,13,14,57,
- 46,15,59,49,42,16,50,51,17,18,
- 52,53,19,20,54,60,56,8,61,21,
- 22,47,23,45,1,3,0,66,70,93,
- 68,113,71,43,72,13,14,26,40,15,
- 27,28,16,17,18,41,29,19,20,30,
- 31,32,39,33,34,21,22,23,35,36,
- 37,24,2,11,12,7,5,9,10,25,
- 38,6,4,3,8,1,0,73,63,66,
- 70,93,72,62,2,68,43,69,0,67,
- 65,115,74,6,116,117,118,64,2,7,
- 5,4,70,71,43,44,48,13,14,57,
- 46,15,59,49,42,16,50,51,17,18,
- 52,53,19,20,54,60,56,8,61,21,
- 45,22,47,23,3,1,55,0,115,120,
- 71,73,64,65,67,76,78,84,82,75,
- 80,81,83,85,63,77,79,43,44,59,
- 57,60,61,48,53,54,42,52,51,45,
- 49,46,47,50,56,39,40,41,8,27,
- 31,29,26,34,14,23,13,19,17,18,
- 20,21,16,15,22,35,38,36,37,24,
- 33,28,32,11,12,9,10,25,30,7,
- 5,2,3,6,1,4,0,43,3,58,
- 63,70,0,58,3,0,40,41,113,2,
- 8,27,31,29,26,34,14,23,13,19,
- 17,18,20,21,16,15,22,35,38,36,
- 37,33,28,32,4,6,3,11,12,7,
- 5,9,10,25,30,1,24,0,13,14,
- 15,16,17,18,19,20,21,22,23,48,
- 46,49,42,50,51,52,53,54,56,45,
- 47,43,72,6,1,62,2,7,5,4,
- 3,0,39,46,6,47,4,1,3,73,
- 63,70,93,113,72,71,43,62,2,114,
- 94,101,88,11,12,7,5,9,10,89,
- 90,86,87,58,91,92,95,96,97,98,
- 99,100,112,102,103,104,105,106,107,108,
- 109,110,111,66,68,69,0,94,88,9,
- 10,89,90,86,87,58,91,92,95,96,
- 97,98,99,100,112,70,93,69,102,103,
- 104,105,106,107,108,109,110,111,113,71,
- 43,66,1,7,5,3,2,62,68,72,
- 0,7,5,6,4,3,1,2,66,93,
- 69,68,72,62,0,1,45,3,116,117,
- 118,0,48,13,14,57,46,15,59,49,
- 42,16,50,51,17,18,52,53,19,20,
- 54,60,56,8,61,21,45,22,47,23,
- 1,3,93,0,4,6,2,62,5,7,
- 93,48,13,14,46,15,59,49,42,16,
- 50,51,17,18,52,53,19,20,54,60,
- 56,8,61,21,45,22,47,23,1,3,
- 72,57,0,1,71,0,55,1,3,70,
- 63,0,69,68,71,0,63,68,0,70,
- 62,2,69,68,43,58,0,43,4,6,
- 2,1,3,5,7,70,0,46,39,47,
- 66,93,69,68,72,0,63,70,73,0,
- 46,47,73,2,63,70,43,39,66,69,
- 68,72,93,0,115,0,63,69,0,75,
- 0,67,48,13,14,57,46,15,59,49,
- 74,42,16,50,51,17,18,52,65,53,
- 19,20,54,60,56,8,61,21,64,45,
- 22,47,23,2,7,3,43,63,5,6,
- 1,4,55,0,14,57,46,15,59,49,
- 16,50,51,17,18,52,53,19,20,54,
- 60,56,8,61,21,45,22,47,23,13,
- 48,2,7,5,43,64,65,67,74,42,
- 58,6,3,55,4,1,0,71,14,57,
- 46,15,59,49,16,50,51,17,18,52,
- 53,19,20,54,60,56,61,21,45,22,
- 47,23,13,48,2,7,5,43,64,67,
- 74,42,55,6,1,4,3,8,65,0,
- 13,14,26,40,15,27,28,16,17,18,
- 41,29,19,20,30,31,32,39,33,34,
- 8,21,22,23,35,36,37,24,11,12,
- 9,10,25,38,44,7,5,43,4,6,
- 1,3,2,0,71,40,41,39,11,12,
- 9,10,4,25,30,2,6,35,38,36,
- 37,24,33,28,32,14,23,13,19,17,
- 18,20,21,16,15,22,8,27,31,29,
- 26,34,63,1,7,3,5,0,48,13,
- 14,57,46,15,59,49,42,16,50,51,
- 17,18,52,53,19,20,54,60,56,8,
- 61,21,45,22,47,23,1,3,41,40,
- 9,10,5,89,90,97,7,98,4,25,
- 58,105,106,102,103,104,110,109,111,87,
- 86,107,108,95,96,91,92,99,100,11,
- 12,88,101,2,62,69,68,66,0,40,
- 41,11,12,9,10,25,30,35,38,36,
- 37,24,33,28,32,14,23,13,19,17,
- 18,20,21,16,15,22,8,27,31,29,
- 26,34,7,5,2,62,4,6,1,3,
- 0,8,59,57,60,61,14,23,13,19,
- 17,18,20,21,16,15,22,73,63,3,
- 4,1,47,45,56,54,53,6,52,51,
- 50,42,49,46,48,114,101,11,12,62,
- 2,94,88,5,89,90,9,10,87,86,
- 58,91,92,95,96,7,97,98,99,66,
- 93,72,69,102,103,104,105,106,107,108,
- 109,110,111,70,113,71,100,112,68,43,
- 0,72,13,14,26,15,27,28,16,17,
- 18,29,19,20,30,31,32,39,33,34,
- 8,21,22,23,35,36,37,24,2,11,
- 12,7,5,9,10,25,3,38,44,4,
- 6,1,41,40,0
+ 96,90,10,11,91,92,88,89,60,93,
+ 94,97,98,99,100,101,102,114,73,95,
+ 71,104,105,106,107,108,109,110,111,112,
+ 113,115,72,45,69,1,2,8,6,4,
+ 3,66,70,75,12,0,12,45,121,0,
+ 12,73,115,75,45,70,0,28,42,29,
+ 30,43,7,31,32,33,34,41,35,36,
+ 37,38,39,26,13,14,8,6,10,11,
+ 5,27,69,40,3,50,15,16,59,48,
+ 17,61,51,44,18,52,53,19,20,54,
+ 55,21,22,56,62,57,9,63,23,24,
+ 49,25,47,1,2,4,0,68,67,117,
+ 82,7,118,119,120,65,12,3,8,6,
+ 5,73,72,45,46,50,15,16,59,48,
+ 17,61,51,44,18,52,53,19,20,54,
+ 55,21,22,56,62,57,9,63,23,47,
+ 24,49,25,4,1,2,58,0,69,73,
+ 95,70,115,72,45,12,75,15,16,28,
+ 42,17,29,30,18,19,20,43,31,21,
+ 22,32,33,34,41,35,36,23,24,25,
+ 37,38,39,26,3,13,14,8,6,10,
+ 11,27,40,7,1,2,4,9,5,0,
+ 74,64,69,73,95,75,66,3,12,70,
+ 45,71,0,4,64,73,0,1,2,12,
+ 72,0,12,45,4,60,64,73,0,60,
+ 4,0,42,43,3,9,29,33,31,28,
+ 36,16,25,15,21,19,20,22,23,18,
+ 17,24,37,40,38,39,26,35,30,34,
+ 5,7,4,13,14,8,6,10,11,27,
+ 32,1,2,115,12,0,48,41,49,12,
+ 69,95,71,70,75,0,15,16,17,18,
+ 19,20,21,22,23,24,25,50,48,51,
+ 44,52,53,54,55,56,57,47,49,45,
+ 12,75,7,1,2,66,3,8,6,5,
+ 4,0,64,73,74,0,69,71,70,1,
+ 2,0,8,6,7,5,4,1,2,3,
+ 66,69,71,70,12,75,95,0,5,7,
+ 3,66,6,8,95,50,15,16,48,17,
+ 61,51,44,18,52,53,19,20,54,55,
+ 21,22,56,62,57,9,63,23,47,24,
+ 49,25,1,2,4,75,12,59,0,50,
+ 15,16,59,48,17,61,51,44,18,52,
+ 53,19,20,54,55,21,22,56,62,57,
+ 9,63,23,47,24,49,25,1,2,4,
+ 43,42,10,11,6,91,92,99,8,100,
+ 5,27,60,107,108,104,105,106,112,111,
+ 113,89,88,109,110,97,98,93,94,101,
+ 102,13,14,90,103,3,66,71,70,69,
+ 0,48,49,74,3,64,73,45,41,12,
+ 69,95,71,70,75,0,50,15,16,59,
+ 48,17,61,51,44,18,52,53,19,20,
+ 54,55,21,22,56,62,57,9,63,23,
+ 47,24,49,25,1,2,4,95,0,117,
+ 0,58,73,4,1,2,64,0,71,70,
+ 72,12,0,64,70,0,73,12,66,3,
+ 71,70,45,60,0,68,50,15,16,59,
+ 48,17,61,51,82,44,18,52,53,19,
+ 20,54,67,55,21,22,56,62,57,9,
+ 63,23,65,47,24,49,25,12,3,8,
+ 4,45,64,6,7,1,2,5,58,0,
+ 26,0,72,59,48,17,61,51,18,52,
+ 53,19,20,54,55,21,22,56,62,57,
+ 63,23,47,24,49,25,16,15,50,12,
+ 3,8,6,45,65,68,82,44,58,7,
+ 1,2,5,4,9,67,0,42,43,13,
+ 14,10,11,27,32,37,40,38,39,26,
+ 35,30,34,16,25,15,21,19,20,22,
+ 23,18,17,24,9,29,33,31,28,36,
+ 8,6,3,66,5,7,1,2,4,0,
+ 64,71,0,9,61,59,62,63,16,25,
+ 15,21,19,20,22,23,18,17,24,74,
+ 64,5,4,2,1,49,47,57,56,55,
+ 7,54,53,52,44,51,48,50,116,103,
+ 13,14,66,3,96,90,6,91,92,10,
+ 11,89,88,60,93,94,97,98,8,99,
+ 100,101,69,95,75,71,104,105,106,107,
+ 108,109,110,111,112,113,73,115,72,102,
+ 114,70,45,12,0,82,118,119,120,58,
+ 73,117,122,72,74,65,67,68,77,79,
+ 86,84,76,81,83,85,87,64,78,80,
+ 12,45,46,61,59,62,63,50,55,56,
+ 44,54,53,47,51,48,49,52,57,41,
+ 42,43,9,29,33,31,28,36,16,25,
+ 15,21,19,20,22,23,18,17,24,37,
+ 40,38,39,26,35,30,34,13,14,10,
+ 11,27,32,8,6,3,4,7,5,1,
+ 2,0,76,0,15,16,28,42,17,29,
+ 30,18,19,20,43,31,21,22,32,33,
+ 34,41,35,36,9,23,24,25,37,38,
+ 39,26,13,14,10,11,27,40,46,12,
+ 8,6,45,5,7,1,2,4,3,0,
+ 59,48,17,61,51,18,52,53,19,20,
+ 54,55,21,22,56,62,57,9,63,23,
+ 47,24,49,25,16,15,50,12,3,8,
+ 6,45,65,67,68,82,44,60,7,4,
+ 58,5,1,2,0,41,48,7,49,5,
+ 1,2,4,74,12,64,73,95,115,75,
+ 72,45,66,3,116,96,103,90,13,14,
+ 8,6,10,11,91,92,88,89,60,93,
+ 94,97,98,99,100,101,102,114,104,105,
+ 106,107,108,109,110,111,112,113,69,70,
+ 71,0,1,2,47,4,118,119,120,0,
+ 45,12,5,7,3,1,2,4,6,8,
+ 73,0,12,72,42,43,41,13,14,10,
+ 11,5,27,32,3,7,37,40,38,39,
+ 26,35,30,34,16,25,15,21,19,20,
+ 22,23,18,17,24,9,29,33,31,28,
+ 36,64,1,2,8,4,6,0,12,75,
+ 15,16,28,17,29,30,18,19,20,31,
+ 21,22,32,33,34,41,35,36,9,23,
+ 24,25,37,38,39,26,3,13,14,8,
+ 6,10,11,27,4,40,46,5,7,1,
+ 2,43,42,0
};
};
public final static byte asr[] = Asr.asr;
@@ -2030,59 +2123,59 @@ public class CPPExpressionStatementParserprs implements lpg.lpgjavaruntime.Parse
public interface Nasb {
public final static char nasb[] = {0,
- 132,11,189,35,11,11,11,11,11,11,
- 11,148,11,11,11,208,11,21,212,129,
- 35,35,19,35,35,35,35,35,35,11,
+ 158,11,184,24,11,11,11,11,11,11,
+ 11,130,11,11,11,132,11,109,141,147,
+ 24,24,107,24,24,24,24,24,24,11,
11,11,11,11,11,11,11,11,11,11,
- 35,11,35,212,179,179,179,179,129,175,
- 108,97,4,82,235,11,11,108,210,11,
- 235,235,114,1,35,48,120,11,11,11,
- 212,11,11,14,14,175,161,35,35,35,
- 35,35,35,35,35,35,35,35,35,35,
- 35,35,35,35,35,35,35,35,35,35,
- 35,35,35,35,35,35,35,161,35,235,
- 235,11,11,11,11,155,235,33,147,222,
- 223,11,223,127,223,148,223,216,11,11,
- 148,129,82,82,33,35,147,78,114,60,
- 60,11,148,129,82,179,164,172,56,235,
- 171,10,129,171,235,82,11,11,11,11,
+ 24,11,24,141,213,213,213,213,147,58,
+ 103,53,4,71,233,11,11,103,134,11,
+ 233,233,82,1,24,63,115,11,11,11,
+ 141,11,11,15,15,58,170,24,24,24,
+ 24,24,24,24,24,24,24,24,24,24,
+ 24,24,24,24,24,24,24,24,24,24,
+ 24,24,24,24,24,24,24,170,24,233,
+ 233,11,11,11,11,46,233,22,129,179,
+ 180,11,180,145,180,9,180,173,11,11,
+ 130,147,71,71,22,24,129,67,82,36,
+ 36,11,130,147,71,213,92,155,121,233,
+ 154,156,147,154,233,71,11,11,11,11,
11,11,11,11,11,11,11,11,11,11,
- 11,11,11,11,11,11,11,11,11,45,
- 10,11,11,11,230,129,108,108,22,108,
- 225,108,11,11,108,225,129,10,11,11,
- 228,82,11,235,198,108,129,120,35,179,
- 108,92,235,11,10,129,10,120,35,161,
- 161,161,161,11,11,33,11,84,191,108,
- 108,76,119,76,108,100,10,119,45,235,
- 11,102,11,200,118,45,235,64,230,56,
- 10,11,45,235,235,235,235,175,175,108,
- 84,54,129,189,11,11,31,136,191,76,
- 76,110,45,100,54,11,11,45,108,35,
- 11,11,60,60,129,102,147,200,235,45,
- 43,43,11,161,230,11,11,235,235,84,
- 120,11,148,108,143,104,11,11,196,225,
- 54,35,100,84,35,35,108,10,120,235,
- 198,167,108,11,175,35,82,10,11,172,
- 108,225,108,62,169,189,147,129,11,35,
- 11,12,70,72,10,108,200,84,235,82,
- 10,189,200,172,62,90,25,104,169,120,
- 35,35,148,88,235,108,11,11,29,29,
- 189,90,40,11,225,11,225,11,108,88,
- 200,182,108,11,11,108,150,25,10,175,
- 10,233,84,11,182,137,11,10,31,200,
- 179,179,68,158,11,35,11,189,11,11,
- 11,159,11,11,187,189,189,108,11,66,
- 11,235,235,108,108,11,143,11,108,11,
- 11,11,148,11,74,11,11,159,178,178,
- 203,11,178,189,189,104,11,108,179,88,
- 182,108,182,189,86,11,235,122,108,148,
- 108,225,11,179,235,104,235,205,189,11,
- 235,68,122,164,35,104,189,54,182,122,
- 225,122,95,29,235,235,108,159,11,159,
- 189,205,161,159,74,54,235,108,54,95,
- 54,189,11,66,66,102,35,11,205,189,
- 235,50,189,171,159,235,205,189,54,159,
- 235,50,159
+ 11,11,11,11,11,11,11,11,11,79,
+ 156,11,11,11,228,147,103,103,110,103,
+ 223,103,11,11,103,223,147,10,11,11,
+ 226,71,11,233,202,103,147,115,24,213,
+ 103,12,233,11,10,147,10,115,24,170,
+ 170,170,170,11,11,22,11,49,216,103,
+ 103,61,114,61,103,105,156,114,79,233,
+ 11,97,11,204,113,79,233,77,228,121,
+ 10,11,79,233,233,233,233,58,58,103,
+ 49,44,147,184,11,11,65,195,216,61,
+ 61,191,79,105,44,11,11,79,103,24,
+ 11,11,36,36,147,97,129,204,233,79,
+ 51,51,11,170,228,11,11,233,233,49,
+ 115,11,130,103,125,99,11,11,221,223,
+ 44,24,105,49,24,24,103,10,115,233,
+ 202,150,103,11,58,24,71,10,11,155,
+ 103,223,103,20,152,184,129,147,11,24,
+ 11,95,86,88,156,103,204,49,233,71,
+ 10,184,204,155,20,75,32,99,152,115,
+ 24,24,130,119,233,103,11,11,90,90,
+ 184,75,29,11,223,11,223,11,103,119,
+ 204,186,103,11,11,103,162,32,156,58,
+ 156,231,49,11,186,196,11,10,65,204,
+ 213,213,56,167,11,24,11,184,11,11,
+ 11,168,11,10,182,184,184,103,10,73,
+ 11,233,233,103,103,11,125,11,103,11,
+ 11,11,130,11,38,11,11,11,168,212,
+ 212,207,11,212,184,184,99,11,103,213,
+ 119,186,103,186,184,117,11,233,136,103,
+ 130,103,223,11,213,233,99,233,209,184,
+ 11,233,56,136,92,24,99,184,44,186,
+ 136,223,136,10,90,233,233,103,168,11,
+ 168,184,209,170,168,38,44,233,103,44,
+ 10,44,184,11,73,73,97,24,11,209,
+ 184,233,40,184,154,168,233,209,184,44,
+ 168,233,40,168
};
};
public final static char nasb[] = Nasb.nasb;
@@ -2090,30 +2183,30 @@ public class CPPExpressionStatementParserprs implements lpg.lpgjavaruntime.Parse
public interface Nasr {
public final static char nasr[] = {0,
- 2,12,7,5,150,148,122,147,146,1,
- 0,186,0,5,1,7,139,0,5,12,
- 7,1,2,0,167,5,166,0,113,0,
- 153,0,48,4,5,7,1,12,0,4,
- 65,0,140,0,3,2,0,173,0,12,
- 1,7,5,65,0,66,138,137,0,69,
- 0,156,0,178,0,57,0,158,0,5,
- 163,131,0,116,0,114,0,12,1,7,
- 5,80,0,61,0,180,0,126,0,157,
- 0,4,177,0,43,0,4,189,0,124,
- 0,101,100,64,5,1,7,4,0,5,
- 131,187,0,100,101,4,0,136,1,66,
- 0,108,4,46,70,0,2,5,1,47,
- 0,4,38,172,0,39,5,1,7,4,
- 155,0,1,64,7,4,96,5,0,4,
- 46,38,179,0,136,66,0,65,46,71,
- 4,38,0,4,28,0,101,100,64,56,
- 5,7,1,0,4,103,0,117,4,48,
- 0,4,46,70,81,0,4,38,39,0,
- 4,46,70,67,5,130,0,5,96,23,
- 4,0,46,50,4,106,0,4,48,169,
- 0,4,48,38,0,1,5,122,118,119,
- 120,12,93,0,1,62,0,101,100,5,
- 56,0,48,4,33,0
+ 3,13,8,151,149,123,148,147,6,1,
+ 0,5,178,0,6,2,8,140,0,157,
+ 0,49,5,6,8,2,13,0,5,66,
+ 0,168,6,167,0,70,0,117,0,13,
+ 2,8,6,66,0,137,67,0,62,0,
+ 141,0,5,190,0,159,0,5,104,0,
+ 115,0,174,0,154,0,13,2,8,6,
+ 81,0,58,0,158,0,179,0,4,3,
+ 0,101,102,5,0,6,164,132,0,114,
+ 0,5,29,0,187,0,102,101,65,6,
+ 2,8,5,0,125,0,6,13,8,2,
+ 3,0,137,2,67,0,181,0,127,0,
+ 67,139,138,0,2,65,8,5,97,6,
+ 0,5,49,170,0,109,5,47,71,0,
+ 5,49,39,0,3,6,1,48,0,102,
+ 101,65,57,6,8,2,0,5,39,173,
+ 0,5,47,39,180,0,66,47,72,5,
+ 39,0,1,6,123,119,120,121,13,94,
+ 0,5,39,40,0,5,47,71,82,0,
+ 6,132,188,0,40,6,2,8,5,156,
+ 0,6,97,24,5,0,47,51,5,107,
+ 0,118,5,49,0,5,47,71,68,6,
+ 131,0,1,63,0,102,101,6,57,0,
+ 49,5,34,0
};
};
public final static char nasr[] = Nasr.nasr;
@@ -2121,19 +2214,19 @@ public class CPPExpressionStatementParserprs implements lpg.lpgjavaruntime.Parse
public interface TerminalIndex {
public final static char terminalIndex[] = {0,
- 115,2,32,14,11,81,10,102,12,13,
- 8,9,50,54,62,70,76,77,88,89,
- 104,107,109,114,15,57,63,69,86,90,
- 92,96,99,101,111,112,113,46,97,60,
- 80,68,122,123,106,56,108,49,66,72,
- 75,78,85,91,95,100,55,20,65,93,
- 103,1,3,105,79,21,48,45,34,31,
- 121,120,98,67,110,51,52,58,59,61,
- 71,73,74,87,94,18,19,7,16,17,
- 22,23,33,5,24,25,26,27,28,29,
- 6,35,36,37,38,39,40,41,42,43,
- 44,30,119,4,53,82,83,84,124,64,
- 116,117,118
+ 115,116,2,32,14,11,81,10,102,12,
+ 13,117,8,9,50,54,62,70,76,77,
+ 88,89,104,107,109,114,15,57,63,69,
+ 86,90,92,96,99,101,111,112,113,46,
+ 97,60,80,68,122,123,106,56,108,49,
+ 66,72,75,78,85,91,100,95,55,20,
+ 65,93,103,3,105,1,79,48,21,45,
+ 34,121,31,98,120,110,51,52,58,59,
+ 61,67,71,73,74,87,94,18,19,7,
+ 16,17,22,23,33,5,24,25,26,27,
+ 28,29,6,35,36,37,38,39,40,41,
+ 42,43,44,30,119,4,53,82,83,84,
+ 124,64,118
};
};
public final static char terminalIndex[] = TerminalIndex.terminalIndex;
@@ -2141,27 +2234,26 @@ public class CPPExpressionStatementParserprs implements lpg.lpgjavaruntime.Parse
public interface NonterminalIndex {
public final static char nonterminalIndex[] = {0,
- 135,137,238,0,0,136,234,134,0,133,
- 0,145,0,132,0,0,144,149,0,0,
- 150,159,180,160,161,162,163,152,164,165,
- 138,166,127,167,168,169,0,131,129,170,
- 0,197,143,0,140,0,139,153,0,177,
- 0,0,0,0,147,156,173,0,204,0,
- 187,0,201,205,128,0,178,0,206,0,
- 172,0,0,0,0,0,0,0,176,126,
- 130,148,0,0,0,0,0,0,0,0,
- 0,0,186,0,0,202,212,158,208,209,
- 210,0,0,0,0,0,207,179,0,0,
- 0,211,0,0,0,241,175,189,190,191,
- 192,193,195,196,199,0,214,217,219,220,
- 0,237,0,240,0,0,141,142,146,0,
- 155,0,171,0,181,182,183,184,185,188,
- 0,194,0,198,203,0,215,216,0,221,
- 224,226,228,0,231,232,233,0,235,236,
- 239,125,0,151,0,0,154,157,174,200,
- 213,218,0,222,223,225,227,229,230,242,
- 243,0,0,0,0,0,0,0,0,0,
- 0,0
+ 131,136,138,239,0,0,137,235,135,0,
+ 134,0,146,0,133,0,0,145,150,0,
+ 0,151,160,181,161,162,163,164,153,165,
+ 166,139,167,127,168,169,170,0,132,129,
+ 171,0,198,144,0,141,0,140,154,0,
+ 178,0,0,0,0,148,157,174,0,205,
+ 0,188,0,202,206,128,0,179,0,207,
+ 0,173,0,0,0,0,0,0,0,177,
+ 126,130,149,0,0,0,0,0,0,0,
+ 0,0,0,187,0,0,203,213,159,209,
+ 210,211,0,0,0,0,0,208,180,0,
+ 0,0,212,0,0,0,242,176,190,191,
+ 192,193,194,196,197,200,0,215,218,220,
+ 221,0,238,0,241,0,0,142,143,147,
+ 0,156,0,172,0,182,183,184,185,186,
+ 189,0,195,0,199,204,0,216,217,0,
+ 222,225,227,229,0,232,233,234,0,236,
+ 237,240,125,0,152,0,0,155,158,175,
+ 201,214,219,0,223,224,226,228,230,231,
+ 243,244,0,0,0,0,0,0,0
};
};
public final static char nonterminalIndex[] = NonterminalIndex.nonterminalIndex;
@@ -2207,18 +2299,18 @@ public class CPPExpressionStatementParserprs implements lpg.lpgjavaruntime.Parse
public interface ScopeLhs {
public final static char scopeLhs[] = {
- 67,17,17,75,17,17,17,17,75,163,
- 85,49,92,91,120,68,53,75,74,19,
- 67,17,75,2,6,160,118,67,90,120,
- 119,121,54,49,133,139,75,17,17,133,
- 102,58,135,78,166,160,128,119,119,121,
- 50,57,178,18,17,17,17,17,17,11,
- 116,160,128,75,74,74,37,139,74,19,
- 17,17,17,17,102,75,167,163,180,100,
- 107,60,69,59,155,79,121,76,72,142,
- 178,176,16,160,121,117,21,139,129,129,
- 56,139,75,139,67,160,73,137,47,137,
- 47,166,117,118,67,67,58
+ 68,18,18,76,18,18,18,18,76,164,
+ 86,50,93,92,121,69,54,76,75,20,
+ 68,18,76,3,7,161,119,68,91,121,
+ 120,122,55,50,134,140,76,18,18,134,
+ 103,59,136,79,167,161,129,120,120,122,
+ 51,58,179,19,18,18,18,18,18,12,
+ 117,161,129,76,75,75,38,140,75,20,
+ 18,18,18,18,103,76,168,164,181,101,
+ 108,61,70,60,156,80,122,77,73,143,
+ 179,177,17,161,122,118,22,140,130,130,
+ 57,140,76,140,68,161,74,138,48,138,
+ 48,167,118,119,68,68,59
};
};
public final static char scopeLhs[] = ScopeLhs.scopeLhs;
@@ -2226,18 +2318,18 @@ public class CPPExpressionStatementParserprs implements lpg.lpgjavaruntime.Parse
public interface ScopeLa {
public final static byte scopeLa[] = {
- 115,72,72,72,72,72,72,72,72,1,
- 71,43,71,71,71,66,1,72,120,72,
- 63,2,43,66,66,43,71,63,71,71,
- 1,1,1,1,66,3,43,1,1,66,
- 72,72,72,115,72,43,71,1,1,1,
- 43,71,113,72,72,72,72,72,113,1,
- 72,1,68,72,72,72,70,3,72,2,
- 66,66,66,66,72,43,1,1,72,72,
- 2,1,113,72,1,1,1,43,70,72,
- 113,72,72,1,55,69,72,4,1,1,
- 5,1,75,55,73,43,43,3,3,3,
- 3,2,1,63,1,1,2
+ 117,75,75,75,75,75,75,75,75,1,
+ 72,45,72,72,72,69,1,75,122,75,
+ 64,3,45,69,69,45,72,64,72,72,
+ 1,1,1,1,69,4,45,1,1,69,
+ 75,75,75,117,75,45,72,1,1,1,
+ 45,72,115,75,75,75,75,75,115,1,
+ 75,1,70,75,75,75,73,4,75,3,
+ 69,69,69,69,75,45,1,1,75,75,
+ 3,1,115,75,1,1,1,45,73,75,
+ 115,75,75,1,58,71,75,5,1,1,
+ 6,1,76,58,74,45,45,4,4,4,
+ 4,3,1,64,1,1,3
};
};
public final static byte scopeLa[] = ScopeLa.scopeLa;
@@ -2264,71 +2356,71 @@ public class CPPExpressionStatementParserprs implements lpg.lpgjavaruntime.Parse
public interface ScopeRhs {
public final static char scopeRhs[] = {0,
- 314,2,39,0,127,0,313,2,115,0,
- 127,173,0,127,180,73,0,216,0,291,
- 127,58,126,0,21,0,293,127,58,55,
- 0,21,55,0,34,132,0,21,55,0,
- 0,293,127,58,55,193,0,21,130,0,
- 291,127,58,130,0,185,128,0,138,0,
- 226,2,290,0,290,0,2,0,127,0,
- 185,128,254,253,254,0,131,189,170,128,
- 0,129,0,189,170,128,0,134,129,0,
- 169,0,307,127,169,0,127,169,0,222,
- 129,0,170,245,0,137,0,0,0,135,
- 0,0,0,306,127,63,252,0,128,0,
- 252,0,3,0,0,128,0,305,127,63,
- 0,45,128,0,151,2,0,127,280,279,
- 127,73,278,169,0,279,127,73,278,169,
- 0,215,0,216,0,278,169,0,98,0,
- 0,215,0,216,0,203,98,0,0,215,
- 0,216,0,279,127,278,169,0,215,0,
- 203,0,0,215,0,233,127,2,0,127,
- 0,0,0,0,0,233,127,2,223,0,
- 230,2,0,219,127,0,208,0,148,0,
- 170,128,0,11,0,0,0,221,62,0,
- 126,0,233,127,2,182,0,182,0,2,
- 0,0,127,0,0,0,0,0,202,2,
- 0,201,0,232,127,63,24,42,0,185,
- 128,65,64,0,143,129,0,131,185,128,
- 276,64,0,185,128,276,64,0,185,128,
- 69,1,65,0,232,127,63,65,0,232,
- 127,63,165,65,0,232,127,63,124,65,
- 0,274,127,63,1,59,0,274,127,63,
- 59,0,185,128,59,0,135,0,189,185,
- 128,245,0,137,0,185,128,245,0,189,
- 170,128,8,0,170,128,8,0,95,137,
- 0,267,127,169,0,161,84,0,229,162,
- 229,173,2,81,0,127,172,0,229,173,
- 2,81,0,129,0,127,172,0,229,162,
- 229,162,229,2,81,0,229,162,229,2,
- 81,0,229,2,81,0,129,0,129,0,
- 127,172,0,161,2,75,194,80,0,127,
- 129,0,194,80,0,110,2,131,127,129,
- 0,240,2,75,0,202,171,0,34,170,
- 0,171,0,176,34,170,0,240,2,85,
- 0,194,156,240,2,83,0,64,172,0,
- 240,2,83,0,127,172,64,172,0,302,
- 127,63,0,161,0,221,77,0,31,0,
- 161,112,159,0,31,170,0,178,2,0,
- 127,150,0,226,2,0,221,62,301,0,
- 161,62,0,178,2,296,41,128,0,127,
- 0,0,296,41,128,0,2,147,127,0,
- 0,178,2,30,0,14,148,0,125,55,
- 170,128,0,32,14,148,0,95,137,32,
- 14,148,0,205,185,128,0,148,32,14,
- 148,0,178,2,34,0,161,2,34,0,
- 161,2,66,178,58,26,0,178,58,26,
- 0,21,2,131,127,0,161,2,66,178,
- 58,29,0,178,58,29,0,161,2,66,
- 178,58,31,0,178,58,31,0,161,2,
- 66,178,58,27,0,178,58,27,0,226,
- 2,125,189,170,128,8,0,125,189,170,
- 128,8,0,137,2,0,127,0,226,2,
- 124,259,170,128,8,0,259,170,128,8,
- 0,135,2,0,127,0,226,2,135,0,
- 226,2,140,0,161,62,140,0,261,0,
- 32,0,32,141,0,168,0,134,0,161,
- 2,0
+ 315,3,41,0,127,0,314,3,117,0,
+ 127,174,0,128,181,74,0,217,0,292,
+ 128,60,127,0,21,0,294,128,60,58,
+ 0,21,55,0,34,133,0,21,55,0,
+ 0,294,128,60,58,194,0,21,130,0,
+ 292,128,60,131,0,186,129,0,139,0,
+ 227,3,291,0,291,0,2,0,127,0,
+ 186,129,255,254,255,0,132,190,171,129,
+ 0,129,0,190,171,129,0,135,129,0,
+ 170,0,308,128,170,0,128,170,0,223,
+ 129,0,171,246,0,138,0,0,0,136,
+ 0,0,0,307,128,64,253,0,128,0,
+ 253,0,3,0,0,128,0,306,128,64,
+ 0,45,128,0,152,3,0,128,281,280,
+ 128,74,279,170,0,280,128,74,279,170,
+ 0,216,0,217,0,279,170,0,98,0,
+ 0,216,0,217,0,204,98,0,0,216,
+ 0,217,0,280,128,279,170,0,216,0,
+ 204,0,0,216,0,234,128,3,0,127,
+ 0,0,0,0,0,234,128,3,224,0,
+ 231,3,0,220,128,0,209,0,149,0,
+ 171,129,0,11,0,0,0,222,66,0,
+ 126,0,234,128,3,183,0,183,0,2,
+ 0,0,127,0,0,0,0,0,203,3,
+ 0,202,0,233,128,64,26,44,0,186,
+ 129,67,65,0,144,129,0,132,186,129,
+ 277,65,0,186,129,277,65,0,186,129,
+ 71,124,67,0,233,128,64,67,0,233,
+ 128,64,166,67,0,233,128,64,125,67,
+ 0,275,128,64,124,61,0,275,128,64,
+ 61,0,186,129,61,0,136,0,190,186,
+ 129,246,0,138,0,186,129,246,0,190,
+ 171,129,9,0,171,129,9,0,95,138,
+ 0,268,128,170,0,162,86,0,230,163,
+ 230,174,3,83,0,127,173,0,230,174,
+ 3,83,0,129,0,127,173,0,230,163,
+ 230,163,230,3,83,0,230,163,230,3,
+ 83,0,230,3,83,0,129,0,129,0,
+ 127,173,0,162,3,76,195,81,0,127,
+ 129,0,195,81,0,110,2,132,127,129,
+ 0,241,3,76,0,203,172,0,34,171,
+ 0,172,0,177,34,171,0,241,3,87,
+ 0,195,157,241,3,85,0,64,173,0,
+ 241,3,85,0,127,173,64,173,0,303,
+ 128,64,0,162,0,222,78,0,31,0,
+ 162,114,160,0,31,171,0,179,3,0,
+ 127,151,0,227,3,0,222,66,302,0,
+ 162,66,0,179,3,297,43,129,0,127,
+ 0,0,297,43,129,0,2,148,127,0,
+ 0,179,3,32,0,14,149,0,126,58,
+ 171,129,0,32,14,149,0,95,138,32,
+ 14,149,0,206,186,129,0,149,32,14,
+ 149,0,179,3,36,0,162,3,36,0,
+ 162,3,69,179,60,28,0,179,60,28,
+ 0,21,2,132,127,0,162,3,69,179,
+ 60,31,0,179,60,31,0,162,3,69,
+ 179,60,33,0,179,60,33,0,162,3,
+ 69,179,60,29,0,179,60,29,0,227,
+ 3,126,190,171,129,9,0,126,190,171,
+ 129,9,0,138,2,0,127,0,227,3,
+ 125,260,171,129,9,0,260,171,129,9,
+ 0,136,2,0,127,0,227,3,136,0,
+ 227,3,141,0,162,66,141,0,262,0,
+ 32,0,32,142,0,169,0,135,0,162,
+ 3,0
};
};
public final static char scopeRhs[] = ScopeRhs.scopeRhs;
@@ -2336,38 +2428,38 @@ public class CPPExpressionStatementParserprs implements lpg.lpgjavaruntime.Parse
public interface ScopeState {
public final static char scopeState[] = {0,
- 2155,0,4817,4543,3409,0,1665,1376,1539,1297,
- 0,3985,3944,3903,3862,3821,3780,3676,3571,3530,
- 3161,3102,2933,2868,3721,2803,2738,3666,3611,3471,
- 3412,0,2333,2214,2193,0,2839,657,0,3985,
- 3944,3903,1697,1579,3862,3821,3780,3571,1232,3530,
- 3161,3102,2858,2322,0,4815,2684,4769,0,1054,
- 732,0,1366,2655,0,3418,3026,0,1062,0,
- 3418,4551,4486,3390,3026,2988,4457,4469,4358,3240,
- 4440,3108,3068,2695,2612,0,2933,2868,3721,2803,
- 2738,3666,3611,3471,3412,4518,3528,0,4518,3528,
- 2933,2868,3721,2803,2738,3666,3611,3471,3412,3985,
- 3944,3903,3862,3821,3780,3571,3530,3161,3102,0,
- 2608,927,0,3240,4551,3008,4486,3390,3667,3068,
- 1866,2965,1786,3544,4599,713,1186,858,0,1066,
- 577,0,871,0,1502,1418,1001,986,3390,4599,
- 2988,2695,2612,2762,2678,0,4262,534,2324,0,
- 4739,4733,4712,4706,4685,4649,4628,4622,4760,4002,
- 3796,3441,4595,4574,3282,3588,2899,2834,2767,3091,
- 2924,0,4739,4733,2343,2210,4712,4706,4796,2116,
- 4685,4649,4787,4423,4628,2202,4622,2120,2112,4760,
- 2108,4345,2026,1058,3386,4002,3879,3796,2661,3441,
- 4595,4574,876,3282,867,3588,2022,2899,2834,4262,
- 2767,2324,3091,2924,2012,728,617,784,664,2988,
- 4457,4469,4358,3240,3418,4551,4440,4486,3390,3108,
- 3068,2695,3026,2612,1881,997,1066,577,4387,4319,
- 4289,2218,2256,923,2291,2503,2475,2351,2715,2624,
- 2585,2558,2531,792,3361,3332,3253,2381,591,4240,
- 4218,4196,4174,4152,4130,4108,4086,4064,630,2420,
- 1894,2162,2124,2068,2030,1974,1163,1121,1936,1079,
- 825,1838,1800,741,685,1758,1716,1674,1632,1590,
- 1548,1506,1464,1422,1380,1338,534,1293,1251,1016,
- 955,881,1209,0
+ 2812,0,4931,4322,4281,0,3180,2810,880,1047,
+ 0,4384,4343,4302,4261,4220,4179,4129,3927,3886,
+ 3415,3374,3157,3092,4120,3027,2951,4064,4007,3803,
+ 3791,0,3692,3600,2885,0,2814,788,0,4384,
+ 4343,4302,3899,3486,4261,4220,4179,3927,1879,3886,
+ 3415,3374,2113,1884,0,4903,4028,4843,0,2069,
+ 953,0,2386,3916,0,4575,4013,0,1898,0,
+ 4575,4509,2441,3340,4013,2822,3358,4478,3986,2931,
+ 4443,4465,2903,2741,2696,0,3157,3092,4120,3027,
+ 2951,4064,4007,3803,3791,4649,4541,0,4649,4541,
+ 3157,3092,4120,3027,2951,4064,4007,3803,3791,4384,
+ 4343,4302,4261,4220,4179,3927,3886,3415,3374,0,
+ 3085,2891,0,2931,4509,4492,2441,3340,4840,2903,
+ 4079,4090,875,4103,4683,616,3018,619,0,1148,
+ 579,0,1153,0,1647,1467,1303,819,3340,4683,
+ 2822,2741,2696,3375,2384,0,3710,535,2374,0,
+ 4826,4817,4793,4768,4760,4711,4703,4678,4875,4850,
+ 4195,3902,4621,4600,3820,4594,4038,3188,3121,3213,
+ 2471,0,4826,4817,3353,3195,4793,4768,4883,2736,
+ 4760,4711,3728,3067,4703,3456,4678,3433,3391,4875,
+ 3386,3052,3128,2835,2896,4850,4615,4195,2393,3902,
+ 4621,4600,2228,3820,2134,4594,1900,4038,3188,3710,
+ 3121,2374,3213,2471,2217,2123,730,870,660,2822,
+ 3358,4478,3986,2931,4575,4509,4443,2441,3340,4465,
+ 2903,2741,4013,2696,2029,1000,1148,579,632,3767,
+ 3737,2233,2272,2342,2308,2555,2526,2401,2709,795,
+ 2668,2640,2612,2584,3316,3292,3268,2850,592,3687,
+ 3664,3641,3618,3595,3572,3549,3518,3495,2771,927,
+ 1908,2178,2139,2084,2045,1990,1166,1105,1951,1062,
+ 827,1855,1814,744,687,1771,1728,1685,1642,1599,
+ 1556,1513,1470,1427,1384,1341,535,1298,1254,1018,
+ 957,884,1209,0
};
};
public final static char scopeState[] = ScopeState.scopeState;
@@ -2375,59 +2467,59 @@ public class CPPExpressionStatementParserprs implements lpg.lpgjavaruntime.Parse
public interface InSymb {
public final static char inSymb[] = {0,
- 0,295,161,127,44,266,34,26,29,31,
- 27,8,135,124,126,6,130,3,2,128,
- 30,25,4,10,9,5,7,12,11,140,
- 145,148,147,150,149,153,152,157,155,158,
- 39,159,68,2,58,58,58,58,128,2,
- 58,171,127,62,2,40,41,58,6,124,
- 178,161,171,127,40,41,170,168,1,124,
- 2,125,124,101,114,2,62,88,94,10,
- 9,90,89,5,92,91,66,58,86,87,
- 7,96,95,98,97,99,111,110,109,108,
- 107,106,105,104,103,102,69,112,100,178,
- 161,178,178,178,178,170,226,127,127,268,
- 269,252,270,245,271,59,272,273,1,124,
- 8,128,62,62,127,156,127,62,2,224,
- 223,135,8,128,62,296,2,189,3,178,
- 55,4,128,55,226,161,147,147,145,145,
- 145,149,149,149,149,148,148,152,150,150,
- 155,153,157,161,158,66,66,66,66,189,
- 259,291,133,294,219,128,5,63,170,236,
- 128,125,124,1,63,128,128,185,170,291,
- 219,221,159,230,127,2,128,170,203,2,
- 297,171,151,261,189,128,185,170,70,2,
- 2,2,2,125,124,68,170,127,127,125,
- 124,127,185,127,63,127,185,170,55,233,
- 234,146,235,127,170,55,178,127,127,3,
- 4,205,55,161,161,161,161,2,2,5,
- 184,306,128,190,253,193,64,169,308,127,
- 127,70,189,127,274,247,275,189,156,69,
- 230,202,187,182,128,2,127,68,233,189,
- 156,298,301,62,179,3,125,226,226,127,
- 170,55,276,278,127,2,182,310,254,128,
- 274,69,68,127,69,69,2,185,170,202,
- 127,219,156,125,2,62,161,4,3,189,
- 58,128,73,127,219,307,127,128,124,70,
- 285,202,68,253,185,227,127,127,226,221,
- 4,131,127,185,127,279,70,68,219,170,
- 70,69,254,127,233,227,293,55,8,57,
- 131,279,63,289,128,290,128,39,156,127,
- 68,66,58,236,236,280,127,68,185,2,
- 185,2,127,42,55,169,67,65,64,127,
- 69,69,127,302,79,77,1,161,85,83,
- 81,80,75,82,84,78,76,169,65,73,
- 44,226,314,227,24,58,127,2,63,165,
- 1,124,65,293,281,115,221,70,2,2,
- 2,194,2,1,161,127,1,180,68,127,
- 127,63,66,267,202,277,24,127,63,69,
- 63,128,66,2,240,171,240,173,229,75,
- 240,127,127,2,69,68,156,232,231,127,
- 128,127,185,57,93,313,171,156,202,156,
- 229,162,2,156,281,232,151,63,232,185,
- 232,166,236,156,156,127,69,194,162,229,
- 161,127,166,69,120,229,162,156,305,156,
- 229,68,156
+ 0,296,162,128,46,267,36,28,31,33,
+ 29,9,136,125,127,7,131,4,3,129,
+ 32,27,5,11,10,6,8,14,13,141,
+ 146,149,148,151,150,154,153,158,156,159,
+ 41,160,70,3,60,60,60,60,129,3,
+ 60,172,128,66,3,42,43,60,7,125,
+ 179,162,172,128,42,43,171,169,124,125,
+ 3,126,125,103,116,3,66,90,96,11,
+ 10,92,91,6,94,93,69,60,88,89,
+ 8,98,97,100,99,101,113,112,111,110,
+ 109,108,107,106,105,104,71,114,102,179,
+ 162,179,179,179,179,171,227,128,128,269,
+ 270,253,271,246,272,61,273,274,124,125,
+ 9,129,66,66,128,157,128,66,3,225,
+ 224,136,9,129,66,297,3,190,4,179,
+ 58,5,129,58,227,162,148,148,146,146,
+ 146,150,150,150,150,149,149,153,151,151,
+ 156,154,158,162,159,69,69,69,69,190,
+ 260,292,134,295,220,129,6,64,171,237,
+ 129,126,125,124,64,129,129,186,171,292,
+ 220,222,160,231,128,3,129,171,204,3,
+ 298,172,152,262,190,129,186,171,73,3,
+ 3,3,3,126,125,70,171,128,128,126,
+ 125,128,186,128,64,128,186,171,58,234,
+ 235,147,236,128,171,58,179,128,128,4,
+ 5,206,58,162,162,162,162,3,3,6,
+ 185,307,129,191,254,194,65,170,309,128,
+ 128,73,190,128,275,248,276,190,157,71,
+ 231,203,188,183,129,3,128,70,234,190,
+ 157,299,302,66,180,4,126,227,227,128,
+ 171,58,277,279,128,3,183,311,255,129,
+ 275,71,70,128,71,71,3,186,171,203,
+ 128,220,157,126,3,66,162,5,4,190,
+ 60,129,74,128,220,308,128,129,125,73,
+ 286,203,70,254,186,228,128,128,227,222,
+ 5,132,128,186,128,280,73,70,220,171,
+ 73,71,255,128,234,228,294,58,9,59,
+ 132,280,64,290,129,291,129,41,157,128,
+ 70,69,60,237,237,281,128,70,186,3,
+ 186,3,128,44,58,170,68,67,65,128,
+ 71,71,128,303,80,78,1,162,87,85,
+ 83,81,76,84,86,79,77,170,67,74,
+ 46,227,315,228,26,60,128,3,64,166,
+ 124,125,67,294,282,117,12,222,73,3,
+ 3,3,195,3,124,162,128,124,181,70,
+ 128,128,64,69,268,203,278,26,128,64,
+ 71,64,129,69,3,241,172,241,174,230,
+ 76,241,128,128,3,71,70,157,233,232,
+ 128,129,128,186,59,95,314,172,157,203,
+ 157,230,163,3,157,282,233,152,64,233,
+ 186,233,167,237,157,157,128,71,195,163,
+ 230,162,128,167,71,122,230,163,157,306,
+ 157,230,70,157
};
};
public final static char inSymb[] = InSymb.inSymb;
@@ -2566,6 +2658,7 @@ public class CPPExpressionStatementParserprs implements lpg.lpgjavaruntime.Parse
"}",
";",
"declaration",
+ "identifier_token",
"expression",
"id_expression",
"qualified_or_unqualified_name",
@@ -2691,7 +2784,7 @@ public class CPPExpressionStatementParserprs implements lpg.lpgjavaruntime.Parse
public final String name(int index) { return name[index]; }
public final static int
- ERROR_SYMBOL = 44,
+ ERROR_SYMBOL = 46,
SCOPE_UBOUND = 116,
SCOPE_SIZE = 117,
MAX_NAME_LENGTH = 37;
@@ -2702,20 +2795,20 @@ public class CPPExpressionStatementParserprs implements lpg.lpgjavaruntime.Parse
public final int getMaxNameLength() { return MAX_NAME_LENGTH; }
public final static int
- NUM_STATES = 523,
+ NUM_STATES = 524,
NT_OFFSET = 123,
- LA_STATE_OFFSET = 5844,
+ LA_STATE_OFFSET = 5996,
MAX_LA = 2147483647,
- NUM_RULES = 533,
- NUM_NONTERMINALS = 202,
- NUM_SYMBOLS = 325,
+ NUM_RULES = 534,
+ NUM_NONTERMINALS = 199,
+ NUM_SYMBOLS = 322,
SEGMENT_SIZE = 8192,
- START_STATE = 2974,
+ START_STATE = 3373,
IDENTIFIER_SYMBOL = 0,
- EOFT_SYMBOL = 119,
- EOLT_SYMBOL = 119,
- ACCEPT_ACTION = 5002,
- ERROR_ACTION = 5311;
+ EOFT_SYMBOL = 121,
+ EOLT_SYMBOL = 121,
+ ACCEPT_ACTION = 5108,
+ ERROR_ACTION = 5462;
public final static boolean BACKTRACK = true;
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPExpressionStatementParsersym.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPExpressionStatementParsersym.java
index a1506501e93..74ef7f14913 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPExpressionStatementParsersym.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPExpressionStatementParsersym.java
@@ -15,133 +15,134 @@ package org.eclipse.cdt.internal.core.dom.lrparser.cpp;
public interface CPPExpressionStatementParsersym {
public final static int
- TK_asm = 67,
- TK_auto = 48,
- TK_bool = 13,
- TK_break = 76,
- TK_case = 77,
- TK_catch = 115,
- TK_char = 14,
- TK_class = 57,
- TK_const = 46,
- TK_const_cast = 26,
- TK_continue = 78,
- TK_default = 79,
- TK_delete = 40,
- TK_do = 80,
- TK_double = 15,
- TK_dynamic_cast = 27,
- TK_else = 120,
- TK_enum = 59,
- TK_explicit = 49,
- TK_export = 74,
- TK_extern = 42,
- TK_false = 28,
- TK_float = 16,
- TK_for = 81,
- TK_friend = 50,
- TK_goto = 82,
- TK_if = 83,
- TK_inline = 51,
- TK_int = 17,
- TK_long = 18,
- TK_mutable = 52,
- TK_namespace = 65,
- TK_new = 41,
- TK_operator = 6,
- TK_private = 116,
- TK_protected = 117,
- TK_public = 118,
- TK_register = 53,
- TK_reinterpret_cast = 29,
- TK_return = 84,
- TK_short = 19,
- TK_signed = 20,
- TK_sizeof = 30,
- TK_static = 54,
- TK_static_cast = 31,
- TK_struct = 60,
- TK_switch = 85,
- TK_template = 55,
- TK_this = 32,
- TK_throw = 39,
- TK_try = 73,
- TK_true = 33,
- TK_typedef = 56,
- TK_typeid = 34,
- TK_typename = 8,
- TK_union = 61,
- TK_unsigned = 21,
- TK_using = 64,
- TK_virtual = 45,
- TK_void = 22,
- TK_volatile = 47,
- TK_wchar_t = 23,
- TK_while = 75,
- TK_integer = 35,
- TK_floating = 36,
- TK_charconst = 37,
- TK_stringlit = 24,
+ TK_asm = 68,
+ TK_auto = 50,
+ TK_bool = 15,
+ TK_break = 77,
+ TK_case = 78,
+ TK_catch = 117,
+ TK_char = 16,
+ TK_class = 59,
+ TK_const = 48,
+ TK_const_cast = 28,
+ TK_continue = 79,
+ TK_default = 80,
+ TK_delete = 42,
+ TK_do = 81,
+ TK_double = 17,
+ TK_dynamic_cast = 29,
+ TK_else = 122,
+ TK_enum = 61,
+ TK_explicit = 51,
+ TK_export = 82,
+ TK_extern = 44,
+ TK_false = 30,
+ TK_float = 18,
+ TK_for = 83,
+ TK_friend = 52,
+ TK_goto = 84,
+ TK_if = 85,
+ TK_inline = 53,
+ TK_int = 19,
+ TK_long = 20,
+ TK_mutable = 54,
+ TK_namespace = 67,
+ TK_new = 43,
+ TK_operator = 7,
+ TK_private = 118,
+ TK_protected = 119,
+ TK_public = 120,
+ TK_register = 55,
+ TK_reinterpret_cast = 31,
+ TK_return = 86,
+ TK_short = 21,
+ TK_signed = 22,
+ TK_sizeof = 32,
+ TK_static = 56,
+ TK_static_cast = 33,
+ TK_struct = 62,
+ TK_switch = 87,
+ TK_template = 58,
+ TK_this = 34,
+ TK_throw = 41,
+ TK_try = 74,
+ TK_true = 35,
+ TK_typedef = 57,
+ TK_typeid = 36,
+ TK_typename = 9,
+ TK_union = 63,
+ TK_unsigned = 23,
+ TK_using = 65,
+ TK_virtual = 47,
+ TK_void = 24,
+ TK_volatile = 49,
+ TK_wchar_t = 25,
+ TK_while = 76,
+ TK_integer = 37,
+ TK_floating = 38,
+ TK_charconst = 39,
+ TK_stringlit = 26,
TK_identifier = 1,
- TK_Completion = 121,
- TK_EndOfCompletion = 122,
+ TK_Completion = 2,
+ TK_EndOfCompletion = 12,
TK_Invalid = 123,
- TK_LeftBracket = 62,
- TK_LeftParen = 2,
- TK_LeftBrace = 63,
- TK_Dot = 114,
- TK_DotStar = 94,
- TK_Arrow = 101,
- TK_ArrowStar = 88,
- TK_PlusPlus = 11,
- TK_MinusMinus = 12,
- TK_And = 7,
- TK_Star = 5,
- TK_Plus = 9,
- TK_Minus = 10,
- TK_Tilde = 4,
- TK_Bang = 25,
- TK_Slash = 89,
- TK_Percent = 90,
- TK_RightShift = 86,
- TK_LeftShift = 87,
- TK_LT = 58,
- TK_GT = 66,
- TK_LE = 91,
- TK_GE = 92,
- TK_EQ = 95,
- TK_NE = 96,
- TK_Caret = 97,
- TK_Or = 98,
- TK_AndAnd = 99,
- TK_OrOr = 100,
- TK_Question = 112,
- TK_Colon = 70,
- TK_ColonColon = 3,
- TK_DotDotDot = 93,
- TK_Assign = 69,
- TK_StarAssign = 102,
- TK_SlashAssign = 103,
- TK_PercentAssign = 104,
- TK_PlusAssign = 105,
- TK_MinusAssign = 106,
- TK_RightShiftAssign = 107,
- TK_LeftShiftAssign = 108,
- TK_AndAssign = 109,
- TK_CaretAssign = 110,
- TK_OrAssign = 111,
- TK_Comma = 68,
- TK_zero = 38,
- TK_RightBracket = 113,
- TK_RightParen = 72,
- TK_RightBrace = 71,
- TK_SemiColon = 43,
- TK_ERROR_TOKEN = 44,
- TK_EOF_TOKEN = 119;
+ TK_LeftBracket = 66,
+ TK_LeftParen = 3,
+ TK_LeftBrace = 64,
+ TK_Dot = 116,
+ TK_DotStar = 96,
+ TK_Arrow = 103,
+ TK_ArrowStar = 90,
+ TK_PlusPlus = 13,
+ TK_MinusMinus = 14,
+ TK_And = 8,
+ TK_Star = 6,
+ TK_Plus = 10,
+ TK_Minus = 11,
+ TK_Tilde = 5,
+ TK_Bang = 27,
+ TK_Slash = 91,
+ TK_Percent = 92,
+ TK_RightShift = 88,
+ TK_LeftShift = 89,
+ TK_LT = 60,
+ TK_GT = 69,
+ TK_LE = 93,
+ TK_GE = 94,
+ TK_EQ = 97,
+ TK_NE = 98,
+ TK_Caret = 99,
+ TK_Or = 100,
+ TK_AndAnd = 101,
+ TK_OrOr = 102,
+ TK_Question = 114,
+ TK_Colon = 73,
+ TK_ColonColon = 4,
+ TK_DotDotDot = 95,
+ TK_Assign = 71,
+ TK_StarAssign = 104,
+ TK_SlashAssign = 105,
+ TK_PercentAssign = 106,
+ TK_PlusAssign = 107,
+ TK_MinusAssign = 108,
+ TK_RightShiftAssign = 109,
+ TK_LeftShiftAssign = 110,
+ TK_AndAssign = 111,
+ TK_CaretAssign = 112,
+ TK_OrAssign = 113,
+ TK_Comma = 70,
+ TK_zero = 40,
+ TK_RightBracket = 115,
+ TK_RightParen = 75,
+ TK_RightBrace = 72,
+ TK_SemiColon = 45,
+ TK_ERROR_TOKEN = 46,
+ TK_EOF_TOKEN = 121;
public final static String orderedTerminalSymbols[] = {
"",
"identifier",
+ "Completion",
"LeftParen",
"ColonColon",
"Tilde",
@@ -151,6 +152,7 @@ public interface CPPExpressionStatementParsersym {
"typename",
"Plus",
"Minus",
+ "EndOfCompletion",
"PlusPlus",
"MinusMinus",
"bool",
@@ -195,32 +197,32 @@ public interface CPPExpressionStatementParsersym {
"mutable",
"register",
"static",
- "template",
"typedef",
+ "template",
"class",
"LT",
"enum",
"struct",
"union",
- "LeftBracket",
"LeftBrace",
"using",
+ "LeftBracket",
"namespace",
- "GT",
"asm",
+ "GT",
"Comma",
"Assign",
- "Colon",
"RightBrace",
- "RightParen",
+ "Colon",
"try",
- "export",
+ "RightParen",
"while",
"break",
"case",
"continue",
"default",
"do",
+ "export",
"for",
"goto",
"if",
@@ -261,8 +263,6 @@ public interface CPPExpressionStatementParsersym {
"public",
"EOF_TOKEN",
"else",
- "Completion",
- "EndOfCompletion",
"Invalid"
};
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPNoCastExpressionParser.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPNoCastExpressionParser.java
index d6fdd6ccc76..d575a92308d 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPNoCastExpressionParser.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPNoCastExpressionParser.java
@@ -272,1780 +272,1773 @@ public CPPNoCastExpressionParser(String[] mapFrom) { // constructor
}
//
- // Rule 4: <placeholder> ::= $Empty
+ // Rule 2: <empty> ::= $Empty
//
- case 4: { action.builder.
- consumePlaceHolder(); break;
- }
-
- //
- // Rule 5: <empty> ::= $Empty
- //
- case 5: { action.builder.
+ case 2: { action.builder.
consumeEmpty(); break;
}
//
- // Rule 10: translation_unit ::= external_declaration_list
+ // Rule 11: translation_unit ::= external_declaration_list
//
- case 10: { action.builder.
+ case 11: { action.builder.
consumeTranslationUnit(); break;
}
//
- // Rule 11: translation_unit ::= $Empty
+ // Rule 12: translation_unit ::= $Empty
//
- case 11: { action.builder.
+ case 12: { action.builder.
consumeTranslationUnit(); break;
}
//
- // Rule 15: external_declaration ::= ERROR_TOKEN
+ // Rule 16: external_declaration ::= ERROR_TOKEN
//
- case 15: { action.builder.
+ case 16: { action.builder.
consumeDeclarationProblem(); break;
}
//
- // Rule 16: literal ::= integer
+ // Rule 19: literal ::= integer
//
- case 16: { action.builder.
+ case 19: { action.builder.
consumeExpressionLiteral(ICPPASTLiteralExpression.lk_integer_constant); break;
}
//
- // Rule 17: literal ::= 0
+ // Rule 20: literal ::= 0
//
- case 17: { action.builder.
+ case 20: { action.builder.
consumeExpressionLiteral(ICPPASTLiteralExpression.lk_integer_constant); break;
}
//
- // Rule 18: literal ::= floating
+ // Rule 21: literal ::= floating
//
- case 18: { action.builder.
+ case 21: { action.builder.
consumeExpressionLiteral(ICPPASTLiteralExpression.lk_float_constant); break;
}
//
- // Rule 19: literal ::= charconst
+ // Rule 22: literal ::= charconst
//
- case 19: { action.builder.
+ case 22: { action.builder.
consumeExpressionLiteral(ICPPASTLiteralExpression.lk_char_constant); break;
}
//
- // Rule 20: literal ::= stringlit
+ // Rule 23: literal ::= stringlit
//
- case 20: { action.builder.
+ case 23: { action.builder.
consumeExpressionLiteral(ICPPASTLiteralExpression.lk_string_literal); break;
}
//
- // Rule 21: literal ::= true
+ // Rule 24: literal ::= true
//
- case 21: { action.builder.
+ case 24: { action.builder.
consumeExpressionLiteral(ICPPASTLiteralExpression.lk_true); break;
}
//
- // Rule 22: literal ::= false
+ // Rule 25: literal ::= false
//
- case 22: { action.builder.
+ case 25: { action.builder.
consumeExpressionLiteral(ICPPASTLiteralExpression.lk_false); break;
}
//
- // Rule 23: literal ::= this
+ // Rule 26: literal ::= this
//
- case 23: { action.builder.
+ case 26: { action.builder.
consumeExpressionLiteral(ICPPASTLiteralExpression.lk_this); break;
}
//
- // Rule 25: primary_expression ::= ( expression )
+ // Rule 28: primary_expression ::= ( expression )
//
- case 25: { action.builder.
+ case 28: { action.builder.
consumeExpressionBracketed(); break;
}
//
- // Rule 27: id_expression ::= qualified_or_unqualified_name
+ // Rule 30: id_expression ::= qualified_or_unqualified_name
//
- case 27: { action.builder.
+ case 30: { action.builder.
consumeExpressionName(); break;
}
//
- // Rule 34: unqualified_id_name ::= ~ class_name
+ // Rule 37: unqualified_id_name ::= ~ class_name
//
- case 34: { action.builder.
+ case 37: { action.builder.
consumeDestructorName(); break;
}
//
- // Rule 35: identifier_name ::= identifier
+ // Rule 38: identifier_name ::= identifier_token
//
- case 35: { action.builder.
+ case 38: { action.builder.
consumeIdentifierName(); break;
}
//
- // Rule 36: template_opt ::= template
+ // Rule 39: template_opt ::= template
//
- case 36: { action.builder.
+ case 39: { action.builder.
consumePlaceHolder(); break;
}
//
- // Rule 37: template_opt ::= $Empty
+ // Rule 40: template_opt ::= $Empty
//
- case 37: { action.builder.
+ case 40: { action.builder.
consumeEmpty(); break;
}
//
- // Rule 38: dcolon_opt ::= ::
+ // Rule 41: dcolon_opt ::= ::
//
- case 38: { action.builder.
+ case 41: { action.builder.
consumePlaceHolder(); break;
}
//
- // Rule 39: dcolon_opt ::= $Empty
+ // Rule 42: dcolon_opt ::= $Empty
//
- case 39: { action.builder.
+ case 42: { action.builder.
consumeEmpty(); break;
}
//
- // Rule 40: qualified_id_name ::= dcolon_opt nested_name_specifier template_opt unqualified_id_name
+ // Rule 43: qualified_id_name ::= dcolon_opt nested_name_specifier template_opt unqualified_id_name
//
- case 40: { action.builder.
+ case 43: { action.builder.
consumeQualifiedId(true); break;
}
//
- // Rule 41: qualified_id_name ::= :: identifier_name
+ // Rule 44: qualified_id_name ::= :: identifier_name
//
- case 41: { action.builder.
+ case 44: { action.builder.
consumeGlobalQualifiedId(); break;
}
//
- // Rule 42: qualified_id_name ::= :: operator_function_id_name
+ // Rule 45: qualified_id_name ::= :: operator_function_id_name
//
- case 42: { action.builder.
+ case 45: { action.builder.
consumeGlobalQualifiedId(); break;
}
//
- // Rule 43: qualified_id_name ::= :: template_id_name
+ // Rule 46: qualified_id_name ::= :: template_id_name
//
- case 43: { action.builder.
+ case 46: { action.builder.
consumeGlobalQualifiedId(); break;
}
//
- // Rule 44: nested_name_specifier ::= class_or_namespace_name :: nested_name_specifier_with_template
+ // Rule 47: nested_name_specifier ::= class_or_namespace_name :: nested_name_specifier_with_template
//
- case 44: { action.builder.
+ case 47: { action.builder.
consumeNestedNameSpecifier(true); break;
}
//
- // Rule 45: nested_name_specifier ::= class_or_namespace_name ::
+ // Rule 48: nested_name_specifier ::= class_or_namespace_name ::
//
- case 45: { action.builder.
+ case 48: { action.builder.
consumeNestedNameSpecifier(false); break;
}
//
- // Rule 46: nested_name_specifier_with_template ::= class_or_namespace_name_with_template :: nested_name_specifier_with_template
+ // Rule 49: nested_name_specifier_with_template ::= class_or_namespace_name_with_template :: nested_name_specifier_with_template
//
- case 46: { action.builder.
+ case 49: { action.builder.
consumeNestedNameSpecifier(true); break;
}
//
- // Rule 47: nested_name_specifier_with_template ::= class_or_namespace_name_with_template ::
+ // Rule 50: nested_name_specifier_with_template ::= class_or_namespace_name_with_template ::
//
- case 47: { action.builder.
+ case 50: { action.builder.
consumeNestedNameSpecifier(false); break;
}
//
- // Rule 48: class_or_namespace_name_with_template ::= template_opt class_or_namespace_name
+ // Rule 51: class_or_namespace_name_with_template ::= template_opt class_or_namespace_name
//
- case 48: { action.builder.
+ case 51: { action.builder.
consumeNameWithTemplateKeyword(); break;
}
//
- // Rule 50: nested_name_specifier_opt ::= $Empty
+ // Rule 53: nested_name_specifier_opt ::= $Empty
//
- case 50: { action.builder.
+ case 53: { action.builder.
consumeNestedNameSpecifierEmpty(); break;
}
//
- // Rule 54: postfix_expression ::= postfix_expression [ expression ]
+ // Rule 57: postfix_expression ::= postfix_expression [ expression ]
//
- case 54: { action.builder.
+ case 57: { action.builder.
consumeExpressionArraySubscript(); break;
}
//
- // Rule 55: postfix_expression ::= postfix_expression ( expression_list_opt )
+ // Rule 58: postfix_expression ::= postfix_expression ( expression_list_opt )
//
- case 55: { action.builder.
+ case 58: { action.builder.
consumeExpressionFunctionCall(); break;
}
//
- // Rule 56: postfix_expression ::= simple_type_specifier ( expression_list_opt )
+ // Rule 59: postfix_expression ::= simple_type_specifier ( expression_list_opt )
//
- case 56: { action.builder.
+ case 59: { action.builder.
consumeExpressionSimpleTypeConstructor(); break;
}
//
- // Rule 57: postfix_expression ::= typename dcolon_opt nested_name_specifier <empty> identifier_name ( expression_list_opt )
+ // Rule 60: postfix_expression ::= typename dcolon_opt nested_name_specifier <empty> identifier_name ( expression_list_opt )
//
- case 57: { action.builder.
+ case 60: { action.builder.
consumeExpressionTypeName(); break;
}
//
- // Rule 58: postfix_expression ::= typename dcolon_opt nested_name_specifier template_opt template_id_name ( expression_list_opt )
+ // Rule 61: postfix_expression ::= typename dcolon_opt nested_name_specifier template_opt template_id_name ( expression_list_opt )
//
- case 58: { action.builder.
+ case 61: { action.builder.
consumeExpressionTypeName(); break;
}
//
- // Rule 59: postfix_expression ::= postfix_expression . qualified_or_unqualified_name
+ // Rule 62: postfix_expression ::= postfix_expression . qualified_or_unqualified_name
//
- case 59: { action.builder.
+ case 62: { action.builder.
consumeExpressionFieldReference(false, false); break;
}
//
- // Rule 60: postfix_expression ::= postfix_expression -> qualified_or_unqualified_name
+ // Rule 63: postfix_expression ::= postfix_expression -> qualified_or_unqualified_name
//
- case 60: { action.builder.
+ case 63: { action.builder.
consumeExpressionFieldReference(true, false); break;
}
//
- // Rule 61: postfix_expression ::= postfix_expression . template qualified_or_unqualified_name
+ // Rule 64: postfix_expression ::= postfix_expression . template qualified_or_unqualified_name
//
- case 61: { action.builder.
+ case 64: { action.builder.
consumeExpressionFieldReference(false, true); break;
}
//
- // Rule 62: postfix_expression ::= postfix_expression -> template qualified_or_unqualified_name
+ // Rule 65: postfix_expression ::= postfix_expression -> template qualified_or_unqualified_name
//
- case 62: { action.builder.
+ case 65: { action.builder.
consumeExpressionFieldReference(true, true); break;
}
//
- // Rule 63: postfix_expression ::= postfix_expression . pseudo_destructor_name
+ // Rule 66: postfix_expression ::= postfix_expression . pseudo_destructor_name
//
- case 63: { action.builder.
+ case 66: { action.builder.
consumeExpressionFieldReference(false, false); break;
}
//
- // Rule 64: postfix_expression ::= postfix_expression -> pseudo_destructor_name
+ // Rule 67: postfix_expression ::= postfix_expression -> pseudo_destructor_name
//
- case 64: { action.builder.
+ case 67: { action.builder.
consumeExpressionFieldReference(true, false); break;
}
//
- // Rule 65: postfix_expression ::= postfix_expression ++
+ // Rule 68: postfix_expression ::= postfix_expression ++
//
- case 65: { action.builder.
+ case 68: { action.builder.
consumeExpressionUnaryOperator(IASTUnaryExpression.op_postFixIncr); break;
}
//
- // Rule 66: postfix_expression ::= postfix_expression --
+ // Rule 69: postfix_expression ::= postfix_expression --
//
- case 66: { action.builder.
+ case 69: { action.builder.
consumeExpressionUnaryOperator(IASTUnaryExpression.op_postFixDecr); break;
}
//
- // Rule 67: postfix_expression ::= dynamic_cast < type_id > ( expression )
+ // Rule 70: postfix_expression ::= dynamic_cast < type_id > ( expression )
//
- case 67: { action.builder.
+ case 70: { action.builder.
consumeExpressionCast(ICPPASTCastExpression.op_dynamic_cast); break;
}
//
- // Rule 68: postfix_expression ::= static_cast < type_id > ( expression )
+ // Rule 71: postfix_expression ::= static_cast < type_id > ( expression )
//
- case 68: { action.builder.
+ case 71: { action.builder.
consumeExpressionCast(ICPPASTCastExpression.op_static_cast); break;
}
//
- // Rule 69: postfix_expression ::= reinterpret_cast < type_id > ( expression )
+ // Rule 72: postfix_expression ::= reinterpret_cast < type_id > ( expression )
//
- case 69: { action.builder.
+ case 72: { action.builder.
consumeExpressionCast(ICPPASTCastExpression.op_reinterpret_cast); break;
}
//
- // Rule 70: postfix_expression ::= const_cast < type_id > ( expression )
+ // Rule 73: postfix_expression ::= const_cast < type_id > ( expression )
//
- case 70: { action.builder.
+ case 73: { action.builder.
consumeExpressionCast(ICPPASTCastExpression.op_const_cast); break;
}
//
- // Rule 71: postfix_expression ::= typeid ( expression )
+ // Rule 74: postfix_expression ::= typeid ( expression )
//
- case 71: { action.builder.
+ case 74: { action.builder.
consumeExpressionUnaryOperator(ICPPASTUnaryExpression.op_typeid); break;
}
//
- // Rule 72: postfix_expression ::= typeid ( type_id )
+ // Rule 75: postfix_expression ::= typeid ( type_id )
//
- case 72: { action.builder.
+ case 75: { action.builder.
consumeExpressionTypeId(ICPPASTTypeIdExpression.op_typeid); break;
}
//
- // Rule 73: pseudo_destructor_name ::= dcolon_opt nested_name_specifier_opt type_name :: ~ type_name
+ // Rule 76: pseudo_destructor_name ::= dcolon_opt nested_name_specifier_opt type_name :: ~ type_name
//
- case 73: { action.builder.
+ case 76: { action.builder.
consumePsudoDestructorName(true); break;
}
//
- // Rule 74: pseudo_destructor_name ::= dcolon_opt nested_name_specifier template template_id_name :: ~ type_name
+ // Rule 77: pseudo_destructor_name ::= dcolon_opt nested_name_specifier template template_id_name :: ~ type_name
//
- case 74: { action.builder.
+ case 77: { action.builder.
consumePsudoDestructorName(true); break;
}
//
- // Rule 75: pseudo_destructor_name ::= dcolon_opt nested_name_specifier_opt ~ type_name
+ // Rule 78: pseudo_destructor_name ::= dcolon_opt nested_name_specifier_opt ~ type_name
//
- case 75: { action.builder.
+ case 78: { action.builder.
consumePsudoDestructorName(false); break;
}
//
- // Rule 79: unary_expression ::= ++ cast_expression
+ // Rule 82: unary_expression ::= ++ cast_expression
//
- case 79: { action.builder.
+ case 82: { action.builder.
consumeExpressionUnaryOperator(IASTUnaryExpression.op_prefixIncr); break;
}
//
- // Rule 80: unary_expression ::= -- cast_expression
+ // Rule 83: unary_expression ::= -- cast_expression
//
- case 80: { action.builder.
+ case 83: { action.builder.
consumeExpressionUnaryOperator(IASTUnaryExpression.op_prefixDecr); break;
}
//
- // Rule 81: unary_expression ::= & cast_expression
+ // Rule 84: unary_expression ::= & cast_expression
//
- case 81: { action.builder.
+ case 84: { action.builder.
consumeExpressionUnaryOperator(IASTUnaryExpression.op_amper); break;
}
//
- // Rule 82: unary_expression ::= * cast_expression
+ // Rule 85: unary_expression ::= * cast_expression
//
- case 82: { action.builder.
+ case 85: { action.builder.
consumeExpressionUnaryOperator(IASTUnaryExpression.op_star); break;
}
//
- // Rule 83: unary_expression ::= + cast_expression
+ // Rule 86: unary_expression ::= + cast_expression
//
- case 83: { action.builder.
+ case 86: { action.builder.
consumeExpressionUnaryOperator(IASTUnaryExpression.op_plus); break;
}
//
- // Rule 84: unary_expression ::= - cast_expression
+ // Rule 87: unary_expression ::= - cast_expression
//
- case 84: { action.builder.
+ case 87: { action.builder.
consumeExpressionUnaryOperator(IASTUnaryExpression.op_minus); break;
}
//
- // Rule 85: unary_expression ::= ~ cast_expression
+ // Rule 88: unary_expression ::= ~ cast_expression
//
- case 85: { action.builder.
+ case 88: { action.builder.
consumeExpressionUnaryOperator(IASTUnaryExpression.op_tilde); break;
}
//
- // Rule 86: unary_expression ::= ! cast_expression
+ // Rule 89: unary_expression ::= ! cast_expression
//
- case 86: { action.builder.
+ case 89: { action.builder.
consumeExpressionUnaryOperator(IASTUnaryExpression.op_not); break;
}
//
- // Rule 87: unary_expression ::= sizeof unary_expression
+ // Rule 90: unary_expression ::= sizeof unary_expression
//
- case 87: { action.builder.
+ case 90: { action.builder.
consumeExpressionUnaryOperator(IASTUnaryExpression.op_sizeof); break;
}
//
- // Rule 88: unary_expression ::= sizeof ( type_id )
+ // Rule 91: unary_expression ::= sizeof ( type_id )
//
- case 88: { action.builder.
+ case 91: { action.builder.
consumeExpressionTypeId(ICPPASTTypeIdExpression.op_sizeof); break;
}
//
- // Rule 89: new_expression ::= dcolon_opt new new_placement_opt new_type_id <openscope-ast> new_array_expressions_opt new_initializer_opt
+ // Rule 92: new_expression ::= dcolon_opt new new_placement_opt new_type_id <openscope-ast> new_array_expressions_opt new_initializer_opt
//
- case 89: { action.builder.
+ case 92: { action.builder.
consumeExpressionNew(true); break;
}
//
- // Rule 90: new_expression ::= dcolon_opt new new_placement_opt ( type_id ) new_initializer_opt
+ // Rule 93: new_expression ::= dcolon_opt new new_placement_opt ( type_id ) new_initializer_opt
//
- case 90: { action.builder.
+ case 93: { action.builder.
consumeExpressionNew(false); break;
}
//
- // Rule 93: new_placement_opt ::= $Empty
+ // Rule 96: new_placement_opt ::= $Empty
//
- case 93: { action.builder.
+ case 96: { action.builder.
consumeEmpty(); break;
}
//
- // Rule 94: new_type_id ::= type_specifier_seq
+ // Rule 97: new_type_id ::= type_specifier_seq
//
- case 94: { action.builder.
+ case 97: { action.builder.
consumeTypeId(false); break;
}
//
- // Rule 95: new_type_id ::= type_specifier_seq new_declarator
+ // Rule 98: new_type_id ::= type_specifier_seq new_declarator
//
- case 95: { action.builder.
+ case 98: { action.builder.
consumeTypeId(true); break;
}
//
- // Rule 96: new_declarator ::= <openscope-ast> new_pointer_operators
+ // Rule 99: new_declarator ::= <openscope-ast> new_pointer_operators
//
- case 96: { action.builder.
+ case 99: { action.builder.
consumeNewDeclarator(); break;
}
//
- // Rule 105: new_initializer_opt ::= $Empty
+ // Rule 108: new_initializer_opt ::= $Empty
//
- case 105: { action.builder.
+ case 108: { action.builder.
consumeEmpty(); break;
}
//
- // Rule 106: delete_expression ::= dcolon_opt delete cast_expression
+ // Rule 109: delete_expression ::= dcolon_opt delete cast_expression
//
- case 106: { action.builder.
+ case 109: { action.builder.
consumeExpressionDelete(false); break;
}
//
- // Rule 107: delete_expression ::= dcolon_opt delete [ ] cast_expression
+ // Rule 110: delete_expression ::= dcolon_opt delete [ ] cast_expression
//
- case 107: { action.builder.
+ case 110: { action.builder.
consumeExpressionDelete(true); break;
}
//
- // Rule 110: pm_expression ::= pm_expression .* cast_expression
+ // Rule 113: pm_expression ::= pm_expression .* cast_expression
//
- case 110: { action.builder.
+ case 113: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_pmdot); break;
}
//
- // Rule 111: pm_expression ::= pm_expression ->* cast_expression
+ // Rule 114: pm_expression ::= pm_expression ->* cast_expression
//
- case 111: { action.builder.
+ case 114: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_pmarrow); break;
}
//
- // Rule 113: multiplicative_expression ::= multiplicative_expression * pm_expression
+ // Rule 116: multiplicative_expression ::= multiplicative_expression * pm_expression
//
- case 113: { action.builder.
+ case 116: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_multiply); break;
}
//
- // Rule 114: multiplicative_expression ::= multiplicative_expression / pm_expression
+ // Rule 117: multiplicative_expression ::= multiplicative_expression / pm_expression
//
- case 114: { action.builder.
+ case 117: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_divide); break;
}
//
- // Rule 115: multiplicative_expression ::= multiplicative_expression % pm_expression
+ // Rule 118: multiplicative_expression ::= multiplicative_expression % pm_expression
//
- case 115: { action.builder.
+ case 118: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_modulo); break;
}
//
- // Rule 117: additive_expression ::= additive_expression + multiplicative_expression
+ // Rule 120: additive_expression ::= additive_expression + multiplicative_expression
//
- case 117: { action.builder.
+ case 120: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_plus); break;
}
//
- // Rule 118: additive_expression ::= additive_expression - multiplicative_expression
+ // Rule 121: additive_expression ::= additive_expression - multiplicative_expression
//
- case 118: { action.builder.
+ case 121: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_minus); break;
}
//
- // Rule 120: shift_expression ::= shift_expression << additive_expression
+ // Rule 123: shift_expression ::= shift_expression << additive_expression
//
- case 120: { action.builder.
+ case 123: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_shiftLeft); break;
}
//
- // Rule 121: shift_expression ::= shift_expression >> additive_expression
+ // Rule 124: shift_expression ::= shift_expression >> additive_expression
//
- case 121: { action.builder.
+ case 124: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_shiftRight); break;
}
//
- // Rule 123: relational_expression ::= relational_expression < shift_expression
+ // Rule 126: relational_expression ::= relational_expression < shift_expression
//
- case 123: { action.builder.
+ case 126: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_lessThan); break;
}
//
- // Rule 124: relational_expression ::= relational_expression > shift_expression
+ // Rule 127: relational_expression ::= relational_expression > shift_expression
//
- case 124: { action.builder.
+ case 127: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_greaterThan); break;
}
//
- // Rule 125: relational_expression ::= relational_expression <= shift_expression
+ // Rule 128: relational_expression ::= relational_expression <= shift_expression
//
- case 125: { action.builder.
+ case 128: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_lessEqual); break;
}
//
- // Rule 126: relational_expression ::= relational_expression >= shift_expression
+ // Rule 129: relational_expression ::= relational_expression >= shift_expression
//
- case 126: { action.builder.
+ case 129: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_greaterEqual); break;
}
//
- // Rule 128: equality_expression ::= equality_expression == relational_expression
+ // Rule 131: equality_expression ::= equality_expression == relational_expression
//
- case 128: { action.builder.
+ case 131: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_equals); break;
}
//
- // Rule 129: equality_expression ::= equality_expression != relational_expression
+ // Rule 132: equality_expression ::= equality_expression != relational_expression
//
- case 129: { action.builder.
+ case 132: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_notequals); break;
}
//
- // Rule 131: and_expression ::= and_expression & equality_expression
+ // Rule 134: and_expression ::= and_expression & equality_expression
//
- case 131: { action.builder.
+ case 134: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_binaryAnd); break;
}
//
- // Rule 133: exclusive_or_expression ::= exclusive_or_expression ^ and_expression
+ // Rule 136: exclusive_or_expression ::= exclusive_or_expression ^ and_expression
//
- case 133: { action.builder.
+ case 136: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_binaryXor); break;
}
//
- // Rule 135: inclusive_or_expression ::= inclusive_or_expression | exclusive_or_expression
+ // Rule 138: inclusive_or_expression ::= inclusive_or_expression | exclusive_or_expression
//
- case 135: { action.builder.
+ case 138: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_binaryOr); break;
}
//
- // Rule 137: logical_and_expression ::= logical_and_expression && inclusive_or_expression
+ // Rule 140: logical_and_expression ::= logical_and_expression && inclusive_or_expression
//
- case 137: { action.builder.
+ case 140: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_logicalAnd); break;
}
//
- // Rule 139: logical_or_expression ::= logical_or_expression || logical_and_expression
+ // Rule 142: logical_or_expression ::= logical_or_expression || logical_and_expression
//
- case 139: { action.builder.
+ case 142: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_logicalOr); break;
}
//
- // Rule 141: conditional_expression ::= logical_or_expression ? expression : assignment_expression
+ // Rule 144: conditional_expression ::= logical_or_expression ? expression : assignment_expression
//
- case 141: { action.builder.
+ case 144: { action.builder.
consumeExpressionConditional(); break;
}
//
- // Rule 142: throw_expression ::= throw
+ // Rule 145: throw_expression ::= throw
//
- case 142: { action.builder.
+ case 145: { action.builder.
consumeExpressionThrow(false); break;
}
//
- // Rule 143: throw_expression ::= throw assignment_expression
+ // Rule 146: throw_expression ::= throw assignment_expression
//
- case 143: { action.builder.
+ case 146: { action.builder.
consumeExpressionThrow(true); break;
}
//
- // Rule 146: assignment_expression ::= logical_or_expression = assignment_expression
+ // Rule 149: assignment_expression ::= logical_or_expression = assignment_expression
//
- case 146: { action.builder.
+ case 149: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_assign); break;
}
//
- // Rule 147: assignment_expression ::= logical_or_expression *= assignment_expression
+ // Rule 150: assignment_expression ::= logical_or_expression *= assignment_expression
//
- case 147: { action.builder.
+ case 150: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_multiplyAssign); break;
}
//
- // Rule 148: assignment_expression ::= logical_or_expression /= assignment_expression
+ // Rule 151: assignment_expression ::= logical_or_expression /= assignment_expression
//
- case 148: { action.builder.
+ case 151: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_divideAssign); break;
}
//
- // Rule 149: assignment_expression ::= logical_or_expression %= assignment_expression
+ // Rule 152: assignment_expression ::= logical_or_expression %= assignment_expression
//
- case 149: { action.builder.
+ case 152: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_moduloAssign); break;
}
//
- // Rule 150: assignment_expression ::= logical_or_expression += assignment_expression
+ // Rule 153: assignment_expression ::= logical_or_expression += assignment_expression
//
- case 150: { action.builder.
+ case 153: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_plusAssign); break;
}
//
- // Rule 151: assignment_expression ::= logical_or_expression -= assignment_expression
+ // Rule 154: assignment_expression ::= logical_or_expression -= assignment_expression
//
- case 151: { action.builder.
+ case 154: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_minusAssign); break;
}
//
- // Rule 152: assignment_expression ::= logical_or_expression >>= assignment_expression
+ // Rule 155: assignment_expression ::= logical_or_expression >>= assignment_expression
//
- case 152: { action.builder.
+ case 155: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_shiftRightAssign); break;
}
//
- // Rule 153: assignment_expression ::= logical_or_expression <<= assignment_expression
+ // Rule 156: assignment_expression ::= logical_or_expression <<= assignment_expression
//
- case 153: { action.builder.
+ case 156: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_shiftLeftAssign); break;
}
//
- // Rule 154: assignment_expression ::= logical_or_expression &= assignment_expression
+ // Rule 157: assignment_expression ::= logical_or_expression &= assignment_expression
//
- case 154: { action.builder.
+ case 157: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_binaryAndAssign); break;
}
//
- // Rule 155: assignment_expression ::= logical_or_expression ^= assignment_expression
+ // Rule 158: assignment_expression ::= logical_or_expression ^= assignment_expression
//
- case 155: { action.builder.
+ case 158: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_binaryXorAssign); break;
}
//
- // Rule 156: assignment_expression ::= logical_or_expression |= assignment_expression
+ // Rule 159: assignment_expression ::= logical_or_expression |= assignment_expression
//
- case 156: { action.builder.
+ case 159: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_binaryOrAssign); break;
}
//
- // Rule 158: expression ::= ERROR_TOKEN
+ // Rule 161: expression ::= ERROR_TOKEN
//
- case 158: { action.builder.
+ case 161: { action.builder.
consumeExpressionProblem(); break;
}
//
- // Rule 159: expression_list ::= <openscope-ast> expression_list_actual
+ // Rule 162: expression_list ::= <openscope-ast> expression_list_actual
//
- case 159: { action.builder.
+ case 162: { action.builder.
consumeExpressionList(); break;
}
//
- // Rule 163: expression_list_opt ::= $Empty
+ // Rule 166: expression_list_opt ::= $Empty
//
- case 163: { action.builder.
+ case 166: { action.builder.
consumeEmpty(); break;
}
//
- // Rule 165: expression_opt ::= $Empty
+ // Rule 168: expression_opt ::= $Empty
//
- case 165: { action.builder.
+ case 168: { action.builder.
consumeEmpty(); break;
}
//
- // Rule 168: constant_expression_opt ::= $Empty
+ // Rule 171: constant_expression_opt ::= $Empty
//
- case 168: { action.builder.
+ case 171: { action.builder.
consumeEmpty(); break;
}
//
- // Rule 177: statement ::= ERROR_TOKEN
+ // Rule 180: statement ::= ERROR_TOKEN
//
- case 177: { action.builder.
+ case 180: { action.builder.
consumeStatementProblem(); break;
}
//
- // Rule 178: labeled_statement ::= identifier : statement
+ // Rule 181: labeled_statement ::= identifier : statement
//
- case 178: { action.builder.
+ case 181: { action.builder.
consumeStatementLabeled(); break;
}
//
- // Rule 179: labeled_statement ::= case constant_expression :
+ // Rule 182: labeled_statement ::= case constant_expression :
//
- case 179: { action.builder.
+ case 182: { action.builder.
consumeStatementCase(); break;
}
//
- // Rule 180: labeled_statement ::= default :
+ // Rule 183: labeled_statement ::= default :
//
- case 180: { action.builder.
+ case 183: { action.builder.
consumeStatementDefault(); break;
}
//
- // Rule 181: expression_statement ::= expression ;
+ // Rule 184: expression_statement ::= expression ;
//
- case 181: { action.builder.
+ case 184: { action.builder.
consumeStatementExpression(); break;
}
//
- // Rule 182: expression_statement ::= ;
+ // Rule 185: expression_statement ::= ;
//
- case 182: { action.builder.
+ case 185: { action.builder.
consumeStatementNull(); break;
}
//
- // Rule 183: compound_statement ::= { <openscope-ast> statement_seq }
+ // Rule 186: compound_statement ::= { <openscope-ast> statement_seq }
//
- case 183: { action.builder.
+ case 186: { action.builder.
consumeStatementCompoundStatement(true); break;
}
//
- // Rule 184: compound_statement ::= { }
+ // Rule 187: compound_statement ::= { }
//
- case 184: { action.builder.
+ case 187: { action.builder.
consumeStatementCompoundStatement(false); break;
}
//
- // Rule 187: selection_statement ::= if ( condition ) statement
+ // Rule 190: selection_statement ::= if ( condition ) statement
//
- case 187: { action.builder.
+ case 190: { action.builder.
consumeStatementIf(false); break;
}
//
- // Rule 188: selection_statement ::= if ( condition ) statement else statement
+ // Rule 191: selection_statement ::= if ( condition ) statement else statement
//
- case 188: { action.builder.
+ case 191: { action.builder.
consumeStatementIf(true); break;
}
//
- // Rule 189: selection_statement ::= switch ( condition ) statement
+ // Rule 192: selection_statement ::= switch ( condition ) statement
//
- case 189: { action.builder.
+ case 192: { action.builder.
consumeStatementSwitch(); break;
}
//
- // Rule 191: condition ::= type_specifier_seq declarator = assignment_expression
+ // Rule 194: condition ::= type_specifier_seq declarator = assignment_expression
//
- case 191: { action.builder.
+ case 194: { action.builder.
consumeConditionDeclaration(); break;
}
//
- // Rule 192: iteration_statement ::= while ( condition ) statement
+ // Rule 195: iteration_statement ::= while ( condition ) statement
//
- case 192: { action.builder.
+ case 195: { action.builder.
consumeStatementWhileLoop(); break;
}
//
- // Rule 193: iteration_statement ::= do statement while ( expression ) ;
+ // Rule 196: iteration_statement ::= do statement while ( expression ) ;
//
- case 193: { action.builder.
+ case 196: { action.builder.
consumeStatementDoLoop(); break;
}
//
- // Rule 194: iteration_statement ::= for ( expression_opt ; expression_opt ; expression_opt ) statement
+ // Rule 197: iteration_statement ::= for ( expression_opt ; expression_opt ; expression_opt ) statement
//
- case 194: { action.builder.
+ case 197: { action.builder.
consumeStatementForLoop(); break;
}
//
- // Rule 195: iteration_statement ::= for ( simple_declaration expression_opt ; expression_opt ) statement
+ // Rule 198: iteration_statement ::= for ( simple_declaration expression_opt ; expression_opt ) statement
//
- case 195: { action.builder.
+ case 198: { action.builder.
consumeStatementForLoop(); break;
}
//
- // Rule 196: jump_statement ::= break ;
+ // Rule 199: jump_statement ::= break ;
//
- case 196: { action.builder.
+ case 199: { action.builder.
consumeStatementBreak(); break;
}
//
- // Rule 197: jump_statement ::= continue ;
+ // Rule 200: jump_statement ::= continue ;
//
- case 197: { action.builder.
+ case 200: { action.builder.
consumeStatementContinue(); break;
}
//
- // Rule 198: jump_statement ::= return expression ;
+ // Rule 201: jump_statement ::= return expression ;
//
- case 198: { action.builder.
+ case 201: { action.builder.
consumeStatementReturn(true); break;
}
//
- // Rule 199: jump_statement ::= return ;
+ // Rule 202: jump_statement ::= return ;
//
- case 199: { action.builder.
+ case 202: { action.builder.
consumeStatementReturn(false); break;
}
//
- // Rule 200: jump_statement ::= goto identifier ;
+ // Rule 203: jump_statement ::= goto identifier_token ;
//
- case 200: { action.builder.
+ case 203: { action.builder.
consumeStatementGoto(); break;
}
//
- // Rule 201: declaration_statement ::= block_declaration
+ // Rule 204: declaration_statement ::= block_declaration
//
- case 201: { action.builder.
+ case 204: { action.builder.
consumeStatementDeclaration(); break;
}
//
- // Rule 218: simple_declaration ::= declaration_specifiers_opt <openscope-ast> init_declarator_list_opt ;
+ // Rule 221: simple_declaration ::= declaration_specifiers_opt <openscope-ast> init_declarator_list_opt ;
//
- case 218: { action.builder.
+ case 221: { action.builder.
consumeDeclarationSimple(true); break;
}
//
- // Rule 219: declaration_specifiers ::= <openscope-ast> simple_declaration_specifiers
+ // Rule 222: declaration_specifiers ::= <openscope-ast> simple_declaration_specifiers
//
- case 219: { action.builder.
+ case 222: { action.builder.
consumeDeclarationSpecifiersSimple(); break;
}
//
- // Rule 220: declaration_specifiers ::= <openscope-ast> class_declaration_specifiers
+ // Rule 223: declaration_specifiers ::= <openscope-ast> class_declaration_specifiers
//
- case 220: { action.builder.
+ case 223: { action.builder.
consumeDeclarationSpecifiersComposite(); break;
}
//
- // Rule 221: declaration_specifiers ::= <openscope-ast> elaborated_declaration_specifiers
+ // Rule 224: declaration_specifiers ::= <openscope-ast> elaborated_declaration_specifiers
//
- case 221: { action.builder.
+ case 224: { action.builder.
consumeDeclarationSpecifiersComposite(); break;
}
//
- // Rule 222: declaration_specifiers ::= <openscope-ast> enum_declaration_specifiers
+ // Rule 225: declaration_specifiers ::= <openscope-ast> enum_declaration_specifiers
//
- case 222: { action.builder.
+ case 225: { action.builder.
consumeDeclarationSpecifiersComposite(); break;
}
//
- // Rule 223: declaration_specifiers ::= <openscope-ast> type_name_declaration_specifiers
+ // Rule 226: declaration_specifiers ::= <openscope-ast> type_name_declaration_specifiers
//
- case 223: { action.builder.
+ case 226: { action.builder.
consumeDeclarationSpecifiersTypeName(); break;
}
//
- // Rule 225: declaration_specifiers_opt ::= $Empty
+ // Rule 228: declaration_specifiers_opt ::= $Empty
//
- case 225: { action.builder.
+ case 228: { action.builder.
consumeEmpty(); break;
}
//
- // Rule 229: no_type_declaration_specifier ::= friend
+ // Rule 232: no_type_declaration_specifier ::= friend
//
- case 229: { action.builder.
+ case 232: { action.builder.
consumeDeclSpecToken(); break;
}
//
- // Rule 230: no_type_declaration_specifier ::= typedef
+ // Rule 233: no_type_declaration_specifier ::= typedef
//
- case 230: { action.builder.
+ case 233: { action.builder.
consumeDeclSpecToken(); break;
}
//
- // Rule 259: simple_type_specifier ::= simple_type_specifier_token
+ // Rule 262: simple_type_specifier ::= simple_type_specifier_token
//
- case 259: { action.builder.
+ case 262: { action.builder.
consumeDeclSpecToken(); break;
}
//
- // Rule 275: type_name_specifier ::= dcolon_opt nested_name_specifier_opt type_name
+ // Rule 278: type_name_specifier ::= dcolon_opt nested_name_specifier_opt type_name
//
- case 275: { action.builder.
+ case 278: { action.builder.
consumeQualifiedId(false); break;
}
//
- // Rule 276: type_name_specifier ::= dcolon_opt nested_name_specifier template template_id_name
+ // Rule 279: type_name_specifier ::= dcolon_opt nested_name_specifier template template_id_name
//
- case 276: { action.builder.
+ case 279: { action.builder.
consumeQualifiedId(false); break;
}
//
- // Rule 277: type_name_specifier ::= typename dcolon_opt nested_name_specifier identifier_name
+ // Rule 280: type_name_specifier ::= typename dcolon_opt nested_name_specifier identifier_name
//
- case 277: { action.builder.
+ case 280: { action.builder.
consumeQualifiedId(false); break;
}
//
- // Rule 278: type_name_specifier ::= typename dcolon_opt nested_name_specifier template_opt template_id_name
+ // Rule 281: type_name_specifier ::= typename dcolon_opt nested_name_specifier template_opt template_id_name
//
- case 278: { action.builder.
+ case 281: { action.builder.
consumeQualifiedId(true); break;
}
//
- // Rule 279: elaborated_type_specifier ::= class_keyword dcolon_opt nested_name_specifier_opt identifier_name
+ // Rule 282: elaborated_type_specifier ::= class_keyword dcolon_opt nested_name_specifier_opt identifier_name
//
- case 279: { action.builder.
+ case 282: { action.builder.
consumeTypeSpecifierElaborated(false); break;
}
//
- // Rule 280: elaborated_type_specifier ::= class_keyword dcolon_opt nested_name_specifier_opt template_opt template_id_name
+ // Rule 283: elaborated_type_specifier ::= class_keyword dcolon_opt nested_name_specifier_opt template_opt template_id_name
//
- case 280: { action.builder.
+ case 283: { action.builder.
consumeTypeSpecifierElaborated(true); break;
}
//
- // Rule 281: elaborated_type_specifier ::= enum dcolon_opt nested_name_specifier_opt identifier_name
+ // Rule 284: elaborated_type_specifier ::= enum dcolon_opt nested_name_specifier_opt identifier_name
//
- case 281: { action.builder.
+ case 284: { action.builder.
consumeTypeSpecifierElaborated(false); break;
}
//
- // Rule 283: enum_specifier ::= enum { <openscope-ast> enumerator_list_opt }
+ // Rule 286: enum_specifier ::= enum { <openscope-ast> enumerator_list_opt }
//
- case 283: { action.builder.
+ case 286: { action.builder.
consumeTypeSpecifierEnumeration(false); break;
}
//
- // Rule 284: enum_specifier ::= enum identifier { <openscope-ast> enumerator_list_opt }
+ // Rule 287: enum_specifier ::= enum identifier_token { <openscope-ast> enumerator_list_opt }
//
- case 284: { action.builder.
+ case 287: { action.builder.
consumeTypeSpecifierEnumeration(true); break;
}
//
- // Rule 289: enumerator_definition ::= enumerator
+ // Rule 292: enumerator_definition ::= enumerator
//
- case 289: { action.builder.
+ case 292: { action.builder.
consumeEnumerator(false); break;
}
//
- // Rule 290: enumerator_definition ::= enumerator = constant_expression
+ // Rule 293: enumerator_definition ::= enumerator = constant_expression
//
- case 290: { action.builder.
+ case 293: { action.builder.
consumeEnumerator(true); break;
}
//
- // Rule 299: original_namespace_definition ::= namespace identifier_name { <openscope-ast> declaration_seq_opt }
+ // Rule 302: original_namespace_definition ::= namespace identifier_name { <openscope-ast> declaration_seq_opt }
//
- case 299: { action.builder.
+ case 302: { action.builder.
consumeNamespaceDefinition(true); break;
}
//
- // Rule 300: extension_namespace_definition ::= namespace original_namespace_name { <openscope-ast> declaration_seq_opt }
+ // Rule 303: extension_namespace_definition ::= namespace original_namespace_name { <openscope-ast> declaration_seq_opt }
//
- case 300: { action.builder.
+ case 303: { action.builder.
consumeNamespaceDefinition(true); break;
}
//
- // Rule 301: unnamed_namespace_definition ::= namespace { <openscope-ast> declaration_seq_opt }
+ // Rule 304: unnamed_namespace_definition ::= namespace { <openscope-ast> declaration_seq_opt }
//
- case 301: { action.builder.
+ case 304: { action.builder.
consumeNamespaceDefinition(false); break;
}
//
- // Rule 303: namespace_alias_definition ::= namespace identifier = dcolon_opt nested_name_specifier_opt namespace_name ;
+ // Rule 306: namespace_alias_definition ::= namespace identifier_token = dcolon_opt nested_name_specifier_opt namespace_name ;
//
- case 303: { action.builder.
+ case 306: { action.builder.
consumeNamespaceAliasDefinition(); break;
}
//
- // Rule 304: using_declaration ::= using typename_opt dcolon_opt nested_name_specifier_opt unqualified_id_name ;
+ // Rule 307: using_declaration ::= using typename_opt dcolon_opt nested_name_specifier_opt unqualified_id_name ;
//
- case 304: { action.builder.
+ case 307: { action.builder.
consumeUsingDeclaration(); break;
}
//
- // Rule 305: typename_opt ::= typename
+ // Rule 308: typename_opt ::= typename
//
- case 305: { action.builder.
+ case 308: { action.builder.
consumePlaceHolder(); break;
}
//
- // Rule 306: typename_opt ::= $Empty
+ // Rule 309: typename_opt ::= $Empty
//
- case 306: { action.builder.
+ case 309: { action.builder.
consumeEmpty(); break;
}
//
- // Rule 307: using_directive ::= using namespace dcolon_opt nested_name_specifier_opt namespace_name ;
+ // Rule 310: using_directive ::= using namespace dcolon_opt nested_name_specifier_opt namespace_name ;
//
- case 307: { action.builder.
+ case 310: { action.builder.
consumeUsingDirective(); break;
}
//
- // Rule 308: asm_definition ::= asm ( stringlit ) ;
+ // Rule 311: asm_definition ::= asm ( stringlit ) ;
//
- case 308: { action.builder.
+ case 311: { action.builder.
consumeDeclarationASM(); break;
}
//
- // Rule 309: linkage_specification ::= extern stringlit { <openscope-ast> declaration_seq_opt }
+ // Rule 312: linkage_specification ::= extern stringlit { <openscope-ast> declaration_seq_opt }
//
- case 309: { action.builder.
+ case 312: { action.builder.
consumeLinkageSpecification(); break;
}
//
- // Rule 310: linkage_specification ::= extern stringlit <openscope-ast> declaration
+ // Rule 313: linkage_specification ::= extern stringlit <openscope-ast> declaration
//
- case 310: { action.builder.
+ case 313: { action.builder.
consumeLinkageSpecification(); break;
}
//
- // Rule 316: init_declarator ::= declarator initializer
+ // Rule 319: init_declarator ::= declarator initializer
//
- case 316: { action.builder.
+ case 319: { action.builder.
consumeDeclaratorWithInitializer(true); break;
}
//
- // Rule 318: declarator ::= <openscope-ast> ptr_operator_seq direct_declarator
+ // Rule 321: declarator ::= <openscope-ast> ptr_operator_seq direct_declarator
//
- case 318: { action.builder.
+ case 321: { action.builder.
consumeDeclaratorWithPointer(true); break;
}
//
- // Rule 320: function_declarator ::= <openscope-ast> ptr_operator_seq direct_declarator
+ // Rule 323: function_declarator ::= <openscope-ast> ptr_operator_seq direct_declarator
//
- case 320: { action.builder.
+ case 323: { action.builder.
consumeDeclaratorWithPointer(true); break;
}
//
- // Rule 324: basic_direct_declarator ::= declarator_id_name
+ // Rule 327: basic_direct_declarator ::= declarator_id_name
//
- case 324: { action.builder.
+ case 327: { action.builder.
consumeDirectDeclaratorIdentifier(); break;
}
//
- // Rule 325: basic_direct_declarator ::= ( declarator )
+ // Rule 328: basic_direct_declarator ::= ( declarator )
//
- case 325: { action.builder.
+ case 328: { action.builder.
consumeDirectDeclaratorBracketed(); break;
}
//
- // Rule 326: function_direct_declarator ::= basic_direct_declarator ( <openscope-ast> parameter_declaration_clause ) <openscope-ast> cv_qualifier_seq_opt <openscope-ast> exception_specification_opt
+ // Rule 329: function_direct_declarator ::= basic_direct_declarator ( <openscope-ast> parameter_declaration_clause ) <openscope-ast> cv_qualifier_seq_opt <openscope-ast> exception_specification_opt
//
- case 326: { action.builder.
+ case 329: { action.builder.
consumeDirectDeclaratorFunctionDeclarator(true); break;
}
//
- // Rule 327: array_direct_declarator ::= array_direct_declarator array_modifier
+ // Rule 330: array_direct_declarator ::= array_direct_declarator array_modifier
//
- case 327: { action.builder.
+ case 330: { action.builder.
consumeDirectDeclaratorArrayDeclarator(true); break;
}
//
- // Rule 328: array_direct_declarator ::= basic_direct_declarator array_modifier
+ // Rule 331: array_direct_declarator ::= basic_direct_declarator array_modifier
//
- case 328: { action.builder.
+ case 331: { action.builder.
consumeDirectDeclaratorArrayDeclarator(true); break;
}
//
- // Rule 329: array_modifier ::= [ constant_expression ]
+ // Rule 332: array_modifier ::= [ constant_expression ]
//
- case 329: { action.builder.
+ case 332: { action.builder.
consumeDirectDeclaratorArrayModifier(true); break;
}
//
- // Rule 330: array_modifier ::= [ ]
+ // Rule 333: array_modifier ::= [ ]
//
- case 330: { action.builder.
+ case 333: { action.builder.
consumeDirectDeclaratorArrayModifier(false); break;
}
//
- // Rule 331: ptr_operator ::= * <openscope-ast> cv_qualifier_seq_opt
+ // Rule 334: ptr_operator ::= * <openscope-ast> cv_qualifier_seq_opt
//
- case 331: { action.builder.
+ case 334: { action.builder.
consumePointer(); break;
}
//
- // Rule 332: ptr_operator ::= &
+ // Rule 335: ptr_operator ::= &
//
- case 332: { action.builder.
+ case 335: { action.builder.
consumeReferenceOperator(); break;
}
//
- // Rule 333: ptr_operator ::= dcolon_opt nested_name_specifier * <openscope-ast> cv_qualifier_seq_opt
+ // Rule 336: ptr_operator ::= dcolon_opt nested_name_specifier * <openscope-ast> cv_qualifier_seq_opt
//
- case 333: { action.builder.
+ case 336: { action.builder.
consumePointerToMember(); break;
}
//
- // Rule 339: cv_qualifier ::= const
+ // Rule 342: cv_qualifier ::= const
//
- case 339: { action.builder.
+ case 342: { action.builder.
consumeDeclSpecToken(); break;
}
//
- // Rule 340: cv_qualifier ::= volatile
+ // Rule 343: cv_qualifier ::= volatile
//
- case 340: { action.builder.
+ case 343: { action.builder.
consumeDeclSpecToken(); break;
}
//
- // Rule 342: declarator_id_name ::= dcolon_opt nested_name_specifier_opt type_name
+ // Rule 345: declarator_id_name ::= dcolon_opt nested_name_specifier_opt type_name
//
- case 342: { action.builder.
+ case 345: { action.builder.
consumeQualifiedId(false); break;
}
//
- // Rule 343: type_id ::= type_specifier_seq
+ // Rule 346: type_id ::= type_specifier_seq
//
- case 343: { action.builder.
+ case 346: { action.builder.
consumeTypeId(false); break;
}
//
- // Rule 344: type_id ::= type_specifier_seq abstract_declarator
+ // Rule 347: type_id ::= type_specifier_seq abstract_declarator
//
- case 344: { action.builder.
+ case 347: { action.builder.
consumeTypeId(true); break;
}
//
- // Rule 347: abstract_declarator ::= <openscope-ast> ptr_operator_seq
+ // Rule 350: abstract_declarator ::= <openscope-ast> ptr_operator_seq
//
- case 347: { action.builder.
+ case 350: { action.builder.
consumeDeclaratorWithPointer(false); break;
}
//
- // Rule 348: abstract_declarator ::= <openscope-ast> ptr_operator_seq direct_abstract_declarator
+ // Rule 351: abstract_declarator ::= <openscope-ast> ptr_operator_seq direct_abstract_declarator
//
- case 348: { action.builder.
+ case 351: { action.builder.
consumeDeclaratorWithPointer(true); break;
}
//
- // Rule 352: basic_direct_abstract_declarator ::= ( abstract_declarator )
+ // Rule 355: basic_direct_abstract_declarator ::= ( abstract_declarator )
//
- case 352: { action.builder.
+ case 355: { action.builder.
consumeDirectDeclaratorBracketed(); break;
}
//
- // Rule 353: array_direct_abstract_declarator ::= array_modifier
+ // Rule 356: array_direct_abstract_declarator ::= array_modifier
//
- case 353: { action.builder.
+ case 356: { action.builder.
consumeDirectDeclaratorArrayDeclarator(false); break;
}
//
- // Rule 354: array_direct_abstract_declarator ::= array_direct_abstract_declarator array_modifier
+ // Rule 357: array_direct_abstract_declarator ::= array_direct_abstract_declarator array_modifier
//
- case 354: { action.builder.
+ case 357: { action.builder.
consumeDirectDeclaratorArrayDeclarator(true); break;
}
//
- // Rule 355: array_direct_abstract_declarator ::= basic_direct_abstract_declarator array_modifier
+ // Rule 358: array_direct_abstract_declarator ::= basic_direct_abstract_declarator array_modifier
//
- case 355: { action.builder.
+ case 358: { action.builder.
consumeDirectDeclaratorArrayDeclarator(true); break;
}
//
- // Rule 356: function_direct_abstract_declarator ::= basic_direct_abstract_declarator ( <openscope-ast> parameter_declaration_clause ) <openscope-ast> cv_qualifier_seq_opt <openscope-ast> exception_specification_opt
+ // Rule 359: function_direct_abstract_declarator ::= basic_direct_abstract_declarator ( <openscope-ast> parameter_declaration_clause ) <openscope-ast> cv_qualifier_seq_opt <openscope-ast> exception_specification_opt
//
- case 356: { action.builder.
+ case 359: { action.builder.
consumeDirectDeclaratorFunctionDeclarator(true); break;
}
//
- // Rule 357: function_direct_abstract_declarator ::= ( <openscope-ast> parameter_declaration_clause ) <openscope-ast> cv_qualifier_seq_opt <openscope-ast> exception_specification_opt
+ // Rule 360: function_direct_abstract_declarator ::= ( <openscope-ast> parameter_declaration_clause ) <openscope-ast> cv_qualifier_seq_opt <openscope-ast> exception_specification_opt
//
- case 357: { action.builder.
+ case 360: { action.builder.
consumeDirectDeclaratorFunctionDeclarator(false); break;
}
//
- // Rule 358: parameter_declaration_clause ::= parameter_declaration_list_opt ...
+ // Rule 361: parameter_declaration_clause ::= parameter_declaration_list_opt ...
//
- case 358: { action.builder.
+ case 361: { action.builder.
consumePlaceHolder(); break;
}
//
- // Rule 359: parameter_declaration_clause ::= parameter_declaration_list_opt
+ // Rule 362: parameter_declaration_clause ::= parameter_declaration_list_opt
//
- case 359: { action.builder.
+ case 362: { action.builder.
consumeEmpty(); break;
}
//
- // Rule 360: parameter_declaration_clause ::= parameter_declaration_list , ...
+ // Rule 363: parameter_declaration_clause ::= parameter_declaration_list , ...
//
- case 360: { action.builder.
+ case 363: { action.builder.
consumePlaceHolder(); break;
}
//
- // Rule 366: abstract_declarator_opt ::= $Empty
+ // Rule 369: abstract_declarator_opt ::= $Empty
//
- case 366: { action.builder.
+ case 369: { action.builder.
consumeEmpty(); break;
}
//
- // Rule 367: parameter_declaration ::= declaration_specifiers parameter_init_declarator
+ // Rule 370: parameter_declaration ::= declaration_specifiers parameter_init_declarator
//
- case 367: { action.builder.
+ case 370: { action.builder.
consumeParameterDeclaration(); break;
}
//
- // Rule 368: parameter_declaration ::= declaration_specifiers
+ // Rule 371: parameter_declaration ::= declaration_specifiers
//
- case 368: { action.builder.
+ case 371: { action.builder.
consumeParameterDeclarationWithoutDeclarator(); break;
}
//
- // Rule 370: parameter_init_declarator ::= declarator = parameter_initializer
+ // Rule 373: parameter_init_declarator ::= declarator = parameter_initializer
//
- case 370: { action.builder.
+ case 373: { action.builder.
consumeDeclaratorWithInitializer(true); break;
}
//
- // Rule 372: parameter_init_declarator ::= abstract_declarator = parameter_initializer
+ // Rule 375: parameter_init_declarator ::= abstract_declarator = parameter_initializer
//
- case 372: { action.builder.
+ case 375: { action.builder.
consumeDeclaratorWithInitializer(true); break;
}
//
- // Rule 373: parameter_init_declarator ::= = parameter_initializer
+ // Rule 376: parameter_init_declarator ::= = parameter_initializer
//
- case 373: { action.builder.
+ case 376: { action.builder.
consumeDeclaratorWithInitializer(false); break;
}
//
- // Rule 374: parameter_initializer ::= assignment_expression
+ // Rule 377: parameter_initializer ::= assignment_expression
//
- case 374: { action.builder.
+ case 377: { action.builder.
consumeInitializer(); break;
}
//
- // Rule 375: function_definition ::= declaration_specifiers_opt function_declarator <openscope-ast> ctor_initializer_list_opt function_body
+ // Rule 378: function_definition ::= declaration_specifiers_opt function_declarator <openscope-ast> ctor_initializer_list_opt function_body
//
- case 375: { action.builder.
+ case 378: { action.builder.
consumeFunctionDefinition(false); break;
}
//
- // Rule 376: function_definition ::= declaration_specifiers_opt function_declarator try <openscope-ast> ctor_initializer_list_opt function_body <openscope-ast> handler_seq
+ // Rule 379: function_definition ::= declaration_specifiers_opt function_declarator try <openscope-ast> ctor_initializer_list_opt function_body <openscope-ast> handler_seq
//
- case 376: { action.builder.
+ case 379: { action.builder.
consumeFunctionDefinition(true); break;
}
//
- // Rule 379: initializer ::= ( expression_list )
+ // Rule 382: initializer ::= ( expression_list )
//
- case 379: { action.builder.
+ case 382: { action.builder.
consumeInitializerConstructor(); break;
}
//
- // Rule 380: initializer_clause ::= assignment_expression
+ // Rule 383: initializer_clause ::= assignment_expression
//
- case 380: { action.builder.
+ case 383: { action.builder.
consumeInitializer(); break;
}
//
- // Rule 381: initializer_clause ::= { <openscope-ast> initializer_list , }
+ // Rule 384: initializer_clause ::= { <openscope-ast> initializer_list , }
//
- case 381: { action.builder.
+ case 384: { action.builder.
consumeInitializerList(); break;
}
//
- // Rule 382: initializer_clause ::= { <openscope-ast> initializer_list }
+ // Rule 385: initializer_clause ::= { <openscope-ast> initializer_list }
//
- case 382: { action.builder.
+ case 385: { action.builder.
consumeInitializerList(); break;
}
//
- // Rule 383: initializer_clause ::= { <openscope-ast> }
+ // Rule 386: initializer_clause ::= { <openscope-ast> }
//
- case 383: { action.builder.
+ case 386: { action.builder.
consumeInitializerList(); break;
}
//
- // Rule 388: class_specifier ::= class_head { <openscope-ast> member_declaration_list_opt }
+ // Rule 391: class_specifier ::= class_head { <openscope-ast> member_declaration_list_opt }
//
- case 388: { action.builder.
+ case 391: { action.builder.
consumeClassSpecifier(); break;
}
//
- // Rule 389: class_head ::= class_keyword identifier_name_opt <openscope-ast> base_clause_opt
+ // Rule 392: class_head ::= class_keyword identifier_name_opt <openscope-ast> base_clause_opt
//
- case 389: { action.builder.
+ case 392: { action.builder.
consumeClassHead(false); break;
}
//
- // Rule 390: class_head ::= class_keyword template_id_name <openscope-ast> base_clause_opt
+ // Rule 393: class_head ::= class_keyword template_id_name <openscope-ast> base_clause_opt
//
- case 390: { action.builder.
+ case 393: { action.builder.
consumeClassHead(false); break;
}
//
- // Rule 391: class_head ::= class_keyword nested_name_specifier identifier_name <openscope-ast> base_clause_opt
+ // Rule 394: class_head ::= class_keyword nested_name_specifier identifier_name <openscope-ast> base_clause_opt
//
- case 391: { action.builder.
+ case 394: { action.builder.
consumeClassHead(true); break;
}
//
- // Rule 392: class_head ::= class_keyword nested_name_specifier template_id_name <openscope-ast> base_clause_opt
+ // Rule 395: class_head ::= class_keyword nested_name_specifier template_id_name <openscope-ast> base_clause_opt
//
- case 392: { action.builder.
+ case 395: { action.builder.
consumeClassHead(true); break;
}
//
- // Rule 396: identifier_name_opt ::= $Empty
+ // Rule 397: identifier_name_opt ::= $Empty
//
- case 396: { action.builder.
+ case 397: { action.builder.
consumeEmpty(); break;
}
//
- // Rule 400: visibility_label ::= access_specifier_keyword :
+ // Rule 401: visibility_label ::= access_specifier_keyword :
//
- case 400: { action.builder.
+ case 401: { action.builder.
consumeVisibilityLabel(); break;
}
//
- // Rule 401: member_declaration ::= declaration_specifiers_opt <openscope-ast> member_declarator_list ;
+ // Rule 402: member_declaration ::= declaration_specifiers_opt <openscope-ast> member_declarator_list ;
//
- case 401: { action.builder.
+ case 402: { action.builder.
consumeDeclarationSimple(true); break;
}
//
- // Rule 402: member_declaration ::= declaration_specifiers_opt ;
+ // Rule 403: member_declaration ::= declaration_specifiers_opt ;
//
- case 402: { action.builder.
+ case 403: { action.builder.
consumeDeclarationSimple(false); break;
}
//
- // Rule 405: member_declaration ::= dcolon_opt nested_name_specifier template_opt unqualified_id_name ;
+ // Rule 406: member_declaration ::= dcolon_opt nested_name_specifier template_opt unqualified_id_name ;
//
- case 405: { action.builder.
+ case 406: { action.builder.
consumeMemberDeclarationQualifiedId(); break;
}
//
- // Rule 409: member_declaration ::= ERROR_TOKEN
+ // Rule 410: member_declaration ::= ERROR_TOKEN
//
- case 409: { action.builder.
+ case 410: { action.builder.
consumeDeclarationProblem(); break;
}
//
- // Rule 417: member_declarator ::= declarator constant_initializer
+ // Rule 418: member_declarator ::= declarator constant_initializer
//
- case 417: { action.builder.
+ case 418: { action.builder.
consumeMemberDeclaratorWithInitializer(); break;
}
//
- // Rule 418: member_declarator ::= bit_field_declarator : constant_expression
+ // Rule 419: member_declarator ::= bit_field_declarator : constant_expression
//
- case 418: { action.builder.
+ case 419: { action.builder.
consumeBitField(true); break;
}
//
- // Rule 419: member_declarator ::= : constant_expression
+ // Rule 420: member_declarator ::= : constant_expression
//
- case 419: { action.builder.
+ case 420: { action.builder.
consumeBitField(false); break;
}
//
- // Rule 420: bit_field_declarator ::= identifier_name
+ // Rule 421: bit_field_declarator ::= identifier_name
//
- case 420: { action.builder.
+ case 421: { action.builder.
consumeDirectDeclaratorIdentifier(); break;
}
//
- // Rule 427: base_specifier ::= dcolon_opt nested_name_specifier_opt class_name
+ // Rule 428: base_specifier ::= dcolon_opt nested_name_specifier_opt class_name
//
- case 427: { action.builder.
+ case 428: { action.builder.
consumeBaseSpecifier(false); break;
}
//
- // Rule 428: base_specifier ::= virtual_opt access_specifier_keyword virtual_opt dcolon_opt nested_name_specifier_opt class_name
+ // Rule 429: base_specifier ::= virtual_opt access_specifier_keyword virtual_opt dcolon_opt nested_name_specifier_opt class_name
//
- case 428: { action.builder.
+ case 429: { action.builder.
consumeBaseSpecifier(true); break;
}
//
- // Rule 429: virtual_opt ::= virtual
+ // Rule 430: virtual_opt ::= virtual
//
- case 429: { action.builder.
+ case 430: { action.builder.
consumePlaceHolder(); break;
}
//
- // Rule 430: virtual_opt ::= $Empty
+ // Rule 431: virtual_opt ::= $Empty
//
- case 430: { action.builder.
+ case 431: { action.builder.
consumeEmpty(); break;
}
//
- // Rule 436: conversion_function_id_name ::= operator conversion_type_id
+ // Rule 437: conversion_function_id_name ::= operator conversion_type_id
//
- case 436: { action.builder.
+ case 437: { action.builder.
consumeConversionName(); break;
}
//
- // Rule 437: conversion_type_id ::= type_specifier_seq conversion_declarator
+ // Rule 438: conversion_type_id ::= type_specifier_seq conversion_declarator
//
- case 437: { action.builder.
+ case 438: { action.builder.
consumeTypeId(true); break;
}
//
- // Rule 438: conversion_type_id ::= type_specifier_seq
+ // Rule 439: conversion_type_id ::= type_specifier_seq
//
- case 438: { action.builder.
+ case 439: { action.builder.
consumeTypeId(false); break;
}
//
- // Rule 439: conversion_declarator ::= <openscope-ast> ptr_operator_seq
+ // Rule 440: conversion_declarator ::= <openscope-ast> ptr_operator_seq
//
- case 439: { action.builder.
+ case 440: { action.builder.
consumeDeclaratorWithPointer(false); break;
}
//
- // Rule 445: mem_initializer ::= mem_initializer_name ( expression_list_opt )
+ // Rule 446: mem_initializer ::= mem_initializer_name ( expression_list_opt )
//
- case 445: { action.builder.
+ case 446: { action.builder.
consumeConstructorChainInitializer(); break;
}
//
- // Rule 446: mem_initializer_name ::= dcolon_opt nested_name_specifier_opt class_name
+ // Rule 447: mem_initializer_name ::= dcolon_opt nested_name_specifier_opt class_name
//
- case 446: { action.builder.
+ case 447: { action.builder.
consumeQualifiedId(false); break;
}
//
- // Rule 449: operator_function_id_name ::= operator_id_name < <openscope-ast> template_argument_list_opt >
+ // Rule 450: operator_function_id_name ::= operator_id_name < <openscope-ast> template_argument_list_opt >
//
- case 449: { action.builder.
+ case 450: { action.builder.
consumeTemplateId(); break;
}
//
- // Rule 450: operator_id_name ::= operator overloadable_operator
+ // Rule 451: operator_id_name ::= operator overloadable_operator
//
- case 450: { action.builder.
+ case 451: { action.builder.
consumeOperatorName(); break;
}
//
- // Rule 493: template_declaration ::= export_opt template < <openscope-ast> template_parameter_list > declaration
+ // Rule 494: template_declaration ::= export_opt template < <openscope-ast> template_parameter_list > declaration
//
- case 493: { action.builder.
+ case 494: { action.builder.
consumeTemplateDeclaration(); break;
}
//
- // Rule 494: export_opt ::= export
+ // Rule 495: export_opt ::= export
//
- case 494: { action.builder.
+ case 495: { action.builder.
consumePlaceHolder(); break;
}
//
- // Rule 495: export_opt ::= $Empty
+ // Rule 496: export_opt ::= $Empty
//
- case 495: { action.builder.
+ case 496: { action.builder.
consumeEmpty(); break;
}
//
- // Rule 500: type_parameter ::= class identifier_name_opt
+ // Rule 501: type_parameter ::= class identifier_name_opt
//
- case 500: { action.builder.
+ case 501: { action.builder.
consumeSimpleTypeTemplateParameter(false); break;
}
//
- // Rule 501: type_parameter ::= class identifier_name_opt = type_id
+ // Rule 502: type_parameter ::= class identifier_name_opt = type_id
//
- case 501: { action.builder.
+ case 502: { action.builder.
consumeSimpleTypeTemplateParameter(true); break;
}
//
- // Rule 502: type_parameter ::= typename identifier_name_opt
+ // Rule 503: type_parameter ::= typename identifier_name_opt
//
- case 502: { action.builder.
+ case 503: { action.builder.
consumeSimpleTypeTemplateParameter(false); break;
}
//
- // Rule 503: type_parameter ::= typename identifier_name_opt = type_id
+ // Rule 504: type_parameter ::= typename identifier_name_opt = type_id
//
- case 503: { action.builder.
+ case 504: { action.builder.
consumeSimpleTypeTemplateParameter(true); break;
}
//
- // Rule 504: type_parameter ::= template < <openscope-ast> template_parameter_list > class identifier_name_opt
+ // Rule 505: type_parameter ::= template < <openscope-ast> template_parameter_list > class identifier_name_opt
//
- case 504: { action.builder.
+ case 505: { action.builder.
consumeTemplatedTypeTemplateParameter(false); break;
}
//
- // Rule 505: type_parameter ::= template < <openscope-ast> template_parameter_list > class identifier_name_opt = id_expression
+ // Rule 506: type_parameter ::= template < <openscope-ast> template_parameter_list > class identifier_name_opt = id_expression
//
- case 505: { action.builder.
+ case 506: { action.builder.
consumeTemplatedTypeTemplateParameter(true); break;
}
//
- // Rule 506: template_id_name ::= template_identifier < <openscope-ast> template_argument_list_opt >
+ // Rule 507: template_id_name ::= template_identifier < <openscope-ast> template_argument_list_opt >
//
- case 506: { action.builder.
+ case 507: { action.builder.
consumeTemplateId(); break;
}
//
- // Rule 515: explicit_instantiation ::= template declaration
+ // Rule 516: explicit_instantiation ::= template declaration
//
- case 515: { action.builder.
+ case 516: { action.builder.
consumeTemplateExplicitInstantiation(); break;
}
//
- // Rule 516: explicit_specialization ::= template < > declaration
+ // Rule 517: explicit_specialization ::= template < > declaration
//
- case 516: { action.builder.
+ case 517: { action.builder.
consumeTemplateExplicitSpecialization(); break;
}
//
- // Rule 517: try_block ::= try compound_statement <openscope-ast> handler_seq
+ // Rule 518: try_block ::= try compound_statement <openscope-ast> handler_seq
//
- case 517: { action.builder.
+ case 518: { action.builder.
consumeStatementTryBlock(); break;
}
//
- // Rule 520: handler ::= catch ( exception_declaration ) compound_statement
+ // Rule 521: handler ::= catch ( exception_declaration ) compound_statement
//
- case 520: { action.builder.
+ case 521: { action.builder.
consumeStatementCatchHandler(false); break;
}
//
- // Rule 521: handler ::= catch ( ... ) compound_statement
+ // Rule 522: handler ::= catch ( ... ) compound_statement
//
- case 521: { action.builder.
+ case 522: { action.builder.
consumeStatementCatchHandler(true); break;
}
//
- // Rule 522: exception_declaration ::= type_specifier_seq <openscope-ast> declarator
+ // Rule 523: exception_declaration ::= type_specifier_seq <openscope-ast> declarator
//
- case 522: { action.builder.
+ case 523: { action.builder.
consumeDeclarationSimple(true); break;
}
//
- // Rule 523: exception_declaration ::= type_specifier_seq <openscope-ast> abstract_declarator
+ // Rule 524: exception_declaration ::= type_specifier_seq <openscope-ast> abstract_declarator
//
- case 523: { action.builder.
+ case 524: { action.builder.
consumeDeclarationSimple(true); break;
}
//
- // Rule 524: exception_declaration ::= type_specifier_seq
+ // Rule 525: exception_declaration ::= type_specifier_seq
//
- case 524: { action.builder.
+ case 525: { action.builder.
consumeDeclarationSimple(false); break;
}
//
- // Rule 532: no_cast_start ::= ERROR_TOKEN
+ // Rule 533: no_cast_start ::= ERROR_TOKEN
//
- case 532: { action.builder.
+ case 533: { action.builder.
consumeExpressionProblem(); break;
}
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPNoCastExpressionParserprs.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPNoCastExpressionParserprs.java
index 9b7edb816ae..79860aa8426 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPNoCastExpressionParserprs.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPNoCastExpressionParserprs.java
@@ -37,503 +37,523 @@ public class CPPNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface BaseCheck {
public final static short baseCheck[] = {0,
- 0,0,0,0,0,1,1,1,1,1,
- 0,1,2,1,1,1,1,1,1,1,
- 1,1,1,1,3,1,1,1,1,1,
- 1,1,1,2,1,1,0,1,0,4,
- 2,2,2,3,2,3,2,2,1,0,
- 1,1,1,4,4,4,8,8,3,3,
- 4,4,3,3,2,2,7,7,7,7,
- 4,4,6,7,4,1,1,1,2,2,
- 2,2,2,2,2,2,2,4,7,7,
- 3,1,0,1,2,2,1,2,3,4,
- 1,0,3,1,0,3,5,1,1,3,
- 3,1,3,3,3,1,3,3,1,3,
- 3,1,3,3,3,3,1,3,3,1,
- 3,1,3,1,3,1,3,1,3,1,
- 5,1,2,1,1,3,3,3,3,3,
- 3,3,3,3,3,3,1,1,2,1,
- 3,1,0,1,0,1,1,0,1,1,
- 1,1,1,1,1,1,1,3,3,2,
- 2,1,4,2,1,2,5,7,5,1,
- 4,5,7,9,8,2,2,3,2,3,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,2,1,0,4,2,2,
- 2,2,2,1,0,1,1,1,1,1,
- 1,2,1,2,2,2,1,1,2,2,
+ 0,0,1,1,1,1,1,1,1,1,
+ 1,0,1,2,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,3,1,1,
+ 1,1,1,1,1,1,2,1,1,0,
+ 1,0,4,2,2,2,3,2,3,2,
+ 2,1,0,1,1,1,4,4,4,8,
+ 8,3,3,4,4,3,3,2,2,7,
+ 7,7,7,4,4,6,7,4,1,1,
+ 1,2,2,2,2,2,2,2,2,2,
+ 4,7,7,3,1,0,1,2,2,1,
+ 2,3,4,1,0,3,1,0,3,5,
+ 1,1,3,3,1,3,3,3,1,3,
+ 3,1,3,3,1,3,3,3,3,1,
+ 3,3,1,3,1,3,1,3,1,3,
+ 1,3,1,5,1,2,1,1,3,3,
+ 3,3,3,3,3,3,3,3,3,1,
+ 1,2,1,3,1,0,1,0,1,1,
+ 0,1,1,1,1,1,1,1,1,1,
+ 3,3,2,2,1,4,2,1,2,5,
+ 7,5,1,4,5,7,9,8,2,2,
+ 3,2,3,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,2,1,0,
+ 4,2,2,2,2,2,1,0,1,1,
+ 1,1,1,1,2,1,2,2,2,1,
1,2,2,1,2,2,1,2,2,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,3,4,4,5,4,5,
- 4,1,5,6,1,3,1,0,1,3,
- 1,1,1,1,1,1,1,1,6,6,
- 5,1,7,6,1,0,6,5,6,4,
- 1,3,1,0,1,2,1,3,1,3,
- 1,1,1,1,3,9,2,2,3,2,
- 3,1,5,1,2,2,1,0,1,1,
- 1,3,1,2,1,1,2,3,1,1,
- 1,3,1,2,2,9,8,2,1,3,
- 1,3,1,0,1,0,2,1,1,3,
- 1,3,2,1,5,8,1,2,3,1,
- 5,4,3,1,3,1,1,5,4,4,
- 5,5,1,0,1,0,1,1,1,2,
- 4,2,2,1,5,1,1,1,1,1,
- 2,1,0,1,3,1,2,3,2,1,
- 2,2,1,0,1,3,3,6,1,0,
- 1,1,1,1,0,2,2,1,2,2,
- 1,0,1,3,4,3,1,1,5,2,
- 1,1,3,3,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 2,2,7,1,0,1,3,1,1,2,
- 4,2,4,7,9,5,1,1,3,1,
- 0,1,1,1,2,4,4,1,2,5,
- 5,3,3,1,4,3,1,0,1,3,
- 1,1,-109,0,0,0,-2,0,0,0,
+ 2,2,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,3,4,4,
+ 5,4,5,4,1,5,6,1,3,1,
+ 0,1,3,1,1,1,1,1,1,1,
+ 1,6,6,5,1,7,6,1,0,6,
+ 5,6,4,1,3,1,0,1,2,1,
+ 3,1,3,1,1,1,1,3,9,2,
+ 2,3,2,3,1,5,1,2,2,1,
+ 0,1,1,1,3,1,2,1,1,2,
+ 3,1,1,1,3,1,2,2,9,8,
+ 2,1,3,1,3,1,0,1,0,2,
+ 1,1,3,1,3,2,1,5,8,1,
+ 2,3,1,5,4,3,1,3,1,1,
+ 5,4,4,5,5,1,0,1,1,1,
+ 2,4,2,2,1,5,1,1,1,1,
+ 1,2,1,0,1,3,1,2,3,2,
+ 1,2,2,1,0,1,3,3,6,1,
+ 0,1,1,1,1,0,2,2,1,2,
+ 2,1,0,1,3,4,3,1,1,5,
+ 2,1,1,3,3,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,2,2,7,1,0,1,3,1,1,
+ 2,4,2,4,7,9,5,1,1,3,
+ 1,0,1,1,1,2,4,4,1,2,
+ 5,5,3,3,1,4,3,1,0,1,
+ 3,1,1,-109,0,0,0,0,-54,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-11,0,0,0,0,
- 0,0,0,0,0,0,-50,0,0,0,
- 0,-4,0,0,-124,-70,0,0,0,0,
- 0,0,0,0,0,0,0,-178,0,-76,
+ 0,0,0,0,0,0,0,-417,0,0,
+ 0,0,-11,0,0,0,0,0,0,0,
+ 0,0,-2,0,0,0,-53,-70,0,0,
+ 0,0,-341,0,0,0,0,0,0,0,
+ -76,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-124,0,-310,
+ 0,0,0,0,-178,0,0,0,0,0,
+ -20,0,0,0,0,-4,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-229,0,0,-137,0,0,0,0,
- 0,0,0,0,0,0,0,0,-22,0,
- 0,0,-54,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-71,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-177,0,0,0,0,
- -53,0,-71,0,0,0,0,0,0,0,
- 0,0,0,0,-5,0,-6,0,0,0,
- 0,0,0,-116,0,0,0,0,0,0,
+ 0,-177,0,0,0,0,-276,0,-5,0,
+ 0,0,0,0,0,-116,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-7,0,0,0,0,0,-182,0,0,
- 0,-138,0,0,0,-8,0,0,-511,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-60,0,0,-133,0,0,0,0,0,
+ -50,0,0,0,-331,0,0,0,-411,0,
+ -512,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-133,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-129,0,
- 0,0,-240,0,0,0,-9,0,-10,-140,
+ 0,0,0,0,0,0,-6,0,0,-7,
+ 0,0,-57,0,0,0,-51,0,0,0,
+ -8,0,-137,0,0,0,0,0,0,0,
+ 0,0,0,-140,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-60,0,-225,0,
+ 0,-58,-223,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-230,0,0,-143,0,0,0,-12,
- 0,0,0,0,0,0,0,0,-13,-63,
- -223,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,-184,-9,0,0,-361,0,-143,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-395,0,-327,0,0,0,0,0,
- 0,0,0,0,-186,0,0,0,0,-14,
- 0,-509,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-510,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-341,
+ 0,0,0,0,0,0,0,0,-292,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-519,0,0,0,-432,0,0,
+ 0,0,0,0,0,0,0,-21,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-331,0,0,0,0,0,-201,0,0,
- 0,0,-106,0,0,-3,0,0,0,-62,
+ 0,-432,-520,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-225,0,0,0,0,0,-57,
- 0,0,0,0,-51,0,0,-136,0,0,
- -131,0,-284,0,0,0,-107,0,0,0,
+ 0,-63,0,0,-207,0,0,-114,0,0,
+ 0,0,0,0,0,-327,0,0,0,0,
+ -229,0,0,0,0,0,0,-351,0,0,
+ 0,0,-306,0,0,0,0,0,0,-3,
+ 0,0,0,0,-106,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-231,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-264,0,
+ 0,0,-17,0,0,0,0,0,0,0,
+ 0,-186,0,0,0,0,-284,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-353,0,0,0,
- 0,0,0,0,0,-236,0,0,0,-317,
0,0,0,0,0,0,0,0,0,0,
+ -10,0,0,0,0,-129,0,0,-238,0,
+ 0,0,0,0,0,0,0,0,0,-317,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-171,0,0,0,0,0,0,0,
- 0,0,0,-258,0,0,0,0,0,0,
- 0,-16,0,-17,0,0,0,0,0,0,
- 0,-318,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-171,0,
+ 0,-62,0,0,0,0,0,0,0,0,
+ 0,0,-12,0,-318,0,0,0,0,-131,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-58,
- -29,0,0,-361,0,-472,0,0,0,-352,
+ 0,0,0,0,0,0,0,0,-185,0,
+ 0,0,0,0,0,0,-107,0,0,-13,
+ 0,0,0,-14,0,0,0,-473,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-30,0,
- 0,0,0,-261,0,0,0,0,0,-132,
- 0,0,0,0,-31,0,0,0,0,-40,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-300,0,0,-132,
+ 0,0,0,0,0,0,-16,0,0,0,
+ 0,-377,-40,0,0,0,0,-352,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-134,0,0,
- -115,0,0,-400,0,0,0,-32,0,0,
- 0,-42,0,0,0,-33,0,0,0,0,
+ 0,0,0,0,0,0,-201,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,-261,0,0,0,-333,-42,0,0,0,
+ 0,-29,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-34,0,0,-340,0,0,0,0,
- 0,0,0,0,-93,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-93,
+ 0,0,0,0,-115,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-35,0,0,0,0,0,0,0,
- 0,0,-145,0,0,0,-94,0,0,0,
- -207,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-339,0,0,0,0,-134,0,
+ 0,-139,0,0,-30,0,0,0,0,0,
+ 0,0,-94,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-36,0,0,-37,0,0,
- -38,0,0,0,-469,-139,0,0,-95,0,
- 0,0,-39,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,-145,0,0,0,0,0,-349,0,0,
+ 0,-31,0,0,0,-95,0,0,0,0,
+ -144,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-144,0,0,
- -96,0,0,0,-168,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-41,0,0,0,0,0,0,
- 0,0,0,0,-300,0,0,0,-169,0,
- 0,0,-97,0,0,0,-55,0,0,0,
+ -368,0,0,0,-32,0,0,0,-96,0,
+ 0,0,0,-168,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-259,0,0,0,0,
- 0,0,0,0,0,0,-184,0,0,0,
- 0,-202,0,0,-98,0,0,0,-216,0,
+ 0,0,0,0,0,0,0,-360,0,0,
+ 0,0,0,0,0,0,0,-33,-169,0,
+ 0,-97,0,0,0,0,-287,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-187,0,0,0,0,
+ 0,0,0,0,0,0,-189,0,0,0,
+ 0,0,0,0,-98,0,0,0,0,-288,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-185,0,
- 0,0,0,-212,0,0,-99,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-272,
+ 0,0,0,-210,0,0,0,0,0,-192,
+ 0,0,0,-34,0,0,0,-99,0,0,
+ 0,0,-202,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -187,0,0,0,0,-237,0,0,-100,0,
- 0,0,-298,0,0,0,0,0,0,0,
+ 0,-200,0,0,0,0,0,0,0,0,
+ 0,0,-405,0,0,0,-35,0,0,0,
+ -100,0,0,0,0,-212,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-308,0,0,0,0,-56,0,0,0,
- 0,0,-189,0,0,0,0,-244,0,0,
- -101,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-430,
+ 0,0,0,0,0,0,0,0,0,-36,
+ 0,0,0,-101,0,0,0,0,-216,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-59,0,0,0,0,0,0,
- 0,0,0,0,-192,0,0,0,0,-64,
- 0,0,-102,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-214,0,0,
+ 0,0,0,0,0,-237,0,0,-227,0,
+ 0,0,-37,0,0,0,-102,0,0,0,
+ 0,-38,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-360,0,0,0,0,
- 0,0,0,-238,0,0,-200,0,0,0,
- 0,-65,0,0,-103,0,0,0,-231,0,
+ 0,0,0,0,0,0,0,0,-39,0,
+ 0,-228,0,0,0,-41,0,0,0,-103,
+ 0,0,0,0,-244,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-297,0,0,
- 0,0,-66,0,0,-210,0,0,-214,0,
- 0,0,0,-251,0,0,-166,0,0,0,
- -68,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-430,
+ 0,0,0,-232,0,0,0,0,0,0,
+ 0,-251,0,0,-313,0,0,0,-55,0,
+ 0,0,-166,0,0,0,0,-252,0,0,
0,0,0,0,0,0,0,0,0,0,
- -306,0,0,0,-208,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-417,0,0,
- 0,0,-114,0,0,0,0,0,-501,0,
- 0,0,0,0,0,0,0,-351,0,0,
- 0,0,0,0,0,0,0,-69,-366,0,
- -504,0,0,0,0,0,0,0,0,0,
+ 0,-117,0,0,-56,0,0,0,0,0,
+ 0,-59,0,-208,0,0,0,0,-64,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-257,0,0,
+ 0,0,0,0,0,0,0,0,-259,0,
+ 0,0,-344,0,0,0,-448,0,-141,0,
+ 0,0,0,-366,0,0,-505,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-252,
- 0,0,-309,0,0,0,-110,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-111,0,0,0,0,
- 0,0,0,0,0,0,-112,0,0,0,
- -312,0,0,0,-452,0,0,0,0,0,
+ 0,0,0,0,0,-458,0,0,0,0,
+ 0,0,0,0,0,-298,-253,0,0,-309,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-310,0,0,0,0,0,0,
- 0,0,0,0,-267,0,0,0,-243,0,
- 0,0,-250,0,0,0,-234,0,-141,0,
- 0,0,-270,0,0,0,-337,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-165,0,
+ 0,0,0,0,0,0,0,0,-312,0,
+ 0,0,0,-277,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-369,0,0,-113,0,0,
- -120,0,0,0,-358,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-127,0,0,
- 0,0,-264,0,0,-502,0,0,-268,0,
- 0,0,-275,0,0,0,-294,0,0,0,
- 0,-128,-342,0,0,0,0,0,0,0,
- -359,0,0,0,0,0,0,0,0,0,
+ -65,0,0,0,0,0,0,-236,0,0,
+ 0,0,0,-66,0,-342,0,0,0,0,
+ -234,0,0,-337,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-146,0,
- 0,0,0,0,0,0,0,0,-403,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,-291,0,0,0,0,0,0,0,
+ 0,0,-358,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-287,0,0,0,0,-147,0,0,-396,
- 0,0,-148,0,0,0,-367,0,-333,-354,
- 0,-227,-385,0,0,0,-149,0,-253,-235,
- 0,0,0,0,-105,0,0,0,0,0,
+ 0,0,0,0,0,0,-136,0,0,0,
+ 0,0,0,0,-68,0,0,-69,0,0,
+ 0,-243,0,0,0,0,-413,-110,0,-386,
+ 0,0,0,0,0,0,0,-359,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-288,0,
- 0,-349,-92,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,-111,0,0,0,-403,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -254,0,0,-150,0,0,-90,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ -370,0,0,0,0,0,0,0,-112,0,
+ 0,-113,0,0,0,-250,0,0,0,0,
+ -354,0,0,-385,0,0,0,-416,0,0,
+ -120,-105,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-91,
- 0,0,0,-293,0,0,0,0,0,0,
+ 0,0,0,0,0,-283,0,0,0,0,
+ 0,0,0,-269,0,0,0,0,-272,0,
+ -92,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-276,0,0,
- -52,0,0,0,-151,0,-313,0,-377,-447,
- -481,0,0,0,0,0,0,0,0,0,
- -370,-228,-471,-152,0,0,0,-87,0,0,
+ 0,0,0,0,-254,0,0,0,0,-127,
+ 0,0,-293,0,0,-90,0,0,0,0,
+ -308,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-91,
+ 0,0,0,0,-128,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-153,0,-77,0,0,
+ 0,0,0,-146,0,0,0,0,-118,0,
+ 0,-52,0,0,0,0,0,0,-249,0,
+ 0,0,0,-147,0,0,0,0,0,0,
+ 0,0,-395,0,0,0,-295,-148,-87,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -232,0,0,-154,0,0,0,0,0,-480,
- 0,-368,-155,0,0,0,-21,0,0,0,
- -156,0,0,0,0,0,0,0,0,0,
+ 0,0,-396,0,0,0,0,0,0,-321,
+ 0,0,-401,0,-296,0,-149,0,-388,0,
+ 0,0,0,-322,-150,0,-270,0,0,0,
+ 0,0,-44,-45,0,-151,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-472,0,
+ 0,0,0,0,-152,-301,0,0,0,0,
+ 0,0,-153,0,0,0,0,0,-414,0,
+ 0,0,0,0,0,-319,0,0,0,-154,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-386,0,0,0,-157,0,
- 0,0,0,0,0,0,-257,0,-283,0,
- 0,-492,0,0,0,0,0,0,0,0,
- 0,-88,0,0,0,0,0,0,0,0,
+ 0,0,-343,0,0,0,-155,0,0,0,
+ 0,0,0,-88,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-158,0,0,0,0,-89,
- 0,0,0,-159,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-160,0,0,0,0,-81,0,0,
- 0,-161,0,0,0,0,0,0,0,0,
+ 0,0,-89,0,0,0,0,-502,0,0,
0,0,0,0,0,0,0,0,0,0,
- -162,0,0,0,-82,0,0,0,-233,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,-81,0,0,0,0,-156,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-83,0,0,0,-321,0,0,0,0,
+ 0,0,0,0,0,-157,0,0,0,-82,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-163,0,0,0,-84,0,
- 0,0,-164,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-357,0,0,0,-246,0,0,0,0,
- 0,0,0,0,0,0,0,-85,0,0,
+ 0,0,0,-400,0,0,0,-83,0,0,
+ 0,0,-158,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,-159,0,0,0,-84,0,0,0,0,
+ -453,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-357,
+ 0,0,0,-246,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-85,0,0,0,
+ 0,-160,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -339,0,0,-269,-295,-170,-301,-296,0,-465,
- 0,0,0,0,-195,0,0,0,-497,0,
- -173,-319,0,0,0,0,-325,0,0,0,
- 0,-108,-249,0,0,0,-344,0,0,0,
- 0,0,-328,-174,0,0,0,0,-290,0,
+ -161,0,0,-275,0,0,0,0,-325,-328,
+ -462,-213,-182,0,0,0,0,0,0,-330,
+ 0,0,0,0,0,-162,0,0,0,-230,
+ 0,0,-163,0,0,0,-294,0,0,0,
+ 0,-164,-362,0,-170,-173,-290,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-476,
+ 0,-174,0,0,0,0,0,0,0,-233,
+ 0,0,-86,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-277,0,0,0,0,-86,0,
+ 0,0,0,0,0,0,0,0,0,-481,
+ 0,0,-346,-353,0,0,0,0,0,0,
+ 0,0,-412,-363,-376,-419,0,0,0,0,
+ -258,0,0,0,0,0,0,-504,0,0,
0,0,0,0,0,0,0,0,0,0,
+ -175,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-176,0,-77,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-455,0,0,-322,0,0,-175,0,-330,
- 0,0,0,0,-346,0,0,0,0,-363,
- -176,0,0,0,0,0,0,0,-343,-362,
- -122,0,0,0,-457,0,-179,0,0,0,
- 0,0,0,0,0,-180,-376,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-380,
+ 0,-179,0,-108,0,0,0,0,0,-180,
+ -340,0,0,0,0,-181,0,0,-190,-191,
+ -323,0,-235,0,0,0,0,0,-302,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-181,0,-470,-118,0,0,
+ 0,0,0,-196,0,0,0,0,0,0,
+ 0,-197,-498,0,0,0,-424,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-167,
+ -138,-203,-420,0,0,-456,0,-267,-383,-442,
+ 0,0,-211,0,0,-15,0,0,0,0,
+ 0,-240,0,0,-209,0,0,0,-470,0,
+ 0,-271,0,0,0,0,0,0,0,0,
+ -221,0,0,-455,0,0,0,0,0,0,
+ 0,0,0,-443,0,0,0,0,0,0,
+ 0,0,0,0,-222,0,0,0,-224,0,
+ -415,-452,0,0,0,0,0,-1,0,-43,
+ 0,-471,0,0,0,-493,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-190,0,-239,0,0,0,0,0,0,
- 0,0,0,0,-475,-191,0,-196,-350,-1,
- 0,-18,0,0,-167,0,-493,-380,0,0,
+ 0,0,0,0,0,0,0,0,0,-268,
+ -242,0,0,-334,0,0,0,-245,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-19,0,0,0,-383,0,0,0,
- 0,-477,-119,0,0,0,0,0,0,0,
- -266,-121,-49,0,0,0,0,0,-405,0,
+ 0,0,0,0,0,0,0,-421,0,0,
+ 0,0,0,0,-247,0,-478,-262,-369,0,
+ 0,0,0,-18,-263,0,0,-49,0,0,
+ 0,-463,0,0,-273,0,0,0,0,0,
+ 0,0,0,0,0,-122,0,0,0,0,
+ -274,0,0,0,0,0,0,0,-278,-422,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-292,0,
- 0,0,0,0,0,0,-415,0,-496,0,
- 0,0,0,0,0,0,0,0,0,-197,
- -412,0,-203,0,0,0,-479,-211,0,0,
- 0,0,0,0,0,0,0,0,0,-72,
+ 0,0,0,-135,0,0,-465,0,0,-281,
+ 0,-480,-469,-119,0,0,0,0,0,0,
+ 0,0,-121,0,0,0,-282,0,0,-426,
0,0,0,0,0,0,0,0,0,0,
+ -285,0,-130,0,0,0,0,0,-483,-446,
+ 0,-467,-123,0,0,0,0,-484,0,-495,
+ 0,0,0,0,0,0,0,-19,0,0,
+ 0,0,-450,-457,0,0,-459,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-221,-419,0,0,0,0,-222,0,
- 0,-224,0,0,0,0,0,0,0,0,
- 0,-503,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-242,
- 0,0,-206,0,0,0,-245,0,-247,0,
- 0,0,0,-262,-263,0,0,0,0,-413,
- -280,-117,-498,-421,-316,0,0,0,-273,0,
- 0,-209,-271,0,0,0,0,-422,0,0,
- 0,0,0,-516,0,0,-332,0,0,0,
- 0,0,0,0,0,0,0,0,0,-420,
- 0,-302,0,0,0,0,0,0,0,0,
- 0,0,0,-414,-44,0,0,-348,0,-454,
0,0,0,0,0,0,0,0,0,0,
- 0,-248,-426,0,-274,0,0,0,-384,-278,
- 0,0,0,0,0,0,-281,-73,0,0,
- 0,0,0,0,0,-282,0,0,0,0,
- 0,0,-285,0,0,0,0,-286,0,0,
- 0,0,0,0,0,0,0,0,0,-401,
- 0,-441,-165,0,0,0,0,0,0,0,
- 0,0,0,-299,0,0,0,0,-304,-442,
- -451,0,0,-204,0,0,0,0,-305,0,
- 0,0,0,0,0,0,0,0,0,-123,
- 0,0,0,0,0,0,-462,0,0,0,
- 0,0,0,0,0,0,-445,0,0,0,
- 0,0,0,0,0,0,0,0,0,-390,
- 0,0,0,0,0,0,0,0,-315,-326,
- 0,-336,0,0,-424,0,0,0,0,0,
- 0,0,0,0,0,0,-338,-364,0,-466,
- 0,-78,0,0,0,0,0,0,0,0,
+ -286,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-299,
+ 0,0,-22,0,0,0,0,-304,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-48,0,0,0,-464,-365,
- 0,-449,0,0,0,0,-347,0,0,0,
- 0,0,0,0,-371,-456,-458,0,0,0,
- 0,-373,-378,-484,-495,0,0,0,0,0,
- -375,-381,0,0,-474,-382,0,0,0,0,
- -468,0,-391,0,0,0,-79,0,0,0,
+ 0,0,0,0,0,-305,0,0,0,-78,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-241,
- 0,0,0,0,0,-80,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-394,
- 0,-402,-404,0,-324,0,0,0,0,0,
+ 0,0,0,-79,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -406,-388,0,0,0,-255,-379,-407,-408,0,
- 0,-488,-482,-393,0,0,0,0,0,0,
- 0,0,0,0,0,-499,-410,-483,-494,0,
- -411,0,0,0,0,0,0,0,-507,0,
- -416,0,0,0,-125,-15,0,0,0,0,
- 0,-418,0,0,0,-423,0,0,0,0,
- 0,0,0,-510,0,-392,-508,-513,0,0,
- 0,0,0,0,0,-515,0,0,-130,0,
- 0,0,-425,0,0,0,0,0,0,0,
- 0,0,0,-518,0,0,0,0,0,-427,
- 0,0,0,-104,-428,0,-429,0,0,0,
- -431,0,-433,0,0,0,0,0,0,0,
- 0,0,0,0,-409,0,-434,0,0,-439,
- -397,0,0,0,0,0,-444,0,0,0,
- 0,0,-183,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-453,-460,
- -467,-486,0,0,-500,-435,-505,0,0,0,
+ 0,0,0,0,0,0,0,-80,0,0,
+ 0,0,-125,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,-324,0,0,0,0,-475,0,0,0,
+ 0,0,0,0,-389,-485,-73,-315,-494,0,
+ 0,0,-489,-239,-48,0,0,0,0,0,
+ -496,-497,-326,-499,-384,0,-336,-338,0,0,
+ -500,-364,-365,-503,0,0,0,-371,-373,0,
+ -183,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-448,-256,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-135,0,0,0,0,0,0,0,
- 0,-450,0,0,0,0,0,0,0,0,
- 0,0,0,0,-45,0,-311,0,0,0,
+ -375,0,-381,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-382,0,0,0,0,
+ 0,0,0,0,-23,0,0,0,0,-391,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-46,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-24,0,0,
+ 0,0,-517,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ -25,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-26,0,0,0,0,-394,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-476,0,0,-291,0,0,0,0,
+ 0,0,0,0,0,0,0,-402,0,-27,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-23,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,-28,0,0,0,0,-404,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-61,0,0,0,0,
+ -406,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-74,0,
+ 0,0,0,-407,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-485,0,0,0,0,0,-43,0,0,
- 0,0,0,0,0,0,-334,-194,0,0,
+ 0,-75,0,0,0,0,-509,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-126,0,0,0,0,-408,
+ 0,-410,-418,-423,-425,-508,-427,0,0,-428,
+ -429,0,-511,-514,-280,-142,0,0,0,0,
+ 0,-198,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-487,0,0,0,0,0,0,0,
+ 0,0,0,0,-72,0,-466,0,0,0,
+ -379,0,0,-431,-516,0,0,-433,0,0,
+ 0,0,-434,0,-194,0,0,0,0,-435,
+ 0,-519,-440,0,0,0,-392,0,0,-445,
+ -454,0,0,0,-461,0,-468,-487,0,0,
+ 0,-367,0,0,0,-501,0,0,-506,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-387,-491,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-205,
- 0,0,0,0,-47,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-512,0,0,0,0,0,
+ 0,0,0,0,0,0,-409,0,0,0,
+ -104,0,-67,0,-46,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-199,0,0,0,0,
+ 0,0,-482,0,0,0,0,0,0,0,
+ 0,0,0,-255,0,0,0,-436,0,0,
+ 0,0,0,0,0,0,-297,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-517,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-215,0,0,0,0,-389,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-520,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-489,0,0,
+ 0,0,0,0,0,-444,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-449,0,0,
+ 0,0,0,-265,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-451,-256,-217,0,0,0,0,
+ 0,0,0,0,0,0,-47,-316,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-24,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-25,0,0,
+ -477,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-311,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-26,
+ 0,0,-248,0,0,0,0,0,-218,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-486,
+ 0,0,0,0,0,-437,0,0,0,0,
+ 0,0,0,-347,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-27,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-28,0,0,0,0,0,0,
+ -488,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-205,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-61,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-74,0,0,
+ 0,-492,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-75,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-126,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-356,0,0,0,0,
- 0,0,0,0,0,0,0,0,-198,0,
+ 0,0,-513,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ -215,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -443,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-506,-217,0,-398,0,0,
+ 0,0,0,-518,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-314,0,0,0,0,0,
- 0,0,0,0,0,0,0,-218,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-521,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-387,
+ 0,-378,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-20,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-348,0,0,0,0,0,
0,0,-355,0,0,0,0,0,0,0,
- 0,0,0,0,-514,-436,0,0,0,0,
- 0,0,0,0,0,0,-473,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-390,-474,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-303,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,-490,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-464,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-320,0,0,0,0,
- 0,0,0,0,0,0,0,-303,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-463,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-265,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-226,
- 0,0,0,0,0,0,0,0,-142,0,
+ 0,0,0,-332,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-172,
+ 0,0,0,0,-356,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-195,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-188,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,-172,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ -393,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-226,0,-199,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ -188,0,0,0,0,0,0,0,0,0,
+ 0,-266,0,0,0,0,0,0,0,0,
0,0,-193,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-398,
+ 0,0,0,0,0,0,0,0,0,0,
0,0,0,-289,0,0,0,0,0,0,
+ 0,0,0,0,-350,0,0,-399,0,0,
+ 0,0,0,0,0,-307,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -307,0,0,0,0,0,0,0,0,-329,
0,0,0,0,0,0,0,0,0,0,
+ -329,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-335,0,0,0,
- 0,0,0,0,0,0,-461,0,0,0,
- 0,0,0,0,0,0,0,-372,0,0,
- 0,0,0,-374,0,0,0,0,0,0,
+ 0,-335,0,0,0,0,0,0,0,0,
+ 0,-219,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-459,0,0,0,0,0,
- -478,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-372,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-213,0,0,0,0,0,0,
+ 0,0,0,0,0,-374,0,0,0,0,
+ 0,0,0,0,0,-220,0,0,0,-447,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-260,0,
- 0,0,0,-323,0,0,0,0,0,-219,
- -438,0,0,0,0,-345,0,0,0,0,
- 0,-220,0,0,0,0,0,-67,0,0,
- -399,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-460,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-479,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-437,0,0,0,0,0,0,
+ 0,0,0,0,-204,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-446,0,
- 0,0,0,0,-440,0,0,0,0,0,
- 0,0,0,0,0,0,-279,0,0,0,
- 0,0,0,0,0,0,0,0,0,-490,
+ 0,0,-260,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-206,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-241,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,-314,0,0,0,0,0,0,-320,
+ 0,0,0,0,0,0,0,0,-345,0,
+ 0,0,0,-397,-439,0,-507,-438,0,0,
+ -441,0,0,-515,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-279,0,0,-491,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0
};
};
public final static short baseCheck[] = BaseCheck.baseCheck;
@@ -543,534 +563,559 @@ public class CPPNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface BaseAction {
public final static char baseAction[] = {
- 172,4,193,194,195,136,80,34,65,39,
- 196,196,197,197,198,198,15,15,15,15,
- 15,15,15,15,16,16,16,14,10,10,
- 8,8,8,8,8,1,66,66,5,5,
- 11,11,11,11,47,47,137,137,138,62,
- 62,45,45,17,17,17,17,17,17,17,
- 17,17,17,17,17,17,17,17,17,17,
- 17,17,17,139,139,139,18,18,18,18,
- 18,18,18,18,18,18,18,18,18,19,
- 19,176,173,173,174,174,177,141,141,178,
- 178,175,175,142,140,140,20,20,21,22,
- 22,22,24,24,24,24,25,25,25,26,
- 26,26,27,27,27,27,27,29,29,29,
- 30,30,32,32,33,33,35,35,36,36,
- 37,37,41,41,40,40,40,40,40,40,
- 40,40,40,40,40,40,40,38,38,28,
- 143,143,103,103,106,106,98,199,199,71,
- 71,71,71,71,71,71,71,71,72,72,
- 72,73,73,56,56,179,179,74,74,74,
- 117,117,75,75,75,75,76,76,76,76,
- 76,77,81,81,81,81,81,81,81,51,
- 51,51,51,51,108,108,109,109,50,23,
- 23,23,23,23,46,46,93,93,93,93,
- 93,150,150,145,145,145,145,145,146,146,
+ 173,5,137,81,81,35,35,66,66,40,
+ 40,194,194,195,195,196,196,1,1,16,
+ 16,16,16,16,16,16,16,17,17,17,
+ 15,11,11,9,9,9,9,9,2,67,
+ 67,6,6,12,12,12,12,48,48,138,
+ 138,139,63,63,46,46,18,18,18,18,
+ 18,18,18,18,18,18,18,18,18,18,
+ 18,18,18,18,18,18,140,140,140,19,
+ 19,19,19,19,19,19,19,19,19,19,
+ 19,19,20,20,177,174,174,175,175,178,
+ 142,142,179,179,176,176,143,141,141,21,
+ 21,22,23,23,23,25,25,25,25,26,
+ 26,26,27,27,27,28,28,28,28,28,
+ 30,30,30,31,31,33,33,34,34,36,
+ 36,37,37,38,38,42,42,41,41,41,
+ 41,41,41,41,41,41,41,41,41,41,
+ 39,39,29,144,144,104,104,107,107,99,
+ 197,197,72,72,72,72,72,72,72,72,
+ 72,73,73,73,74,74,57,57,180,180,
+ 75,75,75,118,118,76,76,76,76,77,
+ 77,77,77,77,78,82,82,82,82,82,
+ 82,82,52,52,52,52,52,109,109,110,
+ 110,51,24,24,24,24,24,47,47,94,
+ 94,94,94,94,151,151,146,146,146,146,
146,147,147,147,148,148,148,149,149,149,
- 94,94,94,94,94,95,95,95,87,12,
- 13,13,13,13,13,13,13,13,13,13,
- 13,82,82,82,121,121,121,121,121,119,
- 119,119,88,120,120,152,152,151,151,123,
- 123,124,43,43,42,86,86,89,89,91,
- 92,90,44,53,48,153,153,54,52,85,
- 85,154,154,144,144,125,125,79,79,155,
- 155,63,63,63,58,58,57,64,64,69,
- 69,55,55,55,96,96,105,104,104,61,
- 61,59,59,60,60,49,107,107,107,99,
- 99,99,100,101,101,101,102,102,110,110,
- 110,112,112,111,111,200,200,97,97,181,
- 181,181,181,181,127,67,67,157,180,180,
- 128,128,128,128,182,182,31,31,118,129,
- 129,129,129,201,201,113,113,122,122,122,
- 159,160,160,160,160,160,160,160,160,160,
- 185,185,183,183,184,184,161,161,161,161,
- 162,186,115,114,114,187,187,163,163,131,
- 131,130,130,130,202,202,9,188,188,189,
- 164,156,156,165,165,166,167,167,6,6,
- 7,169,169,169,169,169,169,169,169,169,
- 169,169,169,169,169,169,169,169,169,169,
- 169,169,169,169,169,169,169,169,169,169,
- 169,169,169,169,169,169,169,169,169,169,
- 169,169,169,68,70,70,170,170,132,132,
- 133,133,133,133,133,133,2,3,171,171,
- 168,168,134,134,134,83,84,78,158,158,
- 116,116,190,190,190,135,135,126,126,191,
- 191,172,172,1361,1838,1751,880,755,4530,31,
- 1102,28,32,27,29,2656,259,26,24,53,
- 1151,108,77,78,109,1179,905,1238,1195,1273,
- 1246,3275,1355,1313,271,1361,1358,48,1373,1434,
- 144,684,923,160,145,1623,2777,819,33,880,
- 4563,4509,31,1102,28,32,60,29,1652,2979,
- 3302,819,33,880,228,2863,31,1102,28,32,
- 27,29,810,259,26,24,53,1151,108,77,
- 78,109,1179,2840,2099,274,69,819,33,880,
- 273,272,31,1102,40,32,231,226,227,3302,
- 1838,1751,880,1478,2863,31,1102,28,32,27,
- 29,810,259,26,24,53,1151,108,77,78,
- 85,238,241,244,247,2771,1652,507,2973,880,
- 34,564,2011,2890,819,33,880,491,4509,31,
- 1102,28,32,59,29,1084,675,58,2808,2873,
- 2882,3190,3445,4222,2273,819,33,880,2301,2863,
- 31,1102,28,32,2786,29,810,259,26,24,
- 53,1151,108,77,78,109,1179,345,1238,1195,
- 1273,1246,2710,1355,1313,64,1361,1358,1551,1373,
- 1434,144,2335,3543,512,145,2898,389,423,499,
- 819,33,880,2682,3860,31,1102,28,32,27,
- 29,492,1478,505,513,2273,819,33,880,2301,
- 2863,31,1102,28,32,2786,29,810,259,26,
- 24,53,1151,108,77,78,109,1179,345,1238,
- 1195,1273,1246,335,1355,1313,25,1361,1358,905,
- 1373,1434,144,2905,3778,512,145,3427,3174,3456,
- 413,819,33,880,2682,3860,31,1102,28,32,
- 62,29,63,2857,279,513,413,819,33,880,
- 144,3860,31,1102,28,32,61,29,508,3487,
- 1101,2610,819,33,880,2301,2863,31,1102,28,
- 32,2786,29,810,259,26,24,53,1151,108,
- 77,78,109,1179,345,1238,1195,1273,1246,3174,
- 1355,1313,2777,1361,1358,2805,1373,1434,144,44,
- 2933,512,145,2323,3507,69,819,33,880,1973,
- 2682,31,1102,2202,32,1652,2322,2152,880,508,
- 3488,513,2652,819,33,880,616,2863,31,1102,
- 28,32,27,29,810,259,26,24,53,1151,
- 108,77,78,109,1179,3500,1238,1195,1273,1246,
- 1854,1355,1313,2930,1361,1358,2805,1373,1434,144,
- 46,2933,380,145,2724,819,33,880,3128,2863,
- 31,1102,28,32,27,29,810,259,26,24,
- 53,1151,108,77,78,109,1179,383,1238,1195,
- 1273,1246,3529,1355,1313,509,1361,1358,2066,1373,
- 1434,144,2824,1478,380,145,3049,819,33,880,
- 488,2863,31,1102,28,32,27,29,810,259,
- 26,24,53,1151,108,77,78,109,1179,381,
- 1238,1195,1273,1246,2831,1355,1313,72,1361,1358,
- 48,1373,1434,144,745,1542,160,145,48,3032,
- 384,564,966,3049,819,33,880,1478,2863,31,
- 1102,28,32,27,29,810,259,26,24,53,
- 1151,108,77,78,109,1179,1492,1238,1195,1273,
- 1246,1686,1355,1313,519,1361,1358,3607,1373,1434,
- 144,71,385,374,145,1094,1652,507,276,880,
- 3049,819,33,880,3054,2863,31,1102,28,32,
- 27,29,810,259,26,24,53,1151,108,77,
- 78,109,1179,905,1238,1195,1273,1246,3942,1355,
- 1313,454,1361,1358,2831,1373,1434,144,331,337,
- 374,145,3522,377,585,1644,43,880,1047,675,
- 42,1102,3049,819,33,880,441,2863,31,1102,
- 28,32,27,29,810,259,26,24,53,1151,
- 108,77,78,109,1179,95,1238,1195,1273,1246,
- 373,1355,1313,3623,1361,1358,92,1373,1434,144,
- 2876,3576,374,145,3582,1094,2988,819,33,880,
- 3529,2863,31,1102,28,32,27,29,810,259,
- 26,24,53,1151,108,77,78,109,1179,1465,
- 1238,1195,1273,1246,2794,1355,1313,372,1361,1358,
- 564,1373,1434,144,437,1749,380,145,336,337,
- 1767,819,33,880,375,2863,31,1102,28,32,
- 27,29,810,259,26,24,53,1151,108,77,
- 78,109,1179,403,1238,1195,1273,1246,564,1355,
- 1313,1478,1361,1358,2921,1373,1434,144,583,370,
- 143,145,3049,819,33,880,3446,2863,31,1102,
- 28,32,27,29,810,259,26,24,53,1151,
- 108,77,78,109,1179,56,1238,1195,1273,1246,
- 453,1355,1313,2607,1361,1358,1580,1373,1434,144,
- 357,4611,161,145,378,3049,819,33,880,527,
- 2863,31,1102,28,32,27,29,810,259,26,
- 24,53,1151,108,77,78,109,1179,4249,1238,
- 1195,1273,1246,232,1355,1313,2005,1361,1358,450,
- 1373,1434,144,564,441,156,145,3049,819,33,
- 880,1717,2863,31,1102,28,32,27,29,810,
- 259,26,24,53,1151,108,77,78,109,1179,
- 518,1238,1195,1273,1246,2225,1355,1313,220,1361,
- 1358,404,1373,1434,144,2921,1478,155,145,3049,
- 819,33,880,316,2863,31,1102,28,32,27,
- 29,810,259,26,24,53,1151,108,77,78,
- 109,1179,928,1238,1195,1273,1246,616,1355,1313,
- 88,1361,1358,54,1373,1434,144,1781,1478,154,
- 145,3049,819,33,880,3450,2863,31,1102,28,
- 32,27,29,810,259,26,24,53,1151,108,
- 77,78,109,1179,2820,1238,1195,1273,1246,426,
- 1355,1313,55,1361,1358,905,1373,1434,144,2016,
- 4620,153,145,3049,819,33,880,1420,2863,31,
- 1102,28,32,27,29,810,259,26,24,53,
- 1151,108,77,78,109,1179,675,1238,1195,1273,
- 1246,518,1355,1313,354,1361,1358,48,1373,1434,
- 144,994,1478,152,145,3049,819,33,880,2718,
- 2863,31,1102,28,32,27,29,810,259,26,
- 24,53,1151,108,77,78,109,1179,355,1238,
- 1195,1273,1246,2442,1355,1313,91,1361,1358,48,
- 1373,1434,144,4500,1478,151,145,3049,819,33,
- 880,388,2863,31,1102,28,32,27,29,810,
- 259,26,24,53,1151,108,77,78,109,1179,
- 675,1238,1195,1273,1246,616,1355,1313,352,1361,
- 1358,48,1373,1434,144,613,1478,150,145,3049,
- 819,33,880,1101,2863,31,1102,28,32,27,
- 29,810,259,26,24,53,1151,108,77,78,
- 109,1179,675,1238,1195,1273,1246,1579,1355,1313,
- 2298,1361,1358,1290,1373,1434,144,1709,1478,149,
- 145,3049,819,33,880,283,2863,31,1102,28,
- 32,27,29,810,259,26,24,53,1151,108,
- 77,78,109,1179,3524,1238,1195,1273,1246,865,
- 1355,1313,2439,1361,1358,48,1373,1434,144,2539,
- 925,148,145,3049,819,33,880,284,2863,31,
- 1102,28,32,27,29,810,259,26,24,53,
- 1151,108,77,78,109,1179,905,1238,1195,1273,
- 1246,4674,1355,1313,3521,1361,1358,48,1373,1434,
- 144,1694,1402,147,145,3049,819,33,880,2840,
- 2863,31,1102,28,32,27,29,810,259,26,
- 24,53,1151,108,77,78,109,1179,2831,1238,
- 1195,1273,1246,1162,1355,1313,564,1361,1358,48,
- 1373,1434,144,3102,1478,146,145,3149,819,33,
- 880,1425,2863,31,1102,28,32,27,29,810,
- 259,26,24,53,1151,108,77,78,109,1179,
- 905,1238,1195,1273,1246,4695,1355,1313,70,1361,
- 1358,2700,1373,2938,166,3049,819,33,880,1094,
- 2863,31,1102,28,32,27,29,810,259,26,
- 24,53,1151,108,77,78,109,1179,3607,1238,
- 1195,1273,1246,2270,1355,1313,329,1361,1358,3607,
- 1373,1434,144,390,423,141,145,330,69,819,
- 33,880,333,337,31,1102,2392,32,1498,2517,
- 395,3188,819,33,880,1736,2863,31,1102,28,
- 32,27,29,810,259,26,24,53,1151,108,
- 77,78,109,1179,3207,1238,1195,1273,1246,2714,
- 1355,1313,3110,1361,1358,521,1373,1434,144,656,
- 1478,191,145,3302,819,33,880,1034,2863,31,
- 1102,28,32,27,29,810,259,26,24,53,
- 1151,108,77,78,109,1179,1098,1238,1195,1273,
- 1246,910,1355,1313,69,1361,1358,1226,1373,2938,
- 166,3302,819,33,880,2959,2863,31,1102,28,
- 32,27,29,810,259,26,24,53,1151,108,
- 77,78,109,1179,2472,1238,1195,1273,1246,588,
- 1355,1313,3312,1361,1358,2840,1373,2938,166,2329,
- 507,3126,880,2329,507,276,880,1652,281,1652,
- 2062,387,880,1652,507,280,880,3302,819,33,
- 880,290,2863,31,1102,28,32,27,29,810,
- 259,26,24,53,1151,108,77,78,109,1179,
- 34,1238,1195,1273,1246,3607,1355,1313,1433,1361,
- 1358,841,1373,2938,166,3302,819,33,880,2687,
- 2863,31,1102,28,32,27,29,810,259,26,
- 24,53,1151,108,77,78,109,1179,861,1238,
- 1195,1273,1246,2695,1355,1313,3607,1361,1358,2840,
- 1373,2938,166,1652,507,278,880,1652,507,3230,
- 880,377,3526,1652,2062,387,880,286,3039,392,
- 423,3302,819,33,880,419,2863,31,1102,28,
- 32,27,29,810,259,26,24,53,1151,108,
- 77,78,109,1179,427,1238,1195,1273,1246,669,
- 1355,1313,520,1361,1358,316,1373,2938,166,3341,
- 819,33,880,418,2863,31,1102,28,32,27,
- 29,810,259,26,24,53,1151,108,77,78,
- 109,1179,3536,1238,1195,1273,1246,2701,1355,1313,
- 3384,1361,1358,2608,1373,2938,166,2517,395,3448,
- 760,447,48,1562,447,4668,1955,2708,4668,1478,
- 2857,277,2867,391,423,3302,819,33,880,421,
- 2863,31,1102,28,32,27,29,810,259,26,
- 24,53,1151,108,77,78,109,1179,401,1238,
- 1195,1273,1246,68,1355,1313,1445,1361,1358,2770,
- 2593,327,3585,3302,819,33,880,3527,2863,31,
- 1102,28,32,27,29,810,259,26,24,53,
- 1151,108,77,78,109,1179,2053,1238,1195,1273,
- 1246,1478,1355,1313,2709,1361,2531,3302,819,33,
- 880,405,2863,31,1102,28,32,27,29,810,
- 259,26,24,53,1151,108,77,78,109,1179,
- 3316,1238,1195,1273,1246,67,1355,1313,328,2503,
- 3302,819,33,880,1478,2863,31,1102,28,32,
- 27,29,810,259,26,24,53,1151,108,77,
- 78,109,1179,1445,1238,1195,1273,1246,2697,1355,
- 2512,3380,2062,387,880,2713,3479,564,2677,3582,
- 3582,2517,395,233,259,440,3295,3302,444,3295,
- 3302,1418,3527,48,2822,3109,2049,966,3302,819,
- 33,880,271,2863,31,1102,28,32,27,29,
- 810,259,26,24,53,1151,108,77,78,109,
- 1179,3429,1238,1195,1273,1246,2826,2429,3302,819,
- 33,880,228,2863,31,1102,28,32,27,29,
- 810,259,26,24,53,1151,108,77,78,109,
- 1179,48,2137,274,2828,3043,184,99,273,272,
- 945,294,3585,1751,231,226,227,3302,819,33,
- 880,1992,2863,31,1102,28,32,27,29,810,
- 259,26,24,53,1151,108,77,78,86,238,
- 241,244,247,2771,3565,1652,2062,387,880,2332,
- 2011,304,292,3426,293,356,326,48,90,48,
- 104,1728,3132,3035,527,527,2808,2873,2882,3190,
- 3445,4222,3302,819,33,880,446,2863,31,1102,
- 28,32,27,29,810,259,26,24,53,1151,
- 108,77,78,109,1179,3520,1238,1195,1273,2475,
- 3302,819,33,880,3629,2863,31,1102,28,32,
- 27,29,810,259,26,24,53,1151,108,77,
- 78,109,1179,660,1238,1195,1273,2484,3302,819,
- 33,880,1682,2863,31,1102,28,32,27,29,
- 810,259,26,24,53,1151,108,77,78,109,
- 1179,650,1238,1195,2305,3302,819,33,880,2180,
- 2863,31,1102,28,32,27,29,810,259,26,
- 24,53,1151,108,77,78,109,1179,519,1238,
- 1195,2324,3302,819,33,880,3404,2863,31,1102,
- 28,32,27,29,810,259,26,24,53,1151,
- 108,77,78,109,1179,1687,1238,1195,2356,3302,
- 819,33,880,1582,2863,31,1102,28,32,27,
- 29,810,259,26,24,53,1151,108,77,78,
- 109,1179,2902,1238,1195,2384,2003,819,33,880,
- 3706,4584,31,1102,28,32,341,29,3302,819,
- 33,880,616,2863,31,1102,28,32,27,29,
- 810,259,26,24,53,1151,108,77,78,109,
- 1179,3539,1238,2393,1580,1478,587,2063,1478,4611,
- 1857,952,285,3039,966,1989,2062,387,880,945,
- 294,1671,48,322,2199,324,3287,48,616,317,
- 2132,3088,2720,3390,277,353,3153,564,157,58,
- 1560,3105,57,48,1702,3138,271,2839,164,843,
- 819,33,880,4754,4584,31,1102,28,32,341,
- 29,292,3464,293,2697,346,1449,1415,351,3302,
- 819,33,880,3133,2863,31,1102,28,32,27,
- 29,810,259,26,24,53,1151,108,77,78,
- 109,1179,3476,1238,2401,1478,2301,275,1995,2057,
- 48,353,273,272,1160,48,322,2199,324,1154,
- 48,2068,317,2132,2309,224,3412,100,353,1478,
- 1478,897,2822,1613,880,905,4557,1686,2745,325,
- 4701,346,1449,1415,351,1781,1480,48,3414,344,
- 212,3220,209,202,210,211,213,367,346,1449,
- 1415,351,51,103,2787,1212,1534,3551,2793,203,
- 204,2301,3025,292,52,293,1660,425,875,588,
- 235,259,1426,214,919,205,206,207,208,3543,
- 224,295,296,297,298,675,1216,417,1357,2892,
- 2093,3179,2138,2301,966,1502,966,675,48,4724,
- 3703,2835,3531,3414,89,212,104,209,202,210,
- 211,213,2616,1639,1733,387,880,48,157,228,
- 157,1234,3567,832,203,204,2301,3025,531,3031,
- 742,1692,1401,1356,1571,2301,4749,966,214,3585,
- 205,206,207,208,51,224,295,296,297,298,
- 301,236,226,227,224,292,52,293,1660,2705,
- 820,162,309,2301,353,3703,2847,48,3414,675,
- 212,4271,209,202,210,211,213,4479,181,406,
- 2721,1812,2616,2315,228,966,499,3642,2226,203,
- 204,2301,3025,228,346,1449,1415,351,1184,407,
- 1356,3025,1534,214,966,205,206,207,208,157,
- 224,295,296,297,298,96,240,226,227,3170,
- 199,496,498,2088,1478,243,226,227,162,2325,
- 3703,2919,2328,3414,300,212,1231,209,202,210,
- 211,213,2076,819,33,880,3706,4584,31,1102,
- 28,32,341,29,203,204,362,3025,445,3248,
- 2316,3024,537,875,2062,387,880,943,214,1340,
- 205,206,207,208,2960,3407,295,296,297,298,
- 3585,2084,919,675,48,2831,3543,3543,2310,2882,
- 408,411,1485,2180,271,3703,3033,3543,3620,322,
- 2199,324,3606,1408,2714,317,2132,889,819,33,
- 880,353,4647,31,1102,28,32,341,29,197,
- 2827,522,1571,3232,33,880,3777,4647,31,1102,
- 28,32,341,29,3585,48,3031,334,2831,2301,
- 1478,346,1449,1415,351,3010,1094,335,299,523,
- 273,272,2825,48,525,3417,2301,2742,345,87,
- 3530,353,335,533,322,2199,324,67,2183,382,
- 320,2132,966,196,3315,2616,2331,334,718,322,
- 2199,324,224,3528,2682,317,2132,157,3531,2755,
- 337,348,1449,1415,351,1887,157,2889,182,1094,
- 1,2651,3585,919,533,2917,1323,212,3543,209,
- 201,210,211,213,3534,171,285,3039,3057,2715,
- 3585,3585,98,224,945,1733,387,880,157,3440,
- 185,169,170,172,173,174,175,176,2889,182,
- 1421,200,2760,337,1602,3105,2917,1478,212,361,
- 209,201,210,211,213,51,171,48,334,198,
- 218,1365,2274,3017,3019,183,292,52,293,48,
- 2831,186,169,170,172,173,174,175,176,2707,
- 2834,3762,2884,414,3247,935,819,33,880,3777,
- 4647,31,1102,28,32,341,29,3549,2970,3042,
- 3585,228,3302,819,33,880,2149,2863,31,1102,
- 28,32,27,29,810,259,26,24,53,1151,
- 108,77,78,109,2143,945,1733,387,880,1478,
- 3546,1094,48,246,226,227,2807,2825,3150,3988,
- 334,2301,322,2199,324,3604,48,48,317,2132,
- 2872,2937,2934,2892,3669,48,51,2301,2992,882,
- 2616,2938,3548,3803,1925,3585,3605,292,52,293,
- 1660,1478,1813,2692,3034,337,2616,3302,819,33,
- 880,3057,2863,31,1102,28,32,27,29,810,
- 259,26,24,53,1151,108,77,78,109,2157,
- 1989,2062,387,880,308,3844,3302,819,33,880,
- 311,2863,31,1102,28,32,27,29,810,259,
- 26,24,53,1151,108,77,78,109,2234,3171,
- 2946,271,3596,3613,361,1642,819,33,880,3559,
- 4647,31,1102,28,32,341,29,2770,3017,3019,
- 499,3031,1652,2062,387,880,1356,3650,3032,3039,
- 966,2301,3585,1478,241,819,33,880,3235,4584,
- 31,1102,28,32,341,29,3585,3040,1478,1478,
- 224,2562,75,428,162,497,498,273,272,3585,
- 335,3043,322,2199,324,1674,2764,1819,318,2132,
- 2301,4285,3627,3414,353,212,3636,209,202,210,
- 211,213,2046,379,3585,307,3468,1478,1478,345,
- 2301,319,3169,324,203,204,3585,3025,4385,1228,
- 1733,387,880,3228,348,1449,1415,351,493,224,
- 205,206,207,208,1478,1005,295,296,297,298,
- 3639,3476,3926,303,2228,3673,228,3668,966,2655,
- 51,3387,3414,3045,212,193,209,202,210,211,
- 213,292,52,293,1660,173,2838,3640,3967,533,
- 1431,2911,157,203,204,2301,3025,3675,249,226,
- 227,2665,2585,945,1733,387,880,515,224,205,
- 206,207,208,157,2616,295,296,297,298,3678,
- 3517,3131,3676,2889,182,3679,259,3136,5276,2657,
- 533,2917,5276,212,51,209,201,210,211,213,
- 5276,171,5276,5276,5276,292,52,293,1660,224,
- 2982,5276,5276,5276,157,5276,3530,169,170,172,
- 173,174,175,176,2889,182,3658,1356,5276,5276,
- 2301,966,2917,5276,212,450,209,201,210,211,
- 213,5276,171,574,5276,5276,5276,2301,499,224,
- 5276,5276,3733,5276,436,162,2301,178,169,170,
- 172,173,174,175,176,48,345,1356,5276,2301,
- 5276,966,3414,5276,212,224,209,202,210,211,
- 213,5276,5276,496,498,48,5276,5276,345,2301,
- 5276,5276,958,203,204,162,3025,5276,3414,5276,
- 212,5276,209,202,210,211,213,310,345,205,
- 206,207,208,5276,2682,295,296,297,298,203,
- 204,3511,3025,3559,5276,1906,919,2301,5276,5276,
- 2658,3543,5276,516,2682,205,206,207,208,5276,
- 5276,295,296,297,298,1917,224,3302,819,33,
- 880,5276,2863,31,1102,28,32,27,29,810,
- 259,26,24,53,1151,108,77,78,84,3414,
- 2769,212,5276,209,202,210,211,213,5276,5276,
- 5276,334,345,5276,5276,5276,533,5276,1041,5276,
- 203,204,533,3025,5276,5276,5276,919,945,1733,
- 387,880,3543,5276,215,224,205,206,207,208,
- 157,345,295,296,297,298,157,1697,5276,5276,
- 2889,182,3385,431,5276,5276,1017,533,2917,51,
- 212,5276,209,201,210,211,213,2682,171,5276,
- 292,52,293,1660,5276,2160,224,5276,963,5276,
- 5276,157,334,189,169,170,172,173,174,175,
- 176,2889,182,1356,517,5276,5276,966,533,2917,
- 5276,212,5276,209,201,210,211,213,5276,171,
- 945,1733,387,880,5276,48,5276,224,5276,2301,
- 5276,162,157,4236,3567,169,170,172,173,174,
- 175,176,2889,182,5276,603,5276,5276,345,533,
- 2917,51,212,5276,209,201,210,211,213,5276,
- 171,5276,292,52,293,1660,48,820,224,5276,
- 2301,5276,5276,157,2682,192,169,170,172,173,
- 174,175,176,2889,182,2008,689,5276,5276,345,
- 533,2917,5276,212,5276,209,201,210,211,213,
- 5276,171,945,1733,387,880,2974,2957,5276,224,
- 5276,2301,5276,5276,157,2682,188,169,170,172,
- 173,174,175,176,2889,182,1576,775,5276,5276,
- 345,533,2917,51,212,5276,209,201,210,211,
- 213,526,171,5276,292,52,293,1660,1902,2683,
- 224,5276,966,5276,5276,157,2682,195,169,170,
- 172,173,174,175,176,2889,182,529,5276,5276,
- 5276,5276,5276,2917,5276,212,157,209,201,210,
- 211,213,5276,171,5276,5276,164,5276,5276,5276,
- 5276,5276,5276,5276,5276,5276,5276,5276,194,169,
- 170,172,173,174,175,176,3302,819,33,880,
- 5276,2863,31,1102,28,32,27,29,810,259,
- 26,24,53,1151,108,77,78,83,3302,819,
- 33,880,5276,2863,31,1102,28,32,27,29,
- 810,259,26,24,53,1151,108,77,78,82,
- 3302,819,33,880,3439,2863,31,1102,28,32,
- 27,29,810,259,26,24,53,1151,108,77,
- 78,81,3302,819,33,880,5276,2863,31,1102,
- 28,32,27,29,810,259,26,24,53,1151,
- 108,77,78,80,3302,819,33,880,3070,2863,
- 31,1102,28,32,27,29,810,259,26,24,
- 53,1151,108,77,78,79,3089,819,33,880,
- 5276,2863,31,1102,28,32,27,29,810,259,
- 26,24,53,1151,108,77,78,106,3302,819,
- 33,880,5276,2863,31,1102,28,32,27,29,
- 810,259,26,24,53,1151,108,77,78,111,
- 3302,819,33,880,5276,2863,31,1102,28,32,
- 27,29,810,259,26,24,53,1151,108,77,
- 78,110,3444,2062,387,880,5276,3479,5276,5276,
- 5276,5276,5276,5276,234,259,889,819,33,880,
- 5276,4647,31,1102,28,32,341,29,5276,3302,
- 819,33,880,271,2863,31,1102,28,32,27,
- 29,810,259,26,24,53,1151,108,77,78,
- 107,1458,819,33,880,3777,4584,31,1102,28,
- 32,341,29,228,5276,1947,2340,5276,48,966,
- 966,335,2301,322,2199,324,5276,5276,5276,318,
- 2132,5276,5276,5276,274,1989,2062,387,880,273,
- 272,345,5276,157,157,232,226,227,2385,5276,
- 5276,5276,966,164,1744,5276,5276,5276,322,2199,
- 324,5276,5276,5276,317,2132,271,2682,5276,5276,
- 239,242,245,248,2771,5276,157,5276,503,5276,
- 1925,2011,3263,819,33,880,1880,2863,31,1102,
- 28,32,27,29,810,259,26,24,53,1151,
- 87,77,78,2011,3232,33,880,3777,4584,31,
- 1102,28,32,341,29,2020,1169,73,5276,966,
- 533,3468,273,272,5276,5276,311,327,819,33,
- 880,3777,4584,31,1102,28,32,341,29,345,
- 5276,5276,5276,157,157,3171,5276,5276,5276,5276,
- 5276,5276,5276,164,190,3559,1989,2062,387,880,
- 322,2199,324,5276,5276,4462,317,2132,155,819,
- 33,880,3777,4584,31,1102,28,32,341,29,
- 5276,5276,2651,5276,322,2199,324,271,5276,5276,
- 317,2132,155,819,33,880,3777,4584,31,1102,
- 28,32,341,29,5276,5276,1925,5276,5276,1438,
- 819,33,880,3072,4584,31,1102,28,32,341,
- 29,3494,5276,5276,5276,322,2199,324,5276,5276,
- 1614,317,2132,3197,2301,4749,5276,5276,342,1654,
- 1733,387,880,273,272,5276,5276,2745,402,322,
- 2199,324,312,224,5276,317,2132,5276,5276,5276,
- 1650,1733,387,880,415,3247,319,3169,324,5276,
- 51,3562,5276,5276,5276,5276,4479,5276,406,5276,
- 5276,292,52,293,1660,5276,1331,1654,1733,387,
- 880,51,5276,1228,1733,387,880,1184,407,5276,
- 3025,3013,292,52,293,1660,5276,1499,5276,5276,
- 5276,5276,5276,5276,1228,1733,387,880,51,5276,
- 5276,5276,2665,5276,51,5276,5276,5276,5276,292,
- 52,293,1660,5276,49,292,52,293,1660,5276,
- 49,1228,1733,387,880,51,5276,5276,5276,803,
- 1654,1733,387,880,5276,1967,292,52,293,1660,
- 3024,2566,5276,5276,2657,5276,5276,5276,5276,5276,
- 5276,5276,51,5276,5276,5276,4426,1228,1733,387,
- 880,51,5276,292,52,293,1660,2953,49,408,
- 410,2301,292,52,293,1660,5276,49,1228,1733,
- 387,880,5276,2063,1228,1733,387,880,51,5276,
- 345,5276,1828,1476,5276,2881,5276,5276,5276,292,
- 52,293,1660,5276,2612,3129,1733,387,880,51,
- 5276,3134,1733,387,880,51,3304,5276,5276,4426,
- 292,52,293,1660,5276,49,292,52,293,1660,
- 5276,49,5276,5276,1993,5276,51,5276,2301,3543,
- 2425,5276,51,5276,5276,5276,3402,292,52,293,
- 1660,5276,49,292,52,293,1660,2616,49,945,
- 1733,387,880,5276,1993,5276,5276,2390,2301,3543,
- 2430,977,5276,2669,966,533,1989,2062,387,880,
- 5276,5276,2475,5276,5276,5276,966,2616,1105,334,
- 51,48,533,5276,224,2301,5276,5276,157,157,
- 5276,292,52,293,1660,5276,1583,271,2159,164,
- 157,345,5276,5276,345,5276,157,2917,5276,334,
- 2231,2660,5276,5276,1233,5276,742,5276,533,5276,
- 3042,361,5276,5276,5276,5276,5276,2682,5276,5276,
- 2682,5276,5276,5276,1618,3017,3019,345,1366,48,
- 5276,501,157,2301,5276,1297,5276,3428,74,533,
- 3385,361,190,273,272,5276,5276,2520,5276,5276,
- 5276,966,345,4462,1618,3017,3019,3250,345,5276,
- 2565,5276,5276,157,966,5276,5276,5276,5276,5276,
- 5276,5276,5276,190,5276,157,5276,5276,2682,5276,
- 5276,5276,5276,5276,4462,2307,5276,5276,157,530,
- 5276,5276,5276,5276,5276,5276,5276,5276,3467,5276,
- 5276,5276,5276,5276,5276,5276,5276,5276,5276,5276,
- 5276,5276,5276,5276,5276,5276,5276,5276,5276,5276,
- 5276,3279,5276,5276,5276,5276,5276,5276,5276,5276,
- 5276,5276,5276,5276,5276,5276,5276,5276,5276,5276,
- 5276,5276,5276,5276,5276,5276,5276,5276,5276,5276,
- 5276,5276,3321,5276,0,5311,39,0,158,532,
- 0,507,30,0,448,1000,0,5311,38,0,
- 2562,127,0,1,438,0,2038,39,0,452,
- 1011,0,451,1190,0,507,41,0,1008,93,
- 0,35,302,0,386,294,0,33,387,0,
- 30,386,0,507,30,386,0,1969,39,0,
- 1,556,0,1,5546,0,1,5545,0,1,
- 5544,0,1,5543,0,1,5542,0,1,5541,
- 0,1,5540,0,1,5539,0,1,5538,0,
- 1,5537,0,1,5536,0,1,5311,39,0,
- 1,1104,0,1702,39,0,39,2836,0,5506,
- 237,0,5505,237,0,5616,237,0,5615,237,
- 0,5533,237,0,5532,237,0,5531,237,0,
- 5530,237,0,5529,237,0,5528,237,0,5527,
- 237,0,5526,237,0,5546,237,0,5545,237,
- 0,5544,237,0,5543,237,0,5542,237,0,
- 5541,237,0,5540,237,0,5539,237,0,5538,
- 237,0,5537,237,0,5536,237,0,2038,39,
- 237,0,5314,237,0,35,282,258,0,507,
- 386,0,1702,50,0,45,5312,0,45,37,
- 0,2562,129,0,2562,128,0,2883,233,0,
- 27,514,0,5608,439,0,1487,439,0,1,
- 94,0,49,37,0,1,5314,0,1,39,
- 0,1,5314,225,0,1,39,225,0,5311,
- 37,0,5312,47,0,37,47,0,5311,36,
- 0,5311,5,37,0,5285,404,0,1,4438,
- 0,1,3446,0,1,1969,0,5608,97,0,
- 1487,97,0,2672,321,0,1,5608,0,1,
- 1487,0,3406,278,0,1,1839,0,1,2147,
- 0,495,3466,0,1,225,0,1,225,3383,
- 0,5285,225,0,158,177,0,294,3297,0,
- 225,165,0,187,3885,0
+ 150,150,150,95,95,95,95,95,96,96,
+ 96,88,13,14,14,14,14,14,14,14,
+ 14,14,14,14,83,83,83,122,122,122,
+ 122,122,120,120,120,89,121,121,153,153,
+ 152,152,124,124,125,44,44,43,87,87,
+ 90,90,92,93,91,45,54,49,154,154,
+ 55,53,86,86,155,155,145,145,126,126,
+ 80,80,156,156,64,64,64,59,59,58,
+ 65,65,70,70,56,56,56,97,97,106,
+ 105,105,62,62,60,60,61,61,50,108,
+ 108,108,100,100,100,101,102,102,102,103,
+ 103,111,111,111,113,113,112,112,198,198,
+ 98,98,182,182,182,182,182,128,68,68,
+ 158,181,181,129,129,129,129,183,183,32,
+ 32,119,130,130,130,130,114,114,123,123,
+ 123,160,161,161,161,161,161,161,161,161,
+ 161,186,186,184,184,185,185,162,162,162,
+ 162,163,187,116,115,115,188,188,164,164,
+ 132,132,131,131,131,199,199,10,189,189,
+ 190,165,157,157,166,166,167,168,168,7,
+ 7,8,170,170,170,170,170,170,170,170,
+ 170,170,170,170,170,170,170,170,170,170,
+ 170,170,170,170,170,170,170,170,170,170,
+ 170,170,170,170,170,170,170,170,170,170,
+ 170,170,170,170,69,71,71,171,171,133,
+ 133,134,134,134,134,134,134,3,4,172,
+ 172,169,169,135,135,135,84,85,79,159,
+ 159,117,117,191,191,191,136,136,127,127,
+ 192,192,173,173,1477,2300,2118,2115,1204,775,
+ 4582,34,1247,31,35,30,32,2775,262,29,
+ 27,56,1302,111,80,81,112,1375,2402,1465,
+ 1422,1594,1508,424,1680,1637,274,1732,1723,3425,
+ 1759,1766,147,1146,492,163,148,863,1888,38,
+ 1200,36,1204,1229,3746,34,1247,31,35,63,
+ 32,3534,38,1200,36,1204,231,3248,34,1247,
+ 31,35,30,32,1163,262,29,27,56,1302,
+ 111,80,81,112,1375,3230,2364,277,1603,2930,
+ 686,294,276,275,4653,686,38,3045,234,229,
+ 230,3493,38,1200,36,1204,1211,3248,34,1247,
+ 31,35,30,32,1163,262,29,27,56,1302,
+ 90,80,81,241,244,247,250,3156,493,2250,
+ 38,1200,36,1204,2231,3746,34,1247,31,35,
+ 62,32,686,38,508,3021,1204,3357,679,76,
+ 2369,3194,3203,3233,3383,3725,2451,38,1200,36,
+ 1204,2372,3248,34,1247,31,35,2920,32,1163,
+ 262,29,27,56,1302,111,80,81,112,1375,
+ 348,1465,1422,1594,1508,1498,1680,1637,67,1732,
+ 1723,58,1759,1766,147,3677,686,513,148,686,
+ 2990,2918,38,1200,36,1204,2914,4199,34,1247,
+ 31,35,30,32,289,3145,506,514,2451,38,
+ 1200,36,1204,2372,3248,34,1247,31,35,2920,
+ 32,1163,262,29,27,56,1302,111,80,81,
+ 112,1375,348,1465,1422,1594,1508,507,1680,1637,
+ 1523,1732,1723,58,1759,1766,147,1804,748,513,
+ 148,1606,1842,1579,38,1200,36,1204,2914,66,
+ 34,1247,43,35,1686,38,1200,36,1204,514,
+ 4199,34,1247,31,35,65,32,775,93,2504,
+ 107,509,3283,2980,38,1200,36,1204,2372,3248,
+ 34,1247,31,35,2920,32,1163,262,29,27,
+ 56,1302,111,80,81,112,1375,348,1465,1422,
+ 1594,1508,28,1680,1637,2912,1732,1723,2926,1759,
+ 1766,147,58,1813,513,148,3318,819,1686,38,
+ 1200,36,1204,2914,4199,34,1247,31,35,64,
+ 32,2851,2834,509,514,2790,38,1200,36,1204,
+ 442,3248,34,1247,31,35,30,32,1163,262,
+ 29,27,56,1302,111,80,81,112,1375,236,
+ 1465,1422,1594,1508,2372,1680,1637,2962,1732,1723,
+ 2926,1759,1766,147,334,340,383,148,3534,38,
+ 1200,36,1204,2694,3248,34,1247,31,35,30,
+ 32,1163,262,29,27,56,1302,111,80,81,
+ 89,386,3749,2863,38,1200,36,1204,510,3248,
+ 34,1247,31,35,30,32,1163,262,29,27,
+ 56,1302,111,80,81,112,1375,438,1465,1422,
+ 1594,1508,1520,1680,1637,3113,1732,1723,1902,1759,
+ 1766,147,451,360,383,148,1579,38,1200,36,
+ 1204,1849,528,34,1247,1418,35,365,1579,38,
+ 1200,36,1204,1811,387,34,1247,1461,35,384,
+ 3127,38,1200,36,1204,775,3248,34,1247,31,
+ 35,30,32,1163,262,29,27,56,1302,111,
+ 80,81,112,1375,1849,1465,1422,1594,1508,793,
+ 1680,1637,793,1732,1723,672,1759,1766,147,234,
+ 75,163,148,1721,38,1852,46,1204,3543,520,
+ 45,1247,686,38,1762,1719,1204,3127,38,1200,
+ 36,1204,388,3248,34,1247,31,35,30,32,
+ 1163,262,29,27,56,1302,111,80,81,112,
+ 1375,1837,1465,1422,1594,1508,424,1680,1637,3622,
+ 1732,1723,3795,1759,1766,147,392,424,377,148,
+ 3127,38,1200,36,1204,625,3248,34,1247,31,
+ 35,30,32,1163,262,29,27,56,1302,111,
+ 80,81,112,1375,583,1465,1422,1594,1508,424,
+ 1680,1637,1031,1732,1723,4281,1759,1766,147,393,
+ 424,377,148,771,679,3127,38,1200,36,1204,
+ 863,3248,34,1247,31,35,30,32,1163,262,
+ 29,27,56,1302,111,80,81,112,1375,58,
+ 1465,1422,1594,1508,4615,1680,1637,775,1732,1723,
+ 1920,1759,1766,147,2249,376,377,148,3065,38,
+ 1200,36,1204,1237,3248,34,1247,31,35,30,
+ 32,1163,262,29,27,56,1302,111,80,81,
+ 112,1375,74,1465,1422,1594,1508,424,1680,1637,
+ 863,1732,1723,4761,1759,1766,147,2856,375,383,
+ 148,455,3318,2936,38,1200,36,1204,3677,3248,
+ 34,1247,31,35,30,32,1163,262,29,27,
+ 56,1302,111,80,81,112,1375,2853,1465,1422,
+ 1594,1508,3424,1680,1637,1994,1732,1723,3169,1759,
+ 1766,147,3303,373,146,148,3220,3127,38,1200,
+ 36,1204,3107,3248,34,1247,31,35,30,32,
+ 1163,262,29,27,56,1302,111,80,81,112,
+ 1375,454,1465,1422,1594,1508,3184,1680,1637,95,
+ 1732,1723,404,1759,1766,147,402,381,164,148,
+ 3127,38,1200,36,1204,775,3248,34,1247,31,
+ 35,30,32,1163,262,29,27,56,1302,111,
+ 80,81,112,1375,3738,1465,1422,1594,1508,863,
+ 1680,1637,775,1732,1723,3108,1759,1766,147,359,
+ 59,159,148,3127,38,1200,36,1204,528,3248,
+ 34,1247,31,35,30,32,1163,262,29,27,
+ 56,1302,111,80,81,112,1375,91,1465,1422,
+ 1594,1508,863,1680,1637,3129,1732,1723,3316,1759,
+ 1766,147,412,442,158,148,3127,38,1200,36,
+ 1204,775,3248,34,1247,31,35,30,32,1163,
+ 262,29,27,56,1302,111,80,81,112,1375,
+ 3752,1465,1422,1594,1508,98,1680,1637,406,1732,
+ 1723,3316,1759,1766,147,158,58,157,148,3127,
+ 38,1200,36,1204,3621,3248,34,1247,31,35,
+ 30,32,1163,262,29,27,56,1302,111,80,
+ 81,112,1375,57,1465,1422,1594,1508,424,1680,
+ 1637,307,1732,1723,4836,1759,1766,147,3226,1891,
+ 156,148,3127,38,1200,36,1204,3726,3248,34,
+ 1247,31,35,30,32,1163,262,29,27,56,
+ 1302,111,80,81,112,1375,58,1465,1422,1594,
+ 1508,1001,1680,1637,357,1732,1723,2837,1759,1766,
+ 147,418,1044,155,148,3127,38,1200,36,1204,
+ 2839,3248,34,1247,31,35,30,32,1163,262,
+ 29,27,56,1302,111,80,81,112,1375,358,
+ 1465,1422,1594,1508,863,1680,1637,330,1732,1723,
+ 58,1759,1766,147,159,2800,154,148,3127,38,
+ 1200,36,1204,775,3248,34,1247,31,35,30,
+ 32,1163,262,29,27,56,1302,111,80,81,
+ 112,1375,58,1465,1422,1594,1508,1109,1680,1637,
+ 331,1732,1723,3316,1759,1766,147,2169,94,153,
+ 148,3127,38,1200,36,1204,775,3248,34,1247,
+ 31,35,30,32,1163,262,29,27,56,1302,
+ 111,80,81,112,1375,332,1465,1422,1594,1508,
+ 424,1680,1637,184,1732,1723,4869,1759,1766,147,
+ 1610,355,152,148,3127,38,1200,36,1204,3306,
+ 3248,34,1247,31,35,30,32,1163,262,29,
+ 27,56,1302,111,80,81,112,1375,58,1465,
+ 1422,1594,1508,4113,1680,1637,775,1732,1723,58,
+ 1759,1766,147,60,2988,151,148,3127,38,1200,
+ 36,1204,336,3248,34,1247,31,35,30,32,
+ 1163,262,29,27,56,1302,111,80,81,112,
+ 1375,677,1465,1422,1594,1508,793,1680,1637,1875,
+ 1732,1723,3311,1759,1766,147,1590,3090,150,148,
+ 3127,38,1200,36,1204,775,3248,34,1247,31,
+ 35,30,32,1163,262,29,27,56,1302,111,
+ 80,81,112,1375,58,1465,1422,1594,1508,3012,
+ 1680,1637,775,1732,1723,863,1759,1766,147,2926,
+ 2256,149,148,3024,38,1200,36,1204,775,3248,
+ 34,1247,31,35,30,32,1163,262,29,27,
+ 56,1302,111,80,81,112,1375,73,1465,1422,
+ 1594,1508,1543,1680,1637,3178,1732,1723,3451,1759,
+ 2993,169,2858,72,3127,38,1200,36,1204,1144,
+ 3248,34,1247,31,35,30,32,1163,262,29,
+ 27,56,1302,111,80,81,112,1375,58,1465,
+ 1422,1594,1508,3927,1680,1637,102,1732,1723,2173,
+ 1759,1766,147,863,333,144,148,3318,337,686,
+ 38,2345,390,1204,2174,38,396,3451,38,1200,
+ 36,1204,1584,3248,34,1247,31,35,30,32,
+ 1163,262,29,27,56,1302,111,80,81,112,
+ 1375,37,1465,1422,1594,1508,424,1680,1637,2743,
+ 1732,1723,4890,1759,1766,147,1520,775,194,148,
+ 3534,38,1200,36,1204,391,3248,34,1247,31,
+ 35,30,32,1163,262,29,27,56,1302,111,
+ 80,81,112,1375,103,1465,1422,1594,1508,1543,
+ 1680,1637,71,1732,1723,3451,1759,2993,169,3534,
+ 38,1200,36,1204,3357,3248,34,1247,31,35,
+ 30,32,1163,262,29,27,56,1302,111,80,
+ 81,112,1375,996,1465,1422,1594,1508,3493,1680,
+ 1637,3191,1732,1723,329,1759,2993,169,686,38,
+ 508,279,1204,528,1209,337,686,38,2345,390,
+ 1204,686,38,284,3534,38,1200,36,1204,293,
+ 3248,34,1247,31,35,30,32,1163,262,29,
+ 27,56,1302,111,80,81,112,1375,428,1465,
+ 1422,1594,1508,1543,1680,1637,3005,1732,1723,3451,
+ 1759,2993,169,3534,38,1200,36,1204,1893,3248,
+ 34,1247,31,35,30,32,1163,262,29,27,
+ 56,1302,111,80,81,112,1375,58,1465,1422,
+ 1594,1508,1020,1680,1637,1542,1732,1723,1660,1759,
+ 2993,169,1745,38,508,3207,1204,3316,1274,337,
+ 686,38,2345,390,1204,92,1603,107,3534,38,
+ 1200,36,1204,420,3248,34,1247,31,35,30,
+ 32,1163,262,29,27,56,1302,111,80,81,
+ 112,1375,447,1465,1422,1594,1508,200,1680,1637,
+ 3402,1732,1723,1339,1759,2993,169,3575,38,1200,
+ 36,1204,419,3248,34,1247,31,35,30,32,
+ 1163,262,29,27,56,1302,111,80,81,112,
+ 1375,3367,1465,1422,1594,1508,3435,1680,1637,1404,
+ 1732,1723,1789,1759,2993,169,1745,38,508,279,
+ 1204,70,38,448,598,38,448,4815,686,3810,
+ 4815,938,3534,38,1200,36,1204,422,3248,34,
+ 1247,31,35,30,32,1163,262,29,27,56,
+ 1302,111,80,81,112,1375,58,1465,1422,1594,
+ 1508,4038,1680,1637,3217,1732,1723,187,2772,2173,
+ 4726,3534,38,1200,36,1204,3800,3248,34,1247,
+ 31,35,30,32,1163,262,29,27,56,1302,
+ 111,80,81,112,1375,775,1465,1422,1594,1508,
+ 969,1680,1637,775,1732,2756,3534,38,1200,36,
+ 1204,2173,3248,34,1247,31,35,30,32,1163,
+ 262,29,27,56,1302,111,80,81,112,1375,
+ 70,1465,1422,1594,1508,286,1680,1637,2739,2712,
+ 3534,38,1200,36,1204,3117,3248,34,1247,31,
+ 35,30,32,1163,262,29,27,56,1302,111,
+ 80,81,112,1375,246,1465,1422,1594,1508,1544,
+ 1680,2731,3616,2300,2345,390,1204,287,3223,3627,
+ 38,280,238,262,334,236,262,441,3448,3449,
+ 445,3448,3449,2195,3740,3741,1013,775,3119,3534,
+ 38,1200,36,1204,274,3248,34,1247,31,35,
+ 30,32,1163,262,29,27,56,1302,111,80,
+ 81,112,1375,3246,1465,1422,1594,1508,426,2606,
+ 3691,231,61,1,231,775,3737,3202,534,686,
+ 38,2345,390,1204,775,3234,2767,686,38,508,
+ 283,1204,3326,58,58,277,601,227,2372,2372,
+ 276,275,160,239,229,230,234,229,230,58,
+ 60,429,1633,185,1020,862,514,348,348,328,
+ 3051,725,215,1469,212,204,213,214,216,3316,
+ 174,241,244,247,250,3156,58,793,3240,186,
+ 1839,4154,2231,2914,2914,189,172,173,175,176,
+ 177,178,179,775,2128,2173,625,1026,2369,3194,
+ 3203,3233,3383,3725,3534,38,1200,36,1204,199,
+ 3248,34,1247,31,35,30,32,1163,262,29,
+ 27,56,1302,111,80,81,112,1375,106,1465,
+ 1422,1594,2643,3534,38,1200,36,1204,2402,3248,
+ 34,1247,31,35,30,32,1163,262,29,27,
+ 56,1302,111,80,81,112,1375,1237,1465,1422,
+ 1594,2662,3534,38,1200,36,1204,2248,3248,34,
+ 1247,31,35,30,32,1163,262,29,27,56,
+ 1302,111,80,81,112,1375,1627,1465,1422,2456,
+ 3534,38,1200,36,1204,522,3248,34,1247,31,
+ 35,30,32,1163,262,29,27,56,1302,111,
+ 80,81,112,1375,2788,1465,1422,2475,3534,38,
+ 1200,36,1204,3243,3248,34,1247,31,35,30,
+ 32,1163,262,29,27,56,1302,111,80,81,
+ 112,1375,3245,1465,1422,2483,3534,38,1200,36,
+ 1204,3284,3248,34,1247,31,35,30,32,1163,
+ 262,29,27,56,1302,111,80,81,112,1375,
+ 3299,1465,1422,2500,1618,38,1200,36,1204,2073,
+ 4704,34,1247,31,35,344,32,3534,38,1200,
+ 36,1204,1471,3248,34,1247,31,35,30,32,
+ 1163,262,29,27,56,1302,111,80,81,112,
+ 1375,2835,1465,2517,686,38,508,281,1204,58,
+ 58,324,2832,2495,4395,4715,2372,2372,3451,3451,
+ 58,519,325,1560,327,1258,852,793,320,1517,
+ 3321,38,282,1734,356,348,2694,686,38,508,
+ 3433,1204,2401,775,3281,2168,2928,2187,38,1200,
+ 36,1204,2931,4704,34,1247,31,35,344,32,
+ 2173,3416,3122,952,349,1509,1474,354,337,338,
+ 1054,294,3221,3534,38,1200,36,1204,2845,3248,
+ 34,1247,31,35,30,32,1163,262,29,27,
+ 56,1302,111,80,81,112,1375,2447,1465,2587,
+ 686,2021,297,58,2402,325,1560,327,866,3005,
+ 364,320,1517,1983,58,58,775,356,1020,1252,
+ 4425,2504,319,1775,3098,3125,304,2444,2845,38,
+ 1200,36,1204,2073,4704,34,1247,31,35,344,
+ 32,3332,160,295,3441,296,370,349,1509,1474,
+ 354,446,3034,202,3340,1646,3534,38,1200,36,
+ 1204,380,3248,34,1247,31,35,30,32,1163,
+ 262,29,27,56,1302,111,80,81,112,1375,
+ 58,2384,2498,2851,3181,4994,325,1560,327,1979,
+ 963,3217,320,1517,288,3145,604,4726,356,1788,
+ 2355,2832,3238,3321,38,280,2372,3451,523,1736,
+ 38,3437,36,1204,3094,4782,34,1247,31,35,
+ 344,32,2269,3161,1628,2694,339,340,349,1509,
+ 1474,354,3369,686,2021,297,524,1675,38,1200,
+ 36,1204,3094,4782,34,1247,31,35,344,32,
+ 1519,3252,3223,3646,356,2742,3753,337,1849,58,
+ 3316,2372,378,3111,2634,337,3169,325,1560,327,
+ 2734,2372,3448,320,1517,2178,295,3743,296,2788,
+ 227,3451,1054,294,349,1509,1474,354,526,1364,
+ 348,3341,347,337,775,325,1560,327,3402,364,
+ 203,320,1517,4601,3316,215,4514,212,205,213,
+ 214,216,1775,3098,3125,3347,787,2671,4905,3216,
+ 356,58,3316,1013,206,207,3976,3135,2263,3407,
+ 1152,338,3779,1020,4514,534,3763,2372,217,4905,
+ 208,209,210,211,201,356,298,299,300,301,
+ 349,1509,1474,354,348,427,227,160,1646,160,
+ 1849,3229,221,314,1543,4081,2790,532,67,1197,
+ 3451,415,3438,395,424,351,1509,1474,354,4601,
+ 2914,215,3052,212,205,213,214,216,58,47,
+ 2982,1025,3811,1897,1296,692,519,3852,3368,2402,
+ 206,207,2372,3135,2310,3661,288,3145,335,1020,
+ 49,2982,775,1020,217,3123,208,209,210,211,
+ 337,227,298,299,300,301,1844,2021,2929,1547,
+ 1204,3619,4631,160,2311,3161,451,165,3066,3724,
+ 2600,4081,3419,817,4601,3998,215,4140,212,205,
+ 213,214,216,520,1871,437,380,775,54,2372,
+ 1941,4535,3899,775,940,206,207,2372,3135,295,
+ 55,296,1859,953,1072,394,424,3327,348,217,
+ 58,208,209,210,211,2986,227,298,299,300,
+ 301,3623,4181,776,2021,2034,390,1204,4222,775,
+ 58,573,3316,1662,1277,3009,4081,3432,775,4601,
+ 775,215,1345,212,205,213,214,216,3199,2021,
+ 2034,390,1204,58,58,54,231,58,3062,3127,
+ 206,207,3192,3135,2558,231,295,55,296,1859,
+ 1536,2954,4453,3444,217,382,208,209,210,211,
+ 54,3624,298,299,300,301,4555,2989,243,229,
+ 230,295,55,296,1859,231,982,246,229,230,
+ 3740,4081,3434,3534,38,2118,2115,1204,3440,3248,
+ 34,1247,31,35,30,32,1163,262,29,27,
+ 56,1302,111,80,81,88,3653,249,229,230,
+ 3534,38,1200,36,1204,37,3248,34,1247,31,
+ 35,30,32,1163,262,29,27,56,1302,111,
+ 80,81,112,2398,3534,38,1200,36,1204,1622,
+ 3248,34,1247,31,35,30,32,1163,262,29,
+ 27,56,1302,111,80,81,112,2437,3534,38,
+ 1200,36,1204,1900,3248,34,1247,31,35,30,
+ 32,1163,262,29,27,56,1302,111,80,81,
+ 112,2445,1961,38,1200,36,1204,3316,4782,34,
+ 1247,31,35,344,32,3334,3642,2357,2193,2173,
+ 2372,2858,1020,3316,1543,686,2021,2034,390,1204,
+ 3451,58,2173,3442,2173,177,885,956,3727,348,
+ 534,3316,2860,3747,2402,231,160,311,3767,3444,
+ 527,686,2021,2034,390,1204,1412,54,338,227,
+ 325,1560,327,4997,160,2914,321,1517,295,55,
+ 296,1859,356,988,1633,185,530,252,229,230,
+ 3745,310,3051,54,215,312,212,204,213,214,
+ 216,3644,174,3768,295,55,296,1859,303,3049,
+ 302,521,351,1509,1474,354,3769,188,172,173,
+ 175,176,177,178,179,3534,38,1200,36,1204,
+ 986,3248,34,1247,31,35,30,32,1163,262,
+ 29,27,56,1302,111,80,81,87,3534,38,
+ 1200,36,1204,3650,3248,34,1247,31,35,30,
+ 32,1163,262,29,27,56,1302,111,80,81,
+ 86,3534,38,1200,36,1204,99,3248,34,1247,
+ 31,35,30,32,1163,262,29,27,56,1302,
+ 111,80,81,85,3534,38,1200,36,1204,3645,
+ 3248,34,1247,31,35,30,32,1163,262,29,
+ 27,56,1302,111,80,81,84,2983,3770,385,
+ 3534,38,1200,36,1204,2433,3248,34,1247,31,
+ 35,30,32,1163,262,29,27,56,1302,111,
+ 80,81,83,3534,38,1200,36,1204,3776,3248,
+ 34,1247,31,35,30,32,1163,262,29,27,
+ 56,1302,111,80,81,82,3397,38,1200,36,
+ 1204,3649,3248,34,1247,31,35,30,32,1163,
+ 262,29,27,56,1302,111,80,81,109,3534,
+ 38,1200,36,1204,3793,3248,34,1247,31,35,
+ 30,32,1163,262,29,27,56,1302,111,80,
+ 81,114,3534,38,1200,36,1204,775,3248,34,
+ 1247,31,35,30,32,1163,262,29,27,56,
+ 1302,111,80,81,113,3681,2300,2345,390,1204,
+ 3804,3223,3808,3317,3773,3205,3316,2647,237,262,
+ 3777,2694,3785,3316,775,2908,864,2021,2034,390,
+ 1204,3451,3534,38,1200,36,1204,274,3248,34,
+ 1247,31,35,30,32,1163,262,29,27,56,
+ 1302,111,80,81,110,335,5004,2030,54,4304,
+ 1020,3925,1020,306,3587,3316,2372,231,3812,295,
+ 55,296,1859,89,985,686,2021,2034,390,1204,
+ 3795,3745,775,3802,165,227,160,3707,277,4940,
+ 3803,3816,2372,276,275,1667,167,3863,3813,235,
+ 229,230,2174,38,396,196,3817,54,4601,1669,
+ 215,227,212,205,213,214,216,4345,295,55,
+ 296,1859,5524,2933,242,245,248,251,3156,206,
+ 207,5524,3135,5524,4601,2231,215,5524,212,205,
+ 213,214,216,494,5524,208,209,210,211,5524,
+ 5524,298,299,300,301,206,207,265,3135,1431,
+ 5524,2404,534,1217,3423,58,1020,101,534,516,
+ 2372,208,209,210,211,5524,5524,298,299,300,
+ 301,227,5524,2174,38,396,160,348,5524,348,
+ 160,5524,160,5524,335,5524,1633,185,353,1020,
+ 2763,5524,817,534,3051,5524,215,2504,212,204,
+ 213,214,216,2914,174,2914,3506,5524,5524,5524,
+ 5524,5524,227,165,1372,5524,2209,160,5524,3803,
+ 172,173,175,176,177,178,179,1633,185,5524,
+ 5524,5524,5524,5524,5524,3051,5524,215,5524,212,
+ 204,213,214,216,5524,174,3185,38,1200,36,
+ 1204,3094,4704,34,1247,31,35,344,32,2851,
+ 181,172,173,175,176,177,178,179,3972,5524,
+ 5524,5524,5524,2372,1571,38,1200,36,1204,2939,
+ 4704,34,1247,31,35,344,32,3826,2397,5524,
+ 5524,5524,227,5524,3998,335,2508,5524,5524,2372,
+ 1020,1020,336,340,325,1560,327,58,2504,5524,
+ 320,1517,2372,5524,403,4601,5524,215,227,212,
+ 205,213,214,216,165,160,2671,5524,5524,5524,
+ 5524,348,322,3308,327,1802,206,207,5524,3135,
+ 5524,4601,5524,215,5524,212,205,213,214,216,
+ 313,3826,208,209,210,211,2372,2914,298,299,
+ 300,301,206,207,335,3135,5524,5524,2212,1020,
+ 2851,5524,314,5524,5524,227,517,5524,208,209,
+ 210,211,5524,1534,298,299,300,301,2372,2555,
+ 5524,3052,5524,165,1020,5524,5524,5524,4601,2435,
+ 215,3811,212,205,213,214,216,2694,5524,5524,
+ 441,5524,5524,2833,340,534,1282,5524,160,206,
+ 207,534,3135,5524,1534,5524,5524,5524,1818,2372,
+ 2476,5524,5524,218,227,208,209,210,211,160,
+ 348,298,299,300,301,160,5524,5524,2694,1633,
+ 185,529,5524,5524,5524,193,534,3051,5524,215,
+ 5524,212,204,213,214,216,4469,174,2513,686,
+ 2021,2034,390,1204,5524,227,5524,5524,5524,5524,
+ 160,364,192,172,173,175,176,177,178,179,
+ 1633,185,617,5524,2303,3098,3125,534,3051,5524,
+ 215,54,212,204,213,214,216,5524,174,5524,
+ 5524,5524,295,55,296,1859,227,982,5524,5524,
+ 5524,160,364,3829,172,173,175,176,177,178,
+ 179,1633,185,705,3142,2773,3098,3125,534,3051,
+ 5524,215,5524,212,204,213,214,216,5524,174,
+ 5524,686,2021,2034,390,1204,5524,227,5524,5524,
+ 5524,5524,160,5524,195,172,173,175,176,177,
+ 178,179,1633,185,793,5524,5524,5524,5524,534,
+ 3051,5524,215,54,212,204,213,214,216,5524,
+ 174,5524,5524,5524,295,55,296,1859,227,2379,
+ 5524,5524,5524,160,5524,191,172,173,175,176,
+ 177,178,179,1633,185,881,5524,5524,5524,5524,
+ 534,3051,5524,215,5524,212,204,213,214,216,
+ 335,174,3762,5524,5524,1020,5524,2372,5524,227,
+ 5524,5524,5524,5524,160,5524,198,172,173,175,
+ 176,177,178,179,1633,185,2694,5524,5524,165,
+ 5524,5524,3051,5524,215,2504,212,204,213,214,
+ 216,5524,174,1814,38,3437,36,1204,3094,4704,
+ 34,1247,31,35,344,32,5524,197,172,173,
+ 175,176,177,178,179,2504,1970,38,1200,36,
+ 1204,3094,4704,34,1247,31,35,344,32,1852,
+ 38,1200,36,1204,3094,4704,34,1247,31,35,
+ 344,32,5524,2077,5524,5524,5524,2851,1020,5524,
+ 500,325,1560,327,2846,5524,5524,320,1517,1852,
+ 38,1200,36,1204,3094,4704,34,1247,31,35,
+ 344,32,160,1364,325,1560,327,2851,5524,5524,
+ 320,1517,167,5524,5524,498,499,325,1560,327,
+ 2844,340,5524,320,1517,5524,2671,5524,5524,5524,
+ 5524,5524,5524,5524,1045,38,1200,36,1204,2444,
+ 4782,34,1247,31,35,344,32,325,1560,327,
+ 3118,340,5524,320,1517,1045,38,1200,36,1204,
+ 5524,4782,34,1247,31,35,344,32,5524,3818,
+ 5524,5524,315,5524,5524,686,2300,2345,390,1204,
+ 3736,5524,5524,5524,5524,416,3438,5524,5524,5524,
+ 338,5524,325,1560,327,5524,5524,5524,323,1517,
+ 5524,5524,3206,2021,2034,390,1204,274,5524,5524,
+ 5524,338,5524,325,1560,327,5524,5524,5524,321,
+ 1517,1935,38,1200,36,1204,2967,4704,34,1247,
+ 31,35,344,32,54,1778,5524,58,5524,5524,
+ 2372,4923,2372,5524,5524,295,55,296,1859,5524,
+ 1689,864,2021,2034,390,1204,5524,5524,278,227,
+ 5524,348,1861,276,275,4555,5524,2372,4923,5524,
+ 5524,5524,5524,776,2021,2034,390,1204,5524,322,
+ 3308,327,4004,54,407,5524,227,2914,5524,5524,
+ 5524,5524,5524,5524,295,55,296,1859,1716,52,
+ 5524,5524,5524,1292,408,54,3135,5524,5524,4004,
+ 58,407,5524,5524,2760,2372,295,55,296,1859,
+ 5524,52,5524,5524,776,2021,2034,390,1204,5524,
+ 1292,408,5524,3135,348,3762,2041,5524,58,5524,
+ 2372,5524,5524,2372,5524,5524,776,2021,2034,390,
+ 1204,5524,5524,5524,5524,5524,54,5524,5524,2694,
+ 2914,5524,348,5524,5524,5524,3128,295,55,296,
+ 1859,504,2430,5524,5524,5524,5524,2476,54,5524,
+ 5524,864,2021,2034,390,1204,5524,4980,2914,295,
+ 55,296,1859,3128,52,409,411,5524,5524,502,
+ 5524,5524,776,2021,2034,390,1204,5524,5524,2036,
+ 5524,5524,2602,54,5524,5524,5524,1020,5524,1889,
+ 5524,4642,409,412,295,55,296,1859,5524,52,
+ 5524,5524,5524,500,54,776,2021,2034,390,1204,
+ 5524,160,5524,5524,1008,295,55,296,1859,5524,
+ 2690,1947,5524,5524,5524,5524,776,2021,2034,390,
+ 1204,5524,5524,5524,5524,4980,2649,54,497,499,
+ 58,1020,5524,5524,5524,2372,5524,5524,295,55,
+ 296,1859,5524,52,5524,5524,5524,5524,54,2260,
+ 2021,2034,390,1204,348,160,5524,5524,2130,295,
+ 55,296,1859,5524,52,2295,3442,5524,5524,5524,
+ 2505,2021,2034,390,1204,5524,5524,5524,5524,2439,
+ 2914,54,5524,5524,5524,686,2021,2034,390,1204,
+ 5524,531,295,55,296,1859,5524,52,5524,5524,
+ 5524,5524,54,686,2021,2034,390,1204,5524,5524,
+ 5524,5524,2830,295,55,296,1859,54,52,5524,
+ 511,2300,2345,390,1204,5524,5524,5524,295,55,
+ 296,51,5524,2963,5524,54,686,2300,2345,390,
+ 1204,5524,5524,5524,5524,5524,295,55,296,1859,
+ 5524,1946,274,686,2300,2345,390,1204,5524,5524,
+ 686,2300,2345,390,1204,5524,5524,5524,274,686,
+ 2300,2345,390,1204,3805,1087,5524,2124,1347,2372,
+ 534,1412,1020,534,2200,274,534,5524,5524,1020,
+ 5524,5524,274,5524,5524,5524,5524,5524,2694,227,
+ 5524,274,348,3091,160,348,160,160,276,275,
+ 160,5524,5524,160,167,5524,167,193,5524,78,
+ 193,5524,3051,167,276,275,3777,2696,4469,5524,
+ 2743,4469,1020,5524,5524,1020,76,5524,5524,5524,
+ 5524,276,275,345,5524,5524,5524,5524,276,275,
+ 5524,5524,77,5524,5524,5524,160,276,275,160,
+ 5524,5524,5524,5524,5524,5524,1805,5524,5524,3707,
+ 5524,5524,500,5524,5524,5524,5524,5524,5524,5524,
+ 5524,5524,3232,5524,3744,5524,5524,5524,5524,5524,
+ 5524,3802,5524,5524,5524,5524,3187,5524,5524,3193,
+ 5524,5524,5524,5524,5524,5524,5524,497,499,5524,
+ 5524,5524,5524,5524,5524,5524,5524,5524,5524,5524,
+ 5524,5524,5524,5524,5524,5524,5524,5524,5524,5524,
+ 5524,5524,5524,5524,5524,5524,5524,5524,5524,5524,
+ 5524,5524,5524,5524,5524,3784,5524,0,5542,42,
+ 0,5541,42,0,161,533,0,508,33,0,
+ 449,783,0,5542,41,0,5541,41,0,2638,
+ 130,0,1,439,0,453,1170,0,452,1240,
+ 0,508,44,0,2107,96,0,38,305,0,
+ 389,297,0,36,390,0,33,389,0,508,
+ 33,389,0,1899,42,0,1,563,0,1,
+ 5797,0,1,5796,0,1,5795,0,1,5794,
+ 0,1,5793,0,1,5792,0,1,5791,0,
+ 1,5790,0,1,5789,0,1,5788,0,1,
+ 5787,0,1,5542,42,0,1,5541,42,0,
+ 1,1063,0,5757,240,0,5756,240,0,5867,
+ 240,0,5866,240,0,5784,240,0,5783,240,
+ 0,5782,240,0,5781,240,0,5780,240,0,
+ 5779,240,0,5778,240,0,5777,240,0,5797,
+ 240,0,5796,240,0,5795,240,0,5794,240,
+ 0,5793,240,0,5792,240,0,5791,240,0,
+ 5790,240,0,5789,240,0,5788,240,0,5787,
+ 240,0,5542,42,240,0,5541,42,240,0,
+ 5565,240,0,38,285,261,0,508,389,0,
+ 5542,53,0,5541,53,0,48,5563,0,48,
+ 40,0,2638,132,0,2638,131,0,3138,236,
+ 0,30,515,0,5859,440,0,862,440,0,
+ 1,97,0,52,40,0,1,5565,0,1,
+ 42,0,1,5565,228,0,1,42,228,0,
+ 228,414,0,5542,40,0,5541,40,0,5563,
+ 50,0,40,50,0,5542,39,0,5541,39,
+ 0,5542,2,40,0,5541,2,40,0,5534,
+ 405,0,5533,405,0,1,4439,0,1,2996,
+ 0,1,1899,0,228,413,0,5859,100,0,
+ 862,100,0,2496,324,0,1,5859,0,1,
+ 862,0,3914,281,0,1,1904,0,1,3822,
+ 0,5532,1,0,496,3807,0,1,228,0,
+ 1,228,3638,0,5534,228,0,5533,228,0,
+ 3793,228,0,161,180,0,297,3257,0,8,
+ 10,0,228,168,0,228,220,0,228,219,
+ 0,190,4263,0
};
};
public final static char baseAction[] = BaseAction.baseAction;
@@ -1084,388 +1129,415 @@ public class CPPNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
10,11,12,13,14,15,16,17,18,19,
20,21,22,23,24,25,26,27,28,29,
30,31,32,33,34,35,36,37,38,39,
- 40,41,42,43,44,45,46,0,48,49,
- 50,51,52,53,54,55,56,0,58,2,
- 60,61,62,63,64,65,0,67,0,1,
- 4,71,4,73,6,75,76,77,78,79,
- 80,81,82,83,84,85,0,1,2,3,
- 4,5,6,7,8,9,10,11,12,13,
- 14,15,16,17,18,19,20,21,22,23,
- 24,25,26,27,28,29,30,31,32,33,
- 34,35,36,37,38,39,40,41,42,43,
- 44,45,46,0,48,49,50,51,52,53,
- 54,55,56,0,58,2,60,61,62,63,
- 64,65,0,67,0,1,2,3,4,73,
- 6,75,76,77,78,79,80,81,82,83,
- 84,85,0,1,2,3,4,5,6,7,
- 8,9,10,11,12,13,14,15,16,17,
- 18,19,20,21,22,23,24,25,26,27,
- 28,29,30,31,32,33,34,35,36,37,
- 38,39,40,41,42,43,44,45,46,0,
- 48,49,50,51,52,53,54,55,56,0,
- 58,0,60,61,62,63,64,65,7,67,
- 0,1,2,3,4,73,6,75,76,77,
- 78,79,80,81,82,83,84,85,0,1,
+ 40,41,42,43,44,45,46,47,48,49,
+ 50,51,52,53,54,55,56,0,58,0,
+ 60,61,62,63,64,65,0,67,68,0,
+ 1,2,72,4,74,0,76,77,78,79,
+ 80,81,0,83,84,85,86,87,0,1,
2,3,4,5,6,7,8,9,10,11,
12,13,14,15,16,17,18,19,20,21,
22,23,24,25,26,27,28,29,30,31,
32,33,34,35,36,37,38,39,40,41,
- 42,43,44,45,46,0,48,49,50,51,
- 52,53,54,55,56,0,58,98,60,61,
- 62,63,64,65,0,67,0,1,2,3,
- 4,73,6,75,76,77,78,79,80,81,
- 82,83,84,85,0,1,2,3,4,5,
+ 42,43,44,45,46,47,48,49,50,51,
+ 52,53,54,55,56,70,58,0,60,61,
+ 62,63,64,65,0,67,68,0,0,100,
+ 72,95,74,6,76,77,78,79,80,81,
+ 0,83,84,85,86,87,0,1,2,3,
+ 4,5,6,7,8,9,10,11,12,13,
+ 14,15,16,17,18,19,20,21,22,23,
+ 24,25,26,27,28,29,30,31,32,33,
+ 34,35,36,37,38,39,40,41,42,43,
+ 44,45,46,47,48,49,50,51,52,53,
+ 54,55,56,0,58,0,60,61,62,63,
+ 64,65,9,67,68,0,88,89,91,92,
+ 74,6,76,77,78,79,80,81,0,83,
+ 84,85,86,87,0,1,2,3,4,5,
6,7,8,9,10,11,12,13,14,15,
16,17,18,19,20,21,22,23,24,25,
26,27,28,29,30,31,32,33,34,35,
36,37,38,39,40,41,42,43,44,45,
- 46,0,48,49,50,51,52,53,54,55,
+ 46,47,48,49,50,51,52,53,54,55,
56,0,58,0,60,61,62,63,64,65,
- 0,67,0,1,99,3,4,73,6,75,
- 76,77,78,79,80,81,82,83,84,85,
+ 95,67,68,0,0,0,91,92,74,6,
+ 76,77,78,79,80,81,12,83,84,85,
+ 86,87,0,1,2,3,4,5,6,7,
+ 8,9,10,11,12,13,14,15,16,17,
+ 18,19,20,21,22,23,24,25,26,27,
+ 28,29,30,31,32,33,34,35,36,37,
+ 38,39,40,41,42,43,44,45,46,47,
+ 48,49,50,51,52,53,54,55,56,75,
+ 58,0,60,61,62,63,64,65,95,67,
+ 68,10,11,0,91,92,74,4,76,77,
+ 78,79,80,81,99,83,84,85,86,87,
0,1,2,3,4,5,6,7,8,9,
10,11,12,13,14,15,16,17,18,19,
20,21,22,23,24,25,26,27,28,29,
30,31,32,33,34,35,36,37,38,39,
- 40,41,42,43,44,45,46,0,48,49,
- 50,51,52,53,54,55,56,0,58,2,
- 60,61,62,63,64,65,0,67,0,1,
- 97,3,4,73,6,75,76,77,78,79,
- 80,81,82,83,84,85,0,1,2,3,
- 4,5,6,7,8,9,10,11,12,13,
- 14,15,16,17,18,19,20,21,22,23,
- 24,25,26,27,28,29,30,31,32,33,
- 34,35,36,37,38,39,40,41,42,43,
- 44,45,46,0,48,49,50,51,52,53,
- 54,55,56,0,58,2,60,61,62,63,
- 64,65,0,67,0,1,0,5,2,73,
- 6,75,76,77,78,79,80,81,82,83,
- 84,85,0,1,2,3,4,5,6,7,
- 8,9,10,11,12,13,14,15,16,17,
- 18,19,20,21,22,23,24,25,26,27,
- 28,29,30,31,32,33,34,35,36,37,
- 38,39,40,41,42,43,44,45,46,0,
- 48,49,50,51,52,53,54,55,56,0,
- 58,0,60,61,62,63,64,65,0,67,
- 0,89,90,5,0,73,113,75,76,77,
- 78,79,80,81,82,83,84,85,0,1,
+ 40,41,42,43,44,45,46,47,48,49,
+ 50,51,52,53,54,55,56,0,58,0,
+ 60,61,62,63,64,65,0,67,68,3,
+ 0,1,2,0,74,5,76,77,78,79,
+ 80,81,0,83,84,85,86,87,0,1,
2,3,4,5,6,7,8,9,10,11,
12,13,14,15,16,17,18,19,20,21,
22,23,24,25,26,27,28,29,30,31,
32,33,34,35,36,37,38,39,40,41,
- 42,43,44,45,46,0,48,49,50,51,
- 52,53,54,55,56,71,58,98,60,61,
- 62,63,64,65,0,67,97,89,90,0,
- 1,73,3,75,76,77,78,79,80,81,
- 82,83,84,85,0,1,2,3,4,5,
- 6,7,8,9,10,11,12,13,14,15,
- 16,17,18,19,20,21,22,23,24,25,
- 26,27,28,29,30,31,32,33,34,35,
- 36,37,38,39,40,41,42,43,44,45,
- 46,0,48,49,50,51,52,53,54,55,
- 56,0,58,0,60,61,62,63,64,65,
- 0,67,0,1,2,3,4,73,6,75,
- 76,77,78,79,80,81,82,83,84,85,
- 0,1,2,3,4,5,6,7,114,9,
- 10,11,12,42,0,1,45,46,4,48,
- 49,50,51,52,53,54,55,56,0,1,
- 2,3,4,5,6,7,0,1,0,3,
- 60,59,42,43,0,45,46,3,48,49,
- 50,51,52,53,54,55,56,57,0,59,
- 60,3,0,5,0,7,66,3,68,69,
- 70,71,72,73,0,1,2,3,4,5,
- 6,7,0,47,0,1,86,87,88,89,
- 90,91,92,93,94,95,96,97,98,99,
- 100,101,102,103,104,105,106,107,108,109,
- 110,111,112,113,114,115,0,1,2,3,
+ 42,43,44,45,46,47,48,49,50,51,
+ 52,53,54,55,56,0,58,74,60,61,
+ 62,63,64,65,0,67,68,0,1,2,
+ 0,4,74,0,76,77,78,79,80,81,
+ 0,83,84,85,86,87,0,1,2,3,
4,5,6,7,8,9,10,11,12,13,
14,15,16,17,18,19,20,21,22,23,
24,25,26,27,28,29,30,31,32,33,
34,35,36,37,38,39,40,41,42,43,
- 44,45,46,0,48,49,50,51,52,53,
- 54,55,56,0,58,93,114,61,62,63,
- 0,1,2,3,4,5,6,7,8,9,
- 10,11,12,13,14,15,16,17,18,19,
- 20,21,22,23,24,25,26,27,28,29,
- 30,31,32,33,34,35,36,37,38,39,
- 40,41,42,0,44,45,46,0,48,49,
- 50,51,52,53,54,55,56,0,58,66,
- 0,61,62,63,0,1,2,3,4,5,
+ 44,45,46,47,48,49,50,51,52,53,
+ 54,55,56,70,58,0,60,61,62,63,
+ 64,65,0,67,68,0,1,2,88,89,
+ 74,0,76,77,78,79,80,81,0,83,
+ 84,85,86,87,0,1,2,3,4,5,
6,7,8,9,10,11,12,13,14,15,
16,17,18,19,20,21,22,23,24,25,
26,27,28,29,30,31,32,33,34,35,
- 36,37,38,39,40,41,42,47,44,45,
- 46,68,48,49,50,51,52,53,54,55,
- 56,0,58,66,3,61,62,63,0,1,
- 2,3,4,5,6,7,8,9,10,11,
- 12,13,14,15,16,17,18,19,20,21,
- 22,23,24,25,26,27,28,29,30,31,
- 32,33,34,35,36,37,38,39,40,41,
- 42,0,44,45,46,0,48,49,50,51,
- 52,53,54,55,56,0,58,0,1,61,
- 62,63,0,1,2,3,4,5,6,7,
+ 36,37,38,39,40,41,42,43,44,45,
+ 46,47,48,49,50,51,52,53,54,55,
+ 56,70,58,0,60,61,62,63,64,65,
+ 0,67,68,3,0,0,1,2,74,0,
+ 76,77,78,79,80,81,12,83,84,85,
+ 86,87,0,1,2,3,4,5,6,7,
8,9,10,11,12,13,14,15,16,17,
18,19,20,21,22,23,24,25,26,27,
28,29,30,31,32,33,34,35,36,37,
- 38,39,40,41,42,60,44,45,46,68,
- 48,49,50,51,52,53,54,55,56,0,
- 58,66,3,61,62,63,0,1,2,3,
- 4,5,6,7,8,9,10,11,12,13,
- 14,15,16,17,18,19,20,21,22,23,
- 24,25,26,27,28,29,30,31,32,33,
- 34,35,36,37,38,39,40,41,42,0,
- 44,45,46,0,48,49,50,51,52,53,
- 54,55,56,0,58,0,0,61,62,63,
+ 38,39,40,41,42,43,44,45,46,47,
+ 48,49,50,51,52,53,54,55,56,75,
+ 58,0,60,61,62,63,64,65,0,67,
+ 68,0,0,0,1,2,74,0,76,77,
+ 78,79,80,81,12,83,84,85,86,87,
0,1,2,3,4,5,6,7,8,9,
10,11,12,13,14,15,16,17,18,19,
20,21,22,23,24,25,26,27,28,29,
30,31,32,33,34,35,36,37,38,39,
- 0,0,42,47,3,45,46,68,48,49,
+ 40,41,42,43,44,45,46,47,48,49,
50,51,52,53,54,55,56,0,58,0,
- 0,61,62,63,0,0,2,72,3,5,
- 0,7,0,9,10,11,12,0,1,2,
- 3,4,42,6,43,45,46,0,48,49,
- 50,51,52,53,54,55,56,0,1,2,
- 3,4,42,6,0,45,46,43,48,49,
- 50,51,52,53,54,55,56,0,59,0,
- 43,57,57,59,0,1,2,3,71,5,
- 66,7,68,69,70,71,72,0,66,2,
- 43,0,5,2,7,75,9,10,11,12,
- 86,87,88,89,90,91,92,93,94,95,
- 96,97,98,99,100,101,102,103,104,105,
- 106,107,108,109,110,111,112,113,114,115,
- 43,0,1,59,3,66,5,68,7,72,
- 0,1,88,3,57,5,59,7,94,0,
- 59,0,1,66,3,68,69,70,71,72,
- 0,1,2,3,4,5,6,7,0,0,
- 1,0,3,86,87,88,89,90,91,92,
- 93,94,95,96,97,98,99,100,101,102,
- 103,104,105,106,107,108,109,110,111,112,
- 113,114,115,0,1,2,3,4,5,6,
- 7,8,0,1,45,3,13,14,15,16,
- 17,18,19,20,21,22,23,59,0,1,
- 70,0,1,2,3,4,5,6,7,0,
- 1,0,1,0,1,42,43,44,45,46,
- 47,48,49,50,51,52,53,54,55,56,
- 0,58,2,0,61,62,63,64,40,41,
- 99,0,60,70,71,0,0,74,7,40,
- 41,0,1,2,3,4,5,6,7,8,
- 59,0,0,2,13,14,15,16,17,18,
- 19,20,21,22,23,42,0,1,45,46,
- 4,48,49,50,51,52,53,54,55,56,
- 117,118,119,42,43,44,45,46,47,48,
- 49,50,51,52,53,54,55,56,0,58,
- 0,66,61,62,63,64,70,9,10,9,
- 10,70,71,47,0,74,0,1,2,3,
+ 60,61,62,63,64,65,0,67,68,88,
+ 89,100,0,0,74,0,76,77,78,79,
+ 80,81,0,83,84,85,86,87,0,1,
+ 2,3,4,5,6,7,8,115,10,11,
+ 12,13,14,44,0,0,47,48,49,50,
+ 51,52,53,54,55,56,44,58,61,47,
+ 48,49,50,51,52,53,54,55,56,0,
+ 58,26,44,45,59,47,48,49,50,51,
+ 52,53,54,55,56,0,58,59,73,61,
+ 0,69,70,3,66,10,11,69,70,71,
+ 72,73,74,75,0,1,2,3,4,5,
+ 6,7,8,0,1,2,88,89,90,91,
+ 92,93,94,95,96,97,98,99,100,101,
+ 102,103,104,105,106,107,108,109,110,111,
+ 112,113,114,115,116,117,0,1,2,3,
4,5,6,7,8,9,10,11,12,13,
14,15,16,17,18,19,20,21,22,23,
24,25,26,27,28,29,30,31,32,33,
- 34,35,36,37,38,39,40,41,117,118,
- 119,0,1,2,3,4,5,6,7,8,
- 9,10,11,12,13,14,15,16,17,18,
+ 34,35,36,37,38,39,40,41,42,43,
+ 44,45,46,47,48,49,50,51,52,53,
+ 54,55,56,0,58,0,60,4,62,63,
+ 64,0,1,2,3,4,5,6,7,8,
+ 9,10,11,0,13,14,15,16,17,18,
19,20,21,22,23,24,25,26,27,28,
29,30,31,32,33,34,35,36,37,38,
- 39,40,41,0,43,44,0,1,2,3,
- 4,5,6,7,8,9,10,11,12,13,
+ 39,40,41,42,43,44,0,46,47,48,
+ 49,50,51,52,53,54,55,56,0,58,
+ 0,60,4,62,63,64,0,1,2,3,
+ 4,5,6,7,8,9,10,11,0,13,
14,15,16,17,18,19,20,21,22,23,
24,25,26,27,28,29,30,31,32,33,
- 34,35,36,37,38,39,40,41,45,43,
- 44,0,1,2,3,4,5,6,7,8,
- 9,10,11,12,13,14,15,16,17,18,
+ 34,35,36,37,38,39,40,41,42,43,
+ 44,116,46,47,48,49,50,51,52,53,
+ 54,55,56,0,58,47,60,0,62,63,
+ 64,0,1,2,3,4,5,6,7,8,
+ 9,10,11,0,13,14,15,16,17,18,
19,20,21,22,23,24,25,26,27,28,
29,30,31,32,33,34,35,36,37,38,
- 39,40,41,0,43,44,0,1,2,3,
- 4,5,6,7,8,9,10,11,12,13,
+ 39,40,41,42,43,44,116,46,47,48,
+ 49,50,51,52,53,54,55,56,0,58,
+ 0,60,69,62,63,64,0,1,2,3,
+ 4,5,6,7,8,9,10,11,0,13,
14,15,16,17,18,19,20,21,22,23,
24,25,26,27,28,29,30,31,32,33,
- 34,35,36,37,38,39,40,41,0,1,
- 44,0,0,1,0,3,2,5,0,7,
- 9,10,0,1,2,3,4,5,6,7,
- 0,1,2,3,4,0,6,2,72,0,
- 1,2,3,4,5,6,7,8,9,10,
- 11,12,13,14,15,16,17,18,19,20,
- 21,22,23,24,25,26,27,28,29,30,
- 31,32,33,34,35,36,37,38,39,40,
- 41,59,0,44,72,0,1,0,3,2,
- 5,69,7,0,59,0,1,2,3,4,
- 70,6,0,0,1,93,3,0,5,2,
- 7,72,0,1,2,3,4,5,6,7,
- 8,9,10,11,12,13,14,15,16,17,
- 18,19,20,21,22,23,24,25,26,27,
- 28,29,30,31,32,33,34,35,36,37,
- 38,39,40,41,59,73,44,0,1,2,
- 3,4,5,6,7,8,9,10,11,12,
- 13,14,15,16,17,18,19,20,21,22,
- 23,24,25,26,27,28,29,30,31,32,
- 33,34,35,36,37,38,39,40,41,0,
- 1,44,0,1,2,3,4,5,6,7,
- 8,9,10,11,12,13,14,15,16,17,
- 18,19,20,21,22,23,24,25,26,27,
- 28,29,30,31,32,33,34,35,36,37,
- 38,39,40,41,0,0,44,0,1,2,
- 3,4,5,6,7,8,9,10,11,12,
- 13,14,15,16,17,18,19,20,21,22,
- 23,24,25,26,27,28,29,30,31,32,
- 33,34,35,36,37,38,39,40,41,0,
- 1,44,0,1,2,3,4,5,6,7,
+ 34,35,36,37,38,39,40,41,42,43,
+ 44,0,46,47,48,49,50,51,52,53,
+ 54,55,56,0,58,0,60,69,62,63,
+ 64,0,1,2,3,4,5,6,7,8,
+ 9,10,11,0,13,14,15,16,17,18,
+ 19,20,21,22,23,24,25,26,27,28,
+ 29,30,31,32,33,34,35,36,37,38,
+ 39,40,41,42,43,44,0,46,47,48,
+ 49,50,51,52,53,54,55,56,0,58,
+ 0,60,69,62,63,64,0,1,2,3,
+ 4,5,6,7,8,9,10,11,0,13,
+ 14,15,16,17,18,19,20,21,22,23,
+ 24,25,26,27,28,29,30,31,32,33,
+ 34,35,36,37,38,39,40,41,0,0,
+ 44,3,0,47,48,49,50,51,52,53,
+ 54,55,56,0,58,0,60,0,62,63,
+ 64,0,0,0,3,12,4,6,6,8,
+ 8,10,11,12,13,14,88,89,15,16,
+ 17,18,19,20,21,22,23,24,25,99,
+ 0,1,2,3,4,5,57,7,0,1,
+ 2,59,12,5,66,7,45,44,0,0,
+ 47,48,49,50,51,52,53,54,55,56,
+ 59,58,0,1,2,0,4,66,75,0,
+ 69,70,71,72,73,45,75,0,1,2,
+ 3,4,5,6,7,8,0,0,95,88,
+ 89,90,91,92,93,94,95,96,97,98,
+ 99,100,101,102,103,104,105,106,107,108,
+ 109,110,111,112,113,114,115,116,117,0,
+ 71,0,3,61,59,6,0,8,0,10,
+ 11,12,13,14,0,1,2,3,4,5,
+ 6,7,8,66,57,0,1,2,71,4,
+ 5,102,7,104,105,106,107,108,109,110,
+ 111,112,113,114,45,44,97,98,47,48,
+ 49,50,51,52,53,54,55,56,59,58,
+ 0,1,2,97,98,66,60,7,69,70,
+ 71,72,73,0,75,0,1,2,3,4,
+ 5,6,7,8,0,1,2,88,89,90,
+ 91,92,93,94,95,96,97,98,99,100,
+ 101,102,103,104,105,106,107,108,109,110,
+ 111,112,113,114,115,116,117,0,1,2,
+ 3,4,5,6,7,8,9,0,0,12,
+ 122,4,15,16,17,18,19,20,21,22,
+ 23,24,25,0,1,2,73,4,73,6,
+ 0,8,0,0,1,2,3,4,5,0,
+ 7,44,45,46,47,48,49,50,51,52,
+ 53,54,55,56,57,58,0,60,0,62,
+ 63,64,65,0,1,2,59,4,0,72,
+ 73,0,1,2,3,4,5,69,7,82,
+ 0,1,2,3,4,5,6,7,8,9,
+ 0,59,12,3,0,15,16,17,18,19,
+ 20,21,22,23,24,25,73,0,1,2,
+ 0,4,5,3,7,59,119,120,121,0,
+ 57,0,1,2,44,45,46,47,48,49,
+ 50,51,52,53,54,55,56,57,58,0,
+ 60,73,62,63,64,65,88,89,0,119,
+ 120,121,72,73,0,1,2,3,4,5,
+ 0,7,82,44,57,5,47,48,49,50,
+ 51,52,53,54,55,56,66,58,57,0,
+ 0,1,2,3,4,5,6,7,8,0,
+ 1,2,3,4,5,101,7,0,59,119,
+ 120,121,0,1,2,3,4,5,6,7,
8,9,10,11,12,13,14,15,16,17,
18,19,20,21,22,23,24,25,26,27,
28,29,30,31,32,33,34,35,36,37,
- 38,39,40,41,0,0,47,3,3,95,
- 96,0,0,1,0,100,2,0,0,1,
- 0,0,5,3,0,1,0,112,66,0,
+ 38,39,40,41,42,43,66,45,46,0,
1,2,3,4,5,6,7,8,9,10,
11,12,13,14,15,16,17,18,19,20,
21,22,23,24,25,26,27,28,29,30,
31,32,33,34,35,36,37,38,39,40,
- 41,47,60,44,0,1,2,3,4,5,
- 6,7,8,9,10,11,12,13,14,15,
- 16,17,18,19,20,21,22,23,24,25,
- 26,27,28,29,30,31,32,33,34,35,
- 36,37,38,39,40,41,95,96,44,0,
- 1,2,3,4,5,6,7,8,9,10,
- 11,12,13,14,15,16,17,18,19,20,
- 21,22,23,24,25,26,27,28,29,30,
- 31,32,33,34,35,36,37,38,39,40,
- 41,0,1,44,0,1,2,3,4,5,
- 6,7,8,9,10,11,12,13,14,15,
- 16,17,18,19,20,21,22,23,24,25,
- 26,27,28,29,30,31,32,33,34,35,
- 36,37,38,39,40,41,0,1,44,0,
+ 41,42,43,0,45,46,0,1,2,3,
+ 4,5,6,7,8,9,10,11,12,13,
+ 14,15,16,17,18,19,20,21,22,23,
+ 24,25,26,27,28,29,30,31,32,33,
+ 34,35,36,37,38,39,40,41,42,43,
+ 0,45,46,0,1,2,3,4,5,6,
+ 7,8,9,10,11,12,13,14,15,16,
+ 17,18,19,20,21,22,23,24,25,26,
+ 27,28,29,30,31,32,33,34,35,36,
+ 37,38,39,40,41,42,43,0,0,46,
+ 3,0,0,0,1,2,8,0,1,2,
+ 3,4,0,6,12,8,0,1,2,3,
+ 4,5,0,7,0,1,2,5,75,0,
1,2,3,4,5,6,7,8,9,10,
11,12,13,14,15,16,17,18,19,20,
21,22,23,24,25,26,27,28,29,30,
31,32,33,34,35,36,37,38,39,40,
- 41,0,1,44,0,1,2,3,4,5,
- 6,7,8,9,10,11,12,13,14,15,
- 16,17,18,19,20,21,22,23,24,25,
- 26,27,28,29,30,31,32,33,34,35,
- 36,37,38,39,40,41,0,0,44,0,
+ 41,42,43,66,72,46,0,0,0,0,
+ 1,2,66,4,5,61,7,10,11,0,
+ 1,2,0,1,2,3,4,5,6,7,
+ 8,9,10,11,75,13,14,15,16,17,
+ 18,19,20,21,22,23,24,25,26,27,
+ 28,29,30,31,32,33,34,35,36,37,
+ 38,39,40,41,42,43,57,59,46,0,
1,2,3,4,5,6,7,8,9,10,
- 11,12,13,14,15,16,17,18,19,20,
+ 11,0,13,14,15,16,17,18,19,20,
21,22,23,24,25,26,27,28,29,30,
31,32,33,34,35,36,37,38,39,40,
- 41,0,1,2,3,4,5,6,7,8,
- 9,10,11,12,13,14,15,16,17,18,
- 19,20,21,22,23,24,25,26,27,28,
- 29,30,31,32,33,34,35,36,37,38,
- 39,0,86,87,0,88,0,0,2,0,
- 0,94,8,0,0,5,0,0,0,0,
- 4,60,0,0,0,24,2,0,1,0,
- 0,2,71,0,1,2,3,4,5,6,
- 7,8,9,10,11,12,13,14,15,16,
+ 41,42,43,0,0,46,0,1,2,3,
+ 4,5,6,7,8,9,10,11,0,13,
+ 14,15,16,17,18,19,20,21,22,23,
+ 24,25,26,27,28,29,30,31,32,33,
+ 34,35,36,37,38,39,40,41,42,43,
+ 0,0,46,0,1,2,3,4,5,6,
+ 7,8,9,10,11,61,13,14,15,16,
17,18,19,20,21,22,23,24,25,26,
27,28,29,30,31,32,33,34,35,36,
- 37,38,39,0,47,2,57,4,5,0,
- 7,2,9,10,11,12,0,1,59,3,
- 4,68,6,60,71,66,66,68,25,89,
- 90,72,0,0,71,88,88,93,86,87,
- 0,94,94,40,41,13,14,15,16,17,
- 18,19,20,21,22,23,117,118,119,0,
- 57,0,59,47,0,0,0,0,59,66,
- 0,68,69,0,42,2,43,45,46,0,
- 48,49,50,51,52,53,54,55,56,86,
- 87,88,89,90,91,92,0,1,95,96,
- 97,98,99,100,101,102,103,104,105,106,
- 107,108,109,110,111,0,46,2,48,4,
- 5,0,7,0,9,10,11,12,69,0,
- 1,0,3,4,68,6,72,0,72,8,
- 25,0,1,47,0,1,5,86,87,70,
- 0,86,87,86,87,40,41,93,8,100,
- 0,102,103,104,105,106,107,108,109,110,
- 111,112,57,0,59,2,47,0,47,2,
- 57,66,0,68,69,0,0,2,47,58,
- 69,47,0,70,57,0,0,47,0,0,
- 2,86,87,88,89,90,91,92,58,0,
- 95,96,97,98,99,100,101,102,103,104,
- 105,106,107,108,109,110,111,0,1,2,
- 3,4,5,6,7,8,9,10,11,12,
+ 37,38,39,40,41,42,43,0,0,46,
+ 0,1,2,3,4,5,6,7,8,9,
+ 10,11,61,13,14,15,16,17,18,19,
+ 20,21,22,23,24,25,26,27,28,29,
+ 30,31,32,33,34,35,36,37,38,39,
+ 40,41,42,43,0,1,2,0,4,0,
+ 6,101,8,0,0,1,2,0,1,2,
+ 3,4,5,6,7,8,9,10,11,69,
13,14,15,16,17,18,19,20,21,22,
23,24,25,26,27,28,29,30,31,32,
- 33,34,35,36,37,38,39,69,72,70,
- 0,0,2,2,0,66,116,68,0,0,
- 2,2,0,1,0,93,2,60,0,1,
- 2,3,4,5,6,7,8,9,10,11,
- 12,13,14,15,16,17,18,19,20,21,
- 22,23,24,25,26,27,28,29,30,31,
- 32,33,34,35,36,37,38,39,0,1,
- 2,3,4,5,6,7,8,9,10,11,
- 12,13,14,15,16,17,18,19,20,21,
- 22,23,24,25,26,27,28,29,30,31,
- 32,33,34,35,36,37,38,0,0,1,
- 0,0,2,0,1,0,0,0,0,0,
- 0,0,0,0,0,0,0,59,0,1,
+ 33,34,35,36,37,38,39,40,41,42,
+ 43,48,49,46,0,1,2,3,4,5,
+ 6,7,8,9,10,11,69,13,14,15,
+ 16,17,18,19,20,21,22,23,24,25,
+ 26,27,28,29,30,31,32,33,34,35,
+ 36,37,38,39,40,41,42,43,0,0,
+ 46,0,1,2,3,4,5,6,7,8,
+ 9,10,11,0,13,14,15,16,17,18,
+ 19,20,21,22,23,24,25,26,27,28,
+ 29,30,31,32,33,34,35,36,37,38,
+ 39,40,41,42,43,0,0,46,0,1,
2,3,4,5,6,7,8,9,10,11,
- 12,13,14,15,16,17,18,19,20,21,
+ 61,13,14,15,16,17,18,19,20,21,
22,23,24,25,26,27,28,29,30,31,
- 32,33,34,35,36,37,38,0,1,2,
- 3,4,5,6,7,8,9,10,11,12,
- 13,14,15,16,17,18,19,20,21,22,
- 23,24,25,26,27,28,29,30,31,32,
- 33,34,35,36,37,38,39,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,116,0,0,0,116,0,0,
- 0,24,24,0,0,120,0,0,0,0,
- 0,113,0,1,2,3,4,5,6,7,
+ 32,33,34,35,36,37,38,39,40,41,
+ 42,43,0,0,46,0,1,2,3,4,
+ 5,6,7,8,9,10,11,61,13,14,
+ 15,16,17,18,19,20,21,22,23,24,
+ 25,26,27,28,29,30,31,32,33,34,
+ 35,36,37,38,39,40,41,42,43,0,
+ 0,46,0,1,2,3,4,5,6,7,
+ 8,9,10,11,61,13,14,15,16,17,
+ 18,19,20,21,22,23,24,25,26,27,
+ 28,29,30,31,32,33,34,35,36,37,
+ 38,39,40,41,42,43,0,0,46,0,
+ 1,2,3,4,5,6,7,8,9,10,
+ 11,12,13,14,15,16,17,18,19,20,
+ 21,22,23,24,25,26,27,28,29,30,
+ 31,32,33,34,35,36,37,38,39,40,
+ 41,0,1,2,0,4,0,6,0,8,
+ 4,3,8,12,0,1,2,3,4,5,
+ 61,7,0,1,2,0,4,0,6,0,
+ 8,72,0,1,2,3,4,5,6,7,
8,9,10,11,12,13,14,15,16,17,
18,19,20,21,22,23,24,25,26,27,
28,29,30,31,32,33,34,35,36,37,
- 38,0,1,2,3,4,5,6,7,8,
- 9,10,11,12,13,14,15,16,17,18,
- 19,20,21,22,23,24,25,26,27,28,
- 29,30,31,32,33,34,35,36,37,38,
+ 38,39,40,41,66,118,75,0,1,2,
+ 66,4,0,6,59,8,59,0,1,2,
+ 0,4,5,61,7,0,95,0,69,70,
+ 3,0,0,0,72,0,1,2,3,4,
+ 5,6,7,8,9,10,11,0,13,14,
+ 15,16,17,18,19,20,21,22,23,24,
+ 25,26,27,28,29,30,31,32,33,34,
+ 35,36,37,38,39,40,41,42,43,0,
+ 1,2,3,4,5,6,7,8,9,10,
+ 11,66,13,14,15,16,17,18,19,20,
+ 21,22,23,24,25,26,27,28,29,30,
+ 31,32,33,34,35,36,37,38,39,40,
+ 41,42,43,0,1,2,3,4,5,6,
+ 7,8,9,10,11,12,13,14,15,16,
+ 17,18,19,20,21,22,23,24,25,26,
+ 27,28,29,30,31,32,33,34,35,36,
+ 37,38,39,40,0,1,2,3,4,5,
+ 6,7,8,9,10,11,0,13,14,15,
+ 16,17,18,19,20,21,22,23,24,25,
+ 26,27,28,29,30,31,32,33,34,35,
+ 36,37,38,39,40,41,0,0,0,3,
+ 0,0,0,1,2,4,0,5,0,13,
+ 14,0,0,0,3,61,0,1,2,3,
+ 4,5,6,7,8,9,10,11,115,13,
+ 14,15,16,17,18,19,20,21,22,23,
+ 24,25,26,27,28,29,30,31,32,33,
+ 34,35,36,37,38,39,40,41,0,57,
+ 59,3,66,5,6,59,8,0,10,11,
+ 0,13,14,3,0,1,2,3,4,5,
+ 0,7,12,71,4,27,12,90,0,1,
+ 2,0,12,96,0,0,1,2,90,103,
+ 42,43,102,0,96,0,0,1,2,0,
+ 4,6,0,117,114,0,4,59,0,45,
+ 26,12,4,0,66,45,0,69,70,71,
+ 42,43,0,66,0,0,66,42,43,69,
+ 70,0,1,2,9,75,88,89,90,91,
+ 92,93,94,47,45,97,98,99,100,101,
+ 102,103,104,105,106,107,108,109,110,111,
+ 112,113,0,0,59,3,3,5,6,70,
+ 8,90,10,11,69,13,14,96,0,1,
+ 2,59,0,59,6,0,1,2,57,27,
+ 0,69,67,69,12,0,0,0,93,94,
+ 0,1,2,90,42,43,0,12,12,96,
+ 4,0,0,0,3,93,94,93,94,0,
+ 0,59,3,3,0,12,0,45,66,3,
+ 0,69,70,71,71,57,0,0,41,3,
+ 45,45,57,0,0,0,0,0,0,59,
+ 88,89,90,91,92,93,94,57,12,97,
+ 98,99,100,101,102,103,104,105,106,107,
+ 108,109,110,111,112,113,0,1,2,3,
+ 4,5,6,7,8,9,10,11,75,13,
+ 14,15,16,17,18,19,20,21,22,23,
+ 24,25,26,27,28,29,30,31,32,33,
+ 34,35,36,37,38,39,40,69,72,0,
+ 73,0,3,0,3,0,3,0,1,2,
0,1,2,3,4,5,6,7,8,9,
- 10,11,12,13,14,15,16,17,18,19,
+ 10,11,66,13,14,15,16,17,18,19,
20,21,22,23,24,25,26,27,28,29,
- 30,31,32,33,34,35,36,37,38,0,
- 1,0,3,0,3,0,0,8,0,0,
- 1,8,13,14,15,16,17,18,19,20,
- 21,22,23,0,1,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,42,0,0,45,46,0,48,49,50,
- 51,52,53,54,55,56,47,58,57,0,
- 61,62,63,0,1,0,3,0,65,0,
- 47,8,66,47,68,0,13,14,15,16,
- 17,18,19,20,21,22,23,0,1,2,
- 3,4,5,6,7,0,1,2,3,4,
- 5,6,7,57,68,42,0,0,45,46,
- 43,48,49,50,51,52,53,54,55,56,
- 0,58,57,0,61,62,63,68,59,42,
- 43,66,57,0,47,68,0,42,43,0,
- 0,0,47,0,57,0,0,0,0,0,
- 0,64,65,0,67,0,91,92,0,64,
- 65,74,67,57,57,0,71,0,0,74,
- 0,1,2,3,4,5,6,7,0,1,
- 2,3,4,5,6,7,0,1,2,3,
- 4,5,6,7,58,0,57,2,57,59,
- 57,0,57,57,0,66,11,12,59,0,
- 57,0,42,43,59,0,69,47,70,69,
- 42,43,57,0,0,47,0,69,42,43,
- 91,92,0,47,64,65,69,67,70,0,
- 39,71,64,65,74,67,0,43,0,71,
- 64,65,74,67,59,0,0,71,0,0,
- 74,0,1,2,3,4,5,6,7,0,
- 1,2,3,4,5,6,7,0,1,2,
- 3,4,5,6,7,70,60,0,0,43,
- 0,68,0,69,0,0,101,0,0,60,
- 0,0,70,42,43,57,0,0,47,0,
- 115,42,43,57,66,0,47,0,60,42,
- 43,66,0,0,47,64,65,0,67,70,
- 0,0,71,64,65,74,67,0,0,91,
- 92,64,65,74,67,0,0,60,0,0,
- 0,74,0,1,2,3,4,5,6,7,
- 72,69,0,69,69,68,0,69,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,42,43,0,0,0,47,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,64,65,0,67,
- 0,0,0,0,0,0,74,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0
+ 30,31,32,33,34,35,36,37,38,39,
+ 40,41,0,1,2,3,4,5,6,7,
+ 8,9,10,11,57,13,14,15,16,17,
+ 18,19,20,21,22,23,24,25,26,27,
+ 28,29,30,31,32,33,34,35,36,37,
+ 38,39,40,0,1,2,3,4,5,6,
+ 7,8,9,10,11,0,13,14,15,16,
+ 17,18,19,20,21,22,23,24,25,26,
+ 27,28,29,30,31,32,33,34,35,36,
+ 37,38,39,40,0,1,2,3,4,5,
+ 6,7,8,9,10,11,0,13,14,15,
+ 16,17,18,19,20,21,22,23,24,25,
+ 26,27,28,29,30,31,32,33,34,35,
+ 36,37,38,39,40,0,1,2,0,4,
+ 0,0,0,0,9,0,0,1,2,0,
+ 15,16,17,18,19,20,21,22,23,24,
+ 25,0,0,0,0,0,3,3,0,0,
+ 0,3,0,12,0,69,70,12,0,44,
+ 0,12,47,48,49,50,51,52,53,54,
+ 55,56,0,58,0,60,0,62,63,64,
+ 0,1,2,57,4,0,66,66,70,9,
+ 0,1,2,71,71,15,16,17,18,19,
+ 20,21,22,23,24,25,0,1,2,3,
+ 4,5,6,7,8,70,75,57,12,70,
+ 75,72,70,0,44,0,0,47,48,49,
+ 50,51,52,53,54,55,56,0,58,0,
+ 60,0,62,63,64,4,0,57,0,73,
+ 44,45,0,1,2,3,4,5,6,7,
+ 8,0,0,57,12,59,0,0,0,0,
+ 9,65,0,67,68,0,0,0,0,1,
+ 2,3,4,5,6,7,8,0,82,66,
+ 12,66,0,0,0,3,44,45,59,73,
+ 59,0,0,0,0,59,3,0,71,57,
+ 3,0,0,9,3,0,0,65,57,67,
+ 68,60,44,45,72,0,1,2,3,4,
+ 5,6,7,8,82,57,70,12,71,71,
+ 0,69,73,65,0,67,68,71,73,0,
+ 72,0,1,2,3,4,5,6,7,8,
+ 82,57,0,12,60,3,118,73,0,44,
+ 45,0,0,71,0,0,0,76,0,0,
+ 118,0,57,71,0,70,0,71,0,0,
+ 65,0,67,68,26,44,45,72,0,1,
+ 2,3,4,5,6,7,8,82,57,0,
+ 12,0,0,0,0,0,65,0,67,68,
+ 0,0,0,72,0,1,2,3,4,5,
+ 6,7,8,82,59,0,12,0,0,0,
+ 0,0,44,45,0,0,0,0,0,0,
+ 0,0,0,0,0,57,0,0,0,0,
+ 0,0,0,65,0,67,68,0,44,45,
+ 72,0,1,2,3,4,5,6,7,8,
+ 82,57,0,12,0,0,0,0,0,65,
+ 0,67,68,0,0,0,0,0,1,2,
+ 3,4,5,6,7,8,82,0,0,12,
+ 0,0,0,0,0,44,45,0,0,0,
+ 0,0,0,0,0,0,0,0,57,0,
+ 0,0,0,0,0,0,65,0,67,68,
+ 0,44,45,0,0,0,0,0,0,0,
+ 0,0,0,82,57,0,0,0,0,0,
+ 0,0,65,0,67,68,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,82,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0
};
};
public final static byte termCheck[] = TermCheck.termCheck;
@@ -1473,387 +1545,414 @@ public class CPPNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface TermAction {
public final static char termAction[] = {0,
- 5276,5257,5254,5254,5254,5254,5254,5254,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,5261,3452,1,1,1,1,1,
- 1,1,1,1,1,1,1,5276,1,3768,
- 2321,1,1,1,2140,3441,5276,3380,5276,5311,
- 4305,5284,1969,1808,3446,3427,3084,2109,3030,3382,
- 3525,3409,3431,3408,2931,3401,5276,5257,5254,5254,
- 5254,5254,5254,5254,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,5261,
- 3452,1,1,5276,1,1,1,1,1,1,
- 1,1,1,5276,1,2883,2321,1,1,1,
- 2140,3441,5276,3380,1,5056,4438,5060,1969,1808,
- 3446,3427,3084,2109,3030,3382,3525,3409,3431,3408,
- 2931,3401,5276,5257,5254,5254,5254,5254,5254,5254,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,5261,3452,1,1,136,
- 1,1,1,1,1,1,1,1,1,5276,
- 1,132,2321,1,1,1,2140,3441,2328,3380,
- 1,5056,5218,5060,5224,1808,5221,3427,3084,2109,
- 3030,3382,3525,3409,3431,3408,2931,3401,5276,5257,
- 5254,5254,5254,5254,5254,5254,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,5261,3452,1,1,5276,1,1,1,1,
- 1,1,1,1,1,138,1,2237,2321,1,
- 1,1,2140,3441,5276,3380,1,5056,4438,5060,
- 1969,1808,3446,3427,3084,2109,3030,3382,3525,3409,
- 3431,3408,2931,3401,5276,5257,5254,5254,5254,5254,
- 5254,5254,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,5261,3452,1,
- 1,5276,1,1,1,1,1,1,1,1,
- 1,5276,1,134,2321,1,1,1,2140,3441,
- 5276,3380,5276,4965,2203,1104,1969,1808,3446,3427,
- 3084,2109,3030,3382,3525,3409,3431,3408,2931,3401,
- 5276,5257,5254,5254,5254,5254,5254,5254,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,5261,3452,1,1,5276,1,1,
- 1,1,1,1,1,1,1,93,1,4998,
- 2321,1,1,1,2140,3441,5276,3380,5276,4965,
- 2270,1104,1969,1808,3446,3427,3084,2109,3030,3382,
- 3525,3409,3431,3408,2931,3401,5276,5257,5254,5254,
- 5254,5254,5254,5254,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,5261,
- 3452,1,1,5276,1,1,1,1,1,1,
- 1,1,1,1,1,3906,2321,1,1,1,
- 2140,3441,116,3380,38,4977,233,3356,5167,1808,
- 1150,3427,3084,2109,3030,3382,3525,3409,3431,3408,
- 2931,3401,5276,5257,5254,5254,5254,5254,5254,5254,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,5261,3452,1,1,137,
- 1,1,1,1,1,1,1,1,1,135,
- 1,5276,2321,1,1,1,2140,3441,118,3380,
- 5276,3327,3252,3356,5276,1808,5282,3427,3084,2109,
- 3030,3382,3525,3409,3431,3408,2931,3401,5276,5257,
- 5254,5254,5254,5254,5254,5254,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,5261,3452,1,1,5276,1,1,1,1,
- 1,1,1,1,1,5284,1,2237,2321,1,
- 1,1,2140,3441,5276,3380,2270,3327,3252,5276,
- 4965,1808,5314,3427,3084,2109,3030,3382,3525,3409,
- 3431,3408,2931,3401,5276,3383,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,5285,3452,1,
- 1,5276,1,1,1,1,1,1,1,1,
- 1,220,1,5276,2321,1,1,1,2140,3441,
- 5276,3380,1,5056,2699,5060,1969,1808,3446,3427,
- 3084,2109,3030,3382,3525,3409,3431,3408,2931,3401,
- 5276,5145,5145,5145,5145,5145,5145,5145,4964,5145,
- 5145,5145,5145,5529,5276,2038,5532,5615,3350,5616,
- 5526,5533,5505,5531,5530,5527,5528,5506,5276,4965,
- 4438,1104,1969,1487,3446,5608,396,5063,5276,5314,
- 1529,1747,5145,5145,39,5145,5145,5314,5145,5145,
- 5145,5145,5145,5145,5145,5145,5145,5145,39,5145,
- 5145,5314,5276,1487,5276,5608,5145,722,5145,5145,
- 5145,5145,5145,5145,314,5056,4438,5060,1969,5239,
- 3446,5236,359,39,5276,1702,5145,5145,5145,5145,
- 5145,5145,5145,5145,5145,5145,5145,5145,5145,5145,
- 5145,5145,5145,5145,5145,5145,5145,5145,5145,5145,
- 5145,5145,5145,5145,5145,5145,5276,5254,5254,5254,
- 5254,5254,5254,5254,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,5270,
- 5434,1,1,5276,1,1,1,1,1,1,
- 1,1,1,5276,1,5634,4968,1,1,1,
- 5276,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
+ 5524,5490,5487,5487,5487,5487,5487,5487,5487,1,
+ 1,1,5500,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,5497,3733,1,1,1,
+ 1,1,1,1,1,1,1,1,1,139,
+ 1,2201,1,1,1,2423,362,2228,3589,5524,
+ 5171,5168,5531,5565,558,162,3732,2489,2177,2127,
+ 3608,3877,5524,3730,729,3684,2843,3661,8,5509,
+ 5509,5509,5509,5509,5509,5509,5509,5509,5509,5509,
+ 5509,5509,5509,5509,5509,5509,5509,5509,5509,5509,
+ 5509,5509,5509,5509,5509,5509,5509,5509,5509,5509,
+ 5509,5509,5509,5509,5509,5509,5509,5509,5509,5509,
+ 5509,5509,5509,5509,5509,5509,5509,5509,5509,5509,
+ 5509,5509,5509,5509,5509,1297,5509,5524,5509,5509,
+ 5509,5509,5509,5509,5524,5509,5509,119,125,2306,
+ 5509,5885,5509,3378,5509,5509,5509,5509,5509,5509,
+ 5524,5509,5509,5509,5509,5509,5524,5490,5487,5487,
+ 5487,5487,5487,5487,5487,1,1,1,5494,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,5497,3733,1,1,1,1,1,1,1,
+ 1,1,1,309,1,1,1,2201,1,1,
+ 1,2423,5832,2228,3589,121,2707,2803,3354,3330,
+ 558,3378,3732,2489,2177,2127,3608,3877,5524,3730,
+ 729,3684,2843,3661,5524,5490,5487,5487,5487,5487,
+ 5487,5487,5487,1,1,1,5494,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,5497,
+ 3733,1,1,1,1,1,1,1,1,1,
+ 1,5524,1,1,1,2201,1,1,1,2423,
+ 5887,2228,3589,120,1,137,3354,3330,558,3378,
+ 3732,2489,2177,2127,3608,3877,166,3730,729,3684,
+ 2843,3661,5524,5490,5487,5487,5487,5487,5487,5487,
+ 5487,1,1,1,5494,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,159,5434,1,1,5276,1,1,
- 1,1,1,1,1,1,1,5276,1,2671,
- 37,1,1,1,5276,1,1,1,1,1,
+ 1,1,1,1,1,1,1,5497,3733,1,
+ 1,1,1,1,1,1,1,1,1,166,
+ 1,122,1,2201,1,1,1,2423,3229,2228,
+ 3589,2886,591,42,3354,3330,558,5565,3732,2489,
+ 2177,2127,3608,3877,2340,3730,729,3684,2843,3661,
+ 5524,5490,5487,5487,5487,5487,5487,5487,5487,1,
+ 1,1,5494,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,5497,3733,1,1,1,
+ 1,1,1,1,1,1,1,5524,1,5524,
+ 1,2201,1,1,1,2423,5524,2228,3589,3060,
+ 5524,5541,5542,1,558,4956,3732,2489,2177,2127,
+ 3608,3877,5524,3730,729,3684,2843,3661,5524,5490,
+ 5487,5487,5487,5487,5487,5487,5487,1,1,1,
+ 5494,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,5497,3733,1,1,1,1,1,
+ 1,1,1,1,1,5524,1,2750,1,2201,
+ 1,1,1,2423,5524,2228,3589,5524,5171,5168,
+ 129,5565,558,511,3732,2489,2177,2127,3608,3877,
+ 5524,3730,729,3684,2843,3661,5524,5490,5487,5487,
+ 5487,5487,5487,5487,5487,1,1,1,5494,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,5497,3733,1,1,1,1,1,1,1,
+ 1,1,1,823,1,5524,1,2201,1,1,
+ 1,2423,5524,2228,3589,5524,5541,5542,2707,2803,
+ 558,366,3732,2489,2177,2127,3608,3877,5524,3730,
+ 729,3684,2843,3661,5524,5490,5487,5487,5487,5487,
+ 5487,5487,5487,1,1,1,5494,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,5497,
+ 3733,1,1,1,1,1,1,1,1,1,
+ 1,909,1,5524,1,2201,1,1,1,2423,
+ 5524,2228,3589,3138,5524,5524,5363,5360,558,5524,
+ 3732,2489,2177,2127,3608,3877,5530,3730,729,3684,
+ 2843,3661,5524,5490,5487,5487,5487,5487,5487,5487,
+ 5487,1,1,1,5494,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,5497,3733,1,
+ 1,1,1,1,1,1,1,1,1,5529,
+ 1,140,1,2201,1,1,1,2423,5524,2228,
+ 3589,128,5524,53,5363,5360,558,5524,3732,2489,
+ 2177,2127,3608,3877,5528,3730,729,3684,2843,3661,
+ 5524,3638,1,1,1,1,1,1,1,1,
+ 1,1,5534,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,5533,3733,1,1,1,
+ 1,1,1,1,1,1,1,5524,1,223,
+ 1,2201,1,1,1,2423,5524,2228,3589,2707,
+ 2803,2306,224,5524,558,33,3732,2489,2177,2127,
+ 3608,3877,30,3730,729,3684,2843,3661,5524,5353,
+ 5353,5353,5353,5353,5353,5353,5353,5527,5353,5353,
+ 5353,5353,5353,5780,5524,5524,5783,5866,5867,5777,
+ 5784,5756,5782,5781,5778,5779,5780,5757,1189,5783,
+ 5866,5867,5777,5784,5756,5782,5781,5778,5779,5524,
+ 5757,3170,5353,5353,508,5353,5353,5353,5353,5353,
+ 5353,5353,5353,5353,5353,124,5353,5353,421,5353,
+ 96,5381,5381,5204,5353,2886,591,5353,5353,5353,
+ 5353,5353,5353,5353,5524,5171,5168,4439,1063,1899,
+ 862,2996,5859,291,5541,5542,5353,5353,5353,5353,
+ 5353,5353,5353,5353,5353,5353,5353,5353,5353,5353,
+ 5353,5353,5353,5353,5353,5353,5353,5353,5353,5353,
+ 5353,5353,5353,5353,5353,5353,5524,5487,5487,5487,
+ 5487,5487,5487,5487,5487,1,1,1,5512,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,5512,5685,1,1,1,1,1,1,1,
+ 1,1,1,5524,1,5524,1,2981,1,1,
+ 1,5524,1,1,1,1,1,1,1,1,
+ 1,1,1,5524,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,5524,5685,1,1,
+ 1,1,1,1,1,1,1,1,508,1,
+ 5524,1,5210,1,1,1,5524,1,1,1,
+ 1,1,1,1,1,1,1,1,431,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,5167,5685,1,1,1,1,1,1,1,
+ 1,1,1,5524,1,5954,1,5524,1,1,
+ 1,5524,1,1,1,1,1,1,1,1,
+ 1,1,1,5524,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,5174,5685,1,1,
+ 1,1,1,1,1,1,1,1,5524,1,
+ 5524,1,2776,1,1,1,5524,1,1,1,
+ 1,1,1,1,1,1,1,1,5524,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,5524,5685,1,1,1,1,1,1,1,
+ 1,1,1,5524,1,5524,1,2792,1,1,
+ 1,5524,1,1,1,1,1,1,1,1,
+ 1,1,1,5524,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,5312,5434,1,
- 1,1242,1,1,1,1,1,1,1,1,
- 1,507,1,2694,5004,1,1,1,5276,1,
1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,5524,5685,1,1,
+ 1,1,1,1,1,1,1,1,127,1,
+ 138,1,2871,1,1,1,42,5171,5168,3134,
+ 1063,3303,3561,2996,3584,1149,3538,3515,5524,3633,
+ 3610,5789,5787,5796,5795,5791,5792,5790,5793,5794,
+ 5797,5788,5547,928,780,1101,5549,791,631,863,
+ 5550,5548,777,5543,5545,5546,5544,1253,1,40,
+ 5780,2980,5524,5783,5866,5867,5777,5784,5756,5782,
+ 5781,5778,5779,1,5757,5524,5922,5524,618,5923,
+ 5924,390,42,222,5213,367,5565,5213,862,5213,
+ 5859,5213,5213,5213,5213,5213,2707,2803,5789,5787,
+ 5796,5795,5791,5792,5790,5793,5794,5797,5788,2340,
+ 1,5266,5262,5445,5270,5451,5563,5448,5524,5541,
+ 5542,2453,5534,1899,1813,2996,5213,5780,5524,143,
+ 5783,5866,5867,5777,5784,5756,5782,5781,5778,5779,
+ 5213,5757,5524,5171,5168,5524,5565,5213,367,133,
+ 5213,5213,5213,5213,5213,5533,5213,371,5266,5262,
+ 2777,5270,1899,1,2996,1,134,52,367,5213,
+ 5213,5213,5213,5213,5213,5213,5213,5213,5213,5213,
+ 5213,5213,5213,5213,5213,5213,5213,5213,5213,5213,
+ 5213,5213,5213,5213,5213,5213,5213,5213,5213,389,
+ 1770,225,5216,1590,2454,5216,5524,5216,190,5216,
+ 5216,5216,5216,5216,317,5266,5262,4439,5270,1899,
+ 5469,2996,5466,1813,2028,5524,5171,5168,1077,1063,
+ 1899,2232,2996,1727,1684,1641,1598,1555,1512,1469,
+ 1426,1383,1340,3881,5216,5780,2553,2524,5783,5866,
+ 5867,5777,5784,5756,5782,5781,5778,5779,5219,5757,
+ 41,5186,5183,2553,2524,5216,3903,822,5216,5216,
+ 5216,5216,5216,5524,5216,5524,5266,5262,4439,5270,
+ 1899,5469,2996,5466,39,5428,5425,5216,5216,5216,
+ 5216,5216,5216,5216,5216,5216,5216,5216,5216,5216,
+ 5216,5216,5216,5216,5216,5216,5216,5216,5216,5216,
+ 5216,5216,5216,5216,5216,5216,5216,5524,5406,5406,
+ 228,5402,228,228,228,228,1,396,5524,5410,
+ 5521,5210,1,1,1,1,1,1,1,1,
+ 1,1,1,439,1,1,1854,1,2044,5192,
+ 5524,5192,5524,1,5266,5262,4439,5270,1899,5524,
+ 2996,1,228,5934,1,1,1,1,1,1,
+ 1,1,1,1,496,1,5524,1,126,1,
+ 1,1,1059,397,5171,5168,508,5565,425,414,
+ 228,1,5266,5262,4439,5270,1899,2884,2996,6019,
+ 5524,5406,5406,228,5402,228,228,228,228,1,
+ 1,3885,5454,4617,141,1,1,1,1,1,
+ 1,1,1,1,1,1,2044,5524,5171,5168,
+ 352,1063,5223,1708,2996,4037,5956,5957,5958,226,
+ 42,5524,9933,9933,1,228,5934,1,1,1,
+ 1,1,1,1,1,1,1,496,1,33,
+ 1,2264,1,1,1,1059,2707,2803,5524,5956,
+ 5957,5958,413,228,1,5266,5262,5445,5270,5451,
+ 5524,5448,6019,5780,804,4973,5783,5866,5867,5777,
+ 5784,5756,5782,5781,5778,5779,1813,5757,5563,5524,
+ 350,5171,5168,2777,1063,1899,862,2996,5859,1,
+ 5266,5262,4439,5270,1899,2271,2996,5524,5177,5956,
+ 5957,5958,5524,1,1,1,1,1,1,1,
+ 1,1,1,1,5534,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1813,5533,5685,5524,
1,1,1,1,1,1,1,1,1,1,
- 1,510,5434,1,1,5276,1,1,1,1,
- 1,1,1,1,1,5276,1,5276,5152,1,
- 1,1,5276,1,1,1,1,1,1,1,
+ 1,168,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,5524,168,5685,5524,1,1,1,
+ 1,1,1,1,1,1,1,1,168,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,2381,5434,1,1,821,
1,1,1,1,1,1,1,1,1,1,
- 1,2748,387,1,1,1,5276,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,363,
- 5434,1,1,5276,1,1,1,1,1,1,
- 1,1,1,5276,1,1,49,1,1,1,
- 39,4986,2842,1104,629,4068,3446,4090,1083,4046,
- 3727,4134,4112,5538,5536,5545,5544,5540,5541,5539,
- 5542,5543,5546,5537,5296,2397,712,789,5298,726,
- 4352,787,5299,5297,677,5292,5294,5295,5293,1200,
- 221,35,5529,1056,5001,5532,5615,2909,5616,5526,
- 5533,5505,5531,5530,5527,5528,5506,1,5673,452,
- 222,575,5674,5675,387,395,5007,163,5004,5007,
- 5276,5007,5276,5007,5007,5007,5007,1,5056,5218,
- 5060,5224,5529,5221,5001,5532,5615,5276,5616,5526,
- 5533,5505,5531,5530,5527,5528,5506,1,5056,4438,
- 5060,1969,5529,3446,112,5532,5615,5007,5616,5526,
- 5533,5505,5531,5530,5527,5528,5506,5276,4989,27,
- 5285,5007,507,5007,347,39,2845,5314,5284,1487,
- 5007,5608,5007,5007,5007,5007,5007,386,2761,5010,
- 314,1,5010,2845,5010,3561,5010,5010,5010,5010,
- 5007,5007,5007,5007,5007,5007,5007,5007,5007,5007,
- 5007,5007,5007,5007,5007,5007,5007,5007,5007,5007,
- 5007,5007,5007,5007,5007,5007,5007,5007,5007,5007,
- 5010,438,1,1747,1,5170,4983,5170,4983,5283,
- 439,39,4178,5314,5013,5176,5010,5173,4200,5276,
- 1747,5276,4965,5010,5314,5010,5010,5010,5010,5010,
- 5276,5056,4438,5060,1969,5239,3446,5236,451,430,
- 39,139,5314,5010,5010,5010,5010,5010,5010,5010,
- 5010,5010,5010,5010,5010,5010,5010,5010,5010,5010,
- 5010,5010,5010,5010,5010,5010,5010,5010,5010,5010,
- 5010,5010,5010,5276,5195,225,5191,225,225,225,
- 225,1,5276,5066,5705,5314,1,1,1,1,
- 1,1,1,1,1,1,1,4992,5276,1702,
- 1977,347,4965,2699,1104,1969,1487,3446,5608,5276,
- 5152,5276,5311,50,5152,1,225,5685,1,1,
- 495,1,1,1,1,1,1,1,1,1,
- 5276,1,4286,223,1,1,1,2043,4156,970,
- 2203,133,1655,225,413,5276,5276,5770,2328,4156,
- 970,5276,5195,225,5191,225,225,225,225,1,
- 1747,5276,5276,4318,1,1,1,1,1,1,
- 1,1,1,1,1,5529,37,5182,5532,5615,
- 5182,5616,5526,5533,5505,5531,5530,5527,5528,5506,
- 5707,5708,5709,1,225,5685,1,1,495,1,
- 1,1,1,1,1,1,1,1,119,1,
- 121,5782,1,1,1,2043,1785,2358,590,2358,
- 590,225,412,1959,5276,5770,142,4965,2842,1104,
- 629,4068,3446,4090,556,4046,3727,4134,4112,5538,
- 5536,5545,5544,5540,5541,5539,5542,5543,5546,5537,
- 5296,2397,712,789,5298,726,4352,787,5299,5297,
- 677,5292,5294,5295,5293,1200,39,39,5707,5708,
- 5709,5276,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,430,5285,5434,5276,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,5705,165,
- 5434,5276,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,5276,165,5434,5276,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,5276,2038,
- 5434,120,1,5188,5276,5185,4760,1487,5276,5608,
- 2358,590,368,5056,2699,5060,1969,1,3446,1,
- 1,5056,4438,5060,1969,349,3446,1739,165,5276,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1747,1,5434,364,94,1,5276,1,4772,
- 5179,1013,5179,5276,1747,1,5056,2699,5060,1969,
- 1977,3446,5276,97,39,364,5314,5276,5230,3406,
- 5227,165,5276,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1747,2750,572,5276,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,288,
- 5567,5434,5276,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,130,140,5434,5276,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,5276,
- 9445,5434,1,5056,2842,5060,629,4068,3446,4090,
- 5020,4046,3727,4134,4112,5047,5053,5026,5029,5041,
- 5038,5044,5035,5032,5023,5050,5296,2397,712,789,
- 5298,726,4352,787,5299,5297,677,5292,5294,5295,
- 5293,1200,39,39,5276,5276,5312,783,3117,2480,
- 2452,5276,5276,3505,5276,2165,3607,5276,36,5208,
- 5276,131,2437,3229,45,5158,5276,3504,511,5276,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,5155,3103,5434,5276,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,2480,2452,5434,5276,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,5276,5567,5434,5276,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,396,5311,5434,5276,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,5276,3152,5434,5276,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,122,115,5434,1,
- 5056,2842,5060,629,4068,3446,4090,5020,4046,3727,
- 4134,4112,5047,5053,5026,5029,5041,5038,5044,5035,
- 5032,5023,5050,5296,2397,712,789,5298,726,4352,
- 787,5299,5297,677,5292,5294,5295,5293,1200,39,
- 39,39,4965,2842,1104,629,4068,3446,4090,556,
- 4046,3727,4134,4112,5538,5536,5545,5544,5540,5541,
- 5539,5542,5543,5546,5537,5296,2397,712,789,5298,
- 726,4352,787,5299,5297,677,5292,5294,5295,5293,
- 1200,5276,2628,2719,306,4178,105,5276,3647,5276,
- 117,4200,5581,5276,1,3356,5276,114,113,5276,
- 4766,3305,126,5276,5276,3048,2672,37,5182,1,
- 5276,2845,5284,39,4965,2842,1104,629,4068,3446,
- 4090,556,4046,3727,4134,4112,5538,5536,5545,5544,
- 5540,5541,5539,5542,5543,5546,5537,5296,2397,712,
- 789,5298,726,4352,787,5299,5297,677,5292,5294,
- 5295,5293,1200,1,1963,633,3085,5739,5733,321,
- 5737,5233,5731,5732,5762,5763,5276,4965,1747,1104,
- 5017,924,3446,3305,5284,343,5725,343,5740,3327,
- 3252,343,219,404,5284,4178,4178,5636,2628,2719,
- 5276,4200,4200,1457,1607,5538,5536,5545,5544,5540,
- 5541,5539,5542,5543,5546,5537,5707,5708,5709,140,
- 5742,125,661,790,1,124,5276,123,1747,5743,
- 338,5764,5741,278,5529,5242,5215,5532,5615,424,
- 5616,5526,5533,5505,5531,5530,5527,5528,5506,5753,
- 5752,5765,5734,5735,5758,5759,5276,5199,5756,5757,
- 5736,5738,5760,5761,5766,5746,5747,5748,5744,5745,
- 5754,5755,5750,5749,5751,5276,5615,633,5616,5739,
- 5733,289,5737,30,5731,5732,5762,5763,1705,5276,
- 4965,1,1104,5017,4839,3446,364,5276,5283,5245,
- 5740,37,5182,5312,47,5205,2437,2628,2719,2654,
- 1,2628,2719,2628,2719,1457,1607,364,5245,2165,
- 5276,1663,1621,1579,1537,1495,1453,1411,1369,1327,
- 1285,3504,5742,5276,661,3843,806,5276,3280,3947,
- 507,5743,5276,5764,5741,5276,5276,3483,5312,5248,
- 1883,5202,1,420,3645,5276,1,3280,315,5276,
- 2323,5753,5752,5765,5734,5735,5758,5759,5248,5276,
- 5756,5757,5736,5738,5760,5761,5766,5746,5747,5748,
- 5744,5745,5754,5755,5750,5749,5751,39,4965,2842,
- 1104,629,4068,3446,4090,556,4046,3727,4134,4112,
- 5538,5536,5545,5544,5540,5541,5539,5542,5543,5546,
- 5537,5296,2397,712,789,5298,726,4352,787,5299,
- 5297,677,5292,5294,5295,5293,1200,1156,5283,5676,
- 5276,5276,4386,4814,5276,3407,3513,3303,5276,5276,
- 4761,4845,5276,3537,5276,3413,4657,3305,39,4965,
- 2842,1104,629,4068,3446,4090,556,4046,3727,4134,
- 4112,5538,5536,5545,5544,5540,5541,5539,5542,5543,
- 5546,5537,5296,2397,712,789,5298,726,4352,787,
- 5299,5297,677,5292,5294,5295,5293,1200,39,4965,
- 2842,1104,629,4068,3446,4090,556,4046,3727,4134,
- 4112,5538,5536,5545,5544,5540,5541,5539,5542,5543,
- 5546,5537,5296,2397,712,789,5298,726,4352,787,
- 5299,5297,677,5292,5294,5295,5293,376,5276,9190,
- 5276,517,4870,5276,9190,187,5276,5276,5276,5276,
- 5276,5276,5276,5276,5276,5276,5276,1228,39,4965,
- 2842,1104,629,4068,3446,4090,556,4046,3727,4134,
- 4112,5538,5536,5545,5544,5540,5541,5539,5542,5543,
- 5546,5537,5296,2397,712,789,5298,726,4352,787,
- 5299,5297,677,5292,5294,5295,5293,39,4965,2842,
- 1104,629,4068,3446,4090,556,4046,3727,4134,4112,
- 5538,5536,5545,5544,5540,5541,5539,5542,5543,5546,
- 5537,5296,2397,712,789,5298,726,4352,787,5299,
- 5297,677,5292,5294,5295,5293,1200,5276,1,5276,
- 5276,5276,5276,5276,5276,5276,5276,5276,5276,5276,
- 5276,5276,5276,3513,5276,5276,5276,3513,5276,5276,
- 5276,3090,3323,5276,5276,5273,5276,5276,5276,5276,
- 5276,5282,39,4965,4778,1104,629,4068,3446,4090,
- 556,4046,3727,4134,4112,5538,5536,5545,5544,5540,
- 5541,5539,5542,5543,5546,5537,5296,2397,712,789,
- 5298,726,4352,787,5299,5297,677,5292,5294,5295,
- 5293,39,4965,2842,1104,629,4068,3446,4090,556,
- 4046,3727,4134,4112,5538,5536,5545,5544,5540,5541,
- 5539,5542,5543,5546,5537,5296,2397,712,789,5298,
- 726,4352,787,5299,5297,677,5292,5294,5295,5293,
- 39,4965,2842,1104,629,4068,3446,4090,556,4046,
- 3727,4134,4112,5538,5536,5545,5544,5540,5541,5539,
- 5542,5543,5546,5537,5296,2397,712,789,5298,726,
- 4352,787,5299,5297,677,5292,5294,5295,5293,5276,
- 4986,50,5314,306,1702,5276,5276,779,5276,5276,
- 5211,5581,5538,5536,5545,5544,5540,5541,5539,5542,
- 5543,5546,5537,37,5182,5276,5276,5276,5276,5276,
- 5276,5276,5276,5276,5276,5276,287,5276,5276,5276,
- 5276,5529,5276,5276,5532,5615,5276,5616,5526,5533,
- 5505,5531,5530,5527,5528,5506,5312,5673,1702,422,
- 575,5674,5675,237,5138,127,5142,5276,1770,350,
- 5312,779,3560,3164,3303,5276,5129,5135,5108,5111,
- 5123,5120,5126,5117,5114,5105,5132,1,5254,225,
- 5254,225,225,225,225,1,5254,225,5254,225,
- 225,225,225,3665,1944,5093,30,5276,5084,5078,
- 5285,5075,5102,5081,5072,5087,5090,5099,5096,5069,
- 5276,5673,2589,5276,575,5674,5675,1276,1747,9037,
- 225,4980,3865,5276,5251,4373,5276,9037,225,129,
- 102,448,5251,41,3456,386,1,371,442,101,
- 369,2140,863,5276,3380,323,2535,2508,416,2140,
- 863,5770,3380,4971,567,5276,217,502,5276,5770,
- 1,5254,225,5254,225,225,225,225,1,5254,
- 225,5254,225,225,225,225,1,5254,225,5254,
- 225,225,225,225,2311,76,2589,2950,4974,4857,
- 4995,528,5149,507,5276,5161,5341,5342,1921,5276,
- 2693,5276,9037,225,1747,5276,1060,5251,2150,1112,
- 9037,225,2848,443,500,5251,5276,2071,9037,225,
- 2535,2508,5276,5251,2140,863,4288,3380,2015,1,
- 3311,217,2140,863,5770,3380,177,5285,128,216,
- 2140,863,5770,3380,3118,5276,5,217,5276,5276,
- 5770,1,5254,225,5254,225,225,225,225,1,
- 5254,225,5254,225,225,225,225,1,5254,225,
- 5254,225,225,225,225,5456,2321,5276,1,5264,
- 5276,2153,35,4781,5276,5276,576,313,504,3282,
- 5276,5276,3566,9037,225,2589,5276,5276,5251,5276,
- 663,9037,225,37,5164,5276,5251,5276,3296,9037,
- 225,3632,5276,5276,5251,2140,863,5276,3380,5455,
- 5276,5276,217,2140,863,5770,3380,5276,5276,2535,
- 2508,2140,863,5770,3380,5276,5276,5267,5276,5276,
- 5276,5770,1,5254,225,5254,225,225,225,225,
- 524,2775,5276,2775,1841,4397,5276,729,5276,5276,
- 5276,5276,5276,5276,5276,5276,5276,5276,5276,5276,
- 5276,5276,5276,5276,5276,5276,5276,5276,5276,5276,
- 5276,5276,5276,5276,9037,225,5276,5276,5276,5251,
- 5276,5276,5276,5276,5276,5276,5276,5276,5276,5276,
- 5276,5276,5276,5276,5276,5276,2140,863,5276,3380,
- 5276,5276,5276,5276,5276,5276,5770
+ 5524,168,5685,5524,1,1,1,1,1,1,
+ 1,1,1,1,1,168,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,236,135,5685,
+ 5378,5524,5524,397,5541,5542,2399,350,42,42,
+ 2980,5565,5524,862,5532,5859,1,5266,5262,2777,
+ 5270,1899,5524,2996,5524,5541,5542,4989,168,5524,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,168,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1813,5531,5685,5524,123,5524,5524,
+ 5171,5168,1813,1063,5223,3210,2996,2886,591,5524,
+ 9799,9169,5524,1,1,1,1,1,1,1,
+ 1,1,1,1,168,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,868,721,636,5524,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,5524,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,5524,5524,5685,5524,1,1,1,
+ 1,1,1,1,1,1,1,1,5524,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 142,5524,5685,5524,1,1,1,1,1,1,
+ 1,1,1,1,1,1794,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,5524,5524,5685,
+ 1,5266,5262,3134,5270,3303,3561,2996,3584,5226,
+ 3538,3515,2201,3633,3610,5253,5259,5232,5235,5247,
+ 5244,5250,5241,5238,5229,5256,5547,928,780,1101,
+ 5549,791,631,863,5550,5548,777,5543,5545,5546,
+ 5544,1253,42,42,440,42,42,5524,5565,5524,
+ 5387,2271,5384,341,5524,9799,9169,5524,1,1,
+ 1,1,1,1,1,1,1,1,1,512,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,5866,5867,5685,5524,1,1,1,1,1,
+ 1,1,1,1,1,1,6031,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,5524,1,
+ 5685,5524,1,1,1,1,1,1,1,1,
+ 1,1,1,5524,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,5524,5524,5685,5524,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 3253,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,5524,5524,5685,5524,1,1,1,1,
+ 1,1,1,1,1,1,1,3254,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,5524,
+ 5524,5685,5524,1,1,1,1,1,1,1,
+ 1,1,1,1,5506,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,5524,5524,5685,42,
+ 5171,5168,3134,1063,3303,3561,2996,3584,563,3538,
+ 3515,5532,3633,3610,5789,5787,5796,5795,5791,5792,
+ 5790,5793,5794,5797,5788,5547,928,780,1101,5549,
+ 791,631,863,5550,5548,777,5543,5545,5546,5544,
+ 1253,1,5399,5399,136,5396,1,862,324,5859,
+ 390,5463,2399,367,1,5266,5262,2777,5270,1899,
+ 3431,2996,97,1,1,449,1,44,5390,5524,
+ 5390,5531,42,5171,5168,3134,1063,3303,3561,2996,
+ 3584,563,3538,3515,5532,3633,3610,5789,5787,5796,
+ 5795,5791,5792,5790,5793,5794,5797,5788,5547,928,
+ 780,1101,5549,791,631,863,5550,5548,777,5543,
+ 5545,5546,5544,1253,1813,3788,367,100,42,42,
+ 1813,5565,5524,5460,5180,5457,5201,5524,5171,5168,
+ 5524,1063,1899,3431,2996,453,367,5524,3781,4362,
+ 4026,5524,5524,5524,5531,145,5171,5168,3134,1063,
+ 3303,3561,2996,3584,563,3538,3515,5524,3633,3610,
+ 5789,5787,5796,5795,5791,5792,5790,5793,5794,5797,
+ 5788,5547,928,780,1101,5549,791,631,863,5550,
+ 5548,777,5543,5545,5546,5544,1253,42,42,1,
+ 5266,5262,3134,5270,3303,3561,2996,3584,5226,3538,
+ 3515,5195,3633,3610,5253,5259,5232,5235,5247,5244,
+ 5250,5241,5238,5229,5256,5547,928,780,1101,5549,
+ 791,631,863,5550,5548,777,5543,5545,5546,5544,
+ 1253,42,42,42,5171,5168,3134,1063,3303,3561,
+ 2996,3584,563,3538,3515,5528,3633,3610,5789,5787,
+ 5796,5795,5791,5792,5790,5793,5794,5797,5788,5547,
+ 928,780,1101,5549,791,631,863,5550,5548,777,
+ 5543,5545,5546,5544,42,5171,5168,3134,1063,3303,
+ 3561,2996,3584,563,3538,3515,5524,3633,3610,5789,
+ 5787,5796,5795,5791,5792,5790,5793,5794,5797,5788,
+ 5547,928,780,1101,5549,791,631,863,5550,5548,
+ 777,5543,5545,5546,5544,1253,79,115,5524,3775,
+ 143,53,40,5393,5393,5542,389,5393,118,5592,
+ 5593,5524,292,5524,4119,3431,42,5171,5168,3134,
+ 1063,3303,3561,2996,3584,563,3538,3515,5527,3633,
+ 3610,5789,5787,5796,5795,5791,5792,5790,5793,5794,
+ 5797,5788,5547,928,780,1101,5549,791,631,863,
+ 5550,5548,777,5543,5545,5546,5544,1253,1,2122,
+ 5542,539,3417,5988,5982,5357,5986,452,5980,5981,
+ 1,6011,6012,2980,1,5266,5262,4439,5270,1899,
+ 38,2996,346,1950,5207,5989,317,3679,5524,5541,
+ 5542,117,5207,3702,5524,5524,5363,5360,3679,578,
+ 1809,1845,2232,5524,3702,5524,431,42,42,5524,
+ 5565,1878,5524,659,3881,130,3002,5991,5524,317,
+ 3024,5534,3190,116,577,5207,5524,5992,6013,5990,
+ 3656,1152,132,5198,131,309,1813,3656,1152,346,
+ 346,48,5369,5369,5832,346,6002,6001,6014,5983,
+ 5984,6007,6008,5954,5533,6005,6006,5985,5987,6009,
+ 6010,6015,5995,5996,5997,5993,5994,6003,6004,5999,
+ 5998,6000,5524,318,2666,539,2469,5988,5982,4403,
+ 5986,3679,5980,5981,5189,6011,6012,3702,40,5393,
+ 5393,2666,405,2666,1878,40,5393,5393,5366,5989,
+ 1,5372,1670,5375,5439,5524,180,529,2610,2582,
+ 5524,5416,5413,3679,1809,1845,5524,5534,5503,3702,
+ 3418,5524,5524,1,4792,2610,2582,2610,2582,5524,
+ 5524,5991,4846,3914,5524,5530,5524,5442,577,4025,
+ 5524,5992,6013,5990,1208,5563,108,5524,3491,4094,
+ 5533,5503,2216,5524,5524,5524,1,5524,5524,508,
+ 6002,6001,6014,5983,5984,6007,6008,5563,5481,6005,
+ 6006,5985,5987,6009,6010,6015,5995,5996,5997,5993,
+ 5994,6003,6004,5999,5998,6000,42,5171,5168,3134,
+ 1063,3303,3561,2996,3584,563,3538,3515,5529,3633,
+ 3610,5789,5787,5796,5795,5791,5792,5790,5793,5794,
+ 5797,5788,5547,928,780,1101,5549,791,631,863,
+ 5550,5548,777,5543,5545,5546,5544,5974,5531,5524,
+ 5925,281,2496,5524,5472,5524,4360,50,5422,5422,
+ 42,5171,5168,3134,1063,3303,3561,2996,3584,563,
+ 3538,3515,1369,3633,3610,5789,5787,5796,5795,5791,
+ 5792,5790,5793,5794,5797,5788,5547,928,780,1101,
+ 5549,791,631,863,5550,5548,777,5543,5545,5546,
+ 5544,1253,42,5171,5168,3883,1063,3303,3561,2996,
+ 3584,563,3538,3515,5419,3633,3610,5789,5787,5796,
+ 5795,5791,5792,5790,5793,5794,5797,5788,5547,928,
+ 780,1101,5549,791,631,863,5550,5548,777,5543,
+ 5545,5546,5544,42,5171,5168,3134,1063,3303,3561,
+ 2996,3584,563,3538,3515,5524,3633,3610,5789,5787,
+ 5796,5795,5791,5792,5790,5793,5794,5797,5788,5547,
+ 928,780,1101,5549,791,631,863,5550,5548,777,
+ 5543,5545,5546,5544,42,5171,5168,3134,1063,3303,
+ 3561,2996,3584,563,3538,3515,5524,3633,3610,5789,
+ 5787,5796,5795,5791,5792,5790,5793,5794,5797,5788,
+ 5547,928,780,1101,5549,791,631,863,5550,5548,
+ 777,5543,5545,5546,5544,5524,5171,5168,290,5565,
+ 353,105,374,372,1106,5524,5524,5435,5431,5524,
+ 5789,5787,5796,5795,5791,5792,5790,5793,5794,5797,
+ 5788,1,5524,5524,5524,5524,3415,3735,5524,5524,
+ 5524,4146,423,525,5524,3815,4362,5530,5524,5780,
+ 5524,5532,5783,5866,5867,5777,5784,5756,5782,5781,
+ 5778,5779,5524,5757,5524,5922,443,618,5923,5924,
+ 240,5346,5342,5563,5350,5524,1813,5047,620,1106,
+ 40,5393,5393,1120,1165,5333,5339,5312,5315,5327,
+ 5324,5330,5321,5318,5309,5336,1,5487,5487,228,
+ 5487,228,228,228,228,4850,525,3300,228,953,
+ 5529,5531,2921,104,5297,326,5524,5288,5282,5279,
+ 5306,5285,5276,5291,5294,5303,5300,417,5273,5524,
+ 5922,53,618,5923,5924,5541,5524,5563,379,2221,
+ 9926,228,1,5487,5487,228,5487,228,228,228,
+ 228,1,518,5484,5515,3734,444,503,501,5524,
+ 5475,2423,5524,2393,3589,5524,38,5524,1,5487,
+ 5487,228,5487,228,228,228,228,5524,6019,1989,
+ 5515,1813,5524,5524,5524,4998,9926,228,2740,2083,
+ 5541,5524,5524,5524,1,2910,4995,5524,2138,5484,
+ 5001,5524,5524,5475,2741,316,505,2423,3443,2393,
+ 3589,5478,9926,228,220,1,5487,5487,228,5487,
+ 228,228,228,228,6019,5484,2224,5518,4690,4718,
+ 5524,4024,5707,2423,5524,2393,3589,1936,3918,5524,
+ 220,1,5487,5487,228,5487,228,228,228,228,
+ 6019,3443,5524,5515,5478,5050,3788,5706,1,9926,
+ 228,5524,5524,1936,5524,2,5524,3817,5524,5524,
+ 3788,5524,5484,1907,5524,4426,5524,731,5524,5524,
+ 2423,5524,2393,3589,3520,9926,228,219,1,5487,
+ 5487,228,5487,228,228,228,228,6019,5484,5524,
+ 5515,5524,5524,5524,5524,5524,2423,5524,2393,3589,
+ 5524,5524,5524,220,1,5487,5487,228,5487,228,
+ 228,228,228,6019,40,5524,228,5524,5524,5524,
+ 5524,5524,9926,228,5524,5524,5524,5524,5524,5524,
+ 5524,5524,5524,5524,5524,5484,5524,5524,5524,5524,
+ 5524,5524,5524,2423,5524,2393,3589,5524,9926,228,
+ 220,1,5487,5487,228,5487,228,228,228,228,
+ 6019,5484,5524,228,5524,5524,5524,5524,5524,2423,
+ 5524,2393,3589,5524,5524,5524,5524,1,5487,5487,
+ 228,5487,228,228,228,228,6019,5524,5524,228,
+ 5524,5524,5524,5524,5524,9926,228,5524,5524,5524,
+ 5524,5524,5524,5524,5524,5524,5524,5524,5484,5524,
+ 5524,5524,5524,5524,5524,5524,2423,5524,2393,3589,
+ 5524,9926,228,5524,5524,5524,5524,5524,5524,5524,
+ 5524,5524,5524,6019,5484,5524,5524,5524,5524,5524,
+ 5524,5524,2423,5524,2393,3589,5524,5524,5524,5524,
+ 5524,5524,5524,5524,5524,5524,5524,5524,5524,6019
};
};
public final static char termAction[] = TermAction.termAction;
@@ -1861,58 +1960,59 @@ public class CPPNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface Asb {
public final static char asb[] = {0,
- 1013,1,387,1,62,623,724,724,724,724,
- 59,623,170,724,770,170,1050,1013,1052,388,
- 388,388,388,388,388,388,388,388,965,971,
- 976,973,980,978,985,983,987,986,988,219,
- 989,387,370,31,31,31,31,268,227,3,
- 168,31,67,482,170,170,3,800,170,482,
- 889,30,667,60,273,279,370,949,949,878,
- 878,227,1013,388,388,388,388,388,388,388,
- 388,388,388,388,388,388,388,388,388,388,
- 388,388,387,387,387,387,387,387,387,387,
- 387,387,387,1013,388,482,482,153,371,839,
- 839,839,839,115,482,3,158,936,947,768,
- 947,527,947,766,947,931,947,947,59,268,
- 67,67,3,67,30,387,425,666,482,424,
- 268,426,424,482,67,973,973,971,971,971,
- 978,978,978,978,976,976,983,980,980,986,
- 985,987,1064,988,158,282,490,436,435,450,
- 59,1052,623,623,623,623,268,268,839,179,
- 838,168,268,164,72,268,530,115,529,274,
- 768,270,268,268,268,115,839,388,31,969,
- 118,482,60,268,268,426,667,387,153,67,
- 1004,482,492,494,268,667,1013,1013,1013,1013,
- 623,623,371,161,164,72,530,275,530,115,
- 530,270,270,268,115,268,482,969,158,666,
- 268,60,425,482,440,429,543,494,115,425,
- 482,482,482,482,227,227,164,163,627,268,
- 72,1064,116,264,1056,72,530,530,443,268,
- 270,627,625,626,268,970,970,969,1013,118,
- 427,60,341,387,541,541,329,329,268,488,
- 158,549,482,268,482,482,164,667,724,424,
- 484,1057,421,623,715,446,268,627,388,268,
- 227,388,67,268,427,341,387,387,494,268,
- 667,482,492,429,341,461,425,86,425,530,
- 530,421,1009,158,268,718,388,1064,337,443,
- 58,268,482,67,268,540,494,341,1010,86,
- 425,530,768,59,1057,421,666,388,388,59,
- 540,482,540,838,724,324,324,1010,768,352,
- 715,268,623,268,623,533,540,86,673,86,
- 837,837,547,353,59,268,227,268,495,533,
- 322,841,616,623,767,708,86,31,31,547,
- 352,1064,388,1064,1010,623,623,623,353,623,
- 268,581,1010,1010,616,268,768,351,482,544,
- 535,629,839,616,322,672,768,884,768,59,
- 838,69,623,1064,353,370,370,369,887,370,
- 1010,1010,616,217,547,31,535,673,672,673,
- 1010,336,1009,482,672,672,59,672,268,525,
- 549,482,421,482,581,1010,623,482,547,672,
- 387,727,421,1010,627,672,672,268,672,268,
- 324,482,482,474,353,217,353,1010,581,1013,
- 353,350,627,482,726,627,268,627,1010,837,
- 768,768,922,387,351,1012,1010,482,726,1010,
- 424,353,482,1012,1010,626,353,482,726,353
+ 1078,7,974,7,1,490,797,797,797,797,
+ 65,490,515,797,567,515,1115,1078,1117,975,
+ 975,975,975,975,975,975,975,975,879,885,
+ 890,887,894,892,899,897,901,900,902,153,
+ 903,974,957,37,37,37,37,1014,161,9,
+ 512,37,312,443,515,515,9,598,515,443,
+ 801,36,690,67,321,328,957,862,862,1057,
+ 1057,161,1078,975,975,975,975,975,975,975,
+ 975,975,975,975,975,975,975,975,975,975,
+ 975,975,974,974,974,974,974,974,974,974,
+ 974,974,974,1078,975,443,443,241,958,637,
+ 637,637,637,149,443,9,247,849,860,788,
+ 860,644,860,785,860,844,860,860,65,1014,
+ 312,312,9,312,36,974,1012,689,443,1011,
+ 1014,1013,1011,443,312,887,887,885,885,885,
+ 892,892,892,892,890,890,897,894,894,900,
+ 899,901,1074,902,247,271,407,361,360,369,
+ 65,1117,490,490,490,490,1014,1014,637,525,
+ 636,512,1014,508,105,1014,648,149,647,323,
+ 788,266,1014,1014,1014,149,637,975,37,883,
+ 206,443,67,1014,1014,1013,690,974,241,312,
+ 918,443,409,411,1014,690,1078,1078,1078,1078,
+ 490,490,958,251,508,105,648,324,648,149,
+ 648,266,266,1014,149,1014,443,883,247,689,
+ 1014,67,1012,443,503,353,364,411,149,1012,
+ 443,443,443,443,161,161,508,507,641,1014,
+ 105,1074,151,199,1064,105,648,648,341,1014,
+ 266,641,639,640,1014,884,884,883,1078,206,
+ 204,67,331,974,362,362,253,253,1014,405,
+ 247,69,443,1014,443,443,508,690,797,1011,
+ 349,1066,1008,490,741,345,1014,641,975,1014,
+ 161,975,312,1014,204,331,974,974,411,1014,
+ 690,443,409,353,331,380,1012,120,1012,648,
+ 648,1008,923,247,1014,790,975,1074,261,341,
+ 64,1014,443,312,1014,499,411,331,924,120,
+ 1012,648,788,65,1066,1008,689,975,975,65,
+ 499,443,499,636,797,315,315,924,788,938,
+ 741,1014,490,1014,490,492,499,120,697,120,
+ 635,635,565,939,65,1014,161,1014,412,492,
+ 799,1019,481,490,786,733,120,37,37,565,
+ 938,1074,975,1074,924,490,490,490,939,490,
+ 1014,446,924,924,481,1014,788,937,443,365,
+ 494,651,637,481,799,696,788,927,788,65,
+ 636,102,490,930,1074,939,957,957,955,1017,
+ 957,924,924,481,563,565,37,494,697,696,
+ 697,924,260,923,443,696,696,65,696,1014,
+ 100,69,443,1008,443,446,924,490,443,565,
+ 696,974,746,1008,924,641,696,696,1014,696,
+ 1014,315,443,443,393,939,563,939,924,446,
+ 1078,939,936,641,443,744,641,1014,641,924,
+ 635,788,788,834,974,937,1076,924,443,744,
+ 924,1011,939,443,1076,924,640,939,443,744,
+ 939
};
};
public final static char asb[] = Asb.asb;
@@ -1920,113 +2020,119 @@ public class CPPNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface Asr {
public final static byte asr[] = {0,
- 114,0,26,40,27,28,41,6,29,30,
- 31,32,39,33,34,35,36,37,24,11,
- 12,7,5,9,10,4,25,66,38,2,
- 49,13,14,58,46,15,61,50,42,16,
- 51,52,17,18,53,54,19,20,55,62,
- 56,8,63,21,22,48,23,45,1,3,
- 0,70,72,43,114,68,113,0,67,65,
- 116,74,6,117,118,119,64,2,7,5,
- 4,70,71,43,44,49,13,14,58,46,
- 15,61,50,42,16,51,52,17,18,53,
- 54,19,20,55,62,56,8,63,21,45,
- 22,48,23,3,1,47,0,94,88,9,
- 10,89,90,86,87,57,91,92,95,96,
- 97,98,99,100,112,70,93,69,102,103,
- 104,105,106,107,108,109,110,111,113,71,
- 43,114,66,68,72,2,59,1,7,3,
- 5,0,39,46,6,48,4,1,3,73,
- 60,70,93,113,72,71,43,114,59,2,
- 115,94,101,88,11,12,7,5,9,10,
- 89,90,86,87,57,91,92,95,96,97,
- 98,99,100,112,102,103,104,105,106,107,
- 108,109,110,111,66,68,69,0,66,70,
- 93,68,113,71,43,114,72,13,14,26,
- 40,15,27,28,16,17,18,41,29,19,
- 20,30,31,32,39,33,34,21,22,23,
- 35,36,37,24,2,11,12,7,5,9,
- 10,25,38,6,4,3,8,1,0,1,
- 71,0,43,3,57,60,70,0,57,3,
- 0,40,41,113,8,27,31,29,26,34,
- 14,23,13,19,17,18,20,21,16,15,
- 22,35,38,36,37,33,28,32,4,6,
- 3,2,11,12,7,5,9,10,25,30,
- 1,24,0,66,69,68,1,0,73,60,
- 66,70,93,72,59,2,68,43,69,0,
- 46,39,48,66,93,69,68,72,0,116,
- 120,71,73,64,65,67,76,78,84,82,
- 75,80,81,83,85,60,77,79,43,44,
- 61,58,62,63,49,54,55,42,53,52,
- 45,50,46,48,51,56,39,40,41,8,
- 27,31,29,26,34,14,23,13,19,17,
- 18,20,21,16,15,22,35,38,36,37,
- 24,33,28,32,11,12,9,10,25,30,
- 7,5,2,3,6,1,4,0,7,5,
- 6,4,3,1,2,66,69,68,59,72,
- 93,0,1,45,3,117,118,119,0,13,
- 14,15,16,17,18,19,20,21,22,23,
- 49,46,50,42,51,52,53,54,55,56,
- 45,48,43,6,1,59,2,7,5,4,
- 3,72,0,60,70,73,0,4,6,2,
- 59,5,7,93,49,13,14,46,15,61,
- 50,42,16,51,52,17,18,53,54,19,
- 20,55,62,56,8,63,21,45,22,48,
- 23,1,3,72,58,0,47,1,3,60,
- 70,0,46,48,73,2,60,70,43,39,
- 66,69,93,72,68,0,116,0,49,13,
- 14,58,46,15,61,50,42,16,51,52,
- 17,18,53,54,19,20,55,62,56,8,
- 63,21,45,22,48,23,1,3,93,0,
- 13,14,26,40,15,27,28,16,17,18,
- 41,29,19,20,30,31,32,39,33,34,
- 8,21,22,23,35,36,37,24,11,12,
- 9,10,25,38,44,7,5,43,4,6,
- 1,3,2,0,69,68,71,0,67,49,
- 13,14,58,46,15,61,50,74,42,16,
- 51,52,17,18,53,65,54,19,20,55,
- 62,56,8,63,21,64,45,22,48,23,
- 2,7,3,43,60,5,6,1,4,47,
- 0,71,14,58,46,15,61,50,16,51,
- 52,17,18,53,54,19,20,55,62,56,
- 63,21,45,22,48,23,13,49,2,7,
- 5,43,64,67,74,42,47,6,1,4,
- 3,8,65,0,60,68,0,70,59,2,
- 69,68,43,57,0,71,40,41,39,11,
- 12,7,5,9,10,4,25,30,2,6,
- 35,38,36,37,24,33,28,32,14,23,
- 13,19,17,18,20,21,16,15,22,8,
- 27,31,29,26,34,3,1,60,0,49,
- 13,14,58,46,15,61,50,42,16,51,
- 52,17,18,53,54,19,20,55,62,56,
- 8,63,21,45,22,48,23,1,3,41,
- 40,9,10,5,89,90,97,7,98,4,
- 25,57,105,106,102,103,104,110,109,111,
- 87,86,107,108,95,96,91,92,99,100,
- 11,12,88,101,2,59,69,68,66,0,
- 14,58,46,15,61,50,16,51,52,17,
- 18,53,54,19,20,55,62,56,8,63,
- 21,45,22,48,23,13,49,2,7,5,
- 43,64,65,67,74,42,57,6,3,47,
- 4,1,0,60,69,0,75,0,40,41,
- 11,12,9,10,25,30,35,38,36,37,
- 24,33,28,32,14,23,13,19,17,18,
- 20,21,16,15,22,8,27,31,29,26,
- 34,7,5,2,59,4,6,1,3,0,
- 8,61,58,62,63,14,23,13,19,17,
- 18,20,21,16,15,22,73,60,4,3,
- 1,48,45,56,55,54,6,53,52,51,
- 42,50,46,49,115,101,11,12,59,2,
- 94,88,5,89,90,9,10,87,86,57,
- 91,92,95,96,7,97,98,99,66,93,
- 72,114,69,102,103,104,105,106,107,108,
- 109,110,111,70,113,71,100,112,68,43,
- 0,72,13,14,26,15,27,28,16,17,
- 18,29,19,20,30,31,32,39,33,34,
- 8,21,22,23,35,36,37,24,2,11,
- 12,7,5,9,10,25,3,38,44,4,
- 6,1,41,40,0,43,4,6,2,1,
- 3,5,7,70,0
+ 12,73,115,75,45,70,116,0,28,42,
+ 29,30,43,7,31,32,33,34,41,35,
+ 36,37,38,39,26,13,14,8,6,10,
+ 11,5,27,69,40,3,50,15,16,60,
+ 48,17,62,51,44,18,52,53,19,20,
+ 54,55,21,22,56,63,58,9,64,23,
+ 24,49,25,47,1,2,4,0,50,15,
+ 16,48,17,62,51,44,18,52,53,19,
+ 20,54,55,21,22,56,63,58,9,64,
+ 23,47,24,49,25,1,2,4,95,60,
+ 0,68,67,118,82,7,119,120,121,65,
+ 12,3,8,6,5,73,72,45,46,50,
+ 15,16,60,48,17,62,51,44,18,52,
+ 53,19,20,54,55,21,22,56,63,58,
+ 9,64,23,47,24,49,25,4,1,2,
+ 57,0,69,73,95,70,115,72,45,116,
+ 12,75,15,16,28,42,17,29,30,18,
+ 19,20,43,31,21,22,32,33,34,41,
+ 35,36,23,24,25,37,38,39,26,3,
+ 13,14,8,6,10,11,27,40,7,1,
+ 2,4,9,5,0,96,90,10,11,91,
+ 92,88,89,59,93,94,97,98,99,100,
+ 101,102,114,73,95,71,104,105,106,107,
+ 108,109,110,111,112,113,115,72,45,116,
+ 12,69,70,75,3,66,1,2,8,4,
+ 6,0,74,61,69,73,95,75,66,3,
+ 12,70,45,71,0,1,2,12,72,0,
+ 42,43,9,29,33,31,28,36,16,25,
+ 15,21,19,20,22,23,18,17,24,37,
+ 40,38,39,26,35,30,34,5,7,4,
+ 3,13,14,8,6,10,11,27,32,1,
+ 2,115,12,0,69,71,70,1,2,0,
+ 12,45,4,59,61,73,0,59,4,0,
+ 48,41,49,12,69,95,71,70,75,0,
+ 1,2,47,4,119,120,121,0,61,73,
+ 74,0,8,6,7,5,4,1,2,3,
+ 66,69,71,95,75,12,70,0,15,16,
+ 17,18,19,20,21,22,23,24,25,50,
+ 48,51,44,52,53,54,55,56,58,47,
+ 49,45,12,75,7,1,2,66,3,8,
+ 6,5,4,0,5,7,3,66,6,8,
+ 95,50,15,16,60,48,17,62,51,44,
+ 18,52,53,19,20,54,55,21,22,56,
+ 63,58,9,64,23,47,24,49,25,1,
+ 2,4,75,12,0,15,16,28,42,17,
+ 29,30,18,19,20,43,31,21,22,32,
+ 33,34,41,35,36,9,23,24,25,37,
+ 38,39,26,13,14,10,11,27,40,46,
+ 12,8,6,45,5,7,1,2,4,3,
+ 0,48,49,74,3,61,73,45,41,69,
+ 71,70,12,75,95,0,41,48,7,49,
+ 5,1,2,4,74,12,61,73,95,115,
+ 75,72,45,116,66,3,117,96,103,90,
+ 13,14,8,6,10,11,91,92,88,89,
+ 59,93,94,97,98,99,100,101,102,114,
+ 104,105,106,107,108,109,110,111,112,113,
+ 69,70,71,0,118,0,50,15,16,60,
+ 48,17,62,51,44,18,52,53,19,20,
+ 54,55,21,22,56,63,58,9,64,23,
+ 47,24,49,25,1,2,4,43,42,10,
+ 11,6,91,92,99,8,100,5,27,59,
+ 107,108,104,105,106,112,111,113,89,88,
+ 109,110,97,98,93,94,101,102,13,14,
+ 90,103,3,66,71,70,69,0,71,70,
+ 72,12,0,57,1,2,4,61,73,0,
+ 68,50,15,16,60,48,17,62,51,82,
+ 44,18,52,53,19,20,54,67,55,21,
+ 22,56,63,58,9,64,23,65,47,24,
+ 49,25,12,3,8,4,45,61,6,7,
+ 1,2,5,57,0,72,60,48,17,62,
+ 51,18,52,53,19,20,54,55,21,22,
+ 56,63,58,64,23,47,24,49,25,16,
+ 15,50,12,3,8,6,45,65,68,82,
+ 44,57,7,1,2,5,4,9,67,0,
+ 61,70,0,12,72,42,43,41,13,14,
+ 8,6,10,11,5,27,32,3,7,37,
+ 40,38,39,26,35,30,34,16,25,15,
+ 21,19,20,22,23,18,17,24,9,29,
+ 33,31,28,36,4,1,2,61,0,73,
+ 12,66,3,71,70,45,59,0,26,0,
+ 42,43,13,14,10,11,27,32,37,40,
+ 38,39,26,35,30,34,16,25,15,21,
+ 19,20,22,23,18,17,24,9,29,33,
+ 31,28,36,8,6,3,66,5,7,1,
+ 2,4,0,9,62,60,63,64,16,25,
+ 15,21,19,20,22,23,18,17,24,74,
+ 61,4,5,2,1,49,47,58,56,55,
+ 7,54,53,52,44,51,48,50,117,103,
+ 13,14,66,3,96,90,6,91,92,10,
+ 11,89,88,59,93,94,97,98,8,99,
+ 100,101,69,95,75,116,71,104,105,106,
+ 107,108,109,110,111,112,113,73,115,72,
+ 102,114,70,45,12,0,61,71,0,82,
+ 119,120,121,57,73,118,122,72,74,65,
+ 67,68,77,79,86,84,76,81,83,85,
+ 87,61,78,80,12,45,46,62,60,63,
+ 64,50,55,56,44,54,53,47,51,48,
+ 49,52,58,41,42,43,9,29,33,31,
+ 28,36,16,25,15,21,19,20,22,23,
+ 18,17,24,37,40,38,39,26,35,30,
+ 34,13,14,10,11,27,32,8,6,3,
+ 4,7,5,1,2,0,76,0,60,48,
+ 17,62,51,18,52,53,19,20,54,55,
+ 21,22,56,63,58,9,64,23,47,24,
+ 49,25,16,15,50,12,3,8,6,45,
+ 65,67,68,82,44,59,7,4,57,5,
+ 1,2,0,45,12,5,7,3,1,2,
+ 4,6,8,73,0,12,75,15,16,28,
+ 17,29,30,18,19,20,31,21,22,32,
+ 33,34,41,35,36,9,23,24,25,37,
+ 38,39,26,3,13,14,8,6,10,11,
+ 27,4,40,46,5,7,1,2,43,42,
+ 0
};
};
public final static byte asr[] = Asr.asr;
@@ -2034,58 +2140,59 @@ public class CPPNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface Nasb {
public final static char nasb[] = {0,
- 138,11,30,11,11,11,11,11,11,11,
- 158,11,11,11,184,11,21,168,135,30,
- 30,19,30,30,30,30,30,30,11,11,
- 11,11,11,11,11,11,11,11,11,30,
- 11,30,188,206,206,206,206,135,141,112,
- 56,4,80,194,11,11,112,186,11,194,
- 30,52,126,11,11,11,188,11,11,12,
- 12,141,168,30,30,30,30,30,30,30,
- 30,30,30,30,30,30,30,30,30,30,
- 30,30,30,30,30,30,30,30,30,30,
- 30,30,30,168,30,194,194,120,1,11,
- 11,11,11,84,194,28,157,202,203,11,
- 203,133,203,158,203,196,11,11,158,135,
- 80,80,28,80,206,59,176,35,194,175,
- 10,135,175,194,80,11,11,11,11,11,
+ 156,11,26,11,11,11,11,11,11,11,
+ 136,11,11,11,147,11,173,95,168,26,
+ 26,171,26,26,26,26,26,26,11,11,
+ 11,11,11,11,11,11,11,11,11,26,
+ 11,26,159,216,216,216,216,168,163,108,
+ 33,4,70,187,11,11,108,149,11,187,
+ 26,57,90,11,11,11,159,11,11,14,
+ 14,163,95,26,26,26,26,26,26,26,
+ 26,26,26,26,26,26,26,26,26,26,
+ 26,26,26,26,26,26,26,26,26,26,
+ 26,26,26,95,26,187,187,123,1,11,
+ 11,11,11,48,187,24,135,200,201,11,
+ 201,166,201,9,201,194,11,11,136,168,
+ 70,70,24,70,216,74,182,138,187,181,
+ 183,168,181,187,70,11,11,11,11,11,
11,11,11,11,11,11,11,11,11,11,
- 11,11,11,11,157,76,120,72,72,11,
- 158,135,11,11,11,11,25,10,11,11,
- 11,150,135,112,112,22,112,223,112,11,
- 11,112,223,135,10,11,11,30,206,112,
- 49,194,11,10,135,10,126,30,148,80,
- 11,194,226,112,135,126,168,168,168,168,
- 11,11,28,11,54,216,112,112,17,125,
- 17,112,104,10,125,25,194,74,150,35,
- 10,11,25,194,11,106,11,228,124,25,
- 194,194,194,194,141,141,112,54,43,135,
- 146,11,11,91,209,216,17,17,116,25,
- 104,43,11,11,25,97,97,11,168,150,
- 11,11,112,30,11,11,72,72,135,106,
- 157,228,194,25,194,194,54,126,11,158,
- 112,153,108,11,11,221,223,43,30,104,
- 141,30,80,10,11,54,30,30,112,10,
- 126,194,226,171,112,11,176,112,223,112,
- 47,173,146,157,135,11,30,11,114,68,
- 70,10,194,80,10,112,228,54,146,228,
- 176,47,62,93,108,173,126,30,30,158,
- 64,194,112,11,11,87,87,146,62,99,
- 11,223,11,223,11,112,64,228,179,112,
- 11,11,112,160,93,10,141,10,192,54,
- 11,179,210,11,10,91,228,206,206,66,
- 165,11,30,11,146,11,11,11,166,11,
- 11,144,146,146,112,11,82,11,194,194,
- 112,112,11,153,11,112,11,11,11,158,
- 11,45,11,11,166,205,205,231,11,205,
- 146,146,108,11,112,206,64,179,112,179,
- 146,89,11,194,128,112,158,112,223,11,
- 206,194,108,194,233,146,11,194,66,128,
- 59,30,108,146,43,179,128,223,128,102,
- 87,194,194,112,166,11,166,146,233,168,
- 166,45,43,194,112,43,102,43,146,11,
- 82,82,106,30,11,233,146,194,39,146,
- 175,166,194,233,146,43,166,194,39,166
+ 11,11,11,11,135,66,123,64,64,11,
+ 136,168,11,11,11,11,19,183,11,11,
+ 11,153,168,108,108,174,108,226,108,11,
+ 11,108,226,168,10,11,11,26,216,108,
+ 59,187,11,10,168,10,90,26,151,70,
+ 11,187,110,108,168,90,95,95,95,95,
+ 11,11,24,11,36,219,108,108,51,89,
+ 51,108,115,183,89,19,187,55,153,138,
+ 10,11,19,187,11,102,11,112,88,19,
+ 187,187,187,187,163,163,108,36,44,168,
+ 121,11,11,53,208,219,51,51,84,19,
+ 115,44,11,11,19,22,22,11,95,153,
+ 11,11,108,26,11,11,64,64,168,102,
+ 135,112,187,19,187,187,36,90,11,136,
+ 108,131,104,11,11,224,226,44,26,115,
+ 163,26,70,10,11,36,26,26,108,10,
+ 90,187,110,177,108,11,182,108,226,108,
+ 31,179,121,135,168,11,26,11,62,127,
+ 129,183,187,70,10,108,112,36,121,112,
+ 182,31,117,80,104,179,90,26,26,136,
+ 38,187,108,11,11,72,72,121,117,77,
+ 11,226,11,226,11,108,38,112,203,108,
+ 11,11,108,189,80,183,163,183,185,36,
+ 11,203,209,11,10,53,112,216,216,98,
+ 92,11,26,11,121,11,11,11,93,11,
+ 10,119,121,121,108,10,12,11,187,187,
+ 108,108,11,131,11,108,11,11,11,136,
+ 11,46,11,11,11,93,215,215,229,11,
+ 215,121,121,104,11,108,216,38,203,108,
+ 203,121,100,11,187,142,108,136,108,226,
+ 11,216,187,104,187,231,121,11,187,98,
+ 142,74,26,104,121,44,203,142,226,142,
+ 10,72,187,187,108,93,11,93,121,231,
+ 95,93,46,44,187,108,44,10,44,121,
+ 11,12,12,102,26,11,231,121,187,40,
+ 121,181,93,187,231,121,44,93,187,40,
+ 93
};
};
public final static char nasb[] = Nasb.nasb;
@@ -2093,30 +2200,30 @@ public class CPPNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface Nasr {
public final static char nasr[] = {0,
- 2,12,7,5,150,148,122,147,146,1,
- 0,5,1,7,139,0,114,0,5,12,
- 7,1,2,0,3,2,0,49,4,5,
- 7,1,12,0,66,138,137,0,12,1,
- 7,5,65,0,116,0,156,0,4,177,
- 0,173,0,61,0,4,189,0,4,28,
- 0,157,0,126,0,158,0,5,163,131,
- 0,69,0,178,0,12,1,7,5,80,
- 0,56,0,136,66,0,113,0,180,0,
- 153,0,167,5,166,0,140,0,4,65,
- 0,43,0,124,0,101,100,64,5,1,
- 7,4,0,186,0,5,131,187,0,100,
- 101,4,0,136,1,66,0,108,4,46,
- 70,0,2,5,1,47,0,4,172,0,
- 4,103,0,4,38,39,0,101,100,5,
- 55,0,1,64,7,4,96,5,0,4,
- 46,38,179,0,65,46,71,4,38,0,
- 101,100,64,55,5,7,1,0,4,46,
- 70,81,0,4,49,169,0,4,49,38,
- 0,49,4,34,0,1,5,122,118,119,
- 120,12,93,0,117,4,49,0,39,5,
- 1,7,4,155,0,4,46,70,67,5,
- 130,0,1,62,0,5,96,23,4,0,
- 46,50,4,106,0
+ 3,13,8,151,149,123,148,147,6,1,
+ 0,57,0,6,2,8,140,0,4,3,
+ 0,141,0,50,5,6,8,2,13,0,
+ 157,0,5,190,0,62,0,127,0,13,
+ 2,8,6,66,0,117,0,137,67,0,
+ 115,0,154,0,179,0,174,0,5,178,
+ 0,187,0,70,0,13,2,8,6,81,
+ 0,114,0,5,29,0,5,66,0,168,
+ 6,167,0,6,132,188,0,137,2,67,
+ 0,66,47,72,5,39,0,159,0,181,
+ 0,102,101,65,6,2,8,5,0,6,
+ 97,24,5,0,125,0,158,0,5,39,
+ 40,0,101,102,5,0,6,164,132,0,
+ 2,65,8,5,97,6,0,67,139,138,
+ 0,109,5,47,71,0,5,50,170,0,
+ 102,101,6,56,0,5,173,0,5,50,
+ 39,0,5,104,0,3,6,1,48,0,
+ 6,13,8,2,3,0,102,101,65,56,
+ 6,8,2,0,50,5,35,0,5,47,
+ 39,180,0,1,6,123,119,120,121,13,
+ 94,0,5,47,71,82,0,40,6,2,
+ 8,5,156,0,118,5,50,0,5,47,
+ 71,68,6,131,0,1,63,0,47,51,
+ 5,107,0
};
};
public final static char nasr[] = Nasr.nasr;
@@ -2124,19 +2231,19 @@ public class CPPNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface TerminalIndex {
public final static char terminalIndex[] = {0,
- 115,2,32,14,11,81,10,102,12,13,
- 8,9,50,54,62,70,76,77,88,89,
- 104,107,109,114,15,57,63,69,86,90,
- 92,96,99,101,111,112,113,46,97,60,
- 80,68,122,123,106,56,95,108,49,66,
- 72,75,78,85,91,100,20,55,1,3,
- 65,93,103,105,79,21,48,45,34,31,
- 121,120,98,67,110,51,52,58,59,61,
- 71,73,74,87,94,18,19,7,16,17,
- 22,23,33,5,24,25,26,27,28,29,
- 6,35,36,37,38,39,40,41,42,43,
- 44,30,119,124,4,53,82,83,84,64,
- 116,117,118
+ 115,116,2,32,14,11,81,10,102,12,
+ 13,117,8,9,50,54,62,70,76,77,
+ 88,89,104,107,109,114,15,57,63,69,
+ 86,90,92,96,99,101,111,112,113,46,
+ 97,60,80,68,122,123,106,56,108,49,
+ 66,72,75,78,85,91,95,100,20,55,
+ 3,65,93,103,105,1,79,48,21,45,
+ 34,121,31,98,120,110,51,52,58,59,
+ 61,67,71,73,74,87,94,18,19,7,
+ 16,17,22,23,33,5,24,25,26,27,
+ 28,29,6,35,36,37,38,39,40,41,
+ 42,43,44,30,119,124,4,53,82,83,
+ 84,64,118
};
};
public final static char terminalIndex[] = TerminalIndex.terminalIndex;
@@ -2144,27 +2251,26 @@ public class CPPNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface NonterminalIndex {
public final static char nonterminalIndex[] = {0,
- 135,137,238,0,0,136,234,134,0,133,
- 0,145,0,132,0,0,144,149,0,0,
- 150,159,180,160,161,162,163,152,164,165,
- 138,166,167,127,168,169,0,131,129,170,
- 0,197,143,0,140,0,139,0,153,177,
- 0,0,0,0,156,173,0,204,0,147,
- 187,0,201,205,128,0,178,0,206,0,
- 172,0,0,0,0,0,0,0,176,126,
- 130,148,0,0,0,0,0,0,0,0,
- 0,0,186,0,0,202,212,158,208,209,
- 210,0,0,0,0,0,207,179,0,0,
- 0,211,0,0,0,241,175,189,190,191,
- 192,193,195,196,199,0,214,217,219,220,
- 0,237,0,240,0,0,141,142,146,0,
- 155,0,171,0,181,182,183,184,185,188,
- 0,194,0,198,203,0,215,216,0,221,
- 224,226,228,0,231,232,233,0,235,236,
- 239,125,0,151,0,0,154,157,174,200,
- 213,218,0,222,223,225,227,229,230,242,
- 243,0,0,0,0,0,0,0,0,0,
- 0,0
+ 131,136,138,239,0,0,137,235,135,0,
+ 134,0,146,0,133,0,0,145,150,0,
+ 0,151,160,181,161,162,163,164,153,165,
+ 166,139,167,168,127,169,170,0,132,129,
+ 171,0,198,144,0,141,0,140,0,154,
+ 178,0,0,0,0,157,174,0,205,0,
+ 148,188,0,202,206,128,0,179,0,207,
+ 0,173,0,0,0,0,0,0,0,177,
+ 126,130,149,0,0,0,0,0,0,0,
+ 0,0,0,187,0,0,203,213,159,209,
+ 210,211,0,0,0,0,0,208,180,0,
+ 0,0,212,0,0,0,242,176,190,191,
+ 192,193,194,196,197,200,0,215,218,220,
+ 221,0,238,0,241,0,0,142,143,147,
+ 0,156,0,172,0,182,183,184,185,186,
+ 189,0,195,0,199,204,0,216,217,0,
+ 222,225,227,229,0,232,233,234,0,236,
+ 237,240,125,0,152,0,0,155,158,175,
+ 201,214,219,0,223,224,226,228,230,231,
+ 243,244,0,0,0,0,0,0,0
};
};
public final static char nonterminalIndex[] = NonterminalIndex.nonterminalIndex;
@@ -2210,18 +2316,18 @@ public class CPPNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface ScopeLhs {
public final static char scopeLhs[] = {
- 67,17,17,75,17,17,17,17,75,163,
- 85,48,92,91,120,68,53,75,74,19,
- 67,17,75,2,6,160,118,67,90,120,
- 119,121,54,48,133,139,75,17,17,133,
- 102,57,135,78,166,160,128,119,119,121,
- 50,56,178,18,17,17,17,17,17,11,
- 116,160,128,75,74,74,37,139,74,19,
- 17,17,17,17,102,75,167,163,180,100,
- 107,59,69,58,155,79,121,76,72,142,
- 178,176,16,160,121,117,139,129,129,55,
- 139,75,139,67,160,73,137,47,137,47,
- 166,117,118,67,67,57
+ 68,18,18,76,18,18,18,18,76,164,
+ 86,49,93,92,121,69,54,76,75,20,
+ 68,18,76,3,7,161,119,68,91,121,
+ 120,122,55,49,134,140,76,18,18,134,
+ 103,58,136,79,167,161,129,120,120,122,
+ 51,57,179,19,18,18,18,18,18,12,
+ 117,161,129,76,75,75,38,140,75,20,
+ 18,18,18,18,103,76,168,164,181,101,
+ 108,60,70,59,156,80,122,77,73,143,
+ 179,177,17,161,122,118,140,130,130,56,
+ 140,76,140,68,161,74,138,48,138,48,
+ 167,118,119,68,68,58
};
};
public final static char scopeLhs[] = ScopeLhs.scopeLhs;
@@ -2229,18 +2335,18 @@ public class CPPNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface ScopeLa {
public final static byte scopeLa[] = {
- 116,72,72,72,72,72,72,72,72,1,
- 71,43,71,71,71,66,1,72,120,72,
- 60,2,43,66,66,43,71,60,71,71,
- 1,1,1,1,66,3,43,1,1,66,
- 72,72,72,116,72,43,71,1,1,1,
- 43,71,113,72,72,72,72,72,113,1,
- 72,1,68,72,72,72,70,3,72,2,
- 66,66,66,66,72,43,1,1,72,72,
- 2,1,113,72,1,1,1,43,70,72,
- 113,72,72,1,47,69,4,1,1,5,
- 1,75,47,73,43,43,3,3,3,3,
- 2,1,60,1,1,2
+ 118,75,75,75,75,75,75,75,75,1,
+ 72,45,72,72,72,69,1,75,122,75,
+ 61,3,45,69,69,45,72,61,72,72,
+ 1,1,1,1,69,4,45,1,1,69,
+ 75,75,75,118,75,45,72,1,1,1,
+ 45,72,115,75,75,75,75,75,115,1,
+ 75,1,70,75,75,75,73,4,75,3,
+ 69,69,69,69,75,45,1,1,75,75,
+ 3,1,115,75,1,1,1,45,73,75,
+ 115,75,75,1,57,71,5,1,1,6,
+ 1,76,57,74,45,45,4,4,4,4,
+ 3,1,61,1,1,3
};
};
public final static byte scopeLa[] = ScopeLa.scopeLa;
@@ -2267,70 +2373,70 @@ public class CPPNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface ScopeRhs {
public final static char scopeRhs[] = {0,
- 314,2,39,0,127,0,313,2,116,0,
- 127,173,0,127,179,73,0,216,0,291,
- 127,57,126,0,21,0,293,127,57,47,
- 0,21,55,0,34,132,0,21,55,0,
- 0,293,127,57,47,193,0,21,130,0,
- 291,127,57,130,0,185,128,0,138,0,
- 226,2,290,0,290,0,2,0,127,0,
- 185,128,254,253,254,0,131,189,170,128,
- 0,129,0,189,170,128,0,134,129,0,
- 169,0,307,127,169,0,127,169,0,222,
- 129,0,170,245,0,137,0,0,0,135,
- 0,0,0,306,127,60,252,0,128,0,
- 252,0,3,0,0,128,0,305,127,60,
- 0,45,128,0,151,2,0,127,280,279,
- 127,73,278,169,0,279,127,73,278,169,
- 0,215,0,216,0,278,169,0,98,0,
- 0,215,0,216,0,203,98,0,0,215,
- 0,216,0,279,127,278,169,0,215,0,
- 203,0,0,215,0,233,127,2,0,127,
- 0,0,0,0,0,233,127,2,223,0,
- 230,2,0,219,127,0,208,0,148,0,
- 170,128,0,11,0,0,0,221,59,0,
- 126,0,233,127,2,181,0,181,0,2,
- 0,0,127,0,0,0,0,0,202,2,
- 0,201,0,232,127,60,24,42,0,185,
- 128,65,64,0,143,129,0,131,185,128,
- 276,64,0,185,128,276,64,0,185,128,
- 69,1,65,0,232,127,60,65,0,232,
- 127,60,165,65,0,232,127,60,124,65,
- 0,274,127,60,1,61,0,274,127,60,
- 61,0,185,128,61,0,135,0,189,185,
- 128,245,0,137,0,185,128,245,0,189,
- 170,128,8,0,170,128,8,0,95,137,
- 0,267,127,169,0,161,84,0,229,162,
- 229,173,2,81,0,127,172,0,229,173,
- 2,81,0,129,0,127,172,0,229,162,
- 229,162,229,2,81,0,229,162,229,2,
- 81,0,229,2,81,0,129,0,129,0,
- 127,172,0,161,2,75,194,80,0,127,
- 129,0,194,80,0,110,2,131,127,129,
- 0,240,2,75,0,202,172,0,34,170,
- 0,172,0,176,34,170,0,240,2,85,
- 0,194,157,240,2,83,0,64,172,0,
- 240,2,83,0,127,172,64,172,0,302,
- 127,60,0,161,0,221,77,0,31,0,
- 161,112,159,0,31,170,0,226,2,0,
- 221,59,301,0,161,59,0,183,2,296,
- 41,128,0,127,0,0,296,41,128,0,
- 2,147,127,0,0,183,2,30,0,14,
- 148,0,125,47,170,128,0,32,14,148,
- 0,95,137,32,14,148,0,205,185,128,
- 0,148,32,14,148,0,183,2,34,0,
- 161,2,34,0,161,2,66,183,57,26,
- 0,183,57,26,0,21,2,131,127,0,
- 161,2,66,183,57,29,0,183,57,29,
- 0,161,2,66,183,57,31,0,183,57,
- 31,0,161,2,66,183,57,27,0,183,
- 57,27,0,226,2,125,189,170,128,8,
- 0,125,189,170,128,8,0,137,2,0,
- 127,0,226,2,124,259,170,128,8,0,
- 259,170,128,8,0,135,2,0,127,0,
- 226,2,135,0,226,2,140,0,161,59,
- 140,0,261,0,32,0,32,141,0,168,
- 0,134,0,161,2,0
+ 315,3,41,0,127,0,314,3,118,0,
+ 127,174,0,128,180,74,0,217,0,292,
+ 128,59,127,0,21,0,294,128,59,57,
+ 0,21,55,0,34,133,0,21,55,0,
+ 0,294,128,59,57,194,0,21,130,0,
+ 292,128,59,131,0,186,129,0,139,0,
+ 227,3,291,0,291,0,2,0,127,0,
+ 186,129,255,254,255,0,132,190,171,129,
+ 0,129,0,190,171,129,0,135,129,0,
+ 170,0,308,128,170,0,128,170,0,223,
+ 129,0,171,246,0,138,0,0,0,136,
+ 0,0,0,307,128,61,253,0,128,0,
+ 253,0,3,0,0,128,0,306,128,61,
+ 0,45,128,0,152,3,0,128,281,280,
+ 128,74,279,170,0,280,128,74,279,170,
+ 0,216,0,217,0,279,170,0,98,0,
+ 0,216,0,217,0,204,98,0,0,216,
+ 0,217,0,280,128,279,170,0,216,0,
+ 204,0,0,216,0,234,128,3,0,127,
+ 0,0,0,0,0,234,128,3,224,0,
+ 231,3,0,220,128,0,209,0,149,0,
+ 171,129,0,11,0,0,0,222,66,0,
+ 126,0,234,128,3,182,0,182,0,2,
+ 0,0,127,0,0,0,0,0,203,3,
+ 0,202,0,233,128,61,26,44,0,186,
+ 129,67,65,0,144,129,0,132,186,129,
+ 277,65,0,186,129,277,65,0,186,129,
+ 71,124,67,0,233,128,61,67,0,233,
+ 128,61,166,67,0,233,128,61,125,67,
+ 0,275,128,61,124,62,0,275,128,61,
+ 62,0,186,129,62,0,136,0,190,186,
+ 129,246,0,138,0,186,129,246,0,190,
+ 171,129,9,0,171,129,9,0,95,138,
+ 0,268,128,170,0,162,86,0,230,163,
+ 230,174,3,83,0,127,173,0,230,174,
+ 3,83,0,129,0,127,173,0,230,163,
+ 230,163,230,3,83,0,230,163,230,3,
+ 83,0,230,3,83,0,129,0,129,0,
+ 127,173,0,162,3,76,195,81,0,127,
+ 129,0,195,81,0,110,2,132,127,129,
+ 0,241,3,76,0,203,173,0,34,171,
+ 0,173,0,177,34,171,0,241,3,87,
+ 0,195,158,241,3,85,0,64,173,0,
+ 241,3,85,0,127,173,64,173,0,303,
+ 128,61,0,162,0,222,78,0,31,0,
+ 162,114,160,0,31,171,0,227,3,0,
+ 222,66,302,0,162,66,0,184,3,297,
+ 43,129,0,127,0,0,297,43,129,0,
+ 2,148,127,0,0,184,3,32,0,14,
+ 149,0,126,57,171,129,0,32,14,149,
+ 0,95,138,32,14,149,0,206,186,129,
+ 0,149,32,14,149,0,184,3,36,0,
+ 162,3,36,0,162,3,69,184,59,28,
+ 0,184,59,28,0,21,2,132,127,0,
+ 162,3,69,184,59,31,0,184,59,31,
+ 0,162,3,69,184,59,33,0,184,59,
+ 33,0,162,3,69,184,59,29,0,184,
+ 59,29,0,227,3,126,190,171,129,9,
+ 0,126,190,171,129,9,0,138,2,0,
+ 127,0,227,3,125,260,171,129,9,0,
+ 260,171,129,9,0,136,2,0,127,0,
+ 227,3,136,0,227,3,141,0,162,66,
+ 141,0,262,0,32,0,32,142,0,169,
+ 0,135,0,162,3,0
};
};
public final static char scopeRhs[] = ScopeRhs.scopeRhs;
@@ -2338,38 +2444,38 @@ public class CPPNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface ScopeState {
public final static char scopeState[] = {0,
- 1925,0,4845,4814,4386,0,2442,1365,928,1234,
- 0,3967,3926,3885,3844,3803,3762,4761,3566,3525,
- 3150,3109,2937,2872,3703,2807,2742,3632,3606,3466,
- 3407,0,2310,2309,1154,0,2153,2150,0,3967,
- 3926,3885,2046,1819,3844,3803,3762,3566,1808,3525,
- 3150,3109,2005,1047,0,3531,3303,2839,0,2714,
- 2298,0,1276,2654,0,3414,4479,0,3414,4236,
- 3057,3385,4479,2992,4397,4462,4271,3235,4373,4438,
- 3072,2699,2616,0,1694,0,2937,2872,3703,2807,
- 2742,3632,3606,3466,3407,2881,4500,0,2881,4500,
- 2937,2872,3703,2807,2742,3632,3606,3466,3407,3967,
- 3926,3885,3844,3803,3762,3566,3525,3150,3109,0,
- 783,722,0,3235,4236,3777,3057,3385,4754,3072,
- 3706,3031,2824,4724,3042,718,3153,3032,0,2199,
- 2132,1449,1415,3385,3042,2992,2699,2616,2845,2682,
- 0,663,576,0,970,0,4222,533,2301,0,
- 4701,4695,4674,4668,4647,4620,4611,4584,4749,3942,
- 3860,3778,4563,4557,3543,4530,4509,3479,2771,3275,
- 2863,0,4701,4695,3402,2425,4674,4668,4766,2063,
- 4647,4620,4426,4305,4611,2057,4584,2053,1973,4749,
- 1963,1959,3350,1056,3942,3013,3860,3174,2665,3778,
- 4563,4557,875,3543,656,4530,4509,1969,3479,4222,
- 2771,2301,3275,2863,1828,865,616,1104,729,2992,
- 4397,4462,4271,3235,3414,4236,4373,3057,3385,4438,
- 3072,2699,4479,2616,806,790,663,576,4249,2165,
- 2203,2270,2237,2480,2452,2328,2719,2628,2589,2562,
- 2535,2508,3356,3327,3252,2358,590,4200,4178,4156,
- 4134,4112,4090,4068,4046,3727,629,2397,4352,1841,
- 2109,2071,2015,1977,1112,1060,1921,1883,1013,821,
- 1785,1747,745,684,533,1705,1663,1621,1579,1537,
- 1495,1453,1411,1369,1327,1285,1242,1200,966,924,
- 882,1156,0
+ 2671,0,5001,4998,4146,0,3066,3009,952,2634,
+ 0,4345,4304,4263,4222,4181,4140,4995,3918,3877,
+ 2433,3435,3192,3127,4081,3062,2986,4024,3998,3807,
+ 3781,0,1897,1252,866,0,2224,2221,0,4345,
+ 4304,4263,3444,2558,4222,4181,4140,3918,558,3877,
+ 2433,3435,3129,2834,0,4994,4362,4715,0,1994,
+ 677,0,2921,2264,0,4601,4004,0,4601,4535,
+ 4514,3402,4004,2858,4426,4469,3976,2967,4403,4439,
+ 2939,2777,2694,0,1109,0,3192,3127,4081,3062,
+ 2986,4024,3998,3807,3781,4642,4615,0,4642,4615,
+ 3192,3127,4081,3062,2986,4024,3998,3807,3781,4345,
+ 4304,4263,4222,4181,4140,3918,3877,2433,3435,0,
+ 3002,2981,0,2967,4535,3094,4514,3402,2931,2939,
+ 2073,3745,3424,2742,3005,2743,1979,1842,0,1560,
+ 1517,1509,1474,3402,3005,2858,2777,2694,2980,2914,
+ 0,659,578,0,1152,0,3725,534,2372,0,
+ 4890,4869,4836,4815,4782,4761,4726,4704,4923,4281,
+ 4199,3795,4653,4631,3451,4582,3746,3223,3156,3425,
+ 3248,0,4890,4869,2439,2130,4836,4815,4989,2036,
+ 4782,4761,4980,4973,4726,2767,4704,2734,2447,4923,
+ 2216,2122,4956,2028,4281,4940,4199,4905,4555,3795,
+ 4653,4631,1072,3451,672,4582,3746,1899,3223,3725,
+ 3156,2372,3425,3248,1008,996,793,1063,731,2858,
+ 4426,4469,3976,2967,4601,4535,4403,4514,3402,4439,
+ 2939,2777,4004,2694,868,804,659,578,3752,2232,
+ 2271,2340,2306,2553,2524,2399,2803,2707,2666,2638,
+ 2610,2582,3378,3354,3330,2886,591,3702,3679,3656,
+ 3633,3610,3584,3561,3538,3515,3303,928,631,1907,
+ 2177,2138,2083,2044,1165,1120,1989,1950,1077,823,
+ 1854,1813,748,686,534,1770,1727,1684,1641,1598,
+ 1555,1512,1469,1426,1383,1340,1297,1253,1020,953,
+ 885,1208,0
};
};
public final static char scopeState[] = ScopeState.scopeState;
@@ -2377,58 +2483,59 @@ public class CPPNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface InSymb {
public final static char inSymb[] = {0,
- 0,295,127,44,266,34,26,29,31,27,
- 8,135,124,126,6,130,3,2,128,30,
- 25,4,10,9,5,7,12,11,140,145,
- 148,147,150,149,153,152,156,155,158,39,
- 159,68,2,57,57,57,57,128,2,57,
- 172,127,59,2,40,41,57,6,124,161,
- 40,41,170,168,1,124,2,125,124,101,
- 115,2,59,88,94,10,9,90,89,5,
- 92,91,66,57,86,87,7,96,95,98,
- 97,99,111,110,109,108,107,106,105,104,
- 103,102,69,112,100,183,161,172,127,183,
- 183,183,183,170,226,127,127,268,269,252,
- 270,245,271,61,272,273,1,124,8,128,
- 59,59,127,59,296,2,189,3,183,47,
- 4,128,47,226,161,147,147,145,145,145,
- 149,149,149,149,148,148,152,150,150,155,
- 153,156,161,158,127,59,2,224,223,135,
- 8,128,66,66,66,66,189,259,291,133,
- 294,219,128,5,60,170,236,128,125,124,
- 1,60,128,128,185,170,291,203,2,297,
- 172,151,261,189,128,185,170,70,219,221,
- 159,230,127,2,128,170,2,2,2,2,
- 125,124,68,170,127,127,125,124,127,185,
- 127,60,127,185,170,47,183,127,127,3,
- 4,205,47,233,234,146,235,127,170,47,
- 161,161,161,161,2,2,5,184,306,128,
- 190,253,193,64,169,308,127,127,70,189,
- 127,274,247,275,189,157,298,301,59,178,
- 3,125,157,69,230,202,187,181,128,2,
- 127,68,233,189,226,226,127,170,47,276,
- 278,127,2,181,310,254,128,274,69,68,
- 2,59,161,4,3,127,69,69,2,185,
- 170,202,127,219,157,125,189,57,128,73,
- 127,219,307,127,128,124,70,285,202,68,
- 253,185,226,221,4,227,127,127,131,127,
- 185,127,279,70,68,219,170,70,69,254,
- 127,233,227,293,47,8,58,131,279,60,
- 289,128,290,128,39,157,127,68,66,57,
- 236,236,280,127,68,185,2,185,2,127,
- 42,47,169,67,65,64,127,69,69,127,
- 302,79,77,1,161,85,83,81,80,75,
- 82,84,78,76,169,65,73,44,226,314,
- 227,24,57,127,2,60,165,1,124,65,
- 293,281,116,221,70,2,2,2,194,2,
- 1,161,127,1,179,68,127,127,60,66,
- 267,202,277,24,127,60,69,60,128,66,
- 2,240,172,240,173,229,75,240,127,127,
- 2,69,68,157,232,231,127,128,127,185,
- 58,93,313,172,157,202,157,229,162,2,
- 157,281,232,151,60,232,185,232,166,236,
- 157,157,127,69,194,162,229,161,127,166,
- 69,120,229,162,157,305,157,229,68,157
+ 0,296,128,46,267,36,28,31,33,29,
+ 9,136,125,127,7,131,4,3,129,32,
+ 27,5,11,10,6,8,14,13,141,146,
+ 149,148,151,150,154,153,157,156,159,41,
+ 160,70,3,59,59,59,59,129,3,59,
+ 173,128,66,3,42,43,59,7,125,162,
+ 42,43,171,169,124,125,3,126,125,103,
+ 117,3,66,90,96,11,10,92,91,6,
+ 94,93,69,59,88,89,8,98,97,100,
+ 99,101,113,112,111,110,109,108,107,106,
+ 105,104,71,114,102,184,162,173,128,184,
+ 184,184,184,171,227,128,128,269,270,253,
+ 271,246,272,62,273,274,124,125,9,129,
+ 66,66,128,66,297,3,190,4,184,57,
+ 5,129,57,227,162,148,148,146,146,146,
+ 150,150,150,150,149,149,153,151,151,156,
+ 154,157,162,159,128,66,3,225,224,136,
+ 9,129,69,69,69,69,190,260,292,134,
+ 295,220,129,6,61,171,237,129,126,125,
+ 124,61,129,129,186,171,292,204,3,298,
+ 173,152,262,190,129,186,171,73,220,222,
+ 160,231,128,3,129,171,3,3,3,3,
+ 126,125,70,171,128,128,126,125,128,186,
+ 128,61,128,186,171,57,184,128,128,4,
+ 5,206,57,234,235,147,236,128,171,57,
+ 162,162,162,162,3,3,6,185,307,129,
+ 191,254,194,65,170,309,128,128,73,190,
+ 128,275,248,276,190,158,299,302,66,179,
+ 4,126,158,71,231,203,188,182,129,3,
+ 128,70,234,190,227,227,128,171,57,277,
+ 279,128,3,182,311,255,129,275,71,70,
+ 3,66,162,5,4,128,71,71,3,186,
+ 171,203,128,220,158,126,190,59,129,74,
+ 128,220,308,128,129,125,73,286,203,70,
+ 254,186,227,222,5,228,128,128,132,128,
+ 186,128,280,73,70,220,171,73,71,255,
+ 128,234,228,294,57,9,60,132,280,61,
+ 290,129,291,129,41,158,128,70,69,59,
+ 237,237,281,128,70,186,3,186,3,128,
+ 44,57,170,68,67,65,128,71,71,128,
+ 303,80,78,1,162,87,85,83,81,76,
+ 84,86,79,77,170,67,74,46,227,315,
+ 228,26,59,128,3,61,166,124,125,67,
+ 294,282,118,12,222,73,3,3,3,195,
+ 3,124,162,128,124,180,70,128,128,61,
+ 69,268,203,278,26,128,61,71,61,129,
+ 69,3,241,173,241,174,230,76,241,128,
+ 128,3,71,70,158,233,232,128,129,128,
+ 186,60,95,314,173,158,203,158,230,163,
+ 3,158,282,233,152,61,233,186,233,167,
+ 237,158,158,128,71,195,163,230,162,128,
+ 167,71,122,230,163,158,306,158,230,70,
+ 158
};
};
public final static char inSymb[] = InSymb.inSymb;
@@ -2567,6 +2674,7 @@ public class CPPNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
"}",
";",
"declaration",
+ "identifier_token",
"expression",
"id_expression",
"qualified_or_unqualified_name",
@@ -2692,7 +2800,7 @@ public class CPPNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public final String name(int index) { return name[index]; }
public final static int
- ERROR_SYMBOL = 44,
+ ERROR_SYMBOL = 46,
SCOPE_UBOUND = 115,
SCOPE_SIZE = 116,
MAX_NAME_LENGTH = 37;
@@ -2703,20 +2811,20 @@ public class CPPNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public final int getMaxNameLength() { return MAX_NAME_LENGTH; }
public final static int
- NUM_STATES = 520,
+ NUM_STATES = 521,
NT_OFFSET = 123,
- LA_STATE_OFFSET = 5808,
+ LA_STATE_OFFSET = 6057,
MAX_LA = 2147483647,
- NUM_RULES = 532,
- NUM_NONTERMINALS = 202,
- NUM_SYMBOLS = 325,
+ NUM_RULES = 533,
+ NUM_NONTERMINALS = 199,
+ NUM_SYMBOLS = 322,
SEGMENT_SIZE = 8192,
- START_STATE = 2840,
+ START_STATE = 3058,
IDENTIFIER_SYMBOL = 0,
- EOFT_SYMBOL = 114,
- EOLT_SYMBOL = 114,
- ACCEPT_ACTION = 4964,
- ERROR_ACTION = 5276;
+ EOFT_SYMBOL = 116,
+ EOLT_SYMBOL = 116,
+ ACCEPT_ACTION = 5167,
+ ERROR_ACTION = 5524;
public final static boolean BACKTRACK = true;
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPNoCastExpressionParsersym.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPNoCastExpressionParsersym.java
index 0d9dcd26a23..22f4ebc20bb 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPNoCastExpressionParsersym.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPNoCastExpressionParsersym.java
@@ -15,133 +15,134 @@ package org.eclipse.cdt.internal.core.dom.lrparser.cpp;
public interface CPPNoCastExpressionParsersym {
public final static int
- TK_asm = 67,
- TK_auto = 49,
- TK_bool = 13,
- TK_break = 76,
- TK_case = 77,
- TK_catch = 116,
- TK_char = 14,
- TK_class = 58,
- TK_const = 46,
- TK_const_cast = 26,
- TK_continue = 78,
- TK_default = 79,
- TK_delete = 40,
- TK_do = 80,
- TK_double = 15,
- TK_dynamic_cast = 27,
- TK_else = 120,
- TK_enum = 61,
- TK_explicit = 50,
- TK_export = 74,
- TK_extern = 42,
- TK_false = 28,
- TK_float = 16,
- TK_for = 81,
- TK_friend = 51,
- TK_goto = 82,
- TK_if = 83,
- TK_inline = 52,
- TK_int = 17,
- TK_long = 18,
- TK_mutable = 53,
- TK_namespace = 65,
- TK_new = 41,
- TK_operator = 6,
- TK_private = 117,
- TK_protected = 118,
- TK_public = 119,
- TK_register = 54,
- TK_reinterpret_cast = 29,
- TK_return = 84,
- TK_short = 19,
- TK_signed = 20,
- TK_sizeof = 30,
- TK_static = 55,
- TK_static_cast = 31,
- TK_struct = 62,
- TK_switch = 85,
- TK_template = 47,
- TK_this = 32,
- TK_throw = 39,
- TK_try = 73,
- TK_true = 33,
- TK_typedef = 56,
- TK_typeid = 34,
- TK_typename = 8,
- TK_union = 63,
- TK_unsigned = 21,
- TK_using = 64,
- TK_virtual = 45,
- TK_void = 22,
- TK_volatile = 48,
- TK_wchar_t = 23,
- TK_while = 75,
- TK_integer = 35,
- TK_floating = 36,
- TK_charconst = 37,
- TK_stringlit = 24,
+ TK_asm = 68,
+ TK_auto = 50,
+ TK_bool = 15,
+ TK_break = 77,
+ TK_case = 78,
+ TK_catch = 118,
+ TK_char = 16,
+ TK_class = 60,
+ TK_const = 48,
+ TK_const_cast = 28,
+ TK_continue = 79,
+ TK_default = 80,
+ TK_delete = 42,
+ TK_do = 81,
+ TK_double = 17,
+ TK_dynamic_cast = 29,
+ TK_else = 122,
+ TK_enum = 62,
+ TK_explicit = 51,
+ TK_export = 82,
+ TK_extern = 44,
+ TK_false = 30,
+ TK_float = 18,
+ TK_for = 83,
+ TK_friend = 52,
+ TK_goto = 84,
+ TK_if = 85,
+ TK_inline = 53,
+ TK_int = 19,
+ TK_long = 20,
+ TK_mutable = 54,
+ TK_namespace = 67,
+ TK_new = 43,
+ TK_operator = 7,
+ TK_private = 119,
+ TK_protected = 120,
+ TK_public = 121,
+ TK_register = 55,
+ TK_reinterpret_cast = 31,
+ TK_return = 86,
+ TK_short = 21,
+ TK_signed = 22,
+ TK_sizeof = 32,
+ TK_static = 56,
+ TK_static_cast = 33,
+ TK_struct = 63,
+ TK_switch = 87,
+ TK_template = 57,
+ TK_this = 34,
+ TK_throw = 41,
+ TK_try = 74,
+ TK_true = 35,
+ TK_typedef = 58,
+ TK_typeid = 36,
+ TK_typename = 9,
+ TK_union = 64,
+ TK_unsigned = 23,
+ TK_using = 65,
+ TK_virtual = 47,
+ TK_void = 24,
+ TK_volatile = 49,
+ TK_wchar_t = 25,
+ TK_while = 76,
+ TK_integer = 37,
+ TK_floating = 38,
+ TK_charconst = 39,
+ TK_stringlit = 26,
TK_identifier = 1,
- TK_Completion = 121,
- TK_EndOfCompletion = 122,
+ TK_Completion = 2,
+ TK_EndOfCompletion = 12,
TK_Invalid = 123,
- TK_LeftBracket = 59,
- TK_LeftParen = 2,
- TK_LeftBrace = 60,
- TK_Dot = 115,
- TK_DotStar = 94,
- TK_Arrow = 101,
- TK_ArrowStar = 88,
- TK_PlusPlus = 11,
- TK_MinusMinus = 12,
- TK_And = 7,
- TK_Star = 5,
- TK_Plus = 9,
- TK_Minus = 10,
- TK_Tilde = 4,
- TK_Bang = 25,
- TK_Slash = 89,
- TK_Percent = 90,
- TK_RightShift = 86,
- TK_LeftShift = 87,
- TK_LT = 57,
- TK_GT = 66,
- TK_LE = 91,
- TK_GE = 92,
- TK_EQ = 95,
- TK_NE = 96,
- TK_Caret = 97,
- TK_Or = 98,
- TK_AndAnd = 99,
- TK_OrOr = 100,
- TK_Question = 112,
- TK_Colon = 70,
- TK_ColonColon = 3,
- TK_DotDotDot = 93,
- TK_Assign = 69,
- TK_StarAssign = 102,
- TK_SlashAssign = 103,
- TK_PercentAssign = 104,
- TK_PlusAssign = 105,
- TK_MinusAssign = 106,
- TK_RightShiftAssign = 107,
- TK_LeftShiftAssign = 108,
- TK_AndAssign = 109,
- TK_CaretAssign = 110,
- TK_OrAssign = 111,
- TK_Comma = 68,
- TK_zero = 38,
- TK_RightBracket = 113,
- TK_RightParen = 72,
- TK_RightBrace = 71,
- TK_SemiColon = 43,
- TK_ERROR_TOKEN = 44,
- TK_EOF_TOKEN = 114;
+ TK_LeftBracket = 66,
+ TK_LeftParen = 3,
+ TK_LeftBrace = 61,
+ TK_Dot = 117,
+ TK_DotStar = 96,
+ TK_Arrow = 103,
+ TK_ArrowStar = 90,
+ TK_PlusPlus = 13,
+ TK_MinusMinus = 14,
+ TK_And = 8,
+ TK_Star = 6,
+ TK_Plus = 10,
+ TK_Minus = 11,
+ TK_Tilde = 5,
+ TK_Bang = 27,
+ TK_Slash = 91,
+ TK_Percent = 92,
+ TK_RightShift = 88,
+ TK_LeftShift = 89,
+ TK_LT = 59,
+ TK_GT = 69,
+ TK_LE = 93,
+ TK_GE = 94,
+ TK_EQ = 97,
+ TK_NE = 98,
+ TK_Caret = 99,
+ TK_Or = 100,
+ TK_AndAnd = 101,
+ TK_OrOr = 102,
+ TK_Question = 114,
+ TK_Colon = 73,
+ TK_ColonColon = 4,
+ TK_DotDotDot = 95,
+ TK_Assign = 71,
+ TK_StarAssign = 104,
+ TK_SlashAssign = 105,
+ TK_PercentAssign = 106,
+ TK_PlusAssign = 107,
+ TK_MinusAssign = 108,
+ TK_RightShiftAssign = 109,
+ TK_LeftShiftAssign = 110,
+ TK_AndAssign = 111,
+ TK_CaretAssign = 112,
+ TK_OrAssign = 113,
+ TK_Comma = 70,
+ TK_zero = 40,
+ TK_RightBracket = 115,
+ TK_RightParen = 75,
+ TK_RightBrace = 72,
+ TK_SemiColon = 45,
+ TK_ERROR_TOKEN = 46,
+ TK_EOF_TOKEN = 116;
public final static String orderedTerminalSymbols[] = {
"",
"identifier",
+ "Completion",
"LeftParen",
"ColonColon",
"Tilde",
@@ -151,6 +152,7 @@ public interface CPPNoCastExpressionParsersym {
"typename",
"Plus",
"Minus",
+ "EndOfCompletion",
"PlusPlus",
"MinusMinus",
"bool",
@@ -187,7 +189,6 @@ public interface CPPNoCastExpressionParsersym {
"ERROR_TOKEN",
"virtual",
"const",
- "template",
"volatile",
"auto",
"explicit",
@@ -196,31 +197,32 @@ public interface CPPNoCastExpressionParsersym {
"mutable",
"register",
"static",
+ "template",
"typedef",
"LT",
"class",
- "LeftBracket",
"LeftBrace",
"enum",
"struct",
"union",
"using",
+ "LeftBracket",
"namespace",
- "GT",
"asm",
+ "GT",
"Comma",
"Assign",
- "Colon",
"RightBrace",
- "RightParen",
+ "Colon",
"try",
- "export",
+ "RightParen",
"while",
"break",
"case",
"continue",
"default",
"do",
+ "export",
"for",
"goto",
"if",
@@ -261,8 +263,6 @@ public interface CPPNoCastExpressionParsersym {
"protected",
"public",
"else",
- "Completion",
- "EndOfCompletion",
"Invalid"
};
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPParser.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPParser.java
index 92fa9e02a6c..bf56d609485 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPParser.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPParser.java
@@ -185,6 +185,7 @@ private void initActions(IASTTranslationUnit tu) {
public void addToken(IToken token) {
token.setKind(mapKind(token.getKind()));
+ //System.out.println("Token: " + token);
super.addToken(token);
}
@@ -272,1780 +273,1773 @@ public CPPParser(String[] mapFrom) { // constructor
}
//
- // Rule 4: <placeholder> ::= $Empty
+ // Rule 2: <empty> ::= $Empty
//
- case 4: { action.builder.
- consumePlaceHolder(); break;
- }
-
- //
- // Rule 5: <empty> ::= $Empty
- //
- case 5: { action.builder.
+ case 2: { action.builder.
consumeEmpty(); break;
}
//
- // Rule 10: translation_unit ::= external_declaration_list
+ // Rule 11: translation_unit ::= external_declaration_list
//
- case 10: { action.builder.
+ case 11: { action.builder.
consumeTranslationUnit(); break;
}
//
- // Rule 11: translation_unit ::= $Empty
+ // Rule 12: translation_unit ::= $Empty
//
- case 11: { action.builder.
+ case 12: { action.builder.
consumeTranslationUnit(); break;
}
//
- // Rule 15: external_declaration ::= ERROR_TOKEN
+ // Rule 16: external_declaration ::= ERROR_TOKEN
//
- case 15: { action.builder.
+ case 16: { action.builder.
consumeDeclarationProblem(); break;
}
//
- // Rule 16: literal ::= integer
+ // Rule 19: literal ::= integer
//
- case 16: { action.builder.
+ case 19: { action.builder.
consumeExpressionLiteral(ICPPASTLiteralExpression.lk_integer_constant); break;
}
//
- // Rule 17: literal ::= 0
+ // Rule 20: literal ::= 0
//
- case 17: { action.builder.
+ case 20: { action.builder.
consumeExpressionLiteral(ICPPASTLiteralExpression.lk_integer_constant); break;
}
//
- // Rule 18: literal ::= floating
+ // Rule 21: literal ::= floating
//
- case 18: { action.builder.
+ case 21: { action.builder.
consumeExpressionLiteral(ICPPASTLiteralExpression.lk_float_constant); break;
}
//
- // Rule 19: literal ::= charconst
+ // Rule 22: literal ::= charconst
//
- case 19: { action.builder.
+ case 22: { action.builder.
consumeExpressionLiteral(ICPPASTLiteralExpression.lk_char_constant); break;
}
//
- // Rule 20: literal ::= stringlit
+ // Rule 23: literal ::= stringlit
//
- case 20: { action.builder.
+ case 23: { action.builder.
consumeExpressionLiteral(ICPPASTLiteralExpression.lk_string_literal); break;
}
//
- // Rule 21: literal ::= true
+ // Rule 24: literal ::= true
//
- case 21: { action.builder.
+ case 24: { action.builder.
consumeExpressionLiteral(ICPPASTLiteralExpression.lk_true); break;
}
//
- // Rule 22: literal ::= false
+ // Rule 25: literal ::= false
//
- case 22: { action.builder.
+ case 25: { action.builder.
consumeExpressionLiteral(ICPPASTLiteralExpression.lk_false); break;
}
//
- // Rule 23: literal ::= this
+ // Rule 26: literal ::= this
//
- case 23: { action.builder.
+ case 26: { action.builder.
consumeExpressionLiteral(ICPPASTLiteralExpression.lk_this); break;
}
//
- // Rule 25: primary_expression ::= ( expression )
+ // Rule 28: primary_expression ::= ( expression )
//
- case 25: { action.builder.
+ case 28: { action.builder.
consumeExpressionBracketed(); break;
}
//
- // Rule 27: id_expression ::= qualified_or_unqualified_name
+ // Rule 30: id_expression ::= qualified_or_unqualified_name
//
- case 27: { action.builder.
+ case 30: { action.builder.
consumeExpressionName(); break;
}
//
- // Rule 34: unqualified_id_name ::= ~ class_name
+ // Rule 37: unqualified_id_name ::= ~ class_name
//
- case 34: { action.builder.
+ case 37: { action.builder.
consumeDestructorName(); break;
}
//
- // Rule 35: identifier_name ::= identifier
+ // Rule 38: identifier_name ::= identifier_token
//
- case 35: { action.builder.
+ case 38: { action.builder.
consumeIdentifierName(); break;
}
//
- // Rule 36: template_opt ::= template
+ // Rule 39: template_opt ::= template
//
- case 36: { action.builder.
+ case 39: { action.builder.
consumePlaceHolder(); break;
}
//
- // Rule 37: template_opt ::= $Empty
+ // Rule 40: template_opt ::= $Empty
//
- case 37: { action.builder.
+ case 40: { action.builder.
consumeEmpty(); break;
}
//
- // Rule 38: dcolon_opt ::= ::
+ // Rule 41: dcolon_opt ::= ::
//
- case 38: { action.builder.
+ case 41: { action.builder.
consumePlaceHolder(); break;
}
//
- // Rule 39: dcolon_opt ::= $Empty
+ // Rule 42: dcolon_opt ::= $Empty
//
- case 39: { action.builder.
+ case 42: { action.builder.
consumeEmpty(); break;
}
//
- // Rule 40: qualified_id_name ::= dcolon_opt nested_name_specifier template_opt unqualified_id_name
+ // Rule 43: qualified_id_name ::= dcolon_opt nested_name_specifier template_opt unqualified_id_name
//
- case 40: { action.builder.
+ case 43: { action.builder.
consumeQualifiedId(true); break;
}
//
- // Rule 41: qualified_id_name ::= :: identifier_name
+ // Rule 44: qualified_id_name ::= :: identifier_name
//
- case 41: { action.builder.
+ case 44: { action.builder.
consumeGlobalQualifiedId(); break;
}
//
- // Rule 42: qualified_id_name ::= :: operator_function_id_name
+ // Rule 45: qualified_id_name ::= :: operator_function_id_name
//
- case 42: { action.builder.
+ case 45: { action.builder.
consumeGlobalQualifiedId(); break;
}
//
- // Rule 43: qualified_id_name ::= :: template_id_name
+ // Rule 46: qualified_id_name ::= :: template_id_name
//
- case 43: { action.builder.
+ case 46: { action.builder.
consumeGlobalQualifiedId(); break;
}
//
- // Rule 44: nested_name_specifier ::= class_or_namespace_name :: nested_name_specifier_with_template
+ // Rule 47: nested_name_specifier ::= class_or_namespace_name :: nested_name_specifier_with_template
//
- case 44: { action.builder.
+ case 47: { action.builder.
consumeNestedNameSpecifier(true); break;
}
//
- // Rule 45: nested_name_specifier ::= class_or_namespace_name ::
+ // Rule 48: nested_name_specifier ::= class_or_namespace_name ::
//
- case 45: { action.builder.
+ case 48: { action.builder.
consumeNestedNameSpecifier(false); break;
}
//
- // Rule 46: nested_name_specifier_with_template ::= class_or_namespace_name_with_template :: nested_name_specifier_with_template
+ // Rule 49: nested_name_specifier_with_template ::= class_or_namespace_name_with_template :: nested_name_specifier_with_template
//
- case 46: { action.builder.
+ case 49: { action.builder.
consumeNestedNameSpecifier(true); break;
}
//
- // Rule 47: nested_name_specifier_with_template ::= class_or_namespace_name_with_template ::
+ // Rule 50: nested_name_specifier_with_template ::= class_or_namespace_name_with_template ::
//
- case 47: { action.builder.
+ case 50: { action.builder.
consumeNestedNameSpecifier(false); break;
}
//
- // Rule 48: class_or_namespace_name_with_template ::= template_opt class_or_namespace_name
+ // Rule 51: class_or_namespace_name_with_template ::= template_opt class_or_namespace_name
//
- case 48: { action.builder.
+ case 51: { action.builder.
consumeNameWithTemplateKeyword(); break;
}
//
- // Rule 50: nested_name_specifier_opt ::= $Empty
+ // Rule 53: nested_name_specifier_opt ::= $Empty
//
- case 50: { action.builder.
+ case 53: { action.builder.
consumeNestedNameSpecifierEmpty(); break;
}
//
- // Rule 54: postfix_expression ::= postfix_expression [ expression ]
+ // Rule 57: postfix_expression ::= postfix_expression [ expression ]
//
- case 54: { action.builder.
+ case 57: { action.builder.
consumeExpressionArraySubscript(); break;
}
//
- // Rule 55: postfix_expression ::= postfix_expression ( expression_list_opt )
+ // Rule 58: postfix_expression ::= postfix_expression ( expression_list_opt )
//
- case 55: { action.builder.
+ case 58: { action.builder.
consumeExpressionFunctionCall(); break;
}
//
- // Rule 56: postfix_expression ::= simple_type_specifier ( expression_list_opt )
+ // Rule 59: postfix_expression ::= simple_type_specifier ( expression_list_opt )
//
- case 56: { action.builder.
+ case 59: { action.builder.
consumeExpressionSimpleTypeConstructor(); break;
}
//
- // Rule 57: postfix_expression ::= typename dcolon_opt nested_name_specifier <empty> identifier_name ( expression_list_opt )
+ // Rule 60: postfix_expression ::= typename dcolon_opt nested_name_specifier <empty> identifier_name ( expression_list_opt )
//
- case 57: { action.builder.
+ case 60: { action.builder.
consumeExpressionTypeName(); break;
}
//
- // Rule 58: postfix_expression ::= typename dcolon_opt nested_name_specifier template_opt template_id_name ( expression_list_opt )
+ // Rule 61: postfix_expression ::= typename dcolon_opt nested_name_specifier template_opt template_id_name ( expression_list_opt )
//
- case 58: { action.builder.
+ case 61: { action.builder.
consumeExpressionTypeName(); break;
}
//
- // Rule 59: postfix_expression ::= postfix_expression . qualified_or_unqualified_name
+ // Rule 62: postfix_expression ::= postfix_expression . qualified_or_unqualified_name
//
- case 59: { action.builder.
+ case 62: { action.builder.
consumeExpressionFieldReference(false, false); break;
}
//
- // Rule 60: postfix_expression ::= postfix_expression -> qualified_or_unqualified_name
+ // Rule 63: postfix_expression ::= postfix_expression -> qualified_or_unqualified_name
//
- case 60: { action.builder.
+ case 63: { action.builder.
consumeExpressionFieldReference(true, false); break;
}
//
- // Rule 61: postfix_expression ::= postfix_expression . template qualified_or_unqualified_name
+ // Rule 64: postfix_expression ::= postfix_expression . template qualified_or_unqualified_name
//
- case 61: { action.builder.
+ case 64: { action.builder.
consumeExpressionFieldReference(false, true); break;
}
//
- // Rule 62: postfix_expression ::= postfix_expression -> template qualified_or_unqualified_name
+ // Rule 65: postfix_expression ::= postfix_expression -> template qualified_or_unqualified_name
//
- case 62: { action.builder.
+ case 65: { action.builder.
consumeExpressionFieldReference(true, true); break;
}
//
- // Rule 63: postfix_expression ::= postfix_expression . pseudo_destructor_name
+ // Rule 66: postfix_expression ::= postfix_expression . pseudo_destructor_name
//
- case 63: { action.builder.
+ case 66: { action.builder.
consumeExpressionFieldReference(false, false); break;
}
//
- // Rule 64: postfix_expression ::= postfix_expression -> pseudo_destructor_name
+ // Rule 67: postfix_expression ::= postfix_expression -> pseudo_destructor_name
//
- case 64: { action.builder.
+ case 67: { action.builder.
consumeExpressionFieldReference(true, false); break;
}
//
- // Rule 65: postfix_expression ::= postfix_expression ++
+ // Rule 68: postfix_expression ::= postfix_expression ++
//
- case 65: { action.builder.
+ case 68: { action.builder.
consumeExpressionUnaryOperator(IASTUnaryExpression.op_postFixIncr); break;
}
//
- // Rule 66: postfix_expression ::= postfix_expression --
+ // Rule 69: postfix_expression ::= postfix_expression --
//
- case 66: { action.builder.
+ case 69: { action.builder.
consumeExpressionUnaryOperator(IASTUnaryExpression.op_postFixDecr); break;
}
//
- // Rule 67: postfix_expression ::= dynamic_cast < type_id > ( expression )
+ // Rule 70: postfix_expression ::= dynamic_cast < type_id > ( expression )
//
- case 67: { action.builder.
+ case 70: { action.builder.
consumeExpressionCast(ICPPASTCastExpression.op_dynamic_cast); break;
}
//
- // Rule 68: postfix_expression ::= static_cast < type_id > ( expression )
+ // Rule 71: postfix_expression ::= static_cast < type_id > ( expression )
//
- case 68: { action.builder.
+ case 71: { action.builder.
consumeExpressionCast(ICPPASTCastExpression.op_static_cast); break;
}
//
- // Rule 69: postfix_expression ::= reinterpret_cast < type_id > ( expression )
+ // Rule 72: postfix_expression ::= reinterpret_cast < type_id > ( expression )
//
- case 69: { action.builder.
+ case 72: { action.builder.
consumeExpressionCast(ICPPASTCastExpression.op_reinterpret_cast); break;
}
//
- // Rule 70: postfix_expression ::= const_cast < type_id > ( expression )
+ // Rule 73: postfix_expression ::= const_cast < type_id > ( expression )
//
- case 70: { action.builder.
+ case 73: { action.builder.
consumeExpressionCast(ICPPASTCastExpression.op_const_cast); break;
}
//
- // Rule 71: postfix_expression ::= typeid ( expression )
+ // Rule 74: postfix_expression ::= typeid ( expression )
//
- case 71: { action.builder.
+ case 74: { action.builder.
consumeExpressionUnaryOperator(ICPPASTUnaryExpression.op_typeid); break;
}
//
- // Rule 72: postfix_expression ::= typeid ( type_id )
+ // Rule 75: postfix_expression ::= typeid ( type_id )
//
- case 72: { action.builder.
+ case 75: { action.builder.
consumeExpressionTypeId(ICPPASTTypeIdExpression.op_typeid); break;
}
//
- // Rule 73: pseudo_destructor_name ::= dcolon_opt nested_name_specifier_opt type_name :: ~ type_name
+ // Rule 76: pseudo_destructor_name ::= dcolon_opt nested_name_specifier_opt type_name :: ~ type_name
//
- case 73: { action.builder.
+ case 76: { action.builder.
consumePsudoDestructorName(true); break;
}
//
- // Rule 74: pseudo_destructor_name ::= dcolon_opt nested_name_specifier template template_id_name :: ~ type_name
+ // Rule 77: pseudo_destructor_name ::= dcolon_opt nested_name_specifier template template_id_name :: ~ type_name
//
- case 74: { action.builder.
+ case 77: { action.builder.
consumePsudoDestructorName(true); break;
}
//
- // Rule 75: pseudo_destructor_name ::= dcolon_opt nested_name_specifier_opt ~ type_name
+ // Rule 78: pseudo_destructor_name ::= dcolon_opt nested_name_specifier_opt ~ type_name
//
- case 75: { action.builder.
+ case 78: { action.builder.
consumePsudoDestructorName(false); break;
}
//
- // Rule 79: unary_expression ::= ++ cast_expression
+ // Rule 82: unary_expression ::= ++ cast_expression
//
- case 79: { action.builder.
+ case 82: { action.builder.
consumeExpressionUnaryOperator(IASTUnaryExpression.op_prefixIncr); break;
}
//
- // Rule 80: unary_expression ::= -- cast_expression
+ // Rule 83: unary_expression ::= -- cast_expression
//
- case 80: { action.builder.
+ case 83: { action.builder.
consumeExpressionUnaryOperator(IASTUnaryExpression.op_prefixDecr); break;
}
//
- // Rule 81: unary_expression ::= & cast_expression
+ // Rule 84: unary_expression ::= & cast_expression
//
- case 81: { action.builder.
+ case 84: { action.builder.
consumeExpressionUnaryOperator(IASTUnaryExpression.op_amper); break;
}
//
- // Rule 82: unary_expression ::= * cast_expression
+ // Rule 85: unary_expression ::= * cast_expression
//
- case 82: { action.builder.
+ case 85: { action.builder.
consumeExpressionUnaryOperator(IASTUnaryExpression.op_star); break;
}
//
- // Rule 83: unary_expression ::= + cast_expression
+ // Rule 86: unary_expression ::= + cast_expression
//
- case 83: { action.builder.
+ case 86: { action.builder.
consumeExpressionUnaryOperator(IASTUnaryExpression.op_plus); break;
}
//
- // Rule 84: unary_expression ::= - cast_expression
+ // Rule 87: unary_expression ::= - cast_expression
//
- case 84: { action.builder.
+ case 87: { action.builder.
consumeExpressionUnaryOperator(IASTUnaryExpression.op_minus); break;
}
//
- // Rule 85: unary_expression ::= ~ cast_expression
+ // Rule 88: unary_expression ::= ~ cast_expression
//
- case 85: { action.builder.
+ case 88: { action.builder.
consumeExpressionUnaryOperator(IASTUnaryExpression.op_tilde); break;
}
//
- // Rule 86: unary_expression ::= ! cast_expression
+ // Rule 89: unary_expression ::= ! cast_expression
//
- case 86: { action.builder.
+ case 89: { action.builder.
consumeExpressionUnaryOperator(IASTUnaryExpression.op_not); break;
}
//
- // Rule 87: unary_expression ::= sizeof unary_expression
+ // Rule 90: unary_expression ::= sizeof unary_expression
//
- case 87: { action.builder.
+ case 90: { action.builder.
consumeExpressionUnaryOperator(IASTUnaryExpression.op_sizeof); break;
}
//
- // Rule 88: unary_expression ::= sizeof ( type_id )
+ // Rule 91: unary_expression ::= sizeof ( type_id )
//
- case 88: { action.builder.
+ case 91: { action.builder.
consumeExpressionTypeId(ICPPASTTypeIdExpression.op_sizeof); break;
}
//
- // Rule 89: new_expression ::= dcolon_opt new new_placement_opt new_type_id <openscope-ast> new_array_expressions_opt new_initializer_opt
+ // Rule 92: new_expression ::= dcolon_opt new new_placement_opt new_type_id <openscope-ast> new_array_expressions_opt new_initializer_opt
//
- case 89: { action.builder.
+ case 92: { action.builder.
consumeExpressionNew(true); break;
}
//
- // Rule 90: new_expression ::= dcolon_opt new new_placement_opt ( type_id ) new_initializer_opt
+ // Rule 93: new_expression ::= dcolon_opt new new_placement_opt ( type_id ) new_initializer_opt
//
- case 90: { action.builder.
+ case 93: { action.builder.
consumeExpressionNew(false); break;
}
//
- // Rule 93: new_placement_opt ::= $Empty
+ // Rule 96: new_placement_opt ::= $Empty
//
- case 93: { action.builder.
+ case 96: { action.builder.
consumeEmpty(); break;
}
//
- // Rule 94: new_type_id ::= type_specifier_seq
+ // Rule 97: new_type_id ::= type_specifier_seq
//
- case 94: { action.builder.
+ case 97: { action.builder.
consumeTypeId(false); break;
}
//
- // Rule 95: new_type_id ::= type_specifier_seq new_declarator
+ // Rule 98: new_type_id ::= type_specifier_seq new_declarator
//
- case 95: { action.builder.
+ case 98: { action.builder.
consumeTypeId(true); break;
}
//
- // Rule 96: new_declarator ::= <openscope-ast> new_pointer_operators
+ // Rule 99: new_declarator ::= <openscope-ast> new_pointer_operators
//
- case 96: { action.builder.
+ case 99: { action.builder.
consumeNewDeclarator(); break;
}
//
- // Rule 105: new_initializer_opt ::= $Empty
+ // Rule 108: new_initializer_opt ::= $Empty
//
- case 105: { action.builder.
+ case 108: { action.builder.
consumeEmpty(); break;
}
//
- // Rule 106: delete_expression ::= dcolon_opt delete cast_expression
+ // Rule 109: delete_expression ::= dcolon_opt delete cast_expression
//
- case 106: { action.builder.
+ case 109: { action.builder.
consumeExpressionDelete(false); break;
}
//
- // Rule 107: delete_expression ::= dcolon_opt delete [ ] cast_expression
+ // Rule 110: delete_expression ::= dcolon_opt delete [ ] cast_expression
//
- case 107: { action.builder.
+ case 110: { action.builder.
consumeExpressionDelete(true); break;
}
//
- // Rule 109: cast_expression ::= ( type_id ) cast_expression
+ // Rule 112: cast_expression ::= ( type_id ) cast_expression
//
- case 109: { action.builder.
+ case 112: { action.builder.
consumeExpressionCast(ICPPASTCastExpression.op_cast); break;
}
//
- // Rule 111: pm_expression ::= pm_expression .* cast_expression
+ // Rule 114: pm_expression ::= pm_expression .* cast_expression
//
- case 111: { action.builder.
+ case 114: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_pmdot); break;
}
//
- // Rule 112: pm_expression ::= pm_expression ->* cast_expression
+ // Rule 115: pm_expression ::= pm_expression ->* cast_expression
//
- case 112: { action.builder.
+ case 115: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_pmarrow); break;
}
//
- // Rule 114: multiplicative_expression ::= multiplicative_expression * pm_expression
+ // Rule 117: multiplicative_expression ::= multiplicative_expression * pm_expression
//
- case 114: { action.builder.
+ case 117: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_multiply); break;
}
//
- // Rule 115: multiplicative_expression ::= multiplicative_expression / pm_expression
+ // Rule 118: multiplicative_expression ::= multiplicative_expression / pm_expression
//
- case 115: { action.builder.
+ case 118: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_divide); break;
}
//
- // Rule 116: multiplicative_expression ::= multiplicative_expression % pm_expression
+ // Rule 119: multiplicative_expression ::= multiplicative_expression % pm_expression
//
- case 116: { action.builder.
+ case 119: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_modulo); break;
}
//
- // Rule 118: additive_expression ::= additive_expression + multiplicative_expression
+ // Rule 121: additive_expression ::= additive_expression + multiplicative_expression
//
- case 118: { action.builder.
+ case 121: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_plus); break;
}
//
- // Rule 119: additive_expression ::= additive_expression - multiplicative_expression
+ // Rule 122: additive_expression ::= additive_expression - multiplicative_expression
//
- case 119: { action.builder.
+ case 122: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_minus); break;
}
//
- // Rule 121: shift_expression ::= shift_expression << additive_expression
+ // Rule 124: shift_expression ::= shift_expression << additive_expression
//
- case 121: { action.builder.
+ case 124: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_shiftLeft); break;
}
//
- // Rule 122: shift_expression ::= shift_expression >> additive_expression
+ // Rule 125: shift_expression ::= shift_expression >> additive_expression
//
- case 122: { action.builder.
+ case 125: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_shiftRight); break;
}
//
- // Rule 124: relational_expression ::= relational_expression < shift_expression
+ // Rule 127: relational_expression ::= relational_expression < shift_expression
//
- case 124: { action.builder.
+ case 127: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_lessThan); break;
}
//
- // Rule 125: relational_expression ::= relational_expression > shift_expression
+ // Rule 128: relational_expression ::= relational_expression > shift_expression
//
- case 125: { action.builder.
+ case 128: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_greaterThan); break;
}
//
- // Rule 126: relational_expression ::= relational_expression <= shift_expression
+ // Rule 129: relational_expression ::= relational_expression <= shift_expression
//
- case 126: { action.builder.
+ case 129: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_lessEqual); break;
}
//
- // Rule 127: relational_expression ::= relational_expression >= shift_expression
+ // Rule 130: relational_expression ::= relational_expression >= shift_expression
//
- case 127: { action.builder.
+ case 130: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_greaterEqual); break;
}
//
- // Rule 129: equality_expression ::= equality_expression == relational_expression
+ // Rule 132: equality_expression ::= equality_expression == relational_expression
//
- case 129: { action.builder.
+ case 132: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_equals); break;
}
//
- // Rule 130: equality_expression ::= equality_expression != relational_expression
+ // Rule 133: equality_expression ::= equality_expression != relational_expression
//
- case 130: { action.builder.
+ case 133: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_notequals); break;
}
//
- // Rule 132: and_expression ::= and_expression & equality_expression
+ // Rule 135: and_expression ::= and_expression & equality_expression
//
- case 132: { action.builder.
+ case 135: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_binaryAnd); break;
}
//
- // Rule 134: exclusive_or_expression ::= exclusive_or_expression ^ and_expression
+ // Rule 137: exclusive_or_expression ::= exclusive_or_expression ^ and_expression
//
- case 134: { action.builder.
+ case 137: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_binaryXor); break;
}
//
- // Rule 136: inclusive_or_expression ::= inclusive_or_expression | exclusive_or_expression
+ // Rule 139: inclusive_or_expression ::= inclusive_or_expression | exclusive_or_expression
//
- case 136: { action.builder.
+ case 139: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_binaryOr); break;
}
//
- // Rule 138: logical_and_expression ::= logical_and_expression && inclusive_or_expression
+ // Rule 141: logical_and_expression ::= logical_and_expression && inclusive_or_expression
//
- case 138: { action.builder.
+ case 141: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_logicalAnd); break;
}
//
- // Rule 140: logical_or_expression ::= logical_or_expression || logical_and_expression
+ // Rule 143: logical_or_expression ::= logical_or_expression || logical_and_expression
//
- case 140: { action.builder.
+ case 143: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_logicalOr); break;
}
//
- // Rule 142: conditional_expression ::= logical_or_expression ? expression : assignment_expression
+ // Rule 145: conditional_expression ::= logical_or_expression ? expression : assignment_expression
//
- case 142: { action.builder.
+ case 145: { action.builder.
consumeExpressionConditional(); break;
}
//