Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMike Kucera2009-02-04 21:58:18 +0000
committerMike Kucera2009-02-04 21:58:18 +0000
commitc9b3182198be50b2aa80d612d16ccc35402adb54 (patch)
tree2218a93bf91b4208f87c138a06067d3f9a8b5ad1 /lrparser/org.eclipse.cdt.core.lrparser
parentb1f0b681d3be562f5ff5a35e2c7de71feea0de60 (diff)
downloadorg.eclipse.cdt-c9b3182198be50b2aa80d612d16ccc35402adb54.tar.gz
org.eclipse.cdt-c9b3182198be50b2aa80d612d16ccc35402adb54.tar.xz
org.eclipse.cdt-c9b3182198be50b2aa80d612d16ccc35402adb54.zip
cleaning up the architecture of the LR parsers
Diffstat (limited to 'lrparser/org.eclipse.cdt.core.lrparser')
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/grammar/c99/C99ExpressionParser.g2
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/grammar/c99/C99NoCastExpressionParser.g2
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/grammar/c99/C99Parser.g8
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/grammar/c99/C99SizeofExpressionParser.g2
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/grammar/cpp/CPPExpressionParser.g2
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/grammar/cpp/CPPNoCastExpressionParser.g2
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/grammar/cpp/CPPNoFunctionDeclaratorParser.g2
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/grammar/cpp/CPPParser.g6
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/grammar/cpp/CPPSizeofExpressionParser.g2
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/grammar/cpp/CPPTemplateTypeParameterParser.g2
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/grammar/gcc/GCCParser.g6
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/grammar/gcc/GCCSizeofExpressionParser.g2
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/grammar/gpp/GPPParser.g6
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/grammar/gpp/GPPSizeofExpressionParser.g2
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/grammar/template/LRParserTemplate.g (renamed from lrparser/org.eclipse.cdt.core.lrparser/grammar/template/FixedBtParserTemplateD.g)60
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/grammar/template/LRSecondaryParserTemplate.g66
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/old/org/eclipse/cdt/internal/core/dom/lrparser/c99/action/deprecated/C99ResolveParserAction.java6
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/old/org/eclipse/cdt/internal/core/dom/lrparser/c99/action/deprecated/C99TypedefTrackerParserAction.java6
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/BaseExtensibleLanguage.java87
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/CPreprocessorAdapter.java4
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/IParser.java5
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/ISecondaryParser.java37
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/ITokenCollector.java19
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/LRParserPlugin.java40
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/AbstractParserAction.java22
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/BuildASTParserAction.java81
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/ISecondaryParserFactory.java10
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/ITokenStream.java (renamed from lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/IParserActionTokenProvider.java)6
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/c99/C99BuildASTParserAction.java28
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/c99/C99SecondaryParserFactory.java17
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/cpp/CPPBuildASTParserAction.java90
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/cpp/CPPSecondaryParserFactory.java25
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/cpp/ICPPSecondaryParserFactory.java9
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/gnu/GCCBuildASTParserAction.java6
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/gnu/GCCSecondaryParserFactory.java17
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/gnu/GNUBuildASTParserAction.java6
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/gnu/GPPBuildASTParserAction.java4
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/gnu/GPPSecondaryParserFactory.java25
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/c99/C99Language.java25
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/cpp/ISOCPPLanguage.java21
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/gnu/GCCLanguage.java21
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/gnu/GPPLanguage.java21
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99ExpressionParser.java682
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99ExpressionParserprs.java1085
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99NoCastExpressionParser.java678
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99NoCastExpressionParserprs.java1078
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99Parser.java697
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99Parserprs.java1610
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99SizeofExpressionParser.java678
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99SizeofExpressionParserprs.java1080
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPExpressionParser.java32
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPExpressionParserprs.java2863
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPNoCastExpressionParser.java32
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPNoCastExpressionParserprs.java2834
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPNoFunctionDeclaratorParser.java32
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPNoFunctionDeclaratorParserprs.java2972
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPParser.java51
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPParserprs.java1211
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPSizeofExpressionParser.java32
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPSizeofExpressionParserprs.java2886
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPTemplateTypeParameterParser.java32
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPTemplateTypeParameterParserprs.java2997
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gcc/GCCParser.java45
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gcc/GCCSizeofExpressionParser.java26
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gpp/GPPParser.java77
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gpp/GPPParserprs.java4262
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gpp/GPPParsersym.java12
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gpp/GPPSizeofExpressionParser.java62
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gpp/GPPSizeofExpressionParserprs.java4336
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gpp/GPPSizeofExpressionParsersym.java42
70 files changed, 16731 insertions, 16503 deletions
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/grammar/c99/C99ExpressionParser.g b/lrparser/org.eclipse.cdt.core.lrparser/grammar/c99/C99ExpressionParser.g
index ba2ae8d25b1..4e999b0da82 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/grammar/c99/C99ExpressionParser.g
+++ b/lrparser/org.eclipse.cdt.core.lrparser/grammar/c99/C99ExpressionParser.g
@@ -11,7 +11,7 @@
%options la=2
%options package=org.eclipse.cdt.internal.core.dom.lrparser.c99
-%options template=FixedBtParserTemplateD.g
+%options template=LRSecondaryParserTemplate.g
-- All we need to do is import the main parser and redefine the start symbol.
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/grammar/c99/C99NoCastExpressionParser.g b/lrparser/org.eclipse.cdt.core.lrparser/grammar/c99/C99NoCastExpressionParser.g
index 7948a0aea55..229155762b1 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/grammar/c99/C99NoCastExpressionParser.g
+++ b/lrparser/org.eclipse.cdt.core.lrparser/grammar/c99/C99NoCastExpressionParser.g
@@ -11,7 +11,7 @@
%options la=2
%options package=org.eclipse.cdt.internal.core.dom.lrparser.c99
-%options template=FixedBtParserTemplateD.g
+%options template=LRSecondaryParserTemplate.g
$Import
C99Grammar.g
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/grammar/c99/C99Parser.g b/lrparser/org.eclipse.cdt.core.lrparser/grammar/c99/C99Parser.g
index 38195cc4a01..505d9ed0b94 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/grammar/c99/C99Parser.g
+++ b/lrparser/org.eclipse.cdt.core.lrparser/grammar/c99/C99Parser.g
@@ -11,19 +11,15 @@
%options la=2
%options package=org.eclipse.cdt.internal.core.dom.lrparser.c99
-%options template=FixedBtParserTemplateD.g
+%options template=LRParserTemplate.g
-- This file is needed because LPG won't allow redefinition of the
--- start symbol, so C99Grammar.g cannot define a start symbol.
+-- start symbol, so C99Grammar.g cannot define the start symbol.
$Import
C99Grammar.g
$End
-$Define
- $ast_class /. IASTTranslationUnit ./
-$End
-
$Start
translation_unit
$End \ No newline at end of file
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/grammar/c99/C99SizeofExpressionParser.g b/lrparser/org.eclipse.cdt.core.lrparser/grammar/c99/C99SizeofExpressionParser.g
index 14084dc832a..d9e515c576a 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/grammar/c99/C99SizeofExpressionParser.g
+++ b/lrparser/org.eclipse.cdt.core.lrparser/grammar/c99/C99SizeofExpressionParser.g
@@ -11,7 +11,7 @@
%options la=2
%options package=org.eclipse.cdt.internal.core.dom.lrparser.c99
-%options template=FixedBtParserTemplateD.g
+%options template=LRSecondaryParserTemplate.g
$Import
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/grammar/cpp/CPPExpressionParser.g b/lrparser/org.eclipse.cdt.core.lrparser/grammar/cpp/CPPExpressionParser.g
index b9ab4957b75..ef93dac3d56 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/grammar/cpp/CPPExpressionParser.g
+++ b/lrparser/org.eclipse.cdt.core.lrparser/grammar/cpp/CPPExpressionParser.g
@@ -11,7 +11,7 @@
%options la=2
%options package=org.eclipse.cdt.internal.core.dom.lrparser.cpp
-%options template=FixedBtParserTemplateD.g
+%options template=LRSecondaryParserTemplate.g
-- All we need to do is import the main parser and redefine the start symbol.
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/grammar/cpp/CPPNoCastExpressionParser.g b/lrparser/org.eclipse.cdt.core.lrparser/grammar/cpp/CPPNoCastExpressionParser.g
index ea1a9d944d8..f5438e7751e 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/grammar/cpp/CPPNoCastExpressionParser.g
+++ b/lrparser/org.eclipse.cdt.core.lrparser/grammar/cpp/CPPNoCastExpressionParser.g
@@ -11,7 +11,7 @@
%options la=2
%options package=org.eclipse.cdt.internal.core.dom.lrparser.cpp
-%options template=FixedBtParserTemplateD.g
+%options template=LRSecondaryParserTemplate.g
$Import
CPPGrammar.g
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/grammar/cpp/CPPNoFunctionDeclaratorParser.g b/lrparser/org.eclipse.cdt.core.lrparser/grammar/cpp/CPPNoFunctionDeclaratorParser.g
index 6e0bcc4cd39..ad093c6355d 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/grammar/cpp/CPPNoFunctionDeclaratorParser.g
+++ b/lrparser/org.eclipse.cdt.core.lrparser/grammar/cpp/CPPNoFunctionDeclaratorParser.g
@@ -11,7 +11,7 @@
%options la=2
%options package=org.eclipse.cdt.internal.core.dom.lrparser.cpp
-%options template=FixedBtParserTemplateD.g
+%options template=LRSecondaryParserTemplate.g
$Import
CPPGrammar.g
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/grammar/cpp/CPPParser.g b/lrparser/org.eclipse.cdt.core.lrparser/grammar/cpp/CPPParser.g
index 8f4d80864de..9d9fb78abe8 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/grammar/cpp/CPPParser.g
+++ b/lrparser/org.eclipse.cdt.core.lrparser/grammar/cpp/CPPParser.g
@@ -11,7 +11,7 @@
%options la=2
%options package=org.eclipse.cdt.internal.core.dom.lrparser.cpp
-%options template=FixedBtParserTemplateD.g
+%options template=LRParserTemplate.g
-- This file is needed because LPG won't allow redefinition of the
@@ -21,10 +21,6 @@ $Import
CPPGrammar.g
$End
-$Define
- $ast_class /. IASTTranslationUnit ./
-$End
-
$Start
translation_unit
$End \ No newline at end of file
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/grammar/cpp/CPPSizeofExpressionParser.g b/lrparser/org.eclipse.cdt.core.lrparser/grammar/cpp/CPPSizeofExpressionParser.g
index 124f023bb3f..44f875fcea3 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/grammar/cpp/CPPSizeofExpressionParser.g
+++ b/lrparser/org.eclipse.cdt.core.lrparser/grammar/cpp/CPPSizeofExpressionParser.g
@@ -11,7 +11,7 @@
%options la=2
%options package=org.eclipse.cdt.internal.core.dom.lrparser.cpp
-%options template=FixedBtParserTemplateD.g
+%options template=LRSecondaryParserTemplate.g
$Import
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/grammar/cpp/CPPTemplateTypeParameterParser.g b/lrparser/org.eclipse.cdt.core.lrparser/grammar/cpp/CPPTemplateTypeParameterParser.g
index dfacf88d8eb..86f452af64b 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/grammar/cpp/CPPTemplateTypeParameterParser.g
+++ b/lrparser/org.eclipse.cdt.core.lrparser/grammar/cpp/CPPTemplateTypeParameterParser.g
@@ -11,7 +11,7 @@
%options la=2
%options package=org.eclipse.cdt.internal.core.dom.lrparser.cpp
-%options template=FixedBtParserTemplateD.g
+%options template=LRSecondaryParserTemplate.g
-- This parser is a bit of a hack.
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/grammar/gcc/GCCParser.g b/lrparser/org.eclipse.cdt.core.lrparser/grammar/gcc/GCCParser.g
index 1ae760dd6dd..ac9b15cff22 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/grammar/gcc/GCCParser.g
+++ b/lrparser/org.eclipse.cdt.core.lrparser/grammar/gcc/GCCParser.g
@@ -11,7 +11,7 @@
%options la=2
%options package=org.eclipse.cdt.internal.core.dom.lrparser.gcc
-%options template=FixedBtParserTemplateD.g
+%options template=LRParserTemplate.g
-- This file is needed because LPG won't allow redefinition of the
@@ -21,10 +21,6 @@ $Import
GCCGrammar.g
$End
-$Define
- $ast_class /. IASTTranslationUnit ./
-$End
-
$Start
translation_unit
$End \ No newline at end of file
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/grammar/gcc/GCCSizeofExpressionParser.g b/lrparser/org.eclipse.cdt.core.lrparser/grammar/gcc/GCCSizeofExpressionParser.g
index a3c6000fed2..389a215e6cd 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/grammar/gcc/GCCSizeofExpressionParser.g
+++ b/lrparser/org.eclipse.cdt.core.lrparser/grammar/gcc/GCCSizeofExpressionParser.g
@@ -11,7 +11,7 @@
%options la=2
%options package=org.eclipse.cdt.internal.core.dom.lrparser.gcc
-%options template=FixedBtParserTemplateD.g
+%options template=LRSecondaryParserTemplate.g
$Import
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/grammar/gpp/GPPParser.g b/lrparser/org.eclipse.cdt.core.lrparser/grammar/gpp/GPPParser.g
index f2dd3ebf20b..4ee7b043a00 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/grammar/gpp/GPPParser.g
+++ b/lrparser/org.eclipse.cdt.core.lrparser/grammar/gpp/GPPParser.g
@@ -11,7 +11,7 @@
%options la=2
%options package=org.eclipse.cdt.internal.core.dom.lrparser.gpp
-%options template=FixedBtParserTemplateD.g
+%options template=LRParserTemplate.g
-- This file is needed because LPG won't allow redefinition of the
@@ -21,10 +21,6 @@ $Import
GPPGrammar.g
$End
-$Define
- $ast_class /. IASTTranslationUnit ./
-$End
-
$Start
translation_unit
$End \ No newline at end of file
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/grammar/gpp/GPPSizeofExpressionParser.g b/lrparser/org.eclipse.cdt.core.lrparser/grammar/gpp/GPPSizeofExpressionParser.g
index 68bb20848a8..e8a8833d667 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/grammar/gpp/GPPSizeofExpressionParser.g
+++ b/lrparser/org.eclipse.cdt.core.lrparser/grammar/gpp/GPPSizeofExpressionParser.g
@@ -11,7 +11,7 @@
%options la=2
%options package=org.eclipse.cdt.internal.core.dom.lrparser.gpp
-%options template=FixedBtParserTemplateD.g
+%options template=LRSecondaryParserTemplate.g
$Import
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/grammar/template/FixedBtParserTemplateD.g b/lrparser/org.eclipse.cdt.core.lrparser/grammar/template/LRParserTemplate.g
index ea7a5bf27e5..f5be287b827 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/grammar/template/FixedBtParserTemplateD.g
+++ b/lrparser/org.eclipse.cdt.core.lrparser/grammar/template/LRParserTemplate.g
@@ -10,7 +10,7 @@
----------------------------------------------------------------------------------
--- This template is a modified version of BtParserTemplateD.g.
+-- This template is a modified version of BtParserTemplateD.g. for use with the LR parsers.
-- This template contains a fix for an LPG bug:
-- http://sourceforge.net/tracker/index.php?func=detail&aid=1732851&group_id=155963&atid=797879
@@ -141,7 +141,9 @@ $End
$Headers
/.
- public class $action_type extends PrsStream implements RuleAction$additional_interfaces
+ public class $action_type extends PrsStream implements RuleAction, ITokenStream,
+ ITokenCollector, IParser<$ast_class>
+ $additional_interfaces
{
private static ParseTable prs = new $prs_type();
private FixedBacktrackingParser btParser;
@@ -312,10 +314,10 @@ $End
$Define
-- These macros allow the template and header code to be customized by an extending parser.
- $ast_class /. IASTNode ./ -- override with more specific node type
+ $ast_class /. IASTTranslationUnit ./ -- override in secondary parsers
$extra_interfaces /. ./ -- can override this macro to provide additional interfaces
- $additional_interfaces /. , IParserActionTokenProvider, IParser<$ast_class> $extra_interfaces ./
+ $additional_interfaces /. $extra_interfaces ./
$build_action_class /. ./ -- name of the class that has the AST building callbacks
$node_factory_create_expression /. ./ -- expression that will create the INodeFactory
@@ -332,10 +334,16 @@ $Globals
/.
import java.util.*;
import org.eclipse.cdt.core.dom.ast.*;
+ import org.eclipse.cdt.core.dom.lrparser.IDOMTokenMap;
import org.eclipse.cdt.core.dom.lrparser.IParser;
- import org.eclipse.cdt.core.dom.lrparser.IParserActionTokenProvider;
+ import org.eclipse.cdt.core.dom.lrparser.ITokenCollector;
+ import org.eclipse.cdt.core.dom.lrparser.CPreprocessorAdapter;
+ import org.eclipse.cdt.core.dom.lrparser.action.ITokenStream;
import org.eclipse.cdt.core.dom.lrparser.lpgextensions.FixedBacktrackingParser;
import org.eclipse.cdt.core.dom.lrparser.action.ScopedStack;
+ import org.eclipse.cdt.core.parser.IScanner;
+ import org.eclipse.cdt.core.dom.parser.IBuiltinBindingsProvider;
+ import org.eclipse.cdt.core.index.IIndex;
./
$End
@@ -344,7 +352,11 @@ $Headers
private $build_action_class action;
private IASTCompletionNode compNode;
- public $action_type() { // constructor
+
+ public $action_type(IScanner scanner, IDOMTokenMap tokenMap, IBuiltinBindingsProvider builtinBindingsProvider, IIndex index, Set<IParser.Options> options) {
+ initActions(options);
+ action.initializeTranslationUnit(scanner, builtinBindingsProvider, index);
+ CPreprocessorAdapter.runCPreprocessor(scanner, this, tokenMap);
}
private void initActions(Set<IParser.Options> options) {
@@ -363,10 +375,9 @@ $Headers
}
- public $ast_class parse(Set<IParser.Options> options) {
+ public $ast_class parse() {
// this has to be done, or... kaboom!
setStreamLength(getSize());
- initActions(options);
final int errorRepairCount = -1; // -1 means full error handling
parser(null, errorRepairCount); // do the actual parse
@@ -398,37 +409,4 @@ $Headers
./
$End
-$Globals
-/.
- import org.eclipse.cdt.core.dom.lrparser.action.ITokenMap;
- import org.eclipse.cdt.core.dom.lrparser.action.TokenMap;
-./
-$End
-$Headers
-/.
-
- private ITokenMap tokenMap = null;
-
- public void setTokens(List<IToken> tokens) {
- resetTokenStream();
- addToken(new Token(null, 0, 0, 0)); // dummy token
- for(IToken token : tokens) {
- token.setKind(tokenMap.mapKind(token.getKind()));
- addToken(token);
- }
- addToken(new Token(null, 0, 0, $sym_type.TK_EOF_TOKEN));
- }
-
- public $action_type(IParserActionTokenProvider parser) { // constructor
- tokenMap = new TokenMap($sym_type.orderedTerminalSymbols, parser.getOrderedTerminalSymbols());
- }
-
-
-./
-$End
-
-
---
--- E N D O F T E M P L A T E
---
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/grammar/template/LRSecondaryParserTemplate.g b/lrparser/org.eclipse.cdt.core.lrparser/grammar/template/LRSecondaryParserTemplate.g
new file mode 100644
index 00000000000..b449829d1f6
--- /dev/null
+++ b/lrparser/org.eclipse.cdt.core.lrparser/grammar/template/LRSecondaryParserTemplate.g
@@ -0,0 +1,66 @@
+----------------------------------------------------------------------------------
+-- Copyright (c) 2006, 2009 IBM Corporation and others.
+-- All rights reserved. This program and the accompanying materials
+-- are made available under the terms of the Eclipse Public License v1.0
+-- which accompanies this distribution, and is available at
+-- http://www.eclipse.org/legal/epl_v10.html
+--
+-- Contributors:
+-- IBM Corporation - initial API and implementation
+----------------------------------------------------------------------------------
+
+
+%Options programming_language=java,margin=4,backtrack
+%Options table,error_maps,scopes
+%options prefix=TK_,
+%options action=("*.java", "/.", "./")
+%options ParseTable=lpg.lpgjavaruntime.ParseTable
+
+
+-- additional code needed by secondary parsers
+
+-- path is relative to the grammar file that uses the template
+$Include
+../template/LRParserTemplate.g
+$End
+
+
+
+
+$Define
+
+ $additional_interfaces /. , ISecondaryParser<$ast_class> $extra_interfaces ./
+
+$End
+
+$Globals
+/.
+ import org.eclipse.cdt.core.dom.lrparser.action.ITokenMap;
+ import org.eclipse.cdt.core.dom.lrparser.action.TokenMap;
+ import org.eclipse.cdt.core.dom.lrparser.ISecondaryParser;
+./
+$End
+
+$Headers
+/.
+
+ private ITokenMap tokenMap = null;
+
+ public void setTokens(List<IToken> tokens) {
+ resetTokenStream();
+ addToken(new Token(null, 0, 0, 0)); // dummy token
+ for(IToken token : tokens) {
+ token.setKind(tokenMap.mapKind(token.getKind()));
+ addToken(token);
+ }
+ addToken(new Token(null, 0, 0, $sym_type.TK_EOF_TOKEN));
+ }
+
+ public $action_type(ITokenStream stream, Set<IParser.Options> options) { // constructor for creating secondary parser
+ initActions(options);
+ tokenMap = new TokenMap($sym_type.orderedTerminalSymbols, stream.getOrderedTerminalSymbols());
+ }
+
+./
+$End
+
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/old/org/eclipse/cdt/internal/core/dom/lrparser/c99/action/deprecated/C99ResolveParserAction.java b/lrparser/org.eclipse.cdt.core.lrparser/old/org/eclipse/cdt/internal/core/dom/lrparser/c99/action/deprecated/C99ResolveParserAction.java
index d893671abe3..8076a5afaeb 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/old/org/eclipse/cdt/internal/core/dom/lrparser/c99/action/deprecated/C99ResolveParserAction.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/old/org/eclipse/cdt/internal/core/dom/lrparser/c99/action/deprecated/C99ResolveParserAction.java
@@ -35,7 +35,7 @@ import org.eclipse.cdt.core.dom.ast.IParameter;
import org.eclipse.cdt.core.dom.ast.IPointerType;
import org.eclipse.cdt.core.dom.ast.IType;
import org.eclipse.cdt.core.dom.ast.ITypedef;
-import org.eclipse.cdt.core.dom.lrparser.IParserActionTokenProvider;
+import org.eclipse.cdt.core.dom.lrparser.action.ITokenStream;
import org.eclipse.cdt.core.dom.lrparser.action.ScopedStack;
import org.eclipse.cdt.core.parser.util.DebugUtil;
import org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym;
@@ -87,7 +87,7 @@ import org.eclipse.cdt.internal.core.dom.parser.ITypeContainer;
// provides limited access to the token stream
- private final IParserActionTokenProvider parser;
+ private final ITokenStream parser;
// The symbolTable currently in use
private C99SymbolTable symbolTable = C99SymbolTable.EMPTY_TABLE;
@@ -138,7 +138,7 @@ import org.eclipse.cdt.internal.core.dom.parser.ITypeContainer;
}
- public C99ResolveParserAction(IParserActionTokenProvider parser) {
+ public C99ResolveParserAction(ITokenStream parser) {
this.parser = parser;
bindingScopeStack.add(new C99Scope(EScopeKind.eGlobal)); // the global scope
System.out.println();
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/old/org/eclipse/cdt/internal/core/dom/lrparser/c99/action/deprecated/C99TypedefTrackerParserAction.java b/lrparser/org.eclipse.cdt.core.lrparser/old/org/eclipse/cdt/internal/core/dom/lrparser/c99/action/deprecated/C99TypedefTrackerParserAction.java
index 7667e1d80df..9930e3b0383 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/old/org/eclipse/cdt/internal/core/dom/lrparser/c99/action/deprecated/C99TypedefTrackerParserAction.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/old/org/eclipse/cdt/internal/core/dom/lrparser/c99/action/deprecated/C99TypedefTrackerParserAction.java
@@ -14,7 +14,7 @@ import java.util.LinkedList;
import lpg.lpgjavaruntime.IToken;
-import org.eclipse.cdt.core.dom.lrparser.IParserActionTokenProvider;
+import org.eclipse.cdt.core.dom.lrparser.action.ITokenStream;
import org.eclipse.cdt.core.parser.util.DebugUtil;
import org.eclipse.cdt.internal.core.dom.lrparser.symboltable.TypedefSymbolTable;
/**
@@ -32,7 +32,7 @@ public class C99TypedefTrackerParserAction {
// provides limited access to the token stream
- private final IParserActionTokenProvider parser;
+ private final ITokenStream parser;
// The symbolTable currently in use
private TypedefSymbolTable symbolTable = TypedefSymbolTable.EMPTY_TABLE;
@@ -64,7 +64,7 @@ public class C99TypedefTrackerParserAction {
}
- public C99TypedefTrackerParserAction(IParserActionTokenProvider parser) {
+ public C99TypedefTrackerParserAction(ITokenStream parser) {
this.parser = parser;
}
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 5efe8d44d1d..68c1b533383 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
@@ -15,22 +15,19 @@ import java.util.HashSet;
import java.util.Set;
import org.eclipse.cdt.core.dom.ICodeReaderFactory;
-import org.eclipse.cdt.core.dom.ast.DOMException;
import org.eclipse.cdt.core.dom.ast.IASTCompletionNode;
import org.eclipse.cdt.core.dom.ast.IASTName;
-import org.eclipse.cdt.core.dom.ast.IASTNode;
import org.eclipse.cdt.core.dom.ast.IASTTranslationUnit;
-import org.eclipse.cdt.core.dom.ast.IBinding;
-import org.eclipse.cdt.core.dom.ast.IScope;
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.parser.CLanguageKeywords;
-import org.eclipse.cdt.core.dom.parser.IBuiltinBindingsProvider;
import org.eclipse.cdt.core.dom.parser.IScannerExtensionConfiguration;
import org.eclipse.cdt.core.index.IIndex;
import org.eclipse.cdt.core.model.AbstractLanguage;
import org.eclipse.cdt.core.model.ICLanguageKeywords;
+import org.eclipse.cdt.core.model.IContributedModelBuilder;
import org.eclipse.cdt.core.model.ILanguage;
+import org.eclipse.cdt.core.model.ITranslationUnit;
import org.eclipse.cdt.core.parser.CodeReader;
import org.eclipse.cdt.core.parser.IParserLogService;
import org.eclipse.cdt.core.parser.IScanner;
@@ -38,9 +35,7 @@ import org.eclipse.cdt.core.parser.IScannerInfo;
import org.eclipse.cdt.core.parser.ParserLanguage;
import org.eclipse.cdt.core.parser.util.ASTPrinter;
import org.eclipse.cdt.core.parser.util.DebugUtil;
-import org.eclipse.cdt.internal.core.dom.parser.ASTInternal;
import org.eclipse.cdt.internal.core.dom.parser.ASTNode;
-import org.eclipse.cdt.internal.core.dom.parser.ASTTranslationUnit;
import org.eclipse.cdt.internal.core.parser.scanner.CPreprocessor;
import org.eclipse.cdt.internal.core.pdom.dom.IPDOMLinkageFactory;
import org.eclipse.cdt.internal.core.pdom.dom.c.PDOMCLinkageFactory;
@@ -68,15 +63,7 @@ public abstract class BaseExtensibleLanguage extends AbstractLanguage {
* Can be overridden in subclasses to provide a different parser
* for a language extension.
*/
- protected abstract IParser<IASTTranslationUnit> getParser();
-
-
- /**
- * A token map is used to map tokens from the DOM preprocessor
- * to the tokens defined by an LPG parser.
- */
- protected abstract IDOMTokenMap getTokenMap();
-
+ protected abstract IParser<IASTTranslationUnit> getParser(IScanner scanner, IIndex index, Set<IParser.Options> options);
/**
* Returns the ParserLanguage value that is to be used when creating
@@ -92,11 +79,6 @@ public abstract class BaseExtensibleLanguage extends AbstractLanguage {
protected abstract IScannerExtensionConfiguration getScannerExtensionConfiguration();
- /**
- * Returns a bindings provider that will provide additional bindings based on the language extension.
- */
- protected abstract IBuiltinBindingsProvider getBuiltinBindingsProvider();
-
@SuppressWarnings("nls")
@Override
@@ -124,24 +106,21 @@ public abstract class BaseExtensibleLanguage extends AbstractLanguage {
IScanner preprocessor = new CPreprocessor(reader, scanInfo, pl, log, config, fileCreator);
preprocessor.setComputeImageLocations((options & ILanguage.OPTION_NO_IMAGE_LOCATIONS) == 0);
- // The translation unit has to be created here so that the preprocessor
- // can fill in the preprocessor AST nodes.
- //IASTTranslationUnit tu = getASTTranslationUnit(index, preprocessor);
- IParser<IASTTranslationUnit> parser = getParser();
- CPreprocessorAdapter.runCPreprocessor(preprocessor, parser, getTokenMap());
+
+ //parser.setScanner(preprocessor, getTokenMap());
+ //CPreprocessorAdapter.runCPreprocessor(preprocessor, parser, getTokenMap());
Set<IParser.Options> parserOptions = new HashSet<IParser.Options>();
//if((options & OPTION_SKIP_FUNCTION_BODIES) != 0)
// parserOptions.add(IParser.Options.OPTION_SKIP_FUNCTION_BODIES);
if((options & OPTION_SKIP_TRIVIAL_EXPRESSIONS_IN_AGGREGATE_INITIALIZERS) != 0)
parserOptions.add(IParser.Options.OPTION_SKIP_TRIVIAL_EXPRESSIONS_IN_AGGREGATE_INITIALIZERS);
-
if(!parserOptions.isEmpty())
parserOptions = EnumSet.copyOf(parserOptions);
- IASTTranslationUnit tu = parser.parse(parserOptions);
+ IParser<IASTTranslationUnit> parser = getParser(preprocessor, index, parserOptions);
+ 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
- setUpTranslationUnit(tu, preprocessor, index);
if(DEBUG_PRINT_AST) {
System.out.println("Base Extensible Language AST:");
@@ -152,43 +131,6 @@ public abstract class BaseExtensibleLanguage extends AbstractLanguage {
}
-
- private void setUpTranslationUnit(IASTTranslationUnit tu, IScanner preprocessor, IIndex index) throws CoreException {
- tu.setIndex(index);
-
- // add built-in names to the scope
- IBuiltinBindingsProvider builtinBindingsProvider = getBuiltinBindingsProvider();
- if (builtinBindingsProvider != null) {
- IScope tuScope = tu.getScope();
- IBinding[] bindings = builtinBindingsProvider.getBuiltinBindings(tuScope);
- try {
- for (IBinding binding : bindings) {
- ASTInternal.addBinding(tuScope, binding);
- }
- } catch (DOMException e) {
- throw new CoreException(LRParserPlugin.createStatus(e));
- }
- }
-
- if(tu instanceof ASTTranslationUnit) {
- ((ASTTranslationUnit)tu).setLocationResolver(preprocessor.getLocationResolver());
- }
- for(IASTNode node : tu.getAllPreprocessorStatements()) {
- node.setParent(tu);
- }
- for(IASTNode node : tu.getComments()) {
- node.setParent(tu);
- }
- for(IASTNode node : tu.getMacroDefinitions()) {
- node.setParent(tu);
- }
- for(IASTNode node : tu.getMacroExpansions()) {
- node.setParent(tu);
- }
- }
-
-
-
public IASTTranslationUnit getASTTranslationUnit(CodeReader reader,
IScannerInfo scanInfo, ICodeReaderFactory fileCreator,
IIndex index, IParserLogService log) throws CoreException {
@@ -220,14 +162,9 @@ public abstract class BaseExtensibleLanguage extends AbstractLanguage {
IScanner preprocessor = new CPreprocessor(reader, scanInfo, pl, log, config, fileCreator);
preprocessor.setContentAssistMode(offset);
- IParser<IASTTranslationUnit> parser = getParser();
- CPreprocessorAdapter.runCPreprocessor(preprocessor, parser, getTokenMap());
-
- // the parser will fill in the rest of the AST
Set<IParser.Options> parserOptions = EnumSet.of(IParser.Options.OPTION_SKIP_TRIVIAL_EXPRESSIONS_IN_AGGREGATE_INITIALIZERS);
- IASTTranslationUnit tu = parser.parse(parserOptions);
- setUpTranslationUnit(tu, preprocessor, index);
-
+ IParser<IASTTranslationUnit> parser = getParser(preprocessor, index, parserOptions);
+ parser.parse();
IASTCompletionNode completionNode = parser.getCompletionNode();
if(DEBUG_PRINT_AST) {
@@ -283,4 +220,8 @@ public abstract class BaseExtensibleLanguage extends AbstractLanguage {
return super.getAdapter(adapter);
}
+ public IContributedModelBuilder createModelBuilder(@SuppressWarnings("unused") ITranslationUnit tu) {
+ return null;
+ }
+
}
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/CPreprocessorAdapter.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/CPreprocessorAdapter.java
index a9d3d5b15e7..ea4011dfabe 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/CPreprocessorAdapter.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/CPreprocessorAdapter.java
@@ -21,8 +21,10 @@ import org.eclipse.cdt.core.parser.OffsetLimitReachedException;
* Adapts the CPreprocessor from the CDT core for use with LPG based parsers.
*
* @author Mike Kucera
+ * @noreference
+ * TODO move into an internal package
*/
-class CPreprocessorAdapter {
+public class CPreprocessorAdapter {
/**
* During content assist the preprocessor may return a completion token
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/IParser.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/IParser.java
index 3b54e34e4f0..7e3bf0ed6ad 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/IParser.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/IParser.java
@@ -11,7 +11,6 @@
package org.eclipse.cdt.core.dom.lrparser;
import java.util.EnumSet;
-import java.util.Set;
import org.eclipse.cdt.core.dom.ast.IASTCompletionNode;
import org.eclipse.cdt.core.dom.ast.IASTNode;
@@ -23,7 +22,7 @@ import org.eclipse.cdt.core.model.ILanguage;
*
* @author Mike Kucera
*/
-public interface IParser<N extends IASTNode> extends ITokenCollector {
+public interface IParser<N extends IASTNode> {
/**
* Options used by implementations of IParser. Some of the options
@@ -69,7 +68,7 @@ public interface IParser<N extends IASTNode> extends ITokenCollector {
* @throws NullPointerException if either parameter is null
* @see EnumSet
*/
- public N parse(Set<Options> options);
+ public N parse();
/**
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/ISecondaryParser.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/ISecondaryParser.java
new file mode 100644
index 00000000000..866154c746b
--- /dev/null
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/ISecondaryParser.java
@@ -0,0 +1,37 @@
+/*******************************************************************************
+ * Copyright (c) 2009 IBM Corporation and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * IBM Corporation - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.cdt.core.dom.lrparser;
+
+import java.util.List;
+
+import lpg.lpgjavaruntime.IToken;
+
+import org.eclipse.cdt.core.dom.ast.IASTNode;
+
+public interface ISecondaryParser<N extends IASTNode> extends IParser<N> {
+
+
+ /**
+ * Set the list of tokens that will be parsed.
+ *
+ * The given list does not need to contain dummy and EOF tokens,
+ * these will be added automatically.
+ *
+ * This method causes any tokens already contained in the parser
+ * to be removed.
+ *
+ * This method is mainly used by secondary parsers that are called
+ * from a main parser.
+ *
+ * @throws NullPointerException if tokens is null
+ */
+ public void setTokens(List<IToken> tokens);
+}
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/ITokenCollector.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/ITokenCollector.java
index d8286687da1..6783a61b57a 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/ITokenCollector.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/ITokenCollector.java
@@ -10,8 +10,6 @@
*******************************************************************************/
package org.eclipse.cdt.core.dom.lrparser;
-import java.util.List;
-
import lpg.lpgjavaruntime.IToken;
/**
@@ -33,20 +31,5 @@ public interface ITokenCollector {
* @throws NullPointerException if token is null
*/
public void addToken(IToken token);
-
- /**
- * Set the list of tokens that will be parsed.
- *
- * The given list does not need to contain dummy and EOF tokens,
- * these will be added automatically.
- *
- * This method causes any tokens already contained in the parser
- * to be removed.
- *
- * This method is mainly used by secondary parsers that are called
- * from a main parser.
- *
- * @throws NullPointerException if tokens is null
- */
- public void setTokens(List<IToken> tokens);
+
}
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/LRParserPlugin.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/LRParserPlugin.java
index 69b6036ca61..3a582505757 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/LRParserPlugin.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/LRParserPlugin.java
@@ -21,7 +21,6 @@ public class LRParserPlugin extends Plugin {
public static final String PLUGIN_ID = "org.eclipse.cdt.core.lrparser"; //$NON-NLS-1$
- @SuppressWarnings("unused")
private static LRParserPlugin plugin;
@@ -43,17 +42,52 @@ public class LRParserPlugin extends Plugin {
}
/**
- * @noreference This method is not intended to be referenced by clients.
+ * @noreference
*/
public static IStatus createStatus(String msg, Throwable e) {
return new Status(IStatus.ERROR, PLUGIN_ID, IStatus.ERROR, msg, e);
}
/**
- * @noreference This method is not intended to be referenced by clients.
+ * @noreference
*/
public static IStatus createStatus(Throwable e) {
return createStatus(e.getMessage(), e);
}
+ /**
+ * @noreference
+ */
+ public static void log(IStatus status) {
+ plugin.getLog().log(status);
+ }
+
+ /**
+ * @noreference
+ */
+ public static void logError(Throwable exception, String message) {
+ log(new Status(IStatus.ERROR, PLUGIN_ID, IStatus.OK, message, exception));
+ }
+
+ /**
+ * @noreference
+ */
+ public static void logError(Throwable exception) {
+ logError(exception, exception.getMessage());
+ }
+
+ /**
+ * @noreference
+ */
+ public static void logError(String message) {
+ log(new Status(IStatus.ERROR, PLUGIN_ID, message));
+ }
+
+ /**
+ * @noreference
+ */
+ public static void logInfo(String message) {
+ log(new Status(IStatus.INFO, PLUGIN_ID, message));
+ }
+
}
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/AbstractParserAction.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/AbstractParserAction.java
index 973e5de5cd1..6e53c83a405 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/AbstractParserAction.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/AbstractParserAction.java
@@ -20,7 +20,7 @@ import org.eclipse.cdt.core.dom.ast.IASTCompletionNode;
import org.eclipse.cdt.core.dom.ast.IASTName;
import org.eclipse.cdt.core.dom.ast.IASTNode;
import org.eclipse.cdt.core.dom.lrparser.IParser;
-import org.eclipse.cdt.core.dom.lrparser.IParserActionTokenProvider;
+import org.eclipse.cdt.core.dom.lrparser.ISecondaryParser;
import org.eclipse.cdt.internal.core.dom.parser.ASTNode;
@SuppressWarnings("restriction")
@@ -41,7 +41,7 @@ public abstract class AbstractParserAction {
/** Provides an interface to the token stream */
- protected final IParserActionTokenProvider parser;
+ protected final ITokenStream stream;
/** Stack that holds the intermediate nodes as the AST is being built */
protected final ScopedStack<Object> astStack;
@@ -70,21 +70,21 @@ public abstract class AbstractParserAction {
* @param tu Root node of the AST, its list of declarations should be empty.
* @throws NullPointerException if any of the parameters are null
*/
- public AbstractParserAction(IParserActionTokenProvider parser, ScopedStack<Object> astStack) {
+ public AbstractParserAction(ITokenStream parser, ScopedStack<Object> astStack) {
if(parser == null)
throw new NullPointerException("parser is null"); //$NON-NLS-1$
if(astStack == null)
throw new NullPointerException("astStack is null"); //$NON-NLS-1$
- this.parser = parser;
+ this.stream = parser;
this.astStack = astStack;
}
protected void setOffsetAndLength(IASTNode node) {
- int ruleOffset = parser.getLeftIToken().getStartOffset();
- int ruleLength = parser.getRightIToken().getEndOffset() - ruleOffset;
+ int ruleOffset = stream.getLeftIToken().getStartOffset();
+ int ruleLength = stream.getRightIToken().getEndOffset() - ruleOffset;
((ASTNode)node).setOffsetAndLength(ruleOffset, ruleLength < 0 ? 0 : ruleLength);
}
@@ -143,15 +143,15 @@ public abstract class AbstractParserAction {
* Runs the given parser on the given token list.
*
*/
- protected <N extends IASTNode> N runSecondaryParser(IParser<N> secondaryParser) {
- return runSecondaryParser(secondaryParser, parser.getRuleTokens());
+ protected <N extends IASTNode> N runSecondaryParser(ISecondaryParser<N> secondaryParser) {
+ return runSecondaryParser(secondaryParser, stream.getRuleTokens());
}
/**
* Runs the given parser on the tokens that make up the current rule.
*/
- protected <N extends IASTNode> N runSecondaryParser(IParser<N> secondaryParser, List<IToken> tokens) {
+ protected <N extends IASTNode> N runSecondaryParser(ISecondaryParser<N> secondaryParser, List<IToken> tokens) {
// the secondary parser will alter the token kinds, which will need to be undone
int[] savedKinds = new int[tokens.size()];
@@ -160,7 +160,7 @@ public abstract class AbstractParserAction {
savedKinds[i++] = token.getKind();
secondaryParser.setTokens(tokens);
- N result = secondaryParser.parse(options);
+ N result = secondaryParser.parse();
IASTCompletionNode compNode = secondaryParser.getCompletionNode();
if(compNode != null) {
@@ -227,6 +227,6 @@ public abstract class AbstractParserAction {
* Gets the current token and places it on the stack for later consumption.
*/
public void consumeToken() {
- astStack.push(parser.getRightIToken());
+ astStack.push(stream.getRightIToken());
}
}
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/BuildASTParserAction.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/BuildASTParserAction.java
index 6e660ed07a9..f9fc228a454 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/BuildASTParserAction.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/BuildASTParserAction.java
@@ -16,6 +16,7 @@ import java.util.List;
import lpg.lpgjavaruntime.IToken;
+import org.eclipse.cdt.core.dom.ast.DOMException;
import org.eclipse.cdt.core.dom.ast.IASTASMDeclaration;
import org.eclipse.cdt.core.dom.ast.IASTArrayDeclarator;
import org.eclipse.cdt.core.dom.ast.IASTArrayModifier;
@@ -62,13 +63,20 @@ import org.eclipse.cdt.core.dom.ast.IASTTranslationUnit;
import org.eclipse.cdt.core.dom.ast.IASTTypeId;
import org.eclipse.cdt.core.dom.ast.IASTTypeIdExpression;
import org.eclipse.cdt.core.dom.ast.IASTUnaryExpression;
+import org.eclipse.cdt.core.dom.ast.IBinding;
import org.eclipse.cdt.core.dom.ast.INodeFactory;
+import org.eclipse.cdt.core.dom.ast.IScope;
import org.eclipse.cdt.core.dom.ast.IASTEnumerationSpecifier.IASTEnumerator;
import org.eclipse.cdt.core.dom.ast.cpp.ICPPASTCastExpression;
import org.eclipse.cdt.core.dom.ast.cpp.ICPPASTLiteralExpression;
import org.eclipse.cdt.core.dom.lrparser.IParser;
-import org.eclipse.cdt.core.dom.lrparser.IParserActionTokenProvider;
+import org.eclipse.cdt.core.dom.lrparser.ISecondaryParser;
+import org.eclipse.cdt.core.dom.lrparser.LRParserPlugin;
+import org.eclipse.cdt.core.dom.parser.IBuiltinBindingsProvider;
+import org.eclipse.cdt.core.index.IIndex;
import org.eclipse.cdt.core.parser.IProblem;
+import org.eclipse.cdt.core.parser.IScanner;
+import org.eclipse.cdt.internal.core.dom.parser.ASTInternal;
import org.eclipse.cdt.internal.core.dom.parser.ASTNode;
import org.eclipse.cdt.internal.core.dom.parser.ASTQueries;
import org.eclipse.cdt.internal.core.dom.parser.ASTTranslationUnit;
@@ -98,6 +106,7 @@ public abstract class BuildASTParserAction extends AbstractParserAction {
protected abstract boolean isIdentifierToken(IToken token);
+ protected IASTTranslationUnit tu = null;
/**
@@ -105,7 +114,7 @@ public abstract class BuildASTParserAction extends AbstractParserAction {
* @param tu Root node of the AST, its list of declarations should be empty.
* @throws NullPointerException if any of the parameters are null
*/
- public BuildASTParserAction(IParserActionTokenProvider parser, ScopedStack<Object> astStack, INodeFactory nodeFactory, ISecondaryParserFactory parserFactory) {
+ public BuildASTParserAction(ITokenStream parser, ScopedStack<Object> astStack, INodeFactory nodeFactory, ISecondaryParserFactory parserFactory) {
super(parser, astStack);
if(nodeFactory == null)
@@ -116,20 +125,46 @@ public abstract class BuildASTParserAction extends AbstractParserAction {
this.nodeFactory = nodeFactory;
this.parserFactory = parserFactory;
}
+
+
+ public void initializeTranslationUnit(IScanner scanner, IBuiltinBindingsProvider builtinBindingsProvider, IIndex index) {
+ tu = nodeFactory.newTranslationUnit();
+ tu.setIndex(index);
+
+ // add built-in names to the scope
+ if (builtinBindingsProvider != null) {
+ IScope tuScope = tu.getScope();
+ IBinding[] bindings = builtinBindingsProvider.getBuiltinBindings(tuScope);
+ try {
+ for (IBinding binding : bindings) {
+ ASTInternal.addBinding(tuScope, binding);
+ }
+ } catch (DOMException e) {
+ LRParserPlugin.logError(e);
+ }
+ }
+
+ if(tu instanceof ASTTranslationUnit) {
+ ((ASTTranslationUnit)tu).setLocationResolver(scanner.getLocationResolver());
+ }
+ }
public void consumeTranslationUnit() {
- // can't close the outermost scope
- // the outermost scope may be empty if there are no tokens in the file
- IASTTranslationUnit tu = nodeFactory.newTranslationUnit();
+ if(tu == null)
+ tu = nodeFactory.newTranslationUnit();
+ // can't close the outermost scope
for(Object o : astStack.topScope()) {
tu.addDeclaration((IASTDeclaration)o);
}
+ while(!astStack.isEmpty()) {
+ astStack.pop();
+ }
// this is the same way that the DOM parser computes the length
IASTDeclaration[] declarations = tu.getDeclarations();
- if (declarations.length != 0) {
+ if(declarations.length != 0) {
IASTNode d = declarations[declarations.length-1];
ParserUtil.setOffsetAndLength(tu, 0, offset(d) + length(d));
}
@@ -146,7 +181,7 @@ public abstract class BuildASTParserAction extends AbstractParserAction {
*
* @see AbstractGNUSourceCodeParser#resolveAmbiguities()
*/
- private void resolveAmbiguityNodes(IASTTranslationUnit tu) {
+ private static void resolveAmbiguityNodes(IASTTranslationUnit tu) {
if (tu instanceof ASTTranslationUnit) {
((ASTTranslationUnit)tu).resolveAmbiguities();
}
@@ -156,7 +191,7 @@ public abstract class BuildASTParserAction extends AbstractParserAction {
* Consumes a single identifier token.
*/
public void consumeIdentifierName() {
- astStack.push(createName(parser.getRightIToken()));
+ astStack.push(createName(stream.getRightIToken()));
}
@@ -173,10 +208,10 @@ public abstract class BuildASTParserAction extends AbstractParserAction {
// attempt to also parse the tokens as an expression
IASTExpressionStatement expressionStatement = null;
if(decl instanceof IASTSimpleDeclaration) {
- List<IToken> expressionTokens = parser.getRuleTokens();
+ List<IToken> expressionTokens = stream.getRuleTokens();
expressionTokens = expressionTokens.subList(0, expressionTokens.size()-1); // remove the semicolon at the end
- IParser<IASTExpression> expressionParser = parserFactory.getExpressionParser(parser);
+ ISecondaryParser<IASTExpression> expressionParser = parserFactory.getExpressionParser(stream, options);
IASTExpression expr = runSecondaryParser(expressionParser, expressionTokens);
if(expr != null) { // the parse may fail
@@ -186,7 +221,7 @@ public abstract class BuildASTParserAction extends AbstractParserAction {
}
- List<IToken> tokens = parser.getRuleTokens();
+ List<IToken> tokens = stream.getRuleTokens();
IASTNode result;
if(expressionStatement == null)
@@ -253,7 +288,7 @@ public abstract class BuildASTParserAction extends AbstractParserAction {
* @see ICPPASTLiteralExpression
*/
public void consumeExpressionLiteral(int kind) {
- IToken token = parser.getRightIToken();
+ IToken token = stream.getRightIToken();
String rep = token.toString();
// Strip the quotes from string literals, this is just to be consistent
@@ -280,7 +315,7 @@ public abstract class BuildASTParserAction extends AbstractParserAction {
public void consumeExpressionID() {
- IASTName name = createName(parser.getLeftIToken());
+ IASTName name = createName(stream.getLeftIToken());
IASTIdExpression expr = nodeFactory.newIdExpression(name);
setOffsetAndLength(expr);
astStack.push(expr);
@@ -353,7 +388,7 @@ public abstract class BuildASTParserAction extends AbstractParserAction {
IASTExpression alternateExpr = null;
if(operator == IASTCastExpression.op_cast) { // don't reparse for dynamic_cast etc as those are not ambiguous
// try parsing as non-cast to resolve ambiguities
- IParser<IASTExpression> secondaryParser = parserFactory.getNoCastExpressionParser(parser);
+ ISecondaryParser<IASTExpression> secondaryParser = parserFactory.getNoCastExpressionParser(stream, options);
alternateExpr = runSecondaryParser(secondaryParser);
}
@@ -393,7 +428,7 @@ public abstract class BuildASTParserAction extends AbstractParserAction {
setOffsetAndLength(expr);
// try parsing as an expression to resolve ambiguities
- IParser<IASTExpression> secondaryParser = parserFactory.getSizeofExpressionParser(parser);
+ ISecondaryParser<IASTExpression> secondaryParser = parserFactory.getSizeofExpressionParser(stream, options);
IASTExpression alternateExpr = runSecondaryParser(secondaryParser);
if(alternateExpr == null)
@@ -439,7 +474,7 @@ public abstract class BuildASTParserAction extends AbstractParserAction {
*/
public void consumeStatementLabeled() {
IASTStatement body = (IASTStatement) astStack.pop();
- IASTName label = createName(parser.getLeftIToken());
+ IASTName label = createName(stream.getLeftIToken());
IASTLabelStatement stat = nodeFactory.newLabelStatement(label, body);
setOffsetAndLength(stat);
@@ -474,7 +509,7 @@ public abstract class BuildASTParserAction extends AbstractParserAction {
IASTStatement body = (IASTStatement) astStack.pop();
IASTDefaultStatement stat = nodeFactory.newDefaultStatement();
- List<IToken> tokens = parser.getRuleTokens();
+ List<IToken> tokens = stream.getRuleTokens();
IToken defaultToken = tokens.get(0);
IToken colonToken = tokens.get(1);
ParserUtil.setOffsetAndLength(stat, offset(defaultToken), offset(colonToken) - offset(defaultToken) + 1);
@@ -548,7 +583,7 @@ public abstract class BuildASTParserAction extends AbstractParserAction {
* jump_statement ::= goto goto_identifier ';'
*/
public void consumeStatementGoto() {
- IASTName name = createName(parser.getRuleTokens().get(1));
+ IASTName name = createName(stream.getRuleTokens().get(1));
IASTGotoStatement gotoStat = nodeFactory.newGotoStatement(name);
setOffsetAndLength(gotoStat);
astStack.push(gotoStat);
@@ -599,7 +634,7 @@ public abstract class BuildASTParserAction extends AbstractParserAction {
declarator = (IASTDeclarator) astStack.pop();
else {
declarator = nodeFactory.newDeclarator(nodeFactory.newName());
- ParserUtil.setOffsetAndLength(declarator, parser.getRightIToken().getEndOffset(), 0);
+ ParserUtil.setOffsetAndLength(declarator, stream.getRightIToken().getEndOffset(), 0);
}
IASTDeclSpecifier declSpecifier = (IASTDeclSpecifier) astStack.pop();
@@ -664,7 +699,7 @@ public abstract class BuildASTParserAction extends AbstractParserAction {
* ::= 'asm' '(' 'stringlit' ')' ';'
*/
public void consumeDeclarationASM() {
- String s = parser.getRuleTokens().get(2).toString();
+ String s = stream.getRuleTokens().get(2).toString();
IASTASMDeclaration asm = nodeFactory.newASMDeclaration(s);
setOffsetAndLength(asm);
@@ -691,7 +726,7 @@ public abstract class BuildASTParserAction extends AbstractParserAction {
*/
public void consumeParameterDeclarationWithoutDeclarator() {
// offsets need to be calculated differently in this case
- final int endOffset = parser.getRightIToken().getEndOffset();
+ final int endOffset = stream.getRightIToken().getEndOffset();
IASTName name = nodeFactory.newName();
ParserUtil.setOffsetAndLength(name, endOffset, 0);
@@ -911,7 +946,7 @@ public abstract class BuildASTParserAction extends AbstractParserAction {
* | 'enum' enum_identifier '{' <openscope> enumerator_list_opt '}'
*/
public void consumeTypeSpecifierEnumeration(boolean hasIdent) {
- IASTName name = (hasIdent) ? createName(parser.getRuleTokens().get(1)) : nodeFactory.newName();
+ IASTName name = (hasIdent) ? createName(stream.getRuleTokens().get(1)) : nodeFactory.newName();
IASTEnumerationSpecifier enumSpec = nodeFactory.newEnumerationSpecifier(name);
@@ -928,7 +963,7 @@ public abstract class BuildASTParserAction extends AbstractParserAction {
* | enum_identifier '=' constant_expression
*/
public void consumeEnumerator(boolean hasInitializer) {
- IASTName name = createName(parser.getLeftIToken());
+ IASTName name = createName(stream.getLeftIToken());
IASTExpression value = null;
if(hasInitializer)
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/ISecondaryParserFactory.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/ISecondaryParserFactory.java
index b0ed1bc9478..066ff1f90cb 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/ISecondaryParserFactory.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/ISecondaryParserFactory.java
@@ -10,9 +10,11 @@
*******************************************************************************/
package org.eclipse.cdt.core.dom.lrparser.action;
+import java.util.Set;
+
import org.eclipse.cdt.core.dom.ast.IASTExpression;
import org.eclipse.cdt.core.dom.lrparser.IParser;
-import org.eclipse.cdt.core.dom.lrparser.IParserActionTokenProvider;
+import org.eclipse.cdt.core.dom.lrparser.ISecondaryParser;
/**
@@ -28,20 +30,20 @@ public interface ISecondaryParserFactory {
/**
* Get the parser that will recognize expressions.
*/
- IParser<IASTExpression> getExpressionParser(IParserActionTokenProvider parser);
+ ISecondaryParser<IASTExpression> getExpressionParser(ITokenStream stream, Set<IParser.Options> options);
/**
* Expression parser that does not recognize cast expressions,
* used to disambiguate casts.
*/
- IParser<IASTExpression> getNoCastExpressionParser(IParserActionTokenProvider parser);
+ ISecondaryParser<IASTExpression> getNoCastExpressionParser(ITokenStream stream, Set<IParser.Options> options);
/**
* Expression parser that treats all sizeof and typeid expressions
* as unary expressions.
*/
- IParser<IASTExpression> getSizeofExpressionParser(IParserActionTokenProvider parser);
+ ISecondaryParser<IASTExpression> getSizeofExpressionParser(ITokenStream stream, Set<IParser.Options> options);
}
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/IParserActionTokenProvider.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/ITokenStream.java
index 5ef0f12631d..9012e63c9ad 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/IParserActionTokenProvider.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/ITokenStream.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2006, 2008 IBM Corporation and others.
+ * Copyright (c) 2006, 2009 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@@ -8,7 +8,7 @@
* Contributors:
* IBM Corporation - initial API and implementation
*******************************************************************************/
-package org.eclipse.cdt.core.dom.lrparser;
+package org.eclipse.cdt.core.dom.lrparser.action;
import java.util.List;
@@ -28,7 +28,7 @@ import lpg.lpgjavaruntime.IToken;
*
* @author Mike Kucera
*/
-public interface IParserActionTokenProvider {
+public interface ITokenStream {
/**
* Returns the tokens that were parsed to recognized
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/c99/C99BuildASTParserAction.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/c99/C99BuildASTParserAction.java
index 45457c831ca..c85bb2e3577 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/c99/C99BuildASTParserAction.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/c99/C99BuildASTParserAction.java
@@ -61,8 +61,8 @@ import org.eclipse.cdt.core.dom.ast.c.ICASTTypeIdInitializerExpression;
import org.eclipse.cdt.core.dom.ast.c.ICASTTypedefNameSpecifier;
import org.eclipse.cdt.core.dom.ast.c.ICNodeFactory;
import org.eclipse.cdt.core.dom.ast.gnu.c.ICASTKnRFunctionDeclarator;
-import org.eclipse.cdt.core.dom.lrparser.IParserActionTokenProvider;
import org.eclipse.cdt.core.dom.lrparser.action.BuildASTParserAction;
+import org.eclipse.cdt.core.dom.lrparser.action.ITokenStream;
import org.eclipse.cdt.core.dom.lrparser.action.ISecondaryParserFactory;
import org.eclipse.cdt.core.dom.lrparser.action.ITokenMap;
import org.eclipse.cdt.core.dom.lrparser.action.ParserUtil;
@@ -94,7 +94,7 @@ public class C99BuildASTParserAction extends BuildASTParserAction {
* @param orderedTerminalSymbols When an instance of this class is created for a parser
* that parsers token kinds will be mapped back to the base C99 parser's token kinds.
*/
- public C99BuildASTParserAction(IParserActionTokenProvider parser, ScopedStack<Object> astStack, ICNodeFactory nodeFactory, ISecondaryParserFactory parserFactory) {
+ public C99BuildASTParserAction(ITokenStream parser, ScopedStack<Object> astStack, ICNodeFactory nodeFactory, ISecondaryParserFactory parserFactory) {
super(parser, astStack, nodeFactory, parserFactory);
this.nodeFactory = nodeFactory;
@@ -135,7 +135,7 @@ public class C99BuildASTParserAction extends BuildASTParserAction {
* postfix_expression ::= postfix_expression '->' ident
*/
public void consumeExpressionFieldReference(boolean isPointerDereference) {
- IASTName name = createName(parser.getRightIToken());
+ IASTName name = createName(stream.getRightIToken());
IASTExpression owner = (IASTExpression) astStack.pop();
IASTFieldReference expr = nodeFactory.newFieldReference(name, owner);
expr.setIsPointerDereference(isPointerDereference);
@@ -289,7 +289,7 @@ public class C99BuildASTParserAction extends BuildASTParserAction {
IASTName[] names = astStack.topScope().toArray(new IASTName[0]);
declarator.setParameterNames(names);
astStack.closeScope();
- int endOffset = endOffset(parser.getRightIToken());
+ int endOffset = endOffset(stream.getRightIToken());
addFunctionModifier(declarator, endOffset);
}
@@ -300,7 +300,7 @@ public class C99BuildASTParserAction extends BuildASTParserAction {
* | identifier_list ',' 'identifier'
*/
public void consumeIdentifierKnR() {
- IASTName name = createName(parser.getRightIToken());
+ IASTName name = createName(stream.getRightIToken());
astStack.push(name);
}
@@ -313,7 +313,7 @@ public class C99BuildASTParserAction extends BuildASTParserAction {
*/
public void consumePointer() {
IASTPointer pointer = nodeFactory.newPointer();
- IToken star = parser.getRightIToken();
+ IToken star = stream.getRightIToken();
ParserUtil.setOffsetAndLength(pointer, star);
astStack.push(pointer);
}
@@ -362,7 +362,7 @@ public class C99BuildASTParserAction extends BuildASTParserAction {
}
if(hasDeclarator) {
- addFunctionModifier(declarator, endOffset(parser.getRightIToken()));
+ addFunctionModifier(declarator, endOffset(stream.getRightIToken()));
}
else {
setOffsetAndLength(declarator);
@@ -402,7 +402,7 @@ public class C99BuildASTParserAction extends BuildASTParserAction {
* designator ::= '.' 'identifier'
*/
public void consumeDesignatorField() {
- IASTName name = createName(parser.getRightIToken());
+ IASTName name = createName(stream.getRightIToken());
ICASTFieldDesignator designator = nodeFactory.newFieldDesignator(name);
setOffsetAndLength(designator);
astStack.push(designator);
@@ -476,7 +476,7 @@ public class C99BuildASTParserAction extends BuildASTParserAction {
List<Object> declarators = (hasDeclaratorList) ? astStack.closeScope() : Collections.emptyList();
IASTDeclSpecifier declSpecifier = (IASTDeclSpecifier) astStack.pop();
- List<IToken> ruleTokens = parser.getRuleTokens();
+ List<IToken> ruleTokens = stream.getRuleTokens();
if(ruleTokens.size() == 1 && baseKind(ruleTokens.get(0)) == TK_EndOfCompletion)
return; // do not generate nodes for extra EOC tokens
@@ -498,7 +498,7 @@ public class C99BuildASTParserAction extends BuildASTParserAction {
*/
public void consumeDeclarationEmpty() {
// Don't generate declaration nodes for extra EOC tokens
- if(baseKind(parser.getLeftIToken()) == C99Parsersym.TK_EndOfCompletion)
+ if(baseKind(stream.getLeftIToken()) == C99Parsersym.TK_EndOfCompletion)
return;
IASTDeclSpecifier declSpecifier = nodeFactory.newSimpleDeclSpecifier();
@@ -535,12 +535,12 @@ public class C99BuildASTParserAction extends BuildASTParserAction {
public void consumeTypeSpecifierComposite(boolean hasName) {
int key = 0;
- switch(baseKind(parser.getLeftIToken())) {
+ switch(baseKind(stream.getLeftIToken())) {
case TK_struct: key = IASTCompositeTypeSpecifier.k_struct;
case TK_union: key = IASTCompositeTypeSpecifier.k_union;
}
- IASTName name = (hasName) ? createName(parser.getRuleTokens().get(1)) : nodeFactory.newName();
+ IASTName name = (hasName) ? createName(stream.getRuleTokens().get(1)) : nodeFactory.newName();
ICASTCompositeTypeSpecifier typeSpec = nodeFactory.newCompositeTypeSpecifier(key, name);
@@ -560,7 +560,7 @@ public class C99BuildASTParserAction extends BuildASTParserAction {
* enum_specifier ::= 'enum' enum_identifier
*/
public void consumeTypeSpecifierElaborated(int kind) {
- IASTName name = createName(parser.getRuleTokens().get(1));
+ IASTName name = createName(stream.getRuleTokens().get(1));
IASTElaboratedTypeSpecifier typeSpec = nodeFactory.newElaboratedTypeSpecifier(kind, name);
setOffsetAndLength(typeSpec);
astStack.push(typeSpec);
@@ -604,7 +604,7 @@ public class C99BuildASTParserAction extends BuildASTParserAction {
// bug 234463, fix for content assist to work in this case
int TK_EOC = TK_EndOfCompletion; // TODO: change this in the grammar file
- List<IToken> tokens = parser.getRuleTokens();
+ List<IToken> tokens = stream.getRuleTokens();
if(matchTokens(tokens, tokenMap,
TK_for, TK_LeftParen, TK_Completion, TK_EOC, TK_EOC, TK_EOC, TK_EOC)) {
IASTName name = createName(tokens.get(2));
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/c99/C99SecondaryParserFactory.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/c99/C99SecondaryParserFactory.java
index 83e0eef10f4..19f44755d8d 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/c99/C99SecondaryParserFactory.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/c99/C99SecondaryParserFactory.java
@@ -10,10 +10,13 @@
*******************************************************************************/
package org.eclipse.cdt.core.dom.lrparser.action.c99;
+import java.util.Set;
+
import org.eclipse.cdt.core.dom.ast.IASTExpression;
import org.eclipse.cdt.core.dom.lrparser.IParser;
-import org.eclipse.cdt.core.dom.lrparser.IParserActionTokenProvider;
+import org.eclipse.cdt.core.dom.lrparser.ISecondaryParser;
import org.eclipse.cdt.core.dom.lrparser.action.ISecondaryParserFactory;
+import org.eclipse.cdt.core.dom.lrparser.action.ITokenStream;
import org.eclipse.cdt.internal.core.dom.lrparser.c99.C99ExpressionParser;
import org.eclipse.cdt.internal.core.dom.lrparser.c99.C99NoCastExpressionParser;
import org.eclipse.cdt.internal.core.dom.lrparser.c99.C99SizeofExpressionParser;
@@ -27,15 +30,15 @@ public class C99SecondaryParserFactory implements ISecondaryParserFactory {
}
- public IParser<IASTExpression> getExpressionParser(IParserActionTokenProvider parser) {
- return new C99ExpressionParser(parser);
+ public ISecondaryParser<IASTExpression> getExpressionParser(ITokenStream stream, Set<IParser.Options> options) {
+ return new C99ExpressionParser(stream, options);
}
- public IParser<IASTExpression> getNoCastExpressionParser(IParserActionTokenProvider parser) {
- return new C99NoCastExpressionParser(parser);
+ public ISecondaryParser<IASTExpression> getNoCastExpressionParser(ITokenStream stream, Set<IParser.Options> options) {
+ return new C99NoCastExpressionParser(stream, options);
}
- public IParser<IASTExpression> getSizeofExpressionParser(IParserActionTokenProvider parser) {
- return new C99SizeofExpressionParser(parser);
+ public ISecondaryParser<IASTExpression> getSizeofExpressionParser(ITokenStream stream, Set<IParser.Options> options) {
+ return new C99SizeofExpressionParser(stream, options);
}
} \ No newline at end of file
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 74179e0518e..4f0163fb70f 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
@@ -88,10 +88,10 @@ import org.eclipse.cdt.core.dom.ast.cpp.ICPPASTUsingDirective;
import org.eclipse.cdt.core.dom.ast.cpp.ICPPASTVisibilityLabel;
import org.eclipse.cdt.core.dom.ast.cpp.ICPPNodeFactory;
import org.eclipse.cdt.core.dom.ast.cpp.ICPPASTCompositeTypeSpecifier.ICPPASTBaseSpecifier;
-import org.eclipse.cdt.core.dom.lrparser.IParser;
-import org.eclipse.cdt.core.dom.lrparser.IParserActionTokenProvider;
+import org.eclipse.cdt.core.dom.lrparser.ISecondaryParser;
import org.eclipse.cdt.core.dom.lrparser.LPGTokenAdapter;
import org.eclipse.cdt.core.dom.lrparser.action.BuildASTParserAction;
+import org.eclipse.cdt.core.dom.lrparser.action.ITokenStream;
import org.eclipse.cdt.core.dom.lrparser.action.ITokenMap;
import org.eclipse.cdt.core.dom.lrparser.action.ParserUtil;
import org.eclipse.cdt.core.dom.lrparser.action.ScopedStack;
@@ -104,7 +104,6 @@ import org.eclipse.cdt.internal.core.dom.parser.cpp.CPPASTAmbiguousDeclarator;
import org.eclipse.cdt.internal.core.dom.parser.cpp.CPPASTAmbiguousExpression;
import org.eclipse.cdt.internal.core.dom.parser.cpp.CPPASTAmbiguousStatement;
import org.eclipse.cdt.internal.core.dom.parser.cpp.CPPASTAmbiguousTemplateArgument;
-import org.eclipse.cdt.internal.core.dom.parser.cpp.CPPASTQualifiedName;
import org.eclipse.cdt.internal.core.dom.parser.cpp.OverloadableOperator;
/**
@@ -134,7 +133,7 @@ public class CPPBuildASTParserAction extends BuildASTParserAction {
* @param orderedTerminalSymbols When an instance of this class is created for a parser
* that parsers token kinds will be mapped back to the base C99 parser's token kinds.
*/
- public CPPBuildASTParserAction(IParserActionTokenProvider parser, ScopedStack<Object> astStack, ICPPNodeFactory nodeFactory, ICPPSecondaryParserFactory parserFactory) {
+ public CPPBuildASTParserAction(ITokenStream parser, ScopedStack<Object> astStack, ICPPNodeFactory nodeFactory, ICPPSecondaryParserFactory parserFactory) {
super(parser, astStack, nodeFactory, parserFactory);
this.nodeFactory = nodeFactory;
@@ -408,7 +407,7 @@ public class CPPBuildASTParserAction extends BuildASTParserAction {
*/
public void consumeTemplateArgumentTypeId() {
// TODO is this necessary? It should be able to tell if it looks like an id expression
- IParser<IASTExpression> secondaryParser = parserFactory.getExpressionParser(parser);
+ ISecondaryParser<IASTExpression> secondaryParser = parserFactory.getExpressionParser(stream, options);
IASTExpression result = runSecondaryParser(secondaryParser);
// The grammar rule allows assignment_expression, but the ambiguity
@@ -459,7 +458,7 @@ public class CPPBuildASTParserAction extends BuildASTParserAction {
* ::= 'operator' overloadable_operator
*/
public void consumeOperatorName() {
- List<IToken> tokens = parser.getRuleTokens();
+ List<IToken> tokens = stream.getRuleTokens();
tokens = tokens.subList(1, tokens.size());
OverloadableOperator operator = getOverloadableOperator(tokens);
@@ -515,7 +514,7 @@ public class CPPBuildASTParserAction extends BuildASTParserAction {
* ::= '~' identifier_token
*/
public void consumeDestructorName() {
- char[] chars = ("~" + parser.getRightIToken()).toCharArray(); //$NON-NLS-1$
+ char[] chars = ("~" + stream.getRightIToken()).toCharArray(); //$NON-NLS-1$
IASTName name = nodeFactory.newName(chars);
setOffsetAndLength(name);
@@ -535,7 +534,7 @@ public class CPPBuildASTParserAction extends BuildASTParserAction {
IASTName newName = nodeFactory.newName(newChars);
- int offset = offset(parser.getLeftIToken());
+ int offset = offset(stream.getLeftIToken());
int length = offset - endOffset(oldName);
ParserUtil.setOffsetAndLength(newName, offset, length);
@@ -627,7 +626,7 @@ public class CPPBuildASTParserAction extends BuildASTParserAction {
// bug 234463, fix for content assist to work in this case
int TK_EOC = TK_EndOfCompletion; // TODO: change this in the grammar file
- List<IToken> tokens = parser.getRuleTokens();
+ List<IToken> tokens = stream.getRuleTokens();
if(matchTokens(tokens, tokenMap,
TK_for, TK_LeftParen, TK_Completion, TK_EOC, TK_EOC, TK_EOC, TK_EOC)) {
IASTName name = createName(tokens.get(2));
@@ -763,13 +762,6 @@ public class CPPBuildASTParserAction extends BuildASTParserAction {
ParserUtil.setOffsetAndLength(qualifiedName, startOffset, endOffset - startOffset);
for(IASTName name : reverseIterable(names))
qualifiedName.addName(name);
-
- if(qualifiedName instanceof CPPASTQualifiedName) {
- // compute the signature, find the tokens that make up the name
- List<IToken> nameTokens = ParserUtil.tokenOffsetSubList(parser.getRuleTokens(), startOffset, endOffset);
- String signature = createStringRepresentation(nameTokens);
- ((CPPASTQualifiedName)qualifiedName).setSignature(signature);
- }
// there must be a dummy name in the AST after the last double colon, this happens with pointer to member names
if(endsWithColonColon) {
@@ -780,39 +772,9 @@ public class CPPBuildASTParserAction extends BuildASTParserAction {
return qualifiedName;
}
+
- private String createStringRepresentation(List<IToken> nameTokens) {
- StringBuilder sb = new StringBuilder();
- IToken prev = null;
- for(IToken t : nameTokens) {
- if(needSpaceBetween(prev, t))
- sb.append(' ');
- sb.append(t.toString());
- prev = t;
- }
- return sb.toString();
- }
-
-
- private boolean needSpaceBetween(IToken prev, IToken iter) {
- // this logic was copied from BasicTokenDuple.createCharArrayRepresentation()
- if(prev == null)
- return false;
-
- int prevKind = baseKind(prev);
- int iterKind = baseKind(iter);
-
- return prevKind != TK_ColonColon &&
- prevKind != TK_identifier &&
- prevKind != TK_LT &&
- prevKind != TK_Tilde &&
- iterKind != TK_GT &&
- prevKind != TK_LeftBracket &&
- iterKind != TK_RightBracket &&
- iterKind != TK_ColonColon;
- }
-
/**
* Consumes grammar sub-rules of the following form:
*
@@ -879,7 +841,7 @@ public class CPPBuildASTParserAction extends BuildASTParserAction {
public void consumeNamespaceAliasDefinition() {
IASTName qualifiedName = subRuleQualifiedName(false);
- IASTName alias = createName(parser.getRuleTokens().get(1));
+ IASTName alias = createName(stream.getRuleTokens().get(1));
ICPPASTNamespaceAlias namespaceAlias = nodeFactory.newNamespaceAlias(alias, qualifiedName);
setOffsetAndLength(namespaceAlias);
@@ -922,7 +884,7 @@ public class CPPBuildASTParserAction extends BuildASTParserAction {
* | 'extern' 'stringlit' <openscope-ast> declaration
*/
public void consumeLinkageSpecification() {
- String name = parser.getRuleTokens().get(1).toString();
+ String name = stream.getRuleTokens().get(1).toString();
ICPPASTLinkageSpecification linkageSpec = nodeFactory.newLinkageSpecification(name);
for(Object declaration : astStack.closeScope())
@@ -1122,7 +1084,7 @@ public class CPPBuildASTParserAction extends BuildASTParserAction {
}
// the only way there could be a typename token
- for(IToken token : parser.getRuleTokens()) {
+ for(IToken token : stream.getRuleTokens()) {
if(baseKind(token) == TK_typename) {
declSpec.setIsTypename(true);
break;
@@ -1142,7 +1104,7 @@ public class CPPBuildASTParserAction extends BuildASTParserAction {
*/
public void consumeTypeSpecifierElaborated(boolean hasOptionalTemplateKeyword) {
IASTName name = subRuleQualifiedName(hasOptionalTemplateKeyword);
- int kind = getElaboratedTypeSpecifier(parser.getLeftIToken());
+ int kind = getElaboratedTypeSpecifier(stream.getLeftIToken());
IASTElaboratedTypeSpecifier typeSpecifier = nodeFactory.newElaboratedTypeSpecifier(kind, name);
@@ -1172,7 +1134,7 @@ public class CPPBuildASTParserAction extends BuildASTParserAction {
List<Object> declarators = hasDeclaratorList ? astStack.closeScope() : Collections.emptyList();
ICPPASTDeclSpecifier declSpec = (ICPPASTDeclSpecifier) astStack.pop(); // may be null
- List<IToken> ruleTokens = parser.getRuleTokens();
+ List<IToken> ruleTokens = stream.getRuleTokens();
IToken nameToken = null;
@@ -1184,7 +1146,7 @@ public class CPPBuildASTParserAction extends BuildASTParserAction {
// In the case that a single completion token is parsed then it needs
// to be interpreted as a named type specifier for content assist to work.
else if(matchTokens(ruleTokens, tokenMap, TK_Completion, TK_EndOfCompletion)) {
- IASTName name = createName(parser.getLeftIToken());
+ IASTName name = createName(stream.getLeftIToken());
declSpec = nodeFactory.newTypedefNameSpecifier(name);
ParserUtil.setOffsetAndLength(declSpec, offset(name), length(name));
declarators = Collections.emptyList(); // throw away the bogus declarator
@@ -1193,7 +1155,7 @@ public class CPPBuildASTParserAction extends BuildASTParserAction {
// can happen if implicit int is used
else if(declSpec == null) {
declSpec = nodeFactory.newSimpleDeclSpecifier();
- ParserUtil.setOffsetAndLength(declSpec, parser.getLeftIToken().getStartOffset(), 0);
+ ParserUtil.setOffsetAndLength(declSpec, stream.getLeftIToken().getStartOffset(), 0);
}
@@ -1213,7 +1175,7 @@ public class CPPBuildASTParserAction extends BuildASTParserAction {
for(IToken t : ruleTokens.subList(0, ruleTokens.size()-1))
setSpecifier(declSpec, t);
- int offset = offset(parser.getLeftIToken());
+ int offset = offset(stream.getLeftIToken());
int length = endOffset(ruleTokens.get(ruleTokens.size()-2)) - offset;
ParserUtil.setOffsetAndLength(declSpec, offset, length);
@@ -1253,7 +1215,7 @@ public class CPPBuildASTParserAction extends BuildASTParserAction {
IASTDeclarator nested = declarator.getNestedDeclarator();
ICPPASTSimpleDeclSpecifier simpleDeclSpec = nodeFactory.newSimpleDeclSpecifier(); // empty
- ParserUtil.setOffsetAndLength(simpleDeclSpec, parser.getLeftIToken().getStartOffset(), 0);
+ ParserUtil.setOffsetAndLength(simpleDeclSpec, stream.getLeftIToken().getStartOffset(), 0);
if(!classNames.isEmpty() && nested != null && ParserUtil.isSameName(name, classNames.getLast())) {
@@ -1314,7 +1276,7 @@ public class CPPBuildASTParserAction extends BuildASTParserAction {
if(!(declarator instanceof IASTFunctionDeclarator))
return;
- IParser<IASTDeclarator> secondaryParser = parserFactory.getNoFunctionDeclaratorParser(parser);
+ ISecondaryParser<IASTDeclarator> secondaryParser = parserFactory.getNoFunctionDeclaratorParser(stream, options);
IASTDeclarator notFunctionDeclarator = runSecondaryParser(secondaryParser);
if(notFunctionDeclarator == null)
@@ -1405,7 +1367,7 @@ public class CPPBuildASTParserAction extends BuildASTParserAction {
*/
@SuppressWarnings("unchecked")
public void consumeClassHead(boolean hasNestedNameSpecifier) {
- int key = getCompositeTypeSpecifier(parser.getLeftIToken());
+ int key = getCompositeTypeSpecifier(stream.getLeftIToken());
List<Object> baseSpecifiers = astStack.closeScope();
// may be null, but if it is then hasNestedNameSpecifier == false
IASTName className = (IASTName) astStack.pop();
@@ -1491,7 +1453,7 @@ public class CPPBuildASTParserAction extends BuildASTParserAction {
int endOffset = endOffset(nestedNames.getFirst()); // temporary
// find the last double colon by searching for it
- for(IToken t : reverseIterable(parser.getRuleTokens())) {
+ for(IToken t : reverseIterable(stream.getRuleTokens())) {
if(baseKind(t) == TK_ColonColon) {
endOffset = endOffset(t);
break;
@@ -1556,7 +1518,7 @@ public class CPPBuildASTParserAction extends BuildASTParserAction {
}
if(hasDeclarator) {
- int endOffset = endOffset(parser.getRightIToken());
+ int endOffset = endOffset(stream.getRightIToken());
addFunctionModifier(declarator, endOffset);
}
else {
@@ -1571,7 +1533,7 @@ public class CPPBuildASTParserAction extends BuildASTParserAction {
*/
public void consumeAbstractDeclaratorEmpty() {
IASTName name = nodeFactory.newName();
- ParserUtil.setOffsetAndLength(name, offset(parser.getLeftIToken())+1, 0);
+ ParserUtil.setOffsetAndLength(name, offset(stream.getLeftIToken())+1, 0);
IASTDeclarator declarator = nodeFactory.newDeclarator(name);
setOffsetAndLength(declarator);
astStack.push(declarator);
@@ -1610,7 +1572,7 @@ public class CPPBuildASTParserAction extends BuildASTParserAction {
if(declSpec == null) { // can happen if implicit int is used
declSpec = nodeFactory.newSimpleDeclSpecifier();
- ParserUtil.setOffsetAndLength(declSpec, parser.getLeftIToken().getStartOffset(), 0);
+ ParserUtil.setOffsetAndLength(declSpec, stream.getLeftIToken().getStartOffset(), 0);
}
else if(disambiguateToConstructor(declSpec, declarator)) {
declSpec = (IASTDeclSpecifier) astStack.pop();
@@ -1689,7 +1651,7 @@ public class CPPBuildASTParserAction extends BuildASTParserAction {
if(name == null)
name = nodeFactory.newName();
- int type = getTemplateParameterType(parser.getLeftIToken());
+ int type = getTemplateParameterType(stream.getLeftIToken());
ICPPASTSimpleTypeTemplateParameter templateParameter = nodeFactory.newSimpleTypeTemplateParameter(type, name, typeId);
@@ -1723,7 +1685,7 @@ public class CPPBuildASTParserAction extends BuildASTParserAction {
* Yes its a hack.
*/
public void consumeTemplateParamterDeclaration() {
- IParser<ICPPASTTemplateParameter> typeParameterParser = parserFactory.getTemplateTypeParameterParser(parser);
+ ISecondaryParser<ICPPASTTemplateParameter> typeParameterParser = parserFactory.getTemplateTypeParameterParser(stream, options);
IASTNode alternate = runSecondaryParser(typeParameterParser);
if(alternate == null)
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/cpp/CPPSecondaryParserFactory.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/cpp/CPPSecondaryParserFactory.java
index 1448d3e5fb8..ff5e558529b 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/cpp/CPPSecondaryParserFactory.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/cpp/CPPSecondaryParserFactory.java
@@ -10,11 +10,14 @@
*******************************************************************************/
package org.eclipse.cdt.core.dom.lrparser.action.cpp;
+import java.util.Set;
+
import org.eclipse.cdt.core.dom.ast.IASTDeclarator;
import org.eclipse.cdt.core.dom.ast.IASTExpression;
import org.eclipse.cdt.core.dom.ast.cpp.ICPPASTTemplateParameter;
import org.eclipse.cdt.core.dom.lrparser.IParser;
-import org.eclipse.cdt.core.dom.lrparser.IParserActionTokenProvider;
+import org.eclipse.cdt.core.dom.lrparser.ISecondaryParser;
+import org.eclipse.cdt.core.dom.lrparser.action.ITokenStream;
import org.eclipse.cdt.internal.core.dom.lrparser.cpp.CPPExpressionParser;
import org.eclipse.cdt.internal.core.dom.lrparser.cpp.CPPNoCastExpressionParser;
import org.eclipse.cdt.internal.core.dom.lrparser.cpp.CPPNoFunctionDeclaratorParser;
@@ -31,24 +34,24 @@ public class CPPSecondaryParserFactory implements ICPPSecondaryParserFactory {
}
- public IParser<ICPPASTTemplateParameter> getTemplateTypeParameterParser(IParserActionTokenProvider parser) {
- return new CPPTemplateTypeParameterParser(parser);
+ public ISecondaryParser<ICPPASTTemplateParameter> getTemplateTypeParameterParser(ITokenStream stream, Set<IParser.Options> options) {
+ return new CPPTemplateTypeParameterParser(stream, options);
}
- public IParser<IASTDeclarator> getNoFunctionDeclaratorParser(IParserActionTokenProvider parser) {
- return new CPPNoFunctionDeclaratorParser(parser);
+ public ISecondaryParser<IASTDeclarator> getNoFunctionDeclaratorParser(ITokenStream stream, Set<IParser.Options> options) {
+ return new CPPNoFunctionDeclaratorParser(stream, options);
}
- public IParser<IASTExpression> getExpressionParser(IParserActionTokenProvider parser) {
- return new CPPExpressionParser(parser);
+ public ISecondaryParser<IASTExpression> getExpressionParser(ITokenStream stream, Set<IParser.Options> options) {
+ return new CPPExpressionParser(stream, options);
}
- public IParser<IASTExpression> getNoCastExpressionParser(IParserActionTokenProvider parser) {
- return new CPPNoCastExpressionParser(parser);
+ public ISecondaryParser<IASTExpression> getNoCastExpressionParser(ITokenStream stream, Set<IParser.Options> options) {
+ return new CPPNoCastExpressionParser(stream, options);
}
- public IParser<IASTExpression> getSizeofExpressionParser(IParserActionTokenProvider parser) {
- return new CPPSizeofExpressionParser(parser);
+ public ISecondaryParser<IASTExpression> getSizeofExpressionParser(ITokenStream stream, Set<IParser.Options> options) {
+ return new CPPSizeofExpressionParser(stream, options);
}
}
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/cpp/ICPPSecondaryParserFactory.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/cpp/ICPPSecondaryParserFactory.java
index c22032b84cc..b8394658428 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/cpp/ICPPSecondaryParserFactory.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/cpp/ICPPSecondaryParserFactory.java
@@ -10,11 +10,14 @@
*******************************************************************************/
package org.eclipse.cdt.core.dom.lrparser.action.cpp;
+import java.util.Set;
+
import org.eclipse.cdt.core.dom.ast.IASTDeclarator;
import org.eclipse.cdt.core.dom.ast.cpp.ICPPASTTemplateParameter;
import org.eclipse.cdt.core.dom.lrparser.IParser;
-import org.eclipse.cdt.core.dom.lrparser.IParserActionTokenProvider;
+import org.eclipse.cdt.core.dom.lrparser.ISecondaryParser;
import org.eclipse.cdt.core.dom.lrparser.action.ISecondaryParserFactory;
+import org.eclipse.cdt.core.dom.lrparser.action.ITokenStream;
/**
@@ -24,8 +27,8 @@ import org.eclipse.cdt.core.dom.lrparser.action.ISecondaryParserFactory;
*/
public interface ICPPSecondaryParserFactory extends ISecondaryParserFactory {
- IParser<ICPPASTTemplateParameter> getTemplateTypeParameterParser(IParserActionTokenProvider parser);
+ ISecondaryParser<ICPPASTTemplateParameter> getTemplateTypeParameterParser(ITokenStream stream, Set<IParser.Options> options);
- IParser<IASTDeclarator> getNoFunctionDeclaratorParser(IParserActionTokenProvider parser);
+ ISecondaryParser<IASTDeclarator> getNoFunctionDeclaratorParser(ITokenStream stream, Set<IParser.Options> options);
}
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/gnu/GCCBuildASTParserAction.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/gnu/GCCBuildASTParserAction.java
index ad5b85070e2..59386843018 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/gnu/GCCBuildASTParserAction.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/gnu/GCCBuildASTParserAction.java
@@ -20,7 +20,7 @@ import org.eclipse.cdt.core.dom.ast.c.ICASTFieldDesignator;
import org.eclipse.cdt.core.dom.ast.c.ICASTSimpleDeclSpecifier;
import org.eclipse.cdt.core.dom.ast.c.ICNodeFactory;
import org.eclipse.cdt.core.dom.ast.gnu.c.IGCCASTArrayRangeDesignator;
-import org.eclipse.cdt.core.dom.lrparser.IParserActionTokenProvider;
+import org.eclipse.cdt.core.dom.lrparser.action.ITokenStream;
import org.eclipse.cdt.core.dom.lrparser.action.ScopedStack;
import org.eclipse.cdt.core.dom.lrparser.action.c99.C99BuildASTParserAction;
@@ -30,7 +30,7 @@ public class GCCBuildASTParserAction extends GNUBuildASTParserAction {
private C99BuildASTParserAction baseAction;
- public GCCBuildASTParserAction(IParserActionTokenProvider parser, ScopedStack<Object> astStack, ICNodeFactory nodeFactory) {
+ public GCCBuildASTParserAction(ITokenStream parser, ScopedStack<Object> astStack, ICNodeFactory nodeFactory) {
super(parser, astStack, nodeFactory);
this.nodeFactory = nodeFactory;
}
@@ -45,7 +45,7 @@ public class GCCBuildASTParserAction extends GNUBuildASTParserAction {
* ::= identifier_token ':'
*/
public void consumeDesignatorField() {
- IASTName name = createName(parser.getLeftIToken());
+ IASTName name = createName(stream.getLeftIToken());
ICASTFieldDesignator designator = nodeFactory.newFieldDesignator(name);
setOffsetAndLength(designator);
astStack.push(designator);
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/gnu/GCCSecondaryParserFactory.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/gnu/GCCSecondaryParserFactory.java
index 1fdc3ee6f08..7c7afbe1a33 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/gnu/GCCSecondaryParserFactory.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/gnu/GCCSecondaryParserFactory.java
@@ -10,10 +10,13 @@
*******************************************************************************/
package org.eclipse.cdt.core.dom.lrparser.action.gnu;
+import java.util.Set;
+
import org.eclipse.cdt.core.dom.ast.IASTExpression;
import org.eclipse.cdt.core.dom.lrparser.IParser;
-import org.eclipse.cdt.core.dom.lrparser.IParserActionTokenProvider;
+import org.eclipse.cdt.core.dom.lrparser.ISecondaryParser;
import org.eclipse.cdt.core.dom.lrparser.action.ISecondaryParserFactory;
+import org.eclipse.cdt.core.dom.lrparser.action.ITokenStream;
import org.eclipse.cdt.internal.core.dom.lrparser.c99.C99ExpressionParser;
import org.eclipse.cdt.internal.core.dom.lrparser.c99.C99NoCastExpressionParser;
import org.eclipse.cdt.internal.core.dom.lrparser.gcc.GCCSizeofExpressionParser;
@@ -27,15 +30,15 @@ public class GCCSecondaryParserFactory implements ISecondaryParserFactory {
}
- public IParser<IASTExpression> getExpressionParser(IParserActionTokenProvider parser) {
- return new C99ExpressionParser(parser);
+ public ISecondaryParser<IASTExpression> getExpressionParser(ITokenStream stream, Set<IParser.Options> options) {
+ return new C99ExpressionParser(stream, options);
}
- public IParser<IASTExpression> getNoCastExpressionParser(IParserActionTokenProvider parser) {
- return new C99NoCastExpressionParser(parser);
+ public ISecondaryParser<IASTExpression> getNoCastExpressionParser(ITokenStream stream, Set<IParser.Options> options) {
+ return new C99NoCastExpressionParser(stream, options);
}
- public IParser<IASTExpression> getSizeofExpressionParser(IParserActionTokenProvider parser) {
- return new GCCSizeofExpressionParser(parser);
+ public ISecondaryParser<IASTExpression> getSizeofExpressionParser(ITokenStream stream, Set<IParser.Options> options) {
+ return new GCCSizeofExpressionParser(stream, options);
}
} \ No newline at end of file
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/gnu/GNUBuildASTParserAction.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/gnu/GNUBuildASTParserAction.java
index 6ec310b20cd..215cba3f846 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/gnu/GNUBuildASTParserAction.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/gnu/GNUBuildASTParserAction.java
@@ -19,8 +19,8 @@ import org.eclipse.cdt.core.dom.ast.IASTCompoundStatement;
import org.eclipse.cdt.core.dom.ast.IASTName;
import org.eclipse.cdt.core.dom.ast.INodeFactory;
import org.eclipse.cdt.core.dom.ast.gnu.IGNUASTCompoundStatementExpression;
-import org.eclipse.cdt.core.dom.lrparser.IParserActionTokenProvider;
import org.eclipse.cdt.core.dom.lrparser.action.AbstractParserAction;
+import org.eclipse.cdt.core.dom.lrparser.action.ITokenStream;
import org.eclipse.cdt.core.dom.lrparser.action.ScopedStack;
import org.eclipse.cdt.core.dom.lrparser.action.TokenMap;
import org.eclipse.cdt.internal.core.dom.lrparser.gcc.GCCParsersym;
@@ -31,7 +31,7 @@ public class GNUBuildASTParserAction extends AbstractParserAction {
private final TokenMap tokenMap;
- public GNUBuildASTParserAction(IParserActionTokenProvider parser, ScopedStack<Object> astStack, INodeFactory nodeFactory) {
+ public GNUBuildASTParserAction(ITokenStream parser, ScopedStack<Object> astStack, INodeFactory nodeFactory) {
super(parser, astStack);
this.nodeFactory = nodeFactory;
@@ -64,7 +64,7 @@ public class GNUBuildASTParserAction extends AbstractParserAction {
*
*/
public void consumeDeclarationASM() {
- List<IToken> tokens = parser.getRuleTokens();
+ List<IToken> tokens = stream.getRuleTokens();
int firstToken = 2;
if(tokenMap.mapKind(tokens.get(1).getKind()) == GCCParsersym.TK_volatile)
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/gnu/GPPBuildASTParserAction.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/gnu/GPPBuildASTParserAction.java
index 18ec92f5185..541d49c8703 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/gnu/GPPBuildASTParserAction.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/gnu/GPPBuildASTParserAction.java
@@ -20,7 +20,7 @@ import org.eclipse.cdt.core.dom.ast.IASTExpression;
import org.eclipse.cdt.core.dom.ast.cpp.ICPPASTSimpleDeclSpecifier;
import org.eclipse.cdt.core.dom.ast.cpp.ICPPNodeFactory;
import org.eclipse.cdt.core.dom.ast.gnu.cpp.IGPPASTSimpleDeclSpecifier;
-import org.eclipse.cdt.core.dom.lrparser.IParserActionTokenProvider;
+import org.eclipse.cdt.core.dom.lrparser.action.ITokenStream;
import org.eclipse.cdt.core.dom.lrparser.action.ScopedStack;
import org.eclipse.cdt.core.dom.lrparser.action.cpp.CPPBuildASTParserAction;
import org.eclipse.cdt.internal.core.dom.lrparser.gpp.GPPParsersym;
@@ -32,7 +32,7 @@ public class GPPBuildASTParserAction extends GNUBuildASTParserAction {
private CPPBuildASTParserAction baseAction;
- public GPPBuildASTParserAction(IParserActionTokenProvider parser, ScopedStack<Object> astStack, ICPPNodeFactory nodeFactory) {
+ public GPPBuildASTParserAction(ITokenStream parser, ScopedStack<Object> astStack, ICPPNodeFactory nodeFactory) {
super(parser, astStack, nodeFactory);
this.nodeFactory = nodeFactory;
}
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/gnu/GPPSecondaryParserFactory.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/gnu/GPPSecondaryParserFactory.java
index 4e59e9e5a31..e2df0454417 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/gnu/GPPSecondaryParserFactory.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/gnu/GPPSecondaryParserFactory.java
@@ -10,11 +10,14 @@
*******************************************************************************/
package org.eclipse.cdt.core.dom.lrparser.action.gnu;
+import java.util.Set;
+
import org.eclipse.cdt.core.dom.ast.IASTDeclarator;
import org.eclipse.cdt.core.dom.ast.IASTExpression;
import org.eclipse.cdt.core.dom.ast.cpp.ICPPASTTemplateParameter;
import org.eclipse.cdt.core.dom.lrparser.IParser;
-import org.eclipse.cdt.core.dom.lrparser.IParserActionTokenProvider;
+import org.eclipse.cdt.core.dom.lrparser.ISecondaryParser;
+import org.eclipse.cdt.core.dom.lrparser.action.ITokenStream;
import org.eclipse.cdt.core.dom.lrparser.action.cpp.ICPPSecondaryParserFactory;
import org.eclipse.cdt.internal.core.dom.lrparser.cpp.CPPExpressionParser;
import org.eclipse.cdt.internal.core.dom.lrparser.cpp.CPPNoCastExpressionParser;
@@ -32,24 +35,24 @@ public class GPPSecondaryParserFactory implements ICPPSecondaryParserFactory {
}
- public IParser<ICPPASTTemplateParameter> getTemplateTypeParameterParser(IParserActionTokenProvider parser) {
- return new CPPTemplateTypeParameterParser(parser);
+ public ISecondaryParser<ICPPASTTemplateParameter> getTemplateTypeParameterParser(ITokenStream stream, Set<IParser.Options> options) {
+ return new CPPTemplateTypeParameterParser(stream, options);
}
- public IParser<IASTDeclarator> getNoFunctionDeclaratorParser(IParserActionTokenProvider parser) {
- return new CPPNoFunctionDeclaratorParser(parser);
+ public ISecondaryParser<IASTDeclarator> getNoFunctionDeclaratorParser(ITokenStream stream, Set<IParser.Options> options) {
+ return new CPPNoFunctionDeclaratorParser(stream, options);
}
- public IParser<IASTExpression> getExpressionParser(IParserActionTokenProvider parser) {
- return new CPPExpressionParser(parser);
+ public ISecondaryParser<IASTExpression> getExpressionParser(ITokenStream stream, Set<IParser.Options> options) {
+ return new CPPExpressionParser(stream, options);
}
- public IParser<IASTExpression> getNoCastExpressionParser(IParserActionTokenProvider parser) {
- return new CPPNoCastExpressionParser(parser);
+ public ISecondaryParser<IASTExpression> getNoCastExpressionParser(ITokenStream stream, Set<IParser.Options> options) {
+ return new CPPNoCastExpressionParser(stream, options);
}
- public IParser<IASTExpression> getSizeofExpressionParser(IParserActionTokenProvider parser) {
- return new GPPSizeofExpressionParser(parser);
+ public ISecondaryParser<IASTExpression> getSizeofExpressionParser(ITokenStream stream, Set<IParser.Options> options) {
+ return new GPPSizeofExpressionParser(stream, options);
}
}
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/c99/C99Language.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/c99/C99Language.java
index 3bcb06dff68..98d12a2dc92 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/c99/C99Language.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/c99/C99Language.java
@@ -10,17 +10,19 @@
*******************************************************************************/
package org.eclipse.cdt.core.dom.lrparser.c99;
+import java.util.Set;
+
import org.eclipse.cdt.core.dom.ILinkage;
import org.eclipse.cdt.core.dom.ast.IASTTranslationUnit;
import org.eclipse.cdt.core.dom.lrparser.BaseExtensibleLanguage;
-import org.eclipse.cdt.core.dom.lrparser.IDOMTokenMap;
import org.eclipse.cdt.core.dom.lrparser.IParser;
import org.eclipse.cdt.core.dom.lrparser.ScannerExtensionConfiguration;
+import org.eclipse.cdt.core.dom.lrparser.IParser.Options;
import org.eclipse.cdt.core.dom.parser.IBuiltinBindingsProvider;
import org.eclipse.cdt.core.dom.parser.IScannerExtensionConfiguration;
import org.eclipse.cdt.core.dom.parser.c.ANSICParserExtensionConfiguration;
-import org.eclipse.cdt.core.model.IContributedModelBuilder;
-import org.eclipse.cdt.core.model.ITranslationUnit;
+import org.eclipse.cdt.core.index.IIndex;
+import org.eclipse.cdt.core.parser.IScanner;
import org.eclipse.cdt.core.parser.ParserLanguage;
import org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parser;
@@ -40,24 +42,16 @@ public class C99Language extends BaseExtensibleLanguage {
return DEFAULT;
}
+
@Override
- protected IParser<IASTTranslationUnit> getParser() {
- return new C99Parser();
- }
-
- @Override
- protected IDOMTokenMap getTokenMap() {
- return DOMToC99TokenMap.DEFAULT_MAP;
+ protected IParser<IASTTranslationUnit> getParser(IScanner scanner, IIndex index, Set<Options> options) {
+ return new C99Parser(scanner, DOMToC99TokenMap.DEFAULT_MAP, getBuiltinBindingsProvider(), index, options);
}
@Override
protected IScannerExtensionConfiguration getScannerExtensionConfiguration() {
return ScannerExtensionConfiguration.createC();
}
-
- public IContributedModelBuilder createModelBuilder(@SuppressWarnings("unused") ITranslationUnit tu) {
- return null;
- }
public String getId() {
return ID;
@@ -72,8 +66,7 @@ public class C99Language extends BaseExtensibleLanguage {
return ParserLanguage.C;
}
- @Override
- protected IBuiltinBindingsProvider getBuiltinBindingsProvider() {
+ private IBuiltinBindingsProvider getBuiltinBindingsProvider() {
return new ANSICParserExtensionConfiguration().getBuiltinBindingsProvider();
}
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/cpp/ISOCPPLanguage.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/cpp/ISOCPPLanguage.java
index 0c514b89d3d..4638bd1c5b2 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/cpp/ISOCPPLanguage.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/cpp/ISOCPPLanguage.java
@@ -10,17 +10,18 @@
*******************************************************************************/
package org.eclipse.cdt.core.dom.lrparser.cpp;
+import java.util.Set;
+
import org.eclipse.cdt.core.dom.ILinkage;
import org.eclipse.cdt.core.dom.ast.IASTTranslationUnit;
import org.eclipse.cdt.core.dom.lrparser.BaseExtensibleLanguage;
-import org.eclipse.cdt.core.dom.lrparser.IDOMTokenMap;
import org.eclipse.cdt.core.dom.lrparser.IParser;
import org.eclipse.cdt.core.dom.lrparser.ScannerExtensionConfiguration;
import org.eclipse.cdt.core.dom.parser.IBuiltinBindingsProvider;
import org.eclipse.cdt.core.dom.parser.IScannerExtensionConfiguration;
import org.eclipse.cdt.core.dom.parser.cpp.ANSICPPParserExtensionConfiguration;
-import org.eclipse.cdt.core.model.IContributedModelBuilder;
-import org.eclipse.cdt.core.model.ITranslationUnit;
+import org.eclipse.cdt.core.index.IIndex;
+import org.eclipse.cdt.core.parser.IScanner;
import org.eclipse.cdt.core.parser.ParserLanguage;
import org.eclipse.cdt.internal.core.dom.lrparser.cpp.CPPParser;
@@ -40,13 +41,8 @@ public class ISOCPPLanguage extends BaseExtensibleLanguage {
}
@Override
- protected IParser<IASTTranslationUnit> getParser() {
- return new CPPParser();
- }
-
- @Override
- protected IDOMTokenMap getTokenMap() {
- return DOMToISOCPPTokenMap.DEFAULT_MAP;
+ protected IParser<IASTTranslationUnit> getParser(IScanner scanner, IIndex index, Set<IParser.Options> options) {
+ return new CPPParser(scanner, DOMToISOCPPTokenMap.DEFAULT_MAP, getBuiltinBindingsProvider(), index, options);
}
@Override
@@ -54,10 +50,6 @@ public class ISOCPPLanguage extends BaseExtensibleLanguage {
return ScannerExtensionConfiguration.createCPP();
}
- public IContributedModelBuilder createModelBuilder(@SuppressWarnings("unused") ITranslationUnit tu) {
- return null;
- }
-
public String getId() {
return ID;
}
@@ -71,7 +63,6 @@ public class ISOCPPLanguage extends BaseExtensibleLanguage {
return ParserLanguage.CPP;
}
- @Override
protected IBuiltinBindingsProvider getBuiltinBindingsProvider() {
return new ANSICPPParserExtensionConfiguration().getBuiltinBindingsProvider();
}
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/gnu/GCCLanguage.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/gnu/GCCLanguage.java
index 9d69cf40345..a83deee3510 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/gnu/GCCLanguage.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/gnu/GCCLanguage.java
@@ -10,17 +10,18 @@
*******************************************************************************/
package org.eclipse.cdt.core.dom.lrparser.gnu;
+import java.util.Set;
+
import org.eclipse.cdt.core.dom.ILinkage;
import org.eclipse.cdt.core.dom.ast.IASTTranslationUnit;
import org.eclipse.cdt.core.dom.lrparser.BaseExtensibleLanguage;
-import org.eclipse.cdt.core.dom.lrparser.IDOMTokenMap;
import org.eclipse.cdt.core.dom.lrparser.IParser;
import org.eclipse.cdt.core.dom.parser.IBuiltinBindingsProvider;
import org.eclipse.cdt.core.dom.parser.IScannerExtensionConfiguration;
import org.eclipse.cdt.core.dom.parser.c.GCCParserExtensionConfiguration;
import org.eclipse.cdt.core.dom.parser.c.GCCScannerExtensionConfiguration;
-import org.eclipse.cdt.core.model.IContributedModelBuilder;
-import org.eclipse.cdt.core.model.ITranslationUnit;
+import org.eclipse.cdt.core.index.IIndex;
+import org.eclipse.cdt.core.parser.IScanner;
import org.eclipse.cdt.core.parser.ParserLanguage;
import org.eclipse.cdt.internal.core.dom.lrparser.gcc.GCCParser;
@@ -40,23 +41,14 @@ public class GCCLanguage extends BaseExtensibleLanguage {
}
@Override
- protected IParser<IASTTranslationUnit> getParser() {
- return new GCCParser();
- }
-
- @Override
- protected IDOMTokenMap getTokenMap() {
- return DOMToGCCTokenMap.DEFAULT_MAP;
+ protected IParser<IASTTranslationUnit> getParser(IScanner scanner, IIndex index, Set<IParser.Options> options) {
+ return new GCCParser(scanner, DOMToGCCTokenMap.DEFAULT_MAP, getBuiltinBindingsProvider(), index, options);
}
@Override
protected IScannerExtensionConfiguration getScannerExtensionConfiguration() {
return GCCScannerExtensionConfiguration.getInstance();
}
-
- public IContributedModelBuilder createModelBuilder(@SuppressWarnings("unused") ITranslationUnit tu) {
- return null;
- }
public String getId() {
return ID;
@@ -71,7 +63,6 @@ public class GCCLanguage extends BaseExtensibleLanguage {
return ParserLanguage.C;
}
- @Override
protected IBuiltinBindingsProvider getBuiltinBindingsProvider() {
return new GCCParserExtensionConfiguration().getBuiltinBindingsProvider();
}
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/gnu/GPPLanguage.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/gnu/GPPLanguage.java
index 7bf49dcca13..533a44e943b 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/gnu/GPPLanguage.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/gnu/GPPLanguage.java
@@ -10,17 +10,18 @@
*******************************************************************************/
package org.eclipse.cdt.core.dom.lrparser.gnu;
+import java.util.Set;
+
import org.eclipse.cdt.core.dom.ILinkage;
import org.eclipse.cdt.core.dom.ast.IASTTranslationUnit;
import org.eclipse.cdt.core.dom.lrparser.BaseExtensibleLanguage;
-import org.eclipse.cdt.core.dom.lrparser.IDOMTokenMap;
import org.eclipse.cdt.core.dom.lrparser.IParser;
import org.eclipse.cdt.core.dom.parser.IBuiltinBindingsProvider;
import org.eclipse.cdt.core.dom.parser.IScannerExtensionConfiguration;
import org.eclipse.cdt.core.dom.parser.cpp.GPPParserExtensionConfiguration;
import org.eclipse.cdt.core.dom.parser.cpp.GPPScannerExtensionConfiguration;
-import org.eclipse.cdt.core.model.IContributedModelBuilder;
-import org.eclipse.cdt.core.model.ITranslationUnit;
+import org.eclipse.cdt.core.index.IIndex;
+import org.eclipse.cdt.core.parser.IScanner;
import org.eclipse.cdt.core.parser.ParserLanguage;
import org.eclipse.cdt.internal.core.dom.lrparser.gpp.GPPParser;
@@ -40,23 +41,14 @@ public class GPPLanguage extends BaseExtensibleLanguage {
}
@Override
- protected IParser<IASTTranslationUnit> getParser() {
- return new GPPParser();
- }
-
- @Override
- protected IDOMTokenMap getTokenMap() {
- return DOMToGPPTokenMap.DEFAULT_MAP;
+ protected IParser<IASTTranslationUnit> getParser(IScanner scanner, IIndex index, Set<IParser.Options> options) {
+ return new GPPParser(scanner, DOMToGPPTokenMap.DEFAULT_MAP, getBuiltinBindingsProvider(), index, options);
}
@Override
protected IScannerExtensionConfiguration getScannerExtensionConfiguration() {
return GPPScannerExtensionConfiguration.getInstance();
}
-
- public IContributedModelBuilder createModelBuilder(@SuppressWarnings("unused") ITranslationUnit tu) {
- return null;
- }
public String getId() {
return ID;
@@ -71,7 +63,6 @@ public class GPPLanguage extends BaseExtensibleLanguage {
return ParserLanguage.CPP;
}
- @Override
protected IBuiltinBindingsProvider getBuiltinBindingsProvider() {
return new GPPParserExtensionConfiguration().getBuiltinBindingsProvider();
}
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99ExpressionParser.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99ExpressionParser.java
index a0bc2fc7b89..a72b879f6cb 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99ExpressionParser.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99ExpressionParser.java
@@ -17,19 +17,28 @@ import lpg.lpgjavaruntime.*;
import java.util.*;
import org.eclipse.cdt.core.dom.ast.*;
+import org.eclipse.cdt.core.dom.lrparser.CPreprocessorAdapter;
+import org.eclipse.cdt.core.dom.lrparser.IDOMTokenMap;
import org.eclipse.cdt.core.dom.lrparser.IParser;
-import org.eclipse.cdt.core.dom.lrparser.IParserActionTokenProvider;
+import org.eclipse.cdt.core.dom.lrparser.ITokenCollector;
import org.eclipse.cdt.core.dom.lrparser.lpgextensions.FixedBacktrackingParser;
import org.eclipse.cdt.core.dom.lrparser.action.ScopedStack;
+import org.eclipse.cdt.core.parser.IScanner;
+import org.eclipse.cdt.core.dom.parser.IBuiltinBindingsProvider;
+import org.eclipse.cdt.core.index.IIndex;
+import org.eclipse.cdt.core.dom.lrparser.action.ITokenStream;
import org.eclipse.cdt.core.dom.lrparser.action.ITokenMap;
import org.eclipse.cdt.core.dom.lrparser.action.TokenMap;
+import org.eclipse.cdt.core.dom.lrparser.ISecondaryParser;
import org.eclipse.cdt.internal.core.dom.parser.c.CNodeFactory;
import org.eclipse.cdt.core.dom.lrparser.action.c99.C99BuildASTParserAction;
import org.eclipse.cdt.core.dom.lrparser.action.c99.C99SecondaryParserFactory;
-public class C99ExpressionParser extends PrsStream implements RuleAction , IParserActionTokenProvider, IParser< IASTExpression >
+public class C99ExpressionParser extends PrsStream implements RuleAction, ITokenStream,
+ ITokenCollector, IParser< IASTExpression >
+ , ISecondaryParser< IASTExpression >
{
private static ParseTable prs = new C99ExpressionParserprs();
private FixedBacktrackingParser btParser;
@@ -167,7 +176,11 @@ public class C99ExpressionParser extends PrsStream implements RuleAction , IPars
private C99BuildASTParserAction action;
private IASTCompletionNode compNode;
-public C99ExpressionParser() { // constructor
+
+public C99ExpressionParser(IScanner scanner, IDOMTokenMap tokenMap, IBuiltinBindingsProvider builtinBindingsProvider, IIndex index, Set<IParser.Options> options) {
+ initActions(options);
+ action.initializeTranslationUnit(scanner, builtinBindingsProvider, index);
+ CPreprocessorAdapter.runCPreprocessor(scanner, this, tokenMap);
}
private void initActions(Set<IParser.Options> options) {
@@ -186,10 +199,9 @@ public void addToken(IToken token) {
}
-public IASTExpression parse(Set<IParser.Options> options) {
+public IASTExpression parse() {
// this has to be done, or... kaboom!
setStreamLength(getSize());
- initActions(options);
final int errorRepairCount = -1; // -1 means full error handling
parser(null, errorRepairCount); // do the actual parse
@@ -232,12 +244,12 @@ public void setTokens(List<IToken> tokens) {
addToken(new Token(null, 0, 0, C99ExpressionParsersym.TK_EOF_TOKEN));
}
-public C99ExpressionParser(IParserActionTokenProvider parser) { // constructor
+public C99ExpressionParser(ITokenStream parser, Set<IParser.Options> options) { // constructor for creating secondary parser
+ initActions(options);
tokenMap = new TokenMap(C99ExpressionParsersym.orderedTerminalSymbols, parser.getOrderedTerminalSymbols());
}
-
public void ruleAction(int ruleNumber)
{
switch (ruleNumber)
@@ -250,1011 +262,1017 @@ public C99ExpressionParser(IParserActionTokenProvider parser) { // constructor
}
//
- // Rule 12: literal ::= integer
+ // Rule 2: <empty> ::= $Empty
//
- case 12: { action. consumeExpressionLiteral(IASTLiteralExpression.lk_integer_constant); break;
+ case 2: { action. consumeEmpty(); break;
}
//
- // Rule 13: literal ::= floating
+ // Rule 13: literal ::= integer
//
- case 13: { action. consumeExpressionLiteral(IASTLiteralExpression.lk_float_constant); break;
+ case 13: { action. consumeExpressionLiteral(IASTLiteralExpression.lk_integer_constant); break;
}
//
- // Rule 14: literal ::= charconst
+ // Rule 14: literal ::= floating
//
- case 14: { action. consumeExpressionLiteral(IASTLiteralExpression.lk_char_constant); break;
+ case 14: { action. consumeExpressionLiteral(IASTLiteralExpression.lk_float_constant); break;
}
//
- // Rule 15: literal ::= stringlit
+ // Rule 15: literal ::= charconst
//
- case 15: { action. consumeExpressionLiteral(IASTLiteralExpression.lk_string_literal); break;
+ case 15: { action. consumeExpressionLiteral(IASTLiteralExpression.lk_char_constant); break;
}
//
- // Rule 17: primary_expression ::= primary_expression_id
+ // Rule 16: literal ::= stringlit
//
- case 17: { action. consumeExpressionID(); break;
+ case 16: { action. consumeExpressionLiteral(IASTLiteralExpression.lk_string_literal); break;
}
//
- // Rule 18: primary_expression ::= ( expression )
+ // Rule 18: primary_expression ::= primary_expression_id
//
- case 18: { action. consumeExpressionBracketed(); break;
+ case 18: { action. consumeExpressionID(); break;
}
//
- // Rule 21: postfix_expression ::= postfix_expression [ expression ]
+ // Rule 19: primary_expression ::= ( expression )
//
- case 21: { action. consumeExpressionArraySubscript(); break;
+ case 19: { action. consumeExpressionBracketed(); break;
}
//
- // Rule 22: postfix_expression ::= postfix_expression ( expression_list_opt )
+ // Rule 22: postfix_expression ::= postfix_expression [ expression ]
//
- case 22: { action. consumeExpressionFunctionCall(); break;
+ case 22: { action. consumeExpressionArraySubscript(); break;
}
//
- // Rule 23: postfix_expression ::= postfix_expression . member_name
+ // Rule 23: postfix_expression ::= postfix_expression ( expression_list_opt )
//
- case 23: { action. consumeExpressionFieldReference(false); break;
+ case 23: { action. consumeExpressionFunctionCall(); break;
}
//
- // Rule 24: postfix_expression ::= postfix_expression -> member_name
+ // Rule 24: postfix_expression ::= postfix_expression . member_name
//
- case 24: { action. consumeExpressionFieldReference(true); break;
+ case 24: { action. consumeExpressionFieldReference(false); break;
}
//
- // Rule 25: postfix_expression ::= postfix_expression ++
+ // Rule 25: postfix_expression ::= postfix_expression -> member_name
//
- case 25: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_postFixIncr); break;
+ case 25: { action. consumeExpressionFieldReference(true); break;
}
//
- // Rule 26: postfix_expression ::= postfix_expression --
+ // Rule 26: postfix_expression ::= postfix_expression ++
//
- case 26: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_postFixDecr); break;
+ case 26: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_postFixIncr); break;
}
//
- // Rule 27: postfix_expression ::= ( type_id ) { <openscope-ast> initializer_list comma_opt }
+ // Rule 27: postfix_expression ::= postfix_expression --
//
- case 27: { action. consumeExpressionTypeIdInitializer(); break;
+ case 27: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_postFixDecr); break;
}
//
- // Rule 32: unary_expression ::= ++ unary_expression
+ // Rule 28: postfix_expression ::= ( type_id ) { <openscope-ast> initializer_list comma_opt }
//
- case 32: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_prefixIncr); break;
+ case 28: { action. consumeExpressionTypeIdInitializer(); break;
}
//
- // Rule 33: unary_expression ::= -- unary_expression
+ // Rule 33: unary_expression ::= ++ unary_expression
//
- case 33: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_prefixDecr); break;
+ case 33: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_prefixIncr); break;
}
//
- // Rule 34: unary_expression ::= & cast_expression
+ // Rule 34: unary_expression ::= -- unary_expression
//
- case 34: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_amper); break;
+ case 34: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_prefixDecr); break;
}
//
- // Rule 35: unary_expression ::= * cast_expression
+ // Rule 35: unary_expression ::= & cast_expression
//
- case 35: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_star); break;
+ case 35: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_amper); break;
}
//
- // Rule 36: unary_expression ::= + cast_expression
+ // Rule 36: unary_expression ::= * cast_expression
//
- case 36: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_plus); break;
+ case 36: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_star); break;
}
//
- // Rule 37: unary_expression ::= - cast_expression
+ // Rule 37: unary_expression ::= + cast_expression
//
- case 37: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_minus); break;
+ case 37: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_plus); break;
}
//
- // Rule 38: unary_expression ::= ~ cast_expression
+ // Rule 38: unary_expression ::= - cast_expression
//
- case 38: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_tilde); break;
+ case 38: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_minus); break;
}
//
- // Rule 39: unary_expression ::= ! cast_expression
+ // Rule 39: unary_expression ::= ~ cast_expression
//
- case 39: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_not); break;
+ case 39: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_tilde); break;
}
//
- // Rule 40: unary_expression ::= sizeof unary_expression
+ // Rule 40: unary_expression ::= ! cast_expression
//
- case 40: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_sizeof); break;
+ case 40: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_not); break;
}
//
- // Rule 41: unary_expression ::= sizeof ( type_id )
+ // Rule 41: unary_expression ::= sizeof unary_expression
//
- case 41: { action. consumeExpressionTypeId(IASTTypeIdExpression.op_sizeof); break;
+ case 41: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_sizeof); break;
}
//
- // Rule 43: cast_expression ::= ( type_id ) cast_expression
+ // Rule 42: unary_expression ::= sizeof ( type_id )
//
- case 43: { action. consumeExpressionCast(IASTCastExpression.op_cast); break;
+ case 42: { action. consumeExpressionTypeId(IASTTypeIdExpression.op_sizeof); break;
}
//
- // Rule 45: multiplicative_expression ::= multiplicative_expression * cast_expression
+ // Rule 44: cast_expression ::= ( type_id ) cast_expression
//
- case 45: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_multiply); break;
+ case 44: { action. consumeExpressionCast(IASTCastExpression.op_cast); break;
}
//
- // Rule 46: multiplicative_expression ::= multiplicative_expression / cast_expression
+ // Rule 46: multiplicative_expression ::= multiplicative_expression * cast_expression
//
- case 46: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_divide); break;
+ case 46: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_multiply); break;
}
//
- // Rule 47: multiplicative_expression ::= multiplicative_expression % cast_expression
+ // Rule 47: multiplicative_expression ::= multiplicative_expression / cast_expression
//
- case 47: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_modulo); break;
+ case 47: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_divide); break;
}
//
- // Rule 49: additive_expression ::= additive_expression + multiplicative_expression
+ // Rule 48: multiplicative_expression ::= multiplicative_expression % cast_expression
//
- case 49: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_plus); break;
+ case 48: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_modulo); break;
}
//
- // Rule 50: additive_expression ::= additive_expression - multiplicative_expression
+ // Rule 50: additive_expression ::= additive_expression + multiplicative_expression
//
- case 50: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_minus); break;
+ case 50: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_plus); break;
}
//
- // Rule 52: shift_expression ::= shift_expression << additive_expression
+ // Rule 51: additive_expression ::= additive_expression - multiplicative_expression
//
- case 52: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_shiftLeft); break;
+ case 51: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_minus); break;
}
//
- // Rule 53: shift_expression ::= shift_expression >> additive_expression
+ // Rule 53: shift_expression ::= shift_expression << additive_expression
//
- case 53: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_shiftRight); break;
+ case 53: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_shiftLeft); break;
}
//
- // Rule 55: relational_expression ::= relational_expression < shift_expression
+ // Rule 54: shift_expression ::= shift_expression >> additive_expression
//
- case 55: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_lessThan); break;
+ case 54: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_shiftRight); break;
}
//
- // Rule 56: relational_expression ::= relational_expression > shift_expression
+ // Rule 56: relational_expression ::= relational_expression < shift_expression
//
- case 56: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_greaterThan); break;
+ case 56: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_lessThan); break;
}
//
- // Rule 57: relational_expression ::= relational_expression <= shift_expression
+ // Rule 57: relational_expression ::= relational_expression > shift_expression
//
- case 57: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_lessEqual); break;
+ case 57: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_greaterThan); break;
}
//
- // Rule 58: relational_expression ::= relational_expression >= shift_expression
+ // Rule 58: relational_expression ::= relational_expression <= shift_expression
//
- case 58: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_greaterEqual); break;
+ case 58: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_lessEqual); break;
}
//
- // Rule 60: equality_expression ::= equality_expression == relational_expression
+ // Rule 59: relational_expression ::= relational_expression >= shift_expression
//
- case 60: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_equals); break;
+ case 59: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_greaterEqual); break;
}
//
- // Rule 61: equality_expression ::= equality_expression != relational_expression
+ // Rule 61: equality_expression ::= equality_expression == relational_expression
//
- case 61: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_notequals); break;
+ case 61: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_equals); break;
}
//
- // Rule 63: AND_expression ::= AND_expression & equality_expression
+ // Rule 62: equality_expression ::= equality_expression != relational_expression
//
- case 63: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_binaryAnd); break;
+ case 62: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_notequals); break;
}
//
- // Rule 65: exclusive_OR_expression ::= exclusive_OR_expression ^ AND_expression
+ // Rule 64: and_expression ::= and_expression & equality_expression
//
- case 65: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_binaryXor); break;
+ case 64: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_binaryAnd); break;
}
//
- // Rule 67: inclusive_OR_expression ::= inclusive_OR_expression | exclusive_OR_expression
+ // Rule 66: exclusive_or_expression ::= exclusive_or_expression ^ and_expression
//
- case 67: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_binaryOr); break;
+ case 66: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_binaryXor); break;
}
//
- // Rule 69: logical_AND_expression ::= logical_AND_expression && inclusive_OR_expression
+ // Rule 68: inclusive_or_expression ::= inclusive_or_expression | exclusive_or_expression
//
- case 69: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_logicalAnd); break;
+ case 68: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_binaryOr); break;
}
//
- // Rule 71: logical_OR_expression ::= logical_OR_expression || logical_AND_expression
+ // Rule 70: logical_and_expression ::= logical_and_expression && inclusive_or_expression
//
- case 71: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_logicalOr); break;
+ case 70: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_logicalAnd); break;
}
//
- // Rule 73: conditional_expression ::= logical_OR_expression ? expression : conditional_expression
+ // Rule 72: logical_or_expression ::= logical_or_expression || logical_and_expression
//
- case 73: { action. consumeExpressionConditional(); break;
+ case 72: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_logicalOr); break;
}
//
- // Rule 75: assignment_expression ::= unary_expression = assignment_expression
+ // Rule 74: conditional_expression ::= logical_or_expression ? expression : assignment_expression
//
- case 75: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_assign); break;
+ case 74: { action. consumeExpressionConditional(); break;
}
//
- // Rule 76: assignment_expression ::= unary_expression *= assignment_expression
+ // Rule 76: assignment_expression ::= unary_expression = assignment_expression
//
- case 76: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_multiplyAssign); break;
+ case 76: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_assign); break;
}
//
- // Rule 77: assignment_expression ::= unary_expression /= assignment_expression
+ // Rule 77: assignment_expression ::= unary_expression *= assignment_expression
//
- case 77: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_divideAssign); break;
+ case 77: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_multiplyAssign); break;
}
//
- // Rule 78: assignment_expression ::= unary_expression %= assignment_expression
+ // Rule 78: assignment_expression ::= unary_expression /= assignment_expression
//
- case 78: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_moduloAssign); break;
+ case 78: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_divideAssign); break;
}
//
- // Rule 79: assignment_expression ::= unary_expression += assignment_expression
+ // Rule 79: assignment_expression ::= unary_expression %= assignment_expression
//
- case 79: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_plusAssign); break;
+ case 79: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_moduloAssign); break;
}
//
- // Rule 80: assignment_expression ::= unary_expression -= assignment_expression
+ // Rule 80: assignment_expression ::= unary_expression += assignment_expression
//
- case 80: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_minusAssign); break;
+ case 80: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_plusAssign); break;
}
//
- // Rule 81: assignment_expression ::= unary_expression <<= assignment_expression
+ // Rule 81: assignment_expression ::= unary_expression -= assignment_expression
//
- case 81: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_shiftLeftAssign); break;
+ case 81: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_minusAssign); break;
}
//
- // Rule 82: assignment_expression ::= unary_expression >>= assignment_expression
+ // Rule 82: assignment_expression ::= unary_expression <<= assignment_expression
//
- case 82: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_shiftRightAssign); break;
+ case 82: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_shiftLeftAssign); break;
}
//
- // Rule 83: assignment_expression ::= unary_expression &= assignment_expression
+ // Rule 83: assignment_expression ::= unary_expression >>= assignment_expression
//
- case 83: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_binaryAndAssign); break;
+ case 83: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_shiftRightAssign); break;
}
//
- // Rule 84: assignment_expression ::= unary_expression ^= assignment_expression
+ // Rule 84: assignment_expression ::= unary_expression &= assignment_expression
//
- case 84: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_binaryXorAssign); break;
+ case 84: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_binaryAndAssign); break;
}
//
- // Rule 85: assignment_expression ::= unary_expression |= assignment_expression
+ // Rule 85: assignment_expression ::= unary_expression ^= assignment_expression
//
- case 85: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_binaryOrAssign); break;
+ case 85: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_binaryXorAssign); break;
}
//
- // Rule 88: expression_list ::= <openscope-ast> expression_list_actual
+ // Rule 86: assignment_expression ::= unary_expression |= assignment_expression
//
- case 88: { action. consumeExpressionList(); break;
+ case 86: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_binaryOrAssign); break;
}
//
- // Rule 90: expression_list_opt ::= $Empty
+ // Rule 89: expression_list ::= <openscope-ast> expression_list_actual
//
- case 90: { action. consumeEmpty(); break;
+ case 89: { action. consumeExpressionList(); break;
}
//
- // Rule 100: statement ::= ERROR_TOKEN
+ // Rule 91: expression_list_opt ::= $Empty
//
- case 100: { action. consumeStatementProblem(); break;
+ case 91: { action. consumeEmpty(); break;
}
//
- // Rule 101: labeled_statement ::= identifier_token : statement
+ // Rule 101: statement ::= ERROR_TOKEN
//
- case 101: { action. consumeStatementLabeled(); break;
+ case 101: { action. consumeStatementProblem(); break;
}
//
- // Rule 102: labeled_statement ::= case constant_expression : statement
+ // Rule 102: labeled_statement ::= identifier_token : statement
//
- case 102: { action. consumeStatementCase(); break;
+ case 102: { action. consumeStatementLabeled(); break;
}
//
- // Rule 103: labeled_statement ::= default : statement
+ // Rule 103: labeled_statement ::= case constant_expression : statement
//
- case 103: { action. consumeStatementDefault(); break;
+ case 103: { action. consumeStatementCase(); break;
}
//
- // Rule 104: compound_statement ::= { }
+ // Rule 104: labeled_statement ::= default : statement
//
- case 104: { action. consumeStatementCompoundStatement(false); break;
+ case 104: { action. consumeStatementDefault(); break;
}
//
- // Rule 105: compound_statement ::= { <openscope-ast> block_item_list }
+ // Rule 105: compound_statement ::= { }
//
- case 105: { action. consumeStatementCompoundStatement(true); break;
+ case 105: { action. consumeStatementCompoundStatement(false); break;
}
//
- // Rule 109: block_item ::= declaration
+ // Rule 106: compound_statement ::= { <openscope-ast> block_item_list }
//
- case 109: { action. consumeStatementDeclarationWithDisambiguation(); break;
+ case 106: { action. consumeStatementCompoundStatement(true); break;
}
//
- // Rule 110: expression_statement ::= ;
+ // Rule 110: block_item ::= declaration
//
- case 110: { action. consumeStatementNull(); break;
+ case 110: { action. consumeStatementDeclarationWithDisambiguation(); break;
}
//
- // Rule 111: expression_statement ::= expression_in_statement ;
+ // Rule 111: expression_statement ::= ;
//
- case 111: { action. consumeStatementExpression(); break;
+ case 111: { action. consumeStatementNull(); break;
}
//
- // Rule 112: selection_statement ::= if ( expression ) statement
+ // Rule 112: expression_statement ::= expression_in_statement ;
//
- case 112: { action. consumeStatementIf(false); break;
+ case 112: { action. consumeStatementExpression(); break;
}
//
- // Rule 113: selection_statement ::= if ( expression ) statement else statement
+ // Rule 113: selection_statement ::= if ( expression ) statement
//
- case 113: { action. consumeStatementIf(true); break;
+ case 113: { action. consumeStatementIf(false); break;
}
//
- // Rule 114: selection_statement ::= switch ( expression ) statement
+ // Rule 114: selection_statement ::= if ( expression ) statement else statement
//
- case 114: { action. consumeStatementSwitch(); break;
+ case 114: { action. consumeStatementIf(true); break;
}
//
- // Rule 116: expression_opt ::= $Empty
+ // Rule 115: selection_statement ::= switch ( expression ) statement
//
- case 116: { action. consumeEmpty(); break;
+ case 115: { action. consumeStatementSwitch(); break;
}
//
- // Rule 117: iteration_statement ::= do statement while ( expression ) ;
+ // Rule 117: expression_opt ::= $Empty
//
- case 117: { action. consumeStatementDoLoop(); break;
+ case 117: { action. consumeEmpty(); break;
}
//
- // Rule 118: iteration_statement ::= while ( expression ) statement
+ // Rule 118: iteration_statement ::= do statement while ( expression ) ;
//
- case 118: { action. consumeStatementWhileLoop(); break;
+ case 118: { action. consumeStatementDoLoop(); break;
}
//
- // Rule 119: iteration_statement ::= for ( expression_opt ; expression_opt ; expression_opt ) statement
+ // Rule 119: iteration_statement ::= while ( expression ) statement
//
- case 119: { action. consumeStatementForLoop(); break;
+ case 119: { action. consumeStatementWhileLoop(); break;
}
//
- // Rule 120: iteration_statement ::= for ( declaration expression_opt ; expression_opt ) statement
+ // Rule 120: iteration_statement ::= for ( expression_opt ; expression_opt ; expression_opt ) statement
//
case 120: { action. consumeStatementForLoop(); break;
}
//
- // Rule 121: jump_statement ::= goto identifier_token ;
+ // Rule 121: iteration_statement ::= for ( declaration expression_opt ; expression_opt ) statement
//
- case 121: { action. consumeStatementGoto(); break;
+ case 121: { action. consumeStatementForLoop(); break;
}
//
- // Rule 122: jump_statement ::= continue ;
+ // Rule 122: jump_statement ::= goto identifier_token ;
//
- case 122: { action. consumeStatementContinue(); break;
+ case 122: { action. consumeStatementGoto(); break;
}
//
- // Rule 123: jump_statement ::= break ;
+ // Rule 123: jump_statement ::= continue ;
//
- case 123: { action. consumeStatementBreak(); break;
+ case 123: { action. consumeStatementContinue(); break;
}
//
- // Rule 124: jump_statement ::= return ;
+ // Rule 124: jump_statement ::= break ;
//
- case 124: { action. consumeStatementReturn(false); break;
+ case 124: { action. consumeStatementBreak(); break;
}
//
- // Rule 125: jump_statement ::= return expression ;
+ // Rule 125: jump_statement ::= return ;
//
- case 125: { action. consumeStatementReturn(true); break;
+ case 125: { action. consumeStatementReturn(false); break;
}
//
- // Rule 126: declaration ::= declaration_specifiers ;
+ // Rule 126: jump_statement ::= return expression ;
//
- case 126: { action. consumeDeclarationSimple(false); break;
+ case 126: { action. consumeStatementReturn(true); break;
}
//
- // Rule 127: declaration ::= declaration_specifiers <openscope-ast> init_declarator_list ;
+ // Rule 127: declaration ::= declaration_specifiers ;
//
- case 127: { action. consumeDeclarationSimple(true); break;
+ case 127: { action. consumeDeclarationSimple(false); break;
}
//
- // Rule 128: declaration_specifiers ::= <openscope-ast> simple_declaration_specifiers
+ // Rule 128: declaration ::= declaration_specifiers <openscope-ast> init_declarator_list ;
//
- case 128: { action. consumeDeclarationSpecifiersSimple(); break;
+ case 128: { action. consumeDeclarationSimple(true); break;
}
//
- // Rule 129: declaration_specifiers ::= <openscope-ast> struct_or_union_declaration_specifiers
+ // Rule 129: declaration_specifiers ::= <openscope-ast> simple_declaration_specifiers
//
- case 129: { action. consumeDeclarationSpecifiersStructUnionEnum(); break;
+ case 129: { action. consumeDeclarationSpecifiersSimple(); break;
}
//
- // Rule 130: declaration_specifiers ::= <openscope-ast> elaborated_declaration_specifiers
+ // Rule 130: declaration_specifiers ::= <openscope-ast> struct_or_union_declaration_specifiers
//
case 130: { action. consumeDeclarationSpecifiersStructUnionEnum(); break;
}
//
- // Rule 131: declaration_specifiers ::= <openscope-ast> enum_declaration_specifiers
+ // Rule 131: declaration_specifiers ::= <openscope-ast> elaborated_declaration_specifiers
//
case 131: { action. consumeDeclarationSpecifiersStructUnionEnum(); break;
}
//
- // Rule 132: declaration_specifiers ::= <openscope-ast> typdef_name_declaration_specifiers
+ // Rule 132: declaration_specifiers ::= <openscope-ast> enum_declaration_specifiers
//
- case 132: { action. consumeDeclarationSpecifiersTypedefName(); break;
+ case 132: { action. consumeDeclarationSpecifiersStructUnionEnum(); break;
}
//
- // Rule 157: init_declarator ::= complete_declarator = initializer
+ // Rule 133: declaration_specifiers ::= <openscope-ast> typdef_name_declaration_specifiers
//
- case 157: { action. consumeDeclaratorWithInitializer(true); break;
+ case 133: { action. consumeDeclarationSpecifiersTypedefName(); break;
}
//
- // Rule 159: storage_class_specifier ::= storage_class_specifier_token
+ // Rule 158: init_declarator ::= complete_declarator = initializer
//
- case 159: { action. consumeToken(); break;
+ case 158: { action. consumeDeclaratorWithInitializer(true); break;
}
//
- // Rule 165: simple_type_specifier ::= simple_type_specifier_token
+ // Rule 160: storage_class_specifier ::= storage_class_specifier_token
//
- case 165: { action. consumeToken(); break;
+ case 160: { action. consumeToken(); break;
}
//
- // Rule 178: type_name_specifier ::= identifier_token
+ // Rule 166: simple_type_specifier ::= simple_type_specifier_token
//
- case 178: { action. consumeToken(); break;
+ case 166: { action. consumeToken(); break;
}
//
- // Rule 179: struct_or_union_specifier ::= struct_or_union struct_or_union_specifier_hook { <openscope-ast> struct_declaration_list_opt }
+ // Rule 179: type_name_specifier ::= identifier_token
//
- case 179: { action. consumeTypeSpecifierComposite(false); break;
+ case 179: { action. consumeToken(); break;
}
//
- // Rule 180: struct_or_union_specifier ::= struct_or_union struct_or_union_specifier_hook identifier_token struct_or_union_specifier_suffix_hook { <openscope-ast> struct_declaration_list_opt }
+ // Rule 180: struct_or_union_specifier ::= struct_or_union struct_or_union_specifier_hook { <openscope-ast> struct_declaration_list_opt }
//
- case 180: { action. consumeTypeSpecifierComposite(true); break;
+ case 180: { action. consumeTypeSpecifierComposite(false); break;
}
//
- // Rule 185: elaborated_specifier ::= struct elaborated_specifier_hook identifier_token
+ // Rule 181: struct_or_union_specifier ::= struct_or_union struct_or_union_specifier_hook identifier_token struct_or_union_specifier_suffix_hook { <openscope-ast> struct_declaration_list_opt }
//
- case 185: { action. consumeTypeSpecifierElaborated(IASTCompositeTypeSpecifier.k_struct); break;
+ case 181: { action. consumeTypeSpecifierComposite(true); break;
}
//
- // Rule 186: elaborated_specifier ::= union elaborated_specifier_hook identifier_token
+ // Rule 186: elaborated_specifier ::= struct elaborated_specifier_hook identifier_token
//
- case 186: { action. consumeTypeSpecifierElaborated(IASTCompositeTypeSpecifier.k_union); break;
+ case 186: { action. consumeTypeSpecifierElaborated(IASTCompositeTypeSpecifier.k_struct); break;
}
//
- // Rule 187: elaborated_specifier ::= enum elaborated_specifier_hook identifier_token
+ // Rule 187: elaborated_specifier ::= union elaborated_specifier_hook identifier_token
//
- case 187: { action. consumeTypeSpecifierElaborated(IASTElaboratedTypeSpecifier.k_enum); break;
+ case 187: { action. consumeTypeSpecifierElaborated(IASTCompositeTypeSpecifier.k_union); break;
}
//
- // Rule 193: struct_declaration ::= specifier_qualifier_list <openscope-ast> struct_declarator_list ;
+ // Rule 188: elaborated_specifier ::= enum elaborated_specifier_hook identifier_token
//
- case 193: { action. consumeStructDeclaration(true); break;
+ case 188: { action. consumeTypeSpecifierElaborated(IASTElaboratedTypeSpecifier.k_enum); break;
}
//
- // Rule 194: struct_declaration ::= specifier_qualifier_list ;
+ // Rule 194: struct_declaration ::= specifier_qualifier_list <openscope-ast> struct_declarator_list ;
//
- case 194: { action. consumeStructDeclaration(false); break;
+ case 194: { action. consumeStructDeclaration(true); break;
}
//
- // Rule 195: struct_declaration ::= ERROR_TOKEN
+ // Rule 195: struct_declaration ::= specifier_qualifier_list ;
//
- case 195: { action. consumeDeclarationProblem(); break;
+ case 195: { action. consumeStructDeclaration(false); break;
}
//
- // Rule 201: struct_declarator ::= : constant_expression
+ // Rule 196: struct_declaration ::= ERROR_TOKEN
//
- case 201: { action. consumeBitField(false); break;
+ case 196: { action. consumeDeclarationProblem(); break;
}
//
- // Rule 202: struct_declarator ::= declarator : constant_expression
+ // Rule 202: struct_declarator ::= : constant_expression
//
- case 202: { action. consumeBitField(true); break;
+ case 202: { action. consumeBitField(false); break;
}
//
- // Rule 203: enum_specifier ::= enum enum_specifier_hook { <openscope-ast> enumerator_list_opt comma_opt }
+ // Rule 203: struct_declarator ::= declarator : constant_expression
//
- case 203: { action. consumeTypeSpecifierEnumeration(false); break;
+ case 203: { action. consumeBitField(true); break;
}
//
- // Rule 204: enum_specifier ::= enum enum_specifier_hook identifier_token { <openscope-ast> enumerator_list_opt comma_opt }
+ // Rule 204: enum_specifier ::= enum enum_specifier_hook { <openscope-ast> enumerator_list_opt comma_opt }
//
- case 204: { action. consumeTypeSpecifierEnumeration(true); break;
+ case 204: { action. consumeTypeSpecifierEnumeration(false); break;
}
//
- // Rule 210: enumerator ::= identifier_token
+ // Rule 205: enum_specifier ::= enum enum_specifier_hook identifier_token { <openscope-ast> enumerator_list_opt comma_opt }
//
- case 210: { action. consumeEnumerator(false); break;
+ case 205: { action. consumeTypeSpecifierEnumeration(true); break;
}
//
- // Rule 211: enumerator ::= identifier_token = constant_expression
+ // Rule 211: enumerator ::= identifier_token
//
- case 211: { action. consumeEnumerator(true); break;
+ case 211: { action. consumeEnumerator(false); break;
}
//
- // Rule 212: type_qualifier ::= type_qualifier_token
+ // Rule 212: enumerator ::= identifier_token = constant_expression
//
- case 212: { action. consumeToken(); break;
+ case 212: { action. consumeEnumerator(true); break;
}
//
- // Rule 216: function_specifier ::= inline
+ // Rule 213: type_qualifier ::= type_qualifier_token
//
- case 216: { action. consumeToken(); break;
+ case 213: { action. consumeToken(); break;
}
//
- // Rule 218: declarator ::= <openscope-ast> pointer_seq direct_declarator
+ // Rule 217: function_specifier ::= inline
//
- case 218: { action. consumeDeclaratorWithPointer(true); break;
+ case 217: { action. consumeToken(); break;
}
//
- // Rule 223: basic_direct_declarator ::= declarator_id_name
+ // Rule 219: declarator ::= <openscope-ast> pointer_seq direct_declarator
//
- case 223: { action. consumeDirectDeclaratorIdentifier(); break;
+ case 219: { action. consumeDeclaratorWithPointer(true); break;
}
//
- // Rule 224: basic_direct_declarator ::= ( declarator )
+ // Rule 224: basic_direct_declarator ::= declarator_id_name
//
- case 224: { action. consumeDirectDeclaratorBracketed(); break;
+ case 224: { action. consumeDirectDeclaratorIdentifier(); break;
}
//
- // Rule 225: declarator_id_name ::= identifier
+ // Rule 225: basic_direct_declarator ::= ( declarator )
//
- case 225: { action. consumeIdentifierName(); break;
+ case 225: { action. consumeDirectDeclaratorBracketed(); break;
}
//
- // Rule 226: array_direct_declarator ::= basic_direct_declarator array_modifier
+ // Rule 226: declarator_id_name ::= identifier
//
- case 226: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
+ case 226: { action. consumeIdentifierName(); break;
}
//
- // Rule 227: array_direct_declarator ::= array_direct_declarator array_modifier
+ // Rule 227: array_direct_declarator ::= basic_direct_declarator array_modifier
//
case 227: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
}
//
- // Rule 229: function_direct_declarator ::= basic_direct_declarator ( <openscope-ast> parameter_type_list )
+ // Rule 228: array_direct_declarator ::= array_direct_declarator array_modifier
//
- case 229: { action. consumeDirectDeclaratorFunctionDeclarator(true, true); break;
+ case 228: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
}
//
- // Rule 230: function_direct_declarator ::= basic_direct_declarator ( )
+ // Rule 230: function_direct_declarator ::= basic_direct_declarator ( <openscope-ast> parameter_type_list )
//
- case 230: { action. consumeDirectDeclaratorFunctionDeclarator(true, false); break;
+ case 230: { action. consumeDirectDeclaratorFunctionDeclarator(true, true); break;
}
//
- // Rule 232: function_declarator ::= <openscope-ast> pointer_seq function_direct_declarator
+ // Rule 231: function_direct_declarator ::= basic_direct_declarator ( )
//
- case 232: { action. consumeDeclaratorWithPointer(true); break;
+ case 231: { action. consumeDirectDeclaratorFunctionDeclarator(true, false); break;
}
//
- // Rule 233: knr_direct_declarator ::= basic_direct_declarator ( <openscope-ast> identifier_list )
+ // Rule 233: function_declarator ::= <openscope-ast> pointer_seq function_direct_declarator
//
- case 233: { action. consumeDirectDeclaratorFunctionDeclaratorKnR(); break;
+ case 233: { action. consumeDeclaratorWithPointer(true); break;
}
//
- // Rule 235: knr_function_declarator ::= <openscope-ast> pointer_seq knr_direct_declarator
+ // Rule 234: knr_direct_declarator ::= basic_direct_declarator ( <openscope-ast> identifier_list )
//
- case 235: { action. consumeDeclaratorWithPointer(true); break;
+ case 234: { action. consumeDirectDeclaratorFunctionDeclaratorKnR(); break;
}
//
- // Rule 236: identifier_list ::= identifier
+ // Rule 236: knr_function_declarator ::= <openscope-ast> pointer_seq knr_direct_declarator
//
- case 236: { action. consumeIdentifierKnR(); break;
+ case 236: { action. consumeDeclaratorWithPointer(true); break;
}
//
- // Rule 237: identifier_list ::= identifier_list , identifier
+ // Rule 237: identifier_list ::= identifier
//
case 237: { action. consumeIdentifierKnR(); break;
}
//
- // Rule 238: array_modifier ::= [ ]
+ // Rule 238: identifier_list ::= identifier_list , identifier
//
- case 238: { action. consumeDirectDeclaratorArrayModifier(false); break;
+ case 238: { action. consumeIdentifierKnR(); break;
}
//
- // Rule 239: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers ]
+ // Rule 239: array_modifier ::= [ ]
//
- case 239: { action. consumeDirectDeclaratorModifiedArrayModifier(false, false, true, false); break;
+ case 239: { action. consumeDirectDeclaratorArrayModifier(false); break;
}
//
- // Rule 240: array_modifier ::= [ assignment_expression ]
+ // Rule 240: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers ]
//
- case 240: { action. consumeDirectDeclaratorArrayModifier(true); break;
+ case 240: { action. consumeDirectDeclaratorModifiedArrayModifier(false, false, true, false); break;
}
//
- // Rule 241: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers assignment_expression ]
+ // Rule 241: array_modifier ::= [ assignment_expression ]
//
- case 241: { action. consumeDirectDeclaratorModifiedArrayModifier(false, false, true, true); break;
+ case 241: { action. consumeDirectDeclaratorArrayModifier(true); break;
}
//
- // Rule 242: array_modifier ::= [ static assignment_expression ]
+ // Rule 242: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers assignment_expression ]
//
- case 242: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, false, true); break;
+ case 242: { action. consumeDirectDeclaratorModifiedArrayModifier(false, false, true, true); break;
}
//
- // Rule 243: array_modifier ::= [ static <openscope-ast> array_modifier_type_qualifiers assignment_expression ]
+ // Rule 243: array_modifier ::= [ static assignment_expression ]
//
- case 243: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, true, true); break;
+ case 243: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, false, true); break;
}
//
- // Rule 244: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers static assignment_expression ]
+ // Rule 244: array_modifier ::= [ static <openscope-ast> array_modifier_type_qualifiers assignment_expression ]
//
case 244: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, true, true); break;
}
//
- // Rule 245: array_modifier ::= [ * ]
+ // Rule 245: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers static assignment_expression ]
//
- case 245: { action. consumeDirectDeclaratorModifiedArrayModifier(false, true, false, false); break;
+ case 245: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, true, true); break;
}
//
- // Rule 246: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers * ]
+ // Rule 246: array_modifier ::= [ * ]
//
- case 246: { action. consumeDirectDeclaratorModifiedArrayModifier(false, true, true, false); break;
+ case 246: { action. consumeDirectDeclaratorModifiedArrayModifier(false, true, false, false); break;
}
//
- // Rule 248: pointer_seq ::= pointer_hook *
+ // Rule 247: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers * ]
//
- case 248: { action. consumePointer(); break;
+ case 247: { action. consumeDirectDeclaratorModifiedArrayModifier(false, true, true, false); break;
}
//
- // Rule 249: pointer_seq ::= pointer_seq pointer_hook *
+ // Rule 249: pointer_seq ::= pointer_hook * pointer_hook
//
case 249: { action. consumePointer(); break;
}
//
- // Rule 250: pointer_seq ::= pointer_hook * <openscope-ast> type_qualifier_list
+ // Rule 250: pointer_seq ::= pointer_seq pointer_hook * pointer_hook
//
- case 250: { action. consumePointerTypeQualifierList(); break;
+ case 250: { action. consumePointer(); break;
}
//
- // Rule 251: pointer_seq ::= pointer_seq pointer_hook * <openscope-ast> type_qualifier_list
+ // Rule 251: pointer_seq ::= pointer_hook * pointer_hook <openscope-ast> type_qualifier_list
//
case 251: { action. consumePointerTypeQualifierList(); break;
}
//
- // Rule 255: parameter_type_list ::= parameter_list
+ // Rule 252: pointer_seq ::= pointer_seq pointer_hook * pointer_hook <openscope-ast> type_qualifier_list
//
- case 255: { action. consumeEmpty(); break;
+ case 252: { action. consumePointerTypeQualifierList(); break;
}
//
- // Rule 256: parameter_type_list ::= parameter_list , ...
+ // Rule 256: parameter_type_list ::= parameter_list
//
- case 256: { action. consumePlaceHolder(); break;
+ case 256: { action. consumeEmpty(); break;
}
//
- // Rule 257: parameter_type_list ::= ...
+ // Rule 257: parameter_type_list ::= parameter_list , ...
//
case 257: { action. consumePlaceHolder(); break;
}
//
- // Rule 260: parameter_declaration ::= declaration_specifiers complete_parameter_declarator
+ // Rule 258: parameter_type_list ::= ...
//
- case 260: { action. consumeParameterDeclaration(); break;
+ case 258: { action. consumePlaceHolder(); break;
}
//
- // Rule 261: parameter_declaration ::= declaration_specifiers
+ // Rule 261: parameter_declaration ::= declaration_specifiers complete_parameter_declarator
//
- case 261: { action. consumeParameterDeclarationWithoutDeclarator(); break;
+ case 261: { action. consumeParameterDeclaration(); break;
}
//
- // Rule 264: type_id ::= specifier_qualifier_list
+ // Rule 262: parameter_declaration ::= declaration_specifiers
//
- case 264: { action. consumeTypeId(false); break;
+ case 262: { action. consumeParameterDeclarationWithoutDeclarator(); break;
}
//
- // Rule 265: type_id ::= specifier_qualifier_list abstract_declarator
+ // Rule 265: type_id ::= specifier_qualifier_list
//
- case 265: { action. consumeTypeId(true); break;
+ case 265: { action. consumeTypeId(false); break;
}
//
- // Rule 267: abstract_declarator ::= <openscope-ast> pointer_seq
+ // Rule 266: type_id ::= specifier_qualifier_list abstract_declarator
//
- case 267: { action. consumeDeclaratorWithPointer(false); break;
+ case 266: { action. consumeTypeId(true); break;
}
//
- // Rule 268: abstract_declarator ::= <openscope-ast> pointer_seq direct_abstract_declarator
+ // Rule 268: abstract_declarator ::= <openscope-ast> pointer_seq
//
case 268: { action. consumeDeclaratorWithPointer(false); break;
}
//
- // Rule 272: basic_direct_abstract_declarator ::= ( abstract_declarator )
+ // Rule 269: abstract_declarator ::= <openscope-ast> pointer_seq direct_abstract_declarator
//
- case 272: { action. consumeDirectDeclaratorBracketed(); break;
+ case 269: { action. consumeDeclaratorWithPointer(false); break;
}
//
- // Rule 273: array_direct_abstract_declarator ::= array_modifier
+ // Rule 273: basic_direct_abstract_declarator ::= ( abstract_declarator )
//
- case 273: { action. consumeDirectDeclaratorArrayDeclarator(false); break;
+ case 273: { action. consumeDirectDeclaratorBracketed(); break;
}
//
- // Rule 274: array_direct_abstract_declarator ::= array_direct_abstract_declarator array_modifier
+ // Rule 274: array_direct_abstract_declarator ::= array_modifier
//
- case 274: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
+ case 274: { action. consumeDirectDeclaratorArrayDeclarator(false); break;
}
//
- // Rule 275: array_direct_abstract_declarator ::= basic_direct_abstract_declarator array_modifier
+ // Rule 275: array_direct_abstract_declarator ::= array_direct_abstract_declarator array_modifier
//
case 275: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
}
//
- // Rule 276: function_direct_abstract_declarator ::= ( )
+ // Rule 276: array_direct_abstract_declarator ::= basic_direct_abstract_declarator array_modifier
//
- case 276: { action. consumeDirectDeclaratorFunctionDeclarator(false, false); break;
+ case 276: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
+ }
+
+ //
+ // Rule 277: function_direct_abstract_declarator ::= ( )
+ //
+ case 277: { action. consumeDirectDeclaratorFunctionDeclarator(false, false); break;
}
//
- // Rule 277: function_direct_abstract_declarator ::= basic_direct_abstract_declarator ( )
+ // Rule 278: function_direct_abstract_declarator ::= basic_direct_abstract_declarator ( )
//
- case 277: { action. consumeDirectDeclaratorFunctionDeclarator(true, false); break;
+ case 278: { action. consumeDirectDeclaratorFunctionDeclarator(true, false); break;
}
//
- // Rule 278: function_direct_abstract_declarator ::= ( <openscope-ast> parameter_type_list )
+ // Rule 279: function_direct_abstract_declarator ::= ( <openscope-ast> parameter_type_list )
//
- case 278: { action. consumeDirectDeclaratorFunctionDeclarator(false, true); break;
+ case 279: { action. consumeDirectDeclaratorFunctionDeclarator(false, true); break;
}
//
- // Rule 279: function_direct_abstract_declarator ::= basic_direct_abstract_declarator ( <openscope-ast> parameter_type_list )
+ // Rule 280: function_direct_abstract_declarator ::= basic_direct_abstract_declarator ( <openscope-ast> parameter_type_list )
//
- case 279: { action. consumeDirectDeclaratorFunctionDeclarator(true, true); break;
+ case 280: { action. consumeDirectDeclaratorFunctionDeclarator(true, true); break;
}
//
- // Rule 280: initializer ::= assignment_expression
+ // Rule 281: initializer ::= assignment_expression
//
- case 280: { action. consumeInitializer(); break;
+ case 281: { action. consumeInitializer(); break;
}
//
- // Rule 281: initializer ::= start_initializer_list { <openscope-ast> initializer_list comma_opt } end_initializer_list
+ // Rule 282: initializer ::= start_initializer_list { <openscope-ast> initializer_list comma_opt } end_initializer_list
//
- case 281: { action. consumeInitializerList(); break;
+ case 282: { action. consumeInitializerList(); break;
}
//
- // Rule 282: initializer ::= { <openscope-ast> }
+ // Rule 283: initializer ::= { <openscope-ast> }
//
- case 282: { action. consumeInitializerList(); break;
+ case 283: { action. consumeInitializerList(); break;
}
//
- // Rule 283: start_initializer_list ::= $Empty
+ // Rule 284: start_initializer_list ::= $Empty
//
- case 283: { action. initializerListStart(); break;
+ case 284: { action. initializerListStart(); break;
}
//
- // Rule 284: end_initializer_list ::= $Empty
+ // Rule 285: end_initializer_list ::= $Empty
//
- case 284: { action. initializerListEnd(); break;
+ case 285: { action. initializerListEnd(); break;
}
//
- // Rule 289: designated_initializer ::= <openscope-ast> designation = initializer
+ // Rule 290: designated_initializer ::= <openscope-ast> designation = initializer
//
- case 289: { action. consumeInitializerDesignated(); break;
+ case 290: { action. consumeInitializerDesignated(); break;
}
//
- // Rule 293: designator_base ::= [ constant_expression ]
+ // Rule 294: designator_base ::= [ constant_expression ]
//
- case 293: { action. consumeDesignatorArray(); break;
+ case 294: { action. consumeDesignatorArray(); break;
}
//
- // Rule 294: designator_base ::= . identifier_token
+ // Rule 295: designator_base ::= . identifier_token
//
- case 294: { action. consumeDesignatorField(); break;
+ case 295: { action. consumeDesignatorField(); break;
}
//
- // Rule 295: designator ::= [ constant_expression ]
+ // Rule 296: designator ::= [ constant_expression ]
//
- case 295: { action. consumeDesignatorArray(); break;
+ case 296: { action. consumeDesignatorArray(); break;
}
//
- // Rule 296: designator ::= . identifier_token
+ // Rule 297: designator ::= . identifier_token
//
- case 296: { action. consumeDesignatorField(); break;
+ case 297: { action. consumeDesignatorField(); break;
}
//
- // Rule 297: translation_unit ::= external_declaration_list
+ // Rule 298: translation_unit ::= external_declaration_list
//
- case 297: { action. consumeTranslationUnit(); break;
+ case 298: { action. consumeTranslationUnit(); break;
}
//
- // Rule 298: translation_unit ::= $Empty
+ // Rule 299: translation_unit ::= $Empty
//
- case 298: { action. consumeTranslationUnit(); break;
+ case 299: { action. consumeTranslationUnit(); break;
}
//
- // Rule 303: external_declaration ::= ;
+ // Rule 304: external_declaration ::= ;
//
- case 303: { action. consumeDeclarationEmpty(); break;
+ case 304: { action. consumeDeclarationEmpty(); break;
}
//
- // Rule 304: external_declaration ::= ERROR_TOKEN
+ // Rule 305: external_declaration ::= ERROR_TOKEN
//
- case 304: { action. consumeDeclarationProblem(); break;
+ case 305: { action. consumeDeclarationProblem(); break;
}
//
- // Rule 307: function_definition ::= declaration_specifiers <openscope-ast> function_declarator function_body
+ // Rule 308: function_definition ::= declaration_specifiers <openscope-ast> function_declarator function_body
//
- case 307: { action. consumeFunctionDefinition(true); break;
+ case 308: { action. consumeFunctionDefinition(true); break;
}
//
- // Rule 308: function_definition ::= <openscope-ast> function_declarator function_body
+ // Rule 309: function_definition ::= <openscope-ast> function_declarator function_body
//
- case 308: { action. consumeFunctionDefinition(false); break;
+ case 309: { action. consumeFunctionDefinition(false); break;
}
//
- // Rule 309: function_definition ::= declaration_specifiers <openscope-ast> knr_function_declarator <openscope-ast> declaration_list compound_statement
+ // Rule 310: function_definition ::= declaration_specifiers <openscope-ast> knr_function_declarator <openscope-ast> declaration_list compound_statement
//
- case 309: { action. consumeFunctionDefinitionKnR(); break;
+ case 310: { action. consumeFunctionDefinitionKnR(); break;
}
//
- // Rule 310: function_body ::= { }
+ // Rule 311: function_body ::= { }
//
- case 310: { action. consumeStatementCompoundStatement(false); break;
+ case 311: { action. consumeStatementCompoundStatement(false); break;
}
//
- // Rule 311: function_body ::= { <openscope-ast> block_item_list }
+ // Rule 312: function_body ::= { <openscope-ast> block_item_list }
//
- case 311: { action. consumeStatementCompoundStatement(true); break;
+ case 312: { action. consumeStatementCompoundStatement(true); break;
}
//
- // Rule 313: expression_parser_start ::= ERROR_TOKEN
+ // Rule 314: expression_parser_start ::= ERROR_TOKEN
//
- case 313: { action. consumeEmpty(); break;
+ case 314: { action. consumeEmpty(); break;
}
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99ExpressionParserprs.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99ExpressionParserprs.java
index 5619b866554..ec33f1d5a73 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99ExpressionParserprs.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99ExpressionParserprs.java
@@ -34,184 +34,185 @@ public class C99ExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, C9
public interface BaseCheck {
public final static short baseCheck[] = {0,
- 0,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,3,1,1,
- 4,4,3,3,2,2,8,1,0,1,
- 1,2,2,2,2,2,2,2,2,2,
- 4,1,4,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,3,3,3,3,3,3,
- 3,3,3,3,3,1,1,2,1,0,
- 1,3,1,1,1,1,1,1,1,1,
- 3,4,3,2,4,1,2,1,1,1,
- 2,5,7,5,1,0,7,5,9,8,
- 3,2,2,2,3,2,4,2,2,2,
- 2,2,1,1,1,1,2,1,2,2,
- 2,1,2,2,1,2,2,1,2,2,
- 1,2,2,1,3,1,3,1,1,1,
+ 0,0,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,3,1,
+ 1,4,4,3,3,2,2,8,1,0,
+ 1,1,2,2,2,2,2,2,2,2,
+ 2,4,1,4,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,3,3,3,3,3,
+ 3,3,3,3,3,3,1,1,2,1,
+ 0,1,3,1,1,1,1,1,1,1,
+ 1,3,4,3,2,4,1,2,1,1,
+ 1,2,5,7,5,1,0,7,5,9,
+ 8,3,2,2,2,3,2,4,2,2,
+ 2,2,2,1,1,1,1,2,1,2,
+ 2,2,1,2,2,1,2,2,1,2,
+ 2,1,2,2,1,3,1,3,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,6,8,
- 0,0,1,1,3,3,3,0,1,0,
- 1,2,4,2,1,1,1,3,1,1,
- 2,3,7,8,0,1,0,1,3,1,
- 3,1,1,1,1,1,1,3,1,1,
- 1,1,1,3,1,2,2,1,5,3,
- 1,3,5,1,3,1,3,2,4,3,
- 5,4,6,6,3,5,1,2,3,4,
- 5,0,1,2,1,3,1,1,3,2,
- 1,1,1,1,2,1,2,3,1,1,
- 1,3,1,2,2,2,3,4,5,1,
- 7,3,0,0,1,1,3,3,4,1,
- 1,2,3,2,3,2,1,0,1,2,
- 1,1,1,1,1,2,4,3,6,2,
- 4,1,1,-37,0,0,0,0,0,0,
- 0,0,0,0,-2,0,0,0,0,0,
- 0,0,0,0,-159,0,0,-117,0,-4,
+ 1,1,1,1,1,1,1,1,1,6,
+ 8,0,0,1,1,3,3,3,0,1,
+ 0,1,2,4,2,1,1,1,3,1,
+ 1,2,3,7,8,0,1,0,1,3,
+ 1,3,1,1,1,1,1,1,3,1,
+ 1,1,1,1,3,1,2,2,1,5,
+ 3,1,3,5,1,3,1,3,2,4,
+ 3,5,4,6,6,3,5,1,3,4,
+ 5,6,0,1,2,1,3,1,1,3,
+ 2,1,1,1,1,2,1,2,3,1,
+ 1,1,3,1,2,2,2,3,4,5,
+ 1,7,3,0,0,1,1,3,3,4,
+ 1,1,2,3,2,3,2,1,0,1,
+ 2,1,1,1,1,1,2,4,3,6,
+ 2,4,1,1,-37,0,0,0,0,0,
+ 0,0,0,0,0,-159,0,0,0,0,
+ 0,0,0,0,0,-2,0,0,-4,-76,
+ -71,-77,0,0,0,0,-55,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-117,
+ 0,-118,0,-140,-14,0,0,0,0,0,
+ -5,0,0,0,0,0,0,0,0,0,
0,0,0,0,-123,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-14,-76,
- -165,-79,-118,0,0,0,0,0,0,-5,
+ 0,0,0,0,0,-187,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,0,0,0,-38,0,0,0,0,0,
- 0,0,0,0,-119,0,0,-187,0,0,
+ 0,0,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,-160,0,
+ 0,0,0,0,-38,0,0,0,0,0,
+ 0,0,0,0,-196,0,0,-16,0,0,
+ 0,0,-30,0,0,-39,0,0,0,0,
+ 0,0,0,0,0,-31,0,0,-160,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,0,0,0,0,-74,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-39,0,0,
- 0,0,0,0,0,0,0,-120,0,0,
- -16,0,0,0,0,-177,-17,0,-6,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,0,0,0,-121,
- 0,-18,0,-183,0,0,0,0,0,0,
- 0,0,0,0,-201,0,0,0,0,0,
- 0,0,0,0,-3,0,0,0,0,0,
+ -17,-107,0,0,-12,0,0,0,0,0,
+ 0,0,0,0,-119,0,-18,0,-6,0,
+ 0,0,0,0,0,0,0,0,-183,0,
+ 0,0,0,0,0,0,0,0,0,-34,
+ 0,0,0,0,0,0,0,0,0,-3,
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,-71,0,-110,0,0,0,0,0,0,
+ -52,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-85,0,-110,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-128,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-82,
+ -19,-128,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-132,0,-144,
- 0,-55,0,0,0,0,0,0,0,0,
- 0,0,-107,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,-125,
+ 0,0,-132,0,-129,0,-53,0,0,0,
+ 0,0,0,0,0,0,0,-20,0,0,
+ 0,-165,0,-125,0,0,0,0,-35,-79,
+ 0,0,0,0,-49,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-162,0,-19,0,-185,0,0,0,
- 0,0,0,-7,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-57,0,0,
- 0,0,0,0,0,0,0,0,-34,0,
- 0,0,0,0,0,0,0,0,-58,0,
+ 0,0,0,0,0,-21,0,0,0,0,
+ 0,-120,0,0,0,0,0,0,-7,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-59,
+ 0,0,-27,0,0,0,0,0,0,0,
+ 0,0,0,-68,0,0,0,0,0,0,
+ 0,0,0,-57,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,
- -60,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-58,0,0,0,0,0,
+ 0,0,0,0,0,-69,0,0,0,0,
+ 0,0,0,0,0,-59,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-61,0,0,0,0,0,0,0,0,
- 0,0,-68,0,0,0,0,0,0,0,
- 0,0,-62,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-60,0,0,0,
+ 0,0,0,0,0,0,0,-70,0,0,
+ 0,0,0,0,0,0,0,-61,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-63,0,0,0,0,0,0,
- 0,0,0,0,-69,0,0,0,0,0,
- 0,0,0,0,-64,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-62,0,
+ 0,0,0,0,0,0,0,0,0,-114,
+ 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,-65,0,0,0,0,
- 0,0,0,0,0,0,-70,0,0,0,
- 0,0,0,0,0,0,-66,0,0,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,0,-114,0,
- 0,0,0,0,0,0,0,0,-145,0,
+ -64,0,0,0,0,0,0,0,0,0,
+ 0,-130,0,0,0,0,0,0,0,0,
+ 0,-65,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-146,
+ 0,0,-66,0,0,0,0,0,0,0,
+ 0,0,0,-154,0,0,0,0,0,0,
+ 0,0,0,-67,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -130,0,0,0,0,0,0,0,0,0,
- -163,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-122,0,0,0,0,0,
+ 0,0,0,0,0,-171,0,0,0,0,
+ 0,0,0,0,0,-145,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -186,0,0,0,0,0,0,0,0,0,
- 0,-20,0,0,0,0,0,0,0,0,
- -12,0,0,0,0,0,0,0,-8,0,
- 0,0,0,0,0,0,-194,0,0,0,
+ 0,0,0,0,0,0,-146,0,0,0,
+ 0,0,0,0,0,0,0,-22,0,0,
+ 0,0,0,0,0,0,0,-163,0,0,
+ 0,0,0,0,0,0,0,0,-80,0,
+ 0,0,0,0,0,0,0,-186,0,0,
+ 0,0,0,0,0,0,0,0,-83,0,
+ 0,0,0,0,0,0,0,-13,0,0,
+ 0,0,0,0,0,-8,0,0,0,0,
+ 0,0,0,-195,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-202,0,0,0,
- 0,0,0,0,0,0,0,-80,0,0,
- 0,0,0,0,0,0,-13,0,0,0,
- 0,0,0,0,-9,0,0,0,0,0,
- 0,0,-210,0,0,0,0,0,0,0,
+ 0,0,0,-204,0,0,0,0,0,0,
+ 0,0,0,0,-139,0,0,0,0,0,
+ 0,0,0,-135,0,-121,0,0,-162,0,
+ 0,-23,-164,-185,0,-73,-24,-174,-78,-212,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-122,0,0,0,0,0,0,0,
- 0,0,0,-131,0,0,0,0,0,0,
- 0,0,-30,0,0,-21,-82,-22,-176,0,
- -136,-113,0,0,0,0,0,0,0,0,
- -112,0,-77,-149,-126,-135,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-131,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-83,0,0,0,0,
- -23,0,-167,-32,-153,-87,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-25,-143,
+ 0,0,0,0,0,0,0,-152,-200,-149,
+ 0,-207,0,0,0,0,0,0,0,0,
+ 0,-177,0,0,0,0,0,0,-136,0,
+ 0,-33,0,0,0,0,-189,0,0,0,
+ -87,0,0,0,0,0,0,0,0,0,
+ -192,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-176,-203,0,0,0,
+ 0,0,0,0,-47,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,-53,0,
- 0,0,0,0,0,0,0,0,0,-174,
- 0,0,0,-116,0,-129,0,0,0,0,
- 0,0,-138,-25,0,0,0,0,0,0,
- 0,-158,0,0,0,0,-73,0,0,-191,
- 0,-26,-88,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-49,0,0,0,
+ 0,0,0,-180,0,-26,-88,0,0,-89,
+ -90,0,0,0,0,0,-50,0,0,0,
+ 0,0,0,0,0,0,0,-199,0,-51,
0,0,0,0,0,0,0,0,0,0,
- -141,-31,0,0,0,0,0,0,0,0,
- -89,0,-90,-91,-92,0,-193,0,-50,0,
+ -193,0,0,0,-211,-91,0,-92,-93,0,
+ 0,0,-94,-194,0,0,-43,0,0,0,
+ 0,0,0,0,0,0,0,-44,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-51,0,0,0,0,0,0,0,0,
- 0,0,-209,0,-143,0,0,-93,0,-111,
- -127,0,0,0,-154,0,-200,-206,-150,-147,
- 0,-43,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-198,-158,0,-95,
+ -96,0,0,-45,0,0,0,0,0,0,
+ 0,0,0,0,-46,0,0,0,0,0,
+ 0,0,0,0,0,-48,0,0,0,0,
+ 0,0,0,0,0,-206,0,0,-138,-111,
+ -116,-75,-127,-201,-147,-97,0,0,-98,0,
+ -150,0,0,-113,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-94,-95,-96,0,0,
- 0,-44,0,0,0,0,0,0,0,0,
- 0,0,-45,0,0,0,0,0,0,0,
- 0,0,0,-46,0,0,0,0,0,0,
- 0,0,0,0,0,0,-47,0,0,0,
- 0,0,0,0,0,0,-48,0,0,0,
- 0,0,0,0,0,0,-204,-75,-78,-10,
- 0,0,0,0,0,0,0,0,0,-11,
- 0,0,0,0,0,0,0,-152,0,-151,
- 0,0,-97,0,-168,0,0,0,0,-169,
- 0,0,0,0,0,0,0,-211,-36,-164,
+ 0,0,0,0,0,0,0,0,-151,-213,
+ -81,0,0,0,0,0,0,0,-148,0,
+ 0,0,0,0,0,0,-141,-99,-100,0,
+ -101,-102,0,0,0,-103,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-98,0,0,-157,0,-148,0,0,0,
- 0,0,0,0,0,0,0,-85,0,-179,
- 0,0,0,0,0,0,0,0,-139,-99,
- 0,0,0,0,0,-40,0,0,0,0,
- 0,0,0,-100,-101,-102,0,-41,0,0,
- 0,0,0,0,0,-42,0,0,0,0,
- 0,0,0,-72,0,0,0,0,0,0,
- 0,-115,-188,-15,-172,-28,-195,0,-1,0,
- -166,-175,0,0,0,0,0,0,0,0,
- -207,0,0,-212,0,0,0,-103,0,0,
- 0,-33,0,0,0,0,0,-29,0,0,
- -180,0,0,-170,0,0,0,0,0,0,
- 0,0,0,0,0,-173,0,-104,0,0,
- -81,0,0,0,0,0,0,0,-192,-197,
- 0,-84,0,-205,0,-171,0,-105,0,0,
- -86,-156,0,0,-198,-108,-106,0,0,0,
+ -9,0,0,0,0,0,0,0,-10,0,
+ 0,0,0,0,0,0,-11,0,0,0,
+ 0,0,0,0,-36,-40,0,0,0,0,
+ 0,0,0,-144,-157,0,-41,0,0,0,
+ 0,0,0,0,0,0,-104,-169,-105,-106,
+ 0,-42,0,0,0,0,0,0,0,-72,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,-115,-15,-173,-172,-28,-166,-29,-167,
+ -32,-170,0,0,0,0,0,0,0,0,
+ 0,0,-184,-175,-202,0,-208,0,0,0,
+ 0,0,0,0,0,0,0,-214,-109,0,
+ -124,0,-84,0,0,0,0,0,0,0,
+ 0,0,0,-86,0,0,0,0,0,0,
+ 0,-108,0,0,0,0,0,-156,0,-190,
+ 0,0,0,0,-191,0,0,-133,0,-1,
+ 0,0,0,0,0,0,-178,0,0,-134,
+ 0,-197,0,-137,0,-112,-142,0,0,0,
+ 0,-179,0,-155,0,0,0,0,-126,0,
+ -209,0,0,-161,0,0,0,0,0,0,
+ 0,-181,-182,-205,0,-153,0,-54,0,-210,
+ 0,0,0,0,0,-168,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-188,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-184,-189,-190,-178,0,-196,0,0,
- 0,-134,0,0,0,0,0,-109,0,0,
- 0,0,0,-54,-199,-124,0,-133,0,0,
- 0,0,-137,-142,0,-155,0,-161,0,-181,
- -182,-203,-208,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,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;
@@ -221,185 +222,186 @@ public class C99ExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, C9
public interface BaseAction {
public final static char baseAction[] = {
- 87,11,24,24,21,21,32,32,70,70,
- 1,1,2,2,2,2,3,3,3,4,
- 5,5,5,5,5,5,5,5,51,51,
- 71,6,6,6,6,6,6,6,6,6,
- 6,6,7,7,8,8,8,8,9,9,
- 9,10,10,10,12,12,12,12,12,13,
- 13,13,14,14,15,15,16,16,17,17,
- 18,18,19,19,20,20,20,20,20,20,
- 20,20,20,20,20,20,101,41,33,88,
- 88,73,73,47,102,102,102,102,102,102,
- 102,103,103,103,104,104,109,109,110,110,
- 105,105,106,106,106,112,112,107,107,107,
- 107,108,108,108,108,108,111,111,25,25,
- 25,25,25,27,27,27,79,79,74,74,
- 74,74,75,75,75,76,76,76,77,77,
- 77,78,78,78,113,113,114,114,115,28,
- 30,30,30,30,30,52,54,54,54,54,
- 54,54,54,54,54,54,54,54,64,61,
- 61,89,90,65,65,62,62,62,66,80,
- 80,81,81,67,67,67,42,91,91,82,
- 83,83,83,63,63,92,84,84,85,85,
- 68,68,22,23,23,23,29,48,48,34,
- 34,34,34,37,37,39,35,35,36,40,
- 40,116,116,38,117,117,93,93,26,26,
- 26,26,26,26,26,26,26,86,49,49,
- 49,49,31,56,56,55,55,55,57,57,
- 50,50,94,94,60,60,58,58,58,43,
- 43,43,44,45,45,45,46,46,46,46,
- 53,53,53,59,95,72,72,72,72,69,
- 96,97,97,98,98,99,99,118,118,119,
- 119,120,120,120,120,122,122,121,121,121,
- 123,123,87,87,1,1273,16,20,17,369,
- 1272,44,497,491,695,44,532,1146,1022,1191,
- 1148,1254,1211,74,91,738,134,212,65,1166,
- 172,136,133,135,159,432,19,16,20,17,
- 369,1272,44,497,491,695,397,532,1146,1022,
- 1191,1148,1254,1211,74,280,138,27,165,663,
- 365,738,634,161,186,142,145,148,151,1078,
- 524,19,16,20,17,369,40,340,1449,372,
- 1631,1642,1651,1196,134,212,274,694,285,144,
- 133,135,159,282,1714,501,19,16,20,17,
- 369,42,44,1311,286,161,185,1529,478,19,
- 16,20,17,369,1272,44,497,491,695,397,
- 532,1146,1022,1191,1148,1254,1211,74,280,326,
- 19,16,20,17,369,1272,44,497,491,695,
- 397,532,1146,1022,1191,1148,1254,1211,74,280,
- 501,19,16,20,17,369,42,44,497,491,
- 695,285,532,1146,1022,1191,1628,1714,501,19,
- 16,20,17,369,42,44,1313,286,352,1713,
- 1640,21,287,1718,1490,291,739,154,1714,501,
- 19,16,20,17,369,42,39,1270,288,275,
- 19,16,20,17,369,1272,44,497,491,695,
- 1161,532,1146,1022,1191,1148,1254,1211,74,1350,
- 161,187,6,238,455,19,16,20,17,369,
- 1272,44,497,491,695,723,532,1146,1022,1191,
- 1148,1254,1211,74,280,501,19,16,20,17,
- 369,1272,44,497,491,695,194,532,1146,1022,
- 1191,1148,1254,1211,74,91,501,19,16,20,
- 17,369,42,44,497,491,695,289,532,1146,
- 1022,1544,282,1714,570,19,16,20,17,369,
- 1272,44,497,491,695,1165,532,1146,1022,1191,
- 1148,1254,1211,74,1351,193,21,299,19,16,
- 20,17,369,1272,44,497,491,695,340,532,
- 1146,1022,1191,1148,1254,1211,74,1360,189,178,
- 52,239,501,19,16,20,17,369,42,44,
- 497,491,695,13,532,1146,1022,1191,1148,1598,
- 134,212,253,212,345,136,133,135,159,501,
- 19,16,20,17,369,1272,44,497,491,695,
- 596,532,1146,1022,1191,1148,1254,1211,74,92,
- 138,640,165,161,294,69,1475,161,296,142,
- 145,148,151,1078,501,19,16,20,17,369,
- 42,38,1449,372,1631,1642,1651,1196,501,19,
- 16,20,17,369,1272,44,497,491,695,727,
- 532,1146,1022,1191,1148,1254,1211,74,85,501,
- 19,16,20,17,369,1272,44,497,491,695,
- 1564,532,1146,1022,1191,1148,1254,1211,74,84,
- 501,19,16,20,17,369,1272,44,497,491,
- 695,727,532,1146,1022,1191,1148,1254,1211,74,
- 83,501,19,16,20,17,369,1272,44,497,
- 491,695,18,532,1146,1022,1191,1148,1254,1211,
- 74,82,501,19,16,20,17,369,1272,44,
- 497,491,695,727,532,1146,1022,1191,1148,1254,
- 1211,74,81,501,19,16,20,17,369,1272,
- 44,497,491,695,1648,532,1146,1022,1191,1148,
- 1254,1211,74,80,501,19,16,20,17,369,
- 1272,44,497,491,695,727,532,1146,1022,1191,
- 1148,1254,1211,74,79,501,19,16,20,17,
- 369,1272,44,497,491,695,1657,532,1146,1022,
- 1191,1148,1254,1211,74,78,501,19,16,20,
- 17,369,1272,44,497,491,695,727,532,1146,
- 1022,1191,1148,1254,1211,74,77,501,19,16,
- 20,17,369,1272,44,497,491,695,22,532,
- 1146,1022,1191,1148,1254,1211,74,76,501,19,
- 16,20,17,369,1272,44,497,491,695,727,
- 532,1146,1022,1191,1148,1254,1211,74,75,501,
- 19,16,20,17,369,1272,44,497,491,695,
- 272,532,1146,1022,1191,1148,1254,1211,74,1480,
- 501,19,16,20,17,369,1272,44,497,491,
- 695,727,532,1146,1022,1191,1148,1254,1211,74,
- 1614,501,19,16,20,17,369,42,44,497,
- 491,695,278,532,1146,1022,1191,1148,1254,1211,
- 93,501,19,16,20,17,369,42,44,497,
- 491,695,67,532,1146,1022,1191,1148,1254,1211,
- 93,547,19,16,20,17,369,33,1683,501,
- 19,16,20,17,369,42,37,501,19,16,
- 20,17,369,42,44,497,491,695,1688,532,
- 1146,1022,1191,1148,1254,1211,93,501,19,16,
- 20,17,369,42,44,497,491,695,125,532,
- 1146,1022,1191,1148,1254,1211,93,547,19,16,
- 20,17,369,32,211,501,19,16,20,17,
- 369,42,36,501,19,16,20,17,369,42,
- 44,497,491,695,201,532,1146,1022,1191,1148,
- 1254,1211,93,501,19,16,20,17,369,42,
- 44,497,491,695,151,532,1146,1022,1191,1148,
- 1254,1211,73,161,30,1468,144,250,219,738,
- 202,13,357,19,16,20,17,369,42,35,
- 273,52,1652,673,711,52,157,338,217,1359,
- 220,1470,222,223,228,1575,245,266,1163,370,
- 271,179,262,253,212,276,413,253,212,275,
- 273,191,263,52,605,710,189,178,217,1359,
- 220,1470,222,223,228,555,638,266,1163,370,
- 271,319,1646,373,24,253,212,1246,134,212,
- 1134,1246,939,137,133,135,159,89,260,501,
- 19,16,20,17,369,42,44,497,491,695,
- 198,532,1146,1545,735,259,638,617,139,1573,
- 165,949,415,13,281,1692,1716,143,146,149,
- 152,1078,552,1720,1262,277,273,70,254,212,
- 247,1706,554,593,218,1359,220,1470,222,223,
- 228,1644,897,268,1163,370,271,501,19,16,
- 20,17,369,42,44,497,491,695,1698,532,
- 1473,13,161,30,217,1359,220,1470,222,223,
- 228,156,371,350,415,460,1656,738,1722,501,
- 19,16,20,17,369,42,44,497,491,695,
- 208,1502,501,19,16,20,17,369,42,44,
- 497,491,695,247,1530,647,1611,1721,483,203,
- 282,282,197,199,1644,727,1193,738,738,682,
- 282,545,501,19,16,20,17,369,42,44,
- 497,491,1314,23,240,242,279,217,1359,220,
- 1470,222,223,228,241,227,686,194,324,180,
- 204,1722,501,19,16,20,17,369,42,44,
- 497,491,1315,501,19,16,20,17,369,42,
- 44,497,491,1348,501,19,16,20,17,369,
- 42,44,497,491,1386,198,199,501,19,16,
- 20,17,369,42,44,497,1387,501,19,16,
- 20,17,369,42,44,497,1388,484,717,232,
- 501,19,16,20,17,369,42,35,1644,1572,
- 501,19,16,20,17,369,42,34,70,276,
- 701,134,212,575,273,684,141,133,135,159,
- 282,217,1359,220,1470,222,223,228,748,241,
- 736,266,1163,370,271,1646,226,254,212,1698,
- 1267,140,50,165,243,13,939,357,19,16,
- 20,17,369,42,35,273,1520,1240,437,1706,
- 552,1720,218,1359,220,1470,222,223,228,742,
- 57,246,266,1163,370,271,501,19,16,20,
- 17,369,42,47,323,428,104,265,501,19,
- 16,20,17,369,42,46,501,19,16,20,
- 17,369,42,45,408,19,16,20,17,369,
- 42,43,307,718,13,307,13,161,1720,380,
- 335,13,13,638,530,314,638,314,208,292,
- 555,738,418,1685,211,254,212,1134,513,196,
- 1134,196,13,1698,1639,1721,1698,87,13,87,
- 488,745,87,555,282,771,1489,771,1489,314,
- 312,1656,258,1594,1240,258,735,981,656,1708,
- 981,643,1708,196,729,87,813,1684,244,745,
- 742,87,672,592,70,209,727,230,97,771,
- 1489,681,48,134,212,727,242,351,147,133,
- 135,159,1317,638,134,212,325,224,855,150,
- 133,135,159,134,212,1698,229,196,153,133,
- 135,159,273,282,110,142,95,1706,282,281,
- 1358,1591,615,1488,496,638,638,638,532,268,
- 1163,370,271,638,13,577,590,293,377,1134,
- 196,196,295,509,751,555,754,1134,392,191,
- 755,761,236,767,1789,1789,233,496,496,1789,
- 1789,1789,1149,1686,258,1789,1789,87,1789,1655,
- 1789,1708,258,1789,1789,1546,1789,1355,1789,1708,
- 1789,1789,191,192,1789,1789,1789,1789,1789,1789,
- 1789,1789,1789,1789,1789,1357,1686,1789,1789,1789,
- 1789,1789,1789,1789,1789,1789,1789,1705,1789,0,
- 19,178,0,1,2014,0,1,2025,0
+ 87,11,101,24,24,21,21,32,32,70,
+ 70,1,1,2,2,2,2,3,3,3,
+ 4,5,5,5,5,5,5,5,5,51,
+ 51,71,6,6,6,6,6,6,6,6,
+ 6,6,6,7,7,8,8,8,8,9,
+ 9,9,10,10,10,12,12,12,12,12,
+ 13,13,13,14,14,15,15,16,16,17,
+ 17,18,18,19,19,20,20,20,20,20,
+ 20,20,20,20,20,20,20,102,41,33,
+ 88,88,73,73,47,103,103,103,103,103,
+ 103,103,104,104,104,105,105,110,110,111,
+ 111,106,106,107,107,107,113,113,108,108,
+ 108,108,109,109,109,109,109,112,112,25,
+ 25,25,25,25,28,28,28,79,79,74,
+ 74,74,74,75,75,75,76,76,76,77,
+ 77,77,78,78,78,114,114,115,115,116,
+ 29,31,31,31,31,31,52,54,54,54,
+ 54,54,54,54,54,54,54,54,54,64,
+ 61,61,89,90,65,65,62,62,62,66,
+ 80,80,81,81,67,67,67,42,91,91,
+ 82,83,83,83,63,63,92,84,84,85,
+ 85,68,68,22,23,23,23,30,48,48,
+ 34,34,34,34,37,37,39,35,35,36,
+ 40,40,117,117,38,118,118,93,93,26,
+ 26,26,26,26,26,26,26,26,86,49,
+ 49,49,49,27,56,56,55,55,55,57,
+ 57,50,50,94,94,60,60,58,58,58,
+ 43,43,43,44,45,45,45,46,46,46,
+ 46,53,53,53,59,95,72,72,72,72,
+ 69,96,97,97,98,98,99,99,119,119,
+ 120,120,121,121,121,121,123,123,122,122,
+ 122,124,124,87,87,1,1307,17,21,18,
+ 375,1306,45,531,468,641,738,547,716,678,
+ 1162,1048,1209,1167,75,92,44,135,213,172,
+ 365,282,673,137,134,136,160,501,20,17,
+ 21,18,375,43,45,531,468,641,28,547,
+ 716,678,1162,1048,1496,22,275,139,276,166,
+ 65,1154,161,187,694,663,143,146,149,152,
+ 1069,524,20,17,21,18,375,41,339,1169,
+ 690,1471,1623,1634,1251,432,20,17,21,18,
+ 375,1306,45,531,468,641,374,547,716,678,
+ 1162,1048,1209,1167,75,281,478,20,17,21,
+ 18,375,1306,45,531,468,641,374,547,716,
+ 678,1162,1048,1209,1167,75,281,501,20,17,
+ 21,18,375,43,45,531,468,641,286,547,
+ 716,678,1162,1557,1677,501,20,17,21,18,
+ 375,43,45,1310,287,161,1702,1145,21,286,
+ 1694,1163,292,161,31,1677,501,20,17,21,
+ 18,375,43,45,1311,287,161,31,1387,326,
+ 20,17,21,18,375,1306,45,531,468,641,
+ 374,547,716,678,1162,1048,1209,1167,75,281,
+ 275,20,17,21,18,375,1306,45,531,468,
+ 641,1676,547,716,678,1162,1048,1209,1167,75,
+ 1430,154,13,210,239,547,20,17,21,18,
+ 375,34,288,395,25,161,186,6,1677,501,
+ 20,17,21,18,375,43,40,24,289,455,
+ 20,17,21,18,375,1306,45,531,468,641,
+ 727,547,716,678,1162,1048,1209,1167,75,281,
+ 501,20,17,21,18,375,1306,45,531,468,
+ 641,1570,547,716,678,1162,1048,1209,1167,75,
+ 92,501,20,17,21,18,375,43,45,531,
+ 468,641,290,547,716,678,1489,437,1677,570,
+ 20,17,21,18,375,1306,45,531,468,641,
+ 1689,547,716,678,1162,1048,1209,1167,75,1433,
+ 250,69,299,20,17,21,18,375,1306,45,
+ 531,468,641,339,547,716,678,1162,1048,1209,
+ 1167,75,1435,189,179,596,240,501,20,17,
+ 21,18,375,43,45,531,468,641,67,547,
+ 716,1491,738,1156,70,135,213,255,213,727,
+ 634,137,134,136,160,501,20,17,21,18,
+ 375,43,45,531,468,641,372,547,1436,722,
+ 19,1544,135,213,283,139,144,166,145,134,
+ 136,160,352,1674,143,146,149,152,1069,501,
+ 20,17,21,18,375,43,39,1169,690,1471,
+ 1623,1634,1251,501,20,17,21,18,375,1306,
+ 45,531,468,641,727,547,716,678,1162,1048,
+ 1209,1167,75,93,501,20,17,21,18,375,
+ 1306,45,531,468,641,1559,547,716,678,1162,
+ 1048,1209,1167,75,86,501,20,17,21,18,
+ 375,1306,45,531,468,641,727,547,716,678,
+ 1162,1048,1209,1167,75,85,501,20,17,21,
+ 18,375,1306,45,531,468,641,1560,547,716,
+ 678,1162,1048,1209,1167,75,84,501,20,17,
+ 21,18,375,1306,45,531,468,641,727,547,
+ 716,678,1162,1048,1209,1167,75,83,501,20,
+ 17,21,18,375,1306,45,531,468,641,23,
+ 547,716,678,1162,1048,1209,1167,75,82,501,
+ 20,17,21,18,375,1306,45,531,468,641,
+ 727,547,716,678,1162,1048,1209,1167,75,81,
+ 501,20,17,21,18,375,1306,45,531,468,
+ 641,273,547,716,678,1162,1048,1209,1167,75,
+ 80,501,20,17,21,18,375,1306,45,531,
+ 468,641,727,547,716,678,1162,1048,1209,1167,
+ 75,79,501,20,17,21,18,375,1306,45,
+ 531,468,641,279,547,716,678,1162,1048,1209,
+ 1167,75,78,501,20,17,21,18,375,1306,
+ 45,531,468,641,727,547,716,678,1162,1048,
+ 1209,1167,75,77,501,20,17,21,18,375,
+ 1306,45,531,468,641,280,547,716,678,1162,
+ 1048,1209,1167,75,76,501,20,17,21,18,
+ 375,1306,45,531,468,641,727,547,716,678,
+ 1162,1048,1209,1167,75,74,501,20,17,21,
+ 18,375,1306,45,531,468,641,225,547,716,
+ 678,1162,1048,1209,1167,75,1558,501,20,17,
+ 21,18,375,1306,45,531,468,641,219,547,
+ 716,678,1162,1048,1209,1167,75,1592,501,20,
+ 17,21,18,375,43,45,531,468,641,125,
+ 547,716,678,1162,1048,1209,1167,94,501,20,
+ 17,21,18,375,43,45,531,468,641,413,
+ 547,716,678,1162,1048,1209,1167,94,547,20,
+ 17,21,18,375,33,1603,501,20,17,21,
+ 18,375,43,38,501,20,17,21,18,375,
+ 43,45,531,468,641,1672,547,716,678,1162,
+ 1048,1209,1167,94,501,20,17,21,18,375,
+ 43,45,531,468,641,742,547,716,678,1162,
+ 1048,1209,1167,94,157,545,161,188,370,161,
+ 295,212,191,736,161,297,70,319,198,232,
+ 501,20,17,21,18,375,43,45,531,468,
+ 641,202,547,716,678,1162,1048,1209,1167,94,
+ 151,135,213,1619,274,1621,326,142,134,136,
+ 160,1218,219,1441,221,1469,223,224,229,281,
+ 70,269,342,340,272,1642,274,203,70,727,
+ 711,141,70,166,218,1441,221,1469,223,224,
+ 229,1586,739,267,342,340,272,1590,263,13,
+ 230,277,13,1261,1684,1619,274,684,264,1619,
+ 1648,189,179,580,218,1441,221,1469,223,224,
+ 229,247,293,267,342,340,272,1168,1006,255,
+ 213,1470,1222,135,213,88,738,723,880,138,
+ 134,136,160,341,261,501,20,17,21,18,
+ 375,43,45,531,1390,218,1441,221,1469,223,
+ 224,229,195,140,745,166,554,593,180,1704,
+ 156,350,144,147,150,153,1069,501,20,17,
+ 21,18,375,43,45,531,468,641,718,1439,
+ 501,20,17,21,18,375,43,45,531,468,
+ 641,745,1488,198,200,247,415,194,460,483,
+ 255,213,1277,686,738,1354,1222,501,20,17,
+ 21,18,375,43,45,531,468,1346,501,20,
+ 17,21,18,375,43,45,531,468,1348,218,
+ 1441,221,1469,223,224,229,204,742,552,1702,
+ 194,324,1607,1704,501,20,17,21,18,375,
+ 43,45,531,468,1349,501,20,17,21,18,
+ 375,43,45,531,468,1353,501,20,17,21,
+ 18,375,43,45,531,1391,484,199,200,13,
+ 282,735,717,282,577,282,575,1222,1691,50,
+ 1388,682,1670,1583,357,20,17,21,18,375,
+ 43,36,278,277,241,234,209,243,274,242,
+ 218,1441,221,1469,223,224,229,228,246,701,
+ 748,643,1304,1703,1006,267,342,340,272,357,
+ 20,17,21,18,375,43,36,13,57,323,
+ 880,428,104,135,213,227,513,1621,682,148,
+ 134,136,160,247,219,1441,221,1469,223,224,
+ 229,501,20,17,21,18,375,43,37,501,
+ 20,17,21,18,375,43,36,501,20,17,
+ 21,18,375,43,35,241,501,20,17,21,
+ 18,375,43,48,638,13,1166,501,20,17,
+ 21,18,375,43,47,1716,1682,656,282,97,
+ 351,274,501,20,17,21,18,375,43,46,
+ 408,20,17,21,18,375,43,44,267,342,
+ 340,272,244,307,13,735,307,13,13,13,
+ 647,605,282,266,663,315,1650,663,315,416,
+ 315,1730,580,282,13,738,231,738,1190,197,
+ 1619,1190,197,1619,197,1655,245,88,211,532,
+ 88,590,88,672,90,689,1535,294,689,1535,
+ 689,1535,1642,259,681,1168,259,181,922,205,
+ 1658,922,242,1658,570,135,213,754,48,796,
+ 110,151,134,136,160,142,135,213,377,663,
+ 380,663,154,134,136,160,663,95,274,1621,
+ 615,580,282,197,509,1190,52,751,663,838,
+ 197,663,552,1702,754,269,342,340,272,52,
+ 1232,738,197,88,392,1190,296,1232,254,213,
+ 259,313,755,761,236,1219,710,1658,13,1232,
+ 767,254,213,282,1798,192,52,663,1798,580,
+ 259,1798,192,1618,1798,964,1798,1658,1276,1667,
+ 52,1190,665,1798,193,1605,1667,1798,254,213,
+ 1798,88,1798,1434,1798,665,1798,336,1798,1492,
+ 209,1798,254,213,1798,1798,260,1798,1798,1798,
+ 1798,1798,642,1798,1798,1798,1341,1703,1798,1798,
+ 1798,1798,1247,1798,1798,1016,1798,1798,1798,1798,
+ 1798,1798,1798,1798,1798,1798,1328,1798,0,20,
+ 179,0,1,2024,0,1,2035,0
};
};
public final static char baseAction[] = BaseAction.baseAction;
@@ -503,88 +505,88 @@ public class C99ExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, C9
public interface TermAction {
public final static char termAction[] = {0,
- 1789,1799,1574,1800,1450,59,2002,2003,2004,1095,
- 1039,1460,1,1087,1031,380,1801,1802,1803,1804,
- 51,704,499,1951,1952,1950,2005,1953,1949,478,
- 405,1956,1961,1960,1958,1959,1957,1962,1963,1955,
- 1964,1965,1966,1789,1518,1186,1147,1789,1,61,
- 1,1789,190,1,1,1,60,2002,2003,2004,
- 1414,1403,1392,1362,1789,1799,64,1800,54,252,
- 1,1,1,1,1,1,1151,1287,1,1,
+ 1798,1809,1584,1810,1519,60,2012,2013,2014,1511,
+ 1106,1527,1,1098,535,381,1811,1812,1813,1814,
+ 52,729,549,1961,1962,1960,2015,1963,1959,476,
+ 455,1966,1971,1970,1968,1969,1967,1972,1973,1965,
+ 1974,1975,1976,1798,617,1089,640,1798,1,62,
+ 1,1798,191,1,1,1,61,2012,2013,2014,
+ 1405,1394,1368,1357,1798,1809,65,1810,55,253,
+ 1,1,1,1,1,1,1239,695,1,1,
1,1,1,1,1,1,1,1,1,1,
- 190,1,1,1,1789,1,41,1,1984,189,
- 1,1,1,1789,1414,1403,1392,1362,653,1,
- 1786,1414,1403,1392,1362,1427,1437,1,1,1,
- 1,1,1,1779,181,1,1,1,1,1,
- 1,1,1,1,1,1,1,189,1,1,
- 1,1789,1,62,1,1984,190,1,1,1,
- 261,2014,1164,48,1,50,182,1556,2046,1556,
- 1789,1799,1123,1800,1,1,1,1,1,1,
- 509,88,1,1,1,1,1,1,1,1,
- 1,1,1,1,190,1,1,1,1789,1799,
- 66,1800,1984,53,2002,2003,2004,267,2014,1164,
- 669,252,478,405,1332,1319,1548,1536,1548,1536,
- 284,1951,1952,1950,2005,1953,1949,509,68,1956,
- 1961,1960,1958,1959,1957,1962,1963,1955,1964,1965,
- 1966,128,1518,1186,1147,200,1789,2002,2003,2004,
- 264,267,1448,1448,1,252,1,2014,1447,184,
- 2862,1789,2862,1229,1951,1952,1950,2005,1953,1949,
- 509,509,1956,1961,1960,1958,1959,1957,1962,1963,
- 1955,1964,1965,1966,1,1799,1574,1800,1152,1792,
- 70,1789,576,1095,1039,1460,1792,1087,1031,380,
- 1801,1802,1803,1804,1103,704,499,594,1789,1799,
- 1574,1800,1507,1792,1789,1067,1,1095,1039,1460,
- 252,1087,1031,380,1801,1802,1803,1804,72,704,
- 499,970,67,52,1791,1,1799,1574,1800,1450,
- 28,1791,478,405,1095,1039,1460,2855,1087,1031,
- 380,1801,1802,1803,1804,460,704,499,1791,49,
- 1789,1789,1799,1556,1800,2046,1789,1799,1574,1800,
- 1450,1792,653,1253,270,1095,1039,1460,28,1087,
- 1031,380,1801,1802,1803,1804,255,704,499,1789,
- 1,1,1,1,509,1229,642,1704,1,1,
- 1,1789,1,1,1,1,1,1,1,1789,
- 1,1,1548,1536,1789,1195,1791,1789,1799,1574,
- 1800,1450,183,2866,58,2866,1095,1039,1460,653,
- 1087,1031,380,1801,1802,1803,1804,65,704,499,
- 2102,1,1799,1574,1800,1450,205,2872,1287,2872,
- 1095,1039,1460,2855,1087,1031,380,1801,1802,1803,
- 1804,534,704,499,1789,1799,1574,1800,1450,57,
- 1789,1427,1437,1095,1039,1460,2855,1087,1031,380,
- 1801,1802,1803,1804,1789,704,499,1,1799,1574,
- 1800,1450,56,1,2014,1447,1095,1039,1460,2855,
- 1087,1031,380,1801,1802,1803,1804,1789,704,499,
- 1789,1799,1574,1800,1450,1789,1427,1437,1789,1095,
- 1039,1460,71,1087,1031,380,1801,1802,1803,1804,
- 1505,704,499,1789,1799,1576,1800,1450,1789,1427,
- 1437,1789,1095,1039,1460,680,1087,1031,380,1801,
- 1802,1803,1804,1789,704,499,1789,1799,1608,1800,
- 1450,207,1799,42,1800,1095,1039,1460,1789,1087,
- 1031,380,1801,1802,1803,1804,1789,704,499,1,
- 1799,1574,1800,1450,63,1789,1789,460,1095,1039,
- 1460,1794,1087,1031,380,1801,1802,1803,1804,1789,
- 704,499,19,1345,1780,248,1780,1780,178,178,
- 178,1,1,1,1,1723,1793,206,1577,90,
- 1577,1789,1780,928,1,178,178,178,178,178,
- 178,1789,1780,907,886,865,844,823,781,802,
- 760,739,718,129,90,1332,1319,247,1789,2002,
- 2003,2004,130,2002,2003,2004,249,1789,2002,2003,
- 2004,1789,1,1,1,69,1951,1952,1950,2005,
- 1953,1949,31,2046,1194,1951,1952,1950,2005,1953,
- 1949,131,269,1789,1244,1814,1815,2002,2003,2004,
- 132,219,1602,250,1789,55,2002,2003,2004,2002,
- 2003,2004,509,1789,1951,1952,1950,2005,1953,1949,
- 221,509,1626,1951,1952,1950,2005,1953,1949,1,
- 1,1783,1164,991,1302,1794,1,251,1448,576,
- 509,1794,1789,2002,2003,2004,1789,1798,1789,1143,
- 509,1794,1427,1437,1,290,509,1789,1,1794,
- 1793,29,1796,1798,29,693,1793,252,2014,1447,
- 1789,1343,283,1789,210,1011,1793,1301,2045,188,
- 206,1789,1581,188,1793,1582,1789,2026,1789,188,
- 439,184,1789,1817,1789,183,1789,1789,1789,1789,
- 1795,205,1789,1789,1789,1789,1789,697,1797,2710,
- 1789,1789,1789,1789,1789,1301,1789,1789,1789,1789,
- 1789,1789,1789,1789,1797,1789,1789,1789,1789,1789,
- 1789,1789,1789,1789,1047
+ 191,1,1,1,1798,1,42,1,1994,190,
+ 1,1,1,1798,1405,1394,1368,1357,532,1,
+ 1795,1405,1394,1368,1357,1285,1416,1,1,1,
+ 1,1,1,1788,182,1,1,1,1,1,
+ 1,1,1,1,1,1,1,190,1,1,
+ 1,1798,1,63,1,1994,191,1,1,1,
+ 262,2024,1220,49,1,51,183,1562,2056,1562,
+ 1798,1809,995,1810,1,1,1,1,1,1,
+ 510,89,1,1,1,1,1,1,1,1,
+ 1,1,1,1,191,1,1,1,1798,1809,
+ 67,1810,1994,54,2012,2013,2014,268,2024,1220,
+ 743,253,476,455,1330,1317,1547,1536,1547,1536,
+ 285,1961,1962,1960,2015,1963,1959,510,69,1966,
+ 1971,1970,1968,1969,1967,1972,1973,1965,1974,1975,
+ 1976,129,617,1089,640,201,1798,2012,2013,2014,
+ 265,268,1432,1432,1,253,1,2024,1426,185,
+ 2872,1798,2872,667,1961,1962,1960,2015,1963,1959,
+ 510,510,1966,1971,1970,1968,1969,1967,1972,1973,
+ 1965,1974,1975,1976,1,1809,1584,1810,1444,1802,
+ 71,1798,601,1511,1106,1527,1802,1098,535,381,
+ 1811,1812,1813,1814,1170,729,549,619,1798,1809,
+ 1584,1810,1479,1802,1798,1134,1,1511,1106,1527,
+ 253,1098,535,381,1811,1812,1813,1814,73,729,
+ 549,1037,68,53,1801,1,1809,1584,1810,1519,
+ 29,1801,476,455,1511,1106,1527,2865,1098,535,
+ 381,1811,1812,1813,1814,437,729,549,1801,50,
+ 1798,1798,1809,1562,1810,2056,1798,1809,1584,1810,
+ 1519,1802,532,1429,271,1511,1106,1527,29,1098,
+ 535,381,1811,1812,1813,1814,256,729,549,1798,
+ 1,1,1,1,510,667,347,1708,1,1,
+ 1,1798,1,1,1,1,1,1,1,1798,
+ 1,1,1547,1536,1798,1706,1801,1798,1809,1584,
+ 1810,1519,184,2876,59,2876,1511,1106,1527,532,
+ 1098,535,381,1811,1812,1813,1814,66,729,549,
+ 2112,1,1809,1584,1810,1519,206,2882,695,2882,
+ 1511,1106,1527,2865,1098,535,381,1811,1812,1813,
+ 1814,559,729,549,1798,1809,1584,1810,1519,58,
+ 1798,1285,1416,1511,1106,1527,2865,1098,535,381,
+ 1811,1812,1813,1814,1798,729,549,1,1809,1584,
+ 1810,1519,57,1,2024,1426,1511,1106,1527,2865,
+ 1098,535,381,1811,1812,1813,1814,1798,729,549,
+ 1798,1809,1584,1810,1519,1798,1285,1416,1798,1511,
+ 1106,1527,72,1098,535,381,1811,1812,1813,1814,
+ 1545,729,549,1798,1809,1587,1810,1519,1798,1285,
+ 1416,1798,1511,1106,1527,684,1098,535,381,1811,
+ 1812,1813,1814,1798,729,549,1798,1809,1589,1810,
+ 1519,208,1809,43,1810,1511,1106,1527,1798,1098,
+ 535,381,1811,1812,1813,1814,1798,729,549,1,
+ 1809,1584,1810,1519,64,1798,1798,437,1511,1106,
+ 1527,1804,1098,535,381,1811,1812,1813,1814,1798,
+ 729,549,20,1210,1789,248,1789,1789,179,179,
+ 179,2012,2013,2014,1,1710,1803,207,465,91,
+ 465,1798,1789,974,1,179,179,179,179,179,
+ 179,1798,1789,953,932,911,890,869,827,848,
+ 806,785,764,130,91,1330,1317,249,1798,2012,
+ 2013,2014,131,1,1,1,250,1798,2012,2013,
+ 2014,1798,1,1,1,70,1961,1962,1960,2015,
+ 1963,1959,32,2056,1591,1961,1962,1960,2015,1963,
+ 1959,132,270,1798,1431,1824,1825,2012,2013,2014,
+ 133,220,1242,251,1798,56,2012,2013,2014,2012,
+ 2013,2014,510,1798,1961,1962,1960,2015,1963,1959,
+ 222,510,1585,1961,1962,1960,2015,1963,1959,1,
+ 1,1792,1220,1058,486,1804,1,252,1432,601,
+ 510,1804,1798,2012,2013,2014,1798,1808,1798,473,
+ 510,1804,1285,1416,1,291,510,1798,1,1804,
+ 1803,30,1806,1808,30,1159,1803,253,2024,1426,
+ 1798,1345,284,1798,211,1078,1803,1487,2055,189,
+ 207,1798,1588,189,1803,1604,1798,2036,1798,189,
+ 489,185,1798,1827,1798,184,1798,1798,1798,1798,
+ 1805,206,1798,1798,1798,1798,1798,1164,1807,2720,
+ 1798,1798,1798,1798,1798,1487,1798,1798,1798,1798,
+ 1798,1798,1798,1798,1807,1798,1798,1798,1798,1798,
+ 1798,1798,1798,1798,1114
};
};
public final static char termAction[] = TermAction.termAction;
@@ -592,28 +594,28 @@ public class C99ExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, C9
public interface Asb {
public final static char asb[] = {0,
- 370,1,83,41,83,83,83,83,83,83,
- 83,83,83,3,329,403,400,407,405,413,
- 411,415,414,417,416,10,83,329,329,254,
- 254,150,83,221,221,282,329,83,83,83,
- 83,83,83,83,83,83,83,83,83,83,
- 83,83,83,83,83,83,83,83,83,83,
- 83,83,83,83,83,83,83,221,221,221,
- 45,52,286,77,224,219,218,257,269,66,
- 269,66,66,269,66,269,343,175,400,400,
- 405,405,405,405,403,403,411,407,407,414,
- 413,294,416,415,388,68,50,282,286,100,
- 45,366,81,221,300,227,66,254,254,66,
- 254,83,50,286,277,366,45,80,77,221,
- 280,343,220,229,68,120,68,169,171,297,
- 147,68,277,366,83,83,45,81,224,289,
- 288,286,229,221,68,120,169,169,147,48,
- 431,254,83,296,147,50,366,277,45,45,
- 221,300,227,280,120,147,70,120,169,171,
- 428,171,52,45,254,83,50,277,229,120,
- 72,171,147,83,254,45,171,221,220,147,
- 424,83,423,96,286,147,147,255,72,83,
- 96,171
+ 410,1,76,41,76,76,76,76,76,76,
+ 76,76,76,3,350,23,20,27,25,33,
+ 31,35,34,37,36,9,76,350,350,270,
+ 270,391,76,231,231,142,350,76,76,76,
+ 76,76,76,76,76,76,76,76,76,76,
+ 76,76,76,76,76,76,76,76,76,76,
+ 76,76,76,76,76,76,76,231,231,231,
+ 45,52,146,70,240,229,228,117,129,66,
+ 129,66,66,129,66,129,364,185,20,20,
+ 25,25,25,25,23,23,31,27,27,34,
+ 33,279,36,35,281,68,50,142,146,93,
+ 45,387,74,231,321,243,66,270,270,66,
+ 270,76,50,146,137,387,45,73,70,231,
+ 140,364,230,245,68,155,68,234,236,114,
+ 182,68,137,137,76,76,45,74,240,274,
+ 273,146,245,231,68,155,234,234,182,48,
+ 431,270,76,113,182,50,137,387,45,45,
+ 231,321,243,140,155,182,148,155,234,236,
+ 428,236,52,45,270,76,50,387,137,245,
+ 155,150,236,182,76,270,45,236,137,231,
+ 230,182,317,76,316,89,146,182,182,271,
+ 150,76,89,236
};
};
public final static char asb[] = Asb.asb;
@@ -621,49 +623,49 @@ public class C99ExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, C9
public interface Asr {
public final static byte asr[] = {0,
- 80,0,66,20,2,52,67,13,14,11,
- 4,9,10,53,54,47,48,55,56,57,
- 58,61,62,63,64,65,68,69,43,60,
- 70,71,72,73,74,76,75,77,78,79,
+ 80,0,20,2,52,67,13,14,60,70,
+ 71,72,73,74,76,75,77,78,79,4,
+ 53,54,9,10,48,47,55,56,57,58,
+ 61,62,11,63,64,65,43,66,68,69,
59,30,80,29,50,5,0,5,43,20,
52,13,14,11,4,9,10,21,22,15,
- 2,16,17,18,19,1,3,12,0,66,
- 5,4,1,2,59,0,6,7,8,23,
- 50,5,16,17,18,19,3,13,14,11,
- 9,10,21,22,15,4,2,1,0,6,
- 7,8,2,16,17,18,19,1,3,13,
- 14,11,4,9,10,21,22,15,0,24,
- 31,6,32,44,25,33,26,34,35,27,
- 7,36,37,23,45,28,46,38,39,8,
- 40,41,42,1,3,51,5,43,0,5,
- 30,15,16,17,18,19,1,3,2,13,
- 14,11,4,9,10,21,22,0,1,3,
- 5,43,29,0,7,23,28,8,27,26,
+ 2,16,17,18,19,1,3,12,0,6,
+ 7,8,23,50,5,16,17,18,19,3,
+ 13,14,11,9,10,21,22,15,4,2,
+ 1,0,6,7,8,2,16,17,18,19,
+ 1,3,13,14,11,4,9,10,21,22,
+ 15,0,60,20,52,0,39,31,36,34,
+ 35,33,32,37,38,40,41,42,59,66,
+ 28,25,23,24,27,26,6,7,8,29,
+ 1,5,30,2,20,4,0,66,5,4,
+ 1,2,59,0,24,31,6,32,44,25,
+ 33,26,34,35,27,7,36,37,23,45,
+ 28,46,38,39,8,40,41,42,1,3,
+ 51,5,43,0,7,23,28,8,27,26,
25,6,24,52,67,13,14,11,9,10,
53,54,47,48,55,56,57,58,61,62,
63,64,65,68,69,60,70,71,72,73,
74,75,76,77,78,79,4,2,20,29,
- 30,5,0,4,2,20,30,5,24,31,
- 6,32,44,25,33,26,34,35,27,7,
- 36,37,23,45,28,46,38,39,8,40,
- 41,42,49,3,1,0,39,31,36,34,
- 35,33,32,37,38,40,41,42,59,66,
- 28,25,23,24,27,26,6,7,8,29,
- 1,5,30,2,20,4,0,2,5,29,
- 30,66,20,59,0,60,20,52,0,4,
- 24,31,6,32,44,25,33,26,34,35,
- 27,7,36,37,23,45,28,46,38,39,
- 8,40,41,42,1,3,49,0,15,16,
- 17,18,19,2,13,14,11,4,9,10,
- 21,22,1,3,44,45,46,39,31,36,
- 34,35,33,32,37,38,40,41,42,28,
- 25,23,24,27,26,6,7,8,0,15,
+ 30,5,0,1,3,5,43,29,0,4,
+ 2,20,30,5,24,31,6,32,44,25,
+ 33,26,34,35,27,7,36,37,23,45,
+ 28,46,38,39,8,40,41,42,49,3,
+ 1,0,2,5,29,30,66,20,59,0,
+ 11,4,9,10,53,54,47,48,55,56,
+ 57,58,61,62,63,64,65,68,69,60,
+ 70,71,72,73,74,75,76,77,78,79,
+ 50,30,43,80,12,59,66,5,29,0,
+ 4,24,31,6,32,44,25,33,26,34,
+ 35,27,7,36,37,23,45,28,46,38,
+ 39,8,40,41,42,1,3,49,0,15,
+ 16,17,18,19,2,13,14,11,4,9,
+ 10,21,22,1,3,44,45,46,39,31,
+ 36,34,35,33,32,37,38,40,41,42,
+ 28,25,23,24,27,26,6,7,8,0,
+ 5,30,15,16,17,18,19,1,3,2,
+ 13,14,11,4,9,10,21,22,0,15,
16,17,18,19,1,3,2,13,14,11,
- 4,9,10,21,22,51,0,60,70,71,
- 72,73,74,75,76,77,78,79,12,4,
- 53,54,9,10,48,47,55,56,57,58,
- 61,62,11,63,64,65,50,30,43,80,
- 68,69,59,66,5,29,0,5,29,43,
+ 4,9,10,21,22,51,0,5,29,43,
60,0
};
};
@@ -672,28 +674,28 @@ public class C99ExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, C9
public interface Nasb {
public final static byte nasb[] = {0,
- 99,37,18,37,18,18,18,18,18,18,
- 18,18,18,37,95,37,37,37,37,37,
- 37,37,37,37,37,37,18,95,95,40,
- 40,53,96,71,71,79,1,18,18,18,
- 18,18,18,18,18,18,18,18,18,18,
- 18,18,18,96,18,18,18,18,18,18,
- 18,18,18,18,18,18,18,71,71,71,
- 25,18,75,23,78,11,11,61,62,38,
- 62,86,86,62,85,62,56,37,37,37,
- 37,37,37,37,37,37,37,37,37,37,
- 37,37,37,37,37,37,49,108,37,27,
- 25,42,24,71,90,70,7,7,7,7,
- 7,18,16,37,49,42,25,24,73,71,
- 45,30,37,92,51,49,37,49,88,13,
- 49,37,49,42,18,18,25,24,44,11,
- 11,75,92,71,37,104,49,7,9,15,
- 37,7,18,83,9,49,42,73,25,25,
- 71,90,70,64,49,9,20,116,7,88,
- 37,37,17,25,7,18,16,73,112,104,
- 47,88,9,18,7,25,88,71,71,9,
- 21,18,37,47,75,9,9,37,47,18,
- 66,102
+ 111,39,20,39,20,20,20,20,20,20,
+ 20,20,20,39,90,39,39,39,39,39,
+ 39,39,39,39,39,39,20,90,90,15,
+ 15,94,91,78,78,81,1,20,20,20,
+ 20,20,20,20,20,20,20,20,20,20,
+ 20,20,20,91,20,20,20,20,20,20,
+ 20,20,20,20,20,20,20,78,78,78,
+ 24,20,50,22,80,11,11,74,75,42,
+ 75,27,27,75,26,75,69,39,39,39,
+ 39,39,39,39,39,39,39,39,39,39,
+ 39,39,39,39,39,39,64,99,39,29,
+ 24,118,23,78,85,77,7,7,7,7,
+ 7,20,18,39,57,118,24,23,40,78,
+ 60,32,39,87,46,64,39,64,44,13,
+ 64,39,57,64,20,20,24,23,59,11,
+ 11,50,87,78,39,103,64,7,9,17,
+ 39,7,20,48,9,64,64,118,24,24,
+ 78,85,77,53,64,9,66,114,7,44,
+ 39,39,19,24,7,20,18,118,40,107,
+ 103,62,44,9,20,7,24,44,40,78,
+ 78,9,67,20,39,62,50,9,9,39,
+ 62,20,55,97
};
};
public final static byte nasb[] = Nasb.nasb;
@@ -702,17 +704,17 @@ public class C99ExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, C9
public interface Nasr {
public final static char nasr[] = {0,
79,77,76,65,75,74,1,0,32,0,
- 26,0,97,0,69,11,59,5,0,11,
- 70,0,11,5,24,0,5,11,0,79,
- 78,77,76,65,75,74,0,89,0,71,
- 0,56,0,21,45,44,37,35,11,0,
- 90,0,11,88,0,65,61,62,63,64,
- 52,27,0,45,44,37,35,31,0,11,
- 21,0,22,0,31,49,0,21,44,45,
- 11,0,99,0,92,66,0,51,0,31,
- 49,11,25,0,42,11,41,0,11,87,
- 0,95,0,81,11,42,0,45,44,31,
- 0,93,11,25,0,11,42,67,0
+ 26,0,97,0,71,0,69,11,59,5,
+ 0,11,5,24,0,92,66,0,5,11,
+ 0,79,78,77,76,65,75,74,0,22,
+ 0,89,0,51,0,90,0,99,0,27,
+ 49,0,45,44,37,35,27,0,21,45,
+ 44,37,35,11,0,11,70,0,65,61,
+ 62,63,64,52,28,0,11,21,0,21,
+ 44,45,11,0,27,49,11,25,0,42,
+ 11,41,0,11,88,0,95,0,45,44,
+ 27,0,81,11,42,0,93,11,25,0,
+ 11,87,0,11,42,67,0,56,0
};
};
public final static char nasr[] = Nasr.nasr;
@@ -738,18 +740,18 @@ public class C99ExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, C9
public interface NonterminalIndex {
public final static char nonterminalIndex[] = {0,
100,0,0,0,102,106,107,108,109,110,
- 0,111,112,113,114,115,116,117,118,119,
- 97,129,0,96,122,150,128,0,0,0,
- 0,98,0,146,148,0,149,0,0,0,
- 101,141,159,160,161,0,121,137,147,156,
- 0,131,136,0,151,154,155,158,0,104,
- 132,133,134,135,138,0,140,145,162,99,
- 103,105,120,123,124,125,126,127,130,0,
- 139,143,0,0,144,153,95,0,0,0,
- 142,0,152,157,0,163,164,0,165,0,
+ 0,111,112,113,114,115,116,117,0,118,
+ 97,128,0,96,121,149,0,127,0,0,
+ 0,98,0,145,147,0,148,0,0,0,
+ 101,140,158,159,160,0,120,136,146,155,
+ 0,130,135,0,150,153,154,157,0,104,
+ 131,132,133,134,137,0,139,144,161,99,
+ 103,105,119,122,123,124,125,126,129,0,
+ 138,142,0,0,143,152,95,0,0,0,
+ 141,0,151,156,0,162,163,0,164,0,
0,0,0,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 char nonterminalIndex[] = NonterminalIndex.nonterminalIndex;
@@ -779,9 +781,9 @@ public class C99ExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, C9
public interface ScopeLhs {
public final static char scopeLhs[] = {
- 63,61,5,63,26,26,61,53,106,46,
+ 63,61,5,63,26,26,61,53,107,46,
26,40,46,26,67,6,5,5,19,99,
- 98,44,26,37,3,69,67,7,107,5,
+ 98,44,26,37,3,69,67,7,108,5,
67,40,38,40
};
};
@@ -812,20 +814,20 @@ public class C99ExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, C9
public interface ScopeRhs {
public final static char scopeRhs[] = {0,
- 140,20,0,96,0,189,104,0,31,136,
+ 140,20,0,96,0,189,104,0,31,135,
0,144,165,104,12,152,0,98,0,0,
148,104,2,137,0,97,0,148,104,2,
0,151,2,0,113,23,179,104,20,0,
113,179,104,23,20,0,113,23,20,0,
113,179,104,20,0,113,20,0,130,0,
- 2,0,152,97,0,2,97,0,148,104,
- 2,130,0,2,0,151,97,0,141,2,
+ 2,0,151,97,0,2,97,0,148,104,
+ 2,130,0,2,0,150,97,0,141,2,
0,144,177,104,12,94,185,44,0,98,
0,144,177,104,12,185,44,0,135,0,
- 99,0,184,104,135,0,104,135,0,142,
+ 99,0,184,104,135,0,104,135,0,141,
99,0,173,104,12,183,94,182,158,0,
- 173,104,12,182,158,0,195,85,0,77,
- 2,101,97,99,0,195,114,134,2,89,
+ 173,104,12,182,158,0,196,85,0,77,
+ 2,101,97,99,0,196,114,134,2,89,
0,53,0,0,134,69,111,0,29,118,
0,153,2,0,97,107,0,153,2,15,
0,144,165,104,12,114,153,2,0,97,
@@ -838,15 +840,15 @@ public class C99ExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, C9
public interface ScopeState {
public final static char scopeState[] = {0,
- 1490,0,1685,1686,1652,0,397,0,1488,1343,
- 1447,1270,1240,1164,1134,0,638,1196,314,0,
- 1470,1359,1163,370,1240,1164,1134,1656,1448,1489,
- 0,1087,1031,380,1507,1152,1564,460,642,1229,
- 576,1332,1319,1287,1437,1427,1414,1403,1392,1362,
- 1556,1548,1536,478,405,1460,1450,1095,1039,704,
- 499,1103,1067,1047,1011,991,970,949,617,1123,
- 594,509,928,907,886,865,844,823,802,781,
- 760,739,718,314,669,555,534,418,439,345,
+ 1163,0,1655,1667,1648,0,374,0,1470,1345,
+ 1426,1261,1168,1220,1190,0,663,1251,315,0,
+ 1469,1441,342,340,1168,1220,1190,1642,1432,1535,
+ 0,1098,535,381,1479,1444,1570,437,347,667,
+ 601,1330,1317,695,1416,1285,1405,1394,1368,1357,
+ 1562,1547,1536,476,455,1527,1519,1511,1106,729,
+ 549,1170,1134,1114,1078,1058,1037,1016,642,995,
+ 619,510,974,953,932,911,890,869,848,827,
+ 806,785,764,315,743,580,559,416,489,395,
0
};
};
@@ -865,18 +867,18 @@ public class C99ExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, C9
134,114,104,20,2,138,137,167,168,158,
169,46,45,170,44,171,172,94,101,101,
103,103,103,103,102,102,106,105,105,108,
- 107,134,110,109,114,114,12,142,124,23,
+ 107,134,110,109,114,114,12,142,120,23,
113,104,4,151,104,2,182,159,159,185,
- 159,59,104,124,4,104,113,179,149,148,
+ 159,59,104,120,4,104,113,179,149,148,
118,104,150,104,94,12,94,12,165,104,
- 12,152,4,104,179,23,113,4,2,128,
+ 12,152,4,120,179,23,113,4,2,128,
130,104,29,148,183,104,12,104,144,29,
- 189,52,20,190,104,12,104,149,113,113,
+ 189,52,20,190,104,12,120,104,113,113,
141,104,2,142,12,173,135,174,104,177,
- 94,178,60,140,52,20,104,149,104,104,
- 104,177,144,60,29,140,165,148,186,173,
- 184,59,141,2,104,144,144,29,29,59,
- 142,125
+ 94,178,60,140,52,20,104,104,149,104,
+ 104,104,177,144,60,29,140,165,149,148,
+ 186,173,184,59,141,2,104,144,144,29,
+ 29,59,142,125
};
};
public final static char inSymb[] = InSymb.inSymb;
@@ -997,12 +999,11 @@ public class C99ExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, C9
"shift_expression",
"relational_expression",
"equality_expression",
- "AND_expression",
- "exclusive_OR_expression",
- "inclusive_OR_expression",
- "logical_AND_expression",
- "logical_OR_expression",
- "conditional_expression",
+ "and_expression",
+ "exclusive_or_expression",
+ "inclusive_or_expression",
+ "logical_and_expression",
+ "logical_or_expression",
"assignment_expression",
"expression_list_actual",
"constant_expression",
@@ -1072,20 +1073,20 @@ public class C99ExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, C9
public final int getMaxNameLength() { return MAX_NAME_LENGTH; }
public final static int
- NUM_STATES = 212,
+ NUM_STATES = 214,
NT_OFFSET = 93,
- LA_STATE_OFFSET = 2102,
+ LA_STATE_OFFSET = 2112,
MAX_LA = 2,
- NUM_RULES = 313,
- NUM_NONTERMINALS = 123,
- NUM_SYMBOLS = 216,
+ NUM_RULES = 314,
+ NUM_NONTERMINALS = 124,
+ NUM_SYMBOLS = 217,
SEGMENT_SIZE = 8192,
- START_STATE = 1579,
+ START_STATE = 1660,
IDENTIFIER_SYMBOL = 0,
EOFT_SYMBOL = 80,
EOLT_SYMBOL = 80,
- ACCEPT_ACTION = 1779,
- ERROR_ACTION = 1789;
+ ACCEPT_ACTION = 1788,
+ ERROR_ACTION = 1798;
public final static boolean BACKTRACK = true;
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99NoCastExpressionParser.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99NoCastExpressionParser.java
index 41b85c47625..b480dbab101 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99NoCastExpressionParser.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99NoCastExpressionParser.java
@@ -17,19 +17,28 @@ import lpg.lpgjavaruntime.*;
import java.util.*;
import org.eclipse.cdt.core.dom.ast.*;
+import org.eclipse.cdt.core.dom.lrparser.CPreprocessorAdapter;
+import org.eclipse.cdt.core.dom.lrparser.IDOMTokenMap;
import org.eclipse.cdt.core.dom.lrparser.IParser;
-import org.eclipse.cdt.core.dom.lrparser.IParserActionTokenProvider;
+import org.eclipse.cdt.core.dom.lrparser.ITokenCollector;
import org.eclipse.cdt.core.dom.lrparser.lpgextensions.FixedBacktrackingParser;
import org.eclipse.cdt.core.dom.lrparser.action.ScopedStack;
+import org.eclipse.cdt.core.parser.IScanner;
+import org.eclipse.cdt.core.dom.parser.IBuiltinBindingsProvider;
+import org.eclipse.cdt.core.index.IIndex;
+import org.eclipse.cdt.core.dom.lrparser.action.ITokenStream;
import org.eclipse.cdt.core.dom.lrparser.action.ITokenMap;
import org.eclipse.cdt.core.dom.lrparser.action.TokenMap;
+import org.eclipse.cdt.core.dom.lrparser.ISecondaryParser;
import org.eclipse.cdt.internal.core.dom.parser.c.CNodeFactory;
import org.eclipse.cdt.core.dom.lrparser.action.c99.C99BuildASTParserAction;
import org.eclipse.cdt.core.dom.lrparser.action.c99.C99SecondaryParserFactory;
-public class C99NoCastExpressionParser extends PrsStream implements RuleAction , IParserActionTokenProvider, IParser< IASTExpression >
+public class C99NoCastExpressionParser extends PrsStream implements RuleAction, ITokenStream,
+ ITokenCollector, IParser< IASTExpression >
+ , ISecondaryParser< IASTExpression >
{
private static ParseTable prs = new C99NoCastExpressionParserprs();
private FixedBacktrackingParser btParser;
@@ -167,7 +176,11 @@ public class C99NoCastExpressionParser extends PrsStream implements RuleAction ,
private C99BuildASTParserAction action;
private IASTCompletionNode compNode;
-public C99NoCastExpressionParser() { // constructor
+
+public C99NoCastExpressionParser(IScanner scanner, IDOMTokenMap tokenMap, IBuiltinBindingsProvider builtinBindingsProvider, IIndex index, Set<IParser.Options> options) {
+ initActions(options);
+ action.initializeTranslationUnit(scanner, builtinBindingsProvider, index);
+ CPreprocessorAdapter.runCPreprocessor(scanner, this, tokenMap);
}
private void initActions(Set<IParser.Options> options) {
@@ -186,10 +199,9 @@ public void addToken(IToken token) {
}
-public IASTExpression parse(Set<IParser.Options> options) {
+public IASTExpression parse() {
// this has to be done, or... kaboom!
setStreamLength(getSize());
- initActions(options);
final int errorRepairCount = -1; // -1 means full error handling
parser(null, errorRepairCount); // do the actual parse
@@ -232,12 +244,12 @@ public void setTokens(List<IToken> tokens) {
addToken(new Token(null, 0, 0, C99NoCastExpressionParsersym.TK_EOF_TOKEN));
}
-public C99NoCastExpressionParser(IParserActionTokenProvider parser) { // constructor
+public C99NoCastExpressionParser(ITokenStream parser, Set<IParser.Options> options) { // constructor for creating secondary parser
+ initActions(options);
tokenMap = new TokenMap(C99NoCastExpressionParsersym.orderedTerminalSymbols, parser.getOrderedTerminalSymbols());
}
-
public void ruleAction(int ruleNumber)
{
switch (ruleNumber)
@@ -250,1005 +262,1011 @@ public C99NoCastExpressionParser(IParserActionTokenProvider parser) { // constr
}
//
- // Rule 12: literal ::= integer
+ // Rule 2: <empty> ::= $Empty
//
- case 12: { action. consumeExpressionLiteral(IASTLiteralExpression.lk_integer_constant); break;
+ case 2: { action. consumeEmpty(); break;
}
//
- // Rule 13: literal ::= floating
+ // Rule 13: literal ::= integer
//
- case 13: { action. consumeExpressionLiteral(IASTLiteralExpression.lk_float_constant); break;
+ case 13: { action. consumeExpressionLiteral(IASTLiteralExpression.lk_integer_constant); break;
}
//
- // Rule 14: literal ::= charconst
+ // Rule 14: literal ::= floating
//
- case 14: { action. consumeExpressionLiteral(IASTLiteralExpression.lk_char_constant); break;
+ case 14: { action. consumeExpressionLiteral(IASTLiteralExpression.lk_float_constant); break;
}
//
- // Rule 15: literal ::= stringlit
+ // Rule 15: literal ::= charconst
//
- case 15: { action. consumeExpressionLiteral(IASTLiteralExpression.lk_string_literal); break;
+ case 15: { action. consumeExpressionLiteral(IASTLiteralExpression.lk_char_constant); break;
}
//
- // Rule 17: primary_expression ::= primary_expression_id
+ // Rule 16: literal ::= stringlit
//
- case 17: { action. consumeExpressionID(); break;
+ case 16: { action. consumeExpressionLiteral(IASTLiteralExpression.lk_string_literal); break;
}
//
- // Rule 18: primary_expression ::= ( expression )
+ // Rule 18: primary_expression ::= primary_expression_id
//
- case 18: { action. consumeExpressionBracketed(); break;
+ case 18: { action. consumeExpressionID(); break;
}
//
- // Rule 21: postfix_expression ::= postfix_expression [ expression ]
+ // Rule 19: primary_expression ::= ( expression )
//
- case 21: { action. consumeExpressionArraySubscript(); break;
+ case 19: { action. consumeExpressionBracketed(); break;
}
//
- // Rule 22: postfix_expression ::= postfix_expression ( expression_list_opt )
+ // Rule 22: postfix_expression ::= postfix_expression [ expression ]
//
- case 22: { action. consumeExpressionFunctionCall(); break;
+ case 22: { action. consumeExpressionArraySubscript(); break;
}
//
- // Rule 23: postfix_expression ::= postfix_expression . member_name
+ // Rule 23: postfix_expression ::= postfix_expression ( expression_list_opt )
//
- case 23: { action. consumeExpressionFieldReference(false); break;
+ case 23: { action. consumeExpressionFunctionCall(); break;
}
//
- // Rule 24: postfix_expression ::= postfix_expression -> member_name
+ // Rule 24: postfix_expression ::= postfix_expression . member_name
//
- case 24: { action. consumeExpressionFieldReference(true); break;
+ case 24: { action. consumeExpressionFieldReference(false); break;
}
//
- // Rule 25: postfix_expression ::= postfix_expression ++
+ // Rule 25: postfix_expression ::= postfix_expression -> member_name
//
- case 25: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_postFixIncr); break;
+ case 25: { action. consumeExpressionFieldReference(true); break;
}
//
- // Rule 26: postfix_expression ::= postfix_expression --
+ // Rule 26: postfix_expression ::= postfix_expression ++
//
- case 26: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_postFixDecr); break;
+ case 26: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_postFixIncr); break;
}
//
- // Rule 27: postfix_expression ::= ( type_id ) { <openscope-ast> initializer_list comma_opt }
+ // Rule 27: postfix_expression ::= postfix_expression --
//
- case 27: { action. consumeExpressionTypeIdInitializer(); break;
+ case 27: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_postFixDecr); break;
}
//
- // Rule 32: unary_expression ::= ++ unary_expression
+ // Rule 28: postfix_expression ::= ( type_id ) { <openscope-ast> initializer_list comma_opt }
//
- case 32: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_prefixIncr); break;
+ case 28: { action. consumeExpressionTypeIdInitializer(); break;
}
//
- // Rule 33: unary_expression ::= -- unary_expression
+ // Rule 33: unary_expression ::= ++ unary_expression
//
- case 33: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_prefixDecr); break;
+ case 33: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_prefixIncr); break;
}
//
- // Rule 34: unary_expression ::= & cast_expression
+ // Rule 34: unary_expression ::= -- unary_expression
//
- case 34: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_amper); break;
+ case 34: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_prefixDecr); break;
}
//
- // Rule 35: unary_expression ::= * cast_expression
+ // Rule 35: unary_expression ::= & cast_expression
//
- case 35: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_star); break;
+ case 35: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_amper); break;
}
//
- // Rule 36: unary_expression ::= + cast_expression
+ // Rule 36: unary_expression ::= * cast_expression
//
- case 36: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_plus); break;
+ case 36: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_star); break;
}
//
- // Rule 37: unary_expression ::= - cast_expression
+ // Rule 37: unary_expression ::= + cast_expression
//
- case 37: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_minus); break;
+ case 37: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_plus); break;
}
//
- // Rule 38: unary_expression ::= ~ cast_expression
+ // Rule 38: unary_expression ::= - cast_expression
//
- case 38: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_tilde); break;
+ case 38: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_minus); break;
}
//
- // Rule 39: unary_expression ::= ! cast_expression
+ // Rule 39: unary_expression ::= ~ cast_expression
//
- case 39: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_not); break;
+ case 39: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_tilde); break;
}
//
- // Rule 40: unary_expression ::= sizeof unary_expression
+ // Rule 40: unary_expression ::= ! cast_expression
//
- case 40: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_sizeof); break;
+ case 40: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_not); break;
}
//
- // Rule 41: unary_expression ::= sizeof ( type_id )
+ // Rule 41: unary_expression ::= sizeof unary_expression
//
- case 41: { action. consumeExpressionTypeId(IASTTypeIdExpression.op_sizeof); break;
+ case 41: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_sizeof); break;
}
//
- // Rule 44: multiplicative_expression ::= multiplicative_expression * cast_expression
+ // Rule 42: unary_expression ::= sizeof ( type_id )
//
- case 44: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_multiply); break;
+ case 42: { action. consumeExpressionTypeId(IASTTypeIdExpression.op_sizeof); break;
}
//
- // Rule 45: multiplicative_expression ::= multiplicative_expression / cast_expression
+ // Rule 45: multiplicative_expression ::= multiplicative_expression * cast_expression
//
- case 45: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_divide); break;
+ case 45: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_multiply); break;
}
//
- // Rule 46: multiplicative_expression ::= multiplicative_expression % cast_expression
+ // Rule 46: multiplicative_expression ::= multiplicative_expression / cast_expression
//
- case 46: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_modulo); break;
+ case 46: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_divide); break;
}
//
- // Rule 48: additive_expression ::= additive_expression + multiplicative_expression
+ // Rule 47: multiplicative_expression ::= multiplicative_expression % cast_expression
//
- case 48: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_plus); break;
+ case 47: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_modulo); break;
}
//
- // Rule 49: additive_expression ::= additive_expression - multiplicative_expression
+ // Rule 49: additive_expression ::= additive_expression + multiplicative_expression
//
- case 49: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_minus); break;
+ case 49: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_plus); break;
}
//
- // Rule 51: shift_expression ::= shift_expression << additive_expression
+ // Rule 50: additive_expression ::= additive_expression - multiplicative_expression
//
- case 51: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_shiftLeft); break;
+ case 50: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_minus); break;
}
//
- // Rule 52: shift_expression ::= shift_expression >> additive_expression
+ // Rule 52: shift_expression ::= shift_expression << additive_expression
//
- case 52: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_shiftRight); break;
+ case 52: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_shiftLeft); break;
}
//
- // Rule 54: relational_expression ::= relational_expression < shift_expression
+ // Rule 53: shift_expression ::= shift_expression >> additive_expression
//
- case 54: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_lessThan); break;
+ case 53: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_shiftRight); break;
}
//
- // Rule 55: relational_expression ::= relational_expression > shift_expression
+ // Rule 55: relational_expression ::= relational_expression < shift_expression
//
- case 55: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_greaterThan); break;
+ case 55: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_lessThan); break;
}
//
- // Rule 56: relational_expression ::= relational_expression <= shift_expression
+ // Rule 56: relational_expression ::= relational_expression > shift_expression
//
- case 56: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_lessEqual); break;
+ case 56: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_greaterThan); break;
}
//
- // Rule 57: relational_expression ::= relational_expression >= shift_expression
+ // Rule 57: relational_expression ::= relational_expression <= shift_expression
//
- case 57: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_greaterEqual); break;
+ case 57: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_lessEqual); break;
}
//
- // Rule 59: equality_expression ::= equality_expression == relational_expression
+ // Rule 58: relational_expression ::= relational_expression >= shift_expression
//
- case 59: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_equals); break;
+ case 58: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_greaterEqual); break;
}
//
- // Rule 60: equality_expression ::= equality_expression != relational_expression
+ // Rule 60: equality_expression ::= equality_expression == relational_expression
//
- case 60: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_notequals); break;
+ case 60: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_equals); break;
}
//
- // Rule 62: AND_expression ::= AND_expression & equality_expression
+ // Rule 61: equality_expression ::= equality_expression != relational_expression
//
- case 62: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_binaryAnd); break;
+ case 61: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_notequals); break;
}
//
- // Rule 64: exclusive_OR_expression ::= exclusive_OR_expression ^ AND_expression
+ // Rule 63: and_expression ::= and_expression & equality_expression
//
- case 64: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_binaryXor); break;
+ case 63: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_binaryAnd); break;
}
//
- // Rule 66: inclusive_OR_expression ::= inclusive_OR_expression | exclusive_OR_expression
+ // Rule 65: exclusive_or_expression ::= exclusive_or_expression ^ and_expression
//
- case 66: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_binaryOr); break;
+ case 65: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_binaryXor); break;
}
//
- // Rule 68: logical_AND_expression ::= logical_AND_expression && inclusive_OR_expression
+ // Rule 67: inclusive_or_expression ::= inclusive_or_expression | exclusive_or_expression
//
- case 68: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_logicalAnd); break;
+ case 67: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_binaryOr); break;
}
//
- // Rule 70: logical_OR_expression ::= logical_OR_expression || logical_AND_expression
+ // Rule 69: logical_and_expression ::= logical_and_expression && inclusive_or_expression
//
- case 70: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_logicalOr); break;
+ case 69: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_logicalAnd); break;
}
//
- // Rule 72: conditional_expression ::= logical_OR_expression ? expression : conditional_expression
+ // Rule 71: logical_or_expression ::= logical_or_expression || logical_and_expression
//
- case 72: { action. consumeExpressionConditional(); break;
+ case 71: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_logicalOr); break;
}
//
- // Rule 74: assignment_expression ::= unary_expression = assignment_expression
+ // Rule 73: conditional_expression ::= logical_or_expression ? expression : assignment_expression
//
- case 74: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_assign); break;
+ case 73: { action. consumeExpressionConditional(); break;
}
//
- // Rule 75: assignment_expression ::= unary_expression *= assignment_expression
+ // Rule 75: assignment_expression ::= unary_expression = assignment_expression
//
- case 75: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_multiplyAssign); break;
+ case 75: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_assign); break;
}
//
- // Rule 76: assignment_expression ::= unary_expression /= assignment_expression
+ // Rule 76: assignment_expression ::= unary_expression *= assignment_expression
//
- case 76: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_divideAssign); break;
+ case 76: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_multiplyAssign); break;
}
//
- // Rule 77: assignment_expression ::= unary_expression %= assignment_expression
+ // Rule 77: assignment_expression ::= unary_expression /= assignment_expression
//
- case 77: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_moduloAssign); break;
+ case 77: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_divideAssign); break;
}
//
- // Rule 78: assignment_expression ::= unary_expression += assignment_expression
+ // Rule 78: assignment_expression ::= unary_expression %= assignment_expression
//
- case 78: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_plusAssign); break;
+ case 78: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_moduloAssign); break;
}
//
- // Rule 79: assignment_expression ::= unary_expression -= assignment_expression
+ // Rule 79: assignment_expression ::= unary_expression += assignment_expression
//
- case 79: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_minusAssign); break;
+ case 79: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_plusAssign); break;
}
//
- // Rule 80: assignment_expression ::= unary_expression <<= assignment_expression
+ // Rule 80: assignment_expression ::= unary_expression -= assignment_expression
//
- case 80: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_shiftLeftAssign); break;
+ case 80: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_minusAssign); break;
}
//
- // Rule 81: assignment_expression ::= unary_expression >>= assignment_expression
+ // Rule 81: assignment_expression ::= unary_expression <<= assignment_expression
//
- case 81: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_shiftRightAssign); break;
+ case 81: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_shiftLeftAssign); break;
}
//
- // Rule 82: assignment_expression ::= unary_expression &= assignment_expression
+ // Rule 82: assignment_expression ::= unary_expression >>= assignment_expression
//
- case 82: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_binaryAndAssign); break;
+ case 82: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_shiftRightAssign); break;
}
//
- // Rule 83: assignment_expression ::= unary_expression ^= assignment_expression
+ // Rule 83: assignment_expression ::= unary_expression &= assignment_expression
//
- case 83: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_binaryXorAssign); break;
+ case 83: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_binaryAndAssign); break;
}
//
- // Rule 84: assignment_expression ::= unary_expression |= assignment_expression
+ // Rule 84: assignment_expression ::= unary_expression ^= assignment_expression
//
- case 84: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_binaryOrAssign); break;
+ case 84: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_binaryXorAssign); break;
}
//
- // Rule 87: expression_list ::= <openscope-ast> expression_list_actual
+ // Rule 85: assignment_expression ::= unary_expression |= assignment_expression
//
- case 87: { action. consumeExpressionList(); break;
+ case 85: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_binaryOrAssign); break;
}
//
- // Rule 89: expression_list_opt ::= $Empty
+ // Rule 88: expression_list ::= <openscope-ast> expression_list_actual
//
- case 89: { action. consumeEmpty(); break;
+ case 88: { action. consumeExpressionList(); break;
}
//
- // Rule 99: statement ::= ERROR_TOKEN
+ // Rule 90: expression_list_opt ::= $Empty
//
- case 99: { action. consumeStatementProblem(); break;
+ case 90: { action. consumeEmpty(); break;
}
//
- // Rule 100: labeled_statement ::= identifier_token : statement
+ // Rule 100: statement ::= ERROR_TOKEN
//
- case 100: { action. consumeStatementLabeled(); break;
+ case 100: { action. consumeStatementProblem(); break;
}
//
- // Rule 101: labeled_statement ::= case constant_expression : statement
+ // Rule 101: labeled_statement ::= identifier_token : statement
//
- case 101: { action. consumeStatementCase(); break;
+ case 101: { action. consumeStatementLabeled(); break;
}
//
- // Rule 102: labeled_statement ::= default : statement
+ // Rule 102: labeled_statement ::= case constant_expression : statement
//
- case 102: { action. consumeStatementDefault(); break;
+ case 102: { action. consumeStatementCase(); break;
}
//
- // Rule 103: compound_statement ::= { }
+ // Rule 103: labeled_statement ::= default : statement
//
- case 103: { action. consumeStatementCompoundStatement(false); break;
+ case 103: { action. consumeStatementDefault(); break;
}
//
- // Rule 104: compound_statement ::= { <openscope-ast> block_item_list }
+ // Rule 104: compound_statement ::= { }
//
- case 104: { action. consumeStatementCompoundStatement(true); break;
+ case 104: { action. consumeStatementCompoundStatement(false); break;
}
//
- // Rule 108: block_item ::= declaration
+ // Rule 105: compound_statement ::= { <openscope-ast> block_item_list }
//
- case 108: { action. consumeStatementDeclarationWithDisambiguation(); break;
+ case 105: { action. consumeStatementCompoundStatement(true); break;
}
//
- // Rule 109: expression_statement ::= ;
+ // Rule 109: block_item ::= declaration
//
- case 109: { action. consumeStatementNull(); break;
+ case 109: { action. consumeStatementDeclarationWithDisambiguation(); break;
}
//
- // Rule 110: expression_statement ::= expression_in_statement ;
+ // Rule 110: expression_statement ::= ;
//
- case 110: { action. consumeStatementExpression(); break;
+ case 110: { action. consumeStatementNull(); break;
}
//
- // Rule 111: selection_statement ::= if ( expression ) statement
+ // Rule 111: expression_statement ::= expression_in_statement ;
//
- case 111: { action. consumeStatementIf(false); break;
+ case 111: { action. consumeStatementExpression(); break;
}
//
- // Rule 112: selection_statement ::= if ( expression ) statement else statement
+ // Rule 112: selection_statement ::= if ( expression ) statement
//
- case 112: { action. consumeStatementIf(true); break;
+ case 112: { action. consumeStatementIf(false); break;
}
//
- // Rule 113: selection_statement ::= switch ( expression ) statement
+ // Rule 113: selection_statement ::= if ( expression ) statement else statement
//
- case 113: { action. consumeStatementSwitch(); break;
+ case 113: { action. consumeStatementIf(true); break;
}
//
- // Rule 115: expression_opt ::= $Empty
+ // Rule 114: selection_statement ::= switch ( expression ) statement
//
- case 115: { action. consumeEmpty(); break;
+ case 114: { action. consumeStatementSwitch(); break;
}
//
- // Rule 116: iteration_statement ::= do statement while ( expression ) ;
+ // Rule 116: expression_opt ::= $Empty
//
- case 116: { action. consumeStatementDoLoop(); break;
+ case 116: { action. consumeEmpty(); break;
}
//
- // Rule 117: iteration_statement ::= while ( expression ) statement
+ // Rule 117: iteration_statement ::= do statement while ( expression ) ;
//
- case 117: { action. consumeStatementWhileLoop(); break;
+ case 117: { action. consumeStatementDoLoop(); break;
}
//
- // Rule 118: iteration_statement ::= for ( expression_opt ; expression_opt ; expression_opt ) statement
+ // Rule 118: iteration_statement ::= while ( expression ) statement
//
- case 118: { action. consumeStatementForLoop(); break;
+ case 118: { action. consumeStatementWhileLoop(); break;
}
//
- // Rule 119: iteration_statement ::= for ( declaration expression_opt ; expression_opt ) statement
+ // Rule 119: iteration_statement ::= for ( expression_opt ; expression_opt ; expression_opt ) statement
//
case 119: { action. consumeStatementForLoop(); break;
}
//
- // Rule 120: jump_statement ::= goto identifier_token ;
+ // Rule 120: iteration_statement ::= for ( declaration expression_opt ; expression_opt ) statement
//
- case 120: { action. consumeStatementGoto(); break;
+ case 120: { action. consumeStatementForLoop(); break;
}
//
- // Rule 121: jump_statement ::= continue ;
+ // Rule 121: jump_statement ::= goto identifier_token ;
//
- case 121: { action. consumeStatementContinue(); break;
+ case 121: { action. consumeStatementGoto(); break;
}
//
- // Rule 122: jump_statement ::= break ;
+ // Rule 122: jump_statement ::= continue ;
//
- case 122: { action. consumeStatementBreak(); break;
+ case 122: { action. consumeStatementContinue(); break;
}
//
- // Rule 123: jump_statement ::= return ;
+ // Rule 123: jump_statement ::= break ;
//
- case 123: { action. consumeStatementReturn(false); break;
+ case 123: { action. consumeStatementBreak(); break;
}
//
- // Rule 124: jump_statement ::= return expression ;
+ // Rule 124: jump_statement ::= return ;
//
- case 124: { action. consumeStatementReturn(true); break;
+ case 124: { action. consumeStatementReturn(false); break;
}
//
- // Rule 125: declaration ::= declaration_specifiers ;
+ // Rule 125: jump_statement ::= return expression ;
//
- case 125: { action. consumeDeclarationSimple(false); break;
+ case 125: { action. consumeStatementReturn(true); break;
}
//
- // Rule 126: declaration ::= declaration_specifiers <openscope-ast> init_declarator_list ;
+ // Rule 126: declaration ::= declaration_specifiers ;
//
- case 126: { action. consumeDeclarationSimple(true); break;
+ case 126: { action. consumeDeclarationSimple(false); break;
}
//
- // Rule 127: declaration_specifiers ::= <openscope-ast> simple_declaration_specifiers
+ // Rule 127: declaration ::= declaration_specifiers <openscope-ast> init_declarator_list ;
//
- case 127: { action. consumeDeclarationSpecifiersSimple(); break;
+ case 127: { action. consumeDeclarationSimple(true); break;
}
//
- // Rule 128: declaration_specifiers ::= <openscope-ast> struct_or_union_declaration_specifiers
+ // Rule 128: declaration_specifiers ::= <openscope-ast> simple_declaration_specifiers
//
- case 128: { action. consumeDeclarationSpecifiersStructUnionEnum(); break;
+ case 128: { action. consumeDeclarationSpecifiersSimple(); break;
}
//
- // Rule 129: declaration_specifiers ::= <openscope-ast> elaborated_declaration_specifiers
+ // Rule 129: declaration_specifiers ::= <openscope-ast> struct_or_union_declaration_specifiers
//
case 129: { action. consumeDeclarationSpecifiersStructUnionEnum(); break;
}
//
- // Rule 130: declaration_specifiers ::= <openscope-ast> enum_declaration_specifiers
+ // Rule 130: declaration_specifiers ::= <openscope-ast> elaborated_declaration_specifiers
//
case 130: { action. consumeDeclarationSpecifiersStructUnionEnum(); break;
}
//
- // Rule 131: declaration_specifiers ::= <openscope-ast> typdef_name_declaration_specifiers
+ // Rule 131: declaration_specifiers ::= <openscope-ast> enum_declaration_specifiers
//
- case 131: { action. consumeDeclarationSpecifiersTypedefName(); break;
+ case 131: { action. consumeDeclarationSpecifiersStructUnionEnum(); break;
}
//
- // Rule 156: init_declarator ::= complete_declarator = initializer
+ // Rule 132: declaration_specifiers ::= <openscope-ast> typdef_name_declaration_specifiers
//
- case 156: { action. consumeDeclaratorWithInitializer(true); break;
+ case 132: { action. consumeDeclarationSpecifiersTypedefName(); break;
}
//
- // Rule 158: storage_class_specifier ::= storage_class_specifier_token
+ // Rule 157: init_declarator ::= complete_declarator = initializer
//
- case 158: { action. consumeToken(); break;
+ case 157: { action. consumeDeclaratorWithInitializer(true); break;
}
//
- // Rule 164: simple_type_specifier ::= simple_type_specifier_token
+ // Rule 159: storage_class_specifier ::= storage_class_specifier_token
//
- case 164: { action. consumeToken(); break;
+ case 159: { action. consumeToken(); break;
}
//
- // Rule 177: type_name_specifier ::= identifier_token
+ // Rule 165: simple_type_specifier ::= simple_type_specifier_token
//
- case 177: { action. consumeToken(); break;
+ case 165: { action. consumeToken(); break;
}
//
- // Rule 178: struct_or_union_specifier ::= struct_or_union struct_or_union_specifier_hook { <openscope-ast> struct_declaration_list_opt }
+ // Rule 178: type_name_specifier ::= identifier_token
//
- case 178: { action. consumeTypeSpecifierComposite(false); break;
+ case 178: { action. consumeToken(); break;
}
//
- // Rule 179: struct_or_union_specifier ::= struct_or_union struct_or_union_specifier_hook identifier_token struct_or_union_specifier_suffix_hook { <openscope-ast> struct_declaration_list_opt }
+ // Rule 179: struct_or_union_specifier ::= struct_or_union struct_or_union_specifier_hook { <openscope-ast> struct_declaration_list_opt }
//
- case 179: { action. consumeTypeSpecifierComposite(true); break;
+ case 179: { action. consumeTypeSpecifierComposite(false); break;
}
//
- // Rule 184: elaborated_specifier ::= struct elaborated_specifier_hook identifier_token
+ // Rule 180: struct_or_union_specifier ::= struct_or_union struct_or_union_specifier_hook identifier_token struct_or_union_specifier_suffix_hook { <openscope-ast> struct_declaration_list_opt }
//
- case 184: { action. consumeTypeSpecifierElaborated(IASTCompositeTypeSpecifier.k_struct); break;
+ case 180: { action. consumeTypeSpecifierComposite(true); break;
}
//
- // Rule 185: elaborated_specifier ::= union elaborated_specifier_hook identifier_token
+ // Rule 185: elaborated_specifier ::= struct elaborated_specifier_hook identifier_token
//
- case 185: { action. consumeTypeSpecifierElaborated(IASTCompositeTypeSpecifier.k_union); break;
+ case 185: { action. consumeTypeSpecifierElaborated(IASTCompositeTypeSpecifier.k_struct); break;
}
//
- // Rule 186: elaborated_specifier ::= enum elaborated_specifier_hook identifier_token
+ // Rule 186: elaborated_specifier ::= union elaborated_specifier_hook identifier_token
//
- case 186: { action. consumeTypeSpecifierElaborated(IASTElaboratedTypeSpecifier.k_enum); break;
+ case 186: { action. consumeTypeSpecifierElaborated(IASTCompositeTypeSpecifier.k_union); break;
}
//
- // Rule 192: struct_declaration ::= specifier_qualifier_list <openscope-ast> struct_declarator_list ;
+ // Rule 187: elaborated_specifier ::= enum elaborated_specifier_hook identifier_token
//
- case 192: { action. consumeStructDeclaration(true); break;
+ case 187: { action. consumeTypeSpecifierElaborated(IASTElaboratedTypeSpecifier.k_enum); break;
}
//
- // Rule 193: struct_declaration ::= specifier_qualifier_list ;
+ // Rule 193: struct_declaration ::= specifier_qualifier_list <openscope-ast> struct_declarator_list ;
//
- case 193: { action. consumeStructDeclaration(false); break;
+ case 193: { action. consumeStructDeclaration(true); break;
}
//
- // Rule 194: struct_declaration ::= ERROR_TOKEN
+ // Rule 194: struct_declaration ::= specifier_qualifier_list ;
//
- case 194: { action. consumeDeclarationProblem(); break;
+ case 194: { action. consumeStructDeclaration(false); break;
}
//
- // Rule 200: struct_declarator ::= : constant_expression
+ // Rule 195: struct_declaration ::= ERROR_TOKEN
//
- case 200: { action. consumeBitField(false); break;
+ case 195: { action. consumeDeclarationProblem(); break;
}
//
- // Rule 201: struct_declarator ::= declarator : constant_expression
+ // Rule 201: struct_declarator ::= : constant_expression
//
- case 201: { action. consumeBitField(true); break;
+ case 201: { action. consumeBitField(false); break;
}
//
- // Rule 202: enum_specifier ::= enum enum_specifier_hook { <openscope-ast> enumerator_list_opt comma_opt }
+ // Rule 202: struct_declarator ::= declarator : constant_expression
//
- case 202: { action. consumeTypeSpecifierEnumeration(false); break;
+ case 202: { action. consumeBitField(true); break;
}
//
- // Rule 203: enum_specifier ::= enum enum_specifier_hook identifier_token { <openscope-ast> enumerator_list_opt comma_opt }
+ // Rule 203: enum_specifier ::= enum enum_specifier_hook { <openscope-ast> enumerator_list_opt comma_opt }
//
- case 203: { action. consumeTypeSpecifierEnumeration(true); break;
+ case 203: { action. consumeTypeSpecifierEnumeration(false); break;
}
//
- // Rule 209: enumerator ::= identifier_token
+ // Rule 204: enum_specifier ::= enum enum_specifier_hook identifier_token { <openscope-ast> enumerator_list_opt comma_opt }
//
- case 209: { action. consumeEnumerator(false); break;
+ case 204: { action. consumeTypeSpecifierEnumeration(true); break;
}
//
- // Rule 210: enumerator ::= identifier_token = constant_expression
+ // Rule 210: enumerator ::= identifier_token
//
- case 210: { action. consumeEnumerator(true); break;
+ case 210: { action. consumeEnumerator(false); break;
}
//
- // Rule 211: type_qualifier ::= type_qualifier_token
+ // Rule 211: enumerator ::= identifier_token = constant_expression
//
- case 211: { action. consumeToken(); break;
+ case 211: { action. consumeEnumerator(true); break;
}
//
- // Rule 215: function_specifier ::= inline
+ // Rule 212: type_qualifier ::= type_qualifier_token
//
- case 215: { action. consumeToken(); break;
+ case 212: { action. consumeToken(); break;
}
//
- // Rule 217: declarator ::= <openscope-ast> pointer_seq direct_declarator
+ // Rule 216: function_specifier ::= inline
//
- case 217: { action. consumeDeclaratorWithPointer(true); break;
+ case 216: { action. consumeToken(); break;
}
//
- // Rule 222: basic_direct_declarator ::= declarator_id_name
+ // Rule 218: declarator ::= <openscope-ast> pointer_seq direct_declarator
//
- case 222: { action. consumeDirectDeclaratorIdentifier(); break;
+ case 218: { action. consumeDeclaratorWithPointer(true); break;
}
//
- // Rule 223: basic_direct_declarator ::= ( declarator )
+ // Rule 223: basic_direct_declarator ::= declarator_id_name
//
- case 223: { action. consumeDirectDeclaratorBracketed(); break;
+ case 223: { action. consumeDirectDeclaratorIdentifier(); break;
}
//
- // Rule 224: declarator_id_name ::= identifier
+ // Rule 224: basic_direct_declarator ::= ( declarator )
//
- case 224: { action. consumeIdentifierName(); break;
+ case 224: { action. consumeDirectDeclaratorBracketed(); break;
}
//
- // Rule 225: array_direct_declarator ::= basic_direct_declarator array_modifier
+ // Rule 225: declarator_id_name ::= identifier
//
- case 225: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
+ case 225: { action. consumeIdentifierName(); break;
}
//
- // Rule 226: array_direct_declarator ::= array_direct_declarator array_modifier
+ // Rule 226: array_direct_declarator ::= basic_direct_declarator array_modifier
//
case 226: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
}
//
- // Rule 228: function_direct_declarator ::= basic_direct_declarator ( <openscope-ast> parameter_type_list )
+ // Rule 227: array_direct_declarator ::= array_direct_declarator array_modifier
//
- case 228: { action. consumeDirectDeclaratorFunctionDeclarator(true, true); break;
+ case 227: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
}
//
- // Rule 229: function_direct_declarator ::= basic_direct_declarator ( )
+ // Rule 229: function_direct_declarator ::= basic_direct_declarator ( <openscope-ast> parameter_type_list )
//
- case 229: { action. consumeDirectDeclaratorFunctionDeclarator(true, false); break;
+ case 229: { action. consumeDirectDeclaratorFunctionDeclarator(true, true); break;
}
//
- // Rule 231: function_declarator ::= <openscope-ast> pointer_seq function_direct_declarator
+ // Rule 230: function_direct_declarator ::= basic_direct_declarator ( )
//
- case 231: { action. consumeDeclaratorWithPointer(true); break;
+ case 230: { action. consumeDirectDeclaratorFunctionDeclarator(true, false); break;
}
//
- // Rule 232: knr_direct_declarator ::= basic_direct_declarator ( <openscope-ast> identifier_list )
+ // Rule 232: function_declarator ::= <openscope-ast> pointer_seq function_direct_declarator
//
- case 232: { action. consumeDirectDeclaratorFunctionDeclaratorKnR(); break;
+ case 232: { action. consumeDeclaratorWithPointer(true); break;
}
//
- // Rule 234: knr_function_declarator ::= <openscope-ast> pointer_seq knr_direct_declarator
+ // Rule 233: knr_direct_declarator ::= basic_direct_declarator ( <openscope-ast> identifier_list )
//
- case 234: { action. consumeDeclaratorWithPointer(true); break;
+ case 233: { action. consumeDirectDeclaratorFunctionDeclaratorKnR(); break;
}
//
- // Rule 235: identifier_list ::= identifier
+ // Rule 235: knr_function_declarator ::= <openscope-ast> pointer_seq knr_direct_declarator
//
- case 235: { action. consumeIdentifierKnR(); break;
+ case 235: { action. consumeDeclaratorWithPointer(true); break;
}
//
- // Rule 236: identifier_list ::= identifier_list , identifier
+ // Rule 236: identifier_list ::= identifier
//
case 236: { action. consumeIdentifierKnR(); break;
}
//
- // Rule 237: array_modifier ::= [ ]
+ // Rule 237: identifier_list ::= identifier_list , identifier
//
- case 237: { action. consumeDirectDeclaratorArrayModifier(false); break;
+ case 237: { action. consumeIdentifierKnR(); break;
}
//
- // Rule 238: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers ]
+ // Rule 238: array_modifier ::= [ ]
//
- case 238: { action. consumeDirectDeclaratorModifiedArrayModifier(false, false, true, false); break;
+ case 238: { action. consumeDirectDeclaratorArrayModifier(false); break;
}
//
- // Rule 239: array_modifier ::= [ assignment_expression ]
+ // Rule 239: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers ]
//
- case 239: { action. consumeDirectDeclaratorArrayModifier(true); break;
+ case 239: { action. consumeDirectDeclaratorModifiedArrayModifier(false, false, true, false); break;
}
//
- // Rule 240: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers assignment_expression ]
+ // Rule 240: array_modifier ::= [ assignment_expression ]
//
- case 240: { action. consumeDirectDeclaratorModifiedArrayModifier(false, false, true, true); break;
+ case 240: { action. consumeDirectDeclaratorArrayModifier(true); break;
}
//
- // Rule 241: array_modifier ::= [ static assignment_expression ]
+ // Rule 241: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers assignment_expression ]
//
- case 241: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, false, true); break;
+ case 241: { action. consumeDirectDeclaratorModifiedArrayModifier(false, false, true, true); break;
}
//
- // Rule 242: array_modifier ::= [ static <openscope-ast> array_modifier_type_qualifiers assignment_expression ]
+ // Rule 242: array_modifier ::= [ static assignment_expression ]
//
- case 242: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, true, true); break;
+ case 242: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, false, true); break;
}
//
- // Rule 243: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers static assignment_expression ]
+ // Rule 243: array_modifier ::= [ static <openscope-ast> array_modifier_type_qualifiers assignment_expression ]
//
case 243: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, true, true); break;
}
//
- // Rule 244: array_modifier ::= [ * ]
+ // Rule 244: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers static assignment_expression ]
//
- case 244: { action. consumeDirectDeclaratorModifiedArrayModifier(false, true, false, false); break;
+ case 244: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, true, true); break;
}
//
- // Rule 245: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers * ]
+ // Rule 245: array_modifier ::= [ * ]
//
- case 245: { action. consumeDirectDeclaratorModifiedArrayModifier(false, true, true, false); break;
+ case 245: { action. consumeDirectDeclaratorModifiedArrayModifier(false, true, false, false); break;
}
//
- // Rule 247: pointer_seq ::= pointer_hook *
+ // Rule 246: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers * ]
//
- case 247: { action. consumePointer(); break;
+ case 246: { action. consumeDirectDeclaratorModifiedArrayModifier(false, true, true, false); break;
}
//
- // Rule 248: pointer_seq ::= pointer_seq pointer_hook *
+ // Rule 248: pointer_seq ::= pointer_hook * pointer_hook
//
case 248: { action. consumePointer(); break;
}
//
- // Rule 249: pointer_seq ::= pointer_hook * <openscope-ast> type_qualifier_list
+ // Rule 249: pointer_seq ::= pointer_seq pointer_hook * pointer_hook
//
- case 249: { action. consumePointerTypeQualifierList(); break;
+ case 249: { action. consumePointer(); break;
}
//
- // Rule 250: pointer_seq ::= pointer_seq pointer_hook * <openscope-ast> type_qualifier_list
+ // Rule 250: pointer_seq ::= pointer_hook * pointer_hook <openscope-ast> type_qualifier_list
//
case 250: { action. consumePointerTypeQualifierList(); break;
}
//
- // Rule 254: parameter_type_list ::= parameter_list
+ // Rule 251: pointer_seq ::= pointer_seq pointer_hook * pointer_hook <openscope-ast> type_qualifier_list
//
- case 254: { action. consumeEmpty(); break;
+ case 251: { action. consumePointerTypeQualifierList(); break;
}
//
- // Rule 255: parameter_type_list ::= parameter_list , ...
+ // Rule 255: parameter_type_list ::= parameter_list
//
- case 255: { action. consumePlaceHolder(); break;
+ case 255: { action. consumeEmpty(); break;
}
//
- // Rule 256: parameter_type_list ::= ...
+ // Rule 256: parameter_type_list ::= parameter_list , ...
//
case 256: { action. consumePlaceHolder(); break;
}
//
- // Rule 259: parameter_declaration ::= declaration_specifiers complete_parameter_declarator
+ // Rule 257: parameter_type_list ::= ...
//
- case 259: { action. consumeParameterDeclaration(); break;
+ case 257: { action. consumePlaceHolder(); break;
}
//
- // Rule 260: parameter_declaration ::= declaration_specifiers
+ // Rule 260: parameter_declaration ::= declaration_specifiers complete_parameter_declarator
//
- case 260: { action. consumeParameterDeclarationWithoutDeclarator(); break;
+ case 260: { action. consumeParameterDeclaration(); break;
}
//
- // Rule 263: type_id ::= specifier_qualifier_list
+ // Rule 261: parameter_declaration ::= declaration_specifiers
//
- case 263: { action. consumeTypeId(false); break;
+ case 261: { action. consumeParameterDeclarationWithoutDeclarator(); break;
}
//
- // Rule 264: type_id ::= specifier_qualifier_list abstract_declarator
+ // Rule 264: type_id ::= specifier_qualifier_list
//
- case 264: { action. consumeTypeId(true); break;
+ case 264: { action. consumeTypeId(false); break;
}
//
- // Rule 266: abstract_declarator ::= <openscope-ast> pointer_seq
+ // Rule 265: type_id ::= specifier_qualifier_list abstract_declarator
//
- case 266: { action. consumeDeclaratorWithPointer(false); break;
+ case 265: { action. consumeTypeId(true); break;
}
//
- // Rule 267: abstract_declarator ::= <openscope-ast> pointer_seq direct_abstract_declarator
+ // Rule 267: abstract_declarator ::= <openscope-ast> pointer_seq
//
case 267: { action. consumeDeclaratorWithPointer(false); break;
}
//
- // Rule 271: basic_direct_abstract_declarator ::= ( abstract_declarator )
+ // Rule 268: abstract_declarator ::= <openscope-ast> pointer_seq direct_abstract_declarator
//
- case 271: { action. consumeDirectDeclaratorBracketed(); break;
+ case 268: { action. consumeDeclaratorWithPointer(false); break;
}
//
- // Rule 272: array_direct_abstract_declarator ::= array_modifier
+ // Rule 272: basic_direct_abstract_declarator ::= ( abstract_declarator )
//
- case 272: { action. consumeDirectDeclaratorArrayDeclarator(false); break;
+ case 272: { action. consumeDirectDeclaratorBracketed(); break;
}
//
- // Rule 273: array_direct_abstract_declarator ::= array_direct_abstract_declarator array_modifier
+ // Rule 273: array_direct_abstract_declarator ::= array_modifier
//
- case 273: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
+ case 273: { action. consumeDirectDeclaratorArrayDeclarator(false); break;
}
//
- // Rule 274: array_direct_abstract_declarator ::= basic_direct_abstract_declarator array_modifier
+ // Rule 274: array_direct_abstract_declarator ::= array_direct_abstract_declarator array_modifier
//
case 274: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
}
//
- // Rule 275: function_direct_abstract_declarator ::= ( )
+ // Rule 275: array_direct_abstract_declarator ::= basic_direct_abstract_declarator array_modifier
//
- case 275: { action. consumeDirectDeclaratorFunctionDeclarator(false, false); break;
+ case 275: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
+ }
+
+ //
+ // Rule 276: function_direct_abstract_declarator ::= ( )
+ //
+ case 276: { action. consumeDirectDeclaratorFunctionDeclarator(false, false); break;
}
//
- // Rule 276: function_direct_abstract_declarator ::= basic_direct_abstract_declarator ( )
+ // Rule 277: function_direct_abstract_declarator ::= basic_direct_abstract_declarator ( )
//
- case 276: { action. consumeDirectDeclaratorFunctionDeclarator(true, false); break;
+ case 277: { action. consumeDirectDeclaratorFunctionDeclarator(true, false); break;
}
//
- // Rule 277: function_direct_abstract_declarator ::= ( <openscope-ast> parameter_type_list )
+ // Rule 278: function_direct_abstract_declarator ::= ( <openscope-ast> parameter_type_list )
//
- case 277: { action. consumeDirectDeclaratorFunctionDeclarator(false, true); break;
+ case 278: { action. consumeDirectDeclaratorFunctionDeclarator(false, true); break;
}
//
- // Rule 278: function_direct_abstract_declarator ::= basic_direct_abstract_declarator ( <openscope-ast> parameter_type_list )
+ // Rule 279: function_direct_abstract_declarator ::= basic_direct_abstract_declarator ( <openscope-ast> parameter_type_list )
//
- case 278: { action. consumeDirectDeclaratorFunctionDeclarator(true, true); break;
+ case 279: { action. consumeDirectDeclaratorFunctionDeclarator(true, true); break;
}
//
- // Rule 279: initializer ::= assignment_expression
+ // Rule 280: initializer ::= assignment_expression
//
- case 279: { action. consumeInitializer(); break;
+ case 280: { action. consumeInitializer(); break;
}
//
- // Rule 280: initializer ::= start_initializer_list { <openscope-ast> initializer_list comma_opt } end_initializer_list
+ // Rule 281: initializer ::= start_initializer_list { <openscope-ast> initializer_list comma_opt } end_initializer_list
//
- case 280: { action. consumeInitializerList(); break;
+ case 281: { action. consumeInitializerList(); break;
}
//
- // Rule 281: initializer ::= { <openscope-ast> }
+ // Rule 282: initializer ::= { <openscope-ast> }
//
- case 281: { action. consumeInitializerList(); break;
+ case 282: { action. consumeInitializerList(); break;
}
//
- // Rule 282: start_initializer_list ::= $Empty
+ // Rule 283: start_initializer_list ::= $Empty
//
- case 282: { action. initializerListStart(); break;
+ case 283: { action. initializerListStart(); break;
}
//
- // Rule 283: end_initializer_list ::= $Empty
+ // Rule 284: end_initializer_list ::= $Empty
//
- case 283: { action. initializerListEnd(); break;
+ case 284: { action. initializerListEnd(); break;
}
//
- // Rule 288: designated_initializer ::= <openscope-ast> designation = initializer
+ // Rule 289: designated_initializer ::= <openscope-ast> designation = initializer
//
- case 288: { action. consumeInitializerDesignated(); break;
+ case 289: { action. consumeInitializerDesignated(); break;
}
//
- // Rule 292: designator_base ::= [ constant_expression ]
+ // Rule 293: designator_base ::= [ constant_expression ]
//
- case 292: { action. consumeDesignatorArray(); break;
+ case 293: { action. consumeDesignatorArray(); break;
}
//
- // Rule 293: designator_base ::= . identifier_token
+ // Rule 294: designator_base ::= . identifier_token
//
- case 293: { action. consumeDesignatorField(); break;
+ case 294: { action. consumeDesignatorField(); break;
}
//
- // Rule 294: designator ::= [ constant_expression ]
+ // Rule 295: designator ::= [ constant_expression ]
//
- case 294: { action. consumeDesignatorArray(); break;
+ case 295: { action. consumeDesignatorArray(); break;
}
//
- // Rule 295: designator ::= . identifier_token
+ // Rule 296: designator ::= . identifier_token
//
- case 295: { action. consumeDesignatorField(); break;
+ case 296: { action. consumeDesignatorField(); break;
}
//
- // Rule 296: translation_unit ::= external_declaration_list
+ // Rule 297: translation_unit ::= external_declaration_list
//
- case 296: { action. consumeTranslationUnit(); break;
+ case 297: { action. consumeTranslationUnit(); break;
}
//
- // Rule 297: translation_unit ::= $Empty
+ // Rule 298: translation_unit ::= $Empty
//
- case 297: { action. consumeTranslationUnit(); break;
+ case 298: { action. consumeTranslationUnit(); break;
}
//
- // Rule 302: external_declaration ::= ;
+ // Rule 303: external_declaration ::= ;
//
- case 302: { action. consumeDeclarationEmpty(); break;
+ case 303: { action. consumeDeclarationEmpty(); break;
}
//
- // Rule 303: external_declaration ::= ERROR_TOKEN
+ // Rule 304: external_declaration ::= ERROR_TOKEN
//
- case 303: { action. consumeDeclarationProblem(); break;
+ case 304: { action. consumeDeclarationProblem(); break;
}
//
- // Rule 306: function_definition ::= declaration_specifiers <openscope-ast> function_declarator function_body
+ // Rule 307: function_definition ::= declaration_specifiers <openscope-ast> function_declarator function_body
//
- case 306: { action. consumeFunctionDefinition(true); break;
+ case 307: { action. consumeFunctionDefinition(true); break;
}
//
- // Rule 307: function_definition ::= <openscope-ast> function_declarator function_body
+ // Rule 308: function_definition ::= <openscope-ast> function_declarator function_body
//
- case 307: { action. consumeFunctionDefinition(false); break;
+ case 308: { action. consumeFunctionDefinition(false); break;
}
//
- // Rule 308: function_definition ::= declaration_specifiers <openscope-ast> knr_function_declarator <openscope-ast> declaration_list compound_statement
+ // Rule 309: function_definition ::= declaration_specifiers <openscope-ast> knr_function_declarator <openscope-ast> declaration_list compound_statement
//
- case 308: { action. consumeFunctionDefinitionKnR(); break;
+ case 309: { action. consumeFunctionDefinitionKnR(); break;
}
//
- // Rule 309: function_body ::= { }
+ // Rule 310: function_body ::= { }
//
- case 309: { action. consumeStatementCompoundStatement(false); break;
+ case 310: { action. consumeStatementCompoundStatement(false); break;
}
//
- // Rule 310: function_body ::= { <openscope-ast> block_item_list }
+ // Rule 311: function_body ::= { <openscope-ast> block_item_list }
//
- case 310: { action. consumeStatementCompoundStatement(true); break;
+ case 311: { action. consumeStatementCompoundStatement(true); break;
}
//
- // Rule 312: no_cast_start ::= ERROR_TOKEN
+ // Rule 313: no_cast_start ::= ERROR_TOKEN
//
- case 312: { action. consumeEmpty(); break;
+ case 313: { action. consumeEmpty(); break;
}
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99NoCastExpressionParserprs.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99NoCastExpressionParserprs.java
index 8f5cacf1022..e5eaae6b6a8 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99NoCastExpressionParserprs.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99NoCastExpressionParserprs.java
@@ -34,185 +34,182 @@ public class C99NoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface BaseCheck {
public final static short baseCheck[] = {0,
- 0,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,3,1,1,
- 4,4,3,3,2,2,8,1,0,1,
- 1,2,2,2,2,2,2,2,2,2,
- 4,1,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,3,3,3,3,3,3,3,
- 3,3,3,3,1,1,2,1,0,1,
- 3,1,1,1,1,1,1,1,1,3,
- 4,3,2,4,1,2,1,1,1,2,
- 5,7,5,1,0,7,5,9,8,3,
- 2,2,2,3,2,4,2,2,2,2,
- 2,1,1,1,1,2,1,2,2,2,
- 1,2,2,1,2,2,1,2,2,1,
- 2,2,1,3,1,3,1,1,1,1,
+ 0,0,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,3,1,
+ 1,4,4,3,3,2,2,8,1,0,
+ 1,1,2,2,2,2,2,2,2,2,
+ 2,4,1,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,3,3,3,3,3,3,
+ 3,3,3,3,3,1,1,2,1,0,
+ 1,3,1,1,1,1,1,1,1,1,
+ 3,4,3,2,4,1,2,1,1,1,
+ 2,5,7,5,1,0,7,5,9,8,
+ 3,2,2,2,3,2,4,2,2,2,
+ 2,2,1,1,1,1,2,1,2,2,
+ 2,1,2,2,1,2,2,1,2,2,
+ 1,2,2,1,3,1,3,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,6,8,0,
- 0,1,1,3,3,3,0,1,0,1,
- 2,4,2,1,1,1,3,1,1,2,
- 3,7,8,0,1,0,1,3,1,3,
- 1,1,1,1,1,1,3,1,1,1,
- 1,1,3,1,2,2,1,5,3,1,
- 3,5,1,3,1,3,2,4,3,5,
- 4,6,6,3,5,1,2,3,4,5,
- 0,1,2,1,3,1,1,3,2,1,
- 1,1,1,2,1,2,3,1,1,1,
- 3,1,2,2,2,3,4,5,1,7,
- 3,0,0,1,1,3,3,4,1,1,
- 2,3,2,3,2,1,0,1,2,1,
- 1,1,1,1,2,4,3,6,2,4,
- 1,1,-32,0,0,0,0,0,0,0,
- 0,0,0,-76,0,0,0,0,0,0,
- 0,0,0,0,0,-78,-114,0,-2,0,
- 0,0,0,-120,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-4,0,-15,-72,-115,
- 0,-126,0,0,0,0,0,-110,0,0,
+ 1,1,1,1,1,1,1,1,6,8,
+ 0,0,1,1,3,3,3,0,1,0,
+ 1,2,4,2,1,1,1,3,1,1,
+ 2,3,7,8,0,1,0,1,3,1,
+ 3,1,1,1,1,1,1,3,1,1,
+ 1,1,1,3,1,2,2,1,5,3,
+ 1,3,5,1,3,1,3,2,4,3,
+ 5,4,6,6,3,5,1,3,4,5,
+ 6,0,1,2,1,3,1,1,3,2,
+ 1,1,1,1,2,1,2,3,1,1,
+ 1,3,1,2,2,2,3,4,5,1,
+ 7,3,0,0,1,1,3,3,4,1,
+ 1,2,3,2,3,2,1,0,1,2,
+ 1,1,1,1,1,2,4,3,6,2,
+ 4,1,1,-32,0,0,0,0,0,0,
+ 0,0,0,0,-156,0,0,0,0,0,
+ 0,0,0,0,0,0,-114,0,-72,-2,
+ -29,0,0,0,0,-54,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-137,0,-116,0,-132,
- 0,0,0,-6,0,0,0,0,0,0,
- 0,0,0,-117,0,0,-184,0,0,0,
+ 0,0,0,0,0,0,-137,0,-115,0,
+ -116,0,-4,0,0,0,0,0,-6,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-157,0,0,
+ 0,0,0,-120,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-55,0,
+ 0,0,0,0,-184,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-145,0,0,0,
- 0,0,0,0,0,-16,-104,-17,0,0,
- 0,0,0,0,-118,0,0,0,-79,-18,
- 0,-19,-73,-147,-29,0,-70,0,0,0,
+ 0,0,0,0,0,-55,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-110,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-78,0,-15,-104,
+ -133,-33,0,0,-34,0,-16,0,-193,0,
+ 0,0,0,-117,0,-17,0,-157,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-180,0,0,0,0,0,0,0,0,
- 0,0,-20,0,0,0,0,0,0,0,
- 0,0,-3,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-70,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-51,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-30,
- 0,-107,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-118,
+ 0,0,0,-5,0,0,0,0,0,0,
+ 0,0,-18,-86,0,0,0,-7,0,0,
+ 0,0,0,0,0,0,-180,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-21,-125,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-3,0,0,
+ 0,0,0,0,0,0,0,0,-132,0,
+ 0,0,0,0,0,0,0,0,-51,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-129,0,-141,0,-52,
+ 0,0,0,0,-30,0,-107,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -122,0,0,0,-67,-22,0,0,0,0,
- -156,0,0,0,0,0,-27,0,0,0,
+ 0,0,0,0,0,0,0,0,-73,-125,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-23,0,
- -159,0,0,0,-162,0,0,0,0,0,
- -37,0,0,0,0,0,0,0,0,0,
- 0,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,-57,0,0,0,
- 0,0,0,0,0,0,0,-24,0,0,
- 0,0,0,0,0,0,0,-58,0,0,
- 0,0,0,0,0,0,0,0,-25,0,
- 0,0,0,0,0,0,0,0,-59,0,
- 0,0,0,0,0,0,0,0,0,-26,
- 0,0,0,0,0,0,0,0,0,-60,
+ -129,0,-165,0,0,-83,0,-48,0,0,
0,0,0,0,0,0,0,0,0,0,
- -68,0,0,0,0,0,0,0,0,0,
- -61,0,0,0,0,0,0,0,0,0,
- 0,-84,0,0,0,0,0,0,0,0,
- 0,-62,0,0,0,0,0,0,0,0,
- 0,0,-87,0,0,0,0,0,0,0,
- 0,0,-63,0,0,0,0,0,0,0,
- 0,0,0,-88,0,0,0,0,0,0,
- 0,0,0,-64,0,0,0,0,0,0,
- 0,0,0,0,-89,0,0,0,0,0,
- 0,0,0,0,-65,0,0,0,0,0,
- 0,0,0,0,0,-90,0,0,0,0,
- 0,0,0,0,0,-66,0,0,0,0,
- 0,0,0,0,0,0,-91,0,0,0,
- 0,0,0,0,0,0,-142,0,0,0,
- 0,0,0,0,0,0,0,-92,0,0,
- 0,0,0,0,0,0,0,-143,0,0,
- 0,0,0,0,0,0,0,0,-136,0,
- 0,0,0,0,0,0,0,0,-160,0,
- 0,0,0,0,0,0,0,0,0,-173,
- 0,0,0,0,0,0,0,0,-183,0,
- 0,0,0,0,0,0,0,0,0,-174,
- 0,0,0,0,0,0,0,0,-93,0,
- 0,0,-177,-94,0,-7,0,0,0,0,
- 0,0,0,-191,0,0,0,0,0,0,
+ 0,0,0,0,0,-67,0,0,0,0,
+ 0,0,-85,0,0,0,0,-52,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,-133,0,0,0,0,0,
- 0,0,0,0,-161,0,-182,0,0,0,
- -8,0,0,0,0,0,0,0,-207,0,
+ 0,0,0,-19,0,0,-20,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-119,0,
- 0,0,0,0,0,0,0,0,0,-95,
- 0,0,0,0,0,0,0,0,-96,-192,
- 0,-97,-81,-98,0,-54,0,0,0,0,
- 0,0,0,0,0,0,-128,0,0,0,
- 0,0,0,-33,0,-34,0,0,-48,0,
- 0,0,0,0,0,0,0,0,0,-99,
- 0,0,0,0,-100,-146,-101,-102,-103,0,
+ -159,0,-182,0,0,0,0,0,0,0,
+ -27,0,0,0,0,0,0,0,0,0,
+ 0,-21,0,0,0,0,0,0,0,0,
+ 0,-56,0,0,0,0,0,0,0,0,
+ 0,0,-22,0,0,0,0,0,0,0,
+ 0,0,-57,0,0,0,0,0,0,0,
+ 0,0,0,-23,0,0,0,0,0,0,
+ 0,0,0,-58,0,0,0,0,0,0,
+ 0,0,0,0,-24,0,0,0,0,0,
+ 0,0,0,0,-59,0,0,0,0,0,
+ 0,0,0,0,0,-25,0,0,0,0,
+ 0,0,0,0,0,-60,0,0,0,0,
+ 0,0,0,0,0,0,-26,0,0,0,
+ 0,0,0,0,0,0,-61,0,0,0,
+ 0,0,0,0,0,0,0,-68,0,0,
+ 0,0,0,0,0,0,0,-62,0,0,
+ 0,0,0,0,0,0,0,0,-84,0,
+ 0,0,0,0,0,0,0,0,-63,0,
+ 0,0,0,0,0,0,0,0,0,-87,
+ 0,0,0,0,0,0,0,0,0,-64,
0,0,0,0,0,0,0,0,0,0,
- 0,-1,-36,0,-53,-35,0,0,0,-83,
- 0,0,0,0,0,0,0,-85,0,0,
- 0,0,0,0,0,-106,0,0,0,0,
+ -88,0,0,0,0,0,0,0,0,0,
+ -65,0,0,0,0,0,0,0,0,0,
+ 0,-89,0,0,0,0,0,0,0,0,
+ 0,-66,0,0,0,0,0,0,0,0,
+ 0,0,-90,0,0,0,0,0,0,0,
+ 0,0,-119,0,0,0,0,0,0,0,
+ 0,0,0,-91,0,0,0,0,0,0,
+ 0,0,0,-142,0,0,0,0,0,0,
+ 0,0,0,0,-92,0,0,0,0,0,
+ 0,0,0,0,-143,0,0,0,0,0,
+ 0,0,0,0,0,-93,0,0,0,0,
+ 0,0,0,0,0,-160,0,0,0,0,
+ 0,0,0,0,0,0,-162,0,0,0,
+ 0,0,0,0,0,-183,0,0,0,0,
+ 0,0,0,0,0,0,-174,0,0,0,
+ 0,0,0,0,0,-94,-76,0,0,-136,
+ -95,0,-8,0,0,0,0,0,0,0,
+ -192,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-171,0,
- 0,-46,0,0,0,0,0,0,0,0,
- 0,0,-121,0,-188,-135,-138,-140,-148,0,
+ -201,0,0,0,0,0,0,0,0,0,
+ 0,-96,0,0,0,0,0,0,0,0,
+ 0,-155,0,-97,-98,0,0,-9,0,0,
+ 0,0,0,0,0,-209,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -130,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-134,-139,0,0,0,
- 0,0,0,0,-5,0,0,0,0,0,
- 0,0,-49,0,0,0,0,0,0,0,
- 0,0,0,-152,0,-50,0,0,0,0,
- 0,0,0,0,0,0,-190,0,-206,-12,
- 0,0,0,0,0,0,0,0,-165,0,
- -209,-158,-178,-179,-200,0,-42,0,0,0,
- 0,0,0,0,0,0,0,-205,0,0,
- 0,0,0,0,0,0,0,0,-13,0,
- 0,0,0,0,0,0,-43,0,0,0,
- 0,0,0,0,0,0,0,-44,0,0,
- 0,0,0,0,0,0,0,0,-45,0,
+ 0,0,0,0,0,0,-128,-46,0,0,
+ 0,0,0,0,0,0,0,0,-49,0,
0,0,0,0,0,0,0,0,0,-111,
- 0,0,-47,0,0,0,0,0,0,0,
- 0,0,-201,-38,0,0,0,0,0,0,
- 0,0,0,0,-154,0,-163,0,0,-71,
- -113,-170,-86,-189,-194,0,-74,0,-108,-185,
- 0,0,0,-208,-127,0,0,0,0,0,
+ 0,0,0,-108,-173,-146,-122,-127,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-155,0,
- 0,0,0,0,0,-172,0,0,0,0,
+ 0,-189,0,0,-1,0,0,0,0,-99,
+ 0,0,0,0,0,0,0,-100,0,0,
+ 0,0,0,0,0,-171,0,0,0,0,
+ -113,-131,0,-185,0,0,0,0,0,0,
+ 0,0,0,0,0,-101,-135,-102,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-9,0,0,0,0,0,0,0,-10,
- 0,0,0,0,0,0,0,-11,0,0,
- 0,0,0,0,0,-31,-39,0,0,0,
- 0,0,0,0,-198,0,0,-40,0,0,
- 0,0,0,0,0,0,-124,-69,-149,-112,
- -151,0,-41,0,0,0,0,0,0,0,
- 0,-169,0,0,-131,-175,0,0,0,0,
- 0,-168,0,0,0,0,0,-14,0,0,
- 0,-144,0,0,-28,-195,0,0,0,0,
- 0,-166,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-196,0,0,
- 0,0,-75,0,0,0,0,0,0,0,
- 0,0,0,-77,0,0,-176,0,-105,0,
- 0,0,0,0,0,-80,-153,0,0,0,
- 0,0,0,0,0,0,-82,0,0,-202,
- 0,0,0,0,0,0,0,0,-167,0,
- 0,0,0,0,0,0,-187,0,0,0,
- 0,0,0,0,0,0,0,0,-186,0,
- 0,-150,0,-109,0,-181,-123,0,-193,0,
- -197,0,0,0,-203,-204,0,-164,0,0,
+ 0,0,0,0,0,-103,0,0,0,0,
+ -50,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-208,0,-106,0,0,
+ -121,0,0,-130,-134,-139,0,-42,0,0,
+ 0,0,0,0,0,0,0,0,-47,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-12,0,0,0,0,
+ 0,0,0,-43,0,0,0,0,0,0,
+ 0,0,0,0,-44,0,0,0,0,0,
+ 0,0,0,0,0,-45,0,0,0,0,
+ 0,0,0,0,0,0,-203,0,0,-10,
+ 0,0,0,0,0,0,0,0,-37,0,
+ 0,0,0,0,0,0,0,-38,0,0,
+ 0,0,0,0,0,0,-71,-170,-138,0,
+ 0,0,0,0,0,0,-152,0,0,0,
+ -126,-79,-186,0,-74,-158,-178,-124,-177,0,
+ 0,-140,0,-145,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,-109,
+ -211,-147,-31,-123,0,-11,0,0,0,0,
+ 0,0,0,0,-161,-179,0,-81,0,0,
+ 0,0,-202,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-13,0,0,0,
+ 0,0,0,0,0,0,0,-39,0,0,
+ 0,0,0,0,0,0,-207,-196,-148,0,
+ 0,-40,0,0,0,0,0,0,0,-41,
+ 0,0,0,0,0,0,0,-112,0,0,
+ -169,-141,0,-14,0,0,-154,0,0,0,
+ -75,0,0,0,0,0,0,0,-144,-28,
+ 0,-166,0,-163,0,0,-35,0,0,0,
+ 0,0,0,0,0,-176,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-151,0,0,-77,0,-187,0,
+ -164,-172,0,0,0,-167,0,0,-105,0,
+ -80,0,0,-190,0,-82,0,0,0,0,
+ 0,-200,-153,0,0,0,0,0,-195,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-188,-175,-69,0,
+ 0,-36,-150,-168,0,-181,-149,0,0,-53,
+ 0,-204,0,0,-197,-194,-191,-198,-199,0,
+ 0,0,0,0,-205,0,0,0,0,0,
+ 0,0,-206,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,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;
@@ -222,186 +219,183 @@ public class C99NoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface BaseAction {
public final static char baseAction[] = {
- 87,11,24,24,23,23,32,32,69,69,
- 1,1,2,2,2,2,3,3,3,4,
- 5,5,5,5,5,5,5,5,51,51,
- 70,6,6,6,6,6,6,6,6,6,
- 6,6,7,8,8,8,8,9,9,9,
- 10,10,10,12,12,12,12,12,13,13,
- 13,14,14,15,15,16,16,17,17,18,
- 18,19,19,20,20,20,20,20,20,20,
- 20,20,20,20,20,101,45,40,88,88,
- 73,73,46,102,102,102,102,102,102,102,
- 103,103,103,104,104,109,109,110,110,105,
- 105,106,106,106,112,112,107,107,107,107,
- 108,108,108,108,108,111,111,25,25,25,
- 25,25,27,27,27,79,79,74,74,74,
- 74,75,75,75,76,76,76,77,77,77,
- 78,78,78,113,113,114,114,115,28,30,
- 30,30,30,30,52,54,54,54,54,54,
- 54,54,54,54,54,54,54,63,60,60,
- 89,90,64,64,61,61,61,65,80,80,
- 81,81,66,66,66,48,91,91,82,83,
- 83,83,62,62,92,84,84,85,85,67,
- 67,21,22,22,22,29,47,47,33,33,
- 33,33,36,36,38,34,34,35,39,39,
- 116,116,37,117,117,93,93,26,26,26,
- 26,26,26,26,26,26,86,49,49,49,
- 49,31,56,56,55,55,55,57,57,50,
- 50,94,94,71,71,58,58,58,41,41,
- 41,42,43,43,43,44,44,44,44,53,
- 53,53,59,95,72,72,72,72,68,96,
- 97,97,98,98,99,99,118,118,119,119,
- 120,120,120,120,122,122,121,121,121,123,
- 123,87,87,1,832,16,20,17,368,790,
- 43,488,486,502,236,500,614,543,689,656,
- 769,748,73,90,133,211,445,250,400,502,
- 135,132,134,158,415,19,16,20,17,368,
- 790,43,488,486,502,396,500,614,543,689,
- 656,769,748,73,279,137,541,164,671,199,
- 157,185,569,141,144,147,150,324,364,19,
- 16,20,17,368,42,35,366,1457,1623,1634,
- 1646,1657,1210,253,211,273,679,284,157,184,
- 254,370,244,1297,488,19,16,20,17,368,
- 42,39,285,337,329,1296,979,464,19,16,
- 20,17,368,790,43,488,486,502,396,500,
- 614,543,689,656,769,748,73,279,335,19,
- 16,20,17,368,790,43,488,486,502,396,
- 500,614,543,689,656,769,748,73,279,488,
- 19,16,20,17,368,42,43,488,486,502,
- 284,500,614,543,689,1188,1297,364,19,16,
- 20,17,368,42,35,285,324,13,194,1455,
- 1324,286,1352,1085,290,157,186,1297,344,493,
- 12,245,30,678,715,281,287,275,19,16,
- 20,17,368,790,43,488,486,502,1694,500,
- 614,543,689,656,769,748,73,1459,811,274,
- 226,237,440,19,16,20,17,368,790,43,
- 488,486,502,31,500,614,543,689,656,769,
- 748,73,279,488,19,16,20,17,368,790,
- 43,488,486,502,398,500,614,543,689,656,
- 769,748,73,90,488,19,16,20,17,368,
- 42,43,488,486,502,288,500,614,543,1144,
- 281,1297,536,19,16,20,17,368,790,43,
- 488,486,502,1697,500,614,543,689,656,769,
- 748,73,1557,18,63,299,19,16,20,17,
- 368,790,43,488,486,502,366,500,614,543,
- 689,656,769,748,73,1592,189,177,52,238,
- 488,19,16,20,17,368,42,43,488,486,
- 502,110,500,614,1180,281,191,133,211,252,
- 211,244,638,135,132,134,158,488,19,16,
- 20,17,368,790,43,488,486,502,1189,500,
- 614,543,689,656,769,748,73,91,137,242,
- 164,157,293,27,1349,244,141,144,147,150,
- 324,488,19,16,20,17,368,42,43,853,
- 1457,1623,1634,1646,1657,1210,488,19,16,20,
- 17,368,790,43,488,486,502,281,500,614,
- 543,689,656,769,748,73,84,488,19,16,
- 20,17,368,790,43,488,486,502,402,500,
- 614,543,689,656,769,748,73,83,488,19,
- 16,20,17,368,790,43,488,486,502,6,
- 500,614,543,689,656,769,748,73,82,488,
- 19,16,20,17,368,790,43,488,486,502,
- 523,500,614,543,689,656,769,748,73,81,
- 488,19,16,20,17,368,790,43,488,486,
- 502,159,500,614,543,689,656,769,748,73,
- 80,488,19,16,20,17,368,790,43,488,
- 486,502,560,500,614,543,689,656,769,748,
- 73,79,488,19,16,20,17,368,790,43,
- 488,486,502,306,500,614,543,689,656,769,
- 748,73,78,488,19,16,20,17,368,790,
- 43,488,486,502,342,500,614,543,689,656,
- 769,748,73,77,488,19,16,20,17,368,
- 790,43,488,486,502,544,500,614,543,689,
- 656,769,748,73,76,488,19,16,20,17,
- 368,790,43,488,486,502,647,500,614,543,
- 689,656,769,748,73,75,488,19,16,20,
- 17,368,790,43,488,486,502,657,500,614,
- 543,689,656,769,748,73,74,488,19,16,
- 20,17,368,790,43,488,486,502,659,500,
- 614,543,689,656,769,748,73,1602,488,19,
- 16,20,17,368,790,43,488,486,502,698,
- 500,614,543,689,656,769,748,73,1669,488,
- 19,16,20,17,368,42,43,488,486,502,
- 244,500,614,543,689,656,769,748,92,488,
- 19,16,20,17,368,42,43,488,486,502,
- 655,500,614,543,689,656,769,748,92,413,
- 661,1265,178,718,675,1696,488,19,16,20,
- 17,368,42,38,488,19,16,20,17,368,
- 42,43,488,486,502,1699,500,614,543,689,
- 656,769,748,92,488,19,16,20,17,368,
- 42,43,488,486,502,13,500,614,543,689,
- 656,769,748,92,1337,681,1647,157,295,193,
- 210,488,19,16,20,17,368,42,37,488,
- 19,16,20,17,368,42,43,488,486,502,
- 200,500,614,543,689,656,769,748,92,488,
- 19,16,20,17,368,42,43,488,486,502,
- 144,500,614,543,689,656,769,748,72,50,
- 157,1353,57,517,412,201,488,19,16,20,
- 17,368,42,43,488,486,502,151,500,614,
- 543,689,656,1187,157,30,157,30,1559,488,
- 19,16,20,17,368,42,43,488,486,502,
- 550,500,1130,272,291,547,207,154,307,676,
- 216,504,219,1269,221,222,227,1572,265,503,
- 369,270,388,13,261,13,421,208,495,275,
- 189,177,272,553,553,262,553,553,281,216,
- 504,219,1269,221,222,227,709,265,503,369,
- 270,133,211,1582,24,414,23,136,132,134,
- 158,22,86,86,1420,86,88,311,1453,200,
- 1185,259,488,19,16,20,17,368,42,43,
- 488,1029,138,710,164,361,13,13,572,697,
- 142,145,148,151,324,272,1660,1489,695,1708,
- 1263,693,217,504,219,1269,221,222,227,339,
- 267,503,369,270,1218,225,712,716,216,504,
- 219,1269,221,222,227,512,19,16,20,17,
- 368,40,1355,488,19,16,20,17,368,42,
- 43,488,486,502,717,1139,488,19,16,20,
- 17,368,42,43,488,486,502,244,1142,361,
- 488,19,16,20,17,368,33,196,198,612,
- 1660,261,104,394,719,720,1545,488,19,16,
- 20,17,368,42,43,488,486,895,64,202,
- 253,211,216,504,219,1269,221,222,227,488,
- 19,16,20,17,368,32,1355,488,19,16,
- 20,17,368,42,43,488,486,916,488,19,
- 16,20,17,368,42,43,488,486,937,488,
- 19,16,20,17,368,42,43,488,486,958,
- 281,197,198,488,19,16,20,17,368,42,
- 43,488,1034,623,488,19,16,20,17,368,
- 42,43,874,271,1660,13,280,13,1795,1795,
- 672,543,543,61,718,698,1637,232,417,61,
- 646,1560,1575,1689,638,281,216,504,219,1269,
- 221,222,227,275,276,229,272,21,133,211,
- 1582,253,211,239,140,132,134,158,277,604,
- 1353,265,503,369,270,1263,13,217,504,219,
- 1269,221,222,227,1795,1705,1706,1677,1420,139,
- 1795,164,488,19,16,20,17,368,42,36,
- 488,19,16,20,17,368,42,35,488,19,
- 16,20,17,368,42,34,161,488,19,16,
- 20,17,368,42,46,495,1795,1558,488,19,
- 16,20,17,368,42,45,207,61,97,97,
- 323,281,272,488,19,16,20,17,368,42,
- 44,636,323,1033,1354,429,95,265,503,369,
- 270,241,281,636,278,1157,636,636,13,1226,
- 1226,1226,61,1795,264,13,281,1157,1795,313,
- 1157,195,61,1226,1795,223,313,1639,1249,1639,
- 257,1795,1795,195,192,1465,240,1281,370,228,
- 195,1249,257,603,1020,257,242,1465,86,1281,
- 1561,1795,1281,590,608,86,1536,604,1353,241,
- 590,232,191,1536,133,211,637,48,1795,1795,
- 143,132,134,158,1795,133,211,642,636,505,
- 97,146,132,134,158,272,655,133,211,61,
- 1263,1795,195,149,132,134,158,142,133,211,
- 267,503,369,270,152,132,134,158,636,282,
- 1795,1226,711,243,52,1020,61,52,1795,61,
- 636,244,195,636,207,244,244,1795,52,1464,
- 1795,1795,1795,190,1157,252,211,1157,252,211,
- 292,1454,1354,294,1795,1020,1795,1000,1576,252,
- 211,1795,1795,179,1795,1795,1795,203,1351,257,
- 1795,1795,258,190,1596,1795,1281,1795,1795,1795,
- 372,1795,1795,372,1795,1795,1795,1701,1576,1795,
- 1795,1795,1795,1795,1460,1795,1795,1795,1795,1795,
- 1795,1795,1795,1795,1795,1795,1795,1795,1795,1795,
- 615,1795,1618,947,1795,0,19,177,0,1,
- 2019,0,1,2030,0
+ 87,11,101,24,24,23,23,32,32,69,
+ 69,1,1,2,2,2,2,3,3,3,
+ 4,5,5,5,5,5,5,5,5,51,
+ 51,70,6,6,6,6,6,6,6,6,
+ 6,6,6,7,8,8,8,8,9,9,
+ 9,10,10,10,12,12,12,12,12,13,
+ 13,13,14,14,15,15,16,16,17,17,
+ 18,18,19,19,20,20,20,20,20,20,
+ 20,20,20,20,20,20,102,45,40,88,
+ 88,73,73,46,103,103,103,103,103,103,
+ 103,104,104,104,105,105,110,110,111,111,
+ 106,106,107,107,107,113,113,108,108,108,
+ 108,109,109,109,109,109,112,112,25,25,
+ 25,25,25,28,28,28,79,79,74,74,
+ 74,74,75,75,75,76,76,76,77,77,
+ 77,78,78,78,114,114,115,115,116,29,
+ 31,31,31,31,31,52,54,54,54,54,
+ 54,54,54,54,54,54,54,54,63,60,
+ 60,89,90,64,64,61,61,61,65,80,
+ 80,81,81,66,66,66,48,91,91,82,
+ 83,83,83,62,62,92,84,84,85,85,
+ 67,67,21,22,22,22,30,47,47,33,
+ 33,33,33,36,36,38,34,34,35,39,
+ 39,117,117,37,118,118,93,93,26,26,
+ 26,26,26,26,26,26,26,86,49,49,
+ 49,49,27,56,56,55,55,55,57,57,
+ 50,50,94,94,71,71,58,58,58,41,
+ 41,41,42,43,43,43,44,44,44,44,
+ 53,53,53,59,95,72,72,72,72,68,
+ 96,97,97,98,98,99,99,119,119,120,
+ 120,121,121,121,121,123,123,122,122,122,
+ 124,124,87,87,1,899,17,21,18,469,
+ 857,44,486,477,714,244,543,752,717,794,
+ 773,836,815,74,91,134,212,250,589,199,
+ 502,281,136,133,135,159,488,20,17,21,
+ 18,469,43,44,486,477,714,28,543,752,
+ 717,794,773,1276,878,274,138,679,165,157,
+ 186,157,185,541,142,145,148,151,1097,488,
+ 20,17,21,18,469,43,40,373,1445,1571,
+ 1617,1631,1636,666,415,20,17,21,18,469,
+ 857,44,486,477,714,367,543,752,717,794,
+ 773,836,815,74,280,464,20,17,21,18,
+ 469,857,44,486,477,714,367,543,752,717,
+ 794,773,836,815,74,280,488,20,17,21,
+ 18,469,43,44,486,477,714,285,543,752,
+ 717,794,1278,1326,364,20,17,21,18,469,
+ 43,36,286,1446,1495,291,1100,445,285,671,
+ 13,13,157,31,1326,157,31,324,245,157,
+ 1447,394,1643,286,329,1325,194,1649,335,20,
+ 17,21,18,469,857,44,486,477,714,367,
+ 543,752,717,794,773,836,815,74,280,275,
+ 20,17,21,18,469,857,44,486,477,714,
+ 1480,543,752,717,794,773,836,815,74,1214,
+ 157,187,369,238,512,20,17,21,18,469,
+ 41,287,25,12,61,24,209,1326,488,20,
+ 17,21,18,469,43,39,288,440,20,17,
+ 21,18,469,857,44,486,477,714,22,543,
+ 752,717,794,773,836,815,74,280,488,20,
+ 17,21,18,469,857,44,486,477,714,254,
+ 543,752,717,794,773,836,815,74,91,488,
+ 20,17,21,18,469,43,44,486,477,714,
+ 289,543,752,717,1155,281,1326,536,20,17,
+ 21,18,469,857,44,486,477,714,1484,543,
+ 752,717,794,773,836,815,74,1448,19,678,
+ 299,20,17,21,18,469,857,44,486,477,
+ 714,373,543,752,717,794,773,836,815,74,
+ 1579,189,178,52,239,275,189,178,488,20,
+ 17,21,18,469,43,44,486,477,714,1437,
+ 543,1101,134,212,253,212,281,134,212,136,
+ 133,135,159,281,137,133,135,159,488,20,
+ 17,21,18,469,43,44,486,477,714,1296,
+ 543,752,1240,138,30,165,23,31,139,1443,
+ 165,142,145,148,151,1097,143,146,149,152,
+ 1097,157,294,157,296,1445,1571,1617,1631,1636,
+ 666,488,20,17,21,18,469,857,44,486,
+ 477,714,63,543,752,717,794,773,836,815,
+ 74,92,488,20,17,21,18,469,857,44,
+ 486,477,714,191,543,752,717,794,773,836,
+ 815,74,85,488,20,17,21,18,469,857,
+ 44,486,477,714,242,543,752,717,794,773,
+ 836,815,74,84,488,20,17,21,18,469,
+ 857,44,486,477,714,402,543,752,717,794,
+ 773,836,815,74,83,488,20,17,21,18,
+ 469,857,44,486,477,714,6,543,752,717,
+ 794,773,836,815,74,82,488,20,17,21,
+ 18,469,857,44,486,477,714,523,543,752,
+ 717,794,773,836,815,74,81,488,20,17,
+ 21,18,469,857,44,486,477,714,159,543,
+ 752,717,794,773,836,815,74,80,488,20,
+ 17,21,18,469,857,44,486,477,714,560,
+ 543,752,717,794,773,836,815,74,79,488,
+ 20,17,21,18,469,857,44,486,477,714,
+ 306,543,752,717,794,773,836,815,74,78,
+ 488,20,17,21,18,469,857,44,486,477,
+ 714,342,543,752,717,794,773,836,815,74,
+ 77,488,20,17,21,18,469,857,44,486,
+ 477,714,544,543,752,717,794,773,836,815,
+ 74,76,488,20,17,21,18,469,857,44,
+ 486,477,714,647,543,752,717,794,773,836,
+ 815,74,75,488,20,17,21,18,469,857,
+ 44,486,477,714,657,543,752,717,794,773,
+ 836,815,74,73,488,20,17,21,18,469,
+ 857,44,486,477,714,659,543,752,717,794,
+ 773,836,815,74,1582,488,20,17,21,18,
+ 469,857,44,486,477,714,413,543,752,717,
+ 794,773,836,815,74,1626,488,20,17,21,
+ 18,469,43,44,486,477,714,244,543,752,
+ 717,794,773,836,815,93,488,20,17,21,
+ 18,469,43,44,486,477,714,655,543,752,
+ 717,794,773,836,815,93,675,236,1232,282,
+ 698,144,1686,488,20,17,21,18,469,43,
+ 38,488,20,17,21,18,469,43,44,486,
+ 477,714,1696,543,752,717,794,773,836,815,
+ 93,488,20,17,21,18,469,43,44,486,
+ 477,714,50,543,752,717,794,773,836,815,
+ 93,325,604,1447,57,412,194,211,488,20,
+ 17,21,18,469,43,37,488,20,17,21,
+ 18,469,43,44,486,477,714,201,543,752,
+ 717,794,773,836,815,93,337,151,488,20,
+ 17,21,18,469,43,44,486,1046,1687,488,
+ 20,17,21,18,469,43,44,486,477,714,
+ 281,1142,202,273,61,244,207,97,281,208,
+ 217,1482,220,1539,222,223,228,1561,266,639,
+ 339,271,361,272,262,388,1449,1496,240,276,
+ 550,278,273,1692,1562,263,578,179,547,217,
+ 1482,220,1539,222,223,228,200,266,639,339,
+ 271,543,429,1684,52,217,1482,220,1539,222,
+ 223,228,1262,661,1210,87,154,13,307,1503,
+ 312,260,273,1321,277,253,212,1187,1152,218,
+ 1482,220,1539,222,223,228,676,268,639,339,
+ 271,488,20,17,21,18,469,43,44,486,
+ 477,714,258,1154,197,199,361,1614,709,1324,
+ 1538,710,340,1642,693,712,716,1692,488,20,
+ 17,21,18,469,43,44,486,477,962,488,
+ 20,17,21,18,469,43,44,486,1096,217,
+ 1482,220,1539,222,223,228,488,20,17,21,
+ 18,469,34,1503,488,20,17,21,18,469,
+ 43,44,486,477,983,488,20,17,21,18,
+ 469,43,44,486,477,1004,488,20,17,21,
+ 18,469,43,44,486,477,1025,623,198,199,
+ 488,20,17,21,18,469,43,36,1692,488,
+ 20,17,21,18,469,43,44,920,488,20,
+ 17,21,18,469,43,44,941,672,543,13,
+ 217,1482,220,1539,222,223,228,717,1558,1619,
+ 1067,110,493,612,1684,232,104,394,61,718,
+ 276,230,97,273,364,20,17,21,18,469,
+ 43,36,254,212,254,212,134,212,266,639,
+ 339,271,242,141,133,135,159,638,246,1621,
+ 52,261,715,161,52,1210,488,20,17,21,
+ 18,469,43,35,1679,681,719,140,517,165,
+ 1697,253,212,720,1321,253,212,371,227,273,
+ 218,1482,220,1539,222,223,228,488,20,17,
+ 21,18,469,33,266,639,339,271,488,20,
+ 17,21,18,469,43,47,1441,64,646,697,
+ 1441,265,488,20,17,21,18,469,43,46,
+ 488,20,17,21,18,469,43,45,323,254,
+ 212,323,569,530,13,226,640,13,1770,661,
+ 1014,603,661,663,1770,314,281,1770,1596,61,
+ 13,1770,61,1187,13,1318,1187,421,1318,196,
+ 484,314,134,212,292,415,604,1447,578,144,
+ 133,135,159,241,87,196,243,1629,258,615,
+ 1256,258,1483,1218,281,1324,1218,608,1324,282,
+ 87,572,13,1770,1770,615,61,89,1483,241,
+ 661,637,1264,1677,718,341,642,279,134,212,
+ 1770,1770,495,48,1187,147,133,135,159,698,
+ 244,686,134,212,661,273,1321,134,212,150,
+ 133,135,159,208,153,133,135,159,196,258,
+ 268,639,339,271,1695,693,1324,142,95,97,
+ 1634,1496,13,711,281,1705,61,97,661,661,
+ 13,1087,97,578,661,281,61,244,370,244,
+ 1713,578,196,196,1770,244,1318,224,1187,191,
+ 293,193,1698,244,1318,1770,1770,1770,229,1318,
+ 295,233,87,1215,1678,1087,1087,544,1629,203,
+ 87,180,1770,259,1770,1248,1256,204,1770,1770,
+ 1770,1477,1770,191,192,1481,1770,1770,1770,1770,
+ 1770,1770,1770,1770,1770,1770,1770,1699,1678,1770,
+ 0,20,178,0,1,1995,0,1,2006,0
};
};
public final static char baseAction[] = BaseAction.baseAction;
@@ -501,84 +495,84 @@ public class C99NoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface TermAction {
public final static char termAction[] = {0,
- 1795,1805,1588,1806,1520,69,2007,2008,2009,1512,
- 1091,58,1,1528,1956,1379,1340,1305,1807,1808,
- 1809,1810,1036,404,1957,1955,2010,1958,1954,53,
- 63,1961,1966,1965,1963,1964,1962,1967,1968,1960,
- 1969,1970,1971,1169,1143,499,336,1795,1,60,
- 1,1795,189,1,1,1,59,2007,2008,2009,
- 1795,1,61,1795,2031,1798,1409,1398,1387,1357,
- 459,1,1,1,1,1,1252,1423,1,1,
+ 1770,1781,1564,1782,1400,70,1983,1984,1985,1158,
+ 1103,59,1,1486,1932,1517,1356,534,1783,1784,
+ 1785,1786,548,379,1933,1931,1986,1934,1930,54,
+ 64,1937,1942,1941,1939,1940,1938,1943,1944,1936,
+ 1945,1946,1947,668,1498,1442,467,1770,1,61,
+ 1,1770,190,1,1,1,60,1983,1984,1985,
+ 1770,1,62,1770,2007,1774,1386,1375,1364,1328,
+ 436,1,1,1,1,1,1188,1339,1,1,
1,1,1,1,1,1,1,1,1,1,
- 189,1,1,1,1795,1,251,1,1989,188,
- 1,1,1,1795,1409,1398,1387,1357,1,247,
- 1797,1409,1398,1387,1357,1,1,1,1,1,
- 1,1,1,1326,1313,1,1,1,1,1,
- 1,1,1,1,1,1,1,188,1,1,
- 1,1795,1,62,1,1989,189,1,1,1,
- 260,2019,1186,70,1,1,1795,1805,1795,1806,
- 263,507,1450,532,1,1,1,1,1,1,
- 487,507,1,1,1,1,1,1,1,1,
- 1,1,1,1,189,1,1,1,1795,1805,
- 67,1806,1989,47,2007,2008,2009,1563,269,266,
- 2019,1186,1956,251,1326,1313,1,1789,1186,507,
- 507,1800,1957,1955,2010,1958,1954,507,459,1961,
- 1966,1965,1963,1964,1962,1967,1968,1960,1969,1970,
- 1971,127,1143,499,336,180,1799,2007,2008,2009,
- 266,65,1450,1795,251,1956,1548,1537,1802,1795,
- 1805,507,1806,181,574,1957,1955,2010,1958,1954,
- 283,1075,1961,1966,1965,1963,1964,1962,1967,1968,
- 1960,1969,1970,1971,1,1805,1588,1806,378,1798,
- 1795,1,1792,1512,1091,1800,1801,1528,592,1379,
- 1340,1305,1807,1808,1809,1810,1036,404,1795,1805,
- 1588,1806,477,1798,640,49,68,1512,1091,1563,
- 1799,1528,968,1379,1340,1305,1807,1808,1809,1810,
- 1036,404,1,50,1797,1795,251,1795,1795,1805,
- 2051,1806,1434,701,1,1805,1588,1806,1520,28,
- 1266,48,1795,1512,1091,1563,2798,1528,1797,1379,
- 1340,1305,1807,1808,1809,1810,1036,404,1548,1537,
- 1,2019,1433,1795,1805,1588,1806,1520,1798,1795,
- 574,2051,1512,1091,1800,1795,1528,28,1379,1340,
- 1305,1807,1808,1809,1810,1036,404,1795,1,1,
- 1,1,1795,209,1548,1537,1,1,1368,1799,
- 1,71,1,1,1,1,1,1,1,1,
- 1,66,52,1797,1,1805,1588,1806,1520,1064,
- 1,1434,701,1512,1091,89,2798,1528,1,1379,
- 1340,1305,1807,1808,1809,1810,1036,404,2107,1795,
- 1805,1588,1806,1520,183,2832,1795,2832,1512,1091,
- 89,2798,1528,1044,1379,1340,1305,1807,1808,1809,
- 1810,1036,404,1,1805,1588,1806,1520,1795,1146,
- 1205,1795,1512,1091,640,2798,1528,2051,1379,1340,
- 1305,1807,1808,1809,1810,1036,404,1795,1805,1588,
- 1806,1520,182,2837,1795,2837,1512,1091,1795,1804,
- 1528,1795,1379,1340,1305,1807,1808,1809,1810,1036,
- 404,1795,1805,1595,1806,1520,204,2839,1795,2839,
- 1512,1091,42,1339,1528,1795,1379,1340,1305,1807,
- 1808,1809,1810,1036,404,1,1805,1588,1806,1520,
- 87,1795,1,57,1512,1091,1795,1800,1528,64,
- 1379,1340,1305,1807,1808,1809,1810,1036,404,19,
- 1803,1786,1169,1786,1786,177,177,177,246,667,
- 1786,248,1799,177,2007,2008,2009,1,1,1,
- 1795,1785,926,177,177,177,177,177,1795,1786,
- 1252,1423,905,884,863,842,821,779,800,758,
- 737,716,128,206,1805,1119,1806,129,2007,2008,
- 2009,249,1795,2007,2008,2009,1956,2007,2008,2009,
- 1795,1956,1,2019,1433,1795,1957,1955,2010,1958,
- 1954,1957,1955,2010,1958,1954,130,251,2019,1433,
- 1795,131,2007,2008,2009,250,56,2007,2008,2009,
- 1956,2007,2008,2009,1,1956,55,1795,54,1804,
- 1957,1955,2010,1958,1954,1957,1955,2010,1958,1954,
- 31,1,1206,1450,51,41,1800,268,1795,1451,
- 289,1203,507,1434,701,1820,1821,487,507,989,
- 282,1009,254,1252,1423,1267,220,29,1452,205,
- 1140,1799,1140,1252,1423,1252,1423,507,1795,1795,
- 1,1795,651,1268,218,1795,1795,29,205,199,
- 1803,1692,1166,1445,187,507,438,1447,1496,187,
- 691,187,1087,1267,1795,1795,183,1164,1795,1795,
- 1795,182,1795,204,1795,1795,1823,2807,1795,1795,
- 1795,1795,1795,1795,1795,1795,1795,1795,1795,2050,
- 1795,1795,1795,1795,1795,1795,1795,1795,1795,1795,
- 1795,1795,1795,1795,1795,1795,1795,1795,1099
+ 190,1,1,1,1770,1,252,1,1965,189,
+ 1,1,1,1770,1386,1375,1364,1328,1,247,
+ 1773,1386,1375,1364,1328,1983,1984,1985,1,1,
+ 1,1,1,1301,1199,1,1,1,1,1,
+ 1,1,1,1,1,1,1,189,1,1,
+ 1,1770,1,63,1,1965,190,1,1,1,
+ 261,1995,1216,71,1,1,1770,1781,1770,1782,
+ 264,509,1427,557,1,1,1,1,1,1,
+ 470,509,1,1,1,1,1,1,1,1,
+ 1,1,1,1,190,1,1,1,1770,1781,
+ 68,1782,1965,48,1983,1984,1985,1550,270,267,
+ 1995,1216,1932,252,1301,1199,1,1764,1216,509,
+ 509,1776,1933,1931,1986,1934,1930,509,436,1937,
+ 1942,1941,1939,1940,1938,1943,1944,1936,1945,1946,
+ 1947,128,1498,1442,467,181,1775,1983,1984,1985,
+ 267,66,1427,1770,252,1932,1542,1528,1778,1770,
+ 1781,509,1782,182,599,1933,1931,1986,1934,1930,
+ 284,471,1937,1942,1941,1939,1940,1938,1943,1944,
+ 1936,1945,1946,1947,1,1781,1564,1782,454,1774,
+ 1770,1,1767,1158,1103,1776,1777,1486,617,1517,
+ 1356,534,1783,1784,1785,1786,548,379,1770,1781,
+ 1564,1782,1454,1774,698,50,69,1158,1103,1550,
+ 1775,1486,1035,1517,1356,534,1783,1784,1785,1786,
+ 548,379,1,51,1773,1770,252,1770,1770,1781,
+ 2027,1782,1418,1409,1,1781,1564,1782,1400,29,
+ 1277,49,1770,1158,1103,1550,2774,1486,1773,1517,
+ 1356,534,1783,1784,1785,1786,548,379,1542,1528,
+ 1,1995,1397,1770,1781,1564,1782,1400,1774,1770,
+ 599,2027,1158,1103,1776,1770,1486,29,1517,1356,
+ 534,1783,1784,1785,1786,548,379,1770,1,1,
+ 1,1,1770,210,1542,1528,1,1,1537,1775,
+ 1,72,1,1,1,1,1,1,1,1,
+ 1,67,53,1773,1,1781,1564,1782,1400,1131,
+ 1,1418,1409,1158,1103,90,2774,1486,1,1517,
+ 1356,534,1783,1784,1785,1786,548,379,2083,1770,
+ 1781,1564,1782,1400,184,2808,1770,2808,1158,1103,
+ 90,2774,1486,1111,1517,1356,534,1783,1784,1785,
+ 1786,548,379,1,1781,1564,1782,1400,1770,346,
+ 1690,1770,1158,1103,698,2774,1486,2027,1517,1356,
+ 534,1783,1784,1785,1786,548,379,1770,1781,1564,
+ 1782,1400,183,2813,1770,2813,1158,1103,1770,1780,
+ 1486,1770,1517,1356,534,1783,1784,1785,1786,548,
+ 379,1770,1781,1580,1782,1400,205,2815,1770,2815,
+ 1158,1103,43,1316,1486,1770,1517,1356,534,1783,
+ 1784,1785,1786,548,379,1,1781,1564,1782,1400,
+ 88,1770,1,58,1158,1103,1770,1776,1486,65,
+ 1517,1356,534,1783,1784,1785,1786,548,379,20,
+ 1779,1761,668,1761,1761,178,178,178,248,741,
+ 1761,249,1775,178,1,1,1,1,1,1,
+ 1770,1760,972,178,178,178,178,178,1770,1761,
+ 1188,1339,951,930,909,888,867,825,846,804,
+ 783,762,129,207,1781,993,1782,130,1983,1984,
+ 1985,250,1770,1983,1984,1985,1932,1983,1984,1985,
+ 1770,1932,1,1995,1397,1770,1933,1931,1986,1934,
+ 1930,1933,1931,1986,1934,1930,131,252,1995,1397,
+ 1770,132,1983,1984,1985,251,57,1983,1984,1985,
+ 1932,1983,1984,1985,1,1932,56,1770,55,1780,
+ 1933,1931,1986,1934,1930,1933,1931,1986,1934,1930,
+ 32,1,1587,1427,52,42,1776,269,1770,1261,
+ 290,1682,509,1418,1409,1796,1797,470,509,1056,
+ 283,1076,255,1188,1339,1429,221,30,1428,206,
+ 479,1775,479,1188,1339,1188,1339,509,1770,1770,
+ 1,1770,1217,1452,219,1770,1770,30,206,200,
+ 1779,1683,475,1567,188,509,488,1584,1622,188,
+ 731,188,733,1429,1770,1770,184,472,1770,1770,
+ 1770,183,1770,205,1770,1770,1799,2783,1770,1770,
+ 1770,1770,1770,1770,1770,1770,1770,1770,1770,2026,
+ 1770,1770,1770,1770,1770,1770,1770,1770,1770,1770,
+ 1770,1770,1770,1770,1770,1770,1770,1770,1166
};
};
public final static char termAction[] = TermAction.termAction;
@@ -586,27 +580,28 @@ public class C99NoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface Asb {
public final static char asb[] = {0,
- 243,1,76,41,76,76,76,76,76,76,
- 76,76,76,392,3,218,215,222,220,228,
- 226,230,229,232,231,10,76,392,159,159,
- 357,392,329,329,261,76,76,76,76,76,
- 76,76,76,76,76,76,76,76,76,76,
- 76,76,76,76,76,76,76,76,76,76,
- 76,76,76,76,76,76,159,68,361,70,
- 299,157,156,332,344,66,344,66,66,344,
- 66,344,406,113,159,45,215,215,220,220,
- 220,220,218,218,226,222,222,229,228,292,
- 231,230,203,50,357,361,93,45,429,74,
- 159,363,302,66,329,329,66,329,76,50,
- 361,352,429,45,73,70,159,355,406,158,
- 304,68,169,68,280,282,200,196,68,352,
- 429,76,76,45,74,299,287,286,361,304,
- 159,68,169,280,280,196,48,297,329,76,
- 199,196,50,429,352,45,45,159,363,302,
- 355,169,196,162,169,280,282,294,282,52,
- 45,329,76,50,352,304,169,164,282,196,
- 76,329,45,282,159,158,196,239,76,238,
- 89,361,196,196,330,164,76,89,282
+ 199,1,106,41,106,106,106,106,106,106,
+ 106,106,106,373,3,23,20,27,25,33,
+ 31,35,34,37,36,9,106,373,189,189,
+ 321,373,293,293,414,106,106,106,106,106,
+ 106,106,106,106,106,106,106,106,106,106,
+ 106,106,106,106,106,106,106,106,106,106,
+ 106,106,106,106,106,106,189,98,325,100,
+ 263,187,186,296,308,96,308,96,96,308,
+ 96,308,387,143,189,45,20,20,25,25,
+ 25,25,23,23,31,27,27,34,33,342,
+ 36,35,223,80,321,325,123,45,410,104,
+ 189,344,266,96,293,293,96,293,106,80,
+ 325,316,410,45,103,100,189,319,387,188,
+ 268,98,48,98,217,219,333,75,98,316,
+ 316,106,106,45,104,263,337,336,325,268,
+ 189,98,48,217,217,75,78,330,293,106,
+ 332,75,80,316,410,45,45,189,344,266,
+ 319,48,75,192,48,217,219,327,219,82,
+ 45,293,106,80,410,316,268,48,194,219,
+ 75,106,293,45,219,316,189,188,75,259,
+ 106,258,119,325,75,75,294,194,106,119,
+ 219
};
};
public final static char asb[] = Asb.asb;
@@ -614,11 +609,14 @@ public class C99NoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface Asr {
public final static byte asr[] = {0,
- 80,0,66,11,2,52,67,15,16,13,
- 4,9,10,53,54,47,48,55,56,57,
- 58,61,62,63,64,65,68,69,43,60,
- 70,71,72,73,74,76,75,77,78,79,
- 59,30,80,29,50,5,0,5,43,11,
+ 80,0,11,2,52,67,15,16,60,70,
+ 71,72,73,74,76,75,77,78,79,4,
+ 53,54,9,10,48,47,55,56,57,58,
+ 61,62,13,63,64,65,43,66,68,69,
+ 59,30,80,29,50,5,0,24,31,6,
+ 32,44,25,33,26,34,35,27,7,36,
+ 37,14,45,28,46,38,39,8,40,41,
+ 42,1,3,51,5,43,0,5,43,11,
52,15,16,13,4,9,10,22,23,17,
2,18,19,20,21,1,3,12,0,6,
7,8,14,50,5,18,19,20,21,3,
@@ -630,34 +628,31 @@ public class C99NoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
47,48,55,56,57,58,61,62,63,64,
65,68,69,60,70,71,72,73,74,75,
76,77,78,79,4,2,11,29,30,5,
- 0,66,5,4,1,2,59,0,24,31,
- 6,32,44,25,33,26,34,35,27,7,
- 36,37,14,45,28,46,38,39,8,40,
- 41,42,1,3,51,5,43,0,60,11,
- 52,0,60,70,71,72,73,74,75,76,
- 77,78,79,12,4,53,54,9,10,48,
- 47,55,56,57,58,61,62,13,63,64,
- 65,50,30,43,80,68,69,59,66,5,
- 29,0,17,18,19,20,21,1,3,2,
- 15,16,13,4,9,10,22,23,51,0,
- 5,30,17,18,19,20,21,1,3,2,
- 15,16,13,4,9,10,22,23,0,1,
- 3,5,43,29,0,2,5,29,30,66,
- 11,59,0,5,29,43,60,0,4,2,
- 11,30,5,24,31,6,32,44,25,33,
- 26,34,35,27,7,36,37,14,45,28,
- 46,38,39,8,40,41,42,49,3,1,
- 0,39,31,36,34,35,33,32,37,38,
- 40,41,42,59,66,28,25,14,24,27,
- 26,6,7,8,29,1,5,30,2,11,
- 4,0,4,24,31,6,32,44,25,33,
- 26,34,35,27,7,36,37,14,45,28,
- 46,38,39,8,40,41,42,1,3,49,
- 0,17,18,19,20,21,2,15,16,13,
- 4,9,10,22,23,1,3,44,45,46,
- 39,31,36,34,35,33,32,37,38,40,
- 41,42,28,25,14,24,27,26,6,7,
- 8,0
+ 0,66,5,4,1,2,59,0,17,18,
+ 19,20,21,1,3,2,15,16,13,4,
+ 9,10,22,23,51,0,1,3,5,43,
+ 29,0,13,4,9,10,53,54,47,48,
+ 55,56,57,58,61,62,63,64,65,68,
+ 69,60,70,71,72,73,74,75,76,77,
+ 78,79,50,30,43,80,12,59,66,5,
+ 29,0,4,2,11,30,5,24,31,6,
+ 32,44,25,33,26,34,35,27,7,36,
+ 37,14,45,28,46,38,39,8,40,41,
+ 42,49,3,1,0,39,31,36,34,35,
+ 33,32,37,38,40,41,42,59,66,28,
+ 25,14,24,27,26,6,7,8,29,1,
+ 5,30,2,11,4,0,5,29,43,60,
+ 0,60,11,52,0,2,5,29,30,66,
+ 11,59,0,4,24,31,6,32,44,25,
+ 33,26,34,35,27,7,36,37,14,45,
+ 28,46,38,39,8,40,41,42,1,3,
+ 49,0,17,18,19,20,21,2,15,16,
+ 13,4,9,10,22,23,1,3,44,45,
+ 46,39,31,36,34,35,33,32,37,38,
+ 40,41,42,28,25,14,24,27,26,6,
+ 7,8,0,5,30,17,18,19,20,21,
+ 1,3,2,15,16,13,4,9,10,22,
+ 23,0
};
};
public final static byte asr[] = Asr.asr;
@@ -665,27 +660,28 @@ public class C99NoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface Nasb {
public final static byte nasb[] = {0,
- 60,38,22,38,22,22,22,22,22,22,
- 22,22,22,102,38,38,38,38,38,38,
- 38,38,38,38,38,38,22,102,88,88,
- 83,1,51,51,63,103,22,22,22,22,
- 22,22,22,22,22,22,22,22,22,22,
- 22,22,103,22,22,22,22,22,22,22,
- 22,22,22,22,22,22,88,38,90,24,
- 82,11,11,71,72,9,72,49,49,72,
- 48,72,66,38,88,26,38,38,38,38,
+ 61,38,20,38,20,20,20,20,20,20,
+ 20,20,20,94,38,38,38,38,38,38,
+ 38,38,38,38,38,38,20,94,71,71,
+ 74,1,15,15,98,95,20,20,20,20,
+ 20,20,20,20,20,20,20,20,20,20,
+ 20,20,95,20,20,20,20,20,20,20,
+ 20,20,20,20,20,20,71,38,117,22,
+ 73,11,11,44,45,50,45,87,87,45,
+ 86,45,39,38,71,24,38,38,38,38,
38,38,38,38,38,38,38,38,38,38,
- 38,38,38,58,106,38,28,26,118,25,
- 88,93,87,7,7,7,7,7,22,20,
- 38,58,118,26,25,13,88,54,31,38,
- 95,17,58,38,58,41,15,58,38,58,
- 118,22,22,26,25,53,11,11,90,95,
- 88,38,110,58,7,39,19,38,7,22,
- 46,39,58,118,13,26,26,88,93,87,
- 74,58,39,43,98,7,41,38,38,21,
- 26,7,22,20,13,114,110,56,41,39,
- 22,7,26,41,88,88,39,44,22,38,
- 56,90,39,39,38,56,22,76,80
+ 38,38,38,59,105,38,28,24,80,23,
+ 71,89,70,7,7,7,7,7,20,18,
+ 38,68,80,24,23,78,71,55,31,38,
+ 91,26,59,38,59,52,13,59,38,68,
+ 59,20,20,24,23,54,11,11,117,91,
+ 71,38,109,59,7,9,17,38,7,20,
+ 84,9,59,59,80,24,24,71,89,70,
+ 64,59,9,47,113,7,52,38,38,19,
+ 24,7,20,18,80,78,101,109,57,52,
+ 9,20,7,24,52,78,71,71,9,48,
+ 20,38,57,117,9,9,38,57,20,66,
+ 82
};
};
public final static byte nasb[] = Nasb.nasb;
@@ -693,18 +689,18 @@ public class C99NoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface Nasr {
public final static char nasr[] = {0,
- 79,77,76,64,75,74,1,0,89,0,
- 26,0,21,0,97,0,90,0,68,11,
- 59,5,0,11,5,24,0,5,11,0,
- 79,78,77,76,64,75,74,0,32,0,
- 51,0,11,69,0,99,0,92,65,0,
- 70,0,23,43,42,36,34,11,0,11,
- 87,0,11,88,0,64,60,61,62,63,
- 52,27,0,43,42,36,34,31,0,95,
- 0,23,42,43,11,0,11,23,0,31,
- 49,0,31,49,11,25,0,11,48,66,
- 0,48,11,45,0,43,42,31,0,81,
- 11,48,0,93,11,25,0,56,0
+ 79,77,76,64,75,74,1,0,32,0,
+ 26,0,97,0,70,0,68,11,59,5,
+ 0,11,5,24,0,90,0,5,11,0,
+ 79,78,77,76,64,75,74,0,64,60,
+ 61,62,63,52,28,0,11,69,0,89,
+ 0,51,0,23,43,42,36,34,11,0,
+ 11,87,0,43,42,36,34,27,0,11,
+ 23,0,23,42,43,11,0,21,0,56,
+ 0,95,0,99,0,92,65,0,27,49,
+ 11,25,0,48,11,45,0,11,88,0,
+ 93,11,25,0,43,42,27,0,81,11,
+ 48,0,11,48,66,0,27,49,0
};
};
public final static char nasr[] = Nasr.nasr;
@@ -730,18 +726,18 @@ public class C99NoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface NonterminalIndex {
public final static char nonterminalIndex[] = {0,
100,0,0,0,102,106,107,108,109,110,
- 0,111,112,113,114,115,116,117,118,119,
- 129,0,97,96,122,150,128,0,0,0,
- 0,98,146,148,0,149,0,0,0,0,
- 159,160,161,0,101,121,137,141,147,156,
- 0,131,136,0,151,154,155,158,0,132,
- 133,134,135,138,0,140,145,162,99,103,
- 104,105,120,123,124,125,126,127,130,0,
- 139,143,0,0,144,153,95,0,0,0,
- 142,0,152,157,0,163,164,0,165,0,
+ 0,111,112,113,114,115,116,117,0,118,
+ 128,0,97,96,121,149,0,127,0,0,
+ 0,98,145,147,0,148,0,0,0,0,
+ 158,159,160,0,101,120,136,140,146,155,
+ 0,130,135,0,150,153,154,157,0,131,
+ 132,133,134,137,0,139,144,161,99,103,
+ 104,105,119,122,123,124,125,126,129,0,
+ 138,142,0,0,143,152,95,0,0,0,
+ 141,0,151,156,0,162,163,0,164,0,
0,0,0,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 char nonterminalIndex[] = NonterminalIndex.nonterminalIndex;
@@ -771,9 +767,9 @@ public class C99NoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface ScopeLhs {
public final static char scopeLhs[] = {
- 62,60,5,62,26,26,60,53,106,44,
+ 62,60,5,62,26,26,60,53,107,44,
26,39,44,26,66,6,5,5,19,99,
- 98,42,26,36,3,68,66,107,5,66,
+ 98,42,26,36,3,68,66,108,5,66,
39,37,39
};
};
@@ -804,20 +800,20 @@ public class C99NoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface ScopeRhs {
public final static char scopeRhs[] = {0,
- 139,11,0,96,0,189,104,0,31,136,
+ 139,11,0,96,0,189,104,0,31,135,
0,144,165,104,12,152,0,98,0,0,
148,104,2,135,0,97,0,148,104,2,
0,151,2,0,113,14,179,104,11,0,
113,179,104,14,11,0,113,14,11,0,
113,179,104,11,0,113,11,0,129,0,
- 2,0,152,97,0,2,97,0,148,104,
- 2,129,0,2,0,151,97,0,140,2,
+ 2,0,151,97,0,2,97,0,148,104,
+ 2,129,0,2,0,150,97,0,140,2,
0,144,177,104,12,94,185,44,0,98,
0,144,177,104,12,185,44,0,141,0,
- 99,0,184,104,141,0,104,141,0,142,
+ 99,0,184,104,141,0,104,141,0,141,
99,0,173,104,12,183,94,182,157,0,
- 173,104,12,182,157,0,195,85,0,77,
- 2,101,97,99,0,195,116,138,2,89,
+ 173,104,12,182,157,0,196,85,0,77,
+ 2,101,97,99,0,196,116,138,2,89,
0,53,0,0,138,69,111,0,29,118,
0,164,2,17,0,144,165,104,12,116,
164,2,0,164,2,0,97,3,0,105,
@@ -830,15 +826,15 @@ public class C99NoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface ScopeState {
public final static char scopeState[] = {0,
- 1085,0,1677,1576,1647,0,396,0,1464,1339,
- 1433,1265,1249,1186,1157,0,636,1210,313,0,
- 1269,504,503,369,1249,1186,1157,1639,1450,1536,
- 0,477,378,459,1146,640,574,1326,1313,1169,
- 1423,1252,1409,1398,1387,1357,1563,1548,1537,1434,
- 701,1379,1340,1528,1520,1512,1091,1036,404,1305,
- 1099,1064,1044,1009,989,968,947,615,1119,592,
- 507,926,905,884,863,842,821,800,779,758,
- 737,716,313,667,553,532,417,438,344,0
+ 1495,0,1677,1678,1643,0,367,0,1477,1316,
+ 1397,1232,1256,1216,1187,0,661,666,314,0,
+ 1539,1482,639,339,1256,1216,1187,1629,1427,1483,
+ 0,1454,454,436,346,698,599,1301,1199,668,
+ 1339,1188,1386,1375,1364,1328,1550,1542,1528,1418,
+ 1409,1517,1356,1486,1400,1158,1103,548,379,534,
+ 1166,1131,1111,1076,1056,1035,1014,640,993,617,
+ 509,972,951,930,909,888,867,846,825,804,
+ 783,762,314,741,578,557,415,488,394,0
};
};
public final static char scopeState[] = ScopeState.scopeState;
@@ -856,17 +852,18 @@ public class C99NoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
2,136,135,167,168,157,169,46,45,170,
44,171,172,94,181,138,101,101,103,103,
103,103,102,102,106,105,105,108,107,138,
- 110,109,116,12,142,124,14,113,104,4,
+ 110,109,116,12,142,120,14,113,104,4,
151,104,2,182,158,158,185,158,59,104,
- 124,4,104,113,179,149,148,118,104,150,
+ 120,4,104,113,179,149,148,118,104,150,
104,94,12,94,12,165,104,12,152,4,
- 104,179,14,113,4,2,127,129,104,29,
+ 120,179,14,113,4,2,127,129,104,29,
148,183,104,12,104,144,29,189,52,11,
- 190,104,12,104,149,113,113,140,104,2,
+ 190,104,12,120,104,113,113,140,104,2,
142,12,173,141,174,104,177,94,178,60,
- 139,52,11,104,149,104,104,104,177,144,
- 60,29,139,165,148,186,173,184,59,140,
- 2,104,144,144,29,29,59,142,125
+ 139,52,11,104,104,149,104,104,104,177,
+ 144,60,29,139,165,149,148,186,173,184,
+ 59,140,2,104,144,144,29,29,59,142,
+ 125
};
};
public final static char inSymb[] = InSymb.inSymb;
@@ -987,12 +984,11 @@ public class C99NoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
"shift_expression",
"relational_expression",
"equality_expression",
- "AND_expression",
- "exclusive_OR_expression",
- "inclusive_OR_expression",
- "logical_AND_expression",
- "logical_OR_expression",
- "conditional_expression",
+ "and_expression",
+ "exclusive_or_expression",
+ "inclusive_or_expression",
+ "logical_and_expression",
+ "logical_or_expression",
"assignment_expression",
"expression_list_actual",
"constant_expression",
@@ -1062,20 +1058,20 @@ public class C99NoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public final int getMaxNameLength() { return MAX_NAME_LENGTH; }
public final static int
- NUM_STATES = 209,
+ NUM_STATES = 211,
NT_OFFSET = 93,
- LA_STATE_OFFSET = 2107,
+ LA_STATE_OFFSET = 2083,
MAX_LA = 2,
- NUM_RULES = 312,
- NUM_NONTERMINALS = 123,
- NUM_SYMBOLS = 216,
+ NUM_RULES = 313,
+ NUM_NONTERMINALS = 124,
+ NUM_SYMBOLS = 217,
SEGMENT_SIZE = 8192,
- START_STATE = 1202,
+ START_STATE = 1235,
IDENTIFIER_SYMBOL = 0,
EOFT_SYMBOL = 80,
EOLT_SYMBOL = 80,
- ACCEPT_ACTION = 1785,
- ERROR_ACTION = 1795;
+ ACCEPT_ACTION = 1760,
+ ERROR_ACTION = 1770;
public final static boolean BACKTRACK = true;
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99Parser.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99Parser.java
index 2828af95efd..becfe1cfa73 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99Parser.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99Parser.java
@@ -17,19 +17,24 @@ import lpg.lpgjavaruntime.*;
import java.util.*;
import org.eclipse.cdt.core.dom.ast.*;
+import org.eclipse.cdt.core.dom.lrparser.CPreprocessorAdapter;
+import org.eclipse.cdt.core.dom.lrparser.IDOMTokenMap;
import org.eclipse.cdt.core.dom.lrparser.IParser;
-import org.eclipse.cdt.core.dom.lrparser.IParserActionTokenProvider;
+import org.eclipse.cdt.core.dom.lrparser.ITokenCollector;
import org.eclipse.cdt.core.dom.lrparser.lpgextensions.FixedBacktrackingParser;
+import org.eclipse.cdt.core.dom.lrparser.action.ITokenStream;
import org.eclipse.cdt.core.dom.lrparser.action.ScopedStack;
-
-import org.eclipse.cdt.core.dom.lrparser.action.ITokenMap;
-import org.eclipse.cdt.core.dom.lrparser.action.TokenMap;
+import org.eclipse.cdt.core.parser.IScanner;
+import org.eclipse.cdt.core.dom.parser.IBuiltinBindingsProvider;
+import org.eclipse.cdt.core.index.IIndex;
import org.eclipse.cdt.internal.core.dom.parser.c.CNodeFactory;
import org.eclipse.cdt.core.dom.lrparser.action.c99.C99BuildASTParserAction;
import org.eclipse.cdt.core.dom.lrparser.action.c99.C99SecondaryParserFactory;
-public class C99Parser extends PrsStream implements RuleAction , IParserActionTokenProvider, IParser< IASTTranslationUnit >
+public class C99Parser extends PrsStream implements RuleAction, ITokenStream,
+ ITokenCollector, IParser< IASTTranslationUnit >
+
{
private static ParseTable prs = new C99Parserprs();
private FixedBacktrackingParser btParser;
@@ -167,7 +172,11 @@ public class C99Parser extends PrsStream implements RuleAction , IParserActionTo
private C99BuildASTParserAction action;
private IASTCompletionNode compNode;
-public C99Parser() { // constructor
+
+public C99Parser(IScanner scanner, IDOMTokenMap tokenMap, IBuiltinBindingsProvider builtinBindingsProvider, IIndex index, Set<IParser.Options> options) {
+ initActions(options);
+ action.initializeTranslationUnit(scanner, builtinBindingsProvider, index);
+ CPreprocessorAdapter.runCPreprocessor(scanner, this, tokenMap);
}
private void initActions(Set<IParser.Options> options) {
@@ -186,17 +195,16 @@ public void addToken(IToken token) {
}
-public IASTTranslationUnit parse(Set<IParser.Options> options) {
+public IASTTranslationUnit parse() {
// this has to be done, or... kaboom!
setStreamLength(getSize());
- initActions(options);
final int errorRepairCount = -1; // -1 means full error handling
parser(null, errorRepairCount); // do the actual parse
super.resetTokenStream(); // allow tokens to be garbage collected
compNode = action.getASTCompletionNode(); // the completion node may be null
- return ( IASTTranslationUnit ) action.getParseResult();
+ return ( IASTTranslationUnit ) action.getParseResult();
}
@@ -219,25 +227,6 @@ public String getName() {
}
-
-private ITokenMap tokenMap = null;
-
-public void setTokens(List<IToken> tokens) {
- resetTokenStream();
- addToken(new Token(null, 0, 0, 0)); // dummy token
- for(IToken token : tokens) {
- token.setKind(tokenMap.mapKind(token.getKind()));
- addToken(token);
- }
- addToken(new Token(null, 0, 0, C99Parsersym.TK_EOF_TOKEN));
-}
-
-public C99Parser(IParserActionTokenProvider parser) { // constructor
- tokenMap = new TokenMap(C99Parsersym.orderedTerminalSymbols, parser.getOrderedTerminalSymbols());
-}
-
-
-
public void ruleAction(int ruleNumber)
{
switch (ruleNumber)
@@ -250,1005 +239,1011 @@ public C99Parser(IParserActionTokenProvider parser) { // constructor
}
//
- // Rule 12: literal ::= integer
+ // Rule 2: <empty> ::= $Empty
//
- case 12: { action. consumeExpressionLiteral(IASTLiteralExpression.lk_integer_constant); break;
+ case 2: { action. consumeEmpty(); break;
}
//
- // Rule 13: literal ::= floating
+ // Rule 13: literal ::= integer
//
- case 13: { action. consumeExpressionLiteral(IASTLiteralExpression.lk_float_constant); break;
+ case 13: { action. consumeExpressionLiteral(IASTLiteralExpression.lk_integer_constant); break;
}
//
- // Rule 14: literal ::= charconst
+ // Rule 14: literal ::= floating
//
- case 14: { action. consumeExpressionLiteral(IASTLiteralExpression.lk_char_constant); break;
+ case 14: { action. consumeExpressionLiteral(IASTLiteralExpression.lk_float_constant); break;
}
//
- // Rule 15: literal ::= stringlit
+ // Rule 15: literal ::= charconst
//
- case 15: { action. consumeExpressionLiteral(IASTLiteralExpression.lk_string_literal); break;
+ case 15: { action. consumeExpressionLiteral(IASTLiteralExpression.lk_char_constant); break;
}
//
- // Rule 17: primary_expression ::= primary_expression_id
+ // Rule 16: literal ::= stringlit
//
- case 17: { action. consumeExpressionID(); break;
+ case 16: { action. consumeExpressionLiteral(IASTLiteralExpression.lk_string_literal); break;
}
//
- // Rule 18: primary_expression ::= ( expression )
+ // Rule 18: primary_expression ::= primary_expression_id
//
- case 18: { action. consumeExpressionBracketed(); break;
+ case 18: { action. consumeExpressionID(); break;
}
//
- // Rule 21: postfix_expression ::= postfix_expression [ expression ]
+ // Rule 19: primary_expression ::= ( expression )
//
- case 21: { action. consumeExpressionArraySubscript(); break;
+ case 19: { action. consumeExpressionBracketed(); break;
}
//
- // Rule 22: postfix_expression ::= postfix_expression ( expression_list_opt )
+ // Rule 22: postfix_expression ::= postfix_expression [ expression ]
//
- case 22: { action. consumeExpressionFunctionCall(); break;
+ case 22: { action. consumeExpressionArraySubscript(); break;
}
//
- // Rule 23: postfix_expression ::= postfix_expression . member_name
+ // Rule 23: postfix_expression ::= postfix_expression ( expression_list_opt )
//
- case 23: { action. consumeExpressionFieldReference(false); break;
+ case 23: { action. consumeExpressionFunctionCall(); break;
}
//
- // Rule 24: postfix_expression ::= postfix_expression -> member_name
+ // Rule 24: postfix_expression ::= postfix_expression . member_name
//
- case 24: { action. consumeExpressionFieldReference(true); break;
+ case 24: { action. consumeExpressionFieldReference(false); break;
}
//
- // Rule 25: postfix_expression ::= postfix_expression ++
+ // Rule 25: postfix_expression ::= postfix_expression -> member_name
//
- case 25: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_postFixIncr); break;
+ case 25: { action. consumeExpressionFieldReference(true); break;
}
//
- // Rule 26: postfix_expression ::= postfix_expression --
+ // Rule 26: postfix_expression ::= postfix_expression ++
//
- case 26: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_postFixDecr); break;
+ case 26: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_postFixIncr); break;
}
//
- // Rule 27: postfix_expression ::= ( type_id ) { <openscope-ast> initializer_list comma_opt }
+ // Rule 27: postfix_expression ::= postfix_expression --
//
- case 27: { action. consumeExpressionTypeIdInitializer(); break;
+ case 27: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_postFixDecr); break;
}
//
- // Rule 32: unary_expression ::= ++ unary_expression
+ // Rule 28: postfix_expression ::= ( type_id ) { <openscope-ast> initializer_list comma_opt }
//
- case 32: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_prefixIncr); break;
+ case 28: { action. consumeExpressionTypeIdInitializer(); break;
}
//
- // Rule 33: unary_expression ::= -- unary_expression
+ // Rule 33: unary_expression ::= ++ unary_expression
//
- case 33: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_prefixDecr); break;
+ case 33: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_prefixIncr); break;
}
//
- // Rule 34: unary_expression ::= & cast_expression
+ // Rule 34: unary_expression ::= -- unary_expression
//
- case 34: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_amper); break;
+ case 34: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_prefixDecr); break;
}
//
- // Rule 35: unary_expression ::= * cast_expression
+ // Rule 35: unary_expression ::= & cast_expression
//
- case 35: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_star); break;
+ case 35: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_amper); break;
}
//
- // Rule 36: unary_expression ::= + cast_expression
+ // Rule 36: unary_expression ::= * cast_expression
//
- case 36: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_plus); break;
+ case 36: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_star); break;
}
//
- // Rule 37: unary_expression ::= - cast_expression
+ // Rule 37: unary_expression ::= + cast_expression
//
- case 37: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_minus); break;
+ case 37: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_plus); break;
}
//
- // Rule 38: unary_expression ::= ~ cast_expression
+ // Rule 38: unary_expression ::= - cast_expression
//
- case 38: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_tilde); break;
+ case 38: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_minus); break;
}
//
- // Rule 39: unary_expression ::= ! cast_expression
+ // Rule 39: unary_expression ::= ~ cast_expression
//
- case 39: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_not); break;
+ case 39: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_tilde); break;
}
//
- // Rule 40: unary_expression ::= sizeof unary_expression
+ // Rule 40: unary_expression ::= ! cast_expression
//
- case 40: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_sizeof); break;
+ case 40: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_not); break;
}
//
- // Rule 41: unary_expression ::= sizeof ( type_id )
+ // Rule 41: unary_expression ::= sizeof unary_expression
//
- case 41: { action. consumeExpressionTypeId(IASTTypeIdExpression.op_sizeof); break;
+ case 41: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_sizeof); break;
}
//
- // Rule 43: cast_expression ::= ( type_id ) cast_expression
+ // Rule 42: unary_expression ::= sizeof ( type_id )
//
- case 43: { action. consumeExpressionCast(IASTCastExpression.op_cast); break;
+ case 42: { action. consumeExpressionTypeId(IASTTypeIdExpression.op_sizeof); break;
}
//
- // Rule 45: multiplicative_expression ::= multiplicative_expression * cast_expression
+ // Rule 44: cast_expression ::= ( type_id ) cast_expression
//
- case 45: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_multiply); break;
+ case 44: { action. consumeExpressionCast(IASTCastExpression.op_cast); break;
}
//
- // Rule 46: multiplicative_expression ::= multiplicative_expression / cast_expression
+ // Rule 46: multiplicative_expression ::= multiplicative_expression * cast_expression
//
- case 46: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_divide); break;
+ case 46: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_multiply); break;
}
//
- // Rule 47: multiplicative_expression ::= multiplicative_expression % cast_expression
+ // Rule 47: multiplicative_expression ::= multiplicative_expression / cast_expression
//
- case 47: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_modulo); break;
+ case 47: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_divide); break;
}
//
- // Rule 49: additive_expression ::= additive_expression + multiplicative_expression
+ // Rule 48: multiplicative_expression ::= multiplicative_expression % cast_expression
//
- case 49: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_plus); break;
+ case 48: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_modulo); break;
}
//
- // Rule 50: additive_expression ::= additive_expression - multiplicative_expression
+ // Rule 50: additive_expression ::= additive_expression + multiplicative_expression
//
- case 50: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_minus); break;
+ case 50: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_plus); break;
}
//
- // Rule 52: shift_expression ::= shift_expression << additive_expression
+ // Rule 51: additive_expression ::= additive_expression - multiplicative_expression
//
- case 52: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_shiftLeft); break;
+ case 51: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_minus); break;
}
//
- // Rule 53: shift_expression ::= shift_expression >> additive_expression
+ // Rule 53: shift_expression ::= shift_expression << additive_expression
//
- case 53: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_shiftRight); break;
+ case 53: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_shiftLeft); break;
}
//
- // Rule 55: relational_expression ::= relational_expression < shift_expression
+ // Rule 54: shift_expression ::= shift_expression >> additive_expression
//
- case 55: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_lessThan); break;
+ case 54: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_shiftRight); break;
}
//
- // Rule 56: relational_expression ::= relational_expression > shift_expression
+ // Rule 56: relational_expression ::= relational_expression < shift_expression
//
- case 56: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_greaterThan); break;
+ case 56: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_lessThan); break;
}
//
- // Rule 57: relational_expression ::= relational_expression <= shift_expression
+ // Rule 57: relational_expression ::= relational_expression > shift_expression
//
- case 57: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_lessEqual); break;
+ case 57: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_greaterThan); break;
}
//
- // Rule 58: relational_expression ::= relational_expression >= shift_expression
+ // Rule 58: relational_expression ::= relational_expression <= shift_expression
//
- case 58: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_greaterEqual); break;
+ case 58: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_lessEqual); break;
}
//
- // Rule 60: equality_expression ::= equality_expression == relational_expression
+ // Rule 59: relational_expression ::= relational_expression >= shift_expression
//
- case 60: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_equals); break;
+ case 59: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_greaterEqual); break;
}
//
- // Rule 61: equality_expression ::= equality_expression != relational_expression
+ // Rule 61: equality_expression ::= equality_expression == relational_expression
//
- case 61: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_notequals); break;
+ case 61: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_equals); break;
}
//
- // Rule 63: AND_expression ::= AND_expression & equality_expression
+ // Rule 62: equality_expression ::= equality_expression != relational_expression
//
- case 63: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_binaryAnd); break;
+ case 62: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_notequals); break;
}
//
- // Rule 65: exclusive_OR_expression ::= exclusive_OR_expression ^ AND_expression
+ // Rule 64: and_expression ::= and_expression & equality_expression
//
- case 65: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_binaryXor); break;
+ case 64: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_binaryAnd); break;
}
//
- // Rule 67: inclusive_OR_expression ::= inclusive_OR_expression | exclusive_OR_expression
+ // Rule 66: exclusive_or_expression ::= exclusive_or_expression ^ and_expression
//
- case 67: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_binaryOr); break;
+ case 66: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_binaryXor); break;
}
//
- // Rule 69: logical_AND_expression ::= logical_AND_expression && inclusive_OR_expression
+ // Rule 68: inclusive_or_expression ::= inclusive_or_expression | exclusive_or_expression
//
- case 69: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_logicalAnd); break;
+ case 68: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_binaryOr); break;
}
//
- // Rule 71: logical_OR_expression ::= logical_OR_expression || logical_AND_expression
+ // Rule 70: logical_and_expression ::= logical_and_expression && inclusive_or_expression
//
- case 71: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_logicalOr); break;
+ case 70: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_logicalAnd); break;
}
//
- // Rule 73: conditional_expression ::= logical_OR_expression ? expression : conditional_expression
+ // Rule 72: logical_or_expression ::= logical_or_expression || logical_and_expression
//
- case 73: { action. consumeExpressionConditional(); break;
+ case 72: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_logicalOr); break;
}
//
- // Rule 75: assignment_expression ::= unary_expression = assignment_expression
+ // Rule 74: conditional_expression ::= logical_or_expression ? expression : assignment_expression
//
- case 75: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_assign); break;
+ case 74: { action. consumeExpressionConditional(); break;
}
//
- // Rule 76: assignment_expression ::= unary_expression *= assignment_expression
+ // Rule 76: assignment_expression ::= unary_expression = assignment_expression
//
- case 76: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_multiplyAssign); break;
+ case 76: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_assign); break;
}
//
- // Rule 77: assignment_expression ::= unary_expression /= assignment_expression
+ // Rule 77: assignment_expression ::= unary_expression *= assignment_expression
//
- case 77: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_divideAssign); break;
+ case 77: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_multiplyAssign); break;
}
//
- // Rule 78: assignment_expression ::= unary_expression %= assignment_expression
+ // Rule 78: assignment_expression ::= unary_expression /= assignment_expression
//
- case 78: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_moduloAssign); break;
+ case 78: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_divideAssign); break;
}
//
- // Rule 79: assignment_expression ::= unary_expression += assignment_expression
+ // Rule 79: assignment_expression ::= unary_expression %= assignment_expression
//
- case 79: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_plusAssign); break;
+ case 79: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_moduloAssign); break;
}
//
- // Rule 80: assignment_expression ::= unary_expression -= assignment_expression
+ // Rule 80: assignment_expression ::= unary_expression += assignment_expression
//
- case 80: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_minusAssign); break;
+ case 80: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_plusAssign); break;
}
//
- // Rule 81: assignment_expression ::= unary_expression <<= assignment_expression
+ // Rule 81: assignment_expression ::= unary_expression -= assignment_expression
//
- case 81: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_shiftLeftAssign); break;
+ case 81: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_minusAssign); break;
}
//
- // Rule 82: assignment_expression ::= unary_expression >>= assignment_expression
+ // Rule 82: assignment_expression ::= unary_expression <<= assignment_expression
//
- case 82: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_shiftRightAssign); break;
+ case 82: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_shiftLeftAssign); break;
}
//
- // Rule 83: assignment_expression ::= unary_expression &= assignment_expression
+ // Rule 83: assignment_expression ::= unary_expression >>= assignment_expression
//
- case 83: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_binaryAndAssign); break;
+ case 83: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_shiftRightAssign); break;
}
//
- // Rule 84: assignment_expression ::= unary_expression ^= assignment_expression
+ // Rule 84: assignment_expression ::= unary_expression &= assignment_expression
//
- case 84: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_binaryXorAssign); break;
+ case 84: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_binaryAndAssign); break;
}
//
- // Rule 85: assignment_expression ::= unary_expression |= assignment_expression
+ // Rule 85: assignment_expression ::= unary_expression ^= assignment_expression
//
- case 85: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_binaryOrAssign); break;
+ case 85: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_binaryXorAssign); break;
}
//
- // Rule 88: expression_list ::= <openscope-ast> expression_list_actual
+ // Rule 86: assignment_expression ::= unary_expression |= assignment_expression
//
- case 88: { action. consumeExpressionList(); break;
+ case 86: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_binaryOrAssign); break;
}
//
- // Rule 90: expression_list_opt ::= $Empty
+ // Rule 89: expression_list ::= <openscope-ast> expression_list_actual
//
- case 90: { action. consumeEmpty(); break;
+ case 89: { action. consumeExpressionList(); break;
}
//
- // Rule 100: statement ::= ERROR_TOKEN
+ // Rule 91: expression_list_opt ::= $Empty
//
- case 100: { action. consumeStatementProblem(); break;
+ case 91: { action. consumeEmpty(); break;
}
//
- // Rule 101: labeled_statement ::= identifier_token : statement
+ // Rule 101: statement ::= ERROR_TOKEN
//
- case 101: { action. consumeStatementLabeled(); break;
+ case 101: { action. consumeStatementProblem(); break;
}
//
- // Rule 102: labeled_statement ::= case constant_expression : statement
+ // Rule 102: labeled_statement ::= identifier_token : statement
//
- case 102: { action. consumeStatementCase(); break;
+ case 102: { action. consumeStatementLabeled(); break;
}
//
- // Rule 103: labeled_statement ::= default : statement
+ // Rule 103: labeled_statement ::= case constant_expression : statement
//
- case 103: { action. consumeStatementDefault(); break;
+ case 103: { action. consumeStatementCase(); break;
}
//
- // Rule 104: compound_statement ::= { }
+ // Rule 104: labeled_statement ::= default : statement
//
- case 104: { action. consumeStatementCompoundStatement(false); break;
+ case 104: { action. consumeStatementDefault(); break;
}
//
- // Rule 105: compound_statement ::= { <openscope-ast> block_item_list }
+ // Rule 105: compound_statement ::= { }
//
- case 105: { action. consumeStatementCompoundStatement(true); break;
+ case 105: { action. consumeStatementCompoundStatement(false); break;
}
//
- // Rule 109: block_item ::= declaration
+ // Rule 106: compound_statement ::= { <openscope-ast> block_item_list }
//
- case 109: { action. consumeStatementDeclarationWithDisambiguation(); break;
+ case 106: { action. consumeStatementCompoundStatement(true); break;
}
//
- // Rule 110: expression_statement ::= ;
+ // Rule 110: block_item ::= declaration
//
- case 110: { action. consumeStatementNull(); break;
+ case 110: { action. consumeStatementDeclarationWithDisambiguation(); break;
}
//
- // Rule 111: expression_statement ::= expression_in_statement ;
+ // Rule 111: expression_statement ::= ;
//
- case 111: { action. consumeStatementExpression(); break;
+ case 111: { action. consumeStatementNull(); break;
}
//
- // Rule 112: selection_statement ::= if ( expression ) statement
+ // Rule 112: expression_statement ::= expression_in_statement ;
//
- case 112: { action. consumeStatementIf(false); break;
+ case 112: { action. consumeStatementExpression(); break;
}
//
- // Rule 113: selection_statement ::= if ( expression ) statement else statement
+ // Rule 113: selection_statement ::= if ( expression ) statement
//
- case 113: { action. consumeStatementIf(true); break;
+ case 113: { action. consumeStatementIf(false); break;
}
//
- // Rule 114: selection_statement ::= switch ( expression ) statement
+ // Rule 114: selection_statement ::= if ( expression ) statement else statement
//
- case 114: { action. consumeStatementSwitch(); break;
+ case 114: { action. consumeStatementIf(true); break;
}
//
- // Rule 116: expression_opt ::= $Empty
+ // Rule 115: selection_statement ::= switch ( expression ) statement
//
- case 116: { action. consumeEmpty(); break;
+ case 115: { action. consumeStatementSwitch(); break;
}
//
- // Rule 117: iteration_statement ::= do statement while ( expression ) ;
+ // Rule 117: expression_opt ::= $Empty
//
- case 117: { action. consumeStatementDoLoop(); break;
+ case 117: { action. consumeEmpty(); break;
}
//
- // Rule 118: iteration_statement ::= while ( expression ) statement
+ // Rule 118: iteration_statement ::= do statement while ( expression ) ;
//
- case 118: { action. consumeStatementWhileLoop(); break;
+ case 118: { action. consumeStatementDoLoop(); break;
}
//
- // Rule 119: iteration_statement ::= for ( expression_opt ; expression_opt ; expression_opt ) statement
+ // Rule 119: iteration_statement ::= while ( expression ) statement
//
- case 119: { action. consumeStatementForLoop(); break;
+ case 119: { action. consumeStatementWhileLoop(); break;
}
//
- // Rule 120: iteration_statement ::= for ( declaration expression_opt ; expression_opt ) statement
+ // Rule 120: iteration_statement ::= for ( expression_opt ; expression_opt ; expression_opt ) statement
//
case 120: { action. consumeStatementForLoop(); break;
}
//
- // Rule 121: jump_statement ::= goto identifier_token ;
+ // Rule 121: iteration_statement ::= for ( declaration expression_opt ; expression_opt ) statement
//
- case 121: { action. consumeStatementGoto(); break;
+ case 121: { action. consumeStatementForLoop(); break;
}
//
- // Rule 122: jump_statement ::= continue ;
+ // Rule 122: jump_statement ::= goto identifier_token ;
//
- case 122: { action. consumeStatementContinue(); break;
+ case 122: { action. consumeStatementGoto(); break;
}
//
- // Rule 123: jump_statement ::= break ;
+ // Rule 123: jump_statement ::= continue ;
//
- case 123: { action. consumeStatementBreak(); break;
+ case 123: { action. consumeStatementContinue(); break;
}
//
- // Rule 124: jump_statement ::= return ;
+ // Rule 124: jump_statement ::= break ;
//
- case 124: { action. consumeStatementReturn(false); break;
+ case 124: { action. consumeStatementBreak(); break;
}
//
- // Rule 125: jump_statement ::= return expression ;
+ // Rule 125: jump_statement ::= return ;
//
- case 125: { action. consumeStatementReturn(true); break;
+ case 125: { action. consumeStatementReturn(false); break;
}
//
- // Rule 126: declaration ::= declaration_specifiers ;
+ // Rule 126: jump_statement ::= return expression ;
//
- case 126: { action. consumeDeclarationSimple(false); break;
+ case 126: { action. consumeStatementReturn(true); break;
}
//
- // Rule 127: declaration ::= declaration_specifiers <openscope-ast> init_declarator_list ;
+ // Rule 127: declaration ::= declaration_specifiers ;
//
- case 127: { action. consumeDeclarationSimple(true); break;
+ case 127: { action. consumeDeclarationSimple(false); break;
}
//
- // Rule 128: declaration_specifiers ::= <openscope-ast> simple_declaration_specifiers
+ // Rule 128: declaration ::= declaration_specifiers <openscope-ast> init_declarator_list ;
//
- case 128: { action. consumeDeclarationSpecifiersSimple(); break;
+ case 128: { action. consumeDeclarationSimple(true); break;
}
//
- // Rule 129: declaration_specifiers ::= <openscope-ast> struct_or_union_declaration_specifiers
+ // Rule 129: declaration_specifiers ::= <openscope-ast> simple_declaration_specifiers
//
- case 129: { action. consumeDeclarationSpecifiersStructUnionEnum(); break;
+ case 129: { action. consumeDeclarationSpecifiersSimple(); break;
}
//
- // Rule 130: declaration_specifiers ::= <openscope-ast> elaborated_declaration_specifiers
+ // Rule 130: declaration_specifiers ::= <openscope-ast> struct_or_union_declaration_specifiers
//
case 130: { action. consumeDeclarationSpecifiersStructUnionEnum(); break;
}
//
- // Rule 131: declaration_specifiers ::= <openscope-ast> enum_declaration_specifiers
+ // Rule 131: declaration_specifiers ::= <openscope-ast> elaborated_declaration_specifiers
//
case 131: { action. consumeDeclarationSpecifiersStructUnionEnum(); break;
}
//
- // Rule 132: declaration_specifiers ::= <openscope-ast> typdef_name_declaration_specifiers
+ // Rule 132: declaration_specifiers ::= <openscope-ast> enum_declaration_specifiers
//
- case 132: { action. consumeDeclarationSpecifiersTypedefName(); break;
+ case 132: { action. consumeDeclarationSpecifiersStructUnionEnum(); break;
}
//
- // Rule 157: init_declarator ::= complete_declarator = initializer
+ // Rule 133: declaration_specifiers ::= <openscope-ast> typdef_name_declaration_specifiers
//
- case 157: { action. consumeDeclaratorWithInitializer(true); break;
+ case 133: { action. consumeDeclarationSpecifiersTypedefName(); break;
}
//
- // Rule 159: storage_class_specifier ::= storage_class_specifier_token
+ // Rule 158: init_declarator ::= complete_declarator = initializer
//
- case 159: { action. consumeToken(); break;
+ case 158: { action. consumeDeclaratorWithInitializer(true); break;
}
//
- // Rule 165: simple_type_specifier ::= simple_type_specifier_token
+ // Rule 160: storage_class_specifier ::= storage_class_specifier_token
//
- case 165: { action. consumeToken(); break;
+ case 160: { action. consumeToken(); break;
}
//
- // Rule 178: type_name_specifier ::= identifier_token
+ // Rule 166: simple_type_specifier ::= simple_type_specifier_token
//
- case 178: { action. consumeToken(); break;
+ case 166: { action. consumeToken(); break;
}
//
- // Rule 179: struct_or_union_specifier ::= struct_or_union struct_or_union_specifier_hook { <openscope-ast> struct_declaration_list_opt }
+ // Rule 179: type_name_specifier ::= identifier_token
//
- case 179: { action. consumeTypeSpecifierComposite(false); break;
+ case 179: { action. consumeToken(); break;
}
//
- // Rule 180: struct_or_union_specifier ::= struct_or_union struct_or_union_specifier_hook identifier_token struct_or_union_specifier_suffix_hook { <openscope-ast> struct_declaration_list_opt }
+ // Rule 180: struct_or_union_specifier ::= struct_or_union struct_or_union_specifier_hook { <openscope-ast> struct_declaration_list_opt }
//
- case 180: { action. consumeTypeSpecifierComposite(true); break;
+ case 180: { action. consumeTypeSpecifierComposite(false); break;
}
//
- // Rule 185: elaborated_specifier ::= struct elaborated_specifier_hook identifier_token
+ // Rule 181: struct_or_union_specifier ::= struct_or_union struct_or_union_specifier_hook identifier_token struct_or_union_specifier_suffix_hook { <openscope-ast> struct_declaration_list_opt }
//
- case 185: { action. consumeTypeSpecifierElaborated(IASTCompositeTypeSpecifier.k_struct); break;
+ case 181: { action. consumeTypeSpecifierComposite(true); break;
}
//
- // Rule 186: elaborated_specifier ::= union elaborated_specifier_hook identifier_token
+ // Rule 186: elaborated_specifier ::= struct elaborated_specifier_hook identifier_token
//
- case 186: { action. consumeTypeSpecifierElaborated(IASTCompositeTypeSpecifier.k_union); break;
+ case 186: { action. consumeTypeSpecifierElaborated(IASTCompositeTypeSpecifier.k_struct); break;
}
//
- // Rule 187: elaborated_specifier ::= enum elaborated_specifier_hook identifier_token
+ // Rule 187: elaborated_specifier ::= union elaborated_specifier_hook identifier_token
//
- case 187: { action. consumeTypeSpecifierElaborated(IASTElaboratedTypeSpecifier.k_enum); break;
+ case 187: { action. consumeTypeSpecifierElaborated(IASTCompositeTypeSpecifier.k_union); break;
}
//
- // Rule 193: struct_declaration ::= specifier_qualifier_list <openscope-ast> struct_declarator_list ;
+ // Rule 188: elaborated_specifier ::= enum elaborated_specifier_hook identifier_token
//
- case 193: { action. consumeStructDeclaration(true); break;
+ case 188: { action. consumeTypeSpecifierElaborated(IASTElaboratedTypeSpecifier.k_enum); break;
}
//
- // Rule 194: struct_declaration ::= specifier_qualifier_list ;
+ // Rule 194: struct_declaration ::= specifier_qualifier_list <openscope-ast> struct_declarator_list ;
//
- case 194: { action. consumeStructDeclaration(false); break;
+ case 194: { action. consumeStructDeclaration(true); break;
}
//
- // Rule 195: struct_declaration ::= ERROR_TOKEN
+ // Rule 195: struct_declaration ::= specifier_qualifier_list ;
//
- case 195: { action. consumeDeclarationProblem(); break;
+ case 195: { action. consumeStructDeclaration(false); break;
}
//
- // Rule 201: struct_declarator ::= : constant_expression
+ // Rule 196: struct_declaration ::= ERROR_TOKEN
//
- case 201: { action. consumeBitField(false); break;
+ case 196: { action. consumeDeclarationProblem(); break;
}
//
- // Rule 202: struct_declarator ::= declarator : constant_expression
+ // Rule 202: struct_declarator ::= : constant_expression
//
- case 202: { action. consumeBitField(true); break;
+ case 202: { action. consumeBitField(false); break;
}
//
- // Rule 203: enum_specifier ::= enum enum_specifier_hook { <openscope-ast> enumerator_list_opt comma_opt }
+ // Rule 203: struct_declarator ::= declarator : constant_expression
//
- case 203: { action. consumeTypeSpecifierEnumeration(false); break;
+ case 203: { action. consumeBitField(true); break;
}
//
- // Rule 204: enum_specifier ::= enum enum_specifier_hook identifier_token { <openscope-ast> enumerator_list_opt comma_opt }
+ // Rule 204: enum_specifier ::= enum enum_specifier_hook { <openscope-ast> enumerator_list_opt comma_opt }
//
- case 204: { action. consumeTypeSpecifierEnumeration(true); break;
+ case 204: { action. consumeTypeSpecifierEnumeration(false); break;
}
//
- // Rule 210: enumerator ::= identifier_token
+ // Rule 205: enum_specifier ::= enum enum_specifier_hook identifier_token { <openscope-ast> enumerator_list_opt comma_opt }
//
- case 210: { action. consumeEnumerator(false); break;
+ case 205: { action. consumeTypeSpecifierEnumeration(true); break;
}
//
- // Rule 211: enumerator ::= identifier_token = constant_expression
+ // Rule 211: enumerator ::= identifier_token
//
- case 211: { action. consumeEnumerator(true); break;
+ case 211: { action. consumeEnumerator(false); break;
}
//
- // Rule 212: type_qualifier ::= type_qualifier_token
+ // Rule 212: enumerator ::= identifier_token = constant_expression
//
- case 212: { action. consumeToken(); break;
+ case 212: { action. consumeEnumerator(true); break;
}
//
- // Rule 216: function_specifier ::= inline
+ // Rule 213: type_qualifier ::= type_qualifier_token
//
- case 216: { action. consumeToken(); break;
+ case 213: { action. consumeToken(); break;
}
//
- // Rule 218: declarator ::= <openscope-ast> pointer_seq direct_declarator
+ // Rule 217: function_specifier ::= inline
//
- case 218: { action. consumeDeclaratorWithPointer(true); break;
+ case 217: { action. consumeToken(); break;
}
//
- // Rule 223: basic_direct_declarator ::= declarator_id_name
+ // Rule 219: declarator ::= <openscope-ast> pointer_seq direct_declarator
//
- case 223: { action. consumeDirectDeclaratorIdentifier(); break;
+ case 219: { action. consumeDeclaratorWithPointer(true); break;
}
//
- // Rule 224: basic_direct_declarator ::= ( declarator )
+ // Rule 224: basic_direct_declarator ::= declarator_id_name
//
- case 224: { action. consumeDirectDeclaratorBracketed(); break;
+ case 224: { action. consumeDirectDeclaratorIdentifier(); break;
}
//
- // Rule 225: declarator_id_name ::= identifier
+ // Rule 225: basic_direct_declarator ::= ( declarator )
//
- case 225: { action. consumeIdentifierName(); break;
+ case 225: { action. consumeDirectDeclaratorBracketed(); break;
}
//
- // Rule 226: array_direct_declarator ::= basic_direct_declarator array_modifier
+ // Rule 226: declarator_id_name ::= identifier
//
- case 226: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
+ case 226: { action. consumeIdentifierName(); break;
}
//
- // Rule 227: array_direct_declarator ::= array_direct_declarator array_modifier
+ // Rule 227: array_direct_declarator ::= basic_direct_declarator array_modifier
//
case 227: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
}
//
- // Rule 229: function_direct_declarator ::= basic_direct_declarator ( <openscope-ast> parameter_type_list )
+ // Rule 228: array_direct_declarator ::= array_direct_declarator array_modifier
//
- case 229: { action. consumeDirectDeclaratorFunctionDeclarator(true, true); break;
+ case 228: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
}
//
- // Rule 230: function_direct_declarator ::= basic_direct_declarator ( )
+ // Rule 230: function_direct_declarator ::= basic_direct_declarator ( <openscope-ast> parameter_type_list )
//
- case 230: { action. consumeDirectDeclaratorFunctionDeclarator(true, false); break;
+ case 230: { action. consumeDirectDeclaratorFunctionDeclarator(true, true); break;
}
//
- // Rule 232: function_declarator ::= <openscope-ast> pointer_seq function_direct_declarator
+ // Rule 231: function_direct_declarator ::= basic_direct_declarator ( )
//
- case 232: { action. consumeDeclaratorWithPointer(true); break;
+ case 231: { action. consumeDirectDeclaratorFunctionDeclarator(true, false); break;
}
//
- // Rule 233: knr_direct_declarator ::= basic_direct_declarator ( <openscope-ast> identifier_list )
+ // Rule 233: function_declarator ::= <openscope-ast> pointer_seq function_direct_declarator
//
- case 233: { action. consumeDirectDeclaratorFunctionDeclaratorKnR(); break;
+ case 233: { action. consumeDeclaratorWithPointer(true); break;
}
//
- // Rule 235: knr_function_declarator ::= <openscope-ast> pointer_seq knr_direct_declarator
+ // Rule 234: knr_direct_declarator ::= basic_direct_declarator ( <openscope-ast> identifier_list )
//
- case 235: { action. consumeDeclaratorWithPointer(true); break;
+ case 234: { action. consumeDirectDeclaratorFunctionDeclaratorKnR(); break;
}
//
- // Rule 236: identifier_list ::= identifier
+ // Rule 236: knr_function_declarator ::= <openscope-ast> pointer_seq knr_direct_declarator
//
- case 236: { action. consumeIdentifierKnR(); break;
+ case 236: { action. consumeDeclaratorWithPointer(true); break;
}
//
- // Rule 237: identifier_list ::= identifier_list , identifier
+ // Rule 237: identifier_list ::= identifier
//
case 237: { action. consumeIdentifierKnR(); break;
}
//
- // Rule 238: array_modifier ::= [ ]
+ // Rule 238: identifier_list ::= identifier_list , identifier
//
- case 238: { action. consumeDirectDeclaratorArrayModifier(false); break;
+ case 238: { action. consumeIdentifierKnR(); break;
}
//
- // Rule 239: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers ]
+ // Rule 239: array_modifier ::= [ ]
//
- case 239: { action. consumeDirectDeclaratorModifiedArrayModifier(false, false, true, false); break;
+ case 239: { action. consumeDirectDeclaratorArrayModifier(false); break;
}
//
- // Rule 240: array_modifier ::= [ assignment_expression ]
+ // Rule 240: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers ]
//
- case 240: { action. consumeDirectDeclaratorArrayModifier(true); break;
+ case 240: { action. consumeDirectDeclaratorModifiedArrayModifier(false, false, true, false); break;
}
//
- // Rule 241: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers assignment_expression ]
+ // Rule 241: array_modifier ::= [ assignment_expression ]
//
- case 241: { action. consumeDirectDeclaratorModifiedArrayModifier(false, false, true, true); break;
+ case 241: { action. consumeDirectDeclaratorArrayModifier(true); break;
}
//
- // Rule 242: array_modifier ::= [ static assignment_expression ]
+ // Rule 242: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers assignment_expression ]
//
- case 242: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, false, true); break;
+ case 242: { action. consumeDirectDeclaratorModifiedArrayModifier(false, false, true, true); break;
}
//
- // Rule 243: array_modifier ::= [ static <openscope-ast> array_modifier_type_qualifiers assignment_expression ]
+ // Rule 243: array_modifier ::= [ static assignment_expression ]
//
- case 243: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, true, true); break;
+ case 243: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, false, true); break;
}
//
- // Rule 244: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers static assignment_expression ]
+ // Rule 244: array_modifier ::= [ static <openscope-ast> array_modifier_type_qualifiers assignment_expression ]
//
case 244: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, true, true); break;
}
//
- // Rule 245: array_modifier ::= [ * ]
+ // Rule 245: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers static assignment_expression ]
//
- case 245: { action. consumeDirectDeclaratorModifiedArrayModifier(false, true, false, false); break;
+ case 245: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, true, true); break;
}
//
- // Rule 246: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers * ]
+ // Rule 246: array_modifier ::= [ * ]
//
- case 246: { action. consumeDirectDeclaratorModifiedArrayModifier(false, true, true, false); break;
+ case 246: { action. consumeDirectDeclaratorModifiedArrayModifier(false, true, false, false); break;
}
//
- // Rule 248: pointer_seq ::= pointer_hook *
+ // Rule 247: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers * ]
//
- case 248: { action. consumePointer(); break;
+ case 247: { action. consumeDirectDeclaratorModifiedArrayModifier(false, true, true, false); break;
}
//
- // Rule 249: pointer_seq ::= pointer_seq pointer_hook *
+ // Rule 249: pointer_seq ::= pointer_hook * pointer_hook
//
case 249: { action. consumePointer(); break;
}
//
- // Rule 250: pointer_seq ::= pointer_hook * <openscope-ast> type_qualifier_list
+ // Rule 250: pointer_seq ::= pointer_seq pointer_hook * pointer_hook
//
- case 250: { action. consumePointerTypeQualifierList(); break;
+ case 250: { action. consumePointer(); break;
}
//
- // Rule 251: pointer_seq ::= pointer_seq pointer_hook * <openscope-ast> type_qualifier_list
+ // Rule 251: pointer_seq ::= pointer_hook * pointer_hook <openscope-ast> type_qualifier_list
//
case 251: { action. consumePointerTypeQualifierList(); break;
}
//
- // Rule 255: parameter_type_list ::= parameter_list
+ // Rule 252: pointer_seq ::= pointer_seq pointer_hook * pointer_hook <openscope-ast> type_qualifier_list
//
- case 255: { action. consumeEmpty(); break;
+ case 252: { action. consumePointerTypeQualifierList(); break;
}
//
- // Rule 256: parameter_type_list ::= parameter_list , ...
+ // Rule 256: parameter_type_list ::= parameter_list
//
- case 256: { action. consumePlaceHolder(); break;
+ case 256: { action. consumeEmpty(); break;
}
//
- // Rule 257: parameter_type_list ::= ...
+ // Rule 257: parameter_type_list ::= parameter_list , ...
//
case 257: { action. consumePlaceHolder(); break;
}
//
- // Rule 260: parameter_declaration ::= declaration_specifiers complete_parameter_declarator
+ // Rule 258: parameter_type_list ::= ...
//
- case 260: { action. consumeParameterDeclaration(); break;
+ case 258: { action. consumePlaceHolder(); break;
}
//
- // Rule 261: parameter_declaration ::= declaration_specifiers
+ // Rule 261: parameter_declaration ::= declaration_specifiers complete_parameter_declarator
//
- case 261: { action. consumeParameterDeclarationWithoutDeclarator(); break;
+ case 261: { action. consumeParameterDeclaration(); break;
}
//
- // Rule 264: type_id ::= specifier_qualifier_list
+ // Rule 262: parameter_declaration ::= declaration_specifiers
//
- case 264: { action. consumeTypeId(false); break;
+ case 262: { action. consumeParameterDeclarationWithoutDeclarator(); break;
}
//
- // Rule 265: type_id ::= specifier_qualifier_list abstract_declarator
+ // Rule 265: type_id ::= specifier_qualifier_list
//
- case 265: { action. consumeTypeId(true); break;
+ case 265: { action. consumeTypeId(false); break;
}
//
- // Rule 267: abstract_declarator ::= <openscope-ast> pointer_seq
+ // Rule 266: type_id ::= specifier_qualifier_list abstract_declarator
//
- case 267: { action. consumeDeclaratorWithPointer(false); break;
+ case 266: { action. consumeTypeId(true); break;
}
//
- // Rule 268: abstract_declarator ::= <openscope-ast> pointer_seq direct_abstract_declarator
+ // Rule 268: abstract_declarator ::= <openscope-ast> pointer_seq
//
case 268: { action. consumeDeclaratorWithPointer(false); break;
}
//
- // Rule 272: basic_direct_abstract_declarator ::= ( abstract_declarator )
+ // Rule 269: abstract_declarator ::= <openscope-ast> pointer_seq direct_abstract_declarator
//
- case 272: { action. consumeDirectDeclaratorBracketed(); break;
+ case 269: { action. consumeDeclaratorWithPointer(false); break;
}
//
- // Rule 273: array_direct_abstract_declarator ::= array_modifier
+ // Rule 273: basic_direct_abstract_declarator ::= ( abstract_declarator )
//
- case 273: { action. consumeDirectDeclaratorArrayDeclarator(false); break;
+ case 273: { action. consumeDirectDeclaratorBracketed(); break;
}
//
- // Rule 274: array_direct_abstract_declarator ::= array_direct_abstract_declarator array_modifier
+ // Rule 274: array_direct_abstract_declarator ::= array_modifier
//
- case 274: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
+ case 274: { action. consumeDirectDeclaratorArrayDeclarator(false); break;
}
//
- // Rule 275: array_direct_abstract_declarator ::= basic_direct_abstract_declarator array_modifier
+ // Rule 275: array_direct_abstract_declarator ::= array_direct_abstract_declarator array_modifier
//
case 275: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
}
//
- // Rule 276: function_direct_abstract_declarator ::= ( )
+ // Rule 276: array_direct_abstract_declarator ::= basic_direct_abstract_declarator array_modifier
+ //
+ case 276: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
+ }
+
+ //
+ // Rule 277: function_direct_abstract_declarator ::= ( )
//
- case 276: { action. consumeDirectDeclaratorFunctionDeclarator(false, false); break;
+ case 277: { action. consumeDirectDeclaratorFunctionDeclarator(false, false); break;
}
//
- // Rule 277: function_direct_abstract_declarator ::= basic_direct_abstract_declarator ( )
+ // Rule 278: function_direct_abstract_declarator ::= basic_direct_abstract_declarator ( )
//
- case 277: { action. consumeDirectDeclaratorFunctionDeclarator(true, false); break;
+ case 278: { action. consumeDirectDeclaratorFunctionDeclarator(true, false); break;
}
//
- // Rule 278: function_direct_abstract_declarator ::= ( <openscope-ast> parameter_type_list )
+ // Rule 279: function_direct_abstract_declarator ::= ( <openscope-ast> parameter_type_list )
//
- case 278: { action. consumeDirectDeclaratorFunctionDeclarator(false, true); break;
+ case 279: { action. consumeDirectDeclaratorFunctionDeclarator(false, true); break;
}
//
- // Rule 279: function_direct_abstract_declarator ::= basic_direct_abstract_declarator ( <openscope-ast> parameter_type_list )
+ // Rule 280: function_direct_abstract_declarator ::= basic_direct_abstract_declarator ( <openscope-ast> parameter_type_list )
//
- case 279: { action. consumeDirectDeclaratorFunctionDeclarator(true, true); break;
+ case 280: { action. consumeDirectDeclaratorFunctionDeclarator(true, true); break;
}
//
- // Rule 280: initializer ::= assignment_expression
+ // Rule 281: initializer ::= assignment_expression
//
- case 280: { action. consumeInitializer(); break;
+ case 281: { action. consumeInitializer(); break;
}
//
- // Rule 281: initializer ::= start_initializer_list { <openscope-ast> initializer_list comma_opt } end_initializer_list
+ // Rule 282: initializer ::= start_initializer_list { <openscope-ast> initializer_list comma_opt } end_initializer_list
//
- case 281: { action. consumeInitializerList(); break;
+ case 282: { action. consumeInitializerList(); break;
}
//
- // Rule 282: initializer ::= { <openscope-ast> }
+ // Rule 283: initializer ::= { <openscope-ast> }
//
- case 282: { action. consumeInitializerList(); break;
+ case 283: { action. consumeInitializerList(); break;
}
//
- // Rule 283: start_initializer_list ::= $Empty
+ // Rule 284: start_initializer_list ::= $Empty
//
- case 283: { action. initializerListStart(); break;
+ case 284: { action. initializerListStart(); break;
}
//
- // Rule 284: end_initializer_list ::= $Empty
+ // Rule 285: end_initializer_list ::= $Empty
//
- case 284: { action. initializerListEnd(); break;
+ case 285: { action. initializerListEnd(); break;
}
//
- // Rule 289: designated_initializer ::= <openscope-ast> designation = initializer
+ // Rule 290: designated_initializer ::= <openscope-ast> designation = initializer
//
- case 289: { action. consumeInitializerDesignated(); break;
+ case 290: { action. consumeInitializerDesignated(); break;
}
//
- // Rule 293: designator_base ::= [ constant_expression ]
+ // Rule 294: designator_base ::= [ constant_expression ]
//
- case 293: { action. consumeDesignatorArray(); break;
+ case 294: { action. consumeDesignatorArray(); break;
}
//
- // Rule 294: designator_base ::= . identifier_token
+ // Rule 295: designator_base ::= . identifier_token
//
- case 294: { action. consumeDesignatorField(); break;
+ case 295: { action. consumeDesignatorField(); break;
}
//
- // Rule 295: designator ::= [ constant_expression ]
+ // Rule 296: designator ::= [ constant_expression ]
//
- case 295: { action. consumeDesignatorArray(); break;
+ case 296: { action. consumeDesignatorArray(); break;
}
//
- // Rule 296: designator ::= . identifier_token
+ // Rule 297: designator ::= . identifier_token
//
- case 296: { action. consumeDesignatorField(); break;
+ case 297: { action. consumeDesignatorField(); break;
}
//
- // Rule 297: translation_unit ::= external_declaration_list
+ // Rule 298: translation_unit ::= external_declaration_list
//
- case 297: { action. consumeTranslationUnit(); break;
+ case 298: { action. consumeTranslationUnit(); break;
}
//
- // Rule 298: translation_unit ::= $Empty
+ // Rule 299: translation_unit ::= $Empty
//
- case 298: { action. consumeTranslationUnit(); break;
+ case 299: { action. consumeTranslationUnit(); break;
}
//
- // Rule 303: external_declaration ::= ;
+ // Rule 304: external_declaration ::= ;
//
- case 303: { action. consumeDeclarationEmpty(); break;
+ case 304: { action. consumeDeclarationEmpty(); break;
}
//
- // Rule 304: external_declaration ::= ERROR_TOKEN
+ // Rule 305: external_declaration ::= ERROR_TOKEN
//
- case 304: { action. consumeDeclarationProblem(); break;
+ case 305: { action. consumeDeclarationProblem(); break;
}
//
- // Rule 307: function_definition ::= declaration_specifiers <openscope-ast> function_declarator function_body
+ // Rule 308: function_definition ::= declaration_specifiers <openscope-ast> function_declarator function_body
//
- case 307: { action. consumeFunctionDefinition(true); break;
+ case 308: { action. consumeFunctionDefinition(true); break;
}
//
- // Rule 308: function_definition ::= <openscope-ast> function_declarator function_body
+ // Rule 309: function_definition ::= <openscope-ast> function_declarator function_body
//
- case 308: { action. consumeFunctionDefinition(false); break;
+ case 309: { action. consumeFunctionDefinition(false); break;
}
//
- // Rule 309: function_definition ::= declaration_specifiers <openscope-ast> knr_function_declarator <openscope-ast> declaration_list compound_statement
+ // Rule 310: function_definition ::= declaration_specifiers <openscope-ast> knr_function_declarator <openscope-ast> declaration_list compound_statement
//
- case 309: { action. consumeFunctionDefinitionKnR(); break;
+ case 310: { action. consumeFunctionDefinitionKnR(); break;
}
//
- // Rule 310: function_body ::= { }
+ // Rule 311: function_body ::= { }
//
- case 310: { action. consumeStatementCompoundStatement(false); break;
+ case 311: { action. consumeStatementCompoundStatement(false); break;
}
//
- // Rule 311: function_body ::= { <openscope-ast> block_item_list }
+ // Rule 312: function_body ::= { <openscope-ast> block_item_list }
//
- case 311: { action. consumeStatementCompoundStatement(true); break;
+ case 312: { action. consumeStatementCompoundStatement(true); break;
}
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99Parserprs.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99Parserprs.java
index 74a6e8b789c..fcf44170dc3 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99Parserprs.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99Parserprs.java
@@ -34,234 +34,240 @@ public class C99Parserprs implements lpg.lpgjavaruntime.ParseTable, C99Parsersym
public interface BaseCheck {
public final static short baseCheck[] = {0,
- 0,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,3,1,1,
- 4,4,3,3,2,2,8,1,0,1,
- 1,2,2,2,2,2,2,2,2,2,
- 4,1,4,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,3,3,3,3,3,3,
- 3,3,3,3,3,1,1,2,1,0,
- 1,3,1,1,1,1,1,1,1,1,
- 3,4,3,2,4,1,2,1,1,1,
- 2,5,7,5,1,0,7,5,9,8,
- 3,2,2,2,3,2,4,2,2,2,
- 2,2,1,1,1,1,2,1,2,2,
- 2,1,2,2,1,2,2,1,2,2,
- 1,2,2,1,3,1,3,1,1,1,
+ 0,0,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,3,1,
+ 1,4,4,3,3,2,2,8,1,0,
+ 1,1,2,2,2,2,2,2,2,2,
+ 2,4,1,4,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,3,3,3,3,3,
+ 3,3,3,3,3,3,1,1,2,1,
+ 0,1,3,1,1,1,1,1,1,1,
+ 1,3,4,3,2,4,1,2,1,1,
+ 1,2,5,7,5,1,0,7,5,9,
+ 8,3,2,2,2,3,2,4,2,2,
+ 2,2,2,1,1,1,1,2,1,2,
+ 2,2,1,2,2,1,2,2,1,2,
+ 2,1,2,2,1,3,1,3,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,6,8,
- 0,0,1,1,3,3,3,0,1,0,
- 1,2,4,2,1,1,1,3,1,1,
- 2,3,7,8,0,1,0,1,3,1,
- 3,1,1,1,1,1,1,3,1,1,
- 1,1,1,3,1,2,2,1,5,3,
- 1,3,5,1,3,1,3,2,4,3,
- 5,4,6,6,3,5,1,2,3,4,
- 5,0,1,2,1,3,1,1,3,2,
- 1,1,1,1,2,1,2,3,1,1,
- 1,3,1,2,2,2,3,4,5,1,
- 7,3,0,0,1,1,3,3,4,1,
- 1,2,3,2,3,2,1,0,1,2,
- 1,1,1,1,1,2,4,3,6,2,
- 4,-73,0,-2,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-28,
- 0,0,-137,0,-17,-133,0,0,-260,0,
- -6,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-191,0,0,0,
- 0,0,0,-23,0,0,0,0,-19,0,
- -3,0,0,0,0,0,0,-121,-120,0,
- 0,0,0,0,0,0,-18,0,0,0,
+ 1,1,1,1,1,1,1,1,1,6,
+ 8,0,0,1,1,3,3,3,0,1,
+ 0,1,2,4,2,1,1,1,3,1,
+ 1,2,3,7,8,0,1,0,1,3,
+ 1,3,1,1,1,1,1,1,3,1,
+ 1,1,1,1,3,1,2,2,1,5,
+ 3,1,3,5,1,3,1,3,2,4,
+ 3,5,4,6,6,3,5,1,3,4,
+ 5,6,0,1,2,1,3,1,1,3,
+ 2,1,1,1,1,2,1,2,3,1,
+ 1,1,3,1,2,2,2,3,4,5,
+ 1,7,3,0,0,1,1,3,3,4,
+ 1,1,2,3,2,3,2,1,0,1,
+ 2,1,1,1,1,1,2,4,3,6,
+ 2,4,-73,0,-2,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-141,0,0,0,0,0,0,0,-87,
- 0,-146,0,0,0,0,0,0,0,0,
+ -28,0,0,-6,0,-23,0,0,0,-185,
+ 0,-48,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-4,-82,0,
+ 0,0,0,0,-24,0,0,0,0,0,
+ -37,-3,0,0,0,0,0,0,-190,-193,
+ 0,0,0,0,0,0,0,-18,0,0,
+ 0,0,0,0,0,0,0,0,0,-110,
+ 0,0,0,-19,0,-34,0,0,0,0,
+ 0,-86,0,-9,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,0,-163,0,0,0,
- 0,0,0,0,-182,0,0,0,0,0,
+ 0,0,0,0,0,0,-25,0,0,0,
+ 0,0,0,0,0,0,0,-163,0,0,
+ 0,0,0,0,0,-182,0,-20,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,-242,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -30,0,0,-284,0,-271,0,0,0,0,
+ 0,-30,0,0,-11,0,-273,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-37,0,-183,0,
- -256,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-145,0,0,
+ 0,0,0,0,0,0,0,-59,0,-183,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-20,0,0,0,0,
- 0,0,0,0,-176,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-118,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-53,-29,0,0,-32,0,-274,0,0,
+ 0,0,0,0,0,0,-146,0,0,0,
+ 0,-29,0,0,0,-180,0,-38,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-207,0,0,-39,0,-276,0,
0,0,0,0,0,0,0,0,0,0,
- -51,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-41,0,0,-22,
+ 0,0,-51,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-180,0,-9,0,0,0,0,
- 0,0,0,0,0,0,0,0,-38,0,
- 0,-39,-55,0,0,0,0,0,0,0,
+ 0,0,0,-45,0,-181,0,-47,0,0,
+ 0,0,0,0,0,0,0,0,0,-62,
+ 0,0,0,-55,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -204,0,0,-35,0,0,0,-285,0,-41,
+ 0,0,0,0,-35,0,0,0,-287,0,
+ -266,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-60,0,0,-63,
+ 0,-174,0,-14,0,0,0,0,0,0,
+ 0,0,0,0,0,-121,0,0,-147,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-264,0,0,-263,0,
- -181,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-123,0,0,-118,0,0,
+ 0,0,0,0,0,0,0,0,0,-12,
+ 0,0,0,-26,0,0,-81,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-241,0,0,-43,0,-108,
+ 0,-145,0,-65,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-33,0,0,-81,0,0,0,0,
+ 0,0,-17,0,0,0,0,0,0,-66,
+ 0,0,0,0,-27,0,0,0,0,0,
+ 0,0,-209,-50,0,0,-69,0,0,0,
+ 0,0,0,0,0,0,-71,-44,0,0,
+ -68,0,0,0,-61,0,0,0,0,0,
+ 0,0,0,0,-36,0,-32,0,0,0,
+ 0,0,0,-70,0,-144,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-45,0,0,0,0,-108,0,
- -70,0,-47,0,0,0,0,0,0,0,
+ 0,0,0,0,-148,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-49,-62,0,0,-174,0,-59,0,0,
- 0,0,0,0,0,0,0,0,-4,0,
- 0,0,0,0,-11,0,0,0,0,0,
- -50,-190,0,0,0,-63,0,0,0,0,
- 0,0,0,0,0,0,0,-12,0,0,
- 0,0,0,0,-65,0,0,0,0,0,
- 0,0,-147,0,-82,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-93,0,-74,
+ 0,0,0,0,0,-149,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -66,0,0,-106,0,-148,0,0,0,0,
+ 0,0,0,-33,0,0,-280,0,-150,0,
+ -106,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-84,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,-149,0,
+ 0,0,-142,0,-152,0,-158,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-142,0,0,-158,
- 0,-150,0,0,0,0,0,0,0,0,
+ 0,0,-159,0,0,0,0,-153,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-151,0,-144,0,0,0,
+ 0,0,0,0,0,0,0,0,-186,0,
+ -154,0,-187,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-195,0,
+ 0,-95,0,-155,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-186,0,0,-159,0,-152,0,-187,
+ 0,0,0,0,0,0,-156,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-197,0,0,-198,0,-157,
+ 0,-218,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -153,0,-69,0,0,0,0,0,0,0,
+ 0,0,-201,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-195,0,-154,0,0,0,0,0,0,
+ -219,0,0,-133,0,-206,0,-137,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-197,0,0,0,0,-155,0,-212,0,
+ 0,0,0,0,0,0,-211,0,-220,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-198,0,-156,
- 0,-43,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-96,0,-94,
+ 0,0,0,0,0,0,0,-212,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-157,0,-217,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-97,0,
+ -251,0,-98,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-99,0,
+ 0,-262,0,-204,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-78,
+ 0,0,-46,0,0,-100,-77,0,-76,-165,
+ 0,0,-272,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-279,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-278,0,-136,0,-21,-239,
+ 0,-53,-101,0,-290,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-58,0,0,-164,
+ 0,-42,0,0,0,0,0,0,-102,-67,
0,0,0,0,0,0,0,0,0,0,
- -36,0,0,-71,0,-201,0,0,0,0,
+ 0,-254,0,0,-83,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-72,-134,0,
+ 0,-117,-103,-57,0,0,0,0,0,0,
+ 0,-104,0,0,0,0,0,-141,-107,0,
+ 0,0,0,-105,0,0,0,0,-109,0,
+ 0,0,0,0,0,0,0,0,0,-213,
+ -143,0,0,0,0,-79,-111,0,0,0,
+ 0,-238,0,0,0,0,0,0,-112,0,
+ 0,0,0,0,0,0,0,-125,0,0,
+ 0,-160,0,0,0,0,0,0,0,0,
+ -132,-188,0,0,-114,0,0,-115,0,-119,
+ -265,0,0,-191,0,0,0,0,0,0,
+ 0,0,0,-194,0,-87,0,0,0,0,
+ 0,0,0,0,0,0,-31,0,0,0,
+ 0,0,-116,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-123,0,0,0,0,
+ 0,0,0,-199,0,0,-135,0,0,-140,
+ -122,0,0,-127,-16,0,0,0,0,-264,
+ 0,0,0,-217,0,0,-192,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-218,0,0,-205,0,-206,0,
- -74,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-210,
- 0,-219,0,0,0,0,0,0,0,0,
+ 0,-257,0,0,0,-130,0,-131,-175,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-86,0,0,0,0,0,0,0,
- -211,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-238,0,
- 0,-248,0,-250,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-289,0,-205,0,
+ -221,-243,0,-64,0,0,0,-269,0,-40,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-270,0,-283,0,0,0,
+ -249,0,-253,0,0,-126,0,0,-285,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-172,0,-84,0,0,
- 0,0,0,0,0,-277,0,0,0,0,
+ 0,-274,-138,0,-139,0,0,-128,0,0,
+ -129,-255,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-91,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-95,0,0,-288,0,0,0,
+ 0,0,0,-200,0,0,-196,0,0,0,
+ -250,0,0,0,0,0,0,-256,-210,-222,
+ -189,0,0,-203,0,0,0,-223,0,-275,
+ -293,0,0,0,0,0,0,0,0,-176,
+ 0,-268,0,0,0,0,0,0,0,0,
+ 0,-245,0,0,0,0,0,0,-286,0,
+ 0,0,0,-208,0,0,0,0,0,0,
+ 0,0,0,0,-283,0,-247,0,0,0,
+ 0,0,0,0,0,0,0,-224,0,0,
+ -225,-244,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,-207,0,-96,
- -77,0,-278,-42,0,0,-97,-175,0,0,
+ 0,0,0,-248,0,0,-281,-292,0,-216,
+ 0,0,-214,0,-226,0,0,0,0,0,
+ 0,0,-227,0,0,-284,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-228,
+ -229,-230,0,0,-288,0,0,-291,0,0,
+ -231,-232,0,0,0,0,0,0,0,0,
+ 0,-233,0,0,-234,0,-294,-235,0,-295,
+ 0,0,-54,-236,0,0,0,0,0,0,
+ 0,0,0,-271,0,0,-237,0,-89,0,
0,0,0,0,0,0,0,0,0,0,
- -22,0,0,-165,0,0,-98,0,-24,0,
- 0,0,0,0,0,0,0,0,0,-99,
- -135,-68,0,0,0,-57,0,0,-177,0,
+ 0,0,0,0,0,-252,0,-260,-261,0,
+ 0,0,-270,-277,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-177,0,0,0,0,0,0,
+ 0,0,0,0,0,-170,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-178,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-49,0,0,0,0,
+ 0,0,-179,0,-7,0,0,0,0,0,
+ 0,0,0,0,-171,0,0,0,0,0,
+ 0,0,0,0,0,-1,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,-56,0,0,0,0,-124,0,0,0,
+ 0,0,0,0,0,0,-172,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-173,0,0,
+ 0,0,0,0,0,0,0,-90,0,0,
+ 0,0,0,0,0,0,-92,0,0,0,
+ 0,0,0,0,0,-113,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,-167,0,0,0,0,0,0,0,
+ 0,0,0,-168,0,0,0,0,0,0,
+ 0,0,-169,0,-8,0,0,0,0,0,
+ 0,-215,0,0,0,0,0,0,0,0,
+ -240,-5,0,0,-259,0,0,0,0,0,
+ 0,0,0,-10,0,0,-166,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,-15,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,0,0,0,0,0,0,-80,
+ 0,0,0,0,0,-85,-120,0,0,0,
+ 0,0,0,0,-161,-162,0,0,0,-202,
+ -258,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,-263,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,-267,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-282,-184,0,0,-246,
0,0,0,0,0,0,0,0,0,0,
- -85,0,0,0,0,-107,0,0,-208,0,
- -164,0,0,0,0,0,0,0,0,0,
- 0,0,0,-100,0,0,0,0,0,-237,
- -262,0,0,0,0,0,0,-25,0,0,
- 0,0,0,0,-26,0,-7,0,0,0,
- 0,0,0,0,0,0,-60,0,-125,0,
- 0,0,0,0,0,0,-101,0,-27,0,
- 0,0,0,-14,0,-102,0,0,-44,0,
- 0,0,0,-64,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-8,-103,
- 0,0,-61,0,0,0,-220,-46,0,0,
0,0,0,0,0,0,0,0,0,0,
- -188,-31,0,0,0,-185,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-267,0,0,0,0,0,
- -67,0,-239,-48,0,0,0,0,0,0,
- -104,0,0,0,0,0,0,0,0,-199,
- 0,0,0,-72,0,0,0,0,0,0,
- 0,-16,0,-21,0,0,-76,0,0,-105,
- 0,0,0,0,-40,-117,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-78,
- 0,0,-124,0,0,-83,0,0,0,0,
- 0,0,-111,-109,0,0,0,0,0,0,
- 0,0,0,0,0,0,-56,-112,0,0,
- 0,0,-132,0,0,0,-52,0,0,-240,
- -114,0,0,0,0,0,-170,0,-115,0,
- 0,0,0,0,0,0,0,0,0,-192,
- 0,0,0,0,0,-116,0,0,0,0,
- 0,0,-136,0,0,0,0,0,-79,0,
- 0,0,0,0,0,0,0,-126,0,0,
- -122,-255,0,0,-127,-119,0,0,0,0,
- -130,0,0,0,0,0,-194,0,0,-128,
- 0,0,-129,0,0,0,0,0,0,0,
- 0,0,0,-253,0,-276,0,0,-88,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-200,0,0,0,0,
- 0,-242,-249,0,0,0,0,0,-131,-189,
- 0,-138,0,0,0,-203,0,0,-139,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,-178,0,-196,0,0,0,0,0,0,
- 0,0,0,-244,0,0,0,0,-134,0,
- 0,0,0,0,-209,-140,0,0,0,0,
- 0,0,0,-221,0,-222,0,0,-246,0,
- 0,0,0,0,0,0,0,0,0,-223,
- 0,0,-224,-193,-225,0,0,-89,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-247,0,0,-254,-272,
- 0,-252,0,0,-91,0,-226,0,0,0,
- 0,0,0,0,-266,0,0,-282,0,0,
- 0,-279,0,0,0,0,0,0,0,0,
- 0,-110,0,0,0,0,-281,0,0,-289,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-290,0,0,-273,0,-227,0,
- 0,-293,0,0,-54,-286,0,0,0,0,
- 0,0,0,0,0,-269,0,0,0,0,
- -90,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-287,0,
- 0,0,0,-228,0,-229,0,0,0,0,
- -291,0,0,0,-230,-231,0,0,0,0,
- 0,-232,-233,-234,-215,-179,0,0,0,0,
- 0,0,0,0,0,0,0,-171,0,-235,
- 0,0,0,0,0,0,0,0,0,0,
- -1,0,0,-173,0,-292,0,0,0,0,
- 0,0,0,-216,0,0,-236,-160,0,0,
- -251,-258,0,0,0,-213,0,0,0,0,
- 0,0,0,0,-92,0,0,0,0,0,
- 0,0,0,-259,0,-113,0,0,0,0,
- 0,0,0,0,-268,-275,0,0,0,0,
- 0,0,-143,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-167,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,-168,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-169,0,-10,
- 0,0,0,0,0,0,0,0,-214,0,
- 0,0,0,0,0,0,0,-257,-5,0,
- 0,0,0,0,0,0,-13,0,0,-75,
- -15,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,0,
- 0,0,-202,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-93,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,-94,0,0,0,0,0,0,0,
- -161,-162,0,0,0,0,0,0,-261,0,
- 0,0,0,0,0,0,0,-58,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,-243,0,0,0,0,0,0,0,0,
- -265,-280,0,0,0,0,0,0,0,-166,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-184,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-245,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0
@@ -274,239 +280,245 @@ public class C99Parserprs implements lpg.lpgjavaruntime.ParseTable, C99Parsersym
public interface BaseAction {
public final static char baseAction[] = {
- 106,2,39,39,23,23,41,41,18,18,
- 1,1,3,3,3,3,4,4,4,5,
- 6,6,6,6,6,6,6,6,68,68,
- 90,7,7,7,7,7,7,7,7,7,
- 7,7,8,8,9,9,9,9,10,10,
- 10,11,11,11,12,12,12,12,12,13,
- 13,13,14,14,15,15,16,16,17,17,
- 19,19,20,20,22,22,22,22,22,22,
- 22,22,22,22,22,22,29,27,21,107,
- 107,92,92,54,30,30,30,30,30,30,
- 30,31,31,31,28,28,93,93,69,69,
- 32,32,33,33,33,61,61,34,34,34,
- 34,35,35,35,35,35,47,47,24,24,
- 24,24,24,48,48,48,83,83,78,78,
- 78,78,79,79,79,80,80,80,81,81,
- 81,82,82,82,94,94,84,84,85,49,
- 51,51,51,51,51,62,64,64,64,64,
- 64,64,64,64,64,64,64,64,73,70,
- 70,108,109,74,74,71,71,71,86,95,
- 95,96,96,87,87,87,55,110,110,97,
- 98,98,98,72,72,111,99,99,100,100,
- 88,88,25,26,26,26,50,52,52,42,
- 42,42,42,36,36,37,43,43,44,38,
- 38,101,101,45,113,113,112,112,46,46,
- 46,46,46,46,46,46,46,102,53,53,
- 53,53,40,75,75,65,65,65,66,66,
- 56,56,114,114,77,77,76,76,76,57,
- 57,57,58,59,59,59,60,60,60,60,
- 63,63,63,67,115,91,91,91,91,89,
- 116,117,117,118,118,119,119,106,106,120,
- 120,103,103,103,103,121,121,104,104,104,
- 105,105,292,1729,754,16,20,17,1274,1248,
- 44,1300,1327,1307,1384,1340,1436,1427,1521,1460,
- 622,1550,74,1261,91,331,1509,134,212,1407,
- 19,324,16,20,17,1274,42,44,1300,1327,
- 1307,1384,1340,1436,1427,1521,1460,1509,1550,73,
- 136,133,135,159,322,1062,556,223,232,296,
- 773,1051,178,335,138,583,165,179,421,1110,
- 718,312,142,145,148,151,636,581,330,1482,
- 1407,1459,2090,2117,2121,1542,134,212,282,87,
- 87,1127,1161,1534,1671,1012,115,556,223,231,
- 1407,19,1295,16,20,17,1274,42,39,136,
- 133,135,159,586,223,228,1804,254,212,217,
- 743,220,222,138,908,165,1607,254,212,491,
- 1677,142,145,148,151,636,308,587,30,1407,
- 1459,2090,2117,2121,1542,1407,19,230,16,20,
- 17,1274,42,44,1300,1327,1307,1384,1340,1436,
- 1427,1953,341,1350,19,696,16,20,17,1274,
- 1248,44,1300,1327,1307,1384,1340,1436,1427,1521,
- 1460,440,1550,74,459,280,1369,19,696,16,
- 20,17,1274,1248,44,1300,1327,1307,1384,1340,
- 1436,1427,1521,1460,224,1550,74,892,280,1407,
- 19,1506,16,20,17,1274,42,44,1300,1327,
- 1307,1384,1340,1436,1954,127,285,24,1223,19,
- 1598,16,20,17,1274,1248,44,1300,1327,1307,
- 1384,1340,1436,1427,1521,1460,314,1550,74,285,
- 1039,773,286,1598,699,1407,19,273,16,20,
- 17,1274,42,44,1300,1327,1889,239,268,963,
- 970,271,421,746,769,286,1006,1227,1265,19,
- 696,16,20,17,1274,1248,44,1300,1327,1307,
- 1384,1340,1436,1427,1521,1460,1534,1550,74,281,
- 280,1199,19,1576,16,20,17,1274,1248,44,
- 1300,1327,1307,1384,1340,1436,1427,1521,1460,305,
- 1550,74,226,855,1407,19,176,16,20,17,
- 1274,42,44,1300,1327,1307,1384,1340,1946,357,
- 238,287,501,1242,19,1598,16,20,17,1274,
- 1248,44,1300,1327,1307,1384,1340,1436,1427,1521,
- 1460,1261,1550,74,421,280,582,288,1388,19,
- 442,16,20,17,1274,1248,44,1300,1327,1307,
- 1384,1340,1436,1427,1521,1460,412,1550,74,1523,
- 280,1407,19,1862,16,20,17,1274,42,44,
- 1300,1327,1307,1384,1952,421,157,718,1407,19,
- 1598,16,20,17,1274,1248,44,1300,1327,1307,
- 1384,1340,1436,1427,1521,1460,87,1550,74,1832,
- 91,289,1032,913,364,1598,1426,19,2043,16,
- 20,17,1274,1248,44,1300,1327,1307,1384,1340,
- 1436,1427,1521,1460,626,1550,74,1887,947,1108,
- 178,1407,19,788,16,20,17,1274,42,44,
- 1300,1327,1307,1384,1340,1436,1427,1521,1460,227,
- 1550,93,622,708,134,212,1407,19,1045,16,
- 20,17,1274,42,44,1300,1327,1307,1805,419,
- 1671,1544,2036,1303,291,355,123,136,133,135,
- 159,908,1113,2126,769,1665,747,126,586,223,
- 228,138,773,165,218,743,220,222,505,142,
- 145,148,151,636,230,790,1366,1407,1459,2090,
- 2117,2121,1542,1407,19,359,16,20,17,1274,
- 1248,44,1300,1327,1307,1384,1340,1436,1427,1521,
- 1460,794,1550,74,440,85,1407,19,259,16,
- 20,17,1274,1248,44,1300,1327,1307,1384,1340,
- 1436,1427,1521,1460,240,1550,74,229,84,1407,
- 19,1329,16,20,17,1274,1248,44,1300,1327,
- 1307,1384,1340,1436,1427,1521,1460,1000,1550,74,
- 440,83,1407,19,1398,16,20,17,1274,1248,
- 44,1300,1327,1307,1384,1340,1436,1427,1521,1460,
- 233,1550,74,2099,82,1407,19,359,16,20,
- 17,1274,1248,44,1300,1327,1307,1384,1340,1436,
- 1427,1521,1460,1176,1550,74,440,81,1407,19,
- 1287,16,20,17,1274,1248,44,1300,1327,1307,
- 1384,1340,1436,1427,1521,1460,242,1550,74,18,
- 80,1407,19,54,16,20,17,1274,1248,44,
- 1300,1327,1307,1384,1340,1436,1427,1521,1460,275,
- 1550,74,440,79,1407,19,274,16,20,17,
- 1274,1248,44,1300,1327,1307,1384,1340,1436,1427,
- 1521,1460,440,1550,74,1764,78,1407,19,359,
- 16,20,17,1274,1248,44,1300,1327,1307,1384,
- 1340,1436,1427,1521,1460,1789,1550,74,440,77,
- 1407,19,443,16,20,17,1274,1248,44,1300,
- 1327,1307,1384,1340,1436,1427,1521,1460,241,1550,
- 74,1826,76,1407,19,440,16,20,17,1274,
- 1248,44,1300,1327,1307,1384,1340,1436,1427,1521,
- 1460,324,1550,74,58,75,1407,19,2002,16,
- 20,17,1274,1248,44,1300,1327,1307,1384,1340,
- 1436,1427,1521,1460,440,1550,74,1509,92,1407,
- 19,828,16,20,17,1274,42,44,1300,1327,
- 1307,1384,1340,1436,1427,1521,1460,2024,1550,93,
- 1407,19,440,16,20,17,1274,1248,44,1300,
- 1327,1307,1384,1340,1436,1427,1521,1460,203,1550,
- 74,1131,1694,1445,19,22,16,20,17,1274,
- 40,1407,19,211,16,20,17,1274,1248,44,
- 1300,1327,1307,1384,1340,1436,1427,1521,1460,440,
- 1550,74,1509,1829,1407,19,307,16,20,17,
- 1274,42,44,1300,1327,1307,1384,1340,1436,1427,
- 1521,1460,272,1550,93,1407,19,1523,16,20,
- 17,1274,42,44,1300,1327,1307,1384,1340,1436,
- 1427,1521,1460,180,1550,93,1407,19,384,16,
- 20,17,1274,42,44,1800,1407,19,201,16,
- 20,17,1274,42,44,1300,1327,1307,1384,1340,
- 1436,1427,1521,1460,1490,1550,93,1407,19,202,
- 16,20,17,1274,42,44,1300,1327,1307,1384,
- 1340,1436,1427,1521,1460,1941,1550,93,587,1732,
- 1056,628,1732,1432,178,1104,312,935,1407,19,
- 1896,16,20,17,1274,42,44,1300,1327,1307,
- 1837,833,110,1304,1313,86,718,663,1534,587,
- 186,1986,95,1511,108,94,96,97,98,99,
- 630,933,833,769,1419,89,1,1104,312,1407,
- 19,109,16,20,17,1274,42,44,1300,1327,
- 1934,421,310,312,110,196,946,86,1730,1483,
- 1534,587,30,106,95,1511,108,94,96,97,
- 98,99,87,104,345,196,209,311,966,208,
- 908,440,2209,109,254,212,1769,1346,587,185,
- 333,1739,586,223,228,326,764,1146,217,743,
- 220,222,273,277,278,107,1998,1045,262,235,
- 1104,312,292,266,963,970,271,509,192,587,
- 187,1152,134,212,541,122,931,110,920,421,
- 86,2120,263,1534,480,1104,718,95,1511,108,
- 94,96,97,98,99,141,133,135,159,944,
- 288,23,110,587,1666,86,109,359,421,140,
- 1301,165,95,1511,1661,94,96,97,98,99,
- 260,941,331,1513,134,212,1407,19,106,16,
- 20,17,1274,42,44,1300,1327,1307,1384,1340,
- 1436,1427,1521,1997,276,440,21,144,133,135,
- 159,1045,1530,950,890,769,1649,586,223,228,
- 1429,463,583,217,743,220,222,273,1867,111,
- 119,1104,312,491,419,792,1683,1366,266,963,
- 970,271,1108,178,581,1405,1555,421,110,1643,
- 591,86,126,583,1534,331,1045,1199,95,1511,
- 108,94,96,97,98,99,1610,134,212,258,
- 1119,105,1776,421,125,718,1122,109,1391,1584,
- 586,223,652,421,1027,357,217,743,220,680,
- 137,133,135,159,87,583,158,622,1063,107,
- 1058,253,212,421,139,2153,165,402,1597,769,
- 1115,1064,143,146,149,152,636,1407,19,1112,
- 16,20,17,1274,42,44,1300,1784,154,649,
- 421,1366,473,586,223,1619,60,773,517,218,
- 743,220,1611,628,1732,1101,586,223,228,1122,
- 773,412,218,743,220,222,273,674,521,1104,
- 718,876,421,258,496,172,1045,268,963,970,
- 271,1205,874,1584,253,212,110,1045,538,86,
- 562,1104,718,581,121,1482,95,1511,103,94,
- 96,97,98,99,359,2232,587,294,110,1407,
- 19,86,16,20,17,1274,42,38,95,1511,
- 101,94,96,97,98,99,603,1104,718,586,
- 223,228,1045,1126,402,217,743,220,222,360,
- 331,208,1499,243,110,158,868,86,1482,1285,
- 2241,193,671,1739,95,1511,102,94,96,97,
- 98,99,1407,19,905,16,20,17,1274,42,
- 44,1300,1327,1936,644,1104,718,154,649,419,
- 583,1736,586,223,228,1144,1122,517,217,743,
- 220,222,110,1610,706,86,745,194,2001,685,
- 1104,718,95,1511,118,94,96,97,98,99,
- 1505,253,212,1507,1110,367,718,110,1407,19,
- 86,16,20,17,1274,42,37,95,1511,114,
- 94,96,97,98,99,87,726,1104,718,359,
- 440,115,1509,197,199,1289,19,477,16,20,
- 17,1274,42,35,110,1045,1723,86,767,1104,
- 718,1369,440,279,95,1511,2035,94,96,97,
- 98,99,829,2242,769,1722,110,1045,244,86,
- 808,1104,718,204,245,1870,95,1511,113,94,
- 96,97,98,99,440,117,1534,1509,110,1284,
- 309,86,849,1104,718,581,359,1482,95,1511,
- 120,94,96,97,98,99,868,1892,1482,306,
- 110,1407,19,86,16,20,17,1274,42,36,
- 95,1511,119,94,96,97,98,99,494,587,
- 296,586,223,228,1286,293,1470,217,743,220,
- 222,1509,586,223,228,1484,1066,158,217,743,
- 220,222,712,795,755,331,1407,19,2001,16,
- 20,17,1274,42,44,1300,1327,1945,1407,19,
- 1486,16,20,17,1274,42,44,1300,1786,155,
- 649,349,27,371,1407,19,359,16,20,17,
- 1274,42,44,1803,1005,583,2108,1185,1339,303,
- 1955,1519,1514,198,199,809,1289,19,521,16,
- 20,17,1274,42,35,1407,19,276,16,20,
- 17,1274,42,34,1515,295,1407,19,302,16,
- 20,17,1274,42,35,1025,1516,2331,2331,2331,
- 273,2331,2331,1122,273,246,2331,2331,2331,2331,
- 2331,266,963,970,271,266,963,970,271,1407,
- 19,2331,16,20,17,1274,42,47,253,212,
- 1199,2331,1407,19,265,16,20,17,1274,42,
- 46,2331,2331,2331,299,301,2331,314,1407,19,
- 1003,16,20,17,1274,42,45,2331,2331,1319,
- 19,2109,16,20,17,1274,42,43,950,406,
- 769,371,2331,2331,2331,134,212,1062,412,2331,
- 874,1468,769,2331,2331,2331,938,303,769,2331,
- 2331,2331,1366,809,2331,2331,2331,2331,147,133,
- 135,159,134,212,196,1150,134,212,583,2331,
- 1366,2331,2331,992,2331,769,302,2331,2331,2331,
- 2331,521,2331,2331,258,150,133,135,159,153,
- 133,135,159,1391,1584,1769,2331,196,2331,2331,
- 1464,19,258,16,20,17,1274,33,2331,2331,
- 2331,874,1584,1464,19,2331,16,20,17,1274,
- 32,421,421,312,312,2331,2331,191,1769,402,
- 2331,769,300,301,2331,336,1341,2331,419,2331,
- 718,2331,87,87,2331,196,196,2331,966,966,
- 2331,2331,1110,1366,718,2331,124,2331,917,87,
- 191,1110,1110,718,718,1556,2331,2331,1202,1341,
- 421,2331,718,87,2331,2331,1998,1998,2331,115,
- 2331,2331,87,87,421,258,718,2331,115,115,
- 2331,87,2331,2331,1830,1584,2331,1467,1085,1124,
- 421,2331,718,2331,2331,87,2331,2331,2331,2331,
- 2331,1970,2331,1845,2331,2331,2331,2331,2331,2331,
- 2331,87,1852,1884,2331,2331,2331,1505,2331,0,
- 10,225,0,2338,1,0,1,2567,0,7,
- 9,0,178,19,0,1,2556,0,112,1848,
+ 106,2,123,40,40,23,23,41,41,18,
+ 18,1,1,3,3,3,3,4,4,4,
+ 5,6,6,6,6,6,6,6,6,68,
+ 68,90,7,7,7,7,7,7,7,7,
+ 7,7,7,8,8,9,9,9,9,10,
+ 10,10,11,11,11,12,12,12,12,12,
+ 13,13,13,14,14,15,15,16,16,17,
+ 17,19,19,20,20,22,22,22,22,22,
+ 22,22,22,22,22,22,22,29,27,21,
+ 107,107,92,92,54,30,30,30,30,30,
+ 30,30,31,31,31,28,28,93,93,69,
+ 69,32,32,33,33,33,61,61,34,34,
+ 34,34,35,35,35,35,35,47,47,24,
+ 24,24,24,24,48,48,48,83,83,78,
+ 78,78,78,79,79,79,80,80,80,81,
+ 81,81,82,82,82,94,94,84,84,85,
+ 49,51,51,51,51,51,62,64,64,64,
+ 64,64,64,64,64,64,64,64,64,73,
+ 70,70,108,109,74,74,71,71,71,86,
+ 95,95,96,96,87,87,87,55,110,110,
+ 97,98,98,98,72,72,111,99,99,100,
+ 100,88,88,25,26,26,26,50,52,52,
+ 42,42,42,42,37,37,38,43,43,44,
+ 39,39,101,101,45,113,113,112,112,46,
+ 46,46,46,46,46,46,46,46,102,53,
+ 53,53,53,36,75,75,65,65,65,66,
+ 66,56,56,114,114,77,77,76,76,76,
+ 57,57,57,58,59,59,59,60,60,60,
+ 60,63,63,63,67,115,91,91,91,91,
+ 89,116,117,117,118,118,119,119,106,106,
+ 120,120,103,103,103,103,121,121,104,104,
+ 104,105,105,292,1568,754,17,21,18,1042,
+ 947,45,1178,1213,1209,1256,1229,1349,1313,1392,
+ 1383,622,1404,75,324,92,322,768,135,213,
+ 1407,20,331,17,21,18,1042,43,45,1178,
+ 1213,1209,1256,1229,1349,1313,1392,1867,419,359,
+ 1309,137,134,136,160,587,187,638,458,224,
+ 233,892,1051,179,793,139,127,166,1426,1485,
+ 1110,770,539,143,146,149,152,414,581,128,
+ 1497,1965,2115,2144,2157,2173,1535,135,213,241,
+ 829,88,770,1399,296,1566,908,116,2255,458,
+ 224,232,1445,20,176,17,21,18,1042,41,
+ 137,134,136,160,1378,847,224,229,310,231,
+ 218,924,221,223,139,260,166,587,186,309,
+ 492,1592,143,146,149,152,414,307,587,31,
+ 1965,2115,2144,2157,2173,1535,1407,20,314,17,
+ 21,18,1042,43,45,1178,1213,1209,1256,1229,
+ 1349,1313,1845,334,1350,20,681,17,21,18,
+ 1042,947,45,1178,1213,1209,1256,1229,1349,1313,
+ 1392,1383,440,1404,75,355,281,1369,20,681,
+ 17,21,18,1042,947,45,1178,1213,1209,1256,
+ 1229,1349,1313,1392,1383,225,1404,75,986,281,
+ 1407,20,336,17,21,18,1042,43,45,1178,
+ 1213,1209,1256,1229,1349,1848,124,286,25,1407,
+ 20,1439,17,21,18,1042,947,45,1178,1213,
+ 1209,1256,1229,1349,1313,1392,1383,1161,1404,75,
+ 286,92,746,287,1439,1471,1407,20,357,17,
+ 21,18,1042,43,45,1178,1213,1209,1256,1229,
+ 1832,365,255,213,587,1633,287,501,1619,1265,
+ 20,681,17,21,18,1042,947,45,1178,1213,
+ 1209,1256,1229,1349,1313,1392,1383,442,1404,75,
+ 833,281,1342,1199,20,1365,17,21,18,1042,
+ 947,45,1178,1213,1209,1256,1229,1349,1313,1392,
+ 1383,1566,1404,75,626,359,1407,20,788,17,
+ 21,18,1042,43,45,1178,1213,1209,1256,1842,
+ 708,311,288,239,1242,20,1439,17,21,18,
+ 1042,947,45,1178,1213,1209,1256,1229,1349,1313,
+ 1392,1383,210,1404,75,421,281,1312,289,1388,
+ 20,412,17,21,18,1042,947,45,1178,1213,
+ 1209,1256,1229,1349,1313,1392,1383,986,1404,75,
+ 747,281,1407,20,541,17,21,18,1042,43,
+ 45,1178,1213,1209,1795,123,421,158,539,1407,
+ 20,1439,17,21,18,1042,947,45,1178,1213,
+ 1209,1256,1229,1349,1313,1392,1383,88,1404,75,
+ 505,86,290,1039,326,634,1439,1426,20,1421,
+ 17,21,18,1042,947,45,1178,1213,1209,1256,
+ 1229,1349,1313,1392,1383,1115,1404,75,443,856,
+ 1108,179,1223,20,790,17,21,18,1042,947,
+ 45,1178,1213,1209,1256,1229,1349,1313,1392,1383,
+ 805,1404,75,331,1420,135,213,1894,927,292,
+ 794,638,847,224,229,587,188,219,924,221,
+ 223,274,240,1295,908,744,2210,54,137,134,
+ 136,160,269,1019,1023,272,437,58,421,562,
+ 2178,833,139,1448,166,587,1470,231,255,213,
+ 143,146,149,152,414,324,331,1059,1965,2115,
+ 2144,2157,2173,1535,1407,20,359,17,21,18,
+ 1042,43,45,1178,1213,1209,1256,1229,1349,1313,
+ 1392,1383,105,1404,94,1407,20,900,17,21,
+ 18,1042,947,45,1178,1213,1209,1256,1229,1349,
+ 1313,1392,1383,227,1404,75,243,85,1464,20,
+ 828,17,21,18,1042,34,1407,20,1534,17,
+ 21,18,1042,947,45,1178,1213,1209,1256,1229,
+ 1349,1313,1392,1383,913,1404,75,1484,84,1407,
+ 20,440,17,21,18,1042,947,45,1178,1213,
+ 1209,1256,1229,1349,1313,1392,1383,384,1404,75,
+ 308,83,1407,20,230,17,21,18,1042,947,
+ 45,1178,1213,1209,1256,1229,1349,1313,1392,1383,
+ 228,1404,75,1006,82,1407,20,440,17,21,
+ 18,1042,947,45,1178,1213,1209,1256,1229,1349,
+ 1313,1392,1383,440,1404,75,234,81,1407,20,
+ 2122,17,21,18,1042,947,45,1178,1213,1209,
+ 1256,1229,1349,1313,1392,1383,19,1404,75,1176,
+ 80,1407,20,1285,17,21,18,1042,947,45,
+ 1178,1213,1209,1256,1229,1349,1313,1392,1383,440,
+ 1404,75,1490,79,1407,20,293,17,21,18,
+ 1042,947,45,1178,1213,1209,1256,1229,1349,1313,
+ 1392,1383,1722,1404,75,276,78,1407,20,275,
+ 17,21,18,1042,947,45,1178,1213,1209,1256,
+ 1229,1349,1313,1392,1383,440,1404,75,440,77,
+ 1407,20,440,17,21,18,1042,947,45,1178,
+ 1213,1209,1256,1229,1349,1313,1392,1383,1747,1404,
+ 75,1784,76,1407,20,1888,17,21,18,1042,
+ 947,45,1178,1213,1209,1256,1229,1349,1313,1392,
+ 1383,440,1404,75,1511,93,1407,20,1056,17,
+ 21,18,1042,43,45,1178,1213,1209,1256,1229,
+ 1349,1313,1392,1383,1889,1404,94,1407,20,440,
+ 17,21,18,1042,947,45,1178,1213,1209,1256,
+ 1229,1349,1313,1392,1383,180,1404,75,1055,1642,
+ 1464,20,23,17,21,18,1042,33,1407,20,
+ 212,17,21,18,1042,947,45,1178,1213,1209,
+ 1256,1229,1349,1313,1392,1383,1589,1404,75,935,
+ 1688,1407,20,663,17,21,18,1042,43,45,
+ 1178,1213,1209,1256,1229,1349,1313,1392,1383,630,
+ 1404,94,1407,20,1056,17,21,18,1042,947,
+ 45,1178,1213,1209,1256,1229,1349,1313,1392,1383,
+ 331,1404,75,421,74,1257,345,628,1633,421,
+ 1313,1307,539,1407,20,202,17,21,18,1042,
+ 43,45,1178,1213,1209,1256,1229,1349,1313,1392,
+ 1383,90,1404,94,1407,20,1530,17,21,18,
+ 1042,43,45,1178,1213,1209,1256,1229,1349,1313,
+ 1392,1383,1613,1404,94,587,295,628,1633,581,
+ 440,1600,421,509,770,1407,20,203,17,21,
+ 18,1042,43,45,1178,1213,1209,1256,1229,1349,
+ 1313,1392,1383,273,1404,94,1378,419,1825,539,
+ 587,31,178,827,313,209,847,224,587,931,
+ 986,218,924,221,607,125,1138,1635,88,306,
+ 111,159,1486,87,1382,1119,1378,1159,112,1847,
+ 96,1350,109,95,97,98,99,100,419,419,
+ 1641,1694,986,288,1,827,313,255,213,110,
+ 254,213,463,155,568,209,127,195,1119,946,
+ 126,1691,111,371,591,87,1234,1635,1378,1000,
+ 845,107,96,1350,109,95,97,98,99,100,
+ 359,1119,675,254,213,312,890,421,1398,1474,
+ 24,110,908,400,2258,1384,847,224,229,1067,
+ 557,218,924,221,223,274,254,213,235,827,
+ 313,263,1339,108,1790,278,267,1019,1023,272,
+ 242,421,941,2230,2131,1064,111,772,1069,87,
+ 986,1502,1378,813,1511,264,96,1350,109,95,
+ 97,98,99,100,986,277,1407,20,122,17,
+ 21,18,1042,43,40,110,557,331,274,847,
+ 224,229,1762,60,218,924,221,223,274,267,
+ 1019,1023,272,261,492,283,421,107,539,267,
+ 1019,1023,272,1157,119,827,313,933,266,770,
+ 1124,876,1734,562,172,1108,179,88,1310,1700,
+ 440,1524,111,1085,1005,87,2135,421,1378,474,
+ 1956,197,96,1350,109,95,97,98,99,100,
+ 135,213,421,279,497,106,1027,277,360,1407,
+ 20,110,17,21,18,1042,43,45,1178,1213,
+ 1209,1803,1379,138,134,136,160,587,297,1511,
+ 274,359,986,108,480,827,539,140,440,166,
+ 331,267,1019,1023,272,144,147,150,153,414,
+ 2292,1511,111,1511,193,87,521,827,539,1502,
+ 1310,1745,96,1350,1531,95,97,98,99,100,
+ 204,22,440,1118,111,1205,562,87,562,827,
+ 539,581,359,1497,96,1350,104,95,97,98,
+ 99,100,181,2002,205,280,111,1289,20,87,
+ 17,21,18,1042,43,36,96,1350,102,95,
+ 97,98,99,100,603,827,539,905,847,224,
+ 229,1126,244,218,924,221,223,1701,359,1141,
+ 706,331,111,159,868,87,1497,246,745,194,
+ 1511,1511,96,1350,103,95,97,98,99,100,
+ 1407,20,986,17,21,18,1042,43,45,1178,
+ 1213,1820,644,827,539,155,568,562,245,459,
+ 2306,847,224,229,1119,371,218,924,221,223,
+ 111,1729,28,87,765,986,1886,685,827,539,
+ 96,1350,119,95,97,98,99,100,1498,254,
+ 213,1504,1110,118,539,111,1407,20,87,17,
+ 21,18,1042,43,39,96,1350,115,95,97,
+ 98,99,100,88,726,827,539,440,440,116,
+ 331,198,200,1289,20,367,17,21,18,1042,
+ 43,36,111,477,1681,87,767,827,539,1362,
+ 1828,1850,96,1350,1893,95,97,98,99,100,
+ 1284,1286,1470,1712,111,359,562,87,808,827,
+ 539,1483,1177,247,96,1350,114,95,97,98,
+ 99,100,712,2231,282,795,111,359,755,87,
+ 849,827,539,581,1045,1497,96,1350,121,95,
+ 97,98,99,100,868,294,1497,1185,111,1407,
+ 20,87,17,21,18,1042,43,38,96,1350,
+ 120,95,97,98,99,100,1499,296,1312,1512,
+ 847,224,229,1261,1514,218,924,221,223,2391,
+ 2391,847,224,229,2391,159,218,924,221,223,
+ 2391,2391,2391,2391,1407,20,1886,17,21,18,
+ 1042,43,45,1178,1213,1821,1407,20,2391,17,
+ 21,18,1042,43,45,1178,1690,156,568,1407,
+ 20,2391,17,21,18,1042,43,45,1178,1213,
+ 1822,2391,2391,2391,2391,2391,622,2391,2391,2391,
+ 2391,199,200,1407,20,1146,17,21,18,1042,
+ 43,45,1178,1213,1831,1407,20,2391,17,21,
+ 18,1042,43,45,1178,1698,349,2391,372,2391,
+ 135,213,638,847,224,229,2391,2391,219,924,
+ 221,223,622,2391,304,2391,2391,421,2391,539,
+ 358,2391,2391,142,134,136,160,1407,20,2391,
+ 17,21,18,1042,43,45,1758,141,88,166,
+ 2391,2391,2391,303,1088,2391,2391,2391,638,847,
+ 224,1468,2391,2391,219,924,221,1465,1407,20,
+ 2391,17,21,18,1042,43,45,1761,1407,20,
+ 2391,17,21,18,1042,43,37,1407,20,2391,
+ 17,21,18,1042,43,35,1407,20,2391,17,
+ 21,18,1042,43,36,2391,2391,2391,2391,300,
+ 302,2391,315,1407,20,2391,17,21,18,1042,
+ 43,48,2391,2391,1407,20,2132,17,21,18,
+ 1042,43,47,1407,20,944,17,21,18,1042,
+ 43,46,1319,20,2391,17,21,18,1042,43,
+ 44,950,406,770,372,950,2391,770,2391,2391,
+ 135,213,2391,2391,1003,2391,2391,421,2391,539,
+ 304,2391,2391,2391,2391,1399,358,1062,2391,1399,
+ 2391,2391,2391,145,134,136,160,562,88,135,
+ 213,562,2391,1468,1591,2391,2391,2391,874,303,
+ 770,2391,135,213,765,2391,2391,259,2231,2391,
+ 2391,259,148,134,136,160,1540,1409,135,213,
+ 1540,1409,197,2391,2391,151,134,136,160,2391,
+ 938,2391,770,2391,2391,2391,421,1110,313,313,
+ 2391,154,134,136,160,421,421,313,313,2391,
+ 992,1508,770,1379,1399,301,302,88,88,2391,
+ 197,1378,2391,993,116,2391,88,88,2391,197,
+ 197,2391,993,993,197,402,2391,770,402,2391,
+ 770,2391,2391,2391,380,192,259,638,2391,2391,
+ 2391,1452,2391,1134,1527,931,1409,274,1484,1399,
+ 1452,1452,1399,2391,2391,1379,2391,2391,269,1019,
+ 1023,272,1110,977,539,2391,2391,2391,2391,2391,
+ 2391,2391,1092,1131,2391,2391,1110,421,539,539,
+ 421,259,539,88,259,2391,2391,192,2391,116,
+ 931,1409,973,1632,1409,1611,1527,88,88,2391,
+ 2391,88,2391,116,1854,2391,2391,1598,2391,2391,
+ 2391,2391,2391,2391,2391,2391,2391,2391,2391,2391,
+ 2391,2391,2391,1787,2391,2391,2391,2391,2391,2391,
+ 2391,2391,2391,2391,2391,2391,2391,1788,2391,0,
+ 11,226,0,2399,1,0,1,2628,0,8,
+ 10,0,179,20,0,1,2617,0,113,1806,
0
};
};
@@ -615,27 +627,27 @@ public class C99Parserprs implements lpg.lpgjavaruntime.ParseTable, C99Parsersym
5,19,20,21,5,23,24,25,26,27,
28,29,19,20,21,53,23,60,25,26,
27,28,29,41,42,43,44,45,46,47,
- 48,49,50,51,52,0,54,55,56,0,
+ 48,49,50,51,52,0,54,55,56,4,
58,0,1,53,3,4,62,63,53,0,
- 60,64,0,4,0,0,2,2,4,0,
+ 60,64,0,0,0,0,2,22,4,4,
19,20,21,64,23,24,25,26,27,28,
29,19,20,21,0,23,0,25,26,27,
28,29,41,42,43,44,45,46,47,48,
- 49,50,51,52,0,54,55,56,4,58,
- 0,1,2,3,0,0,57,53,53,60,
- 5,0,0,0,60,0,22,4,6,19,
- 20,21,0,23,9,25,26,27,28,29,
+ 49,50,51,52,0,54,55,56,0,58,
+ 0,1,2,3,0,0,57,53,0,5,
+ 2,0,57,0,60,60,0,4,0,19,
+ 20,21,6,23,6,25,26,27,28,29,
19,20,21,57,23,22,25,26,27,28,
29,41,42,43,44,45,46,47,48,49,
- 50,51,52,79,54,55,56,0,1,0,
- 3,0,0,4,0,1,2,6,0,5,
- 57,0,67,68,61,0,19,20,21,4,
+ 50,51,52,59,54,55,56,0,1,0,
+ 3,53,57,4,0,1,2,0,0,5,
+ 57,67,68,0,61,0,19,20,21,4,
23,22,25,26,27,28,29,19,20,21,
- 19,20,21,0,1,0,0,22,41,42,
+ 0,1,19,20,21,0,0,22,41,42,
43,44,45,46,47,48,49,50,51,52,
0,54,55,56,19,20,21,53,23,60,
- 25,26,27,28,29,0,64,2,0,19,
- 20,21,57,0,0,0,41,42,43,44,
+ 25,26,27,28,29,0,0,2,61,19,
+ 20,21,57,0,0,9,41,42,43,44,
45,46,47,48,49,50,51,52,0,1,
2,3,4,5,0,7,8,9,10,11,
12,13,14,15,16,17,18,0,0,0,
@@ -648,10 +660,10 @@ public class C99Parserprs implements lpg.lpgjavaruntime.ParseTable, C99Parsersym
16,17,18,0,0,0,0,65,0,1,
2,3,4,5,0,7,8,9,10,11,
12,13,14,15,16,17,18,0,0,0,
- 0,0,0,19,20,21,4,57,0,1,
+ 0,0,0,19,20,21,4,6,0,1,
2,3,58,5,6,7,8,9,10,11,
- 12,13,14,15,16,17,18,0,0,53,
- 2,57,0,5,0,62,63,62,63,0,
+ 12,13,14,15,16,17,18,53,0,79,
+ 2,0,0,5,0,62,63,62,63,0,
1,2,3,65,5,6,7,8,9,10,
11,12,13,14,15,16,17,18,0,1,
2,3,60,5,6,7,8,9,10,11,
@@ -665,21 +677,20 @@ public class C99Parserprs implements lpg.lpgjavaruntime.ParseTable, C99Parsersym
0,7,8,9,10,11,12,13,14,15,
16,17,18,0,1,2,3,0,5,0,
7,8,9,10,11,12,13,14,15,16,
- 17,18,0,0,53,0,19,20,21,0,
- 23,2,25,26,27,28,29,66,0,10,
- 11,19,20,21,0,0,0,2,0,5,
- 5,5,4,0,0,0,0,0,0,6,
- 6,4,0,0,0,0,0,0,0,6,
- 6,62,63,6,0,0,0,0,0,0,
- 0,0,53,0,59,62,63,0,0,0,
- 0,0,0,0,0,66,0,0,53,61,
- 0,0,0,0,0,0,58,0,0,80,
- 0,67,68,67,68,58,61,59,0,57,
- 0,0,0,0,59,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,0,0,0,0,0,0,0,0,
- 0
+ 17,18,0,0,0,0,19,20,21,0,
+ 23,2,25,26,27,28,29,0,0,10,
+ 11,0,5,0,19,20,21,0,5,2,
+ 0,0,5,0,4,0,0,6,0,4,
+ 0,0,6,0,6,0,6,0,0,0,
+ 0,62,63,0,0,0,53,0,0,0,
+ 0,0,53,0,62,63,0,0,64,66,
+ 0,0,0,0,0,66,0,59,57,0,
+ 53,0,0,0,67,68,0,0,58,80,
+ 67,68,0,58,61,0,0,0,0,0,
+ 59,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,0,
+ 0,0,0,0,0,0,0
};
};
public final static byte termCheck[] = TermCheck.termCheck;
@@ -687,165 +698,165 @@ public class C99Parserprs implements lpg.lpgjavaruntime.ParseTable, C99Parsersym
public interface TermAction {
public final static char termAction[] = {0,
- 2331,4169,1,4168,1636,1,1342,1,1,1,
+ 2391,4227,1,4225,1503,1,831,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,2339,1,2431,1,1,1,1,1,
- 826,798,771,1417,993,1444,793,1463,871,2218,
- 845,1,1,1,1,1,1,1,1,1,
- 1,1,1,2331,1,1,1,2331,2337,7,
- 2319,2319,2319,2319,2319,2319,2319,2319,2319,2319,
- 2319,2319,2319,2319,2319,2319,2319,2319,2319,2319,
- 2319,2319,2319,2319,2319,2319,2319,2319,2319,2319,
- 2319,2319,2319,2319,2319,2319,2319,2319,2319,2319,
- 2319,2319,2319,2319,2319,2319,2319,2319,2319,2319,
- 2319,2319,1658,2319,2319,2319,1680,2319,2331,4169,
- 1,4168,1636,1,1342,1,1,1,1,1,
+ 1,1,2400,1,2492,1,1,1,1,1,
+ 700,518,854,697,817,1594,650,835,800,1337,
+ 774,1,1,1,1,1,1,1,1,1,
+ 1,1,1,2391,1,1,1,2391,2398,8,
+ 2379,2379,2379,2379,2379,2379,2379,2379,2379,2379,
+ 2379,2379,2379,2379,2379,2379,2379,2379,2379,2379,
+ 2379,2379,2379,2379,2379,2379,2379,2379,2379,2379,
+ 2379,2379,2379,2379,2379,2379,2379,2379,2379,2379,
+ 2379,2379,2379,2379,2379,2379,2379,2379,2379,2379,
+ 2379,2379,1616,2379,2379,2379,1638,2379,2391,4227,
+ 1,4225,1503,1,831,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 2339,1,2431,1,1,1,1,1,826,798,
- 771,1417,993,1444,793,1463,871,2218,845,1,
+ 2400,1,2492,1,1,1,1,1,700,518,
+ 854,697,817,1594,650,835,800,1337,774,1,
1,1,1,1,1,1,1,1,1,1,
- 1,2331,1,1,1,181,2337,2331,4169,1,
- 4168,2340,1,1342,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,2339,
- 1,2431,1,1,1,1,1,826,798,771,
- 1417,993,1444,793,1463,871,2218,845,1,1,
+ 1,2391,1,1,1,182,2398,2391,4227,1,
+ 4225,2401,1,831,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,2400,
+ 1,2492,1,1,1,1,1,700,518,854,
+ 697,817,1594,650,835,800,1337,774,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1716,1,1,1,2331,4169,1,4168,2340,1,
- 1342,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,2339,1,2431,1,
- 1,1,1,1,826,798,771,1417,993,1444,
- 793,1463,871,2218,845,1,1,1,1,1,
- 1,1,1,1,1,1,1,70,1,1,
- 1,2331,2341,1361,2342,10,2026,2310,1911,1808,
- 2015,2193,2180,1173,2343,2344,2345,2346,1699,410,
- 2544,2545,2546,2331,2493,434,2494,2492,2547,2495,
- 2491,2331,2341,2331,2342,2331,2341,1439,2342,1321,
- 252,1468,2498,2503,2502,2500,2501,2499,2504,2505,
- 2497,2506,2507,2508,59,1434,838,815,2331,1,
- 1,1,2340,1,184,4166,156,4166,2331,19,
- 178,2322,2334,2322,2322,455,61,1,1,1,
- 2339,1,2635,1,1,1,1,1,178,178,
- 178,2322,178,42,178,178,178,178,178,1,
+ 1674,1,1,1,2391,4227,1,4225,2401,1,
+ 831,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,2400,1,2492,1,
+ 1,1,1,1,700,518,854,697,817,1594,
+ 650,835,800,1337,774,1,1,1,1,1,
+ 1,1,1,1,1,1,1,71,1,1,
+ 1,2391,2402,2216,2403,11,2076,2370,2058,1869,
+ 2067,1180,898,412,2404,2405,2406,2407,1766,1486,
+ 2605,2606,2607,2391,2554,406,2555,2553,2608,2556,
+ 2552,2391,2402,2391,2403,2391,2402,828,2403,610,
+ 253,1253,2559,2564,2563,2561,2562,2560,2565,2566,
+ 2558,2567,2568,2569,60,704,740,495,2391,1,
+ 1,1,2401,1,185,4220,157,4220,2391,20,
+ 179,2382,2395,2382,2382,456,62,1,1,1,
+ 2400,1,2696,1,1,1,1,1,179,179,
+ 179,2382,179,43,179,179,179,179,179,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,2331,1,1,1,2340,
- 1,2331,2322,1956,1752,1349,565,653,1,2322,
- 1,298,2340,2333,1,1,1,2339,1,2635,
- 1,1,1,1,1,1956,1752,1349,565,2331,
- 2339,234,182,2336,1083,222,1,1,1,1,
- 1,1,1,1,1,1,1,1,284,1,
- 1,1,68,222,1256,2588,1060,1037,1014,991,
- 968,922,945,899,876,853,60,1696,297,2331,
- 4169,1,4168,2340,1,1342,1,1,1,1,
- 1,1,1,1,1,1,1,1,222,2335,
- 228,2339,222,2431,183,4167,231,4167,66,826,
- 798,771,1417,993,1444,793,1463,871,2218,845,
- 2331,4169,1,4168,2340,1,1342,1,1,1,
- 1,1,1,1,1,1,1,1,1,519,
- 205,4170,2339,4170,2431,1956,1752,1349,565,2331,
- 826,798,771,1417,993,1444,793,1463,871,2218,
- 845,2331,4169,1,4168,2340,1,1342,1,1,
+ 1,1,1,1,1,2391,1,1,1,2401,
+ 1,2391,2382,1963,1939,1914,1710,654,1,2382,
+ 1,299,2401,2394,1,1,1,2400,1,2696,
+ 1,1,1,1,1,1963,1939,1914,1710,2391,
+ 2400,235,183,2397,1090,223,1,1,1,1,
+ 1,1,1,1,1,1,1,1,285,1,
+ 1,1,69,223,1284,2649,1067,1044,1021,998,
+ 975,929,952,906,875,719,61,1305,298,2391,
+ 4227,1,4225,2401,1,831,1,1,1,1,
+ 1,1,1,1,1,1,1,1,223,2396,
+ 229,2400,223,2492,184,4222,232,4222,67,700,
+ 518,854,697,817,1594,650,835,800,1337,774,
+ 2391,4227,1,4225,2401,1,831,1,1,1,
+ 1,1,1,1,1,1,1,1,1,520,
+ 206,4224,2400,4224,2492,1963,1939,1914,1710,2391,
+ 700,518,854,697,817,1594,650,835,800,1337,
+ 774,2391,4227,1,4225,2401,1,831,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,2556,387,2339,634,2431,2331,2341,2331,2342,
- 72,826,798,771,1417,993,1444,793,1463,871,
- 2218,845,2331,4169,1,4168,2340,1,1342,1,
+ 1,2617,388,2400,566,2492,2391,2402,2391,2403,
+ 73,700,518,854,697,817,1594,650,835,800,
+ 1337,774,2391,4227,1,4225,2401,1,831,1,
1,1,1,1,1,1,1,1,1,1,
- 1,252,2556,387,2339,2331,2431,207,2341,62,
- 2342,1547,826,798,771,1417,993,1444,793,1463,
- 871,2218,845,2331,4169,1,4168,2340,1,1342,
+ 1,253,2617,388,2400,2391,2492,208,2402,63,
+ 2403,1259,700,518,854,697,817,1594,650,835,
+ 800,1337,774,2391,4227,1,4225,2401,1,831,
1,1,1,1,1,1,1,1,1,1,
- 1,1,51,206,1298,2339,1298,2431,2331,1984,
- 1246,1486,2264,826,798,771,1417,993,1444,793,
- 1463,871,2218,845,2331,4169,1,4168,2340,1,
- 1342,1,1,1,1,1,1,1,1,1,
- 1,1,1,1308,796,53,2339,2331,2431,379,
- 2331,63,1984,1246,826,798,771,1417,993,1444,
- 793,1463,871,2218,845,2331,4169,1,4168,2340,
- 1,1342,1,1,1,1,1,1,1,1,
- 1,1,1,1,52,2331,2331,2339,378,2431,
- 1514,1984,1246,2331,67,826,798,771,1417,993,
- 1444,793,1463,871,2218,845,2331,4169,1,4168,
- 2340,1,1342,1,1,1,1,1,1,1,
- 1,1,1,1,1,1308,796,2331,2339,2331,
- 2431,715,1570,2331,69,1573,826,798,771,1417,
- 993,1444,793,1463,871,2218,845,2331,4169,1,
- 4168,2340,1,1342,1,1,1,1,1,1,
- 1,1,1,1,1,1,2309,2331,1,2339,
- 634,2431,1,1603,1342,2331,2313,826,798,771,
- 1417,993,1444,793,1463,871,2218,845,2331,4169,
- 1,4168,2340,1,1342,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,2556,387,
- 2339,519,2431,2331,1,2331,1,190,826,798,
- 771,1417,993,1444,793,1463,871,2218,845,248,
- 2337,2331,1,1,1,2340,1,2526,1,1,
- 1,1,1,2331,2331,1754,2280,1,1,1,
- 1,2336,219,2339,1,1,1,1,1,1,
- 1,1,1,1,1,1,1204,1,1,1,
- 64,190,2331,1,54,1,189,1,2316,701,
- 1,2325,1481,129,2336,261,2556,1481,1895,1,
- 1,1,1,1,252,1,2526,1,1,1,
- 1,1,2544,2545,2546,611,2493,2335,2494,2492,
- 2547,2495,2491,1,1,1,1,1,1,1,
- 1,1,1,1,1,2331,1,1,1,2331,
- 189,2331,1,611,1,190,1617,1968,611,2331,
- 2335,2588,130,2336,1,221,1994,821,2336,2331,
- 1,1,1,2588,1,2526,1,1,1,1,
- 1,2544,2545,2546,112,2493,255,2494,2492,2547,
- 2495,2491,1,1,1,1,1,1,1,1,
- 1,1,1,1,2331,1,1,1,2340,190,
- 1,369,387,2342,2331,48,1775,611,611,2335,
- 2088,131,2331,235,2335,65,2339,222,1630,2544,
- 2545,2546,2331,2493,701,2494,2492,2547,2495,2491,
- 2544,2545,2546,822,2493,222,2494,2492,2547,2495,
- 2491,2498,2503,2502,2500,2501,2499,2504,2505,2497,
- 2506,2507,2508,2328,1434,838,815,2331,2341,1,
- 2342,228,1,116,267,2556,1481,232,249,252,
- 222,2331,2072,2059,222,2331,2544,2545,2546,2340,
- 2493,116,2494,2492,2547,2495,2491,1,1,1,
- 2544,2545,2546,2331,2568,128,2331,2339,2498,2503,
- 2502,2500,2501,2499,2504,2505,2497,2506,2507,2508,
- 250,1434,838,815,2544,2545,2546,611,2493,116,
- 2494,2492,2547,2495,2491,269,2587,1390,2331,2544,
- 2545,2546,1906,2331,71,2331,2498,2503,2502,2500,
- 2501,2499,2504,2505,2497,2506,2507,2508,1,2341,
- 1361,2342,2334,1835,88,1911,1808,2015,2193,2180,
- 1173,2343,2344,2345,2346,1699,410,2331,2331,2331,
- 2331,746,2331,2341,1361,2342,2334,2006,611,1911,
- 1808,2015,2193,2180,1173,2343,2344,2345,2346,1699,
- 410,2331,2341,1361,2342,1181,2026,4160,1911,1808,
- 2015,2193,2180,1173,2343,2344,2345,2346,1699,410,
- 29,1106,455,2333,1,2341,1361,2342,28,2026,
- 4160,1911,1808,2015,2193,2180,1173,2343,2344,2345,
- 2346,1699,410,58,206,57,270,2333,2331,2341,
- 1361,2342,2334,2026,247,1911,1808,2015,2193,2180,
- 1173,2343,2344,2345,2346,1699,410,2331,2331,2331,
- 2331,2331,1,2544,2545,2546,90,2359,2331,2341,
- 1361,2342,28,2026,1662,1911,1808,2015,2193,2180,
- 1173,2343,2344,2345,2346,1699,410,2331,264,611,
- 1994,3306,2331,1,2331,1617,1968,1617,1968,1,
- 2341,1361,2342,2333,2026,4160,1911,1808,2015,2193,
- 2180,1173,2343,2344,2345,2346,1699,410,1,2341,
- 1361,2342,90,2026,4160,1911,1808,2015,2193,2180,
- 1173,2343,2344,2345,2346,1699,410,2331,2341,1361,
- 2342,611,2026,4160,1911,1808,2015,2193,2180,1173,
- 2343,2344,2345,2346,1699,410,2331,2341,1361,2342,
- 2331,2026,2331,1911,1808,2015,2193,2180,1173,2343,
- 2344,2345,2346,1699,410,1,2341,1361,2342,2331,
- 2026,290,1911,1808,2015,2193,2180,1173,2343,2344,
- 2345,2346,1699,410,2331,2341,2201,2342,2331,2026,
- 2331,1911,1808,2015,2193,2180,1173,2343,2344,2345,
- 2346,1699,410,2331,2341,2202,2342,132,2026,56,
- 1911,1808,2015,2193,2180,1173,2343,2344,2345,2346,
- 1699,410,251,55,1277,2331,2544,2545,2546,31,
- 2493,1324,2494,2492,2547,2495,2491,1929,210,2356,
- 2357,2544,2545,2546,50,267,49,1994,2331,2088,
- 252,2088,2338,41,2331,2331,2331,283,200,1662,
- 1662,1583,29,188,188,1,1,188,2331,184,
- 183,1617,1968,205,2331,2331,2331,2331,2331,2331,
- 2331,2331,2250,2331,339,1617,1968,2331,2331,2331,
- 2331,2331,2331,2331,2331,1371,2331,2331,611,1129,
- 2331,2331,2331,2331,2331,2331,2337,2331,2331,447,
- 2331,2072,2059,2072,2059,1583,678,1225,2331,588,
- 2331,2331,2331,2331,2342,2341
+ 1,1,52,207,584,2400,584,2492,2391,2048,
+ 2017,340,2307,700,518,854,697,817,1594,650,
+ 835,800,1337,774,2391,4227,1,4225,2401,1,
+ 831,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1569,702,54,2400,2391,2492,2217,
+ 2391,64,2048,2017,700,518,854,697,817,1594,
+ 650,835,800,1337,774,2391,4227,1,4225,2401,
+ 1,831,1,1,1,1,1,1,1,1,
+ 1,1,1,1,53,2391,2391,2400,716,2492,
+ 342,2048,2017,2391,68,700,518,854,697,817,
+ 1594,650,835,800,1337,774,2391,4227,1,4225,
+ 2401,1,831,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1569,702,2391,2400,2391,
+ 2492,1516,1250,2391,70,2007,700,518,854,697,
+ 817,1594,650,835,800,1337,774,2391,4227,1,
+ 4225,2401,1,831,1,1,1,1,1,1,
+ 1,1,1,1,1,1,2369,2391,1,2400,
+ 566,2492,1,1461,831,2391,2373,700,518,854,
+ 697,817,1594,650,835,800,1337,774,2391,4227,
+ 1,4225,2401,1,831,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,2617,388,
+ 2400,520,2492,2391,1,2391,1,191,700,518,
+ 854,697,817,1594,650,835,800,1337,774,249,
+ 2398,2391,1,1,1,2401,1,2587,1,1,
+ 1,1,1,2391,2391,1677,2310,1,1,1,
+ 1,2397,220,2400,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1211,1,1,1,
+ 65,191,2391,1,55,1,190,1,2376,636,
+ 1,2385,1462,130,2397,262,2617,1462,1853,1,
+ 1,1,1,1,253,1,2587,1,1,1,
+ 1,1,2605,2606,2607,613,2554,2396,2555,2553,
+ 2608,2556,2552,1,1,1,1,1,1,1,
+ 1,1,1,1,1,2391,1,1,1,2401,
+ 190,2391,1,613,1,191,1926,1975,613,256,
+ 2396,2649,131,2391,1,2391,1544,2400,2397,2397,
+ 1,1,1,2649,1,2587,1,1,1,1,
+ 1,2605,2606,2607,2391,2554,89,2555,2553,2608,
+ 2556,2552,1,1,1,1,1,1,1,1,
+ 1,1,1,1,2391,1,1,1,2391,191,
+ 1,404,388,2403,49,30,379,613,222,2113,
+ 814,132,1689,236,2396,2396,2391,223,229,2605,
+ 2606,2607,1547,2554,233,2555,2553,2608,2556,2552,
+ 2605,2606,2607,1113,2554,223,2555,2553,2608,2556,
+ 2552,2559,2564,2563,2561,2562,2560,2565,2566,2558,
+ 2567,2568,2569,1232,704,740,495,2391,2402,1,
+ 2403,613,2420,117,268,2617,1462,211,2391,253,
+ 223,2104,2093,250,223,2391,2605,2606,2607,2401,
+ 2554,117,2555,2553,2608,2556,2552,2605,2606,2607,
+ 2391,2629,1,1,1,129,2391,2400,2559,2564,
+ 2563,2561,2562,2560,2565,2566,2558,2567,2568,2569,
+ 248,704,740,495,2605,2606,2607,613,2554,117,
+ 2555,2553,2608,2556,2552,270,66,1432,1136,2605,
+ 2606,2607,1864,2391,72,636,2559,2564,2563,2561,
+ 2562,2560,2565,2566,2558,2567,2568,2569,1,2402,
+ 2216,2403,2395,1657,207,2058,1869,2067,1180,898,
+ 412,2404,2405,2406,2407,1766,1486,2391,2391,2391,
+ 2391,747,2391,2402,2216,2403,2395,1793,613,2058,
+ 1869,2067,1180,898,412,2404,2405,2406,2407,1766,
+ 1486,2391,2402,2216,2403,1188,2076,4219,2058,1869,
+ 2067,1180,898,412,2404,2405,2406,2407,1766,1486,
+ 113,3367,456,2394,1,2402,2216,2403,29,2076,
+ 4219,2058,1869,2067,1180,898,412,2404,2405,2406,
+ 2407,1766,1486,59,271,58,2391,2394,2391,2402,
+ 2216,2403,2395,2076,251,2058,1869,2067,1180,898,
+ 412,2404,2405,2406,2407,1766,1486,2391,2391,2391,
+ 2391,42,1,2605,2606,2607,91,1562,2391,2402,
+ 2216,2403,29,2076,1562,2058,1869,2067,1180,898,
+ 412,2404,2405,2406,2407,1766,1486,613,265,2388,
+ 1544,2391,2391,1,2391,1926,1975,1926,1975,1,
+ 2402,2216,2403,2394,2076,4219,2058,1869,2067,1180,
+ 898,412,2404,2405,2406,2407,1766,1486,1,2402,
+ 2216,2403,91,2076,4219,2058,1869,2067,1180,898,
+ 412,2404,2405,2406,2407,1766,1486,2391,2402,2216,
+ 2403,613,2076,4219,2058,1869,2067,1180,898,412,
+ 2404,2405,2406,2407,1766,1486,2391,2402,2216,2403,
+ 2391,2076,2391,2058,1869,2067,1180,898,412,2404,
+ 2405,2406,2407,1766,1486,1,2402,2216,2403,2391,
+ 2076,2391,2058,1869,2067,1180,898,412,2404,2405,
+ 2406,2407,1766,1486,2391,2402,2225,2403,2391,2076,
+ 2391,2058,1869,2067,1180,898,412,2404,2405,2406,
+ 2407,1766,1486,2391,2402,2226,2403,133,2076,57,
+ 2058,1869,2067,1180,898,412,2404,2405,2406,2407,
+ 1766,1486,56,291,1,252,2605,2606,2607,32,
+ 2554,1260,2555,2553,2608,2556,2552,51,201,2417,
+ 2418,30,2113,50,2605,2606,2607,268,2113,1544,
+ 2391,2391,253,2391,2399,284,189,1562,189,1427,
+ 189,1,185,1,184,2391,206,2391,2391,2391,
+ 2391,1926,1975,2391,2391,2391,1315,2391,2391,2391,
+ 2391,2391,2147,2391,1926,1975,2391,2391,2648,1587,
+ 2391,2391,2391,2391,2391,1340,2391,1263,589,2391,
+ 613,2391,2391,2391,2104,2093,2391,2391,2398,448,
+ 2104,2093,2391,1427,679,2391,2391,2391,2391,2391,
+ 2403,2391,2402
};
};
public final static char termAction[] = TermAction.termAction;
@@ -853,36 +864,36 @@ public class C99Parserprs implements lpg.lpgjavaruntime.ParseTable, C99Parsersym
public interface Asb {
public final static char asb[] = {0,
- 493,1,371,447,493,491,180,192,489,192,
- 489,489,192,489,192,373,271,449,438,524,
- 449,343,489,309,309,489,309,449,271,208,
- 271,8,9,282,373,491,153,566,565,271,
- 62,344,491,211,491,273,271,200,449,282,
- 39,284,373,449,21,449,343,254,154,154,
- 309,524,524,241,524,524,154,343,15,256,
- 15,447,359,491,211,273,273,200,396,284,
- 93,59,396,119,359,256,256,256,256,256,
- 43,256,256,256,113,130,135,133,141,137,
- 144,143,146,145,147,208,203,373,207,465,
- 238,491,256,62,565,341,154,256,154,357,
- 256,400,256,256,344,241,15,241,449,150,
- 402,211,238,458,211,273,275,453,275,396,
- 200,207,396,59,42,39,256,256,256,256,
- 256,256,256,256,256,256,256,208,208,526,
- 359,359,309,309,161,256,256,256,256,256,
- 256,256,256,256,256,256,256,256,256,256,
- 256,256,256,256,256,205,206,279,271,284,
- 238,19,254,154,208,524,208,208,343,241,
- 256,211,460,275,238,256,309,200,451,256,
- 256,59,43,21,271,279,208,208,208,59,
- 133,133,130,130,137,137,135,135,135,135,
- 143,141,145,144,15,146,282,208,312,203,
- 19,154,254,241,256,241,241,238,153,256,
- 152,238,59,59,19,526,312,532,491,256,
- 284,208,275,158,161,154,208,342,460,256,
- 19,208,238,17,569,309,256,157,208,161,
- 154,241,275,3,21,59,309,256,241,208,
- 238,59,241
+ 509,1,315,391,509,29,478,490,27,490,
+ 27,27,490,27,490,317,427,393,382,540,
+ 393,287,27,282,282,27,282,393,427,506,
+ 427,157,158,255,317,29,210,473,472,427,
+ 53,288,29,127,29,214,427,498,393,255,
+ 84,257,317,393,35,393,287,410,211,211,
+ 282,540,540,397,540,540,211,287,164,412,
+ 164,391,303,29,127,214,214,498,498,257,
+ 107,104,340,176,303,412,412,412,412,412,
+ 88,412,412,412,170,187,192,190,198,194,
+ 201,200,203,202,204,506,501,317,505,3,
+ 154,29,412,53,472,285,211,412,211,301,
+ 412,344,412,412,288,397,164,397,393,207,
+ 346,127,154,239,127,214,216,429,216,498,
+ 340,505,340,104,87,84,412,412,412,412,
+ 412,412,412,412,412,412,412,506,506,246,
+ 303,303,282,282,220,412,412,412,412,412,
+ 412,412,412,412,412,412,412,412,412,412,
+ 412,412,412,412,412,503,504,252,427,257,
+ 154,33,410,211,506,540,506,506,287,397,
+ 412,127,241,216,154,412,282,340,498,395,
+ 412,412,104,88,35,427,252,506,506,506,
+ 104,190,190,187,187,194,194,192,192,192,
+ 192,200,198,202,201,164,203,255,506,542,
+ 501,33,211,410,397,412,397,397,154,210,
+ 412,209,154,498,104,104,33,246,542,439,
+ 29,412,257,506,216,167,220,211,506,286,
+ 241,412,33,506,154,31,476,282,412,166,
+ 506,220,211,397,216,434,35,104,282,412,
+ 397,506,154,104,397
};
};
public final static char asb[] = Asb.asb;
@@ -890,63 +901,63 @@ public class C99Parserprs implements lpg.lpgjavaruntime.ParseTable, C99Parsersym
public interface Asr {
public final static byte asr[] = {0,
- 73,0,4,57,58,22,0,2,4,61,
- 57,60,22,53,59,0,4,58,53,66,
- 2,13,14,15,16,1,3,10,11,9,
- 5,7,8,17,18,12,6,0,19,20,
- 21,23,10,11,9,5,7,8,17,18,
- 12,2,1,3,13,14,15,16,65,4,
- 0,25,41,19,42,54,26,43,27,44,
- 45,28,20,46,47,23,55,29,56,48,
- 49,21,50,51,52,1,3,4,61,57,
- 22,0,19,20,21,10,11,9,5,7,
- 8,17,18,12,2,1,3,13,14,15,
- 16,0,53,2,66,80,10,11,61,83,
- 84,85,86,87,89,88,90,91,92,5,
- 67,68,7,8,63,62,69,70,71,72,
- 74,75,9,76,77,78,58,81,82,65,
- 60,59,57,22,4,0,61,53,66,0,
- 4,60,12,13,14,15,16,1,3,2,
- 10,11,9,5,7,8,17,18,0,49,
- 41,46,44,45,43,42,47,48,50,51,
- 52,59,22,29,26,23,25,28,27,19,
- 20,21,5,1,2,53,57,60,4,0,
- 25,41,19,42,54,26,43,27,44,45,
- 28,20,46,47,23,55,29,56,48,49,
- 21,50,51,52,1,3,24,4,58,0,
- 32,34,6,38,40,35,30,36,37,33,
- 31,39,24,22,4,10,11,9,7,8,
- 17,18,12,2,1,3,13,14,15,16,
- 5,0,1,3,4,58,57,0,5,2,
- 53,60,4,25,41,19,42,54,26,43,
- 27,44,45,28,20,46,47,23,55,29,
- 56,48,49,21,50,51,52,64,1,3,
+ 73,0,25,41,19,42,54,26,43,27,
+ 44,45,28,20,46,47,23,55,29,56,
+ 48,49,21,50,51,52,1,3,6,0,
+ 4,58,53,66,2,13,14,15,16,1,
+ 3,10,11,9,5,7,8,17,18,12,
+ 6,0,25,41,19,42,54,26,43,27,
+ 44,45,28,20,46,47,23,55,29,56,
+ 48,49,21,50,51,52,1,3,4,61,
+ 57,22,0,19,20,21,23,10,11,9,
+ 5,7,8,17,18,12,2,1,3,13,
+ 14,15,16,65,4,0,19,20,21,10,
+ 11,9,5,7,8,17,18,12,2,1,
+ 3,13,14,15,16,0,25,41,19,42,
+ 54,26,43,27,44,45,28,20,46,47,
+ 23,55,29,56,48,49,21,50,51,52,
+ 1,3,24,4,58,0,2,4,61,57,
+ 60,22,53,59,0,61,53,66,0,53,
+ 2,66,80,10,11,61,83,84,85,86,
+ 87,89,88,90,91,92,5,67,68,7,
+ 8,63,62,69,70,71,72,74,75,9,
+ 76,77,78,58,81,82,65,60,59,57,
+ 22,4,0,1,3,4,58,57,0,4,
+ 60,12,13,14,15,16,1,3,2,10,
+ 11,9,5,7,8,17,18,0,22,4,
+ 5,1,2,59,0,4,60,5,2,53,
+ 0,5,2,53,60,4,25,41,19,42,
+ 54,26,43,27,44,45,28,20,46,47,
+ 23,55,29,56,48,49,21,50,51,52,
+ 64,1,3,0,73,79,58,32,34,6,
+ 38,40,35,30,36,37,33,31,39,24,
+ 4,22,13,14,15,16,10,11,9,7,
+ 8,17,18,12,5,2,1,3,54,55,
+ 56,49,41,46,44,45,43,42,47,48,
+ 50,51,52,29,26,23,25,28,27,19,
+ 20,21,0,30,0,66,80,10,11,9,
+ 7,8,67,68,62,63,69,70,71,72,
+ 74,75,76,77,78,81,82,61,83,84,
+ 85,86,87,88,89,90,91,92,57,53,
+ 60,25,19,26,27,28,20,23,29,21,
+ 22,4,5,2,1,0,32,34,6,38,
+ 40,35,30,36,37,33,31,39,24,22,
+ 4,10,11,9,7,8,17,18,12,2,
+ 1,3,13,14,15,16,5,0,4,57,
+ 58,61,0,4,57,58,22,0,9,5,
+ 7,8,67,68,62,63,69,70,71,72,
+ 74,75,76,77,78,81,82,59,83,84,
+ 85,86,87,88,89,90,91,92,65,60,
+ 58,6,4,57,22,61,0,49,41,46,
+ 44,45,43,42,47,48,50,51,52,59,
+ 22,29,26,23,25,28,27,19,20,21,
+ 5,1,2,53,57,60,4,0,73,25,
+ 41,19,42,54,26,43,27,44,45,28,
+ 20,46,47,23,55,29,56,48,49,21,
+ 50,51,52,1,3,5,22,4,24,2,
0,5,25,41,19,42,54,26,43,27,
44,45,28,20,46,47,23,55,29,56,
- 48,49,21,50,51,52,1,3,64,0,
- 73,79,58,32,34,6,38,40,35,30,
- 36,37,33,31,39,24,4,22,13,14,
- 15,16,10,11,9,7,8,17,18,12,
- 5,2,1,3,54,55,56,49,41,46,
- 44,45,43,42,47,48,50,51,52,29,
- 26,23,25,28,27,19,20,21,0,30,
- 0,66,80,10,11,9,7,8,67,68,
- 62,63,69,70,71,72,74,75,76,77,
- 78,81,82,61,83,84,85,86,87,88,
- 89,90,91,92,57,53,60,25,19,26,
- 27,28,20,23,29,21,22,4,5,2,
- 1,0,4,57,58,61,0,22,4,5,
- 1,2,59,0,25,41,19,42,54,26,
- 43,27,44,45,28,20,46,47,23,55,
- 29,56,48,49,21,50,51,52,1,3,
- 6,0,73,25,41,19,42,54,26,43,
- 27,44,45,28,20,46,47,23,55,29,
- 56,48,49,21,50,51,52,1,3,5,
- 22,4,24,2,0,4,60,5,2,53,
- 0,9,5,7,8,67,68,62,63,69,
- 70,71,72,74,75,76,77,78,81,82,
- 59,83,84,85,86,87,88,89,90,91,
- 92,65,60,58,6,4,57,22,61,0
+ 48,49,21,50,51,52,1,3,64,0
};
};
public final static byte asr[] = Asr.asr;
@@ -954,36 +965,36 @@ public class C99Parserprs implements lpg.lpgjavaruntime.ParseTable, C99Parsersym
public interface Nasb {
public final static char nasb[] = {0,
- 145,27,17,167,154,15,117,118,54,118,
- 93,93,118,92,118,112,109,122,27,27,
- 120,71,7,7,7,7,7,9,27,152,
- 109,43,43,151,105,15,168,27,27,109,
- 27,65,61,105,27,105,27,105,128,151,
- 50,85,39,122,56,126,81,166,168,168,
- 7,27,27,95,27,27,168,71,27,48,
- 27,167,1,27,158,105,7,105,138,162,
- 47,52,138,27,88,48,48,48,48,48,
- 51,48,48,48,27,27,27,27,27,27,
- 27,27,27,27,27,152,101,20,27,140,
- 105,27,48,27,27,27,168,48,168,28,
- 89,27,89,89,65,95,27,95,122,27,
- 27,105,72,167,77,7,13,27,27,138,
- 33,152,138,52,51,33,48,48,48,48,
- 48,48,48,48,48,48,48,152,152,103,
- 88,88,35,35,74,89,48,48,48,48,
- 48,48,48,48,48,48,48,48,48,48,
- 48,48,48,89,48,43,43,100,109,85,
- 72,105,30,168,152,27,152,152,81,95,
- 48,158,122,13,72,48,7,33,27,48,
- 48,52,51,48,109,149,152,152,152,52,
- 27,27,27,27,27,27,27,27,27,27,
- 27,27,27,27,27,27,151,152,107,132,
- 46,168,30,95,89,95,95,72,168,48,
- 27,72,52,52,105,134,107,27,27,48,
- 85,152,13,59,30,168,152,27,122,48,
- 46,152,72,45,27,7,48,63,152,30,
- 168,95,13,37,56,52,7,48,95,152,
- 72,52,95
+ 134,25,15,85,149,13,119,120,31,120,
+ 55,55,120,54,120,114,146,76,25,25,
+ 74,42,7,7,7,7,7,9,25,125,
+ 146,65,65,124,108,13,86,25,25,146,
+ 25,88,63,108,25,108,25,61,140,124,
+ 45,100,80,76,49,138,96,84,86,86,
+ 7,25,25,127,25,25,86,42,25,40,
+ 25,85,1,25,153,108,7,61,108,157,
+ 39,47,94,25,161,40,40,40,40,40,
+ 46,40,40,40,25,25,25,25,25,25,
+ 25,25,25,25,25,125,104,18,25,26,
+ 108,25,40,25,25,25,86,40,86,165,
+ 162,25,162,162,88,127,25,127,76,25,
+ 25,108,43,85,110,7,69,25,25,108,
+ 94,125,94,47,46,35,40,40,40,40,
+ 40,40,40,40,40,40,40,125,125,106,
+ 161,161,33,33,71,162,40,40,40,40,
+ 40,40,40,40,40,40,40,40,40,40,
+ 40,40,40,162,40,65,65,103,146,100,
+ 43,108,167,86,125,25,125,125,96,127,
+ 40,153,76,69,43,40,7,94,35,25,
+ 40,40,47,46,40,146,122,125,125,125,
+ 47,25,25,25,25,25,25,25,25,25,
+ 25,25,25,25,25,25,25,124,125,144,
+ 57,38,86,167,127,162,127,127,43,86,
+ 40,25,43,35,47,47,108,59,144,25,
+ 25,40,100,125,69,52,167,86,125,25,
+ 76,40,38,125,43,37,25,7,40,67,
+ 125,167,86,127,69,132,49,47,7,40,
+ 127,125,43,47,127
};
};
public final static char nasb[] = Nasb.nasb;
@@ -991,23 +1002,23 @@ public class C99Parserprs implements lpg.lpgjavaruntime.ParseTable, C99Parsersym
public interface Nasr {
public final static char nasr[] = {0,
- 83,81,80,74,79,78,1,0,36,38,
- 40,0,68,0,105,0,36,2,101,83,
- 82,81,80,74,79,78,0,24,47,2,
- 61,0,25,0,90,0,115,0,24,2,
- 121,0,46,0,89,67,2,6,0,2,
- 6,39,0,108,0,6,67,0,117,0,
- 109,0,119,0,2,24,1,29,93,0,
- 2,41,0,2,107,0,2,55,87,0,
- 29,1,69,41,2,24,0,55,2,27,
- 0,111,86,0,1,29,2,30,0,23,
- 36,43,58,59,2,0,2,24,40,53,
- 0,74,70,71,72,73,62,48,0,45,
- 38,43,36,2,0,38,45,36,43,40,
- 0,36,43,59,58,40,0,75,0,2,
- 24,47,28,0,120,24,2,0,58,59,
- 2,23,0,24,2,103,0,96,2,55,
- 0,112,2,24,0,27,2,18,0
+ 83,81,80,74,79,78,1,0,37,39,
+ 36,0,105,0,37,2,101,83,82,81,
+ 80,74,79,78,0,2,24,47,28,0,
+ 108,0,90,0,25,0,89,67,2,6,
+ 0,2,41,0,2,6,40,0,6,67,
+ 0,117,0,111,86,0,37,43,59,58,
+ 36,0,109,0,46,0,119,0,68,0,
+ 2,107,0,45,39,43,37,2,0,24,
+ 2,121,0,27,2,18,0,2,24,1,
+ 29,93,0,75,0,29,1,69,41,2,
+ 24,0,23,37,43,58,59,2,0,2,
+ 55,87,0,74,70,71,72,73,62,48,
+ 0,58,59,2,23,0,1,29,2,30,
+ 0,115,0,120,24,2,0,39,45,37,
+ 43,36,0,2,24,36,53,0,24,2,
+ 103,0,96,2,55,0,112,2,24,0,
+ 55,2,27,0,24,47,2,61,0
};
};
public final static char nasr[] = Nasr.nasr;
@@ -1033,18 +1044,18 @@ public class C99Parserprs implements lpg.lpgjavaruntime.ParseTable, C99Parsersym
public interface NonterminalIndex {
public final static char nonterminalIndex[] = {0,
99,0,0,0,0,101,105,106,107,108,
- 109,110,111,112,113,114,115,98,116,117,
- 0,118,96,127,135,0,100,123,119,122,
- 0,0,0,0,0,157,0,160,95,0,
- 97,154,156,0,158,159,126,134,0,0,
- 0,145,155,121,149,168,171,172,173,0,
- 0,137,144,0,161,167,0,0,125,138,
- 139,140,141,146,166,170,103,129,130,131,
- 132,133,136,142,143,0,148,153,174,102,
- 104,120,124,128,0,147,151,0,0,152,
- 162,165,179,0,181,0,0,0,0,150,
- 0,163,164,169,0,175,176,0,177,178,
- 180,0
+ 109,110,111,112,113,114,115,98,116,0,
+ 0,117,96,126,134,0,100,122,118,121,
+ 0,0,0,0,0,0,156,0,159,95,
+ 97,153,155,0,157,158,125,133,0,0,
+ 0,144,154,120,148,167,170,171,172,0,
+ 0,136,143,0,160,166,0,0,124,137,
+ 138,139,140,145,165,169,103,128,129,130,
+ 131,132,135,141,142,0,147,152,173,102,
+ 104,119,123,127,0,146,150,0,0,151,
+ 161,164,178,0,180,0,0,0,0,149,
+ 0,162,163,168,0,174,175,0,176,177,
+ 179,0,0
};
};
public final static char nonterminalIndex[] = NonterminalIndex.nonterminalIndex;
@@ -1075,9 +1086,9 @@ public class C99Parserprs implements lpg.lpgjavaruntime.ParseTable, C99Parsersym
public interface ScopeLhs {
public final static char scopeLhs[] = {
72,70,6,72,46,46,70,63,33,60,
- 46,38,60,46,87,28,7,6,6,20,
- 119,118,58,46,36,4,89,87,8,34,
- 6,87,38,45,38
+ 46,39,60,46,87,28,7,6,6,20,
+ 119,118,58,46,37,4,89,87,8,34,
+ 6,87,39,45,39
};
};
public final static char scopeLhs[] = ScopeLhs.scopeLhs;
@@ -1107,21 +1118,21 @@ public class C99Parserprs implements lpg.lpgjavaruntime.ParseTable, C99Parsersym
public interface ScopeRhs {
public final static char scopeRhs[] = {0,
- 147,53,0,95,0,209,95,0,31,144,
+ 147,53,0,95,0,209,95,0,31,143,
0,161,184,95,6,160,0,97,0,0,
158,95,2,151,0,96,0,158,95,2,
0,169,2,0,115,23,195,95,53,0,
115,195,95,23,53,0,115,23,53,0,
- 115,195,95,53,0,115,53,0,129,0,
- 2,0,163,96,0,2,96,0,158,95,
- 2,129,0,2,0,161,96,0,145,2,
+ 115,195,95,53,0,115,53,0,130,0,
+ 2,0,162,96,0,2,96,0,158,95,
+ 2,130,0,2,0,160,96,0,145,2,
0,161,192,95,6,94,204,54,0,97,
0,161,192,95,6,204,54,0,148,0,
- 98,0,203,95,148,0,95,148,0,150,
+ 98,0,203,95,148,0,95,148,0,149,
98,0,188,95,6,202,94,201,167,0,
188,95,6,201,167,0,123,35,0,77,
2,100,96,98,0,123,116,120,2,38,
- 0,53,122,0,186,95,6,0,120,82,
+ 0,53,121,0,186,95,6,0,120,82,
112,0,29,117,0,170,2,0,96,106,
0,170,2,12,0,161,184,95,6,116,
170,2,0,96,3,0,104,0,97,0,
@@ -1134,18 +1145,18 @@ public class C99Parserprs implements lpg.lpgjavaruntime.ParseTable, C99Parsersym
public interface ScopeState {
public final static char scopeState[] = {0,
- 1303,0,696,0,2153,1341,2120,0,2193,2180,
- 1173,2099,2006,1486,519,455,701,634,1956,1752,
- 1349,565,1308,796,1984,1246,1968,1617,2088,2072,
- 2059,2026,2015,1835,1911,1808,1699,410,1277,1256,
- 1225,339,1204,1181,1150,1129,1106,1083,1060,1037,
- 1014,991,968,945,922,899,876,853,538,718,
- 746,312,771,611,678,653,588,496,473,0,
- 1862,1892,1870,1848,1826,1789,1764,1716,1530,1680,
- 1658,1419,1444,1346,1304,0,970,963,743,586,
- 521,1610,1994,1481,1998,1366,0,330,371,1906,
- 1610,1736,1481,1683,1366,1597,1895,792,1544,387,
- 0,769,312,1542,371,0
+ 927,0,681,0,2230,1527,2178,0,1180,898,
+ 412,2122,1793,340,520,456,636,566,1963,1939,
+ 1914,1710,1569,702,2048,2017,1975,1926,2113,2104,
+ 2093,2076,2067,1657,2058,1869,1766,1486,1315,1284,
+ 1263,1232,1211,1188,1157,1136,1113,1090,1067,1044,
+ 1021,998,975,952,929,906,875,719,772,539,
+ 747,313,854,613,679,654,589,497,474,0,
+ 400,1850,1828,1806,1784,1747,1722,1674,1524,1638,
+ 1616,1448,1594,1384,1342,0,1023,1019,924,847,
+ 2231,765,1544,1462,1452,1399,0,331,372,1864,
+ 765,1694,1462,1641,1399,2002,1853,1956,1309,388,
+ 0,770,313,1535,372,0
};
};
public final static char scopeState[] = ScopeState.scopeState;
@@ -1154,35 +1165,35 @@ public class C99Parserprs implements lpg.lpgjavaruntime.ParseTable, C99Parsersym
public interface InSymb {
public final static char inSymb[] = {0,
0,199,95,117,213,194,171,172,167,173,
- 56,55,174,54,175,176,95,2,1,129,
- 95,6,201,179,179,204,179,146,133,145,
- 95,129,136,2,206,194,187,178,131,95,
- 138,95,94,6,94,6,133,5,146,2,
+ 56,55,174,54,175,176,95,2,1,130,
+ 95,6,201,179,179,204,179,146,129,145,
+ 95,130,136,2,206,194,187,178,132,95,
+ 138,95,94,6,94,6,129,5,146,2,
53,95,95,57,61,146,186,39,31,33,
37,36,30,35,40,38,122,6,34,32,
- 94,117,95,202,95,6,95,5,95,95,
+ 94,117,95,202,95,6,95,5,129,95,
23,115,95,100,2,12,18,17,8,7,
5,9,11,10,99,102,104,103,106,105,
108,107,110,109,112,158,117,95,159,214,
- 6,160,5,138,131,4,120,95,94,2,
+ 6,160,5,138,132,4,120,95,94,2,
2,123,2,2,95,59,147,59,95,185,
- 94,6,188,148,189,95,192,94,193,95,
- 168,205,95,115,195,168,92,91,90,88,
+ 94,6,188,148,189,95,192,94,193,129,
+ 95,205,95,115,195,168,92,91,90,88,
89,87,86,85,84,83,61,170,120,148,
2,2,80,66,2,53,68,67,5,62,
63,8,7,75,74,72,71,70,69,76,
9,78,77,82,81,151,152,2,95,57,
95,6,140,154,120,30,120,120,186,59,
- 57,95,95,192,161,61,57,168,57,195,
- 23,115,5,116,95,2,170,170,200,120,
- 103,103,102,102,105,105,104,104,104,104,
- 107,106,109,108,120,110,2,169,95,146,
- 95,154,111,116,2,116,116,188,203,59,
- 145,161,115,115,6,146,95,116,116,59,
- 95,158,184,95,111,154,120,123,57,59,
- 95,158,161,57,209,66,53,210,154,111,
- 116,79,184,134,61,147,66,53,116,154,
- 161,147,116
+ 57,95,95,192,161,61,57,95,168,57,
+ 195,23,115,5,116,95,2,170,170,200,
+ 120,103,103,102,102,105,105,104,104,104,
+ 104,107,106,109,108,120,110,2,169,95,
+ 146,95,154,111,116,2,116,116,188,203,
+ 59,145,161,168,115,115,6,146,95,116,
+ 116,59,95,158,184,95,111,154,120,123,
+ 57,59,95,158,161,57,209,66,53,210,
+ 154,111,116,79,184,134,61,147,66,53,
+ 116,154,161,147,116
};
};
public final static char inSymb[] = InSymb.inSymb;
@@ -1302,12 +1313,11 @@ public class C99Parserprs implements lpg.lpgjavaruntime.ParseTable, C99Parsersym
"shift_expression",
"relational_expression",
"equality_expression",
- "AND_expression",
- "exclusive_OR_expression",
- "inclusive_OR_expression",
- "logical_AND_expression",
- "logical_OR_expression",
- "conditional_expression",
+ "and_expression",
+ "exclusive_or_expression",
+ "inclusive_or_expression",
+ "logical_and_expression",
+ "logical_or_expression",
"assignment_expression",
"expression_in_statement",
"expression_list_actual",
@@ -1394,20 +1404,20 @@ public class C99Parserprs implements lpg.lpgjavaruntime.ParseTable, C99Parsersym
public final int getMaxNameLength() { return MAX_NAME_LENGTH; }
public final static int
- NUM_STATES = 293,
+ NUM_STATES = 295,
NT_OFFSET = 93,
- LA_STATE_OFFSET = 2642,
+ LA_STATE_OFFSET = 2703,
MAX_LA = 2147483647,
- NUM_RULES = 311,
- NUM_NONTERMINALS = 122,
- NUM_SYMBOLS = 215,
+ NUM_RULES = 312,
+ NUM_NONTERMINALS = 123,
+ NUM_SYMBOLS = 216,
SEGMENT_SIZE = 8192,
- START_STATE = 1981,
+ START_STATE = 1986,
IDENTIFIER_SYMBOL = 0,
EOFT_SYMBOL = 73,
EOLT_SYMBOL = 73,
- ACCEPT_ACTION = 2309,
- ERROR_ACTION = 2331;
+ ACCEPT_ACTION = 2369,
+ ERROR_ACTION = 2391;
public final static boolean BACKTRACK = true;
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99SizeofExpressionParser.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99SizeofExpressionParser.java
index c103a41018b..46e839e4db3 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99SizeofExpressionParser.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99SizeofExpressionParser.java
@@ -17,19 +17,28 @@ import lpg.lpgjavaruntime.*;
import java.util.*;
import org.eclipse.cdt.core.dom.ast.*;
+import org.eclipse.cdt.core.dom.lrparser.CPreprocessorAdapter;
+import org.eclipse.cdt.core.dom.lrparser.IDOMTokenMap;
import org.eclipse.cdt.core.dom.lrparser.IParser;
-import org.eclipse.cdt.core.dom.lrparser.IParserActionTokenProvider;
+import org.eclipse.cdt.core.dom.lrparser.ITokenCollector;
import org.eclipse.cdt.core.dom.lrparser.lpgextensions.FixedBacktrackingParser;
import org.eclipse.cdt.core.dom.lrparser.action.ScopedStack;
+import org.eclipse.cdt.core.parser.IScanner;
+import org.eclipse.cdt.core.dom.parser.IBuiltinBindingsProvider;
+import org.eclipse.cdt.core.index.IIndex;
+import org.eclipse.cdt.core.dom.lrparser.action.ITokenStream;
import org.eclipse.cdt.core.dom.lrparser.action.ITokenMap;
import org.eclipse.cdt.core.dom.lrparser.action.TokenMap;
+import org.eclipse.cdt.core.dom.lrparser.ISecondaryParser;
import org.eclipse.cdt.internal.core.dom.parser.c.CNodeFactory;
import org.eclipse.cdt.core.dom.lrparser.action.c99.C99BuildASTParserAction;
import org.eclipse.cdt.core.dom.lrparser.action.c99.C99SecondaryParserFactory;
-public class C99SizeofExpressionParser extends PrsStream implements RuleAction , IParserActionTokenProvider, IParser< IASTExpression >
+public class C99SizeofExpressionParser extends PrsStream implements RuleAction, ITokenStream,
+ ITokenCollector, IParser< IASTExpression >
+ , ISecondaryParser< IASTExpression >
{
private static ParseTable prs = new C99SizeofExpressionParserprs();
private FixedBacktrackingParser btParser;
@@ -167,7 +176,11 @@ public class C99SizeofExpressionParser extends PrsStream implements RuleAction ,
private C99BuildASTParserAction action;
private IASTCompletionNode compNode;
-public C99SizeofExpressionParser() { // constructor
+
+public C99SizeofExpressionParser(IScanner scanner, IDOMTokenMap tokenMap, IBuiltinBindingsProvider builtinBindingsProvider, IIndex index, Set<IParser.Options> options) {
+ initActions(options);
+ action.initializeTranslationUnit(scanner, builtinBindingsProvider, index);
+ CPreprocessorAdapter.runCPreprocessor(scanner, this, tokenMap);
}
private void initActions(Set<IParser.Options> options) {
@@ -186,10 +199,9 @@ public void addToken(IToken token) {
}
-public IASTExpression parse(Set<IParser.Options> options) {
+public IASTExpression parse() {
// this has to be done, or... kaboom!
setStreamLength(getSize());
- initActions(options);
final int errorRepairCount = -1; // -1 means full error handling
parser(null, errorRepairCount); // do the actual parse
@@ -232,12 +244,12 @@ public void setTokens(List<IToken> tokens) {
addToken(new Token(null, 0, 0, C99SizeofExpressionParsersym.TK_EOF_TOKEN));
}
-public C99SizeofExpressionParser(IParserActionTokenProvider parser) { // constructor
+public C99SizeofExpressionParser(ITokenStream parser, Set<IParser.Options> options) { // constructor for creating secondary parser
+ initActions(options);
tokenMap = new TokenMap(C99SizeofExpressionParsersym.orderedTerminalSymbols, parser.getOrderedTerminalSymbols());
}
-
public void ruleAction(int ruleNumber)
{
switch (ruleNumber)
@@ -250,1005 +262,1011 @@ public C99SizeofExpressionParser(IParserActionTokenProvider parser) { // constr
}
//
- // Rule 12: literal ::= integer
+ // Rule 2: <empty> ::= $Empty
//
- case 12: { action. consumeExpressionLiteral(IASTLiteralExpression.lk_integer_constant); break;
+ case 2: { action. consumeEmpty(); break;
}
//
- // Rule 13: literal ::= floating
+ // Rule 13: literal ::= integer
//
- case 13: { action. consumeExpressionLiteral(IASTLiteralExpression.lk_float_constant); break;
+ case 13: { action. consumeExpressionLiteral(IASTLiteralExpression.lk_integer_constant); break;
}
//
- // Rule 14: literal ::= charconst
+ // Rule 14: literal ::= floating
//
- case 14: { action. consumeExpressionLiteral(IASTLiteralExpression.lk_char_constant); break;
+ case 14: { action. consumeExpressionLiteral(IASTLiteralExpression.lk_float_constant); break;
}
//
- // Rule 15: literal ::= stringlit
+ // Rule 15: literal ::= charconst
//
- case 15: { action. consumeExpressionLiteral(IASTLiteralExpression.lk_string_literal); break;
+ case 15: { action. consumeExpressionLiteral(IASTLiteralExpression.lk_char_constant); break;
}
//
- // Rule 17: primary_expression ::= primary_expression_id
+ // Rule 16: literal ::= stringlit
//
- case 17: { action. consumeExpressionID(); break;
+ case 16: { action. consumeExpressionLiteral(IASTLiteralExpression.lk_string_literal); break;
}
//
- // Rule 18: primary_expression ::= ( expression )
+ // Rule 18: primary_expression ::= primary_expression_id
//
- case 18: { action. consumeExpressionBracketed(); break;
+ case 18: { action. consumeExpressionID(); break;
}
//
- // Rule 21: postfix_expression ::= postfix_expression [ expression ]
+ // Rule 19: primary_expression ::= ( expression )
//
- case 21: { action. consumeExpressionArraySubscript(); break;
+ case 19: { action. consumeExpressionBracketed(); break;
}
//
- // Rule 22: postfix_expression ::= postfix_expression ( expression_list_opt )
+ // Rule 22: postfix_expression ::= postfix_expression [ expression ]
//
- case 22: { action. consumeExpressionFunctionCall(); break;
+ case 22: { action. consumeExpressionArraySubscript(); break;
}
//
- // Rule 23: postfix_expression ::= postfix_expression . member_name
+ // Rule 23: postfix_expression ::= postfix_expression ( expression_list_opt )
//
- case 23: { action. consumeExpressionFieldReference(false); break;
+ case 23: { action. consumeExpressionFunctionCall(); break;
}
//
- // Rule 24: postfix_expression ::= postfix_expression -> member_name
+ // Rule 24: postfix_expression ::= postfix_expression . member_name
//
- case 24: { action. consumeExpressionFieldReference(true); break;
+ case 24: { action. consumeExpressionFieldReference(false); break;
}
//
- // Rule 25: postfix_expression ::= postfix_expression ++
+ // Rule 25: postfix_expression ::= postfix_expression -> member_name
//
- case 25: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_postFixIncr); break;
+ case 25: { action. consumeExpressionFieldReference(true); break;
}
//
- // Rule 26: postfix_expression ::= postfix_expression --
+ // Rule 26: postfix_expression ::= postfix_expression ++
//
- case 26: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_postFixDecr); break;
+ case 26: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_postFixIncr); break;
}
//
- // Rule 27: postfix_expression ::= ( type_id ) { <openscope-ast> initializer_list comma_opt }
+ // Rule 27: postfix_expression ::= postfix_expression --
//
- case 27: { action. consumeExpressionTypeIdInitializer(); break;
+ case 27: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_postFixDecr); break;
}
//
- // Rule 32: unary_expression ::= ++ unary_expression
+ // Rule 28: postfix_expression ::= ( type_id ) { <openscope-ast> initializer_list comma_opt }
//
- case 32: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_prefixIncr); break;
+ case 28: { action. consumeExpressionTypeIdInitializer(); break;
}
//
- // Rule 33: unary_expression ::= -- unary_expression
+ // Rule 33: unary_expression ::= ++ unary_expression
//
- case 33: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_prefixDecr); break;
+ case 33: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_prefixIncr); break;
}
//
- // Rule 34: unary_expression ::= & cast_expression
+ // Rule 34: unary_expression ::= -- unary_expression
//
- case 34: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_amper); break;
+ case 34: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_prefixDecr); break;
}
//
- // Rule 35: unary_expression ::= * cast_expression
+ // Rule 35: unary_expression ::= & cast_expression
//
- case 35: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_star); break;
+ case 35: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_amper); break;
}
//
- // Rule 36: unary_expression ::= + cast_expression
+ // Rule 36: unary_expression ::= * cast_expression
//
- case 36: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_plus); break;
+ case 36: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_star); break;
}
//
- // Rule 37: unary_expression ::= - cast_expression
+ // Rule 37: unary_expression ::= + cast_expression
//
- case 37: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_minus); break;
+ case 37: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_plus); break;
}
//
- // Rule 38: unary_expression ::= ~ cast_expression
+ // Rule 38: unary_expression ::= - cast_expression
//
- case 38: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_tilde); break;
+ case 38: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_minus); break;
}
//
- // Rule 39: unary_expression ::= ! cast_expression
+ // Rule 39: unary_expression ::= ~ cast_expression
//
- case 39: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_not); break;
+ case 39: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_tilde); break;
}
//
- // Rule 40: unary_expression ::= sizeof unary_expression
+ // Rule 40: unary_expression ::= ! cast_expression
//
- case 40: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_sizeof); break;
+ case 40: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_not); break;
}
//
- // Rule 42: cast_expression ::= ( type_id ) cast_expression
+ // Rule 41: unary_expression ::= sizeof unary_expression
//
- case 42: { action. consumeExpressionCast(IASTCastExpression.op_cast); break;
+ case 41: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_sizeof); break;
}
//
- // Rule 44: multiplicative_expression ::= multiplicative_expression * cast_expression
+ // Rule 43: cast_expression ::= ( type_id ) cast_expression
//
- case 44: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_multiply); break;
+ case 43: { action. consumeExpressionCast(IASTCastExpression.op_cast); break;
}
//
- // Rule 45: multiplicative_expression ::= multiplicative_expression / cast_expression
+ // Rule 45: multiplicative_expression ::= multiplicative_expression * cast_expression
//
- case 45: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_divide); break;
+ case 45: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_multiply); break;
}
//
- // Rule 46: multiplicative_expression ::= multiplicative_expression % cast_expression
+ // Rule 46: multiplicative_expression ::= multiplicative_expression / cast_expression
//
- case 46: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_modulo); break;
+ case 46: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_divide); break;
}
//
- // Rule 48: additive_expression ::= additive_expression + multiplicative_expression
+ // Rule 47: multiplicative_expression ::= multiplicative_expression % cast_expression
//
- case 48: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_plus); break;
+ case 47: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_modulo); break;
}
//
- // Rule 49: additive_expression ::= additive_expression - multiplicative_expression
+ // Rule 49: additive_expression ::= additive_expression + multiplicative_expression
//
- case 49: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_minus); break;
+ case 49: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_plus); break;
}
//
- // Rule 51: shift_expression ::= shift_expression << additive_expression
+ // Rule 50: additive_expression ::= additive_expression - multiplicative_expression
//
- case 51: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_shiftLeft); break;
+ case 50: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_minus); break;
}
//
- // Rule 52: shift_expression ::= shift_expression >> additive_expression
+ // Rule 52: shift_expression ::= shift_expression << additive_expression
//
- case 52: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_shiftRight); break;
+ case 52: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_shiftLeft); break;
}
//
- // Rule 54: relational_expression ::= relational_expression < shift_expression
+ // Rule 53: shift_expression ::= shift_expression >> additive_expression
//
- case 54: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_lessThan); break;
+ case 53: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_shiftRight); break;
}
//
- // Rule 55: relational_expression ::= relational_expression > shift_expression
+ // Rule 55: relational_expression ::= relational_expression < shift_expression
//
- case 55: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_greaterThan); break;
+ case 55: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_lessThan); break;
}
//
- // Rule 56: relational_expression ::= relational_expression <= shift_expression
+ // Rule 56: relational_expression ::= relational_expression > shift_expression
//
- case 56: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_lessEqual); break;
+ case 56: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_greaterThan); break;
}
//
- // Rule 57: relational_expression ::= relational_expression >= shift_expression
+ // Rule 57: relational_expression ::= relational_expression <= shift_expression
//
- case 57: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_greaterEqual); break;
+ case 57: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_lessEqual); break;
}
//
- // Rule 59: equality_expression ::= equality_expression == relational_expression
+ // Rule 58: relational_expression ::= relational_expression >= shift_expression
//
- case 59: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_equals); break;
+ case 58: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_greaterEqual); break;
}
//
- // Rule 60: equality_expression ::= equality_expression != relational_expression
+ // Rule 60: equality_expression ::= equality_expression == relational_expression
//
- case 60: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_notequals); break;
+ case 60: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_equals); break;
}
//
- // Rule 62: AND_expression ::= AND_expression & equality_expression
+ // Rule 61: equality_expression ::= equality_expression != relational_expression
//
- case 62: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_binaryAnd); break;
+ case 61: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_notequals); break;
}
//
- // Rule 64: exclusive_OR_expression ::= exclusive_OR_expression ^ AND_expression
+ // Rule 63: and_expression ::= and_expression & equality_expression
//
- case 64: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_binaryXor); break;
+ case 63: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_binaryAnd); break;
}
//
- // Rule 66: inclusive_OR_expression ::= inclusive_OR_expression | exclusive_OR_expression
+ // Rule 65: exclusive_or_expression ::= exclusive_or_expression ^ and_expression
//
- case 66: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_binaryOr); break;
+ case 65: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_binaryXor); break;
}
//
- // Rule 68: logical_AND_expression ::= logical_AND_expression && inclusive_OR_expression
+ // Rule 67: inclusive_or_expression ::= inclusive_or_expression | exclusive_or_expression
//
- case 68: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_logicalAnd); break;
+ case 67: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_binaryOr); break;
}
//
- // Rule 70: logical_OR_expression ::= logical_OR_expression || logical_AND_expression
+ // Rule 69: logical_and_expression ::= logical_and_expression && inclusive_or_expression
//
- case 70: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_logicalOr); break;
+ case 69: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_logicalAnd); break;
}
//
- // Rule 72: conditional_expression ::= logical_OR_expression ? expression : conditional_expression
+ // Rule 71: logical_or_expression ::= logical_or_expression || logical_and_expression
//
- case 72: { action. consumeExpressionConditional(); break;
+ case 71: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_logicalOr); break;
}
//
- // Rule 74: assignment_expression ::= unary_expression = assignment_expression
+ // Rule 73: conditional_expression ::= logical_or_expression ? expression : assignment_expression
//
- case 74: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_assign); break;
+ case 73: { action. consumeExpressionConditional(); break;
}
//
- // Rule 75: assignment_expression ::= unary_expression *= assignment_expression
+ // Rule 75: assignment_expression ::= unary_expression = assignment_expression
//
- case 75: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_multiplyAssign); break;
+ case 75: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_assign); break;
}
//
- // Rule 76: assignment_expression ::= unary_expression /= assignment_expression
+ // Rule 76: assignment_expression ::= unary_expression *= assignment_expression
//
- case 76: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_divideAssign); break;
+ case 76: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_multiplyAssign); break;
}
//
- // Rule 77: assignment_expression ::= unary_expression %= assignment_expression
+ // Rule 77: assignment_expression ::= unary_expression /= assignment_expression
//
- case 77: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_moduloAssign); break;
+ case 77: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_divideAssign); break;
}
//
- // Rule 78: assignment_expression ::= unary_expression += assignment_expression
+ // Rule 78: assignment_expression ::= unary_expression %= assignment_expression
//
- case 78: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_plusAssign); break;
+ case 78: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_moduloAssign); break;
}
//
- // Rule 79: assignment_expression ::= unary_expression -= assignment_expression
+ // Rule 79: assignment_expression ::= unary_expression += assignment_expression
//
- case 79: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_minusAssign); break;
+ case 79: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_plusAssign); break;
}
//
- // Rule 80: assignment_expression ::= unary_expression <<= assignment_expression
+ // Rule 80: assignment_expression ::= unary_expression -= assignment_expression
//
- case 80: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_shiftLeftAssign); break;
+ case 80: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_minusAssign); break;
}
//
- // Rule 81: assignment_expression ::= unary_expression >>= assignment_expression
+ // Rule 81: assignment_expression ::= unary_expression <<= assignment_expression
//
- case 81: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_shiftRightAssign); break;
+ case 81: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_shiftLeftAssign); break;
}
//
- // Rule 82: assignment_expression ::= unary_expression &= assignment_expression
+ // Rule 82: assignment_expression ::= unary_expression >>= assignment_expression
//
- case 82: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_binaryAndAssign); break;
+ case 82: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_shiftRightAssign); break;
}
//
- // Rule 83: assignment_expression ::= unary_expression ^= assignment_expression
+ // Rule 83: assignment_expression ::= unary_expression &= assignment_expression
//
- case 83: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_binaryXorAssign); break;
+ case 83: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_binaryAndAssign); break;
}
//
- // Rule 84: assignment_expression ::= unary_expression |= assignment_expression
+ // Rule 84: assignment_expression ::= unary_expression ^= assignment_expression
//
- case 84: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_binaryOrAssign); break;
+ case 84: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_binaryXorAssign); break;
}
//
- // Rule 87: expression_list ::= <openscope-ast> expression_list_actual
+ // Rule 85: assignment_expression ::= unary_expression |= assignment_expression
//
- case 87: { action. consumeExpressionList(); break;
+ case 85: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_binaryOrAssign); break;
}
//
- // Rule 89: expression_list_opt ::= $Empty
+ // Rule 88: expression_list ::= <openscope-ast> expression_list_actual
//
- case 89: { action. consumeEmpty(); break;
+ case 88: { action. consumeExpressionList(); break;
}
//
- // Rule 99: statement ::= ERROR_TOKEN
+ // Rule 90: expression_list_opt ::= $Empty
//
- case 99: { action. consumeStatementProblem(); break;
+ case 90: { action. consumeEmpty(); break;
}
//
- // Rule 100: labeled_statement ::= identifier_token : statement
+ // Rule 100: statement ::= ERROR_TOKEN
//
- case 100: { action. consumeStatementLabeled(); break;
+ case 100: { action. consumeStatementProblem(); break;
}
//
- // Rule 101: labeled_statement ::= case constant_expression : statement
+ // Rule 101: labeled_statement ::= identifier_token : statement
//
- case 101: { action. consumeStatementCase(); break;
+ case 101: { action. consumeStatementLabeled(); break;
}
//
- // Rule 102: labeled_statement ::= default : statement
+ // Rule 102: labeled_statement ::= case constant_expression : statement
//
- case 102: { action. consumeStatementDefault(); break;
+ case 102: { action. consumeStatementCase(); break;
}
//
- // Rule 103: compound_statement ::= { }
+ // Rule 103: labeled_statement ::= default : statement
//
- case 103: { action. consumeStatementCompoundStatement(false); break;
+ case 103: { action. consumeStatementDefault(); break;
}
//
- // Rule 104: compound_statement ::= { <openscope-ast> block_item_list }
+ // Rule 104: compound_statement ::= { }
//
- case 104: { action. consumeStatementCompoundStatement(true); break;
+ case 104: { action. consumeStatementCompoundStatement(false); break;
}
//
- // Rule 108: block_item ::= declaration
+ // Rule 105: compound_statement ::= { <openscope-ast> block_item_list }
//
- case 108: { action. consumeStatementDeclarationWithDisambiguation(); break;
+ case 105: { action. consumeStatementCompoundStatement(true); break;
}
//
- // Rule 109: expression_statement ::= ;
+ // Rule 109: block_item ::= declaration
//
- case 109: { action. consumeStatementNull(); break;
+ case 109: { action. consumeStatementDeclarationWithDisambiguation(); break;
}
//
- // Rule 110: expression_statement ::= expression_in_statement ;
+ // Rule 110: expression_statement ::= ;
//
- case 110: { action. consumeStatementExpression(); break;
+ case 110: { action. consumeStatementNull(); break;
}
//
- // Rule 111: selection_statement ::= if ( expression ) statement
+ // Rule 111: expression_statement ::= expression_in_statement ;
//
- case 111: { action. consumeStatementIf(false); break;
+ case 111: { action. consumeStatementExpression(); break;
}
//
- // Rule 112: selection_statement ::= if ( expression ) statement else statement
+ // Rule 112: selection_statement ::= if ( expression ) statement
//
- case 112: { action. consumeStatementIf(true); break;
+ case 112: { action. consumeStatementIf(false); break;
}
//
- // Rule 113: selection_statement ::= switch ( expression ) statement
+ // Rule 113: selection_statement ::= if ( expression ) statement else statement
//
- case 113: { action. consumeStatementSwitch(); break;
+ case 113: { action. consumeStatementIf(true); break;
}
//
- // Rule 115: expression_opt ::= $Empty
+ // Rule 114: selection_statement ::= switch ( expression ) statement
//
- case 115: { action. consumeEmpty(); break;
+ case 114: { action. consumeStatementSwitch(); break;
}
//
- // Rule 116: iteration_statement ::= do statement while ( expression ) ;
+ // Rule 116: expression_opt ::= $Empty
//
- case 116: { action. consumeStatementDoLoop(); break;
+ case 116: { action. consumeEmpty(); break;
}
//
- // Rule 117: iteration_statement ::= while ( expression ) statement
+ // Rule 117: iteration_statement ::= do statement while ( expression ) ;
//
- case 117: { action. consumeStatementWhileLoop(); break;
+ case 117: { action. consumeStatementDoLoop(); break;
}
//
- // Rule 118: iteration_statement ::= for ( expression_opt ; expression_opt ; expression_opt ) statement
+ // Rule 118: iteration_statement ::= while ( expression ) statement
//
- case 118: { action. consumeStatementForLoop(); break;
+ case 118: { action. consumeStatementWhileLoop(); break;
}
//
- // Rule 119: iteration_statement ::= for ( declaration expression_opt ; expression_opt ) statement
+ // Rule 119: iteration_statement ::= for ( expression_opt ; expression_opt ; expression_opt ) statement
//
case 119: { action. consumeStatementForLoop(); break;
}
//
- // Rule 120: jump_statement ::= goto identifier_token ;
+ // Rule 120: iteration_statement ::= for ( declaration expression_opt ; expression_opt ) statement
//
- case 120: { action. consumeStatementGoto(); break;
+ case 120: { action. consumeStatementForLoop(); break;
}
//
- // Rule 121: jump_statement ::= continue ;
+ // Rule 121: jump_statement ::= goto identifier_token ;
//
- case 121: { action. consumeStatementContinue(); break;
+ case 121: { action. consumeStatementGoto(); break;
}
//
- // Rule 122: jump_statement ::= break ;
+ // Rule 122: jump_statement ::= continue ;
//
- case 122: { action. consumeStatementBreak(); break;
+ case 122: { action. consumeStatementContinue(); break;
}
//
- // Rule 123: jump_statement ::= return ;
+ // Rule 123: jump_statement ::= break ;
//
- case 123: { action. consumeStatementReturn(false); break;
+ case 123: { action. consumeStatementBreak(); break;
}
//
- // Rule 124: jump_statement ::= return expression ;
+ // Rule 124: jump_statement ::= return ;
//
- case 124: { action. consumeStatementReturn(true); break;
+ case 124: { action. consumeStatementReturn(false); break;
}
//
- // Rule 125: declaration ::= declaration_specifiers ;
+ // Rule 125: jump_statement ::= return expression ;
//
- case 125: { action. consumeDeclarationSimple(false); break;
+ case 125: { action. consumeStatementReturn(true); break;
}
//
- // Rule 126: declaration ::= declaration_specifiers <openscope-ast> init_declarator_list ;
+ // Rule 126: declaration ::= declaration_specifiers ;
//
- case 126: { action. consumeDeclarationSimple(true); break;
+ case 126: { action. consumeDeclarationSimple(false); break;
}
//
- // Rule 127: declaration_specifiers ::= <openscope-ast> simple_declaration_specifiers
+ // Rule 127: declaration ::= declaration_specifiers <openscope-ast> init_declarator_list ;
//
- case 127: { action. consumeDeclarationSpecifiersSimple(); break;
+ case 127: { action. consumeDeclarationSimple(true); break;
}
//
- // Rule 128: declaration_specifiers ::= <openscope-ast> struct_or_union_declaration_specifiers
+ // Rule 128: declaration_specifiers ::= <openscope-ast> simple_declaration_specifiers
//
- case 128: { action. consumeDeclarationSpecifiersStructUnionEnum(); break;
+ case 128: { action. consumeDeclarationSpecifiersSimple(); break;
}
//
- // Rule 129: declaration_specifiers ::= <openscope-ast> elaborated_declaration_specifiers
+ // Rule 129: declaration_specifiers ::= <openscope-ast> struct_or_union_declaration_specifiers
//
case 129: { action. consumeDeclarationSpecifiersStructUnionEnum(); break;
}
//
- // Rule 130: declaration_specifiers ::= <openscope-ast> enum_declaration_specifiers
+ // Rule 130: declaration_specifiers ::= <openscope-ast> elaborated_declaration_specifiers
//
case 130: { action. consumeDeclarationSpecifiersStructUnionEnum(); break;
}
//
- // Rule 131: declaration_specifiers ::= <openscope-ast> typdef_name_declaration_specifiers
+ // Rule 131: declaration_specifiers ::= <openscope-ast> enum_declaration_specifiers
//
- case 131: { action. consumeDeclarationSpecifiersTypedefName(); break;
+ case 131: { action. consumeDeclarationSpecifiersStructUnionEnum(); break;
}
//
- // Rule 156: init_declarator ::= complete_declarator = initializer
+ // Rule 132: declaration_specifiers ::= <openscope-ast> typdef_name_declaration_specifiers
//
- case 156: { action. consumeDeclaratorWithInitializer(true); break;
+ case 132: { action. consumeDeclarationSpecifiersTypedefName(); break;
}
//
- // Rule 158: storage_class_specifier ::= storage_class_specifier_token
+ // Rule 157: init_declarator ::= complete_declarator = initializer
//
- case 158: { action. consumeToken(); break;
+ case 157: { action. consumeDeclaratorWithInitializer(true); break;
}
//
- // Rule 164: simple_type_specifier ::= simple_type_specifier_token
+ // Rule 159: storage_class_specifier ::= storage_class_specifier_token
//
- case 164: { action. consumeToken(); break;
+ case 159: { action. consumeToken(); break;
}
//
- // Rule 177: type_name_specifier ::= identifier_token
+ // Rule 165: simple_type_specifier ::= simple_type_specifier_token
//
- case 177: { action. consumeToken(); break;
+ case 165: { action. consumeToken(); break;
}
//
- // Rule 178: struct_or_union_specifier ::= struct_or_union struct_or_union_specifier_hook { <openscope-ast> struct_declaration_list_opt }
+ // Rule 178: type_name_specifier ::= identifier_token
//
- case 178: { action. consumeTypeSpecifierComposite(false); break;
+ case 178: { action. consumeToken(); break;
}
//
- // Rule 179: struct_or_union_specifier ::= struct_or_union struct_or_union_specifier_hook identifier_token struct_or_union_specifier_suffix_hook { <openscope-ast> struct_declaration_list_opt }
+ // Rule 179: struct_or_union_specifier ::= struct_or_union struct_or_union_specifier_hook { <openscope-ast> struct_declaration_list_opt }
//
- case 179: { action. consumeTypeSpecifierComposite(true); break;
+ case 179: { action. consumeTypeSpecifierComposite(false); break;
}
//
- // Rule 184: elaborated_specifier ::= struct elaborated_specifier_hook identifier_token
+ // Rule 180: struct_or_union_specifier ::= struct_or_union struct_or_union_specifier_hook identifier_token struct_or_union_specifier_suffix_hook { <openscope-ast> struct_declaration_list_opt }
//
- case 184: { action. consumeTypeSpecifierElaborated(IASTCompositeTypeSpecifier.k_struct); break;
+ case 180: { action. consumeTypeSpecifierComposite(true); break;
}
//
- // Rule 185: elaborated_specifier ::= union elaborated_specifier_hook identifier_token
+ // Rule 185: elaborated_specifier ::= struct elaborated_specifier_hook identifier_token
//
- case 185: { action. consumeTypeSpecifierElaborated(IASTCompositeTypeSpecifier.k_union); break;
+ case 185: { action. consumeTypeSpecifierElaborated(IASTCompositeTypeSpecifier.k_struct); break;
}
//
- // Rule 186: elaborated_specifier ::= enum elaborated_specifier_hook identifier_token
+ // Rule 186: elaborated_specifier ::= union elaborated_specifier_hook identifier_token
//
- case 186: { action. consumeTypeSpecifierElaborated(IASTElaboratedTypeSpecifier.k_enum); break;
+ case 186: { action. consumeTypeSpecifierElaborated(IASTCompositeTypeSpecifier.k_union); break;
}
//
- // Rule 192: struct_declaration ::= specifier_qualifier_list <openscope-ast> struct_declarator_list ;
+ // Rule 187: elaborated_specifier ::= enum elaborated_specifier_hook identifier_token
//
- case 192: { action. consumeStructDeclaration(true); break;
+ case 187: { action. consumeTypeSpecifierElaborated(IASTElaboratedTypeSpecifier.k_enum); break;
}
//
- // Rule 193: struct_declaration ::= specifier_qualifier_list ;
+ // Rule 193: struct_declaration ::= specifier_qualifier_list <openscope-ast> struct_declarator_list ;
//
- case 193: { action. consumeStructDeclaration(false); break;
+ case 193: { action. consumeStructDeclaration(true); break;
}
//
- // Rule 194: struct_declaration ::= ERROR_TOKEN
+ // Rule 194: struct_declaration ::= specifier_qualifier_list ;
//
- case 194: { action. consumeDeclarationProblem(); break;
+ case 194: { action. consumeStructDeclaration(false); break;
}
//
- // Rule 200: struct_declarator ::= : constant_expression
+ // Rule 195: struct_declaration ::= ERROR_TOKEN
//
- case 200: { action. consumeBitField(false); break;
+ case 195: { action. consumeDeclarationProblem(); break;
}
//
- // Rule 201: struct_declarator ::= declarator : constant_expression
+ // Rule 201: struct_declarator ::= : constant_expression
//
- case 201: { action. consumeBitField(true); break;
+ case 201: { action. consumeBitField(false); break;
}
//
- // Rule 202: enum_specifier ::= enum enum_specifier_hook { <openscope-ast> enumerator_list_opt comma_opt }
+ // Rule 202: struct_declarator ::= declarator : constant_expression
//
- case 202: { action. consumeTypeSpecifierEnumeration(false); break;
+ case 202: { action. consumeBitField(true); break;
}
//
- // Rule 203: enum_specifier ::= enum enum_specifier_hook identifier_token { <openscope-ast> enumerator_list_opt comma_opt }
+ // Rule 203: enum_specifier ::= enum enum_specifier_hook { <openscope-ast> enumerator_list_opt comma_opt }
//
- case 203: { action. consumeTypeSpecifierEnumeration(true); break;
+ case 203: { action. consumeTypeSpecifierEnumeration(false); break;
}
//
- // Rule 209: enumerator ::= identifier_token
+ // Rule 204: enum_specifier ::= enum enum_specifier_hook identifier_token { <openscope-ast> enumerator_list_opt comma_opt }
//
- case 209: { action. consumeEnumerator(false); break;
+ case 204: { action. consumeTypeSpecifierEnumeration(true); break;
}
//
- // Rule 210: enumerator ::= identifier_token = constant_expression
+ // Rule 210: enumerator ::= identifier_token
//
- case 210: { action. consumeEnumerator(true); break;
+ case 210: { action. consumeEnumerator(false); break;
}
//
- // Rule 211: type_qualifier ::= type_qualifier_token
+ // Rule 211: enumerator ::= identifier_token = constant_expression
//
- case 211: { action. consumeToken(); break;
+ case 211: { action. consumeEnumerator(true); break;
}
//
- // Rule 215: function_specifier ::= inline
+ // Rule 212: type_qualifier ::= type_qualifier_token
//
- case 215: { action. consumeToken(); break;
+ case 212: { action. consumeToken(); break;
}
//
- // Rule 217: declarator ::= <openscope-ast> pointer_seq direct_declarator
+ // Rule 216: function_specifier ::= inline
//
- case 217: { action. consumeDeclaratorWithPointer(true); break;
+ case 216: { action. consumeToken(); break;
}
//
- // Rule 222: basic_direct_declarator ::= declarator_id_name
+ // Rule 218: declarator ::= <openscope-ast> pointer_seq direct_declarator
//
- case 222: { action. consumeDirectDeclaratorIdentifier(); break;
+ case 218: { action. consumeDeclaratorWithPointer(true); break;
}
//
- // Rule 223: basic_direct_declarator ::= ( declarator )
+ // Rule 223: basic_direct_declarator ::= declarator_id_name
//
- case 223: { action. consumeDirectDeclaratorBracketed(); break;
+ case 223: { action. consumeDirectDeclaratorIdentifier(); break;
}
//
- // Rule 224: declarator_id_name ::= identifier
+ // Rule 224: basic_direct_declarator ::= ( declarator )
//
- case 224: { action. consumeIdentifierName(); break;
+ case 224: { action. consumeDirectDeclaratorBracketed(); break;
}
//
- // Rule 225: array_direct_declarator ::= basic_direct_declarator array_modifier
+ // Rule 225: declarator_id_name ::= identifier
//
- case 225: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
+ case 225: { action. consumeIdentifierName(); break;
}
//
- // Rule 226: array_direct_declarator ::= array_direct_declarator array_modifier
+ // Rule 226: array_direct_declarator ::= basic_direct_declarator array_modifier
//
case 226: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
}
//
- // Rule 228: function_direct_declarator ::= basic_direct_declarator ( <openscope-ast> parameter_type_list )
+ // Rule 227: array_direct_declarator ::= array_direct_declarator array_modifier
//
- case 228: { action. consumeDirectDeclaratorFunctionDeclarator(true, true); break;
+ case 227: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
}
//
- // Rule 229: function_direct_declarator ::= basic_direct_declarator ( )
+ // Rule 229: function_direct_declarator ::= basic_direct_declarator ( <openscope-ast> parameter_type_list )
//
- case 229: { action. consumeDirectDeclaratorFunctionDeclarator(true, false); break;
+ case 229: { action. consumeDirectDeclaratorFunctionDeclarator(true, true); break;
}
//
- // Rule 231: function_declarator ::= <openscope-ast> pointer_seq function_direct_declarator
+ // Rule 230: function_direct_declarator ::= basic_direct_declarator ( )
//
- case 231: { action. consumeDeclaratorWithPointer(true); break;
+ case 230: { action. consumeDirectDeclaratorFunctionDeclarator(true, false); break;
}
//
- // Rule 232: knr_direct_declarator ::= basic_direct_declarator ( <openscope-ast> identifier_list )
+ // Rule 232: function_declarator ::= <openscope-ast> pointer_seq function_direct_declarator
//
- case 232: { action. consumeDirectDeclaratorFunctionDeclaratorKnR(); break;
+ case 232: { action. consumeDeclaratorWithPointer(true); break;
}
//
- // Rule 234: knr_function_declarator ::= <openscope-ast> pointer_seq knr_direct_declarator
+ // Rule 233: knr_direct_declarator ::= basic_direct_declarator ( <openscope-ast> identifier_list )
//
- case 234: { action. consumeDeclaratorWithPointer(true); break;
+ case 233: { action. consumeDirectDeclaratorFunctionDeclaratorKnR(); break;
}
//
- // Rule 235: identifier_list ::= identifier
+ // Rule 235: knr_function_declarator ::= <openscope-ast> pointer_seq knr_direct_declarator
//
- case 235: { action. consumeIdentifierKnR(); break;
+ case 235: { action. consumeDeclaratorWithPointer(true); break;
}
//
- // Rule 236: identifier_list ::= identifier_list , identifier
+ // Rule 236: identifier_list ::= identifier
//
case 236: { action. consumeIdentifierKnR(); break;
}
//
- // Rule 237: array_modifier ::= [ ]
+ // Rule 237: identifier_list ::= identifier_list , identifier
//
- case 237: { action. consumeDirectDeclaratorArrayModifier(false); break;
+ case 237: { action. consumeIdentifierKnR(); break;
}
//
- // Rule 238: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers ]
+ // Rule 238: array_modifier ::= [ ]
//
- case 238: { action. consumeDirectDeclaratorModifiedArrayModifier(false, false, true, false); break;
+ case 238: { action. consumeDirectDeclaratorArrayModifier(false); break;
}
//
- // Rule 239: array_modifier ::= [ assignment_expression ]
+ // Rule 239: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers ]
//
- case 239: { action. consumeDirectDeclaratorArrayModifier(true); break;
+ case 239: { action. consumeDirectDeclaratorModifiedArrayModifier(false, false, true, false); break;
}
//
- // Rule 240: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers assignment_expression ]
+ // Rule 240: array_modifier ::= [ assignment_expression ]
//
- case 240: { action. consumeDirectDeclaratorModifiedArrayModifier(false, false, true, true); break;
+ case 240: { action. consumeDirectDeclaratorArrayModifier(true); break;
}
//
- // Rule 241: array_modifier ::= [ static assignment_expression ]
+ // Rule 241: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers assignment_expression ]
//
- case 241: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, false, true); break;
+ case 241: { action. consumeDirectDeclaratorModifiedArrayModifier(false, false, true, true); break;
}
//
- // Rule 242: array_modifier ::= [ static <openscope-ast> array_modifier_type_qualifiers assignment_expression ]
+ // Rule 242: array_modifier ::= [ static assignment_expression ]
//
- case 242: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, true, true); break;
+ case 242: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, false, true); break;
}
//
- // Rule 243: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers static assignment_expression ]
+ // Rule 243: array_modifier ::= [ static <openscope-ast> array_modifier_type_qualifiers assignment_expression ]
//
case 243: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, true, true); break;
}
//
- // Rule 244: array_modifier ::= [ * ]
+ // Rule 244: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers static assignment_expression ]
//
- case 244: { action. consumeDirectDeclaratorModifiedArrayModifier(false, true, false, false); break;
+ case 244: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, true, true); break;
}
//
- // Rule 245: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers * ]
+ // Rule 245: array_modifier ::= [ * ]
//
- case 245: { action. consumeDirectDeclaratorModifiedArrayModifier(false, true, true, false); break;
+ case 245: { action. consumeDirectDeclaratorModifiedArrayModifier(false, true, false, false); break;
}
//
- // Rule 247: pointer_seq ::= pointer_hook *
+ // Rule 246: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers * ]
//
- case 247: { action. consumePointer(); break;
+ case 246: { action. consumeDirectDeclaratorModifiedArrayModifier(false, true, true, false); break;
}
//
- // Rule 248: pointer_seq ::= pointer_seq pointer_hook *
+ // Rule 248: pointer_seq ::= pointer_hook * pointer_hook
//
case 248: { action. consumePointer(); break;
}
//
- // Rule 249: pointer_seq ::= pointer_hook * <openscope-ast> type_qualifier_list
+ // Rule 249: pointer_seq ::= pointer_seq pointer_hook * pointer_hook
//
- case 249: { action. consumePointerTypeQualifierList(); break;
+ case 249: { action. consumePointer(); break;
}
//
- // Rule 250: pointer_seq ::= pointer_seq pointer_hook * <openscope-ast> type_qualifier_list
+ // Rule 250: pointer_seq ::= pointer_hook * pointer_hook <openscope-ast> type_qualifier_list
//
case 250: { action. consumePointerTypeQualifierList(); break;
}
//
- // Rule 254: parameter_type_list ::= parameter_list
+ // Rule 251: pointer_seq ::= pointer_seq pointer_hook * pointer_hook <openscope-ast> type_qualifier_list
//
- case 254: { action. consumeEmpty(); break;
+ case 251: { action. consumePointerTypeQualifierList(); break;
}
//
- // Rule 255: parameter_type_list ::= parameter_list , ...
+ // Rule 255: parameter_type_list ::= parameter_list
//
- case 255: { action. consumePlaceHolder(); break;
+ case 255: { action. consumeEmpty(); break;
}
//
- // Rule 256: parameter_type_list ::= ...
+ // Rule 256: parameter_type_list ::= parameter_list , ...
//
case 256: { action. consumePlaceHolder(); break;
}
//
- // Rule 259: parameter_declaration ::= declaration_specifiers complete_parameter_declarator
+ // Rule 257: parameter_type_list ::= ...
//
- case 259: { action. consumeParameterDeclaration(); break;
+ case 257: { action. consumePlaceHolder(); break;
}
//
- // Rule 260: parameter_declaration ::= declaration_specifiers
+ // Rule 260: parameter_declaration ::= declaration_specifiers complete_parameter_declarator
//
- case 260: { action. consumeParameterDeclarationWithoutDeclarator(); break;
+ case 260: { action. consumeParameterDeclaration(); break;
}
//
- // Rule 263: type_id ::= specifier_qualifier_list
+ // Rule 261: parameter_declaration ::= declaration_specifiers
//
- case 263: { action. consumeTypeId(false); break;
+ case 261: { action. consumeParameterDeclarationWithoutDeclarator(); break;
}
//
- // Rule 264: type_id ::= specifier_qualifier_list abstract_declarator
+ // Rule 264: type_id ::= specifier_qualifier_list
//
- case 264: { action. consumeTypeId(true); break;
+ case 264: { action. consumeTypeId(false); break;
}
//
- // Rule 266: abstract_declarator ::= <openscope-ast> pointer_seq
+ // Rule 265: type_id ::= specifier_qualifier_list abstract_declarator
//
- case 266: { action. consumeDeclaratorWithPointer(false); break;
+ case 265: { action. consumeTypeId(true); break;
}
//
- // Rule 267: abstract_declarator ::= <openscope-ast> pointer_seq direct_abstract_declarator
+ // Rule 267: abstract_declarator ::= <openscope-ast> pointer_seq
//
case 267: { action. consumeDeclaratorWithPointer(false); break;
}
//
- // Rule 271: basic_direct_abstract_declarator ::= ( abstract_declarator )
+ // Rule 268: abstract_declarator ::= <openscope-ast> pointer_seq direct_abstract_declarator
//
- case 271: { action. consumeDirectDeclaratorBracketed(); break;
+ case 268: { action. consumeDeclaratorWithPointer(false); break;
}
//
- // Rule 272: array_direct_abstract_declarator ::= array_modifier
+ // Rule 272: basic_direct_abstract_declarator ::= ( abstract_declarator )
//
- case 272: { action. consumeDirectDeclaratorArrayDeclarator(false); break;
+ case 272: { action. consumeDirectDeclaratorBracketed(); break;
}
//
- // Rule 273: array_direct_abstract_declarator ::= array_direct_abstract_declarator array_modifier
+ // Rule 273: array_direct_abstract_declarator ::= array_modifier
//
- case 273: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
+ case 273: { action. consumeDirectDeclaratorArrayDeclarator(false); break;
}
//
- // Rule 274: array_direct_abstract_declarator ::= basic_direct_abstract_declarator array_modifier
+ // Rule 274: array_direct_abstract_declarator ::= array_direct_abstract_declarator array_modifier
//
case 274: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
}
//
- // Rule 275: function_direct_abstract_declarator ::= ( )
+ // Rule 275: array_direct_abstract_declarator ::= basic_direct_abstract_declarator array_modifier
//
- case 275: { action. consumeDirectDeclaratorFunctionDeclarator(false, false); break;
+ case 275: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
+ }
+
+ //
+ // Rule 276: function_direct_abstract_declarator ::= ( )
+ //
+ case 276: { action. consumeDirectDeclaratorFunctionDeclarator(false, false); break;
}
//
- // Rule 276: function_direct_abstract_declarator ::= basic_direct_abstract_declarator ( )
+ // Rule 277: function_direct_abstract_declarator ::= basic_direct_abstract_declarator ( )
//
- case 276: { action. consumeDirectDeclaratorFunctionDeclarator(true, false); break;
+ case 277: { action. consumeDirectDeclaratorFunctionDeclarator(true, false); break;
}
//
- // Rule 277: function_direct_abstract_declarator ::= ( <openscope-ast> parameter_type_list )
+ // Rule 278: function_direct_abstract_declarator ::= ( <openscope-ast> parameter_type_list )
//
- case 277: { action. consumeDirectDeclaratorFunctionDeclarator(false, true); break;
+ case 278: { action. consumeDirectDeclaratorFunctionDeclarator(false, true); break;
}
//
- // Rule 278: function_direct_abstract_declarator ::= basic_direct_abstract_declarator ( <openscope-ast> parameter_type_list )
+ // Rule 279: function_direct_abstract_declarator ::= basic_direct_abstract_declarator ( <openscope-ast> parameter_type_list )
//
- case 278: { action. consumeDirectDeclaratorFunctionDeclarator(true, true); break;
+ case 279: { action. consumeDirectDeclaratorFunctionDeclarator(true, true); break;
}
//
- // Rule 279: initializer ::= assignment_expression
+ // Rule 280: initializer ::= assignment_expression
//
- case 279: { action. consumeInitializer(); break;
+ case 280: { action. consumeInitializer(); break;
}
//
- // Rule 280: initializer ::= start_initializer_list { <openscope-ast> initializer_list comma_opt } end_initializer_list
+ // Rule 281: initializer ::= start_initializer_list { <openscope-ast> initializer_list comma_opt } end_initializer_list
//
- case 280: { action. consumeInitializerList(); break;
+ case 281: { action. consumeInitializerList(); break;
}
//
- // Rule 281: initializer ::= { <openscope-ast> }
+ // Rule 282: initializer ::= { <openscope-ast> }
//
- case 281: { action. consumeInitializerList(); break;
+ case 282: { action. consumeInitializerList(); break;
}
//
- // Rule 282: start_initializer_list ::= $Empty
+ // Rule 283: start_initializer_list ::= $Empty
//
- case 282: { action. initializerListStart(); break;
+ case 283: { action. initializerListStart(); break;
}
//
- // Rule 283: end_initializer_list ::= $Empty
+ // Rule 284: end_initializer_list ::= $Empty
//
- case 283: { action. initializerListEnd(); break;
+ case 284: { action. initializerListEnd(); break;
}
//
- // Rule 288: designated_initializer ::= <openscope-ast> designation = initializer
+ // Rule 289: designated_initializer ::= <openscope-ast> designation = initializer
//
- case 288: { action. consumeInitializerDesignated(); break;
+ case 289: { action. consumeInitializerDesignated(); break;
}
//
- // Rule 292: designator_base ::= [ constant_expression ]
+ // Rule 293: designator_base ::= [ constant_expression ]
//
- case 292: { action. consumeDesignatorArray(); break;
+ case 293: { action. consumeDesignatorArray(); break;
}
//
- // Rule 293: designator_base ::= . identifier_token
+ // Rule 294: designator_base ::= . identifier_token
//
- case 293: { action. consumeDesignatorField(); break;
+ case 294: { action. consumeDesignatorField(); break;
}
//
- // Rule 294: designator ::= [ constant_expression ]
+ // Rule 295: designator ::= [ constant_expression ]
//
- case 294: { action. consumeDesignatorArray(); break;
+ case 295: { action. consumeDesignatorArray(); break;
}
//
- // Rule 295: designator ::= . identifier_token
+ // Rule 296: designator ::= . identifier_token
//
- case 295: { action. consumeDesignatorField(); break;
+ case 296: { action. consumeDesignatorField(); break;
}
//
- // Rule 296: translation_unit ::= external_declaration_list
+ // Rule 297: translation_unit ::= external_declaration_list
//
- case 296: { action. consumeTranslationUnit(); break;
+ case 297: { action. consumeTranslationUnit(); break;
}
//
- // Rule 297: translation_unit ::= $Empty
+ // Rule 298: translation_unit ::= $Empty
//
- case 297: { action. consumeTranslationUnit(); break;
+ case 298: { action. consumeTranslationUnit(); break;
}
//
- // Rule 302: external_declaration ::= ;
+ // Rule 303: external_declaration ::= ;
//
- case 302: { action. consumeDeclarationEmpty(); break;
+ case 303: { action. consumeDeclarationEmpty(); break;
}
//
- // Rule 303: external_declaration ::= ERROR_TOKEN
+ // Rule 304: external_declaration ::= ERROR_TOKEN
//
- case 303: { action. consumeDeclarationProblem(); break;
+ case 304: { action. consumeDeclarationProblem(); break;
}
//
- // Rule 306: function_definition ::= declaration_specifiers <openscope-ast> function_declarator function_body
+ // Rule 307: function_definition ::= declaration_specifiers <openscope-ast> function_declarator function_body
//
- case 306: { action. consumeFunctionDefinition(true); break;
+ case 307: { action. consumeFunctionDefinition(true); break;
}
//
- // Rule 307: function_definition ::= <openscope-ast> function_declarator function_body
+ // Rule 308: function_definition ::= <openscope-ast> function_declarator function_body
//
- case 307: { action. consumeFunctionDefinition(false); break;
+ case 308: { action. consumeFunctionDefinition(false); break;
}
//
- // Rule 308: function_definition ::= declaration_specifiers <openscope-ast> knr_function_declarator <openscope-ast> declaration_list compound_statement
+ // Rule 309: function_definition ::= declaration_specifiers <openscope-ast> knr_function_declarator <openscope-ast> declaration_list compound_statement
//
- case 308: { action. consumeFunctionDefinitionKnR(); break;
+ case 309: { action. consumeFunctionDefinitionKnR(); break;
}
//
- // Rule 309: function_body ::= { }
+ // Rule 310: function_body ::= { }
//
- case 309: { action. consumeStatementCompoundStatement(false); break;
+ case 310: { action. consumeStatementCompoundStatement(false); break;
}
//
- // Rule 310: function_body ::= { <openscope-ast> block_item_list }
+ // Rule 311: function_body ::= { <openscope-ast> block_item_list }
//
- case 310: { action. consumeStatementCompoundStatement(true); break;
+ case 311: { action. consumeStatementCompoundStatement(true); break;
}
//
- // Rule 312: no_sizeof_type_id_start ::= ERROR_TOKEN
+ // Rule 313: no_sizeof_type_id_start ::= ERROR_TOKEN
//
- case 312: { action. consumeEmpty(); break;
+ case 313: { action. consumeEmpty(); break;
}
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99SizeofExpressionParserprs.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99SizeofExpressionParserprs.java
index 8270e9e5ee5..b204a44fb06 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99SizeofExpressionParserprs.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99SizeofExpressionParserprs.java
@@ -34,185 +34,184 @@ public class C99SizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface BaseCheck {
public final static short baseCheck[] = {0,
- 0,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,3,1,1,
- 4,4,3,3,2,2,8,1,0,1,
- 1,2,2,2,2,2,2,2,2,2,
- 1,4,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,3,3,3,3,3,3,3,
- 3,3,3,3,1,1,2,1,0,1,
- 3,1,1,1,1,1,1,1,1,3,
- 4,3,2,4,1,2,1,1,1,2,
- 5,7,5,1,0,7,5,9,8,3,
- 2,2,2,3,2,4,2,2,2,2,
- 2,1,1,1,1,2,1,2,2,2,
- 1,2,2,1,2,2,1,2,2,1,
- 2,2,1,3,1,3,1,1,1,1,
+ 0,0,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,3,1,
+ 1,4,4,3,3,2,2,8,1,0,
+ 1,1,2,2,2,2,2,2,2,2,
+ 2,1,4,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,3,3,3,3,3,3,
+ 3,3,3,3,3,1,1,2,1,0,
+ 1,3,1,1,1,1,1,1,1,1,
+ 3,4,3,2,4,1,2,1,1,1,
+ 2,5,7,5,1,0,7,5,9,8,
+ 3,2,2,2,3,2,4,2,2,2,
+ 2,2,1,1,1,1,2,1,2,2,
+ 2,1,2,2,1,2,2,1,2,2,
+ 1,2,2,1,3,1,3,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,6,8,0,
- 0,1,1,3,3,3,0,1,0,1,
- 2,4,2,1,1,1,3,1,1,2,
- 3,7,8,0,1,0,1,3,1,3,
- 1,1,1,1,1,1,3,1,1,1,
- 1,1,3,1,2,2,1,5,3,1,
- 3,5,1,3,1,3,2,4,3,5,
- 4,6,6,3,5,1,2,3,4,5,
- 0,1,2,1,3,1,1,3,2,1,
- 1,1,1,2,1,2,3,1,1,1,
- 3,1,2,2,2,3,4,5,1,7,
- 3,0,0,1,1,3,3,4,1,1,
- 2,3,2,3,2,1,0,1,2,1,
- 1,1,1,1,2,4,3,6,2,4,
- 1,1,-36,0,0,0,0,0,0,0,
- 0,0,0,-78,0,0,0,0,0,0,
- 0,0,0,0,0,-80,-114,0,-2,0,
+ 1,1,1,1,1,1,1,1,6,8,
+ 0,0,1,1,3,3,3,0,1,0,
+ 1,2,4,2,1,1,1,3,1,1,
+ 2,3,7,8,0,1,0,1,3,1,
+ 3,1,1,1,1,1,1,3,1,1,
+ 1,1,1,3,1,2,2,1,5,3,
+ 1,3,5,1,3,1,3,2,4,3,
+ 5,4,6,6,3,5,1,3,4,5,
+ 6,0,1,2,1,3,1,1,3,2,
+ 1,1,1,1,2,1,2,3,1,1,
+ 1,3,1,2,2,2,3,4,5,1,
+ 7,3,0,0,1,1,3,3,4,1,
+ 1,2,3,2,3,2,1,0,1,2,
+ 1,1,1,1,1,2,4,3,6,2,
+ 4,1,1,-36,0,0,0,0,0,0,
+ 0,0,0,0,-156,0,0,0,0,0,
+ 0,0,0,0,0,0,-114,0,-74,-2,
+ -33,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,-137,0,-115,0,
+ -116,0,-4,0,0,0,0,0,-6,0,
+ 0,0,0,0,0,0,0,0,0,0,
0,0,0,-120,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-4,0,-115,0,-14,
- -69,-126,0,0,0,0,0,-110,0,0,
+ 0,0,0,0,-184,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-137,0,-116,0,-132,
- 0,0,0,-6,0,0,0,0,0,0,
- 0,0,0,-117,0,0,-184,0,0,0,
+ 0,0,0,0,0,-55,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-157,0,0,
+ 0,0,0,-110,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-80,0,-14,-104,
+ -133,-29,0,0,-30,0,-16,0,-193,0,
+ 0,0,0,-117,0,-17,0,-157,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,-72,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-145,0,0,0,
- 0,0,0,0,0,-16,-104,-17,0,0,
- 0,0,0,0,-118,0,0,0,-81,-18,
- 0,-19,-74,-75,-33,0,-72,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-118,
+ 0,0,0,-5,0,0,0,0,0,0,
+ 0,0,-18,-69,0,0,0,-7,0,0,
+ 0,0,0,0,0,0,-180,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-3,0,0,
+ 0,0,0,0,0,0,0,0,-132,0,
+ 0,0,0,0,0,0,0,0,-51,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-180,0,0,0,0,0,0,0,0,
- 0,0,-20,0,0,0,0,0,0,0,
- 0,0,-3,0,0,0,0,0,0,0,
+ 0,0,0,0,-34,0,-107,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-51,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-34,
- 0,-107,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-75,-125,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-21,-125,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-129,0,-141,0,-52,
+ -129,0,-165,0,0,-85,0,-48,0,0,
0,0,0,0,0,0,0,0,0,0,
- -122,0,0,0,-67,-22,0,0,0,0,
- -156,0,0,0,0,0,-27,0,0,0,
+ 0,0,0,0,0,-67,0,0,0,0,
+ 0,0,-68,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,-23,0,
- -159,0,0,0,-162,0,0,0,0,0,
- -37,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-56,0,0,0,0,
+ 0,0,0,-19,0,0,-20,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,-24,0,0,
- 0,0,0,0,0,0,0,-58,0,0,
- 0,0,0,0,0,0,0,0,-25,0,
- 0,0,0,0,0,0,0,0,-59,0,
- 0,0,0,0,0,0,0,0,0,-26,
- 0,0,0,0,0,0,0,0,0,-60,
+ -159,0,-182,0,0,0,0,0,0,0,
+ -27,0,0,0,0,0,0,0,0,0,
+ 0,-21,0,0,0,0,0,0,0,0,
+ 0,-56,0,0,0,0,0,0,0,0,
+ 0,0,-22,0,0,0,0,0,0,0,
+ 0,0,-57,0,0,0,0,0,0,0,
+ 0,0,0,-23,0,0,0,0,0,0,
+ 0,0,0,-58,0,0,0,0,0,0,
+ 0,0,0,0,-24,0,0,0,0,0,
+ 0,0,0,0,-59,0,0,0,0,0,
+ 0,0,0,0,0,-25,0,0,0,0,
+ 0,0,0,0,0,-60,0,0,0,0,
+ 0,0,0,0,0,0,-26,0,0,0,
+ 0,0,0,0,0,0,-61,0,0,0,
+ 0,0,0,0,0,0,0,-86,0,0,
+ 0,0,0,0,0,0,0,-62,0,0,
+ 0,0,0,0,0,0,0,0,-87,0,
+ 0,0,0,0,0,0,0,0,-63,0,
+ 0,0,0,0,0,0,0,0,0,-88,
+ 0,0,0,0,0,0,0,0,0,-64,
0,0,0,0,0,0,0,0,0,0,
- -86,0,0,0,0,0,0,0,0,0,
- -61,0,0,0,0,0,0,0,0,0,
- 0,-87,0,0,0,0,0,0,0,0,
- 0,-62,0,0,0,0,0,0,0,0,
- 0,0,-88,0,0,0,0,0,0,0,
- 0,0,-63,0,0,0,0,0,0,0,
- 0,0,0,-89,0,0,0,0,0,0,
- 0,0,0,-64,0,0,0,0,0,0,
- 0,0,0,0,-90,0,0,0,0,0,
- 0,0,0,0,-65,0,0,0,0,0,
- 0,0,0,0,0,-91,0,0,0,0,
- 0,0,0,0,0,-66,0,0,0,0,
- 0,0,0,0,0,0,-92,0,0,0,
- 0,0,0,0,0,0,-142,0,0,0,
- 0,0,0,0,0,0,0,-93,0,0,
- 0,0,0,0,0,0,0,-143,0,0,
- 0,0,0,0,0,0,0,0,-136,0,
- 0,0,0,0,0,0,0,0,-160,0,
- 0,0,0,0,0,0,0,0,0,-173,
- 0,0,0,0,0,0,0,0,-183,0,
- 0,0,0,0,0,0,0,0,0,-174,
- 0,0,0,0,0,0,0,0,-94,0,
- 0,0,-177,-95,0,-7,0,0,0,0,
- 0,0,0,-191,0,0,0,0,0,0,
+ -89,0,0,0,0,0,0,0,0,0,
+ -65,0,0,0,0,0,0,0,0,0,
+ 0,-90,0,0,0,0,0,0,0,0,
+ 0,-66,0,0,0,0,0,0,0,0,
+ 0,0,-91,0,0,0,0,0,0,0,
+ 0,0,-119,0,0,0,0,0,0,0,
+ 0,0,0,-92,0,0,0,0,0,0,
+ 0,0,0,-142,0,0,0,0,0,0,
+ 0,0,0,0,-93,0,0,0,0,0,
+ 0,0,0,0,-143,0,0,0,0,0,
+ 0,0,0,0,0,-94,0,0,0,0,
+ 0,0,0,0,0,-160,0,0,0,0,
+ 0,0,0,0,0,0,-162,0,0,0,
+ 0,0,0,0,0,-183,0,0,0,0,
+ 0,0,0,0,0,0,-174,0,0,0,
+ 0,0,0,0,0,-95,-78,0,0,-136,
+ -96,0,-8,0,0,0,0,0,0,0,
+ -192,0,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,-133,0,0,0,0,0,
- 0,0,0,0,-161,0,-182,0,0,0,
- -8,0,0,0,0,0,0,0,-207,0,
+ -201,0,0,0,0,0,0,0,0,0,
+ 0,-97,0,0,0,0,0,0,0,0,
+ 0,-155,0,-98,-99,0,0,-9,0,0,
+ 0,0,0,0,0,-209,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-119,0,
- 0,0,0,0,0,0,0,0,0,-96,
- 0,0,0,0,0,0,0,0,-97,-192,
- 0,-98,-83,-99,0,-54,0,0,0,0,
- 0,0,0,0,0,0,-128,0,0,0,
- 0,0,0,-29,0,-30,0,0,-48,0,
- 0,0,0,0,0,0,0,0,0,-100,
- 0,0,0,0,-101,-146,-102,-103,-106,0,
+ 0,0,0,0,0,0,-128,-46,0,0,
+ 0,0,0,0,0,0,0,0,-49,0,
+ 0,0,0,0,0,0,0,0,0,-111,
+ 0,0,0,-108,-173,-146,-122,-127,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-1,-32,0,-53,-31,0,0,0,-85,
- 0,0,0,0,0,0,0,-68,0,0,
- 0,0,0,0,0,-121,0,0,0,0,
+ 0,-189,0,0,-1,0,0,0,0,-100,
+ 0,0,0,0,0,0,0,-101,0,0,
+ 0,0,0,0,0,-171,0,0,0,0,
+ -113,-131,0,-185,0,0,0,0,0,0,
+ 0,0,0,0,0,-102,-135,-103,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-171,0,
- 0,-46,0,0,0,0,0,0,0,0,
- 0,0,-130,0,-188,-135,-138,-140,-147,0,
+ 0,0,0,0,0,-106,0,0,0,0,
+ -50,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-208,0,-121,0,0,
+ -130,0,0,-134,-139,-152,0,-42,0,0,
+ 0,0,0,0,0,0,0,0,-47,0,
0,0,0,0,0,0,0,0,0,0,
- -134,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-139,-152,0,0,0,
- 0,0,0,0,-5,0,0,0,0,0,
- 0,0,-49,0,0,0,0,0,0,0,
- 0,0,0,-158,0,-50,0,0,0,0,
- 0,0,0,0,0,0,-190,0,-206,-12,
- 0,0,0,0,0,0,0,0,-165,0,
- -209,-178,-179,-200,-205,0,-42,0,0,0,
+ 0,0,0,0,0,-12,0,0,0,0,
+ 0,0,0,-43,0,0,0,0,0,0,
+ 0,0,0,0,-44,0,0,0,0,0,
+ 0,0,0,0,0,-45,0,0,0,0,
+ 0,0,0,0,0,0,-203,0,0,-10,
+ 0,0,0,0,0,0,0,0,-37,0,
+ 0,0,0,0,0,0,0,-38,0,0,
+ 0,0,0,0,0,0,-73,-170,-138,0,
+ 0,0,0,0,0,0,-158,0,0,0,
+ -126,-178,-186,0,-76,-179,-177,-124,-190,0,
+ 0,-71,0,-145,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-13,0,
- 0,0,0,0,0,0,-43,0,0,0,
- 0,0,0,0,0,0,0,-44,0,0,
- 0,0,0,0,0,0,0,0,-45,0,
- 0,0,0,0,0,0,0,0,0,-111,
- 0,0,-47,0,0,0,0,0,0,0,
- 0,0,-201,-38,0,0,0,0,0,0,
- 0,0,0,0,-154,0,-163,0,0,-73,
- -113,-170,-108,-189,-194,0,-76,0,-124,-185,
- 0,0,0,-208,-127,0,0,0,0,0,
+ 0,0,0,0,0,0,-210,0,0,-202,
+ -109,-147,-35,-123,0,-11,0,0,0,0,
+ 0,0,0,0,-207,-31,0,0,0,0,
+ 0,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,-39,0,0,
+ 0,0,0,0,0,0,0,-83,-81,0,
+ 0,-40,0,0,0,0,0,0,0,-41,
+ 0,0,0,0,0,0,0,-70,0,0,
+ 0,0,0,0,0,-112,0,-196,-169,0,
+ -140,-15,-176,0,-141,-154,0,-144,-77,0,
+ -150,-151,0,0,-148,0,0,-28,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-155,0,
- 0,0,0,0,0,-172,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-9,0,0,0,0,0,0,0,-10,
- 0,0,0,0,0,0,0,-11,0,0,
- 0,0,0,0,0,-35,-39,0,0,0,
- 0,0,0,0,0,-150,0,-40,0,0,
- 0,0,0,0,0,0,0,0,-71,-149,
- -197,0,-41,0,0,0,0,0,0,0,
- 0,-148,0,0,-144,0,0,0,0,0,
- -70,0,0,0,0,0,0,0,-112,0,
- 0,-169,0,0,0,0,-77,0,0,0,
- 0,0,0,-166,-15,-151,-167,0,0,-181,
- -28,-168,-193,0,0,0,0,0,0,0,
+ 0,0,0,-161,0,0,0,0,0,0,
+ 0,-149,0,0,-79,0,-187,0,-211,0,
+ 0,0,0,-163,0,0,-105,0,-82,0,
+ 0,0,0,-84,0,0,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,-79,0,0,0,0,0,0,0,
- 0,0,-82,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-84,-153,0,0,
- 0,0,0,0,0,-105,-198,0,0,0,
- 0,0,0,-176,0,0,-186,0,0,-187,
- -202,0,0,0,0,0,0,0,-175,-131,
- 0,0,-203,0,-109,0,0,-123,-195,0,
- 0,0,-196,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-204,0,0,
- -164,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,-32,0,-188,-175,-204,-166,-164,-53,
+ -167,-172,-168,0,-181,0,0,-194,0,0,
+ 0,-195,0,-197,-191,-198,-199,-200,-205,0,
+ 0,0,0,0,0,0,0,-206,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,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;
@@ -222,186 +221,185 @@ public class C99SizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface BaseAction {
public final static char baseAction[] = {
- 87,11,24,24,23,23,32,32,69,69,
- 1,1,2,2,2,2,3,3,3,4,
- 5,5,5,5,5,5,5,5,51,51,
- 70,6,6,6,6,6,6,6,6,6,
- 6,7,7,8,8,8,8,9,9,9,
- 10,10,10,12,12,12,12,12,13,13,
- 13,14,14,15,15,16,16,17,17,18,
- 18,19,19,20,20,20,20,20,20,20,
- 20,20,20,20,20,101,45,40,88,88,
- 73,73,46,102,102,102,102,102,102,102,
- 103,103,103,104,104,109,109,110,110,105,
- 105,106,106,106,112,112,107,107,107,107,
- 108,108,108,108,108,111,111,25,25,25,
- 25,25,27,27,27,79,79,74,74,74,
- 74,75,75,75,76,76,76,77,77,77,
- 78,78,78,113,113,114,114,115,28,30,
- 30,30,30,30,52,54,54,54,54,54,
- 54,54,54,54,54,54,54,63,60,60,
- 89,90,64,64,61,61,61,65,80,80,
- 81,81,66,66,66,48,91,91,82,83,
- 83,83,62,62,92,84,84,85,85,67,
- 67,21,22,22,22,29,47,47,33,33,
- 33,33,36,36,38,34,34,35,39,39,
- 116,116,37,117,117,93,93,26,26,26,
- 26,26,26,26,26,26,86,49,49,49,
- 49,31,56,56,55,55,55,57,57,50,
- 50,94,94,71,71,58,58,58,41,41,
- 41,42,43,43,43,44,44,44,44,53,
- 53,53,59,95,72,72,72,72,68,96,
- 97,97,98,98,99,99,118,118,119,119,
- 120,120,120,120,122,122,121,121,121,123,
- 123,87,87,1,811,16,20,17,370,790,
- 43,488,486,502,118,500,614,543,689,656,
- 769,748,73,90,133,211,387,596,400,31,
- 135,132,134,158,434,19,16,20,17,370,
- 790,43,488,486,502,396,500,614,543,689,
- 656,769,748,73,279,137,441,164,201,185,
- 579,104,698,141,144,147,150,324,358,19,
- 16,20,17,370,41,35,366,1457,1597,1633,
- 1643,1657,1210,253,211,21,629,284,201,184,
- 124,368,244,1296,506,19,16,20,17,370,
- 41,39,285,337,662,1281,979,482,19,16,
- 20,17,370,790,43,488,486,502,396,500,
- 614,543,689,656,769,748,73,279,332,19,
- 16,20,17,370,790,43,488,486,502,396,
- 500,614,543,689,656,769,748,73,279,506,
- 19,16,20,17,370,41,43,488,486,502,
- 284,500,614,543,689,1187,1296,358,19,16,
- 20,17,370,41,35,285,57,14,157,1455,
- 1297,286,1324,1085,290,201,186,1296,344,414,
- 6,245,30,144,327,513,287,275,19,16,
- 20,17,370,790,43,488,486,502,1695,500,
- 614,543,689,656,769,748,73,1453,1581,273,
- 274,237,458,19,16,20,17,370,790,43,
- 488,486,502,636,500,614,543,689,656,769,
- 748,73,279,506,19,16,20,17,370,790,
- 43,488,486,502,398,500,614,543,689,656,
- 769,748,73,90,506,19,16,20,17,370,
- 41,43,488,486,502,288,500,614,543,1142,
- 513,1296,554,19,16,20,17,370,790,43,
- 488,486,502,1698,500,614,543,689,656,769,
- 748,73,1459,18,200,299,19,16,20,17,
- 370,790,43,488,486,502,366,500,614,543,
- 689,656,769,748,73,1575,189,177,52,238,
- 506,19,16,20,17,370,41,43,488,486,
- 502,695,500,614,1144,513,191,133,211,252,
- 211,587,638,135,132,134,158,506,19,16,
- 20,17,370,790,43,488,486,502,1188,500,
- 614,543,689,656,769,748,73,91,137,344,
- 164,201,293,27,1349,587,141,144,147,150,
- 324,506,19,16,20,17,370,41,43,832,
- 1457,1597,1633,1643,1657,1210,506,19,16,20,
- 17,370,790,43,488,486,502,281,500,614,
- 543,689,656,769,748,73,84,506,19,16,
- 20,17,370,790,43,488,486,502,243,500,
- 614,543,689,656,769,748,73,83,506,19,
- 16,20,17,370,790,43,488,486,502,171,
- 500,614,543,689,656,769,748,73,82,506,
- 19,16,20,17,370,790,43,488,486,502,
- 547,500,614,543,689,656,769,748,73,81,
- 506,19,16,20,17,370,790,43,488,486,
- 502,578,500,614,543,689,656,769,748,73,
- 80,506,19,16,20,17,370,790,43,488,
- 486,502,194,500,614,543,689,656,769,748,
- 73,79,506,19,16,20,17,370,790,43,
- 488,486,502,199,500,614,543,689,656,769,
- 748,73,78,506,19,16,20,17,370,790,
- 43,488,486,502,416,500,614,543,689,656,
- 769,748,73,77,506,19,16,20,17,370,
- 790,43,488,486,502,488,500,614,543,689,
- 656,769,748,73,76,506,19,16,20,17,
- 370,790,43,488,486,502,490,500,614,543,
- 689,656,769,748,73,75,506,19,16,20,
- 17,370,790,43,488,486,502,514,500,614,
- 543,689,656,769,748,73,74,506,19,16,
- 20,17,370,790,43,488,486,502,241,500,
- 614,543,689,656,769,748,73,1604,506,19,
- 16,20,17,370,790,43,488,486,502,711,
- 500,614,543,689,656,769,748,73,1607,506,
- 19,16,20,17,370,41,43,488,486,502,
- 587,500,614,543,689,656,769,748,92,506,
- 19,16,20,17,370,41,43,488,486,502,
- 421,500,614,543,689,656,769,748,92,601,
- 661,1265,178,721,245,1610,506,19,16,20,
- 17,370,41,38,506,19,16,20,17,370,
- 41,43,488,486,502,1613,500,614,543,689,
- 656,769,748,92,506,19,16,20,17,370,
- 41,43,488,486,502,14,500,614,543,689,
- 656,769,748,92,1337,696,1658,201,295,193,
- 210,506,19,16,20,17,370,41,37,506,
- 19,16,20,17,370,41,43,488,486,502,
- 200,500,614,543,689,656,769,748,92,506,
- 19,16,20,17,370,41,43,488,486,502,
- 13,500,614,543,689,656,769,748,72,50,
- 201,1352,614,439,671,201,506,19,16,20,
- 17,370,41,43,488,486,502,113,500,614,
- 543,689,656,1185,201,30,201,30,1560,506,
- 19,16,20,17,370,41,43,488,486,502,
- 305,500,1034,272,291,324,207,600,97,676,
- 216,1269,219,1572,221,222,227,1592,265,504,
- 503,270,382,14,261,14,489,208,495,275,
- 189,177,272,553,553,262,553,553,513,216,
- 1269,219,1572,221,222,227,737,265,504,503,
- 270,133,211,1612,24,414,23,136,132,134,
- 158,22,86,86,1420,86,88,311,371,151,
- 1180,259,506,19,16,20,17,370,41,43,
- 488,958,138,670,164,281,14,14,707,499,
- 142,145,148,151,324,272,1681,1489,695,1721,
- 1226,205,217,1269,219,1572,221,222,227,339,
- 267,504,503,270,1218,226,738,739,216,1269,
- 219,1572,221,222,227,530,19,16,20,17,
- 370,40,1354,506,19,16,20,17,370,41,
- 43,488,486,502,697,1130,506,19,16,20,
- 17,370,41,43,488,486,502,587,1139,281,
- 530,19,16,20,17,370,33,196,198,710,
- 1681,158,700,724,712,287,1667,506,19,16,
- 20,17,370,41,43,488,486,874,1796,202,
- 253,211,216,1269,219,1572,221,222,227,530,
- 19,16,20,17,370,32,1354,506,19,16,
- 20,17,370,41,43,488,486,895,506,19,
- 16,20,17,370,41,43,488,486,916,506,
- 19,16,20,17,370,41,43,488,486,937,
- 513,197,198,506,19,16,20,17,370,41,
- 43,488,1029,728,506,19,16,20,17,370,
- 41,43,853,271,1681,14,280,14,1796,1796,
- 326,679,679,104,721,711,1674,232,417,104,
- 719,1589,1690,1677,733,513,216,1269,219,1572,
- 221,222,227,275,276,229,272,239,133,211,
- 1612,253,211,241,140,132,134,158,277,612,
- 1352,265,504,503,270,1226,14,217,1269,219,
- 1572,221,222,227,1796,1693,1718,1680,1420,139,
- 1796,164,506,19,16,20,17,370,41,36,
- 506,19,16,20,17,370,41,35,506,19,
- 16,20,17,370,41,34,160,506,19,16,
- 20,17,370,41,46,1796,357,1559,506,19,
- 16,20,17,370,41,45,207,636,1796,44,
- 44,587,272,506,19,16,20,17,370,41,
- 44,1157,720,1033,1353,104,1796,265,504,503,
- 270,409,19,16,20,17,370,41,42,567,
- 1189,1189,567,179,264,1796,258,627,225,240,
- 636,1796,1796,636,104,14,513,104,1666,1249,
- 104,14,513,104,1157,1796,313,1157,133,211,
- 1189,1796,313,1189,143,132,134,158,242,278,
- 195,243,1796,632,292,223,195,294,1666,257,
- 1796,1249,257,661,1465,86,1263,1465,1796,1263,
- 590,86,1796,1536,133,211,590,666,48,1536,
- 146,132,134,158,133,211,242,446,1796,636,
- 149,132,134,158,612,1352,505,588,133,211,
- 142,44,655,195,152,132,134,158,636,95,
- 116,636,272,587,1796,52,1796,1226,52,513,
- 636,636,1157,365,1796,195,1020,267,504,503,
- 270,1796,1189,1796,195,1157,252,211,587,252,
- 211,52,228,1796,190,203,232,257,1020,1796,
- 1464,1796,1699,1796,1263,1796,192,1020,1000,1689,
- 257,207,252,211,1796,1606,190,1263,1796,1796,
- 1351,372,1796,1796,372,191,1796,1796,1454,1353,
- 1561,1689,1796,1796,1796,1796,1796,1796,1796,1796,
- 1703,1796,1796,1796,1796,1796,1796,1460,1796,1796,
- 1796,615,1796,1796,947,1796,0,19,177,0,
- 1,2020,0,1,2031,0
+ 87,11,101,24,24,23,23,32,32,69,
+ 69,1,1,2,2,2,2,3,3,3,
+ 4,5,5,5,5,5,5,5,5,51,
+ 51,70,6,6,6,6,6,6,6,6,
+ 6,6,7,7,8,8,8,8,9,9,
+ 9,10,10,10,12,12,12,12,12,13,
+ 13,13,14,14,15,15,16,16,17,17,
+ 18,18,19,19,20,20,20,20,20,20,
+ 20,20,20,20,20,20,102,45,40,88,
+ 88,73,73,46,103,103,103,103,103,103,
+ 103,104,104,104,105,105,110,110,111,111,
+ 106,106,107,107,107,113,113,108,108,108,
+ 108,109,109,109,109,109,112,112,25,25,
+ 25,25,25,28,28,28,79,79,74,74,
+ 74,74,75,75,75,76,76,76,77,77,
+ 77,78,78,78,114,114,115,115,116,29,
+ 31,31,31,31,31,52,54,54,54,54,
+ 54,54,54,54,54,54,54,54,63,60,
+ 60,89,90,64,64,61,61,61,65,80,
+ 80,81,81,66,66,66,48,91,91,82,
+ 83,83,83,62,62,92,84,84,85,85,
+ 67,67,21,22,22,22,30,47,47,33,
+ 33,33,33,36,36,38,34,34,35,39,
+ 39,117,117,37,118,118,93,93,26,26,
+ 26,26,26,26,26,26,26,86,49,49,
+ 49,49,27,56,56,55,55,55,57,57,
+ 50,50,94,94,71,71,58,58,58,41,
+ 41,41,42,43,43,43,44,44,44,44,
+ 53,53,53,59,95,72,72,72,72,68,
+ 96,97,97,98,98,99,99,119,119,120,
+ 120,121,121,121,121,123,123,122,122,122,
+ 124,124,87,87,1,878,17,21,18,469,
+ 857,44,486,477,714,587,543,752,717,794,
+ 773,836,815,74,91,134,212,596,589,144,
+ 31,513,136,133,135,159,506,20,17,21,
+ 18,469,42,44,486,477,714,28,543,752,
+ 717,794,773,1248,1558,274,138,629,165,201,
+ 186,201,185,441,142,145,148,151,1097,506,
+ 20,17,21,18,469,42,40,373,1445,1579,
+ 1625,1639,1644,666,434,20,17,21,18,469,
+ 857,44,486,477,714,367,543,752,717,794,
+ 773,836,815,74,280,482,20,17,21,18,
+ 469,857,44,486,477,714,367,543,752,717,
+ 794,773,836,815,74,280,506,20,17,21,
+ 18,469,42,44,486,477,714,285,543,752,
+ 717,794,1276,1325,358,20,17,21,18,469,
+ 42,36,286,1437,1614,291,1100,387,285,579,
+ 14,14,201,31,1325,201,31,57,245,201,
+ 1442,394,1651,286,662,1324,157,1702,332,20,
+ 17,21,18,469,857,44,486,477,714,367,
+ 543,752,717,794,773,836,815,74,280,275,
+ 20,17,21,18,469,857,44,486,477,714,
+ 1481,543,752,717,794,773,836,815,74,1214,
+ 201,187,369,238,530,20,17,21,18,469,
+ 41,287,25,6,104,24,209,1325,506,20,
+ 17,21,18,469,42,39,288,458,20,17,
+ 21,18,469,857,44,486,477,714,22,543,
+ 752,717,794,773,836,815,74,280,506,20,
+ 17,21,18,469,857,44,486,477,714,124,
+ 543,752,717,794,773,836,815,74,91,506,
+ 20,17,21,18,469,42,44,486,477,714,
+ 289,543,752,717,1154,513,1325,554,20,17,
+ 21,18,469,857,44,486,477,714,1484,543,
+ 752,717,794,773,836,815,74,1448,19,327,
+ 299,20,17,21,18,469,857,44,486,477,
+ 714,373,543,752,717,794,773,836,815,74,
+ 1578,189,178,52,239,275,189,178,506,20,
+ 17,21,18,469,42,44,486,477,714,1326,
+ 543,1096,134,212,253,212,513,134,212,136,
+ 133,135,159,513,137,133,135,159,506,20,
+ 17,21,18,469,42,44,486,477,714,1278,
+ 543,752,1155,138,30,165,23,636,139,1443,
+ 165,142,145,148,151,1097,143,146,149,152,
+ 1097,201,294,201,296,1445,1579,1625,1639,1644,
+ 666,506,20,17,21,18,469,857,44,486,
+ 477,714,200,543,752,717,794,773,836,815,
+ 74,92,506,20,17,21,18,469,857,44,
+ 486,477,714,191,543,752,717,794,773,836,
+ 815,74,85,506,20,17,21,18,469,857,
+ 44,486,477,714,344,543,752,717,794,773,
+ 836,815,74,84,506,20,17,21,18,469,
+ 857,44,486,477,714,243,543,752,717,794,
+ 773,836,815,74,83,506,20,17,21,18,
+ 469,857,44,486,477,714,171,543,752,717,
+ 794,773,836,815,74,82,506,20,17,21,
+ 18,469,857,44,486,477,714,547,543,752,
+ 717,794,773,836,815,74,81,506,20,17,
+ 21,18,469,857,44,486,477,714,578,543,
+ 752,717,794,773,836,815,74,80,506,20,
+ 17,21,18,469,857,44,486,477,714,194,
+ 543,752,717,794,773,836,815,74,79,506,
+ 20,17,21,18,469,857,44,486,477,714,
+ 199,543,752,717,794,773,836,815,74,78,
+ 506,20,17,21,18,469,857,44,486,477,
+ 714,416,543,752,717,794,773,836,815,74,
+ 77,506,20,17,21,18,469,857,44,486,
+ 477,714,488,543,752,717,794,773,836,815,
+ 74,76,506,20,17,21,18,469,857,44,
+ 486,477,714,490,543,752,717,794,773,836,
+ 815,74,75,506,20,17,21,18,469,857,
+ 44,486,477,714,514,543,752,717,794,773,
+ 836,815,74,73,506,20,17,21,18,469,
+ 857,44,486,477,714,241,543,752,717,794,
+ 773,836,815,74,1688,506,20,17,21,18,
+ 469,857,44,486,477,714,601,543,752,717,
+ 794,773,836,815,74,1691,506,20,17,21,
+ 18,469,42,44,486,477,714,587,543,752,
+ 717,794,773,836,815,93,506,20,17,21,
+ 18,469,42,44,486,477,714,421,543,752,
+ 717,794,773,836,815,93,245,118,1232,282,
+ 711,13,1695,506,20,17,21,18,469,42,
+ 38,506,20,17,21,18,469,42,44,486,
+ 477,714,1698,543,752,717,794,773,836,815,
+ 93,506,20,17,21,18,469,42,44,486,
+ 477,714,50,543,752,717,794,773,836,815,
+ 93,325,612,1442,614,671,194,211,506,20,
+ 17,21,18,469,42,37,506,20,17,21,
+ 18,469,42,44,486,477,714,201,543,752,
+ 717,794,773,836,815,93,337,113,506,20,
+ 17,21,18,469,42,44,486,1025,1622,506,
+ 20,17,21,18,469,42,44,486,477,714,
+ 513,1101,202,273,104,587,207,44,513,208,
+ 217,1482,220,1585,222,223,228,1569,266,639,
+ 339,271,281,272,262,382,1447,1446,240,276,
+ 305,278,273,1687,1575,263,578,179,324,217,
+ 1482,220,1585,222,223,228,151,266,639,339,
+ 271,679,116,1693,52,217,1482,220,1585,222,
+ 223,228,1262,661,1210,87,600,14,97,1480,
+ 312,260,273,1318,277,253,212,1187,1152,218,
+ 1482,220,1585,222,223,228,676,268,639,339,
+ 271,506,20,17,21,18,469,42,44,486,
+ 477,714,258,1142,197,199,281,1582,737,1321,
+ 1568,670,340,1708,205,738,739,1687,506,20,
+ 17,21,18,469,42,44,486,477,941,506,
+ 20,17,21,18,469,42,44,486,1046,217,
+ 1482,220,1585,222,223,228,530,20,17,21,
+ 18,469,34,1480,506,20,17,21,18,469,
+ 42,44,486,477,962,506,20,17,21,18,
+ 469,42,44,486,477,983,506,20,17,21,
+ 18,469,42,44,486,477,1004,728,198,199,
+ 506,20,17,21,18,469,42,36,1687,506,
+ 20,17,21,18,469,42,44,899,506,20,
+ 17,21,18,469,42,44,920,326,679,14,
+ 217,1482,220,1585,222,223,228,697,1566,1627,
+ 1067,695,700,710,1693,232,724,721,104,721,
+ 276,230,44,273,358,20,17,21,18,469,
+ 42,36,254,212,254,212,134,212,266,639,
+ 339,271,242,141,133,135,159,733,246,1296,
+ 712,52,499,160,52,1210,506,20,17,21,
+ 18,469,42,35,1452,287,489,140,1705,165,
+ 1709,1637,253,212,1318,253,212,578,227,273,
+ 218,1482,220,1585,222,223,228,530,20,17,
+ 21,18,469,33,266,639,339,271,506,20,
+ 17,21,18,469,42,47,89,1441,439,414,
+ 1441,265,506,20,17,21,18,469,42,46,
+ 506,20,17,21,18,469,42,45,409,20,
+ 17,21,18,469,42,43,567,640,719,567,
+ 1014,44,14,612,1442,698,14,661,104,627,
+ 661,357,513,314,693,720,663,1573,14,254,
+ 212,1187,661,1296,1187,1789,1296,196,1689,314,
+ 134,212,241,530,371,279,1187,144,133,135,
+ 159,226,87,196,696,1637,258,615,1256,258,
+ 1483,1218,44,1321,1218,632,1321,588,87,158,
+ 484,259,1789,615,14,1789,1483,242,661,661,
+ 208,1789,1789,341,666,415,134,212,1789,1296,
+ 1789,48,1187,147,133,135,159,1449,1446,686,
+ 134,212,661,273,1318,134,212,150,133,135,
+ 159,1256,153,133,135,159,196,258,268,639,
+ 339,271,1704,14,1321,142,95,44,104,707,
+ 14,104,14,513,578,104,661,661,104,1087,
+ 1264,578,711,1685,513,587,365,587,446,587,
+ 196,196,243,292,1296,244,224,191,587,293,
+ 1706,1789,295,87,281,1789,1789,229,544,233,
+ 87,1215,1686,1087,1087,1240,1477,203,1789,180,
+ 1789,204,1789,1789,1789,1789,1789,1789,1789,1789,
+ 1629,191,192,1718,1789,1789,1789,1789,1789,1789,
+ 1789,1789,1789,1789,1789,1707,1686,1789,1789,1789,
+ 1789,1789,1789,1789,1789,1789,1789,193,1789,0,
+ 20,178,0,1,2014,0,1,2025,0
};
};
public final static char baseAction[] = BaseAction.baseAction;
@@ -502,84 +500,84 @@ public class C99SizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface TermAction {
public final static char termAction[] = {0,
- 1796,1806,1605,1807,1520,58,2008,2009,2010,1512,
- 1091,1528,60,1,1379,1340,1305,1957,1808,1809,
- 1810,1811,1036,404,1958,1956,2011,1959,1955,53,
- 1796,1962,1967,1966,1964,1965,1963,1968,1969,1961,
- 1970,1971,1972,251,1143,499,336,1796,1,59,
- 1,1796,189,1,1,1,50,2008,2009,2010,
- 1409,1398,1387,1357,1,1434,701,1409,1398,1387,
- 1357,1,1,1,1,1,1252,1423,1,1,
+ 1789,1800,1572,1801,1400,59,2002,2003,2004,1158,
+ 1103,1486,61,1,1517,1356,534,1951,1802,1803,
+ 1804,1805,548,379,1952,1950,2005,1953,1949,54,
+ 1789,1956,1961,1960,1958,1959,1957,1962,1963,1955,
+ 1964,1965,1966,252,1538,1539,467,1789,1,60,
+ 1,1789,190,1,1,1,51,2002,2003,2004,
+ 1386,1375,1364,1328,1,1418,1409,1386,1375,1364,
+ 1328,1,1,1,1,1,1188,1339,1,1,
1,1,1,1,1,1,1,1,1,1,
- 189,1,1,1,1796,1,1796,1,1990,188,
- 1,1,1,1796,1409,1398,1387,1357,1799,487,
- 1786,1,260,2020,1186,1,1,180,1,1,
- 1,1,1,181,507,1,1,1,1,1,
- 1,1,1,1,1,1,1,188,1,1,
- 1,1796,1,269,1,1990,189,1,1,1,
- 266,2020,1186,1798,251,507,47,283,1,263,
- 1563,1450,507,1,2052,1,1,1,1,1,
- 69,507,1,1,1,1,1,1,1,1,
- 1,1,1,1,189,1,1,1,1796,1806,
- 67,1807,1990,49,2008,2009,2010,1563,48,61,
- 1796,1806,1563,1807,1796,1957,1,1790,1186,1548,
- 1537,1801,1958,1956,2011,1959,1955,1445,507,1962,
- 1967,1966,1964,1965,1963,1968,1969,1961,1970,1971,
- 1972,127,1143,499,336,459,1800,2008,2009,2010,
- 52,266,71,1450,62,251,1548,1537,1957,1434,
- 701,1548,1537,507,574,1958,1956,2011,1959,1955,
- 1326,1313,1962,1967,1966,1964,1965,1963,1968,1969,
- 1961,1970,1971,1972,1,1806,1605,1807,378,1799,
- 1,2020,1433,1512,1091,1528,1796,2032,1379,1340,
- 1305,592,1808,1809,1810,1811,1036,404,1796,1806,
- 1605,1807,477,1799,1796,1326,1313,1512,1091,1528,
- 1146,1205,1379,1340,1305,968,1808,1809,1810,1811,
- 1036,404,1796,70,1798,1,268,1450,1451,1796,
- 1801,1,1806,1605,1807,1520,28,507,507,1064,
- 1512,1091,1528,65,2839,1379,1340,1305,1798,1808,
- 1809,1810,1811,1036,404,1800,1,1796,1806,1605,
- 1807,1520,1799,1119,1796,1796,1512,1091,1528,1801,
- 1796,1379,1340,1305,28,1808,1809,1810,1811,1036,
- 404,1796,1,1,1,1,183,2850,459,2850,
- 1,1,1,1355,1800,1,1,1,1796,1,
- 1,1,1,1,1,2051,640,1798,1796,1806,
- 1605,1807,1520,182,2851,57,2851,1512,1091,1528,
- 1,487,1379,1340,1305,1805,1808,1809,1810,1811,
- 1036,404,2108,1,1806,1605,1807,1520,204,2853,
- 87,2853,1512,1091,1528,1796,2839,1379,1340,1305,
- 1805,1808,1809,1810,1811,1036,404,1796,1806,1605,
- 1807,1520,1252,1423,1796,1796,1512,1091,1528,667,
- 2839,1379,1340,1305,1339,1808,1809,1810,1811,1036,
- 404,1,1806,1605,1807,1520,1804,56,1,55,
- 1512,1091,1528,89,2839,1379,1340,1305,218,1808,
- 1809,1810,1811,1036,404,1796,1806,1605,1807,1520,
- 507,1804,1796,54,1512,1091,1528,1801,89,1379,
- 1340,1305,1796,1808,1809,1810,1811,1036,404,1796,
- 1806,1611,1807,1520,1252,1423,1252,1423,1512,1091,
- 1528,1796,1800,1379,1340,1305,41,1808,1809,1810,
- 1811,1036,404,1,1806,1605,1807,1520,1796,1796,
- 1252,1423,1512,1091,1528,1796,1,1379,1340,1305,
- 251,1808,1809,1810,1811,1036,404,19,31,1787,
- 1206,1787,1787,177,177,177,1796,1,1793,1787,
- 1203,1803,1821,1822,177,1796,1806,1796,1807,68,
- 51,177,177,177,177,177,926,1787,1075,1434,
- 701,206,1806,66,1807,2052,905,884,863,842,
- 821,779,800,758,737,716,128,1796,1796,1802,
- 1166,129,2008,2009,2010,63,2052,2008,2009,2010,
- 989,205,1140,1957,1140,1164,1169,1796,1957,1796,
- 1958,1956,2011,1959,1955,1958,1956,2011,1959,1955,
- 130,1796,1806,574,1807,131,2008,2009,2010,254,
- 64,2008,2009,2010,1266,1796,640,1957,1,651,
- 691,1169,1957,1801,1958,1956,2011,1959,1955,1958,
- 1956,2011,1959,1955,247,289,1796,246,1546,209,
- 1,1,1,2008,2009,2010,248,1009,1800,249,
- 29,199,1,1,1,2008,2009,2010,250,220,
- 29,1452,1796,205,2008,2009,2010,1,2020,1433,
- 282,507,251,2020,1433,1267,1796,1796,1796,438,
- 1268,187,187,1796,187,1796,1796,1087,1796,1824,
- 1447,1496,2750,1796,183,182,532,204,1796,1044,
- 1796,1796,1796,1796,1796,1796,1796,1796,1796,1796,
- 1099,1796,1796,1267
+ 190,1,1,1,1789,1,1789,1,1984,189,
+ 1,1,1,1789,1386,1375,1364,1328,1793,470,
+ 1779,1,261,2014,1216,1,1,181,1,1,
+ 1,1,1,182,509,1,1,1,1,1,
+ 1,1,1,1,1,1,1,189,1,1,
+ 1,1789,1,270,1,1984,190,1,1,1,
+ 267,2014,1216,1792,252,509,48,284,1,264,
+ 1550,1427,509,1,2046,1,1,1,1,1,
+ 70,509,1,1,1,1,1,1,1,1,
+ 1,1,1,1,190,1,1,1,1789,1800,
+ 68,1801,1984,50,2002,2003,2004,1550,49,62,
+ 1789,1800,1550,1801,1789,1951,1,1783,1216,1542,
+ 1528,1795,1952,1950,2005,1953,1949,1576,509,1956,
+ 1961,1960,1958,1959,1957,1962,1963,1955,1964,1965,
+ 1966,128,1538,1539,467,436,1794,2002,2003,2004,
+ 53,267,72,1427,63,252,1542,1528,1951,1418,
+ 1409,1542,1528,509,599,1952,1950,2005,1953,1949,
+ 1301,1199,1956,1961,1960,1958,1959,1957,1962,1963,
+ 1955,1964,1965,1966,1,1800,1572,1801,454,1793,
+ 1,2014,1397,1158,1103,1486,1789,2026,1517,1356,
+ 534,617,1802,1803,1804,1805,548,379,1789,1800,
+ 1572,1801,1454,1793,1789,1301,1199,1158,1103,1486,
+ 346,1690,1517,1356,534,1035,1802,1803,1804,1805,
+ 548,379,1789,71,1792,1,269,1427,1261,1789,
+ 1795,1,1800,1572,1801,1400,29,509,509,1131,
+ 1158,1103,1486,66,2833,1517,1356,534,1792,1802,
+ 1803,1804,1805,548,379,1794,1,1789,1800,1572,
+ 1801,1400,1793,993,1789,1789,1158,1103,1486,1795,
+ 1789,1517,1356,534,29,1802,1803,1804,1805,548,
+ 379,1789,1,1,1,1,184,2844,436,2844,
+ 1,1,1,1495,1794,1,1,1,1789,1,
+ 1,1,1,1,1,2045,698,1792,1789,1800,
+ 1572,1801,1400,183,2845,58,2845,1158,1103,1486,
+ 1,470,1517,1356,534,1799,1802,1803,1804,1805,
+ 548,379,2102,1,1800,1572,1801,1400,205,2847,
+ 88,2847,1158,1103,1486,1789,2833,1517,1356,534,
+ 1799,1802,1803,1804,1805,548,379,1789,1800,1572,
+ 1801,1400,1188,1339,1789,1789,1158,1103,1486,741,
+ 2833,1517,1356,534,1316,1802,1803,1804,1805,548,
+ 379,1,1800,1572,1801,1400,1798,57,1,56,
+ 1158,1103,1486,90,2833,1517,1356,534,219,1802,
+ 1803,1804,1805,548,379,1789,1800,1572,1801,1400,
+ 509,1798,1789,55,1158,1103,1486,1795,90,1517,
+ 1356,534,1789,1802,1803,1804,1805,548,379,1789,
+ 1800,1588,1801,1400,1188,1339,1188,1339,1158,1103,
+ 1486,1789,1794,1517,1356,534,42,1802,1803,1804,
+ 1805,548,379,1,1800,1572,1801,1400,1789,1789,
+ 1188,1339,1158,1103,1486,1789,1,1517,1356,534,
+ 252,1802,1803,1804,1805,548,379,20,32,1780,
+ 1496,1780,1780,178,178,178,1789,1,1786,1780,
+ 1683,1797,1815,1816,178,1789,1800,1789,1801,69,
+ 52,178,178,178,178,178,972,1780,471,1418,
+ 1409,207,1800,67,1801,2046,951,930,909,888,
+ 867,825,846,804,783,762,129,1789,1789,1796,
+ 475,130,2002,2003,2004,64,2046,2002,2003,2004,
+ 1056,206,479,1951,479,472,668,1789,1951,1789,
+ 1952,1950,2005,1953,1949,1952,1950,2005,1953,1949,
+ 131,1789,1800,599,1801,132,2002,2003,2004,255,
+ 65,2002,2003,2004,1277,1789,698,1951,1,1217,
+ 731,668,1951,1795,1952,1950,2005,1953,1949,1952,
+ 1950,2005,1953,1949,247,290,1789,248,1581,210,
+ 2002,2003,2004,1,1,1,249,1076,1794,250,
+ 30,200,1,1,1,2002,2003,2004,251,221,
+ 30,1428,1789,206,2002,2003,2004,1,2014,1397,
+ 283,509,252,2014,1397,1429,1789,1789,1789,488,
+ 1571,188,188,1789,188,1789,1789,733,1789,1818,
+ 1634,1692,2744,1789,184,183,557,205,1789,1111,
+ 1789,1789,1789,1789,1789,1789,1789,1789,1789,1789,
+ 1166,1789,1789,1429
};
};
public final static char termAction[] = TermAction.termAction;
@@ -587,27 +585,28 @@ public class C99SizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface Asb {
public final static char asb[] = {0,
- 231,1,104,41,104,104,104,104,104,104,
- 104,104,104,3,380,73,70,77,75,83,
- 81,85,84,87,86,10,104,380,309,309,
- 249,104,187,187,337,380,104,104,104,104,
- 104,104,104,104,104,104,104,104,104,104,
- 104,104,104,104,104,104,104,104,104,104,
- 104,104,104,104,104,104,187,187,45,52,
- 341,98,279,185,184,312,324,66,324,66,
- 66,324,66,324,394,141,70,70,75,75,
- 75,75,73,73,81,77,77,84,83,349,
- 86,85,68,50,337,341,121,45,417,102,
- 187,351,282,66,309,309,66,309,104,50,
- 341,332,417,45,101,98,187,335,394,186,
- 284,68,197,68,268,270,228,224,68,332,
- 417,104,104,45,102,279,344,343,341,284,
- 187,68,197,268,268,224,48,277,309,104,
- 227,224,50,417,332,45,45,187,351,282,
- 335,197,224,190,197,268,270,274,270,52,
- 45,309,104,50,332,284,197,192,270,224,
- 104,309,45,270,187,186,224,94,104,93,
- 117,341,224,224,310,192,104,117,270
+ 199,1,106,41,106,106,106,106,106,106,
+ 106,106,106,3,340,23,20,27,25,33,
+ 31,35,34,37,36,9,106,340,253,253,
+ 292,106,189,189,286,340,106,106,106,106,
+ 106,106,106,106,106,106,106,106,106,106,
+ 106,106,106,106,106,106,106,106,106,106,
+ 106,106,106,106,106,106,189,189,45,82,
+ 290,100,223,187,186,261,273,96,273,96,
+ 96,273,96,273,354,143,20,20,25,25,
+ 25,25,23,23,31,27,27,34,33,197,
+ 36,35,98,80,286,290,123,45,377,104,
+ 189,311,226,96,253,253,96,253,106,80,
+ 290,281,377,45,103,100,189,284,354,188,
+ 228,98,48,98,217,219,390,75,98,281,
+ 281,106,106,45,104,223,382,381,290,228,
+ 189,98,48,217,217,75,78,259,253,106,
+ 389,75,80,281,377,45,45,189,311,226,
+ 284,48,75,192,48,217,219,256,219,82,
+ 45,253,106,80,377,281,228,48,194,219,
+ 75,106,253,45,219,281,189,188,75,385,
+ 106,384,119,290,75,75,254,194,106,119,
+ 219
};
};
public final static char asb[] = Asb.asb;
@@ -615,48 +614,46 @@ public class C99SizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface Asr {
public final static byte asr[] = {0,
- 80,0,66,12,2,52,67,14,15,11,
- 4,9,10,53,54,47,48,55,56,57,
- 58,61,62,63,64,65,68,69,43,60,
- 70,71,72,73,74,76,75,77,78,79,
- 59,30,80,29,50,5,0,5,43,12,
- 52,14,15,11,4,9,10,22,23,16,
- 2,18,19,20,21,1,3,13,0,4,
+ 80,0,12,2,52,67,14,15,60,70,
+ 71,72,73,74,76,75,77,78,79,4,
53,54,9,10,48,47,55,56,57,58,
- 61,62,11,63,64,65,50,30,43,80,
- 68,69,59,66,5,29,0,6,7,8,
- 17,50,5,18,19,20,21,3,14,15,
- 11,9,10,22,23,16,4,2,1,0,
- 6,7,8,2,18,19,20,21,1,3,
- 14,15,11,4,9,10,22,23,16,0,
- 7,17,28,8,27,26,25,6,24,52,
- 67,14,15,11,9,10,53,54,47,48,
- 55,56,57,58,61,62,63,64,65,68,
- 69,60,70,71,72,73,74,75,76,77,
- 78,79,4,2,12,29,30,5,0,66,
- 5,4,1,2,59,0,24,31,6,32,
- 44,25,33,26,34,35,27,7,36,37,
- 17,45,28,46,38,39,8,40,41,42,
- 1,3,51,5,43,0,60,12,52,0,
- 16,18,19,20,21,1,3,2,14,15,
- 11,4,9,10,22,23,51,0,5,30,
- 16,18,19,20,21,1,3,2,14,15,
- 11,4,9,10,22,23,0,1,3,5,
- 43,29,0,5,29,43,60,0,4,2,
- 12,30,5,24,31,6,32,44,25,33,
- 26,34,35,27,7,36,37,17,45,28,
- 46,38,39,8,40,41,42,49,3,1,
- 0,39,31,36,34,35,33,32,37,38,
- 40,41,42,59,66,28,25,17,24,27,
- 26,6,7,8,29,1,5,30,2,12,
- 4,0,2,5,29,30,66,12,59,0,
+ 61,62,11,63,64,65,43,66,68,69,
+ 59,30,80,29,50,5,0,24,31,6,
+ 32,44,25,33,26,34,35,27,7,36,
+ 37,17,45,28,46,38,39,8,40,41,
+ 42,1,3,51,5,43,0,5,43,12,
+ 52,14,15,11,4,9,10,22,23,16,
+ 2,18,19,20,21,1,3,13,0,6,
+ 7,8,17,50,5,18,19,20,21,3,
+ 14,15,11,9,10,22,23,16,4,2,
+ 1,0,6,7,8,2,18,19,20,21,
+ 1,3,14,15,11,4,9,10,22,23,
+ 16,0,7,17,28,8,27,26,25,6,
+ 24,52,67,14,15,11,9,10,53,54,
+ 47,48,55,56,57,58,61,62,63,64,
+ 65,68,69,60,70,71,72,73,74,75,
+ 76,77,78,79,4,2,12,29,30,5,
+ 0,66,5,4,1,2,59,0,16,18,
+ 19,20,21,1,3,2,14,15,11,4,
+ 9,10,22,23,51,0,1,3,5,43,
+ 29,0,4,2,12,30,5,24,31,6,
+ 32,44,25,33,26,34,35,27,7,36,
+ 37,17,45,28,46,38,39,8,40,41,
+ 42,49,3,1,0,5,29,43,60,0,
+ 39,31,36,34,35,33,32,37,38,40,
+ 41,42,59,66,28,25,17,24,27,26,
+ 6,7,8,29,1,5,30,2,12,4,
+ 0,5,30,16,18,19,20,21,1,3,
+ 2,14,15,11,4,9,10,22,23,0,
4,24,31,6,32,44,25,33,26,34,
35,27,7,36,37,17,45,28,46,38,
39,8,40,41,42,1,3,49,0,16,
18,19,20,21,2,14,15,11,4,9,
10,22,23,1,3,44,45,46,39,31,
36,34,35,33,32,37,38,40,41,42,
- 28,25,17,24,27,26,6,7,8,0
+ 28,25,17,24,27,26,6,7,8,0,
+ 2,30,12,59,66,5,29,0,60,12,
+ 52,0
};
};
public final static byte asr[] = Asr.asr;
@@ -664,27 +661,28 @@ public class C99SizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface Nasb {
public final static byte nasb[] = {0,
- 60,38,20,38,20,20,20,20,20,20,
- 20,20,20,38,98,38,38,38,38,38,
- 38,38,38,38,38,38,20,98,51,51,
- 63,99,88,88,83,1,20,20,20,20,
+ 61,38,20,38,20,20,20,20,20,20,
+ 20,20,20,38,96,38,38,38,38,38,
+ 38,38,38,38,38,38,20,96,15,15,
+ 85,97,71,71,74,1,20,20,20,20,
20,20,20,20,20,20,20,20,20,20,
- 20,20,99,20,20,20,20,20,20,20,
- 20,20,20,20,20,20,88,88,26,20,
- 90,24,82,22,22,71,72,9,72,49,
- 49,72,48,72,66,38,38,38,38,38,
+ 20,20,97,20,20,20,20,20,20,20,
+ 20,20,20,20,20,20,71,71,24,20,
+ 80,22,73,11,11,44,45,50,45,89,
+ 89,45,88,45,39,38,38,38,38,38,
38,38,38,38,38,38,38,38,38,38,
- 38,38,38,58,106,38,28,26,118,25,
- 88,93,87,7,7,7,7,7,20,18,
- 38,58,118,26,25,11,88,54,31,38,
- 95,15,58,38,58,41,13,58,38,58,
- 118,20,20,26,25,53,22,22,90,95,
- 88,38,102,58,7,39,17,38,7,20,
- 46,39,58,118,11,26,26,88,93,87,
- 74,58,39,43,114,7,41,38,38,19,
- 26,7,20,18,11,110,102,56,41,39,
- 20,7,26,41,88,88,39,44,20,38,
- 56,90,39,39,38,56,20,76,80
+ 38,38,38,59,108,38,28,24,83,23,
+ 71,91,70,7,7,7,7,7,20,18,
+ 38,68,83,24,23,78,71,55,31,38,
+ 93,26,59,38,59,52,13,59,38,68,
+ 59,20,20,24,23,54,11,11,80,93,
+ 71,38,112,59,7,9,17,38,7,20,
+ 100,9,59,59,83,24,24,71,91,70,
+ 64,59,9,47,116,7,52,38,38,19,
+ 24,7,20,18,83,78,102,112,57,52,
+ 9,20,7,24,52,78,71,71,9,48,
+ 20,38,57,80,9,9,38,57,20,66,
+ 106
};
};
public final static byte nasb[] = Nasb.nasb;
@@ -692,18 +690,18 @@ public class C99SizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface Nasr {
public final static char nasr[] = {0,
- 79,77,76,64,75,74,1,0,89,0,
- 21,0,97,0,90,0,68,11,59,5,
- 0,26,0,11,5,24,0,5,11,0,
- 79,78,77,76,64,75,74,0,32,0,
- 51,0,11,69,0,99,0,92,65,0,
- 70,0,23,43,42,36,34,11,0,11,
- 87,0,11,88,0,64,60,61,62,63,
- 52,27,0,43,42,36,34,31,0,95,
- 0,23,42,43,11,0,11,23,0,31,
- 49,0,31,49,11,25,0,48,11,45,
- 0,81,11,48,0,43,42,31,0,93,
- 11,25,0,11,48,66,0,56,0
+ 79,77,76,64,75,74,1,0,32,0,
+ 26,0,97,0,70,0,68,11,59,5,
+ 0,11,5,24,0,90,0,5,11,0,
+ 79,78,77,76,64,75,74,0,64,60,
+ 61,62,63,52,28,0,11,69,0,89,
+ 0,51,0,23,43,42,36,34,11,0,
+ 11,87,0,43,42,36,34,27,0,11,
+ 23,0,23,42,43,11,0,21,0,27,
+ 49,0,56,0,11,88,0,92,65,0,
+ 27,49,11,25,0,48,11,45,0,99,
+ 0,93,11,25,0,95,0,43,42,27,
+ 0,81,11,48,0,11,48,66,0
};
};
public final static char nasr[] = Nasr.nasr;
@@ -729,18 +727,18 @@ public class C99SizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface NonterminalIndex {
public final static char nonterminalIndex[] = {0,
100,0,0,0,102,106,107,108,109,110,
- 0,111,112,113,114,115,116,117,118,119,
- 129,0,97,96,122,150,128,0,0,0,
- 0,98,146,148,0,149,0,0,0,0,
- 159,160,161,0,101,121,137,141,147,156,
- 0,131,136,0,151,154,155,158,0,132,
- 133,134,135,138,0,140,145,162,99,103,
- 104,105,120,123,124,125,126,127,130,0,
- 139,143,0,0,144,153,95,0,0,0,
- 142,0,152,157,0,163,164,0,165,0,
+ 0,111,112,113,114,115,116,117,0,118,
+ 128,0,97,96,121,149,0,127,0,0,
+ 0,98,145,147,0,148,0,0,0,0,
+ 158,159,160,0,101,120,136,140,146,155,
+ 0,130,135,0,150,153,154,157,0,131,
+ 132,133,134,137,0,139,144,161,99,103,
+ 104,105,119,122,123,124,125,126,129,0,
+ 138,142,0,0,143,152,95,0,0,0,
+ 141,0,151,156,0,162,163,0,164,0,
0,0,0,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 char nonterminalIndex[] = NonterminalIndex.nonterminalIndex;
@@ -770,9 +768,9 @@ public class C99SizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface ScopeLhs {
public final static char scopeLhs[] = {
- 62,60,5,62,26,26,60,53,106,44,
+ 62,60,5,62,26,26,60,53,107,44,
26,39,44,26,66,5,5,19,99,98,
- 42,26,36,3,68,66,7,107,5,66,
+ 42,26,36,3,68,66,7,108,5,66,
39,37,39
};
};
@@ -803,20 +801,20 @@ public class C99SizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface ScopeRhs {
public final static char scopeRhs[] = {0,
- 139,12,0,96,0,189,104,0,31,136,
+ 139,12,0,96,0,189,104,0,31,135,
0,144,165,104,13,152,0,98,0,0,
148,104,2,135,0,97,0,148,104,2,
0,151,2,0,113,17,179,104,12,0,
113,179,104,17,12,0,113,17,12,0,
113,179,104,12,0,113,12,0,129,0,
- 2,0,152,97,0,2,97,0,148,104,
- 2,129,0,2,0,151,97,0,140,2,
+ 2,0,151,97,0,2,97,0,148,104,
+ 2,129,0,2,0,150,97,0,140,2,
0,144,177,104,13,94,185,44,0,98,
0,144,177,104,13,185,44,0,141,0,
- 99,0,184,104,141,0,104,141,0,142,
+ 99,0,184,104,141,0,104,141,0,141,
99,0,173,104,13,183,94,182,157,0,
- 173,104,13,182,157,0,195,85,0,77,
- 2,101,97,99,0,195,116,138,2,89,
+ 173,104,13,182,157,0,196,85,0,77,
+ 2,101,97,99,0,196,116,138,2,89,
0,53,0,0,138,69,111,0,29,118,
0,164,2,0,97,107,0,144,165,104,
13,116,164,2,0,97,3,0,105,0,
@@ -829,15 +827,15 @@ public class C99SizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface ScopeState {
public final static char scopeState[] = {0,
- 1085,0,1680,1689,1658,0,396,0,1464,1339,
- 1433,1265,1249,1186,1157,0,636,1210,313,0,
- 1572,1269,504,503,1249,1186,1157,1666,1450,1536,
- 0,1379,1340,1305,477,378,1581,459,1146,640,
- 574,1326,1313,1169,1423,1252,1409,1398,1387,1357,
- 1563,1548,1537,1434,701,1528,1520,1512,1091,1036,
- 404,1099,1064,1044,1009,989,968,947,615,1119,
- 592,507,926,905,884,863,842,821,800,779,
- 758,737,716,313,667,553,532,417,438,344,
+ 1614,0,1685,1686,1651,0,367,0,1477,1316,
+ 1397,1232,1256,1216,1187,0,661,666,314,0,
+ 1585,1482,639,339,1256,1216,1187,1637,1427,1483,
+ 0,1517,1356,534,1454,454,1558,436,346,698,
+ 599,1301,1199,668,1339,1188,1386,1375,1364,1328,
+ 1550,1542,1528,1418,1409,1486,1400,1158,1103,548,
+ 379,1166,1131,1111,1076,1056,1035,1014,640,993,
+ 617,509,972,951,930,909,888,867,846,825,
+ 804,783,762,314,741,578,557,415,488,394,
0
};
};
@@ -856,17 +854,18 @@ public class C99SizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
104,12,2,136,135,167,168,157,169,46,
45,170,44,171,172,94,101,101,103,103,
103,103,102,102,106,105,105,108,107,138,
- 110,109,116,13,142,124,17,113,104,4,
+ 110,109,116,13,142,120,17,113,104,4,
151,104,2,182,158,158,185,158,59,104,
- 124,4,104,113,179,149,148,118,104,150,
+ 120,4,104,113,179,149,148,118,104,150,
104,94,13,94,13,165,104,13,152,4,
- 104,179,17,113,4,2,127,129,104,29,
+ 120,179,17,113,4,2,127,129,104,29,
148,183,104,13,104,144,29,189,52,12,
- 190,104,13,104,149,113,113,140,104,2,
+ 190,104,13,120,104,113,113,140,104,2,
142,13,173,141,174,104,177,94,178,60,
- 139,52,12,104,149,104,104,104,177,144,
- 60,29,139,165,148,186,173,184,59,140,
- 2,104,144,144,29,29,59,142,125
+ 139,52,12,104,104,149,104,104,104,177,
+ 144,60,29,139,165,149,148,186,173,184,
+ 59,140,2,104,144,144,29,29,59,142,
+ 125
};
};
public final static char inSymb[] = InSymb.inSymb;
@@ -987,12 +986,11 @@ public class C99SizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
"shift_expression",
"relational_expression",
"equality_expression",
- "AND_expression",
- "exclusive_OR_expression",
- "inclusive_OR_expression",
- "logical_AND_expression",
- "logical_OR_expression",
- "conditional_expression",
+ "and_expression",
+ "exclusive_or_expression",
+ "inclusive_or_expression",
+ "logical_and_expression",
+ "logical_or_expression",
"assignment_expression",
"expression_list_actual",
"constant_expression",
@@ -1062,20 +1060,20 @@ public class C99SizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public final int getMaxNameLength() { return MAX_NAME_LENGTH; }
public final static int
- NUM_STATES = 209,
+ NUM_STATES = 211,
NT_OFFSET = 93,
- LA_STATE_OFFSET = 2108,
+ LA_STATE_OFFSET = 2102,
MAX_LA = 2,
- NUM_RULES = 312,
- NUM_NONTERMINALS = 123,
- NUM_SYMBOLS = 216,
+ NUM_RULES = 313,
+ NUM_NONTERMINALS = 124,
+ NUM_SYMBOLS = 217,
SEGMENT_SIZE = 8192,
- START_STATE = 1202,
+ START_STATE = 1235,
IDENTIFIER_SYMBOL = 0,
EOFT_SYMBOL = 80,
EOLT_SYMBOL = 80,
- ACCEPT_ACTION = 1786,
- ERROR_ACTION = 1796;
+ ACCEPT_ACTION = 1779,
+ ERROR_ACTION = 1789;
public final static boolean BACKTRACK = true;
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 57e3d633329..7ebe9ef388a 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
@@ -17,20 +17,29 @@ import lpg.lpgjavaruntime.*;
import java.util.*;
import org.eclipse.cdt.core.dom.ast.*;
+import org.eclipse.cdt.core.dom.lrparser.CPreprocessorAdapter;
+import org.eclipse.cdt.core.dom.lrparser.IDOMTokenMap;
import org.eclipse.cdt.core.dom.lrparser.IParser;
-import org.eclipse.cdt.core.dom.lrparser.IParserActionTokenProvider;
+import org.eclipse.cdt.core.dom.lrparser.ITokenCollector;
import org.eclipse.cdt.core.dom.lrparser.lpgextensions.FixedBacktrackingParser;
import org.eclipse.cdt.core.dom.lrparser.action.ScopedStack;
+import org.eclipse.cdt.core.parser.IScanner;
+import org.eclipse.cdt.core.dom.parser.IBuiltinBindingsProvider;
+import org.eclipse.cdt.core.index.IIndex;
+import org.eclipse.cdt.core.dom.lrparser.action.ITokenStream;
import org.eclipse.cdt.core.dom.lrparser.action.ITokenMap;
import org.eclipse.cdt.core.dom.lrparser.action.TokenMap;
+import org.eclipse.cdt.core.dom.lrparser.ISecondaryParser;
import org.eclipse.cdt.core.dom.ast.cpp.*;
import org.eclipse.cdt.internal.core.dom.parser.cpp.CPPNodeFactory;
import org.eclipse.cdt.core.dom.lrparser.action.cpp.CPPBuildASTParserAction;
import org.eclipse.cdt.core.dom.lrparser.action.cpp.CPPSecondaryParserFactory;
-public class CPPExpressionParser extends PrsStream implements RuleAction , IParserActionTokenProvider, IParser< IASTExpression >
+public class CPPExpressionParser extends PrsStream implements RuleAction, ITokenStream,
+ ITokenCollector, IParser< IASTExpression >
+ , ISecondaryParser< IASTExpression >
{
private static ParseTable prs = new CPPExpressionParserprs();
private FixedBacktrackingParser btParser;
@@ -168,7 +177,11 @@ public class CPPExpressionParser extends PrsStream implements RuleAction , IPars
private CPPBuildASTParserAction action;
private IASTCompletionNode compNode;
-public CPPExpressionParser() { // constructor
+
+public CPPExpressionParser(IScanner scanner, IDOMTokenMap tokenMap, IBuiltinBindingsProvider builtinBindingsProvider, IIndex index, Set<IParser.Options> options) {
+ initActions(options);
+ action.initializeTranslationUnit(scanner, builtinBindingsProvider, index);
+ CPreprocessorAdapter.runCPreprocessor(scanner, this, tokenMap);
}
private void initActions(Set<IParser.Options> options) {
@@ -187,10 +200,9 @@ public void addToken(IToken token) {
}
-public IASTExpression parse(Set<IParser.Options> options) {
+public IASTExpression parse() {
// this has to be done, or... kaboom!
setStreamLength(getSize());
- initActions(options);
final int errorRepairCount = -1; // -1 means full error handling
parser(null, errorRepairCount); // do the actual parse
@@ -233,12 +245,12 @@ public void setTokens(List<IToken> tokens) {
addToken(new Token(null, 0, 0, CPPExpressionParsersym.TK_EOF_TOKEN));
}
-public CPPExpressionParser(IParserActionTokenProvider parser) { // constructor
+public CPPExpressionParser(ITokenStream parser, Set<IParser.Options> options) { // constructor for creating secondary parser
+ initActions(options);
tokenMap = new TokenMap(CPPExpressionParsersym.orderedTerminalSymbols, parser.getOrderedTerminalSymbols());
}
-
public void ruleAction(int ruleNumber)
{
switch (ruleNumber)
@@ -1421,19 +1433,19 @@ public CPPExpressionParser(IParserActionTokenProvider parser) { // constructor
}
//
- // Rule 328: ptr_operator ::= pointer_hook * <openscope-ast> cv_qualifier_seq_opt
+ // Rule 328: ptr_operator ::= pointer_hook * pointer_hook <openscope-ast> cv_qualifier_seq_opt
//
case 328: { action. consumePointer(); break;
}
//
- // Rule 329: ptr_operator ::= pointer_hook &
+ // Rule 329: ptr_operator ::= pointer_hook & pointer_hook
//
case 329: { action. consumeReferenceOperator(); break;
}
//
- // Rule 330: ptr_operator ::= dcolon_opt nested_name_specifier pointer_hook * <openscope-ast> cv_qualifier_seq_opt
+ // Rule 330: ptr_operator ::= dcolon_opt nested_name_specifier pointer_hook * pointer_hook <openscope-ast> cv_qualifier_seq_opt
//
case 330: { action. consumePointerToMember(); 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 c18c485cd7a..1830b1f5952 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
@@ -69,7 +69,7 @@ public class CPPExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, CP
1,3,1,1,1,6,5,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,4,2,6,
+ 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,
@@ -92,443 +92,449 @@ public class CPPExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, CP
4,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,-477,0,
- 0,0,0,0,0,-263,0,0,-4,0,
- 0,0,0,0,-398,0,0,0,0,-71,
+ 0,0,0,0,0,0,0,0,-480,0,
+ 0,0,0,0,0,-264,0,0,-4,0,
+ 0,0,0,0,-401,0,0,0,0,-71,
0,0,0,-5,0,0,0,0,0,0,
- 0,0,-459,0,-88,0,0,0,0,0,
+ 0,0,-462,0,-88,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,-6,0,0,0,
0,0,0,0,0,0,-58,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,-7,0,0,0,0,0,-239,0,
- 0,-49,-8,-272,0,0,0,-72,0,0,
+ 0,0,-7,0,0,0,0,0,-240,0,
+ 0,-49,-293,-273,0,0,0,-72,0,0,
0,0,0,0,0,0,0,0,0,0,
- -417,0,0,0,0,0,0,0,0,-115,
+ -8,0,0,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,0,0,0,0,-127,0,0,
- 0,0,0,-113,0,-178,0,0,0,-387,
+ 0,0,0,-113,0,-178,0,0,0,-53,
-128,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,-258,0,-9,
- 0,0,0,0,0,0,0,0,-356,0,
+ 0,0,0,0,0,0,0,0,0,-137,
+ 0,0,0,0,0,0,0,0,-358,0,
0,-142,0,0,0,-51,0,0,0,0,
- 0,0,-533,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-183,
- 0,-11,-54,0,0,-131,0,0,0,0,
+ 0,0,-536,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-221,0,0,0,-183,
+ 0,-9,0,0,0,-131,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,-61,
- 0,0,0,0,0,0,0,0,-402,0,
- 0,-206,0,0,0,0,0,0,-64,0,
+ 0,0,0,0,0,-11,0,0,0,0,
+ 0,-225,0,0,0,-120,0,0,-64,0,
0,-220,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-12,0,-13,0,0,0,-179,
- 0,0,0,0,-353,-53,0,-225,-15,0,
- -224,0,0,0,0,0,0,0,-150,0,
- 0,0,-28,0,0,0,0,0,0,0,
- 0,-59,0,0,0,0,0,-463,0,0,
- 0,-508,0,0,0,-447,0,0,0,0,
+ 0,0,0,-259,0,0,0,0,0,-179,
+ 0,0,0,0,-355,-54,0,-226,-10,0,
+ -233,0,0,0,0,-65,0,0,-150,0,
+ 0,0,-12,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-138,0,
+ 0,-511,0,0,0,-13,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,-15,
+ 0,0,0,0,-535,0,0,0,-129,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-10,0,0,0,-29,
- 0,0,0,0,-532,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,-346,0,0,0,-189,0,-332,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-117,0,0,0,0,0,0,
- 0,0,-30,-390,0,0,0,0,0,-331,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-188,0,
+ 0,0,0,0,0,0,0,0,-409,0,
+ 0,0,0,0,-442,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,-31,0,0,0,0,0,0,-406,0,
- 0,0,0,0,-439,0,0,0,-256,0,
+ 0,0,0,0,0,0,0,0,-222,0,
+ 0,0,0,0,0,0,0,-234,0,0,
+ 0,0,-349,-3,0,0,0,0,0,0,
0,0,0,0,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,0,0,-233,0,0,
- 0,0,-347,-3,0,0,0,0,0,0,
+ 0,0,-289,0,0,-122,0,0,0,0,
+ 0,-271,0,0,0,0,-106,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,-330,0,
+ -420,0,0,0,-277,0,0,0,-29,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-288,0,0,-122,0,-33,0,0,
- 0,-232,0,0,0,0,-106,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,-188,0,0,-242,0,
- 0,0,0,0,-276,0,0,0,-35,0,
+ 0,0,0,-30,0,0,0,0,-312,0,
+ 0,0,-124,-31,-373,0,0,-152,0,0,
+ 0,-32,0,0,0,0,0,0,0,0,
+ -241,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,-33,0,0,0,
+ 0,0,0,0,0,0,0,0,-130,0,
+ 0,0,-274,0,0,0,0,-223,0,-321,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-65,0,0,0,0,-311,0,
- 0,0,-270,0,0,0,0,-152,0,0,
- 0,-36,0,0,0,0,0,0,0,0,
- -240,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,-37,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-273,0,0,0,0,0,0,-320,
+ 0,0,0,0,0,0,0,-34,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,-35,0,0,0,0,0,
+ 0,0,0,0,0,0,-50,0,0,0,
+ 0,0,-36,0,0,0,-41,0,0,0,
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,-390,0,
+ -57,0,0,0,0,-38,0,0,0,-94,
+ 0,0,0,-40,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-38,0,0,
- 0,0,-39,0,0,0,-40,0,0,0,
+ 0,-55,0,0,0,0,0,0,-56,0,
+ 0,-416,0,-186,0,0,0,0,-66,-59,
+ 0,0,-95,0,0,0,-67,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-55,0,0,0,0,0,
- 0,-221,0,0,-56,0,-50,0,0,0,
- 0,0,-66,0,0,-342,-41,0,0,0,
- -67,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-69,0,
- 0,0,0,0,0,-70,0,0,-120,0,
- -57,0,0,0,0,0,0,0,0,-94,
- 0,0,0,-109,0,0,0,0,0,0,
+ 0,0,0,0,-69,0,0,0,0,0,
+ 0,0,0,0,-496,0,-190,0,0,0,
+ -523,0,-70,0,0,-96,0,0,0,-109,
0,0,0,0,0,0,0,0,0,0,
- 0,-110,0,0,0,0,0,0,0,0,
- 0,-413,0,-186,0,0,0,0,-111,-60,
- 0,0,-95,0,0,0,-112,0,0,0,
+ 0,0,0,0,0,0,0,-110,0,0,
+ 0,0,0,0,0,0,0,-534,0,-298,
+ 0,0,0,0,-466,0,0,0,-97,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,-132,0,0,0,0,0,
- 0,0,0,0,-493,0,-190,0,0,0,
- -370,0,-139,0,0,-96,0,0,0,-140,
+ -112,0,0,0,0,0,0,0,0,0,
+ -540,0,-305,0,0,0,0,0,0,0,
+ 0,-98,0,0,0,-132,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-141,0,0,
- 0,0,0,0,0,0,0,-531,0,-200,
- 0,0,0,0,0,-155,0,0,-97,0,
- 0,0,-156,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -157,0,0,0,0,0,0,0,0,0,
- -537,0,-304,0,0,0,0,0,-158,0,
- 0,-98,0,0,0,-159,0,0,0,0,
+ 0,0,0,-139,0,-387,0,0,0,0,
+ 0,-60,0,0,-99,0,0,0,-140,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-160,0,0,0,0,0,0,
- 0,0,0,-161,0,-384,0,0,0,0,
- 0,-107,0,0,-99,0,0,0,-162,0,
+ 0,0,0,0,0,0,-141,0,0,0,
+ 0,0,0,0,0,0,-155,0,-200,0,
+ 0,0,0,-156,-107,0,0,-100,0,0,
+ 0,-157,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-158,
+ 0,-205,0,0,0,0,-159,-108,0,0,
+ -101,0,0,0,-160,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-163,0,-205,0,
- 0,0,0,-164,-108,0,0,-100,0,0,
- 0,-165,0,0,0,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,-222,0,0,0,0,-166,-114,0,0,
- -101,0,0,0,-167,0,0,0,0,0,
+ 0,0,-144,0,-231,0,0,0,0,-366,
+ -114,0,0,-102,0,0,0,-161,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-388,0,0,0,0,
+ 0,0,0,0,0,-154,0,0,0,0,
+ 0,-450,-403,-162,0,0,-103,0,0,0,
+ -344,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-163,0,
+ 0,0,0,0,0,0,0,0,-164,0,
+ 0,0,0,0,-402,0,0,0,0,-104,
+ 0,0,0,-334,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-168,0,-230,0,0,0,0,-344,
- -169,0,0,-102,0,0,0,-170,0,0,
+ 0,-165,0,0,0,0,0,0,0,0,
+ 0,-196,0,-397,0,0,0,0,0,-149,
+ 0,0,-135,0,0,0,-378,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-385,0,0,0,0,
- 0,0,0,0,0,-130,0,0,0,0,
- 0,-507,-363,-171,0,0,-103,0,0,0,
- -172,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-173,0,
- 0,0,0,0,0,-360,0,0,-144,0,
- 0,0,0,0,-399,0,0,0,0,-104,
- 0,0,0,-292,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-174,0,0,0,0,0,0,0,0,
- 0,-175,0,-394,0,0,0,0,0,-137,
- 0,0,-135,0,0,0,-375,0,0,0,
+ 0,0,0,0,-166,0,-333,0,0,0,
+ -213,0,0,0,-230,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,0,0,0,0,0,0,0,
- 0,0,0,0,-176,0,-177,0,0,0,
- -213,0,0,0,-180,0,0,0,0,0,
+ -168,0,0,-74,0,0,-169,0,0,0,
+ -529,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-181,
- 0,0,0,0,0,0,0,0,0,-189,
- 0,0,0,-74,-154,0,0,0,0,0,
- -526,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-411,0,0,0,-202,0,
+ -510,0,0,-347,0,0,0,-170,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-408,0,0,0,-138,0,
- -149,0,0,-345,0,0,0,-196,0,0,
+ 0,0,0,0,0,-212,0,0,0,0,
+ 0,0,-171,0,0,0,0,-364,0,0,
+ 0,-357,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-124,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-355,0,0,0,0,0,0,0,0,
+ -412,0,0,-172,0,0,0,0,0,-16,
+ 0,0,0,-280,-316,0,0,0,0,0,
+ 0,-382,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,
- -182,0,0,0,0,-332,0,0,0,-16,
- 0,0,0,-229,-315,0,0,0,0,0,
- 0,-379,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-185,0,0,0,0,0,0,
- -193,0,0,0,0,-400,0,0,0,-380,
+ 0,0,0,-302,0,-173,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,0,0,
- 0,-194,0,0,0,0,0,-147,0,0,
- 0,-279,0,0,0,0,0,0,0,-450,
+ 0,0,0,0,0,0,0,-147,0,0,
+ 0,-281,-356,0,0,0,0,0,-174,-453,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-381,0,0,0,0,0,0,0,0,
- 0,-416,0,-333,0,0,0,-93,0,0,
+ 0,-300,0,0,0,0,0,0,-423,0,
+ 0,-419,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,-197,
0,0,0,0,0,0,0,0,0,0,
- 0,-335,0,0,0,0,-266,0,0,0,
- 0,0,-410,0,0,0,0,-91,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,-337,0,0,0,-175,-227,0,0,0,
+ 0,0,-413,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,-153,
0,0,0,0,0,0,0,0,0,-92,
- 0,0,0,-208,0,0,0,0,0,0,
+ 0,0,0,-176,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-177,0,
+ -394,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-89,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,0,
+ 0,-146,-180,-148,-313,0,-136,-362,-181,0,
+ 0,-433,0,0,0,-267,-182,-324,0,0,
+ 0,0,-185,0,0,-377,0,0,0,-193,
+ 0,0,0,0,0,0,0,-194,0,-476,
+ -211,0,0,0,0,0,-90,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-187,0,0,0,0,
+ -197,0,0,0,0,0,-237,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-446,0,0,0,0,-208,0,
+ -209,0,0,0,0,0,-218,0,0,0,
+ -247,0,0,0,0,-283,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-444,
+ 0,0,-219,-118,0,0,0,0,0,0,
+ 0,0,-228,0,-195,0,0,0,-236,0,
+ -238,0,0,-246,-307,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-255,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ -248,0,0,0,-260,-384,-245,-398,-393,-262,
+ 0,0,0,0,-263,0,-467,0,-143,0,
+ 0,0,0,0,-275,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-239,-380,0,0,0,0,0,
+ 0,-360,0,-278,0,0,0,0,0,0,
+ 0,0,0,-279,0,0,-287,0,0,0,
+ 0,0,0,0,0,0,-198,-82,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-207,
+ 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,-290,0,0,0,
+ 0,0,-199,-294,0,-295,0,0,-303,0,
+ 0,0,0,0,0,-304,-309,-256,0,0,
+ 0,0,-317,-318,0,-329,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,-235,0,
+ 0,0,0,-431,0,0,0,0,-314,0,
+ 0,0,0,0,-432,0,0,-269,-348,0,
+ -242,0,-285,-350,-473,0,0,0,0,0,
+ 0,-119,0,-315,0,-368,-435,0,0,0,
+ -371,0,0,0,0,-151,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-451,0,
+ -249,-441,0,-250,-386,0,-512,0,0,0,
+ 0,0,0,0,0,0,0,0,-486,0,
+ 0,-405,0,-251,-121,0,-395,0,0,0,
+ 0,0,0,0,-396,0,0,0,0,-376,
+ 0,-268,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-399,0,0,0,
+ 0,0,-400,0,0,0,0,0,0,0,
+ 0,0,0,-528,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-252,0,-52,
+ 0,0,0,-353,0,0,-497,-286,-327,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-455,-488,-406,-408,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,-1,0,0,0,0,0,0,0,-526,
+ -379,-229,0,0,0,0,-414,0,0,0,
+ 0,0,-421,0,0,0,0,0,0,0,
+ 0,0,0,0,-428,-429,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,-296,0,-452,0,0,-270,0,-454,-456,
+ 0,0,0,0,0,0,0,-354,0,-457,
+ -477,0,0,0,0,-458,0,0,0,0,
+ 0,-459,0,0,-297,-19,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,-86,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -391,0,0,0,0,0,0,0,0,0,
- 0,0,0,-89,0,0,0,-255,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,-218,-409,-377,0,0,-136,0,0,-219,
- 0,-509,0,0,0,-202,-118,-420,0,0,
- 0,0,0,0,0,-374,0,0,0,0,
- -267,0,0,0,0,0,0,-227,0,0,
- -211,0,0,0,-314,0,-90,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-280,0,
- 0,0,0,0,0,-212,0,0,0,-235,
- 0,0,-119,0,0,0,-236,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-143,0,
- 0,0,-146,-429,0,0,0,0,0,0,
- -151,0,0,0,-198,-282,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-237,0,
- 0,0,0,-245,0,0,0,0,-254,-207,
- -259,0,0,0,0,0,0,-261,-238,0,
- 0,0,0,0,0,0,-312,0,-262,0,
- 0,0,0,-277,0,0,0,0,0,0,
- 0,0,-121,-246,0,0,0,-354,0,0,
- 0,0,-306,0,0,0,0,0,0,0,
- 0,0,0,0,0,-260,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,-278,0,0,0,0,-247,
- 0,0,0,-438,0,0,0,0,-289,0,
- 0,0,0,0,0,0,0,-274,0,0,
- 0,0,-299,0,0,0,-329,-293,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,
- -520,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,-77,0,0,0,-294,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-302,0,0,0,0,0,
- -440,0,0,0,0,0,0,0,0,0,
- 0,0,0,-187,0,0,0,-85,0,0,
+ 0,0,0,0,-123,0,0,0,-87,0,
+ 0,0,-464,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-234,
- 0,0,0,0,-428,-123,0,0,0,0,
- -199,-441,-303,0,0,0,0,0,-268,0,
- 0,0,0,0,0,-323,0,-430,0,0,
- 0,0,0,0,-241,-308,0,-14,-148,-248,
- -316,0,0,0,0,-228,0,0,0,0,
- 0,0,0,0,0,0,0,0,-448,0,
- 0,0,0,-249,0,-269,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-250,0,0,0,
- 0,-362,0,0,0,0,0,0,0,-317,
+ -460,0,0,0,0,-461,-479,0,0,-425,
+ 0,-465,-14,0,0,0,0,0,0,-272,
+ 0,-524,0,0,-192,0,0,0,-125,0,
+ -481,0,-482,-276,0,-325,0,0,0,0,
+ 0,-484,-232,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-483,0,0,0,0,
+ -478,0,0,0,-527,-363,0,0,0,0,
+ 0,0,0,0,0,-299,0,0,-489,-323,
+ 0,0,0,-493,0,0,0,-244,0,-500,
+ 0,-508,0,0,0,0,-517,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-328,-346,0,0,0,0,0,-348,
- -432,0,0,0,0,0,0,0,0,0,
- 0,0,0,-525,0,0,0,0,0,0,
- 0,0,0,0,0,0,-452,-195,-52,0,
- 0,0,0,0,0,-301,-365,-326,0,0,
+ -485,0,-525,0,0,0,0,0,-530,-391,
0,0,0,0,0,0,0,0,0,0,
- -18,0,0,0,0,0,0,-364,-466,0,
- 0,0,0,0,0,-467,0,0,0,-395,
- -473,-251,0,0,0,0,0,0,-464,-523,
- -368,0,-43,-44,0,0,0,0,0,0,
+ -48,-288,0,-541,0,0,0,0,-422,0,
+ -301,0,0,-306,0,0,0,0,0,0,
+ 0,0,-282,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-502,0,-310,-311,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-43,0,0,0,0,
+ -491,-468,-117,-471,0,0,0,0,-322,0,
0,0,0,0,0,0,0,0,0,0,
+ -145,0,0,0,0,0,0,0,0,0,
+ -516,0,-105,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-271,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-286,
- 0,0,0,-383,-392,0,0,0,0,0,
- -313,0,0,0,-19,0,0,0,0,0,
+ 0,0,0,-469,0,0,0,0,0,0,
+ 0,0,-134,0,0,0,0,0,0,0,
+ 0,0,-342,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-518,0,0,0,0,
+ -328,-335,0,-339,0,0,0,0,0,0,
+ 0,0,0,0,0,-501,0,0,-341,0,
+ 0,0,0,-343,0,0,0,0,-359,0,
+ 0,0,0,0,0,0,-392,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,0,0,0,
- 0,-86,0,0,0,-393,0,0,0,0,
+ -520,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-17,-415,-463,0,0,0,0,
+ 0,-470,0,0,0,0,0,-522,-447,0,
+ 0,0,0,-418,-427,0,0,0,0,0,
+ 0,0,0,0,0,-319,0,-430,0,0,
+ 0,0,0,0,0,0,0,-284,0,0,
+ 0,0,0,0,0,0,0,0,0,-407,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-125,0,0,0,-87,0,0,
- 0,-285,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-457,
- 0,0,0,0,-284,-422,-275,-358,0,0,
- 0,0,-470,0,-396,-1,-298,-397,-318,0,
- -461,0,-192,0,0,0,0,0,0,0,
- -322,0,0,0,-295,0,-403,0,0,0,
- -231,0,0,0,0,0,0,0,0,0,
- 0,0,0,-480,0,0,0,0,0,-287,
+ 0,0,-537,0,-472,-474,0,-475,0,0,
+ -494,0,0,0,0,0,0,0,0,0,
+ 0,0,-492,0,0,0,0,0,0,-352,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-134,-405,0,0,
- 0,0,0,0,0,-297,-45,-411,-418,0,
- 0,0,0,0,-462,0,0,0,0,0,
- 0,0,0,0,0,0,0,-482,0,0,
- -296,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-44,0,0,
+ 0,0,0,0,0,0,0,-542,0,-214,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-425,0,-494,0,0,0,-48,
- -46,0,0,0,0,0,0,0,-281,0,
- 0,0,-426,0,0,0,0,0,0,0,
- 0,-499,0,0,-243,0,0,-105,0,0,
- -300,0,-324,0,0,0,0,0,0,0,
- 0,0,0,0,-524,0,-244,-449,-283,0,
- 0,0,0,0,-145,0,0,-451,0,0,
- 0,0,0,-453,0,0,0,0,0,0,
- 0,0,0,0,0,-513,0,0,0,0,
- -454,-325,0,-455,0,0,0,0,-361,0,
- 0,0,0,0,0,0,0,0,-521,0,
- 0,-305,0,0,0,0,0,-456,-204,-458,
- -388,0,0,0,0,0,-340,0,0,0,
- 0,0,0,0,0,0,0,0,0,-515,
- 0,0,-73,0,-476,0,0,-478,0,0,
- -479,0,0,0,0,0,0,0,0,0,
- 0,0,-481,0,-369,0,0,-486,0,0,
- 0,0,-490,0,-419,0,0,0,0,0,
- -497,0,0,0,-334,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-349,
- 0,0,0,-465,0,0,0,0,0,0,
- 0,0,0,0,-517,0,0,0,0,0,
- 0,0,0,0,0,0,0,-359,-47,0,
- 0,0,-351,0,-309,0,-505,-514,0,0,
- 0,-485,0,0,-310,0,0,-519,0,-321,
- -350,0,-522,0,-527,0,0,-538,-184,0,
- 0,0,0,0,-443,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,-261,0,0,-531,0,0,0,0,
+ -498,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-499,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-252,-534,0,0,0,
- 0,0,0,0,-352,0,0,0,0,0,
- 0,0,-474,0,0,0,0,0,0,-376,
- -209,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-401,-386,0,
+ 0,0,-77,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-539,0,-327,0,0,-337,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,-339,0,0,0,0,-528,
- 0,0,0,0,-341,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-357,-389,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,-78,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,-503,0,
+ -81,0,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,-338,0,-215,-505,0,-507,0,-509,
+ 0,0,-375,0,0,-513,0,-372,0,0,
+ 0,-515,-506,-45,0,0,0,0,0,0,
+ 0,-519,0,0,0,-532,-539,0,-514,0,
+ -533,0,-73,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,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-81,
- 0,0,0,-475,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-336,0,-373,-412,0,-468,0,0,-415,
- -445,-372,-291,0,0,0,0,0,0,0,
- -444,0,-446,0,0,0,0,-253,0,0,
- -424,0,0,0,0,-427,-469,0,0,0,
- 0,-471,0,0,0,0,-488,0,0,0,
+ 0,0,0,0,0,-538,0,0,0,0,
+ 0,0,0,0,0,-336,0,0,0,-381,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-472,0,
- 0,0,0,0,0,-489,-496,0,0,0,
+ 0,0,-18,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,-378,0,
+ 0,-361,-253,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-254,0,-331,-365,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-330,0,0,0,0,0,-437,-491,
- 0,0,0,0,0,0,0,0,-436,-404,
- 0,0,0,-495,-492,0,0,0,0,0,
- 0,0,0,-500,-407,0,0,0,-191,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-443,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-504,0,0,
- -512,0,0,0,0,0,0,0,0,0,
+ 0,0,-439,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,-21,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-502,
- -506,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,
- -510,0,0,0,0,0,-23,0,0,0,
+ 0,0,0,0,0,-47,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,-24,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -25,0,0,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,-26,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,-27,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,-63,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,-75,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,
- -76,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,-133,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,-203,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,-338,-460,-214,-511,
- 0,0,0,-516,0,0,-366,-530,0,0,
- 0,-215,0,-529,0,0,-371,0,0,0,
- 0,0,-536,0,0,0,0,0,0,-535,
+ 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,-203,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-340,-216,-217,0,0,0,0,
+ 0,0,0,-369,0,0,0,0,0,0,
+ 0,0,0,-374,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-414,
- 0,0,0,0,0,0,0,0,-498,-423,
- 0,0,0,0,0,-216,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-404,
0,0,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,-291,0,0,0,0,-426,0,0,0,
+ 0,0,0,0,0,0,-42,-46,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-307,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-343,0,0,0,
- 0,0,0,0,0,0,0,0,0,-382,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-126,0,
- 0,0,-217,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-501,0,0,0,0,0,
+ 0,0,0,-308,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-483,0,-290,0,0,-223,0,0,-431,
- 0,0,-518,0,0,0,0,0,0,0,
+ 0,0,-345,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-385,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-504,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-292,0,
+ 0,0,0,0,-521,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-126,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,-434,0,0,0,0,0,0,0,0,
+ -224,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,
0,0,0,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,0,0,0,0,0,0,0,-264,
+ 0,0,0,0,0,0,0,-266,0,-326,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-367,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-265,0,0,0,0,
- 0,-421,0,0,0,0,0,0,0,0,
- 0,0,-433,0,0,0,0,0,0,0,
- 0,0,0,-434,0,0,0,-442,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-201,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,-410,0,0,0,0,0,-424,0,
+ 0,0,0,0,-436,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-503,0,0,0,0,0,0,0,-17,
- -42,0,0,0,0,0,0,0,0,0,
- 0,-68,0,0,0,0,0,0,0,0,
+ 0,0,-437,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-435,0,
- 0,0,0,0,0,0,0,-210,0,0,
- 0,-257,0,0,0,0,0,-484,0,0,
+ 0,0,0,0,-68,0,0,0,0,-204,
+ 0,0,0,0,0,0,0,0,-445,0,
+ 0,0,-184,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,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-487,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-438,
+ -487,0,0,0,0,0,-448,0,0,0,
+ 0,0,0,-258,0,0,0,0,0,0,
+ -490,0,0,0,0,0,-449,0,0,0,
+ 0,0,0,-495,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
@@ -544,7 +550,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,0,0,0
+ 0,0,0,0,0,0,0,0,0
};
};
public final static short baseCheck[] = BaseCheck.baseCheck;
@@ -575,19 +581,19 @@ public class CPPExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, CP
66,56,56,179,179,70,70,70,103,103,
180,180,71,71,71,181,181,72,72,72,
72,72,73,73,84,84,84,84,84,84,
- 84,84,49,49,49,49,49,116,116,114,
- 114,50,182,22,22,22,22,22,48,48,
+ 84,84,50,50,50,50,50,116,116,114,
+ 114,51,182,22,22,22,22,22,48,48,
87,87,87,87,87,152,152,147,147,147,
147,147,148,148,148,149,149,149,150,150,
150,151,151,151,88,88,88,88,88,89,
89,89,13,13,13,13,13,13,13,13,
13,13,13,98,120,120,120,120,120,120,
118,118,118,153,119,119,183,155,155,154,
- 154,122,122,104,79,79,80,81,52,47,
- 156,156,53,51,86,86,157,157,146,146,
+ 154,122,122,104,79,79,80,81,53,47,
+ 156,156,54,52,86,86,157,157,146,146,
123,124,124,125,76,76,158,158,63,63,
63,60,60,59,64,64,75,75,58,58,
- 58,54,90,90,100,99,99,62,62,61,
+ 58,49,90,90,100,99,99,62,62,61,
61,55,55,45,101,101,101,93,93,93,
94,94,95,95,95,96,96,105,105,105,
107,107,106,106,202,202,91,91,185,185,
@@ -607,498 +613,504 @@ public class CPPExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, CP
82,82,173,173,132,132,133,133,133,133,
133,133,3,134,134,131,131,112,112,85,
78,74,161,161,113,113,197,197,197,135,
- 135,126,126,198,198,174,174,1119,35,1568,
- 1550,1278,2539,27,30,31,916,929,26,28,
- 1543,25,23,50,943,106,76,77,108,1964,
- 1000,1082,1043,1178,1129,1229,236,1209,1307,1982,
- 1272,273,1368,1377,143,1243,35,396,158,144,
- 1217,35,914,32,71,2551,27,30,31,916,
- 929,57,28,588,3897,3121,35,914,32,232,
- 3011,27,30,31,916,929,26,28,822,25,
- 23,50,943,106,76,77,108,1267,1000,1082,
- 1043,1178,1129,1757,235,230,231,588,1439,1525,
- 34,3121,35,914,32,274,3011,27,30,31,
- 916,929,26,28,822,25,23,50,943,106,
+ 135,126,126,198,198,174,174,1119,35,1697,
+ 1679,1278,2639,27,30,31,966,1000,26,28,
+ 1664,25,23,50,1209,106,76,77,108,1964,
+ 1229,1264,1254,1307,1272,1395,236,1368,1439,1982,
+ 1413,273,1456,1464,143,1243,35,396,158,144,
+ 1217,35,943,32,71,2876,27,30,31,966,
+ 1000,57,28,588,3371,3121,35,943,32,232,
+ 3973,27,30,31,966,1000,26,28,866,25,
+ 23,50,1209,106,76,77,108,1267,1229,1264,
+ 1254,1307,1272,1965,235,230,231,588,1525,1636,
+ 34,3121,35,943,32,274,3973,27,30,31,
+ 966,1000,26,28,866,25,23,50,1209,106,
76,77,85,2023,242,245,248,251,1176,2079,
- 35,277,56,2168,1643,2881,690,1449,1860,35,
- 914,32,523,2551,27,30,31,916,929,56,
- 28,2244,569,3324,2447,2513,2623,2846,3164,4569,
- 2316,35,914,32,2989,3011,27,30,31,916,
- 929,26,28,822,25,23,50,943,106,76,
- 77,108,343,1000,1082,1043,1178,1129,1229,61,
- 1209,1307,1623,1272,3100,1368,1377,143,327,35,
- 279,517,144,3999,1279,860,588,35,1525,2432,
- 1721,929,35,1421,388,518,2316,35,914,32,
- 2989,3011,27,30,31,916,929,26,28,822,
- 25,23,50,943,106,76,77,108,343,1000,
- 1082,1043,1178,1129,1229,49,1209,1307,2049,1272,
- 2493,1368,1377,143,1413,2181,287,517,144,588,
- 2881,860,327,35,279,920,1599,4789,3213,736,
- 1034,518,513,2344,35,914,32,60,4888,27,
- 30,31,916,929,26,28,404,511,2145,2940,
- 1773,1975,1016,1614,2000,3579,2316,35,914,32,
- 2989,3011,27,30,31,916,929,26,28,822,
- 25,23,50,943,106,76,77,108,343,1000,
- 1082,1043,1178,1129,1229,497,1209,1307,513,1272,
- 2147,1368,1377,143,3267,312,356,517,144,838,
- 920,860,1868,2845,2174,531,3355,2131,333,1017,
- 2000,518,2524,35,914,32,2989,3011,27,30,
- 31,916,929,26,28,822,25,23,50,943,
- 106,76,77,108,343,1000,1082,1043,1178,1129,
- 1229,288,1209,1307,2681,1272,2682,1368,1377,143,
- 588,35,2440,517,144,2122,1010,860,142,2683,
- 3669,588,35,2461,2317,352,182,518,513,1715,
- 35,914,32,2245,4888,27,30,31,916,929,
- 59,28,1614,344,2059,1930,349,2222,588,3493,
- 2000,342,2659,35,914,32,1088,3011,27,30,
- 31,916,929,26,28,822,25,23,50,943,
- 106,76,77,108,4293,1000,1082,1043,1178,1129,
- 1229,443,1209,1307,514,1272,69,1368,1377,143,
- 413,3549,3919,379,144,2385,35,914,32,498,
- 3011,27,30,31,916,929,26,28,822,25,
- 23,50,943,106,76,77,108,1666,1000,1082,
- 1043,1178,1129,1229,1607,1209,1307,2859,1272,3579,
- 1368,1377,143,1445,2154,3919,379,144,4440,93,
- 3121,35,914,32,3385,3011,27,30,31,916,
- 929,26,28,822,25,23,50,943,106,76,
- 77,108,1621,1000,1082,1043,1178,1129,1229,522,
- 1209,1307,64,1272,3860,1368,2300,164,2174,2122,
- 385,3031,332,429,3669,2591,35,914,32,322,
- 3011,27,30,31,916,929,26,28,822,25,
- 23,50,943,106,76,77,108,3104,1000,1082,
- 1043,1178,1129,1229,820,1209,1307,559,1272,2284,
- 1368,1377,143,386,3031,3919,379,144,588,35,
- 1525,276,2932,2750,2887,35,914,32,3429,3011,
- 27,30,31,916,929,26,28,822,25,23,
- 50,943,106,76,77,108,389,1000,1082,1043,
- 1178,1129,1229,2580,1209,1307,1229,1272,587,1368,
- 1377,143,1947,35,277,158,144,3121,35,914,
- 32,1666,3011,27,30,31,916,929,26,28,
- 822,25,23,50,943,106,76,77,108,494,
- 1000,1082,1043,1178,1129,1229,69,1209,1307,1988,
- 1272,2886,1869,377,3031,2887,35,914,32,1355,
- 3011,27,30,31,916,929,26,28,822,25,
- 23,50,943,106,76,77,108,2698,1000,1082,
- 1043,1178,1129,1229,2121,1209,1307,430,1272,2433,
- 1368,1377,143,2449,35,280,373,144,1715,35,
- 914,32,400,4888,27,30,31,916,929,58,
- 28,1543,35,1525,276,2887,35,914,32,569,
- 3011,27,30,31,916,929,26,28,822,25,
- 23,50,943,106,76,77,108,1226,1000,1082,
- 1043,1178,1129,1229,88,1209,1307,102,1272,2228,
- 1368,1377,143,588,35,282,373,144,3111,1216,
- 2887,35,914,32,421,3011,27,30,31,916,
- 929,26,28,822,25,23,50,943,106,76,
- 77,108,372,1000,1082,1043,1178,1129,1229,1173,
- 1209,1307,2689,1272,2814,1368,1377,143,1146,390,
- 427,373,144,2457,35,914,32,1617,3011,27,
- 30,31,916,929,26,28,822,25,23,50,
- 943,106,76,77,108,1625,1000,1082,1043,1178,
- 1129,1229,135,1209,1307,1627,1272,56,1368,1377,
- 143,746,371,1174,142,144,2728,2887,35,914,
- 32,2690,3011,27,30,31,916,929,26,28,
- 822,25,23,50,943,106,76,77,108,1323,
- 1000,1082,1043,1178,1129,1229,1441,1209,1307,1330,
- 1272,56,1368,1377,143,826,2589,369,159,144,
- 2887,35,914,32,160,3011,27,30,31,916,
- 929,26,28,822,25,23,50,943,106,76,
- 77,108,676,1000,1082,1043,1178,1129,1229,1494,
- 1209,1307,1721,1272,56,1368,1377,143,4637,848,
- 1614,155,144,2887,35,914,32,1167,3011,27,
- 30,31,916,929,26,28,822,25,23,50,
- 943,106,76,77,108,2691,1000,1082,1043,1178,
- 1129,1229,24,1209,1307,1721,1272,69,1368,1377,
- 143,2050,3231,1503,154,144,2887,35,914,32,
- 3321,3011,27,30,31,916,929,26,28,822,
- 25,23,50,943,106,76,77,108,1453,1000,
- 1082,1043,1178,1129,1229,3650,1209,1307,159,1272,
- 56,1368,1377,143,2599,447,408,153,144,2887,
- 35,914,32,580,3011,27,30,31,916,929,
- 26,28,822,25,23,50,943,106,76,77,
- 108,1015,1000,1082,1043,1178,1129,1229,355,1209,
- 1307,159,1272,69,1368,1377,143,531,3447,1700,
- 152,144,2887,35,914,32,1787,3011,27,30,
- 31,916,929,26,28,822,25,23,50,943,
- 106,76,77,108,1223,1000,1082,1043,1178,1129,
- 1229,323,1209,1307,1385,1272,2627,1368,1377,143,
- 531,3995,1614,151,144,2887,35,914,32,1559,
- 3011,27,30,31,916,929,26,28,822,25,
- 23,50,943,106,76,77,108,1623,1000,1082,
- 1043,1178,1129,1229,69,1209,1307,1875,1272,56,
- 1368,1377,143,1219,1965,1614,150,144,2887,35,
- 914,32,2022,3011,27,30,31,916,929,26,
- 28,822,25,23,50,943,106,76,77,108,
- 381,1000,1082,1043,1178,1129,1229,68,1209,1307,
- 1010,1272,56,1368,1377,143,2408,1709,1614,149,
- 144,2887,35,914,32,2491,3011,27,30,31,
- 916,929,26,28,822,25,23,50,943,106,
- 76,77,108,380,1000,1082,1043,1178,1129,1229,
- 53,1209,1307,2558,1272,56,1368,1377,143,664,
- 1604,1701,148,144,2887,35,914,32,1703,3011,
- 27,30,31,916,929,26,28,822,25,23,
- 50,943,106,76,77,108,314,1000,1082,1043,
- 1178,1129,1229,460,1209,1307,1010,1272,402,1368,
- 1377,143,1088,2552,486,147,144,2887,35,914,
- 32,1374,3011,27,30,31,916,929,26,28,
- 822,25,23,50,943,106,76,77,108,1515,
- 1000,1082,1043,1178,1129,1229,2580,1209,1307,1010,
- 1272,406,1368,1377,143,1243,35,396,146,144,
- 2887,35,914,32,666,3011,27,30,31,916,
- 929,26,28,822,25,23,50,943,106,76,
- 77,108,1883,1000,1082,1043,1178,1129,1229,459,
- 1209,1307,2125,1272,69,1368,1377,143,438,4742,
- 1873,145,144,2832,35,914,32,2728,3011,27,
- 30,31,916,929,26,28,822,25,23,50,
- 943,106,76,77,108,522,1000,1082,1043,1178,
- 1129,1229,4315,1209,1307,2276,1272,2413,1368,2300,
- 164,2887,35,914,32,2306,3011,27,30,31,
- 916,929,26,28,822,25,23,50,943,106,
- 76,77,108,3343,1000,1082,1043,1178,1129,1229,
- 2139,1209,1307,2741,1272,353,1368,1377,143,70,
- 2129,2144,140,144,56,1010,327,89,1144,2433,
- 102,3005,35,914,32,2068,3011,27,30,31,
- 916,929,26,28,822,25,23,50,943,106,
- 76,77,108,156,1000,1082,1043,1178,1129,1229,
- 1795,1209,1307,2015,1272,69,1368,1377,143,1699,
- 4753,1614,189,144,3121,35,914,32,1010,3011,
- 27,30,31,916,929,26,28,822,25,23,
- 50,943,106,76,77,108,241,1000,1082,1043,
- 1178,1129,1229,87,1209,1307,3668,1272,51,1368,
- 2300,164,3121,35,914,32,447,3011,27,30,
- 31,916,929,26,28,822,25,23,50,943,
- 106,76,77,108,2551,1000,1082,1043,1178,1129,
- 1229,2347,1209,1307,354,1272,1010,1368,2300,164,
- 1500,35,914,32,1330,322,41,30,31,916,
- 929,326,3121,35,914,32,423,3011,27,30,
- 31,916,929,26,28,822,25,23,50,943,
- 106,76,77,108,1096,1000,1082,1043,1178,1129,
- 1229,2149,1209,1307,3086,1272,2552,1368,2300,164,
- 3121,35,914,32,292,3011,27,30,31,916,
- 929,26,28,822,25,23,50,943,106,76,
- 77,108,284,1000,1082,1043,1178,1129,1229,97,
- 1209,1307,2453,1272,299,1368,2300,164,2407,35,
- 914,32,2556,2906,40,30,31,916,929,1537,
- 3176,35,914,32,422,3011,27,30,31,916,
- 929,26,28,822,25,23,50,943,106,76,
- 77,108,2371,1000,1082,1043,1178,1129,1229,2010,
- 1209,1307,2552,1272,666,1368,2300,164,3121,35,
- 914,32,425,3011,27,30,31,916,929,26,
- 28,822,25,23,50,943,106,76,77,108,
- 49,1000,1082,1043,1178,1129,1229,324,1209,1307,
- 221,1844,2407,35,914,32,2589,142,1843,30,
- 31,916,929,588,35,1421,388,2228,3121,35,
- 914,32,3483,3011,27,30,31,916,929,26,
- 28,822,25,23,50,943,106,76,77,108,
- 1614,1000,1082,1043,1178,1129,1229,431,1209,1801,
- 3121,35,914,32,1817,3011,27,30,31,916,
- 929,26,28,822,25,23,50,943,106,76,
- 77,108,52,1000,1082,1043,1178,1129,1229,71,
- 1808,1518,35,914,32,3571,3520,27,30,31,
- 916,929,339,28,3121,35,914,32,737,3011,
- 27,30,31,916,929,26,28,822,25,23,
- 50,943,106,76,77,108,3555,1000,1082,1043,
- 1178,1765,2418,69,327,35,453,2417,4764,3980,
- 2515,2851,1243,35,396,2174,1818,3347,69,332,
- 319,2499,321,4768,314,2232,2407,35,914,32,
- 239,2699,2186,30,31,916,929,313,2218,351,
- 3207,757,35,1421,388,1643,2881,3121,35,914,
- 32,4537,3011,27,30,31,916,929,26,28,
- 822,25,23,50,943,106,76,77,108,2380,
- 1000,1082,1043,1178,1793,273,1334,328,335,232,
- 1250,2228,352,1225,306,310,681,1400,35,914,
- 32,3379,3339,27,30,31,916,929,339,28,
- 344,2059,1930,349,240,230,231,2272,2555,2212,
- 35,1421,388,56,843,35,453,1144,3279,3980,
- 3573,932,35,1421,388,1614,1888,35,914,32,
- 3412,3339,27,30,31,916,929,339,28,2584,
- 3565,2228,2590,49,325,232,319,2499,321,2305,
- 314,2232,1413,2446,2553,49,72,350,351,1790,
- 1614,2271,352,2675,1413,2506,3213,287,2693,2234,
- 244,230,231,2989,446,3227,3268,2433,2471,2465,
- 344,2059,1930,349,1714,319,2499,321,2614,314,
- 2232,2517,90,1240,588,2708,1525,74,322,2628,
- 2940,352,3363,1898,35,2960,32,3571,3520,27,
- 30,31,916,929,339,28,2129,35,293,344,
- 2059,1930,349,3121,35,914,32,2555,3011,27,
- 30,31,916,929,26,28,822,25,23,50,
- 943,106,76,77,108,1906,1000,1082,1043,1654,
- 1543,35,1525,2777,56,232,3361,2174,1144,2587,
- 360,332,319,2499,321,285,314,2232,588,35,
- 1525,278,366,2121,3172,2510,2579,1988,2707,1143,
- 247,230,231,3892,450,3227,3268,391,427,3121,
- 35,914,32,4537,3011,27,30,31,916,929,
- 26,28,822,25,23,50,943,106,76,77,
- 108,2615,1000,1082,1043,1664,3121,35,914,32,
- 2996,3011,27,30,31,916,929,26,28,822,
- 25,23,50,943,106,76,77,108,2312,1000,
- 1082,1043,1679,3121,35,914,32,2614,3011,27,
- 30,31,916,929,26,28,822,25,23,50,
- 943,106,76,77,108,2621,1000,1586,417,419,
- 2954,1691,35,914,32,3571,3339,27,30,31,
- 916,929,339,28,1243,35,2468,2124,3121,35,
- 914,32,1800,3011,27,30,31,916,929,26,
- 28,822,25,23,50,943,106,76,77,108,
- 1614,1000,1082,1043,1707,259,1606,1876,49,537,
- 2689,1375,2552,2716,523,2989,3579,1413,931,56,
- 319,2499,321,1259,314,2232,2484,228,588,35,
- 1421,388,3197,2517,156,1614,2620,313,2715,1351,
- 1614,2654,2989,180,2987,869,932,35,1421,388,
- 303,203,215,4720,202,212,213,214,216,1,
- 343,169,452,537,1614,2174,56,3250,232,332,
- 2607,168,67,183,167,170,171,172,173,174,
- 49,228,928,796,307,310,681,1614,156,1413,
- 47,2228,1010,250,230,231,66,180,2987,869,
- 2727,2988,360,1263,3651,203,215,4720,202,212,
- 213,214,216,2622,2729,169,2840,2510,2579,65,
- 2492,588,35,1421,388,168,181,184,167,170,
- 171,172,173,174,2070,35,914,32,3379,3339,
- 27,30,31,916,929,339,28,2552,1983,3231,
- 35,1421,388,3579,741,434,1330,2272,1363,35,
- 914,32,237,3520,27,30,31,916,929,339,
- 28,1976,35,1421,388,98,42,2364,322,588,
- 35,1421,388,273,2899,179,588,35,1421,388,
- 322,1330,1614,319,2499,321,3687,314,2232,1330,
- 1330,2731,2174,56,56,49,333,2989,2989,352,
- 526,232,2174,433,1413,1254,333,319,2499,321,
- 432,315,2232,352,64,343,343,344,2059,1930,
- 349,3984,442,352,456,527,235,230,231,869,
- 869,346,2059,1930,349,297,56,274,860,860,
- 2475,346,2059,1930,349,3970,525,296,1464,1482,
- 588,35,1525,2953,2735,2448,242,245,248,251,
- 1176,588,35,1525,281,3066,35,914,32,1449,
- 3011,27,30,31,916,929,26,28,822,25,
- 23,50,943,86,76,77,2447,2513,2623,2846,
- 3164,4569,3121,35,914,32,2786,3011,27,30,
- 31,916,929,26,28,822,25,23,50,943,
- 106,76,77,108,1780,1000,1082,1714,3121,35,
- 914,32,1614,3011,27,30,31,916,929,26,
- 28,822,25,23,50,943,106,76,77,108,
- 345,1000,1082,1722,537,2624,2646,56,2234,2989,
- 2989,3209,2989,322,3684,2068,2249,737,2732,737,
- 1144,2552,228,588,35,1421,388,2517,2517,156,
- 2517,588,35,1421,388,1614,232,2747,180,2987,
- 869,929,35,1421,388,156,203,215,4720,202,
- 212,213,214,216,431,535,169,273,537,198,
- 56,253,230,231,2707,273,168,55,3488,167,
- 170,171,172,173,174,49,228,1607,2739,3207,
- 304,3207,3579,156,1413,47,56,56,2755,2751,
- 3505,2989,180,2987,869,2552,361,505,1323,360,
- 203,215,4720,202,212,213,214,216,517,343,
- 169,1614,537,3441,2510,2579,334,335,3736,335,
- 168,275,178,167,170,171,172,173,174,340,
- 228,2174,860,197,2790,332,322,156,503,504,
- 1354,56,1499,54,1144,2989,180,2987,869,929,
- 35,1421,388,2791,203,215,4720,202,212,213,
- 214,216,603,343,169,1607,537,2988,56,160,
- 3579,56,1144,1614,168,3852,176,167,170,171,
- 172,173,174,49,228,1330,860,2440,2782,1607,
- 541,156,1413,2866,3579,1785,1507,156,2789,2989,
- 180,2987,869,382,87,322,3221,1851,203,215,
- 4720,202,212,213,214,216,689,343,169,2174,
- 537,2757,1375,3863,2761,869,2989,3579,168,1614,
- 177,167,170,171,172,173,174,1758,228,1778,
- 872,524,1390,2174,2517,156,1416,332,2763,56,
- 2765,1614,3651,2989,180,2987,869,932,35,1421,
- 388,101,203,215,4720,202,212,213,214,216,
- 775,343,169,1354,537,2444,2174,1144,2769,2998,
- 332,173,168,3855,187,167,170,171,172,173,
- 174,49,228,2792,860,2129,3146,293,2788,156,
- 1413,47,160,2793,2875,1614,1578,94,180,2987,
- 869,1761,2998,360,2456,737,203,215,4720,202,
- 212,213,214,216,44,2364,169,2840,2510,2579,
- 929,35,1421,388,1614,3361,168,2852,3575,167,
- 170,171,172,173,174,1952,35,914,32,3571,
- 3339,27,30,31,916,929,339,28,737,588,
- 35,1421,388,2433,49,56,451,2773,2798,3553,
- 2350,1709,2717,1413,2262,56,537,3207,861,3635,
- 56,1607,537,2799,3198,2110,3579,3221,1337,588,
- 35,1421,388,49,4028,588,35,293,5444,2996,
- 228,156,1413,734,319,2499,321,156,314,2232,
- 180,2987,5444,5444,330,335,180,2987,869,5444,
- 3207,313,5444,49,203,215,4720,202,212,213,
- 214,216,1413,1402,169,2174,1354,947,195,332,
- 1144,537,5444,5444,168,2433,192,167,170,171,
- 172,173,174,588,35,293,5444,3737,335,228,
- 1330,588,35,1421,388,160,156,5444,306,310,
- 681,4550,5444,393,427,180,2987,869,1330,929,
- 35,1421,388,203,215,4720,202,212,213,214,
- 216,4354,1033,169,56,49,537,56,3548,3834,
- 869,3862,3279,168,46,186,167,170,171,172,
- 173,174,5444,49,228,56,376,5444,869,3854,
- 2481,156,1413,47,1144,56,5444,5444,5444,1937,
- 180,2987,869,3225,376,5444,2323,5444,203,215,
- 4720,202,212,213,214,216,56,56,169,156,
- 740,1492,5444,4822,196,392,427,3927,168,162,
- 194,167,170,171,172,173,174,3121,35,914,
- 32,5444,3011,27,30,31,916,929,26,28,
- 822,25,23,50,943,106,76,77,108,5444,
- 1000,1593,3121,35,914,32,5444,3011,27,30,
- 31,916,929,26,28,822,25,23,50,943,
- 106,76,77,108,5444,1611,3121,35,914,32,
- 374,3011,27,30,31,916,929,26,28,822,
- 25,23,50,943,106,76,77,108,3886,1629,
- 3121,35,914,32,2552,3011,27,30,31,916,
- 929,26,28,822,25,23,50,943,106,76,
- 77,108,1562,1636,2646,56,2989,2446,2989,3979,
- 56,56,1823,2034,3969,2989,2989,5444,3579,5444,
- 5444,2647,302,56,228,2989,2517,2989,1354,5444,
- 5444,56,1144,343,228,3871,56,56,4370,529,
- 966,1535,1614,2517,5444,343,5444,2552,205,215,
- 4720,204,212,213,214,216,860,160,205,215,
- 4720,204,212,213,214,216,509,2174,860,56,
- 5444,3863,5444,3326,378,5444,2552,2552,507,206,
- 208,210,294,295,2609,201,217,207,209,206,
- 208,210,294,295,2609,505,217,207,209,2062,
- 35,2960,32,3571,3339,27,30,31,916,929,
- 339,28,505,1354,199,298,3018,1144,4357,1910,
- 56,5444,5444,2989,1842,3301,3030,5444,4357,737,
- 929,35,1421,388,56,56,502,504,962,2989,
- 5444,228,160,5444,1614,929,35,1421,388,588,
- 35,1421,388,502,504,96,5444,343,319,2499,
- 321,5444,314,2232,49,205,215,4720,204,212,
- 213,214,216,1413,47,1143,3406,3205,56,49,
- 860,2447,3535,49,5444,2974,5444,2868,1413,47,
- 534,3207,1413,1182,3465,5444,206,208,210,294,
- 295,2609,2961,217,207,209,3121,1439,914,1446,
- 3419,3011,27,30,31,916,929,26,28,822,
- 25,23,50,943,106,76,77,84,3887,335,
- 1614,1614,5444,3203,5444,4357,3121,35,914,32,
- 5444,3011,27,30,31,916,929,26,28,822,
- 25,23,50,943,106,76,77,83,5444,5444,
- 5444,1614,3460,3568,418,419,2954,3121,35,914,
- 32,5444,3011,27,30,31,916,929,26,28,
- 822,25,23,50,943,106,76,77,82,3121,
- 35,914,32,3040,3011,27,30,31,916,929,
- 26,28,822,25,23,50,943,106,76,77,
- 81,3121,35,914,32,5444,3011,27,30,31,
- 916,929,26,28,822,25,23,50,943,106,
- 76,77,80,3121,35,914,32,5444,3011,27,
- 30,31,916,929,26,28,822,25,23,50,
- 943,106,76,77,79,3121,35,914,32,5444,
- 3011,27,30,31,916,929,26,28,822,25,
- 23,50,943,106,76,77,78,2950,35,914,
- 32,5444,3011,27,30,31,916,929,26,28,
- 822,25,23,50,943,106,76,77,104,3121,
- 35,914,32,5444,3011,27,30,31,916,929,
- 26,28,822,25,23,50,943,106,76,77,
- 110,3121,35,914,32,5444,3011,27,30,31,
- 916,929,26,28,822,25,23,50,943,106,
- 76,77,109,3121,35,914,32,5444,3011,27,
- 30,31,916,929,26,28,822,25,23,50,
- 943,106,76,77,107,3121,35,914,32,5444,
- 3011,27,30,31,916,929,26,28,822,25,
- 23,50,943,106,76,77,105,1997,2717,56,
- 1614,2989,1144,1144,2552,5444,5444,1649,1614,5444,
- 5444,2989,56,5444,2552,5444,1144,1736,5444,228,
- 5444,2989,5444,2552,5444,5444,5444,156,156,228,
- 1614,5444,3375,5444,5444,5444,200,3926,2880,228,
- 4363,156,3710,205,215,4720,204,212,213,214,
- 216,2904,222,205,215,4720,204,212,213,214,
- 216,193,3682,205,215,4720,204,212,213,214,
- 216,5444,5444,5444,206,208,210,294,295,2609,
- 5444,520,207,209,206,208,210,294,295,2609,
- 5444,519,207,209,206,208,210,294,295,2609,
- 2084,218,207,209,2989,5444,5444,5444,5444,2775,
- 2171,5444,5444,2989,2989,5444,56,5444,5444,5444,
- 1144,5444,228,5444,5444,5444,5444,5444,5444,5444,
- 5444,343,228,5444,5444,5444,5444,5444,5444,5444,
- 5444,5444,5444,5444,5444,156,205,215,4720,204,
- 212,213,214,216,4031,2927,205,215,4720,204,
- 212,213,214,216,1691,35,914,32,3571,3339,
- 27,30,31,916,929,339,28,206,208,210,
- 294,295,2609,5444,305,207,209,206,208,210,
- 294,295,2609,5444,499,207,209,2156,35,914,
- 32,5444,3520,27,30,31,916,929,339,28,
- 2156,35,914,32,5444,3520,27,30,31,916,
- 929,339,28,319,2499,321,5444,314,2232,3280,
- 35,1421,388,56,741,5444,5444,1144,5444,5444,
- 3363,5444,238,5444,5444,5444,5444,5444,5444,5444,
- 5444,2174,5444,5444,5444,333,319,2499,321,5444,
- 317,2232,156,273,2174,5444,5444,5444,333,319,
- 2499,321,3032,315,2232,1691,35,914,32,3571,
- 3339,27,30,31,916,929,339,28,5444,5444,
- 5444,232,56,5444,56,5444,537,1180,1144,5444,
- 1354,2989,4892,56,1144,5444,4340,1144,5444,5444,
- 5444,5444,5444,5444,343,5444,236,230,231,228,
- 5444,156,5444,156,5444,5444,5444,274,5444,160,
- 5444,188,156,2136,319,2499,321,4615,314,2232,
- 5444,5444,4348,778,407,4700,243,246,249,252,
- 1176,3558,5444,5444,5444,5444,5444,5444,5444,1449,
- 1490,35,914,32,2633,3339,27,30,31,916,
- 929,339,28,5444,408,409,410,294,295,2609,
- 2236,35,914,32,2391,3339,27,30,31,916,
- 929,339,28,5444,5444,3994,1285,3524,403,2591,
- 2989,4892,2151,35,1421,388,5444,5444,5444,5444,
- 5444,5444,5444,929,35,1421,388,5444,228,316,
- 2876,321,5444,5444,929,35,1421,388,2164,35,
- 1421,388,5444,5444,5444,5444,49,5444,5444,316,
- 2876,321,778,407,4700,1413,47,49,5444,588,
- 35,1421,388,5444,5444,5444,1413,47,49,3585,
- 411,413,49,5444,5444,5444,5444,1413,47,5444,
- 3019,1413,47,408,409,410,294,295,2609,5444,
- 5444,3026,2722,49,1099,3643,537,4736,5444,5444,
- 56,56,1413,659,537,537,5444,5444,2591,5444,
- 5444,5444,56,5444,343,5444,537,5444,5444,5444,
- 5444,156,343,343,5444,5444,5444,5444,3432,156,
- 156,188,5444,5444,343,5444,5444,4615,5444,1500,
- 1715,156,5444,5444,5444,860,860,5444,3432,2208,
- 5444,1500,5444,2989,5444,952,1672,860,588,35,
- 1421,388,588,35,1421,388,5444,2061,56,411,
- 414,343,537,5444,5444,5444,5444,5444,5444,5444,
- 5444,530,5444,5444,5444,5444,5444,56,5444,5444,
- 343,537,49,5444,860,190,49,156,5444,5444,
- 5444,1413,1254,5444,533,1413,2703,188,5444,343,
- 5444,5444,5444,4615,5444,5444,156,5444,5444,5444,
- 5444,5444,5444,5444,5444,5444,188,5444,5444,5444,
- 5444,5444,4615,5444,5444,5444,5444,5444,5444,5444,
- 5444,5444,5444,5444,5444,5444,5444,5444,5444,5444,
- 5444,5444,5444,5444,5444,5444,5444,5444,5444,5444,
- 5444,5444,5444,5444,5444,5444,5444,5444,5444,5444,
- 5444,4080,4344,5444,5444,5444,5444,5444,5444,5444,
- 5444,5444,5444,5444,5444,5444,5444,5444,5444,5444,
- 4081,5444,5444,5444,5444,5444,5444,5444,5444,5444,
- 5444,5444,5444,5444,5444,5444,5444,5444,5444,5444,
- 5444,5444,5444,5444,5444,5444,5444,5444,5444,5444,
- 5444,5444,5444,5444,5444,5444,5444,5444,5444,5444,
- 5444,5444,5444,5444,5444,5444,5444,5444,5444,5444,
- 5444,5444,5444,5444,5444,5444,5444,3857,5444,0,
- 39,5459,0,39,5458,0,662,29,0,440,
- 1407,0,454,1451,0,38,627,0,38,5459,
- 0,38,5458,0,2746,126,0,1,444,0,
- 458,1750,0,457,1836,0,2543,91,0,662,
- 387,0,35,33,0,32,34,0,39,627,
- 0,1,996,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,1,5706,0,39,1,5459,
- 0,39,1,5458,0,2140,1,0,283,394,
- 0,283,286,0,5678,241,0,5677,241,0,
- 5782,241,0,5781,241,0,5705,241,0,5704,
- 241,0,5703,241,0,5702,241,0,5701,241,
- 0,5700,241,0,5699,241,0,5698,241,0,
- 5716,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,39,5459,241,0,39,5458,241,
- 0,5482,241,0,5459,48,0,5458,48,0,
- 5450,1,0,5449,1,0,3330,237,0,32,
- 388,0,29,387,0,43,5480,0,43,37,
- 0,2746,128,0,2746,127,0,331,445,0,
- 5482,1,0,39,1,0,47,37,0,1,
- 92,0,501,2598,0,5482,1,229,0,39,
- 1,229,0,229,416,0,5459,37,0,5458,
- 37,0,5459,2,37,0,5458,2,37,0,
- 5459,36,0,5458,36,0,5480,45,0,37,
- 45,0,5454,405,0,5453,405,0,1,4504,
- 0,1,2878,0,1,627,0,229,415,0,
- 3570,318,0,331,95,0,35,73,0,1,
- 331,0,3626,278,0,501,4347,0,1,229,
- 0,229,220,0,229,219,0,1,575,0,
- 1,1885,0,5456,1,0,5452,1,0,1,
- 229,3388,0,5453,229,0,3394,229,0,5456,
- 383,0,5455,383,0,3471,229,0,10,12,
- 0,8,10,12,0,185,3627,0,3578,383,
- 0,8,12,0
+ 35,277,56,666,1643,2773,690,876,1860,35,
+ 943,32,523,2876,27,30,31,966,1000,56,
+ 28,2168,569,3055,2574,2862,2915,3155,3209,4668,
+ 2316,35,943,32,2980,3973,27,30,31,966,
+ 1000,26,28,866,25,23,50,1209,106,76,
+ 77,108,343,1229,1264,1254,1307,1272,1395,61,
+ 1368,1439,1623,1413,2687,1456,1464,143,327,35,
+ 279,517,144,4905,1279,860,588,35,1636,2547,
+ 1010,929,35,1507,388,518,2316,35,943,32,
+ 2980,3973,27,30,31,966,1000,26,28,866,
+ 25,23,50,1209,106,76,77,108,343,1229,
+ 1264,1254,1307,1272,1395,49,1368,1439,70,1413,
+ 1873,1456,1464,143,1499,2460,287,517,144,588,
+ 2773,860,327,35,279,920,1599,4909,3205,736,
+ 3373,518,513,2344,35,943,32,60,4916,27,
+ 30,31,966,1000,26,28,135,511,2145,2774,
+ 1773,2433,2493,498,2439,4893,2316,35,943,32,
+ 2980,3973,27,30,31,966,1000,26,28,866,
+ 25,23,50,1209,106,76,77,108,343,1229,
+ 1264,1254,1307,1272,1395,353,1368,1439,513,1413,
+ 2147,1456,1464,143,3433,2609,1016,517,144,2453,
+ 920,860,588,35,2932,2446,1330,2447,333,1017,
+ 2439,518,2524,35,943,32,2980,3973,27,30,
+ 31,966,1000,26,28,866,25,23,50,1209,
+ 106,76,77,108,343,1229,1264,1254,1307,1272,
+ 1395,288,1368,1439,2049,1413,1494,1456,1464,143,
+ 588,35,2573,517,144,2122,1614,860,142,69,
+ 3517,1947,35,277,4116,352,2121,518,513,1715,
+ 35,943,32,2681,4916,27,30,31,966,1000,
+ 59,28,404,344,959,780,349,2468,497,1699,
+ 2439,342,2659,35,943,32,2682,3973,27,30,
+ 31,966,1000,26,28,866,25,23,50,1209,
+ 106,76,77,108,1988,1229,1264,1254,1307,1272,
+ 1395,443,1368,1439,514,1413,2645,1456,1464,143,
+ 2683,2228,3618,379,144,2385,35,943,32,1010,
+ 3973,27,30,31,966,1000,26,28,866,25,
+ 23,50,1209,106,76,77,108,1666,1229,1264,
+ 1254,1307,1272,1395,354,1368,1439,2848,1413,1868,
+ 1456,1464,143,3268,1604,3618,379,144,2129,1975,
+ 3121,35,943,32,3391,3973,27,30,31,966,
+ 1000,26,28,866,25,23,50,1209,106,76,
+ 77,108,1621,1229,1264,1254,1307,1272,1395,69,
+ 1368,1439,402,1413,3032,1456,2511,164,1795,2122,
+ 385,2470,460,429,3517,2591,35,943,32,322,
+ 3973,27,30,31,966,1000,26,28,866,25,
+ 23,50,1209,106,76,77,108,2895,1229,1264,
+ 1254,1307,1272,1395,1173,1368,1439,2747,1413,135,
+ 1456,1464,143,386,2470,3618,379,144,588,35,
+ 1636,276,2098,2750,2887,35,943,32,3202,3973,
+ 27,30,31,966,1000,26,28,866,25,23,
+ 50,1209,106,76,77,108,389,1229,1264,1254,
+ 1307,1272,1395,2580,1368,1439,1229,1413,329,1456,
+ 1464,143,2449,35,280,158,144,3121,35,943,
+ 32,1666,3973,27,30,31,966,1000,26,28,
+ 866,25,23,50,1209,106,76,77,108,2245,
+ 1229,1264,1254,1307,1272,1395,93,1368,1439,1988,
+ 1413,2244,2186,377,2470,2887,35,943,32,413,
+ 3973,27,30,31,966,1000,26,28,866,25,
+ 23,50,1209,106,76,77,108,2839,1229,1264,
+ 1254,1307,1272,1395,1445,1368,1439,430,1413,2433,
+ 1456,1464,143,241,64,2050,373,144,1715,35,
+ 943,32,2284,4916,27,30,31,966,1000,58,
+ 28,1543,35,1636,276,2887,35,943,32,569,
+ 3973,27,30,31,966,1000,26,28,866,25,
+ 23,50,1209,106,76,77,108,587,1229,1264,
+ 1254,1307,1272,1395,88,1368,1439,102,1413,1010,
+ 1456,1464,143,588,35,282,373,144,135,1079,
+ 2887,35,943,32,421,3973,27,30,31,966,
+ 1000,26,28,866,25,23,50,1209,106,76,
+ 77,108,372,1229,1264,1254,1307,1272,1395,2438,
+ 1368,1439,2747,1413,2506,1456,1464,143,494,390,
+ 427,373,144,2457,35,943,32,2768,3973,27,
+ 30,31,966,1000,26,28,866,25,23,50,
+ 1209,106,76,77,108,1355,1229,1264,1254,1307,
+ 1272,1395,459,1368,1439,312,1413,56,1456,1464,
+ 143,746,371,400,142,144,1537,2887,35,943,
+ 32,1623,3973,27,30,31,966,1000,26,28,
+ 866,25,23,50,1209,106,76,77,108,1226,
+ 1229,1264,1254,1307,1272,1395,1048,1368,1439,1721,
+ 1413,56,1456,1464,143,826,1146,369,159,144,
+ 2887,35,943,32,1617,3973,27,30,31,966,
+ 1000,26,28,866,25,23,50,1209,106,76,
+ 77,108,1625,1229,1264,1254,1307,1272,1395,1627,
+ 1368,1439,1721,1413,56,1456,1464,143,4691,1174,
+ 1614,155,144,2887,35,943,32,2690,3973,27,
+ 30,31,966,1000,26,28,866,25,23,50,
+ 1209,106,76,77,108,1323,1229,1264,1254,1307,
+ 1272,1395,4340,1368,1439,1721,1413,69,1456,1464,
+ 143,2615,3223,1441,154,144,2887,35,943,32,
+ 160,3973,27,30,31,966,1000,26,28,866,
+ 25,23,50,1209,106,76,77,108,676,1229,
+ 1264,1254,1307,1272,1395,356,1368,1439,159,1413,
+ 135,1456,1464,143,531,588,3264,153,144,2887,
+ 35,943,32,848,3973,27,30,31,966,1000,
+ 26,28,866,25,23,50,1209,106,76,77,
+ 108,1167,1229,1264,1254,1307,1272,1395,355,1368,
+ 1439,159,1413,69,1456,1464,143,531,3443,3462,
+ 152,144,2887,35,943,32,2691,3973,27,30,
+ 31,966,1000,26,28,866,25,23,50,1209,
+ 106,76,77,108,523,1229,1264,1254,1307,1272,
+ 1395,323,1368,1439,1503,1413,2627,1456,1464,143,
+ 531,4813,1614,151,144,2887,35,943,32,3321,
+ 3973,27,30,31,966,1000,26,28,866,25,
+ 23,50,1209,106,76,77,108,1453,1229,1264,
+ 1254,1307,1272,1395,24,1368,1439,408,1413,56,
+ 1456,1464,143,2664,580,1614,150,144,2887,35,
+ 943,32,1015,3973,27,30,31,966,1000,26,
+ 28,866,25,23,50,1209,106,76,77,108,
+ 381,1229,1264,1254,1307,1272,1395,69,1368,1439,
+ 1700,1413,56,1456,1464,143,984,1787,1614,149,
+ 144,2887,35,943,32,1223,3973,27,30,31,
+ 966,1000,26,28,866,25,23,50,1209,106,
+ 76,77,108,380,1229,1264,1254,1307,1272,1395,
+ 68,1368,1439,1010,1413,56,1456,1464,143,664,
+ 2552,1614,148,144,2887,35,943,32,1385,3973,
+ 27,30,31,966,1000,26,28,866,25,23,
+ 50,1209,106,76,77,108,314,1229,1264,1254,
+ 1307,1272,1395,53,1368,1439,1010,1413,406,1456,
+ 1464,143,1088,2552,1559,147,144,2887,35,943,
+ 32,2728,3973,27,30,31,966,1000,26,28,
+ 866,25,23,50,1209,106,76,77,108,1875,
+ 1229,1264,1254,1307,1272,1395,4362,1368,1439,1965,
+ 1413,299,1456,1464,143,1243,35,396,146,144,
+ 2887,35,943,32,666,3973,27,30,31,966,
+ 1000,26,28,866,25,23,50,1209,106,76,
+ 77,108,2022,1229,1264,1254,1307,1272,1395,51,
+ 1368,1439,1010,1413,69,1456,1464,143,438,4819,
+ 1614,145,144,2832,35,943,32,2728,3973,27,
+ 30,31,966,1000,26,28,866,25,23,50,
+ 1209,106,76,77,108,522,1229,1264,1254,1307,
+ 1272,1395,87,1368,1439,1709,1413,1010,1456,2511,
+ 164,2887,35,943,32,1330,3973,27,30,31,
+ 966,1000,26,28,866,25,23,50,1209,106,
+ 76,77,108,3056,1229,1264,1254,1307,1272,1395,
+ 2491,1368,1439,559,1413,326,1456,1464,143,71,
+ 3031,2558,140,144,56,3200,327,1701,1144,2131,
+ 447,3005,35,943,32,1922,3973,27,30,31,
+ 966,1000,26,28,866,25,23,50,1209,106,
+ 76,77,108,156,1229,1264,1254,1307,1272,1395,
+ 97,1368,1439,1836,1413,69,1456,1464,143,1818,
+ 4825,1088,189,144,3121,35,943,32,1703,3973,
+ 27,30,31,966,1000,26,28,866,25,23,
+ 50,1209,106,76,77,108,1334,1229,1264,1254,
+ 1307,1272,1395,486,1368,1439,4460,1413,1010,1456,
+ 2511,164,3121,35,943,32,447,3973,27,30,
+ 31,966,1000,26,28,866,25,23,50,1209,
+ 106,76,77,108,2228,1229,1264,1254,1307,1272,
+ 1395,69,1368,1439,1374,1413,4843,1456,2511,164,
+ 1500,35,943,32,2556,322,41,30,31,966,
+ 1000,2228,3121,35,943,32,423,3973,27,30,
+ 31,966,1000,26,28,866,25,23,50,1209,
+ 106,76,77,108,522,1229,1264,1254,1307,1272,
+ 1395,98,1368,1439,1330,1413,1515,1456,2511,164,
+ 3121,35,943,32,292,3973,27,30,31,966,
+ 1000,26,28,866,25,23,50,1209,106,76,
+ 77,108,284,1229,1264,1254,1307,1272,1395,324,
+ 1368,1439,1541,1413,3464,1456,2511,164,2407,35,
+ 943,32,2380,322,40,30,31,966,1000,1883,
+ 3176,35,943,32,422,3973,27,30,31,966,
+ 1000,26,28,866,25,23,50,1209,106,76,
+ 77,108,2121,1229,1264,1254,1307,1272,1395,69,
+ 1368,1439,2552,1413,4889,1456,2511,164,3121,35,
+ 943,32,425,3973,27,30,31,966,1000,26,
+ 28,866,25,23,50,1209,106,76,77,108,
+ 285,1229,1264,1254,1307,1272,1395,325,1368,1439,
+ 221,2093,2407,35,943,32,2125,2551,1800,30,
+ 31,966,1000,588,35,1507,388,2312,3121,35,
+ 943,32,3222,3973,27,30,31,966,1000,26,
+ 28,866,25,23,50,1209,106,76,77,108,
+ 1614,1229,1264,1254,1307,1272,1395,431,1368,2017,
+ 3121,35,943,32,2276,3973,27,30,31,966,
+ 1000,26,28,866,25,23,50,1209,106,76,
+ 77,108,52,1229,1264,1254,1307,1272,1395,2413,
+ 2068,1518,35,943,32,3640,3513,27,30,31,
+ 966,1000,339,28,3121,35,943,32,322,3973,
+ 27,30,31,966,1000,26,28,866,25,23,
+ 50,1209,106,76,77,108,3077,1229,1264,1254,
+ 1307,2000,56,2306,1351,2433,1144,2417,2580,2139,
+ 2453,2753,588,35,1507,388,142,2347,2484,332,
+ 319,2232,321,1096,314,2144,2407,35,943,32,
+ 2149,2720,1843,30,31,966,1000,313,2453,351,
+ 1330,757,35,1507,388,297,452,3121,35,943,
+ 32,4603,3973,27,30,31,966,1000,26,28,
+ 866,25,23,50,1209,106,76,77,108,2541,
+ 1229,1264,1254,1307,2011,273,1243,35,2583,2317,
+ 3701,49,352,2228,306,310,1221,1400,35,943,
+ 32,3588,3333,27,30,31,966,1000,339,28,
+ 344,959,780,349,588,35,293,2272,2697,1817,
+ 49,588,35,1507,388,391,427,2418,3043,1499,
+ 872,588,2754,1636,74,3348,1888,35,943,32,
+ 4760,3333,27,30,31,966,1000,339,28,2594,
+ 2552,42,2539,2515,3347,49,319,2232,321,89,
+ 314,2144,102,2218,46,1983,72,239,351,1250,
+ 4893,2305,352,2684,2553,1898,35,2854,32,3640,
+ 3513,27,30,31,966,1000,339,28,303,1790,
+ 344,959,780,349,928,319,2232,321,2674,314,
+ 2144,1543,35,1636,2756,2271,2371,2440,322,2154,
+ 2693,352,3216,4487,2453,2465,232,1330,3241,2212,
+ 35,1507,388,333,2453,588,35,1636,278,344,
+ 959,780,349,332,319,2232,321,2697,314,2144,
+ 352,240,230,231,2234,327,35,453,2980,3564,
+ 3600,1143,2234,49,1714,2609,2980,2912,346,959,
+ 780,349,1499,2059,1906,4603,2517,588,35,1636,
+ 2776,2228,2541,3621,2517,296,3205,1614,3121,35,
+ 943,32,366,3973,27,30,31,966,1000,26,
+ 28,866,25,23,50,1209,106,76,77,108,
+ 1614,1229,1264,1254,1765,3121,35,943,32,350,
+ 3973,27,30,31,966,1000,26,28,866,25,
+ 23,50,1209,106,76,77,108,2587,1229,1264,
+ 1254,1808,90,1375,2707,360,2614,2980,4893,2621,
+ 417,419,2849,360,44,2539,2716,2620,56,2988,
+ 2589,2591,3256,2654,2727,2517,2622,3300,2589,2591,
+ 3121,35,943,32,1044,3973,27,30,31,966,
+ 1000,26,28,866,25,23,50,1209,106,76,
+ 77,108,2453,1229,1264,1254,1844,3121,35,943,
+ 32,332,3973,27,30,31,966,1000,26,28,
+ 866,25,23,50,1209,106,76,77,108,1614,
+ 1229,1264,1254,1869,259,446,3008,3009,537,588,
+ 35,1636,281,2585,360,843,35,453,56,2729,
+ 3600,1614,1259,2624,2492,322,228,2980,2829,2589,
+ 2591,3214,1225,156,1643,2773,2272,588,35,1507,
+ 388,2731,180,3006,2912,2517,932,35,1507,388,
+ 203,215,4740,3312,202,212,213,214,216,1,
+ 169,1614,56,537,1614,2735,1144,1243,35,396,
+ 168,434,183,167,170,171,172,173,174,56,
+ 49,228,838,537,1614,1240,2834,2448,156,1499,
+ 2086,3616,304,67,232,2786,66,180,3006,2912,
+ 2646,343,2699,2471,2980,203,215,4740,156,202,
+ 212,213,214,216,361,169,65,2068,188,244,
+ 230,231,2517,2732,4629,168,181,184,167,170,
+ 171,172,173,174,2070,35,943,32,3588,3333,
+ 27,30,31,966,1000,339,28,232,1614,182,
+ 3231,35,1507,388,2433,741,287,322,1614,1363,
+ 35,943,32,237,3513,27,30,31,966,1000,
+ 339,28,247,230,231,3293,2552,2717,2747,2739,
+ 64,537,3839,2889,273,450,3008,3009,2233,2774,
+ 3461,505,2249,319,2232,321,1144,314,2144,3868,
+ 1330,1330,932,35,1507,388,156,2755,2453,352,
+ 526,3349,232,2751,179,180,3006,333,319,2232,
+ 321,156,315,2144,382,2790,2791,344,959,780,
+ 349,535,502,504,352,527,49,235,230,231,
+ 2912,2912,1614,195,2782,1499,47,56,274,2789,
+ 87,2435,346,959,780,349,525,376,2433,1182,
+ 2757,588,35,293,393,427,2761,242,245,248,
+ 251,1176,2763,2947,55,1614,3066,35,943,32,
+ 876,3973,27,30,31,966,1000,26,28,866,
+ 25,23,50,1209,86,76,77,2574,2862,2915,
+ 3155,3209,4668,3121,35,943,32,54,3973,27,
+ 30,31,966,1000,26,28,866,25,23,50,
+ 1209,106,76,77,108,1606,1229,1264,1879,3121,
+ 35,943,32,2552,3973,27,30,31,966,1000,
+ 26,28,866,25,23,50,1209,106,76,77,
+ 108,345,1229,1264,1912,537,2765,2444,3883,196,
+ 2646,374,2552,2715,2980,3727,541,2980,392,427,
+ 56,198,1778,228,2864,588,35,1507,388,1780,
+ 156,2769,2517,173,56,343,1614,232,3576,180,
+ 3006,2912,2792,929,35,1507,388,203,215,4740,
+ 197,202,212,213,214,216,431,169,796,273,
+ 537,2552,250,230,231,1330,1614,168,322,3259,
+ 167,170,171,172,173,174,737,49,228,2788,
+ 588,35,1507,388,2793,156,1499,47,1607,1578,
+ 1761,232,2773,4893,180,3006,2912,2798,101,302,
+ 1323,505,203,215,4740,2912,202,212,213,214,
+ 216,517,169,2799,273,537,253,230,231,2110,
+ 1614,524,168,275,178,167,170,171,172,173,
+ 174,1354,56,228,1337,1144,1219,2453,3956,1614,
+ 156,56,503,504,1390,3863,4649,5505,1851,180,
+ 3006,2912,3545,929,35,1507,388,203,215,4740,
+ 160,202,212,213,214,216,603,169,56,56,
+ 537,2570,2984,3088,5505,328,335,168,340,176,
+ 167,170,171,172,173,174,56,49,228,5505,
+ 2980,2552,1614,1607,2446,156,1499,2448,4893,56,
+ 5505,5505,5505,2672,180,3006,2912,442,343,456,
+ 3260,1785,203,215,4740,2980,202,212,213,214,
+ 216,689,169,56,451,537,529,1144,1801,201,
+ 94,860,168,343,177,167,170,171,172,173,
+ 174,1550,2453,228,588,35,1507,388,5505,5505,
+ 156,332,156,1607,5505,5505,1039,5505,4893,180,
+ 3006,2912,2134,932,35,1507,388,203,215,4740,
+ 5505,202,212,213,214,216,775,169,433,5505,
+ 537,56,56,820,56,3992,4009,168,3873,187,
+ 167,170,171,172,173,174,2775,49,228,56,
+ 2980,5505,2453,2930,56,156,1499,47,1937,56,
+ 5505,332,5505,1449,180,3006,2912,56,343,5505,
+ 2456,1492,203,215,4740,5505,202,212,213,214,
+ 216,5505,169,929,35,1507,388,929,35,1507,
+ 388,3882,168,2585,3299,167,170,171,172,173,
+ 174,1952,35,943,32,3640,3333,27,30,31,
+ 966,1000,339,28,56,56,2717,49,537,4053,
+ 1144,49,588,35,1507,388,1499,2626,861,2647,
+ 1499,47,537,2980,56,56,343,1752,3980,3559,
+ 3260,5505,5505,156,2323,156,737,5505,56,5505,
+ 228,2517,1842,1672,200,3633,432,156,1607,860,
+ 319,2232,321,4893,314,2144,180,3006,2912,1500,
+ 929,35,1507,388,203,215,4740,313,202,212,
+ 213,214,216,947,169,56,1614,537,56,1535,
+ 5505,56,2987,5505,168,2061,192,167,170,171,
+ 172,173,174,2552,49,228,5505,2453,3956,5505,
+ 1607,5505,156,1499,47,4893,332,5505,378,5505,
+ 505,180,3006,2912,306,310,1221,2442,56,203,
+ 215,4740,2980,202,212,213,214,216,1033,169,
+ 56,199,537,3899,1144,3489,335,3896,2989,168,
+ 343,186,167,170,171,172,173,174,3043,2453,
+ 228,502,504,2129,35,293,2481,156,332,156,
+ 1144,56,5505,860,5505,962,180,3006,2912,2891,
+ 5505,5505,5505,1568,203,215,4740,5505,202,212,
+ 213,214,216,5505,169,156,5505,2552,5505,5505,
+ 4616,5505,3187,3321,168,162,194,167,170,171,
+ 172,173,174,3121,35,943,32,5505,3973,27,
+ 30,31,966,1000,26,28,866,25,23,50,
+ 1209,106,76,77,108,298,1229,1707,3121,35,
+ 943,32,5505,3973,27,30,31,966,1000,26,
+ 28,866,25,23,50,1209,106,76,77,108,
+ 5505,1229,1714,3121,35,943,32,2184,3973,27,
+ 30,31,966,1000,26,28,866,25,23,50,
+ 1209,106,76,77,108,5505,1722,3121,35,943,
+ 32,5505,3973,27,30,31,966,1000,26,28,
+ 866,25,23,50,1209,106,76,77,108,1614,
+ 1750,3121,35,943,32,5505,3973,27,30,31,
+ 966,1000,26,28,866,25,23,50,1209,106,
+ 76,77,108,1562,1757,56,1614,2980,56,1144,
+ 1614,3401,3531,1823,3946,5505,1614,2980,2129,2925,
+ 293,5505,2447,2722,56,228,2964,537,2980,5505,
+ 5505,5505,2552,5505,156,228,2552,2552,3456,1614,
+ 5505,1614,3558,1354,2894,343,343,1144,3030,205,
+ 215,4740,156,204,212,213,214,216,3321,205,
+ 215,4740,188,204,212,213,214,216,4629,860,
+ 3696,3245,160,3897,222,193,5505,5505,5505,1593,
+ 206,208,210,294,295,2635,1614,217,207,209,
+ 206,208,210,294,295,2635,737,217,207,209,
+ 2062,35,2854,32,3640,3333,27,30,31,966,
+ 1000,339,28,1976,35,1507,388,2408,3668,4404,
+ 1910,5505,2184,5505,2980,5505,190,2628,5505,4404,
+ 5505,5505,737,1354,5505,5505,5505,1144,5505,5505,
+ 2350,5505,228,5505,5505,5505,1354,49,1354,737,
+ 1144,5505,1144,5505,5505,5505,1499,936,3956,319,
+ 2232,321,160,314,2144,5505,205,215,4740,5505,
+ 204,212,213,214,216,160,1143,160,1691,35,
+ 943,32,3640,3333,27,30,31,966,1000,339,
+ 28,5505,5505,737,3956,334,335,206,208,210,
+ 294,295,2635,3892,217,207,209,3121,1525,943,
+ 1543,3956,3973,27,30,31,966,1000,26,28,
+ 866,25,23,50,1209,106,76,77,84,5505,
+ 3072,3497,335,5505,2855,5505,4404,319,2232,321,
+ 5505,314,2144,3105,5505,3246,5505,5505,330,335,
+ 5505,5505,5505,5505,313,3956,588,35,1507,388,
+ 5505,5505,5505,5505,5505,418,419,2849,3121,35,
+ 943,32,5505,3973,27,30,31,966,1000,26,
+ 28,866,25,23,50,1209,106,76,77,83,
+ 49,5505,3615,335,5505,5505,5505,5505,5505,1499,
+ 734,307,310,1221,3121,35,943,32,5505,3973,
+ 27,30,31,966,1000,26,28,866,25,23,
+ 50,1209,106,76,77,82,3121,35,943,32,
+ 5505,3973,27,30,31,966,1000,26,28,866,
+ 25,23,50,1209,106,76,77,81,3121,35,
+ 943,32,5505,3973,27,30,31,966,1000,26,
+ 28,866,25,23,50,1209,106,76,77,80,
+ 3121,35,943,32,5505,3973,27,30,31,966,
+ 1000,26,28,866,25,23,50,1209,106,76,
+ 77,79,3121,35,943,32,5505,3973,27,30,
+ 31,966,1000,26,28,866,25,23,50,1209,
+ 106,76,77,78,2950,35,943,32,5505,3973,
+ 27,30,31,966,1000,26,28,866,25,23,
+ 50,1209,106,76,77,104,3121,35,943,32,
+ 5505,3973,27,30,31,966,1000,26,28,866,
+ 25,23,50,1209,106,76,77,110,3121,35,
+ 943,32,5505,3973,27,30,31,966,1000,26,
+ 28,866,25,23,50,1209,106,76,77,109,
+ 3121,35,943,32,5505,3973,27,30,31,966,
+ 1000,26,28,866,25,23,50,1209,106,76,
+ 77,107,3121,35,943,32,5505,3973,27,30,
+ 31,966,1000,26,28,866,25,23,50,1209,
+ 106,76,77,105,1997,56,56,5505,2980,1144,
+ 1144,5505,5505,5505,1649,5505,5505,5505,2980,5505,
+ 5505,5505,5505,5505,1736,5505,228,5505,2980,5505,
+ 5505,5505,5505,5505,156,156,228,5505,5505,5505,
+ 5505,5505,5505,5505,2914,2978,228,5505,5505,5505,
+ 205,215,4740,5505,204,212,213,214,216,5505,
+ 205,215,4740,5505,204,212,213,214,216,5505,
+ 205,215,4740,5505,204,212,213,214,216,5505,
+ 1330,206,208,210,294,295,2635,5505,520,207,
+ 209,206,208,210,294,295,2635,5505,519,207,
+ 209,206,208,210,294,295,2635,2084,218,207,
+ 209,2980,56,5505,5505,5505,1144,2171,5505,5505,
+ 2912,2980,5505,5505,5505,5505,5505,56,56,228,
+ 5505,537,2980,5505,5505,5505,376,5505,5505,228,
+ 5505,156,5505,5505,5505,5505,5505,5505,5505,343,
+ 343,1967,5505,205,215,4740,156,204,212,213,
+ 214,216,5505,205,215,4740,1758,204,212,213,
+ 214,216,860,860,5505,5505,5505,5505,5505,5505,
+ 5505,5505,1715,1611,206,208,210,294,295,2635,
+ 5505,305,207,209,206,208,210,294,295,2635,
+ 5505,499,207,209,1691,35,943,32,3640,3333,
+ 27,30,31,966,1000,339,28,5505,5505,5505,
+ 5505,5505,5505,2156,35,943,32,5505,3513,27,
+ 30,31,966,1000,339,28,2156,35,943,32,
+ 3578,3513,27,30,31,966,1000,339,28,1691,
+ 35,943,32,3640,3333,27,30,31,966,1000,
+ 339,28,5505,319,2232,321,5505,314,2144,2034,
+ 5505,5505,2453,5505,4893,56,5505,5505,5505,1144,
+ 3216,333,319,2232,321,2453,317,2144,3280,35,
+ 1507,388,5505,741,333,319,2232,321,5505,315,
+ 2144,238,1354,5505,156,5505,1144,5505,319,2232,
+ 321,1180,314,2144,3901,2980,4954,5505,2453,5505,
+ 5505,5505,273,5505,5505,3277,5505,4649,5505,5505,
+ 5505,160,5505,228,5505,1490,35,943,32,2595,
+ 3333,27,30,31,966,1000,339,28,5505,5505,
+ 232,5505,5505,5505,5505,5505,5505,914,407,4715,
+ 2236,35,943,32,2391,3333,27,30,31,966,
+ 1000,339,28,403,5505,236,230,231,1285,5505,
+ 1375,5505,2980,4954,2980,4893,274,5505,408,409,
+ 410,294,295,2635,316,2767,321,5505,5505,3372,
+ 228,5505,2517,5505,5505,243,246,249,252,1176,
+ 5505,96,5505,2625,5505,5505,5505,5505,876,316,
+ 2767,321,5505,5505,914,407,4715,5505,5505,2453,
+ 5505,5505,5505,929,35,1507,388,5505,332,2151,
+ 35,1507,388,5505,5505,929,35,1507,388,5505,
+ 5505,5505,5505,5505,5505,408,409,410,294,295,
+ 2635,5505,5505,929,35,1507,388,49,5505,5505,
+ 2989,360,5505,49,411,413,1499,47,5505,49,
+ 2625,5505,1499,47,5505,2829,2589,2591,1499,47,
+ 2867,5505,5505,3324,5505,56,2534,49,1099,537,
+ 56,4758,3424,5505,2980,5505,1499,47,5505,2164,
+ 35,1507,388,588,35,1507,388,343,3324,5505,
+ 3552,5505,343,5505,156,588,35,1507,388,588,
+ 35,1507,388,5505,1672,5505,588,35,1507,388,
+ 860,411,414,49,5505,860,5505,49,5505,5505,
+ 1930,5505,1499,47,5505,2851,1499,816,5505,49,
+ 2208,56,5505,49,2980,537,3091,56,1499,931,
+ 49,2980,1499,659,588,35,1507,388,5505,1499,
+ 936,56,343,343,5505,537,5505,56,5505,343,
+ 156,2980,530,5505,56,5505,5505,5505,2980,5505,
+ 188,5505,5505,343,5505,860,4629,5505,49,343,
+ 156,5505,860,5505,5505,533,343,1499,2262,5505,
+ 188,5505,509,5505,5505,5505,4629,5505,5505,5505,
+ 5505,5505,860,5505,5505,5505,5505,5505,5505,860,
+ 5505,5505,507,5505,5505,5505,5505,5505,5505,534,
+ 5505,5505,5505,5505,5505,5505,5505,5505,5505,5505,
+ 5505,5505,5505,5505,3866,5505,5505,5505,5505,5505,
+ 5505,5505,5505,5505,5505,5505,5505,5505,5505,5505,
+ 5505,5505,5505,5505,3870,5505,5505,5505,5505,5505,
+ 5505,5505,5505,5505,5505,5505,5505,5505,5505,5505,
+ 5505,5505,5505,5505,5505,5505,5505,5505,5505,5505,
+ 5505,5505,5505,5505,5505,5505,5505,5505,5505,5505,
+ 5505,5505,5505,5505,5505,5505,5505,5505,5505,5505,
+ 5505,5505,5505,5505,5505,5505,5505,5505,5505,5505,
+ 5505,5505,5505,5505,5505,5505,5505,5505,5505,5505,
+ 5505,5505,5505,5505,5505,5505,5505,5505,3374,5505,
+ 0,39,5520,0,39,5519,0,662,29,0,
+ 440,1407,0,454,1451,0,38,627,0,38,
+ 5520,0,38,5519,0,2780,126,0,1,444,
+ 0,458,1009,0,457,1319,0,2432,91,0,
+ 662,387,0,35,33,0,32,34,0,39,
+ 627,0,1,929,0,1,5777,0,1,5776,
+ 0,1,5775,0,1,5774,0,1,5773,0,
+ 1,5772,0,1,5771,0,1,5770,0,1,
+ 5769,0,1,5768,0,1,5767,0,39,1,
+ 5520,0,39,1,5519,0,2140,1,0,283,
+ 394,0,283,286,0,5739,241,0,5738,241,
+ 0,5843,241,0,5842,241,0,5766,241,0,
+ 5765,241,0,5764,241,0,5763,241,0,5762,
+ 241,0,5761,241,0,5760,241,0,5759,241,
+ 0,5777,241,0,5776,241,0,5775,241,0,
+ 5774,241,0,5773,241,0,5772,241,0,5771,
+ 241,0,5770,241,0,5769,241,0,5768,241,
+ 0,5767,241,0,39,5520,241,0,39,5519,
+ 241,0,5543,241,0,5520,48,0,5519,48,
+ 0,5511,1,0,5510,1,0,3311,237,0,
+ 32,388,0,29,387,0,43,5541,0,43,
+ 37,0,2780,128,0,2780,127,0,331,445,
+ 0,5543,1,0,39,1,0,47,37,0,
+ 1,92,0,501,2630,0,5543,1,229,0,
+ 39,1,229,0,229,416,0,5520,37,0,
+ 5519,37,0,5520,2,37,0,5519,2,37,
+ 0,5520,36,0,5519,36,0,5541,45,0,
+ 37,45,0,5515,405,0,5514,405,0,1,
+ 4584,0,1,3193,0,1,627,0,229,415,
+ 0,3379,318,0,331,95,0,35,73,0,
+ 1,331,0,3993,278,0,501,4394,0,1,
+ 229,0,229,220,0,229,219,0,1,575,
+ 0,1,1885,0,5517,1,0,5513,1,0,
+ 1,229,3079,0,5514,229,0,3080,229,0,
+ 5517,383,0,5516,383,0,3213,229,0,10,
+ 12,0,8,10,12,0,185,3613,0,3314,
+ 383,0,8,12,0
};
};
public final static char baseAction[] = BaseAction.baseAction;
@@ -1462,346 +1474,346 @@ public class CPPExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, CP
public interface TermAction {
public final static char termAction[] = {0,
- 5444,5409,5388,5388,5388,5388,5388,5388,5425,5388,
+ 5505,5470,5449,5449,5449,5449,5449,5449,5486,5449,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,5413,1,1,
+ 1,1,1,1,1,1,1,5474,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,139,1,
- 1,1,1,1,1,1,1,1,1,958,
- 1,5619,1541,115,3041,1,1,5455,39,3830,
- 5444,5451,5482,4831,3039,3440,3285,2240,3211,3378,
- 3190,3438,593,3414,4338,3411,10,5428,5428,5428,
- 5428,5428,5428,5428,5428,5428,5428,5428,5428,5428,
- 5428,5428,5428,5428,5428,5428,5428,5428,5428,5428,
- 5428,5428,5428,5428,5428,5428,5428,5428,5428,5428,
- 5428,5428,5428,5428,5428,5428,5428,5428,5428,5428,
- 5428,5428,5428,5428,331,5428,5428,5428,5428,5428,
- 5428,395,5428,5428,5428,5428,5428,5428,5428,1187,
- 5428,5428,5428,5428,3358,3806,3782,5428,384,5444,
- 5428,5428,5428,5428,5428,5428,5428,5428,5428,5428,
- 5428,5428,8,5431,5431,5431,5431,5431,5431,5431,
- 5431,5431,5431,5431,5431,5431,5431,5431,5431,5431,
- 5431,5431,5431,5431,5431,5431,5431,5431,5431,5431,
- 5431,5431,5431,5431,5431,5431,5431,5431,5431,5431,
- 5431,5431,5431,5431,5431,5431,5431,5431,5431,5431,
- 5444,5431,5431,5431,5431,5431,5431,1912,5431,5431,
- 5431,5431,5431,5431,5431,301,5431,5431,5431,5431,
- 286,5181,5181,5431,283,5744,5431,5431,5431,5431,
- 5431,5431,5431,5431,5431,5431,5431,5431,5444,5409,
- 5388,5388,5388,5388,5388,5388,5416,5388,1,1,
+ 1,1,1,1,1,1,1,1,1,1585,
+ 1,5680,1265,115,2871,1,1,5516,39,3841,
+ 5505,5512,5543,4507,2637,3186,3192,2240,3163,3074,
+ 3181,3102,593,3096,3546,3090,10,5489,5489,5489,
+ 5489,5489,5489,5489,5489,5489,5489,5489,5489,5489,
+ 5489,5489,5489,5489,5489,5489,5489,5489,5489,5489,
+ 5489,5489,5489,5489,5489,5489,5489,5489,5489,5489,
+ 5489,5489,5489,5489,5489,5489,5489,5489,5489,5489,
+ 5489,5489,5489,5489,331,5489,5489,5489,5489,5489,
+ 5489,395,5489,5489,5489,5489,5489,5489,5489,1187,
+ 5489,5489,5489,5489,3403,3817,3793,5489,384,5505,
+ 5489,5489,5489,5489,5489,5489,5489,5489,5489,5489,
+ 5489,5489,8,5492,5492,5492,5492,5492,5492,5492,
+ 5492,5492,5492,5492,5492,5492,5492,5492,5492,5492,
+ 5492,5492,5492,5492,5492,5492,5492,5492,5492,5492,
+ 5492,5492,5492,5492,5492,5492,5492,5492,5492,5492,
+ 5492,5492,5492,5492,5492,5492,5492,5492,5492,5492,
+ 5505,5492,5492,5492,5492,5492,5492,2239,5492,5492,
+ 5492,5492,5492,5492,5492,301,5492,5492,5492,5492,
+ 286,5242,5242,5492,283,5805,5492,5492,5492,5492,
+ 5492,5492,5492,5492,5492,5492,5492,5492,5505,5470,
+ 5449,5449,5449,5449,5449,5449,5477,5449,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,5413,1,1,1,1,
+ 1,1,1,1,1,5474,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,5444,1,1,1,
- 1,1,1,439,1,1,1,958,1,5619,
- 1541,5444,3041,1,1,5455,5444,5083,5080,5452,
- 5482,5444,3039,3440,3285,2240,3211,3378,3190,3438,
- 593,3414,4338,3411,5444,5409,5388,5388,5388,5388,
- 5388,5388,5416,5388,1,1,1,1,1,1,
+ 1,1,1,1,1,1,5505,1,1,1,
+ 1,1,1,439,1,1,1,1585,1,5680,
+ 1265,5505,2871,1,1,5516,5505,5144,5141,5513,
+ 5543,5505,2637,3186,3192,2240,3163,3074,3181,3102,
+ 593,3096,3546,3090,5505,5470,5449,5449,5449,5449,
+ 5449,5449,5477,5449,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,5413,1,1,1,1,1,1,1,1,
+ 1,5474,1,1,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,135,
- 1,1,1,958,1,5619,1541,117,3041,1,
- 1,5455,111,3830,5444,5879,5880,5881,3039,3440,
- 3285,2240,3211,3378,3190,3438,593,3414,4338,3411,
- 5444,5409,5388,5388,5388,5388,5388,5388,5416,5388,
+ 1,1,5512,1,1,1,1,1,1,135,
+ 1,1,1,1585,1,5680,1265,117,2871,1,
+ 1,5516,111,3841,5505,5940,5941,5942,2637,3186,
+ 3192,2240,3163,3074,3181,3102,593,3096,3546,3090,
+ 5505,5470,5449,5449,5449,5449,5449,5449,5477,5449,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,5413,1,1,
+ 1,1,1,1,1,1,1,5474,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,5444,1,
- 1,1,1,1,1,136,1,1,1,958,
- 1,5619,1541,131,3041,1,1,5455,2328,3806,
- 3782,4249,595,4271,3039,3440,3285,2240,3211,3378,
- 3190,3438,593,3414,4338,3411,5444,5409,5388,5388,
- 5388,5388,5388,5388,5416,5388,1,1,1,1,
+ 1,1,1,1,1,1,1,1,5505,1,
+ 1,1,1,1,1,136,1,1,1,1585,
+ 1,5680,1265,131,2871,1,1,5516,2328,3817,
+ 3793,4296,595,4318,2637,3186,3192,2240,3163,3074,
+ 3181,3102,593,3096,3546,3090,5505,5470,5449,5449,
+ 5449,5449,5449,5449,5477,5449,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,5413,1,1,1,1,1,1,
+ 1,1,1,5474,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,5444,1,1,1,1,1,
- 1,5444,1,1,1,958,1,5619,1541,116,
- 3041,1,1,5455,2328,3830,121,5444,5458,5459,
- 3039,3440,3285,2240,3211,3378,3190,3438,593,3414,
- 4338,3411,5444,5409,5388,5388,5388,5388,5388,5388,
- 5416,5388,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,5413,
+ 1,1,1,1,5505,1,1,1,1,1,
+ 1,5505,1,1,1,1585,1,5680,1265,116,
+ 2871,1,1,5516,2328,3841,121,5505,5519,5520,
+ 2637,3186,3192,2240,3163,3074,3181,3102,593,3096,
+ 3546,3090,5505,5470,5449,5449,5449,5449,5449,5449,
+ 5477,5449,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,5474,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 5444,1,1,1,1,1,1,5444,1,1,
- 1,958,1,5619,1541,5444,3041,1,1,5455,
- 2624,3806,3782,3142,3168,5444,3039,3440,3285,2240,
- 3211,3378,3190,3438,593,3414,4338,3411,5444,5409,
- 5388,5388,5388,5388,5388,5388,5416,5388,1,1,
+ 5505,1,1,1,1,1,1,5505,1,1,
+ 1,1585,1,5680,1265,5505,2871,1,1,5516,
+ 2551,3817,3793,3133,3159,5505,2637,3186,3192,2240,
+ 3163,3074,3181,3102,593,3096,3546,3090,5505,5470,
+ 5449,5449,5449,5449,5449,5449,5477,5449,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,5413,1,1,1,1,
+ 1,1,1,1,1,5474,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,336,1,1,1,
- 1,1,1,1922,1,1,1,958,1,5619,
- 1541,5444,3041,1,1,5455,5444,5458,5459,5781,
- 5782,2624,3039,3440,3285,2240,3211,3378,3190,3438,
- 593,3414,4338,3411,5444,5409,5388,5388,5388,5388,
- 5388,5388,5416,5388,1,1,1,1,1,1,
+ 1,1,1,2316,1,1,1,1585,1,5680,
+ 1265,5505,2871,1,1,5516,5505,5519,5520,5842,
+ 5843,2551,2637,3186,3192,2240,3163,3074,3181,3102,
+ 593,3096,3546,3090,5505,5470,5449,5449,5449,5449,
+ 5449,5449,5477,5449,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,5413,1,1,1,1,1,1,1,1,
+ 1,5474,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,5444,1,1,1,1,1,1,5444,
- 1,1,1,958,1,5619,1541,1,3041,1,
- 1,5455,5444,5083,5080,5406,5482,5444,3039,3440,
- 3285,2240,3211,3378,3190,3438,593,3414,4338,3411,
- 5444,5409,5388,5388,5388,5388,5388,5388,5416,5388,
+ 1,1,5505,1,1,1,1,1,1,5505,
+ 1,1,1,1585,1,5680,1265,1,2871,1,
+ 1,5516,5505,5144,5141,5467,5543,5505,2637,3186,
+ 3192,2240,3163,3074,3181,3102,593,3096,3546,3090,
+ 5505,5470,5449,5449,5449,5449,5449,5449,5477,5449,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,5413,1,1,
+ 1,1,1,1,1,1,1,5474,1,1,
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,1965,1,1,1,958,
- 1,5619,1541,5444,3041,1,1,5455,5444,5267,
- 5264,48,5267,5264,3039,3440,3285,2240,3211,3378,
- 3190,3438,593,3414,4338,3411,5444,5409,5388,5388,
- 5388,5388,5388,5388,5416,5388,1,1,1,1,
+ 1,1,1,1,1,1,1,1,5512,1,
+ 1,1,1,1,1,2364,1,1,1,1585,
+ 1,5680,1265,5505,2871,1,1,5516,5505,5328,
+ 5325,48,5328,5325,2637,3186,3192,2240,3163,3074,
+ 3181,3102,593,3096,3546,3090,5505,5470,5449,5449,
+ 5449,5449,5449,5449,5477,5449,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,5413,1,1,1,1,1,1,
+ 1,1,1,5474,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,5444,1,1,1,1,1,
- 1,5444,1,1,1,958,1,5619,1541,5444,
- 3041,1,1,5455,114,5444,91,5448,3330,5116,
- 3039,3440,3285,2240,3211,3378,3190,3438,593,3414,
- 4338,3411,5444,3388,1,1,1,1,1,1,
- 3394,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,5453,
+ 1,1,1,1,5505,1,1,1,1,1,
+ 1,5505,1,1,1,1585,1,5680,1265,5505,
+ 2871,1,1,5516,114,5505,91,5509,3311,5177,
+ 2637,3186,3192,2240,3163,3074,3181,3102,593,3096,
+ 3546,3090,5505,3079,1,1,1,1,1,1,
+ 3080,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,5514,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 5444,1,1,1,1,1,1,5444,1,1,
- 1,958,1,5619,1541,5444,3041,1,1,5455,
- 5444,1752,5444,4249,5773,4271,3039,3440,3285,2240,
- 3211,3378,3190,3438,593,3414,4338,3411,39,5083,
- 5080,4830,2140,4056,4139,2878,5447,4161,792,5708,
- 5706,5715,5714,5710,5711,5709,5712,5713,5716,5707,
- 5704,5781,5782,4117,4086,137,5698,5705,5701,5677,
- 5703,5702,5699,5700,5678,4205,4183,5463,5842,631,
- 617,780,5465,653,3115,663,5444,5466,5464,584,
- 5460,5461,5462,5444,2086,5843,5844,2879,1373,5444,
- 5319,5319,229,5315,229,229,229,5323,229,1,
+ 5505,1,1,1,1,1,1,5505,1,1,
+ 1,1585,1,5680,1265,5505,2871,1,1,5516,
+ 5505,1328,5505,4296,1129,4318,2637,3186,3192,2240,
+ 3163,3074,3181,3102,593,3096,3546,3090,39,5144,
+ 5141,3544,2140,4067,4186,3193,5508,4208,792,5769,
+ 5767,5776,5775,5771,5772,5770,5773,5774,5777,5768,
+ 5765,5842,5843,4164,4128,137,5759,5766,5762,5738,
+ 5764,5763,5760,5761,5739,4252,4230,5524,5903,631,
+ 617,822,5526,653,3106,681,5505,5527,5525,584,
+ 5521,5522,5523,5505,1263,5904,5905,2434,1373,5505,
+ 5380,5380,229,5376,229,229,229,5384,229,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,5444,3468,229,1,1,1,
- 1,1,1,1,1,1,5444,5083,5080,1,
- 2140,5128,125,2878,224,133,5444,5312,394,5178,
- 5178,5444,283,5444,1967,1,1,1,2646,225,
- 5856,566,397,5458,5459,2278,5704,5781,5782,358,
- 416,229,5698,5705,5701,5677,5703,5702,5699,5700,
- 5678,5704,5781,5782,939,5944,5444,5698,5705,5701,
- 5677,5703,5702,5699,5700,5678,283,5444,5444,8836,
- 8836,5879,5880,5881,5444,5319,5319,229,5315,229,
- 229,229,5367,229,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,3142,
- 3168,229,1,1,1,1,1,1,1,1,
- 1,3043,33,2360,1,5122,5480,5444,5122,5444,
- 5122,5122,5312,37,5306,5306,8,5456,5306,5801,
- 1,1,1,2646,5441,5856,566,5122,5122,5122,
- 43,5288,5288,1,129,415,229,5444,5444,5122,
- 5122,161,345,5083,5080,2556,2140,627,331,2878,
- 5944,331,5444,5444,1,5303,5303,5122,5300,5444,
- 331,2680,363,331,124,5122,5879,5880,5881,1,
- 5122,5122,5122,5122,5122,5122,5455,5079,5285,367,
- 5171,5167,2556,5175,627,1,2878,5441,1,5122,
- 5122,5122,5122,5122,5122,5122,5122,5122,5122,5122,
- 5122,5122,5122,5122,5444,1933,161,5122,5122,5122,
- 5122,5122,5122,5122,5122,5122,5122,5122,5122,5122,
- 5444,5122,5122,5125,118,1971,5125,363,5125,5125,
- 2477,2404,29,387,387,5282,387,387,5282,387,
- 5282,5282,1933,3715,363,5125,5125,5125,1225,3757,
- 2773,3142,3168,5444,387,387,387,5125,5125,5282,
+ 1,1,1,1,5505,3211,229,1,1,1,
+ 1,1,1,1,1,1,5505,5144,5141,1,
+ 2140,5189,125,3193,224,133,5505,5373,394,5239,
+ 5239,5505,283,5505,2389,1,1,1,3693,225,
+ 5917,566,397,5519,5520,2278,5765,5842,5843,358,
+ 416,229,5759,5766,5762,5738,5764,5763,5760,5761,
+ 5739,5765,5842,5843,939,6005,5505,5759,5766,5762,
+ 5738,5764,5763,5760,5761,5739,283,5505,5505,8897,
+ 8897,5940,5941,5942,5505,5380,5380,229,5376,229,
+ 229,229,5428,229,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,3133,
+ 3159,229,1,1,1,1,1,1,1,1,
+ 1,3366,33,2360,1,5183,5541,5505,5183,5505,
+ 5183,5183,5373,37,5367,5367,8,5517,5367,5862,
+ 1,1,1,3693,5502,5917,566,5183,5183,5183,
+ 43,5349,5349,1,129,415,229,5505,5505,5183,
+ 5183,161,345,5144,5141,2556,2140,627,331,3193,
+ 6005,331,5505,5505,1,5364,5364,5183,5361,5505,
+ 331,2621,363,331,124,5183,5940,5941,5942,1,
+ 5183,5183,5183,5183,5183,5183,5516,5140,5346,367,
+ 5232,5228,2556,5236,627,1,3193,5502,1,5183,
+ 5183,5183,5183,5183,5183,5183,5183,5183,5183,5183,
+ 5183,5183,5183,5183,5505,1933,161,5183,5183,5183,
+ 5183,5183,5183,5183,5183,5183,5183,5183,5183,5183,
+ 5505,5183,5183,5186,118,1971,5186,363,5186,5186,
+ 2477,2404,29,387,387,5343,387,387,5343,387,
+ 5343,5343,1933,3484,363,5186,5186,5186,1225,3768,
+ 3743,3133,3159,5505,387,387,387,5186,5186,5343,
387,387,387,387,387,387,387,387,387,1,
- 5171,5167,5358,5175,5364,5125,5361,5454,5444,38,
- 5101,5098,237,5125,5095,5276,2878,5086,5125,5125,
- 5125,5125,5125,5125,138,5282,5453,309,5171,5167,
- 4504,5175,627,5379,2878,5282,5379,5125,5125,5125,
- 5125,5125,5125,5125,5125,5125,5125,5125,5125,5125,
- 5125,5125,36,5343,5340,5125,5125,5125,5125,5125,
- 5125,5125,5125,5125,5125,5125,5125,5125,123,5125,
- 5125,5444,5388,5388,229,5388,229,229,229,5391,
+ 5232,5228,5419,5236,5425,5186,5422,5515,5505,38,
+ 5162,5159,237,5186,5156,5337,3193,5147,5186,5186,
+ 5186,5186,5186,5186,138,5343,5514,309,5232,5228,
+ 4584,5236,627,5440,3193,5343,5440,5186,5186,5186,
+ 5186,5186,5186,5186,5186,5186,5186,5186,5186,5186,
+ 5186,5186,36,5404,5401,5186,5186,5186,5186,5186,
+ 5186,5186,5186,5186,5186,5186,5186,5186,123,5186,
+ 5186,5505,5449,5449,229,5449,229,229,229,5452,
229,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,5444,5444,229,1,
- 1,8747,1,1,1,1,1,1,444,1,
- 1,1,1,5444,5107,226,39,5107,5444,5385,
- 5482,5454,331,5444,2278,331,139,1,1,1,
- 3485,5450,5655,1541,458,3041,457,5704,5781,5782,
- 5453,5444,220,5698,5705,5701,5677,5703,5702,5699,
- 5700,5678,290,5458,5459,3142,3168,5944,5444,5388,
- 5388,229,5388,229,229,229,229,229,1,1,
+ 1,1,1,1,1,1,5505,5505,229,1,
+ 1,8808,1,1,1,1,1,1,444,1,
+ 1,1,1,5505,5168,226,39,5168,5505,5446,
+ 5543,5515,331,5505,2278,331,139,1,1,1,
+ 3878,5511,5716,1265,458,2871,457,5765,5842,5843,
+ 5514,5505,220,5759,5766,5762,5738,5764,5763,5760,
+ 5761,5739,290,5519,5520,3133,3159,6005,5505,5449,
+ 5449,229,5449,229,229,229,229,229,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,3949,5444,229,1,1,8747,1,
- 1,1,1,1,1,1890,5449,5110,1,5113,
- 1,5171,5167,4504,5175,627,5385,2878,347,113,
- 134,1580,132,2795,1,1,1,3485,130,5655,
- 1541,595,3041,370,5444,5083,5080,1187,2140,627,
- 532,2878,3358,1847,1804,1761,1718,1675,1632,1589,
- 1546,1503,1460,5444,5944,5444,5388,5388,229,5388,
- 229,229,229,5394,229,1,1,1,1,1,
+ 1,1,1,3960,5505,229,1,1,8808,1,
+ 1,1,1,1,1,1890,5510,5171,1,5174,
+ 1,5232,5228,4584,5236,627,5446,3193,347,113,
+ 134,1709,132,2759,1,1,1,3878,130,5716,
+ 1265,595,2871,370,5505,5144,5141,1187,2140,627,
+ 532,3193,3403,1847,1804,1761,1718,1675,1632,1589,
+ 1546,1503,1460,5505,6005,5505,5449,5449,229,5449,
+ 229,229,229,5455,229,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 5444,1933,229,1,1,8747,1,1,1,1,
- 1,1,445,39,39,1,5482,5444,5297,227,
- 3278,5297,1285,5385,1,5452,112,3439,4249,5444,
- 4271,1,1,1,3485,3276,5655,1541,2360,3041,
- 2442,5704,5781,5782,2477,2404,219,5698,5705,5701,
- 5677,5703,5702,5699,5700,5678,5444,37,5306,5306,
- 3377,5944,5444,5388,5388,229,5388,229,229,229,
- 5391,229,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1005,5451,229,
- 1,1,8747,1,1,1,1,1,1,5444,
- 5083,5080,1,2140,5128,1281,2878,92,1,1,
- 5385,1,348,5309,122,4249,5309,4271,1,1,
- 1,3485,5444,5655,1541,4339,3041,1,5171,5167,
- 2556,5175,627,220,2878,5270,5444,5444,5171,5167,
- 4504,5175,627,5379,2878,368,5379,1268,5944,5444,
- 5388,5388,229,5388,229,229,229,5391,229,1,
+ 5505,1933,229,1,1,8808,1,1,1,1,
+ 1,1,445,39,39,1,5543,5505,5358,227,
+ 3037,5358,1285,5446,1,5513,112,4880,4296,5505,
+ 4318,1,1,1,3878,1580,5716,1265,2360,2871,
+ 2897,5765,5842,5843,2477,2404,219,5759,5766,5762,
+ 5738,5764,5763,5760,5761,5739,5505,37,5367,5367,
+ 2627,6005,5505,5449,5449,229,5449,229,229,229,
+ 5452,229,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1005,5512,229,
+ 1,1,8808,1,1,1,1,1,1,5505,
+ 5144,5141,1,2140,5189,1281,3193,92,1,1,
+ 5446,1,348,5370,122,4296,5370,4318,1,1,
+ 1,3878,5505,5716,1265,3670,2871,1,5232,5228,
+ 2556,5236,627,220,3193,5331,5505,5505,5232,5228,
+ 4584,5236,627,5440,3193,368,5440,1268,6005,5505,
+ 5449,5449,229,5449,229,229,229,5452,229,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,5444,1933,229,1,1,8747,
- 1,1,1,1,1,1,5444,5329,5326,1,
- 1933,1,5171,5167,4504,5175,627,5385,2878,309,
- 5273,3142,3168,375,120,1,1,1,3485,2064,
- 5655,1541,5444,3041,1330,5444,5458,5459,309,5444,
- 220,157,345,39,39,2437,5482,100,331,3757,
- 2773,331,5444,5444,5480,5944,5444,5388,5388,229,
- 5388,229,229,229,229,229,1,1,1,1,
+ 1,1,1,1,5505,1933,229,1,1,8808,
+ 1,1,1,1,1,1,5505,5390,5387,1,
+ 1933,1,5232,5228,4584,5236,627,5446,3193,309,
+ 5334,3133,3159,375,120,1,1,1,3878,2064,
+ 5716,1265,5505,2871,1330,5505,5519,5520,309,5505,
+ 220,157,345,39,39,2437,5543,100,331,3768,
+ 3743,331,5505,5505,5541,6005,5505,5449,5449,229,
+ 5449,229,229,229,229,229,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,119,5444,229,1,1,8747,1,1,1,
- 1,1,1,95,39,39,1,5482,5444,5373,
- 4227,879,5373,5444,5385,1933,3757,2773,405,301,
- 4634,1417,1,1,1,3485,5352,5655,1541,5744,
- 3041,1,5171,5167,4504,5175,627,5444,2878,1,
- 5171,5167,2556,5175,627,5355,2878,3044,5444,5336,
- 5332,3468,5944,5444,5388,5388,229,5388,229,229,
+ 1,119,5505,229,1,1,8808,1,1,1,
+ 1,1,1,95,39,39,1,5543,5505,5434,
+ 4274,879,5434,5505,5446,1933,3768,3743,405,301,
+ 4492,1417,1,1,1,3878,5413,5716,1265,5805,
+ 2871,1,5232,5228,4584,5236,627,5505,3193,1,
+ 5232,5228,2556,5236,627,5416,3193,3658,5505,5397,
+ 5393,3211,6005,5505,5449,5449,229,5449,229,229,
229,229,229,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1924,185,
- 229,1,1,8747,1,1,1,1,1,1,
- 37,39,5444,1,5444,5482,5480,4352,5444,5458,
- 5459,5385,1933,2064,5444,4450,5456,3196,515,1,
- 1,1,3485,1826,5655,1541,1,3041,47,2437,
- 5444,8668,8265,1,341,331,5083,5080,4504,2140,
- 627,5403,2878,5444,8668,8265,5444,5444,5480,5944,
- 5444,5388,5388,229,5388,229,229,229,229,229,
+ 229,1,1,8808,1,1,1,1,1,1,
+ 37,39,5505,1,5505,5543,5541,3865,5505,5519,
+ 5520,5446,1933,2064,5505,4497,5517,3190,515,1,
+ 1,1,3878,1826,5716,1265,1,2871,47,2437,
+ 5505,8729,8326,1,341,331,5144,5141,4584,2140,
+ 627,5464,3193,5505,8729,8326,5505,5505,5541,6005,
+ 5505,5449,5449,229,5449,229,229,229,229,229,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,5455,1138,229,1,1,
- 8747,1,1,1,1,1,1,1,882,1933,
- 1,5444,5267,5264,341,5450,341,396,5385,341,
- 5455,387,3277,5879,5880,5881,1,1,1,3485,
- 5435,5655,1541,1,3041,1,5171,5167,5358,5175,
- 5364,363,5361,311,75,5444,2684,3463,5444,1,
- 1,1,1,1,1,1,5944,1,1,1,
+ 1,1,1,1,1,5516,1138,229,1,1,
+ 8808,1,1,1,1,1,1,1,882,1933,
+ 1,5505,5328,5325,341,5511,341,396,5446,341,
+ 5516,387,3884,5940,5941,5942,1,1,1,3878,
+ 5496,5716,1265,1,2871,1,5232,5228,5419,5236,
+ 5425,363,5422,311,75,5505,2892,3903,5505,1,
+ 1,1,1,1,1,1,6005,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 5444,5444,662,1,1,5444,4227,879,4456,5444,
- 5449,5506,5507,126,48,1,1,1,5459,1,
- 1,1,1,1,1,1,5444,1,1,1,
- 1,1,1,5444,362,5444,363,2014,1,5980,
- 1044,5444,1095,1,1,1,5171,5167,4830,5175,
- 4056,4139,2878,363,4161,5131,5158,5164,5137,5140,
- 5152,5149,5155,5146,5143,5134,5161,5444,2818,5459,
- 4117,4086,5845,5444,5083,5080,5444,2140,627,580,
- 2878,5104,4205,4183,5463,5444,631,617,780,5465,
- 653,3115,663,668,5466,5464,584,5460,5461,5462,
- 37,5306,5306,5956,3195,1373,331,2719,2653,318,
- 39,39,5370,516,39,5083,5080,4830,2140,4056,
- 4139,2878,5438,4161,996,5708,5706,5715,5714,5710,
- 5711,5709,5712,5713,5716,5707,5444,5458,5459,4117,
- 4086,627,5444,2878,5885,4573,1,5444,5480,2437,
- 3626,4205,4183,5463,5270,631,617,780,5465,653,
- 3115,663,428,5466,5464,584,5460,5461,5462,45,
- 5349,5349,1933,5444,1373,5444,1,5444,5444,5329,
- 5326,5422,5444,5450,528,5451,141,5083,5080,4830,
- 2140,4056,4139,2878,5444,4161,996,5708,5706,5715,
- 5714,5710,5711,5709,5712,5713,5716,5707,5444,1933,
- 1,4117,4086,37,5306,5306,3495,5346,163,5273,
- 128,29,5444,4205,4183,5463,5480,631,617,780,
- 5465,653,3115,663,925,5466,5464,584,5460,5461,
- 5462,3501,2853,3196,5444,3985,1373,3878,5449,528,
- 5899,39,39,1,5171,5167,4830,5175,4056,4139,
- 2878,5480,4161,5131,5158,5164,5137,5140,5152,5149,
- 5155,5146,5143,5134,5161,2818,662,3331,4117,4086,
- 395,5444,5444,163,388,320,1894,127,5291,5454,
- 4205,4183,5463,424,631,617,780,5465,653,3115,
- 663,5444,5466,5464,584,5460,5461,5462,5453,103,
- 5444,5444,3963,1373,2719,2653,99,5444,39,39,
- 39,5083,5080,4830,2140,4056,4139,2878,5419,4161,
- 996,5708,5706,5715,5714,5710,5711,5709,5712,5713,
- 5716,5707,2818,5444,521,4117,4086,2274,1933,5444,
- 5444,278,3570,1,5382,5294,39,4205,4183,5463,
- 5482,631,617,780,5465,653,3115,663,5444,5466,
- 5464,584,5460,5461,5462,1,1,5444,2055,1050,
- 1373,2719,2653,291,5444,5397,5397,5422,39,5083,
- 5080,4830,2140,4056,4139,2878,5419,4161,996,5708,
- 5706,5715,5714,5710,5711,5709,5712,5713,5716,5707,
- 29,440,454,4117,4086,5400,5400,48,4337,387,
- 5444,5458,5444,3208,3208,4205,4183,5463,395,631,
- 617,780,5465,653,3115,663,73,5466,5464,584,
- 5460,5461,5462,5803,1,5444,1,823,1373,5913,
- 5907,1,2102,5911,5454,5422,289,448,5444,191,
- 5444,5444,3468,3105,426,5086,5089,5092,5444,5905,
- 5906,4640,5458,5453,5119,662,449,2795,191,420,
- 308,5936,5937,662,5444,5914,5444,4879,5444,4632,
- 5444,5376,5444,4898,5444,3562,1,4917,5444,5916,
- 3705,4449,5444,5444,1,4643,5444,926,5444,1395,
- 1405,5444,5917,5915,5938,35,3881,5444,5444,508,
- 506,5444,5444,5444,5444,5444,789,5444,510,2434,
- 2152,5927,5926,5939,1089,2997,5908,5909,5932,5933,
- 5930,5931,5910,5912,5934,5935,2544,5444,2190,5940,
- 2801,5920,5921,5922,5918,5919,5928,5929,5924,5923,
- 5925,39,5083,5080,4830,2140,4056,4139,2878,5448,
- 4161,996,5708,5706,5715,5714,5710,5711,5709,5712,
- 5713,5716,5707,3244,2448,2,4117,4086,3861,3873,
- 3298,2448,3557,3352,4111,5444,2021,803,4205,4183,
- 5463,5444,631,617,780,5465,653,3115,663,5444,
- 5466,5464,584,5460,5461,5462,39,5083,5080,4830,
- 2140,4056,4139,2878,5444,4161,996,5708,5706,5715,
- 5714,5710,5711,5709,5712,5713,5716,5707,5444,5444,
- 37,4117,4086,5444,5444,5444,5444,5444,5444,5444,
- 5444,5444,5444,4205,4183,5463,5444,631,617,780,
- 5465,653,3115,663,5444,5466,5464,584,5460,5461,
- 5462,5444,5444,5444,5444,5444,1373,5444,5447,39,
- 5083,5080,4830,2140,4056,4139,2878,5444,4161,996,
- 5708,5706,5715,5714,5710,5711,5709,5712,5713,5716,
- 5707,5444,5444,5444,4117,4086,5444,5444,5444,5444,
- 5444,5444,5444,5444,5444,5444,4205,4183,5463,5444,
- 631,617,780,5465,653,3115,663,5444,5466,5464,
- 584,5460,5461,5462,39,5083,5080,4830,2140,4056,
- 4139,2878,1879,4161,996,5708,5706,5715,5714,5710,
- 5711,5709,5712,5713,5716,5707,5444,5444,5444,4117,
- 4086,5444,5444,5444,5444,5444,5444,5444,5444,5444,
- 5444,4205,4183,5463,5444,631,617,780,5465,653,
- 3115,663,5444,5466,5464,584,5460,5461,5462,5444,
- 5444,5444,5444,5444,1373,39,5083,5080,4842,2140,
- 4056,4139,2878,5444,4161,996,5708,5706,5715,5714,
- 5710,5711,5709,5712,5713,5716,5707,5444,5444,5444,
- 4117,4086,5444,5444,5444,5444,5444,5444,5444,5444,
- 5444,5444,4205,4183,5463,5444,631,617,780,5465,
- 653,3115,663,5444,5466,5464,584,5460,5461,5462,
- 39,5083,5080,4830,2140,4056,4139,2878,5444,4161,
- 996,5708,5706,5715,5714,5710,5711,5709,5712,5713,
- 5716,5707,5444,5444,5444,4117,4086,5444,5444,5444,
- 5444,5444,5444,5444,5444,5444,5444,4205,4183,5463,
- 5444,631,617,780,5465,653,3115,663,5444,5466,
- 5464,584,5460,5461,5462,39,5083,5080,4830,2140,
- 4056,4139,2878,5444,4161,996,5708,5706,5715,5714,
- 5710,5711,5709,5712,5713,5716,5707,5444,5444,5444,
- 4117,4086,5444,5444,5444,5444,5444,5444,5444,5444,
- 5444,5444,4205,4183,5463,5444,631,617,780,5465,
- 653,3115,663,5444,5466,5464,584,5460,5461,5462,
- 5444,5083,5080,5444,5482,5444,5444,5444,5444,5444,
- 728,5708,5706,5715,5714,5710,5711,5709,5712,5713,
- 5716,5707,5704,5781,5782,5444,5444,5444,5698,5705,
- 5701,5677,5703,5702,5699,5700,5678,5444,5444,5444,
- 5842,5444,5444,5444,5444,5444,5444,5444,5444,241,
- 5257,5253,5444,5261,5444,5444,2086,5843,5844,728,
- 5244,5250,5223,5226,5238,5235,5241,5232,5229,5220,
- 5247,5199,5193,5190,5444,5444,5444,5217,5196,5208,
- 5187,5202,5205,5214,5211,5184,5444,5444,5444,5842,
- 32,388,388,5279,388,388,5279,388,5279,5279,
- 5444,5444,5444,5444,5444,2086,5843,5844,5444,5444,
- 5444,5444,388,388,388,5444,223,5279,388,388,
- 388,388,388,388,388,388,388,5708,5706,5715,
- 5714,5710,5711,5709,5712,5713,5716,5707,5704,5781,
- 5782,5444,5444,5444,5698,5705,5701,5677,5703,5702,
- 5699,5700,5678,5279,5444,5444,5444,5444,5444,5444,
- 5444,5444,5444,5279
+ 5505,5505,662,1,1,5505,4274,879,4385,5505,
+ 5510,5567,5568,126,48,1,1,1,5520,1,
+ 1,1,1,1,1,1,5505,1,1,1,
+ 1,1,1,5505,362,5505,363,2014,1,6041,
+ 2629,5505,1095,1,1,1,5232,5228,3544,5236,
+ 4067,4186,3193,363,4208,5192,5219,5225,5198,5201,
+ 5213,5210,5216,5207,5204,5195,5222,5505,2807,5520,
+ 4164,4128,5906,5505,5144,5141,5505,2140,627,580,
+ 3193,5165,4252,4230,5524,5505,631,617,822,5526,
+ 653,3106,681,668,5527,5525,584,5521,5522,5523,
+ 37,5367,5367,6017,2853,1373,331,2725,2698,318,
+ 39,39,5431,516,39,5144,5141,3544,2140,4067,
+ 4186,3193,5499,4208,929,5769,5767,5776,5775,5771,
+ 5772,5770,5773,5774,5777,5768,5505,5519,5520,4164,
+ 4128,627,5505,3193,5946,4386,1,5505,5541,2437,
+ 3993,4252,4230,5524,5331,631,617,822,5526,653,
+ 3106,681,428,5527,5525,584,5521,5522,5523,45,
+ 5410,5410,1933,5505,1373,5505,1,5505,5505,5390,
+ 5387,5483,5505,5511,528,5512,141,5144,5141,3544,
+ 2140,4067,4186,3193,5505,4208,929,5769,5767,5776,
+ 5775,5771,5772,5770,5773,5774,5777,5768,5505,1933,
+ 1,4164,4128,37,5367,5367,3319,5407,163,5334,
+ 128,29,5505,4252,4230,5524,5541,631,617,822,
+ 5526,653,3106,681,925,5527,5525,584,5521,5522,
+ 5523,3270,2766,3190,5505,4974,1373,4006,5510,528,
+ 5960,39,39,1,5232,5228,3544,5236,4067,4186,
+ 3193,5541,4208,5192,5219,5225,5198,5201,5213,5210,
+ 5216,5207,5204,5195,5222,2807,662,4508,4164,4128,
+ 395,5505,5505,163,388,320,663,127,5352,5515,
+ 4252,4230,5524,424,631,617,822,5526,653,3106,
+ 681,5505,5527,5525,584,5521,5522,5523,5514,103,
+ 5505,5505,4008,1373,2725,2698,99,5505,39,39,
+ 39,5144,5141,3544,2140,4067,4186,3193,5480,4208,
+ 929,5769,5767,5776,5775,5771,5772,5770,5773,5774,
+ 5777,5768,2807,5505,521,4164,4128,1894,1933,5505,
+ 5505,278,3379,1,5443,5355,39,4252,4230,5524,
+ 5543,631,617,822,5526,653,3106,681,5505,5527,
+ 5525,584,5521,5522,5523,1,1,5505,2055,1050,
+ 1373,2725,2698,291,5505,5458,5458,5483,39,5144,
+ 5141,3544,2140,4067,4186,3193,5480,4208,929,5769,
+ 5767,5776,5775,5771,5772,5770,5773,5774,5777,5768,
+ 29,440,454,4164,4128,5461,5461,48,4384,387,
+ 5505,5519,5505,2953,2953,4252,4230,5524,395,631,
+ 617,822,5526,653,3106,681,73,5527,5525,584,
+ 5521,5522,5523,5864,1,5505,1,926,1373,5974,
+ 5968,1,2102,5972,5515,5483,289,448,5505,191,
+ 5505,5505,3211,2917,426,5147,5150,5153,5505,5966,
+ 5967,4682,5519,5514,5180,662,449,2759,191,420,
+ 308,5997,5998,662,5505,5975,5505,4940,5505,2909,
+ 5505,5437,5505,4941,5505,3007,1,4961,5505,5977,
+ 3479,3476,5505,5505,1,4655,5505,740,5505,1482,
+ 1489,5505,5978,5976,5999,35,3565,5505,5505,508,
+ 506,5505,5505,5505,5505,5505,789,5505,510,2665,
+ 2152,5988,5987,6000,1089,2866,5969,5970,5993,5994,
+ 5991,5992,5971,5973,5995,5996,2845,5505,2190,6001,
+ 4038,5981,5982,5983,5979,5980,5989,5990,5985,5984,
+ 5986,39,5144,5141,3544,2140,4067,4186,3193,5509,
+ 4208,929,5769,5767,5776,5775,5771,5772,5770,5773,
+ 5774,5777,5768,3236,2269,2,4164,4128,4947,4967,
+ 3291,2269,3272,3346,3876,5505,2021,803,4252,4230,
+ 5524,5505,631,617,822,5526,653,3106,681,5505,
+ 5527,5525,584,5521,5522,5523,39,5144,5141,3544,
+ 2140,4067,4186,3193,5505,4208,929,5769,5767,5776,
+ 5775,5771,5772,5770,5773,5774,5777,5768,5505,5505,
+ 37,4164,4128,5505,5505,5505,5505,5505,5505,5505,
+ 5505,5505,5505,4252,4230,5524,5505,631,617,822,
+ 5526,653,3106,681,5505,5527,5525,584,5521,5522,
+ 5523,5505,5505,5505,5505,5505,1373,5505,5508,39,
+ 5144,5141,3544,2140,4067,4186,3193,5505,4208,929,
+ 5769,5767,5776,5775,5771,5772,5770,5773,5774,5777,
+ 5768,5505,5505,5505,4164,4128,5505,5505,5505,5505,
+ 5505,5505,5505,5505,5505,5505,4252,4230,5524,5505,
+ 631,617,822,5526,653,3106,681,5505,5527,5525,
+ 584,5521,5522,5523,39,5144,5141,3544,2140,4067,
+ 4186,3193,1793,4208,929,5769,5767,5776,5775,5771,
+ 5772,5770,5773,5774,5777,5768,5505,5505,5505,4164,
+ 4128,5505,5505,5505,5505,5505,5505,5505,5505,5505,
+ 5505,4252,4230,5524,5505,631,617,822,5526,653,
+ 3106,681,5505,5527,5525,584,5521,5522,5523,5505,
+ 5505,5505,5505,5505,1373,39,5144,5141,4875,2140,
+ 4067,4186,3193,5505,4208,929,5769,5767,5776,5775,
+ 5771,5772,5770,5773,5774,5777,5768,5505,5505,5505,
+ 4164,4128,5505,5505,5505,5505,5505,5505,5505,5505,
+ 5505,5505,4252,4230,5524,5505,631,617,822,5526,
+ 653,3106,681,5505,5527,5525,584,5521,5522,5523,
+ 39,5144,5141,3544,2140,4067,4186,3193,5505,4208,
+ 929,5769,5767,5776,5775,5771,5772,5770,5773,5774,
+ 5777,5768,5505,5505,5505,4164,4128,5505,5505,5505,
+ 5505,5505,5505,5505,5505,5505,5505,4252,4230,5524,
+ 5505,631,617,822,5526,653,3106,681,5505,5527,
+ 5525,584,5521,5522,5523,39,5144,5141,3544,2140,
+ 4067,4186,3193,5505,4208,929,5769,5767,5776,5775,
+ 5771,5772,5770,5773,5774,5777,5768,5505,5505,5505,
+ 4164,4128,5505,5505,5505,5505,5505,5505,5505,5505,
+ 5505,5505,4252,4230,5524,5505,631,617,822,5526,
+ 653,3106,681,5505,5527,5525,584,5521,5522,5523,
+ 5505,5144,5141,5505,5543,5505,5505,5505,5505,5505,
+ 728,5769,5767,5776,5775,5771,5772,5770,5773,5774,
+ 5777,5768,5765,5842,5843,5505,5505,5505,5759,5766,
+ 5762,5738,5764,5763,5760,5761,5739,5505,5505,5505,
+ 5903,5505,5505,5505,5505,5505,5505,5505,5505,241,
+ 5318,5314,5505,5322,5505,5505,1263,5904,5905,728,
+ 5305,5311,5284,5287,5299,5296,5302,5293,5290,5281,
+ 5308,5260,5254,5251,5505,5505,5505,5278,5257,5269,
+ 5248,5263,5266,5275,5272,5245,5505,5505,5505,5903,
+ 32,388,388,5340,388,388,5340,388,5340,5340,
+ 5505,5505,5505,5505,5505,1263,5904,5905,5505,5505,
+ 5505,5505,388,388,388,5505,223,5340,388,388,
+ 388,388,388,388,388,388,388,5769,5767,5776,
+ 5775,5771,5772,5770,5773,5774,5777,5768,5765,5842,
+ 5843,5505,5505,5505,5759,5766,5762,5738,5764,5763,
+ 5760,5761,5739,5340,5505,5505,5505,5505,5505,5505,
+ 5505,5505,5505,5340
};
};
public final static char termAction[] = TermAction.termAction;
@@ -1809,60 +1821,61 @@ public class CPPExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, CP
public interface Asb {
public final static char asb[] = {0,
- 723,93,45,87,764,670,670,670,670,1105,
- 764,774,774,586,774,253,29,255,46,46,
- 46,46,46,46,46,46,46,776,782,787,
- 784,791,789,796,794,798,797,799,314,800,
- 45,29,626,626,626,626,84,824,101,101,
- 771,626,496,204,774,774,101,84,204,204,
- 195,29,938,625,1020,1107,1042,29,774,776,
- 907,907,824,45,46,46,46,46,46,46,
+ 641,93,45,87,682,631,631,631,631,1105,
+ 682,888,888,684,888,206,29,208,46,46,
+ 46,46,46,46,46,46,46,890,896,901,
+ 898,905,903,910,908,912,911,913,274,914,
+ 45,29,724,724,724,724,84,768,101,101,
+ 885,724,456,257,888,888,101,84,257,257,
+ 248,29,938,723,1020,1107,1042,29,888,890,
+ 851,851,768,45,46,46,46,46,46,46,
46,46,46,46,46,46,46,46,46,46,
46,46,46,45,45,45,45,45,45,45,
- 45,45,45,45,45,46,204,204,934,934,
- 934,934,411,204,101,101,1103,1031,1042,311,
- 1042,306,1042,499,1042,1026,1105,84,496,496,
- 101,670,46,1103,456,547,537,536,415,1049,
- 1049,1105,255,496,625,45,82,1019,204,81,
- 83,81,204,496,784,784,782,782,782,789,
- 789,789,789,787,787,794,791,791,797,796,
- 798,1119,799,764,764,764,764,84,84,934,
- 933,934,771,84,363,366,308,410,309,1105,
- 84,84,411,934,195,496,815,204,549,551,
- 84,1020,46,626,780,160,204,1107,84,84,
- 83,1020,45,45,45,45,45,764,764,29,
- 364,767,366,84,525,505,523,411,311,451,
- 84,411,84,204,541,529,540,551,411,82,
- 204,780,1103,1019,1107,84,82,204,204,204,
- 204,824,824,364,767,660,84,366,1119,309,
- 670,413,153,1109,366,525,524,525,525,411,
- 451,451,84,84,713,45,538,538,510,510,
- 84,545,1103,680,204,84,780,781,780,45,
- 160,158,776,1107,204,204,767,766,1020,868,
- 311,934,670,81,914,1111,78,764,525,525,
- 525,525,84,451,660,658,659,713,45,45,
- 551,84,1020,204,549,529,713,1084,780,824,
- 46,496,158,767,82,868,868,261,382,82,
- 525,525,78,820,46,1119,518,663,84,1103,
- 525,525,207,660,46,84,928,551,713,781,
- 204,496,821,660,866,980,355,764,309,298,
- 868,868,382,82,525,311,1105,1111,46,46,
- 1019,78,672,653,208,84,928,204,928,260,
- 355,866,676,1105,660,933,670,95,95,821,
- 311,9,672,84,764,207,84,1105,1105,84,
- 764,921,928,261,868,821,517,820,204,1105,
- 84,382,261,382,932,932,936,10,1105,84,
- 824,84,84,84,552,921,868,45,216,78,
- 821,84,84,382,626,626,936,9,1119,46,
- 1119,821,8,764,764,764,10,764,84,322,
- 821,821,84,311,204,84,84,203,923,660,
- 204,660,311,84,821,933,1,764,1,10,
- 1119,10,29,29,27,919,29,821,821,521,
- 936,626,923,660,216,821,584,680,10,204,
- 78,204,27,355,764,204,936,216,95,204,
- 204,1097,10,521,10,821,355,45,10,7,
- 659,932,311,311,1099,45,8,824,821,204,
- 819,215,81,10,204,821,819,819,10
+ 45,45,45,45,45,46,257,257,876,876,
+ 876,876,371,257,101,101,1103,1031,1042,265,
+ 1042,260,1042,268,1042,1026,1105,84,456,456,
+ 101,631,46,1103,416,495,485,484,375,1049,
+ 1049,1105,208,456,723,45,82,1019,257,81,
+ 83,81,257,456,898,898,896,896,896,903,
+ 903,903,903,901,901,908,905,905,911,910,
+ 912,1119,913,682,682,682,682,84,84,876,
+ 875,876,885,84,323,326,262,370,263,1105,
+ 84,84,371,876,248,456,929,257,497,499,
+ 84,1020,46,724,894,213,257,1107,84,84,
+ 83,1020,45,45,45,45,45,682,682,29,
+ 324,883,881,326,84,536,472,534,371,265,
+ 411,84,371,84,257,489,477,488,499,371,
+ 82,257,894,1103,1019,1107,84,82,257,257,
+ 257,257,768,768,324,881,588,84,326,1119,
+ 263,631,373,153,1109,326,536,535,536,536,
+ 371,411,411,84,84,756,45,486,486,459,
+ 459,84,493,1103,591,257,84,894,895,894,
+ 45,213,158,890,1107,257,257,881,881,1020,
+ 812,265,876,631,81,858,1111,78,682,536,
+ 536,536,536,84,411,588,586,587,756,45,
+ 45,499,84,1020,257,497,477,756,1084,894,
+ 768,46,456,158,881,880,82,812,812,541,
+ 342,82,536,536,78,934,46,1119,467,624,
+ 84,1103,536,536,160,588,46,84,870,499,
+ 756,895,257,456,881,935,588,810,980,315,
+ 682,263,578,812,812,342,82,536,265,1105,
+ 1111,46,46,1019,78,633,751,161,84,870,
+ 257,870,540,315,810,637,1105,588,875,631,
+ 95,95,935,265,9,633,84,682,160,84,
+ 1105,1105,84,682,863,870,541,812,935,466,
+ 934,257,1105,84,342,541,342,874,874,878,
+ 10,1105,84,768,84,84,84,500,863,812,
+ 45,169,78,935,84,84,342,724,724,878,
+ 9,1119,46,1119,935,8,682,682,682,10,
+ 682,84,282,935,935,84,265,257,84,84,
+ 256,865,588,257,588,265,84,935,875,1,
+ 682,1,10,1119,10,29,29,27,766,29,
+ 935,935,470,878,724,865,588,169,935,532,
+ 591,10,257,78,257,27,315,682,257,878,
+ 169,95,257,257,1097,10,470,10,935,315,
+ 45,10,7,587,874,265,265,1099,45,8,
+ 768,935,257,933,168,81,10,257,935,933,
+ 933,10
};
};
public final static char asb[] = Asb.asb;
@@ -1885,23 +1898,19 @@ public class CPPExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, CP
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,91,
- 89,25,26,92,93,87,88,55,94,95,
- 96,97,98,99,100,101,106,72,90,69,
- 107,108,109,110,111,112,113,114,115,116,
- 117,71,27,120,68,1,2,9,6,4,
- 3,63,70,73,8,0,22,1,2,4,
- 102,103,104,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,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,48,4,72,1,2,
- 67,8,0,68,72,90,70,117,73,71,
+ 41,68,7,1,2,4,10,5,0,22,
+ 1,2,4,102,103,104,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,106,
+ 72,90,69,107,108,109,110,111,112,113,
+ 114,115,116,117,71,27,120,68,1,2,
+ 9,6,4,3,63,70,73,8,0,48,
+ 4,72,1,2,67,8,0,4,8,67,
+ 1,2,0,68,72,90,70,117,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,
@@ -1919,51 +1928,55 @@ public class CPPExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, CP
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,117,8,0,4,8,
- 67,1,2,0,4,8,72,67,0,74,
- 68,72,90,73,67,63,3,8,70,27,
- 69,0,4,55,8,72,67,0,9,6,
- 7,5,4,1,2,3,63,68,69,70,
- 8,73,90,0,5,7,3,63,6,9,
- 90,28,11,12,23,13,56,29,30,14,
+ 26,41,46,1,2,117,8,0,74,68,
+ 72,90,73,67,63,3,8,70,27,69,
+ 0,4,8,72,67,0,9,6,7,5,
+ 4,1,2,3,63,68,69,70,8,73,
+ 90,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,4,55,8,72,67,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,69,70,71,8,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,73,8,40,0,66,65,25,26,6,
- 92,93,98,9,99,5,41,69,55,68,
- 110,111,107,108,109,115,114,116,88,87,
- 112,113,96,97,94,95,100,101,37,38,
- 70,89,105,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,69,70,71,
- 8,0,72,8,63,3,69,70,27,55,
- 0,8,67,70,0,8,67,69,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,23,60,24,8,68,90,69,70,
- 73,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,60,23,7,24,5,
- 1,2,4,74,67,119,105,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,69,107,108,109,110,111,112,
- 113,114,115,116,72,117,101,106,71,70,
- 27,8,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,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,8,72,67,74,0,75,0,
- 23,24,74,3,72,27,67,60,8,90,
- 73,69,70,68,0,118,0,65,66,37,
+ 4,90,0,72,8,63,3,69,70,27,
+ 55,0,8,67,70,0,8,67,69,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,66,65,25,26,6,92,93,
+ 98,9,99,5,41,69,55,68,110,111,
+ 107,108,109,115,114,116,88,87,112,113,
+ 96,97,94,95,100,101,37,38,70,89,
+ 105,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,23,60,24,8,68,
+ 90,69,70,73,0,75,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,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,8,72,67,
+ 74,0,23,24,74,3,72,27,67,60,
+ 8,90,73,69,70,68,0,118,0,60,
+ 23,24,7,5,1,2,4,74,67,119,
+ 105,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,69,107,108,
+ 109,110,111,112,113,114,115,116,72,117,
+ 101,106,71,70,27,8,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,
@@ -1989,60 +2002,61 @@ public class CPPExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, CP
public interface Nasb {
public final static char nasb[] = {0,
- 206,12,66,12,12,12,12,12,12,70,
- 12,12,12,166,12,196,276,200,66,66,
- 228,66,66,66,66,66,66,12,12,12,
- 12,12,12,12,12,12,12,12,66,12,
- 66,276,36,36,36,36,200,209,136,136,
- 44,5,100,282,12,12,136,232,282,282,
- 118,1,66,53,27,12,12,276,12,12,
- 19,19,209,157,66,66,66,66,66,66,
- 66,66,66,66,66,66,66,66,66,66,
- 66,66,66,66,66,66,66,66,66,66,
- 66,66,66,66,157,66,282,282,12,12,
- 12,12,39,282,31,31,143,250,251,182,
- 251,80,251,105,251,244,10,200,100,100,
- 31,12,66,143,95,117,93,93,12,12,
- 12,10,200,100,36,125,196,170,282,195,
- 200,195,282,100,12,12,12,12,12,12,
+ 200,12,58,12,12,12,12,12,12,62,
+ 12,12,12,209,12,191,218,241,58,58,
+ 244,58,58,58,58,58,58,12,12,12,
+ 12,12,12,12,12,12,12,12,58,12,
+ 58,218,34,34,34,34,241,215,132,132,
+ 42,5,103,282,12,12,132,248,282,282,
+ 113,1,58,45,27,12,12,218,12,12,
+ 19,19,215,168,58,58,58,58,58,58,
+ 58,58,58,58,58,58,58,58,58,58,
+ 58,58,58,58,58,58,58,58,58,58,
+ 58,58,58,58,168,58,282,282,12,12,
+ 12,12,37,282,29,29,145,262,263,176,
+ 263,78,263,85,263,256,10,241,103,103,
+ 29,12,58,145,98,112,40,40,12,12,
+ 12,10,241,103,34,105,191,108,282,190,
+ 241,190,282,103,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,
- 12,12,12,12,12,12,12,151,11,12,
- 12,12,186,200,12,136,150,70,102,70,
- 200,11,12,12,184,100,12,282,160,136,
- 200,27,66,36,136,50,282,12,11,200,
- 122,27,66,157,157,157,157,12,12,31,
- 145,136,257,151,59,59,12,174,182,136,
- 174,26,151,282,12,129,12,163,25,151,
- 282,83,186,170,12,232,151,282,282,282,
- 282,209,209,12,111,48,200,242,12,147,
- 12,12,15,264,257,59,59,136,136,26,
- 136,233,11,151,136,66,12,12,93,93,
- 200,128,143,163,282,151,136,78,12,157,
- 186,123,12,12,282,282,136,111,27,136,
- 182,12,12,70,136,138,131,12,136,136,
- 85,85,151,233,48,12,12,111,66,66,
- 136,11,27,282,160,190,136,12,83,209,
- 66,100,123,111,196,223,136,235,136,174,
- 136,87,192,242,66,12,76,12,200,143,
- 85,85,55,48,66,233,136,163,111,78,
- 282,100,242,48,12,235,265,12,102,15,
- 235,223,163,196,87,217,113,131,66,66,
- 108,192,12,70,91,174,42,282,136,181,
- 138,12,12,70,48,12,12,17,17,242,
- 217,47,12,174,12,72,174,70,70,11,
- 12,136,42,235,136,242,29,12,282,70,
- 174,163,235,136,12,12,136,154,113,11,
- 209,11,174,174,280,111,223,125,64,131,
- 242,174,148,163,36,36,61,177,12,66,
- 12,242,12,12,12,12,178,12,233,240,
- 242,242,233,203,282,11,11,282,136,48,
- 282,136,182,148,242,12,13,12,12,178,
- 12,178,253,253,212,12,253,242,242,12,
- 136,36,42,48,136,242,12,36,178,282,
- 131,282,272,136,12,282,61,64,17,282,
- 282,136,178,12,178,242,131,157,178,13,
- 48,12,203,203,129,66,12,220,242,282,
- 89,63,195,178,282,242,89,12,178
+ 12,12,12,12,12,12,12,121,11,12,
+ 12,12,136,241,12,132,120,62,67,62,
+ 241,11,12,12,134,103,12,282,159,132,
+ 241,27,58,34,132,64,282,12,11,241,
+ 117,27,58,168,168,168,168,12,12,29,
+ 147,147,147,265,121,51,51,12,206,176,
+ 132,206,26,121,282,12,125,12,162,25,
+ 121,282,53,136,108,12,248,121,282,282,
+ 282,282,215,215,12,132,183,241,224,12,
+ 226,12,12,15,272,265,51,51,132,132,
+ 26,132,249,11,121,132,58,12,12,40,
+ 40,241,124,145,162,282,121,132,76,12,
+ 168,136,118,12,12,282,282,147,213,27,
+ 132,176,12,12,62,132,140,127,12,132,
+ 132,83,83,121,249,183,12,12,213,58,
+ 58,132,11,27,282,159,185,132,12,53,
+ 215,58,103,118,132,213,191,232,132,251,
+ 132,206,132,96,187,224,58,12,74,12,
+ 241,145,83,83,47,183,58,249,132,162,
+ 213,76,282,103,213,224,183,12,251,273,
+ 12,67,15,251,232,162,191,96,203,155,
+ 127,58,58,149,187,12,62,92,206,88,
+ 282,132,175,140,12,12,62,183,12,12,
+ 17,17,224,203,182,12,206,12,70,206,
+ 62,62,11,12,132,88,251,132,224,81,
+ 12,282,62,206,162,251,132,12,12,132,
+ 165,155,11,215,11,206,206,280,213,232,
+ 105,56,127,224,206,227,162,34,34,94,
+ 171,12,58,12,224,12,12,12,12,172,
+ 12,249,222,224,224,249,152,282,11,11,
+ 282,132,183,282,132,176,227,224,12,13,
+ 12,12,172,12,172,178,178,195,12,178,
+ 224,224,12,132,34,88,183,132,224,12,
+ 34,172,282,127,282,237,132,12,282,94,
+ 56,17,282,282,132,172,12,172,224,127,
+ 168,172,13,183,12,152,152,125,58,12,
+ 229,224,282,90,55,190,172,282,224,90,
+ 12,172
};
};
public final static char nasb[] = Nasb.nasb;
@@ -2052,32 +2066,32 @@ public class CPPExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, CP
public final static char nasr[] = {0,
3,13,10,9,152,150,121,149,148,5,
2,0,113,0,156,0,108,0,5,2,
- 9,10,139,0,136,2,65,0,184,0,
- 5,10,9,2,13,4,45,0,136,65,
- 0,126,0,4,195,0,4,67,0,4,
- 177,0,175,0,5,102,192,0,109,0,
- 161,0,67,129,40,10,9,2,13,5,
- 0,5,102,168,0,191,0,141,0,153,
- 188,0,143,0,110,0,159,0,162,0,
- 193,0,75,0,13,2,9,10,5,83,
- 0,40,1,0,153,183,0,65,54,0,
- 62,0,172,5,171,0,32,94,95,4,
- 0,2,115,0,4,29,0,32,95,94,
- 64,5,2,9,10,4,0,4,10,9,
- 2,64,5,90,54,0,40,104,0,44,
- 2,3,0,48,40,179,4,39,0,54,
- 5,90,22,4,0,4,45,196,0,65,
- 138,137,0,2,57,0,67,39,48,68,
- 4,40,0,95,94,54,5,58,0,95,
- 94,54,64,58,5,10,9,2,0,2,
- 44,0,40,56,0,4,174,0,4,97,
- 0,39,4,22,181,0,40,160,0,4,
- 178,0,116,4,48,82,0,5,10,9,
- 13,3,1,0,4,48,82,84,0,4,
- 39,38,0,2,5,121,117,118,119,13,
- 87,0,4,45,103,0,4,48,82,102,
- 46,5,0,38,5,2,9,10,4,158,
- 0,45,4,180,0,4,45,39,0,45,
+ 9,10,139,0,136,2,65,0,5,10,
+ 9,2,13,4,45,0,136,65,0,75,
+ 0,4,195,0,175,0,5,102,192,0,
+ 109,0,143,0,67,129,40,10,9,2,
+ 13,5,0,4,177,0,40,1,0,5,
+ 102,168,0,191,0,141,0,153,188,0,
+ 184,0,110,0,153,183,0,126,0,162,
+ 0,193,0,161,0,159,0,13,2,9,
+ 10,5,83,0,4,29,0,65,138,137,
+ 0,32,94,95,4,0,2,115,0,44,
+ 2,3,0,32,95,94,64,5,2,9,
+ 10,4,0,95,94,49,5,58,0,4,
+ 10,9,2,64,5,90,49,0,65,49,
+ 0,40,56,0,172,5,171,0,49,5,
+ 90,22,4,0,48,40,179,4,39,0,
+ 67,39,48,68,4,40,0,4,45,103,
+ 0,4,67,0,95,94,49,64,58,5,
+ 10,9,2,0,39,4,22,181,0,4,
+ 174,0,40,160,0,2,57,0,4,45,
+ 196,0,62,0,4,97,0,4,45,39,
+ 0,4,39,38,0,40,104,0,4,178,
+ 0,116,4,48,82,0,45,4,180,0,
+ 2,44,0,5,10,9,13,3,1,0,
+ 4,48,82,84,0,2,5,121,117,118,
+ 119,13,87,0,4,48,82,102,46,5,
+ 0,38,5,2,9,10,4,158,0,45,
4,32,0
};
};
@@ -2134,18 +2148,18 @@ public class CPPExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, CP
public interface ScopePrefix {
public final static char scopePrefix[] = {
- 159,584,603,308,535,551,562,573,367,266,
- 280,302,315,328,42,291,387,425,167,592,
- 478,20,51,71,80,85,90,130,195,297,
- 321,336,341,144,272,286,506,27,144,377,
- 341,611,27,217,245,1,14,61,76,106,
- 346,356,360,443,471,500,527,531,621,625,
- 629,97,7,97,405,421,434,455,519,232,
- 116,116,434,542,558,569,580,207,489,56,
- 56,156,222,225,56,240,261,225,225,56,
- 364,468,475,156,56,644,110,350,409,449,
- 462,56,350,396,177,104,447,633,640,633,
- 640,65,415,137,104,104,250
+ 159,585,604,309,536,552,563,574,368,267,
+ 281,303,316,329,42,292,388,426,167,593,
+ 479,20,51,71,80,85,90,130,195,298,
+ 322,337,342,144,273,287,507,27,144,378,
+ 342,612,27,217,246,1,14,61,76,106,
+ 347,357,361,444,472,501,528,532,622,626,
+ 630,97,7,97,406,422,435,456,520,116,
+ 116,232,435,543,559,570,581,207,490,56,
+ 56,156,222,225,56,241,262,225,225,56,
+ 365,469,476,156,56,645,110,351,410,450,
+ 463,56,351,397,177,104,448,634,641,634,
+ 641,65,416,137,104,104,251
};
};
public final static char scopePrefix[] = ScopePrefix.scopePrefix;
@@ -2153,18 +2167,18 @@ public class CPPExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, CP
public interface ScopeSuffix {
public final static char scopeSuffix[] = {
- 18,5,5,135,5,5,5,5,374,135,
- 95,135,135,334,48,277,393,431,173,67,
- 484,25,25,25,59,59,95,135,200,135,
- 326,326,334,149,277,101,511,38,152,382,
- 598,616,32,211,211,5,18,5,59,95,
- 326,95,95,135,243,5,5,5,5,5,
- 243,642,11,101,374,374,374,459,511,236,
- 120,125,438,546,546,546,546,211,493,59,
- 59,5,5,228,230,243,5,264,264,230,
- 95,5,243,5,504,5,113,353,412,452,
- 465,523,514,399,180,95,95,635,635,637,
- 637,67,417,139,202,187,252
+ 18,5,5,135,5,5,5,5,375,135,
+ 95,135,135,335,48,278,394,432,173,67,
+ 485,25,25,25,59,59,95,135,200,135,
+ 327,327,335,149,278,101,512,38,152,383,
+ 599,617,32,211,211,5,18,5,59,95,
+ 327,95,95,135,244,5,5,5,5,5,
+ 244,643,11,101,375,375,375,460,512,120,
+ 125,236,439,547,547,547,547,211,494,59,
+ 59,5,5,228,230,244,5,265,265,230,
+ 95,5,244,5,505,5,113,354,413,453,
+ 466,524,515,400,180,95,95,636,636,638,
+ 638,67,418,139,202,187,253
};
};
public final static char scopeSuffix[] = ScopeSuffix.scopeSuffix;
@@ -2173,13 +2187,13 @@ public class CPPExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, CP
public interface ScopeLhs {
public final static char scopeLhs[] = {
46,17,17,119,17,17,17,17,71,86,
- 47,80,119,118,77,52,71,70,46,17,
+ 47,80,119,118,77,53,71,70,46,17,
19,3,7,8,168,168,164,117,46,81,
- 118,118,120,128,53,47,139,133,128,71,
+ 118,118,120,128,54,47,139,133,128,71,
17,17,133,96,59,135,74,171,168,164,
- 120,182,50,56,143,18,17,17,17,17,
- 17,12,113,164,71,70,70,37,139,58,
- 130,130,70,17,17,17,17,96,19,172,
+ 120,182,51,56,143,18,17,17,17,17,
+ 17,12,113,164,71,70,70,37,139,130,
+ 130,58,70,17,17,17,17,96,19,172,
168,184,94,101,61,75,60,158,76,120,
72,144,143,175,139,16,164,120,103,69,
21,139,139,71,46,164,66,137,44,137,
@@ -2197,8 +2211,8 @@ public class CPPExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, CP
1,1,1,71,1,1,4,68,70,27,
1,1,68,73,73,73,118,73,1,27,
1,27,27,71,117,73,73,73,73,73,
- 117,1,73,1,73,73,73,72,4,6,
- 1,1,73,68,68,68,68,73,3,1,
+ 117,1,73,1,73,73,73,72,4,1,
+ 1,6,73,68,68,68,68,73,3,1,
1,73,73,3,1,117,73,1,1,1,
27,73,117,73,5,73,1,48,69,72,
73,1,48,75,74,27,27,4,4,4,
@@ -2216,8 +2230,8 @@ public class CPPExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, CP
154,154,154,313,98,96,137,50,313,106,
250,250,50,146,66,26,106,30,54,82,
154,22,98,33,63,250,250,250,250,250,
- 250,230,6,82,106,106,106,282,137,121,
- 154,154,106,250,250,250,250,146,250,30,
+ 250,230,6,82,106,106,106,282,137,154,
+ 154,121,106,250,250,250,250,146,250,30,
54,24,146,148,66,142,66,60,71,154,
106,57,63,140,137,250,82,154,1,106,
251,137,137,106,96,82,11,118,158,118,
@@ -2252,48 +2266,48 @@ public class CPPExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, CP
0,203,0,0,215,0,227,126,3,0,
126,0,0,0,0,0,227,126,3,216,
0,223,3,0,212,126,0,208,0,146,
- 0,176,166,127,0,10,0,0,0,214,
- 63,0,125,0,227,126,3,182,0,182,
- 0,2,0,0,126,0,0,0,0,0,
- 198,3,0,201,0,236,126,162,39,30,
- 0,179,127,59,62,0,196,128,0,128,
- 179,127,278,62,0,179,127,278,62,0,
- 179,127,69,123,59,0,236,126,162,59,
- 0,236,126,162,226,59,0,276,126,162,
- 123,305,56,0,276,126,162,305,56,0,
- 179,127,275,56,0,135,0,187,179,127,
- 275,243,0,136,0,179,127,275,243,0,
- 187,166,127,10,0,166,127,10,0,166,
- 127,0,93,136,0,268,126,144,0,268,
- 126,170,0,161,84,0,300,160,302,303,
- 3,81,0,126,171,0,302,303,3,81,
- 0,128,0,126,171,0,161,3,75,190,
- 80,0,126,128,0,190,80,0,108,2,
- 131,126,128,0,225,3,75,0,198,167,
- 0,33,169,0,167,0,175,33,169,0,
- 225,3,85,0,190,154,225,3,83,0,
- 62,171,0,225,3,83,0,126,171,62,
- 171,0,301,126,162,0,161,0,214,77,
- 0,30,171,0,161,106,158,0,30,169,
- 0,177,3,0,126,149,0,219,3,0,
- 214,63,265,0,161,63,0,177,3,297,
- 66,127,0,126,0,0,0,0,297,66,
- 127,0,2,145,126,0,0,0,0,177,
- 3,46,0,147,0,125,48,166,127,0,
- 31,147,0,93,136,31,147,0,220,179,
- 127,0,146,31,147,0,177,3,51,0,
- 161,3,51,0,161,3,68,177,55,42,
- 0,177,55,42,0,20,2,131,126,0,
- 161,3,68,177,55,45,0,177,55,45,
- 0,161,3,68,177,55,47,0,177,55,
- 47,0,161,3,68,177,55,43,0,177,
- 55,43,0,219,3,125,187,166,127,10,
- 0,125,187,166,127,10,0,136,2,0,
- 126,0,219,3,124,258,166,127,10,0,
- 258,166,127,10,0,135,2,0,126,0,
- 219,3,135,0,219,3,139,0,161,63,
- 139,0,260,0,31,0,31,139,0,165,
- 0,134,0,161,3,0
+ 0,171,166,127,0,10,0,0,0,0,
+ 214,63,0,125,0,227,126,3,182,0,
+ 182,0,2,0,0,126,0,0,0,0,
+ 0,198,3,0,201,0,236,126,162,39,
+ 30,0,179,127,59,62,0,196,128,0,
+ 128,179,127,278,62,0,179,127,278,62,
+ 0,179,127,69,123,59,0,236,126,162,
+ 59,0,236,126,162,226,59,0,276,126,
+ 162,123,305,56,0,276,126,162,305,56,
+ 0,179,127,275,56,0,135,0,187,179,
+ 127,275,243,0,136,0,179,127,275,243,
+ 0,187,166,127,10,0,166,127,10,0,
+ 166,127,0,93,136,0,268,126,144,0,
+ 268,126,170,0,161,84,0,300,160,302,
+ 303,3,81,0,126,171,0,302,303,3,
+ 81,0,128,0,126,171,0,161,3,75,
+ 190,80,0,126,128,0,190,80,0,108,
+ 2,131,126,128,0,225,3,75,0,198,
+ 167,0,33,169,0,167,0,175,33,169,
+ 0,225,3,85,0,190,154,225,3,83,
+ 0,62,171,0,225,3,83,0,126,171,
+ 62,171,0,301,126,162,0,161,0,214,
+ 77,0,30,171,0,161,106,158,0,30,
+ 169,0,177,3,0,126,149,0,219,3,
+ 0,214,63,265,0,161,63,0,177,3,
+ 297,66,127,0,126,0,0,0,0,297,
+ 66,127,0,2,145,126,0,0,0,0,
+ 177,3,46,0,147,0,125,48,166,127,
+ 0,31,147,0,93,136,31,147,0,220,
+ 179,127,0,146,31,147,0,177,3,51,
+ 0,161,3,51,0,161,3,68,177,55,
+ 42,0,177,55,42,0,20,2,131,126,
+ 0,161,3,68,177,55,45,0,177,55,
+ 45,0,161,3,68,177,55,47,0,177,
+ 55,47,0,161,3,68,177,55,43,0,
+ 177,55,43,0,219,3,125,187,166,127,
+ 10,0,125,187,166,127,10,0,136,2,
+ 0,126,0,219,3,124,258,166,127,10,
+ 0,258,166,127,10,0,135,2,0,126,
+ 0,219,3,135,0,219,3,139,0,161,
+ 63,139,0,260,0,31,0,31,139,0,
+ 165,0,134,0,161,3,0
};
};
public final static char scopeRhs[] = ScopeRhs.scopeRhs;
@@ -2301,34 +2315,34 @@ public class CPPExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, CP
public interface ScopeState {
public final static char scopeState[] = {0,
- 4822,4917,4898,4632,0,2741,1842,559,966,0,
- 3682,3627,3568,3460,3406,3352,3298,3244,3190,2899,
- 2845,3562,0,681,0,1535,1492,740,0,2544,
- 2434,0,3682,3627,3375,3040,3568,3460,3406,3352,
- 3298,3244,3039,3190,2899,2845,3668,3650,0,3871,
- 3196,3854,0,1089,925,0,1876,1173,0,4720,
- 4700,0,2707,1219,0,4550,4720,4537,2998,4700,
- 2974,3535,4615,2801,2391,3949,4504,2633,2556,2517,
- 0,4736,4637,0,4736,4637,3969,4450,4440,3862,
- 4357,4347,4337,3852,0,4736,4637,3969,4450,4440,
- 3862,4357,4347,4337,3852,3682,3627,3568,3460,3406,
- 3352,3298,3244,3190,2899,2845,0,3377,2879,0,
- 2391,4550,3571,4537,2998,3412,2633,3863,3379,3355,
- 2851,2988,820,3267,1034,0,668,580,0,879,
- 0,2499,2232,2059,1930,2998,2988,2974,2556,2517,
- 2437,860,0,4569,537,2989,0,4768,4764,4753,
- 4742,3995,3980,3669,3520,3447,3339,4892,3231,2886,
- 4888,4789,3999,2814,3579,2551,2539,741,3549,3011,
- 0,3026,3019,4768,4764,4753,2961,2868,4742,2323,
- 3995,3980,3669,3520,3447,3221,3111,3100,3339,2698,
- 4892,2680,2624,1281,1138,3231,2886,931,2471,4888,
- 3651,4789,3213,3999,2814,3579,736,2551,2539,741,
- 4569,627,2989,3549,3011,2456,2312,2228,2140,803,
- 2974,3535,4615,2801,2391,4550,3949,4720,4537,2998,
- 4504,2633,2556,4700,2517,1268,939,668,580,3115,
- 4315,4293,1187,2278,2360,2328,2477,2404,595,3168,
- 3142,2818,2746,2719,2653,3830,3806,3782,3757,2773,
- 4271,4249,4227,4205,4183,4161,4139,4117,4086,4056,
+ 3883,4961,4941,2909,0,1541,2061,559,1842,0,
+ 3668,3613,3558,3456,3401,3346,3291,3236,3181,2889,
+ 2834,3007,0,1221,0,1535,1492,1449,0,2845,
+ 2665,0,3668,3613,3245,3030,3558,3456,3401,3346,
+ 3291,3236,2637,3181,2889,2834,4460,3031,0,3559,
+ 3190,2930,0,1089,925,0,2438,1173,0,4740,
+ 4715,0,1219,984,0,4616,4740,4603,2989,4715,
+ 2964,3531,4629,4038,2391,3960,4584,2595,2556,2517,
+ 0,4758,4691,0,4758,4691,3980,4497,4487,3873,
+ 4404,4394,4384,3863,0,4758,4691,3980,4497,4487,
+ 3873,4404,4394,4384,3863,3668,3613,3558,3456,3401,
+ 3346,3291,3236,3181,2889,2834,0,2627,2434,0,
+ 2391,4616,3640,4603,2989,4760,2595,4649,3588,3268,
+ 2753,2585,820,3433,3373,0,668,580,0,879,
+ 0,2232,2144,959,780,2989,2585,2964,2556,2517,
+ 2437,860,0,4668,537,2980,0,4889,4843,4825,
+ 4819,4813,3600,3517,3513,3443,3333,4954,3223,3032,
+ 4916,4909,4905,2506,4893,2876,2639,741,4116,3973,
+ 0,3552,3424,4889,4843,4825,2867,2442,4819,2323,
+ 4813,3600,3517,3513,3443,3260,2839,2687,3333,2645,
+ 4954,2621,2551,1281,1138,3223,3032,872,2471,4916,
+ 2541,4909,3205,4905,2506,4893,736,2876,2639,741,
+ 4668,627,2980,4116,3973,2456,2312,2228,2140,803,
+ 2964,3531,4629,4038,2391,4616,3960,4740,4603,2989,
+ 4584,2595,2556,4715,2517,1268,939,668,580,3106,
+ 4362,4340,1187,2278,2360,2328,2477,2404,595,3159,
+ 3133,2807,2780,2725,2698,3841,3817,3793,3768,3743,
+ 4318,4296,4274,4252,4230,4208,4186,4164,4128,4067,
631,2021,2240,2190,2152,2102,2064,1050,1330,1285,
1225,882,1971,1933,826,746,690,1890,1847,1804,
1761,1718,1675,1632,1589,1546,1503,1460,537,1417,
@@ -2358,42 +2372,43 @@ public class CPPExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, CP
127,48,219,161,146,146,145,145,145,148,
148,148,148,147,147,150,149,149,153,152,
155,161,157,68,68,68,68,187,258,253,
- 256,253,212,127,176,162,310,275,305,275,
+ 256,253,212,127,171,162,310,275,305,275,
127,179,166,253,212,214,158,223,126,3,
127,166,205,3,298,167,151,260,187,127,
179,166,72,3,3,3,3,125,124,70,
- 166,6,126,166,230,125,124,127,123,162,
- 127,166,48,227,228,144,229,126,166,48,
- 177,126,126,4,220,5,48,161,161,161,
- 161,3,3,176,126,309,127,168,224,59,
- 48,204,62,170,312,125,124,231,231,179,
- 162,126,179,187,154,69,223,198,186,182,
- 127,3,126,70,227,187,154,262,265,63,
- 180,4,123,125,219,219,6,184,166,162,
- 226,55,48,278,280,126,3,182,231,231,
- 126,126,187,126,276,123,277,126,69,69,
- 3,179,166,198,126,212,154,125,126,3,
- 63,161,4,126,187,126,162,68,55,127,
- 74,126,212,311,72,289,198,124,127,126,
- 126,126,72,276,69,70,221,126,126,262,
- 219,214,128,236,30,48,170,64,59,62,
- 238,126,126,179,126,281,72,70,72,69,
- 166,212,314,224,22,127,126,227,221,39,
- 126,3,123,59,236,295,48,10,40,128,
- 281,162,293,127,294,70,127,22,315,179,
- 60,154,126,126,162,268,247,279,39,69,
- 127,70,68,55,230,230,282,126,70,179,
- 3,179,127,127,3,126,126,3,69,70,
- 154,127,179,126,69,69,126,301,79,77,
- 1,161,8,85,83,81,80,75,82,84,
- 78,76,59,74,219,179,179,320,221,236,
- 151,162,251,179,226,295,283,118,8,72,
- 214,72,3,3,3,190,3,123,161,123,
- 178,70,126,126,162,226,68,3,72,225,
- 167,225,303,144,75,225,126,126,40,90,
- 319,167,154,198,154,302,126,3,154,283,
- 308,230,154,154,126,69,190,160,268,161,
- 189,70,69,121,300,154,189,8,154
+ 166,9,6,126,166,230,125,124,127,123,
+ 162,127,166,48,227,228,144,229,126,166,
+ 48,177,126,126,4,220,5,48,161,161,
+ 161,161,3,3,171,171,309,127,168,224,
+ 59,48,204,62,170,312,125,124,231,231,
+ 179,162,126,179,187,154,69,223,198,186,
+ 182,127,3,126,70,227,187,154,262,265,
+ 63,180,4,123,125,219,219,6,126,166,
+ 162,226,55,48,278,280,126,3,182,231,
+ 231,126,126,187,126,276,123,277,126,69,
+ 69,3,179,166,198,126,212,154,125,126,
+ 3,63,161,4,171,184,187,126,162,68,
+ 55,127,74,126,212,311,72,289,198,124,
+ 127,126,126,126,72,276,69,70,221,126,
+ 126,262,219,214,126,128,236,30,48,170,
+ 64,59,62,238,126,126,179,126,281,72,
+ 70,72,69,166,212,314,224,22,127,126,
+ 227,221,39,126,3,123,59,236,295,48,
+ 10,40,128,281,162,293,127,294,70,127,
+ 22,315,179,60,154,126,126,162,268,247,
+ 279,39,69,127,70,68,55,230,230,282,
+ 126,70,179,3,179,127,127,3,126,126,
+ 3,69,70,154,127,179,126,69,69,126,
+ 301,79,77,1,161,8,85,83,81,80,
+ 75,82,84,78,76,59,74,219,179,179,
+ 320,221,236,151,162,251,179,226,295,283,
+ 118,8,72,214,72,3,3,3,190,3,
+ 123,161,123,178,70,126,126,162,226,68,
+ 3,72,225,167,225,303,144,75,225,126,
+ 126,40,90,319,167,154,198,154,302,126,
+ 3,154,283,308,230,154,154,126,69,190,
+ 160,268,161,189,70,69,121,300,154,189,
+ 8,154
};
};
public final static char inSymb[] = InSymb.inSymb;
@@ -2668,20 +2683,20 @@ public class CPPExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, CP
public final int getMaxNameLength() { return MAX_NAME_LENGTH; }
public final static int
- NUM_STATES = 539,
+ NUM_STATES = 542,
NT_OFFSET = 122,
- LA_STATE_OFFSET = 5980,
+ LA_STATE_OFFSET = 6041,
MAX_LA = 2147483647,
NUM_RULES = 536,
NUM_NONTERMINALS = 202,
NUM_SYMBOLS = 324,
SEGMENT_SIZE = 8192,
- START_STATE = 3206,
+ START_STATE = 3022,
IDENTIFIER_SYMBOL = 0,
EOFT_SYMBOL = 120,
EOLT_SYMBOL = 120,
- ACCEPT_ACTION = 5079,
- ERROR_ACTION = 5444;
+ ACCEPT_ACTION = 5140,
+ ERROR_ACTION = 5505;
public final static boolean BACKTRACK = true;
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 f5dd2ddd43b..15055126ff7 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
@@ -17,20 +17,29 @@ import lpg.lpgjavaruntime.*;
import java.util.*;
import org.eclipse.cdt.core.dom.ast.*;
+import org.eclipse.cdt.core.dom.lrparser.CPreprocessorAdapter;
+import org.eclipse.cdt.core.dom.lrparser.IDOMTokenMap;
import org.eclipse.cdt.core.dom.lrparser.IParser;
-import org.eclipse.cdt.core.dom.lrparser.IParserActionTokenProvider;
+import org.eclipse.cdt.core.dom.lrparser.ITokenCollector;
import org.eclipse.cdt.core.dom.lrparser.lpgextensions.FixedBacktrackingParser;
import org.eclipse.cdt.core.dom.lrparser.action.ScopedStack;
+import org.eclipse.cdt.core.parser.IScanner;
+import org.eclipse.cdt.core.dom.parser.IBuiltinBindingsProvider;
+import org.eclipse.cdt.core.index.IIndex;
+import org.eclipse.cdt.core.dom.lrparser.action.ITokenStream;
import org.eclipse.cdt.core.dom.lrparser.action.ITokenMap;
import org.eclipse.cdt.core.dom.lrparser.action.TokenMap;
+import org.eclipse.cdt.core.dom.lrparser.ISecondaryParser;
import org.eclipse.cdt.core.dom.ast.cpp.*;
import org.eclipse.cdt.internal.core.dom.parser.cpp.CPPNodeFactory;
import org.eclipse.cdt.core.dom.lrparser.action.cpp.CPPBuildASTParserAction;
import org.eclipse.cdt.core.dom.lrparser.action.cpp.CPPSecondaryParserFactory;
-public class CPPNoCastExpressionParser extends PrsStream implements RuleAction , IParserActionTokenProvider, IParser< IASTExpression >
+public class CPPNoCastExpressionParser extends PrsStream implements RuleAction, ITokenStream,
+ ITokenCollector, IParser< IASTExpression >
+ , ISecondaryParser< IASTExpression >
{
private static ParseTable prs = new CPPNoCastExpressionParserprs();
private FixedBacktrackingParser btParser;
@@ -168,7 +177,11 @@ public class CPPNoCastExpressionParser extends PrsStream implements RuleAction ,
private CPPBuildASTParserAction action;
private IASTCompletionNode compNode;
-public CPPNoCastExpressionParser() { // constructor
+
+public CPPNoCastExpressionParser(IScanner scanner, IDOMTokenMap tokenMap, IBuiltinBindingsProvider builtinBindingsProvider, IIndex index, Set<IParser.Options> options) {
+ initActions(options);
+ action.initializeTranslationUnit(scanner, builtinBindingsProvider, index);
+ CPreprocessorAdapter.runCPreprocessor(scanner, this, tokenMap);
}
private void initActions(Set<IParser.Options> options) {
@@ -187,10 +200,9 @@ public void addToken(IToken token) {
}
-public IASTExpression parse(Set<IParser.Options> options) {
+public IASTExpression parse() {
// this has to be done, or... kaboom!
setStreamLength(getSize());
- initActions(options);
final int errorRepairCount = -1; // -1 means full error handling
parser(null, errorRepairCount); // do the actual parse
@@ -233,12 +245,12 @@ public void setTokens(List<IToken> tokens) {
addToken(new Token(null, 0, 0, CPPNoCastExpressionParsersym.TK_EOF_TOKEN));
}
-public CPPNoCastExpressionParser(IParserActionTokenProvider parser) { // constructor
+public CPPNoCastExpressionParser(ITokenStream parser, Set<IParser.Options> options) { // constructor for creating secondary parser
+ initActions(options);
tokenMap = new TokenMap(CPPNoCastExpressionParsersym.orderedTerminalSymbols, parser.getOrderedTerminalSymbols());
}
-
public void ruleAction(int ruleNumber)
{
switch (ruleNumber)
@@ -1415,19 +1427,19 @@ public CPPNoCastExpressionParser(IParserActionTokenProvider parser) { // constr
}
//
- // Rule 327: ptr_operator ::= pointer_hook * <openscope-ast> cv_qualifier_seq_opt
+ // Rule 327: ptr_operator ::= pointer_hook * pointer_hook <openscope-ast> cv_qualifier_seq_opt
//
case 327: { action. consumePointer(); break;
}
//
- // Rule 328: ptr_operator ::= pointer_hook &
+ // Rule 328: ptr_operator ::= pointer_hook & pointer_hook
//
case 328: { action. consumeReferenceOperator(); break;
}
//
- // Rule 329: ptr_operator ::= dcolon_opt nested_name_specifier pointer_hook * <openscope-ast> cv_qualifier_seq_opt
+ // Rule 329: ptr_operator ::= dcolon_opt nested_name_specifier pointer_hook * pointer_hook <openscope-ast> cv_qualifier_seq_opt
//
case 329: { action. consumePointerToMember(); 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 bacdda50ccb..85de5131270 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
@@ -69,7 +69,7 @@ public class CPPNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
3,1,1,1,6,5,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,4,2,6,0,
+ 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,
@@ -94,7 +94,7 @@ public class CPPNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,-54,0,
0,0,0,0,-49,0,0,0,0,0,
- 0,0,0,-396,0,0,0,0,-68,0,
+ 0,0,0,-399,0,0,0,0,-68,0,
0,0,-4,0,0,0,0,0,0,0,
0,0,-5,-85,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
@@ -102,374 +102,380 @@ public class CPPNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
0,0,0,0,0,-58,0,0,0,-76,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-244,0,0,
+ 0,0,0,0,0,0,0,-245,0,0,
-176,0,0,0,-7,0,-69,0,0,0,
- -123,0,0,0,0,0,0,0,0,-8,
+ -224,0,0,0,0,0,0,0,0,-310,
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,0,0,
- 0,-234,0,0,0,0,0,-50,-9,0,
- 0,0,-112,0,-16,0,0,0,-53,-62,
+ 0,-8,0,0,0,0,-235,-10,-9,0,
+ 0,0,0,0,-16,0,0,0,-53,-112,
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,
- -11,0,0,0,-126,0,0,0,0,0,
- -12,0,-136,0,-170,0,0,0,-51,0,
- 0,-121,0,0,0,0,-531,0,0,0,
- -379,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-130,0,0,0,0,0,
+ -186,0,0,0,0,0,-234,0,0,0,
+ 0,0,-188,0,-126,0,0,0,-50,0,
+ 0,-121,0,0,0,0,-534,0,0,0,
+ -11,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-279,-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,0,0,
- 0,0,-10,0,0,0,0,0,0,0,
- -222,0,0,0,-116,0,-462,0,-165,0,
+ 0,0,0,-291,0,0,0,0,0,0,
+ 0,0,-170,0,0,0,0,0,0,0,
+ -223,0,0,0,-57,0,0,0,0,-219,
0,0,-218,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-133,0,0,0,0,0,0,0,0,
- -375,0,0,0,0,0,-59,0,0,0,
- 0,0,0,-186,0,-13,0,-253,0,0,
- -138,0,0,0,-383,0,0,0,0,0,
- 0,0,0,0,0,0,0,-340,0,0,
- -506,0,0,0,0,0,0,0,0,0,
+ 0,-133,0,0,0,0,-12,0,0,0,
+ -378,0,0,0,0,0,0,0,0,0,
+ -411,0,0,0,0,-13,0,-297,0,0,
+ -138,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-15,0,0,0,-342,0,-255,
+ -509,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-386,0,0,0,0,0,0,
+ 0,0,0,-181,0,0,0,0,0,0,
+ 0,0,0,-533,0,0,0,-61,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-15,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-233,0,
- 0,0,0,-530,0,0,0,-61,0,0,
+ 0,0,-382,0,0,0,0,0,0,0,
+ 0,-28,0,0,0,0,-119,-319,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-28,0,0,0,
- 0,0,-202,0,0,0,0,0,0,0,
- 0,-187,0,0,0,0,0,-318,0,0,
- 0,-29,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,-457,0,0,0,0,
- 0,0,0,-437,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-51,0,0,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,-277,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-17,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,0,-17,-184,-29,0,
0,0,-3,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-119,0,0,0,0,0,0,0,0,
- 0,-219,0,0,0,-441,0,0,-282,0,
- 0,0,-345,0,0,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,-230,0,0,0,
- 0,-322,0,0,0,0,0,0,0,0,
+ 0,-321,0,0,0,-444,0,0,-283,0,
+ 0,0,-347,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,-220,0,0,0,0,0,-225,0,0,
+ 0,0,0,0,0,0,-231,0,0,0,
+ 0,-323,0,0,0,-30,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-30,0,0,0,0,0,
- -188,0,0,0,0,0,0,0,0,-296,
- -261,-31,0,0,-140,0,0,0,-32,0,
+ 0,0,0,0,-31,0,0,0,0,0,
+ 0,0,0,0,0,-62,0,0,0,-322,
+ -262,0,0,0,-140,0,0,0,-32,0,
0,0,0,0,0,0,0,0,-33,0,
- -34,0,-323,0,0,0,-35,0,0,0,
+ -221,0,-324,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,-196,0,0,0,0,0,0,0,0,
- -128,0,-529,0,0,-39,0,0,0,-36,
+ 0,0,-532,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,0,0,0,-415,0,0,0,0,0,
- 0,0,0,-177,0,0,0,0,-373,-41,
+ 0,0,0,0,-418,0,0,0,0,0,
+ 0,0,0,-177,0,0,0,0,-376,-41,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-254,0,0,0,0,0,-37,0,
- 0,0,-104,0,0,0,0,-38,-105,0,
+ 0,0,-123,0,0,0,0,0,-34,0,
+ 0,0,-59,-195,0,0,0,0,-104,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,
- 0,0,0,0,0,-113,-166,0,0,0,
- -271,0,0,0,0,-92,0,0,0,0,
+ 0,0,0,0,0,-105,-165,0,0,0,
+ -272,0,0,0,0,-92,0,0,0,-35,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-184,
- 0,0,0,0,-40,-285,0,0,-93,0,
- 0,0,-55,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-209,
+ 0,0,0,0,-36,-166,0,0,-93,0,
+ 0,0,-37,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-137,-195,0,0,0,0,0,0,0,
- 0,-94,0,0,0,-56,0,0,0,0,
+ 0,-113,-229,0,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,0,0,0,0,0,0,
- 0,0,0,0,-141,-209,0,0,0,0,
- -197,-63,0,0,-95,0,0,0,-64,0,
+ 0,0,0,0,-137,0,0,0,0,-38,
+ -141,-40,0,0,-95,0,0,0,-55,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-207,-220,0,
- 0,0,0,-256,-66,0,0,-96,0,0,
- 0,-67,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-197,-254,0,
+ 0,0,0,-207,-56,0,0,-96,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,0,0,-228,0,0,0,
- 0,0,0,0,0,-108,-232,-109,0,0,
- -97,0,0,0,-278,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-313,0,0,0,0,0,0,
- 0,0,0,-239,-266,0,0,0,0,-246,
- -110,0,0,-98,0,0,0,-111,0,0,
+ -233,-267,0,0,0,0,-240,-64,0,0,
+ -97,0,0,0,-66,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-247,-267,0,0,
- 0,0,-248,-131,0,0,-99,0,0,0,
+ 0,0,0,-247,-268,0,0,0,0,-248,
+ -67,0,0,-98,0,0,0,-108,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-249,-286,0,0,
+ 0,-257,-250,-109,0,0,-99,0,0,0,
+ -110,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -269,0,0,0,0,-461,0,0,0,-100,
- 0,0,0,-320,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-274,0,0,0,0,0,-355,0,
- 0,0,-249,-273,0,0,0,0,-342,-286,
- 0,0,-101,0,0,0,-309,0,0,0,
+ -270,0,0,0,0,-460,0,0,0,-100,
+ 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,-275,0,
+ 0,0,-292,-274,0,0,0,0,-131,-287,
+ 0,0,-101,0,0,0,-311,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-281,0,0,0,0,0,0,0,0,
- -354,0,-143,0,0,-163,0,0,0,-361,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,-282,0,0,0,0,-299,0,0,0,
+ 0,-202,-143,0,0,-163,0,0,0,-344,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,-144,0,
- 0,0,0,0,0,0,0,0,0,-291,
+ 0,0,0,0,0,0,0,0,-145,-294,
0,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,-211,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-385,-411,0,0,0,0,-71,0,0,
- -475,0,0,-524,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,-388,-187,0,0,0,-304,-71,0,0,
+ 0,0,0,-527,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-145,0,0,
- 0,0,-293,-146,0,0,-343,0,0,0,
- -129,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-398,
- 0,0,0,0,0,0,0,0,0,-491,
- -132,0,0,0,-353,0,0,0,-518,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-364,0,0,
+ 0,-356,0,-146,0,0,-345,0,0,0,
+ -128,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,-414,
+ -494,0,0,0,-355,0,0,0,-147,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-135,0,0,0,0,0,0,0,
- 0,0,0,0,-377,0,0,0,0,0,
+ 0,0,0,-148,0,0,0,0,-129,0,
+ 0,0,-135,0,0,0,0,-228,0,0,
+ 0,0,0,0,-380,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-414,0,0,
- 0,0,0,0,0,0,0,-147,-142,0,
- 0,0,-378,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-417,0,0,
+ 0,0,0,0,0,0,0,0,-132,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,-205,0,0,0,
- -333,0,0,0,0,-227,0,0,0,0,
- 0,-148,-448,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-439,0,0,0,0,
- 0,0,0,0,0,0,-450,0,0,0,
- -103,0,0,0,0,0,0,0,0,0,
+ -335,0,0,0,0,0,0,0,0,0,
+ 0,-149,-451,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-296,0,0,0,0,
+ 0,0,0,0,0,-150,-142,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,-149,0,0,-372,0,0,0,
- -150,-297,0,0,0,0,0,-268,0,0,
+ 0,0,0,-205,0,0,0,0,0,-308,
+ 0,0,0,0,0,0,-375,0,0,0,
+ -464,0,0,0,0,0,0,-269,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,-224,0,0,0,0,0,-299,
+ 0,0,0,-211,0,0,0,0,0,0,
0,0,0,-88,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,-89,0,0,0,0,
+ 0,0,0,0,0,-89,0,0,0,-152,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-152,0,
- 0,0,0,0,-153,0,-389,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-153,0,-392,0,0,0,
0,0,0,0,0,0,0,0,0,-86,
- 0,0,0,-535,0,0,0,0,0,0,
+ 0,0,0,-154,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-18,0,0,
- 0,-294,-164,-264,-154,-265,0,-397,0,0,
- 0,-321,-117,-316,0,0,0,0,-155,0,
- 0,-427,0,0,-156,0,0,-231,0,0,
- 0,0,0,-157,0,0,-201,0,0,0,
+ 0,0,-295,0,0,0,0,-185,0,0,
+ 0,-328,-164,-155,-156,0,0,-232,0,0,
+ 0,-400,0,0,0,0,0,0,-157,0,
+ 0,-430,0,0,-158,0,0,-238,0,0,
+ 0,0,0,-159,0,0,-201,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,-158,0,0,0,0,
- 0,-326,-106,0,0,-118,0,0,-159,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,-319,-127,0,0,0,-235,
- 0,0,0,0,0,0,-139,0,0,0,
- -160,-288,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-310,0,
- -102,0,0,0,0,0,0,0,0,0,
- 0,0,-161,0,0,-349,0,0,0,0,
+ 0,0,0,0,0,-265,0,0,0,0,
+ 0,-298,-160,-18,0,0,0,0,-351,0,
+ 0,0,-242,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-259,
+ 0,0,0,0,-161,0,-134,0,-529,-300,
+ 0,-106,0,0,-309,0,0,0,0,0,
+ -314,-289,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-371,0,
+ -167,0,0,0,-48,0,0,0,0,0,
+ -204,0,-266,-168,0,0,-169,0,0,-320,
+ -305,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-359,
+ 0,0,0,0,0,0,0,0,0,0,
+ -43,0,0,0,0,-303,0,0,-325,0,
+ 0,-358,0,0,0,0,0,0,0,0,
+ -442,-172,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-244,-70,-331,-361,
+ 0,0,0,0,0,0,0,-239,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,-118,0,-327,-271,0,0,-246,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,
+ -80,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-173,
+ 0,-475,0,0,0,0,0,0,-370,0,
+ 0,0,0,0,0,0,0,-174,0,0,
+ 0,-273,0,0,0,-81,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,-82,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-429,0,0,0,0,
+ -478,-175,-190,0,0,0,-222,-178,0,0,
+ 0,0,-353,-179,-354,-44,-423,0,0,0,
+ 0,-116,-474,-180,0,0,0,-403,-136,0,
+ -183,0,0,0,0,0,0,-191,0,0,
+ -333,0,0,0,0,0,0,0,0,0,
+ 0,-449,0,0,0,0,-293,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,-192,0,-365,0,-326,0,0,0,0,
+ 0,0,-198,0,0,0,0,0,0,0,
+ 0,0,-521,0,0,-313,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -167,-350,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-295,0,-120,-302,
- 0,0,0,0,0,-357,0,0,-304,0,
+ -385,0,-337,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-526,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-206,
+ 0,-52,0,0,0,-352,0,-216,0,0,
+ -330,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-339,-117,0,0,0,-486,0,
+ 0,-217,0,0,0,0,-120,0,-226,-237,
+ 0,-199,0,0,0,0,0,0,-241,0,
+ 0,0,-377,0,-1,-395,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-258,0,0,0,0,0,0,-79,0,
+ 0,0,-14,0,0,0,0,0,-243,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,-409,0,0,0,0,0,-253,0,0,
+ -510,0,0,0,0,0,0,0,-258,0,
+ 0,0,0,0,-260,0,0,0,0,0,
+ 0,0,0,0,0,0,-448,-19,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-483,0,0,0,0,0,0,0,0,
- 0,0,0,-507,0,0,0,0,0,0,
- -168,0,0,-368,0,0,0,0,-298,-303,
- 0,-169,0,0,0,0,0,0,0,0,
- 0,0,0,-172,-80,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-83,0,0,0,-122,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,-261,0,0,
+ -84,0,0,0,-453,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-173,0,0,0,-74,0,
- 0,0,-174,0,0,0,0,0,0,0,
+ 0,0,0,-458,0,0,-276,0,0,0,
+ 0,-439,0,-341,-264,0,-280,0,0,0,
+ 0,-360,0,-251,-410,0,0,0,0,0,
+ -281,-389,0,-312,0,0,0,0,-284,0,
+ 0,0,0,0,-45,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-481,
+ 0,0,0,0,0,-317,0,0,0,0,
+ -420,0,0,0,0,0,0,0,-285,-42,
+ -390,-374,0,0,0,0,-391,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-352,-438,0,0,
+ -301,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-483,0,-102,0,0,
+ 0,0,-302,-508,0,0,0,0,0,0,
+ 0,0,0,0,-396,-504,0,-445,0,0,
+ -466,0,-307,-413,0,-124,0,0,-127,0,
+ 0,0,-421,0,0,0,0,0,0,-315,
0,0,0,0,0,0,0,0,0,0,
- -367,0,0,-82,0,0,0,0,0,0,
+ 0,-500,0,0,0,0,-316,0,0,-471,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-426,0,0,0,
- 0,-208,-351,-459,-243,0,0,0,0,0,
- 0,-400,0,0,-175,0,0,0,0,0,
- 0,0,-307,0,0,0,0,0,-327,-199,
- 0,0,0,0,0,0,0,-408,0,0,
+ -334,0,0,-332,0,-431,0,0,0,-416,
+ 0,0,-346,0,0,0,-357,0,0,0,
+ 0,0,-499,0,0,-469,0,0,0,0,
+ -462,0,0,0,0,0,0,-514,0,0,
+ -348,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-461,0,-366,
+ 0,0,0,-236,0,-425,0,0,0,0,
+ -139,0,0,0,-463,0,0,0,-46,0,
+ 0,-465,0,0,0,0,0,0,0,0,
+ 0,0,0,-516,0,0,0,0,-212,0,
0,0,0,0,0,0,0,0,0,0,
- -446,0,-308,-324,0,0,0,0,-178,0,
- -179,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-180,-270,0,0,0,
- 0,0,0,-237,0,0,0,-183,0,0,
- 0,0,0,-312,0,0,0,0,0,0,
+ 0,0,0,0,0,-428,0,-495,-369,0,
+ 0,0,0,0,-538,0,0,0,0,-384,
+ -470,0,0,0,0,0,0,0,-473,0,
+ 0,0,0,0,0,0,0,0,0,-171,
+ 0,0,0,-227,0,0,0,0,-402,0,
+ 0,0,0,0,0,0,0,0,-518,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,0,-523,0,0,0,0,
- 0,0,0,0,0,0,0,0,-356,-204,
- -52,0,0,0,0,0,0,-191,-386,-329,
+ 0,-484,-213,0,0,0,0,0,-433,0,
+ 0,0,0,0,-393,-520,0,0,0,0,
+ 0,0,-492,-394,0,0,0,-472,-496,0,
+ 0,0,0,0,-397,-398,-524,-525,0,0,
+ 0,0,0,-404,0,-406,0,0,0,0,
+ -412,0,0,0,0,0,-47,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-47,0,0,0,-238,0,0,0,
- 0,0,-14,-192,0,0,0,-430,0,0,
- 0,0,-181,-417,0,0,0,0,0,0,
- -463,-198,-466,0,0,0,0,0,0,-382,
+ 0,-230,0,0,0,-501,0,0,-535,-419,
+ -426,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-505,-252,-427,-450,0,0,0,
+ 0,0,-476,-489,0,0,0,0,0,-503,
+ -507,0,0,0,0,0,0,0,0,-182,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-540,-511,-512,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-206,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-330,0,-216,
- 0,0,0,0,0,0,-217,0,0,-245,
- 0,0,0,-272,0,0,0,0,0,0,
- 0,0,-292,0,0,0,-19,0,0,0,
+ 0,0,0,0,-490,-485,-452,-194,0,0,
+ -497,0,0,0,0,-467,0,0,0,0,
+ 0,-454,-513,0,0,0,0,-455,0,-456,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-457,0,-517,-459,-522,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-83,0,0,0,-225,0,0,
+ -74,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-122,0,0,-84,
- 0,0,0,-236,0,0,0,0,0,0,
+ 0,0,0,0,0,-75,0,0,0,-477,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-455,0,0,-240,0,-134,-526,-420,
- -359,0,0,0,0,-311,0,0,0,-332,
- -335,-360,-242,-337,0,0,0,0,0,-460,
- -212,0,0,0,0,-43,0,0,0,0,
- 0,0,0,-171,0,0,0,0,0,0,
- 0,0,0,0,0,0,-478,0,0,0,
- 0,-252,-436,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-362,0,
- 0,0,-124,0,-213,0,0,0,0,-44,
- -257,0,0,0,0,0,0,-471,-259,0,
0,0,0,0,0,0,0,0,0,0,
- -480,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,-393,-45,0,0,-521,0,0,-260,0,
- -469,0,0,-46,0,0,0,0,0,0,
- 0,-185,0,0,0,0,0,0,0,0,
- 0,0,0,0,-497,0,0,-392,0,0,
- 0,0,0,0,-275,0,0,0,0,0,
+ 0,0,0,-78,0,0,0,-530,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-279,-1,0,0,0,0,-194,0,-280,
- 0,0,0,0,0,-226,0,0,0,-283,
- 0,0,0,0,0,0,0,0,-511,0,
- 0,0,0,-328,-473,-339,-468,0,0,0,
+ 0,0,0,0,0,0,-336,-531,-536,-479,
+ 0,-468,0,0,0,-480,-373,-482,-487,-491,
+ 0,-498,-506,-515,-523,0,-407,-537,-528,0,
+ -539,0,-65,0,0,0,0,-362,0,0,
+ 0,0,0,-214,-318,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -443,0,0,-284,0,-406,0,0,0,0,
- 0,-444,-300,-301,0,0,0,0,0,0,
- -445,0,0,0,0,0,0,0,0,0,
- 0,0,-513,0,0,-388,0,0,-458,0,
- -306,0,0,-314,0,0,0,0,0,0,
- 0,0,0,0,-404,0,0,0,-434,0,
- -315,0,-190,0,0,0,-331,0,0,-344,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-492,0,0,0,
- 0,-229,0,0,0,-358,0,-374,0,0,
- 0,0,0,0,0,0,0,-515,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,-287,0,0,0,0,0,-325,0,0,
- 0,-346,-387,0,0,0,0,0,-410,-490,
- -517,-407,0,0,0,-399,0,0,-464,0,
- 0,0,0,0,-418,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,-498,-338,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-363,0,0,-532,-48,-70,
- 0,0,0,0,-486,0,0,0,0,0,
- 0,0,0,0,0,-366,0,0,-487,-162,
- 0,-500,0,-381,0,0,0,0,0,0,
- 0,0,0,-390,-391,0,0,0,-347,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-537,0,0,0,0,0,0,-465,0,
- 0,0,-394,0,0,0,0,0,0,0,
- 0,0,0,0,0,-395,-401,0,-494,-214,
- 0,0,0,0,-413,-403,-409,-416,0,0,
- 0,0,0,-423,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-371,0,0,
- -505,0,-472,0,0,-424,0,0,0,0,
- 0,0,0,0,0,0,-75,0,0,0,
+ 0,0,0,0,0,-162,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-447,
- 0,-77,0,0,0,-449,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-78,0,0,0,-522,0,
+ 0,0,0,-379,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-288,0,0,0,
+ 0,0,0,-438,0,0,0,0,0,0,
+ 0,0,0,0,-363,0,0,0,0,-215,
+ 0,0,0,0,0,0,0,0,-290,0,
+ 0,-432,-437,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-334,0,-290,
- -422,0,-215,0,0,-425,0,-370,-467,0,
- -470,0,0,-276,0,-489,0,0,0,0,
- 0,-493,0,0,-451,0,-514,-452,-496,-453,
- 0,0,0,0,-502,-504,-508,-509,0,0,
0,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,-510,-289,-454,0,0,-456,0,0,0,
- 0,0,-519,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-376,0,0,0,0,0,
- 0,0,0,0,0,0,0,-182,0,0,
- 0,0,-528,0,-435,-474,0,-476,0,-477,
- 0,0,-479,0,-341,0,0,0,-484,0,
- 0,0,0,0,0,0,0,0,-527,0,
- -516,0,-533,-534,0,0,-189,0,0,0,
- 0,0,0,0,0,0,-488,0,0,-495,
- 0,0,0,0,0,0,0,0,-503,0,
- 0,-512,-520,-525,-536,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,-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,-189,
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,0,0,0,
- 0,0,-22,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,-23,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,-24,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-25,0,
+ 0,-24,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-25,0,0,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,-26,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,-27,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,-60,
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,-73,0,
+ 0,-72,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,
- -193,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-193,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-336,0,0,0,0,0,0,0,
- 0,0,-364,-250,-251,-317,0,0,0,0,
- 0,0,-369,0,0,0,0,-429,0,0,
+ 0,0,0,0,0,0,0,-338,-277,-519,
+ 0,0,0,0,0,0,0,-367,0,0,
+ 0,0,0,0,0,0,0,-372,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
@@ -477,52 +483,52 @@ public class CPPNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-412,0,0,0,0,
- 0,0,0,0,0,-421,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ -415,0,0,0,0,0,0,0,0,0,
+ -424,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-200,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,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,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-380,0,0,0,0,0,0,0,
- 0,0,0,0,0,-499,0,0,0,0,
+ 0,0,0,0,0,0,0,-306,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,-343,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,-502,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,-210,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-348,-384,0,0,0,0,0,-481,
- 0,0,0,0,0,0,0,-262,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,0,0,
- -263,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,-263,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-208,0,0,-329,0,0,
+ 0,0,0,0,-368,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-340,0,0,0,0,0,0,
+ 0,0,0,0,-349,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -402,0,0,0,0,0,0,0,0,0,
- 0,0,0,-365,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-405,0,0,0,-419,
- 0,0,0,0,0,0,0,-501,0,0,
- 0,0,0,0,-431,0,0,0,0,0,
- 0,0,0,0,0,-432,0,0,0,0,
- 0,-442,0,0,0,0,0,0,0,0,
+ 0,0,-387,0,0,0,0,0,0,0,
+ -405,0,0,0,0,0,0,0,0,0,
+ 0,-408,0,0,0,0,0,0,0,0,
+ 0,0,0,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,
- -440,0,0,0,0,0,0,-42,0,0,
- 0,0,-65,0,0,0,0,0,0,0,
- 0,0,0,0,-200,0,0,0,0,0,
- 0,0,0,0,0,0,0,-210,0,0,
+ -434,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-433,0,0,0,0,
- 0,0,0,0,0,0,-482,0,0,0,
- 0,0,-255,0,0,0,0,0,0,-485,
+ 0,0,0,-435,0,0,0,-443,0,0,
+ 0,-436,0,0,0,0,0,-350,-256,0,
+ 0,0,0,0,0,-488,-446,0,0,0,
+ 0,0,0,0,0,-447,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-493,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
@@ -538,8 +544,7 @@ public class CPPNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,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;
@@ -570,19 +575,19 @@ public class CPPNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
55,55,179,179,70,70,70,103,103,180,
180,71,71,71,181,181,72,72,72,72,
72,73,73,84,84,84,84,84,84,84,
- 84,49,49,49,49,49,116,116,114,114,
- 50,182,23,23,23,23,23,48,48,87,
+ 84,50,50,50,50,50,116,116,114,114,
+ 51,182,23,23,23,23,23,48,48,87,
87,87,87,87,152,152,147,147,147,147,
147,148,148,148,149,149,149,150,150,150,
151,151,151,88,88,88,88,88,89,89,
89,13,13,13,13,13,13,13,13,13,
13,13,98,120,120,120,120,120,120,118,
118,118,153,119,119,183,155,155,154,154,
- 122,122,104,79,79,80,81,52,47,156,
- 156,53,51,86,86,157,157,146,146,123,
+ 122,122,104,79,79,80,81,53,47,156,
+ 156,54,52,86,86,157,157,146,146,123,
124,124,125,76,76,158,158,63,63,63,
60,60,59,64,64,75,75,58,58,58,
- 54,90,90,100,99,99,62,62,61,61,
+ 49,90,90,100,99,99,62,62,61,61,
57,57,45,101,101,101,93,93,93,94,
94,95,95,95,96,96,105,105,105,107,
107,106,106,202,202,91,91,185,185,185,
@@ -602,493 +607,497 @@ public class CPPNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
82,173,173,132,132,133,133,133,133,133,
133,3,134,134,131,131,112,112,85,78,
74,161,161,113,113,197,197,197,135,135,
- 126,126,198,198,174,174,1119,35,2702,2691,
- 1278,3224,27,30,31,936,984,26,28,2601,
- 25,23,50,1027,106,76,77,107,1052,1614,
- 1272,1255,1289,1279,1297,56,1291,1409,1340,689,
- 272,1418,1505,142,1243,35,395,157,143,1217,
- 35,791,32,1982,2547,27,30,31,936,984,
- 57,28,496,71,3121,35,791,32,231,2428,
- 27,30,31,936,984,26,28,781,25,23,
- 50,1027,106,76,77,107,1052,1267,1272,1255,
- 1289,1279,2435,234,229,230,588,1635,1764,34,
- 3121,35,791,32,273,2428,27,30,31,936,
- 984,26,28,781,25,23,50,1027,106,76,
- 77,107,2018,241,244,247,250,802,2164,35,
- 276,588,35,1764,3080,1762,1172,1860,35,791,
- 32,241,2547,27,30,31,936,984,56,28,
- 2023,583,3714,2443,2506,2619,3157,3263,4535,2316,
- 35,791,32,2981,2428,27,30,31,936,984,
- 26,28,781,25,23,50,1027,106,76,77,
- 107,1052,342,1272,1255,1289,1279,1297,61,1291,
- 1409,1340,1607,3103,1418,1505,142,3928,56,2222,
- 516,143,747,1279,2503,1500,35,791,32,1010,
- 2417,41,30,31,936,984,517,2316,35,791,
- 32,2981,2428,27,30,31,936,984,26,28,
- 781,25,23,50,1027,106,76,77,107,1052,
- 342,1272,1255,1289,1279,1297,2928,1291,1409,1340,
- 1123,1016,1418,1505,142,327,35,278,516,143,
- 3967,2532,2503,1351,1374,327,35,278,661,1599,
- 4808,512,1229,875,517,2103,60,2344,35,791,
- 32,2371,4795,27,30,31,936,984,26,28,
- 2899,510,497,2901,1261,2316,35,791,32,2981,
- 2428,27,30,31,936,984,26,28,781,25,
- 23,50,1027,106,76,77,107,1052,342,1272,
- 1255,1289,1279,1297,1042,1291,1409,1340,2870,512,
- 1418,1505,142,69,94,3242,516,143,3003,1374,
- 2503,588,35,2436,2434,1607,2103,1330,2916,1988,
- 3928,2901,517,2524,35,791,32,2981,2428,27,
- 30,31,936,984,26,28,781,25,23,50,
- 1027,106,76,77,107,1052,342,1272,1255,1289,
- 1279,1297,1503,1291,1409,1340,2981,2852,1418,1505,
- 142,327,35,452,516,143,4661,1614,2503,2928,
- 42,3032,3836,331,69,342,2558,512,737,3386,
- 517,1715,35,791,32,314,4795,27,30,31,
- 936,984,59,28,352,934,3014,1322,2716,2901,
- 24,2659,35,791,32,3023,2428,27,30,31,
- 936,984,26,28,781,25,23,50,1027,106,
- 76,77,107,1052,2626,1272,1255,1289,1279,1297,
- 3332,1291,1409,1340,442,513,1418,1505,142,2280,
- 1270,3831,378,143,2385,35,791,32,1017,2428,
- 27,30,31,936,984,26,28,781,25,23,
- 50,1027,106,76,77,107,1052,2245,1272,1255,
- 1289,1279,1297,1334,1291,1409,1340,327,334,1418,
- 1505,142,2129,2196,3831,378,143,437,3121,35,
- 791,32,413,2428,27,30,31,936,984,26,
- 28,781,25,23,50,1027,106,76,77,107,
- 1052,2404,1272,1255,1289,1279,1297,56,1291,1409,
- 1340,825,1667,1418,3063,163,588,3625,1543,384,
- 3278,445,3697,3706,2591,35,791,32,2103,2428,
- 27,30,31,936,984,26,28,781,25,23,
- 50,1027,106,76,77,107,1052,3518,1272,1255,
- 1289,1279,1297,2034,1291,1409,1340,446,3928,1418,
- 1505,142,385,3278,3831,378,143,56,3562,1833,
- 2626,1143,3355,2887,35,791,32,3893,2428,27,
- 30,31,936,984,26,28,781,25,23,50,
- 1027,106,76,77,107,1052,155,1272,1255,1289,
- 1279,1297,1330,1291,1409,1340,927,2928,1418,1505,
- 142,1123,135,912,157,143,588,35,292,2887,
- 35,791,32,2729,2428,27,30,31,936,984,
- 26,28,781,25,23,50,1027,106,76,77,
- 107,1052,1500,1272,1255,1289,1279,1297,142,1291,
- 1409,1340,376,3278,1418,1505,142,1947,35,276,
- 372,143,2887,35,791,32,3242,2428,27,30,
- 31,936,984,26,28,781,25,23,50,1027,
- 106,76,77,107,1052,1445,1272,1255,1289,1279,
- 1297,69,1291,1409,1340,96,3512,1418,1505,142,
- 737,236,64,372,143,1715,35,791,32,2284,
- 4795,27,30,31,936,984,58,28,583,587,
- 3405,494,3094,2887,35,791,32,1355,2428,27,
- 30,31,936,984,26,28,781,25,23,50,
- 1027,106,76,77,107,1052,371,1272,1255,1289,
- 1279,1297,1868,1291,1409,1340,722,1715,1418,1505,
- 142,1010,1270,159,372,143,2457,35,791,32,
- 400,2428,27,30,31,936,984,26,28,781,
- 25,23,50,1027,106,76,77,107,1052,370,
- 1272,1255,1289,1279,1297,2149,1291,1409,1340,333,
- 334,1418,1505,142,588,35,3087,141,143,2716,
- 2887,35,791,32,420,2428,27,30,31,936,
- 984,26,28,781,25,23,50,1027,106,76,
- 77,107,1052,322,1272,1255,1289,1279,1297,1226,
- 1291,1409,1340,1614,459,1418,1505,142,1146,1614,
- 368,158,143,2887,35,791,32,2620,2428,27,
- 30,31,936,984,26,28,781,25,23,50,
- 1027,106,76,77,107,1052,69,1272,1255,1289,
- 1279,1297,68,1291,1409,1340,1614,1873,1418,1505,
- 142,588,35,281,154,143,2887,35,791,32,
- 388,2428,27,30,31,936,984,26,28,781,
- 25,23,50,1027,106,76,77,107,1052,53,
- 1272,1255,1289,1279,1297,380,1291,1409,1340,93,
- 56,1418,1505,142,4568,1617,2490,153,143,2887,
- 35,791,32,1625,2428,27,30,31,936,984,
- 26,28,781,25,23,50,1027,106,76,77,
- 107,1052,353,1272,1255,1289,1279,1297,3566,1291,
- 1409,1340,1614,56,1418,1505,142,999,446,311,
- 152,143,2887,35,791,32,1627,2428,27,30,
- 31,936,984,26,28,781,25,23,50,1027,
- 106,76,77,107,1052,87,1272,1255,1289,1279,
- 1297,323,1291,1409,1340,1614,56,1418,1505,142,
- 2845,1614,1174,151,143,2887,35,791,32,2652,
- 2428,27,30,31,936,984,26,28,781,25,
- 23,50,1027,106,76,77,107,1052,52,1272,
- 1255,1289,1279,1297,90,1291,1409,1340,1614,56,
- 1418,1505,142,938,2049,1323,150,143,2887,35,
- 791,32,1441,2428,27,30,31,936,984,26,
- 28,781,25,23,50,1027,106,76,77,107,
- 1052,349,1272,1255,1289,1279,1297,56,1291,1409,
- 1340,2917,403,1418,1505,142,160,1614,676,149,
- 143,2887,35,791,32,666,2428,27,30,31,
- 936,984,26,28,781,25,23,50,1027,106,
- 76,77,107,1052,322,1272,1255,1289,1279,1297,
- 1844,1291,1409,1340,1614,56,1418,1505,142,1857,
- 1614,848,148,143,2887,35,791,32,1167,2428,
- 27,30,31,936,984,26,28,781,25,23,
- 50,1027,106,76,77,107,1052,1882,1272,1255,
- 1289,1279,1297,67,1291,1409,1340,1614,56,1418,
- 1505,142,2569,1614,2683,147,143,2887,35,791,
- 32,283,2428,27,30,31,936,984,26,28,
- 781,25,23,50,1027,106,76,77,107,1052,
- 66,1272,1255,1289,1279,1297,65,1291,1409,1340,
- 70,56,1418,1505,142,2934,588,3977,146,143,
- 2887,35,791,32,666,2428,27,30,31,936,
- 984,26,28,781,25,23,50,1027,106,76,
- 77,107,1052,2619,1272,1255,1289,1279,1297,2619,
- 1291,1409,1340,1614,56,1418,1505,142,2444,1604,
- 2151,145,143,2887,35,791,32,2582,2428,27,
- 30,31,936,984,26,28,781,25,23,50,
- 1027,106,76,77,107,1052,64,1272,1255,1289,
- 1279,1297,56,1291,1409,1340,2442,401,1418,1505,
- 142,588,3464,408,144,143,2832,35,791,32,
- 2552,2428,27,30,31,936,984,26,28,781,
- 25,23,50,1027,106,76,77,107,1052,580,
- 1272,1255,1289,1279,1297,324,1291,1409,1340,71,
- 1614,1418,3063,163,2887,35,791,32,405,2428,
- 27,30,31,936,984,26,28,781,25,23,
- 50,1027,106,76,77,107,1052,1818,1272,1255,
- 1289,1279,1297,3078,1291,1409,1340,389,426,1418,
- 1505,142,1761,1761,88,139,143,102,56,326,
- 89,2044,1143,102,3005,35,791,32,2187,2428,
- 27,30,31,936,984,26,28,781,25,23,
- 50,1027,106,76,77,107,1052,155,1272,1255,
- 1289,1279,1297,287,1291,1409,1340,2149,1015,1418,
- 1505,142,2103,1614,1699,188,143,3121,35,791,
- 32,1010,2428,27,30,31,936,984,26,28,
- 781,25,23,50,1027,106,76,77,107,1052,
- 2552,1272,1255,1289,1279,1297,55,1291,1409,1340,
- 1761,1010,1418,3063,163,3121,35,791,32,2742,
- 2428,27,30,31,936,984,26,28,781,25,
- 23,50,1027,106,76,77,107,1052,298,1272,
- 1255,1289,1279,1297,522,1291,1409,1340,355,354,
- 1418,3063,163,2271,35,791,32,530,530,40,
- 30,31,936,984,458,3121,35,791,32,422,
- 2428,27,30,31,936,984,26,28,781,25,
- 23,50,1027,106,76,77,107,1052,2552,1272,
- 1255,1289,1279,1297,4281,1291,1409,1340,1700,1010,
- 1418,3063,163,3121,35,791,32,291,2428,27,
- 30,31,936,984,26,28,781,25,23,50,
- 1027,106,76,77,107,1052,220,1272,1255,1289,
- 1279,1297,522,1291,1409,1340,322,1010,1418,3063,
- 163,2271,35,791,32,530,1330,1900,30,31,
- 936,984,1223,3176,35,791,32,421,2428,27,
- 30,31,936,984,26,28,781,25,23,50,
- 1027,106,76,77,107,1052,2552,1272,1255,1289,
- 1279,1297,51,1291,1409,1340,1801,2552,1418,3063,
- 163,3121,35,791,32,424,2428,27,30,31,
- 936,984,26,28,781,25,23,50,1027,106,
- 76,77,107,1052,302,1272,1255,1289,1279,1297,
- 325,1291,1409,1340,1385,178,2583,2271,35,791,
- 32,1559,2417,2050,30,31,936,984,2407,35,
- 279,3121,35,791,32,3943,2428,27,30,31,
- 936,984,26,28,781,25,23,50,1027,106,
- 76,77,107,1052,2135,1272,1255,1289,1279,1297,
- 1330,1291,1409,2509,3121,35,791,32,1615,2428,
- 27,30,31,936,984,26,28,781,25,23,
- 50,1027,106,76,77,107,1052,2191,1272,1255,
- 1289,1279,1297,3196,1291,2464,3121,35,791,32,
- 3201,2428,27,30,31,936,984,26,28,781,
- 25,23,50,1027,106,76,77,107,1052,1965,
- 1272,1255,1289,1279,1297,2022,2496,1518,35,791,
- 32,4583,3659,27,30,31,936,984,338,28,
- 3121,35,791,32,159,2428,27,30,31,936,
- 984,26,28,781,25,23,50,1027,106,76,
- 77,107,1052,1758,1272,1255,1289,2449,1976,35,
- 1599,387,1614,2484,142,1709,2690,2842,1243,35,
- 395,2928,737,3347,2280,331,318,1850,320,2425,
- 313,1506,843,35,452,2491,238,4661,588,35,
- 1764,275,49,312,1701,54,350,757,35,1599,
- 387,1592,740,3121,35,791,32,3945,2428,27,
- 30,31,936,984,26,28,781,25,23,50,
- 1027,106,76,77,107,1052,1712,1272,1255,1289,
- 2455,272,2440,2147,1270,231,1225,3640,351,486,
- 305,309,1365,1400,35,791,32,3883,3542,27,
- 30,31,936,984,338,28,343,1457,879,348,
- 239,229,230,2138,1628,1010,929,35,1599,387,
- 2079,3516,334,2863,3708,2893,3736,932,35,1599,
- 387,1374,1888,35,791,32,3404,3542,27,30,
- 31,936,984,338,28,3164,379,2103,231,2582,
- 49,56,318,1850,320,1143,313,1506,351,1592,
- 2988,49,72,1783,1839,350,2582,3355,351,3424,
- 1592,1033,3483,243,229,230,343,1457,879,348,
- 155,1875,2582,2467,341,2870,343,1457,879,348,
- 2551,318,1850,320,3390,313,1506,56,97,1240,
- 69,3200,449,3697,3706,3594,1010,351,2869,1898,
- 35,3552,32,4583,3659,27,30,31,936,984,
- 338,28,2129,35,292,343,1457,879,348,3121,
- 35,791,32,1628,2428,27,30,31,936,984,
- 26,28,781,25,23,50,1027,106,76,77,
- 107,1052,2556,1272,1255,2202,536,44,3032,390,
- 426,231,2699,2928,1243,35,395,331,318,1850,
- 320,3321,313,1506,2050,3855,392,426,365,56,
- 1390,155,1453,3818,958,1193,246,229,230,98,
- 179,2237,391,426,2125,3121,35,791,32,3945,
- 2428,27,30,31,936,984,26,28,781,25,
- 23,50,1027,106,76,77,107,1052,194,1272,
- 1255,2274,3121,35,791,32,2320,2428,27,30,
- 31,936,984,26,28,781,25,23,50,1027,
- 106,76,77,107,1052,2244,1272,1255,2281,3121,
- 35,791,32,2380,2428,27,30,31,936,984,
- 26,28,781,25,23,50,1027,106,76,77,
- 107,1052,3993,1893,416,418,3490,322,1691,35,
- 791,32,4583,3542,27,30,31,936,984,338,
- 28,2129,3655,292,3121,35,791,32,1849,2428,
- 27,30,31,936,984,26,28,781,25,23,
- 50,1027,106,76,77,107,1052,259,1272,1255,
- 2328,536,1375,2122,2552,2234,2981,3928,4584,2981,
- 2620,2699,838,4718,195,2415,2837,318,1850,320,
- 227,313,1506,56,284,2513,155,2586,2513,1614,
- 588,35,1599,387,312,179,2237,2852,588,35,
- 1599,387,197,202,214,4674,201,211,212,213,
- 215,1,168,56,56,536,2928,2602,3191,2279,
- 331,2304,321,167,49,182,166,169,170,171,
- 172,173,430,46,227,2320,2446,1643,3464,181,
- 155,306,309,1365,588,3372,1764,74,1096,179,
- 2237,2852,2980,359,1643,3464,359,202,214,4674,
- 201,211,212,213,215,3040,168,1714,3186,3203,
- 1930,3186,3203,588,35,1599,387,167,180,183,
- 166,169,170,171,172,173,2070,35,791,32,
- 3883,3542,27,30,31,936,984,338,28,1614,
- 1983,3231,35,1599,387,3928,2536,451,2572,1614,
- 1363,35,791,32,236,3659,27,30,31,936,
- 984,338,28,588,35,1599,387,1543,35,1764,
- 3380,428,101,2715,2453,272,2891,2981,588,35,
- 1599,387,3559,1773,1614,318,1850,320,3928,313,
- 1506,1614,1781,2481,2928,3644,342,49,332,286,
- 2209,351,525,231,2928,4706,1592,733,332,318,
- 1850,320,433,314,1506,351,286,2226,799,343,
- 1457,879,348,49,450,351,528,526,234,229,
- 230,1704,3481,345,1457,879,348,2928,56,273,
- 2515,332,3202,345,1457,879,348,2615,2797,3481,
- 1543,35,1764,275,588,35,1764,277,241,244,
- 247,250,802,588,35,1764,3487,3066,35,791,
- 32,1172,2428,27,30,31,936,984,26,28,
- 781,25,23,50,1027,86,76,77,2443,2506,
- 2619,3157,3263,4535,3121,35,791,32,2285,2428,
- 27,30,31,936,984,26,28,781,25,23,
- 50,1027,106,76,77,107,1052,1606,1272,2379,
- 3121,35,791,32,2621,2428,27,30,31,936,
- 984,26,28,781,25,23,50,1027,106,76,
- 77,107,1052,345,1272,2385,1250,536,56,2443,
- 2646,2234,1143,1143,2981,2981,588,35,1764,280,
- 737,56,737,2305,56,3828,227,441,3728,455,
- 2552,56,155,2513,2513,1143,56,1591,155,231,
- 2981,179,2237,2852,2447,35,1599,387,161,202,
- 214,4674,201,211,212,213,215,431,168,342,
- 155,536,2306,56,249,229,230,1143,196,167,
- 1720,3949,166,169,170,171,172,173,49,322,
- 227,2503,1270,1780,1270,56,155,1592,1957,1143,
- 56,1515,3321,1676,2981,179,2237,2852,1330,2689,
- 3483,504,359,202,214,4674,201,211,212,213,
- 215,517,168,342,155,536,2989,3186,3203,329,
- 334,3553,334,167,1757,177,166,169,170,171,
- 172,173,322,56,227,2503,1330,2981,3842,2691,
- 155,1614,502,503,56,231,296,1678,2981,179,
- 2237,2852,1243,35,3138,2314,342,202,214,4674,
- 201,211,212,213,215,603,168,342,69,536,
- 252,229,230,4710,377,2485,2852,167,2503,175,
- 166,169,170,171,172,173,49,3963,227,2503,
- 1721,524,2693,2249,155,1592,871,1143,56,295,
- 2649,1728,2981,179,2237,2852,932,35,1599,387,
- 1906,202,214,4674,201,211,212,213,215,689,
- 168,342,155,536,1375,2552,56,322,2981,3928,
- 1379,167,534,176,166,169,170,171,172,173,
- 49,56,227,2503,2555,2981,69,2513,155,1592,
- 47,4725,56,2580,2714,1677,2981,179,2237,2852,
- 1218,1088,2288,301,342,202,214,4674,201,211,
- 212,213,215,775,168,342,2412,536,2928,2556,
- 4406,2722,331,1143,2717,167,2503,186,166,169,
- 170,171,172,173,303,2122,227,2503,508,737,
- 4584,2723,155,588,35,1599,387,2727,155,506,
- 2728,179,2237,2852,2990,359,3705,199,3639,202,
- 214,4674,201,211,212,213,215,322,168,1714,
- 3186,3203,929,35,1599,387,56,272,1330,167,
- 1972,3994,166,169,170,171,172,173,1952,35,
- 791,32,4583,3542,27,30,31,936,984,338,
- 28,1270,929,35,1599,387,49,540,588,35,
- 1599,387,2627,56,521,1592,47,1973,2852,56,
- 56,861,69,3479,2981,536,1330,4736,1461,588,
- 35,1599,387,375,381,69,49,3040,3829,334,
- 4771,274,272,342,227,1592,2502,318,1850,320,
- 155,313,1506,1614,932,35,1599,387,3548,179,
- 2237,2852,1981,432,312,2503,2852,202,214,4674,
- 201,211,212,213,215,1675,168,533,947,1354,
- 1354,375,536,1143,1143,2552,3399,167,49,191,
- 166,169,170,171,172,173,2731,1592,47,2552,
- 1607,227,1614,429,2735,3928,339,155,159,159,
- 2277,305,309,1365,2082,2732,179,2237,2852,929,
- 35,1599,387,200,202,214,4674,201,211,212,
- 213,215,1033,168,3959,3453,536,198,373,588,
- 35,1599,387,2068,167,3708,185,166,169,170,
- 171,172,173,49,2928,227,2736,2747,331,2552,
- 56,155,1592,811,1143,56,2746,2751,2789,3935,
- 179,2237,2852,431,2737,3548,1456,1585,202,214,
- 4674,201,211,212,213,215,3826,168,2646,155,
- 2980,1088,2981,588,35,292,2750,297,167,1763,
- 193,166,169,170,171,172,173,3121,35,791,
- 32,2513,2428,27,30,31,936,984,26,28,
- 781,25,23,50,1027,106,76,77,107,1052,
- 2782,1919,3121,35,791,32,2790,2428,27,30,
- 31,936,984,26,28,781,25,23,50,1027,
- 106,76,77,107,2024,3121,35,791,32,1330,
- 2428,27,30,31,936,984,26,28,781,25,
- 23,50,1027,106,76,77,107,2148,1562,504,
- 1796,56,2981,56,2981,4742,56,1143,1823,56,
- 3441,56,2981,2060,56,3507,56,3699,1143,2852,
- 3731,227,56,2513,521,87,961,2552,2755,2765,
- 2757,227,155,2981,523,56,1614,1614,1614,3528,
- 501,503,1843,155,204,214,4674,203,211,212,
- 213,215,342,2535,204,214,4674,203,211,212,
- 213,215,2413,1607,2759,3189,2966,2761,3928,3561,
- 3316,3799,2069,1778,3882,205,207,209,293,294,
- 3319,3683,216,206,208,205,207,209,293,294,
- 3319,360,216,206,208,2062,35,3552,32,4583,
- 3542,27,30,31,936,984,338,28,588,35,
- 1599,387,3259,1614,4323,1910,2153,2928,2763,2981,
- 173,331,3312,2792,4323,2156,35,791,32,2797,
- 3659,27,30,31,936,984,338,28,227,2552,
- 1333,56,49,1614,2552,1143,3964,588,35,1599,
- 387,1592,1182,2990,318,1850,320,2787,313,1506,
- 2733,204,214,4674,203,211,212,213,215,2768,
- 155,1193,2794,2796,2655,1337,3672,221,5391,2928,
- 3933,49,192,332,318,1850,320,5391,316,1506,
- 1592,1227,205,207,209,293,294,3319,5391,216,
- 206,208,3121,35,791,32,5391,2428,27,30,
- 31,936,984,26,28,781,25,23,50,1027,
- 106,76,77,85,5391,5391,3858,5391,5391,3407,
- 5391,4323,3121,1635,791,1642,5391,2428,27,30,
- 31,936,984,26,28,781,25,23,50,1027,
- 106,76,77,84,5391,5391,5391,5391,5391,5391,
- 417,418,3490,3121,35,791,32,5391,2428,27,
- 30,31,936,984,26,28,781,25,23,50,
- 1027,106,76,77,83,3121,35,791,32,5391,
- 2428,27,30,31,936,984,26,28,781,25,
- 23,50,1027,106,76,77,82,3121,35,791,
- 32,5391,2428,27,30,31,936,984,26,28,
- 781,25,23,50,1027,106,76,77,81,3121,
- 35,791,32,5391,2428,27,30,31,936,984,
- 26,28,781,25,23,50,1027,106,76,77,
- 80,3121,35,791,32,5391,2428,27,30,31,
- 936,984,26,28,781,25,23,50,1027,106,
- 76,77,79,3121,35,791,32,5391,2428,27,
- 30,31,936,984,26,28,781,25,23,50,
- 1027,106,76,77,78,2950,35,791,32,5391,
- 2428,27,30,31,936,984,26,28,781,25,
- 23,50,1027,106,76,77,104,3121,35,791,
- 32,5391,2428,27,30,31,936,984,26,28,
- 781,25,23,50,1027,106,76,77,109,3121,
- 35,791,32,5391,2428,27,30,31,936,984,
- 26,28,781,25,23,50,1027,106,76,77,
- 108,3121,35,791,32,5391,2428,27,30,31,
- 936,984,26,28,781,25,23,50,1027,106,
- 76,77,105,1997,5391,5391,5391,2981,5391,5391,
- 5391,5391,5391,1649,1354,1354,1354,2981,1143,1143,
- 1143,5391,5391,1736,5391,5391,227,2981,1354,5391,
- 5391,5391,1143,5391,5391,5391,227,5391,5391,5391,
- 5391,5391,5391,159,159,159,227,5391,5391,204,
- 214,4674,203,211,212,213,215,159,5391,204,
- 214,4674,203,211,212,213,215,5391,5391,204,
- 214,4674,203,211,212,213,215,5391,5391,5391,
- 205,207,209,293,294,3319,5391,519,206,208,
- 205,207,209,293,294,3319,5391,518,206,208,
- 205,207,209,293,294,3319,2084,217,206,208,
- 2981,2023,2432,2979,5391,5391,2171,5391,5391,5391,
- 2981,5391,5391,5391,5391,3031,5391,5391,5391,227,
- 5391,5391,5391,5391,5391,5391,5391,5391,5391,227,
- 5391,5391,5391,5391,5391,5391,5391,5391,5391,5391,
- 5391,5391,204,214,4674,203,211,212,213,215,
- 5391,5391,204,214,4674,203,211,212,213,215,
- 1691,35,791,32,4583,3542,27,30,31,936,
- 984,338,28,205,207,209,293,294,3319,5391,
- 304,206,208,205,207,209,293,294,3319,5391,
- 498,206,208,2156,35,791,32,5391,3659,27,
- 30,31,936,984,338,28,1691,35,791,32,
- 4583,3542,27,30,31,936,984,338,28,318,
- 1850,320,5391,313,1506,3280,35,1599,387,5391,
- 2536,5391,5391,5391,5391,5391,2869,5391,237,5391,
- 5391,5391,5391,5391,5391,5391,5391,2928,5391,5391,
- 5391,332,318,1850,320,5391,314,1506,1180,272,
- 5391,5391,2981,4843,5391,318,1850,320,5391,313,
- 1506,5391,5391,1607,929,35,1599,387,3928,5391,
- 56,227,3992,5391,536,5391,5391,231,1490,35,
- 791,32,2629,3542,27,30,31,936,984,338,
- 28,5391,5391,342,1634,406,4598,5391,49,155,
- 5391,1285,235,229,230,2981,4843,1592,47,187,
- 5391,5391,5391,273,5391,4516,402,2928,5391,5391,
- 2878,331,5391,5391,227,407,408,409,293,294,
- 3319,5391,242,245,248,251,802,315,3461,320,
- 5391,929,35,1599,387,1172,5391,1634,406,4598,
- 3271,5391,5391,4503,2236,35,791,32,2387,3542,
- 27,30,31,936,984,338,28,5391,5391,5391,
- 5391,5391,5391,3593,5391,49,5391,5391,407,408,
- 409,293,294,3319,1592,47,929,35,1599,387,
- 1962,35,1599,387,5391,5391,5391,2953,2623,5391,
- 5391,5391,536,3271,5391,929,35,1599,387,5391,
- 5391,410,412,315,3461,320,929,35,1599,387,
- 49,342,2647,5391,49,5391,2981,155,5391,1592,
- 47,5391,5391,1592,47,1403,2700,187,4621,49,
- 5391,5391,3018,4516,5391,2513,1186,5391,1592,47,
- 49,2167,35,1599,387,5391,5391,5391,56,1592,
- 47,3569,536,56,410,413,5391,536,5391,5391,
- 5391,5391,3679,5391,5391,588,35,1599,387,5391,
- 5391,342,5391,5391,5391,49,342,155,588,35,
- 1599,387,155,5391,1592,47,5391,1419,5391,5391,
- 5391,189,927,2503,5391,5391,2208,3733,2503,49,
- 2981,5391,2700,504,5391,1413,5391,56,1592,740,
- 1542,536,49,588,35,1599,387,5391,5391,342,
- 56,1592,658,5391,536,5391,5391,5391,5391,529,
- 342,5391,5391,5391,5391,5391,155,5391,5391,5391,
- 5391,2503,5391,342,501,503,187,49,5391,155,
- 5391,5391,4516,532,5391,5391,1592,2282,5391,187,
- 5391,5391,5391,5391,5391,4516,5391,5391,3847,5391,
- 5391,5391,5391,5391,5391,5391,5391,5391,5391,5391,
- 5391,5391,5391,5391,5391,3936,5391,5391,5391,5391,
- 5391,5391,5391,5391,5391,5391,5391,5391,5391,5391,
- 5391,5391,5391,5391,5391,5391,5391,5391,5391,5391,
- 3642,5391,5391,5391,5391,5391,5391,5391,5391,5391,
- 5391,5391,5391,3856,5391,5391,5391,5391,5391,5391,
- 5391,5391,5391,5391,5391,5391,5391,5391,5391,5391,
- 5391,5391,5391,5391,5391,5391,5391,5391,5391,5391,
- 5391,5391,5391,5391,5391,5391,5391,5391,5391,5391,
- 5391,5391,5391,5391,5391,5391,5391,5391,5391,5391,
- 5391,5391,5391,5391,5391,5391,5391,5391,5391,5391,
- 5391,5391,5391,5391,5391,5391,5391,5391,5391,5391,
- 5391,5391,5391,5391,3033,5391,0,39,5406,0,
- 39,5405,0,565,29,0,439,728,0,453,
- 1077,0,38,626,0,38,5406,0,38,5405,
- 0,2742,125,0,1,443,0,457,1331,0,
- 456,2031,0,3188,91,0,565,386,0,35,
- 33,0,32,34,0,39,626,0,1,863,
- 0,1,5662,0,1,5661,0,1,5660,0,
- 1,5659,0,1,5658,0,1,5657,0,1,
- 5656,0,1,5655,0,1,5654,0,1,5653,
- 0,1,5652,0,39,1,5406,0,39,1,
- 5405,0,735,1,0,282,393,0,282,285,
- 0,5624,240,0,5623,240,0,5728,240,0,
- 5727,240,0,5651,240,0,5650,240,0,5649,
- 240,0,5648,240,0,5647,240,0,5646,240,
- 0,5645,240,0,5644,240,0,5662,240,0,
- 5661,240,0,5660,240,0,5659,240,0,5658,
- 240,0,5657,240,0,5656,240,0,5655,240,
- 0,5654,240,0,5653,240,0,5652,240,0,
- 39,5406,240,0,39,5405,240,0,5429,240,
- 0,5406,48,0,5405,48,0,43,5427,0,
- 43,37,0,2742,127,0,2742,126,0,5397,
- 1,0,5396,1,0,3619,236,0,32,387,
- 0,29,386,0,330,444,0,1,92,0,
- 47,37,0,5429,1,0,39,1,0,500,
- 3279,0,5429,1,228,0,39,1,228,0,
- 228,415,0,5406,37,0,5405,37,0,5427,
- 45,0,37,45,0,5406,36,0,5405,36,
- 0,5406,2,37,0,5405,2,37,0,5401,
- 404,0,5400,404,0,1,4470,0,1,3013,
- 0,1,626,0,228,414,0,330,95,0,
- 35,73,0,2894,317,0,1,330,0,4314,
- 277,0,500,4313,0,1,228,0,228,219,
- 0,228,218,0,1,574,0,1,2438,0,
- 5403,1,0,5399,1,0,1,228,3776,0,
- 5400,228,0,3845,228,0,5403,382,0,5402,
- 382,0,3940,228,0,10,12,0,8,10,
- 12,0,184,3618,0,3995,382,0,8,12,
- 0
+ 126,126,198,198,174,174,1119,35,2587,2584,
+ 1278,3510,27,30,31,936,954,26,28,2571,
+ 25,23,50,1042,106,76,77,107,1139,1614,
+ 1255,1236,1289,1279,1470,56,1409,1513,1505,689,
+ 272,1590,1592,142,1243,35,395,157,143,1217,
+ 35,917,32,1982,3431,27,30,31,936,954,
+ 57,28,496,71,3121,35,917,32,231,2504,
+ 27,30,31,936,954,26,28,811,25,23,
+ 50,1042,106,76,77,107,1139,1267,1255,1236,
+ 1289,1279,2404,234,229,230,588,1685,1849,34,
+ 3121,35,917,32,273,2504,27,30,31,936,
+ 954,26,28,811,25,23,50,1042,106,76,
+ 77,107,1929,241,244,247,250,802,2164,35,
+ 276,588,35,1849,2978,1762,1047,1860,35,917,
+ 32,142,3431,27,30,31,936,954,56,28,
+ 2582,583,3621,2995,2682,3007,3129,3316,4652,2316,
+ 35,917,32,2972,2504,27,30,31,936,954,
+ 26,28,811,25,23,50,1042,106,76,77,
+ 107,1139,342,1255,1236,1289,1279,1470,61,1409,
+ 1513,1505,2023,2887,1590,1592,142,1607,69,2222,
+ 516,143,3660,3597,2542,1500,35,917,32,1010,
+ 1279,41,30,31,936,954,517,2316,35,917,
+ 32,2972,2504,27,30,31,936,954,26,28,
+ 811,25,23,50,1042,106,76,77,107,1139,
+ 342,1255,1236,1289,1279,1470,2861,1409,1513,1505,
+ 1672,69,1590,1592,142,1123,3514,2280,516,143,
+ 389,426,2542,69,1374,327,35,278,3612,56,
+ 4100,512,1229,747,517,661,60,2344,35,917,
+ 32,1016,4496,27,30,31,936,954,26,28,
+ 2838,510,497,2844,666,2316,35,917,32,2972,
+ 2504,27,30,31,936,954,26,28,811,25,
+ 23,50,1042,106,76,77,107,1139,342,1255,
+ 1236,1289,1279,1470,1796,1409,1513,1505,2972,512,
+ 1590,1592,142,327,35,278,516,143,4637,94,
+ 2542,588,35,2583,2496,56,1374,2513,2854,825,
+ 135,2844,517,2524,35,917,32,2972,2504,27,
+ 30,31,936,954,26,28,811,25,23,50,
+ 1042,106,76,77,107,1139,342,1255,1236,1289,
+ 1279,1470,1503,1409,1513,1505,2972,2532,1590,1592,
+ 142,327,35,452,516,143,4791,1839,2542,3068,
+ 3177,588,35,1678,387,342,2558,512,737,70,
+ 517,1715,35,917,32,360,4496,27,30,31,
+ 936,954,59,28,2626,781,2902,1322,2716,2844,
+ 322,2659,35,917,32,430,2504,27,30,31,
+ 936,954,26,28,811,25,23,50,1042,106,
+ 76,77,107,1139,314,1255,1236,1289,1279,1470,
+ 2428,1409,1513,1505,1773,513,1590,1592,142,3660,
+ 3361,3499,378,143,2385,35,917,32,1017,2504,
+ 27,30,31,936,954,26,28,811,25,23,
+ 50,1042,106,76,77,107,1139,388,1255,1236,
+ 1289,1279,1470,2371,1409,1513,1505,327,334,1590,
+ 1592,142,2245,2861,3499,378,143,1330,3121,35,
+ 917,32,332,2504,27,30,31,936,954,26,
+ 28,811,25,23,50,1042,106,76,77,107,
+ 1139,3485,1255,1236,1289,1279,1470,1599,1409,1513,
+ 1505,2852,3068,1590,2970,163,437,1138,1414,384,
+ 2853,445,3584,3586,2591,35,917,32,2103,2504,
+ 27,30,31,936,954,26,28,811,25,23,
+ 50,1042,106,76,77,107,1139,3023,1255,1236,
+ 1289,1279,1470,2034,1409,1513,1505,446,3660,1590,
+ 1592,142,385,2853,3499,378,143,56,56,413,
+ 2610,1143,2837,2887,35,917,32,3738,2504,27,
+ 30,31,936,954,26,28,811,25,23,50,
+ 1042,106,76,77,107,1139,155,1255,1236,1289,
+ 1279,1470,2861,1409,1513,1505,1413,3195,1590,1592,
+ 142,1123,666,912,157,143,588,35,292,2887,
+ 35,917,32,2729,2504,27,30,31,936,954,
+ 26,28,811,25,23,50,1042,106,76,77,
+ 107,1139,135,1255,1236,1289,1279,1470,2135,1409,
+ 1513,1505,376,2853,1590,1592,142,1947,35,276,
+ 372,143,2887,35,917,32,1445,2504,27,30,
+ 31,936,954,26,28,811,25,23,50,1042,
+ 106,76,77,107,1139,64,1255,1236,1289,1279,
+ 1470,328,1409,1513,1505,96,2417,1590,1592,142,
+ 737,236,442,372,143,1715,35,917,32,2284,
+ 4496,27,30,31,936,954,58,28,583,587,
+ 3643,135,2772,2887,35,917,32,71,2504,27,
+ 30,31,936,954,26,28,811,25,23,50,
+ 1042,106,76,77,107,1139,371,1255,1236,1289,
+ 1279,1470,1868,1409,1513,1505,727,1715,1590,1592,
+ 142,2103,3361,159,372,143,2457,35,917,32,
+ 1629,2504,27,30,31,936,954,26,28,811,
+ 25,23,50,1042,106,76,77,107,1139,370,
+ 1255,1236,1289,1279,1470,2149,1409,1513,1505,3192,
+ 334,1590,1592,142,588,35,3002,141,143,2716,
+ 2887,35,917,32,420,2504,27,30,31,936,
+ 954,26,28,811,25,23,50,1042,106,76,
+ 77,107,1139,241,1255,1236,1289,1279,1470,494,
+ 1409,1513,1505,1614,56,1590,1592,142,787,1614,
+ 368,158,143,2887,35,917,32,2626,2504,27,
+ 30,31,936,954,26,28,811,25,23,50,
+ 1042,106,76,77,107,1139,24,1255,1236,1289,
+ 1279,1470,69,1409,1513,1505,1614,1988,1590,1592,
+ 142,588,35,281,154,143,2887,35,917,32,
+ 1355,2504,27,30,31,936,954,26,28,811,
+ 25,23,50,1042,106,76,77,107,1139,68,
+ 1255,1236,1289,1279,1470,380,1409,1513,1505,93,
+ 56,1590,1592,142,2657,400,1873,153,143,2887,
+ 35,917,32,1226,2504,27,30,31,936,954,
+ 26,28,811,25,23,50,1042,106,76,77,
+ 107,1139,352,1255,1236,1289,1279,1470,3519,1409,
+ 1513,1505,1614,56,1590,1592,142,2685,446,311,
+ 152,143,2887,35,917,32,793,2504,27,30,
+ 31,936,954,26,28,811,25,23,50,1042,
+ 106,76,77,107,1139,53,1255,1236,1289,1279,
+ 1470,353,1409,1513,1505,1614,1973,1590,1592,142,
+ 1146,1614,1617,151,143,2887,35,917,32,1625,
+ 2504,27,30,31,936,954,26,28,811,25,
+ 23,50,1042,106,76,77,107,1139,87,1255,
+ 1236,1289,1279,1470,52,1409,1513,1505,1614,56,
+ 1590,1592,142,938,1614,1627,150,143,2887,35,
+ 917,32,1174,2504,27,30,31,936,954,26,
+ 28,811,25,23,50,1042,106,76,77,107,
+ 1139,90,1255,1236,1289,1279,1470,349,1409,1513,
+ 1505,1614,56,1590,1592,142,680,1614,2652,149,
+ 143,2887,35,917,32,1323,2504,27,30,31,
+ 936,954,26,28,811,25,23,50,1042,106,
+ 76,77,107,1139,1844,1255,1236,1289,1279,1470,
+ 1882,1409,1513,1505,1614,56,1590,1592,142,1857,
+ 1614,1441,148,143,2887,35,917,32,160,2504,
+ 27,30,31,936,954,26,28,811,25,23,
+ 50,1042,106,76,77,107,1139,67,1255,1236,
+ 1289,1279,1470,66,1409,1513,1505,1614,2490,1590,
+ 1592,142,2049,1614,676,147,143,2887,35,917,
+ 32,848,2504,27,30,31,936,954,26,28,
+ 811,25,23,50,1042,106,76,77,107,1139,
+ 65,1255,1236,1289,1279,1470,64,1409,1513,1505,
+ 403,56,1590,1592,142,2926,588,3644,146,143,
+ 2887,35,917,32,1167,2504,27,30,31,936,
+ 954,26,28,811,25,23,50,1042,106,76,
+ 77,107,1139,323,1255,1236,1289,1279,1470,2619,
+ 1409,1513,1505,1614,56,1590,1592,142,3236,2683,
+ 2151,145,143,2887,35,917,32,2582,2504,27,
+ 30,31,936,954,26,28,811,25,23,50,
+ 1042,106,76,77,107,1139,2659,1255,1236,1289,
+ 1279,1470,56,1409,1513,1505,1270,56,1590,1592,
+ 142,3847,1334,408,144,143,2832,35,917,32,
+ 1604,2504,27,30,31,936,954,26,28,811,
+ 25,23,50,1042,106,76,77,107,1139,580,
+ 1255,1236,1289,1279,1470,324,1409,1513,1505,1015,
+ 1614,1590,2970,163,2887,35,917,32,401,2504,
+ 27,30,31,936,954,26,28,811,25,23,
+ 50,1042,106,76,77,107,1139,2103,1255,1236,
+ 1289,1279,1470,55,1409,1513,1505,390,426,1590,
+ 1592,142,1761,2129,2108,139,143,1390,56,326,
+ 88,958,1143,102,3005,35,917,32,2264,2504,
+ 27,30,31,936,954,26,28,811,25,23,
+ 50,1042,106,76,77,107,1139,155,1255,1236,
+ 1289,1279,1470,1543,1409,1513,1505,2237,2552,1590,
+ 1592,142,588,3330,1699,188,143,3121,35,917,
+ 32,1010,2504,27,30,31,936,954,26,28,
+ 811,25,23,50,1042,106,76,77,107,1139,
+ 2552,1255,1236,1289,1279,1470,405,1409,1513,1505,
+ 1761,1761,1590,2970,163,3121,35,917,32,1700,
+ 2504,27,30,31,936,954,26,28,811,25,
+ 23,50,1042,106,76,77,107,1139,298,1255,
+ 1236,1289,1279,1470,1223,1409,1513,1505,355,1010,
+ 1590,2970,163,2271,35,917,32,530,1330,40,
+ 30,31,936,954,459,3121,35,917,32,422,
+ 2504,27,30,31,936,954,26,28,811,25,
+ 23,50,1042,106,76,77,107,1139,2552,1255,
+ 1236,1289,1279,1470,287,1409,1513,1505,1801,1010,
+ 1590,2970,163,3121,35,917,32,291,2504,27,
+ 30,31,936,954,26,28,811,25,23,50,
+ 1042,106,76,77,107,1139,220,1255,1236,1289,
+ 1279,1470,458,1409,1513,1505,354,322,1590,2970,
+ 163,2271,35,917,32,530,530,2018,30,31,
+ 936,954,1385,3176,35,917,32,421,2504,27,
+ 30,31,936,954,26,28,811,25,23,50,
+ 1042,106,76,77,107,1139,135,1255,1236,1289,
+ 1279,1470,4346,1409,1513,1505,1559,1010,1590,2970,
+ 163,3121,35,917,32,424,2504,27,30,31,
+ 936,954,26,28,811,25,23,50,1042,106,
+ 76,77,107,1139,1010,1255,1236,1289,1279,1470,
+ 56,1409,1513,1505,2509,2871,2535,2271,35,917,
+ 32,588,3860,2050,30,31,936,954,2407,35,
+ 279,3121,35,917,32,3858,2504,27,30,31,
+ 936,954,26,28,811,25,23,50,1042,106,
+ 76,77,107,1139,1818,1255,1236,1289,1279,1470,
+ 51,1409,1513,2464,3121,35,917,32,1615,2504,
+ 27,30,31,936,954,26,28,811,25,23,
+ 50,1042,106,76,77,107,1139,325,1255,1236,
+ 1289,1279,1470,3204,1409,2449,3121,35,917,32,
+ 1965,2504,27,30,31,936,954,26,28,811,
+ 25,23,50,1042,106,76,77,107,1139,2103,
+ 1255,1236,1289,1279,1470,2022,2455,1518,35,917,
+ 32,4878,4745,27,30,31,936,954,338,28,
+ 3121,35,917,32,1709,2504,27,30,31,936,
+ 954,26,28,811,25,23,50,1042,106,76,
+ 77,107,1139,1614,1255,1236,1289,2434,1243,35,
+ 3009,1218,1614,2484,2425,2491,2861,4705,588,35,
+ 1849,275,1243,35,395,331,318,1850,320,1701,
+ 313,1758,843,35,452,1712,54,4791,588,3187,
+ 1849,74,49,312,486,321,350,757,35,1678,
+ 387,1642,871,3121,35,917,32,4587,2504,27,
+ 30,31,936,954,26,28,811,25,23,50,
+ 1042,106,76,77,107,1139,142,1255,1236,1289,
+ 2435,272,2417,1374,1976,35,1678,387,351,2582,
+ 305,309,1365,1400,35,917,32,3989,3957,27,
+ 30,31,936,954,338,28,343,1506,1457,348,
+ 2129,35,292,2138,1634,1783,671,56,49,2443,
+ 1330,1143,2147,1143,3620,56,3916,1642,1266,2976,
+ 3636,322,1888,35,917,32,4708,3957,27,30,
+ 31,936,954,338,28,3010,1628,2191,155,2050,
+ 1887,1875,318,1850,320,1354,313,1758,161,1143,
+ 2943,1983,72,2690,3321,350,3660,1453,351,3249,
+ 1010,1898,35,3401,32,4878,4745,27,30,31,
+ 936,954,338,28,159,2270,343,1506,1457,348,
+ 1010,318,1850,320,3209,313,1758,351,283,392,
+ 426,56,449,3584,3586,2972,69,351,2432,56,
+ 2861,4734,1614,2660,2540,343,1506,1457,348,332,
+ 2861,2552,2125,341,342,343,1506,1457,348,331,
+ 318,1850,320,1634,313,1758,351,2234,1354,56,
+ 2234,2972,1143,3878,2972,101,2542,1193,1543,35,
+ 1849,3201,1542,97,345,1506,1457,348,1728,302,
+ 2513,4587,1225,2513,2440,1643,3330,159,1543,35,
+ 1849,275,2545,98,3121,35,917,32,365,2504,
+ 27,30,31,936,954,26,28,811,25,23,
+ 50,1042,106,76,77,107,1139,3849,1255,1236,
+ 2094,3121,35,917,32,2626,2504,27,30,31,
+ 936,954,26,28,811,25,23,50,1042,106,
+ 76,77,107,1139,231,1255,1236,2202,359,2103,
+ 2244,359,588,35,292,1591,416,418,3373,2129,
+ 3564,292,1843,3019,3049,3202,3019,3049,2380,243,
+ 229,230,588,35,1849,277,3121,35,917,32,
+ 1900,2504,27,30,31,936,954,26,28,811,
+ 25,23,50,1042,106,76,77,107,1139,1887,
+ 1255,1236,2236,3121,35,917,32,286,2504,27,
+ 30,31,936,954,26,28,811,25,23,50,
+ 1042,106,76,77,107,1139,259,1255,1236,2328,
+ 536,2044,2415,588,35,1678,387,1180,2279,2551,
+ 3347,2972,4879,2122,2304,322,56,2646,4783,227,
+ 2972,2972,1607,1330,2446,155,3701,3660,838,1351,
+ 227,1096,2826,2540,179,3155,2858,272,2572,342,
+ 2513,56,202,214,4715,3975,201,211,212,213,
+ 215,168,1,1762,406,4692,536,588,35,1849,
+ 3364,2542,167,3569,182,166,169,170,171,172,
+ 173,2861,2453,1764,322,227,588,35,1678,387,
+ 331,155,284,1781,407,408,409,293,294,3148,
+ 179,3155,2858,2742,3012,181,1643,3330,202,214,
+ 4715,274,201,211,212,213,215,168,504,3079,
+ 272,2209,994,56,522,2941,4802,3857,167,180,
+ 183,166,169,170,171,172,173,2070,35,917,
+ 32,3989,3957,27,30,31,936,954,338,28,
+ 49,296,3231,35,1678,387,2582,3319,2515,502,
+ 503,1363,35,917,32,236,4745,27,30,31,
+ 936,954,338,28,56,3347,42,2913,3252,2556,
+ 410,412,2615,536,339,2882,272,1240,238,2285,
+ 2621,428,588,35,1678,387,318,1850,320,1250,
+ 313,1758,3634,1330,960,2249,69,3185,155,1143,
+ 2861,4818,351,525,231,3490,522,179,3155,332,
+ 318,1850,320,2715,314,1758,49,2972,286,2305,
+ 343,1506,1457,348,155,46,351,231,526,234,
+ 229,230,69,2858,534,194,342,4841,2306,231,
+ 273,1243,35,395,345,1506,1457,348,375,1515,
+ 2845,3347,239,229,230,2689,391,426,1077,241,
+ 244,247,250,802,246,229,230,1088,3066,35,
+ 917,32,1047,2504,27,30,31,936,954,26,
+ 28,811,25,23,50,1042,86,76,77,2995,
+ 2682,3007,3129,3316,4652,3121,35,917,32,1606,
+ 2504,27,30,31,936,954,26,28,811,25,
+ 23,50,1042,106,76,77,107,1139,2691,1255,
+ 2360,3121,35,917,32,2552,2504,27,30,31,
+ 936,954,26,28,811,25,23,50,1042,106,
+ 76,77,107,1139,345,1255,2385,2485,536,3865,
+ 3306,195,56,373,56,1285,1143,2693,1379,2972,
+ 4879,231,56,178,1354,69,1972,227,1143,540,
+ 4864,2649,1614,155,588,35,1849,280,227,1906,
+ 521,3568,179,3155,2858,56,249,229,230,2972,
+ 202,214,4715,159,201,211,212,213,215,168,
+ 431,1762,406,4692,536,3314,2280,441,342,455,
+ 167,1614,3859,166,169,170,171,172,173,2555,
+ 56,56,2646,227,536,2060,2972,2412,2831,155,
+ 2542,4471,407,408,409,293,294,3148,179,3155,
+ 2858,2580,1771,342,2641,2513,202,214,4715,155,
+ 201,211,212,213,215,168,517,3079,56,1456,
+ 536,1930,1143,2714,1088,2542,167,3370,177,166,
+ 169,170,171,172,173,322,2623,1419,2647,227,
+ 536,1614,2972,2722,56,155,1780,155,3993,929,
+ 35,1678,387,69,179,3155,2858,2503,4868,342,
+ 2717,2513,202,214,4715,155,201,211,212,213,
+ 215,168,603,504,450,187,536,2723,410,413,
+ 322,4613,167,49,175,166,169,170,171,172,
+ 173,737,1642,2868,2727,227,588,35,1678,387,
+ 56,155,295,2728,3964,2833,3377,2619,231,3177,
+ 179,3155,2858,2765,501,503,2481,2972,202,214,
+ 4715,2552,201,211,212,213,215,168,689,504,
+ 451,2627,536,252,229,230,342,521,167,189,
+ 176,166,169,170,171,172,173,303,2556,528,
+ 1675,227,1143,3361,2079,3575,56,155,3713,197,
+ 3308,932,35,1678,387,2552,179,3155,2858,56,
+ 501,503,1330,2972,202,214,4715,155,201,211,
+ 212,213,215,168,775,2923,199,3695,536,56,
+ 333,334,342,1143,167,49,186,166,169,170,
+ 171,172,173,196,1642,1892,56,227,322,2731,
+ 3097,3780,2858,155,2542,159,3736,2467,155,3012,
+ 2735,56,179,3155,2858,2061,1814,3563,1714,56,
+ 202,214,4715,3478,201,211,212,213,215,168,
+ 2447,35,1678,387,932,35,1678,387,89,1330,
+ 167,102,3869,166,169,170,171,172,173,1952,
+ 35,917,32,4878,3957,27,30,31,936,954,
+ 338,28,56,56,49,381,536,1143,49,588,
+ 35,1678,387,1642,2314,2082,861,1642,47,2858,
+ 536,44,2913,56,2732,342,2833,3294,1614,56,
+ 2288,155,155,961,375,2068,2736,1330,1330,227,
+ 3678,187,1720,433,2747,155,2746,4613,318,1850,
+ 320,2751,313,1758,179,3155,2858,588,35,1678,
+ 387,377,202,214,4715,312,201,211,212,213,
+ 215,168,929,35,1678,387,1614,2858,2858,947,
+ 2789,2737,167,536,191,166,169,170,171,172,
+ 173,49,524,523,56,1354,2750,2782,3529,1143,
+ 1642,740,227,2552,2552,3616,49,379,155,3398,
+ 1614,1614,305,309,1365,1642,47,179,3155,2858,
+ 588,35,1678,387,159,202,214,4715,1461,201,
+ 211,212,213,215,168,3828,1033,1614,1614,3476,
+ 536,301,200,3454,3556,167,3620,185,166,169,
+ 170,171,172,173,49,2552,56,2790,56,227,
+ 536,2552,2972,1642,880,155,588,35,1678,387,
+ 3577,3578,87,2413,179,3155,2858,2957,2755,342,
+ 2757,342,202,214,4715,155,201,211,212,213,
+ 215,168,2423,198,2759,187,2552,2761,1778,297,
+ 432,4613,167,2542,193,166,169,170,171,172,
+ 173,3121,35,917,32,1671,2504,27,30,31,
+ 936,954,26,28,811,25,23,50,1042,106,
+ 76,77,107,1139,2539,1893,3121,35,917,32,
+ 2153,2504,27,30,31,936,954,26,28,811,
+ 25,23,50,1042,106,76,77,107,1139,3650,
+ 1919,3121,35,917,32,1333,2504,27,30,31,
+ 936,954,26,28,811,25,23,50,1042,106,
+ 76,77,107,2024,3121,35,917,32,2552,2504,
+ 27,30,31,936,954,26,28,811,25,23,
+ 50,1042,106,76,77,107,2069,1562,1614,1614,
+ 2763,2972,588,35,1678,387,173,1823,2792,2797,
+ 2787,2972,2733,2768,2794,2796,221,2122,2552,2655,
+ 227,1337,4783,56,5437,5437,5437,536,737,5437,
+ 227,3868,3676,5437,56,1354,431,5437,1143,1143,
+ 5437,5437,5437,204,214,4715,342,203,211,212,
+ 213,215,155,204,214,4715,192,203,211,212,
+ 213,215,1413,155,159,5437,1607,5437,2542,5437,
+ 5437,3660,5437,1757,205,207,209,293,294,3148,
+ 1585,216,206,208,205,207,209,293,294,3148,
+ 3361,216,206,208,2062,35,3401,32,4878,3957,
+ 27,30,31,936,954,338,28,929,35,1678,
+ 387,2904,5437,4388,1910,2861,5437,5437,2972,2941,
+ 5437,3305,5437,4388,331,737,5437,3251,334,5437,
+ 56,5437,2632,5437,1143,5437,5437,227,5437,1607,
+ 5437,49,1354,737,3660,5437,1143,5437,5437,5437,
+ 1642,2684,5437,318,1850,320,2581,313,1758,155,
+ 204,214,4715,2906,203,211,212,213,215,1763,
+ 1193,159,1691,35,917,32,4878,3957,27,30,
+ 31,936,954,338,28,429,5437,3361,2861,5437,
+ 5437,205,207,209,293,294,3148,331,216,206,
+ 208,3121,35,917,32,3361,2504,27,30,31,
+ 936,954,26,28,811,25,23,50,1042,106,
+ 76,77,85,5437,329,334,5437,5437,3350,2981,
+ 4388,318,1850,320,5437,313,1758,5437,5437,3311,
+ 5437,5437,3491,334,5437,5437,5437,5437,312,5437,
+ 588,35,1678,387,5437,5437,5437,5437,5437,417,
+ 418,3373,3121,1685,917,1721,5437,2504,27,30,
+ 31,936,954,26,28,811,25,23,50,1042,
+ 106,76,77,84,49,5437,5437,5437,5437,5437,
+ 5437,5437,5437,1642,1227,306,309,1365,3121,35,
+ 917,32,5437,2504,27,30,31,936,954,26,
+ 28,811,25,23,50,1042,106,76,77,83,
+ 3121,35,917,32,5437,2504,27,30,31,936,
+ 954,26,28,811,25,23,50,1042,106,76,
+ 77,82,3121,35,917,32,5437,2504,27,30,
+ 31,936,954,26,28,811,25,23,50,1042,
+ 106,76,77,81,3121,35,917,32,5437,2504,
+ 27,30,31,936,954,26,28,811,25,23,
+ 50,1042,106,76,77,80,3121,35,917,32,
+ 5437,2504,27,30,31,936,954,26,28,811,
+ 25,23,50,1042,106,76,77,79,3121,35,
+ 917,32,5437,2504,27,30,31,936,954,26,
+ 28,811,25,23,50,1042,106,76,77,78,
+ 2950,35,917,32,5437,2504,27,30,31,936,
+ 954,26,28,811,25,23,50,1042,106,76,
+ 77,104,3121,35,917,32,5437,2504,27,30,
+ 31,936,954,26,28,811,25,23,50,1042,
+ 106,76,77,109,3121,35,917,32,5437,2504,
+ 27,30,31,936,954,26,28,811,25,23,
+ 50,1042,106,76,77,108,3121,35,917,32,
+ 5437,2504,27,30,31,936,954,26,28,811,
+ 25,23,50,1042,106,76,77,105,1997,56,
+ 56,5437,2972,1143,1143,5437,5437,5437,1649,5437,
+ 5437,5437,2972,5437,5437,5437,5437,5437,1736,5437,
+ 5437,227,2972,5437,5437,5437,5437,5437,155,155,
+ 5437,227,5437,5437,5437,5437,5437,5437,2590,3848,
+ 5437,227,5437,5437,204,214,4715,5437,203,211,
+ 212,213,215,5437,204,214,4715,5437,203,211,
+ 212,213,215,5437,204,214,4715,5437,203,211,
+ 212,213,215,5437,5437,205,207,209,293,294,
+ 3148,5437,519,206,208,205,207,209,293,294,
+ 3148,5437,518,206,208,205,207,209,293,294,
+ 3148,2084,217,206,208,2972,5437,5437,5437,5437,
+ 5437,2171,5437,5437,5437,2972,5437,5437,5437,5437,
+ 5437,5437,5437,5437,227,5437,588,35,1678,387,
+ 5437,5437,5437,5437,227,5437,5437,5437,5437,5437,
+ 5437,5437,5437,5437,5437,5437,5437,204,214,4715,
+ 5437,203,211,212,213,215,5437,204,214,4715,
+ 49,203,211,212,213,215,5437,5437,5437,1642,
+ 1266,5437,5437,5437,5437,5437,5437,5437,205,207,
+ 209,293,294,3148,5437,304,206,208,205,207,
+ 209,293,294,3148,5437,498,206,208,1691,35,
+ 917,32,4878,3957,27,30,31,936,954,338,
+ 28,5437,5437,5437,5437,5437,5437,2156,35,917,
+ 32,5437,4745,27,30,31,936,954,338,28,
+ 2156,35,917,32,5437,4745,27,30,31,936,
+ 954,338,28,1691,35,917,32,4878,3957,27,
+ 30,31,936,954,338,28,5437,318,1850,320,
+ 5437,313,1758,5437,5437,5437,2861,588,35,1678,
+ 387,5437,5437,5437,2432,332,318,1850,320,2861,
+ 316,1758,3280,35,1678,387,5437,3319,332,318,
+ 1850,320,5437,314,1758,237,5437,5437,5437,5437,
+ 5437,49,318,1850,320,5437,313,1758,5437,5437,
+ 1642,658,5437,5437,5437,5437,272,5437,5437,3864,
+ 5437,5437,1490,35,917,32,2591,3957,27,30,
+ 31,936,954,338,28,1375,5437,5437,1375,2972,
+ 3660,5437,2972,3660,231,2236,35,917,32,2387,
+ 3957,27,30,31,936,954,338,28,2513,5437,
+ 402,2513,5437,5437,932,35,1678,387,5437,235,
+ 229,230,5437,5437,5437,929,35,1678,387,5437,
+ 273,315,3313,320,2861,5437,5437,2861,5437,5437,
+ 5437,5437,5437,331,5437,5437,331,5437,49,242,
+ 245,248,251,802,315,3313,320,1642,47,49,
+ 5437,5437,1047,929,35,1678,387,5437,1642,1033,
+ 2277,929,35,1678,387,2581,359,5437,2981,359,
+ 5437,2906,929,35,1678,387,5437,5437,5437,5437,
+ 1677,3019,3049,1677,3019,3049,5437,49,1962,35,
+ 1678,387,5437,5437,5437,49,1642,47,5437,5437,
+ 5437,5437,5437,5437,1642,47,49,5437,5437,931,
+ 5437,929,35,1678,387,1642,47,3366,5437,5437,
+ 1977,5437,49,5437,5437,5437,5437,5437,3549,5437,
+ 5437,1642,47,5437,929,35,1678,387,2167,35,
+ 1678,387,2208,1977,1186,49,2972,5437,1607,588,
+ 35,1678,387,3660,1642,47,56,56,5437,5437,
+ 536,2972,5437,5437,5437,342,56,3706,49,5437,
+ 2972,5437,49,5437,5437,529,5437,1642,47,342,
+ 342,1642,47,49,56,155,5437,2542,2972,342,
+ 3852,5437,1642,2502,2752,187,5437,2861,5437,532,
+ 5437,4613,2542,5437,5437,5437,331,342,5437,5437,
+ 5437,2542,5437,5437,508,5437,5437,5437,5437,5437,
+ 5437,5437,5437,506,5437,5437,5437,5437,5437,2542,
+ 5437,5437,5437,5437,5437,5437,5437,5437,4600,5437,
+ 5437,533,5437,5437,5437,5437,5437,5437,5437,5437,
+ 5437,5437,5437,5437,5437,5437,5437,5437,5437,3651,
+ 5437,5437,5437,5437,5437,5437,5437,5437,5437,5437,
+ 5437,5437,5437,5437,5437,5437,5437,5437,5437,5437,
+ 5437,5437,5437,5437,5437,5437,5437,5437,5437,5437,
+ 5437,5437,5437,5437,5437,5437,5437,5437,5437,5437,
+ 5437,5437,5437,5437,5437,5437,5437,5437,5437,5437,
+ 5437,5437,5437,5437,5437,5437,5437,5437,5437,5437,
+ 5437,5437,5437,5437,5437,5437,5437,5437,5437,5437,
+ 5437,5437,5437,5437,5437,5437,5437,5437,5437,5437,
+ 3386,5437,0,39,5452,0,39,5451,0,565,
+ 29,0,439,799,0,453,875,0,38,626,
+ 0,38,5452,0,38,5451,0,2776,125,0,
+ 1,443,0,457,2031,0,456,2099,0,2537,
+ 91,0,565,386,0,35,33,0,32,34,
+ 0,39,626,0,1,728,0,1,5708,0,
+ 1,5707,0,1,5706,0,1,5705,0,1,
+ 5704,0,1,5703,0,1,5702,0,1,5701,
+ 0,1,5700,0,1,5699,0,1,5698,0,
+ 39,1,5452,0,39,1,5451,0,735,1,
+ 0,282,393,0,282,285,0,5670,240,0,
+ 5669,240,0,5774,240,0,5773,240,0,5697,
+ 240,0,5696,240,0,5695,240,0,5694,240,
+ 0,5693,240,0,5692,240,0,5691,240,0,
+ 5690,240,0,5708,240,0,5707,240,0,5706,
+ 240,0,5705,240,0,5704,240,0,5703,240,
+ 0,5702,240,0,5701,240,0,5700,240,0,
+ 5699,240,0,5698,240,0,39,5452,240,0,
+ 39,5451,240,0,5475,240,0,5452,48,0,
+ 5451,48,0,43,5473,0,43,37,0,2776,
+ 127,0,2776,126,0,5443,1,0,5442,1,
+ 0,2575,236,0,32,387,0,29,386,0,
+ 330,444,0,1,92,0,47,37,0,5475,
+ 1,0,39,1,0,500,3085,0,5475,1,
+ 228,0,39,1,228,0,228,415,0,5452,
+ 37,0,5451,37,0,5473,45,0,37,45,
+ 0,5452,36,0,5451,36,0,5452,2,37,
+ 0,5451,2,37,0,5447,404,0,5446,404,
+ 0,1,4568,0,1,3043,0,1,626,0,
+ 228,414,0,330,95,0,35,73,0,2629,
+ 317,0,1,330,0,3194,277,0,500,4378,
+ 0,1,228,0,228,219,0,228,218,0,
+ 1,574,0,1,2442,0,5449,1,0,5445,
+ 1,0,1,228,3697,0,5446,228,0,3712,
+ 228,0,5449,382,0,5448,382,0,3856,228,
+ 0,10,12,0,8,10,12,0,184,3619,
+ 0,3871,382,0,8,12,0
};
};
public final static char baseAction[] = BaseAction.baseAction;
@@ -1452,346 +1461,346 @@ public class CPPNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface TermAction {
public final static char termAction[] = {0,
- 5391,5356,5335,5335,5335,5335,5335,5335,5372,5335,
+ 5437,5402,5381,5381,5381,5381,5381,5381,5418,5381,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,5360,1,1,
+ 1,1,1,1,1,1,1,5406,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,138,1,
- 1,1,1,1,1,1,1,1,1,1806,
- 1,5565,2694,114,3636,1,1,5402,39,3795,
- 5391,5398,5429,4778,877,3887,3210,2203,2844,3770,
- 3183,3884,1086,3850,3459,3848,10,5375,5375,5375,
- 5375,5375,5375,5375,5375,5375,5375,5375,5375,5375,
- 5375,5375,5375,5375,5375,5375,5375,5375,5375,5375,
- 5375,5375,5375,5375,5375,5375,5375,5375,5375,5375,
- 5375,5375,5375,5375,5375,5375,5375,5375,5375,5375,
- 5375,5375,5375,5375,330,5375,5375,5375,5375,5375,
- 5375,394,5375,5375,5375,5375,5375,5375,5375,2241,
- 5375,5375,5375,5375,2571,3772,630,5375,383,5391,
- 5375,5375,5375,5375,5375,5375,5375,5375,5375,5375,
- 5375,5375,8,5378,5378,5378,5378,5378,5378,5378,
- 5378,5378,5378,5378,5378,5378,5378,5378,5378,5378,
- 5378,5378,5378,5378,5378,5378,5378,5378,5378,5378,
- 5378,5378,5378,5378,5378,5378,5378,5378,5378,5378,
- 5378,5378,5378,5378,5378,5378,5378,5378,5378,5378,
- 5391,5378,5378,5378,5378,5378,5378,2714,5378,5378,
- 5378,5378,5378,5378,5378,300,5378,5378,5378,5378,
- 285,5128,5128,5378,282,5690,5378,5378,5378,5378,
- 5378,5378,5378,5378,5378,5378,5378,5378,5391,5356,
- 5335,5335,5335,5335,5335,5335,5363,5335,1,1,
+ 1,1,1,1,1,1,1,1,1,2281,
+ 1,5611,2569,114,3479,1,1,5448,39,3824,
+ 5437,5444,5475,3250,3442,3737,3435,2203,3391,3637,
+ 3174,3734,1806,3720,3418,3718,10,5421,5421,5421,
+ 5421,5421,5421,5421,5421,5421,5421,5421,5421,5421,
+ 5421,5421,5421,5421,5421,5421,5421,5421,5421,5421,
+ 5421,5421,5421,5421,5421,5421,5421,5421,5421,5421,
+ 5421,5421,5421,5421,5421,5421,5421,5421,5421,5421,
+ 5421,5421,5421,5421,330,5421,5421,5421,5421,5421,
+ 5421,394,5421,5421,5421,5421,5421,5421,5421,2241,
+ 5421,5421,5421,5421,3288,3801,630,5421,383,5437,
+ 5421,5421,5421,5421,5421,5421,5421,5421,5421,5421,
+ 5421,5421,8,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,
+ 5437,5424,5424,5424,5424,5424,5424,2642,5424,5424,
+ 5424,5424,5424,5424,5424,300,5424,5424,5424,5424,
+ 285,5174,5174,5424,282,5736,5424,5424,5424,5424,
+ 5424,5424,5424,5424,5424,5424,5424,5424,5437,5402,
+ 5381,5381,5381,5381,5381,5381,5409,5381,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,5360,1,1,1,1,
+ 1,1,1,1,1,5406,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,5391,1,1,1,
- 1,1,1,438,1,1,1,1806,1,5565,
- 2694,5391,3636,1,1,5402,5391,5030,5027,5399,
- 5429,5391,877,3887,3210,2203,2844,3770,3183,3884,
- 1086,3850,3459,3848,5391,5356,5335,5335,5335,5335,
- 5335,5335,5363,5335,1,1,1,1,1,1,
+ 1,1,1,1,1,1,5437,1,1,1,
+ 1,1,1,438,1,1,1,2281,1,5611,
+ 2569,5437,3479,1,1,5448,5437,5076,5073,5445,
+ 5475,5437,3442,3737,3435,2203,3391,3637,3174,3734,
+ 1806,3720,3418,3718,5437,5402,5381,5381,5381,5381,
+ 5381,5381,5409,5381,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,5360,1,1,1,1,1,1,1,1,
+ 1,5406,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,5398,1,1,1,1,1,1,134,
- 1,1,1,1806,1,5565,2694,116,3636,1,
- 1,5402,110,3795,5391,5825,5826,5827,877,3887,
- 3210,2203,2844,3770,3183,3884,1086,3850,3459,3848,
- 5391,5356,5335,5335,5335,5335,5335,5335,5363,5335,
+ 1,1,5444,1,1,1,1,1,1,134,
+ 1,1,1,2281,1,5611,2569,116,3479,1,
+ 1,5448,110,3824,5437,5871,5872,5873,3442,3737,
+ 3435,2203,3391,3637,3174,3734,1806,3720,3418,3718,
+ 5437,5402,5381,5381,5381,5381,5381,5381,5409,5381,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,5360,1,1,
+ 1,1,1,1,1,1,1,5406,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,5391,1,
- 1,1,1,1,1,135,1,1,1,1806,
- 1,5565,2694,130,3636,1,1,5402,2324,3772,
- 630,4237,594,4259,877,3887,3210,2203,2844,3770,
- 3183,3884,1086,3850,3459,3848,5391,5356,5335,5335,
- 5335,5335,5335,5335,5363,5335,1,1,1,1,
+ 1,1,1,1,1,1,1,1,5437,1,
+ 1,1,1,1,1,135,1,1,1,2281,
+ 1,5611,2569,130,3479,1,1,5448,2324,3801,
+ 630,4302,594,4324,3442,3737,3435,2203,3391,3637,
+ 3174,3734,1806,3720,3418,3718,5437,5402,5381,5381,
+ 5381,5381,5381,5381,5409,5381,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,5360,1,1,1,1,1,1,
+ 1,1,1,5406,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,5391,1,1,1,1,1,
- 1,5391,1,1,1,1806,1,5565,2694,115,
- 3636,1,1,5402,2324,3795,120,5391,5405,5406,
- 877,3887,3210,2203,2844,3770,3183,3884,1086,3850,
- 3459,3848,5391,5356,5335,5335,5335,5335,5335,5335,
- 5363,5335,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,5360,
+ 1,1,1,1,5437,1,1,1,1,1,
+ 1,5437,1,1,1,2281,1,5611,2569,115,
+ 3479,1,1,5448,2324,3824,120,5437,5451,5452,
+ 3442,3737,3435,2203,3391,3637,3174,3734,1806,3720,
+ 3418,3718,5437,5402,5381,5381,5381,5381,5381,5381,
+ 5409,5381,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,5406,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 5391,1,1,1,1,1,1,5391,1,1,
- 1,1806,1,5565,2694,5391,3636,1,1,5402,
- 2924,3772,630,3134,3160,5391,877,3887,3210,2203,
- 2844,3770,3183,3884,1086,3850,3459,3848,5391,5356,
- 5335,5335,5335,5335,5335,5335,5363,5335,1,1,
+ 5437,1,1,1,1,1,1,5437,1,1,
+ 1,2281,1,5611,2569,5437,3479,1,1,5448,
+ 2458,3801,630,3125,3151,5437,3442,3737,3435,2203,
+ 3391,3637,3174,3734,1806,3720,3418,3718,5437,5402,
+ 5381,5381,5381,5381,5381,5381,5409,5381,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,5360,1,1,1,1,
+ 1,1,1,1,1,5406,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,335,1,1,1,
- 1,1,1,2765,1,1,1,1806,1,5565,
- 2694,5391,3636,1,1,5402,5391,5405,5406,5727,
- 5728,2924,877,3887,3210,2203,2844,3770,3183,3884,
- 1086,3850,3459,3848,5391,5356,5335,5335,5335,5335,
- 5335,5335,5363,5335,1,1,1,1,1,1,
+ 1,1,1,2750,1,1,1,2281,1,5611,
+ 2569,5437,3479,1,1,5448,5437,5451,5452,5773,
+ 5774,2458,3442,3737,3435,2203,3391,3637,3174,3734,
+ 1806,3720,3418,3718,5437,5402,5381,5381,5381,5381,
+ 5381,5381,5409,5381,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,5360,1,1,1,1,1,1,1,1,
+ 1,5406,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,5391,1,1,1,1,1,1,5391,
- 1,1,1,1806,1,5565,2694,1,3636,1,
- 1,5402,5391,5030,5027,5353,5429,5391,877,3887,
- 3210,2203,2844,3770,3183,3884,1086,3850,3459,3848,
- 5391,5356,5335,5335,5335,5335,5335,5335,5363,5335,
+ 1,1,5437,1,1,1,1,1,1,5437,
+ 1,1,1,2281,1,5611,2569,1,3479,1,
+ 1,5448,5437,5076,5073,5399,5475,5437,3442,3737,
+ 3435,2203,3391,3637,3174,3734,1806,3720,3418,3718,
+ 5437,5402,5381,5381,5381,5381,5381,5381,5409,5381,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,5360,1,1,
+ 1,1,1,1,1,1,1,5406,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,5398,1,
- 1,1,1,1,1,2773,1,1,1,1806,
- 1,5565,2694,5391,3636,1,1,5402,5391,5214,
- 5211,48,5214,5211,877,3887,3210,2203,2844,3770,
- 3183,3884,1086,3850,3459,3848,5391,5356,5335,5335,
- 5335,5335,5335,5335,5363,5335,1,1,1,1,
+ 1,1,1,1,1,1,1,1,5444,1,
+ 1,1,1,1,1,2768,1,1,1,2281,
+ 1,5611,2569,5437,3479,1,1,5448,5437,5260,
+ 5257,48,5260,5257,3442,3737,3435,2203,3391,3637,
+ 3174,3734,1806,3720,3418,3718,5437,5402,5381,5381,
+ 5381,5381,5381,5381,5409,5381,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,5360,1,1,1,1,1,1,
+ 1,1,1,5406,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,5391,1,1,1,1,1,
- 1,5391,1,1,1,1806,1,5565,2694,5391,
- 3636,1,1,5402,113,5391,91,5395,3619,5063,
- 877,3887,3210,2203,2844,3770,3183,3884,1086,3850,
- 3459,3848,5391,3776,1,1,1,1,1,1,
- 3845,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,5400,
+ 1,1,1,1,5437,1,1,1,1,1,
+ 1,5437,1,1,1,2281,1,5611,2569,5437,
+ 3479,1,1,5448,113,5437,91,5441,2575,5109,
+ 3442,3737,3435,2203,3391,3637,3174,3734,1806,3720,
+ 3418,3718,5437,3697,1,1,1,1,1,1,
+ 3712,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,5446,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 5391,1,1,1,1,1,1,5391,1,1,
- 1,1806,1,5565,2694,5391,3636,1,1,5402,
- 5391,1629,5391,4237,5719,4259,877,3887,3210,2203,
- 2844,3770,3183,3884,1086,3850,3459,3848,39,5030,
- 5027,1137,735,4052,4127,3013,5394,4149,795,5654,
- 5652,5661,5660,5656,5657,5655,5658,5659,5662,5653,
- 5650,5727,5728,4105,4083,136,5644,5651,5647,5623,
- 5649,5648,5645,5646,5624,4193,4171,5410,5788,4022,
- 617,729,5412,665,3107,680,5391,5413,5411,593,
- 5407,5408,5409,5391,671,5789,5790,793,1336,5391,
- 5266,5266,228,5262,228,228,228,5270,228,1,
+ 5437,1,1,1,1,1,1,5437,1,1,
+ 1,2281,1,5611,2569,5437,3479,1,1,5448,
+ 5437,1291,5437,4302,1212,4324,3442,3737,3435,2203,
+ 3391,3637,3174,3734,1806,3720,3418,3718,39,5076,
+ 5073,1137,735,4112,4192,3043,5440,4214,863,5700,
+ 5698,5707,5706,5702,5703,5701,5704,5705,5708,5699,
+ 5696,5773,5774,4170,4148,136,5690,5697,5693,5669,
+ 5695,5694,5691,5692,5670,4258,4236,5456,5834,4051,
+ 617,729,5458,665,3098,722,5437,5459,5457,593,
+ 5453,5454,5455,5437,1403,5835,5836,2859,1336,5437,
+ 5312,5312,228,5308,228,228,228,5316,228,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,5391,3938,228,1,1,1,
- 1,1,1,1,1,1,5391,5030,5027,1,
- 735,5075,124,3013,223,132,5391,5259,393,5125,
- 5125,5391,282,5391,2855,1,1,1,2642,224,
- 5802,1271,396,5405,5406,2291,5650,5727,5728,357,
- 415,228,5644,5651,5647,5623,5649,5648,5645,5646,
- 5624,5650,5727,5728,941,5890,5391,5644,5651,5647,
- 5623,5649,5648,5645,5646,5624,282,5391,5391,8787,
- 8787,5825,5826,5827,5391,5266,5266,228,5262,228,
- 228,228,5314,228,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,3134,
- 3160,228,1,1,1,1,1,1,1,1,
- 1,3216,33,2356,1,5069,5427,5391,5069,5391,
- 5069,5069,5259,37,5250,5250,8,5403,5250,5747,
- 1,1,1,2642,5388,5802,1271,5069,5069,5069,
- 43,5220,5220,1,128,414,228,5391,5391,5069,
- 5069,160,344,5030,5027,2552,735,626,330,3013,
- 5890,330,5391,5391,1,5256,5256,5069,5253,5391,
- 330,3007,362,330,123,5069,5825,5826,5827,1,
- 5069,5069,5069,5069,5069,5069,5402,5026,5217,366,
- 5118,5114,2552,5122,626,1,3013,5388,1,5069,
- 5069,5069,5069,5069,5069,5069,5069,5069,5069,5069,
- 5069,5069,5069,5069,5391,1896,160,5069,5069,5069,
- 5069,5069,5069,5069,5069,5069,5069,5069,5069,5069,
- 5391,5069,5069,5072,117,1934,5072,362,5072,5072,
- 2473,2400,29,386,386,5241,386,386,5241,386,
- 5241,5241,1896,3406,362,5072,5072,5072,1189,3747,
- 2769,3134,3160,5391,386,386,386,5072,5072,5241,
+ 1,1,1,1,5437,3850,228,1,1,1,
+ 1,1,1,1,1,1,5437,5076,5073,1,
+ 735,5121,124,3043,223,132,5437,5305,393,5171,
+ 5171,5437,282,5437,2832,1,1,1,2530,224,
+ 5848,1271,396,5451,5452,2291,5696,5773,5774,357,
+ 415,228,5690,5697,5693,5669,5695,5694,5691,5692,
+ 5670,5696,5773,5774,941,5936,5437,5690,5697,5693,
+ 5669,5695,5694,5691,5692,5670,282,5437,5437,8833,
+ 8833,5871,5872,5873,5437,5312,5312,228,5308,228,
+ 228,228,5360,228,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,3125,
+ 3151,228,1,1,1,1,1,1,1,1,
+ 1,2621,33,2356,1,5115,5473,5437,5115,5437,
+ 5115,5115,5305,37,5296,5296,8,5449,5296,5793,
+ 1,1,1,2530,5434,5848,1271,5115,5115,5115,
+ 43,5266,5266,1,128,414,228,5437,5437,5115,
+ 5115,160,344,5076,5073,2552,735,626,330,3043,
+ 5936,330,5437,5437,1,5302,5302,5115,5299,5437,
+ 330,2668,362,330,123,5115,5871,5872,5873,1,
+ 5115,5115,5115,5115,5115,5115,5448,5072,5263,366,
+ 5164,5160,2552,5168,626,1,3043,5434,1,5115,
+ 5115,5115,5115,5115,5115,5115,5115,5115,5115,5115,
+ 5115,5115,5115,5115,5437,1896,160,5115,5115,5115,
+ 5115,5115,5115,5115,5115,5115,5115,5115,5115,5115,
+ 5437,5115,5115,5118,117,1934,5118,362,5118,5118,
+ 2473,2400,29,386,386,5287,386,386,5287,386,
+ 5287,5287,1896,3184,362,5118,5118,5118,1189,3776,
+ 3751,3125,3151,5437,386,386,386,5118,5118,5287,
386,386,386,386,386,386,386,386,386,1,
- 5118,5114,5305,5122,5311,5072,5308,5401,5391,38,
- 5048,5045,1,5072,5042,3378,3013,5033,5072,5072,
- 5072,5072,5072,5072,5391,5241,5400,308,5118,5114,
- 4470,5122,626,5326,3013,5241,5326,5072,5072,5072,
- 5072,5072,5072,5072,5072,5072,5072,5072,5072,5072,
- 5072,5072,36,5288,5285,5072,5072,5072,5072,5072,
- 5072,5072,5072,5072,5072,5072,5072,5072,122,5072,
- 5072,5391,5335,5335,228,5335,228,228,228,5338,
+ 5164,5160,5351,5168,5357,5118,5354,5447,5437,38,
+ 5094,5091,1,5118,5088,3698,3043,5079,5118,5118,
+ 5118,5118,5118,5118,5437,5287,5446,308,5164,5160,
+ 4568,5168,626,5372,3043,5287,5372,5118,5118,5118,
+ 5118,5118,5118,5118,5118,5118,5118,5118,5118,5118,
+ 5118,5118,36,5334,5331,5118,5118,5118,5118,5118,
+ 5118,5118,5118,5118,5118,5118,5118,5118,122,5118,
+ 5118,5437,5381,5381,228,5381,228,228,228,5384,
228,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,5791,5391,228,1,
- 1,8705,1,1,1,1,1,1,443,1,
- 1,1,1,5391,5054,225,39,5054,5391,5332,
- 5429,5401,330,5391,121,330,138,1,1,1,
- 2811,5397,5601,2694,457,3636,456,5650,5727,5728,
- 5400,5391,219,5644,5651,5647,5623,5649,5648,5645,
- 5646,5624,289,5405,5406,3134,3160,5890,5391,5335,
- 5335,228,5335,228,228,228,228,228,1,1,
+ 1,1,1,1,1,1,5837,5437,228,1,
+ 1,8751,1,1,1,1,1,1,443,1,
+ 1,1,1,5437,5100,225,39,5100,5437,5378,
+ 5475,5447,330,5437,121,330,138,1,1,1,
+ 2759,5443,5647,2569,457,3479,456,5696,5773,5774,
+ 5446,5437,219,5690,5697,5693,5669,5695,5694,5691,
+ 5692,5670,289,5451,5452,3125,3151,5936,5437,5381,
+ 5381,228,5381,228,228,228,228,228,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,3915,5391,228,1,1,8705,1,
- 1,1,1,1,1,1853,5396,5057,1,5060,
- 1,5118,5114,4470,5122,626,5332,3013,112,111,
- 133,3134,3160,3433,1,1,1,2811,129,5601,
- 2694,131,3636,3456,5391,5030,5027,2241,735,626,
- 594,3013,2571,1810,1767,1724,1681,1638,1595,1552,
- 1509,1466,1423,5391,5890,5391,5335,5335,228,5335,
- 228,228,228,5341,228,1,1,1,1,1,
+ 1,1,1,3944,5437,228,1,1,8751,1,
+ 1,1,1,1,1,1853,5442,5103,1,5106,
+ 1,5164,5160,4568,5168,626,5378,3043,112,111,
+ 133,3125,3151,3271,1,1,1,2759,129,5647,
+ 2569,131,3479,3257,5437,5076,5073,2241,735,626,
+ 594,3043,3288,1810,1767,1724,1681,1638,1595,1552,
+ 1509,1466,1423,5437,5936,5437,5381,5381,228,5381,
+ 228,228,228,5387,228,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 531,5391,228,1,1,8705,1,1,1,1,
- 1,1,444,39,39,1,5429,5391,5244,226,
- 5391,5244,137,5332,2540,5399,5391,4237,4237,4259,
- 4259,1,1,1,2811,1,5601,2694,2356,3636,
- 5391,5650,5727,5728,2473,2400,218,5644,5651,5647,
- 5623,5649,5648,5645,5646,5624,3270,37,5250,5250,
- 3707,5890,5391,5335,5335,228,5335,228,228,228,
- 5338,228,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1004,5398,228,
- 1,1,8705,1,1,1,1,1,1,5391,
- 5030,5027,1,735,5075,3090,3013,92,1,1,
- 5332,1,346,5247,236,1586,5247,5235,1,1,
- 1,2811,2291,5601,2694,5749,3636,1,5118,5114,
- 2552,5122,626,219,3013,5229,5391,5391,5118,5114,
- 4470,5122,626,5326,3013,369,5326,1275,5890,5391,
- 5335,5335,228,5335,228,228,228,5338,228,1,
+ 531,5437,228,1,1,8751,1,1,1,1,
+ 1,1,444,39,39,1,5475,5437,5290,226,
+ 5437,5290,137,5378,3424,5445,5437,4302,4302,4324,
+ 4324,1,1,1,2759,1,5647,2569,2356,3479,
+ 5437,5696,5773,5774,2473,2400,218,5690,5697,5693,
+ 5669,5695,5694,5691,5692,5670,2846,37,5296,5296,
+ 3591,5936,5437,5381,5381,228,5381,228,228,228,
+ 5384,228,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1004,5444,228,
+ 1,1,8751,1,1,1,1,1,1,5437,
+ 5076,5073,1,735,5121,2688,3043,92,1,1,
+ 5378,1,346,5293,236,1500,5293,5281,1,1,
+ 1,2759,2291,5647,2569,5795,3479,1,5164,5160,
+ 2552,5168,626,219,3043,5275,5437,5437,5164,5160,
+ 4568,5168,626,5372,3043,369,5372,1275,5936,5437,
+ 5381,5381,228,5381,228,228,228,5384,228,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,5391,1896,228,1,1,8705,
- 1,1,1,1,1,1,5391,5276,5273,1,
- 1896,1,5118,5114,4470,5122,626,5332,3013,308,
- 5232,5391,8614,8376,119,1,1,1,2811,2027,
- 5601,2694,5391,3636,1232,5391,5405,5406,308,5391,
- 219,156,344,39,39,2433,5429,347,330,3747,
- 2769,330,5391,5391,5427,5890,5391,5335,5335,228,
- 5335,228,228,228,228,228,1,1,1,1,
+ 1,1,1,1,5437,1896,228,1,1,8751,
+ 1,1,1,1,1,1,5437,5322,5319,1,
+ 1896,1,5164,5160,4568,5168,626,5378,3043,308,
+ 5278,5437,8660,8422,119,1,1,1,2759,2027,
+ 5647,2569,5437,3479,1232,5437,5451,5452,308,5437,
+ 219,156,344,39,39,2433,5475,347,330,3776,
+ 3751,330,5437,5437,5473,5936,5437,5381,5381,228,
+ 5381,228,228,228,228,228,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,118,5391,228,1,1,8705,1,1,1,
- 1,1,1,95,39,39,1,5429,5391,5317,
- 4215,1008,5317,374,5332,1896,3747,2769,404,300,
- 1896,1380,1,1,1,2811,5299,5601,2694,5690,
- 3636,1,5118,5114,4470,5122,626,5391,3013,1,
- 5118,5114,2552,5122,626,5302,3013,3313,45,5282,
- 5282,5391,5890,5391,5335,5335,228,5335,228,228,
+ 1,118,5437,228,1,1,8751,1,1,1,
+ 1,1,1,95,39,39,1,5475,5437,5363,
+ 4280,1008,5363,374,5378,1896,3776,3751,404,300,
+ 1896,1380,1,1,1,2759,5345,5647,2569,5736,
+ 3479,1,5164,5160,4568,5168,626,5437,3043,1,
+ 5164,5160,2552,5168,626,5348,3043,3215,45,5328,
+ 5328,5437,5936,5437,5381,5381,228,5381,228,228,
228,228,228,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,3348,5391,
- 228,1,1,8705,1,1,1,1,1,1,
- 3024,39,5391,1,5391,5429,5279,3211,5391,5405,
- 5406,5332,1896,2027,394,4416,5403,3190,387,1,
- 1,1,2811,945,5601,2694,1,3636,310,2433,
- 317,3243,5391,5323,340,330,5030,5027,4470,735,
- 626,3938,3013,5391,5295,5291,5391,8614,8376,5890,
- 5391,5335,5335,228,5335,228,228,228,228,228,
+ 1,1,1,1,1,1,1,1,3026,5437,
+ 228,1,1,8751,1,1,1,1,1,1,
+ 3241,39,5437,1,5437,5475,5325,3459,5437,5451,
+ 5452,5378,1896,2027,394,4481,5449,2847,387,1,
+ 1,1,2759,984,5647,2569,1,3479,310,2433,
+ 317,3182,5437,5369,340,330,5076,5073,4568,735,
+ 626,3850,3043,5437,5341,5337,5437,8660,8422,5936,
+ 5437,5381,5381,228,5381,228,228,228,228,228,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,5402,5391,228,1,1,
- 8705,1,1,1,1,1,1,1,39,1896,
- 1,5427,5429,1896,340,5397,340,1094,5332,340,
- 3980,5391,3190,5825,5826,5827,1,1,1,2811,
- 3426,5601,2694,1,3636,1,5118,5114,5305,5122,
- 5311,362,5308,5391,75,5391,3265,3620,5391,1,
- 1,1,1,1,1,1,5890,1,1,1,
+ 1,1,1,1,1,5448,5437,228,1,1,
+ 8751,1,1,1,1,1,1,1,39,1896,
+ 1,5473,5475,1896,340,5443,340,1094,5378,340,
+ 3862,5437,2847,5871,5872,5873,1,1,1,2759,
+ 3062,5647,2569,1,3479,1,5164,5160,5351,5168,
+ 5357,362,5354,5437,75,5437,3543,2658,5437,1,
+ 1,1,1,1,1,1,5936,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 5391,5405,5406,1,1,626,3324,3013,5391,100,
- 5396,5453,5454,125,395,1,1,1,386,1,
- 1,1,1,1,1,1,5391,1,1,1,
- 1,1,1,514,361,5391,362,1978,1,5926,
- 5391,2617,5391,1,1,1,5118,5114,1137,5122,
- 4052,4127,3013,362,4149,5078,5105,5111,5084,5087,
- 5099,5096,5102,5093,5090,5081,5108,5391,2814,565,
- 4105,4083,3834,5391,5030,5027,5902,735,626,579,
- 3013,5051,4193,4171,5410,5391,4022,617,729,5412,
- 665,3107,680,667,5413,5411,593,5407,5408,5409,
- 37,5250,5250,883,3820,1336,330,2715,2649,5391,
- 39,39,3700,515,39,5030,5027,1137,735,4052,
- 4127,3013,5385,4149,863,5654,5652,5661,5660,5656,
- 5657,5655,5658,5659,5662,5653,5391,5276,5273,4105,
- 4083,1,1,5391,5391,5391,37,3823,5427,5350,
- 527,4193,4171,5410,127,4022,617,729,5412,665,
- 3107,680,5391,5413,5411,593,5407,5408,5409,37,
- 5250,5250,1,5391,1336,5391,5391,5214,5211,48,
- 162,5369,5391,5406,5427,5398,140,5030,5027,1137,
- 735,4052,4127,3013,5427,4149,863,5654,5652,5661,
- 5660,5656,5657,5655,5658,5659,5662,5653,5402,2814,
- 5391,4105,4083,1,99,527,2433,5427,5397,319,
- 126,5229,5223,4193,4171,5410,5391,4022,617,729,
- 5412,665,3107,680,5406,5413,5411,593,5407,5408,
- 5409,4215,1008,5831,5391,162,1336,4314,2715,2649,
- 5845,39,39,1,5118,5114,1137,5122,4052,4127,
- 3013,29,4149,5078,5105,5111,5084,5087,5099,5096,
- 5102,5093,5090,5081,5108,2814,1896,1048,4105,4083,
- 3560,5391,1896,5396,367,1,5232,439,5226,5401,
- 4193,4171,5410,5401,4022,617,729,5412,665,3107,
- 680,47,5413,5411,593,5407,5408,5409,5400,5391,
- 5391,427,5400,1336,2715,2649,5033,5391,39,39,
- 39,5030,5027,1137,735,4052,4127,3013,5366,4149,
- 863,5654,5652,5661,5660,5656,5657,5655,5658,5659,
- 5662,5653,5036,5391,5391,4105,4083,4315,103,2458,
- 5391,4316,1,1293,1685,453,29,4193,4171,5410,
- 190,4022,617,729,5412,665,3107,680,5391,5413,
- 5411,593,5407,5408,5409,1,1,4303,5391,190,
- 1336,386,1814,2843,184,5344,5344,5369,39,5030,
- 5027,1137,735,4052,4127,3013,5366,4149,863,5654,
- 5652,5661,5660,5656,5657,5655,5658,5659,5662,5653,
- 5039,565,5391,4105,4083,5347,5347,48,5391,394,
- 5391,5405,73,3696,3696,4193,4171,5410,423,4022,
- 617,729,5412,665,3107,680,5066,5413,5411,593,
- 5407,5408,5409,5391,1,447,290,559,1336,5859,
- 5853,5391,288,5857,2894,5369,277,5391,419,5329,
- 5391,35,5391,3654,425,5391,507,565,3434,5851,
- 5852,520,5405,3433,565,5391,448,5320,4328,505,
- 5391,5882,5883,4826,5391,5860,5391,4590,5391,4837,
- 5391,2672,5391,4850,1,3849,5391,5391,3204,5862,
- 3961,5391,2684,5391,5391,5382,5391,739,1,1513,
- 1556,5391,5863,5861,5884,2065,5391,921,307,5391,
- 3821,5391,1891,5391,5391,509,5391,2153,5391,2115,
- 3575,5873,5872,5885,3475,3421,5854,5855,5878,5879,
- 5876,5877,5856,5858,5880,5881,2452,3615,3432,5886,
- 5391,5866,5867,5868,5864,5865,5874,5875,5870,5869,
- 5871,39,5030,5027,1137,735,4052,4127,3013,5395,
- 4149,863,5654,5652,5661,5660,5656,5657,5655,5658,
- 5659,5662,5653,3237,3857,3575,4105,4083,2798,3938,
- 2,3291,1984,3345,807,5391,5391,5391,4193,4171,
- 5410,3989,4022,617,729,5412,665,3107,680,5391,
- 5413,5411,593,5407,5408,5409,39,5030,5027,1137,
- 735,4052,4127,3013,5391,4149,863,5654,5652,5661,
- 5660,5656,5657,5655,5658,5659,5662,5653,5391,5391,
- 5391,4105,4083,5391,5391,37,5391,5391,5391,5391,
- 5391,5391,5391,4193,4171,5410,5391,4022,617,729,
- 5412,665,3107,680,5391,5413,5411,593,5407,5408,
- 5409,5391,5391,5391,5391,5391,1336,5391,5394,39,
- 5030,5027,1137,735,4052,4127,3013,5391,4149,863,
- 5654,5652,5661,5660,5656,5657,5655,5658,5659,5662,
- 5653,5391,5391,5391,4105,4083,5391,5391,5391,5391,
- 5391,5391,5391,5391,5391,5391,4193,4171,5410,5391,
- 4022,617,729,5412,665,3107,680,5391,5413,5411,
- 593,5407,5408,5409,39,5030,5027,1137,735,4052,
- 4127,3013,2061,4149,863,5654,5652,5661,5660,5656,
- 5657,5655,5658,5659,5662,5653,5391,5391,5391,4105,
- 4083,5391,5391,5391,5391,5391,5391,5391,5391,5391,
- 5391,4193,4171,5410,5391,4022,617,729,5412,665,
- 3107,680,5391,5413,5411,593,5407,5408,5409,5391,
- 5391,5391,5391,5391,1336,39,5030,5027,4783,735,
- 4052,4127,3013,5391,4149,863,5654,5652,5661,5660,
- 5656,5657,5655,5658,5659,5662,5653,5391,5391,5391,
- 4105,4083,5391,5391,5391,5391,5391,5391,5391,5391,
- 5391,5391,4193,4171,5410,5391,4022,617,729,5412,
- 665,3107,680,5391,5413,5411,593,5407,5408,5409,
- 39,5030,5027,1137,735,4052,4127,3013,5391,4149,
- 863,5654,5652,5661,5660,5656,5657,5655,5658,5659,
- 5662,5653,5391,5391,5391,4105,4083,5391,5391,5391,
- 5391,5391,5391,5391,5391,5391,5391,4193,4171,5410,
- 5391,4022,617,729,5412,665,3107,680,5391,5413,
- 5411,593,5407,5408,5409,39,5030,5027,1137,735,
- 4052,4127,3013,5391,4149,863,5654,5652,5661,5660,
- 5656,5657,5655,5658,5659,5662,5653,5391,5391,5391,
- 4105,4083,5391,5391,5391,5391,5391,5391,5391,5391,
- 5391,5391,4193,4171,5410,5391,4022,617,729,5412,
- 665,3107,680,5391,5413,5411,593,5407,5408,5409,
- 5391,5030,5027,5391,5429,5391,5391,5391,5391,5391,
- 785,5654,5652,5661,5660,5656,5657,5655,5658,5659,
- 5662,5653,5650,5727,5728,5391,5391,5391,5644,5651,
- 5647,5623,5649,5648,5645,5646,5624,5391,5391,5391,
- 5788,5391,5391,5391,5391,5391,5391,5391,5391,240,
- 5204,5200,5391,5208,5391,5391,671,5789,5790,785,
- 5191,5197,5170,5173,5185,5182,5188,5179,5176,5167,
- 5194,5146,5140,5137,5391,5391,5391,5164,5143,5155,
- 5134,5149,5152,5161,5158,5131,5391,5391,5391,5788,
- 32,387,387,5238,387,387,5238,387,5238,5238,
- 5391,5391,5391,5391,5391,671,5789,5790,5391,5391,
- 5391,5391,387,387,387,5391,222,5238,387,387,
- 387,387,387,387,387,387,387,5654,5652,5661,
- 5660,5656,5657,5655,5658,5659,5662,5653,5650,5727,
- 5728,5391,5391,5391,5644,5651,5647,5623,5649,5648,
- 5645,5646,5624,5238,5391,5391,5391,5391,5391,5391,
- 5391,5391,5391,5238
+ 5437,5451,5452,1,1,626,3439,3043,5437,100,
+ 5442,5499,5500,125,395,1,1,1,386,1,
+ 1,1,1,1,1,1,5437,1,1,1,
+ 1,1,1,514,361,5437,362,1978,1,5972,
+ 5437,2226,5437,1,1,1,5164,5160,1137,5168,
+ 4112,4192,3043,362,4214,5124,5151,5157,5130,5133,
+ 5145,5142,5148,5139,5136,5127,5154,5437,2803,565,
+ 4170,4148,4369,5437,5076,5073,5948,735,626,579,
+ 3043,5097,4258,4236,5456,5437,4051,617,729,5458,
+ 665,3098,722,667,5459,5457,593,5453,5454,5455,
+ 37,5296,5296,883,854,1336,330,2721,2694,5437,
+ 39,39,3884,515,39,5076,5073,1137,735,4112,
+ 4192,3043,5431,4214,728,5700,5698,5707,5706,5702,
+ 5703,5701,5704,5705,5708,5699,5437,5322,5319,4170,
+ 4148,1,1,5437,5437,5437,37,3980,5473,5396,
+ 527,4258,4236,5456,127,4051,617,729,5458,665,
+ 3098,722,5437,5459,5457,593,5453,5454,5455,37,
+ 5296,5296,1,5437,1336,5437,5437,5260,5257,48,
+ 162,5415,5437,5452,5473,5444,140,5076,5073,1137,
+ 735,4112,4192,3043,5473,4214,728,5700,5698,5707,
+ 5706,5702,5703,5701,5704,5705,5708,5699,5448,2803,
+ 5437,4170,4148,1,99,527,2433,5473,5443,319,
+ 126,5275,5269,4258,4236,5456,5437,4051,617,729,
+ 5458,665,3098,722,5452,5459,5457,593,5453,5454,
+ 5455,4280,1008,5877,5437,162,1336,3194,2721,2694,
+ 5891,39,39,1,5164,5160,1137,5168,4112,4192,
+ 3043,29,4214,5124,5151,5157,5130,5133,5145,5142,
+ 5148,5139,5136,5127,5154,2803,1896,1048,4170,4148,
+ 4914,5437,1896,5442,367,1,5278,439,5272,5447,
+ 4258,4236,5456,5447,4051,617,729,5458,665,3098,
+ 722,47,5459,5457,593,5453,5454,5455,5446,5437,
+ 5437,427,5446,1336,2721,2694,5079,5437,39,39,
+ 39,5076,5073,1137,735,4112,4192,3043,5412,4214,
+ 728,5700,5698,5707,5706,5702,5703,5701,5704,5705,
+ 5708,5699,5082,5437,5437,4170,4148,3635,103,2438,
+ 5437,3885,1,1293,824,453,29,4258,4236,5456,
+ 190,4051,617,729,5458,665,3098,722,5437,5459,
+ 5457,593,5453,5454,5455,1,1,4368,5437,190,
+ 1336,386,1182,2843,184,5390,5390,5415,39,5076,
+ 5073,1137,735,4112,4192,3043,5412,4214,728,5700,
+ 5698,5707,5706,5702,5703,5701,5704,5705,5708,5699,
+ 5085,565,5437,4170,4148,5393,5393,48,5437,394,
+ 5437,5451,73,3576,3576,4258,4236,5456,423,4051,
+ 617,729,5458,665,3098,722,5112,5459,5457,593,
+ 5453,5454,5455,5437,1,447,290,559,1336,5905,
+ 5899,5437,288,5903,2629,5415,277,5437,419,5375,
+ 5437,35,5437,3555,425,5437,507,565,3293,5897,
+ 5898,520,5451,3271,565,5437,448,5366,3992,505,
+ 5437,5928,5929,4872,5437,5906,5437,3542,5437,3696,
+ 5437,2999,5437,4886,1,3383,5437,5437,2994,5908,
+ 4370,5437,3071,5437,5437,5428,5437,739,1,1599,
+ 1635,5437,5909,5907,5930,2065,5437,921,307,5437,
+ 3426,5437,2022,5437,5437,509,5437,2153,5437,2115,
+ 3323,5919,5918,5931,3867,4887,5900,5901,5924,5925,
+ 5922,5923,5902,5904,5926,5927,2452,3420,4896,5932,
+ 5437,5912,5913,5914,5910,5911,5920,5921,5916,5915,
+ 5917,39,5076,5073,1137,735,4112,4192,3043,5441,
+ 4214,728,5700,5698,5707,5706,5702,5703,5701,5704,
+ 5705,5708,5699,3230,3677,3323,4170,4148,4022,3850,
+ 2,3286,1984,3342,807,5437,5437,5437,4258,4236,
+ 5456,3863,4051,617,729,5458,665,3098,722,5437,
+ 5459,5457,593,5453,5454,5455,39,5076,5073,1137,
+ 735,4112,4192,3043,5437,4214,728,5700,5698,5707,
+ 5706,5702,5703,5701,5704,5705,5708,5699,5437,5437,
+ 5437,4170,4148,5437,5437,37,5437,5437,5437,5437,
+ 5437,5437,5437,4258,4236,5456,5437,4051,617,729,
+ 5458,665,3098,722,5437,5459,5457,593,5453,5454,
+ 5455,5437,5437,5437,5437,5437,1336,5437,5440,39,
+ 5076,5073,1137,735,4112,4192,3043,5437,4214,728,
+ 5700,5698,5707,5706,5702,5703,5701,5704,5705,5708,
+ 5699,5437,5437,5437,4170,4148,5437,5437,5437,5437,
+ 5437,5437,5437,5437,5437,5437,4258,4236,5456,5437,
+ 4051,617,729,5458,665,3098,722,5437,5459,5457,
+ 593,5453,5454,5455,39,5076,5073,1137,735,4112,
+ 4192,3043,2149,4214,728,5700,5698,5707,5706,5702,
+ 5703,5701,5704,5705,5708,5699,5437,5437,5437,4170,
+ 4148,5437,5437,5437,5437,5437,5437,5437,5437,5437,
+ 5437,4258,4236,5456,5437,4051,617,729,5458,665,
+ 3098,722,5437,5459,5457,593,5453,5454,5455,5437,
+ 5437,5437,5437,5437,1336,39,5076,5073,3873,735,
+ 4112,4192,3043,5437,4214,728,5700,5698,5707,5706,
+ 5702,5703,5701,5704,5705,5708,5699,5437,5437,5437,
+ 4170,4148,5437,5437,5437,5437,5437,5437,5437,5437,
+ 5437,5437,4258,4236,5456,5437,4051,617,729,5458,
+ 665,3098,722,5437,5459,5457,593,5453,5454,5455,
+ 39,5076,5073,1137,735,4112,4192,3043,5437,4214,
+ 728,5700,5698,5707,5706,5702,5703,5701,5704,5705,
+ 5708,5699,5437,5437,5437,4170,4148,5437,5437,5437,
+ 5437,5437,5437,5437,5437,5437,5437,4258,4236,5456,
+ 5437,4051,617,729,5458,665,3098,722,5437,5459,
+ 5457,593,5453,5454,5455,39,5076,5073,1137,735,
+ 4112,4192,3043,5437,4214,728,5700,5698,5707,5706,
+ 5702,5703,5701,5704,5705,5708,5699,5437,5437,5437,
+ 4170,4148,5437,5437,5437,5437,5437,5437,5437,5437,
+ 5437,5437,4258,4236,5456,5437,4051,617,729,5458,
+ 665,3098,722,5437,5459,5457,593,5453,5454,5455,
+ 5437,5076,5073,5437,5475,5437,5437,5437,5437,5437,
+ 795,5700,5698,5707,5706,5702,5703,5701,5704,5705,
+ 5708,5699,5696,5773,5774,5437,5437,5437,5690,5697,
+ 5693,5669,5695,5694,5691,5692,5670,5437,5437,5437,
+ 5834,5437,5437,5437,5437,5437,5437,5437,5437,240,
+ 5250,5246,5437,5254,5437,5437,1403,5835,5836,795,
+ 5237,5243,5216,5219,5231,5228,5234,5225,5222,5213,
+ 5240,5192,5186,5183,5437,5437,5437,5210,5189,5201,
+ 5180,5195,5198,5207,5204,5177,5437,5437,5437,5834,
+ 32,387,387,5284,387,387,5284,387,5284,5284,
+ 5437,5437,5437,5437,5437,1403,5835,5836,5437,5437,
+ 5437,5437,387,387,387,5437,222,5284,387,387,
+ 387,387,387,387,387,387,387,5700,5698,5707,
+ 5706,5702,5703,5701,5704,5705,5708,5699,5696,5773,
+ 5774,5437,5437,5437,5690,5697,5693,5669,5695,5694,
+ 5691,5692,5670,5284,5437,5437,5437,5437,5437,5437,
+ 5437,5437,5437,5284
};
};
public final static char termAction[] = TermAction.termAction;
@@ -1799,60 +1808,60 @@ public class CPPNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface Asb {
public final static char asb[] = {0,
- 731,72,454,66,772,832,832,832,832,1105,
- 772,141,141,653,141,126,454,128,455,455,
- 455,455,455,455,455,455,455,143,149,154,
- 151,158,156,163,161,165,164,166,238,167,
- 454,438,693,693,693,693,493,849,1,1,
- 138,693,407,235,141,141,1,493,235,938,
- 692,1020,1107,1042,438,141,143,633,633,849,
- 454,455,455,455,455,455,455,455,455,455,
- 455,455,455,455,455,455,455,455,455,455,
- 454,454,454,454,454,454,454,454,454,454,
- 454,454,455,235,235,226,438,847,847,847,
- 847,335,235,1,1,1103,1031,1042,85,1042,
- 80,1042,74,1042,1026,1105,493,407,407,1,
- 832,407,692,454,491,1019,235,490,492,490,
- 235,407,151,151,149,149,149,156,156,156,
- 156,154,154,161,158,158,164,163,165,1119,
- 166,1103,367,519,509,508,558,1049,1049,1105,
- 128,772,772,772,772,493,493,847,846,847,
- 138,493,287,290,82,334,83,1105,493,493,
- 335,847,455,693,147,191,235,1107,493,493,
- 492,1020,454,226,407,182,235,521,523,493,
- 1020,454,454,454,454,772,772,438,288,134,
- 290,493,727,496,725,335,85,352,493,335,
- 493,235,147,1103,1019,1107,493,491,235,513,
- 501,512,523,335,491,235,235,235,235,849,
- 849,288,134,822,493,290,1119,83,832,337,
- 53,1109,290,727,726,727,727,335,352,352,
- 493,493,147,148,147,454,191,58,143,1107,
- 357,454,510,510,339,339,493,517,1103,901,
- 235,493,235,235,134,133,1020,594,85,847,
- 832,490,640,1111,487,772,727,727,727,727,
- 493,352,822,820,821,147,849,455,407,58,
- 357,454,454,523,493,1020,235,521,501,357,
- 1084,134,491,594,594,775,306,491,727,727,
- 487,187,455,1119,347,825,493,1103,727,727,
- 645,822,455,493,148,235,407,841,523,357,
- 188,822,891,980,279,772,83,812,594,594,
- 306,491,727,85,1105,1111,455,455,1019,487,
- 893,720,646,493,841,235,841,774,279,891,
- 897,1105,822,846,832,60,60,188,85,418,
- 893,493,772,645,493,1105,1105,493,772,834,
- 841,775,594,188,346,187,235,1105,493,306,
- 775,306,845,845,934,419,1105,493,849,493,
- 493,493,524,834,594,454,89,487,188,493,
- 493,306,693,693,934,418,1119,455,1119,188,
- 417,772,772,772,419,772,493,246,188,188,
- 493,85,235,493,493,234,836,822,235,822,
- 85,493,188,846,410,772,410,419,1119,419,
- 438,438,436,936,438,188,188,350,934,693,
- 836,822,89,188,556,901,419,235,487,235,
- 436,279,772,235,934,89,60,235,235,1097,
- 419,350,419,188,279,454,419,416,821,845,
- 85,85,1099,454,417,849,188,235,186,88,
- 490,419,235,188,186,186,419
+ 678,72,622,66,719,924,924,924,924,1105,
+ 719,867,867,721,867,153,622,155,623,623,
+ 623,623,623,623,623,623,623,869,875,880,
+ 877,884,882,889,887,891,890,892,261,893,
+ 622,606,761,761,761,761,661,534,1,1,
+ 864,761,433,258,867,867,1,661,258,938,
+ 760,1020,1107,1042,606,867,869,386,386,534,
+ 622,623,623,623,623,623,623,623,623,623,
+ 623,623,623,623,623,623,623,623,623,623,
+ 622,622,622,622,622,622,622,622,622,622,
+ 622,622,623,258,258,249,606,852,852,852,
+ 852,205,258,1,1,1103,1031,1042,79,1042,
+ 74,1042,313,1042,1026,1105,661,433,433,1,
+ 924,433,760,622,659,1019,258,658,660,658,
+ 258,433,877,877,875,875,875,882,882,882,
+ 882,880,880,887,884,884,890,889,891,1119,
+ 892,1103,393,459,449,448,498,1049,1049,1105,
+ 155,719,719,719,719,661,661,852,851,852,
+ 864,661,310,160,76,204,77,1105,661,661,
+ 205,852,623,761,873,214,258,1107,661,661,
+ 660,1020,622,249,433,908,258,461,463,661,
+ 1020,622,622,622,622,719,719,606,311,862,
+ 860,160,661,674,209,672,205,79,319,661,
+ 205,661,258,873,1103,1019,1107,661,659,258,
+ 453,441,452,463,205,659,258,258,258,258,
+ 534,534,311,860,856,661,160,1119,77,924,
+ 207,53,1109,160,674,673,674,674,205,319,
+ 319,661,661,873,874,873,622,214,58,869,
+ 1107,337,622,450,450,324,324,661,457,1103,
+ 82,258,661,258,258,860,860,1020,347,79,
+ 852,924,658,436,1111,655,719,674,674,674,
+ 674,661,319,856,854,855,873,534,623,433,
+ 58,337,622,622,463,661,1020,258,461,441,
+ 337,1084,860,859,659,347,347,794,176,659,
+ 674,674,655,913,623,1119,332,917,661,1103,
+ 674,674,664,856,623,661,874,258,433,846,
+ 463,337,860,914,856,576,980,302,719,77,
+ 831,347,347,176,659,674,79,1105,1111,623,
+ 623,1019,655,928,788,665,661,846,258,846,
+ 793,302,576,932,1105,856,851,924,60,60,
+ 914,79,586,928,661,719,664,661,1105,1105,
+ 661,719,839,846,794,347,914,331,913,258,
+ 1105,661,176,794,176,850,850,926,587,1105,
+ 661,534,661,661,661,464,839,347,622,116,
+ 655,914,661,661,176,761,761,926,586,1119,
+ 623,1119,914,585,719,719,719,587,719,661,
+ 269,914,914,661,79,258,661,661,257,841,
+ 856,258,856,79,661,914,851,578,719,578,
+ 587,1119,587,606,606,604,936,606,914,914,
+ 335,926,761,841,856,116,914,496,82,587,
+ 258,655,258,604,302,719,258,926,116,60,
+ 258,258,1097,587,335,587,914,302,622,587,
+ 584,855,850,79,79,1099,622,585,534,914,
+ 258,912,115,658,587,258,914,912,912,587
};
};
public final static char asb[] = Asb.asb;
@@ -1867,49 +1876,43 @@ public class CPPNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
53,54,39,3,37,38,9,6,25,26,
41,68,7,1,2,4,10,5,0,68,
69,70,1,2,0,8,72,117,73,27,
- 70,120,0,4,8,67,1,2,0,48,
- 4,72,1,2,67,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,60,23,7,24,5,1,2,4,
- 74,67,119,105,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,
- 69,107,108,109,110,111,112,113,114,115,
- 116,72,117,101,106,71,70,27,8,0,
- 91,89,25,26,92,93,87,88,55,94,
- 95,96,97,98,99,100,101,106,72,90,
- 69,107,108,109,110,111,112,113,114,115,
- 116,117,71,27,120,68,1,2,9,6,
- 4,3,63,70,73,8,0,68,72,90,
- 70,117,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,86,
+ 70,120,0,48,4,72,1,2,67,8,
+ 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,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,86,
59,7,102,103,104,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,74,68,
- 72,90,73,67,63,3,8,70,27,69,
- 0,1,2,8,71,0,23,60,24,8,
- 68,90,69,70,73,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,117,8,0,86,
- 102,103,104,48,72,118,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,4,8,72,67,0,
+ 20,24,21,4,1,2,48,0,4,8,
+ 72,67,0,91,89,25,26,92,93,87,
+ 88,55,94,95,96,97,98,99,100,101,
+ 106,72,90,69,107,108,109,110,111,112,
+ 113,114,115,116,117,71,27,120,68,1,
+ 2,9,6,4,3,63,70,73,8,0,
+ 68,72,90,70,117,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,4,8,67,1,2,0,1,2,
+ 8,71,0,74,68,72,90,73,67,63,
+ 3,8,70,27,69,0,23,60,24,8,
+ 68,90,69,70,73,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,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,117,8,0,8,72,67,74,0,
9,6,7,5,4,1,2,3,63,68,
69,70,8,73,90,0,5,7,3,63,
6,9,90,28,11,12,23,13,56,29,
@@ -1919,41 +1922,47 @@ public class CPPNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
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,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,8,
- 72,67,74,0,22,1,2,4,102,103,
- 104,0,66,65,25,26,6,92,93,98,
- 9,99,5,41,69,55,68,110,111,107,
- 108,109,115,114,116,88,87,112,113,96,
- 97,94,95,100,101,37,38,70,89,105,
- 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,
- 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,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,69,
- 70,71,8,0,72,8,63,3,69,70,
- 27,55,0,23,24,74,3,72,27,67,
- 60,8,90,73,69,70,68,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,67,70,0,8,67,69,0,
+ 27,3,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,86,102,103,
+ 104,48,72,118,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,22,1,2,4,102,103,104,
+ 0,4,55,8,72,67,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,
+ 66,65,25,26,6,92,93,98,9,99,
+ 5,41,69,55,68,110,111,107,108,109,
+ 115,114,116,88,87,112,113,96,97,94,
+ 95,100,101,37,38,70,89,105,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,22,20,24,21,1,2,
- 4,90,0,118,0,75,0,65,66,37,
+ 36,10,58,19,20,24,21,1,2,4,
+ 22,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,23,24,
+ 74,3,72,27,67,60,8,90,73,69,
+ 70,68,0,69,70,71,8,0,60,23,
+ 24,7,5,1,2,4,74,67,119,105,
+ 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,69,107,108,109,
+ 110,111,112,113,114,115,116,72,117,101,
+ 106,71,70,27,8,0,72,8,63,3,
+ 69,70,27,55,0,118,0,8,67,70,
+ 0,8,67,69,0,75,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,
@@ -1979,60 +1988,60 @@ public class CPPNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface Nasb {
public final static char nasb[] = {0,
- 205,12,72,12,12,12,12,12,12,76,
- 12,12,12,191,12,187,152,111,72,72,
- 232,72,72,72,72,72,72,12,12,12,
- 12,12,12,12,12,12,12,12,72,12,
- 72,276,33,33,33,33,111,224,130,130,
- 43,5,105,282,12,12,130,236,282,72,
- 78,23,12,12,276,12,12,15,15,224,
- 152,72,72,72,72,72,72,72,72,72,
- 72,72,72,72,72,72,72,72,72,72,
- 72,72,72,72,72,72,72,72,72,72,
- 72,152,72,282,282,115,1,12,12,12,
- 12,36,282,28,28,137,250,251,173,251,
- 46,251,25,251,244,10,111,105,105,28,
- 12,105,33,195,187,39,282,186,111,186,
- 282,105,12,12,12,12,12,12,12,12,
+ 205,12,58,12,12,12,12,12,12,62,
+ 12,12,12,208,12,193,157,114,58,58,
+ 245,58,58,58,58,58,58,12,12,12,
+ 12,12,12,12,12,12,12,12,58,12,
+ 58,214,34,34,34,34,114,136,134,134,
+ 69,5,95,282,12,12,134,249,282,58,
+ 64,23,12,12,214,12,12,15,15,136,
+ 157,58,58,58,58,58,58,58,58,58,
+ 58,58,58,58,58,58,58,58,58,58,
+ 58,58,58,58,58,58,58,58,58,58,
+ 58,157,58,282,282,107,1,12,12,12,
+ 12,37,282,29,29,150,263,264,185,264,
+ 42,264,83,264,257,10,114,95,95,29,
+ 12,95,34,120,193,176,282,192,114,192,
+ 282,95,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,
- 12,137,100,114,55,55,12,12,12,10,
- 111,12,12,12,12,202,11,12,12,12,
- 177,111,12,130,201,76,80,76,111,11,
- 12,12,72,33,130,89,282,12,11,111,
- 119,23,72,175,105,12,282,155,130,111,
- 23,152,152,152,152,12,12,28,139,130,
- 253,202,85,85,12,208,173,130,208,22,
- 202,282,67,177,39,12,236,202,282,12,
- 123,12,158,21,202,282,282,282,282,224,
- 224,12,61,166,111,215,12,141,12,12,
- 87,264,253,85,85,130,130,22,130,237,
- 11,202,130,96,12,152,177,120,12,12,
- 130,72,12,12,55,55,111,122,137,158,
- 282,202,282,282,130,61,23,130,173,12,
- 12,76,130,132,125,12,130,130,98,98,
- 202,237,166,12,12,67,224,72,105,120,
- 61,72,72,130,11,23,282,155,181,130,
- 12,61,187,227,130,239,130,208,130,65,
- 183,215,72,12,83,12,111,137,98,98,
- 161,166,72,237,96,282,105,130,158,61,
- 215,166,12,239,265,12,80,87,239,227,
- 158,187,65,221,57,125,72,72,49,183,
- 12,76,63,208,107,282,130,172,132,12,
- 12,76,166,12,12,13,13,215,221,165,
- 12,208,12,217,208,76,76,11,12,130,
- 107,239,130,215,94,12,282,76,208,158,
- 239,130,12,12,130,149,57,11,224,11,
- 208,208,280,61,227,195,70,125,215,208,
- 142,158,33,33,211,168,12,72,12,215,
- 12,12,12,12,169,12,237,213,215,215,
- 237,52,282,11,11,282,130,166,282,130,
- 173,142,215,12,109,12,12,169,12,169,
- 260,260,144,12,260,215,215,12,130,33,
- 107,166,130,215,12,33,169,282,125,282,
- 272,130,12,282,211,70,13,282,282,130,
- 169,12,169,215,125,152,169,109,166,12,
- 52,52,123,72,12,198,215,282,92,69,
- 186,169,282,215,92,12,169
+ 12,150,90,106,86,86,12,12,12,10,
+ 114,12,12,12,12,103,11,12,12,12,
+ 141,114,12,134,102,62,99,62,114,11,
+ 12,12,58,34,134,76,282,12,11,114,
+ 111,23,58,139,95,12,282,274,134,114,
+ 23,157,157,157,157,12,12,29,152,152,
+ 152,162,103,25,25,12,229,185,134,229,
+ 22,103,282,40,141,176,12,249,103,282,
+ 12,127,12,277,21,103,282,282,282,282,
+ 136,136,12,134,174,114,224,12,117,12,
+ 12,74,266,162,25,25,134,134,22,134,
+ 250,11,103,134,88,12,157,141,112,12,
+ 12,134,58,12,12,86,86,114,126,150,
+ 277,282,103,282,282,152,49,23,134,185,
+ 12,12,62,134,145,129,12,134,134,27,
+ 27,103,250,174,12,12,40,136,58,95,
+ 112,49,58,58,134,11,23,282,274,187,
+ 134,12,134,49,193,236,134,252,134,229,
+ 134,51,189,224,58,12,72,12,114,150,
+ 27,27,169,174,58,250,88,282,95,134,
+ 277,49,49,224,174,12,252,267,12,99,
+ 74,252,236,277,193,51,202,45,129,58,
+ 58,66,189,12,62,53,229,97,282,134,
+ 184,145,12,12,62,174,12,12,13,13,
+ 224,202,173,12,229,12,241,229,62,62,
+ 11,12,134,97,252,134,224,81,12,282,
+ 62,229,277,252,134,12,12,134,154,45,
+ 11,136,11,229,229,280,49,236,120,56,
+ 129,224,229,118,277,34,34,212,180,12,
+ 58,12,224,12,12,12,12,181,12,250,
+ 222,224,224,250,226,282,11,11,282,134,
+ 174,282,134,185,118,224,12,160,12,12,
+ 181,12,181,232,232,197,12,232,224,224,
+ 12,134,34,97,174,134,224,12,34,181,
+ 282,129,282,218,134,12,282,212,56,13,
+ 282,282,134,181,12,181,224,129,157,181,
+ 160,174,12,226,226,127,58,12,123,224,
+ 282,79,55,192,181,282,224,79,12,181
};
};
public final static char nasb[] = Nasb.nasb;
@@ -2042,32 +2051,32 @@ public class CPPNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public final static char nasr[] = {0,
3,13,10,9,152,150,121,149,148,5,
2,0,108,0,5,2,9,10,139,0,
- 136,2,65,0,153,183,0,5,10,9,
- 2,13,4,45,0,136,65,0,65,138,
- 137,0,4,195,0,153,188,0,65,54,
- 0,40,55,0,75,0,172,5,171,0,
- 62,0,193,0,159,0,143,0,67,129,
- 40,10,9,2,13,5,0,175,0,40,
- 1,0,191,0,109,0,156,0,4,177,
- 0,162,0,184,0,141,0,110,0,13,
- 2,9,10,5,83,0,126,0,113,0,
- 2,44,0,33,94,95,4,0,2,115,
- 0,33,95,94,64,5,2,9,10,4,
- 0,4,10,9,2,64,5,90,54,0,
- 40,104,0,39,4,23,181,0,48,40,
- 179,4,39,0,54,5,90,23,4,0,
- 5,102,192,0,4,67,0,67,39,48,
- 68,4,40,0,95,94,54,5,58,0,
- 95,94,54,64,58,5,10,9,2,0,
- 4,45,196,0,4,29,0,4,178,0,
- 44,2,3,0,4,174,0,2,56,0,
- 161,0,4,39,38,0,5,102,168,0,
- 40,160,0,4,97,0,116,4,48,82,
- 0,5,10,9,13,3,1,0,4,48,
- 82,84,0,2,5,121,117,118,119,13,
- 87,0,4,48,82,102,46,5,0,4,
- 45,103,0,38,5,2,9,10,4,158,
- 0,45,4,180,0,4,45,39,0,45,
+ 136,2,65,0,109,0,110,0,5,10,
+ 9,2,13,4,45,0,136,65,0,143,
+ 0,153,188,0,172,5,171,0,62,0,
+ 159,0,193,0,67,129,40,10,9,2,
+ 13,5,0,175,0,65,49,0,4,195,
+ 0,191,0,156,0,4,177,0,162,0,
+ 184,0,153,183,0,75,0,141,0,13,
+ 2,9,10,5,83,0,126,0,40,1,
+ 0,44,2,3,0,33,94,95,4,0,
+ 2,115,0,2,44,0,40,104,0,4,
+ 29,0,4,178,0,33,95,94,64,5,
+ 2,9,10,4,0,4,97,0,95,94,
+ 49,5,58,0,4,10,9,2,64,5,
+ 90,49,0,48,40,179,4,39,0,113,
+ 0,4,48,82,102,46,5,0,5,102,
+ 192,0,4,67,0,65,138,137,0,67,
+ 39,48,68,4,40,0,95,94,49,64,
+ 58,5,10,9,2,0,39,4,23,181,
+ 0,40,160,0,4,174,0,4,45,196,
+ 0,161,0,4,45,39,0,45,4,180,
+ 0,4,39,38,0,40,55,0,2,56,
+ 0,4,45,103,0,116,4,48,82,0,
+ 5,102,168,0,5,10,9,13,3,1,
+ 0,4,48,82,84,0,2,5,121,117,
+ 118,119,13,87,0,38,5,2,9,10,
+ 4,158,0,49,5,90,23,4,0,45,
4,33,0
};
};
@@ -2124,18 +2133,18 @@ public class CPPNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface ScopePrefix {
public final static char scopePrefix[] = {
- 159,578,597,308,529,545,556,567,367,266,
- 280,302,315,328,42,291,387,425,167,586,
- 472,20,51,71,80,85,90,130,195,297,
- 321,336,341,144,272,286,500,27,144,377,
- 341,605,27,217,245,1,14,61,76,106,
- 346,356,360,443,465,494,521,525,615,619,
- 623,97,7,97,405,421,434,455,513,232,
- 116,116,434,536,552,563,574,207,483,56,
- 56,156,222,225,56,240,261,225,225,56,
- 364,462,469,156,56,638,110,350,409,449,
- 56,350,396,177,104,447,627,634,627,634,
- 65,415,137,104,104,250
+ 159,579,598,309,530,546,557,568,368,267,
+ 281,303,316,329,42,292,388,426,167,587,
+ 473,20,51,71,80,85,90,130,195,298,
+ 322,337,342,144,273,287,501,27,144,378,
+ 342,606,27,217,246,1,14,61,76,106,
+ 347,357,361,444,466,495,522,526,616,620,
+ 624,97,7,97,406,422,435,456,514,116,
+ 116,232,435,537,553,564,575,207,484,56,
+ 56,156,222,225,56,241,262,225,225,56,
+ 365,463,470,156,56,639,110,351,410,450,
+ 56,351,397,177,104,448,628,635,628,635,
+ 65,416,137,104,104,251
};
};
public final static char scopePrefix[] = ScopePrefix.scopePrefix;
@@ -2143,18 +2152,18 @@ public class CPPNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface ScopeSuffix {
public final static char scopeSuffix[] = {
- 18,5,5,135,5,5,5,5,374,135,
- 95,135,135,334,48,277,393,431,173,67,
- 478,25,25,25,59,59,95,135,200,135,
- 326,326,334,149,277,101,505,38,152,382,
- 592,610,32,211,211,5,18,5,59,95,
- 326,95,95,135,243,5,5,5,5,5,
- 243,636,11,101,374,374,374,459,505,236,
- 120,125,438,540,540,540,540,211,487,59,
- 59,5,5,228,230,243,5,264,264,230,
- 95,5,243,5,498,5,113,353,412,452,
- 517,508,399,180,95,95,629,629,631,631,
- 67,417,139,202,187,252
+ 18,5,5,135,5,5,5,5,375,135,
+ 95,135,135,335,48,278,394,432,173,67,
+ 479,25,25,25,59,59,95,135,200,135,
+ 327,327,335,149,278,101,506,38,152,383,
+ 593,611,32,211,211,5,18,5,59,95,
+ 327,95,95,135,244,5,5,5,5,5,
+ 244,637,11,101,375,375,375,460,506,120,
+ 125,236,439,541,541,541,541,211,488,59,
+ 59,5,5,228,230,244,5,265,265,230,
+ 95,5,244,5,499,5,113,354,413,453,
+ 518,509,400,180,95,95,630,630,632,632,
+ 67,418,139,202,187,253
};
};
public final static char scopeSuffix[] = ScopeSuffix.scopeSuffix;
@@ -2163,13 +2172,13 @@ public class CPPNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface ScopeLhs {
public final static char scopeLhs[] = {
46,17,17,119,17,17,17,17,71,86,
- 47,80,119,118,77,52,71,70,46,17,
+ 47,80,119,118,77,53,71,70,46,17,
19,3,7,8,168,168,164,117,46,81,
- 118,118,120,128,53,47,139,133,128,71,
+ 118,118,120,128,54,47,139,133,128,71,
17,17,133,96,59,135,74,171,168,164,
- 120,182,50,55,143,18,17,17,17,17,
- 17,12,113,164,71,70,70,37,139,58,
- 130,130,70,17,17,17,17,96,19,172,
+ 120,182,51,55,143,18,17,17,17,17,
+ 17,12,113,164,71,70,70,37,139,130,
+ 130,58,70,17,17,17,17,96,19,172,
168,184,94,101,61,75,60,158,76,120,
72,144,143,175,139,16,164,120,103,69,
139,139,71,46,164,66,137,44,137,44,
@@ -2187,8 +2196,8 @@ public class CPPNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
1,1,1,71,1,1,4,68,70,27,
1,1,68,73,73,73,118,73,1,27,
1,27,27,71,117,73,73,73,73,73,
- 117,1,73,1,73,73,73,72,4,6,
- 1,1,73,68,68,68,68,73,3,1,
+ 117,1,73,1,73,73,73,72,4,1,
+ 1,6,73,68,68,68,68,73,3,1,
1,73,73,3,1,117,73,1,1,1,
27,73,117,73,5,73,1,48,69,72,
1,48,75,74,27,27,4,4,4,4,
@@ -2206,8 +2215,8 @@ public class CPPNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
154,154,154,312,98,96,149,50,312,106,
250,250,50,141,63,26,106,30,54,82,
154,22,98,33,79,250,250,250,250,250,
- 250,230,6,82,106,106,106,281,149,121,
- 154,154,106,250,250,250,250,141,250,30,
+ 250,230,6,82,106,106,106,281,149,154,
+ 154,121,106,250,250,250,250,141,250,30,
54,24,141,143,63,137,63,60,68,154,
106,57,79,152,149,250,82,154,1,106,
149,149,106,96,82,11,118,158,118,158,
@@ -2242,47 +2251,48 @@ public class CPPNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
0,203,0,0,215,0,227,126,3,0,
126,0,0,0,0,0,227,126,3,216,
0,223,3,0,212,126,0,208,0,146,
- 0,176,166,127,0,10,0,0,0,214,
- 63,0,125,0,227,126,3,182,0,182,
- 0,2,0,0,126,0,0,0,0,0,
- 198,3,0,201,0,236,126,162,39,30,
- 0,178,127,59,62,0,196,128,0,128,
- 178,127,278,62,0,178,127,278,62,0,
- 178,127,69,123,59,0,236,126,162,59,
- 0,236,126,162,226,59,0,276,126,162,
- 123,305,56,0,276,126,162,305,56,0,
- 178,127,275,56,0,135,0,187,178,127,
- 275,243,0,136,0,178,127,275,243,0,
- 187,166,127,10,0,166,127,10,0,166,
- 127,0,93,136,0,268,126,145,0,268,
- 126,170,0,161,84,0,300,160,302,303,
- 3,81,0,126,171,0,302,303,3,81,
- 0,128,0,126,171,0,161,3,75,190,
- 80,0,126,128,0,190,80,0,108,2,
- 131,126,128,0,225,3,75,0,198,167,
- 0,33,169,0,167,0,175,33,169,0,
- 225,3,85,0,190,155,225,3,83,0,
- 62,171,0,225,3,83,0,126,171,62,
- 171,0,301,126,162,0,161,0,214,77,
- 0,30,171,0,161,106,158,0,30,169,
- 0,219,3,0,214,63,265,0,161,63,
- 0,179,3,297,66,127,0,126,0,0,
- 0,0,297,66,127,0,2,145,126,0,
- 0,0,0,179,3,46,0,147,0,125,
- 48,166,127,0,31,147,0,93,136,31,
- 147,0,220,178,127,0,146,31,147,0,
- 179,3,51,0,161,3,51,0,161,3,
- 68,179,55,42,0,179,55,42,0,20,
- 2,131,126,0,161,3,68,179,55,45,
- 0,179,55,45,0,161,3,68,179,55,
- 47,0,179,55,47,0,161,3,68,179,
- 55,43,0,179,55,43,0,219,3,125,
- 187,166,127,10,0,125,187,166,127,10,
- 0,136,2,0,126,0,219,3,124,258,
- 166,127,10,0,258,166,127,10,0,135,
- 2,0,126,0,219,3,135,0,219,3,
- 139,0,161,63,139,0,260,0,31,0,
- 31,139,0,165,0,134,0,161,3,0
+ 0,171,166,127,0,10,0,0,0,0,
+ 214,63,0,125,0,227,126,3,182,0,
+ 182,0,2,0,0,126,0,0,0,0,
+ 0,198,3,0,201,0,236,126,162,39,
+ 30,0,178,127,59,62,0,196,128,0,
+ 128,178,127,278,62,0,178,127,278,62,
+ 0,178,127,69,123,59,0,236,126,162,
+ 59,0,236,126,162,226,59,0,276,126,
+ 162,123,305,56,0,276,126,162,305,56,
+ 0,178,127,275,56,0,135,0,187,178,
+ 127,275,243,0,136,0,178,127,275,243,
+ 0,187,166,127,10,0,166,127,10,0,
+ 166,127,0,93,136,0,268,126,145,0,
+ 268,126,170,0,161,84,0,300,160,302,
+ 303,3,81,0,126,171,0,302,303,3,
+ 81,0,128,0,126,171,0,161,3,75,
+ 190,80,0,126,128,0,190,80,0,108,
+ 2,131,126,128,0,225,3,75,0,198,
+ 167,0,33,169,0,167,0,175,33,169,
+ 0,225,3,85,0,190,155,225,3,83,
+ 0,62,171,0,225,3,83,0,126,171,
+ 62,171,0,301,126,162,0,161,0,214,
+ 77,0,30,171,0,161,106,158,0,30,
+ 169,0,219,3,0,214,63,265,0,161,
+ 63,0,179,3,297,66,127,0,126,0,
+ 0,0,0,297,66,127,0,2,145,126,
+ 0,0,0,0,179,3,46,0,147,0,
+ 125,48,166,127,0,31,147,0,93,136,
+ 31,147,0,220,178,127,0,146,31,147,
+ 0,179,3,51,0,161,3,51,0,161,
+ 3,68,179,55,42,0,179,55,42,0,
+ 20,2,131,126,0,161,3,68,179,55,
+ 45,0,179,55,45,0,161,3,68,179,
+ 55,47,0,179,55,47,0,161,3,68,
+ 179,55,43,0,179,55,43,0,219,3,
+ 125,187,166,127,10,0,125,187,166,127,
+ 10,0,136,2,0,126,0,219,3,124,
+ 258,166,127,10,0,258,166,127,10,0,
+ 135,2,0,126,0,219,3,135,0,219,
+ 3,139,0,161,63,139,0,260,0,31,
+ 0,31,139,0,165,0,134,0,161,3,
+ 0
};
};
public final static char scopeRhs[] = ScopeRhs.scopeRhs;
@@ -2290,34 +2300,34 @@ public class CPPNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface ScopeState {
public final static char scopeState[] = {0,
- 4718,4850,4837,4590,0,2069,3731,1981,3441,0,
- 3672,3618,3561,3453,3399,3345,3291,3237,3183,2891,
- 2837,2672,0,1365,0,2060,1973,1972,0,2452,
- 921,0,3672,3618,3799,3316,3561,3453,3399,3345,
- 3291,3237,877,3183,2891,2837,3566,3518,0,4742,
- 3190,3728,0,3475,2843,0,1839,1833,0,4674,
- 4598,0,4503,4674,3945,2990,4598,2966,3528,4516,
- 2798,2387,3915,4470,2629,2552,2513,0,2444,999,
- 0,4621,4568,0,4621,4568,3935,4416,4406,3828,
- 4323,4313,4303,3818,0,4621,4568,3935,4416,4406,
- 3828,4323,4313,4303,3818,3672,3618,3561,3453,3399,
- 3345,3291,3237,3183,2891,2837,0,2540,793,0,
- 2387,4503,4583,3945,2990,3404,2629,3883,1123,722,
- 2842,2980,3023,3640,875,0,1850,1506,1457,879,
- 2990,2980,2966,2552,2513,2433,2503,0,667,579,
- 0,1008,0,4535,536,2981,0,4771,4736,4725,
- 4710,4706,4661,4584,3659,3594,3542,4843,3512,3386,
- 4808,4795,3967,3332,3928,3224,2547,2536,3003,2428,
- 0,3679,3569,4771,4736,4725,3018,2953,4710,2878,
- 4706,4661,4584,3659,3594,3548,3196,3103,3542,3094,
- 4843,3090,3007,2924,2458,3512,3386,871,4808,2467,
- 4795,2870,3483,3967,3332,3928,661,3224,2547,2536,
- 4535,626,2981,3003,2428,2277,2191,2103,735,807,
- 2966,3528,4516,2798,2387,4503,3915,4674,3945,2990,
- 4470,2629,2552,4598,2513,1275,941,667,579,4281,
- 2241,2291,2356,2324,2473,2400,594,3160,3134,2814,
- 2742,2715,2649,3795,3772,630,3747,2769,4259,4237,
- 4215,4193,4171,4149,4127,4105,4083,4052,4022,3107,
+ 3306,4886,3696,3542,0,2923,3294,2831,3097,0,
+ 3676,3619,3556,3454,3398,3342,3286,3230,3174,2882,
+ 2826,2999,0,1365,0,2061,2060,1972,0,2452,
+ 921,0,3676,3619,3578,3577,3556,3454,3398,3342,
+ 3286,3230,3442,3174,2882,2826,3519,3023,0,3308,
+ 2847,3252,0,3867,2843,0,3377,1839,0,4715,
+ 4692,0,4600,4715,4587,2981,4692,2957,3529,4613,
+ 4022,2387,3944,4568,2591,2552,2513,0,3236,787,
+ 0,3185,2837,0,3185,2837,3964,4481,4471,3857,
+ 4388,4378,4368,3847,0,3185,2837,3964,4481,4471,
+ 3857,4388,4378,4368,3847,3676,3619,3556,3454,3398,
+ 3342,3286,3230,3174,2882,2826,0,3424,2859,0,
+ 2387,4600,4878,4587,2981,4708,2591,3989,1123,727,
+ 4705,2581,994,3916,2852,0,1850,1758,1506,1457,
+ 2981,2581,2957,2552,2513,2433,2542,0,667,579,
+ 0,1008,0,4652,536,2972,0,4868,4864,4841,
+ 4818,4802,4791,4783,4745,4734,3957,4879,3612,3514,
+ 4637,4496,4100,2428,3660,3510,3431,3319,3597,2504,
+ 0,3852,3706,4868,4864,4841,3549,3366,4818,931,
+ 4802,4791,4783,4745,4734,2906,3204,2887,3957,2772,
+ 4879,2688,2668,2458,2438,3612,3514,871,4637,2467,
+ 4496,3012,2833,4100,2428,3660,661,3510,3431,3319,
+ 4652,626,2972,3597,2504,2277,2191,2103,735,807,
+ 2957,3529,4613,4022,2387,4600,3944,4715,4587,2981,
+ 4568,2591,2552,4692,2513,1275,941,667,579,4346,
+ 2241,2291,2356,2324,2473,2400,594,3151,3125,2803,
+ 2776,2721,2694,3824,3801,630,3776,3751,4324,4302,
+ 4280,4258,4236,4214,4192,4170,4148,4112,4051,3098,
1984,2203,2153,2115,2065,2027,1293,1232,1048,1189,
883,1934,1896,825,747,689,536,1853,1810,1767,
1724,1681,1638,1595,1552,1509,1466,1423,1380,1336,
@@ -2347,42 +2357,42 @@ public class CPPNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
148,147,147,150,149,149,153,152,154,161,
157,126,63,3,217,216,135,125,124,10,
127,68,68,68,68,187,258,253,256,253,
- 212,127,176,162,310,275,305,275,127,178,
+ 212,127,171,162,310,275,305,275,127,178,
166,253,205,3,298,167,151,260,187,127,
178,166,72,212,214,158,223,126,3,127,
- 166,3,3,3,3,125,124,70,166,6,
- 126,166,230,125,124,127,123,162,127,166,
- 48,179,126,126,4,220,5,48,227,228,
- 145,229,126,166,48,161,161,161,161,3,
- 3,176,126,309,127,168,224,59,48,204,
- 62,170,312,125,124,231,231,178,162,126,
- 178,187,155,262,265,63,180,4,123,125,
- 155,69,223,198,186,182,127,3,126,70,
- 227,187,219,219,6,184,166,162,226,55,
- 48,278,280,126,3,182,231,231,126,126,
- 187,126,276,123,277,126,3,63,161,4,
- 126,69,69,3,178,166,198,126,212,155,
- 125,126,187,126,162,68,55,127,74,126,
- 212,311,72,289,198,124,127,126,126,126,
- 72,276,69,70,262,219,214,221,126,126,
- 128,236,30,48,170,64,59,62,238,126,
- 126,178,126,281,72,70,72,69,166,212,
- 314,224,22,127,126,227,221,39,126,3,
- 123,59,236,295,48,10,40,128,281,162,
- 293,127,294,70,127,22,315,178,60,155,
- 126,126,162,268,247,279,39,69,127,70,
- 68,55,230,230,282,126,70,178,3,178,
- 127,127,3,126,126,3,69,70,155,127,
- 178,126,69,69,126,301,79,77,1,161,
- 8,85,83,81,80,75,82,84,78,76,
- 59,74,219,178,178,320,221,236,151,162,
- 251,178,226,295,283,118,8,72,214,72,
- 3,3,3,190,3,123,161,123,177,70,
- 126,126,162,226,68,3,72,225,167,225,
- 303,145,75,225,126,126,40,90,319,167,
- 155,198,155,302,126,3,155,283,308,230,
- 155,155,126,69,190,160,268,161,189,70,
- 69,121,300,155,189,8,155
+ 166,3,3,3,3,125,124,70,166,9,
+ 6,126,166,230,125,124,127,123,162,127,
+ 166,48,179,126,126,4,220,5,48,227,
+ 228,145,229,126,166,48,161,161,161,161,
+ 3,3,171,171,309,127,168,224,59,48,
+ 204,62,170,312,125,124,231,231,178,162,
+ 126,178,187,155,262,265,63,180,4,123,
+ 125,155,69,223,198,186,182,127,3,126,
+ 70,227,187,219,219,6,126,166,162,226,
+ 55,48,278,280,126,3,182,231,231,126,
+ 126,187,126,276,123,277,126,3,63,161,
+ 4,126,69,69,3,178,166,198,126,212,
+ 155,125,171,184,187,126,162,68,55,127,
+ 74,126,212,311,72,289,198,124,127,126,
+ 126,126,72,276,69,70,262,219,214,221,
+ 126,126,126,128,236,30,48,170,64,59,
+ 62,238,126,126,178,126,281,72,70,72,
+ 69,166,212,314,224,22,127,126,227,221,
+ 39,126,3,123,59,236,295,48,10,40,
+ 128,281,162,293,127,294,70,127,22,315,
+ 178,60,155,126,126,162,268,247,279,39,
+ 69,127,70,68,55,230,230,282,126,70,
+ 178,3,178,127,127,3,126,126,3,69,
+ 70,155,127,178,126,69,69,126,301,79,
+ 77,1,161,8,85,83,81,80,75,82,
+ 84,78,76,59,74,219,178,178,320,221,
+ 236,151,162,251,178,226,295,283,118,8,
+ 72,214,72,3,3,3,190,3,123,161,
+ 123,177,70,126,126,162,226,68,3,72,
+ 225,167,225,303,145,75,225,126,126,40,
+ 90,319,167,155,198,155,302,126,3,155,
+ 283,308,230,155,155,126,69,190,160,268,
+ 161,189,70,69,121,300,155,189,8,155
};
};
public final static char inSymb[] = InSymb.inSymb;
@@ -2657,20 +2667,20 @@ public class CPPNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public final int getMaxNameLength() { return MAX_NAME_LENGTH; }
public final static int
- NUM_STATES = 537,
+ NUM_STATES = 540,
NT_OFFSET = 122,
- LA_STATE_OFFSET = 5926,
+ LA_STATE_OFFSET = 5972,
MAX_LA = 2147483647,
NUM_RULES = 535,
NUM_NONTERMINALS = 202,
NUM_SYMBOLS = 324,
SEGMENT_SIZE = 8192,
- START_STATE = 3373,
+ START_STATE = 3025,
IDENTIFIER_SYMBOL = 0,
EOFT_SYMBOL = 120,
EOLT_SYMBOL = 120,
- ACCEPT_ACTION = 5026,
- ERROR_ACTION = 5391;
+ ACCEPT_ACTION = 5072,
+ ERROR_ACTION = 5437;
public final static boolean BACKTRACK = true;
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 56486ceaee6..c6b86841be8 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
@@ -17,20 +17,29 @@ import lpg.lpgjavaruntime.*;
import java.util.*;
import org.eclipse.cdt.core.dom.ast.*;
+import org.eclipse.cdt.core.dom.lrparser.CPreprocessorAdapter;
+import org.eclipse.cdt.core.dom.lrparser.IDOMTokenMap;
import org.eclipse.cdt.core.dom.lrparser.IParser;
-import org.eclipse.cdt.core.dom.lrparser.IParserActionTokenProvider;
+import org.eclipse.cdt.core.dom.lrparser.ITokenCollector;
import org.eclipse.cdt.core.dom.lrparser.lpgextensions.FixedBacktrackingParser;
import org.eclipse.cdt.core.dom.lrparser.action.ScopedStack;
+import org.eclipse.cdt.core.parser.IScanner;
+import org.eclipse.cdt.core.dom.parser.IBuiltinBindingsProvider;
+import org.eclipse.cdt.core.index.IIndex;
+import org.eclipse.cdt.core.dom.lrparser.action.ITokenStream;
import org.eclipse.cdt.core.dom.lrparser.action.ITokenMap;
import org.eclipse.cdt.core.dom.lrparser.action.TokenMap;
+import org.eclipse.cdt.core.dom.lrparser.ISecondaryParser;
import org.eclipse.cdt.core.dom.ast.cpp.*;
import org.eclipse.cdt.internal.core.dom.parser.cpp.CPPNodeFactory;
import org.eclipse.cdt.core.dom.lrparser.action.cpp.CPPBuildASTParserAction;
import org.eclipse.cdt.core.dom.lrparser.action.cpp.CPPSecondaryParserFactory;
-public class CPPNoFunctionDeclaratorParser extends PrsStream implements RuleAction , IParserActionTokenProvider, IParser< IASTDeclarator >
+public class CPPNoFunctionDeclaratorParser extends PrsStream implements RuleAction, ITokenStream,
+ ITokenCollector, IParser< IASTDeclarator >
+ , ISecondaryParser< IASTDeclarator >
{
private static ParseTable prs = new CPPNoFunctionDeclaratorParserprs();
private FixedBacktrackingParser btParser;
@@ -168,7 +177,11 @@ public class CPPNoFunctionDeclaratorParser extends PrsStream implements RuleActi
private CPPBuildASTParserAction action;
private IASTCompletionNode compNode;
-public CPPNoFunctionDeclaratorParser() { // constructor
+
+public CPPNoFunctionDeclaratorParser(IScanner scanner, IDOMTokenMap tokenMap, IBuiltinBindingsProvider builtinBindingsProvider, IIndex index, Set<IParser.Options> options) {
+ initActions(options);
+ action.initializeTranslationUnit(scanner, builtinBindingsProvider, index);
+ CPreprocessorAdapter.runCPreprocessor(scanner, this, tokenMap);
}
private void initActions(Set<IParser.Options> options) {
@@ -187,10 +200,9 @@ public void addToken(IToken token) {
}
-public IASTDeclarator parse(Set<IParser.Options> options) {
+public IASTDeclarator parse() {
// this has to be done, or... kaboom!
setStreamLength(getSize());
- initActions(options);
final int errorRepairCount = -1; // -1 means full error handling
parser(null, errorRepairCount); // do the actual parse
@@ -233,12 +245,12 @@ public void setTokens(List<IToken> tokens) {
addToken(new Token(null, 0, 0, CPPNoFunctionDeclaratorParsersym.TK_EOF_TOKEN));
}
-public CPPNoFunctionDeclaratorParser(IParserActionTokenProvider parser) { // constructor
+public CPPNoFunctionDeclaratorParser(ITokenStream parser, Set<IParser.Options> options) { // constructor for creating secondary parser
+ initActions(options);
tokenMap = new TokenMap(CPPNoFunctionDeclaratorParsersym.orderedTerminalSymbols, parser.getOrderedTerminalSymbols());
}
-
public void ruleAction(int ruleNumber)
{
switch (ruleNumber)
@@ -1415,19 +1427,19 @@ public CPPNoFunctionDeclaratorParser(IParserActionTokenProvider parser) { // co
}
//
- // Rule 326: ptr_operator ::= pointer_hook * <openscope-ast> cv_qualifier_seq_opt
+ // Rule 326: ptr_operator ::= pointer_hook * pointer_hook <openscope-ast> cv_qualifier_seq_opt
//
case 326: { action. consumePointer(); break;
}
//
- // Rule 327: ptr_operator ::= pointer_hook &
+ // Rule 327: ptr_operator ::= pointer_hook & pointer_hook
//
case 327: { action. consumeReferenceOperator(); break;
}
//
- // Rule 328: ptr_operator ::= dcolon_opt nested_name_specifier pointer_hook * <openscope-ast> cv_qualifier_seq_opt
+ // Rule 328: ptr_operator ::= dcolon_opt nested_name_specifier pointer_hook * pointer_hook <openscope-ast> cv_qualifier_seq_opt
//
case 328: { action. consumePointerToMember(); break;
}
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPNoFunctionDeclaratorParserprs.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPNoFunctionDeclaratorParserprs.java
index e43bad0f389..0fe02108885 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPNoFunctionDeclaratorParserprs.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPNoFunctionDeclaratorParserprs.java
@@ -69,7 +69,7 @@ public class CPPNoFunctionDeclaratorParserprs implements lpg.lpgjavaruntime.Pars
1,3,1,1,1,6,5,7,6,1,
0,6,5,6,4,1,3,1,0,1,
2,1,1,3,1,3,1,1,1,3,
- 9,2,2,3,2,4,2,6,0,1,
+ 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,
@@ -90,445 +90,444 @@ public class CPPNoFunctionDeclaratorParserprs implements lpg.lpgjavaruntime.Pars
3,1,1,2,4,2,4,7,9,5,
1,3,1,0,1,1,2,4,4,1,
2,5,5,3,3,1,4,3,1,0,
- 1,3,1,1,1,-109,0,0,0,-13,
+ 1,3,1,1,1,-110,0,0,0,-13,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-2,0,0,
- 0,0,0,0,0,-7,0,-222,0,0,
- 0,0,0,-87,0,0,0,0,0,-115,
+ 0,0,0,0,0,0,0,-276,0,0,
+ 0,0,0,0,0,-2,0,-7,0,0,
+ 0,0,0,-88,0,0,0,0,0,-116,
0,0,0,-8,0,0,0,0,0,0,
- 0,0,-132,0,0,0,0,0,0,0,
+ 0,0,-133,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-10,0,0,0,-130,0,
+ 0,0,0,0,-10,0,0,0,-131,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,-14,
- -19,-287,0,0,0,-116,0,0,0,-3,
+ -11,0,0,0,0,0,0,0,0,-471,
+ 0,-289,0,0,0,-117,0,0,0,-3,
+ 0,0,0,0,0,0,0,0,-73,0,
+ -338,0,0,0,0,0,0,-76,0,0,
0,0,0,0,0,0,0,0,0,0,
- -111,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,
- 0,0,0,0,0,0,0,0,0,-151,
- 0,-291,0,0,0,0,0,-23,0,0,
- -92,0,0,-4,0,-157,-35,-401,0,-25,
- 0,0,0,-76,0,0,0,0,0,0,
+ 0,-19,0,0,0,0,-158,0,0,0,
+ -27,0,0,-4,-293,-93,-416,-23,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,0,0,-21,0,0,0,0,0,0,
+ 0,-25,0,0,0,0,0,-20,0,-28,
+ -188,0,0,0,0,0,0,0,0,0,
+ -29,0,0,0,-538,0,0,0,-223,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-21,0,0,0,0,0,0,0,
- -238,0,0,0,0,0,0,-177,0,-231,
- 0,0,-182,0,-535,0,0,0,-423,0,
- 0,0,0,0,0,0,0,0,0,-223,
- 0,0,0,-91,0,0,0,0,0,0,
+ 0,-389,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,-14,0,0,0,0,
+ 0,0,-78,0,0,0,-22,0,0,-181,
+ 0,0,0,0,0,0,0,0,0,-220,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-77,
- -187,0,0,0,0,0,0,0,0,-219,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-191,
+ 0,0,0,0,0,0,0,-459,0,0,
+ 0,0,0,-26,0,-222,0,0,0,0,
+ 0,0,0,-30,0,-475,0,0,-194,0,
+ 0,0,-152,0,0,0,0,0,0,0,
+ 0,0,-90,0,0,0,0,-37,0,-171,
+ 0,0,0,-112,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-190,
- 0,-27,0,0,0,0,0,-229,0,0,
- 0,0,0,0,0,-221,0,0,0,0,
- 0,0,0,0,0,0,0,0,-193,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-161,0,0,0,-28,0,-20,0,-170,
- 0,0,0,-29,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-361,0,0,
+ 0,0,-277,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-33,0,0,0,0,0,
+ 0,0,0,0,0,0,-83,0,0,0,
+ -162,0,0,0,0,-46,-351,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-290,-483,0,
- 0,0,-275,0,0,0,-525,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,-30,0,-33,0,-82,0,0,0,
- -34,-22,0,0,0,0,-348,0,0,0,
- -41,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-35,0,0,0,
+ 0,0,0,0,-34,0,0,0,-239,0,
+ 0,-16,0,0,0,-224,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-31,0,0,0,
- 0,0,0,0,-42,0,0,0,-272,0,
- 0,-16,0,0,0,-265,0,0,0,0,
+ 0,0,0,-41,0,0,0,0,0,0,
+ 0,0,0,-476,0,-426,0,0,0,0,
+ 0,0,0,0,-274,0,0,0,0,-183,
+ 0,-38,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-473,0,-447,0,0,0,0,
- 0,0,0,0,-358,0,0,0,-43,0,
- -40,-38,0,0,0,0,0,0,0,0,
+ 0,-31,0,-264,0,0,0,0,0,0,
+ -42,-43,0,0,-138,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-39,0,-262,0,0,0,0,0,0,
- 0,-380,0,0,-137,0,0,0,0,0,
+ 0,0,0,0,0,0,-44,0,0,0,
+ -325,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,-267,0,0,0,0,0,0,0,
+ 0,0,-74,0,-450,0,0,0,-45,0,
+ -268,0,0,-365,0,0,0,-353,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-257,0,-44,0,0,0,
- -322,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,-266,0,0,0,0,0,0,0,
- 0,0,0,0,-512,0,0,0,0,0,
- -45,0,0,-362,0,0,0,-47,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-248,0,-59,0,0,0,0,
- 0,-468,0,-60,0,0,-363,0,0,0,
- -350,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-61,0,
- -46,0,0,0,-62,0,0,0,0,-36,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-249,0,-75,0,0,0,0,
+ 0,0,-47,-59,0,0,-366,0,0,0,
+ -60,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,-64,0,-74,0,0,0,0,0,0,
- -26,-160,-70,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-39,0,-61,0,
+ 0,0,0,0,0,-62,0,0,0,-36,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-65,0,0,0,0,0,
- 0,0,0,0,-66,0,-37,0,0,0,
- -67,0,0,0,0,-80,-138,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-68,0,-274,0,
- 0,0,0,0,-89,0,-69,0,0,-139,
- 0,0,0,-71,0,0,0,0,0,0,
+ 0,-63,0,-99,0,0,0,0,0,0,
+ -107,-161,-70,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-95,
- 0,-313,0,-90,0,0,0,-94,-472,0,
- 0,0,-140,0,0,0,-96,0,0,0,
+ 0,0,0,0,-64,0,0,0,0,0,
+ 0,0,0,0,-65,0,-404,0,0,0,
+ 0,0,0,0,0,-515,-139,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-114,0,0,0,0,0,
- 0,0,-152,0,-154,0,0,0,0,0,
- -155,-156,-165,0,0,-141,0,0,0,-166,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-167,0,0,
- 0,0,0,0,0,0,0,-173,0,0,
- 0,0,0,-174,-175,-176,0,0,-142,0,
- 0,0,-184,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-218,0,
+ 0,0,0,0,-91,-383,-66,0,0,-140,
+ 0,0,0,-67,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-98,0,
- -185,0,0,0,0,0,-186,-198,-199,0,
- 0,-143,0,0,0,-200,0,0,0,0,
+ 0,-68,0,0,0,0,0,0,0,-69,
+ 0,-316,0,-95,0,0,0,0,-71,-96,
+ 0,0,-141,0,0,0,-97,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-115,0,0,0,0,0,
+ 0,0,-153,0,-155,0,0,0,0,0,
+ 0,-156,-157,0,0,-142,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-158,0,-201,0,0,0,0,0,-189,
- -202,-203,0,0,-144,0,0,0,-204,0,
+ 0,0,0,0,0,0,0,-166,0,0,
+ 0,0,0,0,0,0,0,-167,0,-154,
+ 0,0,0,0,-168,-174,0,0,-143,0,
+ 0,0,-175,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-205,0,0,0,
- 0,0,0,0,-206,0,-207,0,-162,0,
- 0,0,-197,0,-208,0,0,-145,0,0,
- 0,-209,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,-211,0,-212,
- 0,0,0,0,0,-213,-214,-215,0,0,
- -146,0,0,0,-216,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-159,0,
+ -176,0,0,0,0,0,-190,-177,-185,0,
+ 0,-144,0,0,0,-186,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-224,0,0,0,0,0,0,0,
- -233,0,-234,0,0,0,0,0,-235,-236,
- -258,0,0,-147,0,0,0,-260,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-261,0,0,0,0,
- 0,0,0,-217,0,-280,0,0,0,0,
- 0,-281,-283,-285,0,0,-148,0,0,0,
- -292,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-298,0,
- 0,0,0,0,0,0,-227,0,-299,0,
- 0,0,0,0,-303,-311,-312,0,0,-169,
- 0,0,0,-314,0,0,0,0,0,0,
+ 0,-187,0,-199,0,-163,0,0,0,-198,
+ 0,-200,0,0,-145,0,0,0,-201,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-323,0,0,0,0,0,0,0,-242,
- 0,-324,0,0,0,0,0,-332,-336,-345,
- 0,0,-253,0,0,0,-337,0,0,0,
+ 0,0,0,0,0,0,-202,0,0,0,
+ 0,0,0,0,-203,0,-204,0,0,0,
+ 0,0,-205,-206,-207,0,0,-146,0,0,
+ 0,-208,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-209,
+ 0,0,0,0,0,0,0,-210,0,-211,
+ 0,0,0,0,0,-212,-213,-214,0,0,
+ -147,0,0,0,-215,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-349,0,0,0,0,0,
- 0,0,-247,0,-351,0,0,0,0,0,
- -367,-375,-378,0,0,-530,0,0,0,-392,
+ 0,0,-216,0,0,0,0,0,0,0,
+ -228,0,-217,0,0,0,0,0,-225,-234,
+ -235,0,0,-148,0,0,0,-236,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-403,0,0,
- 0,0,0,0,0,-267,0,-404,0,0,
- 0,0,0,-407,-408,-183,0,0,-357,0,
- 0,0,-112,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-237,0,0,0,0,
+ 0,0,0,-243,0,-260,0,0,0,0,
+ 0,-262,-263,-282,0,0,-149,0,0,0,
+ -283,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-285,0,
+ 0,0,0,0,0,0,-248,0,-287,0,
+ 0,0,0,0,-294,-301,-302,0,0,-170,
+ 0,0,0,-306,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -414,0,0,0,0,0,0,0,-15,0,
- -416,0,0,0,0,0,-370,0,0,0,
- -428,0,0,0,0,0,0,0,0,0,
+ 0,-314,0,0,0,0,0,0,0,-255,
+ 0,-315,0,0,0,0,0,-317,-259,-348,
+ 0,0,-254,0,0,0,-326,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,-335,0,-339,0,0,0,0,0,
+ -340,-352,-354,0,0,-533,0,0,0,-370,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-6,0,0,0,0,-456,
- 0,0,0,0,0,-389,0,0,0,0,
+ 0,0,0,0,0,0,0,-378,0,0,
+ 0,0,0,0,0,-269,0,-381,0,0,
+ 0,0,0,-395,-406,-407,0,0,-360,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,-435,0,0,
- 0,0,0,0,0,-191,0,-226,0,0,
- 0,0,0,-390,0,0,0,0,0,0,
+ -410,0,0,0,0,0,0,0,-15,0,
+ -40,0,0,0,0,0,-373,0,0,0,
+ -486,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-436,0,-446,0,0,0,0,
- 0,-93,0,0,0,-458,-97,0,0,0,
- 0,0,-459,0,0,0,0,0,0,0,
+ 0,0,0,0,-6,0,0,0,0,-514,
+ 0,0,0,0,0,-392,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-411,0,0,
+ 0,0,0,0,0,-192,0,-81,0,0,
+ 0,0,0,-393,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-268,0,-297,0,0,0,0,0,
- -150,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,0,0,
+ 0,-94,0,0,0,-419,-98,0,0,0,
+ 0,0,-462,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-460,0,0,0,-195,0,0,0,
- -462,0,0,0,0,0,0,0,0,-135,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,-270,0,-227,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,-84,0,0,0,0,0,0,0,-244,
- 0,-136,0,0,0,-463,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-335,0,0,0,0,0,0,
- 0,-133,0,0,0,-464,0,0,0,0,
+ 0,0,-85,0,0,0,-196,0,0,0,
+ -431,0,0,0,0,0,0,0,0,-136,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-465,0,0,0,0,0,-134,
0,0,0,0,0,0,0,0,0,0,
+ 0,-108,0,0,0,0,0,0,0,-245,
+ 0,-137,0,0,0,-375,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-79,0,0,0,0,0,-402,0,0,
0,0,0,0,0,0,0,0,0,0,
- -126,0,0,0,-467,0,0,0,0,0,
+ 0,-134,0,0,0,-292,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-232,0,0,0,0,-17,0,0,
- 0,-482,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-484,0,-106,0,
- 0,-107,-422,0,0,0,-338,0,0,0,
- -255,0,0,0,0,0,0,0,0,0,
- -230,0,0,0,0,-485,0,-387,0,0,
+ 0,0,0,-438,0,0,0,0,0,-135,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-127,0,0,0,-487,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-492,0,0,0,
- 0,-384,0,0,0,-496,0,0,0,0,
- 0,0,0,-237,0,0,0,-368,-501,-128,
+ 0,-80,0,0,0,0,0,-405,0,0,
0,0,0,0,0,0,0,0,0,0,
+ -127,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-385,0,0,0,0,-129,0,0,0,
- -331,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-509,0,
- 0,0,0,-284,0,0,0,0,0,0,
- 0,0,0,0,0,0,-259,0,0,-300,
- -269,0,0,-398,0,-302,0,0,0,0,
- 0,0,0,0,0,0,0,0,-440,0,
- 0,0,-347,-325,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-231,0,0,
+ 0,-341,0,0,0,0,0,0,0,0,
+ 0,0,0,-172,0,0,-303,0,-173,0,
+ 0,0,-425,0,0,0,-387,0,0,0,
+ -253,0,0,0,0,0,0,0,0,0,
+ -230,0,0,-337,0,0,0,0,0,-439,
+ 0,-449,-18,0,0,0,0,-49,0,0,
+ 0,0,0,0,-128,0,0,0,-461,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-439,0,0,0,0,0,-12,0,
- 0,0,0,-519,-511,0,-171,0,0,0,
- 0,-78,0,0,0,0,0,0,0,0,
- -159,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-371,0,0,-526,0,-438,
- -239,0,0,0,0,0,-400,0,0,0,
- 0,-270,-286,0,0,0,0,0,-9,-531,
0,0,0,0,0,0,0,0,0,0,
- 0,-296,0,0,0,0,-394,0,0,0,
- 0,-273,0,0,0,0,0,0,0,0,
+ 0,0,0,-463,0,0,0,-371,-374,-465,
+ 0,0,0,0,0,-238,0,0,0,-129,
0,0,0,0,0,0,0,0,0,0,
- 0,-457,0,0,0,0,0,0,0,0,
- 0,0,0,-105,-172,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,0,-252,-310,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-178,-81,0,0,-83,
- -527,-131,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-373,0,0,0,0,-393,0,
- 0,0,0,0,-18,0,0,0,0,0,
- 0,0,0,-263,0,0,0,0,0,0,
+ 0,-388,0,0,0,0,-130,0,0,0,
+ -397,0,0,0,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,-452,
- 0,0,0,0,0,-301,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-108,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,-486,-372,0,-304,0,-432,-391,0,
- -413,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-251,0,0,0,0,
- 0,-306,0,-334,-168,0,0,0,0,-307,
- 0,0,0,-327,0,-271,0,0,0,0,
- 0,0,0,0,0,0,-488,-383,0,0,
- 0,0,0,0,0,0,-295,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- -353,0,0,0,0,-85,0,0,-117,0,
- 0,0,0,0,0,0,0,0,0,-309,
- 0,-356,0,0,0,0,0,0,0,0,
- -503,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,-453,0,0,0,0,-180,0,0,0,
- 0,0,0,0,0,-386,0,0,0,0,
- 0,0,0,0,0,-192,0,0,0,0,
- 0,0,0,0,-518,-354,0,0,0,0,
- 0,0,0,0,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,0,
- 0,0,0,0,0,-100,-379,0,0,0,
- 0,0,0,0,0,0,0,0,-520,-196,
- 0,0,0,0,-305,0,-374,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,-32,0,0,0,0,0,0,0,0,
- 0,0,0,0,-405,0,0,0,0,0,
- 0,-240,0,0,0,0,0,0,0,0,
- 0,0,-524,0,0,0,0,0,0,-443,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-164,0,0,0,0,
- -249,-355,0,-319,0,0,0,0,0,0,
- 0,0,0,0,-288,0,0,0,0,0,
- 0,0,0,0,0,0,-321,-406,0,0,
- 0,-181,0,0,-479,0,0,0,0,0,
- 0,0,0,0,0,0,-529,0,0,0,
- 0,0,0,0,0,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,-282,0,0,-72,0,0,0,-476,0,
- 0,0,0,0,0,-477,0,0,0,0,
- 0,-330,0,0,0,0,0,-320,0,0,
- -502,0,-536,0,0,-289,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- -420,0,0,-528,0,0,0,0,0,0,
- 0,0,0,0,-340,-101,0,0,0,0,
- 0,0,0,-102,-315,0,-411,0,0,0,
- 0,0,0,0,0,0,-539,0,0,0,
- 0,-427,-469,0,-342,0,0,0,0,0,
- 0,0,0,0,0,0,0,-421,0,0,
- 0,-118,0,0,0,0,0,-344,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-293,0,0,0,-480,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,0,0,0,0,-365,0,0,0,0,
- 0,0,0,0,0,0,0,0,-316,-522,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,-1,0,0,0,0,0,0,0,
- 0,0,0,0,0,-149,0,0,-532,0,
- 0,-352,0,-276,-317,0,-318,0,0,0,
- 0,-430,0,0,-328,0,0,0,0,-153,
- 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,-359,-50,0,0,0,0,0,0,0,
+ 0,0,0,-286,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-530,-288,-101,-505,
+ 0,0,0,0,0,-305,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-272,0,
+ 0,0,0,-328,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-179,-182,-193,
+ 0,0,0,0,0,0,0,-467,-105,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ -79,0,0,0,-197,0,-334,0,0,0,
+ 0,0,-468,0,-470,0,0,0,0,0,
+ 0,0,0,0,-106,0,0,0,0,-441,
+ -485,0,0,0,0,-299,0,0,0,0,
+ -271,0,0,-242,0,0,0,0,0,-415,
+ 0,0,-233,0,0,0,0,0,0,0,
+ 0,0,-232,0,-298,0,-487,0,0,0,
+ 0,0,0,0,-257,0,0,0,0,0,
+ 0,0,0,0,-488,0,0,0,0,0,
+ -184,-460,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-401,-490,0,-495,
+ 0,0,0,0,-24,0,0,0,0,0,
+ 0,0,-275,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,-300,-499,-504,0,0,0,0,
+ 0,0,0,0,0,0,-82,0,-512,-84,
+ -531,-132,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-250,0,0,
+ 0,0,0,-403,-160,0,0,0,0,0,
+ 0,0,-522,-265,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-469,0,
+ 0,-529,0,0,0,0,0,0,0,-290,
+ 0,0,0,0,-178,-284,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-86,
+ 0,0,0,0,0,0,0,0,0,-109,
+ 0,0,-291,0,0,0,0,0,0,0,
+ 0,0,0,-489,0,0,-309,0,-295,0,
+ 0,0,-534,0,0,0,0,0,0,0,
+ 0,0,-494,-304,0,0,0,0,0,-443,
+ 0,0,0,0,0,-12,0,0,0,-350,
+ 0,0,0,0,0,-261,0,0,-376,0,
+ 0,0,0,0,0,0,0,0,-491,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,-318,0,0,0,0,0,0,0,
+ -252,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-506,0,0,-119,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-313,0,0,-169,0,0,0,
+ -367,0,-329,0,0,0,0,0,0,0,
+ 0,0,0,0,-386,0,-273,0,0,0,
+ 0,0,0,0,0,0,0,0,-521,0,
+ 0,-118,0,-307,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-312,0,0,
+ 0,0,-446,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-32,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-523,0,0,0,0,-308,0,
+ 0,0,0,0,-319,0,0,0,0,0,
+ 0,0,-510,0,0,0,0,0,0,0,
+ -324,-320,-321,0,0,-72,0,0,0,0,
+ -396,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-527,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-394,0,0,
+ 0,0,0,-535,-528,-310,0,0,0,0,
+ 0,0,0,0,0,-358,0,0,0,0,
+ 0,-412,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-165,0,0,0,0,
+ 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,-122,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ -472,-331,-362,0,0,-359,-164,0,0,0,
+ 0,0,-219,-539,0,0,0,0,0,0,
+ 0,-413,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-89,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-542,0,
+ 0,0,0,0,-296,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-408,0,0,
+ 0,0,0,0,-479,0,0,0,0,0,
+ -480,0,0,0,0,-377,0,0,0,-356,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-390,0,0,0,0,
+ 0,0,-363,0,0,0,0,0,0,0,
+ 0,0,-123,0,0,0,0,0,0,0,
+ 0,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,-525,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-1,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-150,-333,-9,
+ -278,0,0,0,0,-402,0,-311,0,0,
+ 0,0,0,0,0,0,-420,0,-409,0,
+ 0,0,-332,0,0,0,0,0,0,0,
+ 0,-330,0,0,0,0,0,0,-423,0,
+ -357,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-50,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-343,
+ -382,0,0,0,0,0,0,0,0,0,
+ 0,-124,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-294,0,0,0,
- 0,-369,0,0,-254,0,0,0,0,-123,
+ 0,0,0,-432,0,-477,0,-442,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,-189,0,
+ 0,0,0,0,-126,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-450,0,0,0,0,0,0,
- 0,-124,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-342,0,0,0,
+ 0,-279,0,0,-256,0,-385,-455,0,0,
+ 0,0,0,0,-424,0,-451,0,0,0,
+ 0,-322,-483,0,0,0,-345,0,0,-433,
+ 0,0,-347,-102,0,-355,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,0,0,-461,0,0,-88,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,-339,0,0,0,0,-360,
- 0,0,0,0,-382,-409,0,0,0,0,
- 0,-470,0,-103,-448,-361,0,0,0,-308,
- 0,0,0,0,0,0,0,-329,0,0,
- 0,0,0,-366,-396,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-399,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-417,0,0,0,
- 0,0,0,0,0,0,-424,0,0,0,
- 0,0,-426,0,-434,-437,0,-441,0,0,
- 0,0,0,0,0,0,0,-442,0,-497,
- 0,0,0,0,-498,-508,0,-429,0,0,
- 0,0,0,-51,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,-399,0,0,0,0,-427,0,0,0,
+ 0,0,0,-414,0,0,-429,-437,0,-440,
+ 0,0,0,0,0,-51,0,0,0,-482,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-53,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,0,0,-54,
+ 0,0,0,0,0,0,0,0,0,-53,
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,-54,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,0,
+ 0,0,0,-55,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,-56,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-58,0,0,
+ 0,0,0,0,0,0,0,-57,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-110,
+ 0,0,0,0,0,0,0,0,0,-58,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-119,0,0,0,0,0,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,-120,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,-121,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-245,0,0,
+ 0,0,0,0,0,0,0,-180,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-388,
+ 0,0,0,0,0,0,0,0,0,-246,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-449,0,0,0,0,0,0,0,
- 0,0,0,0,0,-471,0,0,-277,-278,
- -341,-418,0,0,0,0,0,-517,-397,-474,
- -499,0,-246,-376,-241,0,0,0,0,0,
- -481,0,0,-410,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,-391,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-452,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-280,0,-445,
+ -281,0,-344,0,0,-336,0,-500,-501,0,
+ -323,0,0,-430,0,-379,-517,0,0,0,
+ 0,-421,-453,0,0,-502,0,0,0,0,
+ 0,0,-464,0,0,0,0,0,-473,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,-474,0,0,0,0,0,
+ 0,-195,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,-384,0,0,
+ 0,0,0,-509,0,0,0,-428,-484,-435,
+ 0,0,0,0,0,0,0,-436,-364,0,
+ -513,0,0,-511,-497,0,0,0,-498,0,
+ 0,0,0,0,-503,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -494,-279,-412,-495,0,0,0,0,0,0,
- 0,0,-504,0,0,0,0,0,0,0,
- 0,0,0,0,0,-381,0,0,0,0,
- -500,0,0,0,0,-425,0,0,0,0,
- 0,0,0,0,0,-433,0,0,0,0,
- -333,0,0,0,0,0,0,0,0,0,
- -514,0,0,0,0,0,0,0,0,-521,
- 0,0,0,0,0,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,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-538,0,0,
- 0,-5,0,0,0,0,0,0,0,0,
- 0,0,0,0,-506,-86,0,0,0,-220,
- 0,-510,-515,0,0,-478,-454,0,0,0,
- 0,0,0,0,0,0,-516,0,0,-491,
- 0,0,-534,0,-475,0,0,0,0,0,
+ 0,0,0,-5,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-17,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,-518,-519,-240,-87,0,0,0,0,0,
+ 0,0,0,-349,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-524,-537,-526,0,
+ 0,0,0,0,0,0,0,0,0,-221,
+ -540,-536,-541,0,0,0,0,0,0,-520,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-537,
- 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,0,0,-364,
- 0,0,0,0,0,0,-346,0,0,0,
- 0,0,0,0,0,0,0,0,0,-523,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-505,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,-508,0,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,-266,0,0,0,0,0,0,0,
+ 0,-380,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -188,0,0,0,-194,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,-229,0,0,0,0,0,0,-346,0,
+ 0,0,0,-398,0,0,0,0,0,0,
+ 0,-103,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-418,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,0,0,0,0,0,
+ 0,0,-422,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-456,0,0,
+ 0,0,0,-434,0,0,0,0,-447,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-228,0,0,0,-343,
+ -448,0,0,0,0,0,0,-454,0,0,
+ 0,0,0,0,-478,0,0,0,0,0,
+ 0,0,0,0,-48,-372,0,0,0,0,
+ 0,0,0,0,0,-100,0,0,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,-395,0,0,0,
- 0,-415,0,0,0,0,0,-507,0,0,
- 0,0,0,0,-419,0,0,0,0,0,
- 0,0,0,0,0,-431,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-455,0,0,0,0,0,0,
+ 0,0,-444,0,0,0,0,0,0,0,
+ 0,-244,0,0,0,-481,0,0,-492,0,
+ 0,0,0,0,-251,0,0,0,-258,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-444,0,0,0,0,0,0,0,0,
- 0,0,0,0,-445,0,0,0,-451,0,
- 0,0,0,0,0,-48,0,0,0,0,
- 0,-49,0,0,0,0,0,-99,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,-493,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-496,0,0,0,0,
+ 0,0,0,0,0,0,0,-104,0,-247,
+ 0,0,0,0,-457,-458,-516,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-113,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-104,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-163,
- 0,0,0,-243,0,0,0,0,-513,0,
- 0,0,0,0,-250,0,0,0,0,0,
- 0,0,-489,0,0,0,0,0,0,0,
- 0,0,-490,0,0,0,0,0,-256,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-493,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
@@ -538,7 +537,7 @@ public class CPPNoFunctionDeclaratorParserprs implements lpg.lpgjavaruntime.Pars
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,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;
@@ -569,18 +568,18 @@ public class CPPNoFunctionDeclaratorParserprs implements lpg.lpgjavaruntime.Pars
65,56,56,179,179,69,69,69,102,102,
180,180,70,70,70,181,181,71,71,71,
71,71,72,72,83,83,83,83,83,83,
- 83,83,49,49,49,49,49,118,118,116,
- 116,50,182,22,22,22,22,22,48,48,
+ 83,83,50,50,50,50,50,118,118,116,
+ 116,51,182,22,22,22,22,22,48,48,
86,86,86,86,86,151,151,146,146,146,
146,146,147,147,147,148,148,148,149,149,
149,150,150,150,87,87,87,87,87,88,
88,88,13,13,13,13,13,13,13,13,
13,13,13,97,122,122,122,122,122,122,
120,120,120,152,121,121,183,154,154,153,
- 153,124,124,103,78,78,79,80,52,47,
- 155,155,53,51,85,85,156,156,145,145,
+ 153,124,124,103,78,78,79,80,53,47,
+ 155,155,54,52,85,85,156,156,145,145,
105,105,106,74,74,157,157,62,62,57,
- 57,158,63,63,75,75,60,60,60,54,
+ 57,158,63,63,75,75,60,60,60,49,
89,89,99,98,98,61,61,58,58,55,
55,45,100,100,100,92,92,92,93,93,
94,94,94,95,95,107,107,107,109,109,
@@ -601,492 +600,490 @@ public class CPPNoFunctionDeclaratorParserprs implements lpg.lpgjavaruntime.Pars
173,173,131,131,132,132,132,132,132,132,
3,133,133,130,130,114,114,84,77,73,
161,161,115,115,197,197,197,134,134,125,
- 125,198,198,174,174,104,1119,35,1647,1641,
- 1179,4611,27,30,31,584,566,26,28,1613,
- 25,23,50,1296,106,76,77,108,1234,1304,
- 1345,1339,1382,1372,1425,1415,1167,1467,142,1431,
- 273,1477,1484,143,327,35,279,158,144,4860,
- 1600,35,651,32,2077,4615,27,30,31,584,
- 566,57,28,3023,35,651,32,232,4792,27,
- 30,31,584,566,26,28,1268,25,23,50,
- 1296,106,76,77,108,322,1304,1345,1339,1382,
- 1372,1742,235,230,231,502,1033,964,34,3023,
- 35,651,32,274,4792,27,30,31,584,566,
- 26,28,1268,25,23,50,1296,106,76,77,
- 108,2164,1304,1345,1727,242,245,248,251,1037,
- 1446,924,2377,35,277,1436,2035,35,651,32,
- 1322,4615,27,30,31,584,566,56,28,2026,
- 1527,1525,2702,2412,2867,2870,3066,4436,2250,35,
- 651,32,2815,4792,27,30,31,584,566,26,
- 28,1268,25,23,50,1296,106,76,77,108,
- 341,1304,1345,1339,1382,1372,1425,1415,61,1467,
- 2242,1431,1347,1477,1484,143,3798,2905,1517,515,
- 144,1993,870,2970,1347,323,1867,1859,2053,2905,
- 1010,2905,4326,516,2250,35,651,32,2815,4792,
- 27,30,31,584,566,26,28,1268,25,23,
- 50,1296,106,76,77,108,341,1304,1345,1339,
- 1382,1372,1425,1415,1553,1467,661,1431,3873,1477,
- 1484,143,3014,56,2202,515,144,688,661,2970,
- 661,502,35,1862,330,3015,331,791,2080,516,
- 2305,2202,511,2217,60,2122,35,651,32,2237,
- 4875,27,30,31,584,566,26,28,1555,509,
- 2223,1561,496,2458,2250,35,651,32,2815,4792,
- 27,30,31,584,566,26,28,1268,25,23,
- 50,1296,106,76,77,108,341,1304,1345,1339,
- 1382,1372,1425,1415,311,1467,910,1431,511,1477,
- 1484,143,2564,94,3015,515,144,42,1588,2970,
- 1347,327,35,279,1562,2905,4864,1561,351,516,
- 2594,35,651,32,2815,4792,27,30,31,584,
- 566,26,28,1268,25,23,50,1296,106,76,
- 77,108,341,1304,1345,1339,1382,1372,1425,1415,
- 2344,1467,1725,1431,2815,1477,1484,143,2224,35,
- 277,515,144,441,661,2970,502,35,1243,1096,
- 330,2243,341,791,354,516,44,1588,511,1956,
- 35,651,32,529,4875,27,30,31,584,566,
- 59,28,2207,2158,1570,1294,1903,1561,1355,736,
- 2526,35,651,32,2467,4792,27,30,31,584,
- 566,26,28,1268,25,23,50,1296,106,76,
- 77,108,2772,1304,1345,1339,1382,1372,1425,1415,
- 320,1467,1897,1431,512,1477,1484,143,2383,2583,
- 1172,377,144,2319,35,651,32,2700,4792,27,
- 30,31,584,566,26,28,1268,25,23,50,
- 1296,106,76,77,108,135,1304,1345,1339,1382,
- 1372,1425,1415,1324,1467,69,1431,1335,1477,1484,
- 143,2493,56,1172,377,144,744,3023,35,651,
- 32,71,4792,27,30,31,584,566,26,28,
- 1268,25,23,50,1296,106,76,77,108,1512,
- 1304,1345,1339,1382,1372,1425,1415,56,1467,1553,
- 1431,824,1477,1510,164,2499,1983,383,1141,502,
- 35,282,2391,35,651,32,142,4792,27,30,
- 31,584,566,26,28,1268,25,23,50,1296,
- 106,76,77,108,521,1304,1345,1339,1382,1372,
- 1425,1415,521,1467,1618,1431,2237,1477,1484,143,
- 384,1141,1172,377,144,502,1906,2601,421,2617,
- 1948,1618,2788,35,651,32,2453,4792,27,30,
- 31,584,566,26,28,1268,25,23,50,1296,
- 106,76,77,108,2991,1304,1345,1339,1382,1372,
- 1425,1415,56,1467,236,1431,2207,1477,1484,143,
- 3890,1639,1713,158,144,3023,35,651,32,1392,
- 4792,27,30,31,584,566,26,28,1268,25,
- 23,50,1296,106,76,77,108,2986,1304,1345,
- 1339,1382,1372,1425,1415,2130,1467,2623,1777,375,
- 1141,2788,35,651,32,2711,4792,27,30,31,
- 584,566,26,28,1268,25,23,50,1296,106,
- 76,77,108,2663,1304,1345,1339,1382,1372,1425,
- 1415,353,1467,402,1431,2237,1477,1484,143,288,
- 529,2634,371,144,2788,35,651,32,931,4792,
- 27,30,31,584,566,26,28,1268,25,23,
- 50,1296,106,76,77,108,1527,1304,1345,1339,
- 1382,1372,1425,1415,1946,1467,3270,1431,722,1477,
- 1484,143,502,4291,585,371,144,2788,35,651,
- 32,2515,4792,27,30,31,584,566,26,28,
- 1268,25,23,50,1296,106,76,77,108,2640,
- 1304,1345,1339,1382,1372,1425,1415,2640,1467,1350,
- 1431,671,1477,1484,143,64,4846,370,371,144,
- 2733,35,651,32,3205,4792,27,30,31,584,
- 566,26,28,1268,25,23,50,1296,106,76,
- 77,108,1811,1304,1345,1339,1382,1372,1425,1415,
- 321,1467,929,1431,56,1477,1510,164,3610,529,
- 369,1355,671,2459,35,651,32,4650,4792,27,
- 30,31,584,566,26,28,1268,25,23,50,
- 1296,106,76,77,108,1236,1304,1345,1339,1382,
- 1372,1425,1415,495,1467,1244,1431,1355,1477,1484,
- 143,400,325,367,142,144,1618,2788,35,651,
- 32,1518,4792,27,30,31,584,566,26,28,
- 1268,25,23,50,1296,106,76,77,108,376,
- 1304,1345,1339,1382,1372,1425,1415,1328,1467,159,
- 1431,93,1477,1484,143,1010,1682,1352,155,144,
- 2788,35,651,32,1380,4792,27,30,31,584,
- 566,26,28,1268,25,23,50,1296,106,76,
- 77,108,419,1304,1345,1339,1382,1372,1425,1415,
- 49,1467,159,1431,1010,1477,1484,143,1010,502,
- 2556,154,144,2788,35,651,32,1476,4792,27,
- 30,31,584,566,26,28,1268,25,23,50,
- 1296,106,76,77,108,1442,1304,1345,1339,1382,
- 1372,1425,1415,1375,1467,160,1431,458,1477,1484,
- 143,2163,590,1774,153,144,2788,35,651,32,
- 848,4792,27,30,31,584,566,26,28,1268,
- 25,23,50,1296,106,76,77,108,1174,1304,
- 1345,1339,1382,1372,1425,1415,457,1467,1560,1431,
- 324,1477,1484,143,1965,1991,2146,152,144,2788,
- 35,651,32,2310,4792,27,30,31,584,566,
- 26,28,1268,25,23,50,1296,106,76,77,
- 108,379,1304,1345,1339,1382,1372,1425,1415,56,
- 1467,3297,1431,960,1477,1484,143,3223,408,580,
- 151,144,2788,35,651,32,1144,4792,27,30,
- 31,584,566,26,28,1268,25,23,50,1296,
- 106,76,77,108,378,1304,1345,1339,1382,1372,
- 1425,1415,56,1467,1613,1431,4440,1477,1484,143,
- 1010,1700,932,150,144,2788,35,651,32,1378,
- 4792,27,30,31,584,566,26,28,1268,25,
- 23,50,1296,106,76,77,108,1527,1304,1345,
- 1339,1382,1372,1425,1415,1790,1467,1610,1431,671,
- 1477,1484,143,1010,4676,2246,149,144,2788,35,
- 651,32,1954,4792,27,30,31,584,566,26,
- 28,1268,25,23,50,1296,106,76,77,108,
- 3217,1304,1345,1339,1382,1372,1425,1415,3219,1467,
- 1508,1431,4168,1477,1484,143,1778,1949,1629,148,
- 144,2788,35,651,32,1498,4792,27,30,31,
- 584,566,26,28,1268,25,23,50,1296,106,
- 76,77,108,1815,1304,1345,1339,1382,1372,1425,
- 1415,2345,1467,2346,1431,51,1477,1484,143,2385,
- 2414,1900,147,144,2788,35,651,32,2642,4792,
- 27,30,31,584,566,26,28,1268,25,23,
- 50,1296,106,76,77,108,2439,1304,1345,1339,
- 1382,1372,1425,1415,56,1467,2415,1431,3675,1477,
- 1484,143,2421,1887,2350,146,144,2788,35,651,
- 32,2447,4792,27,30,31,584,566,26,28,
- 1268,25,23,50,1296,106,76,77,108,2284,
- 1304,1345,1339,1382,1372,1425,1415,56,1467,2664,
- 1431,3026,1477,1484,143,2450,2387,2413,145,144,
- 2788,35,651,32,838,4792,27,30,31,584,
- 566,26,28,1268,25,23,50,1296,106,76,
- 77,108,2419,1304,1345,1339,1382,1372,1425,1415,
- 56,1467,2449,1431,2743,1477,1484,143,2486,2665,
- 2514,159,144,2788,35,651,32,2481,4792,27,
- 30,31,584,566,26,28,1268,25,23,50,
- 1296,106,76,77,108,2516,1304,1345,1339,1382,
- 1372,1425,1415,56,1467,1329,1431,998,1477,1484,
- 143,2550,1338,2552,140,144,2906,35,651,32,
- 2521,4792,27,30,31,584,566,26,28,1268,
- 25,23,50,1296,106,76,77,108,2517,1304,
- 1345,1339,1382,1372,1425,1415,56,1467,2557,1431,
- 3012,1477,1484,143,1908,2667,2210,189,144,3023,
- 35,651,32,1599,4792,27,30,31,584,566,
- 26,28,1268,25,23,50,1296,106,76,77,
- 108,2592,1304,1345,1339,1382,1372,1425,1415,56,
- 1467,2582,1431,1142,1477,1510,164,3023,35,651,
- 32,2687,4792,27,30,31,584,566,26,28,
- 1268,25,23,50,1296,106,76,77,108,1427,
- 1304,1345,1339,1382,1372,1425,1415,2202,1467,3126,
- 1431,352,1477,1510,164,2152,35,651,32,445,
- 2551,41,30,31,584,566,3023,35,651,32,
- 292,4792,27,30,31,584,566,26,28,1268,
- 25,23,50,1296,106,76,77,108,2558,1304,
- 1345,1339,1382,1372,1425,1415,56,1467,1618,1431,
- 1142,1477,1510,164,3023,35,651,32,2737,4792,
- 27,30,31,584,566,26,28,1268,25,23,
- 50,1296,106,76,77,108,3281,1304,1345,1339,
- 1382,1372,1425,1415,2690,1467,2670,1431,2742,1477,
- 1510,164,2160,35,651,32,2589,322,40,30,
- 31,584,566,3078,35,651,32,420,4792,27,
- 30,31,584,566,26,28,1268,25,23,50,
- 1296,106,76,77,108,520,1304,1345,1339,1382,
- 1372,1425,1415,56,1467,1618,1431,3020,1477,1510,
- 164,3023,35,651,32,423,4792,27,30,31,
- 584,566,26,28,1268,25,23,50,1296,106,
- 76,77,108,380,1304,1345,1339,1382,1372,1425,
- 1415,999,1467,2602,1431,3425,1785,1956,35,651,
- 32,87,4875,27,30,31,584,566,58,28,
- 3023,35,651,32,2529,4792,27,30,31,584,
- 566,26,28,1268,25,23,50,1296,106,76,
- 77,108,241,1304,1345,1339,1382,1372,1425,1415,
- 2374,1770,3023,35,651,32,2677,4792,27,30,
- 31,584,566,26,28,1268,25,23,50,1296,
- 106,76,77,108,2484,1304,1345,1339,1382,1372,
- 1425,1776,3023,35,651,32,2688,4792,27,30,
- 31,584,566,26,28,1268,25,23,50,1296,
- 106,76,77,108,2692,1304,1345,1339,1382,1760,
- 3023,35,651,32,2202,4792,27,30,31,584,
- 566,26,28,1268,25,23,50,1296,106,76,
- 77,108,1232,1304,1345,1339,1382,1768,1983,35,
- 651,32,734,3365,27,30,31,584,566,337,
- 28,3023,35,651,32,2693,4792,27,30,31,
- 584,566,26,28,1268,25,23,50,1296,106,
- 76,77,108,1474,1304,1345,1339,1692,1692,35,
- 651,32,2069,3365,27,30,31,584,566,337,
- 28,70,661,232,1729,660,319,2699,330,1355,
- 313,540,1355,502,35,1041,386,2160,35,651,
- 32,322,312,2894,30,31,584,566,244,230,
- 231,502,35,964,276,952,173,4537,327,35,
- 451,4146,661,4702,24,660,319,429,331,1469,
- 314,540,306,535,670,3023,35,651,32,2683,
- 4792,27,30,31,584,566,26,28,1268,25,
- 23,50,1296,106,76,77,108,2314,1304,1345,
- 1339,1699,2160,35,651,32,2694,387,3437,30,
- 31,584,566,3452,502,35,964,1856,2383,2756,
- 3023,35,651,32,2081,4792,27,30,31,584,
- 566,26,28,1268,25,23,50,1296,106,76,
- 77,108,2514,1304,1345,1339,1717,3023,35,651,
- 32,2454,4792,27,30,31,584,566,26,28,
- 1268,25,23,50,1296,106,76,77,108,2758,
- 1304,1345,1339,1725,1453,35,651,32,3176,2689,
- 27,30,31,584,566,337,28,2207,35,293,
- 671,2224,35,280,2454,4680,1726,35,1985,32,
- 734,3365,27,30,31,584,566,337,28,502,
- 35,1041,386,1792,1802,35,651,32,4530,2689,
- 27,30,31,584,566,337,28,2762,444,2061,
- 2071,660,319,843,35,451,313,540,4702,587,
- 35,1041,386,450,2698,2551,349,1355,1942,350,
- 661,400,3335,660,319,3790,330,2644,313,540,
- 1948,1101,35,1803,820,239,342,2036,803,347,
- 1311,660,319,49,1932,1010,313,540,2810,69,
- 259,1890,1035,737,536,4537,2905,1010,958,350,
- 2245,88,56,1374,102,49,3080,2815,3222,2616,
- 2707,4293,228,2815,1035,926,342,2036,803,347,
- 156,445,56,232,3242,2624,3765,314,180,3734,
- 2991,341,502,35,964,278,203,215,4503,202,
- 212,213,214,216,89,661,169,102,240,230,
- 231,331,1,5383,728,168,536,183,167,170,
- 171,172,173,174,1616,1355,350,97,1142,364,
- 520,415,417,1975,228,3133,35,1041,386,98,
- 3737,568,156,344,2036,803,347,5383,237,5383,
- 180,3734,2991,358,160,2663,5383,68,203,215,
- 4503,202,212,213,214,216,1686,322,169,273,
- 3605,1863,1864,448,2061,2071,1007,168,181,184,
- 167,170,171,172,173,174,1355,1246,436,5383,
- 1376,1618,3023,35,651,32,232,4792,27,30,
- 31,584,566,26,28,1268,25,23,50,1296,
- 106,76,77,108,2359,1304,1345,1735,53,1608,
- 2866,235,230,231,4715,502,35,1041,386,2792,
- 2202,2991,274,284,1223,35,651,32,2646,2689,
- 27,30,31,584,566,337,28,523,232,345,
- 5383,232,404,536,242,245,248,251,1037,49,
- 502,35,293,440,1436,454,1247,5383,1035,1025,
- 1950,228,401,247,230,231,250,230,231,156,
- 3468,2702,2412,2867,2870,3066,4436,180,3734,2991,
- 2148,1905,319,5383,3117,203,215,4503,202,212,
- 213,214,216,431,2484,169,56,536,2235,1374,
- 3061,2241,2815,2815,168,2730,2547,167,170,171,
- 172,173,174,5383,5383,228,757,35,1041,386,
- 2624,2624,2150,156,2043,502,35,1041,386,2905,
- 2150,180,3734,2991,2491,5383,1249,1906,2815,203,
- 215,4503,202,212,213,214,216,517,2235,169,
- 273,536,2815,4241,5383,350,2624,1599,168,49,
- 178,167,170,171,172,173,174,182,46,228,
- 2624,2150,342,2036,803,347,1609,156,661,1616,
- 340,2946,315,1142,3014,180,3734,2991,503,358,
- 1249,1906,322,203,215,4503,202,212,213,214,
- 216,603,5383,169,5383,536,3857,1863,1864,160,
- 5383,71,168,1871,176,167,170,171,172,173,
- 174,2487,2618,228,359,5383,2815,1347,5383,501,
- 502,156,2905,72,388,425,1618,232,503,180,
- 3734,2991,389,425,2624,5383,1355,203,215,4503,
- 202,212,213,214,216,689,2150,169,285,536,
- 287,5383,253,230,231,96,168,5383,177,167,
- 170,171,172,173,174,3200,2991,228,87,500,
- 502,661,5383,391,425,156,1347,330,5383,2847,
- 1907,2905,374,180,3734,2991,56,2207,2028,293,
- 2815,203,215,4503,202,212,213,214,216,775,
- 1355,169,503,536,287,56,2731,322,341,3146,
- 168,2034,187,167,170,171,172,173,174,5383,
- 5383,228,502,35,1041,386,5383,2762,5383,156,
- 661,2970,52,3082,1907,671,330,180,3734,2991,
- 4726,1598,1355,500,502,203,215,4503,202,212,
- 213,214,216,861,5383,169,273,536,390,425,
- 502,35,1041,386,168,3546,2750,167,170,171,
- 172,173,174,297,348,228,502,35,1041,386,
- 5383,1355,2136,156,1616,2462,372,4697,1142,5383,
- 2245,180,3734,2991,432,1483,35,964,276,203,
- 215,4503,202,212,213,214,216,56,322,169,
- 273,3786,1901,90,160,322,4235,5383,168,338,
- 192,167,170,171,172,173,174,2071,35,651,
- 32,3176,2689,27,30,31,584,566,337,28,
- 3023,35,651,32,349,4792,27,30,31,584,
- 566,26,28,1268,25,23,50,1296,106,76,
- 77,108,1355,1304,1648,587,35,1041,386,502,
- 35,1041,386,275,296,5383,502,35,1041,386,
- 3642,304,56,2899,660,319,2568,350,1616,313,
- 540,2559,1142,947,3307,2815,1355,536,5383,49,
- 5383,524,350,431,342,2036,803,347,1035,720,
- 430,671,3242,341,1618,228,4762,5383,160,342,
- 2036,803,347,156,3222,56,56,525,3382,3775,
- 2815,180,3734,2991,56,1355,4228,2359,2815,203,
- 215,4503,202,212,213,214,216,1033,341,169,
- 427,536,2359,2423,2991,56,341,1142,168,3038,
- 186,167,170,171,172,173,174,67,671,228,
- 522,2970,56,4775,2000,299,1142,156,56,2970,
- 5383,1604,2592,156,3770,180,3734,2991,5383,1605,
- 221,200,4294,203,215,4503,202,212,213,214,
- 216,5383,156,169,502,1949,964,74,502,35,
- 293,1733,168,5383,194,167,170,171,172,173,
- 174,3023,35,651,32,5383,4792,27,30,31,
- 584,566,26,28,1268,25,23,50,1296,106,
- 76,77,108,5383,1304,1649,1364,35,651,32,
- 5383,3365,27,30,31,584,566,337,28,1355,
- 1499,35,651,32,734,2689,27,30,31,584,
- 566,337,28,1715,35,651,32,734,2689,27,
- 30,31,584,566,337,28,56,5383,4457,2343,
- 1142,66,56,1142,56,1355,2989,1355,1142,5383,
- 661,5383,671,660,319,1355,331,4779,314,540,
- 737,4321,737,5383,5383,5383,156,660,319,156,
- 5383,350,313,540,156,1778,5383,65,162,64,
- 660,319,5383,3435,312,313,540,3804,344,2036,
- 803,347,1355,2968,35,651,32,312,4792,27,
- 30,31,584,566,26,28,1268,25,23,50,
- 1296,86,76,77,306,535,670,1483,35,964,
- 1957,3612,1616,3612,55,737,1142,533,535,670,
- 3023,35,651,32,5383,4792,27,30,31,584,
- 566,26,28,1268,25,23,50,1296,106,76,
- 77,108,160,1656,2359,4370,5383,5383,326,333,
- 332,333,3023,35,651,32,2081,4792,27,30,
- 31,584,566,26,28,1268,25,23,50,1296,
- 106,76,77,108,2359,1684,3612,587,35,1041,
- 386,5383,303,3023,35,651,32,558,4792,27,
- 30,31,584,566,26,28,1268,25,23,50,
- 1296,106,76,77,108,1563,1691,4500,3840,2815,
- 1355,49,179,328,333,1824,1101,35,394,2815,
- 1035,1563,2359,5383,56,1911,737,228,2815,2815,
- 502,35,964,281,5383,5383,3276,228,502,35,
- 964,1991,54,5383,56,56,341,228,4229,809,
- 5383,205,215,4503,204,212,213,214,216,5383,
- 198,205,215,4503,204,212,213,214,216,2970,
- 5383,205,215,4503,204,212,213,214,216,1606,
- 1355,206,208,210,294,295,1846,3612,217,207,
- 209,206,208,210,294,295,1846,1355,217,207,
- 209,206,208,210,294,295,1846,56,217,207,
- 209,1126,101,56,5383,56,56,3785,1616,3112,
- 2120,3207,1142,4316,3805,333,2148,5383,56,3888,
- 56,3308,4465,4316,2695,56,56,5383,1355,1255,
- 3560,3315,5383,4316,3023,35,651,32,160,4792,
- 27,30,31,584,566,26,28,1268,25,23,
- 50,1296,106,76,77,85,3023,1033,651,1545,
- 3704,4792,27,30,31,584,566,26,28,1268,
- 25,23,50,1296,106,76,77,84,3023,35,
- 651,32,5383,4792,27,30,31,584,566,26,
- 28,1268,25,23,50,1296,106,76,77,83,
- 3023,35,651,32,4230,4792,27,30,31,584,
- 566,26,28,1268,25,23,50,1296,106,76,
- 77,82,3023,35,651,32,5383,4792,27,30,
- 31,584,566,26,28,1268,25,23,50,1296,
- 106,76,77,81,3023,35,651,32,5383,4792,
- 27,30,31,584,566,26,28,1268,25,23,
- 50,1296,106,76,77,80,3023,35,651,32,
- 5383,4792,27,30,31,584,566,26,28,1268,
- 25,23,50,1296,106,76,77,79,3023,35,
- 651,32,5383,4792,27,30,31,584,566,26,
- 28,1268,25,23,50,1296,106,76,77,78,
- 2851,35,651,32,5383,4792,27,30,31,584,
- 566,26,28,1268,25,23,50,1296,106,76,
- 77,104,3023,35,651,32,5383,4792,27,30,
- 31,584,566,26,28,1268,25,23,50,1296,
- 106,76,77,110,3023,35,651,32,5383,4792,
- 27,30,31,584,566,26,28,1268,25,23,
- 50,1296,106,76,77,109,3023,35,651,32,
- 5383,4792,27,30,31,584,566,26,28,1268,
- 25,23,50,1296,106,76,77,107,3023,35,
- 651,32,5383,4792,27,30,31,584,566,26,
- 28,1268,25,23,50,1296,106,76,77,105,
- 2063,35,1985,32,734,2689,27,30,31,584,
- 566,337,28,1468,35,651,32,734,2689,27,
- 30,31,584,566,337,28,2359,5383,5383,56,
- 56,1998,2136,1142,1142,2815,5383,4697,2309,737,
- 1355,1703,3327,56,1650,1812,5383,2815,2815,2815,
- 2905,2359,5383,228,1101,35,394,660,319,156,
- 156,5383,313,540,197,341,228,2624,3559,3595,
- 660,319,449,527,1311,313,540,205,215,4503,
- 204,212,213,214,216,5383,5383,312,2970,302,
- 205,215,4503,204,212,213,214,216,3396,661,
- 3612,2359,56,1618,2359,330,1142,206,208,210,
- 294,295,1846,1355,518,207,209,307,535,670,
- 206,208,210,294,295,1846,1737,517,207,209,
- 2815,2359,156,2899,2731,358,2085,3867,333,201,
- 2815,3597,199,2991,5383,3145,2172,5383,228,5383,
- 2815,56,3362,1863,1864,1142,5383,5383,228,374,
- 5383,1101,35,394,2194,416,417,1975,228,298,
- 2359,5383,205,215,4503,204,212,213,214,216,
- 2359,156,205,215,4503,204,212,213,214,216,
- 2725,5383,205,215,4503,204,212,213,214,216,
- 428,5383,206,208,210,294,295,1846,3589,218,
- 207,209,206,208,210,294,295,1846,222,305,
- 207,209,206,208,210,294,295,1846,2359,497,
- 207,209,1468,35,651,32,734,2689,27,30,
- 31,584,566,337,28,1355,3182,35,1041,386,
- 1181,3737,1355,1355,2815,4899,1889,56,5383,238,
- 2815,2815,5383,3876,5383,5383,193,1355,5383,5383,
- 2423,2728,228,1355,536,737,5383,3199,341,341,
- 273,5383,5383,5383,3253,2871,5383,5383,528,660,
- 319,5383,3896,5383,313,540,1215,405,2914,3414,
- 156,2970,2970,5383,5383,4418,958,232,180,3734,
- 1355,531,507,1779,35,651,32,2418,2689,27,
- 30,31,584,566,337,28,406,407,408,294,
- 295,1846,236,230,231,195,3612,5383,5383,5383,
- 1812,5383,3447,274,2815,2905,5383,1692,35,651,
- 32,1821,3365,27,30,31,584,566,337,28,
- 56,5383,2624,5383,1142,243,246,249,252,1037,
- 1905,319,5383,3895,333,1436,1468,35,651,32,
- 734,2689,27,30,31,584,566,337,28,5383,
- 156,5383,5383,5383,661,5383,5383,5383,1286,4463,
- 330,661,2815,4899,660,319,5383,331,5383,316,
- 540,5383,5383,409,411,5383,5383,5383,5383,5383,
- 228,2276,35,1041,386,1104,35,1041,386,3546,
- 358,5383,5383,660,319,5383,5383,2491,313,540,
- 4588,5383,5383,5383,1215,405,2914,3362,1863,1864,
- 2694,4708,196,5383,4231,49,5383,5383,5383,49,
- 1104,35,1041,386,1035,2330,5383,5383,1035,2846,
- 2946,315,5383,5383,406,407,408,294,295,1846,
- 3276,5383,5383,5383,3006,5383,587,35,1041,386,
- 1104,35,1041,386,49,5383,5383,5383,5383,1821,
- 5383,5383,5383,1035,47,5383,5383,587,35,1041,
- 386,5383,587,35,1041,386,5383,5383,2482,2641,
- 49,5383,536,5383,49,587,35,1041,386,1035,
- 47,5383,5383,1035,47,5383,1979,35,1041,386,
- 341,49,5383,5383,5383,1089,49,5383,156,2552,
- 1035,47,5383,5383,56,1035,47,188,2815,49,
- 5383,409,412,4566,5383,5383,2483,5383,1035,47,
- 49,2659,587,35,1041,386,341,5383,5383,1035,
- 47,5383,5383,5383,3260,587,35,1041,386,2168,
- 35,1041,386,5383,5383,2940,56,5383,5383,2970,
- 536,5383,1216,35,1041,386,49,5383,56,505,
- 5383,5383,536,5383,5383,1035,47,5383,341,49,
- 190,5383,5383,49,5383,5383,156,5383,1035,47,
- 341,3369,1035,47,5383,2482,49,5383,156,56,
- 5383,2970,5383,536,3376,1035,2043,2805,3508,5383,
- 5383,2479,5383,2970,5383,5383,502,35,1041,386,
- 5383,341,5383,2697,5383,5383,5383,5383,5383,156,
- 502,35,1041,386,502,35,1041,386,2482,56,
- 5383,5383,5383,2815,2970,502,35,1041,386,5383,
- 49,5383,5383,56,3136,5383,5383,536,4360,1035,
- 798,341,5383,56,49,5383,5383,536,49,502,
- 35,1041,386,1035,918,341,5383,1035,662,49,
- 5383,5383,5383,156,2970,341,5383,56,1035,2043,
- 5383,536,188,156,532,5383,5383,5383,4566,5383,
- 5383,5383,188,49,5383,5383,5383,5383,4566,341,
- 5383,5383,1035,3047,5383,5383,5383,156,5383,5383,
- 5383,5383,5383,5383,5383,5383,188,5383,5383,5383,
- 5383,5383,4566,5383,5383,5383,5383,5383,5383,5383,
- 5383,5383,5383,5383,5383,5383,5383,5383,5383,5383,
- 5383,5383,5383,5383,5383,4303,5383,5383,5383,5383,
- 5383,5383,5383,5383,5383,4435,5383,5383,5383,5383,
- 5383,5383,5383,5383,5383,5383,5383,5383,5383,5383,
- 5383,5383,5383,5383,5383,5383,5383,5383,5383,4442,
- 5383,0,2115,1,0,39,5398,1,0,39,
- 5397,1,0,38,625,0,38,5398,0,38,
- 5397,0,452,783,0,438,1042,0,1077,29,
- 0,5398,48,0,5397,48,0,5395,381,0,
- 5394,381,0,39,5398,0,39,5397,0,1,
- 442,0,456,1475,0,455,1514,0,35,33,
- 0,1077,385,0,47,37,0,2570,126,0,
- 1,1341,0,1,5655,0,1,5654,0,1,
- 5653,0,1,5652,0,1,5651,0,1,5650,
- 0,1,5649,0,1,5648,0,1,5647,0,
- 1,5646,0,1,5645,0,283,392,0,283,
- 286,0,5617,241,0,5616,241,0,5719,241,
- 0,5718,241,0,5644,241,0,5643,241,0,
- 5642,241,0,5641,241,0,5640,241,0,5639,
- 241,0,5638,241,0,5637,241,0,5655,241,
- 0,5654,241,0,5653,241,0,5652,241,0,
- 5651,241,0,5650,241,0,5649,241,0,5648,
- 241,0,5647,241,0,5646,241,0,5645,241,
- 0,39,5398,241,0,39,5397,241,0,5421,
- 241,0,43,5419,0,43,37,0,2156,91,
- 0,32,34,0,39,625,0,329,443,0,
- 5389,1,0,5388,1,0,237,2804,0,32,
- 386,0,29,385,0,2570,128,0,2570,127,
- 0,499,1828,0,5421,1,229,0,39,1,
- 229,0,229,414,0,5398,37,0,5397,37,
- 0,5419,45,0,37,45,0,5421,1,0,
- 39,1,0,1,92,0,5393,403,0,5392,
- 403,0,4422,1,0,2749,1,0,625,1,
- 0,229,413,0,1914,381,0,5398,2,37,
- 0,5397,2,37,0,5398,36,0,5397,36,
- 0,1,329,0,8,12,0,329,95,0,
- 35,73,0,499,4234,0,1,229,0,229,
- 220,0,278,3284,0,229,219,0,1,3776,
- 0,1,4244,0,5395,1,0,5391,1,0,
- 1,229,2283,0,5392,229,0,2291,229,0,
- 2506,229,0,10,12,0,8,10,12,0,
- 185,3393,0
+ 125,198,198,174,174,104,1119,35,1682,1656,
+ 1179,3729,27,30,31,584,568,26,28,1649,
+ 25,23,50,1304,106,76,77,108,159,1311,
+ 1346,1339,1415,1382,1477,1425,1234,1502,1167,1484,
+ 273,1510,1519,143,327,35,279,158,144,3377,
+ 1600,35,651,32,2077,4282,27,30,31,584,
+ 568,57,28,3023,35,651,32,232,2518,27,
+ 30,31,584,568,26,28,1303,25,23,50,
+ 1304,106,76,77,108,322,1311,1346,1339,1415,
+ 1382,1768,235,230,231,502,934,801,34,3023,
+ 35,651,32,274,2518,27,30,31,584,568,
+ 26,28,1303,25,23,50,1304,106,76,77,
+ 108,2164,1311,1346,1742,242,245,248,251,1037,
+ 502,4335,2377,35,277,2158,2035,35,651,32,
+ 1322,4282,27,30,31,584,568,56,28,135,
+ 1527,2484,2701,2412,2867,2870,2960,4445,2250,35,
+ 651,32,2815,2518,27,30,31,584,568,26,
+ 28,1303,25,23,50,1304,106,76,77,108,
+ 341,1311,1346,1339,1415,1382,1477,1425,61,1502,
+ 379,1484,924,1510,1519,143,3603,1867,1553,515,
+ 144,1725,2513,2970,1347,1347,1993,2241,1517,2513,
+ 2513,2730,863,516,2250,35,651,32,2815,2518,
+ 27,30,31,584,568,26,28,1303,25,23,
+ 50,1304,106,76,77,108,341,1311,1346,1339,
+ 1415,1382,1477,1425,56,1502,722,1484,688,1510,
+ 1519,143,1010,722,722,515,144,331,1355,2970,
+ 1903,327,35,279,330,2504,4802,1089,70,516,
+ 3117,2467,511,182,60,2122,35,651,32,142,
+ 4815,27,30,31,584,568,26,28,1555,509,
+ 320,1562,1618,4429,2250,35,651,32,2815,2518,
+ 27,30,31,584,568,26,28,1303,25,23,
+ 50,1304,106,76,77,108,341,1311,1346,1339,
+ 1415,1382,1477,1425,311,1502,1446,1484,511,1510,
+ 1519,143,737,1347,496,515,144,56,2513,2970,
+ 1347,744,42,1605,1563,2513,94,1562,374,516,
+ 2594,35,651,32,2815,2518,27,30,31,584,
+ 568,26,28,1303,25,23,50,1304,106,76,
+ 77,108,341,1311,1346,1339,1415,1382,1477,1425,
+ 2344,1502,722,1484,2815,1510,1519,143,2551,722,
+ 2026,515,144,330,1355,2970,502,35,1261,1243,
+ 330,323,341,441,1324,516,502,2855,511,1956,
+ 35,651,32,2242,4815,27,30,31,584,568,
+ 59,28,727,1010,1598,1294,495,1562,1355,4444,
+ 2526,35,651,32,1525,2518,27,30,31,584,
+ 568,26,28,1303,25,23,50,1304,106,76,
+ 77,108,372,1311,1346,1339,1415,1382,1477,1425,
+ 376,1502,1553,1484,512,1510,1519,143,502,1932,
+ 1337,377,144,2319,35,651,32,2202,2518,27,
+ 30,31,584,568,26,28,1303,25,23,50,
+ 1304,106,76,77,108,69,1311,1346,1339,1415,
+ 1382,1477,1425,520,1502,458,1484,1335,1510,1519,
+ 143,2207,2245,1337,377,144,671,3023,35,651,
+ 32,2689,2518,27,30,31,584,568,26,28,
+ 1303,25,23,50,1304,106,76,77,108,1512,
+ 1311,1346,1339,1415,1382,1477,1425,1859,1502,2081,
+ 1484,1811,1510,1520,164,2493,1897,383,2071,502,
+ 35,1871,2391,35,651,32,2223,2518,27,30,
+ 31,584,568,26,28,1303,25,23,50,1304,
+ 106,76,77,108,71,1311,1346,1339,1415,1382,
+ 1477,1425,288,1502,1618,1484,2237,1510,1519,143,
+ 384,2071,1337,377,144,502,35,282,421,910,
+ 2217,2202,2788,35,651,32,2753,2518,27,30,
+ 31,584,568,26,28,1303,25,23,50,1304,
+ 106,76,77,108,737,1311,1346,1339,1415,1382,
+ 1477,1425,56,1502,236,1484,824,1510,1519,143,
+ 4218,2499,2617,158,144,3023,35,651,32,1392,
+ 2518,27,30,31,584,568,26,28,1303,25,
+ 23,50,1304,106,76,77,108,2243,1311,1346,
+ 1339,1415,1382,1477,1425,351,1502,2623,1785,375,
+ 2071,2788,35,651,32,2905,2518,27,30,31,
+ 584,568,26,28,1303,25,23,50,1304,106,
+ 76,77,108,142,1311,1346,1339,1415,1382,1477,
+ 1425,354,1502,135,1484,2237,1510,1519,143,2634,
+ 529,2663,371,144,2788,35,651,32,2515,2518,
+ 27,30,31,584,568,26,28,1303,25,23,
+ 50,1304,106,76,77,108,1527,1311,1346,1339,
+ 1415,1382,1477,1425,1946,1502,135,1484,735,1510,
+ 1519,143,327,931,3270,371,144,2788,35,651,
+ 32,585,2518,27,30,31,584,568,26,28,
+ 1303,25,23,50,1304,106,76,77,108,2477,
+ 1311,1346,1339,1415,1382,1477,1425,56,1502,1350,
+ 1484,2207,1510,1519,143,1600,64,370,371,144,
+ 2733,35,651,32,3154,2518,27,30,31,584,
+ 568,26,28,1303,25,23,50,1304,106,76,
+ 77,108,3209,1311,1346,1339,1415,1382,1477,1425,
+ 353,1502,1811,1484,56,1510,1520,164,960,529,
+ 369,1355,671,2459,35,651,32,4569,2518,27,
+ 30,31,584,568,26,28,1303,25,23,50,
+ 1304,106,76,77,108,929,1311,1346,1339,1415,
+ 1382,1477,1425,4138,1502,1236,1484,2053,1510,1519,
+ 143,4318,325,367,142,144,2237,2788,35,651,
+ 32,1514,2518,27,30,31,584,568,26,28,
+ 1303,25,23,50,1304,106,76,77,108,419,
+ 1311,1346,1339,1415,1382,1477,1425,3887,1502,135,
+ 1484,93,1510,1519,143,1010,1713,1244,155,144,
+ 2788,35,651,32,400,2518,27,30,31,584,
+ 568,26,28,1303,25,23,50,1304,106,76,
+ 77,108,1328,1311,1346,1339,1415,1382,1477,1425,
+ 1352,1502,159,1484,1010,1510,1519,143,1940,1380,
+ 49,154,144,2788,35,651,32,1476,2518,27,
+ 30,31,584,568,26,28,1303,25,23,50,
+ 1304,106,76,77,108,1442,1311,1346,1339,1415,
+ 1382,1477,1425,1375,1502,160,1484,457,1510,1519,
+ 143,321,2163,590,153,144,2788,35,651,32,
+ 529,2518,27,30,31,584,568,26,28,1303,
+ 25,23,50,1304,106,76,77,108,1774,1311,
+ 1346,1339,1415,1382,1477,1425,324,1502,848,1484,
+ 56,1510,1519,143,3383,1174,1560,152,144,2788,
+ 35,651,32,1965,2518,27,30,31,584,568,
+ 26,28,1303,25,23,50,1304,106,76,77,
+ 108,2477,1311,1346,1339,1415,1382,1477,1425,56,
+ 1502,1991,1484,4480,1510,1519,143,1010,2146,2310,
+ 151,144,2788,35,651,32,3297,2518,27,30,
+ 31,584,568,26,28,1303,25,23,50,1304,
+ 106,76,77,108,378,1311,1346,1339,1415,1382,
+ 1477,1425,3223,1502,408,1484,671,1510,1519,143,
+ 1010,4622,580,150,144,2788,35,651,32,1144,
+ 2518,27,30,31,584,568,26,28,1303,25,
+ 23,50,1304,106,76,77,108,1613,1311,1346,
+ 1339,1415,1382,1477,1425,1700,1502,932,1484,4160,
+ 1510,1519,143,1378,1527,1790,149,144,2788,35,
+ 651,32,1610,2518,27,30,31,584,568,26,
+ 28,1303,25,23,50,1304,106,76,77,108,
+ 2246,1311,1346,1339,1415,1382,1477,1425,1954,1502,
+ 3217,1484,51,1510,1519,143,3219,1508,1778,148,
+ 144,2788,35,651,32,1949,2518,27,30,31,
+ 584,568,26,28,1303,25,23,50,1304,106,
+ 76,77,108,1629,1311,1346,1339,1415,1382,1477,
+ 1425,56,1502,1498,1484,3137,1510,1519,143,1815,
+ 2345,2346,147,144,2788,35,651,32,2385,2518,
+ 27,30,31,584,568,26,28,1303,25,23,
+ 50,1304,106,76,77,108,2414,1311,1346,1339,
+ 1415,1382,1477,1425,56,1502,1900,1484,2638,1510,
+ 1519,143,2642,2439,2415,146,144,2788,35,651,
+ 32,2421,2518,27,30,31,584,568,26,28,
+ 1303,25,23,50,1304,106,76,77,108,1887,
+ 1311,1346,1339,1415,1382,1477,1425,56,1502,2350,
+ 1484,2366,1510,1519,143,2447,2284,2664,145,144,
+ 2788,35,651,32,2450,2518,27,30,31,584,
+ 568,26,28,1303,25,23,50,1304,106,76,
+ 77,108,2387,1311,1346,1339,1415,1382,1477,1425,
+ 56,1502,2413,1484,4254,1510,1519,143,838,2130,
+ 2514,159,144,2788,35,651,32,2419,2518,27,
+ 30,31,584,568,26,28,1303,25,23,50,
+ 1304,106,76,77,108,2449,1311,1346,1339,1415,
+ 1382,1477,1425,2486,1502,2665,1484,402,1510,1519,
+ 143,2481,2516,1329,140,144,2906,35,651,32,
+ 2550,2518,27,30,31,584,568,26,28,1303,
+ 25,23,50,1304,106,76,77,108,1338,1311,
+ 1346,1339,1415,1382,1477,1425,56,1502,2552,1484,
+ 2987,1510,1519,143,2521,2517,2557,189,144,3023,
+ 35,651,32,1599,2518,27,30,31,584,568,
+ 26,28,1303,25,23,50,1304,106,76,77,
+ 108,1908,1311,1346,1339,1415,1382,1477,1425,56,
+ 1502,1618,1484,1142,1510,1520,164,3023,35,651,
+ 32,2583,2518,27,30,31,584,568,26,28,
+ 1303,25,23,50,1304,106,76,77,108,958,
+ 1311,1346,1339,1415,1382,1477,1425,2202,1502,822,
+ 1484,1384,1510,1520,164,2152,35,651,32,445,
+ 2551,41,30,31,584,568,3023,35,651,32,
+ 292,2518,27,30,31,584,568,26,28,1303,
+ 25,23,50,1304,106,76,77,108,2667,1311,
+ 1346,1339,1415,1382,1477,1425,56,1502,1618,1484,
+ 1142,1510,1520,164,3023,35,651,32,2904,2518,
+ 27,30,31,584,568,26,28,1303,25,23,
+ 50,1304,106,76,77,108,2898,1311,1346,1339,
+ 1415,1382,1477,1425,2592,1502,521,1484,1639,1510,
+ 1520,164,2160,35,651,32,2582,322,40,30,
+ 31,584,568,3078,35,651,32,420,2518,27,
+ 30,31,584,568,26,28,1303,25,23,50,
+ 1304,106,76,77,108,520,1311,1346,1339,1415,
+ 1382,1477,1425,56,1502,1618,1484,3286,1510,1520,
+ 164,3023,35,651,32,423,2518,27,30,31,
+ 584,568,26,28,1303,25,23,50,1304,106,
+ 76,77,108,380,1311,1346,1339,1415,1382,1477,
+ 1425,3285,1502,241,1484,2659,1813,1956,35,651,
+ 32,2687,4815,27,30,31,584,568,58,28,
+ 3023,35,651,32,2808,2518,27,30,31,584,
+ 568,26,28,1303,25,23,50,1304,106,76,
+ 77,108,1355,1311,1346,1339,1415,1382,1477,1425,
+ 2374,1777,3023,35,651,32,2484,2518,27,30,
+ 31,584,568,26,28,1303,25,23,50,1304,
+ 106,76,77,108,24,1311,1346,1339,1415,1382,
+ 1477,1778,3023,35,651,32,2383,2518,27,30,
+ 31,584,568,26,28,1303,25,23,50,1304,
+ 106,76,77,108,2558,1311,1346,1339,1415,1770,
+ 3023,35,651,32,2202,2518,27,30,31,584,
+ 568,26,28,1303,25,23,50,1304,106,76,
+ 77,108,1232,1311,1346,1339,1415,1776,1983,35,
+ 651,32,734,3236,27,30,31,584,568,337,
+ 28,3023,35,651,32,1686,2518,27,30,31,
+ 584,568,26,28,1303,25,23,50,1304,106,
+ 76,77,108,71,1311,1346,1339,1727,502,35,
+ 801,276,2160,35,651,32,1041,722,3029,30,
+ 31,584,568,232,1355,856,319,671,330,1355,
+ 313,540,4629,502,35,1085,386,2160,35,651,
+ 32,1686,312,3884,30,31,584,568,244,230,
+ 231,2224,35,277,2043,2707,69,4454,1983,2513,
+ 2690,68,2670,502,35,1085,386,429,1216,35,
+ 1085,386,306,535,670,3023,35,651,32,2589,
+ 2518,27,30,31,584,568,26,28,1303,25,
+ 23,50,1304,106,76,77,108,49,1311,1346,
+ 1339,1733,49,722,2602,2202,1025,679,2383,1010,
+ 87,1025,2043,4224,2504,2823,502,35,801,1864,
+ 3023,35,651,32,2291,2518,27,30,31,584,
+ 568,26,28,1303,25,23,50,1304,106,76,
+ 77,108,2514,1311,1346,1339,1734,3023,35,651,
+ 32,314,2518,27,30,31,584,568,26,28,
+ 1303,25,23,50,1304,106,76,77,108,2677,
+ 1311,1346,1339,1735,1453,35,651,32,3123,3016,
+ 27,30,31,584,568,337,28,1618,1374,56,
+ 2559,97,2815,2815,2815,96,1726,35,1993,32,
+ 734,3236,27,30,31,584,568,337,28,56,
+ 2624,341,341,3168,1802,35,651,32,3121,3016,
+ 27,30,31,584,568,337,28,737,1355,1901,
+ 1355,856,319,2744,2970,4490,313,540,2688,502,
+ 35,1085,386,523,1606,722,349,2807,1975,350,
+ 1983,3335,436,856,319,1355,330,2454,313,540,
+ 53,349,87,2692,239,2693,342,2791,1140,347,
+ 1268,856,319,49,1957,1616,313,540,358,1142,
+ 259,2069,1025,2945,536,4454,56,52,788,350,
+ 3757,2224,35,280,1812,3372,1889,1899,2815,2513,
+ 1618,2750,228,1474,350,160,342,2791,1140,347,
+ 156,445,232,2305,2836,1599,2624,2699,180,4243,
+ 737,342,2791,1140,347,322,203,215,4582,2836,
+ 202,212,213,214,216,173,169,240,230,231,
+ 737,2210,1,722,3775,168,536,183,167,170,
+ 171,172,173,174,330,3588,374,2454,2683,364,
+ 2314,415,417,1992,228,3133,35,1085,386,558,
+ 3416,2678,156,502,35,801,278,3117,237,2462,
+ 180,4243,737,4444,358,3020,1355,4443,203,215,
+ 4582,387,202,212,213,214,216,88,169,273,
+ 102,2946,1889,1899,1618,2694,2756,168,181,184,
+ 167,170,171,172,173,174,352,1246,348,2758,
+ 1376,1618,3023,35,651,32,232,2518,27,30,
+ 31,584,568,26,28,1303,25,23,50,1304,
+ 106,76,77,108,3660,1311,1346,1760,1355,44,
+ 1605,235,230,231,1010,1101,35,1819,1096,2792,
+ 3890,737,274,2698,1223,35,651,32,2646,3016,
+ 27,30,31,584,568,337,28,522,232,345,
+ 90,232,2810,536,242,245,248,251,1037,49,
+ 1483,35,801,276,2158,2080,1355,89,1025,926,
+ 102,228,401,247,230,231,250,230,231,156,
+ 1609,2701,2412,2867,2870,2960,4445,180,4243,737,
+ 2148,1914,319,1355,870,203,215,4582,3231,202,
+ 212,213,214,216,431,169,98,2150,536,502,
+ 1985,801,74,2707,168,5368,2810,167,170,171,
+ 172,173,174,2423,1247,3579,228,536,1950,2566,
+ 502,35,1085,386,156,809,587,35,1085,386,
+ 1792,232,180,4243,737,4334,2207,35,293,2359,
+ 203,215,4582,156,202,212,213,214,216,517,
+ 169,180,4243,536,450,350,253,230,231,168,
+ 49,178,167,170,171,172,173,174,400,1025,
+ 1077,228,342,2791,1140,347,2736,404,195,156,
+ 340,3004,315,1355,5368,3190,5368,180,4243,737,
+ 1089,757,35,1085,386,203,215,4582,5368,202,
+ 212,213,214,216,603,169,5368,56,536,388,
+ 425,1142,5368,5368,168,67,176,167,170,171,
+ 172,173,174,5368,322,273,228,502,35,1085,
+ 386,1812,5368,1347,156,2815,2513,156,2513,2854,
+ 5368,5368,180,4243,737,2235,1690,1249,1932,2815,
+ 203,215,4582,2624,202,212,213,214,216,689,
+ 169,49,1616,536,56,5368,1142,2624,3480,168,
+ 46,177,167,170,171,172,173,174,1249,1932,
+ 722,228,722,502,35,1085,386,5368,1905,156,
+ 284,330,160,330,3223,196,5368,180,4243,737,
+ 502,35,1085,386,5368,203,215,4582,72,202,
+ 212,213,214,216,775,169,5368,432,536,56,
+ 3538,358,3538,3621,168,1355,187,167,170,171,
+ 172,173,174,2482,273,503,228,536,2946,1889,
+ 1899,56,1355,1355,156,4329,587,35,1085,386,
+ 5368,1608,180,4243,737,341,4683,66,2705,5368,
+ 203,215,4582,156,202,212,213,214,216,861,
+ 169,287,188,536,65,64,500,502,4543,168,
+ 49,2993,167,170,171,172,173,174,1374,1025,
+ 943,228,2815,5368,2343,2700,2150,338,1142,156,
+ 3114,1942,287,5368,5368,3190,2136,180,4243,737,
+ 2624,4634,1101,35,394,203,215,4582,2061,202,
+ 212,213,214,216,156,169,502,35,1085,386,
+ 5368,3376,1942,162,168,190,192,167,170,171,
+ 172,173,174,2071,35,651,32,3123,3016,27,
+ 30,31,584,568,337,28,3023,35,651,32,
+ 273,2518,27,30,31,584,568,26,28,1303,
+ 25,23,50,1304,106,76,77,108,358,1311,
+ 1684,2423,1355,1355,5368,1142,322,502,35,1085,
+ 386,5368,5368,737,947,3597,1889,1899,536,5368,
+ 856,319,1101,35,394,313,540,3241,389,425,
+ 521,156,5368,4467,3802,55,228,524,350,200,
+ 4339,49,2384,275,156,5368,587,35,1085,386,
+ 1025,2501,180,4243,737,342,2791,1140,347,5368,
+ 203,215,4582,525,202,212,213,214,216,1033,
+ 169,5368,285,536,3765,1483,35,801,1991,168,
+ 49,186,167,170,171,172,173,174,671,1025,
+ 1588,228,4481,4704,427,502,35,1085,386,156,
+ 5368,502,35,1085,386,3316,322,180,4243,737,
+ 2150,326,333,5368,5368,203,215,4582,2034,202,
+ 212,213,214,216,5368,169,327,35,451,431,
+ 5368,4657,2510,1355,168,430,194,167,170,171,
+ 172,173,174,3023,35,651,32,5368,2518,27,
+ 30,31,584,568,26,28,1303,25,23,50,
+ 1304,106,76,77,108,54,1311,1692,1364,35,
+ 651,32,297,3236,27,30,31,584,568,337,
+ 28,5368,1499,35,651,32,734,3016,27,30,
+ 31,584,568,337,28,1715,35,651,32,734,
+ 3016,27,30,31,584,568,337,28,56,56,
+ 2616,56,1142,2558,2815,1142,1355,722,502,35,
+ 801,281,391,425,5368,856,319,1355,331,322,
+ 314,540,341,502,35,801,2000,5368,156,856,
+ 319,156,2491,350,313,540,2815,1803,101,671,
+ 3073,2150,856,319,4709,738,312,313,540,4210,
+ 344,2791,1140,347,2624,2968,35,651,32,312,
+ 2518,27,30,31,584,568,26,28,1303,25,
+ 23,50,1304,86,76,77,306,535,670,5368,
+ 56,2207,2036,293,3767,296,444,2194,2206,533,
+ 535,670,3023,35,651,32,5368,2518,27,30,
+ 31,584,568,26,28,1303,25,23,50,1304,
+ 106,76,77,108,1355,1699,1355,4482,843,35,
+ 451,2736,359,4657,3023,35,651,32,2291,2518,
+ 27,30,31,584,568,26,28,1303,25,23,
+ 50,1304,106,76,77,108,4233,1717,449,2276,
+ 35,1085,386,390,425,3023,35,651,32,566,
+ 2518,27,30,31,584,568,26,28,1303,25,
+ 23,50,1304,106,76,77,108,1563,1725,5368,
+ 5368,2815,56,49,2854,737,1142,1824,502,35,
+ 293,2815,1025,2330,440,671,454,1911,5368,228,
+ 4721,2815,1616,502,35,293,1142,56,3316,228,
+ 671,3135,156,56,56,4728,56,2592,2815,228,
+ 3278,3215,56,205,215,4582,4615,204,212,213,
+ 214,216,160,205,215,4582,341,204,212,213,
+ 214,216,5368,205,215,4582,3765,204,212,213,
+ 214,216,5368,206,208,210,294,295,1863,2970,
+ 217,207,209,206,208,210,294,295,1863,1613,
+ 217,207,209,206,208,210,294,295,1863,5368,
+ 217,207,209,332,333,5368,5368,5368,448,2194,
+ 2206,4319,56,3476,5368,4308,1126,56,3373,5368,
+ 5368,1255,5368,3599,2359,4308,4345,56,56,5368,
+ 56,3777,4698,3900,918,4308,3023,35,651,32,
+ 322,2518,27,30,31,584,568,26,28,1303,
+ 25,23,50,1304,106,76,77,85,3023,934,
+ 651,1545,299,2518,27,30,31,584,568,26,
+ 28,1303,25,23,50,1304,106,76,77,84,
+ 3023,35,651,32,5368,2518,27,30,31,584,
+ 568,26,28,1303,25,23,50,1304,106,76,
+ 77,83,3023,35,651,32,304,2518,27,30,
+ 31,584,568,26,28,1303,25,23,50,1304,
+ 106,76,77,82,3023,35,651,32,5368,2518,
+ 27,30,31,584,568,26,28,1303,25,23,
+ 50,1304,106,76,77,81,3023,35,651,32,
+ 5368,2518,27,30,31,584,568,26,28,1303,
+ 25,23,50,1304,106,76,77,80,3023,35,
+ 651,32,5368,2518,27,30,31,584,568,26,
+ 28,1303,25,23,50,1304,106,76,77,79,
+ 3023,35,651,32,5368,2518,27,30,31,584,
+ 568,26,28,1303,25,23,50,1304,106,76,
+ 77,78,2851,35,651,32,5368,2518,27,30,
+ 31,584,568,26,28,1303,25,23,50,1304,
+ 106,76,77,104,3023,35,651,32,5368,2518,
+ 27,30,31,584,568,26,28,1303,25,23,
+ 50,1304,106,76,77,110,3023,35,651,32,
+ 5368,2518,27,30,31,584,568,26,28,1303,
+ 25,23,50,1304,106,76,77,109,3023,35,
+ 651,32,5368,2518,27,30,31,584,568,26,
+ 28,1303,25,23,50,1304,106,76,77,107,
+ 3023,35,651,32,5368,2518,27,30,31,584,
+ 568,26,28,1303,25,23,50,1304,106,76,
+ 77,105,2063,35,1993,32,734,3016,27,30,
+ 31,584,568,337,28,1468,35,651,32,734,
+ 3016,27,30,31,584,568,337,28,56,5368,
+ 56,56,1142,1998,4735,1142,56,2815,56,56,
+ 1142,1616,2120,1436,2359,1142,1650,1101,35,394,
+ 2815,5368,2136,2359,5368,228,1703,4634,156,856,
+ 319,156,5368,2359,313,540,156,3232,228,2359,
+ 3233,160,856,319,737,2559,1268,313,540,205,
+ 215,4582,221,204,212,213,214,216,527,312,
+ 5368,303,205,215,4582,2359,204,212,213,214,
+ 216,179,1104,35,1085,386,5368,198,5368,206,
+ 208,210,294,295,1863,1355,518,207,209,307,
+ 535,670,206,208,210,294,295,1863,1737,517,
+ 207,209,2815,197,1355,3765,49,3503,2085,2359,
+ 2235,5368,2815,5368,2815,1025,2491,3149,2172,737,
+ 228,1355,2815,3241,56,2359,5368,2932,3552,2359,
+ 228,3081,2624,5368,5368,2359,3204,416,417,1992,
+ 228,5368,328,333,205,215,4582,302,204,212,
+ 213,214,216,3259,205,215,4582,5368,204,212,
+ 213,214,216,201,205,215,4582,199,204,212,
+ 213,214,216,298,206,208,210,294,295,1863,
+ 3765,218,207,209,206,208,210,294,295,1863,
+ 428,305,207,209,206,208,210,294,295,1863,
+ 503,497,207,209,1468,35,651,32,734,3016,
+ 27,30,31,584,568,337,28,3872,333,1692,
+ 35,651,32,5368,3236,27,30,31,584,568,
+ 337,28,1355,1355,1890,3182,35,1085,386,2513,
+ 3416,501,502,5368,1692,35,651,32,238,3236,
+ 27,30,31,584,568,337,28,2359,1355,56,
+ 5368,856,319,1142,2637,2871,313,540,722,273,
+ 1181,1355,2359,2359,2815,4819,856,319,788,331,
+ 2309,314,540,722,3333,5368,5368,5368,5368,156,
+ 4483,5368,228,722,331,3284,232,5368,4468,5368,
+ 5368,856,319,3439,331,5368,316,540,5368,350,
+ 222,193,5368,5368,5368,5368,1949,405,2914,5368,
+ 5368,236,230,231,5368,5368,344,2791,1140,347,
+ 5368,5368,274,1468,35,651,32,734,3016,27,
+ 30,31,584,568,337,28,406,407,408,294,
+ 295,1863,5368,5368,243,246,249,252,1037,1104,
+ 35,1085,386,1286,2158,5368,5368,2815,4819,5368,
+ 5368,1856,1779,35,651,32,2418,3016,27,30,
+ 31,584,568,337,28,228,5368,5368,5368,5368,
+ 856,319,5368,49,5368,313,540,5368,5368,5368,
+ 5368,5368,1025,47,5368,737,5368,2913,5368,1949,
+ 405,2914,587,35,1085,386,5368,5368,2741,1104,
+ 35,1085,386,5368,587,35,1085,386,5368,1914,
+ 319,5368,56,409,411,5368,2815,5368,5368,406,
+ 407,408,294,295,1863,5368,49,587,35,1085,
+ 386,5368,5368,49,341,1025,47,2775,49,5368,
+ 4573,5368,1025,47,1856,5368,3765,1025,47,5368,
+ 5368,1135,5368,587,35,1085,386,2970,2487,5368,
+ 5368,49,5368,2483,5368,5368,5368,1641,2618,5368,
+ 1025,47,2815,5368,1979,35,1085,386,5368,587,
+ 35,1085,386,3877,333,5368,3010,49,5368,5368,
+ 2624,587,35,1085,386,5368,1025,47,2168,35,
+ 1085,386,5368,5368,5368,737,409,412,49,3004,
+ 315,5368,3173,49,5368,56,1616,1025,47,536,
+ 1142,5368,1025,47,5368,49,56,5368,5368,5368,
+ 536,5368,49,3768,1025,47,5368,341,3465,56,
+ 5368,1025,47,536,5368,156,160,5368,341,5368,
+ 3471,5368,5368,5368,2322,5368,156,3783,503,5368,
+ 2970,341,5368,1616,5368,2479,3765,1142,5368,156,
+ 1391,2970,502,35,1085,386,1889,5368,2322,56,
+ 2815,2474,5368,536,2970,502,35,1085,386,502,
+ 35,1085,386,160,2680,5368,5368,5368,341,500,
+ 502,341,5368,4219,333,5368,49,5368,528,156,
+ 5368,5368,3586,56,5368,1025,662,536,188,49,
+ 5368,2970,5368,49,4543,5368,56,5368,1025,2043,
+ 536,531,1025,2765,5368,341,5368,5368,56,5368,
+ 56,2731,2815,156,2815,56,56,56,341,2815,
+ 2815,2815,188,5368,5368,5368,156,5368,4543,3696,
+ 341,5368,341,5368,5368,188,5368,341,341,341,
+ 5368,4543,5368,5368,5368,5368,5368,5368,5368,5368,
+ 5368,4295,5368,2970,5368,2970,5368,5368,5368,5368,
+ 2970,2970,2970,1648,5368,2973,5368,5368,5368,5368,
+ 507,505,532,5368,5368,5368,5368,5368,5368,5368,
+ 5368,5368,5368,5368,5368,4314,5368,5368,5368,5368,
+ 5368,5368,5368,5368,5368,5368,5368,5368,4331,5368,
+ 5368,5368,5368,5368,5368,5368,5368,5368,5368,5368,
+ 5368,5368,5368,5368,5368,5368,5368,5368,5368,5368,
+ 5368,5368,5368,5368,5368,5368,5368,5368,5368,5368,
+ 5368,5368,5368,5368,5368,5368,5368,5368,5368,5368,
+ 5368,5368,5368,5368,4236,5368,0,2115,1,0,
+ 39,5383,1,0,39,5382,1,0,38,625,
+ 0,38,5383,0,38,5382,0,452,774,0,
+ 438,867,0,1172,29,0,5383,48,0,5382,
+ 48,0,5380,381,0,5379,381,0,39,5383,
+ 0,39,5382,0,1,442,0,456,953,0,
+ 455,1475,0,35,33,0,1172,385,0,47,
+ 37,0,2570,126,0,1,1046,0,1,5640,
+ 0,1,5639,0,1,5638,0,1,5637,0,
+ 1,5636,0,1,5635,0,1,5634,0,1,
+ 5633,0,1,5632,0,1,5631,0,1,5630,
+ 0,283,392,0,283,286,0,5602,241,0,
+ 5601,241,0,5704,241,0,5703,241,0,5629,
+ 241,0,5628,241,0,5627,241,0,5626,241,
+ 0,5625,241,0,5624,241,0,5623,241,0,
+ 5622,241,0,5640,241,0,5639,241,0,5638,
+ 241,0,5637,241,0,5636,241,0,5635,241,
+ 0,5634,241,0,5633,241,0,5632,241,0,
+ 5631,241,0,5630,241,0,39,5383,241,0,
+ 39,5382,241,0,5406,241,0,43,5404,0,
+ 43,37,0,2156,91,0,32,34,0,39,
+ 625,0,329,443,0,5374,1,0,5373,1,
+ 0,237,2725,0,32,386,0,29,385,0,
+ 2570,128,0,2570,127,0,499,1862,0,5406,
+ 1,229,0,39,1,229,0,229,414,0,
+ 5383,37,0,5382,37,0,5404,45,0,37,
+ 45,0,5406,1,0,39,1,0,1,92,
+ 0,5378,403,0,5377,403,0,4414,1,0,
+ 3580,1,0,625,1,0,229,413,0,1948,
+ 381,0,5383,2,37,0,5382,2,37,0,
+ 5383,36,0,5382,36,0,1,329,0,8,
+ 12,0,329,95,0,35,73,0,499,4226,
+ 0,1,229,0,229,220,0,278,3782,0,
+ 229,219,0,1,3302,0,1,3392,0,5380,
+ 1,0,5376,1,0,1,229,2554,0,5377,
+ 229,0,2560,229,0,2785,229,0,10,12,
+ 0,8,10,12,0,185,3384,0
};
};
public final static char baseAction[] = BaseAction.baseAction;
@@ -1449,345 +1446,345 @@ public class CPPNoFunctionDeclaratorParserprs implements lpg.lpgjavaruntime.Pars
public interface TermAction {
public final static char termAction[] = {0,
- 5383,5360,5336,5336,5336,5336,5336,5336,5370,5336,
+ 5368,5345,5321,5321,5321,5321,5321,5321,5355,5321,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,5364,1,1,1,1,
+ 1,1,1,1,1,5349,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,139,1,
- 1,1,1,1,1,1,1,1,1,1519,
- 5558,1,1182,115,1993,1,1,5394,5383,3743,
- 5383,5390,731,4798,1124,2435,4216,2213,3782,2206,
- 2929,2384,1302,2366,3453,2336,10,5373,5373,5373,
- 5373,5373,5373,5373,5373,5373,5373,5373,5373,5373,
- 5373,5373,5373,5373,5373,5373,5373,5373,5373,5373,
- 5373,5373,5373,5373,5373,5373,5373,5373,5373,5373,
- 5373,5373,5373,5373,5373,5373,5373,5373,5373,5373,
- 5373,5373,5373,5373,329,5373,5373,5373,5373,5373,
- 5373,393,5373,5373,5373,5373,5373,5373,5373,2251,
- 5373,5373,5373,5373,3586,3712,3680,5373,382,5383,
- 5373,5373,5373,5373,5373,5373,5373,5373,5373,5373,
- 5373,5373,8,5376,5376,5376,5376,5376,5376,5376,
- 5376,5376,5376,5376,5376,5376,5376,5376,5376,5376,
- 5376,5376,5376,5376,5376,5376,5376,5376,5376,5376,
- 5376,5376,5376,5376,5376,5376,5376,5376,5376,5376,
- 5376,5376,5376,5376,5376,5376,5376,5376,5376,5376,
- 5383,5376,5376,5376,5376,5376,5376,5836,5376,5376,
- 5376,5376,5376,5376,5376,301,5376,5376,5376,5376,
- 286,5129,5129,5376,283,5683,5376,5376,5376,5376,
- 5376,5376,5376,5376,5376,5376,5376,5376,5383,5360,
- 5336,5336,5336,5336,5336,5336,5367,5336,1,1,
+ 1,1,1,1,1,1,1,1,1,936,
+ 5543,1,1476,115,2028,1,1,5379,5368,3735,
+ 5368,5375,736,4756,1124,2715,4275,2213,4249,2529,
+ 2929,2713,660,2688,3371,2619,10,5358,5358,5358,
+ 5358,5358,5358,5358,5358,5358,5358,5358,5358,5358,
+ 5358,5358,5358,5358,5358,5358,5358,5358,5358,5358,
+ 5358,5358,5358,5358,5358,5358,5358,5358,5358,5358,
+ 5358,5358,5358,5358,5358,5358,5358,5358,5358,5358,
+ 5358,5358,5358,5358,329,5358,5358,5358,5358,5358,
+ 5358,393,5358,5358,5358,5358,5358,5358,5358,2251,
+ 5358,5358,5358,5358,3578,3704,3672,5358,382,5368,
+ 5358,5358,5358,5358,5358,5358,5358,5358,5358,5358,
+ 5358,5358,8,5361,5361,5361,5361,5361,5361,5361,
+ 5361,5361,5361,5361,5361,5361,5361,5361,5361,5361,
+ 5361,5361,5361,5361,5361,5361,5361,5361,5361,5361,
+ 5361,5361,5361,5361,5361,5361,5361,5361,5361,5361,
+ 5361,5361,5361,5361,5361,5361,5361,5361,5361,5361,
+ 5368,5361,5361,5361,5361,5361,5361,5821,5361,5361,
+ 5361,5361,5361,5361,5361,301,5361,5361,5361,5361,
+ 286,5114,5114,5361,283,5668,5361,5361,5361,5361,
+ 5361,5361,5361,5361,5361,5361,5361,5361,5368,5345,
+ 5321,5321,5321,5321,5321,5321,5352,5321,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,5364,1,1,1,1,1,1,
+ 1,1,1,5349,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,5383,1,1,1,
- 1,1,1,437,1,1,1,1519,5558,1,
- 1182,5383,1993,1,1,5394,5383,5066,5063,5391,
- 5421,5383,1124,2435,4216,2213,3782,2206,2929,2384,
- 1302,2366,3453,2336,5383,5360,5336,5336,5336,5336,
- 5336,5336,5367,5336,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,5364,
+ 1,1,1,1,1,1,5368,1,1,1,
+ 1,1,1,437,1,1,1,936,5543,1,
+ 1476,5368,2028,1,1,5379,5368,5051,5048,5376,
+ 5406,5368,1124,2715,4275,2213,4249,2529,2929,2713,
+ 660,2688,3371,2619,5368,5345,5321,5321,5321,5321,
+ 5321,5321,5352,5321,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,5349,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,5390,1,1,1,1,1,1,135,
- 1,1,1,1519,5558,1,1182,117,1993,1,
- 1,5394,5383,3743,5383,5816,5817,5818,1124,2435,
- 4216,2213,3782,2206,2929,2384,1302,2366,3453,2336,
- 5383,5360,5336,5336,5336,5336,5336,5336,5367,5336,
+ 1,1,5375,1,1,1,1,1,1,135,
+ 1,1,1,936,5543,1,1476,117,2028,1,
+ 1,5379,5368,3735,5368,5801,5802,5803,1124,2715,
+ 4275,2213,4249,2529,2929,2713,660,2688,3371,2619,
+ 5368,5345,5321,5321,5321,5321,5321,5321,5352,5321,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,5364,1,1,1,1,
+ 1,1,1,1,1,5349,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,5383,1,
- 1,1,1,1,1,5383,1,1,1,1519,
- 5558,1,1182,5383,1993,1,1,5394,2300,3712,
- 3680,5383,5397,5398,1124,2435,4216,2213,3782,2206,
- 2929,2384,1302,2366,3453,2336,5383,5360,5336,5336,
- 5336,5336,5336,5336,5367,5336,1,1,1,1,
+ 1,1,1,1,1,1,1,1,5368,1,
+ 1,1,1,1,1,5368,1,1,1,936,
+ 5543,1,1476,5368,2028,1,1,5379,2300,3704,
+ 3672,5368,5382,5383,1124,2715,4275,2213,4249,2529,
+ 2929,2713,660,2688,3371,2619,5368,5345,5321,5321,
+ 5321,5321,5321,5321,5352,5321,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,5364,1,1,1,1,1,1,1,1,
+ 1,5349,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,5383,1,1,1,1,1,
- 1,5383,1,1,1,1519,5558,1,1182,116,
- 1993,1,1,5394,111,3743,5383,5054,5051,5383,
- 1124,2435,4216,2213,3782,2206,2929,2384,1302,2366,
- 3453,2336,5383,5360,5336,5336,5336,5336,5336,5336,
- 5367,5336,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,5364,1,1,
+ 1,1,1,1,5368,1,1,1,1,1,
+ 1,5368,1,1,1,936,5543,1,1476,116,
+ 2028,1,1,5379,111,3735,5368,5039,5036,5368,
+ 1124,2715,4275,2213,4249,2529,2929,2713,660,2688,
+ 3371,2619,5368,5345,5321,5321,5321,5321,5321,5321,
+ 5352,5321,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,5349,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 5383,1,1,1,1,1,1,5822,1,1,
- 1,1519,5558,1,1182,5383,1993,1,1,5394,
- 39,3712,3680,4102,5421,4124,1124,2435,4216,2213,
- 3782,2206,2929,2384,1302,2366,3453,2336,5383,5360,
- 5336,5336,5336,5336,5336,5336,5367,5336,1,1,
+ 5368,1,1,1,1,1,1,5807,1,1,
+ 1,936,5543,1,1476,5368,2028,1,1,5379,
+ 39,3704,3672,4094,5406,4116,1124,2715,4275,2213,
+ 4249,2529,2929,2713,660,2688,3371,2619,5368,5345,
+ 5321,5321,5321,5321,5321,5321,5352,5321,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,5364,1,1,1,1,1,1,
+ 1,1,1,5349,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,
- 1,1,1,5383,1,1,1,1519,5558,1,
- 1182,5383,1993,1,1,5394,5383,5397,5398,5718,
- 5719,3504,1124,2435,4216,2213,3782,2206,2929,2384,
- 1302,2366,3453,2336,5383,5360,5336,5336,5336,5336,
- 5336,5336,5367,5336,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,5364,
+ 1,1,1,5368,1,1,1,936,5543,1,
+ 1476,5368,2028,1,1,5379,5368,5382,5383,5703,
+ 5704,2989,1124,2715,4275,2213,4249,2529,2929,2713,
+ 660,2688,3371,2619,5368,5345,5321,5321,5321,5321,
+ 5321,5321,5352,5321,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,5349,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,5383,1,1,1,1,1,1,5383,
- 1,1,1,1519,5558,1,1182,8,1993,1,
- 1,5394,5383,5066,5063,5324,5421,5383,1124,2435,
- 4216,2213,3782,2206,2929,2384,1302,2366,3453,2336,
- 5383,5360,5336,5336,5336,5336,5336,5336,5367,5336,
+ 1,1,5368,1,1,1,1,1,1,5368,
+ 1,1,1,936,5543,1,1476,8,2028,1,
+ 1,5379,5368,5051,5048,5309,5406,5368,1124,2715,
+ 4275,2213,4249,2529,2929,2713,660,2688,3371,2619,
+ 5368,5345,5321,5321,5321,5321,5321,5321,5352,5321,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,5364,1,1,1,1,
+ 1,1,1,1,1,5349,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,5324,1,
- 1,1,1,1,1,5893,1,1,1,1519,
- 5558,1,1182,5383,1993,1,1,5394,121,1384,
- 5383,125,5710,2804,1124,2435,4216,2213,3782,2206,
- 2929,2384,1302,2366,3453,2336,5383,5360,5336,5336,
- 5336,5336,5336,5336,5367,5336,1,1,1,1,
+ 1,1,1,1,1,1,1,1,5309,1,
+ 1,1,1,1,1,5878,1,1,1,936,
+ 5543,1,1476,5368,2028,1,1,5379,121,1296,
+ 5368,125,1253,2725,1124,2715,4275,2213,4249,2529,
+ 2929,2713,660,2688,3371,2619,5368,5345,5321,5321,
+ 5321,5321,5321,5321,5352,5321,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,5364,1,1,1,1,1,1,1,1,
+ 1,5349,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,5383,1,1,1,1,1,
- 1,5383,1,1,1,1519,5558,1,1182,5383,
- 1993,1,1,5394,5383,629,2872,5387,629,2872,
- 1124,2435,4216,2213,3782,2206,2929,2384,1302,2366,
- 3453,2336,5383,2283,1,1,1,1,1,1,
- 2291,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,5392,1,1,
+ 1,1,1,1,5368,1,1,1,1,1,
+ 1,5368,1,1,1,936,5543,1,1476,5368,
+ 2028,1,1,5379,5368,629,2872,5372,629,2872,
+ 1124,2715,4275,2213,4249,2529,2929,2713,660,2688,
+ 3371,2619,5368,2554,1,1,1,1,1,1,
+ 2560,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,5377,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 5383,1,1,1,1,1,1,5383,1,1,
- 1,1519,5558,1,1182,5383,1993,1,1,5394,
- 395,5397,5398,48,5054,5051,1124,2435,4216,2213,
- 3782,2206,2929,2384,1302,2366,3453,2336,39,5066,
- 5063,4786,2115,3926,3992,2749,5386,4014,871,5647,
- 5645,5654,5653,5649,5650,5648,5651,5652,5655,5646,
- 5643,5718,5719,114,5637,5644,5640,5616,5642,5641,
- 5638,5639,5617,3970,3948,4058,4036,5402,5779,3904,
- 1085,1261,5404,1139,3643,1217,452,5405,5403,1051,
- 5399,5400,5401,5383,2322,5780,5781,800,318,1393,
- 5383,5258,5258,229,5254,229,229,229,5262,229,
+ 5368,1,1,1,1,1,1,5368,1,1,
+ 1,936,5543,1,1476,5368,2028,1,1,5379,
+ 395,5382,5383,48,5039,5036,1124,2715,4275,2213,
+ 4249,2529,2929,2713,660,2688,3371,2619,39,5051,
+ 5048,4745,2115,3918,3984,3580,5371,4006,791,5632,
+ 5630,5639,5638,5634,5635,5633,5636,5637,5640,5631,
+ 5628,5703,5704,114,5622,5629,5625,5601,5627,5626,
+ 5623,5624,5602,3962,3940,4050,4028,5387,5764,3896,
+ 1181,1259,5389,1182,3635,1217,452,5390,5388,1114,
+ 5384,5385,5386,5368,2283,5765,5766,2763,318,1393,
+ 5368,5243,5243,229,5239,229,229,229,5247,229,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,229,1,1,1,1,
- 1,1,1,1,1,5383,5397,5398,5383,5383,
- 1,5042,1,5029,5025,5292,5022,5298,5251,5295,
- 5393,224,4102,5383,4124,131,1,1,1,2637,
- 5793,1350,1174,129,593,225,1,5392,290,5397,
- 5398,414,229,5643,5718,5719,5383,5637,5644,5640,
- 5616,5642,5641,5638,5639,5617,5881,5643,5718,5719,
- 5383,5637,5644,5640,5616,5642,5641,5638,5639,5617,
- 4080,681,5816,5817,5818,5383,5258,5258,229,5254,
- 229,229,229,5301,229,1,1,1,1,1,
+ 1,1,1,1,1,5368,5382,5383,5368,5368,
+ 1,5027,1,5014,5010,5277,5007,5283,5236,5280,
+ 5378,224,4094,5368,4116,131,1,1,1,3026,
+ 5778,1350,1174,129,593,225,1,5377,290,5382,
+ 5383,414,229,5628,5703,5704,5368,5622,5629,5625,
+ 5601,5627,5626,5623,5624,5602,5866,5628,5703,5704,
+ 5368,5622,5629,5625,5601,5627,5626,5623,5624,5602,
+ 4072,964,5801,5802,5803,5368,5243,5243,229,5239,
+ 229,229,229,5286,229,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
229,1,1,1,1,1,1,1,1,1,
- 3478,310,5383,33,2069,1,5078,133,29,5078,
- 5383,5078,5078,5251,392,5126,5126,5383,283,2390,
- 2362,1,1,1,2637,5793,39,1174,5078,118,
- 5421,137,329,5021,5383,329,413,229,5078,5078,
- 5078,5078,5389,343,5066,5063,2664,2115,625,329,
- 2749,5881,329,1,5383,226,738,124,5078,139,
- 1854,361,283,1077,3521,3340,5078,5816,5817,5818,
- 1092,5078,5078,5078,5078,5078,5078,5643,5718,5719,
- 422,5637,5644,5640,5616,5642,5641,5638,5639,5617,
- 5078,5078,5078,5078,5078,5078,5078,5078,5078,5078,
- 5078,5078,5078,5078,5078,2332,1350,5388,5078,5078,
- 5078,5078,5078,5078,5078,5078,5078,5078,5078,5078,
- 5078,5383,5078,5078,5221,317,361,5221,1867,5221,
- 5221,1185,365,5029,5025,2664,5022,625,1,2749,
- 5383,1,5383,361,629,2872,5221,1,5029,5025,
- 4422,5022,625,5383,2749,157,5221,5221,5221,5221,
- 2251,5391,36,5318,5315,3586,1824,1781,1738,1695,
- 1652,1609,1566,1523,1480,1437,5221,138,1,5029,
- 5025,4422,5022,625,5221,2749,309,134,1350,5221,
- 5221,5221,5221,5221,5221,1350,442,1,1,5383,
- 1,1221,5069,309,91,5069,123,5218,5221,5221,
- 5221,5221,5221,5221,5221,5221,5221,5221,5221,5221,
- 5221,5221,5221,1003,5390,1910,5221,5221,5221,5221,
- 5221,5221,5221,5221,5221,5221,5221,5221,5221,5383,
- 5221,5221,5383,5336,5336,229,5336,229,229,229,
- 5339,229,1,1,1,1,1,1,1,1,
+ 3793,310,5368,33,2069,1,5063,133,29,5063,
+ 5368,5063,5063,5236,392,5111,5111,5368,283,2390,
+ 2362,1,1,1,3026,5778,39,1174,5063,118,
+ 5406,137,329,5006,5368,329,413,229,5063,5063,
+ 5063,5063,5374,343,5051,5048,2664,2115,625,329,
+ 3580,5866,329,1,5368,226,1427,124,5063,139,
+ 1469,361,283,1172,3513,3346,5063,5801,5802,5803,
+ 1092,5063,5063,5063,5063,5063,5063,5628,5703,5704,
+ 422,5622,5629,5625,5601,5627,5626,5623,5624,5602,
+ 5063,5063,5063,5063,5063,5063,5063,5063,5063,5063,
+ 5063,5063,5063,5063,5063,2332,1350,5373,5063,5063,
+ 5063,5063,5063,5063,5063,5063,5063,5063,5063,5063,
+ 5063,5368,5063,5063,5206,317,361,5206,1867,5206,
+ 5206,1185,365,5014,5010,2664,5007,625,1,3580,
+ 5368,1,5368,361,629,2872,5206,1,5014,5010,
+ 4414,5007,625,5368,3580,157,5206,5206,5206,5206,
+ 2251,5376,36,5303,5300,3578,1824,1781,1738,1695,
+ 1652,1609,1566,1523,1480,1437,5206,138,1,5014,
+ 5010,4414,5007,625,5206,3580,309,134,1350,5206,
+ 5206,5206,5206,5206,5206,1350,442,1,1,5368,
+ 1,1221,5054,309,91,5054,123,5203,5206,5206,
+ 5206,5206,5206,5206,5206,5206,5206,5206,5206,5206,
+ 5206,5206,5206,1003,5375,1910,5206,5206,5206,5206,
+ 5206,5206,5206,5206,5206,5206,5206,5206,5206,5368,
+ 5206,5206,5368,5321,5321,229,5321,229,229,229,
+ 5324,229,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,229,1,1,
- 8691,1,1,1,1,1,1,1185,37,5383,
- 5066,5063,1,2115,5224,2332,2749,39,227,120,
- 5333,5421,113,629,2872,1,5383,5383,1,1,
- 1,3187,5594,161,1182,5395,1993,1811,5383,3411,
- 5643,5718,5719,220,5637,5644,5640,5616,5642,5641,
- 5638,5639,5617,5383,3521,3340,5419,939,5881,5383,
- 5336,5336,229,5336,229,229,229,229,229,1,
+ 8676,1,1,1,1,1,1,1185,37,5368,
+ 5051,5048,1,2115,5209,2332,3580,39,227,120,
+ 5318,5406,113,629,2872,1,5368,5368,1,1,
+ 1,3661,5579,161,1476,5380,2028,1820,5368,3619,
+ 5628,5703,5704,220,5622,5629,5625,5601,5627,5626,
+ 5623,5624,5602,5368,3513,3346,5404,939,5866,5368,
+ 5321,5321,229,5321,229,229,229,229,229,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,229,1,1,8691,1,1,
- 1,1,1,1,5394,37,5084,5084,161,1,
- 5084,329,5066,5063,4422,2115,625,5333,2749,112,
- 1953,4102,5383,4124,1889,1,1,1,3187,5594,
- 5389,1182,301,1993,5383,5029,5025,4422,5022,625,
- 1,2749,5683,1,456,5383,5029,5025,4422,5022,
- 625,5321,2749,3667,5321,5881,5383,5336,5336,229,
- 5336,229,229,229,5345,229,1,1,1,1,
+ 1,1,1,1,229,1,1,8676,1,1,
+ 1,1,1,1,5379,37,5069,5069,161,1,
+ 5069,329,5051,5048,4414,2115,625,5318,3580,112,
+ 1953,4094,5368,4116,1906,1,1,1,3661,5579,
+ 5374,1476,301,2028,5368,5014,5010,4414,5007,625,
+ 1,3580,5668,1,456,5368,5014,5010,4414,5007,
+ 625,5306,3580,3445,5306,5866,5368,5321,5321,229,
+ 5321,229,229,229,5330,229,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,229,1,1,8691,1,1,1,1,1,
- 1,3235,4869,47,5917,5388,1,132,1,5029,
- 5025,5292,5022,5298,5333,5295,593,5072,4102,122,
- 4124,5383,1,1,1,3187,5594,1047,1182,5393,
- 1993,1,5029,5025,2664,5022,625,219,2749,5230,
- 126,1,5280,5280,394,5277,5392,329,385,361,
- 329,2501,5881,5383,5336,5336,229,5336,229,229,
- 229,5339,229,1,1,1,1,1,1,1,
+ 1,229,1,1,8676,1,1,1,1,1,
+ 1,3458,4877,47,5902,5373,1,132,1,5014,
+ 5010,5277,5007,5283,5318,5280,593,5057,4094,122,
+ 4116,5368,1,1,1,3661,5579,1047,1476,5378,
+ 2028,1,5014,5010,2664,5007,625,219,3580,5215,
+ 126,1,5265,5265,394,5262,5377,329,385,361,
+ 329,2458,5866,5368,5321,5321,229,5321,229,229,
+ 229,5324,229,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,229,1,
- 1,8691,1,1,1,1,1,1,37,5084,
- 5084,4190,5383,1,1350,2597,443,39,39,1077,
- 5421,5333,5227,5383,5233,5227,629,2872,5087,1,
- 1,1,3187,5594,361,1182,356,1993,1,343,
- 39,39,3312,5421,220,329,5389,5383,329,5383,
- 1,361,455,3312,2525,2431,5419,5383,5230,5881,
- 5383,5336,5336,229,5336,229,229,229,5339,229,
+ 1,8676,1,1,1,1,1,1,37,5069,
+ 5069,4182,5368,1,1350,2597,443,39,39,1172,
+ 5406,5318,5212,5368,5218,5212,629,2872,5072,1,
+ 1,1,3661,5579,361,1476,356,2028,1,343,
+ 39,39,2679,5406,220,329,5374,5368,329,5368,
+ 1,361,455,2679,2525,2431,5404,5368,5215,5866,
+ 5368,5321,5321,229,5321,229,229,229,5324,229,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,229,1,1,8691,1,
+ 1,1,1,1,1,229,1,1,8676,1,
1,1,1,1,1,92,1,1,136,1,
- 1,5283,1350,130,5283,5383,5066,5063,5333,2115,
- 625,5388,2749,1350,5383,5075,1,1,1,3187,
- 5594,5782,1182,5233,1993,4336,5738,2988,5383,8538,
- 8437,220,309,5029,5025,4422,5022,625,5321,2749,
- 5383,5321,43,5215,5215,5383,5881,5383,5336,5336,
- 229,5336,229,229,229,229,229,1,1,1,
+ 1,5268,1350,130,5268,5368,5051,5048,5318,2115,
+ 625,5373,3580,1350,5368,5060,1,1,1,3661,
+ 5579,5767,1476,5218,2028,4328,5723,4320,5368,8523,
+ 8422,220,309,5014,5010,4414,5007,625,5306,3580,
+ 5368,5306,43,5200,5200,5368,5866,5368,5321,5321,
+ 229,5321,229,229,229,229,229,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,229,1,1,8691,1,1,1,1,
- 1,1,1813,5383,5383,5066,5063,1,2115,5224,
- 5212,2749,95,39,39,5333,5421,2300,5327,2390,
- 2362,5327,1,1,1,1,3187,5594,1819,1182,
- 5354,1993,1,5029,5025,4422,5022,625,5383,2749,
- 1,5029,5025,2664,5022,625,438,2749,5383,5383,
- 8678,8678,2287,5881,5383,5336,5336,229,5336,229,
+ 1,1,229,1,1,8676,1,1,1,1,
+ 1,1,1821,5368,5368,5051,5048,1,2115,5209,
+ 5197,3580,95,39,39,5318,5406,2300,5312,2390,
+ 2362,5312,1,1,1,1,3661,5579,1828,1476,
+ 5339,2028,1,5014,5010,4414,5007,625,5368,3580,
+ 1,5014,5010,2664,5007,625,438,3580,5368,5368,
+ 8663,8663,2287,5866,5368,5321,5321,229,5321,229,
229,229,229,229,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,229,
- 1,1,8691,1,1,1,1,1,1,5394,
- 5383,5383,5066,5063,1,2115,625,5419,2749,403,
- 5383,5045,5333,1350,1047,39,2569,5286,2988,5421,
- 1,1,1,3187,5594,5383,1182,1,1993,426,
- 3312,38,5039,5036,5289,339,5033,2767,2749,5383,
- 5397,5398,513,29,625,5383,2749,5383,8538,8437,
- 5881,5383,5336,5336,229,5336,229,229,229,229,
+ 1,1,8676,1,1,1,1,1,1,5379,
+ 5368,5368,5051,5048,1,2115,625,5404,3580,403,
+ 5368,5030,5318,1350,1047,39,2856,5271,4320,5406,
+ 1,1,1,3661,5579,5368,1476,1,2028,426,
+ 2679,38,5024,5021,5274,339,5018,2601,3580,5368,
+ 5382,5383,513,29,625,5368,3580,5368,8523,8422,
+ 5866,5368,5321,5321,229,5321,229,229,229,229,
229,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,229,1,1,8691,
- 1,1,1,1,1,1,5383,5397,5398,345,
- 1350,1,1940,1820,5395,339,346,339,5048,5333,
- 339,3282,393,5383,5268,5265,386,1,1,1,
- 3187,5594,880,1182,1,1993,530,5816,5817,5818,
- 1,37,5084,5084,5348,119,5383,329,5357,1,
- 5029,5025,4786,5022,3926,3992,2749,5881,4014,5090,
- 5117,5123,5096,5099,5111,5108,5114,5105,5102,5093,
- 5120,5419,1350,5394,5351,5383,5054,5051,5383,1350,
- 3521,3340,2035,5383,3970,3948,4058,4036,5402,5419,
- 3904,1085,1261,5404,1139,3643,1217,2196,5405,5403,
- 1051,5399,5400,5401,45,5274,5274,5383,1,237,
- 1393,5390,5236,5383,39,39,526,514,39,5066,
- 5063,4786,2115,3926,3992,2749,5304,4014,1341,5647,
- 5645,5654,5653,5649,5650,5648,5651,5652,5655,5646,
- 4080,681,1,1,5383,5383,4233,3594,4219,360,
- 163,4221,5271,3970,3948,4058,4036,5402,5383,3904,
- 1085,1261,5404,1139,3643,1217,5393,5405,5403,1051,
- 5399,5400,5401,37,5084,5084,5383,5311,5307,1393,
- 5383,526,100,5392,5383,5060,291,4220,2619,5390,
- 39,5066,5063,4786,2115,3926,3992,2749,5057,4014,
- 1341,5647,5645,5654,5653,5649,5650,5648,5651,5652,
- 5655,5646,289,5383,5383,163,4292,3284,368,3024,
- 5383,3295,1,3388,5419,3970,3948,4058,4036,5402,
- 5393,3904,1085,1261,5404,1139,3643,1217,5383,5405,
- 5403,1051,5399,5400,5401,4341,5383,5392,366,5383,
- 2354,1393,3592,103,5383,2039,3672,5060,141,5066,
- 5063,4786,2115,3926,3992,2749,5383,4014,1341,5647,
- 5645,5654,5653,5649,5650,5648,5651,5652,5655,5646,
- 5383,1,1135,5383,2984,99,1899,1264,3504,191,
- 1,5383,385,3970,3948,4058,4036,5402,5383,3904,
- 1085,1261,5404,1139,3643,1217,191,5405,5403,1051,
- 5399,5400,5401,446,418,5383,5383,1307,48,1393,
- 424,1077,5398,39,39,39,5066,5063,4786,2115,
- 3926,3992,2749,5057,4014,1341,5647,5645,5654,5653,
- 5649,5650,5648,5651,5652,5655,5646,5081,2077,278,
- 5383,5383,5342,3186,2018,3898,35,506,1,5383,
- 3970,3948,4058,4036,5402,5383,3904,1085,1261,5404,
- 1139,3643,1217,5398,5405,5403,1051,5399,5400,5401,
- 5740,5383,373,2164,3878,2508,1393,2126,5383,5383,
- 4222,447,5060,1,5029,5025,4786,5022,3926,3992,
- 2749,5383,4014,5090,5117,5123,5096,5099,5111,5108,
- 5114,5105,5102,5093,5120,1,5383,1,1391,48,
- 5850,5844,5383,5397,5848,3602,4447,5348,3970,3948,
- 4058,4036,5402,5383,3904,1085,1261,5404,1139,3643,
- 1217,5383,5405,5403,1051,5399,5400,5401,4443,5383,
- 5842,5843,5873,5874,1393,5383,5851,5351,39,39,
- 2983,2683,393,5383,73,2035,5383,5383,2477,5383,
- 5853,3426,4446,3037,5397,5383,5383,3434,740,4883,
- 912,956,5383,5854,5852,5875,308,5383,3784,504,
- 4893,5383,5383,5383,4460,4917,1889,5383,5383,519,
- 2477,3391,5864,5863,5876,5383,185,5845,5846,5869,
- 5870,5867,5868,5847,5849,5871,5872,1077,3455,5330,
- 5877,3875,5857,5858,5859,5855,5856,5865,5866,5861,
- 5860,5862,39,5066,5063,4786,2115,3926,3992,2749,
- 5387,4014,1341,5647,5645,5654,5653,5649,5650,5648,
- 5651,5652,5655,5646,3091,5383,4203,5383,4744,2,
- 4550,5383,3602,5383,5383,5383,1996,3970,3948,4058,
- 4036,5402,1,3904,1085,1261,5404,1139,3643,1217,
- 5383,5405,5403,1051,5399,5400,5401,39,5066,5063,
- 4786,2115,3926,3992,2749,4351,4014,1341,5647,5645,
- 5654,5653,5649,5650,5648,5651,5652,5655,5646,508,
- 5383,1992,5383,5383,37,5383,5383,2477,5383,5383,
- 5383,5383,3970,3948,4058,4036,5402,5380,3904,1085,
- 1261,5404,1139,3643,1217,5383,5405,5403,1051,5399,
- 5400,5401,5383,5383,5383,5383,5383,5383,1393,5386,
- 39,5066,5063,4786,2115,3926,3992,2749,5383,4014,
- 1341,5647,5645,5654,5653,5649,5650,5648,5651,5652,
- 5655,5646,5383,5383,5383,5383,5383,5383,805,5383,
- 5383,5383,5383,5383,5383,3970,3948,4058,4036,5402,
- 5383,3904,1085,1261,5404,1139,3643,1217,5383,5405,
- 5403,1051,5399,5400,5401,39,5066,5063,4786,2115,
- 3926,3992,2749,1690,4014,1341,5647,5645,5654,5653,
- 5649,5650,5648,5651,5652,5655,5646,5383,5383,5383,
- 5383,5383,5383,5383,5383,5383,5383,5383,5383,5383,
- 3970,3948,4058,4036,5402,5383,3904,1085,1261,5404,
- 1139,3643,1217,5383,5405,5403,1051,5399,5400,5401,
- 5383,5383,5383,5383,5383,5383,1393,39,5066,5063,
- 4829,2115,3926,3992,2749,5383,4014,1341,5647,5645,
- 5654,5653,5649,5650,5648,5651,5652,5655,5646,5383,
- 5383,5383,5383,5383,5383,5383,5383,5383,5383,5383,
- 5383,5383,3970,3948,4058,4036,5402,5383,3904,1085,
- 1261,5404,1139,3643,1217,5383,5405,5403,1051,5399,
- 5400,5401,39,5066,5063,4786,2115,3926,3992,2749,
- 5383,4014,1341,5647,5645,5654,5653,5649,5650,5648,
- 5651,5652,5655,5646,5383,5383,5383,5383,5383,5383,
- 5383,5383,5383,5383,5383,5383,5383,3970,3948,4058,
- 4036,5402,5383,3904,1085,1261,5404,1139,3643,1217,
- 5383,5405,5403,1051,5399,5400,5401,39,5066,5063,
- 4786,2115,3926,3992,2749,5383,4014,1341,5647,5645,
- 5654,5653,5649,5650,5648,5651,5652,5655,5646,5383,
- 5383,5383,5383,5383,5383,5383,5383,5383,5383,5383,
- 5383,5383,3970,3948,4058,4036,5402,5383,3904,1085,
- 1261,5404,1139,3643,1217,5383,5405,5403,1051,5399,
- 5400,5401,5383,5066,5063,5383,5421,5383,5383,5383,
- 5383,5383,574,5647,5645,5654,5653,5649,5650,5648,
- 5651,5652,5655,5646,5643,5718,5719,5383,5637,5644,
- 5640,5616,5642,5641,5638,5639,5617,5383,5383,5383,
- 5383,5383,5779,5383,5383,5383,5383,5383,5383,5383,
- 5383,241,5205,5201,5383,5209,5383,5383,2322,5780,
- 5781,574,5192,5198,5171,5174,5186,5183,5189,5180,
- 5177,5168,5195,5147,5141,5138,5383,5165,5144,5156,
- 5135,5150,5153,5162,5159,5132,128,5383,127,5383,
- 5383,5779,29,385,385,5242,385,385,5242,385,
- 5242,5242,5383,5383,5383,5383,5383,2322,5780,5781,
- 5383,5383,5383,5383,385,385,385,5242,385,385,
- 385,385,385,385,385,385,385,5383,5383,5383,
- 5383,5383,5383,5383,5383,5383,5383,5383,5383,75,
- 5383,2597,3069,2597,5383,5383,5383,5048,5383,5383,
- 5383,5383,5383,5383,5245,5242,5248,5383,5383,5383,
- 5383,5383,5383,5383,5383,5242,32,386,386,5239,
- 386,386,5239,386,5239,5239,5445,5446,5383,5383,
- 2525,2431,2525,2431,5383,5383,5383,5383,386,386,
- 386,5239,386,386,386,386,386,386,386,386,
- 386,5383,3472,5383,223,5383,5383,5383,5383,5383,
- 5383,5383,5383,5383,5383,5647,5645,5654,5653,5649,
- 5650,5648,5651,5652,5655,5646,5643,5718,5719,5239,
- 5637,5644,5640,5616,5642,5641,5638,5639,5617,5239,
- 5383,5383,5383,5383,580,5383,5383,5383,5383,5383,
- 5383,5383,5383,5383,5383,5383,5383,5383,666
+ 1,1,1,1,1,1,229,1,1,8676,
+ 1,1,1,1,1,1,5368,5382,5383,345,
+ 1350,1,1854,1846,5380,339,346,339,5033,5318,
+ 339,3296,393,5368,5253,5250,386,1,1,1,
+ 3661,5579,880,1476,1,2028,530,5801,5802,5803,
+ 1,37,5069,5069,5333,119,5368,329,5342,1,
+ 5014,5010,4745,5007,3918,3984,3580,5866,4006,5075,
+ 5102,5108,5081,5084,5096,5093,5099,5090,5087,5078,
+ 5105,5404,1350,5379,5336,5368,5039,5036,5368,1350,
+ 3513,3346,2148,5368,3962,3940,4050,4028,5387,5404,
+ 3896,1181,1259,5389,1182,3635,1217,2512,5390,5388,
+ 1114,5384,5385,5386,45,5259,5259,5368,1,237,
+ 1393,5375,5221,5368,39,39,526,514,39,5051,
+ 5048,4745,2115,3918,3984,3580,5289,4006,1046,5632,
+ 5630,5639,5638,5634,5635,5633,5636,5637,5640,5631,
+ 4072,964,1,1,5368,5368,4870,3581,3762,360,
+ 163,4213,5256,3962,3940,4050,4028,5387,5368,3896,
+ 1181,1259,5389,1182,3635,1217,5378,5390,5388,1114,
+ 5384,5385,5386,37,5069,5069,5368,5296,5292,1393,
+ 5368,526,100,5377,5368,5045,291,4208,2869,5375,
+ 39,5051,5048,4745,2115,3918,3984,3580,5042,4006,
+ 1046,5632,5630,5639,5638,5634,5635,5633,5636,5637,
+ 5640,5631,289,5368,5368,163,4211,3782,368,3612,
+ 5368,2940,1,4221,5404,3962,3940,4050,4028,5387,
+ 5378,3896,1181,1259,5389,1182,3635,1217,5368,5390,
+ 5388,1114,5384,5385,5386,4216,5368,5377,366,5368,
+ 681,1393,3796,103,5368,2039,4746,5045,141,5051,
+ 5048,4745,2115,3918,3984,3580,5368,4006,1046,5632,
+ 5630,5639,5638,5634,5635,5633,5636,5637,5640,5631,
+ 5368,1,998,5368,2336,99,1907,1264,2989,191,
+ 1,5368,385,3962,3940,4050,4028,5387,5368,3896,
+ 1181,1259,5389,1182,3635,1217,191,5390,5388,1114,
+ 5384,5385,5386,446,418,5368,5368,1307,48,1393,
+ 424,1172,5383,39,39,39,5051,5048,4745,2115,
+ 3918,3984,3580,5042,4006,1046,5632,5630,5639,5638,
+ 5634,5635,5633,5636,5637,5640,5631,5066,2077,278,
+ 5368,5368,5327,2639,2035,3694,35,506,1,5368,
+ 3962,3940,4050,4028,5387,5368,3896,1181,1259,5389,
+ 1182,3635,1217,5383,5390,5388,1114,5384,5385,5386,
+ 5725,5368,373,2164,4793,3496,1393,2126,5368,5368,
+ 4232,447,5045,1,5014,5010,4745,5007,3918,3984,
+ 3580,5368,4006,5075,5102,5108,5081,5084,5096,5093,
+ 5099,5090,5087,5078,5105,1,5368,1,924,48,
+ 5835,5829,5368,5382,5833,3790,4875,5333,3962,3940,
+ 4050,4028,5387,5368,3896,1181,1259,5389,1182,3635,
+ 1217,5368,5390,5388,1114,5384,5385,5386,4442,5368,
+ 5827,5828,5858,5859,1393,5368,5836,5336,39,39,
+ 2984,3698,393,5368,73,2148,5368,5368,2767,5368,
+ 5838,3794,4806,3039,5382,5368,5368,4642,782,4809,
+ 731,790,5368,5839,5837,5860,308,5368,4868,504,
+ 4843,5368,5368,5368,3003,4856,1906,5368,5368,519,
+ 2767,2640,5849,5848,5861,5368,185,5830,5831,5854,
+ 5855,5852,5853,5832,5834,5856,5857,1172,3787,5315,
+ 5862,3888,5842,5843,5844,5840,5841,5850,5851,5846,
+ 5845,5847,39,5051,5048,4745,2115,3918,3984,3580,
+ 5372,4006,1046,5632,5630,5639,5638,5634,5635,5633,
+ 5636,5637,5640,5631,3094,5368,4195,5368,4876,2,
+ 4469,5368,3790,5368,5368,5368,1996,3962,3940,4050,
+ 4028,5387,1,3896,1181,1259,5389,1182,3635,1217,
+ 5368,5390,5388,1114,5384,5385,5386,39,5051,5048,
+ 4745,2115,3918,3984,3580,4227,4006,1046,5632,5630,
+ 5639,5638,5634,5635,5633,5636,5637,5640,5631,508,
+ 5368,2018,5368,5368,37,5368,5368,2767,5368,5368,
+ 5368,5368,3962,3940,4050,4028,5387,5365,3896,1181,
+ 1259,5389,1182,3635,1217,5368,5390,5388,1114,5384,
+ 5385,5386,5368,5368,5368,5368,5368,5368,1393,5371,
+ 39,5051,5048,4745,2115,3918,3984,3580,5368,4006,
+ 1046,5632,5630,5639,5638,5634,5635,5633,5636,5637,
+ 5640,5631,5368,5368,5368,5368,5368,5368,805,5368,
+ 5368,5368,5368,5368,5368,3962,3940,4050,4028,5387,
+ 5368,3896,1181,1259,5389,1182,3635,1217,5368,5390,
+ 5388,1114,5384,5385,5386,39,5051,5048,4745,2115,
+ 3918,3984,3580,1647,4006,1046,5632,5630,5639,5638,
+ 5634,5635,5633,5636,5637,5640,5631,5368,5368,5368,
+ 5368,5368,5368,5368,5368,5368,5368,5368,5368,5368,
+ 3962,3940,4050,4028,5387,5368,3896,1181,1259,5389,
+ 1182,3635,1217,5368,5390,5388,1114,5384,5385,5386,
+ 5368,5368,5368,5368,5368,5368,1393,39,5051,5048,
+ 4769,2115,3918,3984,3580,5368,4006,1046,5632,5630,
+ 5639,5638,5634,5635,5633,5636,5637,5640,5631,5368,
+ 5368,5368,5368,5368,5368,5368,5368,5368,5368,5368,
+ 5368,5368,3962,3940,4050,4028,5387,5368,3896,1181,
+ 1259,5389,1182,3635,1217,5368,5390,5388,1114,5384,
+ 5385,5386,39,5051,5048,4745,2115,3918,3984,3580,
+ 5368,4006,1046,5632,5630,5639,5638,5634,5635,5633,
+ 5636,5637,5640,5631,5368,5368,5368,5368,5368,5368,
+ 5368,5368,5368,5368,5368,5368,5368,3962,3940,4050,
+ 4028,5387,5368,3896,1181,1259,5389,1182,3635,1217,
+ 5368,5390,5388,1114,5384,5385,5386,39,5051,5048,
+ 4745,2115,3918,3984,3580,5368,4006,1046,5632,5630,
+ 5639,5638,5634,5635,5633,5636,5637,5640,5631,5368,
+ 5368,5368,5368,5368,5368,5368,5368,5368,5368,5368,
+ 5368,5368,3962,3940,4050,4028,5387,5368,3896,1181,
+ 1259,5389,1182,3635,1217,5368,5390,5388,1114,5384,
+ 5385,5386,5368,5051,5048,5368,5406,5368,5368,5368,
+ 5368,5368,574,5632,5630,5639,5638,5634,5635,5633,
+ 5636,5637,5640,5631,5628,5703,5704,5368,5622,5629,
+ 5625,5601,5627,5626,5623,5624,5602,5368,5368,5368,
+ 5368,5368,5764,5368,5368,5368,5368,5368,5368,5368,
+ 5368,241,5190,5186,5368,5194,5368,5368,2283,5765,
+ 5766,574,5177,5183,5156,5159,5171,5168,5174,5165,
+ 5162,5153,5180,5132,5126,5123,5368,5150,5129,5141,
+ 5120,5135,5138,5147,5144,5117,128,5368,127,5368,
+ 5368,5764,29,385,385,5227,385,385,5227,385,
+ 5227,5227,5368,5368,5368,5368,5368,2283,5765,5766,
+ 5368,5368,5368,5368,385,385,385,5227,385,385,
+ 385,385,385,385,385,385,385,5368,5368,5368,
+ 5368,5368,5368,5368,5368,5368,5368,5368,5368,75,
+ 5368,2597,3152,2597,5368,5368,5368,5033,5368,5368,
+ 5368,5368,5368,5368,5230,5227,5233,5368,5368,5368,
+ 5368,5368,5368,5368,5368,5227,32,386,386,5224,
+ 386,386,5224,386,5224,5224,5430,5431,5368,5368,
+ 2525,2431,2525,2431,5368,5368,5368,5368,386,386,
+ 386,5224,386,386,386,386,386,386,386,386,
+ 386,5368,3097,5368,223,5368,5368,5368,5368,5368,
+ 5368,5368,5368,5368,5368,5632,5630,5639,5638,5634,
+ 5635,5633,5636,5637,5640,5631,5628,5703,5704,5224,
+ 5622,5629,5625,5601,5627,5626,5623,5624,5602,5224,
+ 5368,5368,5368,5368,580,5368,5368,5368,5368,5368,
+ 5368,5368,5368,5368,5368,5368,5368,5368,666
};
};
public final static char termAction[] = TermAction.termAction;
@@ -1795,60 +1792,61 @@ public class CPPNoFunctionDeclaratorParserprs implements lpg.lpgjavaruntime.Pars
public interface Asb {
public final static char asb[] = {0,
- 60,15,8,1074,211,258,843,843,610,217,
- 843,217,1,1,178,221,211,217,412,317,
- 70,70,840,650,360,317,843,843,535,843,
- 70,217,1078,1013,722,320,317,178,418,906,
- 68,535,535,535,535,1076,68,162,260,179,
- 179,179,179,179,179,179,179,179,845,851,
- 856,853,860,858,865,863,867,866,868,363,
- 869,217,413,836,70,70,1074,1002,1013,906,
- 1013,265,1013,545,1013,997,1076,217,360,360,
- 70,17,215,360,884,421,418,221,162,650,
- 650,650,650,217,728,317,317,308,162,909,
- 649,722,162,845,721,721,728,178,179,179,
- 179,179,179,179,179,179,179,179,179,179,
- 179,179,179,179,179,179,179,178,178,178,
- 178,178,178,178,178,178,178,178,178,179,
- 17,413,836,833,832,833,840,464,267,508,
- 268,1076,217,217,509,833,1078,217,178,221,
- 317,317,833,833,833,833,509,317,179,1074,
- 571,561,560,428,1020,1020,1076,260,360,649,
- 178,317,214,216,214,317,360,853,853,851,
- 851,851,858,858,858,858,856,856,863,860,
- 860,866,865,867,782,868,836,835,162,464,
- 217,905,129,513,509,906,519,217,509,217,
- 17,417,68,68,68,68,217,217,308,317,
- 573,575,217,722,179,650,849,273,317,217,
- 216,722,178,836,418,217,464,782,268,535,
- 511,122,772,464,905,514,905,905,509,519,
- 519,217,217,415,220,178,178,178,178,68,
- 68,317,565,553,564,575,509,215,317,849,
- 1074,1078,217,215,722,682,906,833,535,214,
- 904,774,68,905,905,905,905,217,519,418,
- 524,417,415,415,317,317,317,317,728,728,
- 825,178,562,562,569,1074,784,317,217,849,
- 850,849,178,273,127,845,1078,215,682,682,
- 25,480,215,905,905,211,889,179,782,10,
- 529,575,905,905,817,418,179,217,317,317,
- 825,178,178,573,553,825,1055,849,728,179,
- 360,127,890,418,770,951,404,68,268,989,
- 682,682,480,215,905,906,1076,774,179,179,
- 575,537,677,818,217,827,825,850,317,360,
- 24,404,770,541,1076,418,832,535,893,893,
- 890,906,142,537,217,68,317,817,217,1076,
- 1076,217,827,827,25,682,890,889,317,1076,
- 217,480,25,480,831,831,899,143,1076,217,
- 728,901,217,217,217,68,827,682,211,890,
- 217,217,480,650,650,899,142,782,179,782,
- 890,141,68,68,68,143,68,217,371,890,
- 890,217,906,317,901,217,217,576,418,217,
- 890,832,134,68,134,143,782,143,162,162,
- 160,551,162,890,890,13,899,903,316,890,
- 608,784,143,317,211,317,160,404,68,317,
- 899,903,650,893,317,317,1068,143,13,143,
- 890,404,178,143,140,831,906,906,1070,178,
- 141,728,890,317,214,143,317,890,143
+ 325,21,8,1074,536,127,849,849,736,542,
+ 849,542,1,1,503,90,536,542,286,191,
+ 30,30,846,776,234,191,849,849,449,849,
+ 30,542,1078,1013,692,194,191,503,18,948,
+ 333,449,449,449,449,1076,333,487,129,504,
+ 504,504,504,504,504,504,504,504,851,857,
+ 862,859,866,864,871,869,873,872,874,237,
+ 875,542,287,844,842,30,30,1074,1002,1013,
+ 948,1013,134,1013,545,1013,997,1076,542,234,
+ 234,30,23,540,234,890,335,18,90,487,
+ 776,776,776,776,542,608,191,191,182,487,
+ 901,775,692,487,851,691,691,608,503,504,
+ 504,504,504,504,504,504,504,504,504,504,
+ 504,504,504,504,504,504,504,504,503,503,
+ 503,503,503,503,503,503,503,503,503,503,
+ 504,23,287,842,720,719,720,846,342,136,
+ 386,137,1076,542,542,387,720,1078,542,503,
+ 90,191,191,720,720,720,720,387,191,504,
+ 1074,569,559,558,391,1020,1020,1076,129,234,
+ 775,503,191,539,541,539,191,234,859,859,
+ 857,857,857,864,864,864,864,862,862,869,
+ 866,866,872,871,873,710,874,842,842,487,
+ 342,542,947,142,432,387,948,427,542,387,
+ 542,23,17,333,333,333,333,542,542,182,
+ 191,571,573,542,692,504,776,855,147,191,
+ 542,541,692,503,842,841,18,542,342,710,
+ 137,449,389,82,700,342,947,433,947,947,
+ 387,427,427,542,542,15,89,503,503,503,
+ 503,333,333,191,563,551,562,573,387,540,
+ 191,855,1074,1078,542,540,842,692,652,948,
+ 720,449,539,946,702,333,947,947,947,947,
+ 542,427,18,438,17,15,15,191,191,191,
+ 191,608,608,712,503,560,560,567,1074,808,
+ 191,542,855,856,855,503,147,87,851,1078,
+ 540,652,652,290,358,540,947,947,536,895,
+ 504,710,10,443,573,947,947,722,18,504,
+ 542,191,191,712,503,503,571,551,712,1055,
+ 855,608,504,234,87,896,18,650,951,278,
+ 333,137,989,652,652,358,540,947,948,1076,
+ 702,504,504,573,451,803,723,542,714,712,
+ 856,191,234,289,278,650,455,1076,18,719,
+ 449,730,730,896,948,467,451,542,333,191,
+ 722,542,1076,1076,542,714,714,290,652,896,
+ 895,191,1076,542,358,290,358,718,718,899,
+ 468,1076,542,608,943,542,542,542,333,714,
+ 652,536,896,542,542,358,776,776,899,467,
+ 710,504,710,896,466,333,333,333,468,333,
+ 542,245,896,896,542,948,191,943,542,542,
+ 574,18,542,896,719,459,333,459,468,710,
+ 468,487,487,485,698,487,896,896,13,899,
+ 945,190,896,606,808,468,191,536,191,485,
+ 278,333,191,899,945,776,730,191,191,1068,
+ 468,13,468,896,278,503,468,465,718,948,
+ 948,1070,503,466,608,896,191,539,468,191,
+ 896,468
};
};
public final static char asb[] = Asb.asb;
@@ -1857,100 +1855,100 @@ public class CPPNoFunctionDeclaratorParserprs implements lpg.lpgjavaruntime.Pars
public interface Asr {
public final static byte asr[] = {0,
74,68,72,90,73,67,63,120,3,8,
- 70,25,69,0,120,0,7,6,5,1,
- 2,48,0,67,40,23,13,56,27,14,
- 29,30,15,16,31,32,17,18,33,57,
- 34,10,58,19,22,20,24,21,12,11,
- 26,8,25,62,59,64,86,28,48,9,
- 6,5,7,60,1,2,4,3,0,26,
+ 70,25,69,0,25,120,70,8,71,0,
+ 120,0,7,6,5,1,2,48,0,26,
11,12,40,23,42,65,13,43,56,27,
28,44,14,29,30,15,16,31,66,32,
45,17,18,46,33,47,57,49,61,50,
34,51,58,19,22,20,24,21,52,53,
54,39,3,37,38,9,6,35,36,41,
- 68,7,1,2,4,10,5,0,4,8,
- 72,67,0,86,102,103,104,48,72,118,
- 121,71,60,74,62,59,64,76,78,84,
- 82,75,80,81,83,85,67,77,79,25,
- 8,26,40,23,56,27,28,29,30,31,
- 32,33,57,34,58,22,24,61,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,35,36,41,46,
- 9,6,3,4,7,5,1,2,0,71,
- 61,37,38,9,6,35,36,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,48,4,72,1,2,67,
- 8,0,91,89,35,36,92,93,87,88,
- 55,94,95,96,97,98,99,100,101,106,
- 72,90,69,107,108,109,110,111,112,113,
- 114,115,116,117,71,25,120,68,1,2,
- 9,6,4,3,63,70,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,35,36,41,46,1,2,117,
- 8,0,68,72,90,70,117,73,71,120,
- 11,12,42,65,13,43,44,14,15,16,
- 66,45,17,18,46,47,49,61,50,51,
- 10,19,20,21,52,53,54,39,37,38,
- 35,36,41,8,25,5,7,1,2,4,
- 3,9,6,0,25,120,70,8,71,0,
- 8,72,117,73,25,70,0,26,11,12,
- 23,13,27,28,14,29,30,15,16,31,
- 7,32,17,18,33,34,19,22,20,24,
- 21,1,2,8,63,9,6,5,4,73,
- 25,3,0,86,59,7,102,103,104,62,
- 8,3,9,6,5,72,71,25,60,26,
- 11,12,40,23,13,56,27,28,14,29,
- 30,15,16,31,32,17,18,33,57,34,
- 10,58,19,22,20,24,21,4,1,2,
- 48,0,4,8,72,67,55,0,1,2,
- 8,71,0,8,70,71,69,0,72,8,
- 63,69,70,25,55,0,8,67,70,0,
- 8,67,69,0,4,8,67,1,2,0,
- 75,0,9,6,7,5,4,1,2,3,
- 63,68,69,70,8,73,90,0,5,7,
- 3,63,6,9,90,26,11,12,23,13,
- 56,27,28,14,29,30,15,16,31,32,
- 17,18,33,57,34,10,58,19,22,20,
- 24,21,1,2,4,73,8,40,0,66,
- 65,35,36,6,92,93,98,9,99,5,
- 41,69,55,68,110,111,107,108,109,115,
- 114,116,88,87,112,113,96,97,94,95,
- 100,101,37,38,70,89,105,63,3,10,
- 56,40,57,58,12,21,11,17,15,16,
- 18,19,14,13,20,26,32,33,28,31,
- 30,27,23,24,29,34,1,2,4,22,
- 0,64,26,11,12,40,23,13,56,27,
- 86,28,14,29,30,15,16,31,59,32,
- 17,18,33,57,34,10,58,19,62,22,
- 20,24,21,8,3,9,6,71,25,60,
- 4,7,5,48,1,2,0,8,73,11,
+ 68,7,1,2,4,10,5,0,71,61,
+ 37,38,9,6,35,36,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,48,4,72,1,2,67,8,
+ 0,4,8,72,67,0,91,89,35,36,
+ 92,93,87,88,55,94,95,96,97,98,
+ 99,100,101,106,72,90,69,107,108,109,
+ 110,111,112,113,114,115,116,117,71,25,
+ 120,68,1,2,9,6,4,3,63,70,
+ 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,35,36,41,
+ 46,1,2,117,8,0,68,72,90,70,
+ 117,73,71,120,11,12,42,65,13,43,
+ 44,14,15,16,66,45,17,18,46,47,
+ 49,61,50,51,10,19,20,21,52,53,
+ 54,39,37,38,35,36,41,8,25,5,
+ 7,1,2,4,3,9,6,0,67,40,
+ 23,13,56,27,14,29,30,15,16,31,
+ 32,17,18,33,57,34,10,58,19,22,
+ 20,24,21,12,11,26,8,25,62,59,
+ 64,86,28,48,9,6,5,7,60,1,
+ 2,4,3,0,8,72,117,73,25,70,
+ 0,86,59,7,102,103,104,62,8,3,
+ 9,6,5,72,71,25,60,26,11,12,
+ 40,23,13,56,27,28,14,29,30,15,
+ 16,31,32,17,18,33,57,34,10,58,
+ 19,22,20,24,21,4,1,2,48,0,
+ 26,11,12,23,13,27,28,14,29,30,
+ 15,16,31,7,32,17,18,33,34,19,
+ 22,20,24,21,1,2,8,63,9,6,
+ 5,4,73,25,3,0,1,2,8,71,
+ 0,4,8,72,67,55,0,8,70,71,
+ 69,0,72,8,63,69,70,25,55,0,
+ 8,67,70,0,8,67,69,0,86,102,
+ 103,104,48,72,118,121,71,60,74,62,
+ 59,64,76,78,84,82,75,80,81,83,
+ 85,67,77,79,25,8,26,40,23,56,
+ 27,28,29,30,31,32,33,57,34,58,
+ 22,24,61,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,35,36,41,46,9,6,3,4,7,
+ 5,1,2,0,4,8,67,1,2,0,
+ 9,6,7,5,4,1,2,3,63,68,
+ 69,70,8,73,90,0,5,7,3,63,
+ 6,9,90,26,11,12,23,13,56,27,
+ 28,14,29,30,15,16,31,32,17,18,
+ 33,57,34,10,58,19,22,20,24,21,
+ 1,2,4,73,8,40,0,8,73,11,
12,42,65,13,43,44,14,15,16,66,
7,45,17,18,46,47,49,61,50,51,
10,19,20,21,52,53,54,1,2,3,
37,38,9,6,35,36,5,41,4,39,
- 0,25,8,3,7,5,9,6,4,1,
- 2,72,0,26,11,12,40,23,13,56,
- 27,28,14,29,30,15,16,31,32,17,
- 18,33,57,34,10,58,19,22,20,24,
- 21,1,2,4,90,0,22,1,2,4,
- 102,103,104,0,23,24,61,8,90,73,
- 69,70,68,0,61,23,7,24,5,1,
- 2,4,74,67,119,105,37,38,63,3,
- 91,89,6,92,93,35,36,88,87,55,
- 94,95,96,97,9,98,99,100,68,90,
- 73,120,69,107,108,109,110,111,112,113,
- 114,115,116,72,117,71,101,106,70,25,
- 8,0,68,69,70,1,2,0,118,0,
- 23,24,61,74,72,67,8,0,65,66,
- 37,38,9,6,35,36,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,
+ 0,64,26,11,12,40,23,13,56,27,
+ 86,28,14,29,30,15,16,31,59,32,
+ 17,18,33,57,34,10,58,19,62,22,
+ 20,24,21,8,3,9,6,71,25,60,
+ 4,7,5,48,1,2,0,75,0,25,
+ 8,3,7,5,9,6,4,1,2,72,
+ 0,23,24,61,8,90,73,69,70,68,
+ 0,22,1,2,4,102,103,104,0,68,
+ 69,70,1,2,0,66,65,35,36,6,
+ 92,93,98,9,99,5,41,69,55,68,
+ 110,111,107,108,109,115,114,116,88,87,
+ 112,113,96,97,94,95,100,101,37,38,
+ 70,89,105,63,3,10,56,40,57,58,
+ 12,21,11,17,15,16,18,19,14,13,
+ 20,26,32,33,28,31,30,27,23,24,
+ 29,34,1,2,4,22,0,26,11,12,
+ 40,23,13,56,27,28,14,29,30,15,
+ 16,31,32,17,18,33,57,34,10,58,
+ 19,22,20,24,21,1,2,4,90,0,
+ 61,23,24,7,5,1,2,4,74,67,
+ 119,105,37,38,63,3,91,89,6,92,
+ 93,35,36,88,87,55,94,95,96,97,
+ 9,98,99,100,68,90,73,120,69,107,
+ 108,109,110,111,112,113,114,115,116,72,
+ 117,71,101,106,70,25,8,0,118,0,
+ 65,66,37,38,9,6,35,36,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,23,24,61,74,72,67,8,0,
40,23,13,56,27,14,29,30,15,16,
31,32,17,18,33,57,34,58,19,22,
20,24,21,12,11,26,8,3,9,6,
@@ -1971,60 +1969,61 @@ public class CPPNoFunctionDeclaratorParserprs implements lpg.lpgjavaruntime.Pars
public interface Nasb {
public final static char nasb[] = {0,
- 123,12,27,116,123,203,12,12,149,223,
- 12,130,13,13,94,62,199,130,12,259,
- 128,128,42,5,88,259,12,12,12,12,
- 128,205,12,12,25,83,259,64,128,160,
- 12,12,12,12,12,11,12,273,130,64,
- 64,219,64,64,64,64,64,64,12,12,
- 12,12,12,12,12,12,12,12,12,64,
- 12,130,118,128,31,31,116,247,248,160,
- 248,70,248,99,248,241,10,130,88,88,
- 31,45,203,88,12,12,174,128,273,36,
- 36,36,36,130,162,259,259,189,1,64,
- 29,25,273,12,17,17,162,140,64,64,
- 64,64,64,64,64,64,64,64,64,64,
- 64,64,64,64,64,64,64,64,64,64,
- 64,64,64,64,64,64,64,64,140,64,
- 39,12,210,12,12,12,145,128,133,11,
- 54,11,130,205,12,12,12,205,64,62,
- 259,259,12,12,12,12,49,259,64,116,
- 188,13,13,12,12,12,10,130,88,36,
- 94,259,202,130,202,259,88,12,12,12,
+ 119,12,27,112,119,215,12,12,219,232,
+ 12,177,13,13,95,60,211,177,12,275,
+ 124,124,44,5,91,275,12,12,12,12,
+ 124,217,12,12,25,86,275,62,124,153,
+ 12,12,12,12,12,11,12,269,177,62,
+ 62,228,62,62,62,62,62,62,12,12,
+ 12,12,12,12,12,12,12,12,12,62,
+ 12,177,114,114,114,29,29,112,256,257,
+ 153,257,68,257,100,257,250,10,177,91,
+ 91,29,37,215,91,12,12,42,124,269,
+ 34,34,34,34,177,133,275,275,127,1,
+ 62,57,25,269,12,17,17,133,139,62,
+ 62,62,62,62,62,62,62,62,62,62,
+ 62,62,62,62,62,62,62,62,62,62,
+ 62,62,62,62,62,62,62,62,62,139,
+ 62,54,12,124,12,12,12,246,124,155,
+ 11,71,11,177,217,12,12,12,217,62,
+ 60,275,275,12,12,12,12,167,275,62,
+ 112,126,13,13,12,12,12,10,177,91,
+ 34,95,275,214,177,214,275,91,12,12,
12,12,12,12,12,12,12,12,12,12,
- 12,12,12,12,12,12,128,210,31,250,
- 134,15,15,12,266,160,128,266,24,134,
- 45,174,12,12,12,12,134,205,143,259,
- 235,128,130,25,64,36,128,78,259,130,
- 176,25,64,210,174,130,195,12,108,12,
- 12,76,165,250,15,15,128,128,24,128,
- 224,205,134,90,61,140,140,140,140,12,
- 12,259,12,121,12,238,23,134,259,57,
- 145,12,223,134,25,128,160,12,12,11,
- 128,111,12,128,128,179,179,134,224,174,
- 12,12,90,12,259,259,259,259,162,162,
- 128,64,12,12,120,116,238,259,134,128,
- 106,12,140,145,177,12,12,203,212,128,
- 226,128,266,128,92,199,195,64,12,81,
- 12,128,179,179,184,174,64,224,259,259,
- 210,64,64,235,197,128,12,57,162,64,
- 88,177,195,174,12,226,166,12,54,76,
- 226,212,238,203,92,181,102,123,64,64,
- 238,12,11,153,266,128,210,106,259,88,
- 159,111,12,12,11,174,12,12,217,217,
- 195,181,173,12,266,12,259,231,266,11,
- 11,205,52,128,226,128,195,12,259,11,
- 266,238,226,128,12,12,128,137,102,205,
- 162,128,205,266,266,12,52,212,123,195,
- 266,109,238,36,36,97,155,12,64,12,
- 195,12,12,12,12,156,12,224,193,195,
- 195,224,73,259,210,205,205,257,174,109,
- 195,12,59,12,12,156,12,156,277,277,
- 261,12,277,195,195,12,128,128,259,195,
- 12,36,156,259,123,259,269,128,12,259,
- 97,52,36,217,259,259,128,156,12,156,
- 195,123,140,156,59,12,73,73,121,64,
- 12,207,195,259,202,156,259,195,156
+ 12,12,12,12,12,12,12,114,203,29,
+ 259,156,47,47,12,266,153,124,266,24,
+ 156,37,42,12,12,12,12,156,217,244,
+ 275,142,124,177,25,62,34,124,83,275,
+ 177,183,25,62,124,203,42,177,201,12,
+ 180,12,12,79,159,259,47,47,124,124,
+ 24,124,233,217,156,15,59,139,139,139,
+ 139,12,12,275,12,117,12,145,23,156,
+ 275,103,246,12,232,156,203,25,124,153,
+ 12,12,11,124,107,12,124,124,170,170,
+ 156,233,42,12,12,15,12,275,275,275,
+ 275,133,133,124,62,12,12,116,112,145,
+ 275,156,124,131,12,139,246,184,12,12,
+ 215,223,124,235,124,266,124,93,211,201,
+ 62,12,81,12,124,170,170,193,42,62,
+ 233,275,275,203,62,62,142,209,124,12,
+ 103,133,62,91,184,201,42,12,235,160,
+ 12,71,79,235,223,145,215,93,49,205,
+ 119,62,62,145,12,11,105,266,124,203,
+ 131,275,91,152,107,12,12,11,42,12,
+ 12,197,197,201,49,41,12,266,12,275,
+ 240,266,11,11,217,77,124,235,124,201,
+ 12,275,11,266,145,235,124,12,12,124,
+ 136,205,217,133,124,217,266,266,12,77,
+ 223,119,201,266,181,145,34,34,52,148,
+ 12,62,12,201,12,12,12,12,149,12,
+ 233,199,201,201,233,74,275,203,217,217,
+ 273,42,181,201,12,98,12,12,149,12,
+ 149,277,277,172,12,277,201,201,12,124,
+ 124,275,201,12,34,149,275,119,275,186,
+ 124,12,275,52,77,34,197,275,275,124,
+ 149,12,149,201,119,139,149,98,12,74,
+ 74,117,62,12,190,201,275,214,149,275,
+ 201,149
};
};
public final static char nasb[] = Nasb.nasb;
@@ -2033,33 +2032,33 @@ public class CPPNoFunctionDeclaratorParserprs implements lpg.lpgjavaruntime.Pars
public interface Nasr {
public final static char nasr[] = {0,
3,13,10,9,151,149,123,148,147,2,
- 5,0,75,0,111,0,5,2,9,10,
- 138,0,135,2,64,0,184,0,175,0,
- 5,10,9,2,13,4,45,0,64,54,
- 0,4,195,0,64,137,136,0,135,64,
- 0,125,0,40,1,0,142,0,115,0,
- 66,128,40,5,10,9,2,13,0,152,
- 188,0,40,56,0,155,0,4,177,0,
- 191,0,13,2,9,10,5,82,0,162,
- 0,159,0,4,30,0,161,0,152,183,
- 0,172,5,171,0,140,0,40,103,0,
- 4,10,9,2,63,5,89,54,0,32,
- 94,93,63,5,2,9,10,4,0,44,
- 2,0,44,2,3,0,48,40,179,4,
- 39,0,94,93,54,5,60,0,4,45,
- 196,0,193,0,66,39,48,67,4,40,
- 0,4,96,0,38,5,2,9,10,4,
- 157,0,4,66,0,2,117,0,112,0,
- 40,160,0,5,101,192,0,32,93,94,
- 4,0,4,39,38,0,94,93,54,63,
- 60,5,10,9,2,0,4,178,0,61,
- 0,118,4,48,81,0,110,0,5,10,
- 9,13,3,1,0,4,48,81,83,0,
- 5,101,168,0,54,5,89,22,4,0,
- 2,5,123,119,120,121,13,86,0,4,
- 48,81,101,46,5,0,45,4,32,0,
- 39,4,22,181,0,2,59,0,45,4,
- 180,0,4,45,39,0,4,45,102,0
+ 5,0,75,0,162,0,5,2,9,10,
+ 138,0,135,2,64,0,184,0,5,10,
+ 9,2,13,4,45,0,64,137,136,0,
+ 4,66,0,4,195,0,111,0,40,160,
+ 0,161,0,64,49,0,175,0,66,128,
+ 40,5,10,9,2,13,0,152,188,0,
+ 40,1,0,40,56,0,125,0,155,0,
+ 191,0,4,177,0,13,2,9,10,5,
+ 82,0,159,0,4,30,0,115,0,152,
+ 183,0,142,0,193,0,4,10,9,2,
+ 63,5,89,49,0,32,94,93,63,5,
+ 2,9,10,4,0,32,93,94,4,0,
+ 140,0,4,96,0,48,40,179,4,39,
+ 0,49,5,89,22,4,0,66,39,48,
+ 67,4,40,0,44,2,3,0,38,5,
+ 2,9,10,4,157,0,135,64,0,112,
+ 0,39,4,22,181,0,44,2,0,40,
+ 103,0,2,117,0,45,4,180,0,4,
+ 178,0,5,101,192,0,110,0,4,39,
+ 38,0,61,0,172,5,171,0,94,93,
+ 49,63,60,5,10,9,2,0,4,45,
+ 196,0,118,4,48,81,0,5,10,9,
+ 13,3,1,0,4,48,81,83,0,5,
+ 101,168,0,94,93,49,5,60,0,2,
+ 5,123,119,120,121,13,86,0,4,48,
+ 81,101,46,5,0,2,59,0,4,45,
+ 39,0,45,4,32,0,4,45,102,0
};
};
public final static char nasr[] = Nasr.nasr;
@@ -2115,18 +2114,18 @@ public class CPPNoFunctionDeclaratorParserprs implements lpg.lpgjavaruntime.Pars
public interface ScopePrefix {
public final static char scopePrefix[] = {
- 159,584,603,308,535,551,562,573,367,266,
- 280,302,315,328,42,291,387,425,167,592,
- 478,20,51,71,80,85,90,130,195,297,
- 321,336,341,144,272,286,506,27,144,377,
- 341,611,27,217,245,1,14,61,76,106,
- 346,356,360,443,471,500,527,531,621,625,
- 629,97,7,97,405,421,434,455,519,232,
- 116,116,434,542,558,569,580,207,489,56,
- 56,156,222,225,56,240,261,225,225,56,
- 364,468,475,156,56,644,110,350,409,449,
- 462,56,350,396,177,104,447,633,640,633,
- 640,65,415,137,104,104,250
+ 159,585,604,309,536,552,563,574,368,267,
+ 281,303,316,329,42,292,388,426,167,593,
+ 479,20,51,71,80,85,90,130,195,298,
+ 322,337,342,144,273,287,507,27,144,378,
+ 342,612,27,217,246,1,14,61,76,106,
+ 347,357,361,444,472,501,528,532,622,626,
+ 630,97,7,97,406,422,435,456,520,116,
+ 116,232,435,543,559,570,581,207,490,56,
+ 56,156,222,225,56,241,262,225,225,56,
+ 365,469,476,156,56,645,110,351,410,450,
+ 463,56,351,397,177,104,448,634,641,634,
+ 641,65,416,137,104,104,251
};
};
public final static char scopePrefix[] = ScopePrefix.scopePrefix;
@@ -2134,18 +2133,18 @@ public class CPPNoFunctionDeclaratorParserprs implements lpg.lpgjavaruntime.Pars
public interface ScopeSuffix {
public final static char scopeSuffix[] = {
- 18,5,5,135,5,5,5,5,374,135,
- 95,135,135,334,48,277,393,431,173,67,
- 484,25,25,25,59,59,95,135,200,135,
- 326,326,334,149,277,101,511,38,152,382,
- 598,616,32,211,211,5,18,5,59,95,
- 326,95,95,135,243,5,5,5,5,5,
- 243,642,11,101,374,374,374,459,511,236,
- 120,125,438,546,546,546,546,211,493,59,
- 59,5,5,228,230,243,5,264,264,230,
- 95,5,243,5,504,5,113,353,412,452,
- 465,523,514,399,180,95,95,635,635,637,
- 637,67,417,139,202,187,252
+ 18,5,5,135,5,5,5,5,375,135,
+ 95,135,135,335,48,278,394,432,173,67,
+ 485,25,25,25,59,59,95,135,200,135,
+ 327,327,335,149,278,101,512,38,152,383,
+ 599,617,32,211,211,5,18,5,59,95,
+ 327,95,95,135,244,5,5,5,5,5,
+ 244,643,11,101,375,375,375,460,512,120,
+ 125,236,439,547,547,547,547,211,494,59,
+ 59,5,5,228,230,244,5,265,265,230,
+ 95,5,244,5,505,5,113,354,413,453,
+ 466,524,515,400,180,95,95,636,636,638,
+ 638,67,418,139,202,187,253
};
};
public final static char scopeSuffix[] = ScopeSuffix.scopeSuffix;
@@ -2154,13 +2153,13 @@ public class CPPNoFunctionDeclaratorParserprs implements lpg.lpgjavaruntime.Pars
public interface ScopeLhs {
public final static char scopeLhs[] = {
46,17,17,121,17,17,17,17,70,85,
- 47,79,121,120,76,52,70,69,46,17,
+ 47,79,121,120,76,53,70,69,46,17,
19,3,7,8,168,168,164,119,46,80,
- 120,120,122,127,53,47,138,132,127,70,
+ 120,120,122,127,54,47,138,132,127,70,
17,17,132,95,158,134,73,171,168,164,
- 122,182,50,56,142,18,17,17,17,17,
- 17,12,115,164,70,69,69,37,138,60,
- 129,129,69,17,17,17,17,95,19,172,
+ 122,182,51,56,142,18,17,17,17,17,
+ 17,12,115,164,70,69,69,37,138,129,
+ 129,60,69,17,17,17,17,95,19,172,
168,184,93,100,58,75,57,157,74,122,
71,143,142,175,138,16,164,122,102,68,
21,138,138,70,46,164,65,136,44,136,
@@ -2178,8 +2177,8 @@ public class CPPNoFunctionDeclaratorParserprs implements lpg.lpgjavaruntime.Pars
1,1,1,71,1,1,4,68,70,25,
1,1,68,73,73,73,118,73,1,25,
1,25,25,71,117,73,73,73,73,73,
- 117,1,73,1,73,73,73,72,4,6,
- 1,1,73,68,68,68,68,73,3,1,
+ 117,1,73,1,73,73,73,72,4,1,
+ 1,6,73,68,68,68,68,73,3,1,
1,73,73,3,1,117,73,1,1,1,
25,73,117,73,5,73,1,48,69,72,
73,1,48,75,74,25,25,4,4,4,
@@ -2197,8 +2196,8 @@ public class CPPNoFunctionDeclaratorParserprs implements lpg.lpgjavaruntime.Pars
108,108,108,315,80,78,100,48,315,88,
252,252,48,116,61,24,88,28,52,64,
108,22,80,31,58,252,252,252,252,252,
- 252,231,6,64,88,88,88,284,100,148,
- 108,108,88,252,252,252,252,116,252,28,
+ 252,231,6,64,88,88,88,284,100,108,
+ 108,148,88,252,252,252,252,116,252,28,
52,164,116,118,166,112,166,61,171,108,
88,55,58,103,100,252,64,108,1,88,
253,100,100,88,78,64,11,105,124,105,
@@ -2233,48 +2232,48 @@ public class CPPNoFunctionDeclaratorParserprs implements lpg.lpgjavaruntime.Pars
0,203,0,0,215,0,229,126,3,0,
126,0,0,0,0,0,229,126,3,215,
0,222,3,0,211,126,0,208,0,146,
- 0,176,166,127,0,10,0,0,0,213,
- 63,0,125,0,229,126,3,179,0,179,
- 0,2,0,0,126,0,0,0,0,0,
- 196,3,0,201,0,238,126,162,39,28,
- 0,181,127,59,62,0,196,128,0,128,
- 181,127,277,62,0,181,127,277,62,0,
- 181,127,69,123,59,0,238,126,162,59,
- 0,238,126,162,225,59,0,275,126,162,
- 123,305,56,0,275,126,162,305,56,0,
- 181,127,274,56,0,135,0,186,181,127,
- 274,245,0,136,0,181,127,274,245,0,
- 186,166,127,10,0,166,127,10,0,166,
- 127,0,93,136,0,267,126,144,0,267,
- 126,170,0,161,84,0,300,160,302,303,
- 3,81,0,126,171,0,302,303,3,81,
- 0,128,0,126,171,0,161,3,75,189,
- 80,0,126,128,0,189,80,0,108,2,
- 131,126,128,0,224,3,75,0,196,167,
- 0,33,169,0,167,0,175,33,169,0,
- 224,3,85,0,189,154,224,3,83,0,
- 62,171,0,224,3,83,0,126,171,62,
- 171,0,301,126,162,0,161,0,213,77,
- 0,30,171,0,161,106,158,0,30,169,
- 0,177,3,0,126,149,0,218,3,0,
- 213,63,264,0,161,63,0,177,3,297,
- 66,127,0,126,0,0,0,0,297,66,
- 127,0,2,145,126,0,0,0,0,177,
- 3,46,0,147,0,125,48,166,127,0,
- 31,147,0,93,136,31,147,0,219,181,
- 127,0,146,31,147,0,177,3,51,0,
- 161,3,51,0,161,3,68,177,55,42,
- 0,177,55,42,0,20,2,131,126,0,
- 161,3,68,177,55,45,0,177,55,45,
- 0,161,3,68,177,55,47,0,177,55,
- 47,0,161,3,68,177,55,43,0,177,
- 55,43,0,218,3,125,186,166,127,10,
- 0,125,186,166,127,10,0,136,2,0,
- 126,0,218,3,124,257,166,127,10,0,
- 257,166,127,10,0,135,2,0,126,0,
- 218,3,135,0,218,3,139,0,161,63,
- 139,0,259,0,31,0,31,139,0,165,
- 0,134,0,161,3,0
+ 0,171,166,127,0,10,0,0,0,0,
+ 213,63,0,125,0,229,126,3,179,0,
+ 179,0,2,0,0,126,0,0,0,0,
+ 0,196,3,0,201,0,238,126,162,39,
+ 28,0,181,127,59,62,0,196,128,0,
+ 128,181,127,277,62,0,181,127,277,62,
+ 0,181,127,69,123,59,0,238,126,162,
+ 59,0,238,126,162,225,59,0,275,126,
+ 162,123,305,56,0,275,126,162,305,56,
+ 0,181,127,274,56,0,135,0,186,181,
+ 127,274,245,0,136,0,181,127,274,245,
+ 0,186,166,127,10,0,166,127,10,0,
+ 166,127,0,93,136,0,267,126,144,0,
+ 267,126,170,0,161,84,0,300,160,302,
+ 303,3,81,0,126,171,0,302,303,3,
+ 81,0,128,0,126,171,0,161,3,75,
+ 189,80,0,126,128,0,189,80,0,108,
+ 2,131,126,128,0,224,3,75,0,196,
+ 167,0,33,169,0,167,0,175,33,169,
+ 0,224,3,85,0,189,154,224,3,83,
+ 0,62,171,0,224,3,83,0,126,171,
+ 62,171,0,301,126,162,0,161,0,213,
+ 77,0,30,171,0,161,106,158,0,30,
+ 169,0,177,3,0,126,149,0,218,3,
+ 0,213,63,264,0,161,63,0,177,3,
+ 297,66,127,0,126,0,0,0,0,297,
+ 66,127,0,2,145,126,0,0,0,0,
+ 177,3,46,0,147,0,125,48,166,127,
+ 0,31,147,0,93,136,31,147,0,219,
+ 181,127,0,146,31,147,0,177,3,51,
+ 0,161,3,51,0,161,3,68,177,55,
+ 42,0,177,55,42,0,20,2,131,126,
+ 0,161,3,68,177,55,45,0,177,55,
+ 45,0,161,3,68,177,55,47,0,177,
+ 55,47,0,161,3,68,177,55,43,0,
+ 177,55,43,0,218,3,125,186,166,127,
+ 10,0,125,186,166,127,10,0,136,2,
+ 0,126,0,218,3,124,257,166,127,10,
+ 0,257,166,127,10,0,135,2,0,126,
+ 0,218,3,135,0,218,3,139,0,161,
+ 63,139,0,259,0,31,0,31,139,0,
+ 165,0,134,0,161,3,0
};
};
public final static char scopeRhs[] = ScopeRhs.scopeRhs;
@@ -2282,35 +2281,35 @@ public class CPPNoFunctionDeclaratorParserprs implements lpg.lpgjavaruntime.Pars
public interface ScopeState {
public final static char scopeState[] = {0,
- 4708,4917,4893,4883,0,1007,2695,999,2120,0,
- 3447,3393,3253,3199,3145,3091,3037,2983,2929,2792,
- 2730,4460,0,1255,1126,809,0,2683,2508,0,
- 3447,3393,3414,2871,3253,3199,3145,3091,3037,2983,
- 1124,2929,2792,2730,4293,3126,0,3112,2988,3038,
- 0,4222,3282,0,2644,2601,0,2568,998,0,
- 4503,2914,0,4588,4440,0,4588,4440,3785,4336,
- 4326,3775,4316,4234,4221,3765,0,4588,4440,3785,
- 4336,4326,3775,4316,4234,4221,3765,3447,3393,3253,
- 3199,3145,3091,3037,2983,2929,2792,2730,0,666,
- 580,0,681,0,800,731,0,536,4436,2815,
- 0,2036,803,660,540,3546,2731,3327,2664,2624,
- 3312,2970,0,4779,4775,4762,4726,4715,4702,4697,
- 4680,4899,4875,4864,4676,4650,4615,4611,4860,2711,
- 4846,3737,3365,4792,2905,2689,0,2418,3546,4530,
- 4537,3014,3176,2646,722,4235,2731,3117,736,870,
- 2458,734,0,670,0,4503,3546,4537,2914,2458,
- 3327,3560,4566,4203,2418,4190,2664,2646,2624,4422,
- 3573,0,3376,3369,4779,4775,4762,3260,2659,4726,
- 2483,4715,4702,4697,4680,3798,3790,3667,3504,3295,
- 2772,4899,3006,4875,4864,2564,2501,4676,4650,926,
- 4615,4611,3015,3276,4860,2711,4846,3737,4436,3365,
- 4792,3222,2815,2905,2689,625,2552,2487,2202,2115,
- 805,3327,3560,4566,4203,2418,4190,4503,3546,4537,
- 2664,2646,2624,2914,2287,939,666,580,2458,4422,
- 3573,3643,4168,4146,2251,1185,2332,2300,2390,2362,
- 593,2872,629,2597,2570,2525,2431,3743,3712,3680,
- 3521,3340,4124,4102,4080,4058,4036,4014,3992,3970,
- 3948,3926,3904,1996,2213,2164,2126,2077,1307,1264,
+ 3223,4856,4843,4809,0,3285,2120,2081,918,0,
+ 3439,3384,3259,3204,3149,3094,3039,2984,2929,2792,
+ 2730,3003,0,1436,1255,1126,0,3698,3496,0,
+ 3439,3384,2871,2637,3259,3204,3149,3094,3039,2984,
+ 1124,2929,2792,2730,2750,822,0,4698,4320,3135,
+ 0,4232,3296,0,2807,2707,0,2558,2366,0,
+ 4582,2914,0,4573,4480,0,4573,4480,3777,4328,
+ 4318,3767,4308,4226,4213,3757,0,4573,4480,3777,
+ 4328,4318,3767,4308,4226,4213,3757,3439,3384,3259,
+ 3204,3149,3094,3039,2984,2929,2792,2730,0,666,
+ 580,0,964,0,2763,736,0,536,4445,2815,
+ 0,2791,1140,856,540,3538,4444,3333,2664,2624,
+ 2679,2970,0,4728,4721,4709,4704,4683,4657,4634,
+ 4629,4819,4815,4802,4622,4569,4282,3729,3377,2905,
+ 2689,3416,3236,2518,2513,3016,0,2418,3538,3121,
+ 4454,2504,3123,2646,735,2744,4444,870,727,863,
+ 4429,734,0,670,0,4582,3538,4454,2914,4429,
+ 3333,3552,4543,4195,2418,4182,2664,2646,2624,4414,
+ 3565,0,3471,3465,4728,4721,4709,3173,3010,4704,
+ 2483,4683,4657,4634,4629,3603,3588,3445,2989,2940,
+ 2823,4819,3081,4815,4802,2566,2458,4622,4569,926,
+ 4282,3729,3117,3316,3377,2905,2689,3416,4445,3236,
+ 2518,3190,2815,2513,3016,625,2487,2462,2202,2115,
+ 805,3333,3552,4543,4195,2418,4182,4582,3538,4454,
+ 2664,2646,2624,2914,2287,939,666,580,4429,4414,
+ 3565,3635,4160,4138,2251,1185,2332,2300,2390,2362,
+ 593,2872,629,2597,2570,2525,2431,3735,3704,3672,
+ 3513,3346,4116,4094,4072,4050,4028,4006,3984,3962,
+ 3940,3918,3896,1996,2213,2164,2126,2077,1307,1264,
2039,1047,1221,1953,880,1910,1867,1824,1781,1738,
1695,1652,1609,1566,1523,1480,1437,536,824,744,
688,1393,1142,1350,1003,960,1092,0
@@ -2322,59 +2321,60 @@ public class CPPNoFunctionDeclaratorParserprs implements lpg.lpgjavaruntime.Pars
public interface InSymb {
public final static char inSymb[] = {0,
0,296,228,126,3,4,132,131,7,5,
- 124,127,185,179,3,69,211,127,176,196,
+ 124,127,185,179,3,69,211,127,171,196,
55,55,167,126,63,3,65,66,124,123,
55,181,165,124,166,63,152,126,162,250,
51,42,45,47,43,10,135,3,127,46,
41,5,36,35,6,9,38,37,139,145,
147,146,149,148,151,150,155,153,157,61,
- 158,127,166,6,126,126,126,268,269,251,
- 270,245,271,56,272,273,10,127,63,63,
- 126,4,186,213,158,266,126,162,3,55,
- 55,55,55,127,3,177,161,167,126,65,
- 66,166,3,125,105,119,3,63,89,91,
- 36,35,93,92,6,95,94,68,55,87,
- 88,9,97,96,99,98,100,116,115,114,
- 113,112,111,110,109,108,107,69,106,101,
- 166,176,126,252,255,252,211,162,310,274,
- 305,274,127,181,166,252,259,186,70,126,
- 177,161,177,177,177,177,166,218,154,126,
- 3,216,215,135,125,124,10,127,63,297,
- 3,177,48,127,48,218,161,146,146,145,
- 145,145,148,148,148,148,147,147,150,149,
- 149,153,151,155,161,157,6,183,70,126,
- 166,232,125,124,127,123,162,127,166,48,
- 4,308,68,68,68,68,186,257,211,222,
- 126,3,127,166,204,3,298,167,152,127,
- 181,166,72,126,309,127,168,223,59,48,
- 203,62,170,312,125,124,233,233,181,162,
- 126,181,186,188,70,3,3,3,3,125,
- 124,229,230,144,231,126,166,48,177,126,
- 126,219,5,48,166,162,225,55,48,277,
- 279,126,179,233,233,126,126,186,126,275,
- 123,276,188,8,161,161,161,161,3,3,
- 154,69,222,196,3,126,70,229,186,154,
- 261,264,63,182,4,123,125,186,126,162,
- 68,55,127,74,126,211,311,72,289,196,
- 124,3,126,126,72,275,69,70,218,218,
- 126,69,69,126,211,154,125,126,3,63,
- 161,4,128,238,28,48,170,64,59,62,
- 240,126,126,181,126,281,72,70,72,69,
- 126,314,223,22,127,220,126,261,218,213,
- 39,126,3,123,59,238,295,48,10,40,
- 128,281,162,293,127,294,229,70,127,22,
- 315,181,126,220,126,162,267,278,39,69,
- 127,70,68,55,232,232,282,126,70,181,
- 3,154,181,127,127,61,126,126,70,154,
- 127,181,126,69,69,126,301,79,77,1,
- 161,8,85,83,81,80,75,82,84,78,
- 76,59,74,218,126,181,181,3,238,181,
- 225,295,283,118,8,72,213,72,3,3,
- 3,189,3,123,161,123,178,220,320,225,
- 68,3,72,224,167,224,303,144,75,224,
- 126,126,70,40,90,319,167,154,196,154,
- 302,126,3,154,283,232,154,154,126,69,
- 189,160,267,161,69,121,300,154,154
+ 158,127,166,9,6,126,126,126,268,269,
+ 251,270,245,271,56,272,273,10,127,63,
+ 63,126,4,186,213,158,266,126,162,3,
+ 55,55,55,55,127,3,177,161,167,126,
+ 65,66,166,3,125,105,119,3,63,89,
+ 91,36,35,93,92,6,95,94,68,55,
+ 87,88,9,97,96,99,98,100,116,115,
+ 114,113,112,111,110,109,108,107,69,106,
+ 101,166,171,171,252,255,252,211,162,310,
+ 274,305,274,127,181,166,252,259,186,70,
+ 126,177,161,177,177,177,177,166,218,154,
+ 126,3,216,215,135,125,124,10,127,63,
+ 297,3,177,48,127,48,218,161,146,146,
+ 145,145,145,148,148,148,148,147,147,150,
+ 149,149,153,151,155,161,157,6,126,70,
+ 126,166,232,125,124,127,123,162,127,166,
+ 48,4,308,68,68,68,68,186,257,211,
+ 222,126,3,127,166,204,3,298,167,152,
+ 127,181,166,72,171,183,309,127,168,223,
+ 59,48,203,62,170,312,125,124,233,233,
+ 181,162,126,181,186,188,70,3,3,3,
+ 3,125,124,229,230,144,231,126,166,48,
+ 177,126,126,219,5,48,126,166,162,225,
+ 55,48,277,279,126,179,233,233,126,126,
+ 186,126,275,123,276,188,8,161,161,161,
+ 161,3,3,154,69,222,196,3,126,70,
+ 229,186,154,261,264,63,182,4,123,125,
+ 186,126,162,68,55,127,74,126,211,311,
+ 72,289,196,124,3,126,126,72,275,69,
+ 70,218,218,126,69,69,126,211,154,125,
+ 126,3,63,161,4,128,238,28,48,170,
+ 64,59,62,240,126,126,181,126,281,72,
+ 70,72,69,126,314,223,22,127,220,126,
+ 261,218,213,39,126,3,123,59,238,295,
+ 48,10,40,128,281,162,293,127,294,229,
+ 70,127,22,315,181,126,220,126,162,267,
+ 278,39,69,127,70,68,55,232,232,282,
+ 126,70,181,3,154,181,127,127,61,126,
+ 126,70,154,127,181,126,69,69,126,301,
+ 79,77,1,161,8,85,83,81,80,75,
+ 82,84,78,76,59,74,218,126,181,181,
+ 3,238,181,225,295,283,118,8,72,213,
+ 72,3,3,3,189,3,123,161,123,178,
+ 220,320,225,68,3,72,224,167,224,303,
+ 144,75,224,126,126,70,40,90,319,167,
+ 154,196,154,302,126,3,154,283,232,154,
+ 154,126,69,189,160,267,161,69,121,300,
+ 154,154
};
};
public final static char inSymb[] = InSymb.inSymb;
@@ -2649,20 +2649,20 @@ public class CPPNoFunctionDeclaratorParserprs implements lpg.lpgjavaruntime.Pars
public final int getMaxNameLength() { return MAX_NAME_LENGTH; }
public final static int
- NUM_STATES = 539,
+ NUM_STATES = 542,
NT_OFFSET = 122,
- LA_STATE_OFFSET = 5918,
+ LA_STATE_OFFSET = 5903,
MAX_LA = 2147483647,
NUM_RULES = 535,
NUM_NONTERMINALS = 202,
NUM_SYMBOLS = 324,
SEGMENT_SIZE = 8192,
- START_STATE = 3573,
+ START_STATE = 3565,
IDENTIFIER_SYMBOL = 0,
EOFT_SYMBOL = 120,
EOLT_SYMBOL = 120,
- ACCEPT_ACTION = 5021,
- ERROR_ACTION = 5383;
+ ACCEPT_ACTION = 5006,
+ ERROR_ACTION = 5368;
public final static boolean BACKTRACK = true;
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPParser.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPParser.java
index de990bb1873..d9663cdb963 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPParser.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPParser.java
@@ -17,20 +17,25 @@ import lpg.lpgjavaruntime.*;
import java.util.*;
import org.eclipse.cdt.core.dom.ast.*;
+import org.eclipse.cdt.core.dom.lrparser.CPreprocessorAdapter;
+import org.eclipse.cdt.core.dom.lrparser.IDOMTokenMap;
import org.eclipse.cdt.core.dom.lrparser.IParser;
-import org.eclipse.cdt.core.dom.lrparser.IParserActionTokenProvider;
+import org.eclipse.cdt.core.dom.lrparser.ITokenCollector;
import org.eclipse.cdt.core.dom.lrparser.lpgextensions.FixedBacktrackingParser;
+import org.eclipse.cdt.core.dom.lrparser.action.ITokenStream;
import org.eclipse.cdt.core.dom.lrparser.action.ScopedStack;
-
-import org.eclipse.cdt.core.dom.lrparser.action.ITokenMap;
-import org.eclipse.cdt.core.dom.lrparser.action.TokenMap;
+import org.eclipse.cdt.core.parser.IScanner;
+import org.eclipse.cdt.core.dom.parser.IBuiltinBindingsProvider;
+import org.eclipse.cdt.core.index.IIndex;
import org.eclipse.cdt.core.dom.ast.cpp.*;
import org.eclipse.cdt.internal.core.dom.parser.cpp.CPPNodeFactory;
import org.eclipse.cdt.core.dom.lrparser.action.cpp.CPPBuildASTParserAction;
import org.eclipse.cdt.core.dom.lrparser.action.cpp.CPPSecondaryParserFactory;
-public class CPPParser extends PrsStream implements RuleAction , IParserActionTokenProvider, IParser< IASTTranslationUnit >
+public class CPPParser extends PrsStream implements RuleAction, ITokenStream,
+ ITokenCollector, IParser< IASTTranslationUnit >
+
{
private static ParseTable prs = new CPPParserprs();
private FixedBacktrackingParser btParser;
@@ -168,7 +173,11 @@ public class CPPParser extends PrsStream implements RuleAction , IParserActionTo
private CPPBuildASTParserAction action;
private IASTCompletionNode compNode;
-public CPPParser() { // constructor
+
+public CPPParser(IScanner scanner, IDOMTokenMap tokenMap, IBuiltinBindingsProvider builtinBindingsProvider, IIndex index, Set<IParser.Options> options) {
+ initActions(options);
+ action.initializeTranslationUnit(scanner, builtinBindingsProvider, index);
+ CPreprocessorAdapter.runCPreprocessor(scanner, this, tokenMap);
}
private void initActions(Set<IParser.Options> options) {
@@ -187,17 +196,16 @@ public void addToken(IToken token) {
}
-public IASTTranslationUnit parse(Set<IParser.Options> options) {
+public IASTTranslationUnit parse() {
// this has to be done, or... kaboom!
setStreamLength(getSize());
- initActions(options);
final int errorRepairCount = -1; // -1 means full error handling
parser(null, errorRepairCount); // do the actual parse
super.resetTokenStream(); // allow tokens to be garbage collected
compNode = action.getASTCompletionNode(); // the completion node may be null
- return ( IASTTranslationUnit ) action.getParseResult();
+ return ( IASTTranslationUnit ) action.getParseResult();
}
@@ -220,25 +228,6 @@ public String getName() {
}
-
-private ITokenMap tokenMap = null;
-
-public void setTokens(List<IToken> tokens) {
- resetTokenStream();
- addToken(new Token(null, 0, 0, 0)); // dummy token
- for(IToken token : tokens) {
- token.setKind(tokenMap.mapKind(token.getKind()));
- addToken(token);
- }
- addToken(new Token(null, 0, 0, CPPParsersym.TK_EOF_TOKEN));
-}
-
-public CPPParser(IParserActionTokenProvider parser) { // constructor
- tokenMap = new TokenMap(CPPParsersym.orderedTerminalSymbols, parser.getOrderedTerminalSymbols());
-}
-
-
-
public void ruleAction(int ruleNumber)
{
switch (ruleNumber)
@@ -1421,19 +1410,19 @@ public CPPParser(IParserActionTokenProvider parser) { // constructor
}
//
- // Rule 328: ptr_operator ::= pointer_hook * <openscope-ast> cv_qualifier_seq_opt
+ // Rule 328: ptr_operator ::= pointer_hook * pointer_hook <openscope-ast> cv_qualifier_seq_opt
//
case 328: { action. consumePointer(); break;
}
//
- // Rule 329: ptr_operator ::= pointer_hook &
+ // Rule 329: ptr_operator ::= pointer_hook & pointer_hook
//
case 329: { action. consumeReferenceOperator(); break;
}
//
- // Rule 330: ptr_operator ::= dcolon_opt nested_name_specifier pointer_hook * <openscope-ast> cv_qualifier_seq_opt
+ // Rule 330: ptr_operator ::= dcolon_opt nested_name_specifier pointer_hook * pointer_hook <openscope-ast> cv_qualifier_seq_opt
//
case 330: { action. consumePointerToMember(); break;
}
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPParserprs.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPParserprs.java
index c065f48663a..031dc4e4ee7 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPParserprs.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPParserprs.java
@@ -69,7 +69,7 @@ public class CPPParserprs implements lpg.lpgjavaruntime.ParseTable, CPPParsersym
1,3,1,1,1,6,5,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,4,2,6,
+ 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,
@@ -90,443 +90,443 @@ public class CPPParserprs implements lpg.lpgjavaruntime.ParseTable, CPPParsersym
0,1,3,1,1,2,4,2,4,7,
9,5,1,3,1,0,1,1,2,4,
4,1,2,5,5,3,3,1,4,3,
- 1,0,1,3,-235,0,0,0,-2,0,
+ 1,0,1,3,-236,0,0,0,-2,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,-4,0,0,0,
- 0,0,0,0,-7,0,-124,0,0,0,
- 0,0,-145,0,0,0,0,-519,0,0,
+ 0,0,0,0,-7,0,-125,0,0,0,
+ 0,0,-146,0,0,0,0,-522,0,0,
0,0,0,0,0,0,0,0,0,0,
- -9,-324,-258,0,0,0,0,0,0,0,
+ -9,-325,-259,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,-58,0,0,0,0,0,
0,0,0,0,-48,0,0,0,-54,0,
- 0,0,0,0,-50,0,0,0,0,-295,
- 0,0,-72,0,-12,-106,0,0,-118,0,
+ 0,0,0,0,-50,0,0,0,0,-296,
+ 0,0,-72,0,-12,-106,0,0,-119,0,
0,0,0,0,0,0,0,0,0,0,
- -14,0,0,-24,0,-144,0,0,0,-31,
+ -14,0,0,-24,0,-145,0,0,0,-31,
0,0,0,0,0,-25,0,0,0,0,
0,0,0,0,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,0,0,0,0,0,0,-3,0,-32,
0,-113,0,0,0,0,0,0,0,0,
- 0,0,0,-63,0,-448,0,0,-34,0,
- 0,0,0,-115,0,0,0,0,0,0,
+ 0,0,0,-63,0,-451,0,0,-34,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,0,-333,0,0,
- 0,0,-135,0,0,0,0,0,0,-92,
+ 0,0,0,0,0,0,0,-334,0,0,
+ 0,0,-136,0,0,0,0,0,0,-92,
0,0,0,-102,0,0,0,-35,0,0,
- 0,0,-241,0,0,0,-215,0,0,0,
+ 0,0,-242,0,0,0,-216,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-116,0,0,0,0,0,0,
+ 0,0,0,-117,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-396,0,-60,0,0,0,0,
- 0,-101,0,0,0,0,-184,-13,0,-37,
- 0,0,0,0,0,-313,0,0,0,-277,
+ 0,0,0,-398,0,-60,0,0,0,0,
+ 0,-101,0,0,0,0,-185,-13,0,-37,
+ 0,0,0,0,0,-314,0,0,0,-278,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-232,
+ 0,0,0,0,0,0,0,0,0,-233,
0,-38,0,0,0,0,0,0,0,0,
- 0,0,-310,-49,0,-417,0,0,0,-282,
- 0,0,0,0,0,0,-227,0,0,0,
- 0,0,-30,0,0,0,-372,0,0,0,
- 0,0,0,0,0,0,-39,0,0,-380,
+ 0,0,-311,-49,0,-419,0,0,0,-283,
+ 0,0,0,0,0,0,-228,0,0,0,
+ 0,0,-30,0,0,0,-373,0,0,0,
+ 0,0,0,0,0,0,-39,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,-43,
0,0,0,0,0,0,0,0,-55,0,
- 0,0,-467,0,0,0,0,0,0,0,
+ 0,0,-470,0,0,0,0,0,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,-56,0,0,0,0,0,
- 0,-40,0,0,0,0,0,-304,0,0,
- 0,-237,0,0,0,0,0,0,0,0,
+ 0,-40,0,0,0,0,0,-305,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,0,0,0,-64,0,-67,
- 0,0,0,0,0,-41,-435,0,0,0,
- 0,0,-111,0,0,0,-129,0,0,0,
+ 0,0,0,0,0,-41,-438,0,0,0,
+ 0,0,-111,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,-47,0,-74,0,0,0,0,0,
- 0,0,0,0,0,-180,0,0,0,0,
- -306,-192,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-181,0,0,0,0,
+ -307,-193,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-52,0,-19,0,0,0,0,0,-142,
- 0,0,0,0,-276,0,0,0,0,0,
+ 0,-52,0,-19,0,0,0,0,0,-143,
+ 0,0,0,0,-277,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,-75,0,0,0,
0,0,0,0,-57,0,-17,0,0,0,
- 0,0,-290,0,0,0,0,0,0,0,
+ 0,0,-291,0,0,0,0,0,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,
- -88,0,0,0,0,-242,0,0,0,-76,
+ 0,0,-503,0,0,0,0,0,0,0,
+ -88,0,0,0,0,-243,0,0,0,-76,
0,0,0,0,0,0,0,0,-53,0,
- 0,0,-383,0,0,0,0,0,0,0,
+ 0,0,-385,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,-95,0,-132,0,0,0,
- -61,0,0,0,0,-42,0,-384,0,0,
+ 0,0,0,0,-95,0,-133,0,0,0,
+ -61,0,0,0,0,-42,0,-386,0,0,
0,0,0,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,-146,
+ 0,0,0,0,0,0,0,-135,0,-147,
0,0,0,0,0,0,0,0,0,0,
-107,0,0,0,-97,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,-148,0,0,0,0,0,-224,0,
- -177,0,0,0,0,0,0,0,0,0,
+ 0,0,-378,0,0,0,0,0,0,0,
+ 0,0,-149,0,0,0,0,0,-225,0,
+ -178,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -411,0,-59,0,0,0,0,0,0,-149,
- -104,0,0,0,0,-405,0,0,-264,0,
+ -413,0,-59,0,0,0,0,0,0,-150,
+ -104,0,0,0,0,-407,0,0,-265,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -150,0,-51,0,0,0,-225,0,-151,0,
- 0,-265,0,0,0,-152,0,0,0,0,
+ -151,0,-51,0,0,0,-226,0,-152,0,
+ 0,-266,0,0,0,-153,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,-93,0,0,0,0,0,0,
- 0,-69,0,-154,0,0,0,0,0,-376,
- 0,-94,0,0,-266,0,0,0,-166,0,
+ 0,-69,0,-155,0,0,0,0,0,-377,
+ 0,-94,0,0,-267,0,0,0,-167,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-138,0,0,0,
+ 0,0,0,0,0,0,-139,0,0,0,
0,0,0,0,-70,0,0,0,0,0,
- 0,0,-167,-168,-139,0,0,-267,0,0,
- 0,-169,0,0,0,0,0,0,0,0,
+ 0,0,-168,-169,-140,0,0,-268,0,0,
+ 0,-170,0,0,0,0,0,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,0,-170,-466,0,0,
- -268,0,0,0,0,0,0,0,0,0,
+ 0,-80,0,0,0,0,-171,-469,0,0,
+ -269,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -81,0,-501,0,0,0,0,0,-171,-172,
- -173,0,0,-269,0,0,0,0,0,0,
+ -81,0,-504,0,0,0,0,0,-172,-173,
+ -174,0,0,-270,0,0,0,0,0,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,-174,0,0,0,0,
- 0,-175,-176,-178,0,0,-270,0,0,0,
- -179,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-181,0,
- 0,0,0,0,0,0,-86,0,-185,0,
- 0,0,0,0,-187,-189,-195,0,0,-271,
- 0,0,0,-197,0,0,0,0,0,0,
+ 0,0,0,-84,0,-175,0,0,0,0,
+ 0,-176,-177,-179,0,0,-271,0,0,0,
+ -180,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-182,0,
+ 0,0,0,0,0,0,-86,0,-186,0,
+ 0,0,0,0,-188,-190,-196,0,0,-272,
+ 0,0,0,-198,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-198,0,0,0,0,0,0,0,0,
- 0,-201,0,-87,0,0,0,-203,0,-204,
- 0,0,-272,0,0,0,-205,0,0,0,
+ 0,-199,0,0,0,0,0,0,0,0,
+ 0,-202,0,-87,0,0,0,-204,0,-205,
+ 0,0,-273,0,0,0,-206,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-98,0,-220,0,0,0,0,0,
- -221,-90,-240,0,0,-273,0,0,0,-284,
+ 0,0,-98,0,-221,0,0,0,0,0,
+ -222,-90,-241,0,0,-274,0,0,0,-285,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-291,0,0,
- 0,0,0,0,0,-292,0,-299,0,0,
- 0,0,0,-300,-305,-307,0,0,-274,0,
- 0,0,-320,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-292,0,0,
+ 0,0,0,0,0,-293,0,-300,0,0,
+ 0,0,0,-301,-128,-306,0,0,-275,0,
+ 0,0,-308,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -321,0,0,0,0,0,0,0,-114,0,
- -322,0,0,0,0,0,-323,-127,-327,0,
- 0,-379,0,0,0,-328,0,0,0,0,
+ -321,0,0,0,0,0,0,0,-322,0,
+ -323,0,0,0,0,0,-324,-129,-328,0,
+ 0,-380,0,0,0,-329,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-329,0,0,0,0,0,0,
- 0,-341,0,-342,0,0,0,0,0,-343,
- -128,-344,0,0,-416,0,0,0,-345,0,
+ 0,0,0,-330,0,0,0,0,0,0,
+ 0,-342,0,-343,0,0,0,0,0,-344,
+ -132,-345,0,0,-418,0,0,0,-346,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,-347,0,-348,0,0,0,
- 0,0,-349,-131,-350,0,0,-520,0,0,
- 0,-351,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,-119,0,-353,
- 0,0,0,0,0,-360,-354,-188,0,0,
- -312,0,0,0,-301,0,0,0,0,0,
+ 0,0,0,0,0,0,-347,0,0,0,
+ 0,0,0,0,-348,0,-349,0,0,0,
+ 0,0,-350,-351,-352,0,0,-523,0,0,
+ 0,-353,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-354,
+ 0,0,0,0,0,0,0,-120,0,-355,
+ 0,-154,0,0,0,-361,0,-189,0,0,
+ -313,0,0,0,-302,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,
- -110,0,-355,0,0,0,0,0,-363,0,
+ -110,0,-356,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,-71,0,
0,0,0,0,0,0,-89,0,0,0,
- 0,-356,0,0,0,0,0,0,-392,0,
+ 0,-357,0,0,0,0,0,0,-394,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-334,0,
- -194,0,0,0,0,0,-393,0,0,0,
+ 0,0,0,0,0,0,0,0,-335,0,
+ -195,0,0,0,0,0,-395,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-357,0,
- 0,0,0,0,-120,0,0,0,-358,-208,
- 0,0,0,0,0,-359,-514,0,0,0,
+ 0,0,0,0,0,0,0,0,-358,0,
+ 0,0,0,0,-121,0,0,0,-359,-209,
+ 0,0,0,0,0,-360,-517,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-190,0,
- 0,0,0,0,0,0,-140,0,-303,0,
- 0,0,0,0,-263,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-114,0,
+ 0,0,0,0,0,0,-141,0,-363,0,
+ 0,0,0,0,-264,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-362,0,0,0,-536,0,
+ 0,0,0,0,-365,0,-115,0,-539,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-364,0,0,-261,0,0,0,0,0,
+ 0,-367,0,0,-262,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,-366,0,-262,0,0,0,
- -367,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-216,0,
+ 0,0,0,0,0,0,-454,0,0,0,
+ 0,0,0,0,-368,0,-263,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-217,0,
0,0,0,0,0,0,-28,0,0,0,
- 0,0,0,0,0,0,0,0,0,-202,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,-302,0,0,0,-218,0,0,0,
- 0,0,0,-368,-212,0,0,0,0,0,
- 0,0,0,0,0,0,0,-141,-369,-365,
- 0,0,-15,-452,0,0,0,0,0,0,
- 0,-217,0,0,0,0,-308,-143,0,0,
- 0,0,0,0,-109,0,0,0,0,-130,
- 0,0,0,-206,0,0,0,0,0,0,
- -371,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-203,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,-303,0,0,0,-219,0,0,0,
+ 0,0,0,-191,-213,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-142,-369,-370,
+ 0,0,-15,-455,0,0,0,0,0,0,
+ 0,-218,0,0,0,0,-309,-144,0,0,
+ 0,0,0,0,-109,0,0,0,0,-131,
+ 0,0,0,-207,0,0,0,0,0,0,
+ -372,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,-46,0,0,-16,
- 0,0,-394,0,0,-68,0,0,0,0,
+ 0,0,-396,0,0,-68,0,0,0,0,
0,0,0,0,0,-29,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-78,0,0,0,0,0,-259,
+ 0,0,0,-78,0,0,0,0,0,-260,
+ 0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,-402,-403,0,0,0,-471,0,0,
+ -530,-404,-405,0,0,0,0,0,0,0,
+ 0,0,-540,-337,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-208,0,0,-261,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-400,-401,0,0,0,-468,0,0,
- -527,-402,-403,0,0,0,0,0,0,0,
- 0,0,-537,-336,0,0,0,0,0,0,
- 0,0,0,0,0,0,-207,0,0,-260,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-294,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-293,0,0,
+ -65,0,0,0,-210,0,0,0,0,0,
+ 0,0,0,-21,-212,-253,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -65,0,0,0,-209,0,0,0,0,0,
- 0,0,0,-21,-211,-252,0,0,0,0,
+ 0,0,0,0,0,0,0,-420,0,0,
+ 0,0,-442,0,0,0,0,0,0,-421,
+ 0,0,-288,0,0,-423,0,-428,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-418,0,0,
- 0,0,-439,0,0,0,0,0,0,-419,
- 0,0,-153,0,0,-421,0,0,0,0,
+ -490,0,-432,-282,0,0,0,0,0,0,
+ 0,0,0,0,-254,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -487,0,-426,-281,0,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,-430,0,0,0,
- 0,-254,0,0,0,-309,0,0,0,0,
+ 0,-255,0,0,0,-310,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-434,0,0,0,0,-255,0,
+ 0,0,0,-437,0,0,0,0,-256,0,
0,0,-73,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -446,0,0,0,0,-280,0,-196,-447,0,
- -338,0,0,0,0,0,0,0,0,0,
- 0,0,0,-10,0,0,0,0,-414,0,
- 0,0,-330,0,0,0,0,0,-404,0,
- 0,0,-361,0,0,0,0,-449,0,0,
+ -449,0,0,0,0,-281,0,-289,-450,0,
+ -339,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-10,0,0,0,0,-416,0,
+ 0,0,-331,0,0,0,0,0,-406,0,
+ 0,0,-362,0,0,0,0,-452,0,0,
0,0,0,0,0,0,0,0,0,-103,
- -238,0,0,0,0,-191,-373,0,0,0,
+ -239,0,0,0,0,-192,-374,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-332,-453,0,0,
- 0,0,0,0,0,0,0,0,0,-454,
- 0,0,0,-200,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-333,-456,0,0,
+ 0,0,0,0,0,0,0,0,0,-457,
+ 0,0,0,-201,0,0,0,0,0,0,
0,0,0,0,0,0,0,-5,0,0,
- 0,-18,0,-316,0,0,0,0,0,0,
- 0,-386,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-340,-256,0,0,
+ 0,-18,0,-317,0,0,0,0,0,0,
+ 0,-388,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-341,-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,0,-182,0,0,0,0,-33,0,
- -463,0,0,0,0,0,-469,-233,-234,0,
- 0,0,0,-465,0,0,0,0,-484,-488,
- 0,-133,0,0,0,0,0,0,0,0,
- 0,0,-512,0,0,0,0,-147,-121,0,
- 0,0,0,0,0,0,0,0,-489,0,
- 0,0,0,-278,0,0,0,0,0,-494,
- 0,0,-315,-157,0,0,0,0,0,0,
+ 0,0,0,-183,0,0,0,0,-33,0,
+ -466,0,0,0,0,0,-472,-234,-235,0,
+ 0,0,0,-468,0,0,0,0,-487,-491,
+ 0,-134,0,0,0,0,0,0,0,0,
+ 0,0,-515,0,0,0,0,-148,-122,0,
+ 0,0,0,0,0,0,0,0,-492,0,
+ 0,0,0,-279,0,0,0,0,0,-497,
+ 0,0,-316,-158,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -257,0,0,0,0,0,0,0,0,0,
+ -258,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-370,0,0,0,0,0,0,-385,
- -502,-456,-399,0,0,0,0,0,0,0,
- 0,0,0,0,0,-193,-213,-219,0,0,
- 0,0,0,0,0,0,0,0,-503,-420,
- 0,0,0,0,-210,0,0,-285,0,0,
- 0,0,0,0,0,0,0,-407,0,-511,
- -521,0,0,0,0,0,-20,0,0,0,
+ 0,0,-371,0,0,0,0,0,0,-387,
+ -505,-459,-401,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-194,-197,-220,0,0,
+ 0,0,0,0,0,0,0,0,-506,-422,
+ 0,0,0,0,-211,0,0,-286,0,0,
+ 0,0,0,0,0,0,0,-409,0,-514,
+ -524,0,0,0,0,0,-20,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-415,0,0,0,0,0,0,
- 0,0,0,-422,0,0,-395,0,-483,0,
- 0,0,-214,0,-526,0,0,0,0,0,
+ 0,0,0,-417,0,0,0,0,0,0,
+ 0,0,0,-424,0,0,-397,0,-486,0,
+ 0,0,-214,0,-529,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-470,0,0,0,0,0,
- -457,0,0,0,0,-455,0,0,0,0,
+ 0,0,0,0,-473,0,0,0,0,0,
+ -460,0,0,0,0,-458,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,-62,0,0,0,0,0,-22,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-228,-105,0,0,0,0,0,0,0,
- 0,0,0,0,-493,-223,0,-279,0,0,
- -244,0,0,0,0,-318,0,-529,0,0,
- 0,0,0,0,0,0,0,-183,0,0,
- -374,-286,0,-288,0,0,0,0,0,0,
- 0,-495,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-375,0,
+ 0,-229,-105,0,0,0,0,0,0,0,
+ 0,0,0,0,-496,-224,0,-215,0,0,
+ -245,0,0,0,0,-319,0,-532,0,0,
+ 0,0,0,0,0,0,0,-184,0,0,
+ -304,-280,0,-383,0,0,0,0,0,0,
+ 0,-498,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-366,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-287,0,-311,0,0,0,0,0,
+ 0,0,-287,0,-312,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,-497,0,0,0,
- 0,0,0,0,0,0,0,0,0,-437,
- -314,0,0,0,0,0,0,-505,0,0,
- 0,0,-516,-499,-438,0,0,0,-117,0,
- 0,0,0,0,-481,0,0,0,0,0,
- 0,0,-289,-296,-199,0,0,0,-298,0,
- -317,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,-440,
+ -315,0,0,0,0,0,0,-508,0,0,
+ 0,0,-519,-502,-441,0,0,0,-118,0,
+ 0,0,0,0,-484,0,0,0,0,0,
+ 0,0,-290,-297,-200,0,0,0,-299,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,-532,0,0,
- 0,0,0,-222,-390,-432,0,0,0,0,
+ 0,0,0,0,0,0,0,-535,0,0,
+ 0,0,0,-223,-375,-434,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -517,0,0,0,0,0,0,0,0,-294,
- -506,0,0,0,0,0,0,0,0,0,
+ -520,0,0,0,0,0,0,0,0,-295,
+ -509,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-381,-538,0,0,-275,0,0,0,0,
+ 0,-384,-541,0,0,-276,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-410,0,-243,0,0,
- -382,0,0,0,-1,0,0,0,0,0,
- 0,0,0,0,0,0,0,-319,0,0,
+ 0,0,0,0,0,-382,0,-244,0,0,
+ -435,0,0,0,-1,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-320,0,0,
0,0,0,0,0,0,0,0,0,-36,
0,0,0,0,-44,0,0,0,0,0,
- 0,0,0,0,0,0,0,-518,0,0,
- 0,0,0,0,0,0,0,0,-156,0,
- 0,0,0,0,-325,-442,-335,-428,0,0,
- 0,0,0,0,-504,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-521,0,0,
+ 0,0,0,0,0,0,0,0,-157,0,
+ 0,0,0,0,-326,-445,-336,-376,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,-431,0,0,0,0,0,0,
+ 0,0,0,-412,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -247,0,0,0,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,-515,0,0,-248,0,0,0,-429,
+ 0,0,0,0,0,-249,0,0,0,-392,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,-85,0,0,
0,0,-112,0,0,0,0,0,0,0,
- 0,0,0,0,0,-531,0,0,0,0,
- -158,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-518,0,0,0,0,
+ -159,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,0,0,
- 0,-45,0,0,0,0,-433,0,0,-339,
- 0,0,0,0,-123,0,0,-443,0,-378,
- 0,0,0,0,0,0,0,-398,0,0,
+ 0,0,-430,0,0,0,0,0,0,0,
+ 0,-45,0,0,0,-431,-433,0,0,-340,
+ 0,0,0,0,-124,0,0,-446,0,-379,
+ 0,0,0,0,0,0,0,-400,0,0,
0,0,0,0,0,0,0,-66,0,0,
- 0,0,-283,0,0,0,0,0,0,-444,
- 0,0,0,0,-412,-441,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-440,
- 0,0,0,0,-125,0,0,0,0,0,
- 0,0,0,-450,-458,0,0,0,0,0,
- 0,0,0,0,0,0,0,-460,0,0,
- 0,0,-391,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-523,0,
+ 0,0,-284,0,0,0,0,0,0,-447,
+ 0,0,0,0,-414,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-436,
+ 0,0,0,0,-126,0,0,0,0,0,
+ 0,0,0,-443,-444,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-453,0,0,
+ 0,0,-393,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-461,0,0,-499,0,
0,0,0,0,0,0,0,0,0,0,
- -231,0,0,0,-462,0,-464,-445,0,0,
- -474,0,0,-475,0,0,-476,0,0,0,
+ -232,0,0,0,-465,0,-463,-448,0,0,
+ -467,0,-477,-478,-485,0,0,0,0,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,0,0,0,0,0,
- -249,0,0,0,0,0,0,0,0,0,
+ -479,0,0,0,0,0,0,0,-534,0,
+ -250,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-250,0,0,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,-478,0,-251,0,
- 0,0,-490,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-480,0,-252,0,
+ 0,0,-481,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -482,0,-492,-507,0,-528,0,0,0,0,
+ -495,0,-510,-531,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -159,0,0,0,0,0,0,0,0,0,
+ -160,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-160,0,0,0,0,0,0,0,
+ 0,0,-161,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-161,0,0,0,0,0,
+ 0,0,0,0,-162,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-162,0,0,0,
+ 0,0,0,0,0,0,-163,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-163,0,
+ 0,0,0,0,0,0,0,0,-164,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -164,0,0,0,0,0,0,0,0,0,
+ -165,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-165,0,0,0,0,0,0,0,
+ 0,0,-166,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-236,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,0,0,0,-245,0,0,0,
+ 0,0,0,0,0,0,-246,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-246,0,
+ 0,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,
- -326,0,0,0,0,0,0,0,0,0,
+ -327,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-408,0,0,0,-491,0,0,0,
+ 0,0,-410,0,0,0,-493,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-8,-425,0,-509,0,0,
- -473,0,0,0,-510,-122,-11,-479,0,0,
- 0,0,0,0,0,0,0,0,-524,-530,
- 0,0,-534,0,0,0,0,0,0,0,
- 0,0,0,0,0,-522,0,0,0,0,
+ 0,0,0,0,-8,-427,0,-494,0,0,
+ -476,0,0,0,-512,-123,-11,-482,0,0,
+ 0,0,0,-526,0,0,0,0,-513,0,
+ 0,0,-537,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-525,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-480,-82,0,-508,0,0,0,
- 0,0,0,0,0,0,-533,0,0,0,
- 0,0,0,0,0,0,0,0,-535,0,
- 0,0,0,0,-485,0,0,0,0,0,
- 0,0,0,-387,0,-83,0,0,0,0,
+ 0,0,0,-483,-82,0,-511,0,0,0,
+ 0,0,0,0,0,0,-527,0,0,0,
+ 0,0,0,0,0,0,0,0,-533,-536,
+ 0,0,0,0,-488,0,0,-538,0,0,
+ 0,0,0,-389,0,-83,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-297,0,0,0,0,0,0,0,
+ 0,0,-298,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
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,-408,0,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,-489,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,-108,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-459,0,0,0,0,0,0,0,
+ 0,0,-462,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,-229,0,0,0,0,-413,0,0,
+ 0,0,-230,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,
0,0,0,0,-91,0,0,0,0,0,
0,0,0,-96,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-136,
+ 0,0,0,0,0,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,0,0,0,0,0,
- 0,0,-230,0,-137,0,0,0,0,0,
+ 0,0,-231,0,-138,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,-6,0,0,0,0,0,0,0,0,
- 0,0,0,0,-388,0,0,0,0,0,
- 0,0,0,-99,0,0,0,0,0,-126,
- 0,0,0,0,-513,-498,0,0,0,0,
- 0,-186,0,0,0,-331,0,0,0,0,
+ 0,0,0,0,-390,0,0,0,0,0,
+ 0,0,0,-99,0,0,0,0,0,-127,
+ 0,0,0,0,-516,-501,0,0,0,0,
+ 0,-187,0,0,0,-332,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -337,0,0,0,0,0,-461,0,0,0,
- 0,0,0,0,0,-397,0,0,0,-436,
+ -338,0,0,0,0,0,-464,0,0,0,
+ 0,0,0,0,0,-399,0,0,0,-439,
0,0,0,0,0,0,0,0,0,0,
- -471,0,0,0,0,0,0,-472,0,0,
+ -474,0,0,0,0,0,0,-475,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-155,0,0,0,
- 0,-226,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-239,0,0,0,0,
+ 0,0,0,0,0,0,-156,0,0,0,
+ 0,-227,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,-423,
- 0,0,0,0,-424,0,0,0,0,-427,
- 0,0,0,0,0,-525,0,0,-389,0,
- 0,0,0,-409,-539,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-425,
+ 0,0,0,0,-426,0,0,0,0,-429,
+ 0,0,0,0,0,-528,0,0,-391,0,
+ 0,0,0,-411,-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,
0,0,0,0,0,0,0,0,0,0,
@@ -617,7 +617,7 @@ public class CPPParserprs implements lpg.lpgjavaruntime.ParseTable, CPPParsersym
28,1180,2262,3167,35,798,32,232,3619,27,
30,31,720,670,26,28,1534,25,23,50,
1549,106,76,77,108,675,1583,1592,1584,1669,
- 1627,2040,235,230,231,1018,35,1315,1542,588,
+ 1627,2022,235,230,231,1018,35,1315,1542,588,
35,664,388,274,297,1428,1375,319,1321,321,
2311,314,856,1349,2928,667,155,35,453,1349,
3595,4722,242,245,248,251,1174,2849,352,49,
@@ -649,12 +649,12 @@ public class CPPParserprs implements lpg.lpgjavaruntime.ParseTable, CPPParsersym
2122,1712,2136,1706,1142,1713,1714,143,312,390,
427,517,144,1914,667,3028,988,1136,4786,4604,
588,35,664,388,182,518,324,214,513,868,
- 160,2928,61,1721,35,798,32,588,3628,41,
- 30,31,720,670,3556,1782,438,1492,1721,343,
+ 160,2928,61,1721,35,798,32,588,3763,41,
+ 30,31,720,670,3654,1782,438,1492,1721,343,
2720,35,798,32,452,3619,27,30,31,720,
670,26,28,1534,25,23,50,1549,106,76,
77,108,3028,1583,1592,1584,1669,1627,1671,1670,
- 59,1712,1893,1706,514,1713,1714,143,288,1613,
+ 59,1712,1911,1706,514,1713,1714,143,288,1613,
3126,379,144,2446,35,798,32,3625,3619,27,
30,31,720,670,26,28,1534,25,23,50,
1549,106,76,77,108,3197,1583,1592,1584,1669,
@@ -691,7 +691,7 @@ public class CPPParserprs implements lpg.lpgjavaruntime.ParseTable, CPPParsersym
798,32,421,3619,27,30,31,720,670,26,
28,1534,25,23,50,1549,106,76,77,108,
372,1583,1592,1584,1669,1627,1671,1670,2299,1712,
- 1787,1706,625,1713,1714,143,1747,1928,523,373,
+ 1787,1706,625,1713,1714,143,1747,1885,523,373,
144,2860,35,798,32,1866,3619,27,30,31,
720,670,26,28,1534,25,23,50,1549,106,
76,77,108,1866,1583,1592,1584,1669,1627,1671,
@@ -699,7 +699,7 @@ public class CPPParserprs implements lpg.lpgjavaruntime.ParseTable, CPPParsersym
371,2586,35,798,32,2458,3619,27,30,31,
720,670,26,28,1534,25,23,50,1549,106,
76,77,108,867,1583,1592,1584,1669,1627,1671,
- 1670,1603,1712,1231,1706,2444,1713,1714,143,3654,
+ 1670,1603,1712,1231,1706,2444,1713,1714,143,3777,
2350,675,142,144,327,369,588,35,2819,2918,
35,798,32,2058,3619,27,30,31,720,670,
26,28,1534,25,23,50,1549,106,76,77,
@@ -709,7 +709,7 @@ public class CPPParserprs implements lpg.lpgjavaruntime.ParseTable, CPPParsersym
31,720,670,26,28,1534,25,23,50,1549,
106,76,77,108,300,1583,1592,1584,1669,1627,
1671,1670,214,1712,2009,1706,744,1713,1714,143,
- 588,2757,1097,154,144,2918,35,798,32,2512,
+ 588,2723,1097,154,144,2918,35,798,32,2512,
3619,27,30,31,720,670,26,28,1534,25,
23,50,1549,106,76,77,108,300,1583,1592,
1584,1669,1627,1671,1670,214,1712,354,1706,824,
@@ -722,9 +722,9 @@ public class CPPParserprs implements lpg.lpgjavaruntime.ParseTable, CPPParsersym
720,670,26,28,1534,25,23,50,1549,106,
76,77,108,2438,1583,1592,1584,1669,1627,1671,
1670,214,1712,403,1706,4316,1713,1714,143,1252,
- 65,231,151,144,2918,35,798,32,3127,3619,
+ 65,231,151,144,2918,35,798,32,3203,3619,
27,30,31,720,670,26,28,1534,25,23,
- 50,1549,106,76,77,108,3203,1583,1592,1584,
+ 50,1549,106,76,77,108,3288,1583,1592,1584,
1669,1627,1671,1670,214,1712,833,1706,3785,1713,
1714,143,1745,317,1255,150,144,2918,35,798,
32,1952,3619,27,30,31,720,670,26,28,
@@ -743,24 +743,24 @@ public class CPPParserprs implements lpg.lpgjavaruntime.ParseTable, CPPParsersym
2295,3619,27,30,31,720,670,26,28,1534,
25,23,50,1549,106,76,77,108,1942,1583,
1592,1584,1669,1627,1671,1670,2306,1712,2371,1706,
- 303,1713,1714,143,2416,1534,1955,146,144,2918,
- 35,798,32,2441,3619,27,30,31,720,670,
+ 303,1713,1714,143,2416,1231,1534,146,144,2918,
+ 35,798,32,1955,3619,27,30,31,720,670,
26,28,1534,25,23,50,1549,106,76,77,
- 108,2491,1583,1592,1584,1669,1627,1671,1670,214,
- 1712,2504,1706,2818,1713,1714,143,2510,1231,2511,
+ 108,2441,1583,1592,1584,1669,1627,1671,1670,2491,
+ 1712,2504,1706,302,1713,1714,143,2510,1231,2511,
145,144,2918,35,798,32,3459,3619,27,30,
31,720,670,26,28,1534,25,23,50,1549,
106,76,77,108,3385,1583,1592,1584,1669,1627,
- 1671,1670,581,1712,753,1706,302,1713,1714,143,
- 1234,1231,1653,159,144,2918,35,798,32,1755,
+ 1671,1670,581,1712,753,1706,299,1713,1714,143,
+ 1234,2183,1653,159,144,2918,35,798,32,1755,
3619,27,30,31,720,670,26,28,1534,25,
23,50,1549,106,76,77,108,1377,1583,1592,
- 1584,1669,1627,1671,1670,1828,1712,1958,1706,299,
- 1713,1714,143,2020,2183,2175,140,144,3046,35,
- 798,32,2179,3619,27,30,31,720,670,26,
+ 1584,1669,1627,1671,1670,1828,1712,1958,1706,404,
+ 1713,1714,143,2020,2175,2179,140,144,3046,35,
+ 798,32,489,3619,27,30,31,720,670,26,
28,1534,25,23,50,1549,106,76,77,108,
- 489,1583,1592,1584,1669,1627,1671,1670,1349,1712,
- 2118,1706,404,1713,1714,143,42,2124,1349,189,
+ 2118,1583,1592,1584,1669,1627,1671,1670,1349,1712,
+ 2124,1706,667,1713,1714,143,42,3901,1349,189,
144,3167,35,798,32,1231,3619,27,30,31,
720,670,26,28,1534,25,23,50,1549,106,
76,77,108,1103,1583,1592,1584,1669,1627,1671,
@@ -769,7 +769,7 @@ public class CPPParserprs implements lpg.lpgjavaruntime.ParseTable, CPPParsersym
26,28,1534,25,23,50,1549,106,76,77,
108,2876,1583,1592,1584,1669,1627,1671,1670,1224,
1712,459,1706,3429,1713,1756,164,1924,35,798,
- 32,326,2435,1971,30,31,720,670,2225,3167,
+ 32,326,2435,1928,30,31,720,670,2225,3167,
35,798,32,292,3619,27,30,31,720,670,
26,28,1534,25,23,50,1549,106,76,77,
108,522,1583,1592,1584,1669,1627,1671,1670,214,
@@ -777,60 +777,60 @@ public class CPPParserprs implements lpg.lpgjavaruntime.ParseTable, CPPParsersym
32,2706,3619,27,30,31,720,670,26,28,
1534,25,23,50,1549,106,76,77,108,3825,
1583,1592,1584,1669,1627,1671,1670,926,1712,2516,
- 1706,3312,1713,1756,164,1924,35,798,32,2468,
+ 1706,3363,1713,1756,164,1924,35,798,32,2468,
1943,40,30,31,720,670,1272,3225,35,798,
32,422,3619,27,30,31,720,670,26,28,
1534,25,23,50,1549,106,76,77,108,386,
- 1583,1592,1584,1669,1627,1671,1670,214,1712,2283,
+ 1583,1592,1584,1669,1627,1671,1670,214,1712,2470,
1706,807,1713,1756,164,3167,35,798,32,425,
3619,27,30,31,720,670,26,28,1534,25,
23,50,1549,106,76,77,108,304,1583,1592,
- 1584,1669,1627,1671,1670,2470,1712,402,2219,1443,
- 35,798,32,1757,4568,27,30,31,720,670,
- 26,28,2507,511,443,3167,35,798,32,3736,
+ 1584,1669,1627,1671,1670,2507,1712,386,2219,1443,
+ 35,798,32,329,4568,27,30,31,720,670,
+ 26,28,87,511,443,3167,35,798,32,3949,
3619,27,30,31,720,670,26,28,1534,25,
23,50,1549,106,76,77,108,2650,1583,1592,
- 1584,1669,1627,1671,1670,87,2093,3167,35,798,
- 32,2581,3619,27,30,31,720,670,26,28,
+ 1584,1669,1627,1671,1670,2581,2093,3167,35,798,
+ 32,3127,3619,27,30,31,720,670,26,28,
1534,25,23,50,1549,106,76,77,108,933,
1583,1592,1584,1669,1627,1671,2142,1734,35,798,
32,3252,3808,27,30,31,720,670,339,28,
1258,35,798,32,3510,3590,27,30,31,720,
- 670,339,28,1924,35,798,32,1353,1835,3485,
- 30,31,720,670,2608,1480,35,1886,32,3252,
- 3808,27,30,31,720,670,339,28,214,2609,
- 1231,1080,2379,1746,237,332,319,1321,321,2465,
+ 670,339,28,1924,35,798,32,1353,1835,3700,
+ 30,31,720,670,386,1480,35,1893,32,3252,
+ 3808,27,30,31,720,670,339,28,214,2608,
+ 2609,1080,2379,1746,237,332,319,1321,321,2465,
314,856,588,35,1270,281,239,933,214,319,
1321,321,2417,314,856,588,35,664,388,313,
- 588,35,664,388,1018,35,396,2651,179,1080,
+ 588,35,664,388,1018,35,396,2651,1757,1080,
352,2610,1876,332,319,1321,321,3199,314,856,
3009,391,427,344,1497,1409,349,2101,1080,49,
- 1247,1868,4498,2546,49,232,2101,1141,1035,2259,
+ 1247,1868,4498,2546,49,232,2101,1141,1035,2424,
306,310,734,1035,2665,2651,1747,35,798,32,
3252,3590,27,30,31,720,670,339,28,1842,
240,230,231,1443,588,35,664,388,322,287,
3167,35,798,32,1078,3619,27,30,31,720,
670,26,28,1534,25,23,50,1549,106,76,
- 77,108,232,1583,1592,1584,1669,2050,273,393,
+ 77,108,232,1583,1592,1584,1669,2040,273,393,
427,3365,1841,2644,2646,319,1321,321,2048,314,
856,2048,2675,2676,1878,366,94,244,230,231,
- 417,419,1885,2048,1244,35,798,32,2506,4568,
+ 417,419,1886,2048,1244,35,798,32,2506,4568,
27,30,31,720,670,59,28,1018,35,396,
- 3167,35,798,32,2269,3619,27,30,31,720,
+ 3167,35,798,32,3311,3619,27,30,31,720,
670,26,28,1534,25,23,50,1549,106,76,
- 77,108,340,1583,1592,1584,1669,2057,1506,35,
+ 77,108,340,1583,1592,1584,1669,2050,1506,35,
798,32,3110,3590,27,30,31,720,670,339,
28,2030,35,798,32,1943,3808,27,30,31,
720,670,339,28,69,1922,3167,35,798,32,
351,3619,27,30,31,720,670,26,28,1534,
25,23,50,1549,106,76,77,108,2677,1583,
1592,1584,1997,588,35,664,388,319,1321,321,
- 173,314,856,667,323,1080,2547,356,3901,333,
+ 173,314,856,386,323,1080,2547,356,2552,333,
319,1321,321,531,317,856,531,1884,352,355,
- 2506,1345,296,2552,155,35,453,431,531,4722,
+ 2506,1345,296,2614,155,35,453,431,531,4722,
2413,344,1497,1409,349,3167,35,798,32,3053,
3619,27,30,31,720,670,26,28,1534,25,
- 23,50,1549,106,76,77,108,2614,1583,1592,
+ 23,50,1549,106,76,77,108,3556,1583,1592,
1584,2005,3167,35,798,32,933,3619,27,30,
31,720,670,26,28,1534,25,23,50,1549,
106,76,77,108,2137,1583,1592,1584,2007,3167,
@@ -840,20 +840,20 @@ public class CPPParserprs implements lpg.lpgjavaruntime.ParseTable, CPPParsersym
535,1244,35,798,32,497,4568,27,30,31,
720,670,58,28,1428,990,293,70,228,929,
35,664,388,499,35,279,156,635,4472,588,
- 35,1270,2811,1,180,2440,867,535,1571,35,
+ 35,1270,2811,1,180,3339,867,535,1571,35,
1270,276,203,215,4682,202,212,213,214,216,
2094,1922,169,273,1086,228,2101,2273,392,427,
3314,1142,168,156,183,167,170,171,172,173,
- 174,180,2440,867,450,1749,1755,1349,2636,203,
+ 174,180,3339,867,450,1749,1755,1349,2636,203,
215,4682,202,212,213,214,216,156,378,169,
- 588,3010,1270,74,2101,200,3700,328,335,168,
+ 588,3010,1270,74,2101,200,3776,328,335,168,
181,184,167,170,171,172,173,174,3283,35,
664,388,1352,3383,1867,2984,2225,2898,2928,2465,
1326,237,1856,35,798,32,3443,3808,27,30,
31,720,670,339,28,72,2400,1349,3167,35,
798,32,273,3619,27,30,31,720,670,26,
28,1534,25,23,50,1549,106,76,77,108,
- 4283,1583,1592,2015,588,35,664,388,1080,2743,
+ 4283,1583,1592,2014,588,35,664,388,1080,2743,
232,2713,332,2928,232,2853,1080,1388,2101,2101,
333,319,1321,321,42,315,856,42,1739,2686,
2645,343,1428,35,293,235,230,231,49,247,
@@ -865,101 +865,101 @@ public class CPPParserprs implements lpg.lpgjavaruntime.ParseTable, CPPParsersym
50,1549,86,76,77,2443,2500,2932,3167,3258,
4548,3167,35,798,32,350,3619,27,30,31,
720,670,26,28,1534,25,23,50,1549,106,
- 76,77,108,345,1583,1592,2022,535,352,2984,
+ 76,77,108,345,1583,1592,2015,535,352,2984,
1867,2293,2661,1840,2928,2465,2928,2928,1326,522,
360,344,1497,1409,349,228,214,214,1943,342,
- 3148,2457,2400,156,343,2400,2914,1792,1798,2744,
- 431,180,2440,867,535,588,35,293,1943,203,
- 215,4682,202,212,213,214,216,4023,2359,169,
+ 3148,2818,2400,156,343,2400,2914,1792,1798,2744,
+ 431,180,3339,867,535,588,35,293,1943,203,
+ 215,4682,202,212,213,214,216,4021,2359,169,
2783,2005,228,3298,1080,1253,3009,1567,332,168,
- 156,2723,167,170,171,172,173,174,180,2440,
+ 156,2708,167,170,171,172,173,174,180,3339,
867,44,1739,442,2087,456,203,215,4682,202,
212,213,214,216,517,284,169,2270,535,2742,
- 2942,360,4790,214,360,2692,168,2766,178,167,
+ 2942,360,4790,214,360,2692,168,2457,178,167,
170,171,172,173,174,382,228,3798,1792,1798,
- 3826,1792,1798,2225,156,588,35,664,388,232,
- 5451,603,180,2440,867,535,1571,35,1270,3039,
+ 3855,1792,1798,2225,156,588,35,664,388,232,
+ 5451,603,180,3339,867,535,1571,35,1270,3039,
203,215,4682,202,212,213,214,216,5451,2225,
169,2065,237,228,250,230,231,2465,1602,434,
168,156,176,167,170,171,172,173,174,180,
- 2440,867,214,1866,5451,5451,2928,203,215,4682,
+ 3339,867,214,1866,5451,5451,2928,203,215,4682,
202,212,213,214,216,689,2041,169,214,535,
- 2934,214,2056,5451,343,1142,2101,168,2742,177,
- 167,170,171,172,173,174,1080,228,1866,4287,
- 332,1231,214,867,1592,156,960,3028,351,5451,
- 232,156,775,180,2440,867,535,1911,69,376,
+ 2934,214,2766,5451,343,1142,2101,168,2742,177,
+ 167,170,171,172,173,174,1080,228,1866,4308,
+ 332,2283,214,867,1592,156,2056,3028,351,5451,
+ 232,156,775,180,3339,867,535,1919,69,376,
2957,203,215,4682,202,212,213,214,216,1231,
- 88,169,4520,102,228,253,230,231,867,198,
+ 88,169,4520,102,228,253,230,231,867,402,
5451,168,156,187,167,170,171,172,173,174,
- 180,2440,867,214,376,1943,352,3532,203,215,
- 4682,202,212,213,214,216,3314,197,169,344,
+ 180,3339,867,214,376,1943,352,960,203,215,
+ 4682,202,212,213,214,216,3314,179,169,344,
1497,1409,349,330,35,664,388,3053,168,5451,
3161,167,170,171,172,173,174,2471,35,798,
32,3252,3590,27,30,31,720,670,339,28,
667,1944,5451,334,335,4801,2465,49,588,35,
664,388,5451,1345,861,667,1035,999,535,237,
4808,5451,285,374,2465,588,35,1270,3160,89,
- 629,5451,102,214,2090,1329,228,3561,2928,214,
+ 629,5451,102,214,2090,1329,228,3532,2928,214,
2465,214,433,4414,156,3113,319,1321,321,5451,
- 314,856,180,2440,867,1080,2400,5451,3288,333,
+ 314,856,180,3339,867,1080,2400,5451,3312,333,
203,215,4682,202,212,213,214,216,947,313,
169,5451,535,1080,237,1231,1864,332,5451,2465,
168,352,192,167,170,171,172,173,174,1080,
228,1866,5451,333,346,1497,1409,349,156,5451,
- 237,588,35,664,388,2465,180,2440,867,3445,
- 306,310,734,406,203,215,4682,202,212,213,
+ 237,588,35,664,388,2465,180,3339,867,3445,
+ 306,310,734,198,203,215,4682,202,212,213,
214,216,1592,1033,169,505,214,535,1080,71,
- 1142,867,332,3889,168,432,186,167,170,171,
+ 1142,867,332,4324,168,432,186,167,170,171,
172,173,174,1628,1078,228,214,525,2122,5451,
- 2347,1592,1142,156,1080,1670,156,5451,332,2928,
- 5451,180,2440,867,3411,2229,503,504,2101,203,
+ 3561,1592,1142,156,1080,1670,156,5451,332,2928,
+ 5451,180,3339,867,3411,2229,503,504,2101,203,
215,4682,202,212,213,214,216,228,160,169,
330,35,664,388,3314,760,35,664,388,168,
2942,194,167,170,171,172,173,174,1866,5451,
68,205,215,4682,204,212,213,214,216,1217,
35,664,388,3314,49,2101,214,2101,1231,49,
- 1142,330,335,1035,2083,1018,35,396,1035,47,
+ 1142,3840,335,1035,2083,1018,35,396,1035,47,
206,208,210,294,295,5451,565,2534,867,217,
- 207,209,1261,49,214,3780,156,53,3004,87,
- 3777,335,1035,2871,524,3914,201,5451,13,5451,
+ 207,209,1261,49,214,3780,156,53,2347,87,
+ 330,335,1035,2871,524,3914,197,5451,13,5451,
4317,3167,35,798,32,5451,3619,27,30,31,
720,670,26,28,1534,25,23,50,1549,106,
- 76,77,108,1349,1583,1962,3167,35,798,32,
+ 76,77,108,5451,1583,1962,3167,35,798,32,
1231,3619,27,30,31,720,670,26,28,1534,
25,23,50,1549,106,76,77,108,1878,1583,
1964,5451,2928,1747,35,798,32,3252,3590,27,
- 30,31,720,670,339,28,1349,5451,199,539,
+ 30,31,720,670,339,28,1349,5451,406,539,
228,3167,35,798,32,3205,3619,27,30,31,
720,670,26,28,1534,25,23,50,1549,106,
76,77,85,1231,205,215,4682,204,212,213,
- 214,216,1015,35,664,388,97,214,5451,5451,
- 2101,2578,319,1321,321,1965,314,856,214,2928,
+ 214,216,1015,35,664,388,1231,214,5451,5451,
+ 2101,3004,319,1321,321,1965,314,856,214,2928,
2101,5451,1142,206,208,210,294,295,2101,565,
- 5451,4346,217,207,209,313,49,228,330,35,
- 664,388,52,2122,5451,1035,47,1142,156,98,
- 214,567,451,4317,1142,2101,2101,3917,5451,2137,
- 3840,205,215,4682,204,212,213,214,216,5451,
- 214,5451,49,160,4311,2052,307,310,734,2928,
- 156,1035,722,5451,2101,2101,5451,90,3911,3941,
+ 5451,201,217,207,209,313,49,228,330,35,
+ 664,388,52,2122,199,1035,47,1142,156,97,
+ 214,567,451,4317,1142,2101,5451,3941,5451,2137,
+ 3854,205,215,4682,204,212,213,214,216,5451,
+ 214,5451,49,160,2578,2052,307,310,734,2928,
+ 156,1035,722,5451,214,2101,5451,90,4311,3997,
206,208,210,294,295,2534,565,228,2101,217,
- 207,209,5451,1781,35,1886,32,3252,3590,27,
- 30,31,720,670,339,28,4021,3285,2230,1231,
+ 207,209,5451,1781,35,1893,32,3252,3590,27,
+ 30,31,720,670,339,28,2101,3913,2230,1231,
4317,205,215,4682,204,212,213,214,216,5451,
- 3322,588,35,664,388,214,5451,2101,214,3397,
- 3790,214,1142,5451,2101,4377,5451,2101,5451,5451,
- 206,208,210,294,295,5451,565,222,5451,217,
- 207,209,319,1321,321,49,314,856,156,3424,
- 5451,2101,5451,5451,1035,592,67,3997,2655,66,
+ 3915,588,35,664,388,214,5451,2101,214,3397,
+ 3790,2101,1142,214,2101,214,5451,4377,3285,3023,
+ 206,208,210,294,295,5451,565,4346,5451,217,
+ 207,209,319,1321,321,49,314,856,156,3322,
+ 5451,2101,5451,3424,1035,592,67,4003,2655,1349,
4317,3167,35,798,32,1141,3619,27,30,31,
720,670,26,28,1534,25,23,50,1549,106,
- 76,77,108,65,1970,3167,35,798,32,5451,
+ 76,77,108,66,1970,3167,35,798,32,5451,
3619,27,30,31,720,670,26,28,1534,25,
23,50,1549,106,76,77,108,2101,1972,3167,
35,798,32,2101,3619,27,30,31,720,670,
26,28,1534,25,23,50,1549,106,76,77,
- 108,214,1979,2282,214,3023,214,578,2581,64,
- 2593,5451,5451,5451,5451,3501,5451,5451,418,419,
- 1885,3167,1305,798,1843,5451,3619,27,30,31,
+ 108,2282,1979,214,214,578,5451,2581,2593,65,
+ 5451,5451,98,5451,5451,64,5451,5451,418,419,
+ 1886,3167,1305,798,1843,5451,3619,27,30,31,
720,670,26,28,1534,25,23,50,1549,106,
76,77,84,3167,35,798,32,5451,3619,27,
30,31,720,670,26,28,1534,25,23,50,
@@ -986,28 +986,28 @@ public class CPPParserprs implements lpg.lpgjavaruntime.ParseTable, CPPParsersym
76,77,107,3167,35,798,32,2101,3619,27,
30,31,720,670,26,28,1534,25,23,50,
1549,106,76,77,105,1791,2273,5451,2101,2928,
- 535,1592,5451,5451,5451,2101,2090,1392,2122,3608,
- 2928,2928,1142,5451,5451,5451,5451,228,3905,2101,
- 2101,5451,5451,1231,5451,5451,156,5451,2400,228,
- 55,5451,5451,5451,180,2440,2296,54,160,5451,
+ 535,1592,5451,5451,5451,2101,2090,1392,2122,3501,
+ 2928,2928,1142,5451,1231,5451,5451,228,3905,2101,
+ 5451,5451,5451,1231,5451,5451,156,5451,2400,228,
+ 3608,5451,5451,5451,180,3339,2296,55,160,5451,
1142,205,215,4682,204,212,213,214,216,5451,
- 5451,4333,101,205,215,4682,204,212,213,214,
+ 5451,54,222,205,215,4682,204,212,213,214,
216,193,195,3314,2122,2139,156,1592,1142,2928,
206,208,210,294,295,162,565,2101,5451,519,
- 207,209,206,208,210,294,295,228,565,2196,
- 5451,218,207,209,160,214,5451,505,5451,1142,
- 4024,335,5451,5451,2268,4308,2226,5451,2928,3533,
+ 207,209,206,208,210,294,295,228,565,2101,
+ 2101,218,207,209,160,214,5451,505,2196,1142,
+ 4023,335,5451,5451,2268,4315,2226,5451,2928,4333,
2928,205,215,4682,204,212,213,214,216,5451,
- 5451,529,5451,2313,5451,156,2400,2928,228,3314,
- 5451,5451,5451,5451,3693,5451,5451,5451,502,504,
+ 5451,101,3533,2313,5451,156,2400,2928,228,3314,
+ 529,5451,5451,5451,3736,5451,5451,5451,502,504,
206,208,210,294,295,228,565,5451,5451,520,
207,209,205,215,4682,204,212,213,214,216,
- 5451,4315,588,35,664,388,4026,335,5451,205,
+ 5451,4329,588,35,664,388,4024,335,5451,205,
215,4682,204,212,213,214,216,4777,196,1800,
5451,206,208,210,294,295,5451,565,1833,5451,
305,207,209,2465,5451,505,49,5451,206,208,
210,294,295,5451,565,1035,736,499,207,209,
- 2030,35,798,32,4387,3808,27,30,31,720,
+ 2030,35,798,32,4400,3808,27,30,31,720,
670,339,28,1747,35,798,32,3252,3590,27,
30,31,720,670,339,28,502,504,3330,35,
664,388,1080,3383,5451,5451,4498,5451,5451,5451,
@@ -1019,24 +1019,24 @@ public class CPPParserprs implements lpg.lpgjavaruntime.ParseTable, CPPParsersym
232,1035,2871,5451,5451,3050,5451,228,1921,5451,
2402,35,798,32,2425,3590,27,30,31,720,
670,339,28,5451,5451,236,230,231,49,5451,
- 96,2014,407,4620,5451,5451,274,1035,47,5451,
+ 96,1971,407,4620,5451,5451,274,1035,47,5451,
5451,5451,5451,214,5451,1287,5451,2928,403,2928,
2470,1180,5451,5451,5451,243,246,249,252,1174,
408,409,410,294,295,343,565,228,1217,316,
870,321,1561,35,798,32,2387,3590,27,30,
31,720,670,339,28,214,5451,1317,3028,2928,
- 5451,2014,407,4620,330,35,664,388,1927,5451,
+ 5451,1971,407,4620,330,35,664,388,1927,5451,
1177,35,664,388,5451,2122,214,343,5451,1142,
1142,5451,330,35,664,388,2038,35,664,388,
408,409,410,294,295,5451,565,5451,49,5451,
3028,316,870,321,49,160,156,1035,47,5451,
- 509,5451,5451,1035,47,4329,49,1317,411,413,
+ 509,5451,5451,1035,47,4387,49,1317,411,413,
49,573,5451,5451,5451,1035,47,3145,5451,1035,
3158,1015,35,664,388,5451,5451,2543,1033,930,
5451,535,1097,629,5451,4655,330,35,664,388,
330,35,664,388,5451,5451,5451,5451,5451,343,
5451,330,35,664,388,49,5451,156,330,35,
- 664,388,4330,5451,1035,3184,188,5451,411,414,
+ 664,388,4399,5451,1035,3184,188,5451,411,414,
49,5451,4533,5451,49,5451,5451,214,2839,1035,
47,535,214,1035,47,49,535,5451,5451,5451,
1033,5451,49,2693,1035,47,214,3225,5451,343,
@@ -1049,11 +1049,11 @@ public class CPPParserprs implements lpg.lpgjavaruntime.ParseTable, CPPParsersym
156,343,5451,5451,188,4533,343,343,530,188,
4533,5451,5451,5451,5451,4533,5451,5451,5451,5451,
5451,3028,5451,5451,3028,5451,5451,5451,5451,3028,
- 3028,533,5451,5451,507,5451,5451,5451,5451,3854,
- 534,5451,5451,5451,5451,5451,5451,3763,5451,5451,
+ 3028,533,5451,5451,507,5451,5451,5451,5451,3868,
+ 534,5451,5451,5451,5451,5451,5451,3889,5451,5451,
5451,5451,5451,5451,5451,5451,5451,5451,5451,5451,
- 5451,5451,5451,5451,3855,5451,5451,5451,5451,3868,
- 5451,5451,5451,5451,3907,5451,5451,5451,5451,5451,
+ 5451,5451,5451,5451,3886,5451,5451,5451,5451,3907,
+ 5451,5451,5451,5451,3911,5451,5451,5451,5451,5451,
5451,5451,5451,5451,5451,5451,5451,5451,5451,5451,
5451,5451,5451,5451,5451,5451,5451,5451,5451,5451,
5451,5451,5451,5451,5451,5451,5451,5451,5451,5451,
@@ -1063,7 +1063,7 @@ public class CPPParserprs implements lpg.lpgjavaruntime.ParseTable, CPPParsersym
5451,5451,5451,5451,5451,5451,5451,5451,5451,5451,
5451,5451,5451,5451,5451,5451,5451,5451,5451,5451,
5451,5451,5451,5451,5451,5451,5451,5451,5451,5451,
- 5451,5451,5451,5451,4399,5451,0,501,4305,0,
+ 5451,5451,5451,5451,4408,5451,0,501,4305,0,
1,229,0,39,5466,0,39,5465,0,1,
2516,0,943,1,0,39,1,5466,0,39,
1,5465,0,1,2989,0,1,739,0,229,
@@ -1082,7 +1082,7 @@ public class CPPParserprs implements lpg.lpgjavaruntime.ParseTable, CPPParsersym
0,1622,318,0,1,444,0,458,649,0,
457,2048,0,35,33,0,47,37,0,229,
220,0,501,1358,0,5489,1,229,0,39,
- 1,229,0,229,416,0,1,2703,0,1,
+ 1,229,0,229,416,0,1,2052,0,1,
5723,0,1,5722,0,1,5721,0,1,5720,
0,1,5719,0,1,5718,0,1,5717,0,
1,5716,0,1,5715,0,1,5714,0,1,
@@ -1092,8 +1092,8 @@ public class CPPParserprs implements lpg.lpgjavaruntime.ParseTable, CPPParsersym
405,0,229,415,0,2762,126,0,5459,1,
0,331,445,0,5457,1,0,5456,1,0,
2179,91,0,32,34,0,39,739,0,5487,
- 45,0,37,45,0,1,229,2322,0,5460,
- 229,0,2355,229,0,5489,1,0,39,1,
+ 45,0,37,45,0,1,229,2305,0,5460,
+ 229,0,2322,229,0,5489,1,0,39,1,
0,237,910,0,388,32,0,387,29,0,
2762,128,0,2762,127,0,2700,229,0,10,
12,0,1,92,0,8,10,12,0,5466,
@@ -1483,15 +1483,15 @@ public class CPPParserprs implements lpg.lpgjavaruntime.ParseTable, CPPParsersym
1,5451,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,35,1540,
718,5626,1,557,131,1,1,5462,286,5125,
- 5125,5458,283,593,1393,2481,3339,2099,3311,2305,
- 3103,2439,947,2424,2877,2361,10,5409,5409,5409,
+ 5125,5458,283,593,1393,2481,3628,2099,3485,2269,
+ 3103,2440,947,2439,2877,2355,10,5409,5409,5409,
5409,5409,5409,5409,5409,5409,5409,5409,5409,5409,
5409,5409,5409,5409,5409,5409,5409,5409,5409,5409,
5409,5409,5409,5409,5409,5409,5409,5409,5409,5409,
5409,5409,5409,5409,5409,5409,5409,1794,5409,5409,
5409,5409,5409,5409,5409,5409,5409,5409,5409,5409,
5409,5409,5409,5409,5451,5409,5409,5409,5409,5409,
- 3363,5409,5409,5409,5451,5096,5093,5409,5489,2688,
+ 2703,5409,5409,5409,5451,5096,5093,5409,5489,2688,
5409,5409,5409,5409,5409,5409,5409,5409,5409,5409,
5409,5409,8,5415,5415,5415,5415,5415,5415,5415,
5415,5415,5415,5415,5415,5415,5415,5415,5415,5415,
@@ -1509,8 +1509,8 @@ public class CPPParserprs implements lpg.lpgjavaruntime.ParseTable, CPPParsersym
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,137,1540,718,5626,
1,557,115,1,1,5462,2610,2540,3999,5451,
- 5214,5211,1393,2481,3339,2099,3311,2305,3103,2439,
- 947,2424,2877,2361,5451,5375,5090,5090,5090,5090,
+ 5214,5211,1393,2481,3628,2099,3485,2269,3103,2440,
+ 947,2439,2877,2355,5451,5375,5090,5090,5090,5090,
5090,5090,5382,5090,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,5379,
1,1,1,1,1,1,1,1,1,1,
@@ -1518,7 +1518,7 @@ public class CPPParserprs implements lpg.lpgjavaruntime.ParseTable, CPPParsersym
1,1,1,1,1,1,1,1,1,1,
1,1,384,1540,718,5626,1,557,5451,1,
1,5462,111,396,3975,3951,2275,387,1393,2481,
- 3339,2099,3311,2305,3103,2439,947,2424,2877,2361,
+ 3628,2099,3485,2269,3103,2440,947,2439,2877,2355,
5451,5375,5090,5090,5090,5090,5090,5090,5382,5090,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,5379,1,1,1,1,
@@ -1526,8 +1526,8 @@ public class CPPParserprs implements lpg.lpgjavaruntime.ParseTable, CPPParsersym
1,1172,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,130,1540,
718,5626,1,557,5451,1,1,5462,5451,5096,
- 5093,4217,5489,4239,1393,2481,3339,2099,3311,2305,
- 3103,2439,947,2424,2877,2361,5451,5375,5090,5090,
+ 5093,4217,5489,4239,1393,2481,3628,2099,3485,2269,
+ 3103,2440,947,2439,2877,2355,5451,5375,5090,5090,
5090,5090,5090,5090,5382,5090,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,5379,1,1,1,1,1,1,1,1,
@@ -1535,16 +1535,16 @@ public class CPPParserprs implements lpg.lpgjavaruntime.ParseTable, CPPParsersym
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,291,1540,718,5626,1,557,
117,1,1,5462,2610,2540,3999,5451,5465,5466,
- 1393,2481,3339,2099,3311,2305,3103,2439,947,2424,
- 2877,2361,5451,5375,5090,5090,5090,5090,5090,5090,
+ 1393,2481,3628,2099,3485,2269,3103,2440,947,2439,
+ 2877,2355,5451,5375,5090,5090,5090,5090,5090,5090,
5382,5090,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,5379,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,2061,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
5451,1540,718,5626,1,557,39,1,1,5462,
- 5489,48,3975,3951,448,5466,1393,2481,3339,2099,
- 3311,2305,3103,2439,947,2424,2877,2361,5451,5375,
+ 5489,48,3975,3951,448,5466,1393,2481,3628,2099,
+ 3485,2269,3103,2440,947,2439,2877,2355,5451,5375,
5090,5090,5090,5090,5090,5090,5382,5090,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,5379,1,1,1,1,1,1,
@@ -1552,8 +1552,8 @@ public class CPPParserprs implements lpg.lpgjavaruntime.ParseTable, CPPParsersym
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,646,1540,718,5626,
1,557,116,1,1,5462,5451,387,3999,5451,
- 6829,6657,1393,2481,3339,2099,3311,2305,3103,2439,
- 947,2424,2877,2361,5451,5375,5090,5090,5090,5090,
+ 6829,6657,1393,2481,3628,2099,3485,2269,3103,2440,
+ 947,2439,2877,2355,5451,5375,5090,5090,5090,5090,
5090,5090,5382,5090,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,5379,
1,1,1,1,1,1,1,1,1,1,
@@ -1561,7 +1561,7 @@ public class CPPParserprs implements lpg.lpgjavaruntime.ParseTable, CPPParsersym
1,1,1,1,1,1,1,1,1,1,
1,1,135,1540,718,5626,1,557,5451,1,
1,5462,2870,48,3975,3951,5451,5465,1393,2481,
- 3339,2099,3311,2305,3103,2439,947,2424,2877,2361,
+ 3628,2099,3485,2269,3103,2440,947,2439,2877,2355,
5451,5375,5090,5090,5090,5090,5090,5090,5382,5090,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,5379,1,1,1,1,
@@ -1569,8 +1569,8 @@ public class CPPParserprs implements lpg.lpgjavaruntime.ParseTable, CPPParsersym
1,5465,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,5852,1540,
718,5626,1,557,5451,1,1,5462,5451,5465,
- 5466,2325,428,2910,1393,2481,3339,2099,3311,2305,
- 3103,2439,947,2424,2877,2361,5451,5375,5090,5090,
+ 5466,2325,428,2910,1393,2481,3628,2099,3485,2269,
+ 3103,2440,947,2439,2877,2355,5451,5375,5090,5090,
5090,5090,5090,5090,5382,5090,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,5379,1,1,1,1,1,1,1,1,
@@ -1578,16 +1578,16 @@ public class CPPParserprs implements lpg.lpgjavaruntime.ParseTable, CPPParsersym
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,923,1540,718,5626,1,557,
5451,1,1,5462,48,5214,5211,397,5465,5466,
- 1393,2481,3339,2099,3311,2305,3103,2439,947,2424,
- 2877,2361,5451,5375,5090,5090,5090,5090,5090,5090,
+ 1393,2481,3628,2099,3485,2269,3103,2440,947,2439,
+ 2877,2355,5451,5375,5090,5090,5090,5090,5090,5090,
5382,5090,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,5379,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,
5451,1540,718,5626,1,557,395,1,1,5462,
- 388,5451,37,5256,5256,2688,1393,2481,3339,2099,
- 3311,2305,3103,2439,947,2424,2877,2361,39,5096,
+ 388,5451,37,5256,5256,2688,1393,2481,3628,2099,
+ 3485,2269,3103,2440,947,2439,2877,2355,39,5096,
5093,4827,943,4041,4107,2989,5451,4129,2843,5715,
5713,5722,5721,5717,5718,5716,5719,5720,5723,5714,
5711,5788,5789,5487,5705,5712,5708,5684,5710,5709,
@@ -1599,7 +1599,7 @@ public class CPPParserprs implements lpg.lpgjavaruntime.ParseTable, CPPParsersym
1,1,1,1,1,1,229,1,1,1,
1,1,1,1,1,1,5451,5465,5466,1042,
1,5086,5262,444,1,1,1,1,5451,5244,
- 5451,1,5244,114,1919,1,5451,5780,5461,439,
+ 5451,1,5244,114,2307,1,5451,2259,5461,439,
3012,783,5863,5451,5096,5093,224,943,739,5808,
2989,121,416,229,139,5460,5451,367,5109,5105,
2638,5102,739,1,2989,5451,1,5951,5711,5788,
@@ -1721,21 +1721,21 @@ public class CPPParserprs implements lpg.lpgjavaruntime.ParseTable, CPPParsersym
1506,5451,5472,1491,3054,1499,5460,5473,5471,1403,
420,5467,5468,5469,132,5451,5423,5419,1411,4695,
5451,39,39,593,516,39,5096,5093,4827,943,
- 4041,4107,2989,5433,4129,2703,5715,5713,5722,5721,
+ 4041,4107,2989,5433,4129,2052,5715,5713,5722,5721,
5717,5718,5716,5719,5720,5723,5714,5451,3272,5451,
1,5109,5105,2516,5102,739,5487,2989,309,4563,
4085,4063,4173,4151,4889,5470,5451,3741,1450,1506,
5451,5472,1491,3054,1499,309,5473,5471,1403,2187,
5467,5468,5469,5451,5451,5451,5451,1411,2573,5451,
237,75,5327,5391,3558,136,5458,39,5096,5093,
- 4827,943,4041,4107,2989,5324,4129,2703,5715,5713,
+ 4827,943,4041,4107,2989,5324,4129,2052,5715,5713,
5722,5721,5717,5718,5716,5719,5720,5723,5714,1975,
1,3140,1,4894,4653,426,5451,5451,5513,5514,
191,5451,4085,4063,4173,4151,5451,5470,2574,3741,
1450,1506,3449,5472,1491,3054,1499,191,5473,5471,
1403,2582,5467,5468,5469,3291,5451,2583,3194,1411,
5451,5451,5451,4870,5327,141,5096,5093,4827,943,
- 4041,4107,2989,5451,4129,2703,5715,5713,5722,5721,
+ 4041,4107,2989,5451,4129,2052,5715,5713,5722,5721,
5717,5718,5716,5719,5720,5723,5714,5451,5451,5451,
4875,4306,4880,5451,2325,1087,803,5451,3231,5451,
4085,4063,4173,4151,5451,5470,2991,3741,1450,1506,
@@ -1748,10 +1748,10 @@ public class CPPParserprs implements lpg.lpgjavaruntime.ParseTable, CPPParsersym
4151,510,5470,5451,3741,1450,1506,3423,5472,1491,
3054,1499,5439,5473,5471,1403,2,5467,5468,5469,
5451,5451,5451,4405,1411,4716,5451,39,39,39,
- 5096,5093,4827,943,4041,4107,2989,5324,4129,2703,
+ 5096,5093,4827,943,4041,4107,2989,5324,4129,2052,
5715,5713,5722,5721,5717,5718,5716,5719,5720,5723,
5714,103,1,5451,4715,2793,4886,5920,5914,2237,
- 4003,5918,1,5451,4085,4063,4173,4151,5451,5470,
+ 4287,5918,1,5451,4085,4063,4173,4151,5451,5470,
2309,3741,1450,1506,37,5472,1491,3054,1499,5451,
5473,5471,1403,5451,5467,5468,5469,5912,5913,5943,
5944,1411,278,5451,5921,5445,5327,5451,5451,5451,
@@ -1762,44 +1762,44 @@ public class CPPParserprs implements lpg.lpgjavaruntime.ParseTable, CPPParsersym
5933,5946,5451,5451,5915,5916,5939,5940,5937,5938,
5917,5919,5941,5942,5451,5451,5451,5947,5451,5927,
5928,5929,5925,5926,5935,5936,5931,5930,5932,39,
- 5096,5093,4827,943,4041,4107,2989,5455,4129,2703,
+ 5096,5093,4827,943,4041,4107,2989,5455,4129,2052,
5715,5713,5722,5721,5717,5718,5716,5719,5720,5723,
5714,5451,5451,5451,5451,5451,5451,5451,5451,5451,
5451,5451,5451,5451,4085,4063,4173,4151,5451,5470,
5451,3741,1450,1506,5451,5472,1491,3054,1499,5451,
5473,5471,1403,5451,5467,5468,5469,39,5096,5093,
- 4827,943,4041,4107,2989,5451,4129,2703,5715,5713,
+ 4827,943,4041,4107,2989,5451,4129,2052,5715,5713,
5722,5721,5717,5718,5716,5719,5720,5723,5714,5451,
5451,5451,5451,5451,5451,5451,5451,5451,5451,5451,
5451,5451,4085,4063,4173,4151,5451,5470,5451,3741,
1450,1506,5451,5472,1491,3054,1499,5451,5473,5471,
1403,5451,5467,5468,5469,5451,5454,5451,5451,1411,
39,5096,5093,4827,943,4041,4107,2989,5451,4129,
- 2703,5715,5713,5722,5721,5717,5718,5716,5719,5720,
+ 2052,5715,5713,5722,5721,5717,5718,5716,5719,5720,
5723,5714,5451,5451,5451,5451,5451,5451,5451,5451,
5451,5451,5451,5451,5451,4085,4063,4173,4151,5451,
5470,5451,3741,1450,1506,5451,5472,1491,3054,1499,
5451,5473,5471,1403,5451,5467,5468,5469,5451,5451,
5451,5451,5451,5451,2897,39,5096,5093,4827,943,
- 4041,4107,2989,5451,4129,2703,5715,5713,5722,5721,
+ 4041,4107,2989,5451,4129,2052,5715,5713,5722,5721,
5717,5718,5716,5719,5720,5723,5714,5451,5451,5451,
5451,5451,5451,5451,5451,5451,5451,5451,5451,5451,
4085,4063,4173,4151,5451,5470,5451,3741,1450,1506,
5451,5472,1491,3054,1499,5451,5473,5471,1403,5451,
5467,5468,5469,5451,5451,5451,5451,1411,39,5096,
- 5093,4846,943,4041,4107,2989,5451,4129,2703,5715,
+ 5093,4846,943,4041,4107,2989,5451,4129,2052,5715,
5713,5722,5721,5717,5718,5716,5719,5720,5723,5714,
5451,5451,5451,5451,5451,5451,5451,5451,5451,5451,
5451,5451,5451,4085,4063,4173,4151,5451,5470,5451,
3741,1450,1506,5451,5472,1491,3054,1499,5451,5473,
5471,1403,5451,5467,5468,5469,39,5096,5093,4827,
- 943,4041,4107,2989,5451,4129,2703,5715,5713,5722,
+ 943,4041,4107,2989,5451,4129,2052,5715,5713,5722,
5721,5717,5718,5716,5719,5720,5723,5714,5451,5451,
5451,5451,5451,5451,5451,5451,5451,5451,5451,5451,
5451,4085,4063,4173,4151,5451,5470,5451,3741,1450,
1506,5451,5472,1491,3054,1499,5451,5473,5471,1403,
5451,5467,5468,5469,39,5096,5093,4827,943,4041,
- 4107,2989,5451,4129,2703,5715,5713,5722,5721,5717,
+ 4107,2989,5451,4129,2052,5715,5713,5722,5721,5717,
5718,5716,5719,5720,5723,5714,5451,5451,5451,5451,
5451,5451,5451,5451,5451,5451,5451,5451,5451,4085,
4063,4173,4151,5451,5470,5451,3741,1450,1506,5451,
@@ -1848,49 +1848,50 @@ public class CPPParserprs implements lpg.lpgjavaruntime.ParseTable, CPPParsersym
304,984,984,983,983,983,184,185,1106,881,
288,185,406,550,404,333,401,559,185,337,
333,185,975,406,401,184,410,179,185,146,
- 193,179,975,767,337,337,182,450,450,1106,
- 649,304,983,820,983,185,881,881,820,185,
- 288,1121,399,583,389,1111,288,406,405,406,
- 406,333,559,559,185,836,538,934,583,583,
- 583,583,184,934,130,232,147,147,147,147,
- 147,147,147,147,147,776,782,787,784,791,
- 789,796,794,798,797,799,453,800,835,185,
- 762,185,401,110,555,185,934,450,814,502,
- 547,146,820,401,502,767,836,836,771,547,
- 633,621,632,835,583,637,637,820,820,185,
- 282,1113,406,406,406,406,185,559,820,564,
- 819,182,645,629,628,130,732,732,732,732,
- 185,49,547,547,130,894,731,282,130,776,
- 281,281,49,146,147,147,147,147,147,147,
+ 193,179,975,769,767,337,337,182,450,450,
+ 1106,649,304,983,820,983,185,881,881,820,
+ 185,288,1121,399,583,389,1111,288,406,405,
+ 406,406,333,559,559,185,836,538,934,583,
+ 583,583,583,184,934,130,232,147,147,147,
+ 147,147,147,147,147,147,776,782,787,784,
+ 791,789,796,794,798,797,799,453,800,835,
+ 185,762,185,401,110,555,185,934,450,814,
+ 502,547,146,820,401,502,767,836,836,771,
+ 547,633,621,632,835,583,637,637,820,820,
+ 185,282,1113,406,406,406,406,185,559,820,
+ 564,819,182,645,629,628,130,732,732,732,
+ 732,185,49,547,547,130,894,731,282,130,
+ 776,281,281,49,146,147,147,147,147,147,
147,147,147,147,147,147,147,147,147,147,
- 147,147,147,146,146,146,146,146,146,146,
- 146,146,146,146,146,147,130,975,764,111,
- 184,185,49,569,820,193,767,766,823,146,
- 630,630,643,182,3,304,984,304,834,834,
- 881,1106,45,147,1121,44,576,406,406,93,
- 820,147,185,538,547,647,649,547,547,836,
- 836,836,836,333,547,147,585,1051,1051,184,
- 232,450,731,146,547,1105,1107,1105,547,450,
- 784,784,782,782,782,789,789,789,789,787,
- 787,794,791,791,797,796,798,1121,799,764,
- 110,1121,147,1121,881,109,934,934,934,111,
- 934,185,460,881,881,185,401,547,146,193,
- 767,823,146,146,647,621,304,732,732,881,
- 1113,147,147,555,759,94,185,547,649,934,
- 934,934,934,185,185,185,282,147,732,780,
- 504,547,185,1107,282,146,101,934,101,111,
- 1121,111,130,130,128,690,130,881,881,892,
- 764,819,825,835,93,185,184,184,185,884,
- 547,146,146,146,146,934,934,333,1106,547,
- 780,182,762,185,1106,3,111,547,179,547,
- 128,493,934,547,764,818,192,825,682,185,
- 185,185,884,884,547,547,547,547,49,49,
- 185,780,781,780,146,504,1109,776,762,547,
- 547,1099,111,892,111,881,493,146,111,108,
- 818,818,934,637,185,185,830,884,547,547,
- 1086,780,49,147,450,1109,401,401,1101,146,
- 109,49,881,547,650,834,830,830,781,547,
- 450,111,547,881,546,1105,830,111,732
+ 147,147,147,147,146,146,146,146,146,146,
+ 146,146,146,146,146,146,147,130,975,764,
+ 111,184,185,49,569,820,193,767,767,823,
+ 146,630,630,643,182,3,304,984,304,834,
+ 834,881,1106,45,147,1121,44,576,406,406,
+ 93,820,147,185,538,547,647,649,547,547,
+ 836,836,836,836,333,547,147,585,1051,1051,
+ 184,232,450,731,146,547,1105,1107,1105,547,
+ 450,784,784,782,782,782,789,789,789,789,
+ 787,787,794,791,791,797,796,798,1121,799,
+ 764,110,1121,147,1121,881,109,934,934,934,
+ 111,934,185,460,881,881,185,401,547,146,
+ 193,767,766,823,146,146,647,621,304,732,
+ 732,881,1113,147,147,555,759,94,185,547,
+ 649,934,934,934,934,185,185,185,282,147,
+ 732,780,504,547,185,1107,282,146,101,934,
+ 101,111,1121,111,130,130,128,690,130,881,
+ 881,892,764,819,767,825,835,93,185,184,
+ 184,185,884,547,146,146,146,146,934,934,
+ 333,1106,547,780,182,762,185,1106,3,111,
+ 547,179,547,128,493,934,547,764,818,192,
+ 825,682,185,185,185,884,884,547,547,547,
+ 547,49,49,185,780,781,780,146,504,1109,
+ 776,762,547,547,1099,111,892,111,881,493,
+ 146,111,108,818,818,934,637,185,185,830,
+ 884,547,547,1086,780,49,147,450,1109,401,
+ 401,1101,146,109,49,881,547,650,834,830,
+ 830,781,547,450,111,547,881,546,1105,830,
+ 111,732
};
};
public final static char asb[] = Asb.asb;
@@ -1974,7 +1975,7 @@ public class CPPParserprs implements lpg.lpgjavaruntime.ParseTable, CPPParsersym
3,10,45,39,50,54,12,21,11,17,
15,16,18,19,14,13,20,26,32,33,
28,31,30,27,23,24,29,34,1,2,
- 22,4,0,118,0,62,23,7,24,5,
+ 22,4,0,118,0,62,23,24,7,5,
1,2,4,74,67,119,105,37,38,64,
3,91,89,6,92,93,35,36,88,87,
58,94,95,96,97,9,98,99,100,68,
@@ -2029,49 +2030,50 @@ public class CPPParserprs implements lpg.lpgjavaruntime.ParseTable, CPPParsersym
137,228,228,137,213,137,76,192,183,169,
250,16,102,102,12,218,146,137,218,23,
54,16,163,13,196,19,89,179,204,108,
- 70,132,33,137,23,23,121,94,94,183,
- 174,174,213,58,213,218,169,169,58,204,
- 169,12,191,12,31,257,250,102,102,137,
- 137,54,137,226,11,12,200,12,12,12,
- 12,12,76,12,269,204,72,72,221,72,
- 72,72,72,72,72,12,12,12,12,12,
- 12,12,12,12,12,12,72,12,12,16,
- 12,11,196,57,12,218,12,94,12,123,
- 279,72,137,146,12,148,12,12,209,279,
- 12,130,12,12,12,125,125,58,58,192,
- 40,116,137,137,48,48,16,226,58,12,
- 12,121,199,52,52,269,28,28,28,28,
- 204,60,279,279,1,72,78,40,269,12,
- 42,42,60,160,72,72,72,72,72,72,
+ 70,132,33,123,123,23,23,121,94,94,
+ 183,174,174,213,58,213,218,169,169,58,
+ 204,169,12,191,12,31,257,250,102,102,
+ 137,137,54,137,226,11,12,200,12,12,
+ 12,12,12,76,12,269,204,72,72,221,
+ 72,72,72,72,72,72,12,12,12,12,
+ 12,12,12,12,12,12,12,72,12,12,
+ 16,12,11,196,57,12,218,12,94,12,
+ 123,279,72,137,146,12,137,12,12,209,
+ 279,12,130,12,12,12,125,125,58,58,
+ 192,40,116,137,137,48,48,16,226,58,
+ 12,12,121,199,52,52,269,28,28,28,
+ 28,204,60,279,279,1,72,78,40,269,
+ 12,42,42,60,160,72,72,72,72,72,
72,72,72,72,72,72,72,72,72,72,
72,72,72,72,72,72,72,72,72,72,
- 72,72,72,72,160,72,23,163,137,142,
- 19,11,60,12,58,137,137,148,137,72,
- 12,12,129,121,174,174,228,137,12,12,
- 169,183,169,72,12,84,12,48,48,63,
- 58,72,226,207,279,171,137,279,279,12,
- 12,12,12,39,279,72,12,12,12,10,
- 204,94,28,108,279,182,204,182,279,94,
+ 72,72,72,72,72,160,72,23,163,137,
+ 142,19,11,60,12,58,137,123,148,137,
+ 72,12,12,129,121,174,174,228,137,12,
+ 12,169,183,169,72,12,84,12,48,48,
+ 63,58,72,226,207,279,171,137,279,279,
+ 12,12,12,12,39,279,72,12,12,12,
+ 10,204,94,28,108,279,182,204,182,279,
+ 94,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,
- 12,12,12,12,12,12,12,12,12,106,
- 156,12,72,12,169,12,12,12,12,157,
- 12,226,167,169,169,226,96,279,72,70,
- 148,148,72,72,171,177,174,28,28,169,
- 132,72,72,12,76,50,218,279,174,12,
- 12,12,12,16,11,204,40,72,28,137,
- 99,279,204,153,40,72,67,12,12,157,
- 12,157,273,273,233,12,273,169,169,12,
- 137,58,137,12,80,218,76,76,11,137,
- 279,160,160,160,160,12,12,38,16,279,
- 114,209,12,225,16,28,157,279,132,279,
- 265,137,12,279,106,104,69,127,12,11,
- 218,218,148,137,279,279,279,279,60,60,
- 16,137,194,12,160,209,154,12,12,279,
- 279,137,157,12,157,169,132,160,157,67,
- 104,12,12,125,11,11,137,148,279,279,
- 12,114,60,72,94,154,96,96,130,72,
- 12,238,169,279,277,12,127,137,194,279,
- 94,157,279,169,279,182,127,157,28
+ 106,156,12,72,12,169,12,12,12,12,
+ 157,12,226,167,169,169,226,96,279,72,
+ 70,137,148,148,72,72,171,177,174,28,
+ 28,169,132,72,72,12,76,50,218,279,
+ 174,12,12,12,12,16,11,204,40,72,
+ 28,137,99,279,204,153,40,72,67,12,
+ 12,157,12,157,273,273,233,12,273,169,
+ 169,12,137,58,148,137,12,80,218,76,
+ 76,11,137,279,160,160,160,160,12,12,
+ 38,16,279,114,209,12,225,16,28,157,
+ 279,132,279,265,137,12,279,106,104,69,
+ 127,12,11,218,218,148,137,279,279,279,
+ 279,60,60,16,137,194,12,160,209,154,
+ 12,12,279,279,137,157,12,157,169,132,
+ 160,157,67,104,12,12,125,11,11,137,
+ 148,279,279,12,114,60,72,94,154,96,
+ 96,130,72,12,238,169,279,277,12,127,
+ 137,194,279,94,157,279,169,279,182,127,
+ 157,28
};
};
public final static char nasb[] = Nasb.nasb;
@@ -2162,18 +2164,18 @@ public class CPPParserprs implements lpg.lpgjavaruntime.ParseTable, CPPParsersym
public interface ScopePrefix {
public final static char scopePrefix[] = {
- 159,584,603,308,535,551,562,573,367,266,
- 280,302,315,328,42,291,387,425,167,592,
- 478,20,51,71,80,85,90,130,195,297,
- 321,336,341,144,272,286,506,27,144,377,
- 341,611,27,217,245,1,14,61,76,106,
- 346,356,360,443,471,500,527,531,621,625,
- 629,97,7,97,405,421,434,455,519,232,
- 116,116,434,542,558,569,580,207,489,56,
- 56,156,222,225,56,240,261,225,225,56,
- 364,468,475,156,56,644,110,350,409,449,
- 462,56,350,396,177,104,447,633,640,633,
- 640,65,415,137,104,104,250
+ 159,585,604,309,536,552,563,574,368,267,
+ 281,303,316,329,42,292,388,426,167,593,
+ 479,20,51,71,80,85,90,130,195,298,
+ 322,337,342,144,273,287,507,27,144,378,
+ 342,612,27,217,246,1,14,61,76,106,
+ 347,357,361,444,472,501,528,532,622,626,
+ 630,97,7,97,406,422,435,456,520,116,
+ 116,232,435,543,559,570,581,207,490,56,
+ 56,156,222,225,56,241,262,225,225,56,
+ 365,469,476,156,56,645,110,351,410,450,
+ 463,56,351,397,177,104,448,634,641,634,
+ 641,65,416,137,104,104,251
};
};
public final static char scopePrefix[] = ScopePrefix.scopePrefix;
@@ -2181,18 +2183,18 @@ public class CPPParserprs implements lpg.lpgjavaruntime.ParseTable, CPPParsersym
public interface ScopeSuffix {
public final static char scopeSuffix[] = {
- 18,5,5,135,5,5,5,5,374,135,
- 95,135,135,334,48,277,393,431,173,67,
- 484,25,25,25,59,59,95,135,200,135,
- 326,326,334,149,277,101,511,38,152,382,
- 598,616,32,211,211,5,18,5,59,95,
- 326,95,95,135,243,5,5,5,5,5,
- 243,642,11,101,374,374,374,459,511,236,
- 120,125,438,546,546,546,546,211,493,59,
- 59,5,5,228,230,243,5,264,264,230,
- 95,5,243,5,504,5,113,353,412,452,
- 465,523,514,399,180,95,95,635,635,637,
- 637,67,417,139,202,187,252
+ 18,5,5,135,5,5,5,5,375,135,
+ 95,135,135,335,48,278,394,432,173,67,
+ 485,25,25,25,59,59,95,135,200,135,
+ 327,327,335,149,278,101,512,38,152,383,
+ 599,617,32,211,211,5,18,5,59,95,
+ 327,95,95,135,244,5,5,5,5,5,
+ 244,643,11,101,375,375,375,460,512,120,
+ 125,236,439,547,547,547,547,211,494,59,
+ 59,5,5,228,230,244,5,265,265,230,
+ 95,5,244,5,505,5,113,354,413,453,
+ 466,524,515,400,180,95,95,636,636,638,
+ 638,67,418,139,202,187,253
};
};
public final static char scopeSuffix[] = ScopeSuffix.scopeSuffix;
@@ -2206,8 +2208,8 @@ public class CPPParserprs implements lpg.lpgjavaruntime.ParseTable, CPPParsersym
118,118,120,128,53,47,139,133,128,71,
17,17,133,96,59,135,74,171,168,164,
120,182,50,56,143,18,17,17,17,17,
- 17,12,115,164,71,70,70,37,139,58,
- 130,130,70,17,17,17,17,96,19,172,
+ 17,12,115,164,71,70,70,37,139,130,
+ 130,58,70,17,17,17,17,96,19,172,
168,184,94,101,61,80,60,158,82,120,
72,144,143,175,139,16,164,120,104,69,
21,139,139,71,46,164,66,137,44,137,
@@ -2225,8 +2227,8 @@ public class CPPParserprs implements lpg.lpgjavaruntime.ParseTable, CPPParsersym
1,1,1,71,1,1,4,68,70,25,
1,1,68,73,73,73,118,73,1,25,
1,25,25,71,117,73,73,73,73,73,
- 117,1,73,1,73,73,73,72,4,6,
- 1,1,73,68,68,68,68,73,3,1,
+ 117,1,73,1,73,73,73,72,4,1,
+ 1,6,73,68,68,68,68,73,3,1,
1,73,73,3,1,117,73,1,1,1,
25,73,117,73,5,73,1,41,69,72,
73,1,41,75,74,25,25,4,4,4,
@@ -2244,8 +2246,8 @@ public class CPPParserprs implements lpg.lpgjavaruntime.ParseTable, CPPParsersym
280,280,280,276,286,284,37,42,276,295,
213,213,42,78,126,4,295,46,21,69,
280,35,286,49,8,213,213,213,213,213,
- 213,193,16,69,295,295,295,245,37,86,
- 280,280,295,213,213,213,213,78,213,46,
+ 213,193,16,69,295,295,295,245,37,280,
+ 280,86,295,213,213,213,213,78,213,46,
21,72,78,80,126,74,126,142,131,280,
295,1,8,40,37,213,69,280,11,295,
214,37,37,295,284,69,24,66,102,66,
@@ -2280,48 +2282,48 @@ public class CPPParserprs implements lpg.lpgjavaruntime.ParseTable, CPPParsersym
0,202,0,0,214,0,229,126,3,0,
125,0,0,0,0,0,229,126,3,216,
0,223,3,0,212,126,0,207,0,145,
- 0,176,166,127,0,10,0,0,0,214,
- 64,0,124,0,229,126,3,182,0,182,
- 0,2,0,0,125,0,0,0,0,0,
- 204,3,0,200,0,225,126,162,40,28,
- 0,179,127,59,60,0,195,127,0,128,
- 179,127,278,60,0,179,127,278,60,0,
- 179,127,69,123,59,0,225,126,162,59,
- 0,225,126,162,228,59,0,276,126,162,
- 123,305,45,0,276,126,162,305,45,0,
- 179,127,275,45,0,134,0,187,179,127,
- 275,243,0,135,0,179,127,275,243,0,
- 187,166,127,10,0,166,127,10,0,166,
- 127,0,93,135,0,268,126,144,0,268,
- 126,170,0,161,84,0,300,160,302,303,
- 3,81,0,125,170,0,302,303,3,81,
- 0,127,0,125,170,0,161,3,75,190,
- 80,0,125,127,0,190,80,0,108,2,
- 130,125,127,0,226,3,75,0,204,167,
- 0,33,168,0,167,0,174,33,168,0,
- 226,3,85,0,190,154,226,3,83,0,
- 62,170,0,226,3,83,0,125,170,62,
- 170,0,301,126,162,0,161,0,214,77,
- 0,30,170,0,161,106,158,0,30,168,
- 0,177,3,0,125,148,0,219,3,0,
- 214,64,265,0,161,64,0,177,3,297,
- 66,127,0,125,0,0,0,0,297,66,
- 127,0,2,144,125,0,0,0,0,177,
- 3,48,0,146,0,125,41,166,127,0,
- 31,146,0,93,135,31,146,0,220,179,
- 127,0,145,31,146,0,177,3,53,0,
- 161,3,53,0,161,3,68,177,58,43,
- 0,177,58,43,0,20,2,130,125,0,
- 161,3,68,177,58,47,0,177,58,47,
- 0,161,3,68,177,58,49,0,177,58,
- 49,0,161,3,68,177,58,44,0,177,
- 58,44,0,219,3,125,187,166,127,10,
- 0,125,187,166,127,10,0,135,2,0,
- 125,0,219,3,124,258,166,127,10,0,
- 258,166,127,10,0,134,2,0,125,0,
- 219,3,135,0,219,3,139,0,161,64,
- 139,0,260,0,31,0,31,138,0,165,
- 0,133,0,161,3,0
+ 0,176,166,127,0,10,0,0,0,0,
+ 214,64,0,124,0,229,126,3,182,0,
+ 182,0,2,0,0,125,0,0,0,0,
+ 0,204,3,0,200,0,225,126,162,40,
+ 28,0,179,127,59,60,0,195,127,0,
+ 128,179,127,278,60,0,179,127,278,60,
+ 0,179,127,69,123,59,0,225,126,162,
+ 59,0,225,126,162,228,59,0,276,126,
+ 162,123,305,45,0,276,126,162,305,45,
+ 0,179,127,275,45,0,134,0,187,179,
+ 127,275,243,0,135,0,179,127,275,243,
+ 0,187,166,127,10,0,166,127,10,0,
+ 166,127,0,93,135,0,268,126,144,0,
+ 268,126,170,0,161,84,0,300,160,302,
+ 303,3,81,0,125,170,0,302,303,3,
+ 81,0,127,0,125,170,0,161,3,75,
+ 190,80,0,125,127,0,190,80,0,108,
+ 2,130,125,127,0,226,3,75,0,204,
+ 167,0,33,168,0,167,0,174,33,168,
+ 0,226,3,85,0,190,154,226,3,83,
+ 0,62,170,0,226,3,83,0,125,170,
+ 62,170,0,301,126,162,0,161,0,214,
+ 77,0,30,170,0,161,106,158,0,30,
+ 168,0,177,3,0,125,148,0,219,3,
+ 0,214,64,265,0,161,64,0,177,3,
+ 297,66,127,0,125,0,0,0,0,297,
+ 66,127,0,2,144,125,0,0,0,0,
+ 177,3,48,0,146,0,125,41,166,127,
+ 0,31,146,0,93,135,31,146,0,220,
+ 179,127,0,145,31,146,0,177,3,53,
+ 0,161,3,53,0,161,3,68,177,58,
+ 43,0,177,58,43,0,20,2,130,125,
+ 0,161,3,68,177,58,47,0,177,58,
+ 47,0,161,3,68,177,58,49,0,177,
+ 58,49,0,161,3,68,177,58,44,0,
+ 177,58,44,0,219,3,125,187,166,127,
+ 10,0,125,187,166,127,10,0,135,2,
+ 0,125,0,219,3,124,258,166,127,10,
+ 0,258,166,127,10,0,134,2,0,125,
+ 0,219,3,135,0,219,3,139,0,161,
+ 64,139,0,260,0,31,0,31,138,0,
+ 165,0,133,0,161,3,0
};
};
public final static char scopeRhs[] = ScopeRhs.scopeRhs;
@@ -2379,49 +2381,50 @@ public class CPPParserprs implements lpg.lpgjavaruntime.ParseTable, CPPParsersym
58,68,126,162,126,162,69,179,179,154,
126,166,232,125,124,127,123,162,127,126,
166,41,4,126,281,72,64,212,127,3,
- 69,70,166,6,126,126,126,64,64,187,
- 126,126,126,225,126,127,228,128,309,127,
- 168,224,59,41,60,170,312,125,124,233,
- 233,179,162,126,179,253,167,53,43,47,
- 49,44,10,135,3,127,48,42,5,36,
- 35,6,9,38,37,139,145,147,146,149,
- 148,151,150,155,153,157,62,158,256,187,
- 260,187,281,162,293,127,294,214,158,166,
- 152,126,162,251,176,126,253,253,212,229,
- 230,144,231,295,41,10,39,225,225,179,
- 166,126,233,233,126,126,187,126,276,123,
- 277,126,3,217,216,3,58,58,58,58,
- 127,3,177,161,126,65,66,166,3,125,
- 105,119,3,64,89,91,36,35,93,92,
- 6,95,94,68,58,87,88,9,97,96,
- 99,98,100,116,115,114,113,112,111,110,
- 109,108,107,69,106,101,70,4,282,126,
- 70,179,3,267,126,162,6,184,154,69,
- 223,204,3,126,70,70,68,58,232,232,
- 228,187,311,72,289,204,124,126,126,72,
- 276,69,70,212,223,126,3,177,161,177,
- 177,177,177,166,219,154,135,125,124,10,
- 127,64,297,3,177,41,127,41,219,161,
- 146,146,145,145,145,148,148,148,148,147,
- 147,150,149,149,153,151,155,161,157,126,
- 301,79,77,1,161,8,85,83,81,80,
- 75,82,84,78,76,59,74,219,70,126,
- 126,126,69,69,126,212,126,69,69,128,
- 70,72,69,314,224,22,127,229,126,68,
- 68,68,68,187,258,127,166,205,3,298,
- 167,152,127,179,166,72,283,118,8,72,
- 214,72,3,3,3,190,3,123,161,123,
- 178,308,221,295,70,127,22,315,179,154,
- 229,3,3,3,3,125,124,166,41,177,
- 126,126,220,5,41,3,72,226,167,226,
- 303,144,75,226,126,189,70,126,68,179,
- 127,127,126,154,161,161,161,161,3,3,
- 187,154,262,265,64,180,4,123,125,90,
- 319,167,154,204,154,302,126,3,154,283,
- 189,8,62,39,179,179,221,126,219,219,
- 125,126,3,64,161,4,154,154,126,69,
- 190,160,268,161,3,232,126,221,262,219,
- 214,121,300,154,320,69,126,154,70
+ 69,70,166,9,6,126,126,126,64,64,
+ 187,126,126,126,225,126,127,228,128,309,
+ 127,168,224,59,41,60,170,312,125,124,
+ 233,233,179,162,126,179,253,167,53,43,
+ 47,49,44,10,135,3,127,48,42,5,
+ 36,35,6,9,38,37,139,145,147,146,
+ 149,148,151,150,155,153,157,62,158,256,
+ 187,260,187,281,162,293,127,294,214,158,
+ 166,152,126,162,251,176,176,253,253,212,
+ 229,230,144,231,295,41,10,39,225,225,
+ 179,166,126,233,233,126,126,187,126,276,
+ 123,277,126,3,217,216,3,58,58,58,
+ 58,127,3,177,161,126,65,66,166,3,
+ 125,105,119,3,64,89,91,36,35,93,
+ 92,6,95,94,68,58,87,88,9,97,
+ 96,99,98,100,116,115,114,113,112,111,
+ 110,109,108,107,69,106,101,70,4,282,
+ 126,70,179,3,267,126,162,6,126,154,
+ 69,223,204,3,126,70,70,68,58,232,
+ 232,228,187,311,72,289,204,124,126,126,
+ 72,276,69,70,212,223,126,3,177,161,
+ 177,177,177,177,166,219,154,135,125,124,
+ 10,127,64,297,3,177,41,127,41,219,
+ 161,146,146,145,145,145,148,148,148,148,
+ 147,147,150,149,149,153,151,155,161,157,
+ 126,301,79,77,1,161,8,85,83,81,
+ 80,75,82,84,78,76,59,74,219,70,
+ 126,176,184,126,69,69,126,212,126,69,
+ 69,128,70,72,69,314,224,22,127,229,
+ 126,68,68,68,68,187,258,127,166,205,
+ 3,298,167,152,127,179,166,72,283,118,
+ 8,72,214,72,3,3,3,190,3,123,
+ 161,123,178,308,126,221,295,70,127,22,
+ 315,179,154,229,3,3,3,3,125,124,
+ 166,41,177,126,126,220,5,41,3,72,
+ 226,167,226,303,144,75,226,126,189,70,
+ 126,68,179,127,127,126,154,161,161,161,
+ 161,3,3,187,154,262,265,64,180,4,
+ 123,125,90,319,167,154,204,154,302,126,
+ 3,154,283,189,8,62,39,179,179,221,
+ 126,219,219,125,126,3,64,161,4,154,
+ 154,126,69,190,160,268,161,3,232,126,
+ 221,262,219,214,121,300,154,320,69,126,
+ 154,70
};
};
public final static char inSymb[] = InSymb.inSymb;
@@ -2695,7 +2698,7 @@ public class CPPParserprs implements lpg.lpgjavaruntime.ParseTable, CPPParsersym
public final int getMaxNameLength() { return MAX_NAME_LENGTH; }
public final static int
- NUM_STATES = 539,
+ NUM_STATES = 542,
NT_OFFSET = 122,
LA_STATE_OFFSET = 5985,
MAX_LA = 2147483647,
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPSizeofExpressionParser.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPSizeofExpressionParser.java
index a9eb31e37b5..e402c5602b6 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPSizeofExpressionParser.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPSizeofExpressionParser.java
@@ -17,20 +17,29 @@ import lpg.lpgjavaruntime.*;
import java.util.*;
import org.eclipse.cdt.core.dom.ast.*;
+import org.eclipse.cdt.core.dom.lrparser.CPreprocessorAdapter;
+import org.eclipse.cdt.core.dom.lrparser.IDOMTokenMap;
import org.eclipse.cdt.core.dom.lrparser.IParser;
-import org.eclipse.cdt.core.dom.lrparser.IParserActionTokenProvider;
+import org.eclipse.cdt.core.dom.lrparser.ITokenCollector;
import org.eclipse.cdt.core.dom.lrparser.lpgextensions.FixedBacktrackingParser;
import org.eclipse.cdt.core.dom.lrparser.action.ScopedStack;
+import org.eclipse.cdt.core.parser.IScanner;
+import org.eclipse.cdt.core.dom.parser.IBuiltinBindingsProvider;
+import org.eclipse.cdt.core.index.IIndex;
+import org.eclipse.cdt.core.dom.lrparser.action.ITokenStream;
import org.eclipse.cdt.core.dom.lrparser.action.ITokenMap;
import org.eclipse.cdt.core.dom.lrparser.action.TokenMap;
+import org.eclipse.cdt.core.dom.lrparser.ISecondaryParser;
import org.eclipse.cdt.core.dom.ast.cpp.*;
import org.eclipse.cdt.internal.core.dom.parser.cpp.CPPNodeFactory;
import org.eclipse.cdt.core.dom.lrparser.action.cpp.CPPBuildASTParserAction;
import org.eclipse.cdt.core.dom.lrparser.action.cpp.CPPSecondaryParserFactory;
-public class CPPSizeofExpressionParser extends PrsStream implements RuleAction , IParserActionTokenProvider, IParser< IASTExpression >
+public class CPPSizeofExpressionParser extends PrsStream implements RuleAction, ITokenStream,
+ ITokenCollector, IParser< IASTExpression >
+ , ISecondaryParser< IASTExpression >
{
private static ParseTable prs = new CPPSizeofExpressionParserprs();
private FixedBacktrackingParser btParser;
@@ -168,7 +177,11 @@ public class CPPSizeofExpressionParser extends PrsStream implements RuleAction ,
private CPPBuildASTParserAction action;
private IASTCompletionNode compNode;
-public CPPSizeofExpressionParser() { // constructor
+
+public CPPSizeofExpressionParser(IScanner scanner, IDOMTokenMap tokenMap, IBuiltinBindingsProvider builtinBindingsProvider, IIndex index, Set<IParser.Options> options) {
+ initActions(options);
+ action.initializeTranslationUnit(scanner, builtinBindingsProvider, index);
+ CPreprocessorAdapter.runCPreprocessor(scanner, this, tokenMap);
}
private void initActions(Set<IParser.Options> options) {
@@ -187,10 +200,9 @@ public void addToken(IToken token) {
}
-public IASTExpression parse(Set<IParser.Options> options) {
+public IASTExpression parse() {
// this has to be done, or... kaboom!
setStreamLength(getSize());
- initActions(options);
final int errorRepairCount = -1; // -1 means full error handling
parser(null, errorRepairCount); // do the actual parse
@@ -233,12 +245,12 @@ public void setTokens(List<IToken> tokens) {
addToken(new Token(null, 0, 0, CPPSizeofExpressionParsersym.TK_EOF_TOKEN));
}
-public CPPSizeofExpressionParser(IParserActionTokenProvider parser) { // constructor
+public CPPSizeofExpressionParser(ITokenStream parser, Set<IParser.Options> options) { // constructor for creating secondary parser
+ initActions(options);
tokenMap = new TokenMap(CPPSizeofExpressionParsersym.orderedTerminalSymbols, parser.getOrderedTerminalSymbols());
}
-
public void ruleAction(int ruleNumber)
{
switch (ruleNumber)
@@ -1409,19 +1421,19 @@ public CPPSizeofExpressionParser(IParserActionTokenProvider parser) { // constr
}
//
- // Rule 326: ptr_operator ::= pointer_hook * <openscope-ast> cv_qualifier_seq_opt
+ // Rule 326: ptr_operator ::= pointer_hook * pointer_hook <openscope-ast> cv_qualifier_seq_opt
//
case 326: { action. consumePointer(); break;
}
//
- // Rule 327: ptr_operator ::= pointer_hook &
+ // Rule 327: ptr_operator ::= pointer_hook & pointer_hook
//
case 327: { action. consumeReferenceOperator(); break;
}
//
- // Rule 328: ptr_operator ::= dcolon_opt nested_name_specifier pointer_hook * <openscope-ast> cv_qualifier_seq_opt
+ // Rule 328: ptr_operator ::= dcolon_opt nested_name_specifier pointer_hook * pointer_hook <openscope-ast> cv_qualifier_seq_opt
//
case 328: { action. consumePointerToMember(); break;
}
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPSizeofExpressionParserprs.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPSizeofExpressionParserprs.java
index dddabe86f92..e9b7896e70f 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPSizeofExpressionParserprs.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPSizeofExpressionParserprs.java
@@ -69,7 +69,7 @@ public class CPPSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
1,1,1,6,5,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,4,2,6,0,1,
+ 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,
@@ -93,437 +93,445 @@ public class CPPSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
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,-5,0,0,0,0,0,-223,
- 0,0,-396,0,0,0,0,-71,0,0,
- 0,-261,0,0,0,0,0,0,0,0,
- -368,-112,-88,0,0,0,0,0,0,0,
+ 0,0,0,-5,0,0,0,0,0,-224,
+ 0,0,-399,0,0,0,0,-71,0,0,
+ 0,-262,0,0,0,0,0,0,0,0,
+ -6,-112,-88,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-219,0,0,0,0,
+ 0,0,0,0,0,-7,0,0,0,0,
0,0,0,0,-190,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,0,0,-10,-286,
- -237,0,0,0,0,-72,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-10,-287,
+ -238,0,0,0,0,-72,0,0,0,-225,
0,0,0,0,0,0,0,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,0,0,0,
- -253,0,0,0,0,0,-49,0,0,0,
- 0,-6,0,-531,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-115,
+ -297,0,0,0,0,0,-49,0,0,0,
+ 0,-8,0,-534,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-219,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,0,0,0,0,0,-415,0,
- 0,0,0,0,-358,0,0,-126,0,0,
- 0,0,0,-145,0,-7,0,0,-53,0,
- 0,-270,0,0,0,-16,0,0,0,-8,
- 0,0,0,0,0,0,-187,0,0,0,
+ 0,0,0,0,-53,0,0,-126,0,0,
+ 0,0,0,-342,0,0,0,-9,-65,0,
+ 0,-271,0,0,0,-16,0,0,0,-11,
+ 0,0,0,0,0,0,-119,-181,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,0,-121,0,0,0,0,0,-9,0,
- 0,0,-204,-50,0,0,0,0,0,-146,
- 0,0,0,-11,-374,0,0,0,0,0,
- 0,0,-65,0,0,-218,0,0,0,0,
+ 0,0,-121,0,0,0,0,0,-50,0,
+ 0,0,0,0,0,0,0,0,0,-146,
+ 0,0,0,-12,0,0,0,0,0,0,
+ 0,-460,0,0,0,-218,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-136,0,
- -400,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-57,0,0,0,0,0,
+ -64,0,0,0,-145,-51,0,0,0,0,
0,-148,0,0,0,0,0,0,0,0,
- 0,0,0,0,-457,0,0,0,-207,0,
- 0,0,-354,0,0,0,0,0,-506,0,
+ 0,0,0,0,-220,-13,0,-128,-207,0,
+ 0,0,0,0,0,0,0,0,-509,0,
0,0,0,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,-257,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,0,0,-240,0,0,0,
- 0,-530,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-12,0,0,0,0,0,
- -379,0,0,0,0,0,-13,0,0,0,
- 0,0,0,0,-186,-329,0,0,0,0,
+ 0,0,0,0,-15,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-54,
+ 0,0,0,0,-186,-330,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,-188,0,
- -462,0,0,0,0,-1,0,0,-256,0,
- -15,-437,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
+ -28,0,0,0,-204,-1,0,0,0,0,
+ -388,-440,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-42,0,0,0,0,0,
+ 0,0,0,0,0,0,-29,0,0,0,
+ 0,0,0,0,-42,-187,0,0,0,-255,
-3,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-137,
- 0,0,0,0,0,-28,0,0,-177,0,
- 0,0,0,-106,0,0,0,-29,0,0,
+ 0,0,0,0,0,0,0,0,0,-136,
+ 0,0,0,0,0,0,0,0,-177,0,
+ 0,0,0,-106,0,0,0,-30,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-345,0,0,0,
- 0,0,-51,0,0,0,0,0,-30,0,
- 0,-274,0,0,0,-54,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,-344,0,0,0,0,0,-31,0,
+ 0,-275,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -57,0,0,0,0,0,-302,0,0,0,
- 0,0,0,0,-150,0,0,0,-31,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-137,0,-184,0,0,0,
+ 0,0,0,0,-150,0,0,0,-32,0,
0,0,0,0,0,0,0,-18,0,0,
- 0,-317,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,-32,0,0,0,0,0,
- 0,0,0,0,-119,0,-277,0,0,-340,
- 0,0,0,0,-385,-318,0,0,0,-33,
+ 0,0,0,0,-347,0,0,0,0,0,
+ 0,0,0,0,-129,0,-278,0,0,-376,
+ 0,0,0,0,-414,-319,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-411,0,
- -278,0,0,-271,0,0,0,0,-39,0,
+ 0,0,0,0,-296,0,0,0,-494,0,
+ -33,0,0,-272,0,0,0,0,-39,0,
0,0,-34,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-491,0,-35,0,0,-59,0,0,0,
- 0,-373,-41,0,0,0,-60,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
+ 0,-35,0,0,0,0,-59,-391,0,0,
+ 0,0,-41,0,0,0,-60,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-529,0,-64,0,0,
+ 0,0,0,0,0,-360,0,0,0,0,
+ 0,0,0,0,0,-532,0,0,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,0,0,
0,0,0,0,0,0,0,0,0,0,
- -184,0,0,0,0,-342,0,0,-95,0,
+ -198,0,0,0,0,0,0,0,-95,0,
0,0,-107,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-36,0,0,0,0,0,0,0,0,
- 0,-535,0,0,0,0,0,0,-361,0,
- 0,-96,0,0,0,-37,0,0,0,0,
+ 0,-36,0,0,0,0,0,-203,0,0,
+ 0,0,0,-303,0,0,-143,0,0,0,
+ 0,-96,0,0,0,-113,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-38,0,0,0,0,0,
- 0,0,0,0,-40,0,0,0,0,-128,
- 0,-55,0,0,-97,0,0,0,-113,0,
+ 0,0,0,0,-37,0,0,0,0,0,
+ -229,0,0,0,0,0,0,0,0,0,
+ 0,-38,0,0,-97,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,-198,0,0,0,0,0,-382,
- 0,0,0,0,0,0,0,-98,0,0,
- 0,-151,0,0,0,0,0,0,0,0,
+ 0,0,0,-254,0,0,0,0,0,0,
+ 0,0,-152,0,-364,0,0,-98,0,0,
+ 0,-196,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -56,0,0,0,0,0,-203,0,0,0,
- 0,0,0,0,0,-129,0,-66,0,0,
- -99,0,0,0,-196,0,0,0,0,0,
+ -40,0,0,0,0,0,-267,0,0,0,
+ 0,0,0,0,0,-194,0,-55,0,0,
+ -99,0,0,0,-205,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-220,
- 0,0,0,0,0,-392,0,0,-143,0,
- 0,0,0,-100,0,0,0,-205,0,0,
+ 0,0,0,-56,0,0,0,0,0,-268,
+ 0,0,0,0,0,0,0,0,-66,0,
+ -67,0,0,-100,0,0,0,-233,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-254,0,0,0,
- 0,0,-228,0,0,0,0,0,0,0,
- 0,-152,0,-67,0,0,-101,0,0,0,
- -232,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-69,
- 0,0,0,0,0,-266,0,0,0,0,
- 0,0,0,0,-194,0,-70,0,0,-102,
+ 0,0,0,0,0,0,-69,0,0,0,
+ 0,0,-270,0,0,0,0,0,0,0,
+ 0,-228,0,-279,0,0,-101,0,0,0,
+ -240,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-70,
+ 0,0,0,0,0,-274,0,0,0,0,
+ 0,0,0,0,-300,0,-108,0,0,-102,
+ 0,0,0,-291,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,-314,0,0,0,0,0,0,0,
+ 0,0,-109,0,0,0,0,-331,-448,-110,
+ 0,0,-103,0,0,0,-247,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-313,0,0,0,0,0,-267,0,
- 0,0,0,0,0,0,0,-108,-445,-109,
- 0,0,-103,0,0,0,-239,0,0,0,
+ 0,0,0,0,0,-354,0,0,0,0,
+ 0,-286,0,0,0,0,0,-385,0,0,
+ -332,0,0,0,0,-104,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,-269,0,0,0,0,0,0,0,0,
- -227,0,-475,0,0,-104,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-383,0,
- 0,0,0,0,-273,0,0,0,0,0,
- 0,0,0,-299,-200,-110,0,0,-134,0,
+ 0,0,0,0,0,0,0,0,-386,0,
+ 0,0,0,0,-111,0,0,0,0,0,
+ 0,0,0,-131,-200,-401,0,0,-134,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-285,0,0,
+ 0,0,0,0,0,0,0,-299,0,0,
0,0,0,0,0,0,-211,0,0,0,
- -111,0,0,0,0,0,0,0,0,0,
+ -138,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-398,0,0,-141,0,0,0,0,0,
- 0,0,-185,0,0,0,-524,0,0,0,
+ 0,-417,0,0,-141,0,0,0,0,0,
+ 0,0,-185,0,0,0,-527,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-330,
- 0,-131,0,0,-471,0,0,0,0,-343,
- 0,0,0,-360,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-362,
+ 0,-139,0,0,-474,0,0,0,0,-345,
+ 0,0,0,-140,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-138,0,0,0,0,0,-295,0,
- 0,0,0,0,0,0,0,-353,0,0,
+ 0,0,-153,0,0,0,0,0,-304,0,
+ 0,0,0,0,0,0,0,-355,0,0,
0,0,0,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,0,
- 0,0,0,0,0,-333,0,0,0,-461,
- 0,0,0,0,0,0,0,-377,0,0,
+ 0,0,0,0,0,0,-308,0,0,0,
+ 0,0,0,0,0,-335,0,0,0,-154,
+ -371,0,0,0,0,0,-155,-380,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,-303,0,0,0,
- 0,0,-414,0,0,-378,0,0,0,0,
+ -156,0,0,0,0,0,-309,0,0,0,
+ 0,0,-442,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,-296,0,
- 0,0,0,0,-307,0,0,0,0,0,
- 0,0,0,-372,0,0,0,-140,-153,0,
- 0,0,0,0,-154,-448,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-265,0,
+ 0,0,0,0,-320,0,0,0,0,0,
+ 0,0,0,-375,0,0,0,-464,0,0,
+ 0,0,0,0,-157,-451,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-439,0,
- 0,0,0,0,-308,0,0,0,0,0,
- 0,0,0,-93,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-158,0,
+ 0,0,0,0,-326,0,0,0,0,0,
+ -418,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,-319,0,0,0,0,0,0,-312,
- 0,-362,-123,-408,0,0,0,-393,-290,-428,
+ 0,0,-159,0,0,0,-58,0,0,0,
+ -356,0,-160,-411,0,0,0,0,-241,-431,
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,0,0,0,0,-92,0,0,0,-155,
- 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-92,0,0,0,-161,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-389,0,0,0,
+ 0,0,0,0,0,0,0,0,-162,0,
+ 0,0,0,0,-163,0,-392,0,0,0,
0,0,0,0,0,0,0,0,0,-89,
- 0,0,0,-210,0,0,0,0,0,0,
+ 0,0,0,-164,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-156,0,0,0,0,-47,0,0,
- 0,0,-135,0,-246,-297,0,-48,-224,-157,
- 0,0,-117,0,0,0,0,-158,-159,0,
- 0,-375,0,0,-160,0,0,-397,0,0,
- 0,-161,0,0,0,0,0,0,0,0,
+ 0,0,-248,0,0,0,0,-47,0,0,
+ 0,-165,0,-135,-48,0,-123,0,0,-176,
+ 0,0,0,0,0,0,0,-166,-167,0,
+ 0,-378,0,0,0,-333,0,0,0,0,
+ 0,0,0,0,-430,0,0,-538,0,0,
0,0,-90,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-168,0,0,0,0,
+ -249,-461,-222,-250,-210,0,0,0,0,0,
+ 0,0,-235,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-328,0,0,-169,-61,0,0,
+ 0,0,-170,0,-209,0,0,0,0,0,
+ 0,-281,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-223,0,0,0,-193,0,
+ 0,0,0,0,-403,0,0,0,0,0,
+ 0,0,0,0,0,-284,0,0,0,0,
+ -365,-305,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-171,0,-172,0,
+ 0,0,0,0,-439,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-173,0,-266,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-237,0,-174,0,
+ 0,0,0,0,0,0,0,0,-358,-175,
+ -353,-178,0,0,-337,0,0,-395,0,0,
+ -179,0,0,-433,0,0,0,-180,-183,0,
+ -191,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,
+ -83,0,0,0,-192,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-310,0,0,0,0,0,-195,
+ -116,-232,0,0,0,0,0,0,0,0,
+ -206,0,0,0,-239,0,0,0,-216,-118,
+ -217,-298,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,-429,0,0,0,
+ 0,0,-245,0,0,0,0,-264,0,-322,
+ 0,0,0,-231,0,0,-43,-423,-44,0,
+ 0,0,0,0,0,0,0,0,0,-339,
+ 0,-311,0,0,0,0,0,-226,-294,0,
+ 0,0,0,0,0,-382,0,0,0,0,
+ 0,0,-449,0,0,0,0,-246,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,-234,-14,0,0,0,0,0,0,0,
+ -295,0,-236,-244,0,0,0,0,0,0,
+ 0,0,0,-478,0,0,-313,0,0,0,
+ 0,-253,0,0,0,0,0,0,0,0,
+ 0,-409,-269,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-526,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ -258,0,0,-52,0,0,0,-351,0,0,
+ 0,-120,-325,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-323,-396,-117,-73,-486,
+ 0,0,0,0,-341,0,0,0,0,-465,
+ 0,-127,0,0,0,0,0,0,-260,-261,
+ 0,0,0,-467,0,0,0,0,0,-276,
+ 0,0,0,0,-377,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-361,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-277,0,0,0,
+ 0,0,-288,-292,0,0,0,0,0,-357,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-293,0,-19,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-86,0,0,0,
+ -122,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-389,
+ 0,0,-87,0,0,0,-301,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-331,-61,-264,0,-118,0,0,-265,0,
- 0,0,-234,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-127,0,0,0,-58,
- 0,0,0,0,-73,-458,-162,0,0,0,
- -327,-280,0,0,0,0,0,0,0,0,
- 0,0,0,0,-163,0,-309,0,0,-247,
- 0,0,0,0,0,0,0,0,0,0,
- -258,0,0,0,0,-310,0,0,0,-248,
- -249,0,0,0,0,0,0,0,0,-176,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-164,-120,
- 0,0,0,0,0,0,0,0,-304,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,-165,-166,0,0,0,0,-82,0,
- 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-458,0,0,-390,0,
+ 0,0,0,-197,0,-283,-147,0,0,0,
+ -302,-410,0,-144,0,-529,0,0,0,0,
+ -321,0,0,0,0,-124,0,-243,0,-142,
0,0,0,0,0,0,0,0,0,0,
- 0,-483,0,0,0,0,0,0,-427,0,
- 0,0,0,0,0,0,0,0,0,-167,
- 0,0,0,0,0,0,0,0,-325,-321,
- 0,-335,0,-168,0,0,0,0,0,0,
- 0,-169,-170,-171,-83,0,0,0,0,0,
+ -307,0,0,0,0,0,0,0,0,0,
+ 0,-481,0,0,0,0,-315,-316,0,-471,
0,0,0,0,0,0,0,0,0,0,
+ -317,0,0,0,0,-413,-524,-416,-133,0,
+ 0,0,-425,0,-428,0,0,0,0,0,
+ 0,0,0,0,0,-421,0,0,0,0,
+ 0,0,0,0,0,0,0,-483,0,0,
+ 0,0,0,0,0,-327,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-453,-45,
+ 0,0,0,0,-470,0,0,-346,0,-149,
+ 0,0,0,0,0,0,0,0,-259,0,
+ 0,-348,0,0,0,0,-420,0,0,0,
+ 0,0,0,-500,0,0,0,0,0,0,
+ 0,-495,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-462,-366,0,-521,0,0,
+ 0,0,0,0,-522,0,-369,-227,0,0,
+ 0,0,0,0,-370,0,0,-282,-384,0,
+ 0,0,0,0,0,0,0,0,0,-514,
+ -251,-393,0,0,0,-273,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-504,
+ 0,0,0,0,0,-463,-242,-466,0,0,
+ -290,0,0,0,-394,0,0,0,0,0,
+ -397,0,0,-398,0,0,0,0,0,0,
+ 0,0,0,0,0,-516,-252,-68,0,0,
+ 0,0,0,0,0,0,-476,0,0,0,
+ 0,0,0,0,-404,0,-407,0,0,0,
+ 0,0,-489,0,0,0,0,0,0,-285,
+ 0,0,0,0,0,0,0,0,-444,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-84,0,0,0,-172,0,0,0,0,
+ 0,-230,0,0,0,-280,0,0,0,-406,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-77,0,
- 0,0,-173,0,0,0,0,0,0,0,
+ -518,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-412,0,-74,-374,-499,0,0,
+ 0,0,-352,0,0,0,-46,-520,0,0,
+ 0,0,-312,0,0,0,-419,0,0,0,
+ 0,0,0,-426,0,-427,-450,-202,0,0,
+ 0,0,-452,-334,0,-454,0,-473,0,0,
+ 0,0,0,0,0,0,0,0,-490,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-406,0,0,0,0,0,-438,0,0,
+ 0,0,0,-340,0,0,0,0,-455,-456,
+ -535,-457,0,0,0,0,0,0,0,0,
+ 0,0,-468,0,0,0,0,0,0,-459,
+ -477,-479,-480,0,0,0,0,-350,-482,0,
+ -469,-487,0,0,0,0,0,0,0,0,
+ 0,-491,0,0,-497,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-540,0,0,
+ -492,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-446,0,-484,-472,0,
+ 0,0,0,-496,0,-498,0,0,-505,-329,
+ -513,-506,0,0,0,0,0,0,0,0,
+ 0,-515,-523,0,0,0,0,0,0,0,
+ 0,0,0,0,-528,-539,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -441,0,0,-85,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,-426,0,0,0,
- 0,-197,-351,-174,-175,0,0,0,0,0,
- 0,-178,0,0,-179,0,0,0,-193,0,
- 0,0,-180,0,0,0,-430,0,0,0,
- -183,-191,-407,0,0,0,0,0,-464,0,
+ 0,0,0,0,0,0,0,-78,0,0,
0,0,0,0,0,0,0,0,0,0,
- -446,0,-283,-505,0,0,-68,-436,0,0,
- 0,0,0,-192,0,0,0,0,0,0,
- 0,0,0,0,0,0,-122,-450,-418,0,
- 0,0,0,0,-195,0,0,0,0,0,
- 0,0,0,0,-349,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-124,
- -206,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-523,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-293,
- -52,0,0,0,-236,0,-294,-216,0,-324,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-217,0,0,0,0,0,-225,-233,
- 0,0,-14,0,0,0,0,-465,0,0,
- 0,0,-181,0,0,0,-235,0,0,0,
- -142,0,0,0,0,0,0,0,0,-243,
+ 0,0,-80,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-337,0,0,0,0,-252,0,0,0,
- 0,0,-257,0,0,-259,0,0,0,0,
- -468,-260,-275,0,0,0,0,-350,0,0,
- -518,-276,0,0,0,0,0,-287,-291,0,
- 0,0,-222,0,0,0,-292,0,0,0,
- 0,0,-231,0,0,0,-19,0,0,0,
+ 0,0,0,0,0,-81,0,0,0,-402,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-336,-105,
+ -445,-212,0,0,0,0,0,-501,-373,-475,
+ 0,0,0,0,-213,-400,0,0,0,0,
+ 0,0,0,0,-182,0,0,0,0,0,
+ 0,0,-517,0,0,-214,-503,-432,0,0,
0,0,0,0,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,-322,0,0,-87,
- 0,0,0,-459,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-455,0,0,-339,0,0,0,0,
- -323,0,-355,0,0,0,0,-230,0,0,
- -43,0,-300,-359,0,0,0,-301,0,-116,
- -133,0,-306,0,0,0,-209,0,0,0,
- 0,0,0,0,-320,0,0,0,0,0,
- 0,0,0,0,0,0,-478,0,0,-314,
- 0,-507,0,0,0,0,-315,0,0,0,
- 0,0,0,0,0,0,0,0,-386,0,
- -460,0,0,0,0,0,0,0,-149,0,
- 0,0,-326,-344,0,0,0,-367,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- -480,0,-346,0,0,0,0,0,0,0,
- 0,0,0,-147,0,0,0,0,0,0,
- 0,0,0,0,0,-241,-473,0,-417,0,
- 0,-363,0,-366,0,-472,0,0,0,0,
- 0,0,-226,0,0,0,0,0,0,0,
- 0,0,0,0,-497,0,-388,-289,0,0,
- 0,-420,0,0,0,0,0,-242,0,0,
- 0,0,0,0,0,0,-144,0,0,0,
- 0,-486,0,0,0,0,0,-238,0,0,
- 0,0,0,0,0,-463,0,-381,0,0,
- 0,0,0,0,0,0,0,0,-511,0,
- -390,0,0,-391,0,-244,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-466,
- 0,0,0,-245,0,0,0,0,-394,0,
- -229,0,0,0,-395,-44,0,0,0,0,
- 0,0,0,-401,0,0,0,0,0,0,
- 0,0,-513,0,0,-356,0,0,0,0,
- -403,-387,-409,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-416,-423,0,-424,
- 0,0,-447,0,0,-449,0,-451,-452,0,
- 0,0,0,-282,0,0,0,0,0,0,
- 0,0,0,0,0,0,-453,0,-279,0,
- 0,0,-338,0,0,0,0,-521,0,-454,
- 0,0,0,0,0,0,0,-515,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- -456,0,0,-410,-481,0,0,0,0,-413,
- -422,0,0,0,0,0,0,0,-474,-517,
- 0,0,0,0,0,-476,-469,0,0,-268,
- 0,0,0,0,-425,-467,-470,-45,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-477,-347,0,0,0,0,0,0,
- 0,0,-479,0,-487,0,0,0,0,0,
- 0,0,0,-498,0,-74,-250,-532,-484,0,
- 0,0,0,-488,-495,0,0,0,0,0,
- 0,0,0,0,0,-46,0,0,0,0,
- 0,-494,0,-503,0,0,0,0,0,0,
- 0,0,0,-522,0,0,0,0,0,-384,
+ 0,-507,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,-349,0,
+ 0,0,0,0,0,-438,0,-215,0,0,
+ 0,0,0,0,0,-359,-508,-447,-363,0,
+ 0,0,0,0,0,-511,-437,0,0,0,
+ 0,0,0,-510,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-537,0,0,-399,0,-512,-526,-251,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-489,0,-493,-520,0,
- 0,0,0,0,-525,-536,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,-371,0,0,
- 0,0,-272,0,0,0,-316,0,0,0,
- 0,0,0,0,0,0,-78,0,0,0,
+ 0,-512,0,0,0,0,0,0,0,0,
+ 0,0,-20,0,0,0,-530,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,0,0,0,0,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,-537,-525,
+ 0,0,-189,0,0,0,-531,-536,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,-334,0,-105,
- -502,0,-492,0,0,-510,-202,-370,0,0,
- 0,0,0,-212,0,0,0,0,0,0,
- 0,-284,0,0,0,-514,-527,0,0,0,
- 0,-500,-213,-214,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-281,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,-23,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -534,0,0,0,-376,0,0,0,0,0,
- 0,0,0,0,0,0,0,-182,0,0,
- 0,0,0,0,-435,-348,0,0,0,0,
- 0,0,0,0,-341,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-504,-508,
- 0,-509,-189,0,0,0,-199,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,-519,0,
+ 0,0,0,0,0,0,-25,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-26,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-20,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,-311,0,0,0,0,0,0,
- 0,-21,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,-528,0,0,0,0,0,0,
- 0,0,-22,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,-23,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,-24,0,0,0,
+ 0,0,0,0,0,0,0,0,-132,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,
+ -201,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,-338,-289,-519,0,0,0,0,0,
+ 0,0,-367,0,0,0,0,0,0,0,
+ 0,0,-372,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-27,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,-75,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,
- -132,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-201,0,0,0,-533,0,0,0,
+ 0,0,0,0,0,-415,0,0,0,0,
+ 0,0,0,0,0,-424,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-336,-215,0,-288,0,0,
- 0,0,0,0,-364,0,-328,0,0,-429,
- 0,0,0,0,-369,-332,0,0,0,0,
- 0,0,0,0,0,-496,0,0,0,0,
+ 0,-199,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-412,0,0,
- 0,0,0,0,0,-404,0,-421,0,0,
- 0,0,-516,0,0,0,0,-442,-357,0,
- 0,0,0,0,0,0,0,0,-434,0,
+ 0,0,-306,0,0,0,0,0,0,0,
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,-383,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,-305,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-380,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,
+ -502,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-324,0,0,0,0,0,-263,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-402,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-499,
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,-387,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ -405,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,0,0,0,
+ 0,0,0,0,-408,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-422,0,
+ 0,0,-434,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-435,0,
+ 0,0,-443,0,0,0,0,0,0,0,
+ -17,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-493,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,-262,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,-365,0,0,0,0,0,0,0,0,
- 0,0,0,0,-405,0,0,0,0,0,
- 0,-263,0,0,0,0,0,0,0,-419,
- 0,0,0,-431,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,0,
+ 0,0,0,0,-436,0,0,0,0,0,
+ 0,0,-485,0,0,0,0,0,0,-208,
+ 0,0,0,-256,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,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-443,0,0,0,0,0,
- 0,-501,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-440,
- 0,0,0,0,0,-17,0,-482,-444,0,
- 0,0,0,0,-208,0,0,0,0,0,
- 0,-255,0,0,0,0,0,0,0,0,
- 0,0,0,-433,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-485,
- 0,0,0,0,0,0,0,-490,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
@@ -537,10 +545,7 @@ public class CPPSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,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;
@@ -571,7 +576,7 @@ public class CPPSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
55,179,179,70,70,70,103,103,180,180,
71,71,71,181,181,72,72,72,72,72,
73,73,84,84,84,84,84,84,84,84,
- 49,49,49,49,49,116,116,114,114,50,
+ 50,50,50,50,50,116,116,114,114,51,
182,23,23,23,23,23,48,48,87,87,
87,87,87,152,152,147,147,147,147,147,
148,148,148,149,149,149,150,150,150,151,
@@ -579,10 +584,10 @@ public class CPPSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
13,13,13,13,13,13,13,13,13,13,
13,98,120,120,120,120,120,120,118,118,
118,153,119,119,183,155,155,154,154,122,
- 122,104,79,79,80,81,52,47,156,156,
- 53,51,86,86,157,157,146,146,123,124,
+ 122,104,79,79,80,81,53,47,156,156,
+ 54,52,86,86,157,157,146,146,123,124,
124,125,76,76,158,158,63,63,63,59,
- 59,58,64,64,75,75,57,57,57,54,
+ 59,58,64,64,75,75,57,57,57,49,
90,90,100,99,99,62,62,60,60,61,
61,45,101,101,101,93,93,93,94,94,
95,95,95,96,96,105,105,105,107,107,
@@ -603,493 +608,498 @@ public class CPPSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
173,173,132,132,133,133,133,133,133,133,
3,134,134,131,131,112,112,85,78,74,
161,161,113,113,197,197,197,135,135,126,
- 126,198,198,174,174,1119,35,2228,2171,1278,
- 3031,27,30,31,1037,1091,26,28,2083,25,
- 23,50,1176,104,75,76,106,1188,1982,1269,
- 1219,1330,1305,1404,71,1373,1546,1522,271,1565,
- 142,1575,141,1243,35,394,156,142,1217,35,
- 1025,32,236,3269,27,30,31,1037,1091,57,
- 28,2050,1279,3121,35,1025,32,230,1278,27,
- 30,31,1037,1091,26,28,874,25,23,50,
- 1176,104,75,76,106,1188,135,1269,1219,1330,
- 1305,2619,233,228,229,588,35,1754,386,3121,
- 35,1025,32,272,1278,27,30,31,1037,1091,
- 26,28,874,25,23,50,1176,104,75,76,
- 106,2360,240,243,246,249,853,2600,271,69,
- 2580,2079,35,275,2428,1315,1860,35,1025,32,
- 3057,3269,27,30,31,1037,1091,56,28,1786,
- 558,3478,2443,2506,2620,2917,2950,4541,2316,35,
- 1025,32,2981,1278,27,30,31,1037,1091,26,
- 28,874,25,23,50,1176,104,75,76,106,
- 1188,341,1269,1219,1330,1305,1404,61,1373,1546,
- 1522,737,1565,273,1575,141,3842,56,1179,515,
- 142,688,1267,2503,2344,35,1025,32,1257,4815,
- 27,30,31,1037,1091,26,28,1257,509,516,
- 2316,35,1025,32,2981,1278,27,30,31,1037,
- 1091,26,28,874,25,23,50,1176,104,75,
- 76,106,1188,341,1269,1219,1330,1305,1404,2244,
- 1373,1546,1522,2209,1565,2580,1575,141,327,35,
- 277,515,142,3963,56,2503,2023,1179,1141,1010,
- 511,86,1643,3240,100,60,1500,35,1025,32,
- 2168,516,41,30,31,1037,1091,2129,1881,2852,
- 326,333,2855,1718,2316,35,1025,32,2981,1278,
- 27,30,31,1037,1091,26,28,874,25,23,
- 50,1176,104,75,76,106,1188,341,1269,1219,
- 1330,1305,1404,1229,1373,1546,1522,1743,1565,2493,
- 1575,141,511,1868,56,515,142,3316,750,2503,
- 2407,35,1025,32,1016,1330,40,30,31,1037,
- 1091,2863,496,2121,2855,516,2524,35,1025,32,
- 2981,1278,27,30,31,1037,1091,26,28,874,
- 25,23,50,1176,104,75,76,106,1188,341,
- 1269,1219,1330,1305,1404,921,1373,1546,1522,1873,
- 1565,838,1575,141,285,2837,87,515,142,100,
- 374,2503,1715,35,1025,32,511,4815,27,30,
- 31,1037,1091,59,28,588,3372,516,870,588,
- 35,1754,386,588,3240,2904,1823,3247,2855,2659,
- 35,1025,32,310,1278,27,30,31,1037,1091,
- 26,28,874,25,23,50,1176,104,75,76,
- 106,1188,49,1269,1219,1330,1305,1404,180,1373,
- 1546,1522,46,1565,351,1575,141,1988,512,3577,
- 377,142,2385,35,1025,32,1045,1278,27,30,
- 31,1037,1091,26,28,874,25,23,50,1176,
- 104,75,76,106,1188,2681,1269,1219,1330,1305,
- 1404,2371,1373,1546,1522,372,1565,2682,1575,141,
- 91,2013,3577,377,142,69,3121,35,1025,32,
- 3333,1278,27,30,31,1037,1091,26,28,874,
- 25,23,50,1176,104,75,76,106,1188,1532,
- 1269,1219,1330,1305,1404,286,1373,1546,1522,69,
- 1565,1330,2925,162,3431,3057,2249,383,2055,2049,
- 1141,2683,2591,35,1025,32,870,1278,27,30,
- 31,1037,1091,26,28,874,25,23,50,1176,
- 104,75,76,106,1188,154,1269,1219,1330,1305,
- 1404,921,1373,1546,1522,533,1565,402,1575,141,
- 384,2055,3577,377,142,56,3696,660,2064,1141,
- 3088,2887,35,1025,32,3989,1278,27,30,31,
- 1037,1091,26,28,874,25,23,50,1176,104,
- 75,76,106,1188,154,1269,1219,1330,1305,1404,
- 1699,1373,1546,1522,1503,1565,2245,1575,141,588,
- 35,3003,156,142,3121,35,1025,32,413,1278,
- 27,30,31,1037,1091,26,28,874,25,23,
- 50,1176,104,75,76,106,1188,2750,1269,1219,
- 1330,1305,1404,1599,1373,1546,1522,3210,2714,1445,
- 375,2055,2887,35,1025,32,1614,1278,27,30,
- 31,1037,1091,26,28,874,25,23,50,1176,
- 104,75,76,106,1188,352,1269,1219,1330,1305,
- 1404,56,1373,1546,1522,824,1565,69,1575,141,
- 539,495,3513,371,142,1715,35,1025,32,64,
- 4815,27,30,31,1037,1091,58,28,1976,35,
- 1754,386,2887,35,1025,32,558,1278,27,30,
- 31,1037,1091,26,28,874,25,23,50,1176,
- 104,75,76,106,1188,2284,1269,1219,1330,1305,
- 1404,49,1373,1546,1522,1330,1565,2556,1575,141,
- 2728,1668,883,371,142,1721,2887,35,1025,32,
- 587,1278,27,30,31,1037,1091,26,28,874,
- 25,23,50,1176,104,75,76,106,1188,370,
- 1269,1219,1330,1305,1404,1491,1373,1546,1522,1721,
- 1565,2380,1575,141,588,35,280,371,142,2457,
- 35,1025,32,494,1278,27,30,31,1037,1091,
- 26,28,874,25,23,50,1176,104,75,76,
- 106,1188,322,1269,1219,1330,1305,1404,419,1373,
- 1546,1522,1721,1565,1355,1575,141,1614,441,369,
- 140,142,2728,2887,35,1025,32,1614,1278,27,
- 30,31,1037,1091,26,28,874,25,23,50,
- 1176,104,75,76,106,1188,323,1269,1219,1330,
- 1305,1404,4281,1373,1546,1522,159,1565,1017,1575,
- 141,354,24,367,157,142,2887,35,1025,32,
- 529,1278,27,30,31,1037,1091,26,28,874,
- 25,23,50,1176,104,75,76,106,1188,875,
- 1269,1219,1330,1305,1404,353,1373,1546,1522,445,
- 1565,56,1575,141,529,4609,1604,153,142,2887,
- 35,1025,32,1614,1278,27,30,31,1037,1091,
- 26,28,874,25,23,50,1176,104,75,76,
- 106,1188,400,1269,1219,1330,1305,1404,321,1373,
- 1546,1522,159,1565,400,1575,141,529,68,2552,
- 152,142,2887,35,1025,32,1226,1278,27,30,
- 31,1037,1091,26,28,874,25,23,50,1176,
- 104,75,76,106,1188,1146,1269,1219,1330,1305,
- 1404,3675,1373,1546,1522,1617,1565,404,1575,141,
- 1010,445,1625,151,142,2887,35,1025,32,1614,
- 1278,27,30,31,1037,1091,26,28,874,25,
- 23,50,1176,104,75,76,106,1188,379,1269,
- 1219,1330,1305,1404,56,1373,1546,1522,2985,1565,
- 2627,1575,141,3367,53,4705,150,142,2887,35,
- 1025,32,1614,1278,27,30,31,1037,1091,26,
- 28,874,25,23,50,1176,104,75,76,106,
- 1188,1627,1269,1219,1330,1305,1404,56,1373,1546,
- 1522,997,1565,458,1575,141,1010,52,1174,149,
- 142,2887,35,1025,32,1614,1278,27,30,31,
- 1037,1091,26,28,874,25,23,50,1176,104,
- 75,76,106,1188,378,1269,1219,1330,1305,1404,
- 56,1373,1546,1522,721,1565,69,1575,141,1010,
- 348,4720,148,142,2887,35,1025,32,1614,1278,
- 27,30,31,1037,1091,26,28,874,25,23,
- 50,1176,104,75,76,106,1188,322,1269,1219,
- 1330,1305,1404,56,1373,1546,1522,802,1565,457,
- 1575,141,1010,88,2690,147,142,2887,35,1025,
- 32,1614,1278,27,30,31,1037,1091,26,28,
- 874,25,23,50,1176,104,75,76,106,1188,
- 1323,1269,1219,1330,1305,1404,56,1373,1546,1522,
- 2567,1565,4303,1575,141,1010,1915,1441,146,142,
- 2887,35,1025,32,387,1278,27,30,31,1037,
- 1091,26,28,874,25,23,50,1176,104,75,
- 76,106,1188,322,1269,1219,1330,1305,1404,56,
- 1373,1546,1522,2586,1565,51,1575,141,160,1088,
- 676,145,142,2887,35,1025,32,1614,1278,27,
- 30,31,1037,1091,26,28,874,25,23,50,
- 1176,104,75,76,106,1188,322,1269,1219,1330,
- 1305,1404,56,1373,1546,1522,2310,1565,324,1575,
- 141,1330,1958,1964,144,142,2887,35,1025,32,
- 282,1278,27,30,31,1037,1091,26,28,874,
- 25,23,50,1176,104,75,76,106,1188,314,
- 1269,1219,1330,1305,1404,56,1373,1546,1522,3737,
- 1565,1872,1575,141,1330,1818,848,143,142,2832,
- 35,1025,32,283,1278,27,30,31,1037,1091,
- 26,28,874,25,23,50,1176,104,75,76,
- 106,1188,520,1269,1219,1330,1305,1404,56,1373,
- 1546,1522,2551,1565,2702,2925,162,2887,35,1025,
- 32,1167,1278,27,30,31,1037,1091,26,28,
- 874,25,23,50,1176,104,75,76,106,1188,
- 870,1269,1219,1330,1305,1404,521,1373,1546,1522,
- 1883,1565,2552,1575,141,327,35,277,138,142,
- 3967,436,325,1243,35,3009,2439,3005,35,1025,
- 32,1795,1278,27,30,31,1037,1091,26,28,
- 874,25,23,50,1176,104,75,76,106,1188,
- 297,1269,1219,1330,1305,1404,49,1373,1546,1522,
- 1010,1565,2691,1575,141,1330,1668,3093,187,142,
- 3121,35,1025,32,1010,1278,27,30,31,1037,
- 1091,26,28,874,25,23,50,1176,104,75,
- 76,106,1188,1503,1269,1219,1330,1305,1404,56,
- 1373,1546,1522,4346,1565,3698,2925,162,3121,35,
- 1025,32,2873,1278,27,30,31,1037,1091,26,
- 28,874,25,23,50,1176,104,75,76,106,
- 1188,570,1269,1219,1330,1305,1404,56,1373,1546,
- 1522,3818,1565,95,2925,162,2407,35,1025,32,
- 588,3624,1539,30,31,1037,1091,96,3121,35,
- 1025,32,421,1278,27,30,31,1037,1091,26,
- 28,874,25,23,50,1176,104,75,76,106,
- 1188,3321,1269,1219,1330,1305,1404,1390,1373,1546,
- 1522,1320,1565,2552,2925,162,3121,35,1025,32,
- 290,1278,27,30,31,1037,1091,26,28,874,
- 25,23,50,1176,104,75,76,106,1188,737,
- 1269,1219,1330,1305,1404,56,1373,1546,1522,2935,
- 1565,219,2925,162,2407,35,1025,32,1453,408,
- 2002,30,31,1037,1091,580,3176,35,1025,32,
- 420,1278,27,30,31,1037,1091,26,28,874,
- 25,23,50,1176,104,75,76,106,1188,2552,
- 1269,1219,1330,1305,1404,56,1373,1546,1522,3078,
- 1565,2209,2925,162,3121,35,1025,32,423,1278,
- 27,30,31,1037,1091,26,28,874,25,23,
- 50,1176,104,75,76,106,1188,301,1269,1219,
- 1330,1305,1404,56,1373,1546,2712,3456,332,333,
- 1643,3240,322,241,588,35,1754,386,322,666,
- 588,35,1754,386,3121,35,1025,32,3603,1278,
- 27,30,31,1037,1091,26,28,874,25,23,
- 50,1176,104,75,76,106,1188,429,1269,1219,
- 1330,1305,1404,450,1373,2690,3121,35,1025,32,
- 1015,1278,27,30,31,1037,1091,26,28,874,
- 25,23,50,1176,104,75,76,106,1188,295,
- 1269,1219,1330,1305,1404,294,2704,1518,35,1025,
- 32,3936,3594,27,30,31,1037,1091,337,28,
- 3121,35,1025,32,1334,1278,27,30,31,1037,
- 1091,26,28,874,25,23,50,1176,104,75,
- 76,106,1188,1700,1269,1219,1330,2643,588,35,
- 1754,386,285,2417,69,1614,2121,2842,1354,2551,
- 1787,2871,1141,3347,330,317,1361,319,1223,1385,
- 312,1317,327,35,451,1559,237,4575,1243,35,
- 394,49,1875,311,1866,3247,1079,158,349,870,
- 67,1668,592,3121,35,1025,32,3945,1278,27,
- 30,31,1037,1091,26,28,874,25,23,50,
- 1176,104,75,76,106,1188,817,1269,1219,1330,
- 2644,2136,666,2147,142,230,1225,3211,350,2699,
- 304,308,779,1400,35,1025,32,3886,3509,27,
- 30,31,1037,1091,337,28,342,1170,919,347,
- 238,228,229,2183,1675,1589,929,35,1754,386,
- 588,1780,2052,34,3477,1354,2717,1965,1829,1141,
- 1141,1988,1888,35,1025,32,3191,3509,27,30,
- 31,1037,1091,337,28,2022,3480,2433,230,49,
- 1614,317,1361,319,158,154,312,1317,350,1668,
- 2872,2129,35,291,198,3605,2433,349,350,3082,
- 1614,1614,625,242,228,229,342,1170,919,347,
- 588,35,2052,2988,340,66,342,1170,919,347,
- 317,1361,319,2215,3073,312,1317,70,2265,1709,
- 1240,2127,444,3444,3461,65,64,350,3157,1898,
- 35,3293,32,3936,3594,27,30,31,1037,1091,
- 337,28,1632,2491,2558,342,1170,919,347,3121,
- 35,1025,32,1675,1278,27,30,31,1037,1091,
- 26,28,874,25,23,50,1176,104,75,76,
- 106,1188,2717,1269,1219,2448,535,388,425,843,
- 35,451,230,2871,4575,1924,330,317,1361,319,
- 1701,785,312,1317,3088,3821,389,425,364,56,
- 2484,154,56,4449,1703,1207,3828,245,228,229,
- 178,2918,486,1374,1515,3121,35,1025,32,3945,
- 1278,27,30,31,1037,1091,26,28,874,25,
- 23,50,1176,104,75,76,106,1188,193,1269,
- 1219,2449,3121,35,1025,32,1883,1278,27,30,
- 31,1037,1091,26,28,874,25,23,50,1176,
- 104,75,76,106,1188,870,1269,1219,2455,3121,
- 35,1025,32,2125,1278,27,30,31,1037,1091,
- 26,28,874,25,23,50,1176,104,75,76,
- 106,1188,69,2229,415,417,3274,4724,1691,35,
- 1025,32,3936,3509,27,30,31,1037,1091,337,
- 28,588,35,291,3121,35,1025,32,1496,1278,
- 27,30,31,1037,1091,26,28,874,25,23,
- 50,1176,104,75,76,106,1188,259,1269,1219,
- 2462,535,1375,2122,2276,2413,2981,3928,3660,448,
- 3444,3461,2306,4782,194,2139,317,1361,319,1983,
- 226,312,1317,2347,3928,2513,154,588,35,1754,
- 386,1096,2149,69,311,178,2918,921,4741,588,
- 35,1754,386,201,213,4692,200,210,211,212,
- 214,1,167,1614,1088,535,2871,56,56,330,
- 432,1141,1141,166,2453,181,165,168,169,170,
- 171,172,431,2871,226,3317,331,1606,2552,69,
- 154,305,308,779,4800,49,154,3567,2699,178,
- 2918,921,2859,358,350,2433,1417,201,213,4692,
- 200,210,211,212,214,1620,167,1761,3010,3027,
- 1780,1817,344,1170,919,347,177,166,179,182,
- 165,168,169,170,171,172,2070,35,1025,32,
- 3886,3509,27,30,31,1037,1091,337,28,230,
- 1614,3231,35,1754,386,2234,2536,1614,2418,2981,
- 1363,35,1025,32,235,3594,27,30,31,1037,
- 1091,337,28,2515,248,228,229,520,2513,2218,
- 1250,427,230,2715,271,55,2891,2981,588,35,
- 1754,386,54,1773,317,1361,319,2305,3928,312,
- 1317,2212,35,1754,386,3388,341,251,228,229,
- 2553,350,524,230,2871,391,425,331,317,1361,
- 319,430,56,313,1317,3081,3728,1790,1213,342,
- 1170,919,347,2271,49,350,2693,525,233,228,
- 229,322,2465,1714,1668,1925,358,2871,2433,272,
- 331,2615,1906,344,1170,919,347,625,2587,2707,
- 2893,3010,3027,588,35,2509,2504,2614,240,243,
- 246,249,853,588,35,2052,274,3066,35,1025,
- 32,1315,1278,27,30,31,1037,1091,26,28,
- 874,25,23,50,1176,85,75,76,2443,2506,
- 2620,2917,2950,4541,3121,35,1025,32,302,1278,
- 27,30,31,1037,1091,26,28,874,25,23,
- 50,1176,104,75,76,106,1188,1614,1269,2547,
- 3121,35,1025,32,2552,1278,27,30,31,1037,
- 1091,26,28,874,25,23,50,1176,104,75,
- 76,106,1188,345,1269,2565,56,535,390,425,
- 1412,1375,320,56,521,2981,3928,1325,1947,35,
- 275,56,196,2621,1614,2981,226,440,2716,454,
- 1607,1607,154,2620,2513,3928,3928,757,35,1754,
- 386,178,2918,921,341,588,35,1754,386,201,
- 213,4692,200,210,211,212,214,431,167,99,
- 2654,535,1243,35,394,2871,2503,2727,330,166,
- 271,3619,165,168,169,170,171,172,271,1614,
- 226,2552,1838,3733,2871,2871,154,330,330,932,
- 35,1754,386,2622,2729,178,2918,921,2129,3404,
- 291,2990,358,201,213,4692,200,210,211,212,
- 214,517,167,2492,3544,535,1761,3010,3027,195,
- 3023,2859,49,166,1351,176,165,168,169,170,
- 171,172,1668,2404,226,3040,1607,2552,2127,1614,
- 154,3928,2272,338,2731,3217,588,35,291,178,
- 2918,921,71,932,35,1754,386,201,213,4692,
- 200,210,211,212,214,603,167,2154,2034,535,
- 3699,4428,2646,3928,2259,300,2981,166,2440,174,
- 165,168,169,170,171,172,49,1785,226,949,
- 2871,2981,2552,3348,154,2513,1668,47,1543,35,
- 2052,274,1924,178,2918,921,1614,3550,2735,3570,
- 341,201,213,4692,200,210,211,212,214,689,
- 167,2448,2871,535,2786,3348,588,3089,2052,73,
- 199,166,863,175,165,168,169,170,171,172,
- 2446,449,226,949,1543,35,2052,3097,154,2068,
- 3642,929,35,1754,386,2732,56,178,2918,921,
- 2981,42,2951,503,2747,201,213,4692,200,210,
- 211,212,214,775,167,527,2234,535,92,341,
- 2981,2739,56,2755,49,166,1359,185,165,168,
- 169,170,171,172,1668,47,226,2751,2790,2513,
- 2791,2503,154,2782,501,502,2789,1364,87,2757,
- 94,178,2918,921,2624,44,2951,1840,2981,201,
- 213,4692,200,210,211,212,214,2761,167,929,
- 35,1754,386,932,35,1754,386,2513,1330,166,
- 2763,3705,165,168,169,170,171,172,1952,35,
- 1025,32,3936,3509,27,30,31,1037,1091,337,
- 28,2765,49,1657,56,56,49,358,4459,535,
- 56,56,1668,2700,3935,4448,1668,47,921,2444,
- 861,3259,3010,3027,535,3225,2769,1614,341,2224,
- 2449,35,278,523,154,56,56,56,56,1839,
- 1402,3823,2981,226,186,359,317,1361,319,154,
- 4590,312,1317,173,929,35,1754,386,178,2918,
- 921,341,376,2792,311,2552,201,213,4692,200,
- 210,211,212,214,1614,167,56,1354,947,2788,
- 1141,1141,535,2503,2793,1761,166,49,190,165,
- 168,169,170,171,172,4044,56,1668,1031,1926,
- 2981,226,2552,197,2773,154,158,154,3614,3399,
- 3225,304,308,779,1330,1752,178,2918,921,341,
- 929,35,1754,386,201,213,4692,200,210,211,
- 212,214,1033,167,3847,1330,535,2798,2481,1354,
- 296,2503,1141,1141,166,3477,184,165,168,169,
- 170,171,172,49,921,226,56,1971,56,2799,
- 2894,154,959,1668,47,2110,1337,154,158,522,
- 178,2918,921,5399,2980,921,2314,160,201,213,
- 4692,200,210,211,212,214,5399,167,2646,5399,
- 374,5399,2981,588,35,2052,276,737,166,5399,
- 192,165,168,169,170,171,172,3121,35,1025,
- 32,2513,1278,27,30,31,1037,1091,26,28,
- 874,25,23,50,1176,104,75,76,106,1188,
- 5399,2235,3121,35,1025,32,2987,1278,27,30,
- 31,1037,1091,26,28,874,25,23,50,1176,
- 104,75,76,106,2423,3121,35,1025,32,2209,
- 1278,27,30,31,1037,1091,26,28,874,25,
- 23,50,1176,104,75,76,106,2440,1562,503,
- 56,56,2981,322,1141,3528,2447,56,1823,5399,
- 2966,2981,2981,5399,56,3575,3193,333,1141,5399,
- 5399,226,588,35,2052,3273,2552,2552,5399,154,
- 341,226,1614,56,56,5399,4307,1141,1141,2713,
- 500,502,5399,154,203,213,4692,202,210,211,
- 212,214,2503,2435,203,213,4692,202,210,211,
- 212,214,154,154,3678,220,1607,3453,1847,5399,
- 380,3928,2570,2590,5399,204,206,208,292,293,
- 3072,3429,215,205,207,204,206,208,292,293,
- 3072,2552,215,205,207,2062,35,3293,32,3936,
- 3509,27,30,31,1037,1091,337,28,588,35,
- 1754,386,2312,5399,4345,1910,1607,5399,5399,2981,
- 2871,3928,2318,330,4345,2156,35,1025,32,191,
- 3594,27,30,31,1037,1091,337,28,226,1614,
- 1614,49,1614,588,35,1754,386,588,35,1754,
- 386,1668,616,317,1361,319,2990,5399,312,1317,
- 5399,203,213,4692,202,210,211,212,214,1778,
- 2871,1207,5399,330,3560,3518,49,3654,5399,2871,
- 49,5399,331,317,1361,319,1668,3198,315,1317,
- 1668,661,204,206,208,292,293,3072,5399,215,
- 205,207,3121,35,1025,32,4525,1278,27,30,
- 31,1037,1091,26,28,874,25,23,50,1176,
- 104,75,76,84,588,35,2052,279,5399,3071,
- 5399,4345,3121,1780,1025,1797,1446,1278,27,30,
- 31,1037,1091,26,28,874,25,23,50,1176,
- 104,75,76,83,1614,5399,5399,5399,5399,5399,
- 416,417,3274,3121,35,1025,32,5399,1278,27,
- 30,31,1037,1091,26,28,874,25,23,50,
- 1176,104,75,76,82,3121,35,1025,32,3911,
- 1278,27,30,31,1037,1091,26,28,874,25,
- 23,50,1176,104,75,76,81,3121,35,1025,
- 32,5399,1278,27,30,31,1037,1091,26,28,
- 874,25,23,50,1176,104,75,76,80,3121,
- 35,1025,32,5399,1278,27,30,31,1037,1091,
- 26,28,874,25,23,50,1176,104,75,76,
- 79,3121,35,1025,32,5399,1278,27,30,31,
- 1037,1091,26,28,874,25,23,50,1176,104,
- 75,76,78,3121,35,1025,32,5399,1278,27,
- 30,31,1037,1091,26,28,874,25,23,50,
- 1176,104,75,76,77,2950,35,1025,32,5399,
- 1278,27,30,31,1037,1091,26,28,874,25,
- 23,50,1176,104,75,76,102,3121,35,1025,
- 32,5399,1278,27,30,31,1037,1091,26,28,
- 874,25,23,50,1176,104,75,76,108,3121,
- 35,1025,32,5399,1278,27,30,31,1037,1091,
- 26,28,874,25,23,50,1176,104,75,76,
- 107,3121,35,1025,32,5399,1278,27,30,31,
- 1037,1091,26,28,874,25,23,50,1176,104,
- 75,76,105,3121,35,1025,32,1614,1278,27,
- 30,31,1037,1091,26,28,874,25,23,50,
- 1176,104,75,76,103,1997,56,5399,56,2981,
- 1141,5399,1141,5399,5399,1649,5399,1354,5399,2981,
- 1354,1141,3672,5399,1141,1736,737,5399,226,2981,
- 5399,5399,5399,5399,5399,154,2775,154,226,5399,
- 2981,5399,5399,5399,5399,2591,158,2050,226,158,
- 5399,203,213,4692,202,210,211,212,214,341,
- 5399,203,213,4692,202,210,211,212,214,5399,
- 5399,203,213,4692,202,210,211,212,214,5399,
- 5399,3826,204,206,208,292,293,3072,2209,518,
- 205,207,204,206,208,292,293,3072,5399,517,
- 205,207,204,206,208,292,293,3072,2084,216,
- 205,207,2981,5399,3204,5399,2122,3386,2171,5399,
- 5399,3660,2981,56,5399,328,333,1141,2647,737,
- 5399,226,2981,5399,5399,5399,5399,5399,5399,737,
- 5399,226,5399,5399,5399,5399,5399,5399,5399,5399,
- 5399,2513,154,5399,203,213,4692,202,210,211,
- 212,214,4074,5399,203,213,4692,202,210,211,
- 212,214,1691,35,1025,32,3936,3509,27,30,
- 31,1037,1091,337,28,204,206,208,292,293,
- 3072,2209,303,205,207,204,206,208,292,293,
- 3072,2209,497,205,207,2156,35,1025,32,5399,
- 3594,27,30,31,1037,1091,337,28,1620,503,
- 5399,3280,35,1754,386,5399,2536,5399,3462,333,
- 317,1361,319,3962,236,312,1317,5399,3576,333,
- 5399,5399,5399,5399,5399,5399,5399,5399,3157,5399,
- 5399,5399,5399,5399,271,929,35,1754,386,2871,
- 500,502,331,317,1361,319,5399,5399,313,1317,
- 1691,35,1025,32,3936,3509,27,30,31,1037,
- 1091,337,28,230,428,5399,5399,5399,49,1180,
- 5399,5399,5399,2981,4822,5399,5399,5399,1668,47,
- 5399,3559,5399,5399,5399,5399,5399,5399,234,228,
- 229,2320,226,5399,5399,5399,5399,5399,5399,272,
- 5399,5399,5399,5399,5399,5399,5399,5399,317,1361,
- 319,5399,5399,312,1317,1089,405,4672,241,244,
- 247,250,853,5399,5399,5399,3677,5399,5399,5399,
- 5399,1315,1490,35,1025,32,2629,3509,27,30,
- 31,1037,1091,337,28,5399,406,407,408,292,
- 293,3072,2236,35,1025,32,2387,3509,27,30,
- 31,1037,1091,337,28,929,35,1754,386,5399,
- 401,3063,1285,5399,5399,5399,2981,4822,5399,5399,
- 2151,35,1754,386,929,35,1754,386,5399,5399,
- 314,3213,319,5399,5399,226,5399,5399,49,5399,
- 5399,929,35,1754,386,5399,5399,5399,1668,47,
- 314,3213,319,49,5399,5399,5399,49,1089,405,
- 4672,2867,5399,1668,47,5399,5399,1668,47,5399,
- 5399,5399,409,411,49,56,2811,5399,5399,2981,
- 2879,5399,2722,5399,1668,47,535,5399,5399,406,
- 407,408,292,293,3072,5399,1737,3018,341,4712,
- 2164,35,1754,386,5399,341,56,5399,56,56,
- 535,154,535,2981,3063,588,35,1754,386,5399,
- 2503,186,588,35,1754,386,5399,4590,5399,341,
- 2177,341,341,49,2208,154,507,154,2981,5399,
- 5399,5399,5399,1668,47,1417,5399,186,49,5399,
- 2177,2503,5399,4590,2503,49,3326,341,1668,883,
- 56,5399,5399,5399,535,1668,2436,1407,56,528,
- 505,5399,2981,5399,5399,409,412,5399,5399,2503,
- 5399,5399,5399,341,5399,188,5399,5399,5399,154,
- 5399,341,5399,5399,5399,531,5399,5399,5399,186,
- 5399,5399,5399,5399,5399,4590,5399,5399,5399,5399,
- 5399,3852,5399,2503,5399,5399,5399,5399,5399,5399,
- 5399,5399,5399,5399,5399,5399,5399,5399,5399,532,
- 5399,5399,5399,5399,5399,5399,5399,5399,5399,5399,
- 5399,5399,5399,5399,5399,5399,5399,5399,5399,5399,
- 5399,5399,5399,5399,5399,5399,5399,5399,5399,5399,
- 5399,5399,3846,3959,5399,5399,5399,5399,5399,5399,
- 5399,5399,5399,5399,5399,5399,5399,5399,5399,5399,
- 5399,5399,5399,5399,5399,5399,5399,5399,5399,5399,
- 5399,5399,5399,5399,5399,5399,5399,5399,5399,5399,
- 5399,5399,5399,5399,5399,5399,5399,5399,5399,5399,
- 5399,5399,5399,5399,5399,5399,5399,5399,5399,5399,
- 5399,5399,5399,5399,5399,5399,5399,5399,5399,5399,
- 5399,5399,3420,5399,0,39,5414,0,39,5413,
- 0,727,29,0,438,864,0,452,1251,0,
- 38,2540,0,38,5414,0,38,5413,0,2742,
- 124,0,1,442,0,456,1580,0,455,1666,
- 0,794,89,0,727,385,0,35,33,0,
- 32,34,0,39,2540,0,1,659,0,1,
- 5669,0,1,5668,0,1,5667,0,1,5666,
- 0,1,5665,0,1,5664,0,1,5663,0,
- 1,5662,0,1,5661,0,1,5660,0,1,
- 5659,0,39,1,5414,0,39,1,5413,0,
- 806,1,0,281,392,0,281,284,0,5631,
- 239,0,5630,239,0,5735,239,0,5734,239,
- 0,5658,239,0,5657,239,0,5656,239,0,
- 5655,239,0,5654,239,0,5653,239,0,5652,
- 239,0,5651,239,0,5669,239,0,5668,239,
- 0,5667,239,0,5666,239,0,5665,239,0,
- 5664,239,0,5663,239,0,5662,239,0,5661,
- 239,0,5660,239,0,5659,239,0,39,5414,
- 239,0,39,5413,239,0,5437,239,0,5414,
- 48,0,5413,48,0,5405,1,0,5404,1,
- 0,2438,235,0,32,386,0,29,385,0,
- 43,5435,0,43,37,0,2742,126,0,2742,
- 125,0,329,443,0,5437,1,0,39,1,
- 0,47,37,0,1,90,0,499,3066,0,
- 5437,1,227,0,39,1,227,0,227,414,
- 0,5414,37,0,5413,37,0,5414,2,37,
- 0,5413,2,37,0,5414,36,0,5413,36,
- 0,5435,45,0,37,45,0,5409,403,0,
- 5408,403,0,1,4492,0,1,3013,0,1,
- 2540,0,227,413,0,2303,316,0,329,93,
- 0,35,72,0,1,329,0,3617,276,0,
- 499,4335,0,1,227,0,227,218,0,227,
- 217,0,1,573,0,1,2458,0,5411,1,
- 0,5407,1,0,1,227,3486,0,5408,227,
- 0,3488,227,0,5411,381,0,5410,381,0,
- 3593,227,0,10,12,0,8,10,12,0,
- 183,3618,0,3706,381,0,8,12,0
+ 126,198,198,174,174,1119,35,2064,2052,1278,
+ 3210,27,30,31,946,1025,26,28,1971,25,
+ 23,50,1081,104,75,76,106,1127,1982,1219,
+ 1188,1361,1269,1402,71,1373,1565,1522,271,1582,
+ 142,1651,141,1243,35,394,156,142,1217,35,
+ 874,32,236,3320,27,30,31,946,1025,57,
+ 28,1267,1279,3121,35,874,32,230,1278,27,
+ 30,31,946,1025,26,28,810,25,23,50,
+ 1081,104,75,76,106,1127,2023,1219,1188,1361,
+ 1269,2404,233,228,229,588,35,1711,386,3121,
+ 35,874,32,272,1278,27,30,31,946,1025,
+ 26,28,810,25,23,50,1081,104,75,76,
+ 106,2147,240,243,246,249,853,2440,271,69,
+ 2580,2079,35,275,2428,817,1860,35,874,32,
+ 2551,3320,27,30,31,946,1025,56,28,1657,
+ 558,3574,2998,2770,2982,3131,3206,4645,2316,35,
+ 874,32,2974,1278,27,30,31,946,1025,26,
+ 28,810,25,23,50,1081,104,75,76,106,
+ 1127,341,1219,1188,1361,1269,1402,61,1373,1565,
+ 1522,737,1582,273,1651,141,3490,56,1179,515,
+ 142,688,2168,2538,2344,35,874,32,1534,4900,
+ 27,30,31,946,1025,26,28,135,509,516,
+ 2316,35,874,32,2974,1278,27,30,31,946,
+ 1025,26,28,810,25,23,50,1081,104,75,
+ 76,106,1127,341,1219,1188,1361,1269,1402,1700,
+ 1373,1565,1522,3584,1582,1010,1651,141,327,35,
+ 277,515,142,4103,2728,2538,2932,1179,2493,2121,
+ 511,86,1643,3237,100,60,1500,35,874,32,
+ 1016,516,41,30,31,946,1025,1330,1773,2672,
+ 326,333,2681,3875,2316,35,874,32,2974,1278,
+ 27,30,31,946,1025,26,28,810,25,23,
+ 50,1081,104,75,76,106,1127,341,1219,1188,
+ 1361,1269,1402,1229,1373,1565,1522,1257,1582,56,
+ 1651,141,511,750,870,515,142,2689,496,2538,
+ 2407,35,874,32,2681,331,40,30,31,946,
+ 1025,2688,588,3483,2681,516,2524,35,874,32,
+ 2974,1278,27,30,31,946,1025,26,28,810,
+ 25,23,50,1081,104,75,76,106,1127,341,
+ 1219,1188,1361,1269,1402,56,1373,1565,1522,824,
+ 1582,1017,1651,141,285,56,1599,515,142,1141,
+ 2751,2538,1715,35,874,32,511,4900,27,30,
+ 31,946,1025,59,28,135,2682,516,1010,588,
+ 35,1711,386,3035,1675,2725,1823,3238,2681,2659,
+ 35,874,32,445,1278,27,30,31,946,1025,
+ 26,28,810,25,23,50,1081,104,75,76,
+ 106,1127,49,1219,1188,1361,1269,1402,135,1373,
+ 1565,1522,46,1582,327,1651,141,2049,512,3588,
+ 377,142,2385,35,874,32,1045,1278,27,30,
+ 31,946,1025,26,28,810,25,23,50,1081,
+ 104,75,76,106,1127,2683,1219,1188,1361,1269,
+ 1402,458,1373,1565,1522,402,1582,1614,1651,141,
+ 1614,2013,3588,377,142,69,3121,35,874,32,
+ 3378,1278,27,30,31,946,1025,26,28,810,
+ 25,23,50,1081,104,75,76,106,1127,2468,
+ 1219,1188,1361,1269,1402,495,1373,1565,1522,69,
+ 1582,2245,2750,162,3512,1868,2249,383,2055,3427,
+ 1141,1721,2591,35,874,32,3194,1278,27,30,
+ 31,946,1025,26,28,810,25,23,50,1081,
+ 104,75,76,106,1127,154,1219,1188,1361,1269,
+ 1402,441,1373,1565,1522,533,1582,413,1651,141,
+ 384,2055,3588,377,142,56,2129,1752,2050,1141,
+ 322,2887,35,874,32,3375,1278,27,30,31,
+ 946,1025,26,28,810,25,23,50,1081,104,
+ 75,76,106,1127,154,1219,1188,1361,1269,1402,
+ 1873,1373,1565,1522,1503,1582,1571,1651,141,588,
+ 35,2771,156,142,3121,35,874,32,1445,1278,
+ 27,30,31,946,1025,26,28,810,25,23,
+ 50,1081,104,75,76,106,1127,387,1219,1188,
+ 1361,1269,1402,1604,1373,1565,1522,354,2617,64,
+ 375,2055,2887,35,874,32,529,1278,27,30,
+ 31,946,1025,26,28,810,25,23,50,1081,
+ 104,75,76,106,1127,351,1219,1188,1361,1269,
+ 1402,400,1373,1565,1522,1699,1582,56,1651,141,
+ 539,2503,91,371,142,1715,35,874,32,2284,
+ 4900,27,30,31,946,1025,58,28,1976,35,
+ 1711,386,2887,35,874,32,558,1278,27,30,
+ 31,946,1025,26,28,810,25,23,50,1081,
+ 104,75,76,106,1127,2750,1219,1188,1361,1269,
+ 1402,49,1373,1565,1522,1010,1582,2556,1651,141,
+ 2728,1709,799,371,142,1721,2887,35,874,32,
+ 352,1278,27,30,31,946,1025,26,28,810,
+ 25,23,50,1081,104,75,76,106,1127,370,
+ 1219,1188,1361,1269,1402,135,1373,1565,1522,1721,
+ 1582,587,1651,141,588,35,280,371,142,2457,
+ 35,874,32,494,1278,27,30,31,946,1025,
+ 26,28,810,25,23,50,1081,104,75,76,
+ 106,1127,322,1219,1188,1361,1269,1402,457,1373,
+ 1565,1522,1355,1582,2456,1651,141,1614,2154,369,
+ 140,142,4496,2887,35,874,32,1614,1278,27,
+ 30,31,946,1025,26,28,810,25,23,50,
+ 1081,104,75,76,106,1127,2580,1219,1188,1361,
+ 1269,1402,4349,1373,1565,1522,159,1582,3258,1651,
+ 141,353,24,367,157,142,2887,35,874,32,
+ 529,1278,27,30,31,946,1025,26,28,810,
+ 25,23,50,1081,104,75,76,106,1127,3830,
+ 1219,1188,1361,1269,1402,321,1373,1565,1522,445,
+ 1582,56,1651,141,529,2657,419,153,142,2887,
+ 35,874,32,1614,1278,27,30,31,946,1025,
+ 26,28,810,25,23,50,1081,104,75,76,
+ 106,1127,400,1219,1188,1361,1269,1402,56,1373,
+ 1565,1522,2319,1582,69,1651,141,1010,68,3614,
+ 152,142,2887,35,874,32,1614,1278,27,30,
+ 31,946,1025,26,28,810,25,23,50,1081,
+ 104,75,76,106,1127,1226,1219,1188,1361,1269,
+ 1402,56,1373,1565,1522,802,1582,87,1651,141,
+ 100,53,1146,151,142,2887,35,874,32,1614,
+ 1278,27,30,31,946,1025,26,28,810,25,
+ 23,50,1081,104,75,76,106,1127,379,1219,
+ 1188,1361,1269,1402,56,1373,1565,1522,721,1582,
+ 4371,1651,141,1010,52,2552,150,142,2887,35,
+ 874,32,1614,1278,27,30,31,946,1025,26,
+ 28,810,25,23,50,1081,104,75,76,106,
+ 1127,1617,1219,1188,1361,1269,1402,56,1373,1565,
+ 1522,2744,1582,404,1651,141,1010,348,1625,149,
+ 142,2887,35,874,32,1614,1278,27,30,31,
+ 946,1025,26,28,810,25,23,50,1081,104,
+ 75,76,106,1127,1627,1219,1188,1361,1269,1402,
+ 56,1373,1565,1522,2862,1582,51,1651,141,1174,
+ 88,2690,148,142,2887,35,874,32,1614,1278,
+ 27,30,31,946,1025,26,28,810,25,23,
+ 50,1081,104,75,76,106,1127,1323,1219,1188,
+ 1361,1269,1402,56,1373,1565,1522,2927,1582,324,
+ 1651,141,1330,1786,2380,147,142,2887,35,874,
+ 32,1614,1278,27,30,31,946,1025,26,28,
+ 810,25,23,50,1081,104,75,76,106,1127,
+ 1441,1219,1188,1361,1269,1402,56,1373,1565,1522,
+ 3251,1582,1743,1651,141,1330,1872,160,146,142,
+ 2887,35,874,32,666,1278,27,30,31,946,
+ 1025,26,28,810,25,23,50,1081,104,75,
+ 76,106,1127,322,1219,1188,1361,1269,1402,323,
+ 1373,1565,1522,676,1582,2675,1651,141,1010,1088,
+ 848,145,142,2887,35,874,32,1614,1278,27,
+ 30,31,946,1025,26,28,810,25,23,50,
+ 1081,104,75,76,106,1127,322,1219,1188,1361,
+ 1269,1402,56,1373,1565,1522,2534,1582,2627,1651,
+ 141,666,67,4805,144,142,2887,35,874,32,
+ 282,1278,27,30,31,946,1025,26,28,810,
+ 25,23,50,1081,104,75,76,106,1127,314,
+ 1219,1188,1361,1269,1402,1167,1373,1565,1522,69,
+ 1582,95,1651,141,2691,1818,2552,143,142,2832,
+ 35,874,32,283,1278,27,30,31,946,1025,
+ 26,28,810,25,23,50,1081,104,75,76,
+ 106,1127,520,1219,1188,1361,1269,1402,56,1373,
+ 1565,1522,3849,1582,297,2750,162,2887,35,874,
+ 32,1503,1278,27,30,31,946,1025,26,28,
+ 810,25,23,50,1081,104,75,76,106,1127,
+ 870,1219,1188,1361,1269,1402,70,1373,1565,1522,
+ 2924,1582,2552,1651,141,327,35,277,138,142,
+ 4522,436,325,1243,35,2868,670,3005,35,874,
+ 32,1666,1278,27,30,31,946,1025,26,28,
+ 810,25,23,50,1081,104,75,76,106,1127,
+ 219,1219,1188,1361,1269,1402,49,1373,1565,1522,
+ 1010,1582,3321,1651,141,1330,1709,2565,187,142,
+ 3121,35,874,32,1453,1278,27,30,31,946,
+ 1025,26,28,810,25,23,50,1081,104,75,
+ 76,106,1127,408,1219,1188,1361,1269,1402,1390,
+ 1373,1565,1522,794,1582,3704,2750,162,3121,35,
+ 874,32,3192,1278,27,30,31,946,1025,26,
+ 28,810,25,23,50,1081,104,75,76,106,
+ 1127,570,1219,1188,1361,1269,1402,56,1373,1565,
+ 1522,2978,1582,96,2750,162,2407,35,874,32,
+ 580,2050,1625,30,31,946,1025,1015,3121,35,
+ 874,32,421,1278,27,30,31,946,1025,26,
+ 28,810,25,23,50,1081,104,75,76,106,
+ 1127,1700,1219,1188,1361,1269,1402,56,1373,1565,
+ 1522,3553,1582,2552,2750,162,3121,35,874,32,
+ 290,1278,27,30,31,946,1025,26,28,810,
+ 25,23,50,1081,104,75,76,106,1127,142,
+ 1219,1188,1361,1269,1402,56,1373,1565,1522,2669,
+ 1582,301,2750,162,2407,35,874,32,588,3662,
+ 1926,30,31,946,1025,1787,3176,35,874,32,
+ 420,1278,27,30,31,946,1025,26,28,810,
+ 25,23,50,1081,104,75,76,106,1127,1223,
+ 1219,1188,1361,1269,1402,56,1373,1565,1522,3976,
+ 1582,2244,2750,162,3121,35,874,32,423,1278,
+ 27,30,31,946,1025,26,28,810,25,23,
+ 50,1081,104,75,76,106,1127,1534,1219,1188,
+ 1361,1269,1402,1385,1373,1565,2537,588,1737,1924,
+ 34,588,3237,1559,588,35,1711,386,2127,1988,
+ 588,35,1711,386,3121,35,874,32,3649,1278,
+ 27,30,31,946,1025,26,28,810,25,23,
+ 50,1081,104,75,76,106,1127,429,1219,1188,
+ 1361,1269,1402,450,1373,2449,3121,35,874,32,
+ 1875,1278,27,30,31,946,1025,26,28,810,
+ 25,23,50,1081,104,75,76,106,1127,1965,
+ 1219,1188,1361,1269,1402,2022,2496,1518,35,874,
+ 32,3648,3959,27,30,31,946,1025,337,28,
+ 3121,35,874,32,1709,1278,27,30,31,946,
+ 1025,26,28,810,25,23,50,1081,104,75,
+ 76,106,1127,1614,1219,1188,1361,2432,588,35,
+ 1711,386,2491,286,2417,1354,2689,241,3184,1141,
+ 588,35,1924,2769,330,317,1754,319,2558,1701,
+ 312,1317,327,35,451,310,56,4771,66,660,
+ 3979,49,3073,311,158,843,35,451,159,349,
+ 4771,1709,592,3121,35,874,32,4613,1278,27,
+ 30,31,946,1025,26,28,810,25,23,50,
+ 1081,104,75,76,106,1127,1703,1219,1188,1361,
+ 2448,1614,2717,1180,1614,1334,1141,2974,4904,350,
+ 304,308,2271,1400,35,874,32,3388,3516,27,
+ 30,31,946,1025,337,28,226,342,1255,1170,
+ 347,154,1546,2002,1988,1632,65,486,2147,64,
+ 198,3599,3259,1374,3567,757,35,1711,386,997,
+ 405,4710,1888,35,874,32,4704,3516,27,30,
+ 31,946,1025,337,28,588,35,2640,2209,1983,
+ 870,317,1754,319,3875,838,312,1317,271,2827,
+ 406,407,408,292,293,3020,1614,349,350,3067,
+ 1079,322,1898,35,3332,32,3648,3959,27,30,
+ 31,946,1025,337,28,2971,342,1255,1170,347,
+ 317,1754,319,350,3030,312,1317,1515,2689,1883,
+ 1136,2265,444,3475,3520,56,331,350,2996,1141,
+ 378,342,1255,1170,347,448,3475,3520,2125,340,
+ 2699,2689,180,2914,350,342,1255,1170,347,330,
+ 317,1754,319,1632,3699,312,1317,2234,295,2276,
+ 71,2974,344,1255,1170,347,409,411,1305,2234,
+ 2413,2122,2306,2974,1436,56,4756,3073,69,3859,
+ 2513,2139,4613,4819,588,35,1711,386,2347,1096,
+ 1140,2149,2513,2838,3121,35,874,32,364,1278,
+ 27,30,31,946,1025,26,28,810,25,23,
+ 50,1081,104,75,76,106,1127,432,1219,1188,
+ 2259,3121,35,874,32,2453,1278,27,30,31,
+ 946,1025,26,28,810,25,23,50,1081,104,
+ 75,76,106,1127,2433,1219,1188,2303,358,2177,
+ 49,1607,588,35,1924,274,3875,415,417,3318,
+ 358,1817,2586,2902,2913,1543,35,1924,274,2418,
+ 1225,2515,2121,1878,3150,2902,2913,3121,35,874,
+ 32,1213,1278,27,30,31,946,1025,26,28,
+ 810,25,23,50,1081,104,75,76,106,1127,
+ 2689,1219,1188,2313,3121,35,874,32,330,1278,
+ 27,30,31,946,1025,26,28,810,25,23,
+ 50,1081,104,75,76,106,1127,259,1219,1188,
+ 2360,535,230,588,3074,1924,73,2136,1285,427,
+ 2484,818,2974,4904,1947,35,275,56,2646,56,
+ 226,2974,2974,2974,388,425,154,242,228,229,
+ 56,226,2433,3389,3547,178,3309,2575,2218,1614,
+ 341,2513,341,201,213,4776,2371,200,210,211,
+ 212,214,167,1,997,405,4710,535,1543,35,
+ 1924,3098,2538,166,2538,181,165,168,169,170,
+ 171,172,1250,2715,55,870,226,2974,1797,3406,
+ 1833,1614,154,2305,2553,406,407,408,292,293,
+ 3020,178,3309,2575,1964,2932,341,1643,3237,201,
+ 213,4776,1790,200,210,211,212,214,167,503,
+ 2971,870,69,2449,35,278,54,4823,926,166,
+ 179,182,165,168,169,170,171,172,2070,35,
+ 874,32,3388,3516,27,30,31,946,1025,337,
+ 28,2271,389,425,3231,35,1711,386,2433,3012,
+ 501,502,1240,1363,35,874,32,235,3959,27,
+ 30,31,946,1025,337,28,1614,322,3347,1354,
+ 2717,409,412,1141,535,56,2883,271,3563,1320,
+ 1330,237,929,35,1711,386,317,1754,319,2693,
+ 2465,312,1317,3709,588,35,1711,386,158,154,
+ 1714,320,2689,350,524,1330,230,521,178,3309,
+ 331,317,1754,319,230,49,313,1317,1614,285,
+ 2575,342,1255,1170,347,1709,2691,431,350,525,
+ 230,233,228,229,294,3681,193,1906,625,245,
+ 228,229,272,2587,2707,2575,344,1255,1170,347,
+ 56,1866,3238,99,1091,238,228,229,391,425,
+ 374,240,243,246,249,853,1589,440,2614,454,
+ 3066,35,874,32,817,1278,27,30,31,946,
+ 1025,26,28,810,25,23,50,1081,85,75,
+ 76,2998,2770,2982,3131,3206,4645,3121,35,874,
+ 32,1606,1278,27,30,31,946,1025,26,28,
+ 810,25,23,50,1081,104,75,76,106,1127,
+ 1614,1219,2379,3121,35,874,32,2621,1278,27,
+ 30,31,946,1025,26,28,810,25,23,50,
+ 1081,104,75,76,106,1127,345,1219,2385,56,
+ 535,3420,194,1325,1375,3256,2624,1351,2974,3875,
+ 2974,2716,69,230,1785,372,2481,4839,2974,226,
+ 1141,588,35,1711,386,154,1780,2513,2440,2513,
+ 2212,35,1711,386,178,3309,2575,341,248,228,
+ 229,2620,201,213,4776,154,200,210,211,212,
+ 214,167,431,2689,271,160,535,2654,2727,1085,
+ 322,330,166,49,3652,165,168,169,170,171,
+ 172,737,949,1709,1925,226,56,1330,56,1607,
+ 3987,154,3966,56,3875,56,625,3851,230,1839,
+ 178,3309,2575,949,2569,358,69,359,201,213,
+ 4776,4843,200,210,211,212,214,167,517,1718,
+ 2902,2913,535,251,228,229,2622,2575,166,338,
+ 176,165,168,169,170,171,172,302,2689,2552,
+ 56,226,523,3584,2974,56,330,154,2729,1359,
+ 932,35,1711,386,42,2761,178,3309,2575,2129,
+ 35,291,2492,341,201,213,4776,1614,200,210,
+ 211,212,214,167,603,44,2761,177,535,2569,
+ 3080,333,322,49,166,2538,174,165,168,169,
+ 170,171,172,1709,2505,2552,2272,226,2615,1958,
+ 1528,1840,2183,154,4108,1778,2545,2731,932,35,
+ 1711,386,178,3309,2575,2129,3435,291,1607,2735,
+ 201,213,4776,3875,200,210,211,212,214,167,
+ 689,1354,2448,196,535,1141,588,35,1924,276,
+ 166,49,175,165,168,169,170,171,172,380,
+ 2722,1709,47,226,535,1958,2552,1607,1614,154,
+ 158,2034,3875,1795,2943,2786,3875,2689,178,3309,
+ 2575,2068,1446,341,2732,330,201,213,4776,154,
+ 200,210,211,212,214,167,775,1354,56,186,
+ 535,1141,1141,449,195,4691,166,2552,185,165,
+ 168,169,170,171,172,2747,2689,2122,2983,226,
+ 2689,521,4756,2552,3431,154,158,154,3431,1795,
+ 588,35,1924,3296,178,3309,2575,1417,2869,588,
+ 35,291,201,213,4776,300,200,210,211,212,
+ 214,167,929,35,1711,386,929,35,1711,386,
+ 2739,199,166,188,3735,165,168,169,170,171,
+ 172,1952,35,874,32,3648,3516,27,30,31,
+ 946,1025,337,28,2755,49,56,2646,2775,49,
+ 1141,2974,2974,2433,2911,1709,47,56,861,1709,
+ 2840,2974,535,588,35,1924,279,2751,1364,92,
+ 2513,341,3201,94,2790,154,2791,2782,56,1878,
+ 341,226,2974,2789,737,1623,87,154,56,317,
+ 1754,319,3352,3711,312,1317,178,3309,2575,2552,
+ 3883,341,2538,3467,201,213,4776,311,200,210,
+ 211,212,214,167,932,35,1711,386,1915,2757,
+ 2761,947,2763,2538,166,535,190,165,168,169,
+ 170,171,172,588,35,1711,386,197,503,1761,
+ 2765,2444,2769,173,226,428,3584,49,1607,2792,
+ 154,2446,2788,3875,304,308,2271,1709,47,178,
+ 3309,2575,2793,390,425,2552,430,201,213,4776,
+ 2224,200,210,211,212,214,167,4057,1033,500,
+ 502,56,535,332,333,3977,527,166,3567,184,
+ 165,168,169,170,171,172,56,2689,56,1614,
+ 2974,226,535,296,56,330,1761,154,959,56,
+ 1354,2447,2773,3531,1141,2958,178,3309,2575,341,
+ 3441,341,2798,2799,201,213,4776,154,200,210,
+ 211,212,214,167,376,2110,1337,186,4626,158,
+ 5450,2538,5450,4691,166,4042,192,165,168,169,
+ 170,171,172,3121,35,874,32,507,1278,27,
+ 30,31,946,1025,26,28,810,25,23,50,
+ 1081,104,75,76,106,1127,5450,2083,3121,35,
+ 874,32,5450,1278,27,30,31,946,1025,26,
+ 28,810,25,23,50,1081,104,75,76,106,
+ 1127,3858,2140,3121,35,874,32,3048,1278,27,
+ 30,31,946,1025,26,28,810,25,23,50,
+ 1081,104,75,76,106,2171,3121,35,874,32,
+ 1330,1278,27,30,31,946,1025,26,28,810,
+ 25,23,50,1081,104,75,76,106,2235,1562,
+ 56,2647,56,2974,1141,2974,1141,5450,1614,1823,
+ 588,35,291,2974,5450,56,1243,35,394,1141,
+ 2575,5450,226,5450,2513,588,35,1711,386,154,
+ 5450,154,226,2552,5450,374,56,1614,1354,2543,
+ 1141,1847,1141,3400,154,203,213,4776,5450,202,
+ 210,211,212,214,2423,203,213,4776,49,202,
+ 210,211,212,214,5450,154,5450,158,1709,747,
+ 5450,3196,3456,5450,5450,2501,204,206,208,292,
+ 293,3020,1614,215,205,207,204,206,208,292,
+ 293,3020,503,215,205,207,2062,35,3332,32,
+ 3648,3516,27,30,31,946,1025,337,28,929,
+ 35,1711,386,2591,3665,4413,1910,3558,56,5450,
+ 2974,5450,1141,2997,3576,4413,737,1088,56,737,
+ 5450,5450,2974,500,502,3428,1614,737,5450,226,
+ 3265,5450,49,5450,1243,35,394,154,5450,5450,
+ 5450,341,1709,2876,317,1754,319,2504,5450,312,
+ 1317,5450,203,213,4776,3201,202,210,211,212,
+ 214,3257,1305,2538,3641,1691,35,874,32,3648,
+ 3516,27,30,31,946,1025,337,28,3584,505,
+ 5450,3584,1614,204,206,208,292,293,3020,3584,
+ 215,205,207,3121,35,874,32,2552,1278,27,
+ 30,31,946,1025,26,28,810,25,23,50,
+ 1081,104,75,76,84,3179,333,4100,328,333,
+ 3240,5450,4413,317,1754,319,3315,333,312,1317,
+ 520,5450,5450,5450,5450,220,5450,5450,5450,2552,
+ 1330,311,3723,588,35,1711,386,1614,1614,5450,
+ 5450,416,417,3318,3121,1737,874,1780,5450,1278,
+ 27,30,31,946,1025,26,28,810,25,23,
+ 50,1081,104,75,76,83,49,191,3368,5450,
+ 2575,5450,4099,3678,5450,5450,1709,2844,305,308,
+ 2271,3121,35,874,32,522,1278,27,30,31,
+ 946,1025,26,28,810,25,23,50,1081,104,
+ 75,76,82,3121,35,874,32,5450,1278,27,
+ 30,31,946,1025,26,28,810,25,23,50,
+ 1081,104,75,76,81,3121,35,874,32,5450,
+ 1278,27,30,31,946,1025,26,28,810,25,
+ 23,50,1081,104,75,76,80,3121,35,874,
+ 32,5450,1278,27,30,31,946,1025,26,28,
+ 810,25,23,50,1081,104,75,76,79,3121,
+ 35,874,32,5450,1278,27,30,31,946,1025,
+ 26,28,810,25,23,50,1081,104,75,76,
+ 78,3121,35,874,32,5450,1278,27,30,31,
+ 946,1025,26,28,810,25,23,50,1081,104,
+ 75,76,77,2950,35,874,32,5450,1278,27,
+ 30,31,946,1025,26,28,810,25,23,50,
+ 1081,104,75,76,102,3121,35,874,32,5450,
+ 1278,27,30,31,946,1025,26,28,810,25,
+ 23,50,1081,104,75,76,108,3121,35,874,
+ 32,5450,1278,27,30,31,946,1025,26,28,
+ 810,25,23,50,1081,104,75,76,107,3121,
+ 35,874,32,5450,1278,27,30,31,946,1025,
+ 26,28,810,25,23,50,1081,104,75,76,
+ 105,3121,35,874,32,5450,1278,27,30,31,
+ 946,1025,26,28,810,25,23,50,1081,104,
+ 75,76,103,1997,56,56,5450,2974,1141,1141,
+ 5450,5450,5450,1649,5450,5450,5450,2974,5450,5450,
+ 5450,5450,5450,1736,5450,5450,226,2974,5450,5450,
+ 5450,5450,5450,154,154,5450,226,5450,5450,5450,
+ 5450,5450,5450,1838,4107,5450,226,5450,5450,203,
+ 213,4776,5450,202,210,211,212,214,5450,203,
+ 213,4776,5450,202,210,211,212,214,5450,203,
+ 213,4776,5450,202,210,211,212,214,5450,5450,
+ 204,206,208,292,293,3020,5450,518,205,207,
+ 204,206,208,292,293,3020,5450,517,205,207,
+ 204,206,208,292,293,3020,2084,216,205,207,
+ 2974,5450,5450,5450,5450,5450,2171,5450,5450,5450,
+ 2974,5450,5450,5450,5450,5450,5450,5450,5450,226,
+ 5450,5450,588,35,1711,386,5450,5450,5450,226,
+ 5450,5450,5450,5450,5450,5450,5450,5450,5450,5450,
+ 5450,5450,203,213,4776,5450,202,210,211,212,
+ 214,5450,203,213,4776,49,202,210,211,212,
+ 214,5450,5450,5450,5450,1709,661,5450,5450,5450,
+ 5450,5450,5450,204,206,208,292,293,3020,5450,
+ 303,205,207,204,206,208,292,293,3020,5450,
+ 497,205,207,1691,35,874,32,3648,3516,27,
+ 30,31,946,1025,337,28,5450,5450,5450,5450,
+ 5450,5450,5450,2156,35,874,32,5450,3959,27,
+ 30,31,946,1025,337,28,2156,35,874,32,
+ 5450,3959,27,30,31,946,1025,337,28,5450,
+ 5450,5450,5450,5450,5450,3280,35,1711,386,5450,
+ 3012,317,1754,319,5450,5450,312,1317,236,5450,
+ 5450,5450,2689,5450,5450,5450,5450,5450,5450,2996,
+ 331,317,1754,319,5450,2689,315,1317,271,5450,
+ 5450,5450,5450,331,317,1754,319,5450,5450,313,
+ 1317,1691,35,874,32,3648,3516,27,30,31,
+ 946,1025,337,28,1375,5450,5450,230,2974,3875,
+ 1490,35,874,32,2592,3516,27,30,31,946,
+ 1025,337,28,5450,5450,5450,5450,2513,5450,5450,
+ 5450,5450,234,228,229,5450,5450,5450,5450,5450,
+ 5450,5450,5450,272,5450,5450,5450,5450,401,317,
+ 1754,319,5450,2689,312,1317,929,35,1711,386,
+ 5450,330,241,244,247,250,853,3722,314,3221,
+ 319,929,35,1711,386,817,2236,35,874,32,
+ 2387,3516,27,30,31,946,1025,337,28,49,
+ 5450,5450,5450,5450,2983,358,5450,5450,5450,1709,
+ 47,5450,5450,5450,49,929,35,1711,386,1718,
+ 2902,2913,2314,5450,1709,47,5450,5450,5450,2151,
+ 35,1711,386,929,35,1711,386,2320,5450,5450,
+ 5450,5450,5450,5450,314,3221,319,5450,49,929,
+ 35,1711,386,2164,35,1711,386,5450,1709,47,
+ 5450,56,49,5450,5450,535,49,5450,5450,5450,
+ 5450,2684,1709,47,5450,56,1709,47,2089,2974,
+ 5450,5450,49,5450,341,3499,49,5450,5450,3024,
+ 154,5450,1709,47,5450,2208,1709,47,341,2974,
+ 1417,5450,5450,56,5450,3633,2538,535,5450,3860,
+ 588,35,1711,386,588,35,1711,386,341,5450,
+ 2538,5450,1407,56,5450,5450,341,535,5450,5450,
+ 528,5450,154,5450,5450,5450,532,5450,5450,5450,
+ 2538,5450,186,49,2089,5450,341,49,4691,5450,
+ 5450,5450,154,1709,799,5450,531,1709,2772,5450,
+ 5450,5450,186,5450,5450,5450,5450,5450,4691,5450,
+ 5450,5450,5450,5450,5450,5450,5450,5450,5450,5450,
+ 5450,5450,5450,5450,5450,5450,5450,5450,5450,5450,
+ 5450,5450,5450,5450,5450,5450,5450,5450,5450,5450,
+ 5450,5450,5450,5450,5450,5450,3887,5450,5450,5450,
+ 5450,5450,5450,5450,5450,5450,5450,5450,5450,5450,
+ 5450,5450,5450,5450,5450,5450,3932,5450,5450,5450,
+ 5450,5450,5450,5450,5450,5450,5450,5450,5450,5450,
+ 5450,5450,5450,5450,5450,5450,5450,5450,5450,5450,
+ 5450,5450,5450,5450,5450,5450,5450,5450,5450,5450,
+ 5450,5450,5450,5450,5450,5450,5450,5450,5450,5450,
+ 5450,5450,5450,5450,5450,5450,5450,5450,5450,5450,
+ 5450,5450,5450,5450,5450,5450,5450,5450,5450,5450,
+ 5450,5450,5450,3651,5450,0,39,5465,0,39,
+ 5464,0,727,29,0,438,859,0,452,915,
+ 0,38,2307,0,38,5465,0,38,5464,0,
+ 2777,124,0,1,442,0,456,948,0,455,
+ 1315,0,925,89,0,727,385,0,35,33,
+ 0,32,34,0,39,2307,0,1,659,0,
+ 1,5720,0,1,5719,0,1,5718,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,39,1,5465,0,39,1,5464,
+ 0,806,1,0,281,392,0,281,284,0,
+ 5682,239,0,5681,239,0,5786,239,0,5785,
+ 239,0,5709,239,0,5708,239,0,5707,239,
+ 0,5706,239,0,5705,239,0,5704,239,0,
+ 5703,239,0,5702,239,0,5720,239,0,5719,
+ 239,0,5718,239,0,5717,239,0,5716,239,
+ 0,5715,239,0,5714,239,0,5713,239,0,
+ 5712,239,0,5711,239,0,5710,239,0,39,
+ 5465,239,0,39,5464,239,0,5488,239,0,
+ 5465,48,0,5464,48,0,5456,1,0,5455,
+ 1,0,2435,235,0,32,386,0,29,385,
+ 0,43,5486,0,43,37,0,2777,126,0,
+ 2777,125,0,329,443,0,5488,1,0,39,
+ 1,0,47,37,0,1,90,0,499,3019,
+ 0,5488,1,227,0,39,1,227,0,227,
+ 414,0,5465,37,0,5464,37,0,5465,2,
+ 37,0,5464,2,37,0,5465,36,0,5464,
+ 36,0,5486,45,0,37,45,0,5460,403,
+ 0,5459,403,0,1,4593,0,1,2903,0,
+ 1,2307,0,227,413,0,2215,316,0,329,
+ 93,0,35,72,0,1,329,0,3401,276,
+ 0,499,4403,0,1,227,0,227,218,0,
+ 227,217,0,1,573,0,1,3866,0,5462,
+ 1,0,5458,1,0,1,227,3583,0,5459,
+ 227,0,3586,227,0,5462,381,0,5461,381,
+ 0,3643,227,0,10,12,0,8,10,12,
+ 0,183,3621,0,3736,381,0,8,12,0
};
};
public final static char baseAction[] = BaseAction.baseAction;
@@ -1453,346 +1463,346 @@ public class CPPSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface TermAction {
public final static char termAction[] = {0,
- 5399,5364,5343,5343,5343,5343,5343,5343,5380,5343,
+ 5450,5415,5394,5394,5394,5394,5394,5394,5431,5394,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,5368,1,1,
+ 1,1,1,1,1,1,1,5419,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,137,1,
- 1,1,1,1,1,1,1,1,1,2140,
- 1,5572,591,113,3324,1,1,5410,39,3795,
- 5399,5406,5437,1135,1081,3541,3261,2236,3164,3483,
- 3183,3520,945,3507,2546,3489,10,5383,5383,5383,
- 5383,5383,5383,5383,5383,5383,5383,5383,5383,5383,
- 5383,5383,5383,5383,5383,5383,5383,5383,5383,5383,
- 5383,5383,5383,5383,5383,5383,5383,5383,5383,5383,
- 5383,5383,5383,5383,5383,5383,5383,5383,5383,5383,
- 5383,5383,5383,5383,329,5383,5383,5383,5383,5383,
- 5383,393,5383,5383,5383,5383,5383,5383,5383,1184,
- 5383,5383,5383,5383,3820,3772,629,5383,382,5399,
- 5383,5383,5383,5383,5383,5383,5383,5383,5383,5383,
- 5383,5383,8,5386,5386,5386,5386,5386,5386,5386,
- 5386,5386,5386,5386,5386,5386,5386,5386,5386,5386,
- 5386,5386,5386,5386,5386,5386,5386,5386,5386,5386,
- 5386,5386,5386,5386,5386,5386,5386,5386,5386,5386,
- 5386,5386,5386,5386,5386,5386,5386,5386,5386,5386,
- 5399,5386,5386,5386,5386,5386,5386,2746,5386,5386,
- 5386,5386,5386,5386,5386,299,5386,5386,5386,5386,
- 284,5136,5136,5386,281,5697,5386,5386,5386,5386,
- 5386,5386,5386,5386,5386,5386,5386,5386,5399,5364,
- 5343,5343,5343,5343,5343,5343,5371,5343,1,1,
+ 1,1,1,1,1,1,1,1,1,2228,
+ 1,5623,2141,113,3377,1,1,5461,39,3826,
+ 5450,5457,5488,1135,3010,3640,3426,2236,3365,3577,
+ 3176,3622,882,3620,2502,3619,10,5434,5434,5434,
+ 5434,5434,5434,5434,5434,5434,5434,5434,5434,5434,
+ 5434,5434,5434,5434,5434,5434,5434,5434,5434,5434,
+ 5434,5434,5434,5434,5434,5434,5434,5434,5434,5434,
+ 5434,5434,5434,5434,5434,5434,5434,5434,5434,5434,
+ 5434,5434,5434,5434,329,5434,5434,5434,5434,5434,
+ 5434,393,5434,5434,5434,5434,5434,5434,5434,1184,
+ 5434,5434,5434,5434,3850,3803,629,5434,382,5450,
+ 5434,5434,5434,5434,5434,5434,5434,5434,5434,5434,
+ 5434,5434,8,5437,5437,5437,5437,5437,5437,5437,
+ 5437,5437,5437,5437,5437,5437,5437,5437,5437,5437,
+ 5437,5437,5437,5437,5437,5437,5437,5437,5437,5437,
+ 5437,5437,5437,5437,5437,5437,5437,5437,5437,5437,
+ 5437,5437,5437,5437,5437,5437,5437,5437,5437,5437,
+ 5450,5437,5437,5437,5437,5437,5437,2619,5437,5437,
+ 5437,5437,5437,5437,5437,299,5437,5437,5437,5437,
+ 284,5187,5187,5437,281,5748,5437,5437,5437,5437,
+ 5437,5437,5437,5437,5437,5437,5437,5437,5450,5415,
+ 5394,5394,5394,5394,5394,5394,5422,5394,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,5368,1,1,1,1,
+ 1,1,1,1,1,5419,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,5399,1,1,1,
- 1,1,1,437,1,1,1,2140,1,5572,
- 591,5399,3324,1,1,5410,5399,5038,5035,5407,
- 5437,5399,1081,3541,3261,2236,3164,3483,3183,3520,
- 945,3507,2546,3489,5399,5364,5343,5343,5343,5343,
- 5343,5343,5371,5343,1,1,1,1,1,1,
+ 1,1,1,1,1,1,5450,1,1,1,
+ 1,1,1,437,1,1,1,2228,1,5623,
+ 2141,5450,3377,1,1,5461,5450,5089,5086,5458,
+ 5488,5450,3010,3640,3426,2236,3365,3577,3176,3622,
+ 882,3620,2502,3619,5450,5415,5394,5394,5394,5394,
+ 5394,5394,5422,5394,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,5368,1,1,1,1,1,1,1,1,
+ 1,5419,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,5406,1,1,1,1,1,1,133,
- 1,1,1,2140,1,5572,591,115,3324,1,
- 1,5410,109,3795,5399,5832,5833,5834,1081,3541,
- 3261,2236,3164,3483,3183,3520,945,3507,2546,3489,
- 5399,5364,5343,5343,5343,5343,5343,5343,5371,5343,
+ 1,1,5457,1,1,1,1,1,1,133,
+ 1,1,1,2228,1,5623,2141,115,3377,1,
+ 1,5461,109,3826,5450,5883,5884,5885,3010,3640,
+ 3426,2236,3365,3577,3176,3622,882,3620,2502,3619,
+ 5450,5415,5394,5394,5394,5394,5394,5394,5422,5394,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,5368,1,1,
+ 1,1,1,1,1,1,1,5419,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,5399,1,
- 1,1,1,1,1,134,1,1,1,2140,
- 1,5572,591,129,3324,1,1,5410,2324,3772,
- 629,4237,593,4259,1081,3541,3261,2236,3164,3483,
- 3183,3520,945,3507,2546,3489,5399,5364,5343,5343,
- 5343,5343,5343,5343,5371,5343,1,1,1,1,
+ 1,1,1,1,1,1,1,1,5450,1,
+ 1,1,1,1,1,134,1,1,1,2228,
+ 1,5623,2141,129,3377,1,1,5461,2324,3803,
+ 629,4305,593,4327,3010,3640,3426,2236,3365,3577,
+ 3176,3622,882,3620,2502,3619,5450,5415,5394,5394,
+ 5394,5394,5394,5394,5422,5394,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,5368,1,1,1,1,1,1,
+ 1,1,1,5419,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,5399,1,1,1,1,1,
- 1,5399,1,1,1,2140,1,5572,591,114,
- 3324,1,1,5410,2324,3795,119,5399,5413,5414,
- 1081,3541,3261,2236,3164,3483,3183,3520,945,3507,
- 2546,3489,5399,5364,5343,5343,5343,5343,5343,5343,
- 5371,5343,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,5368,
+ 1,1,1,1,5450,1,1,1,1,1,
+ 1,5450,1,1,1,2228,1,5623,2141,114,
+ 3377,1,1,5461,2324,3826,119,5450,5464,5465,
+ 3010,3640,3426,2236,3365,3577,3176,3622,882,3620,
+ 2502,3619,5450,5415,5394,5394,5394,5394,5394,5394,
+ 5422,5394,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,5419,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 5399,1,1,1,1,1,1,5399,1,1,
- 1,2140,1,5572,591,5399,3324,1,1,5410,
- 3406,3772,629,3134,3160,5399,1081,3541,3261,2236,
- 3164,3483,3183,3520,945,3507,2546,3489,5399,5364,
- 5343,5343,5343,5343,5343,5343,5371,5343,1,1,
+ 5450,1,1,1,1,1,1,5450,1,1,
+ 1,2228,1,5623,2141,5450,3377,1,1,5461,
+ 2833,3803,629,3127,3153,5450,3010,3640,3426,2236,
+ 3365,3577,3176,3622,882,3620,2502,3619,5450,5415,
+ 5394,5394,5394,5394,5394,5394,5422,5394,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,5368,1,1,1,1,
+ 1,1,1,1,1,5419,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,334,1,1,1,
- 1,1,1,2773,1,1,1,2140,1,5572,
- 591,5399,3324,1,1,5410,5399,5413,5414,5734,
- 5735,3406,1081,3541,3261,2236,3164,3483,3183,3520,
- 945,3507,2546,3489,5399,5364,5343,5343,5343,5343,
- 5343,5343,5371,5343,1,1,1,1,1,1,
+ 1,1,1,2638,1,1,1,2228,1,5623,
+ 2141,5450,3377,1,1,5461,5450,5464,5465,5785,
+ 5786,2833,3010,3640,3426,2236,3365,3577,3176,3622,
+ 882,3620,2502,3619,5450,5415,5394,5394,5394,5394,
+ 5394,5394,5422,5394,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,5368,1,1,1,1,1,1,1,1,
+ 1,5419,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,5399,1,1,1,1,1,1,5399,
- 1,1,1,2140,1,5572,591,1,3324,1,
- 1,5410,5399,5038,5035,5361,5437,5399,1081,3541,
- 3261,2236,3164,3483,3183,3520,945,3507,2546,3489,
- 5399,5364,5343,5343,5343,5343,5343,5343,5371,5343,
+ 1,1,5450,1,1,1,1,1,1,5450,
+ 1,1,1,2228,1,5623,2141,1,3377,1,
+ 1,5461,5450,5089,5086,5412,5488,5450,3010,3640,
+ 3426,2236,3365,3577,3176,3622,882,3620,2502,3619,
+ 5450,5415,5394,5394,5394,5394,5394,5394,5422,5394,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,5368,1,1,
+ 1,1,1,1,1,1,1,5419,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,5406,1,
- 1,1,1,1,1,2844,1,1,1,2140,
- 1,5572,591,5399,3324,1,1,5410,5399,5222,
- 5219,48,5222,5219,1081,3541,3261,2236,3164,3483,
- 3183,3520,945,3507,2546,3489,5399,5364,5343,5343,
- 5343,5343,5343,5343,5371,5343,1,1,1,1,
+ 1,1,1,1,1,1,1,1,5457,1,
+ 1,1,1,1,1,2659,1,1,1,2228,
+ 1,5623,2141,5450,3377,1,1,5461,5450,5273,
+ 5270,48,5273,5270,3010,3640,3426,2236,3365,3577,
+ 3176,3622,882,3620,2502,3619,5450,5415,5394,5394,
+ 5394,5394,5394,5394,5422,5394,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,5368,1,1,1,1,1,1,
+ 1,1,1,5419,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,5399,1,1,1,1,1,
- 1,5399,1,1,1,2140,1,5572,591,5399,
- 3324,1,1,5410,112,5399,89,5403,2438,5071,
- 1081,3541,3261,2236,3164,3483,3183,3520,945,3507,
- 2546,3489,5399,3486,1,1,1,1,1,1,
- 3488,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,5408,
+ 1,1,1,1,5450,1,1,1,1,1,
+ 1,5450,1,1,1,2228,1,5623,2141,5450,
+ 3377,1,1,5461,112,5450,89,5454,2435,5122,
+ 3010,3640,3426,2236,3365,3577,3176,3622,882,3620,
+ 2502,3619,5450,3583,1,1,1,1,1,1,
+ 3586,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,5459,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 5399,1,1,1,1,1,1,5399,1,1,
- 1,2140,1,5572,591,5399,3324,1,1,5410,
- 5399,1700,5399,4237,5726,4259,1081,3541,3261,2236,
- 3164,3483,3183,3520,945,3507,2546,3489,39,5038,
- 5035,4806,806,4052,4127,3013,5402,4149,2005,5661,
- 5659,5668,5667,5663,5664,5662,5665,5666,5669,5660,
- 5657,5734,5735,4105,4083,135,5651,5658,5654,5630,
- 5656,5655,5652,5653,5631,4193,4171,5418,5795,4022,
- 732,859,5420,796,3107,810,5399,5421,5419,564,
- 5415,5416,5417,5399,2313,5796,5797,3304,1369,5399,
- 5274,5274,227,5270,227,227,227,5278,227,1,
+ 5450,1,1,1,1,1,1,5450,1,1,
+ 1,2228,1,5623,2141,5450,3377,1,1,5461,
+ 5450,988,5450,4305,945,4327,3010,3640,3426,2236,
+ 3365,3577,3176,3622,882,3620,2502,3619,39,5089,
+ 5086,4851,806,4114,4195,2903,5453,4217,2005,5712,
+ 5710,5719,5718,5714,5715,5713,5716,5717,5720,5711,
+ 5708,5785,5786,4173,4151,135,5702,5709,5705,5681,
+ 5707,5706,5703,5704,5682,4261,4239,5469,5846,4053,
+ 591,798,5471,616,3100,732,5450,5472,5470,564,
+ 5466,5467,5468,5450,2437,5847,5848,3187,1369,5450,
+ 5325,5325,227,5321,227,227,227,5329,227,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,5399,3566,227,1,1,1,
- 1,1,1,1,1,1,5399,5038,5035,1,
- 806,5083,123,3013,222,131,5399,5267,392,5133,
- 5133,5399,281,5399,2845,1,1,1,2581,223,
- 5809,582,395,5413,5414,2274,5657,5734,5735,356,
- 414,227,5651,5658,5654,5630,5656,5655,5652,5653,
- 5631,5657,5734,5735,932,5897,5399,5651,5658,5654,
- 5630,5656,5655,5652,5653,5631,281,5399,5399,8789,
- 8789,5832,5833,5834,5399,5274,5274,227,5270,227,
- 227,227,5322,227,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,3134,
- 3160,227,1,1,1,1,1,1,1,1,
- 1,3201,33,2356,1,5077,5435,5399,5077,5399,
- 5077,5077,5267,37,5261,5261,8,5411,5261,5754,
- 1,1,1,2581,5396,5809,582,5077,5077,5077,
- 43,5243,5243,1,127,413,227,5399,5399,5077,
- 5077,159,343,5038,5035,2552,806,2540,329,3013,
- 5897,329,5399,5399,1,5258,5258,5077,5255,5399,
- 329,3424,361,329,122,5077,5832,5833,5834,1,
- 5077,5077,5077,5077,5077,5077,5410,5034,5240,365,
- 5126,5122,2552,5130,2540,1,3013,5396,1,5077,
- 5077,5077,5077,5077,5077,5077,5077,5077,5077,5077,
- 5077,5077,5077,5077,5399,1929,159,5077,5077,5077,
- 5077,5077,5077,5077,5077,5077,5077,5077,5077,5077,
- 5399,5077,5077,5080,116,1967,5080,361,5080,5080,
- 2473,2400,29,385,385,5237,385,385,5237,385,
- 5237,5237,1929,3186,361,5080,5080,5080,1222,3747,
- 2769,3134,3160,5399,385,385,385,5080,5080,5237,
+ 1,1,1,1,5450,3642,227,1,1,1,
+ 1,1,1,1,1,1,5450,5089,5086,1,
+ 806,5134,123,2903,222,131,5450,5318,392,5184,
+ 5184,5450,281,5450,2670,1,1,1,3329,223,
+ 5860,582,395,5464,5465,2274,5708,5785,5786,356,
+ 414,227,5702,5709,5705,5681,5707,5706,5703,5704,
+ 5682,5708,5785,5786,932,5948,5450,5702,5709,5705,
+ 5681,5707,5706,5703,5704,5682,281,5450,5450,8840,
+ 8840,5883,5884,5885,5450,5325,5325,227,5321,227,
+ 227,227,5373,227,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,3127,
+ 3153,227,1,1,1,1,1,1,1,1,
+ 1,2847,33,2356,1,5128,5486,5450,5128,5450,
+ 5128,5128,5318,37,5312,5312,8,5462,5312,5805,
+ 1,1,1,3329,5447,5860,582,5128,5128,5128,
+ 43,5294,5294,1,127,413,227,5450,5450,5128,
+ 5128,159,343,5089,5086,2552,806,2307,329,2903,
+ 5948,329,5450,5450,1,5309,5309,5128,5306,5450,
+ 329,2888,361,329,122,5128,5883,5884,5885,1,
+ 5128,5128,5128,5128,5128,5128,5461,5085,5291,365,
+ 5177,5173,2552,5181,2307,1,2903,5447,1,5128,
+ 5128,5128,5128,5128,5128,5128,5128,5128,5128,5128,
+ 5128,5128,5128,5128,5450,1929,159,5128,5128,5128,
+ 5128,5128,5128,5128,5128,5128,5128,5128,5128,5128,
+ 5450,5128,5128,5131,116,1967,5131,361,5131,5131,
+ 2473,2400,29,385,385,5288,385,385,5288,385,
+ 5288,5288,1929,3005,361,5131,5131,5131,1222,3778,
+ 3753,3127,3153,5450,385,385,385,5131,5131,5288,
385,385,385,385,385,385,385,385,385,1,
- 5126,5122,5313,5130,5319,5080,5316,5409,5399,38,
- 5056,5053,235,5080,5050,5231,3013,5041,5080,5080,
- 5080,5080,5080,5080,136,5237,5408,307,5126,5122,
- 4492,5130,2540,5334,3013,5237,5334,5080,5080,5080,
- 5080,5080,5080,5080,5080,5080,5080,5080,5080,5080,
- 5080,5080,36,5298,5295,5080,5080,5080,5080,5080,
- 5080,5080,5080,5080,5080,5080,5080,5080,121,5080,
- 5080,5399,5343,5343,227,5343,227,227,227,5346,
+ 5177,5173,5364,5181,5370,5131,5367,5460,5450,38,
+ 5107,5104,235,5131,5101,5282,2903,5092,5131,5131,
+ 5131,5131,5131,5131,136,5288,5459,307,5177,5173,
+ 4593,5181,2307,5385,2903,5288,5385,5131,5131,5131,
+ 5131,5131,5131,5131,5131,5131,5131,5131,5131,5131,
+ 5131,5131,36,5349,5346,5131,5131,5131,5131,5131,
+ 5131,5131,5131,5131,5131,5131,5131,5131,121,5131,
+ 5131,5450,5394,5394,227,5394,227,227,227,5397,
227,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,5399,5399,227,1,
- 1,8700,1,1,1,1,1,1,442,1,
- 1,1,1,5399,5062,224,39,5062,5399,5340,
- 5437,5409,329,5399,2274,329,137,1,1,1,
- 3278,5405,5608,591,456,3324,455,5657,5734,5735,
- 5408,5399,218,5651,5658,5654,5630,5656,5655,5652,
- 5653,5631,288,5413,5414,3134,3160,5897,5399,5343,
- 5343,227,5343,227,227,227,227,227,1,1,
+ 1,1,1,1,1,1,5450,5450,227,1,
+ 1,8751,1,1,1,1,1,1,442,1,
+ 1,1,1,5450,5113,224,39,5113,5450,5391,
+ 5488,5460,329,5450,2274,329,137,1,1,1,
+ 3385,5456,5659,2141,456,3377,455,5708,5785,5786,
+ 5459,5450,218,5702,5709,5705,5681,5707,5706,5703,
+ 5704,5682,288,5464,5465,3127,3153,5948,5450,5394,
+ 5394,227,5394,227,227,227,227,227,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,3915,5399,227,1,1,8700,1,
- 1,1,1,1,1,1886,5404,5065,1,5068,
- 1,5126,5122,4492,5130,2540,5340,3013,345,111,
- 132,1614,130,3203,1,1,1,3278,128,5608,
- 591,593,3324,368,5399,5038,5035,1184,806,2540,
- 530,3013,3820,1843,1800,1757,1714,1671,1628,1585,
- 1542,1499,1456,5399,5897,5399,5343,5343,227,5343,
- 227,227,227,5349,227,1,1,1,1,1,
+ 1,1,1,3946,5450,227,1,1,8751,1,
+ 1,1,1,1,1,1886,5455,5116,1,5119,
+ 1,5177,5173,4593,5181,2307,5391,2903,345,111,
+ 132,1491,130,3157,1,1,1,3385,128,5659,
+ 2141,593,3377,368,5450,5089,5086,1184,806,2307,
+ 530,2903,3850,1843,1800,1757,1714,1671,1628,1585,
+ 1542,1499,1456,5450,5948,5450,5394,5394,227,5394,
+ 227,227,227,5400,227,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 5399,1929,227,1,1,8700,1,1,1,1,
- 1,1,443,39,39,1,5437,5399,5252,225,
- 3463,5252,1282,5340,1,5407,110,3827,4237,5399,
- 4259,1,1,1,3278,2089,5608,591,2356,3324,
- 3242,5657,5734,5735,2473,2400,217,5651,5658,5654,
- 5630,5656,5655,5652,5653,5631,5399,37,5261,5261,
- 3358,5897,5399,5343,5343,227,5343,227,227,227,
- 5346,227,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1002,5406,227,
- 1,1,8700,1,1,1,1,1,1,5399,
- 5038,5035,1,806,5083,3378,3013,90,1,1,
- 5340,1,346,5264,120,4237,5264,4259,1,1,
- 1,3278,5399,5608,591,3834,3324,1,5126,5122,
- 2552,5130,2540,218,3013,5225,5399,5399,5126,5122,
- 4492,5130,2540,5334,3013,366,5334,1265,5897,5399,
- 5343,5343,227,5343,227,227,227,5346,227,1,
+ 5450,1929,227,1,1,8751,1,1,1,1,
+ 1,1,443,39,39,1,5488,5450,5303,225,
+ 3544,5303,1282,5391,1,5458,110,3578,4305,5450,
+ 4327,1,1,1,3385,1355,5659,2141,2356,3377,
+ 3994,5708,5785,5786,2473,2400,217,5702,5709,5705,
+ 5681,5707,5706,5703,5704,5682,5450,37,5312,5312,
+ 3208,5948,5450,5394,5394,227,5394,227,227,227,
+ 5397,227,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1002,5457,227,
+ 1,1,8751,1,1,1,1,1,1,5450,
+ 5089,5086,1,806,5134,2765,2903,90,1,1,
+ 5391,1,346,5315,120,4305,5315,4327,1,1,
+ 1,3385,5450,5659,2141,3852,3377,1,5177,5173,
+ 2552,5181,2307,218,2903,5276,5450,5450,5177,5173,
+ 4593,5181,2307,5385,2903,366,5385,1265,5948,5450,
+ 5394,5394,227,5394,227,227,227,5397,227,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,5399,1929,227,1,1,8700,
- 1,1,1,1,1,1,5399,5284,5281,1,
- 1929,1,5126,5122,4492,5130,2540,5340,3013,307,
- 5228,3134,3160,373,118,1,1,1,3278,2060,
- 5608,591,5399,3324,1326,5399,5413,5414,307,5399,
- 218,155,343,39,39,2433,5437,98,329,3747,
- 2769,329,5399,5399,5435,5897,5399,5343,5343,227,
- 5343,227,227,227,227,227,1,1,1,1,
+ 1,1,1,1,5450,1929,227,1,1,8751,
+ 1,1,1,1,1,1,5450,5335,5332,1,
+ 1929,1,5177,5173,4593,5181,2307,5391,2903,307,
+ 5279,3127,3153,373,118,1,1,1,3385,2060,
+ 5659,2141,5450,3377,1326,5450,5464,5465,307,5450,
+ 218,155,343,39,39,2434,5488,98,329,3778,
+ 3753,329,5450,5450,5486,5948,5450,5394,5394,227,
+ 5394,227,227,227,227,227,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,117,5399,227,1,1,8700,1,1,1,
- 1,1,1,93,39,39,1,5437,5399,5328,
- 4215,1448,5328,5399,5340,1929,3747,2769,403,299,
- 4328,1413,1,1,1,3278,5307,5608,591,5697,
- 3324,1,5126,5122,4492,5130,2540,5399,3013,1,
- 5126,5122,2552,5130,2540,5310,3013,3436,5399,5291,
- 5287,3566,5897,5399,5343,5343,227,5343,227,227,
+ 1,117,5450,227,1,1,8751,1,1,1,
+ 1,1,1,93,39,39,1,5488,5450,5379,
+ 4283,921,5379,5450,5391,1929,3778,3753,403,299,
+ 4394,1413,1,1,1,3385,5358,5659,2141,5748,
+ 3377,1,5177,5173,4593,5181,2307,5450,2903,1,
+ 5177,5173,2552,5181,2307,5361,2903,2849,5450,5342,
+ 5338,3642,5948,5450,5394,5394,227,5394,227,227,
227,227,227,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1706,183,
- 227,1,1,8700,1,1,1,1,1,1,
- 37,39,5399,1,5399,5437,5435,3853,5399,5413,
- 5414,5340,1929,2060,5399,4438,5411,3352,513,1,
- 1,1,3278,1909,5608,591,1,3324,47,2433,
- 5399,8621,8218,1,339,329,5038,5035,4492,806,
- 2540,5358,3013,5399,8621,8218,5399,5399,5435,5897,
- 5399,5343,5343,227,5343,227,227,227,227,227,
+ 1,1,1,1,1,1,1,1,2678,183,
+ 227,1,1,8751,1,1,1,1,1,1,
+ 37,39,5450,1,5450,5488,5486,3865,5450,5464,
+ 5465,5391,1929,2060,5450,4506,5462,2848,513,1,
+ 1,1,3385,1909,5659,2141,1,3377,47,2434,
+ 5450,8672,8269,1,339,329,5089,5086,4593,806,
+ 2307,5409,2903,5450,8672,8269,5450,5450,5486,5948,
+ 5450,5394,5394,227,5394,227,227,227,227,227,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,5410,3103,227,1,1,
- 8700,1,1,1,1,1,1,1,886,1929,
- 1,5399,5222,5219,339,5405,339,394,5340,339,
- 5410,385,3578,5832,5833,5834,1,1,1,3278,
- 5390,5608,591,1,3324,1,5126,5122,5313,5130,
- 5319,361,5316,309,74,5399,2898,2545,5399,1,
- 1,1,1,1,1,1,5897,1,1,1,
+ 1,1,1,1,1,5461,2752,227,1,1,
+ 8751,1,1,1,1,1,1,1,886,1929,
+ 1,5450,5273,5270,339,5456,339,394,5391,339,
+ 5461,385,3310,5883,5884,5885,1,1,1,3385,
+ 5441,5659,2141,1,3377,1,5177,5173,5364,5181,
+ 5370,361,5367,309,74,5450,2625,2999,5450,1,
+ 1,1,1,1,1,1,5948,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 5399,5399,727,1,1,5399,4215,1448,3854,5399,
- 5404,5461,5462,124,48,1,1,1,5414,1,
- 1,1,1,1,1,1,5399,1,1,1,
- 1,1,1,5399,360,5399,361,3616,1,5933,
- 3347,5399,1092,1,1,1,5126,5122,4806,5130,
- 4052,4127,3013,361,4149,5086,5113,5119,5092,5095,
- 5107,5104,5110,5101,5098,5089,5116,5399,2814,5414,
- 4105,4083,5798,5399,5038,5035,5399,806,2540,578,
- 3013,5059,4193,4171,5418,5399,4022,732,859,5420,
- 796,3107,810,666,5421,5419,564,5415,5416,5417,
- 37,5261,5261,5909,3494,1369,329,2715,2649,316,
- 39,39,5325,514,39,5038,5035,4806,806,4052,
- 4127,3013,5393,4149,659,5661,5659,5668,5667,5663,
- 5664,5662,5665,5666,5669,5660,5399,5413,5414,4105,
- 4083,2540,5399,3013,5838,4326,1,5399,5435,2433,
- 3617,4193,4171,5418,5225,4022,732,859,5420,796,
- 3107,810,426,5421,5419,564,5415,5416,5417,45,
- 5304,5304,1929,5399,1369,5399,1,5399,5399,5284,
- 5281,5377,5399,5405,526,5406,139,5038,5035,4806,
- 806,4052,4127,3013,5399,4149,659,5661,5659,5668,
- 5667,5663,5664,5662,5665,5666,5669,5660,5399,1929,
- 1,4105,4083,37,5261,5261,3319,5301,161,5228,
- 126,29,5399,4193,4171,5418,5435,4022,732,859,
- 5420,796,3107,810,2843,5421,5419,564,5415,5416,
- 5417,3625,3208,3352,5399,4868,1369,3679,5404,526,
- 5852,39,39,1,5126,5122,4806,5130,4052,4127,
- 3013,5435,4149,5086,5113,5119,5092,5095,5107,5104,
- 5110,5101,5098,5089,5116,2814,727,3636,4105,4083,
- 393,5399,5399,161,386,318,2319,125,5246,5409,
- 4193,4171,5418,422,4022,732,859,5420,796,3107,
- 810,5399,5421,5419,564,5415,5416,5417,5408,101,
- 5399,5399,4337,1369,2715,2649,97,5399,39,39,
- 39,5038,5035,4806,806,4052,4127,3013,5374,4149,
- 659,5661,5659,5668,5667,5663,5664,5662,5665,5666,
- 5669,5660,2814,5399,519,4105,4083,2502,1929,5399,
- 5399,276,2303,1,5337,5249,39,4193,4171,5418,
- 5437,4022,732,859,5420,796,3107,810,5399,5421,
- 5419,564,5415,5416,5417,1,1,5399,2792,1046,
- 1369,2715,2649,289,5399,5352,5352,5377,39,5038,
- 5035,4806,806,4052,4127,3013,5374,4149,659,5661,
- 5659,5668,5667,5663,5664,5662,5665,5666,5669,5660,
- 29,438,452,4105,4083,5355,5355,48,4325,385,
- 5399,5413,5399,3435,3435,4193,4171,5418,393,4022,
- 732,859,5420,796,3107,810,72,5421,5419,564,
- 5415,5416,5417,5756,1,5399,1,1226,1369,5866,
- 5860,1,2098,5864,5409,5377,287,446,5399,189,
- 5399,5399,3566,3401,424,5041,5044,5047,5399,5858,
- 5859,4340,5413,5408,5074,727,447,3203,189,418,
- 306,5889,5890,727,5399,5867,5399,4834,5399,3545,
- 5399,5331,5399,4808,5399,2672,1,4860,5399,5869,
- 3052,4356,5399,5399,1,4443,5399,799,5399,1582,
- 1651,5399,5870,5868,5891,35,3551,5399,5399,506,
- 504,5399,5399,5399,5399,5399,953,5399,508,2452,
- 2148,5880,5879,5892,4436,3322,5861,5862,5885,5886,
- 5883,5884,5863,5865,5887,5888,2679,5399,2186,5893,
- 2798,5873,5874,5875,5871,5872,5881,5882,5877,5876,
- 5878,39,5038,5035,4806,806,4052,4127,3013,5403,
- 4149,659,5661,5659,5668,5667,5663,5664,5662,5665,
- 5666,5669,5660,3237,2919,2,4105,4083,4775,4809,
- 3291,2919,3644,3345,3960,5399,2017,734,4193,4171,
- 5418,5399,4022,732,859,5420,796,3107,810,5399,
- 5421,5419,564,5415,5416,5417,39,5038,5035,4806,
- 806,4052,4127,3013,5399,4149,659,5661,5659,5668,
- 5667,5663,5664,5662,5665,5666,5669,5660,5399,5399,
- 37,4105,4083,5399,5399,5399,5399,5399,5399,5399,
- 5399,5399,5399,4193,4171,5418,5399,4022,732,859,
- 5420,796,3107,810,5399,5421,5419,564,5415,5416,
- 5417,5399,5399,5399,5399,5399,1369,5399,5402,39,
- 5038,5035,4806,806,4052,4127,3013,5399,4149,659,
- 5661,5659,5668,5667,5663,5664,5662,5665,5666,5669,
- 5660,5399,5399,5399,4105,4083,5399,5399,5399,5399,
- 5399,5399,5399,5399,5399,5399,4193,4171,5418,5399,
- 4022,732,859,5420,796,3107,810,5399,5421,5419,
- 564,5415,5416,5417,39,5038,5035,4806,806,4052,
- 4127,3013,1709,4149,659,5661,5659,5668,5667,5663,
- 5664,5662,5665,5666,5669,5660,5399,5399,5399,4105,
- 4083,5399,5399,5399,5399,5399,5399,5399,5399,5399,
- 5399,4193,4171,5418,5399,4022,732,859,5420,796,
- 3107,810,5399,5421,5419,564,5415,5416,5417,5399,
- 5399,5399,5399,5399,1369,39,5038,5035,2897,806,
- 4052,4127,3013,5399,4149,659,5661,5659,5668,5667,
- 5663,5664,5662,5665,5666,5669,5660,5399,5399,5399,
- 4105,4083,5399,5399,5399,5399,5399,5399,5399,5399,
- 5399,5399,4193,4171,5418,5399,4022,732,859,5420,
- 796,3107,810,5399,5421,5419,564,5415,5416,5417,
- 39,5038,5035,4806,806,4052,4127,3013,5399,4149,
- 659,5661,5659,5668,5667,5663,5664,5662,5665,5666,
- 5669,5660,5399,5399,5399,4105,4083,5399,5399,5399,
- 5399,5399,5399,5399,5399,5399,5399,4193,4171,5418,
- 5399,4022,732,859,5420,796,3107,810,5399,5421,
- 5419,564,5415,5416,5417,39,5038,5035,4806,806,
- 4052,4127,3013,5399,4149,659,5661,5659,5668,5667,
- 5663,5664,5662,5665,5666,5669,5660,5399,5399,5399,
- 4105,4083,5399,5399,5399,5399,5399,5399,5399,5399,
- 5399,5399,4193,4171,5418,5399,4022,732,859,5420,
- 796,3107,810,5399,5421,5419,564,5415,5416,5417,
- 5399,5038,5035,5399,5437,5399,5399,5399,5399,5399,
- 788,5661,5659,5668,5667,5663,5664,5662,5665,5666,
- 5669,5660,5657,5734,5735,5399,5399,5399,5651,5658,
- 5654,5630,5656,5655,5652,5653,5631,5399,5399,5399,
- 5795,5399,5399,5399,5399,5399,5399,5399,5399,239,
- 5212,5208,5399,5216,5399,5399,2313,5796,5797,788,
- 5199,5205,5178,5181,5193,5190,5196,5187,5184,5175,
- 5202,5154,5148,5145,5399,5399,5399,5172,5151,5163,
- 5142,5157,5160,5169,5166,5139,5399,5399,5399,5795,
- 32,386,386,5234,386,386,5234,386,5234,5234,
- 5399,5399,5399,5399,5399,2313,5796,5797,5399,5399,
- 5399,5399,386,386,386,5399,221,5234,386,386,
- 386,386,386,386,386,386,386,5661,5659,5668,
- 5667,5663,5664,5662,5665,5666,5669,5660,5657,5734,
- 5735,5399,5399,5399,5651,5658,5654,5630,5656,5655,
- 5652,5653,5631,5234,5399,5399,5399,5399,5399,5399,
- 5399,5399,5399,5234
+ 5450,5450,727,1,1,5450,4283,921,3886,5450,
+ 5455,5512,5513,124,48,1,1,1,5465,1,
+ 1,1,1,1,1,1,5450,1,1,1,
+ 1,1,1,5450,360,5450,361,3546,1,5984,
+ 1408,5450,1092,1,1,1,5177,5173,4851,5181,
+ 4114,4195,2903,361,4217,5137,5164,5170,5143,5146,
+ 5158,5155,5161,5152,5149,5140,5167,5450,2804,5465,
+ 4173,4151,5849,5450,5089,5086,5450,806,2307,578,
+ 2903,5110,4261,4239,5469,5450,4053,591,798,5471,
+ 616,3100,732,666,5472,5470,564,5466,5467,5468,
+ 37,5312,5312,5960,3186,1369,329,2721,2694,316,
+ 39,39,5376,514,39,5089,5086,4851,806,4114,
+ 4195,2903,5444,4217,659,5712,5710,5719,5718,5714,
+ 5715,5713,5716,5717,5720,5711,5450,5464,5465,4173,
+ 4151,2307,5450,2903,5889,3968,1,5450,5486,2434,
+ 3401,4261,4239,5469,5276,4053,591,798,5471,616,
+ 3100,732,426,5472,5470,564,5466,5467,5468,45,
+ 5355,5355,1929,5450,1369,5450,1,5450,5450,5335,
+ 5332,5428,5450,5456,526,5457,139,5089,5086,4851,
+ 806,4114,4195,2903,5450,4217,659,5712,5710,5719,
+ 5718,5714,5715,5713,5716,5717,5720,5711,5450,1929,
+ 1,4173,4151,37,5312,5312,3337,5352,161,5279,
+ 126,29,5450,4261,4239,5469,5486,4053,591,798,
+ 5471,616,3100,732,2671,5472,5470,564,5466,5467,
+ 5468,3706,3191,2848,5450,4865,1369,3457,5455,526,
+ 5903,39,39,1,5177,5173,4851,5181,4114,4195,
+ 2903,5486,4217,5137,5164,5170,5143,5146,5158,5155,
+ 5161,5152,5149,5140,5167,2804,727,3557,4173,4151,
+ 393,5450,5450,161,386,318,1804,125,5297,5460,
+ 4261,4239,5469,422,4053,591,798,5471,616,3100,
+ 732,5450,5472,5470,564,5466,5467,5468,5459,101,
+ 5450,5450,3710,1369,2721,2694,97,5450,39,39,
+ 39,5089,5086,4851,806,4114,4195,2903,5425,4217,
+ 659,5712,5710,5719,5718,5714,5715,5713,5716,5717,
+ 5720,5711,2804,5450,519,4173,4151,1881,1929,5450,
+ 5450,276,2215,1,5388,5300,39,4261,4239,5469,
+ 5488,4053,591,798,5471,616,3100,732,5450,5472,
+ 5470,564,5466,5467,5468,1,1,5450,2942,1046,
+ 1369,2721,2694,289,5450,5403,5403,5428,39,5089,
+ 5086,4851,806,4114,4195,2903,5425,4217,659,5712,
+ 5710,5719,5718,5714,5715,5713,5716,5717,5720,5711,
+ 29,438,452,4173,4151,5406,5406,48,4393,385,
+ 5450,5464,5450,3444,3444,4261,4239,5469,393,4053,
+ 591,798,5471,616,3100,732,72,5472,5470,564,
+ 5466,5467,5468,5807,1,5450,1,1040,1369,5917,
+ 5911,1,2098,5915,5460,5428,287,446,5450,189,
+ 5450,5450,3642,3402,424,5092,5095,5098,5450,5909,
+ 5910,3888,5464,5459,5125,727,447,3157,189,418,
+ 306,5940,5941,727,5450,5918,5450,4885,5450,3698,
+ 5450,5382,5450,4893,5450,3000,1,4913,5450,5920,
+ 2860,3548,5450,5450,1,4395,5450,785,5450,1668,
+ 1694,5450,5921,5919,5942,35,3263,5450,5450,506,
+ 504,5450,5450,5450,5450,5450,2311,5450,508,2452,
+ 2148,5931,5930,5943,3477,3366,5912,5913,5936,5937,
+ 5934,5935,5914,5916,5938,5939,2465,5450,2186,5944,
+ 4025,5924,5925,5926,5922,5923,5932,5933,5928,5927,
+ 5929,39,5089,5086,4851,806,4114,4195,2903,5454,
+ 4217,659,5712,5710,5719,5718,5714,5715,5713,5716,
+ 5717,5720,5711,3232,3276,2,4173,4151,3696,3978,
+ 3288,3276,3712,3344,3986,5450,2017,734,4261,4239,
+ 5469,5450,4053,591,798,5471,616,3100,732,5450,
+ 5472,5470,564,5466,5467,5468,39,5089,5086,4851,
+ 806,4114,4195,2903,5450,4217,659,5712,5710,5719,
+ 5718,5714,5715,5713,5716,5717,5720,5711,5450,5450,
+ 37,4173,4151,5450,5450,5450,5450,5450,5450,5450,
+ 5450,5450,5450,4261,4239,5469,5450,4053,591,798,
+ 5471,616,3100,732,5450,5472,5470,564,5466,5467,
+ 5468,5450,5450,5450,5450,5450,1369,5450,5453,39,
+ 5089,5086,4851,806,4114,4195,2903,5450,4217,659,
+ 5712,5710,5719,5718,5714,5715,5713,5716,5717,5720,
+ 5711,5450,5450,5450,4173,4151,5450,5450,5450,5450,
+ 5450,5450,5450,5450,5450,5450,4261,4239,5469,5450,
+ 4053,591,798,5471,616,3100,732,5450,5472,5470,
+ 564,5466,5467,5468,39,5089,5086,4851,806,4114,
+ 4195,2903,1537,4217,659,5712,5710,5719,5718,5714,
+ 5715,5713,5716,5717,5720,5711,5450,5450,5450,4173,
+ 4151,5450,5450,5450,5450,5450,5450,5450,5450,5450,
+ 5450,4261,4239,5469,5450,4053,591,798,5471,616,
+ 3100,732,5450,5472,5470,564,5466,5467,5468,5450,
+ 5450,5450,5450,5450,1369,39,5089,5086,3458,806,
+ 4114,4195,2903,5450,4217,659,5712,5710,5719,5718,
+ 5714,5715,5713,5716,5717,5720,5711,5450,5450,5450,
+ 4173,4151,5450,5450,5450,5450,5450,5450,5450,5450,
+ 5450,5450,4261,4239,5469,5450,4053,591,798,5471,
+ 616,3100,732,5450,5472,5470,564,5466,5467,5468,
+ 39,5089,5086,4851,806,4114,4195,2903,5450,4217,
+ 659,5712,5710,5719,5718,5714,5715,5713,5716,5717,
+ 5720,5711,5450,5450,5450,4173,4151,5450,5450,5450,
+ 5450,5450,5450,5450,5450,5450,5450,4261,4239,5469,
+ 5450,4053,591,798,5471,616,3100,732,5450,5472,
+ 5470,564,5466,5467,5468,39,5089,5086,4851,806,
+ 4114,4195,2903,5450,4217,659,5712,5710,5719,5718,
+ 5714,5715,5713,5716,5717,5720,5711,5450,5450,5450,
+ 4173,4151,5450,5450,5450,5450,5450,5450,5450,5450,
+ 5450,5450,4261,4239,5469,5450,4053,591,798,5471,
+ 616,3100,732,5450,5472,5470,564,5466,5467,5468,
+ 5450,5089,5086,5450,5488,5450,5450,5450,5450,5450,
+ 788,5712,5710,5719,5718,5714,5715,5713,5716,5717,
+ 5720,5711,5708,5785,5786,5450,5450,5450,5702,5709,
+ 5705,5681,5707,5706,5703,5704,5682,5450,5450,5450,
+ 5846,5450,5450,5450,5450,5450,5450,5450,5450,239,
+ 5263,5259,5450,5267,5450,5450,2437,5847,5848,788,
+ 5250,5256,5229,5232,5244,5241,5247,5238,5235,5226,
+ 5253,5205,5199,5196,5450,5450,5450,5223,5202,5214,
+ 5193,5208,5211,5220,5217,5190,5450,5450,5450,5846,
+ 32,386,386,5285,386,386,5285,386,5285,5285,
+ 5450,5450,5450,5450,5450,2437,5847,5848,5450,5450,
+ 5450,5450,386,386,386,5450,221,5285,386,386,
+ 386,386,386,386,386,386,386,5712,5710,5719,
+ 5718,5714,5715,5713,5716,5717,5720,5711,5708,5785,
+ 5786,5450,5450,5450,5702,5709,5705,5681,5707,5706,
+ 5703,5704,5682,5285,5450,5450,5450,5450,5450,5450,
+ 5450,5450,5450,5285
};
};
public final static char termAction[] = TermAction.termAction;
@@ -1800,60 +1810,60 @@ public class CPPSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface Asb {
public final static char asb[] = {0,
- 174,7,380,1,215,830,830,830,830,1105,
- 215,570,570,746,570,167,364,169,381,381,
- 381,381,381,381,381,381,381,572,578,583,
- 580,587,585,592,590,594,593,595,230,596,
- 380,380,786,786,786,786,419,626,15,15,
- 567,786,472,126,570,570,15,419,126,126,
- 117,364,938,785,1020,1107,1042,380,570,572,
- 550,550,626,380,381,381,381,381,381,381,
- 381,381,381,381,381,381,381,381,381,381,
- 381,381,381,380,380,380,380,380,380,380,
- 380,380,380,380,380,381,126,932,932,932,
- 932,327,126,15,15,1103,1031,1042,79,1042,
- 74,1042,620,1042,1026,1105,419,472,472,15,
- 830,381,1103,432,693,683,682,475,1049,1049,
- 1105,169,472,785,380,417,1019,416,418,416,
- 126,472,580,580,578,578,578,585,585,585,
- 585,583,583,590,587,587,593,592,594,1119,
- 595,215,215,215,215,419,419,932,931,932,
- 567,419,279,282,76,326,77,1105,419,419,
- 327,932,117,472,611,126,695,697,419,1020,
- 381,786,576,82,126,1107,419,419,418,1020,
- 380,380,380,380,380,215,215,364,280,563,
- 282,419,742,670,740,327,79,331,419,327,
- 419,126,687,675,686,697,327,417,126,576,
- 1103,1019,1107,419,417,126,126,126,126,626,
- 626,280,563,820,419,282,1119,77,830,329,
- 67,1109,282,742,741,742,742,327,331,331,
- 419,419,422,380,684,684,217,217,419,691,
- 1103,886,126,419,576,577,576,380,82,72,
- 572,1107,126,126,563,562,1020,511,79,932,
- 830,416,557,1111,413,215,742,742,742,742,
- 419,331,820,818,819,422,380,380,697,419,
- 1020,126,695,675,422,1084,576,626,381,472,
- 72,563,417,511,511,833,298,417,742,742,
- 413,616,381,1119,225,823,419,1103,742,742,
- 732,820,381,419,926,697,422,577,126,472,
- 617,820,668,980,271,215,77,870,511,511,
- 298,417,742,79,1105,1111,381,381,1019,413,
- 878,813,733,419,926,126,926,832,271,668,
- 882,1105,820,931,830,9,9,617,79,344,
- 878,419,215,732,419,1105,1105,419,215,919,
- 926,833,511,617,224,616,126,1105,419,298,
- 833,298,930,930,934,345,1105,419,626,419,
- 419,419,698,919,511,380,130,413,617,419,
- 419,298,786,786,934,344,1119,381,1119,617,
- 343,215,215,215,345,215,419,238,617,617,
- 419,79,126,419,419,125,921,820,126,820,
- 79,419,617,931,336,215,336,345,1119,345,
- 364,364,362,936,364,617,617,228,934,786,
- 921,820,130,617,730,886,345,126,413,126,
- 362,271,215,126,934,130,9,126,126,1097,
- 345,228,345,617,271,380,345,342,819,930,
- 79,79,1099,380,343,626,617,126,615,129,
- 416,345,126,617,615,615,345
+ 179,7,764,1,220,868,868,868,868,1105,
+ 220,886,886,648,886,125,748,127,765,765,
+ 765,765,765,765,765,765,765,888,894,899,
+ 896,903,901,908,906,910,909,911,284,912,
+ 764,764,688,688,688,688,803,527,20,20,
+ 883,688,437,176,886,886,20,803,176,176,
+ 167,748,938,687,1020,1107,1042,764,886,888,
+ 479,479,527,764,765,765,765,765,765,765,
+ 765,765,765,765,765,765,765,765,765,765,
+ 765,765,765,764,764,764,764,764,764,764,
+ 764,764,764,764,764,765,176,857,857,857,
+ 857,267,176,20,20,1103,1031,1042,84,1042,
+ 79,1042,571,1042,1026,1105,803,437,437,20,
+ 868,765,1103,397,595,585,584,486,1049,1049,
+ 1105,127,437,687,764,801,1019,800,802,800,
+ 176,437,896,896,894,894,894,901,901,901,
+ 901,899,899,906,903,903,909,908,910,1119,
+ 911,220,220,220,220,803,803,857,856,857,
+ 883,803,333,222,81,266,82,1105,803,803,
+ 267,857,167,437,927,176,597,599,803,1020,
+ 765,688,892,132,176,1107,803,803,802,1020,
+ 764,764,764,764,764,220,220,748,334,881,
+ 879,222,803,644,15,642,267,84,382,803,
+ 267,803,176,589,577,588,599,267,801,176,
+ 892,1103,1019,1107,803,801,176,176,176,176,
+ 527,527,334,879,841,803,222,1119,82,868,
+ 269,72,1109,222,644,643,644,644,267,382,
+ 382,803,803,387,764,586,586,271,271,803,
+ 593,1103,806,176,803,892,893,892,764,132,
+ 77,888,1107,176,176,879,879,1020,440,84,
+ 857,868,800,522,1111,797,220,644,644,644,
+ 644,803,382,841,839,840,387,764,764,599,
+ 803,1020,176,597,577,387,1084,892,527,765,
+ 437,77,879,878,801,440,440,337,238,801,
+ 644,644,797,932,765,1119,279,861,803,1103,
+ 644,644,634,841,765,803,851,599,387,893,
+ 176,437,879,933,841,569,980,325,220,82,
+ 374,440,440,238,801,644,84,1105,1111,765,
+ 765,1019,797,870,715,635,803,851,176,851,
+ 336,325,569,874,1105,841,856,868,9,9,
+ 933,84,728,870,803,220,634,803,1105,1105,
+ 803,220,844,851,337,440,933,278,932,176,
+ 1105,803,238,337,238,855,855,859,729,1105,
+ 803,527,803,803,803,600,844,440,764,88,
+ 797,933,803,803,238,688,688,859,728,1119,
+ 765,1119,933,727,220,220,220,729,220,803,
+ 292,933,933,803,84,176,803,803,175,846,
+ 841,176,841,84,803,933,856,720,220,720,
+ 729,1119,729,748,748,746,936,748,933,933,
+ 282,859,688,846,841,88,933,632,806,729,
+ 176,797,176,746,325,220,176,859,88,9,
+ 176,176,1097,729,282,729,933,325,764,729,
+ 726,840,855,84,84,1099,764,727,527,933,
+ 176,931,87,800,729,176,933,931,931,729
};
};
public final static char asb[] = Asb.asb;
@@ -1862,99 +1872,99 @@ public class CPPSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface Asr {
public final static byte asr[] = {0,
8,72,117,73,27,70,120,0,68,69,
- 70,1,2,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,48,4,72,1,2,67,8,
+ 70,1,2,0,4,8,72,67,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,48,4,
+ 72,1,2,67,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,91,89,25,26,92,93,87,88,55,
94,95,96,97,98,99,100,101,106,72,
90,69,107,108,109,110,111,112,113,114,
115,116,117,71,27,120,68,1,2,9,
- 6,4,3,63,70,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,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,74,68,72,90,
- 73,67,63,3,8,70,27,69,0,68,
- 72,90,70,117,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,
+ 6,4,3,63,70,73,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,86,59,7,102,103,104,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,8,71,0,86,102,103,104,48,
- 72,118,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,23,60,24,8,68,90,69,70,73,
- 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,117,8,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,
- 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,8,72,67,74,
- 0,60,23,7,24,5,1,2,4,74,
- 67,119,105,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,69,
- 107,108,109,110,111,112,113,114,115,116,
- 72,117,101,106,71,70,27,8,0,4,
- 8,67,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,4,
- 8,72,67,0,9,6,7,5,4,1,
- 2,3,63,68,69,70,8,73,90,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,22,1,2,4,102,103,104,0,4,
- 55,8,72,67,0,66,65,25,26,6,
- 92,93,98,9,99,5,41,69,55,68,
- 110,111,107,108,109,115,114,116,88,87,
- 112,113,96,97,94,95,100,101,37,38,
- 70,89,105,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,69,70,71,
- 8,0,72,8,63,3,69,70,27,55,
- 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,8,67,70,
- 0,8,67,69,0,28,11,12,40,23,
+ 74,68,72,90,73,67,63,3,8,70,
+ 27,69,0,68,72,90,70,117,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,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,1,2,8,71,0,23,60,24,8,
+ 68,90,69,70,73,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,117,8,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,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,8,72,67,74,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,
+ 4,8,67,1,2,0,9,6,7,5,
+ 4,1,2,3,63,68,69,70,8,73,
+ 90,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,22,1,2,4,102,103,104,
+ 0,4,55,8,72,67,0,66,65,25,
+ 26,6,92,93,98,9,99,5,41,69,
+ 55,68,110,111,107,108,109,115,114,116,
+ 88,87,112,113,96,97,94,95,100,101,
+ 37,38,70,89,105,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,86,
+ 102,103,104,48,72,118,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,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,23,24,
- 74,3,72,27,67,60,8,90,73,69,
- 70,68,0,118,0,75,0,65,66,37,
+ 20,24,21,1,2,4,90,0,69,70,
+ 71,8,0,23,24,74,3,72,27,67,
+ 60,8,90,73,69,70,68,0,118,0,
+ 72,8,63,3,69,70,27,55,0,8,
+ 67,70,0,8,67,69,0,60,23,24,
+ 7,5,1,2,4,74,67,119,105,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,69,107,108,109,110,
+ 111,112,113,114,115,116,72,117,101,106,
+ 71,70,27,8,0,75,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,
@@ -1980,60 +1990,60 @@ public class CPPSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface Nasb {
public final static char nasb[] = {0,
- 83,12,71,12,12,12,12,12,12,75,
- 12,12,12,206,12,202,276,91,71,71,
- 232,71,71,71,71,71,71,12,12,12,
- 12,12,12,12,12,12,12,12,71,12,
- 71,170,39,39,39,39,91,127,146,146,
- 88,5,113,282,12,12,146,236,282,282,
- 123,1,71,100,32,12,12,170,12,12,
- 17,17,127,170,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,170,71,282,12,12,12,
- 12,25,282,34,34,158,254,255,194,255,
- 52,255,119,255,248,10,91,113,113,34,
- 12,71,158,108,122,61,61,12,12,12,
- 10,91,113,39,46,202,213,201,91,201,
- 282,113,12,12,12,12,12,12,12,12,
+ 69,12,60,12,12,12,12,12,12,64,
+ 12,12,12,184,12,196,276,79,60,60,
+ 247,60,60,60,60,60,60,12,12,12,
+ 12,12,12,12,12,12,12,12,60,12,
+ 60,171,39,39,39,39,79,110,142,142,
+ 54,5,95,282,12,12,142,251,282,282,
+ 106,1,60,49,32,12,12,171,12,12,
+ 17,17,110,171,60,60,60,60,60,60,
+ 60,60,60,60,60,60,60,60,60,60,
+ 60,60,60,60,60,60,60,60,60,60,
+ 60,60,60,60,171,60,282,12,12,12,
+ 12,25,282,34,34,158,265,266,182,266,
+ 46,266,113,266,259,10,79,95,95,34,
+ 12,60,158,90,105,77,77,12,12,12,
+ 10,79,95,39,51,196,217,195,79,195,
+ 282,95,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,
- 12,12,12,12,12,116,11,12,12,12,
- 185,91,12,146,115,75,49,75,91,11,
- 12,12,183,113,12,282,173,146,91,32,
- 71,39,146,55,282,12,11,91,210,32,
- 71,170,170,170,170,12,12,34,160,146,
- 257,116,13,13,12,217,194,146,217,31,
- 116,282,12,139,12,176,30,116,282,66,
- 185,213,12,236,116,282,282,282,282,127,
- 127,12,42,64,91,136,12,150,12,12,
- 23,264,257,13,13,146,146,31,146,237,
- 11,116,146,71,12,12,61,61,91,138,
- 158,176,282,116,146,28,12,170,185,211,
- 12,12,282,282,146,42,32,146,194,12,
- 12,75,146,153,141,12,146,146,148,148,
- 116,237,64,12,12,42,71,71,146,11,
- 32,282,173,196,146,12,66,127,71,113,
- 211,42,202,227,146,239,146,217,146,94,
- 198,136,71,12,86,12,91,158,148,148,
- 179,64,71,237,146,176,42,28,282,113,
- 136,64,12,239,265,12,49,23,239,227,
- 176,202,94,58,130,141,71,71,77,198,
- 12,75,106,217,96,282,146,193,153,12,
- 12,75,64,12,12,15,15,136,58,63,
- 12,217,12,244,217,75,75,11,12,146,
- 96,239,146,136,44,12,282,75,217,176,
- 239,146,12,12,146,167,130,11,127,11,
- 217,217,280,42,227,46,69,141,136,217,
- 151,176,39,39,102,189,12,71,12,136,
- 12,12,12,12,190,12,237,134,136,136,
- 237,80,282,11,11,282,146,64,282,146,
- 194,151,136,12,104,12,12,190,12,190,
- 220,220,162,12,220,136,136,12,146,39,
- 96,64,146,136,12,39,190,282,141,282,
- 272,146,12,282,102,69,15,282,282,146,
- 190,12,190,136,141,170,190,104,64,12,
- 80,80,139,71,12,224,136,282,98,68,
- 201,190,282,136,98,12,190
+ 12,12,12,12,12,98,11,12,12,12,
+ 146,79,12,142,97,64,74,64,79,11,
+ 12,12,144,95,12,282,211,142,79,32,
+ 60,39,142,66,282,12,11,79,131,32,
+ 60,171,171,171,171,12,12,34,160,160,
+ 160,124,98,13,13,12,227,182,142,227,
+ 31,98,282,12,135,12,214,30,98,282,
+ 103,146,217,12,251,98,282,282,282,282,
+ 110,110,12,142,151,79,122,12,224,12,
+ 12,23,268,124,13,13,142,142,31,142,
+ 252,11,98,142,60,12,12,77,77,79,
+ 134,158,214,282,98,142,28,12,171,146,
+ 132,12,12,282,282,160,42,32,142,182,
+ 12,12,64,142,153,137,12,142,142,166,
+ 166,98,252,151,12,12,42,60,60,142,
+ 11,32,282,211,190,142,12,103,110,60,
+ 95,132,142,42,196,242,142,254,142,227,
+ 142,44,192,122,60,12,82,12,79,158,
+ 166,166,162,151,60,252,142,214,42,28,
+ 282,95,42,122,151,12,254,269,12,74,
+ 23,254,242,214,196,44,208,116,137,60,
+ 60,174,192,12,64,88,227,72,282,142,
+ 181,153,12,12,64,151,12,12,15,15,
+ 122,208,150,12,227,12,234,227,64,64,
+ 11,12,142,72,254,142,122,101,12,282,
+ 64,227,214,254,142,12,12,142,168,116,
+ 11,110,11,227,227,280,42,242,51,58,
+ 137,122,227,225,214,39,39,86,177,12,
+ 60,12,122,12,12,12,12,178,12,252,
+ 120,122,122,252,205,282,11,11,282,142,
+ 151,282,142,182,225,122,12,188,12,12,
+ 178,12,178,238,238,200,12,238,122,122,
+ 12,142,39,72,151,142,122,12,39,178,
+ 282,137,282,230,142,12,282,86,58,15,
+ 282,282,142,178,12,178,122,137,171,178,
+ 188,151,12,205,205,135,60,12,221,122,
+ 282,84,57,195,178,282,122,84,12,178
};
};
public final static char nasb[] = Nasb.nasb;
@@ -2045,30 +2055,30 @@ public class CPPSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
2,0,109,0,108,0,5,2,9,10,
139,0,156,0,136,65,0,141,0,136,
2,65,0,5,10,9,2,13,4,45,
- 0,62,0,184,0,4,29,0,40,1,
- 0,153,188,0,4,177,0,40,160,0,
- 75,0,4,67,0,143,0,67,129,40,
- 10,9,2,13,5,0,65,54,0,40,
- 55,0,4,174,0,191,0,4,195,0,
- 2,44,0,159,0,126,0,162,0,175,
- 0,161,0,113,0,193,0,13,2,9,
- 10,5,83,0,44,2,3,0,153,183,
- 0,35,94,95,4,0,4,97,0,172,
- 5,171,0,4,39,38,0,35,95,94,
- 64,5,2,9,10,4,0,110,0,40,
- 104,0,4,10,9,2,64,5,90,54,
- 0,39,4,23,181,0,48,40,179,4,
- 39,0,54,5,90,23,4,0,5,102,
- 192,0,95,94,54,5,57,0,67,39,
- 48,68,4,40,0,95,94,54,64,57,
- 5,10,9,2,0,4,45,196,0,2,
- 115,0,65,138,137,0,2,56,0,4,
- 45,103,0,4,178,0,116,4,48,82,
- 0,5,10,9,13,3,1,0,4,48,
- 82,84,0,5,102,168,0,2,5,121,
- 117,118,119,13,87,0,4,48,82,102,
- 46,5,0,38,5,2,9,10,4,158,
- 0,45,4,180,0,4,45,39,0,45,
+ 0,62,0,159,0,153,188,0,175,0,
+ 4,29,0,4,195,0,67,129,40,10,
+ 9,2,13,5,0,4,177,0,4,174,
+ 0,126,0,40,1,0,75,0,2,44,
+ 0,191,0,162,0,161,0,193,0,13,
+ 2,9,10,5,83,0,44,2,3,0,
+ 184,0,143,0,35,94,95,4,0,4,
+ 97,0,153,183,0,172,5,171,0,4,
+ 39,38,0,4,48,82,102,46,5,0,
+ 2,115,0,35,95,94,64,5,2,9,
+ 10,4,0,95,94,49,5,57,0,4,
+ 67,0,4,10,9,2,64,5,90,49,
+ 0,5,102,192,0,110,0,48,40,179,
+ 4,39,0,65,49,0,67,39,48,68,
+ 4,40,0,4,45,196,0,113,0,95,
+ 94,49,64,57,5,10,9,2,0,39,
+ 4,23,181,0,40,55,0,40,160,0,
+ 49,5,90,23,4,0,65,138,137,0,
+ 4,178,0,40,104,0,2,56,0,45,
+ 4,180,0,5,102,168,0,4,45,103,
+ 0,116,4,48,82,0,5,10,9,13,
+ 3,1,0,4,48,82,84,0,2,5,
+ 121,117,118,119,13,87,0,38,5,2,
+ 9,10,4,158,0,4,45,39,0,45,
4,35,0
};
};
@@ -2125,18 +2135,18 @@ public class CPPSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface ScopePrefix {
public final static char scopePrefix[] = {
- 159,576,595,308,527,543,554,565,367,266,
- 280,302,315,328,42,291,387,425,167,584,
- 478,20,51,71,80,85,90,130,195,297,
- 321,336,341,144,272,286,502,27,144,377,
- 341,603,27,217,245,1,14,61,76,106,
- 346,356,360,443,471,523,613,617,621,97,
- 7,97,405,421,434,455,515,232,116,116,
- 434,534,550,561,572,207,489,56,56,156,
- 222,225,56,240,261,225,225,56,364,468,
- 475,156,56,636,110,350,409,449,462,56,
- 350,396,177,104,447,625,632,625,632,65,
- 415,137,104,104,250
+ 159,577,596,309,528,544,555,566,368,267,
+ 281,303,316,329,42,292,388,426,167,585,
+ 479,20,51,71,80,85,90,130,195,298,
+ 322,337,342,144,273,287,503,27,144,378,
+ 342,604,27,217,246,1,14,61,76,106,
+ 347,357,361,444,472,524,614,618,622,97,
+ 7,97,406,422,435,456,516,116,116,232,
+ 435,535,551,562,573,207,490,56,56,156,
+ 222,225,56,241,262,225,225,56,365,469,
+ 476,156,56,637,110,351,410,450,463,56,
+ 351,397,177,104,448,626,633,626,633,65,
+ 416,137,104,104,251
};
};
public final static char scopePrefix[] = ScopePrefix.scopePrefix;
@@ -2144,18 +2154,18 @@ public class CPPSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface ScopeSuffix {
public final static char scopeSuffix[] = {
- 18,5,5,135,5,5,5,5,374,135,
- 95,135,135,334,48,277,393,431,173,67,
- 484,25,25,25,59,59,95,135,200,135,
- 326,326,334,149,277,101,507,38,152,382,
- 590,608,32,211,211,5,18,5,59,95,
- 326,95,95,135,243,5,5,5,243,634,
- 11,101,374,374,374,459,507,236,120,125,
- 438,538,538,538,538,211,493,59,59,5,
- 5,228,230,243,5,264,264,230,95,5,
- 243,5,500,5,113,353,412,452,465,519,
- 510,399,180,95,95,627,627,629,629,67,
- 417,139,202,187,252
+ 18,5,5,135,5,5,5,5,375,135,
+ 95,135,135,335,48,278,394,432,173,67,
+ 485,25,25,25,59,59,95,135,200,135,
+ 327,327,335,149,278,101,508,38,152,383,
+ 591,609,32,211,211,5,18,5,59,95,
+ 327,95,95,135,244,5,5,5,244,635,
+ 11,101,375,375,375,460,508,120,125,236,
+ 439,539,539,539,539,211,494,59,59,5,
+ 5,228,230,244,5,265,265,230,95,5,
+ 244,5,501,5,113,354,413,453,466,520,
+ 511,400,180,95,95,628,628,630,630,67,
+ 418,139,202,187,253
};
};
public final static char scopeSuffix[] = ScopeSuffix.scopeSuffix;
@@ -2164,12 +2174,12 @@ public class CPPSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface ScopeLhs {
public final static char scopeLhs[] = {
46,17,17,119,17,17,17,17,71,86,
- 47,80,119,118,77,52,71,70,46,17,
+ 47,80,119,118,77,53,71,70,46,17,
19,3,7,8,168,168,164,117,46,81,
- 118,118,120,128,53,47,139,133,128,71,
+ 118,118,120,128,54,47,139,133,128,71,
17,17,133,96,58,135,74,171,168,164,
- 120,182,50,55,143,17,17,17,17,12,
- 113,164,71,70,70,37,139,57,130,130,
+ 120,182,51,55,143,17,17,17,17,12,
+ 113,164,71,70,70,37,139,130,130,57,
70,17,17,17,17,96,19,172,168,184,
94,101,60,75,59,158,76,120,72,144,
143,175,139,16,164,120,103,69,21,139,
@@ -2188,7 +2198,7 @@ public class CPPSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
1,1,1,71,1,1,4,68,70,27,
1,1,68,73,73,73,118,73,1,27,
1,27,27,71,117,73,73,73,117,1,
- 73,1,73,73,73,72,4,6,1,1,
+ 73,1,73,73,73,72,4,1,1,6,
73,68,68,68,68,73,3,1,1,73,
73,3,1,117,73,1,1,1,27,73,
117,73,5,73,1,48,69,72,73,1,
@@ -2207,7 +2217,7 @@ public class CPPSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
154,154,154,313,98,96,137,50,313,106,
250,250,50,146,66,26,106,30,54,82,
154,22,98,33,63,250,250,250,250,230,
- 6,82,106,106,106,282,137,121,154,154,
+ 6,82,106,106,106,282,137,154,154,121,
106,250,250,250,250,146,250,30,54,24,
146,148,66,142,66,60,71,154,106,57,
63,140,137,250,82,154,1,106,251,137,
@@ -2243,47 +2253,47 @@ public class CPPSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
0,203,0,0,215,0,227,126,3,0,
126,0,0,0,0,0,227,126,3,216,
0,223,3,0,212,126,0,208,0,146,
- 0,176,166,127,0,10,0,0,0,214,
- 63,0,125,0,227,126,3,181,0,181,
- 0,2,0,0,126,0,0,0,0,0,
- 198,3,0,201,0,236,126,162,39,30,
- 0,178,127,59,62,0,196,128,0,128,
- 178,127,278,62,0,178,127,278,62,0,
- 178,127,69,123,59,0,236,126,162,59,
- 0,236,126,162,226,59,0,276,126,162,
- 123,305,56,0,276,126,162,305,56,0,
- 178,127,275,56,0,135,0,187,178,127,
- 275,243,0,136,0,178,127,275,243,0,
- 187,166,127,10,0,166,127,10,0,166,
- 127,0,93,136,0,268,126,145,0,268,
- 126,170,0,161,84,0,300,160,302,303,
- 3,81,0,126,171,0,302,303,3,81,
- 0,128,0,126,171,0,161,3,75,190,
- 80,0,126,128,0,190,80,0,108,2,
- 131,126,128,0,225,3,75,0,198,167,
- 0,33,169,0,167,0,175,33,169,0,
- 225,3,85,0,190,157,225,3,83,0,
- 62,171,0,225,3,83,0,126,171,62,
- 171,0,301,126,162,0,161,0,214,77,
- 0,30,171,0,161,106,158,0,30,169,
- 0,183,3,0,126,149,0,219,3,0,
- 214,63,265,0,161,63,0,183,3,297,
- 66,127,0,126,0,0,0,0,297,66,
- 127,0,2,145,126,0,0,0,0,147,
- 0,125,48,166,127,0,31,147,0,93,
- 136,31,147,0,220,178,127,0,146,31,
- 147,0,161,3,51,0,161,3,68,183,
- 55,42,0,183,55,42,0,20,2,131,
- 126,0,161,3,68,183,55,45,0,183,
- 55,45,0,161,3,68,183,55,47,0,
- 183,55,47,0,161,3,68,183,55,43,
- 0,183,55,43,0,219,3,125,187,166,
- 127,10,0,125,187,166,127,10,0,136,
- 2,0,126,0,219,3,124,258,166,127,
- 10,0,258,166,127,10,0,135,2,0,
- 126,0,219,3,135,0,219,3,139,0,
- 161,63,139,0,260,0,31,0,31,139,
- 0,165,0,134,0,161,3,0
+ 0,171,166,127,0,10,0,0,0,0,
+ 214,63,0,125,0,227,126,3,181,0,
+ 181,0,2,0,0,126,0,0,0,0,
+ 0,198,3,0,201,0,236,126,162,39,
+ 30,0,178,127,59,62,0,196,128,0,
+ 128,178,127,278,62,0,178,127,278,62,
+ 0,178,127,69,123,59,0,236,126,162,
+ 59,0,236,126,162,226,59,0,276,126,
+ 162,123,305,56,0,276,126,162,305,56,
+ 0,178,127,275,56,0,135,0,187,178,
+ 127,275,243,0,136,0,178,127,275,243,
+ 0,187,166,127,10,0,166,127,10,0,
+ 166,127,0,93,136,0,268,126,145,0,
+ 268,126,170,0,161,84,0,300,160,302,
+ 303,3,81,0,126,171,0,302,303,3,
+ 81,0,128,0,126,171,0,161,3,75,
+ 190,80,0,126,128,0,190,80,0,108,
+ 2,131,126,128,0,225,3,75,0,198,
+ 167,0,33,169,0,167,0,175,33,169,
+ 0,225,3,85,0,190,157,225,3,83,
+ 0,62,171,0,225,3,83,0,126,171,
+ 62,171,0,301,126,162,0,161,0,214,
+ 77,0,30,171,0,161,106,158,0,30,
+ 169,0,183,3,0,126,149,0,219,3,
+ 0,214,63,265,0,161,63,0,183,3,
+ 297,66,127,0,126,0,0,0,0,297,
+ 66,127,0,2,145,126,0,0,0,0,
+ 147,0,125,48,166,127,0,31,147,0,
+ 93,136,31,147,0,220,178,127,0,146,
+ 31,147,0,161,3,51,0,161,3,68,
+ 183,55,42,0,183,55,42,0,20,2,
+ 131,126,0,161,3,68,183,55,45,0,
+ 183,55,45,0,161,3,68,183,55,47,
+ 0,183,55,47,0,161,3,68,183,55,
+ 43,0,183,55,43,0,219,3,125,187,
+ 166,127,10,0,125,187,166,127,10,0,
+ 136,2,0,126,0,219,3,124,258,166,
+ 127,10,0,258,166,127,10,0,135,2,
+ 0,126,0,219,3,135,0,219,3,139,
+ 0,161,63,139,0,260,0,31,0,31,
+ 139,0,165,0,134,0,161,3,0
};
};
public final static char scopeRhs[] = ScopeRhs.scopeRhs;
@@ -2291,35 +2301,35 @@ public class CPPSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface ScopeState {
public final static char scopeState[] = {0,
- 4782,4860,4808,3545,0,3081,2894,1883,1839,0,
- 3672,3618,3560,3453,3399,3345,3291,3237,3183,2891,
- 2837,2672,0,779,0,1402,1359,1325,0,2679,
- 2452,0,3672,3618,3654,3518,3560,3453,3399,3345,
- 3291,3237,1081,3183,2891,2837,3675,875,0,4448,
- 3352,3728,0,4436,2843,0,785,660,0,4692,
- 4672,0,2551,997,0,4525,4692,3945,2990,4672,
- 2966,3528,4590,2798,2387,3915,4492,2629,2552,2513,
- 0,4712,4609,0,4712,4609,3935,4438,4428,3828,
- 4345,4335,4325,3818,0,4712,4609,3935,4438,4428,
- 3828,4345,4335,4325,3818,3672,3618,3560,3453,3399,
- 3345,3291,3237,3183,2891,2837,0,3358,3304,0,
- 2387,4525,3936,3945,2990,3191,2629,3348,3886,3316,
- 2842,2859,3023,3211,3210,0,666,578,0,1448,
- 0,1361,1317,1170,919,2990,2859,2966,2552,2513,
- 2433,2503,0,4541,535,2981,0,4800,4741,4724,
- 4720,4705,4575,3660,3594,3513,3509,4822,3431,3333,
- 4815,3967,3963,2013,3928,3269,3031,2536,2428,1278,
- 0,3018,2879,4800,4741,4724,2867,2320,4720,2314,
- 4705,4575,3660,3594,3513,3225,4044,3842,3509,3733,
- 4822,3424,3406,3378,3103,3431,3333,3093,3217,4815,
- 949,3967,625,3963,2013,3928,2600,3269,3031,2536,
- 4541,2540,2981,2428,1278,2224,2136,870,806,734,
- 2966,3528,4590,2798,2387,4525,3915,4692,3945,2990,
- 4492,2629,2552,4672,2513,1265,932,666,578,3107,
- 4303,4281,1184,2274,2356,2324,2473,2400,593,3160,
- 3134,2814,2742,2715,2649,3795,3772,629,3747,2769,
- 4259,4237,4215,4193,4171,4149,4127,4105,4083,4052,
- 4022,2017,2236,2186,2148,2098,2060,1046,1326,1282,
+ 3420,4913,4893,3698,0,3368,3977,2924,1839,0,
+ 3678,3621,3558,3456,3400,3344,3288,3232,3176,2883,
+ 2827,3000,0,2271,0,1359,1325,1091,0,2465,
+ 2452,0,3678,3621,4100,3257,3558,3456,3400,3344,
+ 3288,3232,3010,3176,2883,2827,3830,3035,0,3851,
+ 2848,3547,0,3477,2671,0,1436,660,0,4776,
+ 4710,0,2534,2319,0,4626,4776,4613,2983,4710,
+ 2958,3531,4691,4025,2387,3946,4593,2592,2552,2513,
+ 0,2838,2503,0,2838,2503,3966,4506,4496,3859,
+ 4413,4403,4393,3849,0,2838,2503,3966,4506,4496,
+ 3859,4413,4403,4393,3849,3678,3621,3558,3456,3400,
+ 3344,3288,3232,3176,2883,2827,0,3208,3187,0,
+ 2387,4626,3648,4613,2983,4704,2592,3431,3388,3427,
+ 3184,2569,818,3259,2751,0,666,578,0,921,
+ 0,1754,1317,1255,1170,2983,2569,2958,2552,2513,
+ 2434,2538,0,4645,535,2974,0,4843,4839,4823,
+ 4819,4805,4771,4756,3959,3614,3516,4904,3512,3378,
+ 4900,4522,4103,2013,3875,3320,3210,3012,2428,1278,
+ 0,3633,3024,4843,4839,4823,2684,2320,4819,2314,
+ 4805,4771,4756,3959,3614,3201,3563,3490,3516,3406,
+ 4904,2888,2833,2765,2752,3512,3378,2565,2545,4900,
+ 949,4522,625,4103,2013,3875,2440,3320,3210,3012,
+ 4645,2307,2974,2428,1278,2224,2136,870,806,734,
+ 2958,3531,4691,4025,2387,4626,3946,4776,4613,2983,
+ 4593,2592,2552,4710,2513,1265,932,666,578,3100,
+ 4371,4349,1184,2274,2356,2324,2473,2400,593,3153,
+ 3127,2804,2777,2721,2694,3826,3803,629,3778,3753,
+ 4327,4305,4283,4261,4239,4217,4195,4173,4151,4114,
+ 4053,2017,2236,2186,2148,2098,2060,1046,1326,1282,
1222,886,1967,1929,824,750,688,1886,1843,1800,
1757,1714,1671,1628,1585,1542,1499,1456,535,1413,
1369,1141,1002,959,1092,0
@@ -2348,42 +2358,42 @@ public class CPPSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
219,161,146,146,144,144,144,148,148,148,
148,147,147,150,149,149,153,152,154,161,
156,68,68,68,68,187,258,253,256,253,
- 212,127,176,162,310,275,305,275,127,178,
+ 212,127,171,162,310,275,305,275,127,178,
166,253,212,214,158,223,126,3,127,166,
205,3,298,167,151,260,187,127,178,166,
- 72,3,3,3,3,125,124,70,166,6,
- 126,166,230,125,124,127,123,162,127,166,
- 48,227,228,145,229,126,166,48,183,126,
- 126,4,220,5,48,161,161,161,161,3,
- 3,176,126,309,127,168,224,59,48,204,
- 62,170,312,125,124,231,231,178,162,126,
- 178,187,157,69,223,198,186,181,127,3,
- 126,70,227,187,157,262,265,63,179,4,
- 123,125,219,219,6,184,166,162,226,55,
- 48,278,280,126,3,181,231,231,126,126,
- 187,126,276,123,277,126,69,69,3,178,
- 166,198,126,212,157,125,126,3,63,161,
- 4,126,187,126,162,68,55,127,74,126,
- 212,311,72,289,198,124,127,126,126,126,
- 72,276,69,70,221,126,126,262,219,214,
- 128,236,30,48,170,64,59,62,238,126,
- 126,178,126,281,72,70,72,69,166,212,
- 314,224,22,127,126,227,221,39,126,3,
- 123,59,236,295,48,10,40,128,281,162,
- 293,127,294,70,127,22,315,178,60,157,
- 126,126,162,268,247,279,39,69,127,70,
- 68,55,230,230,282,126,70,178,3,178,
- 127,127,3,126,126,3,69,70,157,127,
- 178,126,69,69,126,301,79,77,1,161,
- 8,85,83,81,80,75,82,84,78,76,
- 59,74,219,178,178,320,221,236,151,162,
- 251,178,226,295,283,118,8,72,214,72,
- 3,3,3,190,3,123,161,123,177,70,
- 126,126,162,226,68,3,72,225,167,225,
- 303,145,75,225,126,126,40,90,319,167,
- 157,198,157,302,126,3,157,283,308,230,
- 157,157,126,69,190,160,268,161,189,70,
- 69,121,300,157,189,8,157
+ 72,3,3,3,3,125,124,70,166,9,
+ 6,126,166,230,125,124,127,123,162,127,
+ 166,48,227,228,145,229,126,166,48,183,
+ 126,126,4,220,5,48,161,161,161,161,
+ 3,3,171,171,309,127,168,224,59,48,
+ 204,62,170,312,125,124,231,231,178,162,
+ 126,178,187,157,69,223,198,186,181,127,
+ 3,126,70,227,187,157,262,265,63,179,
+ 4,123,125,219,219,6,126,166,162,226,
+ 55,48,278,280,126,3,181,231,231,126,
+ 126,187,126,276,123,277,126,69,69,3,
+ 178,166,198,126,212,157,125,126,3,63,
+ 161,4,171,184,187,126,162,68,55,127,
+ 74,126,212,311,72,289,198,124,127,126,
+ 126,126,72,276,69,70,221,126,126,262,
+ 219,214,126,128,236,30,48,170,64,59,
+ 62,238,126,126,178,126,281,72,70,72,
+ 69,166,212,314,224,22,127,126,227,221,
+ 39,126,3,123,59,236,295,48,10,40,
+ 128,281,162,293,127,294,70,127,22,315,
+ 178,60,157,126,126,162,268,247,279,39,
+ 69,127,70,68,55,230,230,282,126,70,
+ 178,3,178,127,127,3,126,126,3,69,
+ 70,157,127,178,126,69,69,126,301,79,
+ 77,1,161,8,85,83,81,80,75,82,
+ 84,78,76,59,74,219,178,178,320,221,
+ 236,151,162,251,178,226,295,283,118,8,
+ 72,214,72,3,3,3,190,3,123,161,
+ 123,177,70,126,126,162,226,68,3,72,
+ 225,167,225,303,145,75,225,126,126,40,
+ 90,319,167,157,198,157,302,126,3,157,
+ 283,308,230,157,157,126,69,190,160,268,
+ 161,189,70,69,121,300,157,189,8,157
};
};
public final static char inSymb[] = InSymb.inSymb;
@@ -2658,9 +2668,9 @@ public class CPPSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public final int getMaxNameLength() { return MAX_NAME_LENGTH; }
public final static int
- NUM_STATES = 537,
+ NUM_STATES = 540,
NT_OFFSET = 122,
- LA_STATE_OFFSET = 5933,
+ LA_STATE_OFFSET = 5984,
MAX_LA = 2147483647,
NUM_RULES = 534,
NUM_NONTERMINALS = 202,
@@ -2670,8 +2680,8 @@ public class CPPSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
IDENTIFIER_SYMBOL = 0,
EOFT_SYMBOL = 120,
EOLT_SYMBOL = 120,
- ACCEPT_ACTION = 5034,
- ERROR_ACTION = 5399;
+ ACCEPT_ACTION = 5085,
+ ERROR_ACTION = 5450;
public final static boolean BACKTRACK = true;
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPTemplateTypeParameterParser.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPTemplateTypeParameterParser.java
index abf6e595f02..89b76127a66 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPTemplateTypeParameterParser.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPTemplateTypeParameterParser.java
@@ -17,13 +17,20 @@ import lpg.lpgjavaruntime.*;
import java.util.*;
import org.eclipse.cdt.core.dom.ast.*;
+import org.eclipse.cdt.core.dom.lrparser.CPreprocessorAdapter;
+import org.eclipse.cdt.core.dom.lrparser.IDOMTokenMap;
import org.eclipse.cdt.core.dom.lrparser.IParser;
-import org.eclipse.cdt.core.dom.lrparser.IParserActionTokenProvider;
+import org.eclipse.cdt.core.dom.lrparser.ITokenCollector;
import org.eclipse.cdt.core.dom.lrparser.lpgextensions.FixedBacktrackingParser;
import org.eclipse.cdt.core.dom.lrparser.action.ScopedStack;
+import org.eclipse.cdt.core.parser.IScanner;
+import org.eclipse.cdt.core.dom.parser.IBuiltinBindingsProvider;
+import org.eclipse.cdt.core.index.IIndex;
+import org.eclipse.cdt.core.dom.lrparser.action.ITokenStream;
import org.eclipse.cdt.core.dom.lrparser.action.ITokenMap;
import org.eclipse.cdt.core.dom.lrparser.action.TokenMap;
+import org.eclipse.cdt.core.dom.lrparser.ISecondaryParser;
import org.eclipse.cdt.core.dom.ast.cpp.*;
import org.eclipse.cdt.internal.core.dom.parser.cpp.CPPNodeFactory;
@@ -32,7 +39,9 @@ import org.eclipse.cdt.core.dom.lrparser.action.cpp.CPPSecondaryParserFactory;
import org.eclipse.cdt.core.dom.ast.cpp.ICPPASTTemplateParameter;
-public class CPPTemplateTypeParameterParser extends PrsStream implements RuleAction , IParserActionTokenProvider, IParser< ICPPASTTemplateParameter >
+public class CPPTemplateTypeParameterParser extends PrsStream implements RuleAction, ITokenStream,
+ ITokenCollector, IParser< ICPPASTTemplateParameter >
+ , ISecondaryParser< ICPPASTTemplateParameter >
{
private static ParseTable prs = new CPPTemplateTypeParameterParserprs();
private FixedBacktrackingParser btParser;
@@ -170,7 +179,11 @@ public class CPPTemplateTypeParameterParser extends PrsStream implements RuleAct
private CPPBuildASTParserAction action;
private IASTCompletionNode compNode;
-public CPPTemplateTypeParameterParser() { // constructor
+
+public CPPTemplateTypeParameterParser(IScanner scanner, IDOMTokenMap tokenMap, IBuiltinBindingsProvider builtinBindingsProvider, IIndex index, Set<IParser.Options> options) {
+ initActions(options);
+ action.initializeTranslationUnit(scanner, builtinBindingsProvider, index);
+ CPreprocessorAdapter.runCPreprocessor(scanner, this, tokenMap);
}
private void initActions(Set<IParser.Options> options) {
@@ -189,10 +202,9 @@ public void addToken(IToken token) {
}
-public ICPPASTTemplateParameter parse(Set<IParser.Options> options) {
+public ICPPASTTemplateParameter parse() {
// this has to be done, or... kaboom!
setStreamLength(getSize());
- initActions(options);
final int errorRepairCount = -1; // -1 means full error handling
parser(null, errorRepairCount); // do the actual parse
@@ -235,12 +247,12 @@ public void setTokens(List<IToken> tokens) {
addToken(new Token(null, 0, 0, CPPTemplateTypeParameterParsersym.TK_EOF_TOKEN));
}
-public CPPTemplateTypeParameterParser(IParserActionTokenProvider parser) { // constructor
+public CPPTemplateTypeParameterParser(ITokenStream parser, Set<IParser.Options> options) { // constructor for creating secondary parser
+ initActions(options);
tokenMap = new TokenMap(CPPTemplateTypeParameterParsersym.orderedTerminalSymbols, parser.getOrderedTerminalSymbols());
}
-
public void ruleAction(int ruleNumber)
{
switch (ruleNumber)
@@ -1423,19 +1435,19 @@ public CPPTemplateTypeParameterParser(IParserActionTokenProvider parser) { // c
}
//
- // Rule 328: ptr_operator ::= pointer_hook * <openscope-ast> cv_qualifier_seq_opt
+ // Rule 328: ptr_operator ::= pointer_hook * pointer_hook <openscope-ast> cv_qualifier_seq_opt
//
case 328: { action. consumePointer(); break;
}
//
- // Rule 329: ptr_operator ::= pointer_hook &
+ // Rule 329: ptr_operator ::= pointer_hook & pointer_hook
//
case 329: { action. consumeReferenceOperator(); break;
}
//
- // Rule 330: ptr_operator ::= dcolon_opt nested_name_specifier pointer_hook * <openscope-ast> cv_qualifier_seq_opt
+ // Rule 330: ptr_operator ::= dcolon_opt nested_name_specifier pointer_hook * pointer_hook <openscope-ast> cv_qualifier_seq_opt
//
case 330: { action. consumePointerToMember(); break;
}
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPTemplateTypeParameterParserprs.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPTemplateTypeParameterParserprs.java
index b153907df19..92c2722a884 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPTemplateTypeParameterParserprs.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPTemplateTypeParameterParserprs.java
@@ -69,7 +69,7 @@ public class CPPTemplateTypeParameterParserprs implements lpg.lpgjavaruntime.Par
1,3,1,1,1,6,5,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,4,2,6,
+ 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,
@@ -92,444 +92,452 @@ public class CPPTemplateTypeParameterParserprs implements lpg.lpgjavaruntime.Par
4,1,2,5,5,3,3,1,4,3,
1,0,1,3,1,1,-126,0,0,0,
-2,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-483,0,
- 0,0,0,0,0,0,-3,0,-7,0,
- 0,0,0,0,-4,0,0,0,0,-8,
+ 0,0,0,0,0,0,0,0,-3,0,
+ 0,0,0,0,0,0,-7,0,-8,0,
+ 0,0,0,0,-4,0,0,0,0,-12,
-132,0,0,0,-22,0,0,0,0,0,
- 0,0,0,-433,-149,0,0,0,0,0,
+ 0,0,0,-436,-149,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-12,0,0,0,
- 0,0,0,0,0,0,-425,0,0,0,
+ 0,0,0,0,0,0,-16,0,0,0,
+ 0,0,0,0,0,0,-428,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,-16,0,0,0,0,0,0,0,
- 0,-91,-323,0,0,0,-261,0,-133,0,
- 0,0,0,0,0,0,0,0,0,0,
+ 0,0,-19,0,0,0,0,0,0,0,
+ 0,-91,-324,0,0,0,-262,0,-133,0,
+ 0,0,-182,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,-170,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-19,0,-55,0,0,0,0,0,-20,
- 0,0,-176,-326,0,-34,-26,0,0,0,
- 0,-271,0,0,0,-171,0,0,0,0,
+ 0,0,0,-20,0,0,0,0,-6,-420,
+ 0,0,0,0,0,-26,0,0,0,-186,
+ 0,0,0,-375,0,-171,0,0,0,0,
+ 0,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,-391,0,0,0,0,0,-27,
+ 0,-445,0,0,0,-176,0,-23,0,-28,
+ 0,-30,0,-196,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-327,0,-5,0,
+ 0,0,0,0,-344,0,-175,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-6,0,0,0,0,
- 0,0,0,-388,0,0,0,0,0,0,
- 0,-355,0,0,-45,0,0,0,0,0,
- 0,-373,0,-195,0,0,0,0,0,0,
- 0,0,0,0,0,0,-400,0,-5,0,
- 0,0,0,0,-128,0,-175,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-45,0,0,0,0,0,
+ 0,0,0,-194,0,0,-287,0,0,0,
+ 0,0,-294,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -23,0,0,0,-279,0,0,0,0,0,
- 0,0,-532,0,-85,-47,0,0,0,0,
- 0,0,-293,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,-214,0,-128,0,0,0,0,0,
+ -211,0,0,0,0,0,0,0,-49,0,
+ 0,-86,0,0,0,0,-398,0,0,0,
+ -217,0,0,0,-44,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-213,0,0,0,0,0,0,0,
- -210,0,0,0,0,0,0,0,0,0,
- -49,0,0,0,0,0,0,0,-27,0,
- -216,0,0,0,-186,0,0,0,0,0,
+ 0,-514,0,0,0,-535,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-511,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,-28,0,-30,0,0,0,0,0,0,
- -44,0,0,0,-533,0,0,0,-50,0,
+ 0,-50,0,0,0,0,0,0,0,-470,
+ 0,0,0,0,-536,0,0,0,-187,0,
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,-395,0,0,0,
- 0,0,-51,-472,0,0,0,-109,0,-345,
+ 0,0,0,0,0,0,-370,0,0,0,
+ 0,0,0,0,-252,0,0,0,0,0,
+ 0,0,-357,0,0,0,0,-109,0,-347,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-381,
- 0,-405,0,0,0,0,0,0,0,-37,
- 0,0,-83,0,0,-450,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-349,
+ 0,-408,0,0,0,0,0,0,0,0,
+ 0,0,-272,0,0,-453,0,0,0,0,
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,-39,0,-182,0,0,
- 0,0,0,0,0,0,0,0,0,-467,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-39,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-280,0,
0,0,0,-18,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,-53,0,0,0,-406,0,0,
- 0,0,0,-54,0,0,-81,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,-56,0,
- -68,0,0,0,0,0,-69,0,0,0,
- -342,-82,0,0,0,0,0,0,0,0,
+ 0,0,0,-51,0,-52,0,-246,0,0,
+ 0,-53,0,-384,0,0,-81,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,-54,0,
+ -183,0,0,0,0,0,0,0,0,-25,
+ -389,-82,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-70,0,-347,0,0,0,0,0,-404,
- -256,0,0,0,-204,0,0,0,0,0,
+ 0,0,0,-56,0,0,0,0,0,0,
+ 0,-68,0,-69,0,0,0,0,0,0,
+ 0,0,0,0,-205,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-71,0,0,0,
- 0,0,0,0,0,0,-72,0,0,0,
+ 0,0,0,0,0,0,-70,0,0,0,
+ 0,0,0,0,0,0,-71,0,-89,0,
0,0,0,0,0,0,0,-21,0,0,
- 0,-386,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,-214,0,-74,
+ 0,-407,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-215,0,-184,
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,0,0,0,0,-25,0,0,
- 0,0,0,-454,0,0,0,0,-75,0,
- 0,-481,0,0,-32,0,0,0,-76,0,
+ 0,0,0,0,0,-72,0,-188,0,0,
+ 0,0,0,-457,0,0,0,0,0,0,
+ 0,-484,0,0,-32,0,0,0,-73,0,
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,-77,0,0,
- 0,0,0,0,0,-78,0,-537,0,-286,
- 0,0,0,0,0,-80,0,0,-156,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-74,0,-409,0,-55,
+ 0,0,0,-75,0,-76,0,0,-156,0,
+ 0,0,-486,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-86,0,
- 0,0,0,0,0,0,-84,0,-87,0,
+ -77,0,0,0,0,0,0,0,-90,0,
+ -297,0,0,0,0,0,0,0,-540,0,
0,-157,0,0,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,-89,0,-94,0,0,0,0,0,-471,
- 0,-95,0,0,-158,0,0,0,-522,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-98,0,0,0,
- 0,0,0,0,-90,0,-105,0,0,0,
- 0,0,-113,-116,-131,0,0,-159,0,0,
- 0,-179,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-96,0,-180,
- 0,0,0,0,0,-188,0,-198,0,0,
- -160,0,0,0,-199,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,-200,0,0,0,0,0,0,0,
- -106,0,0,0,0,0,0,0,-201,-206,
- -207,0,0,-161,0,0,0,-208,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-209,0,0,0,0,
- 0,0,0,-221,0,-222,0,-108,0,0,
- 0,-223,0,-224,0,0,-162,0,0,0,
- -225,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,-227,0,-228,0,
- -110,0,0,0,-229,0,-230,0,0,-163,
- 0,0,0,-231,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,-232,0,0,0,0,0,0,0,-183,
- 0,-233,0,0,0,0,0,-234,-235,-236,
- 0,0,-164,0,0,0,-237,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-238,0,0,0,0,0,
- 0,0,-191,0,-239,0,0,0,0,0,
- -242,-243,-244,0,0,-165,0,0,0,-246,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-247,0,0,
- 0,0,0,0,0,-249,0,-252,0,0,
- 0,0,0,-257,-259,-260,0,0,-280,0,
- 0,0,-274,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,-266,0,
- -276,0,0,0,0,0,-277,-301,-302,0,
- 0,-290,0,0,0,-307,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-315,0,0,0,0,0,0,
- 0,-267,0,-316,0,0,0,0,0,-321,
- -322,-328,0,0,-527,0,0,0,-346,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-348,0,0,0,
- 0,0,0,0,-269,0,-92,0,0,0,
- 0,0,-193,0,0,0,0,-354,0,0,
- 0,-344,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-99,
- 0,0,0,0,0,0,0,-408,0,-365,
- 0,0,0,0,0,-390,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-369,0,0,0,0,
- 0,0,0,-177,0,0,0,-190,-370,0,
- 0,0,0,0,0,-391,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,0,0,-449,0,0,0,0,
- 0,0,0,-402,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-285,0,-376,0,0,0,0,
- 0,-335,0,0,0,-300,-254,0,0,0,
- 0,0,0,-458,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,
- 0,0,0,-291,0,0,0,0,0,0,
+ 0,0,0,-78,0,0,0,0,0,0,
+ 0,-96,0,-80,0,0,0,0,0,0,
+ -474,0,0,0,-158,0,0,0,-525,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,-108,0,
+ 0,0,0,0,-87,0,0,-159,0,0,
+ 0,-88,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-94,
+ 0,0,0,0,0,0,0,-106,0,-95,
+ 0,0,0,0,0,-98,-105,-113,0,0,
+ -160,0,0,0,-116,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,-131,0,0,0,0,0,0,0,
+ 0,0,0,0,-110,0,0,0,-179,0,
+ -180,0,0,-161,0,0,0,-189,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,-192,0,-200,0,0,0,0,
+ 0,-201,-202,-207,0,0,-162,0,0,0,
+ -208,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-209,0,
+ 0,0,0,0,0,0,-250,0,-210,0,
+ 0,0,0,0,-222,-223,-224,0,0,-163,
+ 0,0,0,-225,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,-254,
+ 0,-227,0,0,0,0,0,-228,-257,-229,
+ 0,0,-164,0,0,0,-230,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-231,0,0,0,0,0,
+ 0,0,-232,0,-233,0,0,0,0,0,
+ -234,-235,-236,0,0,-165,0,0,0,-237,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-238,0,0,
+ 0,0,0,0,0,-267,0,-239,0,0,
+ 0,0,0,-240,-243,-244,0,0,-281,0,
+ 0,0,-245,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ -247,0,0,0,0,0,0,0,-268,0,
+ -248,0,0,0,0,0,-253,-258,-260,0,
+ 0,-291,0,0,0,-261,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,-270,0,-276,0,0,0,0,0,-277,
+ -278,-302,0,0,-530,0,0,0,-303,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-308,0,0,0,
+ 0,0,0,0,-286,0,-316,0,0,0,
+ 0,0,-269,0,0,0,0,-356,0,0,
+ 0,-346,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-203,
+ 0,0,0,0,0,0,0,-411,0,-37,
+ 0,0,0,0,0,-393,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-317,0,0,0,0,
+ 0,0,0,-177,0,0,0,-191,-322,0,
+ 0,0,0,0,0,-394,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-99,0,0,
+ 0,0,0,0,0,-452,0,0,0,0,
+ 0,0,0,-405,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-292,0,0,0,0,0,0,
+ 0,-337,0,0,0,-301,-255,0,0,0,
+ 0,0,0,-461,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,0,0,-293,0,0,0,0,0,0,
0,-167,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-292,0,-524,0,0,0,-218,0,0,
- 0,-379,0,0,0,0,0,0,0,0,
+ 0,-300,0,-475,0,0,0,-219,0,0,
+ 0,-483,0,0,0,0,0,0,0,0,
0,-154,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-173,0,-93,0,-152,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-311,0,0,
- 0,0,0,0,0,0,0,-153,0,0,
- 0,-393,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-399,
- 0,0,0,0,0,0,0,-409,0,0,
+ 0,0,0,-323,0,-152,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -185,0,0,0,0,-13,0,0,0,0,
- 0,0,0,0,0,0,0,0,-289,-298,
- -36,-114,-442,0,0,0,0,-33,0,0,
+ 0,0,0,0,0,0,0,-93,0,0,
+ 0,0,0,0,0,-83,0,-153,0,0,
+ 0,-315,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -10,0,-100,-314,0,0,0,0,0,-525,
- 0,0,-194,0,0,0,0,0,0,0,
- -407,-410,0,0,0,0,0,-353,0,0,
- -444,0,0,0,0,0,-411,0,-41,0,
+ 0,0,0,0,0,0,0,-412,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-441,0,0,0,0,0,0,0,
+ -329,-447,0,0,0,-13,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-102,-348,
+ -350,-367,0,0,-388,0,0,0,0,-100,
+ 0,0,0,0,0,0,0,-92,0,-527,
+ 0,-97,0,0,0,0,0,0,0,-168,
+ 0,0,-10,0,-173,-174,0,-195,0,0,
+ 0,0,-1,0,0,0,0,0,0,0,
+ -528,0,-371,-114,0,0,0,0,0,0,
+ 0,0,-33,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-377,0,0,0,
+ 0,0,-477,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-101,-31,0,0,0,
+ 0,-124,0,0,0,0,0,-46,0,0,
+ 0,0,-372,0,0,-213,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-379,
+ 0,-382,-396,0,0,0,0,0,0,0,
+ 0,0,-273,0,0,0,0,0,0,0,
+ 0,0,-402,0,0,0,0,0,0,-279,
+ 0,0,0,0,0,-410,-150,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-413,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,-306,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-143,0,0,0,-414,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-417,0,0,
+ 0,0,-58,0,0,0,-478,0,0,0,
+ -421,0,-444,0,0,-251,-41,0,-423,0,
+ 0,0,0,0,-437,0,0,-313,0,0,
+ 0,-325,0,0,0,-305,0,0,0,0,
+ 0,-330,0,0,0,0,0,-125,-144,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-414,-418,
- 0,0,0,0,-272,0,0,0,0,-385,
0,0,0,0,0,0,0,0,0,0,
- -150,0,0,0,0,0,0,0,0,0,
+ -460,0,0,0,0,-145,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-187,0,0,0,0,0,-151,0,
- 0,0,-264,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-462,0,0,
+ 0,0,-138,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-464,0,0,0,0,0,
+ -454,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-181,0,0,0,-146,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,0,0,0,0,-143,
- 0,0,0,-374,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-58,0,0,0,
- -420,-101,-288,0,0,0,-278,0,0,0,
- 0,0,-434,-303,0,0,0,0,0,0,
- 0,0,0,0,0,-296,-268,0,0,0,
- 0,0,0,0,-135,-457,0,-459,0,0,
- 0,0,-144,0,0,0,0,0,0,0,
+ 0,0,0,0,-443,-123,-304,0,0,0,
+ -34,0,0,0,0,0,0,0,-403,0,
+ 0,0,-221,0,0,-283,0,-309,-310,0,
+ 0,0,0,-465,0,0,0,-331,0,0,
+ 0,-459,0,0,0,0,-364,0,0,0,
+ 0,0,0,-466,0,0,0,0,0,0,
+ 0,-366,-467,0,-112,0,0,0,0,-178,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-145,
+ 0,0,-469,-429,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-311,0,0,-471,
+ 0,0,0,0,-487,0,-295,0,0,0,
+ 0,0,0,0,0,0,-529,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ -265,-14,0,0,0,-169,0,0,0,0,
+ -103,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-107,0,0,0,0,0,-35,
+ -290,0,0,-48,-115,0,-296,0,0,0,
+ -334,0,0,-354,0,0,0,0,0,0,
+ 0,-336,-488,0,-135,0,0,0,0,0,
+ -339,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,-490,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-138,0,0,0,
+ -418,-266,-390,0,0,0,0,-495,0,0,
+ 0,0,0,0,0,-499,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ -511,0,0,-15,0,0,0,0,0,0,
+ 0,0,0,0,-519,0,-531,-298,0,0,
+ 0,0,0,0,-147,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,-31,0,0,
- 0,-146,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-36,0,0,0,
+ -148,0,0,0,-197,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-124,0,0,0,0,-440,-125,
- -178,0,0,-468,-172,-415,-461,0,-196,0,
- 0,0,-174,0,0,0,-462,0,0,-463,
- 0,-197,-529,-417,0,0,0,0,0,-375,
- 0,0,0,0,-464,-456,0,0,0,0,
+ 0,0,-468,0,0,0,0,-312,0,0,
+ 0,0,-198,-204,-541,0,0,-289,0,0,
+ 0,-341,0,0,0,0,0,0,0,0,
+ 0,0,0,-343,0,0,-355,0,0,-489,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-466,-15,0,0,-166,
+ 0,0,0,0,0,0,0,-38,0,0,
+ -378,0,0,0,0,0,-435,-216,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-484,-485,0,0,
+ -259,0,0,0,-491,0,0,0,0,0,
+ 0,0,0,0,-432,0,-220,-241,0,0,
+ -332,0,-406,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-38,-123,0,0,0,0,0,-270,
+ 0,-505,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -526,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-487,-14,0,0,0,-40,
- 0,0,-492,-496,-103,0,0,0,0,0,
- 0,0,0,0,0,0,0,-508,-394,0,
- 0,0,0,0,0,-516,-29,0,-212,0,
- 0,-102,-253,-528,-48,0,0,-245,0,0,
- 0,0,0,0,0,-203,-538,0,0,0,
- 0,0,-413,0,-412,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-220,
- 0,0,-364,0,0,0,0,0,-387,0,
- -215,0,0,0,0,0,0,0,0,0,
+ 0,-419,-397,0,0,0,0,0,-333,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-258,0,0,0,-97,0,0,0,0,
- -265,0,0,0,0,0,0,0,0,0,
- -350,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-455,0,-518,0,0,0,
+ 0,0,0,0,0,0,-29,0,-365,-17,
+ 0,0,0,0,0,0,-463,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -42,0,0,0,0,0,0,0,-147,0,
+ 0,0,0,-520,0,0,0,0,-271,0,
+ 0,-373,0,0,0,0,0,0,0,0,
+ 0,0,0,-374,0,0,-458,0,-383,0,
+ 0,-40,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-416,0,0,0,
+ 0,0,0,0,0,0,0,0,-352,0,
+ -190,0,0,0,-193,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-522,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-532,-134,-242,0,0,
+ 0,0,0,0,0,-524,-9,0,0,0,
+ 0,-513,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -403,0,0,0,-148,0,0,0,-295,0,
+ -353,0,0,-42,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,
- 0,0,0,0,0,0,-465,0,0,0,
- 0,-423,0,0,0,0,0,-107,0,0,
- 0,-1,-428,0,-297,0,0,-17,0,0,
+ -537,0,0,0,0,0,-431,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-486,0,0,0,0,0,0,
+ 0,-415,0,-426,0,-288,0,0,0,0,
+ 0,-427,0,0,0,0,0,0,0,0,
+ 0,-11,0,0,0,0,0,0,0,-480,
+ 0,0,0,0,0,-542,0,0,0,0,
+ 0,0,0,0,0,0,0,-326,0,0,
+ 0,0,0,0,0,0,0,0,-358,0,
+ 0,0,-359,-314,0,0,0,-434,-360,0,
+ -361,0,-439,0,0,0,0,0,0,0,
+ -442,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-313,0,-474,0,
0,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,-488,-219,0,
- -250,0,0,-349,0,0,-168,0,0,0,
+ -139,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -240,-352,0,0,0,0,0,0,0,0,
- 0,-294,-351,0,-502,0,0,0,0,0,
- -432,-452,-498,0,0,0,0,0,0,0,
- 0,0,0,0,-9,-384,0,0,0,0,
- 0,0,-35,0,0,0,0,0,0,0,
+ 0,0,-501,0,0,-141,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-515,0,
- 0,0,0,0,-299,0,0,0,0,0,
- 0,-241,0,0,0,0,0,0,0,0,
- 0,0,0,0,-475,0,0,0,0,0,
- 0,0,0,0,0,-517,0,0,0,0,
- -380,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-335,0,-142,
+ 0,0,0,-472,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-426,0,0,0,0,0,0,
+ 0,-338,0,-400,-494,0,0,0,0,-401,
+ 0,-386,-424,-430,-362,0,-363,0,0,0,
+ 0,0,0,0,-438,0,0,-482,-450,-473,
+ 0,0,-376,0,0,0,-476,0,0,0,
+ -481,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-328,0,0,-500,
+ 0,0,0,0,-485,0,0,0,0,0,
+ 0,0,0,0,-497,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-392,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-312,0,0,0,-304,0,0,0,
- 0,0,-460,0,0,0,0,0,0,0,
- -519,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-262,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-169,
- 0,-469,-521,0,0,-455,0,-324,0,0,
- 0,0,0,-104,0,0,0,-329,0,0,
- 0,0,0,0,0,-112,0,0,0,0,
- 0,0,0,0,0,-111,0,0,0,0,
+ 0,0,0,0,0,0,0,-451,0,-502,
+ -526,0,0,0,0,-510,0,0,0,0,
+ -404,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,0,0,
- -331,-134,-534,-332,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-480,0,0,
- -330,0,0,0,0,-362,0,0,0,-251,
- 0,0,0,-308,0,0,0,0,0,-539,
- 0,0,0,0,0,0,0,-510,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-287,0,0,0,0,0,
+ 0,0,-517,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-498,0,
+ -503,0,0,-521,0,0,0,0,0,0,
+ 0,0,0,0,-61,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -309,0,0,0,0,0,0,0,0,0,
- 0,0,0,-333,0,0,0,0,0,0,
- 0,0,0,0,-325,0,0,0,0,0,
- 0,0,0,0,-139,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-506,
+ -508,0,0,0,0,-62,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-141,
0,0,0,0,0,0,0,0,0,0,
+ -512,0,0,0,0,0,-63,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-142,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-64,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-336,0,-337,-491,0,
- -356,0,0,0,-11,-383,-334,-421,0,0,
- -360,-339,0,0,0,0,0,0,0,-341,
- 0,-363,-416,0,0,0,0,0,0,-371,
- 0,-317,0,0,-357,0,0,0,0,-358,
0,0,0,0,0,0,0,0,0,0,
- -470,0,0,0,0,0,0,0,0,0,
- -327,0,0,-372,0,0,0,0,0,0,
+ -65,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,-66,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-389,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-424,0,
- 0,-448,0,0,0,0,-523,-431,0,-436,
- 0,0,0,-439,0,0,0,0,-482,-60,
+ 0,0,0,0,-67,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-127,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-359,0,0,0,0,0,
- 0,0,0,0,0,-479,0,-497,0,0,
- -499,0,-507,-514,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-494,0,0,
- 0,0,0,0,0,0,0,0,-61,0,
+ 0,0,0,0,0,0,0,0,-136,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -397,-248,0,0,0,0,0,0,0,-62,
+ -137,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,0,0,0,0,0,0,0,0,
- 0,0,0,0,-398,0,0,0,0,0,
- -63,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-284,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,0,0,0,0,-59,0,0,0,
+ -515,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-340,-166,-516,
+ -533,0,0,-534,-538,0,0,-380,-539,0,
+ -446,0,0,0,0,0,0,-385,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-65,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-66,0,0,0,
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,0,0,
0,0,0,0,0,0,0,0,0,0,
- -127,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-136,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-137,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-205,0,0,0,
+ -433,0,0,0,0,-318,0,0,0,0,
+ -441,0,0,0,0,0,0,0,0,0,
+ -118,0,0,0,0,-104,0,0,0,0,
+ 0,0,0,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,-283,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -59,0,0,0,-427,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-338,-435,-447,-495,0,-473,-478,-500,-503,
- -118,-377,-505,-509,0,0,0,0,0,0,
- 0,-382,0,0,-512,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,-307,0,0,
0,0,0,0,0,0,0,0,0,0,
+ -47,0,0,0,0,0,-345,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-395,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-518,0,0,
- 0,0,0,0,-513,0,0,0,0,0,
- 0,0,0,0,-530,0,0,0,0,0,
- 0,0,0,0,-430,0,0,0,0,-319,
- -531,-535,0,0,-438,0,0,0,0,-320,
- 0,-536,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,-172,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,-43,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-306,0,
+ 0,0,0,0,-185,0,0,0,0,0,
+ 0,0,0,0,-351,0,0,0,0,0,
+ 0,-212,0,0,0,0,0,0,-263,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,0,0,0,0,0,0,
- 0,-343,0,0,0,0,0,0,0,0,
- 0,0,0,0,-392,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-361,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-501,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-504,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-43,0,0,0,0,0,0,0,
- 0,0,-119,0,0,0,0,-46,0,0,
- 0,0,0,0,-184,0,0,0,0,0,
+ 0,0,0,-381,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -115,0,0,0,0,0,0,0,0,0,
+ 0,0,-218,0,0,0,-342,0,0,0,
+ 0,0,0,0,-399,0,0,0,0,0,
0,0,0,0,0,0,0,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,-378,0,0,0,0,
+ 0,-425,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,-448,0,0,
+ 0,0,0,0,-369,0,0,0,0,0,
+ 0,0,0,0,0,0,-449,0,0,0,
+ 0,-456,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-111,0,0,0,
+ 0,0,0,0,-509,-57,0,-117,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-263,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-181,0,0,
- 0,0,0,-401,0,0,0,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,-130,0,0,
+ 0,0,0,-122,0,0,0,0,0,0,
+ 0,0,0,0,0,-256,0,0,0,0,
+ -274,0,0,0,0,0,0,0,-282,0,
+ 0,0,0,0,0,0,0,0,0,-492,
+ 0,0,0,0,-493,0,0,0,0,0,
+ 0,-496,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-189,0,0,0,-192,0,0,0,
- 0,0,-366,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-211,0,
- 0,0,-217,0,0,0,0,0,0,0,
- 0,0,0,-506,0,0,0,0,0,0,
- 0,0,-340,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-396,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,0,0,0,-422,0,0,
+ 0,0,0,0,0,-119,-120,0,0,0,
+ 0,0,0,0,0,0,0,0,-121,0,
+ 0,-285,0,0,0,0,0,0,0,0,
+ -479,0,-320,0,0,-504,0,0,0,0,
+ 0,0,0,0,-321,0,0,0,0,-368,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-437,0,0,0,-445,0,0,
- 0,0,0,0,0,-446,0,0,0,0,
- 0,0,0,-57,0,0,0,0,0,0,
- 0,0,-453,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-523,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-117,0,0,0,0,-130,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,-122,0,0,0,0,0,0,
- -367,0,0,0,0,0,0,0,-255,0,
- 0,0,0,-273,0,0,0,0,0,0,
- 0,-429,0,0,0,0,0,0,-281,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-489,-120,0,0,0,
- 0,0,0,0,0,-490,0,0,0,0,
- -121,0,0,0,0,-493,0,0,0,0,
- 0,0,0,0,-284,0,0,0,0,-520,
- 0,0,0,0,0,0,0,0,0,-476,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
@@ -543,7 +551,7 @@ public class CPPTemplateTypeParameterParserprs implements lpg.lpgjavaruntime.Par
0,0,0,0,0,0,0,0,0,0,
0,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;
@@ -574,19 +582,19 @@ public class CPPTemplateTypeParameterParserprs implements lpg.lpgjavaruntime.Par
66,56,56,179,179,70,70,70,103,103,
180,180,71,71,71,181,181,72,72,72,
72,72,73,73,84,84,84,84,84,84,
- 84,84,49,49,49,49,49,117,117,115,
- 115,50,182,22,22,22,22,22,48,48,
+ 84,84,50,50,50,50,50,117,117,115,
+ 115,51,182,22,22,22,22,22,48,48,
87,87,87,87,87,152,152,147,147,147,
147,147,148,148,148,149,149,149,150,150,
150,151,151,151,88,88,88,88,88,89,
89,89,13,13,13,13,13,13,13,13,
13,13,13,98,121,121,121,121,121,121,
119,119,119,153,120,120,183,155,155,154,
- 154,123,123,104,79,79,80,81,52,47,
- 156,156,53,51,86,86,157,157,146,146,
+ 154,123,123,104,79,79,80,81,53,47,
+ 156,156,54,52,86,86,157,157,146,146,
124,125,125,126,76,76,158,158,63,63,
63,60,60,59,64,64,75,75,58,58,
- 58,54,90,90,100,99,99,62,62,61,
+ 58,49,90,90,100,99,99,62,62,61,
61,55,55,45,101,101,101,93,93,93,
94,94,95,95,95,96,96,105,105,105,
107,107,106,106,202,202,91,91,185,185,
@@ -606,496 +614,504 @@ public class CPPTemplateTypeParameterParserprs implements lpg.lpgjavaruntime.Par
82,82,173,173,133,133,112,112,112,112,
112,112,3,134,134,132,132,113,113,85,
78,74,161,161,114,114,197,197,197,135,
- 135,127,127,198,198,174,174,1119,35,1696,
- 1678,1101,4669,27,30,31,992,994,26,28,
- 1671,25,23,50,1221,106,76,77,108,2517,
- 1227,1297,1262,1340,1307,1399,1350,245,1438,675,
- 1409,273,1446,1456,143,415,35,396,158,144,
- 761,1472,35,939,32,2074,4673,27,30,31,
- 992,994,57,28,1725,3070,35,939,32,232,
- 2627,27,30,31,992,994,26,28,1219,25,
- 23,50,1221,106,76,77,108,1174,1227,1297,
- 1262,1340,1307,1782,235,230,231,502,35,1001,
- 388,3070,35,939,32,274,2627,27,30,31,
- 992,994,26,28,1219,25,23,50,1221,106,
- 76,77,108,1392,1712,242,245,248,251,1126,
- 354,431,1350,2311,35,277,2805,64,1090,1783,
- 35,939,32,523,4673,27,30,31,992,994,
- 56,28,1670,569,3283,2411,2893,2930,3071,4493,
- 2253,35,939,32,2926,2627,27,30,31,992,
- 994,26,28,1219,25,23,50,1221,106,76,
- 77,108,343,1227,1297,1262,1340,1307,1399,1350,
- 61,1438,1160,1409,1102,1446,1456,143,3536,4834,
- 1178,517,144,1648,2523,2857,1326,502,1524,1499,
- 34,3464,502,35,282,518,2253,35,939,32,
- 2926,2627,27,30,31,992,994,26,28,1219,
- 25,23,50,1221,106,76,77,108,343,1227,
- 1297,1262,1340,1307,1399,1350,150,1438,312,1409,
- 3275,1446,1456,143,155,35,453,517,144,4719,
- 1577,2857,502,1954,332,155,35,279,3922,865,
- 3486,518,2559,513,1979,35,939,32,60,4854,
- 27,30,31,992,994,26,28,2523,511,415,
- 35,396,1841,2644,1842,1775,2935,2253,35,939,
- 32,2926,2627,27,30,31,992,994,26,28,
- 1219,25,23,50,1221,106,76,77,108,343,
- 1227,1297,1262,1340,1307,1399,1350,443,1438,513,
- 1409,2086,1446,1456,143,502,35,1971,517,144,
- 42,1868,2857,494,3003,150,1326,2050,1843,3227,
- 1842,3464,518,2461,35,939,32,2926,2627,27,
- 30,31,992,994,26,28,1219,25,23,50,
- 1221,106,76,77,108,343,1227,1297,1262,1340,
- 1307,1399,1350,2419,1438,288,1409,2926,1446,1456,
- 143,155,35,279,517,144,4869,580,2857,356,
- 1577,415,35,396,332,343,353,531,518,1635,
- 513,1979,35,939,32,413,4854,27,30,31,
- 992,994,59,28,446,2510,2631,3374,1450,1850,
- 2050,1842,2596,35,939,32,2412,2627,27,30,
- 31,992,994,26,28,1219,25,23,50,1221,
- 106,76,77,108,2081,1227,1297,1262,1340,1307,
- 1399,1350,1809,1438,1895,1409,514,1446,1456,143,
- 913,2070,3866,379,144,2322,35,939,32,243,
- 2627,27,30,31,992,994,26,28,1219,25,
- 23,50,1221,106,76,77,108,322,1227,1297,
- 1262,1340,1307,1399,1350,381,1438,228,1409,1584,
- 1446,1456,143,2363,1795,3866,379,144,2159,2098,
- 3070,35,939,32,1919,2627,27,30,31,992,
- 994,26,28,1219,25,23,50,1221,106,76,
- 77,108,1448,1227,1297,1262,1340,1307,1399,1350,
- 2220,1438,2559,1409,2824,1446,1497,164,1833,2174,
- 1795,385,3528,1010,390,427,2528,35,939,32,
- 3868,2627,27,30,31,992,994,26,28,1219,
- 25,23,50,1221,106,76,77,108,2171,1227,
- 1297,1262,1340,1307,1399,1350,1908,1438,386,1409,
- 1661,1446,1456,143,386,3528,3866,379,144,438,
- 502,3888,423,70,2836,35,939,32,3817,2627,
- 27,30,31,992,994,26,28,1219,25,23,
- 50,1221,106,76,77,108,2428,1227,1297,1262,
- 1340,1307,1399,1350,2435,1438,326,1409,2559,1446,
- 1456,143,1878,2637,2469,373,144,2836,35,939,
- 32,2222,2627,27,30,31,992,994,26,28,
- 1219,25,23,50,1221,106,76,77,108,355,
- 1227,1297,1262,1340,1307,1399,1350,531,1438,1475,
- 1409,2624,1446,1456,143,377,3528,585,373,144,
- 3809,2320,2836,35,939,32,2644,2627,27,30,
- 31,992,994,26,28,1219,25,23,50,1221,
- 106,76,77,108,865,1227,1297,1262,1340,1307,
- 1399,1350,2247,1438,2492,1409,324,1446,1456,143,
- 322,2126,372,373,144,2836,35,939,32,1708,
- 2627,27,30,31,992,994,26,28,1219,25,
- 23,50,1221,106,76,77,108,236,1227,1297,
- 1262,1340,1307,1399,1350,323,1438,2075,1409,404,
- 1446,1456,143,531,3138,371,158,144,2664,35,
- 939,32,2320,2627,27,30,31,992,994,26,
- 28,1219,25,23,50,1221,106,76,77,108,
- 846,1227,1297,1262,1340,1307,1399,1350,150,1438,
- 1236,1409,1275,1446,1497,164,2394,35,939,32,
- 369,2627,27,30,31,992,994,26,28,1219,
- 25,23,50,1221,106,76,77,108,3575,1227,
- 1297,1262,1340,1307,1399,1350,71,1438,2154,1409,
- 3009,1446,1456,143,502,35,293,142,144,1360,
- 447,327,502,35,293,2078,35,939,32,142,
- 1093,41,30,31,992,994,2836,35,939,32,
- 1670,2627,27,30,31,992,994,26,28,1219,
- 25,23,50,1221,106,76,77,108,1251,1227,
- 1297,1262,1340,1307,1399,1350,214,1438,494,1409,
- 2047,1446,1456,143,3761,421,1379,155,144,2836,
- 35,939,32,325,2627,27,30,31,992,994,
- 26,28,1219,25,23,50,1221,106,76,77,
- 108,3723,1227,1297,1262,1340,1307,1399,1350,150,
- 1438,447,1409,3450,1446,1456,143,1500,3829,2495,
- 154,144,2836,35,939,32,4209,2627,27,30,
- 31,992,994,26,28,1219,25,23,50,1221,
- 106,76,77,108,1328,1227,1297,1262,1340,1307,
- 1399,1350,150,1438,2287,1409,690,1446,1456,143,
- 502,2934,2388,153,144,2836,35,939,32,2658,
- 2627,27,30,31,992,994,26,28,1219,25,
- 23,50,1221,106,76,77,108,1789,1227,1297,
- 1262,1340,1307,1399,1350,150,1438,1627,1409,746,
- 1446,1456,143,1333,1271,1446,152,144,2836,35,
- 939,32,2052,2627,27,30,31,992,994,26,
- 28,1219,25,23,50,1221,106,76,77,108,
- 380,1227,1297,1262,1340,1307,1399,1350,150,1438,
- 1716,1409,827,1446,1456,143,1377,93,418,151,
- 144,2836,35,939,32,590,2627,27,30,31,
- 992,994,26,28,1219,25,23,50,1221,106,
- 76,77,108,848,1227,1297,1262,1340,1307,1399,
- 1350,150,1438,523,1409,4515,1446,1456,143,1822,
- 1907,2249,150,144,2836,35,939,32,3343,2627,
- 27,30,31,992,994,26,28,1219,25,23,
- 50,1221,106,76,77,108,3269,1227,1297,1262,
- 1340,1307,1399,1350,408,1438,580,1409,1102,1446,
- 1456,143,1459,4643,1791,149,144,2836,35,939,
- 32,1863,2627,27,30,31,992,994,26,28,
- 1219,25,23,50,1221,106,76,77,108,932,
- 1227,1297,1262,1340,1307,1399,1350,1616,1438,1881,
- 1409,1102,1446,1456,143,1911,4647,2280,148,144,
- 2836,35,939,32,2344,2627,27,30,31,992,
- 994,26,28,1219,25,23,50,1221,106,76,
- 77,108,2044,1227,1297,1262,1340,1307,1399,1350,
- 150,1438,2156,1409,2963,1446,1456,143,2696,1355,
- 1502,147,144,2836,35,939,32,400,2627,27,
- 30,31,992,994,26,28,1219,25,23,50,
- 1221,106,76,77,108,56,1227,1297,1262,1340,
- 1307,1399,1350,150,1438,472,1409,2900,1446,1456,
- 143,1825,1975,2168,146,144,2836,35,939,32,
- 2381,2627,27,30,31,992,994,26,28,1219,
- 25,23,50,1221,106,76,77,108,2124,1227,
- 1297,1262,1340,1307,1399,1350,150,1438,2420,1409,
- 3109,1446,1456,143,1002,2500,2082,145,144,2836,
- 35,939,32,2454,2627,27,30,31,992,994,
- 26,28,1219,25,23,50,1221,106,76,77,
- 108,2484,1227,1297,1262,1340,1307,1399,1350,150,
- 1438,2485,1409,984,1446,1456,143,2491,2452,2567,
- 159,144,2836,35,939,32,2516,2627,27,30,
- 31,992,994,26,28,1219,25,23,50,1221,
- 106,76,77,108,2387,1227,1297,1262,1340,1307,
- 1399,1350,150,1438,2423,1409,2338,1446,1456,143,
- 2518,2551,2347,140,144,2953,35,939,32,2486,
- 2627,27,30,31,992,994,26,28,1219,25,
- 23,50,1221,106,76,77,108,1323,1227,1297,
- 1262,1340,1307,1399,1350,150,1438,1010,1409,3187,
- 1446,1456,143,1995,35,277,189,144,3070,35,
- 939,32,1621,2627,27,30,31,992,994,26,
- 28,1219,25,23,50,1221,106,76,77,108,
- 1103,1227,1297,1262,1340,1307,1399,1350,1897,1438,
- 2525,1409,4305,1446,1497,164,3070,35,939,32,
- 402,2627,27,30,31,992,994,26,28,1219,
- 25,23,50,1221,106,76,77,108,2515,1227,
- 1297,1262,1340,1307,1399,1350,2637,1438,3818,1409,
- 498,1446,1497,164,2131,35,939,32,1795,2583,
- 40,30,31,992,994,2094,3070,35,939,32,
- 292,2627,27,30,31,992,994,26,28,1219,
- 25,23,50,1221,106,76,77,108,1341,1227,
- 1297,1262,1340,1307,1399,1350,150,1438,2005,1409,
- 1275,1446,1497,164,3070,35,939,32,422,2627,
- 27,30,31,992,994,26,28,1219,25,23,
- 50,1221,106,76,77,108,4208,1227,1297,1262,
- 1340,1307,1399,1350,150,1438,1179,1409,734,1446,
- 1497,164,2131,35,939,32,1795,2064,2604,30,
- 31,992,994,2094,3125,35,939,32,425,2627,
- 27,30,31,992,994,26,28,1219,25,23,
- 50,1221,106,76,77,108,2276,1227,1297,1262,
- 1340,1307,1399,1350,150,1438,3698,1409,3511,1446,
- 1497,164,3070,35,939,32,3143,2627,27,30,
- 31,992,994,26,28,1219,25,23,50,1221,
- 106,76,77,108,389,1227,1297,1262,1340,1307,
- 1399,1350,150,1438,1795,1409,3514,1835,1987,35,
- 939,32,2590,4854,27,30,31,992,994,58,
- 28,2094,3070,35,939,32,2925,2627,27,30,
- 31,992,994,26,28,1219,25,23,50,1221,
- 106,76,77,108,2824,1227,1297,1262,1340,1307,
- 1399,1350,1010,1438,1982,1807,3070,35,939,32,
- 525,2627,27,30,31,992,994,26,28,1219,
- 25,23,50,1221,106,76,77,108,2081,1227,
- 1297,1262,1340,1307,1399,1350,497,1799,3070,35,
- 939,32,2560,2627,27,30,31,992,994,26,
- 28,1219,25,23,50,1221,106,76,77,108,
- 2591,1227,1297,1262,1340,1307,1399,1800,1608,35,
- 939,32,3224,4598,27,30,31,992,994,339,
- 28,502,35,3041,2563,460,1638,35,939,32,
- 736,2768,27,30,31,992,994,339,28,2243,
- 1341,1232,1367,502,35,1001,388,3464,1719,35,
- 939,32,2962,2768,27,30,31,992,994,339,
- 28,150,1577,1982,2064,2926,332,319,1388,321,
- 1795,314,1191,502,35,1499,276,452,391,427,
- 351,2618,2552,343,313,319,1388,321,2064,314,
- 1191,502,35,1001,388,350,1577,2584,4402,69,
- 333,352,730,232,2094,2182,2857,319,1388,321,
- 2824,314,1191,843,35,453,509,352,4719,344,
- 585,861,349,352,2632,434,524,722,244,230,
- 231,284,306,310,594,346,585,861,349,1564,
- 2585,344,585,861,349,502,35,1499,278,2433,
- 2131,35,939,32,3261,285,2806,30,31,992,
- 994,3070,35,939,32,2643,2627,27,30,31,
- 992,994,26,28,1219,25,23,50,1221,106,
- 76,77,108,2050,1227,1297,1262,1340,1792,3070,
- 35,939,32,413,2627,27,30,31,992,994,
- 26,28,1219,25,23,50,1221,106,76,77,
- 108,366,1227,1297,1262,1340,1798,1729,35,1997,
- 32,3224,4598,27,30,31,992,994,339,28,
- 3070,35,939,32,2353,2627,27,30,31,992,
- 994,26,28,1219,25,23,50,1221,106,76,
- 77,108,1751,1227,1297,1262,1739,1216,35,1001,
- 388,2623,1982,757,35,1001,388,502,35,1499,
- 1970,1577,406,2619,1102,332,319,1388,321,4693,
- 314,1191,1048,450,2510,2631,150,1995,35,280,
- 3707,49,1962,1264,322,150,2625,273,2654,1275,
- 1567,2128,3544,3070,35,939,32,4402,2627,27,
- 30,31,992,994,26,28,1219,25,23,50,
- 1221,106,76,77,108,156,1227,1297,1262,1747,
- 3070,35,939,32,3000,2627,27,30,31,992,
- 994,26,28,1219,25,23,50,1221,106,76,
- 77,108,3403,1227,1297,1262,1749,3070,35,939,
- 32,1972,2627,27,30,31,992,994,26,28,
- 1219,25,23,50,1221,106,76,77,108,72,
- 1227,1704,417,419,1979,1503,35,939,32,3224,
- 2768,27,30,31,992,994,339,28,587,35,
- 1001,388,3070,35,939,32,2022,2627,27,30,
- 31,992,994,26,28,1219,25,23,50,1221,
- 106,76,77,108,1982,1227,1297,1262,1755,259,
- 1982,1982,49,537,2377,1326,2353,87,1275,1982,
- 3464,1567,2040,1010,319,1388,321,2656,314,1191,
- 2730,228,1982,2416,2346,3036,4137,1275,2799,156,
- 2064,313,24,1876,156,2735,1,180,3413,2824,
- 537,69,200,4205,299,203,215,4566,202,212,
- 213,214,216,156,68,169,2736,2155,228,1577,
- 150,876,162,332,1275,168,156,183,167,170,
- 171,172,173,174,180,3413,2824,2737,173,307,
- 310,594,203,215,4566,202,212,213,214,216,
- 156,182,169,1246,2213,2968,459,297,1275,1825,
- 1015,1954,168,181,184,167,170,171,172,173,
- 174,1899,35,939,32,736,2768,27,30,31,
- 992,994,339,28,160,2688,3180,35,1001,388,
- 1380,4508,352,1892,2629,1460,35,939,32,237,
- 4598,27,30,31,992,994,339,28,2744,2723,
- 344,585,861,349,4738,232,2651,2719,342,1010,
- 273,2926,1806,1338,1375,1321,2926,3464,2037,4531,
- 319,1388,321,3464,314,1191,1982,2382,2836,343,
- 247,230,231,2064,2396,1102,352,526,232,1577,
- 4754,2976,232,333,319,1388,321,351,315,1191,
- 1010,4312,662,2553,344,585,861,349,53,1795,
- 352,1982,527,235,230,231,1577,250,230,231,
- 332,5427,1577,287,274,3145,333,5427,346,585,
- 861,349,2159,35,293,5427,502,35,1001,388,
- 352,2502,4159,87,242,245,248,251,1126,2824,
- 296,2081,2935,360,2434,1964,5427,1090,344,585,
- 861,349,328,335,5427,376,2433,2801,1592,1620,
- 273,1498,3315,3283,2411,2893,2930,3071,4493,3070,
- 35,939,32,51,2627,27,30,31,992,994,
- 26,28,1219,25,23,50,1221,106,76,77,
- 108,1010,1227,1297,1757,3070,35,939,32,1338,
- 2627,27,30,31,992,994,26,28,1219,25,
- 23,50,1221,106,76,77,108,345,1227,1297,
- 1764,537,1102,232,340,5427,2186,4758,415,35,
- 1626,2553,2693,1010,88,1338,5427,102,1458,228,
- 3591,442,2926,456,5427,5427,5427,156,253,230,
- 231,393,427,5427,431,180,3413,2824,537,374,
- 2396,3145,49,203,215,4566,202,212,213,214,
- 216,1567,2391,169,97,5427,228,1015,1954,502,
- 35,1001,388,168,156,2933,167,170,171,172,
- 173,174,180,3413,2824,2064,5427,3145,3604,335,
- 203,215,4566,202,212,213,214,216,517,1982,
- 169,2139,537,433,1326,2926,98,1249,5427,3464,
- 168,2926,178,167,170,171,172,173,174,505,
- 228,1982,2062,2396,334,335,945,4708,156,2396,
- 5427,52,2308,2081,535,603,180,3413,2824,537,
- 504,2353,2353,2064,203,215,4566,202,212,213,
- 214,216,304,2224,169,1458,2345,228,1577,2926,
- 2926,503,332,3381,168,156,176,167,170,171,
- 172,173,174,180,3413,2824,239,2396,2396,221,
- 303,203,215,4566,202,212,213,214,216,689,
- 287,169,361,537,4415,150,541,3922,360,3696,
- 5427,168,1982,177,167,170,171,172,173,174,
- 382,228,3241,1592,1620,502,35,1001,388,156,
- 5427,2458,1964,5427,2949,232,775,180,3413,2824,
- 537,2159,2467,293,2262,203,215,4566,202,212,
- 213,214,216,392,427,169,505,505,228,432,
- 240,230,231,5427,2553,168,156,187,167,170,
- 171,172,173,174,180,3413,2824,504,504,44,
- 1868,3315,203,215,4566,202,212,213,214,216,
- 5427,5427,169,502,35,1499,281,1631,502,502,
- 429,1231,168,2353,2964,167,170,171,172,173,
- 174,1869,35,939,32,3224,2768,27,30,31,
- 992,994,339,28,2352,1223,35,939,32,2587,
- 2768,27,30,31,992,994,339,28,617,2509,
- 1249,179,2353,861,2926,2186,42,537,1233,35,
- 1499,276,5427,5427,502,35,1001,388,502,2086,
- 1499,74,2396,403,5427,228,502,35,1001,388,
- 319,1388,321,156,314,1191,502,35,1001,388,
- 198,180,3413,2824,316,1936,321,313,49,203,
- 215,4566,202,212,213,214,216,1567,1128,169,
- 273,1338,2213,947,1338,89,1275,537,102,168,
- 49,192,167,170,171,172,173,174,1795,1567,
- 2013,1233,35,1499,2099,228,502,35,1499,2370,
- 2240,360,160,156,150,306,310,594,3051,5427,
- 1033,180,3413,2824,537,3322,1592,1620,42,203,
- 215,4566,202,212,213,214,216,4295,3871,169,
- 522,5427,228,3145,275,1982,3145,5427,2643,168,
- 156,186,167,170,171,172,173,174,180,3413,
- 2824,150,5427,3407,1878,3253,203,215,4566,202,
- 212,213,214,216,150,2094,169,90,802,3219,
- 3730,335,5427,3764,335,1982,168,559,194,167,
- 170,171,172,173,174,3070,35,939,32,5427,
- 2627,27,30,31,992,994,26,28,1219,25,
- 23,50,1221,106,76,77,108,3722,1227,1706,
- 3070,35,939,32,5427,2627,27,30,31,992,
- 994,26,28,1219,25,23,50,1221,106,76,
- 77,108,522,1714,3070,35,939,32,5427,2627,
- 27,30,31,992,994,26,28,1219,25,23,
- 50,1221,106,76,77,108,1566,1721,150,2377,
- 2926,1982,3706,537,5427,150,1827,1338,2062,2926,
- 2926,2213,150,4708,5427,1275,3276,5427,228,1549,
- 150,3873,150,1795,1322,5427,817,343,228,156,
- 150,5427,150,67,1082,1982,1275,180,3413,5427,
- 1982,160,205,215,4566,204,212,213,214,216,
- 2857,2353,205,215,4566,204,212,213,214,216,
- 507,1326,156,2824,150,195,3464,66,1178,3145,
- 5427,3701,65,206,208,210,294,295,1886,376,
- 217,207,209,206,208,210,294,295,1886,197,
- 217,207,209,1816,35,1997,32,3224,2768,27,
- 30,31,992,994,339,28,330,335,3921,1102,
- 2949,2830,1914,4222,4766,1577,2926,1706,150,4841,
- 1102,2983,3812,4222,150,4783,5427,5427,3456,2353,
- 3070,35,939,32,228,2627,27,30,31,992,
- 994,26,28,1219,25,23,50,1221,106,76,
- 77,85,319,1388,321,1982,314,1191,205,215,
- 4566,204,212,213,214,216,150,302,150,1264,
- 3263,150,3558,150,2348,962,430,3421,2911,5427,
- 4684,196,5427,3824,873,5427,5427,64,2353,206,
- 208,210,294,295,1886,5427,217,207,209,3070,
- 1524,939,1585,94,2627,27,30,31,992,994,
- 26,28,1219,25,23,50,1221,106,76,77,
- 84,1982,502,35,1001,388,201,3205,5427,4222,
- 3070,35,939,32,5427,2627,27,30,31,992,
- 994,26,28,1219,25,23,50,1221,106,76,
- 77,83,5427,55,5427,1982,49,5427,418,419,
- 1979,3070,35,939,32,46,2627,27,30,31,
- 992,994,26,28,1219,25,23,50,1221,106,
- 76,77,82,3070,35,939,32,54,2627,27,
- 30,31,992,994,26,28,1219,25,23,50,
- 1221,106,76,77,81,3070,35,939,32,5427,
- 2627,27,30,31,992,994,26,28,1219,25,
- 23,50,1221,106,76,77,80,3070,35,939,
- 32,5427,2627,27,30,31,992,994,26,28,
- 1219,25,23,50,1221,106,76,77,79,3070,
- 35,939,32,5427,2627,27,30,31,992,994,
- 26,28,1219,25,23,50,1221,106,76,77,
- 78,2898,35,939,32,5427,2627,27,30,31,
- 992,994,26,28,1219,25,23,50,1221,106,
- 76,77,104,3070,35,939,32,5427,2627,27,
- 30,31,992,994,26,28,1219,25,23,50,
- 1221,106,76,77,110,3070,35,939,32,5427,
- 2627,27,30,31,992,994,26,28,1219,25,
- 23,50,1221,106,76,77,109,3070,35,939,
- 32,5427,2627,27,30,31,992,994,26,28,
- 1219,25,23,50,1221,106,76,77,107,3070,
- 35,939,32,5427,2627,27,30,31,992,994,
- 26,28,1219,25,23,50,1221,106,76,77,
- 105,3015,35,939,32,1982,2627,27,30,31,
- 992,994,26,28,1219,25,23,50,1221,86,
- 76,77,2001,1982,1805,2353,2926,1982,1982,2353,
- 1982,150,1653,1982,1982,2926,2926,101,5427,5427,
- 5427,5427,1740,5427,228,1982,2926,5427,5427,5427,
- 5427,5427,5427,343,228,3262,529,150,5427,451,
- 378,1275,3309,199,228,3346,3453,298,205,215,
- 4566,204,212,213,214,216,2857,2264,205,215,
- 4566,204,212,213,214,216,1628,156,205,215,
- 4566,204,212,213,214,216,3735,5427,2353,206,
- 208,210,294,295,1886,1982,520,207,209,206,
- 208,210,294,295,1886,2353,519,207,209,206,
- 208,210,294,295,1886,2088,218,207,209,2926,
- 150,1982,1982,5427,1275,2175,2823,2440,5427,2926,
- 150,5427,2353,5427,1275,5427,5427,228,5427,5427,
- 5427,5427,5427,222,5427,5427,5427,228,5427,5427,
- 156,5427,5427,4322,3550,5427,5427,5427,5427,3740,
- 156,205,215,4566,204,212,213,214,216,3855,
- 193,205,215,4566,204,212,213,214,216,1503,
- 35,939,32,3224,2768,27,30,31,992,994,
- 339,28,206,208,210,294,295,1886,5427,305,
- 207,209,206,208,210,294,295,1886,5427,499,
- 207,209,1695,35,939,32,5427,4598,27,30,
- 31,992,994,339,28,1695,35,939,32,5427,
- 4598,27,30,31,992,994,339,28,319,1388,
- 321,5427,314,1191,5427,5427,5427,2213,5427,5427,
- 5427,1275,5427,5427,5427,2632,5427,5427,5427,5427,
- 5427,5427,5427,5427,5427,2562,1577,5427,5427,2926,
- 333,319,1388,321,5427,317,1191,160,5427,1577,
- 5427,5427,5427,333,319,1388,321,343,315,1191,
- 1503,35,939,32,3224,2768,27,30,31,992,
- 994,339,28,3229,35,1001,388,5427,4508,5427,
- 3874,5427,5427,150,5427,5427,238,2926,587,35,
- 1001,388,5427,5427,5427,1181,5427,5427,5427,2926,
- 4849,5427,5427,5427,5427,343,5427,273,5427,5427,
- 5427,1806,5427,5427,3955,2926,3464,228,5427,319,
- 1388,321,49,314,1191,5427,5427,5427,2857,5427,
- 5427,1567,1583,2396,5427,232,2956,5427,1635,5427,
- 5427,1271,407,3435,5427,3476,1956,35,939,32,
- 2378,2768,27,30,31,992,994,339,28,5427,
- 236,230,231,1286,5427,1577,5427,2926,4849,332,
- 5427,274,408,409,410,294,295,1886,587,35,
- 1001,388,5427,5427,2213,228,5427,5427,1275,5427,
- 5427,243,246,249,252,1126,5427,1884,5427,5427,
- 5427,2412,360,5427,1090,316,1936,321,5427,1271,
- 407,3435,49,5427,160,5427,2801,1592,1620,5427,
- 5427,1567,3540,929,35,1001,388,587,35,1001,
- 388,5427,4285,150,5427,3036,5427,1275,5427,5427,
- 408,409,410,294,295,1886,5427,5427,5427,1385,
- 35,1001,388,929,35,1001,388,49,411,413,
- 5427,49,5427,156,2425,1884,1567,47,537,5427,
- 1567,47,3101,929,35,1001,388,5427,5427,5427,
- 2657,4185,2187,49,742,4583,343,49,587,35,
- 1001,388,1567,2216,156,5427,1567,2409,5427,587,
- 35,1001,388,188,3407,5427,3476,49,5427,4480,
- 2633,5427,5427,5427,5427,5427,1567,47,587,35,
- 1001,388,49,5427,5427,5427,411,414,5427,5427,
- 2520,1567,47,49,1602,35,1001,388,587,35,
- 1001,388,1567,47,5427,627,587,35,1001,388,
- 5427,5427,49,5427,150,5427,2413,5427,537,5427,
- 5427,1567,47,1618,35,1001,388,190,49,5427,
- 5427,5427,49,5427,5427,2461,343,1567,47,5427,
- 49,1567,47,150,156,5427,5427,537,150,1567,
- 47,1394,537,2800,2213,3189,5427,49,1275,2857,
- 5427,5427,5427,3335,5427,343,1567,47,5427,2794,
- 343,5427,5427,156,502,35,1001,388,156,5427,
- 1402,2067,2822,5427,160,5427,3464,2800,2857,502,
- 35,1001,388,2857,502,35,1001,388,2809,5427,
- 5427,5427,2219,3011,4278,5427,2926,5427,49,502,
- 35,1001,388,5427,5427,5427,5427,1567,1118,5427,
- 5427,5427,5427,49,343,5427,150,150,49,5427,
- 537,2926,1567,2410,530,1577,150,1567,2128,4841,
- 537,150,5427,49,5427,2926,150,2857,343,343,
- 537,4207,1567,663,5427,150,156,533,343,2926,
- 150,5427,5427,343,1275,188,156,5427,343,5427,
- 150,4480,2857,5427,2926,188,156,343,5427,5427,
- 5427,4480,1653,5427,5427,188,2857,5427,5427,5427,
- 156,4480,343,5427,5427,5427,1669,5427,5427,4311,
- 2857,5427,5427,5427,5427,5427,5427,5427,5427,5427,
- 3615,5427,5427,5427,5427,2857,5427,5427,5427,5427,
- 5427,5427,5427,96,5427,534,5427,5427,5427,4210,
- 5427,5427,5427,5427,5427,5427,5427,5427,5427,4213,
- 5427,5427,5427,5427,5427,5427,5427,5427,5427,4214,
- 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,5427,5427,5427,
- 4204,5427,0,575,1,0,819,1,0,39,
- 1,5442,0,39,1,5441,0,1405,1,0,
- 39,5442,0,39,5441,0,1489,318,0,1532,
- 29,0,440,1575,0,454,1618,0,5442,48,
- 0,5441,48,0,38,737,0,38,5442,0,
- 38,5441,0,5433,1,0,5432,1,0,283,
- 394,0,283,286,0,5661,241,0,5660,241,
- 0,5765,241,0,5764,241,0,5688,241,0,
- 5687,241,0,5686,241,0,5685,241,0,5684,
- 241,0,5683,241,0,5682,241,0,5681,241,
- 0,5699,241,0,5698,241,0,5697,241,0,
- 5696,241,0,5695,241,0,5694,241,0,5693,
- 241,0,5692,241,0,5691,241,0,5690,241,
- 0,5689,241,0,39,241,5442,0,39,241,
- 5441,0,5465,241,0,1532,387,0,2700,126,
- 0,35,33,0,1,444,0,458,2312,0,
- 457,2813,0,47,37,0,5465,1,0,39,
- 1,0,1348,91,0,32,34,0,39,737,
- 0,1,724,0,1,5699,0,1,5698,0,
- 1,5697,0,1,5696,0,1,5695,0,1,
- 5694,0,1,5693,0,1,5692,0,1,5691,
- 0,1,5690,0,1,5689,0,43,5463,0,
- 43,37,0,501,1885,0,5465,1,229,0,
- 39,1,229,0,229,416,0,5442,37,0,
- 5441,37,0,237,2894,0,388,32,0,387,
- 29,0,2700,128,0,2700,127,0,331,445,
- 0,5437,405,0,5436,405,0,1,4369,0,
- 1,2957,0,1,737,0,229,415,0,1,
- 92,0,5463,45,0,37,45,0,1,331,
- 0,2,5442,37,0,2,5441,37,0,5442,
- 36,0,5441,36,0,501,4212,0,1,229,
- 0,229,220,0,331,95,0,35,73,0,
- 229,219,0,278,3711,0,5439,1,0,5435,
- 1,0,1,229,2668,0,5436,229,0,2807,
- 229,0,5439,383,0,5438,383,0,2878,229,
- 0,10,12,0,8,10,12,0,185,3513,
- 0,2977,383,0,8,12,0
+ 135,127,127,198,198,174,174,1119,35,1749,
+ 1739,1101,4562,27,30,31,800,802,26,28,
+ 1721,25,23,50,1262,106,76,77,108,245,
+ 1264,1307,1297,1409,1386,1454,1446,675,1481,761,
+ 1456,273,1524,1534,143,415,35,396,158,144,
+ 1174,1472,35,790,32,2074,4673,27,30,31,
+ 800,802,57,28,1725,3070,35,790,32,232,
+ 2673,27,30,31,800,802,26,28,1254,25,
+ 23,50,1262,106,76,77,108,1392,1264,1307,
+ 1297,1409,1386,1835,235,230,231,502,35,945,
+ 388,3070,35,790,32,274,2673,27,30,31,
+ 800,802,26,28,1254,25,23,50,1262,106,
+ 76,77,108,1160,1757,242,245,248,251,1126,
+ 354,431,1350,2311,35,277,4508,64,2050,1783,
+ 35,790,32,386,4673,27,30,31,800,802,
+ 56,28,1714,567,3000,3147,3228,3402,3504,4522,
+ 2253,35,790,32,2972,2673,27,30,31,800,
+ 802,26,28,1254,25,23,50,1262,106,76,
+ 77,108,343,1264,1307,1297,1409,1386,1454,1446,
+ 61,1481,1927,1456,1178,1524,1534,143,2887,150,
+ 2346,517,144,3477,2845,3104,502,1592,1585,34,
+ 502,35,3072,2971,2559,518,2253,35,790,32,
+ 2972,2673,27,30,31,800,802,26,28,1254,
+ 25,23,50,1262,106,76,77,108,343,1264,
+ 1307,1297,1409,1386,1454,1446,150,1481,312,1456,
+ 2440,1524,1534,143,155,35,453,517,144,4702,
+ 1635,3104,502,35,945,388,1648,182,2086,1139,
+ 1809,518,1895,513,1979,35,790,32,60,4861,
+ 27,30,31,800,802,26,28,2523,511,415,
+ 35,396,1885,2847,1886,2320,452,2253,35,790,
+ 32,2972,2673,27,30,31,800,802,26,28,
+ 1254,25,23,50,1262,106,76,77,108,343,
+ 1264,1307,1297,1409,1386,1454,1446,443,1481,513,
+ 1456,3517,1524,1534,143,155,35,279,517,144,
+ 4787,356,3104,353,1995,35,277,2047,1893,531,
+ 1886,3797,518,2461,35,790,32,2972,2673,27,
+ 30,31,800,802,26,28,1254,25,23,50,
+ 1262,106,76,77,108,343,1264,1307,1297,1409,
+ 1386,1454,1446,2419,1481,1775,1456,2972,1524,1534,
+ 143,155,35,279,517,144,4869,569,3104,415,
+ 35,396,150,42,1921,343,2976,228,518,2553,
+ 513,1979,35,790,32,2070,4861,27,30,31,
+ 800,802,59,28,446,2681,2689,2902,877,1911,
+ 2412,1886,2596,35,790,32,494,2673,27,30,
+ 31,800,802,26,28,1254,25,23,50,1262,
+ 106,76,77,108,3073,1264,1307,1297,1409,1386,
+ 1454,1446,243,1481,447,1456,514,1524,1534,143,
+ 502,3815,3758,379,144,2322,35,790,32,413,
+ 2673,27,30,31,800,802,26,28,1254,25,
+ 23,50,1262,106,76,77,108,322,1264,1307,
+ 1297,1409,1386,1454,1446,2240,1481,1635,1456,438,
+ 1524,1534,143,502,2007,3758,379,144,2159,2098,
+ 3070,35,790,32,93,2673,27,30,31,800,
+ 802,26,28,1254,25,23,50,1262,106,76,
+ 77,108,1499,1264,1307,1297,1409,1386,1454,1446,
+ 2492,1481,2559,1456,1927,1524,1567,164,1704,2005,
+ 913,385,2272,502,35,282,2528,35,790,32,
+ 2094,2673,27,30,31,800,802,26,28,1254,
+ 25,23,50,1262,106,76,77,108,1876,1264,
+ 1307,1297,1409,1386,1454,1446,1908,1481,381,1456,
+ 3562,1524,1534,143,386,2272,3758,379,144,502,
+ 35,2314,423,70,2836,35,790,32,3851,2673,
+ 27,30,31,800,802,26,28,1254,25,23,
+ 50,1262,106,76,77,108,288,1264,1307,1297,
+ 1409,1386,1454,1446,2363,1481,2428,1456,2037,1524,
+ 1534,143,2435,4366,2220,373,144,2836,35,790,
+ 32,2222,2673,27,30,31,800,802,26,28,
+ 1254,25,23,50,1262,106,76,77,108,355,
+ 1264,1307,1297,1409,1386,1454,1446,531,1481,2469,
+ 1456,386,1524,1534,143,377,2272,1627,373,144,
+ 2154,2320,2836,35,790,32,333,2673,27,30,
+ 31,800,802,26,28,1254,25,23,50,1262,
+ 106,76,77,108,1475,1264,1307,1297,1409,1386,
+ 1454,1446,2624,1481,585,1456,324,1524,1534,143,
+ 329,421,372,373,144,2836,35,790,32,1579,
+ 2673,27,30,31,800,802,26,28,1254,25,
+ 23,50,1262,106,76,77,108,2247,1264,1307,
+ 1297,1409,1386,1454,1446,325,1481,236,1456,150,
+ 1524,1534,143,690,2994,371,158,144,2664,35,
+ 790,32,322,2673,27,30,31,800,802,26,
+ 28,1254,25,23,50,1262,106,76,77,108,
+ 2847,1264,1307,1297,1409,1386,1454,1446,150,1481,
+ 386,1456,1275,1524,1567,164,2394,35,790,32,
+ 369,2673,27,30,31,800,802,26,28,1254,
+ 25,23,50,1262,106,76,77,108,3556,1264,
+ 1307,1297,1409,1386,1454,1446,2075,1481,2050,1456,
+ 3312,1524,1534,143,502,35,293,142,144,1790,
+ 447,327,502,35,293,2078,35,790,32,846,
+ 2346,41,30,31,800,802,2836,35,790,32,
+ 1714,2673,27,30,31,800,802,26,28,1254,
+ 25,23,50,1262,106,76,77,108,71,1264,
+ 1307,1297,1409,1386,1454,1446,1236,1481,2559,1456,
+ 1102,1524,1534,143,1360,4844,142,155,144,2836,
+ 35,790,32,2517,2673,27,30,31,800,802,
+ 26,28,1254,25,23,50,1262,106,76,77,
+ 108,1251,1264,1307,1297,1409,1386,1454,1446,150,
+ 1481,386,1456,746,1524,1534,143,1919,3805,494,
+ 154,144,2836,35,790,32,3921,2673,27,30,
+ 31,800,802,26,28,1254,25,23,50,1262,
+ 106,76,77,108,214,1264,1307,1297,1409,1386,
+ 1454,1446,150,1481,1379,1456,827,1524,1534,143,
+ 3022,502,3086,153,144,2836,35,790,32,2658,
+ 2673,27,30,31,800,802,26,28,1254,25,
+ 23,50,1262,106,76,77,108,1500,1264,1307,
+ 1297,1409,1386,1454,1446,323,1481,523,1456,1102,
+ 1524,1534,143,531,3431,2495,152,144,2836,35,
+ 790,32,1328,2673,27,30,31,800,802,26,
+ 28,1254,25,23,50,1262,106,76,77,108,
+ 2287,1264,1307,1297,1409,1386,1454,1446,150,1481,
+ 2388,1456,4545,1524,1534,143,1789,1627,1333,151,
+ 144,2836,35,790,32,1271,2673,27,30,31,
+ 800,802,26,28,1254,25,23,50,1262,106,
+ 76,77,108,1446,1264,1307,1297,1409,1386,1454,
+ 1446,380,1481,523,1456,1102,1524,1534,143,2052,
+ 3435,1716,150,144,2836,35,790,32,1377,2673,
+ 27,30,31,800,802,26,28,1254,25,23,
+ 50,1262,106,76,77,108,418,1264,1307,1297,
+ 1409,1386,1454,1446,150,1481,590,1456,3379,1524,
+ 1534,143,848,1822,1907,149,144,2836,35,790,
+ 32,2249,2673,27,30,31,800,802,26,28,
+ 1254,25,23,50,1262,106,76,77,108,3343,
+ 1264,1307,1297,1409,1386,1454,1446,150,1481,3269,
+ 1456,3007,1524,1534,143,408,580,1459,148,144,
+ 2836,35,790,32,1791,2673,27,30,31,800,
+ 802,26,28,1254,25,23,50,1262,106,76,
+ 77,108,1863,1264,1307,1297,1409,1386,1454,1446,
+ 150,1481,932,1456,3118,1524,1534,143,1616,2126,
+ 1881,147,144,2836,35,790,32,1911,2673,27,
+ 30,31,800,802,26,28,1254,25,23,50,
+ 1262,106,76,77,108,2280,1264,1307,1297,1409,
+ 1386,1454,1446,2344,1481,2044,1456,404,1524,1534,
+ 143,2156,2696,1355,146,144,2836,35,790,32,
+ 1502,2673,27,30,31,800,802,26,28,1254,
+ 25,23,50,1262,106,76,77,108,400,1264,
+ 1307,1297,1409,1386,1454,1446,150,1481,56,1456,
+ 2937,1524,1534,143,472,1825,1975,145,144,2836,
+ 35,790,32,2168,2673,27,30,31,800,802,
+ 26,28,1254,25,23,50,1262,106,76,77,
+ 108,2381,1264,1307,1297,1409,1386,1454,1446,150,
+ 1481,2124,1456,3178,1524,1534,143,2420,1002,2500,
+ 159,144,2836,35,790,32,2082,2673,27,30,
+ 31,800,802,26,28,1254,25,23,50,1262,
+ 106,76,77,108,2454,1264,1307,1297,1409,1386,
+ 1454,1446,150,1481,2484,1456,3614,1524,1534,143,
+ 2485,2491,2452,140,144,2953,35,790,32,2567,
+ 2673,27,30,31,800,802,26,28,1254,25,
+ 23,50,1262,106,76,77,108,2516,1264,1307,
+ 1297,1409,1386,1454,1446,150,1481,2387,1456,817,
+ 1524,1534,143,1995,35,280,189,144,3070,35,
+ 790,32,1621,2673,27,30,31,800,802,26,
+ 28,1254,25,23,50,1262,106,76,77,108,
+ 2171,1264,1307,1297,1409,1386,1454,1446,1897,1481,
+ 1795,1456,4341,1524,1567,164,3070,35,790,32,
+ 402,2673,27,30,31,800,802,26,28,1254,
+ 25,23,50,1262,106,76,77,108,2698,1264,
+ 1307,1297,1409,1386,1454,1446,2423,1481,3618,1456,
+ 1618,1524,1567,164,2131,35,790,32,1795,2518,
+ 40,30,31,800,802,2570,3070,35,790,32,
+ 292,2673,27,30,31,800,802,26,28,1254,
+ 25,23,50,1262,106,76,77,108,1103,1264,
+ 1307,1297,1409,1386,1454,1446,150,1481,1962,1456,
+ 1275,1524,1567,164,3070,35,790,32,422,2673,
+ 27,30,31,800,802,26,28,1254,25,23,
+ 50,1262,106,76,77,108,3771,1264,1307,1297,
+ 1409,1386,1454,1446,150,1481,1139,1456,3271,1524,
+ 1567,164,2131,35,790,32,1795,2064,2487,30,
+ 31,800,802,2094,3125,35,790,32,425,2673,
+ 27,30,31,800,802,26,28,1254,25,23,
+ 50,1262,106,76,77,108,1341,1264,1307,1297,
+ 1409,1386,1454,1446,150,1481,3031,1456,3319,1524,
+ 1567,164,3070,35,790,32,3537,2673,27,30,
+ 31,800,802,26,28,1254,25,23,50,1262,
+ 106,76,77,108,389,1264,1307,1297,1409,1386,
+ 1454,1446,150,1481,1795,1456,3732,1884,1987,35,
+ 790,32,1795,4861,27,30,31,800,802,58,
+ 28,2094,3070,35,790,32,3057,2673,27,30,
+ 31,800,802,26,28,1254,25,23,50,1262,
+ 106,76,77,108,730,1264,1307,1297,1409,1386,
+ 1454,1446,3850,1481,2551,1868,3070,35,790,32,
+ 3800,2673,27,30,31,800,802,26,28,1254,
+ 25,23,50,1262,106,76,77,108,1982,1264,
+ 1307,1297,1409,1386,1454,1446,1010,1843,3070,35,
+ 790,32,2064,2673,27,30,31,800,802,26,
+ 28,1254,25,23,50,1262,106,76,77,108,
+ 497,1264,1307,1297,1409,1386,1454,1850,1608,35,
+ 790,32,4555,2814,27,30,31,800,802,339,
+ 28,2347,502,35,945,388,1638,35,790,32,
+ 2851,2507,27,30,31,800,802,339,28,1806,
+ 2486,1323,2525,2972,4366,2131,35,790,32,284,
+ 1982,3071,30,31,800,802,434,1627,1010,326,
+ 1795,2396,502,35,945,388,332,319,1230,321,
+ 1249,314,1191,150,2972,1010,1010,2972,502,35,
+ 1585,276,350,2693,313,319,1230,321,1627,314,
+ 1191,1795,2396,2637,1367,343,273,332,4457,4366,
+ 730,352,724,1719,35,790,32,2409,2507,27,
+ 30,31,800,802,339,28,525,2353,3104,344,
+ 585,798,349,502,35,945,388,653,509,2981,
+ 360,730,306,310,594,351,1982,587,35,945,
+ 388,498,1982,1627,2910,1669,1671,524,587,35,
+ 945,388,333,2583,3237,406,1010,433,460,459,
+ 340,360,319,1230,321,2695,314,1191,322,352,
+ 1179,49,2590,2560,4173,3268,1669,1671,352,2506,
+ 1626,2128,49,502,35,1585,278,346,585,798,
+ 349,1626,1628,2591,2432,535,344,585,798,349,
+ 502,35,1585,2099,2420,2905,2618,3070,35,790,
+ 32,366,2673,27,30,31,800,802,26,28,
+ 1254,25,23,50,1262,106,76,77,108,2552,
+ 1264,1307,1297,1409,1841,3070,35,790,32,4195,
+ 2673,27,30,31,800,802,26,28,1254,25,
+ 23,50,1262,106,76,77,108,541,1264,1307,
+ 1297,1409,1842,1729,35,2411,32,4555,2814,27,
+ 30,31,800,802,339,28,3070,35,790,32,
+ 2584,2673,27,30,31,800,802,26,28,1254,
+ 25,23,50,1262,106,76,77,108,1564,1264,
+ 1307,1297,1792,1216,35,945,388,502,35,945,
+ 388,2585,1627,843,35,453,2139,69,4702,2623,
+ 2972,332,319,1230,321,2619,314,1191,502,35,
+ 1585,281,1233,35,1585,276,1631,49,2396,1080,
+ 825,432,502,2463,1585,74,1626,2216,1982,3070,
+ 35,790,32,4457,2673,27,30,31,800,802,
+ 26,28,1254,25,23,50,1262,106,76,77,
+ 108,2625,1264,1307,1297,1798,3070,35,790,32,
+ 24,2673,27,30,31,800,802,26,28,1254,
+ 25,23,50,1262,106,76,77,108,2654,1264,
+ 1307,1297,1800,3070,35,790,32,361,2673,27,
+ 30,31,800,802,26,28,1254,25,23,50,
+ 1262,106,76,77,108,87,1264,1755,417,419,
+ 2410,1503,35,790,32,4555,2507,27,30,31,
+ 800,802,339,28,587,35,945,388,3070,35,
+ 790,32,2022,2673,27,30,31,800,802,26,
+ 28,1254,25,23,50,1262,106,76,77,108,
+ 1665,1264,1307,1297,1807,259,2213,1102,49,537,
+ 1275,1326,4677,450,2681,2689,4366,1626,1035,2523,
+ 319,1230,321,1010,314,1191,2276,228,150,150,
+ 1048,2432,3429,3501,2656,156,160,313,1233,35,
+ 1585,2523,1,180,3357,730,537,502,35,1585,
+ 2563,203,215,4654,2730,202,212,213,214,216,
+ 1627,169,2553,2735,228,502,35,945,388,332,
+ 1982,168,156,183,167,170,171,172,173,174,
+ 180,3357,730,2736,2553,307,310,594,203,215,
+ 4654,2094,202,212,213,214,216,2081,169,273,
+ 2377,2981,1747,3184,1275,2737,51,2308,168,181,
+ 184,167,170,171,172,173,174,1899,35,790,
+ 32,2851,2507,27,30,31,800,802,339,28,
+ 156,413,3180,35,945,388,1249,2518,200,3919,
+ 2972,1460,35,790,32,237,2814,27,30,31,
+ 800,802,339,28,415,35,1678,1388,2396,2924,
+ 3381,2243,2412,275,1321,1806,273,1338,3005,2972,
+ 4366,150,3517,239,2062,744,319,1230,321,4685,
+ 314,1191,150,173,2882,150,3763,2396,49,1275,
+ 1627,150,352,526,232,3742,351,1626,740,333,
+ 319,1230,321,88,315,1191,102,390,427,1341,
+ 344,585,798,349,1627,156,352,2688,527,235,
+ 230,231,232,332,2863,89,2094,360,102,3708,
+ 274,2353,2502,1795,346,585,798,349,1892,352,
+ 2868,3468,1669,1671,44,1921,2629,240,230,231,
+ 242,245,248,251,1126,2464,360,344,585,798,
+ 349,2744,1009,2050,2155,2420,3011,335,4451,299,
+ 2910,1669,1671,730,2182,2651,3313,1375,1338,3000,
+ 3147,3228,3402,3504,4522,3070,35,790,32,376,
+ 2673,27,30,31,800,802,26,28,1254,25,
+ 23,50,1262,106,76,77,108,1232,1264,1307,
+ 1825,3070,35,790,32,1982,2673,27,30,31,
+ 800,802,26,28,1254,25,23,50,1262,106,
+ 76,77,108,345,1264,1307,1833,537,2081,352,
+ 3708,2869,429,1982,1982,2382,5510,69,757,35,
+ 945,388,150,5510,5510,228,4832,344,585,798,
+ 349,5510,5510,156,150,342,2543,2064,1231,232,
+ 431,180,3357,730,537,68,53,328,335,203,
+ 215,4654,273,202,212,213,214,216,1246,169,
+ 5510,2064,228,374,244,230,231,2353,1982,168,
+ 156,3078,167,170,171,172,173,174,180,3357,
+ 730,2159,35,293,5510,517,203,215,4654,537,
+ 202,212,213,214,216,2219,169,1982,1982,2972,
+ 87,1338,5510,1010,285,221,168,228,178,167,
+ 170,171,172,173,174,156,2391,343,391,427,
+ 232,2262,603,180,3357,730,537,530,297,52,
+ 2174,203,215,4654,72,202,212,213,214,216,
+ 3104,169,1795,2723,228,247,230,231,4722,1338,
+ 533,168,156,176,167,170,171,172,173,174,
+ 180,3357,730,3708,5510,2353,5510,689,203,215,
+ 4654,537,202,212,213,214,216,2719,169,150,
+ 1458,2972,730,2859,2972,2186,97,2353,168,228,
+ 177,167,170,171,172,173,174,156,376,343,
+ 3382,335,2396,303,775,180,3357,730,537,1015,
+ 2007,3708,150,203,215,4654,1082,202,212,213,
+ 214,216,662,169,150,179,228,42,1448,2159,
+ 2650,293,1380,168,156,187,167,170,171,172,
+ 173,174,180,3357,730,5510,5510,2064,3394,335,
+ 203,215,4654,5510,202,212,213,214,216,2081,
+ 169,929,35,945,388,587,35,945,388,2262,
+ 168,505,3117,167,170,171,172,173,174,1869,
+ 35,790,32,4555,2507,27,30,31,800,802,
+ 339,28,504,3759,232,49,2416,2213,1982,49,
+ 1275,1275,3631,5510,1626,47,861,1458,1626,47,
+ 537,2972,42,503,296,5510,5510,5510,2013,250,
+ 230,231,1093,5510,5510,5510,156,160,228,2396,
+ 2224,2081,287,2186,1498,162,156,5510,319,1230,
+ 321,522,314,1191,180,3357,730,502,35,945,
+ 388,5510,203,215,4654,313,202,212,213,214,
+ 216,947,169,2352,2086,537,5510,1010,5510,393,
+ 427,442,168,456,192,167,170,171,172,173,
+ 174,49,1102,228,1102,5510,1982,4737,1463,4748,
+ 46,156,1102,5510,3267,5510,232,4767,505,180,
+ 3357,730,150,306,310,594,2972,203,215,4654,
+ 2064,202,212,213,214,216,1033,169,90,504,
+ 537,253,230,231,343,4241,522,168,1982,186,
+ 167,170,171,172,173,174,2695,5510,228,1982,
+ 502,392,427,1982,1015,2007,156,3104,150,1982,
+ 98,1982,3848,1102,180,3357,730,507,4772,5510,
+ 3349,150,203,215,4654,3397,202,212,213,214,
+ 216,67,169,1549,4245,66,5510,304,5510,5510,
+ 580,65,168,64,194,167,170,171,172,173,
+ 174,3070,35,790,32,5510,2673,27,30,31,
+ 800,802,26,28,1254,25,23,50,1262,106,
+ 76,77,108,2064,1264,1756,3070,35,790,32,
+ 5510,2673,27,30,31,800,802,26,28,1254,
+ 25,23,50,1262,106,76,77,108,1338,1764,
+ 3070,35,790,32,2353,2673,27,30,31,800,
+ 802,26,28,1254,25,23,50,1262,106,76,
+ 77,108,1566,1782,1982,2377,2972,287,5510,537,
+ 1982,5510,1827,2062,1982,2213,2972,2213,4685,1275,
+ 382,1275,198,5510,228,1982,5510,3856,150,1805,
+ 2353,5510,3683,1338,228,156,55,1982,3207,2086,
+ 3708,1982,54,180,3357,160,101,160,205,215,
+ 4654,5510,204,212,213,214,216,3335,205,215,
+ 4654,529,204,212,213,214,216,1326,197,451,
+ 150,195,4366,378,3482,2353,5510,334,335,206,
+ 208,210,294,295,1936,2353,217,207,209,206,
+ 208,210,294,295,1936,3708,217,207,209,1816,
+ 35,2411,32,4555,2507,27,30,31,800,802,
+ 339,28,3734,302,3740,3313,1627,3231,1914,4258,
+ 150,1706,2972,201,962,4755,150,3417,5510,4258,
+ 3449,2213,330,335,5510,1275,3070,35,790,32,
+ 228,2673,27,30,31,800,802,26,28,1254,
+ 25,23,50,1262,106,76,77,85,319,1230,
+ 321,160,314,1191,205,215,4654,5510,204,212,
+ 213,214,216,2348,5510,1080,5510,2957,5510,5510,
+ 5510,430,5510,5510,5510,5510,4795,196,966,2353,
+ 5510,2353,5510,5510,2353,206,208,210,294,295,
+ 1936,5510,217,207,209,3070,1592,790,1653,94,
+ 2673,27,30,31,800,802,26,28,1254,25,
+ 23,50,1262,106,76,77,84,199,3744,298,
+ 1982,1982,3466,3580,5510,4258,3070,35,790,32,
+ 5510,2673,27,30,31,800,802,26,28,1254,
+ 25,23,50,1262,106,76,77,83,5510,5510,
+ 5510,1982,3337,3374,418,419,2410,3070,35,790,
+ 32,5510,2673,27,30,31,800,802,26,28,
+ 1254,25,23,50,1262,106,76,77,82,3070,
+ 35,790,32,3476,2673,27,30,31,800,802,
+ 26,28,1254,25,23,50,1262,106,76,77,
+ 81,3070,35,790,32,5510,2673,27,30,31,
+ 800,802,26,28,1254,25,23,50,1262,106,
+ 76,77,80,3070,35,790,32,5510,2673,27,
+ 30,31,800,802,26,28,1254,25,23,50,
+ 1262,106,76,77,79,3070,35,790,32,5510,
+ 2673,27,30,31,800,802,26,28,1254,25,
+ 23,50,1262,106,76,77,78,2898,35,790,
+ 32,5510,2673,27,30,31,800,802,26,28,
+ 1254,25,23,50,1262,106,76,77,104,3070,
+ 35,790,32,5510,2673,27,30,31,800,802,
+ 26,28,1254,25,23,50,1262,106,76,77,
+ 110,3070,35,790,32,5510,2673,27,30,31,
+ 800,802,26,28,1254,25,23,50,1262,106,
+ 76,77,109,3070,35,790,32,5510,2673,27,
+ 30,31,800,802,26,28,1254,25,23,50,
+ 1262,106,76,77,107,3070,35,790,32,5510,
+ 2673,27,30,31,800,802,26,28,1254,25,
+ 23,50,1262,106,76,77,105,3015,35,790,
+ 32,1982,2673,27,30,31,800,802,26,28,
+ 1254,25,23,50,1262,86,76,77,2001,150,
+ 1982,2353,2972,1275,1982,1982,5510,5510,1653,2353,
+ 5510,2213,2972,2430,5510,1275,5510,5510,1740,5510,
+ 228,5510,2972,5510,5510,5510,5510,5510,5510,156,
+ 228,5510,2461,5510,5510,5510,4249,3586,1878,222,
+ 228,160,5510,5510,205,215,4654,193,204,212,
+ 213,214,216,5510,205,215,4654,5510,204,212,
+ 213,214,216,5510,205,215,4654,5510,204,212,
+ 213,214,216,5510,5510,206,208,210,294,295,
+ 1936,5510,520,207,209,206,208,210,294,295,
+ 1936,5510,519,207,209,206,208,210,294,295,
+ 1936,2088,218,207,209,2972,150,5510,3767,5510,
+ 1275,2175,5510,5510,5510,2972,5510,5510,5510,5510,
+ 5510,150,5510,228,5510,2972,502,35,945,388,
+ 5510,5510,5510,228,5510,5510,156,5510,150,5510,
+ 5510,5510,1275,343,5510,3609,5510,205,215,4654,
+ 5510,204,212,213,214,216,5510,205,215,4654,
+ 49,204,212,213,214,216,3104,5510,156,1626,
+ 673,5510,5510,5510,5510,5510,1696,3613,206,208,
+ 210,294,295,1936,5510,305,207,209,206,208,
+ 210,294,295,1936,5510,499,207,209,1503,35,
+ 790,32,4555,2507,27,30,31,800,802,339,
+ 28,1326,5510,5510,5510,5510,4366,1695,35,790,
+ 32,5510,2814,27,30,31,800,802,339,28,
+ 1695,35,790,32,5510,2814,27,30,31,800,
+ 802,339,28,1503,35,790,32,4555,2507,27,
+ 30,31,800,802,339,28,5510,319,1230,321,
+ 1627,314,1191,5510,5510,5510,1627,5510,1326,332,
+ 5510,5510,5510,4366,2506,333,319,1230,321,1627,
+ 317,1191,3229,35,945,388,5510,2518,333,319,
+ 1230,321,5510,315,1191,238,5510,5510,5510,5510,
+ 5510,2464,319,1230,321,1181,314,1191,5510,2972,
+ 4856,5510,5510,5510,5510,1326,273,1627,5510,3115,
+ 4366,5510,1385,35,945,388,332,228,5510,1223,
+ 35,790,32,2633,2507,27,30,31,800,802,
+ 339,28,5510,5510,232,5510,5510,5510,5510,5510,
+ 1286,1799,407,4569,2972,4856,49,5510,1178,5510,
+ 5510,5510,5510,5510,1627,1626,2866,403,5510,236,
+ 230,231,228,332,5510,5510,5510,5510,5510,2905,
+ 274,5510,408,409,410,294,295,1936,316,1997,
+ 321,5510,5510,5510,5510,5510,1799,407,4569,5510,
+ 243,246,249,252,1126,4470,5510,1928,5510,5510,
+ 5510,5510,5510,2050,1956,35,790,32,2378,2507,
+ 27,30,31,800,802,339,28,408,409,410,
+ 294,295,1936,929,35,945,388,929,35,945,
+ 388,5510,5510,5510,5510,587,35,945,388,5510,
+ 5510,5510,1928,5510,5510,5510,5510,5510,5510,5510,
+ 5510,5510,587,35,945,388,5510,49,411,413,
+ 5510,49,5510,316,1997,321,1626,3001,5510,49,
+ 1626,47,587,35,945,388,5510,2706,1626,47,
+ 3188,5510,2187,5510,2415,4590,49,1602,35,945,
+ 388,5510,627,5510,5510,1626,47,5510,587,35,
+ 945,388,5510,411,414,2067,49,5510,5510,792,
+ 4366,5510,5510,5510,5510,1626,47,587,35,945,
+ 388,49,1618,35,945,388,5510,5510,5510,2392,
+ 1626,47,49,5510,5510,5510,5510,502,35,945,
+ 388,1626,47,5510,1394,2425,150,5510,150,537,
+ 537,49,537,5510,1627,2493,49,5510,5510,5510,
+ 1626,47,2706,4755,5510,1626,47,343,343,5510,
+ 343,49,5510,5510,2677,156,156,5510,156,1402,
+ 1626,874,2345,5510,188,2718,2972,3183,150,5510,
+ 4483,3104,537,3104,502,35,945,388,5510,5510,
+ 5510,2512,5510,3155,2396,5510,502,35,945,388,
+ 343,502,35,945,388,5510,5510,5510,156,502,
+ 35,945,388,5510,5510,5510,5510,2718,49,5510,
+ 150,5510,5510,3104,537,150,5510,1626,2040,537,
+ 49,5510,150,3238,5510,49,537,96,190,1626,
+ 3049,5510,343,49,1626,2216,5510,343,5510,5510,
+ 156,5510,1626,663,343,156,150,150,5510,188,
+ 2972,2972,156,505,188,4483,5510,5510,5510,150,
+ 4483,188,150,2972,5510,5510,2972,4483,343,343,
+ 5510,150,5510,150,504,2972,2562,1275,5510,5510,
+ 2972,343,5510,5510,343,150,5510,5510,5510,1275,
+ 150,3104,3104,343,1275,502,5510,5510,343,5510,
+ 5510,1706,1712,156,3104,3924,150,3104,5510,5510,
+ 1275,5510,3619,3960,1713,156,3104,3598,3961,5510,
+ 156,3903,5510,5510,3621,3991,534,5510,5510,3273,
+ 5510,5510,5510,5510,5510,2668,156,5510,5510,5510,
+ 5510,5510,5510,5510,5510,4244,5510,5510,5510,5510,
+ 5510,5510,5510,5510,5510,5510,5510,5510,5510,5510,
+ 5510,5510,5510,5510,5510,5510,5510,5510,5510,5510,
+ 5510,5510,5510,5510,5510,5510,5510,5510,5510,5510,
+ 5510,5510,5510,5510,5510,5510,5510,5510,5510,5510,
+ 5510,5510,5510,5510,5510,5510,5510,5510,5510,5510,
+ 5510,5510,5510,5510,5510,5510,5510,5510,5510,5510,
+ 5510,5510,5510,5510,5510,5510,5510,5510,5510,5510,
+ 5510,5510,5510,5510,5510,5510,5510,5510,5510,5510,
+ 5510,5510,5510,5510,5510,5510,5510,5510,5510,5510,
+ 5510,5510,5510,5510,5510,5510,5510,5510,5510,5510,
+ 5510,5510,5510,5510,5510,5510,5510,5510,5510,5510,
+ 5510,5510,5510,5510,5510,5510,5510,5510,5510,5510,
+ 5510,5510,5510,4240,5510,0,575,1,0,819,
+ 1,0,39,1,5525,0,39,1,5524,0,
+ 1405,1,0,39,5525,0,39,5524,0,932,
+ 318,0,1309,29,0,440,1489,0,454,1532,
+ 0,5525,48,0,5524,48,0,38,736,0,
+ 38,5525,0,38,5524,0,5516,1,0,5515,
+ 1,0,283,394,0,283,286,0,5744,241,
+ 0,5743,241,0,5848,241,0,5847,241,0,
+ 5771,241,0,5770,241,0,5769,241,0,5768,
+ 241,0,5767,241,0,5766,241,0,5765,241,
+ 0,5764,241,0,5782,241,0,5781,241,0,
+ 5780,241,0,5779,241,0,5778,241,0,5777,
+ 241,0,5776,241,0,5775,241,0,5774,241,
+ 0,5773,241,0,5772,241,0,39,241,5525,
+ 0,39,241,5524,0,5548,241,0,1309,387,
+ 0,2746,126,0,35,33,0,1,444,0,
+ 458,2445,0,457,2446,0,47,37,0,5548,
+ 1,0,39,1,0,1348,91,0,32,34,
+ 0,39,736,0,1,1450,0,1,5782,0,
+ 1,5781,0,1,5780,0,1,5779,0,1,
+ 5778,0,1,5777,0,1,5776,0,1,5775,
+ 0,1,5774,0,1,5773,0,1,5772,0,
+ 43,5546,0,43,37,0,501,1929,0,5548,
+ 1,229,0,39,1,229,0,229,416,0,
+ 5525,37,0,5524,37,0,237,2846,0,388,
+ 32,0,387,29,0,2746,128,0,2746,127,
+ 0,331,445,0,5520,405,0,5519,405,0,
+ 1,4438,0,1,3347,0,1,736,0,229,
+ 415,0,1,92,0,5546,45,0,37,45,
+ 0,1,331,0,2,5525,37,0,2,5524,
+ 37,0,5525,36,0,5524,36,0,501,4248,
+ 0,1,229,0,229,220,0,331,95,0,
+ 35,73,0,229,219,0,278,3745,0,5522,
+ 1,0,5518,1,0,1,229,2768,0,5519,
+ 229,0,2795,229,0,5522,383,0,5521,383,
+ 0,3023,229,0,10,12,0,8,10,12,
+ 0,185,3531,0,3185,383,0,8,12,0
};
};
public final static char baseAction[] = BaseAction.baseAction;
@@ -1463,348 +1479,348 @@ public class CPPTemplateTypeParameterParserprs implements lpg.lpgjavaruntime.Par
public interface TermAction {
public final static char termAction[] = {0,
- 5427,5392,5368,5368,5368,5368,5368,5368,5408,5368,
+ 5510,5475,5451,5451,5451,5451,5451,5451,5491,5451,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,5396,1,1,1,1,
+ 1,1,1,1,1,5479,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,5427,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,5427,1,1,1,1540,
- 5602,1,1080,301,2272,1,1,5438,286,5122,
- 5122,5434,283,5727,1044,2856,3751,2194,3452,2666,
- 3127,2835,1140,2820,2804,2817,10,5411,5411,5411,
- 5411,5411,5411,5411,5411,5411,5411,5411,5411,5411,
- 5411,5411,5411,5411,5411,5411,5411,5411,5411,5411,
- 5411,5411,5411,5411,5411,5411,5411,5411,5411,5411,
- 5411,5411,5411,5411,5411,5411,5411,1932,5411,5411,
- 5411,5411,5411,5411,5411,5411,5411,5411,5411,5411,
- 5411,135,5411,5411,5411,5411,5411,5411,5411,1,
- 5411,5411,5411,5411,5427,5083,5080,5411,5465,2877,
- 5411,5411,5411,5411,5411,5411,5411,5411,5411,5411,
- 5411,5411,8,5414,5414,5414,5414,5414,5414,5414,
- 5414,5414,5414,5414,5414,5414,5414,5414,5414,5414,
- 5414,5414,5414,5414,5414,5414,5414,5414,5414,5414,
- 5414,5414,5414,5414,5414,5414,5414,5414,5414,5414,
- 5414,5414,5414,137,5414,5414,5414,5414,5414,5414,
- 5414,5414,5414,5414,5414,5414,5414,439,5414,5414,
- 5414,5414,5414,5414,5414,115,5414,5414,5414,5414,
- 2316,3674,5427,5414,5427,4803,5414,5414,5414,5414,
- 5414,5414,5414,5414,5414,5414,5414,5414,5427,5392,
- 5368,5368,5368,5368,5368,5368,5399,5368,1,1,
+ 1,5510,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,5510,1,1,1,1541,
+ 5685,1,1184,301,2542,1,1,5521,286,5205,
+ 5205,5517,283,5810,2264,2923,3760,2194,3714,2741,
+ 3173,2903,1000,2894,2940,2874,10,5494,5494,5494,
+ 5494,5494,5494,5494,5494,5494,5494,5494,5494,5494,
+ 5494,5494,5494,5494,5494,5494,5494,5494,5494,5494,
+ 5494,5494,5494,5494,5494,5494,5494,5494,5494,5494,
+ 5494,5494,5494,5494,5494,5494,5494,1932,5494,5494,
+ 5494,5494,5494,5494,5494,5494,5494,5494,5494,5494,
+ 5494,135,5494,5494,5494,5494,5494,5494,5494,1,
+ 5494,5494,5494,5494,5510,5166,5163,5494,5548,2945,
+ 5494,5494,5494,5494,5494,5494,5494,5494,5494,5494,
+ 5494,5494,8,5497,5497,5497,5497,5497,5497,5497,
+ 5497,5497,5497,5497,5497,5497,5497,5497,5497,5497,
+ 5497,5497,5497,5497,5497,5497,5497,5497,5497,5497,
+ 5497,5497,5497,5497,5497,5497,5497,5497,5497,5497,
+ 5497,5497,5497,137,5497,5497,5497,5497,5497,5497,
+ 5497,5497,5497,5497,5497,5497,5497,439,5497,5497,
+ 5497,5497,5497,5497,5497,115,5497,5497,5497,5497,
+ 2316,3710,5510,5497,5510,4798,5497,5497,5497,5497,
+ 5497,5497,5497,5497,5497,5497,5497,5497,5510,5475,
+ 5451,5451,5451,5451,5451,5451,5482,5451,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,5396,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,776,
+ 1,1,1,5479,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,729,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,2282,1,1,1,1540,5602,1,
- 1080,5427,2272,1,1,5438,3468,3650,631,5862,
- 5863,5864,1044,2856,3751,2194,3452,2666,3127,2835,
- 1140,2820,2804,2817,5427,5392,5368,5368,5368,5368,
- 5368,5368,5399,5368,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,5396,
+ 1,1,1,2282,1,1,1,1541,5685,1,
+ 1184,5510,2542,1,1,5521,2712,3686,631,5945,
+ 5946,5947,2264,2923,3760,2194,3714,2741,3173,2903,
+ 1000,2894,2940,2874,5510,5475,5451,5451,5451,5451,
+ 5451,5451,5482,5451,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,5479,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,331,1,1,1,1,
1,1,1,1,1,1,1,1,1,136,
- 1,1,1,1540,5602,1,1080,117,2272,1,
- 1,5438,395,3674,397,5441,5442,5427,1044,2856,
- 3751,2194,3452,2666,3127,2835,1140,2820,2804,2817,
- 5427,5392,5368,5368,5368,5368,5368,5368,5399,5368,
+ 1,1,1,1541,5685,1,1184,117,2542,1,
+ 1,5521,395,3710,397,5524,5525,5510,2264,2923,
+ 3760,2194,3714,2741,3173,2903,1000,2894,2940,2874,
+ 5510,5475,5451,5451,5451,5451,5451,5451,5482,5451,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,5396,1,1,1,1,
+ 1,1,1,1,1,5479,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,138,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1893,1,1,1,1540,
- 5602,1,1080,384,2272,1,1,5438,2316,3650,
- 631,5427,5441,5442,1044,2856,3751,2194,3452,2666,
- 3127,2835,1140,2820,2804,2817,5427,5392,5368,5368,
- 5368,5368,5368,5368,5399,5368,1,1,1,1,
+ 1,1,1,1,1,1954,1,1,1,1541,
+ 5685,1,1184,384,2542,1,1,5521,2316,3686,
+ 631,5510,5524,5525,2264,2923,3760,2194,3714,2741,
+ 3173,2903,1000,2894,2940,2874,5510,5475,5451,5451,
+ 5451,5451,5451,5451,5482,5451,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,5396,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,5427,1,1,
+ 1,5479,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,5510,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,2282,1,1,1,1540,5602,1,1080,116,
- 2272,1,1,5438,111,3674,5427,5101,5098,5427,
- 1044,2856,3751,2194,3452,2666,3127,2835,1140,2820,
- 2804,2817,5427,5392,5368,5368,5368,5368,5368,5368,
- 5399,5368,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,5396,1,1,
+ 1,2282,1,1,1,1541,5685,1,1184,116,
+ 2542,1,1,5521,111,3710,5510,5184,5181,5510,
+ 2264,2923,3760,2194,3714,2741,3173,2903,1000,2894,
+ 2940,2874,5510,5475,5451,5451,5451,5451,5451,5451,
+ 5482,5451,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,5479,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,5427,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1911,1,1,
- 1,1540,5602,1,1080,5427,2272,1,1,5438,
- 5427,3650,631,4093,508,4115,1044,2856,3751,2194,
- 3452,2666,3127,2835,1140,2820,2804,2817,5427,5392,
- 5368,5368,5368,5368,5368,5368,5399,5368,1,1,
+ 1,1,1,5510,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1964,1,1,
+ 1,1541,5685,1,1184,5510,2542,1,1,5521,
+ 5510,3686,631,4129,508,4151,2264,2923,3760,2194,
+ 3714,2741,3173,2903,1000,2894,2940,2874,5510,5475,
+ 5451,5451,5451,5451,5451,5451,5482,5451,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,5396,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,5427,
+ 1,1,1,5479,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,5510,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,2431,1,1,1,1540,5602,1,
- 1080,5427,2272,1,1,5438,5427,5441,5442,5427,
- 506,3468,1044,2856,3751,2194,3452,2666,3127,2835,
- 1140,2820,2804,2817,5427,5392,5368,5368,5368,5368,
- 5368,5368,5399,5368,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,5396,
+ 1,1,1,2443,1,1,1,1541,5685,1,
+ 1184,5510,2542,1,1,5521,5510,5524,5525,5510,
+ 506,2712,2264,2923,3760,2194,3714,2741,3173,2903,
+ 1000,2894,2940,2874,5510,5475,5451,5451,5451,5451,
+ 5451,5451,5482,5451,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,5479,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,5427,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,3705,
- 1,1,1,1540,5602,1,1080,5427,2272,1,
- 1,5438,5427,5083,5080,121,5465,5427,1044,2856,
- 3751,2194,3452,2666,3127,2835,1140,2820,2804,2817,
- 5427,5392,5368,5368,5368,5368,5368,5368,5399,5368,
+ 1,1,1,1,1,5510,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,3572,
+ 1,1,1,1541,5685,1,1184,5510,2542,1,
+ 1,5521,5510,5166,5163,121,5548,5510,2264,2923,
+ 3760,2194,3714,2741,3173,2903,1000,2894,2940,2874,
+ 5510,5475,5451,5451,5451,5451,5451,5451,5482,5451,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,5396,1,1,1,1,
+ 1,1,1,1,1,5479,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,5427,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1921,1,1,1,1540,
- 5602,1,1080,5427,2272,1,1,5438,48,5101,
- 5098,125,3079,3105,1044,2856,3751,2194,3452,2666,
- 3127,2835,1140,2820,2804,2817,5427,5392,5368,5368,
- 5368,5368,5368,5368,5399,5368,1,1,1,1,
+ 1,5510,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1970,1,1,1,1541,
+ 5685,1,1184,5510,2542,1,1,5521,48,5184,
+ 5181,125,3125,3151,2264,2923,3760,2194,3714,2741,
+ 3173,2903,1000,2894,2940,2874,5510,5475,5451,5451,
+ 5451,5451,5451,5451,5482,5451,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,5396,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,5427,1,1,
+ 1,5479,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,5510,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,5427,1,1,1,1540,5602,1,1080,5427,
- 2272,1,1,5438,290,5441,5442,5431,3079,3105,
- 1044,2856,3751,2194,3452,2666,3127,2835,1140,2820,
- 2804,2817,5427,2668,1,1,1,1,1,1,
- 2807,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,5436,1,1,
+ 1,5510,1,1,1,1541,5685,1,1184,5510,
+ 2542,1,1,5521,290,5524,5525,5514,3125,3151,
+ 2264,2923,3760,2194,3714,2741,3173,2903,1000,2894,
+ 2940,2874,5510,2768,1,1,1,1,1,1,
+ 2795,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,5519,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,5828,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,5427,1,1,
- 1,1540,5602,1,1080,5427,2272,1,1,5438,
- 5427,39,37,5223,5223,5465,1044,2856,3751,2194,
- 3452,2666,3127,2835,1140,2820,2804,2817,39,5083,
- 5080,4774,1405,3899,3983,2957,5430,4005,921,5691,
- 5689,5698,5697,5693,5694,5692,5695,5696,5699,5690,
- 5687,5764,5765,5463,5681,5688,5684,5660,5686,5685,
- 5682,5683,5661,3961,3930,4049,4027,5825,5446,370,
- 3830,1043,1184,5448,1166,4181,1174,5449,5447,1009,
- 5443,5444,5445,5427,2469,5826,5827,368,5427,1356,
- 5427,5290,5290,229,5286,229,229,229,5294,229,
+ 1,1,1,5911,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,5510,1,1,
+ 1,1541,5685,1,1184,5510,2542,1,1,5521,
+ 5510,39,37,5306,5306,5548,2264,2923,3760,2194,
+ 3714,2741,3173,2903,1000,2894,2940,2874,39,5166,
+ 5163,4796,1405,3935,4019,3347,5513,4041,921,5774,
+ 5772,5781,5780,5776,5777,5775,5778,5779,5782,5773,
+ 5770,5847,5848,5546,5764,5771,5767,5743,5769,5768,
+ 5765,5766,5744,3997,3966,4085,4063,5908,5529,370,
+ 3866,1174,1219,5531,1176,4217,1182,5532,5530,992,
+ 5526,5527,5528,5510,2687,5909,5910,368,5510,1356,
+ 5510,5373,5373,229,5369,229,229,229,5377,229,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,229,1,1,1,1,
- 1,1,1,1,1,5427,5441,5442,2048,1,
- 5062,5283,1,5073,5069,5327,5077,5333,1187,5330,
- 5437,224,36,5362,5359,131,1,1,1,3032,
- 5839,653,667,3148,595,225,1232,5436,1,5427,
- 133,416,229,5687,5764,5765,363,5681,5688,5684,
- 5660,5686,5685,5682,5683,5661,5927,5687,5764,5765,
- 510,5681,5688,5684,5660,5686,5685,5682,5683,5661,
- 4071,825,5862,5863,5864,5427,5290,5290,229,5286,
- 229,229,229,5336,229,1,1,1,1,1,
+ 1,1,1,1,1,5510,5524,5525,2048,1,
+ 5145,5366,1,5156,5152,5410,5160,5416,1187,5413,
+ 5520,224,36,5445,5442,131,1,1,1,3251,
+ 5922,617,667,3350,595,225,1232,5519,1,5510,
+ 133,416,229,5770,5847,5848,363,5764,5771,5767,
+ 5743,5769,5768,5765,5766,5744,6010,5770,5847,5848,
+ 510,5764,5771,5767,5743,5769,5768,5765,5766,5744,
+ 4107,915,5945,5946,5947,5510,5373,5373,229,5369,
+ 229,229,229,5419,229,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
229,1,1,1,1,1,1,1,1,1,
- 1,363,29,2965,1,39,5283,33,5113,5465,
- 5211,331,47,5211,331,5211,5211,336,363,804,
- 37,1,1,1,3032,5839,5427,667,2348,444,
- 1,1,5211,1,134,5214,415,229,5214,129,
- 5764,5765,5211,5211,5211,5211,345,39,39,2965,
- 5465,5927,331,2443,185,331,396,1532,139,226,
- 387,5463,5211,1318,5427,5101,5098,5862,5863,5864,
- 5211,5427,5427,5116,424,5211,5211,5211,5211,5211,
- 5211,5687,5764,5765,5427,5681,5688,5684,5660,5686,
- 5685,5682,5683,5661,5211,5211,5211,5211,5211,5211,
- 5211,5211,5211,5211,5211,5211,5211,5211,5211,1318,
- 931,1532,5211,5211,5211,5211,5211,5211,5211,5211,
- 5211,5211,5211,5211,5211,5427,5211,1846,5235,4071,
- 825,5235,2348,5235,5235,2559,2531,1,114,345,
- 5083,5080,2418,1405,737,331,2957,5063,331,5427,
- 5235,5427,5083,5080,5427,1405,5238,2894,2957,2232,
- 5235,5235,5235,5235,2860,1803,1760,1717,1674,1631,
- 1588,1545,1502,1459,1416,5418,5066,227,567,139,
- 5235,132,1,5073,5069,4369,5077,737,5235,2957,
- 595,5427,941,5235,5235,5235,5235,5235,5235,5687,
- 5764,5765,1318,5681,5688,5684,5660,5686,5685,5682,
- 5683,5661,5235,5235,5235,5235,5235,5235,5235,5235,
- 5235,5235,5235,5235,5235,5235,5235,4093,5427,4115,
- 5235,5235,5235,5235,5235,5235,5235,5235,5235,5235,
- 5235,5235,5235,5427,5235,5427,5368,5368,229,5368,
- 229,229,229,5371,229,1,1,1,1,1,
+ 1,363,29,3004,1,39,5366,33,5196,5548,
+ 5294,331,47,5294,331,5294,5294,336,363,804,
+ 37,1,1,1,3251,5922,5510,667,2348,444,
+ 1,1,5294,1,134,5297,415,229,5297,129,
+ 5847,5848,5294,5294,5294,5294,345,39,39,3004,
+ 5548,6010,331,2448,185,331,396,1309,139,226,
+ 387,5546,5294,1318,5510,5184,5181,5945,5946,5947,
+ 5294,5510,5510,5199,424,5294,5294,5294,5294,5294,
+ 5294,5770,5847,5848,5510,5764,5771,5767,5743,5769,
+ 5768,5765,5766,5744,5294,5294,5294,5294,5294,5294,
+ 5294,5294,5294,5294,5294,5294,5294,5294,5294,1318,
+ 929,1309,5294,5294,5294,5294,5294,5294,5294,5294,
+ 5294,5294,5294,5294,5294,5510,5294,1846,5318,4107,
+ 915,5318,2348,5318,5318,2605,2577,1,114,345,
+ 5166,5163,2473,1405,736,331,3347,5146,331,5510,
+ 5318,5510,5166,5163,5510,1405,5321,2846,3347,2232,
+ 5318,5318,5318,5318,4239,1803,1760,1717,1674,1631,
+ 1588,1545,1502,1459,1416,5501,5149,227,559,139,
+ 5318,132,1,5156,5152,4438,5160,736,5318,3347,
+ 595,5510,941,5318,5318,5318,5318,5318,5318,5770,
+ 5847,5848,1318,5764,5771,5767,5743,5769,5768,5765,
+ 5766,5744,5318,5318,5318,5318,5318,5318,5318,5318,
+ 5318,5318,5318,5318,5318,5318,5318,4129,5510,4151,
+ 5318,5318,5318,5318,5318,5318,5318,5318,5318,5318,
+ 5318,5318,5318,5510,5318,5510,5451,5451,229,5451,
+ 229,229,229,5454,229,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 229,1,1,8694,1,1,1,1,1,1,
- 2232,5427,8654,8649,1,2860,5365,309,5073,5069,
- 4369,5077,737,5348,2957,124,5348,5427,8654,8649,
- 5427,1,1,1,3351,5638,5427,1080,5437,2272,
- 1,4315,1790,3148,29,5756,220,367,5073,5069,
- 2418,5077,737,1,2957,5436,1,43,5280,5280,
- 5427,5927,5427,5368,5368,229,5368,229,229,229,
+ 229,1,1,8777,1,1,1,1,1,1,
+ 2232,5510,8737,8732,1,4239,5448,309,5156,5152,
+ 4438,5160,736,5431,3347,124,5431,5510,8737,8732,
+ 5510,1,1,1,3399,5721,5510,1184,5520,2542,
+ 1,4351,1350,3350,29,1221,220,367,5156,5152,
+ 2473,5160,736,1,3347,5519,1,43,5363,5363,
+ 5510,6010,5510,5451,5451,229,5451,229,229,229,
229,229,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,229,1,1,
- 8694,1,1,1,1,1,1,5427,5277,5089,
- 3793,1,5427,5365,331,5083,5080,4369,1405,737,
- 1318,2957,3079,3105,3720,5427,1144,1928,1,1,
- 1,3351,5638,5435,1080,362,2272,5427,1,5073,
- 5069,2418,5077,737,311,2957,5113,2136,5427,5073,
- 5069,4369,5077,737,5348,2957,5427,5348,5927,5427,
- 5368,5368,229,5368,229,229,229,5380,229,1,
+ 8777,1,1,1,1,1,1,5510,5360,5172,
+ 3829,1,5510,5448,331,5166,5163,4438,1405,736,
+ 1318,3347,3125,3151,3204,5510,1144,1972,1,1,
+ 1,3399,5721,5518,1184,362,2542,5510,1,5156,
+ 5152,2473,5160,736,311,3347,5196,2136,5510,5156,
+ 5152,4438,5160,736,5431,3347,5510,5431,6010,5510,
+ 5451,5451,229,5451,229,229,229,5463,229,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,229,1,1,8694,1,1,
- 1,1,1,1,91,1005,5434,5232,1,5427,
- 5365,1318,5427,5083,5080,3221,1405,5238,5427,2957,
- 113,5116,733,1096,5427,1,1,1,3351,5638,
- 1050,1080,5439,2272,5427,1,5229,5229,440,5226,
- 219,331,5433,363,331,1,5073,5069,4369,5077,
- 737,5427,2957,2268,5427,5927,5427,5368,5368,229,
- 5368,229,229,229,5371,229,1,1,1,1,
+ 1,1,1,1,229,1,1,8777,1,1,
+ 1,1,1,1,91,1005,5517,5315,1,5510,
+ 5448,1318,5510,5166,5163,2686,1405,5321,5510,3347,
+ 113,5199,796,1096,5510,1,1,1,3399,5721,
+ 1050,1184,5522,2542,5510,1,5312,5312,440,5309,
+ 219,331,5516,363,331,1,5156,5152,4438,5160,
+ 736,5510,3347,2268,5510,6010,5510,5451,5451,229,
+ 5451,229,229,229,5454,229,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,229,1,1,8694,1,1,1,1,1,
- 1,5438,112,5092,5427,1,5427,5365,1,5073,
- 5069,4369,5077,737,4930,2957,309,5432,363,4093,
- 123,4115,1,1,1,3351,5638,1050,1080,1927,
- 2272,5427,5939,309,454,363,1,220,1,5073,
- 5069,2418,5077,737,5386,2957,157,394,5119,5119,
- 122,283,5927,5427,5368,5368,229,5368,229,229,
- 229,5371,229,1,1,1,1,1,1,1,
+ 1,229,1,1,8777,1,1,1,1,1,
+ 1,5521,112,5175,5510,1,5510,5448,1,5156,
+ 5152,4438,5160,736,4941,3347,309,5515,363,4129,
+ 123,4151,1,1,1,3399,5721,1050,1184,1971,
+ 2542,5510,6022,309,454,363,1,220,1,5156,
+ 5152,2473,5160,736,5469,3347,157,394,5202,5202,
+ 122,283,6010,5510,5451,5451,229,5451,229,229,
+ 229,5454,229,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,229,1,
- 1,8694,1,1,1,1,1,1,283,5095,
- 5427,4093,1,4115,5365,1,5073,5069,5327,5077,
- 5333,1318,5330,5438,5427,5427,2948,3079,3105,1,
- 1,1,3351,5638,515,1080,1889,2272,5427,5083,
- 5080,5427,1405,737,220,2957,5427,5083,5080,5433,
- 1405,737,5427,2957,5427,5300,5297,3079,3105,5927,
- 5427,5368,5368,229,5368,229,229,229,229,229,
+ 1,8777,1,1,1,1,1,1,283,5178,
+ 5510,4129,1,4151,5448,1,5156,5152,5410,5160,
+ 5416,1318,5413,5521,5510,5510,3101,3125,3151,1,
+ 1,1,3399,5721,515,1184,1889,2542,5510,5166,
+ 5163,5510,1405,736,220,3347,5510,5166,5163,5516,
+ 1405,736,5510,3347,5510,5383,5380,3125,3151,6010,
+ 5510,5451,5451,229,5451,229,229,229,229,229,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,229,1,1,8694,1,
- 1,1,1,1,1,5463,445,39,39,1,
- 5465,5365,5318,130,883,5318,92,1,1,395,
- 1,358,5339,388,5432,5339,1,1,1,3351,
- 5638,39,1080,5427,2272,5465,95,39,39,387,
- 5465,5435,5374,347,126,5374,875,38,5110,5107,
- 428,5427,5104,1037,2957,348,5927,5427,5368,5368,
- 229,5368,229,229,229,229,229,1,1,1,
+ 1,1,1,1,1,229,1,1,8777,1,
+ 1,1,1,1,1,5546,445,39,39,1,
+ 5548,5448,5401,130,883,5401,92,1,1,395,
+ 1,358,5422,388,5515,5422,1,1,1,3399,
+ 5721,39,1184,5510,2542,5548,95,39,39,387,
+ 5548,5518,5457,347,126,5457,776,38,5193,5190,
+ 428,5510,5187,937,3347,348,6010,5510,5451,5451,
+ 229,5451,229,229,229,229,229,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,229,1,1,8694,1,1,1,1,
- 1,1,1929,5427,5205,405,1,3252,5365,2772,
- 5427,5441,5442,5321,5434,737,1318,2957,1,2559,
- 2531,5784,5208,1,1,1,3351,5638,1318,1080,
- 5324,2272,3242,318,1,128,5086,2965,5427,5441,
- 5442,5427,341,5862,5863,5864,5439,5427,2673,2600,
- 5427,8657,8657,5927,5427,5368,5368,229,5368,229,
+ 1,1,229,1,1,8777,1,1,1,1,
+ 1,1,1979,5510,5288,405,1,2947,5448,2818,
+ 5510,5524,5525,5404,5517,736,1318,3347,1,2605,
+ 2577,5867,5291,1,1,1,3399,5721,1318,1184,
+ 5407,2542,3014,318,1,128,5169,3004,5510,5524,
+ 5525,5510,341,5945,5946,5947,5522,5510,2719,2646,
+ 5510,8740,8740,6010,5510,5451,5451,229,5451,229,
229,229,229,229,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,229,
- 1,1,8694,1,1,1,1,1,1,5427,
- 2772,5463,1,1,5427,5365,1318,1318,1,301,
- 161,320,341,5312,341,5438,5433,341,5786,5727,
- 1,1,1,3351,5638,5868,1080,5427,2272,37,
- 5223,5223,37,5223,5223,331,118,5223,237,2673,
- 2600,5303,1,5073,5069,4774,5077,3899,3983,2957,
- 5927,4005,5241,5268,5274,5247,5250,5262,5259,5265,
- 5256,5253,5244,5271,341,37,5223,5223,2985,120,
- 5463,3625,2727,3531,1318,161,458,3961,3930,4049,
- 4027,5432,5446,5427,3830,1043,1184,5448,1166,4181,
- 1174,5449,5447,1009,5443,5444,5445,45,5345,5345,
- 5427,5355,5351,1356,3625,2727,3458,39,39,448,
- 516,39,5083,5080,4774,1405,3899,3983,2957,5421,
- 4005,724,5691,5689,5698,5697,5693,5694,5692,5695,
- 5696,5699,5690,119,1,1,5427,1,5342,5217,
- 1027,5463,5427,5389,5063,528,3961,3930,4049,4027,
- 5437,5446,5427,3830,1043,1184,5448,1166,4181,1174,
- 5449,5447,1009,5443,5444,5445,1,5436,3625,2727,
- 5427,8,1356,5066,5437,567,291,457,5405,5424,
- 5427,784,5434,141,5083,5080,4774,1405,3899,3983,
- 2957,5436,4005,724,5691,5689,5698,5697,5693,5694,
- 5692,5695,5696,5699,5690,1,5434,4211,1,5427,
- 528,4915,289,163,1,2656,5427,5427,3961,3930,
- 4049,4027,191,5446,5427,3830,1043,1184,5448,1166,
- 4181,1174,5449,5447,1009,5443,5444,5445,5882,191,
- 5220,5427,5424,5427,1356,2018,3732,5427,39,39,
- 1,5073,5069,4774,5077,3899,3983,2957,5427,4005,
- 5241,5268,5274,5247,5250,5262,5259,5265,5256,5253,
- 5244,5271,4503,5427,5427,5427,4237,4310,163,4887,
- 5427,420,792,4320,5427,3961,3930,4049,4027,5427,
- 5446,395,3830,1043,1184,5448,1166,4181,1174,5449,
- 5447,1009,5443,5444,5445,5427,375,5427,1489,4202,
- 3711,1356,100,4901,99,39,39,39,5083,5080,
- 4774,1405,3899,3983,2957,5402,4005,724,5691,5689,
- 5698,5697,5693,5694,5692,5695,5696,5699,5690,1532,
- 5427,5427,103,4437,1928,4604,1532,2056,532,426,
- 2106,1,3961,3930,4049,4027,5427,5446,5427,3830,
- 1043,1184,5448,1166,4181,1174,5449,5447,1009,5443,
- 5444,5445,5427,35,449,4653,1270,2144,1356,5427,
- 278,4203,2452,5383,5405,39,5083,5080,4774,1405,
- 3899,3983,2957,5402,4005,724,5691,5689,5698,5697,
- 5693,5694,5692,5695,5696,5699,5690,5427,308,2451,
- 4862,3712,5427,75,5427,4814,3512,5427,5427,3708,
- 3961,3930,4049,4027,2877,5446,73,3830,1043,1184,
- 5448,1166,4181,1174,5449,5447,1009,5443,5444,5445,
- 5427,4225,3820,5427,2483,5427,1356,521,4886,5427,
- 5489,5490,5405,39,5083,5080,4774,1405,3899,3983,
- 2957,5431,4005,724,5691,5689,5698,5697,5693,5694,
- 5692,5695,5696,5699,5690,48,2665,5427,2755,5442,
- 48,5377,5427,2,5441,127,3164,3820,3961,3930,
- 4049,4027,575,5446,5427,3830,1043,1184,5448,1166,
- 4181,1174,5449,5447,1009,5443,5444,5445,1,1975,
- 5427,2314,39,5896,5890,3218,5465,5894,581,5427,
- 1,819,4896,567,5427,5427,5427,3699,4906,4455,
- 5442,5427,669,5427,3132,5441,4920,5427,37,5427,
- 2772,5427,5963,5888,5889,5919,5920,5427,5427,3255,
- 5897,5427,5427,5315,5427,5427,5427,5427,5427,5427,
- 2176,5427,5427,5899,5427,2877,5427,5427,5427,5427,
- 5430,2007,5427,1534,1542,5427,5900,5898,5921,2673,
- 2600,5427,5427,5427,5427,5427,5427,5427,5427,5427,
- 5427,5427,5427,5427,5427,5910,5909,5922,5427,5427,
- 5891,5892,5915,5916,5913,5914,5893,5895,5917,5918,
- 5427,5427,5427,5923,5427,5903,5904,5905,5901,5902,
- 5911,5912,5907,5906,5908,39,5083,5080,4774,1405,
- 3899,3983,2957,5427,4005,724,5691,5689,5698,5697,
- 5693,5694,5692,5695,5696,5699,5690,5427,5427,5427,
- 5427,5427,5427,5427,5427,5427,5427,5427,5427,5427,
- 3961,3930,4049,4027,5427,5446,5427,3830,1043,1184,
- 5448,1166,4181,1174,5449,5447,1009,5443,5444,5445,
- 5427,5427,5427,5427,5427,5427,1356,39,5083,5080,
- 4774,1405,3899,3983,2957,5427,4005,724,5691,5689,
- 5698,5697,5693,5694,5692,5695,5696,5699,5690,5427,
- 5427,5427,5427,5427,5427,5427,5427,5427,5427,5427,
- 5427,5427,3961,3930,4049,4027,5427,5446,5427,3830,
- 1043,1184,5448,1166,4181,1174,5449,5447,1009,5443,
- 5444,5445,39,5083,5080,4774,1405,3899,3983,2957,
- 2959,4005,724,5691,5689,5698,5697,5693,5694,5692,
- 5695,5696,5699,5690,5427,5427,5427,5427,5427,5427,
- 5427,5427,5427,5427,5427,5427,5427,3961,3930,4049,
- 4027,5427,5446,5427,3830,1043,1184,5448,1166,4181,
- 1174,5449,5447,1009,5443,5444,5445,5427,5427,5427,
- 5427,5427,5427,1356,39,5083,5080,4808,1405,3899,
- 3983,2957,5427,4005,724,5691,5689,5698,5697,5693,
- 5694,5692,5695,5696,5699,5690,5427,5427,5427,5427,
- 5427,5427,5427,5427,5427,5427,5427,5427,5427,3961,
- 3930,4049,4027,5427,5446,5427,3830,1043,1184,5448,
- 1166,4181,1174,5449,5447,1009,5443,5444,5445,39,
- 5083,5080,4774,1405,3899,3983,2957,5427,4005,724,
- 5691,5689,5698,5697,5693,5694,5692,5695,5696,5699,
- 5690,5427,5427,5427,5427,5427,5427,5427,5427,5427,
- 5427,5427,5427,5427,3961,3930,4049,4027,5427,5446,
- 5427,3830,1043,1184,5448,1166,4181,1174,5449,5447,
- 1009,5443,5444,5445,39,5083,5080,4774,1405,3899,
- 3983,2957,5427,4005,724,5691,5689,5698,5697,5693,
- 5694,5692,5695,5696,5699,5690,5427,5427,5427,5427,
- 5427,5427,5427,5427,5427,5427,5427,5427,5427,3961,
- 3930,4049,4027,5427,5446,5427,3830,1043,1184,5448,
- 1166,4181,1174,5449,5447,1009,5443,5444,5445,5427,
- 5083,5080,5427,5465,5427,5427,5427,5427,5427,795,
- 5691,5689,5698,5697,5693,5694,5692,5695,5696,5699,
- 5690,5687,5764,5765,5427,5681,5688,5684,5660,5686,
- 5685,5682,5683,5661,5427,5427,5427,5427,5825,5427,
- 5427,5427,5427,5427,5427,5427,5427,5427,241,5198,
- 5194,5427,5202,5427,5427,2469,5826,5827,795,5185,
- 5191,5164,5167,5179,5176,5182,5173,5170,5161,5188,
- 5140,5134,5131,5427,5158,5137,5149,5128,5143,5146,
- 5155,5152,5125,5427,5427,5427,5427,5825,29,387,
- 387,5309,387,387,5309,387,5309,5309,5427,5427,
- 5427,5427,5427,5427,2469,5826,5827,5427,5427,5427,
- 387,387,387,5309,387,387,387,387,387,387,
- 387,387,387,5427,5427,5427,5427,5427,5427,5427,
- 5427,5427,5427,5427,5427,5427,5427,5427,5427,5427,
- 5427,5427,5427,5089,5427,5427,5427,5427,5427,5427,
- 5427,5309,5427,5427,5427,5427,5427,5427,5427,5427,
- 5427,5309,32,388,388,5306,388,388,5306,388,
- 5306,5306,5427,5427,5427,5427,5427,5427,5427,5427,
- 5427,5427,5427,5427,388,388,388,5306,388,388,
- 388,388,388,388,388,388,388,5427,5427,5427,
- 223,5427,5427,5427,5427,5427,5427,5427,5427,5427,
- 5427,5691,5689,5698,5697,5693,5694,5692,5695,5696,
- 5699,5690,5687,5764,5765,5306,5681,5688,5684,5660,
- 5686,5685,5682,5683,5661,5306
+ 1,1,8777,1,1,1,1,1,1,5510,
+ 2818,5546,1,1,5510,5448,1318,1318,1,301,
+ 161,320,341,5395,341,5521,5516,341,5869,5810,
+ 1,1,1,3399,5721,5951,1184,5510,2542,37,
+ 5306,5306,37,5306,5306,331,118,5306,237,2719,
+ 2646,5386,1,5156,5152,4796,5160,3935,4019,3347,
+ 6010,4041,5324,5351,5357,5330,5333,5345,5342,5348,
+ 5339,5336,5327,5354,341,37,5306,5306,3552,120,
+ 5546,3661,2773,2878,1318,161,458,3997,3966,4085,
+ 4063,5515,5529,5510,3866,1174,1219,5531,1176,4217,
+ 1182,5532,5530,992,5526,5527,5528,45,5428,5428,
+ 5510,5438,5434,1356,3661,2773,2702,39,39,448,
+ 516,39,5166,5163,4796,1405,3935,4019,3347,5504,
+ 4041,1450,5774,5772,5781,5780,5776,5777,5775,5778,
+ 5779,5782,5773,119,1,1,5510,1,5425,5300,
+ 1027,5546,5510,5472,5146,528,3997,3966,4085,4063,
+ 5520,5529,5510,3866,1174,1219,5531,1176,4217,1182,
+ 5532,5530,992,5526,5527,5528,1,5519,3661,2773,
+ 5510,8,1356,5149,5520,559,291,457,5488,5507,
+ 5510,784,5517,141,5166,5163,4796,1405,3935,4019,
+ 3347,5519,4041,1450,5774,5772,5781,5780,5776,5777,
+ 5775,5778,5779,5782,5773,1,5517,4361,1,5510,
+ 528,4932,289,163,1,1491,5510,5510,3997,3966,
+ 4085,4063,191,5529,5510,3866,1174,1219,5531,1176,
+ 4217,1182,5532,5530,992,5526,5527,5528,5965,191,
+ 5303,5510,5507,5510,1356,2018,4346,5510,39,39,
+ 1,5156,5152,4796,5160,3935,4019,3347,5510,4041,
+ 5324,5351,5357,5330,5333,5345,5342,5348,5339,5336,
+ 5327,5354,4916,5510,5510,5510,4378,4943,163,4917,
+ 5510,420,1043,4955,5510,3997,3966,4085,4063,5510,
+ 5529,395,3866,1174,1219,5531,1176,4217,1182,5532,
+ 5530,992,5526,5527,5528,5510,375,5510,932,4238,
+ 3745,1356,100,4929,99,39,39,39,5166,5163,
+ 4796,1405,3935,4019,3347,5485,4041,1450,5774,5772,
+ 5781,5780,5776,5777,5775,5778,5779,5782,5773,1309,
+ 5510,5510,103,3747,1972,3861,1309,2056,532,426,
+ 2106,1,3997,3966,4085,4063,5510,5529,5510,3866,
+ 1174,1219,5531,1176,4217,1182,5532,5530,992,5526,
+ 5527,5528,5510,35,449,4960,1322,2144,1356,5510,
+ 278,3755,2599,5466,5488,39,5166,5163,4796,1405,
+ 3935,4019,3347,5485,4041,1450,5774,5772,5781,5780,
+ 5776,5777,5775,5778,5779,5782,5773,5510,308,2576,
+ 3265,3192,5510,75,5510,4251,3467,5510,5510,3743,
+ 3997,3966,4085,4063,2945,5529,73,3866,1174,1219,
+ 5531,1176,4217,1182,5532,5530,992,5526,5527,5528,
+ 5510,4221,3623,5510,2683,5510,1356,521,4880,5510,
+ 5572,5573,5488,39,5166,5163,4796,1405,3935,4019,
+ 3347,5514,4041,1450,5774,5772,5781,5780,5776,5777,
+ 5775,5778,5779,5782,5773,48,3025,5510,2801,5525,
+ 48,5460,5510,2,5524,127,3210,3623,3997,3966,
+ 4085,4063,575,5529,5510,3866,1174,1219,5531,1176,
+ 4217,1182,5532,5530,992,5526,5527,5528,1,1975,
+ 5510,2338,39,5979,5973,3255,5548,5977,581,5510,
+ 1,819,4885,559,5510,5510,5510,3735,4892,4946,
+ 5525,5510,669,5510,3554,5524,4976,5510,37,5510,
+ 2818,5510,6046,5971,5972,6002,6003,5510,5510,3292,
+ 5980,5510,5510,5398,5510,5510,5510,5510,5510,5510,
+ 2540,5510,5510,5982,5510,2945,5510,5510,5510,5510,
+ 5513,2428,5510,1610,1620,5510,5983,5981,6004,2719,
+ 2646,5510,5510,5510,5510,5510,5510,5510,5510,5510,
+ 5510,5510,5510,5510,5510,5993,5992,6005,5510,5510,
+ 5974,5975,5998,5999,5996,5997,5976,5978,6000,6001,
+ 5510,5510,5510,6006,5510,5986,5987,5988,5984,5985,
+ 5994,5995,5990,5989,5991,39,5166,5163,4796,1405,
+ 3935,4019,3347,5510,4041,1450,5774,5772,5781,5780,
+ 5776,5777,5775,5778,5779,5782,5773,5510,5510,5510,
+ 5510,5510,5510,5510,5510,5510,5510,5510,5510,5510,
+ 3997,3966,4085,4063,5510,5529,5510,3866,1174,1219,
+ 5531,1176,4217,1182,5532,5530,992,5526,5527,5528,
+ 5510,5510,5510,5510,5510,5510,1356,39,5166,5163,
+ 4796,1405,3935,4019,3347,5510,4041,1450,5774,5772,
+ 5781,5780,5776,5777,5775,5778,5779,5782,5773,5510,
+ 5510,5510,5510,5510,5510,5510,5510,5510,5510,5510,
+ 5510,5510,3997,3966,4085,4063,5510,5529,5510,3866,
+ 1174,1219,5531,1176,4217,1182,5532,5530,992,5526,
+ 5527,5528,39,5166,5163,4796,1405,3935,4019,3347,
+ 2526,4041,1450,5774,5772,5781,5780,5776,5777,5775,
+ 5778,5779,5782,5773,5510,5510,5510,5510,5510,5510,
+ 5510,5510,5510,5510,5510,5510,5510,3997,3966,4085,
+ 4063,5510,5529,5510,3866,1174,1219,5531,1176,4217,
+ 1182,5532,5530,992,5526,5527,5528,5510,5510,5510,
+ 5510,5510,5510,1356,39,5166,5163,4838,1405,3935,
+ 4019,3347,5510,4041,1450,5774,5772,5781,5780,5776,
+ 5777,5775,5778,5779,5782,5773,5510,5510,5510,5510,
+ 5510,5510,5510,5510,5510,5510,5510,5510,5510,3997,
+ 3966,4085,4063,5510,5529,5510,3866,1174,1219,5531,
+ 1176,4217,1182,5532,5530,992,5526,5527,5528,39,
+ 5166,5163,4796,1405,3935,4019,3347,5510,4041,1450,
+ 5774,5772,5781,5780,5776,5777,5775,5778,5779,5782,
+ 5773,5510,5510,5510,5510,5510,5510,5510,5510,5510,
+ 5510,5510,5510,5510,3997,3966,4085,4063,5510,5529,
+ 5510,3866,1174,1219,5531,1176,4217,1182,5532,5530,
+ 992,5526,5527,5528,39,5166,5163,4796,1405,3935,
+ 4019,3347,5510,4041,1450,5774,5772,5781,5780,5776,
+ 5777,5775,5778,5779,5782,5773,5510,5510,5510,5510,
+ 5510,5510,5510,5510,5510,5510,5510,5510,5510,3997,
+ 3966,4085,4063,5510,5529,5510,3866,1174,1219,5531,
+ 1176,4217,1182,5532,5530,992,5526,5527,5528,5510,
+ 5166,5163,5510,5548,5510,5510,5510,5510,5510,865,
+ 5774,5772,5781,5780,5776,5777,5775,5778,5779,5782,
+ 5773,5770,5847,5848,5510,5764,5771,5767,5743,5769,
+ 5768,5765,5766,5744,5510,5510,5510,5510,5908,5510,
+ 5510,5510,5510,5510,5510,5510,5510,5510,241,5281,
+ 5277,5510,5285,5510,5510,2687,5909,5910,865,5268,
+ 5274,5247,5250,5262,5259,5265,5256,5253,5244,5271,
+ 5223,5217,5214,5510,5241,5220,5232,5211,5226,5229,
+ 5238,5235,5208,5510,5510,5510,5510,5908,29,387,
+ 387,5392,387,387,5392,387,5392,5392,5510,5510,
+ 5510,5510,5510,5510,2687,5909,5910,5510,5510,5510,
+ 387,387,387,5392,387,387,387,387,387,387,
+ 387,387,387,5510,5510,5510,5510,5510,5510,5510,
+ 5510,5510,5510,5510,5510,5510,5510,5510,5510,5510,
+ 5510,5510,5510,5172,5510,5510,5510,5510,5510,5510,
+ 5510,5392,5510,5510,5510,5510,5510,5510,5510,5510,
+ 5510,5392,32,388,388,5389,388,388,5389,388,
+ 5389,5389,5510,5510,5510,5510,5510,5510,5510,5510,
+ 5510,5510,5510,5510,388,388,388,5389,388,388,
+ 388,388,388,388,388,388,388,5510,5510,5510,
+ 223,5510,5510,5510,5510,5510,5510,5510,5510,5510,
+ 5510,5774,5772,5781,5780,5776,5777,5775,5778,5779,
+ 5782,5773,5770,5847,5848,5389,5764,5771,5767,5743,
+ 5769,5768,5765,5766,5744,5389
};
};
public final static char termAction[] = TermAction.termAction;
@@ -1812,60 +1828,61 @@ public class CPPTemplateTypeParameterParserprs implements lpg.lpgjavaruntime.Par
public interface Asb {
public final static char asb[] = {0,
- 752,481,373,87,87,391,478,478,391,720,
- 720,631,553,720,621,608,391,45,562,562,
- 170,94,95,157,157,84,765,765,680,765,
- 84,142,569,1081,1009,1020,546,1020,149,1020,
- 610,1020,1004,1020,1083,84,1081,571,87,465,
- 373,373,373,373,1083,465,29,144,46,46,
- 46,46,46,46,46,46,46,768,774,779,
- 776,783,781,788,786,790,789,791,213,792,
- 45,45,210,806,575,575,373,765,310,310,
- 762,210,675,765,765,310,84,1085,998,675,
- 675,573,553,84,261,375,151,419,152,1083,
- 84,84,420,621,573,478,29,720,720,720,
- 720,84,634,675,675,29,916,719,998,29,
- 768,895,895,634,45,46,46,46,46,46,
- 46,46,46,46,46,46,46,46,46,46,
- 46,46,46,46,45,45,45,45,45,45,
- 45,45,45,45,45,45,46,575,575,310,
- 310,1081,210,210,310,997,82,675,100,564,
- 84,262,758,375,84,545,616,369,420,546,
- 467,84,420,84,81,675,675,632,632,632,
- 632,420,675,45,46,424,431,1027,1027,1083,
- 144,210,719,45,675,81,83,81,675,210,
- 776,776,774,774,774,781,781,781,781,779,
- 779,786,783,783,789,788,790,912,791,675,
- 675,632,631,632,762,632,1085,84,472,815,
- 997,262,758,485,84,375,912,152,373,422,
- 362,902,375,545,370,545,545,420,467,467,
- 84,84,84,465,465,465,465,84,84,45,
- 84,998,46,720,772,264,675,83,998,45,
- 472,534,29,997,472,758,757,998,856,546,
- 632,373,81,544,904,78,465,545,545,545,
- 545,84,467,485,483,484,45,45,45,45,
- 465,465,420,82,675,772,1081,1085,84,82,
- 472,534,474,758,82,856,856,489,391,82,
- 545,545,78,811,46,912,305,301,1081,545,
- 545,848,485,46,84,675,675,675,675,634,
- 634,84,772,773,772,45,264,367,768,1085,
- 474,536,474,812,485,956,958,253,465,152,
- 526,856,856,391,82,545,546,1083,904,46,
- 46,78,549,747,849,84,675,675,1062,772,
- 634,46,210,367,474,536,465,488,253,956,
- 166,1083,485,631,812,546,9,549,84,465,
- 848,84,1083,1083,84,773,675,210,576,489,
- 856,812,304,811,675,1083,84,489,914,10,
- 1083,84,634,84,84,84,565,856,45,105,
- 78,812,84,84,914,9,912,46,912,812,
- 8,465,465,465,10,465,84,220,812,812,
- 84,546,675,84,84,720,485,675,485,546,
- 84,812,1,465,1,10,912,10,29,29,
- 27,678,29,812,812,308,914,485,105,812,
- 815,10,675,78,675,27,253,465,675,914,
- 105,675,675,1075,10,308,10,812,253,45,
- 10,7,484,546,546,1077,45,8,634,812,
- 675,810,104,10,675,812,810,810,10
+ 616,486,427,1,1,390,483,483,390,812,
+ 812,769,600,812,759,660,390,332,609,609,
+ 189,8,9,117,117,371,854,854,772,854,
+ 371,102,621,1069,997,1008,551,1008,109,1008,
+ 699,1008,992,1008,1071,371,1069,623,1,475,
+ 427,427,427,427,1071,475,316,104,333,333,
+ 333,333,333,333,333,333,333,857,863,868,
+ 865,872,870,877,875,879,878,880,232,881,
+ 332,332,229,895,627,627,427,854,130,130,
+ 851,229,746,854,854,130,371,1073,986,746,
+ 746,625,600,371,280,374,111,418,112,1071,
+ 371,371,419,759,625,483,316,812,812,812,
+ 812,371,705,746,746,316,904,811,986,316,
+ 857,593,593,705,332,333,333,333,333,333,
+ 333,333,333,333,333,333,333,333,333,333,
+ 333,333,333,333,332,332,332,332,332,332,
+ 332,332,332,332,332,332,333,627,627,130,
+ 130,1069,229,229,130,985,369,746,14,611,
+ 371,281,849,847,374,371,550,283,423,419,
+ 551,429,371,419,371,368,746,746,770,770,
+ 770,770,419,746,332,333,434,441,1015,1015,
+ 1071,104,229,811,332,746,368,370,368,746,
+ 229,865,865,863,863,863,870,870,870,870,
+ 868,868,875,872,872,878,877,879,1085,880,
+ 746,746,770,769,770,851,770,1073,371,477,
+ 666,985,281,847,490,371,374,1085,112,427,
+ 421,182,1075,374,550,424,550,550,419,429,
+ 429,371,371,371,475,475,475,475,371,371,
+ 332,371,986,333,812,861,18,746,370,986,
+ 332,477,539,316,985,477,847,847,986,554,
+ 551,770,427,368,549,1077,365,475,550,550,
+ 550,550,371,429,490,488,489,332,332,332,
+ 332,475,475,419,369,746,861,1069,1073,371,
+ 369,477,539,479,846,847,369,554,554,494,
+ 390,369,550,550,365,900,333,1085,59,55,
+ 1069,550,550,749,490,333,371,746,746,746,
+ 746,705,705,371,861,862,861,332,18,187,
+ 857,1073,479,541,479,847,901,490,944,946,
+ 272,475,112,531,554,554,390,369,550,551,
+ 1071,1077,333,333,365,662,839,750,371,746,
+ 746,1050,861,705,333,229,187,479,541,475,
+ 493,272,944,126,1071,490,769,901,551,296,
+ 662,371,475,749,371,1071,1071,371,862,746,
+ 229,628,494,554,901,58,900,746,1071,371,
+ 494,844,297,1071,371,705,371,371,371,612,
+ 554,332,65,365,901,371,371,844,296,1085,
+ 333,1085,901,295,475,475,475,297,475,371,
+ 239,901,901,371,551,746,371,371,812,490,
+ 746,490,551,371,901,288,475,288,297,1085,
+ 297,316,316,314,757,316,901,901,62,844,
+ 490,65,901,666,297,746,365,746,314,272,
+ 475,746,844,65,746,746,1063,297,62,297,
+ 901,272,332,297,294,489,551,551,1065,332,
+ 295,705,901,746,899,64,297,746,901,899,
+ 899,297
};
};
public final static char asb[] = Asb.asb;
@@ -1873,115 +1890,115 @@ public class CPPTemplateTypeParameterParserprs implements lpg.lpgjavaruntime.Par
public interface Asr {
public final static byte asr[] = {0,
- 86,102,103,104,41,72,118,121,71,60,
- 74,62,59,64,76,78,84,82,75,80,
- 81,83,85,67,77,79,25,8,26,39,
- 23,56,27,28,29,30,31,32,33,57,
- 34,58,22,24,61,65,66,10,44,48,
- 46,43,51,12,21,11,17,15,16,18,
- 19,14,13,20,52,53,54,40,50,45,
- 49,37,38,35,36,42,47,9,6,3,
- 4,7,5,1,2,0,68,69,70,120,
- 1,2,0,3,68,69,70,120,63,8,
- 73,90,0,71,61,37,38,9,6,35,
+ 68,69,70,120,1,2,0,3,68,69,
+ 70,120,63,8,73,90,0,91,89,35,
+ 36,92,93,87,88,68,94,95,96,97,
+ 98,99,100,101,106,90,107,108,109,110,
+ 111,112,113,114,115,116,117,73,71,1,
+ 2,4,9,6,72,63,55,3,8,70,
+ 25,69,0,71,61,37,38,9,6,35,
36,42,47,3,4,52,53,54,40,50,
45,49,12,21,11,17,15,16,18,19,
14,13,20,10,44,48,46,43,51,67,
8,7,5,1,2,66,65,0,41,4,
72,1,2,67,8,0,74,3,68,72,
- 90,70,73,25,63,8,67,69,0,65,
- 66,3,10,44,48,46,43,51,12,21,
- 11,17,15,16,18,19,14,13,20,52,
- 53,54,40,50,45,49,5,7,4,37,
- 38,9,6,35,36,42,47,1,2,117,
- 8,0,68,72,90,70,117,73,71,11,
- 12,43,65,13,44,45,14,15,16,66,
- 46,17,18,47,48,49,61,50,51,10,
- 19,20,21,52,53,54,40,37,38,35,
- 36,42,8,25,5,7,1,2,4,3,
- 9,6,0,91,89,35,36,92,93,87,
- 88,68,94,95,96,97,98,99,100,101,
- 106,90,107,108,109,110,111,112,113,114,
- 115,116,117,73,71,1,2,4,9,6,
- 72,63,55,3,8,70,25,69,0,26,
+ 90,70,73,25,63,8,67,69,0,26,
11,12,39,23,43,65,13,44,56,27,
28,45,14,29,30,15,16,31,66,32,
46,17,18,47,33,48,57,49,61,50,
34,51,58,19,22,20,24,21,52,53,
54,40,3,37,38,9,6,35,36,42,
- 68,7,1,2,4,10,5,0,4,8,
- 72,67,55,0,86,59,7,102,103,104,
- 62,8,3,9,6,5,72,71,25,60,
- 26,11,12,39,23,13,56,27,28,14,
- 29,30,15,16,31,32,17,18,33,57,
- 34,10,58,19,22,20,24,21,4,1,
- 2,41,0,8,72,117,73,25,70,0,
+ 68,7,1,2,4,10,5,0,65,66,
+ 3,10,44,48,46,43,51,12,21,11,
+ 17,15,16,18,19,14,13,20,52,53,
+ 54,40,50,45,49,5,7,4,37,38,
+ 9,6,35,36,42,47,1,2,117,8,
+ 0,68,72,90,70,117,73,71,11,12,
+ 43,65,13,44,45,14,15,16,66,46,
+ 17,18,47,48,49,61,50,51,10,19,
+ 20,21,52,53,54,40,37,38,35,36,
+ 42,8,25,5,7,1,2,4,3,9,
+ 6,0,4,8,72,67,0,86,102,103,
+ 104,41,72,118,121,71,60,74,62,59,
+ 64,76,78,84,82,75,80,81,83,85,
+ 67,77,79,25,8,26,39,23,56,27,
+ 28,29,30,31,32,33,57,34,58,22,
+ 24,61,65,66,10,44,48,46,43,51,
+ 12,21,11,17,15,16,18,19,14,13,
+ 20,52,53,54,40,50,45,49,37,38,
+ 35,36,42,47,9,6,3,4,7,5,
+ 1,2,0,86,59,7,102,103,104,62,
+ 8,3,9,6,5,72,71,25,60,26,
+ 11,12,39,23,13,56,27,28,14,29,
+ 30,15,16,31,32,17,18,33,57,34,
+ 10,58,19,22,20,24,21,4,1,2,
+ 41,0,4,8,72,67,55,0,1,2,
+ 8,71,0,8,72,117,73,25,70,0,
26,11,12,23,13,27,28,14,29,30,
15,16,31,7,32,17,18,33,34,19,
22,20,24,21,1,2,8,63,9,6,
- 5,4,73,25,3,0,1,2,8,71,
- 0,23,24,61,8,90,73,68,70,69,
- 120,0,69,70,71,8,0,67,39,23,
- 13,56,27,14,29,30,15,16,31,32,
- 17,18,33,57,34,58,19,22,20,24,
- 21,12,11,26,8,3,9,6,25,62,
- 64,86,28,60,41,7,1,2,5,4,
- 10,59,0,23,24,61,3,68,90,69,
- 70,73,25,74,72,67,8,0,8,67,
- 70,0,9,6,3,7,5,63,4,1,
- 2,68,69,90,73,8,70,0,5,7,
- 3,63,6,9,90,26,11,12,23,13,
- 56,27,28,14,29,30,15,16,31,32,
- 17,18,33,57,34,10,58,19,22,20,
- 24,21,1,2,4,73,8,39,0,4,
- 8,67,1,2,0,4,8,72,67,0,
- 8,73,120,1,2,9,6,4,3,63,
- 70,68,0,11,12,43,65,13,44,45,
- 14,15,16,66,7,46,17,18,47,48,
- 49,61,50,51,10,19,20,21,52,53,
- 54,40,1,2,3,37,38,9,6,35,
- 36,5,42,4,73,8,0,75,0,66,
- 65,35,36,6,92,93,98,9,99,5,
- 42,69,55,68,110,111,107,108,109,115,
- 114,116,88,87,112,113,96,97,94,95,
- 100,101,37,38,70,89,105,63,3,26,
- 11,12,39,23,13,56,27,28,14,29,
+ 5,4,73,25,3,0,23,24,61,8,
+ 90,73,68,70,69,120,0,69,70,71,
+ 8,0,67,39,23,13,56,27,14,29,
30,15,16,31,32,17,18,33,57,34,
- 10,58,19,20,24,21,1,2,4,22,
- 0,39,10,41,60,0,61,23,7,24,
- 5,1,2,4,74,67,120,119,105,37,
- 38,63,3,91,89,6,92,93,35,36,
- 88,87,55,94,95,96,97,9,98,99,
- 100,68,90,73,69,107,108,109,110,111,
- 112,113,114,115,116,72,117,101,106,71,
- 70,25,8,0,26,11,12,39,23,13,
- 56,27,28,14,29,30,15,16,31,32,
- 17,18,33,57,34,10,58,19,22,20,
- 24,21,1,2,4,90,0,22,1,2,
- 4,102,103,104,0,64,26,11,12,39,
- 23,13,56,27,86,28,14,29,30,15,
- 16,31,59,32,17,18,33,57,34,10,
- 58,19,62,22,20,24,21,8,3,9,
- 6,71,25,60,7,4,41,5,1,2,
- 0,25,8,3,7,5,9,6,4,1,
- 2,72,0,118,0,65,66,37,38,9,
- 6,35,36,5,42,47,3,4,7,52,
- 53,54,50,45,49,12,21,11,17,15,
- 16,18,19,14,13,20,10,44,48,46,
- 43,51,63,1,2,40,0,39,23,13,
- 56,27,14,29,30,15,16,31,32,17,
- 18,33,57,34,10,58,19,22,20,24,
- 21,12,11,26,8,3,9,25,62,59,
- 64,86,28,60,55,4,6,7,5,41,
- 1,2,0,10,56,39,57,58,12,21,
- 11,17,15,16,18,19,14,13,20,74,
- 72,90,117,71,67,120,119,91,105,89,
- 37,38,35,36,92,93,87,88,55,68,
- 94,95,96,97,98,99,100,101,106,69,
- 107,108,109,110,111,112,113,114,115,116,
- 70,26,23,27,28,29,30,31,32,33,
- 34,22,24,25,8,73,3,63,7,5,
- 9,6,1,2,4,0
+ 58,19,22,20,24,21,12,11,26,8,
+ 3,9,6,25,62,64,86,28,60,41,
+ 7,1,2,5,4,10,59,0,23,24,
+ 61,3,68,90,69,70,73,25,74,72,
+ 67,8,0,64,26,11,12,39,23,13,
+ 56,27,86,28,14,29,30,15,16,31,
+ 59,32,17,18,33,57,34,10,58,19,
+ 62,22,20,24,21,8,3,9,6,71,
+ 25,60,7,4,41,5,1,2,0,9,
+ 6,3,7,5,63,4,1,2,68,69,
+ 90,73,8,70,0,39,10,41,60,0,
+ 5,7,3,63,6,9,90,26,11,12,
+ 23,13,56,27,28,14,29,30,15,16,
+ 31,32,17,18,33,57,34,10,58,19,
+ 22,20,24,21,1,2,4,73,8,39,
+ 0,8,67,70,0,26,11,12,39,23,
+ 13,56,27,28,14,29,30,15,16,31,
+ 32,17,18,33,57,34,10,58,19,22,
+ 20,24,21,1,2,4,90,0,4,8,
+ 67,1,2,0,11,12,43,65,13,44,
+ 45,14,15,16,66,7,46,17,18,47,
+ 48,49,61,50,51,10,19,20,21,52,
+ 53,54,40,1,2,3,37,38,9,6,
+ 35,36,5,42,4,73,8,0,22,1,
+ 2,4,102,103,104,0,75,0,8,73,
+ 120,1,2,9,6,4,3,63,70,68,
+ 0,66,65,35,36,6,92,93,98,9,
+ 99,5,42,69,55,68,110,111,107,108,
+ 109,115,114,116,88,87,112,113,96,97,
+ 94,95,100,101,37,38,70,89,105,63,
+ 3,26,11,12,39,23,13,56,27,28,
+ 14,29,30,15,16,31,32,17,18,33,
+ 57,34,10,58,19,20,24,21,1,2,
+ 4,22,0,118,0,61,23,24,7,5,
+ 1,2,4,74,67,120,119,105,37,38,
+ 63,3,91,89,6,92,93,35,36,88,
+ 87,55,94,95,96,97,9,98,99,100,
+ 68,90,73,69,107,108,109,110,111,112,
+ 113,114,115,116,72,117,101,106,71,70,
+ 25,8,0,65,66,37,38,9,6,35,
+ 36,5,42,47,3,4,7,52,53,54,
+ 50,45,49,12,21,11,17,15,16,18,
+ 19,14,13,20,10,44,48,46,43,51,
+ 63,1,2,40,0,39,23,13,56,27,
+ 14,29,30,15,16,31,32,17,18,33,
+ 57,34,10,58,19,22,20,24,21,12,
+ 11,26,8,3,9,25,62,59,64,86,
+ 28,60,55,4,6,7,5,41,1,2,
+ 0,10,56,39,57,58,12,21,11,17,
+ 15,16,18,19,14,13,20,74,72,90,
+ 117,71,67,120,119,91,105,89,37,38,
+ 35,36,92,93,87,88,55,68,94,95,
+ 96,97,98,99,100,101,106,69,107,108,
+ 109,110,111,112,113,114,115,116,70,26,
+ 23,27,28,29,30,31,32,33,34,22,
+ 24,25,8,73,3,63,7,5,9,6,
+ 1,2,4,0,25,8,3,7,5,9,
+ 6,4,1,2,72,0
};
};
public final static byte asr[] = Asr.asr;
@@ -1989,60 +2006,61 @@ public class CPPTemplateTypeParameterParserprs implements lpg.lpgjavaruntime.Par
public interface Nasb {
public final static char nasb[] = {0,
- 203,12,12,15,15,215,12,12,181,41,
- 41,12,111,5,187,12,181,67,12,12,
- 88,23,23,23,23,240,12,12,174,12,
- 135,170,110,128,254,255,159,255,81,255,
- 120,255,248,12,10,135,128,186,15,12,
- 12,12,12,12,118,12,271,135,67,67,
- 236,67,67,67,67,67,67,12,12,12,
- 12,12,12,12,12,12,12,12,67,12,
- 67,67,93,12,215,215,12,12,215,215,
- 27,93,277,12,12,215,11,12,32,277,
- 277,178,164,135,12,215,199,118,78,118,
- 135,11,12,104,178,12,271,41,41,41,
- 41,135,161,277,277,1,67,56,32,271,
- 12,17,17,161,141,67,67,67,67,67,
- 67,67,67,67,67,67,67,67,67,67,
- 67,67,67,67,67,67,67,67,67,67,
- 67,67,67,67,67,141,67,181,181,36,
- 36,128,93,93,36,44,170,277,12,12,
- 135,130,215,257,200,60,60,12,264,159,
- 215,264,101,200,169,277,277,12,12,12,
- 12,31,277,67,67,12,12,12,12,10,
- 135,93,41,95,277,169,135,169,277,93,
+ 114,12,12,13,13,269,12,12,111,39,
+ 39,12,123,5,186,12,111,74,12,12,
+ 93,21,21,21,21,239,12,12,209,12,
+ 132,177,122,140,253,254,161,254,90,254,
+ 144,254,247,12,10,132,140,185,13,12,
+ 12,12,12,12,130,12,275,132,74,74,
+ 235,74,74,74,74,74,74,12,12,12,
+ 12,12,12,12,12,12,12,12,74,12,
+ 74,74,98,12,269,269,12,12,269,269,
+ 25,98,207,12,12,269,11,12,30,207,
+ 207,108,171,132,12,269,181,130,85,130,
+ 132,11,12,116,108,12,275,39,39,39,
+ 39,132,153,207,207,1,74,65,30,275,
+ 12,15,15,153,150,74,74,74,74,74,
+ 74,74,74,74,74,74,74,74,74,74,
+ 74,74,74,74,74,74,74,74,74,74,
+ 74,74,74,74,74,150,74,111,111,34,
+ 34,140,98,98,34,51,177,207,12,12,
+ 132,142,142,142,256,182,80,80,12,215,
+ 161,269,215,59,182,176,207,207,12,12,
+ 12,12,29,207,74,74,12,12,12,12,
+ 10,132,98,39,100,207,176,132,176,207,
+ 98,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,
- 12,12,12,12,12,12,12,12,12,277,
- 277,12,12,12,106,12,12,11,215,181,
- 219,12,184,152,135,146,12,196,12,12,
- 34,209,257,60,60,215,215,101,215,241,
- 11,200,135,12,12,12,12,200,11,67,
- 135,32,67,41,215,98,277,132,32,67,
- 215,215,36,44,184,215,184,32,215,159,
- 12,12,118,215,123,113,12,215,215,62,
- 62,200,241,152,12,12,141,141,141,141,
- 12,12,30,200,277,48,106,12,240,200,
- 184,184,215,184,170,222,215,243,215,264,
- 215,84,166,146,67,12,86,12,128,62,
- 62,205,152,67,241,277,277,277,277,161,
- 161,200,215,191,12,141,106,133,12,12,
- 215,215,54,146,152,12,243,210,12,78,
- 34,243,222,181,170,84,193,50,113,67,
- 67,166,12,118,73,264,277,277,12,48,
- 161,67,93,133,54,54,12,158,123,12,
- 12,118,152,12,146,193,151,12,264,12,
- 232,264,118,118,11,191,277,93,275,243,
- 215,146,25,12,277,118,264,243,215,138,
- 50,11,161,11,264,264,277,222,95,65,
- 113,146,264,197,217,154,12,67,12,146,
- 12,12,12,12,155,12,241,144,146,146,
- 241,75,277,11,11,41,152,277,215,159,
- 197,146,13,12,12,155,12,155,279,279,
- 227,12,279,146,146,12,215,152,215,146,
- 41,155,277,113,277,267,215,12,277,217,
- 65,277,277,215,155,12,155,146,113,141,
- 155,13,152,75,75,111,67,12,148,146,
- 277,58,64,155,277,146,58,12,155
+ 207,207,12,12,12,118,12,12,11,269,
+ 111,82,12,269,43,132,169,12,202,12,
+ 12,32,263,256,80,80,269,269,59,269,
+ 240,11,182,132,12,12,12,12,182,11,
+ 74,132,30,74,39,269,62,207,199,30,
+ 74,269,269,34,51,190,142,190,30,269,
+ 161,12,12,130,269,135,125,12,269,269,
+ 165,165,182,240,43,12,12,150,150,150,
+ 150,12,12,28,182,207,55,118,12,239,
+ 182,190,190,269,190,269,177,221,269,242,
+ 269,215,269,57,173,169,74,12,88,12,
+ 140,165,165,192,43,74,240,207,207,207,
+ 207,153,153,182,269,163,12,150,118,200,
+ 12,12,269,269,45,190,169,43,12,242,
+ 264,12,85,32,242,221,111,177,57,196,
+ 47,125,74,74,173,12,130,67,215,207,
+ 207,12,55,153,74,98,200,45,45,12,
+ 160,135,12,12,130,43,12,169,196,42,
+ 12,215,12,231,215,130,130,11,163,207,
+ 98,205,242,269,169,23,12,207,130,215,
+ 242,269,147,47,11,153,11,215,215,207,
+ 221,100,72,125,169,215,203,213,156,12,
+ 74,12,169,12,12,12,12,157,12,240,
+ 167,169,169,240,105,207,11,11,39,43,
+ 207,269,161,203,169,103,12,12,157,12,
+ 157,279,279,226,12,279,169,169,12,269,
+ 43,269,169,39,157,207,125,207,271,269,
+ 12,207,213,72,207,207,269,157,12,157,
+ 169,125,150,157,103,43,105,105,123,74,
+ 12,218,169,207,69,71,157,207,169,69,
+ 12,157
};
};
public final static char nasb[] = Nasb.nasb;
@@ -2051,33 +2069,33 @@ public class CPPTemplateTypeParameterParserprs implements lpg.lpgjavaruntime.Par
public interface Nasr {
public final static char nasr[] = {0,
3,13,10,9,152,150,122,149,148,5,
- 2,0,114,0,108,0,5,2,9,10,
- 139,0,75,0,184,0,4,195,0,2,
- 136,65,0,156,0,5,10,9,2,13,
- 4,45,0,65,138,137,0,143,0,172,
- 5,171,0,127,0,175,0,162,0,109,
- 0,110,0,67,130,40,5,10,9,2,
- 13,0,193,0,40,56,0,40,1,0,
- 153,188,0,159,0,191,0,13,2,9,
- 10,5,83,0,4,30,0,4,177,0,
- 2,65,0,95,94,54,5,58,0,32,
- 95,94,64,2,9,10,4,5,0,153,
- 183,0,4,10,9,2,64,5,90,54,
- 0,2,116,0,44,2,0,48,40,179,
- 4,39,0,4,39,38,0,4,178,0,
- 4,67,0,67,39,48,68,4,40,0,
- 4,97,0,95,94,54,64,58,5,10,
- 9,2,0,4,45,196,0,54,5,90,
- 4,22,0,62,0,32,94,95,4,0,
- 141,0,40,160,0,40,104,0,44,2,
- 3,0,174,0,5,102,192,0,38,5,
- 2,9,10,158,4,0,161,0,65,54,
- 0,117,4,48,82,0,39,4,22,181,
- 0,5,102,168,0,5,10,9,13,3,
- 1,0,4,48,82,84,0,2,5,122,
- 118,119,120,13,87,0,4,48,82,102,
- 46,5,0,2,57,0,45,4,180,0,
- 4,45,39,0,45,4,32,0,4,45,
+ 2,0,108,0,5,2,9,10,139,0,
+ 75,0,184,0,4,195,0,2,136,65,
+ 0,156,0,5,10,9,2,13,4,45,
+ 0,4,67,0,127,0,172,5,171,0,
+ 65,138,137,0,143,0,159,0,2,65,
+ 0,4,177,0,175,0,193,0,162,0,
+ 67,130,40,5,10,9,2,13,0,109,
+ 0,65,49,0,40,1,0,191,0,153,
+ 188,0,13,2,9,10,5,83,0,4,
+ 30,0,114,0,40,56,0,49,5,90,
+ 4,22,0,174,0,95,94,49,5,58,
+ 0,32,95,94,64,2,9,10,4,5,
+ 0,44,2,0,4,10,9,2,64,5,
+ 90,49,0,153,183,0,48,40,179,4,
+ 39,0,4,97,0,67,39,48,68,4,
+ 40,0,141,0,110,0,4,39,38,0,
+ 95,94,49,64,58,5,10,9,2,0,
+ 44,2,3,0,32,94,95,4,0,62,
+ 0,5,102,192,0,40,160,0,2,116,
+ 0,40,104,0,45,4,32,0,4,45,
+ 196,0,161,0,2,57,0,4,178,0,
+ 117,4,48,82,0,39,4,22,181,0,
+ 5,102,168,0,5,10,9,13,3,1,
+ 0,4,48,82,84,0,2,5,122,118,
+ 119,120,13,87,0,4,48,82,102,46,
+ 5,0,38,5,2,9,10,158,4,0,
+ 45,4,180,0,4,45,39,0,4,45,
103,0
};
};
@@ -2134,18 +2152,18 @@ public class CPPTemplateTypeParameterParserprs implements lpg.lpgjavaruntime.Par
public interface ScopePrefix {
public final static char scopePrefix[] = {
- 159,584,603,308,535,551,562,573,367,266,
- 280,302,315,328,42,291,387,425,167,592,
- 478,20,51,71,80,85,90,130,195,297,
- 321,336,341,144,272,286,506,27,144,377,
- 341,611,27,217,245,1,14,61,76,106,
- 346,356,360,443,471,500,527,531,621,625,
- 629,97,7,97,405,421,434,455,519,232,
- 116,116,434,542,558,569,580,207,489,56,
- 56,156,222,225,56,240,261,225,225,56,
- 364,468,475,156,56,644,110,350,409,449,
- 462,56,350,396,177,104,447,633,640,633,
- 640,65,415,137,104,104,250
+ 159,585,604,309,536,552,563,574,368,267,
+ 281,303,316,329,42,292,388,426,167,593,
+ 479,20,51,71,80,85,90,130,195,298,
+ 322,337,342,144,273,287,507,27,144,378,
+ 342,612,27,217,246,1,14,61,76,106,
+ 347,357,361,444,472,501,528,532,622,626,
+ 630,97,7,97,406,422,435,456,520,116,
+ 116,232,435,543,559,570,581,207,490,56,
+ 56,156,222,225,56,241,262,225,225,56,
+ 365,469,476,156,56,645,110,351,410,450,
+ 463,56,351,397,177,104,448,634,641,634,
+ 641,65,416,137,104,104,251
};
};
public final static char scopePrefix[] = ScopePrefix.scopePrefix;
@@ -2153,18 +2171,18 @@ public class CPPTemplateTypeParameterParserprs implements lpg.lpgjavaruntime.Par
public interface ScopeSuffix {
public final static char scopeSuffix[] = {
- 18,5,5,135,5,5,5,5,374,135,
- 95,135,135,334,48,277,393,431,173,67,
- 484,25,25,25,59,59,95,135,200,135,
- 326,326,334,149,277,101,511,38,152,382,
- 598,616,32,211,211,5,18,5,59,95,
- 326,95,95,135,243,5,5,5,5,5,
- 243,642,11,101,374,374,374,459,511,236,
- 120,125,438,546,546,546,546,211,493,59,
- 59,5,5,228,230,243,5,264,264,230,
- 95,5,243,5,504,5,113,353,412,452,
- 465,523,514,399,180,95,95,635,635,637,
- 637,67,417,139,202,187,252
+ 18,5,5,135,5,5,5,5,375,135,
+ 95,135,135,335,48,278,394,432,173,67,
+ 485,25,25,25,59,59,95,135,200,135,
+ 327,327,335,149,278,101,512,38,152,383,
+ 599,617,32,211,211,5,18,5,59,95,
+ 327,95,95,135,244,5,5,5,5,5,
+ 244,643,11,101,375,375,375,460,512,120,
+ 125,236,439,547,547,547,547,211,494,59,
+ 59,5,5,228,230,244,5,265,265,230,
+ 95,5,244,5,505,5,113,354,413,453,
+ 466,524,515,400,180,95,95,636,636,638,
+ 638,67,418,139,202,187,253
};
};
public final static char scopeSuffix[] = ScopeSuffix.scopeSuffix;
@@ -2173,13 +2191,13 @@ public class CPPTemplateTypeParameterParserprs implements lpg.lpgjavaruntime.Par
public interface ScopeLhs {
public final static char scopeLhs[] = {
46,17,17,120,17,17,17,17,71,86,
- 47,80,120,119,77,52,71,70,46,17,
+ 47,80,120,119,77,53,71,70,46,17,
19,3,7,8,168,168,164,118,46,81,
- 119,119,121,129,53,47,139,112,129,71,
+ 119,119,121,129,54,47,139,112,129,71,
17,17,112,96,59,135,74,171,168,164,
- 121,182,50,56,143,18,17,17,17,17,
- 17,12,114,164,71,70,70,37,139,58,
- 131,131,70,17,17,17,17,96,19,172,
+ 121,182,51,56,143,18,17,17,17,17,
+ 17,12,114,164,71,70,70,37,139,131,
+ 131,58,70,17,17,17,17,96,19,172,
168,184,94,101,61,75,60,158,76,121,
72,144,143,175,139,16,164,121,103,69,
21,139,139,71,46,164,66,137,44,137,
@@ -2197,8 +2215,8 @@ public class CPPTemplateTypeParameterParserprs implements lpg.lpgjavaruntime.Par
1,1,1,71,1,1,4,68,70,25,
1,1,68,73,73,73,118,73,1,25,
1,25,25,71,117,73,73,73,73,73,
- 117,1,73,1,73,73,73,72,4,6,
- 1,1,73,68,68,68,68,73,3,1,
+ 117,1,73,1,73,73,73,72,4,1,
+ 1,6,73,68,68,68,68,73,3,1,
1,73,73,3,1,117,73,1,1,1,
25,73,117,73,5,73,1,41,69,72,
73,1,41,75,74,25,25,4,4,4,
@@ -2216,8 +2234,8 @@ public class CPPTemplateTypeParameterParserprs implements lpg.lpgjavaruntime.Par
146,146,146,297,78,76,101,313,297,86,
234,234,313,305,150,46,86,26,53,62,
146,22,78,29,56,234,234,234,234,234,
- 234,214,6,62,86,86,86,266,101,106,
- 146,146,86,234,234,234,234,305,234,26,
+ 234,214,6,62,86,86,86,266,101,146,
+ 146,106,86,234,234,234,234,305,234,26,
53,24,305,307,150,301,150,59,155,146,
86,50,56,104,101,234,62,146,1,86,
235,101,101,86,76,62,11,98,122,98,
@@ -2252,48 +2270,48 @@ public class CPPTemplateTypeParameterParserprs implements lpg.lpgjavaruntime.Par
0,203,0,0,215,0,227,126,3,0,
126,0,0,0,0,0,227,126,3,216,
0,223,3,0,212,126,0,208,0,146,
- 0,176,166,127,0,10,0,0,0,214,
- 63,0,125,0,227,126,3,182,0,182,
- 0,2,0,0,126,0,0,0,0,0,
- 198,3,0,201,0,237,126,162,40,28,
- 0,179,127,59,62,0,196,128,0,128,
- 179,127,278,62,0,179,127,278,62,0,
- 179,127,69,123,59,0,237,126,162,59,
- 0,237,126,162,226,59,0,276,126,162,
- 123,305,56,0,276,126,162,305,56,0,
- 179,127,275,56,0,135,0,187,179,127,
- 275,244,0,136,0,179,127,275,244,0,
- 187,166,127,10,0,166,127,10,0,166,
- 127,0,93,136,0,268,126,144,0,268,
- 126,170,0,161,84,0,300,160,302,303,
- 3,81,0,126,171,0,302,303,3,81,
- 0,128,0,126,171,0,161,3,75,190,
- 80,0,126,128,0,190,80,0,108,2,
- 131,126,128,0,225,3,75,0,198,167,
- 0,33,169,0,167,0,175,33,169,0,
- 225,3,85,0,190,154,225,3,83,0,
- 62,171,0,225,3,83,0,126,171,62,
- 171,0,301,126,162,0,161,0,214,77,
- 0,30,171,0,161,106,158,0,30,169,
- 0,177,3,0,126,149,0,219,3,0,
- 214,63,265,0,161,63,0,177,3,297,
- 66,127,0,126,0,0,0,0,297,66,
- 127,0,2,145,126,0,0,0,0,177,
- 3,47,0,147,0,125,41,166,127,0,
- 31,147,0,93,136,31,147,0,220,179,
- 127,0,146,31,147,0,177,3,51,0,
- 161,3,51,0,161,3,68,177,55,43,
- 0,177,55,43,0,20,2,131,126,0,
- 161,3,68,177,55,46,0,177,55,46,
- 0,161,3,68,177,55,48,0,177,55,
- 48,0,161,3,68,177,55,44,0,177,
- 55,44,0,219,3,125,187,166,127,10,
- 0,125,187,166,127,10,0,136,2,0,
- 126,0,219,3,124,258,166,127,10,0,
- 258,166,127,10,0,135,2,0,126,0,
- 219,3,135,0,219,3,139,0,161,63,
- 139,0,260,0,31,0,31,139,0,165,
- 0,134,0,161,3,0
+ 0,171,166,127,0,10,0,0,0,0,
+ 214,63,0,125,0,227,126,3,182,0,
+ 182,0,2,0,0,126,0,0,0,0,
+ 0,198,3,0,201,0,237,126,162,40,
+ 28,0,179,127,59,62,0,196,128,0,
+ 128,179,127,278,62,0,179,127,278,62,
+ 0,179,127,69,123,59,0,237,126,162,
+ 59,0,237,126,162,226,59,0,276,126,
+ 162,123,305,56,0,276,126,162,305,56,
+ 0,179,127,275,56,0,135,0,187,179,
+ 127,275,244,0,136,0,179,127,275,244,
+ 0,187,166,127,10,0,166,127,10,0,
+ 166,127,0,93,136,0,268,126,144,0,
+ 268,126,170,0,161,84,0,300,160,302,
+ 303,3,81,0,126,171,0,302,303,3,
+ 81,0,128,0,126,171,0,161,3,75,
+ 190,80,0,126,128,0,190,80,0,108,
+ 2,131,126,128,0,225,3,75,0,198,
+ 167,0,33,169,0,167,0,175,33,169,
+ 0,225,3,85,0,190,154,225,3,83,
+ 0,62,171,0,225,3,83,0,126,171,
+ 62,171,0,301,126,162,0,161,0,214,
+ 77,0,30,171,0,161,106,158,0,30,
+ 169,0,177,3,0,126,149,0,219,3,
+ 0,214,63,265,0,161,63,0,177,3,
+ 297,66,127,0,126,0,0,0,0,297,
+ 66,127,0,2,145,126,0,0,0,0,
+ 177,3,47,0,147,0,125,41,166,127,
+ 0,31,147,0,93,136,31,147,0,220,
+ 179,127,0,146,31,147,0,177,3,51,
+ 0,161,3,51,0,161,3,68,177,55,
+ 43,0,177,55,43,0,20,2,131,126,
+ 0,161,3,68,177,55,46,0,177,55,
+ 46,0,161,3,68,177,55,48,0,177,
+ 55,48,0,161,3,68,177,55,44,0,
+ 177,55,44,0,219,3,125,187,166,127,
+ 10,0,125,187,166,127,10,0,136,2,
+ 0,126,0,219,3,124,258,166,127,10,
+ 0,258,166,127,10,0,135,2,0,126,
+ 0,219,3,135,0,219,3,139,0,161,
+ 63,139,0,260,0,31,0,31,139,0,
+ 165,0,134,0,161,3,0
};
};
public final static char scopeRhs[] = ScopeRhs.scopeRhs;
@@ -2301,38 +2319,38 @@ public class CPPTemplateTypeParameterParserprs implements lpg.lpgjavaruntime.Par
public interface ScopeState {
public final static char scopeState[] = {0,
- 4684,4906,4896,4886,0,1549,3558,559,3456,0,
- 3550,3513,3453,3346,3309,3255,3218,3164,3127,2836,
- 2799,3699,0,594,0,2483,784,0,3550,3513,
- 2440,2264,3453,3346,3309,3255,3218,3164,1044,3127,
- 2836,2799,3723,3009,0,1178,1082,802,0,3374,
- 3003,0,3708,3242,0,817,734,0,4566,3435,
- 0,4583,4515,0,4583,4515,3812,4315,4305,3706,
- 4222,4212,4202,3696,0,4583,4515,3812,4315,4305,
- 3706,4222,4212,4202,3696,3550,3513,3453,3346,3309,
- 3255,3218,3164,3127,2836,2799,0,3252,733,0,
- 669,581,0,825,0,2378,4415,4841,3224,4402,
- 3761,2587,2968,2805,4531,2412,2935,2962,876,736,
- 0,4783,4766,4758,4754,4738,4719,4708,4693,4869,
- 4854,4849,4673,4669,4647,4643,4598,4834,3486,3138,
- 3464,2627,4508,2768,0,537,4493,2926,0,4415,
- 4566,4402,3435,2935,2911,3421,4480,2755,2378,3793,
- 4369,2587,2418,2396,0,3335,3189,4783,4766,4758,
- 2461,2413,4754,627,4738,4719,4708,3536,4693,3531,
- 3468,3458,3403,2633,4869,2637,4854,2515,4849,3922,
- 4673,4669,2443,4647,4643,2391,4598,4834,3476,3486,
- 3138,3464,3036,2627,4508,4493,2768,737,2926,2520,
- 2182,2094,1405,2911,3421,4480,2755,2378,4415,3793,
- 4566,4402,4369,2587,3435,2268,941,804,669,581,
- 2935,2418,2396,4181,4159,4137,2232,2282,2348,2316,
- 2559,2531,595,3105,3079,2772,2700,2673,2600,3674,
- 3650,631,3625,2727,4115,4093,4071,4049,4027,4005,
- 3983,3961,3930,3899,3830,1975,2194,2144,2106,2056,
+ 4795,4892,4885,4880,0,1549,3482,1463,3397,0,
+ 3586,3531,3476,3374,3337,3292,3255,3210,3173,2882,
+ 2845,3735,0,594,0,2683,784,0,3586,3531,
+ 2461,2430,3476,3374,3337,3292,3255,3210,2264,3173,
+ 2882,2845,3312,3073,0,1448,1082,744,0,2924,
+ 2902,0,3743,3014,0,2859,817,0,4654,4569,
+ 0,4590,4545,0,4590,4545,3848,4351,4341,3742,
+ 4258,4248,4238,3732,0,4590,4545,3848,4351,4341,
+ 3742,4258,4248,4238,3732,3586,3531,3476,3374,3337,
+ 3292,3255,3210,3173,2882,2845,0,2947,796,0,
+ 669,581,0,915,0,2378,4470,4755,4555,4457,
+ 3797,2633,1178,4508,3005,2464,2981,2409,4451,2851,
+ 0,4772,4767,4748,4737,4722,4702,4685,4677,4869,
+ 4861,4856,4673,4562,3435,3431,2814,4844,4787,2994,
+ 4366,2673,2518,2507,0,537,4522,2972,0,4470,
+ 4654,4457,4569,2981,2957,3449,4483,2801,2378,3829,
+ 4438,2633,2473,2396,0,2677,2493,4772,4767,4748,
+ 2392,792,4737,627,4722,4702,4685,2887,4677,2878,
+ 2712,2702,2698,3188,4869,2570,4861,2553,4856,3517,
+ 4673,4562,2448,3435,3431,740,2814,4844,2905,4787,
+ 2994,4366,2432,2673,2518,4522,2507,736,2972,2415,
+ 2182,2094,1405,2957,3449,4483,2801,2378,4470,3829,
+ 4654,4457,4438,2633,4569,2268,941,804,669,581,
+ 2981,2473,2396,4217,4195,4173,2232,2282,2348,2316,
+ 2605,2577,595,3151,3125,2818,2746,2719,2646,3710,
+ 3686,631,3661,2773,4151,4129,4107,4085,4063,4041,
+ 4019,3997,3966,3935,3866,1975,2194,2144,2106,2056,
2018,1050,883,1932,1889,1275,827,746,690,1846,
1803,1760,1717,1674,1631,1588,1545,1502,1459,1416,
537,1232,1187,1356,1318,1144,1005,962,1096,0,
- 1388,1191,861,585,2412,2935,2911,2965,2418,2857,
- 2396,0,3276,3148,3275,3142,0
+ 1230,1191,798,585,2464,2981,2957,3004,2473,3104,
+ 2396,0,4832,3350,3477,2453,0
};
};
public final static char scopeState[] = ScopeState.scopeState;
@@ -2350,7 +2368,7 @@ public class CPPTemplateTypeParameterParserprs implements lpg.lpgjavaruntime.Par
146,149,148,151,150,155,153,157,61,158,
69,69,214,158,3,3,124,123,55,55,
167,63,3,65,66,55,179,165,166,223,
- 198,126,212,127,176,162,310,275,305,275,
+ 198,126,212,127,171,162,310,275,305,275,
127,179,166,212,126,230,3,55,55,55,
55,127,3,177,161,126,65,66,166,3,
125,105,119,3,63,89,91,36,35,93,
@@ -2358,42 +2376,43 @@ public class CPPTemplateTypeParameterParserprs implements lpg.lpgjavaruntime.Par
96,99,98,100,116,115,114,113,112,111,
110,109,108,107,69,106,101,126,126,126,
126,126,63,63,126,4,187,227,228,229,
- 127,166,6,126,166,230,125,124,127,123,
- 162,127,166,41,69,177,161,177,177,177,
- 177,166,219,126,154,267,135,125,124,10,
- 127,63,297,3,177,41,127,41,219,161,
- 146,146,145,145,145,148,148,148,148,147,
- 147,150,149,149,153,151,155,161,157,227,
- 227,254,256,254,212,254,260,187,154,70,
- 166,176,126,309,127,168,224,59,41,204,
- 62,170,312,125,124,231,231,179,162,126,
- 179,187,127,68,68,68,68,187,258,70,
- 127,166,205,3,298,167,152,179,166,72,
- 154,154,70,4,126,6,184,166,162,226,
- 55,41,278,280,126,3,182,231,231,126,
- 126,187,126,276,123,277,3,3,3,3,
- 125,124,166,41,177,126,126,220,5,41,
- 126,126,221,126,187,126,162,68,55,127,
- 74,126,212,311,72,289,198,124,126,126,
- 126,72,276,69,70,161,161,161,161,3,
- 3,187,154,262,265,63,180,4,123,125,
- 221,221,126,128,237,28,41,170,64,59,
- 62,239,126,126,179,126,281,72,70,72,
- 69,212,314,224,22,127,219,219,125,126,
- 3,63,161,4,126,126,61,40,126,3,
- 123,59,237,295,128,281,162,293,127,294,
- 70,127,22,315,179,262,219,214,3,126,
- 162,268,248,279,40,69,127,68,282,126,
- 70,179,3,179,127,127,320,126,3,69,
- 70,154,127,179,126,301,79,77,1,161,
- 8,85,83,81,80,75,82,84,78,76,
- 59,74,219,179,179,70,237,152,162,252,
- 179,226,283,118,8,72,214,72,3,3,
- 3,190,3,123,161,123,178,126,162,226,
- 3,72,225,167,225,303,144,75,225,126,
- 126,90,319,167,154,198,154,302,126,3,
- 154,283,308,154,154,126,69,190,160,268,
- 161,189,70,121,300,154,189,8,154
+ 127,166,9,6,126,166,230,125,124,127,
+ 123,162,127,166,41,69,177,161,177,177,
+ 177,177,166,219,126,154,267,135,125,124,
+ 10,127,63,297,3,177,41,127,41,219,
+ 161,146,146,145,145,145,148,148,148,148,
+ 147,147,150,149,149,153,151,155,161,157,
+ 227,227,254,256,254,212,254,260,187,154,
+ 70,166,171,171,309,127,168,224,59,41,
+ 204,62,170,312,125,124,231,231,179,162,
+ 126,179,187,127,68,68,68,68,187,258,
+ 70,127,166,205,3,298,167,152,179,166,
+ 72,154,154,70,4,126,6,126,166,162,
+ 226,55,41,278,280,126,3,182,231,231,
+ 126,126,187,126,276,123,277,3,3,3,
+ 3,125,124,166,41,177,126,126,220,5,
+ 41,126,126,221,184,171,187,126,162,68,
+ 55,127,74,126,212,311,72,289,198,124,
+ 126,126,126,72,276,69,70,161,161,161,
+ 161,3,3,187,154,262,265,63,180,4,
+ 123,125,221,221,126,126,128,237,28,41,
+ 170,64,59,62,239,126,126,179,126,281,
+ 72,70,72,69,212,314,224,22,127,219,
+ 219,125,126,3,63,161,4,126,126,61,
+ 40,126,3,123,59,237,295,128,281,162,
+ 293,127,294,70,127,22,315,179,262,219,
+ 214,3,126,162,268,248,279,40,69,127,
+ 68,282,126,70,179,3,179,127,127,320,
+ 126,3,69,70,154,127,179,126,301,79,
+ 77,1,161,8,85,83,81,80,75,82,
+ 84,78,76,59,74,219,179,179,70,237,
+ 152,162,252,179,226,283,118,8,72,214,
+ 72,3,3,3,190,3,123,161,123,178,
+ 126,162,226,3,72,225,167,225,303,144,
+ 75,225,126,126,90,319,167,154,198,154,
+ 302,126,3,154,283,308,154,154,126,69,
+ 190,160,268,161,189,70,121,300,154,189,
+ 8,154
};
};
public final static char inSymb[] = InSymb.inSymb;
@@ -2668,20 +2687,20 @@ public class CPPTemplateTypeParameterParserprs implements lpg.lpgjavaruntime.Par
public final int getMaxNameLength() { return MAX_NAME_LENGTH; }
public final static int
- NUM_STATES = 539,
+ NUM_STATES = 542,
NT_OFFSET = 122,
- LA_STATE_OFFSET = 5963,
+ LA_STATE_OFFSET = 6046,
MAX_LA = 2147483647,
NUM_RULES = 536,
NUM_NONTERMINALS = 202,
NUM_SYMBOLS = 324,
SEGMENT_SIZE = 8192,
- START_STATE = 3142,
+ START_STATE = 2453,
IDENTIFIER_SYMBOL = 0,
EOFT_SYMBOL = 120,
EOLT_SYMBOL = 120,
- ACCEPT_ACTION = 5062,
- ERROR_ACTION = 5427;
+ ACCEPT_ACTION = 5145,
+ ERROR_ACTION = 5510;
public final static boolean BACKTRACK = true;
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gcc/GCCParser.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gcc/GCCParser.java
index a5dd5d9df34..0d6c7a070f2 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gcc/GCCParser.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gcc/GCCParser.java
@@ -17,13 +17,16 @@ import lpg.lpgjavaruntime.*;
import java.util.*;
import org.eclipse.cdt.core.dom.ast.*;
+import org.eclipse.cdt.core.dom.lrparser.CPreprocessorAdapter;
+import org.eclipse.cdt.core.dom.lrparser.IDOMTokenMap;
import org.eclipse.cdt.core.dom.lrparser.IParser;
-import org.eclipse.cdt.core.dom.lrparser.IParserActionTokenProvider;
+import org.eclipse.cdt.core.dom.lrparser.ITokenCollector;
import org.eclipse.cdt.core.dom.lrparser.lpgextensions.FixedBacktrackingParser;
+import org.eclipse.cdt.core.dom.lrparser.action.ITokenStream;
import org.eclipse.cdt.core.dom.lrparser.action.ScopedStack;
-
-import org.eclipse.cdt.core.dom.lrparser.action.ITokenMap;
-import org.eclipse.cdt.core.dom.lrparser.action.TokenMap;
+import org.eclipse.cdt.core.parser.IScanner;
+import org.eclipse.cdt.core.dom.parser.IBuiltinBindingsProvider;
+import org.eclipse.cdt.core.index.IIndex;
import org.eclipse.cdt.internal.core.dom.parser.c.CNodeFactory;
import org.eclipse.cdt.core.dom.lrparser.action.c99.C99BuildASTParserAction;
@@ -32,7 +35,9 @@ import org.eclipse.cdt.core.dom.lrparser.action.c99.C99SecondaryParserFactory;
import org.eclipse.cdt.core.dom.lrparser.action.gnu.GCCBuildASTParserAction;
import org.eclipse.cdt.core.dom.lrparser.action.gnu.GCCSecondaryParserFactory;
-public class GCCParser extends PrsStream implements RuleAction , IParserActionTokenProvider, IParser< IASTTranslationUnit >
+public class GCCParser extends PrsStream implements RuleAction, ITokenStream,
+ ITokenCollector, IParser< IASTTranslationUnit >
+
{
private static ParseTable prs = new GCCParserprs();
private FixedBacktrackingParser btParser;
@@ -170,7 +175,11 @@ public class GCCParser extends PrsStream implements RuleAction , IParserActionTo
private C99BuildASTParserAction action;
private IASTCompletionNode compNode;
-public GCCParser() { // constructor
+
+public GCCParser(IScanner scanner, IDOMTokenMap tokenMap, IBuiltinBindingsProvider builtinBindingsProvider, IIndex index, Set<IParser.Options> options) {
+ initActions(options);
+ action.initializeTranslationUnit(scanner, builtinBindingsProvider, index);
+ CPreprocessorAdapter.runCPreprocessor(scanner, this, tokenMap);
}
private void initActions(Set<IParser.Options> options) {
@@ -194,17 +203,16 @@ public void addToken(IToken token) {
}
-public IASTTranslationUnit parse(Set<IParser.Options> options) {
+public IASTTranslationUnit parse() {
// this has to be done, or... kaboom!
setStreamLength(getSize());
- initActions(options);
final int errorRepairCount = -1; // -1 means full error handling
parser(null, errorRepairCount); // do the actual parse
super.resetTokenStream(); // allow tokens to be garbage collected
compNode = action.getASTCompletionNode(); // the completion node may be null
- return ( IASTTranslationUnit ) action.getParseResult();
+ return ( IASTTranslationUnit ) action.getParseResult();
}
@@ -227,25 +235,6 @@ public String getName() {
}
-
-private ITokenMap tokenMap = null;
-
-public void setTokens(List<IToken> tokens) {
- resetTokenStream();
- addToken(new Token(null, 0, 0, 0)); // dummy token
- for(IToken token : tokens) {
- token.setKind(tokenMap.mapKind(token.getKind()));
- addToken(token);
- }
- addToken(new Token(null, 0, 0, GCCParsersym.TK_EOF_TOKEN));
-}
-
-public GCCParser(IParserActionTokenProvider parser) { // constructor
- tokenMap = new TokenMap(GCCParsersym.orderedTerminalSymbols, parser.getOrderedTerminalSymbols());
-}
-
-
-
private GCCBuildASTParserAction gnuAction;
public void ruleAction(int ruleNumber)
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gcc/GCCSizeofExpressionParser.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gcc/GCCSizeofExpressionParser.java
index af164baf569..bf776c7dbc0 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gcc/GCCSizeofExpressionParser.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gcc/GCCSizeofExpressionParser.java
@@ -17,13 +17,20 @@ import lpg.lpgjavaruntime.*;
import java.util.*;
import org.eclipse.cdt.core.dom.ast.*;
+import org.eclipse.cdt.core.dom.lrparser.CPreprocessorAdapter;
+import org.eclipse.cdt.core.dom.lrparser.IDOMTokenMap;
import org.eclipse.cdt.core.dom.lrparser.IParser;
-import org.eclipse.cdt.core.dom.lrparser.IParserActionTokenProvider;
+import org.eclipse.cdt.core.dom.lrparser.ITokenCollector;
import org.eclipse.cdt.core.dom.lrparser.lpgextensions.FixedBacktrackingParser;
import org.eclipse.cdt.core.dom.lrparser.action.ScopedStack;
+import org.eclipse.cdt.core.parser.IScanner;
+import org.eclipse.cdt.core.dom.parser.IBuiltinBindingsProvider;
+import org.eclipse.cdt.core.index.IIndex;
+import org.eclipse.cdt.core.dom.lrparser.action.ITokenStream;
import org.eclipse.cdt.core.dom.lrparser.action.ITokenMap;
import org.eclipse.cdt.core.dom.lrparser.action.TokenMap;
+import org.eclipse.cdt.core.dom.lrparser.ISecondaryParser;
import org.eclipse.cdt.internal.core.dom.parser.c.CNodeFactory;
import org.eclipse.cdt.core.dom.lrparser.action.c99.C99BuildASTParserAction;
@@ -32,7 +39,9 @@ import org.eclipse.cdt.core.dom.lrparser.action.c99.C99SecondaryParserFactory;
import org.eclipse.cdt.core.dom.lrparser.action.gnu.GCCBuildASTParserAction;
import org.eclipse.cdt.core.dom.lrparser.action.gnu.GCCSecondaryParserFactory;
-public class GCCSizeofExpressionParser extends PrsStream implements RuleAction , IParserActionTokenProvider, IParser< IASTExpression >
+public class GCCSizeofExpressionParser extends PrsStream implements RuleAction, ITokenStream,
+ ITokenCollector, IParser< IASTExpression >
+ , ISecondaryParser< IASTExpression >
{
private static ParseTable prs = new GCCSizeofExpressionParserprs();
private FixedBacktrackingParser btParser;
@@ -170,7 +179,11 @@ public class GCCSizeofExpressionParser extends PrsStream implements RuleAction ,
private C99BuildASTParserAction action;
private IASTCompletionNode compNode;
-public GCCSizeofExpressionParser() { // constructor
+
+public GCCSizeofExpressionParser(IScanner scanner, IDOMTokenMap tokenMap, IBuiltinBindingsProvider builtinBindingsProvider, IIndex index, Set<IParser.Options> options) {
+ initActions(options);
+ action.initializeTranslationUnit(scanner, builtinBindingsProvider, index);
+ CPreprocessorAdapter.runCPreprocessor(scanner, this, tokenMap);
}
private void initActions(Set<IParser.Options> options) {
@@ -194,10 +207,9 @@ public void addToken(IToken token) {
}
-public IASTExpression parse(Set<IParser.Options> options) {
+public IASTExpression parse() {
// this has to be done, or... kaboom!
setStreamLength(getSize());
- initActions(options);
final int errorRepairCount = -1; // -1 means full error handling
parser(null, errorRepairCount); // do the actual parse
@@ -240,12 +252,12 @@ public void setTokens(List<IToken> tokens) {
addToken(new Token(null, 0, 0, GCCSizeofExpressionParsersym.TK_EOF_TOKEN));
}
-public GCCSizeofExpressionParser(IParserActionTokenProvider parser) { // constructor
+public GCCSizeofExpressionParser(ITokenStream parser, Set<IParser.Options> options) { // constructor for creating secondary parser
+ initActions(options);
tokenMap = new TokenMap(GCCSizeofExpressionParsersym.orderedTerminalSymbols, parser.getOrderedTerminalSymbols());
}
-
private GCCBuildASTParserAction gnuAction;
public void ruleAction(int ruleNumber)
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gpp/GPPParser.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gpp/GPPParser.java
index b9ec813c871..6969692b75c 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gpp/GPPParser.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gpp/GPPParser.java
@@ -17,13 +17,16 @@ import lpg.lpgjavaruntime.*;
import java.util.*;
import org.eclipse.cdt.core.dom.ast.*;
+import org.eclipse.cdt.core.dom.lrparser.CPreprocessorAdapter;
+import org.eclipse.cdt.core.dom.lrparser.IDOMTokenMap;
import org.eclipse.cdt.core.dom.lrparser.IParser;
-import org.eclipse.cdt.core.dom.lrparser.IParserActionTokenProvider;
+import org.eclipse.cdt.core.dom.lrparser.ITokenCollector;
import org.eclipse.cdt.core.dom.lrparser.lpgextensions.FixedBacktrackingParser;
+import org.eclipse.cdt.core.dom.lrparser.action.ITokenStream;
import org.eclipse.cdt.core.dom.lrparser.action.ScopedStack;
-
-import org.eclipse.cdt.core.dom.lrparser.action.ITokenMap;
-import org.eclipse.cdt.core.dom.lrparser.action.TokenMap;
+import org.eclipse.cdt.core.parser.IScanner;
+import org.eclipse.cdt.core.dom.parser.IBuiltinBindingsProvider;
+import org.eclipse.cdt.core.index.IIndex;
import org.eclipse.cdt.core.dom.ast.cpp.*;
import org.eclipse.cdt.internal.core.dom.parser.cpp.CPPNodeFactory;
@@ -33,7 +36,9 @@ import org.eclipse.cdt.core.dom.lrparser.action.cpp.CPPSecondaryParserFactory;
import org.eclipse.cdt.core.dom.lrparser.action.gnu.GPPBuildASTParserAction;
import org.eclipse.cdt.core.dom.lrparser.action.gnu.GPPSecondaryParserFactory;
-public class GPPParser extends PrsStream implements RuleAction , IParserActionTokenProvider, IParser< IASTTranslationUnit >
+public class GPPParser extends PrsStream implements RuleAction, ITokenStream,
+ ITokenCollector, IParser< IASTTranslationUnit >
+
{
private static ParseTable prs = new GPPParserprs();
private FixedBacktrackingParser btParser;
@@ -171,7 +176,11 @@ public class GPPParser extends PrsStream implements RuleAction , IParserActionTo
private CPPBuildASTParserAction action;
private IASTCompletionNode compNode;
-public GPPParser() { // constructor
+
+public GPPParser(IScanner scanner, IDOMTokenMap tokenMap, IBuiltinBindingsProvider builtinBindingsProvider, IIndex index, Set<IParser.Options> options) {
+ initActions(options);
+ action.initializeTranslationUnit(scanner, builtinBindingsProvider, index);
+ CPreprocessorAdapter.runCPreprocessor(scanner, this, tokenMap);
}
private void initActions(Set<IParser.Options> options) {
@@ -195,17 +204,16 @@ public void addToken(IToken token) {
}
-public IASTTranslationUnit parse(Set<IParser.Options> options) {
+public IASTTranslationUnit parse() {
// this has to be done, or... kaboom!
setStreamLength(getSize());
- initActions(options);
final int errorRepairCount = -1; // -1 means full error handling
parser(null, errorRepairCount); // do the actual parse
super.resetTokenStream(); // allow tokens to be garbage collected
compNode = action.getASTCompletionNode(); // the completion node may be null
- return ( IASTTranslationUnit ) action.getParseResult();
+ return ( IASTTranslationUnit ) action.getParseResult();
}
@@ -228,25 +236,6 @@ public String getName() {
}
-
-private ITokenMap tokenMap = null;
-
-public void setTokens(List<IToken> tokens) {
- resetTokenStream();
- addToken(new Token(null, 0, 0, 0)); // dummy token
- for(IToken token : tokens) {
- token.setKind(tokenMap.mapKind(token.getKind()));
- addToken(token);
- }
- addToken(new Token(null, 0, 0, GPPParsersym.TK_EOF_TOKEN));
-}
-
-public GPPParser(IParserActionTokenProvider parser) { // constructor
- tokenMap = new TokenMap(GPPParsersym.orderedTerminalSymbols, parser.getOrderedTerminalSymbols());
-}
-
-
-
private GPPBuildASTParserAction gnuAction;
public void ruleAction(int ruleNumber)
@@ -2035,35 +2024,47 @@ private GPPBuildASTParserAction gnuAction;
//
case 579: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_assign); break;
}
+
+ //
+ // Rule 580: typeof_type_specifier ::= typeof unary_expression
+ //
+ case 580: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_typeof); break;
+ }
+
+ //
+ // Rule 581: typeof_type_specifier ::= typeof ( type_id )
+ //
+ case 581: { action. consumeExpressionTypeId(IASTTypeIdExpression.op_typeof); break;
+ }
//
- // Rule 584: declaration_specifiers ::= <openscope-ast> typeof_declaration_specifiers
+ // Rule 585: declaration_specifiers ::= <openscope-ast> typeof_declaration_specifiers
//
- case 584: { gnuAction.consumeDeclarationSpecifiersTypeof(); break;
+ case 585: { gnuAction.consumeDeclarationSpecifiersTypeof(); break;
}
//
- // Rule 597: declarator ::= <openscope-ast> ptr_operator_seq attribute_or_decl_specifier_seq direct_declarator
+ // Rule 598: declarator ::= <openscope-ast> ptr_operator_seq attribute_or_decl_specifier_seq direct_declarator
//
- case 597: { action. consumeDeclaratorWithPointer(true); break;
+ case 598: { action. consumeDeclaratorWithPointer(true); break;
}
//
- // Rule 599: simple_type_specifier ::= _Complex
+ // Rule 600: simple_type_specifier ::= _Complex
//
- case 599: { action. consumeToken(); break;
+ case 600: { action. consumeToken(); break;
}
//
- // Rule 600: simple_type_specifier ::= _Imaginary
+ // Rule 601: simple_type_specifier ::= _Imaginary
//
- case 600: { action. consumeToken(); break;
+ case 601: { action. consumeToken(); break;
}
//
- // Rule 601: declaration_specifiers ::= <openscope-ast> simple_declaration_specifiers
+ // Rule 602: declaration_specifiers ::= <openscope-ast> simple_declaration_specifiers
//
- case 601: { gnuAction.consumeDeclarationSpecifiersSimple(); break;
+ case 602: { gnuAction.consumeDeclarationSpecifiersSimple(); break;
}
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gpp/GPPParserprs.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gpp/GPPParserprs.java
index 44dfc63f158..3c3b0c5e16c 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gpp/GPPParserprs.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gpp/GPPParserprs.java
@@ -95,563 +95,564 @@ public class GPPParserprs implements lpg.lpgjavaruntime.ParseTable, GPPParsersym
4,3,1,2,1,3,4,4,6,1,
0,1,3,1,3,0,1,4,5,2,
4,2,4,3,3,5,3,4,3,2,
- 1,2,2,2,1,1,2,2,3,2,
- 2,3,1,1,1,1,4,1,1,1,
- 2,-239,0,0,0,-2,0,0,0,0,
+ 4,1,2,2,2,1,1,2,2,3,
+ 2,2,3,1,1,1,1,4,1,1,
+ 1,2,-152,0,0,0,-2,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-254,0,0,0,0,0,
- 0,0,-7,0,0,0,-300,0,0,0,
- 0,0,-9,0,-121,0,0,0,0,-297,
+ 0,0,0,0,-200,0,0,0,0,0,
+ 0,0,-38,0,0,0,0,0,0,0,
+ 0,0,0,-7,0,-121,0,0,0,0,
+ -172,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-14,-77,-26,0,0,0,-400,0,
- -16,0,0,0,0,0,0,-267,0,0,
- 0,-17,0,0,0,0,0,0,0,0,
- 0,0,-422,0,0,0,0,0,0,-59,
- 0,0,0,0,0,0,0,0,-18,-58,
- 0,0,0,0,-53,0,0,0,0,-3,
- 0,-32,-10,0,0,0,-21,-522,0,0,
- 0,0,0,0,0,0,0,-25,0,0,
- 0,0,0,0,0,0,0,-36,0,0,
- 0,0,0,0,0,-92,0,0,0,0,
+ 0,0,0,0,-15,-300,0,0,0,0,
+ 0,0,0,0,-9,0,0,0,0,0,
+ 0,-39,0,0,0,0,0,0,0,0,
+ 0,0,-59,0,-519,-256,0,-14,0,0,
+ -178,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-10,0,0,0,0,-542,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-162,0,0,0,-37,0,0,0,0,
- 0,0,0,0,-39,0,0,0,0,-139,
+ -3,-16,0,-45,0,0,0,0,0,0,
+ -303,0,0,0,-26,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,-104,0,0,0,0,0,0,-296,0,
+ 0,0,-27,0,0,0,0,0,-90,0,
+ -139,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-567,-89,-126,-161,0,0,0,
+ 0,0,0,0,0,-251,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -131,0,0,0,0,0,0,0,-163,0,
+ 0,0,0,0,-17,0,0,0,0,-197,
+ 0,-92,0,0,0,0,-131,0,0,0,
+ 0,0,0,-183,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-478,0,-181,0,0,0,0,
+ 0,0,0,0,0,0,0,-141,0,0,
+ 0,0,0,-32,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-220,0,0,0,
+ 0,0,-35,0,0,0,-4,0,0,0,
+ 0,0,0,0,0,-211,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-127,
+ -485,0,0,0,0,-184,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -61,-198,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-219,0,0,0,
- -30,0,0,0,0,0,0,0,-35,0,
+ 0,-150,-20,0,0,0,0,0,0,-18,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-366,0,0,0,0,0,0,0,
- 0,-370,0,0,-90,-182,0,0,0,0,
+ 0,0,0,0,-539,0,0,0,0,0,
+ -236,0,0,0,0,-25,0,0,-352,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-140,
- 0,0,-401,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-150,0,0,0,
- 0,0,0,0,0,0,0,-292,0,-218,
- 0,0,-40,0,0,0,0,0,0,0,
- 0,-345,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-169,0,0,0,
- 0,0,0,0,0,0,-105,0,0,0,
- 0,0,-388,0,0,0,-52,0,0,0,
- 0,0,0,0,-301,-246,-12,0,0,0,
- 0,0,-256,0,0,0,0,0,0,0,
- 0,0,0,0,0,-95,0,0,0,0,
- -480,0,0,0,0,0,0,0,0,0,
+ 0,0,-95,-58,-19,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-46,
+ -314,0,0,0,0,0,0,0,0,0,
+ 0,-470,0,0,0,0,0,0,0,0,
+ -36,0,0,-164,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-366,0,0,
+ -487,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-13,-208,0,0,
- 0,0,0,0,0,-42,0,0,0,0,
- 0,0,-152,0,0,0,0,0,-568,0,
- 0,0,-127,0,0,0,0,0,0,0,
+ 0,0,0,0,-140,0,0,-47,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-289,0,0,0,0,0,0,0,-93,
+ 0,0,0,0,0,-574,0,0,-575,0,
+ 0,0,-52,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-43,0,0,0,-15,-344,0,
- 0,0,-413,0,0,0,0,0,0,0,
+ 0,0,-37,-170,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-176,
+ -154,0,0,0,0,0,0,0,-12,-351,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-44,0,0,0,0,
- 0,0,0,-165,0,0,0,0,0,0,
- -51,-502,-175,0,0,0,-48,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-46,
+ 0,-40,0,0,-42,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-54,0,0,0,0,0,
- 0,0,0,0,0,-172,-294,0,0,0,
+ 0,-13,-177,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-101,0,-61,-396,0,0,
+ 0,0,0,0,0,0,-112,0,0,0,
+ 0,0,0,-370,0,0,0,0,0,0,
+ 0,0,0,0,0,-43,-305,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-65,0,0,0,-214,0,0,
- 0,0,0,0,0,0,0,0,-122,0,
0,0,0,0,0,0,0,0,0,0,
- -66,0,0,0,0,-149,0,0,0,-101,
+ -106,-297,0,0,0,0,-126,0,0,0,
+ -44,0,0,0,0,0,0,-48,-122,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-4,-80,
- 0,0,-81,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-56,0,0,0,
- -82,0,0,-395,0,0,0,0,0,0,
+ 0,0,0,0,-264,-266,0,0,0,-54,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-141,0,0,
- 0,0,0,0,-83,0,0,0,0,0,
- 0,0,0,0,-112,0,0,-375,0,0,
- 0,0,-273,-484,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-57,0,0,
+ 0,0,0,0,0,-409,0,0,0,0,
+ 0,0,0,0,0,0,-313,0,0,0,
+ -93,0,0,-404,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-60,0,0,-65,-573,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-55,0,0,0,0,0,
- 0,0,0,0,-153,-186,0,0,0,0,
- 0,0,0,0,0,0,-63,0,0,0,
- 0,0,0,-485,0,0,0,0,0,0,
+ 0,0,0,0,-163,0,0,0,0,0,
+ 0,0,-85,-491,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-235,0,0,0,
- 0,0,0,0,-84,0,0,0,0,0,
- 0,0,0,0,-343,0,0,-106,0,0,
- 0,-19,-47,-491,0,0,0,0,0,0,
+ 0,0,0,0,0,-246,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-86,-142,0,0,
+ 0,0,0,0,-142,-188,0,0,0,0,
+ 0,0,0,0,0,0,-431,0,0,0,
+ 0,0,-550,-492,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,
- 0,0,-382,0,0,-170,0,0,0,-87,
+ 0,0,0,0,0,-474,0,-66,-120,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,-96,0,0,0,
- 0,0,0,0,0,0,-232,0,0,0,
+ 0,0,0,0,-247,-64,0,0,0,0,
+ 0,-136,0,-498,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-155,0,-218,0,0,
+ 0,0,0,-523,0,0,0,0,0,0,
+ 0,0,0,0,0,-418,0,0,0,0,
+ 0,0,0,0,0,0,-233,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -535,0,-496,-166,0,0,0,-62,0,0,
- 0,0,0,0,0,0,0,-111,0,0,
- 0,-100,0,0,0,-57,0,0,0,0,
- 0,0,-332,0,0,0,-184,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-107,-108,0,
+ 0,0,0,0,0,0,-105,0,0,0,
+ 0,0,0,0,0,0,0,-257,0,0,
+ 0,0,0,0,-339,0,0,0,-53,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-78,0,0,0,-109,0,0,
- -333,0,0,0,-110,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,-124,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-334,0,
- 0,0,-125,0,0,0,0,0,0,0,
+ -189,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-390,0,0,0,-80,
+ 0,0,0,-340,0,0,0,0,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,-509,0,0,0,0,0,0,
+ 0,0,0,0,-483,0,0,0,-562,0,
+ 0,-341,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-81,0,-221,0,0,0,0,
+ 0,-158,0,0,0,0,0,0,0,0,
+ 0,0,-55,0,0,0,0,0,0,-342,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,-123,0,-484,0,0,0,0,0,0,
+ 0,0,0,-529,0,0,0,0,0,0,
+ -62,0,0,0,0,0,0,-343,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-128,-520,-285,0,0,0,0,0,-102,
- 0,0,0,0,0,0,0,0,0,-160,
- 0,0,0,0,0,0,-335,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-508,
+ 0,-82,0,0,0,0,0,-159,0,0,
+ 0,0,0,0,0,0,0,0,-526,0,
+ 0,0,-129,0,0,-344,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-134,
- -286,0,0,-104,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-103,0,0,
- -154,0,0,0,-336,0,0,0,-123,0,
+ 0,0,0,0,0,0,0,-147,0,-597,
+ 0,0,0,0,0,0,0,0,0,-566,
+ 0,0,0,0,0,0,-186,-192,0,-195,
+ 0,0,0,-345,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-302,0,0,
- 0,-113,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-173,0,0,0,0,
- 0,0,-337,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-83,0,-391,0,0,
+ -196,0,0,-160,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-148,-84,0,0,
+ 0,-346,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-381,0,0,0,-114,
+ 0,0,0,-88,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,-102,-576,0,0,0,0,0,-347,
+ 0,0,0,-311,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,-103,0,-86,-87,0,-198,0,0,-161,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-117,0,0,0,0,0,0,
- -338,0,0,0,0,0,0,0,0,0,
+ 0,-89,-51,0,-96,0,0,-348,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-476,0,0,0,-119,0,0,
- 0,0,0,0,0,-197,0,0,0,0,
- 0,-203,0,0,0,-200,0,0,-339,0,
- 0,0,-185,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-384,
+ 0,0,-100,0,-588,0,0,0,0,0,
+ 0,-187,0,0,0,0,0,0,-113,-603,
+ 0,-206,0,0,0,-349,0,0,0,-107,
0,0,0,0,0,0,0,0,0,0,
- 0,-477,0,0,0,-137,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-213,
- 0,0,0,0,0,0,-340,0,0,0,
- -129,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-509,
- 0,0,0,-215,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-383,0,0,
- 0,0,0,0,-341,0,0,0,-245,0,
+ 0,0,0,0,0,0,0,-149,0,-108,
+ -255,0,-371,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-109,0,-312,
+ -168,0,0,-357,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-550,0,0,
- 0,-217,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-147,0,0,-205,-207,
- 0,0,-342,0,0,0,-220,0,0,0,
+ 0,0,0,0,0,0,0,-208,0,0,
+ 0,0,0,0,0,0,0,-110,0,0,
+ 0,0,0,0,-376,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-222,0,-591,0,0,
- 0,0,0,-45,0,0,0,0,0,0,
- 0,0,0,-449,0,0,0,0,0,0,
- -354,0,0,0,-223,0,0,0,0,0,
+ 0,0,0,0,0,0,-426,0,-210,0,
+ 0,0,0,0,-124,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-204,0,0,
+ 0,0,-201,-359,0,-511,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-260,-265,-224,0,-225,0,0,
- 0,-467,0,0,0,0,0,0,0,0,
- 0,-226,0,0,-148,-417,0,0,-357,0,
- 0,0,-190,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-206,0,0,-60,0,0,0,0,0,
- 0,0,0,-202,0,0,0,0,0,-506,
+ 0,0,0,0,0,-382,0,0,0,0,
+ 0,0,0,0,0,0,-114,-203,0,0,
+ 0,0,0,-512,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-117,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-227,-187,0,0,0,
- 0,0,0,0,-228,0,0,0,0,0,
- -164,-229,-85,0,0,0,0,0,-371,0,
- -507,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-611,0,-125,0,0,
+ 0,-581,0,0,0,-239,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-120,0,0,0,
- 0,0,0,0,0,-230,0,0,0,0,
- 0,0,0,0,-199,0,0,0,-577,0,
+ 0,0,0,-119,0,-271,-128,0,-605,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,-137,-276,-307,0,0,0,0,-420,
+ 0,0,0,-427,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-216,0,0,0,0,0,0,0,-270,
+ 0,0,0,-397,0,0,0,0,0,0,
+ 0,0,0,-572,0,0,0,0,0,0,
+ -430,0,0,0,-240,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-275,0,0,0,0,-231,-501,-411,
+ 0,0,-171,0,0,0,-215,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-241,-569,-298,0,0,0,0,
+ 0,-501,0,0,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,
- -174,0,0,0,0,0,0,0,0,0,
- -421,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-554,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-542,0,0,-562,-233,0,0,
- 0,0,0,0,0,-136,0,0,0,0,
- 0,-193,-303,0,-508,0,0,0,0,0,
- 0,-494,0,0,0,0,0,0,0,0,
+ 0,0,-502,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,-194,0,0,0,0,0,0,0,
- 0,0,-495,0,0,0,0,0,0,0,
+ 0,0,0,0,-174,0,-134,0,-217,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-569,-195,
- 0,0,0,-196,0,0,0,0,0,0,
- 0,0,0,-558,-234,-201,-571,0,0,0,
- -236,-243,-250,-511,0,0,0,0,0,0,
+ 0,0,0,0,-282,-242,-156,-428,0,0,
+ 0,0,0,-514,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-251,0,0,
- -204,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-561,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-393,0,0,
+ 0,0,0,-402,0,0,0,0,0,0,
+ 0,0,0,0,-568,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-252,
- -167,-309,0,0,0,0,0,0,0,-253,
+ 0,0,0,0,0,0,-219,0,-378,0,
+ 0,-258,0,0,-350,0,0,0,0,0,
0,0,0,0,0,-33,0,0,0,0,
- 0,0,0,0,0,0,0,0,-459,0,
- -604,-599,0,-5,0,0,0,-262,0,0,
- 0,0,0,0,0,-367,0,0,-143,0,
- -261,0,0,0,0,0,0,0,0,0,
- 0,-296,-389,0,-355,-298,0,-238,0,0,
+ 0,0,0,0,0,0,0,0,-367,0,
+ -461,0,0,0,0,0,-199,-590,0,0,
+ 0,0,0,-111,0,0,0,-281,0,-286,
+ -299,0,0,0,-212,-394,0,-259,0,0,
+ -552,0,0,-202,0,0,-169,-606,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-207,-308,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-385,0,0,0,0,0,
- 0,-264,0,0,0,-468,-450,0,0,0,
- 0,-346,0,0,-600,0,0,0,0,0,
- 0,0,0,0,0,-609,0,0,0,0,
- 0,0,0,-271,0,-310,0,0,0,0,
- 0,0,0,0,0,0,0,-266,0,0,
- 0,-349,0,0,-274,-247,0,0,-287,0,
+ 0,0,0,0,-265,-270,0,0,0,0,
+ 0,-280,0,0,0,0,0,0,0,-5,
+ 0,0,0,-315,0,-399,0,-290,0,0,
0,0,0,0,0,0,0,0,0,0,
- -276,0,0,0,0,0,0,-299,-505,0,
- 0,0,0,0,0,-582,-592,0,0,0,
- 0,0,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,-422,
+ 0,0,0,-496,-209,-222,-223,0,-613,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,-224,0,0,-309,0,0,-225,0,0,
+ -226,-97,0,0,0,-216,0,0,0,0,
+ 0,0,0,0,0,-227,0,-368,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-277,0,0,-329,0,0,0,0,
+ 0,0,0,0,0,0,0,-228,0,0,
+ -369,-302,0,-267,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,-353,0,0,0,0,0,0,0,0,
+ 0,0,-269,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-229,0,0,0,
+ 0,0,0,-415,-578,0,0,0,-165,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-20,0,0,0,-418,0,0,0,
- 0,0,-487,0,0,0,0,0,0,0,
- 0,0,0,0,0,-240,0,0,0,0,
- -532,0,0,0,-288,-280,0,0,0,0,
- -6,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-374,-282,0,-588,0,-555,
+ 0,-230,-338,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-594,0,-231,
+ 0,0,-304,0,0,0,-306,0,0,0,
+ -336,0,0,0,-232,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-565,0,0,0,0,-304,-387,0,
- 0,-283,-22,0,-284,0,0,0,-241,0,
- 0,0,0,0,-308,-543,-290,-305,0,-359,
+ 0,0,0,0,0,-234,0,-22,0,0,
+ -310,0,0,0,0,0,0,-494,0,0,
+ 0,-235,0,0,0,0,0,0,0,0,
+ -237,0,0,0,0,-284,-248,-249,-250,0,
+ 0,0,0,0,0,-6,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-469,0,0,0,0,0,0,
- 0,-330,0,0,0,0,0,0,0,0,
+ 0,0,0,-254,-559,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-390,0,-368,0,0,
- 0,0,0,0,0,0,-155,0,0,-242,
- 0,-176,0,0,0,0,0,0,0,0,
- 0,0,0,0,-470,0,0,0,0,0,
- -248,0,0,0,0,0,0,0,0,-23,
- 0,0,0,0,0,0,0,-306,0,0,
- 0,0,0,0,0,-545,0,-347,-386,0,
- 0,0,0,0,0,0,0,0,0,-348,
- 0,0,0,0,0,-471,0,0,0,0,
- 0,-352,0,-326,0,0,0,-356,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-358,
- 0,0,0,0,-8,0,0,-546,0,0,
- -360,0,0,-416,0,0,0,0,0,0,
- 0,0,0,0,0,0,-369,0,-593,0,
- 0,0,-361,-406,0,0,0,0,0,0,
- 0,-493,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,-362,
- 0,0,-559,-24,0,0,0,-482,0,0,
- 0,-391,0,-483,0,0,0,0,0,0,
- 0,-410,0,0,0,0,0,0,0,0,
- 0,-419,0,0,0,-221,0,0,0,0,
- -249,-363,0,-498,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-394,0,-420,
- -537,0,0,0,0,-365,0,0,0,0,
- 0,0,-244,0,-403,-462,0,0,0,-409,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-426,
- -463,-377,-255,0,0,0,0,0,-378,0,
- 0,-379,0,0,0,0,0,0,0,0,
- 0,-492,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-380,0,
- 0,0,0,-584,0,0,0,0,0,0,
- 0,0,0,0,-465,-481,0,-517,0,0,
- -396,0,0,0,0,-397,0,-281,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- -327,0,0,0,-404,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-405,-259,-269,-412,0,0,0,
- 0,-414,0,-608,0,0,0,-427,0,0,
- 0,0,0,0,0,0,-279,0,0,0,
- 0,-428,0,0,0,0,0,0,0,-258,
- 0,0,0,-429,0,0,0,0,0,0,
- 0,0,-521,-430,0,-539,0,0,-431,0,
- -554,-384,0,0,0,0,0,0,0,0,
- -328,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-548,-432,-433,-434,0,0,0,
- 0,-291,0,0,-435,0,-398,0,0,0,
- 0,0,0,0,0,0,0,0,0,-34,
- 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,-457,-293,-295,-436,
- 0,0,0,0,-376,0,0,0,0,0,
- -407,-408,0,0,-575,-437,-438,0,0,0,
- 0,0,0,-439,-440,0,0,0,0,0,
- 0,0,-587,0,-594,0,0,-441,0,-442,
- 0,0,0,-424,0,0,0,0,0,-319,
+ 0,0,0,0,0,-373,0,-503,0,0,
+ 0,0,-598,0,0,0,-260,-261,-262,-166,
+ 0,0,0,0,0,0,-375,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ -263,-238,0,0,0,-383,0,0,0,0,
+ 0,0,-385,0,0,0,-337,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-605,-466,0,-443,0,0,0,0,
- -320,0,0,0,-479,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-273,0,
+ -275,-277,0,0,0,0,-416,0,0,0,
+ 0,0,-333,0,0,0,-272,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-530,0,-504,0,0,0,0,
- 0,-321,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-285,0,0,0,0,0,
+ 0,0,0,0,0,0,-56,0,0,0,
+ -287,-395,-400,-403,0,0,0,0,-412,0,
+ -429,0,0,-417,-8,-549,-553,0,0,-288,
+ -419,0,0,-425,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-291,0,0,
+ 0,0,0,0,-293,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,0,0,0,0,0,0,0,-599,
+ 0,0,0,-294,-467,0,0,0,0,0,
+ 0,0,0,-464,0,-465,0,0,0,0,
+ 0,-295,0,-544,0,0,0,-167,-301,-468,
+ -499,0,0,0,0,0,-472,0,0,-316,
+ -317,0,0,-505,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-558,0,0,0,
+ 0,0,0,0,0,-473,0,0,0,0,
+ 0,0,-486,-30,-243,0,-488,-476,0,-477,
+ 0,0,-516,0,0,-520,0,-356,-358,0,
+ 0,0,0,-584,-360,0,0,0,0,0,
+ 0,0,0,-361,0,0,0,0,0,0,
+ 0,0,0,0,0,-91,-362,0,0,0,
+ -151,0,-363,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-518,-365,-379,0,0,
+ 0,0,0,0,-386,-387,0,-388,0,0,
+ 0,0,0,0,0,-489,0,-524,-389,-405,
+ -406,0,0,0,0,0,0,0,0,-292,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,-334,0,0,0,-413,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-522,0,-414,0,-398,-525,
+ 0,0,0,0,0,-63,0,0,0,0,
+ 0,0,0,-421,-490,0,-528,0,-533,-534,
+ 0,0,0,0,0,0,0,-546,-423,0,
+ 0,0,0,-34,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,-537,-432,0,0,0,0,0,0,
+ 0,0,-335,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-433,-355,-181,
+ 0,0,0,0,0,0,0,0,-535,0,
+ 0,0,-564,-586,0,-593,0,0,-604,0,
+ 0,-132,0,0,0,0,0,-583,-434,0,
+ 0,0,0,-538,-435,-436,-536,0,0,-570,
+ 0,0,0,0,-437,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-438,
+ -545,0,0,-563,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ -407,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-517,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-325,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-478,0,
+ 0,-571,0,0,0,0,0,0,0,-439,
+ -585,-440,0,0,0,-441,0,0,-589,-442,
+ -443,0,-444,-445,-446,0,0,0,-447,0,
+ 0,0,0,-602,0,0,0,0,0,0,
+ 0,-567,0,-448,-449,0,-450,-591,0,0,
+ 0,0,0,-326,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-592,
+ -601,0,0,-451,0,-327,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-452,0,0,
+ 0,-612,-453,0,0,-587,0,-328,0,0,
+ 0,-454,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-456,
+ 0,0,-457,-462,0,0,0,-466,0,-329,
+ 0,0,0,-480,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,-479,0,-481,-482,0,-506,0,0,-507,
+ 0,-330,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-444,-445,0,-446,0,0,
- 0,0,-322,0,0,0,-513,0,0,0,
+ 0,0,0,-364,0,0,-521,0,-182,0,
+ 0,-527,0,-530,-540,0,-541,-24,-130,-543,
+ 0,0,0,0,-547,0,-556,-565,-577,-582,
+ -595,-596,0,0,0,0,-609,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-27,0,0,0,-447,
- 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,-364,-515,-519,-526,
- 0,0,0,0,-188,-527,0,0,0,-448,
- -451,-538,-528,-529,0,0,-452,-454,-455,0,
- -460,-464,-473,-474,-475,-499,-500,0,0,0,
- 0,0,-518,0,-453,-28,0,-580,0,0,
- 0,0,-523,0,0,-533,-534,0,0,0,
- 0,0,0,0,0,0,0,0,-536,0,
- 0,0,0,-472,-540,-549,-563,0,0,0,
+ 0,0,0,0,-455,-245,0,-28,0,0,
0,0,0,0,0,0,0,0,0,0,
- -456,0,0,-552,0,0,0,0,0,0,
- 0,0,0,0,0,-574,0,0,0,-570,
- -576,-578,0,0,-589,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-510,-564,
- -581,-598,0,0,0,0,-590,-603,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-524,-556,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-512,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-583,0,0,-179,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-551,-585,-586,0,0,0,0,0,
+ 0,0,0,0,0,-458,0,-497,-190,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,0,0,0,0,
- 0,0,-597,-607,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-553,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,0,
- 0,0,0,0,0,0,-557,0,0,0,
+ 0,0,0,0,0,0,-513,-279,0,0,
+ 0,-401,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,-531,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-38,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-515,-372,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-596,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-560,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-531,0,
- 0,0,0,0,0,0,0,0,-1,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-560,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-555,0,
+ 0,-410,0,0,-23,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-601,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-458,0,0,0,0,0,-595,0,
- -606,0,0,-579,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-557,
+ -94,0,0,0,-424,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,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,0,
0,0,0,0,0,0,0,0,0,0,
+ -561,-185,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-91,0,0,0,0,0,0,
- 0,-97,0,0,0,-178,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-171,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,-600,-475,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-313,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-1,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-324,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-325,0,0,
+ 0,0,-607,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -177,-41,0,0,0,0,0,-31,0,0,
- 0,-132,0,0,0,0,0,0,0,0,
+ -78,0,0,0,0,0,0,0,-469,0,
+ -610,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-98,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-415,0,0,0,0,0,0,0,0,
- 0,0,-514,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-156,-118,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-189,-488,
0,0,0,0,0,0,0,0,0,0,
- -49,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-548,0,0,0,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,0,0,0,0,0,-497,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-322,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-191,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-50,0,
- 0,0,-99,0,0,0,0,0,0,0,
- -272,0,0,0,0,0,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,0,0,0,0,0,
+ 0,-332,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,-31,0,0,0,-180,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-41,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-49,0,0,0,-244,
+ 0,0,0,0,0,0,0,0,-98,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-314,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-315,
+ 0,0,0,0,0,0,0,0,0,-614,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-133,-118,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-316,0,0,0,0,0,0,0,
+ 0,0,0,-191,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,0,0,0,-11,0,
+ 0,0,0,-50,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-70,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-162,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-29,
+ 0,0,0,0,0,0,-193,0,0,0,
+ 0,0,0,0,0,-408,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,-99,0,0,0,0,0,0,0,
+ 0,0,0,-283,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-71,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,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,-73,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-74,0,0,
0,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,-320,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,-321,0,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,-323,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-115,0,0,0,0,
- 0,-566,0,0,0,0,-116,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-67,0,0,0,0,
+ -324,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,0,0,0,0,0,0,0,0,
+ -70,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-29,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 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,-71,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-311,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-72,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-312,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,-353,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-372,0,0,
+ 0,-74,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-402,
+ 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,-68,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,-79,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-115,
0,0,0,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,-153,0,
0,0,0,0,0,0,0,0,0,0,
- -69,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-351,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-130,0,0,0,0,0,0,
- 0,0,-209,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-135,0,
- 0,0,0,0,0,-425,0,0,0,0,
- 0,-486,0,0,0,0,0,0,0,-157,
+ 0,0,0,0,-175,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-278,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-423,0,0,0,0,0,0,
- 0,-94,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,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-158,0,0,0,0,0,-183,0,0,
- 0,0,0,0,0,0,0,0,-307,0,
+ 0,-319,0,0,0,0,0,0,0,0,
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,0,0,0,
+ 0,0,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,-411,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-399,0,0,0,-525,
- 0,0,0,0,0,-159,0,-144,0,0,
+ 0,0,0,0,0,-67,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-373,
- 0,-145,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-146,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-278,0,0,0,0,0,0,
- 0,0,0,0,0,0,-138,0,0,0,
+ 0,0,0,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,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-192,0,0,
- 0,0,0,0,0,0,-257,0,0,0,
- 0,0,0,0,0,0,0,0,0,-263,
- 0,0,0,0,0,0,0,0,-350,0,
- 0,0,0,-503,0,0,0,-516,0,0,
- 0,0,0,0,0,0,0,0,0,-544,
+ -69,0,0,0,0,0,0,0,0,0,
0,0,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,-374,0,0,0,0,0,-493,0,
+ 0,0,0,0,-532,0,0,0,0,0,
+ -135,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-133,0,0,0,0,-180,
- 0,0,-572,0,0,0,0,-211,0,0,
- 0,0,-573,0,0,0,0,0,0,0,
+ 0,0,-77,0,0,0,0,0,0,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,0,0,0,0,
- 0,-212,0,0,0,0,0,0,0,-268,
- 0,0,0,0,0,0,0,0,0,-392,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-541,0,0,
- 0,0,0,0,0,0,0,-461,0,-602,
- 0,0,-489,0,-490,0,0,0,0,0,
- 0,0,0,0,0,-610,0,0,0,0,
+ 0,-144,0,0,0,0,0,0,-608,0,
+ 0,0,0,0,0,0,0,-145,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-146,0,0,0,
+ 0,0,-380,0,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,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-138,0,
+ 0,0,0,0,-194,0,0,0,-252,0,
+ 0,0,0,0,0,0,0,0,-268,0,
+ 0,0,0,0,0,0,0,0,-274,0,
+ 0,0,-510,0,0,0,0,0,0,0,
+ 0,-551,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,-579,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-157,-495,0,0,0,0,
+ 0,0,-580,0,0,0,0,-213,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,-205,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-214,0,0,0,0,
+ 0,-459,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,-460,
+ 0,0,0,0,0,0,0,-392,0,0,
+ 0,0,0,0,-463,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
@@ -662,7 +663,7 @@ public class GPPParserprs implements lpg.lpgjavaruntime.ParseTable, GPPParsersym
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,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;
@@ -672,7 +673,7 @@ public class GPPParserprs implements lpg.lpgjavaruntime.ParseTable, GPPParsersym
public interface BaseAction {
public final static char baseAction[] = {
- 188,4,125,89,89,31,31,81,81,45,
+ 188,4,125,89,89,30,30,81,81,45,
45,43,43,188,1,1,15,15,15,15,
15,15,15,16,16,16,14,11,11,6,
6,6,6,6,6,2,73,73,5,5,
@@ -682,34 +683,34 @@ public class GPPParserprs implements lpg.lpgjavaruntime.ParseTable, GPPParsersym
150,150,150,126,126,18,18,18,18,18,
18,18,18,18,18,18,18,18,19,19,
189,189,190,190,191,153,153,154,154,151,
- 151,155,152,152,20,20,21,21,22,22,
- 22,28,28,28,28,29,29,29,30,30,
- 30,32,32,32,32,32,33,33,33,34,
- 34,36,36,37,37,38,38,39,39,40,
+ 151,155,152,152,20,20,21,21,23,23,
+ 23,28,28,28,28,29,29,29,31,31,
+ 31,32,32,32,32,32,33,33,33,35,
+ 35,36,36,37,37,38,38,39,39,40,
40,47,47,46,46,46,46,46,46,46,
- 46,46,46,46,46,46,44,35,156,156,
+ 46,46,46,46,46,46,44,34,156,156,
103,103,192,192,96,220,220,74,74,74,
74,74,74,74,74,74,75,75,75,72,
- 72,54,54,193,193,76,76,76,110,110,
+ 72,51,51,193,193,76,76,76,110,110,
194,194,77,77,77,195,195,78,78,78,
78,78,79,79,90,90,90,90,90,90,
90,90,55,55,55,55,55,111,111,109,
- 109,56,196,23,23,23,23,53,53,93,
+ 109,56,196,22,22,22,22,54,54,93,
93,93,93,93,162,162,163,163,163,163,
163,158,158,158,159,159,159,160,160,160,
161,161,161,94,94,94,94,94,95,95,
95,13,13,13,13,13,13,13,13,13,
13,13,104,130,130,130,130,130,130,128,
128,128,164,129,129,197,166,166,165,165,
- 132,132,112,84,84,85,86,58,52,167,
+ 132,132,112,84,84,85,86,58,53,167,
167,59,92,92,168,168,157,157,133,134,
- 134,135,71,71,169,169,66,66,66,62,
- 62,61,67,67,87,87,69,69,69,64,
- 97,97,106,105,105,70,70,63,63,65,
- 65,48,107,107,107,99,99,99,100,100,
+ 134,135,71,71,169,169,66,66,66,63,
+ 63,62,67,67,87,87,69,69,69,65,
+ 97,97,106,105,105,70,70,64,64,61,
+ 61,48,107,107,107,99,99,99,100,100,
101,101,101,102,102,113,113,113,115,115,
114,114,221,221,98,98,199,199,199,199,
- 199,137,51,51,171,198,198,138,138,138,
+ 199,137,52,52,171,198,198,138,138,138,
138,139,173,200,200,42,42,127,140,140,
140,140,202,117,116,116,131,131,131,174,
175,175,175,175,175,175,175,175,175,175,
@@ -730,656 +731,657 @@ public class GPPParserprs implements lpg.lpgjavaruntime.ParseTable, GPPParsersym
184,26,26,215,215,185,185,185,27,60,
216,216,217,217,186,186,186,146,146,146,
18,18,18,18,32,32,40,16,75,218,
- 147,187,187,187,23,57,93,135,135,135,
- 119,119,119,197,202,117,64,71,164,13,
- 13,23,1545,35,3200,3188,1316,5889,27,30,
- 31,776,748,26,28,3212,25,23,50,1600,
- 106,76,77,108,2196,3230,586,533,534,535,
- 2246,2225,2262,1270,2248,2345,2336,2853,2396,2352,
- 2458,2528,143,1273,272,1399,35,292,158,144,
- 1885,35,3522,32,5642,4793,27,30,31,776,
- 748,337,28,77,2919,1687,35,278,1336,1182,
- 1487,163,231,2744,536,533,534,535,2144,35,
- 993,32,169,4572,27,30,31,776,748,337,
- 28,3254,3478,1399,3078,234,229,230,1956,156,
- 2846,2536,537,533,534,535,273,977,2265,255,
- 2553,317,1160,319,1682,3010,312,756,2166,330,
- 1896,1183,264,2846,1227,292,815,2274,3803,241,
- 244,247,250,727,537,533,534,535,1491,317,
- 1160,319,1542,2056,597,756,552,4402,1898,581,
- 1593,536,533,534,535,388,1610,2542,2642,425,
- 1178,2973,3063,3314,4578,901,1250,359,710,4642,
- 417,3517,3253,35,993,32,2273,5867,27,30,
- 31,776,748,57,28,1399,1745,1738,34,3906,
- 2736,35,993,32,2744,1734,27,30,31,776,
- 748,26,28,1567,25,23,50,1600,106,76,
- 77,108,2196,341,164,725,2053,3116,2246,2225,
- 2262,1336,2248,2345,2336,287,2396,2352,2458,2528,
- 143,1399,35,5992,5958,1543,515,144,3346,3315,
- 35,993,32,322,5867,27,30,31,776,748,
- 56,28,160,3332,3407,516,2736,35,993,32,
- 2744,1734,27,30,31,776,748,26,28,1567,
- 25,23,50,1600,106,76,77,108,2196,341,
- 88,1479,2374,102,2246,2225,2262,1107,2248,2345,
- 2336,1686,2396,2352,2458,2528,143,1399,35,281,
- 553,1918,515,144,3346,537,533,534,535,2332,
- 35,993,32,511,238,41,30,31,776,748,
- 3413,516,61,1399,3386,586,533,534,535,1377,
- 1133,2177,1399,3892,2635,2604,2736,35,993,32,
- 2744,1734,27,30,31,776,748,26,28,1567,
- 25,23,50,1600,106,76,77,108,2196,341,
- 1720,35,276,3558,2246,2225,2262,2744,2248,2345,
- 2336,231,2396,2352,2458,2528,143,2164,520,511,
- 221,3383,515,144,3346,2711,3478,379,2053,60,
- 2008,3078,445,2706,239,229,230,2881,540,2026,
- 2635,516,3084,35,993,32,2744,1734,27,30,
- 31,776,748,26,28,1567,25,23,50,1600,
- 106,76,77,108,2196,341,1661,2460,565,2405,
- 2246,2225,2262,1517,2248,2345,2336,2720,2396,2352,
- 2458,2528,143,1399,35,738,386,2882,515,144,
- 3346,537,533,534,535,2853,991,154,182,511,
- 2744,503,4701,2168,35,993,32,516,2118,27,
- 30,31,776,748,59,28,1880,2943,539,341,
- 2635,3152,35,993,32,450,1734,27,30,31,
- 776,748,26,28,1567,25,23,50,1600,106,
- 76,77,108,2196,1428,501,502,154,3082,2246,
- 2225,2262,4789,2248,2345,2336,350,2396,2352,2458,
- 2528,143,286,899,2440,512,496,377,144,2814,
- 35,993,32,3010,1734,27,30,31,776,748,
- 26,28,1567,25,23,50,1600,106,76,77,
- 108,2196,1399,35,292,3058,3178,2246,2225,2262,
- 2458,2248,2345,2336,551,2396,2352,2458,2528,143,
- 541,2026,2440,389,2947,377,144,425,1307,3708,
- 35,993,32,3897,1734,27,30,31,776,748,
- 26,28,1567,25,23,50,1600,106,76,77,
- 108,2196,586,533,534,535,261,2246,2225,2262,
- 3028,2248,2345,2336,71,2396,2352,3880,1336,383,
- 2844,1436,1543,2887,35,993,32,1380,1734,27,
- 30,31,776,748,26,28,1567,25,23,50,
- 1600,106,76,77,108,2196,3025,323,231,156,
- 71,2246,2225,2262,4675,2248,2345,2336,2244,2396,
- 2352,2458,2528,143,3274,1793,2440,384,2844,377,
- 144,243,229,230,310,1107,2643,3016,35,993,
- 32,3371,1734,27,30,31,776,748,26,28,
- 1567,25,23,50,1600,106,76,77,108,2196,
- 537,533,534,535,2984,2246,2225,2262,3373,2248,
- 2345,2336,1056,2396,2352,2458,2528,143,554,2426,
- 35,993,32,549,144,2583,30,31,776,748,
- 436,246,537,533,534,535,3285,35,993,32,
- 3078,1734,27,30,31,776,748,26,28,1567,
- 25,23,50,1600,106,76,77,108,2196,1805,
- 715,375,2844,2981,2246,2225,2262,1793,2248,2345,
- 2336,320,2396,2352,2458,2528,143,1783,35,1860,
- 5945,3014,158,144,3285,35,993,32,419,1734,
- 27,30,31,776,748,26,28,1567,25,23,
- 50,1600,106,76,77,108,2196,562,1399,35,
- 1738,275,2246,2225,2262,3191,2248,2345,2336,49,
- 2396,2352,2458,2528,143,1527,1331,831,2606,3248,
- 371,144,2816,3436,3285,35,993,32,1889,1734,
- 27,30,31,776,748,26,28,1567,25,23,
- 50,1600,106,76,77,108,2196,537,533,534,
- 535,547,2246,2225,2262,71,2248,2345,2336,5544,
- 2396,2352,2458,2528,143,3290,2426,35,993,32,
- 371,144,40,30,31,776,748,1399,35,738,
- 386,3682,2642,4582,3285,35,993,32,1476,1734,
- 27,30,31,776,748,26,28,1567,25,23,
- 50,1600,106,76,77,108,2196,1399,35,1738,
- 277,370,2246,2225,2262,3414,2248,2345,2336,49,
- 2396,2352,2458,2528,143,3113,1331,960,3078,1336,
- 371,144,2255,2255,3016,35,993,32,1476,1734,
- 27,30,31,776,748,26,28,1567,25,23,
- 50,1600,106,76,77,108,2196,721,2356,495,
- 156,369,2246,2225,2262,663,2248,2345,2336,3840,
- 2396,2352,2458,2528,143,1465,2008,1687,35,451,
- 549,144,5880,1399,35,3894,3225,35,993,32,
- 4118,1734,27,30,31,776,748,26,28,1567,
- 25,23,50,1600,106,76,77,108,2196,93,
- 1399,35,738,386,2246,2225,2262,354,2248,2345,
- 2336,367,2396,2352,2458,2858,164,2948,35,993,
- 32,2483,1734,27,30,31,776,748,26,28,
- 1567,25,23,50,1600,106,76,77,108,2196,
- 3808,3834,272,3556,725,2246,2225,2262,71,2248,
- 2345,2336,790,2396,2352,2458,2528,143,1399,35,
- 738,386,62,142,144,325,154,537,533,534,
- 535,5569,2245,3285,35,993,32,2720,1734,27,
- 30,31,776,748,26,28,1567,25,23,50,
- 1600,106,76,77,108,2196,42,2641,2272,2373,
- 272,2246,2225,2262,274,2248,2345,2336,548,2396,
- 2352,2458,2528,143,1964,35,738,386,3474,155,
- 144,3285,35,993,32,1289,1734,27,30,31,
- 776,748,26,28,1567,25,23,50,1600,106,
- 76,77,108,2196,71,444,2748,2812,1664,2246,
- 2225,2262,807,2248,2345,2336,49,2396,2352,2458,
- 2528,143,338,1331,1475,521,458,154,144,3285,
- 35,993,32,814,1734,27,30,31,776,748,
- 26,28,1567,25,23,50,1600,106,76,77,
- 108,2196,813,3407,1783,35,394,2246,2225,2262,
- 71,2248,2345,2336,856,2396,2352,2458,2528,143,
- 1399,35,738,386,2761,153,144,3285,35,993,
- 32,445,1734,27,30,31,776,748,26,28,
- 1567,25,23,50,1600,106,76,77,108,2196,
- 2552,1783,35,394,1910,2246,2225,2262,5688,2248,
- 2345,2336,49,2396,2352,2458,2528,143,71,1331,
- 625,1417,936,152,144,3285,35,993,32,3112,
- 1734,27,30,31,776,748,26,28,1567,25,
- 23,50,1600,106,76,77,108,2196,1399,35,
- 1738,280,71,2246,2225,2262,2337,2248,2345,2336,
- 2624,2396,2352,2458,2528,143,1399,35,738,386,
- 3495,151,144,3285,35,993,32,520,1734,27,
- 30,31,776,748,26,28,1567,25,23,50,
- 1600,106,76,77,108,2196,1399,35,1738,3893,
- 71,2246,2225,2262,3875,2248,2345,2336,49,2396,
- 2352,2458,2528,143,71,1331,6000,3514,4689,150,
- 144,3285,35,993,32,2634,1734,27,30,31,
- 776,748,26,28,1567,25,23,50,1600,106,
- 76,77,108,2196,1399,3916,1738,74,71,2246,
- 2225,2262,4764,2248,2345,2336,623,2396,2352,2458,
- 2528,143,1399,35,738,386,905,149,144,3285,
- 35,993,32,2720,1734,27,30,31,776,748,
- 26,28,1567,25,23,50,1600,106,76,77,
- 108,2196,2154,35,1738,3917,71,2246,2225,2262,
- 990,2248,2345,2336,49,2396,2352,2458,2528,143,
- 71,1331,2772,441,637,148,144,3285,35,993,
- 32,3078,1734,27,30,31,776,748,26,28,
- 1567,25,23,50,1600,106,76,77,108,2196,
- 2154,35,1738,275,71,2246,2225,2262,1055,2248,
- 2345,2336,558,2396,2352,2458,2528,143,1399,35,
- 738,386,457,147,144,3285,35,993,32,2720,
- 1734,27,30,31,776,748,26,28,1567,25,
- 23,50,1600,106,76,77,108,2196,1399,35,
- 1738,3971,71,2246,2225,2262,2543,2248,2345,2336,
- 49,2396,2352,2458,2528,143,3078,1331,1475,909,
- 3534,146,144,3285,35,993,32,817,1734,27,
- 30,31,776,748,26,28,1567,25,23,50,
- 1600,106,76,77,108,2196,1267,577,1783,35,
- 394,2246,2225,2262,2348,2248,2345,2336,5227,2396,
- 2352,2458,2528,143,1399,35,738,386,5408,145,
- 144,3285,35,993,32,1268,1734,27,30,31,
- 776,748,26,28,1567,25,23,50,1600,106,
- 76,77,108,2196,2720,2720,347,1974,2742,2246,
- 2225,2262,3318,2248,2345,2336,49,2396,2352,2458,
- 2528,143,1415,1331,2545,3078,2853,159,144,3708,
- 35,993,32,2722,1734,27,30,31,776,748,
- 26,28,1567,25,23,50,1600,106,76,77,
- 108,2196,2846,35,292,154,24,2246,2225,2262,
- 5837,2248,2345,2336,2722,2396,2352,2458,2858,164,
- 3285,35,993,32,3998,1734,27,30,31,776,
- 748,26,28,1567,25,23,50,1600,106,76,
- 77,108,2196,51,324,1250,66,3440,2246,2225,
- 2262,2744,2248,2345,2336,2774,2396,2352,2458,2528,
- 143,3116,1276,154,296,1336,576,144,1830,2255,
- 3478,3285,35,993,32,3889,1734,27,30,31,
- 776,748,26,28,1567,25,23,50,1600,106,
- 76,77,108,2196,391,387,160,154,425,2246,
- 2225,2262,5858,2248,2345,2336,522,2396,2352,2458,
- 2528,143,977,728,1543,3890,3913,140,144,3408,
- 35,993,32,3465,1734,27,30,31,776,748,
- 26,28,1567,25,23,50,1600,106,76,77,
- 108,2196,1720,35,279,358,3668,2246,2225,2262,
- 71,2248,2345,2336,3126,2396,2352,2458,2528,143,
- 3537,3006,3026,71,3515,189,144,3299,434,3118,
- 3708,35,993,32,5910,1734,27,30,31,776,
- 748,26,28,1567,25,23,50,1600,106,76,
- 77,108,2196,1399,35,738,386,3888,2246,2225,
- 2262,71,2248,2345,2336,1336,2396,2352,2458,2858,
- 164,3708,35,993,32,1908,1734,27,30,31,
- 776,748,26,28,1567,25,23,50,1600,106,
- 76,77,108,2196,4167,49,3516,2720,2064,2246,
- 2225,2262,46,2248,2345,2336,2255,2396,2352,2458,
- 2858,164,2604,2008,3078,3593,35,276,537,533,
- 534,535,3708,35,993,32,421,1734,27,30,
- 31,776,748,26,28,1567,25,23,50,1600,
- 106,76,77,108,2196,1399,35,738,386,2152,
- 2246,2225,2262,2604,2248,2345,2336,301,2396,2352,
- 2458,2858,164,3708,35,993,32,291,1734,27,
- 30,31,776,748,26,28,1567,25,23,50,
- 1600,106,76,77,108,2196,97,429,2148,2536,
- 1436,2246,2225,2262,2604,2248,2345,2336,298,2396,
- 2352,2458,2858,164,3948,998,3048,1399,35,738,
- 386,614,1090,1001,3708,35,993,32,420,1734,
- 27,30,31,776,748,26,28,1567,25,23,
- 50,1600,106,76,77,108,2196,556,1093,559,
- 1593,3676,2246,2225,2262,286,2248,2345,2336,432,
- 2396,2352,2458,2858,164,3828,35,993,32,423,
- 1734,27,30,31,776,748,26,28,1567,25,
- 23,50,1600,106,76,77,108,2196,3370,3178,
- 1181,2255,2804,2246,2225,2262,402,2248,2345,2336,
- 1185,2396,2352,2458,2858,164,1657,35,993,32,
- 5642,4793,27,30,31,776,748,337,28,3736,
- 579,2536,2255,602,4013,35,738,386,1274,3836,
- 536,533,534,535,977,321,3736,236,521,2919,
- 1336,2255,3468,602,529,374,1793,4625,586,533,
- 534,535,3290,3116,156,1,71,1336,3078,602,
- 2266,3454,341,3080,180,977,272,317,1160,319,
- 1682,156,312,756,156,330,523,4394,227,351,
- 3411,200,977,2265,977,3320,563,3346,160,573,
- 156,195,997,2166,231,374,4154,3444,977,3080,
- 180,1926,3437,4402,2778,2255,203,215,3011,169,
- 202,212,213,214,216,585,2536,234,229,230,
- 536,533,534,535,2255,3390,2709,168,273,184,
- 167,170,171,172,173,174,181,1276,3751,304,
- 308,1076,1687,35,278,706,71,2214,977,2722,
- 1336,241,244,247,250,727,3755,354,1476,522,
- 1682,2065,372,935,1542,5750,529,3322,71,3440,
- 1476,581,2977,2744,1627,2483,3922,1399,35,738,
- 386,3675,1178,2973,3063,3314,4578,901,3708,35,
- 993,32,3478,1734,27,30,31,776,748,26,
- 28,1567,25,23,50,1600,106,76,77,108,
- 2196,3906,3189,352,5898,196,2246,2225,2262,431,
- 2248,2345,2336,2550,2396,3806,3708,35,993,32,
- 302,1734,27,30,31,776,748,26,28,1567,
- 25,23,50,1600,106,76,77,108,2196,94,
- 44,2641,353,1435,2246,2225,2262,2853,2248,2345,
- 2336,529,3746,2539,35,993,32,358,4793,27,
- 30,31,776,748,337,28,3078,586,533,534,
- 535,348,3936,3006,3026,2722,1083,536,533,534,
- 535,1302,35,993,32,2726,4572,27,30,31,
- 776,748,337,28,678,71,1692,571,164,2252,
- 2234,35,993,32,5642,4572,27,30,31,776,
- 748,337,28,231,317,1160,319,1682,89,313,
- 756,102,331,348,536,533,534,535,2722,1800,
- 35,451,1884,1678,5880,3560,246,229,230,3078,
- 350,4801,314,1116,319,2809,2137,1175,2246,5576,
- 2604,5894,344,2846,2712,347,295,586,533,534,
- 535,317,1160,319,71,390,312,756,1336,425,
- 87,4394,3708,35,993,32,349,1734,27,30,
- 31,776,748,26,28,1567,25,23,50,1600,
- 106,76,77,108,2196,179,2722,70,2604,156,
- 2246,2225,2262,231,2248,2345,3805,71,3870,283,
- 3078,602,1807,35,993,32,5642,4572,27,30,
- 31,776,748,337,28,71,249,229,230,1336,
- 341,3078,350,304,308,1076,536,533,534,535,
- 1351,5386,156,198,342,2846,2712,347,1803,71,
- 722,3351,3714,4801,2459,3346,154,3908,3907,71,
- 156,5953,69,854,536,533,534,535,1627,3876,
- 2012,378,3161,317,1160,319,71,380,312,756,
- 1336,881,1086,4394,3708,35,993,32,3144,1734,
- 27,30,31,776,748,26,28,1567,25,23,
- 50,1600,106,76,77,108,2196,448,2748,2812,
- 3150,156,2246,2225,2262,2097,2248,3695,154,2744,
- 3883,93,428,5963,2066,35,3522,32,5642,4572,
- 27,30,31,776,748,337,28,2604,227,1399,
- 35,738,386,2849,2604,305,308,1076,3896,533,
- 534,535,1370,35,3522,32,5642,4572,27,30,
- 31,776,748,337,28,3354,205,215,3011,1690,
- 204,212,213,214,216,585,536,533,534,535,
- 2875,430,197,3741,1791,317,1160,319,1690,297,
- 312,756,71,3354,3653,1183,1081,206,208,210,
- 293,294,2732,633,2295,517,207,209,586,533,
- 534,535,2137,317,1160,319,3044,5894,312,756,
- 5699,3078,3213,1183,1694,35,3522,32,5642,4572,
- 27,30,31,776,748,337,28,700,71,3318,
- 2722,3184,3324,4729,417,3517,3497,400,3896,533,
- 534,535,68,277,231,71,2604,602,3318,4690,
- 2426,35,993,32,3318,3354,3432,30,31,776,
- 748,6028,417,3517,326,333,227,252,229,230,
- 71,2604,3504,3078,2889,317,1160,319,156,3677,
- 312,756,3737,332,333,1183,977,3080,180,3566,
- 333,201,2604,350,203,215,3011,169,202,212,
- 213,214,216,585,53,342,2846,2712,347,3742,
- 2459,284,814,340,2720,168,199,183,167,170,
- 171,172,173,174,2896,71,71,3913,71,1813,
- 3882,3296,3030,4729,417,3517,3889,404,2260,35,
- 993,32,5746,4572,27,30,31,776,748,337,
- 28,3708,35,993,32,3892,1734,27,30,31,
- 776,748,26,28,1567,25,23,50,1600,106,
- 76,77,108,2196,3895,3078,3078,3374,427,2246,
- 2225,2262,2368,3708,2797,35,993,32,439,2118,
- 27,30,31,776,748,26,28,3078,509,317,
- 1160,319,531,98,312,756,52,376,3897,3476,
- 2168,35,993,32,2232,2118,27,30,31,776,
- 748,58,28,71,2257,350,71,3313,3368,3050,
- 2619,2604,2025,35,738,386,2775,342,2846,2712,
- 347,3708,35,993,32,3471,1734,27,30,31,
- 776,748,26,28,1567,25,23,50,1600,106,
- 76,77,108,2196,71,2080,2230,2369,3966,2246,
- 2225,2262,3078,3710,272,2526,4324,2699,35,993,
- 32,5582,4572,27,30,31,776,748,337,28,
- 1430,35,993,32,5642,4572,27,30,31,776,
- 748,337,28,568,3708,35,993,32,349,1734,
- 27,30,31,776,748,26,28,1567,25,23,
- 50,1600,106,76,77,108,2196,71,3078,3078,
- 2602,602,2246,2225,3605,3078,3895,364,317,1160,
- 319,3078,3985,312,756,71,2983,2883,1340,4319,
- 341,317,1160,319,3013,3800,312,756,72,538,
- 557,1340,156,3860,350,71,90,4284,3080,2741,
- 4119,188,569,543,3078,4653,342,2846,2712,347,
- 3708,35,993,32,3714,1734,27,30,31,776,
- 748,26,28,1567,25,23,50,1600,106,76,
- 77,108,2196,71,3078,348,802,2836,2246,2225,
- 3606,3708,35,993,32,3078,1734,27,30,31,
- 776,748,26,28,1567,25,23,50,1600,106,
- 76,77,108,2196,3116,3563,3078,3817,1336,2246,
- 2225,3607,3708,35,993,32,449,1734,27,30,
- 31,776,748,26,28,1567,25,23,50,1600,
- 106,76,77,108,2196,710,1930,3604,3833,160,
- 2246,2225,3615,3708,35,993,32,3078,1734,27,
- 30,31,776,748,26,28,1567,25,23,50,
- 1600,106,76,77,108,2196,1347,35,738,386,
- 3857,2246,2225,3670,3708,35,993,32,4073,1734,
- 27,30,31,776,748,26,28,1567,25,23,
- 50,1600,106,76,77,108,2196,369,3078,3078,
- 3078,602,2246,2225,3686,3558,3078,3937,49,2744,
- 526,4105,1690,3078,3078,1331,1304,185,3899,3117,
- 227,2446,3920,3743,3798,3214,2632,2621,3478,4119,
- 4157,67,156,3799,1620,461,2056,66,2604,602,
- 977,3080,180,3557,65,64,3797,3655,203,215,
- 3011,169,202,212,213,214,216,585,227,3861,
- 586,533,534,535,71,3182,3078,3078,1336,168,
- 156,3891,167,170,171,172,173,174,977,3080,
- 180,553,3318,222,3921,602,203,215,3011,169,
- 202,212,213,214,216,585,3653,3685,55,156,
- 3413,3863,2138,503,227,3893,231,168,3884,178,
- 167,170,171,172,173,174,156,328,333,645,
- 3078,3078,2604,602,977,3080,180,3923,3975,583,
- 229,230,203,215,3011,169,202,212,213,214,
- 216,585,227,7073,7073,71,71,500,502,1336,
- 1336,54,3992,168,156,176,167,170,171,172,
- 173,174,977,3080,180,737,3318,193,7073,602,
- 203,215,3011,169,202,212,213,214,216,585,
- 156,156,7073,7073,3078,7073,3062,3215,227,2527,
- 3991,168,7073,578,167,170,171,172,173,174,
- 156,3705,333,829,3078,3078,7073,602,977,3080,
- 180,536,533,534,535,101,203,215,3011,169,
- 202,212,213,214,216,585,227,7073,1276,7073,
- 7073,7073,7073,3078,4168,2742,2825,168,156,177,
- 167,170,171,172,173,174,977,3080,180,921,
- 7073,327,7073,602,203,215,3011,169,202,212,
- 213,214,216,585,4321,527,1726,7073,7073,7073,
- 2744,2022,227,7073,7073,168,7073,187,167,170,
- 171,172,173,174,156,7073,7073,1013,7073,227,
- 7073,602,977,3080,180,7073,7073,7073,7073,7073,
- 203,215,3011,169,202,212,213,214,216,585,
- 227,7073,3888,7073,7073,7073,2744,2671,405,5553,
- 7073,168,156,3972,167,170,171,172,173,174,
- 977,3080,180,1105,7073,341,7073,602,203,215,
- 3011,169,202,212,213,214,216,585,406,407,
- 408,293,294,7073,633,7073,227,7073,7073,168,
- 1864,192,167,170,171,172,173,174,156,3116,
- 7073,7073,7073,1336,2169,7073,977,3080,180,1968,
- 7073,7073,7073,2744,203,215,3011,169,202,212,
- 213,214,216,585,3116,7073,7073,7073,1336,7073,
- 7073,7073,227,7073,160,168,7073,186,167,170,
- 171,172,173,174,2726,35,993,32,5746,4572,
- 27,30,31,776,748,337,28,7073,7073,160,
- 205,215,3011,7073,204,212,213,214,216,585,
- 409,412,7073,71,7073,7073,7073,602,7073,3653,
- 7073,1197,7073,7073,3856,602,7073,7073,1336,7073,
- 7073,206,208,210,293,294,341,633,7073,217,
- 207,209,3990,7073,227,317,1160,319,156,7073,
- 312,756,7073,7073,7073,524,156,188,13,156,
- 4969,4653,7073,7073,977,3080,180,4054,162,7073,
- 7073,350,203,215,3011,169,202,212,213,214,
- 216,585,7073,342,2846,2712,347,7073,7073,3318,
- 440,525,454,168,1921,194,167,170,171,172,
- 173,174,1498,35,993,32,2915,4793,27,30,
- 31,776,748,337,28,7073,7073,7073,536,533,
- 534,535,7073,3868,3743,333,536,533,534,535,
- 536,533,534,535,7073,1027,7073,606,7073,7073,
- 7073,7073,7073,1276,7073,7073,7073,1276,1498,35,
- 993,32,7073,4793,27,30,31,776,748,337,
- 28,7073,7073,317,1160,319,1682,7073,315,756,
- 2865,331,536,533,534,535,7073,7073,7073,1476,
- 7073,7073,7073,7073,7073,3708,35,993,32,678,
- 1734,27,30,31,776,748,26,28,1567,25,
- 23,50,1600,106,76,77,108,2196,7073,317,
- 1160,319,1682,3528,313,756,4103,331,3708,35,
- 993,32,7073,1734,27,30,31,776,748,26,
- 28,1567,25,23,50,1600,106,76,77,108,
- 2196,7073,7073,7073,7073,7073,2246,3687,3708,35,
- 993,32,7073,1734,27,30,31,776,748,26,
- 28,1567,25,23,50,1600,106,76,77,108,
- 2196,2980,1347,35,738,386,2246,3694,4065,35,
- 738,386,2052,3836,7073,7073,7073,7073,7073,7073,
- 7073,237,7073,7073,7073,536,533,534,535,7073,
- 7073,7073,586,533,534,535,536,533,534,535,
- 7073,7073,1433,7073,49,7073,7073,7073,7073,7073,
- 272,1331,1425,1308,7073,1770,35,993,32,5642,
- 4572,27,30,31,776,748,337,28,7073,7073,
- 1678,7073,3496,7073,7073,7073,7073,7073,231,537,
- 533,534,535,2764,35,993,32,5642,4572,27,
- 30,31,776,748,337,28,536,533,534,535,
- 7073,235,229,230,71,2190,7073,7073,2744,2744,
- 7073,7073,273,1663,7073,7073,317,1160,319,2283,
- 3678,312,756,2744,2744,7073,4571,341,227,2070,
- 7073,1475,35,738,386,242,245,248,251,727,
- 7073,7073,227,3478,317,1160,319,7073,1542,312,
- 756,7073,3346,7073,3954,582,205,215,3011,3559,
- 204,212,213,214,216,585,7073,7073,7073,2643,
- 205,215,3011,49,204,212,213,214,216,585,
- 1331,47,7073,536,533,534,535,206,208,210,
- 293,294,7073,633,2376,217,207,209,2744,645,
- 2524,206,208,210,293,294,7073,633,7073,217,
- 207,209,7073,7073,2273,7073,4969,227,503,1670,
- 35,738,386,1347,35,738,386,7073,2869,7073,
- 4969,1807,35,993,32,5642,4572,27,30,31,
- 776,748,337,28,7073,205,215,3011,7073,204,
- 212,213,214,216,585,537,533,534,535,7073,
- 7073,49,500,502,7073,49,7073,7073,1331,47,
- 7073,7073,1331,4406,7073,7073,206,208,210,293,
- 294,7073,633,7073,217,207,209,1319,7073,7073,
- 7073,1678,317,1160,319,7073,7073,312,756,7073,
- 7073,3935,4571,3005,7073,4969,3708,35,993,32,
- 7073,1734,27,30,31,776,748,26,28,1567,
- 25,23,50,1600,106,76,77,108,2196,7073,
- 3708,35,993,32,3542,1734,27,30,31,776,
- 748,26,28,1567,25,23,50,1600,106,76,
- 77,108,3554,3708,35,993,32,7073,1734,27,
- 30,31,776,748,26,28,1567,25,23,50,
- 1600,106,76,77,108,3564,3708,35,993,32,
- 7073,1734,27,30,31,776,748,26,28,1567,
- 25,23,50,1600,106,76,77,108,3569,1839,
- 7073,7073,7073,2744,7073,7073,7073,7073,7073,7073,
- 7073,7073,7073,7073,7073,7073,7073,7073,3708,35,
- 993,32,227,1734,27,30,31,776,748,26,
- 28,1567,25,23,50,1600,106,76,77,85,
- 7073,7073,7073,7073,7073,7073,7073,7073,7073,7073,
- 205,215,3011,7073,204,212,213,214,216,585,
- 3468,35,993,32,7073,1734,27,30,31,776,
- 748,26,28,1567,25,23,50,1600,580,76,
- 77,206,208,210,293,294,7073,633,7073,218,
- 207,209,3708,35,993,32,7073,1734,27,30,
- 31,776,748,26,28,1567,25,23,50,1600,
- 106,76,77,83,3708,35,993,32,7073,1734,
- 27,30,31,776,748,26,28,1567,25,23,
- 50,1600,106,76,77,82,3708,35,993,32,
- 7073,1734,27,30,31,776,748,26,28,1567,
- 25,23,50,1600,106,76,77,81,3708,35,
- 993,32,7073,1734,27,30,31,776,748,26,
- 28,1567,25,23,50,1600,106,76,77,80,
- 3708,35,993,32,7073,1734,27,30,31,776,
- 748,26,28,1567,25,23,50,1600,106,76,
- 77,79,3708,35,993,32,7073,1734,27,30,
- 31,776,748,26,28,1567,25,23,50,1600,
- 106,76,77,78,3708,1745,993,1881,7073,1734,
- 27,30,31,776,748,26,28,1567,25,23,
- 50,1600,106,76,77,84,2469,7073,7073,7073,
- 2744,7073,2534,7073,7073,7073,2744,2562,7073,7073,
- 7073,2744,7073,7073,7073,7073,7073,7073,7073,227,
- 7073,7073,7073,7073,7073,341,3528,35,993,32,
- 227,1734,27,30,31,776,748,26,28,1567,
- 25,23,50,1600,572,76,77,205,215,3011,
- 3703,204,212,213,214,216,585,7073,205,215,
- 3011,7073,204,212,213,214,216,585,7073,7073,
- 7073,7073,7073,7073,7073,7073,7073,7073,206,208,
- 210,293,294,7073,633,7073,518,207,209,206,
- 208,210,293,294,7073,633,7073,303,207,209,
- 3345,35,993,32,7073,1734,27,30,31,776,
- 748,26,28,1567,25,23,50,1600,106,76,
- 77,104,3708,35,993,32,7073,1734,27,30,
- 31,776,748,26,28,1567,25,23,50,1600,
- 106,76,77,110,3708,35,993,32,7073,1734,
- 27,30,31,776,748,26,28,1567,25,23,
- 50,1600,106,76,77,109,3708,35,993,32,
- 7073,1734,27,30,31,776,748,26,28,1567,
- 25,23,50,1600,106,76,77,107,3708,35,
- 993,32,7073,1734,27,30,31,776,748,26,
- 28,1567,25,23,50,1600,106,76,77,105,
- 2655,7073,7073,4075,2744,7073,7073,7073,7073,7073,
- 7073,7073,7073,7073,7073,7073,7073,7073,7073,3588,
- 35,993,32,227,1734,27,30,31,776,748,
- 26,28,1567,25,23,50,1600,570,76,77,
- 7073,7073,7073,7073,7073,7073,7073,7073,7073,7073,
- 7073,205,215,3011,7073,204,212,213,214,216,
- 585,3648,35,993,32,7073,1734,27,30,31,
- 776,748,26,28,1567,25,23,50,1600,86,
- 76,77,206,208,210,293,294,7073,633,7073,
- 497,207,209,3768,35,993,32,7073,1734,27,
- 30,31,776,748,26,28,1567,25,23,50,
- 1600,3881,76,77,1613,7073,7073,7073,2744,2022,
- 7073,7073,7073,2421,35,993,32,650,4572,27,
- 30,31,776,748,337,28,7073,227,7073,1670,
- 35,738,386,7073,7073,7073,2360,7073,7073,7073,
- 2744,1926,2360,7073,7073,7073,2744,1926,7073,7073,
- 71,7073,7073,7073,2744,2671,405,5553,401,3478,
- 536,533,534,535,7073,3478,536,533,534,535,
- 7073,49,7073,341,314,1116,319,1276,1331,47,
- 7073,7073,7073,1276,7073,7073,406,407,408,293,
- 294,7073,633,7073,2447,7073,7073,2432,3346,1926,
- 1682,7073,4154,7073,7073,330,1682,1926,7073,7073,
- 7073,330,2169,7073,7073,2668,7073,7073,536,533,
- 534,535,7073,7073,7073,7073,536,533,534,535,
- 7073,7073,7073,5634,358,1276,7073,7073,7073,2983,
- 358,7073,71,1276,7073,7073,2744,7073,4154,3776,
- 3006,3026,7073,1926,7073,3776,3006,3026,1682,4154,
- 7073,7073,7073,331,1926,341,1682,7073,7073,7073,
- 7073,330,536,533,534,535,7073,7073,409,411,
- 7073,350,722,536,533,534,535,7073,7073,1276,
- 3346,7073,7073,344,2846,2712,347,7073,7073,4448,
- 1276,7073,7073,7073,7073,2304,4154,2710,4136,7073,
- 4145,1926,1682,7073,7073,1926,71,330,2919,7073,
- 2744,7073,602,1682,7073,7073,7073,7073,330,7073,
- 536,533,534,535,536,533,534,535,7073,341,
- 71,341,2919,7073,2744,5824,602,1276,7073,7073,
- 7073,1276,7073,156,7073,7073,5634,7073,7073,7073,
- 7073,977,2265,341,3346,341,3346,7073,7073,2919,
- 1682,7073,2166,602,1682,330,7073,156,7073,5750,
- 7073,2720,7073,2996,2509,977,2265,7073,3346,1926,
- 3346,7073,341,7073,7073,7073,2166,1347,35,738,
- 386,7073,7073,2983,156,3744,7073,3069,536,533,
- 534,535,977,2265,7073,7073,7073,3346,1831,35,
- 738,386,7073,2166,7073,1276,7073,1670,35,738,
- 386,7073,7073,7073,3140,7073,7073,7073,7073,49,
- 1347,35,738,386,7073,7073,1331,47,1682,2977,
- 35,738,386,331,1347,35,738,386,3796,7073,
- 49,7073,602,96,7073,897,7073,1331,47,49,
- 1347,35,738,386,7073,7073,1331,2805,7073,7073,
- 7073,341,49,7073,7073,7073,1152,7073,7073,1331,
- 47,49,7073,156,7073,3572,49,7073,1331,2817,
- 7073,7073,188,1331,47,2518,4653,7073,1043,7073,
- 3215,7073,49,1347,35,738,386,1620,2052,1331,
- 47,7073,2575,1347,35,738,386,7073,7073,536,
- 533,534,535,7073,536,533,534,535,2637,7073,
- 7073,7073,536,533,534,535,1308,7073,7073,7073,
- 7073,1276,2646,7073,7073,49,7073,7073,7073,1308,
- 3377,7073,1331,47,7073,49,7073,7073,190,7073,
- 3215,7073,1331,47,2453,7073,536,533,534,535,
- 7073,2897,7073,7073,536,533,534,535,3616,7073,
- 7073,3269,7073,1308,536,533,534,535,71,7073,
- 4053,1276,602,71,2744,71,7073,2744,7073,2744,
- 7073,1276,536,533,534,535,71,7073,7073,7073,
- 2744,341,2104,341,2865,7073,341,7073,341,1663,
- 7073,528,7073,156,3466,2776,7073,7073,7073,341,
- 7073,7073,188,7073,7073,7073,4653,7073,3346,7073,
- 7073,3346,3571,3346,7073,7073,7073,7073,7073,7073,
- 7073,7073,7073,7073,3346,531,7073,7073,507,2888,
- 505,7073,7073,7073,7073,7073,7073,7073,7073,7073,
- 7073,532,7073,7073,7073,7073,7073,7073,7073,7073,
- 7073,7073,7073,7073,7073,7073,7073,7073,7073,7073,
- 7073,7073,7073,7073,7073,7073,7073,7073,3869,7073,
- 7073,7073,7073,7073,7073,7073,7073,7073,7073,7073,
- 7073,7073,7073,7073,7073,7073,7073,7073,7073,7073,
- 7073,7073,7073,7073,7073,7073,7073,7073,7073,7073,
- 7073,7073,7073,7073,7073,7073,7073,7073,7073,7073,
- 7073,7073,7073,7073,7073,7073,7073,7073,7073,7073,
- 7073,7073,7073,7073,7073,7073,7073,7073,7073,7073,
- 7073,7073,7073,7073,7073,7073,7073,7073,7073,7073,
- 7073,7073,7073,7073,7073,7073,7073,7073,7073,7073,
- 7073,7073,7073,7073,7073,7073,7073,7073,7073,7073,
- 7073,7073,7073,7073,7073,7073,7073,7073,7073,7073,
- 7073,7073,4104,7073,0,1,228,1359,0,499,
- 3245,0,1,228,0,39,7088,0,39,7087,
- 0,1,3630,0,909,1,0,39,1,7088,
- 0,39,1,7087,0,1,4182,0,1,785,
- 0,228,219,0,7306,223,0,7305,223,0,
- 671,223,0,682,223,0,709,223,0,7409,
- 223,0,7408,223,0,7333,223,0,7332,223,
- 0,7331,223,0,7330,223,0,7329,223,0,
- 7328,223,0,7327,223,0,7326,223,0,7306,
- 224,0,7305,224,0,671,224,0,682,224,
- 0,709,224,0,7409,224,0,7408,224,0,
- 7333,224,0,7332,224,0,7331,224,0,7330,
- 224,0,7329,224,0,7328,224,0,7327,224,
- 0,7326,224,0,709,392,0,682,392,0,
- 671,392,0,282,392,0,7306,225,0,7305,
- 225,0,671,225,0,682,225,0,709,225,
- 0,7409,225,0,7408,225,0,7333,225,0,
- 7332,225,0,7331,225,0,7330,225,0,7329,
- 225,0,7328,225,0,7327,225,0,7326,225,
- 0,282,285,0,7306,226,0,7305,226,0,
- 671,226,0,682,226,0,709,226,0,7409,
- 226,0,7408,226,0,7333,226,0,7332,226,
- 0,7331,226,0,7330,226,0,7329,226,0,
- 7328,226,0,7327,226,0,7326,226,0,1668,
- 385,0,7088,48,0,7087,48,0,7306,584,
- 0,7305,584,0,671,584,0,682,584,0,
- 709,584,0,7409,584,0,7408,584,0,7333,
- 584,0,7332,584,0,7331,584,0,7330,584,
- 0,7329,584,0,7328,584,0,7327,584,0,
- 7326,584,0,7306,601,0,7305,601,0,671,
- 601,0,682,601,0,709,601,0,7409,601,
- 0,7408,601,0,7333,601,0,7332,601,0,
- 7331,601,0,7330,601,0,7329,601,0,7328,
- 601,0,7327,601,0,7326,601,0,7306,240,
- 0,7305,240,0,671,240,0,682,240,0,
- 709,240,0,7409,240,0,7408,240,0,7333,
- 240,0,7332,240,0,7331,240,0,7330,240,
- 0,7329,240,0,7328,240,0,7327,240,0,
- 7326,240,0,39,7088,240,0,39,7087,240,
- 0,7111,240,0,7673,240,0,7672,240,0,
- 7344,240,0,7343,240,0,7342,240,0,7341,
- 240,0,7340,240,0,7339,240,0,7338,240,
- 0,7337,240,0,7336,240,0,7335,240,0,
- 7334,240,0,1,709,0,1,682,0,1,
- 671,0,1,329,0,38,785,0,38,7088,
- 0,38,7087,0,452,1820,0,438,1878,0,
- 1668,29,0,7085,1,0,709,594,0,682,
- 594,0,671,594,0,598,594,0,598,593,
- 0,7136,75,0,7135,75,0,772,75,0,
- 839,75,0,2351,75,0,1214,75,0,1912,
- 316,0,1,596,0,1,442,0,456,1697,
- 0,455,2033,0,35,33,0,47,37,0,
- 228,220,0,499,2170,0,7111,1,228,0,
- 39,1,228,0,228,414,0,1,2353,0,
- 1,7673,0,1,7672,0,1,7344,0,1,
- 7343,0,1,7342,0,1,7341,0,1,7340,
- 0,1,7339,0,1,7338,0,1,7337,0,
- 1,7336,0,1,7335,0,1,7334,0,1,
- 5246,0,7088,37,0,7087,37,0,43,7109,
- 0,43,37,0,7081,1,0,2866,91,0,
- 32,34,0,39,785,0,709,596,0,682,
- 596,0,671,596,0,7085,381,0,7084,381,
- 0,709,329,0,682,329,0,671,329,0,
- 1,1814,0,1,1861,0,7083,403,0,7082,
- 403,0,228,413,0,3813,126,0,1,228,
- 3240,0,7082,228,0,3251,228,0,709,443,
- 0,682,443,0,671,443,0,7111,443,0,
- 329,443,0,39,443,0,7079,1,0,7078,
- 1,0,7109,45,0,37,45,0,386,32,
- 0,385,29,0,236,817,0,3887,228,0,
- 10,12,0,1,92,0,7409,334,0,7408,
- 334,0,7111,1,0,39,1,0,3813,128,
- 0,3813,127,0,580,572,0,8,10,12,
- 0,4015,100,0,7088,36,0,7087,36,0,
- 709,591,0,682,591,0,671,591,0,709,
- 590,0,682,590,0,671,590,0,536,537,
- 0,7088,2,37,0,7087,2,37,0,4264,
- 103,0,2685,99,0,709,95,0,682,95,
- 0,671,95,0,7111,95,0,329,95,0,
- 39,95,0,35,73,0,709,591,592,0,
- 682,591,592,0,671,591,592,0,591,592,
- 0,3975,381,0,277,3774,0,185,4203,0,
- 8,12,0
+ 147,147,187,187,187,22,57,93,135,135,
+ 135,119,119,119,197,202,117,65,71,164,
+ 13,13,22,1545,35,3059,3058,1181,5989,27,
+ 30,31,1153,1061,26,28,3084,25,23,50,
+ 2055,106,76,77,108,2188,2827,587,533,534,
+ 535,2848,2842,3895,2866,2851,2937,2780,2888,2990,
+ 2962,3005,3026,143,1606,272,1960,35,292,158,
+ 144,3225,35,1202,32,341,4541,27,30,31,
+ 1153,1061,26,28,2054,25,23,50,2055,106,
+ 76,77,108,231,2827,1307,1960,35,292,2848,
+ 2842,772,2866,2851,2937,1316,2888,2990,2962,3005,
+ 3182,164,1960,2208,2168,34,234,229,230,587,
+ 533,534,535,3010,1542,4206,998,273,77,603,
+ 2780,2233,35,1202,32,4311,4780,27,30,31,
+ 1153,1061,337,28,3010,1318,292,341,341,1782,
+ 241,244,247,250,4071,536,533,534,535,156,
+ 325,2354,166,1025,3866,231,2403,2404,5431,188,
+ 582,1480,5004,3704,2100,1779,35,278,1930,3057,
+ 3526,675,963,3028,3958,4762,3384,1040,243,229,
+ 230,565,1910,317,1381,319,4372,312,842,2526,
+ 35,394,3426,1527,35,996,386,2336,2944,1266,
+ 4008,2736,35,1202,32,2780,4541,27,30,31,
+ 1153,1061,26,28,2054,25,23,50,2055,106,
+ 76,77,108,341,2827,190,1779,35,278,2848,
+ 2842,6136,2866,2851,2937,49,2888,2990,2962,3005,
+ 3026,143,1518,1409,221,258,1108,515,144,3431,
+ 1611,440,1487,454,305,308,1023,1960,35,6106,
+ 6078,1536,516,521,2736,35,1202,32,2780,4541,
+ 27,30,31,1153,1061,26,28,2054,25,23,
+ 50,2055,106,76,77,108,341,2827,1960,35,
+ 2168,275,2848,2842,172,2866,2851,2937,2072,2888,
+ 2990,2962,3005,3026,143,3497,3146,2646,3350,3367,
+ 515,144,3431,2844,35,1202,32,1791,1222,41,
+ 30,31,1153,1061,511,516,2421,35,1202,32,
+ 2750,4780,27,30,31,1153,1061,337,28,322,
+ 3221,1543,2826,541,2724,3042,2736,35,1202,32,
+ 2780,4541,27,30,31,1153,1061,26,28,2054,
+ 25,23,50,2055,106,76,77,108,341,2827,
+ 551,401,3900,1435,2848,2842,3385,2866,2851,2937,
+ 350,2888,2990,2962,3005,3026,143,511,314,1205,
+ 319,441,515,144,3431,256,2358,587,533,534,
+ 535,1960,35,2168,277,3231,1315,516,3042,3084,
+ 35,1202,32,2780,4541,27,30,31,1153,1061,
+ 26,28,2054,25,23,50,2055,106,76,77,
+ 108,341,2827,1273,2553,2918,563,2848,2842,286,
+ 2866,2851,2937,231,2888,2990,2962,3005,3026,143,
+ 78,2646,3350,182,4859,515,144,3431,537,533,
+ 534,535,3540,35,276,520,246,229,230,511,
+ 516,2259,2784,3351,3253,35,1202,32,1783,5999,
+ 27,30,31,1153,1061,57,28,3250,1960,3324,
+ 3042,3152,35,1202,32,884,4541,27,30,31,
+ 1153,1061,26,28,2054,25,23,50,2055,106,
+ 76,77,108,729,2827,2185,35,276,2918,2848,
+ 2842,70,2866,2851,2937,554,2888,2990,2962,3005,
+ 3026,143,512,708,2708,1879,162,377,144,2814,
+ 35,1202,32,3220,4541,27,30,31,1153,1061,
+ 26,28,2054,25,23,50,2055,106,76,77,
+ 108,2384,2827,2352,1779,35,451,2848,2842,6009,
+ 2866,2851,2937,539,2888,2990,2962,3005,3026,143,
+ 78,810,2708,286,1336,377,144,1958,991,66,
+ 3715,35,1202,32,4796,4541,27,30,31,1153,
+ 1061,26,28,2054,25,23,50,2055,106,76,
+ 77,108,2369,2827,2772,442,3241,3351,2848,2842,
+ 2988,2866,2851,2937,61,2888,2990,2962,3853,383,
+ 2585,310,66,2887,35,1202,32,4904,4541,27,
+ 30,31,1153,1061,26,28,2054,25,23,50,
+ 2055,106,76,77,108,3386,2827,1690,2277,35,
+ 451,2848,2842,6009,2866,2851,2937,1399,2888,2990,
+ 2962,3005,3026,143,1960,3888,2708,384,2585,377,
+ 144,537,533,534,535,320,2538,3016,35,1202,
+ 32,3334,4541,27,30,31,1153,1061,26,28,
+ 2054,25,23,50,2055,106,76,77,108,379,
+ 2827,3386,2526,35,394,2848,2842,1480,2866,2851,
+ 2937,537,2888,2990,2962,3005,3026,143,1274,2874,
+ 35,1202,32,549,144,1961,30,31,1153,1061,
+ 1476,495,444,3179,3181,3360,3355,35,1202,32,
+ 2008,4541,27,30,31,1153,1061,26,28,2054,
+ 25,23,50,2055,106,76,77,108,66,2827,
+ 706,375,2585,5811,2848,2842,2522,2866,2851,2937,
+ 2780,2888,2990,2962,3005,3026,143,1960,35,2168,
+ 280,2455,158,144,3355,35,1202,32,3480,4541,
+ 27,30,31,1153,1061,26,28,2054,25,23,
+ 50,2055,106,76,77,108,66,2827,1686,1884,
+ 2534,5979,2848,2842,2780,2866,2851,2937,3517,2888,
+ 2990,2962,3005,3026,143,3566,448,3179,3181,1336,
+ 371,144,341,66,3355,35,1202,32,4937,4541,
+ 27,30,31,1153,1061,26,28,2054,25,23,
+ 50,2055,106,76,77,108,2083,2827,3626,160,
+ 1958,547,2848,2842,359,2866,2851,2937,323,2888,
+ 2990,2962,3005,3026,143,2370,2874,35,1202,32,
+ 371,144,40,30,31,1153,1061,1960,3350,540,
+ 2724,3244,3057,2767,3355,35,1202,32,6013,4541,
+ 27,30,31,1153,1061,26,28,2054,25,23,
+ 50,2055,106,76,77,108,2743,2827,154,66,
+ 2263,370,2848,2842,5985,2866,2851,2937,2765,2888,
+ 2990,2962,3005,3026,143,3685,1960,35,996,386,
+ 371,144,2918,351,3016,35,1202,32,3142,4541,
+ 27,30,31,1153,1061,26,28,2054,25,23,
+ 50,2055,106,76,77,108,2079,2827,2185,35,
+ 279,369,2848,2842,1543,2866,2851,2937,272,2888,
+ 2990,2962,3005,3026,143,2657,2874,35,1202,32,
+ 549,144,3341,30,31,1153,1061,2948,35,1202,
+ 32,1860,4541,27,30,31,1153,1061,26,28,
+ 2054,25,23,50,2055,106,76,77,108,287,
+ 2827,3820,352,42,3051,2848,2842,3686,2866,2851,
+ 2937,367,2888,2990,2962,3005,3026,143,78,1476,
+ 274,1377,1336,142,144,3355,35,1202,32,3221,
+ 4541,27,30,31,1153,1061,26,28,2054,25,
+ 23,50,2055,106,76,77,108,1824,2827,428,
+ 3954,3256,3153,2848,2842,2780,2866,2851,2937,552,
+ 2888,2990,2962,3005,3026,143,1960,35,2168,3894,
+ 538,155,144,3480,3355,35,1202,32,520,4541,
+ 27,30,31,1153,1061,26,28,2054,25,23,
+ 50,2055,106,76,77,108,496,2827,2847,35,
+ 2168,275,2848,2842,2137,2866,2851,2937,548,2888,
+ 2990,2962,3005,3026,143,1960,3955,2168,74,3480,
+ 154,144,3355,35,1202,32,1739,4541,27,30,
+ 31,1153,1061,26,28,2054,25,23,50,2055,
+ 106,76,77,108,3014,2827,1960,35,281,358,
+ 2848,2842,78,2866,2851,2937,2780,2888,2990,2962,
+ 3005,3026,143,78,2788,3268,3275,3959,153,144,
+ 3355,35,1202,32,341,4541,27,30,31,1153,
+ 1061,26,28,2054,25,23,50,2055,106,76,
+ 77,108,2362,2827,2847,35,2168,3957,2848,2842,
+ 3431,2866,2851,2937,3963,2888,2990,2962,3005,3026,
+ 143,78,436,3117,553,791,152,144,3355,35,
+ 1202,32,2057,4541,27,30,31,1153,1061,26,
+ 28,2054,25,23,50,2055,106,76,77,108,
+ 3260,2827,3148,521,930,6022,2848,2842,78,2866,
+ 2851,2937,2780,2888,2990,2962,3005,3026,143,1960,
+ 35,2168,3968,3386,151,144,3355,35,1202,32,
+ 341,4541,27,30,31,1153,1061,26,28,2054,
+ 25,23,50,2055,106,76,77,108,3386,2827,
+ 2526,35,394,558,2848,2842,3431,2866,2851,2937,
+ 3625,2888,2990,2962,3005,3026,143,3686,3901,3118,
+ 1266,3247,150,144,3355,35,1202,32,581,4541,
+ 27,30,31,1153,1061,26,28,2054,25,23,
+ 50,2055,106,76,77,108,3452,2827,1960,35,
+ 3914,1266,2848,2842,78,2866,2851,2937,2780,2888,
+ 2990,2962,3005,3026,143,301,88,3386,3481,102,
+ 149,144,3355,35,1202,32,341,4541,27,30,
+ 31,1153,1061,26,28,2054,25,23,50,2055,
+ 106,76,77,108,78,2827,298,577,2171,296,
+ 2848,2842,3431,2866,2851,2937,458,2888,2990,2962,
+ 3005,3026,143,78,2445,3119,3977,854,148,144,
+ 3355,35,1202,32,1357,4541,27,30,31,1153,
+ 1061,26,28,2054,25,23,50,2055,106,76,
+ 77,108,78,2827,626,3865,936,1266,2848,2842,
+ 78,2866,2851,2937,2780,2888,2990,2962,3005,3026,
+ 143,2105,633,1611,3954,170,147,144,3355,35,
+ 1202,32,341,4541,27,30,31,1153,1061,26,
+ 28,2054,25,23,50,2055,106,76,77,108,
+ 2606,2827,559,62,4433,4028,2848,2842,3431,2866,
+ 2851,2937,3686,2888,2990,2962,3005,3026,143,78,
+ 2445,3141,3965,1671,146,144,3355,35,1202,32,
+ 1653,4541,27,30,31,1153,1061,26,28,2054,
+ 25,23,50,2055,106,76,77,108,3386,2827,
+ 2009,3686,388,2918,2848,2842,425,2866,2851,2937,
+ 321,2888,2990,2962,3005,3026,143,402,3505,529,
+ 1357,633,145,144,3715,35,1202,32,24,4541,
+ 27,30,31,1153,1061,26,28,2054,25,23,
+ 50,2055,106,76,77,108,962,2827,3010,35,
+ 292,457,2848,2842,3315,2866,2851,2937,1289,2888,
+ 2990,2962,3005,3182,164,3355,35,1202,32,2358,
+ 4541,27,30,31,1153,1061,26,28,2054,25,
+ 23,50,2055,106,76,77,108,1357,2827,2880,
+ 5636,1040,2727,2848,2842,718,2866,2851,2937,445,
+ 2888,2990,2962,3005,3026,143,354,89,3901,562,
+ 102,159,144,3897,1266,529,3355,35,1202,32,
+ 3883,4541,27,30,31,1153,1061,26,28,2054,
+ 25,23,50,2055,106,76,77,108,389,2827,
+ 1812,93,425,2993,2848,2842,78,2866,2851,2937,
+ 2780,2888,2990,2962,3005,3026,143,78,3503,179,
+ 1108,4069,576,144,3355,35,1202,32,341,4541,
+ 27,30,31,1153,1061,26,28,2054,25,23,
+ 50,2055,106,76,77,108,78,2827,556,387,
+ 4874,3197,2848,2842,3431,2866,2851,2937,445,2888,
+ 2990,2962,3005,3026,143,391,2445,3376,262,425,
+ 140,144,3415,35,1202,32,3386,4541,27,30,
+ 31,1153,1061,26,28,2054,25,23,50,2055,
+ 106,76,77,108,78,2827,3686,722,4967,2918,
+ 2848,2842,3880,2866,2851,2937,573,2888,2990,2962,
+ 3005,3026,143,78,3686,2079,1222,897,189,144,
+ 3715,35,1202,32,1357,4541,27,30,31,1153,
+ 1061,26,28,2054,25,23,50,2055,106,76,
+ 77,108,962,2827,1960,35,996,386,2848,2842,
+ 523,2866,2851,2937,256,2888,2990,2962,3005,3182,
+ 164,3715,35,1202,32,3386,4541,27,30,31,
+ 1153,1061,26,28,2054,25,23,50,2055,106,
+ 76,77,108,2269,2827,51,450,78,1586,2848,
+ 2842,2034,2866,2851,2937,571,2888,2990,2962,3005,
+ 3182,164,353,324,3386,3686,3901,537,533,534,
+ 535,529,3715,35,1202,32,421,4541,27,30,
+ 31,1153,1061,26,28,2054,25,23,50,2055,
+ 106,76,77,108,87,2827,1960,35,996,386,
+ 2848,2842,390,2866,2851,2937,425,2888,2990,2962,
+ 3005,3182,164,3715,35,1202,32,291,4541,27,
+ 30,31,1153,1061,26,28,2054,25,23,50,
+ 2055,106,76,77,108,2323,2827,2919,429,78,
+ 71,2848,2842,2170,2866,2851,2937,302,2888,2990,
+ 2962,3005,3182,164,97,2918,3386,1417,2767,537,
+ 533,534,535,6013,3715,35,1202,32,420,4541,
+ 27,30,31,1153,1061,26,28,2054,25,23,
+ 50,2055,106,76,77,108,5614,2827,1670,35,
+ 996,386,2848,2842,2741,2866,2851,2937,3233,2888,
+ 2990,2962,3005,3182,164,3835,35,1202,32,423,
+ 4541,27,30,31,1153,1061,26,28,2054,25,
+ 23,50,2055,106,76,77,108,78,2827,3510,
+ 272,1041,3386,2848,2842,3315,2866,2851,2937,1336,
+ 2888,2990,2962,3005,3182,164,1656,35,1202,32,
+ 4311,4993,27,30,31,1153,1061,337,28,4201,
+ 579,4201,69,1336,3466,603,1860,2054,3686,156,
+ 536,533,534,535,1960,35,996,386,78,3848,
+ 78,3901,2786,3396,2624,1726,3445,4809,3386,2780,
+ 6093,66,3915,156,814,156,6042,2918,2918,326,
+ 333,2698,1476,3326,200,2264,180,227,317,1381,
+ 319,2103,312,842,72,330,272,3426,68,909,
+ 1807,35,3549,32,4311,4993,27,30,31,1153,
+ 1061,337,28,195,427,3386,3386,2122,405,916,
+ 962,962,3386,2852,536,533,534,535,374,522,
+ 4020,35,996,386,3901,783,3901,98,3386,1476,
+ 3824,3254,295,236,3920,53,52,406,407,408,
+ 293,294,376,644,587,533,534,535,338,304,
+ 308,1023,317,1381,319,2103,312,842,3234,330,
+ 3984,2820,272,2749,78,3569,997,2230,2780,2800,
+ 35,1202,32,789,6148,27,30,31,1153,1061,
+ 26,28,3013,509,2075,78,341,2852,3116,2237,
+ 231,2742,1498,35,1202,32,3313,4993,27,30,
+ 31,1153,1061,337,28,283,1270,380,1266,4315,
+ 417,3534,3431,234,229,230,536,533,534,535,
+ 537,533,534,535,273,507,705,196,342,409,
+ 412,1266,3386,2565,2764,35,1202,32,372,6148,
+ 27,30,31,1153,1061,59,28,241,244,247,
+ 250,4071,3507,198,317,1381,319,2103,315,842,
+ 1025,331,568,2764,35,1202,32,582,6148,27,
+ 30,31,1153,1061,58,28,197,254,675,963,
+ 3028,3958,4762,3384,1266,1960,35,996,386,3383,
+ 35,1202,32,3251,5999,27,30,31,1153,1061,
+ 56,28,1930,3715,35,1202,32,4008,4541,27,
+ 30,31,1153,1061,26,28,2054,25,23,50,
+ 2055,106,76,77,108,3142,2827,432,162,297,
+ 430,2848,2842,3386,2866,2851,2937,3386,2888,2990,
+ 3787,3715,35,1202,32,434,4541,27,30,31,
+ 1153,1061,26,28,2054,25,23,50,2055,106,
+ 76,77,108,538,2827,419,2059,557,1682,2848,
+ 2842,78,2866,2851,2937,2414,2888,3784,2540,35,
+ 1202,32,446,4993,27,30,31,1153,1061,337,
+ 28,526,587,533,534,535,3443,1090,3914,2011,
+ 44,3051,536,533,534,535,1302,35,1202,32,
+ 2676,4780,27,30,31,1153,1061,337,28,5524,
+ 537,533,534,535,902,2142,35,1202,32,4311,
+ 4780,27,30,31,1153,1061,337,28,231,60,
+ 317,1381,319,2103,313,842,3386,331,3626,536,
+ 533,534,535,1960,35,996,386,1093,1185,1821,
+ 3566,249,229,230,1336,350,5004,78,314,1205,
+ 319,4549,537,533,534,535,348,344,1535,1456,
+ 347,2168,1960,35,996,386,78,317,1381,319,
+ 1516,312,842,3386,160,431,3426,3715,35,1202,
+ 32,378,4541,27,30,31,1153,1061,26,28,
+ 2054,25,23,50,2055,106,76,77,108,1182,
+ 2827,1086,2778,90,49,2848,2842,3386,2866,2851,
+ 2937,46,3785,3715,35,1202,32,2918,4541,27,
+ 30,31,1153,1061,26,28,2054,25,23,50,
+ 2055,106,76,77,108,622,2827,569,304,308,
+ 1023,2848,2842,2766,2866,2851,3764,2526,35,2567,
+ 4858,2350,78,78,78,884,931,1081,3535,78,
+ 962,3901,3404,6066,4126,2097,4169,66,374,2780,
+ 2364,4128,6073,2075,1885,35,3549,32,4311,4780,
+ 27,30,31,1153,1061,337,28,227,2348,49,
+ 537,533,534,535,543,2255,1518,847,3917,533,
+ 534,535,1370,35,3549,32,4311,4780,27,30,
+ 31,1153,1061,337,28,3354,400,205,215,3066,
+ 204,212,213,214,216,586,536,533,534,535,
+ 1960,35,996,386,1708,78,317,1381,319,1574,
+ 312,842,284,3354,1266,2820,1266,206,208,210,
+ 293,294,3687,644,3183,517,207,209,78,1684,
+ 3386,1266,1336,3632,317,1381,319,3386,312,842,
+ 2536,2551,430,2820,2726,35,3549,32,4311,4780,
+ 27,30,31,1153,1061,337,28,1266,3232,201,
+ 3468,199,156,4333,417,3534,3386,3952,3917,533,
+ 534,535,2386,3386,1918,277,404,78,78,603,
+ 78,3671,1336,3386,1336,3354,78,238,3347,3353,
+ 3085,4624,417,3534,1266,93,3537,227,587,533,
+ 534,535,3638,449,3349,1126,317,1381,319,156,
+ 312,842,156,4249,156,2820,1798,3451,962,2264,
+ 180,3044,3539,3564,3540,4800,169,203,215,3066,
+ 202,212,213,214,216,586,3386,3807,4112,222,
+ 536,533,534,535,231,3864,3870,168,3896,183,
+ 167,170,171,172,173,174,2741,2473,78,3927,
+ 2805,3486,3674,4333,417,3534,4310,239,229,230,
+ 1698,35,1202,32,4976,4780,27,30,31,1153,
+ 1061,337,28,3715,35,1202,32,3666,4541,27,
+ 30,31,1153,1061,26,28,2054,25,23,50,
+ 2055,106,76,77,108,3386,2827,3726,350,3566,
+ 3386,2848,2842,1336,2866,3765,1960,35,996,386,
+ 342,1535,1456,347,3904,3317,3466,78,340,3386,
+ 3386,1920,317,1381,319,4371,312,842,78,3744,
+ 3623,3471,2024,160,1347,35,1202,32,4311,4780,
+ 27,30,31,1153,1061,337,28,350,49,67,
+ 66,332,333,3566,3563,1518,1105,1336,3609,342,
+ 1535,1456,347,3715,35,1202,32,3470,4541,27,
+ 30,31,1153,1061,26,28,2054,25,23,50,
+ 2055,106,76,77,108,3466,2827,160,3683,1,
+ 3112,2848,2842,603,2866,3769,317,1381,319,3386,
+ 312,842,3383,78,78,1245,4203,3856,2120,78,
+ 4513,227,1921,2356,536,533,534,535,3803,2556,
+ 3548,333,1336,156,3566,2724,2955,3386,1336,65,
+ 3386,2565,962,2264,180,1610,536,533,534,535,
+ 169,203,215,3066,202,212,213,214,216,586,
+ 2416,2741,156,2856,3317,327,3650,64,160,364,
+ 55,168,162,184,167,170,171,172,173,174,
+ 181,2357,35,1202,32,5799,4780,27,30,31,
+ 1153,1061,337,28,1475,35,1202,32,4311,4780,
+ 27,30,31,1153,1061,337,28,3715,35,1202,
+ 32,349,4541,27,30,31,1153,1061,26,28,
+ 2054,25,23,50,2055,106,76,77,108,78,
+ 2827,3466,3386,1336,3466,2848,2842,3742,3655,2477,
+ 2602,3386,2983,317,1381,319,3296,312,842,3386,
+ 3627,3144,1245,3146,346,3080,317,1381,319,4131,
+ 312,842,54,156,1266,3967,328,333,350,3624,
+ 333,3774,3566,3619,802,618,1336,2953,3386,101,
+ 342,1535,1456,347,3715,35,1202,32,3106,4541,
+ 27,30,31,1153,1061,26,28,2054,25,23,
+ 50,2055,106,76,77,108,160,2827,2389,193,
+ 3386,3386,2848,2842,3906,3670,3715,35,1202,32,
+ 3821,4541,27,30,31,1153,1061,26,28,2054,
+ 25,23,50,2055,106,76,77,108,3931,2827,
+ 2728,4551,4171,710,2848,2842,3317,3750,3715,35,
+ 1202,32,185,4541,27,30,31,1153,1061,26,
+ 28,2054,25,23,50,2055,106,76,77,108,
+ 3932,2827,527,2701,2775,3759,2848,2842,3986,3752,
+ 3715,35,1202,32,3954,4541,27,30,31,1153,
+ 1061,26,28,2054,25,23,50,2055,106,76,
+ 77,108,78,2827,3955,890,1336,2633,2848,2842,
+ 2722,3756,3715,35,1202,32,3466,4541,27,30,
+ 31,1153,1061,26,28,2054,25,23,50,2055,
+ 106,76,77,108,369,2827,156,3959,603,3112,
+ 2848,2842,4156,3760,3324,3692,3647,986,1795,1613,
+ 3987,3629,333,2780,6093,3114,227,4130,4003,2081,
+ 1904,3902,4029,536,533,534,535,4155,156,7089,
+ 7089,227,587,533,534,535,7089,962,2264,180,
+ 2565,7089,7089,7089,7089,169,203,215,3066,202,
+ 212,213,214,216,586,461,3078,7089,2056,603,
+ 5793,2122,405,916,2710,7089,168,7089,3884,167,
+ 170,171,172,173,174,7089,7089,227,231,7089,
+ 7089,7089,587,533,534,535,349,7089,7089,156,
+ 7089,406,407,408,293,294,7089,644,962,2264,
+ 180,252,229,230,7089,7089,169,203,215,3066,
+ 202,212,213,214,216,586,553,2749,78,1431,
+ 603,2460,2780,2780,7089,7089,7089,168,231,178,
+ 167,170,171,172,173,174,7089,7089,227,7089,
+ 341,3480,7089,350,7089,536,533,534,535,7089,
+ 156,584,229,230,7089,342,1535,1456,347,962,
+ 2264,180,1024,3106,7089,7089,3431,169,203,215,
+ 3066,202,212,213,214,216,586,645,3316,505,
+ 7089,603,3112,409,411,7089,7089,7089,168,7089,
+ 176,167,170,171,172,173,174,7089,7089,227,
+ 2707,7089,536,533,534,535,536,533,534,535,
+ 2258,156,7089,2715,78,7089,7089,503,1336,2565,
+ 962,2264,180,2565,536,533,534,535,169,203,
+ 215,3066,202,212,213,214,216,586,737,2447,
+ 7089,3056,603,3215,5495,7089,7089,3387,156,168,
+ 7089,578,167,170,171,172,173,174,2495,7089,
+ 227,500,502,536,533,534,535,78,7089,7089,
+ 7089,1336,156,7089,7089,7089,7089,7089,7089,7089,
+ 2565,962,2264,180,7089,1358,7089,7089,7089,169,
+ 203,215,3066,202,212,213,214,216,586,829,
+ 3314,156,1431,603,2103,1432,2780,7089,331,7089,
+ 168,3751,177,167,170,171,172,173,174,7089,
+ 7089,227,7089,3227,3480,7089,350,7089,7089,536,
+ 533,534,535,156,7089,7089,7089,7089,344,1535,
+ 1456,347,962,2264,180,7089,1247,7089,7089,7089,
+ 169,203,215,3066,202,212,213,214,216,586,
+ 921,1766,7089,7089,603,3623,5495,7089,7089,7089,
+ 7089,168,7089,187,167,170,171,172,173,174,
+ 7089,7089,227,3684,7089,536,533,534,535,536,
+ 533,534,535,7089,156,7089,7089,7089,7089,7089,
+ 503,7089,2565,962,2264,180,3108,536,533,534,
+ 535,169,203,215,3066,202,212,213,214,216,
+ 586,1013,1766,7089,3246,603,2103,5495,7089,7089,
+ 330,7089,168,7089,3970,167,170,171,172,173,
+ 174,7089,7089,227,501,502,536,533,534,535,
+ 7089,7089,7089,7089,7089,156,7089,7089,4632,7089,
+ 7089,7089,7089,2565,962,2264,180,7089,7089,1406,
+ 7089,7089,169,203,215,3066,202,212,213,214,
+ 216,586,1105,1766,7089,7089,603,2103,5495,7089,
+ 7089,330,7089,168,7089,192,167,170,171,172,
+ 173,174,703,7089,227,7089,7089,536,533,534,
+ 535,7089,7089,7089,7089,7089,156,7089,7089,5929,
+ 7089,7089,7089,7089,2565,962,2264,180,1968,7089,
+ 7089,7089,2780,169,203,215,3066,202,212,213,
+ 214,216,586,7089,7089,7089,7089,7089,2103,7089,
+ 227,7089,5805,7089,168,7089,186,167,170,171,
+ 172,173,174,2977,35,1202,32,4976,4780,27,
+ 30,31,1153,1061,337,28,7089,7089,7089,7089,
+ 205,215,3066,204,212,213,214,216,586,7089,
+ 7089,2169,35,996,386,7089,7089,7089,7089,3256,
+ 7089,1197,7089,2780,7089,603,7089,7089,7089,7089,
+ 206,208,210,293,294,7089,644,7089,217,207,
+ 209,3480,7089,227,7089,317,1381,319,7089,312,
+ 842,7089,7089,49,524,156,94,13,7089,5173,
+ 1518,1566,7089,7089,962,2264,180,7089,7089,7089,
+ 350,7089,169,203,215,3066,202,212,213,214,
+ 216,586,342,1535,1456,347,7089,7089,7089,7089,
+ 525,7089,7089,168,3743,194,167,170,171,172,
+ 173,174,1498,35,1202,32,7089,4993,27,30,
+ 31,1153,1061,337,28,7089,7089,358,536,533,
+ 534,535,7089,7089,7089,7089,536,533,534,535,
+ 7089,7089,3520,3268,3275,3108,607,7089,7089,3715,
+ 35,1202,32,5524,4541,27,30,31,1153,1061,
+ 26,28,2054,25,23,50,2055,106,76,77,
+ 108,7089,3639,7089,317,1381,319,2103,313,842,
+ 7089,331,3715,35,1202,32,7089,4541,27,30,
+ 31,1153,1061,26,28,2054,25,23,50,2055,
+ 106,76,77,108,7089,2827,7089,7089,7089,7089,
+ 2848,3761,3715,35,1202,32,7089,4541,27,30,
+ 31,1153,1061,26,28,2054,25,23,50,2055,
+ 106,76,77,108,7089,2827,7089,7089,7089,7089,
+ 2848,3763,4072,35,996,386,2915,783,7089,7089,
+ 7089,7089,7089,7089,7089,237,7089,7089,7089,7089,
+ 1527,35,996,386,7089,7089,587,533,534,535,
+ 536,533,534,535,7089,7089,2024,35,996,386,
+ 1766,7089,7089,7089,272,5495,7089,2565,7089,2065,
+ 35,1202,32,4311,4780,27,30,31,1153,1061,
+ 337,28,49,7089,536,533,534,535,7089,1518,
+ 1257,3215,231,537,533,534,535,7089,49,1476,
+ 78,2565,7089,7089,2780,1518,47,7089,2704,7089,
+ 7089,7089,7089,7089,7089,235,229,230,1959,2190,
+ 7089,7089,341,2780,646,2103,273,7089,7089,330,
+ 7089,317,1381,319,2283,312,842,7089,2780,7089,
+ 4150,227,536,533,534,535,7089,7089,3431,242,
+ 245,248,251,4071,7089,7089,227,4189,7089,2856,
+ 7089,532,1025,7089,2154,35,996,386,7089,583,
+ 7089,205,215,3066,204,212,213,214,216,586,
+ 7089,7089,7089,7089,7089,7089,205,215,3066,204,
+ 212,213,214,216,586,7089,7089,1960,35,996,
+ 386,206,208,210,293,294,49,644,7089,217,
+ 207,209,7089,1518,47,7089,206,208,210,293,
+ 294,7089,644,7089,217,207,209,2376,1928,7089,
+ 5173,2780,1319,7089,7089,2569,1766,7089,7089,49,
+ 7089,5495,7089,2496,7089,5173,1518,1335,7089,227,
+ 7089,7089,7089,1527,35,996,386,7089,7089,7089,
+ 536,533,534,535,2233,35,1202,32,4311,4780,
+ 27,30,31,1153,1061,337,28,2565,7089,205,
+ 215,3066,204,212,213,214,216,586,537,533,
+ 534,535,7089,7089,7089,49,7089,7089,7089,7089,
+ 7089,2103,1518,4766,7089,330,7089,7089,7089,206,
+ 208,210,293,294,7089,644,7089,217,207,209,
+ 7089,2704,7089,7089,7089,7089,317,1381,319,7089,
+ 312,842,7089,3038,7089,4150,2711,7089,5173,3715,
+ 35,1202,32,7089,4541,27,30,31,1153,1061,
+ 26,28,2054,25,23,50,2055,106,76,77,
+ 108,7089,2827,3715,35,1202,32,3574,4541,27,
+ 30,31,1153,1061,26,28,2054,25,23,50,
+ 2055,106,76,77,108,7089,2827,3715,35,1202,
+ 32,3608,4541,27,30,31,1153,1061,26,28,
+ 2054,25,23,50,2055,106,76,77,108,7089,
+ 3645,3715,35,1202,32,7089,4541,27,30,31,
+ 1153,1061,26,28,2054,25,23,50,2055,106,
+ 76,77,108,1839,3646,7089,7089,2780,7089,7089,
+ 7089,7089,7089,7089,7089,7089,7089,7089,7089,7089,
+ 7089,3715,35,1202,32,227,4541,27,30,31,
+ 1153,1061,26,28,2054,25,23,50,2055,106,
+ 76,77,85,7089,7089,7089,7089,7089,7089,7089,
+ 7089,7089,7089,7089,7089,205,215,3066,204,212,
+ 213,214,216,586,3475,35,1202,32,7089,4541,
+ 27,30,31,1153,1061,26,28,2054,25,23,
+ 50,2055,580,76,77,206,208,210,293,294,
+ 7089,644,7089,218,207,209,3715,35,1202,32,
+ 7089,4541,27,30,31,1153,1061,26,28,2054,
+ 25,23,50,2055,106,76,77,83,3715,35,
+ 1202,32,7089,4541,27,30,31,1153,1061,26,
+ 28,2054,25,23,50,2055,106,76,77,82,
+ 3715,35,1202,32,7089,4541,27,30,31,1153,
+ 1061,26,28,2054,25,23,50,2055,106,76,
+ 77,81,3715,35,1202,32,7089,4541,27,30,
+ 31,1153,1061,26,28,2054,25,23,50,2055,
+ 106,76,77,80,3715,35,1202,32,7089,4541,
+ 27,30,31,1153,1061,26,28,2054,25,23,
+ 50,2055,106,76,77,79,3715,35,1202,32,
+ 7089,4541,27,30,31,1153,1061,26,28,2054,
+ 25,23,50,2055,106,76,77,78,3715,2208,
+ 1202,2587,7089,4541,27,30,31,1153,1061,26,
+ 28,2054,25,23,50,2055,106,76,77,84,
+ 2469,7089,7089,7089,2780,7089,7089,7089,7089,7089,
+ 7089,2562,7089,7089,7089,2780,7089,7089,7089,7089,
+ 7089,7089,227,7089,7089,7089,7089,7089,7089,3285,
+ 35,1202,32,227,4541,27,30,31,1153,1061,
+ 26,28,2054,25,23,50,2055,106,76,77,
+ 104,7089,205,215,3066,204,212,213,214,216,
+ 586,7089,7089,205,215,3066,204,212,213,214,
+ 216,586,7089,7089,7089,1960,35,996,386,7089,
+ 7089,7089,206,208,210,293,294,7089,644,7089,
+ 518,207,209,206,208,210,293,294,7089,644,
+ 7089,303,207,209,2333,35,1202,32,7089,4780,
+ 27,30,31,1153,1061,337,28,49,7089,7089,
+ 7089,7089,7089,7089,1518,4128,7089,7089,537,533,
+ 534,535,3715,35,1202,32,7089,4541,27,30,
+ 31,1153,1061,26,28,2054,25,23,50,2055,
+ 106,76,77,110,7089,7089,7089,7089,7089,7089,
+ 7089,7089,7089,7089,7089,7089,317,1381,319,7089,
+ 598,842,3715,35,1202,32,7089,4541,27,30,
+ 31,1153,1061,26,28,2054,25,23,50,2055,
+ 106,76,77,109,3715,35,1202,32,7089,4541,
+ 27,30,31,1153,1061,26,28,2054,25,23,
+ 50,2055,106,76,77,107,3715,35,1202,32,
+ 7089,4541,27,30,31,1153,1061,26,28,2054,
+ 25,23,50,2055,106,76,77,105,2655,7089,
+ 7089,7089,2780,7089,7089,7089,7089,7089,7089,7089,
+ 7089,7089,7089,7089,7089,7089,3535,35,1202,32,
+ 227,4541,27,30,31,1153,1061,26,28,2054,
+ 25,23,50,2055,572,76,77,7089,7089,7089,
+ 7089,7089,7089,7089,7089,7089,7089,7089,7089,7089,
+ 205,215,3066,204,212,213,214,216,586,3595,
+ 35,1202,32,7089,4541,27,30,31,1153,1061,
+ 26,28,2054,25,23,50,2055,570,76,77,
+ 206,208,210,293,294,7089,644,7089,497,207,
+ 209,3655,35,1202,32,7089,4541,27,30,31,
+ 1153,1061,26,28,2054,25,23,50,2055,86,
+ 76,77,3775,35,1202,32,7089,4541,27,30,
+ 31,1153,1061,26,28,2054,25,23,50,2055,
+ 3448,76,77,2261,7089,7089,7089,2780,5495,2261,
+ 7089,7089,7089,2780,5495,2698,7089,7089,7089,7089,
+ 5495,2154,35,996,386,3480,7089,536,533,534,
+ 535,3480,7089,536,533,534,535,7089,7089,536,
+ 533,534,535,4127,2565,7089,7089,603,7089,7089,
+ 2565,7089,7089,7089,4127,7089,2565,7089,603,7089,
+ 7089,7089,7089,49,7089,341,7089,7089,2103,7089,
+ 1518,47,330,7089,2103,7089,341,156,330,7089,
+ 2103,7089,7089,7089,5805,7089,962,2148,156,1568,
+ 7089,3431,4127,7089,1977,7089,603,962,2148,4205,
+ 4189,358,3431,2780,1908,1977,3038,358,4127,7089,
+ 7089,7089,603,7089,341,2366,3340,3268,3275,7089,
+ 7089,341,3340,3268,3275,7089,156,4127,7089,528,
+ 341,603,7089,4127,7089,962,2148,603,7089,2513,
+ 3431,7089,156,1977,5495,7089,7089,3431,7089,341,
+ 7089,962,2148,2455,7089,341,3431,7089,7089,1977,
+ 531,156,7089,536,533,534,535,156,96,2494,
+ 962,2148,7089,7089,7089,3431,962,2148,1977,7089,
+ 2565,3431,7089,7089,1977,7089,7089,7089,2586,1527,
+ 35,996,386,7089,3347,2619,35,996,386,3048,
+ 35,996,386,7089,2103,7089,7089,7089,331,2154,
+ 35,996,386,7089,7089,7089,7089,7089,7089,1527,
+ 35,996,386,1527,35,996,386,7089,7089,7089,
+ 7089,49,1527,35,996,386,7089,49,1518,47,
+ 7089,49,7089,7089,1518,47,7089,7089,1518,2659,
+ 7089,49,1527,35,996,386,7089,1766,1518,2716,
+ 7089,49,7089,676,7089,49,7089,1536,1518,47,
+ 7089,7089,1518,47,49,78,1822,2618,7089,603,
+ 2780,1518,47,1527,35,996,386,2434,1921,7089,
+ 7089,2526,7089,7089,49,7089,7089,341,3480,7089,
+ 2945,1518,47,1960,35,996,386,7089,7089,156,
+ 7089,3852,536,533,534,535,2644,7089,7089,2718,
+ 3113,7089,78,3431,7089,49,603,7089,7089,2856,
+ 7089,7089,1518,47,7089,7089,2662,7089,7089,7089,
+ 536,533,534,535,341,49,1960,35,996,386,
+ 78,3310,1518,2405,603,7089,156,2856,1960,35,
+ 996,386,7089,7089,7089,78,188,7089,7089,603,
+ 3704,7089,341,7089,503,7089,7089,7089,7089,7089,
+ 7089,7089,7089,7089,156,7089,7089,341,49,7089,
+ 7089,7089,7089,7089,188,1518,1052,7089,3704,156,
+ 49,7089,7089,7089,7089,2845,7089,1518,1566,188,
+ 7089,7089,7089,3704,7089,7089,7089,7089,500,502,
+ 7089,7089,7089,7089,7089,7089,7089,7089,7089,7089,
+ 7089,7089,3393,3031,7089,7089,7089,7089,7089,7089,
+ 7089,7089,7089,7089,7089,7089,7089,7089,7089,7089,
+ 7089,7089,7089,7089,7089,7089,7089,3965,7089,7089,
+ 3446,7089,7089,7089,7089,7089,7089,7089,7089,7089,
+ 7089,7089,7089,7089,7089,3515,7089,0,1,228,
+ 907,0,499,3245,0,1,228,0,39,7104,
+ 0,39,7103,0,1,3554,0,903,1,0,
+ 39,1,7104,0,39,1,7103,0,1,633,
+ 0,1,692,0,228,219,0,7322,223,0,
+ 7321,223,0,742,223,0,835,223,0,970,
+ 223,0,7425,223,0,7424,223,0,7349,223,
+ 0,7348,223,0,7347,223,0,7346,223,0,
+ 7345,223,0,7344,223,0,7343,223,0,7342,
+ 223,0,7322,224,0,7321,224,0,742,224,
+ 0,835,224,0,970,224,0,7425,224,0,
+ 7424,224,0,7349,224,0,7348,224,0,7347,
+ 224,0,7346,224,0,7345,224,0,7344,224,
+ 0,7343,224,0,7342,224,0,970,392,0,
+ 835,392,0,742,392,0,282,392,0,7322,
+ 225,0,7321,225,0,742,225,0,835,225,
+ 0,970,225,0,7425,225,0,7424,225,0,
+ 7349,225,0,7348,225,0,7347,225,0,7346,
+ 225,0,7345,225,0,7344,225,0,7343,225,
+ 0,7342,225,0,282,285,0,7322,226,0,
+ 7321,226,0,742,226,0,835,226,0,970,
+ 226,0,7425,226,0,7424,226,0,7349,226,
+ 0,7348,226,0,7347,226,0,7346,226,0,
+ 7345,226,0,7344,226,0,7343,226,0,7342,
+ 226,0,1831,385,0,7104,48,0,7103,48,
+ 0,7322,585,0,7321,585,0,742,585,0,
+ 835,585,0,970,585,0,7425,585,0,7424,
+ 585,0,7349,585,0,7348,585,0,7347,585,
+ 0,7346,585,0,7345,585,0,7344,585,0,
+ 7343,585,0,7342,585,0,7322,602,0,7321,
+ 602,0,742,602,0,835,602,0,970,602,
+ 0,7425,602,0,7424,602,0,7349,602,0,
+ 7348,602,0,7347,602,0,7346,602,0,7345,
+ 602,0,7344,602,0,7343,602,0,7342,602,
+ 0,7322,240,0,7321,240,0,742,240,0,
+ 835,240,0,970,240,0,7425,240,0,7424,
+ 240,0,7349,240,0,7348,240,0,7347,240,
+ 0,7346,240,0,7345,240,0,7344,240,0,
+ 7343,240,0,7342,240,0,39,7104,240,0,
+ 39,7103,240,0,7127,240,0,7690,240,0,
+ 7689,240,0,7360,240,0,7359,240,0,7358,
+ 240,0,7357,240,0,7356,240,0,7355,240,
+ 0,7354,240,0,7353,240,0,7352,240,0,
+ 7351,240,0,7350,240,0,1,970,0,1,
+ 835,0,1,742,0,1,329,0,38,692,
+ 0,38,7104,0,38,7103,0,452,2023,0,
+ 438,2052,0,1831,29,0,7101,1,0,970,
+ 595,0,835,595,0,742,595,0,599,595,
+ 0,599,594,0,7152,75,0,7151,75,0,
+ 1064,75,0,2949,75,0,3120,75,0,3338,
+ 75,0,2119,316,0,1,597,0,1,442,
+ 0,456,1927,0,455,2112,0,35,33,0,
+ 47,37,0,228,220,0,499,2825,0,7127,
+ 1,228,0,39,1,228,0,228,414,0,
+ 1,1433,0,1,7690,0,1,7689,0,1,
+ 7360,0,1,7359,0,1,7358,0,1,7357,
+ 0,1,7356,0,1,7355,0,1,7354,0,
+ 1,7353,0,1,7352,0,1,7351,0,1,
+ 7350,0,1,5676,0,7104,37,0,7103,37,
+ 0,43,7125,0,43,37,0,7097,1,0,
+ 1638,91,0,32,34,0,39,692,0,970,
+ 597,0,835,597,0,742,597,0,7101,381,
+ 0,7100,381,0,970,329,0,835,329,0,
+ 742,329,0,1,779,0,1,1302,0,7099,
+ 403,0,7098,403,0,228,413,0,3890,126,
+ 0,1,228,3399,0,7098,228,0,3405,228,
+ 0,7095,1,0,7094,1,0,386,32,0,
+ 385,29,0,236,1425,0,970,443,0,835,
+ 443,0,742,443,0,7127,443,0,329,443,
+ 0,39,443,0,7125,45,0,37,45,0,
+ 3862,228,0,10,12,0,7127,1,0,39,
+ 1,0,580,572,0,1,92,0,7425,334,
+ 0,7424,334,0,3890,128,0,3890,127,0,
+ 8,10,12,0,7104,2,37,0,7103,2,
+ 37,0,7104,36,0,7103,36,0,4164,100,
+ 0,970,592,0,835,592,0,742,592,0,
+ 970,591,0,835,591,0,742,591,0,536,
+ 537,0,581,573,0,3782,103,0,2635,99,
+ 0,970,95,0,835,95,0,742,95,0,
+ 7127,95,0,329,95,0,39,95,0,35,
+ 73,0,970,592,593,0,835,592,593,0,
+ 742,592,593,0,592,593,0,277,3573,0,
+ 3971,381,0,185,4432,0,8,12,0
};
};
public final static char baseAction[] = BaseAction.baseAction;
@@ -1395,8 +1397,8 @@ public class GPPParserprs implements lpg.lpgjavaruntime.ParseTable, GPPParsersym
30,31,32,33,34,35,36,37,38,39,
40,41,42,43,44,45,46,47,48,49,
50,51,52,53,54,55,56,57,58,59,
- 60,0,62,63,64,0,66,67,68,69,
- 0,10,72,12,74,75,0,12,78,3,
+ 60,0,62,63,64,0,66,67,68,4,
+ 70,10,72,12,74,75,0,0,78,3,
80,81,82,83,84,85,86,87,88,89,
90,91,0,1,2,3,4,5,6,7,
8,9,10,11,12,13,14,15,16,17,
@@ -1405,35 +1407,35 @@ public class GPPParserprs implements lpg.lpgjavaruntime.ParseTable, GPPParsersym
38,39,40,41,42,43,44,45,46,47,
48,49,50,51,52,53,54,55,56,57,
58,59,60,0,62,63,64,4,66,67,
- 68,69,0,0,72,3,74,75,0,0,
- 78,3,80,81,82,83,84,85,86,87,
+ 68,0,70,0,72,0,74,75,3,0,
+ 78,0,80,81,82,83,84,85,86,87,
88,89,90,91,0,1,2,3,4,5,
6,7,8,9,10,11,12,13,14,15,
16,17,18,19,20,21,22,23,24,25,
26,27,28,29,30,31,32,33,34,35,
36,37,38,39,40,41,42,43,44,45,
46,47,48,49,50,51,52,53,54,55,
- 56,57,58,59,60,0,62,63,64,4,
- 66,67,68,69,0,0,72,3,74,75,
- 0,0,78,0,80,81,82,83,84,85,
+ 56,57,58,59,60,76,62,63,64,78,
+ 66,67,68,0,70,0,72,0,74,75,
+ 3,0,78,8,80,81,82,83,84,85,
86,87,88,89,90,91,0,1,2,3,
4,5,6,7,8,9,10,11,12,13,
14,15,16,17,18,19,20,21,22,23,
24,25,26,27,28,29,30,31,32,33,
34,35,36,37,38,39,40,41,42,43,
44,45,46,47,48,49,50,51,52,53,
- 54,55,56,57,58,59,60,77,62,63,
- 64,78,66,67,68,69,0,0,72,0,
- 74,75,3,0,78,8,10,81,82,83,
+ 54,55,56,57,58,59,60,76,62,63,
+ 64,0,66,67,68,0,70,0,72,0,
+ 74,75,3,12,78,102,103,81,82,83,
84,85,86,87,88,89,90,91,0,1,
2,3,4,5,6,7,8,9,10,11,
12,13,14,15,16,17,18,19,20,21,
22,23,24,25,26,27,28,29,30,31,
32,33,34,35,36,37,38,39,40,41,
42,43,44,45,46,47,48,49,50,51,
- 52,53,54,55,56,57,58,59,60,76,
- 62,63,64,0,66,67,68,69,0,0,
- 72,0,74,75,98,99,78,0,10,81,
+ 52,53,54,55,56,57,58,59,60,0,
+ 62,63,64,0,66,67,68,0,70,0,
+ 72,0,74,75,3,0,78,102,103,81,
82,83,84,85,86,87,88,89,90,91,
0,1,2,3,4,5,6,7,8,9,
10,11,12,13,14,15,16,17,18,19,
@@ -1441,45 +1443,45 @@ public class GPPParserprs implements lpg.lpgjavaruntime.ParseTable, GPPParsersym
30,31,32,33,34,35,36,37,38,39,
40,41,42,43,44,45,46,47,48,49,
50,51,52,53,54,55,56,57,58,59,
- 60,0,62,63,64,0,66,67,68,69,
- 0,0,72,0,74,75,98,99,78,106,
- 10,81,82,83,84,85,86,87,88,89,
+ 60,76,62,63,64,0,66,67,68,4,
+ 70,0,72,104,74,75,0,0,78,106,
+ 3,81,82,83,84,85,86,87,88,89,
90,91,0,1,2,3,4,5,6,7,
8,9,10,11,12,13,14,15,16,17,
18,19,20,21,22,23,24,25,26,27,
28,29,30,31,32,33,34,35,36,37,
38,39,40,41,42,43,44,45,46,47,
48,49,50,51,52,53,54,55,56,57,
- 58,59,60,0,62,63,64,4,66,67,
- 68,69,0,1,72,104,74,75,98,99,
- 78,106,10,81,82,83,84,85,86,87,
+ 58,59,60,77,62,63,64,0,66,67,
+ 68,0,70,0,72,0,74,75,3,12,
+ 78,10,0,81,82,83,84,85,86,87,
88,89,90,91,0,1,2,3,4,5,
6,7,8,9,10,11,12,13,14,15,
16,17,18,19,20,21,22,23,24,25,
26,27,28,29,30,31,32,33,34,35,
36,37,38,39,40,41,42,43,44,45,
46,47,48,49,50,51,52,53,54,55,
- 56,57,58,59,60,0,62,63,64,0,
- 66,67,68,69,0,10,72,3,74,75,
- 0,12,78,3,0,81,82,83,84,85,
+ 56,57,58,59,60,73,62,63,64,0,
+ 66,67,68,0,70,0,72,0,74,75,
+ 3,0,78,0,3,81,82,83,84,85,
86,87,88,89,90,91,0,1,2,3,
4,5,6,7,8,9,10,11,12,13,
14,15,16,17,18,19,20,21,22,23,
24,25,26,27,28,29,30,31,32,33,
34,35,36,37,38,39,40,41,42,43,
44,45,46,47,48,49,50,51,52,53,
- 54,55,56,57,58,59,60,73,62,63,
- 64,0,66,67,68,69,0,0,72,3,
- 74,75,0,0,78,3,0,81,82,83,
+ 54,55,56,57,58,59,60,0,62,63,
+ 64,0,66,67,68,0,70,0,72,0,
+ 74,75,3,0,78,106,3,81,82,83,
84,85,86,87,88,89,90,91,0,1,
2,3,4,5,6,7,8,9,10,11,
12,13,14,15,16,17,18,19,20,21,
22,23,24,25,26,27,28,29,30,31,
32,33,34,35,36,37,38,39,40,41,
42,43,44,45,46,47,48,49,50,51,
- 52,53,54,55,56,57,58,59,60,76,
- 62,63,64,77,66,67,68,69,0,0,
- 72,3,74,75,0,104,78,3,0,81,
+ 52,53,54,55,56,57,58,59,60,0,
+ 62,63,64,4,66,67,68,0,70,0,
+ 72,0,74,75,3,104,78,0,0,81,
82,83,84,85,86,87,88,89,90,91,
0,1,2,3,4,5,6,7,8,9,
10,11,12,13,14,15,16,17,18,19,
@@ -1487,17 +1489,17 @@ public class GPPParserprs implements lpg.lpgjavaruntime.ParseTable, GPPParsersym
30,31,32,33,34,35,36,37,38,39,
40,41,42,43,44,45,46,47,48,49,
50,51,52,53,54,55,56,57,58,59,
- 60,73,62,63,64,0,66,67,68,69,
- 0,0,72,3,74,75,0,0,78,3,
- 0,81,82,83,84,85,86,87,88,89,
+ 60,73,62,63,64,0,66,67,68,4,
+ 70,0,72,0,74,75,0,0,78,0,
+ 3,81,82,83,84,85,86,87,88,89,
90,91,0,1,2,3,4,5,6,7,
8,9,10,11,12,13,14,15,16,17,
18,19,20,21,22,23,24,25,26,27,
28,29,30,31,32,33,34,35,36,37,
38,39,40,41,42,43,44,45,46,47,
48,49,50,51,52,53,54,55,56,57,
- 58,59,60,76,62,63,64,77,66,67,
- 68,69,0,0,72,0,74,75,3,0,
+ 58,59,60,77,62,63,64,0,66,67,
+ 68,0,70,0,72,0,74,75,3,0,
78,0,0,81,82,83,84,85,86,87,
88,89,90,91,0,1,2,3,4,5,
6,7,8,9,10,11,12,13,14,15,
@@ -1506,7 +1508,7 @@ public class GPPParserprs implements lpg.lpgjavaruntime.ParseTable, GPPParsersym
36,37,38,39,40,41,42,43,44,45,
46,47,48,49,50,51,52,53,54,55,
56,57,58,59,60,76,62,63,64,77,
- 66,67,68,69,0,1,72,95,74,75,
+ 66,67,68,0,70,0,72,0,74,75,
0,0,78,0,0,81,82,83,84,85,
86,87,88,89,90,91,0,1,2,3,
4,5,6,7,8,9,10,11,12,13,
@@ -1514,311 +1516,315 @@ public class GPPParserprs implements lpg.lpgjavaruntime.ParseTable, GPPParsersym
24,25,26,27,28,29,30,31,32,33,
34,35,36,37,38,39,40,41,42,43,
44,45,46,47,48,49,50,51,52,53,
- 54,55,56,57,58,59,60,77,62,63,
- 64,77,66,67,68,69,0,0,72,0,
- 74,75,0,0,78,0,95,81,82,83,
+ 54,55,56,57,58,59,60,76,62,63,
+ 64,77,66,67,68,0,70,0,72,0,
+ 74,75,0,0,78,3,11,81,82,83,
84,85,86,87,88,89,90,91,0,1,
2,3,4,5,6,7,8,9,10,11,
- 12,0,1,2,3,4,0,40,41,8,
- 9,5,6,7,42,0,28,29,30,31,
+ 12,0,1,2,3,4,0,42,128,8,
+ 9,5,6,7,0,0,28,29,30,31,
32,33,34,35,36,37,38,39,40,41,
- 61,43,44,45,28,29,30,31,32,33,
- 34,35,36,37,38,39,0,1,2,76,
- 0,1,2,65,4,5,6,7,70,71,
- 72,73,96,97,76,77,78,79,80,0,
- 1,2,3,4,5,6,7,8,9,0,
- 105,93,94,95,96,97,98,99,100,101,
+ 42,0,44,45,28,29,30,31,32,33,
+ 34,35,36,37,38,39,0,1,2,3,
+ 4,79,79,65,8,9,0,69,43,71,
+ 72,73,93,94,76,77,78,79,80,0,
+ 1,2,3,4,5,6,7,8,9,65,
+ 0,93,94,95,96,97,98,99,100,101,
102,103,104,105,106,107,108,109,0,1,
2,113,114,115,116,117,118,119,120,121,
122,123,124,125,0,127,0,1,2,3,
- 4,5,6,7,8,9,10,11,12,0,
- 1,2,3,4,0,0,0,8,9,5,
- 6,7,73,128,28,29,30,31,32,33,
- 34,35,36,37,38,39,40,41,79,43,
+ 4,5,6,7,8,9,10,11,12,73,
+ 0,0,1,2,0,4,5,6,7,5,
+ 6,7,73,13,28,29,30,31,32,33,
+ 34,35,36,37,38,39,40,41,42,61,
44,45,28,29,30,31,32,33,34,35,
- 36,37,38,39,0,1,2,42,0,1,
- 2,65,4,5,6,7,70,71,72,73,
- 0,0,76,77,78,79,80,0,1,2,
- 3,4,5,6,7,8,9,93,94,93,
+ 36,37,38,39,0,1,2,3,4,0,
+ 1,65,8,9,0,69,0,71,72,73,
+ 60,61,76,77,78,79,80,0,1,2,
+ 3,4,5,6,7,8,9,28,0,93,
94,95,96,97,98,99,100,101,102,103,
104,105,106,107,108,109,0,1,2,113,
114,115,116,117,118,119,120,121,122,123,
124,125,0,127,0,1,2,3,4,5,
- 6,7,8,9,10,65,12,13,14,15,
+ 6,7,8,9,10,69,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,61,44,45,
+ 36,37,38,39,40,41,0,43,44,45,
46,47,48,49,50,51,52,53,54,55,
56,57,58,59,60,0,62,63,64,0,
0,67,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,110,111,112,43,0,1,2,3,
- 4,5,6,7,8,9,10,0,12,0,
- 1,2,60,61,62,63,64,0,66,70,
- 68,69,5,6,7,73,0,1,2,0,
- 4,0,80,0,1,2,3,4,5,6,
- 7,8,9,0,92,28,29,30,31,32,
- 33,34,35,36,37,38,39,28,29,0,
- 1,2,110,111,112,0,1,2,3,4,
+ 38,39,0,43,42,0,1,2,3,4,
+ 5,6,7,8,9,10,61,12,126,0,
+ 1,2,60,61,62,63,64,8,66,0,
+ 68,0,70,0,1,73,5,6,7,0,
+ 1,2,80,4,5,6,7,0,1,2,
+ 3,4,93,94,92,8,9,0,11,28,
+ 29,30,31,32,33,34,35,36,37,38,
+ 39,69,110,111,112,0,1,2,3,4,
5,6,7,8,9,10,11,12,13,14,
15,16,17,18,19,20,21,22,23,24,
25,26,27,28,29,30,31,32,33,34,
- 35,36,37,38,39,0,73,76,43,0,
- 1,2,3,4,5,6,7,8,9,10,
- 61,12,0,1,2,60,61,62,63,64,
- 0,66,0,68,69,5,6,7,73,0,
- 1,2,0,4,0,80,0,1,2,3,
- 4,5,6,7,8,9,0,92,28,29,
- 30,31,32,33,34,35,36,37,38,39,
- 0,1,2,29,42,110,111,112,0,1,
+ 35,36,37,38,39,0,69,42,71,4,
+ 5,6,7,76,77,10,79,12,0,1,
+ 2,0,4,76,77,60,61,62,63,64,
+ 0,66,95,68,0,70,0,0,73,5,
+ 6,7,5,6,7,80,0,1,2,3,
+ 4,5,6,7,8,9,10,92,12,29,
+ 0,0,28,29,30,31,32,33,34,35,
+ 36,37,38,39,13,110,111,112,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,76,0,
- 0,43,3,0,0,1,2,3,4,5,
- 6,7,8,9,10,0,12,0,60,61,
- 62,63,64,0,66,0,68,69,13,0,
+ 32,33,34,35,36,37,38,39,0,73,
+ 42,60,61,0,0,1,2,3,4,5,
+ 6,7,8,9,10,0,12,77,60,61,
+ 62,63,64,0,66,0,68,126,70,0,
1,2,0,4,5,6,7,0,80,10,
0,12,5,6,7,5,6,7,0,0,
92,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,73,79,76,
- 77,66,65,0,1,2,128,0,1,2,
+ 23,24,25,26,61,28,29,30,31,32,
+ 33,34,35,36,37,38,39,73,0,0,
+ 1,2,4,5,6,7,128,0,1,2,
3,4,5,6,7,8,9,10,11,12,
13,14,15,16,17,18,19,20,21,22,
23,24,25,26,27,28,29,30,31,32,
- 33,34,35,36,37,38,39,0,1,2,
- 43,0,1,2,3,4,5,6,7,8,
- 9,10,11,12,0,1,2,60,61,62,
- 63,64,8,66,105,68,69,74,75,28,
- 29,30,31,32,33,34,35,36,37,38,
- 39,0,0,1,43,0,5,6,7,92,
- 5,6,7,0,0,0,1,2,3,4,
- 5,6,7,8,9,10,65,12,0,0,
- 28,70,71,28,29,30,31,32,33,34,
+ 33,34,35,36,37,38,39,0,0,42,
+ 0,1,2,3,4,5,6,7,8,9,
+ 10,11,12,0,1,2,0,60,61,62,
+ 63,64,129,66,105,68,0,70,28,29,
+ 30,31,32,33,34,35,36,37,38,39,
+ 43,0,42,0,1,0,0,0,0,92,
+ 5,6,7,10,0,1,2,3,4,5,
+ 6,7,8,9,10,65,12,69,0,69,
+ 0,71,0,28,29,30,31,32,33,34,
35,36,37,38,39,128,0,1,2,3,
4,5,6,7,8,9,10,11,12,13,
14,15,16,17,18,19,20,21,22,23,
24,25,26,27,28,29,30,31,32,33,
- 34,35,36,37,38,39,0,0,73,43,
- 4,77,79,0,1,2,3,4,5,6,
- 7,8,9,0,1,2,60,61,62,63,
- 64,65,66,0,68,69,30,0,1,2,
- 107,4,93,94,11,8,9,114,115,116,
- 117,118,119,120,121,122,123,124,92,0,
+ 34,35,36,37,38,39,0,79,42,61,
+ 60,0,1,2,3,4,5,6,7,8,
+ 9,69,11,0,1,2,60,61,62,63,
+ 64,65,66,0,68,107,70,0,0,1,
+ 2,0,114,115,116,117,118,119,120,121,
+ 122,123,124,42,0,1,2,0,92,0,
1,2,3,4,5,6,7,8,9,10,
11,12,13,14,15,16,17,18,19,20,
21,22,23,24,25,26,27,28,29,30,
31,32,33,34,35,36,37,38,39,0,
- 0,0,43,0,1,2,3,4,5,6,
- 7,8,9,80,11,0,110,111,112,60,
- 61,62,63,64,0,66,0,68,69,0,
- 1,2,3,4,0,11,129,8,9,80,
- 11,0,0,0,1,2,43,4,5,6,
- 7,92,0,1,2,3,4,5,6,7,
+ 43,42,0,1,2,3,4,5,6,7,
+ 8,9,74,75,77,61,110,111,112,60,
+ 61,62,63,64,0,66,0,68,0,70,
+ 0,1,2,0,4,5,6,7,0,80,
+ 10,11,12,5,6,7,0,1,2,0,
+ 4,92,0,1,2,3,4,5,6,7,
8,9,10,11,12,13,14,15,16,17,
18,19,20,21,22,23,24,25,26,27,
28,29,30,31,32,33,34,35,36,37,
- 38,39,93,94,79,43,72,96,97,70,
- 71,0,1,2,61,76,77,65,79,8,
- 9,70,60,61,62,63,64,0,66,0,
- 68,69,96,97,95,0,1,2,11,0,
- 1,2,80,4,5,6,7,0,0,10,
- 11,12,0,0,92,0,1,2,3,4,
+ 38,39,0,65,42,96,97,5,6,7,
+ 76,71,0,1,2,3,4,5,6,7,
+ 8,9,60,61,62,63,64,0,66,0,
+ 68,0,70,0,0,95,0,1,2,3,
+ 4,0,80,0,8,9,13,11,0,0,
+ 1,2,11,0,92,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,42,61,0,43,72,
- 0,1,2,3,4,0,1,2,8,9,
- 71,11,65,8,9,60,61,62,63,64,
- 73,66,70,68,69,0,0,1,2,3,
- 4,5,6,7,95,80,10,0,12,0,
- 3,93,94,43,5,6,7,92,0,1,
+ 35,36,37,38,39,0,65,42,0,66,
+ 0,1,2,3,4,69,77,71,8,9,
+ 61,11,71,65,73,60,61,62,63,64,
+ 77,66,95,68,0,70,0,1,2,3,
+ 4,5,6,7,0,80,10,3,12,0,
+ 1,2,42,4,5,6,7,92,0,1,
2,3,4,5,6,7,8,9,10,11,
12,13,14,15,16,17,18,19,20,21,
22,23,24,25,26,27,28,29,30,31,
- 32,33,34,35,36,37,38,39,0,1,
- 2,43,4,5,6,7,70,0,10,0,
- 12,4,5,6,7,0,81,70,60,61,
- 62,63,64,0,66,0,68,69,0,1,
- 2,3,4,5,6,7,8,9,10,0,
- 12,0,0,1,2,4,4,5,6,7,
+ 32,33,34,35,36,37,38,39,93,94,
+ 42,67,0,1,2,69,4,5,6,7,
+ 61,0,10,69,12,0,1,2,60,61,
+ 62,63,64,0,66,0,68,0,70,0,
+ 1,2,3,4,5,6,7,8,9,10,
+ 0,12,0,1,2,0,4,5,6,7,
92,0,1,2,3,4,5,6,7,8,
9,10,11,12,13,14,15,16,17,18,
19,20,21,22,23,24,25,26,27,28,
29,30,31,32,33,34,35,36,37,38,
- 39,0,67,0,43,0,1,2,70,4,
- 5,6,7,61,11,10,65,12,93,94,
- 0,60,61,62,63,64,77,66,95,68,
- 69,0,1,2,3,4,5,6,7,8,
- 9,10,0,12,0,0,43,5,6,7,
- 5,6,7,92,0,1,2,3,4,5,
+ 39,0,65,42,0,0,1,2,69,4,
+ 5,6,7,61,79,10,95,12,0,1,
+ 2,60,61,62,63,64,76,66,95,68,
+ 0,70,0,1,2,3,4,5,6,7,
+ 8,9,10,0,12,0,1,2,5,6,
+ 7,96,97,92,0,1,2,3,4,5,
6,7,8,9,10,11,12,13,14,15,
16,17,18,19,20,21,22,23,24,25,
26,27,28,29,30,31,32,33,34,35,
- 36,37,38,39,93,94,76,43,0,1,
- 2,3,4,0,73,0,8,9,0,11,
- 65,3,0,0,60,61,62,63,64,0,
- 66,0,68,69,0,0,1,2,3,4,
- 11,0,11,8,9,0,1,2,3,4,
- 0,0,11,8,9,10,92,12,13,14,
+ 36,37,38,39,93,94,42,0,1,2,
+ 0,4,5,6,7,73,0,10,65,12,
+ 0,5,6,7,60,61,62,63,64,0,
+ 66,0,68,0,70,0,1,2,3,4,
+ 5,6,7,8,9,0,1,2,3,4,
+ 0,0,0,8,9,10,92,12,13,14,
15,16,17,18,19,20,21,22,23,24,
- 25,26,27,0,1,2,3,4,70,71,
- 65,8,9,0,43,40,41,42,70,44,
+ 25,26,27,0,1,2,0,4,28,29,
+ 4,8,9,73,0,40,41,0,43,44,
45,46,47,48,49,50,51,52,53,54,
- 55,56,57,58,59,70,0,1,2,0,
- 4,80,67,0,8,9,65,76,0,74,
- 75,3,77,0,1,2,3,4,77,11,
- 0,8,9,10,11,12,13,14,15,16,
+ 55,56,57,58,59,95,30,76,73,0,
+ 1,2,67,4,0,0,65,8,9,74,
+ 75,69,77,0,1,2,3,4,77,96,
+ 97,8,9,10,11,12,13,14,15,16,
17,18,19,20,21,22,23,24,25,26,
- 27,100,101,0,125,0,1,2,0,108,
- 109,3,0,40,41,42,11,44,45,46,
+ 27,100,101,0,1,2,0,1,2,108,
+ 109,8,9,40,41,81,43,44,45,46,
47,48,49,50,51,52,53,54,55,56,
- 57,58,59,70,0,102,103,3,70,71,
- 67,0,0,0,3,72,0,1,2,3,
- 4,0,11,80,8,9,10,11,12,13,
+ 57,58,59,0,1,2,110,111,112,0,
+ 67,8,9,79,107,72,0,1,2,3,
+ 4,114,13,80,8,9,10,11,12,13,
14,15,16,17,18,19,20,21,22,23,
- 24,25,26,27,0,1,2,72,0,5,
- 6,7,40,41,10,73,40,41,42,11,
+ 24,25,26,27,0,1,2,0,0,5,
+ 6,7,4,0,10,0,40,41,11,43,
44,45,46,47,48,49,50,51,52,53,
54,55,56,57,58,59,0,0,1,2,
- 3,4,71,67,0,8,9,10,72,12,
+ 3,4,0,67,0,8,9,10,72,12,
13,14,15,16,17,18,19,20,21,22,
- 23,24,25,26,27,61,0,1,2,0,
- 0,0,0,0,5,6,7,40,41,42,
- 72,44,45,46,47,48,49,50,51,52,
+ 23,24,25,26,27,61,0,1,2,3,
+ 4,0,0,65,8,9,0,40,41,72,
+ 43,44,45,46,47,48,49,50,51,52,
53,54,55,56,57,58,59,0,0,0,
- 1,65,0,0,67,0,1,2,3,4,
+ 1,2,0,0,67,0,1,2,3,4,
11,74,75,8,9,10,0,12,13,14,
15,16,17,18,19,20,21,22,23,24,
- 25,26,27,0,61,65,3,0,1,0,
- 74,75,40,41,11,40,41,42,11,44,
+ 25,26,27,0,0,69,3,0,1,2,
+ 96,97,40,41,11,40,41,105,43,44,
45,46,47,48,49,50,51,52,53,54,
55,56,57,58,59,93,94,0,65,0,
- 71,0,67,0,1,2,3,4,11,74,
- 75,8,9,10,13,12,13,14,15,16,
+ 3,72,67,0,1,2,3,4,11,74,
+ 75,8,9,10,0,12,13,14,15,16,
17,18,19,20,21,22,23,24,25,26,
- 27,0,0,70,71,0,0,0,71,76,
- 77,4,11,40,41,42,11,44,45,46,
+ 27,0,69,0,71,0,5,6,7,76,
+ 77,74,75,40,41,10,43,44,45,46,
47,48,49,50,51,52,53,54,55,56,
- 57,58,59,0,65,96,97,30,71,0,
+ 57,58,59,0,65,0,69,0,71,0,
67,0,1,2,3,4,77,74,75,8,
9,10,11,12,13,14,15,16,17,18,
19,20,21,22,23,24,25,26,27,100,
- 101,0,71,0,73,73,71,108,109,73,
- 0,40,41,42,11,44,45,46,47,48,
+ 101,0,0,40,41,40,41,108,109,76,
+ 77,40,41,11,43,44,45,46,47,48,
49,50,51,52,53,54,55,56,57,58,
- 59,95,0,0,0,3,73,4,67,5,
- 6,7,73,72,0,1,2,3,4,0,
- 1,2,8,9,10,11,12,13,14,15,
+ 59,0,65,98,99,0,0,0,67,0,
+ 0,1,3,72,0,1,2,3,4,0,
+ 11,11,8,9,10,11,12,13,14,15,
16,17,18,19,20,21,22,23,24,25,
- 26,27,0,1,2,65,4,76,77,76,
- 8,9,0,80,40,41,42,0,44,45,
+ 26,27,0,1,2,0,4,0,76,0,
+ 8,9,80,4,40,41,11,43,44,45,
+ 46,47,48,49,50,51,52,53,54,55,
+ 56,57,58,59,0,1,2,3,4,30,
+ 71,71,8,9,10,0,12,13,14,15,
+ 16,17,18,19,20,21,22,23,24,25,
+ 26,27,0,61,0,0,0,5,6,7,
+ 5,6,7,0,40,41,71,43,44,45,
+ 46,47,48,49,50,51,52,53,54,55,
+ 56,57,58,59,28,29,0,0,0,125,
+ 95,3,0,69,0,1,2,3,4,0,
+ 1,2,8,9,10,0,12,13,14,15,
+ 16,17,18,19,20,21,22,23,24,25,
+ 26,27,0,1,2,0,4,73,93,94,
+ 8,9,69,0,40,41,11,43,44,45,
+ 46,47,48,49,50,51,52,53,54,55,
+ 56,57,58,59,0,1,2,3,4,73,
+ 61,67,8,9,10,73,12,13,14,15,
+ 16,17,18,19,20,21,22,23,24,25,
+ 26,27,0,61,0,1,2,5,6,7,
+ 0,0,8,3,40,41,71,43,44,45,
46,47,48,49,50,51,52,53,54,55,
56,57,58,59,0,1,2,3,4,0,
- 61,0,8,9,10,0,12,13,14,15,
+ 0,67,8,9,10,0,12,13,14,15,
16,17,18,19,20,21,22,23,24,25,
- 26,27,0,61,0,1,2,0,4,0,
- 1,2,8,9,40,41,42,8,44,45,
+ 26,27,0,1,0,61,0,1,2,0,
+ 1,2,0,11,40,41,65,43,44,45,
46,47,48,49,50,51,52,53,54,55,
- 56,57,58,59,0,1,2,3,4,125,
- 61,67,8,9,10,0,12,13,14,15,
+ 56,57,58,59,0,1,2,3,4,0,
+ 1,2,8,9,10,65,12,13,14,15,
16,17,18,19,20,21,22,23,24,25,
- 26,27,0,0,79,61,0,5,6,7,
- 61,5,6,7,40,41,42,70,44,45,
+ 26,27,0,0,79,0,3,61,0,65,
+ 61,0,10,71,40,41,11,43,44,45,
46,47,48,49,50,51,52,53,54,55,
- 56,57,58,59,0,0,0,0,1,2,
- 3,4,0,0,70,8,9,10,0,12,
- 13,14,15,16,17,18,19,20,21,22,
- 23,24,25,26,27,0,0,1,2,0,
- 5,6,7,0,1,2,73,40,41,42,
- 11,44,45,46,47,48,49,50,51,52,
- 53,54,55,56,57,58,59,0,1,2,
- 3,4,60,0,67,8,9,10,65,12,
- 13,14,15,16,17,18,19,20,21,22,
- 23,24,25,26,27,0,0,61,0,3,
- 5,6,7,0,61,0,3,40,41,42,
- 71,44,45,46,47,48,49,50,51,52,
- 53,54,55,56,57,58,59,0,1,2,
- 3,4,126,0,95,8,9,10,65,12,
- 13,14,15,16,17,18,19,20,21,22,
- 23,24,25,26,27,0,0,0,0,0,
- 5,6,7,5,6,7,0,40,41,42,
- 13,44,45,46,47,48,49,50,51,52,
- 53,54,55,56,57,58,59,0,1,2,
- 3,4,0,1,2,8,9,10,65,12,
- 13,14,15,16,17,18,19,20,21,22,
- 23,24,25,26,27,0,0,60,61,0,
- 5,6,7,4,65,0,70,40,41,42,
- 0,44,45,46,47,48,49,50,51,52,
- 53,54,55,56,57,58,59,0,1,2,
- 3,4,0,61,0,8,9,10,4,12,
- 13,14,15,16,17,18,19,20,21,22,
- 23,24,25,26,27,0,0,0,0,3,
- 28,29,4,0,65,0,11,40,41,42,
- 13,44,45,46,47,48,49,50,51,52,
- 53,54,55,56,57,58,59,0,1,2,
- 3,4,0,0,0,8,9,10,43,12,
- 13,14,15,16,17,18,19,20,21,22,
- 23,24,25,26,27,0,0,60,61,3,
- 0,0,0,65,3,3,11,40,41,42,
- 0,44,45,46,47,48,49,50,51,52,
- 53,54,55,56,57,58,59,0,1,2,
- 3,4,0,0,0,8,9,10,43,12,
- 13,14,15,16,17,18,19,20,21,22,
- 23,24,25,26,27,0,0,0,0,0,
- 3,3,0,0,0,3,11,40,41,42,
- 70,44,45,46,47,48,49,50,51,52,
- 53,54,55,56,57,58,59,0,1,2,
- 3,4,0,0,0,8,9,10,43,12,
- 13,14,15,16,17,18,19,20,21,22,
- 23,24,25,26,27,0,0,107,0,0,
- 0,65,0,3,114,3,11,40,41,42,
- 11,44,45,46,47,48,49,50,51,52,
- 53,54,55,56,57,58,59,0,0,0,
- 3,0,0,0,0,8,0,10,0,12,
- 11,102,103,11,0,73,0,1,2,3,
- 4,5,6,7,8,9,10,11,12,0,
- 0,0,0,65,3,3,71,40,41,73,
- 71,44,45,46,28,29,30,31,32,33,
- 34,35,36,37,38,39,42,0,0,43,
- 0,0,65,0,0,0,0,70,0,126,
- 71,74,75,76,77,76,79,79,0,0,
- 79,73,80,79,0,79,70,71,0,0,
- 93,94,0,96,0,98,99,100,101,102,
- 103,104,105,106,107,11,0,0,79,79,
- 113,0,115,116,117,118,119,120,121,122,
- 123,124,0,1,2,0,4,5,6,7,
- 0,0,0,0,0,13,14,15,16,17,
- 18,19,20,21,22,23,24,25,26,27,
- 28,29,30,31,32,33,34,35,36,37,
- 38,39,0,79,0,71,0,0,0,0,
- 76,0,0,11,0,1,2,0,4,5,
- 6,7,60,126,62,63,64,13,14,15,
+ 56,57,58,59,0,1,2,3,4,0,
+ 61,0,8,9,10,126,12,13,14,15,
16,17,18,19,20,21,22,23,24,25,
- 26,27,28,29,30,31,32,33,34,35,
- 36,37,38,39,0,1,2,3,4,5,
- 6,7,8,9,10,11,12,0,0,0,
- 3,0,0,71,60,0,62,63,64,0,
- 0,0,28,29,30,31,32,33,34,35,
- 36,37,38,39,0,1,2,43,4,5,
- 6,7,0,0,10,0,12,4,5,6,
- 7,44,45,10,0,12,0,0,0,0,
- 0,5,6,7,70,71,0,11,11,0,
- 0,0,0,65,0,0,0,70,0,0,
- 0,0,0,0,0,77,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,43,
- 0,0,0,0,0,0,0,0,100,101,
- 0,0,0,0,0,0,108,109,0,0,
- 113,0,0,0,0,0,0,0,71,0,
- 0,0,76,76,127,0,0,0,0,0,
+ 26,27,0,0,0,0,0,5,6,7,
+ 5,6,7,65,40,41,71,43,44,45,
+ 46,47,48,49,50,51,52,53,54,55,
+ 56,57,58,59,0,1,2,3,4,0,
+ 98,99,8,9,10,0,12,13,14,15,
+ 16,17,18,19,20,21,22,23,24,25,
+ 26,27,0,0,0,0,0,3,5,6,
+ 7,0,10,69,40,41,11,43,44,45,
+ 46,47,48,49,50,51,52,53,54,55,
+ 56,57,58,59,0,1,2,3,4,93,
+ 94,0,8,9,10,0,12,13,14,15,
+ 16,17,18,19,20,21,22,23,24,25,
+ 26,27,0,0,79,0,0,5,6,7,
+ 4,65,0,69,40,41,65,43,44,45,
+ 46,47,48,49,50,51,52,53,54,55,
+ 56,57,58,59,0,1,2,3,4,0,
+ 98,99,8,9,10,0,12,13,14,15,
+ 16,17,18,19,20,21,22,23,24,25,
+ 26,27,0,0,79,0,0,4,65,3,
+ 125,65,0,11,40,41,73,43,44,45,
+ 46,47,48,49,50,51,52,53,54,55,
+ 56,57,58,59,0,1,2,3,4,0,
+ 0,0,8,9,10,0,12,13,14,15,
+ 16,17,18,19,20,21,22,23,24,25,
+ 26,27,0,0,0,0,3,3,65,0,
+ 65,0,3,71,40,41,11,43,44,45,
+ 46,47,48,49,50,51,52,53,54,55,
+ 56,57,58,59,0,0,0,3,3,0,
+ 0,0,8,0,10,0,12,11,44,45,
+ 11,11,11,0,1,2,3,4,5,6,
+ 7,8,9,10,11,12,0,0,0,3,
+ 0,0,0,69,40,41,0,72,44,45,
+ 46,28,29,30,31,32,33,34,35,36,
+ 37,38,39,0,0,42,3,3,0,65,
+ 0,3,0,69,0,3,0,71,74,75,
+ 76,77,76,79,0,11,73,113,73,80,
+ 80,80,69,0,71,0,0,93,94,3,
+ 96,127,98,99,100,101,102,103,104,105,
+ 106,107,0,73,73,3,42,113,0,115,
+ 116,117,118,119,120,121,122,123,124,0,
+ 1,2,0,4,5,6,7,0,0,0,
+ 3,3,13,14,15,16,17,18,19,20,
+ 21,22,23,24,25,26,27,28,29,30,
+ 31,32,33,34,35,36,37,38,39,0,
+ 0,0,79,0,79,43,0,0,0,0,
+ 0,0,1,2,0,4,5,6,7,60,
+ 0,62,63,64,13,14,15,16,17,18,
+ 19,20,21,22,23,24,25,26,27,28,
+ 29,30,31,32,33,34,35,36,37,38,
+ 39,0,1,2,3,4,5,6,7,8,
+ 9,10,11,12,0,0,0,0,0,0,
+ 0,60,0,62,63,64,11,11,11,28,
+ 29,30,31,32,33,34,35,36,37,38,
+ 39,0,0,42,0,0,1,2,3,4,
+ 5,6,7,8,9,10,11,12,0,42,
+ 0,0,0,5,6,7,0,0,0,11,
+ 69,11,71,28,29,30,31,32,33,34,
+ 35,36,37,38,39,65,71,42,72,0,
+ 0,76,0,76,0,0,0,77,79,0,
+ 42,11,0,11,0,11,11,0,0,0,
+ 0,0,0,0,69,0,71,0,0,0,
+ 100,101,0,79,0,0,0,0,108,109,
+ 0,71,42,0,76,0,76,42,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,71,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,0,0,0,0,0,0,0,0,
+ 0,0,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 char termCheck[] = TermCheck.termCheck;
@@ -1826,431 +1832,434 @@ public class GPPParserprs implements lpg.lpgjavaruntime.ParseTable, GPPParsersym
public interface TermAction {
public final static char termAction[] = {0,
- 7073,6898,6262,6262,6262,6255,6262,6262,6262,6262,
- 6262,6947,6262,1,1,1,1,1,1,1,
+ 7089,6911,6275,6275,6275,6268,6275,6275,6275,6275,
+ 6275,6960,6275,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,6902,1,1,1,1,1,1,
+ 1,1,6915,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,7073,1,1,1,131,932,1,720,7248,
- 1,5950,7084,4057,1,1,7073,3214,2359,1221,
- 7080,3376,3267,2269,3128,3218,3867,3352,923,3310,
- 2756,3273,10,6950,6950,6950,6950,6950,6950,6950,
- 6950,6950,6950,6950,6950,6950,6950,6950,6950,6950,
- 6950,6950,6950,6950,6950,6950,6950,6950,6950,6950,
- 6950,6950,6950,6950,6950,6950,6950,6950,6950,6950,
- 6950,6950,6950,6950,6950,6950,6950,6950,6950,6950,
- 6950,6950,6950,6950,6950,6950,6950,6950,6950,6950,
- 6950,6950,6950,39,6950,6950,6950,7111,6950,6950,
- 6950,6950,7073,382,6950,1047,6950,6950,7073,7073,
- 6950,715,6950,6950,6950,6950,6950,6950,6950,6950,
- 6950,6950,6950,6950,8,6977,6977,6977,6977,6977,
- 6977,6977,6977,6977,6977,6977,6977,6977,6977,6977,
- 6977,6977,6977,6977,6977,6977,6977,6977,6977,6977,
- 6977,6977,6977,6977,6977,6977,6977,6977,6977,6977,
- 6977,6977,6977,6977,6977,6977,6977,6977,6977,6977,
- 6977,6977,6977,6977,6977,6977,6977,6977,6977,6977,
- 6977,6977,6977,6977,6977,7073,6977,6977,6977,1568,
- 6977,6977,6977,6977,7073,7073,6977,1265,6977,6977,
- 7073,7073,6977,1,6977,6977,6977,6977,6977,6977,
- 6977,6977,6977,6977,6977,6977,7073,6898,6262,6262,
- 6262,6255,6262,6262,6262,6262,6262,6905,6262,1,
+ 1,7089,1,1,1,39,1264,1,741,7127,
+ 7264,3949,7100,3610,1,1,7089,1,2153,2073,
+ 7096,3447,2891,2174,2868,3398,3944,3433,1078,3427,
+ 2689,3414,10,6963,6963,6963,6963,6963,6963,6963,
+ 6963,6963,6963,6963,6963,6963,6963,6963,6963,6963,
+ 6963,6963,6963,6963,6963,6963,6963,6963,6963,6963,
+ 6963,6963,6963,6963,6963,6963,6963,6963,6963,6963,
+ 6963,6963,6963,6963,6963,6963,6963,6963,6963,6963,
+ 6963,6963,6963,6963,6963,6963,6963,6963,6963,6963,
+ 6963,6963,6963,7089,6963,6963,6963,1475,6963,6963,
+ 6963,382,6963,7089,6963,7089,6963,6963,1133,306,
+ 6963,1,6963,6963,6963,6963,6963,6963,6963,6963,
+ 6963,6963,6963,6963,8,6990,6990,6990,6990,6990,
+ 6990,6990,6990,6990,6990,6990,6990,6990,6990,6990,
+ 6990,6990,6990,6990,6990,6990,6990,6990,6990,6990,
+ 6990,6990,6990,6990,6990,6990,6990,6990,6990,6990,
+ 6990,6990,6990,6990,6990,6990,6990,6990,6990,6990,
+ 6990,6990,6990,6990,6990,6990,6990,6990,6990,6990,
+ 6990,6990,6990,6990,6990,711,6990,6990,6990,2004,
+ 6990,6990,6990,129,6990,7089,6990,7089,6990,6990,
+ 1649,564,6990,1735,6990,6990,6990,6990,6990,6990,
+ 6990,6990,6990,6990,6990,6990,7089,6911,6275,6275,
+ 6275,6268,6275,6275,6275,6275,6275,6918,6275,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,6902,
+ 1,1,1,1,1,1,1,1,6915,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,5216,1,1,
- 1,1764,932,1,720,7248,115,7073,7084,7073,
- 1,1,1912,306,2359,2004,4946,3376,3267,2269,
- 3128,3218,3867,3352,923,3310,2756,3273,7073,6898,
- 6262,6262,6262,6255,6262,6262,6262,6262,6262,6905,
- 6262,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,625,1,1,
+ 1,131,1264,1,741,130,7264,7089,7100,7089,
+ 1,1,1340,3193,2153,3583,3493,3447,2891,2174,
+ 2868,3398,3944,3433,1078,3427,2689,3414,7089,6911,
+ 6275,6275,6275,6268,6275,6275,6275,6275,6275,6918,
+ 6275,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,6902,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,3142,
- 1,1,1,137,932,1,720,7248,117,7073,
- 7084,7073,1,1,4923,4900,2359,7073,4946,3376,
- 3267,2269,3128,3218,3867,3352,923,3310,2756,3273,
- 7073,6898,6262,6262,6262,6255,6262,6262,6262,6262,
- 6262,6905,6262,1,1,1,1,1,1,1,
+ 6915,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,133,
+ 1,1,1,137,1264,1,741,7089,7264,7089,
+ 7100,7089,1,1,2119,513,2153,3583,3493,3447,
+ 2891,2174,2868,3398,3944,3433,1078,3427,2689,3414,
+ 7089,6911,6275,6275,6275,6268,6275,6275,6275,6275,
+ 6275,6918,6275,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,6902,1,1,1,1,1,1,
+ 1,1,6915,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,133,1,1,1,138,932,1,720,7248,
- 116,7073,7084,7073,1,1,4923,4900,2359,2908,
- 4946,3376,3267,2269,3128,3218,3867,3352,923,3310,
- 2756,3273,7073,6898,6262,6262,6262,6255,6262,6262,
- 6262,6262,6262,6905,6262,1,1,1,1,1,
+ 1,999,1,1,1,7089,1264,1,741,2912,
+ 7264,7089,7100,3157,1,1,7089,7089,2153,2963,
+ 6065,3447,2891,2174,2868,3398,3944,3433,1078,3427,
+ 2689,3414,7089,6911,6275,6275,6275,6268,6275,6275,
+ 6275,6275,6275,6918,6275,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,6902,1,1,1,1,
+ 1,1,1,1,6915,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,7073,1,1,1,2822,932,1,
- 720,7248,7073,3612,7084,3102,1,1,4923,4900,
- 2359,2908,3077,3376,3267,2269,3128,3218,3867,3352,
- 923,3310,2756,3273,7073,6898,6262,6262,6262,6255,
- 6262,6262,6262,6262,6262,6905,6262,1,1,1,
+ 1,1,1,5420,1,1,1,132,1264,1,
+ 741,7089,7264,7089,7100,7089,1,1,1425,3193,
+ 2153,4132,446,3447,2891,2174,2868,3398,3944,3433,
+ 1078,3427,2689,3414,7089,6911,6275,6275,6275,6268,
+ 6275,6275,6275,6275,6275,6918,6275,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,6902,1,1,
+ 1,1,1,1,1,1,6915,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,7073,1,1,1,132,
- 932,1,720,7248,7073,6010,7084,3137,1,1,
- 7073,3214,2359,817,446,3376,3267,2269,3128,3218,
- 3867,3352,923,3310,2756,3273,7073,6898,6262,6262,
- 6262,6255,6262,6262,6262,6262,6262,6905,6262,1,
+ 1,1,1,1,1,1154,1,1,1,138,
+ 1264,1,741,7089,7264,7089,7100,567,1,1,
+ 2697,555,2153,7089,2308,3447,2891,2174,2868,3398,
+ 3944,3433,1078,3427,2689,3414,7089,6911,6275,6275,
+ 6275,6268,6275,6275,6275,6275,6275,6918,6275,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,6902,
+ 1,1,1,1,1,1,1,1,6915,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1587,1,1,
- 1,134,932,1,720,7248,567,7073,7084,2016,
- 1,1,555,564,2359,2636,7073,3376,3267,2269,
- 3128,3218,3867,3352,923,3310,2756,3273,7073,6898,
- 6262,6262,6262,6255,6262,6262,6262,6262,6262,6905,
- 6262,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,7089,1,1,
+ 1,134,1264,1,741,7089,7264,7089,7100,91,
+ 1,1,6860,542,2153,2963,1277,3447,2891,2174,
+ 2868,3398,3944,3433,1078,3427,2689,3414,7089,6911,
+ 6275,6275,6275,6268,6275,6275,6275,6275,6275,6918,
+ 6275,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,6902,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,882,
- 1,1,1,7583,932,1,720,7248,91,7073,
- 7084,6847,1,1,542,3102,2359,1277,7073,3376,
- 3267,2269,3128,3218,3867,3352,923,3310,2756,3273,
- 7073,6898,6262,6262,6262,6255,6262,6262,6262,6262,
- 6262,6905,6262,1,1,1,1,1,1,1,
+ 6915,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,7089,
+ 1,1,1,985,1264,1,741,7089,7264,7089,
+ 7100,236,1,1,6933,3157,2153,7089,7089,3447,
+ 2891,2174,2868,3398,3944,3433,1078,3427,2689,3414,
+ 7089,6911,6275,6275,6275,6268,6275,6275,6275,6275,
+ 6275,6918,6275,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,6902,1,1,1,1,1,1,
+ 1,1,6915,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,7472,1,1,1,7073,932,1,720,7248,
- 1,7073,7084,5780,1,1,7073,513,2359,2773,
- 7073,3376,3267,2269,3128,3218,3867,3352,923,3310,
- 2756,3273,7073,6898,6262,6262,6262,6255,6262,6262,
- 6262,6262,6262,6905,6262,1,1,1,1,1,
+ 1,7488,1,1,1,7089,1264,1,741,2444,
+ 7264,7089,7100,7089,1,1,7089,1,2153,7089,
+ 2296,3447,2891,2174,2868,3398,3944,3433,1078,3427,
+ 2689,3414,7089,6911,6275,6275,6275,6268,6275,6275,
+ 6275,6275,6275,6918,6275,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,6902,1,1,1,1,
+ 1,1,1,1,6915,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1002,1,1,1,3412,932,1,
- 720,7248,356,7073,7084,236,1,1,6944,157,
- 2359,7073,7073,3376,3267,2269,3128,3218,3867,3352,
- 923,3310,2756,3273,7073,6898,6262,6262,6262,6255,
- 6262,6262,6262,6262,6262,6905,6262,1,1,1,
+ 1,1,1,7599,1,1,1,7089,1264,1,
+ 741,7089,7264,7089,7100,7089,1,1,3519,157,
+ 2153,7089,7089,3447,2891,2174,2868,3398,3944,3433,
+ 1078,3427,2689,3414,7089,6911,6275,6275,6275,6268,
+ 6275,6275,6275,6275,6275,6918,6275,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,6902,1,1,
+ 1,1,1,1,1,1,6915,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,2221,1,1,1,3419,
- 932,1,720,7248,7073,3681,7084,7428,1,1,
- 7073,1,2359,7073,7073,3376,3267,2269,3128,3218,
- 3867,3352,923,3310,2756,3273,7073,6898,6262,6262,
- 6262,6255,6262,6262,6262,6262,6262,6905,6262,1,
+ 1,1,1,1,1,2215,1,1,1,3455,
+ 1264,1,741,7089,7264,7089,7100,7089,1,1,
+ 7089,447,2153,7089,7089,3447,2891,2174,2868,3398,
+ 3944,3433,1078,3427,2689,3414,7089,6911,6275,6275,
+ 6275,6268,6275,6275,6275,6275,6275,6918,6275,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,6902,
+ 1,1,1,1,1,1,1,1,6915,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,3422,1,1,
- 1,3449,932,1,720,7248,111,118,7084,7073,
- 1,1,7073,447,2359,135,7430,3376,3267,2269,
- 3128,3218,3867,3352,923,3310,2756,3273,7073,6764,
- 6764,6764,6764,6764,6764,6764,6764,6764,6764,6764,
- 6764,1,6281,6277,6271,6274,223,4876,4485,6288,
- 6285,6306,6300,6303,2204,7073,6764,6764,6764,6764,
- 6764,6764,6764,6764,6764,6764,6764,6764,6764,6764,
- 1174,6764,6764,6764,6312,6309,6318,6336,6315,6327,
- 6297,6321,6324,6333,6330,6294,7073,6495,6492,3059,
- 285,6441,6441,6764,282,709,671,682,6764,6764,
- 6764,6764,5342,5364,6764,6764,6764,6764,6764,1,
- 6281,6277,3630,6274,6683,6689,6686,785,4182,35,
- 2946,6764,6764,6764,6764,6764,6764,6764,6764,6764,
- 6764,6764,6764,6764,6764,6764,6764,6764,7073,7087,
- 7088,6764,6764,6764,6764,6764,6764,6764,6764,6764,
- 6764,6764,6764,6764,121,6764,7073,6850,6850,6850,
- 6850,6850,6850,6850,6850,6850,6850,6850,6850,1,
- 6281,6277,3630,6274,224,566,7073,785,4182,6351,
- 6345,6348,2460,6254,6850,6850,6850,6850,6850,6850,
- 6850,6850,6850,6850,6850,6850,6850,6850,2387,6850,
- 6850,6850,6357,6354,6363,6381,6360,6372,6342,6366,
- 6369,6378,6375,6339,7073,11353,11294,1772,593,6728,
- 6728,6850,598,709,671,682,6850,6850,6850,6850,
- 385,7073,6850,6850,6850,6850,6850,329,6268,6265,
- 3630,909,709,671,682,785,4182,4518,4548,6850,
- 6850,6850,6850,6850,6850,6850,6850,6850,6850,6850,
- 6850,6850,6850,6850,6850,6850,37,6767,6767,6850,
- 6850,6850,6850,6850,6850,6850,6850,6850,6850,6850,
- 6850,6850,437,6850,39,6268,6265,5809,909,709,
- 671,682,5194,4182,5106,6489,5128,2862,7672,7673,
- 7336,7334,7343,7342,7338,7339,7337,7340,7341,7344,
- 7335,5523,7408,7409,7332,7326,7333,7329,7305,7331,
- 7330,7327,7328,7306,5084,5062,7092,7109,5172,5150,
- 4988,1363,1525,7094,1381,5491,1415,7095,7093,1360,
- 7089,7090,7091,5449,7469,7073,3170,7470,7471,318,
- 7073,1637,7073,6780,6780,228,6776,6262,6262,6262,
- 228,228,228,6784,228,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1248,1,1,
+ 1,3456,1264,1,741,7089,7264,7089,7100,121,
+ 1,1,309,35,2153,1170,7099,3447,2891,2174,
+ 2868,3398,3944,3433,1078,3427,2689,3414,7089,6777,
+ 6777,6777,6777,6777,6777,6777,6777,6777,6777,6777,
+ 6777,1,6294,6290,6284,6287,223,7098,6267,6301,
+ 6298,6319,6313,6316,385,7089,6777,6777,6777,6777,
+ 6777,6777,6777,6777,6777,6777,6777,6777,6777,6777,
+ 6777,7089,6777,6777,6325,6322,6331,6349,6328,6340,
+ 6310,6334,6337,6346,6343,6307,1,6294,6290,3554,
+ 6287,1223,1519,6777,692,633,426,6777,744,6777,
+ 6777,6777,4702,4732,6777,6777,6777,6777,6777,1,
+ 6294,6290,3554,6287,6696,6702,6699,692,633,6502,
+ 7089,6777,6777,6777,6777,6777,6777,6777,6777,6777,
+ 6777,6777,6777,6777,6777,6777,6777,6777,37,6780,
+ 6780,6777,6777,6777,6777,6777,6777,6777,6777,6777,
+ 6777,6777,6777,6777,7089,6777,7089,6863,6863,6863,
+ 6863,6863,6863,6863,6863,6863,6863,6863,6863,2588,
+ 1,285,6454,6454,224,282,970,742,835,6364,
+ 6358,6361,2410,6893,6863,6863,6863,6863,6863,6863,
+ 6863,6863,6863,6863,6863,6863,6863,6863,6863,7125,
+ 6863,6863,6370,6367,6376,6394,6373,6385,6355,6379,
+ 6382,6391,6388,6352,1,6294,6290,3554,6287,544,
+ 7634,6863,692,633,7089,6863,318,6863,6863,6863,
+ 6896,3332,6863,6863,6863,6863,6863,329,6281,6278,
+ 3554,903,970,742,835,692,633,7635,7089,6863,
+ 6863,6863,6863,6863,6863,6863,6863,6863,6863,6863,
+ 6863,6863,6863,6863,6863,6863,7089,6508,6505,6863,
+ 6863,6863,6863,6863,6863,6863,6863,6863,6863,6863,
+ 6863,6863,7089,6863,39,6281,6278,5917,903,970,
+ 742,835,5398,633,5310,651,5332,816,7689,7690,
+ 7352,7350,7359,7358,7354,7355,7353,7356,7357,7360,
+ 7351,5772,7424,7425,7348,7342,7349,7345,7321,7347,
+ 7346,7343,7344,7322,5288,5266,7089,7108,5376,5354,
+ 5191,1764,1978,7110,1862,5751,1956,7111,7109,1690,
+ 7105,7106,7107,5719,7485,7089,4255,7486,7487,575,
+ 566,1597,7089,6793,6793,228,6789,6275,6275,6275,
+ 228,228,228,6797,228,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,7506,7507,7508,228,307,6281,6277,3630,
- 6274,6683,6689,6686,785,4182,6692,7073,6692,48,
- 6495,6492,1,6773,1,1,1,225,2292,1596,
- 1108,7483,6408,6402,6405,228,7073,6268,6265,334,
- 7111,360,414,1,6281,6277,3630,6274,6683,6689,
- 6686,785,4182,7073,7571,6414,6411,6420,6438,6417,
- 6429,6399,6423,6426,6435,6432,6396,6959,6956,7073,
- 6835,6832,7506,7507,7508,7073,6780,6780,228,6776,
- 6262,6262,6262,228,228,228,6892,228,1,1,
+ 1,1,456,2245,228,307,6294,6290,3554,6287,
+ 6696,6702,6699,692,633,6705,1276,6705,3960,7089,
+ 7103,7104,1,6786,1,1,1,1735,2198,7089,
+ 2239,225,7499,7089,3187,228,6421,6415,6418,594,
+ 6741,6741,414,599,970,742,835,1,6294,6290,
+ 3691,6287,4702,4732,7587,692,633,7089,365,6427,
+ 6424,6433,6451,6430,6442,6412,6436,6439,6448,6445,
+ 6409,6771,7522,7523,7524,7089,6793,6793,228,6789,
+ 6275,6275,6275,228,228,228,6905,228,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,7073,2460,669,228,7073,
- 6281,6277,3630,6274,6683,6689,6686,785,4182,6752,
- 7109,6752,395,7087,7088,1,6773,1,1,1,
- 226,2292,7073,1108,7483,6456,6450,6453,228,7073,
- 6268,6265,288,7111,561,413,1,6281,6277,3630,
- 6274,6683,6689,6686,785,4182,7073,7571,6462,6459,
- 6468,6486,6465,6477,6447,6471,6474,6483,6480,6444,
- 7073,11353,11294,7633,2081,7506,7507,7508,7073,6262,
- 6262,228,6262,6255,6262,6262,228,228,228,6291,
+ 1,1,1,1,1,39,651,228,365,7127,
+ 970,742,835,365,365,329,1384,329,7089,6281,
+ 6278,373,7127,4252,5658,1,6786,1,1,1,
+ 561,2198,365,2239,226,7499,7089,311,228,6469,
+ 6463,6466,970,742,835,413,7089,6294,6290,3554,
+ 6287,6696,6702,6699,692,633,6705,7587,6705,7649,
+ 7089,1,6475,6472,6481,6499,6478,6490,6460,6484,
+ 6487,6496,6493,6457,6893,7522,7523,7524,7089,6275,
+ 6275,228,6275,6268,6275,6275,228,228,228,6304,
228,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,11579,1,1,1,1,1,1,693,309,
- 7073,228,2491,7073,7073,6281,6277,3630,6274,6683,
- 6689,6686,785,4182,6692,300,6692,452,1,6259,
- 1,1,1,7073,723,7073,720,7284,7372,442,
- 6755,6755,7073,6755,6755,6755,6755,601,219,6755,
- 311,6755,6555,6549,6552,709,671,682,7073,136,
- 7571,7672,7673,7336,7334,7343,7342,7338,7339,7337,
- 7340,7341,7344,7335,7073,6561,6558,6567,6585,6564,
- 6576,6546,6570,6573,6582,6579,6543,2460,1223,963,
- 5430,1057,6704,7073,7087,7088,219,7073,6262,6262,
- 228,6262,6255,6262,6262,228,228,228,228,228,
+ 1,11714,1,1,1,1,1,1,7089,2410,
+ 228,6896,3332,47,7089,6294,6290,3554,6287,6696,
+ 6702,6699,692,633,6765,7089,6765,3458,1,6272,
+ 1,1,1,185,724,7089,741,3960,7300,442,
+ 6768,6768,7089,6768,6768,6768,6768,602,219,6768,
+ 393,6768,6568,6562,6565,970,742,835,7089,135,
+ 7587,7689,7690,7352,7350,7359,7358,7354,7355,7353,
+ 7356,7357,7360,7351,878,6574,6571,6580,6598,6577,
+ 6589,6559,6583,6586,6595,6592,6556,2410,393,7089,
+ 7103,7104,386,970,742,835,219,7089,6275,6275,
+ 228,6275,6268,6275,6275,228,228,228,228,228,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 11579,1,1,1,1,1,1,289,7087,7088,
- 228,29,385,385,6941,385,385,385,385,385,
- 385,6941,6941,6941,7073,7087,7088,1,6259,1,
- 1,1,2004,723,2946,720,7284,5320,1123,385,
+ 11714,1,1,1,1,1,1,7089,455,228,
+ 29,385,385,6930,385,385,385,385,385,385,
+ 6930,6930,6930,7089,11495,11438,7089,1,6272,1,
+ 1,1,7083,724,3001,741,7089,7300,385,385,
385,385,385,385,385,385,385,385,385,385,
- 385,393,544,7618,6941,584,709,671,682,7571,
- 6510,6504,6507,139,7073,7073,6281,6277,3630,6274,
- 6683,6689,6686,785,4182,6752,6710,6752,7073,575,
- 7619,6941,6941,6516,6513,6522,6540,6519,6531,6501,
- 6525,6528,6537,6534,6498,220,7073,6262,6262,228,
- 6262,6255,6262,6262,228,228,228,228,228,1,
+ 1883,7089,6930,7089,2892,585,7089,7089,139,7587,
+ 6523,6517,6520,3339,7089,6294,6290,3554,6287,6696,
+ 6702,6699,692,633,6765,6723,6765,6774,37,6930,
+ 7089,6930,346,6529,6526,6535,6553,6532,6544,6514,
+ 6538,6541,6550,6547,6511,220,7089,6275,6275,228,
+ 6275,6268,6275,6275,228,228,228,228,228,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,11579,
- 1,1,1,1,1,1,39,185,2460,228,
- 7111,7526,2173,596,6268,6265,3630,909,709,671,
- 682,785,4182,36,6987,6984,1,6259,1,1,
- 1,1206,723,1,720,7284,1222,7073,6268,6265,
- 1179,909,4518,4548,6844,785,4182,1535,2125,2077,
- 2029,1981,1933,1885,1837,1789,1741,1693,7571,7073,
- 6262,6262,228,6262,6255,6262,6262,228,228,228,
- 6770,228,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,11714,
+ 1,1,1,1,1,1,437,2126,228,7125,
+ 1910,1,6294,6290,3554,6287,6696,6702,6699,692,
+ 633,651,307,48,6508,6505,1,6272,1,1,
+ 1,1311,724,7089,741,1180,7300,7089,7089,7103,
+ 7104,7089,2665,2078,2030,1982,1934,1886,1838,1790,
+ 1742,1694,1645,307,7089,6848,6845,7089,7587,7089,
+ 6275,6275,228,6275,6268,6275,6275,228,228,228,
+ 6783,228,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,11579,1,1,1,1,1,1,574,
- 7073,114,228,1,6281,6277,3630,6274,6683,6689,
- 6686,785,4182,7080,307,290,7506,7507,7508,1,
- 6259,1,1,1,7073,723,113,720,7284,1,
- 6281,6277,3617,6274,7073,7085,7067,785,4182,220,
- 365,456,438,392,6393,6393,307,282,6384,6390,
- 6387,7571,7073,6262,6262,228,6262,6255,6262,6262,
- 228,228,228,6770,228,1,1,1,1,1,
+ 1,1,11714,1,1,1,1,1,1,111,
+ 2245,228,1,6294,6290,3554,6287,6696,6702,6699,
+ 692,633,5449,1171,3469,7125,7522,7523,7524,1,
+ 6272,1,1,1,360,724,7089,741,452,7300,
+ 1,6969,6969,7089,6966,6696,6702,6699,589,220,
+ 329,361,329,970,742,835,7089,6281,6278,7089,
+ 7127,7587,7089,6275,6275,228,6275,6268,6275,6275,
+ 228,228,228,6783,228,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,11579,1,1,1,1,
- 1,1,4518,4548,2501,228,7084,5342,5364,1596,
- 365,38,6701,6698,282,365,365,6707,1384,6695,
- 4182,6758,1,6259,1,1,1,1,723,7073,
- 720,7284,5342,5364,365,43,6841,6841,6713,1,
- 6965,6965,220,6962,6683,6689,6686,29,125,329,
- 361,329,455,7073,7571,7073,6262,6262,228,6262,
- 6255,6262,6262,228,228,228,6770,228,1,1,
+ 1,1,1,1,1,11714,1,1,1,1,
+ 1,1,597,6717,228,5552,5592,6869,6875,6872,
+ 1366,361,597,6281,6278,3554,903,970,742,835,
+ 692,633,1,6272,1,1,1,356,724,7089,
+ 741,438,7300,300,7089,361,1,6294,6290,3691,
+ 6287,7089,220,7089,692,633,7388,6921,29,43,
+ 6854,6854,7095,7089,7587,7089,6275,6275,228,6275,
+ 6268,6275,6275,228,228,228,6783,228,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,11579,1,
- 1,1,1,1,1,1772,6838,7073,228,7084,
- 1,6281,6277,6271,6274,7073,7087,7088,6288,6285,
- 361,7083,1668,785,4182,1,6259,1,1,1,
- 422,723,6761,720,7284,7073,343,39,39,3075,
- 7111,709,671,682,361,220,329,316,329,588,
- 6749,4518,4548,7082,709,671,682,7571,7073,6262,
- 6262,228,6262,6255,6262,6262,228,228,228,228,
+ 1,1,1,1,1,1,1,1,11714,1,
+ 1,1,1,1,1,574,6720,228,7089,1179,
+ 1,6294,6290,6284,6287,651,7542,6924,6301,6298,
+ 6851,7099,7094,6723,840,1,6272,1,1,1,
+ 7528,724,7444,741,530,7300,343,39,39,4006,
+ 7127,970,742,835,316,220,329,6762,329,392,
+ 6406,6406,7098,282,6397,6403,6400,7587,7089,6275,
+ 6275,228,6275,6268,6275,6275,228,228,228,228,
228,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,11579,1,1,1,1,1,1,443,6923,
- 6923,228,6917,6908,6914,6911,1596,393,6920,7073,
- 6920,386,709,671,682,124,3903,1596,1,6259,
- 1,1,1,1,723,530,720,7284,343,6268,
- 6265,3617,909,709,671,682,785,4182,329,7073,
- 329,394,594,6725,6725,385,598,6716,6722,6719,
- 7571,7073,6262,6262,228,6262,6255,6262,6262,228,
+ 1,11714,1,1,1,1,1,1,4702,4732,
+ 228,3972,443,6951,6951,651,6945,6936,6942,6939,
+ 282,1,6948,651,6948,395,7103,7104,1,6272,
+ 1,1,1,1,724,290,741,7089,7300,343,
+ 6281,6278,3691,903,970,742,835,692,633,329,
+ 288,329,595,6738,6738,114,599,6729,6735,6732,
+ 7587,7089,6275,6275,228,6275,6268,6275,6275,228,
228,228,228,228,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,11579,1,1,1,1,1,
- 1,123,3997,7073,228,92,6953,6953,1596,6953,
- 6953,6953,6953,598,7083,6953,1668,6953,4518,4548,
- 424,1,6259,1,1,1,7512,723,4074,720,
- 7284,7073,7008,7008,7008,7008,7008,7008,7008,7008,
- 7008,7008,596,7008,7073,393,7082,6856,6862,6859,
- 709,671,682,7571,7073,6262,6262,228,6262,6255,
- 6262,6262,228,228,228,228,228,1,1,1,
+ 1,1,1,1,11714,1,1,1,1,1,
+ 1,125,2307,228,7089,92,6975,6975,651,6975,
+ 6975,6975,6975,599,2451,6975,7446,6975,7089,11495,
+ 11438,1,6272,1,1,1,1487,724,3788,741,
+ 7089,7300,7089,7029,7029,7029,7029,7029,7029,7029,
+ 7029,7029,7029,393,7029,289,7103,7104,970,742,
+ 835,5552,5592,7587,7089,6275,6275,228,6275,6268,
+ 6275,6275,228,228,228,228,228,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,11579,1,1,
- 1,1,1,1,4518,4548,3076,228,1,6281,
- 6277,3617,6274,7073,7008,29,785,4182,345,6926,
- 1668,3410,7073,7073,1,6259,1,1,1,7073,
- 723,7073,720,7284,7073,1,6281,6277,3617,6274,
- 7077,7073,7081,785,4182,1,6281,6277,5809,6274,
- 7073,126,7083,5194,4182,5106,7571,5128,6787,6793,
- 6790,6820,6826,6799,6802,6814,6811,6817,6808,6805,
- 6796,6823,6829,1,6281,6277,3630,6274,1596,6929,
- 6710,785,4182,129,7082,5084,5062,7092,1596,5172,
- 5150,4988,1363,1525,7094,1381,5491,1415,7095,7093,
- 1360,7089,7090,7091,5449,1596,7073,6268,6265,7073,
- 909,7080,1637,346,785,4182,3844,3282,1,39,
- 39,3075,514,39,6268,6265,5809,909,6895,6926,
- 7073,5194,4182,5106,7061,5128,2353,7672,7673,7336,
- 7334,7343,7342,7338,7339,7337,7340,7341,7344,7335,
- 5246,3782,3751,7073,7076,7073,7087,7088,7073,3720,
- 3644,3667,426,5084,5062,7092,7085,5172,5150,4988,
- 1363,1525,7094,1381,5491,1415,7095,7093,1360,7089,
- 7090,7091,5449,1596,7073,3581,3491,4313,1596,6929,
- 1637,7073,120,7073,816,6868,39,6268,6265,5809,
- 909,7073,7079,7080,5194,4182,5106,6865,5128,2353,
- 7672,7673,7336,7334,7343,7342,7338,7339,7337,7340,
- 7341,7344,7335,5246,37,6767,6767,7084,1,709,
- 671,682,4876,4485,329,3342,5084,5062,7092,7085,
- 5172,5150,4988,1363,1525,7094,1381,5491,1415,7095,
- 7093,1360,7089,7090,7091,5449,7073,141,6268,6265,
- 5809,909,7078,1637,7073,5194,4182,5106,6868,5128,
- 2353,7672,7673,7336,7334,7343,7342,7338,7339,7337,
- 7340,7341,7344,7335,5246,7109,7073,6495,6492,587,
- 7073,7073,122,47,709,671,682,5084,5062,7092,
- 7084,5172,5150,4988,1363,1525,7094,1381,5491,1415,
- 7095,7093,1360,7089,7090,7091,5449,7073,7073,7073,
- 1812,1960,119,7073,1637,550,6268,6265,5809,909,
- 7079,39,39,5194,4182,5106,7073,5128,2353,7672,
- 7673,7336,7334,7343,7342,7338,7339,7337,7340,7341,
- 7344,7335,5246,1,1408,4674,3075,7073,3669,112,
- 5320,1123,4876,4485,339,5084,5062,7092,7079,5172,
- 5150,4988,1363,1525,7094,1381,5491,1415,7095,7093,
- 1360,7089,7090,7091,5449,4518,4548,7073,5590,128,
- 7078,300,1637,1,6281,6277,5809,6274,7079,39,
- 39,5194,4182,5106,7372,5128,6787,6793,6790,6820,
- 6826,6799,6802,6814,6811,6817,6808,6805,6796,6823,
- 6829,7073,1,1596,339,1,7073,39,7078,339,
- 339,7111,7079,5084,5062,7092,161,5172,5150,4988,
- 1363,1525,7094,1381,5491,1415,7095,7093,1360,7089,
- 7090,7091,5449,7073,3844,5342,5364,3186,7078,7073,
- 1637,39,6268,6265,5809,909,6968,39,39,5194,
- 4182,5106,6865,5128,2353,7672,7673,7336,7334,7343,
- 7342,7338,7339,7337,7340,7341,7344,7335,5246,3782,
- 3751,7073,7078,7073,2620,2,161,3720,3644,4035,
- 7073,5084,5062,7092,7081,5172,5150,4988,1363,1525,
- 7094,1381,5491,1415,7095,7093,1360,7089,7090,7091,
- 5449,2644,7073,7073,329,2739,3905,3001,1637,6871,
- 6877,6874,3951,6868,39,6268,6265,5809,909,7073,
- 11533,11533,5194,4182,5106,7077,5128,2353,7672,7673,
- 7336,7334,7343,7342,7338,7339,7337,7340,7341,7344,
- 7335,5246,7073,6268,6265,5682,909,963,3970,1129,
- 6853,4182,7073,7080,5084,5062,7092,7073,5172,5150,
- 4988,1363,1525,7094,1381,5491,1415,7095,7093,1360,
- 7089,7090,7091,5449,39,6268,6265,5809,909,37,
- 7109,7073,5194,4182,5106,368,5128,2353,7672,7673,
- 7336,7334,7343,7342,7338,7339,7337,7340,7341,7344,
- 7335,5246,7073,1063,7073,6268,6265,100,909,37,
- 6767,6767,6853,4182,5084,5062,7092,6767,5172,5150,
- 4988,1363,1525,7094,1381,5491,1415,7095,7093,1360,
- 7089,7090,7091,5449,39,6268,6265,5809,909,7076,
- 7109,1637,5194,4182,5106,7073,5128,2353,7672,7673,
- 7336,7334,7343,7342,7338,7339,7337,7340,7341,7344,
- 7335,5246,595,7073,1434,3550,329,709,671,682,
- 2052,709,671,682,5084,5062,7092,6981,5172,5150,
- 4988,1363,1525,7094,1381,5491,1415,7095,7093,1360,
- 7089,7090,7091,5449,7073,7073,7073,39,6268,6265,
- 5809,909,7073,7073,2129,5194,4182,5106,7073,5128,
- 2353,7672,7673,7336,7334,7343,7342,7338,7339,7337,
- 7340,7341,7344,7335,5246,589,45,6935,6935,1,
- 709,671,682,37,6767,6767,2552,5084,5062,7092,
- 361,5172,5150,4988,1363,1525,7094,1381,5491,1415,
- 7095,7093,1360,7089,7090,7091,5449,39,6268,6265,
- 664,909,2198,7073,1637,5194,4182,5106,5756,5128,
- 2353,7672,7673,7336,7334,7343,7342,7338,7339,7337,
- 7340,7341,7344,7335,5246,415,7073,6932,7073,6038,
- 709,671,682,7073,2100,7073,3094,5084,5062,7092,
- 361,5172,5150,4988,1363,1525,7094,1381,5491,1415,
- 7095,7093,1360,7089,7090,7091,5449,39,6268,6265,
- 2759,909,3929,7073,361,5194,4182,5106,1668,5128,
- 2353,7672,7673,7336,7334,7343,7342,7338,7339,7337,
- 7340,7341,7344,7335,5246,591,99,1,590,7073,
- 6990,6996,6993,6999,7005,7002,7073,5084,5062,7092,
- 6880,5172,5150,4988,1363,1525,7094,1381,5491,1415,
- 7095,7093,1360,7089,7090,7091,5449,39,6268,6265,
- 5758,909,7073,7015,7011,5194,4182,5106,1206,5128,
- 2353,7672,7673,7336,7334,7343,7342,7338,7339,7337,
- 7340,7341,7344,7335,5246,416,7073,6883,3065,48,
- 709,671,682,7088,3385,7073,7022,5084,5062,7092,
- 7073,5172,5150,4988,1363,1525,7094,1381,5491,1415,
- 7095,7093,1360,7089,7090,7091,5449,39,6268,6265,
- 5782,909,334,7109,7073,5194,4182,5106,3053,5128,
- 2353,7672,7673,7336,7334,7343,7342,7338,7339,7337,
- 7340,7341,7344,7335,5246,403,7073,1,48,3155,
- 7408,7409,7087,7073,7088,7073,6886,5084,5062,7092,
- 6880,5172,5150,4988,1363,1525,7094,1381,5491,1415,
- 7095,7093,1360,7089,7090,7091,5449,39,6268,6265,
- 5809,909,7073,7073,7073,5194,4182,5106,6889,5128,
- 2353,7672,7673,7336,7334,7343,7342,7338,7339,7337,
- 7340,7341,7344,7335,5246,1,7073,6883,3065,3206,
- 100,7073,7073,7087,3934,3774,7083,5084,5062,7092,
- 139,5172,5150,4988,1363,1525,7094,1381,5491,1415,
- 7095,7093,1360,7089,7090,7091,5449,39,6268,6265,
- 2759,909,7073,7073,7073,5194,4182,5106,7082,5128,
- 2353,7672,7673,7336,7334,7343,7342,7338,7339,7337,
- 7340,7341,7344,7335,5246,1,73,7073,7073,130,
- 4239,4016,103,7073,7073,7019,191,5084,5062,7092,
- 6981,5172,5150,4988,1363,1525,7094,1381,5491,1415,
- 7095,7093,1360,7089,7090,7091,5449,39,6268,6265,
- 5809,909,7073,373,7073,5194,4182,5106,191,5128,
- 2353,7672,7673,7336,7334,7343,7342,7338,7339,7337,
- 7340,7341,7344,7335,5246,1,7073,1179,2,1,
- 7073,7043,277,5222,1535,7064,163,5084,5062,7092,
- 526,5172,5150,4988,1363,1525,7094,1381,5491,1415,
- 7095,7093,1360,7089,7090,7091,5449,1,366,7073,
- 1538,506,8,7073,504,7540,418,7534,7073,7538,
- 7079,3581,3491,7070,1,2310,32,386,386,6938,
- 386,386,386,386,386,386,6938,6938,6938,7073,
- 7073,103,7073,37,7019,6040,163,7532,7533,2361,
- 526,7563,7564,7541,386,386,386,386,386,386,
- 386,386,386,386,386,386,643,519,7073,6938,
- 7073,7073,7543,7073,7073,7073,7073,1037,7073,3929,
- 7078,1718,1719,7565,7544,988,7542,1494,7073,7073,
- 6043,3989,7070,6045,508,2593,6938,6938,7073,7073,
- 7554,7553,7073,7566,7073,7535,7536,7559,7560,7557,
- 7558,7537,7539,7561,7562,7079,7073,7073,2387,2409,
- 7567,7073,7547,7548,7549,7545,7546,7555,7556,7551,
- 7550,7552,7073,6268,6265,7073,7111,709,671,682,
- 7073,7073,7073,7073,7073,665,7672,7673,7336,7334,
- 7343,7342,7338,7339,7337,7340,7341,7344,7335,5030,
- 7408,7409,7332,7326,7333,7329,7305,7331,7330,7327,
- 7328,7306,1,3524,7073,7078,7073,7073,7073,7073,
- 1544,7073,7073,7079,240,6637,6633,7073,6641,6600,
- 6594,6597,7469,3929,3170,7470,7471,665,6647,6644,
- 6674,6680,6653,6656,6668,6665,6671,6662,6659,6650,
- 6677,5030,6606,6603,6612,6630,6609,6621,6591,6615,
- 6618,6627,6624,6588,572,580,580,580,580,580,
- 580,580,580,580,6974,6974,6974,75,127,7073,
- 6743,7073,7073,7078,7469,7073,3170,7470,7471,7073,
- 7073,7073,580,580,580,580,580,580,580,580,
- 580,580,580,580,95,7040,7040,6974,7034,7025,
- 7031,7028,7073,39,7037,7073,7037,7111,709,671,
- 682,6734,6731,329,7073,329,7073,7073,7073,7073,
- 7073,7046,7054,7050,580,6974,7073,7058,7079,7073,
- 7073,7073,7073,3844,7073,7073,7073,6746,7073,7073,
- 7073,7073,7073,7073,7073,6971,7073,7073,7073,7073,
- 7073,7073,7073,7073,7073,7073,7073,7073,7073,7058,
- 7073,7073,7073,7073,7073,7073,7073,7073,3782,3751,
- 7073,7073,7073,7073,7073,7073,3720,3644,7073,7073,
- 6737,7073,7073,7073,7073,7073,7073,7073,7078,7073,
- 7073,7073,7058,6056,6740
+ 1,1,1,1,1,1,1,11714,1,1,
+ 1,1,1,1,4702,4732,228,95,7056,7056,
+ 7089,7050,7041,7047,7044,7029,588,7053,1831,7053,
+ 7089,970,742,835,1,6272,1,1,1,7089,
+ 724,424,741,113,7300,1,6294,6290,3554,6287,
+ 6696,6702,6699,692,633,1,6294,6290,5917,6287,
+ 334,126,100,5398,633,5310,7587,5332,6800,6806,
+ 6803,6833,6839,6812,6815,6827,6824,6830,6821,6818,
+ 6809,6836,6842,7089,6281,6278,39,903,6981,6978,
+ 7127,692,633,4188,7089,5288,5266,139,7108,5376,
+ 5354,5191,1764,1978,7110,1862,5751,1956,7111,7109,
+ 1690,7105,7106,7107,5719,2594,1724,1493,2410,7089,
+ 6281,6278,1597,903,368,7089,3922,692,633,39,
+ 39,7008,514,39,6281,6278,5917,903,6908,5552,
+ 5592,5398,633,5310,7080,5332,1433,7689,7690,7352,
+ 7350,7359,7358,7354,7355,7353,7356,7357,7360,7351,
+ 5676,3858,3826,38,6714,6711,36,7005,7002,3794,
+ 3717,6708,633,5288,5266,3947,7108,5376,5354,5191,
+ 1764,1978,7110,1862,5751,1956,7111,7109,1690,7105,
+ 7106,7107,5719,7089,7103,7104,7522,7523,7524,300,
+ 1597,692,633,1434,1180,6881,39,6281,6278,5917,
+ 903,2665,7388,7096,5398,633,5310,6878,5332,1433,
+ 7689,7690,7352,7350,7359,7358,7354,7355,7353,7356,
+ 7357,7360,7351,5676,37,6780,6780,7089,394,970,
+ 742,835,385,7089,329,7089,5288,5266,7101,7108,
+ 5376,5354,5191,1764,1978,7110,1862,5751,1956,7111,
+ 7109,1690,7105,7106,7107,5719,7089,141,6281,6278,
+ 5917,903,136,1597,112,5398,633,5310,6881,5332,
+ 1433,7689,7690,7352,7350,7359,7358,7354,7355,7353,
+ 7356,7357,7360,7351,5676,7125,1,6294,6290,3691,
+ 6287,7089,124,1831,692,633,7089,5288,5266,7100,
+ 7108,5376,5354,5191,1764,1978,7110,1862,5751,1956,
+ 7111,7109,1690,7105,7106,7107,5719,7089,7089,7089,
+ 7103,7104,118,7089,1597,550,6281,6278,5917,903,
+ 7101,39,39,5398,633,5310,7089,5332,1433,7689,
+ 7690,7352,7350,7359,7358,7354,7355,7353,7356,7357,
+ 7360,7351,5676,1,7089,651,4006,7089,6508,6505,
+ 5552,5592,5103,5079,339,5288,5266,3001,7108,5376,
+ 5354,5191,1764,1978,7110,1862,5751,1956,7111,7109,
+ 1690,7105,7106,7107,5719,4702,4732,1,1772,128,
+ 4006,7100,1597,1,6294,6290,5917,6287,6921,39,
+ 39,5398,633,5310,7089,5332,6800,6806,6803,6833,
+ 6839,6812,6815,6827,6824,6830,6821,6818,6809,6836,
+ 6842,329,651,7089,339,115,6884,6890,6887,339,
+ 339,5449,1171,5288,5266,5151,7108,5376,5354,5191,
+ 1764,1978,7110,1862,5751,1956,7111,7109,1690,7105,
+ 7106,7107,5719,120,3922,119,651,7089,6924,7089,
+ 1597,39,6281,6278,5917,903,6984,39,39,5398,
+ 633,5310,6878,5332,1433,7689,7690,7352,7350,7359,
+ 7358,7354,7355,7353,7356,7357,7360,7351,5676,3858,
+ 3826,7089,7089,5103,5079,5103,5079,3794,3717,4252,
+ 3969,5288,5266,7097,7108,5376,5354,5191,1764,1978,
+ 7110,1862,5751,1956,7111,7109,1690,7105,7106,7107,
+ 5719,7089,1868,5127,4669,7089,7089,7089,1597,7089,
+ 7089,2387,1307,6881,39,6281,6278,5917,903,7089,
+ 7095,7095,5398,633,5310,7093,5332,1433,7689,7690,
+ 7352,7350,7359,7358,7354,7355,7353,7356,7357,7360,
+ 7351,5676,7089,6281,6278,1,903,7089,1129,39,
+ 6866,633,7096,7127,5288,5266,361,7108,5376,5354,
+ 5191,1764,1978,7110,1862,5751,1956,7111,7109,1690,
+ 7105,7106,7107,5719,39,6281,6278,5917,903,2721,
+ 7094,7094,5398,633,5310,123,5332,1433,7689,7690,
+ 7352,7350,7359,7358,7354,7355,7353,7356,7357,7360,
+ 7351,5676,596,2894,1,329,334,970,742,835,
+ 970,742,835,99,5288,5266,361,7108,5376,5354,
+ 5191,1764,1978,7110,1862,5751,1956,7111,7109,1690,
+ 7105,7106,7107,5719,7424,7425,7089,7089,7089,7092,
+ 361,6112,7089,2151,39,6281,6278,5917,903,7089,
+ 11497,11497,5398,633,5310,7089,5332,1433,7689,7690,
+ 7352,7350,7359,7358,7354,7355,7353,7356,7357,7360,
+ 7351,5676,7089,6281,6278,7089,903,2,4702,4732,
+ 6866,633,7038,7089,5288,5266,7095,7108,5376,5354,
+ 5191,1764,1978,7110,1862,5751,1956,7111,7109,1690,
+ 7105,7106,7107,5719,39,6281,6278,5917,903,4005,
+ 7125,1597,5398,633,5310,4066,5332,1433,7689,7690,
+ 7352,7350,7359,7358,7354,7355,7353,7356,7357,7360,
+ 7351,5676,590,2923,37,6780,6780,970,742,835,
+ 7089,7089,6780,6140,5288,5266,7094,7108,5376,5354,
+ 5191,1764,1978,7110,1862,5751,1956,7111,7109,1690,
+ 7105,7106,7107,5719,39,6281,6278,5833,903,519,
+ 7089,1597,5398,633,5310,366,5332,1433,7689,7690,
+ 7352,7350,7359,7358,7354,7355,7353,7356,7357,7360,
+ 7351,5676,7089,2997,7089,1814,45,6957,6957,37,
+ 6780,6780,7089,7095,5288,5266,1964,7108,5376,5354,
+ 5191,1764,1978,7110,1862,5751,1956,7111,7109,1690,
+ 7105,7106,7107,5719,39,6281,6278,5844,903,7089,
+ 6998,6994,5398,633,5310,2060,5332,1433,7689,7690,
+ 7352,7350,7359,7358,7354,7355,7353,7356,7357,7360,
+ 7351,5676,117,7089,1494,1,2691,6954,7089,1831,
+ 1718,7089,5151,7094,5288,5266,161,7108,5376,5354,
+ 5191,1764,1978,7110,1862,5751,1956,7111,7109,1690,
+ 7105,7106,7107,5719,39,6281,6278,5882,903,7089,
+ 7125,7089,5398,633,5310,3960,5332,1433,7689,7690,
+ 7352,7350,7359,7358,7354,7355,7353,7356,7357,7360,
+ 7351,5676,415,7089,100,592,122,970,742,835,
+ 7011,7017,7014,1311,5288,5266,161,7108,5376,5354,
+ 5191,1764,1978,7110,1862,5751,1956,7111,7109,1690,
+ 7105,7106,7107,5719,39,6281,6278,5898,903,7089,
+ 5127,4669,5398,633,5310,506,5332,1433,7689,7690,
+ 7352,7350,7359,7358,7354,7355,7353,7356,7357,7360,
+ 7351,5676,116,591,345,7089,7089,3127,7020,7026,
+ 7023,73,5151,7008,5288,5266,7093,7108,5376,5354,
+ 5191,1764,1978,7110,1862,5751,1956,7111,7109,1690,
+ 7105,7106,7107,5719,39,6281,6278,5917,903,4702,
+ 4732,7089,5398,633,5310,504,5332,1433,7689,7690,
+ 7352,7350,7359,7358,7354,7355,7353,7356,7357,7360,
+ 7351,5676,416,29,2824,7089,48,970,742,835,
+ 7104,3239,7089,651,5288,5266,7059,7108,5376,5354,
+ 5191,1764,1978,7110,1862,5751,1956,7111,7109,1690,
+ 7105,7106,7107,5719,39,6281,6278,5923,903,7089,
+ 5127,4669,5398,633,5310,7089,5332,1433,7689,7690,
+ 7352,7350,7359,7358,7354,7355,7353,7356,7357,7360,
+ 7351,5676,1,48,4068,2,7089,7103,1831,6155,
+ 7092,7104,7089,163,5288,5266,422,7108,5376,5354,
+ 5191,1764,1978,7110,1862,5751,1956,7111,7109,1690,
+ 7105,7106,7107,5719,39,6281,6278,5917,903,7089,
+ 7089,7089,5398,633,5310,7089,5332,1433,7689,7690,
+ 7352,7350,7359,7358,7354,7355,7353,7356,7357,7360,
+ 7351,5676,7089,7089,75,1,3388,6756,7103,7089,
+ 37,7089,3390,163,5288,5266,6726,7108,5376,5354,
+ 5191,1764,1978,7110,1862,5751,1956,7111,7109,1690,
+ 7105,7106,7107,5719,1,7089,7089,1301,3739,1,
+ 7089,8,7556,7089,7550,7089,7554,7095,6747,6744,
+ 6857,7097,7086,32,386,386,6927,386,386,386,
+ 386,386,386,6927,6927,6927,7089,7089,7089,3912,
+ 7089,7089,7089,6759,7548,7549,7089,7100,7579,7580,
+ 7557,386,386,386,386,386,386,386,386,386,
+ 386,386,386,7089,7089,6927,3573,3644,7089,7559,
+ 7089,4217,103,1627,403,7035,7089,7094,2130,2150,
+ 7581,7560,751,7558,7089,6899,2502,6750,2266,7096,
+ 7096,7086,6927,418,6927,7089,7089,7570,7569,1410,
+ 7582,6753,7551,7552,7575,7576,7573,7574,7553,7555,
+ 7577,7578,277,2314,4127,7077,6902,7583,7089,7563,
+ 7564,7565,7561,7562,7571,7572,7567,7566,7568,7089,
+ 6281,6278,1,7127,970,742,835,103,7089,7089,
+ 7035,5889,755,7689,7690,7352,7350,7359,7358,7354,
+ 7355,7353,7356,7357,7360,7351,5234,7424,7425,7348,
+ 7342,7349,7345,7321,7347,7346,7343,7344,7322,7089,
+ 7089,7089,2543,7089,1519,685,7089,7089,7089,7089,
+ 7089,240,6650,6646,7089,6654,6613,6607,6610,7485,
+ 7089,4255,7486,7487,755,6660,6657,6687,6693,6666,
+ 6669,6681,6678,6684,6675,6672,6663,6690,5234,6619,
+ 6616,6625,6643,6622,6634,6604,6628,6631,6640,6637,
+ 6601,572,580,580,580,580,580,580,580,580,
+ 580,6972,6972,6972,7089,7089,1,7089,7089,7089,
+ 127,7485,7089,4255,7486,7487,7095,7101,7099,580,
+ 580,580,580,580,580,580,580,580,580,580,
+ 580,7089,7089,6972,508,573,581,581,581,581,
+ 581,581,581,581,581,7032,7032,7032,7089,7098,
+ 7089,7089,7089,7062,7070,7066,7089,7089,7089,7074,
+ 580,7095,6972,581,581,581,581,581,581,581,
+ 581,581,581,581,581,3922,7094,7032,7100,7089,
+ 1,1544,1,3282,1,1,7089,6987,2362,7089,
+ 7074,7099,7089,526,7089,7095,191,7089,7089,7089,
+ 7089,7089,7089,7089,581,7089,7032,7089,7089,7089,
+ 3858,3826,7089,2829,7089,7089,7089,7089,3794,3717,
+ 7089,7094,7098,7089,7074,7089,4840,191,7089,7089,
+ 7089,7089,7089,7089,7089,7089,7089,7089,7089,7089,
+ 7089,7089,7089,7089,7089,7089,7089,7089,7089,7089,
+ 7089,7089,7089,526,7089,7094
};
};
public final static char termAction[] = TermAction.termAction;
@@ -2258,67 +2267,68 @@ public class GPPParserprs implements lpg.lpgjavaruntime.ParseTable, GPPParsersym
public interface Asb {
public final static char asb[] = {0,
- 1186,1,724,150,1057,1223,206,681,1281,633,
- 1185,1091,1006,555,1114,555,555,555,55,1114,
- 47,1114,629,1114,1114,1091,1009,1114,967,1101,
- 1095,42,1223,1173,617,1114,1114,1017,1009,1114,
- 1009,555,445,869,447,157,55,146,1009,1007,
- 141,677,356,1281,153,49,203,47,633,1091,
- 629,360,1009,1009,204,1093,967,967,967,967,
- 967,967,967,967,967,967,576,619,967,555,
- 445,445,445,445,1091,555,1114,54,54,801,
- 821,58,58,1176,855,800,1173,1173,1009,1234,
- 357,360,360,1114,299,357,1114,1114,445,1114,
- 1009,492,877,169,158,158,157,157,157,1091,
- 1009,1007,501,426,500,86,356,355,357,153,
- 1009,51,1298,438,204,55,136,1009,360,204,
- 1009,488,557,557,557,557,357,357,966,928,
- 1237,1056,492,1114,947,1057,1057,1057,1057,1009,
- 312,74,74,312,966,54,55,1091,821,255,
- 1173,1114,1009,966,576,1173,821,488,1114,1114,
- 360,360,1176,299,299,1007,877,169,157,138,
- 157,1009,801,801,141,801,423,1281,845,844,
- 356,138,1009,153,253,633,445,1005,1283,153,
- 51,439,54,51,54,204,136,136,1009,869,
- 834,758,763,760,767,765,774,772,776,775,
- 777,302,778,868,1009,1093,1009,357,947,357,
- 357,357,498,929,299,1056,966,357,357,869,
- 869,869,869,204,357,1006,1008,1006,357,299,
- 55,505,1009,555,299,791,1173,1180,357,138,
- 55,1173,821,1183,1114,869,869,1114,357,70,
- 830,69,868,445,432,432,138,138,1009,1010,
- 357,86,357,311,357,492,1285,54,54,54,
- 54,1009,136,138,624,82,1176,873,66,65,
- 967,967,967,967,967,967,967,967,967,967,
- 967,967,967,967,967,967,967,967,967,967,
- 967,966,966,966,966,966,966,966,966,966,
- 966,966,208,967,947,488,1120,1120,1091,619,
- 967,640,967,966,928,253,967,253,801,927,
- 555,555,555,929,555,1009,509,801,801,1009,
- 55,967,1057,1114,1114,357,555,555,555,555,
- 1009,1009,1009,1008,492,638,1091,1009,312,138,
- 576,1114,1114,812,966,67,67,871,1176,3,
- 169,158,169,867,867,801,357,845,1007,800,
- 967,253,822,849,797,1285,54,54,804,138,
- 967,1009,834,357,875,877,760,760,758,758,
- 758,765,765,765,765,765,765,763,763,772,
- 767,767,775,774,776,253,253,777,1009,492,
- 1124,918,929,253,1012,929,947,947,945,1015,
- 947,801,801,828,638,357,1114,1176,966,966,
- 966,966,555,555,1093,1009,1007,638,357,576,
- 1114,732,812,966,966,875,830,169,1057,1057,
- 311,801,1285,967,967,797,797,1285,1285,505,
- 1090,805,1009,357,877,966,966,204,1007,929,
- 967,929,357,1173,357,945,1223,555,357,638,
- 1114,1114,1114,966,1114,357,357,357,357,312,
- 312,496,1114,1093,919,555,82,1114,814,868,
- 797,797,804,1009,1091,1091,1009,861,357,1009,
- 929,828,929,801,1223,966,929,926,1114,312,
- 967,299,357,357,496,3,81,92,814,916,
- 1009,1009,1009,861,861,1157,966,927,312,801,
- 357,1114,357,299,357,357,1170,81,81,555,
- 432,1009,1009,863,861,929,357,801,55,55,
- 1172,878,867,863,863,929,845,1006,863,1057
+ 1142,1,751,206,43,1179,445,708,1237,1038,
+ 1141,77,1012,634,1062,634,634,634,1031,1062,
+ 1023,1062,1034,1062,1062,77,1015,1062,973,1049,
+ 1043,201,1179,1121,1299,1062,1062,3,1015,1062,
+ 1015,634,531,844,128,396,1031,291,1015,1013,
+ 513,680,388,1237,392,1025,442,1023,1038,77,
+ 1034,447,1015,1015,443,79,973,973,973,973,
+ 973,973,973,973,973,973,1239,1301,973,634,
+ 531,531,531,531,77,634,1062,1030,1030,833,
+ 699,185,185,1124,871,832,1121,1121,1015,1190,
+ 389,447,447,1062,125,389,1062,1062,531,1062,
+ 1015,173,883,408,397,397,396,396,396,77,
+ 1015,1013,639,518,638,285,388,387,389,392,
+ 1015,1027,1133,524,443,1031,280,1015,447,443,
+ 1015,169,1239,1239,1239,1239,389,389,389,934,
+ 850,953,1193,42,173,1062,953,43,43,43,
+ 43,1015,344,224,224,344,972,1030,1031,77,
+ 699,81,1121,1062,1015,972,1258,1121,699,169,
+ 1062,1062,447,447,1124,125,125,1013,883,408,
+ 396,282,396,1015,833,833,513,833,510,1237,
+ 861,860,388,282,1015,392,586,1038,531,1011,
+ 209,392,1027,525,1030,1027,1030,443,280,280,
+ 1015,844,790,795,792,799,797,806,804,808,
+ 807,809,334,810,843,1015,79,1015,389,389,
+ 389,389,935,1124,879,193,192,636,1068,1068,
+ 77,1301,973,643,125,42,972,389,389,844,
+ 844,844,844,443,389,972,1012,1014,1012,389,
+ 125,1031,684,1015,634,125,823,1121,1128,389,
+ 282,1031,1121,699,1131,1062,844,844,1062,389,
+ 197,846,196,843,531,179,179,282,282,1015,
+ 1016,389,285,389,343,389,173,211,1030,1030,
+ 1030,1030,1015,280,282,759,232,973,973,973,
+ 973,973,973,973,973,973,973,973,973,973,
+ 973,973,973,973,973,973,973,973,972,972,
+ 972,972,972,972,972,972,972,972,972,541,
+ 973,953,169,973,934,586,973,586,833,933,
+ 634,634,634,935,634,1015,588,833,833,1015,
+ 1031,850,389,881,883,972,1015,173,1072,1239,
+ 973,43,1062,1062,389,634,634,634,634,1015,
+ 1015,1015,1014,173,688,77,1015,344,282,1258,
+ 1062,1062,690,972,194,194,877,1124,295,408,
+ 397,408,842,842,833,389,861,1013,832,973,
+ 586,700,865,829,211,1030,1030,533,282,973,
+ 1015,792,792,790,790,790,797,797,797,797,
+ 797,797,795,795,804,799,799,807,806,808,
+ 586,586,809,924,935,586,1018,935,953,953,
+ 951,1021,953,833,833,706,688,389,883,443,
+ 1013,389,389,1062,1124,972,972,972,972,634,
+ 634,79,1015,1013,688,389,1258,1062,764,690,
+ 972,972,881,846,408,43,43,343,833,211,
+ 973,973,829,829,211,211,684,76,534,1015,
+ 972,972,935,973,935,389,1121,389,951,1179,
+ 634,389,688,836,389,1015,1072,1062,1062,1062,
+ 972,1062,389,389,389,389,344,344,177,1062,
+ 79,925,634,232,1062,692,843,829,829,533,
+ 1015,77,77,1015,935,706,935,833,1179,972,
+ 935,932,836,836,1105,1062,344,973,125,389,
+ 389,177,295,231,236,692,922,1015,1015,1015,
+ 972,933,344,833,389,838,836,1062,389,125,
+ 389,389,1118,231,231,634,179,1015,1015,935,
+ 389,833,838,838,1031,1031,1120,884,842,935,
+ 838,861,1012,43
};
};
public final static char asb[] = Asb.asb;
@@ -2326,137 +2336,137 @@ public class GPPParserprs implements lpg.lpgjavaruntime.ParseTable, GPPParsersym
public interface Asr {
public final static char asr[] = {0,
- 128,0,14,15,5,31,16,17,60,28,
- 18,62,32,33,19,34,35,20,21,36,
- 37,22,23,38,63,39,13,64,24,30,
- 25,29,26,1,2,4,27,6,7,95,
- 0,11,73,72,78,0,61,4,1,2,
- 6,7,5,73,72,11,0,5,78,73,
- 43,72,6,7,3,70,77,79,76,11,
- 71,95,0,9,4,61,8,1,2,0,
- 43,11,80,76,0,11,76,71,1,28,
- 0,74,75,67,44,45,12,10,40,41,
- 8,46,51,59,27,3,4,9,56,57,
- 58,42,54,49,53,17,26,16,22,20,
- 21,23,24,19,18,25,14,15,13,48,
- 52,50,47,55,72,1,2,80,11,0,
- 11,73,71,42,0,11,72,79,0,3,
- 29,0,110,111,112,73,80,9,11,3,
- 12,10,8,43,69,66,92,68,14,15,
- 5,31,16,17,60,28,18,62,32,33,
- 19,34,35,20,21,36,37,22,23,38,
- 63,39,13,64,24,30,25,29,26,27,
- 6,7,4,1,2,61,0,14,15,16,
+ 128,0,75,74,40,41,10,98,99,104,
+ 12,105,8,46,79,65,77,118,119,115,
+ 116,117,123,122,124,94,93,120,121,102,
+ 103,100,101,106,107,44,45,76,96,113,
+ 69,3,17,26,16,22,20,21,23,24,
+ 19,18,25,14,15,27,13,62,60,63,
+ 64,31,37,38,33,36,35,32,28,29,
+ 5,7,6,34,39,30,1,2,4,0,
+ 74,75,3,13,48,52,50,47,55,17,
+ 26,16,22,20,21,23,24,19,18,25,
+ 14,15,56,57,58,43,54,49,53,8,
+ 9,4,44,45,12,10,40,41,46,51,
+ 59,27,1,2,125,11,0,14,15,31,
+ 16,17,60,28,18,62,32,92,33,19,
+ 34,35,20,21,36,66,37,22,23,38,
+ 63,39,13,64,24,68,30,25,29,26,
+ 3,12,4,42,27,70,72,11,5,10,
+ 6,7,9,61,1,2,8,0,77,79,
+ 76,1,2,0,5,78,73,42,72,6,
+ 7,3,69,77,79,76,11,71,95,0,
+ 11,73,72,78,0,3,29,0,42,11,
+ 3,9,8,73,12,10,4,1,2,6,
+ 7,5,0,9,4,61,8,1,2,0,
+ 42,11,80,76,0,74,75,67,44,45,
+ 12,10,40,41,8,46,51,59,27,3,
+ 4,9,56,57,58,43,54,49,53,17,
+ 26,16,22,20,21,23,24,19,18,25,
+ 14,15,13,48,52,50,47,55,72,1,
+ 2,80,11,0,11,76,71,1,28,0,
+ 11,72,79,0,14,15,5,31,16,17,
+ 60,28,18,62,32,33,19,34,35,20,
+ 21,36,37,22,23,38,63,39,13,64,
+ 24,30,25,29,26,1,2,4,27,6,
+ 7,95,0,5,77,73,95,125,80,42,
+ 6,7,76,14,15,16,17,47,74,18,
+ 48,49,19,20,21,75,9,50,22,23,
+ 51,52,53,67,54,55,13,24,25,26,
+ 56,57,58,43,2,44,45,12,10,40,
+ 41,8,46,4,27,59,3,1,71,11,
+ 0,110,111,112,73,80,9,11,3,12,
+ 10,8,42,70,66,92,68,14,15,5,
+ 31,16,17,60,28,18,62,32,33,19,
+ 34,35,20,21,36,37,22,23,38,63,
+ 39,13,64,24,30,25,29,26,27,6,
+ 7,4,1,2,61,0,14,15,5,31,
+ 16,17,60,28,47,74,18,48,62,32,
+ 33,49,19,34,35,20,21,36,75,9,
+ 37,50,22,23,51,38,52,63,53,67,
+ 54,39,55,13,64,24,30,25,29,26,
+ 56,57,58,43,2,3,44,45,12,40,
+ 41,8,46,77,4,27,59,6,7,1,
+ 10,0,11,73,71,43,0,11,73,76,
+ 71,3,0,4,11,73,72,6,7,5,
+ 65,0,30,1,2,4,110,111,112,0,
+ 14,15,16,17,47,74,18,48,49,19,
+ 20,21,75,9,50,22,23,51,52,53,
+ 67,54,55,13,24,25,26,56,57,58,
+ 43,1,2,3,44,45,12,10,40,41,
+ 8,46,4,27,59,73,0,14,15,16,
17,47,74,18,48,49,19,20,21,75,
9,50,22,23,51,52,53,67,54,55,
- 13,24,25,26,56,57,58,42,1,2,
- 3,44,45,12,10,40,41,8,46,4,
- 27,59,73,0,74,75,3,13,48,52,
- 50,47,55,17,26,16,22,20,21,23,
- 24,19,18,25,14,15,56,57,58,42,
- 54,49,53,8,9,4,44,45,12,10,
- 40,41,46,51,59,27,1,2,125,11,
- 0,5,77,73,95,125,80,43,6,7,
- 76,14,15,16,17,47,74,18,48,49,
- 19,20,21,75,9,50,22,23,51,52,
- 53,67,54,55,13,24,25,26,56,57,
- 58,42,2,44,45,12,10,40,41,8,
- 46,4,27,59,3,1,71,11,0,14,
- 15,5,31,16,17,60,28,47,74,18,
- 48,62,32,33,49,19,34,35,20,21,
- 36,75,9,37,50,22,23,51,38,52,
- 63,53,67,54,39,55,13,64,24,30,
- 25,29,26,56,57,58,42,2,3,44,
- 45,12,40,41,8,46,77,4,27,59,
- 6,7,1,10,0,11,73,76,71,3,
- 0,77,79,76,1,2,0,4,11,73,
- 72,6,7,5,65,0,14,15,31,16,
- 17,60,28,18,62,32,92,33,19,34,
- 35,20,21,36,66,37,22,23,38,63,
- 39,13,64,24,68,30,25,29,26,3,
- 12,4,43,27,69,72,11,5,10,6,
- 7,9,61,1,2,8,0,125,43,76,
- 71,11,73,0,11,72,76,0,14,15,
- 16,17,47,74,18,48,49,19,20,21,
- 75,9,50,22,23,51,52,53,67,54,
- 55,13,24,25,26,56,57,58,42,1,
- 2,44,45,12,10,40,41,8,46,4,
- 27,59,43,11,3,0,5,31,60,28,
- 62,32,33,34,35,36,37,38,63,39,
- 64,30,29,6,7,14,15,16,17,47,
- 18,48,49,19,20,21,50,22,23,51,
- 52,53,67,54,55,13,24,25,26,56,
- 57,58,42,3,44,45,12,10,40,41,
- 46,4,27,59,72,11,9,8,1,2,
- 75,74,0,11,76,80,79,0,4,6,
- 7,5,72,11,1,2,0,126,0,14,
- 15,5,31,16,17,28,18,32,33,19,
- 34,35,20,21,36,9,37,22,23,38,
- 39,24,30,25,29,26,1,2,70,12,
- 10,8,4,43,6,7,71,11,3,0,
- 60,28,18,62,32,19,34,35,20,21,
- 36,37,22,23,38,63,39,64,24,30,
- 25,29,26,17,16,31,27,15,14,11,
- 3,12,10,43,68,92,33,69,65,6,
- 7,5,61,9,1,2,8,4,13,66,
- 0,31,32,33,34,35,36,9,37,38,
- 67,78,39,30,1,2,70,3,127,113,
- 44,45,8,4,72,28,29,97,96,10,
- 98,99,40,41,94,93,65,100,101,108,
- 109,102,103,12,104,105,106,77,71,79,
- 115,116,117,118,119,120,121,122,123,124,
- 73,95,125,80,107,114,6,7,5,76,
- 43,11,0,30,1,2,4,110,111,112,
- 0,28,29,67,78,77,73,95,71,72,
- 3,5,11,76,43,6,7,79,0,95,
- 9,8,79,77,5,1,2,12,10,4,
- 6,7,70,3,71,11,76,0,73,5,
- 70,6,7,65,11,76,43,79,3,0,
- 28,29,67,11,95,71,79,76,77,0,
- 8,9,3,70,10,12,95,14,15,5,
- 31,16,17,28,18,62,32,33,19,34,
- 35,20,21,36,37,22,23,38,63,39,
- 13,64,24,30,25,29,26,1,2,4,
- 27,6,7,71,11,60,0,71,92,110,
- 111,112,61,73,128,126,129,80,69,78,
- 68,66,82,84,90,88,81,86,87,89,
- 91,72,83,85,43,11,5,31,60,28,
- 62,32,33,34,35,36,37,38,63,39,
- 64,30,29,6,7,67,74,75,48,52,
- 50,47,55,17,26,16,22,20,21,23,
- 24,19,18,25,14,15,56,57,58,42,
- 54,49,53,3,44,45,12,10,40,41,
- 46,51,59,27,13,4,9,8,2,1,
- 0,73,95,0,81,0,75,74,40,41,
- 10,98,99,104,12,105,8,46,79,65,
- 77,118,119,115,116,117,123,122,124,94,
- 93,120,121,102,103,100,101,106,107,44,
- 45,76,96,113,70,3,17,26,16,22,
- 20,21,23,24,19,18,25,14,15,27,
- 13,62,60,63,64,31,37,38,33,36,
- 35,32,28,29,5,7,6,34,39,30,
- 1,2,4,0,27,13,62,60,63,64,
- 17,26,16,22,20,21,23,24,19,18,
- 25,14,15,78,73,95,125,80,72,127,
- 113,44,45,97,96,40,41,98,99,93,
- 94,65,77,100,101,102,103,104,105,106,
- 107,114,79,115,116,117,118,119,120,121,
- 122,123,124,76,108,109,31,28,32,33,
- 34,35,36,37,38,39,30,29,43,11,
- 71,70,8,9,3,12,1,2,4,6,
- 7,5,10,0,80,14,15,31,16,17,
- 60,28,18,62,32,19,34,35,20,21,
- 36,37,22,23,38,63,39,13,64,24,
- 30,25,29,26,27,128,69,66,33,92,
- 68,61,5,11,43,6,7,8,9,1,
- 2,4,3,10,12,0,74,75,44,45,
- 12,10,40,41,8,46,51,59,27,3,
- 4,9,56,57,58,54,49,53,17,26,
+ 13,24,25,26,56,57,58,43,1,2,
+ 44,45,12,10,40,41,8,46,4,27,
+ 59,42,11,3,0,125,42,76,71,11,
+ 73,0,14,15,5,31,16,17,28,18,
+ 32,33,19,34,35,20,21,36,9,37,
+ 22,23,38,39,24,30,25,29,26,1,
+ 2,69,12,10,8,4,42,6,7,71,
+ 11,3,0,11,72,76,0,126,0,28,
+ 29,67,78,77,73,95,71,72,3,5,
+ 11,76,42,6,7,79,0,60,28,18,
+ 62,32,19,34,35,20,21,36,37,22,
+ 23,38,63,39,64,24,30,25,29,26,
+ 17,16,31,27,15,14,11,3,12,10,
+ 42,68,92,33,70,65,6,7,5,61,
+ 9,1,2,8,4,13,66,0,11,76,
+ 80,79,0,31,32,33,34,35,36,9,
+ 37,38,67,78,39,30,1,2,69,3,
+ 127,113,44,45,8,4,72,28,29,97,
+ 96,10,98,99,40,41,94,93,65,100,
+ 101,108,109,102,103,12,104,105,106,77,
+ 71,79,115,116,117,118,119,120,121,122,
+ 123,124,73,95,125,80,107,114,6,7,
+ 5,76,42,11,0,28,29,67,11,95,
+ 71,79,76,77,0,95,9,8,79,77,
+ 5,1,2,12,10,4,6,7,69,3,
+ 71,11,76,0,73,5,69,6,7,65,
+ 11,76,42,79,3,0,8,9,3,69,
+ 10,12,95,14,15,5,31,16,17,28,
+ 18,62,32,33,19,34,35,20,21,36,
+ 37,22,23,38,63,39,13,64,24,30,
+ 25,29,26,1,2,4,27,6,7,71,
+ 11,60,0,71,92,110,111,112,61,73,
+ 128,126,129,80,70,78,68,66,82,84,
+ 90,88,81,86,87,89,91,72,83,85,
+ 42,11,62,60,63,64,31,37,38,33,
+ 36,35,30,32,28,29,5,7,6,34,
+ 39,67,74,75,48,52,50,47,55,17,
+ 26,16,22,20,21,23,24,19,18,25,
+ 14,15,56,57,58,43,54,49,53,3,
+ 44,45,12,10,40,41,46,51,59,27,
+ 13,4,9,8,2,1,0,73,95,0,
+ 81,0,61,4,1,2,6,7,5,73,
+ 72,11,0,4,6,7,5,72,11,1,
+ 2,0,27,13,62,60,63,64,17,26,
16,22,20,21,23,24,19,18,25,14,
- 15,13,48,52,50,47,55,70,1,2,
- 42,0,43,11,3,9,8,73,12,10,
- 4,1,2,6,7,5,0,4,11,73,
- 72,6,7,5,0
+ 15,78,73,95,125,80,72,127,113,44,
+ 45,97,96,40,41,98,99,93,94,65,
+ 77,100,101,102,103,104,105,106,107,114,
+ 79,115,116,117,118,119,120,121,122,123,
+ 124,76,108,109,31,28,32,33,34,35,
+ 36,37,38,39,30,29,42,11,71,69,
+ 8,9,3,12,1,2,4,6,7,5,
+ 10,0,4,11,73,72,6,7,5,0,
+ 80,14,15,31,16,17,60,28,18,62,
+ 32,19,34,35,20,21,36,37,22,23,
+ 38,63,39,13,64,24,30,25,29,26,
+ 27,128,70,66,33,92,68,61,5,11,
+ 42,6,7,8,9,1,2,4,3,10,
+ 12,0,74,75,44,45,12,10,40,41,
+ 8,46,51,59,27,3,4,9,56,57,
+ 58,54,49,53,17,26,16,22,20,21,
+ 23,24,19,18,25,14,15,13,48,52,
+ 50,47,55,69,1,2,43,0,5,31,
+ 60,28,62,32,33,34,35,36,37,38,
+ 63,39,64,30,29,6,7,67,44,45,
+ 12,10,40,41,46,51,59,27,3,4,
+ 56,57,58,43,54,49,53,17,26,16,
+ 22,20,21,23,24,19,18,25,14,15,
+ 13,48,52,50,47,55,72,11,9,8,
+ 1,2,75,74,0
};
};
public final static char asr[] = Asr.asr;
@@ -2464,67 +2474,68 @@ public class GPPParserprs implements lpg.lpgjavaruntime.ParseTable, GPPParsersym
public interface Nasb {
public final static char nasb[] = {0,
- 235,13,19,81,5,282,13,194,13,21,
- 194,70,70,13,254,13,13,13,209,254,
- 147,254,147,254,13,11,228,254,66,253,
- 246,222,140,217,177,13,13,231,271,13,
- 228,13,13,13,208,222,209,13,264,264,
- 77,307,16,13,222,83,70,262,21,70,
- 262,222,228,12,13,13,66,66,66,66,
- 66,66,66,66,66,66,159,228,267,13,
- 13,13,13,13,70,13,13,222,44,156,
- 147,26,26,291,59,13,173,256,228,13,
- 307,222,222,113,107,307,13,13,13,13,
- 12,133,222,222,194,194,222,235,222,70,
- 126,177,307,13,13,46,72,13,307,274,
- 84,147,147,13,264,209,222,264,34,53,
- 84,94,158,158,158,158,307,307,66,56,
- 66,61,133,13,190,39,39,39,39,228,
- 48,28,28,48,168,44,137,98,262,102,
- 173,262,228,128,64,141,147,243,147,147,
- 34,34,291,107,107,177,151,151,235,57,
- 235,264,156,156,77,156,13,77,307,13,
- 307,57,228,156,13,125,13,19,281,274,
- 147,147,222,262,222,53,222,272,12,13,
- 182,13,13,13,13,13,13,13,13,13,
- 13,66,13,13,84,13,12,307,1,307,
- 307,307,13,205,107,39,128,307,307,13,
- 13,13,13,132,307,176,228,176,307,107,
- 137,13,264,13,107,13,257,147,307,222,
- 209,256,262,13,222,13,13,297,307,13,
- 215,13,13,13,111,111,57,57,126,13,
- 307,46,307,66,307,133,140,222,222,14,
- 14,84,272,57,13,13,291,181,26,26,
- 66,66,66,66,66,66,66,66,66,66,
- 66,66,66,66,66,66,66,66,66,66,
- 66,66,66,66,66,66,66,66,66,66,
- 66,66,90,66,34,94,13,13,11,228,
- 66,13,66,66,164,13,118,13,156,13,
- 13,13,13,165,13,272,154,156,156,272,
- 161,66,39,222,87,307,13,13,13,13,
- 84,12,228,211,133,222,98,12,48,57,
- 222,147,199,222,66,13,13,214,291,151,
- 151,194,222,13,13,156,307,307,177,156,
- 66,13,75,13,147,256,14,14,201,57,
- 66,272,295,307,289,222,13,13,13,13,
+ 252,13,34,54,5,57,13,203,13,29,
+ 203,96,96,13,265,13,13,13,212,265,
+ 173,265,173,265,13,11,41,265,92,264,
+ 257,232,166,227,195,13,13,14,285,13,
+ 41,13,13,13,211,232,212,13,270,270,
+ 135,302,122,13,232,199,96,279,29,96,
+ 279,232,41,12,13,13,92,92,92,92,
+ 92,92,92,92,92,92,294,41,281,13,
+ 13,13,13,13,96,13,13,232,133,177,
+ 173,52,52,290,72,13,191,273,41,13,
+ 302,232,232,36,23,302,13,13,13,13,
+ 12,76,232,232,203,203,232,252,232,96,
+ 151,195,302,13,13,107,64,13,302,234,
+ 200,173,173,13,270,212,232,270,44,84,
+ 200,112,294,294,294,294,302,302,302,69,
+ 242,1,92,105,76,13,296,49,49,49,
+ 49,41,109,78,78,109,218,133,184,98,
+ 279,18,191,279,41,102,90,167,173,267,
+ 173,173,44,44,290,23,23,195,181,181,
+ 252,70,252,270,177,177,135,177,13,135,
+ 302,13,302,70,41,177,13,150,13,34,
+ 56,234,173,173,232,279,232,84,232,286,
+ 12,13,13,13,13,13,13,13,13,13,
+ 13,13,92,13,13,200,13,12,302,302,
+ 302,302,208,290,241,52,52,13,13,13,
+ 11,41,92,13,23,49,102,302,302,13,
+ 13,13,13,75,302,92,194,41,194,302,
+ 23,184,13,270,13,23,13,274,173,302,
+ 232,212,273,279,13,232,13,13,248,302,
+ 13,225,13,13,13,39,39,70,70,151,
+ 13,302,107,302,92,302,76,166,232,232,
+ 131,131,200,286,70,13,13,92,92,92,
+ 92,92,92,92,92,92,92,92,92,92,
+ 92,92,92,92,92,92,92,92,92,92,
+ 92,92,92,92,92,92,92,92,92,162,
+ 92,44,112,92,214,13,143,13,177,13,
+ 13,13,13,215,13,286,175,177,177,286,
+ 140,246,302,288,232,92,41,76,13,294,
+ 92,49,232,137,302,13,13,13,13,200,
+ 12,41,157,76,232,98,12,109,70,232,
+ 173,160,232,92,13,13,224,290,181,181,
+ 203,232,13,13,177,302,302,195,177,92,
+ 13,187,13,173,273,131,131,153,70,92,
+ 286,13,13,13,13,13,13,13,13,13,
13,13,13,13,13,13,13,13,13,13,
- 13,13,13,13,13,13,13,13,228,133,
- 13,13,165,13,13,165,224,224,149,13,
- 224,156,156,13,222,307,116,297,168,168,
- 168,168,13,13,13,271,84,51,307,64,
- 222,199,199,66,66,289,171,151,39,39,
- 66,156,141,66,66,262,147,256,13,13,
- 70,79,264,307,151,66,66,131,84,165,
- 66,165,307,217,307,301,222,13,307,51,
- 222,24,13,168,297,307,307,307,307,48,
- 48,212,13,13,109,13,57,199,222,13,
- 147,262,186,264,70,70,12,222,307,84,
- 165,13,165,156,141,168,165,109,116,48,
- 66,107,307,307,212,39,42,63,135,13,
- 12,264,264,199,222,13,66,13,240,156,
- 307,24,307,107,307,307,222,42,13,13,
- 111,12,12,222,199,165,307,156,161,161,
- 215,305,13,135,222,165,307,176,135,39
+ 13,13,13,13,215,13,13,215,304,304,
+ 179,13,304,177,177,13,232,302,181,74,
+ 200,302,302,120,248,218,218,218,218,13,
+ 13,13,285,200,67,302,90,232,160,160,
+ 92,92,288,189,181,49,49,92,177,167,
+ 92,92,279,173,273,13,13,96,125,270,
+ 92,92,215,92,215,302,227,302,25,232,
+ 13,302,67,232,302,200,13,232,127,13,
+ 218,248,302,302,302,302,109,109,158,13,
+ 13,32,13,70,160,232,13,173,279,116,
+ 270,96,96,12,215,13,215,177,167,218,
+ 215,32,160,232,13,120,109,92,23,302,
+ 302,158,49,87,89,129,13,12,270,270,
+ 92,13,221,177,302,232,160,127,302,23,
+ 302,302,232,87,13,13,39,12,12,215,
+ 302,177,129,232,140,140,225,300,13,215,
+ 129,302,194,49
};
};
public final static char nasb[] = Nasb.nasb;
@@ -2533,36 +2544,36 @@ public class GPPParserprs implements lpg.lpgjavaruntime.ParseTable, GPPParsersym
public interface Nasr {
public final static char nasr[] = {0,
13,3,10,9,162,187,160,131,159,158,
- 5,2,0,118,0,215,31,0,167,0,
- 1,43,0,152,0,87,0,5,2,9,
- 10,150,0,5,10,9,2,13,4,48,
- 0,173,0,170,0,183,0,4,103,0,
- 172,0,2,73,0,4,81,0,198,0,
- 189,0,81,139,43,13,2,9,10,5,
- 0,31,185,0,205,0,146,0,207,0,
- 216,0,50,2,3,0,4,191,0,4,
- 44,125,0,73,149,148,0,180,5,179,
- 0,13,2,9,10,5,89,0,124,0,
- 116,0,4,209,0,154,0,13,2,9,
- 10,5,218,0,43,112,0,4,35,0,
- 2,125,73,0,136,0,43,171,0,97,
- 4,5,10,9,2,67,41,0,44,195,
- 23,4,0,4,44,45,0,48,4,44,
- 43,54,0,81,43,53,74,4,44,0,
- 101,100,41,67,69,5,10,9,2,0,
- 31,100,101,4,0,5,108,176,0,4,
- 48,44,0,4,53,88,90,0,70,0,
- 5,108,206,0,53,44,193,4,43,0,
- 2,126,0,31,101,100,67,5,2,9,
- 10,4,0,4,48,110,0,2,50,0,
- 4,48,210,0,111,88,53,4,0,4,
- 192,0,41,73,0,2,5,131,127,128,
- 129,147,13,93,0,4,5,10,9,2,
- 67,24,0,2,68,0,5,10,9,13,
- 3,1,0,4,53,88,108,51,5,0,
- 45,5,2,9,10,4,169,0,23,4,
- 5,41,97,0,101,100,41,5,69,0,
- 48,4,194,0,48,4,31,0
+ 5,2,0,4,48,210,0,13,2,9,
+ 10,5,89,0,48,4,194,0,1,43,
+ 0,124,0,167,0,4,209,0,116,0,
+ 2,50,0,5,10,9,2,13,4,48,
+ 0,87,0,216,0,45,5,2,9,10,
+ 4,169,0,30,185,0,172,0,4,81,
+ 0,198,0,2,125,73,0,5,2,9,
+ 10,150,0,2,73,0,173,0,81,139,
+ 43,13,2,9,10,5,0,180,5,179,
+ 0,4,34,0,189,0,183,0,4,103,
+ 0,73,149,148,0,5,108,176,0,154,
+ 0,215,30,0,207,0,152,0,136,0,
+ 118,0,170,0,146,0,4,191,0,43,
+ 51,0,13,2,9,10,5,218,0,43,
+ 112,0,5,108,206,0,2,126,0,70,
+ 0,4,44,125,0,97,4,5,10,9,
+ 2,67,41,0,4,44,45,0,44,195,
+ 22,4,0,43,171,0,205,0,101,100,
+ 41,67,69,5,10,9,2,0,50,2,
+ 3,0,4,54,88,90,0,54,44,193,
+ 4,43,0,81,43,54,74,4,44,0,
+ 4,192,0,30,101,100,67,5,2,9,
+ 10,4,0,4,54,88,108,52,5,0,
+ 30,100,101,4,0,101,100,41,5,69,
+ 0,111,88,54,4,0,2,5,131,127,
+ 128,129,147,13,93,0,41,73,0,2,
+ 68,0,4,5,10,9,2,67,24,0,
+ 5,10,9,13,3,1,0,22,4,5,
+ 41,97,0,43,51,4,48,44,0,48,
+ 4,30,0,4,48,110,0
};
};
public final static char nasr[] = Nasr.nasr;
@@ -2574,9 +2585,9 @@ public class GPPParserprs implements lpg.lpgjavaruntime.ParseTable, GPPParsersym
119,9,104,48,49,52,56,64,72,78,
79,90,91,106,109,111,126,58,110,108,
51,68,70,74,77,80,87,93,102,11,
- 12,116,124,7,8,14,59,65,71,88,
+ 12,124,116,7,8,14,59,65,71,88,
92,94,98,101,103,113,114,115,127,57,
- 97,67,95,105,19,81,99,107,130,1,
+ 97,67,95,105,19,81,99,107,1,130,
122,125,30,62,82,44,20,100,33,123,
112,53,54,60,61,63,73,75,76,89,
96,69,17,18,32,6,4,15,16,21,
@@ -2592,11 +2603,11 @@ public class GPPParserprs implements lpg.lpgjavaruntime.ParseTable, GPPParsersym
public final static char nonterminalIndex[] = {0,
137,142,143,0,0,141,0,0,236,242,
140,0,150,139,0,0,149,155,0,0,
- 156,165,187,251,0,0,0,166,167,168,
- 133,169,170,171,158,172,173,174,175,0,
+ 156,187,165,251,0,0,0,166,167,133,
+ 168,169,170,158,171,172,173,174,175,0,
252,148,136,138,135,176,0,159,145,144,
- 184,0,0,179,0,0,0,0,0,0,
- 0,211,0,0,152,208,212,0,162,193,
+ 179,184,0,0,0,0,0,0,0,0,
+ 152,0,211,0,0,208,212,0,162,193,
182,0,0,178,0,0,0,0,0,0,
134,0,0,0,0,0,213,0,132,185,
0,0,192,0,0,164,209,219,215,216,
@@ -2624,17 +2635,17 @@ public class GPPParserprs implements lpg.lpgjavaruntime.ParseTable, GPPParsersym
366,388,410,428,112,377,495,533,252,697,
583,90,121,141,150,155,160,215,280,383,
421,436,441,65,229,358,372,611,97,229,
- 485,441,716,97,302,333,1,53,57,61,
- 73,84,131,146,176,446,464,468,551,576,
- 605,632,636,726,730,734,167,77,167,513,
- 529,542,560,624,186,186,314,542,647,663,
- 674,685,292,594,13,25,48,126,126,241,
- 307,7,126,328,349,7,7,126,472,573,
- 580,241,126,749,7,42,180,450,517,557,
- 567,126,195,401,450,195,195,401,504,262,
- 18,18,33,174,33,33,33,33,555,738,
- 745,18,18,37,323,738,745,135,523,222,
- 174,323,174,338
+ 485,441,716,97,302,333,1,37,37,57,
+ 61,73,84,131,146,176,446,464,468,551,
+ 576,605,632,636,726,730,734,167,77,167,
+ 513,529,542,560,624,186,186,314,542,647,
+ 663,674,685,292,594,13,25,54,126,126,
+ 241,307,7,126,328,349,7,7,126,472,
+ 573,580,241,126,749,7,48,180,450,517,
+ 557,567,126,195,401,450,195,195,401,504,
+ 262,18,18,33,174,33,33,33,33,555,
+ 738,745,18,18,43,323,738,745,135,523,
+ 222,174,323,174,338
};
};
public final static char scopePrefix[] = ScopePrefix.scopePrefix;
@@ -2642,21 +2653,21 @@ public class GPPParserprs implements lpg.lpgjavaruntime.ParseTable, GPPParsersym
public interface ScopeSuffix {
public final static char scopeSuffix[] = {
- 88,51,51,220,51,51,51,51,482,220,
+ 88,41,41,220,41,41,41,41,482,220,
165,220,220,434,118,363,501,539,258,137,
589,95,95,95,129,129,165,220,285,220,
426,426,434,70,234,363,171,616,108,237,
- 490,703,721,102,296,296,5,51,51,51,
- 51,88,51,129,165,426,165,165,220,331,
- 51,51,51,51,51,331,747,81,171,482,
- 482,482,564,616,190,204,318,546,651,651,
- 651,651,296,598,16,16,51,129,129,51,
- 51,310,312,331,51,5,5,312,165,51,
- 331,51,609,51,10,45,183,453,520,45,
- 570,628,190,416,619,198,209,404,507,265,
- 23,31,35,165,456,458,460,462,165,740,
- 740,20,28,39,325,742,742,137,525,224,
- 287,318,272,340
+ 490,703,721,102,296,296,5,41,41,41,
+ 41,41,88,41,129,165,426,165,165,220,
+ 331,41,41,41,41,41,331,747,81,171,
+ 482,482,482,564,616,190,204,318,546,651,
+ 651,651,651,296,598,16,16,41,129,129,
+ 41,41,310,312,331,41,5,5,312,165,
+ 41,331,41,609,41,10,51,183,453,520,
+ 51,570,628,190,416,619,198,209,404,507,
+ 265,23,31,35,165,456,458,460,462,165,
+ 740,740,20,28,45,325,742,742,137,525,
+ 224,287,318,272,340
};
};
public final static char scopeSuffix[] = ScopeSuffix.scopeSuffix;
@@ -2664,21 +2675,21 @@ public class GPPParserprs implements lpg.lpgjavaruntime.ParseTable, GPPParsersym
public interface ScopeLhs {
public final static char scopeLhs[] = {
- 51,17,17,129,17,17,17,17,77,92,
- 52,85,129,128,82,58,77,76,51,17,
- 19,3,7,8,176,176,175,127,51,86,
- 128,128,130,25,138,59,52,150,143,138,
- 77,17,17,143,102,61,71,18,18,182,
- 145,80,179,176,175,130,196,56,54,154,
- 18,17,17,17,17,17,12,124,175,77,
- 76,76,40,150,140,140,69,76,17,17,
- 17,17,102,19,119,135,16,180,176,198,
- 100,107,63,87,62,169,71,130,78,155,
- 154,189,150,16,71,75,175,130,110,75,
- 21,150,140,129,150,140,140,129,77,51,
- 119,135,187,175,161,160,159,158,72,148,
- 50,119,135,218,69,148,50,179,110,127,
- 51,69,51,61
+ 52,17,17,129,17,17,17,17,77,92,
+ 53,85,129,128,82,58,77,76,52,17,
+ 19,3,7,8,176,176,175,127,52,86,
+ 128,128,130,25,138,59,53,150,143,138,
+ 77,17,17,143,102,62,71,147,18,18,
+ 182,145,80,179,176,175,130,196,56,51,
+ 154,18,17,17,17,17,17,12,124,175,
+ 77,76,76,40,150,140,140,69,76,17,
+ 17,17,17,102,19,119,135,16,180,176,
+ 198,100,107,64,87,63,169,71,130,78,
+ 155,154,189,150,16,71,75,175,130,110,
+ 75,21,150,140,129,150,140,140,129,77,
+ 52,119,135,187,175,161,160,159,158,72,
+ 148,50,119,135,218,69,148,50,179,110,
+ 127,52,69,52,62
};
};
public final static char scopeLhs[] = ScopeLhs.scopeLhs;
@@ -2687,20 +2698,20 @@ public class GPPParserprs implements lpg.lpgjavaruntime.ParseTable, GPPParsersym
public interface ScopeLa {
public final static char scopeLa[] = {
126,71,71,80,71,71,71,71,71,80,
- 43,80,80,1,77,1,71,129,72,3,
- 71,77,77,77,1,1,43,80,72,80,
+ 42,80,80,1,77,1,71,129,72,3,
+ 71,77,77,77,1,1,42,80,72,80,
1,1,1,71,80,1,1,4,77,76,
- 43,1,1,77,71,71,1,71,71,71,
- 71,126,71,1,43,1,43,43,80,125,
- 71,71,71,71,71,125,1,71,1,71,
- 71,71,73,4,1,1,10,71,77,77,
- 77,77,71,3,6,6,71,1,1,71,
- 71,3,1,125,71,1,1,1,43,71,
- 125,71,8,71,6,73,1,61,79,73,
- 71,1,1,72,61,1,1,1,81,78,
- 1,1,27,43,1,62,60,60,43,4,
- 4,1,1,95,12,4,4,3,1,72,
- 1,10,1,3
+ 42,1,1,77,71,71,1,71,71,71,
+ 71,71,126,71,1,42,1,42,42,80,
+ 125,71,71,71,71,71,125,1,71,1,
+ 71,71,71,73,4,1,1,10,71,77,
+ 77,77,77,71,3,6,6,71,1,1,
+ 71,71,3,1,125,71,1,1,1,42,
+ 71,125,71,8,71,6,73,1,61,79,
+ 73,71,1,1,72,61,1,1,1,81,
+ 78,1,1,27,42,1,62,60,60,42,
+ 4,4,1,1,95,12,4,4,3,1,
+ 72,1,10,1,3
};
};
public final static char scopeLa[] = ScopeLa.scopeLa;
@@ -2708,21 +2719,21 @@ public class GPPParserprs implements lpg.lpgjavaruntime.ParseTable, GPPParsersym
public interface ScopeStateSet {
public final static char scopeStateSet[] = {
- 361,223,223,300,223,223,223,223,372,387,
- 361,385,300,300,385,363,372,372,361,223,
- 223,150,194,194,21,21,55,300,361,385,
- 300,300,300,304,296,363,361,47,40,296,
- 372,223,223,40,67,126,132,223,223,58,
- 1,372,44,21,55,300,38,363,75,13,
- 223,223,223,223,223,223,198,8,55,372,
- 372,372,261,47,300,300,345,372,223,223,
- 223,223,67,223,142,98,223,44,21,61,
- 67,69,126,63,126,147,132,300,372,5,
- 13,50,47,223,132,372,55,300,16,372,
- 228,47,300,300,47,300,300,300,372,361,
- 142,98,301,55,301,301,301,301,26,52,
- 102,142,98,24,345,52,102,44,16,300,
- 361,345,361,126
+ 362,228,228,151,228,228,228,228,373,388,
+ 362,386,151,151,386,364,373,373,362,228,
+ 228,155,199,199,21,21,55,151,362,386,
+ 151,151,151,305,301,364,362,47,40,301,
+ 373,228,228,40,67,127,133,151,228,228,
+ 58,1,373,44,21,55,151,38,364,75,
+ 13,228,228,228,228,228,228,203,8,55,
+ 373,373,373,266,47,151,151,346,373,228,
+ 228,228,228,67,228,143,99,228,44,21,
+ 61,67,69,127,63,127,148,133,151,373,
+ 5,13,50,47,228,133,373,55,151,16,
+ 373,233,47,151,151,47,151,151,151,373,
+ 362,143,99,152,55,152,152,152,152,26,
+ 52,103,143,99,24,346,52,103,44,16,
+ 151,362,346,362,127
};
};
public final static char scopeStateSet[] = ScopeStateSet.scopeStateSet;
@@ -2733,12 +2744,12 @@ public class GPPParserprs implements lpg.lpgjavaruntime.ParseTable, GPPParsersym
171,227,134,0,208,0,227,134,0,252,
208,0,249,171,0,252,0,171,0,231,
252,0,231,0,201,171,0,182,252,0,
- 182,0,292,0,258,0,226,0,32,164,
- 0,348,83,0,30,178,0,184,3,0,
- 133,0,195,3,27,0,195,3,59,0,
+ 182,0,292,0,258,0,191,3,27,0,
+ 133,0,226,0,32,164,0,348,83,0,
+ 30,178,0,181,3,0,191,3,59,0,
344,3,313,0,343,3,3,6,0,133,
133,0,342,3,67,0,341,3,126,0,
- 133,179,0,134,184,78,0,223,0,271,
+ 133,179,0,134,181,78,0,223,0,271,
134,65,132,0,20,0,311,134,65,61,
0,20,57,0,33,139,0,20,57,0,
0,311,134,65,61,218,0,20,185,0,
@@ -2747,25 +2758,25 @@ public class GPPParserprs implements lpg.lpgjavaruntime.ParseTable, GPPParsersym
271,134,65,139,0,198,135,238,0,198,
135,30,238,0,198,135,337,30,0,136,
203,180,135,0,135,0,203,180,135,0,
- 141,135,0,183,0,333,134,183,0,134,
- 183,0,229,135,0,180,332,261,0,143,
+ 141,135,0,184,0,333,134,184,0,134,
+ 184,0,229,135,0,180,332,261,0,143,
0,0,0,0,332,261,0,144,143,0,
0,0,0,142,0,0,0,0,144,142,
0,0,0,0,331,134,173,270,0,134,
0,270,0,136,0,0,134,0,330,134,
173,269,0,134,0,0,44,134,0,0,
- 165,3,0,134,301,300,134,78,299,183,
- 0,300,134,78,299,183,0,222,0,223,
- 0,299,183,0,100,0,0,222,0,223,
+ 164,3,0,134,301,300,134,78,299,184,
+ 0,300,134,78,299,184,0,222,0,223,
+ 0,299,184,0,100,0,0,222,0,223,
0,210,100,0,0,222,0,223,0,300,
- 134,299,183,0,222,0,210,0,0,222,
+ 134,299,184,0,222,0,210,0,0,222,
0,243,134,3,0,133,0,0,0,0,
0,243,134,3,230,0,237,3,0,215,
- 0,153,0,194,180,135,0,10,0,0,
- 0,0,194,0,9,0,0,226,70,0,
- 132,0,243,134,3,192,0,192,0,2,
+ 0,153,0,195,180,135,0,10,0,0,
+ 0,0,195,0,9,0,0,226,69,0,
+ 132,0,243,134,3,193,0,193,0,2,
0,0,133,0,0,0,0,0,201,3,
- 0,239,134,173,42,33,0,198,135,66,
+ 0,239,134,173,43,33,0,198,135,66,
68,0,203,135,0,136,198,135,297,68,
0,198,135,297,68,0,198,135,79,131,
66,0,239,134,173,66,0,239,134,173,
@@ -2776,34 +2787,34 @@ public class GPPParserprs implements lpg.lpgjavaruntime.ParseTable, GPPParsersym
294,261,0,143,0,198,135,294,261,0,
203,180,135,13,0,180,135,13,0,180,
135,0,97,143,0,199,0,198,0,197,
- 0,196,0,287,134,153,0,287,134,183,
+ 0,196,0,287,134,152,0,287,134,184,
0,174,90,0,322,175,324,325,3,87,
0,133,178,0,324,325,3,87,0,135,
0,133,178,0,174,3,81,204,86,0,
133,135,0,204,86,0,112,2,138,133,
135,0,240,3,81,0,201,178,0,33,
176,0,178,0,182,33,176,0,240,3,
- 91,0,204,161,240,3,89,0,66,178,
+ 91,0,204,160,240,3,89,0,66,178,
0,240,3,89,0,133,178,66,178,0,
323,134,173,0,174,0,226,83,0,174,
- 114,169,0,30,176,0,195,3,0,133,
- 156,0,233,3,0,226,70,284,0,174,
- 70,0,195,3,319,75,135,0,133,0,
+ 114,169,0,30,176,0,191,3,0,133,
+ 156,0,233,3,0,226,69,284,0,174,
+ 69,0,191,3,319,75,135,0,133,0,
0,0,0,319,75,135,0,2,152,133,
- 0,0,0,0,195,3,51,0,154,0,
+ 0,0,0,0,191,3,51,0,154,0,
133,61,180,135,0,31,154,0,97,143,
31,154,0,234,198,135,0,153,31,154,
- 0,195,3,55,0,174,3,55,0,174,
- 3,77,195,65,47,0,195,65,47,0,
- 20,2,138,133,0,174,3,77,195,65,
- 50,0,195,65,50,0,174,3,77,195,
- 65,52,0,195,65,52,0,174,3,77,
- 195,65,48,0,195,65,48,0,233,3,
+ 0,191,3,55,0,174,3,55,0,174,
+ 3,77,191,65,47,0,191,65,47,0,
+ 20,2,138,133,0,174,3,77,191,65,
+ 50,0,191,65,50,0,174,3,77,191,
+ 65,52,0,191,65,52,0,174,3,77,
+ 191,65,48,0,191,65,48,0,233,3,
133,203,180,135,13,0,133,203,180,135,
13,0,143,2,0,133,0,233,3,132,
255,180,135,13,0,255,180,135,13,0,
142,2,0,133,0,233,3,143,0,233,
- 3,147,0,174,70,147,0,279,0,31,
+ 3,147,0,174,69,147,0,279,0,31,
0,31,146,0,179,0,141,0,174,3,
0
};
@@ -2813,46 +2824,46 @@ public class GPPParserprs implements lpg.lpgjavaruntime.ParseTable, GPPParsersym
public interface ScopeState {
public final static char scopeState[] = {0,
- 2836,2741,2619,0,2896,728,0,2634,1661,1813,
- 854,0,3313,2252,0,5898,6038,4313,3667,0,
- 3076,3342,0,2269,0,4321,4203,4157,4119,4073,
- 4035,3989,3951,3905,3867,2775,3383,2739,0,4690,
- 963,3875,0,3059,1587,0,839,772,0,1123,
- 0,2822,1568,0,4136,5544,0,988,816,0,
- 1076,0,2846,2712,1160,756,2983,5634,4284,3617,
- 3075,3478,3346,0,4321,2825,2742,4203,4157,4119,
- 4073,4035,3989,3951,3905,2359,3867,2775,2761,3383,
- 2711,5809,5782,5758,2759,664,0,3030,3142,2726,
- 0,5963,5953,5910,5894,2214,2118,5889,5880,5867,
- 2022,5858,1926,1830,5837,5569,4793,1734,1487,1377,
- 4789,4701,4572,3836,0,2983,678,5553,4448,4402,
- 3011,4284,3030,4653,3617,3478,4801,3142,4625,3630,
- 2726,3354,3282,3254,650,0,5553,3011,0,3269,
- 2897,5963,5953,2637,2148,2575,5910,2100,5894,2052,
- 2004,2214,1043,3572,2118,1956,5889,1908,5880,5867,
- 2483,1517,2022,5858,1926,1830,1408,5837,5569,831,
- 1678,4793,1734,1620,1487,1377,4789,4701,4572,785,
- 4578,3836,2744,3390,1476,1319,909,3524,4284,3030,
- 4653,3354,3282,2983,3254,3617,650,3478,4801,678,
- 3550,1063,5553,3142,4448,839,772,4625,4402,3630,
- 2726,3011,5523,5491,5449,5246,5030,5408,5386,1179,
- 2908,3102,2946,3581,3491,3214,4548,4518,3844,3813,
- 3782,3751,3720,3644,4946,4923,4900,4876,4485,5364,
- 5342,5320,5194,5172,5150,5128,5106,5084,5062,4988,
- 2409,2685,2644,2361,2310,2593,2552,1544,1494,1434,
- 2501,2460,1384,2269,2221,1002,2173,2125,2077,2029,
- 1981,1933,1885,1837,1789,1741,1693,1277,602,1637,
- 936,856,1596,1336,790,1129,1081,1223,0,4578,
- 602,2744,0,3030,2524,6028,3354,4729,1663,3282,
- 3254,4642,6010,1433,4801,6000,678,602,1308,5992,
- 5958,5950,4057,4406,4571,3142,1276,1027,5945,4582,
- 4625,4394,881,710,4578,901,3906,3314,3170,3063,
- 727,2973,1178,2744,5750,2983,5582,2816,5576,5634,
- 5746,5699,650,5824,5688,4448,4402,5642,2726,0,
- 4136,5544,5430,4764,4689,4675,5227,5216,4969,3245,
- 4249,4321,4203,4157,4119,4073,4035,3989,3951,3905,
- 3867,2775,3383,0,4136,5544,5430,4764,4689,4675,
- 5227,5216,4969,3245,4249,0
+ 2356,2120,2024,0,2105,1824,0,1739,729,1574,
+ 931,0,1920,1516,0,705,6155,6140,6112,0,
+ 1493,2588,0,2174,0,4551,4432,4371,4310,4249,
+ 4188,4127,4066,4005,3944,3609,3385,2691,0,6066,
+ 4252,4069,0,1248,1154,0,2949,1064,0,1171,
+ 0,2912,1475,0,2715,3959,0,751,1307,0,
+ 1023,0,1535,1456,1381,842,3038,4189,4513,3691,
+ 3480,4006,3431,0,4551,2728,2389,4432,4371,4310,
+ 4249,4188,4127,4066,4005,5923,2153,3944,3609,3197,
+ 3385,2727,5917,5898,5882,5844,5833,0,3085,711,
+ 2676,0,6073,6042,6022,6013,6148,6136,6009,5999,
+ 5989,6093,5985,5495,4937,5979,5811,4993,4541,3526,
+ 3227,4904,4796,4780,783,0,3038,5524,916,4632,
+ 2852,3066,4513,3085,3704,3691,3480,5004,711,4809,
+ 3554,2676,3354,3282,3254,2750,0,916,3066,0,
+ 4762,603,2780,0,3310,3113,6073,6042,2945,2526,
+ 6022,1879,6013,1814,1735,1718,2434,2618,6148,1686,
+ 6136,1377,6009,5999,5989,3142,991,6093,5985,5495,
+ 4937,878,5979,5811,847,2704,4993,4541,1536,3526,
+ 3227,4904,4796,4780,692,4762,783,2780,1586,1476,
+ 1319,903,2829,4513,3085,3704,3354,3282,3038,3254,
+ 3691,2750,3480,5004,5524,2923,2894,916,711,4632,
+ 2949,1064,4809,2852,3554,2676,3066,5772,5751,5719,
+ 5676,5234,5636,5614,1180,2963,3157,3001,3583,3493,
+ 3193,4732,4702,3922,3890,3858,3826,3794,3717,5151,
+ 5127,4669,5103,5079,5592,5552,5449,5398,5376,5354,
+ 5332,5310,5288,5266,5191,2362,2635,2594,2314,2266,
+ 2543,2502,1544,1494,1434,2451,2410,1384,2215,2174,
+ 999,2126,2078,2030,1982,1934,1886,1838,1790,1742,
+ 1694,1645,1277,1336,1597,936,854,651,603,791,
+ 1129,1081,1223,0,3085,3246,4624,3354,4333,3108,
+ 3282,3254,4315,4132,3056,5004,4128,5524,2856,6106,
+ 6078,3949,3610,4766,4150,711,2565,2473,603,4858,
+ 3632,4809,3426,1247,1024,4762,3384,4008,3958,4255,
+ 3028,4071,963,675,2780,5805,3038,5799,4433,4976,
+ 5793,4189,2750,5929,4800,4372,4632,2852,4311,2676,
+ 0,2715,3959,5658,4967,4874,4859,5431,5420,5173,
+ 3245,4478,4551,4432,4371,4310,4249,4188,4127,4066,
+ 4005,3944,3609,3385,0,2715,3959,5658,4967,4874,
+ 4859,5431,5420,5173,3245,4478,0
};
};
public final static char scopeState[] = ScopeState.scopeState;
@@ -2860,67 +2871,68 @@ public class GPPParserprs implements lpg.lpgjavaruntime.ParseTable, GPPParsersym
public interface InSymb {
public final static char inSymb[] = {0,
- 0,318,68,5,134,183,218,61,33,66,
+ 0,318,68,5,134,184,218,61,33,66,
241,66,297,346,288,6,7,5,270,289,
261,290,62,291,132,13,135,317,27,293,
292,299,134,3,4,140,139,9,8,132,
- 135,192,61,65,42,173,242,131,135,135,
+ 135,193,61,65,43,173,242,131,135,135,
3,3,3,3,173,332,294,171,327,294,
171,65,135,198,180,179,27,59,51,46,
41,40,10,12,45,44,3,135,8,55,
47,50,52,48,13,143,147,78,134,287,
- 201,197,192,134,265,298,227,171,135,194,
- 201,65,65,178,70,3,74,75,132,131,
+ 201,197,193,134,265,298,227,171,135,195,
+ 201,65,65,178,69,3,74,75,132,131,
198,180,3,65,77,134,173,134,173,79,
- 198,198,347,42,276,3,345,1,42,134,
+ 198,198,347,43,276,3,345,1,43,134,
180,246,133,132,135,131,173,135,134,180,
- 61,4,3,3,3,3,184,174,134,173,
- 74,75,180,133,3,65,65,65,65,135,
- 3,113,127,3,70,134,300,73,171,70,
- 227,171,135,3,79,76,201,180,12,10,
- 134,134,134,70,70,203,134,134,134,239,
- 134,135,242,136,73,161,3,76,343,313,
- 3,331,135,181,238,66,61,68,183,334,
- 133,132,247,171,247,198,173,134,198,271,
- 178,152,159,158,162,160,164,163,167,166,
- 168,67,169,274,203,279,203,195,134,195,
- 195,195,286,134,70,319,3,195,174,195,
- 195,195,195,180,233,61,135,61,233,174,
- 300,309,135,310,226,169,171,180,165,173,
- 269,171,171,194,194,271,271,227,243,244,
- 153,245,311,61,13,60,239,239,198,10,
- 1,76,161,3,1,180,134,247,247,134,
- 134,203,134,295,131,296,134,3,231,230,
- 96,97,41,40,99,98,10,109,108,101,
- 100,77,65,93,94,12,103,102,105,104,
- 106,124,123,122,121,120,119,118,117,116,
- 115,79,114,107,76,4,133,132,13,135,
- 27,143,161,76,323,85,83,1,174,11,
+ 61,4,3,3,3,3,191,181,174,173,
+ 178,134,74,75,180,133,3,65,65,65,
+ 65,135,3,113,127,3,69,134,300,73,
+ 171,69,227,171,135,3,79,76,201,180,
+ 12,10,134,134,134,69,69,203,134,134,
+ 134,239,134,135,242,136,73,160,3,76,
+ 343,313,3,331,135,182,238,66,61,68,
+ 184,334,133,132,247,171,247,198,173,134,
+ 198,271,153,159,158,162,161,165,163,167,
+ 166,168,67,169,274,203,279,203,191,191,
+ 191,191,134,134,3,231,230,286,133,132,
+ 13,135,27,143,69,319,3,191,174,191,
+ 191,191,191,180,233,134,61,135,61,233,
+ 174,300,309,135,310,226,169,171,180,164,
+ 173,269,171,171,195,195,271,271,227,243,
+ 244,152,245,311,61,13,60,239,239,198,
+ 10,1,76,160,3,1,180,134,247,247,
+ 134,134,203,134,295,131,296,96,97,41,
+ 40,99,98,10,109,108,101,100,77,65,
+ 93,94,12,103,102,105,104,106,124,123,
+ 122,121,120,119,118,117,116,115,79,114,
+ 107,76,4,160,323,85,83,1,174,11,
91,89,87,86,81,88,90,84,82,66,
- 78,219,3,320,178,165,77,77,77,77,
- 203,255,135,198,180,301,76,198,3,134,
- 173,10,134,161,79,237,201,3,134,76,
- 76,77,65,246,246,242,1,344,203,333,
- 73,251,201,132,249,171,134,134,73,295,
- 79,76,227,237,134,3,158,158,152,152,
- 152,160,160,160,160,160,160,159,159,163,
- 162,162,166,164,167,255,174,168,135,180,
- 148,11,73,348,226,73,3,3,3,204,
- 3,131,174,131,184,195,134,134,3,3,
- 3,3,133,132,234,8,61,134,233,134,
- 194,200,134,79,79,134,227,134,79,79,
- 76,136,76,73,79,171,249,171,154,336,
- 238,30,135,243,134,73,73,180,61,73,
- 95,73,240,178,240,325,153,81,240,134,
- 161,281,284,70,199,174,174,174,174,3,
- 3,4,131,133,302,126,330,134,235,311,
- 249,171,76,135,30,337,198,161,243,203,
- 161,201,161,324,134,3,161,302,134,3,
- 70,174,233,233,4,3,211,76,134,77,
- 198,135,135,134,161,133,79,204,175,287,
- 174,281,233,226,95,341,178,211,11,67,
- 60,198,198,235,134,129,322,161,161,161,
- 134,3,246,134,235,161,342,79,134,76
+ 78,227,237,134,3,76,135,180,148,3,
+ 219,3,320,178,164,77,77,77,77,203,
+ 255,135,198,180,301,76,198,3,134,173,
+ 10,134,160,79,237,201,3,134,76,76,
+ 77,65,246,246,242,1,344,203,333,73,
+ 251,201,132,249,171,134,134,73,295,79,
+ 76,158,158,153,153,153,161,161,161,161,
+ 161,161,159,159,163,162,162,166,165,167,
+ 255,174,168,11,73,348,226,73,3,3,
+ 3,204,3,131,174,131,181,243,134,180,
+ 61,191,191,134,134,3,3,3,3,133,
+ 132,234,8,61,134,233,134,195,200,134,
+ 79,79,134,227,134,79,79,76,136,76,
+ 73,79,171,249,171,154,336,238,30,135,
+ 73,73,73,95,73,240,178,240,325,152,
+ 81,240,134,160,243,203,160,160,281,284,
+ 69,199,174,174,174,174,3,3,4,131,
+ 133,302,126,330,134,235,311,249,171,76,
+ 135,30,337,198,160,201,160,324,134,3,
+ 160,302,134,160,133,134,3,69,174,233,
+ 233,4,3,211,76,134,77,198,135,135,
+ 79,204,175,287,174,235,134,281,233,226,
+ 95,341,178,211,11,67,60,198,198,129,
+ 322,160,134,235,160,160,134,3,246,160,
+ 134,342,79,76
};
};
public final static char inSymb[] = InSymb.inSymb;
@@ -3201,9 +3213,9 @@ public class GPPParserprs implements lpg.lpgjavaruntime.ParseTable, GPPParsersym
public final String name(int index) { return name[index]; }
public final static int
- ERROR_SYMBOL = 69,
- SCOPE_UBOUND = 143,
- SCOPE_SIZE = 144,
+ ERROR_SYMBOL = 70,
+ SCOPE_UBOUND = 144,
+ SCOPE_SIZE = 145,
MAX_NAME_LENGTH = 37;
public final int getErrorSymbol() { return ERROR_SYMBOL; }
@@ -3212,20 +3224,20 @@ public class GPPParserprs implements lpg.lpgjavaruntime.ParseTable, GPPParsersym
public final int getMaxNameLength() { return MAX_NAME_LENGTH; }
public final static int
- NUM_STATES = 610,
+ NUM_STATES = 614,
NT_OFFSET = 130,
- LA_STATE_OFFSET = 7674,
+ LA_STATE_OFFSET = 7691,
MAX_LA = 2147483647,
- NUM_RULES = 601,
+ NUM_RULES = 602,
NUM_NONTERMINALS = 221,
NUM_SYMBOLS = 351,
SEGMENT_SIZE = 8192,
- START_STATE = 4249,
+ START_STATE = 4478,
IDENTIFIER_SYMBOL = 0,
EOFT_SYMBOL = 128,
EOLT_SYMBOL = 128,
- ACCEPT_ACTION = 6254,
- ERROR_ACTION = 7073;
+ ACCEPT_ACTION = 6267,
+ ERROR_ACTION = 7089;
public final static boolean BACKTRACK = true;
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gpp/GPPParsersym.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gpp/GPPParsersym.java
index 682f1006f69..99a8206e59d 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gpp/GPPParsersym.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gpp/GPPParsersym.java
@@ -83,12 +83,12 @@ public interface GPPParsersym {
TK_integer = 56,
TK_floating = 57,
TK_charconst = 58,
- TK_stringlit = 42,
+ TK_stringlit = 43,
TK_identifier = 1,
TK_Completion = 2,
TK_EndOfCompletion = 11,
TK_Invalid = 130,
- TK_LeftBracket = 70,
+ TK_LeftBracket = 69,
TK_LeftParen = 3,
TK_Dot = 127,
TK_DotStar = 97,
@@ -135,7 +135,7 @@ public interface GPPParsersym {
TK_RightBracket = 125,
TK_RightParen = 71,
TK_RightBrace = 80,
- TK_SemiColon = 43,
+ TK_SemiColon = 42,
TK_LeftBrace = 72,
TK_typeof = 27,
TK___alignof__ = 59,
@@ -143,7 +143,7 @@ public interface GPPParsersym {
TK___declspec = 7,
TK_MAX = 108,
TK_MIN = 109,
- TK_ERROR_TOKEN = 69,
+ TK_ERROR_TOKEN = 70,
TK_EOF_TOKEN = 128;
public final static String orderedTerminalSymbols[] = {
@@ -189,8 +189,8 @@ public interface GPPParsersym {
"typedef",
"Plus",
"Minus",
- "stringlit",
"SemiColon",
+ "stringlit",
"PlusPlus",
"MinusMinus",
"Bang",
@@ -216,8 +216,8 @@ public interface GPPParsersym {
"namespace",
"throw",
"using",
- "ERROR_TOKEN",
"LeftBracket",
+ "ERROR_TOKEN",
"RightParen",
"LeftBrace",
"Colon",
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gpp/GPPSizeofExpressionParser.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gpp/GPPSizeofExpressionParser.java
index d45ebcdda48..b41ee2323a5 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gpp/GPPSizeofExpressionParser.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gpp/GPPSizeofExpressionParser.java
@@ -17,13 +17,20 @@ import lpg.lpgjavaruntime.*;
import java.util.*;
import org.eclipse.cdt.core.dom.ast.*;
+import org.eclipse.cdt.core.dom.lrparser.CPreprocessorAdapter;
+import org.eclipse.cdt.core.dom.lrparser.IDOMTokenMap;
import org.eclipse.cdt.core.dom.lrparser.IParser;
-import org.eclipse.cdt.core.dom.lrparser.IParserActionTokenProvider;
+import org.eclipse.cdt.core.dom.lrparser.ITokenCollector;
import org.eclipse.cdt.core.dom.lrparser.lpgextensions.FixedBacktrackingParser;
import org.eclipse.cdt.core.dom.lrparser.action.ScopedStack;
+import org.eclipse.cdt.core.parser.IScanner;
+import org.eclipse.cdt.core.dom.parser.IBuiltinBindingsProvider;
+import org.eclipse.cdt.core.index.IIndex;
+import org.eclipse.cdt.core.dom.lrparser.action.ITokenStream;
import org.eclipse.cdt.core.dom.lrparser.action.ITokenMap;
import org.eclipse.cdt.core.dom.lrparser.action.TokenMap;
+import org.eclipse.cdt.core.dom.lrparser.ISecondaryParser;
import org.eclipse.cdt.core.dom.ast.cpp.*;
import org.eclipse.cdt.internal.core.dom.parser.cpp.CPPNodeFactory;
@@ -33,7 +40,9 @@ import org.eclipse.cdt.core.dom.lrparser.action.cpp.CPPSecondaryParserFactory;
import org.eclipse.cdt.core.dom.lrparser.action.gnu.GPPBuildASTParserAction;
import org.eclipse.cdt.core.dom.lrparser.action.gnu.GPPSecondaryParserFactory;
-public class GPPSizeofExpressionParser extends PrsStream implements RuleAction , IParserActionTokenProvider, IParser< IASTExpression >
+public class GPPSizeofExpressionParser extends PrsStream implements RuleAction, ITokenStream,
+ ITokenCollector, IParser< IASTExpression >
+ , ISecondaryParser< IASTExpression >
{
private static ParseTable prs = new GPPSizeofExpressionParserprs();
private FixedBacktrackingParser btParser;
@@ -171,7 +180,11 @@ public class GPPSizeofExpressionParser extends PrsStream implements RuleAction ,
private CPPBuildASTParserAction action;
private IASTCompletionNode compNode;
-public GPPSizeofExpressionParser() { // constructor
+
+public GPPSizeofExpressionParser(IScanner scanner, IDOMTokenMap tokenMap, IBuiltinBindingsProvider builtinBindingsProvider, IIndex index, Set<IParser.Options> options) {
+ initActions(options);
+ action.initializeTranslationUnit(scanner, builtinBindingsProvider, index);
+ CPreprocessorAdapter.runCPreprocessor(scanner, this, tokenMap);
}
private void initActions(Set<IParser.Options> options) {
@@ -195,10 +208,9 @@ public void addToken(IToken token) {
}
-public IASTExpression parse(Set<IParser.Options> options) {
+public IASTExpression parse() {
// this has to be done, or... kaboom!
setStreamLength(getSize());
- initActions(options);
final int errorRepairCount = -1; // -1 means full error handling
parser(null, errorRepairCount); // do the actual parse
@@ -241,12 +253,12 @@ public void setTokens(List<IToken> tokens) {
addToken(new Token(null, 0, 0, GPPSizeofExpressionParsersym.TK_EOF_TOKEN));
}
-public GPPSizeofExpressionParser(IParserActionTokenProvider parser) { // constructor
+public GPPSizeofExpressionParser(ITokenStream parser, Set<IParser.Options> options) { // constructor for creating secondary parser
+ initActions(options);
tokenMap = new TokenMap(GPPSizeofExpressionParsersym.orderedTerminalSymbols, parser.getOrderedTerminalSymbols());
}
-
private GPPBuildASTParserAction gnuAction;
public void ruleAction(int ruleNumber)
@@ -2011,41 +2023,53 @@ private GPPBuildASTParserAction gnuAction;
//
case 575: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_assign); break;
}
+
+ //
+ // Rule 576: typeof_type_specifier ::= typeof unary_expression
+ //
+ case 576: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_typeof); break;
+ }
+
+ //
+ // Rule 577: typeof_type_specifier ::= typeof ( type_id )
+ //
+ case 577: { action. consumeExpressionTypeId(IASTTypeIdExpression.op_typeof); break;
+ }
//
- // Rule 580: declaration_specifiers ::= <openscope-ast> typeof_declaration_specifiers
+ // Rule 581: declaration_specifiers ::= <openscope-ast> typeof_declaration_specifiers
//
- case 580: { gnuAction.consumeDeclarationSpecifiersTypeof(); break;
+ case 581: { gnuAction.consumeDeclarationSpecifiersTypeof(); break;
}
//
- // Rule 593: declarator ::= <openscope-ast> ptr_operator_seq attribute_or_decl_specifier_seq direct_declarator
+ // Rule 594: declarator ::= <openscope-ast> ptr_operator_seq attribute_or_decl_specifier_seq direct_declarator
//
- case 593: { action. consumeDeclaratorWithPointer(true); break;
+ case 594: { action. consumeDeclaratorWithPointer(true); break;
}
//
- // Rule 595: simple_type_specifier ::= _Complex
+ // Rule 596: simple_type_specifier ::= _Complex
//
- case 595: { action. consumeToken(); break;
+ case 596: { action. consumeToken(); break;
}
//
- // Rule 596: simple_type_specifier ::= _Imaginary
+ // Rule 597: simple_type_specifier ::= _Imaginary
//
- case 596: { action. consumeToken(); break;
+ case 597: { action. consumeToken(); break;
}
//
- // Rule 597: declaration_specifiers ::= <openscope-ast> simple_declaration_specifiers
+ // Rule 598: declaration_specifiers ::= <openscope-ast> simple_declaration_specifiers
//
- case 597: { gnuAction.consumeDeclarationSpecifiersSimple(); break;
+ case 598: { gnuAction.consumeDeclarationSpecifiersSimple(); break;
}
//
- // Rule 599: no_sizeof_type_id_start ::= ERROR_TOKEN
+ // Rule 600: no_sizeof_type_id_start ::= ERROR_TOKEN
//
- case 599: { action. consumeEmpty(); break;
+ case 600: { action. consumeEmpty(); break;
}
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gpp/GPPSizeofExpressionParserprs.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gpp/GPPSizeofExpressionParserprs.java
index 46c85eecb27..45b2048715e 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gpp/GPPSizeofExpressionParserprs.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gpp/GPPSizeofExpressionParserprs.java
@@ -94,561 +94,561 @@ public class GPPSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
4,0,1,1,1,3,1,0,4,3,
1,2,1,3,4,4,6,1,0,1,
3,1,3,0,1,4,5,2,2,3,
- 3,5,3,4,3,2,1,2,2,2,
- 1,1,2,2,3,2,2,3,1,1,
- 1,1,4,1,1,1,2,1,1,-65,
- 0,0,0,-468,0,0,0,0,0,0,
+ 3,5,3,4,3,2,4,1,2,2,
+ 2,1,1,2,2,3,2,2,3,1,
+ 1,1,1,4,1,1,1,2,1,1,
+ -65,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,0,0,-2,0,
- -370,0,0,0,0,0,-66,0,0,0,
- 0,0,-328,-247,-293,0,0,0,0,-4,
- -212,0,0,0,-301,0,0,0,0,0,
- 0,0,0,0,0,0,0,-127,0,-60,
- 0,0,0,0,-193,0,0,0,0,0,
- 0,0,-5,-286,0,0,-526,-202,0,0,
- 0,0,0,-592,-111,0,-6,0,0,-161,
+ 0,0,0,0,0,0,0,0,0,-68,
+ 0,-10,0,0,0,0,0,0,0,0,
+ 0,-147,0,-208,0,-583,0,0,-14,0,
+ -237,-4,0,-229,0,-303,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-479,0,
+ 0,-193,0,0,0,-5,0,0,0,0,
+ 0,0,-288,0,0,-51,0,-6,0,0,
+ 0,0,0,0,0,0,0,0,0,-7,
+ -605,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-198,
+ 0,0,-8,0,0,-137,0,0,0,0,
+ 0,0,-60,0,0,0,-9,-53,0,-395,
+ 0,0,0,0,0,0,-11,0,0,0,
+ 0,0,0,-52,-391,0,0,0,0,0,
+ 0,0,0,0,-120,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-267,0,0,-198,0,0,0,0,0,
- 0,0,-69,-7,-16,0,0,0,0,0,
- 0,0,0,0,0,-8,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-120,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-192,0,0,0,
+ 0,0,0,-12,0,0,0,0,0,-161,
0,0,0,0,0,0,0,0,0,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,-56,
+ 0,0,0,0,0,0,0,0,0,-498,
+ 0,0,0,0,-13,-372,-133,0,0,0,
+ 0,0,-452,0,-15,0,-75,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-236,
+ 0,0,-437,0,0,0,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,0,0,-160,0,0,0,0,0,
- 0,0,-192,0,0,0,0,0,-603,0,
+ 0,0,0,-537,0,0,0,0,0,0,
+ 0,-55,0,0,0,0,0,0,0,0,
+ 0,-348,0,0,0,-59,0,0,-127,0,
+ 0,-338,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-238,0,0,-263,
0,0,0,0,0,0,0,0,0,0,
- 0,-383,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,-271,0,
+ 0,0,-30,0,0,0,0,0,0,0,
+ -139,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-50,0,0,-330,0,0,
+ 0,0,-163,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-64,0,-61,-485,
+ 0,0,0,0,0,0,-567,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-313,0,-133,0,
- 0,0,0,0,0,-346,0,0,0,-75,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-9,0,0,0,0,-141,0,
+ 0,0,0,0,0,0,0,-31,0,0,
+ 0,0,0,0,0,0,0,-32,-148,0,
+ 0,0,0,0,-595,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-45,
+ 0,0,0,0,0,-206,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-279,0,0,-372,0,0,0,0,-55,
- 0,0,0,0,0,-10,0,0,0,0,
- 0,-11,0,0,0,0,0,0,0,0,
- 0,0,-336,0,0,0,0,0,0,0,
+ 0,0,-62,0,-112,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -262,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-33,-69,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-416,0,0,-206,0,0,0,
+ -277,0,0,-209,0,0,-239,0,0,-441,
+ 0,0,0,-34,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,-140,-536,0,0,0,0,0,0,
+ -241,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-272,0,0,
+ 0,0,-404,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -53,-208,0,0,0,-163,0,0,0,0,
+ 0,0,0,0,0,-156,-151,0,0,0,
+ 0,0,0,-223,0,0,0,0,-309,0,
+ 0,0,0,0,-16,0,0,0,0,0,
+ 0,0,0,0,0,-63,-18,0,0,0,
+ -160,0,-3,0,0,0,-313,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-147,0,-565,0,0,0,-148,0,0,
+ 0,0,0,0,0,-35,0,0,0,0,
+ 0,-254,0,-528,0,0,0,0,0,0,
+ 0,0,0,-146,0,0,0,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,0,0,0,0,0,-151,0,0,
+ 0,0,0,0,0,-248,-165,0,0,0,
+ 0,-36,0,0,0,0,-315,0,0,0,
+ 0,0,0,0,-358,-158,0,0,0,0,
+ -422,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -12,0,0,0,-280,0,0,0,0,0,
- 0,0,-593,0,0,0,-387,0,0,0,
+ 0,0,0,0,-118,0,0,0,0,-207,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-287,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-315,0,0,0,0,0,0,
- -56,-400,-112,0,0,0,-243,0,0,0,
+ 0,-37,0,0,0,0,0,0,0,0,
+ 0,-423,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-316,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-276,
- 0,0,0,-332,0,0,-13,-439,0,0,
+ 0,0,0,0,-242,0,-46,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,-281,0,0,0,-440,0,0,-300,
+ 0,-510,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-435,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,0,-15,-402,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,-77,0,0,-204,0,0,0,0,
+ -113,-376,-41,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-535,0,0,0,0,0,0,0,
- -352,0,0,0,0,0,-393,0,0,0,
- 0,-159,0,0,0,0,0,0,0,0,
- 0,0,-30,0,-209,-18,0,0,0,0,
- -3,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-280,0,0,0,0,
+ 0,0,0,-38,0,0,0,0,0,0,
+ 0,0,0,-39,-49,0,0,0,0,0,
+ -43,0,0,0,-389,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-31,
- 0,-139,0,0,0,0,0,0,0,0,
- 0,-450,-68,0,0,0,0,0,-349,0,
+ 0,0,0,-289,0,0,0,0,0,-40,
+ 0,-42,0,0,0,0,0,0,0,0,
+ 0,-57,0,0,-58,0,0,0,0,-100,
+ 0,0,0,-70,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,-317,0,0,0,0,0,-243,0,
+ -71,0,0,0,0,0,0,0,0,0,
+ -73,-199,0,0,0,0,0,-101,0,0,
+ 0,-74,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-347,0,0,0,0,0,-32,0,-222,
- 0,0,0,0,0,-228,0,0,0,0,
- 0,0,-356,-568,0,0,0,-420,0,0,
+ -318,0,0,0,0,0,0,0,-470,0,
+ 0,0,0,0,0,0,0,0,-44,0,
+ 0,-408,0,0,0,-102,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-349,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-51,0,0,0,0,0,0,0,
- 0,0,0,0,-33,0,0,0,0,-449,
+ 0,0,0,0,0,0,0,-211,0,0,
+ 0,0,0,-103,0,0,0,-114,0,0,
0,0,0,0,0,0,0,0,0,0,
- -311,-146,0,0,-157,0,0,0,0,-421,
+ 0,0,0,0,0,0,-360,0,0,0,
+ 0,0,-337,0,-115,0,0,0,0,0,
+ 0,0,0,0,-78,0,0,-116,0,0,
+ 0,-104,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-416,0,0,0,0,0,
+ 0,0,-117,0,0,0,0,0,0,0,
+ 0,0,-119,-222,0,0,0,0,0,-105,
+ 0,0,0,-124,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,-237,0,0,0,
- -50,-448,0,0,0,0,0,0,-508,0,
- 0,0,-34,0,0,0,0,0,0,0,
+ 0,0,-458,0,-221,-310,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-499,0,0,0,0,0,0,0,
- 0,0,0,0,0,-77,0,0,0,0,
- 0,0,0,0,0,0,-235,0,0,-41,
- 0,0,0,-266,0,0,0,0,0,0,
+ -257,0,0,0,0,0,0,-106,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,-551,0,0,0,0,-496,0,
- -35,0,0,0,0,0,0,0,0,0,
- -36,0,-37,0,0,0,0,-43,0,0,
+ -553,0,0,-386,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-164,-252,
+ 0,0,0,0,0,-107,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-501,0,
+ -247,-126,0,0,0,0,-217,0,0,0,
+ 0,0,0,0,0,0,-258,0,0,-142,
+ 0,0,0,-108,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -358,0,0,0,0,0,-38,0,-39,0,
- 0,0,0,0,0,0,0,0,0,-414,
- 0,0,0,0,0,-100,0,0,0,-118,
+ 0,0,0,0,0,0,-554,0,0,-495,
+ 0,0,0,0,-149,0,0,0,0,0,
+ 0,0,0,0,0,-331,0,0,0,0,
+ 0,-109,0,0,0,-150,0,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,-242,0,-140,0,0,0,
- 0,0,0,0,0,0,-59,0,-477,0,
- 0,0,0,-101,0,0,0,-156,0,0,
+ 0,0,0,0,0,0,-278,-527,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-40,-601,0,0,
+ 0,0,-259,0,0,-154,0,0,0,-110,
+ 0,0,0,-383,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -321,0,0,0,0,0,0,-42,-563,0,
- 0,-102,0,0,0,-165,0,0,0,0,
+ 0,0,-414,-415,0,-457,0,0,0,0,
+ -418,0,0,0,0,0,0,0,0,0,
+ 0,-561,0,0,0,0,0,-145,0,0,
+ 0,-594,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ -212,0,0,0,0,0,0,0,-166,0,
+ 0,0,0,0,0,0,0,0,-227,0,
+ 0,0,-167,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -335,0,0,0,0,0,0,0,-322,0,
- 0,0,0,0,-241,0,0,0,0,-103,
- 0,0,0,-216,0,0,0,0,0,0,
+ 0,0,0,-323,0,0,0,0,0,-168,
+ 0,0,0,0,-301,0,0,0,0,-580,
+ 0,0,0,-260,-347,0,0,0,0,0,
+ 0,-477,0,0,-169,-255,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-500,0,0,0,0,0,-238,0,
- 0,0,0,0,0,0,-453,0,0,0,
- 0,0,-57,0,0,0,0,-104,0,0,
0,0,0,0,0,0,0,0,0,0,
+ -170,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-402,-205,0,0,
+ 0,0,0,-256,0,0,0,-171,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-204,0,0,0,0,0,-374,0,
- 0,0,0,0,-536,0,0,0,0,-456,
- -58,0,0,0,0,-105,0,0,0,-253,
+ 0,0,0,0,0,0,0,-603,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-70,-71,
- 0,0,0,0,-569,0,-455,0,0,0,
- 0,0,0,0,0,0,-61,-62,-73,0,
- -353,0,0,-106,0,0,0,0,0,0,
+ 0,0,0,0,-1,0,0,-172,0,0,
+ 0,-483,0,0,0,-173,0,0,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,-74,0,0,0,0,0,
- -158,0,0,0,0,-63,-114,0,0,0,
- 0,-107,0,0,0,-506,0,0,0,0,
+ 0,0,0,0,-174,-506,0,-175,0,0,
+ 0,0,-210,0,0,0,0,0,0,0,
+ 0,0,-176,-159,0,0,0,0,0,0,
+ 0,0,0,0,-332,0,0,0,0,0,
+ 0,0,-362,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-591,0,0,0,0,
+ 0,0,0,-512,0,0,0,0,0,0,
+ 0,0,0,-456,0,0,0,-177,0,0,
0,0,0,0,0,0,0,0,0,0,
- -298,0,0,0,0,0,0,0,-438,0,
- 0,0,0,-113,-115,-116,-117,0,0,-108,
- 0,0,0,-381,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-178,0,0,0,
+ 0,0,-373,0,-354,0,0,0,0,-355,
+ 0,0,0,0,-201,-592,0,0,0,-508,
+ -406,-468,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-124,0,0,0,0,0,-240,0,
- -299,0,0,0,0,0,0,0,0,0,
- -119,-164,-345,0,0,0,0,-109,0,0,
- 0,-475,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,-126,0,
- 0,0,0,0,-220,0,0,0,0,-201,
- -218,-142,-149,0,0,-110,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-412,-413,
- 0,0,0,0,-330,0,-371,0,0,0,
- 0,0,0,0,0,0,-343,0,0,-150,
- -154,0,0,-145,0,0,0,-528,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,0,0,-166,0,-546,0,
+ 0,0,0,0,0,-435,0,-417,0,0,
+ 0,0,0,0,0,0,0,0,-179,0,
+ 0,0,0,-111,-345,0,0,0,0,-584,
+ -520,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-180,-181,-182,-431,0,0,0,
+ 0,-183,0,0,0,0,0,0,0,0,
+ 0,-521,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -406,0,0,0,-226,0,0,0,-429,0,
+ 0,0,0,0,-385,-539,-267,0,0,0,
+ 0,0,-530,0,0,0,0,-474,0,0,
+ 0,0,-451,0,0,0,-184,-185,0,0,
+ 0,0,0,0,-411,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-343,-72,0,
+ -219,-157,0,-244,-454,0,0,0,0,0,
+ 0,0,-186,-550,-54,0,0,0,-467,0,
+ 0,0,0,0,0,0,-187,0,-585,-597,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-570,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,-188,0,0,0,0,0,0,-123,
+ 0,0,0,0,0,0,-374,-189,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,-436,0,0,0,0,-486,-600,0,0,
+ 0,0,0,-378,0,0,0,-129,0,0,
+ 0,0,0,0,0,0,-249,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-190,0,0,
+ 0,0,-302,-191,0,0,0,0,0,0,
+ -438,0,0,0,0,0,0,0,-194,0,
+ 0,0,-401,0,0,0,0,0,0,0,
+ -195,0,0,0,0,0,0,-97,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -389,0,0,0,0,-167,0,0,0,0,
- 0,-474,0,0,0,0,0,-380,0,0,
- 0,0,0,-246,0,0,0,0,0,0,
- -254,0,0,0,0,0,0,0,0,0,
+ -450,0,0,-496,0,0,-196,0,-200,0,
+ 0,0,0,-425,0,0,0,-499,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-168,-169,-170,-307,0,0,0,
+ -47,-311,0,-503,0,0,0,0,0,0,
+ -432,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-203,0,-251,0,0,0,0,
+ -213,0,0,0,0,0,0,0,0,-215,
+ 0,0,-218,0,0,0,0,0,0,0,
+ 0,0,0,-462,0,0,0,-224,-226,0,
+ 0,0,0,0,-559,0,-228,0,0,0,
+ 0,0,0,0,-393,0,0,-230,0,0,
+ 0,0,0,0,0,0,-98,0,0,0,
+ -231,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-232,
+ 0,-326,-233,0,0,0,0,0,0,0,
+ 0,-22,0,0,0,-235,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-248,-269,0,-171,-172,0,0,-255,0,
+ 0,0,0,0,0,0,-19,0,0,0,
+ -250,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-270,-324,
+ -261,-262,-282,0,-94,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-269,-275,0,
+ -284,0,0,0,0,0,0,0,-442,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-452,0,0,-308,0,0,-173,0,0,
- 0,0,0,0,0,-174,0,0,0,0,
- -281,0,-175,-176,0,0,-481,0,0,0,
- -177,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-178,
- -472,0,0,0,0,0,0,-179,0,0,
- 0,0,0,-277,0,0,0,0,-460,0,
- 0,0,0,0,0,0,0,0,0,-510,
- -300,-534,0,0,0,-433,0,0,-360,0,
+ 0,-253,0,0,0,-382,0,0,0,-421,
+ -131,0,0,0,0,-473,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-286,0,
+ -502,0,0,0,0,0,0,-216,0,0,
+ 0,0,0,0,-444,-290,-292,0,0,0,
+ 0,0,0,0,0,-293,0,-504,-511,0,
+ 0,0,0,0,-298,-306,-307,0,0,0,
+ 0,-334,0,0,-534,0,0,0,0,0,
+ 0,0,-308,-475,-316,0,0,-519,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-325,-283,0,0,0,-460,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-559,0,0,0,0,0,0,0,-582,
- 0,0,0,0,0,-180,0,0,0,-454,
- 0,0,0,-404,0,0,0,0,0,0,
+ -128,0,0,0,-563,-575,0,-505,0,0,
+ -565,0,0,0,0,0,0,0,0,0,
+ 0,-328,-312,0,0,0,0,0,0,0,
+ -333,-287,0,0,0,0,0,-544,0,-524,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-309,0,0,0,0,0,
+ 0,0,-433,0,0,-342,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,-384,-578,0,0,0,0,-466,0,0,
+ 0,0,-335,0,0,0,0,0,0,-596,
+ 0,0,0,0,0,0,-336,-352,-344,0,
+ 0,0,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,0,
- -589,0,0,0,0,0,0,0,-181,0,
- 0,0,0,0,0,0,0,0,-476,0,
+ -353,-346,0,0,0,0,0,-369,0,-377,
+ 0,-66,0,0,0,0,-350,0,0,0,
+ 0,-548,-392,-396,-319,0,0,0,0,-96,
+ 0,0,0,-397,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-268,-155,0,0,0,0,0,
+ -320,0,-20,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-182,-525,0,0,-504,0,0,
+ 0,0,0,0,0,-321,0,-409,0,-368,
+ 0,0,0,0,-322,0,-489,0,0,0,
+ -410,-419,-420,-427,0,0,0,0,0,0,
+ 0,0,0,0,-264,-225,0,-429,0,0,
+ -455,-202,-265,-327,0,0,0,-447,0,0,
+ 0,0,0,0,0,-448,-453,0,0,0,
+ 0,0,-469,-471,0,0,0,0,0,-484,
+ 0,0,0,-329,0,0,0,-522,0,0,
+ 0,-371,-490,0,-492,0,0,0,0,0,
+ 0,0,0,0,0,-500,-513,0,-525,0,
+ 0,0,0,0,0,0,-526,0,-542,0,
+ 0,0,0,0,0,0,0,-285,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-183,-415,0,-518,0,0,0,
+ -356,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-549,-439,0,0,0,-556,
+ 0,0,0,0,0,0,0,0,0,-571,
+ -518,0,-359,-364,0,-551,-366,0,0,0,
+ 0,0,0,0,0,0,-384,0,0,0,
+ 0,-390,0,0,-370,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-445,0,
+ -552,0,0,-562,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,-590,
- 0,0,0,0,0,-184,0,-185,0,0,
- 0,0,0,-186,0,0,0,-519,0,0,
+ -579,-407,-598,-601,0,0,0,0,-381,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,-398,0,0,
+ 0,0,-399,0,-87,0,0,0,-403,0,
0,0,0,0,0,0,0,0,0,0,
- -537,0,-129,-187,0,0,-188,0,-561,0,
- 0,0,0,0,-72,0,0,0,0,-310,
- -1,-317,-493,-189,0,0,0,0,0,0,
- -409,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-318,-49,0,0,0,-319,
+ 0,0,0,0,0,0,0,-602,0,-604,
+ 0,0,0,0,0,-476,0,0,0,0,
+ 0,-557,0,0,-405,-446,0,-461,0,0,
+ 0,0,-88,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -54,0,0,0,0,0,0,0,-190,0,
- 0,0,0,0,-557,0,-320,-399,0,0,
- 0,0,-191,0,0,0,0,0,-194,0,
- 0,0,0,0,0,0,0,-434,0,0,
- 0,0,0,-99,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-195,0,-324,0,
- 0,0,0,0,-123,0,0,0,0,0,
- -196,-340,0,-200,0,0,0,0,0,0,
- 0,0,0,0,-325,-327,-203,0,0,0,
- 0,0,-213,-342,0,-214,0,0,-465,-376,
- 0,0,0,-217,0,0,0,0,0,0,
- 0,0,0,0,-357,0,0,0,0,0,
- 0,0,0,0,0,0,-252,0,0,0,
- 0,-344,-348,0,0,0,0,0,0,-362,
- 0,0,-366,-14,-223,0,0,0,0,0,
- 0,0,0,0,0,0,0,-225,0,0,
- 0,0,-594,0,0,0,-364,0,0,-473,
- 0,-368,0,-97,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-207,
- 0,0,0,0,-227,0,0,0,0,-423,
- 0,0,0,-419,0,0,0,0,0,0,
- 0,0,0,0,0,0,-229,-369,-230,-231,
- 0,0,0,0,0,0,-232,-76,0,0,
- 0,-379,0,0,0,0,0,0,0,0,
- 0,0,-484,-234,-249,-430,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-396,0,0,-131,0,0,0,
- 0,0,0,-382,-388,0,-405,0,0,0,
- 0,0,-260,-410,-261,0,0,0,0,0,
- 0,0,0,-497,0,-501,-268,0,0,0,
- 0,0,-274,-282,0,0,0,0,0,0,
- 0,0,-98,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-284,0,-288,0,0,
- 0,0,0,0,0,0,0,-205,0,0,
- 0,-290,-397,-558,-94,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-458,0,0,-411,0,
- -424,-291,0,-296,0,0,0,-401,-403,-457,
- -548,-462,0,0,-444,0,-464,-45,-210,-304,
- 0,0,-305,0,-440,0,0,0,0,0,
- 0,0,0,0,0,0,0,-502,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,-471,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-199,0,0,0,
- 0,0,-459,0,0,0,0,0,-478,-306,
- 0,-137,0,0,0,0,-314,0,-323,0,
- 0,0,0,-492,0,0,-326,0,-509,-583,
- 0,0,-331,0,0,0,0,0,0,-486,
- 0,0,0,-122,0,0,0,0,0,-272,
- -491,-495,0,-517,0,0,0,0,0,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,-333,-595,0,0,0,
- 0,-529,-505,-46,0,0,-532,0,0,0,
- 0,0,0,0,-334,0,0,0,0,0,
- 0,0,0,0,0,-350,-295,-483,0,0,
- 0,0,0,0,0,-522,0,0,0,0,
- 0,0,0,0,0,0,0,0,-531,0,
- 0,-250,0,0,0,0,0,-541,0,0,
- 0,0,0,0,0,-351,-543,-367,-533,0,
- 0,0,0,0,0,-375,0,0,-390,0,
- 0,0,0,0,0,0,-394,-395,0,-211,
- 0,0,0,0,0,0,0,0,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,-341,-407,-408,-544,0,
- 0,0,0,-417,0,-538,-539,0,0,0,
- 0,-545,-44,-480,-418,0,0,-564,0,0,
- 0,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,0,0,0,0,
- -155,-425,0,0,0,0,0,0,-19,0,
- 0,0,-427,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- -542,-567,0,-445,-572,-446,-575,0,0,0,
- 0,0,0,0,0,0,-221,0,0,0,
- 0,0,0,-451,0,0,0,0,0,-442,
- -591,-224,0,0,0,0,-236,-584,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,-467,0,0,0,0,-469,-482,0,-488,
- 0,0,-490,-498,0,0,-511,-523,0,-524,
- 0,-507,-540,0,0,0,0,-547,-549,0,
- 0,0,0,0,-550,0,0,0,0,0,
- -560,0,-576,-577,0,0,-596,-599,-600,-602,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-283,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,
- 0,-437,0,0,0,0,0,0,0,0,
- 0,0,0,0,-573,0,-555,0,0,0,
- 0,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,-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,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,-365,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,0,0,0,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,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-89,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- -90,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-233,0,0,0,0,
- 0,-91,0,0,0,0,0,0,0,0,
+ 0,0,0,-89,0,0,0,-488,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-493,-497,-412,-507,
+ 0,0,0,0,-90,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-285,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,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,-289,-130,0,0,
- 0,-78,0,-263,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-533,
+ -234,-543,0,0,0,0,-92,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,-48,0,0,0,0,0,-482,-413,0,
+ 0,0,0,0,0,0,-426,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,-291,-130,-459,0,0,-538,0,-266,-464,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,-515,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-466,0,-545,0,
+ 0,0,0,-560,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-292,-132,0,
- 0,0,0,0,0,0,0,-494,0,0,
- 0,0,0,0,0,0,0,0,0,0,
+ 0,0,-294,-132,-480,0,0,0,0,0,
+ -494,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-503,
+ 0,0,0,0,0,-531,-535,-540,0,0,
+ 0,0,0,-509,-541,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-359,-135,
+ 0,0,0,-361,-135,-546,0,0,0,-566,
+ -569,-547,0,0,0,0,0,0,0,0,
+ 0,0,0,-134,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-574,0,
+ 0,0,0,0,-568,-577,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-363,0,-586,0,0,0,
+ 0,0,0,-593,0,0,0,0,0,0,
+ 0,0,0,0,-152,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -487,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-566,
- 0,0,0,0,-329,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-361,
- -64,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-134,
+ 0,0,0,0,0,0,-246,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-428,0,0,0,0,
+ 0,0,0,0,-273,0,0,0,0,0,
+ 0,0,0,0,0,-162,0,0,0,0,
0,0,0,0,0,0,0,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,0,-430,0,0,0,
+ 0,0,0,0,0,-274,0,0,0,0,
+ 0,0,0,0,0,0,-276,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -426,0,0,0,0,0,0,0,0,-520,
+ 0,0,0,0,0,0,0,0,-590,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-256,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-434,0,0,
+ 0,0,0,0,0,0,-340,0,0,0,
+ 0,0,0,0,0,0,0,-279,0,0,
0,0,0,0,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,0,0,0,0,0,0,-532,0,
+ 0,0,0,0,0,0,0,-341,0,0,
+ 0,0,0,0,0,0,0,0,-305,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-428,-441,0,0,0,0,0,0,-264,
0,0,0,0,0,0,0,0,0,0,
- 0,-152,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-400,-564,
+ 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,0,-432,0,0,0,0,0,0,0,
- 0,0,-554,0,0,0,0,0,0,0,
- 0,0,-162,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -47,0,0,0,0,0,0,0,0,0,
- 0,-257,0,0,0,0,0,0,0,0,
- 0,0,0,-530,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,0,
- 0,-48,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-265,0,-562,0,0,0,0,-258,
0,0,0,0,0,0,0,0,0,0,
+ -572,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-93,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-443,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-570,0,0,0,0,
- 0,0,0,0,0,0,0,0,-92,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,-81,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-82,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-138,
+ 0,0,0,0,0,-122,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-472,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-523,0,
+ 0,0,0,0,0,0,0,-379,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-20,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-93,0,
+ 0,0,0,0,0,-481,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,-463,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,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,
- -82,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-138,0,0,0,0,0,-259,
- 0,0,0,0,0,0,0,0,-245,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-377,0,0,0,0,0,0,0,0,
- 0,0,0,0,-516,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-485,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,-587,-588,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,-461,0,0,0,
- 0,-391,0,-273,0,0,0,0,0,0,
- 0,0,-515,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-380,
+ 0,0,0,-517,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-587,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-17,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-585,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ -17,0,0,0,0,0,0,0,0,0,
+ 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,-470,0,0,0,0,0,0,
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,-84,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,
+ -85,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,-23,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,-24,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,-25,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,-26,
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,-27,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,-28,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,-29,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,-67,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,-79,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-29,0,0,0,0,0,0,0,0,
+ 0,-80,0,0,0,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,-143,0,0,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,-245,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,0,0,0,0,0,0,-465,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-143,
+ 0,-514,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,-244,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-463,0,0,0,0,0,0,
- -479,0,0,0,0,0,0,0,0,0,
- 0,0,0,-398,0,-303,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,-516,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-573,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-512,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,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,-514,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-571,-431,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-576,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-574,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-136,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-21,0,0,0,0,0,
+ 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,-304,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-365,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,-220,0,-271,0,0,0,0,0,
+ -339,0,0,0,0,0,0,0,-387,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-136,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-153,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-302,0,0,0,0,0,
- 0,0,0,0,0,0,0,-363,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-586,0,-270,
- 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,-424,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-385,0,0,0,0,0,0,0,0,
- -337,0,0,0,0,0,0,0,0,0,
- 0,0,-219,0,0,0,0,0,0,-294,
- -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,-144,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,-314,0,0,0,0,0,0,0,
+ -357,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-422,
- 0,0,0,0,0,0,-215,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,-375,0,0,
+ 0,0,0,0,-394,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,-144,0,0,0,0,0,0,0,
- -581,0,0,0,0,0,0,0,0,0,
+ 0,0,-214,0,0,0,0,0,0,-197,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-367,-295,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-388,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-521,0,0,0,0,0,-312,0,
0,0,0,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,-373,0,0,0,0,0,0,-392,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,-449,0,0,0,0,0,0,0,
+ -491,0,0,0,-529,0,0,0,-558,0,
+ 0,0,-581,0,0,0,0,0,0,0,
+ -582,0,0,0,0,0,-588,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-296,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-447,0,0,0,-197,0,
- 0,0,0,0,0,-489,0,0,0,0,
+ 0,0,0,0,0,0,-299,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-527,0,0,
- 0,-556,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-579,0,0,0,0,
- 0,0,0,0,-338,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-580,0,0,0,0,0,0,0,0,
- 0,-339,0,0,0,-553,-597,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
@@ -659,7 +659,7 @@ public class GPPSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,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;
@@ -669,8 +669,8 @@ public class GPPSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface BaseAction {
public final static char baseAction[] = {
- 188,4,123,89,89,31,31,81,81,43,
- 43,45,45,220,1,1,15,15,15,15,
+ 188,4,123,89,89,31,31,81,81,44,
+ 44,45,45,220,1,1,15,15,15,15,
15,15,15,16,16,16,14,11,11,6,
6,6,6,6,6,2,73,73,5,5,
12,12,49,49,148,148,149,67,67,48,
@@ -682,31 +682,31 @@ public class GPPSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
152,152,20,20,21,21,22,22,22,27,
27,27,27,28,28,28,30,30,30,32,
32,32,32,32,33,33,33,34,34,35,
- 35,36,36,38,38,39,39,40,40,47,
+ 35,37,37,38,38,39,39,40,40,47,
47,46,46,46,46,46,46,46,46,46,
- 46,46,46,46,44,37,156,156,103,103,
+ 46,46,46,46,43,36,156,156,103,103,
192,192,93,221,221,74,74,74,74,74,
- 74,74,74,74,75,75,75,72,72,64,
- 64,193,193,76,76,76,109,109,194,194,
+ 74,74,74,74,75,75,75,72,72,54,
+ 54,193,193,76,76,76,109,109,194,194,
77,77,77,195,195,78,78,78,78,78,
79,79,94,94,94,94,94,94,94,94,
- 54,54,54,54,54,126,126,124,124,55,
- 196,29,29,29,29,52,52,90,90,90,
+ 55,55,55,55,55,126,126,124,124,56,
+ 196,29,29,29,29,53,53,90,90,90,
90,90,162,162,163,163,163,163,163,158,
158,158,159,159,159,160,160,160,161,161,
161,91,91,91,91,91,92,92,92,13,
13,13,13,13,13,13,13,13,13,13,
104,130,130,130,130,130,130,128,128,128,
164,129,129,197,166,166,165,165,132,132,
- 110,85,85,86,87,57,51,167,167,58,
+ 110,85,85,86,87,58,52,167,167,59,
96,96,168,168,157,157,133,134,134,135,
- 71,71,169,169,65,65,65,60,60,59,
- 66,66,82,82,68,68,68,62,97,97,
- 106,105,105,69,69,61,61,70,70,53,
+ 71,71,169,169,65,65,65,61,61,60,
+ 66,66,82,82,69,69,69,63,97,97,
+ 106,105,105,70,70,62,62,68,68,50,
107,107,107,99,99,99,100,100,101,101,
101,102,102,111,111,111,113,113,112,112,
222,222,98,98,199,199,199,199,199,137,
- 50,50,171,198,198,138,138,138,138,139,
+ 51,51,171,198,198,138,138,138,138,139,
173,200,200,42,42,127,140,140,140,140,
202,115,114,114,131,131,131,174,175,175,
175,175,175,175,175,175,175,175,175,204,
@@ -724,656 +724,656 @@ public class GPPSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
122,122,211,211,211,145,145,136,136,212,
212,23,23,23,41,41,24,24,213,213,
182,182,182,183,183,214,214,184,184,25,
- 25,215,215,185,185,185,26,63,216,216,
+ 25,215,215,185,185,185,26,64,216,216,
217,217,186,186,186,146,146,146,18,18,
- 32,32,40,16,75,218,147,187,187,187,
- 29,56,90,135,135,135,117,117,117,197,
- 202,115,62,71,164,13,13,29,188,188,
- 1547,35,2190,2143,3971,4312,27,30,31,1197,
- 1249,26,28,2191,25,23,50,1303,104,75,
- 76,106,1340,582,531,532,533,1445,1388,1803,
- 1601,3680,1523,1613,1611,1649,1647,2371,1737,1758,
- 141,3501,270,3732,2255,172,156,142,5939,600,
- 1612,1347,35,1930,384,1657,35,1091,32,5972,
- 5448,27,30,31,1197,1249,335,28,2795,229,
- 1347,1949,2142,34,339,1347,35,3055,534,531,
- 532,533,154,71,2297,35,274,1673,2601,186,
- 232,227,228,270,258,1806,4762,1350,5688,1311,
- 2859,35,1091,32,271,3699,27,30,31,1197,
- 1249,59,28,1883,315,1951,317,2834,180,550,
- 310,1281,2601,328,385,163,935,239,242,245,
- 248,2693,154,2104,1767,1897,35,1091,32,2664,
- 668,41,30,31,1197,1249,1926,577,535,531,
- 532,533,2860,549,2900,272,650,1641,2825,3314,
- 3988,4049,4734,3242,2646,35,1091,32,2751,1306,
- 27,30,31,1197,1249,26,28,952,25,23,
- 50,1303,104,75,76,106,1340,4110,302,306,
- 1889,1445,1388,339,1601,434,1523,1613,1611,1649,
- 1647,2788,1737,1758,141,1719,1292,675,443,417,
- 513,142,2177,1347,35,2142,3053,4171,2658,2932,
- 35,1091,32,3396,3699,27,30,31,1197,1249,
- 26,28,2489,507,514,91,2646,35,1091,32,
- 2751,1306,27,30,31,1197,1249,26,28,952,
- 25,23,50,1303,104,75,76,106,1340,1347,
- 35,6112,6085,1445,1388,339,1601,377,1523,1613,
- 1611,1649,1647,551,1737,1758,141,2377,3372,76,
- 35,276,513,142,3410,509,1347,35,279,4171,
- 3315,35,1091,32,3124,4373,27,30,31,1197,
- 1249,57,28,722,2105,2779,514,552,2817,2646,
- 35,1091,32,2751,1306,27,30,31,1197,1249,
- 26,28,952,25,23,50,1303,104,75,76,
- 106,1340,2207,35,274,623,1445,1388,339,1601,
- 1680,1523,1613,1611,1649,1647,62,1737,1758,141,
- 3372,2736,1486,42,3015,513,142,509,534,531,
- 532,533,4171,2353,35,1091,32,2721,5396,27,
- 30,31,1197,1249,335,28,3729,2831,3536,514,
- 2817,2872,35,1091,32,2751,1306,27,30,31,
- 1197,1249,26,28,952,25,23,50,1303,104,
- 75,76,106,1340,3732,1382,399,62,1445,1388,
- 339,1601,4434,1523,1613,1611,1649,1647,560,1737,
- 1758,141,312,3180,317,44,3015,513,142,494,
- 509,1304,2633,1190,4171,3274,2859,35,1091,32,
- 61,3699,27,30,31,1197,1249,58,28,3175,
- 2856,514,2796,2817,3158,35,1091,32,1487,1306,
- 27,30,31,1197,1249,26,28,952,25,23,
- 50,1303,104,75,76,106,1340,2424,76,35,
- 276,1445,1388,3547,1601,281,1523,1613,1611,1649,
- 1647,2762,1737,1758,141,1347,35,2142,273,3254,
- 375,142,510,2724,35,1091,32,3562,1306,27,
- 30,31,1197,1249,26,28,952,25,23,50,
- 1303,104,75,76,106,1340,2757,35,2142,273,
- 1445,1388,2441,1601,349,1523,1613,1611,1649,1647,
- 350,1737,1758,141,1347,3407,2142,73,3254,375,
- 142,3810,1481,3465,35,1091,32,2795,1306,27,
- 30,31,1197,1249,26,28,952,25,23,50,
- 1303,104,75,76,106,1340,2757,35,2142,3408,
- 1445,1388,493,1601,1977,1523,1613,1611,1649,1647,
- 2795,2694,381,2713,2633,35,290,2797,3018,35,
- 1091,32,637,1306,27,30,31,1197,1249,26,
- 28,952,25,23,50,1303,104,75,76,106,
- 1340,2515,76,35,449,1445,1388,6026,1601,518,
- 1523,1613,1611,1649,1647,2892,1737,1758,141,3047,
- 439,382,2713,3254,375,142,2633,3608,290,3014,
- 2945,35,1091,32,3260,1306,27,30,31,1197,
- 1249,26,28,952,25,23,50,1303,104,75,
- 76,106,1340,1347,35,1930,384,1445,1388,1352,
- 1601,3153,1523,1613,1611,1649,1647,1262,1737,1758,
- 141,3047,1978,35,1091,32,547,142,40,30,
- 31,1197,1249,3987,2231,62,2020,35,1930,384,
- 4829,3285,35,1091,32,448,1306,27,30,31,
- 1197,1249,26,28,952,25,23,50,1303,104,
- 75,76,106,1340,539,3257,373,2713,1445,1388,
- 1303,1601,1680,1523,1613,1611,1649,1647,49,1737,
- 1758,141,3705,2079,1929,733,2231,156,142,3285,
- 35,1091,32,320,1306,27,30,31,1197,1249,
- 26,28,952,25,23,50,1303,104,75,76,
- 106,1340,1347,35,2142,275,1445,1388,2160,1601,
- 1833,1523,1613,1611,1649,1647,2973,1737,1758,141,
- 442,3590,3593,1723,2795,369,142,2751,3285,35,
- 1091,32,69,1306,27,30,31,1197,1249,26,
- 28,952,25,23,50,1303,104,75,76,106,
- 1340,456,3644,172,545,1445,1388,764,1601,177,
- 1523,1613,1611,1649,1647,2166,1737,1758,141,637,
- 1978,35,1091,32,369,142,3198,30,31,1197,
- 1249,3152,2831,1292,3233,3009,5763,650,521,2751,
- 3285,35,1091,32,519,1306,27,30,31,1197,
- 1249,26,28,952,25,23,50,1303,104,75,
- 76,106,1340,347,339,172,368,1445,1388,836,
- 1601,357,1523,1613,1611,1649,1647,2973,1737,1758,
- 141,3494,1347,35,290,1311,369,142,644,3085,
- 35,1091,32,2729,1306,27,30,31,1197,1249,
- 26,28,952,25,23,50,1303,104,75,76,
- 106,1340,1465,3620,348,367,1445,1388,158,1601,
- 196,1523,1613,1611,1649,1647,3494,1737,1758,141,
- 1311,340,1058,1052,345,547,142,1347,2031,2141,
- 2799,35,1091,32,1481,1306,27,30,31,1197,
- 1249,26,28,952,25,23,50,1303,104,75,
- 76,106,1340,158,2683,35,392,1445,1388,2489,
- 1601,2080,1523,1613,1611,1649,1647,365,1737,1758,
- 141,154,2261,1258,2091,3399,140,142,3285,35,
- 1091,32,3066,1306,27,30,31,1197,1249,26,
- 28,952,25,23,50,1303,104,75,76,106,
- 1340,1347,35,2142,3502,1445,1388,1276,1601,246,
- 1523,1613,1611,1649,1647,2284,1737,1758,141,2092,
- 1347,35,2142,278,157,142,3285,35,1091,32,
- 1528,1306,27,30,31,1197,1249,26,28,952,
- 25,23,50,1303,104,75,76,106,1340,563,
- 2683,35,392,1445,1388,2939,1601,1680,1523,1613,
- 1611,1649,1647,546,1737,1758,141,172,3623,1347,
- 3454,909,153,142,3285,35,1091,32,1680,1306,
- 27,30,31,1197,1249,26,28,952,25,23,
- 50,1303,104,75,76,106,1340,158,2683,35,
- 392,1445,1388,813,1601,3536,1523,1613,1611,1649,
- 1647,3494,1737,1758,141,1311,538,3257,2269,3562,
- 152,142,3285,35,1091,32,1680,1306,27,30,
- 31,1197,1249,26,28,952,25,23,50,1303,
- 104,75,76,106,1340,561,455,2845,158,1445,
- 1388,1654,1601,675,1523,1613,1611,1649,1647,3494,
- 1737,1758,141,1311,3624,1347,3240,5352,151,142,
- 3285,35,1091,32,1680,1306,27,30,31,1197,
- 1249,26,28,952,25,23,50,1303,104,75,
- 76,106,1340,1347,35,290,158,1445,1388,2973,
- 1601,285,1523,1613,1611,1649,1647,3494,1737,1758,
- 141,1311,3630,2394,3034,51,150,142,3285,35,
- 1091,32,2365,1306,27,30,31,1197,1249,26,
- 28,952,25,23,50,1303,104,75,76,106,
- 1340,518,195,172,158,1445,1388,5710,1601,1801,
- 1523,1613,1611,1649,1647,3494,1737,1758,141,1311,
- 1262,2640,3123,322,149,142,3285,35,1091,32,
- 2548,1306,27,30,31,1197,1249,26,28,952,
- 25,23,50,1303,104,75,76,106,1340,338,
- 3290,2480,158,1445,1388,2795,1601,1680,1523,1613,
- 1611,1649,1647,3531,1737,1758,141,3810,3810,1289,
- 3323,2763,148,142,3285,35,1091,32,2365,1306,
- 27,30,31,1197,1249,26,28,952,25,23,
- 50,1303,104,75,76,106,1340,258,573,5330,
- 637,1445,1388,1292,1601,1418,1523,1613,1611,1649,
- 1647,172,1737,1758,141,1311,3810,357,3468,520,
- 147,142,3285,35,1091,32,1680,1306,27,30,
- 31,1197,1249,26,28,952,25,23,50,1303,
- 104,75,76,106,1340,70,95,24,2332,1445,
- 1388,2973,1601,321,1523,1613,1611,1649,1647,172,
- 1737,1758,141,1311,3810,449,541,633,146,142,
- 3285,35,1091,32,3378,1306,27,30,31,1197,
- 1249,26,28,952,25,23,50,1303,104,75,
- 76,106,1340,2454,199,68,3281,1445,1388,1432,
- 1601,2973,1523,1613,1611,1649,1647,308,1737,1758,
- 141,3810,3810,2877,3454,96,145,142,3285,35,
- 1091,32,3732,1306,27,30,31,1197,1249,26,
- 28,952,25,23,50,1303,104,75,76,106,
- 1340,2708,53,52,197,1445,1388,1292,1601,2832,
- 1523,1613,1611,1649,1647,172,1737,1758,141,3957,
- 3145,3810,3318,3913,144,142,3285,35,1091,32,
- 376,1306,27,30,31,1197,1249,26,28,952,
- 25,23,50,1303,104,75,76,106,1340,3684,
- 3684,537,346,1445,1388,3553,1601,2973,1523,1613,
- 1611,1649,1647,282,1737,1758,141,3261,35,277,
- 3664,2908,143,142,3225,35,1091,32,2656,1306,
- 27,30,31,1197,1249,26,28,952,25,23,
- 50,1303,104,75,76,106,1340,2252,400,3221,
- 219,1445,1388,5487,1601,284,1523,1613,1611,1649,
- 1647,2795,1737,2864,162,3465,35,1091,32,2973,
- 1306,27,30,31,1197,1249,26,28,952,25,
- 23,50,1303,104,75,76,106,1340,1004,3465,
- 1660,3614,1445,1388,3535,1601,3433,1523,1613,1611,
- 1649,1647,1973,1737,2864,162,3172,6048,1347,35,
- 1930,384,3348,323,172,386,387,1814,1461,423,
- 423,3285,35,1091,32,3183,1306,27,30,31,
- 1197,1249,26,28,952,25,23,50,1303,104,
- 75,76,106,1340,2066,2359,2580,62,1445,1388,
- 270,1601,5742,1523,1613,1611,1649,1647,3162,1737,
- 1758,141,3810,3810,352,2184,2478,572,142,3285,
- 35,1091,32,527,1306,27,30,31,1197,1249,
- 26,28,952,25,23,50,1303,104,75,76,
- 106,1340,3811,88,556,62,1445,1388,2544,1601,
- 5855,1523,1613,1611,1649,1647,2809,1737,1758,141,
- 2605,3810,336,2914,3024,138,142,3285,35,1091,
- 32,2164,1306,27,30,31,1197,1249,26,28,
- 952,25,23,50,1303,104,75,76,106,1340,
- 2612,3684,2893,86,1445,1388,100,1601,1793,1523,
- 1613,1611,1649,1647,172,1737,1758,141,2093,1978,
- 35,1091,32,187,142,3259,30,31,1197,1249,
- 3732,1092,1988,35,449,631,3680,6026,425,3465,
- 35,1091,32,3122,1306,27,30,31,1197,1249,
- 26,28,952,25,23,50,1303,104,75,76,
- 106,1340,1347,35,1930,384,1445,1388,3600,1601,
- 3866,1523,1613,1611,1649,1647,3013,1737,2864,162,
- 3465,35,1091,32,2104,1306,27,30,31,1197,
- 1249,26,28,952,25,23,50,1303,104,75,
- 76,106,1340,2608,427,172,3399,1445,1388,1107,
- 1601,294,1523,1613,1611,1649,1647,389,1737,2864,
- 162,423,62,1347,35,1930,384,6015,3465,35,
- 1091,32,575,1306,27,30,31,1197,1249,26,
- 28,952,25,23,50,1303,104,75,76,106,
- 1340,1347,35,1930,384,1445,1388,2429,1601,3953,
- 1523,1613,1611,1649,1647,430,1737,2864,162,3465,
- 35,1091,32,2006,1306,27,30,31,1197,1249,
- 26,28,952,25,23,50,1303,104,75,76,
- 106,1340,519,429,430,2345,1445,1388,3814,1601,
- 6052,1523,1613,1611,1649,1647,4131,1737,2864,162,
- 446,3590,3593,443,614,2877,3454,3465,35,1091,
- 32,419,1306,27,30,31,1197,1249,26,28,
- 952,25,23,50,1303,104,75,76,106,1340,
- 1347,35,1930,384,1445,1388,2955,1601,2364,1523,
- 1613,1611,1649,1647,2789,1737,2864,162,3585,35,
- 1091,32,289,1306,27,30,31,1197,1249,26,
- 28,952,25,23,50,1303,104,75,76,106,
- 1340,3732,428,2110,250,1445,1388,3080,1601,2656,
- 1523,1613,1611,1649,1647,2370,1737,2864,162,1311,
- 3810,2573,3810,2795,3120,1311,534,531,532,533,
- 418,1910,35,3587,32,5972,5448,27,30,31,
- 1197,1249,335,28,2960,3810,1347,35,1930,384,
- 3810,3045,154,67,534,531,532,533,154,1996,
- 637,3770,35,1930,384,598,4190,284,3456,3124,
- 87,421,3212,100,234,62,66,3810,2578,1947,
- 6076,65,378,3146,582,531,532,533,49,725,
- 315,1951,317,2834,1929,1670,310,1281,2795,328,
- 2102,3465,604,270,3465,35,1091,32,64,1306,
- 27,30,31,1197,1249,26,28,952,25,23,
- 50,1303,104,75,76,106,1340,2270,2860,172,
- 229,1445,1388,2768,1601,1307,1523,1613,1611,1649,
- 2656,817,172,637,2719,351,2169,3156,4964,415,
- 3582,232,227,228,527,3650,3081,1401,582,531,
- 532,533,372,3196,172,271,909,1007,2170,3677,
- 1499,35,1091,32,2189,5448,27,30,31,1197,
- 1249,335,28,324,331,3810,3168,554,239,242,
- 245,248,2693,534,531,532,533,2016,35,1930,
- 384,668,172,172,229,3118,2625,2974,577,629,
- 3810,725,398,172,3645,3928,3161,3016,2751,2825,
- 3314,3988,4049,4734,3242,241,227,228,2935,315,
- 1951,317,2834,2656,2859,313,1281,3810,329,270,
- 3684,4231,3810,339,3465,35,1091,32,4110,1306,
- 27,30,31,1197,1249,26,28,952,25,23,
- 50,1303,104,75,76,106,1340,1031,4292,370,
- 2481,1445,1388,4353,1601,2950,1523,1613,1611,2604,
- 2282,35,1091,32,2651,5448,27,30,31,1197,
- 1249,335,28,535,531,532,533,93,172,3147,
- 3197,3247,2446,534,531,532,533,3384,3373,35,
- 1091,32,3810,4373,27,30,31,1197,1249,56,
- 28,5381,71,2973,3435,1074,1883,35,1091,32,
- 5972,5396,27,30,31,1197,1249,335,28,315,
- 1951,317,2834,318,3810,311,1281,1351,329,534,
- 531,532,533,3156,172,172,388,172,4507,2362,
- 423,4837,348,3472,172,3495,220,4789,2411,319,
- 534,531,532,533,2973,55,2973,3496,527,342,
- 1058,1052,345,2206,1705,315,1951,317,3179,3239,
- 331,310,1281,3465,35,1091,32,935,1306,27,
- 30,31,1197,1249,26,28,952,25,23,50,
- 1303,104,75,76,106,1340,3654,557,185,299,
- 1445,1388,438,1601,452,1523,1613,2624,2683,35,
- 3073,4844,3661,3810,62,3465,35,1091,32,6102,
- 1306,27,30,31,1197,1249,26,28,952,25,
- 23,50,1303,104,75,76,106,1340,60,302,
- 306,1889,1445,1388,54,1601,2578,1523,2418,172,
- 49,172,1924,2930,1687,3464,1929,859,3810,3810,
- 172,3732,172,3013,3602,3652,4853,172,172,1433,
- 3497,4775,2751,3555,3396,1695,35,1091,32,5972,
- 5396,27,30,31,1197,1249,335,28,2973,536,
- 555,1305,535,531,532,533,3064,339,534,531,
- 532,533,2468,35,3587,32,5972,5396,27,30,
- 31,1197,1249,335,28,3156,4789,1347,35,1930,
- 384,4171,3280,3995,1032,3598,531,532,533,172,
- 1431,296,3873,2198,315,1951,317,3443,1997,3647,
- 310,1281,293,3356,172,236,935,3556,2691,2973,
- 2977,330,331,3679,541,582,531,532,533,49,
- 3810,315,1951,317,2709,1929,3994,310,1281,3227,
- 439,3810,3810,604,1370,35,3587,32,5972,5396,
- 27,30,31,1197,1249,335,28,534,531,532,
- 533,3327,402,534,531,532,533,534,531,532,
- 533,229,374,3457,1436,725,3442,3732,303,306,
- 1889,3446,172,3810,172,3356,2699,2973,2751,5933,
- 415,3582,237,227,228,3291,2834,582,531,532,
- 533,694,328,315,1951,317,2531,3493,4011,310,
- 1281,600,1311,339,99,604,2561,35,3587,32,
- 5972,5396,27,30,31,1197,1249,335,28,3810,
- 191,6019,1347,35,1930,384,2903,4171,3810,3598,
- 531,532,533,229,154,154,3678,3810,3557,172,
- 178,1396,160,1759,2045,2832,3659,3356,300,3712,
- 4475,6116,415,3582,244,227,228,3616,3615,566,
- 1347,35,1930,384,49,315,1951,317,1404,193,
- 46,310,1281,3465,35,1091,32,604,1306,27,
- 30,31,1197,1249,26,28,952,25,23,50,
- 1303,104,75,76,106,1340,531,2113,3618,3810,
- 1445,1388,49,1601,3740,2486,172,172,1929,932,
- 1054,4150,4015,172,2651,3968,4556,1311,3810,535,
- 531,532,533,5933,415,3582,3465,35,1091,32,
- 1935,1306,27,30,31,1197,1249,26,28,952,
- 25,23,50,1303,104,75,76,106,1340,447,
- 154,277,3621,1445,1388,600,1601,2044,2569,3405,
- 35,1091,32,3821,1306,27,30,31,1197,1249,
- 26,28,952,25,23,50,1303,569,75,76,
- 225,2973,3810,3156,3704,172,3969,172,154,4915,
- 3369,5708,3785,194,178,1396,637,1347,35,1930,
- 384,201,213,5717,3708,200,210,211,212,214,
- 3253,4000,1,567,581,167,600,3493,172,3322,
- 331,1311,2923,166,295,181,165,168,169,170,
- 171,172,3954,534,531,532,533,2909,2253,49,
- 3988,225,525,3813,3219,1929,684,3713,3973,154,
- 3991,725,2578,1000,154,178,1396,637,3972,2975,
- 198,2081,201,213,5717,3862,200,210,211,212,
- 214,3815,3249,3993,4017,581,167,3115,3989,3267,
- 4019,7048,7048,1292,166,7048,182,165,168,169,
- 170,171,172,179,2099,35,1091,32,5968,5396,
- 27,30,31,1197,1249,335,28,3046,35,1091,
- 32,5840,5396,27,30,31,1197,1249,335,28,
- 7048,3156,1499,35,1091,32,7048,5448,27,30,
- 31,1197,1249,335,28,3718,7048,1973,347,2751,
- 7048,7048,6048,7048,3562,534,531,532,533,1347,
- 35,1930,384,315,1951,317,7048,326,331,310,
- 1281,7048,7048,5381,3644,3386,315,1951,317,7048,
- 7048,7048,310,1281,7048,7048,348,7048,3002,715,
- 7048,315,1951,317,2834,7048,7048,311,1281,348,
- 329,49,7048,340,1058,1052,345,1929,733,7048,
- 7048,3346,535,531,532,533,340,1058,1052,345,
- 3465,35,1091,32,2141,1306,27,30,31,1197,
- 1249,26,28,952,25,23,50,1303,104,75,
- 76,106,1340,501,7048,3613,7048,1445,1388,600,
- 2335,3465,35,1091,32,2605,1306,27,30,31,
- 1197,1249,26,28,952,25,23,50,1303,104,
- 75,76,106,1340,339,7048,7048,7048,1445,1388,
- 7048,2336,154,7048,7048,7048,7048,499,500,186,
- 7048,7048,7048,7048,7048,7048,7048,7048,5688,3465,
- 35,1091,32,362,1306,27,30,31,1197,1249,
- 26,28,952,25,23,50,1303,104,75,76,
- 106,1340,7048,426,7048,7048,1445,1388,7048,2368,
- 3465,35,1091,32,7048,1306,27,30,31,1197,
- 1249,26,28,952,25,23,50,1303,104,75,
- 76,106,1340,7048,188,7048,7048,1445,1388,7048,
- 2376,3465,35,1091,32,7048,1306,27,30,31,
- 1197,1249,26,28,952,25,23,50,1303,104,
- 75,76,106,1340,7048,7048,369,7048,1445,1388,
- 600,2383,3465,35,1091,32,7048,1306,27,30,
- 31,1197,1249,26,28,952,25,23,50,1303,
- 104,75,76,106,1340,225,7048,3554,7048,1445,
- 1388,2751,2384,154,7048,7048,7048,7048,7048,178,
- 1396,637,7048,7048,7048,7048,201,213,5717,2239,
- 200,210,211,212,214,7048,3644,461,1679,581,
- 167,600,172,7048,255,7048,1311,7048,166,7048,
- 3164,165,168,169,170,171,172,7048,7048,7048,
- 7048,582,531,532,533,7048,225,534,531,532,
- 533,7048,7048,7048,154,7048,7048,7048,7048,154,
- 178,1396,637,7048,7048,725,1766,201,213,5717,
- 7048,200,210,211,212,214,7048,7048,553,1792,
- 581,167,600,7048,7048,356,3249,229,991,166,
- 7048,176,165,168,169,170,171,172,2875,3074,
- 3106,7048,582,531,532,533,7048,225,247,227,
- 228,535,531,532,533,154,7048,7048,7048,7048,
- 2484,178,1396,637,2751,7048,7048,7048,201,213,
- 5717,7048,200,210,211,212,214,7048,7048,645,
- 1976,581,167,600,7048,7048,7048,7048,229,339,
- 166,7048,174,165,168,169,170,171,172,7048,
- 7048,2795,7048,582,531,532,533,7048,225,250,
- 227,228,7048,3462,7048,7048,154,7048,7048,7048,
- 2651,7048,178,1396,637,1347,35,1930,384,201,
- 213,5717,7048,200,210,211,212,214,7048,7048,
- 737,2605,581,167,600,5893,637,7048,7048,229,
- 7048,166,7048,574,165,168,169,170,171,172,
- 1670,35,1930,384,7048,372,7048,49,7048,225,
- 579,227,228,1929,2494,7048,7048,154,7048,7048,
- 7048,7048,7048,178,1396,637,7048,7048,7048,3156,
- 201,213,5717,7048,200,210,211,212,214,7048,
- 7048,829,49,581,167,600,7048,7048,1929,2853,
- 1083,7048,166,7048,175,165,168,169,170,171,
- 172,7048,7048,348,172,3568,331,651,1311,7048,
- 225,7048,7048,535,531,532,533,7048,154,7048,
- 340,1058,1052,345,178,1396,637,7048,338,7048,
- 7048,201,213,5717,7048,200,210,211,212,214,
- 7048,154,921,807,581,167,600,7048,2712,7048,
- 347,3449,3389,166,7048,185,165,168,169,170,
- 171,172,2096,35,1930,384,534,531,532,533,
- 7048,225,7048,534,531,532,533,7048,7048,154,
- 7048,7048,7048,7048,4058,178,1396,637,7048,7048,
- 7048,725,201,213,5717,7048,200,210,211,212,
- 214,7048,7048,1013,49,581,167,600,7048,7048,
- 1929,1390,325,2900,166,7048,3588,165,168,169,
- 170,171,172,1691,35,1930,384,7048,7048,651,
- 7048,7048,225,7048,7048,7048,535,531,532,533,
- 154,172,7048,7048,7048,2751,178,1396,637,7048,
- 7048,7048,172,201,213,5717,1311,200,210,211,
- 212,214,7048,7048,1105,49,581,167,600,7048,
- 339,1929,1910,7048,7048,166,7048,190,165,168,
- 169,170,171,172,1691,35,1930,384,7048,154,
- 2887,7048,7048,225,4171,7048,2735,7048,7048,7048,
- 7048,154,172,7048,7048,7048,2751,178,1396,637,
- 7048,2046,7048,7048,201,213,5717,7048,200,210,
- 211,212,214,347,7048,1197,49,581,167,600,
- 172,339,1929,47,1311,7048,166,7048,184,165,
- 168,169,170,171,172,7048,534,531,532,533,
- 7048,2187,7048,7048,225,4171,7048,3554,7048,7048,
- 7048,2751,154,7048,725,7048,7048,154,178,1396,
- 637,7048,2047,7048,2740,201,213,5717,7048,200,
- 210,211,212,214,7048,2819,3644,7048,581,167,
- 7048,7048,7048,7048,7048,7048,7048,166,7048,192,
- 165,168,169,170,171,172,3186,35,1091,32,
- 5968,5396,27,30,31,1197,1249,335,28,3465,
- 35,1091,32,7048,1306,27,30,31,1197,1249,
- 26,28,952,25,23,50,1303,104,75,76,
- 106,1340,7048,7048,7048,7048,1445,2391,7048,7048,
- 7048,7048,7048,7048,7048,356,7048,7048,7048,7048,
- 7048,7048,7048,7048,7048,315,1951,317,3282,3074,
- 3106,310,1281,7048,7048,7048,7048,522,7048,7048,
- 7048,7048,7048,7048,3405,35,1091,32,348,1306,
- 27,30,31,1197,1249,26,28,952,25,23,
- 50,1303,568,75,76,340,1058,1052,345,3465,
- 35,1091,32,523,1306,27,30,31,1197,1249,
- 26,28,952,25,23,50,1303,104,75,76,
- 106,1340,7048,7048,7048,7048,1445,2410,3465,35,
- 1091,32,7048,1306,27,30,31,1197,1249,26,
- 28,952,25,23,50,1303,104,75,76,106,
- 1340,3465,35,1091,32,2217,1306,27,30,31,
- 1197,1249,26,28,952,25,23,50,1303,104,
- 75,76,106,1340,3822,35,1930,384,2266,4190,
- 172,7048,7048,7048,1311,7048,7048,235,7048,172,
- 7048,7048,7048,2751,7048,7048,7048,582,531,532,
- 533,7048,1770,35,1091,32,5972,5396,27,30,
- 31,1197,1249,335,28,3718,270,154,339,2751,
- 7048,7048,7048,7048,2767,535,531,532,533,2069,
- 35,1091,32,5972,5396,27,30,31,1197,1249,
- 335,28,4171,229,3644,172,172,7048,7048,2751,
- 2751,7048,535,531,532,533,7048,7048,7048,2710,
- 7048,315,1951,317,233,227,228,310,1281,1670,
- 35,1930,384,4293,339,339,7048,1840,271,7048,
- 7048,2751,172,7048,1923,7048,1311,7048,315,1951,
- 317,7048,7048,2119,310,1281,7048,2751,4171,4171,
- 4293,240,243,246,249,2693,225,534,531,532,
- 533,49,7048,501,668,505,503,1929,47,154,
- 7048,578,225,7048,7048,3446,1937,203,213,5717,
- 7048,202,210,211,212,214,886,7048,2370,7048,
- 581,7048,600,203,213,5717,7048,202,210,211,
- 212,214,7048,7048,7048,2212,581,498,500,2751,
- 204,206,208,291,292,3335,7048,339,7048,7048,
- 7048,215,205,207,7048,154,204,206,208,291,
- 292,3335,1996,637,225,7048,7048,215,205,207,
- 7048,4171,7048,7048,7048,7048,3609,7048,7048,2854,
- 7048,2440,1947,5472,899,203,213,5717,1948,202,
- 210,211,212,214,7048,7048,7048,3171,581,5472,
- 7048,7048,7048,7048,7048,7048,7048,534,531,532,
- 533,7048,7048,7048,7048,7048,7048,7048,204,206,
- 208,291,292,3335,7048,4240,7048,7048,7048,215,
- 205,207,3465,35,1091,32,7048,1306,27,30,
- 31,1197,1249,26,28,952,25,23,50,1303,
- 104,75,76,106,2314,7048,7048,7048,7048,3317,
- 7048,5472,3465,35,1091,32,7048,1306,27,30,
- 31,1197,1249,26,28,952,25,23,50,1303,
- 104,75,76,106,2315,3465,35,1091,32,7048,
- 1306,27,30,31,1197,1249,26,28,952,25,
- 23,50,1303,104,75,76,106,2316,3465,35,
- 1091,32,7048,1306,27,30,31,1197,1249,26,
- 28,952,25,23,50,1303,104,75,76,84,
- 3465,1949,1091,1985,7048,1306,27,30,31,1197,
- 1249,26,28,952,25,23,50,1303,104,75,
- 76,83,3465,35,1091,32,7048,1306,27,30,
- 31,1197,1249,26,28,952,25,23,50,1303,
- 104,75,76,82,3465,35,1091,32,7048,1306,
- 27,30,31,1197,1249,26,28,952,25,23,
- 50,1303,104,75,76,81,3465,35,1091,32,
- 7048,1306,27,30,31,1197,1249,26,28,952,
- 25,23,50,1303,104,75,76,80,3465,35,
- 1091,32,7048,1306,27,30,31,1197,1249,26,
- 28,952,25,23,50,1303,104,75,76,79,
- 3465,35,1091,32,7048,1306,27,30,31,1197,
- 1249,26,28,952,25,23,50,1303,104,75,
- 76,78,3465,35,1091,32,7048,1306,27,30,
- 31,1197,1249,26,28,952,25,23,50,1303,
- 104,75,76,77,3345,35,1091,32,7048,1306,
- 27,30,31,1197,1249,26,28,952,25,23,
- 50,1303,104,75,76,102,3465,35,1091,32,
- 7048,1306,27,30,31,1197,1249,26,28,952,
- 25,23,50,1303,104,75,76,108,3465,35,
- 1091,32,7048,1306,27,30,31,1197,1249,26,
- 28,952,25,23,50,1303,104,75,76,107,
- 3465,35,1091,32,7048,1306,27,30,31,1197,
- 1249,26,28,952,25,23,50,1303,104,75,
- 76,105,3465,35,1091,32,7048,1306,27,30,
- 31,1197,1249,26,28,952,25,23,50,1303,
- 104,75,76,103,2305,7048,7048,7048,2751,7048,
- 7048,1808,35,1091,32,7048,5396,27,30,31,
- 1197,1249,335,28,347,7048,1670,35,1930,384,
- 7048,7048,7048,225,535,531,532,533,7048,7048,
- 7048,7048,7048,7048,7048,7048,7048,534,531,532,
- 533,7048,7048,1933,203,213,5717,2751,202,210,
- 211,212,214,7048,7048,725,7048,581,49,7048,
- 315,1951,317,7048,1929,2054,593,1281,1670,35,
- 1930,384,225,7048,7048,7048,3170,204,206,208,
- 291,292,3335,2278,7048,7048,7048,7048,516,205,
- 207,7048,2026,203,213,5717,2751,202,210,211,
- 212,214,7048,7048,7048,7048,581,2398,172,7048,
- 49,2751,1311,7048,7048,7048,1929,3560,7048,7048,
- 7048,225,7048,7048,7048,7048,204,206,208,291,
- 292,3335,7048,7048,7048,2278,225,515,205,207,
- 7048,7048,203,213,5717,154,202,210,211,212,
- 214,7048,3270,7048,7048,581,2491,203,213,5717,
- 2751,202,210,211,212,214,7048,7048,7048,7048,
- 581,7048,7048,7048,7048,204,206,208,291,292,
- 3335,7048,7048,7048,7048,225,216,205,207,7048,
- 204,206,208,291,292,3335,7048,7048,7048,7048,
- 7048,301,205,207,7048,7048,203,213,5717,7048,
- 202,210,211,212,214,3405,35,1091,32,581,
- 1306,27,30,31,1197,1249,26,28,952,25,
- 23,50,1303,85,75,76,7048,7048,7048,204,
- 206,208,291,292,3335,7048,7048,7048,7048,7048,
- 495,205,207,3405,35,1091,32,7048,1306,27,
- 30,31,1197,1249,26,28,952,25,23,50,
- 1303,576,75,76,3525,35,1091,32,7048,1306,
- 27,30,31,1197,1249,26,28,952,25,23,
- 50,1303,2905,75,76,2752,35,1091,32,5972,
- 5396,27,30,31,1197,1249,335,28,2784,35,
- 1091,32,5972,5396,27,30,31,1197,1249,335,
- 28,7048,7048,7048,7048,7048,7048,7048,3720,7048,
- 1614,7048,2751,7048,2751,4155,7048,1476,35,1091,
- 32,655,5396,27,30,31,1197,1249,335,28,
- 7048,7048,7048,7048,315,1951,317,3644,7048,225,
- 310,1281,2978,35,1930,384,3002,315,1951,317,
- 7048,1727,7048,310,1281,2751,4155,7048,7048,3513,
- 2175,403,963,4002,7048,7048,7048,2751,3227,7048,
- 172,172,7048,7048,600,600,312,3180,317,7048,
- 225,7048,7048,7048,49,7048,534,531,532,533,
- 1929,47,3644,404,405,406,291,292,3335,339,
- 339,2175,403,963,725,7048,501,154,154,1512,
- 7048,7048,7048,7048,186,186,7048,7048,3263,7048,
- 7048,7048,7048,5688,5688,2834,7048,7048,7048,7048,
- 7048,328,7048,7048,404,405,406,291,292,3335,
- 4002,7048,7048,7048,2751,3227,7048,2534,7048,7048,
- 498,500,3227,7048,7048,1691,35,1930,384,3263,
- 5847,356,7048,534,531,532,533,7048,7048,3644,
- 534,531,532,533,2381,3074,3106,7048,7048,2927,
- 2932,725,7048,7048,407,409,2441,7048,725,3627,
- 7048,7048,7048,2709,7048,7048,7048,49,3227,7048,
- 7048,4016,2834,1929,47,2751,7048,7048,328,2834,
- 7048,643,7048,7048,5751,329,534,531,532,533,
- 7048,7048,1450,7048,7048,407,410,7048,7048,348,
- 339,7048,526,1175,725,7048,7048,2970,356,2709,
- 7048,7048,7048,7048,3227,7048,342,1058,1052,345,
- 7048,2381,3074,3106,4171,2834,534,531,532,533,
- 7048,328,534,531,532,533,7048,7048,2709,7048,
- 7048,529,2709,3227,4363,7048,7048,3227,7048,2441,
- 725,7048,7048,7048,3227,7048,7048,7048,7048,7048,
- 5847,534,531,532,533,534,531,532,533,7048,
- 7048,2834,534,531,532,533,7048,5979,7048,725,
- 7048,7048,7048,725,7048,3163,35,1930,384,2191,
- 725,7048,7048,7048,3227,7048,1670,35,1930,384,
- 2834,7048,7048,7048,2834,7048,328,7048,7048,7048,
- 328,2834,534,531,532,533,7048,5979,1670,35,
- 1930,384,1670,35,1930,384,7048,49,7048,7048,
- 725,7048,7048,1929,47,2970,7048,7048,49,3672,
- 7048,7048,7048,7048,1929,47,1670,35,1930,384,
- 7048,2834,1833,7048,7048,439,7048,329,7048,7048,
- 49,7048,92,1273,49,7048,1929,47,7048,7048,
- 1929,47,1670,35,1930,384,7048,7048,534,531,
- 532,533,1267,3561,7048,2472,2295,172,49,2533,
- 7048,2751,7048,7048,1929,47,3446,7048,7048,7048,
- 7048,7048,94,7048,7048,534,531,532,533,534,
- 531,532,533,2561,49,7048,339,7048,7048,7048,
- 1929,47,7048,3446,7048,7048,7048,4240,7048,7048,
- 7048,7048,7048,7048,7048,7048,7048,7048,7048,2650,
- 4171,7048,7048,7048,7048,7048,7048,7048,7048,7048,
- 7048,7048,7048,7048,7048,7048,7048,530,7048,7048,
- 7048,7048,7048,7048,7048,7048,7048,7048,7048,7048,
- 3054,7048,7048,7048,7048,7048,7048,7048,7048,7048,
- 7048,7048,7048,7048,7048,7048,7048,7048,7048,7048,
- 7048,7048,7048,7048,7048,7048,7048,3159,7048,0,
- 39,7063,0,39,7062,0,1433,29,0,436,
- 1495,0,450,1707,0,38,670,0,38,7063,
- 0,38,7062,0,7111,74,0,7110,74,0,
- 890,74,0,2998,74,0,1556,74,0,3992,
- 74,0,3901,124,0,1,440,0,454,1342,
- 0,453,1697,0,7056,1,0,1991,89,0,
- 1433,383,0,35,33,0,32,34,0,39,
- 670,0,1,946,0,1,7644,0,1,7643,
- 0,1,7317,0,1,7316,0,1,7315,0,
- 1,7314,0,1,7313,0,1,7312,0,1,
- 7311,0,1,7310,0,1,7309,0,1,7308,
- 0,1,7307,0,39,1,7063,0,39,1,
- 7062,0,735,1,0,1,3509,0,7279,221,
- 0,7278,221,0,2073,221,0,2121,221,0,
- 2129,221,0,7382,221,0,7381,221,0,7306,
- 221,0,7305,221,0,7304,221,0,7303,221,
- 0,7302,221,0,7301,221,0,7300,221,0,
- 7299,221,0,7279,222,0,7278,222,0,2073,
- 222,0,2121,222,0,2129,222,0,7382,222,
- 0,7381,222,0,7306,222,0,7305,222,0,
- 7304,222,0,7303,222,0,7302,222,0,7301,
- 222,0,7300,222,0,7299,222,0,2129,390,
- 0,2121,390,0,2073,390,0,280,390,0,
- 7279,223,0,7278,223,0,2073,223,0,2121,
- 223,0,2129,223,0,7382,223,0,7381,223,
- 0,7306,223,0,7305,223,0,7304,223,0,
- 7303,223,0,7302,223,0,7301,223,0,7300,
- 223,0,7299,223,0,280,283,0,7279,224,
- 0,7278,224,0,2073,224,0,2121,224,0,
- 2129,224,0,7382,224,0,7381,224,0,7306,
- 224,0,7305,224,0,7304,224,0,7303,224,
- 0,7302,224,0,7301,224,0,7300,224,0,
- 7299,224,0,7063,48,0,7062,48,0,7279,
- 580,0,7278,580,0,2073,580,0,2121,580,
- 0,2129,580,0,7382,580,0,7381,580,0,
- 7306,580,0,7305,580,0,7304,580,0,7303,
- 580,0,7302,580,0,7301,580,0,7300,580,
- 0,7299,580,0,7279,597,0,7278,597,0,
- 2073,597,0,2121,597,0,2129,597,0,7382,
- 597,0,7381,597,0,7306,597,0,7305,597,
- 0,7304,597,0,7303,597,0,7302,597,0,
- 7301,597,0,7300,597,0,7299,597,0,7279,
- 238,0,7278,238,0,2073,238,0,2121,238,
- 0,2129,238,0,7382,238,0,7381,238,0,
- 7306,238,0,7305,238,0,7304,238,0,7303,
- 238,0,7302,238,0,7301,238,0,7300,238,
- 0,7299,238,0,39,7063,238,0,39,7062,
- 238,0,7086,238,0,7644,238,0,7643,238,
- 0,7317,238,0,7316,238,0,7315,238,0,
- 7314,238,0,7313,238,0,7312,238,0,7311,
- 238,0,7310,238,0,7309,238,0,7308,238,
- 0,7307,238,0,7054,1,0,7053,1,0,
- 32,384,0,29,383,0,1511,234,0,1,
- 226,2965,0,7057,226,0,2987,226,0,1,
- 226,2079,0,1,226,0,43,7084,0,43,
- 37,0,3901,126,0,3901,125,0,2129,441,
- 0,2121,441,0,2073,441,0,7086,441,0,
- 327,441,0,39,441,0,2129,592,0,2121,
- 592,0,2073,592,0,2129,590,0,2121,590,
- 0,2073,590,0,594,590,0,594,589,0,
- 1,2129,0,1,2121,0,1,2073,0,7086,
- 1,0,39,1,0,47,37,0,569,576,
- 0,3108,226,0,10,12,0,1,5675,0,
- 1,2904,0,1,670,0,1,90,0,2129,
- 327,0,2121,327,0,2073,327,0,497,3316,
- 0,7086,1,226,0,39,1,226,0,226,
- 412,0,7063,37,0,7062,37,0,7063,2,
- 37,0,7062,2,37,0,7063,36,0,7062,
- 36,0,8,10,12,0,1,327,0,4842,
- 98,0,7084,45,0,37,45,0,7058,401,
- 0,7057,401,0,226,411,0,3044,314,0,
- 1,592,0,1847,101,0,2490,97,0,2129,
- 93,0,2121,93,0,2073,93,0,7086,93,
- 0,327,93,0,39,93,0,35,72,0,
- 7382,332,0,7381,332,0,1751,275,0,7060,
- 379,0,7059,379,0,497,5423,0,226,218,
- 0,183,4414,0,226,217,0,1,1594,0,
- 1,1690,0,2129,587,0,2121,587,0,2073,
- 587,0,2129,586,0,2121,586,0,2073,586,
- 0,534,535,0,7060,1,0,2129,587,588,
- 0,2121,587,588,0,2073,587,588,0,587,
- 588,0,3628,379,0,8,12,0
+ 32,32,40,16,75,218,147,147,187,187,
+ 187,29,57,90,135,135,135,117,117,117,
+ 197,202,115,63,71,164,13,13,29,188,
+ 188,1547,35,2106,2085,1316,4235,27,30,31,
+ 875,885,26,28,2146,25,23,50,1003,104,
+ 75,76,106,1088,583,531,532,533,1178,1098,
+ 1776,1336,62,1204,1462,1392,1614,1615,1604,1650,
+ 1652,141,2301,270,2751,1191,3825,156,142,3761,
+ 2755,2972,1468,2755,2934,1313,2072,35,814,32,
+ 5898,4940,27,30,31,875,885,335,28,1528,
+ 3562,229,1528,35,3162,339,71,526,339,534,
+ 531,532,533,2193,35,274,258,154,1315,2127,
+ 765,232,227,228,2275,198,1047,4798,177,738,
+ 2004,1769,35,814,32,271,2000,27,30,31,
+ 875,885,26,28,529,507,315,2530,317,2969,
+ 163,310,2525,2833,349,328,3989,2837,239,242,
+ 245,248,2868,1528,1711,2050,34,2976,1882,236,
+ 802,959,4756,535,531,532,533,623,578,583,
+ 531,532,533,2864,258,3763,1837,652,834,2830,
+ 3331,4033,4094,4750,726,2645,35,814,32,2755,
+ 1307,27,30,31,875,885,26,28,747,25,
+ 23,50,1003,104,75,76,106,1088,4155,302,
+ 306,1572,1178,1098,339,1336,229,1204,1462,1392,
+ 1614,285,1604,1650,1652,141,672,1528,35,2050,
+ 3161,513,142,2523,3018,1047,237,227,228,2742,
+ 1656,35,814,32,3470,2000,27,30,31,875,
+ 885,59,28,514,2645,35,814,32,2755,1307,
+ 27,30,31,875,885,26,28,747,25,23,
+ 50,1003,104,75,76,106,1088,438,4224,452,
+ 2967,1178,1098,339,1336,69,1204,1462,1392,1614,
+ 3610,1604,1650,1652,141,3048,3739,76,35,276,
+ 513,142,1808,2070,1047,3073,509,3787,35,814,
+ 32,493,4296,27,30,31,875,885,57,28,
+ 1528,1520,514,76,35,449,2919,86,6021,2931,
+ 100,2645,35,814,32,2755,1307,27,30,31,
+ 875,885,26,28,747,25,23,50,1003,104,
+ 75,76,106,1088,1528,35,1701,384,1178,1098,
+ 339,1336,1693,1204,1462,1392,1614,439,1604,1650,
+ 1652,141,1528,35,279,509,258,513,142,3180,
+ 911,1047,3808,35,814,32,2725,4479,27,30,
+ 31,875,885,335,28,2967,448,2934,2931,514,
+ 2865,35,814,32,2755,1307,27,30,31,875,
+ 885,26,28,747,25,23,50,1003,104,75,
+ 76,106,1088,4102,1566,519,399,1178,1098,339,
+ 1336,1693,1204,1462,1392,1614,3596,1604,1650,1652,
+ 141,196,312,3276,317,2788,513,142,2639,1313,
+ 1047,494,509,1656,35,814,32,61,2000,27,
+ 30,31,875,885,58,28,2852,4103,514,2967,
+ 3306,5816,3030,443,1313,2931,561,3151,35,814,
+ 32,158,1307,27,30,31,875,885,26,28,
+ 747,25,23,50,1003,104,75,76,106,1088,
+ 573,442,3623,3625,1178,1098,154,1336,536,1204,
+ 1462,1392,1614,160,1604,1650,1652,141,2085,2300,
+ 456,510,4101,375,142,2723,35,814,32,385,
+ 1307,27,30,31,875,885,26,28,747,25,
+ 23,50,1003,104,75,76,106,1088,1903,348,
+ 258,2903,1178,1098,2755,1336,62,1204,1462,1392,
+ 1614,4357,1604,1650,1652,141,340,1099,642,345,
+ 4101,375,142,2967,338,3521,35,814,32,339,
+ 1307,27,30,31,875,885,26,28,747,25,
+ 23,50,1003,104,75,76,106,1088,347,3056,
+ 1047,350,1178,1098,5374,1336,2858,1204,1462,1392,
+ 1614,3180,1604,2767,62,381,2080,2934,1818,4418,
+ 3011,35,814,32,2721,1307,27,30,31,875,
+ 885,26,28,747,25,23,50,1003,104,75,
+ 76,106,1088,1693,352,35,449,1178,1098,6021,
+ 1336,2827,1204,1462,1392,1614,3462,1604,1650,1652,
+ 141,195,3970,382,2080,4101,375,142,1528,35,
+ 4468,4407,2434,2938,35,814,32,2769,1307,27,
+ 30,31,875,885,26,28,747,25,23,50,
+ 1003,104,75,76,106,1088,1693,76,35,276,
+ 1178,1098,1904,1336,2007,1204,1462,1392,1614,62,
+ 1604,1650,1652,141,5729,1784,35,814,32,547,
+ 142,41,30,31,875,885,2967,1834,35,1701,
+ 384,1915,455,3278,35,814,32,3111,1307,27,
+ 30,31,875,885,26,28,747,25,23,50,
+ 1003,104,75,76,106,1088,1797,24,373,2080,
+ 1178,1098,3311,1336,2278,1204,1462,1392,1614,49,
+ 1604,1650,1652,141,2932,1674,1179,2434,5713,156,
+ 142,3278,35,814,32,5396,1307,27,30,31,
+ 875,885,26,28,747,25,23,50,1003,104,
+ 75,76,106,1088,3016,347,2708,1693,1178,1098,
+ 5843,1336,154,1204,1462,1392,1614,3257,1604,1650,
+ 1652,141,446,3623,3625,2484,258,369,142,2755,
+ 1313,3278,35,814,32,2434,1307,27,30,31,
+ 875,885,26,28,747,25,23,50,1003,104,
+ 75,76,106,1088,3658,1399,348,545,1178,1098,
+ 3045,1336,2877,1204,1462,1392,1614,3277,1604,1650,
+ 1652,141,434,340,1099,642,345,369,142,42,
+ 3141,2741,1258,535,531,532,533,3848,755,652,
+ 3016,3483,3278,35,814,32,51,1307,27,30,
+ 31,875,885,26,28,747,25,23,50,1003,
+ 104,75,76,106,1088,1528,3293,258,368,1178,
+ 1098,2755,1336,357,1204,1462,1392,1614,807,1604,
+ 1650,1652,141,1528,35,2050,273,258,369,142,
+ 2934,1313,3078,35,814,32,339,1307,27,30,
+ 31,875,885,26,28,747,25,23,50,1003,
+ 104,75,76,106,1088,44,3141,1047,367,1178,
+ 1098,4074,1336,3907,1204,1462,1392,1614,672,1604,
+ 1650,1652,141,2788,199,1845,258,1313,547,142,
+ 5715,2967,1979,2792,35,814,32,91,1307,27,
+ 30,31,875,885,26,28,747,25,23,50,
+ 1003,104,75,76,106,1088,2022,35,274,158,
+ 1178,1098,68,1336,1558,1204,1462,1392,1614,365,
+ 1604,1650,1652,141,246,1528,35,1701,384,140,
+ 142,3278,35,814,32,1705,1307,27,30,31,
+ 875,885,26,28,747,25,23,50,1003,104,
+ 75,76,106,1088,2853,35,2050,273,1178,1098,
+ 158,1336,1896,1204,1462,1392,1614,49,1604,1650,
+ 1652,141,1688,1674,1435,2021,1999,157,142,1789,
+ 3278,35,814,32,338,1307,27,30,31,875,
+ 885,26,28,747,25,23,50,1003,104,75,
+ 76,106,1088,1528,3484,2050,73,1178,1098,3076,
+ 1336,3075,1204,1462,1392,1614,546,1604,1650,1652,
+ 141,1289,1528,35,1701,384,153,142,3278,35,
+ 814,32,1418,1307,27,30,31,875,885,26,
+ 28,747,25,23,50,1003,104,75,76,106,
+ 1088,2853,35,2050,3494,1178,1098,518,1336,3762,
+ 1204,1462,1392,1614,49,1604,1650,1652,141,258,
+ 1674,3575,3180,1313,152,142,3278,35,814,32,
+ 308,1307,27,30,31,875,885,26,28,747,
+ 25,23,50,1003,104,75,76,106,1088,1528,
+ 35,2050,275,1178,1098,154,1336,883,1204,1462,
+ 1392,1614,1571,1604,1650,1652,141,4040,1528,35,
+ 1701,384,151,142,3278,35,814,32,817,1307,
+ 27,30,31,875,885,26,28,747,25,23,
+ 50,1003,104,75,76,106,1088,1528,35,2050,
+ 3564,1178,1098,2444,1336,909,1204,1462,1392,1614,
+ 49,1604,1650,1652,141,258,1674,1596,1001,1313,
+ 150,142,3278,35,814,32,1936,1307,27,30,
+ 31,875,885,26,28,747,25,23,50,1003,
+ 104,75,76,106,1088,1528,35,2050,278,1178,
+ 1098,154,1336,1093,1204,1462,1392,1614,1387,1604,
+ 1650,1652,141,2967,1528,35,1701,384,149,142,
+ 3278,35,814,32,1981,1307,27,30,31,875,
+ 885,26,28,747,25,23,50,1003,104,75,
+ 76,106,1088,802,53,258,62,1178,1098,3362,
+ 1336,5970,1204,1462,1392,1614,49,1604,1650,1652,
+ 141,258,1674,683,417,1313,148,142,3278,35,
+ 814,32,2998,1307,27,30,31,875,885,26,
+ 28,747,25,23,50,1003,104,75,76,106,
+ 1088,2600,35,392,62,1178,1098,154,1336,6013,
+ 1204,1462,1392,1614,3485,1604,1650,1652,141,2967,
+ 1528,35,1701,384,147,142,3278,35,814,32,
+ 1936,1307,27,30,31,875,885,26,28,747,
+ 25,23,50,1003,104,75,76,106,1088,3828,
+ 52,258,3000,1178,1098,1317,1336,1693,1204,1462,
+ 1392,1614,49,1604,1650,1652,141,258,1674,1179,
+ 3146,1313,146,142,3278,35,814,32,70,1307,
+ 27,30,31,875,885,26,28,747,25,23,
+ 50,1003,104,75,76,106,1088,2600,35,392,
+ 3180,1178,1098,154,1336,4045,1204,1462,1392,1614,
+ 3521,1604,1650,1652,141,3750,1528,35,1701,384,
+ 145,142,3278,35,814,32,4031,1307,27,30,
+ 31,875,885,26,28,747,25,23,50,1003,
+ 104,75,76,106,1088,4128,322,258,3437,1178,
+ 1098,2285,1336,6029,1204,1462,1392,1614,49,1604,
+ 1650,1652,141,258,1674,2541,3439,1313,144,142,
+ 3278,35,814,32,3429,1307,27,30,31,875,
+ 885,26,28,747,25,23,50,1003,104,75,
+ 76,106,1088,3768,3768,563,1693,1178,1098,154,
+ 1336,2639,1204,1462,1392,1614,3546,1604,1650,1652,
+ 141,3761,1528,35,1701,384,143,142,3218,35,
+ 814,32,442,1307,27,30,31,875,885,26,
+ 28,747,25,23,50,1003,104,75,76,106,
+ 1088,1528,35,1701,384,1178,1098,2434,1336,439,
+ 1204,1462,1392,1614,427,1604,1650,3033,162,3521,
+ 35,814,32,531,1307,27,30,31,875,885,
+ 26,28,747,25,23,50,1003,104,75,76,
+ 106,1088,281,270,2788,95,1178,1098,1313,1336,
+ 628,1204,1462,1392,1614,2934,1604,1650,3033,162,
+ 1528,35,1701,384,258,2925,3562,323,1313,386,
+ 387,2037,2639,423,423,2299,3278,35,814,32,
+ 158,1307,27,30,31,875,885,26,28,747,
+ 25,23,50,1003,104,75,76,106,1088,197,
+ 154,2632,430,1178,1098,272,1336,3555,1204,1462,
+ 1392,1614,3266,1604,1650,1652,141,2549,2600,35,
+ 3189,4346,572,142,3278,35,814,32,1871,1307,
+ 27,30,31,875,885,26,28,747,25,23,
+ 50,1003,104,75,76,106,1088,3798,2600,35,
+ 392,1178,1098,282,1336,377,1204,1462,1392,1614,
+ 49,1604,1650,1652,141,2572,1674,1248,2150,1313,
+ 138,142,3278,35,814,32,2255,1307,27,30,
+ 31,875,885,26,28,747,25,23,50,1003,
+ 104,75,76,106,1088,2441,3844,284,2463,1178,
+ 1098,154,1336,1351,1204,1462,1392,1614,599,1604,
+ 1650,1652,141,2690,2189,35,814,32,187,142,
+ 40,30,31,875,885,3145,535,531,532,533,
+ 2181,3563,4285,3521,35,814,32,3257,1307,27,
+ 30,31,875,885,26,28,747,25,23,50,
+ 1003,104,75,76,106,1088,1528,35,1701,384,
+ 1178,1098,3830,1336,2639,1204,1462,1392,1614,400,
+ 1604,1650,3033,162,3521,35,814,32,2675,1307,
+ 27,30,31,875,885,26,28,747,25,23,
+ 50,1003,104,75,76,106,1088,2828,429,539,
+ 3352,1178,1098,2934,1336,3765,1204,1462,1392,1614,
+ 3071,1604,1650,3033,162,2291,1528,35,1701,384,
+ 1693,3056,3521,35,814,32,575,1307,27,30,
+ 31,875,885,26,28,747,25,23,50,1003,
+ 104,75,76,106,1088,294,537,219,87,1178,
+ 1098,100,1336,605,1204,1462,1392,1614,428,1604,
+ 1650,3033,162,3521,35,814,32,2540,1307,27,
+ 30,31,875,885,26,28,747,25,23,50,
+ 1003,104,75,76,106,1088,3739,320,2925,3562,
+ 1178,1098,321,1336,3044,1204,1462,1392,1614,2656,
+ 1604,1650,3033,162,1612,3314,35,277,1313,96,
+ 2210,3521,35,814,32,419,1307,27,30,31,
+ 875,885,26,28,747,25,23,50,1003,104,
+ 75,76,106,1088,3007,4097,430,2934,1178,1098,
+ 154,1336,706,1204,1462,1392,1614,2753,1604,1650,
+ 3033,162,3701,35,814,32,289,1307,27,30,
+ 31,875,885,26,28,747,25,23,50,1003,
+ 104,75,76,106,1088,3610,2639,2549,1885,1178,
+ 1098,1050,1336,3189,1204,1462,1392,1614,3768,1604,
+ 1650,3033,162,2189,35,814,32,2151,2277,3268,
+ 30,31,875,885,418,1820,35,3604,32,5898,
+ 4940,27,30,31,875,885,335,28,899,2757,
+ 284,2967,3491,1313,3180,3799,2755,2718,534,531,
+ 532,533,519,3148,2639,3886,35,1701,384,2533,
+ 4174,535,531,532,533,421,3226,434,234,2271,
+ 2639,339,346,2292,3563,154,3557,378,583,531,
+ 532,533,1306,443,3472,315,2530,317,2969,3472,
+ 310,2525,1386,1049,328,3180,1749,270,2992,3521,
+ 35,814,32,398,1307,27,30,31,875,885,
+ 26,28,747,25,23,50,1003,104,75,76,
+ 106,1088,2864,3495,389,229,1178,1098,423,1336,
+ 1307,1204,1462,1392,1614,293,2717,991,3497,352,
+ 3472,3596,4770,415,3603,232,227,228,527,521,
+ 2202,300,3180,583,531,532,533,2934,442,271,
+ 534,531,532,533,1499,35,814,32,2481,4940,
+ 27,30,31,875,885,335,28,2967,2911,538,
+ 3352,560,239,242,245,248,2868,534,531,532,
+ 533,534,531,532,533,959,2416,3472,3551,3483,
+ 229,220,578,172,3555,720,372,876,88,1440,
+ 3584,1083,3846,2830,3331,4033,4094,4750,726,2100,
+ 241,227,228,3184,315,2530,317,2969,2759,313,
+ 2525,1817,2031,329,535,531,532,533,3521,35,
+ 814,32,4155,1307,27,30,31,875,885,26,
+ 28,747,25,23,50,1003,104,75,76,106,
+ 1088,1528,35,290,1985,1178,1098,2446,1336,2430,
+ 1204,1462,1392,2656,2375,35,814,32,2934,4940,
+ 27,30,31,875,885,335,28,535,531,532,
+ 533,258,258,3319,2934,2755,1625,534,531,532,
+ 533,1370,35,814,32,5898,4479,27,30,31,
+ 875,885,335,28,1467,4826,1528,35,1701,384,
+ 339,3224,557,370,534,531,532,533,324,331,
+ 2785,376,1136,1331,315,2530,317,2969,299,311,
+ 2525,1047,4910,329,2189,35,814,32,4119,3308,
+ 3269,30,31,875,885,62,348,3323,49,1858,
+ 6033,315,2530,317,46,258,310,2525,93,1313,
+ 2338,2994,2837,342,1099,642,345,3521,35,814,
+ 32,3556,1307,27,30,31,875,885,26,28,
+ 747,25,23,50,1003,104,75,76,106,1088,
+ 3557,154,258,3611,1178,1098,2923,1336,2176,1204,
+ 1462,2662,3521,35,814,32,3615,1307,27,30,
+ 31,875,885,26,28,747,25,23,50,1003,
+ 104,75,76,84,302,306,1572,3401,35,814,
+ 32,444,1307,27,30,31,875,885,26,28,
+ 747,25,23,50,1003,569,75,76,2857,2967,
+ 2788,3616,3617,2967,1313,3521,35,814,32,3470,
+ 1307,27,30,31,875,885,26,28,747,25,
+ 23,50,1003,104,75,76,106,1088,3671,2787,
+ 556,2394,1178,1098,577,1336,158,1204,2619,1922,
+ 35,814,32,5898,4479,27,30,31,875,885,
+ 335,28,1798,35,1701,384,1528,35,1701,384,
+ 3186,1304,534,531,532,533,2468,35,3604,32,
+ 5898,4479,27,30,31,875,885,335,28,2096,
+ 4910,1528,35,290,534,531,532,533,2283,3639,
+ 531,532,533,1712,270,3246,185,3731,270,315,
+ 2530,317,2423,3803,310,2525,3044,3370,2934,2934,
+ 2837,534,531,532,533,2571,3675,3676,534,531,
+ 532,533,2751,35,290,2934,315,2530,317,720,
+ 3319,310,2525,1270,3768,522,720,1749,2354,35,
+ 3604,32,5898,4479,27,30,31,875,885,335,
+ 28,2969,296,402,3496,2967,3295,329,3314,3184,
+ 336,534,531,532,533,4095,331,3762,2434,191,
+ 348,1436,303,306,1572,3189,3489,71,3373,3370,
+ 2755,1705,2755,4789,415,3603,3477,342,1099,642,
+ 345,3368,3677,2967,583,531,532,533,315,2530,
+ 317,3738,3729,310,2525,3658,2755,339,2934,1749,
+ 2447,35,3604,32,5898,4479,27,30,31,875,
+ 885,335,28,258,3722,1194,258,1313,4162,3319,
+ 2173,3658,1762,3639,531,532,533,4108,35,814,
+ 32,229,4296,27,30,31,875,885,56,28,
+ 388,3370,295,3284,423,5035,415,3603,644,154,
+ 3189,244,227,228,330,331,3888,3345,1680,258,
+ 315,2530,317,2174,501,310,2525,3521,35,814,
+ 32,1749,1307,27,30,31,875,885,26,28,
+ 747,25,23,50,1003,104,75,76,106,1088,
+ 356,3289,258,518,1178,1098,2608,1336,3734,2654,
+ 2685,351,1977,3703,3191,3239,3515,258,499,500,
+ 527,3220,3823,3772,3407,2967,5507,4789,415,3603,
+ 3521,35,814,32,614,1307,27,30,31,875,
+ 885,26,28,747,25,23,50,1003,104,75,
+ 76,106,1088,2630,1710,277,67,1178,1098,601,
+ 1336,2967,2655,3401,35,814,32,4189,1307,27,
+ 30,31,875,885,26,28,747,25,23,50,
+ 1003,568,75,76,225,549,2967,60,3708,4156,
+ 258,154,66,180,3001,2967,319,3180,654,178,
+ 3472,3501,3367,2756,3767,527,201,213,5448,167,
+ 200,210,211,212,214,255,1,65,3742,582,
+ 601,2788,1710,715,2826,1313,64,166,3794,181,
+ 165,168,169,170,171,172,3187,3798,534,531,
+ 532,533,3472,3800,2608,225,534,531,532,533,
+ 1645,372,154,550,2893,3809,720,158,2105,654,
+ 178,3472,258,3818,720,3827,2606,201,213,5448,
+ 167,200,210,211,212,214,2900,3829,3314,3774,
+ 582,535,531,532,533,554,325,3820,166,1184,
+ 182,165,168,169,170,171,172,179,1910,35,
+ 814,32,5851,4479,27,30,31,875,885,335,
+ 28,2537,35,814,32,5789,4479,27,30,31,
+ 875,885,335,28,3910,3839,1499,35,814,32,
+ 2606,4940,27,30,31,875,885,335,28,552,
+ 3180,3489,347,2967,2967,2755,1262,2967,3576,534,
+ 531,532,533,535,531,532,533,258,315,2530,
+ 317,3739,258,310,2525,2967,2745,4826,4127,3461,
+ 3658,315,2530,317,4017,4276,310,2525,4337,3729,
+ 348,3527,3769,2755,3928,3472,315,2530,317,2969,
+ 3850,311,2525,348,520,329,4398,340,1099,642,
+ 345,3851,258,1646,3735,3428,4843,551,3658,2967,
+ 340,1099,642,345,3521,35,814,32,2741,1307,
+ 27,30,31,875,885,26,28,747,25,23,
+ 50,1003,104,75,76,106,1088,3514,2967,501,
+ 318,1178,1098,2967,2348,3521,35,814,32,2967,
+ 1307,27,30,31,875,885,26,28,747,25,
+ 23,50,1003,104,75,76,106,1088,3466,55,
+ 3856,7049,1178,1098,54,2388,2760,356,7049,7049,
+ 536,6025,2760,498,500,2967,2933,6025,2895,7049,
+ 3908,3191,3239,3521,35,814,32,362,1307,27,
+ 30,31,875,885,26,28,747,25,23,50,
+ 1003,104,75,76,106,1088,555,2978,7049,541,
+ 1178,1098,3706,2396,3521,35,814,32,2967,1307,
+ 27,30,31,875,885,26,28,747,25,23,
+ 50,1003,104,75,76,106,1088,2967,2967,258,
+ 2967,1178,1098,2708,2415,3521,35,814,32,3285,
+ 1307,27,30,31,875,885,26,28,747,25,
+ 23,50,1003,104,75,76,106,1088,374,4135,
+ 7049,99,1178,1098,2128,2418,3521,35,814,32,
+ 2128,1307,27,30,31,875,885,26,28,747,
+ 25,23,50,1003,104,75,76,106,1088,7049,
+ 2967,369,2967,1178,1098,601,2433,3521,35,814,
+ 32,7049,1307,27,30,31,875,885,26,28,
+ 747,25,23,50,1003,104,75,76,106,1088,
+ 225,4520,258,566,1178,2498,2755,154,3186,258,
+ 7049,7049,425,3294,654,178,3472,258,426,7049,
+ 7049,4008,201,213,5448,167,200,210,211,212,
+ 214,339,461,1662,258,582,601,2788,4134,715,
+ 258,1313,3647,166,4944,3275,165,168,169,170,
+ 171,172,1047,2751,3685,290,583,531,532,533,
+ 7049,225,534,531,532,533,7049,258,154,2967,
+ 1893,3701,7049,158,62,654,178,3472,3319,6041,
+ 720,7049,7049,201,213,5448,167,200,210,211,
+ 212,214,7049,553,1679,258,582,601,3762,2703,
+ 2795,258,3102,229,166,2696,176,165,168,169,
+ 170,171,172,4126,331,7049,7049,583,531,532,
+ 533,7049,225,247,227,228,258,258,258,154,
+ 3335,3341,1057,7049,3184,258,654,178,3472,4195,
+ 4160,7049,7049,7049,201,213,5448,167,200,210,
+ 211,212,214,7049,645,1775,2967,582,601,7049,
+ 2967,2967,3730,1762,229,166,4601,174,165,168,
+ 169,170,171,172,1897,35,1701,384,583,531,
+ 532,533,7049,225,250,227,228,3700,7049,258,
+ 154,447,567,4958,7049,3186,258,654,178,3472,
+ 6047,7049,7049,7049,3319,201,213,5448,167,200,
+ 210,211,212,214,7049,737,49,258,582,601,
+ 7049,3420,1674,3021,3112,229,166,7049,574,165,
+ 168,169,170,171,172,2113,35,1701,384,326,
+ 331,2221,7049,7049,225,580,227,228,7049,7049,
+ 7049,154,7049,7049,7049,525,7049,258,654,178,
+ 3472,2755,7049,7049,7049,3319,201,213,5448,167,
+ 200,210,211,212,214,7049,829,49,7049,582,
+ 601,7049,7049,1674,1284,807,339,166,7049,175,
+ 165,168,169,170,171,172,2296,35,1701,384,
+ 4217,331,2221,7049,7049,225,7049,1047,534,531,
+ 532,533,154,7049,7049,7049,7049,7049,258,654,
+ 178,3472,2755,7049,7049,3353,2738,201,213,5448,
+ 167,200,210,211,212,214,7049,921,49,7049,
+ 582,601,7049,7049,1674,1342,1666,339,166,7049,
+ 185,165,168,169,170,171,172,2296,35,1701,
+ 384,7049,7049,3212,7049,7049,225,7049,1047,534,
+ 531,532,533,154,7049,7049,7049,7049,7049,258,
+ 654,178,3472,2755,7049,7049,505,2738,201,213,
+ 5448,167,200,210,211,212,214,7049,1013,49,
+ 3386,582,601,7049,7049,1674,47,807,339,166,
+ 7049,3610,165,168,169,170,171,172,1897,35,
+ 1701,384,7049,7049,2625,7049,7049,225,7049,1047,
+ 534,531,532,533,154,7049,7049,7049,7049,7049,
+ 258,654,178,3472,2755,7049,7049,503,2738,201,
+ 213,5448,167,200,210,211,212,214,7049,1105,
+ 49,3429,582,601,7049,7049,1674,47,3371,339,
+ 166,7049,190,165,168,169,170,171,172,1897,
+ 35,1701,384,7049,7049,952,7049,7049,225,7049,
+ 1047,534,531,532,533,154,7049,7049,7049,7049,
+ 7049,7049,654,178,3472,7049,7049,7049,530,2738,
+ 201,213,5448,167,200,210,211,212,214,715,
+ 1197,49,3909,582,601,7049,7049,1674,2154,1175,
+ 7049,166,7049,184,165,168,169,170,171,172,
+ 7049,7049,534,531,532,533,3216,7049,7049,225,
+ 7049,7049,534,531,532,533,154,7049,7049,7049,
+ 720,7049,7049,654,178,3472,7049,7049,7049,7049,
+ 2964,201,213,5448,167,200,210,211,212,214,
+ 7049,7049,4034,4009,582,7049,7049,7049,7049,7049,
+ 7049,7049,166,7049,192,165,168,169,170,171,
+ 172,4091,35,814,32,5851,4479,27,30,31,
+ 875,885,335,28,3521,35,814,32,7049,1307,
+ 27,30,31,875,885,26,28,747,25,23,
+ 50,1003,104,75,76,106,1088,7049,7049,7049,
+ 7049,1178,2517,7049,7049,7049,7049,7049,7049,7049,
+ 7049,7049,7049,7049,7049,7049,7049,7049,7049,7049,
+ 7049,315,2530,317,7049,7049,310,2525,7049,7049,
+ 7049,7049,522,7049,7049,7049,7049,7049,7049,3461,
+ 35,814,32,348,1307,27,30,31,875,885,
+ 26,28,747,25,23,50,1003,85,75,76,
+ 340,1099,642,345,3521,35,814,32,523,1307,
+ 27,30,31,875,885,26,28,747,25,23,
+ 50,1003,104,75,76,106,1088,3521,35,814,
+ 32,2229,1307,27,30,31,875,885,26,28,
+ 747,25,23,50,1003,104,75,76,106,1088,
+ 3938,35,1701,384,2243,4174,2674,7049,7049,7049,
+ 7049,1712,7049,235,7049,7049,7049,7049,7049,7049,
+ 1267,7049,7049,583,531,532,533,7049,7049,534,
+ 531,532,533,7049,7049,7049,7049,7049,7049,2169,
+ 7049,7049,270,534,531,532,533,720,2258,35,
+ 814,32,5898,4479,27,30,31,875,885,335,
+ 28,3618,534,531,532,533,7049,7049,7049,2969,
+ 229,535,531,532,533,328,2200,35,814,32,
+ 3690,4479,27,30,31,875,885,335,28,7049,
+ 233,227,228,1840,7049,7049,7049,2755,7049,535,
+ 531,532,533,5940,271,7049,7049,7049,315,2530,
+ 317,7049,7049,310,2525,7049,7049,7049,7049,4529,
+ 7049,7049,225,7049,7049,7049,7049,240,243,246,
+ 249,2868,7049,7049,7049,7049,315,2530,317,7049,
+ 959,594,2525,7049,203,213,5448,579,202,210,
+ 211,212,214,7049,7049,7049,7049,582,7049,7049,
+ 2561,35,814,32,5898,4479,27,30,31,875,
+ 885,335,28,7049,7049,7049,204,206,208,291,
+ 292,3427,7049,535,531,532,533,215,205,207,
+ 1897,35,1701,384,2119,7049,7049,7049,2755,7049,
+ 7049,7049,7049,7049,7049,7049,7049,7049,2212,7049,
+ 7049,7049,2755,7049,7049,7049,7049,2484,7049,5493,
+ 315,2530,317,225,7049,310,2525,7049,7049,7049,
+ 7049,4529,49,7049,7049,7049,7049,225,1674,3255,
+ 7049,7049,7049,7049,7049,203,213,5448,7049,202,
+ 210,211,212,214,7049,7049,7049,3216,582,203,
+ 213,5448,7049,202,210,211,212,214,7049,7049,
+ 7049,2757,582,7049,7049,601,7049,204,206,208,
+ 291,292,3427,7049,7049,2386,7049,7049,215,205,
+ 207,204,206,208,291,292,3427,7049,7049,7049,
+ 339,7049,215,205,207,7049,7049,154,534,531,
+ 532,533,7049,7049,1306,7049,3472,7049,2754,7049,
+ 5493,1047,7049,7049,7049,1049,3618,7049,7049,7049,
+ 7049,7049,2770,7049,5493,3521,35,814,32,1153,
+ 1307,27,30,31,875,885,26,28,747,25,
+ 23,50,1003,104,75,76,106,2270,3521,35,
+ 814,32,7049,1307,27,30,31,875,885,26,
+ 28,747,25,23,50,1003,104,75,76,106,
+ 2295,3521,35,814,32,7049,1307,27,30,31,
+ 875,885,26,28,747,25,23,50,1003,104,
+ 75,76,106,2321,3521,1711,814,1722,7049,1307,
+ 27,30,31,875,885,26,28,747,25,23,
+ 50,1003,104,75,76,83,3521,35,814,32,
+ 7049,1307,27,30,31,875,885,26,28,747,
+ 25,23,50,1003,104,75,76,82,3521,35,
+ 814,32,7049,1307,27,30,31,875,885,26,
+ 28,747,25,23,50,1003,104,75,76,81,
+ 3521,35,814,32,7049,1307,27,30,31,875,
+ 885,26,28,747,25,23,50,1003,104,75,
+ 76,80,3521,35,814,32,7049,1307,27,30,
+ 31,875,885,26,28,747,25,23,50,1003,
+ 104,75,76,79,3521,35,814,32,7049,1307,
+ 27,30,31,875,885,26,28,747,25,23,
+ 50,1003,104,75,76,78,3521,35,814,32,
+ 7049,1307,27,30,31,875,885,26,28,747,
+ 25,23,50,1003,104,75,76,77,3338,35,
+ 814,32,7049,1307,27,30,31,875,885,26,
+ 28,747,25,23,50,1003,104,75,76,102,
+ 3521,35,814,32,7049,1307,27,30,31,875,
+ 885,26,28,747,25,23,50,1003,104,75,
+ 76,108,3521,35,814,32,7049,1307,27,30,
+ 31,875,885,26,28,747,25,23,50,1003,
+ 104,75,76,107,3521,35,814,32,7049,1307,
+ 27,30,31,875,885,26,28,747,25,23,
+ 50,1003,104,75,76,105,3521,35,814,32,
+ 7049,1307,27,30,31,875,885,26,28,747,
+ 25,23,50,1003,104,75,76,103,2305,7049,
+ 7049,7049,2755,7049,7049,7049,7049,7049,7049,7049,
+ 7049,7049,1933,7049,7049,7049,2755,7049,7049,7049,
+ 7049,7049,7049,7049,7049,7049,7049,225,1431,35,
+ 814,32,656,4479,27,30,31,875,885,335,
+ 28,225,7049,7049,7049,7049,7049,7049,7049,203,
+ 213,5448,7049,202,210,211,212,214,7049,7049,
+ 7049,7049,582,203,213,5448,7049,202,210,211,
+ 212,214,7049,2026,7049,7049,582,2755,7049,7049,
+ 7049,204,206,208,291,292,3427,2398,312,3276,
+ 317,2755,516,205,207,204,206,208,291,292,
+ 3427,7049,225,7049,7049,7049,515,205,207,7049,
+ 7049,7049,7049,7049,7049,7049,225,7049,7049,7049,
+ 7049,7049,7049,7049,203,213,5448,7049,202,210,
+ 211,212,214,7049,7049,7049,7049,582,203,213,
+ 5448,7049,202,210,211,212,214,7049,2491,7049,
+ 7049,582,2755,7049,7049,7049,204,206,208,291,
+ 292,3427,7049,7049,7049,7049,7049,216,205,207,
+ 204,206,208,291,292,3427,7049,225,7049,7049,
+ 7049,301,205,207,7049,7049,7049,7049,7049,7049,
+ 7049,7049,7049,7049,7049,7049,7049,2903,7049,203,
+ 213,5448,7049,202,210,211,212,214,3581,35,
+ 814,32,582,1307,27,30,31,875,885,26,
+ 28,747,25,23,50,1003,576,75,76,7049,
+ 7049,204,206,208,291,292,3427,7049,7049,7049,
+ 7049,7049,495,205,207,3641,35,814,32,7049,
+ 1307,27,30,31,875,885,26,28,747,25,
+ 23,50,1003,3048,75,76,1478,35,814,32,
+ 5898,4479,27,30,31,875,885,335,28,2633,
+ 35,814,32,5898,4479,27,30,31,875,885,
+ 335,28,7049,2097,7049,1614,7049,2755,1712,2755,
+ 2096,1727,7049,7049,7049,2755,2096,7049,7049,2928,
+ 35,1701,384,7049,7049,7049,534,531,532,533,
+ 7049,7049,3658,7049,225,7049,315,2530,317,7049,
+ 225,310,2525,7049,720,7049,7049,3769,7049,315,
+ 2530,317,7049,7049,310,2525,2445,403,962,7049,
+ 3578,49,2445,403,962,7049,2969,1674,47,7049,
+ 7049,7049,328,7049,7049,7049,7049,7049,7049,2097,
+ 7049,7049,7049,2755,1712,7049,2961,7049,404,405,
+ 406,291,292,3427,404,405,406,291,292,3427,
+ 3248,356,534,531,532,533,2674,7049,3658,7049,
+ 7049,1712,7049,3361,3315,3191,3239,7049,7049,3361,
+ 720,7049,7049,7049,7049,7049,7049,7049,7049,534,
+ 531,532,533,2674,7049,7049,7049,7049,1712,7049,
+ 7049,2674,2969,7049,7049,7049,1712,720,328,7049,
+ 7049,7049,7049,7049,7049,7049,534,531,532,533,
+ 7049,7049,7049,7049,534,531,532,533,7049,2969,
+ 7049,7049,7049,7049,720,328,2974,356,7049,407,
+ 409,7049,720,7049,7049,407,410,7049,2674,7049,
+ 3315,3191,3239,1712,7049,3980,2969,2972,7049,7049,
+ 1712,601,5905,3248,2969,7049,1028,7049,7049,5721,
+ 328,534,531,532,533,7049,7049,7049,534,531,
+ 532,533,7049,2757,7049,7049,3550,601,7049,720,
+ 2161,7049,7049,154,7049,1712,720,7049,2974,7049,
+ 654,178,7049,7049,7049,3147,258,7049,7049,601,
+ 601,2969,339,534,531,532,533,328,2969,154,
+ 2296,35,1701,384,5905,7049,1306,7049,3472,193,
+ 7049,720,7049,1047,339,339,7049,1049,7049,7049,
+ 7049,154,154,7049,7049,3686,92,7049,186,186,
+ 7049,3163,7049,2969,7049,5699,5699,7049,7049,329,
+ 7049,7049,49,2973,35,1701,384,7049,1674,47,
+ 7049,1897,35,1701,384,1897,35,1701,384,1897,
+ 35,1701,384,1897,35,1701,384,2713,7049,7049,
+ 7049,1897,35,1701,384,7049,7049,3609,7049,7049,
+ 7049,2755,7049,7049,7049,49,7049,7049,94,7049,
+ 7049,1674,47,49,188,3704,7049,49,258,1674,
+ 47,49,601,1674,47,49,3658,1674,47,7049,
+ 3241,1674,47,49,7049,7049,7049,258,934,1674,
+ 47,601,2192,7049,7049,7049,2280,339,7049,7049,
+ 2476,7049,5955,194,154,7049,7049,7049,2536,7049,
+ 7049,186,7049,7049,7049,7049,339,7049,5699,7049,
+ 7049,7049,7049,154,7049,7049,7049,7049,7049,7049,
+ 186,7049,7049,7049,7049,7049,7049,5699,7049,7049,
+ 7049,7049,7049,7049,7049,501,7049,7049,7049,2657,
+ 7049,7049,7049,7049,7049,7049,7049,7049,7049,7049,
+ 7049,7049,7049,7049,7049,7049,7049,7049,7049,7049,
+ 7049,7049,7049,7049,7049,7049,7049,3707,7049,7049,
+ 7049,7049,7049,7049,7049,7049,7049,7049,7049,498,
+ 500,7049,7049,7049,7049,7049,3725,7049,7049,7049,
+ 7049,7049,7049,7049,7049,7049,7049,7049,7049,7049,
+ 7049,7049,7049,7049,7049,7049,7049,7049,7049,7049,
+ 7049,7049,7049,7049,7049,7049,7049,7049,3763,7049,
+ 0,39,7064,0,39,7063,0,686,29,0,
+ 436,754,0,450,956,0,38,733,0,38,
+ 7064,0,38,7063,0,7112,74,0,7111,74,
+ 0,887,74,0,3397,74,0,1563,74,0,
+ 1855,74,0,3915,124,0,1,440,0,454,
+ 1011,0,453,1223,0,7057,1,0,1406,89,
+ 0,686,383,0,35,33,0,32,34,0,
+ 39,733,0,1,632,0,1,7646,0,1,
+ 7645,0,1,7318,0,1,7317,0,1,7316,
+ 0,1,7315,0,1,7314,0,1,7313,0,
+ 1,7312,0,1,7311,0,1,7310,0,1,
+ 7309,0,1,7308,0,39,1,7064,0,39,
+ 1,7063,0,1295,1,0,1,3137,0,7280,
+ 221,0,7279,221,0,1914,221,0,1962,221,
+ 0,2032,221,0,7383,221,0,7382,221,0,
+ 7307,221,0,7306,221,0,7305,221,0,7304,
+ 221,0,7303,221,0,7302,221,0,7301,221,
+ 0,7300,221,0,7280,222,0,7279,222,0,
+ 1914,222,0,1962,222,0,2032,222,0,7383,
+ 222,0,7382,222,0,7307,222,0,7306,222,
+ 0,7305,222,0,7304,222,0,7303,222,0,
+ 7302,222,0,7301,222,0,7300,222,0,2032,
+ 390,0,1962,390,0,1914,390,0,280,390,
+ 0,7280,223,0,7279,223,0,1914,223,0,
+ 1962,223,0,2032,223,0,7383,223,0,7382,
+ 223,0,7307,223,0,7306,223,0,7305,223,
+ 0,7304,223,0,7303,223,0,7302,223,0,
+ 7301,223,0,7300,223,0,280,283,0,7280,
+ 224,0,7279,224,0,1914,224,0,1962,224,
+ 0,2032,224,0,7383,224,0,7382,224,0,
+ 7307,224,0,7306,224,0,7305,224,0,7304,
+ 224,0,7303,224,0,7302,224,0,7301,224,
+ 0,7300,224,0,7064,48,0,7063,48,0,
+ 7280,581,0,7279,581,0,1914,581,0,1962,
+ 581,0,2032,581,0,7383,581,0,7382,581,
+ 0,7307,581,0,7306,581,0,7305,581,0,
+ 7304,581,0,7303,581,0,7302,581,0,7301,
+ 581,0,7300,581,0,7280,598,0,7279,598,
+ 0,1914,598,0,1962,598,0,2032,598,0,
+ 7383,598,0,7382,598,0,7307,598,0,7306,
+ 598,0,7305,598,0,7304,598,0,7303,598,
+ 0,7302,598,0,7301,598,0,7300,598,0,
+ 7280,238,0,7279,238,0,1914,238,0,1962,
+ 238,0,2032,238,0,7383,238,0,7382,238,
+ 0,7307,238,0,7306,238,0,7305,238,0,
+ 7304,238,0,7303,238,0,7302,238,0,7301,
+ 238,0,7300,238,0,39,7064,238,0,39,
+ 7063,238,0,7087,238,0,7646,238,0,7645,
+ 238,0,7318,238,0,7317,238,0,7316,238,
+ 0,7315,238,0,7314,238,0,7313,238,0,
+ 7312,238,0,7311,238,0,7310,238,0,7309,
+ 238,0,7308,238,0,7055,1,0,7054,1,
+ 0,32,384,0,29,383,0,1025,234,0,
+ 1,226,3057,0,7058,226,0,3068,226,0,
+ 1,226,1231,0,1,226,0,43,7085,0,
+ 43,37,0,3915,126,0,3915,125,0,2032,
+ 441,0,1962,441,0,1914,441,0,7087,441,
+ 0,327,441,0,39,441,0,2032,593,0,
+ 1962,593,0,1914,593,0,2032,591,0,1962,
+ 591,0,1914,591,0,595,591,0,595,590,
+ 0,1,2032,0,1,1962,0,1,1914,0,
+ 7087,1,0,39,1,0,47,37,0,569,
+ 576,0,3256,226,0,10,12,0,1,5686,
+ 0,1,649,0,1,733,0,1,90,0,
+ 2032,327,0,1962,327,0,1914,327,0,497,
+ 3413,0,7087,1,226,0,39,1,226,0,
+ 226,412,0,7064,37,0,7063,37,0,7064,
+ 2,37,0,7063,2,37,0,7064,36,0,
+ 7063,36,0,8,10,12,0,1,327,0,
+ 3065,98,0,7085,45,0,37,45,0,7059,
+ 401,0,7058,401,0,226,411,0,3717,314,
+ 0,1,593,0,3581,101,0,2494,97,0,
+ 2032,93,0,1962,93,0,1914,93,0,7087,
+ 93,0,327,93,0,39,93,0,35,72,
+ 0,7383,332,0,7382,332,0,2264,275,0,
+ 7061,379,0,7060,379,0,497,5432,0,226,
+ 218,0,183,4459,0,226,217,0,1,1981,
+ 0,1,2077,0,2032,588,0,1962,588,0,
+ 1914,588,0,2032,587,0,1962,587,0,1914,
+ 587,0,534,535,0,7061,1,0,2032,588,
+ 589,0,1962,588,589,0,1914,588,589,0,
+ 588,589,0,3764,379,0,8,12,0
};
};
public final static char baseAction[] = BaseAction.baseAction;
@@ -1407,7 +1407,7 @@ public class GPPSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
26,27,28,29,30,31,32,33,34,35,
36,37,38,39,40,41,42,43,44,45,
46,47,48,49,50,51,52,53,54,55,
- 56,57,58,59,60,0,62,63,64,0,
+ 56,57,58,59,60,0,62,63,64,78,
66,67,68,69,0,71,72,0,74,5,
6,7,78,106,80,81,82,83,84,85,
86,87,88,89,90,91,0,1,2,3,
@@ -1418,7 +1418,7 @@ public class GPPSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
44,45,46,47,48,49,50,51,52,53,
54,55,56,57,58,59,60,0,62,63,
64,4,66,67,68,69,0,71,72,104,
- 74,5,6,7,78,106,0,81,82,83,
+ 74,0,1,2,78,4,10,81,82,83,
84,85,86,87,88,89,90,91,0,1,
2,3,4,5,6,7,8,9,10,11,
12,13,14,15,16,17,18,19,20,21,
@@ -1426,8 +1426,8 @@ public class GPPSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
32,33,34,35,36,37,38,39,40,41,
42,43,44,45,46,47,48,49,50,51,
52,53,54,55,56,57,58,59,60,0,
- 62,63,64,77,66,67,68,69,0,71,
- 72,0,74,5,6,7,78,0,0,81,
+ 62,63,64,0,66,67,68,69,0,71,
+ 72,0,74,0,98,99,78,4,10,81,
82,83,84,85,86,87,88,89,90,91,
0,1,2,3,4,5,6,7,8,9,
10,11,12,13,14,15,16,17,18,19,
@@ -1435,27 +1435,27 @@ public class GPPSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
30,31,32,33,34,35,36,37,38,39,
40,41,42,43,44,45,46,47,48,49,
50,51,52,53,54,55,56,57,58,59,
- 60,0,62,63,64,77,66,67,68,69,
- 0,71,72,104,74,5,6,7,78,0,
- 0,81,82,83,84,85,86,87,88,89,
+ 60,0,62,63,64,4,66,67,68,69,
+ 0,71,72,104,74,0,98,99,78,106,
+ 10,81,82,83,84,85,86,87,88,89,
90,91,0,1,2,3,4,5,6,7,
8,9,10,11,12,13,14,15,16,17,
18,19,20,21,22,23,24,25,26,27,
28,29,30,31,32,33,34,35,36,37,
38,39,40,41,42,43,44,45,46,47,
48,49,50,51,52,53,54,55,56,57,
- 58,59,60,0,62,63,64,77,66,67,
- 68,69,0,71,72,12,74,5,6,7,
- 78,0,0,81,82,83,84,85,86,87,
+ 58,59,60,0,62,63,64,4,66,67,
+ 68,69,0,71,72,3,74,0,98,99,
+ 78,96,97,81,82,83,84,85,86,87,
88,89,90,91,0,1,2,3,4,5,
6,7,8,9,10,11,12,13,14,15,
16,17,18,19,20,21,22,23,24,25,
26,27,28,29,30,31,32,33,34,35,
36,37,38,39,40,41,42,43,44,45,
46,47,48,49,50,51,52,53,54,55,
- 56,57,58,59,60,0,62,63,64,77,
- 66,67,68,69,0,71,72,0,74,5,
- 6,7,78,0,0,81,82,83,84,85,
+ 56,57,58,59,60,0,62,63,64,0,
+ 66,67,68,69,0,71,72,12,74,5,
+ 6,7,78,96,97,81,82,83,84,85,
86,87,88,89,90,91,0,1,2,3,
4,5,6,7,8,9,10,11,12,13,
14,15,16,17,18,19,20,21,22,23,
@@ -1463,7 +1463,7 @@ public class GPPSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
34,35,36,37,38,39,40,41,42,43,
44,45,46,47,48,49,50,51,52,53,
54,55,56,57,58,59,60,0,62,63,
- 64,77,66,67,68,69,0,71,72,0,
+ 64,0,66,67,68,69,0,71,72,8,
74,5,6,7,78,0,0,81,82,83,
84,85,86,87,88,89,90,91,0,1,
2,3,4,5,6,7,8,9,10,11,
@@ -1483,14 +1483,14 @@ public class GPPSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
50,51,52,53,54,55,56,57,58,59,
60,0,62,63,64,77,66,67,68,69,
0,71,72,0,74,5,6,7,78,0,
- 1,81,82,83,84,85,86,87,88,89,
+ 0,81,82,83,84,85,86,87,88,89,
90,91,0,1,2,3,4,5,6,7,
8,9,10,11,12,13,14,15,16,17,
18,19,20,21,22,23,24,25,26,27,
28,29,30,31,32,33,34,35,36,37,
38,39,40,41,42,43,44,45,46,47,
48,49,50,51,52,53,54,55,56,57,
- 58,59,60,0,62,63,64,4,66,67,
+ 58,59,60,0,62,63,64,77,66,67,
68,69,0,71,72,0,74,5,6,7,
78,0,0,81,82,83,84,85,86,87,
88,89,90,91,0,1,2,3,4,5,
@@ -1499,9 +1499,9 @@ public class GPPSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
26,27,28,29,30,31,32,33,34,35,
36,37,38,39,40,41,42,43,44,45,
46,47,48,49,50,51,52,53,54,55,
- 56,57,58,59,60,0,62,63,64,78,
+ 56,57,58,59,60,0,62,63,64,77,
66,67,68,69,0,71,72,0,74,5,
- 6,7,78,0,0,81,82,83,84,85,
+ 6,7,78,0,1,81,82,83,84,85,
86,87,88,89,90,91,0,1,2,3,
4,5,6,7,8,9,10,11,12,13,
14,15,16,17,18,19,20,21,22,23,
@@ -1509,293 +1509,303 @@ public class GPPSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
34,35,36,37,38,39,40,41,42,43,
44,45,46,47,48,49,50,51,52,53,
54,55,56,57,58,59,60,0,62,63,
- 64,0,66,67,68,69,0,71,72,8,
+ 64,0,66,67,68,69,0,71,72,0,
74,5,6,7,78,0,0,81,82,83,
84,85,86,87,88,89,90,91,0,1,
2,3,4,5,6,7,8,9,10,11,
12,0,0,0,1,2,0,4,5,6,
- 7,5,6,7,11,12,28,29,30,31,
+ 7,5,6,7,0,0,28,29,30,31,
32,33,34,35,36,37,38,39,40,41,
- 42,65,44,45,28,29,30,31,32,33,
- 34,35,36,37,38,39,0,1,2,0,
+ 0,43,44,45,28,29,30,76,77,33,
+ 34,35,36,37,38,39,40,41,79,0,
0,1,2,65,4,5,6,7,70,102,
103,73,74,75,76,77,78,79,80,0,
- 1,2,3,4,5,6,7,8,9,0,
- 105,93,94,95,96,97,98,99,100,101,
- 102,103,104,105,106,107,108,109,96,97,
- 0,113,114,115,116,117,118,119,120,121,
- 122,123,124,125,65,127,128,0,1,2,
+ 1,2,3,4,5,6,7,8,9,65,
+ 11,93,94,95,96,97,98,99,100,101,
+ 102,103,104,105,106,107,108,109,0,1,
+ 2,113,114,115,116,117,118,119,120,121,
+ 122,123,124,125,45,127,128,0,1,2,
3,4,5,6,7,8,9,10,11,12,
- 0,0,0,1,2,0,4,5,6,7,
- 5,6,7,43,75,28,29,30,31,32,
- 33,34,35,36,37,38,39,40,41,42,
- 29,44,45,28,29,30,31,32,33,34,
- 35,36,37,38,39,0,1,2,3,4,
- 0,1,65,8,9,0,0,70,3,3,
+ 0,1,2,3,4,0,0,107,8,9,
+ 5,6,7,128,114,28,29,30,31,32,
+ 33,34,35,36,37,38,39,40,41,61,
+ 43,44,45,28,29,30,0,0,33,34,
+ 35,36,37,38,39,40,41,0,1,2,
+ 3,4,65,0,0,8,9,70,0,0,
73,74,75,76,77,78,79,80,0,1,
- 2,3,4,5,6,7,8,9,28,79,
+ 2,3,4,5,6,7,8,9,42,0,
93,94,95,96,97,98,99,100,101,102,
103,104,105,106,107,108,109,0,1,2,
113,114,115,116,117,118,119,120,121,122,
- 123,124,125,0,127,128,0,1,2,3,
- 4,5,6,7,8,9,70,11,12,13,
+ 123,124,125,76,127,128,0,1,2,3,
+ 4,5,6,7,8,9,10,0,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,61,43,
- 44,45,46,47,48,49,50,51,52,53,
+ 34,35,36,37,38,39,40,41,42,43,
+ 44,0,46,47,48,49,50,51,52,53,
54,55,56,57,58,59,60,0,62,63,
64,0,66,0,1,2,3,4,5,6,
7,8,9,10,11,12,13,14,15,16,
17,18,19,20,21,22,23,24,25,26,
- 27,28,29,30,31,32,33,34,35,36,
- 37,38,39,0,0,42,0,1,2,3,
- 4,5,6,7,8,9,13,11,12,0,
- 1,2,0,60,61,62,63,64,0,0,
- 67,68,69,5,6,7,0,76,75,10,
- 0,1,2,80,0,1,2,3,4,5,
- 6,7,8,9,0,92,28,29,30,31,
- 32,33,34,35,36,37,38,39,0,1,
- 2,0,0,110,111,112,0,1,2,3,
+ 27,28,29,30,0,0,33,34,35,36,
+ 37,38,39,40,41,0,1,2,45,4,
+ 0,0,105,8,9,0,5,6,7,4,
+ 5,6,7,60,61,62,63,64,0,0,
+ 67,68,69,5,6,7,75,0,75,28,
+ 29,30,0,80,33,34,35,36,37,38,
+ 39,40,41,11,0,92,28,29,30,0,
+ 1,33,34,35,36,37,38,39,40,41,
+ 11,76,77,110,111,112,0,1,2,3,
4,5,6,7,8,9,10,11,12,13,
14,15,16,17,18,19,20,21,22,23,
- 24,25,26,27,28,29,30,31,32,33,
- 34,35,36,37,38,39,0,81,42,0,
- 1,2,3,4,5,6,7,8,9,61,
- 11,12,110,111,112,0,60,61,62,63,
- 64,0,0,67,68,69,5,6,7,95,
- 0,75,0,3,125,0,80,0,1,2,
- 3,4,5,6,7,8,9,95,92,28,
- 29,30,31,32,33,34,35,36,37,38,
- 39,65,0,1,2,0,110,111,112,0,
+ 24,25,26,27,28,29,30,70,79,33,
+ 34,35,36,37,38,39,40,41,0,1,
+ 2,45,4,129,0,0,8,9,3,5,
+ 6,7,73,0,1,2,60,61,62,63,
+ 64,8,9,67,68,69,0,0,1,2,
+ 0,75,28,29,30,8,80,33,34,35,
+ 36,37,38,39,40,41,0,125,92,0,
+ 1,2,3,4,5,6,7,8,9,10,
+ 126,12,0,0,1,2,110,111,112,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,79,
- 75,42,0,1,2,3,4,5,6,7,
- 8,9,10,61,102,103,0,1,2,60,
- 61,62,63,64,8,9,67,68,69,0,
- 1,2,3,4,5,6,7,8,9,80,
- 11,12,0,0,42,0,4,5,6,7,
- 128,92,0,1,2,3,4,5,6,7,
+ 0,0,33,34,35,36,37,38,39,40,
+ 41,0,1,2,45,4,5,6,7,93,
+ 94,10,76,12,75,0,0,1,2,60,
+ 61,62,63,64,71,72,67,68,69,0,
+ 1,2,3,4,0,1,2,8,9,80,
+ 11,0,1,2,3,4,5,6,7,8,
+ 9,92,0,1,2,3,4,5,6,7,
8,9,10,11,12,13,14,15,16,17,
18,19,20,21,22,23,24,25,26,27,
- 28,29,30,31,32,33,34,35,36,37,
- 38,39,0,0,42,0,4,0,1,2,
- 5,6,7,0,75,8,9,0,1,2,
- 65,4,60,61,62,63,64,65,75,67,
- 68,69,30,28,29,30,31,32,33,34,
- 35,36,37,38,39,0,1,2,95,0,
- 1,2,0,8,92,0,1,2,3,4,
+ 28,29,30,93,94,33,34,35,36,37,
+ 38,39,40,41,79,61,0,45,0,70,
+ 0,3,73,3,0,76,77,11,79,5,
+ 6,7,60,61,62,63,64,65,0,67,
+ 68,69,107,0,95,0,0,1,2,114,
+ 115,116,117,118,119,120,121,122,123,124,
+ 0,0,1,2,92,0,1,2,3,4,
5,6,7,8,9,10,11,12,13,14,
15,16,17,18,19,20,21,22,23,24,
- 25,26,27,28,29,30,31,32,33,34,
- 35,36,37,38,39,0,0,42,0,1,
- 2,3,4,5,6,7,8,9,0,0,
- 0,3,110,111,112,60,61,62,63,64,
- 71,72,67,68,69,0,1,2,0,1,
- 2,3,4,0,0,80,8,9,10,0,
- 1,2,0,4,5,6,7,92,0,1,
+ 25,26,27,28,29,30,80,79,33,34,
+ 35,36,37,38,39,40,41,61,65,0,
+ 45,0,1,2,3,4,5,6,7,8,
+ 9,10,61,12,0,60,61,62,63,64,
+ 70,0,67,68,69,0,0,1,2,0,
+ 4,5,6,7,0,80,10,11,12,5,
+ 6,7,0,1,2,31,32,92,0,1,
2,3,4,5,6,7,8,9,10,11,
12,13,14,15,16,17,18,19,20,21,
- 22,23,24,25,26,27,28,29,30,31,
- 32,33,34,35,36,37,38,39,0,0,
- 42,96,97,0,61,0,71,72,70,65,
- 61,73,93,94,76,77,11,79,60,61,
- 62,63,64,0,0,67,68,69,0,77,
- 0,1,2,95,4,5,6,7,80,40,
- 41,11,12,40,41,0,0,1,2,4,
+ 22,23,24,25,26,27,28,29,30,0,
+ 0,33,34,35,36,37,38,39,40,41,
+ 0,1,2,45,4,5,6,7,0,73,
+ 10,76,12,5,6,7,77,0,60,61,
+ 62,63,64,71,72,67,68,69,0,1,
+ 2,95,0,1,2,126,8,9,80,0,
+ 1,2,3,4,5,6,7,8,9,0,
92,0,1,2,3,4,5,6,7,8,
9,10,11,12,13,14,15,16,17,18,
19,20,21,22,23,24,25,26,27,28,
- 29,30,31,32,33,34,35,36,37,38,
- 39,0,0,42,0,1,2,0,4,5,
- 6,7,11,98,99,11,12,61,0,0,
- 65,60,61,62,63,64,93,94,67,68,
- 69,0,1,2,3,4,5,6,7,8,
- 9,80,11,12,0,107,0,1,2,5,
- 6,7,114,92,0,1,2,3,4,5,
+ 29,30,93,94,33,34,35,36,37,38,
+ 39,40,41,61,0,105,45,0,1,2,
+ 3,4,5,6,7,8,9,10,0,12,
+ 0,60,61,62,63,64,0,0,67,68,
+ 69,11,0,1,2,3,4,5,6,7,
+ 0,80,10,3,12,0,1,2,0,0,
+ 0,11,3,92,0,1,2,3,4,5,
6,7,8,9,10,11,12,13,14,15,
16,17,18,19,20,21,22,23,24,25,
- 26,27,28,29,30,31,32,33,34,35,
- 36,37,38,39,0,76,42,79,4,98,
- 99,70,0,1,2,3,4,61,0,0,
- 8,9,10,0,60,61,62,63,64,0,
- 0,67,68,69,30,107,0,1,2,10,
- 10,129,114,115,116,117,118,119,120,121,
- 122,123,124,0,42,0,92,0,1,2,
+ 26,27,28,29,30,126,0,33,34,35,
+ 36,37,38,39,40,41,76,93,94,45,
+ 80,75,70,0,1,2,3,4,5,6,
+ 7,8,9,73,60,61,62,63,64,70,
+ 70,67,68,69,0,1,2,3,4,5,
+ 6,7,8,9,10,0,12,110,111,112,
+ 5,6,7,0,96,97,92,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,61,75,42,
- 0,1,2,74,4,5,6,7,0,0,
- 80,11,12,0,96,97,3,60,61,62,
- 63,64,0,70,67,68,69,0,1,2,
- 3,4,5,6,7,8,9,0,11,12,
- 0,1,2,0,4,5,6,7,0,92,
+ 23,24,25,26,27,28,29,30,75,0,
+ 33,34,35,36,37,38,39,40,41,10,
+ 0,12,45,0,70,0,0,1,2,3,
+ 4,5,6,7,8,9,13,60,61,62,
+ 63,64,0,0,67,68,69,0,1,2,
+ 3,4,5,6,7,8,9,10,0,12,
+ 0,1,2,0,4,5,6,7,95,92,
0,1,2,3,4,5,6,7,8,9,
10,11,12,13,14,15,16,17,18,19,
20,21,22,23,24,25,26,27,28,29,
- 30,31,32,33,34,35,36,37,38,39,
- 0,43,42,0,1,2,3,4,5,6,
- 7,61,75,0,11,12,0,0,1,2,
- 60,61,62,63,64,8,0,67,68,69,
+ 30,75,77,33,34,35,36,37,38,39,
+ 40,41,0,93,94,45,0,1,2,3,
+ 4,61,75,11,8,9,0,11,0,1,
+ 60,61,62,63,64,93,94,67,68,69,
0,1,2,3,4,5,6,7,8,9,
- 93,94,0,1,2,3,4,0,95,0,
- 8,9,92,11,12,13,14,15,16,17,
+ 0,0,1,2,3,4,28,45,95,8,
+ 9,10,92,12,13,14,15,16,17,18,
+ 19,20,21,22,23,24,25,26,27,0,
+ 1,2,31,32,0,0,70,0,76,73,
+ 5,6,7,42,43,44,11,46,47,48,
+ 49,50,51,52,53,54,55,56,57,58,
+ 59,0,0,1,2,3,4,66,0,68,
+ 8,9,71,72,0,1,2,3,4,11,
+ 45,81,8,9,10,0,12,13,14,15,
+ 16,17,18,19,20,21,22,23,24,25,
+ 26,27,65,0,0,31,32,4,5,6,
+ 7,76,75,10,0,12,42,43,44,0,
+ 46,47,48,49,50,51,52,53,54,55,
+ 56,57,58,59,0,31,32,0,1,2,
+ 66,4,5,6,7,71,72,10,80,12,
+ 0,77,0,1,2,3,4,96,97,0,
+ 8,9,10,11,12,13,14,15,16,17,
18,19,20,21,22,23,24,25,26,27,
- 0,1,0,70,0,28,29,3,61,79,
- 10,0,40,41,10,43,44,45,46,47,
+ 0,1,2,31,32,0,0,102,103,0,
+ 76,11,0,4,42,43,44,11,46,47,
48,49,50,51,52,53,54,55,56,57,
- 58,59,0,1,2,75,93,94,66,0,
- 68,0,10,71,72,0,1,2,3,4,
- 0,40,41,8,9,0,11,12,13,14,
- 15,16,17,18,19,20,21,22,23,24,
- 25,26,27,73,70,96,97,73,28,29,
- 76,77,0,1,2,40,41,0,43,44,
- 45,46,47,48,49,50,51,52,53,54,
- 55,56,57,58,59,0,74,0,0,70,
- 3,66,4,5,6,7,71,72,0,11,
- 12,66,77,0,1,2,3,4,0,11,
- 12,8,9,10,11,12,13,14,15,16,
- 17,18,19,20,21,22,23,24,25,26,
- 27,0,1,2,3,4,0,1,2,8,
- 9,0,0,40,41,3,43,44,45,46,
- 47,48,49,50,51,52,53,54,55,56,
- 57,58,59,0,1,2,3,4,0,66,
- 0,8,9,65,0,0,0,74,0,1,
- 2,3,4,80,10,77,8,9,0,11,
- 12,13,14,15,16,17,18,19,20,21,
- 22,23,24,25,26,27,65,0,100,101,
- 0,0,70,3,3,0,108,109,40,41,
- 10,43,44,45,46,47,48,49,50,51,
- 52,53,54,55,56,57,58,59,0,1,
- 2,65,4,75,66,70,8,9,74,71,
- 72,0,1,2,3,4,0,1,2,8,
- 9,0,11,12,13,14,15,16,17,18,
+ 58,59,93,94,0,65,0,0,66,30,
+ 4,0,1,2,3,4,74,77,11,8,
+ 9,10,80,12,13,14,15,16,17,18,
19,20,21,22,23,24,25,26,27,0,
- 70,93,94,73,5,6,7,0,0,10,
- 3,40,41,0,43,44,45,46,47,48,
+ 100,101,31,32,74,0,0,0,108,109,
+ 74,76,0,42,43,44,11,46,47,48,
49,50,51,52,53,54,55,56,57,58,
- 59,0,1,2,0,4,0,66,0,8,
- 9,42,71,72,0,1,2,3,4,0,
- 0,13,8,9,0,11,12,13,14,15,
+ 59,65,0,1,2,29,0,66,31,32,
+ 73,77,71,72,0,1,2,3,4,110,
+ 111,112,8,9,10,0,12,13,14,15,
16,17,18,19,20,21,22,23,24,25,
- 26,27,0,65,0,76,0,0,1,2,
- 0,0,10,75,40,41,10,43,44,45,
+ 26,27,0,1,0,31,32,65,73,0,
+ 1,76,0,11,0,11,42,43,44,10,
46,47,48,49,50,51,52,53,54,55,
- 56,57,58,59,0,67,93,94,0,75,
- 66,3,0,0,42,71,72,0,1,2,
- 3,4,0,0,75,8,9,10,11,12,
+ 56,57,58,59,0,1,2,0,1,2,
+ 66,0,0,0,3,71,72,0,1,2,
+ 3,4,11,11,11,8,9,10,0,12,
13,14,15,16,17,18,19,20,21,22,
- 23,24,25,26,27,0,1,2,3,4,
- 76,77,76,8,9,10,80,40,41,105,
- 43,44,45,46,47,48,49,50,51,52,
- 53,54,55,56,57,58,59,65,65,0,
- 0,1,3,66,0,1,2,3,4,77,
- 10,74,8,9,0,11,12,13,14,15,
- 16,17,18,19,20,21,22,23,24,25,
- 26,27,100,101,0,70,93,94,73,0,
- 108,109,3,0,40,41,3,43,44,45,
- 46,47,48,49,50,51,52,53,54,55,
- 56,57,58,59,0,0,0,3,3,3,
- 66,0,0,73,10,71,72,0,1,2,
- 3,4,0,1,2,8,9,10,11,12,
+ 23,24,25,26,27,73,0,73,31,32,
+ 76,0,0,1,2,0,0,11,45,42,
+ 43,44,11,46,47,48,49,50,51,52,
+ 53,54,55,56,57,58,59,0,0,0,
+ 3,70,3,66,73,73,0,75,71,72,
+ 0,1,2,3,4,0,45,0,8,9,
+ 10,11,12,13,14,15,16,17,18,19,
+ 20,21,22,23,24,25,26,27,0,73,
+ 65,31,32,0,0,1,2,0,4,5,
+ 6,7,42,43,44,0,46,47,48,49,
+ 50,51,52,53,54,55,56,57,58,59,
+ 0,65,0,3,0,0,66,0,1,2,
+ 3,4,65,77,74,8,9,10,13,12,
13,14,15,16,17,18,19,20,21,22,
- 23,24,25,26,27,0,1,2,3,4,
- 76,77,0,8,9,0,0,40,41,3,
- 43,44,45,46,47,48,49,50,51,52,
- 53,54,55,56,57,58,59,73,0,1,
- 0,70,70,66,0,1,2,3,4,11,
- 10,74,8,9,10,11,12,13,14,15,
- 16,17,18,19,20,21,22,23,24,25,
- 26,27,0,1,2,70,61,5,6,7,
- 0,1,2,11,40,41,0,43,44,45,
- 46,47,48,49,50,51,52,53,54,55,
- 56,57,58,59,0,1,2,3,4,0,
- 0,0,8,9,74,11,12,13,14,15,
- 16,17,18,19,20,21,22,23,24,25,
- 26,27,0,61,0,1,2,0,4,0,
- 0,61,8,9,40,41,60,43,44,45,
- 46,47,48,49,50,51,52,53,54,55,
- 56,57,58,59,0,1,2,3,4,125,
- 66,61,8,9,65,11,12,13,14,15,
- 16,17,18,19,20,21,22,23,24,25,
- 26,27,0,1,2,61,4,0,1,2,
- 8,9,65,0,40,41,3,43,44,45,
- 46,47,48,49,50,51,52,53,54,55,
- 56,57,58,59,0,1,2,3,4,0,
- 0,0,8,9,70,11,12,13,14,15,
- 16,17,18,19,20,21,22,23,24,25,
- 26,27,0,61,0,0,0,3,61,4,
- 4,0,0,11,40,41,4,43,44,45,
- 46,47,48,49,50,51,52,53,54,55,
- 56,57,58,59,0,1,2,3,4,0,
- 0,0,8,9,3,11,12,13,14,15,
- 16,17,18,19,20,21,22,23,24,25,
- 26,27,0,0,0,0,0,3,3,3,
- 65,65,10,10,40,41,65,43,44,45,
- 46,47,48,49,50,51,52,53,54,55,
- 56,57,58,59,0,1,2,3,4,0,
- 98,99,8,9,42,11,12,13,14,15,
- 16,17,18,19,20,21,22,23,24,25,
- 26,27,0,0,0,0,0,3,3,3,
- 0,0,10,10,40,41,73,43,44,45,
- 46,47,48,49,50,51,52,53,54,55,
- 56,57,58,59,0,1,2,3,4,0,
- 0,0,8,9,42,11,12,13,14,15,
- 16,17,18,19,20,21,22,23,24,25,
- 26,27,0,0,0,0,3,0,4,0,
- 0,0,10,3,40,41,73,43,44,45,
- 46,47,48,49,50,51,52,53,54,55,
- 56,57,58,59,0,0,0,3,95,0,
- 0,0,8,0,42,11,12,11,0,10,
- 0,10,43,0,1,2,3,4,5,6,
- 7,8,9,10,11,12,0,0,0,0,
- 65,0,65,0,40,41,10,126,44,45,
- 46,28,29,30,31,32,33,34,35,36,
- 37,38,39,0,0,42,3,0,0,65,
- 3,0,0,0,70,71,72,0,42,0,
- 76,77,73,79,73,76,75,0,65,76,
- 13,0,13,70,76,75,73,93,94,0,
- 96,10,98,99,100,101,102,103,104,105,
- 106,107,76,75,75,43,79,113,75,115,
- 116,117,118,119,120,121,122,123,124,0,
- 1,2,0,4,5,6,7,60,61,60,
- 61,70,13,14,15,16,17,18,19,20,
- 21,22,23,24,25,26,27,28,29,30,
- 31,32,33,34,35,36,37,38,39,0,
- 0,80,0,0,0,3,3,3,79,10,
- 0,0,1,2,0,4,5,6,7,60,
- 126,62,63,64,13,14,15,16,17,18,
- 19,20,21,22,23,24,25,26,27,28,
- 29,30,31,32,33,34,35,36,37,38,
- 39,0,0,0,0,0,0,43,0,0,
- 0,0,0,0,0,0,0,5,6,7,
- 70,60,73,62,63,64,14,15,16,17,
- 18,19,20,21,22,23,24,25,26,79,
- 28,29,30,31,32,33,34,35,36,37,
- 38,39,0,1,2,3,4,5,6,7,
- 8,9,10,11,12,0,65,0,1,2,
- 3,4,5,6,7,8,9,10,11,12,
- 28,29,30,31,32,33,34,35,36,37,
- 38,39,0,0,42,28,29,30,31,32,
- 33,34,35,36,37,38,39,0,0,42,
- 0,0,0,1,2,3,4,5,6,7,
- 8,9,70,11,12,73,0,0,0,3,
- 0,126,0,0,0,0,0,70,10,0,
- 73,0,1,2,10,4,5,6,7,10,
- 0,10,11,12,0,0,0,65,0,0,
- 10,0,0,0,10,10,0,0,75,77,
- 44,45,0,0,0,0,0,0,0,0,
- 0,0,0,76,76,0,0,75,0,79,
- 79,0,100,101,0,0,70,0,65,0,
- 108,109,0,76,0,0,76,73,80,0,
- 76,79,73,0,73,76,0,0,0,0,
- 0,0,0,73,0,0,0,73,73,0,
- 0,0,0,0,0,79,95,79,0,113,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,127,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
+ 23,24,25,26,27,61,100,101,31,32,
+ 0,0,65,0,108,109,61,4,75,42,
+ 43,44,11,46,47,48,49,50,51,52,
+ 53,54,55,56,57,58,59,65,95,65,
+ 70,0,67,66,0,0,0,0,71,72,
+ 0,1,2,3,4,11,0,11,8,9,
+ 10,11,12,13,14,15,16,17,18,19,
+ 20,21,22,23,24,25,26,27,65,0,
+ 70,31,32,0,73,0,0,76,0,45,
+ 11,45,42,43,44,0,46,47,48,49,
+ 50,51,52,53,54,55,56,57,58,59,
+ 65,28,29,28,29,0,66,0,1,2,
+ 3,4,75,0,74,8,9,10,11,12,
+ 13,14,15,16,17,18,19,20,21,22,
+ 23,24,25,26,27,0,1,2,31,32,
+ 5,6,7,74,66,10,0,1,2,42,
+ 43,44,76,46,47,48,49,50,51,52,
+ 53,54,55,56,57,58,59,0,1,2,
+ 3,4,0,0,61,8,9,10,0,12,
+ 13,14,15,16,17,18,19,20,21,22,
+ 23,24,25,26,27,0,61,0,31,32,
+ 0,1,2,0,1,2,11,61,8,42,
+ 43,44,0,46,47,48,49,50,51,52,
+ 53,54,55,56,57,58,59,0,1,2,
+ 3,4,125,66,0,8,9,10,65,12,
+ 13,14,15,16,17,18,19,20,21,22,
+ 23,24,25,26,27,0,0,79,31,32,
+ 0,61,0,0,61,5,6,7,73,42,
+ 43,44,75,46,47,48,49,50,51,52,
+ 53,54,55,56,57,58,59,75,0,0,
+ 0,1,2,3,4,61,0,70,8,9,
+ 10,0,12,13,14,15,16,17,18,19,
+ 20,21,22,23,24,25,26,27,0,1,
+ 2,31,32,0,0,65,0,4,0,0,
+ 4,3,42,43,44,79,46,47,48,49,
+ 50,51,52,53,54,55,56,57,58,59,
+ 0,1,2,3,4,0,30,95,8,9,
+ 10,65,12,13,14,15,16,17,18,19,
+ 20,21,22,23,24,25,26,27,0,61,
+ 0,31,32,3,0,0,0,3,65,3,
+ 0,13,42,43,44,10,46,47,48,49,
+ 50,51,52,53,54,55,56,57,58,59,
+ 0,1,2,3,4,60,0,0,8,9,
+ 10,0,12,13,14,15,16,17,18,19,
+ 20,21,22,23,24,25,26,27,60,61,
+ 0,31,32,3,0,0,0,3,3,3,
+ 0,0,42,43,44,65,46,47,48,49,
+ 50,51,52,53,54,55,56,57,58,59,
+ 0,1,2,3,4,0,0,0,8,9,
+ 10,65,12,13,14,15,16,17,18,19,
+ 20,21,22,23,24,25,26,27,0,0,
+ 0,31,32,3,0,0,0,3,3,3,
+ 0,13,42,43,44,65,46,47,48,49,
+ 50,51,52,53,54,55,56,57,58,59,
+ 0,1,2,3,4,0,0,0,8,9,
+ 10,42,12,13,14,15,16,17,18,19,
+ 20,21,22,23,24,25,26,27,60,61,
+ 0,31,32,3,0,0,0,3,3,3,
+ 0,0,42,43,44,0,46,47,48,49,
+ 50,51,52,53,54,55,56,57,58,59,
+ 0,1,2,3,4,0,0,0,8,9,
+ 10,0,12,13,14,15,16,17,18,19,
+ 20,21,22,23,24,25,26,27,0,0,
+ 0,31,32,0,0,0,3,0,0,11,
+ 11,0,42,43,44,11,46,47,48,49,
+ 50,51,52,53,54,55,56,57,58,59,
+ 0,0,0,3,0,3,0,0,8,3,
+ 10,0,12,0,1,2,3,4,5,6,
+ 7,8,9,10,77,12,0,1,2,0,
+ 4,31,32,0,8,9,3,0,0,0,
+ 3,73,73,43,44,75,46,0,1,2,
+ 3,4,75,75,80,8,9,0,11,0,
+ 79,0,0,95,0,65,0,0,0,3,
+ 70,71,72,11,70,11,76,77,0,79,
+ 79,70,75,0,0,0,3,61,75,0,
+ 0,0,45,93,94,0,96,0,98,99,
+ 100,101,102,103,104,105,106,107,70,42,
+ 42,0,0,113,75,115,116,117,118,119,
+ 120,121,122,123,124,0,1,2,0,4,
+ 5,6,7,76,0,76,74,73,13,14,
+ 15,16,17,18,19,20,21,22,23,24,
+ 25,26,27,28,29,30,0,79,33,34,
+ 35,36,37,38,39,40,41,0,79,79,
+ 3,0,0,0,79,0,42,0,1,2,
+ 0,4,5,6,7,60,0,62,63,64,
+ 13,14,15,16,17,18,19,20,21,22,
+ 23,24,25,26,27,28,29,30,0,0,
+ 33,34,35,36,37,38,39,40,41,0,
+ 1,2,0,4,5,6,7,0,0,10,
+ 0,12,0,5,6,7,0,60,0,62,
+ 63,64,14,15,16,17,18,19,20,21,
+ 22,23,24,25,26,0,28,29,30,0,
+ 0,33,34,35,36,37,38,39,40,41,
+ 0,1,2,3,4,5,6,7,8,9,
+ 10,11,12,0,0,1,2,3,4,5,
+ 6,7,8,9,10,11,12,0,28,29,
+ 30,0,0,33,34,35,36,37,38,39,
+ 40,41,28,29,30,45,0,33,34,35,
+ 36,37,38,39,40,41,0,0,0,45,
+ 0,1,2,3,4,65,0,0,8,9,
+ 70,0,0,73,3,3,0,0,1,2,
+ 0,4,0,11,70,8,9,73,0,1,
+ 2,3,4,5,6,7,8,9,10,11,
+ 12,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,43,44,28,29,30,0,
+ 0,33,34,35,36,37,38,39,40,41,
+ 70,65,0,45,0,0,0,0,61,0,
+ 0,70,70,77,0,73,0,0,76,77,
+ 0,0,0,0,0,0,0,0,70,0,
+ 0,73,0,0,0,0,100,101,0,0,
+ 0,0,0,0,108,109,0,0,0,0,
+ 0,0,0,0,113,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,127,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0
};
@@ -1805,418 +1815,429 @@ public class GPPSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface TermAction {
public final static char termAction[] = {0,
- 7048,6759,6773,6773,6773,6769,6773,6773,6773,6773,
- 6851,6773,6773,1,1,1,1,1,1,1,
+ 7049,6760,6774,6774,6774,6770,6774,6774,6774,6774,
+ 6774,6852,6774,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,6763,1,1,1,1,1,1,1,
+ 1,1,1,1,1,6764,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,39,1,1,1,7086,1,1805,7221,1695,
- 7048,1,1,3463,7059,7048,6233,6230,1157,7086,
- 7055,3014,1839,2235,1507,2918,3926,2997,1567,2990,
- 3567,2989,10,6854,6854,6854,6854,6854,6854,6854,
- 6854,6854,6854,6854,6854,6854,6854,6854,6854,6854,
- 6854,6854,6854,6854,6854,6854,6854,6854,6854,6854,
- 6854,6854,6854,6854,6854,6854,6854,6854,6854,6854,
- 6854,6854,6854,6854,6854,6854,6854,6854,6854,6854,
- 6854,6854,6854,6854,6854,6854,6854,6854,6854,6854,
- 6854,6854,6854,129,6854,6854,6854,135,6854,6854,
- 6854,6854,592,6854,6854,3125,6854,6806,6812,6809,
- 6854,1,6854,6854,6854,6854,6854,6854,6854,6854,
- 6854,6854,6854,6854,8,6912,6912,6912,6912,6912,
- 6912,6912,6912,6912,6912,6912,6912,6912,6912,6912,
- 6912,6912,6912,6912,6912,6912,6912,6912,6912,6912,
- 6912,6912,6912,6912,6912,6912,6912,6912,6912,6912,
- 6912,6912,6912,6912,6912,6912,6912,6912,6912,6912,
- 6912,6912,6912,6912,6912,6912,6912,6912,6912,6912,
- 6912,6912,6912,6912,6912,131,6912,6912,6912,136,
- 6912,6912,6912,6912,327,6912,6912,380,6912,2129,
- 2073,2121,6912,2794,6912,6912,6912,6912,6912,6912,
- 6912,6912,6912,6912,6912,6912,7048,6759,6773,6773,
- 6773,6769,6773,6773,6773,6773,6766,6773,6773,1,
+ 1,39,1,1,1,7087,1,1495,7222,1699,
+ 7049,1,1,1759,7060,7049,6234,6231,2744,7087,
+ 7056,3116,1197,2239,977,3049,3971,3103,900,3100,
+ 651,3081,10,6855,6855,6855,6855,6855,6855,6855,
+ 6855,6855,6855,6855,6855,6855,6855,6855,6855,6855,
+ 6855,6855,6855,6855,6855,6855,6855,6855,6855,6855,
+ 6855,6855,6855,6855,6855,6855,6855,6855,6855,6855,
+ 6855,6855,6855,6855,6855,6855,6855,6855,6855,6855,
+ 6855,6855,6855,6855,6855,6855,6855,6855,6855,6855,
+ 6855,6855,6855,129,6855,6855,6855,135,6855,6855,
+ 6855,6855,593,6855,6855,3165,6855,6807,6813,6810,
+ 6855,1,6855,6855,6855,6855,6855,6855,6855,6855,
+ 6855,6855,6855,6855,8,6913,6913,6913,6913,6913,
+ 6913,6913,6913,6913,6913,6913,6913,6913,6913,6913,
+ 6913,6913,6913,6913,6913,6913,6913,6913,6913,6913,
+ 6913,6913,6913,6913,6913,6913,6913,6913,6913,6913,
+ 6913,6913,6913,6913,6913,6913,6913,6913,6913,6913,
+ 6913,6913,6913,6913,6913,6913,6913,6913,6913,6913,
+ 6913,6913,6913,6913,6913,131,6913,6913,6913,3622,
+ 6913,6913,6913,6913,327,6913,6913,1,6913,2032,
+ 1914,1962,6913,2799,6913,6913,6913,6913,6913,6913,
+ 6913,6913,6913,6913,6913,6913,7049,6760,6774,6774,
+ 6774,6770,6774,6774,6774,6774,6774,6767,6774,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,6763,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,7048,1,1,
- 1,805,1,1805,7221,1695,327,1,1,3083,
- 7059,6869,6875,6872,1157,2794,7048,3014,1839,2235,
- 1507,2918,3926,2997,1567,2990,3567,2989,7048,6759,
- 6773,6773,6773,6769,6773,6773,6773,6773,6766,6773,
- 6773,1,1,1,1,1,1,1,1,1,
+ 1,6764,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,7049,1,1,
+ 1,1311,1,1495,7222,1699,113,1,1,3077,
+ 7060,7049,6234,6231,2744,7087,5131,3116,1197,2239,
+ 977,3049,3971,3103,900,3100,651,3081,7049,6760,
+ 6774,6774,6774,6770,6774,6774,6774,6774,6774,6767,
+ 6774,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 6763,1,1,1,1,1,1,1,1,1,
+ 1,1,1,6764,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,132,
- 1,1,1,2697,1,1805,7221,1695,391,1,
- 1,7048,7059,2129,2073,2121,1157,7048,7048,3014,
- 1839,2235,1507,2918,3926,2997,1567,2990,3567,2989,
- 7048,6759,6773,6773,6773,6769,6773,6773,6773,6773,
- 6766,6773,6773,1,1,1,1,1,1,1,
+ 1,1,1,136,1,1495,7222,1699,115,1,
+ 1,380,7060,7049,5108,5085,2744,1397,5131,3116,
+ 1197,2239,977,3049,3971,3103,900,3100,651,3081,
+ 7049,6760,6774,6774,6774,6770,6774,6774,6774,6774,
+ 6774,6767,6774,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,6763,1,1,1,1,1,1,1,
+ 1,1,1,1,1,6764,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,7048,1,1,1,2714,1,1805,7221,1695,
- 591,1,1,3083,7059,2129,2073,2121,1157,7048,
- 7048,3014,1839,2235,1507,2918,3926,2997,1567,2990,
- 3567,2989,7048,6759,6773,6773,6773,6769,6773,6773,
- 6773,6773,6766,6773,6773,1,1,1,1,1,
+ 1,7049,1,1,1,740,1,1495,7222,1699,
+ 114,1,1,3077,7060,109,5108,5085,2744,2799,
+ 5131,3116,1197,2239,977,3049,3971,3103,900,3100,
+ 651,3081,7049,6760,6774,6774,6774,6770,6774,6774,
+ 6774,6774,6774,6767,6774,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,6763,1,1,1,1,1,
+ 1,1,1,1,1,1,1,6764,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,130,1,1,1,2759,1,1805,
- 7221,1695,309,1,1,3125,7059,2129,2073,2121,
- 1157,7048,7048,3014,1839,2235,1507,2918,3926,2997,
- 1567,2990,3567,2989,7048,6759,6773,6773,6773,6769,
- 6773,6773,6773,6773,6766,6773,6773,1,1,1,
+ 1,1,1,7049,1,1,1,1933,1,1495,
+ 7222,1699,7049,1,1,1025,7060,112,5108,5085,
+ 2744,5330,5352,3116,1197,2239,977,3049,3971,3103,
+ 900,3100,651,3081,7049,6760,6774,6774,6774,6770,
+ 6774,6774,6774,6774,6774,6767,6774,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,6763,1,1,1,
+ 1,1,1,1,1,1,1,1,1,6764,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,7048,1,1,1,2773,
- 1,1805,7221,1695,584,1,1,7048,7059,2129,
- 2073,2121,1157,7048,7048,3014,1839,2235,1507,2918,
- 3926,2997,1567,2990,3567,2989,7048,6759,6773,6773,
- 6773,6769,6773,6773,6773,6773,6766,6773,6773,1,
+ 1,1,1,1,1,130,1,1,1,7049,
+ 1,1495,7222,1699,327,1,1,3165,7060,6870,
+ 6876,6873,2744,5330,5352,3116,1197,2239,977,3049,
+ 3971,3103,900,3100,651,3081,7049,6760,6774,6774,
+ 6774,6770,6774,6774,6774,6774,6774,6767,6774,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,6763,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,7048,1,1,
- 1,7556,1,1805,7221,1695,583,1,1,7048,
- 7059,2129,2073,2121,1157,7048,7048,3014,1839,2235,
- 1507,2918,3926,2997,1567,2990,3567,2989,7048,6759,
- 6773,6773,6773,6769,6773,6773,6773,6773,6766,6773,
- 6773,1,1,1,1,1,1,1,1,1,
+ 1,6764,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,7049,1,1,
+ 1,7049,1,1495,7222,1699,391,1,1,1693,
+ 7060,2032,1914,1962,2744,7049,7049,3116,1197,2239,
+ 977,3049,3971,3103,900,3100,651,3081,7049,6760,
+ 6774,6774,6774,6770,6774,6774,6774,6774,6774,6767,
+ 6774,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 6763,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,7048,
- 1,1,1,7485,1,1805,7221,1695,413,1,
- 1,7048,7059,2129,2073,2121,1157,7048,7048,3014,
- 1839,2235,1507,2918,3926,2997,1567,2990,3567,2989,
- 7048,6759,6773,6773,6773,6769,6773,6773,6773,6773,
- 6766,6773,6773,1,1,1,1,1,1,1,
+ 1,1,1,6764,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,7049,
+ 1,1,1,2823,1,1495,7222,1699,592,1,
+ 1,7049,7060,2032,1914,1962,2744,7049,7049,3116,
+ 1197,2239,977,3049,3971,3103,900,3100,651,3081,
+ 7049,6760,6774,6774,6774,6770,6774,6774,6774,6774,
+ 6774,6767,6774,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,6763,1,1,1,1,1,1,1,
+ 1,1,1,1,1,6764,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,7048,1,1,1,7499,1,1805,7221,1695,
- 585,1,1,7048,7059,2129,2073,2121,1157,7048,
- 3532,3014,1839,2235,1507,2918,3926,2997,1567,2990,
- 3567,2989,7048,6759,6773,6773,6773,6769,6773,6773,
- 6773,6773,6766,6773,6773,1,1,1,1,1,
+ 1,7049,1,1,1,2838,1,1495,7222,1699,
+ 309,1,1,7049,7060,2032,1914,1962,2744,7049,
+ 7049,3116,1197,2239,977,3049,3971,3103,900,3100,
+ 651,3081,7049,6760,6774,6774,6774,6770,6774,6774,
+ 6774,6774,6774,6767,6774,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,6763,1,1,1,1,1,
+ 1,1,1,1,1,1,1,6764,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,7048,1,1,1,877,1,1805,
- 7221,1695,587,1,1,7048,7059,7003,7009,7006,
- 1157,1,7048,3014,1839,2235,1507,2918,3926,2997,
- 1567,2990,3567,2989,7048,6759,6773,6773,6773,6769,
- 6773,6773,6773,6773,6766,6773,6773,1,1,1,
+ 1,1,1,7049,1,1,1,2898,1,1495,
+ 7222,1699,585,1,1,7049,7060,2032,1914,1962,
+ 2744,7049,7049,3116,1197,2239,977,3049,3971,3103,
+ 900,3100,651,3081,7049,6760,6774,6774,6774,6770,
+ 6774,6774,6774,6774,6774,6767,6774,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,6763,1,1,1,
+ 1,1,1,1,1,1,1,1,1,6764,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,7048,1,1,1,2988,
- 1,1805,7221,1695,586,1,1,7048,7059,7012,
- 7018,7015,1157,7048,7048,3014,1839,2235,1507,2918,
- 3926,2997,1567,2990,3567,2989,7048,6759,6773,6773,
- 6773,6769,6773,6773,6773,6773,6766,6773,6773,1,
+ 1,1,1,1,1,7049,1,1,1,2904,
+ 1,1495,7222,1699,584,1,1,7049,7060,2032,
+ 1914,1962,2744,7049,4161,3116,1197,2239,977,3049,
+ 3971,3103,900,3100,651,3081,7049,6760,6774,6774,
+ 6774,6770,6774,6774,6774,6774,6774,6767,6774,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,6763,1,
1,1,1,1,1,1,1,1,1,1,
+ 1,6764,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,127,1,1,
- 1,7048,1,1805,7221,1695,391,1,1,1144,
- 7059,2129,2073,2121,1157,133,7048,3014,1839,2235,
- 1507,2918,3926,2997,1567,2990,3567,2989,7048,6293,
- 6293,6293,6293,6293,6293,6293,6293,6293,6293,6293,
- 6293,7048,109,440,6275,6275,221,6275,6275,6275,
- 6275,6370,6364,6367,6275,6275,6293,6293,6293,6293,
- 6293,6293,6293,6293,6293,6293,6293,6293,6293,6293,
- 6293,1433,6293,6293,6376,6373,6382,6400,6379,6391,
- 6361,6385,6388,6397,6394,6358,7048,7062,7063,7048,
- 283,6505,6505,6293,280,2129,2073,2121,6293,3476,
- 3423,6293,6293,6293,6293,6293,6293,6293,6293,1,
- 6348,6344,5675,6352,6830,6836,6833,670,2904,7048,
- 2934,6293,6293,6293,6293,6293,6293,6293,6293,6293,
- 6293,6293,6293,6293,6293,6293,6293,6293,5286,5308,
- 7048,6293,6293,6293,6293,6293,6293,6293,6293,6293,
- 6293,6293,6293,6293,3178,6293,6293,7048,6296,6296,
- 6296,6296,6296,6296,6296,6296,6296,6296,6296,6296,
- 7048,559,589,6827,6827,222,594,2129,2073,2121,
- 6415,6409,6412,2333,2538,6296,6296,6296,6296,6296,
- 6296,6296,6296,6296,6296,6296,6296,6296,6296,6296,
- 7606,6296,6296,6421,6418,6427,6445,6424,6436,6406,
- 6430,6433,6442,6439,6403,1,6348,6344,6857,6352,
- 542,7591,6296,6863,6860,7048,343,6296,1511,2135,
- 6296,6296,6296,6296,6296,6296,6296,6296,327,6233,
- 6230,5675,735,2129,2073,2121,670,2904,7592,2532,
- 6296,6296,6296,6296,6296,6296,6296,6296,6296,6296,
- 6296,6296,6296,6296,6296,6296,6296,7048,11641,11641,
- 6296,6296,6296,6296,6296,6296,6296,6296,6296,6296,
- 6296,6296,6296,7048,6296,6296,39,6233,6230,4898,
- 735,2129,2073,2121,5110,2904,2194,5176,5198,1078,
- 7643,7644,7309,7307,7316,7315,7311,7312,7310,7313,
- 7314,7317,7308,5654,7381,7382,7305,7299,7306,7302,
- 7278,7304,7303,7300,7301,7279,5154,5132,7084,7067,
- 5242,5220,5088,697,904,7069,734,5595,746,7070,
- 7068,683,7064,7065,7066,4634,7442,7048,3037,7443,
- 7444,155,1570,7048,6885,6885,226,6881,6773,6773,
- 6773,226,226,6889,226,226,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
+ 1,7049,1,1495,7222,1699,413,1,1,7049,
+ 7060,2032,1914,1962,2744,7049,7049,3116,1197,2239,
+ 977,3049,3971,3103,900,3100,651,3081,7049,6294,
+ 6294,6294,6294,6294,6294,6294,6294,6294,6294,6294,
+ 6294,7049,7049,283,6506,6506,221,280,2032,1914,
+ 1962,6371,6365,6368,7049,7049,6294,6294,6294,6294,
+ 6294,6294,6294,6294,6294,6294,6294,6294,6294,6294,
+ 137,6294,6294,6294,6377,6374,6383,3336,5568,6401,
+ 6380,6392,6362,6386,6389,6398,6395,6359,1984,7049,
+ 590,6828,6828,6294,595,2032,1914,1962,6294,3490,
+ 3437,6294,6294,6294,6294,6294,6294,6294,6294,1,
+ 6349,6345,5686,6353,6831,6837,6834,733,649,1130,
+ 305,6294,6294,6294,6294,6294,6294,6294,6294,6294,
+ 6294,6294,6294,6294,6294,6294,6294,6294,7049,11210,
+ 11210,6294,6294,6294,6294,6294,6294,6294,6294,6294,
+ 6294,6294,6294,6294,305,6294,6294,7049,6297,6297,
+ 6297,6297,6297,6297,6297,6297,6297,6297,6297,6297,
+ 1,6349,6345,6858,6353,222,7049,1155,6864,6861,
+ 6416,6410,6413,6230,2624,6297,6297,6297,6297,6297,
+ 6297,6297,6297,6297,6297,6297,6297,6297,6297,7085,
+ 6297,6297,6297,6422,6419,6428,7049,155,6446,6425,
+ 6437,6407,6431,6434,6443,6440,6404,1,6349,6345,
+ 5686,6353,6297,7049,7049,733,649,6297,7049,7049,
+ 6297,6297,6297,6297,6297,6297,6297,6297,327,6234,
+ 6231,5686,1295,2032,1914,1962,733,649,3159,7049,
+ 6297,6297,6297,6297,6297,6297,6297,6297,6297,6297,
+ 6297,6297,6297,6297,6297,6297,6297,7049,7063,7064,
+ 6297,6297,6297,6297,6297,6297,6297,6297,6297,6297,
+ 6297,6297,6297,1621,6297,6297,39,6234,6231,5021,
+ 1295,2032,1914,1962,5154,649,5220,133,5242,1277,
+ 7645,7646,7310,7308,7317,7316,7312,7313,7311,7314,
+ 7315,7318,7309,5665,7382,7383,7306,5198,5176,7300,
+ 7307,7303,7279,7305,7304,7301,7302,7280,7068,5286,
+ 5264,7049,3112,688,737,7070,700,4679,723,7071,
+ 7069,676,7065,7066,7067,3523,7443,7049,3221,7444,
+ 7445,1,1573,7049,6886,6886,226,6882,6774,6774,
+ 6774,226,226,226,6890,226,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,298,7048,226,305,6348,6344,5675,
- 6352,6830,6836,6833,670,2904,7345,6916,6916,7048,
- 6556,6553,435,1,6878,1,1,1,223,7048,
- 1194,7456,1791,6472,6466,6469,7048,1618,226,7052,
- 48,6556,6553,412,1,6348,6344,5675,6352,6830,
- 6836,6833,670,2904,354,7544,6478,6475,6484,6502,
- 6481,6493,6463,6487,6490,6499,6496,6460,43,6779,
- 6779,7048,1,7479,7480,7481,7048,6885,6885,226,
- 6881,6773,6773,6773,226,226,6934,226,226,1,
+ 1,1,1,1,183,7049,1,1,1,1,
+ 1,1,1,1,1,7049,6234,6231,226,1295,
+ 7049,223,2938,733,649,391,6473,6467,6470,384,
+ 2032,1914,1962,1,6879,1,1,1,224,366,
+ 3282,7457,1843,6521,6515,6518,2,454,226,6479,
+ 6476,6485,7049,412,6503,6482,6494,6464,6488,6491,
+ 6500,6497,6461,7053,7049,7545,6527,6524,6533,7049,
+ 3188,6551,6530,6542,6512,6536,6539,6548,6545,6509,
+ 7055,3336,3828,7480,7481,7482,7049,6886,6886,226,
+ 6882,6774,6774,6774,226,226,226,6935,226,1,
1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,6279,1411,1,
+ 1,1,1,1,1,1,1,1,7049,7063,
+ 7064,226,1295,6992,581,89,733,649,6288,6572,
+ 6566,6569,7054,38,6252,6249,1,6879,1,1,
+ 1,6246,649,3282,7457,1843,119,7049,7063,7064,
+ 7049,226,6578,6575,6584,1693,411,6602,6581,6593,
+ 6563,6587,6590,6599,6596,6560,511,7052,7545,7049,
+ 6349,6345,5686,6353,6831,6837,6834,733,649,6917,
+ 3597,6917,7049,7049,7063,7064,7480,7481,7482,7049,
+ 6774,6774,226,6774,6770,6774,6774,226,226,226,
+ 6989,226,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,7048,3388,226,7048,
- 6348,6344,5675,6352,6830,6836,6833,670,2904,6776,
- 6940,6940,7479,7480,7481,7048,1,6878,1,1,
- 1,224,128,1194,7456,1791,6520,6514,6517,7401,
- 307,226,7048,2039,7051,1,411,592,6233,6230,
- 5675,735,2129,2073,2121,670,2904,7403,7544,6526,
- 6523,6532,6550,6529,6541,6511,6535,6538,6547,6544,
- 6508,3324,37,6845,6845,7048,7479,7480,7481,7048,
- 6773,6773,226,6773,6769,6773,6773,226,226,6988,
- 226,226,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,11472,1,1,1,1,1,1,1198,
- 2,226,1,6348,6344,5675,6352,6830,6836,6833,
- 670,2904,305,1126,3476,3423,38,6251,6248,1,
- 6985,1,1,1,6245,2904,1246,7257,1695,7048,
- 6348,6344,5675,6352,6830,6836,6833,670,2904,218,
- 6916,6916,391,7048,305,7048,384,2129,2073,2121,
- 6229,7544,7048,6773,6773,226,6773,6769,6773,6773,
+ 571,7049,1,1,11544,1,1,1,1,1,
+ 1,440,6276,6276,226,6276,6276,6276,6276,3977,
+ 4614,6276,980,6276,2542,137,7049,6557,6554,1,
+ 6986,1,1,1,5308,630,4053,7258,1699,1,
+ 6349,6345,3671,6353,43,6780,6780,733,649,218,
+ 363,1,6349,6345,5686,6353,6831,6837,6834,733,
+ 649,7545,7049,6774,6774,226,6774,6770,6774,6774,
226,226,226,226,226,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,11472,1,1,1,1,
- 1,1,39,7048,226,580,7086,7048,7062,7063,
- 6571,6565,6568,7048,2538,670,2904,7048,6233,6230,
- 4391,7086,1,6985,1,1,1,3447,4170,1246,
- 7257,1695,687,6577,6574,6583,6601,6580,6592,6562,
- 6586,6589,6598,6595,6559,7048,7062,7063,2449,7048,
- 7062,7063,7048,1144,7544,7048,6773,6773,226,6773,
- 6769,6773,6773,226,226,6994,226,226,1,1,
+ 1,1,1,3977,4614,1,1,11544,1,1,
+ 1,1,1,1,2150,6777,1,226,307,2198,
+ 7049,1517,363,2535,586,363,363,6285,1361,2032,
+ 1914,1962,1,6986,1,1,1,3548,7049,4053,
+ 7258,1699,1155,7049,363,7049,37,6846,6846,2624,
+ 2102,2054,2006,1958,1910,1862,1814,1766,1718,1670,
+ 453,7049,6896,6893,7545,7049,6774,6774,226,6774,
+ 6770,6774,6774,226,226,226,6995,226,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,11472,1,
- 1,1,1,1,1,112,7048,226,1,6348,
- 6344,5675,6352,6830,6836,6833,670,2904,89,119,
- 7048,6287,7479,7480,7481,1,6985,1,1,1,
- 5264,1353,1246,7257,1695,7048,6556,6553,1,6348,
- 6344,3657,6352,37,7048,217,670,2904,363,390,
- 6457,6457,7048,280,6448,6454,6451,7544,7048,6773,
- 6773,226,6773,6769,6773,6773,226,226,6988,226,
+ 1,1,1,1,1,1,7056,1200,1,1,
+ 11544,1,1,1,1,1,1,1644,1497,517,
+ 226,305,6349,6345,5686,6353,6831,6837,6834,733,
+ 649,6917,7085,6917,116,1,6986,1,1,1,
+ 6282,7049,4053,7258,1699,358,1,6843,6843,7049,
+ 6840,6831,6837,6834,588,217,327,359,327,7004,
+ 7010,7007,7049,6557,6554,4727,4704,7545,7049,6774,
+ 6774,226,6774,6770,6774,6774,226,226,226,6989,
226,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,570,
+ 134,1,1,11544,1,1,1,1,1,1,
+ 441,6804,6804,226,6798,6789,6795,6792,587,359,
+ 6801,1405,6801,7013,7019,7016,7557,7049,1,6986,
+ 1,1,1,5308,630,4053,7258,1699,7049,7063,
+ 7064,359,7049,6903,6899,3597,733,649,218,593,
+ 6234,6231,5686,1295,2032,1914,1962,733,649,371,
+ 7545,7049,6774,6774,226,6774,6770,6774,6774,226,
+ 226,226,6989,226,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,11472,1,1,1,1,1,1,7048,116,
- 226,5286,5308,118,7084,113,5264,1353,2194,4452,
- 280,363,4569,4659,363,363,5065,1359,1,6985,
- 1,1,1,571,7048,1246,7257,1695,137,5374,
- 441,6803,6803,363,6797,6788,6794,6791,218,4711,
- 4688,6800,6800,4711,4688,392,7048,6895,6892,383,
- 7544,7048,6773,6773,226,6773,6769,6773,6773,226,
- 226,6988,226,226,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,11472,1,1,1,1,1,
- 1,115,183,226,90,6866,6866,7048,6866,6866,
- 6866,6866,5065,5042,5012,6866,6866,7084,137,511,
- 1433,1,6985,1,1,1,4569,4659,1246,7257,
- 1695,341,6233,6230,3657,735,2129,2073,2121,670,
- 2904,218,327,327,414,1153,7048,6902,6898,2129,
- 2073,2121,695,7544,7048,6773,6773,226,6773,6769,
- 6773,6773,226,226,226,226,226,1,1,1,
+ 1,1,3977,4614,1,1,11544,1,1,1,
+ 1,1,1,7085,123,2938,226,7049,6349,6345,
+ 5686,6353,6831,6837,6834,733,649,6941,7049,6941,
+ 7049,1,6986,1,1,1,7049,435,4053,7258,
+ 1699,7057,341,39,39,1354,7087,2032,1914,1962,
+ 7049,218,327,2697,327,48,6557,6554,111,343,
+ 344,7055,1935,7545,7049,6774,6774,226,6774,6770,
+ 6774,6774,226,226,226,226,226,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,11472,1,1,
- 1,1,1,1,39,981,226,2146,7086,5042,
- 5012,2194,1,6348,6344,6857,6352,7084,111,7048,
- 6863,6860,7058,7048,1,6985,1,1,1,1,
- 1,1246,7257,1695,2765,1153,45,6925,6925,7060,
- 6284,6991,695,2098,2050,2002,1954,1906,1858,1810,
- 1762,1714,1666,454,7057,7048,7544,7048,6773,6773,
- 226,6773,6769,6773,6773,226,226,226,226,226,
+ 1,1,1,1,1,3597,7049,1,1,11544,
+ 1,1,1,1,1,1,1105,3977,4614,226,
+ 7056,2296,2198,1,6349,6345,5686,6353,6831,6837,
+ 6834,733,649,7054,1,6986,1,1,1,2198,
+ 2198,4053,7258,1699,341,6234,6231,3671,1295,2032,
+ 1914,1962,733,649,327,414,327,7480,7481,7482,
+ 2032,1914,1962,354,5330,5352,7545,7049,6774,6774,
+ 226,6774,6770,6774,6774,226,226,226,226,226,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 11472,1,1,1,1,1,1,6922,2291,226,
- 93,6964,6964,7059,6958,6949,6955,6952,7048,7048,
- 7055,6961,6961,7048,5286,5308,2140,1,6985,1,
- 1,1,7048,6278,1246,7257,1695,7048,6348,6344,
- 5675,6352,6830,6836,6833,670,2904,570,6940,6940,
- 590,6824,6824,1,594,6815,6821,6818,564,7544,
- 7048,6773,6773,226,6773,6769,6773,6773,226,226,
+ 1,1,1,1,1,1,1,1,2542,7049,
+ 1,1,11544,1,1,1,1,1,1,4039,
+ 122,3583,226,298,2198,7049,1,6349,6345,5686,
+ 6353,6831,6837,6834,733,649,7346,1,6986,1,
+ 1,1,121,7049,4053,7258,1699,7049,6349,6345,
+ 5686,6353,6831,6837,6834,733,649,6941,7049,6941,
+ 390,6458,6458,1,280,6449,6455,6452,7402,7545,
+ 7049,6774,6774,226,6774,6770,6774,6774,226,226,
226,226,226,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,11472,1,1,1,1,1,1,
- 366,3534,226,341,39,39,1462,7086,2129,2073,
- 2121,594,2538,123,327,327,7048,37,6845,6845,
- 1,6985,1,1,1,6845,7048,1246,7257,1695,
- 1,6348,6344,5675,6352,6830,6836,6833,670,2904,
- 4569,4659,7048,1,1,1,1,332,3387,110,
- 1,1,7544,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,
- 7048,3067,7048,2194,1,6973,6970,1462,1176,1408,
- 7054,117,1,1,337,1,1,1,1,1,
+ 1,2542,7486,1,1,11544,1,1,1,1,
+ 1,1,7049,3977,4614,226,1,6349,6345,3671,
+ 6353,280,2542,7059,733,649,7049,6745,542,7592,
+ 1,6986,1,1,1,3977,4614,4053,7258,1699,
+ 1,6349,6345,5686,6353,6831,6837,6834,733,649,
+ 7049,7049,1,1,1,1,7593,7058,7404,1,
+ 1,1,7545,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,393,
+ 7063,7064,1,1,7049,7049,2198,29,3298,6748,
+ 7028,7036,7032,1,1,1,7040,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,7048,7062,7063,2538,4569,4659,1,453,
- 7647,7048,7060,1,1,1,6348,6344,4898,6352,
- 332,4711,4688,5110,2904,528,5176,5198,6302,6308,
- 6305,6335,6341,6314,6317,6329,6326,6332,6323,6320,
- 6311,6338,6355,7053,2194,5286,5308,337,7381,7382,
- 337,337,393,7062,7063,5154,5132,7048,7067,5242,
- 5220,5088,697,904,7069,734,5595,746,7070,7068,
- 683,7064,7065,7066,4634,7048,7059,7048,39,6281,
- 688,1570,7086,2129,2073,2121,39,39,7048,327,
- 327,3621,512,39,6233,6230,4898,735,124,4473,
- 4300,5110,2904,7042,5176,5198,946,7643,7644,7309,
- 7307,7316,7315,7311,7312,7310,7313,7314,7317,7308,
- 3509,1,6348,6344,5675,6352,36,6909,6906,670,
- 2904,29,314,5154,5132,6937,7067,5242,5220,5088,
- 697,904,7069,734,5595,746,7070,7068,683,7064,
- 7065,7066,4634,1,6348,6344,5675,6352,7048,1570,
- 7048,670,2904,3932,7048,344,436,6982,139,6233,
- 6230,4898,735,7055,7060,6272,5110,2904,122,5176,
- 5198,946,7643,7644,7309,7307,7316,7315,7311,7312,
- 7310,7313,7314,7317,7308,3509,6236,7048,3870,3839,
- 1,7048,2194,1462,2847,7048,3791,3760,5154,5132,
- 6744,7067,5242,5220,5088,697,904,7069,734,5595,
- 746,7070,7068,683,7064,7065,7066,4634,7048,6233,
- 6230,6239,735,2339,1570,2194,670,2904,7059,39,
- 39,1,6348,6344,4898,6352,287,7062,7063,5110,
- 2904,7048,5176,5198,6302,6308,6305,6335,6341,6314,
- 6317,6329,6326,6332,6323,6320,6311,6338,6355,7048,
- 2194,4569,4659,6747,7027,7035,7031,234,29,7039,
- 6756,5154,5132,121,7067,5242,5220,5088,697,904,
- 7069,734,5595,746,7070,7068,683,7064,7065,7066,
- 4634,7048,7062,7063,7048,735,7048,1570,298,670,
- 2904,7039,39,39,548,6233,6230,4898,735,7048,
- 7048,7345,5110,2904,134,5176,5198,946,7643,7644,
- 7309,7307,7316,7315,7311,7312,7310,7313,7314,7317,
- 7308,3509,7048,1433,7048,7039,7048,7048,11084,11083,
- 7048,7048,7058,420,5154,5132,7056,7067,5242,5220,
- 5088,697,904,7069,734,5595,746,7070,7068,683,
- 7064,7065,7066,4634,7048,2317,4569,4659,1,3987,
- 1570,4749,126,450,7057,39,39,39,6233,6230,
- 4898,735,7048,120,4048,5110,2904,6979,5176,5198,
- 946,7643,7644,7309,7307,7316,7315,7311,7312,7310,
- 7313,7314,7317,7308,3509,1,6348,6344,3657,6352,
- 3685,5536,1103,670,2904,6744,7055,5154,5132,2934,
- 7067,5242,5220,5088,697,904,7069,734,5595,746,
- 7070,7068,683,7064,7065,7066,4634,3932,6242,7048,
- 7048,3169,4254,1570,548,6233,6230,4898,735,6782,
- 7054,6982,5110,2904,7048,5176,5198,946,7643,7644,
- 7309,7307,7316,7315,7311,7312,7310,7313,7314,7317,
- 7308,3509,3870,3839,7048,2194,4569,4659,6747,7048,
- 3791,3760,4402,7048,5154,5132,4480,7067,5242,5220,
- 5088,697,904,7069,734,5595,746,7070,7068,683,
- 7064,7065,7066,4634,7048,7048,7048,1574,4740,645,
- 1570,98,316,7053,7054,39,39,39,6233,6230,
- 4898,735,7048,11084,11083,5110,2904,6979,5176,5198,
- 946,7643,7644,7309,7307,7316,7315,7311,7312,7310,
- 7313,7314,7317,7308,3509,1,6348,6344,3657,6352,
- 3685,3629,7048,670,2904,47,7048,5154,5132,5770,
- 7067,5242,5220,5088,697,904,7069,734,5595,746,
- 7070,7068,683,7064,7065,7066,4634,7053,7048,3378,
- 1,6919,2194,1570,39,6233,6230,4898,735,3603,
- 7024,6982,5110,2904,7052,5176,5198,946,7643,7644,
- 7309,7307,7316,7315,7311,7312,7310,7313,7314,7317,
- 7308,3509,37,6845,6845,2194,1095,2129,2073,2121,
- 7048,6895,6892,327,5154,5132,7048,7067,5242,5220,
- 5088,697,904,7069,734,5595,746,7070,7068,683,
- 7064,7065,7066,4634,39,6233,6230,4898,735,383,
- 7048,7048,5110,2904,7059,5176,5198,946,7643,7644,
- 7309,7307,7316,7315,7311,7312,7310,7313,7314,7317,
- 7308,3509,7048,7084,7048,6233,6230,7048,735,7048,
- 7048,7084,6299,2904,5154,5132,1738,7067,5242,5220,
- 5088,697,904,7069,734,5595,746,7070,7068,683,
- 7064,7065,7066,4634,39,6233,6230,4898,735,7051,
- 1570,3448,5110,2904,6290,5176,5198,946,7643,7644,
- 7309,7307,7316,7315,7311,7312,7310,7313,7314,7317,
- 7308,3509,7048,6233,6230,700,735,37,6845,6845,
- 6299,2904,1433,7048,5154,5132,3347,7067,5242,5220,
- 5088,697,904,7069,734,5595,746,7070,7068,683,
- 7064,7065,7066,4634,39,6233,6230,2705,735,7048,
- 7048,7048,5110,2904,1718,5176,5198,946,7643,7644,
- 7309,7307,7316,7315,7311,7312,7310,7313,7314,7317,
- 7308,3509,114,1036,7048,48,48,5771,7084,7063,
- 7062,7048,7048,5065,5154,5132,1287,7067,5242,5220,
- 5088,697,904,7069,734,5595,746,7070,7068,683,
- 7064,7065,7066,4634,39,6233,6230,4898,735,7048,
- 7048,7048,5110,2904,1751,5176,5198,946,7643,7644,
- 7309,7307,7316,7315,7311,7312,7310,7313,7314,7317,
- 7308,3509,1,1,7048,553,7048,1799,2846,3044,
- 7063,7062,7058,159,5154,5132,3447,7067,5242,5220,
- 5088,697,904,7069,734,5595,746,7070,7068,683,
- 7064,7065,7066,4634,39,6233,6230,2705,735,7048,
- 5042,5012,5110,2904,7057,5176,5198,946,7643,7644,
- 7309,7307,7316,7315,7311,7312,7310,7313,7314,7317,
- 7308,3509,401,1,7048,540,7048,832,1250,5488,
- 7048,7048,6928,359,5154,5132,159,7067,5242,5220,
- 5088,697,904,7069,734,5595,746,7070,7068,683,
- 7064,7065,7066,4634,39,6233,6230,4898,735,7048,
- 7048,7048,5110,2904,6931,5176,5198,946,7643,7644,
- 7309,7307,7316,7315,7311,7312,7310,7313,7314,7317,
- 7308,3509,1,101,7048,72,6943,7048,1900,7048,
- 275,7048,189,6976,5154,5132,359,7067,5242,5220,
- 5088,697,904,7069,734,5595,746,7070,7068,683,
- 7064,7065,7066,4634,1,7048,7048,1151,359,7048,
- 7048,7048,7513,358,189,7507,7511,5394,304,7054,
- 7048,7054,3534,29,383,383,6753,383,383,383,
- 383,383,383,6753,6753,6753,7048,364,7048,444,
- 6967,7048,3177,424,7505,7506,7058,3554,7536,7537,
- 7514,383,383,383,383,383,383,383,383,383,
- 383,383,383,565,517,6753,3594,7048,7048,7516,
- 4090,97,7048,7048,940,1853,1901,1,7057,1,
- 7538,7517,7053,7515,7053,1152,1599,7048,6236,1403,
- 6997,7048,6997,6753,3185,4109,6753,7527,7526,288,
- 7539,7056,7508,7509,7532,7533,7530,7531,7510,7512,
- 7534,7535,3284,7445,1222,2219,1470,7540,2272,7520,
- 7521,7522,7518,7519,7528,7529,7524,7523,7525,7048,
- 6233,6230,7048,7086,2129,2073,2121,7000,3615,7000,
- 3615,6946,879,7643,7644,7309,7307,7316,7315,7311,
- 7312,7310,7313,7314,7317,7308,5633,7381,7382,7305,
- 7299,7306,7302,7278,7304,7303,7300,7301,7279,7048,
- 98,7055,7048,101,7048,1895,6943,5901,2579,7054,
- 7048,238,6698,6694,1,6702,6661,6655,6658,7442,
- 3554,3037,7443,7444,879,6708,6705,6735,6741,6714,
- 6717,6729,6726,6732,6723,6720,6711,6738,5633,6667,
- 6664,6673,6691,6670,6682,6652,6676,6679,6688,6685,
- 6649,7048,7048,7048,7048,371,7048,3597,7048,7048,
- 7048,7048,597,7048,7048,7048,7048,6616,6610,6613,
- 6919,7442,7053,3037,7443,7444,7643,7644,7309,7307,
- 7316,7315,7311,7312,7310,7313,7314,7317,7308,2387,
- 6622,6619,6628,6646,6625,6637,6607,6631,6634,6643,
- 6640,6604,32,384,384,6750,384,384,384,384,
- 384,384,6750,6750,6750,7048,3537,569,576,576,
- 576,576,576,576,576,576,576,6848,6848,6848,
- 384,384,384,384,384,384,384,384,384,384,
- 384,384,125,7048,6750,576,576,576,576,576,
- 576,576,576,576,576,576,576,286,562,6848,
- 416,35,7048,7021,7021,7021,7021,7021,7021,7021,
- 7021,7021,6750,7021,7021,6750,74,445,8,6266,
- 422,3554,504,2,7048,7048,7048,576,7045,7048,
- 6848,1,6842,6842,7054,6839,6830,6836,6833,7054,
- 1,359,327,327,1,1,502,3932,506,7048,
- 161,7048,7048,7048,524,7054,7048,7048,2627,6785,
- 6257,6254,7048,7048,7048,7048,7048,7048,7048,7048,
- 7048,7048,7048,1709,1543,7048,7048,7021,7048,2668,
- 2532,7048,3870,3839,7048,7048,6269,7048,37,7048,
- 3791,3760,7048,2442,7048,7048,3687,7053,7045,7048,
- 1519,4805,7053,7048,359,6117,7048,7048,7048,7048,
- 7048,7048,7048,161,7048,7048,7048,524,7053,7048,
- 7048,7048,7048,7048,7048,4806,359,819,7048,6260,
- 7048,7048,7048,7048,7048,7048,7048,7048,7048,7048,
- 7048,7048,7048,6263
+ 1,110,1,6349,6345,5686,6353,1,7049,7649,
+ 733,649,1,1,1,6349,6345,5021,6353,7057,
+ 7040,3468,5154,649,5220,128,5242,6303,6309,6306,
+ 6336,6342,6315,6318,6330,6327,6333,6324,6321,6312,
+ 6339,6356,686,39,118,5198,5176,7087,2032,1914,
+ 1962,7040,420,327,304,327,7068,5286,5264,120,
+ 3112,688,737,7070,700,4679,723,7071,7069,676,
+ 7065,7066,7067,3523,7049,4727,4704,90,6867,6867,
+ 1573,6867,6867,6867,6867,39,39,6867,7056,6867,
+ 124,512,39,6234,6231,5021,1295,5330,5352,7049,
+ 5154,649,5220,7043,5242,632,7645,7646,7310,7308,
+ 7317,7316,7312,7313,7311,7314,7315,7318,7309,3137,
+ 7049,7063,7064,5198,5176,286,1,3490,3437,39,
+ 3199,7061,7049,7087,7068,5286,5264,7061,3112,688,
+ 737,7070,700,4679,723,7071,7069,676,7065,7066,
+ 7067,3523,3977,4614,7049,3946,392,1,1573,1344,
+ 383,139,6234,6231,5021,1295,6983,6273,159,5154,
+ 649,5220,7056,5242,632,7645,7646,7310,7308,7317,
+ 7316,7312,7313,7311,7314,7315,7318,7309,3137,7049,
+ 3884,3853,5198,5176,7060,7049,559,117,3805,3774,
+ 7060,669,7049,7068,5286,5264,7055,3112,688,737,
+ 7070,700,4679,723,7071,7069,676,7065,7066,7067,
+ 3523,686,36,6910,6907,7607,7049,1573,4727,4704,
+ 159,7500,39,39,1,6349,6345,5021,6353,7480,
+ 7481,7482,5154,649,5220,7049,5242,6303,6309,6306,
+ 6336,6342,6315,6318,6330,6327,6333,6324,6321,6312,
+ 6339,6356,7049,3845,7049,5198,5176,2991,7054,7049,
+ 3972,2337,7049,7055,7049,7055,7068,5286,5264,3649,
+ 3112,688,737,7070,700,4679,723,7071,7069,676,
+ 7065,7066,7067,3523,287,7063,7064,7049,11083,10763,
+ 1573,1,7049,7049,1354,39,39,548,6234,6231,
+ 5021,1295,6745,7055,7059,5154,649,5220,7049,5242,
+ 632,7645,7646,7310,7308,7317,7316,7312,7313,7311,
+ 7314,7315,7318,7309,3137,7054,7049,7054,5198,5176,
+ 1522,1,7049,11083,10763,7049,7049,7055,7058,7068,
+ 5286,5264,7059,3112,688,737,7070,700,4679,723,
+ 7071,7069,676,7065,7066,7067,3523,7049,7049,7049,
+ 3582,2198,3014,1573,6748,7054,126,870,39,39,
+ 39,6234,6231,5021,1295,7049,7058,29,5154,649,
+ 5220,6980,5242,632,7645,7646,7310,7308,7317,7316,
+ 7312,7313,7311,7314,7315,7318,7309,3137,7049,7054,
+ 4002,5198,5176,7049,591,6825,6825,436,595,6816,
+ 6822,6819,7068,5286,5264,37,3112,688,737,7070,
+ 700,4679,723,7071,7069,676,7065,7066,7067,3523,
+ 314,3946,450,6938,383,298,1573,548,6234,6231,
+ 5021,1295,6237,6783,6983,5154,649,5220,7346,5242,
+ 632,7645,7646,7310,7308,7317,7316,7312,7313,7311,
+ 7314,7315,7318,7309,3137,595,3884,3853,5198,5176,
+ 98,7049,6240,48,3805,3774,7085,7064,4215,7068,
+ 5286,5264,7055,3112,688,737,7070,700,4679,723,
+ 7071,7069,676,7065,7066,7067,3523,6243,2453,6291,
+ 2198,7049,1289,1573,401,7049,1,7049,39,39,
+ 39,6234,6231,5021,1295,6929,7049,189,5154,649,
+ 5220,6980,5242,632,7645,7646,7310,7308,7317,7316,
+ 7312,7313,7311,7314,7315,7318,7309,3137,7064,7049,
+ 6920,5198,5176,332,7054,332,562,4440,528,6932,
+ 7061,189,7068,5286,5264,7049,3112,688,737,7070,
+ 700,4679,723,7071,7069,676,7065,7066,7067,3523,
+ 686,6974,6971,7382,7383,7049,1573,39,6234,6231,
+ 5021,1295,2344,47,6983,5154,649,5220,7053,5242,
+ 632,7645,7646,7310,7308,7317,7316,7312,7313,7311,
+ 7314,7315,7318,7309,3137,37,6846,6846,5198,5176,
+ 2032,1914,1962,7060,3744,327,45,6926,6926,7068,
+ 5286,5264,2029,3112,688,737,7070,700,4679,723,
+ 7071,7069,676,7065,7066,7067,3523,39,6234,6231,
+ 5021,1295,7049,7049,1513,5154,649,5220,364,5242,
+ 632,7645,7646,7310,7308,7317,7316,7312,7313,7311,
+ 7314,7315,7318,7309,3137,1,7085,7049,5198,5176,
+ 37,6846,6846,7049,6896,6893,161,6923,6846,7068,
+ 5286,5264,7049,3112,688,737,7070,700,4679,723,
+ 7071,7069,676,7065,7066,7067,3523,39,6234,6231,
+ 5021,1295,7052,1573,7049,5154,649,5220,3548,5242,
+ 632,7645,7646,7310,7308,7317,7316,7312,7313,7311,
+ 7314,7315,7318,7309,3137,7049,288,1472,5198,5176,
+ 391,1741,1,7049,7085,2032,1914,1962,161,7068,
+ 5286,5264,4032,3112,688,737,7070,700,4679,723,
+ 7071,7069,676,7065,7066,7067,3523,4093,7049,7049,
+ 39,6234,6231,2739,1295,3561,72,1276,5154,649,
+ 5220,7049,5242,632,7645,7646,7310,7308,7317,7316,
+ 7312,7313,7311,7314,7315,7318,7309,3137,37,6846,
+ 6846,5198,5176,48,7049,686,39,7063,234,7049,
+ 7087,6757,7068,5286,5264,2583,3112,688,737,7070,
+ 700,4679,723,7071,7069,676,7065,7066,7067,3523,
+ 39,6234,6231,2739,1295,7049,3055,4069,5154,649,
+ 5220,6968,5242,632,7645,7646,7310,7308,7317,7316,
+ 7312,7313,7311,7314,7315,7318,7309,3137,1,7085,
+ 1,5198,5176,4257,7049,7049,7049,1951,7063,2047,
+ 7049,6998,7068,5286,5264,4519,3112,688,737,7070,
+ 700,4679,723,7071,7069,676,7065,7066,7067,3523,
+ 39,6234,6231,5021,1295,2368,7049,7049,5154,649,
+ 5220,7049,5242,632,7645,7646,7310,7308,7317,7316,
+ 7312,7313,7311,7314,7315,7318,7309,3137,7001,3741,
+ 7049,5198,5176,2143,7049,7049,7049,2284,5956,6068,
+ 2,7049,7068,5286,5264,4067,3112,688,737,7070,
+ 700,4679,723,7071,7069,676,7065,7066,7067,3523,
+ 39,6234,6231,5933,1295,7049,7049,7049,5154,649,
+ 5220,4196,5242,632,7645,7646,7310,7308,7317,7316,
+ 7312,7313,7311,7314,7315,7318,7309,3137,1,564,
+ 7049,5198,5176,5907,7049,7049,7049,6087,2264,3160,
+ 7049,6998,7068,5286,5264,37,3112,688,737,7070,
+ 700,4679,723,7071,7069,676,7065,7066,7067,3523,
+ 39,6234,6231,5933,1295,7049,7049,7049,5154,649,
+ 5220,3588,5242,632,7645,7646,7310,7308,7317,7316,
+ 7312,7313,7311,7314,7315,7318,7309,3137,7001,3741,
+ 553,5198,5176,3614,7049,7049,540,3717,2695,1253,
+ 7049,7049,7068,5286,5264,7049,3112,688,737,7070,
+ 700,4679,723,7071,7069,676,7065,7066,7067,3523,
+ 39,6234,6231,5021,1295,7049,7049,7049,5154,649,
+ 5220,7049,5242,632,7645,7646,7310,7308,7317,7316,
+ 7312,7313,7311,7314,7315,7318,7309,3137,1,1,
+ 7049,5198,5176,7049,8,7049,3383,7049,444,359,
+ 524,7049,7068,5286,5264,7046,3112,688,737,7070,
+ 700,4679,723,7071,7069,676,7065,7066,7067,3523,
+ 1,416,101,860,316,6944,275,424,7514,6977,
+ 7508,97,7512,7049,7022,7022,7022,7022,7022,7022,
+ 7022,7022,7022,7022,5418,7022,7049,6234,6231,7049,
+ 1295,7506,7507,565,6300,649,3636,7049,98,7049,
+ 3338,359,524,7537,7538,4154,7515,1,6349,6345,
+ 6858,6353,7446,903,7046,6864,6861,445,7059,422,
+ 2392,7049,1,359,1,7517,7049,7049,7049,4037,
+ 942,1662,1665,7025,2198,7055,7539,7518,35,7516,
+ 2672,6947,3836,101,7049,7049,6944,820,7022,504,
+ 502,7049,7058,7528,7527,506,7540,7049,7509,7510,
+ 7533,7534,7531,7532,7511,7513,7535,7536,6920,3588,
+ 3482,7049,7049,7541,2631,7521,7522,7523,7519,7520,
+ 7529,7530,7525,7524,7526,7049,6234,6231,7049,7087,
+ 2032,1914,1962,1224,1,3842,7060,7054,877,7645,
+ 7646,7310,7308,7317,7316,7312,7313,7311,7314,7315,
+ 7318,7309,5628,7382,7383,7306,7049,1984,7300,7307,
+ 7303,7279,7305,7304,7301,7302,7280,7049,4318,4379,
+ 646,7049,7049,7049,701,7049,3637,238,6699,6695,
+ 7049,6703,6662,6656,6659,7443,7049,3221,7444,7445,
+ 877,6709,6706,6736,6742,6715,6718,6730,6727,6733,
+ 6724,6721,6712,6739,5628,6668,6665,6674,7049,7049,
+ 6692,6671,6683,6653,6677,6680,6689,6686,6650,93,
+ 6965,6965,7049,6959,6950,6956,6953,7049,598,6962,
+ 7049,6962,7049,6617,6611,6614,7049,7443,7049,3221,
+ 7444,7445,7645,7646,7310,7308,7317,7316,7312,7313,
+ 7311,7314,7315,7318,7309,7049,6623,6620,6629,7049,
+ 7049,6647,6626,6638,6608,6632,6635,6644,6641,6605,
+ 29,383,383,6754,383,383,383,383,383,383,
+ 6754,6754,6754,7049,32,384,384,6751,384,384,
+ 384,384,384,384,6751,6751,6751,7049,383,383,
+ 383,7049,7049,383,383,383,383,383,383,383,
+ 383,383,384,384,384,6754,7049,384,384,384,
+ 384,384,384,384,384,384,7049,7049,7049,6751,
+ 1,6349,6345,3671,6353,6237,125,7049,733,649,
+ 6754,74,1,6754,6267,1354,7049,7049,6234,6231,
+ 7049,1295,7049,337,6751,6300,649,6751,569,576,
+ 576,576,576,576,576,576,576,576,6849,6849,
+ 6849,7049,7049,7049,7049,7049,7049,7049,7049,7049,
+ 7049,7049,7049,7049,6258,6255,576,576,576,7049,
+ 7049,576,576,576,576,576,576,576,576,576,
+ 2198,3946,7049,6849,7049,7049,7049,7049,1033,7049,
+ 7049,6270,2198,6786,7049,337,7049,7049,337,337,
+ 7049,7049,7049,7049,7049,7049,7049,7049,576,7049,
+ 7049,6849,7049,7049,7049,7049,3884,3853,7049,7049,
+ 7049,7049,7049,7049,3805,3774,7049,7049,7049,7049,
+ 7049,7049,7049,7049,6261,7049,7049,7049,7049,7049,
+ 7049,7049,7049,7049,7049,7049,7049,7049,6264
};
};
public final static char termAction[] = TermAction.termAction;
@@ -2224,67 +2245,67 @@ public class GPPSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface Asb {
public final static char asb[] = {0,
- 562,1,762,3,607,713,713,713,713,693,
- 607,1068,1068,619,1068,1208,1148,1210,763,763,
- 763,763,763,763,763,763,763,763,763,1068,
- 834,839,836,843,841,850,848,852,851,853,
- 260,854,762,762,659,659,659,659,805,271,
- 194,194,1068,659,482,316,1068,1068,194,805,
- 316,316,316,987,743,724,1215,658,1306,695,
- 1068,1167,1068,1068,68,68,271,762,763,763,
- 763,763,763,763,763,763,763,763,763,763,
- 763,763,763,763,763,763,763,763,763,762,
- 762,762,762,762,762,762,762,762,762,762,
- 16,763,316,617,617,617,617,390,316,194,
- 194,1131,1068,607,607,607,559,1068,551,1068,
- 697,1068,693,805,1068,763,1055,1049,482,482,
- 194,713,763,1131,438,1004,147,146,1075,1075,
- 693,1210,763,397,725,482,658,762,803,1302,
- 802,804,802,316,482,836,836,834,834,834,
- 841,841,841,841,841,841,839,839,848,843,
- 843,851,850,852,61,61,853,607,607,607,
- 607,805,805,617,616,617,1068,1068,805,533,
- 434,315,961,339,553,389,551,701,693,697,
- 805,805,390,617,987,482,868,316,1006,1008,
- 805,1306,1079,724,61,763,61,878,723,607,
- 607,607,725,607,805,915,878,878,522,394,
- 805,331,559,763,659,1068,1068,316,695,805,
- 805,804,1306,762,762,762,762,762,762,607,
- 607,743,1135,1068,1068,319,315,314,316,339,
- 805,555,1140,706,390,559,134,805,390,805,
- 316,151,983,150,1008,390,803,715,725,61,
- 881,725,743,743,741,884,743,878,878,544,
- 522,1128,805,607,607,907,693,802,549,316,
- 1068,1131,1302,695,805,803,316,316,316,316,
- 271,271,1138,1068,998,997,315,136,805,339,
- 61,701,713,392,801,75,339,555,707,558,
- 555,558,390,134,134,805,805,609,762,148,
- 148,139,139,1002,1131,155,316,805,725,763,
- 725,316,1128,316,741,522,607,316,558,558,
- 878,900,1131,969,877,1128,1128,805,316,805,
- 1306,1008,63,693,805,803,549,1068,1068,1068,
- 762,1068,1310,1068,695,316,316,1068,1068,319,
- 316,270,316,1306,343,559,617,713,77,558,
- 558,558,558,805,134,136,886,12,609,762,
- 762,1006,983,609,1112,725,907,725,878,522,
- 762,725,558,559,693,900,1128,762,1167,1128,
- 900,1302,1008,7,909,6,805,805,803,722,
- 607,1068,271,763,482,1310,1068,808,998,803,
- 343,343,344,355,877,763,61,901,963,874,
- 77,558,558,536,136,763,805,611,1128,609,
- 762,723,271,878,1128,316,559,975,805,607,
- 316,136,559,900,316,63,878,257,961,805,
- 878,878,155,1068,316,482,1068,270,878,136,
- 961,1261,701,343,343,355,77,763,763,874,
- 874,77,77,975,692,537,805,611,611,725,
- 316,878,549,693,805,271,136,1167,891,806,
- 316,878,316,316,1125,485,979,136,616,713,
- 325,325,874,874,536,805,693,693,805,607,
- 611,725,549,316,1167,891,316,559,559,1127,
- 344,343,355,344,355,615,615,805,805,805,
- 1009,716,12,893,343,355,659,659,805,805,
- 998,11,90,893,136,616,659,11,11,1047,
- 325,615,802
+ 537,1,741,129,582,683,683,683,683,77,
+ 582,1076,1076,3,1076,1208,1148,1210,742,742,
+ 742,742,742,742,742,742,742,742,742,1076,
+ 818,823,820,827,825,834,832,836,835,837,
+ 371,838,741,741,43,43,43,43,784,382,
+ 137,137,1076,43,529,427,1076,1076,137,784,
+ 427,427,427,957,722,703,1215,42,1306,79,
+ 1076,1167,1076,1076,203,203,382,741,742,742,
+ 742,742,742,742,742,742,742,742,742,742,
+ 742,742,742,742,742,742,742,742,742,741,
+ 741,741,741,741,741,741,741,741,741,741,
+ 600,742,427,873,873,873,873,367,427,137,
+ 137,1139,1076,582,582,582,666,1076,658,1076,
+ 685,1076,77,784,1076,742,1063,1057,529,529,
+ 137,683,742,1139,485,974,592,591,1083,1083,
+ 77,1210,742,444,704,529,42,741,782,1302,
+ 781,783,781,427,529,820,820,818,818,818,
+ 825,825,825,825,825,825,823,823,832,827,
+ 827,835,834,836,645,645,837,582,582,582,
+ 582,784,784,873,872,873,1076,1076,784,923,
+ 481,426,127,316,660,366,658,689,77,685,
+ 784,784,367,1148,873,957,529,852,427,976,
+ 978,784,1306,1087,703,645,742,645,862,702,
+ 582,582,582,704,582,784,81,862,862,912,
+ 274,784,430,666,742,43,1076,1076,427,79,
+ 784,784,783,1306,741,741,741,741,741,741,
+ 582,582,722,1143,1076,1076,652,426,425,427,
+ 316,784,662,1049,676,367,666,269,784,367,
+ 784,427,427,596,953,595,978,367,782,694,
+ 704,645,787,704,722,722,720,790,722,862,
+ 862,669,912,1136,784,582,582,1047,77,781,
+ 674,427,1076,1139,1302,79,784,782,427,427,
+ 427,427,382,382,1146,1076,968,967,426,271,
+ 784,316,645,689,683,369,780,210,316,662,
+ 677,665,662,665,367,269,269,784,784,865,
+ 741,593,593,584,584,972,1139,277,427,784,
+ 704,742,704,427,1136,427,720,912,582,427,
+ 665,665,862,1040,1139,943,861,1136,1136,784,
+ 427,784,1306,978,647,77,784,782,674,1076,
+ 1076,1076,741,1076,1310,1076,79,427,427,1076,
+ 1076,652,427,381,427,1306,320,666,873,683,
+ 212,665,665,665,665,784,269,271,926,533,
+ 865,741,741,976,953,865,1120,704,1047,704,
+ 862,912,741,704,665,666,77,1040,1136,741,
+ 1167,1136,1040,1302,978,133,931,132,784,784,
+ 782,701,582,1076,382,742,529,1310,1076,792,
+ 968,782,320,320,321,332,861,742,645,1041,
+ 937,858,212,665,665,1023,271,742,784,867,
+ 1136,865,741,702,382,862,1136,427,666,949,
+ 784,582,427,271,666,1040,427,647,862,200,
+ 127,784,862,862,277,1076,427,529,1076,381,
+ 862,271,127,1261,689,320,320,332,212,742,
+ 742,858,858,212,212,949,76,1024,784,867,
+ 867,704,427,862,674,77,784,382,271,1167,
+ 1031,785,427,862,427,427,1133,875,1019,271,
+ 872,683,438,438,858,858,1023,784,77,77,
+ 784,582,867,704,674,427,1167,1031,427,666,
+ 666,1135,321,320,332,321,332,871,871,784,
+ 784,784,979,695,533,1033,320,332,43,43,
+ 784,784,968,532,225,1033,271,872,43,532,
+ 532,1017,438,871,781
};
};
public final static char asb[] = Asb.asb;
@@ -2292,137 +2313,137 @@ public class GPPSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface Asr {
public final static char asr[] = {0,
- 128,0,125,42,128,76,73,10,75,0,
- 42,10,80,76,0,14,15,16,17,47,
- 71,18,48,49,19,20,21,72,9,50,
- 22,23,51,52,53,66,54,55,13,24,
- 25,26,56,57,58,43,1,2,3,44,
- 45,12,11,40,41,8,46,4,27,59,
- 75,0,10,75,73,43,0,9,4,61,
- 8,1,2,0,42,10,3,9,8,75,
- 12,11,4,1,2,6,7,5,0,71,
- 72,66,44,45,12,11,40,41,8,46,
- 51,59,27,3,4,9,56,57,58,43,
- 54,49,53,17,26,16,22,20,21,23,
- 24,19,18,25,14,15,13,48,52,50,
- 47,55,74,1,2,80,10,0,5,78,
- 75,42,74,6,7,3,70,77,79,76,
- 10,73,95,0,14,15,5,31,16,17,
- 60,28,18,62,32,33,19,34,35,20,
- 21,36,37,22,23,38,63,39,13,64,
- 24,30,25,29,26,1,2,4,27,6,
- 7,95,0,14,15,5,31,16,17,60,
- 28,47,71,18,48,62,32,33,49,19,
- 34,35,20,21,36,72,9,37,50,22,
- 23,51,38,52,63,53,66,54,39,55,
- 13,64,24,30,25,29,26,56,57,58,
- 43,2,3,44,45,12,40,41,8,46,
- 77,4,27,59,6,7,1,11,0,5,
- 77,75,95,125,80,42,6,7,128,76,
+ 128,0,72,71,31,32,10,98,99,104,
+ 12,105,8,46,79,65,77,118,119,115,
+ 116,117,123,122,124,94,93,120,121,102,
+ 103,100,101,106,107,43,44,76,96,113,
+ 70,3,14,15,5,33,16,17,60,28,
+ 18,62,34,35,19,36,37,20,21,38,
+ 39,22,23,40,63,41,13,64,24,25,
+ 29,26,27,6,7,30,1,2,4,0,
14,15,16,17,47,71,18,48,49,19,
20,21,72,9,50,22,23,51,52,53,
66,54,55,13,24,25,26,56,57,58,
- 43,2,44,45,12,11,40,41,8,46,
- 4,27,59,3,1,73,10,0,10,76,
- 73,1,28,0,77,79,76,1,2,0,
- 9,1,2,8,4,13,67,0,110,111,
- 112,75,80,9,10,3,12,11,8,42,
- 69,67,92,68,14,15,5,31,16,17,
- 60,28,18,62,32,33,19,34,35,20,
- 21,36,37,22,23,38,63,39,13,64,
- 24,30,25,29,26,27,6,7,4,1,
- 2,61,0,3,29,0,14,15,5,31,
- 16,17,28,18,32,33,19,34,35,20,
- 21,36,9,37,22,23,38,39,24,30,
- 25,29,26,1,2,70,12,11,8,4,
- 42,6,7,73,10,3,0,71,72,3,
- 13,48,52,50,47,55,17,26,16,22,
- 20,21,23,24,19,18,25,14,15,56,
- 57,58,43,54,49,53,8,9,4,44,
- 45,12,11,40,41,46,51,59,27,1,
- 2,125,10,0,14,15,31,16,17,60,
- 28,18,62,32,92,33,19,34,35,20,
- 21,36,67,37,22,23,38,63,61,39,
- 13,64,24,69,30,25,29,26,27,68,
- 74,5,10,42,6,7,8,9,1,2,
- 4,3,11,12,0,30,1,2,4,110,
- 111,112,0,10,75,74,78,0,126,0,
- 61,4,1,2,6,7,5,75,74,10,
- 0,14,15,16,17,47,71,18,48,49,
+ 1,2,3,43,44,12,10,31,32,8,
+ 46,4,27,59,45,11,42,0,125,45,
+ 128,76,73,11,75,0,14,15,5,33,
+ 16,17,60,28,47,71,18,48,62,34,
+ 35,49,19,36,37,20,21,38,72,9,
+ 39,50,22,23,51,40,52,63,53,66,
+ 54,41,55,13,64,24,30,25,29,26,
+ 56,57,58,42,2,3,43,44,12,31,
+ 32,8,46,77,4,27,59,6,7,1,
+ 10,0,9,4,61,8,1,2,0,45,
+ 11,3,9,8,75,12,10,4,1,2,
+ 6,7,5,0,71,72,66,43,44,12,
+ 10,31,32,8,46,51,59,27,3,4,
+ 9,56,57,58,42,54,49,53,17,26,
+ 16,22,20,21,23,24,19,18,25,14,
+ 15,13,48,52,50,47,55,74,1,2,
+ 80,11,0,3,29,0,14,15,5,33,
+ 16,17,60,28,18,62,34,35,19,36,
+ 37,20,21,38,39,22,23,40,63,41,
+ 13,64,24,30,25,29,26,1,2,4,
+ 27,6,7,95,0,110,111,112,75,80,
+ 9,11,3,12,10,8,45,69,67,92,
+ 68,14,15,5,33,16,17,60,28,18,
+ 62,34,35,19,36,37,20,21,38,39,
+ 22,23,40,63,41,13,64,24,30,25,
+ 29,26,27,6,7,4,1,2,61,0,
+ 5,77,75,95,125,80,45,6,7,128,
+ 76,14,15,16,17,47,71,18,48,49,
19,20,21,72,9,50,22,23,51,52,
53,66,54,55,13,24,25,26,56,57,
- 58,43,1,2,44,45,12,11,40,41,
- 8,46,4,27,59,68,3,0,28,29,
- 66,10,95,73,79,76,77,0,72,71,
- 40,41,11,98,99,104,12,105,8,46,
- 79,65,77,118,119,115,116,117,123,122,
- 124,94,93,120,121,102,103,100,101,106,
- 107,44,45,76,96,113,70,3,14,15,
- 5,31,16,17,60,28,18,62,32,33,
- 19,34,35,20,21,36,37,22,23,38,
- 63,39,13,64,24,25,29,26,27,6,
- 7,30,1,2,4,0,4,6,7,5,
- 1,2,74,10,0,4,10,75,74,6,
- 7,5,65,0,73,92,110,111,112,61,
- 75,126,129,80,68,78,69,67,82,84,
- 90,88,81,86,87,89,91,74,83,85,
- 42,10,62,60,63,64,31,37,38,33,
- 36,35,30,32,28,29,5,7,6,34,
- 39,66,71,72,48,52,50,47,55,17,
- 26,16,22,20,21,23,24,19,18,25,
- 14,15,56,57,58,43,54,49,53,3,
- 44,45,12,11,40,41,46,51,59,27,
- 13,4,9,8,2,1,0,31,32,33,
- 34,35,36,9,37,38,66,78,39,30,
- 1,2,70,3,127,113,44,45,8,4,
- 74,28,29,97,96,11,98,99,40,41,
- 94,93,65,100,101,108,109,102,103,12,
- 104,105,106,77,73,128,79,115,116,117,
- 118,119,120,121,122,123,124,75,95,125,
- 80,107,114,6,7,5,76,42,10,0,
- 75,95,0,81,0,10,76,80,79,0,
+ 58,42,2,43,44,12,10,31,32,8,
+ 46,4,27,59,3,1,73,11,0,9,
+ 1,2,8,4,13,67,0,77,79,76,
+ 1,2,0,14,15,5,33,16,17,28,
+ 18,34,35,19,36,37,20,21,38,9,
+ 39,22,23,40,41,24,30,25,29,26,
+ 1,2,70,12,10,8,4,45,6,7,
+ 73,11,3,0,71,72,3,13,48,52,
+ 50,47,55,17,26,16,22,20,21,23,
+ 24,19,18,25,14,15,56,57,58,42,
+ 54,49,53,8,9,4,43,44,12,10,
+ 31,32,46,51,59,27,1,2,125,11,
+ 0,45,11,80,76,0,14,15,16,17,
+ 47,71,18,48,49,19,20,21,72,9,
+ 50,22,23,51,52,53,66,54,55,13,
+ 24,25,26,56,57,58,42,1,2,43,
+ 44,12,10,31,32,8,46,4,27,59,
+ 68,3,0,5,78,75,45,74,6,7,
+ 3,70,77,79,76,11,73,95,0,14,
+ 15,16,17,47,71,18,48,49,19,20,
+ 21,72,9,50,22,23,51,52,53,66,
+ 54,55,13,24,25,26,56,57,58,42,
+ 1,2,3,43,44,12,10,31,32,8,
+ 46,4,27,59,75,0,11,75,73,42,
+ 0,11,76,73,1,28,0,61,4,1,
+ 2,6,7,5,75,74,11,0,11,75,
+ 74,78,0,126,0,4,11,75,74,6,
+ 7,5,65,0,4,6,7,5,1,2,
+ 74,11,0,73,92,110,111,112,61,75,
+ 126,129,80,68,78,69,67,82,84,90,
+ 88,81,86,87,89,91,74,83,85,45,
+ 11,62,60,63,64,33,39,40,35,38,
+ 37,30,34,28,29,5,7,6,36,41,
+ 66,71,72,48,52,50,47,55,17,26,
+ 16,22,20,21,23,24,19,18,25,14,
+ 15,56,57,58,42,54,49,53,3,43,
+ 44,12,10,31,32,46,51,59,27,13,
+ 4,9,8,2,1,0,75,95,0,81,
+ 0,33,34,35,36,37,38,9,39,40,
+ 66,78,41,30,1,2,70,3,127,113,
+ 43,44,8,4,74,28,29,97,96,10,
+ 98,99,31,32,94,93,65,100,101,108,
+ 109,102,103,12,104,105,106,77,73,128,
+ 79,115,116,117,118,119,120,121,122,123,
+ 124,75,95,125,80,107,114,6,7,5,
+ 76,45,11,0,28,29,66,11,95,73,
+ 79,76,77,0,14,15,33,16,17,60,
+ 28,18,62,34,92,35,19,36,37,20,
+ 21,38,67,39,22,23,40,63,61,41,
+ 13,64,24,69,30,25,29,26,27,68,
+ 74,5,11,45,6,7,8,9,1,2,
+ 4,3,10,12,0,11,76,80,79,0,
+ 11,75,76,73,3,0,75,5,70,6,
+ 7,65,11,76,45,79,3,0,11,74,
+ 76,0,95,9,8,79,77,5,1,2,
+ 12,10,4,6,7,70,3,73,11,76,
+ 0,8,9,3,70,10,12,95,14,15,
+ 5,33,16,17,28,18,62,34,35,19,
+ 36,37,20,21,38,39,22,23,40,63,
+ 41,13,64,24,30,25,29,26,1,2,
+ 4,27,6,7,73,11,60,0,11,74,
+ 79,0,30,1,2,4,110,111,112,0,
28,29,66,78,77,75,95,73,74,3,
- 5,10,76,42,6,7,79,0,10,75,
- 76,73,3,0,14,15,16,17,47,71,
- 18,48,49,19,20,21,72,9,50,22,
- 23,51,52,53,66,54,55,13,24,25,
- 26,56,57,58,1,2,3,44,45,12,
- 11,40,41,8,46,4,27,59,42,10,
- 43,0,75,5,70,6,7,65,10,76,
- 42,79,3,0,10,74,76,0,10,74,
- 79,0,95,9,8,79,77,5,1,2,
- 12,11,4,6,7,70,3,73,10,76,
- 0,8,9,3,70,11,12,95,14,15,
- 5,31,16,17,28,18,62,32,33,19,
- 34,35,20,21,36,37,22,23,38,63,
- 39,13,64,24,30,25,29,26,1,2,
- 4,27,6,7,73,10,60,0,27,13,
- 62,60,63,64,17,26,16,22,20,21,
- 23,24,19,18,25,14,15,78,75,95,
- 125,80,74,128,127,113,44,45,97,96,
- 40,41,98,99,93,94,65,77,100,101,
- 102,103,104,105,106,107,114,79,115,116,
- 117,118,119,120,121,122,123,124,76,108,
- 109,31,28,32,33,34,35,36,37,38,
- 39,30,29,42,10,73,70,8,9,3,
- 12,1,2,4,6,7,5,11,0,4,
- 10,75,74,6,7,5,0,5,31,60,
- 28,62,32,33,34,35,36,37,38,63,
- 39,64,30,29,6,7,14,15,16,17,
+ 5,11,76,45,6,7,79,0,4,11,
+ 75,74,6,7,5,0,27,13,62,60,
+ 63,64,17,26,16,22,20,21,23,24,
+ 19,18,25,14,15,78,75,95,125,80,
+ 74,128,127,113,43,44,97,96,31,32,
+ 98,99,93,94,65,77,100,101,102,103,
+ 104,105,106,107,114,79,115,116,117,118,
+ 119,120,121,122,123,124,76,108,109,33,
+ 28,34,35,36,37,38,39,40,41,30,
+ 29,45,11,73,70,8,9,3,12,1,
+ 2,4,6,7,5,10,0,5,33,60,
+ 28,62,34,35,36,37,38,39,40,63,
+ 41,64,30,29,6,7,14,15,16,17,
47,18,48,49,19,20,21,50,22,23,
51,52,53,66,54,55,13,24,25,26,
- 56,57,58,43,3,44,45,12,11,40,
- 41,46,4,27,59,74,10,9,8,1,
- 2,72,71,0,71,72,44,45,12,11,
- 40,41,8,46,51,59,27,3,4,9,
- 56,57,58,43,54,49,53,17,26,16,
+ 56,57,58,42,3,43,44,12,10,31,
+ 32,46,4,27,59,74,11,9,8,1,
+ 2,72,71,0,71,72,43,44,12,10,
+ 31,32,8,46,51,59,27,3,4,9,
+ 56,57,58,42,54,49,53,17,26,16,
22,20,21,23,24,19,18,25,14,15,
13,48,52,50,47,55,70,1,2,0,
- 60,28,18,62,32,19,34,35,20,21,
- 36,37,22,23,38,63,39,13,64,24,
- 30,25,29,26,17,16,31,27,15,14,
- 10,3,12,42,69,67,92,33,68,65,
- 4,5,11,6,7,9,1,2,61,8,
+ 60,28,18,62,34,19,36,37,20,21,
+ 38,39,22,23,40,63,41,13,64,24,
+ 30,25,29,26,17,16,33,27,15,14,
+ 11,3,12,45,69,67,92,35,68,65,
+ 4,5,10,6,7,9,1,2,61,8,
0
};
};
@@ -2431,67 +2452,67 @@ public class GPPSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface Nasb {
public final static char nasb[] = {0,
- 166,13,94,13,13,13,13,13,13,98,
- 13,13,13,177,13,187,267,109,94,94,
- 94,94,273,94,94,94,94,94,94,13,
+ 155,13,90,13,13,13,13,13,13,94,
+ 13,13,13,25,13,179,264,98,90,90,
+ 90,90,270,90,90,90,90,90,90,13,
13,13,13,13,13,13,13,13,13,13,
- 94,13,94,206,60,60,60,60,109,123,
- 231,231,83,5,149,306,13,13,231,277,
- 306,306,306,119,1,18,94,114,39,13,
- 13,268,13,13,69,69,123,206,94,94,
- 94,94,94,94,94,94,94,94,94,94,
- 94,94,94,94,94,94,94,94,94,94,
- 94,94,94,94,94,94,94,94,94,94,
- 48,94,306,13,13,13,13,130,306,55,
- 55,294,252,13,13,13,217,252,35,252,
- 35,252,11,109,252,94,251,244,149,149,
- 55,13,94,294,144,118,89,89,13,13,
- 11,109,94,13,203,149,60,137,187,63,
- 186,109,186,306,149,13,13,13,13,13,
+ 90,13,90,207,56,56,56,56,98,81,
+ 228,228,46,5,140,23,13,13,228,274,
+ 23,23,23,110,1,198,90,14,44,13,
+ 13,265,13,13,63,63,81,207,90,90,
+ 90,90,90,90,90,90,90,90,90,90,
+ 90,90,90,90,90,90,90,90,90,90,
+ 90,90,90,90,90,90,90,90,90,90,
+ 158,90,23,13,13,13,13,120,23,51,
+ 51,284,249,13,13,13,215,249,40,249,
+ 40,249,11,98,249,90,248,241,140,140,
+ 51,13,90,284,135,109,16,16,13,13,
+ 11,98,90,13,204,140,56,117,179,101,
+ 178,98,178,23,140,13,13,13,13,13,
13,13,13,13,13,13,13,13,13,13,
13,13,13,13,13,13,13,13,13,13,
- 13,192,12,13,13,13,300,260,109,13,
- 306,43,13,231,191,98,260,86,98,260,
- 109,12,13,13,298,149,13,306,292,231,
- 109,39,13,212,13,153,13,221,13,13,
- 13,13,213,13,278,219,221,221,76,140,
- 278,133,270,94,60,231,21,306,13,12,
- 109,174,39,94,94,206,206,206,206,13,
- 13,55,35,35,35,126,52,13,306,285,
- 192,35,35,13,241,217,231,241,38,192,
- 306,13,224,13,197,37,192,13,213,13,
- 13,213,24,24,195,13,24,221,221,231,
- 28,226,109,13,13,13,98,98,231,306,
- 116,300,63,13,277,192,306,306,306,306,
- 123,123,13,231,306,13,306,19,109,221,
- 13,102,13,13,133,75,285,35,35,231,
- 260,231,38,231,278,12,192,231,94,13,
- 13,89,89,223,294,197,306,192,213,94,
- 213,306,226,306,237,231,13,306,231,16,
- 221,35,294,135,13,183,254,109,306,12,
- 39,231,67,98,241,241,100,231,160,13,
- 206,300,175,13,13,306,306,35,169,126,
- 306,94,306,39,231,217,13,13,28,231,
- 231,142,142,192,278,19,13,13,169,94,
- 94,292,181,231,13,213,13,213,221,29,
- 206,213,16,171,105,260,183,137,92,29,
- 35,209,197,306,13,13,241,103,187,112,
- 13,116,123,94,149,175,231,169,306,187,
- 262,231,280,231,221,94,13,14,13,35,
- 254,142,142,162,19,94,278,231,255,169,
- 94,13,200,221,254,306,171,13,241,13,
- 306,231,217,260,306,67,221,13,67,103,
- 221,221,60,160,306,149,169,94,221,19,
- 13,280,86,280,262,197,29,94,94,260,
- 35,254,13,13,98,41,241,151,231,213,
- 306,221,231,105,12,123,19,231,231,13,
- 306,221,306,306,231,216,13,19,13,13,
- 128,128,35,260,233,241,98,98,12,13,
- 151,213,100,306,92,169,306,270,270,224,
- 280,231,197,280,231,13,13,12,241,241,
- 304,112,19,231,262,197,60,60,12,12,
- 306,46,91,151,19,13,60,46,13,13,
- 128,13,186
+ 13,152,12,13,13,13,188,257,98,13,
+ 23,217,13,228,151,94,257,18,94,257,
+ 98,12,13,264,13,186,140,13,23,282,
+ 228,98,44,13,210,13,144,13,31,13,
+ 13,13,13,211,13,275,29,31,31,74,
+ 96,275,127,267,90,56,228,114,23,13,
+ 12,98,183,44,90,90,207,207,207,207,
+ 13,13,51,40,40,40,164,201,13,23,
+ 288,152,40,40,13,238,215,228,238,43,
+ 152,23,23,13,221,13,297,42,152,13,
+ 211,13,13,211,304,304,295,13,304,31,
+ 31,228,33,223,98,13,13,13,94,94,
+ 228,23,105,188,101,13,274,152,23,23,
+ 23,23,81,81,13,228,23,13,23,199,
+ 98,31,13,195,13,13,127,73,288,40,
+ 40,228,257,228,43,228,275,12,152,228,
+ 90,13,13,16,16,220,284,297,23,152,
+ 211,90,211,23,223,23,300,228,13,23,
+ 228,59,31,40,284,123,13,175,251,98,
+ 23,12,44,228,162,94,238,238,125,228,
+ 49,13,207,188,184,13,13,23,23,40,
+ 171,164,23,90,23,44,228,215,13,13,
+ 33,228,228,133,133,152,275,199,13,13,
+ 171,90,90,282,173,228,13,211,13,211,
+ 31,34,207,211,59,168,69,257,175,117,
+ 88,34,40,192,297,23,13,13,238,196,
+ 179,61,13,105,81,90,140,184,228,171,
+ 23,179,259,228,277,228,31,90,13,129,
+ 13,40,251,133,133,230,199,90,275,228,
+ 252,171,90,13,84,31,251,23,168,13,
+ 238,13,23,228,215,257,23,162,31,13,
+ 162,196,31,31,56,49,23,140,171,90,
+ 31,199,13,277,18,277,259,297,34,90,
+ 90,257,40,251,13,13,94,107,238,166,
+ 228,211,23,31,228,69,12,81,199,228,
+ 228,13,23,31,23,23,228,214,13,199,
+ 13,13,131,131,40,257,234,238,94,94,
+ 12,13,166,211,125,23,88,171,23,267,
+ 267,221,277,228,297,277,228,13,13,12,
+ 238,238,21,61,199,228,259,297,56,56,
+ 12,12,23,142,87,166,199,13,56,142,
+ 13,13,131,13,178
};
};
public final static char nasb[] = Nasb.nasb;
@@ -2500,36 +2521,36 @@ public class GPPSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface Nasr {
public final static char nasr[] = {0,
13,3,10,9,162,187,160,131,159,158,
- 5,2,0,205,0,170,0,4,81,0,
- 4,191,0,4,53,109,0,97,4,5,
- 10,9,2,66,41,0,123,2,73,0,
- 207,0,215,31,0,173,0,4,44,123,
- 0,31,185,0,5,10,9,2,13,4,
- 53,0,73,149,148,0,146,0,5,2,
- 9,10,150,0,43,5,2,9,10,4,
- 169,0,4,209,0,45,1,0,82,0,
- 81,139,45,10,9,2,13,5,0,172,
- 0,45,110,0,180,5,179,0,2,49,
- 0,122,0,189,0,154,0,31,100,101,
- 4,0,4,103,0,183,0,114,0,123,
- 73,0,167,0,198,0,4,37,0,216,
- 0,116,0,13,2,9,10,5,89,0,
- 136,0,13,2,9,10,5,218,0,152,
- 0,5,108,206,0,4,188,0,69,0,
- 45,171,0,2,125,0,4,53,210,0,
- 101,100,41,66,68,5,10,9,2,0,
- 49,2,3,0,44,195,29,4,0,4,
- 192,0,52,45,193,4,44,0,41,73,
- 0,81,44,52,74,4,45,0,4,44,
- 43,0,31,101,100,66,5,2,9,10,
- 4,0,5,108,176,0,53,4,194,0,
- 2,67,0,2,5,131,127,128,129,147,
- 13,90,0,4,5,10,9,2,66,23,
- 0,126,4,52,88,0,53,4,44,45,
- 64,0,5,10,9,13,3,1,0,4,
- 52,88,94,0,4,52,88,108,50,5,
- 0,29,4,5,41,97,0,101,100,41,
- 5,68,0,53,4,31,0
+ 5,2,0,189,0,82,0,45,1,0,
+ 50,4,31,0,4,50,210,0,4,43,
+ 44,0,97,4,5,10,9,2,66,41,
+ 0,123,2,73,0,4,209,0,152,0,
+ 5,10,9,2,13,4,50,0,170,0,
+ 122,0,5,2,9,10,150,0,180,5,
+ 179,0,44,5,2,9,10,4,169,0,
+ 4,103,0,4,192,0,81,139,45,10,
+ 9,2,13,5,0,216,0,2,49,0,
+ 73,149,148,0,154,0,207,0,31,100,
+ 101,4,0,4,191,0,4,36,0,123,
+ 73,0,198,0,172,0,167,0,205,0,
+ 114,0,116,0,13,2,9,10,5,89,
+ 0,173,0,13,2,9,10,5,218,0,
+ 49,2,3,0,4,188,0,4,43,123,
+ 0,146,0,183,0,136,0,45,171,0,
+ 70,0,101,100,41,66,69,5,10,9,
+ 2,0,2,125,0,101,100,41,5,69,
+ 0,41,73,0,45,110,0,4,81,0,
+ 31,185,0,53,45,193,4,43,0,81,
+ 43,53,74,4,45,0,215,31,0,31,
+ 101,100,66,5,2,9,10,4,0,5,
+ 108,206,0,5,108,176,0,2,67,0,
+ 2,5,131,127,128,129,147,13,90,0,
+ 4,5,10,9,2,66,23,0,126,4,
+ 53,88,0,50,4,43,45,54,0,5,
+ 10,9,13,3,1,0,4,53,88,94,
+ 0,29,4,5,41,97,0,4,53,88,
+ 108,51,5,0,43,195,29,4,0,50,
+ 4,194,0,4,50,109,0
};
};
public final static char nasr[] = Nasr.nasr;
@@ -2537,11 +2558,11 @@ public class GPPSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface TerminalIndex {
public final static char terminalIndex[] = {0,
- 117,118,2,31,50,128,129,13,83,119,
- 10,9,104,48,49,52,56,64,72,78,
+ 117,118,2,31,50,128,129,13,83,10,
+ 119,9,104,48,49,52,56,64,72,78,
79,90,91,106,109,111,126,58,110,108,
- 51,68,70,74,77,80,87,93,102,11,
- 12,124,116,7,8,14,59,65,71,88,
+ 11,12,51,68,70,74,77,80,87,93,
+ 102,116,7,8,124,14,59,65,71,88,
92,94,98,101,103,113,114,115,127,57,
97,67,95,105,19,99,81,130,107,1,
62,82,122,125,30,44,20,100,33,123,
@@ -2560,10 +2581,10 @@ public class GPPSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
138,143,144,0,0,142,0,0,237,243,
141,0,151,140,0,0,150,156,0,0,
157,166,252,0,0,0,167,168,188,169,
- 134,170,171,172,173,174,159,175,176,0,
- 253,149,136,139,137,177,0,146,145,185,
- 0,0,160,0,0,0,0,0,0,212,
- 0,0,0,180,209,213,0,163,194,153,
+ 134,170,171,172,173,159,174,175,176,0,
+ 253,149,139,136,137,177,0,146,145,160,
+ 185,0,0,180,0,0,0,0,0,0,
+ 212,0,0,0,209,213,0,153,163,194,
183,0,0,179,0,0,0,0,0,0,
135,214,0,0,0,0,0,0,133,193,
0,0,165,186,0,0,210,220,216,217,
@@ -2587,20 +2608,21 @@ public class GPPSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface ScopePrefix {
public final static char scopePrefix[] = {
- 236,673,692,386,624,640,651,662,467,344,
- 358,380,402,420,104,369,487,525,244,681,
- 575,82,113,133,142,147,152,207,272,375,
- 413,428,433,57,221,350,364,599,89,221,
- 477,433,700,89,294,325,1,53,65,76,
- 123,138,168,438,456,460,543,568,620,710,
- 714,718,159,69,159,505,521,534,552,612,
- 178,178,306,534,631,647,658,669,284,586,
- 13,25,48,118,118,233,299,7,118,320,
- 341,7,7,118,464,565,572,233,118,733,
- 7,42,172,442,509,549,559,118,187,393,
- 442,187,187,393,496,254,18,18,33,166,
- 33,33,33,33,547,722,729,18,18,37,
- 315,722,729,127,515,214,166,315,166,330
+ 240,677,696,390,628,644,655,666,471,348,
+ 362,384,406,424,108,373,491,529,248,685,
+ 579,86,117,137,146,151,156,211,276,379,
+ 417,432,437,61,225,354,368,603,93,225,
+ 481,437,704,93,298,329,1,37,57,69,
+ 80,127,142,172,442,460,464,547,572,624,
+ 714,718,722,163,73,163,509,525,538,556,
+ 616,182,182,310,538,635,651,662,673,288,
+ 590,13,25,54,122,122,237,303,7,122,
+ 324,345,7,7,122,468,569,576,237,122,
+ 737,7,48,176,446,513,553,563,122,191,
+ 397,446,191,191,397,500,258,18,18,33,
+ 170,33,33,33,33,551,726,733,18,18,
+ 43,319,726,733,131,519,218,170,319,170,
+ 334
};
};
public final static char scopePrefix[] = ScopePrefix.scopePrefix;
@@ -2608,20 +2630,21 @@ public class GPPSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface ScopeSuffix {
public final static char scopeSuffix[] = {
- 80,51,51,212,51,51,51,51,474,212,
- 157,212,212,426,110,355,493,531,250,129,
- 581,87,87,87,121,121,157,212,277,212,
- 418,418,426,62,226,355,163,604,100,229,
- 482,687,705,94,288,288,5,51,51,80,
- 51,121,157,418,157,157,212,323,51,51,
- 51,323,731,73,163,474,474,474,556,604,
- 182,196,310,538,635,635,635,635,288,590,
- 16,16,51,121,121,51,51,302,304,323,
- 51,5,5,304,157,51,323,51,597,51,
- 10,45,175,445,512,45,562,616,182,408,
- 607,190,201,396,499,257,23,31,35,157,
- 448,450,452,454,157,724,724,20,28,39,
- 317,726,726,129,517,216,279,310,264,332
+ 84,41,41,216,41,41,41,41,478,216,
+ 161,216,216,430,114,359,497,535,254,133,
+ 585,91,91,91,125,125,161,216,281,216,
+ 422,422,430,66,230,359,167,608,104,233,
+ 486,691,709,98,292,292,5,41,41,41,
+ 84,41,125,161,422,161,161,216,327,41,
+ 41,41,327,735,77,167,478,478,478,560,
+ 608,186,200,314,542,639,639,639,639,292,
+ 594,16,16,41,125,125,41,41,306,308,
+ 327,41,5,5,308,161,41,327,41,601,
+ 41,10,51,179,449,516,51,566,620,186,
+ 412,611,194,205,400,503,261,23,31,35,
+ 161,452,454,456,458,161,728,728,20,28,
+ 45,321,730,730,133,521,220,283,314,268,
+ 336
};
};
public final static char scopeSuffix[] = ScopeSuffix.scopeSuffix;
@@ -2629,20 +2652,21 @@ public class GPPSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface ScopeLhs {
public final static char scopeLhs[] = {
- 50,17,17,129,17,17,17,17,77,96,
- 51,86,129,128,83,57,77,76,50,17,
- 19,3,7,8,176,176,175,127,50,87,
- 128,128,130,24,138,58,51,150,143,138,
- 77,17,17,143,102,59,71,182,145,80,
- 179,176,175,130,196,55,64,154,17,17,
- 17,17,12,122,175,77,76,76,40,150,
- 140,140,68,76,17,17,17,17,102,19,
- 117,135,16,180,176,198,100,107,61,82,
- 60,169,71,130,78,155,154,189,150,16,
- 71,75,175,130,109,75,21,150,140,129,
- 150,140,140,129,77,50,117,135,187,175,
- 161,160,159,158,72,148,49,117,135,218,
- 68,148,49,179,109,127,50,68,50,59
+ 51,17,17,129,17,17,17,17,77,96,
+ 52,86,129,128,83,58,77,76,51,17,
+ 19,3,7,8,176,176,175,127,51,87,
+ 128,128,130,24,138,59,52,150,143,138,
+ 77,17,17,143,102,60,71,147,182,145,
+ 80,179,176,175,130,196,56,54,154,17,
+ 17,17,17,12,122,175,77,76,76,40,
+ 150,140,140,69,76,17,17,17,17,102,
+ 19,117,135,16,180,176,198,100,107,62,
+ 82,61,169,71,130,78,155,154,189,150,
+ 16,71,75,175,130,109,75,21,150,140,
+ 129,150,140,140,129,77,51,117,135,187,
+ 175,161,160,159,158,72,148,49,117,135,
+ 218,69,148,49,179,109,127,51,69,51,
+ 60
};
};
public final static char scopeLhs[] = ScopeLhs.scopeLhs;
@@ -2651,19 +2675,20 @@ public class GPPSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface ScopeLa {
public final static char scopeLa[] = {
126,73,73,80,73,73,73,73,73,80,
- 42,80,80,1,77,1,73,129,74,3,
- 73,77,77,77,1,1,42,80,74,80,
+ 45,80,80,1,77,1,73,129,74,3,
+ 73,77,77,77,1,1,45,80,74,80,
1,1,1,73,80,1,1,4,77,76,
- 42,1,1,77,73,73,1,73,73,126,
- 73,1,42,1,42,42,80,125,73,73,
- 73,125,1,73,1,73,73,73,75,4,
- 1,1,11,73,77,77,77,77,73,3,
- 6,6,73,1,1,73,73,3,1,125,
- 73,1,1,1,42,73,125,73,8,73,
- 6,75,1,61,79,75,73,1,1,74,
- 61,1,1,1,81,78,1,1,27,42,
- 1,62,60,60,42,4,4,1,1,95,
- 12,4,4,3,1,74,1,11,1,3
+ 45,1,1,77,73,73,1,73,73,73,
+ 126,73,1,45,1,45,45,80,125,73,
+ 73,73,125,1,73,1,73,73,73,75,
+ 4,1,1,10,73,77,77,77,77,73,
+ 3,6,6,73,1,1,73,73,3,1,
+ 125,73,1,1,1,45,73,125,73,8,
+ 73,6,75,1,61,79,75,73,1,1,
+ 74,61,1,1,1,81,78,1,1,27,
+ 45,1,62,60,60,45,4,4,1,1,
+ 95,12,4,4,3,1,74,1,10,1,
+ 3
};
};
public final static char scopeLa[] = ScopeLa.scopeLa;
@@ -2671,20 +2696,21 @@ public class GPPSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface ScopeStateSet {
public final static char scopeStateSet[] = {
- 97,315,315,137,315,315,315,315,107,42,
- 97,40,137,137,40,99,107,107,97,315,
- 315,242,286,286,9,9,37,137,97,40,
- 137,137,137,141,388,99,97,120,5,388,
- 107,315,315,5,129,54,60,51,1,107,
- 12,9,37,137,95,99,222,25,315,315,
- 315,315,290,18,37,107,107,107,353,120,
- 137,137,182,107,315,315,315,315,129,315,
- 70,28,315,12,9,23,129,131,54,125,
- 54,75,60,137,107,15,25,123,120,315,
- 60,107,37,137,32,107,320,120,137,137,
- 120,137,137,137,107,97,70,28,138,37,
- 138,138,138,138,83,80,198,70,28,78,
- 182,80,198,12,32,137,97,182,97,54
+ 97,316,316,137,316,316,316,316,107,42,
+ 97,40,137,137,40,99,107,107,97,316,
+ 316,243,287,287,9,9,37,137,97,40,
+ 137,137,137,141,389,99,97,120,5,389,
+ 107,316,316,5,129,54,60,137,51,1,
+ 107,12,9,37,137,95,99,222,25,316,
+ 316,316,316,291,18,37,107,107,107,354,
+ 120,137,137,182,107,316,316,316,316,129,
+ 316,70,28,316,12,9,23,129,131,54,
+ 125,54,75,60,137,107,15,25,123,120,
+ 316,60,107,37,137,32,107,321,120,137,
+ 137,120,137,137,137,107,97,70,28,138,
+ 37,138,138,138,138,83,80,198,70,28,
+ 78,182,80,198,12,32,137,97,182,97,
+ 54
};
};
public final static char scopeStateSet[] = ScopeStateSet.scopeStateSet;
@@ -2695,77 +2721,77 @@ public class GPPSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
171,227,134,0,209,0,227,134,0,253,
209,0,247,171,0,253,0,171,0,232,
253,0,232,0,201,171,0,183,253,0,
- 183,0,292,0,259,0,223,0,32,165,
- 0,348,83,0,30,179,0,194,3,0,
- 134,0,344,3,313,0,343,3,3,6,
- 0,134,134,0,342,3,66,0,341,3,
- 126,0,134,180,0,134,194,78,0,224,
- 0,271,134,65,132,0,20,0,311,134,
- 65,61,0,20,57,0,33,140,0,20,
- 57,0,0,311,134,65,61,218,0,20,
- 186,0,271,134,65,140,0,197,135,0,
- 149,0,233,3,310,0,310,0,2,0,
- 134,0,271,134,65,139,0,197,135,238,
- 0,197,135,30,238,0,197,135,337,30,
- 0,136,203,179,135,0,136,0,203,179,
- 135,0,142,136,0,182,0,333,134,182,
- 0,134,182,0,230,136,0,179,332,261,
- 0,144,0,0,0,0,332,261,0,145,
- 144,0,0,0,0,143,0,0,0,0,
- 145,143,0,0,0,0,331,134,175,270,
- 0,135,0,270,0,137,0,0,135,0,
- 330,134,175,269,0,135,0,0,44,135,
- 0,0,167,3,0,134,301,300,134,78,
- 299,182,0,300,134,78,299,182,0,223,
- 0,224,0,299,182,0,100,0,0,223,
- 0,224,0,211,100,0,0,223,0,224,
- 0,300,134,299,182,0,223,0,211,0,
- 0,223,0,241,134,3,0,134,0,0,
- 0,0,0,241,134,3,230,0,237,3,
- 0,216,0,154,0,192,179,135,0,10,
- 0,0,0,0,192,0,9,0,0,223,
- 70,0,133,0,241,134,3,190,0,190,
- 0,2,0,0,134,0,0,0,0,0,
- 201,3,0,254,134,175,43,33,0,197,
- 135,67,69,0,204,136,0,136,197,135,
- 297,69,0,197,135,297,69,0,197,135,
- 79,131,67,0,254,134,175,67,0,254,
- 134,175,240,67,0,295,134,175,131,327,
- 62,0,327,62,0,138,137,0,0,135,
- 0,295,134,175,327,62,0,137,0,0,
- 135,0,197,135,294,62,0,143,0,203,
- 197,135,294,261,0,144,0,197,135,294,
- 261,0,203,179,135,13,0,179,135,13,
- 0,179,135,0,97,144,0,200,0,199,
- 0,198,0,197,0,287,134,159,0,287,
- 134,182,0,174,90,0,322,173,324,325,
- 3,87,0,134,179,0,324,325,3,87,
- 0,136,0,134,179,0,174,3,81,204,
- 86,0,134,136,0,204,86,0,112,2,
- 139,134,136,0,239,3,81,0,201,183,
- 0,33,177,0,183,0,183,33,177,0,
- 239,3,91,0,204,161,239,3,89,0,
- 66,179,0,239,3,89,0,134,179,66,
- 179,0,323,134,175,0,174,0,223,83,
- 0,174,114,169,0,30,177,0,200,3,
- 0,134,157,0,233,3,0,223,70,284,
- 0,174,70,0,200,3,319,72,135,0,
- 134,0,0,0,0,319,72,135,0,2,
- 153,134,0,0,0,0,155,0,133,61,
- 179,135,0,31,155,0,97,144,31,155,
- 0,234,197,135,0,154,31,155,0,174,
- 3,55,0,174,3,77,200,65,47,0,
- 200,65,47,0,20,2,139,134,0,174,
- 3,77,200,65,50,0,200,65,50,0,
- 174,3,77,200,65,52,0,200,65,52,
- 0,174,3,77,200,65,48,0,200,65,
- 48,0,233,3,133,203,179,135,13,0,
- 133,203,179,135,13,0,144,2,0,134,
- 0,233,3,132,253,179,135,13,0,253,
- 179,135,13,0,143,2,0,134,0,233,
- 3,143,0,233,3,147,0,174,70,147,
- 0,279,0,31,0,31,147,0,178,0,
- 142,0,174,3,0
+ 183,0,292,0,259,0,198,3,27,0,
+ 134,0,223,0,32,165,0,348,83,0,
+ 30,179,0,184,3,0,344,3,313,0,
+ 343,3,3,6,0,134,134,0,342,3,
+ 66,0,341,3,126,0,134,180,0,134,
+ 184,78,0,224,0,271,134,65,132,0,
+ 20,0,311,134,65,61,0,20,57,0,
+ 33,140,0,20,57,0,0,311,134,65,
+ 61,218,0,20,186,0,271,134,65,140,
+ 0,197,135,0,149,0,233,3,310,0,
+ 310,0,2,0,134,0,271,134,65,139,
+ 0,197,135,238,0,197,135,30,238,0,
+ 197,135,337,30,0,136,203,179,135,0,
+ 136,0,203,179,135,0,142,136,0,183,
+ 0,333,134,183,0,134,183,0,230,136,
+ 0,179,332,261,0,144,0,0,0,0,
+ 332,261,0,145,144,0,0,0,0,143,
+ 0,0,0,0,145,143,0,0,0,0,
+ 331,134,175,270,0,135,0,270,0,137,
+ 0,0,135,0,330,134,175,269,0,135,
+ 0,0,44,135,0,0,166,3,0,134,
+ 301,300,134,78,299,183,0,300,134,78,
+ 299,183,0,223,0,224,0,299,183,0,
+ 100,0,0,223,0,224,0,211,100,0,
+ 0,223,0,224,0,300,134,299,183,0,
+ 223,0,211,0,0,223,0,241,134,3,
+ 0,134,0,0,0,0,0,241,134,3,
+ 230,0,237,3,0,216,0,154,0,193,
+ 179,135,0,10,0,0,0,0,193,0,
+ 9,0,0,223,70,0,133,0,241,134,
+ 3,191,0,191,0,2,0,0,134,0,
+ 0,0,0,0,201,3,0,254,134,175,
+ 42,35,0,197,135,67,69,0,204,136,
+ 0,136,197,135,297,69,0,197,135,297,
+ 69,0,197,135,79,131,67,0,254,134,
+ 175,67,0,254,134,175,240,67,0,295,
+ 134,175,131,327,62,0,327,62,0,138,
+ 137,0,0,135,0,295,134,175,327,62,
+ 0,137,0,0,135,0,197,135,294,62,
+ 0,143,0,203,197,135,294,261,0,144,
+ 0,197,135,294,261,0,203,179,135,13,
+ 0,179,135,13,0,179,135,0,97,144,
+ 0,200,0,199,0,198,0,197,0,287,
+ 134,159,0,287,134,183,0,173,90,0,
+ 322,174,324,325,3,87,0,134,179,0,
+ 324,325,3,87,0,136,0,134,179,0,
+ 173,3,81,204,86,0,134,136,0,204,
+ 86,0,112,2,139,134,136,0,239,3,
+ 81,0,201,180,0,33,177,0,180,0,
+ 183,33,177,0,239,3,91,0,204,161,
+ 239,3,89,0,66,179,0,239,3,89,
+ 0,134,179,66,179,0,323,134,175,0,
+ 173,0,223,83,0,173,114,169,0,30,
+ 177,0,198,3,0,134,157,0,233,3,
+ 0,223,70,284,0,173,70,0,198,3,
+ 319,72,135,0,134,0,0,0,0,319,
+ 72,135,0,2,153,134,0,0,0,0,
+ 155,0,133,61,179,135,0,31,155,0,
+ 97,144,31,155,0,234,197,135,0,154,
+ 31,155,0,173,3,55,0,173,3,77,
+ 198,65,47,0,198,65,47,0,20,2,
+ 139,134,0,173,3,77,198,65,50,0,
+ 198,65,50,0,173,3,77,198,65,52,
+ 0,198,65,52,0,173,3,77,198,65,
+ 48,0,198,65,48,0,233,3,133,203,
+ 179,135,13,0,133,203,179,135,13,0,
+ 144,2,0,134,0,233,3,132,253,179,
+ 135,13,0,253,179,135,13,0,143,2,
+ 0,134,0,233,3,143,0,233,3,147,
+ 0,173,70,147,0,279,0,31,0,31,
+ 147,0,178,0,142,0,173,3,0
};
};
public final static char scopeRhs[] = ScopeRhs.scopeRhs;
@@ -2773,46 +2799,46 @@ public class GPPSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface ScopeState {
public final static char scopeState[] = {0,
- 2923,2699,2198,0,5708,3685,4775,0,3687,2272,
- 0,2442,1222,0,2608,2261,0,2480,1759,1352,
- 1107,0,1889,0,2362,1461,0,3185,3016,655,
- 0,3785,5771,5770,645,0,5751,5710,0,5751,
- 5710,4915,5536,5487,4853,5472,5423,5374,4837,0,
- 1152,1574,0,5381,3672,2970,2860,963,5717,4556,
- 4789,3185,3016,4762,5688,3657,5675,655,3644,3356,
- 3284,3212,2721,0,963,5717,0,2235,0,877,
- 805,0,4475,4414,4353,4292,4231,4170,4109,4048,
- 3987,3926,3562,3501,3347,0,5751,5710,4915,5536,
- 5487,4853,5472,5423,5374,4837,4475,4414,4353,4292,
- 4231,4170,4109,4048,3987,3926,3562,3501,0,2998,
- 890,0,1353,0,1951,1281,1058,1052,2970,5847,
- 4556,3657,3644,1462,4171,0,4734,600,2751,0,
- 4363,6116,3356,5933,4240,3284,4058,4789,5381,3212,
- 4964,3560,4293,3185,3729,3016,5394,4762,935,3446,
- 6112,6085,4844,3280,4473,4300,3994,3179,2960,725,
- 4734,3242,4110,4049,3037,3988,2693,3314,2825,600,
- 2751,3672,2970,5840,2721,5979,2860,5972,5968,5939,
- 655,5763,5847,6019,5893,3274,0,6102,6076,6052,
- 6048,6026,6015,5855,5742,5448,4155,5396,4829,4434,
- 3699,3547,3410,3118,3227,4373,4312,4190,2736,1306,
- 0,1935,1404,4475,4414,4131,2788,4353,4292,4231,
- 4170,4109,4048,3987,1157,3926,3562,3501,2705,4898,
- 0,2650,2561,6102,6076,2533,2472,6052,1273,6048,
- 6026,6015,1660,5855,5742,2278,5448,1641,1382,4155,
- 1176,1144,5396,1126,1095,4829,4434,859,2887,3699,
- 3372,3547,651,3410,3118,3227,813,4373,4312,4734,
- 4190,670,2751,2736,1306,2429,1450,1292,735,819,
- 4556,3356,3284,4789,5381,3212,3185,3672,3016,2970,
- 2721,4762,2860,5688,3657,963,5675,655,3644,5717,
- 1036,700,2998,890,5654,5633,5595,4634,3509,5352,
- 5330,1153,2794,3083,2934,3476,3423,3125,4659,4569,
- 3932,3901,3870,3839,3791,3760,5065,5042,5012,4711,
- 4688,5308,5286,5264,5242,5220,5198,5176,5154,5132,
- 5110,5088,2668,2627,1519,2387,2579,2538,2490,1470,
- 1408,1250,2449,1359,981,2339,2291,2235,2194,909,
- 836,764,2146,2098,2050,2002,1954,1906,1858,1810,
- 1762,1714,1666,600,1618,1570,1311,1103,1054,1198,
- 0
+ 3420,3335,2703,0,6047,3336,3701,0,3842,3836,
+ 0,1224,903,0,2416,755,0,2630,3341,883,
+ 1625,0,1572,0,2745,1317,0,3199,3001,656,
+ 0,5955,6087,6068,5956,0,5721,5715,0,5721,
+ 5715,4958,5568,5507,4944,5493,5432,5418,4843,0,
+ 2337,2697,0,4826,3686,2974,2864,962,5448,4601,
+ 4910,3199,3001,4798,5699,3671,5686,656,3658,3370,
+ 3298,3226,2725,0,962,5448,0,2239,0,1397,
+ 1311,0,4520,4459,4398,4337,4276,4215,4154,4093,
+ 4032,3971,3576,3515,5907,0,5721,5715,4958,5568,
+ 5507,4944,5493,5432,5418,4843,4520,4459,4398,4337,
+ 4276,4215,4154,4093,4032,3971,3576,3515,0,3397,
+ 887,0,630,0,2530,2525,1099,642,2974,3248,
+ 4601,3671,3658,1354,1047,0,4750,601,2755,0,
+ 3690,5035,3370,4789,3618,3298,2964,4910,4826,3226,
+ 4770,3255,4529,3199,2911,3001,4519,4798,2837,2738,
+ 4468,4407,4346,4285,4039,3583,3575,2423,1440,720,
+ 4750,726,4155,4094,3221,4033,2868,3331,2830,601,
+ 2755,3686,2974,5789,2725,5905,2864,5898,5851,5843,
+ 656,5713,3248,5940,5816,4756,0,6041,6033,6029,
+ 6025,6021,6013,5970,5729,4940,2096,4479,4418,4357,
+ 2000,1904,1808,2338,1712,4296,4235,4174,1615,1307,
+ 0,3700,2795,4520,4459,3557,2852,4398,4337,4276,
+ 4215,4154,4093,4032,2744,3971,3576,5933,3515,2739,
+ 5021,0,2536,2476,6041,6033,2280,2192,6029,934,
+ 6025,6021,6013,1885,5970,5729,3216,4940,1837,1789,
+ 2096,1741,1693,4479,1644,1513,4418,4357,1248,3212,
+ 2000,3016,1904,2221,1808,2338,1712,807,4296,4235,
+ 4750,4174,733,2755,1615,1307,3044,2713,2434,1295,
+ 701,4601,3370,3298,4910,4826,3226,3199,3686,3001,
+ 2974,2725,4798,2864,5699,3671,962,5686,656,3658,
+ 5448,1033,820,3397,887,5665,5628,4679,3523,3137,
+ 5396,5374,1155,2799,3077,2938,3490,3437,3165,4614,
+ 3977,3946,3915,3884,3853,3805,3774,5131,5108,5085,
+ 4727,4704,5352,5330,5308,5286,5264,5242,5220,5198,
+ 5176,5154,3112,2672,2631,1522,2392,2583,2542,2494,
+ 1472,1411,1253,2453,1361,980,2344,2296,2239,2198,
+ 911,834,765,2150,2102,2054,2006,1958,1910,1862,
+ 1814,1766,1718,1670,601,1621,1573,1313,1105,1057,
+ 1200,0
};
};
public final static char scopeState[] = ScopeState.scopeState;
@@ -2822,65 +2848,65 @@ public class GPPSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public final static char inSymb[] = {0,
0,318,134,286,55,47,50,52,48,13,
143,132,139,9,140,4,3,135,27,59,
- 51,46,8,41,40,11,12,45,44,147,
- 152,158,157,162,160,164,163,166,165,168,
+ 51,46,8,32,31,10,12,44,43,147,
+ 152,158,157,162,160,164,163,167,165,168,
66,169,76,3,65,65,65,65,135,3,
- 65,65,183,134,70,3,71,72,65,8,
- 194,200,174,183,134,175,71,72,179,178,
+ 65,65,180,134,70,3,71,72,65,8,
+ 184,198,173,180,134,175,71,72,179,178,
132,3,131,133,113,127,3,70,96,97,
- 41,40,99,98,11,109,108,101,100,77,
+ 32,31,99,98,10,109,108,101,100,77,
65,93,94,12,103,102,105,104,106,124,
123,122,121,120,119,118,117,116,115,79,
- 114,107,174,200,200,200,200,179,233,134,
+ 114,107,173,198,198,198,198,179,233,134,
134,134,288,6,7,5,270,289,261,290,
62,291,13,135,317,27,293,292,70,70,
134,132,161,134,70,3,231,230,133,132,
13,135,27,143,134,70,319,3,203,4,
- 61,135,61,233,174,157,157,152,152,152,
+ 61,135,61,233,173,157,157,152,152,152,
160,160,160,160,160,160,158,158,163,162,
- 162,165,164,166,253,174,168,77,77,77,
- 77,203,253,271,274,271,227,171,135,192,
+ 162,165,164,167,253,173,168,77,77,77,
+ 77,203,253,271,274,271,227,171,135,193,
3,3,3,175,332,294,171,327,294,171,
- 135,197,179,271,227,223,169,237,134,3,
- 135,179,148,323,85,83,1,174,10,91,
- 89,87,86,81,88,90,84,82,182,5,
- 67,69,78,219,3,320,183,167,279,203,
- 135,197,179,75,75,3,3,3,3,133,
- 132,76,179,12,11,3,345,1,43,134,
- 179,244,133,132,135,131,175,135,179,61,
- 241,242,159,243,134,179,61,10,75,348,
- 223,75,3,3,3,204,3,131,174,299,
- 134,3,135,190,346,131,67,297,194,200,
- 134,134,4,234,8,61,174,174,174,174,
- 3,3,192,192,343,313,3,331,135,180,
- 238,67,61,218,69,182,334,133,132,245,
- 171,245,197,175,134,197,203,161,79,237,
- 201,196,190,3,134,76,241,203,75,95,
- 75,239,183,239,325,159,81,239,78,134,
- 287,201,134,265,298,227,171,135,201,197,
- 179,3,3,79,135,135,134,161,281,284,
- 70,198,4,131,133,233,233,11,134,76,
- 161,3,1,179,175,240,65,61,134,245,
- 245,134,134,203,134,295,131,296,134,79,
- 79,134,227,161,133,161,201,161,324,134,
- 3,161,134,300,75,171,227,3,79,76,
- 201,179,134,347,43,276,135,197,197,302,
- 126,134,3,70,174,4,192,199,344,203,
- 134,175,77,65,333,75,249,201,132,247,
- 171,134,134,75,295,79,76,235,171,134,
- 79,204,173,287,171,174,300,309,135,310,
- 167,175,269,171,241,75,161,3,76,197,
- 240,136,3,281,233,223,134,76,136,254,
- 33,61,67,256,134,134,76,75,79,171,
- 247,171,153,336,238,30,135,134,235,129,
- 322,161,301,76,197,3,134,175,161,11,
- 1,240,95,341,183,43,131,254,311,61,
- 13,60,247,171,76,135,30,337,197,66,
- 134,161,134,233,134,134,1,161,161,134,
- 134,175,76,77,65,244,244,197,135,135,
- 3,302,330,235,134,134,79,79,197,197,
- 342,211,76,134,254,311,76,211,10,77,
- 60,244,79
+ 135,197,179,3,271,227,223,169,237,134,
+ 3,135,179,148,323,85,83,1,173,11,
+ 91,89,87,86,81,88,90,84,82,183,
+ 5,67,69,78,219,3,320,180,166,279,
+ 203,135,197,179,75,75,3,3,3,3,
+ 133,132,76,179,12,10,3,345,1,42,
+ 134,179,244,133,132,135,131,175,135,179,
+ 61,198,241,242,159,243,134,179,61,11,
+ 75,348,223,75,3,3,3,204,3,131,
+ 173,299,134,3,135,191,346,131,67,297,
+ 184,198,134,134,4,234,8,61,173,173,
+ 173,173,3,3,193,193,343,313,3,331,
+ 135,181,238,67,61,218,69,183,334,133,
+ 132,245,171,245,197,175,134,197,203,161,
+ 79,237,201,196,191,3,134,76,241,203,
+ 75,95,75,239,180,239,325,159,81,239,
+ 78,134,287,201,134,265,298,227,171,135,
+ 201,197,179,3,3,79,135,135,134,161,
+ 281,284,70,199,4,131,133,233,233,10,
+ 134,76,161,3,1,179,175,240,65,61,
+ 134,245,245,134,134,203,134,295,131,296,
+ 134,79,79,134,227,161,133,161,201,161,
+ 324,134,3,161,134,300,75,171,227,3,
+ 79,76,201,179,134,347,42,276,135,197,
+ 197,302,126,134,3,70,173,4,193,200,
+ 344,203,134,175,77,65,333,75,249,201,
+ 132,247,171,134,134,75,295,79,76,235,
+ 171,134,79,204,174,287,171,173,300,309,
+ 135,310,166,175,269,171,241,75,161,3,
+ 76,197,240,136,3,281,233,223,134,76,
+ 136,254,35,61,67,256,134,134,76,75,
+ 79,171,247,171,153,336,238,30,135,134,
+ 235,129,322,161,301,76,197,3,134,175,
+ 161,10,1,240,95,341,180,42,131,254,
+ 311,61,13,60,247,171,76,135,30,337,
+ 197,66,134,161,134,233,134,134,1,161,
+ 161,134,134,175,76,77,65,244,244,197,
+ 135,135,3,302,330,235,134,134,79,79,
+ 197,197,342,211,76,134,254,311,76,211,
+ 11,77,60,244,79
};
};
public final static char inSymb[] = InSymb.inSymb;
@@ -3163,8 +3189,8 @@ public class GPPSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public final static int
ERROR_SYMBOL = 68,
- SCOPE_UBOUND = 139,
- SCOPE_SIZE = 140,
+ SCOPE_UBOUND = 140,
+ SCOPE_SIZE = 141,
MAX_NAME_LENGTH = 37;
public final int getErrorSymbol() { return ERROR_SYMBOL; }
@@ -3173,20 +3199,20 @@ public class GPPSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public final int getMaxNameLength() { return MAX_NAME_LENGTH; }
public final static int
- NUM_STATES = 603,
+ NUM_STATES = 605,
NT_OFFSET = 130,
- LA_STATE_OFFSET = 7647,
+ LA_STATE_OFFSET = 7649,
MAX_LA = 2147483647,
- NUM_RULES = 599,
+ NUM_RULES = 600,
NUM_NONTERMINALS = 222,
NUM_SYMBOLS = 352,
SEGMENT_SIZE = 8192,
- START_STATE = 2711,
+ START_STATE = 2385,
IDENTIFIER_SYMBOL = 0,
EOFT_SYMBOL = 128,
EOLT_SYMBOL = 128,
- ACCEPT_ACTION = 6229,
- ERROR_ACTION = 7048;
+ ACCEPT_ACTION = 6230,
+ ERROR_ACTION = 7049;
public final static boolean BACKTRACK = true;
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gpp/GPPSizeofExpressionParsersym.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gpp/GPPSizeofExpressionParsersym.java
index 9ac8b182222..4c462a29c97 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gpp/GPPSizeofExpressionParsersym.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gpp/GPPSizeofExpressionParsersym.java
@@ -18,7 +18,7 @@ public interface GPPSizeofExpressionParsersym {
TK__Complex = 14,
TK__Imaginary = 15,
TK_asm = 5,
- TK_auto = 31,
+ TK_auto = 33,
TK_bool = 16,
TK_break = 82,
TK_case = 83,
@@ -35,32 +35,32 @@ public interface GPPSizeofExpressionParsersym {
TK_dynamic_cast = 48,
TK_else = 129,
TK_enum = 62,
- TK_explicit = 32,
+ TK_explicit = 34,
TK_export = 92,
- TK_extern = 33,
+ TK_extern = 35,
TK_false = 49,
TK_float = 19,
TK_for = 87,
- TK_friend = 34,
+ TK_friend = 36,
TK_goto = 88,
TK_if = 89,
- TK_inline = 35,
+ TK_inline = 37,
TK_int = 20,
TK_long = 21,
- TK_mutable = 36,
+ TK_mutable = 38,
TK_namespace = 67,
TK_new = 72,
TK_operator = 9,
TK_private = 110,
TK_protected = 111,
TK_public = 112,
- TK_register = 37,
+ TK_register = 39,
TK_reinterpret_cast = 50,
TK_return = 90,
TK_short = 22,
TK_signed = 23,
TK_sizeof = 51,
- TK_static = 38,
+ TK_static = 40,
TK_static_cast = 52,
TK_struct = 63,
TK_switch = 91,
@@ -69,7 +69,7 @@ public interface GPPSizeofExpressionParsersym {
TK_throw = 66,
TK_try = 78,
TK_true = 54,
- TK_typedef = 39,
+ TK_typedef = 41,
TK_typeid = 55,
TK_typename = 13,
TK_union = 64,
@@ -83,10 +83,10 @@ public interface GPPSizeofExpressionParsersym {
TK_integer = 56,
TK_floating = 57,
TK_charconst = 58,
- TK_stringlit = 43,
+ TK_stringlit = 42,
TK_identifier = 1,
TK_Completion = 2,
- TK_EndOfCompletion = 10,
+ TK_EndOfCompletion = 11,
TK_Invalid = 130,
TK_LeftBracket = 70,
TK_LeftParen = 3,
@@ -94,12 +94,12 @@ public interface GPPSizeofExpressionParsersym {
TK_DotStar = 97,
TK_Arrow = 113,
TK_ArrowStar = 96,
- TK_PlusPlus = 44,
- TK_MinusMinus = 45,
+ TK_PlusPlus = 43,
+ TK_MinusMinus = 44,
TK_And = 12,
- TK_Star = 11,
- TK_Plus = 40,
- TK_Minus = 41,
+ TK_Star = 10,
+ TK_Plus = 31,
+ TK_Minus = 32,
TK_Tilde = 8,
TK_Bang = 46,
TK_Slash = 98,
@@ -135,7 +135,7 @@ public interface GPPSizeofExpressionParsersym {
TK_RightBracket = 125,
TK_RightParen = 73,
TK_RightBrace = 80,
- TK_SemiColon = 42,
+ TK_SemiColon = 45,
TK_LeftBrace = 74,
TK_typeof = 27,
TK___alignof__ = 59,
@@ -157,8 +157,8 @@ public interface GPPSizeofExpressionParsersym {
"__declspec",
"Tilde",
"operator",
- "EndOfCompletion",
"Star",
+ "EndOfCompletion",
"And",
"typename",
"_Complex",
@@ -178,6 +178,8 @@ public interface GPPSizeofExpressionParsersym {
"const",
"volatile",
"virtual",
+ "Plus",
+ "Minus",
"auto",
"explicit",
"extern",
@@ -187,12 +189,10 @@ public interface GPPSizeofExpressionParsersym {
"register",
"static",
"typedef",
- "Plus",
- "Minus",
- "SemiColon",
"stringlit",
"PlusPlus",
"MinusMinus",
+ "SemiColon",
"Bang",
"const_cast",
"dynamic_cast",

Back to the top