Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVivian Kong2010-08-09 13:50:49 -0400
committerVivian Kong2010-08-09 13:50:49 -0400
commit67dfed0280e7d1ab094073ae39bf1de78259f672 (patch)
tree4f4516b7f5bd8498c3b38ce700cc57627dc46af8 /lrparser
parente50404e83d88bcca8feb38ab81d80fd2b7ea46fe (diff)
downloadorg.eclipse.cdt-67dfed0280e7d1ab094073ae39bf1de78259f672.tar.gz
org.eclipse.cdt-67dfed0280e7d1ab094073ae39bf1de78259f672.tar.xz
org.eclipse.cdt-67dfed0280e7d1ab094073ae39bf1de78259f672.zip
Bug 315826 Update LR Parser for the template arguments rules - patch by John Liu
Diffstat (limited to 'lrparser')
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/grammar/cpp/CPPGrammar.g179
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/grammar/parserBuild.properties2
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/BaseExtensibleLanguage.java266
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/cpp/CPPBuildASTParserAction.java11
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/lpgextensions/FixedBacktrackingParser.java5
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPExpressionParser.java986
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPExpressionParserprs.java4370
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPExpressionParsersym.java208
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPNoCastExpressionParser.java986
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPNoCastExpressionParserprs.java4370
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPNoCastExpressionParsersym.java208
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPNoFunctionDeclaratorParser.java982
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPNoFunctionDeclaratorParserprs.java4299
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPNoFunctionDeclaratorParsersym.java208
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPParser.java974
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPParserprs.java4354
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPParsersym.java214
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPSizeofExpressionParser.java986
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPSizeofExpressionParserprs.java4376
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPSizeofExpressionParsersym.java208
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPTemplateTypeParameterParser.java986
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPTemplateTypeParameterParserprs.java4419
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPTemplateTypeParameterParsersym.java204
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gpp/GPPParser.java1062
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gpp/GPPParserprs.java5693
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gpp/GPPParsersym.java212
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gpp/GPPSizeofExpressionParser.java1066
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gpp/GPPSizeofExpressionParserprs.java5508
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gpp/GPPSizeofExpressionParsersym.java184
29 files changed, 26691 insertions, 20835 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 76bb4a73da..b73534b49f 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/grammar/cpp/CPPGrammar.g
+++ b/lrparser/org.eclipse.cdt.core.lrparser/grammar/cpp/CPPGrammar.g
@@ -551,6 +551,90 @@ conditional_expression
/. $Build consumeExpressionConditional(); $EndBuild ./
+--rules for template arguments, relational_expression needs brackets when it contains >
+
+relational_expression_inTemplate
+ ::= shift_expression
+ | relational_expression_inTemplate '<' shift_expression
+ /. $Build consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_lessThan); $EndBuild ./
+ | '(' relational_expression_inTemplate '>' shift_expression ')'
+ /. $Build consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_greaterThan); $EndBuild ./
+ | relational_expression_inTemplate '<=' shift_expression
+ /. $Build consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_lessEqual); $EndBuild ./
+ | relational_expression_inTemplate '>=' shift_expression
+ /. $Build consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_greaterEqual); $EndBuild ./
+
+equality_expression_inTemplate
+ ::= relational_expression_inTemplate
+ | equality_expression_inTemplate '==' relational_expression_inTemplate
+ /. $Build consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_equals); $EndBuild ./
+ | equality_expression_inTemplate '!=' relational_expression_inTemplate
+ /. $Build consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_notequals); $EndBuild ./
+
+
+and_expression_inTemplate
+ ::= equality_expression_inTemplate
+ | and_expression_inTemplate '&' equality_expression_inTemplate
+ /. $Build consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_binaryAnd); $EndBuild ./
+exclusive_or_expression_inTemplate
+ ::= and_expression_inTemplate
+ | exclusive_or_expression_inTemplate '^' and_expression_inTemplate
+ /. $Build consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_binaryXor); $EndBuild ./
+
+
+inclusive_or_expression_inTemplate
+ ::= exclusive_or_expression_inTemplate
+ | inclusive_or_expression_inTemplate '|' exclusive_or_expression_inTemplate
+ /. $Build consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_binaryOr); $EndBuild ./
+
+
+logical_and_expression_inTemplate
+ ::= inclusive_or_expression_inTemplate
+ | logical_and_expression_inTemplate '&&' inclusive_or_expression_inTemplate
+ /. $Build consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_logicalAnd); $EndBuild ./
+
+
+logical_or_expression_inTemplate
+ ::= logical_and_expression_inTemplate
+ | logical_or_expression_inTemplate '||' logical_and_expression_inTemplate
+ /. $Build consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_logicalOr); $EndBuild ./
+
+
+conditional_expression_inTemplate
+ ::= logical_or_expression_inTemplate
+ | logical_or_expression_inTemplate '?' expression ':' assignment_expression_inTemplate
+ /. $Build consumeExpressionConditional(); $EndBuild ./
+
+assignment_expression_inTemplate
+ ::= conditional_expression_inTemplate
+ | throw_expression
+ | logical_or_expression_inTemplate '=' assignment_expression_inTemplate
+ /. $Build consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_assign); $EndBuild ./
+ | logical_or_expression_inTemplate '*=' assignment_expression_inTemplate
+ /. $Build consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_multiplyAssign); $EndBuild ./
+ | logical_or_expression_inTemplate '/=' assignment_expression_inTemplate
+ /. $Build consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_divideAssign); $EndBuild ./
+ | logical_or_expression_inTemplate '%=' assignment_expression_inTemplate
+ /. $Build consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_moduloAssign); $EndBuild ./
+ | logical_or_expression_inTemplate '+=' assignment_expression_inTemplate
+ /. $Build consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_plusAssign); $EndBuild ./
+ | logical_or_expression_inTemplate '-=' assignment_expression_inTemplate
+ /. $Build consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_minusAssign); $EndBuild ./
+ | logical_or_expression_inTemplate '>>=' assignment_expression_inTemplate
+ /. $Build consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_shiftRightAssign); $EndBuild ./
+ | logical_or_expression_inTemplate '<<=' assignment_expression_inTemplate
+ /. $Build consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_shiftLeftAssign); $EndBuild ./
+ | logical_or_expression_inTemplate '&=' assignment_expression_inTemplate
+ /. $Build consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_binaryAndAssign); $EndBuild ./
+ | logical_or_expression_inTemplate '^=' assignment_expression_inTemplate
+ /. $Build consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_binaryXorAssign); $EndBuild ./
+ | logical_or_expression_inTemplate '|=' assignment_expression_inTemplate
+ /. $Build consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_binaryOrAssign); $EndBuild ./
+
+
+
+
+--end of rules for template arguments
throw_expression
::= 'throw'
/. $Build consumeExpressionThrow(false); $EndBuild ./
@@ -1185,7 +1269,6 @@ type_specifier_seq
::= declaration_specifiers
-
abstract_declarator
::= direct_abstract_declarator
| <openscope-ast> ptr_operator_seq
@@ -1583,28 +1666,110 @@ type_parameter
/. $Build consumeTemplatedTypeTemplateParameter(true); $EndBuild ./
-
template_id_name
::= identifier_name '<' <openscope-ast> template_argument_list_opt '>'
/. $Build consumeTemplateId(); $EndBuild ./
+-- | ERROR_TOKEN
+-- /. $Build consumeTemplateIDError(); $EndBuild ./
template_argument_list
::= template_argument
- | template_argument_list ',' template_argument
+ | template_argument_list ',' template_argument
template_argument_list_opt
::= template_argument_list
| $empty
+--type_id in template
+
+class_name_inTemplate
+ ::= identifier_name
+
+class_or_namespace_name_inTemplate -- just identifiers
+ ::= class_name_inTemplate
+ --| namespace_name -- namespace_name name can only be an identifier token, which is already accepted by
+
+nested_name_specifier_inTemplate
+ ::= class_or_namespace_name_inTemplate '::' nested_name_specifier_with_template_inTemplate
+ /. $Build consumeNestedNameSpecifier(true); $EndBuild ./
+ | class_or_namespace_name_inTemplate '::'
+ /. $Build consumeNestedNameSpecifier(false); $EndBuild ./
+
+
+nested_name_specifier_with_template_inTemplate
+ ::= class_or_namespace_name_with_template_inTemplate '::' nested_name_specifier_with_template_inTemplate
+ /. $Build consumeNestedNameSpecifier(true); $EndBuild ./
+ | class_or_namespace_name_with_template_inTemplate '::'
+ /. $Build consumeNestedNameSpecifier(false); $EndBuild ./
+
+
+class_or_namespace_name_with_template_inTemplate
+ ::= template_opt class_or_namespace_name_inTemplate
+ /. $Build consumeNameWithTemplateKeyword(); $EndBuild ./
+
+nested_name_specifier_opt_inTemplate
+ ::= nested_name_specifier_inTemplate
+ | $empty
+ /. $Build consumeNestedNameSpecifierEmpty(); $EndBuild ./
+
+
+type_name_inTemplate -- all identifiers of some kind
+ ::= class_name_inTemplate
+
+-- last two rules moved here from simple_type_specifier
+type_name_specifier_inTemplate -- all identifiers of some kind
+ ::= type_name_inTemplate
+-- | dcolon_opt nested_name_specifier_opt_inTemplate type_name_inTemplate
+-- /. $Build consumeQualifiedId(false); $EndBuild ./
+-- | dcolon_opt nested_name_specifier_inTemplate 'template' template_id_name
+-- /. $Build consumeQualifiedId(false); $EndBuild ./
+ | 'typename' dcolon_opt nested_name_specifier identifier_name
+ /. $Build consumeQualifiedId(false); $EndBuild ./
+ | 'typename' dcolon_opt nested_name_specifier template_opt template_id_name
+ /. $Build consumeQualifiedId(true); $EndBuild ./
+ | 'typename' identifier_name
+
+type_name_declaration_specifiers_inTemplate
+ ::= type_name_specifier_inTemplate
+ | no_type_declaration_specifiers type_name_specifier_inTemplate
+ | type_name_declaration_specifiers_inTemplate no_type_declaration_specifier
+
+
+
+declaration_specifiers_inTemplate
+ ::= <openscope-ast> simple_declaration_specifiers
+ /. $Build consumeDeclarationSpecifiersSimple(); $EndBuild ./
+ | <openscope-ast> class_declaration_specifiers
+ /. $Build consumeDeclarationSpecifiersComposite(); $EndBuild ./
+ | <openscope-ast> elaborated_declaration_specifiers
+ /. $Build consumeDeclarationSpecifiersComposite(); $EndBuild ./
+ | <openscope-ast> enum_declaration_specifiers
+ /. $Build consumeDeclarationSpecifiersComposite(); $EndBuild ./
+ | <openscope-ast> type_name_declaration_specifiers_inTemplate
+ /. $Build consumeDeclarationSpecifiersTypeName(); $EndBuild ./
+
+
+type_specifier_seq_inTemplate
+ ::= declaration_specifiers_inTemplate
+
+
+type_id_inTemplate
+ ::= type_specifier_seq_inTemplate
+ /. $Build consumeTypeId(false); $EndBuild ./
+ | type_specifier_seq_inTemplate abstract_declarator
+ /. $Build consumeTypeId(true); $EndBuild ./
+
+--end type_id in template
+
template_argument
- ::= assignment_expression
- /. $Build consumeTemplateArgumentExpression(); $EndBuild ./
- | type_id
+ ::= assignment_expression_inTemplate
+ /. $Build consumeTemplateArgumentExpression(); $EndBuild ./
+ | type_id_inTemplate
/. $Build consumeTemplateArgumentTypeId(); $EndBuild ./
- --| qualified_or_unqualified_name -- accessible through assignment_expression
+
explicit_instantiation
::= 'template' declaration
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/grammar/parserBuild.properties b/lrparser/org.eclipse.cdt.core.lrparser/grammar/parserBuild.properties
index cc949e32c4..171f464603 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/grammar/parserBuild.properties
+++ b/lrparser/org.eclipse.cdt.core.lrparser/grammar/parserBuild.properties
@@ -11,4 +11,4 @@
###############################################################################
lpg_exe=D:/lpg/lpgdistribution/lpgexe/lpg.exe
-lpg_template=D:/newWorkspace/cdt_70_ies/org.eclipse.cdt.core.lrparser/grammar/template \ No newline at end of file
+lpg_template=D:/newWorkspace/rdp80_dev/org.eclipse.cdt.core.lrparser/grammar/template \ No newline at end of file
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 41acd064f1..9994baf277 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
@@ -10,15 +10,24 @@
*******************************************************************************/
package org.eclipse.cdt.core.dom.lrparser;
+import java.io.PrintWriter;
+import java.io.StringWriter;
+import java.util.ArrayList;
import java.util.HashMap;
+import java.util.List;
import java.util.Map;
+import lpg.lpgjavaruntime.IToken;
+import lpg.lpgjavaruntime.PrsStream;
+import lpg.lpgjavaruntime.Token;
+
import org.eclipse.cdt.core.dom.ICodeReaderFactory;
import org.eclipse.cdt.core.dom.ast.IASTCompletionNode;
import org.eclipse.cdt.core.dom.ast.IASTName;
import org.eclipse.cdt.core.dom.ast.IASTTranslationUnit;
import org.eclipse.cdt.core.dom.ast.gnu.c.GCCLanguage;
import org.eclipse.cdt.core.dom.ast.gnu.cpp.GPPLanguage;
+import org.eclipse.cdt.core.dom.lrparser.action.ITokenStream;
import org.eclipse.cdt.core.dom.parser.CLanguageKeywords;
import org.eclipse.cdt.core.dom.parser.IScannerExtensionConfiguration;
import org.eclipse.cdt.core.index.IIndex;
@@ -53,8 +62,20 @@ public abstract class BaseExtensibleLanguage extends AbstractLanguage {
private static final boolean DEBUG_PRINT_GCC_AST = false;
private static final boolean DEBUG_PRINT_AST = false;
-
+ // default 0.5 min
+ private long parser_timeout_limit_lowerBoundary = 1 * 30 * 1000;
+ // default 2 mins
+ private long parser_timeout_limit_uppperBoundary = 1 * 60 * 1000;
+ //time limit for each token, 1ms
+ public static long UNIT_PARSER_TIMEOUT_LIMIT = 10;
+
+ private static long LONGEST_CORE_RUNTIME;
+ private static long LONGEST_LPR_RUNTIME;
+
+ public static boolean CATCH_TEMPLATEID_ERROR = false;
+
+ private ICLanguageKeywords keywords = null;
/**
* Retrieve the parser (runs after the preprocessor runs).
@@ -64,6 +85,13 @@ public abstract class BaseExtensibleLanguage extends AbstractLanguage {
*/
protected abstract IParser<IASTTranslationUnit> getParser(IScanner scanner, IIndex index, Map<String,String> properties);
+ protected IParser<IASTTranslationUnit> getCompleteParser(IScanner scanner, IIndex index, Map<String,String> properties){
+ return getParser(scanner, index, properties);
+ }
+ protected ISecondaryParser<IASTTranslationUnit> getCompleteParser(ITokenStream stream, IScanner scanner, IIndex index, Map<String,String> properties){
+ return (ISecondaryParser)getParser(scanner, index, properties);
+ }
+
/**
* Returns the ParserLanguage value that is to be used when creating
* an instance of CPreprocessor.
@@ -77,6 +105,25 @@ public abstract class BaseExtensibleLanguage extends AbstractLanguage {
*/
protected abstract IScannerExtensionConfiguration getScannerExtensionConfiguration();
+ private class ParseThread<AST_TYPE> extends Thread{
+ ParseThread(){
+ super();
+ super.setName("ParserThread");
+ }
+ AST_TYPE astUnit = null;
+ AST_TYPE getASTUnit(){
+ return astUnit;
+ }
+ }
+
+ private <AST_TYPE> AST_TYPE runThreadByLimitedTime(long limitTime, ParseThread<AST_TYPE> parseThread) throws InterruptedException{
+ parseThread.start();
+
+ parseThread.join(limitTime);
+
+ return parseThread.getASTUnit();
+ }
+
@Override @Deprecated
public IASTTranslationUnit getASTTranslationUnit(org.eclipse.cdt.core.parser.CodeReader reader,
@@ -85,12 +132,29 @@ public abstract class BaseExtensibleLanguage extends AbstractLanguage {
return getASTTranslationUnit(FileContent.adapt(reader), scanInfo, IncludeFileContentProvider
.adapt(codeReaderFactory), index, options, log);
}
-
+
+ public void setParser_timeout_limit_lowerBoundary(
+ long parser_timeout_limit_lowerBoundary) {
+ this.parser_timeout_limit_lowerBoundary = parser_timeout_limit_lowerBoundary;
+ }
+
+ public void setParser_timeout_limit_uppperBoundary(
+ long parser_timeout_limit_uppperBoundary) {
+ this.parser_timeout_limit_uppperBoundary = parser_timeout_limit_uppperBoundary;
+ }
+
@Override
- public IASTTranslationUnit getASTTranslationUnit(FileContent reader, IScannerInfo scanInfo,
- IncludeFileContentProvider fileCreator, IIndex index, int options, IParserLogService log)
+ public IASTTranslationUnit getASTTranslationUnit(final FileContent reader, final IScannerInfo scanInfo,
+ final IncludeFileContentProvider fileCreator, final IIndex index, int options, final IParserLogService log)
throws CoreException {
-
+ CATCH_TEMPLATEID_ERROR = false;
+ long startTime=0;
+ java.util.Date today=null;
+ if(log.isTracing()){
+ today = new java.util.Date();
+ startTime = today.getTime();
+ log.traceLog("^^^^^^ Start parsing " + reader.getFileLocation() + " at " + new java.sql.Timestamp(startTime));
+ }
IASTTranslationUnit gtu = null;
if(DEBUG_PRINT_GCC_AST) {
System.out.println("\n********************************************************\nParsing\nOptions: " + options);
@@ -103,31 +167,160 @@ public abstract class BaseExtensibleLanguage extends AbstractLanguage {
System.out.println();
}
- IScannerExtensionConfiguration config = getScannerExtensionConfiguration();
+ final IScannerExtensionConfiguration config = getScannerExtensionConfiguration();
- ParserLanguage pl = getParserLanguage();
- IScanner preprocessor = new CPreprocessor(reader, scanInfo, pl, log, config, fileCreator);
+ final ParserLanguage pl = getParserLanguage();
+ final IScanner preprocessor = new CPreprocessor(reader, scanInfo, pl, log, config, fileCreator);
preprocessor.setComputeImageLocations((options & ILanguage.OPTION_NO_IMAGE_LOCATIONS) == 0);
- Map<String,String> parserProperties = new HashMap<String,String>();
+ final Map<String,String> parserProperties = new HashMap<String,String>();
parserProperties.put(LRParserProperties.TRANSLATION_UNIT_PATH, reader.getFileLocation());
if((options & OPTION_SKIP_FUNCTION_BODIES) != 0)
parserProperties.put(LRParserProperties.SKIP_FUNCTION_BODIES, "true");
if((options & OPTION_SKIP_TRIVIAL_EXPRESSIONS_IN_AGGREGATE_INITIALIZERS) != 0)
parserProperties.put(LRParserProperties.SKIP_TRIVIAL_EXPRESSIONS_IN_AGGREGATE_INITIALIZERS, "true");
- IParser<IASTTranslationUnit> parser = getParser(preprocessor, index, parserProperties);
- IASTTranslationUnit tu = parser.parse();
- tu.setIsHeaderUnit((options & OPTION_IS_SOURCE_UNIT) == 0); // the TU is marked as either a source file or a header file
+ final IParser<IASTTranslationUnit> parser = getParser(preprocessor, index, parserProperties);
+ long parser_timeout_limit = parser_timeout_limit_uppperBoundary;
+ if(parser instanceof PrsStream){
+ int token_size = ((PrsStream)parser).getSize();
+ parser_timeout_limit = token_size * UNIT_PARSER_TIMEOUT_LIMIT;
+ if(parser_timeout_limit < parser_timeout_limit_lowerBoundary)
+ parser_timeout_limit = parser_timeout_limit_lowerBoundary;
+ if(parser_timeout_limit > parser_timeout_limit_uppperBoundary)
+ parser_timeout_limit = parser_timeout_limit_uppperBoundary;
+ log.traceLog("^^^^^^ adjusted time out limit with token size: " + token_size + " and the time out limit: " + parser_timeout_limit);
+ }
+ IASTTranslationUnit tu = null;
+ //real token size, substract a dummy token and a eof token
+ final int orgTokenSize = ((PrsStream)parser).getTokens().size();
+ //final List orginalTokens = copyList(((PrsStream)parser).getTokens());
+ ParseThread<IASTTranslationUnit> parseThread = new ParseThread<IASTTranslationUnit>() {
+
+ @Override
+ public void run() {
+ try{
+ astUnit = parser.parse();
+ }
+
+ catch (Exception e) {
+
+ /*
+ if(e instanceof TemplateIDErrorException){
+ //IScanner completePreprocessor = new CPreprocessor(reader, scanInfo, pl, log, config, fileCreator);
+ //IParser<IASTTranslationUnit> completeParser = getCompleteParser(preprocessor, index, parserProperties);
+
+ ISecondaryParser<IASTTranslationUnit> completeParser = getCompleteParser((ITokenStream)parser, preprocessor, index, parserProperties);
+ //completeParser.setAction(parser.getAction());
+ //((ISecondaryParser)completeParser).setTokenMap((ITokenStream)parser);
+ //copyTokensToParser((PrsStream)completeParser, ((PrsStream)parser).getTokens().subList(0, orgTokenSize));
+ ((ISecondaryParser)completeParser).setTokens(((PrsStream)parser).getTokens().subList(1, orgTokenSize-1));
+ astUnit = completeParser.parse();
+ }else{
+ */
+ if(log.isTracing()){
+ StringWriter stringW = new StringWriter();
+ PrintWriter printW = new PrintWriter(stringW);
+ e.printStackTrace(printW);
+
+ log.traceLog("^^^^^^ PARSER_ERR_STACK" + stringW.toString());
+ }
+ //}
+
+ }
+
+ }
+
+ };
+
+ try {
+ tu = runThreadByLimitedTime(parser_timeout_limit, parseThread);
+ } catch (InterruptedException e) {
+
+ StringWriter stringW = new StringWriter();
+ PrintWriter printW = new PrintWriter(stringW);
+ e.printStackTrace(printW);
+
+
+ log.traceLog("^^^^^^_ERR_STACK" + stringW.toString());
+ //e.printStackTrace();
+ }
+ parseThread.stop();
+ long lprFinishTime=0;
+ long coreFinishTime=0;
+ if(log.isTracing()){
+ today = new java.util.Date();
+ lprFinishTime = today.getTime();
+ }
+
+ if(tu==null){
+ long lpr_fail_time=0;
+ if(log.isTracing()){
+ lpr_fail_time = lprFinishTime;
+ log.traceLog("^^^^^^ LR parser fails in parsing " + reader.getFileLocation() + " after running " + (lpr_fail_time-startTime)/1000 + " seconds");
+ }
+
+ ILanguage gppLanguage = getParserLanguage() == ParserLanguage.CPP ? GPPLanguage.getDefault() : GCCLanguage.getDefault();
+ tu = gppLanguage.getASTTranslationUnit(reader, scanInfo, fileCreator, index, options, log);
+ if(log.isTracing()){
+ today = new java.util.Date();
+ coreFinishTime = today.getTime();
+
+ log.traceLog("^^^^^^ core parser parses " + reader.getFileLocation() + " in " + (coreFinishTime - lpr_fail_time)/1000 + " seconds");
+ }
+ }
+ if(tu!=null){
+ tu.setIsHeaderUnit((options & OPTION_IS_SOURCE_UNIT) == 0); // the TU is marked as either a source file or a header file
+ }
if(DEBUG_PRINT_AST) {
System.out.println("Base Extensible Language AST:");
ASTPrinter.print(tu);
}
+ long finishTime ;
+ if(log.isTracing()){
+ if(coreFinishTime>0){
+ //parsed by core parser.
+ finishTime = coreFinishTime;
+ long core_runtime = finishTime - startTime;
+ log.traceLog("^^^^^^ Finish parsing with cdt core parser " + reader.getFileLocation() + " at " + new java.sql.Timestamp(finishTime) + " runtime: " + core_runtime);
+ if(core_runtime > LONGEST_CORE_RUNTIME){
+ LONGEST_CORE_RUNTIME = core_runtime;
+ log.traceLog("^^^^^^ CLCLCLCL so far the longest runtime with core parser is: " + core_runtime/1000);
+ }
+ }else{
+ finishTime = lprFinishTime;
+ long lpr_runtime = finishTime - startTime;
+ log.traceLog("^^^^^^ Finish parsing " + reader.getFileLocation() + " at " + new java.sql.Timestamp(finishTime) + " runtime: " + lpr_runtime);
+ if(lpr_runtime > LONGEST_LPR_RUNTIME){
+ LONGEST_LPR_RUNTIME = lpr_runtime;
+ log.traceLog("^^^^^^ LLLLLLLL so far the longest runtime by LPR Parser is: " + lpr_runtime/1000);
+ }
+ }
+ }
return tu;
}
+ public void copyTokensToParser(PrsStream parser, List<IToken> tokens) {
+ parser.resetTokenStream();
+
+ for(IToken token : tokens) {
+
+ parser.addToken(token);
+ }
+
+ }
+
+ public List copyList(List orgList){
+ List returnList = new ArrayList(orgList.size());
+ for(int i=0; i<orgList.size(); i++){
+ returnList.add(orgList.get(i));
+ }
+ return returnList;
+
+ }
+
@Deprecated
public IASTTranslationUnit getASTTranslationUnit(org.eclipse.cdt.core.parser.CodeReader reader,
IScannerInfo scanInfo, ICodeReaderFactory fileCreator, IIndex index, IParserLogService log)
@@ -172,10 +365,53 @@ public abstract class BaseExtensibleLanguage extends AbstractLanguage {
parserProperties.put(LRParserProperties.SKIP_FUNCTION_BODIES, "true");
parserProperties.put(LRParserProperties.SKIP_TRIVIAL_EXPRESSIONS_IN_AGGREGATE_INITIALIZERS, "true");
- IParser<IASTTranslationUnit> parser = getParser(preprocessor, index, parserProperties);
- parser.parse();
+ final IParser<IASTTranslationUnit> parser = getParser(preprocessor, index, parserProperties);
- IASTCompletionNode completionNode = parser.getCompletionNode();
+ long parser_timeout_limit = parser_timeout_limit_uppperBoundary;
+ if(parser instanceof PrsStream){
+ int token_size = ((PrsStream)parser).getSize();
+ parser_timeout_limit = token_size * UNIT_PARSER_TIMEOUT_LIMIT;
+ if(parser_timeout_limit < parser_timeout_limit_lowerBoundary)
+ parser_timeout_limit = parser_timeout_limit_lowerBoundary;
+ if(parser_timeout_limit > parser_timeout_limit_uppperBoundary)
+ parser_timeout_limit = parser_timeout_limit_uppperBoundary;
+ if(log.isTracing()){
+ log.traceLog("^^^^^^ adjusted time out limit with token size: " + token_size + " and the time out limit: " + parser_timeout_limit);
+ }
+ }
+ ParseThread<IASTCompletionNode> parseThread = new ParseThread<IASTCompletionNode>() {
+
+ @Override
+ public void run() {
+ parser.parse();
+ astUnit = parser.getCompletionNode();
+ }
+
+ };
+
+ IASTCompletionNode completionNode=null;
+ try {
+ completionNode = runThreadByLimitedTime(parser_timeout_limit*100, parseThread);
+ } catch (InterruptedException e) {
+ if(log.isTracing()){
+ StringWriter stringW = new StringWriter();
+ PrintWriter printW = new PrintWriter(stringW);
+ e.printStackTrace(printW);
+
+
+ log.traceLog("^^^^^^_ERR_STACK" + stringW.toString());
+ }
+ //e.printStackTrace();
+ }
+ parseThread.stop();
+ if(completionNode==null){
+ log.traceLog("LR parser fails in parsing " + reader.getFileLocation());
+ if(log.isTracing()){
+ log.traceLog("LR parser fails in parsing " + reader.getFileLocation());
+ }
+ ILanguage gppLanguage = getParserLanguage() == ParserLanguage.CPP ? GPPLanguage.getDefault() : GCCLanguage.getDefault();
+ completionNode=gppLanguage.getCompletionNode(reader, scanInfo, fileCreator, index, log, offset);
+ }
if(DEBUG_PRINT_AST) {
System.out.println("Base Extensible Language AST:");
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 a7ca0726c8..99a1629a7f 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
@@ -478,7 +478,16 @@ public class CPPBuildASTParserAction extends BuildASTParserAction {
IASTExpression expr = (IASTExpression) astStack.peek();
if(expr instanceof IASTIdExpression) {
- IASTName name = ((IASTIdExpression)expr).getName().copy();
+ IASTName orgName =((IASTIdExpression)expr).getName();
+ IASTName name = null;
+ try{
+ name = orgName.copy();
+ //if there is node throws UnsupportedOperationException in copy, just use the original node
+ } catch(UnsupportedOperationException ue){
+ name = orgName;
+ }
+
+ ParserUtil.setOffsetAndLength(name, expr);
IASTNamedTypeSpecifier declSpec = nodeFactory.newTypedefNameSpecifier(name);
ParserUtil.setOffsetAndLength(declSpec, name);
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/lpgextensions/FixedBacktrackingParser.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/lpgextensions/FixedBacktrackingParser.java
index e002668fdb..9ffd366942 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/lpgextensions/FixedBacktrackingParser.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/lpgextensions/FixedBacktrackingParser.java
@@ -305,11 +305,14 @@ public class FixedBacktrackingParser extends Stacks
current_kind = tokStream.getKind(curtok),
act = tAction(stateStack[stateStackTop], current_kind);
+ int count = 0;
+
//
// The main driver loop
//
for (;;)
{
+ count++;
//
// if the parser needs to stop processing,
// it may do so here.
@@ -390,6 +393,8 @@ public class FixedBacktrackingParser extends Stacks
//System.out.println("****Number of actions: " + action.size());
//System.out.println("****Max Stack Size = " + maxStackTop);
//System.out.flush();
+ System.out.println("The backtrace parser count is: " + count );
+
return (act == ERROR_ACTION ? error_token : 0);
}
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPExpressionParser.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPExpressionParser.java
index 71bae636f8..1394071163 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPExpressionParser.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPExpressionParser.java
@@ -248,7 +248,13 @@ public void setTokens(List<IToken> tokens) {
public CPPExpressionParser(ITokenStream stream, Map<String,String> properties) { // constructor for creating secondary parser
initActions(properties);
tokenMap = new TokenMap(CPPExpressionParsersym.orderedTerminalSymbols, stream.getOrderedTerminalSymbols());
-}
+}
+
+ public CPPExpressionParser(ITokenStream stream, IScanner scanner, IBuiltinBindingsProvider builtinBindingsProvider, IIndex index, Map<String,String> properties) { // constructor for creating secondary parser
+ initActions(properties);
+ action.initializeTranslationUnit(scanner, builtinBindingsProvider, index);
+ tokenMap = new TokenMap(CPPExpressionParsersym.orderedTerminalSymbols, stream.getOrderedTerminalSymbols());
+}
public void ruleAction(int ruleNumber)
@@ -815,1131 +821,1359 @@ public CPPExpressionParser(ITokenStream stream, Map<String,String> properties) {
}
//
- // Rule 141: throw_expression ::= throw
+ // Rule 142: relational_expression_inTemplate ::= relational_expression_inTemplate < shift_expression
//
- case 141: { action. consumeExpressionThrow(false); break;
+ case 142: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_lessThan); break;
}
//
- // Rule 142: throw_expression ::= throw assignment_expression
+ // Rule 143: relational_expression_inTemplate ::= ( relational_expression_inTemplate > shift_expression )
//
- case 142: { action. consumeExpressionThrow(true); break;
+ case 143: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_greaterThan); break;
}
//
- // Rule 145: assignment_expression ::= logical_or_expression = assignment_expression
+ // Rule 144: relational_expression_inTemplate ::= relational_expression_inTemplate <= shift_expression
//
- case 145: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_assign); break;
+ case 144: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_lessEqual); break;
}
//
- // Rule 146: assignment_expression ::= logical_or_expression *= assignment_expression
+ // Rule 145: relational_expression_inTemplate ::= relational_expression_inTemplate >= shift_expression
//
- case 146: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_multiplyAssign); break;
+ case 145: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_greaterEqual); break;
}
//
- // Rule 147: assignment_expression ::= logical_or_expression /= assignment_expression
+ // Rule 147: equality_expression_inTemplate ::= equality_expression_inTemplate == relational_expression_inTemplate
//
- case 147: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_divideAssign); break;
+ case 147: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_equals); break;
}
//
- // Rule 148: assignment_expression ::= logical_or_expression %= assignment_expression
+ // Rule 148: equality_expression_inTemplate ::= equality_expression_inTemplate != relational_expression_inTemplate
//
- case 148: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_moduloAssign); break;
+ case 148: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_notequals); break;
}
//
- // Rule 149: assignment_expression ::= logical_or_expression += assignment_expression
+ // Rule 150: and_expression_inTemplate ::= and_expression_inTemplate & equality_expression_inTemplate
//
- case 149: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_plusAssign); break;
+ case 150: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_binaryAnd); break;
}
//
- // Rule 150: assignment_expression ::= logical_or_expression -= assignment_expression
+ // Rule 152: exclusive_or_expression_inTemplate ::= exclusive_or_expression_inTemplate ^ and_expression_inTemplate
//
- case 150: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_minusAssign); break;
+ case 152: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_binaryXor); break;
}
//
- // Rule 151: assignment_expression ::= logical_or_expression >>= assignment_expression
+ // Rule 154: inclusive_or_expression_inTemplate ::= inclusive_or_expression_inTemplate | exclusive_or_expression_inTemplate
//
- case 151: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_shiftRightAssign); break;
+ case 154: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_binaryOr); break;
}
//
- // Rule 152: assignment_expression ::= logical_or_expression <<= assignment_expression
+ // Rule 156: logical_and_expression_inTemplate ::= logical_and_expression_inTemplate && inclusive_or_expression_inTemplate
//
- case 152: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_shiftLeftAssign); break;
+ case 156: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_logicalAnd); break;
}
//
- // Rule 153: assignment_expression ::= logical_or_expression &= assignment_expression
+ // Rule 158: logical_or_expression_inTemplate ::= logical_or_expression_inTemplate || logical_and_expression_inTemplate
//
- case 153: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_binaryAndAssign); break;
+ case 158: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_logicalOr); break;
}
//
- // Rule 154: assignment_expression ::= logical_or_expression ^= assignment_expression
+ // Rule 160: conditional_expression_inTemplate ::= logical_or_expression_inTemplate ? expression : assignment_expression_inTemplate
//
- case 154: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_binaryXorAssign); break;
+ case 160: { action. consumeExpressionConditional(); break;
}
//
- // Rule 155: assignment_expression ::= logical_or_expression |= assignment_expression
+ // Rule 163: assignment_expression_inTemplate ::= logical_or_expression_inTemplate = assignment_expression_inTemplate
//
- case 155: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_binaryOrAssign); break;
+ case 163: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_assign); break;
}
//
- // Rule 157: expression_list ::= <openscope-ast> expression_list_actual
+ // Rule 164: assignment_expression_inTemplate ::= logical_or_expression_inTemplate *= assignment_expression_inTemplate
//
- case 157: { action. consumeExpressionList(); break;
+ case 164: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_multiplyAssign); break;
}
//
- // Rule 161: expression_list_opt ::= $Empty
+ // Rule 165: assignment_expression_inTemplate ::= logical_or_expression_inTemplate /= assignment_expression_inTemplate
//
- case 161: { action. consumeEmpty(); break;
+ case 165: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_divideAssign); break;
}
//
- // Rule 163: expression_opt ::= $Empty
+ // Rule 166: assignment_expression_inTemplate ::= logical_or_expression_inTemplate %= assignment_expression_inTemplate
//
- case 163: { action. consumeEmpty(); break;
+ case 166: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_moduloAssign); break;
}
//
- // Rule 166: constant_expression_opt ::= $Empty
+ // Rule 167: assignment_expression_inTemplate ::= logical_or_expression_inTemplate += assignment_expression_inTemplate
//
- case 166: { action. consumeEmpty(); break;
+ case 167: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_plusAssign); break;
}
//
- // Rule 175: statement ::= ERROR_TOKEN
+ // Rule 168: assignment_expression_inTemplate ::= logical_or_expression_inTemplate -= assignment_expression_inTemplate
//
- case 175: { action. consumeStatementProblem(); break;
+ case 168: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_minusAssign); break;
}
//
- // Rule 176: labeled_statement ::= identifier : statement
+ // Rule 169: assignment_expression_inTemplate ::= logical_or_expression_inTemplate >>= assignment_expression_inTemplate
//
- case 176: { action. consumeStatementLabeled(); break;
+ case 169: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_shiftRightAssign); break;
}
//
- // Rule 177: labeled_statement ::= case constant_expression : statement
+ // Rule 170: assignment_expression_inTemplate ::= logical_or_expression_inTemplate <<= assignment_expression_inTemplate
//
- case 177: { action. consumeStatementCase(); break;
+ case 170: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_shiftLeftAssign); break;
}
//
- // Rule 178: labeled_statement ::= default : statement
+ // Rule 171: assignment_expression_inTemplate ::= logical_or_expression_inTemplate &= assignment_expression_inTemplate
//
- case 178: { action. consumeStatementDefault(); break;
+ case 171: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_binaryAndAssign); break;
}
//
- // Rule 179: expression_statement ::= expression ;
+ // Rule 172: assignment_expression_inTemplate ::= logical_or_expression_inTemplate ^= assignment_expression_inTemplate
//
- case 179: { action. consumeStatementExpression(); break;
+ case 172: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_binaryXorAssign); break;
}
//
- // Rule 180: expression_statement ::= ;
+ // Rule 173: assignment_expression_inTemplate ::= logical_or_expression_inTemplate |= assignment_expression_inTemplate
//
- case 180: { action. consumeStatementNull(); break;
+ case 173: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_binaryOrAssign); break;
}
//
- // Rule 181: compound_statement ::= { <openscope-ast> statement_seq }
+ // Rule 174: throw_expression ::= throw
//
- case 181: { action. consumeStatementCompoundStatement(true); break;
+ case 174: { action. consumeExpressionThrow(false); break;
}
//
- // Rule 182: compound_statement ::= { }
+ // Rule 175: throw_expression ::= throw assignment_expression
//
- case 182: { action. consumeStatementCompoundStatement(false); break;
+ case 175: { action. consumeExpressionThrow(true); break;
}
//
- // Rule 185: selection_statement ::= if ( condition ) statement
+ // Rule 178: assignment_expression ::= logical_or_expression = assignment_expression
//
- case 185: { action. consumeStatementIf(false); break;
+ case 178: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_assign); break;
}
//
- // Rule 186: selection_statement ::= if ( condition ) statement else statement
+ // Rule 179: assignment_expression ::= logical_or_expression *= assignment_expression
//
- case 186: { action. consumeStatementIf(true); break;
+ case 179: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_multiplyAssign); break;
}
//
- // Rule 187: selection_statement ::= switch ( condition ) statement
+ // Rule 180: assignment_expression ::= logical_or_expression /= assignment_expression
//
- case 187: { action. consumeStatementSwitch(); break;
+ case 180: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_divideAssign); break;
}
//
- // Rule 189: condition ::= type_specifier_seq declarator = assignment_expression
+ // Rule 181: assignment_expression ::= logical_or_expression %= assignment_expression
//
- case 189: { action. consumeConditionDeclaration(); break;
+ case 181: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_moduloAssign); break;
}
//
- // Rule 191: condition_opt ::= $Empty
+ // Rule 182: assignment_expression ::= logical_or_expression += assignment_expression
//
- case 191: { action. consumeEmpty(); break;
+ case 182: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_plusAssign); break;
}
//
- // Rule 192: iteration_statement ::= while ( condition ) statement
+ // Rule 183: assignment_expression ::= logical_or_expression -= assignment_expression
//
- case 192: { action. consumeStatementWhileLoop(); break;
+ case 183: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_minusAssign); break;
}
//
- // Rule 193: iteration_statement ::= do statement while ( expression ) ;
+ // Rule 184: assignment_expression ::= logical_or_expression >>= assignment_expression
//
- case 193: { action. consumeStatementDoLoop(true); break;
+ case 184: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_shiftRightAssign); break;
}
//
- // Rule 194: iteration_statement ::= do statement
+ // Rule 185: assignment_expression ::= logical_or_expression <<= assignment_expression
//
- case 194: { action. consumeStatementDoLoop(false); break;
+ case 185: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_shiftLeftAssign); break;
}
//
- // Rule 195: iteration_statement ::= for ( for_init_statement condition_opt ; expression_opt ) statement
+ // Rule 186: assignment_expression ::= logical_or_expression &= assignment_expression
//
- case 195: { action. consumeStatementForLoop(); break;
+ case 186: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_binaryAndAssign); break;
}
//
- // Rule 197: for_init_statement ::= simple_declaration_with_declspec
+ // Rule 187: assignment_expression ::= logical_or_expression ^= assignment_expression
//
- case 197: { action. consumeStatementDeclaration(); break;
+ case 187: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_binaryXorAssign); break;
}
//
- // Rule 198: jump_statement ::= break ;
+ // Rule 188: assignment_expression ::= logical_or_expression |= assignment_expression
//
- case 198: { action. consumeStatementBreak(); break;
+ case 188: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_binaryOrAssign); break;
}
//
- // Rule 199: jump_statement ::= continue ;
+ // Rule 190: expression_list ::= <openscope-ast> expression_list_actual
//
- case 199: { action. consumeStatementContinue(); break;
+ case 190: { action. consumeExpressionList(); break;
}
//
- // Rule 200: jump_statement ::= return expression ;
+ // Rule 194: expression_list_opt ::= $Empty
//
- case 200: { action. consumeStatementReturn(true); break;
+ case 194: { action. consumeEmpty(); break;
}
//
- // Rule 201: jump_statement ::= return ;
+ // Rule 196: expression_opt ::= $Empty
//
- case 201: { action. consumeStatementReturn(false); break;
+ case 196: { action. consumeEmpty(); break;
}
//
- // Rule 202: jump_statement ::= goto identifier_token ;
+ // Rule 199: constant_expression_opt ::= $Empty
//
- case 202: { action. consumeStatementGoto(); break;
+ case 199: { action. consumeEmpty(); break;
}
//
- // Rule 203: declaration_statement ::= block_declaration
+ // Rule 208: statement ::= ERROR_TOKEN
//
- case 203: { action. consumeStatementDeclarationWithDisambiguation(); break;
+ case 208: { action. consumeStatementProblem(); break;
}
//
- // Rule 204: declaration_statement ::= function_definition
+ // Rule 209: labeled_statement ::= identifier : statement
//
- case 204: { action. consumeStatementDeclaration(); break;
+ case 209: { action. consumeStatementLabeled(); break;
}
//
- // Rule 212: declaration ::= ERROR_TOKEN
+ // Rule 210: labeled_statement ::= case constant_expression : statement
//
- case 212: { action. consumeDeclarationProblem(); break;
+ case 210: { action. consumeStatementCase(); break;
}
//
- // Rule 222: simple_declaration ::= declaration_specifiers_opt <openscope-ast> init_declarator_list_opt ;
+ // Rule 211: labeled_statement ::= default : statement
//
- case 222: { action. consumeDeclarationSimple(true); break;
+ case 211: { action. consumeStatementDefault(); break;
}
//
- // Rule 223: simple_declaration_with_declspec ::= declaration_specifiers <openscope-ast> init_declarator_list_opt ;
+ // Rule 212: expression_statement ::= expression ;
//
- case 223: { action. consumeDeclarationSimple(true); break;
+ case 212: { action. consumeStatementExpression(); break;
}
//
- // Rule 224: declaration_specifiers ::= <openscope-ast> simple_declaration_specifiers
+ // Rule 213: expression_statement ::= ;
//
- case 224: { action. consumeDeclarationSpecifiersSimple(); break;
+ case 213: { action. consumeStatementNull(); break;
}
//
- // Rule 225: declaration_specifiers ::= <openscope-ast> class_declaration_specifiers
+ // Rule 214: compound_statement ::= { <openscope-ast> statement_seq }
//
- case 225: { action. consumeDeclarationSpecifiersComposite(); break;
+ case 214: { action. consumeStatementCompoundStatement(true); break;
}
//
- // Rule 226: declaration_specifiers ::= <openscope-ast> elaborated_declaration_specifiers
+ // Rule 215: compound_statement ::= { }
//
- case 226: { action. consumeDeclarationSpecifiersComposite(); break;
+ case 215: { action. consumeStatementCompoundStatement(false); break;
}
//
- // Rule 227: declaration_specifiers ::= <openscope-ast> enum_declaration_specifiers
+ // Rule 218: selection_statement ::= if ( condition ) statement
//
- case 227: { action. consumeDeclarationSpecifiersComposite(); break;
+ case 218: { action. consumeStatementIf(false); break;
}
//
- // Rule 228: declaration_specifiers ::= <openscope-ast> type_name_declaration_specifiers
+ // Rule 219: selection_statement ::= if ( condition ) statement else statement
//
- case 228: { action. consumeDeclarationSpecifiersTypeName(); break;
+ case 219: { action. consumeStatementIf(true); break;
}
//
- // Rule 230: declaration_specifiers_opt ::= $Empty
+ // Rule 220: selection_statement ::= switch ( condition ) statement
//
- case 230: { action. consumeEmpty(); break;
+ case 220: { action. consumeStatementSwitch(); break;
}
//
- // Rule 234: no_type_declaration_specifier ::= friend
+ // Rule 222: condition ::= type_specifier_seq declarator = assignment_expression
//
- case 234: { action. consumeToken(); break;
+ case 222: { action. consumeConditionDeclaration(); break;
}
//
- // Rule 235: no_type_declaration_specifier ::= typedef
+ // Rule 224: condition_opt ::= $Empty
//
- case 235: { action. consumeToken(); break;
+ case 224: { action. consumeEmpty(); break;
}
//
- // Rule 255: storage_class_specifier ::= auto
+ // Rule 225: iteration_statement ::= while ( condition ) statement
//
- case 255: { action. consumeToken(); break;
+ case 225: { action. consumeStatementWhileLoop(); break;
}
//
- // Rule 256: storage_class_specifier ::= register
+ // Rule 226: iteration_statement ::= do statement while ( expression ) ;
//
- case 256: { action. consumeToken(); break;
+ case 226: { action. consumeStatementDoLoop(true); break;
}
//
- // Rule 257: storage_class_specifier ::= static
+ // Rule 227: iteration_statement ::= do statement
//
- case 257: { action. consumeToken(); break;
+ case 227: { action. consumeStatementDoLoop(false); break;
}
//
- // Rule 258: storage_class_specifier ::= extern
+ // Rule 228: iteration_statement ::= for ( for_init_statement condition_opt ; expression_opt ) statement
//
- case 258: { action. consumeToken(); break;
+ case 228: { action. consumeStatementForLoop(); break;
}
//
- // Rule 259: storage_class_specifier ::= mutable
+ // Rule 230: for_init_statement ::= simple_declaration_with_declspec
//
- case 259: { action. consumeToken(); break;
+ case 230: { action. consumeStatementDeclaration(); break;
}
//
- // Rule 260: function_specifier ::= inline
+ // Rule 231: jump_statement ::= break ;
//
- case 260: { action. consumeToken(); break;
+ case 231: { action. consumeStatementBreak(); break;
}
//
- // Rule 261: function_specifier ::= virtual
+ // Rule 232: jump_statement ::= continue ;
//
- case 261: { action. consumeToken(); break;
+ case 232: { action. consumeStatementContinue(); break;
}
//
- // Rule 262: function_specifier ::= explicit
+ // Rule 233: jump_statement ::= return expression ;
//
- case 262: { action. consumeToken(); break;
+ case 233: { action. consumeStatementReturn(true); break;
}
//
- // Rule 263: simple_type_specifier ::= simple_type_specifier_token
+ // Rule 234: jump_statement ::= return ;
//
- case 263: { action. consumeToken(); break;
+ case 234: { action. consumeStatementReturn(false); break;
}
//
- // Rule 277: type_name_specifier ::= dcolon_opt nested_name_specifier_opt type_name
+ // Rule 235: jump_statement ::= goto identifier_token ;
//
- case 277: { action. consumeQualifiedId(false); break;
+ case 235: { action. consumeStatementGoto(); break;
}
//
- // Rule 278: type_name_specifier ::= dcolon_opt nested_name_specifier template template_id_name
+ // Rule 236: declaration_statement ::= block_declaration
//
- case 278: { action. consumeQualifiedId(false); break;
+ case 236: { action. consumeStatementDeclarationWithDisambiguation(); break;
}
//
- // Rule 279: type_name_specifier ::= typename dcolon_opt nested_name_specifier identifier_name
+ // Rule 237: declaration_statement ::= function_definition
//
- case 279: { action. consumeQualifiedId(false); break;
+ case 237: { action. consumeStatementDeclaration(); break;
}
//
- // Rule 280: type_name_specifier ::= typename dcolon_opt nested_name_specifier template_opt template_id_name
+ // Rule 245: declaration ::= ERROR_TOKEN
//
- case 280: { action. consumeQualifiedId(true); break;
+ case 245: { action. consumeDeclarationProblem(); break;
}
//
- // Rule 282: elaborated_type_specifier ::= class_keyword elaborated_specifier_hook dcolon_opt nested_name_specifier_opt identifier_name
+ // Rule 255: simple_declaration ::= declaration_specifiers_opt <openscope-ast> init_declarator_list_opt ;
//
- case 282: { action. consumeTypeSpecifierElaborated(false); break;
+ case 255: { action. consumeDeclarationSimple(true); break;
}
//
- // Rule 283: elaborated_type_specifier ::= class_keyword elaborated_specifier_hook dcolon_opt nested_name_specifier_opt template_opt template_id_name
+ // Rule 256: simple_declaration_with_declspec ::= declaration_specifiers <openscope-ast> init_declarator_list_opt ;
//
- case 283: { action. consumeTypeSpecifierElaborated(true); break;
+ case 256: { action. consumeDeclarationSimple(true); break;
}
//
- // Rule 284: elaborated_type_specifier ::= enum elaborated_specifier_hook dcolon_opt nested_name_specifier_opt identifier_name
+ // Rule 257: declaration_specifiers ::= <openscope-ast> simple_declaration_specifiers
//
- case 284: { action. consumeTypeSpecifierElaborated(false); break;
+ case 257: { action. consumeDeclarationSpecifiersSimple(); break;
}
//
- // Rule 288: enum_specifier ::= enum enum_specifier_hook { <openscope-ast> enumerator_list_opt comma_opt }
+ // Rule 258: declaration_specifiers ::= <openscope-ast> class_declaration_specifiers
//
- case 288: { action. consumeTypeSpecifierEnumeration(false); break;
+ case 258: { action. consumeDeclarationSpecifiersComposite(); break;
}
//
- // Rule 289: enum_specifier ::= enum enum_specifier_hook identifier_token { <openscope-ast> enumerator_list_opt comma_opt }
+ // Rule 259: declaration_specifiers ::= <openscope-ast> elaborated_declaration_specifiers
//
- case 289: { action. consumeTypeSpecifierEnumeration(true); break;
+ case 259: { action. consumeDeclarationSpecifiersComposite(); break;
}
//
- // Rule 295: enumerator_definition ::= identifier_token
+ // Rule 260: declaration_specifiers ::= <openscope-ast> enum_declaration_specifiers
//
- case 295: { action. consumeEnumerator(false); break;
+ case 260: { action. consumeDeclarationSpecifiersComposite(); break;
}
//
- // Rule 296: enumerator_definition ::= identifier_token = constant_expression
+ // Rule 261: declaration_specifiers ::= <openscope-ast> type_name_declaration_specifiers
//
- case 296: { action. consumeEnumerator(true); break;
+ case 261: { action. consumeDeclarationSpecifiersTypeName(); break;
}
//
- // Rule 298: namespace_definition ::= namespace namespace_name namespace_definition_hook { <openscope-ast> declaration_seq_opt }
+ // Rule 263: declaration_specifiers_opt ::= $Empty
//
- case 298: { action. consumeNamespaceDefinition(true); break;
+ case 263: { action. consumeEmpty(); break;
}
//
- // Rule 299: namespace_definition ::= namespace namespace_definition_hook { <openscope-ast> declaration_seq_opt }
+ // Rule 267: no_type_declaration_specifier ::= friend
//
- case 299: { action. consumeNamespaceDefinition(false); break;
+ case 267: { action. consumeToken(); break;
}
//
- // Rule 301: namespace_alias_definition ::= namespace identifier_token = dcolon_opt nested_name_specifier_opt namespace_name ;
+ // Rule 268: no_type_declaration_specifier ::= typedef
//
- case 301: { action. consumeNamespaceAliasDefinition(); break;
+ case 268: { action. consumeToken(); break;
}
//
- // Rule 302: using_declaration ::= using typename_opt dcolon_opt nested_name_specifier_opt unqualified_id_name ;
+ // Rule 288: storage_class_specifier ::= auto
//
- case 302: { action. consumeUsingDeclaration(); break;
+ case 288: { action. consumeToken(); break;
}
//
- // Rule 303: typename_opt ::= typename
+ // Rule 289: storage_class_specifier ::= register
//
- case 303: { action. consumePlaceHolder(); break;
+ case 289: { action. consumeToken(); break;
}
//
- // Rule 304: typename_opt ::= $Empty
+ // Rule 290: storage_class_specifier ::= static
//
- case 304: { action. consumeEmpty(); break;
+ case 290: { action. consumeToken(); break;
}
//
- // Rule 305: using_directive ::= using namespace dcolon_opt nested_name_specifier_opt namespace_name ;
+ // Rule 291: storage_class_specifier ::= extern
//
- case 305: { action. consumeUsingDirective(); break;
+ case 291: { action. consumeToken(); break;
}
//
- // Rule 306: asm_definition ::= asm ( stringlit ) ;
+ // Rule 292: storage_class_specifier ::= mutable
//
- case 306: { action. consumeDeclarationASM(); break;
+ case 292: { action. consumeToken(); break;
}
//
- // Rule 307: linkage_specification ::= extern stringlit { <openscope-ast> declaration_seq_opt }
+ // Rule 293: function_specifier ::= inline
//
- case 307: { action. consumeLinkageSpecification(); break;
+ case 293: { action. consumeToken(); break;
}
//
- // Rule 308: linkage_specification ::= extern stringlit <openscope-ast> declaration
+ // Rule 294: function_specifier ::= virtual
//
- case 308: { action. consumeLinkageSpecification(); break;
+ case 294: { action. consumeToken(); break;
}
//
- // Rule 313: init_declarator_complete ::= init_declarator
+ // Rule 295: function_specifier ::= explicit
//
- case 313: { action. consumeInitDeclaratorComplete(); break;
+ case 295: { action. consumeToken(); break;
}
//
- // Rule 315: init_declarator ::= complete_declarator initializer
+ // Rule 296: simple_type_specifier ::= simple_type_specifier_token
//
- case 315: { action. consumeDeclaratorWithInitializer(true); break;
+ case 296: { action. consumeToken(); break;
}
//
- // Rule 318: declarator ::= <openscope-ast> ptr_operator_seq direct_declarator
+ // Rule 310: type_name_specifier ::= dcolon_opt nested_name_specifier_opt type_name
//
- case 318: { action. consumeDeclaratorWithPointer(true); break;
+ case 310: { action. consumeQualifiedId(false); break;
}
//
- // Rule 320: function_declarator ::= <openscope-ast> ptr_operator_seq direct_declarator
+ // Rule 311: type_name_specifier ::= dcolon_opt nested_name_specifier template template_id_name
//
- case 320: { action. consumeDeclaratorWithPointer(true); break;
+ case 311: { action. consumeQualifiedId(false); break;
}
//
- // Rule 324: basic_direct_declarator ::= declarator_id_name
+ // Rule 312: type_name_specifier ::= typename dcolon_opt nested_name_specifier identifier_name
//
- case 324: { action. consumeDirectDeclaratorIdentifier(); break;
+ case 312: { action. consumeQualifiedId(false); break;
}
//
- // Rule 325: basic_direct_declarator ::= ( declarator )
+ // Rule 313: type_name_specifier ::= typename dcolon_opt nested_name_specifier template_opt template_id_name
//
- case 325: { action. consumeDirectDeclaratorBracketed(); break;
+ case 313: { action. consumeQualifiedId(true); 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 315: elaborated_type_specifier ::= class_keyword elaborated_specifier_hook dcolon_opt nested_name_specifier_opt identifier_name
//
- case 326: { action. consumeDirectDeclaratorFunctionDeclarator(true); break;
+ case 315: { action. consumeTypeSpecifierElaborated(false); break;
}
//
- // Rule 327: array_direct_declarator ::= array_direct_declarator array_modifier
+ // Rule 316: elaborated_type_specifier ::= class_keyword elaborated_specifier_hook dcolon_opt nested_name_specifier_opt template_opt template_id_name
//
- case 327: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
+ case 316: { action. consumeTypeSpecifierElaborated(true); break;
}
//
- // Rule 328: array_direct_declarator ::= basic_direct_declarator array_modifier
+ // Rule 317: elaborated_type_specifier ::= enum elaborated_specifier_hook dcolon_opt nested_name_specifier_opt identifier_name
//
- case 328: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
+ case 317: { action. consumeTypeSpecifierElaborated(false); break;
}
//
- // Rule 329: array_modifier ::= [ constant_expression ]
+ // Rule 321: enum_specifier ::= enum enum_specifier_hook { <openscope-ast> enumerator_list_opt comma_opt }
//
- case 329: { action. consumeDirectDeclaratorArrayModifier(true); break;
+ case 321: { action. consumeTypeSpecifierEnumeration(false); break;
}
//
- // Rule 330: array_modifier ::= [ ]
+ // Rule 322: enum_specifier ::= enum enum_specifier_hook identifier_token { <openscope-ast> enumerator_list_opt comma_opt }
//
- case 330: { action. consumeDirectDeclaratorArrayModifier(false); break;
+ case 322: { action. consumeTypeSpecifierEnumeration(true); break;
}
//
- // Rule 331: ptr_operator ::= pointer_hook * pointer_hook <openscope-ast> cv_qualifier_seq_opt
+ // Rule 328: enumerator_definition ::= identifier_token
//
- case 331: { action. consumePointer(); break;
+ case 328: { action. consumeEnumerator(false); break;
}
//
- // Rule 332: ptr_operator ::= pointer_hook & pointer_hook
+ // Rule 329: enumerator_definition ::= identifier_token = constant_expression
//
- case 332: { action. consumeReferenceOperator(); break;
+ case 329: { action. consumeEnumerator(true); break;
}
//
- // Rule 333: ptr_operator ::= dcolon_opt nested_name_specifier pointer_hook * pointer_hook <openscope-ast> cv_qualifier_seq_opt
+ // Rule 331: namespace_definition ::= namespace namespace_name namespace_definition_hook { <openscope-ast> declaration_seq_opt }
//
- case 333: { action. consumePointerToMember(); break;
+ case 331: { action. consumeNamespaceDefinition(true); break;
}
//
- // Rule 340: cv_qualifier ::= const
+ // Rule 332: namespace_definition ::= namespace namespace_definition_hook { <openscope-ast> declaration_seq_opt }
//
- case 340: { action. consumeToken(); break;
+ case 332: { action. consumeNamespaceDefinition(false); break;
}
//
- // Rule 341: cv_qualifier ::= volatile
+ // Rule 334: namespace_alias_definition ::= namespace identifier_token = dcolon_opt nested_name_specifier_opt namespace_name ;
//
- case 341: { action. consumeToken(); break;
+ case 334: { action. consumeNamespaceAliasDefinition(); break;
}
//
- // Rule 343: declarator_id_name ::= dcolon_opt nested_name_specifier_opt type_name
+ // Rule 335: using_declaration ::= using typename_opt dcolon_opt nested_name_specifier_opt unqualified_id_name ;
//
- case 343: { action. consumeQualifiedId(false); break;
+ case 335: { action. consumeUsingDeclaration(); break;
}
//
- // Rule 344: type_id ::= type_specifier_seq
+ // Rule 336: typename_opt ::= typename
//
- case 344: { action. consumeTypeId(false); break;
+ case 336: { action. consumePlaceHolder(); break;
}
//
- // Rule 345: type_id ::= type_specifier_seq abstract_declarator
+ // Rule 337: typename_opt ::= $Empty
//
- case 345: { action. consumeTypeId(true); break;
+ case 337: { action. consumeEmpty(); break;
}
//
- // Rule 348: abstract_declarator ::= <openscope-ast> ptr_operator_seq
+ // Rule 338: using_directive ::= using namespace dcolon_opt nested_name_specifier_opt namespace_name ;
//
- case 348: { action. consumeDeclaratorWithPointer(false); break;
+ case 338: { action. consumeUsingDirective(); break;
}
//
- // Rule 349: abstract_declarator ::= <openscope-ast> ptr_operator_seq direct_abstract_declarator
+ // Rule 339: asm_definition ::= asm ( stringlit ) ;
//
- case 349: { action. consumeDeclaratorWithPointer(true); break;
+ case 339: { action. consumeDeclarationASM(); break;
}
//
- // Rule 353: basic_direct_abstract_declarator ::= ( abstract_declarator )
+ // Rule 340: linkage_specification ::= extern stringlit { <openscope-ast> declaration_seq_opt }
//
- case 353: { action. consumeDirectDeclaratorBracketed(); break;
+ case 340: { action. consumeLinkageSpecification(); break;
}
//
- // Rule 354: basic_direct_abstract_declarator ::= ( )
+ // Rule 341: linkage_specification ::= extern stringlit <openscope-ast> declaration
//
- case 354: { action. consumeAbstractDeclaratorEmpty(); break;
+ case 341: { action. consumeLinkageSpecification(); break;
}
//
- // Rule 355: array_direct_abstract_declarator ::= array_modifier
+ // Rule 346: init_declarator_complete ::= init_declarator
//
- case 355: { action. consumeDirectDeclaratorArrayDeclarator(false); break;
+ case 346: { action. consumeInitDeclaratorComplete(); break;
}
//
- // Rule 356: array_direct_abstract_declarator ::= array_direct_abstract_declarator array_modifier
+ // Rule 348: init_declarator ::= complete_declarator initializer
//
- case 356: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
+ case 348: { action. consumeDeclaratorWithInitializer(true); break;
}
//
- // Rule 357: array_direct_abstract_declarator ::= basic_direct_abstract_declarator array_modifier
+ // Rule 351: declarator ::= <openscope-ast> ptr_operator_seq direct_declarator
//
- case 357: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
+ case 351: { action. consumeDeclaratorWithPointer(true); break;
}
//
- // Rule 358: 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 353: function_declarator ::= <openscope-ast> ptr_operator_seq direct_declarator
//
- case 358: { action. consumeDirectDeclaratorFunctionDeclarator(true); break;
+ case 353: { action. consumeDeclaratorWithPointer(true); break;
}
//
- // Rule 359: function_direct_abstract_declarator ::= ( <openscope-ast> parameter_declaration_clause ) <openscope-ast> cv_qualifier_seq_opt <openscope-ast> exception_specification_opt
+ // Rule 357: basic_direct_declarator ::= declarator_id_name
//
- case 359: { action. consumeDirectDeclaratorFunctionDeclarator(false); break;
+ case 357: { action. consumeDirectDeclaratorIdentifier(); break;
}
//
- // Rule 360: parameter_declaration_clause ::= parameter_declaration_list_opt ...
+ // Rule 358: basic_direct_declarator ::= ( declarator )
//
- case 360: { action. consumePlaceHolder(); break;
+ case 358: { action. consumeDirectDeclaratorBracketed(); break;
}
//
- // Rule 361: parameter_declaration_clause ::= parameter_declaration_list_opt
+ // Rule 359: function_direct_declarator ::= basic_direct_declarator ( <openscope-ast> parameter_declaration_clause ) <openscope-ast> cv_qualifier_seq_opt <openscope-ast> exception_specification_opt
//
- case 361: { action. consumeEmpty(); break;
+ case 359: { action. consumeDirectDeclaratorFunctionDeclarator(true); break;
}
//
- // Rule 362: parameter_declaration_clause ::= parameter_declaration_list , ...
+ // Rule 360: array_direct_declarator ::= array_direct_declarator array_modifier
//
- case 362: { action. consumePlaceHolder(); break;
+ case 360: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
}
//
- // Rule 368: abstract_declarator_opt ::= $Empty
+ // Rule 361: array_direct_declarator ::= basic_direct_declarator array_modifier
//
- case 368: { action. consumeEmpty(); break;
+ case 361: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
}
//
- // Rule 369: parameter_declaration ::= declaration_specifiers parameter_init_declarator
+ // Rule 362: array_modifier ::= [ constant_expression ]
//
- case 369: { action. consumeParameterDeclaration(); break;
+ case 362: { action. consumeDirectDeclaratorArrayModifier(true); break;
}
//
- // Rule 370: parameter_declaration ::= declaration_specifiers
+ // Rule 363: array_modifier ::= [ ]
//
- case 370: { action. consumeParameterDeclarationWithoutDeclarator(); break;
+ case 363: { action. consumeDirectDeclaratorArrayModifier(false); break;
}
//
- // Rule 372: parameter_init_declarator ::= declarator = parameter_initializer
+ // Rule 364: ptr_operator ::= pointer_hook * pointer_hook <openscope-ast> cv_qualifier_seq_opt
//
- case 372: { action. consumeDeclaratorWithInitializer(true); break;
+ case 364: { action. consumePointer(); break;
}
//
- // Rule 374: parameter_init_declarator ::= abstract_declarator = parameter_initializer
+ // Rule 365: ptr_operator ::= pointer_hook & pointer_hook
//
- case 374: { action. consumeDeclaratorWithInitializer(true); break;
+ case 365: { action. consumeReferenceOperator(); break;
}
//
- // Rule 375: parameter_init_declarator ::= = parameter_initializer
+ // Rule 366: ptr_operator ::= dcolon_opt nested_name_specifier pointer_hook * pointer_hook <openscope-ast> cv_qualifier_seq_opt
//
- case 375: { action. consumeDeclaratorWithInitializer(false); break;
+ case 366: { action. consumePointerToMember(); break;
}
//
- // Rule 376: parameter_initializer ::= assignment_expression
+ // Rule 373: cv_qualifier ::= const
//
- case 376: { action. consumeInitializer(); break;
+ case 373: { action. consumeToken(); break;
}
//
- // Rule 377: function_definition ::= declaration_specifiers_opt function_declarator <openscope-ast> ctor_initializer_list_opt function_body
+ // Rule 374: cv_qualifier ::= volatile
//
- case 377: { action. consumeFunctionDefinition(false); break;
+ case 374: { action. consumeToken(); break;
}
//
- // Rule 378: function_definition ::= declaration_specifiers_opt function_declarator try <openscope-ast> ctor_initializer_list_opt function_body <openscope-ast> handler_seq
+ // Rule 376: declarator_id_name ::= dcolon_opt nested_name_specifier_opt type_name
//
- case 378: { action. consumeFunctionDefinition(true); break;
+ case 376: { action. consumeQualifiedId(false); break;
}
//
- // Rule 381: initializer ::= ( expression_list )
+ // Rule 377: type_id ::= type_specifier_seq
//
- case 381: { action. consumeInitializerConstructor(); break;
+ case 377: { action. consumeTypeId(false); break;
}
//
- // Rule 382: initializer_clause ::= assignment_expression
+ // Rule 378: type_id ::= type_specifier_seq abstract_declarator
//
- case 382: { action. consumeInitializer(); break;
+ case 378: { action. consumeTypeId(true); break;
}
//
- // Rule 383: initializer_clause ::= initializer_list
+ // Rule 381: abstract_declarator ::= <openscope-ast> ptr_operator_seq
//
- case 383: { action. consumeInitializer(); break;
+ case 381: { action. consumeDeclaratorWithPointer(false); break;
}
//
- // Rule 384: initializer_list ::= start_initializer_list { <openscope-ast> initializer_seq , } end_initializer_list
+ // Rule 382: abstract_declarator ::= <openscope-ast> ptr_operator_seq direct_abstract_declarator
//
- case 384: { action. consumeInitializerList(); break;
+ case 382: { action. consumeDeclaratorWithPointer(true); break;
}
//
- // Rule 385: initializer_list ::= start_initializer_list { <openscope-ast> initializer_seq } end_initializer_list
+ // Rule 386: basic_direct_abstract_declarator ::= ( abstract_declarator )
//
- case 385: { action. consumeInitializerList(); break;
+ case 386: { action. consumeDirectDeclaratorBracketed(); break;
}
//
- // Rule 386: initializer_list ::= { <openscope-ast> }
+ // Rule 387: basic_direct_abstract_declarator ::= ( )
//
- case 386: { action. consumeInitializerList(); break;
+ case 387: { action. consumeAbstractDeclaratorEmpty(); break;
}
//
- // Rule 387: start_initializer_list ::= $Empty
+ // Rule 388: array_direct_abstract_declarator ::= array_modifier
//
- case 387: { action. initializerListStart(); break;
+ case 388: { action. consumeDirectDeclaratorArrayDeclarator(false); break;
}
//
- // Rule 388: end_initializer_list ::= $Empty
+ // Rule 389: array_direct_abstract_declarator ::= array_direct_abstract_declarator array_modifier
//
- case 388: { action. initializerListEnd(); break;
+ case 389: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
}
//
- // Rule 393: class_specifier ::= class_head { <openscope-ast> member_declaration_list_opt }
+ // Rule 390: array_direct_abstract_declarator ::= basic_direct_abstract_declarator array_modifier
//
- case 393: { action. consumeClassSpecifier(); break;
+ case 390: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
}
//
- // Rule 394: class_head ::= class_keyword composite_specifier_hook identifier_name_opt class_name_suffix_hook <openscope-ast> base_clause_opt
+ // Rule 391: 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 394: { action. consumeClassHead(false); break;
+ case 391: { action. consumeDirectDeclaratorFunctionDeclarator(true); break;
}
//
- // Rule 395: class_head ::= class_keyword composite_specifier_hook template_id_name class_name_suffix_hook <openscope-ast> base_clause_opt
+ // Rule 392: function_direct_abstract_declarator ::= ( <openscope-ast> parameter_declaration_clause ) <openscope-ast> cv_qualifier_seq_opt <openscope-ast> exception_specification_opt
//
- case 395: { action. consumeClassHead(false); break;
+ case 392: { action. consumeDirectDeclaratorFunctionDeclarator(false); break;
}
//
- // Rule 396: class_head ::= class_keyword composite_specifier_hook nested_name_specifier identifier_name class_name_suffix_hook <openscope-ast> base_clause_opt
+ // Rule 393: parameter_declaration_clause ::= parameter_declaration_list_opt ...
//
- case 396: { action. consumeClassHead(true); break;
+ case 393: { action. consumePlaceHolder(); break;
}
//
- // Rule 397: class_head ::= class_keyword composite_specifier_hook nested_name_specifier template_id_name class_name_suffix_hook <openscope-ast> base_clause_opt
+ // Rule 394: parameter_declaration_clause ::= parameter_declaration_list_opt
//
- case 397: { action. consumeClassHead(true); break;
+ case 394: { action. consumeEmpty(); break;
}
//
- // Rule 401: identifier_name_opt ::= $Empty
+ // Rule 395: parameter_declaration_clause ::= parameter_declaration_list , ...
+ //
+ case 395: { action. consumePlaceHolder(); break;
+ }
+
+ //
+ // Rule 401: abstract_declarator_opt ::= $Empty
//
case 401: { action. consumeEmpty(); break;
+ }
+
+ //
+ // Rule 402: parameter_declaration ::= declaration_specifiers parameter_init_declarator
+ //
+ case 402: { action. consumeParameterDeclaration(); break;
+ }
+
+ //
+ // Rule 403: parameter_declaration ::= declaration_specifiers
+ //
+ case 403: { action. consumeParameterDeclarationWithoutDeclarator(); break;
+ }
+
+ //
+ // Rule 405: parameter_init_declarator ::= declarator = parameter_initializer
+ //
+ case 405: { action. consumeDeclaratorWithInitializer(true); break;
+ }
+
+ //
+ // Rule 407: parameter_init_declarator ::= abstract_declarator = parameter_initializer
+ //
+ case 407: { action. consumeDeclaratorWithInitializer(true); break;
+ }
+
+ //
+ // Rule 408: parameter_init_declarator ::= = parameter_initializer
+ //
+ case 408: { action. consumeDeclaratorWithInitializer(false); break;
+ }
+
+ //
+ // Rule 409: parameter_initializer ::= assignment_expression
+ //
+ case 409: { action. consumeInitializer(); break;
+ }
+
+ //
+ // Rule 410: function_definition ::= declaration_specifiers_opt function_declarator <openscope-ast> ctor_initializer_list_opt function_body
+ //
+ case 410: { action. consumeFunctionDefinition(false); break;
+ }
+
+ //
+ // Rule 411: function_definition ::= declaration_specifiers_opt function_declarator try <openscope-ast> ctor_initializer_list_opt function_body <openscope-ast> handler_seq
+ //
+ case 411: { action. consumeFunctionDefinition(true); break;
+ }
+
+ //
+ // Rule 414: initializer ::= ( expression_list )
+ //
+ case 414: { action. consumeInitializerConstructor(); break;
+ }
+
+ //
+ // Rule 415: initializer_clause ::= assignment_expression
+ //
+ case 415: { action. consumeInitializer(); break;
+ }
+
+ //
+ // Rule 416: initializer_clause ::= initializer_list
+ //
+ case 416: { action. consumeInitializer(); break;
+ }
+
+ //
+ // Rule 417: initializer_list ::= start_initializer_list { <openscope-ast> initializer_seq , } end_initializer_list
+ //
+ case 417: { action. consumeInitializerList(); break;
+ }
+
+ //
+ // Rule 418: initializer_list ::= start_initializer_list { <openscope-ast> initializer_seq } end_initializer_list
+ //
+ case 418: { action. consumeInitializerList(); break;
+ }
+
+ //
+ // Rule 419: initializer_list ::= { <openscope-ast> }
+ //
+ case 419: { action. consumeInitializerList(); break;
+ }
+
+ //
+ // Rule 420: start_initializer_list ::= $Empty
+ //
+ case 420: { action. initializerListStart(); break;
+ }
+
+ //
+ // Rule 421: end_initializer_list ::= $Empty
+ //
+ case 421: { action. initializerListEnd(); break;
+ }
+
+ //
+ // Rule 426: class_specifier ::= class_head { <openscope-ast> member_declaration_list_opt }
+ //
+ case 426: { action. consumeClassSpecifier(); break;
+ }
+
+ //
+ // Rule 427: class_head ::= class_keyword composite_specifier_hook identifier_name_opt class_name_suffix_hook <openscope-ast> base_clause_opt
+ //
+ case 427: { action. consumeClassHead(false); break;
+ }
+
+ //
+ // Rule 428: class_head ::= class_keyword composite_specifier_hook template_id_name class_name_suffix_hook <openscope-ast> base_clause_opt
+ //
+ case 428: { action. consumeClassHead(false); break;
+ }
+
+ //
+ // Rule 429: class_head ::= class_keyword composite_specifier_hook nested_name_specifier identifier_name class_name_suffix_hook <openscope-ast> base_clause_opt
+ //
+ case 429: { action. consumeClassHead(true); break;
+ }
+
+ //
+ // Rule 430: class_head ::= class_keyword composite_specifier_hook nested_name_specifier template_id_name class_name_suffix_hook <openscope-ast> base_clause_opt
+ //
+ case 430: { action. consumeClassHead(true); break;
+ }
+
+ //
+ // Rule 434: identifier_name_opt ::= $Empty
+ //
+ case 434: { action. consumeEmpty(); break;
}
//
- // Rule 405: visibility_label ::= access_specifier_keyword :
+ // Rule 438: visibility_label ::= access_specifier_keyword :
+ //
+ case 438: { action. consumeVisibilityLabel(); break;
+ }
+
+ //
+ // Rule 439: member_declaration ::= declaration_specifiers_opt <openscope-ast> member_declarator_list ;
+ //
+ case 439: { action. consumeDeclarationSimple(true); break;
+ }
+
+ //
+ // Rule 440: member_declaration ::= declaration_specifiers_opt ;
+ //
+ case 440: { action. consumeDeclarationSimple(false); break;
+ }
+
+ //
+ // Rule 443: member_declaration ::= dcolon_opt nested_name_specifier template_opt unqualified_id_name ;
+ //
+ case 443: { action. consumeMemberDeclarationQualifiedId(); break;
+ }
+
+ //
+ // Rule 449: member_declaration ::= ERROR_TOKEN
+ //
+ case 449: { action. consumeDeclarationProblem(); break;
+ }
+
+ //
+ // Rule 458: member_declarator ::= declarator constant_initializer
+ //
+ case 458: { action. consumeMemberDeclaratorWithInitializer(); break;
+ }
+
+ //
+ // Rule 459: member_declarator ::= bit_field_declarator : constant_expression
+ //
+ case 459: { action. consumeBitField(true); break;
+ }
+
+ //
+ // Rule 460: member_declarator ::= : constant_expression
+ //
+ case 460: { action. consumeBitField(false); break;
+ }
+
+ //
+ // Rule 461: bit_field_declarator ::= identifier_name
+ //
+ case 461: { action. consumeDirectDeclaratorIdentifier(); break;
+ }
+
+ //
+ // Rule 462: constant_initializer ::= = constant_expression
+ //
+ case 462: { action. consumeInitializer(); break;
+ }
+
+ //
+ // Rule 468: base_specifier ::= dcolon_opt nested_name_specifier_opt class_name
+ //
+ case 468: { action. consumeBaseSpecifier(false, false); break;
+ }
+
+ //
+ // Rule 469: base_specifier ::= virtual access_specifier_keyword_opt dcolon_opt nested_name_specifier_opt class_name
+ //
+ case 469: { action. consumeBaseSpecifier(true, true); break;
+ }
+
+ //
+ // Rule 470: base_specifier ::= access_specifier_keyword virtual dcolon_opt nested_name_specifier_opt class_name
+ //
+ case 470: { action. consumeBaseSpecifier(true, true); break;
+ }
+
+ //
+ // Rule 471: base_specifier ::= access_specifier_keyword dcolon_opt nested_name_specifier_opt class_name
+ //
+ case 471: { action. consumeBaseSpecifier(true, false); break;
+ }
+
+ //
+ // Rule 472: access_specifier_keyword ::= private
+ //
+ case 472: { action. consumeToken(); break;
+ }
+
+ //
+ // Rule 473: access_specifier_keyword ::= protected
//
- case 405: { action. consumeVisibilityLabel(); break;
+ case 473: { action. consumeToken(); break;
}
//
- // Rule 406: member_declaration ::= declaration_specifiers_opt <openscope-ast> member_declarator_list ;
+ // Rule 474: access_specifier_keyword ::= public
//
- case 406: { action. consumeDeclarationSimple(true); break;
+ case 474: { action. consumeToken(); break;
}
//
- // Rule 407: member_declaration ::= declaration_specifiers_opt ;
+ // Rule 476: access_specifier_keyword_opt ::= $Empty
//
- case 407: { action. consumeDeclarationSimple(false); break;
+ case 476: { action. consumeEmpty(); break;
}
//
- // Rule 410: member_declaration ::= dcolon_opt nested_name_specifier template_opt unqualified_id_name ;
+ // Rule 478: conversion_function_id_name ::= conversion_function_id < <openscope-ast> template_argument_list_opt >
//
- case 410: { action. consumeMemberDeclarationQualifiedId(); break;
+ case 478: { action. consumeTemplateId(); break;
}
//
- // Rule 416: member_declaration ::= ERROR_TOKEN
+ // Rule 479: conversion_function_id ::= operator conversion_type_id
//
- case 416: { action. consumeDeclarationProblem(); break;
+ case 479: { action. consumeConversionName(); break;
}
//
- // Rule 425: member_declarator ::= declarator constant_initializer
+ // Rule 480: conversion_type_id ::= type_specifier_seq conversion_declarator
//
- case 425: { action. consumeMemberDeclaratorWithInitializer(); break;
+ case 480: { action. consumeTypeId(true); break;
}
//
- // Rule 426: member_declarator ::= bit_field_declarator : constant_expression
+ // Rule 481: conversion_type_id ::= type_specifier_seq
//
- case 426: { action. consumeBitField(true); break;
+ case 481: { action. consumeTypeId(false); break;
}
//
- // Rule 427: member_declarator ::= : constant_expression
+ // Rule 482: conversion_declarator ::= <openscope-ast> ptr_operator_seq
//
- case 427: { action. consumeBitField(false); break;
+ case 482: { action. consumeDeclaratorWithPointer(false); break;
}
//
- // Rule 428: bit_field_declarator ::= identifier_name
+ // Rule 488: mem_initializer ::= mem_initializer_name ( expression_list_opt )
//
- case 428: { action. consumeDirectDeclaratorIdentifier(); break;
+ case 488: { action. consumeConstructorChainInitializer(); break;
}
//
- // Rule 429: constant_initializer ::= = constant_expression
+ // Rule 489: mem_initializer_name ::= dcolon_opt nested_name_specifier_opt class_name
//
- case 429: { action. consumeInitializer(); break;
+ case 489: { action. consumeQualifiedId(false); break;
}
//
- // Rule 435: base_specifier ::= dcolon_opt nested_name_specifier_opt class_name
+ // Rule 492: operator_function_id_name ::= operator_id_name < <openscope-ast> template_argument_list_opt >
//
- case 435: { action. consumeBaseSpecifier(false, false); break;
+ case 492: { action. consumeTemplateId(); break;
}
//
- // Rule 436: base_specifier ::= virtual access_specifier_keyword_opt dcolon_opt nested_name_specifier_opt class_name
+ // Rule 493: operator_id_name ::= operator overloadable_operator
//
- case 436: { action. consumeBaseSpecifier(true, true); break;
+ case 493: { action. consumeOperatorName(); break;
}
//
- // Rule 437: base_specifier ::= access_specifier_keyword virtual dcolon_opt nested_name_specifier_opt class_name
+ // Rule 536: template_declaration ::= export_opt template < <openscope-ast> template_parameter_list > declaration
//
- case 437: { action. consumeBaseSpecifier(true, true); break;
+ case 536: { action. consumeTemplateDeclaration(); break;
}
//
- // Rule 438: base_specifier ::= access_specifier_keyword dcolon_opt nested_name_specifier_opt class_name
+ // Rule 537: export_opt ::= export
//
- case 438: { action. consumeBaseSpecifier(true, false); break;
+ case 537: { action. consumePlaceHolder(); break;
}
//
- // Rule 439: access_specifier_keyword ::= private
+ // Rule 538: export_opt ::= $Empty
//
- case 439: { action. consumeToken(); break;
+ case 538: { action. consumeEmpty(); break;
}
//
- // Rule 440: access_specifier_keyword ::= protected
+ // Rule 542: template_parameter ::= parameter_declaration
//
- case 440: { action. consumeToken(); break;
+ case 542: { action. consumeTemplateParamterDeclaration(); break;
}
//
- // Rule 441: access_specifier_keyword ::= public
+ // Rule 543: type_parameter ::= class identifier_name_opt
//
- case 441: { action. consumeToken(); break;
+ case 543: { action. consumeSimpleTypeTemplateParameter(false); break;
}
//
- // Rule 443: access_specifier_keyword_opt ::= $Empty
+ // Rule 544: type_parameter ::= class identifier_name_opt = type_id
//
- case 443: { action. consumeEmpty(); break;
+ case 544: { action. consumeSimpleTypeTemplateParameter(true); break;
}
//
- // Rule 445: conversion_function_id_name ::= conversion_function_id < <openscope-ast> template_argument_list_opt >
+ // Rule 545: type_parameter ::= typename identifier_name_opt
//
- case 445: { action. consumeTemplateId(); break;
+ case 545: { action. consumeSimpleTypeTemplateParameter(false); break;
}
//
- // Rule 446: conversion_function_id ::= operator conversion_type_id
+ // Rule 546: type_parameter ::= typename identifier_name_opt = type_id
//
- case 446: { action. consumeConversionName(); break;
+ case 546: { action. consumeSimpleTypeTemplateParameter(true); break;
}
//
- // Rule 447: conversion_type_id ::= type_specifier_seq conversion_declarator
+ // Rule 547: type_parameter ::= template < <openscope-ast> template_parameter_list > class identifier_name_opt
//
- case 447: { action. consumeTypeId(true); break;
+ case 547: { action. consumeTemplatedTypeTemplateParameter(false); break;
}
//
- // Rule 448: conversion_type_id ::= type_specifier_seq
+ // Rule 548: type_parameter ::= template < <openscope-ast> template_parameter_list > class identifier_name_opt = id_expression
//
- case 448: { action. consumeTypeId(false); break;
+ case 548: { action. consumeTemplatedTypeTemplateParameter(true); break;
}
//
- // Rule 449: conversion_declarator ::= <openscope-ast> ptr_operator_seq
+ // Rule 549: template_id_name ::= identifier_name < <openscope-ast> template_argument_list_opt >
//
- case 449: { action. consumeDeclaratorWithPointer(false); break;
+ case 549: { action. consumeTemplateId(); break;
}
//
- // Rule 455: mem_initializer ::= mem_initializer_name ( expression_list_opt )
+ // Rule 556: nested_name_specifier_inTemplate ::= class_or_namespace_name_inTemplate :: nested_name_specifier_with_template_inTemplate
//
- case 455: { action. consumeConstructorChainInitializer(); break;
+ case 556: { action. consumeNestedNameSpecifier(true); break;
}
//
- // Rule 456: mem_initializer_name ::= dcolon_opt nested_name_specifier_opt class_name
+ // Rule 557: nested_name_specifier_inTemplate ::= class_or_namespace_name_inTemplate ::
//
- case 456: { action. consumeQualifiedId(false); break;
+ case 557: { action. consumeNestedNameSpecifier(false); break;
}
//
- // Rule 459: operator_function_id_name ::= operator_id_name < <openscope-ast> template_argument_list_opt >
+ // Rule 558: nested_name_specifier_with_template_inTemplate ::= class_or_namespace_name_with_template_inTemplate :: nested_name_specifier_with_template_inTemplate
//
- case 459: { action. consumeTemplateId(); break;
+ case 558: { action. consumeNestedNameSpecifier(true); break;
}
//
- // Rule 460: operator_id_name ::= operator overloadable_operator
+ // Rule 559: nested_name_specifier_with_template_inTemplate ::= class_or_namespace_name_with_template_inTemplate ::
//
- case 460: { action. consumeOperatorName(); break;
+ case 559: { action. consumeNestedNameSpecifier(false); break;
}
//
- // Rule 503: template_declaration ::= export_opt template < <openscope-ast> template_parameter_list > declaration
+ // Rule 560: class_or_namespace_name_with_template_inTemplate ::= template_opt class_or_namespace_name_inTemplate
//
- case 503: { action. consumeTemplateDeclaration(); break;
+ case 560: { action. consumeNameWithTemplateKeyword(); break;
}
//
- // Rule 504: export_opt ::= export
+ // Rule 562: nested_name_specifier_opt_inTemplate ::= $Empty
//
- case 504: { action. consumePlaceHolder(); break;
+ case 562: { action. consumeNestedNameSpecifierEmpty(); break;
}
//
- // Rule 505: export_opt ::= $Empty
+ // Rule 565: type_name_specifier_inTemplate ::= typename dcolon_opt nested_name_specifier identifier_name
//
- case 505: { action. consumeEmpty(); break;
+ case 565: { action. consumeQualifiedId(false); break;
}
//
- // Rule 509: template_parameter ::= parameter_declaration
+ // Rule 566: type_name_specifier_inTemplate ::= typename dcolon_opt nested_name_specifier template_opt template_id_name
//
- case 509: { action. consumeTemplateParamterDeclaration(); break;
+ case 566: { action. consumeQualifiedId(true); break;
}
//
- // Rule 510: type_parameter ::= class identifier_name_opt
+ // Rule 571: declaration_specifiers_inTemplate ::= <openscope-ast> simple_declaration_specifiers
//
- case 510: { action. consumeSimpleTypeTemplateParameter(false); break;
+ case 571: { action. consumeDeclarationSpecifiersSimple(); break;
}
//
- // Rule 511: type_parameter ::= class identifier_name_opt = type_id
+ // Rule 572: declaration_specifiers_inTemplate ::= <openscope-ast> class_declaration_specifiers
//
- case 511: { action. consumeSimpleTypeTemplateParameter(true); break;
+ case 572: { action. consumeDeclarationSpecifiersComposite(); break;
}
//
- // Rule 512: type_parameter ::= typename identifier_name_opt
+ // Rule 573: declaration_specifiers_inTemplate ::= <openscope-ast> elaborated_declaration_specifiers
//
- case 512: { action. consumeSimpleTypeTemplateParameter(false); break;
+ case 573: { action. consumeDeclarationSpecifiersComposite(); break;
}
//
- // Rule 513: type_parameter ::= typename identifier_name_opt = type_id
+ // Rule 574: declaration_specifiers_inTemplate ::= <openscope-ast> enum_declaration_specifiers
//
- case 513: { action. consumeSimpleTypeTemplateParameter(true); break;
+ case 574: { action. consumeDeclarationSpecifiersComposite(); break;
}
//
- // Rule 514: type_parameter ::= template < <openscope-ast> template_parameter_list > class identifier_name_opt
+ // Rule 575: declaration_specifiers_inTemplate ::= <openscope-ast> type_name_declaration_specifiers_inTemplate
//
- case 514: { action. consumeTemplatedTypeTemplateParameter(false); break;
+ case 575: { action. consumeDeclarationSpecifiersTypeName(); break;
}
//
- // Rule 515: type_parameter ::= template < <openscope-ast> template_parameter_list > class identifier_name_opt = id_expression
+ // Rule 577: type_id_inTemplate ::= type_specifier_seq_inTemplate
//
- case 515: { action. consumeTemplatedTypeTemplateParameter(true); break;
+ case 577: { action. consumeTypeId(false); break;
}
//
- // Rule 516: template_id_name ::= identifier_name < <openscope-ast> template_argument_list_opt >
+ // Rule 578: type_id_inTemplate ::= type_specifier_seq_inTemplate abstract_declarator
//
- case 516: { action. consumeTemplateId(); break;
+ case 578: { action. consumeTypeId(true); break;
}
//
- // Rule 521: template_argument ::= assignment_expression
+ // Rule 579: template_argument ::= assignment_expression_inTemplate
//
- case 521: { action. consumeTemplateArgumentExpression(); break;
+ case 579: { action. consumeTemplateArgumentExpression(); break;
}
//
- // Rule 522: template_argument ::= type_id
+ // Rule 580: template_argument ::= type_id_inTemplate
//
- case 522: { action. consumeTemplateArgumentTypeId(); break;
+ case 580: { action. consumeTemplateArgumentTypeId(); break;
}
//
- // Rule 523: explicit_instantiation ::= template declaration
+ // Rule 581: explicit_instantiation ::= template declaration
//
- case 523: { action. consumeTemplateExplicitInstantiation(); break;
+ case 581: { action. consumeTemplateExplicitInstantiation(); break;
}
//
- // Rule 524: explicit_specialization ::= template < > declaration
+ // Rule 582: explicit_specialization ::= template < > declaration
//
- case 524: { action. consumeTemplateExplicitSpecialization(); break;
+ case 582: { action. consumeTemplateExplicitSpecialization(); break;
}
//
- // Rule 525: try_block ::= try compound_statement <openscope-ast> handler_seq
+ // Rule 583: try_block ::= try compound_statement <openscope-ast> handler_seq
//
- case 525: { action. consumeStatementTryBlock(true); break;
+ case 583: { action. consumeStatementTryBlock(true); break;
}
//
- // Rule 526: try_block ::= try compound_statement
+ // Rule 584: try_block ::= try compound_statement
//
- case 526: { action. consumeStatementTryBlock(false); break;
+ case 584: { action. consumeStatementTryBlock(false); break;
}
//
- // Rule 529: handler ::= catch ( exception_declaration ) compound_statement
+ // Rule 587: handler ::= catch ( exception_declaration ) compound_statement
//
- case 529: { action. consumeStatementCatchHandler(false); break;
+ case 587: { action. consumeStatementCatchHandler(false); break;
}
//
- // Rule 530: handler ::= catch ( ... ) compound_statement
+ // Rule 588: handler ::= catch ( ... ) compound_statement
//
- case 530: { action. consumeStatementCatchHandler(true); break;
+ case 588: { action. consumeStatementCatchHandler(true); break;
}
//
- // Rule 531: exception_declaration ::= type_specifier_seq <openscope-ast> declarator
+ // Rule 589: exception_declaration ::= type_specifier_seq <openscope-ast> declarator
//
- case 531: { action. consumeDeclarationSimple(true); break;
+ case 589: { action. consumeDeclarationSimple(true); break;
}
//
- // Rule 532: exception_declaration ::= type_specifier_seq <openscope-ast> abstract_declarator
+ // Rule 590: exception_declaration ::= type_specifier_seq <openscope-ast> abstract_declarator
//
- case 532: { action. consumeDeclarationSimple(true); break;
+ case 590: { action. consumeDeclarationSimple(true); break;
}
//
- // Rule 533: exception_declaration ::= type_specifier_seq
+ // Rule 591: exception_declaration ::= type_specifier_seq
//
- case 533: { action. consumeDeclarationSimple(false); break;
+ case 591: { action. consumeDeclarationSimple(false); break;
}
//
- // Rule 535: exception_specification ::= throw ( )
+ // Rule 593: exception_specification ::= throw ( )
//
- case 535: { action. consumePlaceHolder(); break;
+ case 593: { action. consumePlaceHolder(); break;
}
//
- // Rule 541: expression_parser_start ::= ERROR_TOKEN
+ // Rule 599: expression_parser_start ::= ERROR_TOKEN
//
- case 541: { action. consumeEmpty(); break;
+ case 599: { action. consumeEmpty(); break;
}
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPExpressionParserprs.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPExpressionParserprs.java
index da47ac3a6a..050017f040 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPExpressionParserprs.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPExpressionParserprs.java
@@ -51,488 +51,623 @@ public class CPPExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, CP
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,2,1,3,1,
- 0,1,0,1,1,0,1,1,1,1,
- 1,1,1,1,1,3,4,3,2,1,
- 4,2,1,2,5,7,5,1,4,1,
- 0,5,7,2,8,1,1,2,2,3,
- 2,3,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,2,1,
- 0,4,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,3,5,3,3,1,3,3,1,3,
+ 1,3,1,3,1,3,1,3,1,5,
+ 1,1,3,3,3,3,3,3,3,3,
+ 3,3,3,1,2,1,1,3,3,3,
+ 3,3,3,3,3,3,3,3,1,2,
+ 1,3,1,0,1,0,1,1,0,1,
+ 1,1,1,1,1,1,1,1,3,4,
+ 3,2,1,4,2,1,2,5,7,5,
+ 1,4,1,0,5,7,2,8,1,1,
+ 2,2,3,2,3,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,
- 2,5,6,5,0,1,0,7,8,0,
- 1,3,1,0,1,3,1,7,6,0,
- 7,6,1,0,6,5,6,4,1,3,
- 1,0,1,1,2,1,1,3,1,3,
- 1,1,1,1,3,9,2,2,3,2,
- 5,3,7,0,1,2,2,1,0,1,
- 1,1,3,1,2,1,1,2,3,1,
- 1,1,3,2,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,1,7,6,3,0,0,1,3,
- 1,1,5,6,6,7,7,0,0,1,
- 0,1,1,1,2,4,2,2,1,5,
- 1,1,1,1,1,1,1,2,1,0,
- 1,3,1,1,2,3,2,1,2,2,
- 1,0,1,3,3,5,5,4,1,1,
- 1,1,0,1,5,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,2,1,0,4,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,3,
+ 4,4,5,2,5,6,5,0,1,0,
+ 7,8,0,1,3,1,0,1,3,1,
+ 7,6,0,7,6,1,0,6,5,6,
+ 4,1,3,1,0,1,1,2,1,1,
+ 3,1,3,1,1,1,1,3,9,2,
+ 2,3,2,5,3,7,0,1,2,2,
+ 1,0,1,1,1,3,1,2,1,1,
+ 2,3,1,1,1,3,2,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,1,7,6,3,0,
+ 0,1,3,1,1,5,6,6,7,7,
+ 0,0,1,0,1,1,1,2,4,2,
+ 2,1,5,1,1,1,1,1,1,1,
+ 2,1,0,1,3,1,1,2,3,2,
+ 1,2,2,1,0,1,3,3,5,5,
+ 4,1,1,1,1,0,1,5,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,
- 2,2,7,1,0,1,3,1,1,2,
- 4,2,4,7,9,5,1,3,1,0,
- 1,1,2,4,4,2,1,2,5,5,
- 3,3,1,4,3,1,0,1,3,1,
- 1,-62,0,0,0,-2,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-4,0,0,0,0,0,
- 0,-384,0,0,-5,0,0,0,0,0,
- -6,-408,0,0,-243,0,-283,0,0,0,
- 0,0,0,0,0,0,0,0,0,-442,
- -466,0,-113,0,0,-308,0,0,0,0,
- 0,0,0,0,0,0,0,0,-64,0,
- -293,0,0,-58,0,0,0,0,0,0,
- -189,0,0,-16,0,0,0,0,0,0,
- 0,0,0,0,-54,0,0,0,0,0,
- 0,0,-179,0,0,0,-330,0,0,0,
- 0,0,0,0,-53,0,0,0,0,0,
- 0,-334,0,0,-65,-273,0,0,0,0,
- 0,0,0,-127,0,0,0,0,0,0,
- 0,0,0,0,0,-115,0,0,0,0,
+ 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,
+ 3,1,0,1,1,3,2,3,2,2,
+ 1,0,1,1,4,5,2,1,2,2,
+ 2,2,2,2,2,1,1,2,1,1,
+ 2,4,4,2,1,2,5,5,3,3,
+ 1,4,3,1,0,1,3,1,1,-62,
+ 0,0,0,0,-2,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-122,-65,0,-4,
+ 0,0,0,0,0,-54,0,0,-48,0,
+ 0,-5,-10,0,-6,0,0,-117,-137,-119,
+ 0,0,-365,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-313,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,0,0,0,0,0,0,0,
- -10,0,0,0,0,0,0,0,-119,0,
- 0,0,-178,0,0,0,0,-128,0,0,
- 0,0,-116,0,0,0,0,0,0,0,
+ 0,0,0,-73,-120,0,0,0,0,0,
+ 0,0,0,0,-59,0,0,-470,0,0,
+ 0,0,-217,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-438,0,
+ 0,0,0,0,0,0,0,0,-267,-430,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-262,0,-115,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-264,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-142,0,0,0,0,0,0,-71,
- 0,0,0,-349,0,0,0,0,0,0,
- 0,0,-289,-244,0,0,0,0,0,-259,
- 0,0,0,-131,0,0,0,0,0,0,
+ 0,0,0,-53,0,-439,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-285,
+ 0,-129,0,0,-281,0,0,0,0,-455,
+ 0,0,0,0,0,-373,0,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,0,
- 0,0,0,0,0,0,-129,0,0,0,
- 0,0,-148,0,0,0,-274,0,0,0,
- -117,-188,0,-190,0,0,0,0,0,0,
- -220,0,0,0,0,0,0,0,0,0,
+ -369,0,0,0,-508,0,0,0,0,0,
+ 0,-311,0,0,-539,0,0,0,0,-130,
+ 0,-127,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ -598,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-343,0,0,0,0,-462,0,
+ 0,0,0,0,0,-131,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -120,0,0,-302,0,-7,0,0,0,-51,
- 0,0,0,0,-359,0,0,-59,0,0,
- -416,0,0,0,0,0,0,-424,0,0,
- -72,0,0,0,-8,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-515,0,0,0,0,0,0,0,0,
+ 0,0,0,-213,0,-463,0,0,0,0,
+ 0,0,-58,0,0,0,-417,0,0,0,
+ 0,-7,0,0,0,0,0,-8,0,-529,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-9,0,0,0,0,0,
- 0,0,0,0,-363,0,0,0,0,0,
- 0,0,0,0,0,-539,0,0,0,-137,
+ 0,0,0,-261,0,0,0,0,0,0,
0,0,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,-12,0,
- -206,0,0,0,0,0,0,0,0,-391,
- -135,0,0,0,-13,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ -144,0,0,-150,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-9,-421,0,0,
+ 0,-474,0,0,0,0,0,-138,0,-407,
+ 0,0,0,0,0,0,0,0,0,-71,
+ 0,0,0,0,-154,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-106,0,
+ 0,0,0,-268,0,0,0,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,-412,-332,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-315,0,0,0,
+ -64,0,0,0,0,0,0,-347,0,0,
+ 0,0,-573,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-49,
+ -11,0,-12,0,0,0,0,0,0,0,
+ 0,-13,0,0,0,-179,0,0,0,-597,
+ 0,0,0,0,-334,0,0,0,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,-230,-74,0,
- 0,0,0,-454,-257,-446,0,0,0,0,
+ 0,0,0,0,0,0,0,-124,0,0,
+ 0,-284,0,0,0,0,0,0,-51,0,
+ 0,0,-50,0,-15,0,0,0,-504,0,
0,0,0,0,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,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-3,
+ 0,-142,0,0,0,0,-200,0,0,0,
+ 0,-29,-3,0,0,0,0,-321,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-57,
+ -30,0,0,0,0,0,0,0,0,0,
+ 0,-387,0,0,-271,0,0,0,0,-148,
+ -135,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-178,0,0,
+ 0,0,-121,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-331,0,0,
+ 0,0,-207,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-15,0,-397,0,0,0,0,-316,
- 0,0,-347,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-60,0,0,0,0,
+ 0,0,0,0,0,0,-263,0,0,-16,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-222,0,0,0,
+ -377,0,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,-28,-130,0,0,0,-277,0,0,0,
- -29,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-30,
- 0,0,0,0,0,0,0,0,0,-31,
- 0,-183,0,0,0,0,0,0,0,-147,
- 0,0,0,0,-222,0,0,0,0,0,
- -419,-320,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,0,0,0,
+ 0,0,0,-31,0,0,0,-328,0,0,
+ -378,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-299,0,-32,0,0,0,
- 0,-144,0,0,0,-18,0,0,0,-344,
- -321,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-524,0,0,
+ -390,0,0,0,0,0,-359,0,0,-32,
+ 0,0,-266,0,0,0,0,-39,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-33,0,-154,0,0,0,0,
- 0,0,0,-39,0,0,0,0,0,0,
+ 0,0,0,0,-145,-318,0,0,0,0,
+ 0,0,0,-33,0,0,-34,0,0,-264,
+ -237,0,0,0,0,0,-41,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-122,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-41,0,0,
- 0,-301,0,0,0,0,0,0,0,0,
+ 0,0,0,-503,0,0,0,0,0,0,
+ 0,0,-588,0,0,-423,0,0,-275,0,
+ 0,0,0,0,-35,0,-94,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -34,0,0,0,0,0,0,0,0,0,
- -379,0,-49,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,0,-223,0,0,0,0,0,0,
- 0,0,0,0,0,-50,0,0,0,0,
+ 0,0,0,-449,0,0,0,0,-199,0,
+ 0,0,0,0,0,-36,0,0,-495,0,
0,0,0,-95,0,0,0,0,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,0,0,0,-407,0,-57,0,
- 0,0,0,-60,0,0,-96,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-298,
+ 0,-201,0,-37,0,0,0,0,0,0,
+ 0,0,-38,0,0,-282,0,0,0,0,
+ -96,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-186,0,0,0,0,0,0,0,-97,
+ 0,0,0,0,0,0,0,0,-362,0,
+ -40,0,0,0,0,0,-404,0,0,-55,
+ 0,0,-497,0,0,0,0,-97,0,0,
+ 0,0,-56,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-355,
+ 0,0,0,-425,0,0,0,0,0,-531,
+ 0,0,0,0,-98,0,0,0,0,-415,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-500,0,-36,0,0,0,-196,-107,
- 0,0,-98,0,0,0,-339,0,0,0,
+ 0,0,0,0,-66,0,-445,0,0,0,
+ 0,0,0,0,0,0,-532,0,0,0,
+ 0,-99,0,0,0,0,-448,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-37,0,0,0,0,
- 0,0,0,0,0,-530,0,-200,0,0,
- 0,0,-108,0,0,-99,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-459,
+ 0,-67,0,0,0,0,0,-464,0,0,
+ 0,0,0,-288,0,0,0,0,-100,0,
+ 0,0,0,-452,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-477,0,0,-69,0,
+ -472,0,0,0,0,0,0,0,0,0,
+ -289,0,0,0,0,-101,0,0,0,0,
+ -478,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,-558,-473,0,-70,0,0,0,0,
+ 0,-481,0,0,0,0,0,-329,0,0,
+ 0,0,-102,0,0,0,0,-109,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-38,-138,0,0,-100,0,
+ 0,0,0,0,0,0,0,0,0,-197,
+ 0,0,-110,0,0,0,0,0,-506,0,
+ 0,0,0,0,-341,0,0,0,0,-103,
+ 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,-211,0,0,0,
+ 0,0,0,0,0,-112,0,0,0,0,
+ 0,-371,0,0,0,0,-104,0,0,0,
+ 0,-132,0,0,0,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,
- 0,-531,0,-205,0,0,0,0,0,0,
- 0,-101,0,0,0,-40,0,0,0,0,
+ 0,0,0,-370,-485,0,0,0,0,0,
+ 0,0,-517,0,0,0,0,0,-203,0,
+ 0,0,0,-224,0,0,0,0,-139,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-231,0,0,0,
- 0,-114,0,0,-102,0,0,0,0,0,
+ 0,0,0,-113,0,-322,0,0,0,-526,
+ 0,0,-402,0,0,-380,0,0,0,0,
+ -248,0,0,0,0,-140,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-55,0,0,
- 0,0,0,0,0,0,0,-149,0,-256,
- 0,0,0,0,-153,0,0,-103,0,0,
- 0,-375,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ -141,-505,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-14,0,-118,0,-155,0,
+ -432,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-249,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -198,0,-269,0,0,0,0,-280,0,0,
- -104,0,0,0,-56,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-286,-107,0,0,0,-156,-433,
+ -335,0,-411,0,0,0,-157,0,0,0,
+ -194,0,-231,0,0,0,0,0,-437,0,
+ 0,0,-482,-412,0,0,0,0,0,0,
+ 0,0,-250,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -378,0,0,-207,0,-270,0,0,0,0,
- -514,0,0,-213,0,0,0,-66,0,0,
+ 0,0,0,0,0,0,0,0,0,-108,
+ 0,0,-114,0,0,0,-158,0,0,-274,
+ 0,0,0,0,0,0,-159,0,0,0,
+ 0,0,0,0,0,0,-589,0,-160,0,
+ 0,-356,0,0,0,0,0,0,-251,0,
+ 0,0,0,-436,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-566,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-235,0,-272,0,
- 0,0,0,-242,0,0,-533,0,0,0,
- -227,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ -161,0,0,0,-162,0,-163,0,-164,0,
+ 0,0,0,0,-252,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-276,0,0,0,0,-249,0,0,-358,
- 0,0,0,-333,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,-165,0,0,-392,0,0,0,0,0,
+ -216,0,0,0,-166,0,0,0,-43,0,
+ -167,0,-442,0,-325,0,0,0,0,0,
+ -494,0,0,0,0,0,0,0,0,0,
+ -253,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-67,0,-69,0,0,0,-382,0,
- 0,0,-70,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-168,-149,0,
+ 0,-72,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-446,0,0,0,-352,0,
+ 0,-465,-169,0,0,0,0,0,0,0,
+ -170,0,0,0,0,0,-254,0,0,0,
+ 0,-153,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-209,0,-152,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-466,
+ -272,0,-171,0,0,0,-596,0,-358,0,
+ -310,0,-172,0,0,0,-173,0,0,0,
+ 0,0,-255,0,0,0,0,-218,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-225,0,0,
- 0,-437,0,0,0,0,-383,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-346,
- 0,0,0,0,0,0,0,0,0,-367,
- 0,-109,0,0,0,-457,0,0,0,0,
+ 0,0,-147,0,0,0,-223,0,0,0,
+ 0,0,0,-276,0,0,0,0,-174,0,
+ -357,-323,-175,-512,-324,0,0,0,0,0,
+ 0,-376,-391,0,0,0,0,0,-256,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-305,0,0,0,0,
- 0,0,0,0,-234,0,0,0,-439,0,
- 0,0,-110,-106,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-176,0,-395,0,
+ 0,0,-528,0,0,0,0,0,0,-283,
+ -177,0,0,0,-180,0,-413,-574,0,0,
+ 0,0,-184,0,0,0,-394,-572,-185,0,
+ 0,0,0,0,-257,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-406,0,0,0,
- 0,0,0,0,0,0,-288,0,-267,0,
- 0,-202,-93,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,-290,0,0,-435,0,0,0,0,0,
+ 0,0,0,0,0,-326,-381,0,-44,0,
+ 0,0,0,0,-186,-330,-187,0,-123,0,
+ 0,0,-420,0,-188,0,0,0,0,0,
+ -258,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-357,0,0,-111,0,-91,0,0,
- 0,-250,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-189,0,0,
+ 0,0,-294,0,0,-342,-363,0,0,0,
+ 0,0,-414,0,-45,0,-125,0,-190,0,
+ -191,0,-192,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-354,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -251,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,-291,-292,0,0,0,0,0,
+ 0,-193,0,-535,-367,-196,-346,-204,-134,0,
+ 0,0,0,0,-205,0,0,0,-208,0,
+ 0,0,-542,0,0,0,-397,0,0,0,
+ 0,0,-591,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-88,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-368,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-388,0,0,0,0,
- 0,0,-89,0,0,0,-112,0,0,0,
+ 0,-219,0,0,0,-229,0,-293,0,-389,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-132,0,0,0,0,
- 0,-90,0,0,0,-139,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-140,0,0,0,0,0,
- -398,0,0,0,0,0,0,0,0,0,
- 0,0,0,-82,0,0,0,-141,0,0,
+ 0,0,0,0,0,0,0,0,-230,0,
+ 0,-527,0,0,0,-238,0,0,-340,0,
+ 0,-405,0,0,0,0,-559,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-269,
+ 0,0,0,-277,0,0,0,-424,0,0,
+ -379,0,0,-501,-385,0,0,-61,-393,0,
+ -279,-586,0,0,-220,0,0,0,-416,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-105,-233,0,0,0,-150,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-281,0,0,-337,0,0,0,
- -268,0,0,0,0,0,0,0,-380,0,
- 0,0,-155,0,-252,-83,0,0,0,0,
+ 0,0,0,0,0,-396,0,0,0,0,
0,0,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,-241,0,0,0,0,-473,0,
- 0,0,-156,0,0,0,-540,0,0,0,
+ 0,0,0,0,0,0,0,0,-327,0,
+ -602,0,0,0,0,0,-287,0,0,-298,
+ 0,0,-299,-300,0,0,0,0,0,0,
+ 0,0,-301,-302,-540,-350,0,-441,0,0,
0,0,0,0,0,0,0,0,0,0,
- -212,0,-377,0,0,0,-157,0,0,0,
- 0,0,0,0,-286,-84,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-232,0,-538,-303,0,-585,
+ 0,0,0,0,0,0,-351,0,0,-515,
0,0,0,0,0,0,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,0,-304,0,-305,
+ 0,-306,0,0,0,0,0,0,-399,0,
+ 0,-233,-401,0,-418,-427,-451,0,-307,0,
+ 0,0,-308,0,0,0,-309,-18,0,0,
+ 0,0,-260,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-237,0,0,0,0,0,0,0,0,
- 0,0,0,0,-124,-143,0,0,0,-271,
- 0,0,-307,0,0,0,0,0,0,0,
- 0,0,0,0,0,-423,-192,0,0,0,
- 0,0,0,-300,-52,0,0,0,-245,0,
- 0,-470,0,-47,0,0,0,0,0,0,
- 0,0,0,0,-158,0,0,-296,-240,0,
- 0,0,0,0,0,-159,-467,0,0,0,
- 0,0,0,0,0,0,0,0,0,-247,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-248,0,0,0,0,0,-61,0,
- -160,0,0,-161,0,0,0,-345,0,0,
- 0,-162,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-356,-297,-20,0,0,
+ -476,-353,0,-280,-1,0,0,0,0,0,
+ 0,0,-314,0,-316,-317,0,0,-480,0,
+ 0,0,0,0,-489,0,-553,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,0,0,-315,0,0,0,0,
- -163,-211,0,0,0,0,0,0,0,0,
- -164,0,0,-165,0,-312,0,0,0,0,
- 0,0,0,0,0,0,0,0,-166,0,
- 0,0,0,0,-167,0,0,-325,0,-86,
+ 0,0,-492,-332,-554,0,0,0,0,0,
+ 0,-382,0,-247,0,0,0,0,-422,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-168,0,0,0,-87,0,0,0,
+ -434,0,-534,0,-537,0,0,0,0,0,
+ -556,-560,-333,-344,-569,0,0,-561,0,0,
+ 0,0,0,0,-348,-349,0,0,0,-91,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-435,
- 0,0,0,0,-152,0,0,0,0,0,
- 0,0,0,0,0,0,0,-275,0,0,
- 0,-365,0,-169,-170,0,0,-146,-292,0,
- 0,0,-306,0,0,0,0,-455,0,0,
- -310,0,0,-313,0,-445,0,0,0,0,
- 0,0,0,0,0,-171,0,0,-353,-239,
- 0,0,0,0,-324,-172,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-361,
- 0,-173,0,0,0,0,0,0,0,0,
- 0,0,0,-390,0,-311,-436,0,0,0,
- -174,0,0,0,0,0,0,0,0,0,
- 0,0,0,-532,0,0,0,0,0,0,
- 0,0,0,0,0,0,-77,0,0,0,
- 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,-261,0,0,-145,0,
- -175,0,0,0,0,0,-322,0,0,0,
- 0,0,-176,0,0,0,-121,0,0,-484,
- 0,0,-177,0,0,0,-404,0,0,0,
- 0,-327,0,0,0,-180,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-78,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,-364,0,0,-118,-17,-181,-328,0,
- 0,0,0,-182,-151,0,0,0,0,0,
- 0,0,0,0,-185,0,0,-464,0,0,
- -193,0,0,0,0,0,0,0,0,0,
- 0,-394,-187,0,0,0,0,0,-194,0,
- 0,-197,0,0,0,0,0,0,0,0,
- -335,0,0,0,0,-487,0,0,0,0,
- 0,-448,0,-527,0,0,0,0,0,0,
- 0,0,0,-208,0,-338,0,0,0,0,
- -354,0,0,0,0,0,0,0,0,0,
- 0,0,0,-489,0,0,0,0,0,0,
- 0,-341,0,0,0,0,0,0,0,0,
- 0,-14,0,-218,-219,0,0,-323,0,0,
- 0,-228,0,0,0,0,0,0,0,0,
- 0,-506,0,0,0,0,0,-236,-401,0,
- 0,0,0,0,0,0,0,0,0,-343,
- 0,-214,0,0,0,0,-238,0,-246,-420,
- 0,0,0,0,0,0,0,0,0,-520,
- 0,0,-360,0,0,0,0,-392,0,0,
- 0,0,0,0,0,0,0,-255,0,0,
- 0,0,0,-260,-262,-374,0,0,0,0,
- 0,0,0,0,0,0,0,-522,0,0,
- 0,0,0,-459,0,-369,0,0,0,0,
- 0,0,0,0,0,-505,0,0,-263,0,
- 0,-209,0,0,0,-278,0,0,0,0,
- 0,0,0,0,0,-279,0,0,0,-285,
- 0,-290,0,0,0,0,0,-319,0,0,
- 0,0,0,-294,0,-295,0,-229,0,0,
- 0,0,0,-426,0,0,0,0,0,0,
- 0,0,0,-524,0,0,0,0,0,0,
- 0,0,0,0,0,0,-136,-303,0,-393,
- 0,-1,0,0,-429,0,0,0,0,0,
- -526,0,0,-123,0,-468,-134,0,-418,-376,
- 0,0,0,0,-422,0,-431,0,0,0,
- 0,0,-125,0,-474,0,0,0,-304,0,
- 0,0,0,0,0,0,-414,0,0,0,
- 0,0,-336,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-415,0,
- -362,-469,0,0,-541,0,0,0,0,0,
- 0,0,0,0,0,0,-309,-427,0,0,
- 0,0,0,-317,0,0,0,0,-434,0,
- 0,0,0,-318,0,0,0,0,0,0,
- 0,-329,-340,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,-546,0,-348,0,0,0,0,-482,
- -472,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-476,0,-350,-370,0,0,
0,0,0,0,0,0,0,0,0,0,
- -479,0,0,0,0,0,-373,0,0,0,
- 0,0,-386,0,0,0,0,0,-477,0,
- 0,0,0,0,0,0,0,0,-475,0,
- -399,0,0,0,0,0,0,0,-79,0,
+ 0,0,0,0,0,0,0,-360,-361,-366,
+ 0,-374,0,0,0,-245,0,0,0,0,
+ -450,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,-375,-386,-406,0,-577,-372,0,-339,
+ 0,0,-408,0,0,-428,-431,-444,-457,-581,
+ 0,-458,0,-460,-461,-467,-469,-475,0,-484,
+ 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,
+ 0,0,0,-530,0,0,-246,0,0,0,
+ 0,-533,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-483,-490,-491,0,-514,-516,
+ -518,0,-594,-601,-519,-520,-521,-523,-541,-543,
+ -544,0,0,0,-88,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-546,-551,0,0,0,-242,0,
+ 0,0,0,-536,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-555,-562,-570,
+ -579,-587,-592,0,-603,0,0,0,0,0,
+ 0,0,0,0,-565,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,
+ 0,0,0,0,0,-567,-571,0,-90,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ -243,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-456,0,0,
+ 0,0,0,0,0,0,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,0,0,0,0,-575,0,0,
+ 0,0,-136,0,0,-525,-576,0,-182,-74,
+ 0,0,-105,0,0,0,0,0,0,-595,
+ 0,0,0,0,-338,0,-234,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-235,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,-600,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,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,0,0,0,0,0,0,0,0,
+ -84,0,0,0,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,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-239,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,-240,0,0,0,0,0,0,0,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,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-278,0,0,0,0,
+ 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,0,0,0,
+ 0,0,0,0,0,-337,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-364,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 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,0,-198,
+ 0,0,0,0,0,-295,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,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,0,
+ 0,-86,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-388,-47,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-593,0,-265,-225,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ -87,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-493,-128,0,0,
+ 0,0,0,0,-143,0,0,0,0,0,
+ 0,0,0,0,0,-568,0,0,0,0,
+ 0,0,0,0,0,-151,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-513,0,
+ -500,0,0,0,0,0,0,0,0,0,
+ 0,0,0,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,-227,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-590,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ -77,0,0,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,0,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,0,
+ 0,0,0,-509,0,0,0,0,0,0,
+ 0,-384,0,0,0,0,0,0,0,0,
+ 0,0,0,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,0,0,
+ 0,0,0,0,0,0,0,0,0,-522,
+ -270,0,0,0,0,0,-410,0,0,-228,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,-545,0,-550,0,0,0,0,0,-273,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-547,0,0,0,0,0,0,
+ 0,-336,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
0,0,-400,0,0,0,0,0,0,0,
+ 0,0,0,0,-259,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-564,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,0,0,0,-409,0,0,0,0,0,
+ -345,0,0,0,0,0,0,0,0,0,
+ 0,0,-563,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-578,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ -419,0,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,-17,0,
+ 0,0,0,0,-46,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-580,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-582,0,
+ 0,0,0,0,0,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,-468,0,0,0,0,
+ 0,-584,-195,0,0,0,0,0,0,-471,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,-320,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-80,0,0,0,-402,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-81,0,
- 0,0,-403,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-599,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-409,0,-21,0,0,0,-411,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-22,0,0,0,
- -417,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-23,
- 0,0,0,-425,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-24,0,0,0,-432,0,0,0,
+ 0,0,0,-583,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-25,0,0,0,-433,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-26,0,
- 0,0,-456,0,0,0,0,0,0,0,
+ -604,0,0,0,0,0,0,0,0,0,
+ 0,-486,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-202,
0,0,0,0,0,0,0,0,0,0,
- 0,-27,0,0,0,-458,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-63,0,0,0,-460,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-75,0,0,
- 0,-461,0,0,0,0,0,0,0,0,
+ 0,0,-181,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -76,0,0,0,-462,0,0,0,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,-133,0,0,0,-463,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-203,0,0,0,
- -538,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-381,
+ 0,0,0,0,-403,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-498,0,0,
+ 0,0,0,0,-20,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-501,-447,0,0,0,0,0,0,
- 0,0,0,0,0,0,-19,0,0,0,
- -495,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-368,-478,
- -465,-215,0,-48,-73,0,-528,0,0,0,
- 0,0,-396,0,0,-483,0,-485,-216,0,
- -486,0,0,0,0,0,0,0,0,-496,
- 0,0,0,0,0,0,-503,-544,-498,-253,
- 0,0,0,0,-488,0,0,0,0,0,
- 0,0,0,0,-287,0,0,0,0,0,
- 0,0,-523,0,0,0,0,0,0,0,
- -232,0,0,0,0,0,0,0,0,0,
- -502,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,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,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,-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,
+ 0,0,0,-23,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,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,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,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-63,
+ 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,0,-76,0,0,0,0,
+ 0,0,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,-214,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-19,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-426,-499,0,0,
+ 0,0,0,0,0,0,0,0,-215,-454,
0,0,0,0,0,0,0,0,-507,0,
- 0,0,-493,-43,-366,0,-44,0,0,-536,
- 0,0,-509,0,0,0,0,0,0,-511,
- -217,-497,-543,0,0,0,0,0,0,0,
- -504,0,0,0,0,0,0,0,0,0,
- 0,-126,0,0,0,0,0,-519,0,0,
- 0,0,0,-512,0,0,-405,0,0,0,
+ 0,0,-502,0,0,0,0,0,0,0,
+ 0,-212,0,0,0,0,0,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,-385,0,0,0,0,0,0,0,
- 0,0,0,0,0,-508,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-529,
- 0,0,0,0,0,-265,0,0,0,0,
- 0,0,0,0,0,0,0,0,-534,-199,
- -513,-517,0,0,0,-284,-545,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -518,-537,0,0,0,0,0,0,-371,0,
- 0,-355,0,0,0,0,0,0,0,0,
- 0,0,0,0,-395,0,0,0,0,0,
- 0,0,0,0,0,0,-254,-331,0,0,
- 0,0,0,0,0,0,0,0,-314,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-542,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -421,0,0,0,0,0,-492,0,0,0,
- 0,0,0,0,0,0,-430,0,0,0,
- 0,0,0,0,0,0,-291,-326,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,-510,0,0,0,0,0,0,0,0,
+ 0,-126,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-42,0,0,
+ 0,0,0,-68,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-438,0,0,
- 0,0,-443,0,0,0,0,0,0,0,
- 0,0,0,0,-450,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-516,0,
- 0,0,0,-195,0,0,0,0,0,0,
- 0,0,-372,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-224,0,
- 0,0,0,0,-266,0,0,0,0,0,
- 0,0,0,0,0,-282,0,0,0,0,
- 0,0,0,0,-481,0,0,0,0,0,
- 0,0,0,0,0,0,-342,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,0,0,
+ 0,0,0,0,0,0,0,-319,0,0,
0,0,0,0,0,0,0,0,0,0,
+ -236,0,0,0,0,0,-398,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-351,0,0,0,
- -389,0,0,0,0,0,0,0,0,0,
- 0,-410,0,0,0,0,0,0,-413,0,
- 0,0,0,0,0,0,-428,0,0,0,
- 0,0,0,0,0,0,0,0,-525,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,-441,0,0,0,0,0,
+ -429,0,0,0,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,0,0,0,-510,0,0,0,0,0,
- 0,0,-42,0,0,0,0,0,0,0,
- 0,0,-451,0,-68,-45,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-352,0,0,0,0,0,0,0,-184,
+ 0,0,0,-221,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-191,0,0,0,-201,0,0,0,
- 0,0,0,-210,0,0,0,-258,0,0,
- 0,-46,0,0,0,0,-490,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-453,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-479,
+ 0,0,0,0,0,0,0,0,0,-548,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-491,
- -494,0,0,0,0,-204,0,0,0,0,
- 0,0,0,0,-452,0,0,0,0,0,
- -453,0,0,0,0,0,0,-499,0,0,
- 0,0,-535,0,0,0,0,0,0,0,
+ -296,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-210,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ -488,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-383,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-549,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-312,0,0,0,
+ 0,0,0,-511,0,0,0,0,0,0,
+ -557,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-552,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
@@ -544,7 +679,7 @@ public class CPPExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, CP
0,0,0,0,0,0,0,0,0,0,
0,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;
@@ -554,551 +689,693 @@ public class CPPExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, CP
public interface BaseAction {
public final static char baseAction[] = {
- 176,4,137,82,82,33,33,68,68,39,
- 39,43,43,202,1,1,16,16,16,16,
+ 191,5,154,94,94,30,30,81,81,39,
+ 39,42,42,218,1,1,16,16,16,16,
16,16,16,17,17,17,15,11,11,6,
- 6,6,6,6,6,2,66,66,5,5,
- 12,12,45,45,138,138,139,58,58,44,
+ 6,6,6,6,6,2,75,75,4,4,
+ 12,12,44,44,155,155,156,67,67,43,
18,18,18,18,18,18,18,18,18,18,
18,18,18,18,18,18,18,18,18,18,
- 140,140,140,114,114,19,19,19,19,19,
+ 157,157,157,131,131,19,19,19,19,19,
19,19,19,19,19,19,19,19,20,20,
- 177,177,178,178,179,143,143,144,144,141,
- 141,145,142,142,21,21,22,22,24,24,
- 24,25,25,25,25,26,26,26,27,27,
- 27,28,28,28,28,28,29,29,29,31,
- 31,32,32,34,34,36,36,37,37,38,
- 38,42,42,41,41,41,41,41,41,41,
- 41,41,41,41,41,41,40,30,146,146,
- 96,96,180,180,91,203,203,69,69,69,
- 69,69,69,69,69,69,70,70,70,67,
- 67,57,57,181,181,71,71,71,102,102,
- 182,182,72,72,72,72,183,183,73,73,
- 73,73,73,74,74,83,83,83,83,83,
- 83,83,83,51,51,51,51,51,115,115,
- 113,113,52,184,23,23,23,23,23,49,
- 49,86,86,86,86,86,153,153,148,148,
- 148,148,148,149,149,149,150,150,150,151,
- 151,151,152,152,152,87,87,87,87,87,
- 88,88,88,13,14,14,14,14,14,14,
- 14,14,14,14,14,97,119,119,119,119,
- 119,119,117,117,117,154,155,155,118,118,
- 185,157,157,156,156,121,121,103,80,80,
- 122,54,48,158,158,55,53,85,85,159,
- 159,147,147,123,124,124,125,77,77,160,
- 160,64,64,64,61,61,60,65,65,76,
- 76,59,59,59,50,89,89,99,98,98,
- 63,63,62,62,56,56,46,100,100,100,
- 92,92,92,93,93,94,94,94,95,95,
- 104,104,104,106,106,105,105,204,204,90,
- 90,187,187,187,187,187,127,47,47,162,
- 186,186,128,128,129,129,129,130,164,188,
- 188,35,35,116,131,131,131,131,190,108,
- 107,107,120,120,120,165,166,166,166,166,
- 166,166,166,166,166,166,166,192,192,189,
- 189,191,191,167,168,168,168,168,169,193,
- 110,109,109,194,194,170,170,170,170,101,
- 101,101,195,195,8,8,9,196,196,197,
- 171,161,161,172,172,173,174,174,7,7,
- 10,198,198,198,198,198,198,198,198,198,
- 198,198,198,198,198,198,198,198,198,198,
- 198,198,198,198,198,198,198,198,198,198,
- 198,198,198,198,198,198,198,198,198,198,
- 198,198,198,78,81,81,175,175,133,133,
- 134,134,134,134,134,134,3,135,135,132,
- 132,111,111,84,79,75,75,163,163,112,
- 112,199,199,199,136,136,126,126,200,200,
- 176,176,1119,35,2498,2475,1791,2706,27,30,
- 31,1065,1233,26,28,2456,263,25,23,50,
- 1282,106,76,77,108,73,1291,1320,1310,1424,
- 1377,1587,1777,1501,1716,71,1685,275,1775,1826,
- 143,1592,1882,158,144,1631,2950,1892,35,1049,
- 32,4458,4566,27,30,31,1065,1233,342,28,
- 2450,587,4081,1280,2735,233,1869,35,1049,32,
- 4782,4566,27,30,31,1065,1233,342,28,1547,
- 354,666,3378,346,587,2115,2446,34,236,231,
- 232,2275,1148,535,1504,35,1049,32,1330,276,
- 41,30,31,1065,1233,1618,2799,322,2544,324,
- 182,317,1948,587,35,3305,538,1631,243,246,
- 249,252,1457,355,2898,1088,322,2544,324,743,
- 317,1948,666,921,1857,1312,1476,3584,501,347,
- 1776,1020,352,2898,327,35,281,1941,565,4803,
- 3186,739,3127,3504,3523,4242,2320,35,1049,32,
- 2735,1386,27,30,31,1065,1233,26,28,1039,
- 263,25,23,50,1282,106,76,77,108,346,
- 1291,1320,1310,1424,1377,1587,823,1501,1716,3442,
- 1685,155,1775,1826,143,70,2744,521,144,1225,
- 653,1330,2799,587,35,2446,3304,502,674,35,
- 2113,392,522,2320,35,1049,32,2735,1386,27,
- 30,31,1065,1233,26,28,1039,263,25,23,
- 50,1282,106,76,77,108,346,1291,1320,1310,
- 1424,1377,1587,49,1501,1716,71,1685,322,1775,
- 1826,143,1998,3211,521,144,3109,291,1005,2799,
- 3689,3442,233,327,35,281,2727,517,4807,522,
- 1217,35,1049,32,2685,3195,27,30,31,1065,
- 1233,57,28,2619,1446,245,231,232,3146,4790,
- 1621,3188,1240,3594,2320,35,1049,32,2735,1386,
- 27,30,31,1065,1233,26,28,1039,263,25,
- 23,50,1282,106,76,77,108,346,1291,1320,
- 1310,1424,1377,1587,517,1501,1716,1088,1685,408,
- 1775,1826,143,1352,3205,521,144,587,35,284,
- 2799,1446,155,2979,155,3194,4790,3458,3188,4171,
- 522,2528,35,1049,32,2735,1386,27,30,31,
- 1065,1233,26,28,1039,263,25,23,50,1282,
- 106,76,77,108,346,1291,1320,1310,1424,1377,
- 1587,1611,1501,1716,135,1685,1766,1775,1826,143,
- 1603,3205,521,144,881,587,3584,2799,1618,3422,
- 335,587,35,2113,392,517,2236,522,1356,464,
- 61,1381,35,1049,32,1853,3195,27,30,31,
- 1065,1233,56,28,1642,88,3229,94,102,3188,
- 1322,4004,2663,35,1049,32,435,1386,27,30,
- 31,1065,1233,26,28,1039,263,25,23,50,
- 1282,106,76,77,108,2086,1291,1320,1310,1424,
- 1377,1587,518,1501,1716,2619,1685,425,1775,1826,
- 143,42,3264,382,144,3661,2389,35,1049,32,
- 1456,1386,27,30,31,1065,1233,26,28,1039,
- 263,25,23,50,1282,106,76,77,108,1377,
- 1291,1320,1310,1424,1377,1587,1697,1501,1716,2229,
- 1685,2125,1775,1826,143,824,292,382,144,3661,
- 1906,2837,35,1049,32,2230,1386,27,30,31,
- 1065,1233,26,28,1039,263,25,23,50,1282,
- 106,76,77,108,4138,1291,1320,1310,1424,1377,
- 1587,60,1501,1716,1611,1685,356,1775,3232,164,
- 389,383,1802,2447,3127,35,1049,32,4641,1386,
- 27,30,31,1065,1233,26,28,1039,263,25,
- 23,50,1282,106,76,77,108,447,1291,1320,
- 1310,1424,1377,1587,315,1501,1716,582,1685,69,
- 1775,3232,164,330,390,383,1802,89,1611,49,
- 102,4139,1689,1200,2762,752,2595,35,1049,32,
- 4107,1386,27,30,31,1065,1233,26,28,1039,
- 263,25,23,50,1282,106,76,77,108,156,
- 1291,1320,1310,1424,1377,1587,359,1501,1716,1426,
- 1685,2029,1775,1826,143,2972,536,382,144,3661,
- 2892,35,1049,32,3105,1386,27,30,31,1065,
- 1233,26,28,1039,263,25,23,50,1282,106,
- 76,77,108,393,1291,1320,1310,1424,1377,1587,
- 93,1501,1716,2246,1685,2075,1775,1826,143,4431,
- 2315,158,144,3127,35,1049,32,1943,1386,27,
- 30,31,1065,1233,26,28,1039,263,25,23,
- 50,1282,106,76,77,108,527,1291,1320,1310,
- 1424,1377,1587,434,1501,1716,56,1685,3515,1775,
- 3232,164,2249,1088,380,383,1802,2892,35,1049,
- 32,413,1386,27,30,31,1065,1233,26,28,
- 1039,263,25,23,50,1282,106,76,77,108,
- 1449,1291,1320,1310,1424,1377,1587,3130,1501,1716,
- 64,1685,2038,1775,1826,143,3378,4790,376,144,
- 1718,35,1049,32,427,56,40,30,31,1065,
- 1233,1906,2892,35,1049,32,565,1386,27,30,
- 31,1065,1233,26,28,1039,263,25,23,50,
- 1282,106,76,77,108,463,1291,1320,1310,1424,
- 1377,1587,3205,1501,1716,1800,1685,2288,1775,1826,
- 143,336,1088,376,144,332,2156,35,2113,392,
- 2437,2892,35,1049,32,2323,1386,27,30,31,
- 1065,1233,26,28,1039,263,25,23,50,1282,
- 106,76,77,108,375,1291,1320,1310,1424,1377,
- 1587,49,1501,1716,330,1685,1088,1775,1826,143,
- 1998,675,376,144,2461,35,1049,32,3543,1386,
- 27,30,31,1065,1233,26,28,1039,263,25,
- 23,50,1282,106,76,77,108,1229,1291,1320,
- 1310,1424,1377,1587,4027,1501,1716,358,1685,374,
- 1775,1826,143,331,338,142,144,536,2892,35,
- 1049,32,1611,1386,27,30,31,1065,1233,26,
- 28,1039,263,25,23,50,1282,106,76,77,
- 108,494,1291,1320,1310,1424,1377,1587,51,1501,
- 1716,1611,1685,49,1775,1826,143,696,372,159,
- 144,2892,35,1049,32,3266,1386,27,30,31,
- 1065,1233,26,28,1039,263,25,23,50,1282,
- 106,76,77,108,56,1291,1320,1310,1424,1377,
- 1587,1511,1501,1716,582,1685,49,1775,1826,143,
- 753,451,155,144,2892,35,1049,32,379,1386,
- 27,30,31,1065,1233,26,28,1039,263,25,
- 23,50,1282,106,76,77,108,1243,1291,1320,
- 1310,1424,1377,1587,1900,1501,1716,1611,1685,49,
- 1775,1826,143,834,1618,154,144,2892,35,1049,
- 32,882,1386,27,30,31,1065,1233,26,28,
- 1039,263,25,23,50,1282,106,76,77,108,
- 56,1291,1320,1310,1424,1377,1587,24,1501,1716,
- 582,1685,49,1775,1826,143,4549,3223,153,144,
- 2892,35,1049,32,379,1386,27,30,31,1065,
- 1233,26,28,1039,263,25,23,50,1282,106,
- 76,77,108,377,1291,1320,1310,1424,1377,1587,
- 3241,1501,1716,1906,1685,400,1775,1826,143,1088,
- 1618,152,144,2892,35,1049,32,1611,1386,27,
- 30,31,1065,1233,26,28,1039,263,25,23,
- 50,1282,106,76,77,108,1409,1291,1320,1310,
- 1424,1377,1587,69,1501,1716,1611,1685,49,1775,
- 1826,143,3010,1618,151,144,2892,35,1049,32,
- 3406,1386,27,30,31,1065,1233,26,28,1039,
- 263,25,23,50,1282,106,76,77,108,3589,
- 1291,1320,1310,1424,1377,1587,68,1501,1716,582,
- 1685,329,1775,1826,143,1105,1877,150,144,2892,
- 35,1049,32,530,1386,27,30,31,1065,1233,
- 26,28,1039,263,25,23,50,1282,106,76,
- 77,108,1611,1291,1320,1310,1424,1377,1587,326,
- 1501,1716,1611,1685,49,1775,1826,143,585,536,
- 149,144,2892,35,1049,32,1620,1386,27,30,
- 31,1065,1233,26,28,1039,263,25,23,50,
- 1282,106,76,77,108,4181,1291,1320,1310,1424,
- 1377,1587,357,1501,1716,582,1685,49,1775,1826,
- 143,676,1618,148,144,2892,35,1049,32,529,
- 1386,27,30,31,1065,1233,26,28,1039,263,
- 25,23,50,1282,106,76,77,108,416,1291,
- 1320,1310,1424,1377,1587,53,1501,1716,1618,1685,
- 49,1775,1826,143,1375,1618,147,144,2892,35,
- 1049,32,1706,1386,27,30,31,1065,1233,26,
- 28,1039,263,25,23,50,1282,106,76,77,
- 108,87,1291,1320,1310,1424,1377,1587,52,1501,
- 1716,1618,1685,49,1775,1826,143,2876,1988,146,
- 144,2892,35,1049,32,1447,1386,27,30,31,
- 1065,1233,26,28,1039,263,25,23,50,1282,
- 106,76,77,108,353,1291,1320,1310,1424,1377,
- 1587,2437,1501,1716,1618,1685,49,1775,1826,143,
- 2994,2762,145,144,2892,35,1049,32,1174,1386,
- 27,30,31,1065,1233,26,28,1039,263,25,
- 23,50,1282,106,76,77,108,90,1291,1320,
- 1310,1424,1377,1587,327,1501,1716,1618,1685,49,
- 1775,1826,143,2856,1618,140,144,3011,35,1049,
- 32,2448,1386,27,30,31,1065,1233,26,28,
- 1039,263,25,23,50,1282,106,76,77,108,
- 2072,1291,1320,1310,1424,1377,1587,2287,1501,1716,
- 2236,1685,49,1775,1826,143,3448,1618,189,144,
- 3127,35,1049,32,1088,1386,27,30,31,1065,
- 1233,26,28,1039,263,25,23,50,1282,106,
- 76,77,108,527,1291,1320,1310,1424,1377,1587,
- 67,1501,1716,2563,1685,1324,1775,3232,164,3127,
- 35,1049,32,1445,1386,27,30,31,1065,1233,
- 26,28,1039,263,25,23,50,1282,106,76,
- 77,108,1597,1291,1320,1310,1424,1377,1587,1986,
- 1501,1716,451,1685,3254,1775,3232,164,587,35,
- 2551,2289,587,35,2113,392,97,3127,35,1049,
- 32,296,1386,27,30,31,1065,1233,26,28,
- 1039,263,25,23,50,1282,106,76,77,108,
- 2556,1291,1320,1310,1424,1377,1587,456,1501,1716,
- 1795,1685,160,1775,3232,164,3182,35,1049,32,
- 426,1386,27,30,31,1065,1233,26,28,1039,
- 263,25,23,50,1282,106,76,77,108,406,
- 1291,1320,1310,1424,1377,1587,155,1501,1716,410,
- 1685,4587,1775,3232,164,587,35,2446,278,587,
- 35,2113,392,246,3127,35,1049,32,429,1386,
- 27,30,31,1065,1233,26,28,1039,263,25,
- 23,50,1282,106,76,77,108,1795,1291,1320,
- 1310,1424,1377,1587,438,1501,1716,49,1685,69,
- 3032,657,1864,3127,35,1049,32,4145,1386,27,
- 30,31,1065,1233,26,28,1039,263,25,23,
- 50,1282,106,76,77,108,302,1291,1320,1310,
- 1424,1377,1587,752,1501,1716,590,3006,3127,35,
- 1049,32,1618,1386,27,30,31,1065,1233,26,
- 28,1039,263,25,23,50,1282,106,76,77,
- 108,1618,1291,1320,1310,1424,1377,1587,1330,1501,
- 2974,3127,35,1049,32,66,1386,27,30,31,
- 1065,1233,26,28,1039,263,25,23,50,1282,
- 106,76,77,108,65,1291,1320,1310,1424,1377,
- 1587,288,2975,3127,35,1049,32,2991,1386,27,
- 30,31,1065,1233,26,28,1039,263,25,23,
- 50,1282,106,76,77,108,1951,1291,1320,1310,
- 1424,1377,2889,3127,35,1049,32,848,1386,27,
- 30,31,1065,1233,26,28,1039,263,25,23,
- 50,1282,106,76,77,108,2687,1291,1320,1310,
- 1424,2895,3127,35,1049,32,1878,1386,27,30,
- 31,1065,1233,26,28,1039,263,25,23,50,
- 1282,106,76,77,108,3327,1291,1320,1310,1424,
- 2923,1522,35,1049,32,4782,4637,27,30,31,
- 1065,1233,342,28,3127,35,1049,32,1457,1386,
- 27,30,31,1065,1233,26,28,1039,263,25,
- 23,50,1282,106,76,77,108,442,1291,1320,
- 1310,2801,49,2375,35,279,1200,1785,35,1049,
- 32,3205,4814,27,30,31,1065,1233,59,28,
- 335,322,2544,324,1964,317,1948,1718,35,1049,
- 32,2694,156,2200,30,31,1065,1233,316,327,
- 35,457,3016,408,4652,1618,3127,35,1049,32,
- 2808,1386,27,30,31,1065,1233,26,28,1039,
- 263,25,23,50,1282,106,76,77,108,2968,
- 1291,1320,1310,2804,1101,35,2446,278,64,587,
- 35,2113,392,580,309,313,948,2347,35,1049,
- 32,3559,4814,27,30,31,1065,1233,26,28,
- 328,1336,515,1718,35,1049,32,1015,2726,2277,
- 30,31,1065,1233,437,1618,3127,35,1049,32,
- 3824,1386,27,30,31,1065,1233,26,28,1039,
- 263,25,23,50,1282,106,76,77,108,3046,
- 1291,1320,1310,2812,3127,35,1049,32,3189,1386,
- 27,30,31,1065,1233,26,28,1039,263,25,
- 23,50,1282,106,76,77,108,1330,1291,1320,
- 1310,2861,2067,35,1049,32,4326,4566,27,30,
- 31,1065,1233,342,28,241,2216,35,2113,392,
- 2453,35,282,1401,35,3647,32,4782,4637,27,
- 30,31,1065,1233,342,28,1795,587,35,2113,
- 392,450,3772,3778,1312,3237,35,2113,392,2444,
- 748,49,587,4222,587,35,2113,392,238,263,
- 1998,2292,322,2544,324,1234,317,1948,1618,2411,
- 35,279,275,3205,2727,222,1378,2560,355,3436,
- 275,1200,335,322,2544,324,4389,317,1948,49,
- 587,3454,2446,74,347,1776,1020,352,1998,603,
- 814,55,3426,1101,35,2446,3456,156,233,2151,
- 2547,846,2808,3507,932,3422,201,4130,1956,35,
- 1049,32,1311,4637,27,30,31,1065,1233,342,
- 28,236,231,232,277,4155,2315,1618,3127,35,
- 1049,32,276,1386,27,30,31,1065,1233,26,
- 28,1039,263,25,23,50,1282,106,76,77,
- 85,243,246,249,252,1457,1476,3584,3205,884,
- 54,1548,757,35,2113,392,921,336,322,2544,
- 324,1591,320,1948,1679,355,2425,44,3264,369,
- 421,423,3625,3186,739,3127,3504,3523,4242,1278,
- 631,347,1776,1020,352,2562,653,275,1618,345,
- 3127,35,1049,32,2190,1386,27,30,31,1065,
- 1233,26,28,1039,263,25,23,50,1282,106,
- 76,77,108,2643,1291,1320,2871,3127,35,1049,
- 32,325,1386,27,30,31,1065,1233,26,28,
- 1039,263,25,23,50,1282,106,76,77,108,
- 259,1291,1320,2874,542,1785,35,1049,32,3349,
- 4814,27,30,31,1065,1233,58,28,587,35,
- 2446,280,1088,229,1707,2139,72,291,49,2241,
- 156,3044,1200,2576,4790,394,431,1390,1,180,
- 3404,49,542,582,2425,3009,49,204,216,4533,
- 1200,203,213,214,215,217,486,169,1984,2425,
- 1879,229,2826,3594,2735,2488,2066,168,156,183,
- 167,170,171,172,173,174,4100,180,3404,3205,
- 1879,582,1127,2692,2735,204,216,4533,2979,203,
- 213,214,215,217,752,169,49,843,35,457,
- 3271,2132,4652,2692,98,168,181,184,167,170,
- 171,172,173,174,2077,35,1049,32,4326,4566,
- 27,30,31,1065,1233,342,28,3127,35,1049,
- 32,1330,1386,27,30,31,1065,1233,26,28,
- 1039,263,25,23,50,1282,106,76,77,108,
- 363,1291,2563,395,431,2631,1244,35,297,2050,
- 4659,2225,289,2735,2635,3328,3347,49,397,431,
- 363,3030,96,2235,322,2544,324,1240,317,1948,
- 2770,2988,346,2350,3368,3328,3347,1016,35,400,
- 355,531,1364,35,1049,32,1267,4637,27,30,
- 31,1065,1233,342,28,1051,347,1776,1020,352,
- 3127,35,1049,32,532,1386,27,30,31,1065,
- 1233,26,28,1039,263,25,23,50,1282,106,
- 76,77,108,1618,1291,2603,3353,49,761,49,
- 233,542,3205,3561,1726,929,35,2113,392,240,
- 263,336,322,2544,324,1226,318,1948,345,924,
- 346,2085,542,248,231,232,101,156,355,454,
- 3772,3778,752,1016,35,3312,2041,1604,1482,2310,
- 49,229,2280,2799,349,1776,1020,352,156,1998,
- 2621,49,528,938,3847,4205,431,180,3404,233,
- 542,582,1795,2862,2783,204,216,4533,49,203,
- 213,214,215,217,2416,169,49,1998,2158,229,
- 4099,2425,241,231,232,168,156,4203,167,170,
- 171,172,173,174,517,180,3404,1814,542,582,
- 299,306,49,204,216,4533,3510,203,213,214,
- 215,217,2719,169,2419,2517,2735,229,587,35,
- 2113,392,2289,168,156,178,167,170,171,172,
- 173,174,603,180,3404,346,542,582,2226,155,
- 1139,204,216,4533,4667,203,213,214,215,217,
- 49,169,49,275,1981,229,1200,2143,930,2491,
- 752,168,156,176,167,170,171,172,173,174,
- 689,180,3404,49,542,582,528,1060,1618,204,
- 216,4533,156,203,213,214,215,217,2519,169,
- 396,431,2077,229,2155,2692,1244,3703,297,168,
- 156,177,167,170,171,172,173,174,775,180,
- 3404,3509,542,582,1795,343,49,204,216,4533,
- 4113,203,213,214,215,217,2778,169,298,2153,
- 2735,229,587,35,2113,392,2522,168,156,187,
- 167,170,171,172,173,174,2557,180,3404,346,
- 2328,582,2496,179,2735,204,216,4533,1800,203,
- 213,214,215,217,2695,169,2586,49,929,35,
- 2113,392,4248,2692,1618,168,46,4319,167,170,
- 171,172,173,174,1695,35,1049,32,4782,4566,
- 27,30,31,1065,1233,342,28,2421,2555,924,
- 49,4320,2253,49,1341,2651,1200,3252,446,2735,
- 460,861,1998,47,1610,542,1795,1446,1482,49,
- 2651,3543,4790,4493,2735,49,2710,49,2692,4186,
- 354,4753,156,1784,229,587,35,2113,392,2697,
- 364,156,540,2692,322,2544,324,155,317,1948,
- 180,3404,4688,1800,582,199,3363,338,204,216,
- 4533,316,203,213,214,215,217,3205,169,155,
- 436,1800,1795,355,4705,947,335,233,168,542,
- 192,167,170,171,172,173,174,2626,155,347,
- 1776,1020,352,4726,2584,509,233,1941,229,49,
- 251,231,232,1154,2591,156,4524,309,313,948,
- 509,198,2690,2001,180,3404,3543,2735,582,254,
- 231,232,204,216,4533,4341,203,213,214,215,
- 217,4210,169,1033,3543,2703,229,542,507,508,
- 1795,1618,168,3824,186,167,170,171,172,173,
- 174,337,338,506,508,49,229,1738,2585,1683,
- 206,216,4533,156,205,213,214,215,217,3490,
- 338,49,180,3404,455,4063,582,2743,546,305,
- 204,216,4533,2658,203,213,214,215,217,752,
- 169,207,209,211,3419,3728,524,208,210,1979,
- 168,2720,195,167,170,171,172,173,174,3127,
- 35,1049,32,2732,1386,27,30,31,1065,1233,
- 26,28,1039,263,25,23,50,1282,106,76,
- 77,108,534,2627,3127,35,1049,32,1713,1386,
- 27,30,31,1065,1233,26,28,1039,263,25,
- 23,50,1282,106,76,77,108,307,2755,3127,
- 35,1049,32,2718,1386,27,30,31,1065,1233,
- 26,28,1039,263,25,23,50,1282,106,76,
- 77,108,2741,2766,3127,2115,1049,2123,2751,1386,
- 27,30,31,1065,1233,26,28,1039,263,25,
- 23,50,1282,106,76,77,84,3127,35,1049,
- 32,2758,1386,27,30,31,1065,1233,26,28,
- 1039,263,25,23,50,1282,106,76,77,83,
- 3127,35,1049,32,2753,1386,27,30,31,1065,
- 1233,26,28,1039,263,25,23,50,1282,106,
- 76,77,82,3127,35,1049,32,2733,1386,27,
- 30,31,1065,1233,26,28,1039,263,25,23,
- 50,1282,106,76,77,81,3127,35,1049,32,
- 2739,1386,27,30,31,1065,1233,26,28,1039,
- 263,25,23,50,1282,106,76,77,80,3127,
- 35,1049,32,2793,1386,27,30,31,1065,1233,
- 26,28,1039,263,25,23,50,1282,106,76,
- 77,79,3127,35,1049,32,2794,1386,27,30,
- 31,1065,1233,26,28,1039,263,25,23,50,
- 1282,106,76,77,78,2956,35,1049,32,87,
- 1386,27,30,31,1065,1233,26,28,1039,263,
- 25,23,50,1282,106,76,77,104,3127,35,
- 1049,32,2763,1386,27,30,31,1065,1233,26,
- 28,1039,263,25,23,50,1282,106,76,77,
- 110,3127,35,1049,32,2764,1386,27,30,31,
- 1065,1233,26,28,1039,263,25,23,50,1282,
- 106,76,77,109,3127,35,1049,32,2765,1386,
- 27,30,31,1065,1233,26,28,1039,263,25,
- 23,50,1282,106,76,77,107,3127,35,1049,
- 32,150,1386,27,30,31,1065,1233,26,28,
- 1039,263,25,23,50,1282,106,76,77,105,
- 1992,35,3647,32,4782,4566,27,30,31,1065,
- 1233,342,28,752,1869,35,1049,32,4782,4566,
- 27,30,31,1065,1233,342,28,3072,35,1049,
- 32,1795,1386,27,30,31,1065,1233,26,28,
- 1039,263,25,23,50,1282,86,76,77,1566,
- 1618,2769,49,2735,1355,1355,1200,2240,1200,1200,
- 322,2544,324,1827,317,1948,1977,2735,2776,49,
- 202,173,229,1200,322,2544,324,814,317,1948,
- 1795,386,156,381,160,160,229,1795,150,2771,
- 1355,316,2332,1991,1200,2795,206,216,4533,156,
- 205,213,214,215,217,587,35,2446,3602,2351,
- 206,216,4533,1795,205,213,214,215,217,200,
- 160,674,35,2113,392,4031,301,207,209,211,
- 3419,49,218,208,210,972,1914,310,313,948,
- 2735,207,209,211,3419,385,218,208,210,1618,
- 1862,1905,4893,2796,49,1800,49,49,2735,229,
- 1795,2735,3222,1618,4365,1998,47,422,423,3625,
- 49,49,2790,1795,3474,1200,3350,346,4365,877,
- 346,2417,3360,206,216,4533,2758,205,213,214,
- 215,217,3286,35,2113,392,3398,748,2485,223,
- 2799,156,3064,2799,2777,239,263,1016,35,400,
- 2202,2565,193,2253,207,209,211,3419,3543,218,
- 208,210,2799,1956,35,1049,32,275,4637,27,
- 30,31,1065,1233,342,28,1869,35,1049,32,
- 4782,4566,27,30,31,1065,1233,342,28,3679,
- 2800,4365,384,333,338,233,1494,35,1049,32,
- 2713,4566,27,30,31,1065,1233,342,28,2798,
- 1901,1618,1618,3205,2735,4790,1446,1990,237,231,
- 232,4790,336,322,2544,324,5443,318,1948,276,
- 5443,1618,1618,2692,5443,407,322,2544,324,1653,
- 317,1948,2447,2735,3501,1726,5443,4641,244,247,
- 250,253,1457,4272,3870,1740,319,3577,324,2735,
- 3205,5443,229,921,1812,4223,3205,1355,1355,335,
- 5443,1200,1200,5443,5443,335,5443,5443,229,587,
- 35,2446,283,5443,5443,5443,206,216,4533,5443,
- 205,213,214,215,217,1618,5443,160,160,4524,
- 363,5443,206,216,4533,3142,205,213,214,215,
- 217,5443,5443,5443,2027,3328,3347,207,209,211,
- 3419,2088,523,208,210,2735,5443,2560,3623,5443,
- 5443,542,5443,207,209,211,3419,2175,219,208,
- 210,2735,5443,3105,229,5443,5443,49,1901,5443,
- 4220,1200,2735,4790,5443,5443,2983,156,5443,5443,
- 229,5443,5443,2827,3183,5443,180,3404,206,216,
- 4533,2692,205,213,214,215,217,156,1355,5443,
- 5443,5443,1200,1800,206,216,4533,2084,205,213,
- 214,215,217,5443,196,587,35,297,3205,207,
- 209,211,3419,5443,308,208,210,335,160,1016,
- 35,400,433,5443,1980,207,209,211,3419,4790,
- 503,208,210,2160,35,1049,32,2481,4566,27,
- 30,31,1065,1233,342,28,3673,3142,363,1180,
- 5443,5443,5443,2735,4818,1286,3543,5443,5443,2735,
- 4818,5443,2027,3328,3347,5443,674,35,2113,392,
- 5443,5443,229,5443,3205,587,35,297,229,5443,
- 5443,5443,5443,336,3631,5443,5443,929,35,2113,
- 392,3645,338,319,3577,324,830,411,4306,5443,
- 355,49,830,411,4306,5443,5443,5443,3630,5443,
- 1998,3015,5443,5443,5443,5443,349,1776,1020,352,
- 4735,197,49,5443,3308,5443,4300,412,413,414,
- 3419,1998,47,412,413,414,3419,674,35,2113,
- 392,674,35,2113,392,2623,5443,5443,5443,5443,
- 3384,5443,674,35,2113,392,3384,5443,5443,674,
- 35,2113,392,5443,5443,5443,5443,1649,35,2113,
- 392,5443,49,5443,5443,5443,49,5443,4137,49,
- 5443,1998,572,1200,5443,1998,47,49,674,35,
- 2113,392,5443,2983,49,3308,1998,47,5443,941,
- 5443,5443,49,1998,47,674,35,2113,392,156,
- 2162,1998,47,5443,415,417,5443,2249,5443,4342,
- 415,418,5443,49,5443,4505,2168,35,2113,392,
- 5443,5443,1998,47,5443,2721,5443,5443,1155,542,
- 49,4555,5443,49,5443,5443,2599,542,5443,1998,
- 47,5443,5443,2686,5443,49,49,2735,346,542,
- 2735,49,5443,3525,5443,156,346,5443,5443,5443,
- 1998,47,5443,156,5443,188,2692,5443,346,346,
- 5443,4286,1446,1733,4575,156,5443,4790,5443,2799,
- 587,35,2113,392,5443,1604,5443,5443,5443,1690,
- 5443,2799,2799,587,35,2113,392,587,35,2113,
- 392,1898,2326,5443,587,35,2113,392,587,35,
- 2113,392,49,5443,5443,49,2735,49,5443,5443,
- 5443,542,3205,5443,1998,1276,5443,190,49,5443,
- 5443,335,49,509,5443,346,5443,1998,2523,49,
- 346,1998,2759,49,5443,5443,5443,156,1998,675,
- 49,49,1998,2734,542,542,49,188,2799,5443,
- 2735,4273,5443,4286,5443,49,5443,5443,2427,2735,
- 5443,49,5443,346,346,2735,506,508,49,346,
- 156,156,2735,2516,5443,5443,5443,1200,346,5443,
- 188,188,5443,5443,346,5443,4286,4286,5443,5443,
- 5443,346,2799,5443,5443,5443,5443,4163,5443,5443,
- 5443,2799,2034,156,5443,5443,5443,2799,4116,4199,
- 5443,513,5443,162,2799,5443,5443,511,5443,5443,
- 5443,5443,5443,5443,539,5443,5443,5443,5443,5443,
- 5443,5443,5443,5443,5443,5443,5443,5443,5443,5443,
- 5443,5443,4213,4321,5443,5443,5443,5443,5443,5443,
- 5443,5443,5443,5443,5443,5443,5443,5443,5443,5443,
- 5443,5443,5443,5443,5443,5443,5443,5443,5443,5443,
- 5443,5443,5443,5443,5443,5443,5443,5443,5443,5443,
- 5443,5443,5443,5443,5443,5443,5443,5443,5443,5443,
- 5443,5443,5443,5443,5443,5443,5443,5443,5443,5443,
- 5443,5443,5443,5443,5443,5443,5443,5443,5443,5443,
- 5443,5443,5443,5443,5443,5443,5443,5443,5443,5443,
- 5443,5443,5443,5443,5443,5443,5443,5443,5443,5443,
- 5443,5443,5443,5443,5443,5443,5443,5443,5443,5443,
- 5443,5443,5443,5443,5443,5443,5443,5443,5443,5443,
- 5443,5443,5443,4405,5443,0,39,5458,0,39,
- 5457,0,1513,29,0,444,1556,0,458,1599,
- 0,38,624,0,38,5458,0,38,5457,0,
- 2636,126,0,1,448,0,462,867,0,461,
- 1283,0,2978,91,0,1513,391,0,35,33,
- 0,32,34,0,39,624,0,1,731,0,
- 1,5717,0,1,5716,0,1,5715,0,1,
- 5714,0,1,5713,0,1,5712,0,1,5711,
- 0,1,5710,0,1,5709,0,1,5708,0,
- 1,5707,0,39,1,5458,0,39,1,5457,
- 0,634,1,0,285,398,0,285,290,0,
- 5678,242,0,5677,242,0,5784,242,0,5783,
- 242,0,5705,242,0,5704,242,0,5703,242,
- 0,5702,242,0,5701,242,0,5700,242,0,
- 5699,242,0,5698,242,0,5717,242,0,5716,
- 242,0,5715,242,0,5714,242,0,5713,242,
- 0,5712,242,0,5711,242,0,5710,242,0,
- 5709,242,0,5708,242,0,5707,242,0,39,
- 5458,242,0,39,5457,242,0,5481,242,0,
- 5458,48,0,5457,48,0,5449,1,0,5448,
- 1,0,4104,238,0,32,392,0,29,391,
- 0,43,5479,0,43,37,0,2636,128,0,
- 2636,127,0,334,449,0,5481,1,0,39,
- 1,0,47,37,0,1,92,0,505,3385,
- 0,5481,1,230,0,39,1,230,0,230,
- 420,0,5458,37,0,5457,37,0,5458,2,
- 37,0,5457,2,37,0,5458,36,0,5457,
- 36,0,5479,45,0,37,45,0,5453,409,
- 0,5452,409,0,1,606,0,1,3302,0,
- 1,624,0,230,419,0,3117,321,0,334,
- 95,0,35,73,0,1,334,0,4140,280,
- 0,505,4349,0,1,230,0,230,221,0,
- 1,3137,0,1,4257,0,230,220,0,5455,
- 1,0,5451,1,0,1,230,3916,0,5452,
- 230,0,3939,230,0,5455,387,0,5454,387,
- 0,4121,230,0,10,12,0,8,10,12,
- 0,4254,194,0,185,3565,0,4327,387,0,
- 8,12,0
+ 192,192,193,193,194,160,160,161,161,158,
+ 158,162,159,159,21,21,22,22,23,23,
+ 23,24,24,24,24,25,25,25,26,26,
+ 26,31,31,31,31,31,33,33,33,34,
+ 34,35,35,37,37,38,38,40,40,41,
+ 41,45,45,45,45,45,47,47,47,53,
+ 53,55,55,61,61,62,62,63,63,64,
+ 64,65,65,65,65,65,65,65,65,65,
+ 65,65,65,65,29,29,46,46,46,46,
+ 46,46,46,46,46,46,46,46,46,36,
+ 28,163,163,105,105,195,195,104,219,219,
+ 82,82,82,82,82,82,82,82,82,83,
+ 83,83,79,79,66,66,196,196,84,84,
+ 84,116,116,197,197,85,85,85,85,198,
+ 198,86,86,86,86,86,87,87,95,95,
+ 95,95,95,95,95,95,56,56,56,56,
+ 56,132,132,130,130,57,199,27,27,27,
+ 27,27,50,50,69,69,69,69,69,137,
+ 137,133,133,133,133,133,134,134,134,135,
+ 135,135,136,136,136,165,165,165,70,70,
+ 70,70,70,71,71,71,13,14,14,14,
+ 14,14,14,14,14,14,14,14,106,138,
+ 138,138,138,138,138,111,111,111,166,167,
+ 167,112,112,200,169,169,168,168,139,139,
+ 117,92,92,140,59,49,170,170,60,58,
+ 97,97,171,171,164,164,141,142,142,143,
+ 89,89,172,172,77,77,77,73,73,72,
+ 78,78,80,80,68,68,68,54,98,98,
+ 108,107,107,51,51,74,74,76,76,52,
+ 109,109,109,99,99,99,100,100,101,101,
+ 101,102,102,118,118,118,120,120,119,119,
+ 220,220,103,103,202,202,202,202,202,145,
+ 48,48,174,201,201,146,146,147,147,147,
+ 148,176,203,203,32,32,110,114,114,114,
+ 114,205,122,121,121,113,113,113,177,178,
+ 178,178,178,178,178,178,178,178,178,178,
+ 207,207,204,204,206,206,179,180,180,180,
+ 180,181,208,124,123,123,209,209,182,182,
+ 182,182,115,115,115,210,210,8,8,9,
+ 211,211,212,183,173,173,184,184,185,186,
+ 186,7,7,10,213,213,213,213,213,213,
+ 213,213,213,213,213,213,213,213,213,213,
+ 213,213,213,213,213,213,213,213,213,213,
+ 213,213,213,213,213,213,213,213,213,213,
+ 213,213,213,213,213,213,90,93,93,187,
+ 187,150,150,151,151,151,151,151,151,3,
+ 152,152,149,149,188,221,222,222,223,223,
+ 224,225,225,189,190,190,190,190,214,214,
+ 214,126,126,126,126,126,127,128,128,125,
+ 125,96,91,88,88,175,175,129,129,215,
+ 215,215,153,153,144,144,216,216,191,191,
+ 1119,35,2221,2196,4455,1355,27,30,31,1162,
+ 1215,26,28,2149,296,25,23,50,1246,106,
+ 76,77,108,1272,1474,1301,1564,1938,1335,177,
+ 332,1520,308,1625,1567,1704,2277,1666,1713,2276,
+ 1751,176,413,147,1273,1510,191,4350,1508,1941,
+ 1350,266,5173,1243,35,1153,32,4862,4737,27,
+ 30,31,1162,1215,375,28,534,193,1088,269,
+ 264,265,2905,35,1153,32,3328,600,27,30,
+ 31,1162,1215,26,28,1151,296,25,23,50,
+ 1246,106,76,77,108,1272,1474,1301,2779,379,
+ 189,266,2956,2683,2276,1488,309,441,1396,1273,
+ 276,279,282,627,705,2277,368,3066,1734,278,
+ 264,265,5007,1824,3118,355,2291,357,810,389,
+ 350,1175,193,2237,650,1353,2839,5932,285,1537,
+ 35,490,3432,5166,2353,5739,2301,2030,715,159,
+ 1638,35,1153,32,4862,3838,27,30,31,1162,
+ 1215,375,28,630,69,2897,2360,35,1153,32,
+ 3328,5363,27,30,31,1162,1215,26,28,1151,
+ 296,25,23,50,1246,106,76,77,108,1272,
+ 1474,1301,2779,1659,1818,162,1492,35,3563,32,
+ 4862,4737,27,30,31,1162,1215,375,28,2592,
+ 1508,2773,1818,2837,5173,2555,35,312,3327,2835,
+ 2593,2878,352,3520,357,6140,2929,2845,2899,2901,
+ 161,579,4270,1847,2360,35,1153,32,3328,5363,
+ 27,30,31,1162,1215,26,28,1151,296,25,
+ 23,50,1246,106,76,77,108,1272,1474,1301,
+ 2779,2634,3379,162,2956,71,35,330,355,2291,
+ 357,2702,2489,350,1175,71,35,330,2957,2773,
+ 1818,2837,1537,35,314,1050,5330,2835,535,2878,
+ 2045,550,576,3889,580,2845,2899,2901,161,579,
+ 467,1912,35,1153,32,6094,497,27,30,31,
+ 1162,1215,26,28,2627,2765,548,93,2903,759,
+ 35,433,2887,483,3576,3577,2360,35,1153,32,
+ 3328,5363,27,30,31,1162,1215,26,28,1151,
+ 296,25,23,50,1246,106,76,77,108,1272,
+ 1474,1301,2779,426,2413,162,759,35,433,550,
+ 576,3889,580,71,1939,2102,34,71,3522,1166,
+ 94,2773,2046,2837,496,455,456,3555,2224,2835,
+ 1488,2878,3225,2952,427,464,2903,2845,2899,2901,
+ 161,579,3478,1820,2570,35,1153,32,3328,5363,
+ 27,30,31,1162,1215,26,28,1151,296,25,
+ 23,50,1246,106,76,77,108,1272,1474,1301,
+ 2779,1818,2630,162,1729,35,1153,32,6094,2683,
+ 27,30,31,1162,1215,59,28,2369,2627,2773,
+ 3646,2837,71,35,1892,425,3471,2835,2532,2878,
+ 2702,550,576,3889,580,2845,2899,2901,161,579,
+ 1543,35,1153,32,4476,1818,27,30,31,1162,
+ 1215,57,28,88,468,2965,102,3647,2903,3327,
+ 35,1153,32,3328,843,27,30,31,1162,1215,
+ 26,28,1151,296,25,23,50,1246,106,76,
+ 77,108,1272,1474,1301,1564,325,1229,35,330,
+ 1520,1520,1625,1567,1704,5762,1666,2647,1365,551,
+ 576,3889,580,2708,35,1153,32,3328,390,27,
+ 30,31,1162,1215,26,28,1151,296,25,23,
+ 50,1246,106,76,77,108,1272,1474,1301,1564,
+ 56,1400,177,2736,1520,766,1625,1567,1704,51,
+ 1666,1713,2738,1751,176,3465,71,35,3059,415,
+ 2428,35,1153,32,3328,2670,27,30,31,1162,
+ 1215,26,28,1151,296,25,23,50,1246,106,
+ 76,77,108,1272,1474,1301,1564,89,1213,177,
+ 102,1520,2600,1625,1567,1704,2705,1666,1713,1647,
+ 1751,176,3465,56,648,2765,415,61,834,2638,
+ 35,1153,32,3328,1517,27,30,31,1162,1215,
+ 26,28,1151,296,25,23,50,1246,106,76,
+ 77,108,1272,1474,1301,1564,3735,2639,177,70,
+ 1520,3201,1625,1567,1704,360,1666,1713,458,1751,
+ 176,3465,1537,35,314,415,5842,1405,1315,422,
+ 416,3257,1239,2973,35,1153,32,3328,159,27,
+ 30,31,1162,1215,26,28,1151,296,25,23,
+ 50,1246,106,76,77,108,1272,1474,1301,1564,
+ 56,1449,177,1555,1520,926,1625,1567,1704,2631,
+ 1666,1713,2600,1751,176,1488,423,416,3257,191,
+ 1595,2852,35,1153,32,3328,3122,27,30,31,
+ 1162,1215,26,28,1151,296,25,23,50,1246,
+ 106,76,77,108,1272,1474,1301,1564,71,35,
+ 2102,3026,1520,1655,1625,1567,1704,2826,1666,1713,
+ 914,2969,197,3474,1702,413,416,3257,2973,35,
+ 1153,32,3328,1818,27,30,31,1162,1215,26,
+ 28,1151,296,25,23,50,1246,106,76,77,
+ 108,1272,1474,1301,1564,3125,2277,177,1267,1520,
+ 2955,1625,1567,1704,266,1666,1713,69,1751,176,
+ 1559,35,1153,32,409,363,41,30,31,1162,
+ 1215,480,281,264,265,1373,24,2003,35,1892,
+ 425,2973,35,1153,32,3328,630,27,30,31,
+ 1162,1215,26,28,1151,296,25,23,50,1246,
+ 106,76,77,108,1272,1474,1301,1564,56,308,
+ 177,365,1520,1273,1625,1567,1704,362,1666,1713,
+ 1038,1751,176,3474,1233,42,3022,409,71,35,
+ 317,2973,35,1153,32,3328,2658,27,30,31,
+ 1162,1215,26,28,1151,296,25,23,50,1246,
+ 106,76,77,108,1272,1474,1301,1564,71,3387,
+ 177,1818,1520,408,1625,1567,1704,241,1666,1713,
+ 1338,1751,176,71,35,2176,1278,409,2502,35,
+ 1153,32,3328,3207,27,30,31,1162,1215,26,
+ 28,1151,296,25,23,50,1246,106,76,77,
+ 108,1272,1474,1301,1564,2095,1501,177,72,1520,
+ 4250,1625,1567,1704,55,1666,1713,1662,1751,176,
+ 69,1537,35,567,175,6161,407,2973,35,1153,
+ 32,3328,379,27,30,31,1162,1215,26,28,
+ 1151,296,25,23,50,1246,106,76,77,108,
+ 1272,1474,1301,1564,56,97,177,723,1520,1273,
+ 1625,1567,1704,1488,1666,1713,1818,1751,176,71,
+ 35,2102,311,192,2641,65,405,2973,35,1153,
+ 32,3328,3704,27,30,31,1162,1215,26,28,
+ 1151,296,25,23,50,1246,106,76,77,108,
+ 1272,1474,1301,1564,1499,2630,177,2977,1520,147,
+ 1625,1567,1704,4731,1666,1713,228,1751,176,71,
+ 35,1892,425,188,2973,35,1153,32,3328,588,
+ 27,30,31,1162,1215,26,28,1151,296,25,
+ 23,50,1246,106,76,77,108,1272,1474,1301,
+ 1564,489,147,177,61,1520,4800,1625,1567,1704,
+ 98,1666,1713,1007,1751,176,931,35,2102,311,
+ 187,2973,35,1153,32,3328,1749,27,30,31,
+ 1162,1215,26,28,1151,296,25,23,50,1246,
+ 106,76,77,108,1272,1474,1301,1564,2491,147,
+ 177,1334,1520,4883,1625,1567,1704,2491,1666,1713,
+ 1348,1751,176,71,35,1892,425,186,2973,35,
+ 1153,32,3328,1847,27,30,31,1162,1215,26,
+ 28,1151,296,25,23,50,1246,106,76,77,
+ 108,1272,1474,1301,1564,471,439,177,392,1520,
+ 69,1625,1567,1704,2178,1666,1713,594,1751,176,
+ 71,35,1892,425,185,2973,35,1153,32,3328,
+ 2489,27,30,31,1162,1215,26,28,1151,296,
+ 25,23,50,1246,106,76,77,108,1272,1474,
+ 1301,1564,470,443,177,233,1520,1915,1625,1567,
+ 1704,5180,1666,1713,3119,1751,176,71,35,1892,
+ 425,184,2973,35,1153,32,3328,2489,27,30,
+ 31,1162,1215,26,28,1151,296,25,23,50,
+ 1246,106,76,77,108,1272,1474,1301,1564,469,
+ 147,177,2795,1520,5312,1625,1567,1704,2178,1666,
+ 1713,321,1751,176,71,3485,2102,74,183,2973,
+ 35,1153,32,3328,2489,27,30,31,1162,1215,
+ 26,28,1151,296,25,23,50,1246,106,76,
+ 77,108,1272,1474,1301,1564,1499,335,177,1361,
+ 1520,147,1625,1567,1704,5428,1666,1713,322,1751,
+ 176,931,35,2102,3486,182,2973,35,1153,32,
+ 3328,2489,27,30,31,1162,1215,26,28,1151,
+ 296,25,23,50,1246,106,76,77,108,1272,
+ 1474,1301,1564,1499,147,177,1482,1520,5808,1625,
+ 1567,1704,2178,1666,1713,332,1751,176,71,35,
+ 2102,313,181,2973,35,1153,32,3328,1413,27,
+ 30,31,1162,1215,26,28,1151,296,25,23,
+ 50,1246,106,76,77,108,1272,1474,1301,1564,
+ 56,255,177,1934,1520,4369,1625,1567,1704,2178,
+ 1666,1713,331,1751,176,71,35,2102,3554,180,
+ 2973,35,1153,32,3328,2112,27,30,31,1162,
+ 1215,26,28,1151,296,25,23,50,1246,106,
+ 76,77,108,1272,1474,1301,1564,56,339,177,
+ 391,1520,3364,1625,1567,1704,2132,1666,1713,594,
+ 1751,176,71,35,2102,316,179,2973,35,1153,
+ 32,3328,2831,27,30,31,1162,1215,26,28,
+ 1151,296,25,23,50,1246,106,76,77,108,
+ 1272,1474,1301,1564,2634,147,177,359,1520,5829,
+ 1625,1567,1704,2178,1666,1713,594,1751,176,71,
+ 35,1892,425,178,2973,35,1153,32,3328,1832,
+ 27,30,31,1162,1215,26,28,1151,296,25,
+ 23,50,1246,106,76,77,108,1272,1474,1301,
+ 1564,308,212,177,1104,1520,3002,1625,1567,1704,
+ 2178,1666,1713,2934,1751,176,71,35,1892,425,
+ 140,3094,35,1153,32,3328,3785,27,30,31,
+ 1162,1215,26,28,1151,296,25,23,50,1246,
+ 106,76,77,108,1272,1474,1301,2779,308,232,
+ 162,3724,1243,35,1153,32,4862,4737,27,30,
+ 31,1162,1215,375,28,2734,2773,1257,2837,2008,
+ 4250,1229,3572,330,2835,310,2878,428,464,1348,
+ 273,296,2845,2899,2901,161,173,3094,35,1153,
+ 32,3328,379,27,30,31,1162,1215,26,28,
+ 1151,296,25,23,50,1246,106,76,77,108,
+ 1272,1474,1301,2779,2623,2277,162,1209,266,2084,
+ 2789,2701,376,2634,355,2291,357,1423,3010,350,
+ 1175,1815,2773,3847,2837,5173,274,264,265,1488,
+ 2835,349,2878,2322,2634,69,273,296,2845,2899,
+ 2901,161,172,3094,35,1153,32,3328,1166,27,
+ 30,31,1162,1215,26,28,1151,296,25,23,
+ 50,1246,106,76,77,108,1272,1474,1301,2779,
+ 2277,2630,162,2277,266,2956,2309,1645,1517,3125,
+ 2456,35,312,343,346,2313,484,1653,2773,369,
+ 2837,361,274,264,265,412,2835,1488,2878,227,
+ 68,2639,2007,53,2845,2899,2901,161,171,3094,
+ 35,1153,32,3328,2934,27,30,31,1162,1215,
+ 26,28,1151,296,25,23,50,1246,106,76,
+ 77,108,1272,1474,1301,2779,430,464,162,2630,
+ 1243,35,1153,32,4862,4737,27,30,31,1162,
+ 1215,375,28,2777,2773,1998,2837,429,464,44,
+ 3022,399,2835,587,2878,415,479,417,493,2417,
+ 2845,2899,2901,161,170,3094,35,1153,32,3328,
+ 1749,27,30,31,1162,1215,26,28,1151,296,
+ 25,23,50,1246,106,76,77,108,1272,1474,
+ 1301,2779,2420,410,162,71,35,2102,566,364,
+ 371,56,355,2291,357,495,1202,350,1175,56,
+ 2773,2874,2837,2345,4250,2693,35,315,2835,3731,
+ 2878,2171,35,490,348,5166,2845,2899,2901,161,
+ 169,3094,35,1153,32,3328,379,27,30,31,
+ 1162,1215,26,28,1151,296,25,23,50,1246,
+ 106,76,77,108,1272,1474,1301,2779,3001,2277,
+ 162,3118,2215,35,1153,32,4476,3327,27,30,
+ 31,1162,1215,56,28,1556,2773,2572,2837,2731,
+ 35,565,1488,405,2835,2008,2878,484,2683,87,
+ 2092,1917,2845,2899,2901,161,168,3094,35,1153,
+ 32,3328,2277,27,30,31,1162,1215,26,28,
+ 1151,296,25,23,50,1246,106,76,77,108,
+ 1272,1474,1301,2779,2630,2277,162,1729,35,1153,
+ 32,6094,52,27,30,31,1162,1215,58,28,
+ 2626,56,2773,572,2837,4447,3199,319,412,1488,
+ 2835,56,2878,1752,2485,386,2382,1929,2845,2899,
+ 2901,161,167,3094,35,1153,32,3328,2277,27,
+ 30,31,1162,1215,26,28,1151,296,25,23,
+ 50,1246,106,76,77,108,1272,1474,1301,2779,
+ 475,3156,162,1994,35,1153,32,2524,90,40,
+ 30,31,1162,1215,2277,487,3576,3577,2773,2185,
+ 2837,1335,56,2353,1728,56,2835,861,2878,60,
+ 2124,215,2007,1365,2845,2899,2901,161,166,3094,
+ 35,1153,32,3328,2836,27,30,31,1162,1215,
+ 26,28,1151,296,25,23,50,1246,106,76,
+ 77,108,1272,1474,1301,2779,3423,2418,162,1994,
+ 35,1153,32,71,3728,1804,30,31,1162,1215,
+ 2277,2450,2683,2777,2773,2496,2837,1734,759,35,
+ 433,5007,2835,1867,2878,1984,2749,2007,1728,571,
+ 2845,2899,2901,161,165,3094,35,1153,32,3328,
+ 2886,27,30,31,1162,1215,26,28,1151,296,
+ 25,23,50,1246,106,76,77,108,1272,1474,
+ 1301,2779,2277,418,162,1994,35,1153,32,3315,
+ 371,1898,30,31,1162,1215,56,2762,2777,56,
+ 2773,3558,2837,585,4250,2268,56,581,2835,1833,
+ 2878,2712,67,2007,71,753,2845,2899,2901,161,
+ 164,3094,35,1153,32,3328,379,27,30,31,
+ 1162,1215,26,28,1151,296,25,23,50,1246,
+ 106,76,77,108,1272,1474,1301,2779,491,2973,
+ 162,3118,1847,2276,370,371,56,2661,1273,3732,
+ 266,1312,2183,2929,2777,56,2773,1922,2837,2006,
+ 4250,1657,2683,1019,2835,2033,2878,585,284,264,
+ 265,193,2845,2899,2901,161,163,3154,35,1153,
+ 32,3328,379,27,30,31,1162,1215,26,28,
+ 1151,296,25,23,50,1246,106,76,77,108,
+ 1272,1474,1301,2779,2277,2277,162,3118,266,466,
+ 3317,371,2533,3260,2489,56,1248,1904,2914,1508,
+ 2293,5173,2773,5173,2837,2534,287,264,265,744,
+ 2835,2055,2878,2280,66,65,3568,1488,2845,2899,
+ 2901,161,160,3214,35,1153,32,3328,3226,27,
+ 30,31,1162,1215,26,28,1151,296,25,23,
+ 50,1246,106,76,77,108,1272,1474,1301,1564,
+ 56,2956,177,2956,1520,2314,1625,1567,1704,3316,
+ 1666,1713,835,1751,176,2957,2492,368,2277,222,
+ 3327,35,1153,32,3328,340,27,30,31,1162,
+ 1215,26,28,1151,296,25,23,50,1246,106,
+ 76,77,108,1272,1474,1301,1564,4312,64,2564,
+ 1867,1520,2178,1625,1567,1704,3062,1666,1713,2277,
+ 2969,197,3327,35,1153,32,3328,2489,27,30,
+ 31,1162,1215,26,28,1151,296,25,23,50,
+ 1246,106,76,77,108,1272,1474,1301,1564,3115,
+ 1486,231,586,1520,2290,1625,1567,1704,2007,1666,
+ 1713,56,2969,197,2007,56,4991,96,3766,56,
+ 2843,2018,2490,2959,3108,71,35,1892,425,3327,
+ 35,1153,32,3328,1616,27,30,31,1162,1215,
+ 26,28,1151,296,25,23,50,1246,106,76,
+ 77,108,1272,1474,1301,1564,56,49,419,2777,
+ 1520,5807,1625,1567,1704,2777,1666,1713,46,2969,
+ 197,3327,35,1153,32,3328,460,27,30,31,
+ 1162,1215,26,28,1151,296,25,23,50,1246,
+ 106,76,77,108,1272,1474,1301,1564,388,1851,
+ 3522,319,1520,2637,1625,1567,1704,1011,1666,1713,
+ 589,2969,197,743,915,366,371,380,1048,649,
+ 385,3463,371,925,2045,2178,2277,378,3327,35,
+ 1153,32,3328,329,27,30,31,1162,1215,26,
+ 28,1151,296,25,23,50,1246,106,76,77,
+ 108,1272,1474,1301,1564,2011,55,1488,2542,1520,
+ 2818,1625,1567,1704,338,1666,1713,2277,2969,197,
+ 3486,35,1153,32,3328,459,27,30,31,1162,
+ 1215,26,28,1151,296,25,23,50,1246,106,
+ 76,77,108,1272,1474,1301,1564,54,577,3472,
+ 2486,1520,2179,1625,1567,1704,266,1666,1713,56,
+ 2969,197,2092,56,3461,56,56,56,2394,2494,
+ 1654,5820,1936,2389,278,264,265,757,1673,35,
+ 1892,425,462,3433,35,1153,32,3328,324,27,
+ 30,31,1162,1215,26,28,1151,296,25,23,
+ 50,1246,106,76,77,108,1272,1474,1301,2779,
+ 49,56,2010,266,2594,2292,3114,826,3553,4250,
+ 1273,1845,628,2528,3694,2878,2945,417,2773,56,
+ 2837,281,264,265,5833,56,2835,2178,2878,586,
+ 4674,4166,143,189,2845,3323,3327,35,1153,32,
+ 3328,598,27,30,31,1162,1215,26,28,1151,
+ 296,25,23,50,1246,106,76,77,108,1272,
+ 1474,1301,1564,56,2595,2178,235,1520,2704,1625,
+ 1567,1704,2277,2633,3380,35,1153,32,3328,2277,
+ 27,30,31,1162,1215,26,28,1151,296,25,
+ 23,50,1246,106,76,77,108,1272,1474,1301,
+ 2779,2822,358,56,233,56,4250,396,1983,101,
+ 3077,2669,56,2601,2706,56,2778,1123,2178,2773,
+ 5129,2837,3069,3104,3121,3003,1663,2835,4166,2878,
+ 3327,35,1153,32,3328,3302,27,30,31,1162,
+ 1215,26,28,1151,296,25,23,50,1246,106,
+ 76,77,108,1272,1474,1301,1564,334,2628,3004,
+ 2664,1520,2633,1625,1567,2573,3380,35,1153,32,
+ 3328,2277,27,30,31,1162,1215,26,28,1151,
+ 296,25,23,50,1246,106,76,77,108,1272,
+ 1474,1301,2779,2960,2778,2995,605,2927,1851,3522,
+ 2566,3361,4598,2959,542,4250,1216,2793,2961,1218,
+ 2178,2773,3064,2837,1292,3006,3059,2881,2962,2835,
+ 2277,3298,3327,35,1153,32,3328,4166,27,30,
+ 31,1162,1215,26,28,1151,296,25,23,50,
+ 1246,106,76,77,108,1272,1474,1301,1564,4367,
+ 2039,539,541,1520,2277,1625,2581,3380,35,1153,
+ 32,3328,2416,27,30,31,1162,1215,26,28,
+ 1151,296,25,23,50,1246,106,76,77,108,
+ 1272,1474,1301,2779,488,3117,3124,3176,3574,3092,
+ 3183,87,592,2178,2178,3086,3118,3119,3120,1362,
+ 3147,173,2773,397,2837,3327,35,1153,32,3328,
+ 3300,27,30,31,1162,1215,26,28,1151,296,
+ 25,23,50,1246,106,76,77,108,1272,1474,
+ 1301,1564,256,226,3212,2998,1520,324,2495,3380,
+ 35,1153,32,3328,2277,27,30,31,1162,1215,
+ 26,28,1151,296,25,23,50,1246,106,76,
+ 77,108,1272,1474,1301,2779,2893,3553,3177,1637,
+ 3178,3236,3237,2966,414,2958,6862,6862,6862,6862,
+ 6862,6862,6862,6862,2773,2277,3223,3327,35,1153,
+ 32,3328,6862,27,30,31,1162,1215,26,28,
+ 1151,296,25,23,50,1246,106,76,77,108,
+ 1272,1474,1301,1564,6862,4978,2277,2277,2501,3327,
+ 35,1153,32,3328,6862,27,30,31,1162,1215,
+ 26,28,1151,296,25,23,50,1246,106,76,
+ 77,108,1272,1474,1301,1564,5040,5172,6862,6862,
+ 2548,3380,35,1153,32,3328,6862,27,30,31,
+ 1162,1215,26,28,1151,296,25,23,50,1246,
+ 106,76,77,108,1272,1474,1301,2779,1258,35,
+ 1153,32,4945,4737,27,30,31,1162,1215,375,
+ 28,3380,35,1153,32,3328,3224,27,30,31,
+ 1162,1215,26,28,1151,296,25,23,50,1246,
+ 106,76,77,108,1272,1474,1301,2779,2277,6862,
+ 6862,6862,6862,2776,6862,6862,2180,2277,6187,2023,
+ 56,1273,2956,56,2959,1273,3258,6862,1273,6862,
+ 2277,6862,6862,6862,6862,1508,368,2181,1613,5173,
+ 355,2291,357,387,189,350,1175,2377,189,6862,
+ 6862,189,3425,6862,2783,234,1065,349,6862,2643,
+ 3654,3327,35,1153,32,3328,5415,27,30,31,
+ 1162,1215,26,28,1151,296,25,23,50,1246,
+ 106,76,77,108,1272,1474,1301,2379,266,2956,
+ 6862,6862,6862,388,6862,6862,2277,6862,6862,388,
+ 6862,6862,6862,368,6862,266,284,264,265,342,
+ 346,2313,380,1048,649,385,6862,6862,380,1048,
+ 649,385,2615,570,264,265,5301,6862,578,6862,
+ 6862,6862,1992,4682,3327,35,1153,32,3328,3645,
+ 27,30,31,1162,1215,26,28,1151,296,25,
+ 23,50,1246,106,76,77,108,1272,1474,1301,
+ 2441,3327,35,1153,32,3328,6862,27,30,31,
+ 1162,1215,26,28,1151,296,25,23,50,1246,
+ 106,76,77,108,1272,1474,1301,2445,3327,35,
+ 1153,32,3328,6862,27,30,31,1162,1215,26,
+ 28,1151,296,25,23,50,1246,106,76,77,
+ 108,1272,1474,1301,2447,3327,35,1153,32,3328,
+ 6862,27,30,31,1162,1215,26,28,1151,296,
+ 25,23,50,1246,106,76,77,108,1272,1474,
+ 1301,3210,3327,35,1153,32,3328,6862,27,30,
+ 31,1162,1215,26,28,1151,296,25,23,50,
+ 1246,106,76,77,108,1272,1474,1301,3213,3327,
+ 35,1153,32,3328,6862,27,30,31,1162,1215,
+ 26,28,1151,296,25,23,50,1246,106,76,
+ 77,108,1272,1474,1301,3214,1339,35,1153,32,
+ 4862,3905,27,30,31,1162,1215,375,28,3327,
+ 35,1153,32,3328,6862,27,30,31,1162,1215,
+ 26,28,1151,296,25,23,50,1246,106,76,
+ 77,108,1272,1474,1301,3362,3759,35,1153,32,
+ 4862,6219,27,30,31,1162,1215,375,28,6862,
+ 1220,35,3563,32,4945,4737,27,30,31,1162,
+ 1215,375,28,6862,6862,6862,387,6862,355,2291,
+ 357,6862,6862,350,1175,6862,388,6862,6862,6862,
+ 3539,35,1892,425,4448,3473,6862,6862,6862,6862,
+ 6862,6862,6862,271,296,380,1048,649,385,6862,
+ 759,35,3100,1084,2956,3424,2276,6862,355,2291,
+ 357,1273,308,350,1175,6862,388,6862,368,6862,
+ 6862,6862,355,2291,357,3432,6862,350,1175,6862,
+ 6862,266,49,6862,193,380,1048,649,385,1050,
+ 6862,6862,2126,1845,1523,2615,5173,6862,5415,269,
+ 264,265,3327,35,1153,32,3328,6862,27,30,
+ 31,1162,1215,26,28,1151,296,25,23,50,
+ 1246,106,76,77,108,1272,1474,2449,6862,2276,
+ 71,35,1892,425,1273,6862,309,6862,6862,6862,
+ 276,279,282,627,705,6862,2956,3508,402,1179,
+ 56,6862,1273,6267,4250,1273,6862,193,6862,6862,
+ 369,3267,49,2237,650,1353,2839,5932,285,6862,
+ 6862,749,388,1845,2174,189,262,6862,189,454,
+ 456,3555,6862,195,6862,6862,2812,6862,6862,6862,
+ 6862,382,1048,649,385,2897,6862,668,444,6008,
+ 6862,3327,35,1153,32,3328,1757,27,30,31,
+ 1162,1215,26,28,1151,296,25,23,50,1246,
+ 106,76,77,108,1272,1474,2482,259,243,35,
+ 1892,425,600,6862,3439,2027,35,1892,425,445,
+ 446,447,3376,6862,6862,6862,2182,6862,6862,6862,
+ 6862,600,6862,6862,262,189,329,35,1892,425,
+ 49,6862,6862,2133,3373,6862,213,49,6862,2630,
+ 6862,1845,2958,379,189,237,249,750,1845,954,
+ 6862,6862,221,236,246,247,248,250,49,1,
+ 6862,2775,6862,202,600,2139,4250,6862,2420,1845,
+ 2687,6862,2139,6862,6862,6862,201,6862,6862,216,
+ 200,203,204,205,206,207,262,189,379,6862,
+ 6862,593,6862,1427,56,2133,448,450,213,1273,
+ 56,2630,6862,6862,6862,1273,6862,237,249,750,
+ 6862,6862,3966,3118,6862,236,246,247,248,250,
+ 6862,6862,189,872,6862,202,5192,6862,189,6862,
+ 2944,6862,223,6862,6862,6862,2945,596,201,6862,
+ 214,217,200,203,204,205,206,207,1416,35,
+ 1153,32,4862,3905,27,30,31,1162,1215,375,
+ 28,3327,35,1153,32,3328,6862,27,30,31,
+ 1162,1215,26,28,1151,296,25,23,50,1246,
+ 106,76,77,108,1272,2239,6862,6862,3327,35,
+ 1153,32,3328,4509,27,30,31,1162,1215,26,
+ 28,1151,296,25,23,50,1246,106,76,77,
+ 108,1272,2289,3570,6862,6862,6862,6862,2276,6862,
+ 355,2291,357,1273,2882,350,1175,6862,388,4250,
+ 6862,6862,1770,35,1153,32,4945,589,27,30,
+ 31,1162,1215,375,28,6862,193,380,1048,649,
+ 385,4166,3327,35,1153,32,3328,590,27,30,
+ 31,1162,1215,26,28,1151,296,25,23,50,
+ 1246,106,76,77,108,2297,6862,3622,6862,6862,
+ 345,329,35,1892,425,600,2956,1508,6862,6862,
+ 56,5173,6862,6862,6862,1273,6862,6862,6862,6862,
+ 369,6862,6862,6862,355,2291,357,262,189,351,
+ 1175,6862,388,49,6862,6862,2133,6862,189,213,
+ 6862,6862,2630,3614,1845,47,3028,542,237,249,
+ 750,382,1048,649,385,6862,236,246,247,248,
+ 250,2956,431,6862,2180,6862,202,600,2505,600,
+ 243,35,1892,425,6862,368,6862,6862,6862,201,
+ 6862,6862,3695,200,203,204,205,206,207,262,
+ 189,3475,189,6862,539,541,6862,6862,2133,6862,
+ 2133,213,49,213,2630,5985,6862,6862,6862,6862,
+ 237,249,750,1845,47,6862,6862,6862,236,246,
+ 247,248,250,6862,517,6862,6862,6862,202,600,
+ 6862,3659,243,35,1892,425,6862,1478,6862,6862,
+ 6862,201,6862,229,211,200,203,204,205,206,
+ 207,262,189,329,35,1892,425,6862,6862,6862,
+ 2133,6862,6862,213,49,56,2630,6862,6862,6862,
+ 1273,6862,237,249,750,1845,2827,6862,6862,6862,
+ 236,246,247,248,250,49,603,6862,6862,6862,
+ 202,600,6862,189,6862,6862,1845,47,6862,2186,
+ 2822,3319,6862,201,6862,4250,209,200,203,204,
+ 205,206,207,262,189,243,35,1892,425,6862,
+ 2815,56,2133,6862,6862,213,1273,4166,2630,6862,
+ 6862,6862,6862,2700,237,249,750,6862,4250,6862,
+ 6862,6862,236,246,247,248,250,49,689,189,
+ 6862,6862,202,600,6862,6862,6862,1511,1845,2503,
+ 379,2594,4466,230,6862,201,4250,6862,210,200,
+ 203,204,205,206,207,262,189,243,35,1892,
+ 425,6862,2186,6862,2133,3557,6862,213,4166,56,
+ 2630,6862,6862,6862,600,56,237,249,750,6862,
+ 4250,6862,6862,542,236,246,247,248,250,49,
+ 775,6862,6862,6862,202,600,379,189,6862,6862,
+ 1845,47,379,6862,6862,1396,6862,201,6862,6862,
+ 220,200,203,204,205,206,207,262,189,6862,
+ 6862,3118,6862,6862,1042,6862,2133,3118,6862,213,
+ 540,541,2630,6862,6862,6862,6862,6862,237,249,
+ 750,6862,6862,6862,396,715,236,246,247,248,
+ 250,2086,6862,6862,6862,6862,202,6862,6862,3531,
+ 3104,3121,6862,6862,6862,6862,6862,6862,6862,201,
+ 6862,6862,3733,200,203,204,205,206,207,2382,
+ 35,1153,32,4862,4737,27,30,31,1162,1215,
+ 375,28,3327,35,1153,32,3328,6862,27,30,
+ 31,1162,1215,26,28,1151,296,25,23,50,
+ 1246,106,76,77,108,2357,243,35,1892,425,
+ 6862,6862,861,71,35,1892,425,600,3887,6862,
+ 243,35,1892,425,6862,6862,6862,6862,6862,6862,
+ 6862,6862,1296,6862,6862,6862,6267,4250,49,262,
+ 189,355,2291,357,6862,49,350,1175,2133,1845,
+ 47,213,49,6862,2630,6862,1845,764,349,262,
+ 237,249,750,1845,47,6862,6862,6862,236,246,
+ 247,248,250,1669,6862,6862,6862,6862,202,947,
+ 668,444,6008,6862,600,6862,6862,1763,6862,6862,
+ 6862,201,6862,6862,225,200,203,204,205,206,
+ 207,6862,6862,6862,6862,6862,262,189,6862,6862,
+ 342,346,2313,6862,56,2133,6862,6862,213,1273,
+ 6862,2630,445,446,447,3376,6862,237,249,750,
+ 6862,6862,6862,3653,6862,236,246,247,248,250,
+ 3645,1033,189,6862,6862,202,600,3373,6862,6862,
+ 3900,6862,2271,35,1892,425,6862,6862,201,6862,
+ 6862,219,200,203,204,205,206,207,262,189,
+ 71,35,1892,425,6862,6862,6862,2133,6862,6862,
+ 213,6862,6862,2630,49,6862,6862,6862,6862,237,
+ 249,750,6862,6862,6862,1845,47,236,246,247,
+ 248,250,49,3638,35,554,6862,202,6862,448,
+ 451,6862,6862,1845,2360,6862,271,296,6862,865,
+ 201,6862,6862,228,200,203,204,205,206,207,
+ 3327,35,1153,32,3328,6862,27,30,31,1162,
+ 1215,26,28,1151,296,25,23,50,1246,106,
+ 76,77,108,2367,266,1385,35,1153,32,4945,
+ 6862,27,30,31,1162,1215,375,28,243,35,
+ 1892,425,269,264,265,3327,35,1153,32,3328,
+ 6862,27,30,31,1162,1215,26,28,1151,296,
+ 25,23,50,1246,106,76,77,85,6862,6862,
+ 49,6862,6862,6862,6862,6862,6862,6862,6862,2956,
+ 6862,1845,47,276,279,282,627,705,6862,6862,
+ 6862,6862,6862,369,6862,6862,6862,355,2291,357,
+ 6862,6862,353,1175,6862,1810,2303,3255,3312,3907,
+ 6021,3327,1939,1153,1986,3328,6862,27,30,31,
+ 1162,1215,26,28,1151,296,25,23,50,1246,
+ 106,76,77,84,3327,35,1153,32,3328,6862,
+ 27,30,31,1162,1215,26,28,1151,296,25,
+ 23,50,1246,106,76,77,83,6862,6862,6862,
+ 6862,563,564,568,3327,35,1153,32,3328,6862,
+ 27,30,31,1162,1215,26,28,1151,296,25,
+ 23,50,1246,106,76,77,82,3924,3327,35,
+ 1153,32,3328,6862,27,30,31,1162,1215,26,
+ 28,1151,296,25,23,50,1246,106,76,77,
+ 81,3327,35,1153,32,3328,6862,27,30,31,
+ 1162,1215,26,28,1151,296,25,23,50,1246,
+ 106,76,77,80,3327,35,1153,32,3328,6862,
+ 27,30,31,1162,1215,26,28,1151,296,25,
+ 23,50,1246,106,76,77,79,3327,35,1153,
+ 32,3328,6862,27,30,31,1162,1215,26,28,
+ 1151,296,25,23,50,1246,106,76,77,78,
+ 3033,35,1153,32,3328,6862,27,30,31,1162,
+ 1215,26,28,1151,296,25,23,50,1246,106,
+ 76,77,104,3327,35,1153,32,3328,6862,27,
+ 30,31,1162,1215,26,28,1151,296,25,23,
+ 50,1246,106,76,77,110,3327,35,1153,32,
+ 3328,6862,27,30,31,1162,1215,26,28,1151,
+ 296,25,23,50,1246,106,76,77,109,3327,
+ 35,1153,32,3328,6862,27,30,31,1162,1215,
+ 26,28,1151,296,25,23,50,1246,106,76,
+ 77,107,3327,35,1153,32,3328,6862,27,30,
+ 31,1162,1215,26,28,1151,296,25,23,50,
+ 1246,106,76,77,105,3274,35,1153,32,3328,
+ 6862,27,30,31,1162,1215,26,28,1151,296,
+ 25,23,50,1246,86,76,77,1603,243,35,
+ 1892,425,4250,6862,6862,6862,6862,6862,6862,56,
+ 1870,6862,6862,6862,4250,4250,6862,6862,6862,2459,
+ 35,1892,425,1959,262,6862,6862,6862,4250,6862,
+ 49,6862,71,35,1892,425,379,262,6862,6862,
+ 6862,1845,47,6862,6862,239,249,750,6862,6862,
+ 262,49,6862,238,246,247,248,250,239,249,
+ 750,3118,1845,47,49,1857,238,246,247,248,
+ 250,239,249,750,6862,1845,815,6862,6862,238,
+ 246,247,248,250,6862,2760,875,240,242,244,
+ 3376,6862,251,241,243,6862,6862,6862,6862,6862,
+ 240,242,244,3376,6862,251,241,243,6862,6862,
+ 6862,6862,56,240,242,244,3376,4250,251,241,
+ 243,6862,3589,35,1892,425,4448,1914,6862,6125,
+ 6862,6862,6862,6862,6862,272,296,6862,56,379,
+ 1961,6862,6125,600,56,6862,6862,6862,6862,600,
+ 6862,6862,6862,2954,308,6125,6862,6862,6862,6862,
+ 6862,6862,6862,6862,3118,379,189,6862,6862,6862,
+ 6862,379,189,266,2350,1385,35,1153,32,4945,
+ 1396,27,30,31,1162,1215,375,28,546,6862,
+ 3118,270,264,265,6862,6862,3118,6862,2315,35,
+ 1153,32,4862,4220,27,30,31,1162,1215,375,
+ 28,3687,35,554,2285,6862,6862,2048,6862,6862,
+ 2549,6862,4250,6862,272,296,6862,6862,309,2956,
+ 6862,6862,277,280,283,627,705,440,6862,6862,
+ 6862,1692,6862,369,262,6862,4250,355,2291,357,
+ 6862,6862,351,1175,6862,6862,6862,6862,6862,6862,
+ 286,6862,266,6862,6862,239,249,750,262,6862,
+ 352,3520,357,238,246,247,248,250,6862,6862,
+ 270,264,265,6862,71,35,1892,425,6862,239,
+ 249,750,6862,6862,6862,6862,6862,238,246,247,
+ 248,250,6862,6862,6862,6862,6862,240,242,244,
+ 3376,6862,582,241,243,1781,49,6862,6862,6862,
+ 4250,277,280,283,627,705,6862,1845,628,6862,
+ 2137,240,242,244,3376,4250,581,241,243,6862,
+ 56,6862,262,6862,6862,600,6862,6862,6862,6862,
+ 6862,71,35,1892,425,6862,6862,262,6862,6862,
+ 6862,6862,6862,239,249,750,6862,379,189,6862,
+ 2887,238,246,247,248,250,221,2260,239,249,
+ 750,5173,4250,49,6862,6862,238,246,247,248,
+ 250,2226,2420,6862,1845,2569,4250,6862,6862,563,
+ 564,569,6862,6862,4166,240,242,244,3376,2260,
+ 252,241,243,5173,4250,6862,6862,6862,262,6862,
+ 240,242,244,3376,6862,341,241,243,6862,6862,
+ 6862,2956,6862,6862,6862,6862,4166,6862,56,239,
+ 249,750,6862,600,6862,368,6862,238,246,247,
+ 248,250,6862,6862,6862,6862,3745,71,35,1892,
+ 425,6862,6862,2956,56,379,189,6862,6862,4250,
+ 6862,56,6862,6862,221,4312,4250,368,6862,6862,
+ 396,240,242,244,3376,6862,536,241,243,49,
+ 2420,379,6862,6862,56,2694,3104,3121,379,600,
+ 1845,2701,6862,6862,6862,6862,6862,4682,6862,6862,
+ 6862,6862,396,6862,6862,6862,3118,6862,6862,6862,
+ 6862,379,189,3118,6862,6862,6862,2694,3104,3121,
+ 221,6862,6862,6862,6862,6862,6862,6862,6862,6862,
+ 544,6862,6862,6862,6862,6862,2420,597,6862,6862,
+ 6862,6862,6862,6862,3776,6862,6862,6862,6862,6862,
+ 6862,6862,6862,6862,6862,6862,6862,6862,6862,6862,
+ 6862,6862,6862,6862,6862,6862,6862,6862,6862,6862,
+ 6862,6862,6862,6862,6862,6862,6862,6862,6862,6862,
+ 6862,6862,6862,6862,6862,6862,6862,6862,6862,6862,
+ 6862,6862,6862,6862,6862,6862,6862,6862,6862,6862,
+ 3777,6862,0,39,6877,0,39,6876,0,1150,
+ 29,0,477,1213,0,491,1300,0,38,963,
+ 0,38,6877,0,38,6876,0,4031,126,0,
+ 1,481,0,495,812,0,494,880,0,1458,
+ 91,0,1150,424,0,35,33,0,32,34,
+ 0,39,963,0,1,643,0,1,7169,0,
+ 1,7168,0,1,7167,0,1,7166,0,1,
+ 7165,0,1,7164,0,1,7163,0,1,7162,
+ 0,1,7161,0,1,7160,0,1,7159,0,
+ 39,1,6877,0,39,1,6876,0,318,431,
+ 0,318,323,0,7130,275,0,7129,275,0,
+ 7236,275,0,7235,275,0,7157,275,0,7156,
+ 275,0,7155,275,0,7154,275,0,7153,275,
+ 0,7152,275,0,7151,275,0,7150,275,0,
+ 7169,275,0,7168,275,0,7167,275,0,7166,
+ 275,0,7165,275,0,7164,275,0,7163,275,
+ 0,7162,275,0,7161,275,0,7160,275,0,
+ 7159,275,0,39,6877,275,0,39,6876,275,
+ 0,6900,275,0,6877,48,0,6876,48,0,
+ 6868,1,0,6867,1,0,639,271,0,32,
+ 425,0,29,424,0,43,6898,0,43,37,
+ 0,4031,128,0,4031,127,0,1,5785,0,
+ 1,5435,0,1,5524,0,1,5554,0,1,
+ 5578,0,1,5601,0,1,5624,0,1,5647,
+ 0,1410,1,0,1,2235,0,1,5501,0,
+ 1,6884,0,1,6883,0,1,6882,0,1,
+ 6881,0,1,6880,0,1,6879,0,1,6878,
+ 0,1,642,0,1,645,0,1,972,0,
+ 1,978,0,1,1037,0,1,672,0,39,
+ 1,0,367,482,0,6900,1,0,47,37,
+ 0,1,92,0,6877,275,0,6876,275,0,
+ 538,3375,0,6900,1,263,0,39,1,263,
+ 0,263,453,0,6877,37,0,6876,37,0,
+ 6877,2,37,0,6876,2,37,0,6877,36,
+ 0,6876,36,0,6898,45,0,37,45,0,
+ 6872,442,0,6871,442,0,1,653,0,1,
+ 963,0,263,452,0,3111,354,0,367,95,
+ 0,35,73,0,1,367,0,2883,313,0,
+ 538,6051,0,1,263,0,263,254,0,1,
+ 919,0,1,956,0,263,253,0,6874,1,
+ 0,6870,1,0,1,263,3650,0,6871,263,
+ 0,3651,263,0,6874,420,0,6873,420,0,
+ 3661,263,0,10,12,0,8,10,12,0,
+ 3730,227,0,218,5239,0,3735,420,0,8,
+ 12,0
};
};
public final static char baseAction[] = BaseAction.baseAction;
@@ -1112,350 +1389,403 @@ public class CPPExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, CP
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,0,49,
- 50,51,52,53,54,0,56,57,58,59,
- 60,61,62,0,64,65,66,67,0,6,
- 0,71,0,3,74,75,76,77,78,79,
+ 40,41,42,43,44,45,46,47,48,49,
+ 50,51,52,53,0,0,56,57,58,59,
+ 0,61,62,63,0,65,66,67,0,69,
+ 0,1,2,73,74,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,0,49,50,51,52,53,
- 54,69,56,57,58,59,60,61,62,0,
- 64,65,66,67,0,92,93,71,4,0,
+ 44,45,46,47,48,49,50,51,52,53,
+ 86,87,56,57,58,59,0,61,62,63,
+ 4,65,66,67,94,69,92,93,0,73,
74,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,
- 0,49,50,51,52,53,54,68,56,57,
- 58,59,60,61,62,0,64,65,66,67,
- 0,1,2,71,4,0,74,75,76,77,
+ 48,49,50,51,52,53,0,0,56,57,
+ 58,59,0,61,62,63,4,65,66,67,
+ 0,69,0,1,2,73,74,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,0,49,50,51,
- 52,53,54,68,56,57,58,59,60,61,
- 62,0,64,65,66,67,0,1,2,0,
- 4,10,74,75,76,77,78,79,80,81,
+ 42,43,44,45,46,47,48,49,50,51,
+ 52,53,86,87,56,57,58,59,0,61,
+ 62,63,95,65,66,67,0,69,0,1,
+ 2,0,74,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,0,49,50,51,52,53,54,0,
- 56,57,58,59,60,61,62,0,64,65,
- 66,67,0,6,0,0,87,88,74,75,
+ 46,47,48,49,50,51,52,53,0,68,
+ 56,57,58,59,0,61,62,63,0,65,
+ 66,67,0,69,0,3,0,0,74,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,63,49,
- 50,51,52,53,54,0,56,57,58,59,
- 60,61,62,0,64,65,66,67,99,92,
- 93,89,9,91,74,75,76,77,78,79,
+ 40,41,42,43,44,45,46,47,48,49,
+ 50,51,52,53,86,87,56,57,58,59,
+ 0,61,62,63,0,65,66,67,94,69,
+ 86,87,86,87,74,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,0,49,50,51,52,53,
- 54,0,56,57,58,59,60,61,62,0,
- 64,65,66,67,99,6,0,1,2,0,
+ 44,45,46,47,48,49,50,51,52,53,
+ 0,0,56,57,58,59,0,61,62,63,
+ 0,65,66,67,94,69,92,93,0,0,
74,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,
- 0,49,50,51,52,53,54,68,56,57,
- 58,59,60,61,62,0,64,65,66,67,
- 5,92,93,0,1,2,74,75,76,77,
+ 48,49,50,51,52,53,86,87,56,57,
+ 58,59,0,61,62,63,95,65,66,67,
+ 94,69,92,93,86,87,74,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,0,49,50,51,
- 52,53,54,0,56,57,58,59,60,61,
- 62,0,64,65,66,67,0,1,2,8,
- 0,5,74,75,76,77,78,79,80,81,
+ 42,43,44,45,46,47,48,49,50,51,
+ 52,53,0,0,56,57,58,59,0,61,
+ 62,63,0,65,66,67,0,69,0,1,
+ 2,5,74,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,71,49,50,51,52,53,54,69,
- 56,57,58,59,60,61,62,0,64,65,
- 66,67,0,1,2,0,4,0,74,75,
+ 46,47,48,49,50,51,52,53,86,87,
+ 56,57,58,59,0,61,62,63,4,65,
+ 66,67,0,69,101,102,4,95,74,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,0,49,
- 50,51,52,53,54,68,56,57,58,59,
- 60,61,62,0,64,65,66,67,0,1,
- 2,0,87,88,74,75,76,77,78,79,
+ 40,41,42,43,44,45,46,47,48,49,
+ 50,51,52,53,0,0,56,57,58,59,
+ 0,61,62,63,0,65,66,67,0,69,
+ 0,1,2,0,74,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,0,49,50,51,52,53,
- 54,0,56,57,58,59,60,61,62,0,
- 64,65,66,67,0,0,1,2,87,88,
+ 44,45,46,47,48,49,50,51,52,53,
+ 86,87,56,57,58,59,0,61,62,63,
+ 0,65,66,67,4,69,92,93,0,0,
74,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,
- 0,49,50,51,52,53,54,0,56,57,
- 58,59,60,61,62,8,64,65,66,67,
- 0,1,2,89,0,91,74,75,76,77,
+ 48,49,50,51,52,53,68,0,56,57,
+ 58,59,0,61,62,63,9,65,66,67,
+ 0,69,96,0,1,2,74,75,76,77,
78,79,80,81,82,83,84,85,0,1,
- 2,3,4,5,6,7,0,9,10,11,
+ 2,3,4,5,6,7,8,40,10,11,
12,13,14,15,16,17,18,19,20,21,
- 22,23,24,25,26,0,28,29,30,31,
- 32,33,34,35,36,37,38,39,40,41,
- 42,43,44,45,46,47,0,49,50,51,
- 52,53,54,0,56,57,58,4,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,100,118,27,28,29,30,
- 31,32,33,34,35,36,0,1,2,40,
- 4,5,0,7,0,0,100,48,0,1,
- 2,6,4,0,9,56,57,58,59,0,
- 61,62,0,0,1,2,22,23,24,0,
- 71,72,28,29,30,31,32,33,34,35,
- 36,22,23,24,48,86,0,28,29,30,
- 31,32,33,34,35,36,48,0,0,0,
- 1,2,103,104,105,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,
- 0,0,27,28,29,30,31,32,33,34,
- 35,36,89,0,91,40,3,48,0,6,
- 0,8,9,48,68,0,1,2,96,97,
- 5,56,57,58,59,0,61,62,25,26,
- 27,0,1,2,0,0,71,72,3,48,
- 37,38,8,0,1,2,3,4,5,6,
- 7,86,9,96,97,0,0,0,55,3,
- 0,1,2,48,4,5,63,7,103,104,
- 105,68,69,70,71,72,73,87,88,48,
- 0,1,2,3,4,5,6,7,0,9,
- 87,88,89,90,91,92,93,94,95,96,
- 97,98,99,100,101,70,63,73,48,106,
- 107,108,109,110,111,112,113,114,115,116,
- 117,118,119,120,0,0,0,3,0,4,
- 6,6,8,9,9,0,0,1,2,3,
- 4,5,6,7,8,9,89,0,91,25,
- 26,27,72,25,26,0,1,2,22,23,
- 24,37,38,27,28,29,30,31,32,33,
- 34,35,36,0,1,2,3,4,5,55,
- 7,8,0,0,1,2,98,63,5,63,
- 7,55,68,69,70,71,72,73,63,63,
- 27,0,1,2,3,4,5,6,7,73,
- 9,87,88,89,90,91,92,93,94,95,
- 96,97,98,99,100,101,0,0,0,3,
- 106,107,108,109,110,111,112,113,114,115,
- 116,117,118,119,120,0,1,2,3,4,
+ 22,23,24,25,26,27,28,29,30,31,
+ 32,33,34,35,36,37,38,39,55,41,
+ 42,43,44,45,46,47,48,49,50,51,
+ 52,53,0,0,56,57,58,59,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,0,1,2,0,4,0,40,0,
+ 1,2,3,4,5,6,7,8,0,1,
+ 2,53,0,55,56,57,58,5,0,61,
+ 62,63,0,1,2,3,4,0,6,71,
+ 8,73,5,38,7,38,0,0,1,2,
+ 3,4,5,6,7,8,88,11,12,13,
+ 14,15,16,17,18,19,20,21,22,23,
+ 24,25,26,27,28,29,30,31,32,33,
+ 71,0,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,
- 0,0,27,28,29,30,31,32,33,34,
- 35,36,0,1,2,40,4,0,6,0,
- 0,9,0,48,0,25,26,0,8,0,
- 0,56,57,58,59,8,61,62,8,64,
- 0,22,23,24,87,88,71,28,29,30,
- 31,32,33,34,35,36,55,27,0,1,
- 2,86,0,1,2,3,4,5,6,7,
+ 25,26,27,28,29,30,31,32,33,91,
+ 0,99,100,0,0,40,98,0,0,1,
+ 2,3,4,5,6,7,8,0,53,0,
+ 55,56,57,58,0,64,61,62,63,68,
+ 0,0,0,3,0,5,71,7,73,9,
+ 6,22,23,24,25,26,27,28,29,30,
+ 31,32,33,88,0,1,2,3,4,55,
+ 6,54,8,0,34,35,36,37,60,0,
+ 40,64,3,70,0,1,2,60,70,114,
+ 115,116,0,9,54,0,1,2,3,4,
+ 60,6,0,8,64,64,89,90,68,68,
+ 70,71,72,73,101,102,103,104,105,106,
+ 107,108,109,110,111,112,86,87,0,89,
+ 90,91,92,93,94,95,96,97,98,99,
+ 100,101,102,103,104,105,106,107,108,109,
+ 110,111,112,69,120,60,64,117,118,119,
+ 120,0,34,35,3,0,5,0,7,4,
+ 9,0,1,2,3,4,9,6,0,8,
+ 0,0,1,2,3,4,5,0,7,0,
+ 10,4,5,91,7,34,35,36,37,0,
+ 98,40,3,22,23,24,25,26,27,28,
+ 29,30,31,32,33,54,0,1,2,54,
+ 4,60,0,1,2,64,4,0,6,68,
+ 8,70,71,72,73,0,69,59,0,1,
+ 2,60,71,54,6,64,8,86,87,68,
+ 89,90,91,92,93,94,95,96,97,98,
+ 99,100,101,102,103,104,105,106,107,108,
+ 109,110,111,112,0,1,2,55,117,118,
+ 119,120,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,67,0,27,
- 28,29,30,31,32,33,34,35,36,70,
- 73,0,40,63,0,1,2,3,4,5,
- 48,7,8,25,26,0,0,55,56,57,
- 58,59,0,61,62,10,64,0,1,2,
- 101,27,5,0,7,0,107,108,109,110,
- 111,112,113,114,115,116,117,0,86,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,59,0,27,28,29,30,
- 31,32,33,34,35,36,0,1,2,40,
- 68,69,6,0,0,1,2,48,4,5,
- 0,7,55,68,0,56,57,58,59,0,
- 61,62,8,64,98,22,23,24,0,72,
- 71,28,29,30,31,32,33,34,35,36,
- 55,27,23,24,48,86,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,0,0,27,28,29,30,31,32,33,
- 34,35,36,0,1,2,40,0,0,1,
- 2,3,4,5,48,7,0,0,0,3,
- 3,0,56,57,58,59,8,61,62,8,
- 64,0,1,2,3,4,5,71,7,8,
- 0,1,2,0,4,0,6,55,8,9,
- 120,48,86,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,0,63,
- 27,28,29,30,31,32,33,34,35,36,
- 0,73,71,40,63,0,1,2,3,4,
- 5,48,7,0,73,60,3,0,90,56,
- 57,58,59,73,61,62,0,64,0,0,
- 1,2,3,4,71,6,8,0,9,0,
- 90,0,1,2,3,4,5,8,7,86,
+ 18,19,20,21,22,23,24,25,26,27,
+ 28,29,30,31,32,33,0,0,1,2,
+ 3,4,40,6,0,8,0,1,2,55,
+ 4,5,0,7,0,53,0,55,56,57,
+ 58,0,0,61,62,63,4,65,7,114,
+ 115,116,0,1,2,73,22,23,24,25,
+ 26,27,28,29,30,31,32,33,0,53,
+ 88,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,0,70,0,0,1,
+ 2,40,4,0,6,91,8,4,66,67,
+ 0,0,98,91,53,54,55,56,57,58,
+ 98,0,61,62,63,22,65,101,102,103,
+ 104,105,106,107,108,109,110,111,112,0,
+ 1,2,3,4,5,6,7,8,38,88,
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,0,63,27,28,29,
- 30,31,32,33,34,35,36,0,1,2,
- 40,4,63,6,68,69,9,69,48,0,
- 63,73,3,103,104,105,56,57,58,59,
- 71,61,62,72,64,0,0,1,2,3,
- 4,5,6,7,0,9,0,1,2,3,
- 4,5,8,7,0,0,86,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,0,0,27,28,29,30,31,32,
- 33,34,35,36,0,1,2,40,4,63,
- 6,0,48,9,3,48,70,72,0,63,
- 55,67,0,56,57,58,59,9,61,62,
- 0,64,0,3,0,0,1,2,8,0,
- 1,2,3,4,5,0,7,0,1,2,
- 0,1,2,86,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,0,
- 48,27,28,29,30,31,32,33,34,35,
- 36,69,0,63,40,0,1,2,68,69,
- 65,66,48,73,0,0,72,3,0,0,
- 56,57,58,59,0,61,62,3,64,0,
- 0,1,2,0,4,0,6,8,0,9,
- 0,3,0,1,2,3,4,5,6,7,
- 86,9,10,11,12,13,14,15,16,17,
- 18,19,20,21,0,1,2,25,26,0,
- 65,66,8,55,55,37,38,0,0,37,
- 38,39,4,41,42,43,44,45,46,47,
- 55,49,50,51,52,53,54,0,69,0,
- 71,63,60,61,0,90,0,65,66,0,
- 1,2,3,4,5,6,7,0,9,10,
+ 20,21,22,23,24,25,26,27,28,29,
+ 30,31,32,33,0,1,2,0,4,5,
+ 40,7,71,0,1,2,9,4,5,60,
+ 7,0,0,53,3,55,56,57,58,0,
+ 113,61,62,63,0,65,0,114,115,116,
+ 0,1,2,73,22,23,24,25,26,27,
+ 28,29,30,31,32,33,0,0,88,0,
+ 1,2,3,4,5,6,7,8,9,10,
11,12,13,14,15,16,17,18,19,20,
- 21,67,55,55,25,26,0,1,2,0,
- 4,5,3,7,106,68,37,38,39,0,
- 41,42,43,44,45,46,47,119,49,50,
- 51,52,53,54,0,1,2,68,0,60,
- 101,94,95,69,65,66,107,68,0,1,
+ 21,22,23,24,25,26,27,28,29,30,
+ 31,32,33,0,1,2,60,4,5,40,
+ 7,0,1,2,0,4,0,6,4,8,
+ 54,0,53,7,55,56,57,58,0,0,
+ 61,62,63,0,65,118,22,0,1,2,
+ 0,4,73,22,23,24,25,26,27,28,
+ 29,30,31,32,33,89,90,88,0,1,
2,3,4,5,6,7,8,9,10,11,
12,13,14,15,16,17,18,19,20,21,
- 0,1,2,25,26,0,0,90,0,4,
- 0,3,48,3,0,37,38,39,8,41,
- 42,43,44,45,46,47,0,49,50,51,
- 52,53,54,0,1,2,0,0,60,0,
- 4,4,0,1,2,67,40,8,48,71,
- 0,1,2,3,4,5,6,7,22,9,
- 10,11,12,13,14,15,16,17,18,19,
- 20,21,0,63,0,25,26,0,1,2,
- 0,48,8,73,4,0,72,37,38,39,
- 48,41,42,43,44,45,46,47,72,49,
- 50,51,52,53,54,0,0,0,0,3,
- 60,0,73,8,6,65,66,0,1,2,
- 3,4,5,6,7,48,9,10,11,12,
- 13,14,15,16,17,18,19,20,21,103,
- 104,105,25,26,0,0,0,73,63,0,
- 0,0,0,8,37,38,39,8,41,42,
- 43,44,45,46,47,0,49,50,51,52,
- 53,54,27,0,0,0,27,60,73,4,
- 0,70,65,66,0,1,2,3,4,5,
- 6,7,8,9,10,11,12,13,14,15,
- 16,17,18,19,20,21,55,55,0,25,
- 26,3,68,39,69,0,70,0,3,68,
- 0,37,38,39,4,41,42,43,44,45,
- 46,47,0,49,50,51,52,53,54,74,
- 0,0,22,70,60,94,95,0,0,69,
- 10,67,0,1,2,3,4,5,6,7,
- 8,9,10,11,12,13,14,15,16,17,
- 18,19,20,21,0,0,0,25,26,0,
- 40,0,3,0,0,10,0,55,48,37,
- 38,39,0,41,42,43,44,45,46,47,
- 68,49,50,51,52,53,54,0,0,0,
- 0,3,60,5,6,40,69,9,8,67,
- 0,0,0,48,4,0,94,95,0,4,
- 0,55,0,25,26,3,55,27,55,55,
- 0,55,0,3,70,37,38,0,39,41,
- 3,0,0,0,0,3,3,3,0,0,
- 0,3,55,55,72,0,0,0,3,3,
- 0,63,0,65,66,55,68,69,70,0,
- 55,0,0,0,0,0,0,0,0,0,
- 0,70,70,0,0,87,88,89,70,69,
- 92,93,94,95,96,97,98,99,100,101,
- 0,69,0,0,106,0,108,109,110,111,
- 112,113,114,115,116,117,0,1,2,3,
+ 22,23,24,25,26,27,28,29,30,31,
+ 32,33,55,0,1,2,0,64,40,6,
+ 60,8,0,1,2,0,0,0,6,0,
+ 0,53,5,55,56,57,58,0,9,61,
+ 62,63,0,65,96,3,0,1,2,23,
+ 24,73,22,23,24,25,26,27,28,29,
+ 30,31,32,33,0,0,88,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,72,60,0,0,68,64,40,5,0,
+ 68,0,66,67,0,86,87,3,54,54,
+ 53,96,55,56,57,58,99,100,61,62,
+ 63,0,65,22,23,24,25,26,27,28,
+ 29,30,31,32,33,0,1,2,3,4,
+ 5,0,7,89,90,88,0,1,2,3,
4,5,6,7,8,9,10,11,12,13,
- 14,15,16,17,18,19,20,21,55,70,
- 0,25,26,102,72,72,72,90,70,70,
- 75,102,102,37,38,39,0,41,42,43,
- 44,45,46,47,102,49,50,51,52,53,
- 54,0,1,2,3,4,5,6,7,39,
- 9,10,11,12,13,14,15,16,17,18,
- 19,20,21,0,0,0,25,26,121,0,
- 0,0,0,0,0,0,0,0,37,38,
- 39,0,41,42,43,44,45,46,47,0,
- 49,50,51,52,53,54,0,0,0,0,
- 0,60,0,0,118,0,1,2,3,4,
- 5,6,7,0,9,10,11,12,13,14,
- 15,16,17,18,19,20,21,0,0,0,
- 25,26,0,0,0,0,0,0,0,0,
- 0,0,37,38,39,0,41,42,43,44,
- 45,46,47,0,49,50,51,52,53,54,
- 0,1,2,3,4,5,6,7,63,9,
- 10,11,12,13,14,15,16,17,18,19,
- 20,21,0,0,0,25,26,0,0,0,
- 0,0,0,0,0,0,0,37,38,39,
- 0,41,42,43,44,45,46,47,0,49,
- 50,51,52,53,54,0,0,0,0,0,
- 60,0,1,2,3,4,5,6,7,0,
+ 14,15,16,17,18,19,20,21,22,23,
+ 24,25,26,27,28,29,30,31,32,33,
+ 0,1,2,0,4,64,40,0,0,0,
+ 0,0,99,100,0,60,9,3,9,53,
+ 9,55,56,57,58,64,0,61,62,63,
+ 0,65,22,23,24,25,26,27,28,29,
+ 30,31,32,33,0,1,2,40,4,40,
+ 6,40,8,0,88,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,0,
+ 1,2,0,4,5,40,7,0,9,55,
+ 0,1,2,95,7,0,0,54,53,0,
+ 55,56,57,58,9,9,61,62,63,0,
+ 65,0,1,2,3,4,5,6,7,8,
+ 0,10,11,12,13,14,15,16,17,18,
+ 19,20,21,88,0,1,2,3,4,0,
+ 6,0,8,9,3,34,35,36,37,38,
+ 39,72,41,42,43,44,45,46,47,48,
+ 49,50,51,52,0,1,2,72,72,5,
+ 59,0,0,62,40,3,97,66,67,0,
+ 1,2,3,4,5,6,7,8,0,10,
+ 11,12,13,14,15,16,17,18,19,20,
+ 21,0,1,2,3,4,97,6,0,8,
+ 9,70,113,34,35,36,37,38,39,55,
+ 41,42,43,44,45,46,47,48,49,50,
+ 51,52,0,1,2,0,0,0,59,0,
+ 3,40,54,64,9,66,67,0,1,2,
+ 3,4,5,6,7,8,9,10,11,12,
+ 13,14,15,16,17,18,19,20,21,0,
+ 34,35,3,34,35,0,1,2,0,1,
+ 2,34,35,36,37,38,39,55,41,42,
+ 43,44,45,46,47,48,49,50,51,52,
+ 0,1,2,68,96,0,59,72,0,0,
+ 0,0,7,0,3,0,69,9,9,9,
+ 73,0,1,2,3,4,5,6,7,8,
+ 55,10,11,12,13,14,15,16,17,18,
+ 19,20,21,0,1,2,0,0,0,6,
+ 40,0,0,0,3,34,35,36,37,38,
+ 39,0,41,42,43,44,45,46,47,48,
+ 49,50,51,52,0,1,2,68,68,64,
+ 59,73,73,0,71,0,3,66,67,0,
+ 1,2,3,4,5,6,7,8,55,10,
+ 11,12,13,14,15,16,17,18,19,20,
+ 21,60,0,0,0,54,64,64,71,0,
+ 0,9,9,34,35,36,37,38,39,55,
+ 41,42,43,44,45,46,47,48,49,50,
+ 51,52,0,1,2,0,0,0,59,3,
+ 89,90,0,0,9,66,67,0,1,2,
+ 3,4,5,6,7,8,9,10,11,12,
+ 13,14,15,16,17,18,19,20,21,60,
+ 0,69,97,0,70,72,3,0,0,0,
+ 70,34,35,36,37,38,39,55,41,42,
+ 43,44,45,46,47,48,49,50,51,52,
+ 97,64,0,1,2,0,59,0,73,0,
+ 0,0,70,3,71,0,69,0,1,2,
+ 3,4,5,6,7,8,9,10,11,12,
+ 13,14,15,16,17,18,19,20,21,60,
+ 0,1,2,0,74,0,3,0,5,6,
+ 7,34,35,36,37,38,39,55,41,42,
+ 43,44,45,46,47,48,49,50,51,52,
+ 60,0,1,2,0,60,59,34,35,36,
+ 37,70,39,0,0,0,69,0,3,0,
+ 3,113,0,9,9,55,0,54,0,54,
+ 0,54,0,60,0,3,97,64,10,66,
+ 67,68,0,70,22,23,24,25,26,27,
+ 28,29,30,31,32,33,55,0,54,86,
+ 87,0,89,90,91,92,93,94,95,96,
+ 0,10,99,100,101,60,103,104,105,106,
+ 107,108,109,110,111,112,72,72,54,61,
+ 117,0,1,2,3,4,5,6,7,8,
9,10,11,12,13,14,15,16,17,18,
- 19,20,21,0,0,0,25,26,0,0,
- 0,0,0,0,0,0,0,0,37,38,
- 39,0,41,42,43,44,45,46,47,0,
- 49,50,51,52,53,54,0,1,2,3,
- 4,5,6,7,0,9,10,11,12,13,
+ 19,20,21,0,53,0,55,0,0,4,
+ 0,0,4,3,54,34,35,36,37,38,
+ 39,10,41,42,43,44,45,46,47,48,
+ 49,50,51,52,0,1,2,3,4,5,
+ 6,7,8,0,10,11,12,13,14,15,
+ 16,17,18,19,20,21,0,54,0,54,
+ 113,54,54,0,53,9,55,64,34,35,
+ 36,37,38,39,0,41,42,43,44,45,
+ 46,47,48,49,50,51,52,0,0,0,
+ 0,0,89,90,3,0,9,0,55,118,
+ 66,67,0,1,2,3,4,5,6,7,
+ 8,0,10,11,12,13,14,15,16,17,
+ 18,19,20,21,0,0,68,0,72,55,
+ 0,0,0,0,71,0,34,35,36,37,
+ 38,39,54,41,42,43,44,45,46,47,
+ 48,49,50,51,52,0,0,68,68,71,
+ 73,59,0,1,2,3,4,5,6,7,
+ 8,0,10,11,12,13,14,15,16,17,
+ 18,19,20,21,54,54,54,54,0,54,
+ 0,0,0,0,64,71,34,35,36,37,
+ 38,39,75,41,42,43,44,45,46,47,
+ 48,49,50,51,52,0,121,0,3,89,
+ 90,0,60,0,1,2,3,4,5,6,
+ 7,8,0,10,11,12,13,14,15,16,
+ 17,18,19,20,21,54,0,0,0,0,
+ 3,3,3,0,0,64,68,34,35,36,
+ 37,38,39,70,41,42,43,44,45,46,
+ 47,48,49,50,51,52,0,0,0,3,
+ 89,90,59,0,1,2,3,4,5,6,
+ 7,8,71,10,11,12,13,14,15,16,
+ 17,18,19,20,21,0,0,0,54,0,
+ 3,0,0,0,68,0,0,34,35,36,
+ 37,38,39,70,41,42,43,44,45,46,
+ 47,48,49,50,51,52,0,0,0,0,
+ 0,0,59,0,1,2,3,4,5,6,
+ 7,8,0,10,11,12,13,14,15,16,
+ 17,18,19,20,21,0,0,0,0,0,
+ 0,0,0,0,0,70,70,34,35,36,
+ 37,38,39,71,41,42,43,44,45,46,
+ 47,48,49,50,51,52,0,0,0,0,
+ 0,0,59,0,1,2,3,4,5,6,
+ 7,8,71,10,11,12,13,14,15,16,
+ 17,18,19,20,21,0,0,0,0,0,
+ 0,0,0,0,0,70,70,34,35,36,
+ 37,38,39,0,41,42,43,44,45,46,
+ 47,48,49,50,51,52,0,1,2,3,
+ 4,5,6,7,8,0,10,11,12,13,
14,15,16,17,18,19,20,21,0,0,
- 0,25,26,0,0,0,0,0,0,0,
- 0,0,0,37,38,39,0,41,42,43,
- 44,45,46,47,0,49,50,51,52,53,
- 54,0,1,2,3,4,5,6,7,0,
- 9,10,11,12,13,14,15,16,17,18,
- 19,20,21,0,0,0,25,26,0,0,
- 0,0,0,0,0,0,0,0,37,38,
- 39,0,41,42,43,44,45,46,47,0,
- 49,50,51,52,53,54,0,1,2,0,
- 4,0,0,0,0,0,10,11,12,13,
+ 0,0,0,0,0,0,0,0,0,0,
+ 34,35,36,37,38,39,0,41,42,43,
+ 44,45,46,47,48,49,50,51,52,0,
+ 1,2,3,4,5,6,7,8,0,10,
+ 11,12,13,14,15,16,17,18,19,20,
+ 21,0,0,0,0,0,0,0,0,0,
+ 0,0,0,34,35,36,37,38,39,0,
+ 41,42,43,44,45,46,47,48,49,50,
+ 51,52,0,1,2,3,4,5,6,7,
+ 8,0,10,11,12,13,14,15,16,17,
+ 18,19,20,21,0,0,0,0,0,0,
+ 0,0,0,0,0,0,34,35,36,37,
+ 38,39,0,41,42,43,44,45,46,47,
+ 48,49,50,51,52,0,1,2,3,4,
+ 5,6,7,8,0,10,11,12,13,14,
+ 15,16,17,18,19,20,21,0,0,0,
+ 0,0,0,0,0,0,9,0,0,34,
+ 35,36,37,38,39,0,41,42,43,44,
+ 45,46,47,48,49,50,51,52,0,1,
+ 2,0,4,0,0,0,0,0,10,11,
+ 12,13,14,15,16,17,18,19,20,21,
+ 22,23,24,25,26,27,28,29,30,31,
+ 32,33,0,0,0,0,0,0,0,72,
+ 0,0,0,0,0,0,0,0,0,1,
+ 2,53,4,0,56,57,58,0,10,11,
+ 12,13,14,15,16,17,18,19,20,21,
+ 22,23,24,25,26,27,28,29,30,31,
+ 32,33,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,1,2,
+ 0,53,0,0,56,57,58,10,11,12,
+ 13,14,15,16,17,18,19,20,21,22,
+ 23,24,25,26,27,28,29,30,31,32,
+ 33,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,1,2,0,
+ 53,0,0,56,57,58,10,11,12,13,
14,15,16,17,18,19,20,21,22,23,
- 24,0,0,0,28,29,30,31,32,33,
- 34,35,36,0,0,0,40,0,0,0,
- 0,0,0,0,0,0,1,2,0,4,
- 0,0,56,57,58,10,11,12,13,14,
- 15,16,17,18,19,20,21,22,23,24,
- 0,0,0,28,29,30,31,32,33,34,
- 35,36,0,0,0,40,0,1,2,3,
- 4,5,6,7,8,9,0,0,0,0,
- 0,56,57,58,0,0,0,0,22,23,
- 24,0,0,27,28,29,30,31,32,33,
- 34,35,36,11,12,13,14,15,16,17,
- 18,19,20,21,22,23,24,0,0,0,
- 28,29,30,31,32,33,34,35,36,63,
- 0,0,0,0,0,0,0,0,0,73,
+ 24,25,26,27,28,29,30,31,32,33,
+ 0,0,0,0,1,2,3,4,5,6,
+ 7,8,9,0,0,0,0,3,0,53,
+ 0,0,56,57,58,22,23,24,25,26,
+ 27,28,29,30,31,32,33,0,0,1,
+ 2,3,4,40,6,0,8,9,3,0,
+ 36,37,0,0,9,0,0,54,0,0,
+ 0,0,0,60,0,1,2,3,4,5,
+ 6,7,8,9,60,72,0,0,0,0,
+ 0,0,0,0,0,0,22,23,24,25,
+ 26,27,28,29,30,31,32,33,60,0,
+ 0,0,0,0,40,60,0,0,0,64,
+ 72,0,0,68,0,0,0,72,0,0,
+ 0,0,0,0,60,0,0,0,0,0,
+ 0,117,0,119,0,0,72,11,12,13,
+ 14,15,16,17,18,19,20,21,22,23,
+ 24,25,26,27,28,29,30,31,32,33,
+ 0,1,2,3,4,5,0,7,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,22,23,24,25,26,27,28,29,
+ 30,31,32,33,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 60,0,0,0,64,0,0,0,68,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,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;
@@ -1463,346 +1793,401 @@ public class CPPExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, CP
public interface TermAction {
public final static char termAction[] = {0,
- 5443,5405,5384,5384,5384,5384,5384,5384,5421,5384,
+ 6862,6824,6803,6803,6803,6803,6803,6803,6803,6840,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,5409,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,334,1,1,1,2742,
- 1,5618,1912,115,3667,1,1,5454,399,3749,
- 5443,5450,157,4743,1094,4101,3562,2206,3506,3893,
- 3208,4008,601,3985,2767,3962,10,5424,5424,5424,
- 5424,5424,5424,5424,5424,5424,5424,5424,5424,5424,
- 5424,5424,5424,5424,5424,5424,5424,5424,5424,5424,
- 5424,5424,5424,5424,5424,5424,5424,5424,5424,5424,
- 5424,5424,5424,5424,5424,5424,5424,5424,5424,5424,
- 5424,5424,5424,5424,300,5424,5424,5424,5424,5424,
- 5424,1478,5424,5424,5424,5424,5424,5424,5424,388,
- 5424,5424,5424,5424,39,3724,3699,5424,5481,5443,
- 5424,5424,5424,5424,5424,5424,5424,5424,5424,5424,
- 5424,5424,8,5427,5427,5427,5427,5427,5427,5427,
- 5427,5427,5427,5427,5427,5427,5427,5427,5427,5427,
- 5427,5427,5427,5427,5427,5427,5427,5427,5427,5427,
- 5427,5427,5427,5427,5427,5427,5427,5427,5427,5427,
- 5427,5427,5427,5427,5427,5427,5427,5427,5427,5427,
- 5443,5427,5427,5427,5427,5427,5427,3051,5427,5427,
- 5427,5427,5427,5427,5427,5443,5427,5427,5427,5427,
- 290,5177,5177,5427,285,5443,5427,5427,5427,5427,
- 5427,5427,5427,5427,5427,5427,5427,5427,5443,5405,
- 5384,5384,5384,5384,5384,5384,5412,5384,1,1,
+ 6828,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,121,1,1,1,1,1,
+ 133,2753,7070,2290,129,3567,1,1,367,6873,
+ 6862,6876,6877,6869,980,3658,3062,3270,2180,3649,
+ 4730,3657,1508,3656,3886,3655,10,6843,6843,6843,
+ 6843,6843,6843,6843,6843,6843,6843,6843,6843,6843,
+ 6843,6843,6843,6843,6843,6843,6843,6843,6843,6843,
+ 6843,6843,6843,6843,6843,6843,6843,6843,6843,6843,
+ 6843,6843,6843,6843,6843,6843,6843,6843,6843,6843,
+ 6843,6843,6843,6843,6843,6843,6843,6843,6843,6843,
+ 4322,4421,6843,6843,6843,6843,39,6843,6843,6843,
+ 6900,6843,6843,6843,3582,6843,3779,3747,432,6843,
+ 6843,6843,6843,6843,6843,6843,6843,6843,6843,6843,
+ 6843,6843,8,6846,6846,6846,6846,6846,6846,6846,
+ 6846,6846,6846,6846,6846,6846,6846,6846,6846,6846,
+ 6846,6846,6846,6846,6846,6846,6846,6846,6846,6846,
+ 6846,6846,6846,6846,6846,6846,6846,6846,6846,6846,
+ 6846,6846,6846,6846,6846,6846,6846,6846,6846,6846,
+ 6846,6846,6846,6846,6846,6846,125,135,6846,6846,
+ 6846,6846,6862,6846,6846,6846,1320,6846,6846,6846,
+ 333,6846,6862,6607,6604,6846,6846,6846,6846,6846,
+ 6846,6846,6846,6846,6846,6846,6846,6846,6862,6824,
+ 6803,6803,6803,6803,6803,6803,6803,6831,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,5409,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,5443,1,1,1,
- 1,1,1,3111,1,1,1,2742,1,5618,
- 1912,304,3667,1,1,5454,5443,5079,5076,121,
- 5481,5746,1094,4101,3562,2206,3506,3893,3208,4008,
- 601,3985,2767,3962,5443,5405,5384,5384,5384,5384,
- 5384,5384,5412,5384,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,6828,1,
1,1,1,1,1,1,1,1,1,1,
- 1,5409,1,1,1,1,1,1,1,1,
+ 1,1,4322,4421,1,1,1,1,421,2753,
+ 7070,2290,3490,3567,1,1,6862,6873,48,6607,
+ 6604,190,980,3658,3062,3270,2180,3649,4730,3657,
+ 1508,3656,3886,3655,6862,6824,6803,6803,6803,6803,
+ 6803,6803,6803,6831,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,5443,1,1,1,1,1,1,135,
- 1,1,1,2742,1,5618,1912,117,3667,1,
- 1,5454,111,3749,5443,462,2900,2927,1094,4101,
- 3562,2206,3506,3893,3208,4008,601,3985,2767,3962,
- 5443,5405,5384,5384,5384,5384,5384,5384,5412,5384,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,5409,1,1,
+ 1,1,1,1,6828,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,124,1577,
+ 1,1,1,1,134,2753,7070,2290,6862,3567,
+ 1,1,6862,6873,123,5948,122,6862,980,3658,
+ 3062,3270,2180,3649,4730,3657,1508,3656,3886,3655,
+ 6862,6824,6803,6803,6803,6803,6803,6803,6803,6831,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,5106,1,
- 1,1,1,1,1,136,1,1,1,2742,
- 1,5618,1912,131,3667,1,1,5454,2328,3724,
- 3699,3958,2393,3981,1094,4101,3562,2206,3506,3893,
- 3208,4008,601,3985,2767,3962,5443,5405,5384,5384,
- 5384,5384,5384,5384,5412,5384,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,5409,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,5443,1,1,1,1,1,
- 1,5443,1,1,1,2742,1,5618,1912,116,
- 3667,1,1,5454,2328,3749,5443,5457,5458,5443,
- 1094,4101,3562,2206,3506,3893,3208,4008,601,3985,
- 2767,3962,5443,5405,5384,5384,5384,5384,5384,5384,
- 5412,5384,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,5409,
+ 6828,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,4322,4421,1,1,1,1,
+ 153,2753,7070,2290,130,3567,1,1,3582,6873,
+ 4322,4421,4322,4421,980,3658,3062,3270,2180,3649,
+ 4730,3657,1508,3656,3886,3655,6862,6824,6803,6803,
+ 6803,6803,6803,6803,6803,6831,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 5443,1,1,1,1,1,1,3123,1,1,
- 1,2742,1,5618,1912,5443,3667,1,1,5454,
- 2780,3724,3699,5443,5263,5260,1094,4101,3562,2206,
- 3506,3893,3208,4008,601,3985,2767,3962,5443,5405,
- 5384,5384,5384,5384,5384,5384,5412,5384,1,1,
+ 1,1,1,1,1,1,6828,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,5409,1,1,1,1,
+ 141,136,1,1,1,1,154,2753,7070,2290,
+ 149,3567,1,1,3617,6873,3779,3747,145,6862,
+ 980,3658,3062,3270,2180,3649,4730,3657,1508,3656,
+ 3886,3655,6862,6824,6803,6803,6803,6803,6803,6803,
+ 6803,6831,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,5443,1,1,1,
- 1,1,1,5443,1,1,1,2742,1,5618,
- 1912,5443,3667,1,1,5454,5443,5457,5458,5451,
- 519,2780,1094,4101,3562,2206,3506,3893,3208,4008,
- 601,3985,2767,3962,5443,5405,5384,5384,5384,5384,
- 5384,5384,5412,5384,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,5409,1,1,1,1,1,1,1,1,
+ 1,1,6828,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,4322,4421,1,1,
+ 1,1,6862,2753,7070,2290,3490,3567,1,1,
+ 3617,6873,3851,3811,4322,4421,980,3658,3062,3270,
+ 2180,3649,4730,3657,1508,3656,3886,3655,6862,6824,
+ 6803,6803,6803,6803,6803,6803,6803,6831,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,5450,1,1,1,1,1,1,891,
- 1,1,1,2742,1,5618,1912,5443,3667,1,
- 1,5454,5443,5079,5076,125,5481,5443,1094,4101,
- 3562,2206,3506,3893,3208,4008,601,3985,2767,3962,
- 5443,5405,5384,5384,5384,5384,5384,5384,5412,5384,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,5409,1,1,
+ 1,1,1,1,1,1,1,1,6828,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,5443,1,
- 1,1,1,1,1,3133,1,1,1,2742,
- 1,5618,1912,5443,3667,1,1,5454,48,5263,
- 5260,124,2900,2927,1094,4101,3562,2206,3506,3893,
- 3208,4008,601,3985,2767,3962,5443,5405,5384,5384,
- 5384,5384,5384,5384,5412,5384,1,1,1,1,
+ 1,1,144,139,1,1,1,1,6862,2753,
+ 7070,2290,155,3567,1,1,6862,6873,434,6876,
+ 6877,1800,980,3658,3062,3270,2180,3649,4730,3657,
+ 1508,3656,3886,3655,6862,6824,6803,6803,6803,6803,
+ 6803,6803,6803,6831,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,5409,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,5443,1,1,1,1,1,
- 1,5443,1,1,1,2742,1,5618,1912,5443,
- 3667,1,1,5454,114,401,5457,5458,2900,2927,
- 1094,4101,3562,2206,3506,3893,3208,4008,601,3985,
- 2767,3962,5443,3916,1,1,1,1,1,1,
- 3939,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,5452,
+ 1,1,1,1,6828,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,4322,4421,
+ 1,1,1,1,6862,2753,7070,2290,2284,3567,
+ 1,1,432,6873,1079,3893,425,3526,980,3658,
+ 3062,3270,2180,3649,4730,3657,1508,3656,3886,3655,
+ 6862,6824,6803,6803,6803,6803,6803,6803,6803,6831,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 5443,1,1,1,1,1,1,5443,1,1,
- 1,2742,1,5618,1912,5447,3667,1,1,5454,
- 36,5339,5336,3958,137,3981,1094,4101,3562,2206,
- 3506,3893,3208,4008,601,3985,2767,3962,39,5079,
- 5076,3187,634,3774,3843,3302,138,3866,803,5709,
- 5707,5716,5715,5711,5712,5710,5713,5714,5717,5708,
- 5704,5783,5784,3820,3797,5443,5698,5705,5701,5677,
- 5703,5702,5699,5700,5678,3912,3889,5462,5845,2828,
- 581,995,5464,926,4077,955,5443,5465,5463,575,
- 5459,5460,5461,5443,2705,5846,5847,873,1434,5443,
- 5315,5315,230,5311,230,230,230,5319,230,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,2293,5446,230,1,1,1,
- 1,1,1,1,1,1,5443,5079,5076,1,
- 634,5124,5443,3302,225,5443,2293,5308,398,5174,
- 5174,1544,285,113,1335,1,1,1,3106,226,
- 5859,788,129,300,5457,5458,5704,5783,5784,5443,
- 420,230,5698,5705,5701,5677,5703,5702,5699,5700,
- 5678,5704,5783,5784,2527,5947,5443,5698,5705,5701,
- 5677,5703,5702,5699,5700,5678,285,130,5443,5443,
- 8788,8788,5882,5883,5884,5443,5315,5315,230,5311,
- 230,230,230,5363,230,1,1,1,1,1,
+ 6828,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,142,6862,1,1,1,1,
+ 6862,2753,7070,2290,150,3567,1,1,6862,6873,
+ 36,6761,6758,6862,980,3658,3062,3270,2180,3649,
+ 4730,3657,1508,3656,3886,3655,6862,6824,6803,6803,
+ 6803,6803,6803,6803,6803,6831,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 123,37,230,1,1,1,1,1,1,1,
- 1,1,3958,33,3981,1,5118,5479,5443,5118,
- 5443,5118,5118,5308,5959,37,5302,5302,2452,2423,
- 5302,1,1,1,3106,5443,5859,788,5118,5118,
- 5118,43,5284,5284,1,314,419,230,2996,5479,
- 5118,5118,161,348,5079,5076,587,634,624,334,
- 3302,5947,334,2452,2423,5443,5443,112,5118,4104,
- 5443,5079,5076,2793,634,5124,5118,3302,5882,5883,
- 5884,5118,5118,5118,5118,5118,5118,2900,2927,5281,
- 5443,5167,5163,606,5171,624,5375,3302,133,5375,
- 5118,5118,5118,5118,5118,5118,5118,5118,5118,5118,
- 5118,5118,5118,5118,5118,1156,1061,161,2955,5118,
- 5118,5118,5118,5118,5118,5118,5118,5118,5118,5118,
- 5118,5118,5118,5118,5443,39,461,5121,118,5481,
- 5121,334,5121,5121,334,351,29,391,391,5278,
- 391,391,5278,391,5278,5278,3958,5443,3981,5121,
- 5121,5121,1243,3160,3077,294,5457,5458,391,391,
- 391,5121,5121,5278,391,391,391,391,391,391,
- 391,391,391,1,5167,5163,5354,5171,5360,5121,
- 5357,5453,5443,38,5097,5094,2361,5121,5091,5109,
- 3302,5082,5121,5121,5121,5121,5121,5121,1061,5278,
- 5452,312,5167,5163,606,5171,624,5375,3302,5278,
- 5375,5121,5121,5121,5121,5121,5121,5121,5121,5121,
- 5121,5121,5121,5121,5121,5121,91,122,5443,5112,
- 5121,5121,5121,5121,5121,5121,5121,5121,5121,5121,
- 5121,5121,5121,5121,5121,5443,5384,5384,230,5384,
- 230,230,230,5387,230,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 120,5443,230,1,1,8845,1,1,1,1,
- 1,1,448,1,1,1,1,5443,5103,227,
- 5443,5103,5443,5381,5443,3160,3077,5443,5455,139,
- 409,1,1,1,3386,5449,5655,1912,5348,3667,
- 100,5704,5783,5784,2900,2927,221,5698,5705,5701,
- 5677,5703,5702,5699,5700,5678,4204,5351,5443,8720,
- 8715,5947,5443,5384,5384,230,5384,230,230,230,
- 230,230,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,5454,119,230,
- 1,1,8845,1,1,1,1,1,1,1951,
- 5448,5443,1,4457,1,5167,5163,606,5171,624,
- 5381,3302,312,3160,3077,304,134,3488,1,1,
- 1,3386,5443,5655,1912,5746,3667,5443,5457,5458,
- 2254,312,624,5443,3302,5443,2522,1908,1865,1822,
- 1779,1736,1693,1650,1607,1564,1521,29,5947,5443,
- 5384,5384,230,5384,230,230,230,5396,230,1,
+ 1,1,1,1,1,1,6828,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,3329,5443,230,1,1,8845,
- 1,1,1,1,1,1,37,5302,5302,1,
- 4447,3495,334,228,5443,5079,5076,5381,634,624,
- 5443,3302,1513,5888,5443,1,1,1,3386,339,
- 5655,1912,5453,3667,2361,5704,5783,5784,5443,428,
- 220,5698,5705,5701,5677,5703,5702,5699,5700,5678,
- 4207,5452,5783,5784,5479,5947,5443,5384,5384,230,
- 5384,230,230,230,5387,230,1,1,1,1,
+ 4322,4421,1,1,1,1,137,2753,7070,2290,
+ 6862,3567,1,1,1118,6873,3851,3811,552,6862,
+ 980,3658,3062,3270,2180,3649,4730,3657,1508,3656,
+ 3886,3655,6862,3650,1,1,1,1,1,1,
+ 1,3651,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,5443,5443,230,1,1,8845,1,1,1,
- 1,1,1,37,5302,5302,1,5443,1,5167,
- 5163,606,5171,624,5381,3302,350,238,1,1728,
- 5272,1,1,1,1,3386,366,5655,1912,5402,
- 3667,1,5167,5163,587,5171,624,221,3302,5266,
- 1,5299,5299,5443,5296,537,334,4756,366,334,
- 5075,2594,5947,5443,5384,5384,230,5384,230,230,
- 230,5387,230,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,5443,1061,
- 230,1,1,8845,1,1,1,1,1,1,
- 443,366,5450,1,1061,334,5079,5076,606,634,
- 624,5381,3302,321,5269,3801,5366,5443,366,1,
- 1,1,3386,366,5655,1912,5443,3667,5443,348,
- 39,39,3487,5481,221,334,5449,323,334,8,
- 366,1,5167,5163,606,5171,624,5440,3302,5947,
- 5443,5384,5384,230,5384,230,230,230,230,230,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,5443,1061,230,1,1,
- 8845,1,1,1,1,1,1,449,39,39,
- 1,5481,1061,5293,4231,3495,5293,4888,5381,1,
- 1061,5448,4866,5882,5883,5884,1,1,1,3386,
- 5440,5655,1912,1243,3667,5443,370,5167,5163,587,
- 5171,624,1,3302,1,1,1,5167,5163,587,
- 5171,624,5399,3302,47,5443,5947,5443,5384,5384,
- 230,5384,230,230,230,230,230,1,1,1,
+ 1,1,6871,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,994,442,1,1,
+ 1,1,6862,2753,7070,2290,6770,3567,1,1,
+ 6862,6873,3396,6862,10586,10586,980,3658,3062,3270,
+ 2180,3649,4730,3657,1508,3656,3886,3655,39,6426,
+ 6423,5019,1410,5578,5501,5601,2235,6773,1262,7161,
+ 7159,7168,7167,7163,7164,7162,7165,7166,7169,7160,
+ 7156,7235,7236,7150,7157,7153,7129,7155,7154,7151,
+ 7152,7130,5554,5524,5647,5624,6881,5435,6898,645,
+ 1037,6883,972,5785,978,6884,6882,642,6878,6879,
+ 6880,7297,6862,6862,1198,7298,7299,1528,6862,6737,
+ 6737,263,6733,263,263,263,263,6741,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,5443,5443,230,1,1,8845,1,1,
- 1,1,1,1,92,1,1,1,1,1061,
- 5305,5443,2245,5305,3342,5381,1287,1994,132,1061,
- 4822,5454,365,1,1,1,3386,2393,5655,1912,
- 1,3667,5443,3487,5443,5443,5457,5458,344,1,
- 5167,5163,5354,5171,5360,5443,5357,5443,8720,8715,
- 293,935,935,5947,5443,5384,5384,230,5384,230,
- 230,230,230,230,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,5443,
- 3529,230,1,1,8845,1,1,1,1,1,
- 1,3440,5443,1061,1,5443,5263,5260,344,344,
- 3935,619,5381,344,5443,361,5848,4102,29,444,
- 1,1,1,3386,5443,5655,1912,4119,3667,5443,
- 95,39,39,5443,5481,458,5369,5451,75,5369,
- 5443,4105,5443,1,1,1,1,1,1,1,
- 5947,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,5443,5457,5458,1,1,139,
- 3935,619,5455,5082,5085,5505,5506,126,400,1,
- 1,1,391,1,1,1,1,1,1,1,
- 5088,1,1,1,1,1,1,5443,1016,5443,
- 5450,1149,1,5984,287,5803,5443,1,1,1,
- 5167,5163,3187,5171,3774,3843,3302,1,3866,5127,
- 5154,5160,5133,5136,5148,5145,5151,5142,5139,5130,
- 5157,5454,2664,1513,3820,3797,5443,5079,5076,5443,
- 634,624,4221,3302,810,5100,3912,3889,5462,5443,
- 2828,581,995,5464,926,4077,955,951,5465,5463,
- 575,5459,5460,5461,5443,5325,5322,5902,5443,1434,
- 2254,2566,2494,5729,39,39,2522,520,39,5079,
- 5076,3187,634,3774,3843,3302,5437,3866,731,5709,
- 5707,5716,5715,5711,5712,5710,5713,5714,5717,5708,
- 5443,5332,5328,3820,3797,5443,5443,5805,5443,2739,
- 1,4140,5479,3487,432,3912,3889,5462,5266,2828,
- 581,995,5464,926,4077,955,452,5465,5463,575,
- 5459,5460,5461,45,5345,5345,39,399,1434,1,
- 5481,392,5443,5325,5322,5418,4519,5449,5479,5450,
- 141,5079,5076,3187,634,3774,3843,3302,2416,3866,
- 731,5709,5707,5716,5715,5711,5712,5710,5713,5714,
- 5717,5708,5443,1061,1,3820,3797,37,5302,5302,
- 5443,5342,533,5269,621,99,4352,3912,3889,5462,
- 5479,2828,581,995,5464,926,4077,955,2559,5465,
- 5463,575,5459,5460,5461,1,5443,5443,5443,4377,
- 1434,373,5448,163,1630,39,39,1,5167,5163,
- 3187,5171,3774,3843,3302,5479,3866,5127,5154,5160,
- 5133,5136,5148,5145,5151,5142,5139,5130,5157,5882,
- 5883,5884,3820,3797,5443,5443,371,533,1104,1,
- 5443,128,391,5453,3912,3889,5462,5453,2828,581,
- 995,5464,926,4077,955,1,5465,5463,575,5459,
- 5460,5461,5452,295,5443,5443,5452,1434,163,672,
- 293,1342,39,39,39,5079,5076,3187,634,3774,
- 3843,3302,5415,3866,731,5709,5707,5716,5715,5711,
- 5712,5710,5713,5714,5717,5708,2664,5115,103,3820,
- 3797,4378,3603,1235,4050,5443,1391,5443,3117,5287,
- 39,3912,3889,5462,5481,2828,581,995,5464,926,
- 4077,955,127,5465,5463,575,5459,5460,5461,3340,
- 1,5443,3537,2080,1434,2566,2494,430,5443,8155,
- 5390,5418,39,5079,5076,3187,634,3774,3843,3302,
- 5415,3866,731,5709,5707,5716,5715,5711,5712,5710,
- 5713,5714,5717,5708,424,1,5443,3820,3797,280,
- 5393,5443,5378,399,73,5390,5443,2664,3753,3912,
- 3889,5462,5443,2828,581,995,5464,926,4077,955,
- 5290,5465,5463,575,5459,5460,5461,5443,1,5443,
- 1,645,1434,5916,5910,5393,1103,5914,191,5418,
- 48,35,512,3753,5458,48,2566,2494,510,5457,
- 453,1513,5443,5908,5909,3691,3488,191,1513,5372,
- 5443,3292,311,4488,2167,5939,5940,5443,3464,5917,
- 600,5443,5443,5443,5443,4827,4860,4437,5443,378,
- 526,4861,3517,5919,2119,5443,5443,1,3416,4679,
- 5443,665,525,1888,1955,5458,5920,5941,5918,5443,
- 5457,5443,5443,5443,5443,194,5443,185,5443,514,
- 5443,3578,4875,2,5443,5930,5929,5942,4881,3047,
- 5911,5912,5935,5936,5933,5934,5913,5915,5937,5938,
- 5443,4064,5443,5443,5943,5443,5923,5924,5925,5921,
- 5922,5931,5932,5927,5926,5928,39,5079,5076,3187,
- 634,3774,3843,3302,5447,3866,731,5709,5707,5716,
- 5715,5711,5712,5710,5713,5714,5717,5708,37,3578,
- 1,3820,3797,4118,3246,3284,3322,4322,2037,2607,
- 5431,4118,1,3912,3889,5462,5443,2828,581,995,
- 5464,926,4077,955,4118,5465,5463,575,5459,5460,
- 5461,39,5079,5076,3187,634,3774,3843,3302,3648,
- 3866,731,5709,5707,5716,5715,5711,5712,5710,5713,
- 5714,5717,5708,5443,5443,5443,3820,3797,5434,5443,
- 5443,5443,5443,5443,5443,5443,5443,5443,3912,3889,
- 5462,5443,2828,581,995,5464,926,4077,955,5443,
- 5465,5463,575,5459,5460,5461,5443,5443,5443,5443,
- 5443,1434,5443,5443,5446,39,5079,5076,3187,634,
- 3774,3843,3302,5443,3866,731,5709,5707,5716,5715,
- 5711,5712,5710,5713,5714,5717,5708,5443,5443,5443,
- 3820,3797,5443,5443,5443,5443,5443,5443,5443,5443,
- 5443,5443,3912,3889,5462,5443,2828,581,995,5464,
- 926,4077,955,5443,5465,5463,575,5459,5460,5461,
- 39,5079,5076,3187,634,3774,3843,3302,1382,3866,
- 731,5709,5707,5716,5715,5711,5712,5710,5713,5714,
- 5717,5708,5443,5443,5443,3820,3797,5443,5443,5443,
- 5443,5443,5443,5443,5443,5443,5443,3912,3889,5462,
- 5443,2828,581,995,5464,926,4077,955,5443,5465,
- 5463,575,5459,5460,5461,5443,5443,5443,5443,5443,
- 1434,39,5079,5076,4755,634,3774,3843,3302,5443,
- 3866,731,5709,5707,5716,5715,5711,5712,5710,5713,
- 5714,5717,5708,5443,5443,5443,3820,3797,5443,5443,
- 5443,5443,5443,5443,5443,5443,5443,5443,3912,3889,
- 5462,5443,2828,581,995,5464,926,4077,955,5443,
- 5465,5463,575,5459,5460,5461,39,5079,5076,3187,
- 634,3774,3843,3302,5443,3866,731,5709,5707,5716,
- 5715,5711,5712,5710,5713,5714,5717,5708,5443,5443,
- 5443,3820,3797,5443,5443,5443,5443,5443,5443,5443,
- 5443,5443,5443,3912,3889,5462,5443,2828,581,995,
- 5464,926,4077,955,5443,5465,5463,575,5459,5460,
- 5461,39,5079,5076,3187,634,3774,3843,3302,5443,
- 3866,731,5709,5707,5716,5715,5711,5712,5710,5713,
- 5714,5717,5708,5443,5443,5443,3820,3797,5443,5443,
- 5443,5443,5443,5443,5443,5443,5443,5443,3912,3889,
- 5462,5443,2828,581,995,5464,926,4077,955,5443,
- 5465,5463,575,5459,5460,5461,5443,5079,5076,5443,
- 5481,5443,5443,5443,5443,5443,684,5709,5707,5716,
- 5715,5711,5712,5710,5713,5714,5717,5708,5704,5783,
- 5784,5443,5443,5443,5698,5705,5701,5677,5703,5702,
- 5699,5700,5678,5443,5443,5443,5845,5443,5443,5443,
- 5443,5443,5443,5443,5443,242,5253,5249,5443,5257,
- 5443,5443,2705,5846,5847,684,5240,5246,5219,5222,
- 5234,5231,5237,5228,5225,5216,5243,5195,5189,5186,
- 5443,5443,5443,5213,5192,5204,5183,5198,5201,5210,
- 5207,5180,5443,5443,5443,5845,32,392,392,5275,
- 392,392,5275,392,5275,5275,5443,5443,5443,5443,
- 5443,2705,5846,5847,5443,5443,5443,5443,392,392,
- 392,5443,224,5275,392,392,392,392,392,392,
- 392,392,392,5709,5707,5716,5715,5711,5712,5710,
- 5713,5714,5717,5708,5704,5783,5784,5443,5443,5443,
- 5698,5705,5701,5677,5703,5702,5699,5700,5678,5275,
- 5443,5443,5443,5443,5443,5443,5443,5443,5443,5275
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,323,6521,6521,6862,318,6862,263,6862,
+ 6514,6510,653,6661,6794,963,6794,2235,333,6876,
+ 6877,1,115,6730,1,1,1,5390,111,1107,
+ 7311,1556,1,6514,6510,653,6661,6862,963,263,
+ 2235,453,1570,820,1407,3580,257,345,6514,6510,
+ 653,6661,6794,963,6794,2235,7399,7161,7159,7168,
+ 7167,7163,7164,7162,7165,7166,7169,7160,7156,7235,
+ 7236,7150,7157,7153,7129,7155,7154,7151,7152,7130,
+ 3072,6862,7334,7335,7336,6862,6737,6737,263,6733,
+ 263,263,263,263,6782,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,5693,
+ 6862,5142,4702,139,37,263,5716,126,403,6514,
+ 6510,4206,6661,1,963,1,2235,495,1,258,
+ 6730,1,1,1,6862,6201,1107,7311,1556,4930,
+ 33,6862,6862,6465,6862,6465,263,6465,452,6465,
+ 1904,7156,7235,7236,7150,7157,7153,7129,7155,7154,
+ 7151,7152,7130,7399,367,6426,6423,653,1410,6898,
+ 963,4058,2235,6862,6465,6465,6465,6465,1321,6862,
+ 6465,6447,639,2097,6862,6876,6877,6453,1368,7334,
+ 7335,7336,6862,6874,6465,1,6514,6510,4206,6661,
+ 6465,963,114,2235,6465,3729,4004,3931,6465,4930,
+ 6465,6465,6465,6465,1079,3893,2050,2003,1956,1909,
+ 1862,1815,1768,1721,1674,1627,6465,6465,118,6465,
+ 6465,6465,6465,6465,6465,6465,6465,6465,6465,6465,
+ 6465,6465,6465,6465,6465,6465,6465,6465,6465,6465,
+ 6465,6465,6465,6873,6422,1321,2699,6465,6465,6465,
+ 6465,6862,4638,4611,6468,433,6468,6862,6468,424,
+ 6468,1,6514,6510,653,6661,6874,963,595,2235,
+ 337,37,6877,6877,6877,6877,6877,39,6877,6862,
+ 7198,6900,367,5693,367,6468,6468,6468,6468,91,
+ 5716,6468,6459,6877,6877,6877,6877,6877,6877,6877,
+ 6877,6877,6877,6877,6877,6468,6862,6426,6423,1150,
+ 6900,6468,6862,6426,6423,6468,1410,6862,6471,6468,
+ 2235,6468,6468,6468,6468,476,6873,3578,38,6444,
+ 6441,6877,3072,2499,6438,6877,2235,6468,6468,6877,
+ 6468,6468,6468,6468,6468,6468,6468,6468,6468,6468,
+ 6468,6468,6468,6468,6468,6468,6468,6468,6468,6468,
+ 6468,6468,6468,6468,43,6628,6628,1024,6468,6468,
+ 6468,6468,6862,6803,6803,263,6803,263,263,263,
+ 263,6806,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,9202,
+ 1,1,1,1,1,1,6862,1,6514,6510,
+ 6776,6661,263,6779,113,6664,481,1,1,6625,
+ 1,6450,112,6450,259,1,159,6800,1,1,
+ 1,131,6862,2241,7107,2290,2713,3567,3665,7334,
+ 7335,7336,6862,6876,6877,254,7156,7235,7236,7150,
+ 7157,7153,7129,7155,7154,7151,7152,7130,6862,2768,
+ 7399,6862,6803,6803,263,6803,263,263,263,263,
+ 263,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,9202,1,
+ 1,1,1,1,1,6862,2851,6862,6862,6426,
+ 6423,263,1410,39,963,5693,2235,6900,5670,1111,
+ 1,6862,5716,5693,1,3518,6800,1,1,1,
+ 5716,6862,2241,7107,2290,2565,3567,3333,4895,2785,
+ 2719,2653,2587,2521,2455,2389,2323,2257,2191,381,
+ 6426,6423,4206,1410,367,963,367,2235,3566,7399,
+ 6862,6803,6803,263,6803,263,263,263,263,6815,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,9202,1,1,
+ 1,1,1,1,482,39,39,6862,6900,6712,
+ 263,6712,2144,92,1,1,6866,1,6721,1321,
+ 6721,271,260,1,6616,6800,1,1,1,6862,
+ 3660,2241,7107,2290,6862,3567,494,7334,7335,7336,
+ 327,6876,6877,253,7156,7235,7236,7150,7157,7153,
+ 7129,7155,7154,7151,7152,7130,146,6862,7399,6862,
+ 6803,6803,263,6803,263,263,263,263,6806,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,9202,1,1,1,
+ 1,1,1,95,39,39,6456,6900,6788,263,
+ 6788,6862,6426,6423,39,1410,132,963,6900,2235,
+ 4139,261,1,3665,6800,1,1,1,138,6862,
+ 2241,7107,2290,6862,3567,6865,1941,431,6518,6518,
+ 384,318,254,7156,7235,7236,7150,7157,7153,7129,
+ 7155,7154,7151,7152,7130,4112,4085,7399,6862,6803,
+ 6803,263,6803,263,263,263,263,6806,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,9202,1,1,1,1,
+ 1,1,318,6862,6876,6877,6862,2703,263,963,
+ 1321,2235,6862,6876,6877,157,372,117,1904,6862,
+ 572,1,5390,6800,1,1,1,398,6868,2241,
+ 7107,2290,1,3567,3396,3883,6862,6607,6604,7235,
+ 7236,254,7156,7235,7236,7150,7157,7153,7129,7155,
+ 7154,7151,7152,7130,148,6862,7399,6862,6803,6803,
+ 263,6803,263,263,263,263,263,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,9202,1,1,1,1,1,
+ 1,6867,1321,116,6862,3560,577,263,5390,6862,
+ 577,573,5670,1111,1,4322,4421,5819,4139,2829,
+ 1,3434,6800,1,1,1,5142,4702,2241,7107,
+ 2290,6862,3567,7156,7235,7236,7150,7157,7153,7129,
+ 7155,7154,7151,7152,7130,381,39,39,3883,6900,
+ 367,6862,367,4112,4085,7399,6862,6803,6803,263,
+ 6803,263,263,263,263,263,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,9202,1,1,1,1,1,1,
+ 6862,6426,6423,6862,6900,2747,263,6862,156,1,
+ 574,1,5142,4702,6862,1321,6872,4370,6872,1,
+ 224,6800,1,1,1,2761,6862,2241,7107,2290,
+ 6862,3567,7156,7235,7236,7150,7157,7153,7129,7155,
+ 7154,7151,7152,7130,6862,6426,6423,6871,1410,6871,
+ 6471,224,2235,6862,7399,6862,6803,6803,263,6803,
+ 263,263,263,263,263,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,9202,1,1,1,1,1,1,1,
+ 6709,6709,6862,6715,367,263,367,151,399,2617,
+ 6862,10340,10337,3526,3699,1,6862,2895,1,411,
+ 6800,1,1,1,194,6868,2241,7107,2290,394,
+ 3567,6862,1,1,1,1,1,1,1,1,
+ 6862,1,1,1,1,1,1,1,1,1,
+ 1,1,1,7399,1,6514,6510,6776,6661,6862,
+ 6779,347,6664,6872,1604,1,1,1,1,1,
+ 1,399,1,1,1,1,1,1,1,1,
+ 1,1,1,1,37,6718,6718,194,6867,367,
+ 1,6862,6862,7461,6871,4544,399,1,1,1,
+ 6514,6510,672,1410,5578,5501,5601,2235,6862,6474,
+ 6501,6507,6480,6483,6495,6492,6498,6489,6486,6477,
+ 6504,1,6514,6510,653,6661,7255,963,158,2235,
+ 345,1219,3660,5554,5524,5647,5624,6881,5435,6898,
+ 645,1037,6883,972,5785,978,6884,6882,642,6878,
+ 6879,6880,37,6718,6718,6862,120,6862,1528,119,
+ 4550,345,5025,553,6868,39,39,39,6426,6423,
+ 5019,1410,5578,5501,5601,2235,6856,643,7161,7159,
+ 7168,7167,7163,7164,7162,7165,7166,7169,7160,6862,
+ 4638,4611,4740,4638,4611,6862,6747,6744,6862,10340,
+ 10337,5554,5524,5647,5624,6881,5435,1716,645,1037,
+ 6883,972,5785,978,6884,6882,642,6878,6879,6880,
+ 326,967,967,6281,3434,152,1528,6867,6862,6862,
+ 6862,6862,3699,6862,2883,6862,6837,6870,6870,6872,
+ 6869,174,6426,6423,5019,1410,5578,5501,5601,2235,
+ 6898,643,7161,7159,7168,7167,7163,7164,7162,7165,
+ 7166,7169,7160,37,6718,6718,6862,6862,6862,6718,
+ 6871,383,6862,6862,2077,5554,5524,5647,5624,6881,
+ 5435,147,645,1037,6883,972,5785,978,6884,6882,
+ 642,6878,6879,6880,6862,6754,6750,1170,796,7411,
+ 1528,6869,6869,6862,2917,1,4276,39,39,1,
+ 6514,6510,672,1410,5578,5501,5601,2235,1951,6474,
+ 6501,6507,6480,6483,6495,6492,6498,6489,6486,6477,
+ 6504,1321,1,1,406,4139,7340,7354,7300,100,
+ 404,6818,399,5554,5524,5647,5624,6881,5435,6898,
+ 645,1037,6883,972,5785,978,6884,6882,642,6878,
+ 6879,6880,45,6767,6767,1,103,6862,1528,4349,
+ 4112,4085,328,465,6821,39,39,39,6426,6423,
+ 5019,1410,5578,5501,5601,2235,6834,643,7161,7159,
+ 7168,7167,7163,7164,7162,7165,7166,7169,7160,4951,
+ 1,6873,7257,6862,1431,399,3111,6862,584,356,
+ 1481,5554,5524,5647,5624,6881,5435,6764,645,1037,
+ 6883,972,5785,978,6884,6882,642,6878,6879,6880,
+ 399,6027,6862,6747,6744,6862,1528,6862,6869,1,
+ 354,457,3129,6785,2767,99,6837,39,6426,6423,
+ 5019,1410,5578,5501,5601,2235,6834,643,7161,7159,
+ 7168,7167,7163,7164,7162,7165,7166,7169,7160,1321,
+ 6862,11342,8963,1,3313,29,636,477,7362,7368,
+ 7366,5554,5524,5647,5624,6881,5435,6898,645,1037,
+ 6883,972,5785,978,6884,6882,642,6878,6879,6880,
+ 1321,37,6718,6718,491,3030,1528,7360,7361,7391,
+ 7392,3228,7369,6862,1,1,6837,313,3883,6862,
+ 6797,1,575,6868,6610,6898,6862,7371,337,6429,
+ 6862,6432,6862,794,424,3569,3878,7372,7198,1760,
+ 1773,7393,6862,7370,7156,7235,7236,7150,7157,7153,
+ 7129,7155,7154,7151,7152,7130,6898,583,6435,7382,
+ 7381,1,7387,7388,7394,7385,7386,7365,7367,7389,
+ 6862,6809,7363,7364,7390,1321,7375,7376,7377,7373,
+ 7374,7383,7384,7379,7378,7380,6867,6613,6462,1890,
+ 7395,39,6426,6423,5019,1410,5578,5501,5601,2235,
+ 6866,643,7161,7159,7168,7167,7163,7164,7162,7165,
+ 7166,7169,7160,128,6812,48,3575,6862,48,6877,
+ 6862,1,6876,4668,1150,5554,5524,5647,5624,6881,
+ 5435,6809,645,1037,6883,972,5785,978,6884,6882,
+ 642,6878,6879,6880,1,6514,6510,6706,6661,6649,
+ 6667,6652,6664,47,6474,6501,6507,6480,6483,6495,
+ 6492,6498,6489,6486,6477,6504,1,4058,320,6877,
+ 3660,3518,6876,485,6812,591,3575,6631,6646,6643,
+ 6658,6655,6679,6640,6862,6694,6703,6673,6697,6637,
+ 6700,6670,6676,6691,6688,6685,6682,8,29,326,
+ 463,6862,4004,3931,4511,218,6859,6862,1619,6865,
+ 6709,6709,39,6426,6423,5019,1410,5578,5501,5601,
+ 2235,6862,643,7161,7159,7168,7167,7163,7164,7162,
+ 7165,7166,7169,7160,6862,6862,7181,227,591,3519,
+ 127,432,73,6862,739,6862,5554,5524,5647,5624,
+ 6881,5435,1150,645,1037,6883,972,5785,978,6884,
+ 6882,642,6878,6879,6880,6862,6862,9942,718,461,
+ 6859,1528,39,6426,6423,5019,1410,5578,5501,5601,
+ 2235,6862,643,7161,7159,7168,7167,7163,7164,7162,
+ 7165,7166,7169,7160,4058,1150,6791,3309,486,3385,
+ 6862,6862,6862,35,6634,3171,5554,5524,5647,5624,
+ 6881,5435,6850,645,1037,6883,972,5785,978,6884,
+ 6882,642,6878,6879,6880,6862,6853,6862,6150,4004,
+ 3931,6862,1021,39,6426,6423,672,1410,5578,5501,
+ 5601,2235,6862,643,7161,7159,7168,7167,7163,7164,
+ 7162,7165,7166,7169,7160,4139,344,6862,6862,6862,
+ 6248,4794,6304,545,2,4179,2511,5554,5524,5647,
+ 5624,6881,5435,2125,645,1037,6883,972,5785,978,
+ 6884,6882,642,6878,6879,6880,6862,6862,6862,4963,
+ 4112,4085,1528,39,6426,6423,672,1410,5578,5501,
+ 5601,2235,4792,643,7161,7159,7168,7167,7163,7164,
+ 7162,7165,7166,7169,7160,543,6862,6862,37,6862,
+ 5274,6862,6862,6862,2222,6862,6862,5554,5524,5647,
+ 5624,6881,5435,5922,645,1037,6883,972,5785,978,
+ 6884,6882,642,6878,6879,6880,6862,6862,6862,6862,
+ 6862,6862,1528,39,6426,6423,5019,1410,5578,5501,
+ 5601,2235,6862,643,7161,7159,7168,7167,7163,7164,
+ 7162,7165,7166,7169,7160,6862,547,6862,6862,6862,
+ 6862,6862,6862,6862,6862,6274,2125,5554,5524,5647,
+ 5624,6881,5435,4854,645,1037,6883,972,5785,978,
+ 6884,6882,642,6878,6879,6880,6862,6862,6862,6862,
+ 6862,6862,1528,39,6426,6423,5954,1410,5578,5501,
+ 5601,2235,4916,643,7161,7159,7168,7167,7163,7164,
+ 7162,7165,7166,7169,7160,6862,6862,6862,6862,6862,
+ 6862,6862,6862,6862,6862,2983,901,5554,5524,5647,
+ 5624,6881,5435,6862,645,1037,6883,972,5785,978,
+ 6884,6882,642,6878,6879,6880,39,6426,6423,5019,
+ 1410,5578,5501,5601,2235,6862,643,7161,7159,7168,
+ 7167,7163,7164,7162,7165,7166,7169,7160,6862,6862,
+ 6862,6862,6862,6862,6862,6862,6862,6862,6862,6862,
+ 5554,5524,5647,5624,6881,5435,6862,645,1037,6883,
+ 972,5785,978,6884,6882,642,6878,6879,6880,39,
+ 6426,6423,672,1410,5578,5501,5601,2235,6862,643,
+ 7161,7159,7168,7167,7163,7164,7162,7165,7166,7169,
+ 7160,6862,6862,6862,6862,6862,6862,6862,6862,6862,
+ 6862,6862,6862,5554,5524,5647,5624,6881,5435,6862,
+ 645,1037,6883,972,5785,978,6884,6882,642,6878,
+ 6879,6880,39,6426,6423,672,1410,5578,5501,5601,
+ 2235,6862,643,7161,7159,7168,7167,7163,7164,7162,
+ 7165,7166,7169,7160,6862,6862,6862,6862,6862,6862,
+ 6862,6862,6862,6862,6862,6862,5554,5524,5647,5624,
+ 6881,5435,6862,645,1037,6883,972,5785,978,6884,
+ 6882,642,6878,6879,6880,39,6426,6423,5019,1410,
+ 5578,5501,5601,2235,6862,643,7161,7159,7168,7167,
+ 7163,7164,7162,7165,7166,7169,7160,1,6862,6862,
+ 6862,6862,6862,6862,6862,6862,196,6862,6862,5554,
+ 5524,5647,5624,6881,5435,6862,645,1037,6883,972,
+ 5785,978,6884,6882,642,6878,6879,6880,6862,6426,
+ 6423,6862,6900,6862,6862,6862,6862,6862,882,7161,
+ 7159,7168,7167,7163,7164,7162,7165,7166,7169,7160,
+ 7156,7235,7236,7150,7157,7153,7129,7155,7154,7151,
+ 7152,7130,6862,6862,6862,6862,6862,6862,6862,196,
+ 6862,6862,6862,6862,6862,6862,6862,6862,275,6597,
+ 6593,7297,6601,6862,1198,7298,7299,6862,882,6584,
+ 6590,6563,6566,6578,6575,6581,6572,6569,6560,6587,
+ 6539,6533,6530,6557,6536,6548,6527,6542,6545,6554,
+ 6551,6524,6862,6862,6862,6862,6862,6862,6862,6862,
+ 6862,6862,6862,6862,6862,6862,6862,6862,6876,6877,
+ 6862,7297,6862,6862,1198,7298,7299,1571,7161,7159,
+ 7168,7167,7163,7164,7162,7165,7166,7169,7160,7156,
+ 7235,7236,7150,7157,7153,7129,7155,7154,7151,7152,
+ 7130,6862,6862,6862,6862,6862,6862,6862,6862,6862,
+ 6862,6862,6862,6862,6862,6862,275,6727,6724,6862,
+ 7297,6862,6862,1198,7298,7299,1571,6584,6590,6563,
+ 6566,6578,6575,6581,6572,6569,6560,6587,6539,6533,
+ 6530,6557,6536,6548,6527,6542,6545,6554,6551,6524,
+ 6862,6862,6862,29,424,424,6622,424,6622,424,
+ 6622,424,6622,6862,75,6862,6862,704,6862,7297,
+ 6862,6862,1198,7298,7299,424,424,424,424,424,
+ 424,424,424,424,424,424,424,6862,1,6514,
+ 6510,4206,6661,6622,963,1,2235,6610,3883,6862,
+ 6924,6925,6862,6862,377,6862,6862,6429,6862,6862,
+ 6862,6862,6862,6622,32,425,425,6619,425,6619,
+ 425,6619,425,6619,3890,6622,6862,6862,6862,6862,
+ 6862,6862,6862,6862,6862,6862,425,425,425,425,
+ 425,425,425,425,425,425,425,425,1321,6862,
+ 6862,6862,6862,6862,6619,1321,6862,6862,6862,377,
+ 6613,6862,6862,377,6862,6862,6862,377,6862,6862,
+ 6862,6862,6862,6862,6619,6862,571,6862,6862,6862,
+ 6862,1060,6862,2552,6862,6862,6619,7161,7159,7168,
+ 7167,7163,7164,7162,7165,7166,7169,7160,7156,7235,
+ 7236,7150,7157,7153,7129,7155,7154,7151,7152,7130,
+ 37,6876,6876,6876,6876,6876,6862,6876,6862,6862,
+ 6862,6862,6862,6862,6862,6862,6862,6862,6862,6862,
+ 6862,6862,6876,6876,6876,6876,6876,6876,6876,6876,
+ 6876,6876,6876,6876,6862,6862,6862,6862,6862,6862,
+ 6862,6862,6862,6862,6862,6862,6862,6862,6862,6862,
+ 6862,6862,6862,6862,6862,6862,6862,6862,6862,6862,
+ 6876,6862,6862,6862,6876,6862,6862,6862,6876
};
};
public final static char termAction[] = TermAction.termAction;
@@ -1810,61 +2195,67 @@ public class CPPExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, CP
public interface Asb {
public final static char asb[] = {0,
- 745,7,540,1,786,875,875,875,875,1050,
- 786,811,811,634,811,88,524,90,541,541,
- 541,541,541,541,541,541,541,813,819,824,
- 821,828,826,833,831,835,834,836,231,837,
- 540,524,674,674,674,674,579,927,291,291,
- 808,674,182,139,811,811,291,579,139,139,
- 130,524,885,673,1106,1052,987,524,811,813,
- 627,627,927,540,541,541,541,541,541,541,
- 541,541,541,541,541,541,541,541,541,541,
- 541,541,541,540,540,540,540,540,540,540,
- 540,540,540,540,540,541,139,139,801,801,
- 801,801,395,139,291,291,1048,976,987,288,
- 987,283,987,485,987,971,1050,579,182,182,
- 291,875,541,1048,142,11,477,476,433,994,
- 994,1050,90,182,673,540,577,1105,139,576,
- 578,576,139,182,821,821,819,819,819,826,
- 826,826,826,824,824,831,828,828,834,833,
- 835,1064,836,786,786,786,786,579,579,801,
- 800,801,808,579,280,350,285,394,286,1050,
- 579,579,395,801,130,182,852,139,13,15,
- 579,1106,541,674,817,95,139,1052,579,579,
- 578,1106,540,540,540,540,540,786,786,524,
- 281,806,804,350,579,708,418,706,395,288,
- 399,579,395,579,139,481,469,480,15,395,
- 577,139,817,1048,1105,1052,579,577,139,139,
- 139,139,927,927,281,804,402,579,350,1064,
- 286,875,397,343,1054,350,708,707,708,708,
- 395,399,399,579,579,423,540,478,478,405,
- 405,579,9,1048,712,139,579,817,818,817,
- 540,95,348,813,1052,139,139,804,804,1106,
- 288,288,801,875,576,491,1056,573,786,708,
- 708,708,708,579,399,401,861,401,423,540,
- 540,15,579,1106,139,13,469,423,1029,817,
- 927,541,182,348,804,803,577,588,288,186,
- 366,577,708,708,573,857,541,1064,413,868,
- 579,1048,708,708,1112,401,402,541,579,795,
- 15,423,818,139,182,804,858,588,588,969,
- 1066,272,786,286,223,366,577,708,288,1050,
- 1056,541,541,1105,573,877,701,1113,579,402,
- 795,139,795,402,588,588,185,272,969,881,
- 1050,800,875,582,582,858,288,504,877,579,
- 786,1112,579,1050,1050,579,786,788,795,402,
- 186,588,858,412,857,139,1050,579,366,186,
- 366,799,799,866,505,1050,579,927,579,579,
- 579,16,788,588,540,51,573,858,579,579,
- 366,674,674,866,504,1064,541,1064,858,503,
- 786,786,786,505,786,579,239,858,858,579,
- 288,139,579,579,138,790,402,139,402,288,
- 579,858,800,496,786,496,505,1064,505,524,
- 524,522,503,524,858,858,416,502,674,790,
- 402,51,858,48,712,505,139,573,139,522,
- 272,786,139,866,51,582,139,139,1042,505,
- 416,505,858,272,540,505,502,401,799,288,
- 288,1044,540,503,927,858,139,856,50,576,
- 505,139,858,856,856,505
+ 790,15,671,9,831,880,880,880,880,536,
+ 831,562,562,468,562,262,655,264,672,672,
+ 672,672,672,672,672,672,672,564,570,575,
+ 572,579,577,584,582,586,585,587,331,588,
+ 671,655,192,192,192,192,710,17,165,165,
+ 559,192,328,105,562,562,165,710,105,105,
+ 96,655,947,191,1124,538,1005,655,562,564,
+ 763,763,17,671,672,672,672,672,672,672,
+ 672,672,672,672,672,672,672,672,672,672,
+ 672,672,672,671,671,671,671,671,671,671,
+ 671,671,671,671,671,672,105,105,1070,1070,
+ 1070,1070,1126,105,165,165,534,994,1005,6,
+ 1005,1,1005,282,1005,989,536,710,328,328,
+ 165,880,672,534,288,908,898,897,432,1012,
+ 1012,536,264,328,191,671,708,1123,105,707,
+ 709,707,105,328,572,572,570,570,570,577,
+ 577,577,577,575,575,582,579,579,585,584,
+ 586,1082,587,831,831,831,831,710,710,1070,
+ 193,530,655,1047,1045,1052,1050,1054,1053,1055,
+ 1056,1069,1070,559,710,380,383,3,765,4,
+ 536,710,710,1126,1070,96,328,603,105,910,
+ 912,710,1124,672,192,568,61,105,538,710,
+ 710,709,1124,671,671,671,671,671,831,831,
+ 507,518,518,518,518,502,536,713,672,672,
+ 672,672,672,672,672,672,672,671,671,671,
+ 671,671,671,671,671,671,671,671,671,672,
+ 655,381,557,555,383,710,720,160,718,1126,
+ 6,540,710,1126,710,105,902,890,901,912,
+ 1126,708,105,568,534,1123,538,710,708,105,
+ 105,105,105,17,17,710,672,1045,1045,1045,
+ 1050,1047,1047,1053,1052,1054,1082,1055,381,555,
+ 543,710,383,1082,4,880,1128,147,1072,383,
+ 720,719,720,720,1126,540,540,710,710,612,
+ 671,899,899,269,269,710,906,534,840,105,
+ 710,568,569,568,671,61,152,564,538,105,
+ 105,1126,785,671,555,555,1124,6,6,1070,
+ 880,707,622,1074,704,831,720,720,720,720,
+ 710,540,542,835,542,612,671,671,912,710,
+ 1124,105,910,890,612,443,568,17,672,328,
+ 152,710,555,554,708,724,6,109,399,708,
+ 720,720,704,608,672,1082,277,873,710,534,
+ 720,720,546,542,543,672,710,777,912,612,
+ 569,105,328,555,609,724,724,59,1084,372,
+ 831,4,146,399,708,720,6,536,1074,672,
+ 672,1123,704,882,427,547,710,543,777,105,
+ 777,543,724,724,108,372,59,886,536,1069,
+ 880,154,154,609,6,635,882,710,831,546,
+ 710,536,536,710,831,770,777,543,109,724,
+ 609,276,608,105,536,710,399,109,399,1068,
+ 1068,833,636,536,710,17,710,710,710,913,
+ 770,724,671,225,704,609,710,710,399,192,
+ 192,833,635,1082,672,1082,609,634,831,831,
+ 831,636,831,710,339,609,609,710,6,105,
+ 710,710,104,772,543,105,543,6,710,609,
+ 1069,627,831,627,636,1082,636,655,655,653,
+ 634,655,609,609,783,633,192,772,543,225,
+ 609,222,840,636,105,704,105,653,372,831,
+ 105,833,225,154,105,105,456,636,783,636,
+ 609,372,671,636,633,542,1068,6,6,979,
+ 671,634,17,609,105,607,224,707,636,105,
+ 609,607,607,636
};
};
public final static char asb[] = Asb.asb;
@@ -1872,118 +2263,119 @@ public class CPPExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, CP
public interface Asr {
public final static byte asr[] = {0,
- 8,72,118,73,27,69,120,0,5,7,
- 3,63,6,9,90,28,11,12,23,13,
- 56,29,30,14,31,32,15,16,33,34,
- 17,18,35,57,36,10,58,19,22,20,
- 24,21,1,2,4,73,8,40,0,71,
- 60,37,38,9,6,25,26,41,46,3,
- 4,52,53,54,39,50,44,49,12,21,
- 11,17,15,16,18,19,14,13,20,10,
- 43,47,45,42,51,67,8,7,5,1,
- 2,66,65,0,91,89,25,26,92,93,
- 87,88,55,94,95,96,97,98,99,100,
- 101,107,72,90,70,108,109,110,111,112,
- 113,114,115,116,117,118,71,27,120,68,
- 1,2,9,6,4,3,63,69,73,8,
- 0,65,66,3,10,43,47,45,42,51,
- 12,21,11,17,15,16,18,19,14,13,
- 20,52,53,54,39,50,44,49,5,7,
- 4,37,38,9,6,25,26,41,46,1,
- 2,118,8,0,67,40,23,13,56,29,
- 14,31,32,15,16,33,34,17,18,35,
- 57,36,58,19,22,20,24,21,12,11,
- 28,8,3,9,6,27,62,64,86,30,
- 61,48,7,1,2,5,4,10,59,0,
- 68,72,90,69,118,73,71,120,11,12,
- 42,65,13,43,44,14,15,16,66,45,
- 17,18,46,47,49,60,50,51,10,19,
- 20,21,52,53,54,39,37,38,25,26,
- 41,8,27,5,7,1,2,4,3,9,
- 6,0,48,4,72,1,2,67,8,0,
- 28,11,12,40,23,42,65,13,43,56,
- 29,30,44,14,31,32,15,16,33,66,
- 34,45,17,18,46,35,47,57,49,60,
- 50,36,51,58,19,22,20,24,21,52,
- 53,54,39,3,37,38,9,6,25,26,
- 41,68,7,1,2,4,10,5,0,86,
- 59,7,103,104,105,62,8,3,9,6,
- 5,72,71,27,61,28,11,12,40,23,
- 13,56,29,30,14,31,32,15,16,33,
- 34,17,18,35,57,36,10,58,19,22,
- 20,24,21,4,1,2,48,0,1,2,
- 69,71,8,0,74,68,72,90,73,67,
- 63,3,8,69,27,70,0,4,8,72,
- 67,0,23,60,24,8,68,90,70,69,
- 73,0,28,11,12,23,13,29,30,14,
- 31,32,15,16,33,7,34,17,18,35,
- 36,19,22,20,24,21,1,2,8,63,
- 9,6,5,4,73,27,3,0,9,6,
- 7,5,4,1,2,3,63,68,70,69,
- 8,73,90,0,4,8,67,1,2,0,
- 8,72,67,74,0,86,103,104,105,48,
- 72,102,121,71,61,74,62,59,64,76,
- 78,84,82,75,80,81,83,85,67,77,
- 79,27,8,28,40,23,56,29,30,31,
- 32,33,34,35,57,36,58,22,24,60,
- 65,66,10,43,47,45,42,51,12,21,
- 11,17,15,16,18,19,14,13,20,52,
- 53,54,39,50,44,49,37,38,25,26,
- 41,46,9,6,3,4,7,5,1,2,
- 0,68,70,69,1,2,0,64,28,11,
- 12,40,23,13,56,29,86,30,14,31,
- 32,15,16,33,59,34,17,18,35,57,
- 36,10,58,19,62,22,20,24,21,8,
- 3,9,6,71,27,61,7,4,48,5,
- 1,2,0,66,65,25,26,6,92,93,
- 98,9,99,5,41,70,55,68,111,112,
- 108,109,110,116,115,117,88,87,113,114,
- 96,97,94,95,100,101,37,38,69,89,
- 106,63,3,28,11,12,40,23,13,56,
- 29,30,14,31,32,15,16,33,34,17,
- 18,35,57,36,10,58,19,20,24,21,
- 1,2,4,22,0,4,55,8,72,67,
- 0,28,11,12,40,23,13,56,29,30,
- 14,31,32,15,16,33,34,17,18,35,
- 57,36,10,58,19,22,20,24,21,1,
- 2,4,90,0,11,12,42,65,13,43,
- 44,14,15,16,66,7,45,17,18,46,
- 47,49,60,50,51,10,19,20,21,52,
- 53,54,39,1,2,37,38,9,6,25,
- 26,5,41,4,61,3,0,23,24,74,
- 3,72,27,67,60,8,90,73,70,69,
- 68,0,60,23,24,7,5,1,2,4,
- 74,67,119,106,37,38,63,3,91,89,
- 6,92,93,25,26,88,87,55,94,95,
- 96,97,9,98,99,100,68,90,73,120,
- 70,108,109,110,111,112,113,114,115,116,
- 117,72,118,101,107,71,69,27,8,0,
- 8,69,71,70,0,102,0,72,8,63,
- 3,70,69,27,55,0,8,67,69,0,
- 8,67,70,0,65,66,37,38,9,6,
- 25,26,5,41,46,3,4,7,52,53,
- 54,39,50,44,49,12,21,11,17,15,
- 16,18,19,14,13,20,10,43,47,45,
- 42,51,63,1,2,0,8,73,11,12,
- 42,65,13,43,44,14,15,16,66,7,
- 45,17,18,46,47,49,60,50,51,10,
- 19,20,21,52,53,54,1,2,3,37,
- 38,9,6,25,26,5,41,4,39,0,
- 10,56,40,57,58,12,21,11,17,15,
- 16,18,19,14,13,20,74,72,90,118,
- 71,67,120,119,91,106,89,37,38,25,
- 26,92,93,87,88,55,68,94,95,96,
- 97,98,99,100,101,107,70,108,109,110,
- 111,112,113,114,115,116,117,69,28,23,
- 29,30,31,32,33,34,35,36,22,24,
- 27,8,73,3,63,7,5,9,6,1,
- 2,4,0,27,8,3,7,5,9,6,
- 4,1,2,72,0,40,23,13,56,29,
- 14,31,32,15,16,33,34,17,18,35,
- 57,36,10,58,19,22,20,24,21,12,
- 11,28,8,3,9,27,62,59,64,86,
- 30,61,55,4,6,7,1,2,5,48,
- 0,22,1,2,4,103,104,105,0
+ 55,4,71,1,2,69,9,0,9,71,
+ 118,72,40,68,120,0,9,72,11,12,
+ 41,66,13,42,43,14,15,16,67,8,
+ 44,17,18,45,46,47,59,48,49,10,
+ 19,20,21,50,51,52,1,2,3,36,
+ 37,7,5,34,35,6,39,4,38,0,
+ 98,91,34,35,99,100,86,87,54,89,
+ 90,92,93,94,95,96,101,102,71,97,
+ 70,103,104,105,106,107,108,109,110,111,
+ 112,118,73,40,120,64,1,2,7,5,
+ 4,3,60,68,72,9,0,69,53,23,
+ 13,56,26,14,28,29,15,16,30,31,
+ 17,18,32,57,33,58,19,22,20,24,
+ 21,12,11,25,9,3,7,5,40,63,
+ 65,88,27,62,55,61,8,1,2,4,
+ 10,6,0,64,70,68,1,2,0,4,
+ 9,71,69,0,41,66,42,43,67,8,
+ 44,45,46,47,59,48,49,50,51,52,
+ 38,36,37,7,5,34,35,6,39,64,
+ 3,4,10,1,2,56,57,58,12,21,
+ 11,17,15,16,18,19,14,13,20,25,
+ 31,32,27,30,29,22,26,23,24,28,
+ 33,53,0,73,59,36,37,7,5,34,
+ 35,39,45,3,4,50,51,52,38,48,
+ 43,47,12,21,11,17,15,16,18,19,
+ 14,13,20,10,42,46,44,41,49,69,
+ 9,8,6,1,2,67,66,0,74,64,
+ 71,97,72,69,60,3,9,68,40,70,
+ 0,4,9,69,1,2,0,66,67,3,
+ 10,42,46,44,41,49,12,21,11,17,
+ 15,16,18,19,14,13,20,50,51,52,
+ 38,48,43,47,6,8,4,36,37,7,
+ 5,34,35,39,45,1,2,118,9,0,
+ 64,71,97,68,118,72,73,120,11,12,
+ 41,66,13,42,43,14,15,16,67,44,
+ 17,18,45,46,47,59,48,49,10,19,
+ 20,21,50,51,52,38,36,37,34,35,
+ 39,9,40,6,8,1,2,4,3,7,
+ 5,0,88,61,8,114,115,116,63,9,
+ 3,7,5,6,71,73,40,62,25,11,
+ 12,53,23,13,56,26,27,14,28,29,
+ 15,16,30,31,17,18,32,57,55,33,
+ 10,58,19,20,24,21,1,2,4,22,
+ 0,11,12,13,14,15,16,17,18,19,
+ 20,21,25,23,26,27,28,29,30,31,
+ 32,33,22,24,40,9,72,8,1,2,
+ 60,3,7,5,6,4,0,67,66,34,
+ 35,99,100,94,95,6,39,70,54,106,
+ 107,103,104,105,111,110,112,87,86,108,
+ 109,92,93,89,90,96,101,36,37,91,
+ 117,10,56,53,57,58,12,21,11,17,
+ 15,16,18,19,14,13,20,25,31,32,
+ 27,30,29,22,26,23,24,28,33,64,
+ 68,3,60,7,5,1,2,4,0,1,
+ 2,68,73,9,0,22,1,2,4,114,
+ 115,116,0,59,23,24,8,6,1,2,
+ 4,74,69,119,117,36,37,60,3,98,
+ 91,5,99,100,34,35,87,86,54,89,
+ 90,92,93,7,94,95,96,64,97,72,
+ 120,70,103,104,105,106,107,108,109,110,
+ 111,112,71,118,101,102,73,68,40,9,
+ 0,23,59,24,9,64,97,70,68,72,
+ 0,9,71,69,74,0,88,114,115,116,
+ 55,71,113,121,73,62,74,63,61,65,
+ 76,78,84,82,75,80,81,83,85,69,
+ 77,79,40,9,25,53,23,56,26,27,
+ 28,29,30,31,32,57,33,58,22,24,
+ 59,66,67,10,42,46,44,41,49,12,
+ 21,11,17,15,16,18,19,14,13,20,
+ 50,51,52,38,48,43,47,36,37,34,
+ 35,39,45,7,5,3,4,8,6,1,
+ 2,0,54,64,89,90,0,4,54,9,
+ 71,69,0,65,25,11,12,53,23,13,
+ 56,26,88,27,14,28,29,15,16,30,
+ 61,31,17,18,32,57,33,10,58,19,
+ 63,22,20,24,21,9,3,7,5,73,
+ 40,62,8,6,55,1,2,4,0,23,
+ 24,74,3,71,40,69,59,9,64,97,
+ 68,72,70,0,72,9,87,86,0,11,
+ 12,41,66,13,42,43,14,15,16,67,
+ 8,44,17,18,45,46,47,59,48,49,
+ 10,19,20,21,50,51,52,38,1,2,
+ 36,37,7,5,34,35,6,39,4,62,
+ 3,0,113,0,9,68,73,70,0,25,
+ 11,12,53,23,13,56,26,27,14,28,
+ 29,15,16,30,31,17,18,32,57,33,
+ 10,58,19,22,20,24,21,1,2,4,
+ 97,0,71,9,60,3,70,68,40,54,
+ 0,9,69,68,0,9,69,70,0,7,
+ 5,8,6,4,1,2,3,60,64,70,
+ 68,9,72,97,0,6,8,3,60,5,
+ 7,97,25,11,12,53,23,13,56,26,
+ 27,14,28,29,15,16,30,31,17,18,
+ 32,57,33,10,58,19,22,20,24,21,
+ 1,2,4,72,9,0,66,67,36,37,
+ 34,35,39,45,50,51,52,38,48,43,
+ 47,12,21,11,17,15,16,18,19,14,
+ 13,20,10,42,46,44,41,49,7,5,
+ 3,60,8,6,4,1,2,0,10,56,
+ 53,57,58,12,21,11,17,15,16,18,
+ 19,14,13,20,74,71,97,118,73,69,
+ 120,8,31,32,33,22,24,1,2,30,
+ 29,28,27,26,6,4,23,25,119,98,
+ 117,91,36,37,34,35,99,100,9,60,
+ 3,5,72,40,87,86,54,89,90,92,
+ 93,7,94,95,96,101,102,103,104,105,
+ 106,107,108,109,110,111,112,70,68,64,
+ 0,40,9,3,8,6,7,5,4,1,
+ 2,71,0,53,23,13,56,26,14,28,
+ 29,15,16,30,31,17,18,32,57,33,
+ 10,58,19,22,20,24,21,12,11,25,
+ 9,3,7,40,63,61,65,88,27,62,
+ 54,4,5,8,6,1,2,55,0
};
};
public final static byte asr[] = Asr.asr;
@@ -1991,61 +2383,67 @@ public class CPPExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, CP
public interface Nasb {
public final static char nasb[] = {0,
- 208,12,75,12,12,12,12,12,12,79,
- 12,12,12,193,12,181,185,110,75,75,
- 216,75,75,75,75,75,75,12,12,12,
- 12,12,12,12,12,12,12,12,75,12,
- 75,185,48,48,48,48,110,230,29,29,
- 67,5,93,33,12,12,29,220,33,33,
- 204,1,75,38,141,12,12,185,12,12,
- 53,53,230,155,75,75,75,75,75,75,
- 75,75,75,75,75,75,75,75,75,75,
- 75,75,75,75,75,75,75,75,75,75,
- 75,75,75,75,155,75,33,33,12,12,
- 12,12,35,33,43,43,135,239,240,166,
- 240,115,240,127,240,233,10,110,93,93,
- 43,12,75,135,88,203,81,81,12,12,
- 12,10,110,93,48,158,181,63,33,180,
- 110,180,33,93,12,12,12,12,12,12,
+ 160,12,82,12,12,12,12,12,12,86,
+ 12,12,12,125,12,238,26,157,82,82,
+ 257,82,82,82,82,82,82,12,12,12,
+ 12,12,12,12,12,12,12,12,82,12,
+ 82,26,218,218,218,218,157,16,180,180,
+ 93,5,108,230,12,12,180,261,230,230,
+ 164,1,82,77,53,12,12,26,12,12,
+ 68,68,16,27,82,82,82,82,82,82,
+ 82,82,82,82,82,82,82,82,82,82,
+ 82,82,82,82,82,82,82,82,82,82,
+ 82,82,82,82,27,82,230,230,12,12,
+ 12,12,120,230,43,43,187,275,276,226,
+ 276,13,276,88,276,269,10,157,108,108,
+ 43,12,82,187,103,163,19,19,12,12,
+ 12,10,157,108,218,113,238,99,230,237,
+ 157,237,230,108,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,
- 12,12,12,12,12,12,12,190,11,12,
- 12,12,267,110,12,29,189,79,40,79,
- 110,11,12,12,265,93,12,33,250,29,
- 110,141,75,48,29,83,33,12,11,110,
- 147,141,75,155,155,155,155,12,12,43,
- 137,137,137,271,190,102,102,12,200,166,
- 29,200,140,190,33,12,22,12,253,139,
- 190,33,19,267,63,12,220,190,33,33,
- 33,33,230,230,12,29,17,110,145,12,
- 168,12,12,51,242,271,102,102,29,29,
- 140,29,221,11,190,29,75,12,12,81,
- 81,110,21,135,253,33,190,29,61,12,
- 155,267,148,12,12,33,33,137,108,141,
- 166,198,12,12,79,29,130,24,12,29,
- 29,150,150,190,221,106,12,12,108,75,
- 75,29,11,141,33,250,175,29,12,19,
- 230,75,93,148,29,108,181,29,166,211,
- 29,200,29,113,177,145,75,12,59,12,
- 110,135,150,150,256,106,17,75,221,29,
- 253,108,61,33,93,108,145,225,29,12,
- 211,243,12,197,51,253,181,113,118,123,
- 24,75,75,13,177,12,79,121,200,17,
- 86,33,29,17,211,225,165,130,12,12,
- 79,12,12,173,173,145,118,16,12,200,
- 12,98,200,79,79,11,12,29,86,17,
- 211,29,145,70,12,33,79,200,253,211,
- 29,12,12,29,152,123,11,230,11,200,
- 200,31,108,225,158,73,24,145,200,169,
- 253,48,48,104,161,12,75,12,145,12,
- 12,12,12,162,12,221,143,145,145,221,
- 95,33,11,11,33,29,17,33,29,166,
- 169,145,12,171,12,12,162,12,162,282,
- 282,260,12,282,145,145,12,29,48,86,
- 17,29,145,12,48,162,33,24,33,278,
- 29,12,33,104,73,173,33,33,29,162,
- 12,162,145,24,155,162,171,17,12,95,
- 95,22,75,12,286,145,33,223,72,180,
- 162,33,145,223,12,162
+ 12,12,12,12,12,12,12,192,11,12,
+ 250,164,21,12,12,12,12,12,12,12,
+ 12,12,12,197,157,12,180,191,86,96,
+ 86,157,11,12,12,195,108,12,230,303,
+ 180,157,53,82,218,180,34,230,12,11,
+ 157,110,53,82,27,27,27,27,12,12,
+ 275,276,276,276,276,286,10,12,82,82,
+ 82,82,82,82,82,82,82,82,82,82,
+ 82,82,82,82,82,82,82,82,27,82,
+ 43,189,189,189,204,192,41,41,12,242,
+ 226,180,242,52,192,230,12,173,12,306,
+ 51,192,230,91,197,99,12,261,192,230,
+ 230,230,230,16,16,157,82,12,12,12,
+ 12,12,12,12,12,12,12,12,12,180,
+ 145,157,170,12,74,12,12,116,278,204,
+ 41,41,180,180,52,180,262,11,192,180,
+ 82,12,12,19,19,157,172,187,306,230,
+ 192,180,59,12,27,197,111,12,12,230,
+ 230,52,230,82,189,137,53,226,130,12,
+ 12,86,180,182,175,12,180,180,57,57,
+ 192,262,55,12,12,137,82,82,180,11,
+ 53,230,303,232,180,12,91,16,82,108,
+ 111,192,180,137,238,180,226,294,180,242,
+ 180,123,234,170,82,12,66,12,157,187,
+ 57,57,151,55,145,82,262,180,306,137,
+ 59,230,108,137,170,264,180,12,294,279,
+ 12,129,116,306,238,123,132,37,175,82,
+ 82,139,234,12,86,142,242,145,118,230,
+ 180,145,294,264,225,182,12,12,86,12,
+ 12,61,61,170,132,144,12,242,12,30,
+ 242,86,86,11,12,180,118,145,294,180,
+ 170,135,12,230,86,242,306,294,180,12,
+ 12,180,211,37,11,16,11,242,242,228,
+ 137,264,113,80,175,170,242,75,306,218,
+ 218,149,221,12,82,12,170,12,12,12,
+ 12,222,12,262,168,170,170,262,63,230,
+ 11,11,230,180,145,230,180,226,75,170,
+ 12,155,12,12,222,12,222,299,299,245,
+ 12,299,170,170,12,180,218,118,145,180,
+ 170,12,218,222,230,175,230,217,180,12,
+ 230,149,80,61,230,230,180,222,12,222,
+ 170,175,27,222,155,145,12,63,63,173,
+ 82,12,201,170,230,147,79,237,222,230,
+ 170,147,12,222
};
};
public final static char nasb[] = Nasb.nasb;
@@ -2053,35 +2451,37 @@ public class CPPExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, CP
public interface Nasr {
public final static char nasr[] = {0,
- 3,13,10,9,153,151,120,150,149,5,
- 2,0,66,50,0,4,68,0,144,0,
- 33,94,93,65,5,2,9,10,4,0,
- 46,4,33,0,137,66,0,177,0,43,
- 1,0,5,10,9,2,13,4,46,0,
- 158,0,5,2,9,10,140,0,193,0,
- 142,0,66,139,138,0,4,197,0,186,
- 0,68,130,43,10,9,2,13,5,0,
- 76,0,4,179,0,126,0,13,2,9,
- 10,5,82,0,43,57,0,5,101,170,
- 0,108,0,163,0,155,0,63,0,2,
- 45,0,161,0,154,190,0,43,162,0,
- 195,0,174,5,173,0,154,185,0,4,
- 10,9,2,65,5,89,50,0,137,2,
- 66,0,4,40,39,0,2,114,0,109,
- 0,49,43,181,4,40,0,4,30,0,
- 68,40,49,69,4,43,0,122,103,0,
- 112,0,107,0,94,93,50,65,59,5,
- 10,9,2,0,4,46,40,0,45,2,
- 3,0,4,46,198,0,1,122,0,2,
- 58,0,33,93,94,4,0,4,176,0,
- 4,49,81,83,0,5,10,9,13,3,
- 1,0,164,0,115,4,49,81,0,4,
- 96,0,2,5,120,116,117,118,13,86,
- 0,39,5,2,9,10,4,160,0,50,
- 5,89,23,4,0,5,101,194,0,40,
- 4,23,183,0,94,93,50,5,59,0,
- 4,49,81,101,47,5,0,46,4,182,
- 0,4,46,102,0,4,180,0
+ 3,13,10,9,137,136,113,135,134,4,
+ 2,0,166,205,0,5,105,0,80,0,
+ 13,2,9,10,4,52,5,36,0,4,
+ 115,182,0,5,194,0,186,4,185,0,
+ 122,0,4,10,9,2,13,127,5,0,
+ 154,2,75,0,167,0,123,0,159,0,
+ 121,0,42,66,0,208,0,4,2,9,
+ 10,157,0,140,117,0,192,0,81,148,
+ 42,10,9,2,13,4,0,166,200,0,
+ 161,0,5,212,0,42,1,0,75,156,
+ 155,0,13,2,9,10,4,94,0,2,
+ 131,0,5,28,0,170,0,144,0,154,
+ 75,0,173,0,5,52,213,0,1,140,
+ 0,42,174,0,201,0,51,0,75,54,
+ 0,210,0,5,81,0,176,0,175,0,
+ 4,115,209,0,129,0,2,44,0,5,
+ 191,0,30,100,101,5,0,5,36,39,
+ 0,30,101,100,78,4,2,9,10,5,
+ 0,5,10,9,2,78,4,98,54,0,
+ 44,2,3,0,101,100,54,4,68,0,
+ 5,195,0,5,50,93,115,48,4,0,
+ 5,50,42,36,196,0,197,5,52,0,
+ 81,36,50,82,5,42,0,52,5,30,
+ 0,101,100,54,78,68,4,10,9,2,
+ 0,2,67,0,36,5,27,198,0,137,
+ 214,136,113,135,134,0,4,10,9,13,
+ 3,1,0,132,5,50,93,0,2,4,
+ 113,110,111,112,13,69,0,39,4,2,
+ 9,10,5,172,0,113,69,13,110,111,
+ 112,190,0,5,50,93,95,0,5,52,
+ 116,0,54,4,98,27,5,0
};
};
public final static char nasr[] = Nasr.nasr;
@@ -2089,18 +2489,18 @@ public class CPPExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, CP
public interface TerminalIndex {
public final static char terminalIndex[] = {0,
- 113,114,2,31,13,10,79,115,9,100,
+ 113,114,2,31,10,13,9,79,115,100,
48,52,60,68,74,75,86,87,102,105,
- 107,104,54,106,11,12,120,47,64,66,
- 70,73,76,83,89,98,7,8,112,53,
- 14,55,61,67,84,88,90,93,94,97,
- 99,109,110,111,19,63,91,101,77,95,
- 122,103,1,46,58,78,121,20,44,33,
- 119,30,118,96,108,49,50,56,57,59,
- 69,71,72,85,92,65,17,18,6,32,
- 4,15,16,21,22,23,24,25,26,27,
- 28,51,80,81,82,5,29,34,35,36,
- 37,38,39,40,41,42,43,117,3,123,
+ 107,104,54,106,47,64,66,70,73,76,
+ 83,89,98,11,12,7,8,112,14,120,
+ 55,61,67,84,88,90,94,97,99,109,
+ 110,111,53,19,93,63,91,101,95,1,
+ 77,122,103,20,46,58,78,44,121,33,
+ 30,118,119,96,108,49,50,56,57,59,
+ 69,71,72,85,92,17,18,65,21,22,
+ 6,23,24,25,26,27,32,4,15,16,
+ 28,29,34,35,36,37,38,39,40,41,
+ 42,43,51,80,81,82,5,117,3,123,
62,116
};
};
@@ -2109,27 +2509,29 @@ public class CPPExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, CP
public interface NonterminalIndex {
public final static char nonterminalIndex[] = {0,
- 130,135,136,0,0,134,0,0,229,235,
+ 130,135,136,0,0,134,0,0,237,243,
133,0,143,0,132,0,0,142,148,0,
- 0,149,180,158,159,160,161,162,163,151,
- 164,165,126,166,141,167,168,0,128,131,
- 169,0,129,138,137,152,177,0,0,0,
- 0,0,0,0,0,145,172,0,155,0,
- 204,0,187,201,205,0,0,127,171,0,
- 0,0,0,0,0,206,175,0,0,0,
- 0,125,178,0,0,186,0,0,202,212,
- 157,208,209,210,0,0,146,0,0,207,
- 220,174,196,0,0,211,0,0,0,0,
- 240,241,0,147,179,189,190,191,192,193,
- 195,0,198,0,199,0,214,217,0,0,
- 219,0,238,0,239,0,0,139,140,144,
- 0,0,154,156,0,170,0,181,182,183,
- 184,185,188,0,0,0,194,0,197,203,
- 0,215,216,0,0,221,224,0,226,228,
- 0,232,233,234,237,124,0,150,153,0,
- 173,0,176,0,0,200,213,218,0,0,
- 222,223,225,227,0,230,231,236,242,243,
- 0,0,0,0
+ 0,149,158,159,160,161,188,151,0,126,
+ 162,141,163,164,165,131,166,167,128,168,
+ 0,129,138,137,170,169,171,185,0,0,
+ 195,152,172,0,173,0,0,0,0,0,
+ 174,175,176,0,177,180,0,155,194,0,
+ 0,0,212,0,0,145,209,213,0,214,
+ 127,179,0,0,0,0,0,0,183,0,
+ 0,0,0,125,186,0,0,210,216,217,
+ 218,0,220,157,0,146,0,0,215,197,
+ 198,199,201,227,228,182,204,0,0,219,
+ 0,0,0,0,248,0,251,0,252,0,
+ 147,187,189,190,191,192,196,200,203,0,
+ 206,0,207,0,222,225,0,0,0,246,
+ 0,247,0,0,139,140,144,0,0,154,
+ 156,0,178,0,193,0,0,0,202,0,
+ 205,211,0,223,224,0,0,229,232,0,
+ 234,236,0,240,241,242,245,0,0,249,
+ 124,0,150,153,0,181,0,184,0,0,
+ 208,221,226,0,0,230,231,233,235,0,
+ 238,239,244,250,253,254,0,0,0,0,
+ 0,0,0,0,0
};
};
public final static char nonterminalIndex[] = NonterminalIndex.nonterminalIndex;
@@ -2137,18 +2539,19 @@ public class CPPExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, CP
public interface ScopePrefix {
public final static char scopePrefix[] = {
- 159,311,589,608,304,319,540,556,567,578,
- 372,267,281,298,333,42,292,392,430,167,
- 597,483,20,51,71,80,85,90,130,195,
- 326,341,346,144,273,287,511,27,144,382,
- 346,616,27,217,246,1,14,61,76,106,
- 351,361,365,448,476,505,532,536,626,630,
- 634,97,7,97,410,426,439,460,524,116,
- 116,232,439,547,563,574,585,207,494,56,
- 56,156,222,225,56,241,262,225,225,56,
- 369,473,480,156,56,649,110,355,414,454,
- 467,56,355,401,177,104,452,638,645,638,
- 645,65,420,137,104,104,251
+ 172,324,608,627,317,332,559,575,586,597,
+ 372,280,294,311,344,55,305,392,430,180,
+ 616,502,20,33,64,84,93,98,103,143,
+ 208,339,350,20,467,157,286,300,530,40,
+ 157,382,20,635,40,230,259,1,14,27,
+ 74,89,119,27,361,365,448,495,524,551,
+ 555,645,649,653,110,7,110,410,426,439,
+ 460,479,543,129,129,245,439,566,582,593,
+ 604,220,513,69,69,169,235,238,69,254,
+ 275,238,238,69,369,492,499,169,69,668,
+ 123,355,414,454,486,472,69,355,401,190,
+ 117,452,657,664,657,664,78,420,150,117,
+ 117,264
};
};
public final static char scopePrefix[] = ScopePrefix.scopePrefix;
@@ -2156,18 +2559,19 @@ public class CPPExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, CP
public interface ScopeSuffix {
public final static char scopeSuffix[] = {
- 18,135,5,5,135,135,5,5,5,5,
- 379,135,95,135,339,48,278,398,436,173,
- 67,489,25,25,25,59,59,95,135,200,
- 331,331,339,149,278,101,516,38,152,387,
- 603,621,32,211,211,5,18,5,59,95,
- 331,95,95,135,244,5,5,5,5,5,
- 244,647,11,101,379,379,379,464,516,120,
- 125,236,443,551,551,551,551,211,498,59,
- 59,5,5,228,230,244,5,265,265,230,
- 95,5,244,5,509,5,113,358,417,457,
- 470,528,519,404,180,95,95,640,640,642,
- 642,67,422,139,202,187,253
+ 18,148,5,5,148,148,5,5,5,5,
+ 379,148,108,148,25,61,291,398,436,186,
+ 80,508,25,38,38,38,72,72,108,148,
+ 213,31,31,25,5,162,291,114,535,51,
+ 165,387,622,640,45,224,224,5,18,31,
+ 5,72,108,31,108,108,148,257,5,5,
+ 5,5,5,257,666,11,114,379,379,379,
+ 464,483,535,133,138,249,443,570,570,570,
+ 570,224,517,72,72,5,5,241,243,257,
+ 5,278,278,243,108,5,257,5,528,5,
+ 126,358,417,457,489,475,547,538,404,193,
+ 108,108,659,659,661,661,80,422,152,215,
+ 200,266
};
};
public final static char scopeSuffix[] = ScopeSuffix.scopeSuffix;
@@ -2175,18 +2579,19 @@ public class CPPExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, CP
public interface ScopeLhs {
public final static char scopeLhs[] = {
- 47,118,18,18,80,118,18,18,18,18,
- 72,85,48,80,117,78,54,72,71,47,
- 18,20,3,7,8,170,170,166,116,47,
- 117,117,119,129,55,48,140,134,129,72,
- 18,18,134,95,60,136,75,173,170,166,
- 119,184,52,57,144,19,18,18,18,18,
- 18,12,112,166,72,71,71,38,140,131,
- 131,59,71,18,18,18,18,95,20,174,
- 170,186,93,100,62,76,61,160,77,119,
- 73,145,144,177,140,17,166,119,102,70,
- 22,140,140,72,47,166,67,138,45,138,
- 45,173,102,116,47,47,60
+ 48,112,18,18,92,112,18,18,18,18,
+ 85,97,49,92,111,90,59,85,84,48,
+ 18,20,190,3,7,8,182,182,178,110,
+ 48,111,111,138,45,147,60,49,157,151,
+ 147,85,18,18,151,102,72,153,88,190,
+ 185,182,178,138,199,57,66,161,19,18,
+ 18,18,18,18,12,129,178,85,84,84,
+ 64,41,157,114,114,68,84,18,18,18,
+ 18,102,20,186,182,201,100,109,74,80,
+ 73,172,89,138,86,162,161,192,157,17,
+ 178,138,116,83,22,45,157,157,85,48,
+ 178,79,155,44,155,44,185,116,110,48,
+ 48,72
};
};
public final static char scopeLhs[] = ScopeLhs.scopeLhs;
@@ -2194,18 +2599,19 @@ public class CPPExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, CP
public interface ScopeLa {
public final static byte scopeLa[] = {
- 102,71,73,73,71,71,73,73,73,73,
- 73,71,27,71,1,68,1,73,121,67,
- 3,73,68,68,68,1,1,27,71,67,
- 1,1,1,71,1,1,4,68,69,27,
- 1,1,68,73,73,73,102,73,1,27,
- 1,27,27,71,118,73,73,73,73,73,
- 118,1,73,1,73,73,73,72,4,1,
- 1,6,73,68,68,68,68,73,3,1,
- 1,73,73,3,1,118,73,1,1,1,
- 27,73,118,73,5,73,1,48,70,72,
- 73,1,48,75,74,27,27,4,4,4,
- 4,3,1,67,1,1,3
+ 113,73,72,72,73,73,72,72,72,72,
+ 72,73,40,73,1,64,1,72,121,69,
+ 3,72,1,64,64,64,1,1,40,73,
+ 69,1,1,1,72,73,1,1,4,64,
+ 68,40,1,1,64,72,72,72,113,1,
+ 72,1,40,1,40,40,73,118,72,72,
+ 72,72,72,118,1,72,1,72,72,72,
+ 71,71,4,1,1,5,72,64,64,64,
+ 64,72,3,1,1,72,72,3,1,118,
+ 72,1,1,1,40,72,118,72,6,72,
+ 1,55,70,71,72,64,1,55,75,74,
+ 40,40,4,4,4,4,3,1,69,1,
+ 1,3
};
};
public final static byte scopeLa[] = ScopeLa.scopeLa;
@@ -2213,18 +2619,19 @@ public class CPPExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, CP
public interface ScopeStateSet {
public final static char scopeStateSet[] = {
- 85,154,250,250,107,154,250,250,250,250,
- 95,109,85,107,154,107,87,95,95,85,
- 250,250,182,226,226,54,54,82,154,85,
- 154,154,154,313,87,85,137,50,313,95,
- 250,250,50,146,66,26,95,30,54,82,
- 154,22,87,33,63,250,250,250,250,250,
- 250,230,6,82,95,95,95,282,137,154,
- 154,121,95,250,250,250,250,146,250,30,
- 54,24,146,148,66,142,66,60,71,154,
- 95,57,63,140,137,250,82,154,1,95,
- 251,137,137,95,85,82,11,118,158,118,
- 158,30,1,154,85,85,66
+ 85,183,284,284,107,183,284,284,284,284,
+ 95,109,85,107,183,107,87,95,95,85,
+ 284,284,118,214,260,260,54,54,82,183,
+ 85,183,183,185,140,371,87,85,165,50,
+ 371,95,284,284,50,174,66,26,95,118,
+ 30,54,82,185,22,87,33,63,284,284,
+ 284,284,284,284,264,6,82,95,95,95,
+ 148,344,165,183,183,124,95,284,284,284,
+ 284,174,284,30,54,24,174,176,66,170,
+ 66,60,71,185,95,57,63,168,165,284,
+ 82,185,1,95,285,140,165,165,95,85,
+ 82,11,121,189,121,189,30,1,183,85,
+ 85,66
};
};
public final static char scopeStateSet[] = ScopeStateSet.scopeStateSet;
@@ -2232,72 +2639,73 @@ public class CPPExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, CP
public interface ScopeRhs {
public final static char scopeRhs[] = {0,
- 322,3,60,0,126,0,321,3,102,0,
- 126,172,0,126,179,74,0,216,0,254,
- 126,55,124,0,20,0,297,126,55,48,
- 0,20,53,0,33,132,0,20,53,0,
- 0,297,126,55,48,203,0,20,178,0,
- 254,126,55,132,0,180,127,0,141,0,
- 218,3,296,0,296,0,2,0,126,0,
- 254,126,55,131,0,180,127,223,0,180,
- 127,22,223,0,180,127,317,22,0,128,
- 188,167,127,0,128,0,188,167,127,0,
- 134,128,0,171,0,313,126,171,0,126,
- 171,0,222,128,0,167,312,242,0,136,
- 0,0,0,0,135,0,0,0,0,311,
- 126,165,253,0,127,0,253,0,129,0,
- 0,127,0,310,126,165,252,0,127,0,
- 0,44,127,0,0,152,3,0,126,284,
- 283,126,74,282,171,0,283,126,74,282,
- 171,0,215,0,216,0,282,171,0,96,
- 0,0,215,0,216,0,203,96,0,0,
- 215,0,216,0,283,126,282,171,0,215,
- 0,203,0,0,215,0,226,126,3,0,
- 126,0,0,0,0,0,226,126,3,215,
- 0,222,3,0,211,126,0,208,0,146,
- 0,172,167,127,0,10,0,0,0,0,
- 213,63,0,125,0,226,126,3,183,0,
- 183,0,2,0,0,126,0,0,0,0,
- 0,199,3,0,201,0,235,126,165,39,
- 30,0,180,127,59,62,0,196,128,0,
- 128,180,127,280,62,0,180,127,280,62,
- 0,180,127,70,123,59,0,235,126,165,
- 244,59,0,235,126,165,244,225,59,0,
- 277,278,126,165,123,307,56,0,277,278,
- 126,165,307,56,0,180,127,276,56,0,
- 135,0,188,180,127,276,242,0,136,0,
- 180,127,276,242,0,188,167,127,10,0,
- 167,127,10,0,167,127,0,93,136,0,
- 269,126,145,0,269,126,171,0,162,84,
- 0,302,161,304,305,3,81,0,126,171,
- 0,304,305,3,81,0,128,0,126,171,
- 0,162,3,75,191,80,0,126,128,0,
- 191,80,0,108,2,131,126,128,0,224,
- 3,75,0,199,168,0,33,169,0,168,
- 0,175,33,169,0,224,3,85,0,191,
- 155,224,3,83,0,62,171,0,224,3,
- 83,0,126,171,62,171,0,303,126,165,
- 0,162,0,213,77,0,30,171,0,162,
- 107,159,0,30,169,0,178,3,0,126,
- 149,0,218,3,0,213,63,266,0,162,
- 63,0,178,3,299,66,127,0,126,0,
- 0,0,0,299,66,127,0,2,145,126,
- 0,0,0,0,178,3,46,0,147,0,
- 125,48,167,127,0,31,147,0,93,136,
- 31,147,0,219,180,127,0,146,31,147,
- 0,178,3,51,0,162,3,51,0,162,
- 3,68,178,55,42,0,178,55,42,0,
- 20,2,131,126,0,162,3,68,178,55,
- 45,0,178,55,45,0,162,3,68,178,
- 55,47,0,178,55,47,0,162,3,68,
- 178,55,43,0,178,55,43,0,218,3,
- 125,188,167,127,10,0,125,188,167,127,
- 10,0,136,2,0,126,0,218,3,124,
- 259,167,127,10,0,259,167,127,10,0,
- 135,2,0,126,0,218,3,135,0,218,
- 3,140,0,162,63,140,0,261,0,31,
- 0,31,139,0,166,0,134,0,162,3,
- 0
+ 338,3,59,0,126,0,337,3,113,0,
+ 126,180,0,127,188,74,0,224,0,197,
+ 166,126,10,0,136,0,166,126,10,0,
+ 135,0,271,127,54,124,0,20,0,309,
+ 127,54,55,0,20,53,0,33,132,0,
+ 20,53,0,0,309,127,54,55,215,0,
+ 20,186,0,271,127,54,132,0,189,126,
+ 0,141,0,227,3,308,0,308,0,2,
+ 0,126,0,271,127,54,131,0,189,126,
+ 237,0,189,126,22,237,0,189,126,332,
+ 22,0,128,197,166,126,0,128,0,197,
+ 166,126,0,134,128,0,172,0,328,127,
+ 172,0,127,172,0,230,128,0,166,327,
+ 235,0,136,0,0,0,0,135,0,0,
+ 0,0,326,127,164,236,0,127,0,236,
+ 0,129,0,0,127,0,325,127,164,270,
+ 0,127,0,0,44,127,0,0,150,3,
+ 0,127,296,295,127,74,294,172,0,295,
+ 127,74,294,172,0,223,0,224,0,294,
+ 172,0,96,0,0,223,0,224,0,211,
+ 96,0,0,223,0,224,0,295,127,294,
+ 172,0,223,0,211,0,0,223,0,240,
+ 127,3,0,126,0,0,0,0,0,240,
+ 127,3,222,0,231,3,0,220,127,0,
+ 216,0,146,0,176,166,126,0,10,0,
+ 0,0,0,226,60,0,125,0,240,127,
+ 3,195,0,195,0,2,0,0,126,0,
+ 0,0,0,0,211,3,0,209,0,252,
+ 127,164,38,27,0,189,126,61,63,0,
+ 204,128,0,128,189,126,292,63,0,189,
+ 126,292,63,0,189,126,70,123,61,0,
+ 252,127,164,262,61,0,252,127,164,262,
+ 239,61,0,289,290,127,164,123,322,56,
+ 0,289,290,127,164,322,56,0,189,126,
+ 288,56,0,197,189,126,288,235,0,189,
+ 126,288,235,0,166,126,0,93,136,0,
+ 286,127,149,0,286,127,172,0,158,84,
+ 0,317,161,319,320,3,81,0,126,179,
+ 0,319,320,3,81,0,128,0,126,179,
+ 0,158,3,75,204,80,0,126,128,0,
+ 204,80,0,108,2,131,126,128,0,238,
+ 3,75,0,211,174,0,33,169,0,174,
+ 0,183,33,169,0,238,3,85,0,204,
+ 152,238,3,83,0,62,179,0,238,3,
+ 83,0,126,179,62,179,0,318,127,164,
+ 0,158,0,226,77,0,30,179,0,158,
+ 102,185,0,30,177,0,148,64,167,3,
+ 0,167,3,0,20,161,126,0,158,102,
+ 162,0,30,169,0,198,3,0,126,149,
+ 0,227,3,0,226,60,283,0,158,60,
+ 0,198,3,314,67,126,0,126,0,0,
+ 0,0,314,67,126,0,2,145,126,0,
+ 0,0,0,198,3,45,0,147,0,125,
+ 55,166,126,0,31,147,0,93,136,31,
+ 147,0,228,189,126,0,146,31,147,0,
+ 198,3,49,0,158,3,49,0,158,3,
+ 64,198,54,41,0,198,54,41,0,20,
+ 2,131,126,0,158,3,64,198,54,44,
+ 0,198,54,44,0,158,3,64,198,54,
+ 46,0,198,54,46,0,158,3,64,198,
+ 54,42,0,198,54,42,0,227,3,125,
+ 197,166,126,10,0,125,197,166,126,10,
+ 0,136,2,0,126,0,227,3,124,276,
+ 166,126,10,0,276,166,126,10,0,135,
+ 2,0,126,0,227,3,135,0,227,3,
+ 140,0,158,60,140,0,278,0,31,0,
+ 31,139,0,165,0,134,0,158,3,0
};
};
public final static char scopeRhs[] = ScopeRhs.scopeRhs;
@@ -2305,38 +2713,44 @@ public class CPPExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, CP
public interface ScopeState {
public final static char scopeState[] = {0,
- 4735,4861,4860,4827,0,3254,1991,3130,1154,0,
- 3623,3565,3501,3398,3360,3322,3284,3246,3208,2988,
- 2950,4437,0,948,0,1683,1341,1060,0,3047,
- 2559,0,3623,3565,1812,1726,3501,3398,3360,3322,
- 3284,3246,1094,3208,2988,2950,1597,1511,0,4753,
- 3495,3510,0,1103,4352,0,1005,823,0,4533,
- 4306,0,657,585,0,4273,4533,2808,3142,4306,
- 3064,3474,4286,4064,2481,4050,606,2713,587,2692,
- 0,4555,4549,0,4555,4549,4186,4447,4431,4113,
- 4365,4349,4099,3603,3623,3565,3501,3398,3360,3322,
- 3284,3246,3208,2988,2950,0,4555,4549,4186,4447,
- 4431,4113,4365,4349,4099,3603,0,2739,873,0,
- 2481,4273,4782,2808,3142,4458,2713,2979,4326,824,
- 4320,4524,1322,3507,881,0,951,810,0,619,
- 0,2544,1948,1776,1020,3142,4524,3064,587,2692,
- 3487,2799,0,4242,542,2735,0,4726,4705,4688,
- 4667,4659,4652,4641,4637,4587,4566,4818,4171,3458,
- 4814,4807,4803,3223,4790,3195,2706,748,2744,1386,
- 0,3525,2599,4726,4705,4688,2249,2162,4667,941,
- 4659,4652,4641,4637,4587,3308,4389,4155,4566,2968,
- 4818,2793,2780,2594,2245,4171,3458,2158,2862,4814,
- 3422,4807,2727,4803,3223,4790,743,3195,2706,748,
- 4242,624,2735,2744,1386,2623,2547,1330,634,2607,
- 3064,3474,4286,4064,2481,4273,4050,4533,2808,3142,
- 606,2713,587,4306,2692,2955,2527,951,810,4077,
- 4027,4004,2254,2293,2361,2328,2452,2423,2393,2927,
- 2900,2664,2636,2566,2494,3749,3724,3699,3160,3077,
- 3981,3958,3935,3912,3889,3866,3843,3820,3797,3774,
- 2828,2037,2206,2167,2119,2080,1243,1104,1391,1342,
- 1287,891,1994,1061,834,753,696,1951,1908,1865,
- 1822,1779,1736,1693,1650,1607,1564,1521,542,1478,
- 1434,1200,1016,972,1156,0
+ 4466,6304,6248,6150,0,3260,2778,2973,2704,0,
+ 5301,5239,5172,5040,4978,4916,4854,4792,4730,4509,
+ 4447,4794,0,2313,0,1983,1936,1654,0,2511,
+ 739,0,5301,5239,2377,1613,5172,5040,4978,4916,
+ 4854,4792,980,4730,4509,4447,2572,2309,0,4674,
+ 4930,3461,0,718,2767,0,1038,914,0,750,
+ 6008,0,1312,1202,0,5985,750,5415,4682,6008,
+ 4598,5129,2420,2222,3838,796,653,4220,4206,4166,
+ 0,5192,4369,0,5192,4369,5833,6201,6140,5820,
+ 6125,6051,5807,6027,5301,5239,5172,5040,4978,4916,
+ 4854,4792,4730,4509,4447,0,5192,4369,5833,6201,
+ 6140,5820,6125,6051,5807,6027,0,6021,5363,0,
+ 2284,1320,0,3838,5985,4737,5415,4682,6219,4220,
+ 2957,3905,810,6187,4312,2301,2959,648,0,3333,
+ 3434,3617,3526,3851,3811,3699,672,2917,994,2851,
+ 2785,2719,2653,2587,2521,2455,2389,2323,2257,2191,
+ 926,834,766,0,2552,1060,0,1111,0,2291,
+ 1175,1048,649,4682,4312,4598,4206,4166,3889,3883,
+ 3118,0,6021,5363,5932,600,4250,0,5829,5808,
+ 5428,5312,5180,5166,5007,4945,4883,4862,6267,6161,
+ 4800,4731,6094,5842,5330,4270,5173,4476,4455,4448,
+ 4350,3328,0,1857,1810,5829,5808,5428,1763,1669,
+ 5312,1042,5180,5166,5007,4945,4883,2485,2186,2092,
+ 2045,4862,1998,6267,6161,1951,1904,1716,1619,4800,
+ 4731,1523,1427,6094,3125,5842,2139,5330,4270,5173,
+ 1348,4476,4455,4448,5932,963,4250,4350,3328,2815,
+ 2749,2683,1410,901,4598,5129,2420,2222,3838,5985,
+ 796,750,5415,4682,653,4220,4206,6008,4166,2617,
+ 1024,2552,1060,5785,2917,4179,994,3333,2851,2785,
+ 2719,2653,2587,2521,2455,2389,2323,2257,2191,3434,
+ 3617,3526,3851,3811,3699,4139,4112,4085,5762,672,
+ 5739,926,834,766,1079,3396,3582,3490,3779,3747,
+ 3665,4421,4322,4058,4031,4004,3931,5390,5142,4702,
+ 4638,4611,5716,5693,5670,5647,5624,5601,5578,5554,
+ 5524,5501,5435,2983,3270,3228,3171,3129,3072,3030,
+ 1481,1431,1368,2144,1321,2097,2050,2003,1956,1909,
+ 1862,1815,1768,1721,1674,1627,600,1577,1528,1273,
+ 1170,1123,1219,0
};
};
public final static char scopeState[] = ScopeState.scopeState;
@@ -2344,61 +2758,67 @@ public class CPPExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, CP
public interface InSymb {
public final static char inSymb[] = {0,
- 0,298,126,268,51,42,45,47,43,10,
- 135,124,131,7,132,4,3,127,46,41,
- 5,26,25,6,9,38,37,140,146,148,
- 147,150,149,153,151,156,154,158,60,159,
- 69,3,55,55,55,55,127,3,55,55,
- 168,126,63,3,65,66,55,5,178,162,
- 168,126,65,66,167,166,124,3,123,125,
- 106,119,3,63,89,91,26,25,93,92,
- 6,95,94,68,55,87,88,9,97,96,
- 99,98,100,117,116,115,114,113,112,111,
- 110,109,108,70,107,101,178,162,178,178,
- 178,178,167,218,126,126,126,270,271,253,
- 272,242,273,56,274,275,10,127,63,63,
- 126,124,155,126,63,3,216,215,135,125,
- 124,10,127,63,299,3,188,4,178,48,
- 127,48,218,162,147,147,146,146,146,149,
- 149,149,149,148,148,151,150,150,154,153,
- 156,162,158,68,68,68,68,188,259,254,
- 257,254,211,127,172,165,312,276,307,276,
- 127,180,167,254,211,213,159,222,126,3,
- 127,167,204,3,300,168,152,261,188,127,
- 180,167,72,3,3,3,3,125,124,69,
- 167,9,6,126,167,229,125,124,127,123,
- 165,127,167,48,226,227,145,228,126,167,
- 48,178,126,126,4,219,5,48,162,162,
- 162,162,3,3,172,172,311,127,169,223,
- 59,48,203,62,171,314,125,124,230,230,
- 180,165,126,180,188,155,70,222,199,187,
- 183,127,3,126,69,226,188,155,263,266,
- 63,181,4,123,125,218,218,6,126,167,
- 244,225,55,48,280,282,126,3,183,230,
- 230,126,126,188,126,278,123,279,126,70,
- 70,3,180,167,199,126,211,155,125,126,
- 3,63,162,4,172,185,188,165,244,68,
- 55,127,74,126,211,313,72,291,199,124,
- 127,126,126,126,72,278,277,70,69,220,
- 126,126,263,218,213,126,128,126,165,30,
- 48,171,64,59,62,126,180,126,283,72,
- 69,72,70,167,211,316,223,22,127,277,
- 126,226,220,235,237,126,39,126,3,123,
- 59,297,48,10,40,128,283,165,295,127,
- 296,69,127,22,317,180,60,155,126,235,
- 126,165,269,247,281,39,70,127,69,68,
- 55,229,229,284,126,69,180,3,180,127,
- 127,3,126,126,3,70,69,155,127,180,
- 126,70,70,126,303,79,77,1,162,8,
- 85,83,81,80,75,82,84,78,76,59,
- 74,218,180,180,322,220,235,152,165,252,
- 180,225,297,285,102,8,72,213,72,3,
- 3,3,191,3,123,162,123,179,69,126,
- 126,165,225,68,3,72,224,168,224,305,
- 145,75,224,126,126,40,90,321,168,155,
- 199,155,304,126,3,155,285,310,229,155,
- 155,126,70,191,161,269,162,190,69,70,
- 121,302,155,190,8,155
+ 0,313,127,285,49,41,44,46,42,10,
+ 135,124,131,8,132,4,3,126,45,39,
+ 6,35,34,5,7,37,36,140,145,147,
+ 146,153,148,156,155,159,157,160,59,162,
+ 68,3,54,54,54,54,126,3,54,54,
+ 174,127,60,3,66,67,54,6,198,158,
+ 174,127,66,67,166,165,124,3,123,125,
+ 117,119,3,60,91,98,35,34,100,99,
+ 5,90,89,64,54,86,87,7,93,92,
+ 95,94,96,112,111,110,109,108,107,106,
+ 105,104,103,70,102,101,198,158,198,198,
+ 198,198,166,227,127,127,127,255,256,236,
+ 257,235,258,56,287,259,10,126,60,60,
+ 127,124,152,127,60,3,223,222,135,125,
+ 124,10,126,60,314,3,197,4,198,55,
+ 126,55,227,158,146,146,145,145,145,148,
+ 148,148,148,147,147,155,153,153,157,156,
+ 159,158,160,64,64,64,64,197,276,271,
+ 127,249,3,167,148,175,169,183,177,184,
+ 185,274,271,220,126,176,164,327,288,322,
+ 288,126,189,166,271,220,226,162,231,127,
+ 3,126,166,216,3,315,174,150,278,197,
+ 126,189,166,71,3,3,3,3,125,124,
+ 255,256,257,258,336,259,10,167,90,89,
+ 54,7,93,92,95,94,96,112,111,110,
+ 109,108,107,106,105,104,103,70,102,101,
+ 68,166,7,5,127,166,243,125,124,126,
+ 123,164,126,166,55,240,241,149,242,127,
+ 166,55,198,127,127,4,228,6,55,158,
+ 158,158,158,3,3,126,64,148,148,148,
+ 169,167,167,177,175,183,158,184,176,176,
+ 326,126,170,237,61,55,215,63,172,329,
+ 125,124,244,244,189,164,127,189,197,152,
+ 70,231,211,200,195,126,3,127,68,240,
+ 197,152,280,283,60,190,4,123,125,227,
+ 227,166,148,71,5,127,166,262,239,54,
+ 55,292,294,127,3,195,244,244,127,127,
+ 197,127,290,123,291,127,70,70,3,189,
+ 166,211,127,220,152,125,127,3,60,158,
+ 4,197,176,173,197,164,262,64,54,126,
+ 74,127,220,328,71,303,211,124,126,127,
+ 127,127,71,290,289,70,68,229,127,127,
+ 280,227,226,127,128,127,164,27,55,172,
+ 65,61,63,127,189,127,295,71,68,71,
+ 70,166,220,331,237,22,126,289,127,240,
+ 229,252,254,127,38,127,3,123,61,309,
+ 55,10,53,128,295,164,307,126,308,68,
+ 126,22,332,189,59,152,127,252,127,164,
+ 286,265,293,38,70,126,68,64,54,243,
+ 243,296,127,68,189,3,189,126,126,3,
+ 127,127,3,70,68,152,126,189,127,70,
+ 70,127,318,79,77,1,158,9,85,83,
+ 81,80,75,82,84,78,76,61,74,227,
+ 189,189,338,229,252,150,164,270,189,239,
+ 309,297,113,9,71,226,71,3,3,3,
+ 204,3,123,158,123,188,68,127,127,164,
+ 239,64,3,71,238,174,238,320,149,75,
+ 238,127,127,53,97,337,174,152,211,152,
+ 319,127,3,152,297,325,243,152,152,127,
+ 70,204,161,286,158,203,68,70,121,317,
+ 152,203,9,152
};
};
public final static char inSymb[] = InSymb.inSymb;
@@ -2578,6 +2998,20 @@ public class CPPExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, CP
"logical_and_expression",
"logical_or_expression",
"assignment_expression",
+ "relational_expression_inTempla" +
+ "te",
+ "equality_expression_inTemplate",
+ "and_expression_inTemplate",
+ "exclusive_or_expression_inTemp" +
+ "late",
+ "inclusive_or_expression_inTemp" +
+ "late",
+ "logical_and_expression_inTempl" +
+ "ate",
+ "logical_or_expression_inTempla" +
+ "te",
+ "assignment_expression_inTempla" +
+ "te",
"expression_list_actual",
"statement",
"compound_statement",
@@ -2653,6 +3087,10 @@ public class CPPExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, CP
"template_parameter",
"template_argument_list",
"template_argument",
+ "type_name_specifier_inTemplate",
+ "type_name_declaration_specifie" +
+ "rs_inTemplate",
+ "type_specifier_seq_inTemplate",
"handler",
"exception_declaration",
"type_id_list"
@@ -2662,10 +3100,10 @@ public class CPPExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, CP
public final String name(int index) { return name[index]; }
public final static int
- ERROR_SYMBOL = 61,
- SCOPE_UBOUND = 116,
- SCOPE_SIZE = 117,
- MAX_NAME_LENGTH = 37;
+ ERROR_SYMBOL = 62,
+ SCOPE_UBOUND = 121,
+ SCOPE_SIZE = 122,
+ MAX_NAME_LENGTH = 43;
public final int getErrorSymbol() { return ERROR_SYMBOL; }
public final int getScopeUbound() { return SCOPE_UBOUND; }
@@ -2673,20 +3111,20 @@ public class CPPExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, CP
public final int getMaxNameLength() { return MAX_NAME_LENGTH; }
public final static int
- NUM_STATES = 546,
+ NUM_STATES = 604,
NT_OFFSET = 122,
- LA_STATE_OFFSET = 5984,
+ LA_STATE_OFFSET = 7461,
MAX_LA = 2147483647,
- NUM_RULES = 541,
- NUM_NONTERMINALS = 204,
- NUM_SYMBOLS = 326,
+ NUM_RULES = 599,
+ NUM_NONTERMINALS = 225,
+ NUM_SYMBOLS = 347,
SEGMENT_SIZE = 8192,
- START_STATE = 3492,
+ START_STATE = 3365,
IDENTIFIER_SYMBOL = 0,
EOFT_SYMBOL = 120,
EOLT_SYMBOL = 120,
- ACCEPT_ACTION = 5075,
- ERROR_ACTION = 5443;
+ ACCEPT_ACTION = 6422,
+ ERROR_ACTION = 6862;
public final static boolean BACKTRACK = true;
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPExpressionParsersym.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPExpressionParsersym.java
index c9c84d2df7..c9f0e9eaf7 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPExpressionParsersym.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPExpressionParsersym.java
@@ -15,127 +15,127 @@ package org.eclipse.cdt.internal.core.dom.lrparser.cpp;
public interface CPPExpressionParsersym {
public final static int
- TK_asm = 64,
- TK_auto = 28,
+ TK_asm = 65,
+ TK_auto = 25,
TK_bool = 11,
TK_break = 76,
TK_case = 77,
- TK_catch = 102,
+ TK_catch = 113,
TK_char = 12,
- TK_class = 40,
+ TK_class = 53,
TK_const = 23,
- TK_const_cast = 42,
+ TK_const_cast = 41,
TK_continue = 78,
TK_default = 79,
- TK_delete = 65,
+ TK_delete = 66,
TK_do = 80,
TK_double = 13,
- TK_dynamic_cast = 43,
+ TK_dynamic_cast = 42,
TK_else = 121,
TK_enum = 56,
- TK_explicit = 29,
- TK_export = 86,
- TK_extern = 30,
- TK_false = 44,
+ TK_explicit = 26,
+ TK_export = 88,
+ TK_extern = 27,
+ TK_false = 43,
TK_float = 14,
TK_for = 81,
- TK_friend = 31,
+ TK_friend = 28,
TK_goto = 82,
TK_if = 83,
- TK_inline = 32,
+ TK_inline = 29,
TK_int = 15,
TK_long = 16,
- TK_mutable = 33,
- TK_namespace = 59,
- TK_new = 66,
- TK_operator = 7,
- TK_private = 103,
- TK_protected = 104,
- TK_public = 105,
- TK_register = 34,
- TK_reinterpret_cast = 45,
+ TK_mutable = 30,
+ TK_namespace = 61,
+ TK_new = 67,
+ TK_operator = 8,
+ TK_private = 114,
+ TK_protected = 115,
+ TK_public = 116,
+ TK_register = 31,
+ TK_reinterpret_cast = 44,
TK_return = 84,
TK_short = 17,
TK_signed = 18,
- TK_sizeof = 46,
- TK_static = 35,
- TK_static_cast = 47,
+ TK_sizeof = 45,
+ TK_static = 32,
+ TK_static_cast = 46,
TK_struct = 57,
TK_switch = 85,
- TK_template = 48,
- TK_this = 49,
- TK_throw = 60,
+ TK_template = 55,
+ TK_this = 47,
+ TK_throw = 59,
TK_try = 74,
- TK_true = 50,
- TK_typedef = 36,
- TK_typeid = 51,
+ TK_true = 48,
+ TK_typedef = 33,
+ TK_typeid = 49,
TK_typename = 10,
TK_union = 58,
TK_unsigned = 19,
- TK_using = 62,
+ TK_using = 63,
TK_virtual = 22,
TK_void = 20,
TK_volatile = 24,
TK_wchar_t = 21,
TK_while = 75,
- TK_integer = 52,
- TK_floating = 53,
- TK_charconst = 54,
- TK_stringlit = 39,
+ TK_integer = 50,
+ TK_floating = 51,
+ TK_charconst = 52,
+ TK_stringlit = 38,
TK_identifier = 1,
TK_Completion = 2,
- TK_EndOfCompletion = 8,
+ TK_EndOfCompletion = 9,
TK_Invalid = 122,
- TK_LeftBracket = 63,
+ TK_LeftBracket = 60,
TK_LeftParen = 3,
TK_Dot = 119,
- TK_DotStar = 91,
- TK_Arrow = 106,
- TK_ArrowStar = 89,
- TK_PlusPlus = 37,
- TK_MinusMinus = 38,
- TK_And = 9,
- TK_Star = 6,
- TK_Plus = 25,
- TK_Minus = 26,
- TK_Tilde = 5,
- TK_Bang = 41,
- TK_Slash = 92,
- TK_Percent = 93,
- TK_RightShift = 87,
- TK_LeftShift = 88,
- TK_LT = 55,
- TK_GT = 68,
- TK_LE = 94,
- TK_GE = 95,
- TK_EQ = 96,
- TK_NE = 97,
- TK_Caret = 98,
- TK_Or = 99,
- TK_AndAnd = 100,
+ TK_DotStar = 98,
+ TK_Arrow = 117,
+ TK_ArrowStar = 91,
+ TK_PlusPlus = 36,
+ TK_MinusMinus = 37,
+ TK_And = 7,
+ TK_Star = 5,
+ TK_Plus = 34,
+ TK_Minus = 35,
+ TK_Tilde = 6,
+ TK_Bang = 39,
+ TK_Slash = 99,
+ TK_Percent = 100,
+ TK_RightShift = 86,
+ TK_LeftShift = 87,
+ TK_LT = 54,
+ TK_GT = 64,
+ TK_LE = 89,
+ TK_GE = 90,
+ TK_EQ = 92,
+ TK_NE = 93,
+ TK_Caret = 94,
+ TK_Or = 95,
+ TK_AndAnd = 96,
TK_OrOr = 101,
- TK_Question = 107,
- TK_Colon = 72,
+ TK_Question = 102,
+ TK_Colon = 71,
TK_ColonColon = 4,
- TK_DotDotDot = 90,
+ TK_DotDotDot = 97,
TK_Assign = 70,
- TK_StarAssign = 108,
- TK_SlashAssign = 109,
- TK_PercentAssign = 110,
- TK_PlusAssign = 111,
- TK_MinusAssign = 112,
- TK_RightShiftAssign = 113,
- TK_LeftShiftAssign = 114,
- TK_AndAssign = 115,
- TK_CaretAssign = 116,
- TK_OrAssign = 117,
- TK_Comma = 69,
+ TK_StarAssign = 103,
+ TK_SlashAssign = 104,
+ TK_PercentAssign = 105,
+ TK_PlusAssign = 106,
+ TK_MinusAssign = 107,
+ TK_RightShiftAssign = 108,
+ TK_LeftShiftAssign = 109,
+ TK_AndAssign = 110,
+ TK_CaretAssign = 111,
+ TK_OrAssign = 112,
+ TK_Comma = 68,
TK_RightBracket = 118,
- TK_RightParen = 73,
- TK_RightBrace = 71,
- TK_SemiColon = 27,
- TK_LeftBrace = 67,
- TK_ERROR_TOKEN = 61,
+ TK_RightParen = 72,
+ TK_RightBrace = 73,
+ TK_SemiColon = 40,
+ TK_LeftBrace = 69,
+ TK_ERROR_TOKEN = 62,
TK_EOF_TOKEN = 120;
public final static String orderedTerminalSymbols[] = {
@@ -144,11 +144,11 @@ public interface CPPExpressionParsersym {
"Completion",
"LeftParen",
"ColonColon",
- "Tilde",
"Star",
+ "Tilde",
+ "And",
"operator",
"EndOfCompletion",
- "And",
"typename",
"bool",
"char",
@@ -164,9 +164,6 @@ public interface CPPExpressionParsersym {
"virtual",
"const",
"volatile",
- "Plus",
- "Minus",
- "SemiColon",
"auto",
"explicit",
"extern",
@@ -176,43 +173,46 @@ public interface CPPExpressionParsersym {
"register",
"static",
"typedef",
+ "Plus",
+ "Minus",
"PlusPlus",
"MinusMinus",
"stringlit",
- "class",
"Bang",
+ "SemiColon",
"const_cast",
"dynamic_cast",
"false",
"reinterpret_cast",
"sizeof",
"static_cast",
- "template",
"this",
"true",
"typeid",
"integer",
"floating",
"charconst",
+ "class",
"LT",
+ "template",
"enum",
"struct",
"union",
- "namespace",
"throw",
+ "LeftBracket",
+ "namespace",
"ERROR_TOKEN",
"using",
- "LeftBracket",
+ "GT",
"asm",
"delete",
"new",
- "LeftBrace",
- "GT",
"Comma",
+ "LeftBrace",
"Assign",
- "RightBrace",
"Colon",
"RightParen",
+ "RightBrace",
"try",
"while",
"break",
@@ -225,27 +225,22 @@ public interface CPPExpressionParsersym {
"if",
"return",
"switch",
- "export",
"RightShift",
"LeftShift",
- "ArrowStar",
- "DotDotDot",
- "DotStar",
- "Slash",
- "Percent",
+ "export",
"LE",
"GE",
+ "ArrowStar",
"EQ",
"NE",
"Caret",
"Or",
"AndAnd",
+ "DotDotDot",
+ "DotStar",
+ "Slash",
+ "Percent",
"OrOr",
- "catch",
- "private",
- "protected",
- "public",
- "Arrow",
"Question",
"StarAssign",
"SlashAssign",
@@ -257,6 +252,11 @@ public interface CPPExpressionParsersym {
"AndAssign",
"CaretAssign",
"OrAssign",
+ "catch",
+ "private",
+ "protected",
+ "public",
+ "Arrow",
"RightBracket",
"Dot",
"EOF_TOKEN",
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 abf24e58f6..063bcac846 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
@@ -248,7 +248,13 @@ public void setTokens(List<IToken> tokens) {
public CPPNoCastExpressionParser(ITokenStream stream, Map<String,String> properties) { // constructor for creating secondary parser
initActions(properties);
tokenMap = new TokenMap(CPPNoCastExpressionParsersym.orderedTerminalSymbols, stream.getOrderedTerminalSymbols());
-}
+}
+
+ public CPPNoCastExpressionParser(ITokenStream stream, IScanner scanner, IBuiltinBindingsProvider builtinBindingsProvider, IIndex index, Map<String,String> properties) { // constructor for creating secondary parser
+ initActions(properties);
+ action.initializeTranslationUnit(scanner, builtinBindingsProvider, index);
+ tokenMap = new TokenMap(CPPNoCastExpressionParsersym.orderedTerminalSymbols, stream.getOrderedTerminalSymbols());
+}
public void ruleAction(int ruleNumber)
@@ -809,1131 +815,1359 @@ public CPPNoCastExpressionParser(ITokenStream stream, Map<String,String> propert
}
//
- // Rule 140: throw_expression ::= throw
+ // Rule 141: relational_expression_inTemplate ::= relational_expression_inTemplate < shift_expression
//
- case 140: { action. consumeExpressionThrow(false); break;
+ case 141: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_lessThan); break;
}
//
- // Rule 141: throw_expression ::= throw assignment_expression
+ // Rule 142: relational_expression_inTemplate ::= ( relational_expression_inTemplate > shift_expression )
//
- case 141: { action. consumeExpressionThrow(true); break;
+ case 142: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_greaterThan); break;
}
//
- // Rule 144: assignment_expression ::= logical_or_expression = assignment_expression
+ // Rule 143: relational_expression_inTemplate ::= relational_expression_inTemplate <= shift_expression
//
- case 144: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_assign); break;
+ case 143: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_lessEqual); break;
}
//
- // Rule 145: assignment_expression ::= logical_or_expression *= assignment_expression
+ // Rule 144: relational_expression_inTemplate ::= relational_expression_inTemplate >= shift_expression
//
- case 145: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_multiplyAssign); break;
+ case 144: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_greaterEqual); break;
}
//
- // Rule 146: assignment_expression ::= logical_or_expression /= assignment_expression
+ // Rule 146: equality_expression_inTemplate ::= equality_expression_inTemplate == relational_expression_inTemplate
//
- case 146: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_divideAssign); break;
+ case 146: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_equals); break;
}
//
- // Rule 147: assignment_expression ::= logical_or_expression %= assignment_expression
+ // Rule 147: equality_expression_inTemplate ::= equality_expression_inTemplate != relational_expression_inTemplate
//
- case 147: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_moduloAssign); break;
+ case 147: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_notequals); break;
}
//
- // Rule 148: assignment_expression ::= logical_or_expression += assignment_expression
+ // Rule 149: and_expression_inTemplate ::= and_expression_inTemplate & equality_expression_inTemplate
//
- case 148: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_plusAssign); break;
+ case 149: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_binaryAnd); break;
}
//
- // Rule 149: assignment_expression ::= logical_or_expression -= assignment_expression
+ // Rule 151: exclusive_or_expression_inTemplate ::= exclusive_or_expression_inTemplate ^ and_expression_inTemplate
//
- case 149: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_minusAssign); break;
+ case 151: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_binaryXor); break;
}
//
- // Rule 150: assignment_expression ::= logical_or_expression >>= assignment_expression
+ // Rule 153: inclusive_or_expression_inTemplate ::= inclusive_or_expression_inTemplate | exclusive_or_expression_inTemplate
//
- case 150: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_shiftRightAssign); break;
+ case 153: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_binaryOr); break;
}
//
- // Rule 151: assignment_expression ::= logical_or_expression <<= assignment_expression
+ // Rule 155: logical_and_expression_inTemplate ::= logical_and_expression_inTemplate && inclusive_or_expression_inTemplate
//
- case 151: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_shiftLeftAssign); break;
+ case 155: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_logicalAnd); break;
}
//
- // Rule 152: assignment_expression ::= logical_or_expression &= assignment_expression
+ // Rule 157: logical_or_expression_inTemplate ::= logical_or_expression_inTemplate || logical_and_expression_inTemplate
//
- case 152: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_binaryAndAssign); break;
+ case 157: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_logicalOr); break;
}
//
- // Rule 153: assignment_expression ::= logical_or_expression ^= assignment_expression
+ // Rule 159: conditional_expression_inTemplate ::= logical_or_expression_inTemplate ? expression : assignment_expression_inTemplate
//
- case 153: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_binaryXorAssign); break;
+ case 159: { action. consumeExpressionConditional(); break;
}
//
- // Rule 154: assignment_expression ::= logical_or_expression |= assignment_expression
+ // Rule 162: assignment_expression_inTemplate ::= logical_or_expression_inTemplate = assignment_expression_inTemplate
//
- case 154: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_binaryOrAssign); break;
+ case 162: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_assign); break;
}
//
- // Rule 156: expression_list ::= <openscope-ast> expression_list_actual
+ // Rule 163: assignment_expression_inTemplate ::= logical_or_expression_inTemplate *= assignment_expression_inTemplate
//
- case 156: { action. consumeExpressionList(); break;
+ case 163: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_multiplyAssign); break;
}
//
- // Rule 160: expression_list_opt ::= $Empty
+ // Rule 164: assignment_expression_inTemplate ::= logical_or_expression_inTemplate /= assignment_expression_inTemplate
//
- case 160: { action. consumeEmpty(); break;
+ case 164: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_divideAssign); break;
}
//
- // Rule 162: expression_opt ::= $Empty
+ // Rule 165: assignment_expression_inTemplate ::= logical_or_expression_inTemplate %= assignment_expression_inTemplate
//
- case 162: { action. consumeEmpty(); break;
+ case 165: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_moduloAssign); break;
}
//
- // Rule 165: constant_expression_opt ::= $Empty
+ // Rule 166: assignment_expression_inTemplate ::= logical_or_expression_inTemplate += assignment_expression_inTemplate
//
- case 165: { action. consumeEmpty(); break;
+ case 166: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_plusAssign); break;
}
//
- // Rule 174: statement ::= ERROR_TOKEN
+ // Rule 167: assignment_expression_inTemplate ::= logical_or_expression_inTemplate -= assignment_expression_inTemplate
//
- case 174: { action. consumeStatementProblem(); break;
+ case 167: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_minusAssign); break;
}
//
- // Rule 175: labeled_statement ::= identifier : statement
+ // Rule 168: assignment_expression_inTemplate ::= logical_or_expression_inTemplate >>= assignment_expression_inTemplate
//
- case 175: { action. consumeStatementLabeled(); break;
+ case 168: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_shiftRightAssign); break;
}
//
- // Rule 176: labeled_statement ::= case constant_expression : statement
+ // Rule 169: assignment_expression_inTemplate ::= logical_or_expression_inTemplate <<= assignment_expression_inTemplate
//
- case 176: { action. consumeStatementCase(); break;
+ case 169: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_shiftLeftAssign); break;
}
//
- // Rule 177: labeled_statement ::= default : statement
+ // Rule 170: assignment_expression_inTemplate ::= logical_or_expression_inTemplate &= assignment_expression_inTemplate
//
- case 177: { action. consumeStatementDefault(); break;
+ case 170: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_binaryAndAssign); break;
}
//
- // Rule 178: expression_statement ::= expression ;
+ // Rule 171: assignment_expression_inTemplate ::= logical_or_expression_inTemplate ^= assignment_expression_inTemplate
//
- case 178: { action. consumeStatementExpression(); break;
+ case 171: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_binaryXorAssign); break;
}
//
- // Rule 179: expression_statement ::= ;
+ // Rule 172: assignment_expression_inTemplate ::= logical_or_expression_inTemplate |= assignment_expression_inTemplate
//
- case 179: { action. consumeStatementNull(); break;
+ case 172: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_binaryOrAssign); break;
}
//
- // Rule 180: compound_statement ::= { <openscope-ast> statement_seq }
+ // Rule 173: throw_expression ::= throw
//
- case 180: { action. consumeStatementCompoundStatement(true); break;
+ case 173: { action. consumeExpressionThrow(false); break;
}
//
- // Rule 181: compound_statement ::= { }
+ // Rule 174: throw_expression ::= throw assignment_expression
//
- case 181: { action. consumeStatementCompoundStatement(false); break;
+ case 174: { action. consumeExpressionThrow(true); break;
}
//
- // Rule 184: selection_statement ::= if ( condition ) statement
+ // Rule 177: assignment_expression ::= logical_or_expression = assignment_expression
//
- case 184: { action. consumeStatementIf(false); break;
+ case 177: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_assign); break;
}
//
- // Rule 185: selection_statement ::= if ( condition ) statement else statement
+ // Rule 178: assignment_expression ::= logical_or_expression *= assignment_expression
//
- case 185: { action. consumeStatementIf(true); break;
+ case 178: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_multiplyAssign); break;
}
//
- // Rule 186: selection_statement ::= switch ( condition ) statement
+ // Rule 179: assignment_expression ::= logical_or_expression /= assignment_expression
//
- case 186: { action. consumeStatementSwitch(); break;
+ case 179: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_divideAssign); break;
}
//
- // Rule 188: condition ::= type_specifier_seq declarator = assignment_expression
+ // Rule 180: assignment_expression ::= logical_or_expression %= assignment_expression
//
- case 188: { action. consumeConditionDeclaration(); break;
+ case 180: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_moduloAssign); break;
}
//
- // Rule 190: condition_opt ::= $Empty
+ // Rule 181: assignment_expression ::= logical_or_expression += assignment_expression
//
- case 190: { action. consumeEmpty(); break;
+ case 181: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_plusAssign); break;
}
//
- // Rule 191: iteration_statement ::= while ( condition ) statement
+ // Rule 182: assignment_expression ::= logical_or_expression -= assignment_expression
//
- case 191: { action. consumeStatementWhileLoop(); break;
+ case 182: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_minusAssign); break;
}
//
- // Rule 192: iteration_statement ::= do statement while ( expression ) ;
+ // Rule 183: assignment_expression ::= logical_or_expression >>= assignment_expression
//
- case 192: { action. consumeStatementDoLoop(true); break;
+ case 183: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_shiftRightAssign); break;
}
//
- // Rule 193: iteration_statement ::= do statement
+ // Rule 184: assignment_expression ::= logical_or_expression <<= assignment_expression
//
- case 193: { action. consumeStatementDoLoop(false); break;
+ case 184: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_shiftLeftAssign); break;
}
//
- // Rule 194: iteration_statement ::= for ( for_init_statement condition_opt ; expression_opt ) statement
+ // Rule 185: assignment_expression ::= logical_or_expression &= assignment_expression
//
- case 194: { action. consumeStatementForLoop(); break;
+ case 185: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_binaryAndAssign); break;
}
//
- // Rule 196: for_init_statement ::= simple_declaration_with_declspec
+ // Rule 186: assignment_expression ::= logical_or_expression ^= assignment_expression
//
- case 196: { action. consumeStatementDeclaration(); break;
+ case 186: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_binaryXorAssign); break;
}
//
- // Rule 197: jump_statement ::= break ;
+ // Rule 187: assignment_expression ::= logical_or_expression |= assignment_expression
//
- case 197: { action. consumeStatementBreak(); break;
+ case 187: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_binaryOrAssign); break;
}
//
- // Rule 198: jump_statement ::= continue ;
+ // Rule 189: expression_list ::= <openscope-ast> expression_list_actual
//
- case 198: { action. consumeStatementContinue(); break;
+ case 189: { action. consumeExpressionList(); break;
}
//
- // Rule 199: jump_statement ::= return expression ;
+ // Rule 193: expression_list_opt ::= $Empty
//
- case 199: { action. consumeStatementReturn(true); break;
+ case 193: { action. consumeEmpty(); break;
}
//
- // Rule 200: jump_statement ::= return ;
+ // Rule 195: expression_opt ::= $Empty
//
- case 200: { action. consumeStatementReturn(false); break;
+ case 195: { action. consumeEmpty(); break;
}
//
- // Rule 201: jump_statement ::= goto identifier_token ;
+ // Rule 198: constant_expression_opt ::= $Empty
//
- case 201: { action. consumeStatementGoto(); break;
+ case 198: { action. consumeEmpty(); break;
}
//
- // Rule 202: declaration_statement ::= block_declaration
+ // Rule 207: statement ::= ERROR_TOKEN
//
- case 202: { action. consumeStatementDeclarationWithDisambiguation(); break;
+ case 207: { action. consumeStatementProblem(); break;
}
//
- // Rule 203: declaration_statement ::= function_definition
+ // Rule 208: labeled_statement ::= identifier : statement
//
- case 203: { action. consumeStatementDeclaration(); break;
+ case 208: { action. consumeStatementLabeled(); break;
}
//
- // Rule 211: declaration ::= ERROR_TOKEN
+ // Rule 209: labeled_statement ::= case constant_expression : statement
//
- case 211: { action. consumeDeclarationProblem(); break;
+ case 209: { action. consumeStatementCase(); break;
}
//
- // Rule 221: simple_declaration ::= declaration_specifiers_opt <openscope-ast> init_declarator_list_opt ;
+ // Rule 210: labeled_statement ::= default : statement
//
- case 221: { action. consumeDeclarationSimple(true); break;
+ case 210: { action. consumeStatementDefault(); break;
}
//
- // Rule 222: simple_declaration_with_declspec ::= declaration_specifiers <openscope-ast> init_declarator_list_opt ;
+ // Rule 211: expression_statement ::= expression ;
//
- case 222: { action. consumeDeclarationSimple(true); break;
+ case 211: { action. consumeStatementExpression(); break;
}
//
- // Rule 223: declaration_specifiers ::= <openscope-ast> simple_declaration_specifiers
+ // Rule 212: expression_statement ::= ;
//
- case 223: { action. consumeDeclarationSpecifiersSimple(); break;
+ case 212: { action. consumeStatementNull(); break;
}
//
- // Rule 224: declaration_specifiers ::= <openscope-ast> class_declaration_specifiers
+ // Rule 213: compound_statement ::= { <openscope-ast> statement_seq }
//
- case 224: { action. consumeDeclarationSpecifiersComposite(); break;
+ case 213: { action. consumeStatementCompoundStatement(true); break;
}
//
- // Rule 225: declaration_specifiers ::= <openscope-ast> elaborated_declaration_specifiers
+ // Rule 214: compound_statement ::= { }
//
- case 225: { action. consumeDeclarationSpecifiersComposite(); break;
+ case 214: { action. consumeStatementCompoundStatement(false); break;
}
//
- // Rule 226: declaration_specifiers ::= <openscope-ast> enum_declaration_specifiers
+ // Rule 217: selection_statement ::= if ( condition ) statement
//
- case 226: { action. consumeDeclarationSpecifiersComposite(); break;
+ case 217: { action. consumeStatementIf(false); break;
}
//
- // Rule 227: declaration_specifiers ::= <openscope-ast> type_name_declaration_specifiers
+ // Rule 218: selection_statement ::= if ( condition ) statement else statement
//
- case 227: { action. consumeDeclarationSpecifiersTypeName(); break;
+ case 218: { action. consumeStatementIf(true); break;
}
//
- // Rule 229: declaration_specifiers_opt ::= $Empty
+ // Rule 219: selection_statement ::= switch ( condition ) statement
//
- case 229: { action. consumeEmpty(); break;
+ case 219: { action. consumeStatementSwitch(); break;
}
//
- // Rule 233: no_type_declaration_specifier ::= friend
+ // Rule 221: condition ::= type_specifier_seq declarator = assignment_expression
//
- case 233: { action. consumeToken(); break;
+ case 221: { action. consumeConditionDeclaration(); break;
}
//
- // Rule 234: no_type_declaration_specifier ::= typedef
+ // Rule 223: condition_opt ::= $Empty
//
- case 234: { action. consumeToken(); break;
+ case 223: { action. consumeEmpty(); break;
}
//
- // Rule 254: storage_class_specifier ::= auto
+ // Rule 224: iteration_statement ::= while ( condition ) statement
//
- case 254: { action. consumeToken(); break;
+ case 224: { action. consumeStatementWhileLoop(); break;
}
//
- // Rule 255: storage_class_specifier ::= register
+ // Rule 225: iteration_statement ::= do statement while ( expression ) ;
//
- case 255: { action. consumeToken(); break;
+ case 225: { action. consumeStatementDoLoop(true); break;
}
//
- // Rule 256: storage_class_specifier ::= static
+ // Rule 226: iteration_statement ::= do statement
//
- case 256: { action. consumeToken(); break;
+ case 226: { action. consumeStatementDoLoop(false); break;
}
//
- // Rule 257: storage_class_specifier ::= extern
+ // Rule 227: iteration_statement ::= for ( for_init_statement condition_opt ; expression_opt ) statement
//
- case 257: { action. consumeToken(); break;
+ case 227: { action. consumeStatementForLoop(); break;
}
//
- // Rule 258: storage_class_specifier ::= mutable
+ // Rule 229: for_init_statement ::= simple_declaration_with_declspec
//
- case 258: { action. consumeToken(); break;
+ case 229: { action. consumeStatementDeclaration(); break;
}
//
- // Rule 259: function_specifier ::= inline
+ // Rule 230: jump_statement ::= break ;
//
- case 259: { action. consumeToken(); break;
+ case 230: { action. consumeStatementBreak(); break;
}
//
- // Rule 260: function_specifier ::= virtual
+ // Rule 231: jump_statement ::= continue ;
//
- case 260: { action. consumeToken(); break;
+ case 231: { action. consumeStatementContinue(); break;
}
//
- // Rule 261: function_specifier ::= explicit
+ // Rule 232: jump_statement ::= return expression ;
//
- case 261: { action. consumeToken(); break;
+ case 232: { action. consumeStatementReturn(true); break;
}
//
- // Rule 262: simple_type_specifier ::= simple_type_specifier_token
+ // Rule 233: jump_statement ::= return ;
//
- case 262: { action. consumeToken(); break;
+ case 233: { action. consumeStatementReturn(false); break;
}
//
- // Rule 276: type_name_specifier ::= dcolon_opt nested_name_specifier_opt type_name
+ // Rule 234: jump_statement ::= goto identifier_token ;
//
- case 276: { action. consumeQualifiedId(false); break;
+ case 234: { action. consumeStatementGoto(); break;
}
//
- // Rule 277: type_name_specifier ::= dcolon_opt nested_name_specifier template template_id_name
+ // Rule 235: declaration_statement ::= block_declaration
//
- case 277: { action. consumeQualifiedId(false); break;
+ case 235: { action. consumeStatementDeclarationWithDisambiguation(); break;
}
//
- // Rule 278: type_name_specifier ::= typename dcolon_opt nested_name_specifier identifier_name
+ // Rule 236: declaration_statement ::= function_definition
//
- case 278: { action. consumeQualifiedId(false); break;
+ case 236: { action. consumeStatementDeclaration(); break;
}
//
- // Rule 279: type_name_specifier ::= typename dcolon_opt nested_name_specifier template_opt template_id_name
+ // Rule 244: declaration ::= ERROR_TOKEN
//
- case 279: { action. consumeQualifiedId(true); break;
+ case 244: { action. consumeDeclarationProblem(); break;
}
//
- // Rule 281: elaborated_type_specifier ::= class_keyword elaborated_specifier_hook dcolon_opt nested_name_specifier_opt identifier_name
+ // Rule 254: simple_declaration ::= declaration_specifiers_opt <openscope-ast> init_declarator_list_opt ;
//
- case 281: { action. consumeTypeSpecifierElaborated(false); break;
+ case 254: { action. consumeDeclarationSimple(true); break;
}
//
- // Rule 282: elaborated_type_specifier ::= class_keyword elaborated_specifier_hook dcolon_opt nested_name_specifier_opt template_opt template_id_name
+ // Rule 255: simple_declaration_with_declspec ::= declaration_specifiers <openscope-ast> init_declarator_list_opt ;
//
- case 282: { action. consumeTypeSpecifierElaborated(true); break;
+ case 255: { action. consumeDeclarationSimple(true); break;
}
//
- // Rule 283: elaborated_type_specifier ::= enum elaborated_specifier_hook dcolon_opt nested_name_specifier_opt identifier_name
+ // Rule 256: declaration_specifiers ::= <openscope-ast> simple_declaration_specifiers
//
- case 283: { action. consumeTypeSpecifierElaborated(false); break;
+ case 256: { action. consumeDeclarationSpecifiersSimple(); break;
}
//
- // Rule 287: enum_specifier ::= enum enum_specifier_hook { <openscope-ast> enumerator_list_opt comma_opt }
+ // Rule 257: declaration_specifiers ::= <openscope-ast> class_declaration_specifiers
//
- case 287: { action. consumeTypeSpecifierEnumeration(false); break;
+ case 257: { action. consumeDeclarationSpecifiersComposite(); break;
}
//
- // Rule 288: enum_specifier ::= enum enum_specifier_hook identifier_token { <openscope-ast> enumerator_list_opt comma_opt }
+ // Rule 258: declaration_specifiers ::= <openscope-ast> elaborated_declaration_specifiers
//
- case 288: { action. consumeTypeSpecifierEnumeration(true); break;
+ case 258: { action. consumeDeclarationSpecifiersComposite(); break;
}
//
- // Rule 294: enumerator_definition ::= identifier_token
+ // Rule 259: declaration_specifiers ::= <openscope-ast> enum_declaration_specifiers
//
- case 294: { action. consumeEnumerator(false); break;
+ case 259: { action. consumeDeclarationSpecifiersComposite(); break;
}
//
- // Rule 295: enumerator_definition ::= identifier_token = constant_expression
+ // Rule 260: declaration_specifiers ::= <openscope-ast> type_name_declaration_specifiers
//
- case 295: { action. consumeEnumerator(true); break;
+ case 260: { action. consumeDeclarationSpecifiersTypeName(); break;
}
//
- // Rule 297: namespace_definition ::= namespace namespace_name namespace_definition_hook { <openscope-ast> declaration_seq_opt }
+ // Rule 262: declaration_specifiers_opt ::= $Empty
//
- case 297: { action. consumeNamespaceDefinition(true); break;
+ case 262: { action. consumeEmpty(); break;
}
//
- // Rule 298: namespace_definition ::= namespace namespace_definition_hook { <openscope-ast> declaration_seq_opt }
+ // Rule 266: no_type_declaration_specifier ::= friend
//
- case 298: { action. consumeNamespaceDefinition(false); break;
+ case 266: { action. consumeToken(); break;
}
//
- // Rule 300: namespace_alias_definition ::= namespace identifier_token = dcolon_opt nested_name_specifier_opt namespace_name ;
+ // Rule 267: no_type_declaration_specifier ::= typedef
//
- case 300: { action. consumeNamespaceAliasDefinition(); break;
+ case 267: { action. consumeToken(); break;
}
//
- // Rule 301: using_declaration ::= using typename_opt dcolon_opt nested_name_specifier_opt unqualified_id_name ;
+ // Rule 287: storage_class_specifier ::= auto
//
- case 301: { action. consumeUsingDeclaration(); break;
+ case 287: { action. consumeToken(); break;
}
//
- // Rule 302: typename_opt ::= typename
+ // Rule 288: storage_class_specifier ::= register
//
- case 302: { action. consumePlaceHolder(); break;
+ case 288: { action. consumeToken(); break;
}
//
- // Rule 303: typename_opt ::= $Empty
+ // Rule 289: storage_class_specifier ::= static
//
- case 303: { action. consumeEmpty(); break;
+ case 289: { action. consumeToken(); break;
}
//
- // Rule 304: using_directive ::= using namespace dcolon_opt nested_name_specifier_opt namespace_name ;
+ // Rule 290: storage_class_specifier ::= extern
//
- case 304: { action. consumeUsingDirective(); break;
+ case 290: { action. consumeToken(); break;
}
//
- // Rule 305: asm_definition ::= asm ( stringlit ) ;
+ // Rule 291: storage_class_specifier ::= mutable
//
- case 305: { action. consumeDeclarationASM(); break;
+ case 291: { action. consumeToken(); break;
}
//
- // Rule 306: linkage_specification ::= extern stringlit { <openscope-ast> declaration_seq_opt }
+ // Rule 292: function_specifier ::= inline
//
- case 306: { action. consumeLinkageSpecification(); break;
+ case 292: { action. consumeToken(); break;
}
//
- // Rule 307: linkage_specification ::= extern stringlit <openscope-ast> declaration
+ // Rule 293: function_specifier ::= virtual
//
- case 307: { action. consumeLinkageSpecification(); break;
+ case 293: { action. consumeToken(); break;
}
//
- // Rule 312: init_declarator_complete ::= init_declarator
+ // Rule 294: function_specifier ::= explicit
//
- case 312: { action. consumeInitDeclaratorComplete(); break;
+ case 294: { action. consumeToken(); break;
}
//
- // Rule 314: init_declarator ::= complete_declarator initializer
+ // Rule 295: simple_type_specifier ::= simple_type_specifier_token
//
- case 314: { action. consumeDeclaratorWithInitializer(true); break;
+ case 295: { action. consumeToken(); break;
}
//
- // Rule 317: declarator ::= <openscope-ast> ptr_operator_seq direct_declarator
+ // Rule 309: type_name_specifier ::= dcolon_opt nested_name_specifier_opt type_name
//
- case 317: { action. consumeDeclaratorWithPointer(true); break;
+ case 309: { action. consumeQualifiedId(false); break;
}
//
- // Rule 319: function_declarator ::= <openscope-ast> ptr_operator_seq direct_declarator
+ // Rule 310: type_name_specifier ::= dcolon_opt nested_name_specifier template template_id_name
//
- case 319: { action. consumeDeclaratorWithPointer(true); break;
+ case 310: { action. consumeQualifiedId(false); break;
}
//
- // Rule 323: basic_direct_declarator ::= declarator_id_name
+ // Rule 311: type_name_specifier ::= typename dcolon_opt nested_name_specifier identifier_name
//
- case 323: { action. consumeDirectDeclaratorIdentifier(); break;
+ case 311: { action. consumeQualifiedId(false); break;
}
//
- // Rule 324: basic_direct_declarator ::= ( declarator )
+ // Rule 312: type_name_specifier ::= typename dcolon_opt nested_name_specifier template_opt template_id_name
//
- case 324: { action. consumeDirectDeclaratorBracketed(); break;
+ case 312: { action. consumeQualifiedId(true); break;
}
//
- // Rule 325: function_direct_declarator ::= basic_direct_declarator ( <openscope-ast> parameter_declaration_clause ) <openscope-ast> cv_qualifier_seq_opt <openscope-ast> exception_specification_opt
+ // Rule 314: elaborated_type_specifier ::= class_keyword elaborated_specifier_hook dcolon_opt nested_name_specifier_opt identifier_name
//
- case 325: { action. consumeDirectDeclaratorFunctionDeclarator(true); break;
+ case 314: { action. consumeTypeSpecifierElaborated(false); break;
}
//
- // Rule 326: array_direct_declarator ::= array_direct_declarator array_modifier
+ // Rule 315: elaborated_type_specifier ::= class_keyword elaborated_specifier_hook dcolon_opt nested_name_specifier_opt template_opt template_id_name
//
- case 326: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
+ case 315: { action. consumeTypeSpecifierElaborated(true); break;
}
//
- // Rule 327: array_direct_declarator ::= basic_direct_declarator array_modifier
+ // Rule 316: elaborated_type_specifier ::= enum elaborated_specifier_hook dcolon_opt nested_name_specifier_opt identifier_name
//
- case 327: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
+ case 316: { action. consumeTypeSpecifierElaborated(false); break;
}
//
- // Rule 328: array_modifier ::= [ constant_expression ]
+ // Rule 320: enum_specifier ::= enum enum_specifier_hook { <openscope-ast> enumerator_list_opt comma_opt }
//
- case 328: { action. consumeDirectDeclaratorArrayModifier(true); break;
+ case 320: { action. consumeTypeSpecifierEnumeration(false); break;
}
//
- // Rule 329: array_modifier ::= [ ]
+ // Rule 321: enum_specifier ::= enum enum_specifier_hook identifier_token { <openscope-ast> enumerator_list_opt comma_opt }
//
- case 329: { action. consumeDirectDeclaratorArrayModifier(false); break;
+ case 321: { action. consumeTypeSpecifierEnumeration(true); break;
}
//
- // Rule 330: ptr_operator ::= pointer_hook * pointer_hook <openscope-ast> cv_qualifier_seq_opt
+ // Rule 327: enumerator_definition ::= identifier_token
//
- case 330: { action. consumePointer(); break;
+ case 327: { action. consumeEnumerator(false); break;
}
//
- // Rule 331: ptr_operator ::= pointer_hook & pointer_hook
+ // Rule 328: enumerator_definition ::= identifier_token = constant_expression
//
- case 331: { action. consumeReferenceOperator(); break;
+ case 328: { action. consumeEnumerator(true); break;
}
//
- // Rule 332: ptr_operator ::= dcolon_opt nested_name_specifier pointer_hook * pointer_hook <openscope-ast> cv_qualifier_seq_opt
+ // Rule 330: namespace_definition ::= namespace namespace_name namespace_definition_hook { <openscope-ast> declaration_seq_opt }
//
- case 332: { action. consumePointerToMember(); break;
+ case 330: { action. consumeNamespaceDefinition(true); break;
}
//
- // Rule 339: cv_qualifier ::= const
+ // Rule 331: namespace_definition ::= namespace namespace_definition_hook { <openscope-ast> declaration_seq_opt }
//
- case 339: { action. consumeToken(); break;
+ case 331: { action. consumeNamespaceDefinition(false); break;
}
//
- // Rule 340: cv_qualifier ::= volatile
+ // Rule 333: namespace_alias_definition ::= namespace identifier_token = dcolon_opt nested_name_specifier_opt namespace_name ;
//
- case 340: { action. consumeToken(); break;
+ case 333: { action. consumeNamespaceAliasDefinition(); break;
}
//
- // Rule 342: declarator_id_name ::= dcolon_opt nested_name_specifier_opt type_name
+ // Rule 334: using_declaration ::= using typename_opt dcolon_opt nested_name_specifier_opt unqualified_id_name ;
//
- case 342: { action. consumeQualifiedId(false); break;
+ case 334: { action. consumeUsingDeclaration(); break;
}
//
- // Rule 343: type_id ::= type_specifier_seq
+ // Rule 335: typename_opt ::= typename
//
- case 343: { action. consumeTypeId(false); break;
+ case 335: { action. consumePlaceHolder(); break;
}
//
- // Rule 344: type_id ::= type_specifier_seq abstract_declarator
+ // Rule 336: typename_opt ::= $Empty
//
- case 344: { action. consumeTypeId(true); break;
+ case 336: { action. consumeEmpty(); break;
}
//
- // Rule 347: abstract_declarator ::= <openscope-ast> ptr_operator_seq
+ // Rule 337: using_directive ::= using namespace dcolon_opt nested_name_specifier_opt namespace_name ;
//
- case 347: { action. consumeDeclaratorWithPointer(false); break;
+ case 337: { action. consumeUsingDirective(); break;
}
//
- // Rule 348: abstract_declarator ::= <openscope-ast> ptr_operator_seq direct_abstract_declarator
+ // Rule 338: asm_definition ::= asm ( stringlit ) ;
//
- case 348: { action. consumeDeclaratorWithPointer(true); break;
+ case 338: { action. consumeDeclarationASM(); break;
}
//
- // Rule 352: basic_direct_abstract_declarator ::= ( abstract_declarator )
+ // Rule 339: linkage_specification ::= extern stringlit { <openscope-ast> declaration_seq_opt }
//
- case 352: { action. consumeDirectDeclaratorBracketed(); break;
+ case 339: { action. consumeLinkageSpecification(); break;
}
//
- // Rule 353: basic_direct_abstract_declarator ::= ( )
+ // Rule 340: linkage_specification ::= extern stringlit <openscope-ast> declaration
//
- case 353: { action. consumeAbstractDeclaratorEmpty(); break;
+ case 340: { action. consumeLinkageSpecification(); break;
}
//
- // Rule 354: array_direct_abstract_declarator ::= array_modifier
+ // Rule 345: init_declarator_complete ::= init_declarator
//
- case 354: { action. consumeDirectDeclaratorArrayDeclarator(false); break;
+ case 345: { action. consumeInitDeclaratorComplete(); break;
}
//
- // Rule 355: array_direct_abstract_declarator ::= array_direct_abstract_declarator array_modifier
+ // Rule 347: init_declarator ::= complete_declarator initializer
//
- case 355: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
+ case 347: { action. consumeDeclaratorWithInitializer(true); break;
}
//
- // Rule 356: array_direct_abstract_declarator ::= basic_direct_abstract_declarator array_modifier
+ // Rule 350: declarator ::= <openscope-ast> ptr_operator_seq direct_declarator
//
- case 356: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
+ case 350: { action. consumeDeclaratorWithPointer(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 352: function_declarator ::= <openscope-ast> ptr_operator_seq direct_declarator
//
- case 357: { action. consumeDirectDeclaratorFunctionDeclarator(true); break;
+ case 352: { action. consumeDeclaratorWithPointer(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 356: basic_direct_declarator ::= declarator_id_name
//
- case 358: { action. consumeDirectDeclaratorFunctionDeclarator(false); break;
+ case 356: { action. consumeDirectDeclaratorIdentifier(); break;
}
//
- // Rule 359: parameter_declaration_clause ::= parameter_declaration_list_opt ...
+ // Rule 357: basic_direct_declarator ::= ( declarator )
//
- case 359: { action. consumePlaceHolder(); break;
+ case 357: { action. consumeDirectDeclaratorBracketed(); break;
}
//
- // Rule 360: parameter_declaration_clause ::= parameter_declaration_list_opt
+ // Rule 358: function_direct_declarator ::= basic_direct_declarator ( <openscope-ast> parameter_declaration_clause ) <openscope-ast> cv_qualifier_seq_opt <openscope-ast> exception_specification_opt
//
- case 360: { action. consumeEmpty(); break;
+ case 358: { action. consumeDirectDeclaratorFunctionDeclarator(true); break;
}
//
- // Rule 361: parameter_declaration_clause ::= parameter_declaration_list , ...
+ // Rule 359: array_direct_declarator ::= array_direct_declarator array_modifier
//
- case 361: { action. consumePlaceHolder(); break;
+ case 359: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
}
//
- // Rule 367: abstract_declarator_opt ::= $Empty
+ // Rule 360: array_direct_declarator ::= basic_direct_declarator array_modifier
//
- case 367: { action. consumeEmpty(); break;
+ case 360: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
}
//
- // Rule 368: parameter_declaration ::= declaration_specifiers parameter_init_declarator
+ // Rule 361: array_modifier ::= [ constant_expression ]
//
- case 368: { action. consumeParameterDeclaration(); break;
+ case 361: { action. consumeDirectDeclaratorArrayModifier(true); break;
}
//
- // Rule 369: parameter_declaration ::= declaration_specifiers
+ // Rule 362: array_modifier ::= [ ]
//
- case 369: { action. consumeParameterDeclarationWithoutDeclarator(); break;
+ case 362: { action. consumeDirectDeclaratorArrayModifier(false); break;
}
//
- // Rule 371: parameter_init_declarator ::= declarator = parameter_initializer
+ // Rule 363: ptr_operator ::= pointer_hook * pointer_hook <openscope-ast> cv_qualifier_seq_opt
//
- case 371: { action. consumeDeclaratorWithInitializer(true); break;
+ case 363: { action. consumePointer(); break;
}
//
- // Rule 373: parameter_init_declarator ::= abstract_declarator = parameter_initializer
+ // Rule 364: ptr_operator ::= pointer_hook & pointer_hook
//
- case 373: { action. consumeDeclaratorWithInitializer(true); break;
+ case 364: { action. consumeReferenceOperator(); break;
}
//
- // Rule 374: parameter_init_declarator ::= = parameter_initializer
+ // Rule 365: ptr_operator ::= dcolon_opt nested_name_specifier pointer_hook * pointer_hook <openscope-ast> cv_qualifier_seq_opt
//
- case 374: { action. consumeDeclaratorWithInitializer(false); break;
+ case 365: { action. consumePointerToMember(); break;
}
//
- // Rule 375: parameter_initializer ::= assignment_expression
+ // Rule 372: cv_qualifier ::= const
//
- case 375: { action. consumeInitializer(); break;
+ case 372: { action. consumeToken(); break;
}
//
- // Rule 376: function_definition ::= declaration_specifiers_opt function_declarator <openscope-ast> ctor_initializer_list_opt function_body
+ // Rule 373: cv_qualifier ::= volatile
//
- case 376: { action. consumeFunctionDefinition(false); break;
+ case 373: { action. consumeToken(); break;
}
//
- // Rule 377: function_definition ::= declaration_specifiers_opt function_declarator try <openscope-ast> ctor_initializer_list_opt function_body <openscope-ast> handler_seq
+ // Rule 375: declarator_id_name ::= dcolon_opt nested_name_specifier_opt type_name
//
- case 377: { action. consumeFunctionDefinition(true); break;
+ case 375: { action. consumeQualifiedId(false); break;
}
//
- // Rule 380: initializer ::= ( expression_list )
+ // Rule 376: type_id ::= type_specifier_seq
//
- case 380: { action. consumeInitializerConstructor(); break;
+ case 376: { action. consumeTypeId(false); break;
}
//
- // Rule 381: initializer_clause ::= assignment_expression
+ // Rule 377: type_id ::= type_specifier_seq abstract_declarator
//
- case 381: { action. consumeInitializer(); break;
+ case 377: { action. consumeTypeId(true); break;
}
//
- // Rule 382: initializer_clause ::= initializer_list
+ // Rule 380: abstract_declarator ::= <openscope-ast> ptr_operator_seq
//
- case 382: { action. consumeInitializer(); break;
+ case 380: { action. consumeDeclaratorWithPointer(false); break;
}
//
- // Rule 383: initializer_list ::= start_initializer_list { <openscope-ast> initializer_seq , } end_initializer_list
+ // Rule 381: abstract_declarator ::= <openscope-ast> ptr_operator_seq direct_abstract_declarator
//
- case 383: { action. consumeInitializerList(); break;
+ case 381: { action. consumeDeclaratorWithPointer(true); break;
}
//
- // Rule 384: initializer_list ::= start_initializer_list { <openscope-ast> initializer_seq } end_initializer_list
+ // Rule 385: basic_direct_abstract_declarator ::= ( abstract_declarator )
//
- case 384: { action. consumeInitializerList(); break;
+ case 385: { action. consumeDirectDeclaratorBracketed(); break;
}
//
- // Rule 385: initializer_list ::= { <openscope-ast> }
+ // Rule 386: basic_direct_abstract_declarator ::= ( )
//
- case 385: { action. consumeInitializerList(); break;
+ case 386: { action. consumeAbstractDeclaratorEmpty(); break;
}
//
- // Rule 386: start_initializer_list ::= $Empty
+ // Rule 387: array_direct_abstract_declarator ::= array_modifier
//
- case 386: { action. initializerListStart(); break;
+ case 387: { action. consumeDirectDeclaratorArrayDeclarator(false); break;
}
//
- // Rule 387: end_initializer_list ::= $Empty
+ // Rule 388: array_direct_abstract_declarator ::= array_direct_abstract_declarator array_modifier
//
- case 387: { action. initializerListEnd(); break;
+ case 388: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
}
//
- // Rule 392: class_specifier ::= class_head { <openscope-ast> member_declaration_list_opt }
+ // Rule 389: array_direct_abstract_declarator ::= basic_direct_abstract_declarator array_modifier
//
- case 392: { action. consumeClassSpecifier(); break;
+ case 389: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
}
//
- // Rule 393: class_head ::= class_keyword composite_specifier_hook identifier_name_opt class_name_suffix_hook <openscope-ast> base_clause_opt
+ // Rule 390: 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 393: { action. consumeClassHead(false); break;
+ case 390: { action. consumeDirectDeclaratorFunctionDeclarator(true); break;
}
//
- // Rule 394: class_head ::= class_keyword composite_specifier_hook template_id_name class_name_suffix_hook <openscope-ast> base_clause_opt
+ // Rule 391: function_direct_abstract_declarator ::= ( <openscope-ast> parameter_declaration_clause ) <openscope-ast> cv_qualifier_seq_opt <openscope-ast> exception_specification_opt
//
- case 394: { action. consumeClassHead(false); break;
+ case 391: { action. consumeDirectDeclaratorFunctionDeclarator(false); break;
}
//
- // Rule 395: class_head ::= class_keyword composite_specifier_hook nested_name_specifier identifier_name class_name_suffix_hook <openscope-ast> base_clause_opt
+ // Rule 392: parameter_declaration_clause ::= parameter_declaration_list_opt ...
//
- case 395: { action. consumeClassHead(true); break;
+ case 392: { action. consumePlaceHolder(); break;
}
//
- // Rule 396: class_head ::= class_keyword composite_specifier_hook nested_name_specifier template_id_name class_name_suffix_hook <openscope-ast> base_clause_opt
+ // Rule 393: parameter_declaration_clause ::= parameter_declaration_list_opt
//
- case 396: { action. consumeClassHead(true); break;
+ case 393: { action. consumeEmpty(); break;
}
//
- // Rule 400: identifier_name_opt ::= $Empty
+ // Rule 394: parameter_declaration_clause ::= parameter_declaration_list , ...
+ //
+ case 394: { action. consumePlaceHolder(); break;
+ }
+
+ //
+ // Rule 400: abstract_declarator_opt ::= $Empty
//
case 400: { action. consumeEmpty(); break;
+ }
+
+ //
+ // Rule 401: parameter_declaration ::= declaration_specifiers parameter_init_declarator
+ //
+ case 401: { action. consumeParameterDeclaration(); break;
+ }
+
+ //
+ // Rule 402: parameter_declaration ::= declaration_specifiers
+ //
+ case 402: { action. consumeParameterDeclarationWithoutDeclarator(); break;
+ }
+
+ //
+ // Rule 404: parameter_init_declarator ::= declarator = parameter_initializer
+ //
+ case 404: { action. consumeDeclaratorWithInitializer(true); break;
+ }
+
+ //
+ // Rule 406: parameter_init_declarator ::= abstract_declarator = parameter_initializer
+ //
+ case 406: { action. consumeDeclaratorWithInitializer(true); break;
+ }
+
+ //
+ // Rule 407: parameter_init_declarator ::= = parameter_initializer
+ //
+ case 407: { action. consumeDeclaratorWithInitializer(false); break;
+ }
+
+ //
+ // Rule 408: parameter_initializer ::= assignment_expression
+ //
+ case 408: { action. consumeInitializer(); break;
+ }
+
+ //
+ // Rule 409: function_definition ::= declaration_specifiers_opt function_declarator <openscope-ast> ctor_initializer_list_opt function_body
+ //
+ case 409: { action. consumeFunctionDefinition(false); break;
+ }
+
+ //
+ // Rule 410: function_definition ::= declaration_specifiers_opt function_declarator try <openscope-ast> ctor_initializer_list_opt function_body <openscope-ast> handler_seq
+ //
+ case 410: { action. consumeFunctionDefinition(true); break;
+ }
+
+ //
+ // Rule 413: initializer ::= ( expression_list )
+ //
+ case 413: { action. consumeInitializerConstructor(); break;
+ }
+
+ //
+ // Rule 414: initializer_clause ::= assignment_expression
+ //
+ case 414: { action. consumeInitializer(); break;
+ }
+
+ //
+ // Rule 415: initializer_clause ::= initializer_list
+ //
+ case 415: { action. consumeInitializer(); break;
+ }
+
+ //
+ // Rule 416: initializer_list ::= start_initializer_list { <openscope-ast> initializer_seq , } end_initializer_list
+ //
+ case 416: { action. consumeInitializerList(); break;
+ }
+
+ //
+ // Rule 417: initializer_list ::= start_initializer_list { <openscope-ast> initializer_seq } end_initializer_list
+ //
+ case 417: { action. consumeInitializerList(); break;
+ }
+
+ //
+ // Rule 418: initializer_list ::= { <openscope-ast> }
+ //
+ case 418: { action. consumeInitializerList(); break;
+ }
+
+ //
+ // Rule 419: start_initializer_list ::= $Empty
+ //
+ case 419: { action. initializerListStart(); break;
+ }
+
+ //
+ // Rule 420: end_initializer_list ::= $Empty
+ //
+ case 420: { action. initializerListEnd(); break;
+ }
+
+ //
+ // Rule 425: class_specifier ::= class_head { <openscope-ast> member_declaration_list_opt }
+ //
+ case 425: { action. consumeClassSpecifier(); break;
+ }
+
+ //
+ // Rule 426: class_head ::= class_keyword composite_specifier_hook identifier_name_opt class_name_suffix_hook <openscope-ast> base_clause_opt
+ //
+ case 426: { action. consumeClassHead(false); break;
+ }
+
+ //
+ // Rule 427: class_head ::= class_keyword composite_specifier_hook template_id_name class_name_suffix_hook <openscope-ast> base_clause_opt
+ //
+ case 427: { action. consumeClassHead(false); break;
+ }
+
+ //
+ // Rule 428: class_head ::= class_keyword composite_specifier_hook nested_name_specifier identifier_name class_name_suffix_hook <openscope-ast> base_clause_opt
+ //
+ case 428: { action. consumeClassHead(true); break;
+ }
+
+ //
+ // Rule 429: class_head ::= class_keyword composite_specifier_hook nested_name_specifier template_id_name class_name_suffix_hook <openscope-ast> base_clause_opt
+ //
+ case 429: { action. consumeClassHead(true); break;
+ }
+
+ //
+ // Rule 433: identifier_name_opt ::= $Empty
+ //
+ case 433: { action. consumeEmpty(); break;
}
//
- // Rule 404: visibility_label ::= access_specifier_keyword :
+ // Rule 437: visibility_label ::= access_specifier_keyword :
+ //
+ case 437: { action. consumeVisibilityLabel(); break;
+ }
+
+ //
+ // Rule 438: member_declaration ::= declaration_specifiers_opt <openscope-ast> member_declarator_list ;
+ //
+ case 438: { action. consumeDeclarationSimple(true); break;
+ }
+
+ //
+ // Rule 439: member_declaration ::= declaration_specifiers_opt ;
+ //
+ case 439: { action. consumeDeclarationSimple(false); break;
+ }
+
+ //
+ // Rule 442: member_declaration ::= dcolon_opt nested_name_specifier template_opt unqualified_id_name ;
+ //
+ case 442: { action. consumeMemberDeclarationQualifiedId(); break;
+ }
+
+ //
+ // Rule 448: member_declaration ::= ERROR_TOKEN
+ //
+ case 448: { action. consumeDeclarationProblem(); break;
+ }
+
+ //
+ // Rule 457: member_declarator ::= declarator constant_initializer
+ //
+ case 457: { action. consumeMemberDeclaratorWithInitializer(); break;
+ }
+
+ //
+ // Rule 458: member_declarator ::= bit_field_declarator : constant_expression
+ //
+ case 458: { action. consumeBitField(true); break;
+ }
+
+ //
+ // Rule 459: member_declarator ::= : constant_expression
+ //
+ case 459: { action. consumeBitField(false); break;
+ }
+
+ //
+ // Rule 460: bit_field_declarator ::= identifier_name
+ //
+ case 460: { action. consumeDirectDeclaratorIdentifier(); break;
+ }
+
+ //
+ // Rule 461: constant_initializer ::= = constant_expression
+ //
+ case 461: { action. consumeInitializer(); break;
+ }
+
+ //
+ // Rule 467: base_specifier ::= dcolon_opt nested_name_specifier_opt class_name
+ //
+ case 467: { action. consumeBaseSpecifier(false, false); break;
+ }
+
+ //
+ // Rule 468: base_specifier ::= virtual access_specifier_keyword_opt dcolon_opt nested_name_specifier_opt class_name
+ //
+ case 468: { action. consumeBaseSpecifier(true, true); break;
+ }
+
+ //
+ // Rule 469: base_specifier ::= access_specifier_keyword virtual dcolon_opt nested_name_specifier_opt class_name
+ //
+ case 469: { action. consumeBaseSpecifier(true, true); break;
+ }
+
+ //
+ // Rule 470: base_specifier ::= access_specifier_keyword dcolon_opt nested_name_specifier_opt class_name
+ //
+ case 470: { action. consumeBaseSpecifier(true, false); break;
+ }
+
+ //
+ // Rule 471: access_specifier_keyword ::= private
+ //
+ case 471: { action. consumeToken(); break;
+ }
+
+ //
+ // Rule 472: access_specifier_keyword ::= protected
//
- case 404: { action. consumeVisibilityLabel(); break;
+ case 472: { action. consumeToken(); break;
}
//
- // Rule 405: member_declaration ::= declaration_specifiers_opt <openscope-ast> member_declarator_list ;
+ // Rule 473: access_specifier_keyword ::= public
//
- case 405: { action. consumeDeclarationSimple(true); break;
+ case 473: { action. consumeToken(); break;
}
//
- // Rule 406: member_declaration ::= declaration_specifiers_opt ;
+ // Rule 475: access_specifier_keyword_opt ::= $Empty
//
- case 406: { action. consumeDeclarationSimple(false); break;
+ case 475: { action. consumeEmpty(); break;
}
//
- // Rule 409: member_declaration ::= dcolon_opt nested_name_specifier template_opt unqualified_id_name ;
+ // Rule 477: conversion_function_id_name ::= conversion_function_id < <openscope-ast> template_argument_list_opt >
//
- case 409: { action. consumeMemberDeclarationQualifiedId(); break;
+ case 477: { action. consumeTemplateId(); break;
}
//
- // Rule 415: member_declaration ::= ERROR_TOKEN
+ // Rule 478: conversion_function_id ::= operator conversion_type_id
//
- case 415: { action. consumeDeclarationProblem(); break;
+ case 478: { action. consumeConversionName(); break;
}
//
- // Rule 424: member_declarator ::= declarator constant_initializer
+ // Rule 479: conversion_type_id ::= type_specifier_seq conversion_declarator
//
- case 424: { action. consumeMemberDeclaratorWithInitializer(); break;
+ case 479: { action. consumeTypeId(true); break;
}
//
- // Rule 425: member_declarator ::= bit_field_declarator : constant_expression
+ // Rule 480: conversion_type_id ::= type_specifier_seq
//
- case 425: { action. consumeBitField(true); break;
+ case 480: { action. consumeTypeId(false); break;
}
//
- // Rule 426: member_declarator ::= : constant_expression
+ // Rule 481: conversion_declarator ::= <openscope-ast> ptr_operator_seq
//
- case 426: { action. consumeBitField(false); break;
+ case 481: { action. consumeDeclaratorWithPointer(false); break;
}
//
- // Rule 427: bit_field_declarator ::= identifier_name
+ // Rule 487: mem_initializer ::= mem_initializer_name ( expression_list_opt )
//
- case 427: { action. consumeDirectDeclaratorIdentifier(); break;
+ case 487: { action. consumeConstructorChainInitializer(); break;
}
//
- // Rule 428: constant_initializer ::= = constant_expression
+ // Rule 488: mem_initializer_name ::= dcolon_opt nested_name_specifier_opt class_name
//
- case 428: { action. consumeInitializer(); break;
+ case 488: { action. consumeQualifiedId(false); break;
}
//
- // Rule 434: base_specifier ::= dcolon_opt nested_name_specifier_opt class_name
+ // Rule 491: operator_function_id_name ::= operator_id_name < <openscope-ast> template_argument_list_opt >
//
- case 434: { action. consumeBaseSpecifier(false, false); break;
+ case 491: { action. consumeTemplateId(); break;
}
//
- // Rule 435: base_specifier ::= virtual access_specifier_keyword_opt dcolon_opt nested_name_specifier_opt class_name
+ // Rule 492: operator_id_name ::= operator overloadable_operator
//
- case 435: { action. consumeBaseSpecifier(true, true); break;
+ case 492: { action. consumeOperatorName(); break;
}
//
- // Rule 436: base_specifier ::= access_specifier_keyword virtual dcolon_opt nested_name_specifier_opt class_name
+ // Rule 535: template_declaration ::= export_opt template < <openscope-ast> template_parameter_list > declaration
//
- case 436: { action. consumeBaseSpecifier(true, true); break;
+ case 535: { action. consumeTemplateDeclaration(); break;
}
//
- // Rule 437: base_specifier ::= access_specifier_keyword dcolon_opt nested_name_specifier_opt class_name
+ // Rule 536: export_opt ::= export
//
- case 437: { action. consumeBaseSpecifier(true, false); break;
+ case 536: { action. consumePlaceHolder(); break;
}
//
- // Rule 438: access_specifier_keyword ::= private
+ // Rule 537: export_opt ::= $Empty
//
- case 438: { action. consumeToken(); break;
+ case 537: { action. consumeEmpty(); break;
}
//
- // Rule 439: access_specifier_keyword ::= protected
+ // Rule 541: template_parameter ::= parameter_declaration
//
- case 439: { action. consumeToken(); break;
+ case 541: { action. consumeTemplateParamterDeclaration(); break;
}
//
- // Rule 440: access_specifier_keyword ::= public
+ // Rule 542: type_parameter ::= class identifier_name_opt
//
- case 440: { action. consumeToken(); break;
+ case 542: { action. consumeSimpleTypeTemplateParameter(false); break;
}
//
- // Rule 442: access_specifier_keyword_opt ::= $Empty
+ // Rule 543: type_parameter ::= class identifier_name_opt = type_id
//
- case 442: { action. consumeEmpty(); break;
+ case 543: { action. consumeSimpleTypeTemplateParameter(true); break;
}
//
- // Rule 444: conversion_function_id_name ::= conversion_function_id < <openscope-ast> template_argument_list_opt >
+ // Rule 544: type_parameter ::= typename identifier_name_opt
//
- case 444: { action. consumeTemplateId(); break;
+ case 544: { action. consumeSimpleTypeTemplateParameter(false); break;
}
//
- // Rule 445: conversion_function_id ::= operator conversion_type_id
+ // Rule 545: type_parameter ::= typename identifier_name_opt = type_id
//
- case 445: { action. consumeConversionName(); break;
+ case 545: { action. consumeSimpleTypeTemplateParameter(true); break;
}
//
- // Rule 446: conversion_type_id ::= type_specifier_seq conversion_declarator
+ // Rule 546: type_parameter ::= template < <openscope-ast> template_parameter_list > class identifier_name_opt
//
- case 446: { action. consumeTypeId(true); break;
+ case 546: { action. consumeTemplatedTypeTemplateParameter(false); break;
}
//
- // Rule 447: conversion_type_id ::= type_specifier_seq
+ // Rule 547: type_parameter ::= template < <openscope-ast> template_parameter_list > class identifier_name_opt = id_expression
//
- case 447: { action. consumeTypeId(false); break;
+ case 547: { action. consumeTemplatedTypeTemplateParameter(true); break;
}
//
- // Rule 448: conversion_declarator ::= <openscope-ast> ptr_operator_seq
+ // Rule 548: template_id_name ::= identifier_name < <openscope-ast> template_argument_list_opt >
//
- case 448: { action. consumeDeclaratorWithPointer(false); break;
+ case 548: { action. consumeTemplateId(); break;
}
//
- // Rule 454: mem_initializer ::= mem_initializer_name ( expression_list_opt )
+ // Rule 555: nested_name_specifier_inTemplate ::= class_or_namespace_name_inTemplate :: nested_name_specifier_with_template_inTemplate
//
- case 454: { action. consumeConstructorChainInitializer(); break;
+ case 555: { action. consumeNestedNameSpecifier(true); break;
}
//
- // Rule 455: mem_initializer_name ::= dcolon_opt nested_name_specifier_opt class_name
+ // Rule 556: nested_name_specifier_inTemplate ::= class_or_namespace_name_inTemplate ::
//
- case 455: { action. consumeQualifiedId(false); break;
+ case 556: { action. consumeNestedNameSpecifier(false); break;
}
//
- // Rule 458: operator_function_id_name ::= operator_id_name < <openscope-ast> template_argument_list_opt >
+ // Rule 557: nested_name_specifier_with_template_inTemplate ::= class_or_namespace_name_with_template_inTemplate :: nested_name_specifier_with_template_inTemplate
//
- case 458: { action. consumeTemplateId(); break;
+ case 557: { action. consumeNestedNameSpecifier(true); break;
}
//
- // Rule 459: operator_id_name ::= operator overloadable_operator
+ // Rule 558: nested_name_specifier_with_template_inTemplate ::= class_or_namespace_name_with_template_inTemplate ::
//
- case 459: { action. consumeOperatorName(); break;
+ case 558: { action. consumeNestedNameSpecifier(false); break;
}
//
- // Rule 502: template_declaration ::= export_opt template < <openscope-ast> template_parameter_list > declaration
+ // Rule 559: class_or_namespace_name_with_template_inTemplate ::= template_opt class_or_namespace_name_inTemplate
//
- case 502: { action. consumeTemplateDeclaration(); break;
+ case 559: { action. consumeNameWithTemplateKeyword(); break;
}
//
- // Rule 503: export_opt ::= export
+ // Rule 561: nested_name_specifier_opt_inTemplate ::= $Empty
//
- case 503: { action. consumePlaceHolder(); break;
+ case 561: { action. consumeNestedNameSpecifierEmpty(); break;
}
//
- // Rule 504: export_opt ::= $Empty
+ // Rule 564: type_name_specifier_inTemplate ::= typename dcolon_opt nested_name_specifier identifier_name
//
- case 504: { action. consumeEmpty(); break;
+ case 564: { action. consumeQualifiedId(false); break;
}
//
- // Rule 508: template_parameter ::= parameter_declaration
+ // Rule 565: type_name_specifier_inTemplate ::= typename dcolon_opt nested_name_specifier template_opt template_id_name
//
- case 508: { action. consumeTemplateParamterDeclaration(); break;
+ case 565: { action. consumeQualifiedId(true); break;
}
//
- // Rule 509: type_parameter ::= class identifier_name_opt
+ // Rule 570: declaration_specifiers_inTemplate ::= <openscope-ast> simple_declaration_specifiers
//
- case 509: { action. consumeSimpleTypeTemplateParameter(false); break;
+ case 570: { action. consumeDeclarationSpecifiersSimple(); break;
}
//
- // Rule 510: type_parameter ::= class identifier_name_opt = type_id
+ // Rule 571: declaration_specifiers_inTemplate ::= <openscope-ast> class_declaration_specifiers
//
- case 510: { action. consumeSimpleTypeTemplateParameter(true); break;
+ case 571: { action. consumeDeclarationSpecifiersComposite(); break;
}
//
- // Rule 511: type_parameter ::= typename identifier_name_opt
+ // Rule 572: declaration_specifiers_inTemplate ::= <openscope-ast> elaborated_declaration_specifiers
//
- case 511: { action. consumeSimpleTypeTemplateParameter(false); break;
+ case 572: { action. consumeDeclarationSpecifiersComposite(); break;
}
//
- // Rule 512: type_parameter ::= typename identifier_name_opt = type_id
+ // Rule 573: declaration_specifiers_inTemplate ::= <openscope-ast> enum_declaration_specifiers
//
- case 512: { action. consumeSimpleTypeTemplateParameter(true); break;
+ case 573: { action. consumeDeclarationSpecifiersComposite(); break;
}
//
- // Rule 513: type_parameter ::= template < <openscope-ast> template_parameter_list > class identifier_name_opt
+ // Rule 574: declaration_specifiers_inTemplate ::= <openscope-ast> type_name_declaration_specifiers_inTemplate
//
- case 513: { action. consumeTemplatedTypeTemplateParameter(false); break;
+ case 574: { action. consumeDeclarationSpecifiersTypeName(); break;
}
//
- // Rule 514: type_parameter ::= template < <openscope-ast> template_parameter_list > class identifier_name_opt = id_expression
+ // Rule 576: type_id_inTemplate ::= type_specifier_seq_inTemplate
//
- case 514: { action. consumeTemplatedTypeTemplateParameter(true); break;
+ case 576: { action. consumeTypeId(false); break;
}
//
- // Rule 515: template_id_name ::= identifier_name < <openscope-ast> template_argument_list_opt >
+ // Rule 577: type_id_inTemplate ::= type_specifier_seq_inTemplate abstract_declarator
//
- case 515: { action. consumeTemplateId(); break;
+ case 577: { action. consumeTypeId(true); break;
}
//
- // Rule 520: template_argument ::= assignment_expression
+ // Rule 578: template_argument ::= assignment_expression_inTemplate
//
- case 520: { action. consumeTemplateArgumentExpression(); break;
+ case 578: { action. consumeTemplateArgumentExpression(); break;
}
//
- // Rule 521: template_argument ::= type_id
+ // Rule 579: template_argument ::= type_id_inTemplate
//
- case 521: { action. consumeTemplateArgumentTypeId(); break;
+ case 579: { action. consumeTemplateArgumentTypeId(); break;
}
//
- // Rule 522: explicit_instantiation ::= template declaration
+ // Rule 580: explicit_instantiation ::= template declaration
//
- case 522: { action. consumeTemplateExplicitInstantiation(); break;
+ case 580: { action. consumeTemplateExplicitInstantiation(); break;
}
//
- // Rule 523: explicit_specialization ::= template < > declaration
+ // Rule 581: explicit_specialization ::= template < > declaration
//
- case 523: { action. consumeTemplateExplicitSpecialization(); break;
+ case 581: { action. consumeTemplateExplicitSpecialization(); break;
}
//
- // Rule 524: try_block ::= try compound_statement <openscope-ast> handler_seq
+ // Rule 582: try_block ::= try compound_statement <openscope-ast> handler_seq
//
- case 524: { action. consumeStatementTryBlock(true); break;
+ case 582: { action. consumeStatementTryBlock(true); break;
}
//
- // Rule 525: try_block ::= try compound_statement
+ // Rule 583: try_block ::= try compound_statement
//
- case 525: { action. consumeStatementTryBlock(false); break;
+ case 583: { action. consumeStatementTryBlock(false); break;
}
//
- // Rule 528: handler ::= catch ( exception_declaration ) compound_statement
+ // Rule 586: handler ::= catch ( exception_declaration ) compound_statement
//
- case 528: { action. consumeStatementCatchHandler(false); break;
+ case 586: { action. consumeStatementCatchHandler(false); break;
}
//
- // Rule 529: handler ::= catch ( ... ) compound_statement
+ // Rule 587: handler ::= catch ( ... ) compound_statement
//
- case 529: { action. consumeStatementCatchHandler(true); break;
+ case 587: { action. consumeStatementCatchHandler(true); break;
}
//
- // Rule 530: exception_declaration ::= type_specifier_seq <openscope-ast> declarator
+ // Rule 588: exception_declaration ::= type_specifier_seq <openscope-ast> declarator
//
- case 530: { action. consumeDeclarationSimple(true); break;
+ case 588: { action. consumeDeclarationSimple(true); break;
}
//
- // Rule 531: exception_declaration ::= type_specifier_seq <openscope-ast> abstract_declarator
+ // Rule 589: exception_declaration ::= type_specifier_seq <openscope-ast> abstract_declarator
//
- case 531: { action. consumeDeclarationSimple(true); break;
+ case 589: { action. consumeDeclarationSimple(true); break;
}
//
- // Rule 532: exception_declaration ::= type_specifier_seq
+ // Rule 590: exception_declaration ::= type_specifier_seq
//
- case 532: { action. consumeDeclarationSimple(false); break;
+ case 590: { action. consumeDeclarationSimple(false); break;
}
//
- // Rule 534: exception_specification ::= throw ( )
+ // Rule 592: exception_specification ::= throw ( )
//
- case 534: { action. consumePlaceHolder(); break;
+ case 592: { action. consumePlaceHolder(); break;
}
//
- // Rule 540: no_cast_start ::= ERROR_TOKEN
+ // Rule 598: no_cast_start ::= ERROR_TOKEN
//
- case 540: { action. consumeEmpty(); break;
+ case 598: { action. consumeEmpty(); 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 da02ccb0e1..61aedec412 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
@@ -51,500 +51,633 @@ public class CPPNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
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,2,1,3,1,0,
- 1,0,1,1,0,1,1,1,1,1,
- 1,1,1,1,3,4,3,2,1,4,
- 2,1,2,5,7,5,1,4,1,0,
- 5,7,2,8,1,1,2,2,3,2,
- 3,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,2,1,0,
- 4,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,
+ 3,5,3,3,1,3,3,1,3,1,
+ 3,1,3,1,3,1,3,1,5,1,
+ 1,3,3,3,3,3,3,3,3,3,
+ 3,3,1,2,1,1,3,3,3,3,
+ 3,3,3,3,3,3,3,1,2,1,
+ 3,1,0,1,0,1,1,0,1,1,
+ 1,1,1,1,1,1,1,3,4,3,
+ 2,1,4,2,1,2,5,7,5,1,
+ 4,1,0,5,7,2,8,1,1,2,
+ 2,3,2,3,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,2,
- 5,6,5,0,1,0,7,8,0,1,
- 3,1,0,1,3,1,7,6,0,7,
- 6,1,0,6,5,6,4,1,3,1,
- 0,1,1,2,1,1,3,1,3,1,
- 1,1,1,3,9,2,2,3,2,5,
- 3,7,0,1,2,2,1,0,1,1,
- 1,3,1,2,1,1,2,3,1,1,
- 1,3,2,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,1,7,6,3,0,0,1,3,1,
- 1,5,6,6,7,7,0,0,1,0,
- 1,1,1,2,4,2,2,1,5,1,
- 1,1,1,1,1,1,2,1,0,1,
- 3,1,1,2,3,2,1,2,2,1,
- 0,1,3,3,5,5,4,1,1,1,
- 1,0,1,5,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,
+ 2,1,0,4,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,3,4,
+ 4,5,2,5,6,5,0,1,0,7,
+ 8,0,1,3,1,0,1,3,1,7,
+ 6,0,7,6,1,0,6,5,6,4,
+ 1,3,1,0,1,1,2,1,1,3,
+ 1,3,1,1,1,1,3,9,2,2,
+ 3,2,5,3,7,0,1,2,2,1,
+ 0,1,1,1,3,1,2,1,1,2,
+ 3,1,1,1,3,2,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,1,7,6,3,0,0,
+ 1,3,1,1,5,6,6,7,7,0,
+ 0,1,0,1,1,1,2,4,2,2,
+ 1,5,1,1,1,1,1,1,1,2,
+ 1,0,1,3,1,1,2,3,2,1,
+ 2,2,1,0,1,3,3,5,5,4,
+ 1,1,1,1,0,1,5,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,2,
- 2,7,1,0,1,3,1,1,2,4,
- 2,4,7,9,5,1,3,1,0,1,
- 1,2,4,4,2,1,2,5,5,3,
- 3,1,4,3,1,0,1,3,1,1,
- -107,0,0,0,-2,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-4,0,0,0,0,0,
- -536,0,0,0,-10,0,0,0,0,0,
- -49,0,0,-54,0,-289,0,0,0,0,
- 0,0,0,0,0,0,0,0,-58,0,
- 0,0,-59,0,-306,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-5,0,
- -414,0,0,0,-187,0,0,0,0,-177,
- 0,0,-16,0,0,0,0,0,0,0,
- 0,0,0,-121,-1,0,0,0,0,0,
- 0,-176,0,0,0,0,0,0,0,0,
- 0,0,0,-62,0,0,0,0,0,0,
- -262,0,-357,0,0,-271,0,0,0,0,
- 0,0,-300,-50,0,0,0,0,0,0,
- 0,0,0,0,-114,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-57,0,0,0,0,0,
- 0,0,0,-116,0,0,0,-118,0,-275,
- 0,-135,0,0,0,-234,-317,0,0,0,
- 0,0,0,-115,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-104,-61,0,
- 0,0,0,0,0,0,0,0,-6,0,
- 0,-126,0,0,0,0,0,-68,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-7,0,0,
- -224,0,0,0,-130,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-53,-196,
- 0,0,0,0,-389,0,0,-181,-162,-8,
- 0,0,0,0,0,0,0,0,0,0,
- 0,-9,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,
- 0,0,0,-128,0,0,0,0,0,0,
- 0,0,-11,-165,0,0,0,0,0,0,
- -105,-170,0,0,-51,0,0,0,0,-12,
- 0,0,-69,0,0,0,-129,0,0,0,
- 0,0,0,0,0,0,0,0,-166,0,
- -513,0,0,0,0,0,0,0,0,0,
+ 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,3,
+ 1,0,1,1,3,2,3,2,2,1,
+ 0,1,1,4,5,2,1,2,2,2,
+ 2,2,2,2,1,1,2,1,1,2,
+ 4,4,2,1,2,5,5,3,3,1,
+ 4,3,1,0,1,3,1,1,-107,0,
+ 0,0,0,-2,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-4,-309,0,0,-207,
+ 0,0,0,0,0,0,0,-5,0,0,
+ -6,-286,0,0,0,-58,0,0,0,0,
+ -165,-7,-428,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-198,0,0,0,0,
+ -51,-18,0,0,0,0,-114,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-8,0,0,0,-106,-506,0,
+ 0,0,0,0,0,0,0,-53,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,-460,0,0,-68,0,0,0,0,
+ -9,0,0,0,0,0,0,0,-126,0,
+ 0,0,0,0,-176,0,0,0,-115,0,
+ 0,0,0,0,0,0,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,0,0,0,-522,0,-561,-264,0,
+ 0,0,0,0,-136,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-311,0,0,
+ 0,0,0,0,0,0,-130,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-265,0,0,0,-69,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-472,0,0,0,0,0,
+ 0,-415,0,0,0,0,0,0,0,0,
+ 0,0,0,-596,0,0,0,0,-117,0,
+ 0,0,0,0,0,0,0,0,0,-192,
+ 0,0,0,0,-196,0,0,0,-259,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-134,0,0,-62,0,
+ 0,0,0,0,0,-325,0,0,0,0,
+ 0,-501,0,0,-11,0,0,0,0,0,
+ 0,-444,0,0,-119,0,0,0,0,0,
+ 0,0,0,0,-571,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,-275,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-177,0,0,
+ 0,-16,0,0,0,0,-61,0,0,0,
+ 0,0,-266,0,0,0,0,-595,0,0,
+ 0,0,-54,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-10,-197,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ -323,0,0,0,0,-89,0,0,0,0,
+ -367,0,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,0,
+ 0,0,0,-502,0,0,0,0,-12,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ -112,-13,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-170,0,0,0,
+ 0,0,-135,0,0,0,-15,0,0,0,
+ 0,0,0,0,0,0,-3,0,0,0,
+ 0,-121,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-49,0,0,
+ 0,0,0,0,0,0,0,0,-493,0,
+ 0,0,0,-88,0,0,0,0,-28,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,-260,-29,0,-526,0,0,0,0,0,
+ 0,0,-337,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,-123,
+ -30,0,0,-50,0,0,0,0,0,0,
+ 0,-31,0,0,0,-235,0,0,0,0,
+ -166,-380,0,0,0,0,-368,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-57,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ -128,0,0,-495,0,0,0,0,-381,0,
+ 0,0,0,-59,0,0,0,0,0,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,-33,0,0,
+ -273,0,0,0,0,-104,-340,0,-39,0,
+ 0,0,0,-409,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-34,0,0,0,0,
+ 0,0,0,0,0,0,0,-129,0,0,
+ -279,0,0,0,0,0,0,-440,-41,0,
+ 0,0,0,-105,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-132,0,0,0,
+ -142,0,0,0,0,0,0,-216,0,0,
+ -326,0,0,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,-377,0,0,0,0,0,0,
+ 0,0,0,0,-402,0,0,-529,0,0,
+ 0,0,-92,0,0,0,0,-113,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-530,0,0,0,0,-93,
+ 0,0,0,0,-137,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ -418,-357,0,0,0,0,0,0,-423,0,
+ 0,-280,0,0,0,0,-94,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,-195,-35,0,0,0,0,0,
+ 0,0,0,0,0,-540,0,0,-287,0,
+ 0,0,0,-95,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,0,
+ -206,-36,0,0,0,0,0,0,0,0,
+ 0,0,-480,0,0,-327,0,0,0,0,
+ -96,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,-220,-37,0,
+ 0,0,0,0,0,0,0,0,0,-38,
+ 0,0,-347,0,0,0,0,-97,0,0,
+ 0,0,-371,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-40,0,0,-270,-269,
+ 0,0,0,0,0,0,-462,0,0,-369,
+ 0,0,0,0,-98,0,0,0,0,-274,
+ 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,
+ 0,0,0,-261,0,0,-390,0,0,0,
+ 0,-99,0,0,0,0,-281,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-308,-55,
+ 0,0,-56,0,0,0,0,0,0,0,
+ -262,0,0,-400,-288,-356,0,0,-100,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-13,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-537,0,0,0,-15,0,
+ 0,0,0,0,0,0,-447,0,0,0,
+ -63,0,0,0,-475,0,0,0,0,0,
+ -461,0,0,0,0,-101,0,0,0,0,
+ -289,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,-321,-64,0,0,-66,0,0,0,
+ 0,0,0,0,-67,0,0,-350,0,0,
+ -222,0,-163,0,0,0,0,-319,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-132,
- 0,0,0,-28,-113,0,0,0,-163,0,
- 0,0,-119,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-411,
+ -116,-108,0,0,0,0,0,0,-329,0,
+ 0,-333,0,0,-214,0,0,0,0,-354,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-395,0,0,0,0,0,0,
- 0,-103,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-434,0,0,
+ 0,-436,0,0,-379,0,0,0,0,-109,
+ 0,-246,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,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,-229,0,-322,
+ -313,0,0,0,0,0,0,0,-110,-320,
+ 0,0,0,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,
+ 0,0,0,0,-277,-111,0,0,0,-413,
+ 0,0,0,0,0,0,-446,0,0,-341,
+ -324,0,0,-118,0,0,0,0,0,0,
+ 0,0,-131,-492,0,0,-435,0,0,0,
+ 0,0,0,-248,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,-443,0,-416,0,0,-14,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-316,
+ 0,-392,0,0,0,0,0,0,0,-249,
+ 0,0,0,0,-143,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-290,0,-363,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-468,0,-120,0,0,-457,0,
+ 0,0,0,0,-328,-463,-450,-410,0,0,
+ 0,0,0,0,0,-250,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,-556,-291,0,-374,0,0,0,0,
+ 0,0,0,0,-405,0,0,0,0,0,
+ 0,-145,0,-146,0,0,0,0,0,0,
+ -147,0,0,-421,0,0,0,0,0,0,
+ 0,-251,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,-564,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-353,0,0,0,0,
+ 0,0,-510,0,-148,0,-572,0,0,-537,
+ 0,0,0,0,0,0,0,-252,0,0,
+ 0,0,-149,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-346,0,0,-336,0,0,
+ 0,0,0,0,0,0,0,0,0,-430,
+ 0,0,0,-464,0,0,-583,-361,0,0,
+ 0,0,0,0,-476,0,0,-150,0,0,
+ 0,0,0,-253,0,0,0,0,-431,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ -348,-151,0,-138,0,0,0,0,-152,0,
+ 0,0,0,0,0,0,0,0,0,-355,
+ 0,0,0,-365,-570,0,-470,0,0,-378,
+ 0,0,-422,0,0,0,0,0,0,-254,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-140,
+ 0,0,0,0,-153,0,0,0,0,0,
+ 0,0,-366,0,0,0,0,0,-384,0,
+ -453,0,-382,0,0,0,-533,0,-499,-154,
0,0,0,0,0,-255,0,0,0,0,
- 0,0,0,0,0,-123,0,0,-29,-297,
- 0,0,0,0,0,-272,0,0,-17,0,
- -137,-142,0,-30,-444,0,0,0,0,0,
+ -155,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-349,0,-393,0,0,0,0,
+ 0,0,0,0,0,0,-388,-156,0,0,
+ 0,0,0,0,-471,-594,-527,0,0,0,
+ 0,-483,-157,0,0,0,0,0,0,0,
+ 0,-256,0,0,0,0,0,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,-141,0,0,0,-3,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,-433,0,0,0,0,0,0,0,0,
+ 0,0,-412,-158,-391,-43,0,-122,0,0,
+ 0,-394,0,0,-159,0,0,-586,-587,-395,
+ -160,-536,0,0,0,0,0,-352,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-228,0,0,0,0,0,0,0,
- 0,0,-31,0,0,0,0,0,0,0,
- 0,-319,0,0,0,-32,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-351,-557,0,-397,0,0,
+ 0,0,0,0,-161,0,-201,0,0,0,
+ -399,-167,0,-168,0,0,0,0,0,0,
+ -169,0,-419,0,0,0,0,0,0,0,
+ 0,0,0,-589,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-184,0,0,0,0,-322,0,0,0,
- -257,-33,0,0,0,-283,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-34,
+ -425,0,0,0,-449,0,0,0,0,0,
+ 0,0,-479,0,0,0,-385,-417,-172,0,
+ -376,0,0,0,0,-448,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-334,0,0,0,-335,0,
- 0,0,0,-35,0,0,0,0,0,0,
- -323,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,
- -386,0,0,0,0,0,0,0,0,-36,
- -205,0,0,-18,0,0,0,0,-324,0,
- 0,0,-37,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-482,
+ 0,0,-403,0,0,0,0,-173,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-285,
+ 0,-174,0,-474,0,0,0,0,0,0,
+ 0,-478,0,0,-487,-490,0,-504,-515,0,
+ 0,-524,-525,-532,-175,-600,0,-528,0,-414,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-186,-39,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-299,0,0,0,
- 0,0,0,0,0,0,-377,0,0,0,
- 0,0,0,0,0,-41,0,0,0,-38,
+ 0,0,0,0,0,-178,0,0,-531,0,
+ 0,-438,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-535,0,
+ -182,0,0,0,0,0,0,-183,0,0,
+ -554,0,0,-184,-185,0,-186,0,0,0,
+ -538,-551,-187,-188,-210,0,0,0,-439,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-40,0,0,0,0,
- -342,0,0,0,-55,0,0,0,-91,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-124,0,-189,0,0,
+ 0,0,0,0,-190,0,0,0,0,0,
+ -513,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-56,0,0,0,0,0,-188,0,
- 0,0,-405,0,0,0,0,-197,-337,0,
- 0,-92,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-558,-191,-194,
+ 0,0,0,0,0,0,0,0,0,-567,
+ 0,0,-575,-202,0,-552,-559,0,-180,-579,
+ -584,-203,-209,0,0,0,0,-103,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-202,0,0,0,0,
- 0,0,0,0,0,0,-376,0,0,0,
- -344,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,-217,0,0,-227,
+ 0,0,0,-592,0,0,-599,-228,-534,-258,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-195,0,0,0,0,0,
- 0,0,0,-207,-219,0,0,-94,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-236,0,-48,0,
+ 0,-420,0,0,-267,0,0,-162,-278,-282,
+ -345,0,-284,-296,0,0,0,0,0,0,
+ 0,0,-297,0,-298,-299,0,0,0,-300,
+ 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,0,0,0,0,-301,
+ 0,-302,0,-303,-304,0,0,0,-563,0,
+ -245,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-209,0,0,0,0,-220,0,0,
- -95,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-70,-305,0,
+ -306,-307,0,0,0,0,-312,-314,-315,-330,
+ -334,-335,-338,0,-339,0,-358,0,-359,0,
+ 0,0,0,-364,0,0,-372,-47,0,0,
+ 0,0,-181,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -229,0,0,0,0,-478,0,0,0,-233,
- -221,0,0,-96,0,0,0,0,0,0,
+ 0,-373,-389,-404,-406,-426,-429,-442,0,-565,
+ 0,0,-243,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-455,
+ 0,-456,0,-458,-459,-485,-230,-465,-467,-473,
+ 0,-481,-488,-489,-512,-514,-516,0,-517,0,
+ -518,-370,0,-569,0,-573,0,-244,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-240,-296,0,0,-97,0,0,0,
+ 0,0,0,0,0,-519,0,0,-521,-539,
+ -541,-542,-544,-549,-553,-560,-568,-577,-585,-590,
+ -601,0,0,0,0,0,0,0,-574,0,
+ -85,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -63,0,0,0,0,0,0,0,0,0,
- -469,-303,0,0,0,-247,0,0,0,-98,
+ 0,-593,-598,0,-240,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-211,0,0,0,0,0,0,
- 0,0,0,0,-385,0,0,0,-248,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,0,0,-64,0,0,0,
- 0,0,0,0,0,0,-528,-399,0,0,
- 0,-249,0,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,0,-298,
+ 0,0,-86,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -66,0,0,0,-250,-286,0,0,-101,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-87,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-67,0,0,0,0,0,0,0,
- 0,0,-529,-254,0,0,0,0,-108,0,
- 0,-203,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-327,0,0,0,0,
- 0,0,0,0,0,0,-267,0,0,0,
- 0,-109,0,0,-531,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,0,0,0,0,0,0,0,-320,0,
- 0,0,0,0,-268,0,0,0,0,-270,
- 0,0,0,0,-279,0,0,-345,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,-454,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-242,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-498,0,0,0,0,0,-274,0,0,
- 0,0,-110,0,0,0,-356,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,-282,0,0,0,
- 0,-360,0,0,0,-223,0,0,0,-435,
- 0,0,0,-131,-380,0,0,0,0,0,
+ 0,0,0,0,-193,0,0,0,-164,-200,
+ 0,0,0,0,0,-17,-292,0,-293,0,
0,0,0,0,0,0,0,0,0,0,
+ -231,0,0,0,0,0,0,0,0,0,
+ 0,0,-232,0,0,-233,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,0,0,0,0,0,0,0,-143,-287,
- 0,0,0,-381,0,0,0,0,0,0,
0,0,0,0,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,0,-232,0,0,0,-437,0,0,0,
- -145,-455,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,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-146,-292,0,0,0,
- -90,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-80,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-147,0,0,0,0,0,
- 0,0,0,0,-138,0,0,0,-294,0,
- 0,0,0,0,0,0,0,-148,-88,0,
0,0,0,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,-347,0,
- 0,-89,0,0,0,-149,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-150,0,0,0,0,
- 0,-151,0,-85,0,0,0,-152,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,-265,0,0,
- 0,0,0,-86,0,0,0,-153,0,0,
+ 0,0,0,0,0,0,0,0,-237,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-154,0,0,
- 0,0,-87,0,0,0,-314,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-355,0,0,0,
- 0,-396,0,0,0,0,0,0,0,0,
- 0,0,0,0,-79,0,0,0,-155,0,
+ 0,0,0,0,0,-238,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-156,0,
- 0,0,-71,-310,-365,0,0,-140,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,0,0,0,0,0,0,-378,
- 0,0,0,0,0,-157,-80,0,0,0,
+ 0,0,-239,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-283,
0,0,0,0,0,0,0,0,0,0,
- -465,0,0,0,0,-158,-471,0,0,0,
- -472,0,0,0,0,0,0,-538,0,0,
+ 0,0,-295,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-354,0,-238,0,0,0,-159,0,0,
- 0,0,0,0,-266,0,-81,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-343,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-362,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-102,
0,0,0,0,0,0,0,0,0,0,
- -160,0,0,0,-82,0,0,0,-161,0,
+ 0,-375,-494,0,0,0,0,0,0,0,
+ -276,-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,-167,0,
- 0,0,-242,0,0,0,0,0,0,0,
- 0,0,0,0,0,-290,-47,0,0,0,
- 0,-168,-321,-305,0,0,0,0,0,0,
- 0,0,0,0,0,0,-295,-190,0,0,
- 0,0,0,0,-112,-52,0,0,0,-136,
- 0,0,0,-169,-127,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-172,-236,
- 0,-48,0,0,0,0,-173,-102,0,0,
+ 0,0,0,0,0,0,0,-1,0,0,
0,0,0,0,0,0,0,0,0,0,
- -239,0,0,0,0,0,0,0,0,0,
- 0,0,0,-328,0,-174,-388,0,0,-106,
- 0,0,0,0,-373,0,-392,0,-343,0,
- 0,0,-175,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-20,0,
+ 0,0,0,-52,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-359,0,0,-178,
- -201,0,0,0,0,-179,0,0,0,0,
- 0,0,0,0,0,0,-180,0,0,0,
- 0,0,0,0,0,0,0,0,0,-183,
- 0,0,0,0,0,0,-120,0,0,0,
- -83,0,0,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,-311,0,0,-84,0,0,
- 0,-191,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-580,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-433,0,0,-164,0,-212,0,0,0,
- 0,-304,0,-390,-117,0,-182,0,0,0,
- -246,0,0,0,0,0,-308,0,0,-192,
- 0,0,0,0,0,-418,0,-412,0,-453,
- 0,0,0,0,0,-198,0,0,0,0,
- 0,0,0,0,0,0,0,0,-309,-206,
- 0,0,0,0,-259,0,0,-216,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,-325,0,0,0,0,0,0,0,-363,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-217,0,0,0,0,
- 0,0,0,0,0,-530,0,0,0,0,
- 0,0,0,0,0,0,0,0,-74,0,
- 0,0,-351,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-326,0,0,0,-331,-427,
- -244,-333,0,0,0,0,-226,0,-336,-434,
- 0,0,0,-413,0,0,0,0,0,0,
- 0,-237,0,0,0,-204,0,0,0,0,
- 0,0,0,-330,0,0,0,-364,0,0,
- 0,0,0,0,0,0,-475,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,0,0,0,0,-139,0,0,
- 0,0,0,0,0,-273,0,0,0,0,
- 0,0,0,0,0,0,-424,0,0,-462,
- 0,0,-241,0,0,0,0,-291,-243,0,
- -352,0,0,-452,0,-122,-253,0,0,0,
- 0,0,0,0,-258,0,0,0,0,0,
- 0,0,0,0,0,0,0,-485,0,0,
- -353,0,0,-260,-425,0,0,0,0,0,
- 0,0,0,0,0,0,-339,-261,-313,0,
- 0,0,-293,0,0,0,0,0,0,0,
- 0,0,0,0,0,-487,0,0,0,0,
- 0,0,0,0,0,0,0,-470,0,0,
- 0,0,0,0,-372,0,0,0,-276,0,
- -404,0,0,0,0,0,0,0,0,0,
- 0,0,0,-504,0,0,-280,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,-312,0,0,0,-341,0,-281,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,-518,0,0,-542,0,0,-284,-235,-285,
- 0,0,0,0,0,0,0,0,0,0,
- -361,-499,-421,-367,0,0,0,0,-473,0,
- 0,0,0,0,0,0,0,0,0,-520,
- 0,0,-391,0,0,-422,0,0,0,0,
- 0,-301,0,0,0,0,0,0,0,-302,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-134,0,0,
- -278,0,0,-307,0,0,0,0,0,0,
- 0,0,0,0,0,0,-171,0,0,0,
- -185,0,0,0,-464,0,0,0,0,0,
- 0,0,0,0,0,-522,0,0,0,0,
- 0,0,0,0,0,0,0,0,-362,-70,
- 0,0,0,0,-490,0,-468,0,0,0,
- 0,0,-524,-416,0,0,0,0,-402,0,
- 0,0,0,0,-403,0,0,-124,0,0,
- -350,-231,0,0,0,0,0,-358,0,-245,
- 0,0,0,0,0,0,0,0,-315,0,
- 0,0,0,-406,-43,0,-316,0,0,0,
- 0,0,0,0,0,0,0,0,0,-332,
- -382,0,-227,0,0,0,-346,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,-446,-420,0,-539,0,0,0,0,-457,
- 0,0,0,0,0,0,-476,0,0,0,
- 0,-441,0,0,0,0,0,0,0,0,
- 0,0,-213,-443,0,0,0,0,-526,0,
- 0,0,0,0,0,-429,0,0,0,0,
+ 0,0,0,0,0,-83,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-544,0,0,-466,0,-467,-199,0,0,
0,0,0,0,0,0,0,0,0,0,
- -348,-368,-480,-44,0,0,0,0,-493,0,
- -432,0,0,-371,0,-474,-384,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-477,0,
- 0,0,0,-269,0,0,-494,0,0,0,
- 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,-77,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,
+ 0,0,-84,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-21,
- 0,0,0,-397,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-491,
+ -127,0,0,0,0,0,0,-344,0,0,
+ -219,0,0,0,0,0,0,-223,-383,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-22,0,0,0,-398,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-23,0,0,0,-400,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-24,0,
- 0,0,-401,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-25,0,0,0,-407,0,0,0,0,
+ 0,-511,0,0,0,0,0,0,-523,0,
+ -408,-133,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,-409,0,
+ -211,0,0,0,0,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,-415,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -60,0,0,0,-423,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-72,0,0,0,-430,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-73,0,0,0,
- -431,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-193,
- 0,0,0,-454,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-379,0,0,0,0,0,0,0,
- 0,0,0,0,0,-482,-445,0,0,0,
- 0,0,0,0,0,0,0,0,0,-19,
- 0,0,0,-456,0,0,0,0,0,0,
+ -588,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-74,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-366,-214,-458,-215,0,0,-251,0,-459,
- -460,0,0,0,0,-394,0,0,-501,0,
- -496,-448,0,0,0,0,0,0,0,0,
- 0,0,0,-461,0,-463,-500,0,-505,0,
- 0,-481,0,0,0,-514,0,0,0,0,
- 0,-483,0,0,0,0,0,0,-479,0,
- 0,-509,0,0,0,0,0,0,0,0,
- 0,-507,0,-189,0,0,0,0,-484,0,
- 0,0,0,-14,0,0,0,0,-442,0,
- 0,0,0,0,0,0,0,-511,0,0,
- 0,-486,-45,0,-410,0,0,0,0,0,
- -512,-517,0,-491,0,0,0,0,0,0,
- 0,0,-515,-277,0,-516,0,0,0,0,
- 0,0,-525,-495,-533,0,0,0,0,0,
- 0,0,0,0,-125,0,0,0,0,0,
- -502,-510,0,0,-519,-527,0,0,0,0,
- 0,0,-532,0,0,-521,0,0,0,0,
- -543,0,0,0,0,-383,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,-534,0,-263,0,
+ -75,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-535,0,-540,0,0,0,0,-541,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,-369,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-387,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-230,0,0,0,0,0,
+ 0,0,0,-139,0,0,0,0,0,0,
+ -171,0,0,0,0,0,-212,0,0,0,
+ 0,0,0,-520,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-224,0,
+ -44,0,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,-419,0,0,0,0,0,0,0,
+ 0,0,0,0,-386,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-543,-225,0,
+ 0,0,0,0,0,0,-268,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-288,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-428,0,
0,0,0,0,0,0,0,0,0,0,
- -252,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,0,
+ 0,0,0,0,0,0,0,0,0,-545,
+ 0,-548,0,0,0,0,0,-271,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-370,0,0,0,0,0,
- 0,0,0,0,0,0,0,-436,0,-523,
- -222,0,0,0,0,0,0,0,0,0,
- -264,0,0,0,0,0,-208,0,0,-46,
- 0,0,0,0,0,0,-329,0,0,0,
- 0,0,0,0,0,0,0,-133,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-340,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-349,0,
+ 0,-591,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,-562,0,0,0,0,0,0,-226,-342,
+ 0,0,0,0,0,-498,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,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-387,0,0,0,
- 0,0,0,-408,0,0,0,-411,0,0,
+ 0,0,0,-576,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-45,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-426,0,0,0,0,-438,0,0,0,
- -374,0,0,0,0,0,0,0,0,0,
+ 0,0,-407,0,0,0,0,0,-257,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-508,0,0,0,0,0,0,
- 0,0,-439,0,0,0,0,0,0,-447,
- 0,0,0,0,0,0,-449,0,-42,0,
- 0,-65,0,0,0,0,0,-200,0,0,
- 0,-440,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-578,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-445,0,0,0,0,0,
+ -331,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,
- -210,0,0,0,-256,0,0,0,0,0,
- 0,0,-489,0,0,0,0,-492,0,-194,
- 0,0,0,0,0,0,0,-450,0,-451,
+ 0,0,0,0,0,0,0,-582,0,0,
+ 0,0,0,0,-581,0,0,0,0,0,
+ 0,-46,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-466,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-597,
0,0,0,0,0,0,0,0,0,0,
- -497,0,-503,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,-469,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,-602,0,0,0,0,0,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,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ -77,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,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-179,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,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,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,0,0,0,
- 0,0,0
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 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,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,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,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,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-60,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,-72,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-73,0,0,0,0,
+ 0,0,0,0,0,0,0,0,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,-437,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-19,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-424,0,0,-508,
+ -42,0,0,0,0,0,-234,0,0,0,
+ 0,0,0,-452,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-500,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-484,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,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-125,0,0,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,0,0,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,0,0,0,0,0,0,
+ -310,0,0,0,0,0,0,0,0,0,
+ 0,-441,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,-317,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,-396,-509,0,0,0,0,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,0,0,-496,0,0,0,0,
+ 0,-566,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-451,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ -477,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-432,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,0,0,0,0,0,0,0,
+ -486,0,0,0,0,0,0,0,0,0,
+ -497,0,0,0,0,0,0,0,0,0,
+ -263,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-507,0,0,0,0,0,
+ 0,0,0,0,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,
+ 0,-65,0,0,0,0,0,0,0,0,
+ 0,-555,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-546,0,-547,
+ 0,-550,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,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;
@@ -554,551 +687,691 @@ public class CPPNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface BaseAction {
public final static char baseAction[] = {
- 176,4,137,82,82,34,34,68,68,39,
- 39,43,43,202,1,1,16,16,16,16,
+ 191,5,154,94,94,31,31,80,80,39,
+ 39,42,42,218,1,1,16,16,16,16,
16,16,16,17,17,17,15,11,11,6,
- 6,6,6,6,6,2,66,66,5,5,
- 12,12,45,45,138,138,139,57,57,44,
+ 6,6,6,6,6,2,75,75,4,4,
+ 12,12,44,44,155,155,156,67,67,43,
18,18,18,18,18,18,18,18,18,18,
18,18,18,18,18,18,18,18,18,18,
- 140,140,140,114,114,19,19,19,19,19,
+ 157,157,157,131,131,19,19,19,19,19,
19,19,19,19,19,19,19,19,20,20,
- 177,177,178,178,179,143,143,144,144,141,
- 141,145,142,142,21,21,22,23,23,23,
- 25,25,25,25,26,26,26,27,27,27,
- 28,28,28,28,28,29,29,29,31,31,
- 32,32,33,33,36,36,37,37,38,38,
- 42,42,41,41,41,41,41,41,41,41,
- 41,41,41,41,41,40,30,146,146,96,
- 96,180,180,91,203,203,69,69,69,69,
- 69,69,69,69,69,70,70,70,67,67,
- 56,56,181,181,71,71,71,102,102,182,
- 182,72,72,72,72,183,183,73,73,73,
- 73,73,74,74,83,83,83,83,83,83,
- 83,83,51,51,51,51,51,115,115,113,
- 113,52,184,24,24,24,24,24,49,49,
- 86,86,86,86,86,153,153,148,148,148,
- 148,148,149,149,149,150,150,150,151,151,
- 151,152,152,152,87,87,87,87,87,88,
- 88,88,13,14,14,14,14,14,14,14,
- 14,14,14,14,97,119,119,119,119,119,
- 119,117,117,117,154,155,155,118,118,185,
- 157,157,156,156,121,121,103,80,80,122,
- 54,48,158,158,55,53,85,85,159,159,
- 147,147,123,124,124,125,77,77,160,160,
- 64,64,64,61,61,60,65,65,76,76,
- 59,59,59,50,89,89,99,98,98,63,
- 63,62,62,58,58,46,100,100,100,92,
- 92,92,93,93,94,94,94,95,95,104,
- 104,104,106,106,105,105,204,204,90,90,
- 187,187,187,187,187,127,47,47,162,186,
- 186,128,128,129,129,129,130,164,188,188,
- 35,35,116,131,131,131,131,190,108,107,
- 107,120,120,120,165,166,166,166,166,166,
- 166,166,166,166,166,166,192,192,189,189,
- 191,191,167,168,168,168,168,169,193,110,
- 109,109,194,194,170,170,170,170,101,101,
- 101,195,195,8,8,9,196,196,197,171,
- 161,161,172,172,173,174,174,7,7,10,
- 198,198,198,198,198,198,198,198,198,198,
- 198,198,198,198,198,198,198,198,198,198,
- 198,198,198,198,198,198,198,198,198,198,
- 198,198,198,198,198,198,198,198,198,198,
- 198,198,78,81,81,175,175,133,133,134,
- 134,134,134,134,134,3,135,135,132,132,
- 111,111,84,79,75,75,163,163,112,112,
- 199,199,199,136,136,126,126,200,200,176,
- 176,1119,35,2754,2722,1791,3467,27,30,31,
- 995,1019,26,28,2699,262,25,23,50,1054,
- 106,76,77,107,1139,73,1233,1154,1282,1246,
- 1334,150,1310,1393,1380,155,274,1480,1506,142,
- 2717,49,157,143,1618,695,1892,35,950,32,
- 4557,4443,27,30,31,995,1019,341,28,587,
- 1941,2164,34,1618,232,1869,35,950,32,3531,
- 4443,27,30,31,995,1019,341,28,500,71,
- 353,587,35,1887,391,2275,1223,235,230,231,
- 587,35,3066,1504,35,950,32,24,275,41,
- 30,31,995,1019,1229,2253,321,2200,323,1199,
- 316,1946,587,35,2164,3028,434,242,245,248,
- 251,644,354,2804,1312,321,2200,323,1721,316,
- 1946,322,1063,587,3549,155,1476,3549,346,969,
- 934,351,2804,135,49,539,1644,565,754,2975,
- 738,2907,3236,3528,4245,2320,35,950,32,2746,
- 1384,27,30,31,995,1019,26,28,933,262,
- 25,23,50,1054,106,76,77,107,1139,345,
- 1233,1154,1282,1246,1334,49,1310,1393,1380,835,
- 742,1480,1506,142,1446,384,520,143,1225,2977,
- 2493,2810,1718,35,950,32,1631,1631,40,30,
- 31,995,1019,521,2320,35,950,32,2746,1384,
- 27,30,31,995,1019,26,28,933,262,25,
- 23,50,1054,106,76,77,107,1139,345,1233,
- 1154,1282,1246,1334,2900,1310,1393,1380,1618,1547,
- 1480,1506,142,334,291,520,143,290,1432,1592,
- 2810,232,327,35,280,1559,516,4174,1217,35,
- 950,32,521,3198,27,30,31,995,1019,57,
- 28,545,69,878,244,230,231,2870,1766,1812,
- 2876,69,2467,3557,3471,2320,35,950,32,2746,
- 1384,27,30,31,995,1019,26,28,933,262,
- 25,23,50,1054,106,76,77,107,1139,345,
- 1233,1154,1282,1246,1334,516,1310,1393,1380,1088,
- 2125,1480,1506,142,3379,1906,520,143,2038,1446,
- 1853,2810,88,2977,2977,102,2887,740,3538,2876,
- 3319,3319,2086,521,2528,35,950,32,2746,1384,
- 27,30,31,995,1019,26,28,933,262,25,
- 23,50,1054,106,76,77,107,1139,345,1233,
- 1154,1282,1246,1334,1088,1310,1393,1380,2900,2900,
- 1480,1506,142,1377,1456,520,143,335,334,2027,
- 2810,1618,327,35,280,1603,516,4811,61,734,
- 2229,501,521,1381,35,950,32,1088,3198,27,
- 30,31,995,1019,56,28,4568,2990,3146,1877,
- 2876,2663,35,950,32,68,1384,27,30,31,
- 995,1019,26,28,933,262,25,23,50,1054,
- 106,76,77,107,1139,2230,1233,1154,1282,1246,
- 1334,358,1310,1393,1380,517,463,1480,1506,142,
- 355,535,381,143,3709,2389,35,950,32,2246,
- 1384,27,30,31,995,1019,26,28,933,262,
- 25,23,50,1054,106,76,77,107,1139,462,
- 1233,1154,1282,1246,1334,356,1310,1393,1380,93,
- 1088,1480,1506,142,2249,1618,381,143,3709,2837,
- 35,950,32,1611,1384,27,30,31,995,1019,
- 26,28,933,262,25,23,50,1054,106,76,
- 77,107,1139,3375,1233,1154,1282,1246,1334,53,
- 1310,1393,1380,60,2075,1480,3020,163,4413,388,
- 382,1726,3127,35,950,32,1272,1384,27,30,
- 31,995,1019,26,28,933,262,25,23,50,
- 1054,106,76,77,107,1139,752,1233,1154,1282,
- 1246,1334,4030,1310,1393,1380,241,3593,2679,413,
- 1800,329,446,389,382,1726,587,35,283,49,
- 1381,1618,1088,1199,1449,2595,35,950,32,3629,
- 1384,27,30,31,995,1019,26,28,933,262,
- 25,23,50,1054,106,76,77,107,1139,155,
- 1233,1154,1282,1246,1334,87,1310,1393,1380,603,
- 1906,1480,1506,142,392,1618,381,143,3709,2892,
- 35,950,32,1325,1384,27,30,31,995,1019,
- 26,28,933,262,25,23,50,1054,106,76,
- 77,107,1139,1611,1233,1154,1282,1246,1334,52,
- 1310,1393,1380,64,51,1480,1506,142,330,337,
- 157,143,3127,35,950,32,2288,1384,27,30,
- 31,995,1019,26,28,933,262,25,23,50,
- 1054,106,76,77,107,1139,2070,1233,1154,1282,
- 1246,1334,49,1310,1393,1380,4531,1800,1480,3020,
- 163,1621,330,379,382,1726,2892,35,950,32,
- 1549,1384,27,30,31,995,1019,26,28,933,
- 262,25,23,50,1054,106,76,77,107,1139,
- 494,1233,1154,1282,1246,1334,357,1310,1393,1380,
- 407,625,1480,1506,142,1800,535,375,143,1718,
- 35,950,32,2152,1243,2535,30,31,995,1019,
- 1325,2892,35,950,32,565,1384,27,30,31,
- 995,1019,26,28,933,262,25,23,50,1054,
- 106,76,77,107,1139,2448,1233,1154,1282,1246,
- 1334,1951,1310,1393,1380,3391,337,1480,1506,142,
- 400,1088,375,143,2156,35,1887,391,1325,2892,
- 35,950,32,1409,1384,27,30,31,995,1019,
- 26,28,933,262,25,23,50,1054,106,76,
- 77,107,1139,374,1233,1154,1282,1246,1334,49,
- 1310,1393,1380,336,337,1480,1506,142,1801,664,
- 375,143,155,2461,35,950,32,3573,1384,27,
- 30,31,995,1019,26,28,933,262,25,23,
- 50,1054,106,76,77,107,1139,1611,1233,1154,
- 1282,1246,1334,328,1310,1393,1380,1611,373,1480,
- 1506,142,441,2065,141,143,2892,35,950,32,
- 1105,1384,27,30,31,995,1019,26,28,933,
- 262,25,23,50,1054,106,76,77,107,1139,
- 3129,1233,1154,1282,1246,1334,1620,1310,1393,1380,
- 3554,2519,1480,1506,142,416,371,158,143,2892,
- 35,950,32,378,1384,27,30,31,995,1019,
- 26,28,933,262,25,23,50,1054,106,76,
- 77,107,1139,1447,1233,1154,1282,1246,1334,155,
- 1310,1393,1380,1611,4385,1480,1506,142,1618,1611,
- 154,143,2892,35,950,32,3134,1384,27,30,
- 31,995,1019,26,28,933,262,25,23,50,
- 1054,106,76,77,107,1139,1336,1233,1154,1282,
- 1246,1334,90,1310,1393,1380,3554,2519,1480,1506,
- 142,2556,3394,153,143,2892,35,950,32,378,
- 1384,27,30,31,995,1019,26,28,933,262,
- 25,23,50,1054,106,76,77,107,1139,376,
- 1233,1154,1282,1246,1334,49,1310,1393,1380,746,
- 405,1480,1506,142,1618,56,152,143,2892,35,
- 950,32,742,1384,27,30,31,995,1019,26,
- 28,933,262,25,23,50,1054,106,76,77,
- 107,1139,1467,1233,1154,1282,1246,1334,352,1310,
- 1393,1380,450,49,1480,1506,142,3121,56,151,
- 143,2892,35,950,32,3237,1384,27,30,31,
- 995,1019,26,28,933,262,25,23,50,1054,
- 106,76,77,107,1139,3681,1233,1154,1282,1246,
- 1334,49,1310,1393,1380,676,1611,1480,1506,142,
- 1618,56,150,143,2892,35,950,32,331,1384,
- 27,30,31,995,1019,26,28,933,262,25,
- 23,50,1054,106,76,77,107,1139,1553,1233,
- 1154,1282,1246,1334,2108,1310,1393,1380,450,4137,
- 1480,1506,142,1618,56,149,143,2892,35,950,
- 32,1984,1384,27,30,31,995,1019,26,28,
- 933,262,25,23,50,1054,106,76,77,107,
- 1139,1174,1233,1154,1282,1246,1334,2147,1310,1393,
- 1380,1611,155,1480,1506,142,1618,4582,148,143,
- 2892,35,950,32,3122,1384,27,30,31,995,
- 1019,26,28,933,262,25,23,50,1054,106,
- 76,77,107,1139,1864,1233,1154,1282,1246,1334,
- 67,1310,1393,1380,3554,2631,1480,1506,142,1618,
- 4668,147,143,2892,35,950,32,4121,1384,27,
- 30,31,995,1019,26,28,933,262,25,23,
- 50,1054,106,76,77,107,1139,2686,1233,1154,
- 1282,1246,1334,66,1310,1393,1380,1611,155,1480,
- 1506,142,1618,4682,146,143,2892,35,950,32,
- 742,1384,27,30,31,995,1019,26,28,933,
- 262,25,23,50,1054,106,76,77,107,1139,
- 1312,1233,1154,1282,1246,1334,65,1310,1393,1380,
- 3554,1324,1480,1506,142,1618,2559,145,143,2892,
- 35,950,32,529,1384,27,30,31,995,1019,
- 26,28,933,262,25,23,50,1054,106,76,
- 77,107,1139,1445,1233,1154,1282,1246,1334,64,
- 1310,1393,1380,1611,49,1480,1506,142,1140,160,
- 144,143,2892,35,950,32,1329,1384,27,30,
- 31,995,1019,26,28,933,262,25,23,50,
- 1054,106,76,77,107,1139,2488,1233,1154,1282,
- 1246,1334,326,1310,1393,1380,3554,49,1480,1506,
- 142,2534,246,139,143,3011,35,950,32,528,
- 1384,27,30,31,995,1019,26,28,933,262,
- 25,23,50,1054,106,76,77,107,1139,1088,
- 1233,1154,1282,1246,1334,49,1310,1393,1380,2935,
- 49,1480,1506,142,3279,666,188,143,3127,35,
- 950,32,742,1384,27,30,31,995,1019,26,
- 28,933,262,25,23,50,1054,106,76,77,
- 107,1139,1906,1233,1154,1282,1246,1334,49,1310,
- 1393,1380,747,590,1480,3020,163,3127,35,950,
- 32,848,1384,27,30,31,995,1019,26,28,
- 933,262,25,23,50,1054,106,76,77,107,
- 1139,97,1233,1154,1282,1246,1334,49,1310,1393,
- 1380,1277,1088,1480,3020,163,587,35,2645,2428,
- 587,35,1887,391,2687,3127,35,950,32,426,
- 1384,27,30,31,995,1019,26,28,933,262,
- 25,23,50,1054,106,76,77,107,1139,70,
- 1233,1154,1282,1246,1334,455,1310,1393,1380,408,
- 1964,1480,3020,163,3127,35,950,32,295,1384,
- 27,30,31,995,1019,26,28,933,262,25,
- 23,50,1054,106,76,77,107,1139,325,1233,
- 1154,1282,1246,1334,98,1310,1393,1380,535,580,
- 1480,3020,163,587,35,2164,277,587,35,1887,
- 391,1015,3182,35,950,32,425,1384,27,30,
- 31,995,1019,26,28,933,262,25,23,50,
- 1054,106,76,77,107,1139,327,1233,1154,1282,
- 1246,1334,437,1310,1393,1380,1234,1618,1480,3020,
- 163,3127,35,950,32,428,1384,27,30,31,
- 995,1019,26,28,933,262,25,23,50,1054,
- 106,76,77,107,1139,1378,1233,1154,1282,1246,
- 1334,3119,1310,1393,2638,1785,35,950,32,1618,
- 4758,27,30,31,995,1019,59,28,846,3127,
- 35,950,32,4202,1384,27,30,31,995,1019,
- 26,28,933,262,25,23,50,1054,106,76,
- 77,107,1139,55,1233,1154,1282,1246,1334,2720,
- 1310,2576,3127,35,950,32,932,1384,27,30,
- 31,995,1019,26,28,933,262,25,23,50,
- 1054,106,76,77,107,1139,1311,1233,1154,1282,
- 1246,1334,1548,2606,3127,35,950,32,1591,1384,
- 27,30,31,995,1019,26,28,933,262,25,
- 23,50,1054,106,76,77,107,1139,69,1233,
- 1154,1282,1246,2458,3127,35,950,32,1679,1384,
- 27,30,31,995,1019,26,28,933,262,25,
- 23,50,1054,106,76,77,107,1139,1278,1233,
- 1154,1282,2509,3127,35,950,32,2585,1384,27,
- 30,31,995,1019,26,28,933,262,25,23,
- 50,1054,106,76,77,107,1139,752,1233,1154,
- 1282,2529,1522,35,950,32,3531,4599,27,30,
- 31,995,1019,341,28,3127,35,950,32,2429,
- 1384,27,30,31,995,1019,26,28,933,262,
- 25,23,50,1054,106,76,77,107,1139,2562,
- 1233,1154,2338,49,2437,1795,2987,1199,1785,35,
- 950,32,2900,4758,27,30,31,995,1019,58,
- 28,334,321,2200,323,287,316,1946,1718,35,
- 950,32,424,155,3321,30,31,995,1019,315,
- 327,35,456,1152,409,4664,1707,3127,35,950,
- 32,2819,1384,27,30,31,995,1019,26,28,
- 933,262,25,23,50,1054,106,76,77,107,
- 1139,2560,1233,1154,2376,1199,2139,587,35,1887,
- 391,587,35,1887,391,308,312,3416,2347,35,
- 950,32,2487,4758,27,30,31,995,1019,26,
- 28,155,2585,514,587,3337,2164,74,486,3393,
- 200,3717,436,393,430,2695,435,3127,35,950,
- 32,3965,1384,27,30,31,995,1019,26,28,
- 933,262,25,23,50,1054,106,76,77,107,
- 1139,2066,1233,1154,2396,3127,35,950,32,1127,
- 1384,27,30,31,995,1019,26,28,933,262,
- 25,23,50,1054,106,76,77,107,1139,2050,
- 1233,1154,2402,2067,35,950,32,2716,4443,27,
- 30,31,995,1019,341,28,1446,587,35,1887,
- 391,2977,3327,666,1401,35,3671,32,3531,4599,
- 27,30,31,995,1019,341,28,1618,587,35,
- 1887,391,449,3896,3919,1280,3237,35,1887,391,
- 1352,2755,49,3019,1457,674,35,1887,391,237,
- 262,1801,2745,321,2200,323,2900,316,1946,2132,
- 2411,54,1355,274,2900,334,1199,2225,49,354,
- 3380,274,1199,334,321,2200,323,2807,316,1946,
- 49,1101,35,2164,3359,346,969,934,351,1801,
- 2942,2369,159,3378,1618,3154,2235,752,155,232,
- 2151,652,2738,2819,879,1706,3658,752,2671,1956,
- 35,950,32,2350,4599,27,30,31,995,1019,
- 341,28,235,230,231,276,3658,71,324,3127,
- 35,950,32,275,1384,27,30,31,995,1019,
- 26,28,933,262,25,23,50,1054,106,76,
- 77,85,242,245,248,251,644,1618,1055,2900,
- 1267,757,35,1887,391,288,761,1063,335,321,
- 2200,323,630,319,1946,298,354,1726,42,3006,
- 368,420,422,3577,2975,738,2907,3236,3528,4245,
- 1226,101,346,969,934,351,274,1240,44,3006,
- 344,3127,35,950,32,1601,1384,27,30,31,
- 995,1019,26,28,933,262,25,23,50,1054,
- 106,76,77,107,1139,2437,1233,2408,3127,35,
- 950,32,2085,1384,27,30,31,995,1019,26,
- 28,933,262,25,23,50,1054,106,76,77,
- 107,1139,259,1233,2438,2555,541,49,3142,4547,
- 232,1199,2384,1812,1618,3353,1511,587,35,1887,
- 391,1101,35,2164,277,72,228,49,239,262,
- 2310,3093,155,247,230,231,752,155,155,353,
- 1,179,3600,4687,541,3554,2416,1816,3514,203,
- 215,4515,49,202,212,213,214,216,168,49,
- 2280,1801,1645,3231,228,1244,35,296,2418,167,
- 155,182,166,169,170,171,172,173,232,179,
- 3600,354,49,3554,394,430,3499,203,215,4515,
- 1800,202,212,213,214,216,168,346,969,934,
- 351,240,230,231,297,1644,2419,167,180,183,
- 166,169,170,171,172,173,2077,35,950,32,
- 2716,4443,27,30,31,995,1019,341,28,3127,
- 35,950,32,2437,1384,27,30,31,995,1019,
- 26,28,933,262,25,23,50,1054,106,76,
- 77,107,1139,1325,2199,587,35,1887,391,49,
- 2650,1879,49,3050,2746,2746,3158,2289,683,49,
- 843,35,456,4102,155,4664,321,2200,323,4733,
- 316,1946,2491,3000,2703,2703,1980,1457,3413,337,
- 274,2977,354,530,1364,35,950,32,1800,4599,
- 27,30,31,995,1019,341,28,752,346,969,
- 934,351,3127,35,950,32,531,1384,27,30,
- 31,995,1019,26,28,933,262,25,23,50,
- 1054,106,76,77,107,1139,2900,2239,929,35,
- 1887,391,396,430,2900,335,587,35,2164,279,
- 508,362,342,335,321,2200,323,1618,317,1946,
- 345,1325,354,2226,541,2287,3223,3229,2643,2143,
- 354,2437,2746,49,2213,306,1610,2516,348,969,
- 934,351,1801,1586,228,2155,348,969,934,351,
- 155,3592,2703,506,507,2871,332,337,431,179,
- 3600,2447,541,3554,2694,155,4657,203,215,4515,
- 4740,202,212,213,214,216,168,49,2153,1476,
- 3549,4691,228,587,35,2164,3570,167,155,4214,
- 166,169,170,171,172,173,517,179,3600,232,
- 541,3554,453,3896,3919,203,215,4515,1618,202,
- 212,213,214,216,168,1244,3827,296,363,1988,
- 228,1795,250,230,231,167,155,177,166,169,
- 170,171,172,173,603,179,3600,2696,541,3554,
- 395,430,454,203,215,4515,526,202,212,213,
- 214,216,168,587,35,2164,282,49,228,2557,
- 301,1597,1855,167,155,175,166,169,170,171,
- 172,173,689,179,3600,150,541,3554,2424,1446,
- 2450,203,215,4515,2977,202,212,213,214,216,
- 168,49,752,1795,49,875,228,4066,4116,1979,
- 290,167,155,176,166,169,170,171,172,173,
- 775,179,3600,49,541,3554,1356,1190,683,203,
- 215,4515,2417,202,212,213,214,216,168,2900,
- 2697,432,221,533,228,2632,3557,1457,3451,167,
- 155,186,166,169,170,171,172,173,49,179,
- 3600,2241,1199,3554,2586,3687,2977,203,215,4515,
- 385,202,212,213,214,216,168,2216,35,1887,
- 391,1016,35,3127,1365,587,3679,167,1558,4263,
- 166,169,170,171,172,173,1695,35,950,32,
- 3531,4443,27,30,31,995,1019,341,28,1879,
- 1355,2900,49,2746,1199,2560,49,587,4234,541,
- 3451,1801,1844,861,49,1801,2156,541,3612,1016,
- 35,399,94,2703,2738,1016,35,399,1784,4162,
- 159,1446,2375,35,278,155,2977,228,2493,383,
- 2444,35,278,155,179,3600,321,2200,323,2703,
- 316,1946,179,3600,1882,49,3554,2658,2962,2746,
- 203,215,4515,315,202,212,213,214,216,168,
- 2623,1777,195,929,35,1887,391,2711,831,345,
- 167,2900,191,166,169,170,171,172,173,362,
- 334,232,1795,49,96,947,1195,4189,3206,541,
- 1795,2810,314,2974,3223,3229,3283,1618,49,308,
- 312,3416,1800,1989,253,230,231,1801,47,228,
- 4276,3237,181,49,49,155,3988,1199,1199,2240,
- 3714,305,4011,4307,179,3600,49,742,3554,178,
- 4747,380,203,215,4515,3965,202,212,213,214,
- 216,168,1033,155,3607,1795,541,1795,587,35,
- 1887,391,167,1859,185,166,169,170,171,172,
- 173,1738,2726,1795,49,1325,228,630,2746,1795,
- 89,49,155,102,2734,3234,49,2732,4724,196,
- 2102,179,3600,49,198,3554,197,571,345,203,
- 215,4515,46,202,212,213,214,216,168,49,
- 3686,337,304,3392,2453,35,281,1795,201,167,
- 2810,194,166,169,170,171,172,173,3127,35,
- 950,32,2032,1384,27,30,31,995,1019,26,
- 28,933,262,25,23,50,1054,106,76,77,
- 107,2251,3127,35,950,32,199,1384,27,30,
- 31,995,1019,26,28,933,262,25,23,50,
- 1054,106,76,77,107,2286,3127,35,950,32,
- 3353,1384,27,30,31,995,1019,26,28,933,
- 262,25,23,50,1054,106,76,77,107,2315,
- 3127,1941,950,1973,2738,1384,27,30,31,995,
- 1019,26,28,933,262,25,23,50,1054,106,
- 76,77,84,3127,35,950,32,2739,1384,27,
- 30,31,995,1019,26,28,933,262,25,23,
- 50,1054,106,76,77,83,3127,35,950,32,
- 1713,1384,27,30,31,995,1019,26,28,933,
- 262,25,23,50,1054,106,76,77,82,3127,
- 35,950,32,2743,1384,27,30,31,995,1019,
- 26,28,933,262,25,23,50,1054,106,76,
- 77,81,3127,35,950,32,2753,1384,27,30,
- 31,995,1019,26,28,933,262,25,23,50,
- 1054,106,76,77,80,3127,35,950,32,2759,
- 1384,27,30,31,995,1019,26,28,933,262,
- 25,23,50,1054,106,76,77,79,3127,35,
- 950,32,2761,1384,27,30,31,995,1019,26,
- 28,933,262,25,23,50,1054,106,76,77,
- 78,2956,35,950,32,2754,1384,27,30,31,
- 995,1019,26,28,933,262,25,23,50,1054,
- 106,76,77,104,3127,35,950,32,2794,1384,
- 27,30,31,995,1019,26,28,933,262,25,
- 23,50,1054,106,76,77,109,3127,35,950,
- 32,2795,1384,27,30,31,995,1019,26,28,
- 933,262,25,23,50,1054,106,76,77,108,
- 3127,35,950,32,2796,1384,27,30,31,995,
- 1019,26,28,933,262,25,23,50,1054,106,
- 76,77,105,1992,35,3671,32,3531,4443,27,
- 30,31,995,1019,341,28,2775,1869,35,950,
- 32,3531,4443,27,30,31,995,1019,341,28,
- 3072,35,950,32,2797,1384,27,30,31,995,
- 1019,26,28,933,262,25,23,50,1054,86,
- 76,77,1566,49,87,49,2746,1199,1355,1199,
- 2763,2767,1199,321,2200,323,1827,316,1946,1795,
- 2746,2821,587,35,296,4211,228,321,2200,323,
- 2369,316,1946,155,2768,155,2769,49,159,1618,
- 228,971,1977,1902,315,1945,1016,35,399,205,
- 215,4515,2776,204,212,213,214,216,300,587,
- 35,296,49,205,215,4515,3486,204,212,213,
- 214,216,1618,3372,587,35,1887,391,527,173,
- 206,208,210,3278,2719,217,207,209,2746,1914,
- 309,312,3416,2746,206,208,210,3278,1618,217,
- 207,209,2799,49,2329,2447,3410,2746,345,49,
- 4657,2213,2619,228,2584,2817,3076,4401,1801,3532,
- 421,422,3577,1618,49,3673,1618,345,1199,2996,
- 945,4401,3513,2824,2800,2685,205,215,4515,1199,
- 204,212,213,214,216,3286,35,1887,391,2810,
- 2755,2826,2778,4256,155,2802,2803,1897,238,262,
- 1983,2113,4119,2746,2059,155,1795,206,208,210,
- 3278,1990,217,207,209,161,1956,35,950,32,
- 274,4599,27,30,31,995,1019,341,28,1869,
- 35,950,32,3531,4443,27,30,31,995,1019,
- 341,28,3167,5442,4401,4235,1855,1795,232,1494,
- 35,950,32,2724,4443,27,30,31,995,1019,
- 341,28,1618,526,1618,5442,2900,5442,5442,1795,
- 5442,236,230,231,5442,335,321,2200,323,5442,
- 317,1946,275,2001,5442,527,222,2746,406,321,
- 2200,323,5442,316,1946,1653,4329,5442,3652,2746,
- 5442,243,246,249,252,644,4255,228,192,318,
- 3454,323,5442,5442,4233,433,1063,5442,5442,228,
- 445,5442,459,5442,5442,674,35,1887,391,5442,
- 205,215,4515,5442,204,212,213,214,216,5442,
- 5442,1740,205,215,4515,2746,204,212,213,214,
- 216,5442,5442,2088,5442,4324,5442,2746,5442,5442,
- 49,206,208,210,3278,228,523,207,209,1801,
- 47,5442,5442,206,208,210,3278,228,522,207,
- 209,5442,1146,674,35,1887,391,5442,205,215,
- 4515,5442,204,212,213,214,216,5442,5442,2175,
- 205,215,4515,2746,204,212,213,214,216,2972,
- 5442,1355,5442,1355,5442,1199,5442,1199,49,206,
- 208,210,3278,228,218,207,209,1801,2016,5442,
- 5442,206,208,210,3278,5442,307,207,209,5442,
- 3115,159,5442,159,5442,5442,205,215,4515,5442,
- 204,212,213,214,216,2160,35,950,32,2492,
- 4443,27,30,31,995,1019,341,28,1355,5442,
- 49,1180,1199,5442,1199,2746,4815,206,208,210,
- 3278,1286,502,207,209,2746,4815,1901,5442,5442,
- 49,2746,2977,5442,2746,228,5442,1901,159,5442,
- 155,2746,2977,5442,5442,228,5442,2737,1878,2867,
- 4322,2703,2746,5442,345,318,3454,323,1281,410,
- 4309,2703,929,35,1887,391,5442,5442,1281,410,
- 4309,5442,345,5442,5442,5442,2810,2900,5442,674,
- 35,1887,391,5442,5442,5442,334,2900,2121,411,
- 412,413,3278,5442,870,5442,334,49,5442,411,
- 412,413,3278,5442,3308,5442,1801,47,5442,5442,
- 5442,5442,3245,5442,49,5442,3146,362,5442,2558,
- 5442,5442,3245,1801,3571,5442,3154,362,5442,5442,
- 5442,1773,3223,3229,5442,5442,3115,674,35,1887,
- 391,1773,3223,3229,674,35,1887,391,674,35,
- 1887,391,5442,5442,5442,2972,5442,5442,5442,5442,
- 5442,5442,1649,35,1887,391,5442,674,35,1887,
- 391,2650,49,5442,5442,2746,414,416,5442,49,
- 5442,1801,47,49,5442,5442,414,417,1801,47,
- 5442,5442,1801,47,621,2703,5442,49,5442,5442,
- 1126,2160,49,4541,2721,2247,1801,47,541,5442,
- 5442,1801,47,674,35,1887,391,5442,5442,4122,
- 2168,35,1887,391,2607,5442,1635,2651,345,49,
- 5442,2746,49,541,155,5442,541,5442,587,35,
- 1887,391,2517,5442,187,5442,2746,5442,49,5442,
- 4289,2703,5442,345,5442,49,345,1801,47,155,
- 5442,508,155,5442,1801,47,345,5442,5442,941,
- 2611,5442,603,49,5442,2810,534,4159,2810,5442,
- 5442,5442,1801,664,5442,49,5442,788,2810,541,
- 1151,587,35,1887,391,587,35,1887,391,5442,
- 537,5442,5442,49,505,507,189,541,49,345,
- 49,5442,541,5442,2746,155,5442,508,49,5442,
- 49,5442,2746,5442,2746,187,49,345,5442,5442,
- 49,4289,345,155,345,1801,3540,5442,155,1801,
- 1930,5442,345,187,345,5442,3850,5442,187,4289,
- 5442,49,5442,2810,4289,2746,2810,2746,5442,5442,
- 505,507,5442,5442,2810,5442,2810,5442,1730,5442,
- 5442,5442,5442,5442,5442,345,512,345,510,5442,
- 5442,5442,5442,5442,5442,5442,4266,4139,5442,5442,
- 5442,5442,5442,5442,5442,5442,5442,2810,5442,4212,
- 5442,5442,4142,5442,5442,4172,5442,5442,5442,538,
- 4198,5442,5442,5442,5442,5442,5442,5442,5442,5442,
- 5442,5442,5442,5442,5442,5442,5442,5442,5442,5442,
- 5442,5442,5442,5442,5442,5442,5442,5442,5442,5442,
- 5442,5442,3399,5442,5442,5442,5442,5442,5442,5442,
- 5442,5442,5442,5442,5442,5442,5442,5442,5442,5442,
- 5442,5442,5442,5442,5442,5442,5442,5442,5442,5442,
- 5442,5442,5442,5442,5442,5442,5442,5442,5442,5442,
- 5442,5442,5442,5442,5442,5442,5442,5442,5442,5442,
- 5442,5442,5442,5442,5442,5442,5442,5442,5442,5442,
- 5442,5442,5442,5442,5442,5442,5442,5442,5442,5442,
- 5442,5442,5442,5442,5442,5442,5442,5442,5442,5442,
- 5442,5442,5442,5442,5442,5442,5442,5442,5442,5442,
- 5442,5442,5442,5442,5442,5442,5442,5442,5442,5442,
- 5442,5442,5442,5442,5442,5442,5442,5442,5442,5442,
- 5442,5442,4226,5442,0,39,5457,0,39,5456,
- 0,581,29,0,443,684,0,457,725,0,
- 38,599,0,38,5457,0,38,5456,0,2647,
- 125,0,1,447,0,461,924,0,460,957,
- 0,3448,91,0,581,390,0,35,33,0,
- 32,34,0,39,599,0,1,575,0,1,
- 5715,0,1,5714,0,1,5713,0,1,5712,
- 0,1,5711,0,1,5710,0,1,5709,0,
- 1,5708,0,1,5707,0,1,5706,0,1,
- 5705,0,39,1,5457,0,39,1,5456,0,
- 633,1,0,284,397,0,284,289,0,5676,
- 241,0,5675,241,0,5782,241,0,5781,241,
- 0,5703,241,0,5702,241,0,5701,241,0,
- 5700,241,0,5699,241,0,5698,241,0,5697,
- 241,0,5696,241,0,5715,241,0,5714,241,
- 0,5713,241,0,5712,241,0,5711,241,0,
- 5710,241,0,5709,241,0,5708,241,0,5707,
- 241,0,5706,241,0,5705,241,0,39,5457,
- 241,0,39,5456,241,0,5480,241,0,5457,
- 48,0,5456,48,0,43,5478,0,43,37,
- 0,2647,127,0,2647,126,0,5448,1,0,
- 5447,1,0,2772,237,0,32,391,0,29,
- 390,0,333,448,0,1,92,0,47,37,
- 0,5480,1,0,39,1,0,504,3264,0,
- 5480,1,229,0,39,1,229,0,229,419,
- 0,5457,37,0,5456,37,0,5478,45,0,
- 37,45,0,5457,36,0,5456,36,0,5457,
- 2,37,0,5456,2,37,0,5452,408,0,
- 5451,408,0,1,605,0,1,4184,0,1,
- 599,0,229,418,0,333,95,0,35,73,
- 0,3042,320,0,1,333,0,4108,279,0,
- 504,4355,0,1,229,0,229,220,0,1,
- 3519,0,1,3525,0,229,219,0,5454,1,
- 0,5450,1,0,1,229,4084,0,5451,229,
- 0,4104,229,0,5454,386,0,5453,386,0,
- 4179,229,0,10,12,0,8,10,12,0,
- 4252,193,0,184,3595,0,4271,386,0,8,
- 12,0
+ 192,192,193,193,194,160,160,161,161,158,
+ 158,162,159,159,21,21,22,23,23,23,
+ 24,24,24,24,25,25,25,26,26,26,
+ 30,30,30,30,30,33,33,33,34,34,
+ 35,35,37,37,38,38,40,40,41,41,
+ 45,45,45,45,45,47,47,47,52,52,
+ 54,54,61,61,62,62,63,63,64,64,
+ 65,65,65,65,65,65,65,65,65,65,
+ 65,65,65,29,29,46,46,46,46,46,
+ 46,46,46,46,46,46,46,46,36,28,
+ 163,163,105,105,195,195,104,219,219,82,
+ 82,82,82,82,82,82,82,82,83,83,
+ 83,78,78,66,66,196,196,84,84,84,
+ 116,116,197,197,85,85,85,85,198,198,
+ 86,86,86,86,86,87,87,95,95,95,
+ 95,95,95,95,95,55,55,55,55,55,
+ 132,132,130,130,56,199,27,27,27,27,
+ 27,50,50,69,69,69,69,69,137,137,
+ 133,133,133,133,133,134,134,134,135,135,
+ 135,136,136,136,165,165,165,70,70,70,
+ 70,70,71,71,71,13,14,14,14,14,
+ 14,14,14,14,14,14,14,106,138,138,
+ 138,138,138,138,111,111,111,166,167,167,
+ 112,112,200,169,169,168,168,139,139,117,
+ 92,92,140,58,49,170,170,59,57,97,
+ 97,171,171,164,164,141,142,142,143,89,
+ 89,172,172,76,76,76,73,73,72,77,
+ 77,79,79,68,68,68,53,98,98,108,
+ 107,107,51,51,74,74,81,81,60,109,
+ 109,109,99,99,99,100,100,101,101,101,
+ 102,102,118,118,118,120,120,119,119,220,
+ 220,103,103,202,202,202,202,202,145,48,
+ 48,174,201,201,146,146,147,147,147,148,
+ 176,203,203,32,32,110,114,114,114,114,
+ 205,122,121,121,113,113,113,177,178,178,
+ 178,178,178,178,178,178,178,178,178,207,
+ 207,204,204,206,206,179,180,180,180,180,
+ 181,208,124,123,123,209,209,182,182,182,
+ 182,115,115,115,210,210,8,8,9,211,
+ 211,212,183,173,173,184,184,185,186,186,
+ 7,7,10,213,213,213,213,213,213,213,
+ 213,213,213,213,213,213,213,213,213,213,
+ 213,213,213,213,213,213,213,213,213,213,
+ 213,213,213,213,213,213,213,213,213,213,
+ 213,213,213,213,213,90,93,93,187,187,
+ 150,150,151,151,151,151,151,151,3,152,
+ 152,149,149,188,221,222,222,223,223,224,
+ 225,225,189,190,190,190,190,214,214,214,
+ 126,126,126,126,126,127,128,128,125,125,
+ 96,91,88,88,175,175,129,129,215,215,
+ 215,153,153,144,144,216,216,191,191,1119,
+ 35,2931,2924,4701,1355,27,30,31,1172,1197,
+ 26,28,2922,295,25,23,50,1259,106,76,
+ 77,107,1283,1332,1321,1428,332,2489,176,1421,
+ 1824,307,1705,1466,1799,4231,1752,1810,413,1846,
+ 175,1510,2623,35,311,190,71,2037,2273,34,
+ 265,2025,2046,1638,35,1149,32,4910,3812,27,
+ 30,31,1172,1197,374,28,1405,1850,268,263,
+ 264,1647,1673,35,2034,424,2081,2360,35,1149,
+ 32,672,5349,27,30,31,1172,1197,26,28,
+ 975,295,25,23,50,1259,106,76,77,107,
+ 1283,1332,1321,3168,49,308,161,425,1849,275,
+ 278,281,1212,985,2224,1991,959,1813,3766,71,
+ 35,329,3161,3368,3175,351,3484,356,1818,3174,
+ 388,3183,909,2264,2396,2858,5887,284,3177,3184,
+ 3218,160,578,759,35,432,1543,35,1149,32,
+ 4694,2369,27,30,31,1172,1197,57,28,1537,
+ 35,313,626,3860,3216,71,35,2273,3320,2360,
+ 35,1149,32,672,5349,27,30,31,1172,1197,
+ 26,28,975,295,25,23,50,1259,106,76,
+ 77,107,1283,1332,1321,3168,1038,387,161,2456,
+ 35,311,549,575,3279,579,71,3182,2700,71,
+ 35,2210,2058,4274,3161,1595,3175,379,1341,651,
+ 384,3174,534,3183,93,2598,3126,377,1088,3225,
+ 3177,3184,3218,160,578,378,3181,2360,35,1149,
+ 32,672,5349,27,30,31,1172,1197,26,28,
+ 975,295,25,23,50,1259,106,76,77,107,
+ 1283,1332,1321,3168,3573,159,161,440,3273,2215,
+ 35,1149,32,4694,1766,27,30,31,1172,1197,
+ 56,28,3161,479,3175,71,35,2034,424,3174,
+ 3185,3183,71,3487,549,575,3279,579,3177,3184,
+ 3218,160,578,61,1912,35,1149,32,4531,1257,
+ 27,30,31,1172,1197,26,28,467,3259,547,
+ 1815,3225,272,295,3855,759,35,3365,1053,2570,
+ 35,1149,32,672,5349,27,30,31,1172,1197,
+ 26,28,975,295,25,23,50,1259,106,76,
+ 77,107,1283,1332,1321,3168,56,49,161,1335,
+ 265,1207,549,575,3279,579,1851,3487,1991,809,
+ 42,3283,56,3260,3161,1400,3175,1207,273,263,
+ 264,3174,1556,3183,1729,1488,3282,2033,368,3225,
+ 3177,3184,3218,160,578,2708,35,1149,32,672,
+ 3329,27,30,31,1172,1197,26,28,975,295,
+ 25,23,50,1259,106,76,77,107,1283,1332,
+ 1321,1428,2600,3639,176,1421,60,1704,1705,1466,
+ 1799,324,1752,1810,1193,1846,175,3159,71,35,
+ 3328,414,1559,35,1149,32,865,1520,41,30,
+ 31,1172,1197,843,550,575,3279,579,2428,35,
+ 1149,32,672,2277,27,30,31,1172,1197,26,
+ 28,975,295,25,23,50,1259,106,76,77,
+ 107,1283,1332,1321,1428,147,147,176,1421,3488,
+ 4787,1705,1466,1799,533,1752,1810,474,1846,175,
+ 3159,2693,35,314,414,323,3327,35,1149,32,
+ 672,2634,27,30,31,1172,1197,26,28,975,
+ 295,25,23,50,1259,106,76,77,107,1283,
+ 1332,1321,1428,147,1823,3522,1421,4848,3086,1705,
+ 2854,421,415,2872,2638,35,1149,32,672,2736,
+ 27,30,31,1172,1197,26,28,975,295,25,
+ 23,50,1259,106,76,77,107,1283,1332,1321,
+ 1428,1104,2738,176,1421,2200,1860,1705,1466,1799,
+ 2089,1752,1810,3470,1846,175,3159,1537,35,313,
+ 414,5241,2795,1994,35,1149,32,2765,3281,40,
+ 30,31,1172,1197,422,415,2872,2973,35,1149,
+ 32,672,1938,27,30,31,1172,1197,26,28,
+ 975,295,25,23,50,1259,106,76,77,107,
+ 1283,1332,1321,1428,426,463,176,1421,56,4512,
+ 1705,1466,1799,677,1752,1810,765,1846,175,71,
+ 35,2034,424,190,3327,35,1149,32,672,3735,
+ 27,30,31,1172,1197,26,28,975,295,25,
+ 23,50,1259,106,76,77,107,1283,1332,1321,
+ 1428,488,69,1239,1421,71,3625,1705,1466,2803,
+ 412,415,2872,2973,35,1149,32,672,2524,27,
+ 30,31,1172,1197,26,28,975,295,25,23,
+ 50,1259,106,76,77,107,1283,1332,1321,1428,
+ 1213,1449,176,1421,56,1038,1705,1466,1799,769,
+ 1752,1810,1233,1846,175,3462,1537,35,566,408,
+ 5853,2532,2973,35,1149,32,672,2634,27,30,
+ 31,1172,1197,26,28,975,295,25,23,50,
+ 1259,106,76,77,107,1283,1332,1321,1428,56,
+ 626,176,1421,1193,837,1705,1466,1799,1086,1752,
+ 1810,1818,1846,175,71,35,2034,424,408,2973,
+ 35,1149,32,672,2277,27,30,31,1172,1197,
+ 26,28,975,295,25,23,50,1259,106,76,
+ 77,107,1283,1332,1321,1428,470,925,176,1421,
+ 389,1338,1705,1466,1799,24,1752,1810,55,1846,
+ 175,71,35,2273,310,408,2277,2670,407,2502,
+ 35,1149,32,672,2634,27,30,31,1172,1197,
+ 26,28,975,295,25,23,50,1259,106,76,
+ 77,107,1283,1332,1321,1428,1662,69,176,1421,
+ 427,463,1705,1466,1799,496,1752,1810,1818,1846,
+ 175,71,3471,2273,74,174,1133,406,2345,2973,
+ 35,1149,32,672,2277,27,30,31,1172,1197,
+ 26,28,975,295,25,23,50,1259,106,76,
+ 77,107,1283,1332,1321,1428,359,1818,176,1421,
+ 666,1818,1705,1466,1799,68,1752,1810,1818,1846,
+ 175,71,35,316,404,191,2973,35,1149,32,
+ 672,3462,27,30,31,1172,1197,26,28,975,
+ 295,25,23,50,1259,106,76,77,107,1283,
+ 1332,1321,1428,1193,1818,176,1421,429,463,1705,
+ 1466,1799,495,1752,1810,2491,1846,175,71,35,
+ 2034,424,187,2973,35,1149,32,672,2277,27,
+ 30,31,1172,1197,26,28,975,295,25,23,
+ 50,1259,106,76,77,107,1283,1332,1321,1428,
+ 469,5679,176,1421,438,51,1705,1466,1799,53,
+ 1752,1810,361,1846,175,71,35,2034,424,186,
+ 2973,35,1149,32,672,2277,27,30,31,1172,
+ 1197,26,28,975,295,25,23,50,1259,106,
+ 76,77,107,1283,1332,1321,1428,468,97,176,
+ 1421,1818,241,1705,1466,1799,87,1752,1810,2178,
+ 1846,175,931,35,2273,3472,185,2973,35,1149,
+ 32,672,2277,27,30,31,1172,1197,26,28,
+ 975,295,25,23,50,1259,106,76,77,107,
+ 1283,1332,1321,1428,56,65,176,1421,442,6191,
+ 1705,1466,1799,52,1752,1810,2280,1846,175,931,
+ 35,2273,310,184,2973,35,1149,32,672,2277,
+ 27,30,31,1172,1197,26,28,975,295,25,
+ 23,50,1259,106,76,77,107,1283,1332,1321,
+ 1428,56,228,176,1421,98,1022,1705,1466,1799,
+ 90,1752,1810,2322,1846,175,71,35,2273,312,
+ 183,2973,35,1149,32,672,2277,27,30,31,
+ 1172,1197,26,28,975,295,25,23,50,1259,
+ 106,76,77,107,1283,1332,1321,1428,56,61,
+ 176,1421,2870,3060,1705,1466,1799,385,1752,1810,
+ 1007,1846,175,71,35,2273,3523,182,2973,35,
+ 1149,32,672,2018,27,30,31,1172,1197,26,
+ 28,975,295,25,23,50,1259,106,76,77,
+ 107,1283,1332,1321,1428,585,1334,176,1421,56,
+ 1488,1705,1466,1799,966,1752,1810,2178,1846,175,
+ 71,35,2273,315,181,2973,35,1149,32,672,
+ 2277,27,30,31,1172,1197,26,28,975,295,
+ 25,23,50,1259,106,76,77,107,1283,1332,
+ 1321,1428,2261,147,176,1421,334,4931,1705,1466,
+ 1799,2405,1752,1810,69,1846,175,71,35,2273,
+ 565,180,2973,35,1149,32,672,2277,27,30,
+ 31,1172,1197,26,28,975,295,25,23,50,
+ 1259,106,76,77,107,1283,1332,1321,1428,56,
+ 1348,176,1421,1847,2100,1705,1466,1799,2578,1752,
+ 1810,69,1846,175,2934,2277,1488,364,179,2973,
+ 35,1149,32,672,347,27,30,31,1172,1197,
+ 26,28,975,295,25,23,50,1259,106,76,
+ 77,107,1283,1332,1321,1428,67,1499,176,1421,
+ 2250,233,1705,1466,1799,1499,1752,1810,2862,1846,
+ 175,759,35,432,1939,178,2973,35,1149,32,
+ 672,2277,27,30,31,1172,1197,26,28,975,
+ 295,25,23,50,1259,106,76,77,107,1283,
+ 1332,1321,1428,56,2795,176,1421,1361,1111,1705,
+ 1466,1799,66,1752,1810,1482,1846,175,2731,35,
+ 564,2413,177,2852,35,1149,32,672,159,27,
+ 30,31,1172,1197,26,28,975,295,25,23,
+ 50,1259,106,76,77,107,1283,1332,1321,1428,
+ 1734,1508,1413,1421,5055,3855,1705,1466,1799,2627,
+ 1752,1810,1365,3317,196,2973,35,1149,32,672,
+ 2007,27,30,31,1172,1197,26,28,975,295,
+ 25,23,50,1259,106,76,77,107,1283,1332,
+ 1321,1428,3574,1907,176,1421,1193,2277,1705,1466,
+ 1799,391,1752,1810,3260,1846,175,483,2934,390,
+ 593,139,1537,35,489,2007,5117,362,593,367,
+ 1934,2342,3094,35,1149,32,672,1528,27,30,
+ 31,1172,1197,26,28,975,295,25,23,50,
+ 1259,106,76,77,107,1283,1332,1321,3168,920,
+ 2664,161,1243,35,1149,32,4910,4511,27,30,
+ 31,1172,1197,374,28,2312,2342,3161,3847,3175,
+ 56,1229,35,329,3174,1347,3183,363,370,2112,
+ 3002,272,295,3177,3184,3218,160,172,3094,35,
+ 1149,32,672,70,27,30,31,1172,1197,26,
+ 28,975,295,25,23,50,1259,106,76,77,
+ 107,1283,1332,1321,3168,2555,2132,161,88,265,
+ 2489,102,2933,370,354,2260,356,2489,349,1437,
+ 2701,56,465,3161,1350,3175,3582,273,263,264,
+ 3174,348,3183,2831,2171,35,489,1488,5117,3177,
+ 3184,3218,160,171,3094,35,1149,32,672,3528,
+ 27,30,31,1172,1197,26,28,975,295,25,
+ 23,50,1259,106,76,77,107,1283,1332,1321,
+ 3168,2406,1915,161,2627,265,5179,2734,1662,2594,
+ 3185,483,4274,342,345,1763,482,3568,3569,3161,
+ 320,3175,2723,277,263,264,3174,321,3183,360,
+ 1501,1956,2007,411,378,3177,3184,3218,160,170,
+ 3094,35,1149,32,672,2008,27,30,31,1172,
+ 1197,26,28,975,295,25,23,50,1259,106,
+ 76,77,107,1283,1332,1321,3168,671,2277,161,
+ 1243,35,1149,32,4910,4511,27,30,31,1172,
+ 1197,374,28,2342,1734,3161,1655,3175,5055,147,
+ 44,3283,3174,5836,3183,56,1488,2489,2634,65,
+ 2446,3177,3184,3218,160,169,3094,35,1149,32,
+ 672,2084,27,30,31,1172,1197,26,28,975,
+ 295,25,23,50,1259,106,76,77,107,1283,
+ 1332,1321,3168,1499,2277,161,2600,265,2594,369,
+ 370,409,354,2260,356,2696,349,1437,486,3568,
+ 3569,3161,1423,3175,1645,280,263,264,3174,2987,
+ 3183,1653,411,89,2007,64,102,3177,3184,3218,
+ 160,168,3094,35,1149,32,672,331,27,30,
+ 31,1172,1197,26,28,975,295,25,23,50,
+ 1259,106,76,77,107,1283,1332,1321,3168,2312,
+ 1893,161,1243,35,1149,32,4910,4511,27,30,
+ 31,1172,1197,374,28,2342,69,3161,478,3175,
+ 492,428,463,1728,3174,227,3183,759,35,432,
+ 71,35,329,3177,3184,3218,160,167,3094,35,
+ 1149,32,672,399,27,30,31,1172,1197,26,
+ 28,975,295,25,23,50,1259,106,76,77,
+ 107,1283,1332,1321,3168,2277,466,161,56,2855,
+ 3076,2975,370,2145,354,2260,356,358,349,1437,
+ 1229,3562,329,3161,2626,3175,593,2818,2698,4440,
+ 3174,3628,3183,1954,2314,2489,2787,3470,415,3177,
+ 3184,3218,160,166,3094,35,1149,32,672,2789,
+ 27,30,31,1172,1197,26,28,975,295,25,
+ 23,50,1259,106,76,77,107,1283,1332,1321,
+ 3168,2277,417,161,1729,35,1149,32,4531,2417,
+ 27,30,31,1172,1197,59,28,3277,3629,3161,
+ 1335,3175,584,457,56,1728,3174,147,3183,1444,
+ 1365,6056,55,2007,214,3177,3184,3218,160,165,
+ 3094,35,1149,32,672,330,27,30,31,1172,
+ 1197,26,28,975,295,25,23,50,1259,106,
+ 76,77,107,1283,1332,1321,3168,1662,1716,161,
+ 1729,35,1149,32,4531,2420,27,30,31,1172,
+ 1197,58,28,56,2342,3161,585,3175,2408,2762,
+ 1956,2593,3174,56,3183,2776,6111,2489,3362,2007,
+ 495,3177,3184,3218,160,164,3094,35,1149,32,
+ 672,2874,27,30,31,1172,1197,26,28,975,
+ 295,25,23,50,1259,106,76,77,107,1283,
+ 1332,1321,3168,3072,2277,161,1994,35,1149,32,
+ 365,370,1669,30,31,1172,1197,56,3001,1893,
+ 2342,3161,2474,3175,584,147,319,1488,3174,6181,
+ 3183,71,147,405,1193,54,6233,3177,3184,3218,
+ 160,163,3094,35,1149,32,672,339,27,30,
+ 31,1172,1197,26,28,975,295,25,23,50,
+ 1259,106,76,77,107,1283,1332,1321,3168,2594,
+ 2597,161,1994,35,1149,32,3084,370,1857,30,
+ 31,1172,1197,2018,1917,56,56,3161,1833,3175,
+ 2673,4274,56,3171,3174,572,3183,5737,1488,1488,
+ 1488,1752,1488,3177,3184,3218,160,162,3154,35,
+ 1149,32,672,378,27,30,31,1172,1197,26,
+ 28,975,295,25,23,50,1259,106,76,77,
+ 107,1283,1332,1321,3168,2010,2489,161,56,265,
+ 2594,2594,2971,6135,3258,1845,718,71,35,2034,
+ 424,56,2095,3161,3785,3175,2138,283,263,264,
+ 3174,3724,3183,56,587,586,142,2082,1987,3177,
+ 3184,3218,160,159,3214,35,1149,32,672,307,
+ 27,30,31,1172,1197,26,28,975,295,25,
+ 23,50,1259,106,76,77,107,1283,1332,1321,
+ 1428,56,417,176,1421,56,5754,1705,1466,1799,
+ 1995,1752,1810,2178,1846,175,418,2277,2277,2185,
+ 221,3327,35,1149,32,672,2277,27,30,31,
+ 1172,1197,26,28,975,295,25,23,50,1259,
+ 106,76,77,107,1283,1332,1321,1428,357,101,
+ 2257,1421,254,309,1705,1466,1799,3064,1752,1810,
+ 2277,3317,196,3327,35,1149,32,672,2353,27,
+ 30,31,1172,1197,26,28,975,295,25,23,
+ 50,1259,106,76,77,107,1283,1332,1321,1428,
+ 2594,3078,2418,1421,56,4274,1705,1466,1799,2739,
+ 1752,1810,56,3317,196,56,56,5815,2178,2178,
+ 6205,2533,2178,2178,56,2450,319,4140,2277,2443,
+ 3327,35,1149,32,672,1661,27,30,31,1172,
+ 1197,26,28,975,295,25,23,50,1259,106,
+ 76,77,107,1283,1332,1321,1428,338,211,487,
+ 1421,231,230,1705,1466,1799,2496,1752,1810,2416,
+ 3317,196,3327,35,1149,32,672,459,27,30,
+ 31,1172,1197,26,28,975,295,25,23,50,
+ 1259,106,76,77,107,1283,1332,1321,1428,56,
+ 591,1867,1421,395,2906,1705,1466,1799,571,1752,
+ 1810,2669,3317,196,2268,581,2665,753,2575,3370,
+ 3373,2178,2178,491,2006,71,35,2034,424,3327,
+ 35,1149,32,672,328,27,30,31,1172,1197,
+ 26,28,975,295,25,23,50,1259,106,76,
+ 77,107,1283,1332,1321,1428,1922,49,1657,1421,
+ 337,234,1705,1466,1799,1019,1752,1810,46,3317,
+ 196,3486,35,1149,32,672,458,27,30,31,
+ 1172,1197,26,28,975,295,25,23,50,1259,
+ 106,76,77,107,1283,1332,1321,1428,56,2533,
+ 1248,1421,416,995,1705,1466,1799,265,1752,1810,
+ 56,3317,196,2927,2914,4329,2178,2178,4591,2023,
+ 2178,2490,2534,835,3368,286,263,264,3327,35,
+ 1149,32,672,461,27,30,31,1172,1197,26,
+ 28,975,295,25,23,50,1259,106,76,77,
+ 107,1283,1332,1321,1428,232,333,744,1421,4872,
+ 2492,1705,1466,1799,2178,1752,2915,2178,2564,2277,
+ 3433,35,1149,32,672,3623,27,30,31,1172,
+ 1197,26,28,975,295,25,23,50,1259,106,
+ 76,77,107,1283,1332,1321,3168,3062,387,2276,
+ 413,2796,2594,255,1207,1486,225,4274,1508,1011,
+ 2290,2566,3855,1929,589,3161,4274,3175,379,1341,
+ 651,384,3174,743,3183,915,925,192,577,4140,
+ 2045,3177,3461,3327,35,1149,32,672,4140,27,
+ 30,31,1172,1197,26,28,975,295,25,23,
+ 50,1259,106,76,77,107,1283,1332,1321,1428,
+ 2542,3260,577,1421,2486,2179,1705,1466,1799,2277,
+ 2865,3380,35,1149,32,672,367,27,30,31,
+ 1172,1197,26,28,975,295,25,23,50,1259,
+ 106,76,77,107,1283,1332,1321,3168,2276,1930,
+ 4964,2389,757,1207,1588,395,6144,2494,2878,2945,
+ 2601,3003,1663,2529,396,2595,3161,2628,3175,3004,
+ 2996,3370,3373,3174,2664,3183,192,2633,71,35,
+ 2034,424,3425,2905,35,1149,32,672,1207,27,
+ 30,31,1172,1197,26,28,975,295,25,23,
+ 50,1259,106,76,77,107,1283,1332,1321,3168,
+ 49,188,2706,2668,2995,2959,1216,2778,2735,1394,
+ 2277,1991,1171,3380,35,1149,32,672,3357,27,
+ 30,31,1172,1197,26,28,975,295,25,23,
+ 50,1259,106,76,77,107,1283,1332,1321,3168,
+ 1218,5026,3064,1682,1292,3006,2822,2011,2929,2793,
+ 2881,4274,2960,3117,3124,3092,3176,87,3161,2962,
+ 3175,3026,1851,3487,2277,3174,2277,3422,3380,35,
+ 1149,32,672,4140,27,30,31,1172,1197,26,
+ 28,975,295,25,23,50,1259,106,76,77,
+ 107,1283,1332,1321,3168,5088,3086,2868,265,3118,
+ 1362,3119,173,3183,2998,3236,1637,3120,3237,3244,
+ 2966,2958,6850,3161,6850,3175,277,263,264,2277,
+ 3424,3327,35,1149,32,672,6850,27,30,31,
+ 1172,1197,26,28,975,295,25,23,50,1259,
+ 106,76,77,107,1283,1332,1321,1428,6850,541,
+ 2869,1421,2277,2277,2740,3380,35,1149,32,672,
+ 6850,27,30,31,1172,1197,26,28,975,295,
+ 25,23,50,1259,106,76,77,107,1283,1332,
+ 1321,3168,6850,3327,5212,6850,6850,6850,6850,6850,
+ 6850,6850,6850,6850,6850,6850,539,540,6850,6850,
+ 3161,323,3386,3327,35,1149,32,672,6850,27,
+ 30,31,1172,1197,26,28,975,295,25,23,
+ 50,1259,106,76,77,107,1283,1332,1321,1428,
+ 2853,3522,6850,2751,3327,35,1149,32,672,6850,
+ 27,30,31,1172,1197,26,28,975,295,25,
+ 23,50,1259,106,76,77,107,1283,1332,1321,
+ 1428,6850,6850,6850,2788,3380,35,1149,32,672,
+ 6850,27,30,31,1172,1197,26,28,975,295,
+ 25,23,50,1259,106,76,77,107,1283,1332,
+ 1321,3168,1258,35,1149,32,4993,4511,27,30,
+ 31,1172,1197,374,28,3380,35,1149,32,672,
+ 3390,27,30,31,1172,1197,26,28,975,295,
+ 25,23,50,1259,106,76,77,107,1283,1332,
+ 1321,3168,6850,6850,6850,71,35,2034,424,2776,
+ 71,35,2034,424,4451,3260,56,2276,6850,2276,
+ 3420,1207,1207,6850,1207,6850,6850,6850,6850,6850,
+ 367,2092,6850,6850,354,2260,356,49,349,1437,
+ 386,6850,49,2181,188,192,2783,192,1991,1282,
+ 6850,348,1394,1991,799,3327,35,1149,32,672,
+ 5914,27,30,31,1172,1197,26,28,975,295,
+ 25,23,50,1259,106,76,77,107,1283,1332,
+ 1321,2535,265,6850,6850,6850,6850,6850,387,6850,
+ 6850,56,6850,6850,265,6850,1207,265,6850,6850,
+ 280,263,264,341,345,1763,6850,6850,379,1341,
+ 651,384,283,263,264,569,263,264,1776,188,
+ 6850,6850,2641,6850,2774,6850,2983,1521,3327,35,
+ 1149,32,672,3572,27,30,31,1172,1197,26,
+ 28,975,295,25,23,50,1259,106,76,77,
+ 107,1283,1332,1321,2553,3327,35,1149,32,672,
+ 6850,27,30,31,1172,1197,26,28,975,295,
+ 25,23,50,1259,106,76,77,107,1283,1332,
+ 1321,2608,3327,35,1149,32,672,6850,27,30,
+ 31,1172,1197,26,28,975,295,25,23,50,
+ 1259,106,76,77,107,1283,1332,1321,2642,3327,
+ 35,1149,32,672,6850,27,30,31,1172,1197,
+ 26,28,975,295,25,23,50,1259,106,76,
+ 77,107,1283,1332,1321,3374,3327,35,1149,32,
+ 672,6850,27,30,31,1172,1197,26,28,975,
+ 295,25,23,50,1259,106,76,77,107,1283,
+ 1332,1321,3383,3327,35,1149,32,672,6850,27,
+ 30,31,1172,1197,26,28,975,295,25,23,
+ 50,1259,106,76,77,107,1283,1332,1321,3385,
+ 1339,35,1149,32,4910,4448,27,30,31,1172,
+ 1197,374,28,3327,35,1149,32,672,6850,27,
+ 30,31,1172,1197,26,28,975,295,25,23,
+ 50,1259,106,76,77,107,1283,1332,1321,2905,
+ 3759,35,1149,32,4910,4755,27,30,31,1172,
+ 1197,374,28,6850,1220,35,3525,32,4993,4511,
+ 27,30,31,1172,1197,374,28,6850,6850,6850,
+ 56,386,354,2260,356,1207,349,1437,6850,387,
+ 6850,6850,2276,2276,6850,6850,6850,1207,1207,3475,
+ 6850,1508,1904,6850,6850,3855,3855,6850,188,379,
+ 1341,651,384,6850,6850,6850,2871,3260,6850,3473,
+ 192,192,354,2260,356,6850,349,1437,2292,387,
+ 6850,6850,367,1207,6850,6850,354,2260,356,2987,
+ 349,1437,6850,6850,3539,35,2034,424,4441,379,
+ 1341,651,384,2455,3260,3260,188,270,295,1776,
+ 6850,6850,5914,6850,597,6850,6850,6850,6850,4232,
+ 4232,3327,35,1149,32,672,307,27,30,31,
+ 1172,1197,26,28,975,295,25,23,50,1259,
+ 106,76,77,107,2462,265,6850,2988,3088,2382,
+ 35,1149,32,4910,4511,27,30,31,1172,1197,
+ 374,28,401,268,263,264,3327,35,1149,32,
+ 672,6850,27,30,31,1172,1197,26,28,975,
+ 295,25,23,50,1259,106,76,77,107,1283,
+ 1332,2649,6850,453,455,3524,6850,6850,6850,6850,
+ 308,6850,6850,6850,275,278,281,1212,985,6850,
+ 6850,94,96,6850,6850,6850,6850,6850,6850,6850,
+ 1575,354,2260,356,6850,349,1437,909,2264,2396,
+ 2858,5887,284,3327,35,1149,32,672,348,27,
+ 30,31,1172,1197,26,28,975,295,25,23,
+ 50,1259,106,76,77,107,1283,1332,2715,3216,
+ 259,243,35,2034,424,599,6850,6850,1508,604,
+ 6850,2260,3855,6850,6850,3855,4274,6850,56,71,
+ 35,2034,424,1207,6850,6850,6850,261,188,6850,
+ 341,345,1763,49,6850,6850,3079,6850,4140,212,
+ 6850,6850,2594,6850,1991,3274,188,6850,236,248,
+ 653,307,6850,3324,1955,235,245,246,247,249,
+ 3572,3260,1,6850,3260,6850,201,599,2917,2180,
+ 6850,1508,1832,6850,1207,3855,367,4274,200,367,
+ 6850,6850,215,199,202,203,204,205,206,261,
+ 188,71,35,2034,424,6850,6850,188,3079,378,
+ 6850,212,6850,6850,2594,3276,4675,6850,233,6144,
+ 236,248,653,6850,395,6850,6850,235,245,246,
+ 247,249,6850,49,3260,375,6850,6850,201,1917,
+ 3370,3373,630,6850,1991,959,6850,6850,6850,367,
+ 200,6850,213,6850,216,199,202,203,204,205,
+ 206,1416,35,1149,32,4910,4448,27,30,31,
+ 1172,1197,374,28,3327,35,1149,32,672,5962,
+ 27,30,31,1172,1197,26,28,975,295,25,
+ 23,50,1259,106,76,77,107,1283,2355,6850,
+ 6850,3327,35,1149,32,672,4502,27,30,31,
+ 1172,1197,26,28,975,295,25,23,50,1259,
+ 106,76,77,107,1283,2421,6850,6850,6850,6850,
+ 6850,6850,6850,354,2260,356,6850,349,1437,6850,
+ 387,6850,6850,6850,6850,1770,35,1149,32,4993,
+ 588,27,30,31,1172,1197,374,28,6850,6850,
+ 379,1341,651,384,329,35,2034,424,6850,6850,
+ 589,2027,35,2034,424,1751,6850,2003,35,2034,
+ 424,6850,6850,6850,345,6850,6850,6850,6850,599,
+ 6850,6850,6850,6850,6850,6850,49,6850,3260,56,
+ 6850,56,6850,49,1207,6850,4274,1991,1298,307,
+ 6850,261,188,368,1991,2051,6850,354,2260,356,
+ 3079,350,1437,212,387,2260,2594,188,378,3855,
+ 4274,4707,236,248,653,2011,6850,6850,2917,235,
+ 245,246,247,249,381,1341,651,384,431,56,
+ 201,6850,4140,599,1207,6850,6850,329,35,2034,
+ 424,718,200,6850,6850,6850,3624,199,202,203,
+ 204,205,206,6850,6850,261,188,188,3260,6850,
+ 6850,6850,2150,3369,3079,2378,6850,212,6850,49,
+ 2594,6850,6850,367,6850,6850,236,248,653,6850,
+ 1991,47,6850,235,245,246,247,249,72,6850,
+ 517,6850,2180,6850,201,599,6850,599,243,35,
+ 2034,424,6850,4675,1101,6850,200,6850,395,6850,
+ 210,199,202,203,204,205,206,261,188,3270,
+ 188,6850,3508,1917,3370,3373,3079,1207,3079,212,
+ 49,212,2594,6850,6850,6850,6850,6850,236,248,
+ 653,1991,47,6850,6850,235,245,246,247,249,
+ 188,6850,603,6850,6850,6850,201,599,194,56,
+ 243,35,2034,424,1207,1531,2775,6850,200,6850,
+ 228,4274,208,199,202,203,204,205,206,261,
+ 188,329,35,2034,424,6850,6850,188,3079,6850,
+ 6850,212,49,378,2594,2444,6850,592,6850,6850,
+ 236,248,653,1991,2729,6850,6850,235,245,246,
+ 247,249,6850,49,689,6850,6850,6850,201,599,
+ 6850,6850,6850,6850,1991,47,718,4459,56,6850,
+ 200,6850,6850,4274,209,199,202,203,204,205,
+ 206,261,188,243,35,2034,424,595,2842,56,
+ 3079,6850,6850,212,1207,378,2594,6850,6850,6850,
+ 6850,6850,236,248,653,6850,6850,6850,6850,235,
+ 245,246,247,249,6850,49,775,188,6850,6850,
+ 201,599,6850,6850,6850,3459,1991,1488,718,6850,
+ 6062,229,200,6850,6850,6850,219,199,202,203,
+ 204,205,206,261,188,243,35,2034,424,2209,
+ 4459,56,3079,6850,6850,212,1207,3673,2594,6850,
+ 6850,6850,6850,6850,236,248,653,6850,6850,6850,
+ 6850,235,245,246,247,249,6850,49,861,188,
+ 6850,6850,201,599,6850,56,6850,1564,1991,47,
+ 1207,6850,56,6850,200,6850,6850,4274,3630,199,
+ 202,203,204,205,206,261,188,243,35,2034,
+ 424,6850,885,188,3079,6850,6850,212,6850,378,
+ 2594,3672,3129,6850,6850,6850,236,248,653,6850,
+ 6850,6850,6850,235,245,246,247,249,6850,49,
+ 947,6850,6850,6850,201,599,6850,6850,6850,6850,
+ 1991,47,718,6850,56,6850,200,6850,6850,4274,
+ 224,199,202,203,204,205,206,261,188,243,
+ 35,2034,424,2246,1249,6850,3079,6850,6850,212,
+ 6850,378,2594,6850,6850,6850,6850,6850,236,248,
+ 653,6850,6850,6850,6850,235,245,246,247,249,
+ 6850,49,1033,6850,6850,6850,201,599,6850,6850,
+ 6850,6850,1991,47,718,6850,6850,6850,200,6850,
+ 6850,6850,218,199,202,203,204,205,206,261,
+ 188,71,35,2034,424,1870,1384,6850,3079,6850,
+ 6850,212,6850,6850,2594,6850,6850,6850,6850,6850,
+ 236,248,653,6850,6850,6850,6850,235,245,246,
+ 247,249,6850,49,6850,6850,6850,6850,201,6850,
+ 6850,6850,6850,6850,1991,642,6850,6850,6850,6850,
+ 200,6850,6850,6850,227,199,202,203,204,205,
+ 206,3327,35,1149,32,672,6850,27,30,31,
+ 1172,1197,26,28,975,295,25,23,50,1259,
+ 106,76,77,107,2464,3327,35,1149,32,672,
+ 6850,27,30,31,1172,1197,26,28,975,295,
+ 25,23,50,1259,106,76,77,107,2471,3638,
+ 35,553,6850,6850,6850,6850,6850,6850,6850,6850,
+ 6850,6850,270,295,3327,35,1149,32,672,6850,
+ 27,30,31,1172,1197,26,28,975,295,25,
+ 23,50,1259,106,76,77,85,6850,6850,6850,
+ 6850,6850,6850,6850,6850,3327,2037,1149,2045,672,
+ 265,27,30,31,1172,1197,26,28,975,295,
+ 25,23,50,1259,106,76,77,84,268,263,
+ 264,3327,35,1149,32,672,6850,27,30,31,
+ 1172,1197,26,28,975,295,25,23,50,1259,
+ 106,76,77,83,6850,6850,6850,6850,6850,6850,
+ 6850,6850,6850,6850,6850,6850,6850,6850,6850,275,
+ 278,281,1212,985,6850,6850,6850,6850,6850,6850,
+ 6850,6850,6850,6850,6850,6850,6850,6850,6850,6850,
+ 6850,6850,2198,3567,3881,3893,5747,3327,35,1149,
+ 32,672,6850,27,30,31,1172,1197,26,28,
+ 975,295,25,23,50,1259,106,76,77,82,
+ 3327,35,1149,32,672,6850,27,30,31,1172,
+ 1197,26,28,975,295,25,23,50,1259,106,
+ 76,77,81,6850,6850,6850,6850,562,563,567,
+ 3327,35,1149,32,672,6850,27,30,31,1172,
+ 1197,26,28,975,295,25,23,50,1259,106,
+ 76,77,80,3896,3327,35,1149,32,672,6850,
+ 27,30,31,1172,1197,26,28,975,295,25,
+ 23,50,1259,106,76,77,79,3327,35,1149,
+ 32,672,6850,27,30,31,1172,1197,26,28,
+ 975,295,25,23,50,1259,106,76,77,78,
+ 3033,35,1149,32,672,6850,27,30,31,1172,
+ 1197,26,28,975,295,25,23,50,1259,106,
+ 76,77,104,3327,35,1149,32,672,6850,27,
+ 30,31,1172,1197,26,28,975,295,25,23,
+ 50,1259,106,76,77,109,3327,35,1149,32,
+ 672,6850,27,30,31,1172,1197,26,28,975,
+ 295,25,23,50,1259,106,76,77,108,3327,
+ 35,1149,32,672,6850,27,30,31,1172,1197,
+ 26,28,975,295,25,23,50,1259,106,76,
+ 77,105,1492,35,3525,32,4910,4511,27,30,
+ 31,1172,1197,374,28,3274,35,1149,32,672,
+ 6850,27,30,31,1172,1197,26,28,975,295,
+ 25,23,50,1259,86,76,77,1603,6850,6850,
+ 56,56,4274,6850,6850,4274,599,3687,35,553,
+ 6850,6850,6850,6850,1870,6850,6850,6850,6850,4274,
+ 271,295,6850,6850,261,6850,6850,378,378,188,
+ 6850,6850,6850,6850,354,2260,356,1494,349,1437,
+ 6850,261,6850,6850,6850,238,248,653,6850,6850,
+ 6850,2455,237,245,246,247,249,6850,265,6850,
+ 718,718,238,248,653,6850,6850,6850,6850,237,
+ 245,246,247,249,6850,1959,269,263,264,6850,
+ 4274,545,1436,6850,6850,6850,6850,239,241,243,
+ 3469,6850,250,240,242,6850,2271,35,2034,424,
+ 6850,6850,261,6850,239,241,243,3469,6850,250,
+ 240,242,6850,71,35,2034,424,276,279,282,
+ 1212,985,6850,238,248,653,6850,2407,49,6097,
+ 237,245,246,247,249,6850,6850,6850,6850,1991,
+ 47,454,455,3524,2605,49,6097,3589,35,2034,
+ 424,4441,6850,6850,6850,6850,1991,2048,6850,6850,
+ 271,295,6850,719,6850,239,241,243,3469,6850,
+ 250,240,242,6850,1385,35,1149,32,4993,307,
+ 27,30,31,1172,1197,374,28,6850,1296,6850,
+ 6850,6850,5951,4274,6850,562,563,568,265,6850,
+ 6850,6850,6850,6850,6850,2737,6850,6097,6850,6850,
+ 6850,71,35,2034,424,261,269,263,264,6850,
+ 6850,6850,1385,35,1149,32,4993,3260,27,30,
+ 31,1172,1197,374,28,6850,828,443,6002,6850,
+ 6850,6850,368,49,6850,6850,354,2260,356,6850,
+ 352,1437,6850,308,1991,2660,6850,276,279,282,
+ 1212,985,2315,35,1149,32,4910,4194,27,30,
+ 31,1172,1197,374,28,3260,6850,6850,444,445,
+ 446,3469,2048,56,6850,285,6850,4274,4274,6850,
+ 368,6850,6850,6850,354,2260,356,1692,350,1437,
+ 6850,439,4274,3467,6850,6850,6850,6850,6850,261,
+ 378,6850,6850,6850,6850,6850,243,35,2034,424,
+ 6850,6850,2182,6850,261,6850,6850,599,6850,6850,
+ 238,248,653,6850,351,3484,356,237,245,246,
+ 247,249,6850,718,6850,238,248,653,49,378,
+ 188,6850,237,245,246,247,249,1781,220,1991,
+ 47,6850,4274,6850,543,447,450,6850,6850,6850,
+ 6850,2137,239,241,243,3469,4274,581,240,242,
+ 6850,6850,2512,1578,261,6850,6850,239,241,243,
+ 3469,6850,580,240,242,2822,6850,6850,261,6850,
+ 4274,6850,6850,6850,2126,238,248,653,3855,6850,
+ 6850,6850,237,245,246,247,249,6850,6850,238,
+ 248,653,4140,6850,6850,6850,237,245,246,247,
+ 249,2226,6850,6850,2598,6850,4274,6850,222,6850,
+ 6850,243,35,2034,424,6850,6850,239,241,243,
+ 3469,1179,251,240,242,5951,4274,3260,261,6850,
+ 6850,239,241,243,3469,2882,340,240,242,6850,
+ 4274,6850,368,49,6850,6850,6850,6850,261,238,
+ 248,653,6850,387,1991,47,237,245,246,247,
+ 249,6850,4140,2459,35,2034,424,6850,541,828,
+ 443,6002,56,381,1341,651,384,599,1625,6850,
+ 6850,6850,56,6850,6850,6850,6850,4274,6850,3280,
+ 6850,239,241,243,3469,49,535,240,242,378,
+ 188,6850,6850,6850,6850,6850,1991,47,1394,378,
+ 6850,444,445,446,3469,538,540,6850,56,6850,
+ 56,6850,56,599,6850,599,6850,599,6850,6850,
+ 2540,6850,718,6850,6850,6850,3467,6850,541,6850,
+ 6850,6850,718,6850,6850,378,188,378,188,378,
+ 188,6850,3564,1635,220,6850,220,6850,220,6850,
+ 6850,6850,6850,596,6850,6850,6850,6850,6850,6850,
+ 6850,6850,6850,6850,6850,6850,6850,6850,2512,6850,
+ 2512,6850,2512,6850,6850,538,540,6850,6850,6850,
+ 6850,6850,6850,6850,6850,6850,6850,6850,447,449,
+ 6850,6850,6850,6850,6850,6850,6850,6850,6850,6850,
+ 6850,6850,6850,6850,6850,6850,6850,6850,6850,6850,
+ 6850,6850,3620,6850,6850,627,6850,6850,5928,6850,
+ 6850,6850,6850,6850,3429,6850,3530,6850,3584,6850,
+ 0,39,6865,0,39,6864,0,1238,29,0,
+ 476,1324,0,490,1369,0,38,646,0,38,
+ 6865,0,38,6864,0,4005,125,0,1,480,
+ 0,494,1381,0,493,1478,0,956,91,0,
+ 1238,423,0,35,33,0,32,34,0,39,
+ 646,0,1,1085,0,1,7156,0,1,7155,
+ 0,1,7154,0,1,7153,0,1,7152,0,
+ 1,7151,0,1,7150,0,1,7149,0,1,
+ 7148,0,1,7147,0,1,7146,0,39,1,
+ 6865,0,39,1,6864,0,317,430,0,317,
+ 322,0,7117,274,0,7116,274,0,7223,274,
+ 0,7222,274,0,7144,274,0,7143,274,0,
+ 7142,274,0,7141,274,0,7140,274,0,7139,
+ 274,0,7138,274,0,7137,274,0,7156,274,
+ 0,7155,274,0,7154,274,0,7153,274,0,
+ 7152,274,0,7151,274,0,7150,274,0,7149,
+ 274,0,7148,274,0,7147,274,0,7146,274,
+ 0,39,6865,274,0,39,6864,274,0,6888,
+ 274,0,6865,48,0,6864,48,0,43,6886,
+ 0,43,37,0,4005,127,0,4005,126,0,
+ 6856,1,0,6855,1,0,3359,270,0,32,
+ 424,0,29,423,0,1,5715,0,1,5364,
+ 0,1,5421,0,1,5487,0,1,5510,0,
+ 1,5540,0,1,5564,0,1,5587,0,1,
+ 3493,0,1042,1,0,1,2317,0,1,5395,
+ 0,1,6872,0,1,6871,0,1,6870,0,
+ 1,6869,0,1,6868,0,1,6867,0,1,
+ 6866,0,1,638,0,1,641,0,1,652,
+ 0,1,714,0,1,751,0,39,1,0,
+ 366,481,0,1,92,0,47,37,0,6888,
+ 1,0,6865,274,0,6864,274,0,537,3468,
+ 0,6888,1,262,0,39,1,262,0,262,
+ 452,0,6865,37,0,6864,37,0,6886,45,
+ 0,37,45,0,6865,36,0,6864,36,0,
+ 6865,2,37,0,6864,2,37,0,6860,441,
+ 0,6859,441,0,1,2380,0,1,646,0,
+ 262,451,0,366,95,0,35,73,0,2733,
+ 353,0,1,366,0,3867,312,0,537,6037,
+ 0,1,262,0,262,253,0,1,743,0,
+ 1,2001,0,262,252,0,6862,1,0,6858,
+ 1,0,1,262,3576,0,6859,262,0,3577,
+ 262,0,6862,419,0,6861,419,0,3622,262,
+ 0,10,12,0,8,10,12,0,3627,226,
+ 0,217,5150,0,3631,419,0,8,12,0
};
};
public final static char baseAction[] = BaseAction.baseAction;
@@ -1112,350 +1385,403 @@ 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,47,0,49,
- 50,51,52,53,54,0,56,57,58,59,
- 60,61,62,0,64,65,66,67,0,6,
- 0,71,0,3,74,75,76,77,78,79,
+ 40,41,42,43,44,45,46,47,48,49,
+ 50,51,52,53,0,0,56,57,58,59,
+ 0,61,62,63,0,65,66,67,0,69,
+ 0,1,2,73,74,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,0,49,50,51,52,53,
- 54,69,56,57,58,59,60,61,62,0,
- 64,65,66,67,0,92,93,71,4,0,
+ 44,45,46,47,48,49,50,51,52,53,
+ 86,87,56,57,58,59,0,61,62,63,
+ 4,65,66,67,94,69,92,93,0,73,
74,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,
- 0,49,50,51,52,53,54,68,56,57,
- 58,59,60,61,62,0,64,65,66,67,
- 0,1,2,71,4,0,74,75,76,77,
+ 48,49,50,51,52,53,0,0,56,57,
+ 58,59,0,61,62,63,4,65,66,67,
+ 0,69,0,1,2,73,74,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,0,49,50,51,
- 52,53,54,68,56,57,58,59,60,61,
- 62,0,64,65,66,67,0,1,2,0,
- 4,10,74,75,76,77,78,79,80,81,
+ 42,43,44,45,46,47,48,49,50,51,
+ 52,53,86,87,56,57,58,59,0,61,
+ 62,63,95,65,66,67,0,69,0,1,
+ 2,0,74,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,0,49,50,51,52,53,54,0,
- 56,57,58,59,60,61,62,0,64,65,
- 66,67,0,6,0,0,87,88,74,75,
+ 46,47,48,49,50,51,52,53,0,68,
+ 56,57,58,59,0,61,62,63,0,65,
+ 66,67,0,69,0,3,0,0,74,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,63,49,
- 50,51,52,53,54,0,56,57,58,59,
- 60,61,62,0,64,65,66,67,99,92,
- 93,89,9,91,74,75,76,77,78,79,
+ 40,41,42,43,44,45,46,47,48,49,
+ 50,51,52,53,86,87,56,57,58,59,
+ 0,61,62,63,0,65,66,67,94,69,
+ 86,87,86,87,74,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,0,49,50,51,52,53,
- 54,0,56,57,58,59,60,61,62,0,
- 64,65,66,67,99,6,0,1,2,0,
+ 44,45,46,47,48,49,50,51,52,53,
+ 0,0,56,57,58,59,0,61,62,63,
+ 0,65,66,67,94,69,92,93,0,0,
74,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,
- 0,49,50,51,52,53,54,68,56,57,
- 58,59,60,61,62,0,64,65,66,67,
- 5,92,93,0,1,2,74,75,76,77,
+ 48,49,50,51,52,53,86,87,56,57,
+ 58,59,0,61,62,63,95,65,66,67,
+ 94,69,92,93,86,87,74,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,0,49,50,51,
- 52,53,54,0,56,57,58,59,60,61,
- 62,0,64,65,66,67,0,1,2,8,
- 0,5,74,75,76,77,78,79,80,81,
+ 42,43,44,45,46,47,48,49,50,51,
+ 52,53,0,0,56,57,58,59,0,61,
+ 62,63,0,65,66,67,0,69,0,1,
+ 2,5,74,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,71,49,50,51,52,53,54,69,
- 56,57,58,59,60,61,62,0,64,65,
- 66,67,0,1,2,0,4,0,74,75,
+ 46,47,48,49,50,51,52,53,86,87,
+ 56,57,58,59,0,61,62,63,4,65,
+ 66,67,0,69,101,102,4,95,74,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,0,49,
- 50,51,52,53,54,68,56,57,58,59,
- 60,61,62,0,64,65,66,67,0,1,
- 2,0,87,88,74,75,76,77,78,79,
+ 40,41,42,43,44,45,46,47,48,49,
+ 50,51,52,53,0,0,56,57,58,59,
+ 0,61,62,63,0,65,66,67,0,69,
+ 0,1,2,0,74,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,0,49,50,51,52,53,
- 54,0,56,57,58,59,60,61,62,0,
- 64,65,66,67,0,0,1,2,87,88,
+ 44,45,46,47,48,49,50,51,52,53,
+ 86,87,56,57,58,59,0,61,62,63,
+ 0,65,66,67,4,69,92,93,0,0,
74,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,
- 0,49,50,51,52,53,54,0,56,57,
- 58,59,60,61,62,8,64,65,66,67,
- 0,1,2,89,0,91,74,75,76,77,
+ 48,49,50,51,52,53,68,0,56,57,
+ 58,59,0,61,62,63,9,65,66,67,
+ 0,69,96,0,1,2,74,75,76,77,
78,79,80,81,82,83,84,85,0,1,
- 2,3,4,5,6,7,0,9,10,11,
+ 2,3,4,5,6,7,8,40,10,11,
12,13,14,15,16,17,18,19,20,21,
- 22,23,24,25,26,0,28,29,30,31,
- 32,33,34,35,36,37,38,39,40,41,
- 42,43,44,45,46,47,0,49,50,51,
- 52,53,54,0,56,57,58,4,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,100,118,27,28,29,30,
- 31,32,33,34,35,36,0,1,2,40,
- 4,5,0,7,0,0,100,48,0,1,
- 2,6,4,0,9,56,57,58,59,0,
- 61,62,0,0,1,2,22,23,24,0,
- 71,72,28,29,30,31,32,33,34,35,
- 36,22,23,24,48,86,0,28,29,30,
- 31,32,33,34,35,36,48,0,0,0,
- 1,2,103,104,105,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,
- 0,0,27,28,29,30,31,32,33,34,
- 35,36,89,0,91,40,3,48,0,6,
- 0,8,9,48,68,0,1,2,96,97,
- 5,56,57,58,59,0,61,62,25,26,
- 27,0,1,2,0,0,71,72,3,48,
- 37,38,8,0,1,2,3,4,5,6,
- 7,86,9,96,97,0,0,0,55,3,
- 0,1,2,48,4,5,63,7,103,104,
- 105,68,69,70,71,72,73,87,88,48,
- 0,1,2,3,4,5,6,7,0,9,
- 87,88,89,90,91,92,93,94,95,96,
- 97,98,99,100,101,70,63,73,48,106,
- 107,108,109,110,111,112,113,114,115,116,
- 117,118,119,120,0,0,0,3,0,4,
- 6,6,8,9,9,0,0,1,2,3,
- 4,5,6,7,8,9,89,0,91,25,
- 26,27,72,25,26,0,1,2,22,23,
- 24,37,38,27,28,29,30,31,32,33,
- 34,35,36,0,1,2,3,4,5,55,
- 7,8,0,0,1,2,98,63,5,63,
- 7,55,68,69,70,71,72,73,63,63,
- 27,0,1,2,3,4,5,6,7,73,
- 9,87,88,89,90,91,92,93,94,95,
- 96,97,98,99,100,101,0,0,0,3,
- 106,107,108,109,110,111,112,113,114,115,
- 116,117,118,119,120,0,1,2,3,4,
+ 22,23,24,25,26,27,28,29,30,31,
+ 32,33,34,35,36,37,38,39,55,41,
+ 42,43,44,45,46,47,48,49,50,51,
+ 52,53,0,0,56,57,58,59,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,0,1,2,0,4,0,40,0,
+ 1,2,3,4,5,6,7,8,0,1,
+ 2,53,0,55,56,57,58,5,0,61,
+ 62,63,0,1,2,3,4,0,6,71,
+ 8,73,5,38,7,38,0,0,1,2,
+ 3,4,5,6,7,8,88,11,12,13,
+ 14,15,16,17,18,19,20,21,22,23,
+ 24,25,26,27,28,29,30,31,32,33,
+ 71,0,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,
- 0,0,27,28,29,30,31,32,33,34,
- 35,36,0,1,2,40,4,0,6,0,
- 0,9,0,48,0,25,26,0,8,0,
- 0,56,57,58,59,8,61,62,8,64,
- 0,22,23,24,87,88,71,28,29,30,
- 31,32,33,34,35,36,55,27,0,1,
- 2,86,0,1,2,3,4,5,6,7,
+ 25,26,27,28,29,30,31,32,33,91,
+ 0,99,100,0,0,40,98,0,0,1,
+ 2,3,4,5,6,7,8,0,53,0,
+ 55,56,57,58,0,64,61,62,63,68,
+ 0,0,0,3,0,5,71,7,73,9,
+ 6,22,23,24,25,26,27,28,29,30,
+ 31,32,33,88,0,1,2,3,4,55,
+ 6,54,8,0,34,35,36,37,60,0,
+ 40,64,3,70,0,1,2,60,70,114,
+ 115,116,0,9,54,0,1,2,3,4,
+ 60,6,0,8,64,64,89,90,68,68,
+ 70,71,72,73,101,102,103,104,105,106,
+ 107,108,109,110,111,112,86,87,0,89,
+ 90,91,92,93,94,95,96,97,98,99,
+ 100,101,102,103,104,105,106,107,108,109,
+ 110,111,112,69,120,60,64,117,118,119,
+ 120,0,34,35,3,0,5,0,7,4,
+ 9,0,1,2,3,4,9,6,0,8,
+ 0,0,1,2,3,4,5,0,7,0,
+ 10,4,5,91,7,34,35,36,37,0,
+ 98,40,3,22,23,24,25,26,27,28,
+ 29,30,31,32,33,54,0,1,2,54,
+ 4,60,0,1,2,64,4,0,6,68,
+ 8,70,71,72,73,0,69,59,0,1,
+ 2,60,71,54,6,64,8,86,87,68,
+ 89,90,91,92,93,94,95,96,97,98,
+ 99,100,101,102,103,104,105,106,107,108,
+ 109,110,111,112,0,1,2,55,117,118,
+ 119,120,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,67,0,27,
- 28,29,30,31,32,33,34,35,36,70,
- 73,0,40,63,0,1,2,3,4,5,
- 48,7,8,25,26,0,0,55,56,57,
- 58,59,0,61,62,10,64,0,1,2,
- 101,27,5,0,7,0,107,108,109,110,
- 111,112,113,114,115,116,117,0,86,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,59,0,27,28,29,30,
- 31,32,33,34,35,36,0,1,2,40,
- 68,69,6,0,0,1,2,48,4,5,
- 0,7,55,68,0,56,57,58,59,0,
- 61,62,8,64,98,22,23,24,0,72,
- 71,28,29,30,31,32,33,34,35,36,
- 55,27,23,24,48,86,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,0,0,27,28,29,30,31,32,33,
- 34,35,36,0,1,2,40,0,0,1,
- 2,3,4,5,48,7,0,0,0,3,
- 3,0,56,57,58,59,8,61,62,8,
- 64,0,1,2,3,4,5,71,7,8,
- 0,1,2,0,4,0,6,55,8,9,
- 120,48,86,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,0,63,
- 27,28,29,30,31,32,33,34,35,36,
- 0,73,71,40,63,0,1,2,3,4,
- 5,48,7,0,73,60,3,0,90,56,
- 57,58,59,73,61,62,0,64,0,0,
- 1,2,3,4,71,6,8,0,9,0,
- 90,0,1,2,3,4,5,8,7,86,
+ 18,19,20,21,22,23,24,25,26,27,
+ 28,29,30,31,32,33,0,0,1,2,
+ 3,4,40,6,0,8,0,1,2,55,
+ 4,5,0,7,0,53,0,55,56,57,
+ 58,0,0,61,62,63,4,65,7,114,
+ 115,116,0,1,2,73,22,23,24,25,
+ 26,27,28,29,30,31,32,33,0,53,
+ 88,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,0,70,0,0,1,
+ 2,40,4,0,6,91,8,4,66,67,
+ 0,0,98,91,53,54,55,56,57,58,
+ 98,0,61,62,63,22,65,101,102,103,
+ 104,105,106,107,108,109,110,111,112,0,
+ 1,2,3,4,5,6,7,8,38,88,
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,0,63,27,28,29,
- 30,31,32,33,34,35,36,0,1,2,
- 40,4,63,6,68,69,9,69,48,0,
- 63,73,3,103,104,105,56,57,58,59,
- 71,61,62,72,64,0,0,1,2,3,
- 4,5,6,7,0,9,0,1,2,3,
- 4,5,8,7,0,0,86,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,0,0,27,28,29,30,31,32,
- 33,34,35,36,0,1,2,40,4,63,
- 6,0,48,9,3,48,70,72,0,63,
- 55,67,0,56,57,58,59,9,61,62,
- 0,64,0,3,0,0,1,2,8,0,
- 1,2,3,4,5,0,7,0,1,2,
- 0,1,2,86,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,0,
- 48,27,28,29,30,31,32,33,34,35,
- 36,69,0,63,40,0,1,2,68,69,
- 65,66,48,73,0,0,72,3,0,0,
- 56,57,58,59,0,61,62,3,64,0,
- 0,1,2,0,4,0,6,8,0,9,
- 0,3,0,1,2,3,4,5,6,7,
- 86,9,10,11,12,13,14,15,16,17,
- 18,19,20,21,0,1,2,25,26,0,
- 65,66,8,55,55,37,38,0,0,37,
- 38,39,4,41,42,43,44,45,46,47,
- 55,49,50,51,52,53,54,0,69,0,
- 71,63,60,61,102,90,0,65,66,0,
- 1,2,3,4,5,6,7,0,9,10,
+ 20,21,22,23,24,25,26,27,28,29,
+ 30,31,32,33,0,1,2,0,4,5,
+ 40,7,71,0,1,2,9,4,5,60,
+ 7,0,0,53,3,55,56,57,58,0,
+ 113,61,62,63,0,65,0,114,115,116,
+ 0,1,2,73,22,23,24,25,26,27,
+ 28,29,30,31,32,33,0,0,88,0,
+ 1,2,3,4,5,6,7,8,9,10,
11,12,13,14,15,16,17,18,19,20,
- 21,67,55,55,25,26,0,1,2,0,
- 4,5,3,7,106,68,37,38,39,0,
- 41,42,43,44,45,46,47,119,49,50,
- 51,52,53,54,0,1,2,68,0,60,
- 101,94,95,0,65,66,107,68,0,1,
+ 21,22,23,24,25,26,27,28,29,30,
+ 31,32,33,0,1,2,60,4,5,40,
+ 7,0,1,2,0,4,0,6,4,8,
+ 54,0,53,7,55,56,57,58,0,0,
+ 61,62,63,0,65,118,22,0,1,2,
+ 96,4,73,22,23,24,25,26,27,28,
+ 29,30,31,32,33,89,90,88,0,1,
2,3,4,5,6,7,8,9,10,11,
12,13,14,15,16,17,18,19,20,21,
- 0,1,2,25,26,0,0,0,0,4,
- 3,3,48,0,0,37,38,39,0,41,
- 42,43,44,45,46,47,0,49,50,51,
- 52,53,54,0,1,2,0,0,60,0,
- 4,4,0,1,2,67,0,74,48,71,
- 0,1,2,3,4,5,6,7,22,9,
- 10,11,12,13,14,15,16,17,18,19,
- 20,21,0,55,68,25,26,0,1,2,
- 0,48,0,70,4,3,68,37,38,39,
- 48,41,42,43,44,45,46,47,72,49,
- 50,51,52,53,54,0,0,0,0,70,
- 60,6,94,95,8,65,66,0,1,2,
- 3,4,5,6,7,48,9,10,11,12,
- 13,14,15,16,17,18,19,20,21,103,
- 104,105,25,26,0,0,0,3,0,0,
- 4,0,8,8,37,38,39,8,41,42,
- 43,44,45,46,47,0,49,50,51,52,
- 53,54,27,0,0,0,27,60,3,73,
- 72,0,65,66,0,1,2,3,4,5,
- 6,7,8,9,10,11,12,13,14,15,
- 16,17,18,19,20,21,55,63,0,25,
- 26,63,0,0,69,3,8,73,0,68,
- 0,37,38,39,4,41,42,43,44,45,
- 46,47,0,49,50,51,52,53,54,0,
- 0,0,22,69,60,94,95,0,75,10,
- 10,67,0,1,2,3,4,5,6,7,
- 8,9,10,11,12,13,14,15,16,17,
- 18,19,20,21,0,0,0,25,26,40,
- 40,73,8,0,0,0,0,48,48,37,
- 38,39,0,41,42,43,44,45,46,47,
- 0,49,50,51,52,53,54,0,0,0,
- 0,3,60,5,6,0,69,9,8,67,
- 0,0,90,0,4,0,3,0,0,4,
- 55,55,0,25,26,0,0,27,55,55,
- 55,55,0,0,0,37,38,73,0,41,
- 0,3,0,3,39,3,0,0,0,3,
- 3,3,70,55,0,0,39,0,3,0,
- 3,63,72,65,66,55,68,69,70,70,
- 55,0,0,0,0,0,0,55,0,0,
- 69,0,0,0,0,87,88,89,70,0,
- 92,93,94,95,96,97,98,99,100,101,
- 0,69,69,0,106,0,108,109,110,111,
- 112,113,114,115,116,117,0,1,2,3,
+ 22,23,24,25,26,27,28,29,30,31,
+ 32,33,55,0,1,2,68,64,40,6,
+ 71,8,0,1,2,0,0,0,6,0,
+ 0,53,5,55,56,57,58,0,9,61,
+ 62,63,0,65,0,3,0,1,2,23,
+ 24,73,22,23,24,25,26,27,28,29,
+ 30,31,32,33,0,0,88,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,72,60,0,60,68,64,40,5,0,
+ 68,0,66,67,0,86,87,3,54,54,
+ 53,96,55,56,57,58,99,100,61,62,
+ 63,0,65,22,23,24,25,26,27,28,
+ 29,30,31,32,33,0,1,2,3,4,
+ 5,0,7,89,90,88,0,1,2,3,
4,5,6,7,8,9,10,11,12,13,
- 14,15,16,17,18,19,20,21,55,0,
- 0,25,26,70,70,40,121,72,72,70,
- 72,70,70,37,38,39,102,41,42,43,
- 44,45,46,47,0,49,50,51,52,53,
- 54,0,1,2,3,4,5,6,7,90,
- 9,10,11,12,13,14,15,16,17,18,
- 19,20,21,0,0,0,25,26,0,0,
- 0,0,102,39,0,102,0,0,37,38,
- 39,0,41,42,43,44,45,46,47,0,
- 49,50,51,52,53,54,0,0,0,0,
- 0,60,0,0,118,0,1,2,3,4,
- 5,6,7,0,9,10,11,12,13,14,
- 15,16,17,18,19,20,21,0,0,0,
- 25,26,0,0,0,0,0,0,0,0,
- 0,0,37,38,39,0,41,42,43,44,
- 45,46,47,0,49,50,51,52,53,54,
- 0,1,2,3,4,5,6,7,63,9,
- 10,11,12,13,14,15,16,17,18,19,
- 20,21,0,0,0,25,26,0,0,0,
- 0,0,0,0,0,0,0,37,38,39,
- 0,41,42,43,44,45,46,47,0,49,
- 50,51,52,53,54,0,0,0,0,0,
- 60,0,1,2,3,4,5,6,7,0,
+ 14,15,16,17,18,19,20,21,22,23,
+ 24,25,26,27,28,29,30,31,32,33,
+ 0,1,2,0,4,64,40,0,0,0,
+ 0,0,99,100,0,60,9,3,9,53,
+ 9,55,56,57,58,64,0,61,62,63,
+ 0,65,22,23,24,25,26,27,28,29,
+ 30,31,32,33,0,1,2,40,4,40,
+ 6,40,8,0,88,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,0,
+ 1,2,0,4,5,40,7,0,9,55,
+ 0,1,2,95,7,0,0,54,53,0,
+ 55,56,57,58,9,9,61,62,63,0,
+ 65,0,1,2,3,4,5,6,7,8,
+ 0,10,11,12,13,14,15,16,17,18,
+ 19,20,21,88,0,1,2,3,4,0,
+ 6,0,8,9,3,34,35,36,37,38,
+ 39,72,41,42,43,44,45,46,47,48,
+ 49,50,51,52,0,1,2,72,72,5,
+ 59,0,0,62,40,3,97,66,67,0,
+ 1,2,3,4,5,6,7,8,0,10,
+ 11,12,13,14,15,16,17,18,19,20,
+ 21,0,1,2,3,4,97,6,0,8,
+ 9,70,113,34,35,36,37,38,39,55,
+ 41,42,43,44,45,46,47,48,49,50,
+ 51,52,0,1,2,0,0,0,59,0,
+ 3,40,54,64,9,66,67,0,1,2,
+ 3,4,5,6,7,8,9,10,11,12,
+ 13,14,15,16,17,18,19,20,21,0,
+ 34,35,3,34,35,0,1,2,0,1,
+ 2,34,35,36,37,38,39,55,41,42,
+ 43,44,45,46,47,48,49,50,51,52,
+ 0,1,2,68,96,0,59,72,0,0,
+ 0,0,7,0,3,0,69,9,9,9,
+ 73,0,1,2,3,4,5,6,7,8,
+ 55,10,11,12,13,14,15,16,17,18,
+ 19,20,21,0,1,2,0,0,0,6,
+ 40,0,0,0,3,34,35,36,37,38,
+ 39,0,41,42,43,44,45,46,47,48,
+ 49,50,51,52,0,1,2,68,68,64,
+ 59,73,73,0,71,0,3,66,67,0,
+ 1,2,3,4,5,6,7,8,55,10,
+ 11,12,13,14,15,16,17,18,19,20,
+ 21,60,0,0,0,54,64,64,70,0,
+ 0,9,9,34,35,36,37,38,39,55,
+ 41,42,43,44,45,46,47,48,49,50,
+ 51,52,0,1,2,0,0,0,59,3,
+ 89,90,0,0,9,66,67,0,1,2,
+ 3,4,5,6,7,8,9,10,11,12,
+ 13,14,15,16,17,18,19,20,21,60,
+ 60,69,97,0,70,72,3,0,0,0,
+ 3,34,35,36,37,38,39,55,41,42,
+ 43,44,45,46,47,48,49,50,51,52,
+ 97,64,0,1,2,0,59,0,73,0,
+ 0,0,70,3,71,0,69,0,1,2,
+ 3,4,5,6,7,8,9,10,11,12,
+ 13,14,15,16,17,18,19,20,21,60,
+ 0,1,2,0,0,0,3,0,5,6,
+ 7,34,35,36,37,38,39,55,41,42,
+ 43,44,45,46,47,48,49,50,51,52,
+ 60,0,1,2,0,70,59,34,35,36,
+ 37,74,39,68,0,0,69,0,3,0,
+ 3,113,0,9,9,55,0,54,0,54,
+ 0,54,0,60,0,3,97,64,10,66,
+ 67,68,68,70,22,23,24,25,26,27,
+ 28,29,30,31,32,33,55,0,54,86,
+ 87,0,89,90,91,92,93,94,95,96,
+ 0,10,99,100,101,60,103,104,105,106,
+ 107,108,109,110,111,112,72,72,54,61,
+ 117,0,1,2,3,4,5,6,7,8,
9,10,11,12,13,14,15,16,17,18,
- 19,20,21,0,0,0,25,26,0,0,
- 0,0,0,0,0,0,0,0,37,38,
- 39,0,41,42,43,44,45,46,47,0,
- 49,50,51,52,53,54,0,1,2,3,
- 4,5,6,7,0,9,10,11,12,13,
+ 19,20,21,0,53,0,55,0,0,4,
+ 0,0,4,3,54,34,35,36,37,38,
+ 39,10,41,42,43,44,45,46,47,48,
+ 49,50,51,52,0,1,2,3,4,5,
+ 6,7,8,0,10,11,12,13,14,15,
+ 16,17,18,19,20,21,0,54,0,54,
+ 113,54,54,0,53,9,55,64,34,35,
+ 36,37,38,39,0,41,42,43,44,45,
+ 46,47,48,49,50,51,52,0,0,0,
+ 0,0,89,90,3,0,9,0,55,118,
+ 66,67,0,1,2,3,4,5,6,7,
+ 8,0,10,11,12,13,14,15,16,17,
+ 18,19,20,21,0,0,68,0,72,55,
+ 0,0,0,0,71,0,34,35,36,37,
+ 38,39,54,41,42,43,44,45,46,47,
+ 48,49,50,51,52,0,0,68,3,71,
+ 73,59,0,1,2,3,4,5,6,7,
+ 8,0,10,11,12,13,14,15,16,17,
+ 18,19,20,21,54,54,54,54,0,54,
+ 0,0,0,0,64,71,34,35,36,37,
+ 38,39,75,41,42,43,44,45,46,47,
+ 48,49,50,51,52,0,121,0,3,89,
+ 90,0,60,0,1,2,3,4,5,6,
+ 7,8,0,10,11,12,13,14,15,16,
+ 17,18,19,20,21,54,0,0,0,0,
+ 3,3,3,0,0,64,0,34,35,36,
+ 37,38,39,70,41,42,43,44,45,46,
+ 47,48,49,50,51,52,0,0,0,0,
+ 89,90,59,0,1,2,3,4,5,6,
+ 7,8,71,10,11,12,13,14,15,16,
+ 17,18,19,20,21,0,0,0,54,0,
+ 0,0,0,0,0,0,70,34,35,36,
+ 37,38,39,70,41,42,43,44,45,46,
+ 47,48,49,50,51,52,0,0,0,0,
+ 0,0,59,0,1,2,3,4,5,6,
+ 7,8,0,10,11,12,13,14,15,16,
+ 17,18,19,20,21,0,0,0,0,0,
+ 0,0,0,0,0,0,71,34,35,36,
+ 37,38,39,71,41,42,43,44,45,46,
+ 47,48,49,50,51,52,0,0,0,0,
+ 0,0,59,0,1,2,3,4,5,6,
+ 7,8,0,10,11,12,13,14,15,16,
+ 17,18,19,20,21,0,0,0,0,0,
+ 0,0,0,0,0,70,70,34,35,36,
+ 37,38,39,70,41,42,43,44,45,46,
+ 47,48,49,50,51,52,0,1,2,3,
+ 4,5,6,7,8,0,10,11,12,13,
14,15,16,17,18,19,20,21,0,0,
- 0,25,26,0,0,0,0,0,0,0,
- 0,0,0,37,38,39,0,41,42,43,
- 44,45,46,47,0,49,50,51,52,53,
- 54,0,1,2,3,4,5,6,7,0,
- 9,10,11,12,13,14,15,16,17,18,
- 19,20,21,0,0,0,25,26,0,0,
- 0,0,0,0,0,0,0,0,37,38,
- 39,0,41,42,43,44,45,46,47,0,
- 49,50,51,52,53,54,0,1,2,0,
- 4,0,0,0,0,0,10,11,12,13,
+ 0,0,0,0,0,0,0,0,0,0,
+ 34,35,36,37,38,39,0,41,42,43,
+ 44,45,46,47,48,49,50,51,52,0,
+ 1,2,3,4,5,6,7,8,0,10,
+ 11,12,13,14,15,16,17,18,19,20,
+ 21,0,0,0,0,0,0,0,0,0,
+ 0,0,0,34,35,36,37,38,39,0,
+ 41,42,43,44,45,46,47,48,49,50,
+ 51,52,0,1,2,3,4,5,6,7,
+ 8,0,10,11,12,13,14,15,16,17,
+ 18,19,20,21,0,0,0,0,0,0,
+ 0,0,0,0,0,0,34,35,36,37,
+ 38,39,0,41,42,43,44,45,46,47,
+ 48,49,50,51,52,0,1,2,3,4,
+ 5,6,7,8,0,10,11,12,13,14,
+ 15,16,17,18,19,20,21,0,0,0,
+ 0,0,0,0,0,0,9,0,0,34,
+ 35,36,37,38,39,0,41,42,43,44,
+ 45,46,47,48,49,50,51,52,0,1,
+ 2,0,4,0,0,0,0,0,10,11,
+ 12,13,14,15,16,17,18,19,20,21,
+ 22,23,24,25,26,27,28,29,30,31,
+ 32,33,0,0,0,0,0,0,0,72,
+ 0,0,0,0,0,0,0,0,0,1,
+ 2,53,4,0,56,57,58,0,10,11,
+ 12,13,14,15,16,17,18,19,20,21,
+ 22,23,24,25,26,27,28,29,30,31,
+ 32,33,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,1,2,
+ 0,53,0,0,56,57,58,10,11,12,
+ 13,14,15,16,17,18,19,20,21,22,
+ 23,24,25,26,27,28,29,30,31,32,
+ 33,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,1,2,0,
+ 53,0,0,56,57,58,10,11,12,13,
14,15,16,17,18,19,20,21,22,23,
- 24,0,0,0,28,29,30,31,32,33,
- 34,35,36,0,0,0,40,0,0,0,
- 0,0,0,0,0,0,1,2,0,4,
- 0,0,56,57,58,10,11,12,13,14,
- 15,16,17,18,19,20,21,22,23,24,
- 0,0,0,28,29,30,31,32,33,34,
- 35,36,0,0,0,40,0,1,2,3,
- 4,5,6,7,8,9,0,0,0,0,
- 0,56,57,58,0,0,0,0,22,23,
- 24,0,0,27,28,29,30,31,32,33,
- 34,35,36,11,12,13,14,15,16,17,
- 18,19,20,21,22,23,24,0,0,0,
- 28,29,30,31,32,33,34,35,36,63,
- 0,0,0,0,0,0,0,0,0,73,
+ 24,25,26,27,28,29,30,31,32,33,
+ 0,0,0,0,1,2,3,4,5,6,
+ 7,8,9,0,0,0,0,3,0,53,
+ 0,0,56,57,58,22,23,24,25,26,
+ 27,28,29,30,31,32,33,0,0,1,
+ 2,3,4,40,6,0,8,9,3,0,
+ 36,37,0,0,9,0,0,54,0,0,
+ 0,0,0,60,0,1,2,3,4,5,
+ 6,7,8,9,60,72,0,0,0,0,
+ 0,0,0,0,0,0,22,23,24,25,
+ 26,27,28,29,30,31,32,33,60,0,
+ 0,0,0,0,40,60,0,0,0,64,
+ 72,0,0,68,0,0,0,72,0,0,
+ 0,0,0,0,60,0,0,0,0,0,
+ 0,117,0,119,0,0,72,11,12,13,
+ 14,15,16,17,18,19,20,21,22,23,
+ 24,25,26,27,28,29,30,31,32,33,
+ 0,1,2,3,4,5,0,7,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,22,23,24,25,26,27,28,29,
+ 30,31,32,33,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 60,0,0,0,64,0,0,0,68,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,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;
@@ -1463,346 +1789,401 @@ public class CPPNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface TermAction {
public final static char termAction[] = {0,
- 5442,5404,5383,5383,5383,5383,5383,5383,5420,5383,
+ 6850,6812,6791,6791,6791,6791,6791,6791,6791,6828,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 6816,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,120,1,1,1,1,1,
+ 132,1285,7057,2619,128,3527,1,1,366,6861,
+ 6850,6864,6865,6857,2797,3619,3083,3231,3082,3575,
+ 4714,3616,806,3581,4509,3579,10,6831,6831,6831,
+ 6831,6831,6831,6831,6831,6831,6831,6831,6831,6831,
+ 6831,6831,6831,6831,6831,6831,6831,6831,6831,6831,
+ 6831,6831,6831,6831,6831,6831,6831,6831,6831,6831,
+ 6831,6831,6831,6831,6831,6831,6831,6831,6831,6831,
+ 6831,6831,6831,6831,6831,6831,6831,6831,6831,6831,
+ 4346,4413,6831,6831,6831,6831,39,6831,6831,6831,
+ 6888,6831,6831,6831,1106,6831,3754,3723,431,6831,
+ 6831,6831,6831,6831,6831,6831,6831,6831,6831,6831,
+ 6831,6831,8,6834,6834,6834,6834,6834,6834,6834,
+ 6834,6834,6834,6834,6834,6834,6834,6834,6834,6834,
+ 6834,6834,6834,6834,6834,6834,6834,6834,6834,6834,
+ 6834,6834,6834,6834,6834,6834,6834,6834,6834,6834,
+ 6834,6834,6834,6834,6834,6834,6834,6834,6834,6834,
+ 6834,6834,6834,6834,6834,6834,124,134,6834,6834,
+ 6834,6834,6850,6834,6834,6834,815,6834,6834,6834,
+ 332,6834,6850,6595,6592,6834,6834,6834,6834,6834,
+ 6834,6834,6834,6834,6834,6834,6834,6834,6850,6812,
+ 6791,6791,6791,6791,6791,6791,6791,6819,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,5408,1,1,
+ 1,1,1,1,1,1,1,1,6816,1,
1,1,1,1,1,1,1,1,1,1,
+ 1,1,4346,4413,1,1,1,1,420,1285,
+ 7057,2619,1254,3527,1,1,6850,6861,48,6595,
+ 6592,189,2797,3619,3083,3231,3082,3575,4714,3616,
+ 806,3581,4509,3579,6850,6812,6791,6791,6791,6791,
+ 6791,6791,6791,6819,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,333,1,1,1,3507,
- 1,5616,2815,114,3684,1,1,5453,398,3776,
- 5442,5449,156,4749,1811,4136,3657,2252,3655,4034,
- 3220,4134,3475,4111,2601,4110,10,5423,5423,5423,
- 5423,5423,5423,5423,5423,5423,5423,5423,5423,5423,
- 5423,5423,5423,5423,5423,5423,5423,5423,5423,5423,
- 5423,5423,5423,5423,5423,5423,5423,5423,5423,5423,
- 5423,5423,5423,5423,5423,5423,5423,5423,5423,5423,
- 5423,5423,5423,5423,299,5423,5423,5423,5423,5423,
- 5423,1476,5423,5423,5423,5423,5423,5423,5423,387,
- 5423,5423,5423,5423,39,3752,3728,5423,5480,5442,
- 5423,5423,5423,5423,5423,5423,5423,5423,5423,5423,
- 5423,5423,8,5426,5426,5426,5426,5426,5426,5426,
- 5426,5426,5426,5426,5426,5426,5426,5426,5426,5426,
- 5426,5426,5426,5426,5426,5426,5426,5426,5426,5426,
- 5426,5426,5426,5426,5426,5426,5426,5426,5426,5426,
- 5426,5426,5426,5426,5426,5426,5426,5426,5426,5426,
- 5442,5426,5426,5426,5426,5426,5426,2769,5426,5426,
- 5426,5426,5426,5426,5426,5442,5426,5426,5426,5426,
- 289,5176,5176,5426,284,5442,5426,5426,5426,5426,
- 5426,5426,5426,5426,5426,5426,5426,5426,5442,5404,
- 5383,5383,5383,5383,5383,5383,5411,5383,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,5408,1,1,1,1,
+ 1,1,1,1,6816,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,123,1489,
+ 1,1,1,1,133,1285,7057,2619,6850,3527,
+ 1,1,6850,6861,122,5741,121,6850,2797,3619,
+ 3083,3231,3082,3575,4714,3616,806,3581,4509,3579,
+ 6850,6812,6791,6791,6791,6791,6791,6791,6791,6819,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,5442,1,1,1,
- 1,1,1,2777,1,1,1,3507,1,5616,
- 2815,303,3684,1,1,5453,5442,5078,5075,120,
- 5480,5744,1811,4136,3657,2252,3655,4034,3220,4134,
- 3475,4111,2601,4110,5442,5404,5383,5383,5383,5383,
- 5383,5383,5411,5383,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,5408,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,5442,1,1,1,1,1,1,134,
- 1,1,1,3507,1,5616,2815,116,3684,1,
- 1,5453,110,3776,5442,461,2911,2938,1811,4136,
- 3657,2252,3655,4034,3220,4134,3475,4111,2601,4110,
- 5442,5404,5383,5383,5383,5383,5383,5383,5411,5383,
+ 6816,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,4346,4413,1,1,1,1,
+ 152,1285,7057,2619,129,3527,1,1,1106,6861,
+ 4346,4413,4346,4413,2797,3619,3083,3231,3082,3575,
+ 4714,3616,806,3581,4509,3579,6850,6812,6791,6791,
+ 6791,6791,6791,6791,6791,6819,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,5408,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,5105,1,
- 1,1,1,1,1,135,1,1,1,3507,
- 1,5616,2815,130,3684,1,1,5453,2339,3752,
- 3728,3984,2404,4007,1811,4136,3657,2252,3655,4034,
- 3220,4134,3475,4111,2601,4110,5442,5404,5383,5383,
- 5383,5383,5383,5383,5411,5383,1,1,1,1,
+ 1,1,1,1,1,1,6816,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,5408,1,1,1,1,1,1,
+ 140,135,1,1,1,1,153,1285,7057,2619,
+ 148,3527,1,1,3588,6861,3754,3723,144,6850,
+ 2797,3619,3083,3231,3082,3575,4714,3616,806,3581,
+ 4509,3579,6850,6812,6791,6791,6791,6791,6791,6791,
+ 6791,6819,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,5442,1,1,1,1,1,
- 1,5442,1,1,1,3507,1,5616,2815,115,
- 3684,1,1,5453,2339,3776,5442,5456,5457,5442,
- 1811,4136,3657,2252,3655,4034,3220,4134,3475,4111,
- 2601,4110,5442,5404,5383,5383,5383,5383,5383,5383,
- 5411,5383,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,5408,
1,1,1,1,1,1,1,1,1,1,
+ 1,1,6816,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,4346,4413,1,1,
+ 1,1,6850,1285,7057,2619,1254,3527,1,1,
+ 3588,6861,3825,3785,4346,4413,2797,3619,3083,3231,
+ 3082,3575,4714,3616,806,3581,4509,3579,6850,6812,
+ 6791,6791,6791,6791,6791,6791,6791,6819,1,1,
1,1,1,1,1,1,1,1,1,1,
- 5442,1,1,1,1,1,1,2806,1,1,
- 1,3507,1,5616,2815,5442,3684,1,1,5453,
- 2634,3752,3728,5442,5262,5259,1811,4136,3657,2252,
- 3655,4034,3220,4134,3475,4111,2601,4110,5442,5404,
- 5383,5383,5383,5383,5383,5383,5411,5383,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,5408,1,1,1,1,
+ 1,1,1,1,1,1,1,1,6816,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,5442,1,1,1,
- 1,1,1,5442,1,1,1,3507,1,5616,
- 2815,5442,3684,1,1,5453,5442,5456,5457,5450,
- 518,2634,1811,4136,3657,2252,3655,4034,3220,4134,
- 3475,4111,2601,4110,5442,5404,5383,5383,5383,5383,
- 5383,5383,5411,5383,1,1,1,1,1,1,
+ 1,1,143,138,1,1,1,1,6850,1285,
+ 7057,2619,154,3527,1,1,6850,6861,433,6864,
+ 6865,2526,2797,3619,3083,3231,3082,3575,4714,3616,
+ 806,3581,4509,3579,6850,6812,6791,6791,6791,6791,
+ 6791,6791,6791,6819,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,5408,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,5449,1,1,1,1,1,1,894,
- 1,1,1,3507,1,5616,2815,5442,3684,1,
- 1,5453,5442,5078,5075,124,5480,5442,1811,4136,
- 3657,2252,3655,4034,3220,4134,3475,4111,2601,4110,
- 5442,5404,5383,5383,5383,5383,5383,5383,5411,5383,
+ 1,1,1,1,6816,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,4346,4413,
+ 1,1,1,1,6850,1285,7057,2619,2245,3527,
+ 1,1,431,6861,3288,4210,424,3533,2797,3619,
+ 3083,3231,3082,3575,4714,3616,806,3581,4509,3579,
+ 6850,6812,6791,6791,6791,6791,6791,6791,6791,6819,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,5408,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,5442,1,
- 1,1,1,1,1,2823,1,1,1,3507,
- 1,5616,2815,5442,3684,1,1,5453,48,5262,
- 5259,123,2911,2938,1811,4136,3657,2252,3655,4034,
- 3220,4134,3475,4111,2601,4110,5442,5404,5383,5383,
- 5383,5383,5383,5383,5411,5383,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,5408,1,1,1,1,1,1,
+ 6816,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,141,6850,1,1,1,1,
+ 6850,1285,7057,2619,149,3527,1,1,6850,6861,
+ 36,6747,6744,6850,2797,3619,3083,3231,3082,3575,
+ 4714,3616,806,3581,4509,3579,6850,6812,6791,6791,
+ 6791,6791,6791,6791,6791,6819,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,5442,1,1,1,1,1,
- 1,5442,1,1,1,3507,1,5616,2815,5442,
- 3684,1,1,5453,113,400,5456,5457,2911,2938,
- 1811,4136,3657,2252,3655,4034,3220,4134,3475,4111,
- 2601,4110,5442,4084,1,1,1,1,1,1,
- 4104,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,5451,
1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,6816,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 5442,1,1,1,1,1,1,5442,1,1,
- 1,3507,1,5616,2815,5446,3684,1,1,5453,
- 36,5336,5333,3984,136,4007,1811,4136,3657,2252,
- 3655,4034,3220,4134,3475,4111,2601,4110,39,5078,
- 5075,1149,633,3800,3869,4184,137,3892,942,5707,
- 5705,5714,5713,5709,5710,5708,5711,5712,5715,5706,
- 5702,5781,5782,3846,3823,5442,5696,5703,5699,5675,
- 5701,5700,5697,5698,5676,3938,3915,5461,5843,2839,
- 799,892,5463,828,4080,880,5442,5464,5462,619,
- 5458,5459,5460,5442,1136,5844,5845,2750,1433,5442,
- 5314,5314,229,5310,229,229,229,5318,229,1,
+ 4346,4413,1,1,1,1,136,1285,7057,2619,
+ 6850,3527,1,1,2092,6861,3825,3785,551,6850,
+ 2797,3619,3083,3231,3082,3575,4714,3616,806,3581,
+ 4509,3579,6850,3576,1,1,1,1,1,1,
+ 1,3577,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,2291,5445,229,1,1,1,
- 1,1,1,1,1,1,5442,5078,5075,1,
- 633,5123,5442,4184,224,5442,2291,5307,397,5173,
- 5173,1731,284,112,1688,1,1,1,3025,225,
- 5857,671,128,299,5456,5457,5702,5781,5782,5442,
- 419,229,5696,5703,5699,5675,5701,5700,5697,5698,
- 5676,5702,5781,5782,2325,5945,5442,5696,5703,5699,
- 5675,5701,5700,5697,5698,5676,284,129,5442,5442,
- 8786,8786,5880,5881,5882,5442,5314,5314,229,5310,
- 229,229,229,5362,229,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 122,37,229,1,1,1,1,1,1,1,
- 1,1,3984,33,4007,1,5117,5478,5442,5117,
- 5442,5117,5117,5307,5957,37,5298,5298,2463,2434,
- 5298,1,1,1,3025,5442,5857,671,5117,5117,
- 5117,43,5268,5268,1,313,418,229,3624,5478,
- 5117,5117,160,347,5078,5075,586,633,599,333,
- 4184,5945,333,2463,2434,5442,5442,111,5117,2772,
- 5442,5078,5075,2791,633,5123,5117,4184,5880,5881,
- 5882,5117,5117,5117,5117,5117,5117,2911,2938,5265,
- 5442,5166,5162,605,5170,599,5374,4184,132,5374,
- 5117,5117,5117,5117,5117,5117,5117,5117,5117,5117,
- 5117,5117,5117,5117,5117,1155,1059,160,2538,5117,
- 5117,5117,5117,5117,5117,5117,5117,5117,5117,5117,
- 5117,5117,5117,5117,5442,39,460,5120,117,5480,
- 5120,333,5120,5120,333,350,29,390,390,5289,
- 390,390,5289,390,5289,5289,3984,5442,4007,5120,
- 5120,5120,2078,3172,3089,293,5456,5457,390,390,
- 390,5120,5120,5289,390,390,390,390,390,390,
- 390,390,390,1,5166,5162,5353,5170,5359,5120,
- 5356,5452,5442,38,5096,5093,2372,5120,5090,5108,
- 4184,5081,5120,5120,5120,5120,5120,5120,1059,5289,
- 5451,311,5166,5162,605,5170,599,5374,4184,5289,
- 5374,5120,5120,5120,5120,5120,5120,5120,5120,5120,
- 5120,5120,5120,5120,5120,5120,91,121,5442,5111,
- 5120,5120,5120,5120,5120,5120,5120,5120,5120,5120,
- 5120,5120,5120,5120,5120,5442,5383,5383,229,5383,
- 229,229,229,5386,229,1,1,1,1,1,
+ 1,1,6859,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,929,441,1,1,
+ 1,1,6850,1285,7057,2619,6758,3527,1,1,
+ 6850,6861,3393,6850,10573,10573,2797,3619,3083,3231,
+ 3082,3575,4714,3616,806,3581,4509,3579,39,6414,
+ 6411,3866,1042,5510,5395,5540,2317,6761,1187,7148,
+ 7146,7155,7154,7150,7151,7149,7152,7153,7156,7147,
+ 7143,7222,7223,7137,7144,7140,7116,7142,7141,7138,
+ 7139,7117,5487,5421,5587,5564,6869,5364,6886,641,
+ 751,6871,652,5715,714,6872,6870,638,6866,6867,
+ 6868,7284,6850,6850,1320,7285,7286,1439,6850,6725,
+ 6725,262,6721,262,262,262,262,6729,1,1,
1,1,1,1,1,1,1,1,1,1,
- 119,5442,229,1,1,8867,1,1,1,1,
- 1,1,447,1,1,1,1,5442,5102,226,
- 5442,5102,5442,5380,5442,3172,3089,5442,5454,138,
- 408,1,1,1,3315,5448,5653,2815,5347,3684,
- 100,5702,5781,5782,2911,2938,220,5696,5703,5699,
- 5675,5701,5700,5697,5698,5676,3555,5350,5442,8718,
- 8713,5945,5442,5383,5383,229,5383,229,229,229,
- 229,229,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,5453,118,229,
- 1,1,8867,1,1,1,1,1,1,1949,
- 5447,5442,1,4224,1,5166,5162,605,5170,599,
- 5380,4184,311,3172,3089,303,133,3422,1,1,
- 1,3315,5442,5653,2815,5744,3684,5442,5456,5457,
- 1102,311,599,5442,4184,5442,2778,1906,1863,1820,
- 1777,1734,1691,1648,1605,1562,1519,29,5945,5442,
- 5383,5383,229,5383,229,229,229,5395,229,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1898,5442,229,1,1,8867,
- 1,1,1,1,1,1,37,5298,5298,1,
- 4459,3120,333,227,5442,5078,5075,5380,633,599,
- 5442,4184,581,5886,5442,1,1,1,3315,338,
- 5653,2815,5452,3684,2372,5702,5781,5782,5442,427,
- 219,5696,5703,5699,5675,5701,5700,5697,5698,5676,
- 3674,5451,5781,5782,5478,5945,5442,5383,5383,229,
- 5383,229,229,229,5386,229,1,1,1,1,
+ 1,1,322,6509,6509,6850,317,6850,262,6850,
+ 6502,6498,2380,6652,6782,646,6782,2317,332,6864,
+ 6865,1,114,6718,1,1,1,5325,110,2201,
+ 7298,2340,1,6502,6498,2380,6652,6850,646,262,
+ 2317,452,1951,2731,1904,3030,256,344,6502,6498,
+ 2380,6652,6782,646,6782,2317,7386,7148,7146,7155,
+ 7154,7150,7151,7149,7152,7153,7156,7147,7143,7222,
+ 7223,7137,7144,7140,7116,7142,7141,7138,7139,7117,
+ 3033,6850,7321,7322,7323,6850,6725,6725,262,6721,
+ 262,262,262,262,6770,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,5442,5442,229,1,1,8867,1,1,1,
- 1,1,1,37,5298,5298,1,5442,1,5166,
- 5162,605,5170,599,5380,4184,349,1,1,1683,
- 4830,1,1,1,1,3315,365,5653,2815,5401,
- 3684,1,5166,5162,586,5170,599,220,4184,5277,
- 1,5304,5304,5442,5301,536,333,4203,365,333,
- 5074,2981,5945,5442,5383,5383,229,5383,229,229,
- 229,5386,229,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,5442,1059,
- 229,1,1,8867,1,1,1,1,1,1,
- 442,365,5449,1,1059,333,5078,5075,605,633,
- 599,5380,4184,320,5280,3942,5371,5442,365,1,
- 1,1,3315,365,5653,2815,5442,3684,5442,347,
- 39,39,2965,5480,220,333,5448,99,333,8,
- 365,1,5166,5162,605,5170,599,5439,4184,5945,
- 5442,5383,5383,229,5383,229,229,229,229,229,
+ 1,1,1,1,1,1,1,1,1,5633,
+ 6850,5301,4301,138,37,262,5656,125,402,6502,
+ 6498,4180,6652,1,646,1,2317,494,1,257,
+ 6718,1,1,1,6850,6171,2201,7298,2340,3566,
+ 33,6850,6850,6453,6850,6453,262,6453,451,6453,
+ 1481,7143,7222,7223,7137,7144,7140,7116,7142,7141,
+ 7138,7139,7117,7386,366,6414,6411,2380,1042,6886,
+ 646,4032,2317,6850,6453,6453,6453,6453,2053,6850,
+ 6453,6435,3359,2006,6850,6864,6865,6441,1293,7321,
+ 7322,7323,6850,6862,6453,1,6502,6498,4180,6652,
+ 6453,646,113,2317,6453,3626,3978,3905,6453,3566,
+ 6453,6453,6453,6453,3288,4210,1959,1912,1865,1818,
+ 1771,1724,1677,1630,1583,1536,6453,6453,117,6453,
+ 6453,6453,6453,6453,6453,6453,6453,6453,6453,6453,
+ 6453,6453,6453,6453,6453,6453,6453,6453,6453,6453,
+ 6453,6453,6453,6861,6410,2053,2989,6453,6453,6453,
+ 6453,6850,4631,4604,6456,432,6456,6850,6456,423,
+ 6456,1,6502,6498,2380,6652,6862,646,594,2317,
+ 336,37,6865,6865,6865,6865,6865,39,6865,6850,
+ 7185,6888,366,5633,366,6456,6456,6456,6456,91,
+ 5656,6456,6447,6865,6865,6865,6865,6865,6865,6865,
+ 6865,6865,6865,6865,6865,6456,6850,6414,6411,1238,
+ 6888,6456,6850,6414,6411,6456,1042,6850,6459,6456,
+ 2317,6456,6456,6456,6456,475,6861,3570,38,6432,
+ 6429,6865,3033,2856,6426,6865,2317,6456,6456,6865,
+ 6456,6456,6456,6456,6456,6456,6456,6456,6456,6456,
+ 6456,6456,6456,6456,6456,6456,6456,6456,6456,6456,
+ 6456,6456,6456,6456,43,6601,6601,2644,6456,6456,
+ 6456,6456,6850,6791,6791,262,6791,262,262,262,
+ 262,6794,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,9189,
+ 1,1,1,1,1,1,6850,1,6502,6498,
+ 6764,6652,262,6767,112,6655,480,1,1,6598,
+ 1,6438,111,6438,258,1,158,6788,1,1,
+ 1,130,6850,2590,7094,2619,2670,3527,3641,7321,
+ 7322,7323,6850,6864,6865,253,7143,7222,7223,7137,
+ 7144,7140,7116,7142,7141,7138,7139,7117,6850,2537,
+ 7386,6850,6791,6791,262,6791,262,262,262,262,
+ 262,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,9189,1,
+ 1,1,1,1,1,6850,2812,6850,6850,6414,
+ 6411,262,1042,39,646,5633,2317,6888,5610,1047,
+ 1,6850,5656,5633,1,3477,6788,1,1,1,
+ 5656,6850,2590,7094,2619,982,3527,3330,4999,2746,
+ 2680,2614,2548,2482,2416,2350,2284,2218,2152,380,
+ 6414,6411,4180,1042,366,646,366,2317,3526,7386,
+ 6850,6791,6791,262,6791,262,262,262,262,6803,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,5442,1059,229,1,1,
- 8867,1,1,1,1,1,1,448,39,39,
- 1,5480,1059,5292,4251,3120,5292,4871,5380,237,
- 1242,5447,5283,5880,5881,5882,1,1,1,3315,
- 5439,5653,2815,2078,3684,5442,369,5166,5162,586,
- 5170,599,1,4184,1,1,1,5166,5162,586,
- 5170,599,5398,4184,47,5442,5945,5442,5383,5383,
- 229,5383,229,229,229,229,229,1,1,1,
+ 1,1,1,1,1,1,1,9189,1,1,
+ 1,1,1,1,481,39,39,6850,6888,6700,
+ 262,6700,2095,92,1,1,6854,1,6703,2053,
+ 6703,1,259,1,5164,6788,1,1,1,6850,
+ 3621,2590,7094,2619,137,3527,493,7321,7322,7323,
+ 326,6864,6865,252,7143,7222,7223,7137,7144,7140,
+ 7116,7142,7141,7138,7139,7117,145,6850,7386,6850,
+ 6791,6791,262,6791,262,262,262,262,6794,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,5442,5442,229,1,1,8867,1,1,
- 1,1,1,1,92,1,1,1,1,1059,
- 5295,5442,2243,5295,2967,5380,1286,1992,131,1059,
- 4550,5453,364,1,1,1,3315,2404,5653,2815,
- 1,3684,5442,2965,5442,5442,5456,5457,343,1,
- 5166,5162,5353,5170,5359,5442,5356,5442,8718,8713,
- 292,673,673,5945,5442,5383,5383,229,5383,229,
- 229,229,229,229,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,5442,
- 3430,229,1,1,8867,1,1,1,1,1,
- 1,3228,5442,1059,1,5442,5262,5259,343,343,
- 3961,789,5380,343,5442,360,5846,3623,29,443,
- 1,1,1,3315,5442,5653,2815,4103,3684,5442,
- 95,39,39,5442,5480,457,5365,5450,75,5365,
- 5442,3500,5442,1,1,1,1,1,1,1,
- 5945,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,5442,5456,5457,1,1,138,
- 3961,789,5454,5081,5084,5504,5505,125,399,1,
- 1,1,390,1,1,1,1,1,1,1,
- 5087,1,1,1,1,1,1,5442,1015,5442,
- 5449,2533,1,5982,4152,5801,5442,1,1,1,
- 5166,5162,1149,5170,3800,3869,4184,5442,3892,5126,
- 5153,5159,5132,5135,5147,5144,5150,5141,5138,5129,
- 5156,5453,2675,581,3846,3823,5442,5078,5075,5442,
- 633,599,4105,4184,808,5099,3938,3915,5461,5442,
- 2839,799,892,5463,828,4080,880,953,5464,5462,
- 619,5458,5459,5460,5442,5324,5321,5900,5442,1433,
- 1102,2577,2505,1,39,39,2778,519,39,5078,
- 5075,1149,633,3800,3869,4184,5436,3892,575,5707,
- 5705,5714,5713,5709,5710,5708,5711,5712,5715,5706,
- 45,5330,5330,3846,3823,5442,5442,5442,5442,2770,
- 4108,4471,5478,372,5442,3938,3915,5461,127,2839,
- 799,892,5463,828,4080,880,431,5464,5462,619,
- 5458,5459,5460,5442,5343,5339,39,398,1433,370,
- 5480,391,5442,5324,5321,5417,5442,3357,5327,5449,
- 140,5078,5075,1149,633,3800,3869,4184,1371,3892,
- 575,5707,5705,5714,5713,5709,5710,5708,5711,5712,
- 5715,5706,5442,2675,4343,3846,3823,37,5298,5298,
- 5442,5478,103,1341,2075,4473,5271,3938,3915,5461,
- 5478,2839,799,892,5463,828,4080,880,3261,5464,
- 5462,619,5458,5459,5460,5442,1,5442,451,1389,
- 1433,1774,2577,2505,5448,39,39,1,5166,5162,
- 1149,5170,3800,3869,4184,5478,3892,5126,5153,5159,
- 5132,5135,5147,5144,5150,5141,5138,5129,5156,5880,
- 5881,5882,3846,3823,1,5442,5442,2965,322,1,
- 2723,126,5277,5452,3938,3915,5461,5452,2839,799,
- 892,5463,828,4080,880,5442,5464,5462,619,5458,
- 5459,5460,5451,193,286,5442,5451,1433,3042,5447,
- 2570,5442,39,39,39,5078,5075,1149,633,3800,
- 3869,4184,5414,3892,575,5707,5705,5714,5713,5709,
- 5710,5708,5711,5712,5715,5706,2675,1059,1,3846,
- 3823,1059,279,5442,4053,5377,532,5280,5442,5274,
- 39,3938,3915,5461,5480,2839,799,892,5463,828,
- 4080,880,1,5464,5462,619,5458,5459,5460,1,
- 1,5442,2998,5727,1433,2577,2505,292,5430,5389,
- 5389,5417,39,5078,5075,1149,633,3800,3869,4184,
- 5414,3892,575,5707,5705,5714,5713,5709,5710,5708,
- 5711,5712,5715,5706,1,390,5442,3846,3823,5392,
- 5392,532,162,5442,398,73,5442,3873,3873,3938,
- 3915,5461,294,2839,799,892,5463,828,4080,880,
- 5442,5464,5462,619,5458,5459,5460,5442,1,423,
- 1,584,1433,5914,5908,5442,8153,5912,190,5417,
- 48,429,5803,5442,5457,48,3804,5442,35,5456,
- 5114,581,5442,5906,5907,184,5442,190,3422,581,
- 5368,3277,452,310,5442,5937,5938,162,5442,5915,
- 5442,4528,5442,4762,1094,4805,5442,5442,5442,4823,
- 3505,4828,2117,5917,377,5442,3217,5442,4873,5442,
- 4530,869,2165,1515,1543,5457,5918,5939,5916,2204,
- 5456,5442,5442,511,509,5442,5442,3636,5442,5442,
- 4205,5442,513,2,5442,5928,5927,5940,3265,1,
- 5909,5910,5933,5934,5931,5932,5911,5913,5935,5936,
- 525,3130,4067,524,5941,5442,5921,5922,5923,5919,
- 5920,5929,5930,5925,5924,5926,39,5078,5075,1149,
- 633,3800,3869,4184,5446,3892,575,5707,5705,5714,
- 5713,5709,5710,5708,5711,5712,5715,5706,37,5442,
- 5442,3846,3823,4838,4840,4146,5433,3258,3296,3265,
- 3334,2035,2618,3938,3915,5461,4152,2839,799,892,
- 5463,828,4080,880,1,5464,5462,619,5458,5459,
- 5460,39,5078,5075,1149,633,3800,3869,4184,4223,
- 3892,575,5707,5705,5714,5713,5709,5710,5708,5711,
- 5712,5715,5706,5442,5442,5442,3846,3823,5442,5442,
- 5442,5442,1,3672,5442,4152,5442,5442,3938,3915,
- 5461,5442,2839,799,892,5463,828,4080,880,5442,
- 5464,5462,619,5458,5459,5460,5442,5442,5442,5442,
- 5442,1433,5442,5442,5445,39,5078,5075,1149,633,
- 3800,3869,4184,5442,3892,575,5707,5705,5714,5713,
- 5709,5710,5708,5711,5712,5715,5706,5442,5442,5442,
- 3846,3823,5442,5442,5442,5442,5442,5442,5442,5442,
- 5442,5442,3938,3915,5461,5442,2839,799,892,5463,
- 828,4080,880,5442,5464,5462,619,5458,5459,5460,
- 39,5078,5075,1149,633,3800,3869,4184,1050,3892,
- 575,5707,5705,5714,5713,5709,5710,5708,5711,5712,
- 5715,5706,5442,5442,5442,3846,3823,5442,5442,5442,
- 5442,5442,5442,5442,5442,5442,5442,3938,3915,5461,
- 5442,2839,799,892,5463,828,4080,880,5442,5464,
- 5462,619,5458,5459,5460,5442,5442,5442,5442,5442,
- 1433,39,5078,5075,4752,633,3800,3869,4184,5442,
- 3892,575,5707,5705,5714,5713,5709,5710,5708,5711,
- 5712,5715,5706,5442,5442,5442,3846,3823,5442,5442,
- 5442,5442,5442,5442,5442,5442,5442,5442,3938,3915,
- 5461,5442,2839,799,892,5463,828,4080,880,5442,
- 5464,5462,619,5458,5459,5460,39,5078,5075,1149,
- 633,3800,3869,4184,5442,3892,575,5707,5705,5714,
- 5713,5709,5710,5708,5711,5712,5715,5706,5442,5442,
- 5442,3846,3823,5442,5442,5442,5442,5442,5442,5442,
- 5442,5442,5442,3938,3915,5461,5442,2839,799,892,
- 5463,828,4080,880,5442,5464,5462,619,5458,5459,
- 5460,39,5078,5075,1149,633,3800,3869,4184,5442,
- 3892,575,5707,5705,5714,5713,5709,5710,5708,5711,
- 5712,5715,5706,5442,5442,5442,3846,3823,5442,5442,
- 5442,5442,5442,5442,5442,5442,5442,5442,3938,3915,
- 5461,5442,2839,799,892,5463,828,4080,880,5442,
- 5464,5462,619,5458,5459,5460,5442,5078,5075,5442,
- 5480,5442,5442,5442,5442,5442,802,5707,5705,5714,
- 5713,5709,5710,5708,5711,5712,5715,5706,5702,5781,
- 5782,5442,5442,5442,5696,5703,5699,5675,5701,5700,
- 5697,5698,5676,5442,5442,5442,5843,5442,5442,5442,
- 5442,5442,5442,5442,5442,241,5252,5248,5442,5256,
- 5442,5442,1136,5844,5845,802,5239,5245,5218,5221,
- 5233,5230,5236,5227,5224,5215,5242,5194,5188,5185,
- 5442,5442,5442,5212,5191,5203,5182,5197,5200,5209,
- 5206,5179,5442,5442,5442,5843,32,391,391,5286,
- 391,391,5286,391,5286,5286,5442,5442,5442,5442,
- 5442,1136,5844,5845,5442,5442,5442,5442,391,391,
- 391,5442,223,5286,391,391,391,391,391,391,
- 391,391,391,5707,5705,5714,5713,5709,5710,5708,
- 5711,5712,5715,5706,5702,5781,5782,5442,5442,5442,
- 5696,5703,5699,5675,5701,5700,5697,5698,5676,5286,
- 5442,5442,5442,5442,5442,5442,5442,5442,5442,5286
+ 1,1,1,1,1,1,9189,1,1,1,
+ 1,1,1,95,39,39,6444,6888,6773,262,
+ 6773,6850,6414,6411,39,1042,131,646,6888,2317,
+ 4113,260,1,3641,6788,1,1,1,397,6850,
+ 2590,7094,2619,6850,3527,6853,2667,430,6506,6506,
+ 3393,317,253,7143,7222,7223,7137,7144,7140,7116,
+ 7142,7141,7138,7139,7117,4086,4059,7386,6850,6791,
+ 6791,262,6791,262,262,262,262,6794,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,9189,1,1,1,1,
+ 1,1,317,6850,6864,6865,3371,3038,262,646,
+ 2878,2317,6850,6864,6865,156,371,116,1481,6850,
+ 571,1,5325,6788,1,1,1,319,6856,2590,
+ 7094,2619,1,3527,383,3859,6850,6595,6592,7222,
+ 7223,253,7143,7222,7223,7137,7144,7140,7116,7142,
+ 7141,7138,7139,7117,147,6850,7386,6850,6791,6791,
+ 262,6791,262,262,262,262,262,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,9189,1,1,1,1,1,
+ 1,6855,2053,115,2053,7168,576,262,5325,6850,
+ 576,572,5610,1047,270,4346,4413,6616,4113,4731,
+ 1,3431,6788,1,1,1,5301,4301,2590,7094,
+ 2619,6850,3527,7143,7222,7223,7137,7144,7140,7116,
+ 7142,7141,7138,7139,7117,380,39,39,3859,6888,
+ 366,6850,366,4086,4059,7386,6850,6791,6791,262,
+ 6791,262,262,262,262,262,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,9189,1,1,1,1,1,1,
+ 6850,6414,6411,6850,6888,3062,262,6850,155,1,
+ 573,1,5301,4301,6850,2053,6860,4458,6860,1,
+ 223,6788,1,1,1,3085,6850,2590,7094,2619,
+ 6850,3527,7143,7222,7223,7137,7144,7140,7116,7142,
+ 7141,7138,7139,7117,6850,6414,6411,6859,1042,6859,
+ 6459,223,2317,6850,7386,6850,6791,6791,262,6791,
+ 262,262,262,262,262,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,9189,1,1,1,1,1,1,1,
+ 6697,6697,6850,6709,366,262,366,150,398,2710,
+ 6850,10327,10324,3533,3675,1,6850,4978,1,410,
+ 6788,1,1,1,193,6856,2590,7094,2619,393,
+ 3527,6850,1,1,1,1,1,1,1,1,
+ 6850,1,1,1,1,1,1,1,1,1,
+ 1,1,1,7386,1,6502,6498,6764,6652,6850,
+ 6767,346,6655,6860,972,1,1,1,1,1,
+ 1,398,1,1,1,1,1,1,1,1,
+ 1,1,1,1,37,6706,6706,193,6855,366,
+ 1,6850,6850,7448,6859,4729,398,1,1,1,
+ 6502,6498,3493,1042,5510,5395,5540,2317,6850,6462,
+ 6489,6495,6468,6471,6483,6480,6486,6477,6474,6465,
+ 6492,1,6502,6498,2380,6652,7242,646,157,2317,
+ 344,1144,3621,5487,5421,5587,5564,6869,5364,6886,
+ 641,751,6871,652,5715,714,6872,6870,638,6866,
+ 6867,6868,37,6706,6706,6850,119,6850,1439,118,
+ 4779,344,5102,552,6856,39,39,39,6414,6411,
+ 3866,1042,5510,5395,5540,2317,6844,1085,7148,7146,
+ 7155,7154,7150,7151,7149,7152,7153,7156,7147,6850,
+ 4631,4604,4909,4631,4604,6850,6735,6732,6850,10327,
+ 10324,5487,5421,5587,5564,6869,5364,1719,641,751,
+ 6871,652,5715,714,6872,6870,638,6866,6867,6868,
+ 325,892,892,6252,3431,151,1439,6855,6850,6850,
+ 6850,6850,3675,6850,3867,6850,6825,6858,6858,6860,
+ 6857,173,6414,6411,3866,1042,5510,5395,5540,2317,
+ 6886,1085,7148,7146,7155,7154,7150,7151,7149,7152,
+ 7153,7156,7147,37,6706,6706,6850,6850,405,6706,
+ 6859,382,6850,6850,1798,5487,5421,5587,5564,6869,
+ 5364,146,641,751,6871,652,5715,714,6872,6870,
+ 638,6866,6867,6868,45,6741,6741,1058,5702,7398,
+ 1439,6857,6857,6850,7287,1,3869,39,39,1,
+ 6502,6498,3493,1042,5510,5395,5540,2317,1672,6462,
+ 6489,6495,6468,6471,6483,6480,6486,6477,6474,6465,
+ 6492,2053,1,1,403,4113,7327,7341,1342,100,
+ 99,6806,398,5487,5421,5587,5564,6869,5364,6738,
+ 641,751,6871,652,5715,714,6872,6870,638,6866,
+ 6867,6868,6850,6754,6750,1,103,6850,1439,4222,
+ 4086,4059,327,464,6809,39,39,39,6414,6411,
+ 3866,1042,5510,5395,5540,2317,6822,1085,7148,7146,
+ 7155,7154,7150,7151,7149,7152,7153,7156,7147,5061,
+ 2991,6861,7244,6850,1389,398,2733,312,583,355,
+ 6785,5487,5421,5587,5564,6869,5364,6886,641,751,
+ 6871,652,5715,714,6872,6870,638,6866,6867,6868,
+ 398,6022,6850,6735,6732,456,1439,1,6857,1,
+ 353,6850,3090,6779,2080,325,6825,39,6414,6411,
+ 3866,1042,5510,5395,5540,2317,6822,1085,7148,7146,
+ 7155,7154,7150,7151,7149,7152,7153,7156,7147,2053,
+ 6850,11329,8950,1,462,29,1063,476,7349,7355,
+ 7353,5487,5421,5587,5564,6869,5364,6886,641,751,
+ 6871,652,5715,714,6872,6870,638,6866,6867,6868,
+ 2053,37,6706,6706,490,3189,1439,7347,7348,7378,
+ 7379,2921,7356,9929,1,1,6825,6850,3859,6850,
+ 3560,1,574,6856,6610,6886,6850,7358,336,6417,
+ 6850,6420,6850,728,423,4223,3586,7359,7185,1940,
+ 1943,7380,2394,7357,7143,7222,7223,7137,7144,7140,
+ 7116,7142,7141,7138,7139,7117,6886,582,6423,7369,
+ 7368,1,7374,7375,7381,7372,7373,7352,7354,7376,
+ 6850,6797,7350,7351,7377,2053,7362,7363,7364,7360,
+ 7361,7370,7371,7366,7365,7367,6855,6613,6450,2399,
+ 7382,39,6414,6411,3866,1042,5510,5395,5540,2317,
+ 6854,1085,7148,7146,7155,7154,7150,7151,7149,7152,
+ 7153,7156,7147,127,6800,48,3565,6850,48,6865,
+ 6850,1,6864,4916,1238,5487,5421,5587,5564,6869,
+ 5364,6797,641,751,6871,652,5715,714,6872,6870,
+ 638,6866,6867,6868,1,6502,6498,6649,6652,6637,
+ 6658,6640,6655,47,6462,6489,6495,6468,6471,6483,
+ 6480,6486,6477,6474,6465,6492,1,4032,485,6865,
+ 3621,3477,6864,484,6800,590,3565,6604,6634,6631,
+ 6646,6643,6670,6628,6850,6685,6694,6664,6688,6625,
+ 6691,6661,6667,6682,6679,6676,6673,8,29,343,
+ 6850,6850,3978,3905,6288,217,6847,6850,1431,6853,
+ 6697,6697,39,6414,6411,3866,1042,5510,5395,5540,
+ 2317,6850,1085,7148,7146,7155,7154,7150,7151,7149,
+ 7152,7153,7156,7147,6850,6850,2274,226,590,3479,
+ 126,431,73,6850,2142,6850,5487,5421,5587,5564,
+ 6869,5364,1238,641,751,6871,652,5715,714,6872,
+ 6870,638,6866,6867,6868,6850,6850,2182,6290,460,
+ 6847,1439,39,6414,6411,3866,1042,5510,5395,5540,
+ 2317,6850,1085,7148,7146,7155,7154,7150,7151,7149,
+ 7152,7153,7156,7147,4032,1238,6776,2908,6850,3075,
+ 6850,6850,6850,35,6607,3132,5487,5421,5587,5564,
+ 6869,5364,6838,641,751,6871,652,5715,714,6872,
+ 6870,638,6866,6867,6868,6850,6841,6850,4842,3978,
+ 3905,6850,1517,39,6414,6411,3493,1042,5510,5395,
+ 5540,2317,6850,1085,7148,7146,7155,7154,7150,7151,
+ 7149,7152,7153,7156,7147,4113,544,6850,6850,6850,
+ 6292,808,5095,542,2,4153,6850,5487,5421,5587,
+ 5564,6869,5364,2802,641,751,6871,652,5715,714,
+ 6872,6870,638,6866,6867,6868,6850,6850,6850,6850,
+ 4086,4059,1439,39,6414,6411,3493,1042,5510,5395,
+ 5540,2317,4778,1085,7148,7146,7155,7154,7150,7151,
+ 7149,7152,7153,7156,7147,6850,6850,6850,37,6850,
+ 6850,6850,6850,6850,6850,6850,5740,5487,5421,5587,
+ 5564,6869,5364,6023,641,751,6871,652,5715,714,
+ 6872,6870,638,6866,6867,6868,6850,6850,6850,6850,
+ 6850,6850,1439,39,6414,6411,3866,1042,5510,5395,
+ 5540,2317,6850,1085,7148,7146,7155,7154,7150,7151,
+ 7149,7152,7153,7156,7147,6850,6850,6850,6850,6850,
+ 6850,6850,6850,546,6850,6850,4840,5487,5421,5587,
+ 5564,6869,5364,4902,641,751,6871,652,5715,714,
+ 6872,6870,638,6866,6867,6868,6850,6850,6850,6850,
+ 6850,6850,1439,39,6414,6411,6242,1042,5510,5395,
+ 5540,2317,6850,1085,7148,7146,7155,7154,7150,7151,
+ 7149,7152,7153,7156,7147,6850,6850,6850,6850,6850,
+ 6850,6850,6850,6850,6850,2802,2944,5487,5421,5587,
+ 5564,6869,5364,904,641,751,6871,652,5715,714,
+ 6872,6870,638,6866,6867,6868,39,6414,6411,3866,
+ 1042,5510,5395,5540,2317,6850,1085,7148,7146,7155,
+ 7154,7150,7151,7149,7152,7153,7156,7147,6850,6850,
+ 6850,6850,6850,6850,6850,6850,6850,6850,6850,6850,
+ 5487,5421,5587,5564,6869,5364,6850,641,751,6871,
+ 652,5715,714,6872,6870,638,6866,6867,6868,39,
+ 6414,6411,3493,1042,5510,5395,5540,2317,6850,1085,
+ 7148,7146,7155,7154,7150,7151,7149,7152,7153,7156,
+ 7147,6850,6850,6850,6850,6850,6850,6850,6850,6850,
+ 6850,6850,6850,5487,5421,5587,5564,6869,5364,6850,
+ 641,751,6871,652,5715,714,6872,6870,638,6866,
+ 6867,6868,39,6414,6411,3493,1042,5510,5395,5540,
+ 2317,6850,1085,7148,7146,7155,7154,7150,7151,7149,
+ 7152,7153,7156,7147,6850,6850,6850,6850,6850,6850,
+ 6850,6850,6850,6850,6850,6850,5487,5421,5587,5564,
+ 6869,5364,6850,641,751,6871,652,5715,714,6872,
+ 6870,638,6866,6867,6868,39,6414,6411,3866,1042,
+ 5510,5395,5540,2317,6850,1085,7148,7146,7155,7154,
+ 7150,7151,7149,7152,7153,7156,7147,1,6850,6850,
+ 6850,6850,6850,6850,6850,6850,195,6850,6850,5487,
+ 5421,5587,5564,6869,5364,6850,641,751,6871,652,
+ 5715,714,6872,6870,638,6866,6867,6868,6850,6414,
+ 6411,6850,6888,6850,6850,6850,6850,6850,759,7148,
+ 7146,7155,7154,7150,7151,7149,7152,7153,7156,7147,
+ 7143,7222,7223,7137,7144,7140,7116,7142,7141,7138,
+ 7139,7117,6850,6850,6850,6850,6850,6850,6850,195,
+ 6850,6850,6850,6850,6850,6850,6850,6850,274,6585,
+ 6581,7284,6589,6850,1320,7285,7286,6850,759,6572,
+ 6578,6551,6554,6566,6563,6569,6560,6557,6548,6575,
+ 6527,6521,6518,6545,6524,6536,6515,6530,6533,6542,
+ 6539,6512,6850,6850,6850,6850,6850,6850,6850,6850,
+ 6850,6850,6850,6850,6850,6850,6850,6850,6864,6865,
+ 6850,7284,6850,6850,1320,7285,7286,1336,7148,7146,
+ 7155,7154,7150,7151,7149,7152,7153,7156,7147,7143,
+ 7222,7223,7137,7144,7140,7116,7142,7141,7138,7139,
+ 7117,6850,6850,6850,6850,6850,6850,6850,6850,6850,
+ 6850,6850,6850,6850,6850,6850,274,6715,6712,6850,
+ 7284,6850,6850,1320,7285,7286,1336,6572,6578,6551,
+ 6554,6566,6563,6569,6560,6557,6548,6575,6527,6521,
+ 6518,6545,6524,6536,6515,6530,6533,6542,6539,6512,
+ 6850,6850,6850,29,423,423,6622,423,6622,423,
+ 6622,423,6622,6850,75,6850,6850,3458,6850,7284,
+ 6850,6850,1320,7285,7286,423,423,423,423,423,
+ 423,423,423,423,423,423,423,6850,1,6502,
+ 6498,4180,6652,6622,646,1,2317,6610,3859,6850,
+ 6912,6913,6850,6850,376,6850,6850,6417,6850,6850,
+ 6850,6850,6850,6622,32,424,424,6619,424,6619,
+ 424,6619,424,6619,3941,6622,6850,6850,6850,6850,
+ 6850,6850,6850,6850,6850,6850,424,424,424,424,
+ 424,424,424,424,424,424,424,424,2053,6850,
+ 6850,6850,6850,6850,6619,2053,6850,6850,6850,376,
+ 6613,6850,6850,376,6850,6850,6850,376,6850,6850,
+ 6850,6850,6850,6850,6619,6850,570,6850,6850,6850,
+ 6850,746,6850,869,6850,6850,6619,7148,7146,7155,
+ 7154,7150,7151,7149,7152,7153,7156,7147,7143,7222,
+ 7223,7137,7144,7140,7116,7142,7141,7138,7139,7117,
+ 37,6864,6864,6864,6864,6864,6850,6864,6850,6850,
+ 6850,6850,6850,6850,6850,6850,6850,6850,6850,6850,
+ 6850,6850,6864,6864,6864,6864,6864,6864,6864,6864,
+ 6864,6864,6864,6864,6850,6850,6850,6850,6850,6850,
+ 6850,6850,6850,6850,6850,6850,6850,6850,6850,6850,
+ 6850,6850,6850,6850,6850,6850,6850,6850,6850,6850,
+ 6864,6850,6850,6850,6864,6850,6850,6850,6864
};
};
public final static char termAction[] = TermAction.termAction;
@@ -1810,61 +2191,67 @@ public class CPPNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface Asb {
public final static char asb[] = {0,
- 117,7,865,1,158,767,767,767,767,1058,
- 158,404,404,907,404,245,865,247,866,866,
- 866,866,866,866,866,866,866,406,412,417,
- 414,421,419,426,424,428,427,429,459,430,
- 865,849,947,947,947,947,904,592,9,9,
- 401,947,292,204,404,404,9,904,204,779,
- 946,1114,1060,995,849,404,406,686,686,592,
- 865,866,866,866,866,866,866,866,866,866,
- 866,866,866,866,866,866,866,866,866,866,
- 865,865,865,865,865,865,865,865,865,865,
- 865,865,866,204,204,195,849,747,747,747,
- 747,392,204,9,9,1056,984,995,114,995,
- 109,995,341,995,979,1058,904,292,292,9,
- 767,292,946,865,902,1113,204,901,903,901,
- 204,292,414,414,412,412,412,419,419,419,
- 419,417,417,424,421,421,427,426,428,1072,
- 429,1056,252,70,584,583,540,1002,1002,1058,
- 247,158,158,158,158,904,904,747,746,747,
- 401,904,508,347,111,391,112,1058,904,904,
- 392,747,866,947,410,160,204,1060,904,904,
- 903,1114,865,195,292,445,204,72,74,904,
- 1114,865,865,865,865,158,158,849,509,399,
- 397,347,904,643,454,641,392,114,511,904,
- 392,904,204,410,1056,1113,1060,904,902,204,
- 588,576,587,74,392,902,204,204,204,204,
- 592,592,509,397,514,904,347,1072,112,767,
- 394,61,1062,347,643,642,643,643,392,511,
- 511,904,904,410,411,410,865,160,66,406,
- 1060,530,865,585,585,517,517,904,68,1056,
- 693,204,904,204,204,397,397,1114,114,114,
- 747,767,901,636,1064,898,158,643,643,643,
- 643,904,511,513,755,513,410,592,866,292,
- 66,530,865,865,74,904,1114,204,72,576,
- 530,1037,397,396,902,647,114,296,363,902,
- 643,643,898,450,866,1072,525,760,904,1056,
- 643,643,726,513,514,866,904,411,204,292,
- 741,74,530,397,451,647,647,634,1074,500,
- 158,112,333,363,902,643,114,1058,1064,866,
- 866,1113,898,771,974,727,904,514,741,204,
- 741,514,647,647,295,500,634,775,1058,746,
- 767,749,749,451,114,829,771,904,158,726,
- 904,1058,1058,904,158,734,741,514,296,647,
- 451,524,450,204,1058,904,363,296,363,745,
- 745,769,830,1058,904,592,904,904,904,75,
- 734,647,865,208,898,451,904,904,363,947,
- 947,769,829,1072,866,1072,451,828,158,158,
- 158,830,158,904,467,451,451,904,114,204,
- 904,904,203,736,514,204,514,114,904,451,
- 746,821,158,821,830,1072,830,849,849,847,
- 828,849,451,451,528,827,947,736,514,208,
- 451,107,693,830,204,898,204,847,500,158,
- 204,769,208,749,204,204,1050,830,528,830,
- 451,500,865,830,827,513,745,114,114,1052,
- 865,828,592,451,204,449,207,901,830,204,
- 451,449,449,830
+ 904,7,343,1,945,837,837,837,837,510,
+ 945,522,522,442,522,105,343,107,344,344,
+ 344,344,344,344,344,344,344,524,530,535,
+ 532,539,537,544,542,546,545,547,198,548,
+ 343,327,147,147,147,147,382,742,120,120,
+ 519,147,431,53,522,522,120,382,53,947,
+ 146,1124,512,1005,327,522,524,672,672,742,
+ 343,344,344,344,344,344,344,344,344,344,
+ 344,344,344,344,344,344,344,344,344,344,
+ 343,343,343,343,343,343,343,343,343,343,
+ 343,343,344,53,53,44,327,1070,1070,1070,
+ 1070,1126,53,120,120,508,994,1005,117,1005,
+ 112,1005,179,1005,989,510,382,431,431,120,
+ 837,431,146,343,380,1123,53,379,381,379,
+ 53,431,532,532,530,530,530,537,537,537,
+ 537,535,535,542,539,539,545,544,546,1082,
+ 547,508,391,865,855,854,684,1012,1012,510,
+ 107,945,945,945,945,382,382,1070,148,504,
+ 343,1047,1045,1052,1050,1054,1053,1055,1056,1069,
+ 1070,519,382,247,250,114,674,115,510,382,
+ 382,1126,1070,344,147,528,9,53,512,382,
+ 382,381,1124,343,44,431,563,53,867,869,
+ 382,1124,343,343,343,343,945,945,481,492,
+ 492,492,492,476,510,737,344,344,344,344,
+ 344,344,344,344,344,343,343,343,343,343,
+ 343,343,343,343,343,343,343,344,327,248,
+ 517,515,250,382,788,62,786,1126,117,385,
+ 382,1126,382,53,528,508,1123,512,382,380,
+ 53,859,847,858,869,1126,380,53,53,53,
+ 53,742,742,382,344,1045,1045,1045,1050,1047,
+ 1047,1053,1052,1054,1082,1055,248,515,388,382,
+ 250,1082,115,837,1128,626,1072,250,788,787,
+ 788,788,1126,385,385,382,382,528,529,528,
+ 343,9,631,524,512,572,343,856,856,185,
+ 185,382,863,508,792,53,382,53,53,1126,
+ 679,343,515,515,1124,117,117,1070,837,379,
+ 582,1074,376,945,788,788,788,788,382,385,
+ 387,825,387,528,742,344,431,631,572,343,
+ 343,869,382,1124,53,867,847,572,695,382,
+ 515,514,380,633,117,588,266,380,788,788,
+ 376,568,344,1082,193,830,382,508,788,788,
+ 434,387,388,344,382,529,53,431,727,869,
+ 572,515,569,633,633,784,1084,239,945,115,
+ 625,266,380,788,117,510,1074,344,344,1123,
+ 376,839,294,435,382,388,727,53,727,388,
+ 633,633,587,239,784,843,510,1069,837,56,
+ 56,569,117,307,839,382,945,434,382,510,
+ 510,382,945,720,727,388,588,633,569,192,
+ 568,53,510,382,266,588,266,1068,1068,735,
+ 308,510,382,742,382,382,382,870,720,633,
+ 343,68,376,569,382,382,266,147,147,735,
+ 307,1082,344,1082,569,306,945,945,945,308,
+ 945,382,206,569,569,382,117,53,382,382,
+ 52,722,388,53,388,117,382,569,1069,299,
+ 945,299,308,1082,308,327,327,325,306,327,
+ 569,569,733,305,147,722,388,68,569,177,
+ 792,308,53,376,53,325,239,945,53,735,
+ 68,56,53,53,708,308,733,308,569,239,
+ 343,308,305,387,1068,117,117,979,343,306,
+ 742,569,53,567,67,379,308,53,569,567,
+ 567,308
};
};
public final static char asb[] = Asb.asb;
@@ -1872,118 +2259,119 @@ public class CPPNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface Asr {
public final static byte asr[] = {0,
- 8,72,118,73,27,69,120,0,28,11,
- 12,40,23,42,65,13,43,56,29,30,
- 44,14,31,32,15,16,33,66,34,45,
- 17,18,46,35,47,57,49,60,50,36,
- 51,58,19,22,20,24,21,52,53,54,
- 39,3,37,38,9,6,25,26,41,68,
- 7,1,2,4,10,5,0,5,7,3,
- 63,6,9,90,28,11,12,23,13,56,
- 29,30,14,31,32,15,16,33,34,17,
- 18,35,57,36,10,58,19,22,20,24,
- 21,1,2,4,73,8,40,0,48,4,
- 72,1,2,67,8,0,11,12,42,65,
- 13,43,44,14,15,16,66,7,45,17,
- 18,46,47,49,60,50,51,10,19,20,
- 21,52,53,54,39,1,2,37,38,9,
- 6,25,26,5,41,4,61,3,0,91,
- 89,25,26,92,93,87,88,55,94,95,
- 96,97,98,99,100,101,107,72,90,70,
- 108,109,110,111,112,113,114,115,116,117,
- 118,71,27,120,68,1,2,9,6,4,
- 3,63,69,73,8,0,71,60,37,38,
- 9,6,25,26,41,46,3,4,52,53,
- 54,39,50,44,49,12,21,11,17,15,
- 16,18,19,14,13,20,10,43,47,45,
- 42,51,67,8,7,5,1,2,66,65,
- 0,65,66,10,43,47,45,42,51,12,
- 21,11,17,15,16,18,19,14,13,20,
- 52,53,54,39,50,44,49,5,7,4,
- 3,37,38,9,6,25,26,41,46,1,
- 2,118,8,0,67,40,23,13,56,29,
- 14,31,32,15,16,33,34,17,18,35,
- 57,36,58,19,22,20,24,21,12,11,
- 28,8,3,9,6,27,62,64,86,30,
- 61,48,7,1,2,5,4,10,59,0,
- 4,8,67,1,2,0,86,59,7,103,
- 104,105,62,8,3,9,6,5,72,71,
- 27,61,28,11,12,40,23,13,56,29,
- 30,14,31,32,15,16,33,34,17,18,
- 35,57,36,10,58,19,22,20,24,21,
- 4,1,2,48,0,60,23,24,7,5,
- 1,2,4,74,67,119,106,37,38,63,
- 3,91,89,6,92,93,25,26,88,87,
- 55,94,95,96,97,9,98,99,100,68,
- 90,73,120,70,108,109,110,111,112,113,
- 114,115,116,117,72,118,101,107,71,69,
- 27,8,0,4,8,72,67,0,68,72,
- 90,69,118,73,71,120,11,12,42,65,
- 13,43,44,14,15,16,66,45,17,18,
- 46,47,49,60,50,51,10,19,20,21,
- 52,53,54,39,37,38,25,26,41,8,
- 27,5,7,1,2,4,3,9,6,0,
- 1,2,69,71,8,0,74,68,72,90,
- 73,67,63,3,8,69,27,70,0,23,
- 60,24,8,68,90,70,69,73,0,28,
- 11,12,23,13,29,30,14,31,32,15,
- 16,33,7,34,17,18,35,36,19,22,
- 20,24,21,1,2,8,63,9,6,5,
- 4,73,27,3,0,9,6,7,5,4,
- 1,2,3,63,68,70,69,8,73,90,
- 0,8,73,11,12,42,65,13,43,44,
- 14,15,16,66,7,45,17,18,46,47,
- 49,60,50,51,10,19,20,21,52,53,
- 54,1,2,3,37,38,9,6,25,26,
- 5,41,4,39,0,8,72,67,74,0,
- 4,55,8,72,67,0,64,28,11,12,
- 40,23,13,56,29,86,30,14,31,32,
- 15,16,33,59,34,17,18,35,57,36,
- 10,58,19,62,22,20,24,21,8,3,
- 9,6,71,27,61,7,4,48,5,1,
- 2,0,28,11,12,40,23,13,56,29,
- 30,14,31,32,15,16,33,34,17,18,
- 35,57,36,10,58,19,22,20,24,21,
- 1,2,4,90,0,22,1,2,4,103,
- 104,105,0,23,24,74,3,72,27,67,
- 60,8,90,73,70,69,68,0,68,70,
- 69,1,2,0,8,69,71,70,0,72,
- 8,63,3,70,69,27,55,0,102,0,
- 8,67,69,0,8,67,70,0,65,66,
- 37,38,9,6,25,26,5,41,46,3,
- 4,7,52,53,54,39,50,44,49,12,
- 21,11,17,15,16,18,19,14,13,20,
- 10,43,47,45,42,51,63,1,2,0,
- 86,103,104,105,48,72,102,121,71,61,
- 74,62,59,64,76,78,84,82,75,80,
- 81,83,85,67,77,79,27,8,28,40,
- 23,56,29,30,31,32,33,34,35,57,
- 36,58,22,24,60,65,66,10,43,47,
- 45,42,51,12,21,11,17,15,16,18,
- 19,14,13,20,52,53,54,39,50,44,
- 49,37,38,25,26,41,46,9,6,3,
- 4,7,5,1,2,0,66,65,25,26,
- 6,92,93,98,9,99,5,41,70,55,
- 68,111,112,108,109,110,116,115,117,88,
- 87,113,114,96,97,94,95,100,101,37,
- 38,69,89,106,63,3,28,11,12,40,
- 23,13,56,29,30,14,31,32,15,16,
- 33,34,17,18,35,57,36,10,58,19,
- 20,24,21,1,2,4,22,0,10,56,
- 40,57,58,12,21,11,17,15,16,18,
- 19,14,13,20,74,72,90,118,71,67,
- 120,119,91,106,89,37,38,25,26,92,
- 93,87,88,55,68,94,95,96,97,98,
- 99,100,101,107,70,108,109,110,111,112,
- 113,114,115,116,117,69,28,23,29,30,
- 31,32,33,34,35,36,22,24,27,8,
- 73,3,63,7,5,9,6,1,2,4,
- 0,27,8,3,7,5,9,6,4,1,
- 2,72,0,40,23,13,56,29,14,31,
- 32,15,16,33,34,17,18,35,57,36,
- 10,58,19,22,20,24,21,12,11,28,
- 8,3,9,27,62,59,64,86,30,61,
- 55,4,6,7,1,2,5,48,0
+ 9,71,118,72,40,68,120,0,98,91,
+ 34,35,99,100,86,87,54,89,90,92,
+ 93,94,95,96,101,102,71,97,70,103,
+ 104,105,106,107,108,109,110,111,112,118,
+ 73,40,120,64,1,2,7,5,4,3,
+ 60,68,72,9,0,64,70,68,1,2,
+ 0,4,9,71,69,0,73,59,36,37,
+ 7,5,34,35,39,45,3,4,50,51,
+ 52,38,48,43,47,12,21,11,17,15,
+ 16,18,19,14,13,20,10,42,46,44,
+ 41,49,69,9,8,6,1,2,67,66,
+ 0,55,4,71,1,2,69,9,0,41,
+ 66,42,43,67,8,44,45,46,47,59,
+ 48,49,50,51,52,38,36,37,7,5,
+ 34,35,6,39,64,3,4,10,1,2,
+ 56,57,58,12,21,11,17,15,16,18,
+ 19,14,13,20,25,31,32,27,30,29,
+ 22,26,23,24,28,33,53,0,4,9,
+ 69,1,2,0,74,64,71,97,72,69,
+ 60,3,9,68,40,70,0,64,71,97,
+ 68,118,72,73,120,11,12,41,66,13,
+ 42,43,14,15,16,67,44,17,18,45,
+ 46,47,59,48,49,10,19,20,21,50,
+ 51,52,38,36,37,34,35,39,9,40,
+ 6,8,1,2,4,3,7,5,0,88,
+ 61,8,114,115,116,63,9,3,7,5,
+ 6,71,73,40,62,25,11,12,53,23,
+ 13,56,26,27,14,28,29,15,16,30,
+ 31,17,18,32,57,55,33,10,58,19,
+ 20,24,21,1,2,4,22,0,88,114,
+ 115,116,55,71,113,121,73,62,74,63,
+ 61,65,76,78,84,82,75,80,81,83,
+ 85,69,77,79,40,9,25,53,23,56,
+ 26,27,28,29,30,31,32,57,33,58,
+ 22,24,59,66,67,10,42,46,44,41,
+ 49,12,21,11,17,15,16,18,19,14,
+ 13,20,50,51,52,38,48,43,47,36,
+ 37,34,35,39,45,7,5,3,4,8,
+ 6,1,2,0,1,2,68,73,9,0,
+ 66,67,10,42,46,44,41,49,12,21,
+ 11,17,15,16,18,19,14,13,20,50,
+ 51,52,38,48,43,47,6,8,4,3,
+ 36,37,7,5,34,35,39,45,1,2,
+ 118,9,0,22,1,2,4,114,115,116,
+ 0,67,66,34,35,99,100,94,95,6,
+ 39,70,54,106,107,103,104,105,111,110,
+ 112,87,86,108,109,92,93,89,90,96,
+ 101,36,37,91,117,10,56,53,57,58,
+ 12,21,11,17,15,16,18,19,14,13,
+ 20,25,31,32,27,30,29,22,26,23,
+ 24,28,33,64,68,3,60,7,5,1,
+ 2,4,0,59,23,24,8,6,1,2,
+ 4,74,69,119,117,36,37,60,3,98,
+ 91,5,99,100,34,35,87,86,54,89,
+ 90,92,93,7,94,95,96,64,97,72,
+ 120,70,103,104,105,106,107,108,109,110,
+ 111,112,71,118,101,102,73,68,40,9,
+ 0,23,59,24,9,64,97,70,68,72,
+ 0,9,71,69,74,0,69,53,23,13,
+ 56,26,14,28,29,15,16,30,31,17,
+ 18,32,57,33,58,19,22,20,24,21,
+ 12,11,25,9,3,7,5,40,63,65,
+ 88,27,62,55,61,8,1,2,4,10,
+ 6,0,65,25,11,12,53,23,13,56,
+ 26,88,27,14,28,29,15,16,30,61,
+ 31,17,18,32,57,33,10,58,19,63,
+ 22,20,24,21,9,3,7,5,73,40,
+ 62,8,6,55,1,2,4,0,72,9,
+ 87,86,0,11,12,13,14,15,16,17,
+ 18,19,20,21,25,23,26,27,28,29,
+ 30,31,32,33,22,24,40,9,72,8,
+ 1,2,60,3,7,5,6,4,0,23,
+ 24,74,3,71,40,69,59,9,64,97,
+ 68,72,70,0,113,0,54,64,89,90,
+ 0,9,72,11,12,41,66,13,42,43,
+ 14,15,16,67,8,44,17,18,45,46,
+ 47,59,48,49,10,19,20,21,50,51,
+ 52,1,2,3,36,37,7,5,34,35,
+ 6,39,4,38,0,4,54,9,71,69,
+ 0,25,11,12,53,23,13,56,26,27,
+ 14,28,29,15,16,30,31,17,18,32,
+ 57,33,10,58,19,22,20,24,21,1,
+ 2,4,97,0,9,68,73,70,0,71,
+ 9,60,3,70,68,40,54,0,9,69,
+ 68,0,9,69,70,0,7,5,8,6,
+ 4,1,2,3,60,64,70,68,9,72,
+ 97,0,6,8,3,60,5,7,97,25,
+ 11,12,53,23,13,56,26,27,14,28,
+ 29,15,16,30,31,17,18,32,57,33,
+ 10,58,19,22,20,24,21,1,2,4,
+ 72,9,0,11,12,41,66,13,42,43,
+ 14,15,16,67,8,44,17,18,45,46,
+ 47,59,48,49,10,19,20,21,50,51,
+ 52,38,1,2,36,37,7,5,34,35,
+ 6,39,4,62,3,0,66,67,36,37,
+ 34,35,39,45,50,51,52,38,48,43,
+ 47,12,21,11,17,15,16,18,19,14,
+ 13,20,10,42,46,44,41,49,7,5,
+ 3,60,8,6,4,1,2,0,10,56,
+ 53,57,58,12,21,11,17,15,16,18,
+ 19,14,13,20,74,71,97,118,73,69,
+ 120,8,31,32,33,22,24,1,2,30,
+ 29,28,27,26,6,4,23,25,119,98,
+ 117,91,36,37,34,35,99,100,9,60,
+ 3,5,72,40,87,86,54,89,90,92,
+ 93,7,94,95,96,101,102,103,104,105,
+ 106,107,108,109,110,111,112,70,68,64,
+ 0,40,9,3,8,6,7,5,4,1,
+ 2,71,0,53,23,13,56,26,14,28,
+ 29,15,16,30,31,17,18,32,57,33,
+ 10,58,19,22,20,24,21,12,11,25,
+ 9,3,7,40,63,61,65,88,27,62,
+ 54,4,5,8,6,1,2,55,0
};
};
public final static byte asr[] = Asr.asr;
@@ -1991,61 +2379,67 @@ public class CPPNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface Nasb {
public final static char nasb[] = {0,
- 31,12,71,12,12,12,12,12,12,75,
- 12,12,12,227,12,171,141,91,71,71,
- 213,71,71,71,71,71,71,12,12,12,
- 12,12,12,12,12,12,12,12,71,12,
- 71,277,41,41,41,41,91,132,23,23,
- 65,5,82,283,12,12,23,217,283,71,
- 48,202,12,12,277,12,12,50,50,132,
- 141,71,71,71,71,71,71,71,71,71,
- 71,71,71,71,71,71,71,71,71,71,
- 71,71,71,71,71,71,71,71,71,71,
- 71,141,71,283,283,145,1,12,12,12,
- 12,125,283,36,36,121,244,245,154,245,
- 28,245,84,245,238,10,91,82,82,36,
- 12,82,41,186,171,128,283,170,91,170,
- 283,82,12,12,12,12,12,12,12,12,
+ 184,12,69,12,12,12,12,12,12,73,
+ 12,12,12,124,12,216,157,28,69,69,
+ 245,69,69,69,69,69,69,12,12,12,
+ 12,12,12,12,12,12,12,12,69,12,
+ 69,257,292,292,292,292,28,149,173,173,
+ 25,5,104,236,12,12,173,249,236,69,
+ 64,18,12,12,257,12,12,41,41,149,
+ 157,69,69,69,69,69,69,69,69,69,
+ 69,69,69,69,69,69,69,69,69,69,
+ 69,69,69,69,69,69,69,69,69,69,
+ 69,157,69,236,236,161,1,12,12,12,
+ 12,77,236,31,31,180,275,276,204,276,
+ 80,276,83,276,269,10,28,104,104,31,
+ 12,104,292,57,216,47,236,215,28,215,
+ 236,104,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,
- 12,121,77,144,63,63,12,12,12,10,
- 91,12,12,12,12,190,11,12,12,12,
- 161,91,12,23,189,75,25,75,91,11,
- 12,12,71,41,23,58,283,12,11,91,
- 135,202,71,159,82,12,283,267,23,91,
- 202,141,141,141,141,12,12,36,123,123,
- 123,260,190,56,56,12,210,154,23,210,
- 201,190,283,46,161,128,12,217,190,283,
- 12,16,12,270,200,190,283,283,283,283,
- 132,132,12,23,205,91,114,12,156,12,
- 12,34,247,260,56,56,23,23,201,23,
- 218,11,190,23,44,12,141,161,136,12,
- 12,23,71,12,12,63,63,91,15,121,
- 270,283,190,283,283,123,87,202,154,182,
- 12,12,75,23,116,18,12,23,23,106,
- 106,190,218,104,12,12,46,132,71,82,
- 136,87,71,71,23,11,202,283,267,165,
- 23,12,23,87,171,23,154,255,23,210,
- 23,97,167,114,71,12,102,12,91,121,
- 106,106,177,104,205,71,218,44,283,82,
- 23,270,87,87,114,222,23,12,255,248,
- 12,181,34,270,171,97,94,108,18,71,
- 71,207,167,12,75,89,210,205,61,283,
- 23,205,255,222,153,116,12,12,75,12,
- 12,198,198,114,94,204,12,210,12,231,
- 210,75,75,11,12,23,61,205,255,23,
- 114,184,12,283,75,210,270,255,23,12,
- 12,23,138,108,11,132,11,210,210,281,
- 87,222,186,69,18,114,210,157,270,41,
- 41,175,149,12,71,12,114,12,12,12,
- 12,150,12,218,112,114,114,218,99,283,
- 11,11,283,23,205,283,23,154,157,114,
- 12,220,12,12,150,12,150,285,285,193,
- 12,285,114,114,12,23,41,61,205,23,
- 114,12,41,150,283,18,283,273,23,12,
- 283,175,69,198,283,283,23,150,12,150,
- 114,18,141,150,220,205,12,99,99,16,
- 71,12,235,114,283,13,68,170,150,283,
- 114,13,12,150
+ 12,180,99,160,20,20,12,12,12,10,
+ 28,12,12,12,12,54,11,12,238,161,
+ 152,12,12,12,12,12,12,12,12,12,
+ 12,297,28,12,173,53,73,22,73,28,
+ 11,12,12,69,292,173,13,236,12,11,
+ 28,220,18,69,295,104,12,236,193,173,
+ 28,18,157,157,157,157,12,12,275,276,
+ 276,276,276,261,10,12,69,69,69,69,
+ 69,69,69,69,69,69,69,69,69,69,
+ 69,69,69,69,69,69,157,69,31,182,
+ 182,182,301,54,51,51,12,223,204,173,
+ 223,17,54,236,62,297,47,12,249,54,
+ 236,12,166,12,196,16,54,236,236,236,
+ 236,149,149,28,69,12,12,12,12,12,
+ 12,12,12,12,12,12,12,173,142,28,
+ 208,12,118,12,12,128,278,301,51,51,
+ 173,173,17,173,250,11,54,173,110,12,
+ 157,297,221,12,12,173,69,12,12,20,
+ 20,28,165,180,196,236,54,236,236,17,
+ 236,69,182,112,18,204,139,12,12,73,
+ 173,175,168,12,173,173,75,75,54,250,
+ 93,12,12,62,149,69,104,221,112,69,
+ 69,173,11,18,236,193,210,173,12,54,
+ 173,112,216,173,204,286,173,223,173,95,
+ 212,208,69,12,134,12,28,180,75,75,
+ 106,93,142,69,250,110,236,104,173,196,
+ 112,112,208,252,173,12,286,279,12,138,
+ 128,196,216,95,121,114,168,69,69,86,
+ 212,12,73,60,223,142,97,236,173,142,
+ 286,252,203,175,12,12,73,12,12,39,
+ 39,208,121,141,12,223,12,130,223,73,
+ 73,11,12,173,97,142,286,173,208,91,
+ 12,236,73,223,196,286,173,12,12,173,
+ 187,114,11,149,11,223,223,234,112,252,
+ 57,67,168,208,223,119,196,292,292,136,
+ 199,12,69,12,208,12,12,12,12,200,
+ 12,250,206,208,208,250,146,236,11,11,
+ 236,173,142,236,173,204,119,208,12,89,
+ 12,12,200,12,200,308,308,226,12,308,
+ 208,208,12,173,292,97,142,173,208,12,
+ 292,200,236,168,236,291,173,12,236,136,
+ 67,39,236,236,173,200,12,200,208,168,
+ 157,200,89,142,12,146,146,166,69,12,
+ 231,208,236,144,66,215,200,236,208,144,
+ 12,200
};
};
public final static char nasb[] = Nasb.nasb;
@@ -2053,35 +2447,38 @@ public class CPPNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface Nasr {
public final static char nasr[] = {0,
- 3,13,10,9,153,151,120,150,149,5,
- 2,0,164,0,34,94,93,65,5,2,
- 9,10,4,0,43,1,0,154,190,0,
- 4,176,0,158,0,5,10,9,2,13,
- 4,46,0,142,0,144,0,177,0,5,
- 2,9,10,140,0,108,0,4,179,0,
- 126,0,76,0,4,197,0,68,130,43,
- 10,9,2,13,5,0,13,2,9,10,
- 5,82,0,154,185,0,63,0,195,0,
- 2,45,0,43,162,0,161,0,43,56,
- 0,193,0,155,0,109,0,174,5,173,
- 0,4,40,39,0,4,10,9,2,65,
- 5,89,50,0,137,66,0,66,139,138,
- 0,4,96,0,2,114,0,49,43,181,
- 4,40,0,34,93,94,4,0,68,40,
- 49,69,4,43,0,122,103,0,94,93,
- 50,5,59,0,94,93,50,65,59,5,
- 10,9,2,0,163,0,5,101,194,0,
- 1,122,0,186,0,4,30,0,45,2,
- 3,0,40,4,24,183,0,107,0,137,
- 2,66,0,4,68,0,66,50,0,2,
- 57,0,5,10,9,13,3,1,0,112,
- 0,115,4,49,81,0,4,46,198,0,
- 5,101,170,0,4,180,0,2,5,120,
- 116,117,118,13,86,0,39,5,2,9,
- 10,4,160,0,4,49,81,83,0,4,
- 49,81,101,47,5,0,50,5,89,24,
- 4,0,46,4,182,0,4,46,40,0,
- 46,4,34,0,4,46,102,0
+ 3,13,10,9,137,136,113,135,134,4,
+ 2,0,5,194,0,154,2,75,0,79,
+ 0,42,1,0,5,212,0,2,44,0,
+ 4,10,9,2,13,127,5,0,121,0,
+ 4,2,9,10,157,0,75,156,155,0,
+ 122,0,44,2,3,0,5,28,0,210,
+ 0,161,0,192,0,80,148,42,10,9,
+ 2,13,4,0,123,0,154,75,0,166,
+ 205,0,166,200,0,75,53,0,129,0,
+ 201,0,167,0,173,0,144,0,13,2,
+ 9,10,4,94,0,4,115,209,0,159,
+ 0,51,0,186,4,185,0,140,117,0,
+ 42,174,0,5,60,213,0,170,0,4,
+ 115,182,0,208,0,175,0,1,140,0,
+ 5,80,0,176,0,42,66,0,5,105,
+ 0,13,2,9,10,4,5,36,0,31,
+ 100,101,5,0,31,101,100,77,4,2,
+ 9,10,5,0,5,10,9,2,77,4,
+ 98,53,0,5,191,0,5,50,42,36,
+ 196,0,53,4,98,27,5,0,80,36,
+ 50,82,5,42,0,5,36,39,0,101,
+ 100,53,77,68,4,10,9,2,0,2,
+ 131,0,2,67,0,36,5,27,198,0,
+ 5,195,0,60,5,31,0,137,214,136,
+ 113,135,134,0,4,10,9,13,3,1,
+ 0,132,5,50,93,0,5,60,36,0,
+ 113,69,13,110,111,112,190,0,2,4,
+ 113,110,111,112,13,69,0,39,4,2,
+ 9,10,5,172,0,5,50,93,95,0,
+ 197,5,60,0,101,100,53,4,68,0,
+ 5,50,93,115,48,4,0,5,60,116,
+ 0
};
};
public final static char nasr[] = Nasr.nasr;
@@ -2089,18 +2486,18 @@ public class CPPNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface TerminalIndex {
public final static char terminalIndex[] = {0,
- 113,114,2,31,13,10,79,115,9,100,
+ 113,114,2,31,10,13,9,79,115,100,
48,52,60,68,74,75,86,87,102,105,
- 107,104,54,106,11,12,120,47,64,66,
- 70,73,76,83,89,98,7,8,112,53,
- 14,55,61,67,84,88,90,93,94,97,
- 99,109,110,111,19,63,91,101,77,95,
- 122,103,1,46,58,78,121,20,44,33,
- 119,30,118,96,108,49,50,56,57,59,
- 69,71,72,85,92,65,17,18,6,32,
- 4,15,16,21,22,23,24,25,26,27,
- 28,51,80,81,82,5,29,34,35,36,
- 37,38,39,40,41,42,43,117,3,123,
+ 107,104,54,106,47,64,66,70,73,76,
+ 83,89,98,11,12,7,8,112,14,120,
+ 55,61,67,84,88,90,94,97,99,109,
+ 110,111,53,19,93,63,91,101,95,1,
+ 77,122,103,20,46,58,78,44,121,33,
+ 30,118,119,96,108,49,50,56,57,59,
+ 69,71,72,85,92,17,18,65,21,22,
+ 6,23,24,25,26,27,32,4,15,16,
+ 28,29,34,35,36,37,38,39,40,41,
+ 42,43,51,80,81,82,5,117,3,123,
62,116
};
};
@@ -2109,27 +2506,29 @@ public class CPPNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface NonterminalIndex {
public final static char nonterminalIndex[] = {0,
- 130,135,136,0,0,134,0,0,229,235,
+ 130,135,136,0,0,134,0,0,237,243,
133,0,143,0,132,0,0,142,148,0,
- 0,149,158,180,159,160,161,162,163,151,
- 164,165,166,126,141,167,168,0,128,131,
- 169,0,129,138,137,152,177,0,0,0,
- 0,0,0,0,0,172,0,145,155,0,
- 204,0,187,201,205,0,0,127,171,0,
- 0,0,0,0,0,206,175,0,0,0,
- 0,125,178,0,0,186,0,0,202,212,
- 157,208,209,210,0,0,146,0,0,207,
- 220,174,196,0,0,211,0,0,0,0,
- 240,241,0,147,179,189,190,191,192,193,
- 195,0,198,0,199,0,214,217,0,0,
- 219,0,238,0,239,0,0,139,140,144,
- 0,0,154,156,0,170,0,181,182,183,
- 184,185,188,0,0,0,194,0,197,203,
- 0,215,216,0,0,221,224,0,226,228,
- 0,232,233,234,237,124,0,150,153,0,
- 173,0,176,0,0,200,213,218,0,0,
- 222,223,225,227,0,230,231,236,242,243,
- 0,0,0,0
+ 0,149,158,159,160,161,188,151,0,162,
+ 126,141,163,164,165,131,166,167,128,168,
+ 0,129,138,137,170,169,171,185,0,0,
+ 195,172,0,173,0,0,0,0,0,152,
+ 174,175,176,0,177,180,0,155,194,0,
+ 0,0,212,0,0,209,213,0,214,127,
+ 145,179,0,0,0,0,0,0,183,0,
+ 0,0,0,125,186,0,0,210,216,217,
+ 218,0,220,157,0,146,0,0,215,197,
+ 198,199,201,227,228,182,204,0,0,219,
+ 0,0,0,0,248,0,251,0,252,0,
+ 147,187,189,190,191,192,196,200,203,0,
+ 206,0,207,0,222,225,0,0,0,246,
+ 0,247,0,0,139,140,144,0,0,154,
+ 156,0,178,0,193,0,0,0,202,0,
+ 205,211,0,223,224,0,0,229,232,0,
+ 234,236,0,240,241,242,245,0,0,249,
+ 124,0,150,153,0,181,0,184,0,0,
+ 208,221,226,0,0,230,231,233,235,0,
+ 238,239,244,250,253,254,0,0,0,0,
+ 0,0,0,0,0
};
};
public final static char nonterminalIndex[] = NonterminalIndex.nonterminalIndex;
@@ -2137,18 +2536,19 @@ public class CPPNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface ScopePrefix {
public final static char scopePrefix[] = {
- 159,311,583,602,304,319,534,550,561,572,
- 372,267,281,298,333,42,292,392,430,167,
- 591,477,20,51,71,80,85,90,130,195,
- 326,341,346,144,273,287,505,27,144,382,
- 346,610,27,217,246,1,14,61,76,106,
- 351,361,365,448,470,499,526,530,620,624,
- 628,97,7,97,410,426,439,460,518,116,
- 116,232,439,541,557,568,579,207,488,56,
- 56,156,222,225,56,241,262,225,225,56,
- 369,467,474,156,56,643,110,355,414,454,
- 56,355,401,177,104,452,632,639,632,639,
- 65,420,137,104,104,251
+ 172,324,602,621,317,332,553,569,580,591,
+ 372,280,294,311,344,55,305,392,430,180,
+ 610,496,20,33,64,84,93,98,103,143,
+ 208,339,350,20,467,157,286,300,524,40,
+ 157,382,20,629,40,230,259,1,14,27,
+ 74,89,119,27,361,365,448,489,518,545,
+ 549,639,643,647,110,7,110,410,426,439,
+ 460,479,537,129,129,245,439,560,576,587,
+ 598,220,507,69,69,169,235,238,69,254,
+ 275,238,238,69,369,486,493,169,69,662,
+ 123,355,414,454,472,69,355,401,190,117,
+ 452,651,658,651,658,78,420,150,117,117,
+ 264
};
};
public final static char scopePrefix[] = ScopePrefix.scopePrefix;
@@ -2156,18 +2556,19 @@ public class CPPNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface ScopeSuffix {
public final static char scopeSuffix[] = {
- 18,135,5,5,135,135,5,5,5,5,
- 379,135,95,135,339,48,278,398,436,173,
- 67,483,25,25,25,59,59,95,135,200,
- 331,331,339,149,278,101,510,38,152,387,
- 597,615,32,211,211,5,18,5,59,95,
- 331,95,95,135,244,5,5,5,5,5,
- 244,641,11,101,379,379,379,464,510,120,
- 125,236,443,545,545,545,545,211,492,59,
- 59,5,5,228,230,244,5,265,265,230,
- 95,5,244,5,503,5,113,358,417,457,
- 522,513,404,180,95,95,634,634,636,636,
- 67,422,139,202,187,253
+ 18,148,5,5,148,148,5,5,5,5,
+ 379,148,108,148,25,61,291,398,436,186,
+ 80,502,25,38,38,38,72,72,108,148,
+ 213,31,31,25,5,162,291,114,529,51,
+ 165,387,616,634,45,224,224,5,18,31,
+ 5,72,108,31,108,108,148,257,5,5,
+ 5,5,5,257,660,11,114,379,379,379,
+ 464,483,529,133,138,249,443,564,564,564,
+ 564,224,511,72,72,5,5,241,243,257,
+ 5,278,278,243,108,5,257,5,522,5,
+ 126,358,417,457,475,541,532,404,193,108,
+ 108,653,653,655,655,80,422,152,215,200,
+ 266
};
};
public final static char scopeSuffix[] = ScopeSuffix.scopeSuffix;
@@ -2175,18 +2576,19 @@ public class CPPNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface ScopeLhs {
public final static char scopeLhs[] = {
- 47,118,18,18,80,118,18,18,18,18,
- 72,85,48,80,117,78,54,72,71,47,
- 18,20,3,7,8,170,170,166,116,47,
- 117,117,119,129,55,48,140,134,129,72,
- 18,18,134,95,60,136,75,173,170,166,
- 119,184,52,56,144,19,18,18,18,18,
- 18,12,112,166,72,71,71,38,140,131,
- 131,59,71,18,18,18,18,95,20,174,
- 170,186,93,100,62,76,61,160,77,119,
- 73,145,144,177,140,17,166,119,102,70,
- 140,140,72,47,166,67,138,45,138,45,
- 173,102,116,47,47,60
+ 48,112,18,18,92,112,18,18,18,18,
+ 85,97,49,92,111,90,58,85,84,48,
+ 18,20,190,3,7,8,182,182,178,110,
+ 48,111,111,138,45,147,59,49,157,151,
+ 147,85,18,18,151,102,72,153,88,190,
+ 185,182,178,138,199,56,66,161,19,18,
+ 18,18,18,18,12,129,178,85,84,84,
+ 64,41,157,114,114,68,84,18,18,18,
+ 18,102,20,186,182,201,100,109,74,79,
+ 73,172,89,138,86,162,161,192,157,17,
+ 178,138,116,83,45,157,157,85,48,178,
+ 78,155,44,155,44,185,116,110,48,48,
+ 72
};
};
public final static char scopeLhs[] = ScopeLhs.scopeLhs;
@@ -2194,18 +2596,19 @@ public class CPPNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface ScopeLa {
public final static byte scopeLa[] = {
- 102,71,73,73,71,71,73,73,73,73,
- 73,71,27,71,1,68,1,73,121,67,
- 3,73,68,68,68,1,1,27,71,67,
- 1,1,1,71,1,1,4,68,69,27,
- 1,1,68,73,73,73,102,73,1,27,
- 1,27,27,71,118,73,73,73,73,73,
- 118,1,73,1,73,73,73,72,4,1,
- 1,6,73,68,68,68,68,73,3,1,
- 1,73,73,3,1,118,73,1,1,1,
- 27,73,118,73,5,73,1,48,70,72,
- 1,48,75,74,27,27,4,4,4,4,
- 3,1,67,1,1,3
+ 113,73,72,72,73,73,72,72,72,72,
+ 72,73,40,73,1,64,1,72,121,69,
+ 3,72,1,64,64,64,1,1,40,73,
+ 69,1,1,1,72,73,1,1,4,64,
+ 68,40,1,1,64,72,72,72,113,1,
+ 72,1,40,1,40,40,73,118,72,72,
+ 72,72,72,118,1,72,1,72,72,72,
+ 71,71,4,1,1,5,72,64,64,64,
+ 64,72,3,1,1,72,72,3,1,118,
+ 72,1,1,1,40,72,118,72,6,72,
+ 1,55,70,71,64,1,55,75,74,40,
+ 40,4,4,4,4,3,1,69,1,1,
+ 3
};
};
public final static byte scopeLa[] = ScopeLa.scopeLa;
@@ -2213,18 +2616,19 @@ public class CPPNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface ScopeStateSet {
public final static char scopeStateSet[] = {
- 85,154,250,250,107,154,250,250,250,250,
- 95,109,85,107,154,107,87,95,95,85,
- 250,250,182,226,226,54,54,82,154,85,
- 154,154,154,312,87,85,149,50,312,95,
- 250,250,50,141,63,26,95,30,54,82,
- 154,22,87,33,79,250,250,250,250,250,
- 250,230,6,82,95,95,95,281,149,154,
- 154,121,95,250,250,250,250,141,250,30,
- 54,24,141,143,63,137,63,60,68,154,
- 95,57,79,152,149,250,82,154,1,95,
- 149,149,95,85,82,11,118,158,118,158,
- 30,1,154,85,85,63
+ 85,183,284,284,107,183,284,284,284,284,
+ 95,109,85,107,183,107,87,95,95,85,
+ 284,284,118,214,260,260,54,54,82,183,
+ 85,183,183,185,140,370,87,85,178,50,
+ 370,95,284,284,50,169,63,26,95,118,
+ 30,54,82,185,22,87,33,79,284,284,
+ 284,284,284,284,264,6,82,95,95,95,
+ 148,343,178,183,183,124,95,284,284,284,
+ 284,169,284,30,54,24,169,171,63,165,
+ 63,60,68,185,95,57,79,181,178,284,
+ 82,185,1,95,140,178,178,95,85,82,
+ 11,121,189,121,189,30,1,183,85,85,
+ 63
};
};
public final static char scopeStateSet[] = ScopeStateSet.scopeStateSet;
@@ -2232,71 +2636,73 @@ public class CPPNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface ScopeRhs {
public final static char scopeRhs[] = {0,
- 322,3,60,0,126,0,321,3,102,0,
- 126,172,0,126,178,74,0,216,0,254,
- 126,55,124,0,20,0,297,126,55,48,
- 0,20,53,0,33,132,0,20,53,0,
- 0,297,126,55,48,203,0,20,178,0,
- 254,126,55,132,0,179,127,0,141,0,
- 218,3,296,0,296,0,2,0,126,0,
- 254,126,55,131,0,179,127,223,0,179,
- 127,22,223,0,179,127,317,22,0,128,
- 188,167,127,0,128,0,188,167,127,0,
- 134,128,0,171,0,313,126,171,0,126,
- 171,0,222,128,0,167,312,242,0,136,
- 0,0,0,0,135,0,0,0,0,311,
- 126,165,253,0,127,0,253,0,129,0,
- 0,127,0,310,126,165,252,0,127,0,
- 0,44,127,0,0,152,3,0,126,284,
- 283,126,74,282,171,0,283,126,74,282,
- 171,0,215,0,216,0,282,171,0,96,
- 0,0,215,0,216,0,203,96,0,0,
- 215,0,216,0,283,126,282,171,0,215,
- 0,203,0,0,215,0,226,126,3,0,
- 126,0,0,0,0,0,226,126,3,215,
- 0,222,3,0,211,126,0,208,0,146,
- 0,172,167,127,0,10,0,0,0,0,
- 213,63,0,125,0,226,126,3,183,0,
- 183,0,2,0,0,126,0,0,0,0,
- 0,199,3,0,201,0,235,126,165,39,
- 30,0,179,127,59,62,0,196,128,0,
- 128,179,127,280,62,0,179,127,280,62,
- 0,179,127,70,123,59,0,235,126,165,
- 244,59,0,235,126,165,244,225,59,0,
- 277,278,126,165,123,307,56,0,277,278,
- 126,165,307,56,0,179,127,276,56,0,
- 135,0,188,179,127,276,242,0,136,0,
- 179,127,276,242,0,188,167,127,10,0,
- 167,127,10,0,167,127,0,93,136,0,
- 269,126,146,0,269,126,171,0,162,84,
- 0,302,161,304,305,3,81,0,126,171,
- 0,304,305,3,81,0,128,0,126,171,
- 0,162,3,75,191,80,0,126,128,0,
- 191,80,0,108,2,131,126,128,0,224,
- 3,75,0,199,168,0,33,169,0,168,
- 0,175,33,169,0,224,3,85,0,191,
- 156,224,3,83,0,62,171,0,224,3,
- 83,0,126,171,62,171,0,303,126,165,
- 0,162,0,213,77,0,30,171,0,162,
- 107,159,0,30,169,0,218,3,0,213,
- 63,266,0,162,63,0,180,3,299,66,
- 127,0,126,0,0,0,0,299,66,127,
- 0,2,145,126,0,0,0,0,180,3,
- 46,0,147,0,125,48,167,127,0,31,
- 147,0,93,136,31,147,0,219,179,127,
- 0,146,31,147,0,180,3,51,0,162,
- 3,51,0,162,3,68,180,55,42,0,
- 180,55,42,0,20,2,131,126,0,162,
- 3,68,180,55,45,0,180,55,45,0,
- 162,3,68,180,55,47,0,180,55,47,
- 0,162,3,68,180,55,43,0,180,55,
- 43,0,218,3,125,188,167,127,10,0,
- 125,188,167,127,10,0,136,2,0,126,
- 0,218,3,124,259,167,127,10,0,259,
- 167,127,10,0,135,2,0,126,0,218,
- 3,135,0,218,3,140,0,162,63,140,
- 0,261,0,31,0,31,139,0,166,0,
- 134,0,162,3,0
+ 338,3,59,0,126,0,337,3,113,0,
+ 126,180,0,127,188,74,0,224,0,197,
+ 166,126,10,0,136,0,166,126,10,0,
+ 135,0,271,127,54,124,0,20,0,309,
+ 127,54,55,0,20,53,0,33,132,0,
+ 20,53,0,0,309,127,54,55,215,0,
+ 20,186,0,271,127,54,132,0,189,126,
+ 0,141,0,227,3,308,0,308,0,2,
+ 0,126,0,271,127,54,131,0,189,126,
+ 237,0,189,126,22,237,0,189,126,332,
+ 22,0,128,197,166,126,0,128,0,197,
+ 166,126,0,134,128,0,172,0,328,127,
+ 172,0,127,172,0,230,128,0,166,327,
+ 235,0,136,0,0,0,0,135,0,0,
+ 0,0,326,127,164,236,0,127,0,236,
+ 0,129,0,0,127,0,325,127,164,270,
+ 0,127,0,0,44,127,0,0,150,3,
+ 0,127,296,295,127,74,294,172,0,295,
+ 127,74,294,172,0,223,0,224,0,294,
+ 172,0,96,0,0,223,0,224,0,211,
+ 96,0,0,223,0,224,0,295,127,294,
+ 172,0,223,0,211,0,0,223,0,240,
+ 127,3,0,126,0,0,0,0,0,240,
+ 127,3,222,0,231,3,0,220,127,0,
+ 216,0,146,0,175,166,126,0,10,0,
+ 0,0,0,226,60,0,125,0,240,127,
+ 3,195,0,195,0,2,0,0,126,0,
+ 0,0,0,0,211,3,0,209,0,252,
+ 127,164,38,27,0,189,126,61,63,0,
+ 204,128,0,128,189,126,292,63,0,189,
+ 126,292,63,0,189,126,70,123,61,0,
+ 252,127,164,262,61,0,252,127,164,262,
+ 239,61,0,289,290,127,164,123,322,56,
+ 0,289,290,127,164,322,56,0,189,126,
+ 288,56,0,197,189,126,288,235,0,189,
+ 126,288,235,0,166,126,0,93,136,0,
+ 286,127,149,0,286,127,172,0,158,84,
+ 0,317,161,319,320,3,81,0,126,179,
+ 0,319,320,3,81,0,128,0,126,179,
+ 0,158,3,75,204,80,0,126,128,0,
+ 204,80,0,108,2,131,126,128,0,238,
+ 3,75,0,211,182,0,33,169,0,182,
+ 0,183,33,169,0,238,3,85,0,204,
+ 153,238,3,83,0,62,179,0,238,3,
+ 83,0,126,179,62,179,0,318,127,164,
+ 0,158,0,226,77,0,30,179,0,158,
+ 102,185,0,30,177,0,148,64,167,3,
+ 0,167,3,0,20,161,126,0,158,102,
+ 162,0,30,169,0,227,3,0,226,60,
+ 283,0,158,60,0,203,3,314,67,126,
+ 0,126,0,0,0,0,314,67,126,0,
+ 2,145,126,0,0,0,0,203,3,45,
+ 0,147,0,125,55,166,126,0,31,147,
+ 0,93,136,31,147,0,228,189,126,0,
+ 146,31,147,0,203,3,49,0,158,3,
+ 49,0,158,3,64,203,54,41,0,203,
+ 54,41,0,20,2,131,126,0,158,3,
+ 64,203,54,44,0,203,54,44,0,158,
+ 3,64,203,54,46,0,203,54,46,0,
+ 158,3,64,203,54,42,0,203,54,42,
+ 0,227,3,125,197,166,126,10,0,125,
+ 197,166,126,10,0,136,2,0,126,0,
+ 227,3,124,276,166,126,10,0,276,166,
+ 126,10,0,135,2,0,126,0,227,3,
+ 135,0,227,3,140,0,158,60,140,0,
+ 278,0,31,0,31,139,0,165,0,134,
+ 0,158,3,0
};
};
public final static char scopeRhs[] = ScopeRhs.scopeRhs;
@@ -2304,38 +2710,44 @@ public class CPPNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface ScopeState {
public final static char scopeState[] = {0,
- 4724,4828,4823,4805,0,4233,4211,4066,3234,0,
- 3652,3595,3513,3410,3372,3334,3296,3258,3220,3000,
- 2962,3505,0,3416,0,2102,1190,875,0,3130,
- 2570,0,3652,3595,1983,1897,3513,3410,3372,3334,
- 3296,3258,1811,3220,3000,2962,1553,1467,0,4747,
- 3120,4691,0,4205,3261,0,3538,740,0,4515,
- 4309,0,4276,4515,2819,3154,4309,3076,3486,4289,
- 4067,2492,4053,605,2724,586,2703,0,747,746,
- 0,4541,4531,0,4541,4531,4189,4459,4413,4116,
- 4401,4355,4102,4343,3652,3595,3513,3410,3372,3334,
- 3296,3258,3220,3000,2962,0,4541,4531,4189,4459,
- 4413,4116,4401,4355,4102,4343,0,2770,2750,0,
- 2492,4276,3531,2819,3154,4557,2724,2716,3451,3379,
- 4547,3146,878,879,734,0,2200,1946,969,934,
- 3154,3146,3076,586,2703,2965,2810,0,953,808,
- 0,789,0,4245,541,2746,0,4740,4733,4687,
- 4682,4668,4664,4657,4599,4582,4443,4815,4385,3573,
- 4811,4758,4174,3471,2977,3467,3198,2755,2717,1384,
- 0,2611,2607,4740,4733,4687,2247,2160,4682,621,
- 4668,4664,4657,4599,4582,3115,3353,3283,4443,3206,
- 4815,2981,2791,2634,2243,4385,3573,2156,4811,2871,
- 4758,3658,2738,4174,3471,2977,652,3467,3198,2755,
- 4245,599,2746,2717,1384,2558,1329,742,633,2618,
- 3076,3486,4289,4067,2492,4276,4053,4515,2819,3154,
- 605,2724,586,4309,2703,2538,2325,953,808,4030,
- 1102,2291,2372,2339,2463,2434,2404,2938,2911,2675,
- 2647,2577,2505,3776,3752,3728,3172,3089,4007,3984,
- 3961,3938,3915,3892,3869,3846,3823,3800,2839,4080,
- 2035,2252,2204,2165,2117,2078,1389,1341,1242,1286,
- 894,1992,1059,835,754,695,541,1949,1906,1863,
- 1820,1777,1734,1691,1648,1605,1562,1519,1476,1433,
- 1199,1015,971,1155,0
+ 6062,6292,6290,6288,0,2597,2665,1716,2533,0,
+ 5212,5150,5088,5026,4964,4902,4840,4778,4714,4502,
+ 4440,4842,0,1763,0,2443,1995,1987,0,2274,
+ 2142,0,5212,5150,2869,2868,5088,5026,4964,4902,
+ 4840,4778,2797,4714,4502,4440,2406,2277,0,6205,
+ 3566,6135,0,2394,2080,0,2314,2089,0,653,
+ 6002,0,5962,653,5914,4675,6002,4591,4329,2512,
+ 2182,3812,5702,2380,4194,4180,4140,0,2446,1022,
+ 0,5928,6191,0,5928,6191,5815,6171,6111,5754,
+ 6097,6037,5737,6022,5212,5150,5088,5026,4964,4902,
+ 4840,4778,4714,4502,4440,0,5928,6191,5815,6171,
+ 6111,5754,6097,6037,5737,6022,0,5747,5349,0,
+ 2245,815,0,3812,5962,4511,5914,4675,4755,4194,
+ 4448,4232,4231,4451,6144,920,3368,2081,0,3330,
+ 3431,3588,3533,3825,3785,3675,3493,2878,929,2812,
+ 2746,2680,2614,2548,2482,2416,2350,2284,2218,2152,
+ 837,769,677,0,2260,1437,1341,651,4675,6144,
+ 4591,4180,4140,3279,3859,718,0,869,746,0,
+ 1047,0,5747,5349,5887,599,4274,0,6233,6181,
+ 6056,5836,5179,5117,5055,4993,4931,4910,5951,5853,
+ 4848,4787,5241,4531,3860,925,3855,4701,4694,4441,
+ 3488,672,0,1625,1578,6233,6181,6056,1384,1249,
+ 5836,885,5179,5117,5055,4993,4931,1907,4459,1860,
+ 1813,4910,1766,5951,5853,1719,1672,1481,1431,4848,
+ 4787,809,5241,4707,4531,3185,2917,3860,925,3855,
+ 765,4701,4694,4441,5887,646,4274,3488,672,2842,
+ 2776,1193,1042,904,4591,4329,2512,2182,3812,5962,
+ 5702,653,5914,4675,2380,4194,4180,6002,4140,2710,
+ 2644,869,746,2878,4153,929,3330,2812,2746,2680,
+ 2614,2548,2482,2416,2350,2284,2218,2152,3431,3588,
+ 3533,3825,3785,3675,4113,4086,4059,5679,3493,837,
+ 769,677,3288,3393,1106,1254,3754,3723,3641,4413,
+ 4346,4032,4005,3978,3905,5325,5301,4301,4631,4604,
+ 5656,5633,5610,5587,5564,5540,5510,5487,5421,5395,
+ 5364,5715,2944,3231,3189,3132,3090,3033,1389,1342,
+ 2991,1293,2095,2053,599,2006,1959,1912,1865,1818,
+ 1771,1724,1677,1630,1583,1536,1489,1439,1207,1058,
+ 995,1144,0
};
};
public final static char scopeState[] = ScopeState.scopeState;
@@ -2343,61 +2755,67 @@ public class CPPNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface InSymb {
public final static char inSymb[] = {0,
- 0,298,126,268,51,42,45,47,43,10,
- 135,124,131,7,132,4,3,127,46,41,
- 5,26,25,6,9,38,37,140,145,148,
- 147,150,149,153,151,155,154,158,60,159,
- 69,3,55,55,55,55,127,3,55,55,
- 168,126,63,3,65,66,55,5,162,65,
- 66,167,166,124,3,123,125,106,119,3,
- 63,89,91,26,25,93,92,6,95,94,
- 68,55,87,88,9,97,96,99,98,100,
- 117,116,115,114,113,112,111,110,109,108,
- 70,107,101,180,162,168,126,180,180,180,
- 180,167,218,126,126,126,270,271,253,272,
- 242,273,56,274,275,10,127,63,63,126,
- 124,63,299,3,188,4,180,48,127,48,
- 218,162,147,147,145,145,145,149,149,149,
- 149,148,148,151,150,150,154,153,155,162,
- 158,126,63,3,216,215,135,125,124,10,
- 127,68,68,68,68,188,259,254,257,254,
- 211,127,172,165,312,276,307,276,127,179,
- 167,254,204,3,300,168,152,261,188,127,
- 179,167,72,211,213,159,222,126,3,127,
- 167,3,3,3,3,125,124,69,167,9,
- 6,126,167,229,125,124,127,123,165,127,
- 167,48,180,126,126,4,219,5,48,226,
- 227,146,228,126,167,48,162,162,162,162,
- 3,3,172,172,311,127,169,223,59,48,
- 203,62,171,314,125,124,230,230,179,165,
- 126,179,188,156,263,266,63,181,4,123,
- 125,156,70,222,199,187,183,127,3,126,
- 69,226,188,218,218,6,126,167,244,225,
- 55,48,280,282,126,3,183,230,230,126,
- 126,188,126,278,123,279,126,3,63,162,
- 4,126,70,70,3,179,167,199,126,211,
- 156,125,172,185,188,165,244,68,55,127,
- 74,126,211,313,72,291,199,124,127,126,
- 126,126,72,278,277,70,69,263,218,213,
- 220,126,126,126,128,126,165,30,48,171,
- 64,59,62,126,179,126,283,72,69,72,
- 70,167,211,316,223,22,127,277,126,226,
- 220,235,237,126,39,126,3,123,59,297,
- 48,10,40,128,283,165,295,127,296,69,
- 127,22,317,179,60,156,126,235,126,165,
- 269,247,281,39,70,127,69,68,55,229,
- 229,284,126,69,179,3,179,127,127,3,
- 126,126,3,70,69,156,127,179,126,70,
- 70,126,303,79,77,1,162,8,85,83,
- 81,80,75,82,84,78,76,59,74,218,
- 179,179,322,220,235,152,165,252,179,225,
- 297,285,102,8,72,213,72,3,3,3,
- 191,3,123,162,123,178,69,126,126,165,
- 225,68,3,72,224,168,224,305,146,75,
- 224,126,126,40,90,321,168,156,199,156,
- 304,126,3,156,285,310,229,156,156,126,
- 70,191,161,269,162,190,69,70,121,302,
- 156,190,8,156
+ 0,313,127,285,49,41,44,46,42,10,
+ 135,124,131,8,132,4,3,126,45,39,
+ 6,35,34,5,7,37,36,140,145,147,
+ 146,152,148,156,155,159,157,160,59,162,
+ 68,3,54,54,54,54,126,3,54,54,
+ 182,127,60,3,66,67,54,6,158,66,
+ 67,166,165,124,3,123,125,117,119,3,
+ 60,91,98,35,34,100,99,5,90,89,
+ 64,54,86,87,7,93,92,95,94,96,
+ 112,111,110,109,108,107,106,105,104,103,
+ 70,102,101,203,158,182,127,203,203,203,
+ 203,166,227,127,127,127,255,256,236,257,
+ 235,258,56,287,259,10,126,60,60,127,
+ 124,60,314,3,197,4,203,55,126,55,
+ 227,158,146,146,145,145,145,148,148,148,
+ 148,147,147,155,152,152,157,156,159,158,
+ 160,127,60,3,223,222,135,125,124,10,
+ 126,64,64,64,64,197,276,271,127,249,
+ 3,167,148,174,169,183,176,184,185,274,
+ 271,220,126,175,164,327,288,322,288,126,
+ 189,166,271,216,3,315,182,150,278,197,
+ 126,189,166,71,220,226,162,231,127,3,
+ 126,166,3,3,3,3,125,124,255,256,
+ 257,258,336,259,10,167,90,89,54,7,
+ 93,92,95,94,96,112,111,110,109,108,
+ 107,106,105,104,103,70,102,101,68,166,
+ 7,5,127,166,243,125,124,126,123,164,
+ 126,166,55,203,127,127,4,228,6,55,
+ 240,241,149,242,127,166,55,158,158,158,
+ 158,3,3,126,64,148,148,148,169,167,
+ 167,176,174,183,158,184,175,175,326,126,
+ 170,237,61,55,215,63,172,329,125,124,
+ 244,244,189,164,127,189,197,153,280,283,
+ 60,190,4,123,125,153,70,231,211,199,
+ 195,126,3,127,68,240,197,227,227,166,
+ 148,71,5,127,166,262,239,54,55,292,
+ 294,127,3,195,244,244,127,127,197,127,
+ 290,123,291,127,3,60,158,4,127,70,
+ 70,3,189,166,211,127,220,153,125,197,
+ 175,173,197,164,262,64,54,126,74,127,
+ 220,328,71,303,211,124,126,127,127,127,
+ 71,290,289,70,68,280,227,226,229,127,
+ 127,127,128,127,164,27,55,172,65,61,
+ 63,127,189,127,295,71,68,71,70,166,
+ 220,331,237,22,126,289,127,240,229,252,
+ 254,127,38,127,3,123,61,309,55,10,
+ 53,128,295,164,307,126,308,68,126,22,
+ 332,189,59,153,127,252,127,164,286,265,
+ 293,38,70,126,68,64,54,243,243,296,
+ 127,68,189,3,189,126,126,3,127,127,
+ 3,70,68,153,126,189,127,70,70,127,
+ 318,79,77,1,158,9,85,83,81,80,
+ 75,82,84,78,76,61,74,227,189,189,
+ 338,229,252,150,164,270,189,239,309,297,
+ 113,9,71,226,71,3,3,3,204,3,
+ 123,158,123,188,68,127,127,164,239,64,
+ 3,71,238,182,238,320,149,75,238,127,
+ 127,53,97,337,182,153,211,153,319,127,
+ 3,153,297,325,243,153,153,127,70,204,
+ 161,286,158,202,68,70,121,317,153,202,
+ 9,153
};
};
public final static char inSymb[] = InSymb.inSymb;
@@ -2577,6 +2995,20 @@ public class CPPNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
"logical_and_expression",
"logical_or_expression",
"assignment_expression",
+ "relational_expression_inTempla" +
+ "te",
+ "equality_expression_inTemplate",
+ "and_expression_inTemplate",
+ "exclusive_or_expression_inTemp" +
+ "late",
+ "inclusive_or_expression_inTemp" +
+ "late",
+ "logical_and_expression_inTempl" +
+ "ate",
+ "logical_or_expression_inTempla" +
+ "te",
+ "assignment_expression_inTempla" +
+ "te",
"expression_list_actual",
"statement",
"compound_statement",
@@ -2652,6 +3084,10 @@ public class CPPNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
"template_parameter",
"template_argument_list",
"template_argument",
+ "type_name_specifier_inTemplate",
+ "type_name_declaration_specifie" +
+ "rs_inTemplate",
+ "type_specifier_seq_inTemplate",
"handler",
"exception_declaration",
"type_id_list"
@@ -2661,10 +3097,10 @@ public class CPPNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public final String name(int index) { return name[index]; }
public final static int
- ERROR_SYMBOL = 61,
- SCOPE_UBOUND = 115,
- SCOPE_SIZE = 116,
- MAX_NAME_LENGTH = 37;
+ ERROR_SYMBOL = 62,
+ SCOPE_UBOUND = 120,
+ SCOPE_SIZE = 121,
+ MAX_NAME_LENGTH = 43;
public final int getErrorSymbol() { return ERROR_SYMBOL; }
public final int getScopeUbound() { return SCOPE_UBOUND; }
@@ -2672,20 +3108,20 @@ public class CPPNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public final int getMaxNameLength() { return MAX_NAME_LENGTH; }
public final static int
- NUM_STATES = 544,
+ NUM_STATES = 602,
NT_OFFSET = 122,
- LA_STATE_OFFSET = 5982,
+ LA_STATE_OFFSET = 7448,
MAX_LA = 2147483647,
- NUM_RULES = 540,
- NUM_NONTERMINALS = 204,
- NUM_SYMBOLS = 326,
+ NUM_RULES = 598,
+ NUM_NONTERMINALS = 225,
+ NUM_SYMBOLS = 347,
SEGMENT_SIZE = 8192,
- START_STATE = 645,
+ START_STATE = 4258,
IDENTIFIER_SYMBOL = 0,
EOFT_SYMBOL = 120,
EOLT_SYMBOL = 120,
- ACCEPT_ACTION = 5074,
- ERROR_ACTION = 5442;
+ ACCEPT_ACTION = 6410,
+ ERROR_ACTION = 6850;
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 ae4edf27c8..075073973b 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,127 +15,127 @@ package org.eclipse.cdt.internal.core.dom.lrparser.cpp;
public interface CPPNoCastExpressionParsersym {
public final static int
- TK_asm = 64,
- TK_auto = 28,
+ TK_asm = 65,
+ TK_auto = 25,
TK_bool = 11,
TK_break = 76,
TK_case = 77,
- TK_catch = 102,
+ TK_catch = 113,
TK_char = 12,
- TK_class = 40,
+ TK_class = 53,
TK_const = 23,
- TK_const_cast = 42,
+ TK_const_cast = 41,
TK_continue = 78,
TK_default = 79,
- TK_delete = 65,
+ TK_delete = 66,
TK_do = 80,
TK_double = 13,
- TK_dynamic_cast = 43,
+ TK_dynamic_cast = 42,
TK_else = 121,
TK_enum = 56,
- TK_explicit = 29,
- TK_export = 86,
- TK_extern = 30,
- TK_false = 44,
+ TK_explicit = 26,
+ TK_export = 88,
+ TK_extern = 27,
+ TK_false = 43,
TK_float = 14,
TK_for = 81,
- TK_friend = 31,
+ TK_friend = 28,
TK_goto = 82,
TK_if = 83,
- TK_inline = 32,
+ TK_inline = 29,
TK_int = 15,
TK_long = 16,
- TK_mutable = 33,
- TK_namespace = 59,
- TK_new = 66,
- TK_operator = 7,
- TK_private = 103,
- TK_protected = 104,
- TK_public = 105,
- TK_register = 34,
- TK_reinterpret_cast = 45,
+ TK_mutable = 30,
+ TK_namespace = 61,
+ TK_new = 67,
+ TK_operator = 8,
+ TK_private = 114,
+ TK_protected = 115,
+ TK_public = 116,
+ TK_register = 31,
+ TK_reinterpret_cast = 44,
TK_return = 84,
TK_short = 17,
TK_signed = 18,
- TK_sizeof = 46,
- TK_static = 35,
- TK_static_cast = 47,
+ TK_sizeof = 45,
+ TK_static = 32,
+ TK_static_cast = 46,
TK_struct = 57,
TK_switch = 85,
- TK_template = 48,
- TK_this = 49,
- TK_throw = 60,
+ TK_template = 55,
+ TK_this = 47,
+ TK_throw = 59,
TK_try = 74,
- TK_true = 50,
- TK_typedef = 36,
- TK_typeid = 51,
+ TK_true = 48,
+ TK_typedef = 33,
+ TK_typeid = 49,
TK_typename = 10,
TK_union = 58,
TK_unsigned = 19,
- TK_using = 62,
+ TK_using = 63,
TK_virtual = 22,
TK_void = 20,
TK_volatile = 24,
TK_wchar_t = 21,
TK_while = 75,
- TK_integer = 52,
- TK_floating = 53,
- TK_charconst = 54,
- TK_stringlit = 39,
+ TK_integer = 50,
+ TK_floating = 51,
+ TK_charconst = 52,
+ TK_stringlit = 38,
TK_identifier = 1,
TK_Completion = 2,
- TK_EndOfCompletion = 8,
+ TK_EndOfCompletion = 9,
TK_Invalid = 122,
- TK_LeftBracket = 63,
+ TK_LeftBracket = 60,
TK_LeftParen = 3,
TK_Dot = 119,
- TK_DotStar = 91,
- TK_Arrow = 106,
- TK_ArrowStar = 89,
- TK_PlusPlus = 37,
- TK_MinusMinus = 38,
- TK_And = 9,
- TK_Star = 6,
- TK_Plus = 25,
- TK_Minus = 26,
- TK_Tilde = 5,
- TK_Bang = 41,
- TK_Slash = 92,
- TK_Percent = 93,
- TK_RightShift = 87,
- TK_LeftShift = 88,
- TK_LT = 55,
- TK_GT = 68,
- TK_LE = 94,
- TK_GE = 95,
- TK_EQ = 96,
- TK_NE = 97,
- TK_Caret = 98,
- TK_Or = 99,
- TK_AndAnd = 100,
+ TK_DotStar = 98,
+ TK_Arrow = 117,
+ TK_ArrowStar = 91,
+ TK_PlusPlus = 36,
+ TK_MinusMinus = 37,
+ TK_And = 7,
+ TK_Star = 5,
+ TK_Plus = 34,
+ TK_Minus = 35,
+ TK_Tilde = 6,
+ TK_Bang = 39,
+ TK_Slash = 99,
+ TK_Percent = 100,
+ TK_RightShift = 86,
+ TK_LeftShift = 87,
+ TK_LT = 54,
+ TK_GT = 64,
+ TK_LE = 89,
+ TK_GE = 90,
+ TK_EQ = 92,
+ TK_NE = 93,
+ TK_Caret = 94,
+ TK_Or = 95,
+ TK_AndAnd = 96,
TK_OrOr = 101,
- TK_Question = 107,
- TK_Colon = 72,
+ TK_Question = 102,
+ TK_Colon = 71,
TK_ColonColon = 4,
- TK_DotDotDot = 90,
+ TK_DotDotDot = 97,
TK_Assign = 70,
- TK_StarAssign = 108,
- TK_SlashAssign = 109,
- TK_PercentAssign = 110,
- TK_PlusAssign = 111,
- TK_MinusAssign = 112,
- TK_RightShiftAssign = 113,
- TK_LeftShiftAssign = 114,
- TK_AndAssign = 115,
- TK_CaretAssign = 116,
- TK_OrAssign = 117,
- TK_Comma = 69,
+ TK_StarAssign = 103,
+ TK_SlashAssign = 104,
+ TK_PercentAssign = 105,
+ TK_PlusAssign = 106,
+ TK_MinusAssign = 107,
+ TK_RightShiftAssign = 108,
+ TK_LeftShiftAssign = 109,
+ TK_AndAssign = 110,
+ TK_CaretAssign = 111,
+ TK_OrAssign = 112,
+ TK_Comma = 68,
TK_RightBracket = 118,
- TK_RightParen = 73,
- TK_RightBrace = 71,
- TK_SemiColon = 27,
- TK_LeftBrace = 67,
- TK_ERROR_TOKEN = 61,
+ TK_RightParen = 72,
+ TK_RightBrace = 73,
+ TK_SemiColon = 40,
+ TK_LeftBrace = 69,
+ TK_ERROR_TOKEN = 62,
TK_EOF_TOKEN = 120;
public final static String orderedTerminalSymbols[] = {
@@ -144,11 +144,11 @@ public interface CPPNoCastExpressionParsersym {
"Completion",
"LeftParen",
"ColonColon",
- "Tilde",
"Star",
+ "Tilde",
+ "And",
"operator",
"EndOfCompletion",
- "And",
"typename",
"bool",
"char",
@@ -164,9 +164,6 @@ public interface CPPNoCastExpressionParsersym {
"virtual",
"const",
"volatile",
- "Plus",
- "Minus",
- "SemiColon",
"auto",
"explicit",
"extern",
@@ -176,43 +173,46 @@ public interface CPPNoCastExpressionParsersym {
"register",
"static",
"typedef",
+ "Plus",
+ "Minus",
"PlusPlus",
"MinusMinus",
"stringlit",
- "class",
"Bang",
+ "SemiColon",
"const_cast",
"dynamic_cast",
"false",
"reinterpret_cast",
"sizeof",
"static_cast",
- "template",
"this",
"true",
"typeid",
"integer",
"floating",
"charconst",
+ "class",
"LT",
+ "template",
"enum",
"struct",
"union",
- "namespace",
"throw",
+ "LeftBracket",
+ "namespace",
"ERROR_TOKEN",
"using",
- "LeftBracket",
+ "GT",
"asm",
"delete",
"new",
- "LeftBrace",
- "GT",
"Comma",
+ "LeftBrace",
"Assign",
- "RightBrace",
"Colon",
"RightParen",
+ "RightBrace",
"try",
"while",
"break",
@@ -225,27 +225,22 @@ public interface CPPNoCastExpressionParsersym {
"if",
"return",
"switch",
- "export",
"RightShift",
"LeftShift",
- "ArrowStar",
- "DotDotDot",
- "DotStar",
- "Slash",
- "Percent",
+ "export",
"LE",
"GE",
+ "ArrowStar",
"EQ",
"NE",
"Caret",
"Or",
"AndAnd",
+ "DotDotDot",
+ "DotStar",
+ "Slash",
+ "Percent",
"OrOr",
- "catch",
- "private",
- "protected",
- "public",
- "Arrow",
"Question",
"StarAssign",
"SlashAssign",
@@ -257,6 +252,11 @@ public interface CPPNoCastExpressionParsersym {
"AndAssign",
"CaretAssign",
"OrAssign",
+ "catch",
+ "private",
+ "protected",
+ "public",
+ "Arrow",
"RightBracket",
"Dot",
"EOF_TOKEN",
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPNoFunctionDeclaratorParser.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPNoFunctionDeclaratorParser.java
index f0a60677a1..d97915cca6 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPNoFunctionDeclaratorParser.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPNoFunctionDeclaratorParser.java
@@ -248,7 +248,13 @@ public void setTokens(List<IToken> tokens) {
public CPPNoFunctionDeclaratorParser(ITokenStream stream, Map<String,String> properties) { // constructor for creating secondary parser
initActions(properties);
tokenMap = new TokenMap(CPPNoFunctionDeclaratorParsersym.orderedTerminalSymbols, stream.getOrderedTerminalSymbols());
-}
+}
+
+ public CPPNoFunctionDeclaratorParser(ITokenStream stream, IScanner scanner, IBuiltinBindingsProvider builtinBindingsProvider, IIndex index, Map<String,String> properties) { // constructor for creating secondary parser
+ initActions(properties);
+ action.initializeTranslationUnit(scanner, builtinBindingsProvider, index);
+ tokenMap = new TokenMap(CPPNoFunctionDeclaratorParsersym.orderedTerminalSymbols, stream.getOrderedTerminalSymbols());
+}
public void ruleAction(int ruleNumber)
@@ -815,1125 +821,1353 @@ public CPPNoFunctionDeclaratorParser(ITokenStream stream, Map<String,String> pro
}
//
- // Rule 141: throw_expression ::= throw
+ // Rule 142: relational_expression_inTemplate ::= relational_expression_inTemplate < shift_expression
//
- case 141: { action. consumeExpressionThrow(false); break;
+ case 142: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_lessThan); break;
}
//
- // Rule 142: throw_expression ::= throw assignment_expression
+ // Rule 143: relational_expression_inTemplate ::= ( relational_expression_inTemplate > shift_expression )
//
- case 142: { action. consumeExpressionThrow(true); break;
+ case 143: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_greaterThan); break;
}
//
- // Rule 145: assignment_expression ::= logical_or_expression = assignment_expression
+ // Rule 144: relational_expression_inTemplate ::= relational_expression_inTemplate <= shift_expression
//
- case 145: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_assign); break;
+ case 144: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_lessEqual); break;
}
//
- // Rule 146: assignment_expression ::= logical_or_expression *= assignment_expression
+ // Rule 145: relational_expression_inTemplate ::= relational_expression_inTemplate >= shift_expression
//
- case 146: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_multiplyAssign); break;
+ case 145: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_greaterEqual); break;
}
//
- // Rule 147: assignment_expression ::= logical_or_expression /= assignment_expression
+ // Rule 147: equality_expression_inTemplate ::= equality_expression_inTemplate == relational_expression_inTemplate
//
- case 147: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_divideAssign); break;
+ case 147: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_equals); break;
}
//
- // Rule 148: assignment_expression ::= logical_or_expression %= assignment_expression
+ // Rule 148: equality_expression_inTemplate ::= equality_expression_inTemplate != relational_expression_inTemplate
//
- case 148: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_moduloAssign); break;
+ case 148: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_notequals); break;
}
//
- // Rule 149: assignment_expression ::= logical_or_expression += assignment_expression
+ // Rule 150: and_expression_inTemplate ::= and_expression_inTemplate & equality_expression_inTemplate
//
- case 149: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_plusAssign); break;
+ case 150: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_binaryAnd); break;
}
//
- // Rule 150: assignment_expression ::= logical_or_expression -= assignment_expression
+ // Rule 152: exclusive_or_expression_inTemplate ::= exclusive_or_expression_inTemplate ^ and_expression_inTemplate
//
- case 150: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_minusAssign); break;
+ case 152: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_binaryXor); break;
}
//
- // Rule 151: assignment_expression ::= logical_or_expression >>= assignment_expression
+ // Rule 154: inclusive_or_expression_inTemplate ::= inclusive_or_expression_inTemplate | exclusive_or_expression_inTemplate
//
- case 151: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_shiftRightAssign); break;
+ case 154: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_binaryOr); break;
}
//
- // Rule 152: assignment_expression ::= logical_or_expression <<= assignment_expression
+ // Rule 156: logical_and_expression_inTemplate ::= logical_and_expression_inTemplate && inclusive_or_expression_inTemplate
//
- case 152: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_shiftLeftAssign); break;
+ case 156: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_logicalAnd); break;
}
//
- // Rule 153: assignment_expression ::= logical_or_expression &= assignment_expression
+ // Rule 158: logical_or_expression_inTemplate ::= logical_or_expression_inTemplate || logical_and_expression_inTemplate
//
- case 153: { action. consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_binaryAndAssign); break;
+ case